diff --git a/.cursorignore b/.cursorignore new file mode 100644 index 000000000..3e23ba8cc --- /dev/null +++ b/.cursorignore @@ -0,0 +1,24 @@ +# Reduce file watcher load for this large repo +# node_modules is 2GB+ - MUST exclude +node_modules/ +**/node_modules/ +**/node_modules/** +toolkit-docs-generator/node_modules/ +extract-custom-sections/node_modules/ +custom-sections-transformer/node_modules/ +dist/ +build/ +out/ +toolkit-docs-generator/dist/ +toolkit-docs-generator/output/ +toolkit-docs-generator/test-output/ +.i18n-cache/ +.pytest_cache/ +*.log +*.sqlite +*.db +.git/ +.DS_Store +tmp/ +temp/ +*.tmp diff --git a/.github/scripts/README-sync-toolkit-sidebar.md b/.github/scripts/README-sync-toolkit-sidebar.md new file mode 100644 index 000000000..ec388ec61 --- /dev/null +++ b/.github/scripts/README-sync-toolkit-sidebar.md @@ -0,0 +1,89 @@ +# Sync toolkit sidebar script + +This script synchronizes the sidebar navigation with available toolkit JSON data files. + +## Usage + +```bash +# Run the sync (updates sidebar navigation) +npx tsx .github/scripts/sync-toolkit-sidebar.ts + +# Dry run (shows what would change without making changes) +npx tsx .github/scripts/sync-toolkit-sidebar.ts --dry-run + +# Verbose output +npx tsx .github/scripts/sync-toolkit-sidebar.ts --verbose + +# Both flags +npx tsx .github/scripts/sync-toolkit-sidebar.ts --dry-run --verbose +``` + +## What it does + +1. Reads toolkit JSON files from `data/toolkits/`. +2. Maps toolkits to categories using the design system catalog. +3. Creates or updates `_meta.tsx` files for each category folder. +4. Handles the "Others" category for toolkits not in the design system. +5. Updates the main integrations `_meta.tsx`. + +## When to run + +Run this script when: + +- Adding a new toolkit JSON file to `data/toolkits/` +- Removing a toolkit JSON file +- Updating toolkit categories in the design system +- Regenerating toolkit documentation + +## Category mapping + +Toolkits are mapped to categories based on `@arcadeai/design-system`: + +| Category | Display name | +| --- | --- | +| productivity | Productivity & Docs | +| development | Developer Tools | +| social | Social & Communication | +| databases | Databases | +| customer-support | Customer Support | +| search | Search Tools | +| sales | Sales | +| entertainment | Entertainment | +| payments | Payments & Finance | +| others | Others | + +Toolkits not found in the design system are placed in the "Others" category. + +## Testing + +```bash +# Run tests +npx vitest run .github/scripts/__tests__/sync-toolkit-sidebar.test.ts + +# Watch mode +npx vitest watch .github/scripts/__tests__/sync-toolkit-sidebar.test.ts +``` + +## Output + +The script prints a summary of changes: + +```text +=== Toolkit Sidebar Sync Results === + +Total toolkits: 96 + +Categories created (1): + + others + +Categories updated (7): + ~ productivity + ~ development + ~ customer-support + ~ search + ~ sales + ~ social + ~ payments + +==================================== +``` diff --git a/.github/scripts/__tests__/sync-toolkit-sidebar.test.ts b/.github/scripts/__tests__/sync-toolkit-sidebar.test.ts new file mode 100644 index 000000000..2fd69066c --- /dev/null +++ b/.github/scripts/__tests__/sync-toolkit-sidebar.test.ts @@ -0,0 +1,492 @@ +/** + * Tests for sync-toolkit-sidebar.ts + * + * Run with: npx vitest run .github/scripts/__tests__/sync-toolkit-sidebar.test.ts + * Or: npx vitest watch .github/scripts/__tests__/sync-toolkit-sidebar.test.ts + */ + +import { existsSync, mkdirSync, rmSync, writeFileSync } from "node:fs"; +import { join } from "node:path"; +import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; +import { + buildToolkitInfoList, + generateCategoryMeta, + generateMainMeta, + getToolkitCategory, + getToolkitFiles, + getToolkitLabel, + getToolkitLabelFromJson, + groupByCategory, + syncToolkitSidebar, + type ToolkitInfo, +} from "../sync-toolkit-sidebar"; + +// Mock the design system +vi.mock("@arcadeai/design-system", () => ({ + TOOLKITS: [ + { id: "Gmail", label: "Gmail", category: "productivity" }, + { id: "Slack", label: "Slack", category: "social" }, + { id: "Github", label: "GitHub", category: "development" }, + { id: "Stripe", label: "Stripe", category: "payments" }, + { id: "Zendesk", label: "Zendesk", category: "customer-support" }, + { id: "GoogleSearch", label: "Google Search", category: "search" }, + { id: "Hubspot", label: "HubSpot", category: "sales" }, + { id: "Spotify", label: "Spotify", category: "entertainment" }, + { id: "Postgres", label: "Postgres", category: "databases" }, + { + id: "HiddenToolkit", + label: "Hidden", + category: "productivity", + isHidden: true, + }, + ], +})); + +// Test directory setup +const TEST_DIR = join(process.cwd(), ".test-sync-sidebar"); +const TEST_DATA_DIR = join(TEST_DIR, "data/toolkits"); +const TEST_INTEGRATIONS_DIR = join(TEST_DIR, "app/en/resources/integrations"); + +function setupTestDirs() { + mkdirSync(TEST_DATA_DIR, { recursive: true }); + mkdirSync(TEST_INTEGRATIONS_DIR, { recursive: true }); +} + +function cleanupTestDirs() { + if (existsSync(TEST_DIR)) { + rmSync(TEST_DIR, { recursive: true }); + } +} + +function createToolkitJson(slug: string, data: object = {}) { + const filePath = join(TEST_DATA_DIR, `${slug}.json`); + writeFileSync(filePath, JSON.stringify({ id: slug, ...data }, null, 2)); +} + +// ============================================================================ +// Unit Tests: getToolkitFiles +// ============================================================================ + +describe("getToolkitFiles", () => { + beforeEach(() => { + setupTestDirs(); + }); + + afterEach(() => { + cleanupTestDirs(); + }); + + it("returns empty array when directory does not exist", () => { + const result = getToolkitFiles("/nonexistent"); + expect(result).toEqual([]); + }); + + it("returns JSON filenames without extension", () => { + createToolkitJson("gmail"); + createToolkitJson("slack"); + writeFileSync(join(TEST_DATA_DIR, "index.json"), "{}"); + + const result = getToolkitFiles(TEST_DATA_DIR); + + expect(result).toContain("gmail"); + expect(result).toContain("slack"); + expect(result).not.toContain("index"); + }); +}); + +// ============================================================================ +// Unit Tests: getToolkitCategory +// ============================================================================ + +describe("getToolkitCategory", () => { + it("should return category for known toolkit", () => { + expect(getToolkitCategory("Gmail")).toBe("productivity"); + expect(getToolkitCategory("Slack")).toBe("social"); + }); + + it("should return null for unknown toolkit", () => { + expect(getToolkitCategory("Unknown")).toBeNull(); + }); + + it("should return null for hidden toolkit", () => { + expect(getToolkitCategory("HiddenToolkit")).toBeNull(); + }); +}); + +// ============================================================================ +// Unit Tests: getToolkitLabel +// ============================================================================ + +describe("getToolkitLabel", () => { + it("should return label for known toolkit", () => { + expect(getToolkitLabel("Gmail")).toBe("Gmail"); + expect(getToolkitLabel("Github")).toBe("GitHub"); + expect(getToolkitLabel("GoogleSearch")).toBe("Google Search"); + }); + + it("should return label for known toolkit regardless of case", () => { + expect(getToolkitLabel("gmail")).toBe("Gmail"); + expect(getToolkitLabel("GITHUB")).toBe("GitHub"); + }); + + it("should generate fallback label for unknown toolkit", () => { + expect(getToolkitLabel("MyCustomToolkit")).toBe("My Custom Toolkit"); + expect(getToolkitLabel("APIHelper")).toBe("A P I Helper"); + }); + + it("should handle single-word toolkit", () => { + expect(getToolkitLabel("Test")).toBe("Test"); + }); +}); + +// ============================================================================ +// Unit Tests: getToolkitLabelFromJson +// ============================================================================ + +describe("getToolkitLabelFromJson", () => { + beforeEach(() => { + setupTestDirs(); + }); + + afterEach(() => { + cleanupTestDirs(); + }); + + it("should return label from JSON file", () => { + createToolkitJson("mytoolkit", { label: "My Custom Label" }); + + const result = getToolkitLabelFromJson(TEST_DATA_DIR, "mytoolkit"); + + expect(result).toBe("My Custom Label"); + }); + + it("should return name if label not present", () => { + createToolkitJson("mytoolkit", { name: "Toolkit Name" }); + + const result = getToolkitLabelFromJson(TEST_DATA_DIR, "mytoolkit"); + + expect(result).toBe("Toolkit Name"); + }); + + it("should prefer label over name", () => { + createToolkitJson("mytoolkit", { label: "Label", name: "Name" }); + + const result = getToolkitLabelFromJson(TEST_DATA_DIR, "mytoolkit"); + + expect(result).toBe("Label"); + }); + + it("should return null if file doesn't exist", () => { + const result = getToolkitLabelFromJson(TEST_DATA_DIR, "nonexistent"); + + expect(result).toBeNull(); + }); + + it("should handle invalid JSON", () => { + const filePath = join(TEST_DATA_DIR, "invalid.json"); + writeFileSync(filePath, "{invalid json}"); + + const result = getToolkitLabelFromJson(TEST_DATA_DIR, "invalid"); + + expect(result).toBeNull(); + }); + + it("should return null if no label or name in JSON", () => { + createToolkitJson("mytoolkit", { other: "data" }); + + const result = getToolkitLabelFromJson(TEST_DATA_DIR, "mytoolkit"); + + expect(result).toBeNull(); + }); +}); + +// ============================================================================ +// Unit Tests: buildToolkitInfoList +// ============================================================================ + +describe("buildToolkitInfoList", () => { + beforeEach(() => { + setupTestDirs(); + }); + + afterEach(() => { + cleanupTestDirs(); + }); + + it("should build list of toolkits with correct labels and categories", () => { + createToolkitJson("gmail", { label: "Gmail" }); + createToolkitJson("slack", { label: "Slack" }); + createToolkitJson("unknowntoolkit", { label: "Unknown Toolkit" }); + + const result = buildToolkitInfoList(TEST_DATA_DIR); + + expect(result).toHaveLength(3); + expect(result[0].label).toBe("Gmail"); + expect(result[1].label).toBe("Slack"); + expect(result[2].label).toBe("Unknown Toolkit"); + }); + + it("should skip hidden toolkits", () => { + createToolkitJson("HiddenToolkit", { label: "Hidden" }); + + const result = buildToolkitInfoList(TEST_DATA_DIR); + + expect(result).toHaveLength(0); + }); + + it("should prefer design system label over JSON", () => { + createToolkitJson("gmail", { label: "Custom Gmail Label" }); + + const result = buildToolkitInfoList(TEST_DATA_DIR); + + expect(result[0].label).toBe("Gmail"); + }); + + it("should use design system label as fallback", () => { + createToolkitJson("gmail", { label: null }); + + const result = buildToolkitInfoList(TEST_DATA_DIR); + + expect(result[0].label).toBe("Gmail"); + }); +}); + +// ============================================================================ +// Unit Tests: groupByCategory +// ============================================================================ + +describe("groupByCategory", () => { + it("should group toolkits by category", () => { + const toolkits: ToolkitInfo[] = [ + { id: "gmail", slug: "gmail", label: "Gmail", category: "productivity" }, + { id: "slack", slug: "slack", label: "Slack", category: "social" }, + { + id: "dropbox", + slug: "dropbox", + label: "Dropbox", + category: "productivity", + }, + ]; + + const result = groupByCategory(toolkits); + + expect(result.size).toBe(2); + expect(result.get("productivity")).toHaveLength(2); + expect(result.get("social")).toHaveLength(1); + }); + + it("should sort toolkits alphabetically by label", () => { + const toolkits: ToolkitInfo[] = [ + { id: "zoom", slug: "zoom", label: "Zoom", category: "social" }, + { id: "slack", slug: "slack", label: "Slack", category: "social" }, + { id: "discord", slug: "discord", label: "Discord", category: "social" }, + ]; + + const result = groupByCategory(toolkits); + const social = result.get("social"); + + expect(social?.[0].label).toBe("Discord"); + expect(social?.[1].label).toBe("Slack"); + expect(social?.[2].label).toBe("Zoom"); + }); + + it("should handle empty array", () => { + const result = groupByCategory([]); + expect(result.size).toBe(0); + }); + + it("should handle 'others' category", () => { + const toolkits: ToolkitInfo[] = [ + { id: "custom", slug: "custom", label: "Custom", category: "others" }, + ]; + + const result = groupByCategory(toolkits); + expect(result.has("others")).toBe(true); + expect(result.get("others")).toHaveLength(1); + }); +}); + +// ============================================================================ +// Unit Tests: generateCategoryMeta +// ============================================================================ + +describe("generateCategoryMeta", () => { + it("should generate valid _meta.tsx content", () => { + const toolkits: ToolkitInfo[] = [ + { id: "gmail", slug: "gmail", label: "Gmail", category: "productivity" }, + { + id: "dropbox", + slug: "dropbox", + label: "Dropbox", + category: "productivity", + }, + ]; + + const result = generateCategoryMeta( + toolkits, + "productivity", + "/en/resources/integrations" + ); + + expect(result).toContain('import type { MetaRecord } from "nextra"'); + expect(result).toContain("gmail: {"); + expect(result).toContain('title: "Gmail"'); + expect(result).toContain( + 'href: "/en/resources/integrations/productivity/gmail"' + ); + expect(result).toContain("dropbox: {"); + expect(result).toContain("export default meta"); + }); + + it("should escape quotes in labels", () => { + const toolkits: ToolkitInfo[] = [ + { + id: "test", + slug: "test", + label: 'Test "Quoted" Label', + category: "others", + }, + ]; + + const result = generateCategoryMeta(toolkits, "others", "/preview"); + + expect(result).toContain('title: "Test \\"Quoted\\" Label"'); + }); + + it("should handle empty array", () => { + const result = generateCategoryMeta([], "productivity", "/preview"); + + expect(result).toContain("const meta: MetaRecord = {"); + expect(result).toContain("};"); + expect(result).toContain("export default meta"); + }); + + it("should handle single toolkit", () => { + const toolkits: ToolkitInfo[] = [ + { id: "gmail", slug: "gmail", label: "Gmail", category: "productivity" }, + ]; + + const result = generateCategoryMeta(toolkits, "productivity", "/preview"); + + expect(result).toContain("gmail: {"); + expect(result).not.toContain(",\n,"); // No trailing comma issues + }); + + it("does not mutate the input array", () => { + const toolkits: ToolkitInfo[] = [ + { + id: "zoom", + slug: "zoom", + label: "Zoom", + category: "social", + navGroup: "optimized", + }, + { + id: "slack", + slug: "slack", + label: "Slack", + category: "social", + navGroup: "optimized", + }, + ]; + const originalOrder = [...toolkits]; + + generateCategoryMeta(toolkits, "social", "/preview"); + + expect(toolkits).toEqual(originalOrder); + }); +}); + +// ============================================================================ +// Unit Tests: generateMainMeta +// ============================================================================ + +describe("generateMainMeta", () => { + it("should generate main _meta.tsx with active categories", () => { + const result = generateMainMeta(["productivity", "social"]); + + expect(result).toContain('import type { MetaRecord } from "nextra"'); + expect(result).toContain("productivity: {"); + expect(result).toContain('title: "Productivity & Docs"'); + expect(result).toContain("social: {"); + expect(result).toContain('title: "Social & Communication"'); + expect(result).toContain('"contribute-a-server"'); + expect(result).toContain("preview:"); + }); + + it("should sort categories by defined order", () => { + const result = generateMainMeta(["sales", "productivity", "development"]); + + const productivityIndex = result.indexOf("productivity:"); + const developmentIndex = result.indexOf("development:"); + const salesIndex = result.indexOf("sales:"); + + expect(productivityIndex).toBeLessThan(developmentIndex); + expect(developmentIndex).toBeLessThan(salesIndex); + }); + + it("should include 'others' category when present", () => { + const result = generateMainMeta(["productivity", "others"]); + + expect(result).toContain("others: {"); + expect(result).toContain('title: "Others"'); + }); + + it("should place 'others' at the end", () => { + const result = generateMainMeta(["others", "productivity"]); + + const productivityIndex = result.indexOf("productivity:"); + const othersIndex = result.indexOf("others:"); + + expect(productivityIndex).toBeLessThan(othersIndex); + }); + + it("should handle empty categories", () => { + const result = generateMainMeta([]); + + expect(result).toContain("const meta: MetaRecord = {"); + expect(result).toContain("index:"); + expect(result).toContain('"contribute-a-server"'); + }); + + it("does not mutate the input array", () => { + const categories = ["sales", "productivity", "development"]; + const originalOrder = [...categories]; + + generateMainMeta(categories); + + expect(categories).toEqual(originalOrder); + }); + + it("should include required structure elements", () => { + const result = generateMainMeta(["productivity"]); + + expect(result).toContain('"*":'); // Theme config + expect(result).toContain("index:"); // Overview + expect(result).toContain('"-- Submit your Server"'); // Separator + expect(result).toContain('"contribute-a-server"'); // Contribute page + expect(result).toContain("preview:"); // Hidden preview page + expect(result).toContain('display: "hidden"'); // Preview is hidden + }); +}); + +// ============================================================================ +// Integration Tests: syncToolkitSidebar +// ============================================================================ + +describe("syncToolkitSidebar", () => { + // Note: These tests would require mocking the CONFIG object + // or using dependency injection. For now, we test the logic separately. + + it("returns expected result shape", () => { + const result = syncToolkitSidebar({ dryRun: true }); + + expect(result).toEqual({ + categoriesUpdated: expect.any(Array), + categoriesCreated: expect.any(Array), + categoriesRemoved: expect.any(Array), + toolkitCount: expect.any(Number), + errors: expect.any(Array), + }); + }); +}); diff --git a/.github/scripts/sync-toolkit-sidebar.ts b/.github/scripts/sync-toolkit-sidebar.ts new file mode 100644 index 000000000..14a0cd422 --- /dev/null +++ b/.github/scripts/sync-toolkit-sidebar.ts @@ -0,0 +1,594 @@ +#!/usr/bin/env node +/** + * Script to synchronize toolkit sidebar navigation with available JSON data files. + * + * This script: + * 1. Reads all toolkit JSON files from data/toolkits/ + * 2. Maps each toolkit to its category from the design system + * 3. Creates/updates _meta.tsx files for each category + * 4. Handles an "others" category for toolkits without a recognized category + * 5. Updates the main integrations _meta.tsx if needed + * + * Usage: + * npx tsx .github/scripts/sync-toolkit-sidebar.ts + * npx tsx .github/scripts/sync-toolkit-sidebar.ts --dry-run + * npx tsx .github/scripts/sync-toolkit-sidebar.ts --verbose + */ + +import { + existsSync, + mkdirSync, + readdirSync, + readFileSync, + rmSync, + writeFileSync, +} from "node:fs"; +import { dirname, join, resolve } from "node:path"; +import { fileURLToPath } from "node:url"; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = dirname(__filename); + +// Import design system toolkits +let TOOLKITS: Array<{ + id: string; + label: string; + category?: string; + isHidden?: boolean; +}> = []; + +try { + const designSystem = await import("@arcadeai/design-system"); + TOOLKITS = designSystem.TOOLKITS || []; +} catch { + console.warn( + "Warning: @arcadeai/design-system not found, using fallback category detection" + ); +} + +// Get project root (two levels up from .github/scripts) +const PROJECT_ROOT = resolve(__dirname, "..", ".."); + +// Configuration +const CONFIG = { + dataDir: join(PROJECT_ROOT, "data/toolkits"), + integrationsDir: join(PROJECT_ROOT, "app/en/resources/integrations"), + integrationsBasePath: "/en/resources/integrations", +}; + +// Known categories with display names +const CATEGORY_NAMES: Record = { + productivity: "Productivity & Docs", + development: "Developer Tools", + social: "Social & Communication", + databases: "Databases", + "customer-support": "Customer Support", + search: "Search Tools", + sales: "Sales", + entertainment: "Entertainment", + payments: "Payments & Finance", + others: "Others", +}; + +// Category order for main _meta.tsx +const CATEGORY_ORDER = [ + "productivity", + "social", + "entertainment", + "development", + "payments", + "search", + "sales", + "databases", + "customer-support", + "others", +]; + +const CAPITAL_LETTER_REGEX = /([A-Z])/g; +const FIRST_CHARACTER_REGEX = /^./; + +const IDENTIFIER_KEY_REGEX = /^[A-Za-z_$][A-Za-z0-9_$]*$/; + +function renderObjectKey(key: string): string { + if (IDENTIFIER_KEY_REGEX.test(key)) { + return key; + } + const escaped = key.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); + return `"${escaped}"`; +} + +export type ToolkitInfo = { + id: string; + slug: string; + label: string; + category: string; + navGroup: "optimized" | "starter"; +}; + +export type CategoryData = { + category: string; + displayName: string; + toolkits: ToolkitInfo[]; +}; + +export type SyncResult = { + categoriesUpdated: string[]; + categoriesCreated: string[]; + categoriesRemoved: string[]; + toolkitCount: number; + errors: string[]; +}; + +/** + * Get list of toolkit JSON files (excluding index.json) + */ +export function getToolkitFiles(dataDir: string): string[] { + if (!existsSync(dataDir)) { + return []; + } + + return readdirSync(dataDir) + .filter((f) => f.endsWith(".json") && f !== "index.json") + .map((f) => f.replace(".json", "").toLowerCase()); +} + +/** + * Get category for a toolkit ID from design system + */ +export function getToolkitCategory(toolkitId: string): string | null { + const toolkit = TOOLKITS.find( + (t) => t.id.toLowerCase() === toolkitId.toLowerCase() + ); + + if (toolkit && !toolkit.isHidden) { + return toolkit.category || null; + } + + return null; +} + +/** + * Get label for a toolkit ID from design system + */ +export function getToolkitLabel(toolkitId: string): string { + const toolkit = TOOLKITS.find( + (t) => t.id.toLowerCase() === toolkitId.toLowerCase() + ); + + if (toolkit) { + return toolkit.label; + } + + // Fallback: Convert ID to readable label + return toolkitId + .replace(CAPITAL_LETTER_REGEX, " $1") + .replace(FIRST_CHARACTER_REGEX, (str) => str.toUpperCase()) + .trim(); +} + +/** + * Read toolkit JSON and extract label if available + */ +export function getToolkitLabelFromJson( + dataDir: string, + slug: string +): string | null { + const filePath = join(dataDir, `${slug}.json`); + + try { + if (existsSync(filePath)) { + const data = JSON.parse(readFileSync(filePath, "utf-8")); + return data.label || data.name || null; + } + } catch { + // Ignore parse errors + } + + return null; +} + +export function getToolkitTypeFromJson( + dataDir: string, + slug: string +): string | null { + const filePath = join(dataDir, `${slug}.json`); + + try { + if (existsSync(filePath)) { + const data = JSON.parse(readFileSync(filePath, "utf-8")); + return data?.metadata?.type ?? null; + } + } catch { + // Ignore parse errors + } + + return null; +} + +export function inferNavGroup( + toolkitIdOrSlug: string, + typeFromJson?: string | null +) { + // Prefer explicit type when available. + if (typeFromJson === "arcade_starter") { + return "starter" as const; + } + + // Heuristic fallback: "*Api" toolkits are starter. + return toolkitIdOrSlug.toLowerCase().endsWith("api") + ? ("starter" as const) + : ("optimized" as const); +} + +/** + * Build toolkit info from available JSON files + */ +export function buildToolkitInfoList(dataDir: string): ToolkitInfo[] { + const files = getToolkitFiles(dataDir); + const toolkits: ToolkitInfo[] = []; + + for (const slug of files) { + const designSystemToolkit = TOOLKITS.find( + (t) => t.id.toLowerCase() === slug.toLowerCase() + ); + if (designSystemToolkit?.isHidden) { + continue; + } + + const category = designSystemToolkit?.category ?? "others"; + const labelFromDesignSystem = designSystemToolkit?.label ?? null; + const labelFromJson = getToolkitLabelFromJson(dataDir, slug); + const typeFromJson = getToolkitTypeFromJson(dataDir, slug); + + toolkits.push({ + id: slug, + slug, + // Prefer the Design System label (has correct spacing/casing), but fall back + // to JSON label for toolkits not present in the design system. + label: labelFromDesignSystem ?? labelFromJson ?? getToolkitLabel(slug), + category, + navGroup: inferNavGroup(slug, typeFromJson), + }); + } + + return toolkits; +} + +/** + * Group toolkits by category + */ +export function groupByCategory( + toolkits: ToolkitInfo[] +): Map { + const grouped = new Map(); + + for (const toolkit of toolkits) { + const category = toolkit.category; + if (!grouped.has(category)) { + grouped.set(category, []); + } + const list = grouped.get(category); + if (list) { + list.push(toolkit); + } else { + grouped.set(category, [toolkit]); + } + } + + // Sort toolkits within each category by label + for (const [, items] of grouped) { + items.sort((a, b) => a.label.localeCompare(b.label)); + } + + return grouped; +} + +/** + * Generate _meta.tsx content for a category + */ +export function generateCategoryMeta( + toolkits: ToolkitInfo[], + category: string, + integrationsBasePath: string +): string { + const byLabel = (a: ToolkitInfo, b: ToolkitInfo) => + a.label.localeCompare(b.label); + + const optimized = toolkits + .filter((t) => t.navGroup === "optimized") + .sort(byLabel); + const starter = toolkits + .filter((t) => t.navGroup === "starter") + .sort(byLabel); + + const renderEntry = (t: ToolkitInfo) => { + // Escape any quotes in the label + const escapedLabel = t.label.replace(/"/g, '\\"'); + return ` ${renderObjectKey(t.slug)}: { + title: "${escapedLabel}", + href: "${integrationsBasePath}/${category}/${t.slug}", + }`; + }; + + const renderSeparator = (title: string) => { + const key = `-- ${title}`; + return ` ${renderObjectKey(key)}: { + type: "separator", + title: "${title}", + }`; + }; + + const sections: string[] = []; + if (optimized.length > 0 && starter.length > 0) { + sections.push(renderSeparator("Optimized")); + sections.push(...optimized.map(renderEntry)); + sections.push(renderSeparator("Starter")); + sections.push(...starter.map(renderEntry)); + } else { + const sortedToolkits = [...toolkits].sort(byLabel); + sections.push(...sortedToolkits.map(renderEntry)); + } + + const entries = sections.join(",\n"); + + return `import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { +${entries}, +}; + +export default meta; +`; +} + +/** + * Generate main integrations _meta.tsx content + */ +export function generateMainMeta(activeCategories: string[]): string { + // Sort categories by defined order + const sortedCategories = [...activeCategories].sort((a, b) => { + const indexA = CATEGORY_ORDER.indexOf(a); + const indexB = CATEGORY_ORDER.indexOf(b); + if (indexA === -1 && indexB === -1) { + return a.localeCompare(b); + } + if (indexA === -1) { + return 1; + } + if (indexB === -1) { + return -1; + } + return indexA - indexB; + }); + + const categoryEntries = sortedCategories + .map((cat) => { + const displayName = CATEGORY_NAMES[cat] || cat; + return ` ${renderObjectKey(cat)}: { + title: "${displayName}", + }`; + }) + .join(",\n"); + + return `import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "*": { + theme: { + breadcrumb: true, + toc: true, + copyPage: true, + }, + }, + index: { + title: "Overview", + theme: { + toc: false, + copyPage: false, + }, + }, +${categoryEntries}, + "-- Submit your Server": { + type: "separator", + title: "Submit your server", + }, + "contribute-a-server": { + title: "Contribute a Server", + }, + preview: { + title: "All Toolkits", + display: "hidden", + }, +}; + +export default meta; +`; +} + +/** + * Sync toolkit sidebar with available JSON files + */ +// biome-ignore lint/complexity/noExcessiveCognitiveComplexity: Main orchestration function requires multiple steps +export function syncToolkitSidebar( + options: { dryRun?: boolean; verbose?: boolean; prune?: boolean } = {} +): SyncResult { + const { dryRun = false, verbose = false, prune = false } = options; + + const result: SyncResult = { + categoriesUpdated: [], + categoriesCreated: [], + categoriesRemoved: [], + toolkitCount: 0, + errors: [], + }; + + const log = (msg: string) => { + if (verbose) { + console.log(msg); + } + }; + + try { + // Build toolkit info from JSON files + const toolkits = buildToolkitInfoList(CONFIG.dataDir); + result.toolkitCount = toolkits.length; + log(`Found ${toolkits.length} toolkit JSON files`); + + // Group by category + const grouped = groupByCategory(toolkits); + const activeCategories = Array.from(grouped.keys()); + log(`Active categories: ${activeCategories.join(", ")}`); + + // Get existing category directories + const existingDirs = existsSync(CONFIG.integrationsDir) + ? readdirSync(CONFIG.integrationsDir, { withFileTypes: true }) + .filter((d) => d.isDirectory()) + .filter( + (d) => + !["components", "contribute-a-server", "preview"].includes(d.name) + ) + .map((d) => d.name) + : []; + + // Create/update category directories + for (const [category, categoryToolkits] of grouped) { + const categoryDir = join(CONFIG.integrationsDir, category); + const metaPath = join(categoryDir, "_meta.tsx"); + const metaContent = generateCategoryMeta( + categoryToolkits, + category, + CONFIG.integrationsBasePath + ); + + const dirExists = existsSync(categoryDir); + const metaExists = existsSync(metaPath); + + if (!dirExists) { + log(`Creating category directory: ${category}`); + if (!dryRun) { + mkdirSync(categoryDir, { recursive: true }); + } + result.categoriesCreated.push(category); + } + + // Check if content changed + let contentChanged = true; + if (metaExists) { + const existingContent = readFileSync(metaPath, "utf-8"); + contentChanged = existingContent !== metaContent; + } + + if (contentChanged) { + log( + `Updating _meta.tsx for: ${category} (${categoryToolkits.length} toolkits)` + ); + if (!dryRun) { + writeFileSync(metaPath, metaContent); + } + if (!result.categoriesCreated.includes(category)) { + result.categoriesUpdated.push(category); + } + } else { + log(`No changes for: ${category}`); + } + } + + // Remove empty categories (optional; off by default for safety). + if (prune) { + for (const existingDir of existingDirs) { + if (!activeCategories.includes(existingDir)) { + const categoryDir = join(CONFIG.integrationsDir, existingDir); + log(`Removing empty category: ${existingDir}`); + if (!dryRun) { + rmSync(categoryDir, { recursive: true }); + } + result.categoriesRemoved.push(existingDir); + } + } + } + + // Update main _meta.tsx + const mainMetaPath = join(CONFIG.integrationsDir, "_meta.tsx"); + const mainMetaContent = generateMainMeta(activeCategories); + + if (existsSync(mainMetaPath)) { + const existingMainMeta = readFileSync(mainMetaPath, "utf-8"); + if (existingMainMeta !== mainMetaContent) { + log("Updating main _meta.tsx"); + if (!dryRun) { + writeFileSync(mainMetaPath, mainMetaContent); + } + } + } else { + log("Creating main _meta.tsx"); + if (!dryRun) { + writeFileSync(mainMetaPath, mainMetaContent); + } + } + } catch (error) { + result.errors.push(String(error)); + } + + return result; +} + +/** + * Print sync results + */ +export function printResults(result: SyncResult): void { + console.log("\n=== Toolkit Sidebar Sync Results ===\n"); + console.log(`Total toolkits: ${result.toolkitCount}`); + + if (result.categoriesCreated.length > 0) { + console.log(`\nCategories created (${result.categoriesCreated.length}):`); + for (const category of result.categoriesCreated) { + console.log(` + ${category}`); + } + } + + if (result.categoriesUpdated.length > 0) { + console.log(`\nCategories updated (${result.categoriesUpdated.length}):`); + for (const category of result.categoriesUpdated) { + console.log(` ~ ${category}`); + } + } + + if (result.categoriesRemoved.length > 0) { + console.log(`\nCategories removed (${result.categoriesRemoved.length}):`); + for (const category of result.categoriesRemoved) { + console.log(` - ${category}`); + } + } + + if (result.errors.length > 0) { + console.log(`\nErrors (${result.errors.length}):`); + for (const error of result.errors) { + console.log(` ! ${error}`); + } + } + + console.log("\n====================================\n"); +} + +// CLI execution +const isMainModule = + import.meta.url === `file://${process.argv[1]}` || + process.argv[1]?.endsWith("sync-toolkit-sidebar.ts"); + +if (isMainModule) { + const args = process.argv.slice(2); + const dryRun = args.includes("--dry-run"); + const verbose = args.includes("--verbose") || args.includes("-v"); + const prune = args.includes("--prune"); + + if (dryRun) { + console.log("Running in dry-run mode (no changes will be made)\n"); + } + + const result = syncToolkitSidebar({ dryRun, verbose, prune }); + printResults(result); + + if (result.errors.length > 0) { + process.exit(1); + } +} diff --git a/.github/workflows/generate-toolkit-docs-porter.md b/.github/workflows/generate-toolkit-docs-porter.md new file mode 100644 index 000000000..fe3bec018 --- /dev/null +++ b/.github/workflows/generate-toolkit-docs-porter.md @@ -0,0 +1,28 @@ +# Generate toolkit docs after Porter deploy + +This workflow regenerates toolkit JSON after a Porter deploy and opens a PR with the changes. + +## What it does + +1. Builds the toolkit docs generator. +2. Generates toolkit JSON in `data/toolkits` using the Engine tool metadata endpoint. +3. Syncs integrations sidebar navigation from the generated JSON. +4. Creates a PR if any files changed. + +## Inputs and secrets + +Required secrets: + +- `ENGINE_API_URL` +- `ENGINE_API_KEY` +- `OPENAI_API_KEY` + +Optional secrets: + +- `OPENAI_MODEL` (falls back to `gpt-4o-mini`) + +## Where to look + +- Workflow: `.github/workflows/generate-toolkit-docs-porter.yml` +- Sidebar sync script: `.github/scripts/sync-toolkit-sidebar.ts` +- Generator code: `toolkit-docs-generator/src/cli/index.ts` diff --git a/.github/workflows/generate-toolkit-docs-porter.yml b/.github/workflows/generate-toolkit-docs-porter.yml new file mode 100644 index 000000000..b1d38f806 --- /dev/null +++ b/.github/workflows/generate-toolkit-docs-porter.yml @@ -0,0 +1,91 @@ +name: Generate toolkit docs after Porter deploy +# Description: Generate toolkit JSON from Engine API, then sync sidebar navigation. +# Flow: +# 1) Build the toolkit docs generator +# 2) Generate toolkit JSON into data/toolkits +# 3) Sync integrations sidebar _meta.tsx from data/toolkits +# 4) Open a PR if changes were produced + +on: + repository_dispatch: + types: [porter_deploy_succeeded] + workflow_dispatch: + +permissions: + contents: write + pull-requests: write + +jobs: + generate: + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + version: 9 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: "22" + cache: pnpm + + - name: Install dependencies + run: pnpm install --frozen-lockfile + + - name: Build toolkit docs generator + run: pnpm build + working-directory: toolkit-docs-generator + + - name: Generate toolkit docs + run: | + pnpm start generate \ + --all \ + --skip-unchanged \ + --engine-api-url "$ENGINE_API_URL" \ + --engine-api-key "$ENGINE_API_KEY" \ + --llm-provider openai \ + --llm-model "$OPENAI_MODEL" \ + --llm-api-key "$OPENAI_API_KEY" \ + --output ../data/toolkits + working-directory: toolkit-docs-generator + env: + ENGINE_API_URL: ${{ secrets.ENGINE_API_URL }} + ENGINE_API_KEY: ${{ secrets.ENGINE_API_KEY }} + OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} + OPENAI_MODEL: ${{ secrets.OPENAI_MODEL || 'gpt-4o-mini' }} + + - name: Sync toolkit sidebar navigation + run: pnpm dlx tsx .github/scripts/sync-toolkit-sidebar.ts + + - name: Check for changes + id: check-changes + run: | + if [ -n "$(git status --porcelain)" ]; then + echo "has_changes=true" >> $GITHUB_OUTPUT + else + echo "has_changes=false" >> $GITHUB_OUTPUT + fi + + - name: Create pull request + if: steps.check-changes.outputs.has_changes == 'true' + uses: peter-evans/create-pull-request@v7 + with: + token: ${{ secrets.GITHUB_TOKEN }} + commit-message: "chore: update toolkit docs after Porter deploy" + title: "Update toolkit docs after Porter deploy" + body: | + This PR was generated after a Porter deploy succeeded. + + - Trigger: ${{ github.event_name }} + - Deploy env: ${{ github.event.client_payload.env || 'unknown' }} + - Deploy SHA: ${{ github.event.client_payload.deploy_sha || 'unknown' }} + - Run: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }} + branch: automation/toolkit-docs-${{ github.run_id }} + delete-branch: true diff --git a/.gitignore b/.gitignore index c714c9723..fb62d53f6 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,13 @@ make_toolkit_docs/uv.lock styles/Google/ styles/alex/ styles/write-good/ + +# Custom sections transformer (one-time scripts) +custom-sections-transformer/ +extract-custom-sections/ + +# Toolkit overview input files +toolkit-docs-generator/overview-input/ + +# Generated toolkit markdown (built at build time, not committed) +public/toolkit-markdown/ diff --git a/.vscode/settings.json b/.vscode/settings.json index de6d9c1c7..046ad3572 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -5,6 +5,77 @@ "posthog", "toolkits" ], + // File watcher settings for large repos + "files.watcherExclude": { + "**/.git/objects/**": true, + "**/.git/subtree-cache/**": true, + "**/node_modules/**": true, + "**/node_modules": true, + "node_modules/**": true, + "**/dist/**": true, + "**/build/**": true, + "**/out/**": true, + "**/.next/**": true, + "**/.nuxt/**": true, + "**/.cache/**": true, + "**/.i18n-cache/**": true, + "**/.pytest_cache/**": true, + "**/toolkit-docs-generator/dist/**": true, + "**/toolkit-docs-generator/output/**": true, + "**/toolkit-docs-generator/test-output/**": true, + "**/*.log": true, + "**/*.sqlite": true, + "**/*.db": true, + "**/tmp/**": true, + "**/temp/**": true + }, + "files.watcherInclude": [], + "search.exclude": { + "**/node_modules": true, + "**/dist": true, + "**/build": true, + "**/.git": true + }, + "files.maxMemoryForLargeFilesMB": 4096, + // Disable indexing and search for large repos + "search.followSymlinks": false, + "search.useIgnoreFiles": true, + "search.useGlobalIgnoreFiles": true, + "search.smartCase": false, + "files.exclude": { + "**/.git": true, + "**/.git/**": true, + "**/node_modules": true, + "**/node_modules/**": true, + "node_modules": true, + "node_modules/**": true, + "**/dist": true, + "**/dist/**": true, + "**/build": true, + "**/build/**": true, + "**/.next": true, + "**/.next/**": true, + "**/.nuxt": true, + "**/.nuxt/**": true, + "**/.cache": true, + "**/.cache/**": true, + "**/.i18n-cache": true, + "**/.i18n-cache/**": true, + "**/.pytest_cache": true, + "**/.pytest_cache/**": true, + "toolkit-docs-generator/dist": true, + "toolkit-docs-generator/dist/**": true, + "toolkit-docs-generator/output": true, + "toolkit-docs-generator/output/**": true, + "toolkit-docs-generator/test-output": true, + "toolkit-docs-generator/test-output/**": true + }, + // Disable language features that index files + "typescript.disableAutomaticTypeAcquisition": true, + "typescript.preferences.includePackageJsonAutoImports": "off", + "javascript.preferences.includePackageJsonAutoImports": "off", + "typescript.suggest.autoImports": false, + "javascript.suggest.autoImports": false, "editor.wordWrap": "bounded", "editor.wordWrapColumn": 120, "editor.formatOnSave": true, diff --git a/app/_components/dashboard-link.tsx b/app/_components/dashboard-link.tsx index 3c01a32e7..2dcd12c2a 100644 --- a/app/_components/dashboard-link.tsx +++ b/app/_components/dashboard-link.tsx @@ -1,12 +1,36 @@ import Link from "next/link"; const DASHBOARD_BASE_URL = - process.env.NEXT_PUBLIC_DASHBOARD_URL || "https://api.arcade.dev"; + process.env.NEXT_PUBLIC_DASHBOARD_URL || "https://app.arcade.dev"; + +const TRAILING_SLASH_REGEX = /\/+$/; +const LEADING_SLASH_REGEX = /^\/+/; + +const normalizePath = (value: string): string => + value.replace(TRAILING_SLASH_REGEX, "").replace(LEADING_SLASH_REGEX, ""); + +const resolveDashboardPrefix = (): string => { + const baseUrl = DASHBOARD_BASE_URL.toLowerCase(); + const explicitPrefix = process.env.NEXT_PUBLIC_DASHBOARD_PATH_PREFIX; + + if (explicitPrefix !== undefined) { + return normalizePath(explicitPrefix); + } + + if (baseUrl.includes("/dashboard") || baseUrl.includes("app.arcade.dev")) { + return ""; + } + + return "dashboard"; +}; + +const DASHBOARD_PATH_PREFIX = resolveDashboardPrefix(); +const BASE_URL = DASHBOARD_BASE_URL.replace(TRAILING_SLASH_REGEX, ""); export const getDashboardUrl = (path = "") => - path - ? `${DASHBOARD_BASE_URL}/dashboard/${path}` - : `${DASHBOARD_BASE_URL}/dashboard`; + [BASE_URL, DASHBOARD_PATH_PREFIX, path ? normalizePath(path) : ""] + .filter(Boolean) + .join("/"); type DashboardLinkProps = { path?: string; diff --git a/app/_components/scope-picker.test.tsx b/app/_components/scope-picker.test.tsx new file mode 100644 index 000000000..48ee62b9b --- /dev/null +++ b/app/_components/scope-picker.test.tsx @@ -0,0 +1,50 @@ +import { describe, expect, it } from "vitest"; + +import { + DEFAULT_SHOW_UNSELECTED_TOOLS, + getRequiredScopes, + getSelectedToolNames, + getToolsForSelectionGrid, +} from "./scope-picker"; + +describe("scope picker helpers", () => { + const tools = [ + { name: "SendEmail", scopes: ["scope.send", " scope.send "] }, + { name: "ListEmails", scopes: ["scope.read", ""] }, + ]; + + it("defaults to hiding unselected tools", () => { + expect(DEFAULT_SHOW_UNSELECTED_TOOLS).toBe(false); + }); + + it("filters selected tools to known names only", () => { + const selected = new Set(["SendEmail", "UnknownTool"]); + + expect(getSelectedToolNames(tools, selected)).toEqual(["SendEmail"]); + }); + + it("builds required scopes for selected tools", () => { + const selected = new Set(["SendEmail", "ListEmails"]); + + expect(getRequiredScopes(tools, selected)).toEqual([ + "scope.read", + "scope.send", + ]); + }); + + it("returns empty scopes when no valid tools selected", () => { + const selected = new Set(["UnknownTool"]); + + expect(getRequiredScopes(tools, selected)).toEqual([]); + }); + + it("builds the selection grid with selected tools only by default", () => { + const selected = new Set(["ListEmails"]); + expect(getToolsForSelectionGrid(tools, selected)).toEqual([tools[1]]); + }); + + it("can include unselected tools in the selection grid", () => { + const selected = new Set(["ListEmails"]); + expect(getToolsForSelectionGrid(tools, selected, true)).toEqual(tools); + }); +}); diff --git a/app/_components/scope-picker.tsx b/app/_components/scope-picker.tsx index 6fd0f42fb..ab031c40c 100644 --- a/app/_components/scope-picker.tsx +++ b/app/_components/scope-picker.tsx @@ -1,19 +1,279 @@ "use client"; +import { Button } from "@arcadeai/design-system"; +import { Check, Copy, KeyRound, ShieldCheck, Wrench } from "lucide-react"; import posthog from "posthog-js"; -import { useState } from "react"; +import { useCallback, useEffect, useMemo, useState } from "react"; + +const COPY_FEEDBACK_MS = 2000; + +const TOOL_PAGE_SIZE_SMALL = 15; +const DEFAULT_TOOLS_PAGE_SIZE = 30; +const TOOL_PAGE_SIZE_LARGE = 60; +const TOOL_PAGE_SIZE_XL = 120; + +const TOOLS_PAGE_SIZE_OPTIONS = [ + TOOL_PAGE_SIZE_SMALL, + DEFAULT_TOOLS_PAGE_SIZE, + TOOL_PAGE_SIZE_LARGE, + TOOL_PAGE_SIZE_XL, +] as const; + +const JSON_PRETTY_PRINT_INDENT = 2; + +type ToolParameter = { + name: string; + type: string; + required: boolean; + description: string | null; + enum: string[] | null; +}; type Tool = { name: string; scopes: string[]; + secrets?: string[]; + // Full tool definition fields (optional for backward compatibility) + qualifiedName?: string; + fullyQualifiedName?: string; + description?: string | null; + parameters?: ToolParameter[]; + output?: { type: string; description: string | null } | null; }; +export const DEFAULT_SHOW_UNSELECTED_TOOLS = false; + type ScopePickerProps = { tools: Tool[]; + selectedTools?: string[]; + onSelectedToolsChange?: (selectedTools: string[]) => void; }; -export default function ScopePicker({ tools }: ScopePickerProps) { - const [selectedTools, setSelectedTools] = useState>(new Set()); +function CopyButton({ text, label }: { text: string; label: string }) { + const [copied, setCopied] = useState(false); + + const handleCopy = useCallback(async () => { + try { + await navigator.clipboard.writeText(text); + setCopied(true); + setTimeout(() => setCopied(false), COPY_FEEDBACK_MS); + } catch { + // Ignore clipboard errors (e.g., permissions, unsupported browser). + } + }, [text]); + + return ( + + ); +} + +export function getSelectedToolNames( + tools: Tool[], + selectedTools: Set +): string[] { + const validToolNames = new Set(tools.map((tool) => tool.name)); + return Array.from(selectedTools).filter((name) => validToolNames.has(name)); +} + +export function getRequiredScopes( + tools: Tool[], + selectedTools: Set +): string[] { + const selectedToolNames = new Set(getSelectedToolNames(tools, selectedTools)); + const normalizedScopes = tools + .filter((tool) => selectedToolNames.has(tool.name)) + .flatMap((tool) => tool.scopes) + .map((scope) => scope.trim()) + .filter((scope) => scope.length > 0); + + return Array.from(new Set(normalizedScopes)).sort(); +} + +export function getRequiredSecrets( + tools: Tool[], + selectedTools: Set +): string[] { + const selectedToolNames = new Set(getSelectedToolNames(tools, selectedTools)); + const secrets = tools + .filter((tool) => selectedToolNames.has(tool.name)) + .flatMap((tool) => tool.secrets ?? []) + .map((secret) => secret.trim()) + .filter((secret) => secret.length > 0); + + return Array.from(new Set(secrets)).sort(); +} + +export function getToolsForSelectionGrid( + tools: Tool[], + selectedTools: Set, + showUnselectedTools: boolean = DEFAULT_SHOW_UNSELECTED_TOOLS +): Tool[] { + if (showUnselectedTools) { + return tools; + } + return tools.filter((tool) => selectedTools.has(tool.name)); +} + +function RequirementsPanel({ + onToggleAdvanced, + requiredScopes, + requiredSecrets, + selectedToolNames, + showAdvanced, +}: { + onToggleAdvanced: () => void; + requiredScopes: string[]; + requiredSecrets: string[]; + selectedToolNames: string[]; + showAdvanced: boolean; +}) { + if (selectedToolNames.length === 0) { + return ( +
+

+ Requirements +

+

+ Select tools to see requirements +

+
+ ); + } + + const hasScopes = requiredScopes.length > 0; + const hasSecrets = requiredSecrets.length > 0; + const noRequirements = !(hasScopes || hasSecrets); + + return ( +
+

+ Requirements +

+ + {/* No requirements case */} + {noRequirements && ( +

+ No authentication required for selected tools +

+ )} + + {/* OAuth scopes - always show count when present */} + {hasScopes && ( +
+ + + {requiredScopes.length} OAuth scope + {requiredScopes.length > 1 ? "s" : ""} required + +
+ )} + + {/* Secrets - only show if there are secrets */} + {hasSecrets && ( +
+ +
+ Secrets: + {requiredSecrets.map((secret) => ( + + {secret} + + ))} +
+
+ )} + + {/* Show OAuth Scopes Toggle - only when there are scopes */} + {hasScopes && ( +
+ +
+ )} +
+ ); +} + +function OAuthScopesDetails({ + requiredScopes, + scopesAsText, + selectedToolNames, + showAdvanced, +}: { + requiredScopes: string[]; + scopesAsText: string; + selectedToolNames: string[]; + showAdvanced: boolean; +}) { + if ( + !(showAdvanced && selectedToolNames.length > 0 && requiredScopes.length > 0) + ) { + return null; + } + + return ( +
+
+

+ + Required OAuth scopes + + ({requiredScopes.length}) + +

+ +
+
+ {requiredScopes.map((scope) => ( + + {scope} + + ))} +
+
+ ); +} + +export default function ScopePicker({ + tools, + selectedTools, + onSelectedToolsChange, +}: ScopePickerProps) { + const [internalSelectedTools, setInternalSelectedTools] = useState< + Set + >(new Set()); + const [showAdvanced, setShowAdvanced] = useState(false); + const isControlled = Array.isArray(selectedTools); + const selectedToolsSet = useMemo( + () => (isControlled ? new Set(selectedTools) : internalSelectedTools), + [isControlled, selectedTools, internalSelectedTools] + ); + const [pageSize, setPageSize] = useState(DEFAULT_TOOLS_PAGE_SIZE); + const [page, setPage] = useState(1); + const [showUnselectedTools, setShowUnselectedTools] = useState( + DEFAULT_SHOW_UNSELECTED_TOOLS + ); const trackScopeCalculatorUsed = ( action: string, @@ -28,119 +288,277 @@ export default function ScopePicker({ tools }: ScopePickerProps) { }); }; + const updateSelectedTools = ( + nextSelected: Set, + action: string, + toolName?: string + ) => { + const nextList = Array.from(nextSelected).sort(); + trackScopeCalculatorUsed(action, toolName, nextSelected.size); + if (isControlled) { + onSelectedToolsChange?.(nextList); + } else { + setInternalSelectedTools(nextSelected); + } + }; + const toggleTool = (toolName: string) => { - const newSelected = new Set(selectedTools); + const newSelected = new Set(selectedToolsSet); const isSelecting = !newSelected.has(toolName); if (newSelected.has(toolName)) { newSelected.delete(toolName); } else { newSelected.add(toolName); } - setSelectedTools(newSelected); - trackScopeCalculatorUsed( + updateSelectedTools( + newSelected, isSelecting ? "tool_selected" : "tool_deselected", - toolName, - newSelected.size + toolName ); }; const selectAll = () => { - setSelectedTools(new Set(tools.map((t) => t.name))); - trackScopeCalculatorUsed("select_all", undefined, tools.length); + updateSelectedTools(new Set(tools.map((t) => t.name)), "select_all"); }; const clearAll = () => { - setSelectedTools(new Set()); - trackScopeCalculatorUsed("clear_all", undefined, 0); + updateSelectedTools(new Set(), "clear_all"); }; - // Get unique scopes from selected tools - const requiredScopes = Array.from( - new Set( - tools.filter((t) => selectedTools.has(t.name)).flatMap((t) => t.scopes) - ) - ).sort(); + const selectedToolNames = getSelectedToolNames(tools, selectedToolsSet); + const requiredScopes = getRequiredScopes(tools, selectedToolsSet); + const requiredSecrets = getRequiredSecrets(tools, selectedToolsSet); + + const toolsForSelectionGrid = useMemo( + () => + getToolsForSelectionGrid(tools, selectedToolsSet, showUnselectedTools), + [tools, selectedToolsSet, showUnselectedTools] + ); + + const pageCount = useMemo( + () => Math.max(1, Math.ceil(toolsForSelectionGrid.length / pageSize)), + [toolsForSelectionGrid.length, pageSize] + ); + + useEffect(() => { + setPage((current) => Math.min(Math.max(1, current), pageCount)); + }, [pageCount]); + + const pagedTools = useMemo(() => { + const start = (page - 1) * pageSize; + const end = start + pageSize; + return toolsForSelectionGrid.slice(start, end); + }, [toolsForSelectionGrid, page, pageSize]); + + const scopesAsText = requiredScopes.join("\n"); + const secretsAsText = requiredSecrets.join("\n"); + const toolNamesAsText = selectedToolNames.join(", "); + const selectedToolsAsJson = JSON.stringify( + tools + .filter((t) => selectedToolsSet.has(t.name)) + .map((t) => { + // If full tool definition is available, include all fields + if (t.qualifiedName && t.parameters) { + return { + name: t.qualifiedName, + description: t.description ?? null, + parameters: t.parameters.map((p) => ({ + name: p.name, + type: p.type, + required: p.required, + description: p.description, + ...(p.enum ? { enum: p.enum } : {}), + })), + scopes: t.scopes, + secrets: t.secrets ?? [], + output: t.output ?? null, + }; + } + // Fallback to basic format + return { + name: t.name, + scopes: t.scopes, + secrets: t.secrets ?? [], + }; + }), + null, + JSON_PRETTY_PRINT_INDENT + ); return ( -
-
-
-

- Scope calculator +
+ {/* Header */} +
+
+

+ + Selected tools + {selectedToolNames.length > 0 && ( + + {selectedToolNames.length} of {tools.length} + + )}

-
- - + {showUnselectedTools ? "Show selected only" : "Show all tools"} + + {selectedToolNames.length < tools.length && ( + + )} + {selectedToolNames.length > 0 && ( + + )}
-

- Select the tools you plan to use to see the required OAuth scopes. -

+ {/* Tools Grid */}
-
- {tools.map((tool) => ( -
+ )} + {pagedTools.length > 0 ? ( +
+ {pagedTools.map((tool) => { + const toolHasScopes = (tool.scopes?.length ?? 0) > 0; + const toolHasSecrets = (tool.secrets?.length ?? 0) > 0; + return ( + + ); + })} +
+ ) : ( +
+

No tools selected.

+ {!showUnselectedTools && ( +

+ Click "Show all tools" to add tools. +

+ )} +
+ )} -
-

- Required scopes{" "} - {selectedTools.size > 0 && ( - - ({requiredScopes.length}) - + {/* Copy Actions */} + {selectedToolNames.length > 0 && ( +
+ + + {showAdvanced && requiredScopes.length > 0 && ( + )} -

- {requiredScopes.length > 0 ? ( -
    - {requiredScopes.map((scope) => ( -
  • - {scope} -
  • - ))} -
- ) : ( -

- Select tools above to see required scopes -

- )} -
+ {requiredSecrets.length > 0 && ( + + )} +
+ )} + + {/* Requirements Summary */} + setShowAdvanced((current) => !current)} + requiredScopes={requiredScopes} + requiredSecrets={requiredSecrets} + selectedToolNames={selectedToolNames} + showAdvanced={showAdvanced} + /> +

); } + +export { CopyButton }; diff --git a/app/_components/tool-info.tsx b/app/_components/tool-info.tsx index f1aee1a94..f7c34ca5e 100644 --- a/app/_components/tool-info.tsx +++ b/app/_components/tool-info.tsx @@ -1,10 +1,5 @@ "use client"; -import { - Badge, - ByocBadge, - getToolkitIconByName, - ProBadge, -} from "@arcadeai/design-system"; +import { Badge, ByocBadge, ProBadge } from "@arcadeai/design-system"; import { usePathname } from "next/navigation"; import type React from "react"; import { findToolkitFromPath } from "../en/resources/integrations/components/toolkit-utils"; @@ -63,8 +58,8 @@ const ToolInfo: React.FC = ({ : authProviderDocsUrl; const toolkit = findToolkitFromPath(pathname); - const toolkitName = toolkit?.label; - const IconComponent = toolkitName ? getToolkitIconByName(toolkitName) : null; + // Icon URL comes from the Design System toolkit metadata + const iconUrl = toolkit?.publicIconUrl; const isPro = toolkit?.isPro ?? false; const isByoc = toolkit?.isBYOC ?? false; @@ -77,10 +72,16 @@ const ToolInfo: React.FC = ({ return (
- {IconComponent && ( + {iconUrl && (
- + {`${toolkit?.label
)} diff --git a/app/_components/toolkit-docs/ARCHITECTURE.md b/app/_components/toolkit-docs/ARCHITECTURE.md new file mode 100644 index 000000000..49105541d --- /dev/null +++ b/app/_components/toolkit-docs/ARCHITECTURE.md @@ -0,0 +1,302 @@ +# Toolkit Docs Components Architecture + +This document describes how the toolkit documentation components work, including data flow, rendering, and static HTML generation. + +## Overview + +The toolkit docs system renders documentation pages for MCP Server integrations (Gmail, Slack, GitHub, etc.) from JSON data files. It supports: + +- Static generation at build time +- Dynamic preview mode for testing +- Custom documentation chunks injection +- Tool selection and filtering + +## Directory Structure + +``` +app/ +├── _components/toolkit-docs/ # Shared components +│ ├── components/ # UI components +│ │ ├── available-tools-table.tsx # Tools listing with search/filter +│ │ ├── data-table.tsx # Generic data table +│ │ ├── documentation-chunk-renderer.tsx # MDX chunk renderer +│ │ ├── dynamic-code-block.tsx # Language-switching code blocks +│ │ ├── parameters-table.tsx # Tool parameters display +│ │ ├── scopes-display.tsx # OAuth scopes display +│ │ ├── tool-section.tsx # Individual tool section +│ │ ├── toolkit-header.tsx # Page header with badges +│ │ └── toolkit-page.tsx # Main page layout +│ ├── types/index.ts # TypeScript type definitions +│ ├── constants.ts # Shared constants +│ └── index.ts # Public exports +├── _lib/ +│ ├── toolkit-data.ts # JSON data loading +│ └── toolkit-static-params.ts # Static params generation +├── api/ +│ ├── toolkit-data/[toolkitId]/ # Toolkit data API +│ └── markdown/[[...slug]]/ # Markdown serving API +└── en/resources/integrations/ + ├── _lib/toolkit-docs-page.tsx # Page factory function + ├── [category]/[toolkitId]/ # Dynamic route pages + └── preview/[toolkitId]/ # Preview mode pages +``` + +## Data Flow + +### 1. JSON Data Files + +Toolkit data is stored in `data/toolkits/`: + +``` +data/toolkits/ +├── index.json # Index of all toolkits +├── gmail.json # Gmail toolkit data +├── slack.json # Slack toolkit data +└── ... +``` + +Each toolkit JSON file contains: + +```typescript +interface ToolkitData { + id: string; // e.g., "gmail" + name: string; // e.g., "Gmail" + version: string; // e.g., "1.0.0" + description: string; // Toolkit description + category: string; // e.g., "productivity" + auth?: { // Authentication info + type: string; + providerId: string; + scopes: string[]; + }; + tools: Tool[]; // Array of tools + documentationChunks?: DocumentationChunk[]; // Custom docs +} +``` + +### 2. Data Loading (`toolkit-data.ts`) + +```typescript +// Load a single toolkit +const data = await readToolkitData("gmail"); + +// Load the index +const index = await readToolkitIndex(); +``` + +Key features: +- **Normalization**: Toolkit IDs are normalized (lowercase, alphanumeric only) +- **Validation**: Basic runtime validation of JSON structure +- **Error handling**: Returns `null` on failure (file not found, parse error) + +### 3. Static Params Generation (`toolkit-static-params.ts`) + +At build time, Next.js calls `generateStaticParams()` to get all toolkit routes: + +```typescript +export async function getToolkitStaticParamsForCategory( + category: IntegrationCategory +): Promise> { + const routes = await listToolkitRoutes(); + return routes + .filter((route) => route.category === category) + .map(({ slug }) => ({ toolkitId: slug })); +} +``` + +This enables static HTML generation for all toolkit pages. + +## Component Architecture + +### ToolkitPage (Main Layout) + +The root component that orchestrates the page: + +```tsx + + {/* Renders: */} + {/* - ToolkitHeader (name, badges, description) */} + {/* - AvailableToolsTable (searchable tool list) */} + {/* - ToolSection for each tool */} + {/* - Table of Contents sidebar */} + +``` + +Features: +- Intersection Observer for active section tracking +- Tool selection state management +- Responsive layout with sticky sidebar + +### ToolSection (Individual Tool) + +Renders a single tool with all its details: + +```tsx + + {/* Renders: */} + {/* - Tool header with copy button */} + {/* - Description (with custom chunks) */} + {/* - Parameters table */} + {/* - Requirements (secrets, OAuth) */} + {/* - Output schema */} + {/* - Code example */} + +``` + +### DocumentationChunkRenderer (Custom Content) + +Allows injecting custom documentation at specific locations: + +```tsx + +``` + +Supported chunk types: +- `markdown`: Raw MDX content +- `callout`: Callout boxes (info, warning, error) +- `code`: Code blocks + +The renderer: +1. Filters chunks by location and position +2. Compiles MDX at runtime using `@mdx-js/mdx` +3. Caches compiled components (LRU, max 100 entries) + +### DynamicCodeBlock (Code Examples) + +Shows code examples with language switching: + +```tsx + +``` + +Features: +- Python/JavaScript toggle +- Theme-aware syntax highlighting +- Copy to clipboard + +## Static HTML Generation + +### Build Process + +1. **Index Generation**: `toolkit-docs-generator` creates JSON files in `data/toolkits/` +2. **Static Params**: Next.js calls `generateStaticParams()` for each category +3. **Page Rendering**: Each toolkit page is pre-rendered to HTML +4. **Markdown Export**: Static markdown files are generated in `public/toolkit-markdown/` + +### Page Factory (`toolkit-docs-page.tsx`) + +Creates page components for each category: + +```typescript +export function createToolkitDocsPage(category: IntegrationCategory) { + return { + generateMetadata, // SEO metadata + generateStaticParams, // Static routes + Page, // React component + }; +} +``` + +Each category folder uses this factory: + +```typescript +// app/en/resources/integrations/productivity/[toolkitId]/page-impl.tsx +const { generateMetadata, generateStaticParams, Page } = + createToolkitDocsPage("productivity"); + +export { generateMetadata, generateStaticParams }; +export default Page; +``` + +### Dynamic Route Configuration + +```typescript +// Disable dynamic params - only pre-rendered routes allowed +export const dynamicParams = false; +``` + +This ensures: +- All valid routes are generated at build time +- Invalid toolkit IDs return 404 +- No server-side rendering at runtime + +## API Routes + +### `/api/toolkit-data/[toolkitId]` + +Returns toolkit JSON data: + +``` +GET /api/toolkit-data/gmail +→ { id: "gmail", name: "Gmail", tools: [...] } +``` + +Used by: +- Preview mode for live data loading +- Client-side data fetching (if needed) + +### `/api/markdown/[[...slug]]` + +Serves markdown content for any page: + +``` +GET /api/markdown/en/resources/integrations/productivity/gmail.md +→ Raw markdown content +``` + +Features: +- Path sanitization (prevents traversal attacks) +- Falls back to MDX files if toolkit markdown not found +- Cache headers for performance + +## Preview Mode + +The preview system allows testing toolkit docs before publishing: + +``` +/en/resources/integrations/preview/[toolkitId] +``` + +It: +1. Fetches data from `/api/toolkit-data/[toolkitId]` +2. Renders the same components as production +3. Redirects to the actual page if toolkit is published + +## Performance Considerations + +### Caching + +- **MDX Cache**: LRU cache (max 100 entries) for compiled MDX components +- **HTTP Cache**: API routes return `Cache-Control` headers +- **Static Generation**: Pages are pre-rendered at build time + +### Optimizations + +- **Intersection Observer**: Lazy updates for active section tracking +- **Pagination**: Tools table paginates large lists (25/50/100/200 per page) +- **Memoization**: Heavy computations wrapped in `useMemo` + +## Type Safety + +All components use TypeScript with strict typing: + +```typescript +// types/index.ts +export interface ToolkitData { ... } +export interface Tool { ... } +export interface DocumentationChunk { ... } +export interface ToolSectionProps { ... } +``` + +Runtime validation in `toolkit-data.ts` ensures JSON matches expected structure. + +## Error Handling + +- **Missing Data**: Components handle `null`/`undefined` gracefully +- **Invalid Routes**: `notFound()` returns 404 for unknown toolkits +- **MDX Errors**: `DocumentationChunkRenderer` shows error message on parse failure +- **API Errors**: Routes return appropriate HTTP status codes diff --git a/app/_components/toolkit-docs/__tests__/available-tools-table.test.tsx b/app/_components/toolkit-docs/__tests__/available-tools-table.test.tsx new file mode 100644 index 000000000..db9c02cf8 --- /dev/null +++ b/app/_components/toolkit-docs/__tests__/available-tools-table.test.tsx @@ -0,0 +1,87 @@ +import { describe, expect, it } from "vitest"; + +import { + buildScopeDisplayItems, + buildSecretDisplayItems, + filterTools, + toToolAnchorId, +} from "../components/available-tools-table"; + +describe("AvailableToolsTable helpers", () => { + it("builds secret display items from secrets info", () => { + const items = buildSecretDisplayItems( + { + name: "CreateIssue", + qualifiedName: "Github.CreateIssue", + description: "Create an issue", + secretsInfo: [ + { name: "GITHUB_API_KEY", type: "api_key" }, + { name: "SECONDARY_TOKEN", type: "token" }, + ], + }, + { secretsDisplay: "summary" } + ); + + expect(items).toEqual([ + { label: "API key", href: undefined }, + { label: "Token", href: undefined }, + ]); + }); + + it("adds hrefs for secret type docs when base URL is provided", () => { + const items = buildSecretDisplayItems( + { + name: "CreateIssue", + qualifiedName: "Github.CreateIssue", + description: "Create an issue", + secretsInfo: [{ name: "GITHUB_API_KEY", type: "api_key" }], + }, + { secretsDisplay: "types", secretTypeDocsBaseUrl: "/references/secrets" } + ); + + expect(items).toEqual([ + { label: "API key", href: "/references/secrets/api_key" }, + ]); + }); + + it("filters tools by query and filter mode", () => { + const tools = [ + { + name: "CreateIssue", + qualifiedName: "Github.CreateIssue", + description: "Create an issue", + scopes: ["repo"], + secrets: ["API_KEY"], + }, + { + name: "ListRepos", + qualifiedName: "Github.ListRepos", + description: "List repositories", + scopes: [], + secrets: [], + }, + ]; + + expect(filterTools(tools, "list", "all", [])).toEqual([tools[1]]); + expect(filterTools(tools, "", "has_scopes", [])).toEqual([tools[0]]); + expect(filterTools(tools, "", "no_secrets", [])).toEqual([tools[1]]); + expect(filterTools(tools, "", "all", ["repo"])).toEqual([tools[0]]); + expect(filterTools(tools, "", "all", ["missing"])).toEqual([]); + }); + + it("builds scope display items from scopes", () => { + expect( + buildScopeDisplayItems([" scope.one ", "", "scope.two", "scope.one"]) + ).toEqual(["scope.one", "scope.two"]); + }); + + it("matches the anchor id logic used by TableOfContents", () => { + expect(toToolAnchorId("Github.CreateIssue")).toBe("githubcreateissue"); + expect(toToolAnchorId("Slack.Api.Send.Message")).toBe( + "slackapisendmessage" + ); + expect(toToolAnchorId("Slack Api.Send.Message")).toBe( + "slack-apisendmessage" + ); + }); +}); diff --git a/app/_components/toolkit-docs/__tests__/documentation-chunk-renderer.test.tsx b/app/_components/toolkit-docs/__tests__/documentation-chunk-renderer.test.tsx new file mode 100644 index 000000000..e2892d965 --- /dev/null +++ b/app/_components/toolkit-docs/__tests__/documentation-chunk-renderer.test.tsx @@ -0,0 +1,320 @@ +import { describe, expect, it } from "vitest"; +import { + hasChunksAt, + sortChunksDeterministically, +} from "../components/documentation-chunk-renderer"; +import type { DocumentationChunk } from "../types"; + +/** + * Unit tests for DocumentationChunkRenderer utility functions + * + * Note: Component rendering tests require additional dependencies + * (@testing-library/react). These tests focus on the pure utility functions. + */ + +describe("hasChunksAt", () => { + const createChunk = ( + overrides: Partial = {} + ): DocumentationChunk => ({ + type: "callout", + location: "description", + position: "before", + content: "Test content", + ...overrides, + }); + + it("returns true when chunks exist at location and position", () => { + const chunks: DocumentationChunk[] = [ + createChunk({ location: "header", position: "after" }), + ]; + + expect(hasChunksAt(chunks, "header", "after")).toBe(true); + }); + + it("returns false when no chunks at location", () => { + const chunks: DocumentationChunk[] = [ + createChunk({ location: "header", position: "after" }), + ]; + + expect(hasChunksAt(chunks, "parameters", "after")).toBe(false); + }); + + it("returns false when no chunks at position", () => { + const chunks: DocumentationChunk[] = [ + createChunk({ location: "header", position: "after" }), + ]; + + expect(hasChunksAt(chunks, "header", "before")).toBe(false); + }); + + it("returns false for empty array", () => { + expect(hasChunksAt([], "header", "after")).toBe(false); + }); + + it("returns false when chunks are missing", () => { + expect(hasChunksAt(undefined, "header", "after")).toBe(false); + expect(hasChunksAt(null, "header", "after")).toBe(false); + }); + + it("returns true when multiple chunks match", () => { + const chunks: DocumentationChunk[] = [ + createChunk({ location: "description", position: "before" }), + createChunk({ location: "description", position: "before" }), + createChunk({ location: "description", position: "after" }), + ]; + + expect(hasChunksAt(chunks, "description", "before")).toBe(true); + }); + + it("works with all location types", () => { + const locations: DocumentationChunk["location"][] = [ + "header", + "description", + "parameters", + "auth", + "secrets", + "output", + "footer", + ]; + + for (const location of locations) { + const chunks: DocumentationChunk[] = [ + createChunk({ location, position: "after" }), + ]; + expect(hasChunksAt(chunks, location, "after")).toBe(true); + } + }); + + it("works with all position types", () => { + const positions: DocumentationChunk["position"][] = [ + "before", + "after", + "replace", + ]; + + for (const position of positions) { + const chunks: DocumentationChunk[] = [ + createChunk({ location: "header", position }), + ]; + expect(hasChunksAt(chunks, "header", position)).toBe(true); + } + }); +}); + +describe("sortChunksDeterministically", () => { + const createChunk = ( + overrides: Partial = {} + ): DocumentationChunk => ({ + type: "markdown", + location: "custom_section", + position: "after", + content: "Default content", + ...overrides, + }); + + it("sorts chunks by priority (lower first)", () => { + const chunks: DocumentationChunk[] = [ + createChunk({ priority: 30, header: "## Third" }), + createChunk({ priority: 10, header: "## First" }), + createChunk({ priority: 20, header: "## Second" }), + ]; + + const sorted = sortChunksDeterministically(chunks); + + expect(sorted[0].header).toBe("## First"); + expect(sorted[1].header).toBe("## Second"); + expect(sorted[2].header).toBe("## Third"); + }); + + it("sorts chunks with same priority alphabetically by header", () => { + const chunks: DocumentationChunk[] = [ + createChunk({ header: "## Zebra" }), + createChunk({ header: "## Alpha" }), + createChunk({ header: "## Middle" }), + ]; + + const sorted = sortChunksDeterministically(chunks); + + expect(sorted[0].header).toBe("## Alpha"); + expect(sorted[1].header).toBe("## Middle"); + expect(sorted[2].header).toBe("## Zebra"); + }); + + it("places chunks with headers before chunks without headers", () => { + const chunks: DocumentationChunk[] = [ + createChunk({ content: "No header content" }), + createChunk({ header: "## Has Header", content: "Header content" }), + ]; + + const sorted = sortChunksDeterministically(chunks); + + expect(sorted[0].header).toBe("## Has Header"); + expect(sorted[1].header).toBeUndefined(); + }); + + it("sorts chunks with same priority and no headers by content", () => { + const chunks: DocumentationChunk[] = [ + createChunk({ content: "Zebra content" }), + createChunk({ content: "Alpha content" }), + ]; + + const sorted = sortChunksDeterministically(chunks); + + expect(sorted[0].content).toBe("Alpha content"); + expect(sorted[1].content).toBe("Zebra content"); + }); + + it("handles empty array", () => { + const sorted = sortChunksDeterministically([]); + expect(sorted).toEqual([]); + }); + + it("handles single chunk", () => { + const chunk = createChunk({ header: "## Only One" }); + const sorted = sortChunksDeterministically([chunk]); + + expect(sorted).toHaveLength(1); + expect(sorted[0].header).toBe("## Only One"); + }); + + it("does not mutate the original array", () => { + const chunks: DocumentationChunk[] = [ + createChunk({ priority: 20, header: "## Second" }), + createChunk({ priority: 10, header: "## First" }), + ]; + const originalOrder = [...chunks]; + + sortChunksDeterministically(chunks); + + expect(chunks[0].header).toBe(originalOrder[0].header); + expect(chunks[1].header).toBe(originalOrder[1].header); + }); + + it("uses default priority of 100 for chunks without priority", () => { + const chunks: DocumentationChunk[] = [ + createChunk({ header: "## Default Priority" }), // No priority = 100 + createChunk({ priority: 50, header: "## Low Priority" }), + createChunk({ priority: 150, header: "## High Priority" }), + ]; + + const sorted = sortChunksDeterministically(chunks); + + expect(sorted[0].header).toBe("## Low Priority"); + expect(sorted[1].header).toBe("## Default Priority"); + expect(sorted[2].header).toBe("## High Priority"); + }); + + it("strips ## prefix when comparing headers", () => { + const chunks: DocumentationChunk[] = [ + createChunk({ header: "## Beta Section" }), + createChunk({ header: "### Alpha Section" }), + createChunk({ header: "# Gamma Section" }), + ]; + + const sorted = sortChunksDeterministically(chunks); + + expect(sorted[0].header).toBe("### Alpha Section"); + expect(sorted[1].header).toBe("## Beta Section"); + expect(sorted[2].header).toBe("# Gamma Section"); + }); + + it("produces stable order across multiple calls", () => { + const chunks: DocumentationChunk[] = [ + createChunk({ header: "## Auth" }), + createChunk({ header: "## Reference" }), + createChunk({ header: "## Setup" }), + ]; + + const sorted1 = sortChunksDeterministically(chunks); + const sorted2 = sortChunksDeterministically(chunks); + const sorted3 = sortChunksDeterministically(chunks); + + expect(sorted1.map((c) => c.header)).toEqual(sorted2.map((c) => c.header)); + expect(sorted2.map((c) => c.header)).toEqual(sorted3.map((c) => c.header)); + }); +}); + +describe("DocumentationChunk type validation", () => { + it("validates chunk type property", () => { + const validTypes: DocumentationChunk["type"][] = [ + "callout", + "markdown", + "code", + "warning", + "info", + "tip", + ]; + + for (const type of validTypes) { + const chunk: DocumentationChunk = { + type, + location: "header", + position: "after", + content: "test", + }; + expect(chunk.type).toBe(type); + } + }); + + it("validates optional title property", () => { + const chunkWithTitle: DocumentationChunk = { + type: "callout", + location: "header", + position: "after", + content: "test", + title: "My Title", + }; + + const chunkWithoutTitle: DocumentationChunk = { + type: "callout", + location: "header", + position: "after", + content: "test", + }; + + expect(chunkWithTitle.title).toBe("My Title"); + expect(chunkWithoutTitle.title).toBeUndefined(); + }); + + it("validates optional variant property", () => { + const validVariants: DocumentationChunk["variant"][] = [ + "default", + "destructive", + "warning", + "info", + "success", + undefined, + ]; + + for (const variant of validVariants) { + const chunk: DocumentationChunk = { + type: "callout", + location: "header", + position: "after", + content: "test", + variant, + }; + expect(chunk.variant).toBe(variant); + } + }); + + it("validates optional priority property", () => { + const chunkWithPriority: DocumentationChunk = { + type: "markdown", + location: "custom_section", + position: "after", + content: "test", + priority: 10, + }; + + const chunkWithoutPriority: DocumentationChunk = { + type: "markdown", + location: "custom_section", + position: "after", + content: "test", + }; + + expect(chunkWithPriority.priority).toBe(10); + expect(chunkWithoutPriority.priority).toBeUndefined(); + }); +}); diff --git a/app/_components/toolkit-docs/__tests__/dynamic-code-block.test.tsx b/app/_components/toolkit-docs/__tests__/dynamic-code-block.test.tsx new file mode 100644 index 000000000..27c64b410 --- /dev/null +++ b/app/_components/toolkit-docs/__tests__/dynamic-code-block.test.tsx @@ -0,0 +1,104 @@ +import { describe, expect, it } from "vitest"; +import { + buildToolInput, + generateJavaScriptExample, + generatePythonExample, +} from "../components/dynamic-code-block"; +import type { ToolCodeExample } from "../types"; + +describe("DynamicCodeBlock helpers", () => { + it("builds tool input with placeholders for required values", () => { + const codeExample: ToolCodeExample = { + toolName: "Github.CreateIssue", + parameters: { + title: { + value: null, + type: "string", + required: true, + }, + body: { + value: null, + type: "string", + required: false, + }, + }, + requiresAuth: true, + authProvider: "github", + }; + + const toolInput = buildToolInput(codeExample.parameters); + + expect(toolInput).toEqual({ + title: "your_value", + }); + }); + + it("generates JavaScript example with auth flow", () => { + const codeExample: ToolCodeExample = { + toolName: "Github.CreateIssue", + parameters: { + owner: { + value: "arcadeai", + type: "string", + required: true, + }, + labels: { + value: ["bug", "high-priority"], + type: "array", + required: false, + }, + }, + requiresAuth: true, + authProvider: "github", + tabLabel: "Call the Tool with User Authorization", + }; + + const output = generateJavaScriptExample(codeExample); + + expect(output).toContain("client.tools.authorize"); + expect(output).toContain("user_id: USER_ID"); + expect(output).toContain('const TOOL_NAME = "Github.CreateIssue";'); + expect(output).toContain('owner: "arcadeai"'); + expect(output).toContain('labels: ["bug", "high-priority"]'); + }); + + it("generates Python example without auth flow when not required", () => { + const codeExample: ToolCodeExample = { + toolName: "Slack.ListChannels", + parameters: { + limit: { + value: 50, + type: "integer", + required: false, + }, + }, + requiresAuth: false, + }; + + const output = generatePythonExample(codeExample); + + expect(output).not.toContain("authorize"); + expect(output).not.toContain("USER_ID"); + expect(output).toContain('TOOL_NAME = "Slack.ListChannels"'); + expect(output).toContain("tool_input = {"); + expect(output).toContain('"limit": 50'); + }); + + it("serializes non-finite numbers as None in Python output", () => { + const codeExample: ToolCodeExample = { + toolName: "Slack.ListChannels", + parameters: { + limit: { + value: Number.NaN, + type: "integer", + required: false, + }, + }, + requiresAuth: false, + }; + + const output = generatePythonExample(codeExample); + + expect(output).toContain('"limit": None'); + }); +}); diff --git a/app/_components/toolkit-docs/__tests__/mdx-cache.test.ts b/app/_components/toolkit-docs/__tests__/mdx-cache.test.ts new file mode 100644 index 000000000..f548a6be5 --- /dev/null +++ b/app/_components/toolkit-docs/__tests__/mdx-cache.test.ts @@ -0,0 +1,54 @@ +import { describe, expect, it } from "vitest"; + +import { createMdxCache } from "../components/mdx-cache"; + +describe("createMdxCache", () => { + it("evicts the oldest entry when the cache exceeds max size", () => { + const cache = createMdxCache(2); + + cache.set("a", 1); + cache.set("b", 2); + cache.set("c", 3); + + expect(cache.has("a")).toBe(false); + expect(cache.has("b")).toBe(true); + expect(cache.has("c")).toBe(true); + expect(cache.size()).toBe(2); + }); + + it("updates recency on get so recently used entries stay", () => { + const cache = createMdxCache(2); + + cache.set("a", 1); + cache.set("b", 2); + + expect(cache.get("a")).toBe(1); + cache.set("c", 3); + + expect(cache.has("a")).toBe(true); + expect(cache.has("b")).toBe(false); + expect(cache.has("c")).toBe(true); + }); + + it("keeps size stable when overwriting an existing key", () => { + const cache = createMdxCache(2); + + cache.set("a", 1); + cache.set("b", 2); + cache.set("a", 3); + + expect(cache.get("a")).toBe(3); + expect(cache.size()).toBe(2); + }); + + it("treats non-positive max size as a size of 1", () => { + const cache = createMdxCache(0); + + cache.set("a", 1); + cache.set("b", 2); + + expect(cache.has("a")).toBe(false); + expect(cache.has("b")).toBe(true); + expect(cache.size()).toBe(1); + }); +}); diff --git a/app/_components/toolkit-docs/__tests__/page-actions.test.tsx b/app/_components/toolkit-docs/__tests__/page-actions.test.tsx new file mode 100644 index 000000000..c86b9ef07 --- /dev/null +++ b/app/_components/toolkit-docs/__tests__/page-actions.test.tsx @@ -0,0 +1,57 @@ +import { describe, expect, it } from "vitest"; + +// Test the pure function that builds the GitHub edit URL +// The function is not exported, so we test the logic directly +describe("page-actions helpers", () => { + describe("buildGithubEditUrl logic", () => { + const GITHUB_JSON_BASE_URL = + "https://github.com/ArcadeAI/docs/blob/main/data/toolkits"; + + function buildGithubEditUrl(toolkitId: string): string { + const jsonFileName = `${toolkitId.toLowerCase()}.json`; + return `${GITHUB_JSON_BASE_URL}/${jsonFileName}`; + } + + it("builds correct URL for simple toolkit ID", () => { + expect(buildGithubEditUrl("Github")).toBe( + "https://github.com/ArcadeAI/docs/blob/main/data/toolkits/github.json" + ); + }); + + it("lowercases the toolkit ID", () => { + expect(buildGithubEditUrl("CustomerioApi")).toBe( + "https://github.com/ArcadeAI/docs/blob/main/data/toolkits/customerioapi.json" + ); + }); + + it("handles toolkit IDs with uppercase letters", () => { + expect(buildGithubEditUrl("SlackApi")).toBe( + "https://github.com/ArcadeAI/docs/blob/main/data/toolkits/slackapi.json" + ); + }); + + it("handles single word toolkit IDs", () => { + expect(buildGithubEditUrl("Jira")).toBe( + "https://github.com/ArcadeAI/docs/blob/main/data/toolkits/jira.json" + ); + }); + }); + + describe("API endpoint construction", () => { + it("constructs correct markdown API endpoint from pathname", () => { + const pathname = "/en/resources/integrations/development/github"; + const endpoint = `/api/markdown${pathname}.md`; + expect(endpoint).toBe( + "/api/markdown/en/resources/integrations/development/github.md" + ); + }); + + it("handles different categories", () => { + const pathname = "/en/resources/integrations/productivity/jira"; + const endpoint = `/api/markdown${pathname}.md`; + expect(endpoint).toBe( + "/api/markdown/en/resources/integrations/productivity/jira.md" + ); + }); + }); +}); diff --git a/app/_components/toolkit-docs/__tests__/parameters-table.test.tsx b/app/_components/toolkit-docs/__tests__/parameters-table.test.tsx new file mode 100644 index 000000000..2e14699c8 --- /dev/null +++ b/app/_components/toolkit-docs/__tests__/parameters-table.test.tsx @@ -0,0 +1,51 @@ +import { describe, expect, it } from "vitest"; +import { + formatEnumValues, + formatParameterType, +} from "../components/parameters-table"; +import type { ToolParameter } from "../types"; + +describe("ParametersTable helpers", () => { + describe("formatParameterType", () => { + it("formats array types with inner type", () => { + const param: ToolParameter = { + name: "labels", + type: "array", + innerType: "string", + required: false, + description: "Labels to add", + enum: null, + }; + + expect(formatParameterType(param)).toBe("array"); + }); + + it("returns base type when no inner type", () => { + const param: ToolParameter = { + name: "count", + type: "integer", + required: false, + description: "Count", + enum: null, + }; + + expect(formatParameterType(param)).toBe("integer"); + }); + }); + + describe("formatEnumValues", () => { + it("filters empty enum values", () => { + const values = ["open", "", "closed", " ", "all"]; + + expect(formatEnumValues(values)).toEqual(["open", "closed", "all"]); + }); + + it("returns empty array when enum is null", () => { + expect(formatEnumValues(null)).toEqual([]); + }); + + it("returns empty array when enum is undefined", () => { + expect(formatEnumValues(undefined)).toEqual([]); + }); + }); +}); diff --git a/app/_components/toolkit-docs/__tests__/scopes-display.test.tsx b/app/_components/toolkit-docs/__tests__/scopes-display.test.tsx new file mode 100644 index 000000000..58a8ecd6f --- /dev/null +++ b/app/_components/toolkit-docs/__tests__/scopes-display.test.tsx @@ -0,0 +1,31 @@ +import { describe, expect, it } from "vitest"; + +import { normalizeScopes } from "../components/scopes-display"; + +describe("ScopesDisplay helpers", () => { + it("trims scope values and removes duplicates", () => { + const scopes = [ + "repo", + " user:email ", + "repo", + "public_repo", + "user:email", + ]; + + expect(normalizeScopes(scopes)).toEqual([ + "repo", + "user:email", + "public_repo", + ]); + }); + + it("removes empty and whitespace-only scopes", () => { + const scopes = ["", " ", "repo", "\n", "user:email"]; + + expect(normalizeScopes(scopes)).toEqual(["repo", "user:email"]); + }); + + it("returns empty array when given empty array", () => { + expect(normalizeScopes([])).toEqual([]); + }); +}); diff --git a/app/_components/toolkit-docs/__tests__/tool-section.test.tsx b/app/_components/toolkit-docs/__tests__/tool-section.test.tsx new file mode 100644 index 000000000..e1d603435 --- /dev/null +++ b/app/_components/toolkit-docs/__tests__/tool-section.test.tsx @@ -0,0 +1,31 @@ +import { describe, expect, it } from "vitest"; +import { shouldRenderDefaultSection } from "../components/tool-section"; +import type { DocumentationChunk } from "../types"; + +describe("ToolSection helpers", () => { + it("returns true when no replace chunks exist", () => { + const chunks: DocumentationChunk[] = [ + { + type: "callout", + location: "description", + position: "before", + content: "Info", + }, + ]; + + expect(shouldRenderDefaultSection(chunks, "description")).toBe(true); + }); + + it("returns false when replace chunk exists for location", () => { + const chunks: DocumentationChunk[] = [ + { + type: "markdown", + location: "parameters", + position: "replace", + content: "Custom parameters", + }, + ]; + + expect(shouldRenderDefaultSection(chunks, "parameters")).toBe(false); + }); +}); diff --git a/app/_components/toolkit-docs/__tests__/toolkit-header.test.tsx b/app/_components/toolkit-docs/__tests__/toolkit-header.test.tsx new file mode 100644 index 000000000..d6ee15ee5 --- /dev/null +++ b/app/_components/toolkit-docs/__tests__/toolkit-header.test.tsx @@ -0,0 +1,235 @@ +import { describe, expect, it } from "vitest"; + +import type { + ToolkitAuth, + ToolkitCategory, + ToolkitHeaderProps, + ToolkitMetadata, + ToolkitType, +} from "../types"; + +/** + * Unit tests for ToolkitHeader types and props validation + * + * Note: Component rendering tests require additional dependencies + * (@testing-library/react). These tests focus on type validation + * and prop structure. + */ + +describe("ToolkitHeaderProps type validation", () => { + const defaultMetadata: ToolkitMetadata = { + category: "development", + iconUrl: "https://example.com/icon.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.arcade.dev/github", + }; + + const defaultAuth: ToolkitAuth = { + type: "oauth2", + providerId: "github", + allScopes: ["repo", "user:email"], + }; + + it("validates required props structure", () => { + const props: ToolkitHeaderProps = { + id: "Github", + label: "GitHub", + description: "GitHub repository tools", + metadata: defaultMetadata, + auth: defaultAuth, + }; + + expect(props.id).toBe("Github"); + expect(props.label).toBe("GitHub"); + expect(props.description).toBe("GitHub repository tools"); + expect(props.metadata).toEqual(defaultMetadata); + expect(props.auth).toEqual(defaultAuth); + }); + + it("validates optional props", () => { + const props: ToolkitHeaderProps = { + id: "Github", + label: "GitHub", + description: "GitHub repository tools", + metadata: defaultMetadata, + auth: defaultAuth, + version: "1.0.0", + author: "Custom Author", + summary: "A summary of the toolkit", + }; + + expect(props.version).toBe("1.0.0"); + expect(props.author).toBe("Custom Author"); + expect(props.summary).toBe("A summary of the toolkit"); + }); + + it("allows null description", () => { + const props: ToolkitHeaderProps = { + id: "Github", + label: "GitHub", + description: null, + metadata: defaultMetadata, + auth: defaultAuth, + }; + + expect(props.description).toBeNull(); + }); + + it("allows null auth", () => { + const props: ToolkitHeaderProps = { + id: "Github", + label: "GitHub", + description: "Description", + metadata: defaultMetadata, + auth: null, + }; + + expect(props.auth).toBeNull(); + }); +}); + +describe("ToolkitMetadata type validation", () => { + it("validates all category values", () => { + const categories: ToolkitCategory[] = [ + "productivity", + "social", + "development", + "entertainment", + "search", + "payments", + "sales", + "databases", + "customer-support", + ]; + + for (const category of categories) { + const metadata: ToolkitMetadata = { + category, + iconUrl: "https://example.com/icon.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.arcade.dev", + }; + expect(metadata.category).toBe(category); + } + }); + + it("validates all type values", () => { + const types: ToolkitType[] = [ + "arcade", + "arcade_starter", + "verified", + "community", + "auth", + ]; + + for (const type of types) { + const metadata: ToolkitMetadata = { + category: "development", + iconUrl: "https://example.com/icon.svg", + isBYOC: false, + isPro: false, + type, + docsLink: "https://docs.arcade.dev", + }; + expect(metadata.type).toBe(type); + } + }); + + it("validates boolean flags", () => { + const metadata: ToolkitMetadata = { + category: "development", + iconUrl: "https://example.com/icon.svg", + isBYOC: true, + isPro: true, + type: "arcade", + docsLink: "https://docs.arcade.dev", + isComingSoon: true, + isHidden: false, + }; + + expect(metadata.isBYOC).toBe(true); + expect(metadata.isPro).toBe(true); + expect(metadata.isComingSoon).toBe(true); + expect(metadata.isHidden).toBe(false); + }); +}); + +describe("ToolkitAuth type validation", () => { + it("validates oauth2 auth type", () => { + const auth: ToolkitAuth = { + type: "oauth2", + providerId: "github", + allScopes: ["repo", "user:email"], + }; + + expect(auth.type).toBe("oauth2"); + expect(auth.providerId).toBe("github"); + expect(auth.allScopes).toEqual(["repo", "user:email"]); + }); + + it("validates api_key auth type", () => { + const auth: ToolkitAuth = { + type: "api_key", + providerId: null, + allScopes: [], + }; + + expect(auth.type).toBe("api_key"); + expect(auth.providerId).toBeNull(); + expect(auth.allScopes).toEqual([]); + }); + + it("validates mixed auth type", () => { + const auth: ToolkitAuth = { + type: "mixed", + providerId: "github", + allScopes: ["repo"], + }; + + expect(auth.type).toBe("mixed"); + expect(auth.providerId).toBe("github"); + expect(auth.allScopes).toEqual(["repo"]); + }); + + it("validates none auth type", () => { + const auth: ToolkitAuth = { + type: "none", + providerId: null, + allScopes: [], + }; + + expect(auth.type).toBe("none"); + }); + + it("validates empty scopes array", () => { + const auth: ToolkitAuth = { + type: "oauth2", + providerId: "custom", + allScopes: [], + }; + + expect(auth.allScopes).toEqual([]); + expect(auth.allScopes.length).toBe(0); + }); + + it("validates multiple scopes", () => { + const auth: ToolkitAuth = { + type: "oauth2", + providerId: "google", + allScopes: [ + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.send", + "https://www.googleapis.com/auth/gmail.compose", + ], + }; + + expect(auth.allScopes.length).toBe(3); + expect(auth.allScopes).toContain( + "https://www.googleapis.com/auth/gmail.readonly" + ); + }); +}); diff --git a/app/_components/toolkit-docs/__tests__/toolkit-page.test.tsx b/app/_components/toolkit-docs/__tests__/toolkit-page.test.tsx new file mode 100644 index 000000000..022cd641c --- /dev/null +++ b/app/_components/toolkit-docs/__tests__/toolkit-page.test.tsx @@ -0,0 +1,58 @@ +import { describe, expect, it } from "vitest"; + +import { + buildObservedSectionIds, + buildPipPackageName, + TOOLKIT_PAGE_AVAILABLE_TOOLS_LINK, + TOOLKIT_PAGE_GET_BUILDING_LINK, + TOOLKIT_PAGE_OVERVIEW_LINK, + TOOLKIT_PAGE_SELECTED_TOOLS_LINK, +} from "../components/toolkit-page"; + +describe("ToolkitPage helpers", () => { + it("builds a pip package name from toolkit id", () => { + expect(buildPipPackageName("Github")).toBe("arcade_github"); + expect(buildPipPackageName("Google Sheets")).toBe("arcade_google_sheets"); + expect(buildPipPackageName("Slack-Api")).toBe("arcade_slack_api"); + expect(buildPipPackageName("SlackApi")).toBe("arcade_slack_api"); + }); + + it("defines sidebar navigation links", () => { + expect(TOOLKIT_PAGE_OVERVIEW_LINK).toEqual({ + id: "overview", + label: "Overview", + href: "#overview", + }); + expect(TOOLKIT_PAGE_AVAILABLE_TOOLS_LINK).toEqual({ + id: "available-tools", + label: "Available tools", + href: "#available-tools", + }); + expect(TOOLKIT_PAGE_SELECTED_TOOLS_LINK).toEqual({ + id: "selected-tools", + label: "Selected tools", + href: "#selected-tools", + }); + expect(TOOLKIT_PAGE_GET_BUILDING_LINK).toEqual({ + id: "get-building", + label: "Get building", + href: "#get-building", + }); + }); + + it("builds observed section ids including overview and tools", () => { + expect( + buildObservedSectionIds([ + { qualifiedName: "Github.CreateIssue" }, + { qualifiedName: "Slack.ListChannels" }, + ]) + ).toEqual([ + "overview", + "available-tools", + "selected-tools", + "githubcreateissue", + "slacklistchannels", + "get-building", + ]); + }); +}); diff --git a/app/_components/toolkit-docs/components/available-tools-table.tsx b/app/_components/toolkit-docs/components/available-tools-table.tsx new file mode 100644 index 000000000..124646c4e --- /dev/null +++ b/app/_components/toolkit-docs/components/available-tools-table.tsx @@ -0,0 +1,764 @@ +"use client"; + +import { + Button, + Input, + Select, + SelectContent, + SelectItem, + SelectTrigger, + SelectValue, +} from "@arcadeai/design-system"; +import { + Check, + ChevronLeft, + ChevronRight, + ChevronsLeft, + ChevronsRight, + KeyRound, + Search, + X, +} from "lucide-react"; +import { useEffect, useMemo, useRef, useState } from "react"; + +import { SCROLLING_CELL } from "../constants"; +import type { AvailableToolsTableProps, SecretType } from "../types"; +import { normalizeScopes } from "./scopes-display"; + +const DEFAULT_PAGE_SIZE = 25; +const PAGE_SIZE_OPTIONS = [25, 50, 100, 200] as const; + +/** + * Pagination controls with First, Prev, Next, Last buttons. + */ +function PaginationControls({ + page, + pageCount, + onPageChange, + itemsShowing, + totalItems, + size = "default", +}: { + page: number; + pageCount: number; + onPageChange: (newPage: number) => void; + itemsShowing: number; + totalItems: number; + size?: "sm" | "default"; +}) { + if (pageCount <= 1) { + return null; + } + + const buttonSize = size === "sm" ? "sm" : "default"; + const iconClass = size === "sm" ? "h-3.5 w-3.5" : "h-4 w-4"; + const textClass = size === "sm" ? "text-xs" : "text-sm"; + + return ( +
+ + + + Page {page} of {pageCount} + + + + + ({itemsShowing} of {totalItems}) + +
+ ); +} + +/** + * A cell content wrapper that auto-scrolls on hover when content overflows. + * Scroll duration is proportional to content length. + * Only scrolls when this specific cell is hovered, with a delay. + */ +function ScrollingCell({ + children, + className = "", + pixelsPerSecond = SCROLLING_CELL.pixelsPerSecond, + delay = SCROLLING_CELL.delayMs, +}: { + children: React.ReactNode; + className?: string; + pixelsPerSecond?: number; + delay?: number; +}) { + const containerRef = useRef(null); + const contentRef = useRef(null); + const [isOverflowing, setIsOverflowing] = useState(false); + const [isHovered, setIsHovered] = useState(false); + const [scrollOffset, setScrollOffset] = useState(0); + const [duration, setDuration] = useState(0); + const hoverTimeoutRef = useRef(null); + + useEffect(() => { + const checkOverflow = () => { + if (containerRef.current && contentRef.current) { + const containerWidth = containerRef.current.offsetWidth; + const contentWidth = contentRef.current.scrollWidth; + const overflow = contentWidth - containerWidth; + setIsOverflowing(overflow > 0); + setScrollOffset(overflow + SCROLLING_CELL.extraPadding); + // Calculate duration based on scroll distance + setDuration( + Math.max( + SCROLLING_CELL.minDurationMs, + ((overflow + SCROLLING_CELL.extraPadding) / pixelsPerSecond) * 1000 + ) + ); + } + }; + checkOverflow(); + window.addEventListener("resize", checkOverflow); + return () => window.removeEventListener("resize", checkOverflow); + }, [pixelsPerSecond]); + + const handleMouseEnter = () => { + if (isOverflowing) { + hoverTimeoutRef.current = setTimeout(() => { + setIsHovered(true); + }, delay); + } + }; + + const handleMouseLeave = () => { + if (hoverTimeoutRef.current) { + clearTimeout(hoverTimeoutRef.current); + hoverTimeoutRef.current = null; + } + setIsHovered(false); + }; + + useEffect( + () => () => { + if (hoverTimeoutRef.current) { + clearTimeout(hoverTimeoutRef.current); + } + }, + [] + ); + + return ( + // biome-ignore lint/a11y/noStaticElementInteractions: hover-only affordance for overflowing text. + // biome-ignore lint/a11y/noNoninteractiveElementInteractions: hover-only affordance for overflowing text. +
+
+ {children} +
+ {isOverflowing && ( +
+ )} +
+ ); +} + +export function toToolAnchorId(value: string): string { + return value.toLowerCase().replace(/\s+/g, "-").replace(/\./g, ""); +} + +export type AvailableToolsFilter = + | "all" + | "has_scopes" + | "no_scopes" + | "has_secrets" + | "no_secrets"; + +export type AvailableToolsSort = + | "name_asc" + | "name_desc" + | "scopes_first" + | "secrets_first" + | "selected_first"; + +type SecretDisplayItem = { + label: string; + href?: string; +}; + +const DEFAULT_SECRET_LABELS: Record = { + api_key: "API key", + token: "Token", + client_secret: "Client secret", + webhook_secret: "Webhook secret", + private_key: "Private key", + password: "Password", + unknown: "Unknown", +}; + +const getRowBackground = (isSelected: boolean, index: number): string => { + if (isSelected) { + return "bg-brand-accent/10"; + } + return index % 2 === 0 + ? "bg-muted/30 dark:bg-neutral-dark/40" + : "bg-transparent"; +}; + +const getSelectionCellBackground = ( + isSelected: boolean, + index: number +): string => { + if (isSelected) { + return "bg-brand-accent/10"; + } + return index % 2 === 0 + ? "bg-muted/30 dark:bg-neutral-dark/95" + : "bg-background dark:bg-neutral-dark/90"; +}; + +const getSelectionLabel = (isSelected: boolean): string => + isSelected ? "Deselect tool" : "Select tool"; + +type AvailableToolsRowProps = { + tool: AvailableToolsTableProps["tools"][number]; + index: number; + showSelection: boolean; + selectedTools?: Set; + onToggleSelection?: AvailableToolsTableProps["onToggleSelection"]; + secretsDisplay?: AvailableToolsTableProps["secretsDisplay"]; + secretTypeLabels?: AvailableToolsTableProps["secretTypeLabels"]; + secretTypeDocsBaseUrl?: AvailableToolsTableProps["secretTypeDocsBaseUrl"]; +}; + +function SelectionCell({ + isSelected, + selectionCellBg, + toolName, + onToggleSelection, +}: { + isSelected: boolean; + selectionCellBg: string; + toolName: string; + onToggleSelection?: AvailableToolsTableProps["onToggleSelection"]; +}) { + return ( + + + + ); +} + +function SecretsCell({ secretCount }: { secretCount: number }) { + if (secretCount === 0) { + return ( + + ); + } + return ( + + + {secretCount} + + ); +} + +function AvailableToolsRow({ + tool, + index, + showSelection, + selectedTools, + onToggleSelection, + secretsDisplay, + secretTypeLabels, + secretTypeDocsBaseUrl, +}: AvailableToolsRowProps) { + const secretItems = buildSecretDisplayItems(tool, { + secretsDisplay, + secretTypeLabels, + secretTypeDocsBaseUrl, + }); + const isSelected = selectedTools?.has(tool.name) ?? false; + const rowBg = getRowBackground(isSelected, index); + const selectionCellBg = getSelectionCellBackground(isSelected, index); + return ( + { + window.location.hash = `#${toToolAnchorId(tool.qualifiedName)}`; + }} + > + {showSelection && ( + + )} + + + + {tool.qualifiedName} + + + + + + {tool.description ?? "No description provided."} + + + + + + + ); +} + +function normalizeBaseUrl(baseUrl?: string): string | undefined { + if (!baseUrl) { + return; + } + return baseUrl.endsWith("/") ? baseUrl.slice(0, -1) : baseUrl; +} + +export function buildSecretDisplayItems( + tool: AvailableToolsTableProps["tools"][number], + options?: Pick< + AvailableToolsTableProps, + "secretsDisplay" | "secretTypeLabels" | "secretTypeDocsBaseUrl" + > +): SecretDisplayItem[] { + const displayMode = options?.secretsDisplay ?? "summary"; + const secretsInfo = tool.secretsInfo ?? []; + const secrets = tool.secrets ?? []; + const secretTypeLabels = { + ...DEFAULT_SECRET_LABELS, + ...options?.secretTypeLabels, + }; + const baseUrl = normalizeBaseUrl(options?.secretTypeDocsBaseUrl); + + if (displayMode === "names") { + return secrets.map((secret) => ({ label: secret })); + } + + if ( + displayMode === "types" || + (displayMode === "summary" && secretsInfo.length > 0) + ) { + const uniqueTypes = Array.from( + new Set(secretsInfo.map((secret) => secret.type)) + ); + + return uniqueTypes.map((type) => ({ + label: secretTypeLabels[type] ?? "Unknown", + href: baseUrl ? `${baseUrl}/${type}` : undefined, + })); + } + + return secrets.map((secret) => ({ label: secret })); +} + +export function buildScopeDisplayItems(scopes: string[]): string[] { + return normalizeScopes(scopes); +} + +export function sortTools( + tools: AvailableToolsTableProps["tools"], + sort: AvailableToolsSort, + selectedTools?: Set +): AvailableToolsTableProps["tools"] { + const sorted = [...tools]; + + const countSecrets = (tool: (typeof tools)[number]): number => { + const names = [ + ...(tool.secrets ?? []), + ...(tool.secretsInfo ?? []).map((secret) => secret.name), + ]; + return new Set(names).size; + }; + + switch (sort) { + case "name_asc": + return sorted.sort((a, b) => a.name.localeCompare(b.name)); + case "name_desc": + return sorted.sort((a, b) => b.name.localeCompare(a.name)); + case "scopes_first": + return sorted.sort((a, b) => { + const aScopes = (a.scopes ?? []).length; + const bScopes = (b.scopes ?? []).length; + if (aScopes !== bScopes) { + return bScopes - aScopes; + } + return a.name.localeCompare(b.name); + }); + case "secrets_first": + return sorted.sort((a, b) => { + const aSecrets = countSecrets(a); + const bSecrets = countSecrets(b); + if (aSecrets !== bSecrets) { + return bSecrets - aSecrets; + } + return a.name.localeCompare(b.name); + }); + case "selected_first": + return sorted.sort((a, b) => { + const aSelected = selectedTools?.has(a.name) ? 1 : 0; + const bSelected = selectedTools?.has(b.name) ? 1 : 0; + if (aSelected !== bSelected) { + return bSelected - aSelected; + } + return a.name.localeCompare(b.name); + }); + default: + return sorted; + } +} + +export function filterTools( + tools: AvailableToolsTableProps["tools"], + query: string, + filter: AvailableToolsFilter, + selectedScopes: string[] +): AvailableToolsTableProps["tools"] { + const normalizedQuery = query.trim().toLowerCase(); + + return tools.filter((tool) => { + const haystack = [tool.name, tool.qualifiedName, tool.description ?? ""] + .join(" ") + .toLowerCase(); + const matchesQuery = + normalizedQuery.length === 0 || haystack.includes(normalizedQuery); + + if (!matchesQuery) { + return false; + } + + const toolScopes = buildScopeDisplayItems(tool.scopes ?? []); + const hasScopes = toolScopes.length > 0; + const hasSecrets = + (tool.secretsInfo?.length ?? 0) > 0 || (tool.secrets?.length ?? 0) > 0; + + const matchesScopes = + selectedScopes.length === 0 || + selectedScopes.some((scope) => toolScopes.includes(scope)); + + if (!matchesScopes) { + return false; + } + + switch (filter) { + case "has_scopes": + return hasScopes; + case "no_scopes": + return !hasScopes; + case "has_secrets": + return hasSecrets; + case "no_secrets": + return !hasSecrets; + default: + return true; + } + }); +} + +/** + * AvailableToolsTable + * + * Renders a table of tools with clickable rows. + */ +export function AvailableToolsTable({ + tools, + secretsColumnLabel = "Secrets", + secretsDisplay = "summary", + secretTypeLabels, + secretTypeDocsBaseUrl, + enableSearch = true, + enableFilters = true, + searchPlaceholder = "Search tools...", + filterLabel = "Filter", + defaultFilter = "all", + selectedTools, + onToggleSelection, + showSelection = false, +}: AvailableToolsTableProps) { + const safeTools = tools ?? []; + const hasTools = safeTools.length > 0; + + const [query, setQuery] = useState(""); + const [filter, setFilter] = useState(defaultFilter); + const [sort, setSort] = useState("name_asc"); + const [pageSize, setPageSize] = useState(DEFAULT_PAGE_SIZE); + const [page, setPage] = useState(1); + const selectedScopes: string[] = []; + + const filteredTools = useMemo(() => { + const filtered = filterTools(safeTools, query, filter, selectedScopes); + return sortTools(filtered, sort, selectedTools); + }, [safeTools, query, filter, sort, selectedTools]); + + const pageCount = useMemo( + () => Math.max(1, Math.ceil(filteredTools.length / pageSize)), + [filteredTools.length, pageSize] + ); + + // Clamp page when result set shrinks. + useEffect(() => { + setPage((current) => Math.min(Math.max(1, current), pageCount)); + }, [pageCount]); + + const pagedTools = useMemo(() => { + const start = (page - 1) * pageSize; + const end = start + pageSize; + return filteredTools.slice(start, end); + }, [filteredTools, page, pageSize]); + + if (!hasTools) { + return ( +

No tools available.

+ ); + } + + return ( +
+ {(enableSearch || enableFilters) && ( +
+ {enableSearch && ( +
+ + { + setQuery(event.target.value); + setPage(1); + }} + placeholder={searchPlaceholder} + type="text" + value={query} + /> + {query && ( + + )} +
+ )} + {enableFilters && ( + + )} + + + + + {filteredTools.length} + {" "} + of {safeTools.length} + +
+ )} + {filteredTools.length === 0 ? ( +
+

No tools match your search.

+
+ ) : ( +
+
+ + + + {showSelection && ( + + )} + + + + + + + {pagedTools.map((tool, index) => ( + + ))} + +
+ + + Tool name + + Description + + + + {secretsColumnLabel} + +
+
+ {/* Pagination bar below the table */} + {pageCount > 1 && ( +
+ +
+ )} +
+ )} +
+ ); +} + +export default AvailableToolsTable; diff --git a/app/_components/toolkit-docs/components/data-table.tsx b/app/_components/toolkit-docs/components/data-table.tsx new file mode 100644 index 000000000..3d34c8c43 --- /dev/null +++ b/app/_components/toolkit-docs/components/data-table.tsx @@ -0,0 +1,79 @@ +"use client"; + +export type DataTableProps = { + columns: string[]; + rows: string[][]; + caption?: string; + compact?: boolean; +}; + +export function DataTable({ + columns, + rows, + caption, + compact = false, +}: DataTableProps) { + if (!(columns.length && rows.length)) { + return null; + } + + const cellPadding = compact + ? "px-2 py-1.5 sm:px-3 sm:py-2" + : "px-3 py-2 sm:px-4 sm:py-3"; + + // Generate unique keys for rows, handling duplicates by appending index + // This is computed once per render using the row index as a stable fallback + const getRowKey = (row: string[], rowIndex: number): string => { + const baseKey = row.join("|"); + // Use row index as suffix to ensure uniqueness for duplicate rows + return `${baseKey}__${rowIndex}`; + }; + + return ( +
+ + {caption ? ( + + ) : null} + + + {columns.map((column) => ( + + ))} + + + + {rows.map((row, rowIndex) => { + const rowKey = getRowKey(row, rowIndex); + return ( + + {columns.map((column, columnIndex) => ( + + ))} + + ); + })} + +
+ {caption} +
+ {column} +
+ {row[columnIndex] ?? "—"} +
+
+ ); +} + +export default DataTable; diff --git a/app/_components/toolkit-docs/components/documentation-chunk-renderer.tsx b/app/_components/toolkit-docs/components/documentation-chunk-renderer.tsx new file mode 100644 index 000000000..2137e85bc --- /dev/null +++ b/app/_components/toolkit-docs/components/documentation-chunk-renderer.tsx @@ -0,0 +1,362 @@ +"use client"; + +import { evaluate } from "@mdx-js/mdx"; +import { Callout, Steps, Tabs } from "nextra/components"; +import type React from "react"; +import { useEffect, useMemo, useState } from "react"; +import { Fragment, jsx, jsxs } from "react/jsx-runtime"; +import remarkGfm from "remark-gfm"; + +import { SignupLink } from "../../analytics"; +import TabbedCodeBlock from "../../tabbed-code-block"; +import TableOfContents from "../../table-of-contents"; +import ToolFooter from "../../tool-footer"; +import type { + DocumentationChunk, + DocumentationChunkLocation, + DocumentationChunkPosition, + DocumentationChunkRendererProps, +} from "../types"; +import DataTable from "./data-table"; +import { createMdxCache } from "./mdx-cache"; + +// Regex for removing leading ## from headers (defined at top level for performance) +const HEADER_PREFIX_REGEX = /^#+\s*/; + +/** + * Maps chunk types to Nextra Callout types + */ +const CALLOUT_TYPE_MAP: Record< + string, + "default" | "info" | "warning" | "error" +> = { + callout: "default", + info: "info", + tip: "info", + warning: "warning", + error: "error", +}; + +/** + * Maps chunk variants to Nextra Callout types + */ +const VARIANT_TYPE_MAP: Record< + string, + "default" | "info" | "warning" | "error" +> = { + default: "default", + info: "info", + success: "info", + warning: "warning", + destructive: "error", +}; + +// Regex patterns for detecting JSX/HTML content +const COMPONENT_TAG_REGEX = /<[A-Z][a-zA-Z]*[\s>]/; +const DETAILS_TAG_REGEX = /
+ DETAILS_TAG_REGEX.test(content) || // HTML details tag + SUMMARY_TAG_REGEX.test(content) + ); // HTML summary tag +} + +/** + * Strip top-level MDX import/export lines from a content block. + */ +function stripMdxImports(content: string): string { + const lines = content.split("\n"); + const result: string[] = []; + let inCodeFence = false; + + for (const line of lines) { + const trimmed = line.trim(); + + if (trimmed.startsWith("```")) { + inCodeFence = !inCodeFence; + result.push(line); + continue; + } + + if ( + !inCodeFence && + (trimmed.startsWith("import ") || trimmed.startsWith("export ")) + ) { + continue; + } + + result.push(line); + } + + return result.join("\n"); +} + +const MDX_COMPONENTS = { + Callout, + Steps, + Tabs, + TabbedCodeBlock, + TableOfContents, + ToolFooter, + SignupLink, + DataTable, +}; + +// Maximum number of MDX components to cache to prevent unbounded memory growth +const MDX_CACHE_MAX_SIZE = 100; + +const mdxCache = + createMdxCache>( + MDX_CACHE_MAX_SIZE + ); + +/** + * Renders MDX content from a string with custom components. + */ +function MdxContent({ content }: { content: string }) { + const source = useMemo(() => stripMdxImports(content), [content]); + const [Component, setComponent] = useState | null>(null); + const [error, setError] = useState(null); + + useEffect(() => { + if (mdxCache.has(source)) { + const cached = mdxCache.get(source); + if (cached) { + setError(null); + setComponent(() => cached); + return; + } + } + + let cancelled = false; + setError(null); + setComponent(null); + + evaluate(source, { + Fragment, + jsx, + jsxs, + remarkPlugins: [remarkGfm], + }) + .then((result) => { + if (cancelled) { + return; + } + mdxCache.set(source, result.default); + setComponent(() => result.default); + }) + .catch((err: unknown) => { + if (!cancelled) { + setError(err instanceof Error ? err.message : "Failed to render MDX"); + } + }); + + return () => { + cancelled = true; + }; + }, [source]); + + if (error) { + return ( +
+ Failed to render section: {error} +
+ ); + } + + if (!Component) { + return null; + } + + return ( +
+ +
+ ); +} + +/** + * Converts a header string to a URL-friendly anchor ID. + * E.g., "## Auth Setup" -> "auth-setup" + */ +export function headerToAnchorId(header: string): string { + return header + .replace(HEADER_PREFIX_REGEX, "") // Remove leading ## + .toLowerCase() + .trim() + .replace(/[^a-z0-9\s-]/g, "") // Remove special chars + .replace(/\s+/g, "-") // Replace spaces with hyphens + .replace(/-+/g, "-"); // Collapse multiple hyphens +} + +/** + * Renders a single documentation chunk + */ +function ChunkContent({ chunk }: { chunk: DocumentationChunk }) { + const { type, content, title, variant, header } = chunk; + + // Generate anchor ID from header if present + const anchorId = header ? headerToAnchorId(header) : undefined; + + // Handle code blocks + if (type === "code") { + return ( +
+        {content}
+      
+ ); + } + + // Render complex MDX content directly + if (type === "markdown" || hasJSXContent(content)) { + return ( +
+ +
+ ); + } + + // Handle callout types (callout, info, tip, warning, error) + // Determine the callout type from chunk type or variant + let calloutType: "default" | "info" | "warning" | "error" = "default"; + + if (variant && VARIANT_TYPE_MAP[variant]) { + calloutType = VARIANT_TYPE_MAP[variant]; + } else if (CALLOUT_TYPE_MAP[type]) { + calloutType = CALLOUT_TYPE_MAP[type]; + } + + return ( +
+ + + +
+ ); +} + +/** + * Default priority for chunks without an explicit priority + */ +const DEFAULT_CHUNK_PRIORITY = 100; + +/** + * Sorts documentation chunks deterministically by: + * 1. Priority (lower = earlier) + * 2. Header alphabetically (for chunks with same priority) + * 3. Content hash (for chunks with same priority and no header) + */ +export function sortChunksDeterministically( + chunks: readonly DocumentationChunk[] +): DocumentationChunk[] { + return [...chunks].sort((a, b) => { + const priorityA = a.priority ?? DEFAULT_CHUNK_PRIORITY; + const priorityB = b.priority ?? DEFAULT_CHUNK_PRIORITY; + + // First sort by priority + if (priorityA !== priorityB) { + return priorityA - priorityB; + } + + // Then by header alphabetically (headers without ## prefix for comparison) + const headerA = (a.header ?? "").replace(HEADER_PREFIX_REGEX, "").trim(); + const headerB = (b.header ?? "").replace(HEADER_PREFIX_REGEX, "").trim(); + + if (headerA && headerB) { + return headerA.localeCompare(headerB); + } + + // Chunks with headers come before chunks without + if (headerA && !headerB) { + return -1; + } + if (!headerA && headerB) { + return 1; + } + + // Finally, sort by content for stability + return a.content.localeCompare(b.content); + }); +} + +/** + * DocumentationChunkRenderer + * + * A generic component for rendering custom documentation content at specified + * injection points. Filters chunks by location and position, then renders + * the appropriate component based on chunk type. + * + * Chunks are sorted deterministically by priority, then header, then content. + * + * @example + * ```tsx + * + * ``` + * + * Supported chunk types: + * - `callout`: Default callout box + * - `info`: Blue info callout + * - `tip`: Blue tip callout + * - `warning`: Yellow warning callout + * - `markdown`: Raw markdown content + * - `code`: Code block + */ +export function DocumentationChunkRenderer({ + chunks, + location, + position, + className, +}: DocumentationChunkRendererProps): React.ReactElement | null { + // Filter chunks that match the specified location and position + const matchingChunks = (chunks ?? []).filter( + (chunk) => chunk.location === location && chunk.position === position + ); + + // Return null if no matching chunks + if (matchingChunks.length === 0) { + return null; + } + + // Sort chunks deterministically + const sortedChunks = sortChunksDeterministically(matchingChunks); + + return ( +
+ {sortedChunks.map((chunk, index) => ( + + ))} +
+ ); +} + +/** + * Helper function to check if chunks exist for a given location and position + * Useful for conditional rendering + */ +export function hasChunksAt( + chunks: DocumentationChunk[] | null | undefined, + location: DocumentationChunkLocation, + position: DocumentationChunkPosition +): boolean { + return (chunks ?? []).some( + (chunk) => chunk.location === location && chunk.position === position + ); +} + +export default DocumentationChunkRenderer; diff --git a/app/_components/toolkit-docs/components/dynamic-code-block.tsx b/app/_components/toolkit-docs/components/dynamic-code-block.tsx new file mode 100644 index 000000000..48e8947bc --- /dev/null +++ b/app/_components/toolkit-docs/components/dynamic-code-block.tsx @@ -0,0 +1,414 @@ +"use client"; + +import { Button } from "@arcadeai/design-system"; +import { ChevronDown } from "lucide-react"; +import { useEffect, useMemo, useState } from "react"; +import { Prism as SyntaxHighlighter } from "react-syntax-highlighter"; +import { + atomDark, + oneLight, +} from "react-syntax-highlighter/dist/cjs/styles/prism"; + +import { CopyButton } from "../../tabbed-code-block/copy-button"; +import { LanguageTabs } from "../../tabbed-code-block/language-tabs"; +import type { + DynamicCodeBlockProps, + ExampleParameterValue, + ToolCodeExample, +} from "../types"; + +const JS_IDENTIFIER_REGEX = /^[A-Za-z_$][A-Za-z0-9_$]*$/; +const INLINE_MAX_LENGTH = 80; + +type LanguageKey = "python" | "javascript"; + +const DEFAULT_LANGUAGES: LanguageKey[] = ["python", "javascript"]; + +const PLACEHOLDER_VALUES: Record = { + string: "your_value", + integer: 123, + boolean: true, + array: [], + object: {}, +}; + +const INDENT_SIZE: Record = { + python: 4, + javascript: 2, +}; + +function indent(level: number, language: LanguageKey): string { + return " ".repeat(level * INDENT_SIZE[language]); +} + +function isPlainObject(value: unknown): value is Record { + return ( + typeof value === "object" && + value !== null && + !Array.isArray(value) && + !(value instanceof Date) + ); +} + +function formatKey(key: string, language: LanguageKey): string { + if (language === "python") { + return JSON.stringify(key); + } + + const isValidIdentifier = JS_IDENTIFIER_REGEX.test(key); + return isValidIdentifier ? key : JSON.stringify(key); +} + +function serializeNumber(value: number, language: LanguageKey): string { + if (Number.isFinite(value)) { + return String(value); + } + return language === "python" ? "None" : "null"; +} + +function serializePrimitive(value: unknown, language: LanguageKey): string { + if (value === null) { + return language === "python" ? "None" : "null"; + } + + if (typeof value === "string") { + return JSON.stringify(value); + } + + if (typeof value === "number") { + return serializeNumber(value, language); + } + + if (typeof value === "boolean") { + if (language === "python") { + return value ? "True" : "False"; + } + return String(value); + } + + return language === "python" ? "None" : "null"; +} + +function shouldInline(values: string[]): boolean { + return ( + values.every((value) => !value.includes("\n")) && + values.join(", ").length < INLINE_MAX_LENGTH + ); +} + +export function serializeValue( + value: unknown, + language: LanguageKey, + level: number +): string { + if (Array.isArray(value)) { + if (value.length === 0) { + return "[]"; + } + + const items = value.map((item) => + serializeValue(item, language, level + 1) + ); + if (shouldInline(items)) { + return `[${items.join(", ")}]`; + } + + const lines = items.map((item) => `${indent(level + 1, language)}${item}`); + return `[\n${lines.join(",\n")}\n${indent(level, language)}]`; + } + + if (isPlainObject(value)) { + const entries = Object.entries(value); + if (entries.length === 0) { + return "{}"; + } + + const lines = entries.map(([key, entryValue]) => { + const formattedKey = formatKey(key, language); + const formattedValue = serializeValue(entryValue, language, level + 1); + return `${indent(level + 1, language)}${formattedKey}: ${formattedValue}`; + }); + + return `{\n${lines.join(",\n")}\n${indent(level, language)}}`; + } + + return serializePrimitive(value, language); +} + +export function resolveExampleValue(param: ExampleParameterValue): unknown { + if (param.value === null || param.value === undefined) { + return param.required ? PLACEHOLDER_VALUES[param.type] : undefined; + } + + return param.value; +} + +export function buildToolInput( + parameters: ToolCodeExample["parameters"] +): Record { + const entries = Object.entries(parameters) + .map(([key, param]) => [key, resolveExampleValue(param)] as const) + .filter(([, value]) => value !== undefined); + + return Object.fromEntries(entries); +} + +function buildExecuteArgs( + language: LanguageKey, + includeUserId: boolean +): string { + if (language === "python") { + const args = [ + "tool_name=TOOL_NAME,", + "input=tool_input,", + includeUserId ? "user_id=USER_ID," : null, + ].filter(Boolean); + + return [ + "response = client.tools.execute(", + ...args.map((arg) => `${indent(1, language)}${arg}`), + ")", + ].join("\n"); + } + + const args = [ + "tool_name: TOOL_NAME,", + "input: toolInput,", + includeUserId ? "user_id: USER_ID," : null, + ].filter(Boolean); + + return [ + "const response = await client.tools.execute({", + ...args.map((arg) => `${indent(1, language)}${arg}`), + "});", + ].join("\n"); +} + +export function generateJavaScriptExample( + codeExample: ToolCodeExample +): string { + const toolInput = buildToolInput(codeExample.parameters); + const toolInputLiteral = serializeValue(toolInput, "javascript", 0); + const lines: string[] = [ + 'import { Arcade } from "@arcadeai/arcadejs";', + "", + "const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable", + "", + ]; + + if (codeExample.requiresAuth) { + lines.push('const USER_ID = "{arcade_user_id}";'); + } + + lines.push(`const TOOL_NAME = "${codeExample.toolName}";`, ""); + + if (codeExample.requiresAuth) { + lines.push( + "const authResponse = await client.tools.authorize({", + `${indent(1, "javascript")}tool_name: TOOL_NAME,`, + `${indent(1, "javascript")}user_id: USER_ID,`, + "});", + "", + 'if (authResponse.status !== "completed") {', + `${indent(1, "javascript")}console.log(\`Click this link to authorize: \${authResponse.url}\`);`, + "}", + "", + "await client.auth.waitForCompletion(authResponse);", + "" + ); + } + + lines.push(`const toolInput = ${toolInputLiteral};`, ""); + + lines.push(buildExecuteArgs("javascript", codeExample.requiresAuth), ""); + + lines.push("console.log(response);"); + + return lines.join("\n"); +} + +export function generatePythonExample(codeExample: ToolCodeExample): string { + const toolInput = buildToolInput(codeExample.parameters); + const toolInputLiteral = serializeValue(toolInput, "python", 0); + const lines: string[] = [ + "from arcadepy import Arcade", + "", + "client = Arcade()", + "", + ]; + + if (codeExample.requiresAuth) { + lines.push('USER_ID = "{arcade_user_id}"'); + } + + lines.push(`TOOL_NAME = "${codeExample.toolName}"`, ""); + + if (codeExample.requiresAuth) { + lines.push( + "auth_response = client.tools.authorize(", + `${indent(1, "python")}tool_name=TOOL_NAME,`, + `${indent(1, "python")}user_id=USER_ID,`, + ")", + "", + 'if auth_response.status != "completed":', + `${indent(1, "python")}print(f"Click this link to authorize: {auth_response.url}")`, + "", + "client.auth.wait_for_completion(auth_response)", + "" + ); + } + + lines.push(`tool_input = ${toolInputLiteral}`, ""); + + lines.push(buildExecuteArgs("python", codeExample.requiresAuth), ""); + + lines.push("print(response)"); + + return lines.join("\n"); +} + +/** + * DynamicCodeBlock + * + * Generates and renders JavaScript and Python code examples dynamically + * from a ToolCodeExample configuration. Examples are hidden until expanded. + */ +export function DynamicCodeBlock({ + codeExample, + languages = DEFAULT_LANGUAGES, +}: DynamicCodeBlockProps) { + const [isExpanded, setIsExpanded] = useState(false); + const [isDarkMode, setIsDarkMode] = useState(false); + + const availableLanguages = useMemo(() => { + const labels: string[] = []; + if (languages.includes("python")) { + labels.push("Python"); + } + if (languages.includes("javascript")) { + labels.push("TypeScript"); + } + return labels; + }, [languages]); + + const [selectedLanguage, setSelectedLanguage] = useState( + availableLanguages[0] ?? "Python" + ); + + useEffect(() => { + const updateTheme = () => { + const html = document.documentElement; + const hasClassDark = html.classList.contains("dark"); + const hasClassLight = html.classList.contains("light"); + const hasDataThemeDark = html.getAttribute("data-theme") === "dark"; + const hasDataThemeLight = html.getAttribute("data-theme") === "light"; + const systemPrefersDark = + window.matchMedia?.("(prefers-color-scheme: dark)").matches ?? false; + + if (hasClassDark || hasDataThemeDark) { + setIsDarkMode(true); + } else if (hasClassLight || hasDataThemeLight) { + setIsDarkMode(false); + } else { + setIsDarkMode(systemPrefersDark); + } + }; + + updateTheme(); + + const observer = new MutationObserver(updateTheme); + observer.observe(document.documentElement, { + attributes: true, + attributeFilter: ["class", "data-theme"], + }); + + const mediaQuery = window.matchMedia?.("(prefers-color-scheme: dark)"); + mediaQuery?.addEventListener("change", updateTheme); + + return () => { + observer.disconnect(); + mediaQuery?.removeEventListener("change", updateTheme); + }; + }, []); + + useEffect(() => { + if (!availableLanguages.includes(selectedLanguage)) { + setSelectedLanguage(availableLanguages[0] ?? "Python"); + } + }, [availableLanguages, selectedLanguage]); + + const codeByLanguage = useMemo( + () => ({ + python: generatePythonExample(codeExample), + typescript: generateJavaScriptExample(codeExample), + }), + [codeExample] + ); + + const syntaxTheme = isDarkMode ? atomDark : oneLight; + const selectedKey = selectedLanguage === "Python" ? "python" : "typescript"; + + return ( +
+ {isExpanded ? ( +
+
+ + +
+ +
+
+ + {selectedLanguage.toLowerCase()} + + +
+ + {codeByLanguage[selectedKey]} + +
+
+ ) : ( + + )} +
+ ); +} + +export default DynamicCodeBlock; diff --git a/app/_components/toolkit-docs/components/index.ts b/app/_components/toolkit-docs/components/index.ts new file mode 100644 index 000000000..ff3a14714 --- /dev/null +++ b/app/_components/toolkit-docs/components/index.ts @@ -0,0 +1,16 @@ +/** + * Toolkit Documentation Components + */ + +export { AvailableToolsTable } from "./available-tools-table"; +export { + DocumentationChunkRenderer, + hasChunksAt, + sortChunksDeterministically, +} from "./documentation-chunk-renderer"; +export { DynamicCodeBlock } from "./dynamic-code-block"; +export { ParametersTable } from "./parameters-table"; +export { ScopesDisplay } from "./scopes-display"; +export { ToolSection } from "./tool-section"; +export { ToolkitHeader } from "./toolkit-header"; +export { ToolkitPage } from "./toolkit-page"; diff --git a/app/_components/toolkit-docs/components/mdx-cache.ts b/app/_components/toolkit-docs/components/mdx-cache.ts new file mode 100644 index 000000000..f6484170b --- /dev/null +++ b/app/_components/toolkit-docs/components/mdx-cache.ts @@ -0,0 +1,41 @@ +export type MdxCache = { + get: (key: string) => T | undefined; + set: (key: string, value: T) => void; + has: (key: string) => boolean; + size: () => number; +}; + +export const createMdxCache = (maxSize = 100): MdxCache => { + const limit = Math.max(1, Math.floor(maxSize)); + const cache = new Map(); + + const touch = (key: string, value: T): void => { + cache.delete(key); + cache.set(key, value); + }; + + return { + get: (key: string) => { + if (!cache.has(key)) { + return; + } + const value = cache.get(key) as T; + touch(key, value); + return value; + }, + set: (key: string, value: T) => { + if (cache.has(key)) { + cache.delete(key); + } + cache.set(key, value); + if (cache.size > limit) { + const oldestKey = cache.keys().next().value; + if (oldestKey) { + cache.delete(oldestKey); + } + } + }, + has: (key: string) => cache.has(key), + size: () => cache.size, + }; +}; diff --git a/app/_components/toolkit-docs/components/page-actions.tsx b/app/_components/toolkit-docs/components/page-actions.tsx new file mode 100644 index 000000000..9acdb3ff0 --- /dev/null +++ b/app/_components/toolkit-docs/components/page-actions.tsx @@ -0,0 +1,116 @@ +"use client"; + +import { Check, Copy, ExternalLink } from "lucide-react"; +import { usePathname } from "next/navigation"; +import { useCallback, useState } from "react"; + +const GITHUB_JSON_BASE_URL = + "https://github.com/ArcadeAI/docs/blob/main/data/toolkits"; +const COPY_FEEDBACK_MS = 2000; + +/** + * Builds the GitHub URL for editing the toolkit JSON file. + */ +function buildGithubEditUrl(toolkitId: string): string { + const jsonFileName = `${toolkitId.toLowerCase()}.json`; + return `${GITHUB_JSON_BASE_URL}/${jsonFileName}`; +} + +type EditJsonOnGithubProps = { + toolkitId: string; +}; + +/** + * EditJsonOnGithub + * + * Renders a link to edit the toolkit JSON file on GitHub. + */ +export function EditJsonOnGithub({ toolkitId }: EditJsonOnGithubProps) { + const editUrl = buildGithubEditUrl(toolkitId); + + return ( + + Edit content in GitHub + + + ); +} + +/** + * CopyPageButton + * + * Simple button that copies the generated markdown content on click. + * Styled to match Nextra's native copy button. + */ +function CopyPageButton() { + const pathname = usePathname(); + const [copied, setCopied] = useState(false); + const [loading, setLoading] = useState(false); + + const handleCopy = useCallback(async () => { + if (loading) { + return; + } + + setLoading(true); + try { + const response = await fetch(`/api/markdown${pathname}.md`); + if (!response.ok) { + throw new Error("Failed to fetch markdown"); + } + const content = await response.text(); + await navigator.clipboard.writeText(content); + setCopied(true); + setTimeout(() => setCopied(false), COPY_FEEDBACK_MS); + } catch { + // Silent fail - user can retry + } finally { + setLoading(false); + } + }, [pathname, loading]); + + return ( + + ); +} + +type PageActionsBarProps = { + toolkitId: string; +}; + +/** + * PageActionsBar + * + * Renders the page actions bar with copy button and edit link. + */ +export function PageActionsBar({ toolkitId }: PageActionsBarProps) { + return ( +
+ + +
+ ); +} + +export default PageActionsBar; diff --git a/app/_components/toolkit-docs/components/parameters-table.tsx b/app/_components/toolkit-docs/components/parameters-table.tsx new file mode 100644 index 000000000..9fd268b42 --- /dev/null +++ b/app/_components/toolkit-docs/components/parameters-table.tsx @@ -0,0 +1,147 @@ +"use client"; + +import type { ParametersTableProps, ToolParameter } from "../types"; + +/** + * Formats a parameter type for display. + */ +export function formatParameterType(param: ToolParameter): string { + if (param.type === "array" && param.innerType) { + return `array<${param.innerType}>`; + } + + return param.type; +} + +/** + * Formats enum values for display. + */ +export function formatEnumValues( + enumValues: string[] | null | undefined +): string[] { + if (!enumValues || enumValues.length === 0) { + return []; + } + + return enumValues.filter((value) => value.trim().length > 0); +} + +/** + * ParametersTable + * + * Renders a table of tool parameters with type, required, and description. + */ +export function ParametersTable({ + parameters, + enumBaseUrl, +}: ParametersTableProps) { + if (!parameters || parameters.length === 0) { + return ( +
+

+ No parameters required. +

+
+ ); + } + + const headerCellPadding = "px-3 py-2 sm:px-4 sm:py-3"; + const cellPadding = "px-3 py-2 sm:px-4 sm:py-3.5"; + + return ( +
+ + + + + + + + + + + {parameters.map((param, index) => { + const enumValues = formatEnumValues(param.enum); + + return ( + + + + + + + ); + })} + +
+ Parameter + + Type + + Req. + + Description +
+ + {param.name} + + + + {formatParameterType(param)} + + + {param.required ? ( + Required + ) : ( + + Optional + + )} + + {param.description ?? "No description provided."} + {enumValues.length > 0 && ( +
+ {enumValues.map((value) => { + const chip = ( + + {value} + + ); + + if (enumBaseUrl) { + return ( + + {chip} + + ); + } + + return {chip}; + })} +
+ )} +
+
+ ); +} + +export default ParametersTable; diff --git a/app/_components/toolkit-docs/components/scopes-display.tsx b/app/_components/toolkit-docs/components/scopes-display.tsx new file mode 100644 index 000000000..c710b26f5 --- /dev/null +++ b/app/_components/toolkit-docs/components/scopes-display.tsx @@ -0,0 +1,96 @@ +"use client"; + +import { ShieldCheck } from "lucide-react"; + +import type { ScopesDisplayProps } from "../types"; + +/** + * Normalizes scope values by trimming and removing duplicates. + */ +export function normalizeScopes(scopes: string[]): string[] { + const uniqueScopes = new Set(); + + for (const scope of scopes) { + const trimmed = scope.trim(); + if (trimmed.length > 0) { + uniqueScopes.add(trimmed); + } + } + + return Array.from(uniqueScopes); +} + +function ScopesInline({ scopes }: { scopes: string[] }) { + if (scopes.length === 0) { + return ( + None required + ); + } + + return ( +
+ {scopes.map((scope) => ( + + {scope} + + ))} +
+ ); +} + +function ScopesList({ scopes }: { scopes: string[] }) { + if (scopes.length === 0) { + return

None required

; + } + + return ( +
+ {scopes.map((scope) => ( + + {scope} + + ))} +
+ ); +} + +/** + * ScopesDisplay + * + * Renders OAuth scopes inline or inside a callout. + */ +export function ScopesDisplay({ + scopes, + variant = "inline", + title, +}: ScopesDisplayProps) { + const normalizedScopes = normalizeScopes(scopes); + + if (variant === "callout") { + const heading = title?.trim(); + return ( +
+ {heading && ( +
+ + {heading} +
+ )} + +
+ ); + } + + return ; +} + +export default ScopesDisplay; diff --git a/app/_components/toolkit-docs/components/tool-section.tsx b/app/_components/toolkit-docs/components/tool-section.tsx new file mode 100644 index 000000000..879459b92 --- /dev/null +++ b/app/_components/toolkit-docs/components/tool-section.tsx @@ -0,0 +1,512 @@ +"use client"; + +import { Button } from "@arcadeai/design-system"; +import { Check, Copy, KeyRound, ShieldCheck } from "lucide-react"; +import { useCallback, useState } from "react"; +import type { ToolSectionProps } from "../types"; +import { toToolAnchorId } from "./available-tools-table"; +import { + DocumentationChunkRenderer, + hasChunksAt, +} from "./documentation-chunk-renderer"; +import { DynamicCodeBlock } from "./dynamic-code-block"; +import { ParametersTable } from "./parameters-table"; +import { ScopesDisplay } from "./scopes-display"; + +const COPY_FEEDBACK_MS = 2000; +const JSON_PRETTY_PRINT_INDENT = 2; + +function CopyToolButton({ tool }: { tool: ToolSectionProps["tool"] }) { + const [copied, setCopied] = useState(false); + + const handleCopy = useCallback(async () => { + const toolDefinition = { + name: tool.qualifiedName, + description: tool.description, + parameters: tool.parameters.map((p) => ({ + name: p.name, + type: p.type, + required: p.required, + description: p.description, + ...(p.enum ? { enum: p.enum } : {}), + })), + scopes: tool.auth?.scopes ?? [], + secrets: tool.secrets, + output: tool.output, + }; + + try { + await navigator.clipboard.writeText( + JSON.stringify(toolDefinition, null, JSON_PRETTY_PRINT_INDENT) + ); + setCopied(true); + setTimeout(() => setCopied(false), COPY_FEEDBACK_MS); + } catch { + // Ignore clipboard errors (e.g., permissions, unsupported browser). + } + }, [tool]); + + return ( + + ); +} + +function CopyScopesButton({ scopes }: { scopes: string[] }) { + const [copied, setCopied] = useState(false); + + const handleCopy = useCallback(async () => { + try { + await navigator.clipboard.writeText(scopes.join("\n")); + setCopied(true); + setTimeout(() => setCopied(false), COPY_FEEDBACK_MS); + } catch { + // Ignore clipboard errors (e.g., permissions, unsupported browser). + } + }, [scopes]); + + return ( + + ); +} + +export function shouldRenderDefaultSection( + chunks: ToolSectionProps["tool"]["documentationChunks"], + location: "description" | "parameters" | "auth" | "secrets" | "output" +): boolean { + return !hasChunksAt(chunks, location, "replace"); +} + +function ToolHeaderSection({ + tool, + showSelection, + isSelected, + onToggleSelection, + hasScopes, + hasSecrets, + anchorId, +}: { + tool: ToolSectionProps["tool"]; + showSelection: boolean; + isSelected: boolean; + onToggleSelection?: (toolName: string) => void; + hasScopes: boolean; + hasSecrets: boolean; + anchorId: string; +}) { + return ( +
+
+ + # + +

+ {tool.qualifiedName} +

+
+
+ + {showSelection && ( + + )} +
+
+ ); +} + +function ToolDescriptionSection({ + tool, + showDescription, +}: { + tool: ToolSectionProps["tool"]; + showDescription: boolean; +}) { + return ( + <> + + {showDescription && ( +

+ {tool.description ?? "No description provided."} +

+ )} + + + + ); +} + +function ToolParametersSection({ + tool, + showParameters, +}: { + tool: ToolSectionProps["tool"]; + showParameters: boolean; +}) { + return ( +
+

+ Parameters +

+ + {showParameters && } + + +
+ ); +} + +function ToolRequirementsSection({ + tool, + showAdvanced, + onToggleAdvanced, + scopes, + secretsInfo, + hasScopes, + hasSecrets, + showSecrets, +}: { + tool: ToolSectionProps["tool"]; + showAdvanced: boolean; + onToggleAdvanced: () => void; + scopes: string[]; + secretsInfo: ToolSectionProps["tool"]["secretsInfo"]; + hasScopes: boolean; + hasSecrets: boolean; + showSecrets: boolean; +}) { + const secretsInfoList = secretsInfo ?? []; + return ( +
+

+ Requirements +

+ + {showAdvanced && hasScopes && ( +
+ + + Requires {scopes.length} OAuth scope{scopes.length > 1 ? "s" : ""} + +
+ )} + + + {showSecrets && ( +
+ + {hasSecrets ? ( +
+ Secrets: + {secretsInfoList.length > 0 + ? secretsInfoList.map((secret) => ( + + {secret.name} + + )) + : (tool.secrets ?? []).map((secret) => ( + + {secret} + + ))} +
+ ) : ( + + No secrets required + + )} +
+ )} + + + + {hasScopes && ( +
+ +
+ )} +
+ ); +} + +function ToolScopesDetailsSection({ + tool, + showAdvanced, + hasScopes, + showAuth, + scopes, +}: { + tool: ToolSectionProps["tool"]; + showAdvanced: boolean; + hasScopes: boolean; + showAuth: boolean; + scopes: string[]; +}) { + if (!(showAdvanced && hasScopes)) { + return null; + } + + return ( +
+
+

+ + Required OAuth scopes +

+ +
+ + {showAuth && } + + +
+ ); +} + +function ToolOutputSection({ + tool, + showOutput, +}: { + tool: ToolSectionProps["tool"]; + showOutput: boolean; +}) { + return ( +
+

+ Output +

+ + {showOutput && ( +
+ {tool.output ? ( +
+ Type: + + {tool.output.type} + + {tool.output.description && ( + + — {tool.output.description} + + )} +
+ ) : ( +

+ No output schema provided. +

+ )} +
+ )} + + +
+ ); +} + +function ToolExampleSection({ tool }: { tool: ToolSectionProps["tool"] }) { + return tool.codeExample ? ( +
+ +
+ ) : ( +

+ No code example available for this tool. +

+ ); +} + +/** + * ToolSection + * + * Renders a single tool section with parameters, scopes, secrets, output, and example. + */ +export function ToolSection({ + tool, + isSelected = false, + showSelection = false, + onToggleSelection, +}: ToolSectionProps) { + const [showAdvanced, setShowAdvanced] = useState(false); + const anchorId = toToolAnchorId(tool.qualifiedName); + const scopes = tool.auth?.scopes ?? []; + const secretsInfo = tool.secretsInfo ?? []; + const hasScopes = scopes.length > 0; + const hasSecrets = + (tool.secrets?.length ?? 0) > 0 || (tool.secretsInfo?.length ?? 0) > 0; + + const showDescription = shouldRenderDefaultSection( + tool.documentationChunks, + "description" + ); + const showParameters = shouldRenderDefaultSection( + tool.documentationChunks, + "parameters" + ); + const showAuth = shouldRenderDefaultSection(tool.documentationChunks, "auth"); + const showSecrets = shouldRenderDefaultSection( + tool.documentationChunks, + "secrets" + ); + const showOutput = shouldRenderDefaultSection( + tool.documentationChunks, + "output" + ); + + return ( +
+ + + + setShowAdvanced(!showAdvanced)} + scopes={scopes} + secretsInfo={secretsInfo} + showAdvanced={showAdvanced} + showSecrets={showSecrets} + tool={tool} + /> + + + +
+ ); +} + +export default ToolSection; diff --git a/app/_components/toolkit-docs/components/toolkit-docs-preview.tsx b/app/_components/toolkit-docs/components/toolkit-docs-preview.tsx new file mode 100644 index 000000000..41f687d12 --- /dev/null +++ b/app/_components/toolkit-docs/components/toolkit-docs-preview.tsx @@ -0,0 +1,25 @@ +import { readToolkitData } from "@/app/_lib/toolkit-data"; +import type { ToolkitData } from "../types"; +import { ToolkitPage } from "./toolkit-page"; + +type ToolkitDocsPreviewProps = { + toolkitId: string; + fallbackData?: ToolkitData; +}; + +export async function ToolkitDocsPreview({ + toolkitId, + fallbackData, +}: ToolkitDocsPreviewProps) { + const toolkitData = (await readToolkitData(toolkitId)) ?? fallbackData; + + if (!toolkitData) { + return ( +

+ Toolkit data not found for {toolkitId}. +

+ ); + } + + return ; +} diff --git a/app/_components/toolkit-docs/components/toolkit-header.tsx b/app/_components/toolkit-docs/components/toolkit-header.tsx new file mode 100644 index 000000000..694a1a707 --- /dev/null +++ b/app/_components/toolkit-docs/components/toolkit-header.tsx @@ -0,0 +1,280 @@ +"use client"; + +import { Badge, ByocBadge, ProBadge } from "@arcadeai/design-system"; +import { KeyRound, Wrench } from "lucide-react"; +import type React from "react"; + +import { TYPE_CONFIG } from "../../../en/resources/integrations/components/type-config"; +import { + AUTH_TYPE_LABELS, + DEFAULT_AUTHOR, + getAuthProviderDocsUrl, + getPackageName, + LICENSE_BADGE, + PYPI_BADGES, +} from "../constants"; +import type { ToolkitHeaderProps, ToolkitType } from "../types"; + +/** + * Renders toolkit type, BYOC, and Pro badges + */ +function ToolkitBadges({ + type, + isByoc, + isPro, +}: { + type: ToolkitType; + isByoc: boolean; + isPro: boolean; +}) { + const typeInfo = type !== "auth" ? TYPE_CONFIG[type] : null; + const TypeIcon = typeInfo?.icon; + + const showBadges = isPro || isByoc || typeInfo; + + if (!showBadges) { + return null; + } + + return ( +
+ {typeInfo && TypeIcon && ( + + + {typeInfo.label} + + )} + {isByoc && } + {isPro && } +
+ ); +} + +/** + * ToolkitHeader + * + * Renders the header section for a toolkit documentation page, including: + * - Toolkit icon (from Design System) + * - Toolkit name badges (type, BYOC, Pro) + * - Description + * - Author + * - Auth provider link + * + * @example + * ```tsx + * + * ``` + */ +export function ToolkitHeader({ + id, + label, + description, + metadata, + auth, + version, + author = DEFAULT_AUTHOR, + toolStats, +}: ToolkitHeaderProps): React.ReactElement { + // Icon comes from the JSON metadata - the source of truth + const iconUrl = metadata.iconUrl; + const packageName = getPackageName(id); + + // Determine auth display + const authProviderName = auth?.providerId + ? auth.providerId.charAt(0).toUpperCase() + auth.providerId.slice(1) + : null; + const authDocsUrl = auth?.providerId + ? getAuthProviderDocsUrl(auth.providerId) + : null; + const authProviderLink = + authProviderName && authDocsUrl ? ( + + {authProviderName} auth provider + + ) : null; + + // Icon comes from the JSON's iconUrl - always use img tag + const iconNode = iconUrl ? ( +
+
+ {`${label} +
+
+ ) : null; + + const authNode = (() => { + if (auth?.type === "oauth2") { + return ( + <> + {AUTH_TYPE_LABELS.oauth2} + {authProviderLink && <> via the {authProviderLink}} + + ); + } + if (auth?.type === "api_key") { + return AUTH_TYPE_LABELS.api_key; + } + if (auth?.type === "mixed") { + return ( + <> + {AUTH_TYPE_LABELS.mixed} + {authProviderLink && <> via the {authProviderLink}}{" "} + {AUTH_TYPE_LABELS.mixedSuffix} + + ); + } + return AUTH_TYPE_LABELS.none; + })(); + + return ( +
+
+ {/* Icon - centered vertically */} + {iconNode} + + {/* Content */} +
+ {/* Badges */} + + + {/* Description */} + {description && ( +

+ {description} +

+ )} + + {/* Info Grid */} +
+ {/* Author */} +
+ Author: + {author} +
+ + {/* Version */} + {version && ( +
+ Version: + + {version} + +
+ )} + + {/* Auth info */} +
+ Auth: + {authNode} +
+
+ + {/* Tool Stats */} + {toolStats && ( +
+ {/* Total tools */} +
+ + + {toolStats.total} + + tools +
+ + {/* Tools with secrets */} + {toolStats.withSecrets > 0 && ( +
+ + + {toolStats.withSecrets} + + require secrets +
+ )} +
+ )} +
+
+ + {/* PyPI Badges */} + {id && ( +
+
+ {PYPI_BADGES.map((badge) => ( + + {badge.alt} + + ))} + + {LICENSE_BADGE.alt} + +
+
+ )} +
+ ); +} + +export default ToolkitHeader; diff --git a/app/_components/toolkit-docs/components/toolkit-page.tsx b/app/_components/toolkit-docs/components/toolkit-page.tsx new file mode 100644 index 000000000..a4ff31260 --- /dev/null +++ b/app/_components/toolkit-docs/components/toolkit-page.tsx @@ -0,0 +1,780 @@ +"use client"; + +import { Button } from "@arcadeai/design-system"; +import { ArrowDown, ArrowUp, KeyRound } from "lucide-react"; +import { useCallback, useEffect, useMemo, useRef, useState } from "react"; +import ReactMarkdown from "react-markdown"; + +import ScopePicker from "../../scope-picker"; +import ToolFooter from "../../tool-footer"; +import { getPackageName } from "../constants"; + +// Scroll detection thresholds +const SCROLL_SHOW_BUTTONS_THRESHOLD = 300; +const SCROLL_BOTTOM_THRESHOLD = 100; + +// Intersection observer thresholds for TOC highlighting +const TOC_OBSERVER_THRESHOLD_MIN = 0.1; +const TOC_OBSERVER_THRESHOLD_MID = 0.5; + +// Scroll padding for TOC item visibility +const TOC_SCROLL_PADDING = 20; + +import type { + ToolDefinition, + ToolkitCategory, + ToolkitPageProps, + ToolkitType, +} from "../types"; +import { AvailableToolsTable, toToolAnchorId } from "./available-tools-table"; +import { + DocumentationChunkRenderer, + hasChunksAt, + headerToAnchorId, + sortChunksDeterministically, +} from "./documentation-chunk-renderer"; +import { PageActionsBar } from "./page-actions"; +import { ToolSection } from "./tool-section"; +import { ToolkitHeader } from "./toolkit-header"; + +/** + * Floating buttons to scroll to top/bottom of the page. + * Only shows when user has scrolled past a threshold. + */ +function ScrollToButtons() { + const [showButtons, setShowButtons] = useState(false); + const [atBottom, setAtBottom] = useState(false); + + useEffect(() => { + const handleScroll = () => { + const scrollTop = window.scrollY; + const windowHeight = window.innerHeight; + const documentHeight = document.documentElement.scrollHeight; + + // Show buttons after scrolling past threshold + setShowButtons(scrollTop > SCROLL_SHOW_BUTTONS_THRESHOLD); + + // Check if near bottom (within threshold) + setAtBottom( + scrollTop + windowHeight >= documentHeight - SCROLL_BOTTOM_THRESHOLD + ); + }; + + window.addEventListener("scroll", handleScroll, { passive: true }); + handleScroll(); // Initial check + return () => window.removeEventListener("scroll", handleScroll); + }, []); + + const scrollToTop = () => { + window.scrollTo({ top: 0, behavior: "smooth" }); + }; + + const scrollToBottom = () => { + window.scrollTo({ + top: document.documentElement.scrollHeight, + behavior: "smooth", + }); + }; + + if (!showButtons) { + return null; + } + + return ( +
+ + {!atBottom && ( + + )} +
+ ); +} + +export function buildPipPackageName(toolkitId: string): string { + return getPackageName(toolkitId); +} + +export const TOOLKIT_PAGE_OVERVIEW_LINK = { + id: "overview", + label: "Overview", + href: "#overview", +} as const; + +export const TOOLKIT_PAGE_AVAILABLE_TOOLS_LINK = { + id: "available-tools", + label: "Available tools", + href: "#available-tools", +} as const; + +export const TOOLKIT_PAGE_SELECTED_TOOLS_LINK = { + id: "selected-tools", + label: "Selected tools", + href: "#selected-tools", +} as const; + +export const TOOLKIT_PAGE_GET_BUILDING_LINK = { + id: "get-building", + label: "Get building", + href: "#get-building", +} as const; + +// Regex for removing leading ## from headers (used for display label extraction) +const HEADER_PREFIX_REGEX = /^#+\s*/; + +/** + * Extracts section links from documentation chunks that have headers. + * Chunks are sorted deterministically before extraction to ensure consistent TOC order. + */ +export function extractChunkSectionLinks( + chunks: ReadonlyArray<{ + header?: string; + priority?: number; + content?: string; + }> +): Array<{ id: string; label: string; href: string }> { + const links: Array<{ id: string; label: string; href: string }> = []; + const seenIds = new Set(); + + // Sort chunks deterministically before extracting links + const sortedChunks = sortChunksDeterministically( + chunks as Parameters[0] + ); + + for (const chunk of sortedChunks) { + if (chunk.header) { + const id = headerToAnchorId(chunk.header); + if (!seenIds.has(id)) { + seenIds.add(id); + links.push({ + id, + label: chunk.header.replace(HEADER_PREFIX_REGEX, ""), // Remove ## prefix for display + href: `#${id}`, + }); + } + } + } + + return links; +} + +export function buildObservedSectionIds( + tools: ReadonlyArray<{ qualifiedName: string }>, + documentationChunks: ReadonlyArray<{ header?: string }> = [] +): string[] { + const ids: string[] = [ + TOOLKIT_PAGE_OVERVIEW_LINK.id, + TOOLKIT_PAGE_AVAILABLE_TOOLS_LINK.id, + TOOLKIT_PAGE_SELECTED_TOOLS_LINK.id, + ]; + + // Add custom section IDs from documentation chunks + const chunkSections = extractChunkSectionLinks(documentationChunks); + for (const section of chunkSections) { + ids.push(section.id); + } + + for (const tool of tools) { + ids.push(toToolAnchorId(tool.qualifiedName)); + } + + ids.push(TOOLKIT_PAGE_GET_BUILDING_LINK.id); + return ids; +} + +function inferToolkitType(toolkitId: string, type: ToolkitType): ToolkitType { + if (toolkitId.toLowerCase().endsWith("api") && type === "arcade") { + return "arcade_starter"; + } + return type; +} + +function toTitleCaseCategory(category: ToolkitCategory): string { + return category + .split("-") + .map((part) => part.charAt(0).toUpperCase() + part.slice(1)) + .join(" "); +} + +/** + * Breadcrumb bar like older integration pages. + * + * Note: preview pages are dynamic, so we render this in-page. + */ +function BreadcrumbBar({ + label, + category, +}: { + label: string; + category: ToolkitCategory; +}) { + return ( + + ); +} + +/** + * Right sidebar that lists the tools on the page. + * Structure: Fixed header/footer with scrollable middle tool list. + * Auto-scrolls and highlights the currently visible section. + */ +function ToolsOnThisPage({ + tools, + selectedTools, + documentationChunks = [], +}: { + tools: ToolDefinition[]; + selectedTools: Set; + documentationChunks?: ReadonlyArray<{ header?: string }>; +}) { + const [activeId, setActiveId] = useState(null); + const toolListRef = useRef(null); + const itemRefs = useRef>(new Map()); + const [query, setQuery] = useState(""); + + // Extract custom section links from documentation chunks + const customSections = useMemo( + () => extractChunkSectionLinks(documentationChunks), + [documentationChunks] + ); + + // Build list of all section IDs to observe + const sectionIds = useMemo( + () => buildObservedSectionIds(tools, documentationChunks), + [tools, documentationChunks] + ); + + const filteredTools = useMemo(() => { + const q = query.trim().toLowerCase(); + if (q.length === 0) { + return tools; + } + return tools.filter((tool) => tool.qualifiedName.toLowerCase().includes(q)); + }, [tools, query]); + + const selectedToolsList = useMemo( + () => tools.filter((tool) => selectedTools.has(tool.name)), + [tools, selectedTools] + ); + + // Intersection Observer to track visible sections + useEffect(() => { + // Track visibility state for all sections + const visibleSections = new Map(); + + // Helper: find section closest to top of viewport + const findClosestSection = (): string | null => { + let closestId: string | null = null; + let closestTop = Number.POSITIVE_INFINITY; + + for (const [id, top] of visibleSections) { + if (top >= 0 && top < closestTop) { + closestTop = top; + closestId = id; + } + } + + // Fallback: use topmost visible section if none below viewport top + if (!closestId && visibleSections.size > 0) { + const sorted = [...visibleSections.entries()].sort( + (a, b) => a[1] - b[1] + ); + return sorted[0][0]; + } + + return closestId; + }; + + // Helper: update visibility map from observer entries + const updateVisibilityMap = (entries: IntersectionObserverEntry[]) => { + for (const entry of entries) { + if (entry.isIntersecting) { + visibleSections.set(entry.target.id, entry.boundingClientRect.top); + } else { + visibleSections.delete(entry.target.id); + } + } + }; + + const observer = new IntersectionObserver( + (entries) => { + updateVisibilityMap(entries); + const closestId = findClosestSection(); + if (closestId) { + setActiveId(closestId); + } + }, + { + rootMargin: "-80px 0px -50% 0px", + threshold: [0, TOC_OBSERVER_THRESHOLD_MIN, TOC_OBSERVER_THRESHOLD_MID], + } + ); + + // Observe all sections + for (const id of sectionIds) { + const element = document.getElementById(id); + if (element) { + observer.observe(element); + } + } + + return () => observer.disconnect(); + }, [sectionIds]); + + // Auto-scroll tool list to keep active item visible + useEffect(() => { + if (!(activeId && toolListRef.current)) { + return; + } + + const activeItem = itemRefs.current.get(activeId); + if (!activeItem) { + return; + } + + const container = toolListRef.current; + const itemTop = activeItem.offsetTop - container.offsetTop; + const itemHeight = activeItem.offsetHeight; + const containerScrollTop = container.scrollTop; + const containerHeight = container.clientHeight; + + // Check if item is outside visible area + if (itemTop < containerScrollTop + TOC_SCROLL_PADDING) { + container.scrollTo({ + top: Math.max(0, itemTop - TOC_SCROLL_PADDING), + behavior: "smooth", + }); + } else if ( + itemTop + itemHeight > + containerScrollTop + containerHeight - TOC_SCROLL_PADDING + ) { + container.scrollTo({ + top: itemTop + itemHeight - containerHeight + TOC_SCROLL_PADDING, + behavior: "smooth", + }); + } + }, [activeId]); + + const setItemRef = useCallback((id: string, el: HTMLAnchorElement | null) => { + if (el) { + itemRefs.current.set(id, el); + } else { + itemRefs.current.delete(id); + } + }, []); + + const getLinkClasses = (id: string) => { + const isActive = activeId === id; + return isActive + ? "text-brand-accent font-medium border-l-2 border-brand-accent -ml-[2px] pl-[14px]" + : "text-muted-foreground hover:text-brand-accent"; + }; + + return ( + + ); +} + +/** + * ToolkitPage + * + * Composes the full toolkit documentation page from JSON data. + */ +export function ToolkitPage({ data }: ToolkitPageProps) { + useEffect(() => { + document.documentElement.dataset.pageKind = "toolkit"; + return () => { + delete document.documentElement.dataset.pageKind; + }; + }, []); + + const rawTools = data.tools ?? []; + const documentationChunks = data.documentationChunks ?? []; + // Temporary UI fallback for toolkit-level secrets that are documented but not yet + // emitted by the Engine tool metadata endpoint. + // + // Example: GitHub toolkit docs require `GITHUB_SERVER_URL` for all tools. + const toolkitSecretOverrides = + data.id.toLowerCase() === "github" ? (["GITHUB_SERVER_URL"] as const) : []; + const tools = rawTools.map((tool) => { + if (toolkitSecretOverrides.length === 0) { + return tool; + } + return { + ...tool, + secrets: Array.from( + new Set([...(tool.secrets ?? []), ...toolkitSecretOverrides]) + ), + }; + }); + const [selectedTools, setSelectedTools] = useState>(new Set()); + const selectionTools = tools.map((tool) => { + const secrets = + (tool.secrets ?? []).length > 0 + ? (tool.secrets ?? []) + : (tool.secretsInfo ?? []).map((secret) => secret.name); + + return { + name: tool.name, + scopes: tool.auth?.scopes ?? [], + secrets, + // Full tool definition for enhanced copy functionality + qualifiedName: tool.qualifiedName, + fullyQualifiedName: tool.fullyQualifiedName, + description: tool.description, + parameters: tool.parameters, + output: tool.output, + }; + }); + const shouldShowSelection = tools.length > 0; + + // Compute tool stats + const toolStats = { + total: tools.length, + withScopes: tools.filter((tool) => (tool.auth?.scopes ?? []).length > 0) + .length, + withSecrets: tools.filter( + (tool) => + (tool.secretsInfo?.length ?? 0) > 0 || (tool.secrets?.length ?? 0) > 0 + ).length, + }; + const showToolFooter = !hasChunksAt(documentationChunks, "footer", "replace"); + const pipPackageName = data.pipPackageName ?? buildPipPackageName(data.id); + const metadata = useMemo( + () => ({ + ...data.metadata, + type: inferToolkitType(data.id, data.metadata.type), + }), + [data.id, data.metadata] + ); + + const handleScopeSelectionChange = (toolNames: string[]) => { + setSelectedTools(new Set(toolNames)); + }; + + const toggleToolSelection = (toolName: string) => { + setSelectedTools((prevSelected) => { + const nextSelected = new Set(prevSelected); + if (nextSelected.has(toolName)) { + nextSelected.delete(toolName); + } else { + nextSelected.add(toolName); + } + return nextSelected; + }); + }; + + return ( +
+ {/* Overview section */} +
+ + +

+ {data.label} +

+ + + + + + + + {data.summary && ( +
+ {data.summary} +
+ )} + + + +
+ + + + + + + +
+

+ + + + Available tools + + ({tools.length}) + +

+
+ ({ + name: tool.name, + qualifiedName: tool.qualifiedName, + description: tool.description, + secrets: tool.secrets, + secretsInfo: tool.secretsInfo, + scopes: tool.auth?.scopes ?? [], + }))} + /> + + + + + {shouldShowSelection && ( +
+ +
+ )} + + {tools.map((tool) => ( + + ))} + +
+ + {showToolFooter && } + + +
+ + + +
+ ); +} + +export default ToolkitPage; diff --git a/app/_components/toolkit-docs/constants.ts b/app/_components/toolkit-docs/constants.ts new file mode 100644 index 000000000..59e86a69f --- /dev/null +++ b/app/_components/toolkit-docs/constants.ts @@ -0,0 +1,178 @@ +/** + * Toolkit documentation constants + * + * Centralized configuration for URLs, badges, labels, and other constants + * used throughout the toolkit documentation components. + */ + +// ============================================================================= +// External URLs +// ============================================================================= + +/** + * GitHub organization URL + */ +export const GITHUB_ORG_URL = "https://github.com/arcadeai"; + +/** + * GitHub repository URL pattern for toolkit code + * Use: `${GITHUB_ORG_URL}/arcade_${toolkitId.toLowerCase()}` + */ +export const GITHUB_REPO_PREFIX = "arcade_"; + +/** + * License file URL + */ +export const LICENSE_URL = `${GITHUB_ORG_URL}/arcade-ai/blob/main/LICENSE`; + +/** + * PyPI base URL + */ +export const PYPI_BASE_URL = "https://pypi.org/project"; + +/** + * Shields.io base URL for badges + */ +export const SHIELDS_IO_BASE_URL = "https://img.shields.io"; + +// ============================================================================= +// Internal Routes +// ============================================================================= + +/** + * Auth provider documentation base path + */ +export const AUTH_PROVIDER_DOCS_PATH = "/references/auth-providers"; + +// ============================================================================= +// Package Naming +// ============================================================================= + +/** + * Package name prefix for PyPI packages + */ +export const PACKAGE_PREFIX = "arcade_"; + +/** + * Generate PyPI package name from toolkit ID + */ +export function getPackageName(toolkitId: string): string { + const id = toolkitId + .toLowerCase() + .replace(/[^a-z0-9]+/g, "_") + .replace(/^_+|_+$/g, ""); + + // Many "*Api" toolkits publish as "_api" (not "api"). + // Handle edge case: if ID is exactly "api", don't produce double underscore. + if (id.endsWith("api") && !id.endsWith("_api") && id !== "api") { + return `${PACKAGE_PREFIX}${id.slice(0, -3)}_api`; + } + + return `${PACKAGE_PREFIX}${id}`; +} + +/** + * Generate PyPI project URL from package name + */ +export function getPyPIUrl(packageName: string): string { + return `${PYPI_BASE_URL}/${packageName}/`; +} + +/** + * Generate auth provider docs URL from provider ID + */ +export function getAuthProviderDocsUrl(providerId: string): string { + return `${AUTH_PROVIDER_DOCS_PATH}/${providerId.toLowerCase()}`; +} + +// ============================================================================= +// Badges Configuration +// ============================================================================= + +export type BadgeConfig = { + alt: string; + src: string | ((packageName: string) => string); + href: string | ((packageName: string) => string); +}; + +/** + * PyPI badge configurations + */ +export const PYPI_BADGES: BadgeConfig[] = [ + { + alt: "PyPI Version", + src: (pkg) => `${SHIELDS_IO_BASE_URL}/pypi/v/${pkg}`, + href: (pkg) => getPyPIUrl(pkg), + }, + { + alt: "Python Versions", + src: (pkg) => `${SHIELDS_IO_BASE_URL}/pypi/pyversions/${pkg}`, + href: (pkg) => getPyPIUrl(pkg), + }, + { + alt: "Wheel Status", + src: (pkg) => `${SHIELDS_IO_BASE_URL}/pypi/wheel/${pkg}`, + href: (pkg) => getPyPIUrl(pkg), + }, + { + alt: "Downloads", + src: (pkg) => `${SHIELDS_IO_BASE_URL}/pypi/dm/${pkg}`, + href: (pkg) => getPyPIUrl(pkg), + }, +]; + +/** + * License badge configuration + */ +export const LICENSE_BADGE: BadgeConfig = { + alt: "License", + src: `${SHIELDS_IO_BASE_URL}/badge/License-MIT-yellow.svg`, + href: LICENSE_URL, +}; + +// ============================================================================= +// Default Values +// ============================================================================= + +/** + * Default toolkit author + */ +export const DEFAULT_AUTHOR = "Arcade"; + +// ============================================================================= +// Auth Type Labels +// ============================================================================= + +export const AUTH_TYPE_LABELS = { + oauth2: "User authorization", + api_key: "API key authentication", + mixed: "User authorization", + mixedSuffix: "and API key authentication", + none: "No authentication required", +} as const; + +// ============================================================================= +// UI Constants +// ============================================================================= + +/** + * Scrolling cell animation settings + */ +export const SCROLLING_CELL = { + pixelsPerSecond: 50, + delayMs: 300, + minDurationMs: 1000, + returnDurationMs: 300, + extraPadding: 16, +} as const; + +/** + * Icon sizes used throughout components + */ +export const ICON_SIZES = { + toolkitHeader: "h-20 w-20", + toolkitHeaderSmall: "h-16 w-16", + badge: "h-3.5 w-3.5", + stat: "h-4 w-4", + inline: "h-3 w-3", +} as const; diff --git a/app/_components/toolkit-docs/index.ts b/app/_components/toolkit-docs/index.ts new file mode 100644 index 000000000..199498a10 --- /dev/null +++ b/app/_components/toolkit-docs/index.ts @@ -0,0 +1,49 @@ +/** + * Toolkit Documentation Components + * + * This module provides React components for rendering toolkit documentation + * from JSON data sources. It enables dynamic documentation generation + * while preserving the ability to inject custom content. + * + * @example + * ```tsx + * import { ToolkitHeader, DocumentationChunkRenderer } from '@/app/_components/toolkit-docs'; + * import toolkitData from '@/data/toolkits/github.json'; + * + * export default function GitHubPage() { + * return ( + * <> + * + * + * + * ); + * } + * ``` + */ + +export { AvailableToolsTable } from "./components/available-tools-table"; +// Components +export { + DocumentationChunkRenderer, + hasChunksAt, +} from "./components/documentation-chunk-renderer"; +export { DynamicCodeBlock } from "./components/dynamic-code-block"; +export { ParametersTable } from "./components/parameters-table"; +export { ScopesDisplay } from "./components/scopes-display"; +export { ToolSection } from "./components/tool-section"; +export { ToolkitHeader } from "./components/toolkit-header"; +export { ToolkitPage } from "./components/toolkit-page"; +// Constants +export * from "./constants"; +// Types +export * from "./types"; diff --git a/app/_components/toolkit-docs/types/index.ts b/app/_components/toolkit-docs/types/index.ts new file mode 100644 index 000000000..7d3eb75f4 --- /dev/null +++ b/app/_components/toolkit-docs/types/index.ts @@ -0,0 +1,466 @@ +/** + * Type definitions for toolkit documentation MDX components + * + * These types are designed for React component props and are compatible + * with the JSON data structure from toolkit-docs-generator. + */ + +// ============================================================================ +// Documentation Chunk Types +// ============================================================================ + +/** + * Type of documentation chunk content + */ +export type DocumentationChunkType = + | "callout" + | "markdown" + | "code" + | "warning" + | "info" + | "tip"; + +/** + * Location where the chunk should be injected + */ +export type DocumentationChunkLocation = + | "header" + | "description" + | "parameters" + | "auth" + | "secrets" + | "output" + | "footer" + | "before_available_tools" + | "after_available_tools" + | "custom_section"; + +/** + * Position relative to the location + */ +export type DocumentationChunkPosition = "before" | "after" | "replace"; + +/** + * Callout variant for styling + */ +export type DocumentationChunkVariant = + | "default" + | "destructive" + | "warning" + | "info" + | "success"; + +/** + * A documentation chunk represents custom content to inject into docs + */ +export type DocumentationChunk = { + /** Type of content */ + type: DocumentationChunkType; + /** Where to inject the content */ + location: DocumentationChunkLocation; + /** Position relative to location */ + position: DocumentationChunkPosition; + /** The actual content (markdown string) */ + content: string; + /** Optional title for callouts */ + title?: string; + /** Optional variant for styling */ + variant?: DocumentationChunkVariant; + /** Optional section header for sidebar navigation (e.g., "## Auth Setup") */ + header?: string; + /** Optional priority for ordering (lower = earlier, default = 100) */ + priority?: number; +}; + +// ============================================================================ +// Tool Parameter Types +// ============================================================================ + +/** + * Tool parameter definition + */ +export type ToolParameter = { + /** Parameter name */ + name: string; + /** Parameter type (string, integer, boolean, array, object) */ + type: string; + /** For array types, the inner element type */ + innerType?: string; + /** Whether the parameter is required */ + required: boolean; + /** Parameter description */ + description: string | null; + /** Enum values if this is an enum parameter */ + enum: string[] | null; + /** Whether the parameter can be inferred by an LLM */ + inferrable?: boolean; + /** Default value if not provided */ + default?: unknown; +}; + +// ============================================================================ +// Tool Auth Types +// ============================================================================ + +/** + * Tool-level authentication requirements + */ +export type ToolAuth = { + /** Auth provider ID (e.g., "github", "google") */ + providerId: string | null; + /** Provider type (e.g., "oauth2", "api_key") */ + providerType: string; + /** Required OAuth scopes for this specific tool */ + scopes: string[]; +}; + +// ============================================================================ +// Tool Output Types +// ============================================================================ + +/** + * Tool output schema + */ +export type ToolOutput = { + /** Output type (object, array, string, etc.) */ + type: string; + /** Output description */ + description: string | null; +}; + +// ============================================================================ +// Tool Secrets Types +// ============================================================================ + +export type SecretType = + | "api_key" + | "token" + | "client_secret" + | "webhook_secret" + | "private_key" + | "password" + | "unknown"; + +export type ToolSecret = { + /** Secret name */ + name: string; + /** Secret type classification */ + type: SecretType; +}; + +// ============================================================================ +// Code Example Types +// ============================================================================ + +/** + * Parameter value with type information for code generation + */ +export type ExampleParameterValue = { + /** The example value to use in generated code */ + value: unknown; + /** Parameter type for proper serialization */ + type: "string" | "integer" | "boolean" | "array" | "object"; + /** Whether this parameter is required */ + required: boolean; +}; + +/** + * Tool code example configuration + * Used to generate Python/JavaScript example code + */ +export type ToolCodeExample = { + /** Full tool name (e.g., "Github.SetStarred") */ + toolName: string; + /** Parameter values with type info */ + parameters: Record; + /** Whether this tool requires user authorization */ + requiresAuth: boolean; + /** Auth provider ID if auth is required */ + authProvider?: string; + /** Optional tab label for the code example */ + tabLabel?: string; +}; + +// ============================================================================ +// Tool Definition Types +// ============================================================================ + +/** + * Complete tool definition with all documentation data + */ +export type ToolDefinition = { + /** Tool name (e.g., "CreateIssue") */ + name: string; + /** Qualified name (e.g., "Github.CreateIssue") */ + qualifiedName: string; + /** Fully qualified name with version (e.g., "Github.CreateIssue@1.0.0") */ + fullyQualifiedName: string; + /** Tool description */ + description: string | null; + /** Tool parameters */ + parameters: ToolParameter[]; + /** Tool authentication requirements */ + auth: ToolAuth | null; + /** Required secrets */ + secrets: string[]; + /** Classified secrets (LLM-generated) */ + secretsInfo?: ToolSecret[]; + /** Tool output schema */ + output: ToolOutput | null; + /** Custom documentation chunks for this tool */ + documentationChunks: DocumentationChunk[]; + /** Generated code example configuration */ + codeExample?: ToolCodeExample; +}; + +// ============================================================================ +// Toolkit Metadata Types +// ============================================================================ + +/** + * Toolkit category for navigation grouping + */ +export type ToolkitCategory = + | "productivity" + | "social" + | "development" + | "entertainment" + | "search" + | "payments" + | "sales" + | "databases" + | "customer-support"; + +/** + * Toolkit type classification + */ +export type ToolkitType = + | "arcade" + | "arcade_starter" + | "verified" + | "community" + | "auth"; + +/** + * Toolkit metadata from Design System + */ +export type ToolkitMetadata = { + /** Category for navigation grouping */ + category: ToolkitCategory; + /** Icon URL */ + iconUrl: string; + /** Whether this toolkit requires BYOC (Bring Your Own Credentials) */ + isBYOC: boolean; + /** Whether this is a Pro feature */ + isPro: boolean; + /** Toolkit type classification */ + type: ToolkitType; + /** Link to documentation */ + docsLink: string; + /** Whether this toolkit is coming soon */ + isComingSoon?: boolean; + /** Whether this toolkit is hidden */ + isHidden?: boolean; +}; + +// ============================================================================ +// Toolkit Auth Types +// ============================================================================ + +/** + * Toolkit-level authentication type + */ +export type ToolkitAuthType = "oauth2" | "api_key" | "mixed" | "none"; + +/** + * Toolkit-level authentication summary + */ +export type ToolkitAuth = { + /** Auth type */ + type: ToolkitAuthType; + /** Auth provider ID */ + providerId: string | null; + /** Union of all scopes required by tools in this toolkit */ + allScopes: string[]; +}; + +// ============================================================================ +// Complete Toolkit Data Type +// ============================================================================ + +/** + * Complete toolkit data structure for rendering documentation + * This is the main type consumed by the ToolkitPage component + */ +export type ToolkitData = { + /** Unique toolkit ID (e.g., "Github") */ + id: string; + /** Human-readable label (e.g., "GitHub") */ + label: string; + /** Toolkit version (e.g., "1.0.0") */ + version: string; + /** Toolkit description */ + description: string | null; + /** LLM-generated summary */ + summary?: string; + /** Metadata from Design System */ + metadata: ToolkitMetadata; + /** Authentication requirements */ + auth: ToolkitAuth | null; + /** All tools in this toolkit */ + tools: ToolDefinition[]; + /** Toolkit-level documentation chunks */ + documentationChunks?: DocumentationChunk[]; + /** Custom imports for MDX */ + customImports: string[]; + /** Sub-pages that exist for this toolkit */ + subPages: string[]; + /** Optional pip package name override */ + pipPackageName?: string; + /** Generation timestamp */ + generatedAt?: string; +}; + +// ============================================================================ +// Component Props Types +// ============================================================================ + +/** + * Props for DocumentationChunkRenderer component + */ +export type DocumentationChunkRendererProps = { + /** Array of documentation chunks to filter and render */ + chunks?: DocumentationChunk[] | null; + /** Filter by location */ + location: DocumentationChunkLocation; + /** Filter by position */ + position: DocumentationChunkPosition; + /** Optional className for the wrapper */ + className?: string; +}; + +/** + * Props for ToolkitHeader component + */ +export type ToolkitHeaderProps = { + /** Toolkit ID for icon lookup */ + id: string; + /** Display label */ + label: string; + /** Toolkit description */ + description: string | null; + /** Summary text (optional) */ + summary?: string; + /** Toolkit metadata */ + metadata: ToolkitMetadata; + /** Authentication info */ + auth: ToolkitAuth | null; + /** Toolkit version */ + version?: string; + /** Author name (defaults to "Arcade") */ + author?: string; + /** Tool statistics */ + toolStats?: { + total: number; + withScopes: number; + withSecrets: number; + }; +}; + +/** + * Props for ParametersTable component + */ +export type ParametersTableProps = { + /** Array of parameters to render */ + parameters: ToolParameter[]; + /** Base URL for enum references (optional) */ + enumBaseUrl?: string; +}; + +/** + * Props for ScopesDisplay component + */ +export type ScopesDisplayProps = { + /** Array of OAuth scopes */ + scopes: string[]; + /** Display variant */ + variant?: "inline" | "callout"; + /** Optional title for the callout */ + title?: string; +}; + +/** + * Props for DynamicCodeBlock component + */ +export type DynamicCodeBlockProps = { + /** Code example configuration */ + codeExample: ToolCodeExample; + /** Languages to generate (defaults to both) */ + languages?: ("python" | "javascript")[]; +}; + +/** + * Props for ToolSection component + */ +export type ToolSectionProps = { + /** Tool definition */ + tool: ToolDefinition; + /** Whether the tool is selected in the selected tools panel */ + isSelected?: boolean; + /** Show selection checkbox */ + showSelection?: boolean; + /** Toggle selection handler */ + onToggleSelection?: (toolName: string) => void; +}; + +/** + * Props for AvailableToolsTable component + */ +export type AvailableToolsTableProps = { + /** Tools to display in the table */ + tools: Array<{ + name: string; + qualifiedName: string; + description: string | null; + secrets?: string[]; + secretsInfo?: ToolSecret[]; + scopes?: string[]; + }>; + /** Optional label for the secrets column */ + secretsColumnLabel?: string; + /** How to summarize secrets in the table */ + secretsDisplay?: "summary" | "names" | "types"; + /** Override labels for secret types */ + secretTypeLabels?: Partial>; + /** Base URL for linking secret type docs */ + secretTypeDocsBaseUrl?: string; + /** Enable search input */ + enableSearch?: boolean; + /** Enable filters */ + enableFilters?: boolean; + /** Search input placeholder */ + searchPlaceholder?: string; + /** Filter label */ + filterLabel?: string; + /** Default filter selection */ + defaultFilter?: + | "all" + | "has_scopes" + | "no_scopes" + | "has_secrets" + | "no_secrets"; + /** Currently selected tool names */ + selectedTools?: Set; + /** Handler for toggling tool selection */ + onToggleSelection?: (toolName: string) => void; + /** Whether to show selection checkboxes */ + showSelection?: boolean; +}; + +/** + * Props for ToolkitPage component + */ +export type ToolkitPageProps = { + /** Complete toolkit data */ + data: ToolkitData; +}; diff --git a/app/_lib/__tests__/toolkit-data.test.ts b/app/_lib/__tests__/toolkit-data.test.ts new file mode 100644 index 000000000..976de138a --- /dev/null +++ b/app/_lib/__tests__/toolkit-data.test.ts @@ -0,0 +1,97 @@ +import { mkdtemp, readFile, rm, writeFile } from "node:fs/promises"; +import { tmpdir } from "node:os"; +import { basename, join } from "node:path"; +import { describe, expect, it } from "vitest"; + +import { readToolkitData, readToolkitIndex } from "../toolkit-data"; + +const loadFixture = async (fileName: string): Promise => { + const fixturesDir = new URL( + "../../../toolkit-docs-generator/tests/fixtures/", + import.meta.url + ); + const filePath = new URL(fileName, fixturesDir); + return await readFile(filePath, "utf-8"); +}; + +const withTempDir = async (fn: (dir: string) => Promise) => { + const dir = await mkdtemp(join(tmpdir(), "toolkit-data-")); + try { + await fn(dir); + } finally { + await rm(dir, { recursive: true, force: true }); + } +}; + +describe("toolkit data loader", () => { + it("reads toolkit data from the provided directory", async () => { + await withTempDir(async (dir) => { + const fixture = await loadFixture("github-toolkit.json"); + await writeFile(join(dir, "github.json"), fixture, "utf-8"); + + const data = await readToolkitData("Github", { dataDir: dir }); + + expect(data?.id).toBe("Github"); + expect(data?.tools.length).toBeGreaterThan(0); + }); + }); + + it("returns null when toolkit data is missing", async () => { + await withTempDir(async (dir) => { + const data = await readToolkitData("Missing", { dataDir: dir }); + + expect(data).toBeNull(); + }); + }); + + it("reads index data from the provided directory", async () => { + await withTempDir(async (dir) => { + const indexFixture = JSON.stringify( + { + generatedAt: "2026-01-15T00:00:00.000Z", + version: "1.0.0", + toolkits: [ + { + id: "Github", + label: "GitHub", + version: "1.0.0", + category: "development", + toolCount: 3, + authType: "oauth2", + }, + ], + }, + null, + 2 + ); + await writeFile(join(dir, "index.json"), indexFixture, "utf-8"); + + const index = await readToolkitIndex({ dataDir: dir }); + + expect(index?.toolkits).toHaveLength(1); + expect(index?.toolkits[0]?.id).toBe("Github"); + }); + }); + + it("prevents path traversal when reading toolkit data", async () => { + await withTempDir(async (dir) => { + const escapeId = `${basename(dir)}-escape`; + const escapeFilePath = join(dir, "..", `${escapeId}.json`); + await writeFile( + escapeFilePath, + JSON.stringify({ id: "Escape", tools: [] }), + "utf-8" + ); + + try { + const data = await readToolkitData(`../${escapeId}`, { + dataDir: dir, + }); + + expect(data).toBeNull(); + } finally { + await rm(escapeFilePath, { force: true }); + } + }); + }); +}); diff --git a/app/_lib/__tests__/toolkit-static-params.test.ts b/app/_lib/__tests__/toolkit-static-params.test.ts new file mode 100644 index 000000000..29690d0f8 --- /dev/null +++ b/app/_lib/__tests__/toolkit-static-params.test.ts @@ -0,0 +1,109 @@ +import { mkdtemp, rm, writeFile } from "node:fs/promises"; +import { tmpdir } from "node:os"; +import { join } from "node:path"; +import { describe, expect, it } from "vitest"; + +import { + getToolkitStaticParamsForCategory, + listToolkitRoutes, + normalizeToolkitId, + type ToolkitCatalogEntry, +} from "../toolkit-static-params"; + +const withTempDir = async (fn: (dir: string) => Promise) => { + const dir = await mkdtemp(join(tmpdir(), "toolkit-static-params-")); + try { + await fn(dir); + } finally { + await rm(dir, { recursive: true, force: true }); + } +}; + +const writeIndex = async ( + dir: string, + toolkits: Array<{ id: string; category?: string }> +) => { + const indexFixture = JSON.stringify( + { + generatedAt: "2026-01-15T00:00:00.000Z", + version: "1.0.0", + toolkits, + }, + null, + 2 + ); + await writeFile(join(dir, "index.json"), indexFixture, "utf-8"); +}; + +describe("toolkit static params", () => { + it("normalizes toolkit IDs into URL-safe slugs", () => { + expect(normalizeToolkitId("GithubApi")).toBe("githubapi"); + expect(normalizeToolkitId("GitHub API")).toBe("githubapi"); + }); + + it("lists toolkit routes from the index", async () => { + await withTempDir(async (dir) => { + await writeIndex(dir, [ + { id: "Github", category: "development" }, + { id: "Gmail", category: "productivity" }, + ]); + + const routes = await listToolkitRoutes({ + dataDir: dir, + toolkitsCatalog: [], + }); + + expect(routes).toEqual( + expect.arrayContaining([ + { toolkitId: "github", category: "development" }, + { toolkitId: "gmail", category: "productivity" }, + ]) + ); + }); + }); + + it("prefers the design system category when available", async () => { + await withTempDir(async (dir) => { + await writeIndex(dir, [{ id: "Github", category: "development" }]); + + const toolkitsCatalog: ToolkitCatalogEntry[] = [ + { id: "Github", category: "social" }, + ]; + + const routes = await listToolkitRoutes({ dataDir: dir, toolkitsCatalog }); + expect(routes).toEqual([{ toolkitId: "github", category: "social" }]); + + const params = await getToolkitStaticParamsForCategory("social", { + dataDir: dir, + toolkitsCatalog, + }); + expect(params).toEqual([{ toolkitId: "github" }]); + }); + }); + + it("skips toolkits marked as hidden in the design system catalog", async () => { + await withTempDir(async (dir) => { + await writeIndex(dir, [{ id: "Github", category: "development" }]); + + const toolkitsCatalog: ToolkitCatalogEntry[] = [ + { id: "Github", category: "development", isHidden: true }, + ]; + + const routes = await listToolkitRoutes({ dataDir: dir, toolkitsCatalog }); + expect(routes).toEqual([]); + }); + }); + + it('maps unknown categories to "others"', async () => { + await withTempDir(async (dir) => { + await writeIndex(dir, [{ id: "Github", category: "weird" }]); + + const routes = await listToolkitRoutes({ + dataDir: dir, + toolkitsCatalog: [], + }); + + expect(routes).toEqual([{ toolkitId: "github", category: "others" }]); + }); + }); +}); diff --git a/app/_lib/toolkit-data.ts b/app/_lib/toolkit-data.ts new file mode 100644 index 000000000..3f4d981a1 --- /dev/null +++ b/app/_lib/toolkit-data.ts @@ -0,0 +1,88 @@ +import { readFile } from "node:fs/promises"; +import { join } from "node:path"; +import type { ToolkitData } from "@/app/_components/toolkit-docs/types"; + +export type ToolkitIndexEntry = { + id: string; + label: string; + version: string; + category: string; + type?: string; + toolCount: number; + authType: string; +}; + +export type ToolkitIndex = { + generatedAt: string; + version: string; + toolkits: ToolkitIndexEntry[]; +}; + +type ToolkitDataOptions = { + dataDir?: string; +}; + +const DEFAULT_DATA_DIR = join(process.cwd(), "data", "toolkits"); + +const resolveDataDir = (options?: ToolkitDataOptions): string => + options?.dataDir ?? process.env.TOOLKIT_DATA_DIR ?? DEFAULT_DATA_DIR; + +export const readToolkitData = async ( + toolkitId: string, + options?: ToolkitDataOptions +): Promise => { + // Normalize the toolkit ID to lowercase alphanumeric + const normalizedId = toolkitId.toLowerCase().replace(/[^a-z0-9]+/g, ""); + + // Guard against empty normalized ID (e.g., input was only special characters) + if (!normalizedId) { + return null; + } + + const fileName = `${normalizedId}.json`; + const filePath = join(resolveDataDir(options), fileName); + + try { + const content = await readFile(filePath, "utf-8"); + const parsed: unknown = JSON.parse(content); + + // Basic runtime validation - ensure it's an object with required fields + if ( + typeof parsed !== "object" || + parsed === null || + !("id" in parsed) || + !("label" in parsed || "name" in parsed) + ) { + return null; + } + + return parsed as ToolkitData; + } catch { + return null; + } +}; + +export const readToolkitIndex = async ( + options?: ToolkitDataOptions +): Promise => { + const filePath = join(resolveDataDir(options), "index.json"); + + try { + const content = await readFile(filePath, "utf-8"); + const parsed: unknown = JSON.parse(content); + + // Basic runtime validation - ensure it's an object with required fields + if ( + typeof parsed !== "object" || + parsed === null || + !("toolkits" in parsed) || + !Array.isArray((parsed as { toolkits: unknown }).toolkits) + ) { + return null; + } + + return parsed as ToolkitIndex; + } catch { + return null; + } +}; diff --git a/app/_lib/toolkit-static-params.ts b/app/_lib/toolkit-static-params.ts new file mode 100644 index 000000000..f24d4fe26 --- /dev/null +++ b/app/_lib/toolkit-static-params.ts @@ -0,0 +1,92 @@ +import { TOOLKITS as DESIGN_SYSTEM_TOOLKITS } from "@arcadeai/design-system"; +import { readToolkitIndex } from "./toolkit-data"; + +const TOOLKIT_ID_NORMALIZER = /[^a-z0-9]+/g; + +export const INTEGRATION_CATEGORIES = [ + "productivity", + "social", + "entertainment", + "development", + "payments", + "search", + "sales", + "databases", + "customer-support", + "others", +] as const; + +export type IntegrationCategory = (typeof INTEGRATION_CATEGORIES)[number]; + +export type ToolkitCatalogEntry = { + id: string; + category?: string; + isHidden?: boolean; +}; + +export type ToolkitRouteEntry = { + toolkitId: string; // normalized slug (e.g. "githubapi") + category: IntegrationCategory; +}; + +export function normalizeToolkitId(value: string): string { + return value.toLowerCase().replace(TOOLKIT_ID_NORMALIZER, ""); +} + +function normalizeCategory( + value: string | null | undefined +): IntegrationCategory { + if (!value) { + return "others"; + } + + return INTEGRATION_CATEGORIES.includes(value as IntegrationCategory) + ? (value as IntegrationCategory) + : "others"; +} + +export async function listToolkitRoutes(options?: { + dataDir?: string; + toolkitsCatalog?: ToolkitCatalogEntry[]; +}): Promise { + const index = await readToolkitIndex( + options?.dataDir ? { dataDir: options.dataDir } : undefined + ); + + if (!index) { + return []; + } + + const toolkitsCatalog = options?.toolkitsCatalog ?? DESIGN_SYSTEM_TOOLKITS; + const catalogBySlug = new Map( + toolkitsCatalog.map((toolkit) => [normalizeToolkitId(toolkit.id), toolkit]) + ); + + const unique = new Map(); + for (const toolkit of index.toolkits) { + const slug = normalizeToolkitId(toolkit.id); + const catalogEntry = catalogBySlug.get(slug); + + if (catalogEntry?.isHidden) { + continue; + } + + const category = normalizeCategory( + catalogEntry?.category ?? toolkit.category + ); + unique.set(slug, { toolkitId: slug, category }); + } + + return [...unique.values()]; +} + +export async function getToolkitStaticParamsForCategory( + category: IntegrationCategory, + options?: { dataDir?: string; toolkitsCatalog?: ToolkitCatalogEntry[] } +): Promise> { + const routes = await listToolkitRoutes(options); + + return routes + .filter((route) => route.category === category) + .map((route) => ({ toolkitId: route.toolkitId })); +} diff --git a/app/api/markdown/[[...slug]]/route.ts b/app/api/markdown/[[...slug]]/route.ts index 61006c812..911738d28 100644 --- a/app/api/markdown/[[...slug]]/route.ts +++ b/app/api/markdown/[[...slug]]/route.ts @@ -1,11 +1,135 @@ -import { access, readFile } from "node:fs/promises"; -import { join } from "node:path"; +import { access, readdir, readFile } from "node:fs/promises"; +import { join, normalize, resolve } from "node:path"; import { type NextRequest, NextResponse } from "next/server"; export const dynamic = "force-dynamic"; // Regex pattern for removing .md extension const MD_EXTENSION_REGEX = /\.md$/; +const TOOLKIT_MARKDOWN_ROOT = join(process.cwd(), "public", "toolkit-markdown"); +const APP_ROOT = join(process.cwd(), "app"); + +/** + * Validates that a resolved path is within the allowed directory. + * Prevents path traversal attacks (e.g., ../../../etc/passwd). + */ +function isPathWithinDirectory(filePath: string, allowedDir: string): boolean { + const resolvedPath = resolve(filePath); + const resolvedAllowedDir = resolve(allowedDir); + return ( + resolvedPath.startsWith(`${resolvedAllowedDir}/`) || + resolvedPath === resolvedAllowedDir + ); +} + +/** + * Sanitizes a path by removing path traversal sequences. + * Returns null if the path contains suspicious patterns. + */ +function sanitizePath(inputPath: string): string | null { + // Normalize the path to resolve . and .. segments + const normalized = normalize(inputPath); + + // Reject paths that try to escape (contain .. after normalization that go above root) + if (normalized.includes("..")) { + return null; + } + + // Reject null bytes (common attack vector) + if (inputPath.includes("\0")) { + return null; + } + + return normalized; +} + +// Minimum path segments for toolkit markdown: [lang, "resources", "integrations", category, toolkitId] +const MIN_TOOLKIT_PATH_SEGMENTS = 5; + +// Valid toolkit categories +const TOOLKIT_CATEGORIES = [ + "customer-support", + "development", + "entertainment", + "payments", + "productivity", + "sales", + "search", + "social-communication", + "preview", + "databases", +]; + +type ToolkitMarkdownTarget = { + category: string; + toolkitId: string; +}; + +/** + * Check if a path matches the toolkit documentation pattern. + * Handles both actual toolkit IDs and the [toolkitId] dynamic route pattern. + */ +const getToolkitMarkdownTarget = ( + pathWithoutMd: string +): ToolkitMarkdownTarget | null => { + const segments = pathWithoutMd.split("/").filter(Boolean); + + // Expected: [lang, "resources", "integrations", category, toolkitId] + if (segments.length < MIN_TOOLKIT_PATH_SEGMENTS) { + return null; + } + + const [, resources, integrations, category, toolkitId] = segments; + + // Check if this is a toolkit integration path + if (resources !== "resources" || integrations !== "integrations") { + return null; + } + + // Check if category is valid + if (!TOOLKIT_CATEGORIES.includes(category)) { + return null; + } + + // Skip if toolkitId is the literal "[toolkitId]" (dynamic route pattern) + if (toolkitId === "[toolkitId]") { + return null; + } + + return { category, toolkitId: toolkitId.toLowerCase() }; +}; + +/** + * Try to find the toolkit markdown file with case-insensitive matching. + */ +async function findToolkitMarkdownFile( + category: string, + toolkitId: string +): Promise { + const categoryDir = join(TOOLKIT_MARKDOWN_ROOT, category); + + try { + const files = await readdir(categoryDir); + const targetFile = `${toolkitId}.md`; + + // Try exact match first + if (files.includes(targetFile)) { + return join(categoryDir, targetFile); + } + + // Try case-insensitive match + const match = files.find( + (f) => f.toLowerCase() === targetFile.toLowerCase() + ); + if (match) { + return join(categoryDir, match); + } + + return null; + } catch { + return null; + } +} export async function GET( request: NextRequest, @@ -20,9 +144,46 @@ export async function GET( // Remove .md extension const pathWithoutMd = originalPath.replace(MD_EXTENSION_REGEX, ""); - // Map URL to file path - // e.g., /en/home/quickstart -> app/en/home/quickstart/page.mdx - const filePath = join(process.cwd(), "app", `${pathWithoutMd}/page.mdx`); + // Sanitize the path to prevent traversal attacks + const sanitizedPath = sanitizePath(pathWithoutMd); + if (!sanitizedPath) { + return new NextResponse("Invalid path", { status: 400 }); + } + + const toolkitTarget = getToolkitMarkdownTarget(sanitizedPath); + + let filePath: string; + + if (toolkitTarget) { + // Try to find the toolkit markdown file + const toolkitFile = await findToolkitMarkdownFile( + toolkitTarget.category, + toolkitTarget.toolkitId + ); + + if (toolkitFile) { + // Validate toolkit file is within allowed directory + if (!isPathWithinDirectory(toolkitFile, TOOLKIT_MARKDOWN_ROOT)) { + return new NextResponse("Invalid path", { status: 400 }); + } + filePath = toolkitFile; + } else { + // Fall back to MDX file if toolkit markdown not found + filePath = join(APP_ROOT, `${sanitizedPath}/page.mdx`); + } + } else { + // Non-toolkit page - use MDX file + filePath = join(APP_ROOT, `${sanitizedPath}/page.mdx`); + } + + // Final validation: ensure file path is within allowed directories + const isValidPath = + isPathWithinDirectory(filePath, APP_ROOT) || + isPathWithinDirectory(filePath, TOOLKIT_MARKDOWN_ROOT); + + if (!isValidPath) { + return new NextResponse("Invalid path", { status: 400 }); + } // Check if file exists try { @@ -39,6 +200,8 @@ export async function GET( headers: { "Content-Type": "text/plain; charset=utf-8", "Content-Disposition": "inline", + // Add cache headers for better performance + "Cache-Control": "public, max-age=3600, stale-while-revalidate=86400", }, }); } catch (error) { diff --git a/app/api/toolkit-data/[toolkitId]/route.ts b/app/api/toolkit-data/[toolkitId]/route.ts new file mode 100644 index 000000000..9842b5563 --- /dev/null +++ b/app/api/toolkit-data/[toolkitId]/route.ts @@ -0,0 +1,42 @@ +import { NextResponse } from "next/server"; +import { readToolkitData } from "@/app/_lib/toolkit-data"; + +// Cache headers for toolkit data responses +const CACHE_HEADERS = { + "Cache-Control": "public, max-age=3600, stale-while-revalidate=86400", +}; + +export async function GET( + _request: Request, + { params }: { params: Promise<{ toolkitId: string }> } +) { + try { + const { toolkitId } = await params; + + // Validate toolkitId is not empty + if (!toolkitId?.trim()) { + return NextResponse.json( + { error: "Toolkit ID is required" }, + { status: 400 } + ); + } + + const data = await readToolkitData(toolkitId); + + if (!data) { + return NextResponse.json( + { error: `Toolkit not found: ${toolkitId}` }, + { status: 404 } + ); + } + + return NextResponse.json(data, { headers: CACHE_HEADERS }); + } catch (error) { + // biome-ignore lint/suspicious/noConsole: Server-side error logging is appropriate + console.error("Error fetching toolkit data:", error); + return NextResponse.json( + { error: "Internal server error" }, + { status: 500 } + ); + } +} diff --git a/app/en/get-started/about-arcade/page.mdx b/app/en/get-started/about-arcade/page.mdx index 46e0055cc..6f2b0d62b 100644 --- a/app/en/get-started/about-arcade/page.mdx +++ b/app/en/get-started/about-arcade/page.mdx @@ -45,7 +45,7 @@ To learn how Arcade authorizes actions (tools) through OAuth 2.0 and how to impl ## Tools that don't require authorization -Some tools, like [`GoogleSearch.Search`](/resources/integrations/search/google_search#googlesearchsearch), allow AI agents to retrieve information or perform actions without needing user-specific authorization. +Some tools, like [`GoogleSearch.Search`](/resources/integrations/search/googlesearch#googlesearchsearch), allow AI agents to retrieve information or perform actions without needing user-specific authorization. diff --git a/app/en/guides/create-tools/evaluate-tools/capture-mode/page.mdx b/app/en/guides/create-tools/evaluate-tools/capture-mode/page.mdx index 6f386aa79..b6c9f0771 100644 --- a/app/en/guides/create-tools/evaluate-tools/capture-mode/page.mdx +++ b/app/en/guides/create-tools/evaluate-tools/capture-mode/page.mdx @@ -30,7 +30,7 @@ Capture mode records tool calls without evaluating them. Use it to bootstrap tes ``` 1. Create suite with empty expected_tool_calls ↓ -2. Run: arcade evals . --capture --format json +2. Run: arcade evals . --capture -o captures.json ↓ 3. Review captured tool calls in output file ↓ @@ -82,7 +82,7 @@ async def capture_weather_suite(): Run evaluations with the `--capture` flag: ```bash -arcade evals . --capture --file captures/weather --format json +arcade evals . --capture -o captures/weather.json ``` This creates `captures/weather.json` with all tool calls. @@ -146,7 +146,7 @@ suite.add_case( Record tool calls to JSON: ```bash -arcade evals . --capture --file captures/baseline --format json +arcade evals . --capture -o captures/baseline.json ``` ### Include conversation context @@ -154,7 +154,7 @@ arcade evals . --capture --file captures/baseline --format json Capture system messages and conversation history: ```bash -arcade evals . --capture --include-context --file captures/detailed --format json +arcade evals . --capture --include-context -o captures/detailed.json ``` Output includes: @@ -177,7 +177,7 @@ Output includes: Save captures in multiple formats: ```bash -arcade evals . --capture --file captures/out --format json,md +arcade evals . --capture -o captures/out.json -o captures/out.md ``` Markdown format is more readable for quick review: @@ -204,9 +204,10 @@ Capture from multiple providers to compare behavior: ```bash arcade evals . --capture \ - --use-provider openai:gpt-4o \ - --use-provider anthropic:claude-sonnet-4-5-20250929 \ - --file captures/comparison --format json + -p "openai:gpt-4o anthropic:claude-sonnet-4-5-20250929" \ + -k openai:sk-... \ + -k anthropic:sk-ant-... \ + -o captures/comparison.json ``` ## Capture with comparative tracks @@ -245,7 +246,7 @@ async def capture_comparative(): Run capture: ```bash -arcade evals . --capture --file captures/apis --format json +arcade evals . --capture -o captures/apis.json ``` Output shows captures per track: @@ -318,9 +319,10 @@ Compare how different models interpret your tools: ```bash arcade evals . --capture \ - --use-provider openai:gpt-4o,gpt-4o-mini \ - --use-provider anthropic:claude-sonnet-4-5-20250929 \ - --file captures/models --format json,md + -p "openai:gpt-4o,gpt-4o-mini anthropic:claude-sonnet-4-5-20250929" \ + -k openai:sk-... \ + -k anthropic:sk-ant-... \ + -o captures/models.json -o captures/models.md ``` ## Converting captures to tests diff --git a/app/en/guides/create-tools/evaluate-tools/comparative-evaluations/page.mdx b/app/en/guides/create-tools/evaluate-tools/comparative-evaluations/page.mdx index 581c68cc1..c41b82d77 100644 --- a/app/en/guides/create-tools/evaluate-tools/comparative-evaluations/page.mdx +++ b/app/en/guides/create-tools/evaluate-tools/comparative-evaluations/page.mdx @@ -488,7 +488,7 @@ async def mixed_suite(): Capture tool calls from each track separately: ```bash -arcade evals . --capture --file captures/comparison --format json +arcade evals . --capture -o captures/comparison.json ``` Output includes track names: @@ -519,9 +519,7 @@ Output includes track names: Combine comparative tracks with multiple models: ```bash -arcade evals . \ - --use-provider openai:gpt-4o,gpt-4o-mini \ - --use-provider anthropic:claude-sonnet-4-5-20250929 +arcade evals . -p "openai:gpt-4o,gpt-4o-mini anthropic:claude-sonnet-4-5-20250929" ``` Results show: diff --git a/app/en/guides/create-tools/improve/types-of-tools/page.mdx b/app/en/guides/create-tools/improve/types-of-tools/page.mdx index 0599b52ea..5e0518061 100644 --- a/app/en/guides/create-tools/improve/types-of-tools/page.mdx +++ b/app/en/guides/create-tools/improve/types-of-tools/page.mdx @@ -44,7 +44,7 @@ Even the most powerful LLMs usually perform poorly when they need to reason such Arcade's Optimized MCP Servers are designed to match the typical data models expected in AI-powered chat interfaces and are subject to evaluation suites to ensure LLMs can safely use them. -Following the example above, our Slack MCP Server offers the [`Slack.SendMessage`](/resources/integrations/social-communication/slack#slacksendmessage) tool, which accepts a `username` as argument, matching exactly both the action and argument value expected to be present in the LLM context window. +Following the example above, our Slack MCP Server offers the [`Slack.SendMessage`](/resources/integrations/social/slack#slacksendmessage) tool, which accepts a `username` as argument, matching exactly both the action and argument value expected to be present in the LLM context window. When a user says "Send a DM to John asking about a project update", the LLM can directly call the `Slack.SendMessage` tool with the `username` argument, and the tool will take care of the rest. diff --git a/app/en/guides/tool-calling/page.mdx b/app/en/guides/tool-calling/page.mdx index d21e141c7..9e349fb11 100644 --- a/app/en/guides/tool-calling/page.mdx +++ b/app/en/guides/tool-calling/page.mdx @@ -13,9 +13,9 @@ To solve this, many AI models support tool calling (sometimes referred to as 'fu Say a colleague shares a document with you on Google Drive, and you'd like an LLM to help you analyze it. -You could go to your Drive/Docs, open the document, copy its contents, and paste it into your chat. But what if the LLM could do this for you? The Arcade Google Docs MCP Server provides a [`SearchAndRetrieveDocuments`](/resources/integrations/productivity/google-docs#googledocssearchandretrievedocuments) tool. By calling it, the LLM can find and read the document without you having to do anything. +You could go to your Drive/Docs, open the document, copy its contents, and paste it into your chat. But what if the LLM could do this for you? The Arcade Google Docs MCP Server provides a [`SearchAndRetrieveDocuments`](/resources/integrations/productivity/googledocs#googledocssearchandretrievedocuments) tool. By calling it, the LLM can find and read the document without you having to do anything. -After analyzing the document, you decide that a meeting is needed with your colleague. You can ask the LLM to schedule a meeting and it will use the [Google Calendar MCP Server](/resources/integrations/productivity/google-calendar) to do it without you needing to leave the chat. +After analyzing the document, you decide that a meeting is needed with your colleague. You can ask the LLM to schedule a meeting and it will use the [Google Calendar MCP Server](/resources/integrations/productivity/googlecalendar) to do it without you needing to leave the chat. Or you could ask the LLM to send a summary of the analysis to your colleague by email and it would use the [Gmail MCP Server](/resources/integrations/productivity/gmail) for that. diff --git a/app/en/references/auth-providers/airtable/page.mdx b/app/en/references/auth-providers/airtable/page.mdx index a72ed9268..c87d2452e 100644 --- a/app/en/references/auth-providers/airtable/page.mdx +++ b/app/en/references/auth-providers/airtable/page.mdx @@ -7,7 +7,7 @@ The Airtable auth provider enables tools and agents to call [Airtable APIs](http Want to quickly get started with Airtable in your agent or AI app? The pre-built [Arcade Airtable MCP - Server](/resources/integrations/productivity/airtable-api) is what you want! + Server](/resources/integrations/productivity/airtableapi) is what you want! ### What's documented here @@ -16,7 +16,7 @@ This page describes how to use and configure Airtable auth with Arcade. This auth provider is used by: -- The [Arcade Airtable MCP Server](/resources/integrations/productivity/airtable-api), which provides pre-built tools for interacting with Airtable +- The [Arcade Airtable MCP Server](/resources/integrations/productivity/airtableapi), which provides pre-built tools for interacting with Airtable - Your [app code](#using-airtable-auth-in-app-code) that needs to call the Airtable API - Or, your [custom tools](#using-airtable-auth-in-custom-tools) that need to call the Airtable API @@ -248,7 +248,7 @@ const token = authResponse.context.token; ## Using Airtable auth in custom tools -You can use the pre-built [Arcade Airtable MCP Server](/resources/integrations/productivity/airtable-api) to quickly build agents and AI apps that interact with Airtable. +You can use the pre-built [Arcade Airtable MCP Server](/resources/integrations/productivity/airtableapi) to quickly build agents and AI apps that interact with Airtable. If the pre-built tools in the Airtable MCP Server don't meet your needs, you can author your own [custom tools](/guides/create-tools/tool-basics/build-mcp-server) that interact with the Airtable API. diff --git a/app/en/references/auth-providers/calendly/page.mdx b/app/en/references/auth-providers/calendly/page.mdx index 22ca7fc01..f3214058e 100644 --- a/app/en/references/auth-providers/calendly/page.mdx +++ b/app/en/references/auth-providers/calendly/page.mdx @@ -7,7 +7,7 @@ The Calendly auth provider enables tools and agents to call [Calendly APIs](http Want to quickly get started with Calendly in your agent or AI app? The pre-built [Arcade Calendly MCP - Server](/resources/integrations/productivity/calendly-api) is what you want! + Server](/resources/integrations/productivity/calendlyapi) is what you want! ### What's documented here @@ -16,7 +16,7 @@ This page describes how to use and configure Calendly auth with Arcade. This auth provider is used by: -- The [Arcade Calendly MCP Server](/resources/integrations/productivity/calendly-api), which provides pre-built tools for interacting with Calendly +- The [Arcade Calendly MCP Server](/resources/integrations/productivity/calendlyapi), which provides pre-built tools for interacting with Calendly - Your [app code](#using-calendly-auth-in-app-code) that needs to call the Calendly API - Or, your [custom tools](#using-calendly-auth-in-custom-tools) that need to call the Calendly API @@ -235,7 +235,7 @@ const token = authResponse.context.token; ## Using Calendly auth in custom tools -You can use the pre-built [Arcade Calendly MCP Server](/resources/integrations/productivity/calendly-api) to quickly build agents and AI apps that interact with Calendly. +You can use the pre-built [Arcade Calendly MCP Server](/resources/integrations/productivity/calendlyapi) to quickly build agents and AI apps that interact with Calendly. If the pre-built tools in the Calendly MCP Server don't meet your needs, you can author your own [custom tools](/guides/create-tools/tool-basics/build-mcp-server) that interact with the Calendly API. diff --git a/app/en/references/auth-providers/figma/page.mdx b/app/en/references/auth-providers/figma/page.mdx index 3d7abb1e5..09dbf35d3 100644 --- a/app/en/references/auth-providers/figma/page.mdx +++ b/app/en/references/auth-providers/figma/page.mdx @@ -6,7 +6,7 @@ The Figma auth provider enables tools and agents to call [Figma APIs](https://de Want to quickly get started with Figma in your agent or AI app? The pre-built - [Arcade Figma MCP Server](/resources/integrations/development/figma) is what you + [Arcade Figma MCP Server](/resources/integrations/others/figma) is what you want! @@ -16,13 +16,13 @@ This page describes how to use and configure Figma auth with Arcade. This auth provider is used by: -- The [Arcade Figma MCP Server](/resources/integrations/development/figma), which provides pre-built tools for interacting with Figma +- The [Arcade Figma MCP Server](/resources/integrations/others/figma), which provides pre-built tools for interacting with Figma - Your [app code](#using-figma-auth-in-app-code) that needs to call the Figma API - Or, your [custom tools](#using-figma-auth-in-custom-tools) that need to call the Figma API ### Required scopes for the Figma MCP Server -If you're using the [Arcade Figma MCP Server](/resources/integrations/development/figma), you'll need to configure these scopes based on which tools you plan to use: +If you're using the [Arcade Figma MCP Server](/resources/integrations/others/figma), you'll need to configure these scopes based on which tools you plan to use: - `file_content:read` - File structure, pages, nodes, and image exports - `library_content:read` - Published components, styles, and component sets from files @@ -282,7 +282,7 @@ const token = authResponse.context.token; ## Using Figma auth in custom tools -You can use the pre-built [Arcade Figma MCP Server](/resources/integrations/development/figma) to quickly build agents and AI apps that interact with Figma. +You can use the pre-built [Arcade Figma MCP Server](/resources/integrations/others/figma) to quickly build agents and AI apps that interact with Figma. If the pre-built tools in the Figma MCP Server don't meet your needs, you can author your own [custom tools](/guides/create-tools/tool-basics/build-mcp-server) that interact with the Figma API. diff --git a/app/en/references/auth-providers/mailchimp/page.mdx b/app/en/references/auth-providers/mailchimp/page.mdx index 4d8d92706..b1e83189a 100644 --- a/app/en/references/auth-providers/mailchimp/page.mdx +++ b/app/en/references/auth-providers/mailchimp/page.mdx @@ -6,7 +6,7 @@ The Mailchimp auth provider enables tools and agents to call [Mailchimp Marketin Want to quickly get started with Mailchimp in your agent or AI app? The - pre-built [Arcade Mailchimp Marketing MCP Server](/resources/integrations/productivity/mailchimp-marketing-api) + pre-built [Arcade Mailchimp Marketing MCP Server](/resources/integrations/others/mailchimpmarketingapi) is what you want! @@ -16,7 +16,7 @@ This page describes how to use and configure Mailchimp auth with Arcade. This auth provider is used by: -- The [Arcade Mailchimp Marketing MCP Server](/resources/integrations/productivity/mailchimp-marketing-api), which provides pre-built tools for interacting with Mailchimp +- The [Arcade Mailchimp Marketing MCP Server](/resources/integrations/others/mailchimpmarketingapi), which provides pre-built tools for interacting with Mailchimp - Your [app code](#using-mailchimp-auth-in-app-code) that needs to call the Mailchimp API - Or, your [custom tools](#using-mailchimp-auth-in-custom-tools) that need to call the Mailchimp API @@ -283,7 +283,7 @@ const apiEndpoint = metadata.api_endpoint; ## Using Mailchimp auth in custom tools -You can use the pre-built [Arcade Mailchimp Marketing MCP Server](/resources/integrations/productivity/mailchimp-marketing-api) to quickly build agents and AI apps that interact with Mailchimp. +You can use the pre-built [Arcade Mailchimp Marketing MCP Server](/resources/integrations/others/mailchimpmarketingapi) to quickly build agents and AI apps that interact with Mailchimp. If the pre-built tools in the Mailchimp MCP Server don't meet your needs, you can author your own [custom tools](/guides/create-tools/tool-basics/build-mcp-server) that interact with the Mailchimp API. diff --git a/app/en/references/auth-providers/microsoft/page.mdx b/app/en/references/auth-providers/microsoft/page.mdx index 42bb28c21..09a45b030 100644 --- a/app/en/references/auth-providers/microsoft/page.mdx +++ b/app/en/references/auth-providers/microsoft/page.mdx @@ -48,9 +48,9 @@ Below is the list of scopes required by the Arcade Microsoft MCP Servers: | MCP Server | Required Permissions | | -------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [Outlook Calendar](/resources/integrations/productivity/outlook-calendar) | `Calendars.ReadBasic`
`Calendars.ReadWrite`
`MailboxSettings.Read` | -| [Outlook Mail](/resources/integrations/productivity/outlook-mail) | `Mail.Read`
`Mail.ReadWrite`
`Mail.Send` | -| [Teams](/resources/integrations/social-communication/microsoft-teams) | `Channel.ReadBasic.All`
`ChannelMessage.Read.All`
`ChannelMessage.Send`
`Chat.Create`
`Chat.Read`
`ChatMessage.Read`
`ChatMessage.Send`
`People.Read`
`Team.ReadBasic.All`
`TeamMember.Read.All`
`User.Read` | +| [Outlook Calendar](/resources/integrations/productivity/outlookcalendar) | `Calendars.ReadBasic`
`Calendars.ReadWrite`
`MailboxSettings.Read` | +| [Outlook Mail](/resources/integrations/productivity/outlookmail) | `Mail.Read`
`Mail.ReadWrite`
`Mail.Send` | +| [Teams](/resources/integrations/social/microsoftteams) | `Channel.ReadBasic.All`
`ChannelMessage.Read.All`
`ChannelMessage.Send`
`Chat.Create`
`Chat.Read`
`ChatMessage.Read`
`ChatMessage.Send`
`People.Read`
`Team.ReadBasic.All`
`TeamMember.Read.All`
`User.Read` | | [SharePoint](/resources/integrations/productivity/sharepoint) | `Sites.Read.All` | ## Configuring your own Microsoft Auth Provider in Arcade diff --git a/app/en/references/auth-providers/miro/page.mdx b/app/en/references/auth-providers/miro/page.mdx index 80012252b..d0e8361cf 100644 --- a/app/en/references/auth-providers/miro/page.mdx +++ b/app/en/references/auth-providers/miro/page.mdx @@ -6,7 +6,7 @@ The Miro auth provider enables tools and agents to call [Miro APIs](https://deve Want to quickly get started with Miro in your agent or AI app? The pre-built - [Arcade Miro MCP Server](/resources/integrations/productivity/miro-api) is what you + [Arcade Miro MCP Server](/resources/integrations/productivity/miroapi) is what you want! @@ -16,7 +16,7 @@ This page describes how to use and configure Miro auth with Arcade. This auth provider is used by: -- The [Arcade Miro MCP Server](/resources/integrations/productivity/miro-api), which provides pre-built tools for interacting with Miro +- The [Arcade Miro MCP Server](/resources/integrations/productivity/miroapi), which provides pre-built tools for interacting with Miro - Your [app code](#using-miro-auth-in-app-code) that needs to call the Miro API - Or, your [custom tools](#using-miro-auth-in-custom-tools) that need to call the Miro API @@ -246,7 +246,7 @@ const token = authResponse.context.token; ## Using Miro auth in custom tools -You can use the pre-built [Arcade Miro MCP Server](/resources/integrations/productivity/miro-api) to quickly build agents and AI apps that interact with Miro. +You can use the pre-built [Arcade Miro MCP Server](/resources/integrations/productivity/miroapi) to quickly build agents and AI apps that interact with Miro. If the pre-built tools in the Miro MCP Server don't meet your needs, you can author your own [custom tools](/guides/create-tools/tool-basics/build-mcp-server) that interact with the Miro API. diff --git a/app/en/references/auth-providers/notion/page.mdx b/app/en/references/auth-providers/notion/page.mdx index 46deb1751..d19f99d64 100644 --- a/app/en/references/auth-providers/notion/page.mdx +++ b/app/en/references/auth-providers/notion/page.mdx @@ -141,7 +141,7 @@ const token = authResponse.context.token; ## Using Notion auth in custom tools -You can use the pre-built [Arcade Notion MCP Server](/resources/integrations/productivity/notion) to quickly build agents and AI apps that interact with Notion. +You can use the pre-built [Arcade Notion MCP Server](/resources/integrations/productivity/notiontoolkit) to quickly build agents and AI apps that interact with Notion. If the pre-built tools in the Notion MCP Server don't meet your needs, you can author your own [custom tools](/guides/create-tools/tool-basics/build-mcp-server) that interact with the Notion API. diff --git a/app/en/references/auth-providers/pagerduty/page.mdx b/app/en/references/auth-providers/pagerduty/page.mdx index 521f775dc..d19bd683f 100644 --- a/app/en/references/auth-providers/pagerduty/page.mdx +++ b/app/en/references/auth-providers/pagerduty/page.mdx @@ -11,7 +11,7 @@ Arcade currently supports **Classic** PagerDuty OAuth apps only. Choose Classic Want to quickly get started with PagerDuty in your agent or AI app? The pre-built [Arcade PagerDuty MCP - Server](/resources/integrations/development/pagerduty-api) is what you want! + Server](/resources/integrations/development/pagerdutyapi) is what you want! ### What's documented here @@ -20,7 +20,7 @@ This page describes how to use and configure PagerDuty auth with Arcade. This auth provider is used by: -- The [Arcade PagerDuty MCP Server](/resources/integrations/development/pagerduty-api), which provides pre-built tools for interacting with PagerDuty +- The [Arcade PagerDuty MCP Server](/resources/integrations/development/pagerdutyapi), which provides pre-built tools for interacting with PagerDuty - Your [app code](#using-pagerduty-auth-in-app-code) that needs to call the PagerDuty API - Or, your [custom tools](#using-pagerduty-auth-in-custom-tools) that need to call the PagerDuty API @@ -246,7 +246,7 @@ const token = authResponse.context.token; ## Using PagerDuty auth in custom tools -You can use the pre-built [Arcade PagerDuty MCP Server](/resources/integrations/development/pagerduty-api) to quickly build agents and AI apps that interact with PagerDuty. +You can use the pre-built [Arcade PagerDuty MCP Server](/resources/integrations/development/pagerdutyapi) to quickly build agents and AI apps that interact with PagerDuty. If the pre-built tools in the PagerDuty MCP Server don't meet your needs, you can author your own [custom tools](/guides/create-tools/tool-basics/build-mcp-server) that interact with the PagerDuty API. diff --git a/app/en/references/auth-providers/slack/page.mdx b/app/en/references/auth-providers/slack/page.mdx index 2c27805ad..febe16fc7 100644 --- a/app/en/references/auth-providers/slack/page.mdx +++ b/app/en/references/auth-providers/slack/page.mdx @@ -6,7 +6,7 @@ The Slack auth provider enables tools and agents to call [Slack APIs](https://ap Want to quickly get started with Slack in your agent or AI app? The pre-built - [Arcade Slack MCP Server](/resources/integrations/social-communication/slack) is what you + [Arcade Slack MCP Server](/resources/integrations/social/slack) is what you want! @@ -16,7 +16,7 @@ This page describes how to use and configure Slack auth with Arcade. This auth provider is used by: -- The [Arcade Slack MCP Server](/resources/integrations/social-communication/slack), which provides pre-built tools for interacting with Slack +- The [Arcade Slack MCP Server](/resources/integrations/social/slack), which provides pre-built tools for interacting with Slack - Your [app code](#using-slack-auth-in-app-code) that needs to call the Slack API - Or, your [custom tools](#using-slack-auth-in-custom-tools) that need to call the Slack API @@ -40,12 +40,12 @@ Before showing how to configure your Slack app credentials, let's go through the In May 29, 2025, [Slack announced](https://api.slack.com/changelog/2025-05-terms-rate-limit-update-and-faq) changes to their API rate-limits and terms of service for apps that are not approved for the Slack Marketplace. -The `conversations.history` and `conversations.replies` endpoints are now limited to 1 request/minute and up to 15 objects returned per request. This affects various tools in the [Arcade Slack MCP Server](/resources/integrations/social-communication/slack). Additionally, the [API Terms of Service](https://slack.com/terms-of-service/api) now requires [Slack Marketplace](https://api.slack.com/slack-marketplace/using) approval for commercial distribution. +The `conversations.history` and `conversations.replies` endpoints are now limited to 1 request/minute and up to 15 objects returned per request. This affects various tools in the [Arcade Slack MCP Server](/resources/integrations/social/slack). Additionally, the [API Terms of Service](https://slack.com/terms-of-service/api) now requires [Slack Marketplace](https://api.slack.com/slack-marketplace/using) approval for commercial distribution. - Follow Slack's guide to [registering a Slack app](https://api.slack.com/quickstart) -- If you plan to use the [Arcade Slack MCP Server](/resources/integrations/social-communication/slack), select the scopes below (include additional scopes for your application's authorization needs or custom tools, in any): +- If you plan to use the [Arcade Slack MCP Server](/resources/integrations/social/slack), select the scopes below (include additional scopes for your application's authorization needs or custom tools, in any): - `channels:history` - `channels:read` - `chat:write` @@ -177,7 +177,7 @@ const token = authResponse.context.token; ## Using Slack auth in custom tools -You can use the pre-built [Arcade Slack MCP Server](/resources/integrations/social-communication/slack) to quickly build agents and AI apps that interact with Slack. +You can use the pre-built [Arcade Slack MCP Server](/resources/integrations/social/slack) to quickly build agents and AI apps that interact with Slack. If the pre-built tools in the Slack MCP Server don't meet your needs, you can author your own [custom tools](/guides/create-tools/tool-basics/build-mcp-server) that interact with the Slack API. diff --git a/app/en/references/auth-providers/square/page.mdx b/app/en/references/auth-providers/square/page.mdx index 4d0756fac..2a8402586 100644 --- a/app/en/references/auth-providers/square/page.mdx +++ b/app/en/references/auth-providers/square/page.mdx @@ -6,7 +6,7 @@ The Square auth provider enables tools and agents to call [Square APIs](https:// Want to quickly get started with Square in your agent or AI app? The pre-built - [Arcade Square MCP Server](/resources/integrations/productivity/squareup-api) is what you + [Arcade Square MCP Server](/resources/integrations/productivity/squareupapi) is what you want! @@ -16,7 +16,7 @@ This page describes how to use and configure Square auth with Arcade. This auth provider is used by: -- The [Arcade Square MCP Server](/resources/integrations/productivity/squareup-api), which provides pre-built tools for interacting with Square +- The [Arcade Square MCP Server](/resources/integrations/productivity/squareupapi), which provides pre-built tools for interacting with Square - Your [app code](#using-square-auth-in-app-code) that needs to call the Square API - Or, your [custom tools](#using-square-auth-in-custom-tools) that need to call the Square API @@ -248,7 +248,7 @@ const token = authResponse.context.token; ## Using Square auth in custom tools -You can use the pre-built [Arcade Square MCP Server](/resources/integrations/productivity/squareup-api) to quickly build agents and AI apps that interact with Square. +You can use the pre-built [Arcade Square MCP Server](/resources/integrations/productivity/squareupapi) to quickly build agents and AI apps that interact with Square. If the pre-built tools in the Square MCP Server don't meet your needs, you can author your own [custom tools](/guides/create-tools/tool-basics/build-mcp-server) that interact with the Square API. diff --git a/app/en/references/auth-providers/ticktick/page.mdx b/app/en/references/auth-providers/ticktick/page.mdx index f516b3dd7..14ff5bbc7 100644 --- a/app/en/references/auth-providers/ticktick/page.mdx +++ b/app/en/references/auth-providers/ticktick/page.mdx @@ -7,7 +7,7 @@ The TickTick auth provider enables tools and agents to call [TickTick APIs](http Want to quickly get started with TickTick in your agent or AI app? The pre-built [Arcade TickTick API MCP - Server](/resources/integrations/productivity/ticktick-api) is what you want! + Server](/resources/integrations/productivity/ticktickapi) is what you want! ### What's documented here @@ -16,7 +16,7 @@ This page describes how to use and configure TickTick auth with Arcade. This auth provider is used by: -- The [Arcade TickTick API MCP Server](/resources/integrations/productivity/ticktick-api), which provides pre-built tools for interacting with TickTick +- The [Arcade TickTick API MCP Server](/resources/integrations/productivity/ticktickapi), which provides pre-built tools for interacting with TickTick - Your [app code](#using-ticktick-auth-in-app-code) that needs to call the TickTick API - Or, your [custom tools](#using-ticktick-auth-in-custom-tools) that need to call the TickTick API @@ -251,7 +251,7 @@ const token = authResponse.context.token; ## Using TickTick auth in custom tools -You can use the pre-built [Arcade TickTick API MCP Server](/resources/integrations/productivity/ticktick-api) to quickly build agents and AI apps that interact with TickTick. +You can use the pre-built [Arcade TickTick API MCP Server](/resources/integrations/productivity/ticktickapi) to quickly build agents and AI apps that interact with TickTick. If the pre-built tools in the TickTick MCP Server don't meet your needs, you can author your own [custom tools](/guides/create-tools/tool-basics/build-mcp-server) that interact with the TickTick API. diff --git a/app/en/references/auth-providers/x/page.mdx b/app/en/references/auth-providers/x/page.mdx index b67fcec1e..473f1bfca 100644 --- a/app/en/references/auth-providers/x/page.mdx +++ b/app/en/references/auth-providers/x/page.mdx @@ -6,7 +6,7 @@ The X auth provider enables tools and agents to call the X (Twitter) API on beha Want to quickly get started with X services in your agent or AI app? The - pre-built [Arcade X MCP Server](/resources/integrations/social-communication/x) is what you + pre-built [Arcade X MCP Server](/resources/integrations/social/x) is what you want! @@ -16,7 +16,7 @@ This page describes how to use and configure X auth with Arcade. This auth provider is used by: -- The [Arcade X MCP Server](/resources/integrations/social-communication/x), which provides pre-built tools for interacting with X +- The [Arcade X MCP Server](/resources/integrations/social/x), which provides pre-built tools for interacting with X - Your [app code](#using-x-auth-in-app-code) that needs to call X APIs - Or, your [custom tools](#using-x-auth-in-custom-tools) that need to call X APIs @@ -154,7 +154,7 @@ const token = authResponse.context.token; ## Using X auth in custom tools -You can use the pre-built [Arcade X MCP Server](/resources/integrations/social-communication/x) to quickly build agents and AI apps that interact with X. +You can use the pre-built [Arcade X MCP Server](/resources/integrations/social/x) to quickly build agents and AI apps that interact with X. If the pre-built tools in the X MCP Server don't meet your needs, you can author your own [custom tools](/guides/create-tools/tool-basics/build-mcp-server) that interact with the X API. diff --git a/app/en/references/auth-providers/zoho/page.mdx b/app/en/references/auth-providers/zoho/page.mdx index ca6e2eefa..ddd855ba8 100644 --- a/app/en/references/auth-providers/zoho/page.mdx +++ b/app/en/references/auth-providers/zoho/page.mdx @@ -7,8 +7,8 @@ The Zoho auth provider enables tools and agents to call [Zoho APIs](https://www. Want to quickly get started with Zoho in your agent or AI app? Check out the pre-built Arcade Zoho MCP Servers: - [Zoho Books API MCP - Server](/resources/integrations/payments/zoho-books-api) - [Zoho Creator API MCP - Server](/resources/integrations/development/zoho-creator-api) + Server](/resources/integrations/payments/zohobooksapi) + - Zoho Creator API MCP Server (coming soon) ### What's documented here @@ -17,8 +17,8 @@ This page describes how to use and configure Zoho auth with Arcade. This auth provider is used by: -- The [Arcade Zoho Books API MCP Server](/resources/integrations/payments/zoho-books-api), which provides pre-built tools for interacting with Zoho Books -- The [Arcade Zoho Creator API MCP Server](/resources/integrations/development/zoho-creator-api), which provides pre-built tools for interacting with Zoho Creator +- The [Arcade Zoho Books API MCP Server](/resources/integrations/payments/zohobooksapi), which provides pre-built tools for interacting with Zoho Books +- The Arcade Zoho Creator API MCP Server (coming soon), which will provide pre-built tools for interacting with Zoho Creator - Your [app code](#using-zoho-auth-in-app-code) that needs to call Zoho APIs - Or, your [custom tools](#using-zoho-auth-in-custom-tools) that need to call Zoho APIs @@ -275,7 +275,7 @@ const token = authResponse.context.token; ## Using Zoho auth in custom tools -You can use the pre-built Arcade Zoho MCP Servers ([Zoho Books](/resources/integrations/payments/zoho-books-api), [Zoho Creator](/resources/integrations/development/zoho-creator-api)) to quickly build agents and AI apps that interact with Zoho. +You can use the pre-built Arcade Zoho MCP Servers ([Zoho Books](/resources/integrations/payments/zohobooksapi), Zoho Creator (coming soon)) to quickly build agents and AI apps that interact with Zoho. If the pre-built tools don't meet your needs, you can author your own [custom tools](/guides/create-tools/tool-basics/build-mcp-server) that interact with Zoho APIs. diff --git a/app/en/references/changelog/page.mdx b/app/en/references/changelog/page.mdx index d919cced5..6d07aea25 100644 --- a/app/en/references/changelog/page.mdx +++ b/app/en/references/changelog/page.mdx @@ -265,8 +265,8 @@ t **Toolkits** -- `[feature - 🚀]` Box.com Starter MCP Server released ([docs](/resources/integrations/productivity/box-api)) -- `[feature - 🚀]` Stripe Starter MCP Server released ([docs](/resources/integrations/payments/stripe_api)) +- `[feature - 🚀]` Box.com Starter MCP Server released ([docs](/resources/integrations/productivity/boxapi)) +- `[feature - 🚀]` Stripe Starter MCP Server released ([docs](/resources/integrations/payments/stripeapi)) **Misc** diff --git a/app/en/resources/integrations/_lib/toolkit-docs-page.tsx b/app/en/resources/integrations/_lib/toolkit-docs-page.tsx new file mode 100644 index 000000000..9e64e4e60 --- /dev/null +++ b/app/en/resources/integrations/_lib/toolkit-docs-page.tsx @@ -0,0 +1,62 @@ +import type { Metadata } from "next"; +import { notFound } from "next/navigation"; +import { ToolkitPage } from "@/app/_components/toolkit-docs"; +import { readToolkitData } from "@/app/_lib/toolkit-data"; +import { + getToolkitStaticParamsForCategory, + type IntegrationCategory, + normalizeToolkitId, +} from "@/app/_lib/toolkit-static-params"; + +type ToolkitDocsParams = { + toolkitId: string; +}; + +export function createToolkitDocsPage(category: IntegrationCategory) { + const dataCache = new Map>(); + + const getToolkitData = async (toolkitId: string) => { + const normalizedId = normalizeToolkitId(toolkitId); + const cached = dataCache.get(normalizedId); + if (cached) { + return await cached; + } + + const promise = readToolkitData(normalizedId); + dataCache.set(normalizedId, promise); + return await promise; + }; + + const generateStaticParams = async () => + await getToolkitStaticParamsForCategory(category); + + const generateMetadata = async ({ + params, + }: { + params: Promise; + }): Promise => { + const { toolkitId } = await params; + const data = await getToolkitData(toolkitId); + if (!data) { + return {}; + } + + return { + title: data.label || data.id, + description: data.description || "Generated MCP server documentation.", + }; + }; + + const Page = async ({ params }: { params: Promise }) => { + const { toolkitId } = await params; + const data = await getToolkitData(toolkitId); + + if (!data) { + notFound(); + } + + return ; + }; + + return { generateMetadata, generateStaticParams, Page }; +} diff --git a/app/en/resources/integrations/_meta.tsx b/app/en/resources/integrations/_meta.tsx index 9c0691602..91921a0a6 100644 --- a/app/en/resources/integrations/_meta.tsx +++ b/app/en/resources/integrations/_meta.tsx @@ -18,7 +18,7 @@ const meta: MetaRecord = { productivity: { title: "Productivity & Docs", }, - "social-communication": { + social: { title: "Social & Communication", }, entertainment: { @@ -36,12 +36,12 @@ const meta: MetaRecord = { sales: { title: "Sales", }, - databases: { - title: "Databases", - }, "customer-support": { title: "Customer Support", }, + others: { + title: "Others", + }, "-- Submit your Server": { type: "separator", title: "Submit your server", @@ -49,6 +49,10 @@ const meta: MetaRecord = { "contribute-a-server": { title: "Contribute a Server", }, + preview: { + title: "All Toolkits", + display: "hidden", + }, }; export default meta; diff --git a/app/en/resources/integrations/components/tool-card.tsx b/app/en/resources/integrations/components/tool-card.tsx index 66feff6ef..14ff067de 100644 --- a/app/en/resources/integrations/components/tool-card.tsx +++ b/app/en/resources/integrations/components/tool-card.tsx @@ -9,6 +9,7 @@ import { type ToolkitType, } from "@arcadeai/design-system"; import { cn } from "@arcadeai/design-system/lib/utils"; +import { Package } from "lucide-react"; import Link from "next/link"; import posthog from "posthog-js"; import type React from "react"; @@ -18,7 +19,8 @@ import { TOOL_CARD_TYPE_CONFIG } from "./type-config"; type ToolCardProps = { name: string; - icon: React.ComponentType>; + icon?: React.ComponentType> | null; + iconUrl?: string; link: string; type: ToolkitType; isComingSoon?: boolean; @@ -29,6 +31,7 @@ type ToolCardProps = { export const ToolCard: React.FC = ({ name: toolName, icon: ToolkitIcon, + iconUrl, link, type, isComingSoon = false, @@ -67,6 +70,23 @@ export const ToolCard: React.FC = ({ setIsModalOpen(false); }; + let iconNode: React.ReactNode; + if (ToolkitIcon) { + iconNode = ; + } else if (iconUrl) { + iconNode = ( + {`${toolName} + ); + } else { + iconNode = ; + } + const cardContent = ( = ({
- + {iconNode}
diff --git a/app/en/resources/integrations/components/toolkits.tsx b/app/en/resources/integrations/components/toolkits.tsx index c75be2eaf..c9c571f71 100644 --- a/app/en/resources/integrations/components/toolkits.tsx +++ b/app/en/resources/integrations/components/toolkits.tsx @@ -14,20 +14,37 @@ import { ToolCard } from "./tool-card"; import { TYPE_CONFIG, TYPE_DESCRIPTIONS } from "./type-config"; import { useFilterStore, useToolkitFilters } from "./use-toolkit-filters"; -// Pattern: /en/mcp-servers/{category}/{tool} -> /en/resources/integrations/{category}/{tool} -const MCP_SERVER_PATTERN = /^\/en\/mcp-servers\/([^/]+)\/([^/]+)$/; +// Map toolkits to their category page (JSON-rendered pages). +function mapToToolkitPage(toolkitId: string, category: string): string { + return `/en/resources/integrations/${category}/${toolkitId.toLowerCase()}`; +} + +/** + * Get toolkit icon with fallback for API toolkits. + * If "GithubApi" has no icon, falls back to "Github" icon. + */ +function getToolkitIconWithFallback( + toolkitId: string +): React.ComponentType> | null { + const apiSuffix = "api"; -// Map old MCP server paths to new integration paths -function mapToNewIA(oldLink: string): string { - const match = oldLink.match(MCP_SERVER_PATTERN); + // Try direct match first + const directIcon = getToolkitIcon(toolkitId); + if (directIcon) { + return directIcon; + } - if (match) { - const [, category, tool] = match; - return `/en/resources/integrations/${category}/${tool}`; + // For API toolkits, try the base provider ID + const normalizedId = toolkitId.toLowerCase(); + if (normalizedId.endsWith(apiSuffix)) { + const baseProviderId = toolkitId.slice(0, -apiSuffix.length); // Remove "Api" suffix + const baseIcon = getToolkitIcon(baseProviderId); + if (baseIcon) { + return baseIcon; + } } - // Return original link if it doesn't match the pattern - return oldLink; + return null; } export default function Toolkits() { @@ -130,16 +147,25 @@ export default function Toolkits() { ) : (
{filteredToolkits.map((toolkit) => { - // Get the icon component from the Design System utility - const IconComponent = getToolkitIcon(toolkit.id); + // Get icon with fallback for API toolkits (e.g., GithubApi → Github) + const IconComponent = getToolkitIconWithFallback(toolkit.id); + // Use publicIconUrl from Design System as additional fallback + const iconUrl = + "publicIconUrl" in toolkit + ? (toolkit.publicIconUrl as string) + : undefined; return ( diff --git a/app/en/resources/integrations/customer-support/[toolkitId]/_meta.tsx b/app/en/resources/integrations/customer-support/[toolkitId]/_meta.tsx new file mode 100644 index 000000000..ce7f0efde --- /dev/null +++ b/app/en/resources/integrations/customer-support/[toolkitId]/_meta.tsx @@ -0,0 +1,13 @@ +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "*": { + theme: { + breadcrumb: false, + toc: false, + copyPage: false, + }, + }, +}; + +export default meta; diff --git a/app/en/resources/integrations/customer-support/[toolkitId]/page-impl.tsx b/app/en/resources/integrations/customer-support/[toolkitId]/page-impl.tsx new file mode 100644 index 000000000..209ea7b4a --- /dev/null +++ b/app/en/resources/integrations/customer-support/[toolkitId]/page-impl.tsx @@ -0,0 +1,10 @@ +import { createToolkitDocsPage } from "@/app/en/resources/integrations/_lib/toolkit-docs-page"; + +export const dynamicParams = false; + +const { Page, generateMetadata, generateStaticParams } = + createToolkitDocsPage("customer-support"); + +export { generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/customer-support/[toolkitId]/page.mdx b/app/en/resources/integrations/customer-support/[toolkitId]/page.mdx new file mode 100644 index 000000000..ca97c319f --- /dev/null +++ b/app/en/resources/integrations/customer-support/[toolkitId]/page.mdx @@ -0,0 +1,14 @@ +--- +title: "MCP server" +description: "Generated MCP server documentation." +--- + +import Page, { + dynamicParams, + generateMetadata, + generateStaticParams, +} from "./page-impl"; + +export { dynamicParams, generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/customer-support/_meta.tsx b/app/en/resources/integrations/customer-support/_meta.tsx index c05c04093..e88ace95c 100644 --- a/app/en/resources/integrations/customer-support/_meta.tsx +++ b/app/en/resources/integrations/customer-support/_meta.tsx @@ -1,21 +1,37 @@ import type { MetaRecord } from "nextra"; const meta: MetaRecord = { - "*": { - theme: { - breadcrumb: true, - toc: true, - copyPage: true, - }, + "-- Optimized": { + type: "separator", + title: "Optimized", }, zendesk: { title: "Zendesk", + href: "/en/resources/integrations/customer-support/zendesk", }, - pylon: { - title: "Pylon", + "-- Starter": { + type: "separator", + title: "Starter", }, - pagerduty: { - title: "PagerDuty", + customerioapi: { + title: "Customer.io API", + href: "/en/resources/integrations/customer-support/customerioapi", + }, + customeriopipelinesapi: { + title: "Customer.io Pipelines API", + href: "/en/resources/integrations/customer-support/customeriopipelinesapi", + }, + customeriotrackapi: { + title: "Customer.io Track API", + href: "/en/resources/integrations/customer-support/customeriotrackapi", + }, + freshserviceapi: { + title: "Freshservice API", + href: "/en/resources/integrations/customer-support/freshserviceapi", + }, + intercomapi: { + title: "Intercom API", + href: "/en/resources/integrations/customer-support/intercomapi", }, }; diff --git a/app/en/resources/integrations/customer-support/customerio-api/page.mdx b/app/en/resources/integrations/customer-support/customerio-api/page.mdx deleted file mode 100644 index d0650e7ab..000000000 --- a/app/en/resources/integrations/customer-support/customerio-api/page.mdx +++ /dev/null @@ -1,4033 +0,0 @@ -# CustomerioApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The CustomerioApi MCP Server offers a comprehensive suite of tools for managing customer communications and marketing campaigns through the Customer.io platform. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## CustomerioApi.TriggerBroadcastMessage - -
- - -Trigger a broadcast to a specific audience using Customerio. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **broadcast_id** (`integer`, optional) The unique ID of the broadcast campaign you want to trigger in Customerio. This ID is required to specify which broadcast to activate. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetBroadcastErrors - -
- - -Retrieve details of broadcast validation errors. - -**Parameters** - -- **broadcast_id** (`integer`, required) The ID of the broadcast to retrieve error information for. Use this to specify which broadcast's errors you want to investigate. -- **campaign_trigger_id** (`integer`, required) The ID of the campaign trigger to return information for. Use this to focus on specific trigger details. -- **page_start_token** (`string`, optional) Token to specify which page of results to return. Use the `next` value from responses to navigate pages. -- **results_per_page** (`integer`, optional) The maximum number of results to retrieve per page. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.SendTransactionalEmail - -
- - -Send a customizable transactional email. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.SendTransactionalPushNotification - -
- - -Send a customized transactional push notification. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.SendTransactionalSms - -
- - -Send a transactional SMS message using a template. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetCampaignList - -
- - -Retrieve a list of marketing campaigns. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetCampaignMetadata - -
- - -Retrieve metadata for a specific campaign. - -**Parameters** - -- **campaign_id** (`integer`, required) The ID of the campaign for which metadata is requested. Provide a valid integer. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetCampaignMetrics - -
- - -Fetch metrics for an individual campaign. - -**Parameters** - -- **campaign_id** (`integer`, required) The unique ID of the campaign to retrieve metrics for. -- **metrics_api_version** (`string`, required) Specify the version of the metrics API to use. Recommended value is '2'. -- **end_time_unix** (`integer`, optional) Unix timestamp marking the end of the metrics period. Use only with version 2. Limited to 10 years from the start parameter. -- **metrics_item_type** (`string`, optional) Specify the type of item for metrics: email, webhook, twilio, slack, push, in_app. Leave empty for all types. -- **metrics_start_timestamp** (`integer`, optional) Unix timestamp marking the start of the metrics period for version 2. -- **number_of_steps** (`integer`, optional) (Version 1 only) The number of periods to return, with defaults and maximum limits based on the period unit (e.g., hours, days). -- **resolution** (`string`, optional) Determines increment for metrics—hourly, daily, weekly, or monthly. Only for Version 2. -- **timezone_for_metrics** (`string`, optional) For version 2 only. Specify the time zone for the metrics requested. Defaults to EST if not provided. Use the region format. -- **version_1_time_unit** (`string`, optional) For Version 1 only, specify the time unit for the report. Options include hours, days, weeks, or months. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetCampaignLinkMetrics - -
- - -Get link click metrics for a campaign over specified periods. - -**Parameters** - -- **campaign_identifier** (`integer`, required) The unique identifier for the campaign you want metrics for. Use this ID to specify the target campaign. -- **count_unique_customers** (`boolean`, optional) Set to true to only include unique customer results. Set to false to count all clicks. -- **number_of_periods** (`integer`, optional) The number of periods to return metrics for. Defaults to the maximum available, or 12 if the period is in months. Maximums are 24 hours, 45 days, 12 weeks, or 121 months. -- **report_time_unit** (`string`, optional) The unit of time for the report. Options are: 'hours', 'days', 'weeks', 'months'. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.ListCampaignActions - -
- - -Retrieve operations in a campaign workflow. - -**Parameters** - -- **campaign_id** (`integer`, required) The ID of the campaign to retrieve workflow information for. Must be an integer. -- **page_token** (`string`, optional) Token for the results page to return. Use 'next' from the response as this value for subsequent pages. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetCampaignMessages - -
- - -Retrieve message deliveries from a campaign. - -**Parameters** - -- **campaign_id** (`integer`, required) The ID of the campaign to fetch message deliveries from. -- **beginning_timestamp** (`integer`, optional) The starting timestamp for the query to filter messages from a specific time. -- **end_timestamp** (`integer`, optional) The ending timestamp for your query to specify the end of the time range for retrieving message deliveries. -- **message_type** (`string`, optional) Specify the type of item for metrics (e.g., email, webhook, slack, etc.). Defaults to all types if empty. -- **metrics_to_return** (`string`, optional) Specify the metrics you want to retrieve, such as 'sent', 'opened', or 'clicked'. -- **pagination_token** (`string`, optional) Token indicating the starting point for the page of results to return. Use the `next` property from previous responses. -- **results_per_page** (`integer`, optional) Specify the maximum number of results to retrieve per page. It determines the number of message deliveries returned in a single API response. -- **return_drafts** (`boolean`, optional) Set to true to return drafts rather than active/sent messages. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetCampaignActionInfo - -
- - -Retrieve details for a specific action in a campaign. - -**Parameters** - -- **action_id** (`integer`, required) The identifier for the campaign action you want to look up or act on. Provide the integer ID of the action. -- **campaign_identifier** (`integer`, required) The unique ID of the campaign for retrieving specific action information. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UpdateCampaignAction - -
- - -Update campaign action details and content. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **campaign_id** (`integer`, optional) The numeric ID of the specific campaign to update or retrieve information about. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **action_id** (`integer`, optional) The identifier for the specific action within a campaign to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.TranslateCampaignMessage - -
- - -Fetches a translated message for a specific campaign action. - -**Parameters** - -- **campaign_action_id** (`integer`, required) The ID of the action to look up or act on within the campaign. -- **campaign_id** (`integer`, required) The numeric ID of the campaign to get information about or trigger. -- **target_language** (`string`, required) A language tag for the language variant to translate to. Defaults to the default language if empty. Returns an error if the variant doesn't exist. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UpdateCampaignActionTranslation - -
- - -Update a language variant of a campaign action. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **campaign_id** (`integer`, optional) The ID of the campaign to update or retrieve information about. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **action_id** (`integer`, optional) The ID of the action to look up or act on for the campaign. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **language_tag** (`string`, optional) The language tag for the campaign action variant. Use an empty string for the default language. If the variant doesn't exist, an error is returned. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetCampaignActionMetrics - -
- - -Retrieve metrics for a specific campaign action. - -**Parameters** - -- **action_identifier** (`integer`, required) The ID of the specific action to retrieve metrics for within a campaign. -- **campaign_id** (`integer`, required) The integer ID of the campaign to retrieve metrics for. -- **metrics_api_version** (`string`, required) Specify the version of the metrics API to use. Recommended to use version '2'. -- **item_type_for_metrics** (`string`, optional) Specify the type of item to return metrics for, such as 'email', 'webhook', 'twilio', etc. Leaving it empty returns metrics for all types. -- **metrics_end_timestamp** (`integer`, optional) The Unix timestamp marking the end of the metrics period. Applicable only for Version 2 and limited to 10 years from the start timestamp. -- **metrics_resolution** (`string`, optional) Specifies the increment for metrics in version 2. Options are hourly, daily, weekly, or monthly. -- **metrics_start_timestamp** (`integer`, optional) Unix timestamp for the start of metrics (Version 2 only). -- **number_of_steps** (`integer`, optional) For Version 1 only. Specifies the number of time periods to return. Defaults to the maximum, or `12` if in months. Maximums are 24 hours, 45 days, 12 weeks, or 120 months. -- **timezone** (`string`, optional) The time zone in region format for the metrics. Default is EST if not specified. -- **version_1_time_unit** (`string`, optional) Specifies the time unit for the report in Version 1 (e.g., hours, days, weeks, months). - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetCampaignActionLinkMetrics - -
- - -Retrieve link click metrics for a specific campaign action. - -**Parameters** - -- **action_identifier** (`integer`, required) The identifier of the action to lookup or perform an operation on in the campaign. It is expected to be an integer. -- **campaign_id** (`integer`, required) The unique ID of the campaign to retrieve metrics for. Ensure this is a valid integer. -- **metric_item_type** (`string`, optional) Specify the type of item to return metrics for. Acceptable values are 'email', 'webhook', 'twilio', 'slack', 'push', 'in_app'. Leave empty for metrics of all types. -- **number_of_periods_to_return** (`integer`, optional) Number of periods to return metrics for. Defaults to max available or 12 if in months. Max: 24 hours, 45 days, 12 weeks, 121 months. -- **report_time_unit** (`string`, optional) The unit of time for the report. Options: hours, days, weeks, or months. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetCampaignJourneyMetrics - -
- - -Retrieve journey metrics for a specific campaign. - -**Parameters** - -- **campaign_id** (`integer`, required) The ID of the campaign to return journey metrics for. -- **end_timestamp** (`integer`, required) The Unix timestamp marking the end of the journey metrics report period. -- **metrics_resolution** (`string`, required) Determines the increment for metrics reporting: hourly, daily, weekly, or monthly. -- **start_timestamp** (`integer`, required) The UNIX timestamp marking the start of the journey metrics report period. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.ListRecentActivities - -
- - -Retrieve recent activity logs from the past 30 days. - -**Parameters** - -- **activity_type** (`string`, optional) Specifies the type of activity to search for. Use specific activity types or patterns like `_o:` for objects and `_r:` for relationships. -- **customer_id_type** (`string`, optional) Specify the type of `customer_id` to reference a person. Options are `id`, `email`, or `cio_id`. Default is `id`. -- **event_or_attribute_name** (`string`, optional) The name of the event or attribute to return in the activity logs. -- **include_deleted_people** (`boolean`, optional) If true, return results for deleted people in the list of activities. -- **pagination_token** (`string`, optional) Token to specify the page of results to return. Use the `next` property from the previous response. -- **person_identifier** (`string`, optional) The identifier for the person to look up, which can be their `id`, `email`, or `cio_id`. Prefix with `cio_` for `cio_id`. -- **results_per_page_limit** (`integer`, optional) Specify the maximum number of activity results to retrieve per page. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.ListBroadcasts - -
- - -Retrieve a list of API-triggered broadcasts with metadata. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetBroadcastMetadata - -
- - -Retrieve metadata for a specific broadcast. - -**Parameters** - -- **broadcast_identifier** (`integer`, required) The unique identifier for a specific broadcast. Use this to retrieve the corresponding metadata. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetBroadcastStatus - -
- - -Retrieve the status of a broadcast using its trigger ID. - -**Parameters** - -- **broadcast_identifier** (`integer`, required) The unique ID of the broadcast to retrieve information about. This should be an integer. -- **campaign_trigger_id** (`integer`, required) The ID of the specific campaign trigger whose status you want to retrieve. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetBroadcastMetrics - -
- - -Retrieve metrics for a specific broadcast over defined time steps. - -**Parameters** - -- **broadcast_identifier** (`integer`, required) The unique integer identifier for a specific broadcast. -- **metric_type** (`string`, optional) Specify the type of item to return metrics for. Options include 'email', 'webhook', 'twilio', 'slack', 'push', and 'in_app'. Leave empty to get metrics for all types. -- **number_of_time_periods** (`integer`, optional) The number of time periods to return metrics for. Follow the specific period limits: 24 for hours, 45 for days, 12 for weeks, or 121 for months. Defaults if not specified: to maximum available or 12 for monthly periods. Days start at 00:00 EST, weeks at 00:00 EST on Sunday, and months at 00:00 EST on the 1st. -- **time_period_unit** (`string`, optional) Specifies the unit of time for the report, such as hours, days, weeks, or months. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetBroadcastLinkMetrics - -
- - -Retrieve metrics for link clicks in a broadcast. - -**Parameters** - -- **broadcast_identifier** (`integer`, required) The numeric identifier of the broadcast for which link metrics are needed. -- **period_steps** (`integer`, optional) Specify the number of time periods to return. Defaults to the maximum or 12 if the period is 'months'. Max: 24 hours, 45 days, 12 weeks, or 121 months. -- **report_period** (`string`, optional) Defines the unit of time for the report. Options are 'hours', 'days', 'weeks', or 'months'. -- **return_unique_customer_results** (`boolean`, optional) Set to true to return only unique customer results, ensuring each customer is counted once regardless of clicks. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetBroadcastActions - -
- - -Retrieve actions from a specific broadcast. - -**Parameters** - -- **broadcast_identifier** (`integer`, required) The unique identifier of the broadcast to retrieve its actions. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetBroadcastMessageInfo - -
- - -Retrieve details about broadcast message deliveries. - -**Parameters** - -- **broadcast_identifier** (`integer`, required) The ID used to identify the specific broadcast to retrieve information about. -- **beginning_timestamp** (`integer`, optional) The start timestamp for the query, defining the beginning of the time range for message retrieval. -- **broadcast_state** (`string`, optional) Specifies the state of a broadcast message. Options are: 'failed', 'sent', 'drafted', or 'attempted'. -- **ending_timestamp** (`integer`, optional) The endpoint of the time range for the query. It must be an integer representing a timestamp. -- **item_type** (`string`, optional) Specify the type of item to return metrics for (e.g., email, webhook). Leave empty for all types. -- **maximum_results_per_page** (`integer`, optional) Specify the maximum number of message deliveries to retrieve per page. Adjust to control the pagination size for results. -- **metric_type** (`string`, optional) Select the metric(s) to be returned. Options include: 'attempted', 'sent', 'delivered', 'opened', 'clicked', 'converted', 'bounced', 'spammed', 'unsubscribed', 'dropped', 'failed', 'undeliverable'. -- **pagination_start_token** (`string`, optional) Token for the page of results to return. Use the 'next' property from responses for this value to get the next page. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetBroadcastActionInfo - -
- - -Retrieve details of a specific broadcast action. - -**Parameters** - -- **action_id** (`integer`, required) The ID of the action to look up or act on within a broadcast. -- **broadcast_identifier** (`integer`, required) The numeric identifier of the broadcast to retrieve action details from. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UpdateBroadcastAction - -
- - -Update the contents of a broadcast action. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **broadcast_id** (`integer`, optional) The identifier of a broadcast to update its contents. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **lookup_action_id** (`integer`, optional) The unique identifier for the action to update or modify in the broadcast. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetBroadcastTranslationInfo - -
- - -Retrieve translation info for a broadcast message. - -**Parameters** - -- **action_id** (`integer`, required) The identifier for the action you want to lookup or act on. Used to retrieve specific translation details. -- **broadcast_identifier** (`integer`, required) The unique identifier for a broadcast. Integer type is expected. -- **language_tag** (`string`, required) The language tag for the translation. Use an empty string for the default language. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UpdateBroadcastActionLanguage - -
- - -Update the translation for a broadcast action. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **broadcast_identifier** (`integer`, optional) The unique identifier for the broadcast you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **action_id** (`integer`, optional) The ID of the broadcast action you wish to update or query. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **broadcast_action_language** (`string`, optional) Specify the language tag for the broadcast translation. Defaults to the default language if an empty string is provided. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetBroadcastActionMetrics - -
- - -Retrieve metrics for a broadcast action over time steps. - -**Parameters** - -- **broadcast_identifier** (`integer`, required) The ID of the broadcast you wish to retrieve metrics for. -- **lookup_action_id** (`integer`, required) The ID of the action you want to look up or act on. Provide an integer value. -- **metrics_item_type** (`string`, optional) Specifies the type of item (e.g., email, webhook) to return metrics for. If not provided, metrics for all types are returned. -- **period_steps** (`integer`, optional) Specify the number of time periods to return metrics for. Defaults to the maximum allowed (24 hours, 45 days, 12 weeks, or 121 months) or `12` if the period is in months. -- **time_unit_for_report** (`string`, optional) The unit of time for the report, such as hours, days, weeks, or months. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetBroadcastActionLinkMetrics - -
- - -Retrieve link click metrics for a specific broadcast action. - -**Parameters** - -- **broadcast_action_id** (`integer`, required) The ID of the action you want to look up or act on. -- **broadcast_identifier** (`integer`, required) The unique identifier for the broadcast to retrieve metrics for. It should be an integer value. -- **item_type** (`string`, optional) Specifies the type of item to return metrics for; options include email, webhook, twilio, slack, push, and in_app. Leave empty for all types. -- **number_of_periods_to_return** (`integer`, optional) The number of time periods to return metrics for. Defaults to the maximum, or 12 if in months. Max: 24 hours, 45 days, 12 weeks, 121 months. -- **time_period_unit** (`string`, optional) The unit of time for the report. Acceptable values are 'hours', 'days', 'weeks', or 'months'. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetBroadcastTriggers - -
- - -Retrieve triggers for a specific broadcast. - -**Parameters** - -- **broadcast_identifier** (`integer`, required) The identifier of a broadcast to retrieve its triggers. Must be an integer. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UpdateCustomerAttributes - -
- - -Add or update customer attribute metadata in your workspace. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UpdateEventMetadata - -
- - -Update or add new events in the workspace. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.CheckEmailSuppression - -
- - -Retrieve suppression status and reason for an email. - -**Parameters** - -- **email_to_check_suppression** (`string`, required) The email address to check for suppression status and reasons. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.FindSuppressedEmailAddresses - -
- - -Retrieve email addresses suppressed for specific reasons. - -**Parameters** - -- **suppression_reason** (`string`, required) Specify the reason for email address suppression, such as bounces or spam reports. -- **max_results_per_page** (`integer`, optional) The maximum number of suppression records to retrieve per page, up to 1000. -- **skip_records** (`integer`, optional) The number of records to skip before retrieving results. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.RemoveEmailSuppression - -
- - -Remove an email address from the suppression list. - -**Parameters** - -- **email_address_to_remove** (`string`, required) The email address to remove from the suppression list, allowing future communications. -- **suppression_reason** (`string`, required) The reason the email address was suppressed (e.g., 'bounces', 'spam_reports'). - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.SuppressEmailAtEsp - -
- - -Suppress an email address at the email service provider. - -**Parameters** - -- **email_address_to_suppress** (`string`, required) The email address of the person you want to suppress at the ESP. -- **suppression_reason** (`string`, required) Specify the reason for suppressing the email address, such as 'bounces' or 'spam_reports'. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.ListExports - -
- - -Retrieve a list of exports for people or campaign metrics. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetExportInfo - -
- - -Returns information about a specific export from Customerio. - -**Parameters** - -- **export_id_to_access** (`integer`, required) The unique ID of the export you want to access in Customerio. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.DownloadExportSignedLink - -
- - -Retrieve a temporary signed link to download an export. - -**Parameters** - -- **export_identifier** (`integer`, required) The unique ID of the export you want to access and download. Must be an integer. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.ExportCustomerData - -
- - -Export customer data based on specified filters. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.ExportDeliveryData - -
- - -Initiates export of delivery data for newsletters and campaigns. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UploadCsvToCustomerio - -
- - -Upload a CSV file to Customerio for bulk data processing. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetImportStatus - -
- - -Retrieve the status of an import operation. - -**Parameters** - -- **import_id** (`integer`, required) The ID of the import to lookup from a previously queued import operation. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetAllowlistIps - -
- - -Retrieve IP addresses to allowlist for secure access. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.FetchMessageDeliveries - -
- - -Retrieve a list of message deliveries and their metrics. - -**Parameters** - -- **beginning_timestamp** (`integer`, optional) The beginning timestamp in Unix format for your query. Returns deliveries created after this time. -- **desired_metrics** (`string`, optional) Specifies the metrics to retrieve. Options include: attempted, sent, delivered, opened, clicked, converted, bounced, spammed, unsubscribed, dropped, failed, undeliverable. -- **ending_timestamp_for_query** (`integer`, optional) The ending timestamp for your query. If not specified, it defaults to the current time. -- **filter_by_action_id** (`integer`, optional) Specify the action ID to filter the message deliveries. This narrows the results to messages associated with the given action. -- **filter_by_campaign_id** (`integer`, optional) The ID of the campaign to filter message deliveries. Use this to retrieve data for a specific campaign only. -- **filter_by_newsletter_id** (`integer`, optional) An integer representing the ID of the newsletter to filter deliveries for. -- **item_type_for_metrics** (`string`, optional) Specify the item type to return metrics for, such as 'email', 'webhook', 'twilio', 'slack', 'push', or 'in_app'. Leave empty for all types. -- **page_token** (`string`, optional) The token to fetch the specified page of delivery results. -- **results_per_page_limit** (`integer`, optional) Specifies the maximum number of results to retrieve per page. -- **return_drafts_only** (`boolean`, optional) Set to true to return drafts instead of active or sent messages. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetDeliveryMessageInfo - -
- - -Retrieve metrics and details for a specific message delivery. - -**Parameters** - -- **message_identifier** (`string`, required) The unique identifier for a specific message instance to retrieve its information and metrics. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetArchivedMessage - -
- - -Retrieve an archived copy of a message delivery. - -**Parameters** - -- **message_id** (`string`, required) The unique identifier for the message to be retrieved. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetNewsletters - -
- - -Retrieve a list of newsletters and their metadata. - -**Parameters** - -- **max_results_per_page** (`integer`, optional) The maximum number of newsletters to retrieve per page, up to 100. -- **sort_order** (`string`, optional) Specify the order to sort results: `asc` for chronological, `desc` for reverse. -- **start_token** (`string`, optional) Token to retrieve a specific page of newsletter results. Use the `next` property from previous responses as this token. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.RetrieveNewsletterMetadata - -
- - -Retrieve metadata for an individual newsletter. - -**Parameters** - -- **newsletter_identifier** (`integer`, required) The unique identifier for the newsletter to retrieve metadata. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.DeleteNewsletter - -
- - -Delete an individual newsletter and its associated data. - -**Parameters** - -- **newsletter_identifier** (`integer`, required) The unique identifier of the newsletter you want to delete. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetNewsletterMetrics - -
- - -Retrieve metrics for a specific newsletter over time. - -**Parameters** - -- **newsletter_identifier** (`integer`, required) The identifier for the specific newsletter to retrieve metrics for. Expected to be an integer. -- **item_type_for_metrics** (`string`, optional) Specify the type of item to return metrics for, such as 'email', 'webhook', 'twilio', etc. If not provided, metrics for all types are returned. -- **number_of_time_periods** (`integer`, optional) The number of time periods to return metrics for. Minimum is 2. Defaults to max: 24 hours, 45 days, 12 weeks, 121 months. Use this to specify the time span for newsletter metrics. -- **time_period_unit** (`string`, optional) The unit of time to report metrics (options: hours, days, weeks, months). - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetNewsletterLinkMetrics - -
- - -Retrieve metrics for link clicks in a newsletter. - -**Parameters** - -- **newsletter_identifier** (`integer`, required) The identifier of the newsletter to retrieve metrics for. Must be an integer. -- **include_unique_customers** (`boolean`, optional) If true, response includes only unique customer results (each customer counted once); if false, includes total click results. -- **number_of_periods** (`integer`, optional) The number of periods to return metrics for. Defaults to maximum available, or 12 if in months. Maximums: 24 hours, 45 days, 12 weeks, or 121 months. -- **time_unit_for_report** (`string`, optional) The unit of time for your report. Options are 'hours', 'days', 'weeks', or 'months'. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetNewsletterVariants - -
- - -Fetch content variants for a specified newsletter. - -**Parameters** - -- **newsletter_identifier** (`integer`, required) The unique integer identifier of a newsletter to fetch its content variants. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetNewsletterMessageMetadata - -
- - -Retrieve delivery info for messages sent from a newsletter. - -**Parameters** - -- **newsletter_identifier** (`integer`, required) The unique identifier of the newsletter to retrieve delivery information for. -- **begin_query_timestamp** (`integer`, optional) The Unix timestamp marking the start of the time range for your query. Without this, data defaults to the earliest available from 6 months prior. -- **ending_timestamp_for_query** (`integer`, optional) The ending timestamp for your query in Unix format. It specifies the end of the time range for retrieving message delivery data. -- **metrics_to_return** (`string`, optional) Specify one or more metrics to return, such as 'attempted', 'sent', 'delivered', etc. -- **pagination_start_token** (`string`, optional) The token to specify the start of the result page to return. Use the `next` value from previous responses for pagination. -- **results_per_page_limit** (`integer`, optional) The maximum number of message delivery results to retrieve per page. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetNewsletterVariantInfo - -
- - -Retrieve variant details of a specific newsletter. - -**Parameters** - -- **message_identifier_in_newsletter** (`integer`, required) Identifier for a message within a newsletter, used for A/B tests or multi-language editions. -- **newsletter_identifier** (`integer`, required) The unique identifier for a newsletter. Required to retrieve specific variant information. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UpdateNewsletterContent - -
- - -Update a newsletter variant's content. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **newsletter_identifier** (`integer`, optional) The identifier of the newsletter you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **message_content_id** (`integer`, optional) The identifier for a message within a newsletter, used in A/B tests or multiple language variants. Retrieve IDs via getNewsletters. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetNewsletterVariantTranslation - -
- - -Get information on a newsletter's language variant. - -**Parameters** - -- **language_tag** (`string`, required) The language tag of a newsletter variant. Leave empty for default language. -- **newsletter_identifier** (`integer`, required) The unique identifier of a newsletter to retrieve its specific language variant. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UpdateNewsletterVariantTranslation - -
- - -Update a newsletter variant's translation. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **newsletter_identifier** (`integer`, optional) The unique identifier for a newsletter that you want to update the translation for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **language_tag** (`string`, optional) A language tag for the newsletter variant. If omitted, defaults to the company's default language. An error is returned if the language variant doesn't exist. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetNewsletterTestGroups - -
- - -Retrieve test group details for a specific newsletter. - -**Parameters** - -- **newsletter_identifier** (`integer`, required) The unique identifier of a newsletter to retrieve its test group details. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.RetrieveNewsletterLanguageVariant - -
- - -Get info on a newsletter's language variant in A/B test. - -**Parameters** - -- **ab_test_group_id** (`string`, required) The unique ID of the A/B test group for retrieving the language variant. -- **language_tag** (`string`, required) Specify the language tag of the newsletter variant. Use an empty string to default to your primary language. -- **newsletter_identifier** (`integer`, required) Specify the unique identifier of the newsletter to retrieve its language variant details. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UpdateNewsletterTestTranslation - -
- - -Update a newsletter's translation for A/B testing. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **newsletter_identifier** (`integer`, optional) The unique identifier for the newsletter. Use this to specify which newsletter to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **ab_test_group_id** (`string`, optional) The identifier for the A/B test group to update the newsletter translation for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **newsletter_language_tag** (`string`, optional) Specify a language tag for the newsletter translation. Utilize an empty string to default to your system's language. Invalid tags result in an error. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetNewsletterVariantMetrics - -
- - -Fetch metrics for a specific newsletter variant. - -**Parameters** - -- **newsletter_identifier** (`integer`, required) The unique identifier for the newsletter to fetch metrics for. -- **newsletter_message_id** (`integer`, required) The ID of a message in a newsletter, used for identifying variants or languages within a newsletter. Useful for A/B tests or multilingual content. -- **item_type_for_metrics** (`string`, optional) Specify the type of item to return metrics for (e.g., email, webhook, etc.). If left empty, metrics for all types are returned. -- **number_of_period_steps** (`integer`, optional) The number of time periods to return, requiring a minimum of 2 steps. Maximum limits apply based on the period type. -- **reporting_period_unit** (`string`, optional) The time unit for the report, such as 'hours', 'days', 'weeks', or 'months'. Used to define the granularity of the metrics. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetNewsletterVariantClickMetrics - -
- - -Get link click metrics for a newsletter variant. - -**Parameters** - -- **message_content_identifier** (`integer`, required) The ID of a specific message within a newsletter, useful for A/B tests or multilingual newsletters. Retrieve from newsletter details. -- **newsletter_identifier** (`integer`, required) The unique integer identifier of a specific newsletter to retrieve click metrics. -- **item_type_for_metrics** (`string`, optional) The type of item to return metrics for. Options are: email, webhook, twilio, slack, push, in_app. When left empty, metrics for all types are included. -- **number_of_periods** (`integer`, optional) Specify the number of time periods to retrieve data for. Defaults to the maximum if not specified, or 12 for months. Maximum limits: 24 hours, 45 days, 12 weeks, or 121 months. -- **time_unit_for_report** (`string`, optional) The unit of time for generating the report. Options are: hours, days, weeks, months. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetObjectTypes - -
- - -Retrieve a list of object types and their IDs. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.FindWorkspaceObjects - -
- - -Find objects in your workspace using filter conditions. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **page_start_token** (`string`, optional) Token for the page of results to return. Use the `next` property from a prior response to continue paging. Only used when mode is 'execute'. -- **maximum_results_per_page** (`integer`, optional) The maximum number of results to retrieve per page. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetRelatedPeople - -
- - -Retrieve people related to a specified object. - -**Parameters** - -- **object_identifier** (`string`, required) The ID of the object. This can be `object_id` or `cio_object_id` based on the `id_type` query parameter. Defaults to `object_id`. -- **object_type_identifier** (`integer`, required) The ID representing the object type, such as 'Companies' or 'Accounts'. Starts from 1 and increments for each new type. -- **identification_type** (`string`, optional) Specifies whether the object identifier is an `object_id` or a `cio_object_id`. Choose between these two options. -- **maximum_results_per_page** (`integer`, optional) The maximum number of results to retrieve per page. Specify an integer value. -- **pagination_start_token** (`string`, optional) Token for starting the page of results. Use the 'next' property from a response to paginate. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetObjectAttributes - -
- - -Retrieve a list of attributes for a specific object. - -**Parameters** - -- **object_identifier** (`string`, required) The unique identifier for the object, which can be either `object_id` or `cio_object_id`, depending on the id_type specified in query params. -- **object_type_identifier** (`integer`, required) The ID representing the object type, beginning at 1 for each new type, like 'Companies' or 'Accounts'. -- **object_id_type** (`string`, optional) Specify the type of ID used for the object: 'object_id' or 'cio_object_id'. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.CreateWebhook - -
- - -Create a new webhook configuration for reporting. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.ListReportingWebhooks - -
- - -Retrieve a list of reporting webhooks. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetWebhookInfo - -
- - -Get detailed information about a specific webhook. - -**Parameters** - -- **webhook_identifier** (`integer`, required) The unique identifier of the webhook you want to retrieve information for. This should be an integer. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UpdateReportingWebhook - -
- - -Update the configuration of a reporting webhook. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **webhook_identifier** (`integer`, optional) The unique identifier for the specific webhook to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.DeleteReportingWebhook - -
- - -Delete a reporting webhook's configuration. - -**Parameters** - -- **webhook_identifier** (`integer`, required) The unique identifier for the reporting webhook to be deleted. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.CreateManualSegment - -
- - -Create a manual segment with name and description. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetAllSegments - -
- - -Retrieve a list of all segments for your account. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetSegmentInfo - -
- - -Retrieve information about a specific segment. - -**Parameters** - -- **segment_identifier** (`integer`, required) The ID for a segment. Find this on its page in the dashboard or using the App API. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.DeleteManualSegment - -
- - -Delete a specified manual segment by ID. - -**Parameters** - -- **segment_identifier** (`integer`, required) The ID of the segment to delete, found under 'Usage' in the Segment page on the dashboard or via the App API. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.FindSegmentDependencies - -
- - -Identify campaigns and newsletters using a segment. - -**Parameters** - -- **segment_identifier** (`integer`, required) The ID for a segment, found on its dashboard page or via the App API. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetSegmentCustomerCount - -
- - -Retrieve the customer count for a specific segment. - -**Parameters** - -- **segment_id** (`integer`, required) The unique identifier for the segment to retrieve the customer count. Find this ID on the segment's page or via the App API. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetSegmentMembers - -
- - -Retrieve customer details from a specific segment. - -**Parameters** - -- **segment_identifier** (`integer`, required) The unique identifier for a segment. Find this ID on the segment's page in the dashboard, under _Usage_. -- **maximum_results_per_page** (`integer`, optional) Specify the maximum number of customer identifiers to retrieve per page. -- **pagination_token** (`string`, optional) Token to specify the start of the page of results. Use the `next` value from a previous response to paginate. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetSenderList - -
- - -Retrieve a list of senders from your workspace. - -**Parameters** - -- **max_results_per_page** (`integer`, optional) The maximum number of sender results to retrieve per page. Specify an integer value. -- **pagination_token** (`string`, optional) Token for the page of results to return. Use the `next` property from the response for pagination. -- **results_sort_order** (`string`, optional) Sort results: 'asc' for chronological, 'desc' for reverse chronological order. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetSenderInfo - -
- - -Retrieve information about a specific sender by ID. - -**Parameters** - -- **sender_identifier** (`integer`, required) The unique identifier for a sender, required to fetch their information. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetSenderUsage - -
- - -Retrieve campaigns and newsletters using a specific sender. - -**Parameters** - -- **sender_identifier** (`integer`, required) The unique identifier for the sender to retrieve associated campaigns and newsletters. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.ListSnippetsWorkspace - -
- - -Retrieve a list of reusable content snippets from your workspace. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UpdateOrCreateSnippet - -
- - -Update or create a snippet with a unique name. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.RemoveUnusedSnippet - -
- - -Removes an unused snippet from the system. - -**Parameters** - -- **snippet_name** (`string`, required) The name of the snippet to be removed. Must be unused to avoid errors. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetSubscriptionTopics - -
- - -Retrieve subscription topics from your workspace. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.ListTransactionalMessages - -
- - -Retrieve your list of transactional message IDs. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetTransactionalMessage - -
- - -Retrieve details of a transactional message. - -**Parameters** - -- **transactional_message_id** (`integer`, required) The ID of the transactional message, found in the UI or URL, e.g., `/transactional/3/templates/139` has an ID of 3. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetTransactionalMessageVariants - -
- - -Retrieve content variants of a transactional message. - -**Parameters** - -- **transactional_message_id** (`integer`, required) The ID of the transactional message, found in the UI or URL, e.g., `/transactional/3/templates/139` means ID is 3. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UpdateTransactionalEmail - -
- - -Overwrite a transactional email's body with new content. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **transactional_email_id** (`integer`, optional) The ID of your transactional email. Found in the UI or URL of the transactional message. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **content_variant_id** (`integer`, optional) The unique identifier for the specific content version of your transactional email, found in the message URL. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetTransactionalVariant - -
- - -Fetch translation details of a transactional message. - -**Parameters** - -- **language_tag** (`string`, required) Specify the language tag for the message variant. Use an empty string for the default language. If the variant does not exist, an error is returned. -- **transactional_message_id** (`integer`, required) The identifier of the transactional message, found in the UI or URL, e.g., `/transactional/3/templates/139` has an ID of 3. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UpdateTransactionalMessageVariant - -
- - -Fully update a language variant of a transactional message. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **transactional_message_id** (`integer`, optional) The identifier of the transactional message. Found in the UI or URL of the message, e.g., `/transactional/3/templates/139` where the ID is 3. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **language_tag** (`string`, optional) Specify a language tag for a language variant. If not provided, default language is used. Errors if variant does not exist. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetTransactionalMessageMetrics - -
- - -Retrieve metrics for a transactional message over time periods. - -**Parameters** - -- **transactional_message_id** (`integer`, required) The identifier of the transactional message. Found in the UI or URL, e.g., `/transactional/3/templates/139` means an ID of 3. -- **number_of_periods** (`integer`, optional) The number of periods to retrieve metrics for. Defaults to the maximum available, or 12 if the period is in months. Maximums are 24 hours, 45 days, 12 weeks, or 121 months. Days start at 00:00 EST. Weeks start at 00:00 EST on Sunday. Months start at 00:00 EST on the 1st of the month. -- **time_unit_for_report** (`string`, optional) Specify the unit of time for the report, such as 'hours', 'days', 'weeks', or 'months'. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetTransactionalLinkMetrics - -
- - -Retrieve metrics for clicked links in transactional messages. - -**Parameters** - -- **transactional_message_id** (`integer`, required) The identifier for the transactional message, found in the UI or URL (e.g., in `/transactional/3/templates/139`, the ID is 3). -- **include_only_unique_customers** (`boolean`, optional) Return only unique customer results if true; false includes all click instances. -- **number_of_periods** (`integer`, optional) Specify the number of periods to return metrics for. Cannot be fewer than 2 periods. Defaults to the maximum available, or 12 if the period is in months. Maximums: 24 hours, 45 days, 12 weeks, or 121 months. -- **time_unit_for_report** (`string`, optional) The unit of time for the report. Options are: hours, days, weeks, or months. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetTransactionalMessageDeliveries - -
- - -Fetch delivery details for transactional messages. - -**Parameters** - -- **transactional_message_id** (`integer`, required) The unique identifier for the transactional message, found in the UI or URL, e.g., '/transactional/3/templates/139' where the ID is 3. -- **beginning_timestamp** (`integer`, optional) The start time for the query, specified as a Unix timestamp. Limits the query to data starting from this time. -- **broadcast_state** (`string`, optional) Specifies the state of the broadcast to filter results. Options are 'failed', 'sent', 'drafted', or 'attempted'. -- **max_results_per_page** (`integer`, optional) The maximum number of results to return per page, as an integer. -- **page_token** (`string`, optional) Specify the token for the page of results you want to return. Use the `next` property from previous responses as the value to paginate. -- **query_ending_timestamp** (`integer`, optional) The ending timestamp for the query, determining the end of the time range for message data retrieval. -- **return_metrics** (`string`, optional) Specify one or more metrics to return, such as 'sent', 'delivered', or 'clicked'. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.ListWorkspaces - -
- - -Retrieve a list of workspaces in your account. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.CreateNewCollection - -
- - -Create a new data collection in Customerio. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.ListCollections - -
- - -Retrieve a list of all collections including names and schemas. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.RetrieveCollectionDetails - -
- - -Retrieve details about a specific collection. - -**Parameters** - -- **collection_identifier** (`integer`, required) The unique identifier for a specific collection to retrieve its details. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.DeleteCollection - -
- - -Delete a collection and its contents. - -**Parameters** - -- **collection_id** (`integer`, required) The unique identifier for the collection to be deleted. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.UpdateCollectionInfo - -
- - -Update collection name or replace its contents in Customerio. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **collection_identifier** (`integer`, optional) The unique identifier for the collection to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.RetrieveCollectionContents - -
- - -Retrieve contents of a specified collection. - -**Parameters** - -- **collection_identifier** (`integer`, required) The unique identifier for the collection to retrieve contents from. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.ReplaceCollectionContents - -
- - -Replace the entire contents of a data collection. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **collection_identifier** (`integer`, optional) The unique identifier for the collection whose contents are being replaced. This is required for identifying the specific collection to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetPeopleByEmail - -
- - -Retrieve a list of people matching an email address. - -**Parameters** - -- **search_email_address** (`string`, required) The email address to find in the workspace. Returns a list of individuals matching this email. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.FilterPeopleInWorkspace - -
- - -Filter and search for people in your workspace. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **page_start_token** (`string`, optional) The token for the page of results to return. Use the 'next' property from responses as this value to access subsequent pages. Only used when mode is 'execute'. -- **results_per_page_limit** (`integer`, optional) Specify the maximum number of people to retrieve per page. Limited to 1000. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetCustomerProfileAttributes - -
- - -Retrieve a customer's profile attributes. - -**Parameters** - -- **customer_identifier** (`string`, required) The unique identifier of the customer to fetch their profile attributes. -- **customer_id_type** (`string`, optional) Specifies the type of `customer_id` to reference a person. Options: 'id', 'email', 'cio_id'. Default is 'id' if not provided. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetPersonRelationships - -
- - -Retrieve a list of objects a person is related to. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the customer whose relationships you wish to retrieve. -- **max_results_per_page** (`integer`, optional) The maximum number of results to retrieve per page. -- **pagination_start_token** (`string`, optional) Token to specify the page of results to return. Use the `next` property's value from a previous response to get subsequent pages. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetCustomerInfo - -
- - -Retrieve attributes and devices for specified customers by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetCustomerSegments - -
- - -Retrieve segments of a specific customer from Customerio. - -**Parameters** - -- **customer_identifier** (`string`, required) The unique ID of the customer for segment retrieval in Customerio. -- **customer_id_type** (`string`, optional) Specifies the type of customer identifier to use ('id', 'email', or 'cio_id'). Default is 'id'. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.RetrieveCustomerMessages - -
- - -Retrieve deliveries sent to a customer within a time range. - -**Parameters** - -- **customer_identifier** (`string`, required) The unique ID of the customer whose message deliveries you want to retrieve. -- **customer_id_type** (`string`, optional) Specifies the type of customer_id used to reference a person. Options: 'id', 'email', 'cio_id'. Defaults to 'id' if not provided. -- **max_results_per_page** (`integer`, optional) The maximum number of results to retrieve per page. This limits the number of messages returned in a single response. -- **pagination_token** (`string`, optional) Token for the page of results to return. Use the `next` property from previous responses to get the next page. -- **query_end_timestamp** (`integer`, optional) The ending timestamp (in integer format) for the query to limit data retrieval to specific time ranges. -- **starting_timestamp** (`integer`, optional) The beginning timestamp for the query in integer format, used to filter messages by start date. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetCustomerActivities - -
- - -Retrieve recent activities for a customer. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the customer whose activities you want to retrieve. -- **activity_type_filter** (`string`, optional) Filter activities by specific type, such as 'add_relationship' or 'attribute_change'. -- **customer_id_type** (`string`, optional) Specify the type of `customer_id` used to reference a person (e.g., `id`, `email`, or `cio_id`). Defaults to `id` if unspecified. -- **event_or_attribute_name** (`string`, optional) Specify the event or attribute name to search for within activities of type `event` or `attribute_update`. -- **max_results_per_page** (`integer`, optional) Specify the maximum number of activity results to retrieve per page. -- **start_token** (`string`, optional) Token to specify which page of results to return. Use the `next` property from a previous response. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioApi.GetSubscriptionPreferences - -
- - -Retrieve a person's subscription preferences. - -**Parameters** - -- **customer_identifier** (`string`, required) The ID of the customer to retrieve subscription preferences for. -- **accept_language** (`string`, optional) Language tag for translating content. If not specified, defaults to the subscription center's language. -- **customer_id_type** (`string`, optional) Type of customer_id used to reference a person, e.g., 'id', 'email', or 'cio_id'. Defaults to 'id'. -- **translation_language** (`string`, optional) Specify the language tag for translating the subscription preferences content. If not provided, the default language is used. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Reference - -Below is a reference of enumerations used by some of the tools in the CustomerioApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - diff --git a/app/en/resources/integrations/customer-support/customerio-pipelines-api/page.mdx b/app/en/resources/integrations/customer-support/customerio-pipelines-api/page.mdx deleted file mode 100644 index 6d2ad4151..000000000 --- a/app/en/resources/integrations/customer-support/customerio-pipelines-api/page.mdx +++ /dev/null @@ -1,289 +0,0 @@ -# CustomerioPipelinesApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The CustomerioPipelinesApi MCP Server offers a comprehensive set of tools for managing user data and tracking interactions within Customer.io. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## CustomerioPipelinesApi.IdentifyPersonAndAssignTraits - -
- - -Identify a person and assign traits using Customerio. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enable_strict_validation** (`string`, optional) Set to `True` to enable strict HTTP error validation (400/401) for validation failures. Defaults to permissive mode when `False`. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioPipelinesApi.TrackUserEvent - -
- - -Record user events with properties for analysis. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enable_strict_validation** (`string`, optional) Set to `True` to enable strict validation and return error codes (400/401) for validation failures. `False` for permissive mode. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioPipelinesApi.SendPageViewEvent - -
- - -Sends a page view event for tracking user interactions. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enable_strict_mode** (`string`, optional) Set to '1' to enable strict validation, returning 400/401 for errors. Any other value uses permissive mode logging. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioPipelinesApi.SendScreenViewEvent - -
- - -Send a screen view event for app usage analytics. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enable_strict_validation** (`string`, optional) Enable strict validation for returning proper HTTP error codes (400/401) for failures. Set to `1` to enable. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioPipelinesApi.AddToGroup - -
- - -Add a person to a specified group. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enable_strict_validation** (`string`, optional) Set to '1' to enable strict validation, returning HTTP error codes for validation failures. Otherwise, the API operates in permissive mode. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioPipelinesApi.AliasUserIdentity - -
- - -Reconcile anonymous and identified user IDs for select destinations. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enable_strict_validation** (`string`, optional) Set to 'True' to enable strict validation, returning HTTP error codes (400/401) for validation failures. Defaults to permissive mode if not set. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioPipelinesApi.SendBatchRequests - -
- - -Send multiple requests in a single batch call. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enable_strict_mode** (`string`, optional) Set to `True` to enable strict validation, returning HTTP error codes (400/401) for validation failures instead of HTTP 200. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Reference - -Below is a reference of enumerations used by some of the tools in the CustomerioPipelinesApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - diff --git a/app/en/resources/integrations/customer-support/customerio-track-api/page.mdx b/app/en/resources/integrations/customer-support/customerio-track-api/page.mdx deleted file mode 100644 index 77e0fa6bd..000000000 --- a/app/en/resources/integrations/customer-support/customerio-track-api/page.mdx +++ /dev/null @@ -1,628 +0,0 @@ -# CustomerioTrackApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The CustomerioTrackApi MCP Server offers a comprehensive suite of tools for managing customer data and interactions within Customer.io. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## CustomerioTrackApi.GetTrackApiRegion - -
- - -Retrieve the region and URL for Track API credentials. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.UpdateOrAddPerson - -
- - -Add or update a person's information in the database. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **person_identifier** (`string`, optional) The unique value used to identify a person, such as an ID, email, or `cio_id` (with `cio_` prefix for updates). Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.DeleteCustomer - -
- - -Delete a customer and all associated information. - -**Parameters** - -- **customer_identifier** (`string`, required) The unique identifier for a person, which can be an ID, email, or 'cio*id'. Use 'cio*' prefix for 'cio_id'. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.AddDeviceToCustomerProfile - -
- - -Add or update a device for a customer profile. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **unique_person_identifier** (`string`, optional) A unique identifier for a person, such as `id`, `email`, or `cio_id` prefixed with `cio_`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.RemoveCustomerDevice - -
- - -Remove a device from a customer's profile. - -**Parameters** - -- **customer_identifier** (`string`, required) Unique identifier for a person in the system. Can be `id`, `email`, or `cio_id` (prefixed with `cio_`). -- **device_unique_id** (`string`, required) The ID representing the device to be removed from the customer's profile. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.SuppressCustomerProfile - -
- - -Permanently delete and suppress a customer profile. - -**Parameters** - -- **unique_person_identifier** (`string`, required) The unique identifier for a customer, which can be an ID, email, or 'cio*id' (prefixed with 'cio*'). - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.UnsuppressCustomerProfile - -
- - -Unsuppress a customer profile in Customer.io. - -**Parameters** - -- **customer_identifier** (`string`, required) The unique identifier for a customer, which can be an ID, email, or prefixed cio_id, based on workspace settings. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.GlobalUnsubscribeUser - -
- - -Set a user's global unsubscribe status in Customer.io. - -**Parameters** - -- **delivery_id_for_unsubscription** (`string`, required) The unique identifier of the delivery associated with the unsubscription request. This links the unsubscribe action to a specific email or message delivery. -- **set_unsubscribed_attribute** (`boolean`, optional) If true, sets a person's `unsubscribed` attribute to true, associated with a specific delivery. - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.SendCustomerEvent - -
- - -Send an event associated with a customer by identifier. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **customer_identifier** (`string`, optional) A unique identifier for a person, such as `id`, `email`, or `cio_id`, depending on workspace settings. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.TrackAnonymousEvent - -
- - -Log anonymous events for unidentified users. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.SubmitFormResponse - -
- - -Submit and record form responses with Customer.io. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **form_identifier** (`string`, optional) The unique identifier for the form. If unrecognized, a new form connection is created. Choose a meaningful or traceable value. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.MergeCustomerProfiles - -
- - -Merge two customer profiles into one primary profile. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.ReportCustomMetrics - -
- - -Report metrics from non-native Customer.io channels. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.AddPeopleToSegment - -
- - -Add people to a manual segment by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **segment_identifier** (`integer`, optional) The unique identifier for a manual segment. This can be found on its page in the dashboard or via the App API. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **identifier_type** (`string`, optional) Specifies the type of identifiers in the `ids` array, such as `id`, `email`, or `cio_id`. Defaults to `id`. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.RemoveUserFromSegment - -
- - -Remove users from a manual segment by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **segment_identifier** (`integer`, optional) The unique identifier for the segment. Found on the segment's page in the dashboard under 'Usage'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **identification_type** (`string`, optional) The type of identifiers used for the users to be removed. Options are 'id', 'email', or 'cio_id'. Defaults to 'id' if not specified. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.ManageEntity - -
- - -Create, update, or delete entities and manage relationships. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CustomerioTrackApi.BatchProcessRequests - -
- - -Batch process requests for people and object entities. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Reference - -Below is a reference of enumerations used by some of the tools in the CustomerioTrackApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - diff --git a/app/en/resources/integrations/customer-support/freshservice-api/page.mdx b/app/en/resources/integrations/customer-support/freshservice-api/page.mdx deleted file mode 100644 index 1999c73bb..000000000 --- a/app/en/resources/integrations/customer-support/freshservice-api/page.mdx +++ /dev/null @@ -1,4773 +0,0 @@ -# FreshserviceApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The FreshserviceApi MCP Server offers a comprehensive set of tools for interacting with Freshservice programmatically. Build agents and AI apps to: - -- Manage organizational data: list, view, create/ delete, and inspect departments/locations/vendors/products/agent groups. -- Manage assets and inventory: list asset types, assets, components, installed software, contracts, and asset-related fields; add/update/delete components. -- Manage software & licenses: list software, application details, installations, and licenses. -- Manage service catalog & knowledge base: list and view service items, catalog fields, solution articles/folders/categories; create/update/delete solution content and folders. -- Manage users & agents: list, view, convert, merge, and delete requesters and agents; access requester/agent fields and onboarding requests. -- Manage tickets & related data: list tickets, fetch ticket details, conversations, tasks, time entries, and remove/restore tickets or conversations. -- Manage changes, problems, releases, and projects: list and retrieve change/problem/release/project records; manage notes, tasks, time entries, and delete/archive/restore items. -- Manage CSAT, canned responses, announcements, and purchase orders: list/view/activate/deactivate/delete surveys; manage canned responses and folders; list announcements and purchase orders. -- Retrieve configuration & metadata: fetch business hours, form fields (change/release), asset/component fields, requester/agent fields, departments/locations/products structure and more. - -Use these endpoints to automate administration, asset lifecycle, ITSM workflows, reporting, and knowledge/cataglog maintenance within Freshservice. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## FreshserviceApi.GetFreshserviceDepartments - -
- - -Retrieve all departments from Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) The number of entries to retrieve per page in a paginated list. -- **page_number** (`integer`, optional) The specific page number of departments to retrieve from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveDepartmentDetails - -
- - -Retrieve department details using department ID. - -**Parameters** - -- **department_id** (`integer`, required) The ID of the department to retrieve from Freshservice. Use only integer values. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteDepartment - -
- - -Delete a department from Freshservice by ID. - -**Parameters** - -- **department_id** (`integer`, required) The unique ID of the department to delete from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetDepartmentFields - -
- - -Retrieve department or company fields from Freshservice. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ListFreshserviceAgentGroups - -
- - -Retrieve a list of all Agent Groups in Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) Specify the number of entries to retrieve in each page of the list. -- **page_number_to_retrieve** (`integer`, optional) The specific page number to retrieve from a paginated list of agent groups. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetAgentGroupInfo - -
- - -Retrieve details of a Freshservice agent group by ID. - -**Parameters** - -- **agent_group_identifier** (`integer`, required) The unique integer ID of the Freshservice agent group to retrieve. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteAgentGroup - -
- - -Delete an agent group in Freshservice by ID. - -**Parameters** - -- **agent_group_id_to_delete** (`integer`, required) The unique integer ID of the agent group to be deleted in Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ListAllProducts - -
- - -Retrieve a comprehensive list of products from Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) Specify the number of entries to retrieve in each page of the product list. -- **page_number** (`integer`, optional) Specify the page number to retrieve from the paginated list of products. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetProductDetails - -
- - -Retrieve a specific Product from the Product Catalog. - -**Parameters** - -- **product_id** (`integer`, required) The unique identifier for the product in the Freshservice Product Catalog to retrieve details. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteProduct - -
- - -Delete a product from the Freshservice catalog. - -**Parameters** - -- **product_identifier** (`integer`, required) The unique ID of the product to be deleted from the Freshservice catalog. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetBusinessHoursConfigs - -
- - -Retrieve a list of all Business Hours configurations from Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) The number of Business Hours configurations to retrieve per page in the paginated list. -- **requested_page_number** (`integer`, optional) Specify the page number of results you want to retrieve. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetBusinessHoursConfig - -
- - -Retrieve Freshservice Business Hours configuration by ID. - -**Parameters** - -- **business_hours_configuration_id** (`integer`, required) The ID of the Business Hours configuration to retrieve from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetAllLocations - -
- - -Retrieve a list of all locations in Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) The number of entries to retrieve per page when listing locations. Typically an integer value. -- **page_number_to_retrieve** (`integer`, optional) The page number of locations to retrieve from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.FetchLocationDetails - -
- - -Retrieve details of a specific location by ID. - -**Parameters** - -- **location_identifier** (`integer`, required) The ID of the location to be retrieved. It should be an integer representing a specific location in the Freshservice system. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteExistingLocation - -
- - -Deletes an existing location from Freshservice. - -**Parameters** - -- **location_id** (`integer`, required) The unique identifier of the location to be deleted. Provide the numeric ID corresponding to the location you wish to remove from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.FetchAllVendors - -
- - -Retrieve and list all vendors from Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) Specify the number of vendor entries to retrieve for each page when listing vendors. -- **page_number** (`integer`, optional) Specify the page number to retrieve from the paginated list of vendors. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetVendorDetails - -
- - -Retrieve details of a specific vendor by ID. - -**Parameters** - -- **vendor_identifier** (`integer`, required) The unique ID of the vendor to retrieve. This ID is an integer and identifies the vendor in the Freshservice system. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteExistingVendor - -
- - -Delete an existing vendor in Freshservice. - -**Parameters** - -- **vendor_id** (`integer`, required) The unique identifier of the vendor to be deleted. It should be an integer value. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetAssetTypes - -
- - -Retrieve all asset types from Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) The number of asset type entries to retrieve per page in the paginated list. -- **page_number** (`integer`, optional) The page number to retrieve from the list of asset types. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveAssetType - -
- - -Retrieve details of a specific asset type by ID. - -**Parameters** - -- **asset_type_id** (`integer`, required) The unique integer identifier for the asset type to retrieve from Freshservice. Required for querying specific asset type details. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteAssetType - -
- - -Delete an existing asset type in Freshservice. - -**Parameters** - -- **asset_type_id** (`integer`, required) The unique integer ID of the asset type to be deleted. This ID identifies which asset type should be removed from the Freshservice database. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetAssetFields - -
- - -Retrieve asset fields for a specific asset type. - -**Parameters** - -- **asset_type_identifier** (`integer`, required) The unique identifier for the asset type to retrieve its fields in Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetComponentTypes - -
- - -Retrieve all component types in Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) The number of component type entries to retrieve per page in a paginated list. Specify an integer value. -- **page_number** (`integer`, optional) The specific page number of component types to retrieve from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetAssetList - -
- - -Retrieve a list of all assets from Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) Specify the number of entries to retrieve per page for pagination. Not applicable with search or filter queries. -- **page_number** (`integer`, optional) The page number to retrieve for paginated asset lists. -- **include_asset_type_fields** (`string`, optional) Specify asset type fields to include in the response. Use this to get additional data about each asset type. -- **apply_asset_filter** (`string`, optional) A URL-encoded string to filter the asset list. Supports parameters like asset_type_id, department_id, and more. -- **asset_search_query** (`string`, optional) A simple query to search assets by name, asset_tag, or serial_number. Formulate queries like "name:'dell monitor'". -- **include_trashed_assets** (`boolean`, optional) Set to true to list assets in trash. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetAssetDetails - -
- - -Retrieve details of a specific asset by ID. - -**Parameters** - -- **asset_display_id** (`integer`, required) The unique display ID of the asset to retrieve details from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteAsset - -
- - -Delete an existing asset in Freshservice. - -**Parameters** - -- **asset_display_id** (`integer`, required) The unique integer identifier of the asset to be deleted. Required to specify which asset to remove from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ListInstalledSoftware - -
- - -Retrieve all software installed on a specific device. - -**Parameters** - -- **device_display_id** (`integer`, required) The unique integer identifier for the device whose installed software applications are to be retrieved. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ListAssetRequests - -
- - -Retrieve all requests linked to a specific asset. - -**Parameters** - -- **asset_display_id** (`integer`, required) The display ID of the asset for which to retrieve associated requests. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetAssetContracts - -
- - -Retrieve all contracts linked to a specific asset. - -**Parameters** - -- **asset_display_id** (`integer`, required) The unique display ID of the asset to retrieve contracts for. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetDeviceComponents - -
- - -Retrieve all components of a specified device. - -**Parameters** - -- **device_display_id** (`integer`, required) The integer ID of the device whose components you want to list. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.AddAssetComponent - -
- - -Add a new component to an existing asset. - -**Parameters** - -- **asset_display_id** (`integer`, required) The unique identifier of the asset to which the new component will be added. This should be an integer value. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.UpdateAssetComponent - -
- - -Update a component in an asset. - -**Parameters** - -- **asset_display_id** (`integer`, required) The numeric identifier of the asset to be updated in Freshservice. -- **component_identifier** (`integer`, required) The unique identifier of the component to be updated, as an integer. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteAssetComponent - -
- - -Delete a specific component from an asset. - -**Parameters** - -- **asset_display_id** (`integer`, required) The display ID of the asset from which the component will be deleted. This ID uniquely identifies the asset in the Freshservice system. -- **component_id** (`integer`, required) The unique identifier of the component to be deleted. This is required to specify which component will be removed from the asset. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetSoftwareList - -
- - -Retrieve all software applications in Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) Number of software entries to retrieve per page for pagination. -- **page_number** (`integer`, optional) The page number of the software list to retrieve. Used for pagination. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveSoftwareApplication - -
- - -Retrieve a specific software application from Freshservice. - -**Parameters** - -- **application_id** (`integer`, required) The unique identifier for the specific software application in Freshservice to be retrieved. It must be an integer. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetSoftwareInstallationList - -
- - -Retrieve a list of devices where specified software is installed. - -**Parameters** - -- **software_application_id** (`integer`, required) The unique identifier of the software application to fetch the installation list. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetApplicationLicenses - -
- - -Retrieve licenses linked to a specific software application. - -**Parameters** - -- **application_id** (`integer`, required) The unique identifier for the software application to retrieve licenses for. Provide as an integer. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetAllCsatSurveys - -
- - -Retrieve a list of all CSAT surveys in Freshservice. - -**Parameters** - -- **filter_active_surveys** (`integer`, optional) Filter surveys by activity status. Use 1 for active and 0 for inactive. -- **entries_per_page** (`integer`, optional) The number of entries to retrieve per page in a paginated list. Specify an integer value. -- **survey_page_number** (`integer`, optional) The page number of CSAT surveys to retrieve for pagination. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetCsatSurvey - -
- - -Retrieve a CSAT survey by its ID from Freshservice. - -**Parameters** - -- **csat_survey_id** (`integer`, required) The ID of the CSAT survey to retrieve from Freshservice. It should be an integer value. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteSurvey - -
- - -Delete a survey and its responses from Freshservice. - -**Parameters** - -- **survey_id_to_delete** (`integer`, required) The ID of the survey you wish to delete from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ActivateCsatSurvey - -
- - -Activate a CSAT survey in Freshservice using its ID. - -**Parameters** - -- **csat_survey_id** (`integer`, required) The ID of the CSAT survey to activate in Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeactivateCsatSurvey - -
- - -Deactivate a specified CSAT Survey in Freshservice. - -**Parameters** - -- **survey_id** (`integer`, required) The ID of the CSAT survey you wish to deactivate in Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ViewServiceItem - -
- - -Retrieve details of a specific service item. - -**Parameters** - -- **service_item_id** (`integer`, required) The ID of the service item you want to retrieve. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetServiceItemsList - -
- - -Retrieve a list of all Service Items in Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) The number of service items to retrieve per page in a paginated list. -- **page_number_to_retrieve** (`integer`, optional) The page number to retrieve for paginated service items. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetCatalogItemFields - -
- - -Retrieve all fields for a specific service catalog item. - -**Parameters** - -- **service_item_id** (`integer`, required) The ID of the service item to retrieve. Use an integer value representing the specific catalog item. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetSolutionArticles - -
- - -Retrieve a list of Solution articles from Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) Specify the number of solution articles to retrieve per page in the paginated results. -- **page_number** (`integer`, optional) The page number of the solution articles to retrieve from Freshservice. -- **folder_identifier** (`integer`, optional) The numeric ID of the folder to list solution articles from. -- **solution_category_id** (`integer`, optional) Specify the ID of the category whose solution articles are to be retrieved. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ViewSolutionArticle - -
- - -Retrieve details of a Freshservice solution article. - -**Parameters** - -- **solution_article_id** (`integer`, required) The unique integer ID of the solution article to retrieve. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteSolutionArticle - -
- - -Delete a solution article from Freshservice by ID. - -**Parameters** - -- **solution_article_id** (`integer`, required) ID of the solution article to be deleted from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ListSolutionFolders - -
- - -Retrieve all Solution Folders from Freshservice. - -**Parameters** - -- **solution_category_id** (`integer`, optional) ID of the solution category where the folders reside. -- **per_page_count** (`integer`, optional) Specifies the number of solution folders to retrieve per page for pagination. -- **page_number_to_retrieve** (`integer`, optional) Specify the page number to retrieve from the paginated solution folders list. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ViewSolutionFolder - -
- - -Retrieve details of a specific solution folder. - -**Parameters** - -- **solution_folder_id** (`integer`, required) The unique ID of the solution folder to retrieve details. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteSolutionFolder - -
- - -Delete a solution folder in Freshservice. - -**Parameters** - -- **solution_folder_id** (`integer`, required) ID of the solution folder to be deleted from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetSolutionCategories - -
- - -Retrieve a list of all solution categories in Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) The number of entries to retrieve per page in the paginated list. -- **page_number_to_retrieve** (`integer`, optional) The page number to retrieve in the paginated list of solution categories. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ViewSolutionCategory - -
- - -Retrieve details of a specific solution category. - -**Parameters** - -- **solution_category_id** (`integer`, required) ID of the solution category to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteSolutionCategory - -
- - -Delete a solution category by its ID from Freshservice. - -**Parameters** - -- **solution_category_id** (`integer`, required) The unique ID of the solution category to be deleted from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetAllFreshserviceRequesters - -
- - -Retrieve a list of all requesters in Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) Number of entries to retrieve in each page of the paginated list. -- **page_number_to_retrieve** (`integer`, optional) The page number to retrieve from the list of Freshservice requesters. -- **requester_email** (`string`, optional) The email address to find the corresponding requester. -- **filter_by_mobile_phone_number** (`string`, optional) Filter requesters by their mobile phone number to return matching entries. -- **work_phone_number_for_requesters** (`string`, optional) The work phone number to filter requesters with that specific number in Freshservice. -- **query_filter** (`string`, optional) URL-encoded query filter to apply to the list of requesters. Supports first_name, last_name, job_title, primary_email, and more. -- **filter_active_accounts** (`boolean`, optional) Include only active user accounts if true. If false, include only deactivated accounts. Leaving unspecified returns both. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetFreshserviceRequester - -
- - -Retrieve a requester by ID from Freshservice. - -**Parameters** - -- **requester_id** (`integer`, required) The unique integer ID of the requester to retrieve from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteRequesterFromFreshservice - -
- - -Delete a requester by ID from Freshservice. - -**Parameters** - -- **requester_id_to_delete** (`integer`, required) The ID of the requester to be deleted from Freshservice. This should be an integer. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteRequesterAndTickets - -
- - -Permanently delete a requester and their tickets. - -**Parameters** - -- **requester_id_to_delete** (`integer`, required) The ID of the requester to permanently delete along with their tickets. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ConvertRequesterToAgent - -
- - -Convert a requester into an occasional agent. - -**Parameters** - -- **requester_identifier** (`integer`, required) The integer ID of the requester to convert into an occasional agent. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.MergeRequesters - -
- - -Merge secondary requesters into a primary requester. - -**Parameters** - -- **secondary_requester_ids** (`array[integer]`, required) List of IDs for the secondary requesters to merge into the primary. -- **primary_requester_id** (`integer`, required) Specify the ID of the primary requester to merge secondary requesters into. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetRequesterFields - -
- - -Retrieve all requester fields from Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) The number of entries to retrieve per page in a paginated list for requester fields. -- **page_number_to_retrieve** (`integer`, optional) Specify the page number of requester fields to retrieve from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetFreshserviceAgents - -
- - -Retrieve a list of all Agents in Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) The number of agent entries to retrieve in each page of a paginated list. Useful for controlling the size of paginated results. -- **page_number_to_retrieve** (`integer`, optional) The specific page number of the agent list to retrieve. -- **requester_email** (`string`, optional) The email address of the requester for which the corresponding agent needs to be listed. -- **filter_by_mobile_phone_number** (`string`, optional) Filter agents by a specific mobile phone number to list the corresponding requesters. -- **filter_by_work_phone_number** (`string`, optional) Work phone number to filter the list of agents by their corresponding requesters. -- **agent_type** (`string`, optional) Filter agents by employment type: 'fulltime' or 'occasional'. -- **agent_query_filter** (`string`, optional) URL-encoded string for filtering agents. Supports parameters like first_name, last_name, job_title, email, etc. -- **filter_active_users** (`boolean`, optional) Set to true to list active accounts, false to list deactivated ones, or omit to include both. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveFreshserviceAgent - -
- - -Retrieve details of a Freshservice agent by ID. - -**Parameters** - -- **agent_id** (`integer`, required) The unique integer ID of the Freshservice agent to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ConvertAgentToRequester - -
- - -Convert an agent into a requester in Freshservice. - -**Parameters** - -- **agent_id_for_conversion** (`integer`, required) The ID of the agent to be converted into a requester. This must be a valid integer representing the agent's ID in Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteAgentAndTickets - -
- - -Permanently deletes an agent and their tickets. - -**Parameters** - -- **agent_id_to_delete** (`integer`, required) The ID of the agent to permanently delete along with their tickets. This is irreversible. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveAgentFields - -
- - -Retrieve a list of all Agent Fields in Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) The number of entries to retrieve per page in a paginated list. -- **page_number_to_retrieve** (`integer`, optional) The page number to retrieve for paginated results. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.FetchTicketList - -
- - -Fetches the list of all support tickets in Freshservice. - -**Parameters** - -- **ticket_filter_type** (`string`, optional) Apply pre-defined filters to fetch specific ticket sets. Options: 'new_and_my_open', 'watching', 'spam', 'deleted'. -- **requester_email_filter** (`string`, optional) Filter tickets by the requester's email ID to retrieve specific ticket data. -- **filter_by_requester_id** (`integer`, optional) Filter tickets created by a specific requester using their ID. -- **filter_by_updated_since** (`string`, optional) Specify the ISO 8601 date-time to filter tickets updated since that time. Example: '2015-01-19T02:00:00Z'. -- **fields_to_include_in_response** (`string`, optional) Specify which additional fields to include in the ticket response. Options are 'stats' and 'requester'. -- **sort_order** (`string`, optional) Order to sort the ticket list. Supported values: 'asc' for ascending and 'desc' for descending. Default is 'desc'. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.FetchTicketDetails - -
- - -Retrieve details of a FreshService ticket using its ID. - -**Parameters** - -- **ticket_id** (`integer`, required) ID of the Freshservice ticket to be retrieved. -- **include_fields_in_ticket_response** (`string`, optional) Specify fields to include in the ticket response, such as 'stats', 'requester', 'conversations', etc. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RemoveFreshserviceTicket - -
- - -Remove a Freshservice support ticket by ID. - -**Parameters** - -- **ticket_id_to_delete** (`integer`, required) ID of the Freshservice support ticket to delete. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RestoreDeletedTicket - -
- - -Restore a deleted Freshservice ticket. - -**Parameters** - -- **ticket_id_to_restore** (`integer`, required) The ID of the Freshservice ticket to be restored. This must be an integer. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetTicketConversations - -
- - -Fetches all conversations for a specific Freshservice ticket. - -**Parameters** - -- **ticket_id** (`integer`, required) The ID of the Freshservice ticket for which conversations need to be fetched. This should be an integer. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RemoveTicketConversation - -
- - -Remove a conversation from a Freshservice ticket. - -**Parameters** - -- **conversation_ticket_id** (`integer`, required) The ID of the ticket from which the conversation should be removed. -- **conversation_id_to_remove** (`integer`, required) The ID of the specific reply or note to delete from a Freshservice ticket. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetTicketTasks - -
- - -Retrieve tasks for a specific Freshservice ticket. - -**Parameters** - -- **ticket_request_id** (`integer`, required) ID of the Freshservice ticket for which tasks are to be retrieved. -- **tasks_per_page** (`integer`, optional) Specify the number of tasks to retrieve per page in the paginated list. -- **page_number** (`integer`, optional) The specific page number to retrieve from the paginated list of tasks. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveTicketTask - -
- - -Retrieve details of a task from a ticket in Freshservice. - -**Parameters** - -- **ticket_request_id** (`integer`, required) The ID of the ticket request to retrieve the specific task from Freshservice. -- **task_identifier** (`integer`, required) The unique identifier for the task to be retrieved. Provide this to get task details from a ticket. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteTicketTask - -
- - -Deletes a task from a specified ticket in Freshservice. - -**Parameters** - -- **ticket_id** (`integer`, required) The unique ID of the ticket from which you want to delete a task. -- **task_id** (`integer`, required) The unique identifier for the task to be deleted from the ticket. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetTicketTimeEntries - -
- - -Retrieve time entries for a given ticket ID. - -**Parameters** - -- **ticket_request_id** (`integer`, required) The unique ID of the ticket request to retrieve time entries for. -- **number_of_entries_per_page** (`integer`, optional) The number of time entries to retrieve in each page of a paginated list. -- **page_number** (`integer`, optional) The page number to retrieve from the paginated list of time entries. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetTicketTimeEntry - -
- - -Retrieve a time entry for a specific ticket in Freshservice. - -**Parameters** - -- **ticket_request_id** (`integer`, required) The ID of the specific ticket request for which you want to retrieve the time entry. It must be an integer. -- **time_entry_id** (`integer`, required) Provide the ID of the time entry to retrieve specific details from a ticket in Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteTicketTimeEntry - -
- - -Deletes a time entry from a Freshservice ticket. - -**Parameters** - -- **ticket_id** (`integer`, required) The unique identifier for the Freshservice ticket from which the time entry will be deleted. This must be an integer. -- **time_entry_id** (`integer`, required) The unique integer ID of the time entry to be deleted from the Freshservice ticket. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ListFreshserviceChanges - -
- - -Retrieve all changes from Freshservice. - -**Parameters** - -- **change_filter_name** (`string`, optional) Specify the filter name to retrieve changes. Possible values: 'my_open', 'unassigned', 'closed', 'release_requested', 'deleted', 'all'. -- **requester_id** (`string`, optional) ID of the person who requested the changes to filter results. -- **requester_email** (`string`, optional) Retrieve changes by the requester's email address in Freshservice. -- **updated_since** (`string`, optional) Retrieve changes updated after a specified date. Date format should be YYYY-MM-DD. -- **page_size** (`integer`, optional) Specify the number of changes to retrieve per page in a paginated list. -- **page_number** (`integer`, optional) The specific page number to retrieve in a paginated list of changes. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveChangeRequest - -
- - -Fetch a Change request by ID from Freshservice. - -**Parameters** - -- **change_request_id** (`integer`, required) ID of the Change request to retrieve from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteFreshserviceChange - -
- - -Deletes a specified change request from Freshservice. - -**Parameters** - -- **change_request_id** (`integer`, required) The ID of the change request to delete from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveChangeNotes - -
- - -Retrieve notes from a specific change request. - -**Parameters** - -- **change_request_id** (`integer`, required) ID of the change request for which notes are to be retrieved. This is an integer value. -- **notes_per_page** (`integer`, optional) The number of notes to retrieve per page in a paginated list. -- **page_number_to_retrieve** (`integer`, optional) The specific page number of notes to retrieve for pagination. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveChangeNote - -
- - -Retrieve a specific note from a change request in Freshservice. - -**Parameters** - -- **change_request_id** (`integer`, required) ID of the change request to retrieve its specific note. -- **note_identifier** (`integer`, required) The unique identifier for the note to be retrieved from a change request in Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteChangeNote - -
- - -Delete a note from a Change request in Freshservice. - -**Parameters** - -- **change_request_id** (`integer`, required) The unique ID of the Change request from which the note will be deleted. -- **note_id** (`integer`, required) The unique identifier of the note to delete from a Change request in Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveChangeTasks - -
- - -Retrieve tasks for a specific Change request in Freshservice. - -**Parameters** - -- **change_request_id** (`integer`, required) ID of the Change request for retrieving associated tasks from Freshservice. -- **tasks_per_page** (`integer`, optional) Specify the number of tasks to retrieve per page in the paginated list. -- **page_number** (`integer`, optional) Specify the page number of tasks to retrieve for the Change request. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveChangeTaskInfo - -
- - -Retrieve details of a task in a change request. - -**Parameters** - -- **change_request_id** (`integer`, required) ID of the change request to retrieve the corresponding task details. -- **task_identifier** (`integer`, required) Provide the integer ID of the task to retrieve its details. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RemoveChangeTask - -
- - -Delete a task from a change request in Freshservice. - -**Parameters** - -- **change_request_id** (`integer`, required) The unique identifier for the change request from which a task will be deleted. This should be an integer. -- **task_identifier** (`integer`, required) The unique integer ID of the task to delete from a change request in Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetChangeTimeEntries - -
- - -Retrieve time entries for a specific Change request. - -**Parameters** - -- **change_request_id** (`integer`, required) ID of the change request for which time entries should be retrieved. This is necessary to specify which change request's time entries are needed. -- **time_entries_per_page** (`integer`, optional) Specify the number of time entries to retrieve per page. Helps in paginated responses. -- **page_number_to_retrieve** (`integer`, optional) The page number to retrieve from the paginated list of time entries. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveChangeRequestTimeEntry - -
- - -Retrieve a time entry from a Change request by ID. - -**Parameters** - -- **change_request_id** (`integer`, required) The ID of the Change request to retrieve the time entry from. This must be an integer. -- **time_entry_id** (`integer`, required) The numeric ID of the time entry to retrieve details for from a Change request. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteChangeTimeEntryFreshservice - -
- - -Delete a time entry from a Change request in Freshservice. - -**Parameters** - -- **change_request_id** (`integer`, required) The unique identifier of the Change request from which the time entry will be deleted. This integer ID specifies the specific change. -- **time_entry_id** (`integer`, required) ID of the time entry to be deleted from the Change request in Freshservice. Integer value expected. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveAllProjects - -
- - -Retrieve a list of all projects in Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) Specify the number of project entries to retrieve per page for pagination. -- **page_number** (`integer`, optional) Specify the page number to retrieve in a paginated list of projects. -- **project_status_filter** (`string`, optional) Filter projects by status: 'all', 'open', 'in_progress', or 'completed'. -- **filter_archived_projects** (`boolean`, optional) If true, filter for archived projects; if false, filter for active projects. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveFreshserviceProject - -
- - -Retrieve project details from Freshservice by ID. - -**Parameters** - -- **project_id** (`integer`, required) The unique integer ID of the project to retrieve from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteFreshserviceProject - -
- - -Deletes a project in Freshservice by ID. - -**Parameters** - -- **project_id** (`integer`, required) The ID of the project in Freshservice to delete. This should be an integer representing the specific project you wish to remove. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ArchiveProject - -
- - -Archive an existing project in Freshservice. - -**Parameters** - -- **project_id** (`integer`, required) The unique ID of the project to be archived in Freshservice. Provide a valid integer. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RestoreArchivedProject - -
- - -Restores an archived project in Freshservice. - -**Parameters** - -- **project_id** (`integer`, required) The identifier of the archived project to be restored in Freshservice. It should be an integer value. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ListProjectTasks - -
- - -Retrieve a list of all project tasks in Freshservice. - -**Parameters** - -- **project_id** (`integer`, required) The ID of the project for which you want to retrieve tasks. -- **entries_per_page** (`integer`, optional) The number of entries to retrieve in each page for pagination. -- **page_number** (`integer`, optional) The specific page number of the task list to retrieve. -- **task_filter** (`string`, optional) Filter tasks by status. Options: all, open, in_progress, completed, overdue, unassigned. -- **task_parent_id** (`integer`, optional) Filter tasks by parent ID for specific task hierarchy or relationships. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetProjectTaskDetails - -
- - -Retrieve detailed information about a project task in Freshservice. - -**Parameters** - -- **task_id** (`integer`, required) The unique identifier for the task to retrieve details. -- **project_id** (`integer`, required) The unique identifier for the project to which the task belongs. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteProjectTask - -
- - -Deletes a specified project task in Freshservice. - -**Parameters** - -- **project_identifier** (`integer`, required) The unique identifier for the project containing the task to be deleted. This is required to specify which project's task needs to be removed. -- **task_id_to_delete** (`integer`, required) ID of the task to be deleted from a project in Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetChangeFormFields - -
- - -Retrieve all fields in the Change Object of Freshservice. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetReleaseFormFields - -
- - -Retrieve all fields of the release object form. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetFreshserviceAnnouncements - -
- - -Retrieve all announcements from Freshservice. - -**Parameters** - -- **announcement_state** (`string`, optional) Specify the state of the announcements to retrieve: archived, active, scheduled, or unread. -- **announcements_per_page** (`integer`, optional) Specify the number of announcements to retrieve per page for pagination. -- **retrieve_page_number** (`integer`, optional) Specify the page number of announcements to retrieve. Useful for navigating through paginated results. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.FetchAnnouncementDetails - -
- - -Retrieve specific announcement details from Freshservice. - -**Parameters** - -- **announcement_id** (`integer`, required) The unique integer ID of the announcement to retrieve from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteFreshserviceAnnouncement - -
- - -Delete a specific announcement from Freshservice. - -**Parameters** - -- **announcement_id_to_delete** (`integer`, required) The ID of the announcement to delete from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveFreshserviceProblems - -
- - -Retrieve all problems from Freshservice. - -**Parameters** - -- **updated_since** (`string`, optional) Retrieve problems updated since the specified date. Format: YYYY-MM-DD. -- **problems_per_page** (`integer`, optional) The number of problems to retrieve per page in a paginated list from Freshservice. -- **page_number_to_retrieve** (`integer`, optional) The page number of the problems list to retrieve from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveFreshserviceProblem - -
- - -Retrieve a specific problem in Freshservice by ID. - -**Parameters** - -- **problem_identifier** (`integer`, required) The unique ID of the problem in Freshservice to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteProblem - -
- - -Delete a problem using its ID from Freshservice. - -**Parameters** - -- **problem_id** (`integer`, required) The unique ID of the problem to delete from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetProblemNotes - -
- - -Retrieve notes for a specific problem ID in Freshservice. - -**Parameters** - -- **problem_id** (`integer`, required) The unique integer ID of the problem for which you want to retrieve notes from Freshservice. -- **notes_per_page** (`integer`, optional) The number of notes to retrieve per page in the paginated results. -- **page_number** (`integer`, optional) The page number of the notes to retrieve for pagination purposes. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveProblemNote - -
- - -Retrieve a specific note from a problem in Freshservice. - -**Parameters** - -- **problem_identifier** (`integer`, required) The unique ID of the problem to retrieve the note from. Must be an integer. -- **note_id** (`integer`, required) The unique identifier for the note to be retrieved. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteProblemNote - -
- - -Delete a note from a specific problem in Freshservice. - -**Parameters** - -- **problem_id** (`integer`, required) The unique identifier for the problem from which the note will be deleted. This should be an integer corresponding to the specific problem in Freshservice. -- **note_id** (`integer`, required) The unique identifier for the note to be deleted from a problem in Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetProblemTasks - -
- - -Retrieve tasks for a specific problem from Freshservice. - -**Parameters** - -- **problem_id** (`integer`, required) The ID of the problem for which tasks need to be retrieved from Freshservice. -- **tasks_per_page** (`integer`, optional) Specify the number of tasks to retrieve per page for pagination. -- **page_number** (`integer`, optional) The specific page number of tasks to retrieve. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveProblemTask - -
- - -Retrieve details of a specific task from a problem in Freshservice. - -**Parameters** - -- **problem_id** (`integer`, required) The unique integer ID of the problem to retrieve the task from in Freshservice. -- **task_id** (`integer`, required) The unique identifier for the task to retrieve from the specified problem. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteProblemTask - -
- - -Delete a task from a problem in Freshservice. - -**Parameters** - -- **problem_id** (`integer`, required) The unique ID of the problem from which the task will be deleted. -- **task_id** (`integer`, required) The unique identifier of the task to be deleted in Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetProblemTimeEntries - -
- - -Retrieve time entries for a specific problem by ID. - -**Parameters** - -- **problem_id** (`integer`, required) ID of the problem for which time entries need to be retrieved. This is an integer value. -- **entries_per_page** (`integer`, optional) The number of time entries to retrieve per page in a paginated list. -- **page_number_to_retrieve** (`integer`, optional) The page number to retrieve in the paginated list of time entries. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetProblemTimeEntry - -
- - -Retrieve time entry details for a specific problem. - -**Parameters** - -- **problem_id** (`integer`, required) The unique identifier for the problem to retrieve a time entry from in Freshservice. -- **time_entry_id** (`integer`, required) The unique integer ID of the time entry to be retrieved. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteProblemTimeEntry - -
- - -Delete a time entry from a specified problem in Freshservice. - -**Parameters** - -- **problem_identifier** (`integer`, required) The unique ID representing the problem from which you want to delete a time entry. -- **time_entry_id** (`integer`, required) The unique identifier for the time entry to be deleted from the specified problem. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetUserOnboardingRequests - -
- - -Retrieve onboarding requests for a user. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveOnboardingRequest - -
- - -Retrieve details of a specific onboarding request. - -**Parameters** - -- **onboarding_request_id** (`integer`, required) The unique display ID of the onboarding request to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetOnboardingRequestTickets - -
- - -Retrieve FreshService Tickets for a specific Onboarding Request. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetCannedResponses - -
- - -Retrieve all canned responses from Freshservice. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetCannedResponse - -
- - -Retrieve a specific Canned Response by ID from Freshservice. - -**Parameters** - -- **canned_response_id** (`integer`, required) The unique ID of the Canned Response you want to retrieve from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteCannedResponse - -
- - -Delete a specific canned response from Freshservice. - -**Parameters** - -- **canned_response_id** (`integer`, required) The unique integer ID of the canned response to delete from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetFreshserviceCannedResponseFolders - -
- - -Retrieve all canned response folders from Freshservice. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetCannedResponseFolder - -
- - -Retrieve a specific canned response folder from Freshservice. - -**Parameters** - -- **canned_response_folder_id** (`integer`, required) The ID of the canned response folder to retrieve from Freshservice. It should be an integer. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteCannedResponseFolder - -
- - -Delete a Canned Response Folder in Freshservice. - -**Parameters** - -- **canned_response_folder_id** (`integer`, required) ID of the canned response folder to delete. This is required to identify which folder should be removed from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ListCannedResponses - -
- - -Retrieve all canned responses from a specified folder. - -**Parameters** - -- **canned_response_folder_id** (`integer`, required) ID of the canned response folder to retrieve responses from. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetReleasesList - -
- - -Retrieve a list of all Releases in Freshservice. - -**Parameters** - -- **fetch_releases_updated_since** (`string`, optional) Retrieve releases updated since a specific date in YYYY-MM-DD format. -- **releases_per_page** (`integer`, optional) The number of releases to retrieve per page in the paginated list. -- **page_number_to_retrieve** (`integer`, optional) Specify the page number of release data to retrieve for pagination. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetReleaseDetails - -
- - -Retrieve details of a specific release by ID in Freshservice. - -**Parameters** - -- **release_identifier** (`integer`, required) The ID of the release you want to retrieve from Freshservice. Provide the specific release ID as an integer to get its details. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteFreshserviceRelease - -
- - -Delete a specific release in Freshservice. - -**Parameters** - -- **release_id_for_deletion** (`integer`, required) The unique integer ID of the release to delete from Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetReleaseNotes - -
- - -Retrieve release notes from Freshservice using a release ID. - -**Parameters** - -- **release_id** (`integer`, required) The ID of the release for which notes are to be retrieved. -- **notes_per_page** (`integer`, optional) The number of release notes to retrieve in each page. -- **retrieve_page_number** (`integer`, optional) The specific page number of release notes to retrieve. Useful for paginated results. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.FetchReleaseNote - -
- - -Retrieve a note on a release by ID from Freshservice. - -**Parameters** - -- **release_id** (`integer`, required) The unique integer ID representing the release in Freshservice to retrieve the note from. -- **note_id** (`integer`, required) The unique identifier for the note to be retrieved. It must be an integer. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteReleaseNoteFreshservice - -
- - -Deletes a note from a specified release in Freshservice. - -**Parameters** - -- **release_id** (`integer`, required) The numeric ID of the release from which the note will be deleted. This ID is required to identify the specific release in Freshservice. -- **note_id** (`integer`, required) The integer ID of the note to be deleted from the release in Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveReleaseTasks - -
- - -Retrieve tasks for a specified release in Freshservice. - -**Parameters** - -- **release_id** (`integer`, required) ID of the release for which tasks are to be retrieved in Freshservice. -- **tasks_per_page** (`integer`, optional) Number of tasks to retrieve per page in a paginated list. -- **page_number** (`integer`, optional) The page number to retrieve tasks from. Use for paginated results. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.RetrieveReleaseTask - -
- - -Retrieve a specific task from a release in Freshservice. - -**Parameters** - -- **release_id** (`integer`, required) The unique identifier for the release to retrieve a specific task from. This is an integer value. -- **task_id** (`integer`, required) The unique ID of the task you want to retrieve within a release. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteReleaseTask - -
- - -Delete a task from a specified release in Freshservice. - -**Parameters** - -- **release_id** (`integer`, required) ID of the release from which the task will be deleted. This must be a valid integer. -- **task_id_integer** (`integer`, required) The integer ID of the task to be deleted from the release. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetReleaseTimeEntries - -
- - -Retrieve time entries for a specific release in Freshservice. - -**Parameters** - -- **release_id** (`integer`, required) The unique ID of the release for which time entries are to be retrieved in Freshservice. -- **entries_per_page** (`integer`, optional) The number of time entries to retrieve per page in the paginated list. -- **page_number_to_retrieve** (`integer`, optional) The page number to retrieve in the paginated list of time entries. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.FetchReleaseTimeEntry - -
- - -Retrieve details of a release time entry by ID. - -**Parameters** - -- **release_id** (`integer`, required) The unique integer ID of the release for which you want to fetch the time entry details. This identifies the specific release in Freshservice. -- **time_entry_id** (`integer`, required) The integer ID of the specific time entry you want to retrieve from a release. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeleteReleaseTimeEntry - -
- - -Delete a time entry from a release in Freshservice. - -**Parameters** - -- **release_id** (`integer`, required) The unique integer ID of the release from which to delete the time entry. -- **time_entry_id** (`integer`, required) ID of the time entry to be deleted from the release in Freshservice. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.ListPurchaseOrders - -
- - -Retrieve a list of all Purchase Orders from Freshservice. - -**Parameters** - -- **entries_per_page** (`integer`, optional) Specify the number of entries to retrieve per page. -- **page_number** (`integer`, optional) Specify the page number to retrieve from the list of purchase orders. Useful for navigating paginated results. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.GetPurchaseOrder - -
- - -Retrieve details of an existing purchase order by ID. - -**Parameters** - -- **purchase_order_id** (`integer`, required) The unique identifier for the purchase order you wish to retrieve. This must be an integer. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## FreshserviceApi.DeletePurchaseOrder - -
- - -Delete a specified purchase order in Freshservice. - -**Parameters** - -- **purchase_order_id** (`integer`, required) The unique ID of the purchase order to delete from Freshservice. This ID identifies the specific order to be removed. - -**Secrets** - -This tool requires the following secrets: `FRESHSERVICE_API_KEY`, `FRESHSERVICE_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - - diff --git a/app/en/resources/integrations/customer-support/intercom-api/page.mdx b/app/en/resources/integrations/customer-support/intercom-api/page.mdx deleted file mode 100644 index aebcbb24e..000000000 --- a/app/en/resources/integrations/customer-support/intercom-api/page.mdx +++ /dev/null @@ -1,3634 +0,0 @@ -# IntercomApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The IntercomApi MCP Server offers a comprehensive suite of tools for managing and interacting with the Intercom platform. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Intercom API Subdomain - -The IntercomApi MCP Server requires setting the `INTERCOM_API_SUBDOMAIN` secret in the Arcade Dashboard. The appropriate value depends on the region you are using: - -- For the United States servers, set `INTERCOM_API_SUBDOMAIN` secret to `api` -- For the European servers, set `INTERCOM_API_SUBDOMAIN` secret to `api.eu` -- For the Australian servers, set `INTERCOM_API_SUBDOMAIN` secret to `api.au` - -## IntercomApi.GetCurrentAdminInfo - -
- - -Retrieve details of the currently authorized Intercom admin. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN`. [Check which value to use](#intercom-api-subdomain) for the secret. Learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets). - -## IntercomApi.SetAdminAway - -
- - -Mark an admin as away in the Intercom Inbox. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **admin_id** (`integer`, optional) The unique identifier for the admin to set as away in the Intercom Inbox. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN`. [Check which value to use](#intercom-api-subdomain) for the secret. Learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets). - -## IntercomApi.GetAdminActivityLogs - -
- - -Retrieve a log of activities by all admins in an app. - -**Parameters** - -- **start_date_unix_timestamp** (`string`, required) The start date for requested data, formatted as a UNIX timestamp. -- **end_date_unix_timestamp** (`string`, optional) The end date for data retrieval in UNIX timestamp format. Determines the latest logs to include. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchWorkspaceAdmins - -
- - -Retrieve a list of admins in a workspace. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.RetrieveAdminDetails - -
- - -Retrieve details of a specific admin from Intercom. - -**Parameters** - -- **admin_id** (`integer`, required) The unique identifier for the admin. Provide an integer value to retrieve the admin's details. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ListRecentArticles - -
- - -Fetches a list of all articles from Intercom. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CreateIntercomArticle - -
- - -Create a new article in Intercom. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchIntercomArticle - -
- - -Fetch details of a specific Intercom article by ID. - -**Parameters** - -- **article_id** (`integer`, required) The unique identifier for the article provided by Intercom. Use this to fetch article details. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.UpdateArticleDetails - -
- - -Update details of a specific article on Intercom. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **article_identifier** (`integer`, optional) The unique identifier for the article on Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.DeleteIntercomArticle - -
- - -Deletes a specified article in Intercom. - -**Parameters** - -- **article_id** (`integer`, required) The unique identifier for the article to be deleted, provided by Intercom. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ListCollections - -
- - -Retrieve a list of all collections sorted by update date. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CreateHelpCenterCollection - -
- - -Create a new collection in the Intercom Help Center. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchIntercomCollectionDetails - -
- - -Fetches details of a specific Intercom collection. - -**Parameters** - -- **collection_id** (`integer`, required) The unique identifier for the collection provided by Intercom. It is required to fetch a specific collection's details. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.UpdateCollectionDetails - -
- - -Update the details of a single collection. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **collection_id** (`integer`, optional) The unique identifier for the collection in Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.DeleteCollection - -
- - -Delete a specified collection in Intercom. - -**Parameters** - -- **collection_id** (`integer`, required) The unique identifier for the collection provided by Intercom, required to delete it. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.GetHelpCenterDetails - -
- - -Retrieve detailed information about a specific Help Center. - -**Parameters** - -- **help_center_id** (`integer`, required) The unique identifier for the Help Center collection provided by Intercom. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ListHelpCenters - -
- - -Retrieve a list of all Help Centers from Intercom. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.GetRecentHelpCenterSections - -
- - -Fetches a list of all help center sections sorted by recent updates. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CreateHelpCenterSection - -
- - -Create a new section in the help center. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.GetSectionDetails - -
- - -Fetch details of a specific help center section by ID. - -**Parameters** - -- **section_id** (`integer`, required) The unique identifier for the help center section provided by Intercom. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.UpdateHelpCenterSection - -
- - -Update the details of a help center section. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **section_id** (`integer`, optional) The unique identifier for the section assigned by Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.DeleteIntercomSection - -
- - -Delete a section from Intercom Help Center. - -**Parameters** - -- **section_id** (`integer`, required) The unique identifier for the section to be deleted from Intercom. Provided by Intercom. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CreateOrUpdateCompany - -
- - -Create or update a company in Intercom. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchCompanyDetails - -
- - -Fetch detailed information about a single company. - -**Parameters** - -- **company_id** (`string`, optional) The unique identifier for the company to retrieve details for. -- **company_name** (`string`, optional) The exact name of the company to filter and retrieve details for. -- **company_segment_id** (`string`, optional) The segment ID to filter companies by. Use this to retrieve companies associated with a specific segment. -- **company_tag_id** (`string`, optional) The tag ID used to filter and retrieve specific companies by their associated tag. -- **result_page_number** (`integer`, optional) The page number of results to fetch. Defaults to the first page. -- **results_per_page** (`integer`, optional) Number of results to display per page. Defaults to 15. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.GetCompanyDetails - -
- - -Retrieve detailed information about a specific company. - -**Parameters** - -- **company_id** (`string`, required) The unique identifier for the company provided by Intercom. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.UpdateCompanyInfo - -
- - -Update company information by ID in Intercom. - -**Parameters** - -- **company_identifier** (`string`, required) The unique identifier assigned by Intercom for the company. Required to update company details. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.DeleteCompany - -
- - -Deletes a single company by its ID. - -**Parameters** - -- **company_id** (`string`, required) The unique identifier for the company to be deleted in Intercom. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchCompanyContacts - -
- - -Fetch a list of contacts for a specific company. - -**Parameters** - -- **company_id** (`string`, required) The unique identifier for the company, provided by Intercom, to fetch associated contacts. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ListCompanySegments - -
- - -Fetch segments belonging to a specific company. - -**Parameters** - -- **company_id** (`string`, required) The unique identifier for the company provided by Intercom. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ListCompaniesIntercom - -
- - -Retrieve a sorted list of companies from Intercom. - -**Parameters** - -- **page_number** (`integer`, optional) The page number of results to retrieve, starting from the first page by default. -- **results_per_page** (`integer`, optional) Number of results to return per page. The default is 15. -- **sort_order** (`string`, optional) Specify 'asc' for ascending or 'desc' for descending order when listing companies. Defaults to 'desc'. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ScrollThroughAllCompanies - -
- - -Efficiently iterate over all companies using the scroll API. - -**Parameters** - -- **scroll_page_identifier** (`string`, optional) The paging identifier returned in the response to continue fetching the next set of companies. Use the initial API response for the first request and subsequent responses for the next requests. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.AttachCompanyToContact - -
- - -Attach a company to a single contact in Intercom. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **contact_unique_identifier** (`string`, optional) The unique identifier for the contact as provided by Intercom. This is required to attach a company to the specified contact. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchContactCompanies - -
- - -Fetches a list of companies associated with a contact. - -**Parameters** - -- **contact_identifier** (`string`, required) The unique identifier for the contact provided by Intercom, required to fetch associated companies. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.DetachCompanyFromContact - -
- - -Detach a company from a specified contact in Intercom. - -**Parameters** - -- **company_id** (`string`, required) The unique identifier for the company provided by Intercom. -- **contact_identifier** (`string`, required) The unique identifier for the contact provided by Intercom. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchContactNotes - -
- - -Fetches notes associated with a specific contact. - -**Parameters** - -- **contact_id** (`integer`, required) The unique ID of the contact whose notes you want to fetch. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.AddNoteToContact - -
- - -Add a note to a contact in Intercom. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **contact_id** (`integer`, optional) The unique identifier for the contact to whom the note will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.GetContactSegments - -
- - -Fetch segments associated with a contact. - -**Parameters** - -- **contact_unique_identifier** (`string`, required) The unique identifier for the contact provided by Intercom. This is required to fetch associated segments. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ListContactSubscriptions - -
- - -Retrieve subscription types associated with a contact. - -**Parameters** - -- **contact_identifier** (`string`, required) The unique identifier provided by Intercom for the contact. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ManageContactSubscription - -
- - -Manage a contact's subscription preferences in Intercom. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **contact_identifier** (`string`, optional) The unique identifier assigned to the contact by Intercom. This is required to specify which contact you want to manage the subscription for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.RemoveSubscriptionFromContact - -
- - -Remove a specific subscription from a contact. - -**Parameters** - -- **contact_identifier** (`string`, required) The unique identifier for the contact in Intercom. Required to specify which contact's subscription should be removed. -- **subscription_type_id** (`string`, required) The unique identifier for the subscription type to remove from a contact in Intercom. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.GetContactTags - -
- - -Fetches tags attached to a specific contact. - -**Parameters** - -- **contact_unique_identifier** (`string`, required) The unique identifier for the contact, provided by Intercom, used to fetch associated tags. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.TagContact - -
- - -Attach a tag to a specific contact. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **contact_id** (`string`, optional) The unique identifier for the contact in Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.RemoveTagFromContact - -
- - -Remove a tag from a specific contact. - -**Parameters** - -- **contact_id** (`string`, required) The unique identifier for the contact in Intercom. This ID is necessary to specify which contact to remove the tag from. -- **tag_identifier** (`string`, required) The unique identifier for the tag assigned by Intercom. Used to specify which tag to remove from a contact. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.UpdateIntercomContact - -
- - -Update an existing Intercom contact's details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **contact_id** (`string`, optional) The unique identifier of the contact to update in Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchContactDetails - -
- - -Fetch the details of a specific contact. - -**Parameters** - -- **contact_id** (`string`, required) The unique identifier of the contact you want to fetch details for. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.DeleteContact - -
- - -Deletes a specified contact from the system. - -**Parameters** - -- **contact_id** (`string`, required) The unique identifier of the contact to be deleted. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.MergeContactIntercom - -
- - -Merge a lead contact into a user contact in Intercom. - -**Parameters** - -- **lead_contact_id** (`string`, optional) The unique identifier of the contact to merge away from. It must be a lead. -- **merge_into_user_id** (`string`, optional) Unique identifier for the contact to merge into. Must be a user contact ID. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.SearchIntercomContacts - -
- - -Search for contacts by their attributes. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchAllContacts - -
- - -Fetch a list of all contacts in your workspace. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CreateNewContact - -
- - -Create a new contact in the Intercom system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ArchiveContact - -
- - -Archive a single contact in Intercom. - -**Parameters** - -- **contact_id** (`string`, required) The unique identifier of the contact to be archived in Intercom. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.UnarchiveContact - -
- - -Unarchive a single contact in Intercom. - -**Parameters** - -- **contact_id** (`string`, required) The unique identifier of the contact to unarchive in Intercom. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.TagConversation - -
- - -Attach a tag to a specific conversation. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **conversation_id** (`string`, optional) The unique identifier of the conversation to which a tag will be attached. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.RemoveTagFromConversation - -
- - -Remove a tag from a specific conversation. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **conversation_id** (`string`, optional) The unique identifier of the conversation from which the tag will be removed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **tag_id** (`string`, optional) The unique identifier of the tag to be removed from the conversation. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchConversationList - -
- - -Retrieve a list of conversations with optional pagination options. - -**Parameters** - -- **pagination_starting_cursor** (`string`, optional) Cursor string to fetch the next page of conversations for pagination. -- **results_per_page** (`integer`, optional) Number of conversation results to display per page. Default is 20 if not specified. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CreateContactConversation - -
- - -Create a conversation initiated by a contact. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.GetConversationDetails - -
- - -Fetch details of a specific conversation from Intercom. - -**Parameters** - -- **conversation_id** (`integer`, required) The ID of the conversation to retrieve details for. This is required to fetch the specific conversation data. -- **retrieve_plaintext_conversation** (`string`, optional) Set to 'plaintext' to retrieve conversation messages in plain text format. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.UpdateConversation - -
- - -Update an existing conversation. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **conversation_id** (`integer`, optional) The ID of the conversation to update. It should be an integer representing the conversation you want to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **retrieve_messages_as_plaintext** (`string`, optional) Specify 'plaintext' to retrieve conversation messages in plain text format. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.SearchConversations - -
- - -Search conversations by specific attributes. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ReplyToIntercomConversation - -
- - -Reply to a conversation in Intercom with a message or note. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **conversation_identifier** (`string`, optional) The unique identifier for the conversation or 'last' to reply to the most recent conversation. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ManageConversation - -
- - -Manage and update conversation statuses or assignments. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **conversation_id** (`string`, optional) The unique identifier for the conversation in Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.AutoAssignIntercomConversation - -
- - -Auto-assign a conversation in Intercom. - -**Parameters** - -- **conversation_id** (`string`, required) The unique identifier for the conversation provided by Intercom. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.AttachContactToConversation - -
- - -Attach a contact to a conversation in Intercom. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **conversation_id** (`string`, optional) The unique identifier for the conversation in Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.DetachContactFromConversation - -
- - -Detach a contact from a conversation in Intercom. - -**Parameters** - -- **contact_identifier** (`string`, required) The unique identifier for the contact provided by Intercom. Use this to specify which contact to detach from the conversation. -- **conversation_identifier** (`string`, required) The unique identifier for the conversation in Intercom. This is required to detach the contact from the specified conversation. -- **admin_id** (`json`, optional) The ID of the admin performing the detachment action. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.RedactConversationPartOrMessage - -
- - -Redact specific parts or messages within a conversation. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ListWorkspaceDataAttributes - -
- - -Fetch data attributes for contacts, companies, or conversations. - -**Parameters** - -- **data_attribute_model** (`string`, optional) Specify the model type: 'contact', 'company', or 'conversation'. -- **include_archived_attributes** (`boolean`, optional) Set to true to include archived attributes in the list. By default, archived attributes are excluded. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CreateDataAttribute - -
- - -Create a data attribute for a contact or company. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.UpdateDataAttribute - -
- - -Update a data attribute's value via the API. - -**Parameters** - -- **data_attribute_id** (`integer`, required) The unique identifier for the data attribute to be updated. -- **allow_messenger_updates** (`boolean`, optional) Specify if the data attribute can be updated by the Messenger. Use 'true' to allow updates and 'false' to prevent them. -- **archive_attribute** (`boolean`, optional) Indicate if the attribute should be archived. `True` to archive, `False` to keep unarchived. -- **attribute_description** (`string`, optional) The readable description for the attribute as seen in the UI. Provides context or additional information about the attribute. -- **list_attribute_options** (`array[string]`, optional) An array of strings representing options for list attributes. Each option should be provided as a hash with `value` as the key and the data type must be `string`. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.SendIntercomEvent - -
- - -Submit events to Intercom for user activity tracking. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CreateEventSummaries - -
- - -Create event summaries for tracking user events. - -**Parameters** - -- **event_last_occurrence** (`integer`, optional) The timestamp representing the last occurrence of the event. -- **event_name_for_summaries** (`string`, optional) The name of the event, typically a past-tense verb-noun combination like 'updated-plan'. -- **event_occurrence_count** (`integer`, optional) The number of times the event occurred for the specified user. -- **first_event_timestamp** (`integer`, optional) Timestamp for when the event first occurred. Use an integer representing Unix time. -- **user_identifier** (`string`, optional) The unique identifier for the user to create event summaries for. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CreateMessageDataExport - -
- - -Create a data export job for Intercom messages. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CheckExportJobStatus - -
- - -Check the status of your Intercom data export job. - -**Parameters** - -- **job_identifier** (`string`, required) The unique identifier for the export job you want to check. This ID is provided when the export job is created. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CancelDataExportJob - -
- - -Cancels an active data export job on Intercom. - -**Parameters** - -- **job_identifier** (`string`, required) The unique identifier for the data export job to be canceled. This is required to specify which job to stop. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.DownloadIntercomDataExport - -
- - -Download completed data exports from Intercom. - -**Parameters** - -- **job_identifier** (`string`, required) The unique identifier for the completed data export job. Required to download the data. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CreateAdminInitiatedMessage - -
- - -Create a message initiated by an admin via Intercom. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchNewsItems - -
- - -Retrieve a list of news items from Intercom. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CreateNewsItem - -
- - -Create a news item using Intercom. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.GetNewsItemDetails - -
- - -Fetches details of a specific news item. - -**Parameters** - -- **news_item_id** (`integer`, required) The unique identifier for the news item provided by Intercom. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.UpdateNewsItem - -
- - -Updates information for a specific news item. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **news_item_id** (`integer`, optional) The unique identifier for the news item provided by Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.DeleteNewsItem - -
- - -Delete a specific news item from the platform. - -**Parameters** - -- **news_item_id** (`integer`, required) The unique identifier for the news item to be deleted. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchLiveNewsfeedItems - -
- - -Retrieve all live news items from a specific newsfeed. - -**Parameters** - -- **newsfeed_id** (`string`, required) The unique identifier for the newsfeed, provided by Intercom, to retrieve live news items. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchAllNewsfeeds - -
- - -Fetch a list of all available newsfeeds. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchNewsfeedDetails - -
- - -Fetch details of a specific newsfeed using its ID. - -**Parameters** - -- **newsfeed_id** (`string`, required) The unique identifier for the newsfeed item provided by Intercom. Use this to retrieve specific newsfeed details. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchNoteDetails - -
- - -Fetches details of a specific note. - -**Parameters** - -- **note_id** (`integer`, required) The unique identifier for the note you want to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.GetAllSegments - -
- - -Retrieve a list of all segments. - -**Parameters** - -- **include_contact_count** (`boolean`, optional) Set to true to include the number of contacts in each segment. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.GetSegmentDetails - -
- - -Fetch details of a single segment from Intercom. - -**Parameters** - -- **segment_id** (`string`, required) The unique identifier of a specific segment to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ListSubscriptionTypes - -
- - -Retrieve all subscription types from Intercom. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.DeflectPhoneCallsToMessenger - -
- - -Deflect phone calls to Intercom Messenger via SMS link. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchWorkspaceTags - -
- - -Retrieve all tags from a workspace in Intercom. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ManageTagOperations - -
- - -Create, update, or manage tags for companies and users. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchTagDetails - -
- - -Fetch details of a tag using its ID from the workspace. - -**Parameters** - -- **tag_id** (`string`, required) The unique identifier for a specific tag to fetch its details from the workspace. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.RemoveTag - -
- - -Delete a tag from the Intercom workspace using its ID. - -**Parameters** - -- **tag_id** (`string`, required) The unique identifier of the tag to be deleted from the workspace. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ListAppTeams - -
- - -Retrieve a list of teams for the application. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.GetTeamDetails - -
- - -Fetch details of a team and its admins. - -**Parameters** - -- **team_unique_identifier** (`string`, required) The unique identifier of a specific team to retrieve details. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CreateTicketAttribute - -
- - -Create a new attribute for a ticket type. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **ticket_type_identifier** (`string`, optional) The unique identifier for the ticket type provided by Intercom, required to specify which ticket type the new attribute will be added to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.UpdateTicketTypeAttribute - -
- - -Updates an existing attribute for a ticket type. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **ticket_type_identifier** (`string`, optional) The unique identifier for the ticket type provided by Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **ticket_attribute_id** (`string`, optional) The unique identifier for the ticket type attribute given by Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.GetTicketTypes - -
- - -Retrieve a list of all ticket types for a workspace. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CreateTicketType - -
- - -Create a new ticket type with default attributes. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchTicketTypeDetails - -
- - -Fetches details of a specific ticket type in Intercom. - -**Parameters** - -- **ticket_type_id** (`string`, required) The unique identifier for the ticket type assigned by Intercom. Used to fetch specific ticket type details. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.UpdateTicketType - -
- - -Update a ticket type with a new icon or details. - -**Parameters** - -- **ticket_type_id** (`string`, required) The unique identifier for the ticket type as given by Intercom. -- **internal_use** (`boolean`, optional) Set to true if tickets are intended for internal use only; false for customer sharing. -- **is_ticket_type_archived** (`boolean`, optional) Set to true to archive the ticket type, or false to keep it active. -- **ticket_type_description** (`string`, optional) Describe the ticket type. This should provide an overview or details about the ticket type. -- **ticket_type_icon** (`string`, optional) Specify an emoji for the ticket type icon using Twemoji Cheatsheet. -- **ticket_type_name** (`string`, optional) The name of the ticket type you want to update. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ReplyToTicket - -
- - -Reply to a ticket with an admin note. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **ticket_id** (`string`, optional) The unique identifier of the ticket to reply to. This must be provided to specify which ticket the admin note is for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.CreateIntercomTicket - -
- - -Create a new support ticket in Intercom. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.UpdateSupportTicket - -
- - -Modify an existing support ticket in Intercom. - -**Parameters** - -- **ticket_id** (`string`, required) The unique identifier for the ticket as provided by Intercom. -- **admin_id** (`string`, optional) The ID of the admin performing the action on the ticket. -- **assignee_id** (`string`, optional) The ID of the admin or team to which the ticket is assigned. Use '0' to unassign. -- **ticket_details** (`json`, optional) A JSON object containing key-value pairs of the ticket attributes to be updated, such as subject, priority, or tags. -- **ticket_state** (`string`, optional) The current state of the ticket. Must be one of: 'in_progress', 'waiting_on_customer', or 'resolved'. -- **ticket_visible_to_users** (`boolean`, optional) Set to true to make the ticket visible to users; false to keep it hidden. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchTicketDetails - -
- - -Fetch details of a specific ticket from Intercom. - -**Parameters** - -- **ticket_identifier** (`string`, required) The unique identifier for the ticket, as provided by Intercom. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.UpdateVisitorInfo - -
- - -Update an existing visitor's information in Intercom. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.FetchVisitorDetails - -
- - -Fetch details of a single visitor using their user ID. - -**Parameters** - -- **visitor_user_id** (`string`, required) The user ID of the visitor you want to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## IntercomApi.ConvertVisitorToUser - -
- - -Convert a Visitor into a User or merge with an existing User. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `INTERCOM_API_SUBDOMAIN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Reference - -Below is a reference of enumerations used by some of the tools in the IntercomApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - -## Auth - -The IntercomApi MCP Server uses the Auth Provider with id `arcade-intercom` to connect to users' IntercomApi accounts. In order to use the MCP Server, you will need to configure the `arcade-intercom` auth provider. - - diff --git a/app/en/resources/integrations/customer-support/pagerduty/page.mdx b/app/en/resources/integrations/customer-support/pagerduty/page.mdx deleted file mode 100644 index 69ffc65c6..000000000 --- a/app/en/resources/integrations/customer-support/pagerduty/page.mdx +++ /dev/null @@ -1,597 +0,0 @@ -# PagerDuty - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The PagerDuty MCP Server lets agents list and inspect incidents, on-calls, services, teams, users, schedules, log entries, and escalation policies. Follows the Linear-style docs with code snippets in Python and JavaScript. - - - Arcade supports Classic PagerDuty apps. Select **read-only** access; all tools - in this MCP Server only read data. (Use read/write only if you add custom - write tools.) See [PagerDuty OAuth - functionality](https://developer.pagerduty.com/docs/oauth-functionality). - - - - Configure PagerDuty OAuth in the [PagerDuty auth - provider](/references/auth-providers/pagerduty) before using these tools. - - -## Available tools - - - - - If you need a tool that's not listed, [contact us](mailto:contact@arcade.dev) - or [build your own](/guides/create-tools/tool-basics/build-mcp-server). - - - - - `readOnlyHint` — reads data only - `openWorldHint` — calls PagerDuty's - external API - `destructiveHint` — none of these tools delete data - - `idempotentHint` — repeating the same read call returns the same data - - ---- - -## User context - -### PagerDuty.WhoAmI - -Get the authenticated user's profile plus current on-call info. - - - - `readOnlyHint: true` — reads data only - `openWorldHint: true` — calls - PagerDuty’s external API - `destructiveHint: false` — no destructive - operations - `idempotentHint: true` — same request returns same data - - - - -**Parameters** -None. - -**API calls:** GET `/users/me`, GET `/oncalls` - ---- - -## Incident tools - -### PagerDuty.ListIncidents - -List incidents with filters (status, urgency, services, teams, time window). - - - - `readOnlyHint: true` — reads data only - `openWorldHint: true` — calls - PagerDuty’s external API - `destructiveHint: false` — no destructive - operations - `idempotentHint: true` — same request returns same data - - - - -**Parameters** - -- **status** (`enum`, _optional_) Filter by status. -- **urgency** (`enum`, _optional_) Filter by urgency. -- **service_ids** (`array`, _optional_) Filter by service IDs. -- **team_ids** (`array`, _optional_) Filter by team IDs. -- **since** / **until** (`string`, _optional_) ISO-8601 time range. -- **limit** (`integer`, _optional_) 1-50, default 10. -- **offset** (`integer`, _optional_) Pagination offset. - -**API calls:** GET `/incidents` - ---- - -### PagerDuty.GetIncident - -Get a single incident by ID. - - - - `readOnlyHint: true` — reads data only - `openWorldHint: true` — calls - PagerDuty’s external API - `destructiveHint: false` — no destructive - operations - `idempotentHint: true` — same request returns same data - - - - -**Parameters** - -- **incident_id** (`string`, **required**) Incident ID. - -**API calls:** GET `/incidents/{id}` - ---- - -### PagerDuty.ListLogEntries - -List account log entries (activity feed). - - - - `readOnlyHint: true` — reads data only - `openWorldHint: true` — calls - PagerDuty’s external API - `destructiveHint: false` — no destructive - operations - `idempotentHint: true` — same request returns same data - - - - -**Parameters** - -- **since** / **until** (`string`, _optional_) ISO-8601 time range. -- **team_ids** (`array`, _optional_) Filter by team IDs. -- **time_zone** (`string`, _optional_) IANA time zone. -- **is_overview** (`boolean`, _optional_) Compact mode. Default: `true`. -- **limit** (`integer`, _optional_) 1-50. Default: 10. -- **offset** (`integer`, _optional_) Pagination offset. - -**API calls:** GET `/log_entries` - ---- - -## Escalation policy tools - -### PagerDuty.ListEscalationPolicies - -List escalation policies. - - - - `readOnlyHint: true` — reads data only - `openWorldHint: true` — calls - PagerDuty’s external API - `destructiveHint: false` — no destructive - operations - `idempotentHint: true` — same request returns same data - - - - -**Parameters** - -- **limit** (`integer`, _optional_) 1-50. Default: 10. -- **offset** (`integer`, _optional_) Pagination offset. - -**API calls:** GET `/escalation_policies` - ---- - -### PagerDuty.GetEscalationPolicy - -Get escalation policy details. - - - - `readOnlyHint: true` — reads data only - `openWorldHint: true` — calls - PagerDuty’s external API - `destructiveHint: false` — no destructive - operations - `idempotentHint: true` — same request returns same data - - - - -**Parameters** - -- **escalation_policy_id** (`string`, **required**) Escalation policy ID. - -**API calls:** GET `/escalation_policies/{id}` - ---- - -## Service tools - -### PagerDuty.ListServices - -List services (optional name search). - - - - `readOnlyHint: true` — reads data only - `openWorldHint: true` — calls - PagerDuty’s external API - `destructiveHint: false` — no destructive - operations - `idempotentHint: true` — same request returns same data - - - - -**Parameters** - -- **query** (`string`, _optional_) Search by name. -- **limit** (`integer`, _optional_) 1-50. Default: 10. -- **offset** (`integer`, _optional_) Pagination offset. - -**API calls:** GET `/services` - ---- - -### PagerDuty.GetService - -Get service details. - - - - `readOnlyHint: true` — reads data only - `openWorldHint: true` — calls - PagerDuty’s external API - `destructiveHint: false` — no destructive - operations - `idempotentHint: true` — same request returns same data - - - - -**Parameters** - -- **service_id** (`string`, **required**) Service ID. - -**API calls:** GET `/services/{id}` - ---- - -## Schedule tools - -### PagerDuty.ListSchedules - -List schedules with optional time zone and pagination. - - - - `readOnlyHint: true` — reads data only - `openWorldHint: true` — calls - PagerDuty’s external API - `destructiveHint: false` — no destructive - operations - `idempotentHint: true` — same request returns same data - - - - -**Parameters** - -- **limit** (`integer`, _optional_) 1-50. Default: 10. -- **offset** (`integer`, _optional_) Pagination offset. -- **time_zone** (`string`, _optional_) IANA time zone. - -**API calls:** GET `/schedules` - ---- - -## On-call tools - -### PagerDuty.ListOnCalls - -List on-call entries with filters (schedule, escalation policy, team, time). - - - - `readOnlyHint: true` — reads data only - `openWorldHint: true` — calls - PagerDuty’s external API - `destructiveHint: false` — no destructive - operations - `idempotentHint: true` — same request returns same data - - - - -**Parameters** - -- **schedule_ids** (`array`, _optional_) Filter by schedules. -- **escalation_policy_ids** (`array`, _optional_) Filter by escalation policies. -- **team_ids** (`array`, _optional_) Filter by teams. -- **time_zone** (`string`, _optional_) IANA time zone. -- **since** / **until** (`string`, _optional_) ISO times. -- **limit** (`integer`, _optional_) 1-50. Default: 10. -- **offset** (`integer`, _optional_) Pagination offset. - -**API calls:** GET `/oncalls` - ---- - -## User tools - -### PagerDuty.ListUsers - -List users with pagination. - - - - `readOnlyHint: true` — reads data only - `openWorldHint: true` — calls - PagerDuty’s external API - `destructiveHint: false` — no destructive - operations - `idempotentHint: true` — same request returns same data - - - - -**Parameters** - -- **limit** (`integer`, _optional_) 1-50. Default: 10. -- **offset** (`integer`, _optional_) Pagination offset. - -**API calls:** GET `/users` - ---- - -### PagerDuty.SearchUsers - -Search users by name/email (fuzzy). - - - - `readOnlyHint: true` — reads data only - `openWorldHint: true` — calls - PagerDuty’s external API - `destructiveHint: false` — no destructive - operations - `idempotentHint: true` — same request returns same data - - - - -**Parameters** - -- **query** (`string`, **required**) Name or email fragment. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept above confidence threshold. Default: `false`. - -**API calls:** GET `/users` (fuzzy match locally) - ---- - -## Team tools - -### PagerDuty.ListTeams - -List teams with pagination. - - - - `readOnlyHint: true` — reads data only - `openWorldHint: true` — calls - PagerDuty’s external API - `destructiveHint: false` — no destructive - operations - `idempotentHint: true` — same request returns same data - - - - -**Parameters** - -- **limit** (`integer`, _optional_) 1-50. Default: 10. -- **offset** (`integer`, _optional_) Pagination offset. - -**API calls:** GET `/teams` - ---- - -### PagerDuty.GetTeam - -Get team details (members, linked services/policies). - - - - `readOnlyHint: true` — reads data only - `openWorldHint: true` — calls - PagerDuty’s external API - `destructiveHint: false` — no destructive - operations - `idempotentHint: true` — same request returns same data - - - - -**Parameters** - -- **team_id** (`string`, **required**) Team ID. - -**API calls:** GET `/teams/{id}` - ---- - -## Auth - -PagerDuty requires OAuth2. Configure the PagerDuty auth provider and request the scopes shown above per tool. Tokens are passed as Bearer auth: - -``` -Authorization: Bearer -``` - -See PagerDuty auth docs: [PagerDuty API Authentication](https://developer.pagerduty.com/docs/ZG9jOjExMDI5NTYz-authentication). - - diff --git a/app/en/resources/integrations/customer-support/pylon/page.mdx b/app/en/resources/integrations/customer-support/pylon/page.mdx deleted file mode 100644 index 09a185d9c..000000000 --- a/app/en/resources/integrations/customer-support/pylon/page.mdx +++ /dev/null @@ -1,518 +0,0 @@ -# Pylon - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Pylon MCP Server lets agents work with Pylon’s issue management features—list and search issues, assign owners, add messages, browse contacts, users, and teams. There is **no OAuth** for Pylon; you must provide an **admin-generated API token**. - -- **Issues**: list, search (BM25), fetch details, assign owners, update status, add messages -- **Contacts**: list and search by name or email -- **Users & Teams**: list/search users, list teams, get team details with members -- **User context**: fetch the API token owner profile (service account) - - - Pylon API tokens are admin-scoped and created in Pylon by an org admin. Store - the token as `PYLON_API_TOKEN` in Arcade secrets. There is no user OAuth. - - -## Available tools - - - - - If you need a tool that isn't listed, [contact us](mailto:contact@arcade.dev) - or [build your own](/guides/create-tools/tool-basics/build-mcp-server). - - - - - `readOnlyHint` — reads data only - `openWorldHint` — calls Pylon’s external - API - `destructiveHint` — flags irreversible or hidden changes - - `idempotentHint` — repeating the same call has no extra effect - - ---- - -## User context - -### Pylon.WhoAmI - -Get the API token owner (service account) profile. - - - -Returns name, email, and org info for the token owner. - -**Parameters** - -This tool takes no parameters. - - - - `readOnlyHint: true` - `openWorldHint: true` - - - - GET `/me` - - ---- - -## Issue tools - -### Pylon.ListIssues - -List issues with optional filters. - - - -**Parameters** - -- **state** (`enum`, _optional_) Filter by state. -- **assignee_id** (`string`, _optional_) Filter by assignee ID. -- **team_id** (`string`, _optional_) Filter by team ID. -- **tags** (`array`, _optional_) Issues must include all provided tags. -- **start_time** (`string`, _optional_) RFC3339 start time. Default: 7 days ago. -- **end_time** (`string`, _optional_) RFC3339 end time. Default: now. -- **cursor** (`string`, _optional_) Pagination cursor. - - - GET `/issues` - - ---- - -### Pylon.GetIssue - -Get detailed issue info by ID or keyword search (BM25). - - - -**Parameters** - -- **lookup_by** (`enum`, **required**) `id` or `search`. -- **value** (`string`, **required**) Issue ID/number or search keywords. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept search matches above confidence threshold. Default: `false`. - - - GET `/issues/{id}` or GET `/issues` (search) - - ---- - -### Pylon.SearchIssues - -Keyword search across recent issues (BM25). - - - -**Parameters** - -- **query** (`string`, **required**) Keywords (supports AND/OR/NOT). -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept high-confidence matches. Default: `false`. - - - GET `/issues` (fetch recent issues for ranking) - - ---- - -### Pylon.AssignIssue - -Assign an issue to a user (ID or fuzzy name). - - - -**Parameters** - -- **issue_lookup_by** (`enum`, **required**) `id` or `search`. -- **issue_value** (`string`, **required**) Issue ID/number or search keywords. -- **user_lookup_by** (`enum`, **required**) `id` or `name`. -- **user_value** (`string`, **required**) User ID or name (fuzzy match). -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept fuzzy/BM25 matches. Default: `false`. - - - GET `/issues/{id}`, GET `/issues`, GET `/users`, PATCH `/issues/{id}` - - ---- - -### Pylon.UpdateIssueStatus - -Change the state of an issue. - - - -**Parameters** - -- **state** (`enum`, **required**) New state. -- **lookup_by** (`enum`, **required**) `id` or `search`. -- **value** (`string`, **required**) Issue ID/number or keywords. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept search matches. Default: `false`. - - - GET `/issues/{id}`, GET `/issues`, PATCH `/issues/{id}` - - ---- - -### Pylon.AddMessage - -Add an internal note to an issue. - - - -**Parameters** - -- **issue_id** (`string`, **required**) Issue ID or number. -- **body** (`string`, **required**) Message content. -- **as_html** (`boolean`, _optional_) Body is pre-formatted HTML. Default: `false`. - - - POST `/issues/{id}/note` - - ---- - -## Contact tools - -### Pylon.ListContacts - -List contacts with pagination. - - - -**Parameters** - -- **cursor** (`string`, _optional_) Pagination cursor. - - - GET `/contacts` - - ---- - -### Pylon.SearchContacts - -Search contacts by name or email. - - - -**Parameters** - -- **query** (`string`, **required**) Name or email. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept matches above confidence threshold. Default: `false`. - - - POST `/contacts/search`, GET `/contacts` - - ---- - -## User tools - -### Pylon.ListUsers - -List users in the workspace. - - - -**Parameters** - -- **cursor** (`string`, _optional_) Pagination cursor. -- **limit** (`integer`, _optional_) Items per page. Default: 20. - - - GET `/users` - - ---- - -### Pylon.SearchUsers - -Search users by name (fuzzy). - - - -**Parameters** - -- **query** (`string`, **required**) Name or partial name. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept matches above confidence threshold. Default: `false`. - - - GET `/users` - - ---- - -## Team tools - -### Pylon.ListTeams - -List teams in the workspace. - - - -**Parameters** - -- **cursor** (`string`, _optional_) Pagination cursor. - - - GET `/teams` - - ---- - -### Pylon.GetTeamAndAssignment - -Get team details (with members) by ID or fuzzy name. - - - -**Parameters** - -- **lookup_by** (`enum`, **required**) `id` or `name`. -- **value** (`string`, **required**) Team ID or name. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept fuzzy matches. Default: `false`. - - - GET `/teams`, GET `/teams/{id}` - - ---- - -## Auth - -Pylon uses Bearer tokens created by an org admin. There is **no OAuth flow**. Generate an API token in the Pylon dashboard and store it as the secret `PYLON_API_TOKEN` in Arcade. All tools require this secret. - -**Auth header** - -``` -Authorization: Bearer -``` - - - Pylon tokens are generated by admins in the Pylon UI and grant org-level - access. Rotate tokens regularly and scope storage to your Arcade project’s - secrets. - - -Refer to Pylon’s authentication docs: [Pylon API Authentication](https://docs.usepylon.com/pylon-docs/developer/api/authentication). - - diff --git a/app/en/resources/integrations/customer-support/zendesk/_meta.tsx b/app/en/resources/integrations/customer-support/zendesk/_meta.tsx deleted file mode 100644 index bd13949bb..000000000 --- a/app/en/resources/integrations/customer-support/zendesk/_meta.tsx +++ /dev/null @@ -1,5 +0,0 @@ -export default { - reference: { - title: "Reference", - }, -}; diff --git a/app/en/resources/integrations/customer-support/zendesk/page.mdx b/app/en/resources/integrations/customer-support/zendesk/page.mdx deleted file mode 100644 index 5286e2ff6..000000000 --- a/app/en/resources/integrations/customer-support/zendesk/page.mdx +++ /dev/null @@ -1,263 +0,0 @@ ---- -asIndexPage: true ---- - -# Zendesk - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Zendesk MCP Server provides a set of tools for managing customer support tickets and knowledge base articles. With this MCP Sever, users can: - -- List and paginate through tickets in their Zendesk account. -- Retrieve all comments for specific tickets, including the original description and conversation history. -- Add comments to existing tickets to facilitate communication. -- Mark tickets as solved, optionally including a final comment. -- Search for published Help Center articles in the knowledge base, with support for multiple filters in a single request. - -This MCP Sever streamlines the process of handling customer inquiries and accessing support resources. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Zendesk.ListTickets - -
- - -List tickets from your Zendesk account with offset-based pagination. - -**Parameters** - -- **status** (`Enum` [TicketStatus](/resources/integrations/customer-support/zendesk/reference#TicketStatus), optional) The status of tickets to filter by. Defaults to 'open' -- **limit** (`integer`, optional) Number of tickets to return. Defaults to 30 -- **offset** (`integer`, optional) Number of tickets to skip before returning results. Defaults to 0 -- **sort_order** (`Enum` [SortOrder](/resources/integrations/customer-support/zendesk/reference#SortOrder), optional) Sort order for tickets by ID. 'asc' returns oldest first, 'desc' returns newest first. Defaults to 'desc' - -**Secrets** - -This tool requires the following secrets: `zendesk_subdomain` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Zendesk.GetTicketComments - -
- - -Get all comments for a specific Zendesk ticket, including the original description. - -**Parameters** - -- **ticket_id** (`integer`, required) The ID of the ticket to get comments for - -**Secrets** - -This tool requires the following secrets: `zendesk_subdomain` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Zendesk.AddTicketComment - -
- - -Add a comment to an existing Zendesk ticket. - -**Parameters** - -- **ticket_id** (`integer`, required) The ID of the ticket to comment on -- **comment_body** (`string`, required) The text of the comment -- **public** (`boolean`, optional) Whether the comment is public (visible to requester) or internal. Defaults to True - -**Secrets** - -This tool requires the following secrets: `zendesk_subdomain` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Zendesk.MarkTicketSolved - -
- - -Mark a Zendesk ticket as solved, optionally with a final comment. - -**Parameters** - -- **ticket_id** (`integer`, required) The ID of the ticket to mark as solved -- **comment_body** (`string`, optional) Optional final comment to add when solving the ticket -- **comment_public** (`boolean`, optional) Whether the comment is visible to the requester. Defaults to False - -**Secrets** - -This tool requires the following secrets: `zendesk_subdomain` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Zendesk.SearchArticles - -
- - -Search for Help Center articles in your Zendesk knowledge base. - -**Parameters** - -- **query** (`string`, optional) Search text to match against articles. Supports quoted expressions for exact matching -- **label_names** (`array[string]`, optional) List of label names to filter by (case-insensitive). Article must have at least one matching label. Available on Professional/Enterprise plans only -- **created_after** (`string`, optional) Filter articles created after this date (format: YYYY-MM-DD) -- **created_before** (`string`, optional) Filter articles created before this date (format: YYYY-MM-DD) -- **created_at** (`string`, optional) Filter articles created on this exact date (format: YYYY-MM-DD) -- **sort_by** (`Enum` [ArticleSortBy](/resources/integrations/customer-support/zendesk/reference#ArticleSortBy), optional) Field to sort articles by. Defaults to relevance according to the search query -- **sort_order** (`Enum` [SortOrder](/resources/integrations/customer-support/zendesk/reference#SortOrder), optional) Sort order direction. Defaults to descending -- **limit** (`integer`, optional) Number of articles to return. Defaults to 30 -- **offset** (`integer`, optional) Number of articles to skip before returning results. Defaults to 0 -- **include_body** (`boolean`, optional) Include article body content in results. Bodies will be cleaned of HTML and truncated -- **max_article_length** (`integer`, optional) Maximum length for article body content in characters. Set to None for no limit. Defaults to 500 - -**Secrets** - -This tool requires the following secrets: `zendesk_subdomain` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Zendesk.WhoAmI - -
- - -Get comprehensive user profile and Zendesk account information. - -**Parameters** - -This tool does not take any parameters. - -**Secrets** - -This tool requires the following secrets: `zendesk_subdomain` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - - diff --git a/app/en/resources/integrations/customer-support/zendesk/reference/page.mdx b/app/en/resources/integrations/customer-support/zendesk/reference/page.mdx deleted file mode 100644 index 325155fe9..000000000 --- a/app/en/resources/integrations/customer-support/zendesk/reference/page.mdx +++ /dev/null @@ -1,23 +0,0 @@ -# Zendesk Reference - -Below is a reference of enumerations used by some tools in the Zendesk MCP Server: - -## TicketStatus - -- **NEW**: `new` -- **OPEN**: `open` -- **PENDING**: `pending` -- **SOLVED**: `solved` -- **CLOSED**: `closed` - -## SortOrder - -- **ASC**: `asc` -- **DESC**: `desc` - -## ArticleSortBy - -- **CREATED_AT**: `created_at` -- **RELEVANCE**: `relevance` - - diff --git a/app/en/resources/integrations/databases/[toolkitId]/_meta.tsx b/app/en/resources/integrations/databases/[toolkitId]/_meta.tsx new file mode 100644 index 000000000..ce7f0efde --- /dev/null +++ b/app/en/resources/integrations/databases/[toolkitId]/_meta.tsx @@ -0,0 +1,13 @@ +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "*": { + theme: { + breadcrumb: false, + toc: false, + copyPage: false, + }, + }, +}; + +export default meta; diff --git a/app/en/resources/integrations/databases/[toolkitId]/page-impl.tsx b/app/en/resources/integrations/databases/[toolkitId]/page-impl.tsx new file mode 100644 index 000000000..9af8e0250 --- /dev/null +++ b/app/en/resources/integrations/databases/[toolkitId]/page-impl.tsx @@ -0,0 +1,10 @@ +import { createToolkitDocsPage } from "@/app/en/resources/integrations/_lib/toolkit-docs-page"; + +export const dynamicParams = false; + +const { Page, generateMetadata, generateStaticParams } = + createToolkitDocsPage("databases"); + +export { generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/databases/[toolkitId]/page.mdx b/app/en/resources/integrations/databases/[toolkitId]/page.mdx new file mode 100644 index 000000000..ca97c319f --- /dev/null +++ b/app/en/resources/integrations/databases/[toolkitId]/page.mdx @@ -0,0 +1,14 @@ +--- +title: "MCP server" +description: "Generated MCP server documentation." +--- + +import Page, { + dynamicParams, + generateMetadata, + generateStaticParams, +} from "./page-impl"; + +export { dynamicParams, generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/databases/_meta.ts b/app/en/resources/integrations/databases/_meta.ts deleted file mode 100644 index 527507946..000000000 --- a/app/en/resources/integrations/databases/_meta.ts +++ /dev/null @@ -1,5 +0,0 @@ -export default { - postgres: "Postgres", - mongodb: "MongoDB", - clickhouse: "Clickhouse", -}; diff --git a/app/en/resources/integrations/databases/_meta.tsx b/app/en/resources/integrations/databases/_meta.tsx deleted file mode 100644 index 18db0dd41..000000000 --- a/app/en/resources/integrations/databases/_meta.tsx +++ /dev/null @@ -1,22 +0,0 @@ -import type { MetaRecord } from "nextra"; - -const meta: MetaRecord = { - "*": { - theme: { - breadcrumb: true, - toc: true, - copyPage: true, - }, - }, - postgres: { - title: "Postgres", - }, - mongodb: { - title: "MongoDB", - }, - clickhouse: { - title: "ClickHouse", - }, -}; - -export default meta; diff --git a/app/en/resources/integrations/databases/clickhouse/page.mdx b/app/en/resources/integrations/databases/clickhouse/page.mdx deleted file mode 100644 index abcf6f23a..000000000 --- a/app/en/resources/integrations/databases/clickhouse/page.mdx +++ /dev/null @@ -1,225 +0,0 @@ -# Clickhouse - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Clickhouse MCP Server provides a pre-built set of tools for interacting with Clickhouse databases in a read-only manner. This MCP Sever enables agents to discover database schemas, explore table structures, and execute SELECT queries safely. This MCP Sever is a companion to the blog post [Designing SQL Tools for AI Agents](https://blog.arcade.dev/sql-tools-ai-agents-security). - - - This MCP Sever is meant to be an example of how to build a MCP Sever for a - database, and is not intended to be used in production - you won't find it - listed in the Arcade dashboard or APIs. For production use, we recommend - forking this repository and building your own MCP Sever with use-case specific - tools. - - -## Key Features - -This MCP Sever demonstrates several important concepts for LLM-powered database interactions: - -- **Schema Discovery**: Automatically discover available database schemas -- **Table Exploration**: Find all tables within a specific schema -- **Schema Inspection**: Get detailed column information including data types, primary keys, and indexes -- **Safe Query Execution**: Execute SELECT queries with built-in safety measures -- **Connection Pooling**: Reuse database connections efficiently -- **Read-Only Access**: Enforce read-only access to prevent data modification -- **Row Limits**: Automatically limit query results to prevent overwhelming responses - -## Available Tools - - - -Note that all tools require the `CLICKHOUSE_DATABASE_CONNECTION_STRING` secret to be set. - -## Clickhouse.DiscoverDatabases - -Discover all databases in a Clickhouse database. This tool returns a list of all available databases. - - - -## Clickhouse.DiscoverSchemas - -Discover all schemas in a Clickhouse database. This tool returns a list of all available schemas, excluding the `information_schema` for security. - - - -## Clickhouse.DiscoverTables - -Discover all tables in a specific schema. This tool should be used before any other tool that requires a table name. - -**Parameters:** - -- `schema_name` (str): The database schema to discover tables in (default: "public") - - - -## Clickhouse.GetTableSchema - -Get the detailed schema of a specific table. This tool provides column information including data types, primary key indicators, and index information. Always use this tool before executing any query. - -**Parameters:** - -- `schema_name` (str): The database schema containing the table -- `table_name` (str): The name of the table to inspect - - - -## Clickhouse.ExecuteSelectQuery - -Execute a SELECT query with comprehensive clause support. This tool allows you to build complex queries using individual clauses while maintaining safety and performance. - -**Parameters:** - -- `select_clause` (str): Columns to select (without SELECT keyword) -- `from_clause` (str): Table(s) to query from (without FROM keyword) -- `limit` (int): Maximum rows to return (default: 100) -- `offset` (int): Number of rows to skip (default: 0) -- `join_clause` (str, optional): JOIN conditions (without JOIN keyword) -- `where_clause` (str, optional): WHERE conditions (without WHERE keyword) -- `having_clause` (str, optional): HAVING conditions (without HAVING keyword) -- `group_by_clause` (str, optional): GROUP BY columns (without GROUP BY keyword) -- `order_by_clause` (str, optional): ORDER BY columns (without ORDER BY keyword) -- `with_clause` (str, optional): WITH clause for CTEs (without WITH keyword) - -**Query Construction:** -The final query is constructed as: - -```sql -SELECT {select_clause} FROM {from_clause} -JOIN {join_clause} -WHERE {where_clause} -HAVING {having_clause} -GROUP BY {group_by_clause} -ORDER BY {order_by_clause} -LIMIT {limit} OFFSET {offset} -``` - -**Best Practices:** - -- Always use `discover_tables` and `get_table_schema` before executing queries -- Never use "SELECT \*" - always specify the columns you need -- Order results by primary keys or important columns -- Use case-insensitive string matching -- Trim strings in queries -- Prefer LIKE queries over exact matches or regex -- Only join on indexed columns or primary keys - - - -## Usage Workflow - -For optimal results, follow this workflow when using the Clickhouse MCP Sever: - -1. **Discover Schemas**: Use `discover_schemas` to see available schemas -2. **Discover Tables**: Use `discover_tables` with your target schema -3. **Get Table Schema**: Use `get_table_schema` for each table you plan to query -4. **Execute Query**: Use `execute_select_query` with the schema information - -This workflow ensures your agent has complete information about the database structure before attempting queries, reducing errors and improving query performance. - - diff --git a/app/en/resources/integrations/databases/mongodb/page.mdx b/app/en/resources/integrations/databases/mongodb/page.mdx deleted file mode 100644 index ec22ca7c5..000000000 --- a/app/en/resources/integrations/databases/mongodb/page.mdx +++ /dev/null @@ -1,257 +0,0 @@ -# MongoDB - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade MongoDB MCP Server provides a pre-built set of tools for interacting with MongoDB databases in a read-only manner. This MCP Sever enables agents to discover databases and collections, explore document structures, and execute queries safely. This MCP Sever is a companion to the blog post [Designing SQL Tools for AI Agents](https://blog.arcade.dev/sql-tools-ai-agents-security). - - - This MCP Sever is meant to be an example of how to build a MCP Sever for a - database, and is not intended to be used in production - you won't find it - listed in the Arcade dashboard or APIs. For production use, we recommend - forking this repository and building your own MCP Sever with use-case specific - tools. - - -## Key Features - -This MCP Sever demonstrates several important concepts for LLM-powered database interactions: - -- **Database Discovery**: Automatically discover available databases in the MongoDB instance -- **Collection Exploration**: Find all collections within a specific database -- **Schema Inference**: Sample documents to infer schema structure and data types -- **Safe Query Execution**: Execute find queries with built-in safety measures -- **Aggregation Support**: Run complex aggregation pipelines for data analysis -- **Document Counting**: Count documents matching specific criteria -- **Connection Pooling**: Reuse database connections efficiently -- **Read-Only Access**: Enforce read-only access to prevent data modification -- **Result Limits**: Automatically limit query results to prevent overwhelming responses - -## Available Tools - - - -Note that all tools require the `MONGODB_CONNECTION_STRING` secret to be set. - -## MongoDB.DiscoverDatabases - -Discover all databases in the MongoDB instance. This tool returns a list of all available databases, excluding system databases like `admin`, `config`, and `local` for security. - - - -## MongoDB.DiscoverCollections - -Discover all collections in a specific database. This tool should be used before any other tool that requires a collection name. - -**Parameters:** - -- `database_name` (str): The database name to discover collections in - - - -## MongoDB.GetCollectionSchema - -Get the schema structure of a collection by sampling documents. Since MongoDB is schema-less, this tool samples a configurable number of documents to infer the schema structure and data types. Always use this tool before executing any query. - -**Parameters:** - -- `database_name` (str): The database name containing the collection -- `collection_name` (str): The name of the collection to inspect -- `sample_size` (int): The number of documents to sample for schema discovery (default: 100) - - - -## MongoDB.FindDocuments - -Find documents in a collection with filtering, projection, and sorting. This tool allows you to build complex queries using MongoDB's query operators while maintaining safety and performance. - -**Parameters:** - -- `database_name` (str): The database name to query -- `collection_name` (str): The collection name to query -- `filter_dict` (str, optional): MongoDB filter/query as JSON string. Leave None for no filter -- `projection` (str, optional): Fields to include/exclude as JSON string. Use 1 to include, 0 to exclude -- `sort` (list[str], optional): Sort criteria as list of JSON strings with 'field' and 'direction' keys -- `limit` (int): Maximum number of documents to return (default: 100) -- `skip` (int): Number of documents to skip (default: 0) - -**Best Practices:** - -- Always use `discover_collections` and `get_collection_schema` before executing queries -- Always specify projection to limit fields returned if you don't need all data -- Always sort your results by the most important fields first -- Use appropriate MongoDB query operators for complex filtering ($gte, $lte, $in, $regex, etc.) -- Be mindful of case sensitivity when querying string fields -- Use indexes when possible (typically on \_id and commonly queried fields) - - - -## MongoDB.CountDocuments - -Count documents in a collection matching the given filter. This tool is useful for getting quick counts without retrieving the actual documents. - -**Parameters:** - -- `database_name` (str): The database name to query -- `collection_name` (str): The collection name to query -- `filter_dict` (str, optional): MongoDB filter/query as JSON string. Leave None to count all documents - - - -## MongoDB.AggregateDocuments - -Execute aggregation pipelines for complex data analysis. This tool allows you to run sophisticated data processing operations including grouping, filtering, and transformations. - -**Parameters:** - -- `database_name` (str): The database name to query -- `collection_name` (str): The collection name to query -- `pipeline` (list[str]): MongoDB aggregation pipeline as a list of JSON strings -- `limit` (int): Maximum number of results to return (default: 100) - -**Common Aggregation Stages:** - -- `$match` - filter documents -- `$group` - group documents and perform calculations -- `$project` - reshape documents -- `$sort` - sort documents -- `$limit` - limit results -- `$lookup` - join with other collections - - - -## Usage Workflow - -For optimal results, follow this workflow when using the MongoDB MCP Sever: - -1. **Discover Databases**: Use `discover_databases` to see available databases -2. **Discover Collections**: Use `discover_collections` with your target database -3. **Get Collection Schema**: Use `get_collection_schema` for each collection you plan to query -4. **Execute Queries**: Use `find_documents`, `count_documents`, or `aggregate_documents` with the schema information - -This workflow ensures your agent has complete information about the database structure before attempting queries, reducing errors and improving query performance. - - diff --git a/app/en/resources/integrations/databases/postgres/clickhouse.mdx b/app/en/resources/integrations/databases/postgres/clickhouse.mdx deleted file mode 100644 index abcf6f23a..000000000 --- a/app/en/resources/integrations/databases/postgres/clickhouse.mdx +++ /dev/null @@ -1,225 +0,0 @@ -# Clickhouse - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Clickhouse MCP Server provides a pre-built set of tools for interacting with Clickhouse databases in a read-only manner. This MCP Sever enables agents to discover database schemas, explore table structures, and execute SELECT queries safely. This MCP Sever is a companion to the blog post [Designing SQL Tools for AI Agents](https://blog.arcade.dev/sql-tools-ai-agents-security). - - - This MCP Sever is meant to be an example of how to build a MCP Sever for a - database, and is not intended to be used in production - you won't find it - listed in the Arcade dashboard or APIs. For production use, we recommend - forking this repository and building your own MCP Sever with use-case specific - tools. - - -## Key Features - -This MCP Sever demonstrates several important concepts for LLM-powered database interactions: - -- **Schema Discovery**: Automatically discover available database schemas -- **Table Exploration**: Find all tables within a specific schema -- **Schema Inspection**: Get detailed column information including data types, primary keys, and indexes -- **Safe Query Execution**: Execute SELECT queries with built-in safety measures -- **Connection Pooling**: Reuse database connections efficiently -- **Read-Only Access**: Enforce read-only access to prevent data modification -- **Row Limits**: Automatically limit query results to prevent overwhelming responses - -## Available Tools - - - -Note that all tools require the `CLICKHOUSE_DATABASE_CONNECTION_STRING` secret to be set. - -## Clickhouse.DiscoverDatabases - -Discover all databases in a Clickhouse database. This tool returns a list of all available databases. - - - -## Clickhouse.DiscoverSchemas - -Discover all schemas in a Clickhouse database. This tool returns a list of all available schemas, excluding the `information_schema` for security. - - - -## Clickhouse.DiscoverTables - -Discover all tables in a specific schema. This tool should be used before any other tool that requires a table name. - -**Parameters:** - -- `schema_name` (str): The database schema to discover tables in (default: "public") - - - -## Clickhouse.GetTableSchema - -Get the detailed schema of a specific table. This tool provides column information including data types, primary key indicators, and index information. Always use this tool before executing any query. - -**Parameters:** - -- `schema_name` (str): The database schema containing the table -- `table_name` (str): The name of the table to inspect - - - -## Clickhouse.ExecuteSelectQuery - -Execute a SELECT query with comprehensive clause support. This tool allows you to build complex queries using individual clauses while maintaining safety and performance. - -**Parameters:** - -- `select_clause` (str): Columns to select (without SELECT keyword) -- `from_clause` (str): Table(s) to query from (without FROM keyword) -- `limit` (int): Maximum rows to return (default: 100) -- `offset` (int): Number of rows to skip (default: 0) -- `join_clause` (str, optional): JOIN conditions (without JOIN keyword) -- `where_clause` (str, optional): WHERE conditions (without WHERE keyword) -- `having_clause` (str, optional): HAVING conditions (without HAVING keyword) -- `group_by_clause` (str, optional): GROUP BY columns (without GROUP BY keyword) -- `order_by_clause` (str, optional): ORDER BY columns (without ORDER BY keyword) -- `with_clause` (str, optional): WITH clause for CTEs (without WITH keyword) - -**Query Construction:** -The final query is constructed as: - -```sql -SELECT {select_clause} FROM {from_clause} -JOIN {join_clause} -WHERE {where_clause} -HAVING {having_clause} -GROUP BY {group_by_clause} -ORDER BY {order_by_clause} -LIMIT {limit} OFFSET {offset} -``` - -**Best Practices:** - -- Always use `discover_tables` and `get_table_schema` before executing queries -- Never use "SELECT \*" - always specify the columns you need -- Order results by primary keys or important columns -- Use case-insensitive string matching -- Trim strings in queries -- Prefer LIKE queries over exact matches or regex -- Only join on indexed columns or primary keys - - - -## Usage Workflow - -For optimal results, follow this workflow when using the Clickhouse MCP Sever: - -1. **Discover Schemas**: Use `discover_schemas` to see available schemas -2. **Discover Tables**: Use `discover_tables` with your target schema -3. **Get Table Schema**: Use `get_table_schema` for each table you plan to query -4. **Execute Query**: Use `execute_select_query` with the schema information - -This workflow ensures your agent has complete information about the database structure before attempting queries, reducing errors and improving query performance. - - diff --git a/app/en/resources/integrations/databases/postgres/mongodb.mdx b/app/en/resources/integrations/databases/postgres/mongodb.mdx deleted file mode 100644 index ec22ca7c5..000000000 --- a/app/en/resources/integrations/databases/postgres/mongodb.mdx +++ /dev/null @@ -1,257 +0,0 @@ -# MongoDB - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade MongoDB MCP Server provides a pre-built set of tools for interacting with MongoDB databases in a read-only manner. This MCP Sever enables agents to discover databases and collections, explore document structures, and execute queries safely. This MCP Sever is a companion to the blog post [Designing SQL Tools for AI Agents](https://blog.arcade.dev/sql-tools-ai-agents-security). - - - This MCP Sever is meant to be an example of how to build a MCP Sever for a - database, and is not intended to be used in production - you won't find it - listed in the Arcade dashboard or APIs. For production use, we recommend - forking this repository and building your own MCP Sever with use-case specific - tools. - - -## Key Features - -This MCP Sever demonstrates several important concepts for LLM-powered database interactions: - -- **Database Discovery**: Automatically discover available databases in the MongoDB instance -- **Collection Exploration**: Find all collections within a specific database -- **Schema Inference**: Sample documents to infer schema structure and data types -- **Safe Query Execution**: Execute find queries with built-in safety measures -- **Aggregation Support**: Run complex aggregation pipelines for data analysis -- **Document Counting**: Count documents matching specific criteria -- **Connection Pooling**: Reuse database connections efficiently -- **Read-Only Access**: Enforce read-only access to prevent data modification -- **Result Limits**: Automatically limit query results to prevent overwhelming responses - -## Available Tools - - - -Note that all tools require the `MONGODB_CONNECTION_STRING` secret to be set. - -## MongoDB.DiscoverDatabases - -Discover all databases in the MongoDB instance. This tool returns a list of all available databases, excluding system databases like `admin`, `config`, and `local` for security. - - - -## MongoDB.DiscoverCollections - -Discover all collections in a specific database. This tool should be used before any other tool that requires a collection name. - -**Parameters:** - -- `database_name` (str): The database name to discover collections in - - - -## MongoDB.GetCollectionSchema - -Get the schema structure of a collection by sampling documents. Since MongoDB is schema-less, this tool samples a configurable number of documents to infer the schema structure and data types. Always use this tool before executing any query. - -**Parameters:** - -- `database_name` (str): The database name containing the collection -- `collection_name` (str): The name of the collection to inspect -- `sample_size` (int): The number of documents to sample for schema discovery (default: 100) - - - -## MongoDB.FindDocuments - -Find documents in a collection with filtering, projection, and sorting. This tool allows you to build complex queries using MongoDB's query operators while maintaining safety and performance. - -**Parameters:** - -- `database_name` (str): The database name to query -- `collection_name` (str): The collection name to query -- `filter_dict` (str, optional): MongoDB filter/query as JSON string. Leave None for no filter -- `projection` (str, optional): Fields to include/exclude as JSON string. Use 1 to include, 0 to exclude -- `sort` (list[str], optional): Sort criteria as list of JSON strings with 'field' and 'direction' keys -- `limit` (int): Maximum number of documents to return (default: 100) -- `skip` (int): Number of documents to skip (default: 0) - -**Best Practices:** - -- Always use `discover_collections` and `get_collection_schema` before executing queries -- Always specify projection to limit fields returned if you don't need all data -- Always sort your results by the most important fields first -- Use appropriate MongoDB query operators for complex filtering ($gte, $lte, $in, $regex, etc.) -- Be mindful of case sensitivity when querying string fields -- Use indexes when possible (typically on \_id and commonly queried fields) - - - -## MongoDB.CountDocuments - -Count documents in a collection matching the given filter. This tool is useful for getting quick counts without retrieving the actual documents. - -**Parameters:** - -- `database_name` (str): The database name to query -- `collection_name` (str): The collection name to query -- `filter_dict` (str, optional): MongoDB filter/query as JSON string. Leave None to count all documents - - - -## MongoDB.AggregateDocuments - -Execute aggregation pipelines for complex data analysis. This tool allows you to run sophisticated data processing operations including grouping, filtering, and transformations. - -**Parameters:** - -- `database_name` (str): The database name to query -- `collection_name` (str): The collection name to query -- `pipeline` (list[str]): MongoDB aggregation pipeline as a list of JSON strings -- `limit` (int): Maximum number of results to return (default: 100) - -**Common Aggregation Stages:** - -- `$match` - filter documents -- `$group` - group documents and perform calculations -- `$project` - reshape documents -- `$sort` - sort documents -- `$limit` - limit results -- `$lookup` - join with other collections - - - -## Usage Workflow - -For optimal results, follow this workflow when using the MongoDB MCP Sever: - -1. **Discover Databases**: Use `discover_databases` to see available databases -2. **Discover Collections**: Use `discover_collections` with your target database -3. **Get Collection Schema**: Use `get_collection_schema` for each collection you plan to query -4. **Execute Queries**: Use `find_documents`, `count_documents`, or `aggregate_documents` with the schema information - -This workflow ensures your agent has complete information about the database structure before attempting queries, reducing errors and improving query performance. - - diff --git a/app/en/resources/integrations/databases/postgres/page.mdx b/app/en/resources/integrations/databases/postgres/page.mdx deleted file mode 100644 index 5f092a5b6..000000000 --- a/app/en/resources/integrations/databases/postgres/page.mdx +++ /dev/null @@ -1,198 +0,0 @@ -# Postgres - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Postgres MCP Server provides a pre-built set of tools for interacting with PostgreSQL databases in a read-only manner. This MCP Sever enables agents to discover database schemas, explore table structures, and execute SELECT queries safely. This MCP Sever is a companion to the blog post [Designing SQL Tools for AI Agents](https://blog.arcade.dev/sql-tools-ai-agents-security). - - - This MCP Sever is meant to be an example of how to build a MCP Sever for a - database, and is not intended to be used in production - you won't find it - listed in the Arcade dashboard or APIs. For production use, we recommend - forking this repository and building your own MCP Sever with use-case specific - tools. - - -## Key Features - -This MCP Sever demonstrates several important concepts for LLM-powered database interactions: - -- **Schema Discovery**: Automatically discover available database schemas -- **Table Exploration**: Find all tables within a specific schema -- **Schema Inspection**: Get detailed column information including data types, primary keys, and indexes -- **Safe Query Execution**: Execute SELECT queries with built-in safety measures -- **Connection Pooling**: Reuse database connections efficiently -- **Read-Only Access**: Enforce read-only access to prevent data modification -- **Row Limits**: Automatically limit query results to prevent overwhelming responses - -## Available Tools - - - -Note that all tools require the `POSTGRES_DATABASE_CONNECTION_STRING` secret to be set. - -## Postgres.DiscoverSchemas - -Discover all schemas in a PostgreSQL database. This tool returns a list of all available schemas, excluding the `information_schema` for security. - - - -## Postgres.DiscoverTables - -Discover all tables in a specific schema. This tool should be used before any other tool that requires a table name. - -**Parameters:** - -- `schema_name` (str): The database schema to discover tables in (default: "public") - - - -## Postgres.GetTableSchema - -Get the detailed schema of a specific table. This tool provides column information including data types, primary key indicators, and index information. Always use this tool before executing any query. - -**Parameters:** - -- `schema_name` (str): The database schema containing the table -- `table_name` (str): The name of the table to inspect - - - -## Postgres.ExecuteSelectQuery - -Execute a SELECT query with comprehensive clause support. This tool allows you to build complex queries using individual clauses while maintaining safety and performance. - -**Parameters:** - -- `select_clause` (str): Columns to select (without SELECT keyword) -- `from_clause` (str): Table(s) to query from (without FROM keyword) -- `limit` (int): Maximum rows to return (default: 100) -- `offset` (int): Number of rows to skip (default: 0) -- `join_clause` (str, optional): JOIN conditions (without JOIN keyword) -- `where_clause` (str, optional): WHERE conditions (without WHERE keyword) -- `having_clause` (str, optional): HAVING conditions (without HAVING keyword) -- `group_by_clause` (str, optional): GROUP BY columns (without GROUP BY keyword) -- `order_by_clause` (str, optional): ORDER BY columns (without ORDER BY keyword) -- `with_clause` (str, optional): WITH clause for CTEs (without WITH keyword) - -**Query Construction:** -The final query is constructed as: - -```sql -SELECT {select_clause} FROM {from_clause} -JOIN {join_clause} -WHERE {where_clause} -HAVING {having_clause} -GROUP BY {group_by_clause} -ORDER BY {order_by_clause} -LIMIT {limit} OFFSET {offset} -``` - -**Best Practices:** - -- Always use `discover_tables` and `get_table_schema` before executing queries -- Never use "SELECT \*" - always specify the columns you need -- Order results by primary keys or important columns -- Use case-insensitive string matching -- Trim strings in queries -- Prefer LIKE queries over exact matches or regex -- Only join on indexed columns or primary keys - - - -## Usage Workflow - -For optimal results, follow this workflow when using the Postgres MCP Sever: - -1. **Discover Schemas**: Use `discover_schemas` to see available schemas -2. **Discover Tables**: Use `discover_tables` with your target schema -3. **Get Table Schema**: Use `get_table_schema` for each table you plan to query -4. **Execute Query**: Use `execute_select_query` with the schema information - -This workflow ensures your agent has complete information about the database structure before attempting queries, reducing errors and improving query performance. - - diff --git a/app/en/resources/integrations/databases/weaviate-api/page.mdx b/app/en/resources/integrations/databases/weaviate-api/page.mdx deleted file mode 100644 index 2b411c4fa..000000000 --- a/app/en/resources/integrations/databases/weaviate-api/page.mdx +++ /dev/null @@ -1,2871 +0,0 @@ -# WeaviateApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The WeaviateApi MCP Server offers a comprehensive suite of tools for managing and interacting with Weaviate, a vector search engine. Users can perform a variety of actions, including: - -## Authentication - -The Arcade Weaviate API MCP Server requires two environment variables to authenticate with your Weaviate instance: - -- `WEAVIATE_API_KEY` -- `WEAVIATE_SERVER_URL` - -**How to obtain your credentials:** - -1. Log in to your [Weaviate Console](https://console.weaviate.cloud/) -2. Select your Weaviate cluster -3. Navigate to **Details** or **API Keys** section -4. Click **Create API Key** or use an existing key -5. Copy your **API Key** -6. Copy your **Cluster URL** (this is your server URL and must include `https://`) - -**Note:** The `WEAVIATE_SERVER_URL` must include the full URL with the `https://` protocol (e.g., `https://your-cluster.weaviate.network`). - -For more details, see the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication). - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## WeaviateApi.DiscoverApiEndpoints - -
- - -Retrieve links to available REST API endpoints. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CheckWeaviateLiveness - -
- - -Check if the Weaviate instance is running properly. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CheckWeaviateReadiness - -
- - -Check if the Weaviate instance is ready to accept traffic. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetOidcDiscovery - -
- - -Fetches OIDC discovery details for Weaviate authentication. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.ReplicateShardReplica - -
- - -Initiates replication of a shard replica to a target node. - -**Parameters** - -- **shard_name** (`string`, required) The name of the shard whose replica is to be moved or copied. Specify the shard to initiate the operation. -- **source_node** (`string`, required) The name of the Weaviate node currently hosting the shard replica to be moved or copied. -- **target_collection_name** (`string`, required) The name of the collection to which the target shard belongs in the Weaviate database. -- **target_weaviate_node** (`string`, required) Name of the Weaviate node for creating the new shard replica during the operation. -- **replication_operation_type** (`string`, optional) Specifies whether to 'COPY' or 'MOVE' the shard replica. Defaults to 'COPY' if not provided. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.DeleteAllReplications - -
- - -Schedule deletion of all replication operations across the system. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.ForceDeleteReplications - -
- - -Forcefully delete replication operations with caution. - -**Parameters** - -- **collection_name** (`string`, optional) The name of the collection associated with the shard being replicated. -- **dry_run** (`boolean`, optional) When set to true, the operation simulates the deletion and returns the expected result without executing it. -- **replication_operation_id** (`string`, optional) The unique identifier (ID) of the replication operation to be forcefully deleted. -- **shard_identifier** (`string`, optional) The unique identifier of the shard involved in the replication operations. -- **target_node_name** (`string`, optional) The name of the target node where replication operations are registered. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.FetchReplicationStatus - -
- - -Retrieve the status of a specific replication operation. - -**Parameters** - -- **replication_operation_id** (`string`, required) The unique identifier for the replication operation to fetch details for. -- **include_history** (`boolean`, optional) Set to true to include the history of the replication operation. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CancelReplicationOperation - -
- - -Cancel an active replication operation. - -**Parameters** - -- **replication_operation_id** (`string`, required) The unique identifier of the replication operation to be canceled and deleted. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.ListReplicationStatus - -
- - -Retrieve registered replication operations and details. - -**Parameters** - -- **collection_name** (`string`, optional) Specify the name of the collection for which to retrieve replication details. -- **include_replication_history** (`boolean`, optional) Set to true to include the history of the replication operation, false to exclude it. -- **shard_name** (`string`, optional) The specific shard for which to retrieve replication details. -- **target_node_name** (`string`, optional) The name of the target node to retrieve replication operation details for. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CancelReplication - -
- - -Cancel an active replication operation by ID. - -**Parameters** - -- **replication_operation_id** (`string`, required) The ID of the replication operation you wish to cancel. This is a string identifier for the specific operation. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.FetchShardingState - -
- - -Fetch the current sharding state and replica details for collections. - -**Parameters** - -- **collection_name** (`string`, optional) The name of the collection to retrieve the sharding state for. -- **target_shard** (`string`, optional) Specify the shard name to retrieve its sharding state in a collection. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetAuthenticatedUserInfo - -
- - -Retrieve details about the authenticated user and their roles. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.ListDbUsers - -
- - -Retrieve all database users and their roles and statuses. - -**Parameters** - -- **include_last_used_time** (`boolean`, optional) Include the last time users were utilized in the response. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetDatabaseUserInfo - -
- - -Retrieve information about a specific database user. - -**Parameters** - -- **database_user_name** (`string`, required) The unique identifier or name of the database user to retrieve information for. -- **include_last_used_time** (`boolean`, optional) Set to true to include the last used time in the user's information. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CreateDatabaseUser - -
- - -Create a new database user and obtain an API key. - -**Parameters** - -- **user_name** (`string`, required) Specify the name for the new database user. It should be a string that identifies the user. -- **disable_import_experimental** (`boolean`, optional) Set to true to prevent importing an API key from a static user. Experimental and will be removed. -- **set_creation_time_experimental** (`string`, optional) EXPERIMENTAL: Set the given time as creation time. This will be removed in future versions. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.DeleteDatabaseUser - -
- - -Delete a specific database user. - -**Parameters** - -- **user_identifier** (`string`, required) Specify the name of the user you want to delete. This cannot be the current user. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.RotateUserApiKey - -
- - -Revoke and regenerate the API key for a database user. - -**Parameters** - -- **database_user_name** (`string`, required) The name of the database user for which the API key will be rotated. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.ActivateDatabaseUser - -
- - -Activate a deactivated database user account. - -**Parameters** - -- **user_name** (`string`, required) The name of the database user to activate. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.DeactivateDatabaseUser - -
- - -Deactivate a database user account. - -**Parameters** - -- **database_user_id** (`string`, required) The unique identifier for the database user to be deactivated. -- **revoke_api_key** (`boolean`, optional) Revoke the user's API key when deactivating. Set to true to enable. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetRolesAndPermissions - -
- - -Retrieve all roles and their assigned permissions. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CreateRoleWithPermissions - -
- - -Create a new role with specified permissions. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.AddPermissionsToRole - -
- - -Add new permissions to a role without affecting existing ones. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **role_id** (`string`, optional) The ID of the role to which new permissions will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.RevokeRolePermissions - -
- - -Revoke permissions from a specified role. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **role_name** (`string`, optional) The name of the role from which permissions are being revoked. Removing all permissions will delete the role. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.FetchRoleByName - -
- - -Fetch role details using its name. - -**Parameters** - -- **role_name** (`string`, required) The name of the role to fetch details for. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.DeleteRole - -
- - -Delete a role and revoke its permissions system-wide. - -**Parameters** - -- **role_name** (`string`, required) Specify the name of the role to be deleted and revoked from users. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CheckRolePermission - -
- - -Check if a role has specific permissions in the system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **role_name** (`string`, optional) The name of the role to check permissions for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetUsersByRole - -
- - -Retrieve users with a specific role assignment. - -**Parameters** - -- **role_id** (`string`, required) The unique identifier for the role to fetch associated users. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetGroupsForRole - -
- - -Retrieve groups assigned to a specific role. - -**Parameters** - -- **role_name** (`string`, required) The unique name of the role to retrieve associated groups. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetUserRoles - -
- - -Retrieve all roles assigned to a specific user. - -**Parameters** - -- **user_id** (`string`, required) The unique name or identifier of the user for whom roles are being retrieved. -- **user_type** (`string`, required) Specify the user type: 'oidc' for OpenID Connect or 'db' for database. -- **include_detailed_role_information** (`boolean`, optional) Set to true to include detailed role information like assigned permissions. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.AssignRolesToUser - -
- - -Assign roles to a user in the system. - -**Parameters** - -- **user_name** (`string`, required) The name or identifier of the user to assign roles to. -- **assigned_roles** (`array[string]`, optional) List of roles to assign to the specified user. Each role should be a string. -- **user_type** (`string`, optional) Specify the user type. Choose 'db' for Weaviate managed users or 'oidc' for users managed by an external OIDC provider. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.RevokeUserRole - -
- - -Remove roles from a specified user in the system. - -**Parameters** - -- **user_id** (`string`, required) The unique identifier or name of the user from whom roles will be revoked. -- **roles_to_revoke** (`array[string]`, optional) A list of roles to be removed from the specified user. Provide each role as a string in the array. -- **user_type** (`string`, optional) Specify the user type: `db` for Weaviate-managed or `oidc` for external OIDC-managed users. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.AssignRoleToGroup - -
- - -Assign roles to a specific group. - -**Parameters** - -- **group_name** (`string`, required) The name of the group to which roles will be assigned. -- **group_type** (`string`, optional) Indicate if the group contains OIDC or database users. Choose 'oidc' for OIDC users. -- **roles_to_assign** (`array[string]`, optional) A list of roles to assign to a specified group. Each role is a string. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.RevokeRoleFromGroup - -
- - -Revoke roles from a specified group to manage permissions. - -**Parameters** - -- **group_name** (`string`, required) The name of the group from which roles will be revoked. -- **group_type** (`string`, optional) Specifies whether the group contains OIDC or database users. -- **roles_to_revoke** (`array[string]`, optional) An array of role names to revoke from the specified group. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetRolesForGroup - -
- - -Retrieve roles assigned to a specific group. - -**Parameters** - -- **group_name** (`string`, required) The unique name of the group to retrieve roles for. -- **group_type** (`string`, required) Specifies the type of the group, either 'db' or 'oidc'. -- **include_full_role_definitions** (`boolean`, optional) Include full role definitions with all permissions if true; return only role names if false. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.RetrieveGroupNames - -
- - -Retrieve available group names for a specified type. - -**Parameters** - -- **group_type** (`string`, required) Specifies the group type to retrieve, either 'oidc' or 'db'. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.ListDataObjects - -
- - -Retrieve a list of data objects from a specified collection. - -**Parameters** - -- **collection_name** (`string`, optional) Specifies the collection name to query objects from. If not provided, no objects will be returned. -- **include_additional_information** (`string`, optional) Include additional information types such as `classification`, `vector`, or `interpretation`. -- **maximum_items_per_page** (`integer`, optional) The maximum number of items to be returned per page. The default is 25 unless set otherwise as an environment variable. -- **query_start_index** (`integer`, optional) The starting index for the result window. Retrieves `offset+limit` results and returns `limit` results from this index onward. Cannot be used with `after`. Should be used with `limit`. -- **sort_order** (`string`, optional) Specify how to order the data within the sorted field(s). Use 'asc' for ascending and 'desc' for descending. Should match the order of fields used in `sort`. Multiple values should be separated by commas. -- **sort_properties** (`string`, optional) Names of properties to sort by, e.g., 'city' or 'country,city'. -- **tenant_identifier** (`string`, optional) Specifies the tenant for requests targeting a multi-tenant collection (class). -- **threshold_uuid_after** (`string`, optional) A UUID to retrieve objects after, excluding this object. Use with `class` and `limit`. Leave empty for the start. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CreateObjectInWeaviate - -
- - -Create a new data object in Weaviate. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **consistency_level_replica_acknowledgement** (`string`, optional) Specifies the number of replicas that must confirm the request for it to be successful. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetDataObject - -
- - -Retrieve a data object using collection name and UUID. - -**Parameters** - -- **collection_name** (`string`, required) Name of the collection (class) the object belongs to. -- **object_uuid** (`string`, required) Unique UUID of the object to be retrieved from the specified collection. -- **include_additional_information** (`string`, optional) Specify additional info to include: `classification`, `vector`, or `interpretation`. -- **required_replica_acknowledgment** (`string`, optional) Specifies how many replicas must confirm a request for success. Relates to consistency level. -- **target_node_name** (`string`, optional) Specify the target node to fulfill the request. -- **tenant_identifier** (`string`, optional) Specify the tenant for a multi-tenant collection request. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.UpdateObjectProperties - -
- - -Replace properties of a data object using its class and ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **collection_name** (`string`, optional) The name of the class (collection) to which the object belongs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **object_uuid** (`string`, optional) Unique UUID of the object to be replaced. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **required_replica_acknowledgement** (`string`, optional) Specifies how many replicas must acknowledge a request for it to be successful. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.DeleteDataObject - -
- - -Delete a data object from a specified collection using its UUID. - -**Parameters** - -- **collection_name** (`string`, required) Name of the collection (class) the object belongs to. -- **object_uuid** (`string`, required) Unique UUID of the object to be deleted from the collection. -- **replica_acknowledgment_level** (`string`, optional) Specifies the number of replicas needed to confirm request success. -- **tenant_identifier** (`string`, optional) Specifies the tenant when targeting a multi-tenant collection (class). - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.UpdateDataObject - -
- - -Update specific properties of a data object. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **collection_name** (`string`, optional) Specifies the name of the collection or class the object belongs to. This identifies where the object is stored. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **object_uuid** (`string`, optional) Unique UUID of the object to be patched within the specified collection. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **consistency_level** (`string`, optional) Specify the number of replicas that must acknowledge the request for success. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.ReplaceObjectReferences - -
- - -Replace existing references for an object in Weaviate. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **collection_name** (`string`, optional) Name of the collection the source object belongs to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **source_object_uuid** (`string`, optional) Unique UUID of the source object to identify it for reference replacement. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **reference_property_name** (`string`, optional) Unique name of the reference property for the source object to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **consistency_level** (`string`, optional) Defines the required number of replica acknowledgements for request success. Only used when mode is 'execute'. -- **tenant_identifier** (`string`, optional) Specifies the tenant in a request targeting a multi-tenant collection (class). Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.AddReferenceToObject - -
- - -Add a reference to an object's property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **source_class_name** (`string`, optional) Name of the collection (class) the source object belongs to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **source_object_uuid** (`string`, optional) Unique UUID identifying the source object to which the reference will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **reference_property_name** (`string`, optional) Unique name of the reference property of the source object to which the reference will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **required_consistency_level** (`string`, optional) Specifies the number of replicas that must acknowledge a request for it to be successful. Only used when mode is 'execute'. -- **tenant_identifier** (`string`, optional) Specifies the tenant for multi-tenant collection requests in a Weaviate class. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.DeleteReferenceFromObject - -
- - -Delete a specific reference from an object's property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **collection_name** (`string`, optional) Name of the collection (class) the source object belongs to. This identifies where the object is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **source_object_uuid** (`string`, optional) Unique UUID of the source object from which the reference will be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **reference_property_name** (`string`, optional) Unique name of the reference property of the source object from which to delete the reference. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **required_consistency_level** (`string`, optional) Specifies how many replicas must acknowledge the request for success. Only used when mode is 'execute'. -- **tenant_identifier** (`string`, optional) Specifies the tenant in a request targeting a multi-tenant collection (class). Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.ValidateDataObjectStructure - -
- - -Validate a data object's structure against the schema. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.BatchRegisterObjects - -
- - -Register multiple data objects in a single request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **consistency_level** (`string`, optional) Specifies how many replicas must confirm a request for it to be successful. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.DeleteMultipleObjects - -
- - -Deletes multiple data objects using specified filter criteria. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **replica_acknowledgement_level** (`string`, optional) Specifies the number of replicas that must confirm the request for it to be deemed successful. Only used when mode is 'execute'. -- **target_tenant** (`string`, optional) Specifies the tenant when targeting a multi-tenant collection. Use the tenant's unique identifier. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.BatchCreateReferences - -
- - -Batch create cross-references between items in a collection. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **consistency_level** (`string`, optional) Specifies the number of replicas needed to acknowledge a request for it to be deemed successful. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.ExecuteGraphqlQuery - -
- - -Executes a GraphQL query on Weaviate. - -**Parameters** - -- **graphql_query** (`string`, optional) A GraphQL query string to execute on Weaviate, following GraphQL syntax. -- **operation_name** (`string`, optional) The name of the operation if multiple operations exist in the GraphQL query. -- **query_variables** (`json`, optional) Additional JSON variables for the GraphQL query used to provide external values for operations. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.ExecuteGraphqlBatchQueries - -
- - -Execute multiple GraphQL queries in a single request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetWeaviateInstanceMeta - -
- - -Get meta-information about a Weaviate instance. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.RetrieveDatabaseSchema - -
- - -Retrieve definitions of all classes in the database schema. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CreateSchemaObject - -
- - -Create a new collection (class) in Weaviate. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.RetrieveCollectionSchema - -
- - -Retrieve the schema of a specified collection. - -**Parameters** - -- **collection_name** (`string`, required) The name of the collection to retrieve the schema for. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.UpdateCollectionSettings - -
- - -Update settings of an existing collection. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **collection_name_to_update** (`string`, optional) The name of the collection to be updated. Specify the collection's class name. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.DeleteSchemaCollection - -
- - -Permanently delete a collection from the schema. - -**Parameters** - -- **collection_name_to_delete** (`string`, required) The name of the collection (class) that will be permanently deleted from the schema. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.AddPropertyToCollection - -
- - -Add a new property to an existing collection schema. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **collection_name** (`string`, optional) The name of the collection (class) to which the property will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetCollectionShardStatus - -
- - -Retrieves status of shards for a specified collection. - -**Parameters** - -- **collection_name** (`string`, required) The name of the collection (class) whose shards to query. -- **tenant_name** (`string`, optional) The name of the tenant for retrieving shard statuses, applicable only for multi-tenant collections. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.UpdateShardStatus - -
- - -Update the status of a specific shard in a collection. - -**Parameters** - -- **collection_name** (`string`, required) The name of the collection or class containing the shard to be updated. -- **shard_name** (`string`, required) The specific name of the shard to update in the collection. -- **shard_status** (`string`, optional) The status to set for the shard, such as 'READY' or 'READONLY'. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetCollectionTenants - -
- - -Retrieve tenants for a specified collection. - -**Parameters** - -- **collection_name** (`string`, required) The name of the collection (class) whose tenants to list. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.UpdateTenantStatus - -
- - -Update the activity status of specified tenants. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **collection_name** (`string`, optional) The name of the collection (class) containing the tenants whose status is to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CreateTenants - -
- - -Create new tenants in a specified collection. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **collection_name** (`string`, optional) The name of the multi-tenant enabled collection for creating tenants. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.DeleteTenants - -
- - -Permanently delete specified tenants from a collection. - -**Parameters** - -- **collection_name** (`string`, required) The name of the collection from which to delete tenants. -- **tenant_names_to_delete** (`array[string]`, required) An array of tenant names to permanently delete from the specified collection. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetTenantDetails - -
- - -Retrieve details about a specific tenant's status. - -**Parameters** - -- **collection_name** (`string`, required) The name of the collection (class) that contains the tenant. -- **tenant_name** (`string`, required) The name of the tenant to retrieve details about within the specified collection. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.RetrieveAliases - -
- - -Retrieve all aliases from the system. - -**Parameters** - -- **filter_by_collection_name** (`string`, optional) Optional filter to retrieve aliases for a specific collection (class) only. If not provided, returns all aliases. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CreateAliasMapping - -
- - -Create a new alias for a collection in Weaviate. - -**Parameters** - -- **alias_name** (`string`, optional) The unique name of the alias, serving as an alternative identifier for the specified collection. -- **collection_class_name** (`string`, optional) The name of the collection (class) to which the alias is mapped. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.RetrieveAliasDetails - -
- - -Retrieve details about a specific alias by its name. - -**Parameters** - -- **alias_name** (`string`, required) The name of the alias to retrieve details for, including its associated collection. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.UpdateCollectionAlias - -
- - -Redirect an alias to a different collection. - -**Parameters** - -- **alias_name** (`string`, required) The name of the existing alias that you want to update to point to a new collection. -- **new_collection_name** (`string`, optional) Specify the new collection (class) for the alias to point to. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.DeleteAlias - -
- - -Delete an existing alias from the system. - -**Parameters** - -- **alias_name** (`string`, required) The name of the alias to be deleted. This identifier specifies which alias mapping to remove from the system. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.ListBackups - -
- - -Retrieve all backup IDs and their statuses. - -**Parameters** - -- **backend_storage_system** (`string`, required) Specifies the backend storage system to list backups from (e.g., `filesystem`, `gcs`, `s3`, `azure`). - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CreateBackup - -
- - -Initiates backup creation for specified collections. - -**Parameters** - -- **backend_storage_system** (`string`, required) Specifies the backend storage system where the backup will be stored, such as `filesystem`, `gcs`, `s3`, or `azure`. -- **backup_chunk_size** (`integer`, optional) Set the chunk size for the backup with a minimum of 2MB, default of 128MB, and a maximum of 512MB. -- **backup_id** (`string`, optional) The ID of the backup. Must be URL-safe, using only lowercase, numbers, underscore, and minus characters. -- **bucket_name** (`string`, optional) Name of the bucket, container, or volume where the backup will be stored. -- **bucket_path** (`string`, optional) Specifies the path or key within the storage bucket. This helps in locating where the backup will be stored within the bucket. -- **collections_to_include_in_backup** (`array[string]`, optional) List of collections to include in the backup. If not set, all collections are included. Cannot be used with `collections_to_exclude_in_backup`. -- **compression_level** (`string`, optional) Specifies the compression level for the backup: DefaultCompression, BestSpeed, or BestCompression. -- **cpu_utilization_percentage** (`integer`, optional) Sets desired CPU core utilization, ranging from 1% to 80%, during backup creation. -- **exclude_collections** (`array[string]`, optional) List of collections to exclude from the backup. Overrides include if both are set. -- **storage_endpoint_name** (`string`, optional) Name of the storage endpoint, such as s3.amazonaws.com, where the backup will be stored. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CheckBackupStatus - -
- - -Get the current status of a backup creation process. - -**Parameters** - -- **backup_backend_system** (`string`, required) Specifies the backend storage system where the backup resides, such as 'filesystem', 'gcs', 's3', or 'azure'. -- **backup_identifier** (`string`, required) The unique identifier of the backup. Use only lowercase, numbers, underscores, and minus characters. -- **backup_storage_path** (`string`, optional) Specifies the path within the bucket/container/volume if the backup is not at the root. Optional. -- **bucket_name** (`string`, optional) Specifies the bucket, container, or volume name if required by the backend. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CancelBackup - -
- - -Cancel a backup by its ID from a specified backend storage. - -**Parameters** - -- **backup_id** (`string`, required) The unique ID of the backup to delete. Must be URL-safe, using lowercase, numbers, underscores, and minus characters. -- **storage_backend_system** (`string`, required) Specifies the backend storage system where the backup resides (e.g., 'filesystem', 'gcs', 's3', 'azure'). -- **backup_subpath** (`string`, optional) Specifies the optional path within the storage if the backup is not at the root. -- **specified_bucket_name** (`string`, optional) Specifies the bucket, container, or volume name if required by the backend storage system. Optional parameter. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.CheckBackupRestoreStatus - -
- - -Check the status of a backup restoration process. - -**Parameters** - -- **backend_storage_system** (`string`, required) Specifies the backend storage system where the backup resides, such as 'filesystem', 'gcs', 's3', or 'azure'. -- **backup_id** (`string`, required) The URL-safe unique identifier of the backup being restored. Use lowercase, numbers, underscores, and minus characters only. -- **backup_bucket_name** (`string`, optional) Specifies the bucket, container, or volume name if required by the backend. -- **bucket_path** (`string`, optional) Specifies the path within the bucket, optional based on backend requirements. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.RestoreBackup - -
- - -Restore collections from a specified backup. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **backup_backend_storage** (`string`, optional) Specifies the backend storage system where the backup resides, such as `filesystem`, `gcs`, `s3`, or `azure`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **backup_identifier** (`string`, optional) The unique identifier for the backup to restore. It must be URL-safe and compatible with filesystem paths, using only lowercase letters, numbers, underscores, and minus characters. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetWeaviateClusterStatistics - -
- - -Get Weaviate cluster Raft protocol statistics. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetClusterNodeStatus - -
- - -Retrieve status information about all nodes in a cluster. - -**Parameters** - -- **output_verbosity** (`string`, optional) Controls the verbosity of the output for node status information. Accepted values: `minimal`, `verbose`. Defaults to `minimal`. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetShardHostNodesStatus - -
- - -Retrieve status of nodes hosting shards for a collection. - -**Parameters** - -- **collection_class_name** (`string`, required) The name of the collection (class) for which to retrieve node status. -- **output_verbosity** (`string`, optional) Set the verbosity of the output. Possible values: 'minimal', 'verbose'. Defaults to 'minimal'. -- **shard_name** (`string`, optional) Specifies the name of the shard for which to retrieve node status information. This helps to focus the request on specific shards within a collection. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.ListDistributedTasks - -
- - -Retrieve all distributed tasks in the cluster. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.InitiateClassificationTask - -
- - -Initiate a classification task in the background. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## WeaviateApi.GetClassificationStatus - -
- - -Retrieve status and results of a classification task. - -**Parameters** - -- **classification_task_id** (`string`, required) The unique identifier (UUID) of the classification task to retrieve its status and results. - -**Secrets** - -This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information. - -## Reference - -Below is a reference of enumerations used by some of the tools in the WeaviateApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - diff --git a/app/en/resources/integrations/development/[toolkitId]/_meta.tsx b/app/en/resources/integrations/development/[toolkitId]/_meta.tsx new file mode 100644 index 000000000..ce7f0efde --- /dev/null +++ b/app/en/resources/integrations/development/[toolkitId]/_meta.tsx @@ -0,0 +1,13 @@ +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "*": { + theme: { + breadcrumb: false, + toc: false, + copyPage: false, + }, + }, +}; + +export default meta; diff --git a/app/en/resources/integrations/development/[toolkitId]/page-impl.tsx b/app/en/resources/integrations/development/[toolkitId]/page-impl.tsx new file mode 100644 index 000000000..993120891 --- /dev/null +++ b/app/en/resources/integrations/development/[toolkitId]/page-impl.tsx @@ -0,0 +1,10 @@ +import { createToolkitDocsPage } from "@/app/en/resources/integrations/_lib/toolkit-docs-page"; + +export const dynamicParams = false; + +const { Page, generateMetadata, generateStaticParams } = + createToolkitDocsPage("development"); + +export { generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/development/[toolkitId]/page.mdx b/app/en/resources/integrations/development/[toolkitId]/page.mdx new file mode 100644 index 000000000..ca97c319f --- /dev/null +++ b/app/en/resources/integrations/development/[toolkitId]/page.mdx @@ -0,0 +1,14 @@ +--- +title: "MCP server" +description: "Generated MCP server documentation." +--- + +import Page, { + dynamicParams, + generateMetadata, + generateStaticParams, +} from "./page-impl"; + +export { dynamicParams, generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/development/_meta.tsx b/app/en/resources/integrations/development/_meta.tsx index 34e0f4b83..10aee476b 100644 --- a/app/en/resources/integrations/development/_meta.tsx +++ b/app/en/resources/integrations/development/_meta.tsx @@ -1,8 +1,62 @@ -export default { - e2b: "E2B", - figma: "Figma", - github: "GitHub", - firecrawl: "Firecrawl", - "vercel-api": "Vercel API", - "posthog-api": "PostHog API", +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "-- Optimized": { + type: "separator", + title: "Optimized", + }, + brightdata: { + title: "Bright Data", + href: "/en/resources/integrations/development/brightdata", + }, + e2b: { + title: "E2B", + href: "/en/resources/integrations/development/e2b", + }, + firecrawl: { + title: "Firecrawl", + href: "/en/resources/integrations/development/firecrawl", + }, + github: { + title: "GitHub", + href: "/en/resources/integrations/development/github", + }, + "-- Starter": { + type: "separator", + title: "Starter", + }, + arcadeengineapi: { + title: "Arcade Engine API", + href: "/en/resources/integrations/development/arcadeengineapi", + }, + cursoragentsapi: { + title: "Cursor Agents API", + href: "/en/resources/integrations/development/cursoragentsapi", + }, + datadogapi: { + title: "Datadog API", + href: "/en/resources/integrations/development/datadogapi", + }, + githubapi: { + title: "GitHub API", + href: "/en/resources/integrations/development/githubapi", + }, + pagerdutyapi: { + title: "PagerDuty API", + href: "/en/resources/integrations/development/pagerdutyapi", + }, + posthogapi: { + title: "PostHog API", + href: "/en/resources/integrations/development/posthogapi", + }, + vercelapi: { + title: "Vercel API", + href: "/en/resources/integrations/development/vercelapi", + }, + weaviateapi: { + title: "Weaviate API", + href: "/en/resources/integrations/development/weaviateapi", + }, }; + +export default meta; diff --git a/app/en/resources/integrations/development/arcade-engine-api/page.mdx b/app/en/resources/integrations/development/arcade-engine-api/page.mdx deleted file mode 100644 index 6377e1821..000000000 --- a/app/en/resources/integrations/development/arcade-engine-api/page.mdx +++ /dev/null @@ -1,1026 +0,0 @@ -# ArcadeEngineApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The EngineApi MCP Server offers a comprehensive suite of tools for managing authentication providers, secrets, and worker configurations. Users and LLMs can perform a variety of actions, including: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## EngineApi.ListAvailableAuthProviders - -
- - -Retrieve a list of available authentication providers. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.GetAuthProviderDetails - -
- - -Retrieve details of a specific authentication provider. - -**Parameters** - -- **auth_provider_id** (`string`, required) The ID of the authentication provider to retrieve. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.DeleteAuthProvider - -
- - -Delete a specific auth provider by ID. - -**Parameters** - -- **auth_provider_id** (`string`, required) The ID of the authentication provider to delete. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.DeleteSecretById - -
- - -Deletes a secret using its unique ID. - -**Parameters** - -- **secret_id** (`string`, required) The unique identifier of the secret to delete. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.UpdateSessionVerificationSettings - -
- - -Update session verification settings for a user. - -**Parameters** - -- **unsafe_skip_verification** (`boolean`, optional) Set to true to skip the session verification, making it unsafe. -- **verifier_url** (`string`, optional) The URL of the verifier service used for session verification. Provide a valid URL. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.ListAuthConnections - -
- - -Retrieve all authentication connections for users. - -**Parameters** - -- **page_offset** (`integer`, optional) The starting point in the list for pagination. Useful for retrieving subsequent pages of data. -- **page_size** (`integer`, optional) Number of auth connections to return per page. Use to control the size of the result set. -- **provider_id** (`string`, optional) Unique identifier for the authentication provider. -- **user_id** (`string`, optional) The unique identifier for the user to list authentication connections for. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.DeleteUserAuthConnection - -
- - -Deletes a user/auth provider connection. - -**Parameters** - -- **connection_id** (`string`, required) The unique identifier for the user/auth provider connection to be deleted. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.CheckAuthStatus - -
- - -Verify the ongoing authorization status of a tool. - -**Parameters** - -- **authorization_id** (`string`, required) The unique ID for the authorization process to check its status. -- **timeout_in_seconds** (`integer`, optional) Specify the timeout duration in seconds. Maximum allowed is 59 seconds. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.RetrieveFormattedToolsList - -
- - -Fetches a formatted list of tools from engine configuration. - -**Parameters** - -- **filter_by_toolkit** (`string`, optional) Specify the toolkit name to filter the list of tools. -- **number_of_items_to_return** (`integer`, optional) Specify the number of tools to return. Defaults to 25, with a maximum of 100. -- **offset_start_index** (`integer`, optional) Offset from the start of the tools list. Default is 0. -- **provider_format** (`string`, optional) Format the tools according to the provider's specifications. Accepts a string value. -- **user_identifier** (`string`, optional) The ID of the user for whom the tool list is to be retrieved. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.GetFormattedToolSpecification - -
- - -Fetches a formatted specification for a given tool. - -**Parameters** - -- **tool_name** (`string`, required) The name of the tool for which the formatted specification is requested. -- **provider_format** (`string`, optional) Specifies the format of the tool as required by the provider. -- **user_id** (`string`, optional) The identifier for the user requesting the tool specification. This should be a string. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.CheckArcadeEngineHealth - -
- - -Check the health status of the Arcade Engine. - -**Parameters** - -This tool does not take any parameters. - -## EngineApi.DeleteMcpEndpoint - -
- - -Delete the Model Context Protocol endpoint data. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.ListAccessibleProjects - -
- - -Retrieve a list of accessible projects. - -**Parameters** - -- **bearer_token** (`string`, required) A string containing the Bearer (JWT) token for authentication. -- **items_to_skip** (`integer`, optional) The number of projects to skip before starting to collect the result set. -- **maximum_items_to_return** (`integer`, optional) Specifies the maximum number of projects to return. Must be an integer. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.GetProjectDetails - -
- - -Retrieve detailed information about a specific project. - -**Parameters** - -- **authorization_token** (`string`, required) JWT token required for authentication. Should be provided in the format: 'Bearer \'. -- **project_id** (`string`, required) The unique identifier for the project to retrieve details for. This should be a string matching the project's ID in the database. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.GetScheduledToolExecutions - -
- - -Fetch a list of scheduled tool executions. - -**Parameters** - -- **items_limit** (`integer`, optional) The number of scheduled tool executions to return. Defaults to 25, max is 100. -- **list_offset** (`integer`, optional) The starting position in the list of scheduled tool executions, default is 0. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.GetScheduledToolDetails - -
- - -Retrieve details for a specific scheduled tool execution. - -**Parameters** - -- **scheduled_execution_id** (`string`, required) The unique identifier for the scheduled tool execution to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.GetOpenAPISpecification - -
- - -Get the OpenAPI 3.0 specification in JSON format. - -Use this tool to retrieve the OpenAPI 3.0 specification for the Arcade Engine API, which provides detailed information about all available endpoints and their usage. - -**Parameters** - -This tool does not take any parameters. - -## EngineApi.GetToolsList - -
- - -Retrieve a list of tools from the engine configuration. - -**Parameters** - -- **include_formats** (`array[string]`, optional) List of tool formats to include in the response, specified by their names. -- **items_per_page** (`integer`, optional) Specify the number of tools to return, with a maximum of 100. Defaults to 25 if not specified. -- **start_offset** (`integer`, optional) Offset to determine the starting point from the list of tools. Default is 0. -- **toolkit_name** (`string`, optional) Specifies the name of the toolkit to filter the tools list. -- **user_id** (`string`, optional) The ID of the user requesting the tool list. It is used to filter the results for a specific user context. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.AuthorizeUserToolAccess - -
- - -Authorize a user to access a specific tool. - -**Parameters** - -- **tool_name_for_authorization** (`string`, required) Specify the name of the tool to authorize the user for access. -- **redirect_uri_after_authorization** (`string`, optional) Optional URI to redirect the user after authorization. -- **tool_version** (`string`, optional) Specify the tool version to authorize. If not provided, any version will be used. -- **user_id** (`string`, optional) The unique identifier for a user. Required only when using an API key for authorization. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.ExecuteTool - -
- - -Execute a specified tool with given parameters. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.GetToolSpecification - -
- - -Retrieve the specification for a specific arcade tool. - -**Parameters** - -- **tool_name** (`string`, required) The name of the tool whose specification is to be retrieved. This should match the tool's registered name. -- **formats_to_include** (`array[string]`, optional) List of tool formats to include in the response. Provide formats as a list of strings. -- **user_identifier** (`string`, optional) The unique identifier for the user requesting the tool specification. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.ListWorkers - -
- - -Retrieve a list of all workers with their definitions. - -**Parameters** - -- **number_of_items_to_return** (`integer`, optional) The maximum number of worker items to return, with a default of 25 and a maximum of 100. -- **start_offset** (`integer`, optional) Offset from the start of the list for pagination. Defaults to 0. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.CreateWorker - -
- - -Create a new worker in the system. - -**Parameters** - -- **worker_id** (`string`, required) A unique identifier for the worker to be created. It should be a string. -- **enable_worker** (`boolean`, optional) Set to true to enable the new worker upon creation, or false to keep it disabled. -- **http_retry_attempts** (`integer`, optional) Number of retry attempts for HTTP requests if a failure occurs. -- **http_secret_key** (`string`, optional) A secret key used for HTTP authentication and authorization. It should be a secure string provided by the service. -- **http_timeout_seconds** (`integer`, optional) The timeout duration for the HTTP connection, specified in seconds. This defines how long the system should wait for the HTTP request to complete before timing out. -- **mcp_retry_attempts** (`integer`, optional) Specifies the number of retry attempts for MCP connections. Provide an integer value to define how many times the system should retry a connection if it fails. -- **mcp_timeout_duration** (`integer`, optional) The timeout duration for MCP operations in seconds. Must be an integer value. -- **worker_http_uri** (`string`, optional) The HTTP URI for the worker's endpoint. This expects a valid URL string that specifies where the worker's service can be accessed. -- **worker_resource_uri** (`string`, optional) The URI for the worker's resource location or service endpoint. Provide the full URI as a string. -- **worker_type** (`string`, optional) Specifies the type of worker to be created. It should be a string indicating the category or role of the worker. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.TestWorkerConnection - -
- - -Test a worker connection before adding it to the system. - -**Parameters** - -- **worker_connection_type** (`string`, required) Specify the type of worker connection to test. It must be a string value indicating the category or mode of the worker. -- **http_uri** (`string`, optional) Specify the HTTP URI of the worker to test the connection. -- **mcp_uri** (`string`, optional) The URI for the MCP connection required to test a worker connection. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.GetWorkerById - -
- - -Retrieve worker details using their ID. - -**Parameters** - -- **worker_id** (`string`, required) The unique identifier for the worker to retrieve details. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.DeleteWorker - -
- - -Deletes a specified worker from the system. - -**Parameters** - -- **worker_id** (`string`, required) The unique identifier for the worker to be deleted. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.AuthorizeWorker - -
- - -Authorize a worker based on their ID. - -**Parameters** - -- **worker_id** (`string`, required) The unique identifier for the worker to be authorized. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.GetWorkerHealthStatus - -
- - -Retrieve the health status of a worker. - -**Parameters** - -- **worker_id** (`string`, required) The unique identifier for the worker whose health status you want to check. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## EngineApi.FetchToolsPage - -
- - -Retrieve a list of tools for a specific worker. - -**Parameters** - -- **worker_id** (`string`, required) The unique ID of the worker for which to retrieve the tools list. -- **number_of_items** (`integer`, optional) Number of items to return in the result set. Default is 25 and the maximum is 100. -- **start_offset** (`integer`, optional) Offset from the start of the list for pagination. Defaults to 0. - -**Secrets** - -This tool requires the following secrets: `ARCADE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Secrets - -This MCP Server requires the `ARCADE_API_KEY` secret to be configured. Learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets). - -### Getting your Arcade API Key - -To use the Arcade Engine API MCP Server, you need an Arcade API key. This key authenticates your requests to the Arcade Engine. - -Learn how to create and manage your Arcade API keys in the [API Keys documentation](/get-started/setup/api-keys). - -## Reference - -Below is a reference of enumerations used by some of the tools in the ArcadeEngineApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - diff --git a/app/en/resources/integrations/development/brightdata/page.mdx b/app/en/resources/integrations/development/brightdata/page.mdx deleted file mode 100644 index 7e4ccf6b2..000000000 --- a/app/en/resources/integrations/development/brightdata/page.mdx +++ /dev/null @@ -1,220 +0,0 @@ -# Brightdata - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Brightdata MCP Server provides tools for scraping and extracting web content and structured data at scale. Main capabilities include: - -- Scrape web pages and return cleaned content in Markdown (ScrapeAsMarkdown). -- Perform advanced web searches across Google, Bing, or Yandex with customizable parameters (SearchEngine). -- Extract structured feeds from many site types (Amazon, LinkedIn, Instagram, Facebook, YouTube, Zillow, Booking, ZoomInfo, X, etc.), including products, reviews, profiles, posts, comments, listings, and videos (WebDataFeed). Note: do not fabricate links—use the search tool first if needed. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Brightdata.ScrapeAsMarkdown - -
- - - Scrape a webpage and return content in Markdown format using Bright Data. - -**Parameters** - -- **url** (`string`, required) URL to scrape - -**Secrets** - -This tool requires the following secrets: `BRIGHTDATA_API_KEY`, `BRIGHTDATA_ZONE` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Brightdata.SearchEngine - -
- - - Search using Google, Bing, or Yandex with advanced parameters using Bright Data. - -**Parameters** - -- **query** (`string`, required) Search query -- **engine** (`Enum` [SearchEngine](#SearchEngine), optional) Search engine to use -- **language** (`string`, optional) Two-letter language code -- **country_code** (`string`, optional) Two-letter country code -- **search_type** (`Enum` [SearchType](#SearchType), optional) Type of search -- **start** (`integer`, optional) Results pagination offset -- **num_results** (`integer`, optional) Number of results to return. The default is 10 -- **location** (`string`, optional) Location for search results -- **device** (`Enum` [DeviceType](#DeviceType), optional) Device type -- **return_json** (`boolean`, optional) Return JSON instead of Markdown - -**Secrets** - -This tool requires the following secrets: `BRIGHTDATA_API_KEY`, `BRIGHTDATA_ZONE` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Brightdata.WebDataFeed - -
- - -Extract structured data from various websites like LinkedIn, Amazon, Instagram, etc. - -**Parameters** - -- **source_type** (`Enum` [SourceType](#SourceType), required) Type of data source -- **url** (`string`, required) URL of the web resource to extract data from -- **num_of_reviews** (`integer`, optional) Number of reviews to retrieve. Only applicable for facebook_company_reviews. Default is None -- **timeout** (`integer`, optional) Maximum time in seconds to wait for data retrieval -- **polling_interval** (`integer`, optional) Time in seconds between polling attempts - -**Secrets** - -This tool requires the following secrets: `BRIGHTDATA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Secrets - -This tool requires the following secrets: - -- `BRIGHTDATA_API_KEY` -- `BRIGHTDATA_ZONE` - -### Auth - -The Arcade Bright Data MCP Server uses [Bright Data](https://brightdata.com/) to access proxy networks and web scraping infrastructure. - -**Global Environment Variables:** - -- `BRIGHTDATA_API_KEY`: Your Bright Data API key. You can generate this from your [Bright Data dashboard](https://brightdata.com/cp/zones) under Account Settings → API Access. - -- `BRIGHTDATA_ZONE`: Your Bright Data zone name (e.g., `residential_proxy1`). This is the zone identifier you created in your Bright Data dashboard under Proxies & Scraping Infrastructure → Zones. - -**How to get your credentials:** - -1. **API Key**: Navigate to your [Bright Data Control Panel](https://brightdata.com/cp) → Settings → API Access → Generate API Token -2. **Zone**: Go to Zones section in your dashboard, find your zone name in the format shown in the zone username: `brd-customer-{customer_id}-zone-{zone_name}` - -For more details, see the [Bright Data API Documentation](https://docs.brightdata.com/api-reference). - -## Reference - -Below is a reference of enumerations used by some of the tools in the Brightdata MCP Server: - -### SearchEngine - -- **GOOGLE**: `google` -- **BING**: `bing` -- **YANDEX**: `yandex` - -### SearchType - -- **IMAGES**: `images` -- **SHOPPING**: `shopping` -- **NEWS**: `news` -- **JOBS**: `jobs` - -### DeviceType - -- **MOBILE**: `mobile` -- **IOS**: `ios` -- **IPHONE**: `iphone` -- **IPAD**: `ipad` -- **ANDROID**: `android` -- **ANDROID_TABLET**: `android_tablet` - -### SourceType - -- **AMAZON_PRODUCT**: `amazon_product` -- **AMAZON_PRODUCT_REVIEWS**: `amazon_product_reviews` -- **LINKEDIN_PERSON_PROFILE**: `linkedin_person_profile` -- **LINKEDIN_COMPANY_PROFILE**: `linkedin_company_profile` -- **ZOOMINFO_COMPANY_PROFILE**: `zoominfo_company_profile` -- **INSTAGRAM_PROFILES**: `instagram_profiles` -- **INSTAGRAM_POSTS**: `instagram_posts` -- **INSTAGRAM_REELS**: `instagram_reels` -- **INSTAGRAM_COMMENTS**: `instagram_comments` -- **FACEBOOK_POSTS**: `facebook_posts` -- **FACEBOOK_MARKETPLACE_LISTINGS**: `facebook_marketplace_listings` -- **FACEBOOK_COMPANY_REVIEWS**: `facebook_company_reviews` -- **X_POSTS**: `x_posts` -- **ZILLOW_PROPERTIES_LISTING**: `zillow_properties_listing` -- **BOOKING_HOTEL_LISTINGS**: `booking_hotel_listings` -- **YOUTUBE_VIDEOS**: `youtube_videos` - - diff --git a/app/en/resources/integrations/development/cursor-agents-api/page.mdx b/app/en/resources/integrations/development/cursor-agents-api/page.mdx deleted file mode 100644 index de0821d87..000000000 --- a/app/en/resources/integrations/development/cursor-agents-api/page.mdx +++ /dev/null @@ -1,273 +0,0 @@ -# CursorAgentsApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The CursorAgentsApi MCP Server provides tools for managing and inspecting background agents, authentication info, model recommendations, and linked GitHub repos. These tools let users and LLMs: - -- List, inspect, and delete background agents. -- Retrieve an agent’s current status, results, and full conversation history. -- Verify API key / user info used for authentication. -- Fetch recommended models for background agents. -- List GitHub repositories accessible to the authenticated user. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## CursorAgentsApi.ListBackgroundAgents - -
- - -List all background agents for the user. - -**Parameters** - -- **agent_limit** (`integer`, optional) Number of background agents to return for the request. -- **pagination_cursor** (`string`, optional) Pagination cursor from the previous response to navigate pages. - -**Secrets** - -This tool requires the following secrets: `CURSOR_AGENTS_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CursorAgentsApi.GetAgentStatus - -
- - -Retrieve the current status and results of a background agent. - -**Parameters** - -- **background_agent_id** (`string`, required) A unique identifier required to retrieve the status and results of the specified background agent. - -**Secrets** - -This tool requires the following secrets: `CURSOR_AGENTS_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CursorAgentsApi.DeleteBackgroundAgent - -
- - -Permanently delete a background agent. - -**Parameters** - -- **background_agent_id** (`string`, required) Unique identifier for the background agent to be deleted permanently. - -**Secrets** - -This tool requires the following secrets: `CURSOR_AGENTS_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CursorAgentsApi.GetAgentConversationHistory - -
- - -Retrieve the conversation history of a background agent. - -**Parameters** - -- **background_agent_id** (`string`, required) Unique identifier for the background agent to retrieve conversation history. - -**Secrets** - -This tool requires the following secrets: `CURSOR_AGENTS_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CursorAgentsApi.RetrieveApiUserInfo - -
- - -Retrieve information about the API key used for authentication. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CURSOR_AGENTS_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CursorAgentsApi.ListRecommendedModels - -
- - -Retrieve recommended models for background agents. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CURSOR_AGENTS_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## CursorAgentsApi.ListGithubRepositories - -
- - -Retrieve accessible GitHub repositories for a user. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `CURSOR_AGENTS_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - - diff --git a/app/en/resources/integrations/development/datadog-api/page.mdx b/app/en/resources/integrations/development/datadog-api/page.mdx deleted file mode 100644 index 0afcf15f9..000000000 --- a/app/en/resources/integrations/development/datadog-api/page.mdx +++ /dev/null @@ -1,20298 +0,0 @@ -# DatadogApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The DatadogApi MCP Server offers a comprehensive suite of tools for managing and interacting with Datadog's services. Users can leverage these tools to: - -## Authentication - -The Arcade Datadog API MCP Server requires three environment variables to authenticate with the [Datadog API](https://docs.datadoghq.com/api/latest/): - -- `DATADOG_API_KEY` -- `DATADOG_APPLICATION_KEY` -- `DATADOG_BASE_URL` - -**How to obtain your credentials:** - -1. Log in to your [Datadog dashboard](https://app.datadoghq.com/) -2. Navigate to **Organization Settings** (click your profile icon in the bottom left) -3. Go to **API Keys** → click **New Key** → provide a name and click **Create Key** -4. Go to **Application Keys** → click **New Key** → provide a name and click **Create Key** -5. Determine your **Base URL** based on your Datadog site (check the URL in your browser): - - US1: `api.datadoghq.com` - - US3: `api.us3.datadoghq.com` - - US5: `api.us5.datadoghq.com` - - EU1: `api.datadoghq.eu` - - AP1: `api.ap1.datadoghq.com` - - GOV: `api.ddog-gov.com` - -For more details, see the [Datadog API and Application Keys documentation](https://docs.datadoghq.com/account_management/api-app-keys/). - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## DatadogApi.ListDatadogDatastores - -
- - -Retrieve a list of all Datadog datastores. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateNewDatastore - -
- - -Creates a new datastore in Datadog. - -**Parameters** - -- **datastore_description** (`string`, optional) A human-readable description about the datastore. -- **datastore_display_name** (`string`, optional) The display name for the new datastore. This should be a human-readable and descriptive name. -- **datastore_id** (`string`, optional) Optional ID for the new datastore. If not provided, a default one will be generated automatically. -- **datastore_resource_type** (`string`, optional) Specifies the resource type for the datastore. Valid value is 'datastores'. -- **organization_access_level** (`string`, optional) The access level for the datastore within the organization. Options: 'contributor', 'viewer', or 'manager'. -- **primary_key_column_name** (`string`, optional) The name of the primary key column for this datastore. Must follow PostgreSQL naming conventions and not exceed 63 characters. -- **primary_key_generation_strategy** (`string`, optional) Set to `uuid` for automatic primary key generation when new items are added. Default is `none`, requiring manual key assignment. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteDatadogDatastore - -
- - -Delete a Datadog datastore using its unique ID. - -**Parameters** - -- **datastore_unique_id** (`string`, required) The unique identifier of the datastore to delete in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RetrieveDatastore - -
- - -Retrieve datastore information by ID. - -**Parameters** - -- **datastore_identifier** (`string`, required) The unique ID of the datastore to be retrieved from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateDatastoreAttributes - -
- - -Update attributes of an existing datastore in Datadog. - -**Parameters** - -- **datastore_unique_identifier** (`string`, required) The unique identifier of the datastore to update in Datadog. -- **datastore_description** (`string`, optional) A human-readable description for the datastore. Use this to provide additional information or context about the datastore. -- **datastore_display_name** (`string`, optional) The display name of the datastore to be updated. Provide a concise, human-readable name. -- **datastore_update_id** (`string`, optional) The unique identifier for the datastore that needs to be updated. -- **resource_type_for_datastores** (`string`, optional) Specifies the resource type for datastores. Must be 'datastores'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteDatastoreItem - -
- - -Delete an item from a datastore by its key. - -**Parameters** - -- **datastore_id** (`string`, required) A string representing the unique identifier of the datastore from which the item will be deleted. -- **item_primary_key** (`string`, optional) The primary key value identifying the item to delete. Max length is 256 characters. -- **item_unique_identifier** (`string`, optional) Optional unique identifier of the item to delete. Use if available for more precise deletion. -- **resource_type_for_datastore_items** (`string`, optional) The resource type for datastore items. Must be 'items'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListDatastoreItems - -
- - -Retrieve items from a specified datastore. - -**Parameters** - -- **datastore_identifier** (`string`, required) The unique identifier for the datastore from which to fetch items. -- **item_limit_per_page** (`integer`, optional) Limit the number of items to return per page for pagination. Maximum of 100 items per page. -- **pagination_offset** (`integer`, optional) Specifies the number of items to skip from the beginning of the result set for pagination. -- **primary_item_key** (`string`, optional) Primary key to retrieve a specific item. Cannot be used with the filter parameter. -- **search_filter** (`string`, optional) Query filter to search datastore items using the logs search syntax. Cannot be used with item_key. -- **sort_order** (`string`, optional) Sort results by a specific field. Use '-' prefix for descending order (e.g., '-created_at'). - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateDatastoreItem - -
- - -Partially update an item in a datastore by its key. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **datastore_identifier** (`string`, optional) The unique identifier for the datastore that contains the item to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.BulkDeleteDatastoreItems - -
- - -Delete multiple items from a datastore at once. - -**Parameters** - -- **datastore_identifier** (`string`, required) The unique ID of the datastore from which items will be deleted. -- **datastore_items_id** (`string`, optional) ID for the datastore of items you want to delete. -- **item_keys_to_delete** (`array[string]`, optional) List of up to 100 primary keys identifying items to delete from the datastore. -- **items_resource_type** (`string`, optional) Specifies the resource type of the items. Must be 'items'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.BulkUpdateDatastoreItems - -
- - -Perform bulk creation or replacement of datastore items. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **datastore_identifier** (`string`, optional) The unique identifier for the datastore where items will be updated or replaced. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListAppKeyRegistrations - -
- - -Retrieve a list of app key registrations from Datadog. - -**Parameters** - -- **page_number** (`integer`, optional) The page number to return for paginating through app key registrations. -- **results_per_page** (`integer`, optional) The number of App Key Registrations to return per page. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UnregisterAppKey - -
- - -Unregister an application key to revoke its access. - -**Parameters** - -- **app_key_id** (`string`, required) The unique identifier of the application key to be unregistered. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAppKeyRegistration - -
- - -Retrieve details of an existing App Key Registration. - -**Parameters** - -- **app_key_id** (`string`, required) The unique ID of the app key to fetch its registration details. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RegisterDatadogAppKey - -
- - -Register a new app key in Datadog. - -**Parameters** - -- **app_key_id** (`string`, required) The unique identifier for the app key to be registered with Datadog. It must be a valid string. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateActionConnection - -
- - -Create a new action connection in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteActionConnection - -
- - -Delete an existing action connection in Datadog. - -**Parameters** - -- **action_connection_id** (`string`, required) The unique identifier for the action connection to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetActionConnection - -
- - -Retrieve an existing Action Connection from Datadog. - -**Parameters** - -- **action_connection_id** (`string`, required) The ID of the action connection to retrieve. Required for fetching details of a specific connection. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateActionConnection - -
- - -Update an existing action connection in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **action_connection_id** (`string`, optional) The unique identifier for the action connection to be updated in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAwsScanOptions - -
- - -Fetch AWS scan options for configured accounts. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ActivateAwsScanOptions - -
- - -Activate Agentless scan options for an AWS account. - -**Parameters** - -- **aws_account_id** (`string`, required) The ID of the AWS account for which to activate scan options. -- **enable_container_vulnerability_scanning** (`boolean`, required) Enable scanning for vulnerabilities in containers when set to true. -- **enable_lambda_function_scanning** (`boolean`, required) Enable scanning of Lambda functions. Set to true to enable, false to disable. -- **enable_sensitive_data_scanning** (`boolean`, required) Indicates if scanning for sensitive data is enabled for the AWS account. -- **enable_vulnerability_scan_host_os** (`boolean`, required) Indicates if scanning for vulnerabilities in host operating systems is enabled. -- **resource_type** (`string`, optional) Specifies the resource type to activate. Must be 'aws_scan_options'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteAwsScanOptions - -
- - -Delete Agentless scan options for an AWS account. - -**Parameters** - -- **aws_account_id** (`string`, required) The unique identifier for the AWS account whose scan options you want to delete. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.FetchAwsScanSettings - -
- - -Fetches Agentless scan options for AWS accounts. - -**Parameters** - -- **aws_account_id** (`string`, required) The unique ID of an AWS account for fetching scan options. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateAwsScanOptions - -
- - -Update Agentless scan options for an AWS account. - -**Parameters** - -- **account_identifier** (`string`, required) The ID of the AWS account that needs scan options updated. -- **aws_account_id** (`string`, required) The ID of the AWS account for which to update scan options. -- **enable_lambda_scanning** (`boolean`, optional) Set to true to enable scanning of AWS Lambda functions. -- **enable_sensitive_data_scanning** (`boolean`, optional) Enable scanning for sensitive data in the AWS account. Set to true to enable. -- **enable_vulnerability_scanning_for_containers** (`boolean`, optional) Set to true to enable scanning for container vulnerabilities. -- **enable_vulnerability_scanning_in_hosts** (`boolean`, optional) Enable scanning for vulnerabilities in hosts. Set to true to enable, false to disable. -- **resource_type** (`string`, optional) Specifies the resource type. Must be set to `aws_scan_options`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.FetchAzureScanOptions - -
- - -Fetches the scan options for Azure accounts from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ActivateAzureScanOptions - -
- - -Activate Agentless scan options for Azure subscriptions. - -**Parameters** - -- **azure_subscription_id** (`string`, optional) The Azure subscription ID for which to activate the scan options. -- **enable_container_vulnerability_scan** (`boolean`, optional) Set to true to activate scanning for vulnerabilities in containers. -- **enable_vulnerability_scan_hosts** (`boolean`, optional) Indicate if scanning for vulnerabilities in Azure hosts is enabled. Set to true to activate. -- **resource_type** (`string`, optional) Specifies the resource type. Always use 'azure_scan_options'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteAzureSubscriptionScanOptions - -
- - -Delete scan options for an Azure subscription. - -**Parameters** - -- **azure_subscription_id** (`string`, required) The unique identifier for the Azure subscription whose scan options you want to delete. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAgentlessScanOptions - -
- - -Fetch Azure Agentless scan options for a subscription. - -**Parameters** - -- **azure_subscription_id** (`string`, required) The Azure subscription ID to retrieve the Agentless scan options for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateAzureScanOptions - -
- - -Update Agentless scan options for an Azure subscription. - -**Parameters** - -- **azure_subscription_id** (`string`, required) The unique identifier for the Azure subscription to update scan options. -- **azure_scan_options_resource_type** (`string`, optional) Specifies the resource type for Azure scan options, must be 'azure_scan_options'. -- **azure_subscription_identifier** (`string`, optional) The Azure subscription ID for which to update scan options. -- **enable_container_vulnerability_scanning** (`boolean`, optional) Enable or disable container vulnerability scanning. Set to true to enable, false to disable. -- **enable_scanning_for_host_vulnerabilities** (`boolean`, optional) Enable or disable scanning for vulnerabilities in host operating systems. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.FetchGcpScanOptions - -
- - -Fetch GCP project scan options. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ActivateGcpScanOptions - -
- - -Activate Agentless scan options for a GCP project. - -**Parameters** - -- **enable_container_vulnerability_scanning** (`boolean`, optional) Set to true to enable scanning for vulnerabilities in containers. -- **enable_vulnerability_host_scanning** (`boolean`, optional) Set to true to enable scanning for vulnerabilities in hosts in the GCP project. -- **gcp_project_id** (`string`, optional) The Google Cloud Platform project ID for which to activate the scan options. -- **gcp_scan_resource_type** (`string`, optional) The type of GCP scan options resource. This is typically 'gcp_scan_options'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteGcpScanOptions - -
- - -Delete Agentless scan options for a GCP project. - -**Parameters** - -- **gcp_project_id** (`string`, required) The unique identifier for the Google Cloud Platform (GCP) project whose scan options you wish to delete. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RetrieveGcpScanSettings - -
- - -Retrieve GCP project agentless scan options. - -**Parameters** - -- **gcp_project_id** (`string`, required) The unique ID of the GCP project to retrieve scan options for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateGcpScanOptions - -
- - -Update scan options for a GCP project in Datadog. - -**Parameters** - -- **gcp_project_id** (`string`, required) The Google Cloud Platform project ID to update scan options for. -- **enable_container_vulnerability_scanning** (`boolean`, optional) Enable (True) or disable (False) scanning for vulnerabilities in containers. -- **enable_host_vulnerability_scanning** (`boolean`, optional) Indicate if scanning for vulnerabilities in host operating systems is enabled. -- **gcp_scan_options_resource_type** (`string`, optional) Specifies the GCP scan options resource type, typically set to 'gcp_scan_options'. -- **google_cloud_project_id** (`string`, optional) The ID of the GCP project to update scan options for, used as an identifier. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.FetchRecentAwsOnDemandTasks - -
- - -Retrieve the latest AWS on demand tasks. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.TriggerAwsResourceScan - -
- - -Trigger a high-priority scan of an AWS resource. - -**Parameters** - -- **aws_resource_arn** (`string`, required) The ARN of the AWS resource to scan, such as EC2, Lambda, AMI, ECR, RDS, or S3. -- **task_type** (`string`, optional) The type of the on-demand task. This must always be set to 'aws_resource'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAwsOnDemandTaskData - -
- - -Fetch data of a specific AWS on-demand task in Datadog. - -**Parameters** - -- **aws_task_uuid** (`string`, required) The UUID of the AWS on-demand task to fetch data for. This is a unique identifier for the task. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListApiKeys - -
- - -Retrieve all API keys for your Datadog account. - -**Parameters** - -- **api_key_filter** (`string`, optional) String to filter API keys by specified criteria. Use it to narrow down the list based on specific string matches. -- **created_after_date_filter** (`string`, optional) Include API keys created on or after this date. Expected format: YYYY-MM-DD. -- **filter_api_keys_by_category** (`string`, optional) Filter API keys by the specified category. -- **filter_by_remote_config_read_enabled** (`boolean`, optional) Set to true to filter API keys with remote config read enabled; false otherwise. -- **filter_created_before_date** (`string`, optional) Include only API keys created on or before this date in the format YYYY-MM-DD. -- **include_related_resources** (`string`, optional) Comma-separated list of resource paths (`created_by`, `modified_by`) to include related data in the response. -- **modified_after_date_filter** (`string`, optional) Specify a date to include API keys modified on or after this date. Use YYYY-MM-DD format. -- **modified_before_date** (`string`, optional) Include API keys modified on or before this specified date. Format should be YYYY-MM-DD. -- **page_size** (`integer`, optional) Specifies the number of API keys returned in a single page; maximum value is 100. -- **sort_by_attribute** (`string`, optional) Attribute to sort API keys by. Use a minus sign for descending order. -- **specific_page_number_to_return** (`integer`, optional) The specific page number to return from the paginated list of API keys. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateDatadogApiKey - -
- - -Creates a new API key in Datadog. - -**Parameters** - -- **api_key_name** (`string`, required) Name of the API key to be created in Datadog. This should be a descriptive and unique string identifier. -- **api_keys_resource_type** (`string`, optional) Specify the resource type as 'api_keys'. -- **apikey_category** (`string`, optional) Specifies the category for the API key. This categorizes the key for organizational purposes. -- **remote_config_read_enabled** (`boolean`, optional) Indicates whether to enable read access to remote config for the new API key. Expects a boolean value. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteDatadogApiKey - -
- - -Delete an API key from Datadog. - -**Parameters** - -- **api_key_id** (`string`, required) The unique identifier of the API key to delete in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetApiKeyDetails - -
- - -Retrieves details of a specific Datadog API key. - -**Parameters** - -- **api_key_id** (`string`, required) The unique identifier for the Datadog API key to be retrieved. -- **include_related_resources** (`string`, optional) Comma-separated list of resource paths (`created_by`, `modified_by`) to include in the response. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateDatadogApiKey - -
- - -Update an API key in Datadog. - -**Parameters** - -- **api_key_id** (`string`, required) The unique identifier for the API key to be updated in Datadog. -- **api_key_name** (`string`, required) The new name for the API key to be updated. -- **key_id** (`string`, required) ID of the API key to be updated in Datadog. -- **api_key_category** (`string`, optional) The category of the API key for the update operation. -- **api_keys_resource_type** (`string`, optional) Specifies the resource type for API keys. Must be 'api_keys'. -- **enable_remote_config_read** (`boolean`, optional) Enable remote config read for the API key. Use true to enable, false to disable. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListSpanMetrics - -
- - -Retrieve configured span-based metrics from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateSpanMetric - -
- - -Create a metric based on ingested spans in your organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteSpanMetric - -
- - -Delete a specific span-based metric from your organization. - -**Parameters** - -- **metric_id** (`string`, required) The unique identifier for the span-based metric to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetSpanMetric - -
- - -Retrieve a specific span-based metric from Datadog. - -**Parameters** - -- **metric_name** (`string`, required) The name of the span-based metric to be retrieved from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateSpanMetric - -
- - -Update a specific span-based metric in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **span_metric_name** (`string`, optional) The name of the span-based metric to update in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetApmRetentionFilters - -
- - -Retrieve the list of APM retention filters from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateApmRetentionFilter - -
- - -Create a retention filter for indexing spans in Datadog. - -**Parameters** - -- **enable_retention_filter** (`boolean`, required) Set to true to enable the retention filter or false to disable it. -- **retention_filter_name** (`string`, required) The name for the retention filter to be created. -- **search_query** (`string`, required) The search query using span search syntax to define criteria for retention. -- **span_sample_rate** (`number`, required) Sample rate for spans matching the query. A value of 1.0 processes all matching spans. -- **resource_type** (`string`, optional) Specify the type of the resource, always use 'apm_retention_filter'. -- **retention_filter_type** (`string`, optional) Set the type of retention filter. Must be 'spans-sampling-processor'. -- **trace_sample_rate** (`number`, optional) Sample rate for traces with spans going through the filter. Use 1.0 to keep all matching traces. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ReorderApmRetentionFilters - -
- - -Reorder execution order of APM retention filters. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteApmRetentionFilter - -
- - -Delete a specific APM retention filter from your organization. - -**Parameters** - -- **retention_filter_id** (`string`, required) The ID of the retention filter to delete. Default filters cannot be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetApmRetentionFilter - -
- - -Retrieve details of a specific APM retention filter. - -**Parameters** - -- **retention_filter_id** (`string`, required) The unique identifier for the specific APM retention filter to retrieve. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateApmRetentionFilter - -
- - -Update an APM retention filter in your organization. - -**Parameters** - -- **enable_retention_filter** (`boolean`, required) Set to true to enable or false to disable the retention filter. -- **filter_id** (`string`, required) The unique identifier for the retention filter that you want to update. -- **filter_query** (`string`, required) The search query for the retention filter, following the span search syntax. -- **retention_filter_id** (`string`, required) The unique ID of the retention filter to be updated. -- **retention_filter_name** (`string`, required) Specify the name of the retention filter to update. -- **span_sample_rate** (`number`, required) Sample rate to apply to spans going through this retention filter. A value of 1.0 keeps all spans matching the query. Expected to be a number between 0 and 1. -- **resource_type** (`string`, optional) Specifies the type of the APM retention filter resource, should be 'apm_retention_filter'. -- **retention_filter_type** (`string`, optional) Specify the type of retention filter. Valid options are: 'spans-sampling-processor', 'spans-errors-sampling-processor', 'spans-appsec-sampling-processor'. -- **trace_sample_rate** (`number`, optional) Sample rate for traces containing spans that pass through the retention filter. A value of 1.0 keeps all matching traces. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteMultipleDatadogApps - -
- - -Delete multiple apps in Datadog using app IDs. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListApps - -
- - -Retrieve a list of all apps with optional filters and sorting. - -**Parameters** - -- **filter_by_app_name** (`string`, optional) Filter the list of apps by specifying the app name. -- **filter_by_creator_email** (`string`, optional) Filter apps by the creator's email address. This is used to narrow down apps created by a specific user. -- **filter_by_creator_uuid** (`string`, optional) Filter apps by the app creator's UUID. Provide the UUID of the user who created the app to narrow down the results. -- **filter_by_query** (`string`, optional) Filter apps by the app name or the app creator's name. -- **filter_by_tags** (`string`, optional) Filter apps by specifying tags. Separate multiple tags with commas. -- **filter_self_service_enabled** (`boolean`, optional) Filter apps by self-service enablement. True for enabled, false otherwise. -- **include_published_apps** (`boolean`, optional) Set to true to include only published apps, false to exclude them. -- **page_number** (`integer`, optional) The page number to return for paginated results. -- **page_size** (`integer`, optional) The number of apps to return per page. -- **show_only_favorite_apps** (`boolean`, optional) Set to true to filter and show only apps that you have marked as favorites. -- **sort_fields_and_directions** (`array[string]`, optional) An array specifying the fields and directions (e.g., 'name:asc', 'created_at:desc') to sort apps by. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateNewApp - -
- - -Create a new app and return its ID using Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteApp - -
- - -Delete a specific app in Datadog. - -**Parameters** - -- **app_id** (`string`, required) The ID of the app to delete in Datadog. Ensure this ID is accurate to avoid unintentional deletions. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAppDetails - -
- - -Retrieve comprehensive details of a Datadog app. - -**Parameters** - -- **application_id** (`string`, required) The unique ID of the Datadog app to retrieve details for. Required for fetching app information. -- **app_version** (`string`, optional) Specify the app version to retrieve. Use a version number starting from 1, or special values `latest` and `deployed` for the latest or published version, respectively. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateAppVersion - -
- - -Update an app by creating a new version. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **application_id** (`string`, optional) The unique ID of the app to update. Required for creating a new version. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UnpublishApp - -
- - -Unpublish an app to remove its live version. - -**Parameters** - -- **app_identifier** (`string`, required) The ID of the app you want to unpublish, removing its live version. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.PublishAppOnDatadog - -
- - -Publish an app for user access on Datadog. - -**Parameters** - -- **app_id_of_app_to_publish** (`string`, required) The unique identifier of the app you want to publish on Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListApplicationKeys - -
- - -Retrieve all application keys for your organization. - -**Parameters** - -- **created_after_date** (`string`, optional) Include application keys created on or after this date (YYYY-MM-DD). -- **created_before_date** (`string`, optional) Filters application keys created on or before this date. Expected format is YYYY-MM-DD. -- **filter_application_keys** (`string`, optional) Filter the application keys based on a specified string to narrow down the results. -- **include_related_resource** (`string`, optional) Specify 'owned_by' to include related resource information in the response. -- **page_number** (`integer`, optional) Specify the page number to return in the results. -- **page_size** (`integer`, optional) Specify the number of application keys to return per page. Maximum is 100. -- **sort_keys_by_attribute** (`string`, optional) Sort application keys by attribute such as 'created_at', 'name', or 'last4'. Use a minus sign for descending order, e.g., '-name'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteDatadogAppKey - -
- - -Deletes an application key in Datadog. - -**Parameters** - -- **application_key_id** (`string`, required) The unique ID of the Datadog application key to delete. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetApplicationKey - -
- - -Retrieve an application key for your organization from Datadog. - -**Parameters** - -- **application_key_id** (`string`, required) The unique identifier for the application key to retrieve details from Datadog. -- **include_related_resource** (`string`, optional) Resource path for related resources to include in the response. Currently, only `owned_by` is supported. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateDatadogAppKey - -
- - -Edit a Datadog application key by ID. - -**Parameters** - -- **app_key_id** (`string`, required) The unique ID of the Datadog application key to be edited. -- **application_key_id** (`string`, required) The unique identifier for the Datadog application key that needs to be updated. -- **application_key_name** (`string`, optional) Name of the application key to be updated. -- **application_key_scopes** (`array[string]`, optional) Array of scopes to grant the application key. Each scope is a string specifying a permission level. -- **application_keys_resource_type** (`string`, optional) Fixed value for the resource type, which should always be 'application_keys'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAuditLogs - -
- - -Retrieve events matching an Audit Logs search query. - -**Parameters** - -- **audit_logs_search_query** (`string`, optional) Search query using Audit Logs syntax to filter events. -- **cursor_for_following_results** (`string`, optional) Cursor to fetch subsequent pages of results. Use the cursor from the previous query's response. -- **max_event_timestamp** (`string`, optional) Specify the maximum timestamp for requested events in ISO 8601 format. -- **max_events_per_response** (`integer`, optional) Specifies the maximum number of events to return in the response. -- **sort_order_of_events** (`string`, optional) Specify the order of events in the results. Use 'timestamp' for ascending and '-timestamp' for descending order. -- **start_time_filter** (`string`, optional) Specify the minimum timestamp for requested events in the format YYYY-MM-DDTHH:MM:SSZ. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SearchAuditLogs - -
- - -Retrieve audit logs events based on a search query. - -**Parameters** - -- **audit_logs_search_query** (`string`, optional) A string representing the search query following the Audit Logs search syntax to filter the logs. -- **max_events_limit** (`integer`, optional) Specify the maximum number of events to include in the response, enabling efficient pagination. -- **maximum_time_for_requested_events** (`string`, optional) Maximum time for the requested events. Supports date, math, and regular timestamps (in milliseconds). -- **minimum_time** (`string`, optional) Minimum time for the requested events. Accepts date, math, or timestamps in milliseconds. -- **pagination_cursor** (`string`, optional) Cursor for retrieving subsequent pages of audit log results. -- **sort_parameter** (`string`, optional) Sort events by timestamp. Use 'timestamp' for ascending, '-timestamp' for descending. -- **time_offset_seconds** (`integer`, optional) Time offset in seconds to apply to the query, adjusting the timeframe of the log search. -- **timezone** (`string`, optional) Specify the timezone for the query, using GMT, UTC, an offset like UTC+1, or a Timezone Database identifier like America/New_York. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListAuthnMappings - -
- - -Retrieve all AuthN Mappings in the organization. - -**Parameters** - -- **filter_authn_mappings** (`string`, optional) Filter all authentication mappings using a specific string to refine the results. -- **filter_by_resource_type** (`string`, optional) Filter results by mapping resource type. Can be 'role' or 'team'. Defaults to 'role'. -- **page_number** (`integer`, optional) The specific page number to return from the list of AuthN Mappings. -- **page_size** (`integer`, optional) Number of results per page, with a maximum value of 100. -- **sort_authn_mappings_by** (`string`, optional) Sort AuthN Mappings by the specified field. Options include fields like created_at, role_id, saml_assertion_attribute_id, etc. Prefix with '-' for descending order. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateAuthnMapping - -
- - -Creates a new AuthN Mapping in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteAuthnMapping - -
- - -Delete an AuthN Mapping using its UUID. - -**Parameters** - -- **authn_mapping_uuid** (`string`, required) The unique identifier (UUID) of the AuthN Mapping to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAuthnMapping - -
- - -Retrieve an AuthN Mapping by its UUID. - -**Parameters** - -- **authn_mapping_uuid** (`string`, required) The UUID of the AuthN Mapping to retrieve. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.EditAuthnMapping - -
- - -Edit an AuthN Mapping in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **authn_mapping_uuid** (`string`, optional) The UUID of the AuthN Mapping to edit. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SearchCases - -
- - -Search and retrieve support cases from Datadog. - -**Parameters** - -- **order_ascending** (`boolean`, optional) Set to true for ascending order; false for descending. -- **page_number** (`integer`, optional) The specific page number to return in the search results. -- **page_size** (`integer`, optional) The number of results per page, with a maximum value of 100. -- **search_query** (`string`, optional) The search query to filter cases. Use keywords or phrases to specify your search criteria. -- **sort_by_field** (`string`, optional) Specify the field to sort by. Options are 'created_at', 'priority', or 'status'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateSupportCase - -
- - -Create a new support case in Datadog. - -**Parameters** - -- **case_title** (`string`, required) The title of the support case to be created. It should clearly summarize the issue or request. -- **case_type_uuid** (`string`, required) UUID representing the case type. Provide a valid UUID to specify the type of case being created. -- **assignee_resource_type** (`string`, optional) The type of resource for the assignee, usually 'user'. -- **assignee_user_id** (`string`, optional) A unique identifier for the user assigned to the case. Typically a UUID string. -- **case_description** (`string`, optional) A detailed description of the support case. Include all relevant information about the issue or request. -- **case_priority** (`string`, optional) The priority of the support case. Valid values are NOT_DEFINED, P1, P2, P3, P4, P5. -- **case_resource_type** (`string`, optional) Specifies the type of resource being created. Always use "case" for this argument. -- **project_id** (`string`, optional) Provide the unique identifier of the project related to the support case. -- **project_resource_type** (`string`, optional) Specifies the project resource type. Must be 'project'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAllProjects - -
- - -Retrieve a list of all projects from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateProject - -
- - -Create a new project in the system. - -**Parameters** - -- **project_key** (`string`, required) The unique key for the project. Cannot use the value 'CASE'. -- **project_name** (`string`, required) Specify the name of the project to be created. It should be a descriptive string. -- **project_resource_type** (`string`, optional) Specifies the project resource type, which must be 'project'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RemoveProject - -
- - -Remove a project using its ID. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier (UUID) of the project to be removed. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetProjectDetails - -
- - -Retrieve details of a specific project using project ID. - -**Parameters** - -- **project_uuid** (`string`, required) The unique identifier (UUID) of the project for which details are required. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RetrieveSupportCaseTypes - -
- - -Retrieves all available support case types from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateCaseTypeInDatadog - -
- - -Initiate the creation of a new case type in Datadog. - -**Parameters** - -- **case_type_name** (`string`, required) Specify the name of the case type to be created in Datadog. -- **case_type_deleted_timestamp** (`string`, optional) Timestamp indicating when the case type was deleted. Format should be a valid ISO 8601 string. -- **case_type_description** (`string`, optional) A brief textual description of the case type to be created in Datadog. -- **case_type_emoji** (`string`, optional) Emoji representing the case type. Use a short, descriptive Unicode emoji. -- **case_type_resource_type** (`string`, optional) Specify the resource type for the case. Must be 'case_type'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAllCustomAttributes - -
- - -Retrieve all custom attributes for cases in Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteCaseType - -
- - -Delete a specific case type in Datadog. - -**Parameters** - -- **case_type_uuid** (`string`, required) The unique identifier (UUID) of the case type to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetCustomAttributeConfigs - -
- - -Retrieve all custom attribute configurations for a case type. - -**Parameters** - -- **case_type_uuid** (`string`, required) UUID for the case type to retrieve its custom attribute configurations. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateCustomAttributeConfig - -
- - -Create a custom attribute configuration for a specific case type. - -**Parameters** - -- **allow_multiple_values** (`boolean`, required) Indicates if multiple values can be set for the custom attribute. -- **case_type_uuid** (`string`, required) UUID of the case type for which the custom attribute config is to be created. -- **custom_attribute_display_name** (`string`, required) The display name for the custom attribute. -- **custom_attribute_key** (`string`, required) A string key used to search for the custom attribute. This is the identifier for the attribute. -- **custom_attribute_type** (`string`, required) Type of the custom attribute. Options: 'URL', 'TEXT', or 'NUMBER'. -- **custom_attribute_description** (`string`, optional) Detailed description for the custom attribute. This helps define the attribute's purpose and use. -- **custom_attributes_config_type** (`string`, optional) Specifies the JSON:API resource type for the custom attributes configuration. Must be 'custom_attribute'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteCustomAttributeConfig - -
- - -Deletes a custom attribute configuration for a case type. - -**Parameters** - -- **case_type_uuid** (`string`, required) The UUID of the case type for which the custom attribute configuration should be deleted. -- **custom_attribute_uuid** (`string`, required) The UUID of the case custom attribute to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetCaseDetails - -
- - -Retrieve detailed information for a specific case. - -**Parameters** - -- **case_identifier** (`string`, required) The unique identifier for the case, either a UUID or a specific key, required to retrieve case details. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ArchiveCase - -
- - -Archive a specific case in Datadog. - -**Parameters** - -- **case_unique_id** (`string`, required) The unique identifier or key of the case to be archived in Datadog. -- **case_resource_type** (`string`, optional) Specify 'case' as the resource type to identify the case resource. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AssignCaseToUser - -
- - -Assign a case to a specific user. - -**Parameters** - -- **assignee_user_id** (`string`, required) The UUID of the user to whom the case will be assigned. -- **case_id** (`string`, required) The unique identifier (UUID or key) of the case to be assigned. -- **case_resource_type** (`string`, optional) Specify the resource type. Must be set to 'case'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateCaseAttributes - -
- - -Update attributes of a specific case. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **case_identifier** (`string`, optional) The unique identifier or key for the case to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AddCommentToCase - -
- - -Add a comment to a specific case in Datadog. - -**Parameters** - -- **case_identifier** (`string`, required) The unique identifier (UUID or key) for the case to which the comment will be added. -- **comment_message** (`string`, required) The message content to be added as a comment on the case. -- **case_resource_type** (`string`, optional) Specify the type of resource, always set to 'case'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteCaseComment - -
- - -Deletes a specific comment from a case. - -**Parameters** - -- **case_identifier** (`string`, required) The unique identifier or key of the case for which the comment will be deleted. -- **timeline_cell_uuid** (`string`, required) The UUID of the timeline cell containing the comment to be deleted. Required for specifying the exact comment. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteCaseCustomAttribute - -
- - -Removes a custom attribute from a specified case. - -**Parameters** - -- **case_custom_attribute_key** (`string`, required) The key of the custom attribute to be removed from a case. -- **case_identifier** (`string`, required) The unique identifier or key of the case from which the custom attribute is to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateCaseCustomAttribute - -
- - -Update a custom attribute for a specific case in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **case_identifier** (`string`, optional) The UUID or key of the case to be updated. This identifies the specific case in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_attribute_key** (`string`, optional) The key for the custom attribute of the case to be updated. Provide the exact key name to ensure accurate updates. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateCaseDescription - -
- - -Update the description of a case in Datadog. - -**Parameters** - -- **case_uuid_or_key** (`string`, required) The unique identifier (UUID or key) for the specific case you want to update in Datadog. -- **new_case_description** (`string`, required) Provide the new description text for the case you wish to update. This replaces the current case description. -- **case_resource_type** (`string`, optional) Specify the type of resource for the case. It must be 'case'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateCasePriority - -
- - -Update the priority of a specific case. - -**Parameters** - -- **case_identifier** (`string`, required) The unique identifier for the case, either UUID or key. -- **case_priority** (`string`, optional) Specify the priority level of the case. Valid options are: 'NOT_DEFINED', 'P1', 'P2', 'P3', 'P4', 'P5'. -- **case_resource_type** (`string`, optional) Specifies the type of resource, should be set to 'case'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateCaseStatus - -
- - -Update the status of a specific case in Datadog. - -**Parameters** - -- **case_status** (`string`, required) Specify the status of the case. Valid values are 'OPEN', 'IN_PROGRESS', 'CLOSED'. -- **case_uuid_or_key** (`string`, required) The unique identifier or key for the case to update its status in Datadog. -- **case_resource_type** (`string`, optional) Specifies the resource type of the case. Must be 'case'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateCaseTitle - -
- - -Update the title of a specific case by ID. - -**Parameters** - -- **case_identifier** (`string`, required) The unique identifier (UUID or key) of the case whose title you want to update. -- **new_case_title** (`string`, required) The new title for the case to be updated. -- **case_resource_type** (`string`, optional) Specify the type of the case resource, which should be 'case'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UnarchiveCase - -
- - -Unarchive a specific support case in Datadog. - -**Parameters** - -- **case_identifier** (`string`, required) The unique identifier (UUID or key) of the case to be unarchived. -- **case_resource_type** (`string`, optional) The resource type of the case, must be 'case'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UnassignCase - -
- - -Unassigns a case from its current assignee. - -**Parameters** - -- **case_identifier** (`string`, required) The unique UUID or key representing the case to be unassigned in Datadog. -- **case_resource_type** (`string`, optional) Specifies the resource type of the case. Must be set to 'case'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListSoftwareCatalogEntities - -
- - -Retrieve entities from the software catalog. - -**Parameters** - -- **exclude_snapshotted_entities** (`string`, optional) Set to `true` to exclude entities that are snapshotted. -- **filter_by_kind** (`string`, optional) Filter entities by specifying the kind of entity, provided as a string. -- **filter_by_name** (`string`, optional) Filter entities by specifying their name. -- **filter_by_owner** (`string`, optional) Filter the entities by their owner using a specific owner name or ID. -- **filter_by_reference** (`string`, optional) Filter entities by their specific reference string. -- **filter_by_relation_type** (`string`, optional) Specify the relation type to filter entities. Options include: 'RelationTypeOwns', 'RelationTypeOwnedBy', 'RelationTypeDependsOn', 'RelationTypeDependencyOf', 'RelationTypePartsOf', 'RelationTypeHasPart', 'RelationTypeOtherOwns', 'RelationTypeOtherOwnedBy', 'RelationTypeImplementedBy', 'RelationTypeImplements'. -- **filter_by_uuid** (`string`, optional) Filter entities by their UUID. Provide the UUID as a string to retrieve specific entities. -- **include_relationship_data** (`string`, optional) Specify which relationship data to include, such as 'schema', 'raw_schema', 'oncall', 'incident', or 'relation'. -- **max_entities_per_page** (`integer`, optional) Specifies the maximum number of entities to return per page in the response. -- **pagination_offset** (`integer`, optional) The starting point for pagination of the returned list of entities. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ManageSoftwareCatalogEntity - -
- - -Create or update entities in the Software Catalog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteCatalogEntity - -
- - -Delete a single entity from the Software Catalog. - -**Parameters** - -- **catalog_entity_identifier** (`string`, required) The UUID or Entity Reference for the entity to be deleted from the Software Catalog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListCatalogKinds - -
- - -Retrieve entity kinds from the Software Catalog. - -**Parameters** - -- **filter_entity_name** (`string`, optional) Filter entities in the Software Catalog by their name using a string value. -- **filter_uuid** (`string`, optional) Filter entities by their UUID in the catalog. -- **max_kinds_in_response** (`integer`, optional) Specify the maximum number of entity kinds to be returned in the response. -- **page_offset** (`integer`, optional) Specific offset to use as the beginning of the returned page. It determines where the data will start from in the list. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateSoftwareCatalogKind - -
- - -Create or update kinds in the Software Catalog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteCatalogKind - -
- - -Delete a kind from the Software Catalog. - -**Parameters** - -- **catalog_kind_identifier** (`string`, required) The unique identifier for the kind to delete from the Software Catalog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListCatalogEntityRelations - -
- - -Retrieve entity relations from the software catalog. - -**Parameters** - -- **filter_by_first_entity_reference** (`string`, optional) Filter relations by the reference of the first entity in the relation. -- **filter_relations_by_second_entity_reference** (`string`, optional) Filter relations by the reference of the second entity in the relation. -- **include_relationship_data** (`string`, optional) Specify which relationship data to include: 'entity' or 'schema'. -- **maximum_relations_per_page** (`integer`, optional) Maximum number of relations to include in the response. -- **page_offset** (`integer`, optional) The starting offset for the returned page of results. -- **relation_type_filter** (`string`, optional) Filter relations by type using predefined relation types such as 'RelationTypeOwns', 'RelationTypeDependsOn', etc. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AggregatePipelineEvents - -
- - -Aggregate CI pipeline event metrics and timeseries. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListCiPipelineEvents - -
- - -Retrieve CI pipeline events based on a search query. - -**Parameters** - -- **cursor_for_next_page** (`string`, optional) Cursor to paginate through results. Use the cursor from the previous query. -- **event_order** (`string`, optional) Specifies the order of CI pipeline events in the results. Use 'timestamp' for ascending and '-timestamp' for descending order. -- **max_events_response** (`integer`, optional) Specify the maximum number of events to include in the response. Accepts an integer value. -- **maximum_timestamp** (`string`, optional) Specify the maximum timestamp for the requested events. Format as an ISO 8601 string (e.g., 2023-10-01T00:00:00Z). -- **min_timestamp** (`string`, optional) Specify the earliest time for the events you want to retrieve. Use a timestamp string. -- **search_query** (`string`, optional) A search query using Datadog's log syntax to filter CI pipeline events. Specify criteria to refine results. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SearchCiPipelineEvents - -
- - -Retrieve CI pipeline events matching a search query. - -**Parameters** - -- **filter_to_time** (`string`, optional) The maximum time for requested events; supports date, math, and timestamps (in milliseconds). -- **max_events_per_page** (`integer`, optional) Specify the maximum number of events to retrieve in a single response. This limits the number of events returned in one page of results. -- **min_time_for_events** (`string`, optional) Specify the minimum time for the requested events. Supports date, math expressions, and timestamps in milliseconds. -- **pagination_cursor** (`string`, optional) Use this to fetch the next set of results by providing the cursor value from the previous query response. -- **query_time_offset_seconds** (`integer`, optional) The time offset in seconds to apply to the query for event retrieval. -- **search_query** (`string`, optional) The search query using CI Visibility Explorer search syntax to filter pipeline events. -- **sort_events_by** (`string`, optional) Defines the order of CI pipeline events by timestamp. Use 'timestamp' for ascending order and '-timestamp' for descending order. -- **timezone** (`string`, optional) Specify the timezone as GMT, UTC, a UTC offset (like UTC+1), or a Timezone Database identifier (e.g., America/New_York). - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AggregateTestMetrics - -
- - -Aggregate CI Visibility test events into metrics and timeseries. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListCiTestEvents - -
- - -Retrieve CI test events based on a search query. - -**Parameters** - -- **max_events_in_response** (`integer`, optional) Specify the maximum number of CI test events to return in the response. -- **max_timestamp** (`string`, optional) Specify the maximum timestamp for the requested events. -- **minimum_timestamp** (`string`, optional) The minimum timestamp to filter requested events. Format is typically ISO 8601. -- **pagination_cursor** (`string`, optional) Cursor for fetching the next set of paginated results, provided by the previous query. -- **search_query** (`string`, optional) Search query using log syntax to filter CI Visibility test events. -- **sort_order** (`string`, optional) Specify the order of events by using 'timestamp' for ascending or '-timestamp' for descending. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SearchCiTestEvents - -
- - -Retrieve CI Visibility test events with advanced search capabilities. - -**Parameters** - -- **maximum_event_time** (`string`, optional) The maximum time for the requested events. Supports date strings, math expressions, or timestamps (in milliseconds). -- **maximum_events_in_response** (`integer`, optional) Specify the maximum number of events to be returned in the response. This limits the size of the result set. -- **pagination_cursor** (`string`, optional) Cursor for retrieving the next set of paginated results based on previous queries. -- **search_query** (`string`, optional) The search query using CI Visibility Explorer syntax for filtering test events. -- **sort_order** (`string`, optional) Specify the sorting order for events. Use 'timestamp' for ascending or '-timestamp' for descending order. -- **start_time_filter** (`string`, optional) The minimum time for requested events; can be a date, mathematical expression, or timestamp in milliseconds. -- **time_offset_seconds** (`integer`, optional) The time offset, in seconds, to apply to the query for adjusting the search time range. -- **timezone** (`string`, optional) Specify the timezone as GMT, UTC, a UTC offset (e.g., UTC+1), or a Timezone Database identifier (e.g., America/New_York). - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateCustomSecurityFramework - -
- - -Create a custom security framework in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteCustomFramework - -
- - -Delete a custom framework from Datadog. - -**Parameters** - -- **framework_handle** (`string`, required) The unique identifier for the custom framework to be deleted. -- **framework_version** (`string`, required) Specify the version of the custom framework to delete. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetCustomFramework - -
- - -Retrieve a specific custom framework by handle and version. - -**Parameters** - -- **framework_handle** (`string`, required) The unique identifier for the custom framework to retrieve. -- **framework_version** (`string`, required) Specify the version of the framework to retrieve. Use the exact version number or identifier. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateCustomFramework - -
- - -Update an existing custom security management framework. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **framework_handle** (`string`, optional) The unique identifier for the framework to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **framework_version** (`string`, optional) Specifies the version of the framework to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListResourceFilters - -
- - -Retrieve Datadog resource evaluation filters. - -**Parameters** - -- **cloud_provider_account_id** (`string`, optional) Filter resource filters by the cloud provider's account ID. This is valid only when a provider is specified. -- **cloud_provider_filter** (`string`, optional) Specifies the cloud provider to filter resource filters, such as aws, gcp, or azure. -- **skip_cache_for_resource_filters** (`boolean`, optional) Set to true to skip the cache when fetching resource filters. Useful when the latest resource data is needed. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateResourceFilters - -
- - -Update resource filters in cloud security management. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListContainerImages - -
- - -Retrieve all container images for your organization. - -**Parameters** - -- **filter_tags** (`string`, optional) Comma-separated list of tags to filter container images by. -- **group_container_images_by_tags** (`string`, optional) Comma-separated list of tags to group container images by. Helps in organizing images based on specified criteria. -- **max_results_per_page** (`integer`, optional) The maximum number of container image results to return per page. -- **next_page_cursor** (`string`, optional) String to query the next page of container image results. Obtain this from the `meta.pagination.next_cursor` in the API response. -- **sort_container_images_by** (`string`, optional) Attribute to sort Container Images by, such as 'name' or 'date'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListAllContainers - -
- - -Retrieve all containers within your organization. - -**Parameters** - -- **container_sort_attribute** (`string`, optional) Specify the attribute to sort containers by. Common values include 'name', 'creation_date', etc. -- **filter_by_tags** (`string`, optional) Comma-separated list of tags to filter containers by, narrowing down the results based on specified tags. -- **group_containers_by_tags** (`string`, optional) Comma-separated list of tags to group containers by. -- **maximum_results_returned** (`integer`, optional) Maximum number of container results to return per page. -- **pagination_cursor** (`string`, optional) A string to query the next page of container results, using the `meta.pagination.next_cursor` from the API response. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListCustomAllocationRules - -
- - -Retrieve all custom allocation rules for the organization. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateCustomAllocationRule - -
- - -Create a custom allocation rule in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ReorderCustomAllocationRules - -
- - -Change execution order of custom allocation rules in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteCustomAllocationRule - -
- - -Delete an existing custom allocation rule by ID. - -**Parameters** - -- **custom_allocation_rule_id** (`integer`, required) The unique identifier of the custom allocation rule to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetCustomAllocationRule - -
- - -Retrieve a custom allocation rule by its ID. - -**Parameters** - -- **custom_allocation_rule_id** (`integer`, required) The unique identifier for retrieving a specific custom allocation rule in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateCustomAllocationRule - -
- - -Update custom allocation rules with new filters and strategies. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **custom_allocation_rule_id** (`integer`, optional) The unique identifier for the custom allocation rule to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListAwsCurConfigs - -
- - -Retrieve AWS CUR configuration list from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateAwsCurConfig - -
- - -Create an AWS CUR config for Cloud Cost Management. - -**Parameters** - -- **aws_account_id** (`string`, optional) The AWS account ID for which the CUR config is created. This is required to specify which AWS account the configuration applies to. -- **aws_bucket_name_for_cur** (`string`, optional) The AWS bucket name used to store the Cost and Usage Report. -- **aws_cur_config_type** (`string`, optional) Type of AWS CUR config post request. Choose from available options: 'aws_cur_config_post_request'. -- **bucket_region** (`string`, optional) The AWS region where the bucket is located. -- **excluded_aws_account_ids** (`array[string]`, optional) List of AWS account IDs to exclude from the billing dataset. Used when `include_new_accounts` is `true`. -- **include_new_member_accounts** (`boolean`, optional) Set to true to automatically include new member accounts by default in your billing dataset. -- **included_aws_account_ids** (`array[string]`, optional) List of AWS account IDs to be included in the billing dataset, used when `include_new_accounts` is `false`. -- **report_month** (`integer`, optional) Specify the month for the AWS Cost and Usage Report. Use an integer (1-12) to represent the month. -- **report_name** (`string`, optional) The name of the Cost and Usage Report to create for AWS CUR configuration. -- **report_prefix** (`string`, optional) The prefix for the Cost and Usage Report (CUR). - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ArchiveCloudCostAccount - -
- - -Archive a Cloud Cost Management Account. - -**Parameters** - -- **cloud_account_id** (`integer`, required) The unique identifier for the Cloud Account to be archived in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAwsCurConfig - -
- - -Retrieve a specific AWS CUR configuration. - -**Parameters** - -- **cloud_account_id** (`integer`, required) The unique integer identifier of the AWS cloud account for which to fetch the CUR configuration. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateAwsCurConfigStatus - -
- - -Updates status or configuration of an AWS CUR config. - -**Parameters** - -- **cloud_account_id** (`integer`, required) The ID of the AWS cloud account to configure in Datadog. -- **automatic_inclusion_of_new_accounts** (`boolean`, optional) Set to true to automatically include new member accounts by default in your billing dataset. -- **aws_cur_config_request_type** (`string`, optional) Specify the type of AWS CUR config Patch Request, usually 'aws_cur_config_patch_request'. -- **excluded_aws_account_ids** (`array[string]`, optional) List of AWS account IDs to exclude from the billing dataset when "include_new_accounts" is true. -- **included_aws_accounts** (`array[string]`, optional) List of AWS account IDs to be included in the billing dataset when `include_new_accounts` is `false`. -- **is_cost_management_enabled** (`boolean`, optional) Indicates whether the Cloud Cost Management account is enabled. Accepts a boolean value. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListAzureConfigs - -
- - -Retrieve Azure configuration list from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateAzureCostManagementAccount - -
- - -Create a Cloud Cost Management account for Azure. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ArchiveAzureCostAccount - -
- - -Archive an Azure Cloud Cost Management account in Datadog. - -**Parameters** - -- **azure_cloud_account_id** (`integer`, required) The ID of the Azure Cloud Cost Management account to archive. This is necessary to identify which account's configurations will be removed. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAzureConfig - -
- - -Retrieve details of a specific Azure configuration. - -**Parameters** - -- **azure_cloud_account_id** (`integer`, required) The unique identifier for the Azure cloud account to retrieve the configuration. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateAzureConfigStatus - -
- - -Update status of Azure config to active or archived. - -**Parameters** - -- **cloud_account_id** (`integer`, required) The identifier for the Azure Cloud account whose configuration status is being updated. -- **azure_config_patch_request_type** (`string`, optional) Specify the type of Azure config Patch Request, typically 'azure_uc_config_patch_request'. -- **enable_cloud_cost_management** (`boolean`, optional) Set to true to enable the Cloud Cost Management account, false to disable it. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ManageBudget - -
- - -Create or update a budget in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteBudget - -
- - -Delete a specified budget. - -**Parameters** - -- **budget_id** (`string`, required) The unique identifier for the budget to be deleted. This ID is required to specify which budget to remove from the system. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetBudgetDetails - -
- - -Retrieve detailed information about a specific budget. - -**Parameters** - -- **budget_identifier** (`string`, required) The unique identifier for the budget to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListBudgets - -
- - -Fetch a list of budgets from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListCustomCostsFiles - -
- - -Retrieve a list of custom costs files from Datadog. - -**Parameters** - -- **filter_by_file_status** (`string`, optional) Filter the custom costs files by their status. Accepts a string value representing the status to filter by, such as 'active', 'inactive', or 'pending'. -- **page_number** (`integer`, optional) The page number to retrieve for pagination in the list of custom costs files. -- **pagination_page_size** (`integer`, optional) The number of custom cost files to return per page for pagination. -- **sort_key** (`string`, optional) Specify the key for sorting the list, with an optional '-' prefix for descending order. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UploadCustomCostsFile - -
- - -Upload a custom costs file to Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteCustomCostFile - -
- - -Delete a specified custom costs file in Datadog. - -**Parameters** - -- **custom_cost_file_id** (`string`, required) The unique identifier of the custom costs file to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.FetchCustomCostsFile - -
- - -Fetch a specified Custom Costs file by file ID from Datadog. - -**Parameters** - -- **file_identifier** (`string`, required) A unique identifier for the Custom Costs file to be retrieved from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListGcpUsageCostConfigs - -
- - -Retrieve Google Cloud Usage Cost configurations from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateGcpCostManagementAccount - -
- - -Create a cost management account for Google Cloud usage. - -**Parameters** - -- **gcp_bucket_name** (`string`, optional) The name of the Google Cloud bucket where the Usage Cost exports are stored. -- **gcp_usage_cost_export_dataset_name** (`string`, optional) The dataset name used for exporting the Google Cloud Usage Cost report. -- **gcp_usage_cost_report_name** (`string`, optional) The name of the Google Cloud Usage Cost report to be used for cost management. -- **google_cloud_billing_account_id** (`string`, optional) The Google Cloud account ID for cost management. -- **google_cloud_export_prefix** (`string`, optional) The export prefix for the Google Cloud Usage Cost report. -- **google_cloud_service_account_email** (`string`, optional) The unique Google Cloud service account email required for the cost management setup. -- **usage_cost_config_type** (`string`, optional) Specifies the type of Google Cloud Usage Cost configuration post request. Use "gcp_uc_config_post_request" to indicate this type. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ArchiveGcpCostManagementAccount - -
- - -Archive a Cloud Cost Management account. - -**Parameters** - -- **cloud_account_identifier** (`integer`, required) The unique identifier for the GCP cloud account to be archived. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetGcpUsageCostConfig - -
- - -Retrieve specific Google Cloud Usage Cost configuration details. - -**Parameters** - -- **cloud_account_identifier** (`integer`, required) The unique identifier of the Google Cloud account for which to retrieve the usage cost configuration. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateGcpUsageCostStatus - -
- - -Update the status of a GCP Usage Cost config. - -**Parameters** - -- **cloud_account_id** (`integer`, required) The ID of the Google Cloud account for which the cost configuration status needs to be updated. -- **cloud_cost_management_enabled** (`boolean`, required) Set to 'true' to enable the Cloud Cost Management account or 'false' to disable it. -- **gcp_usage_cost_config_request_type** (`string`, optional) Type of Google Cloud Usage Cost configuration patch request. Use 'gcp_uc_config_patch_request'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetActiveBillingDimensions - -
- - -Retrieve active billing dimensions for cost attribution. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.FetchMonthlyCostAttribution - -
- - -Retrieve monthly cost attribution data by tag. - -**Parameters** - -- **cost_types_fields** (`string`, required) Comma-separated list specifying cost types and proportions. Use `*` to retrieve all fields. Example: `infra_host_on_demand_cost,infra_host_percentage_in_account`. -- **start_month** (`string`, required) Datetime in ISO-8601 format, UTC, precise to month `[YYYY-MM]`. Represents the start of the costing period. -- **end_month** (`string`, optional) The final month for cost calculation. Use ISO-8601 format `[YYYY-MM]` to specify the month. -- **include_child_organization_costs** (`boolean`, optional) Include child organization costs in the response. Defaults to true. -- **pagination_next_record_id** (`string`, optional) Identifier for fetching the next set of results in a paginated response. Use the 'next_record_id' from the previous response. -- **sort_by_billing_dimension** (`string`, optional) Billing dimension to sort by. Defaults to sorting by total cost. Example: 'infra_host'. -- **sort_by_direction** (`string`, optional) Specifies the direction to sort cost attribution data. Use 'desc' for descending or 'asc' for ascending order. -- **tag_keys_for_cost_grouping** (`string`, optional) Comma-separated list of tag keys used to group costs. If empty, costs won't be grouped by tag. Check `tag_config_source` in the API response for available tags. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListAllCsmAgents - -
- - -Retrieve all CSM Agents running on your infrastructure. - -**Parameters** - -- **filter_query** (`string`, optional) A search query string to filter results, e.g., `hostname:COMP-T2H4J27423`. -- **page_size** (`integer`, optional) Specify the number of items to include in a single page for pagination. -- **pagination_page_index** (`integer`, optional) The zero-based index of the page to retrieve for pagination. -- **results_sort_direction** (`string`, optional) Sets sort order for results. Use 'asc' for ascending or 'desc' for descending. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetCloudAccountsCoverageAnalysis - -
- - -Retrieve CSM coverage analysis of your cloud accounts. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetCsmCoverageAnalysis - -
- - -Retrieve CSM coverage analysis for hosts and containers. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetServerlessCoverageAnalysis - -
- - -Retrieve CSM serverless coverage analysis data from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListServerlessAgents - -
- - -Retrieve all running CSM Serverless Agents. - -**Parameters** - -- **filter_query** (`string`, optional) A search string to filter serverless agents, such as `hostname:COMP-T2H4J27423`. -- **items_per_page** (`integer`, optional) The number of items to include in a single page of results. -- **page_index** (`integer`, optional) The zero-based page index for pagination when retrieving serverless agents. -- **sort_direction** (`string`, optional) The direction to sort results: 'asc' for ascending or 'desc' for descending order. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListUserAppKeys - -
- - -Retrieve all application keys for the current user. - -**Parameters** - -- **created_after_date** (`string`, optional) Include application keys created on or after this date in the results. -- **filter_by_string** (`string`, optional) Filter application keys by the specified string to narrow down the results. -- **filter_created_at_end_date** (`string`, optional) Include only application keys created on or before this date. Format: YYYY-MM-DD. -- **include_related_resources** (`string`, optional) Specify 'owned_by' to include related resources in the response. -- **page_number** (`integer`, optional) Specify the page number to retrieve application keys from. -- **page_size** (`integer`, optional) Specify the number of application keys per page. Maximum value is 100. -- **sort_application_keys** (`string`, optional) Specify the attribute to sort the application keys. Use a minus sign for descending order. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateUserApplicationKey - -
- - -Create an application key for the current user in Datadog. - -**Parameters** - -- **application_key_name** (`string`, required) The name of the application key to be created for the current user. -- **application_key_resource_type** (`string`, optional) Specifies the resource type, should always be 'application_keys'. -- **application_key_scopes** (`array[string]`, optional) List of scopes to grant the application key for accessing specific resources. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteUserApplicationKey - -
- - -Delete an application key owned by the current user. - -**Parameters** - -- **application_key_id** (`string`, required) The ID of the application key to be deleted. Required to identify which key to remove. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetUserApplicationKey - -
- - -Retrieve an application key owned by the current user. - -**Parameters** - -- **application_key_id** (`string`, required) The ID of the application key to retrieve, owned by the current user. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.EditUserAppKey - -
- - -Edit an application key owned by the current user. - -**Parameters** - -- **app_key_identifier** (`string`, required) ID of the application key to be edited. -- **application_key_id** (`string`, required) The ID of the application key to be edited. Must be a valid string ID. -- **application_key_name** (`string`, optional) New name for the application key. -- **application_key_resource_type** (`string`, optional) Specifies the resource type for the application key. Use the value 'application_keys'. -- **application_key_scopes** (`array[string]`, optional) List of scopes to grant the application key. Each scope is a string defining permissions. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteDashboardFromList - -
- - -Remove dashboards from a specified list in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_list_identifier** (`integer`, optional) The unique integer ID of the dashboard list from which dashboards will be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.FetchDashboardListItems - -
- - -Fetch details of dashboards in a list. - -**Parameters** - -- **dashboard_list_id** (`integer`, required) The unique integer ID of the dashboard list from which to retrieve dashboard definitions. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AddDashboardsToList - -
- - -Add dashboards to an existing list in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_list_identifier** (`integer`, optional) Specify the integer ID of the dashboard list where dashboards will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateDashboardListItems - -
- - -Update dashboards in an existing dashboard list. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_list_identifier** (`integer`, optional) ID of the dashboard list to update with new items. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAllDatasets - -
- - -Retrieve all datasets configured for your organization. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateDataset - -
- - -Create a dataset with specified configurations. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteDataset - -
- - -Deletes a dataset using its ID. - -**Parameters** - -- **dataset_identifier** (`string`, required) The unique ID of the dataset to be deleted. Required for deletion. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RetrieveDatasetInfo - -
- - -Retrieve detailed information about a specific dataset from Datadog. - -**Parameters** - -- **dataset_identifier** (`string`, required) The unique identifier of the dataset to retrieve from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.EditDataset - -
- - -Edit the dataset using the specified ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dataset_id** (`string`, optional) The unique ID of the dataset to be edited in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetDomainAllowlist - -
- - -Retrieve the domain allowlist for an organization. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateDomainAllowlist - -
- - -Update the organization's domain allowlist to control domain access. - -**Parameters** - -- **allowed_domains_list** (`array[string]`, optional) A list of domains to include in the organization's email domain allowlist. -- **email_domain_allowlist_type** (`string`, optional) Type of email domain allowlist. Valid value: 'domain_allowlist'. -- **enable_email_domain_allowlist** (`boolean`, optional) Set to true to enable the email domain allowlist for the organization. -- **organization_identifier** (`string`, optional) The unique identifier for the organization to update the domain allowlist. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListScheduledDowntimes - -
- - -Retrieve all scheduled downtimes from Datadog. - -**Parameters** - -- **include_resources_in_response** (`string`, optional) Comma-separated list of resource paths to include in the response, such as `created_by` and `monitor`. -- **max_downtimes_in_response** (`integer`, optional) Maximum number of downtimes to include in the response. -- **page_offset** (`integer`, optional) The starting point for the list of returned scheduled downtimes, used for pagination. -- **return_current_downtimes_only** (`boolean`, optional) Set to true to return only downtimes active at the time of the request. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ScheduleDowntime - -
- - -Schedule downtime for services or systems through Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CancelDowntime - -
- - -Cancel an active downtime in Datadog. - -**Parameters** - -- **downtime_id** (`string`, required) Provide the ID of the downtime you wish to cancel. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetDowntimeDetails - -
- - -Retrieve details of a specific downtime by ID. - -**Parameters** - -- **downtime_id** (`string`, required) The unique identifier for the downtime period to retrieve details for. -- **include_related_resources** (`string`, optional) Comma-separated list of resource paths to include in the response. Options: `created_by`, `monitor`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateDowntime - -
- - -Update downtime by its ID in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **downtime_id** (`string`, optional) The unique identifier of the downtime to be updated in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SearchDatadogIssues - -
- - -Search and retrieve issues from Datadog using a query. - -**Parameters** - -- **end_date** (`integer`, required) End date (exclusive) for the query in milliseconds since the Unix epoch. Determines up to when the issues are retrieved. -- **object_type** (`string`, required) Specify the type of the object. The value must be 'search_request'. -- **search_event_query** (`string`, required) Search query using the event search syntax to find relevant issues. -- **start_date_millis** (`integer`, required) Start date (inclusive) of the query in milliseconds since the Unix epoch. -- **event_track_to_query** (`string`, optional) Specify the track of events to query: 'trace', 'logs', or 'rum'. Either track or persona must be provided. -- **include_relationship_objects** (`array[string]`, optional) List of relationship objects to include in the response, specified as an array of strings. -- **search_persona** (`string`, optional) Persona for the search. Choose from ALL, BROWSER, MOBILE, or BACKEND. Either track(s) or persona(s) must be specified. -- **sort_results_by** (`string`, optional) Attribute to sort the search results. Options: TOTAL_COUNT, FIRST_SEEN, IMPACTED_SESSIONS, PRIORITY. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetErrorTrackingIssueDetails - -
- - -Retrieve full details of a specific error tracking issue. - -**Parameters** - -- **issue_identifier** (`string`, required) The unique identifier of the error tracking issue to retrieve details for. -- **include_relationship_objects** (`array[string]`, optional) A list of relationship objects to include in the response. Provide as an array of strings. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateIssueAssignee - -
- - -Update the assignee of an issue in Datadog. - -**Parameters** - -- **issue_identifier** (`string`, required) The unique identifier for the issue to update the assignee. -- **object_type** (`string`, required) Specifies the type of object being updated. For issue assignee, use 'assignee'. -- **user_identifier** (`string`, required) The identifier of the user to assign the issue to. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateIssueState - -
- - -Update the state of an issue in Datadog. - -**Parameters** - -- **issue_id_value** (`string`, required) The identifier for the issue to update the state of in Datadog. -- **issue_identifier** (`string`, required) The unique identifier for the issue to update its state in Datadog. -- **issue_object_type** (`string`, required) Specifies the type of the object. Accepted value is 'error_tracking_issue'. -- **issue_state** (`string`, required) State of the issue, valid values are 'OPEN', 'ACKNOWLEDGED', 'RESOLVED', 'IGNORED', 'EXCLUDED'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListDatadogEvents - -
- - -Retrieve events from Datadog based on a search query. - -**Parameters** - -- **event_search_query** (`string`, optional) Search query following Datadog's events syntax to filter events. -- **max_timestamp_milliseconds** (`string`, optional) Specify the maximum timestamp for requested events in milliseconds. Use this to limit the latest time of events retrieved. -- **maximum_events_per_page** (`integer`, optional) Sets the maximum number of events to return in the response. -- **minimum_timestamp_millis** (`string`, optional) The minimum timestamp in milliseconds for filtering requested events. -- **pagination_cursor** (`string`, optional) Cursor for paginating through results, provided in the previous query response. -- **sort_order** (`string`, optional) Specify the order of events: 'timestamp' for ascending, '-timestamp' for descending. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SearchDatadogEvents - -
- - -Search and filter events in Datadog. - -**Parameters** - -- **event_search_query** (`string`, optional) The search query using Datadog's event search syntax to filter events. -- **max_event_time** (`string`, optional) Specify the maximum time for the events. Supports date math and timestamps in milliseconds. -- **maximum_events_per_page** (`integer`, optional) Specify the maximum number of events returned per page in the response. This controls the pagination size. -- **paging_cursor** (`string`, optional) The cursor for pagination to retrieve the next set of results. -- **sort_order** (`string`, optional) Specify event sorting order: 'timestamp' for ascending, '-timestamp' for descending. -- **start_time** (`string`, optional) The earliest time for requested events, using date math or timestamps in milliseconds. -- **time_offset_seconds** (`integer`, optional) The time offset to apply to the query in seconds. Use an integer to specify the shift in time for the search results. -- **timezone** (`string`, optional) Specify the timezone for the query. It can be GMT, UTC, an offset (like UTC+1), or a Timezone Database identifier (like America/New_York). - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetEventDetails - -
- - -Retrieve detailed information about a specific event. - -**Parameters** - -- **event_unique_id** (`string`, required) The unique identifier of the event to retrieve details for. This should be a string representing the event's UID. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListOrganizationIncidents - -
- - -Retrieve all incidents for your organization. - -**Parameters** - -- **include_related_objects** (`array[string]`, optional) List of related object types to include in the response. Specify as an array of strings. -- **page_offset** (`integer`, optional) Specific offset to start the returned page of incidents. Use this to paginate results. -- **page_size** (`integer`, optional) Integer specifying the number of incidents per page, up to a maximum of 100. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateIncident - -
- - -Create a new incident in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListIncidentNotificationRules - -
- - -Retrieve all incident notification rules for the organization. - -**Parameters** - -- **resources_to_include** (`string`, optional) Comma-separated list of resources to include. Supported values: `created_by_user`, `last_modified_by_user`, `incident_type`, `notification_template`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateIncidentNotificationRule - -
- - -Creates a new incident notification rule in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteIncidentNotificationRule - -
- - -Delete an incident notification rule by its ID. - -**Parameters** - -- **notification_rule_id** (`string`, required) The unique identifier of the notification rule to be deleted. -- **include_resources** (`string`, optional) Comma-separated list of resources to include, such as `created_by_user`, `last_modified_by_user`, `incident_type`, `notification_template`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetIncidentNotificationRule - -
- - -Retrieve details of a specific incident notification rule. - -**Parameters** - -- **notification_rule_id** (`string`, required) The unique identifier for the notification rule to retrieve details. -- **include_resources** (`string`, optional) Comma-separated list of resources to include in the response. Options: `created_by_user`, `last_modified_by_user`, `incident_type`, `notification_template`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateIncidentNotificationRule - -
- - -Update an incident notification rule in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **notification_rule_id** (`string`, optional) The unique identifier for the notification rule to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_resources** (`string`, optional) Comma-separated list of resources to include: `created_by_user`, `last_modified_by_user`, `incident_type`, `notification_template`. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListIncidentNotificationTemplates - -
- - -Retrieve all incident notification templates. - -**Parameters** - -- **incident_type_id_filter** (`string`, optional) Optional ID to filter notification templates by incident type. -- **include_relationships** (`string`, optional) Comma-separated list of relationships to include in the response. Supported values are `created_by_user`, `last_modified_by_user`, `incident_type`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateIncidentNotificationTemplate - -
- - -Creates a new incident notification template. - -**Parameters** - -- **notification_content_body** (`string`, required) The body content for the notification template, describing the detailed message of the notification. -- **notification_subject** (`string`, required) The subject line for the notification template. This sets the subject of the template being created. -- **notification_template_category** (`string`, required) The category of the notification template. -- **notification_template_name** (`string`, required) The name for the notification template to be created. -- **resource_type_notification_template** (`string`, required) Specify the resource type for notification templates, which should be 'notification_templates'. -- **incident_type_id** (`string`, optional) The ID of the incident type to associate with the notification template. -- **incident_type_resource_type** (`string`, optional) The resource type for the incident, which should be 'incident_types'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteIncidentNotificationTemplate - -
- - -Deletes a notification template by its ID. - -**Parameters** - -- **notification_template_id** (`string`, required) The unique ID of the incident notification template to be deleted. -- **relationships_to_include** (`string`, optional) Comma-separated list of relationships to include. Options: `created_by_user`, `last_modified_by_user`, `incident_type`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetIncidentNotificationTemplate - -
- - -Retrieve a specific incident notification template by ID. - -**Parameters** - -- **template_id** (`string`, required) The ID of the notification template to retrieve from Datadog. -- **include_relationships** (`string`, optional) Comma-separated list of relationships to include. Supported values: `created_by_user`, `last_modified_by_user`, `incident_type`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateNotificationTemplate - -
- - -Update attributes of a notification template. - -**Parameters** - -- **notification_template_id** (`string`, required) The unique identifier of the notification template to update. -- **notification_template_resource_type** (`string`, required) Specifies the type of the notification template resource. Must be 'notification_templates'. -- **template_id** (`string`, required) The unique identifier of the notification template to be updated. -- **notification_template_category** (`string`, optional) The category of the notification template to update. -- **notification_template_content** (`string`, optional) The content body of the notification template to be updated. -- **notification_template_name** (`string`, optional) The name of the notification template to update in Datadog. -- **notification_template_subject** (`string`, optional) The subject line of the notification template to be updated in Datadog. -- **relationships_to_include** (`string`, optional) Comma-separated list of relationships to include. Valid values: `created_by_user`, `last_modified_by_user`, `incident_type`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetIncidentTypes - -
- - -Retrieve all incident types from Datadog. - -**Parameters** - -- **include_deleted** (`boolean`, optional) Include deleted incident types in the response when set to true. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateIncidentType - -
- - -Create a new incident type in Datadog. - -**Parameters** - -- **incident_type_name** (`string`, required) The name of the incident type to be created in Datadog. -- **creator_user_id** (`string`, optional) A unique ID representing the user who created the incident type. -- **incident_creation_timestamp** (`string`, optional) Timestamp indicating when the incident type was created. Format should be ISO 8601. -- **incident_title_prefix** (`string`, optional) The string prepended to the incident title throughout the Datadog app. -- **incident_type_description** (`string`, optional) Text that describes the incident type. Provide a clear, concise explanation to aid in management and identification. -- **incident_type_resource_type** (`string`, optional) Specifies the incident type resource type. Must be 'incident_types'. -- **last_modified_timestamp** (`string`, optional) Timestamp indicating when the incident type was last modified. Use ISO 8601 format, e.g., '2023-10-01T14:30:00Z'. -- **last_modified_user_id** (`string`, optional) Unique identifier for the user who last modified the incident type. -- **set_as_default_incident_type** (`boolean`, optional) Set to true to make this the default incident type if no type is specified during incident creation. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteIncidentType - -
- - -Deletes a specified incident type from Datadog configuration. - -**Parameters** - -- **incident_type_uuid** (`string`, required) The unique identifier (UUID) of the incident type to be deleted in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetIncidentTypeDetails - -
- - -Retrieve details of a specific incident type. - -**Parameters** - -- **incident_type_uuid** (`string`, required) The UUID of the specific incident type to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateIncidentType - -
- - -Update the type of a specific incident in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_type_uuid** (`string`, optional) The UUID representing the incident type to be updated in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SearchDatadogIncidents - -
- - -Search for incidents in Datadog by query. - -**Parameters** - -- **incident_query** (`string`, required) Query to determine which incidents to return. Use facets joined by `AND` and multiple values by `OR`, e.g., `state:active AND severity:(SEV-2 OR SEV-1)`. -- **include_related_objects** (`string`, optional) Specifies which types of related objects ('users', 'attachments') should be included in the response. -- **page_offset** (`integer`, optional) The starting position offset for returning incidents. Use an integer value. -- **page_size** (`integer`, optional) Specify the number of incidents to return per page. The maximum allowed value is 100. -- **sort_order** (`string`, optional) Defines the order of returned incidents. Use 'created' for ascending and '-created' for descending. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteIncident - -
- - -Deletes an existing incident from the organization. - -**Parameters** - -- **incident_uuid** (`string`, required) The unique identifier (UUID) of the incident to delete. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetIncidentDetails - -
- - -Retrieve details of a specific incident using its ID. - -**Parameters** - -- **incident_uuid** (`string`, required) The UUID of the incident to retrieve its details. -- **include_related_objects** (`array[string]`, optional) Specify related object types to include in the response, such as users, logs, etc. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateIncident - -
- - -Partially update an incident's details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_uuid** (`string`, optional) The unique identifier (UUID) for the incident to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_related_objects** (`array[string]`, optional) List of related object types to include in the response, such as 'users', 'comments', etc. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetIncidentAttachments - -
- - -Retrieve all attachments for a specified incident. - -**Parameters** - -- **incident_uuid** (`string`, required) The unique identifier (UUID) of the incident whose attachments are to be retrieved. -- **attachment_types_to_include** (`array[string]`, optional) List the types of attachments to include in the response. Each type should be a string. -- **include_related_objects** (`array[string]`, optional) A list of related object types to include in the response, such as 'user', 'tags'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ManageIncidentAttachments - -
- - -Manage attachments for a specific incident in bulk. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_uuid** (`string`, optional) The UUID of the incident to manage its attachments. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **related_objects_inclusion** (`array[string]`, optional) List of related object types to include in the response (e.g., comments, attachments). Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetIncidentImpacts - -
- - -Retrieve all impacts for a specified incident. - -**Parameters** - -- **incident_uuid** (`string`, required) The unique UUID of the incident to retrieve impacts for. -- **include_related_resources** (`array[string]`, optional) Specify which related resources to include in the response as an array of strings. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateIncidentImpact - -
- - -Create an impact for a specific incident. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_uuid** (`string`, optional) The unique identifier (UUID) for the incident. This is required to log impact details for the specified incident. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **included_resources** (`array[string]`, optional) List of related resources to include in the response, such as 'users' or 'details'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteIncidentImpact - -
- - -Delete a specific incident impact by ID. - -**Parameters** - -- **incident_id** (`string`, required) The UUID of the incident to be deleted. Required for identifying the specific incident. -- **incident_impact_uuid** (`string`, required) The UUID of the incident impact to be deleted. This is required to identify which specific impact to remove. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetIncidentIntegrations - -
- - -Retrieve integration metadata for a specific incident. - -**Parameters** - -- **incident_uuid** (`string`, required) The unique UUID of the incident to retrieve integration metadata. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateIncidentIntegration - -
- - -Create incident integration metadata for an incident. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_uuid** (`string`, optional) The unique identifier (UUID) of the incident to create integration metadata for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteIncidentIntegrationMetadata - -
- - -Remove an incident integration metadata entry. - -**Parameters** - -- **incident_integration_metadata_uuid** (`string`, required) The UUID of the incident integration metadata to be deleted. -- **incident_uuid** (`string`, required) The UUID of the incident you want to delete integration metadata for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetIncidentIntegrationDetails - -
- - -Fetches details of incident integration metadata. - -**Parameters** - -- **incident_integration_metadata_uuid** (`string`, required) The UUID of the incident integration metadata required to fetch its details. -- **incident_uuid** (`string`, required) The UUID of the incident in Datadog for which to obtain integration metadata. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateIncidentIntegration - -
- - -Update incident integration metadata in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_uuid** (`string`, optional) The UUID of the incident. This is a unique identifier used to specify which incident to update the integration metadata for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **integration_metadata_uuid** (`string`, optional) The UUID of the incident integration metadata to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListIncidentTodos - -
- - -Retrieve all todos for a specified incident. - -**Parameters** - -- **incident_uuid** (`string`, required) The unique identifier (UUID) of the incident for which to retrieve todos. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateIncidentTodo - -
- - -Create a task within an incident in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_uuid** (`string`, optional) The UUID of the incident for which the to-do is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteIncidentTodo - -
- - -Delete a specified incident todo in Datadog. - -**Parameters** - -- **incident_todo_uuid** (`string`, required) The unique UUID for the incident todo to be deleted. -- **incident_uuid** (`string`, required) The unique identifier (UUID) of the incident to which the todo belongs. This is necessary to specify the incident context. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetIncidentTodoDetails - -
- - -Retrieve details of an incident todo item from Datadog. - -**Parameters** - -- **incident_todo_uuid** (`string`, required) The UUID of the incident todo to fetch details for. This is essential for identifying the specific todo item linked to an incident. -- **incident_uuid** (`string`, required) The UUID of the incident to get the todo details for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateIncidentTodo - -
- - -Update a specific incident todo in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_uuid** (`string`, optional) The unique identifier (UUID) of the incident to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **incident_todo_uuid** (`string`, optional) The unique identifier (UUID) of the incident todo to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListAwsAccounts - -
- - -Retrieve AWS account integration configurations. - -**Parameters** - -- **filter_by_aws_account_id** (`string`, optional) Optional parameter to filter AWS accounts by their ID. Provide a specific AWS Account ID to get its integration config. If omitted, configurations for all accounts are returned. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateAwsAccountIntegration - -
- - -Create a new AWS Account Integration Config in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteAwsAccountConfig - -
- - -Delete an AWS account integration by config ID. - -**Parameters** - -- **aws_account_configuration_id** (`string`, required) Unique Datadog ID for the AWS Account Integration Config. Obtain this ID via the 'List all AWS integrations' Datadog endpoint. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAwsAccountIntegrationConfig - -
- - -Retrieve AWS Account Integration Config by ID. - -**Parameters** - -- **aws_account_integration_config_id** (`string`, required) Unique Datadog ID of the AWS Account Integration Config. Obtain it using the List all AWS integrations endpoint. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateAwsAccountIntegration - -
- - -Update an AWS Account Integration configuration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **aws_account_integration_config_id** (`string`, optional) Unique Datadog ID for the AWS Account Integration Config. Retrieve using the List all AWS integrations endpoint and query by AWS Account ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAwsCloudwatchNamespaces - -
- - -Retrieve available AWS CloudWatch namespaces for Datadog integration. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GenerateAwsExternalId - -
- - -Generate a new external ID for AWS authentication. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.FetchAwsIntegrationPermissions - -
- - -Retrieve AWS IAM permissions for Datadog integration. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAwsIamPermissions - -
- - -Get required AWS IAM permissions for resource collection. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAwsIntegrationIamPermissions - -
- - -Fetch standard AWS IAM permissions for integration. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListAwsLogsServices - -
- - -Retrieve AWS services for logging to Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListGcpStsAccounts - -
- - -Retrieve all GCP STS-enabled service accounts from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateGcpStsAccount - -
- - -Create a new GCP STS account entry in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteGcpStsAccount - -
- - -Delete an STS-enabled GCP account in Datadog. - -**Parameters** - -- **gcp_sts_account_id** (`string`, required) The unique ID of the GCP STS-enabled service account to delete from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateGcpStsAccount - -
- - -Update an STS-enabled GCP service account configuration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **service_account_id** (`string`, optional) Unique ID of your GCP STS-enabled service account to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetGcpStsDelegate - -
- - -Retrieve the Datadog-GCP STS delegate account configuration. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateDatadogGcpPrincipal - -
- - -Create a Datadog GCP principal. - -**Parameters** - -- **delegate_service_account_data** (`json`, optional) JSON object containing details for creating a delegate service account within Datadog. Include necessary account parameters. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetDatadogChannelInfo - -
- - -Retrieve channel ID details for Datadog MS Teams integration. - -**Parameters** - -- **datadog_channel_name** (`string`, required) The name of the channel in the Datadog Microsoft Teams integration. Required to retrieve channel details. -- **team_name** (`string`, required) Specify the name of the team for which you want to retrieve channel ID details in the Datadog Microsoft Teams integration. -- **tenant_name** (`string`, required) The name of the tenant for which you want to get the channel information in Datadog's Microsoft Teams integration. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListTenantBasedHandles - -
- - -Retrieve Datadog's tenant-based handles for MS Teams integration. - -**Parameters** - -- **tenant_handle_name** (`string`, optional) The name of your tenant-based handle in the Datadog Microsoft Teams integration. -- **tenant_identifier** (`string`, optional) The ID of your tenant in Datadog to retrieve handles for MS Teams integration. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateTenantBasedHandle - -
- - -Create a tenant-based handle in Datadog for Teams. - -**Parameters** - -- **channel_id** (`string`, required) ID of the Microsoft Teams channel to associate with the tenant-based handle. -- **handle_name** (`string`, required) The name for the tenant-based handle you wish to create in the Datadog Microsoft Teams integration. -- **team_id** (`string`, required) The ID of the Microsoft Teams team to associate with the Datadog handle. -- **tenant_id** (`string`, required) The unique identifier for the tenant in the Datadog Microsoft Teams integration. -- **resource_type** (`string`, optional) Specifies the resource type as 'tenant-based-handle'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteMsTeamsTenantHandle - -
- - -Delete a tenant-based handle from Datadog's Microsoft Teams integration. - -**Parameters** - -- **tenant_handle_id** (`string`, required) The unique identifier for the tenant-based handle to be deleted from the Microsoft Teams integration. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetTeamsIntegrationInfo - -
- - -Retrieve tenant, team, and channel info for a handle. - -**Parameters** - -- **tenant_handle_id** (`string`, required) The tenant-based handle ID for the Microsoft Teams integration used to retrieve tenant, team, and channel information. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateMsTeamsTenantHandle - -
- - -Update a Microsoft Teams tenant-based handle in Datadog. - -**Parameters** - -- **tenant_handle_id** (`string`, required) The unique ID of the tenant-based handle to update in Datadog. -- **channel_id** (`string`, optional) The ID of the Microsoft Teams channel to update for the tenant-based handle. -- **team_id** (`string`, optional) The Microsoft Teams Team ID for the tenant-based handle. Required for updating handle configurations. -- **tenant_handle_name** (`string`, optional) Tenant-based handle name for the Microsoft Teams integration in Datadog. This specifies the handle's identifier within the configuration. -- **tenant_handle_resource_type** (`string`, optional) Specifies the resource type for the tenant-based handle, usually 'tenant-based-handle'. -- **tenant_id** (`string`, optional) The unique identifier for the tenant. Used to specify which tenant's handle is being updated. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListMsTeamsWorkflowWebhooks - -
- - -Retrieve all Microsoft Teams workflow webhook handles from Datadog. - -**Parameters** - -- **webhook_handle_name** (`string`, optional) Specifies the name of your Workflows webhook handle to filter the list. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateWorkflowWebhookHandle - -
- - -Create a webhook handle for Datadog Microsoft Teams integration. - -**Parameters** - -- **webhook_handle_name** (`string`, required) Name of the Workflows Webhook handle for Datadog Microsoft Teams integration. -- **webhook_url** (`string`, required) The URL for the Workflows Webhook in the Datadog Microsoft Teams integration. -- **webhook_handle_resource_type** (`string`, optional) Specifies the resource type for the Workflows webhook handle. Must be 'workflows-webhook-handle'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteWorkflowWebhookHandle - -
- - -Delete a Workflows webhook handle in Datadog. - -**Parameters** - -- **webhook_handle_id** (`string`, required) The unique identifier of the Workflows webhook handle to delete. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetMsTeamsWorkflowWebhookName - -
- - -Retrieve the name of a MS Teams workflow webhook handle. - -**Parameters** - -- **workflow_webhook_handle_id** (`string`, required) The ID of the Workflows webhook handle to retrieve the name for. This is specific to the Datadog Microsoft Teams integration. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateWorkflowsWebhookHandle - -
- - -Update a webhook handle in Datadog's Microsoft Teams integration. - -**Parameters** - -- **webhook_handle_id** (`string`, required) The unique identifier for the Workflows webhook handle to be updated. -- **webhook_handle_name** (`string`, optional) The name of the Workflows Webhook handle to be updated. This should be a descriptive string identifying the webhook. -- **webhook_handle_resource_type** (`string`, optional) Specifies the Workflows webhook handle resource type. Use 'workflows-webhook-handle'. -- **workflows_webhook_url** (`string`, optional) The URL for the Workflows Webhook. Specify the endpoint to send requests to. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListOpsgenieServices - -
- - -Retrieve all services from Datadog Opsgenie integration. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateOpsgenieService - -
- - -Create a new Opsgenie service in Datadog integration. - -**Parameters** - -- **opsgenie_api_key** (`string`, required) The API key required to authenticate your Opsgenie service within Datadog. This key must be a valid string associated with your Opsgenie account. -- **opsgenie_service_name** (`string`, required) The name for the Opsgenie service to be created in the Datadog integration. -- **opsgenie_service_region** (`string`, required) The region for the Opsgenie service. Choose from 'us', 'eu', or 'custom'. -- **custom_region_url** (`string`, optional) The custom URL for a specific Opsgenie region. Used to connect to a custom region. -- **opsgenie_service_resource_type** (`string`, optional) Specify the Opsgenie service resource type, which must be 'opsgenie-service'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteOpsgenieService - -
- - -Delete a service in Datadog's Opsgenie integration. - -**Parameters** - -- **service_uuid** (`string`, required) The UUID of the service to be deleted in the Datadog Opsgenie integration. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetOpsgenieService - -
- - -Retrieve a single Opsgenie service from Datadog. - -**Parameters** - -- **service_uuid** (`string`, required) The UUID of the Datadog Opsgenie service to retrieve. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateOpsgenieService - -
- - -Update a service in the Datadog Opsgenie integration. - -**Parameters** - -- **opsgenie_service_id** (`string`, required) The unique identifier of the Opsgenie service to be updated. -- **service_uuid** (`string`, required) The UUID of the service to be updated in the Datadog Opsgenie integration. -- **custom_region_url** (`string`, optional) The custom URL for a specific Opsgenie region. Specify if using a custom region. -- **opsgenie_api_key** (`string`, optional) The API key for your Opsgenie service, needed to authenticate the update request. -- **opsgenie_service_name** (`string`, optional) The name for the Opsgenie service to update. It should uniquely identify the service within your Opsgenie account. -- **opsgenie_service_region** (`string`, optional) Specify the region for the Opsgenie service. Allowed values are 'us', 'eu', or 'custom'. -- **opsgenie_service_resource_type** (`string`, optional) Specify as 'opsgenie-service' to denote the Opsgenie service resource type. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListCloudflareAccounts - -
- - -Retrieve a list of Cloudflare accounts from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateCloudflareAccount - -
- - -Create a Cloudflare account through Datadog integration. - -**Parameters** - -- **cloudflare_account_name** (`string`, required) The name for the Cloudflare account to be created. -- **cloudflare_api_key** (`string`, required) The API key or token for the Cloudflare account required to authenticate and connect with the Cloudflare service. -- **cloudflare_account_email** (`string`, optional) The email associated with the Cloudflare account. Required if using an API key instead of a token. -- **json_api_type** (`string`, optional) Specifies the JSON:API type, must be 'cloudflare-accounts'. -- **resources_allowlist** (`array[string]`, optional) List of resources such as 'web', 'dns', 'lb', or 'worker' to restrict metric pulling. -- **zone_allowlist** (`array[string]`, optional) A list of zones for restricting metric data collection. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteCloudflareAccount - -
- - -Delete a Cloudflare account via Datadog integration. - -**Parameters** - -- **cloudflare_account_id** (`string`, required) The ID of the Cloudflare account to delete from Datadog. This should be a string matching the account ID format. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetCloudflareAccount - -
- - -Retrieve details of a Cloudflare account via Datadog. - -**Parameters** - -- **cloudflare_account_id** (`string`, required) The unique identifier for the Cloudflare account to retrieve details from. This is required to access account-specific information. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateCloudflareAccount - -
- - -Update details of a Cloudflare account. - -**Parameters** - -- **cloudflare_account_id** (`string`, required) The unique identifier for the Cloudflare account to be updated. -- **allowed_resource_types_for_metrics** (`array[string]`, optional) An array of resource types ('web', 'dns', 'lb', 'worker') to allow for metrics collection. -- **cloudflare_account_email** (`string`, optional) The email associated with the Cloudflare account. Required if using an API key instead of a token. -- **cloudflare_account_name** (`string`, optional) The name of the Cloudflare account to be updated. -- **cloudflare_api_key** (`string`, optional) The API key for the Cloudflare account, required for authentication. -- **json_api_type** (`string`, optional) The JSON:API type for this API. Always use `cloudflare-accounts`. -- **zone_allowlist** (`array[string]`, optional) A list of zone identifiers to restrict which metrics can be pulled for Cloudflare. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListConfluentAccounts - -
- - -Retrieve a list of Confluent accounts. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateConfluentAccount - -
- - -Create a Confluent account on Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteConfluentAccount - -
- - -Delete a Confluent account using the account ID. - -**Parameters** - -- **confluent_account_id** (`string`, required) The unique identifier for the Confluent Account to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetConfluentAccountInfo - -
- - -Retrieve Confluent account information by account ID. - -**Parameters** - -- **confluent_account_id** (`string`, required) The unique identifier for the Confluent account to retrieve details from. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateConfluentAccount - -
- - -Updates the Confluent account details. - -**Parameters** - -- **confluent_account_id** (`string`, required) The unique ID of the Confluent account to be updated. -- **confluent_api_key** (`string`, required) Provide the API key associated with your Confluent account. -- **confluent_api_secret** (`string`, required) The API secret for the Confluent account. Required to authenticate and update the account details. -- **api_type** (`string`, optional) Set this to `confluent-cloud-accounts` to specify the JSON:API type for the update request. -- **tags_list** (`array[string]`, optional) A list of tag strings for the account. Use single keys or key-value pairs separated by a colon. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetConfluentResource - -
- - -Retrieve Confluent resource details for a specific account ID. - -**Parameters** - -- **confluent_account_id** (`string`, required) Enter the Confluent Account ID to retrieve the resource details linked to this account. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateConfluentResource - -
- - -Create a Confluent resource for a specified account. - -**Parameters** - -- **confluent_account_id** (`string`, required) The ID of the Confluent account for which to create the resource. -- **confluent_resource_id** (`string`, required) The unique ID for the Confluent resource to be created or managed. -- **resource_type** (`string`, required) The type of Confluent resource to create: `kafka`, `connector`, `ksql`, or `schema_registry`. -- **enable_custom_metrics** (`boolean`, optional) Set to true to enable the `custom.consumer_lag_offset` metric with extra tags, false to disable. -- **json_api_request_type** (`string`, optional) The JSON:API type for this request. Must be 'confluent-cloud-resources'. -- **resource_tags** (`array[string]`, optional) A list of tag strings for the Confluent resource. Use key-value pairs separated by colons or single keys. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteConfluentResource - -
- - -Deletes a specified Confluent resource in a Datadog account. - -**Parameters** - -- **confluent_account_id** (`string`, required) The unique identifier for the Confluent account linked to the resource to be deleted. -- **confluent_resource_id** (`string`, required) A string representing the unique ID of the Confluent resource to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.FetchConfluentResource - -
- - -Retrieve a Confluent resource using account and resource IDs. - -**Parameters** - -- **confluent_account_id** (`string`, required) The ID of the Confluent account to retrieve the resource for. This should be a string value representing the account identifier. -- **confluent_resource_id** (`string`, required) The ID of the Confluent resource associated with the specified account. Provide this to retrieve the resource details. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateConfluentResource - -
- - -Update a Confluent resource linked to a specified account. - -**Parameters** - -- **confluent_account_id** (`string`, required) The ID of the Confluent account associated with the resource to be updated. -- **confluent_resource_id** (`string`, required) The unique identifier for the Confluent resource to be updated. -- **resource_id** (`string`, required) The ID of the Confluent account resource to update. -- **resource_type** (`string`, required) Specifies the resource type of the Confluent resource. Valid values are 'kafka', 'connector', 'ksql', or 'schema_registry'. -- **enable_custom_metrics** (`boolean`, optional) Set to true to enable the `custom.consumer_lag_offset` metric which includes extra metric tags. -- **resource_data_type** (`string`, optional) The JSON:API type for this request. Must be 'confluent-cloud-resources'. -- **tags_list** (`array[string]`, optional) A list of tags for the resource. Each tag can be a single key or a key-value pair separated by a colon. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListFastlyAccounts - -
- - -Retrieve a list of Fastly accounts integrated with Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateFastlyAccount - -
- - -Create a new Fastly account through Datadog integration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteFastlyAccount - -
- - -Deletes a specified Fastly account integration. - -**Parameters** - -- **fastly_account_id** (`string`, required) The unique identifier of the Fastly account to delete. Required for the deletion process. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetFastlyAccountInfo - -
- - -Retrieves detailed information for a specific Fastly account. - -**Parameters** - -- **fastly_account_id** (`string`, required) The unique identifier for the Fastly account to retrieve information about. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateFastlyAccount - -
- - -Updates a Fastly account via Datadog integration. - -**Parameters** - -- **fastly_account_id** (`string`, required) The unique identifier for the Fastly account to update. -- **fastly_account_name** (`string`, optional) The name of the Fastly account to update. -- **fastly_api_key** (`string`, optional) The API key for the Fastly account to be updated. -- **json_api_type** (`string`, optional) Specifies the type for the Fastly account API. Must be 'fastly-accounts'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListFastlyServices - -
- - -Retrieve Fastly services for a specific account. - -**Parameters** - -- **fastly_account_id** (`string`, required) The unique identifier for a Fastly account to retrieve its services. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateFastlyService - -
- - -Create a Fastly service for a specific account in Datadog. - -**Parameters** - -- **fastly_account_id** (`string`, required) Provide the Fastly Account ID to create the service under. -- **fastly_service_id** (`string`, required) The ID of the Fastly service to create. Provide a valid Fastly service ID. -- **fastly_service_tags** (`array[string]`, optional) A list of tags for the Fastly service to help categorize and organize the service. -- **jsonapi_type_for_fastly_service** (`string`, optional) The JSON:API type, always set to 'fastly-services', for creating a Fastly service. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteFastlyService - -
- - -Delete a Fastly service for an account. - -**Parameters** - -- **fastly_account_id** (`string`, required) The ID of the Fastly account associated with the service to be deleted. -- **fastly_service_id** (`string`, required) The unique identifier for the Fastly service to delete. Required to specify the exact service. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetFastlyServiceInfo - -
- - -Retrieve Fastly service details for a specific account. - -**Parameters** - -- **fastly_account_id** (`string`, required) The unique ID of the Fastly account for which to retrieve service details. -- **fastly_service_id** (`string`, required) The ID of the Fastly service to retrieve details for, linked to the specified account. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateFastlyService - -
- - -Update a Fastly service for an account in Datadog. - -**Parameters** - -- **fastly_account_id** (`string`, required) The unique ID of the Fastly account to be updated. -- **fastly_service_id** (`string`, required) Provide the Fastly Service ID to specify which service to update. -- **fastly_service_identifier** (`string`, required) The ID of the Fastly service to be updated. -- **fastly_service_json_api_type** (`string`, optional) The JSON:API type for this API, which should always be `fastly-services`. -- **fastly_service_tags** (`array[string]`, optional) A list of tags to update the Fastly service with. Each tag should be a string. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListOktaAccounts - -
- - -Retrieve a list of Okta accounts linked to Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateOktaAccount - -
- - -Create an Okta account via Datadog integration. - -**Parameters** - -- **okta_account_domain** (`string`, required) The domain of the Okta account to be created. -- **okta_account_name** (`string`, required) The name of the Okta account to be created via Datadog API integration. -- **okta_auth_method** (`string`, required) Specify the authorization method for the Okta account. -- **client_secret** (`string`, optional) The client secret associated with the Okta app integration. This is required for authentication. -- **okta_account_id** (`string`, optional) The ID of the Okta account, which is a UUID hash of the account name. -- **okta_account_type** (`string`, optional) Specifies the type of account for the Okta account. The value should be 'okta-accounts'. -- **okta_api_key** (`string`, optional) The API key for the Okta account integration. This key is used for authenticating the account with Datadog. -- **okta_client_id** (`string`, optional) The Client ID for the Okta app integration, necessary for the account setup. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteOktaAccount - -
- - -Delete an Okta account from Datadog integration. - -**Parameters** - -- **okta_account_id** (`string`, required) A string representing the ID of the Okta account to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetOktaAccountInfo - -
- - -Retrieve detailed information about a specific Okta account. - -**Parameters** - -- **okta_account_id** (`string`, required) The unique identifier for the Okta account to retrieve information for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateOktaAccount - -
- - -Update details of an existing Okta account. - -**Parameters** - -- **account_id** (`string`, required) The unique identifier for the Okta account to be updated. -- **account_type** (`string`, optional) Specify the type of the Okta account. Must be 'okta-accounts'. -- **authorization_method** (`string`, optional) Specify the authorization method for the Okta account. This is a required string value. -- **okta_account_api_key** (`string`, optional) The API key for authenticating the Okta account. -- **okta_client_id** (`string`, optional) The Client ID of the Okta app integration to update. -- **okta_client_secret** (`string`, optional) The client secret for the Okta app integration to be updated. Ensure this is kept secure. -- **okta_domain** (`string`, optional) The domain associated with the Okta account to update. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetIpAllowlist - -
- - -Retrieve the IP allowlist and its status. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateIpAllowlist - -
- - -Edit and toggle the IP allowlist settings in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AggregateLogs - -
- - -Aggregate logs to compute metrics and timeseries. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetCurrentArchiveOrder - -
- - -Retrieve the current order of logs archives. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateLogsArchiveOrder - -
- - -Updates the order of log archives in Datadog. - -**Parameters** - -- **archive_ids_order** (`array[string]`, optional) An ordered list of `` strings to define the new archives order in Datadog. -- **archive_order_type** (`string`, optional) Specifies the type for the archive order definition. Must be 'archive_order'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListLogsArchives - -
- - -Get the list of configured logs archives. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateLogsArchive - -
- - -Create an archive of logs in your organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteLogsArchive - -
- - -Delete a specific logs archive from your organization. - -**Parameters** - -- **archive_id** (`string`, required) The unique identifier for the archive to be deleted from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetSpecificLogsArchive - -
- - -Retrieve a specific logs archive from Datadog. - -**Parameters** - -- **archive_id** (`string`, required) The unique identifier for the logs archive to retrieve from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateArchiveConfiguration - -
- - -Replace an existing archive configuration in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **archive_identifier** (`string`, optional) The unique identifier for the archive you wish to update in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RemoveRoleFromArchive - -
- - -Removes a role from a specified archive in Datadog. - -**Parameters** - -- **archive_id** (`string`, required) The ID of the archive from which the role will be removed. -- **role_type** (`string`, optional) The type of role to be removed, typically set to 'roles'. -- **role_unique_identifier** (`string`, optional) The unique identifier of the role to be removed from the archive. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetArchiveReadRoles - -
- - -Retrieve roles with read access to a specific archive. - -**Parameters** - -- **archive_identifier** (`string`, required) The unique identifier for the archive to retrieve read access roles from. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AddReadRoleToArchive - -
- - -Adds a read role to a specified archive. - -**Parameters** - -- **archive_id** (`string`, required) The unique identifier for the archive to which a read role will be added. This is required to specify the target archive for access management. -- **role_type** (`string`, optional) The type of role to be added. Must be 'roles'. -- **role_unique_identifier** (`string`, optional) The unique identifier for the role to be added to the archive. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListCustomLogDestinations - -
- - -Retrieve configured custom log destinations from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateCustomLogDestination - -
- - -Create a custom log destination in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteCustomLogDestination - -
- - -Delete a specific custom log destination. - -**Parameters** - -- **custom_destination_id** (`string`, required) The unique identifier for the custom log destination to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetCustomDestination - -
- - -Retrieve details of a specific custom log destination. - -**Parameters** - -- **custom_destination_id** (`string`, required) The ID of the custom destination to retrieve details from your organization. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateLogsCustomDestination - -
- - -Update specific fields of a custom logs destination. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **custom_destination_id** (`string`, optional) The unique identifier for the custom logs destination to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetLogsMetricsList - -
- - -Retrieve a list of log-based metrics and their definitions. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateLogBasedMetric - -
- - -Create a metric from your ingested logs. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteLogMetric - -
- - -Delete a specific log-based metric from your organization. - -**Parameters** - -- **log_metric_name** (`string`, required) The name of the log-based metric you want to delete. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetLogBasedMetric - -
- - -Retrieve a specific log-based metric from Datadog. - -**Parameters** - -- **log_based_metric_name** (`string`, required) The name of the log-based metric to retrieve from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateLogBasedMetric - -
- - -Update a specific log-based metric in your organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **log_metric_name** (`string`, optional) The name of the log-based metric to be updated. It specifies which metric to modify in your organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListRestrictionQueries - -
- - -Retrieve all restriction queries with their details. - -**Parameters** - -- **page_number** (`integer`, optional) The specific page number of results to return. Useful for paginating through result sets. -- **page_size** (`integer`, optional) The number of results to return per page. Maximum value is 100. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateDatadogRestrictionQuery - -
- - -Create a new restriction query in Datadog. - -**Parameters** - -- **restriction_query** (`string`, optional) A string representing the restriction query to manage log access and configurations. -- **restriction_query_resource_type** (`string`, optional) Specifies the type of restriction query resource. Must be 'logs_restriction_queries'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetRoleRestrictionQuery - -
- - -Retrieve the restriction query for a specific role. - -**Parameters** - -- **role_id** (`string`, required) The unique identifier for the role whose restriction query you want to retrieve. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetUserRestrictionQueries - -
- - -Retrieve restriction queries for a specific user. - -**Parameters** - -- **user_identifier** (`string`, required) The unique ID of the user for retrieving restriction queries. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteRestrictionQuery - -
- - -Deletes a restriction query from Datadog logs configuration. - -**Parameters** - -- **restriction_query_id** (`string`, required) The unique ID of the restriction query to be deleted from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetRestrictionQuery - -
- - -Retrieve a restriction query by its ID within Datadog. - -**Parameters** - -- **restriction_query_id** (`string`, required) The unique identifier for the restriction query to retrieve its details. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.EditRestrictionQuery - -
- - -Edit an existing restriction query in Datadog. - -**Parameters** - -- **restriction_query_id** (`string`, required) The ID of the restriction query to be edited. -- **restriction_query_resource_type** (`string`, optional) The type of restriction query resource. Must be 'logs_restriction_queries'. -- **restriction_query_string** (`string`, optional) The restriction query string to update for the restriction query in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RemoveRoleFromRestrictionQuery - -
- - -Removes a role from a Datadog restriction query. - -**Parameters** - -- **restriction_query_id** (`string`, required) The ID of the restriction query to remove the role from. -- **role_type** (`string`, optional) The type of the role, must be 'roles'. -- **role_unique_identifier** (`string`, optional) The unique identifier of the role to be removed from the restriction query. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetRestrictionQueryRoles - -
- - -Retrieve roles associated with a specific restriction query. - -**Parameters** - -- **restriction_query_id** (`string`, required) The unique identifier of the restriction query to fetch associated roles. -- **page_number** (`integer`, optional) The specific page number to return in the response. Use this to navigate through paginated results. -- **page_size** (`integer`, optional) Specify the number of results per page. The maximum allowed value is 100. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AddRoleToRestrictionQuery - -
- - -Adds a role to a restriction query for logs configuration. - -**Parameters** - -- **restriction_query_id** (`string`, required) The ID of the restriction query to which a role will be added. -- **role_type** (`string`, optional) The type of the role, expected to be 'roles'. -- **role_unique_identifier** (`string`, optional) The unique identifier of the role to be added to the restriction query. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListLogsMatchingQuery - -
- - -Retrieve logs that match a search query with pagination. - -**Parameters** - -- **max_timestamp_for_logs** (`string`, optional) Specify the maximum timestamp for the requested logs. This represents the latest time point for log retrieval. -- **maximum_logs_in_response** (`integer`, optional) Maximum number of logs to include in the response. Specify an integer value. -- **minimum_timestamp_for_logs** (`string`, optional) Specify the earliest timestamp for the logs to be retrieved. Use ISO 8601 format for the timestamp. -- **pagination_cursor** (`string`, optional) Cursor for pagination to retrieve the next set of log results. Use the cursor from the previous query to continue fetching results. -- **search_indexes** (`array[string]`, optional) Specify the indexes to search. Defaults to '\*' for all indexes. -- **search_query** (`string`, optional) Search query using logs syntax to filter specific logs from Datadog. -- **sort_order** (`string`, optional) Specify the order of logs in results: 'timestamp' for ascending or '-timestamp' for descending. -- **storage_type** (`string`, optional) Specifies the storage type. Options are 'indexes', 'online-archives', or 'flex'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListLogs - -
- - -Retrieve logs based on a search query with pagination. - -**Parameters** - -- **indexes_to_search** (`array[string]`, optional) Specify the indexes to search. Defaults to ['*'] for all indexes. -- **max_log_time** (`string`, optional) The maximum time for the requested logs. Supports date math and regular timestamps (milliseconds). -- **maximum_logs_in_response** (`integer`, optional) Specifies the maximum number of logs to return in the response, allowing control over pagination size. -- **minimum_time** (`string`, optional) The minimum time for the requested logs, supports date math and regular timestamps (milliseconds). -- **pagination_cursor** (`string`, optional) Cursor for retrieving the next set of paginated log results from a previous query. -- **query_timezone** (`string`, optional) Specify the timezone as GMT, UTC, an offset (e.g., UTC+1), or a Timezone Database ID (e.g., America/New_York). -- **search_query** (`string`, optional) The search query following Datadog's log search syntax to filter logs. -- **sort_order** (`string`, optional) Defines how logs are sorted: 'timestamp' for ascending order and '-timestamp' for descending order. -- **storage_type** (`string`, optional) Specify the storage type: "indexes", "online-archives", or "flex". -- **time_offset_seconds** (`integer`, optional) The time offset in seconds to apply to the log search query. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListMetricTagConfigurations - -
- - -Retrieve all metrics configurable in Datadog's Metrics Summary. - -**Parameters** - -- **filter_by_query_status** (`boolean`, optional) Filter custom metrics that have or have not been queried within the specified time window. -- **filter_metrics_by_tags** (`string`, optional) Filter metrics by tags using boolean/wildcard expressions; combine with queried filter only. -- **filter_metrics_used_in_assets** (`boolean`, optional) Boolean to filter metrics used in dashboards, monitors, notebooks, and SLOs. -- **filter_tag_configurations** (`string`, optional) Filter tag configurations by specified configured tags. Use string values representing specific criteria for filtering. -- **include_metrics_with_configured_tags** (`boolean`, optional) Set to true to filter and include only custom metrics with configured tags. -- **include_percentile_aggregations** (`boolean`, optional) Set to true to include distributions with additional percentile aggregations enabled. Set to false to exclude them. -- **look_back_seconds** (`integer`, optional) The number of seconds to look back for applying a filter on tags or queried metrics. Defaults to 3600 seconds (1 hour) with a max of 2,592,000 seconds (30 days). -- **max_results_per_page** (`integer`, optional) Maximum number of metric configurations to return per page. -- **metric_type_filter** (`string`, optional) Filter metrics by type. Options are 'non_distribution' or 'distribution'. -- **pagination_cursor** (`string`, optional) String to query the next page of metric results. Use 'next_cursor' from the previous response. Null when all pages are retrieved. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteBulkTagsMetrics - -
- - -Delete custom lists of queryable tag keys for metrics. - -**Parameters** - -- **metric_name_prefix** (`string`, required) A text prefix to match against metric names for tag deletion. -- **metric_bulk_configure_tags_resource** (`string`, optional) The identifier for the metric bulk configure tags resource, which should be 'metric_bulk_configure_tags'. -- **notification_emails** (`array[string]`, optional) A list of account emails to notify when the configuration is applied. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ConfigureBulkTagsForMetrics - -
- - -Configure bulk tags for specified metrics in Datadog. - -**Parameters** - -- **metric_name_prefix** (`string`, required) A text prefix used to match against metric names for bulk tags configuration. -- **actively_queried_tags_window_seconds** (`number`, optional) Time window in seconds for configuring actively queried tags for matching metrics. Minimum is 1 second, maximum is 7,776,000 seconds (90 days). -- **exclude_configured_tags** (`boolean`, optional) Set to true to exclude configured tags and include all other tags. Defaults to false. -- **metric_bulk_configure_tags_resource** (`string`, optional) The resource identifier for configuring bulk tags for metrics. Must be set to 'metric_bulk_configure_tags'. -- **notification_emails** (`array[string]`, optional) A list of account emails to notify when the configuration is applied. -- **override_existing_configurations** (`boolean`, optional) Set to true to override any existing configurations for the metric with the new tags. Defaults to true. -- **tags_to_apply** (`array[string]`, optional) A list of tag names to apply to the metric configuration in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListActiveMetricConfigurations - -
- - -Retrieve active metric tags and aggregations for a given metric name. - -**Parameters** - -- **metric_name** (`string`, required) Specify the name of the metric to retrieve active tags and aggregations for. -- **lookback_seconds** (`integer`, optional) Number of seconds to look back from the current time. Defaults to 604800 seconds (1 week). Minimum is 7200 seconds (2 hours), and maximum is 2630000 seconds (1 month). - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListMetricTags - -
- - -Retrieve indexed tags for a metric over the last hour. - -**Parameters** - -- **metric_name** (`string`, required) The name of the metric to retrieve indexed tag key-value pairs from over the past hour. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListMetricAssets - -
- - -Retrieve assets associated with a specific metric. - -**Parameters** - -- **metric_name** (`string`, required) The specific name of the metric to retrieve associated assets for. This is essential for querying the correct data. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.EstimateMetricsOutput - -
- - -Estimate cardinality of a metric with specific settings. - -**Parameters** - -- **metric_name** (`string`, required) Specifies the name of the metric for which to estimate cardinality. -- **filtered_tag_keys** (`string`, optional) Filtered tag keys that the metric is configured to query with, specified as a string. -- **ignore_num_aggregations** (`integer`, optional) This argument is deprecated and has no impact on volume estimation. It is ignored in the current tool implementation. -- **include_percentile_aggregators** (`boolean`, optional) Boolean to estimate cardinality if distribution metrics have additional percentile aggregators. -- **lookback_hours** (`integer`, optional) Specify the number of hours to look back from the current time to estimate cardinality. Defaults to 0 if not provided. -- **lookback_timespan_hours** (`integer`, optional) A window, in hours, from the lookback to estimate cardinality. Minimum is 1 hour. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetMetricTagCardinality - -
- - -Retrieve cardinality details of tags for a specific metric. - -**Parameters** - -- **metric_name** (`string`, required) The name of the metric for which cardinality details of tags are to be retrieved. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteMetricTagConfiguration - -
- - -Delete a metric's tag configuration. - -**Parameters** - -- **metric_name** (`string`, required) The name of the metric whose tag configuration is to be deleted. Ensure the application key has the necessary permissions. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetMetricTagConfiguration - -
- - -Retrieve the tag configuration for a specific metric. - -**Parameters** - -- **metric_name** (`string`, required) The name of the metric for which to retrieve the tag configuration in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateMetricTagConfiguration - -
- - -Update the tag configuration of a metric in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **metric_name** (`string`, optional) Specify the name of the metric whose tag configuration you wish to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateMetricTagConfiguration - -
- - -Create queryable tag configurations for metrics. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **metric_name** (`string`, optional) The name of the existing metric for which the tag configuration is to be created. This is required to identify the specific metric in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListMetricVolumes - -
- - -Retrieve distinct metric volumes by name. - -**Parameters** - -- **metric_name** (`string`, required) The name of the metric to retrieve volumes for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetMonitorNotificationRules - -
- - -Retrieve all monitor notification rules from Datadog. - -**Parameters** - -- **filter_criteria** (`string`, optional) JSON string to filter rules by text, tags, or recipients. Use keys: `text`, `tags`, `recipients`. -- **include_related_resources** (`string`, optional) Specify related resources to include in the response, such as `created_by`. Use a comma-separated list. -- **number_of_rules_per_page** (`integer`, optional) The number of rules to return per page. Defaults to 100 if not specified. -- **sort_order** (`string`, optional) String for sort order. Example: `name:asc`. Directions: `asc`, `desc`. Fields: `name`, `created_at`. -- **starting_page_number** (`integer`, optional) The page number to begin pagination. Defaults to the first page if not specified. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateMonitorNotificationRule - -
- - -Creates a monitor notification rule in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteMonitorNotificationRule - -
- - -Delete a monitor notification rule by ID. - -**Parameters** - -- **monitor_notification_rule_id** (`string`, required) The unique identifier for the monitor notification rule to delete in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetMonitorNotificationRule - -
- - -Retrieve a monitor notification rule by its ID. - -**Parameters** - -- **monitor_rule_id** (`string`, required) ID of the monitor notification rule to fetch. This is required to retrieve specific rule details. -- **include_related_resources** (`string`, optional) Comma-separated list of related resource paths to include in the response, such as `created_by`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateMonitorNotificationRule - -
- - -Updates a Datadog monitor notification rule. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **monitor_notification_rule_id** (`string`, optional) ID of the monitor notification rule to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListMonitorConfigPolicies - -
- - -Retrieve all monitor configuration policies. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateMonitorConfigPolicy - -
- - -Create a new monitor configuration policy in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteMonitorPolicy - -
- - -Deletes a specific monitor configuration policy. - -**Parameters** - -- **monitor_policy_id** (`string`, required) ID of the monitor configuration policy to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetMonitorConfigurationPolicy - -
- - -Retrieve a monitor's configuration policy using its ID. - -**Parameters** - -- **monitor_policy_id** (`string`, required) ID of the monitor configuration policy to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.EditMonitorConfigPolicy - -
- - -Edit an existing monitor configuration policy in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **monitor_policy_id** (`string`, optional) The ID of the monitor configuration policy to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAllMonitorUserTemplates - -
- - -Retrieve all monitor user templates from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateMonitorUserTemplate - -
- - -Create a new monitor user template in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ValidateMonitorUserTemplate - -
- - -Validate the structure and content of a monitor user template. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteMonitorUserTemplate - -
- - -Deletes a monitor user template by its ID on Datadog. - -**Parameters** - -- **monitor_user_template_id** (`string`, required) ID of the monitor user template to be deleted in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetMonitorUserTemplate - -
- - -Retrieve a monitor user template by ID from Datadog. - -**Parameters** - -- **template_id** (`string`, required) The unique identifier for the specific monitor user template to retrieve. -- **include_all_versions** (`boolean`, optional) Include all versions of the template in the response if true. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateMonitorUserTemplate - -
- - -Creates a new version of a monitor user template in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **monitor_user_template_id** (`string`, optional) ID of the monitor user template to update with a new version. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ValidateMonitorTemplate - -
- - -Validate the structure and content of a monitor template update. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **monitor_template_id** (`string`, optional) ID of the monitor user template to be validated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListMonitorDowntimes - -
- - -Retrieve active downtimes for a specified monitor. - -**Parameters** - -- **monitor_id** (`integer`, required) The ID of the monitor for which to retrieve active downtimes. This should be provided as an integer. -- **maximum_downtime_count** (`integer`, optional) Specifies the maximum number of downtime entries to return in the response. -- **pagination_offset** (`integer`, optional) Specify the offset for the beginning of the returned page, to manage pagination. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetDeviceList - -
- - -Retrieve a list of devices from Datadog. - -**Parameters** - -- **filter_by_tag** (`string`, optional) Filter devices by a specified tag. -- **page_number** (`integer`, optional) Specific page number to return when fetching the devices list. -- **page_size** (`integer`, optional) Specify the size for a given page, with a maximum allowed value of 100. -- **sort_devices_by** (`string`, optional) Specify the field by which to sort the devices list. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetDeviceDetails - -
- - -Retrieve specific device details. - -**Parameters** - -- **device_id** (`string`, required) The unique identifier of the device to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetDeviceInterfaces - -
- - -Fetches the list of interfaces for a given device. - -**Parameters** - -- **device_identifier** (`string`, required) The unique ID of the device to retrieve interfaces for. Expected to be a string. -- **include_ip_addresses** (`boolean`, optional) Specify true to include IP addresses of the interfaces, or false to exclude them. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetDeviceUserTags - -
- - -Retrieve the list of tags for a specific device. - -**Parameters** - -- **device_identifier** (`string`, required) The unique identifier of the device to fetch tags for from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateDeviceTags - -
- - -Update the tags for a specified device. - -**Parameters** - -- **device_identifier** (`string`, required) The ID of the device for which tags are being updated. -- **device_id_for_tags** (`string`, optional) The ID of the device for which the tags will be updated. -- **device_tags** (`array[string]`, optional) A list of tags to update for the device. Each tag should be a string. -- **resource_type** (`string`, optional) The type of resource, always set to 'tags'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAggregatedConnections - -
- - -Retrieve all aggregated network connections from Datadog. - -**Parameters** - -- **connection_limit** (`integer`, optional) Set the number of connections to be returned, maximum 7500, default 100. -- **end_query_window** (`integer`, optional) Unix timestamp for the end of the query window. Defaults to current time if not provided. -- **filter_by_tags** (`string`, optional) Comma-separated list of tags to filter connections by for more targeted querying. -- **group_by_fields** (`string`, optional) Comma-separated list of fields to group connections by, with a maximum of 10 fields. -- **start_time_unix_timestamp** (`integer`, optional) Unix timestamp for the start of the query window. Defaults to 15 minutes before `end_time_unix_timestamp` if not provided. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAggregatedDnsTraffic - -
- - -Retrieve all aggregated DNS traffic data. - -**Parameters** - -- **end_timestamp** (`integer`, optional) Unix timestamp (seconds since epoch) for the end of the query window. Defaults to current time if not provided. -- **filter_dns_traffic_by_tags** (`string`, optional) Comma-separated list of tags to filter the DNS traffic data within the query. -- **group_dns_traffic_by_fields** (`string`, optional) Comma-separated list of fields to group DNS traffic by. Defaults to `network.dns_query` if unspecified. Use `server_ungrouped` to avoid grouping. Maximum of 10 fields. -- **max_dns_entries** (`integer`, optional) Number of aggregated DNS entries to return, up to a maximum of 7500. Default is 100. -- **start_query_timestamp** (`integer`, optional) Unix timestamp for the query window start. Defaults to 15 min before `to` timestamp if not specified. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateOnCallEscalationPolicy - -
- - -Create a new On-Call escalation policy in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **include_relationships** (`string`, optional) Comma-separated list of included relationships to return. Allowed values: teams, steps, steps.targets. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteEscalationPolicy - -
- - -Delete an On-Call escalation policy. - -**Parameters** - -- **escalation_policy_id** (`string`, required) The unique ID of the escalation policy to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetOnCallEscalationPolicy - -
- - -Retrieve details of an On-Call escalation policy. - -**Parameters** - -- **escalation_policy_id** (`string`, required) The unique identifier for the on-call escalation policy to retrieve. -- **include_relationships** (`string`, optional) A comma-separated list of relationships to include in the response. Allowed values: `teams`, `steps`, `steps.targets`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateOnCallEscalationPolicy - -
- - -Update an On-Call escalation policy in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **escalation_policy_id** (`string`, optional) The unique identifier of the escalation policy to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_relationships** (`string`, optional) Comma-separated list of relationships to be returned. Options: `teams`, `steps`, `steps.targets`. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.TriggerOnCallPage - -
- - -Triggers a new On-Call Page in Datadog. - -**Parameters** - -- **issue_summary** (`string`, optional) A short summary of the issue or context for the On-Call Page. -- **on_call_page_urgency_level** (`string`, optional) Specifies the urgency level of the On-Call Page. Accepts 'low' or 'high'. -- **page_title** (`string`, optional) The title of the On-Call Page. Provide a concise and clear title to identify the issue or alert. -- **resource_type_for_on_call** (`string`, optional) Specify the type of resource for creating an On-Call Page. Use `pages`. -- **tags_for_categorization** (`array[string]`, optional) An array of tags for categorizing or filtering the On-Call page. -- **target_identifier** (`string`, optional) Identifier for the target, such as a team handle or user ID, used to specify the intended recipient of the On-Call Page. -- **target_type** (`string`, optional) Specify the kind of target: 'team_id', 'team_handle', or 'user_id'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AcknowledgeOnCallPage - -
- - -Acknowledge an On-Call Page alert in Datadog. - -**Parameters** - -- **on_call_page_id** (`string`, required) The unique identifier for the On-Call Page to acknowledge. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.EscalateOnCallPage - -
- - -Escalate an on-call page to notify the responsible team. - -**Parameters** - -- **on_call_page_id** (`string`, required) The unique identifier for the on-call page to be escalated. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ResolveOnCallPage - -
- - -Resolves an On-Call Page in Datadog. - -**Parameters** - -- **on_call_page_id** (`string`, required) The unique identifier of the on-call page to resolve in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateOnCallSchedule - -
- - -Create a new on-call schedule in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **include_relationships** (`string`, optional) Comma-separated list of relationships to return with the schedule. Options: `teams`, `layers`, `layers.members`, `layers.members.user`. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteOnCallSchedule - -
- - -Delete an On-Call schedule in Datadog. - -**Parameters** - -- **schedule_id** (`string`, required) The unique identifier for the on-call schedule you wish to delete in Datadog. This is a required field. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetOnCallSchedule - -
- - -Retrieve an On-Call schedule from Datadog. - -**Parameters** - -- **schedule_id** (`string`, required) The unique ID of the on-call schedule to be retrieved. -- **include_relationships** (`string`, optional) Comma-separated list of relationships to include in the response. Options: `teams`, `layers`, `layers.members`, `layers.members.user`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateOnCallSchedule - -
- - -Update an existing on-call schedule in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **schedule_id** (`string`, optional) The unique identifier for the on-call schedule to update in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **relationships_to_include** (`string`, optional) Comma-separated relationships to return, e.g., `teams`, `layers`. Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetOnCallUser - -
- - -Retrieve the current on-call user for a specific schedule. - -**Parameters** - -- **schedule_id** (`string`, required) The unique ID of the schedule to retrieve the on-call user from. -- **include_related_resources** (`string`, optional) Specifies related resources to include in the response. Use 'user' to include user details. -- **timestamp_for_on_call_user** (`string`, optional) Retrieves the on-call user at the specified timestamp (ISO-8601). Defaults to current time if omitted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetTeamOnCallUsers - -
- - -Retrieve on-call users for a specific team. - -**Parameters** - -- **team_id** (`string`, required) The unique identifier for the team whose on-call users are being retrieved. -- **include_relationships** (`string`, optional) Comma-separated list of relationships to include in the response: `responders`, `escalations`, `escalations.responders`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetTeamOnCallRoutingRules - -
- - -Retrieve a team's on-call routing rules from Datadog. - -**Parameters** - -- **team_identifier** (`string`, required) The unique identifier for the team whose on-call routing rules are to be retrieved. -- **include_relationships** (`string`, optional) Comma-separated list of relationships to return, such as `rules` or `rules.policy`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SetOnCallTeamRoutingRules - -
- - -Set or update a team's On-Call routing rules in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_identifier** (`string`, optional) The unique identifier for the team whose routing rules are being set. It should be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_relationships** (`string`, optional) Comma-separated list of relationships to include in the response. Allowed: `rules`, `rules.policy`. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListOrgConfigs - -
- - -Retrieve all organization configurations. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetOrganizationConfigDetails - -
- - -Retrieve organization configuration details by name. - -**Parameters** - -- **organization_config_name** (`string`, required) The name of the organization configuration to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateOrgConfig - -
- - -Update a specified organization configuration in Datadog. - -**Parameters** - -- **org_config_data_type** (`string`, required) The data type of the organization configuration, which should be 'org_configs'. -- **org_config_value** (`string`, required) The new value for the organization configuration. Provide the desired value to update the specific Org Config. -- **organization_configuration_name** (`string`, required) The name of the organization configuration to update in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListOrgConnections - -
- - -Retrieve a list of organization connections from Datadog. - -**Parameters** - -- **entry_limit** (`integer`, optional) Specifies the maximum number of entries to return. Default is 1000. -- **pagination_offset** (`integer`, optional) The pagination offset to start querying from, with a default of 0. Use this for paginated results. -- **sink_organization_id** (`string`, optional) The organization ID of the sink org. It identifies the destination organization in the connections list. -- **source_organization_id** (`string`, optional) The ID of the source organization to query connections from. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateOrgConnection - -
- - -Creates a new organization connection in Datadog. - -**Parameters** - -- **connection_types** (`array[string]`, required) List of connection types to establish between the organizations. -- **organization_connection_type** (`string`, required) Specify the type of the organization connection. Must be 'org_connection'. -- **organization_relationship_type** (`string`, optional) Specifies the type of the organization relationship. Must be 'orgs'. -- **target_org_name** (`string`, optional) The name of the target organization to connect with. -- **target_org_uuid** (`string`, optional) The UUID of the target organization to connect to. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteOrgConnection - -
- - -Delete an existing organization connection. - -**Parameters** - -- **connection_id** (`string`, required) The unique identifier of the organization connection to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateOrgConnection - -
- - -Update an existing organization connection in Datadog. - -**Parameters** - -- **org_connection_id** (`string`, required) The unique identifier of the organization connection in Datadog. -- **org_connection_type** (`string`, required) Specifies the type of organization connection. Must be 'org_connection'. -- **organization_connection_id** (`string`, required) The unique identifier of the organization connection to be updated. -- **updated_connection_types** (`array[string]`, required) A list of updated connection types for the organization connection. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListPermissions - -
- - -Retrieve all permissions from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListFindings - -
- - -Retrieve a list of security findings from Datadog. - -**Parameters** - -- **filter_by_evaluation_change_date** (`string`, optional) Specify a date (Unix ms) or date range (using comparison operators) to find results altered from pass to fail or vice versa. -- **filter_by_resource_id** (`string`, optional) Return only findings for the specified resource ID. -- **filter_by_resource_type** (`string`, optional) Return findings only for the specified resource type. Use to narrow down results to specific resource types, such as 'aws', 'gcp', etc. -- **filter_by_rule_id** (`string`, optional) Provide a specific rule ID to filter findings related to that rule. -- **filter_by_rule_name** (`string`, optional) Specify the rule name to return findings associated with it. This filters findings based on the provided rule name. -- **filter_by_tags** (`string`, optional) Specify tags to filter findings. Use the format `tag_key:tag_value`. Supports multiple tags separated by commas. -- **filter_discovery_timestamp** (`string`, optional) Return findings discovered at a specific time (Unix ms) or within a date range using comparison operators (e.g., `>`, `<=`). -- **filter_evaluation_status** (`string`, optional) Specify to return only findings that are either 'pass' or 'fail'. -- **include_detailed_findings** (`boolean`, optional) Set to true to retrieve additional fields like external ID, description, and IP addresses for some findings. -- **max_findings_limit** (`integer`, optional) Set the maximum number of findings to return, up to a limit of 1000. -- **next_page_cursor** (`string`, optional) Use this to return the next page of findings starting from this cursor's position. -- **return_muted_findings** (`boolean`, optional) Set to `true` to return muted findings. Set to `false` to exclude them. -- **snapshot_timestamp** (`integer`, optional) Specify the Unix timestamp (in milliseconds) to get findings for a specific snapshot of time. -- **status_filter** (`string`, optional) Specify the status of findings to return: critical, high, medium, low, or info. -- **vulnerability_type_filters** (`array[string]`, optional) A list of strings to filter findings by matching vulnerability types. Repeatable for multiple types. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetSecurityFinding - -
- - -Retrieve details of a specific security finding for analysis. - -**Parameters** - -- **finding_id** (`string`, required) The unique ID of the security finding to retrieve details for. -- **snapshot_unix_timestamp** (`integer`, optional) Return the finding for a specific snapshot in time, given in Unix milliseconds. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListPowerpacks - -
- - -Retrieve a list of all powerpacks from Datadog. - -**Parameters** - -- **max_powerpacks_limit** (`integer`, optional) Maximum number of powerpacks to include in the response. -- **page_offset** (`integer`, optional) The specific offset to start returning powerpacks from, allowing for pagination. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreatePowerpack - -
- - -Creates a new powerpack in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeletePowerpack - -
- - -Delete a specified powerpack from Datadog. - -**Parameters** - -- **powerpack_id** (`string`, required) The unique identifier for the powerpack to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetPowerpack - -
- - -Retrieve details of a specific powerpack. - -**Parameters** - -- **powerpack_identifier** (`string`, required) The unique identifier for the desired powerpack, used to retrieve its details. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdatePowerpack - -
- - -Update the details of a specific powerpack in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **powerpack_id** (`string`, optional) The unique identifier for the powerpack to update in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListAllOrganizationProcesses - -
- - -Retrieve all processes for your organization from Datadog. - -**Parameters** - -- **filter_by_tags** (`string`, optional) A comma-separated list of tags to filter the processes by. Use specific tags relevant to your organization's processes for targeted results. -- **max_results_per_page** (`integer`, optional) Maximum number of process results to return in one page. -- **pagination_cursor** (`string`, optional) String token to retrieve the next page of process results. Use the value from `meta.page.after` provided in the previous API response. -- **query_window_end_timestamp** (`integer`, optional) Unix timestamp (seconds since epoch) marking the end of the query window. Defaults to 15 minutes after 'from' if not provided. If 'from' and 'to' are omitted, defaults to 15 minutes from current time. -- **query_window_start_timestamp** (`integer`, optional) Unix timestamp marking the start of the query window. Defaults to 15 minutes before the end of the window if not provided. -- **search_string_for_processes** (`string`, optional) String used to search and filter processes by specific criteria. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.QueryScalarData - -
- - -Query scalar values from diverse data sources. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.QueryTimeseriesData - -
- - -Query and process timeseries data from multiple sources. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListReferenceTables - -
- - -Retrieve all reference tables in the organization. - -**Parameters** - -- **exact_table_name_filter** (`string`, optional) Filter by an exact table name match to retrieve specific reference tables. -- **filter_by_table_status** (`string`, optional) Filter tables by their status. Accepts status as a string, such as 'active', 'inactive', etc. -- **filter_table_name_contains** (`string`, optional) Filter tables by name containing this substring. -- **number_of_tables_to_return** (`integer`, optional) Specify the number of tables to return in the response. Use an integer value. -- **pagination_offset** (`integer`, optional) Number of tables to skip for pagination. -- **sort_field_and_direction** (`string`, optional) Specify the field to sort by and the direction. Use a field name for ascending, prefix with "-" for descending. Options include: updated_at, table_name, status, and their descending counterparts. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateReferenceTable - -
- - -Create a new reference table in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteReferenceTable - -
- - -Delete a reference table by ID. - -**Parameters** - -- **reference_table_id** (`string`, required) The unique identifier of the reference table to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetReferenceTable - -
- - -Retrieve details of a reference table by its ID. - -**Parameters** - -- **reference_table_id** (`string`, required) The unique ID of the reference table to retrieve details from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateReferenceTable - -
- - -Update data, description, and tags of a reference table. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **reference_table_id** (`string`, optional) The ID of the reference table that needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetTableRowsById - -
- - -Retrieve reference table rows using primary key values. - -**Parameters** - -- **reference_table_id** (`string`, required) The unique ID of the reference table to retrieve rows from. -- **row_ids_to_retrieve** (`array[string]`, required) List of primary key values to specify which rows to retrieve from the reference table. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateReferenceTableUpload - -
- - -Create a reference table upload for bulk data ingestion. - -**Parameters** - -- **file_upload_headers** (`array[string]`, optional) An array of strings representing the headers of the file to upload for the reference table. -- **part_size_bytes** (`integer`, optional) The size of each part in the upload in bytes. For multipart uploads (part_count > 1), all parts except the last one must be at least 5,000,000 bytes. For single-part uploads, any size is allowed. -- **reference_table_name** (`string`, optional) The name of the reference table for the upload. -- **upload_id** (`string`, optional) The unique ID for the upload process in Datadog. -- **upload_part_count** (`integer`, optional) Specify the number of parts in the upload. Used for multipart uploads. -- **upload_resource_type** (`string`, optional) Specifies the resource type for the upload. Must be set to 'upload'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListWafCustomRules - -
- - -Retrieve a list of WAF custom rules. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateWafCustomRule - -
- - -Create a new web application firewall custom rule. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteWafCustomRule - -
- - -Delete a specific WAF custom rule by ID. - -**Parameters** - -- **custom_rule_id** (`string`, required) The unique identifier for the WAF custom rule to be deleted. Required for identifying the specific rule. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetWafCustomRuleById - -
- - -Retrieve a WAF custom rule by ID from Datadog. - -**Parameters** - -- **custom_rule_id** (`string`, required) The unique identifier for the WAF custom rule to retrieve from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateWafCustomRule - -
- - -Update a specific WAF custom rule in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **custom_rule_id** (`string`, optional) Specify the ID of the custom WAF rule to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListWafExclusionFilters - -
- - -Retrieve a list of WAF exclusion filters. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateWafExclusionFilter - -
- - -Create a new WAF exclusion filter in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteWafExclusionFilter - -
- - -Delete a WAF exclusion filter using its ID. - -**Parameters** - -- **waf_exclusion_filter_id** (`string`, required) The unique identifier of the WAF exclusion filter to be deleted. Use this ID to specify which filter to remove. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetWafExclusionFilter - -
- - -Retrieve a specific WAF exclusion filter by ID. - -**Parameters** - -- **waf_exclusion_filter_id** (`string`, required) The unique identifier of the WAF exclusion filter to retrieve. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateWafExclusionFilter - -
- - -Updates a WAF exclusion filter by its identifier. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **waf_exclusion_filter_identifier** (`string`, optional) The unique identifier of the WAF exclusion filter to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListWorkloadProtectionAgentRules - -
- - -Retrieve the list of Workload Protection agent rules. - -**Parameters** - -- **agent_policy_id** (`string`, optional) The ID of the Agent policy to retrieve the list of workload protection agent rules. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateWorkloadProtectionRule - -
- - -Create a new Workload Protection agent rule. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteWorkloadProtectionAgentRule - -
- - -Delete a specific Workload Protection agent rule. - -**Parameters** - -- **agent_rule_identifier** (`string`, required) The unique identifier for the Agent rule to be deleted. -- **agent_policy_id** (`string`, optional) The unique identifier of the Workload Protection agent policy to delete. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetThreatProtectionAgentRule - -
- - -Retrieve details of a specific Workload Protection agent rule. - -**Parameters** - -- **agent_rule_id** (`string`, required) The unique identifier for the specific Agent rule to retrieve details for. -- **agent_policy_id** (`string`, optional) The ID of the agent policy to retrieve the specific rule for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateWorkloadProtectionAgentRule - -
- - -Update a specific Workload Protection Agent rule. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **agent_rule_id** (`string`, optional) The unique identifier of the specific Agent rule to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **agent_policy_id** (`string`, optional) The ID of the Agent policy to be updated in the Workload Protection Agent rule. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListWorkloadProtectionPolicies - -
- - -Retrieve a list of Workload Protection policies from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateWorkloadProtectionPolicy - -
- - -Create a new Workload Protection policy for cloud workloads. - -**Parameters** - -- **policy_name** (`string`, required) The name of the workload protection policy to be created. -- **host_tags_configuration** (`array[json]`, optional) Host tags for policy deployment: inner values linked with AND, outer with OR. -- **host_tags_for_policy_deployment** (`array[string]`, optional) List of host tags to define where the policy is deployed. Each tag must be a string. -- **policy_description** (`string`, optional) Provide a description for the new workload protection policy. -- **policy_enabled** (`boolean`, optional) Set to true to enable the workload protection policy. -- **resource_type** (`string`, optional) Specifies the type of the resource. Must always be set to 'policy'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DownloadCsmThreatsPolicy - -
- - -Generate and download Workload Protection policy file. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteWorkloadProtectionPolicy - -
- - -Delete a specific Workload Protection policy. - -**Parameters** - -- **agent_policy_id** (`string`, required) The unique ID of the agent policy to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetWorkloadProtectionPolicyDetails - -
- - -Get details of a specific Workload Protection policy. - -**Parameters** - -- **agent_policy_id** (`string`, required) The unique ID of the Workload Protection Agent policy to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateWorkloadProtectionPolicy - -
- - -Update a specific Workload Protection policy in Datadog. - -**Parameters** - -- **agent_policy_id** (`string`, required) The unique identifier for the Agent policy to update. -- **host_tags_conditions** (`array[json]`, optional) Array of host tags specifying policy deployment conditions. Inner values use AND logic, outer values use OR logic. -- **host_tags_for_policy_deployment** (`array[string]`, optional) An array of strings representing the host tags defining where this policy is deployed. -- **policy_description** (`string`, optional) A string that provides the description of the Workload Protection policy. This should explain the policy's purpose or key features. -- **policy_enabled** (`boolean`, optional) Indicates if the policy is enabled. Use true for enabled, false for disabled. -- **policy_id** (`string`, optional) The unique identifier of the Agent policy to be updated. -- **policy_name** (`string`, optional) The name of the Workload Protection policy to be updated. -- **resource_type** (`string`, optional) The type of the resource, always set to 'policy'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListPipelines - -
- - -Retrieve a list of pipelines from Datadog. - -**Parameters** - -- **page_number** (`integer`, optional) Specify the page number of pipelines to retrieve. Use this to navigate through the pages of results returned by the API. -- **page_size** (`integer`, optional) Number of pipelines to return per page, up to a maximum of 100. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreatePipeline - -
- - -Create a new pipeline in Datadog's system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ValidatePipelineConfig - -
- - -Validate a pipeline configuration without making changes. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteDataPipeline - -
- - -Deletes a data pipeline from the Datadog configuration. - -**Parameters** - -- **pipeline_identifier** (`string`, required) The unique ID of the pipeline that you want to delete from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetSpecificPipelineById - -
- - -Retrieve specific pipeline details by ID. - -**Parameters** - -- **pipeline_id** (`string`, required) The unique ID of the pipeline to retrieve from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdatePipeline - -
- - -Update a pipeline in Datadog's remote config. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **pipeline_id** (`string`, optional) The unique ID of the pipeline to update in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteRestrictionPolicy - -
- - -Delete a restriction policy for a specified resource. - -**Parameters** - -- **resource_identifier** (`string`, required) Identifier formatted as `type:id` for the resource. Supported types: `dashboard`, `integration-service`, `integration-webhook`, `notebook`, and more. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RetrieveResourceRestrictionPolicy - -
- - -Retrieve restriction policy for a specific resource. - -**Parameters** - -- **resource_identifier** (`string`, required) The ID of the resource, formatted as `type:id`. Supported types: `dashboard`, `integration-service`, `integration-webhook`, `notebook`, `reference-table`, `security-rule`, `slo`, `workflow`, `app-builder-app`, `connection`, `connection-group`, `rum-application`, `cross-org-connection`, `spreadsheet`, `on-call-schedule`, `on-call-escalation-policy`, `on-call-team-routing-rules`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateRestrictionPolicy - -
- - -Update the restriction policy for a Datadog resource. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_identifier** (`string`, optional) Identifier of the resource, formatted as `type:id`. Includes supported types like `dashboard`, `integration-service`, `notebook`, and others. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **allow_self_lockout** (`boolean`, optional) Set to true to allow admins to remove their own access from the resource. Default is false, preventing self-lockout. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListUserRoles - -
- - -Retrieve all roles from Datadog. - -**Parameters** - -- **page_number** (`integer`, optional) Specific page number to return. -- **page_size** (`integer`, optional) The number of roles to return per page, with a maximum of 100. -- **role_filter_string** (`string`, optional) Filter roles using a specific string to match their details. -- **role_id_filter** (`string`, optional) List of role IDs to filter roles by, supporting comma-separated values. -- **sort_roles_by** (`string`, optional) Sort roles based on a specified field. Use prefixes to set ascending or descending order, e.g., '-name' for descending by name. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateRole - -
- - -Create a new role for your organization in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListRoleTemplates - -
- - -Retrieve all role templates from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DisableRole - -
- - -Disables a specified role within Datadog. - -**Parameters** - -- **role_identifier** (`string`, required) The unique identifier for the role to be disabled in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetOrganizationRole - -
- - -Retrieve details of a role using its role ID in the organization. - -**Parameters** - -- **role_id** (`string`, required) The unique identifier of the role in the organization. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.EditRole - -
- - -Edit a role with administrator application keys. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **role_identifier** (`string`, optional) The unique identifier for the role to be edited. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CloneExistingRole - -
- - -Clone an existing role based on role ID. - -**Parameters** - -- **new_role_name** (`string`, required) Name of the new role that is cloned from an existing role. -- **role_unique_identifier** (`string`, required) The unique identifier of the role to be cloned. -- **role_type** (`string`, optional) Specifies the type of role for the clone operation. Must be 'roles'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RemovePermissionFromRole - -
- - -Removes a permission from a specified role in Datadog. - -**Parameters** - -- **role_identifier** (`string`, required) The unique identifier for the role from which a permission will be removed. -- **permission_id** (`string`, optional) ID of the permission to be removed from the specified role. -- **permission_resource_type** (`string`, optional) This should be set to 'permissions' to specify the permissions resource type. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListRolePermissions - -
- - -Retrieve all permissions for a specific role. - -**Parameters** - -- **role_identifier** (`string`, required) The unique identifier for the role whose permissions need to be retrieved. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AddPermissionToRole - -
- - -Assigns a specific permission to a given role. - -**Parameters** - -- **role_identifier** (`string`, required) The unique identifier of the role to which the permission will be added. -- **permission_id** (`string`, optional) ID of the permission to be added to the role. -- **permissions_resource_type** (`string`, optional) The resource type for the permission, should be 'permissions'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RemoveUserFromRole - -
- - -Remove a user from a specified role in Datadog. - -**Parameters** - -- **role_identifier** (`string`, required) The unique identifier of the role to remove the user from. -- **user_identifier** (`string`, required) The unique identifier representing the user to be removed from the role. -- **user_resource_type** (`string`, optional) Specifies the resource type, which should be set as 'users'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListRoleUsers - -
- - -Retrieve all users belonging to a specific role. - -**Parameters** - -- **role_identifier** (`string`, required) The unique identifier of the role to list its associated users. -- **page_number** (`integer`, optional) The specific page number to return in the list of users. -- **page_size** (`integer`, optional) Size for a given page, with a maximum value of 100. -- **user_filter_string** (`string`, optional) Filter users by a specific string. Defaults to no filtering. -- **user_sort_order** (`string`, optional) Attribute to sort users by. Prefix with '-' for descending. Options: 'name', 'email', 'status'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AddUserToRole - -
- - -Adds a user to a specific role in Datadog. - -**Parameters** - -- **role_unique_identifier** (`string`, required) The unique identifier for the role you want to assign the user to. -- **user_unique_identifier** (`string`, required) A unique identifier representing the user to be added to the role. -- **users_resource_type** (`string`, optional) Specifies the type of resource as 'users'. Always use 'users'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AggregateRumEvents - -
- - -Aggregate RUM events into computed metrics and timeseries. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListRumApplications - -
- - -Retrieve all RUM applications within your organization from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateRumApplication - -
- - -Create a new RUM application within your organization. - -**Parameters** - -- **rum_application_name** (`string`, required) The name of the RUM application to be created. -- **product_analytics_retention_state** (`string`, optional) Set the retention policy for Product Analytics data from RUM events. Options are 'MAX' or 'NONE'. -- **rum_application_creation_type** (`string`, optional) Specifies the type for creating a RUM application. Use `rum_application_create`. -- **rum_application_type** (`string`, optional) Specifies the type of the RUM application. Expected values: `browser`, `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, `kotlin-multiplatform`. -- **rum_event_processing_state** (`string`, optional) Configures which RUM events are processed and stored for the application. Accepted values are 'ALL', 'ERROR_FOCUSED_MODE', or 'NONE'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.OrderRumRetentionFilters - -
- - -Order RUM retention filters for a RUM application. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **rum_application_id** (`string`, optional) The ID of the RUM application for which to order retention filters. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetRumRetentionFilters - -
- - -Retrieve RUM retention filters for a specific application. - -**Parameters** - -- **rum_application_id** (`string`, required) The unique identifier for the RUM application to retrieve retention filters. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateRumRetentionFilter - -
- - -Create a RUM retention filter for a RUM application. - -**Parameters** - -- **rum_application_id** (`string`, required) RUM application ID for which the retention filter is to be created. -- **rum_event_type_filter** (`string`, required) Specify the type of RUM events to filter. Options include: session, view, action, error, resource, long_task, vital. -- **rum_retention_filter_name** (`string`, required) The name assigned to the RUM retention filter, used for identification. -- **rum_retention_filter_sample_rate** (`integer`, required) The sample rate for a RUM retention filter, an integer between 0 and 100. -- **enable_retention_filter** (`boolean`, optional) Set true to enable the retention filter, false to disable it. -- **resource_type_for_retention** (`string`, optional) Specifies the resource type as 'retention_filters'. This value should always be 'retention_filters'. -- **rum_retention_filter_query** (`string`, optional) The query string that defines the filtering criteria for the RUM retention filter. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteRumRetentionFilter - -
- - -Deletes a RUM retention filter for a specific application. - -**Parameters** - -- **retention_filter_id** (`string`, required) The ID of the retention filter to delete from the RUM application. -- **rum_application_id** (`string`, required) The ID of the RUM application from which to delete the retention filter. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetRumRetentionFilter - -
- - -Retrieve a RUM retention filter for a RUM application. - -**Parameters** - -- **retention_filter_id** (`string`, required) The ID of the retention filter to retrieve for a RUM application. -- **rum_application_id** (`string`, required) The unique identifier for the RUM application. Required to fetch the retention filter. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateRumRetentionFilter - -
- - -Update a RUM retention filter for a RUM application. - -**Parameters** - -- **filter_id** (`string`, required) UUID of the retention filter to be updated. -- **retention_filter_id** (`string`, required) The unique ID of the retention filter to be updated. -- **rum_application_id** (`string`, required) The ID of the RUM application to update the retention filter. Required for identifying the application. -- **enable_retention_filter** (`boolean`, optional) Set to true to enable the retention filter. Set to false to disable it. -- **filter_name** (`string`, optional) The name of the RUM retention filter to update. -- **resource_type** (`string`, optional) Specifies the resource type for the retention filter. Must be 'retention_filters'. -- **rum_event_type_filter** (`string`, optional) Specifies the type of RUM events to filter on, such as 'session', 'view', 'action', etc. -- **rum_retention_filter_query** (`string`, optional) The query string used to define criteria for the RUM retention filter. -- **sample_rate** (`integer`, optional) The sample rate for a RUM retention filter, an integer between 0 and 100, specifying the percentage of data to sample. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteRumApplication - -
- - -Deletes an existing RUM application in your organization. - -**Parameters** - -- **rum_application_id** (`string`, required) The unique identifier for the RUM application you wish to delete. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetRumApplicationById - -
- - -Retrieve RUM application details by ID. - -**Parameters** - -- **rum_application_id** (`string`, required) The ID of the RUM application to retrieve details for. This is a required string value. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateRumApplication - -
- - -Update settings of a specific RUM application by ID. - -**Parameters** - -- **rum_app_id** (`string`, required) The unique ID of the RUM application to update. -- **rum_application_id** (`string`, required) The ID of the RUM application to update. -- **product_analytics_retention_state** (`string`, optional) Set the retention policy for Product Analytics data derived from RUM events. Accepted values: 'MAX', 'NONE'. -- **rum_application_name** (`string`, optional) The name of the RUM application to be updated. -- **rum_application_type** (`string`, optional) Specify the type of RUM application. Valid options: `browser`, `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, `kotlin-multiplatform`. -- **rum_application_update_type** (`string`, optional) Specifies the RUM application update type. Allowed value is 'rum_application_update'. -- **rum_event_processing_state** (`string`, optional) Configures which RUM events are processed and stored. Accepts 'ALL', 'ERROR_FOCUSED_MODE', or 'NONE'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListRumMetrics - -
- - -Retrieve configured RUM-based metrics and their definitions. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateRumMetric - -
- - -Create a metric based on RUM data. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteRumMetric - -
- - -Delete a specific RUM-based metric from your organization. - -**Parameters** - -- **rum_metric_id** (`string`, required) The ID of the RUM-based metric to be deleted from your Datadog organization. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetRumMetric - -
- - -Retrieve a specific RUM-based metric for your organization. - -**Parameters** - -- **metric_identifier** (`string`, required) The unique identifier for the RUM-based metric you want to retrieve from your organization. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateRumMetric - -
- - -Update a specific rum-based metric in your organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **metric_name** (`string`, optional) The name of the rum-based metric to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListRumEvents - -
- - -Retrieve RUM events matching a search query. - -**Parameters** - -- **event_sort_order** (`string`, optional) Specify the order of events: 'timestamp' for ascending or '-timestamp' for descending. -- **maximum_event_count** (`integer`, optional) Specify the maximum number of events to retrieve in a single response. -- **maximum_timestamp** (`string`, optional) Maximum timestamp for requested events in ISO 8601 format. -- **minimum_timestamp** (`string`, optional) The starting timestamp for the requested RUM events. Use a string format compatible with the API. -- **pagination_cursor** (`string`, optional) Cursor for fetching the next set of paginated results in the queried RUM events. -- **rum_search_query** (`string`, optional) Search query following RUM syntax for filtering events. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SearchRumEvents - -
- - -Search and filter RUM events based on a query. - -**Parameters** - -- **filter_max_time** (`string`, optional) Specify the maximum event time in ISO 8601 format, mathematical expressions, or milliseconds. -- **maximum_events_in_response** (`integer`, optional) Specifies the maximum number of RUM events to return in the response. -- **minimum_event_time** (`string`, optional) The minimum time for events in ISO 8601 format, math expressions, or milliseconds. -- **pagination_cursor** (`string`, optional) Provide the cursor to fetch the next set of results from a previous query. -- **rum_search_query** (`string`, optional) The search query following the RUM search syntax to filter events. -- **sort_order** (`string`, optional) Specify the sort order for events by timestamp. Use 'timestamp' for ascending order and '-timestamp' for descending order. -- **time_offset_seconds** (`integer`, optional) The time offset in seconds to apply to the query. -- **timezone** (`string`, optional) Specify the timezone as GMT, UTC, an offset (like UTC+1), or a Timezone Database identifier (like America/New_York). - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.FetchAllScorecardOutcomes - -
- - -Retrieve all rule outcomes from scorecards. - -**Parameters** - -- **filter_by_rule_id** (`string`, optional) Filter outcomes based on specific rule ID. -- **filter_by_rule_name** (`string`, optional) Filter outcomes based on a specific rule name. -- **filter_outcomes_by_service_name** (`string`, optional) Filter outcomes based on a specific service name. Provide the service name as a string. -- **filter_rule_enabled** (`boolean`, optional) Filter outcomes based on whether a rule is enabled (true) or disabled (false). -- **include_rule_details** (`string`, optional) Specify if related rule details should be included in the response. -- **outcome_state_filter** (`string`, optional) Filter the scorecard outcomes by a specific state. Accepts a state value as a string. -- **page_offset** (`integer`, optional) Specific offset to use as the beginning of the returned page, represented as an integer. -- **page_size** (`integer`, optional) The number of results per page, with a maximum of 100. -- **rule_fields_to_return** (`string`, optional) Specify which fields to return in the included rule details. -- **specified_outcome_values** (`string`, optional) Comma-separated list of specific outcome attributes to return. Limits the response to these attributes. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateScorecardOutcomes - -
- - -Update multiple scorecard rule outcomes in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SetServiceRuleOutcomesBatch - -
- - -Batch set multiple service-rule outcomes. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.FetchScorecardRules - -
- - -Fetch all scorecard rules from Datadog. - -**Parameters** - -- **filter_custom_rules_only** (`boolean`, optional) Set to true to include only custom rules in the results. -- **filter_for_enabled_rules** (`boolean`, optional) Set to true to filter for enabled rules only. -- **filter_rule_by_id** (`string`, optional) Filter the rules based on a specific rule ID. -- **filter_rule_description** (`string`, optional) Filter rules based on their description. Provide a string to match against the rule descriptions. -- **filter_rules_by_name** (`string`, optional) Specify a rule name to filter the scorecard rules. -- **include_scorecard_details** (`string`, optional) Specify related scorecard details to include in the response. -- **page_offset** (`integer`, optional) Specific offset to use as the beginning of the returned page for fetching scorecard rules. -- **page_size** (`integer`, optional) Number of rules to return per page. Maximum value is 100. -- **specific_rule_fields** (`string`, optional) Specify which rule fields to include in the response. Provide a comma-separated list of field names. -- **specific_scorecard_fields** (`string`, optional) Specify which fields to include in the response for scorecard attributes. Use comma-separated values. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateScorecardRule - -
- - -Create a new scorecard rule in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteScorecardRule - -
- - -Deletes a scorecard rule by its ID. - -**Parameters** - -- **rule_id** (`string`, required) The ID of the scorecard rule to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateScorecardRule - -
- - -Updates an existing scorecard rule in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **rule_id** (`string`, optional) A unique identifier for the scorecard rule to be updated in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DownloadCloudWorkloadPolicy - -
- - -Downloads a Workload Protection policy file for agents. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListCloudWorkloadSecurityAgentRules - -
- - -Retrieve the list of cloud workload security agent rules. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateCloudWorkloadSecurityAgentRule - -
- - -Create a new cloud workload security agent rule. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteCloudWorkloadSecurityAgentRule - -
- - -Delete a specific cloud workload security agent rule. - -**Parameters** - -- **agent_rule_identifier** (`string`, required) The unique identifier for the specific agent rule to delete. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetCloudWorkloadSecurityAgentRuleDetails - -
- - -Retrieve details of a cloud workload security agent rule. - -**Parameters** - -- **agent_rule_identifier** (`string`, required) Unique identifier for the cloud workload security agent rule to retrieve details. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateCloudWorkloadSecurityAgentRule - -
- - -Update a specific cloud workload security agent rule. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **agent_rule_identifier** (`string`, optional) The unique identifier for the agent rule to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListSecurityFilters - -
- - -Retrieve configured security filters from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateSecurityFilter - -
- - -Create a security filter using Datadog's API. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteSecurityFilter - -
- - -Delete a specific security filter in Datadog. - -**Parameters** - -- **security_filter_id** (`string`, required) The ID of the security filter to delete in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetSecurityFilterDetails - -
- - -Retrieve the details of a specific security filter. - -**Parameters** - -- **security_filter_id** (`string`, required) The unique identifier for the security filter to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateSecurityFilter - -
- - -Update a specific security filter's configuration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **security_filter_id** (`string`, optional) The ID of the specific security filter to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListSuppressionRules - -
- - -Retrieve the list of security monitoring suppression rules. - -**Parameters** - -- **suppression_query_string** (`string`, optional) A query string to filter suppression rules. Use to specify search criteria. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateSuppressionRule - -
- - -Create a new security monitoring suppression rule. - -**Parameters** - -- **enable_suppression_rule** (`boolean`, required) Enable the suppression rule. Use true to enable, false to disable. -- **rule_query** (`string`, required) The rule criteria for the suppression rule using detection rules syntax. -- **suppression_rule_name** (`string`, required) The name of the suppression rule to be created. -- **data_exclusion_query** (`string`, optional) An exclusion query for input data to ignore events in suppression rules, applicable to logs, Agent events, etc. -- **expiration_date_unix_ms** (`integer`, optional) A Unix millisecond timestamp for rule expiration. After this date, the rule will not suppress signals. -- **resource_type** (`string`, optional) The type of the resource, which should always be `suppressions`. -- **start_date_timestamp** (`integer`, optional) A Unix millisecond timestamp indicating when the suppression rule begins to suppress signals. -- **suppression_query** (`string`, optional) The query used to suppress signals in the security rule. Matches are not triggered. -- **suppression_rule_description** (`string`, optional) A description for the suppression rule. Provide a clear and concise explanation of the rule's purpose. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetFutureRuleSuppressions - -
- - -Retrieve suppressions affecting a future security rule. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetSuppressionsForRule - -
- - -Retrieve suppressions affecting a specific rule by ID. - -**Parameters** - -- **rule_id** (`string`, required) The unique identifier of the specific rule for which to retrieve suppressions. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ValidateSuppressionRule - -
- - -Validate a suppression rule in Datadog's monitoring system. - -**Parameters** - -- **is_suppression_rule_enabled** (`boolean`, required) Indicates whether the suppression rule is currently active. -- **suppression_rule_name** (`string`, required) The name of the suppression rule to be validated. -- **suppression_rule_query** (`string`, required) The rule query for the suppression rule, using detection rules search bar syntax. -- **exclusion_query_on_input_data** (`string`, optional) An exclusion query for input data, such as logs or events. Events matching this are ignored by detection rules in the suppression rule. -- **resource_type** (`string`, optional) Defines the type of the resource. Always set to `suppressions`. -- **suppression_query** (`string`, optional) The query for the suppression rule. Signals matching this query are suppressed, using Signals Explorer syntax. -- **suppression_rule_description** (`string`, optional) A text description of the suppression rule, explaining its purpose and details. -- **suppression_rule_expiration_date** (`integer`, optional) A Unix millisecond timestamp for when the suppression rule expires and stops suppressing signals. -- **suppression_rule_start_date** (`integer`, optional) Unix millisecond timestamp for the start date of the suppression rule, when it begins suppressing signals. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteSuppressionRule - -
- - -Delete a specific suppression rule in Datadog. - -**Parameters** - -- **suppression_rule_id** (`string`, required) The unique identifier of the suppression rule to be deleted in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetSuppressionRuleDetails - -
- - -Get details of a specific security suppression rule. - -**Parameters** - -- **suppression_rule_id** (`string`, required) The unique ID of the suppression rule you wish to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateSuppressionRule - -
- - -Update a specific suppression rule in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **suppression_rule_id** (`string`, optional) The unique identifier of the suppression rule to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListSecurityMonitoringRules - -
- - -Retrieve a list of security monitoring rules. - -**Parameters** - -- **page_number** (`integer`, optional) The specific page number to return when listing the security monitoring rules. -- **page_size** (`integer`, optional) Size for a given page. The maximum allowed value is 100. Use an integer value. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateSecurityMonitoringRule - -
- - -Create a detection rule for monitoring security events. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ConvertRuleJsonToTerraform - -
- - -Converts Datadog security rules from JSON to Terraform format. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.TestSecurityRule - -
- - -Test a security monitoring rule. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ValidateSecurityMonitoringRule - -
- - -Validate a detection rule in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteSecurityMonitoringRule - -
- - -Delete an existing security monitoring rule. - -**Parameters** - -- **security_rule_id** (`string`, required) The unique identifier of the security rule to be deleted. Default rules cannot be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetSecurityMonitoringRuleDetails - -
- - -Retrieve detailed information about a specific security rule. - -**Parameters** - -- **security_rule_id** (`string`, required) The unique identifier for the security monitoring rule you want to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateSecurityMonitoringRule - -
- - -Update an existing Datadog security monitoring rule. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **security_rule_id** (`string`, optional) The ID of the security monitoring rule to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ConvertSecurityRuleToTerraform - -
- - -Convert existing security rule from JSON to Terraform. - -**Parameters** - -- **rule_id** (`string`, required) The ID of the Datadog security monitoring rule to convert. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.TestSecurityMonitoringRule - -
- - -Test an existing security monitoring rule in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **security_monitoring_rule_id** (`string`, optional) The ID of the existing security monitoring rule to test in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetRuleVersionHistory - -
- - -Retrieve a rule's version history. - -**Parameters** - -- **rule_id** (`string`, required) The unique identifier for the rule. Required to fetch its version history in Datadog. -- **page_number** (`integer`, optional) The specific page number to return in the results. -- **page_size** (`integer`, optional) Size for a given page, maximum value is 100. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListSecuritySignals - -
- - -Retrieve security signals that match a search query. - -**Parameters** - -- **cursor_based_pagination** (`string`, optional) Cursor for pagination to continue retrieving results from a previous query. -- **max_security_signals_response** (`integer`, optional) Specify the maximum number of security signals to return in the response. -- **max_timestamp_for_security_signals** (`string`, optional) Specify the maximum timestamp for retrieving security signals. -- **minimum_timestamp** (`string`, optional) The minimum timestamp to filter security signals. Format: ISO 8601 string. -- **result_sort_order** (`string`, optional) Specify the sort order for the security signals. Use 'timestamp' for ascending order, '-timestamp' for descending order. -- **search_query_for_security_signals** (`string`, optional) The search query string used to filter security signals from Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SearchSecuritySignals - -
- - -Retrieve security signals based on a search query. - -**Parameters** - -- **maximum_signals_per_response** (`integer`, optional) The maximum number of security signals to return in the response. -- **maximum_timestamp_for_signals** (`string`, optional) The latest date and time for security signals to be included in the search results, formatted as a string. -- **minimum_timestamp** (`string`, optional) The minimum timestamp for requested security signals. Use ISO 8601 format, e.g., '2023-10-05T14:48:00Z'. -- **pagination_cursor** (`string`, optional) The cursor to continue listing results from the previous query. Use it for paginating results. -- **search_query** (`string`, optional) A string used to search and filter the security signals based on specific criteria. -- **sort_order** (`string`, optional) Specify how to sort the security signals. Use 'timestamp' for ascending and '-timestamp' for descending order. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetSecuritySignalDetails - -
- - -Retrieve details of a security monitoring signal. - -**Parameters** - -- **signal_id** (`string`, required) The unique identifier for the security monitoring signal to retrieve details for. This ID is used to specify which signal's details to fetch. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.EditSignalAssignee - -
- - -Modify the triage assignee of a security signal. - -**Parameters** - -- **assignee_uuid** (`string`, required) UUID assigned by Datadog to identify the user account for the signal's assignee. -- **signal_id** (`string`, required) The unique identifier for the security signal to modify its assignee. -- **assignee_gravatar_icon** (`string`, optional) URL for the Gravatar icon associated with the user account. -- **assignee_name** (`string`, optional) The name for the user account to be assigned the security signal. -- **signal_version_number** (`integer`, optional) Integer representing the version of the updated signal. If the server-side version is higher, the update will be rejected. -- **user_account_handle** (`string`, optional) The handle for the user account to be assigned the security signal. -- **user_account_numerical_id** (`integer`, optional) Numerical ID assigned by Datadog to the user account. Required for identifying the assignee. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.EditSecuritySignalIncidents - -
- - -Modify incidents linked to a security signal. - -**Parameters** - -- **incident_ids** (`array[integer]`, required) An array of incident IDs to associate with the security signal. -- **signal_id** (`string`, required) The unique identifier for the security signal to modify. -- **signal_version** (`integer`, optional) Version of the updated signal. Ensure the client-side version is not lower than the server-side version to avoid rejection. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ChangeSignalState - -
- - -Change the triage state of a security signal. - -**Parameters** - -- **new_triage_state** (`string`, required) The new triage state of the signal. Valid options are 'open', 'archived', or 'under_review'. -- **signal_id** (`string`, required) The unique identifier of the security signal to be updated. -- **archive_comment** (`string`, optional) Optional comment to display on archived signals. Useful for context or documentation. -- **archive_reason** (`string`, optional) Reason for archiving the signal. Options include 'none', 'false_positive', 'testing_or_maintenance', 'investigated_case_opened', or 'other'. -- **event_type** (`string`, optional) The type of event, must be 'signal_metadata'. -- **security_signal_unique_id** (`string`, optional) The unique identifier for the security signal to be modified. -- **updated_signal_version** (`integer`, optional) The version number of the signal to update. The update is rejected if the server's version is higher. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListScanningGroups - -
- - -Retrieve all scanning groups in your organization with Datadog's API. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ReorderScanningGroups - -
- - -Reorder the list of scanning groups. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateScanningGroup - -
- - -Create a new scanning group in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteScanningGroup - -
- - -Delete a specified scanning group in Datadog. - -**Parameters** - -- **group_id** (`string`, required) The ID of the scanning group to be deleted. -- **api_version** (`integer`, optional) Optional version number of the API to use for the request. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateScanningGroup - -
- - -Update a scanning group's rule order in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **group_id** (`string`, optional) The ID of the scanning group whose rules are being updated. This is required to identify the group. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateScanningRule - -
- - -Create a scanning rule in a sensitive data group. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteScanningRule - -
- - -Delete a specific scanning rule by ID. - -**Parameters** - -- **rule_id** (`string`, required) The unique identifier for the scanning rule to be deleted. -- **api_version** (`integer`, optional) Specify the API version to use for the request (optional). - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateScanningRule - -
- - -Update a scanning rule in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **rule_id** (`string`, optional) The unique identifier for the scanning rule to be updated. This value is required. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListStandardPatterns - -
- - -Retrieve all standard patterns for sensitive data scanning. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateServiceAccount - -
- - -Create a service account for your organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListServiceAccountAppKeys - -
- - -Retrieve all app keys for a specific service account. - -**Parameters** - -- **service_account_id** (`string`, required) The unique identifier for the service account whose application keys are to be retrieved. -- **created_at_start_filter** (`string`, optional) Include application keys created on or after this date. Use format YYYY-MM-DD. -- **created_before_date** (`string`, optional) Include application keys created on or before this date. -- **filter_string_for_application_keys** (`string`, optional) Specify a string to filter the application keys by. Only keys containing the string will be shown. -- **page_number** (`integer`, optional) Specify the page number to be returned. -- **page_size** (`integer`, optional) Number of application keys to retrieve per page. The maximum allowed value is 100. -- **sort_order_attribute** (`string`, optional) Attribute to sort application keys. Prefix with '-' for descending order. Options: created_at, last4, name. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateServiceAccountAppKey - -
- - -Create an application key for a service account. - -**Parameters** - -- **application_key_name** (`string`, required) The name for the application key to be created for the service account. -- **service_account_identifier** (`string`, required) The unique identifier of the service account for which the application key will be created. -- **application_key_scopes** (`array[string]`, optional) List of scopes to assign to the application key for specific permissions. -- **application_keys_resource_type** (`string`, optional) Specify the resource type for the application key. This should always be 'application_keys'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteServiceAccountAppKey - -
- - -Delete an application key from a service account. - -**Parameters** - -- **application_key_id** (`string`, required) The unique identifier for the application key to be deleted. -- **service_account_id** (`string`, required) The unique identifier for the service account from which the application key will be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetDatadogServiceAccountAppKey - -
- - -Retrieve a specific application key for a Datadog service account. - -**Parameters** - -- **application_key_id** (`string`, required) The ID of the application key for the Datadog service account. -- **service_account_id** (`string`, required) The unique identifier for the Datadog service account to retrieve the application key from. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.EditServiceAccountKey - -
- - -Edit an application key for a service account. - -**Parameters** - -- **app_key_identifier** (`string`, required) The unique identifier of the application key to be edited. -- **application_key_id** (`string`, required) The unique identifier for the application key to be edited. -- **service_account_id** (`string`, required) The unique identifier for the service account. -- **application_key_name** (`string`, optional) Name of the application key to be updated. -- **application_key_resource_type** (`string`, optional) Specify the type of resource for the application key. Must be 'application_keys'. -- **application_key_scopes** (`array[string]`, optional) Array of scopes to grant the application key. Each scope is a string representing a permission or capability. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetServiceDefinitions - -
- - -Retrieve all service definitions from the Datadog Service Catalog. - -**Parameters** - -- **page_number** (`integer`, optional) The specific page number to retrieve from the service definitions list. -- **page_size** (`integer`, optional) Specify the number of items per page. The maximum allowed value is 100. -- **response_schema_version** (`string`, optional) Specifies the version of the schema to be returned in the response. Acceptable values are 'v1', 'v2', 'v2.1', or 'v2.2'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateOrUpdateServiceDefinitions - -
- - -Create or update service definitions in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteServiceDefinition - -
- - -Deletes a service definition from Datadog. - -**Parameters** - -- **service_name** (`string`, required) The name of the service to delete from the Datadog Service Catalog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetServiceDefinition - -
- - -Retrieve a service definition from Datadog's Service Catalog. - -**Parameters** - -- **service_name** (`string`, required) The exact name of the service to retrieve from Datadog's Service Catalog. -- **desired_schema_version** (`string`, optional) Specify the schema version for the response. Options: 'v1', 'v2', 'v2.1', 'v2.2'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListSecurityMonitoringSignals - -
- - -Retrieve a list of security monitoring hist signals. - -**Parameters** - -- **max_security_signals** (`integer`, optional) The maximum number of security signals to return in the response. Specify an integer value. -- **maximum_timestamp_for_signals** (`string`, optional) The latest timestamp to fetch security signals up to, formatted as a string. -- **minimum_timestamp** (`string`, optional) The minimum timestamp for requested security signals in ISO 8601 format. -- **results_page_cursor** (`string`, optional) Cursor for paginated results, using the cursor from the previous query. -- **search_query** (`string`, optional) The search query to filter security signals. Use this to specify criteria for filtering the results. -- **sort_order** (`string`, optional) Determine the order of security signals: 'timestamp' for ascending, '-timestamp' for descending. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.FindSecurityAlerts - -
- - -Retrieve historical security monitoring signals from Datadog. - -**Parameters** - -- **max_security_signals** (`integer`, optional) Specify the maximum number of security signals to retrieve in the response. -- **maximum_timestamp_for_signals** (`string`, optional) The maximum timestamp for requested security signals, formatted as a string. -- **minimum_timestamp** (`string`, optional) The start timestamp for filtering requested security signals. Use ISO 8601 format. -- **pagination_cursor** (`string`, optional) String used to fetch the next set of results based on a previous query's cursor. -- **search_query_for_security_signals** (`string`, optional) Search query to filter and list specific security signals. Use keywords and operators to refine results. -- **sort_order** (`string`, optional) The criteria for sorting security signals, either 'timestamp' or '-timestamp'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetHistSignalDetails - -
- - -Retrieve details of a specific hist signal. - -**Parameters** - -- **historical_signal_id** (`string`, required) The ID of the historical signal to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListHistoricalJobs - -
- - -Retrieve a list of historical SIEM detection jobs from Datadog. - -**Parameters** - -- **filter_query** (`string`, optional) A query string to filter items in the list of historical jobs. Use to specify criteria for narrowing down the results. -- **page_number** (`integer`, optional) The specific page number to return from the results. -- **page_size** (`integer`, optional) Specifies the number of results per page, with a maximum of 100. -- **sort_order** (`string`, optional) Specifies the order in which jobs are returned, such as ascending or descending. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RunHistoricalDetectionJob - -
- - -Initiate a historical detection job in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ConvertJobResultToSignal - -
- - -Convert a job result to a signal for detection purposes. - -**Parameters** - -- **job_result_ids** (`array[string]`, optional) Array of job result IDs to convert into signals. -- **notifications_sent** (`array[string]`, optional) List of notification types sent related to the signal. -- **payload_type** (`string`, optional) Type of payload, must be 'historicalDetectionsJobResultSignalConversion'. -- **request_id** (`string`, optional) A unique identifier for the request that is used to convert the job result to a signal. -- **signal_message** (`string`, optional) Message content of the generated signals to be converted. -- **signal_severity** (`string`, optional) Severity level of the security signal. Accepts values: info, low, medium, high, critical. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteHistoricalDetectionJob - -
- - -Delete an existing historical detection job in Datadog. - -**Parameters** - -- **job_id** (`string`, required) The unique identifier for the historical job to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetHistoricalJobDetails - -
- - -Retrieve details of a specific historical job from Datadog. - -**Parameters** - -- **job_id** (`string`, required) The unique identifier for the job whose details you want to retrieve. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CancelHistoricalJob - -
- - -Cancel a historical job in Datadog. - -**Parameters** - -- **job_id** (`string`, required) The unique identifier of the historical job to be canceled in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetHistoricalSecuritySignals - -
- - -Retrieve historical security signals by job ID. - -**Parameters** - -- **job_identifier** (`string`, required) The unique identifier for the job whose historical security signals you want to retrieve. -- **max_security_signals** (`integer`, optional) The maximum number of security signals to retrieve in the response. -- **max_timestamp_for_signals** (`string`, optional) The latest timestamp for the requested security signals. -- **minimum_timestamp** (`string`, optional) The earliest timestamp for retrieving security signals. Format should be ISO 8601 (e.g., '2023-10-01T00:00:00Z'). -- **pagination_cursor** (`string`, optional) Use the cursor from the previous query to paginate results. -- **security_signal_search_query** (`string`, optional) The search query to filter security signals. -- **signal_sort_order** (`string`, optional) Specify the sort order of the security signals, either 'timestamp' for ascending or '-timestamp' for descending. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateSloReportJob - -
- - -Initiate the generation of an SLO report in Datadog. - -**Parameters** - -- **from_timestamp_epoch_seconds** (`integer`, required) The starting timestamp for the SLO report in epoch seconds. Specifies when the report should begin. -- **report_to_timestamp** (`integer`, required) The epoch timestamp representing the end time for the SLO report. -- **slo_query_filter** (`string`, required) The query string to filter SLO results, e.g., 'service:web-app' or 'slo-name'. -- **report_generation_frequency** (`string`, optional) The frequency for generating report data. Options: daily, weekly, monthly. -- **report_timezone** (`string`, optional) The timezone to determine the start and end of each interval for the SLO report. It affects how intervals such as weekly start at 12am on Sunday in the specified timezone. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DownloadSloReport - -
- - -Download a completed SLO report from Datadog. - -**Parameters** - -- **report_id** (`string`, required) The unique identifier for the SLO report job to download. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetSloReportStatus - -
- - -Retrieve the status of a specific SLO report job. - -**Parameters** - -- **slo_report_id** (`string`, required) The unique identifier of the SLO report job to check its current status. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetSparkJobRecommendations - -
- - -Retrieve resource recommendations for a Spark job. - -**Parameters** - -- **spark_job_service_name** (`string`, required) The service name for the Spark job to retrieve recommendations. -- **spark_job_shard_identifier** (`string`, required) The shard identifier for a Spark job, differentiating jobs within the same service with distinct resource requirements. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AggregateSpansMetrics - -
- - -Aggregate spans to compute metrics and timeseries. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListLatestSpans - -
- - -Retrieve the latest spans based on a search query. - -**Parameters** - -- **max_spans_limit** (`integer`, optional) The maximum number of spans to return in the response. Specify an integer value to limit the results. -- **max_timestamp_for_spans** (`string`, optional) Maximum timestamp for requested spans. Use ISO8601, date math, or millisecond timestamps. -- **minimum_timestamp** (`string`, optional) Minimum timestamp for requested spans. Accepts ISO8601, date math, or timestamps in milliseconds. -- **pagination_cursor** (`string`, optional) Cursor for paginating results, provided by the previous query execution. -- **sort_order_of_spans** (`string`, optional) Specify the order of spans in the results. Use 'timestamp' for ascending and '-timestamp' for descending order. -- **span_search_query** (`string`, optional) A search query following the spans syntax to filter the spans you want to retrieve. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListSpans - -
- - -Fetch spans based on a search query with pagination. - -**Parameters** - -- **end_time_filter** (`string`, optional) The maximum time for requested spans. Supports ISO8601, date math, or timestamps in milliseconds. -- **max_number_of_spans** (`integer`, optional) Maximum number of spans to return in the response. Integer value expected. -- **minimum_time_filter** (`string`, optional) The minimum time for the requested spans. Supports ISO8601, date math, and timestamps (milliseconds). -- **pagination_cursor** (`string`, optional) A string cursor to fetch the next set of results from the previous query. -- **resource_type** (`string`, optional) The type of resource; must be set to 'search_request' for the query. -- **sort_order_for_spans** (`string`, optional) Set the sort order for querying spans. Use 'timestamp' for ascending or '-timestamp' for descending. -- **span_search_query** (`string`, optional) The search query string following the span search syntax to filter spans. -- **time_offset_seconds** (`integer`, optional) The time offset in seconds to apply to the query for adjusting the time frame. -- **timezone_option** (`string`, optional) Specify the timezone using GMT, UTC, an offset (e.g., UTC+1), or a Timezone Database ID (e.g., America/New_York). - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetOnDemandConcurrencyCap - -
- - -Retrieve the on-demand concurrency cap value from Datadog. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SetOnDemandConcurrencyCap - -
- - -Update the on-demand concurrency cap setting in Datadog. - -**Parameters** - -- **on_demand_concurrency_cap_value** (`number`, optional) Specify the new value for the on-demand concurrency cap in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListTagPipelineRulesets - -
- - -Retrieve all tag pipeline rulesets for the organization. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateTagPipelineRuleset - -
- - -Create a tag pipeline ruleset with specified rules. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ReorderTagPipelineRulesets - -
- - -Change the execution order of tag pipeline rulesets. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ValidateTagPipelineQuery - -
- - -Validate the syntax and structure of a tag pipeline query. - -**Parameters** - -- **query_attributes** (`string`, optional) The tag pipeline query to validate. Ensure it is correctly structured and free of syntax errors. -- **query_request_data_id** (`string`, optional) The unique identifier for the RulesValidateQueryRequestData. -- **query_resource_type** (`string`, optional) Specify the type of resource for query validation, always use 'validate_query'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteTagPipelineRuleset - -
- - -Delete an existing tag pipeline ruleset by ID. - -**Parameters** - -- **ruleset_id** (`string`, required) The unique identifier for the tag pipeline ruleset to be deleted. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetTagPipelineRuleset - -
- - -Retrieve a specific tag pipeline ruleset by its ID. - -**Parameters** - -- **ruleset_identifier** (`string`, required) The unique identifier for the tag pipeline ruleset to retrieve. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateTagPipelineRuleset - -
- - -Update an existing tag pipeline ruleset with new rules. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **ruleset_identifier** (`string`, optional) A unique string identifier for the tag pipeline ruleset to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListTeams - -
- - -Retrieve all teams with optional filters. - -**Parameters** - -- **fields_to_fetch** (`array[string]`, optional) List of fields to retrieve for each team. -- **include_only_user_teams** (`boolean`, optional) When true, only teams the current user belongs to are returned. -- **include_related_resources** (`array[string]`, optional) Specify related resources to include. Options: `team_links`, `user_team_permissions`. -- **page_number** (`integer`, optional) The specific page number to return for the list of teams. -- **page_size** (`integer`, optional) Specify the number of teams to return per page, up to a maximum of 100. -- **search_query_for_teams** (`string`, optional) Search for teams by name, handle, or team member email. -- **sort_order** (`string`, optional) Determines the order of the returned teams. Options: 'name', '-name', 'user_count', '-user_count'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateNewTeam - -
- - -Create a new team and add specified members. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SyncDatadogTeamsWithGithub - -
- - -Link existing Datadog teams with GitHub teams by name matching. - -**Parameters** - -- **source_platform** (`string`, required) Specify the external source platform for team synchronization. Only "github" is supported. -- **synchronization_type** (`string`, required) Type of synchronization operation. Only "link" is supported to match existing teams by name. -- **team_sync_bulk_type** (`string`, required) Specifies the type for bulk team synchronization. Use 'team_sync_bulk'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListAllMemberTeams - -
- - -Retrieve all member teams for a super team. - -**Parameters** - -- **super_team_identifier** (`string`, required) The unique identifier for the super team whose member teams you want to retrieve. -- **fields_to_fetch** (`array[string]`, optional) A list of field names to be fetched for each team. Specify the fields you need details on. -- **page_number** (`integer`, optional) Specific page number to return in the list of teams. -- **page_size** (`integer`, optional) Size for a given page. Must be an integer up to 100. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AddMemberTeamToSuperTeam - -
- - -Add a member team to a super team. - -**Parameters** - -- **member_team_identifier** (`string`, required) The unique identifier of the member team to be added to the super team. -- **super_team_identifier** (`string`, required) The ID of the super team to which the member team will be added. It is a string value. -- **member_team_type** (`string`, optional) Specifies the type of member team to be added. Must be 'member_teams'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RemoveTeamMember - -
- - -Removes a member team from a super team. - -**Parameters** - -- **member_team_identifier** (`string`, required) The unique ID of the member team to be removed from the super team. -- **super_team_id** (`string`, required) The unique identifier for the super team from which a member team will be removed. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteTeam - -
- - -Remove a team using its ID in Datadog. - -**Parameters** - -- **team_identifier** (`string`, required) The unique identifier for the team to be deleted in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetSingleTeamInfo - -
- - -Retrieve details of a team using its ID. - -**Parameters** - -- **team_id** (`string`, required) The unique identifier for the team. Provide this to retrieve specific team details. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateTeamInfo - -
- - -Update and modify a team's configuration in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_identifier** (`string`, optional) The unique identifier for the team to be updated. Must be a valid string representing the team's ID in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetAllTeamLinks - -
- - -Retrieve all links for a specific team. - -**Parameters** - -- **team_identifier** (`string`, required) The unique identifier for the team whose links are to be retrieved. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AddTeamLink - -
- - -Add a new link to a Datadog team. - -**Parameters** - -- **link_label** (`string`, required) The label for the link to be added to the team. This should be a descriptive text for the link. -- **link_url** (`string`, required) The URL to be added as a link for the team. This should be a valid web address. -- **target_team_id** (`string`, required) The unique identifier for the team to which the link will be added. -- **link_position** (`integer`, optional) The position of the link in the team's list, used for sorting links. -- **team_id_for_link** (`string`, optional) ID of the team the link is associated with. This should be a unique identifier for the specific team to which you want to add the link. -- **team_link_type** (`string`, optional) Specify the type of team link. Must be 'team_links'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RemoveTeamLink - -
- - -Remove a link from a team. - -**Parameters** - -- **link_identifier** (`string`, required) The unique identifier of the link to be removed from the team. -- **team_id** (`string`, required) The unique identifier of the team from which the link will be removed. Required for identifying the specific team. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetTeamLink - -
- - -Retrieve a specific link for a team. - -**Parameters** - -- **link_id** (`string`, required) The unique identifier for the specific link you want to retrieve for a team in Datadog. -- **team_id** (`string`, required) The unique identifier for the team whose link you want to retrieve. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateTeamLink - -
- - -Updates a team link in Datadog. - -**Parameters** - -- **link_identifier** (`string`, required) The unique identifier for the link you want to update. -- **link_label** (`string`, required) Specify the label for the link. This is used to identify or name the link within the team's list of links. -- **link_url** (`string`, required) The URL for the team link. Provide a valid, well-formed URL. -- **team_identifier** (`string`, required) The unique string identifier for the team related to the link. -- **link_position** (`integer`, optional) The position of the link in the list, used to sort links for the team. -- **team_id_associated_with_link** (`string`, optional) The ID of the team associated with the link to be updated. -- **team_link_type** (`string`, optional) Specifies the type of team link. Must be 'team_links'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetTeamMembers - -
- - -Retrieve a list of team members. - -**Parameters** - -- **team_id** (`string`, required) The unique identifier for the team whose members are to be retrieved. -- **page_number** (`integer`, optional) The specific page number to retrieve from the list of team members. -- **page_size** (`integer`, optional) Specify the number of team members to return per page. Maximum is 100. -- **search_query** (`string`, optional) Search query for filtering members by user email or name. -- **sort_order** (`string`, optional) Specify the order of returned team memberships. Options include 'manager_name', '-manager_name', 'name', '-name', 'handle', '-handle', 'email', '-email'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.AddUserToTeam - -
- - -Add a user to a team in Datadog. - -**Parameters** - -- **team_id** (`string`, required) The ID of the team to which the user will be added. This is required to specify the target team. -- **provisioned_user_or_service_account_id** (`string`, optional) UUID of the User or Service Account who provisioned the team membership, or null if done via SAML mapping. -- **provisioning_mechanism** (`string`, optional) Mechanism responsible for provisioning the team relationship. Possible values: null for user-added, "service_account" for service account, "saml_mapping" for SAML mapping. -- **team_identifier** (`string`, optional) The unique ID of the team to which the user will be added. -- **team_membership_type** (`string`, optional) Specify the type of team membership. Use 'team_memberships'. -- **user_id** (`string`, optional) The ID of the user to be added to the team in Datadog. -- **user_role_in_team** (`string`, optional) Specifies the user's role within the team. Currently, only 'admin' is supported as a role. -- **user_team_type** (`string`, optional) Specifies the type for the team relationship, fixed as 'team'. -- **user_team_user_type** (`string`, optional) Set to 'users' as the type for the user in the team. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.RemoveUserFromTeam - -
- - -Remove a user from a specified team. - -**Parameters** - -- **team_identifier** (`string`, required) A string representing the unique identifier of the team from which the user will be removed. -- **user_identifier_for_removal** (`string`, required) The unique identifier of the user to be removed from the team. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateUserTeamMembership - -
- - -Update a user's membership attributes on a team. - -**Parameters** - -- **team_id** (`string`, required) The unique identifier of the team to update the user's membership attributes. -- **user_identifier** (`string`, required) The unique identifier for the user whose membership is being updated. This is required to specify which user's attributes will be changed. -- **provisioning_identifier** (`string`, optional) UUID of the User or Service Account who provisioned this team membership, or null if provisioned via SAML mapping. -- **provisioning_mechanism** (`string`, optional) Specifies how the team relationship was provisioned. Options: null, "service_account", "saml_mapping". -- **team_membership_type** (`string`, optional) Specify the type of team membership. The value must be 'team_memberships'. -- **user_role_in_team** (`string`, optional) Specify the user's role within the team. Accepts 'admin'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetTeamPermissionSettings - -
- - -Retrieve permission settings for a specific team. - -**Parameters** - -- **team_identifier** (`string`, required) The unique identifier for the team whose permission settings are to be retrieved. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateTeamPermission - -
- - -Update a team's permission setting in Datadog. - -**Parameters** - -- **action_to_update** (`string`, required) The specific action to update in the team's permission setting, specifying what can be performed. -- **team_identifier** (`string`, required) The unique identifier of the team for which the permission setting will be updated. -- **allowed_user_type_for_action** (`string`, optional) Specify the user type permitted to perform the action. Options: admins, members, organization, user_access_manage, teams_manage. -- **team_permission_setting_type** (`string`, optional) Specify the team permission setting type. Required value: 'team_permission_settings'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SearchFlakyTests - -
- - -Retrieve a list of flaky tests with pagination support. - -**Parameters** - -- **filter_query** (`string`, optional) Search query for filtering flaky tests using log syntax. Keys include 'flaky_test_state', 'flaky_test_category', '@test.name', '@test.suite', '@test.module', '@test.service', '@git.repository.id_v2', '@git.branch', '@test.codeowners', 'env'. -- **maximum_flaky_tests_limit** (`integer`, optional) Specify the maximum number of flaky tests to include in the response. -- **pagination_cursor** (`string`, optional) A cursor from the previous request to fetch the following results. -- **request_data_type** (`string`, optional) Defines the data structure type for the Flaky Tests Search request. Use 'search_flaky_tests_request'. -- **sort_flaky_tests** (`string`, optional) Sort flaky test results by specified criteria: FQN, first or last flaked, failure rate, etc. Use prefixed '-' for descending order. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetBillingDimensionMapping - -
- - -Retrieve the mapping of billing dimensions to API keys. - -**Parameters** - -- **billing_dimension_view** (`string`, optional) Specify 'active' for current contract mappings or 'all' for all mappings. Defaults to 'active'. -- **billing_month** (`string`, optional) Date in ISO-8601 format (UTC) for the starting month of mappings. Defaults to the current month. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetEstimatedCostDatadog - -
- - -Retrieve estimated cost data for multi-org Datadog accounts. - -**Parameters** - -- **cost_end_month** (`string`, optional) Specify the ending month for the estimated cost in ISO-8601 format, UTC (`[YYYY-MM]`). -- **cost_view_level** (`string`, optional) Specify if cost is broken down at the parent-org level (summary) or sub-org level (sub-org). Defaults to summary. -- **end_date** (`string`, optional) Specify the end date for cost estimation in ISO-8601 format (YYYY-MM-DD). It marks the last day of the period for which you need cost data. -- **include_connected_accounts** (`boolean`, optional) Include accounts connected as partner customers in Datadog's partner network program. Defaults to `false`. -- **initial_cost_month** (`string`, optional) ISO-8601 month format `[YYYY-MM]`, specifying the start month for cost data. Cannot be older than two months. Provide `end_month` for month-over-month cost. -- **start_date_for_cost** (`string`, optional) Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` for cost beginning this day. Either specify `start_date_for_cost` or `start_month_for_cost`, but not both. The date cannot be more than two months in the past. Use with `end_date_for_cost` for cumulative day-over-day cost. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetHistoricalCostByOrg - -
- - -Retrieve historical cost data across different organizations. - -**Parameters** - -- **start_month_utc** (`string`, required) ISO-8601 date format `[YYYY-MM]`, UTC timezone, to specify the start month for cost calculation. -- **cost_view_level** (`string`, optional) Specify cost breakdown level: 'summary' for parent-org or 'sub-org' for sub-org level. Defaults to 'summary'. -- **end_month** (`string`, optional) Datetime in ISO-8601 format, UTC, precise to month `[YYYY-MM]` indicating the ending month for cost data. -- **include_connected_accounts** (`boolean`, optional) Include accounts connected as partner customers in Datadog's network. Defaults to false. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetHourlyUsageByProductFamily - -
- - -Fetch hourly usage data by product family from Datadog. - -**Parameters** - -- **product_families_to_retrieve** (`string`, required) Comma-separated list of product families to retrieve usage data for. Available options include all, analyzed_logs, application_security, etc. Note: audit_logs is deprecated. -- **start_timestamp** (`string`, required) Datetime in ISO-8601 format, UTC, precise to hour. Specify the start of usage collection, e.g., '2023-10-05T14'. -- **end_timestamp** (`string`, optional) Datetime in ISO-8601 format (UTC) for usage ending before this hour. Format: [YYYY-MM-DDThh]. -- **include_connected_accounts** (`boolean`, optional) Include accounts connected as partner customers in the response. Defaults to false. -- **include_descendants_usage** (`boolean`, optional) Include child organization usage in the response. Set to true to include, false to exclude. -- **include_usage_breakdown** (`boolean`, optional) Boolean to include breakdown of usage by subcategories for product family logs. Defaults to false. -- **maximum_results_limit** (`integer`, optional) Set the maximum number of results to return per page, between 1 and 500. Defaults to 500. -- **next_record_id** (`string`, optional) ID to continue listing results from the last query. Use the ID from previous queries to paginate through results. -- **product_family_versions** (`string`, optional) Comma-separated list of product family versions in the format `product_family:version`. Defaults to latest if not specified. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetProjectedCost - -
- - -Retrieve projected cost for multi-org and single root-org accounts. - -**Parameters** - -- **cost_view_level** (`string`, optional) Specify cost breakdown level: `summary` for parent-org or `sub-org` for sub-org level. Defaults to `summary`. -- **include_connected_accounts** (`boolean`, optional) Include accounts connected as partner customers in the Datadog partner network. Defaults to `false`. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.SendInvitations - -
- - -Invite users to join the organization via email. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetUserInvitation - -
- - -Retrieve a user invitation using its UUID. - -**Parameters** - -- **user_invitation_uuid** (`string`, required) The unique UUID of the user invitation required to retrieve its details. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListAllOrganizationUsers - -
- - -Retrieve all users in the organization including inactive ones. - -**Parameters** - -- **order_users_by** (`string`, optional) Specify the user attribute to order results by. Options include `name`, `modified_at`, and `user_count`. Use a negative sign for descending order, e.g., `-name`. -- **page_number** (`integer`, optional) The specific page number of users to return. Use for pagination. -- **page_size** (`integer`, optional) Specifies the number of users to be returned in a single page. The maximum value allowed is 100. -- **sort_direction** (`string`, optional) Direction of sort for user listing. Options: 'asc' for ascending, 'desc' for descending. -- **user_filter_string** (`string`, optional) String to filter users by. Defaults to no filtering if blank or omitted. -- **user_status_filter** (`string`, optional) Filter users by status. Comma separated values: `Active`, `Pending`, `Disabled`. Defaults to no filtering. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateOrganizationUser - -
- - -Create a user for your organization in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DisableUser - -
- - -Disable a specific user in the system. - -**Parameters** - -- **user_identifier** (`string`, required) The unique identifier of the user to be disabled. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetUserDetails - -
- - -Retrieve details of a specific user by their user ID. - -**Parameters** - -- **user_id** (`string`, required) The unique identifier for the user whose details are being retrieved. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateDatadogUser - -
- - -Update a user's information in Datadog. - -**Parameters** - -- **user_id** (`string`, required) The unique identifier for the user to be updated in Datadog. -- **user_identifier** (`string`, required) The unique ID of the user to be updated in Datadog. -- **disable_user** (`boolean`, optional) Boolean value to set if the user is disabled (true) or enabled (false). -- **user_email** (`string`, optional) The email address of the user to be updated in Datadog. -- **user_name** (`string`, optional) The name of the user to be updated in Datadog. -- **user_resource_type** (`string`, optional) Specifies the resource type for the user. Must be set to 'users'. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetUserOrganizations - -
- - -Retrieve a user's organizations and information. - -**Parameters** - -- **user_identifier** (`string`, required) The unique ID of the user whose organizations and information are to be retrieved. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetUserPermissions - -
- - -Retrieve a user's permissions from Datadog. - -**Parameters** - -- **user_identifier** (`string`, required) The unique identifier for the Datadog user whose permissions you want to retrieve. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetUserMemberships - -
- - -Retrieve a user's memberships from Datadog. - -**Parameters** - -- **user_uuid** (`string`, required) The unique identifier for the user whose memberships are to be retrieved. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CreateDatadogWorkflow - -
- - -Creates a new workflow in Datadog and returns its ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.DeleteWorkflow - -
- - -Delete a specified workflow by its ID. - -**Parameters** - -- **workflow_id** (`string`, required) The ID of the workflow to be deleted. Ensure it is a valid and existing workflow ID in Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetWorkflowById - -
- - -Retrieve workflow details using a unique ID. - -**Parameters** - -- **workflow_identifier** (`string`, required) The unique ID of the workflow to retrieve details for within Datadog. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.UpdateWorkflowById - -
- - -Update a specific workflow by its ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **workflow_identifier** (`string`, optional) The unique identifier for the workflow you wish to update in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ListWorkflowInstances - -
- - -Retrieve all instances of a specific workflow from Datadog. - -**Parameters** - -- **workflow_id** (`string`, required) The ID of the workflow to retrieve instances for. -- **page_number** (`integer`, optional) The specific page number to return when listing workflow instances. -- **page_size** (`integer`, optional) Size for a given page. Must be an integer with a maximum value of 100. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.ExecuteWorkflow - -
- - -Execute a specified workflow in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **workflow_identifier** (`string`, optional) The unique ID of the Datadog workflow to be executed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.GetWorkflowInstance - -
- - -Retrieve a specific workflow execution instance. - -**Parameters** - -- **workflow_id** (`string`, required) The unique identifier of the workflow to retrieve its specific execution details. -- **workflow_instance_id** (`string`, required) The ID of the specific workflow instance to retrieve. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## DatadogApi.CancelWorkflowInstance - -
- - -Cancel a specific execution of a workflow. - -**Parameters** - -- **workflow_id** (`string`, required) The unique ID of the workflow to cancel. It must be a valid string as per the API specifications. -- **workflow_instance_id** (`string`, required) The unique identifier of the workflow instance to be canceled. - -**Secrets** - -This tool requires the following secrets: `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, `DATADOG_BASE_URL`. You can obtain these from your [Datadog Organization Settings](https://app.datadoghq.com/organization-settings/api-keys) under API Keys and Application Keys. See the [Authentication section](#authentication) above for detailed instructions and the [Datadog API documentation](https://docs.datadoghq.com/account_management/api-app-keys/) for more information. - -## Reference - -Below is a reference of enumerations used by some of the tools in the DatadogApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - diff --git a/app/en/resources/integrations/development/e2b/page.mdx b/app/en/resources/integrations/development/e2b/page.mdx deleted file mode 100644 index 65adba90c..000000000 --- a/app/en/resources/integrations/development/e2b/page.mdx +++ /dev/null @@ -1,113 +0,0 @@ -# E2B - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade E2B MCP Server provides a pre-built set of tools for running code in a sandboxed environment. These tools make it easy to build agents and AI apps that can: - -- Run code in a sandboxed environment -- Create a static matplotlib chart - -## Available Tools - -These tools are currently available in the Arcade E2B MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## E2b.RunCode - -
- - -Run code in a sandbox and return the output. - -**Auth:** - -- **Environment Variables Required:** - - `E2B_API_KEY`: Your API key for authentication. - -**Parameters** - -- **`code`** _(string, required)_ The code to run. -- **`language`** _(string, optional)_ The language of the code. Valid values are 'python', 'js', 'r', 'java', 'bash'. Defaults to 'python'. - ---- - -## E2b.CreateStaticMatplotlibChart - -
- - -Run the provided Python code to generate a static matplotlib chart. The resulting chart is returned as a base64 encoded image. - -**Auth:** - -- **Environment Variables Required:** - - `E2B_API_KEY`: Your API key for authentication. - -**Parameters** - -- **`code`** _(string, required)_ The Python code to run. - -## Auth - -The Arcade E2B MCP Sever uses [E2B](https://e2b.dev/) to run code in a sandboxed environment. - -**Global Environment Variables:** - -- `E2B_API_KEY`: Your [E2B](https://e2b.dev/) API key. - - diff --git a/app/en/resources/integrations/development/figma/page.mdx b/app/en/resources/integrations/development/figma/page.mdx deleted file mode 100644 index 323ef1e6d..000000000 --- a/app/en/resources/integrations/development/figma/page.mdx +++ /dev/null @@ -1,845 +0,0 @@ -# Figma - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Figma MCP Server provides a comprehensive set of tools for interacting with Figma's design files, components, and collaboration features. Built on the [Figma REST API](https://developers.figma.com/docs/rest-api/), this MCP Server enables you to: - -- **Files**: Access Figma file structures, pages, specific nodes, and export designs as images -- **Components**: Browse published components, component sets (variants), and styles from files or team libraries -- **Comments**: Read and add comments to Figma files, reply to existing discussions -- **Navigation**: Access team projects and files (requires private OAuth app) -- **User Context**: Get authenticated user profile information - -## Available tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - - -Each tool includes behavior hints as defined by the [Model Context Protocol](https://modelcontextprotocol.io/specification/2025-06-18/server/tools#tool) specification. These hints are not yet supported, but we've added them to help you understand the side effects of each tool: - -- `readOnlyHint` — The tool only reads data, no modifications -- `openWorldHint` — The tool interacts with external systems (Figma's API) -- `destructiveHint` — The tool may cause irreversible changes (e.g., deletion) -- `idempotentHint` — Repeated calls with the same arguments have no additional effect - - - -The `projects:read` scope is **ONLY available in private Figma OAuth apps**. This scope is required for: - -- `GetTeamProjects` — Get all projects in a Figma team -- `GetProjectFiles` — Get all files in a Figma project - -If you need these navigation tools, you must create a private OAuth app in your Figma organization. All other tools work with public OAuth apps. - -[Learn more about Figma OAuth scopes](https://developers.figma.com/docs/rest-api/scopes/) - - ---- - -## User context tools - -### Figma.WhoAmI - -Get the authenticated user's profile. - -
- - -Returns the current user's information including their name, email, and profile image. - -**Parameters** - -This tool takes no parameters. - - -- `current_user:read` — Read access to the authenticated user's profile - -[View Figma Users API documentation](https://developers.figma.com/docs/rest-api/users/) - - - -- `readOnlyHint: true` - Only reads user profile, no modifications -- `openWorldHint: true` - Interacts with Figma's external API - - - -Makes 1 API call. - - ---- - -## File tools - -### Figma.GetFile - -Get a Figma file's structure including pages and metadata. - -
- - -Returns the file name, version, thumbnail, and list of pages. Use depth parameter to limit how much of the tree is returned for large files. - -**Parameters** - -- **file_key** (`string`, **required**) File key. Can be found in Figma URL: https://www.figma.com/file/{FILE_KEY}/... -- **depth** (`integer`, _optional_) How deep to traverse the node tree. Default traverses full depth. Use 1 for pages only, 2 for pages and top-level frames. Default is None. - - -- `file_content:read` — Read access to file structure and content - -[View Figma Files API documentation](https://developers.figma.com/docs/rest-api/files/) - - - -- `readOnlyHint: true` - Only reads file data, no modifications -- `openWorldHint: true` - Interacts with Figma's external API - - - -Makes 1 API call. - - ---- - -### Figma.GetPages - -Get a list of pages in a Figma file. - -
- - -Returns page IDs and names without the full node tree. - -**Parameters** - -- **file_key** (`string`, **required**) File key. Can be found in Figma URL: https://www.figma.com/file/{FILE_KEY}/... - - -- `file_content:read` — Read access to file structure and content - -[View Figma Files API documentation](https://developers.figma.com/docs/rest-api/files/) - - - -- `readOnlyHint: true` - Only reads file data, no modifications -- `openWorldHint: true` - Interacts with Figma's external API - - - -Makes 1 API call. - - ---- - -### Figma.GetFileNodes - -Get specific nodes from a Figma file by their IDs. - -
- - -Returns the requested nodes with their properties and optionally their children. Use this to fetch specific parts of a file without loading the entire document. - -**Parameters** - -- **file_key** (`string`, **required**) File key. Can be found in Figma URL: https://www.figma.com/file/{FILE_KEY}/... -- **node_ids** (`array`, **required**) List of node IDs to retrieve. Node IDs can be found in Figma URL after ?node-id= parameter (URL encoded, e.g., '0:1' or '1-2'). -- **depth** (`integer`, _optional_) How deep to traverse from each node. Use 1 for direct children only. Default returns all descendants. Default is None. - - -- `file_content:read` — Read access to file structure and content - -[View Figma Files API documentation](https://developers.figma.com/docs/rest-api/files/) - - - -- `readOnlyHint: true` - Only reads file data, no modifications -- `openWorldHint: true` - Interacts with Figma's external API - - - -Makes 1 API call. - - ---- - -### Figma.ExportImage - -Export Figma frames/nodes as images. - -
- - -Returns temporary URLs to download images. URLs valid for approximately 14 days. - -**Parameters** - -- **file_key** (`string`, **required**) File key. Can be found in Figma URL: https://www.figma.com/file/{FILE_KEY}/... -- **node_ids** (`array`, **required**) List of node IDs to export as images. -- **image_format** (`enum`, _optional_) Image format. Options: `png`, `jpg`, `svg`, `pdf`. Default is `png`. -- **scale** (`number`, _optional_) Scale factor (0.01 to 4.0). Only applies to PNG/JPG. Default is None (1.0). - - -- `file_content:read` — Read access to file content for image export - -[View Figma Files API documentation](https://developers.figma.com/docs/rest-api/files/#get-image-fills) - - - -- `readOnlyHint: true` - Only exports, no modifications -- `openWorldHint: true` - Interacts with Figma's external API - - - -Makes 1 API call. - - ---- - -## Component tools - -### Figma.GetComponents - -Get published components from a file or team library. - -
- - -For file: Returns all published components in the file. -For team: Returns paginated list of components across team library. - -**Parameters** - -- **source** (`enum`, **required**) Source type. Options: `file`, `team`. -- **source_id** (`string`, **required**) File key (if source='file') or team ID (if source='team'). -- **page_size** (`integer`, _optional_) Number of items per page (team mode only, 1-50). Default is 10. -- **after_cursor** (`integer`, _optional_) Cursor for next page (team mode only). Default is None. - - -- `library_content:read` — Read access to published library content (file mode) -- `team_library_content:read` — Read access to team library content (team mode) - -[View Figma Component Types API documentation](https://developers.figma.com/docs/rest-api/component-types/) - - - -- `readOnlyHint: true` - Only reads component data, no modifications -- `openWorldHint: true` - Interacts with Figma's external API - - - -Makes 1 API call. - - ---- - -### Figma.GetComponent - -Get metadata for a specific component by its key. - -
- - -**Parameters** - -- **component_key** (`string`, **required**) The unique component key. - - -- `library_assets:read` — Read access to individual library assets - -[View Figma Component Types API documentation](https://developers.figma.com/docs/rest-api/component-types/) - - - -- `readOnlyHint: true` - Only reads component data, no modifications -- `openWorldHint: true` - Interacts with Figma's external API - - - -Makes 1 API call. - - ---- - -### Figma.GetStyles - -Get published styles from a file or team library. - -
- - -For file: Returns all published styles in the file. -For team: Returns paginated list of styles across team library. - -**Parameters** - -- **source** (`enum`, **required**) Source type. Options: `file`, `team`. -- **source_id** (`string`, **required**) File key (if source='file') or team ID (if source='team'). -- **page_size** (`integer`, _optional_) Number of items per page (team mode only, 1-50). Default is 10. -- **after_cursor** (`integer`, _optional_) Cursor for next page (team mode only). Default is None. - - -- `library_content:read` — Read access to published library content (file mode) -- `team_library_content:read` — Read access to team library content (team mode) - -[View Figma Component Types API documentation](https://developers.figma.com/docs/rest-api/component-types/) - - - -- `readOnlyHint: true` - Only reads style data, no modifications -- `openWorldHint: true` - Interacts with Figma's external API - - - -Makes 1 API call. - - ---- - -### Figma.GetStyle - -Get metadata for a specific style by its key. - -
- - -**Parameters** - -- **style_key** (`string`, **required**) The unique style key. - - -- `library_assets:read` — Read access to individual library assets - -[View Figma Component Types API documentation](https://developers.figma.com/docs/rest-api/component-types/) - - - -- `readOnlyHint: true` - Only reads style data, no modifications -- `openWorldHint: true` - Interacts with Figma's external API - - - -Makes 1 API call. - - ---- - -### Figma.GetComponentSets - -Get published component sets (groups of component variants) from a file or team library. - -
- - -Component sets are groups of related component variants, like a Button with states: default, hover, pressed, disabled. - -For file: Returns all published component sets in the file. -For team: Returns paginated list of component sets across team library. - -**Parameters** - -- **source** (`enum`, **required**) Source type. Options: `file`, `team`. -- **source_id** (`string`, **required**) File key (if source='file') or team ID (if source='team'). -- **page_size** (`integer`, _optional_) Number of items per page (team mode only, 1-50). Default is 10. -- **after_cursor** (`integer`, _optional_) Cursor for next page (team mode only). Default is None. - - -- `library_content:read` — Read access to published library content (file mode) -- `team_library_content:read` — Read access to team library content (team mode) - -[View Figma Component Types API documentation](https://developers.figma.com/docs/rest-api/component-types/) - - - -- `readOnlyHint: true` - Only reads component set data, no modifications -- `openWorldHint: true` - Interacts with Figma's external API - - - -Makes 1 API call. - - ---- - -### Figma.GetComponentSet - -Get metadata for a specific component set by its key. - -
- - -A component set is a group of related component variants. - -**Parameters** - -- **component_set_key** (`string`, **required**) The unique component set key. - - -- `library_assets:read` — Read access to individual library assets - -[View Figma Component Types API documentation](https://developers.figma.com/docs/rest-api/component-types/) - - - -- `readOnlyHint: true` - Only reads component set data, no modifications -- `openWorldHint: true` - Interacts with Figma's external API - - - -Makes 1 API call. - - ---- - -## Comment tools - -### Figma.GetComments - -Get comments on a Figma file. - -
- - -Returns comments with pagination support. - -**Parameters** - -- **file_key** (`string`, **required**) File key. Can be found in Figma URL: https://www.figma.com/file/{FILE_KEY}/... -- **offset** (`integer`, _optional_) Starting offset for pagination. Default is 0. -- **max_items** (`integer`, _optional_) Maximum number of comments to return (1-50). Default is 10. - - -- `file_comments:read` — Read access to file comments - -[View Figma Comments API documentation](https://developers.figma.com/docs/rest-api/comments/) - - - -- `readOnlyHint: true` - Only reads comment data, no modifications -- `openWorldHint: true` - Interacts with Figma's external API - - - -Makes 1 API call. - - ---- - -### Figma.AddCommentOrReply - -Add a comment to a Figma file or reply to an existing comment. - -
- - -If parent_comment_id is provided, creates a reply to that comment. -Otherwise creates a new comment (optionally attached to a node). - -**Parameters** - -- **file_key** (`string`, **required**) File key. Can be found in Figma URL: https://www.figma.com/file/{FILE_KEY}/... -- **message** (`string`, **required**) The comment or reply text. -- **parent_comment_id** (`string`, _optional_) Parent comment ID to reply to. If provided, creates a reply. Default is None. -- **node_id** (`string`, _optional_) Node ID to attach the comment to. Ignored for replies. Default is None. -- **x** (`number`, _optional_) X position offset on the node. Only used with node_id. Default is None. -- **y** (`number`, _optional_) Y position offset on the node. Only used with node_id. Default is None. - - -- `file_comments:write` — Write access to create comments and replies - -[View Figma Comments API documentation](https://developers.figma.com/docs/rest-api/comments/) - - - -- `readOnlyHint: false` - Creates new comment or reply -- `destructiveHint: false` - Additive operation, creates new content -- `idempotentHint: false` - Each call creates a new comment/reply -- `openWorldHint: true` - Interacts with Figma's external API - - - -Makes 1 API call. - - ---- - -## Navigation tools - -### Figma.GetTeamProjects - -Get all projects in a Figma team. - -
- - -Projects are containers within a team that group related design files. - -**Parameters** - -- **team_id** (`string`, **required**) Team ID. Can be found in Figma URL: https://www.figma.com/files/team/{TEAM_ID}/... - - -- `projects:read` — Read access to team projects - -[View Figma Projects API documentation](https://developers.figma.com/docs/rest-api/projects/) - - - -- `readOnlyHint: true` - Only reads project data, no modifications -- `openWorldHint: true` - Interacts with Figma's external API - - - -This tool requires the `projects:read` scope, which is **ONLY available for private Figma OAuth apps**. Public OAuth apps cannot use this scope. - -Learn how to configure a private OAuth app in the [Figma auth provider documentation](/references/auth-providers/figma). - - - -Makes 1 API call. - - ---- - -### Figma.GetProjectFiles - -Get all files in a Figma project. - -
- - -Files are Figma design documents containing pages and frames. - -**Parameters** - -- **project_id** (`string`, **required**) Project ID. Can be obtained from get_team_projects. - - -- `projects:read` — Read access to project files - -[View Figma Projects API documentation](https://developers.figma.com/docs/rest-api/projects/) - - - -- `readOnlyHint: true` - Only reads file data, no modifications -- `openWorldHint: true` - Interacts with Figma's external API - - - -This tool requires the `projects:read` scope, which is **ONLY available for private Figma OAuth apps**. Public OAuth apps cannot use this scope. - -Learn how to configure a private OAuth app in the [Figma auth provider documentation](/references/auth-providers/figma). - - - -Makes 1 API call. - - ---- - -## Auth - -The Arcade Figma MCP Server uses the [Figma auth provider](/references/auth-providers/figma) to connect to users' Figma accounts. Please refer to the [Figma auth provider](/references/auth-providers/figma) documentation to learn how to configure auth. - - -The `projects:read` scope is **ONLY available in private Figma OAuth apps**. This scope is required for the navigation tools (`GetTeamProjects` and `GetProjectFiles`). - -If you need these navigation tools, you must create a private OAuth app through your Figma organization settings. All other tools work with public OAuth apps. - - - - diff --git a/app/en/resources/integrations/development/firecrawl/_meta.tsx b/app/en/resources/integrations/development/firecrawl/_meta.tsx deleted file mode 100644 index 53eaa37a1..000000000 --- a/app/en/resources/integrations/development/firecrawl/_meta.tsx +++ /dev/null @@ -1,7 +0,0 @@ -import type { MetaRecord } from "nextra"; - -export default { - reference: { - title: "Reference", - }, -} satisfies MetaRecord; diff --git a/app/en/resources/integrations/development/firecrawl/page.mdx b/app/en/resources/integrations/development/firecrawl/page.mdx deleted file mode 100644 index a3af3b269..000000000 --- a/app/en/resources/integrations/development/firecrawl/page.mdx +++ /dev/null @@ -1,279 +0,0 @@ ---- -asIndexPage: true ---- - -# Firecrawl - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Firecrawl MCP Server provides a pre-built set of tools for interacting with websites. These tools make it easy to build agents and AI apps that can: - -- Scrape web pages -- Crawl websites -- Map website structures -- Retrieve crawl status and data -- Cancel ongoing crawls - -## Available Tools - -These tools are currently available in the Arcade Firecrawl MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Firecrawl.ScrapeUrl - -
- - -Scrape a URL and return data in specified formats. - -**Auth:** - -- **Environment Variables Required:** - - `FIRECRAWL_API_KEY`: Your [Firecrawl](https://www.firecrawl.dev/) API key. - -**Parameters** - -- **`url`** _(string, required)_ The URL to scrape. -- **`formats`** _(enum ([Formats](/resources/integrations/development/firecrawl/reference#formats)), optional)_ The format of the scraped web page. Defaults to `Formats.MARKDOWN`. -- **`only_main_content`** _(bool, optional)_ Only return the main content of the page. Defaults to `True`. -- **`include_tags`** _(list, optional)_ List of tags to include in the output. -- **`exclude_tags`** _(list, optional)_ List of tags to exclude from the output. -- **`wait_for`** _(int, optional)_ Delay in milliseconds before fetching content. Defaults to `10`. -- **`timeout`** _(int, optional)_ Timeout in milliseconds for the request. Defaults to `30000`. - ---- - -## Firecrawl.CrawlWebsite - -
- - -Crawl a website and return crawl status and data. - -**Auth:** - -- **Environment Variables Required:** - - `FIRECRAWL_API_KEY`: Your [Firecrawl](https://www.firecrawl.dev/) API key. - -**Parameters** - -- **`url`** _(string, required)_ The URL to crawl. -- **`exclude_paths`** _(list, optional)_ URL patterns to exclude from the crawl. -- **`include_paths`** _(list, optional)_ URL patterns to include in the crawl. -- **`max_depth`** _(int, required)_ Maximum depth to crawl. Defaults to `2`. -- **`ignore_sitemap`** _(bool, required)_ Ignore the website sitemap. Defaults to `True`. -- **`limit`** _(int, required)_ Limit the number of pages to crawl. Defaults to `10`. -- **`allow_backward_links`** _(bool, required)_ Enable navigation to previously linked pages. Defaults to `False`. -- **`allow_external_links`** _(bool, required)_ Allow following links to external websites. Defaults to `False`. -- **`webhook`** _(string, optional)_ URL to send a POST request when the crawl is started, updated, and completed. -- **`async_crawl`** _(bool, required)_ Run the crawl asynchronously. Defaults to `True`. - ---- - -## Firecrawl.GetCrawlStatus - -
- - -Retrieve the status of a crawl job. - -**Auth:** - -- **Environment Variables Required:** - - `FIRECRAWL_API_KEY`: Your [Firecrawl](https://www.firecrawl.dev/) API key. - -**Parameters** - -- **`crawl_id`** _(string, required)_ The ID of the crawl job. - ---- - -## Firecrawl.GetCrawlData - -
- - -Retrieve data from a completed crawl job. - -**Auth:** - -- **Environment Variables Required:** - - `FIRECRAWL_API_KEY`: Your [Firecrawl](https://www.firecrawl.dev/) API key. - -**Parameters** - -- **`crawl_id`** _(string, required)_ The ID of the crawl job. - ---- - -## Firecrawl.CancelCrawl - -
- - -Cancel an ongoing crawl job. - -**Auth:** - -- **Environment Variables Required:** - - `FIRECRAWL_API_KEY`: Your [Firecrawl](https://www.firecrawl.dev/) API key. - -**Parameters** - -- **`crawl_id`** _(string, required)_ The ID of the asynchronous crawl job to cancel. - ---- - -## Firecrawl.MapWebsite - -
- - -Map a website from a single URL to a map of the entire website. - -**Auth:** - -- **Environment Variables Required:** - - `FIRECRAWL_API_KEY`: Your [Firecrawl](https://www.firecrawl.dev/) API key. - -**Parameters** - -- **`url`** _(string, required)_ The base URL to start crawling from. -- **`search`** _(string, optional)_ Search query to use for mapping. -- **`ignore_sitemap`** _(bool, required)_ Ignore the website sitemap. Defaults to `True`. -- **`include_subdomains`** _(bool, required)_ Include subdomains of the website. Defaults to `False`. -- **`limit`** _(int, required)_ Maximum number of links to return. Defaults to `5000`. - -## Auth - -The Arcade Web MCP Sever uses [Firecrawl](https://www.firecrawl.dev/) to scrape, crawl, and map websites. - -**Global Environment Variables:** - -- `FIRECRAWL_API_KEY`: Your [Firecrawl](https://www.firecrawl.dev/) API key. - - diff --git a/app/en/resources/integrations/development/firecrawl/reference/page.mdx b/app/en/resources/integrations/development/firecrawl/reference/page.mdx deleted file mode 100644 index 4ed4be127..000000000 --- a/app/en/resources/integrations/development/firecrawl/reference/page.mdx +++ /dev/null @@ -1,12 +0,0 @@ -# Reference for Firecrawl Toolkit - -## Formats - -The format of the scraped web page. - -- **`MARKDOWN`**: Returns the scraped web page in Markdown format. -- **`HTML`**: Returns the scraped web page in HTML format. -- **`RAW_HTML`**: Returns the raw HTML of the scraped web page. -- **`LINKS`**: Returns only the links from the scraped web page. -- **`SCREENSHOT`**: Takes a screenshot of the scraped web page. -- **`SCREENSHOT_AT_FULL_PAGE`**: Takes a full-page screenshot of the scraped web page. diff --git a/app/en/resources/integrations/development/github-api/page.mdx b/app/en/resources/integrations/development/github-api/page.mdx deleted file mode 100644 index 0f95b5780..000000000 --- a/app/en/resources/integrations/development/github-api/page.mdx +++ /dev/null @@ -1,25649 +0,0 @@ -# GithubApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The GitHubApi MCP Server offers a comprehensive suite of tools for interacting with GitHub, enabling users and applications to manage repositories, issues, pull requests, and more. With this server, you can: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## GithubApi.GetGithubRootLinks - -
- - -Retrieve Hypermedia links to GitHub's REST API resources. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.ListGlobalWebhooks - -
- - -Retrieve a list of global webhooks from GitHub Enterprise. - -**Parameters** - -- **page_number** (`integer`, optional) Specify the page number of the results to fetch. This is used to navigate through paginated results. -- **results_per_page** (`integer`, optional) The number of results to include in each page, up to a maximum of 100. - -## GithubApi.CreateGlobalWebhook - -
- - -Create a global webhook in GitHub Enterprise Admin. - -**Parameters** - -- **payload_delivery_url** (`string`, required) The destination URL where the webhook payloads will be delivered. Ensure this URL is accessible and properly configured to handle incoming requests. -- **webhook_type** (`string`, required) Specifies the type of webhook. Must be set to "web". -- **hmac_key_for_signature** (`string`, optional) The key for generating the HMAC hex digest in the X-Hub-Signature header. Optional. -- **payload_content_type** (`string`, optional) Specifies the media type for payload serialization. Options: 'json', 'form'. Default is 'form'. -- **send_notifications** (`boolean`, optional) Set to `true` to send notifications when the webhook is triggered. -- **ssl_verification** (`string`, optional) Set '0' to verify SSL certificate of the host for the URL; '1' to skip verification. Default is '0'. Avoid setting to '1' to prevent security risks. -- **trigger_events** (`array[string]`, optional) List of events that trigger the webhook. Default events are `user` and `organization`. - -## GithubApi.DeleteGlobalWebhook - -
- - -Delete a global webhook in GitHub Enterprise. - -**Parameters** - -- **webhook_id** (`integer`, required) The unique identifier of the global webhook to be deleted. - -## GithubApi.GetGithubGlobalWebhook - -
- - -Retrieve details of a specific global webhook in GitHub Enterprise. - -**Parameters** - -- **global_webhook_id** (`integer`, required) The unique identifier for the global webhook in GitHub Enterprise. Provide this ID to retrieve specific webhook details. - -## GithubApi.UpdateGlobalWebhook - -
- - -Update a GitHub enterprise global webhook. - -**Parameters** - -- **webhook_identifier** (`integer`, required) The unique integer identifier for the webhook that needs to be updated. -- **hmac_secret_key** (`string`, optional) Secret key for generating HMAC hex digest value in `X-Hub-Signature` header. -- **payload_delivery_url** (`string`, optional) The URL where webhook payloads will be delivered for processing. -- **payload_media_type** (`string`, optional) The media type for payload serialization. Supported values: `json`, `form`. Default is `form`. -- **send_notifications_on_trigger** (`boolean`, optional) Set to `true` to send notifications when the webhook is triggered. -- **verify_ssl_certificate** (`string`, optional) Determines SSL certificate verification for payload delivery. Use '0' for verification and '1' to skip (not recommended). Default is '0'. -- **webhook_trigger_events** (`array[string]`, optional) The events that trigger the global webhook. Can include 'user', 'organization'. Defaults to both if not specified. - -## GithubApi.TriggerGithubWebhookPing - -
- - -Trigger a ping event to a GitHub webhook. - -**Parameters** - -- **webhook_hook_id** (`integer`, required) The unique identifier of the GitHub webhook to ping. - -## GithubApi.ListGithubPublicKeys - -
- - -Retrieve GitHub Enterprise Admin public keys. - -**Parameters** - -- **filter_keys_accessed_since** (`string`, optional) Specify a timestamp to only list public keys accessed after this time. Use ISO 8601 format. -- **page_number_to_fetch** (`integer`, optional) The specific page number of results to retrieve. -- **results_per_page** (`integer`, optional) The number of results to display per page. Maximum allowed is 100. Use to limit the amount of data retrieved per call. -- **sort_direction** (`string`, optional) The direction to sort the results: 'asc' for ascending or 'desc' for descending. -- **sort_order** (`string`, optional) Criteria for sorting results. Options: 'created', 'updated', 'accessed'. - -## GithubApi.DeleteGithubPublicKey - -
- - -Delete a public key from GitHub Enterprise. - -**Parameters** - -- **public_key_identifier** (`string`, required) The unique identifier of the public key to delete from GitHub Enterprise. - -## GithubApi.UpdateLdapMappingForTeam - -
- - -Update the LDAP mapping for a GitHub team. - -**Parameters** - -- **ldap_distinguished_name** (`string`, required) The distinguished name (DN) of the LDAP entry to map to a team. This should be a string following the LDAP DN format. -- **team_id** (`integer`, required) The unique identifier of the GitHub team to update LDAP mapping for. - -## GithubApi.QueueLdapSyncForTeam - -
- - -Queue an LDAP sync job for a specified team. - -**Parameters** - -- **team_id** (`integer`, required) The unique identifier of the GitHub team for which the LDAP sync job should be queued. - -## GithubApi.UpdateLdapMappingForUser - -
- - -Update LDAP mapping for a user in GitHub Enterprise Admin. - -**Parameters** - -- **github_user_handle** (`string`, required) The handle for the GitHub user account to update the LDAP mapping for. -- **ldap_distinguished_name** (`string`, required) The distinguished name (DN) of the LDAP entry to map to a team. It should be in a string format as specified [here](https://www.ldap.com/ldap-dns-and-rdns). - -## GithubApi.SyncGithubLdapUserMapping - -
- - -Queue a sync job for LDAP mapping of a GitHub user. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user account handle to queue LDAP sync for. - -## GithubApi.CreateGithubOrganization - -
- - -Create a new organization on GitHub. - -**Parameters** - -- **admin_user_login** (`string`, required) The login username of the user designated to manage the new GitHub organization. -- **organization_username** (`string`, required) The username for the organization in GitHub. -- **organization_display_name** (`string`, optional) The display name for the organization to be created on GitHub. - -## GithubApi.UpdateGithubOrgName - -
- - -Updates the organization name on GitHub Enterprise. - -**Parameters** - -- **current_organization_name** (`string`, required) The current name of the organization to be updated. It is not case sensitive. -- **new_organization_name** (`string`, required) The new name for the organization on GitHub Enterprise. This will be the name you want to update to. - -## GithubApi.ListPreReceiveEnvironments - -
- - -Retrieve a list of pre-receive environments for GitHub Enterprise. - -**Parameters** - -- **page_number** (`integer`, optional) Specifies the page number of results to fetch. Use this to navigate through paginated data. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100. -- **sort** (`string`, optional) Criteria to sort the results: 'created', 'updated', or 'name'. -- **sort_direction** (`string`, optional) Specifies the order to sort results: 'asc' for ascending or 'desc' for descending. - -## GithubApi.CreatePreReceiveEnvironment - -
- - -Create a new pre-receive environment on GitHub Enterprise. - -**Parameters** - -- **pre_receive_environment_name** (`string`, required) The name of the new pre-receive environment to be created. -- **tarball_download_url** (`string`, required) URL to download the tarball for the pre-receive environment setup. - -## GithubApi.DeletePreReceiveEnvironment - -
- - -Delete a specified pre-receive environment in GitHub Enterprise. - -**Parameters** - -- **pre_receive_environment_identifier** (`integer`, required) The unique integer identifier of the pre-receive environment to be deleted. - -## GithubApi.GetGithubPreReceiveEnvironment - -
- - -Retrieve a GitHub pre-receive environment by ID. - -**Parameters** - -- **pre_receive_environment_id** (`integer`, required) The unique identifier for the GitHub pre-receive environment. - -## GithubApi.UpdateGithubPreReceiveEnvironment - -
- - -Update a pre-receive environment in GitHub Enterprise. - -**Parameters** - -- **pre_receive_environment_id** (`integer`, required) The unique identifier of the pre-receive environment to update. -- **new_environment_name** (`string`, optional) The new name for the pre-receive environment. -- **tarball_download_url** (`string`, optional) The URL to download the tarball for the environment update. - -## GithubApi.TriggerEnvironmentDownload - -
- - -Start a new download of the environment tarball. - -**Parameters** - -- **pre_receive_environment_id** (`integer`, required) The unique identifier for the pre-receive environment to trigger the download for. - -## GithubApi.GetPreReceiveEnvDownloadStatus - -
- - -Retrieve the latest download status for a pre-receive environment. - -**Parameters** - -- **pre_receive_environment_identifier** (`integer`, required) The unique identifier for the pre-receive environment to retrieve its download status. - -## GithubApi.ListPreReceiveHooks - -
- - -Retrieve the list of pre-receive hooks in GitHub Enterprise. - -**Parameters** - -- **results_page_number** (`integer`, optional) The specific page number of results to retrieve, used for pagination. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. -- **sort_direction** (`string`, optional) The direction to sort the results by. Options are 'asc' for ascending or 'desc' for descending. -- **sort_results_by** (`string`, optional) Specify the property to sort the results by. Options are 'created', 'updated', or 'name'. - -## GithubApi.CreatePreReceiveHook - -
- - -Create a pre-receive hook for GitHub enterprise administration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.DeletePreReceiveHook - -
- - -Delete a pre-receive hook from GitHub Enterprise Admin. - -**Parameters** - -- **pre_receive_hook_identifier** (`integer`, required) The unique identifier for the pre-receive hook to delete. - -## GithubApi.GetPreReceiveHook - -
- - -Retrieve details of a specific pre-receive hook in GitHub Enterprise Admin. - -**Parameters** - -- **pre_receive_hook_id** (`integer`, required) The unique identifier of the pre-receive hook to retrieve details for. - -## GithubApi.UpdateGithubPreReceiveHook - -
- - -Update a GitHub enterprise pre-receive hook. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **pre_receive_hook_id** (`integer`, optional) The unique identifier of the pre-receive hook in the GitHub enterprise environment. This is required for updating hook details. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListPersonalAccessTokens - -
- - -Retrieve personal access tokens for all users including admins. - -**Parameters** - -- **results_page_number** (`integer`, optional) The page number of the results to fetch, used for pagination. -- **results_per_page** (`integer`, optional) Number of results to return per page. Maximum value is 100. - -## GithubApi.DeleteGithubPersonalAccessToken - -
- - -Delete a GitHub personal access token. - -**Parameters** - -- **github_token_id** (`integer`, required) The unique identifier of the GitHub personal access token to delete. - -## GithubApi.CreateEnterpriseUser - -
- - -Creates a new user in GitHub enterprise with external authentication. - -**Parameters** - -- **user_username** (`string`, required) The user's username for the GitHub enterprise account. It will be normalized to contain only alphanumeric characters or single hyphens. -- **user_email** (`string`, optional) The email address of the user. Required for built-in authentication but optional for CAS, LDAP, or SAML auth methods. - -## GithubApi.DeleteGithubEnterpriseUser - -
- - -Delete a GitHub Enterprise user and their data. - -**Parameters** - -- **github_user_handle** (`string`, required) The handle for the GitHub user account to be deleted. Ensure it's the correct user, as this action is irreversible. - -## GithubApi.UpdateGithubUsername - -
- - -Update a GitHub user's username. - -**Parameters** - -- **current_github_username** (`string`, required) The current handle of the GitHub user account to be updated. -- **new_github_username** (`string`, required) The new username for the GitHub user account. - -## GithubApi.DeleteImpersonationOauthToken - -
- - -Deletes an impersonation OAuth token for a user in GitHub Enterprise Admin. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user account handle for which the impersonation OAuth token will be deleted. - -## GithubApi.CreateImpersonationOauthToken - -
- - -Create an impersonation OAuth token for a GitHub user. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user account handle for which to create the impersonation OAuth token. -- **oauth_scopes_list** (`array[string]`, required) A list of scopes defining the permissions for the OAuth token. Each scope is a string representing a specific set of access rights. Refer to [scopes documentation](https://docs.github.com/enterprise-server@3.8/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/) for valid options. - -## GithubApi.GetGithubAppInfo - -
- - -Retrieve details about the authenticated GitHub App. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.CompleteGithubAppHandshake - -
- - -Complete the GitHub App Manifest handshake to retrieve app details. - -**Parameters** - -- **temporary_code_for_github_app** (`string`, required) The temporary code provided during the GitHub App Manifest flow to retrieve the app's id, pem, and webhook_secret. - -## GithubApi.GetGithubAppWebhookConfig - -
- - -Fetches the webhook configuration for a GitHub App. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.UpdateGithubAppWebhookConfig - -
- - -Update the webhook configuration for a GitHub App. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListWebhookDeliveries - -
- - -Retrieve webhook deliveries for a GitHub App. - -**Parameters** - -- **only_redeliveries** (`boolean`, optional) Set to true to include only redeliveries in the results. -- **pagination_cursor** (`string`, optional) Starting point for pagination to fetch a page of deliveries. Use the `link` header to find next and previous page cursors. -- **results_per_page** (`integer`, optional) The number of webhook deliveries to return per page, up to a maximum of 100. - -## GithubApi.GetGithubAppWebhookDelivery - -
- - -Retrieve delivery details for a GitHub App webhook. - -**Parameters** - -- **webhook_delivery_id** (`integer`, required) The ID of the webhook delivery to retrieve. Must be an integer. - -## GithubApi.RedeliverGithubWebhookDelivery - -
- - -Redeliver a GitHub App webhook delivery. - -**Parameters** - -- **webhook_delivery_id** (`integer`, required) The unique integer ID of the webhook delivery to be redelivered. - -## GithubApi.ListGithubAppInstallations - -
- - -Retrieve installations of a GitHub app using a JWT. - -**Parameters** - -- **include_outdated** (`string`, optional) Include or exclude outdated installations in the results. Pass 'true' to include them. -- **notifications_updated_since** (`string`, optional) Specify a timestamp in ISO 8601 format to filter installations updated after this time. Format: `YYYY-MM-DDTHH:MM:SSZ`. -- **results_page_number** (`integer`, optional) Specify the page number of the results you want to retrieve, allowing pagination through the results. Useful for fetching specific subsets of data. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. Maximum is 100. - -## GithubApi.UninstallGithubApp - -
- - -Uninstall a GitHub App from an account. - -**Parameters** - -- **installation_id** (`integer`, required) The unique identifier of the GitHub App installation to uninstall. - -## GithubApi.GetGithubAppInstallationInfo - -
- - -Fetch information of a GitHub App installation by ID. - -**Parameters** - -- **installation_id** (`integer`, required) The unique identifier of the GitHub App installation to fetch information for. - -## GithubApi.CreateGithubAppInstallationToken - -
- - -Create an installation access token for a GitHub App. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **installation_id** (`integer`, optional) The unique identifier for the GitHub App installation. Required to create the access token. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.RemoveGithubAppSuspension - -
- - -Unsuspend a GitHub App installation. - -**Parameters** - -- **installation_id** (`integer`, required) The unique identifier for the GitHub App installation to be unsuspended. - -## GithubApi.SuspendGithubAppInstallation - -
- - -Suspend a GitHub App's installation for specified accounts. - -**Parameters** - -- **installation_id** (`integer`, required) The unique identifier of the GitHub App installation to suspend. - -## GithubApi.RevokeGithubOauthGrant - -
- - -Revoke OAuth grant for a GitHub application and user. - -**Parameters** - -- **github_app_client_id** (`string`, required) The unique client ID for the GitHub app, used for Basic Authentication. -- **oauth_access_token** (`string`, required) The OAuth access token for authenticating the GitHub API and revoking the grant. - -## GithubApi.RevokeGithubOauthToken - -
- - -Revoke a GitHub OAuth application's token. - -**Parameters** - -- **github_app_client_id** (`string`, required) The client ID of the GitHub OAuth application to identify the app during token revocation. -- **oauth_access_token** (`string`, required) The OAuth access token used to authenticate to the GitHub API. Required for token revocation. - -## GithubApi.ResetGithubOauthToken - -
- - -Reset an OAuth token for a GitHub application. - -**Parameters** - -- **github_app_client_id** (`string`, required) The client ID of the GitHub application required for resetting the OAuth token. -- **oauth_access_token** (`string`, required) The access token of the OAuth application to be reset. - -## GithubApi.CheckGithubTokenValidity - -
- - -Check GitHub OAuth token validity with reduced rate limits. - -**Parameters** - -- **github_app_client_id** (`string`, required) The unique client ID of the GitHub application for OAuth authentication. -- **oauth_access_token** (`string`, required) The OAuth access token to verify its validity with the GitHub API. - -## GithubApi.CreateGithubScopedToken - -
- - -Create a GitHub repository and permission scoped token. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **github_client_id** (`string`, optional) The client ID of your GitHub app used for authentication. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.GetGithubAppDetailsBySlug - -
- - -Retrieve GitHub App details using its slug. - -**Parameters** - -- **github_app_slug** (`string`, required) The URL-friendly name of the GitHub App to retrieve details for. Found on the GitHub App settings page. - -## GithubApi.GetAllGithubCodesOfConduct - -
- - -Retrieve all GitHub codes of conduct. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetCodeOfConduct - -
- - -Retrieve a specific code of conduct from GitHub. - -**Parameters** - -- **conduct_code_key** (`string`, required) The unique identifier for the specific code of conduct you want to retrieve. - -## GithubApi.ListGithubEmojis - -
- - -Lists all available GitHub emojis. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.RemoveEnterpriseAnnouncement - -
- - -Removes the global announcement banner in your enterprise. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetEnterpriseAnnouncementBanner - -
- - -Retrieve the global announcement banner for your enterprise. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.SetGithubAnnouncement - -
- - -Set the announcement banner message and expiration in GitHub Enterprise. - -**Parameters** - -- **announcement_text_gfm** (`string`, required) The announcement text in GitHub Flavored Markdown. Use for global messages in GitHub Enterprise. -- **announcement_expiration_time** (`string`, optional) Timestamp for when the announcement expires in ISO 8601 format. Use `null` or an empty string for no expiration. - -## GithubApi.GetLicenseInformation - -
- - -Retrieve GitHub Enterprise license information. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetGithubEnterpriseStats - -
- - -Retrieve all statistics for GitHub Enterprise. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetCommentStatistics - -
- - -Retrieve comment statistics from GitHub Enterprise. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetGitGistStatistics - -
- - -Retrieve gist statistics from GitHub Enterprise. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetHooksStatistics - -
- - -Retrieves statistics about enterprise webhooks on GitHub. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetGithubIssueStatistics - -
- - -Retrieve statistics on GitHub issues for an enterprise. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetMilestoneStatistics - -
- - -Retrieve GitHub enterprise milestone statistics. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetGithubOrgStats - -
- - -Retrieve organization statistics from GitHub Enterprise. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetGithubPagesStats - -
- - -Retrieve statistics for GitHub Pages in an enterprise account. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetPullRequestStatistics - -
- - -Retrieve pull request statistics from GitHub Enterprise. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetRepositoryStatistics - -
- - -Retrieve statistics for GitHub repositories. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetGithubUserStats - -
- - -Retrieve user statistics from GitHub Enterprise. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetGithubActionsCacheUsageForEnterprise - -
- - -Retrieve GitHub Actions cache usage for an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise. Can be either the enterprise name in slug format or the enterprise ID. - -## GithubApi.GetGithubActionsCachePolicy - -
- - -Retrieve the GitHub Actions cache usage policy for an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug version or ID of the enterprise for GitHub Actions cache policy retrieval. - -## GithubApi.SetGithubActionsCachePolicy - -
- - -Set GitHub Actions cache usage policy for an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise for which to set the cache policy. -- **default_repo_cache_size_limit_gb** (`integer`, optional) Default size limit for all caches in a repository, specified in gigabytes. -- **maximum_repository_cache_size_limit_in_gb** (`integer`, optional) Maximum cache size limit for all repository caches in an enterprise, in gigabytes. - -## GithubApi.GetGithubActionsPermissions - -
- - -Get GitHub Actions permissions for an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) Identifier for the enterprise, either as a slug version of the name or the enterprise ID. - -## GithubApi.SetGithubActionsPermissions - -
- - -Set GitHub Actions permissions for an enterprise. - -**Parameters** - -- **enabled_organizations_policy** (`string`, required) Specifies which organizations can run GitHub Actions: 'all', 'none', or 'selected'. -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise for setting GitHub Actions permissions. -- **actions_permission_policy** (`string`, optional) Specifies the actions allowed to run in the enterprise. Possible values: 'all', 'local_only', 'selected'. - -## GithubApi.ListActionsEnabledOrgsEnterprise - -
- - -List organizations with GitHub Actions enabled in an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise to identify it for listing organizations with GitHub Actions enabled. -- **results_page_number** (`integer`, optional) Specifies which page of results to retrieve, helpful for navigating through multiple pages. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. - -## GithubApi.SetGithubActionsEnabledOrgs - -
- - -Replace organizations enabled for GitHub Actions in an enterprise. - -**Parameters** - -- **enterprise_slug_or_id** (`string`, required) The slug version or ID of the enterprise for which to update enabled GitHub Actions organizations. -- **organization_ids_for_github_actions** (`array[integer]`, required) An array of organization IDs to enable GitHub Actions for specific organizations in the enterprise. - -## GithubApi.DisableOrgGithubActions - -
- - -Disable GitHub Actions for an organization in an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug version of the enterprise name or the enterprise ID to identify it for the operation. -- **organization_unique_identifier** (`integer`, required) The unique identifier of the organization to disable GitHub Actions for. - -## GithubApi.EnableGithubActionsForOrg - -
- - -Enable GitHub Actions for a selected organization in an enterprise. - -**Parameters** - -- **enterprise_slug_or_id** (`string`, required) The slug or ID of the enterprise to identify it for GitHub Actions enablement. Accepts slug version or enterprise ID. -- **organization_id** (`integer`, required) The unique identifier for the organization to enable GitHub Actions. Must be an integer. - -## GithubApi.GetAllowedActionsForEnterprise - -
- - -Retrieve the actions allowed in a GitHub enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug version or ID of the enterprise to fetch allowed actions for. - -## GithubApi.SetAllowedActionsEnterprise - -
- - -Configure allowed GitHub Actions for an enterprise. - -**Parameters** - -- **allow_github_owned_actions** (`boolean`, required) Set to true to allow GitHub-owned actions in the enterprise, such as those in the 'actions' organization. -- **allowed_action_patterns** (`array[string]`, required) List of patterns to match specific GitHub Actions to allow. Use wildcards, tags, and SHAs for specification. -- **enterprise_identifier** (`string`, required) The slug version of the enterprise name or the enterprise ID. - -## GithubApi.GetGithubTokenWorkflowPermissions - -
- - -Retrieve GitHub Actions default workflow permissions for an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug version of the enterprise name or the enterprise ID. - -## GithubApi.SetEnterpriseWorkflowPermissions - -
- - -Set default GitHub Actions permissions for an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise. Use the slug version of the enterprise name or the enterprise ID. -- **allow_approve_pull_request_reviews** (`boolean`, optional) Indicate if GitHub Actions can approve pull requests. Enabling this may pose a security risk. -- **default_workflow_permissions** (`string`, optional) Specify 'read' or 'write' to set the permissions for the GITHUB_TOKEN when running workflows. - -## GithubApi.ListSelfHostedRunnerGroups - -
- - -Retrieve all self-hosted runner groups for an enterprise. - -**Parameters** - -- **enterprise_slug** (`string`, required) The slug or ID of the enterprise for which to list self-hosted runner groups. This identifies the enterprise by name or numeric ID. -- **organization_filter** (`string`, optional) Filter results to show runner groups usable by the specified organization. -- **results_page_number** (`integer`, optional) Specifies which page of the self-hosted runner groups results to retrieve. Useful for paginating through large sets of data. -- **results_per_page** (`integer`, optional) The maximum number of results to return per page, up to 100. - -## GithubApi.CreateSelfHostedRunnerGroup - -
- - -Create a self-hosted runner group for an enterprise. - -**Parameters** - -- **enterprise_name_or_id** (`string`, required) The slug version of the enterprise name or the enterprise ID to identify the enterprise. -- **runner_group_name** (`string`, required) Name of the runner group to be created. -- **allow_public_repository_use** (`boolean`, optional) Set to true to allow the runner group to be used by public repositories. -- **organization_ids_for_access** (`array[integer]`, optional) List of IDs for organizations allowed to access the runner group. -- **restrict_to_selected_workflows** (`boolean`, optional) Set to true to restrict the runner group to only the workflows in 'selected_workflows'. -- **runner_group_visibility** (`string`, optional) Specifies the visibility of the runner group: 'selected' for individual organizations or 'all' for all organizations. -- **runner_ids** (`array[integer]`, optional) List of runner IDs to be added to the new runner group. -- **workflows_allowed_for_runner_group** (`array[string]`, optional) List of workflows the runner group can run. Ignored unless `restricted_to_workflows` is `true`. - -## GithubApi.DeleteSelfHostedRunnerGroup - -
- - -Delete a self-hosted runner group for an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug version of the enterprise name or the enterprise ID to identify which enterprise the runner group belongs to. -- **runner_group_id** (`integer`, required) Unique identifier for the self-hosted runner group to be deleted. - -## GithubApi.GetSelfHostedRunnerGroup - -
- - -Retrieve a specific self-hosted runner group for an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug of the enterprise name or substitute with the enterprise ID. -- **runner_group_identifier** (`integer`, required) Unique identifier of the self-hosted runner group, required to retrieve specific group details within an enterprise. - -## GithubApi.UpdateRunnerGroupEnterprise - -
- - -Update the name and visibility of a self-hosted runner group in an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise to identify which enterprise the runner group belongs to. -- **runner_group_id** (`integer`, required) Unique identifier of the self-hosted runner group to update. -- **allow_public_repositories** (`boolean`, optional) Set to true if the runner group can be used by public repositories. -- **allowable_workflow_list** (`array[string]`, optional) List of workflow names the runner group is allowed to run. Ignored unless `restricted_to_workflows` is set to `true`. -- **restrict_to_workflows** (`boolean`, optional) Set to true to restrict the runner group to only the workflows in the selected_workflows array. -- **runner_group_name** (`string`, optional) Name of the self-hosted runner group to be updated. -- **runner_group_visibility** (`string`, optional) Specifies whether the runner group is visible to all organizations or only selected ones. Valid values are 'selected' or 'all'. - -## GithubApi.ListOrgAccessRunnerGroup - -
- - -List organizations with access to a self-hosted runner group. - -**Parameters** - -- **enterprise_slug_or_id** (`string`, required) The slug or ID of the enterprise. Used to identify the specific enterprise context for the runner group. -- **runner_group_id** (`integer`, required) Unique identifier for the self-hosted runner group. -- **page_number** (`integer`, optional) Specify the page number of results to fetch. Useful for pagination in large datasets. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. - -## GithubApi.SetGhOrgAccessToRunnerGroup - -
- - -Update organization access for a GitHub runner group. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise. Specify either for identifying the enterprise. -- **organization_ids_for_runner_access** (`array[integer]`, required) List of organization IDs permitted to access the self-hosted runner group. -- **runner_group_identifier** (`integer`, required) Unique integer identifier of the self-hosted runner group within the enterprise. - -## GithubApi.RemoveOrgAccessRunnerGroup - -
- - -Removes an organization's access to a self-hosted runner group. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise to identify it for the runner group operation. -- **organization_id** (`integer`, required) The unique identifier for the organization to be removed from the self-hosted runner group. -- **runner_group_id** (`integer`, required) Unique identifier of the self-hosted runner group to modify access for. - -## GithubApi.AddOrgAccessToRunnerGroup - -
- - -Add organization access to a self-hosted runner group in an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise. Use either the enterprise name slug or its ID. -- **organization_id** (`integer`, required) The unique identifier of the organization to add access to the self-hosted runner group. -- **runner_group_id** (`integer`, required) Unique identifier for the self-hosted runner group. Required for adding organization access to it. - -## GithubApi.ListSelfHostedRunnersInGroup - -
- - -Retrieve self-hosted runners in an enterprise group. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise. Use the slug version of the enterprise name or substitute with the enterprise ID. -- **runner_group_id** (`integer`, required) The unique identifier of the self-hosted runner group within the enterprise. -- **results_page_number** (`integer`, optional) Page number of the results to fetch. -- **results_per_page** (`integer`, optional) The number of results to display per page (maximum 100). - -## GithubApi.UpdateSelfHostedRunnersInGroup - -
- - -Update self-hosted runners in an enterprise group. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug version of the enterprise name or the enterprise ID. -- **runner_group_identifier** (`integer`, required) Unique identifier for the self-hosted runner group. This integer ID specifies which group to update. -- **runner_ids_to_add** (`array[integer]`, required) Array of runner IDs to be added to the specified runner group in the enterprise. Each runner ID should be an integer. - -## GithubApi.RemoveRunnerFromEnterpriseGroup - -
- - -Remove a self-hosted runner from an enterprise group. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise. Use either the slug version of the enterprise name or the enterprise ID. -- **runner_group_id** (`integer`, required) Unique identifier of the self-hosted runner group to remove a runner from. -- **runner_identifier** (`integer`, required) The unique integer identifier of the self-hosted runner to be removed from the enterprise group. - -## GithubApi.AddSelfHostedRunnerToGroup - -
- - -Add a self-hosted runner to an enterprise group in GitHub. - -**Parameters** - -- **enterprise_identifier** (`string`, required) Slug version or ID of the enterprise for adding the runner. -- **runner_group_identifier** (`integer`, required) Unique identifier of the self-hosted runner group. -- **self_hosted_runner_id** (`integer`, required) Unique identifier of the self-hosted runner to be added to the group. - -## GithubApi.ListSelfHostedRunnersForEnterprise - -
- - -Retrieve all self-hosted runners for a GitHub enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise for which to list self-hosted runners. -- **results_page_number** (`integer`, optional) Specify the page number of the results to fetch for pagination purposes. -- **results_per_page** (`integer`, optional) The number of results to return per page, with a maximum of 100. - -## GithubApi.ListRunnerBinariesForEnterprise - -
- - -Retrieve download links for runner application binaries. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID for the enterprise to obtain runner binaries. - -## GithubApi.CreateGithubEnterpriseRegistrationToken - -
- - -Generate a registration token for GitHub Enterprise runners. - -**Parameters** - -- **enterprise_slug_or_id** (`string`, required) The slug version of the enterprise name or the enterprise ID for GitHub Enterprise. - -## GithubApi.GetRemoveTokenForEnterpriseRunner - -
- - -Generates a token to remove a self-hosted runner from an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise. Use this to specify the enterprise for which you want to generate a removal token. - -## GithubApi.RemoveSelfHostedRunnerFromEnterprise - -
- - -Remove a self-hosted runner from an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise. Use the slug version of the name or the enterprise ID for identification. -- **runner_id** (`integer`, required) Unique identifier for the self-hosted runner to be removed. - -## GithubApi.GetSelfHostedRunnerInfo - -
- - -Retrieve details of a self-hosted runner in an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug version of the enterprise name or the enterprise ID. -- **runner_id** (`integer`, required) The unique identifier of the self-hosted runner to retrieve details for. - -## GithubApi.RemoveCustomLabelsFromRunner - -
- - -Remove all custom labels from an enterprise's self-hosted runner. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug version of the enterprise name or the enterprise ID for identifying the enterprise. -- **runner_id** (`integer`, required) The unique identifier of the self-hosted runner from which to remove custom labels. - -## GithubApi.ListLabelsForRunner - -
- - -Retrieve all labels for a self-hosted runner in an enterprise. - -**Parameters** - -- **enterprise_slug_or_id** (`string`, required) The slug or ID of the enterprise for identifying self-hosted runner. -- **runner_id** (`integer`, required) Unique identifier of the self-hosted runner for which to list labels. - -## GithubApi.AddCustomLabelsToRunner - -
- - -Add custom labels to a self-hosted runner in an enterprise. - -**Parameters** - -- **custom_labels** (`array[string]`, required) An array of names for the custom labels to add to the self-hosted runner. -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise for the self-hosted runner. It identifies the enterprise name or ID in GitHub. -- **runner_unique_id** (`integer`, required) The unique integer identifier for the self-hosted runner. - -## GithubApi.SetCustomLabelsForSelfHostedRunner - -
- - -Set custom labels for a self-hosted runner in an enterprise. - -**Parameters** - -- **custom_labels** (`array[string]`, required) List of new custom labels for the runner. Use an empty list to remove all labels. -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise where the runner is configured. Use the slug version of the enterprise name or the enterprise ID. -- **self_hosted_runner_id** (`integer`, required) The unique identifier of the self-hosted runner to update labels for. - -## GithubApi.RemoveCustomLabelFromRunner - -
- - -Remove a custom label from a self-hosted runner in an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) Slug or ID of the enterprise. Use the slug version of the enterprise name or the enterprise ID as an alternative. -- **runner_custom_label_name** (`string`, required) The name of the custom label to be removed from the self-hosted runner. -- **runner_identifier** (`integer`, required) Unique identifier for the self-hosted runner. - -## GithubApi.GetEnterpriseAuditLog - -
- - -Retrieve the audit log for a specified enterprise. - -**Parameters** - -- **enterprise_slug_or_id** (`string`, required) The slug or ID of the enterprise to fetch the audit log for. Either the slug version of the enterprise name or the enterprise ID can be used. -- **after_cursor** (`string`, optional) A cursor from the Link header to search for events after this point. -- **audit_log_event_order** (`string`, optional) Specify 'desc' for newest events first or 'asc' for oldest events first. Default is 'desc'. -- **event_types_to_include** (`string`, optional) Specify event types to include: 'web' for web events, 'git' for Git events, or 'all' for both. Defaults to 'web'. -- **result_page_number** (`integer`, optional) The page number of audit log results to fetch. -- **results_per_page** (`integer`, optional) Specify the number of results to display per page, with a maximum limit of 100. -- **search_events_before_cursor** (`string`, optional) A cursor to filter events occurring before the specified position in the audit log. -- **search_phrase** (`string`, optional) A search phrase to filter audit log entries. Refer to [GitHub Docs](https://docs.github.com/enterprise-server@3.8/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/searching-the-audit-log-for-your-enterprise#searching-the-audit-log) for more details. - -## GithubApi.ListEnterpriseCodeScanningAlerts - -
- - -Retrieve code scanning alerts for enterprise repositories. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug version or ID of the enterprise. Used to specify which enterprise's alerts to list. -- **alert_state_filter** (`string`, optional) Filter code scanning alerts by their state. Valid values are 'open', 'closed', 'dismissed', 'fixed'. -- **code_scanning_tool_guid** (`string`, optional) The GUID of a code scanning tool to filter alerts. Use either `code_scanning_tool_guid` or `code_scanning_tool_name`, but not both. -- **code_scanning_tool_name** (`string`, optional) The name of a code scanning tool to filter results. Use either this or `tool_guid`, but not both. -- **query_results_before_cursor** (`string`, optional) The cursor from the Link header to search for alerts before this point. -- **results_page_number** (`integer`, optional) Specify the page number to fetch results from. Used for pagination of code scanning alerts. -- **results_per_page** (`integer`, optional) The number of alerts to return per page, with a maximum of 100. -- **sort_direction** (`string`, optional) Specifies the sorting order of the results, either ascending ('asc') or descending ('desc'). -- **sort_property** (`string`, optional) Specify the property to sort the results by. Valid values are 'created' or 'updated'. -- **start_after_cursor** (`string`, optional) Specifies the cursor to return results after this point. Utilize the cursor from the Link header. - -## GithubApi.GetSecurityAnalysisSettings - -
- - -Get security analysis settings for an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug version or ID of the enterprise. Use the enterprise's slug name or its ID to specify it. - -## GithubApi.UpdateSecuritySettingsEnterprise - -
- - -Update security and scanning settings for enterprise repositories. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise. Accepts the enterprise's slug name or ID for identification. -- **enable_dependabot_alerts_for_new_repositories** (`boolean`, optional) Set to true to automatically enable Dependabot alerts for new repositories. - -## GithubApi.ListEnterpriseDependabotAlerts - -
- - -Get Dependabot alerts for enterprise-owned repositories. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise. This identifies the enterprise for which alerts are listed. -- **alert_severities** (`string`, optional) A comma-separated list of alert severities to filter results. Options: `low`, `medium`, `high`, `critical`. -- **alert_state_filter** (`string`, optional) Comma-separated list of alert states to filter by: `dismissed`, `fixed`, `open`. Only alerts with these states will be returned. -- **before_cursor** (`string`, optional) Specify a cursor to fetch results before this point. Use the format provided in the Link header. -- **cursor_after** (`string`, optional) A cursor to return results after a specific point. Use as given in the Link header for pagination. -- **ecosystem_list** (`string`, optional) A comma-separated list of ecosystems to filter alerts. Options include: `composer`, `go`, `maven`, `npm`, `nuget`, `pip`, `pub`, `rubygems`, `rust`. -- **number_of_results_per_page_starting_first** (`integer`, optional) **Deprecated**. Specifies the number of results per page (maximum 100), beginning with the first matching result. Avoid using with `number_of_results_per_page_starting_last`. Use `results_per_page` with `paging_after_cursor` instead. -- **package_filter** (`string`, optional) A comma-separated list of package names. Specify to filter alerts by these packages. -- **results_per_page** (`integer`, optional) The number of results to return per page, with a maximum of 100. -- **results_per_page_starting_from_last** (`integer`, optional) **Deprecated**. Number of results per page (max 100), starting from the last matching result. Avoid using with 'results_per_page_starting_from_first'. -- **sort_direction** (`string`, optional) Specifies the sorting order of the results, either ascending ('asc') or descending ('desc'). -- **sort_property_for_alerts** (`string`, optional) Specifies the property to sort Dependabot alerts by. Options are 'created' (when the alert was created) or 'updated' (when the alert's state last changed). -- **vulnerable_dependency_scope** (`string`, optional) The scope of the vulnerable dependency to filter alerts by. Options: 'development', 'runtime'. - -## GithubApi.ListSecretScanningAlertsForEnterprise - -
- - -Retrieve secret scanning alerts for enterprise repositories. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID of the enterprise. This identifies the specific enterprise to list alerts for. -- **alert_resolution_filters** (`string`, optional) Comma-separated list of alert resolutions to filter by: false_positive, wont_fix, revoked, pattern_edited, pattern_deleted, used_in_tests. -- **alert_state_filter** (`string`, optional) Specify if only 'open' or 'resolved' secret scanning alerts should be listed. -- **cursor_after** (`string`, optional) A cursor for retrieving results after this point, as specified in the Link header. -- **cursor_before** (`string`, optional) A cursor to fetch results before this point, as specified by the link header. -- **results_per_page** (`integer`, optional) The number of results per page. Maximum is 100. -- **secret_types_to_return** (`string`, optional) A comma-separated list of secret types to return. By default, all secret types are returned. Refer to GitHub's secret scanning patterns documentation for supported types. -- **sort_by** (`string`, optional) Specify 'created' to sort by alert creation date or 'updated' to sort by the last update or resolution date. -- **sort_direction** (`string`, optional) Specify the direction ('asc' or 'desc') to sort the secret scanning alerts results. - -## GithubApi.GetGithubSecurityBillingInfo - -
- - -Retrieve GitHub Advanced Security billing details for an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug or ID representing the enterprise name for security billing info. -- **results_page_number** (`integer`, optional) Specify the page number of results to fetch. Use to navigate through paginated data. -- **results_per_page** (`integer`, optional) The number of results per page to return. Maximum is 100. - -## GithubApi.ManageEnterpriseSecurityFeature - -
- - -Enable or disable a security feature for an enterprise. - -**Parameters** - -- **enterprise_identifier** (`string`, required) The slug version of the enterprise name or the enterprise ID. -- **security_feature** (`string`, required) Specify the security feature to enable or disable. Options: 'advanced_security', 'secret_scanning', 'secret_scanning_push_protection'. -- **set_enablement_status** (`string`, required) Specify 'enable_all' to activate or 'disable_all' to deactivate the security feature for all repositories in the enterprise. - -## GithubApi.ListRecentGithubEvents - -
- - -Retrieve recent public events from GitHub. - -**Parameters** - -- **page_number** (`integer`, optional) The page number of the GitHub public event results to fetch. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. - -## GithubApi.GetGithubFeeds - -
- - -Retrieve available GitHub feeds for an authenticated user. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.ListUserGists - -
- - -Lists a user's gists or public gists if unauthenticated. - -**Parameters** - -- **page_number_to_fetch** (`integer`, optional) Specify the page number of the results to fetch. -- **results_per_page** (`integer`, optional) Specify the number of gists to return per page. Maximum is 100. -- **show_gists_since** (`string`, optional) Show gists updated after the specified time in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. - -## GithubApi.CreateGist - -
- - -Create a new gist with one or more files on GitHub. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListRecentPublicGists - -
- - -Retrieve the most recently updated public gists. - -**Parameters** - -- **result_page_number** (`integer`, optional) Page number to fetch the results from. Use for pagination. -- **results_per_page** (`integer`, optional) Specifies the number of gists to display per page. Maximum allowed is 100. -- **updated_since** (`string`, optional) A timestamp in ISO 8601 format to filter gists updated after this time. - -## GithubApi.ListStarredGists - -
- - -Retrieve the authenticated user's starred gists. - -**Parameters** - -- **results_page_number** (`integer`, optional) Specifies which page of results to fetch for the user's starred gists. -- **results_per_page** (`integer`, optional) Specify the number of results per page. Maximum allowed is 100. -- **updated_since_time** (`string`, optional) Only show gists updated after this time. Use ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. - -## GithubApi.DeleteGithubGist - -
- - -Delete a GitHub gist by its ID. - -**Parameters** - -- **gist_identifier** (`string`, required) The unique identifier for the GitHub gist to be deleted. - -## GithubApi.GetGithubGist - -
- - -Retrieve details of a specific GitHub gist using its ID. - -**Parameters** - -- **gist_identifier** (`string`, required) The unique identifier for the GitHub gist you want to retrieve. - -## GithubApi.UpdateGithubGist - -
- - -Update a GitHub gist's description and files. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **gist_unique_identifier** (`string`, optional) The unique identifier of the GitHub gist to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListGistComments - -
- - -Retrieve comments for a specific GitHub gist. - -**Parameters** - -- **gist_identifier** (`string`, required) Provide the unique identifier of the gist for which comments are to be listed. -- **result_page_number** (`integer`, optional) Specifies the page number to fetch from the list of gist comments. -- **results_per_page** (`integer`, optional) The number of comments to return per page, with a maximum of 100. - -## GithubApi.CreateGistComment - -
- - -Create a comment on a GitHub gist. - -**Parameters** - -- **comment_text** (`string`, required) The text content of the comment to be added to the gist. -- **gist_unique_identifier** (`string`, required) The unique identifier of the gist to comment on. - -## GithubApi.DeleteGistComment - -
- - -Delete a comment from a GitHub gist. - -**Parameters** - -- **comment_identifier** (`integer`, required) The unique identifier of the comment to be deleted. -- **gist_identifier** (`string`, required) The unique identifier for the specific GitHub gist from which the comment is to be deleted. - -## GithubApi.GetGistComment - -
- - -Retrieve a specific comment from a GitHub gist. - -**Parameters** - -- **comment_id** (`integer`, required) Unique identifier for the gist comment to retrieve details for. -- **gist_unique_id** (`string`, required) The unique identifier for the gist needed to retrieve a specific comment. - -## GithubApi.UpdateGistComment - -
- - -Update an existing comment on a GitHub gist. - -**Parameters** - -- **comment_identifier** (`integer`, required) The unique identifier of the comment to update. -- **comment_text** (`string`, required) The text content of the gist comment to be updated. -- **gist_identifier** (`string`, required) The unique identifier for the GitHub gist you want to update a comment on. - -## GithubApi.ListGistCommits - -
- - -Retrieve the commit history of a specified GitHub gist. - -**Parameters** - -- **gist_identifier** (`string`, required) The unique identifier of the gist for which to list commits. -- **results_page_number** (`integer`, optional) Specify the page number of results to fetch for pagination. Useful for accessing more than the default result set. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100. - -## GithubApi.ListGistForks - -
- - -Retrieve a list of forks for a specific gist. - -**Parameters** - -- **gist_unique_identifier** (`string`, required) The unique identifier of the gist to retrieve forks information from. -- **results_page_number** (`integer`, optional) Specify the page number of the results you want to fetch. Used for pagination. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100 allowed. - -## GithubApi.ForkGist - -
- - -Fork a GitHub gist to your account. - -**Parameters** - -- **gist_unique_identifier** (`string`, required) The unique identifier of the GitHub gist to be forked. This is required to specify which gist to duplicate. - -## GithubApi.UnstarGithubGist - -
- - -Unstar a GitHub gist by its ID. - -**Parameters** - -- **gist_identifier** (`string`, required) The unique identifier for the GitHub gist to be unstarred. - -## GithubApi.CheckIfGistIsStarred - -
- - -Determine if a specific gist is starred on GitHub. - -**Parameters** - -- **gist_identifier** (`string`, required) The unique identifier for the gist to check if it is starred. - -## GithubApi.StarGithubGist - -
- - -Star a gist on GitHub using its gist ID. - -**Parameters** - -- **gist_unique_id** (`string`, required) The unique identifier of the gist to be starred on GitHub. - -## GithubApi.GetGistRevision - -
- - -Retrieve a specific revision of a GitHub gist. - -**Parameters** - -- **gist_identifier** (`string`, required) The unique identifier of the GitHub gist to retrieve a specific revision. -- **revision_sha** (`string`, required) The SHA hash of the specific gist revision to retrieve. - -## GithubApi.ListGitignoreTemplates - -
- - -Retrieve all available .gitignore templates from GitHub. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.FetchGitignoreTemplate - -
- - -Fetches the raw .gitignore template by name. - -**Parameters** - -- **gitignore_template_name** (`string`, required) The name of the .gitignore template to fetch from GitHub. This is required to specify which template's raw content to retrieve. - -## GithubApi.ListGithubAppAccessibleRepos - -
- - -List repositories accessible to a GitHub app installation. - -**Parameters** - -- **results_page_number** (`integer`, optional) Page number of the results to fetch. -- **results_per_page** (`integer`, optional) The number of repositories to include on each page of results. Maximum is 100. - -## GithubApi.RevokeGithubInstallationToken - -
- - -Revoke your GitHub installation access token. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.ListGithubIssues - -
- - -Get issues assigned to you across all GitHub repositories. - -**Parameters** - -- **include_collaborative_repositories** (`boolean`, optional) Include issues from collaborative repositories. Set to true to filter issues where you have collaborative access. -- **include_owned_repositories** (`boolean`, optional) Set to true to include issues from repositories owned by the authenticated user. -- **include_pull_requests** (`boolean`, optional) Set to true to include pull requests in the issues list. -- **issue_filter_type** (`string`, optional) Specifies the type of issues to return: assigned, created, mentioned, subscribed, repos, or all. -- **issue_labels** (`string`, optional) Comma-separated list of label names to filter issues. Example: 'bug,ui,@high'. -- **issue_state** (`string`, optional) Specifies the state of issues to retrieve: `open`, `closed`, or `all`. -- **organization_repositories** (`boolean`, optional) Include issues from organization repositories when set to true. If false, include issues from all repositories. -- **page_number** (`integer`, optional) The specific page of results to fetch. Use this for pagination to navigate through large list of issues. -- **results_per_page** (`integer`, optional) The number of results per page, maximum is 100. -- **sort_direction** (`string`, optional) Specifies the order of sorting for the results. Use 'asc' for ascending and 'desc' for descending. -- **sort_issues_by** (`string`, optional) Specify the criteria to sort issues by: 'created', 'updated', or 'comments'. -- **updated_since_timestamp** (`string`, optional) Show issues updated after this timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ. - -## GithubApi.GetCommonlyUsedLicenses - -
- - -Fetch a list of commonly used software licenses. - -**Parameters** - -- **only_featured_licenses** (`boolean`, optional) Set to true to return only featured licenses. -- **results_page_number** (`integer`, optional) Page number of the results to fetch. Use to navigate through pages of results. -- **results_per_page** (`integer`, optional) Specify the number of licenses to display per page, with a maximum of 100. - -## GithubApi.GetGithubLicense - -
- - -Retrieve a specific GitHub license by its key. - -**Parameters** - -- **license_key** (`string`, required) The key of the GitHub license to retrieve information about. - -## GithubApi.RenderMarkdown - -
- - -Convert Markdown content to HTML rendering. - -**Parameters** - -- **markdown_text** (`string`, required) The Markdown text to convert into HTML format. -- **rendering_mode** (`string`, optional) Specifies the rendering mode: 'markdown' for plain Markdown or 'gfm' for GitHub Flavored Markdown. -- **repository_context** (`string`, optional) The repository context for linking references in `gfm` mode (e.g., 'octo-org/octo-repo'). - -## GithubApi.RenderMarkdownPlain - -
- - -Convert Markdown text to rendered plain text format. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.GetGithubEnterpriseMetaInfo - -
- - -Retrieve GitHub Enterprise Server meta information. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.ListRepoNetworkPublicEvents - -
- - -Retrieve public events for a network of repositories. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This value is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. This value is not case sensitive. -- **results_page_number** (`integer`, optional) Specify the page number of results to retrieve. Use this to navigate through paginated results. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. - -## GithubApi.ListUserNotifications - -
- - -Retrieve notifications for the authenticated GitHub user. - -**Parameters** - -- **filter_notifications_before_date** (`string`, optional) Only show notifications updated before the specified ISO 8601 timestamp (`YYYY-MM-DDTHH:MM:SSZ`). -- **include_read_notifications** (`boolean`, optional) Set to `true` to include notifications marked as read in the results. -- **notifications_since_timestamp** (`string`, optional) Return notifications updated after this timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ. -- **only_show_participating_notifications** (`boolean`, optional) If true, only shows notifications where the user is directly participating or mentioned. -- **results_page_number** (`integer`, optional) Specify the page number of the notification results to fetch. -- **results_per_page** (`integer`, optional) The number of notifications to display per page, with a maximum limit of 50. - -## GithubApi.MarkGithubNotificationsAsRead - -
- - -Mark all GitHub notifications as read for the current user. - -**Parameters** - -- **mark_notifications_as_read** (`boolean`, optional) A boolean flag to set notifications as read. True marks notifications as read. -- **notifications_last_read_timestamp** (`string`, optional) A timestamp marking the last time notifications were checked. Notifications updated since this time won't be marked as read. Use ISO 8601 format `YYYY-MM-DDTHH:MM:SSZ`. Leave empty to mark all as read. - -## GithubApi.GetGithubNotificationThread - -
- - -Retrieve information about a GitHub notification thread. - -**Parameters** - -- **notification_thread_id** (`integer`, required) The unique identifier of the notification thread, returned in the `id` field when retrieving notifications. - -## GithubApi.MarkGithubThreadAsRead - -
- - -Mark a GitHub thread notification as read. - -**Parameters** - -- **notification_thread_id** (`integer`, required) The unique identifier for the GitHub notification thread to be marked as read. Obtain this from the `id` field when retrieving notifications. - -## GithubApi.MuteGithubThreadNotifications - -
- - -Mute all future notifications for a GitHub thread. - -**Parameters** - -- **notification_thread_id** (`integer`, required) The unique identifier for the specific GitHub notification thread to mute. Obtain from the `id` field of fetched notifications. - -## GithubApi.CheckThreadSubscription - -
- - -Check if the authenticated user is subscribed to a thread. - -**Parameters** - -- **notification_thread_id** (`integer`, required) The unique identifier of the notification thread, retrieved from notification data. - -## GithubApi.ManageGithubThreadNotifications - -
- - -Manage GitHub notifications for specific threads. - -**Parameters** - -- **notification_thread_id** (`integer`, required) The unique ID of the notification thread, as retrieved from the GitHub notifications API. -- **ignore_thread_notifications** (`boolean`, optional) Set to true to block all notifications from a thread. Use false to allow notifications. - -## GithubApi.GetOctocatAsciiArt - -
- - -Retrieve the octocat as ASCII art. - -**Parameters** - -- **speech_bubble_text** (`string`, optional) Text to display in Octocat's speech bubble. Provide a string with the desired message. - -## GithubApi.ListGithubOrganizations - -
- - -Retrieve a list of GitHub organizations. - -**Parameters** - -- **organization_id_since** (`integer`, optional) Only return organizations with an ID greater than this value to paginate results. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page, with a maximum value of 100. - -## GithubApi.ListGithubCustomRoles - -
- - -Retrieve custom repository roles for a GitHub organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the GitHub organization to list custom roles for. - -## GithubApi.GetGithubOrgInfo - -
- - -Retrieve detailed information about a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization to retrieve information for. It is not case sensitive. - -## GithubApi.UpdateGithubOrganization - -
- - -Update a GitHub organization's profile and member privileges. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_name** (`string`, optional) The GitHub organization name. This is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.FetchOrgActionsCacheUsage - -
- - -Fetches GitHub Actions cache usage for a specified organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It should not be case sensitive. - -## GithubApi.GetGithubActionsCacheUsageForOrg - -
- - -Retrieve GitHub Actions cache usage for an organization's repositories. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization to retrieve cache usage for. This is not case sensitive. -- **page_number** (`integer`, optional) Specify the page number of the results to fetch. This is useful for paginated data retrieval. -- **results_per_page** (`integer`, optional) The number of results to return per page, with a maximum of 100 entries. - -## GithubApi.GetOidcCustomSubTemplateForOrg - -
- - -Retrieves the OIDC subject claim customization template for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization for which you want to retrieve the OIDC customization template. The name is not case sensitive. - -## GithubApi.UpdateGithubOidcTemplate - -
- - -Update OIDC custom subject claim template for GitHub organization. - -**Parameters** - -- **include_claim_keys** (`array[string]`, required) Array of unique strings for OIDC claim keys with alphanumeric characters and underscores. -- **organization_name** (`string`, required) The name of the GitHub organization. Case insensitive. - -## GithubApi.GetGithubActionsPermissionsForOrganization - -
- - -Retrieve GitHub Actions permissions for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The organization name for which to retrieve GitHub Actions permissions. The name is not case sensitive. - -## GithubApi.ConfigureGithubActionsPermissions - -
- - -Configure GitHub Actions permissions for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **repository_execution_policy** (`string`, required) Specifies which repositories in the organization are allowed to run GitHub Actions. Options: 'all', 'none', 'selected'. -- **allowed_actions_policy** (`string`, optional) Specifies the permissions policy for actions: 'all', 'local_only', or 'selected'. - -## GithubApi.ListActionsEnabledRepos - -
- - -Retrieve repositories enabled for GitHub Actions in an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization for which to list GitHub Actions-enabled repositories. This field is not case sensitive. -- **result_page_number** (`integer`, optional) Page number of the results to fetch. Use for paginating through results. -- **results_per_page** (`integer`, optional) The maximum number of repositories to return per page (max 100). - -## GithubApi.SetGithubActionsReposForOrg - -
- - -Configure selected repositories for GitHub Actions in an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive. -- **repository_ids_for_github_actions** (`array[integer]`, required) An array of repository IDs to enable for GitHub Actions within the organization. Each ID should be an integer. - -## GithubApi.DisableGithubActionsRepo - -
- - -Disable GitHub Actions for a specific repo in an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **repository_unique_id** (`integer`, required) The unique integer identifier of the repository to be disabled for GitHub Actions. - -## GithubApi.EnableGithubActionsForRepo - -
- - -Enable a repository for GitHub Actions in an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization to enable GitHub Actions for, not case sensitive. -- **repository_unique_identifier** (`integer`, required) The unique identifier of the repository to enable for GitHub Actions. - -## GithubApi.GetAllowedActionsForOrganization - -
- - -Retrieve the allowed GitHub Actions for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. This is not case sensitive. - -## GithubApi.SetAllowedActionsForOrganization - -
- - -Set allowed GitHub Actions for an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_name** (`string`, optional) The name of the GitHub organization. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.GetDefaultGithubActionsWorkflowPermissions - -
- - -Fetches default workflow permissions for an organization's GitHub Actions. - -**Parameters** - -- **organization_name** (`string`, required) The organization name for which to fetch the workflow permissions. It is not case sensitive. - -## GithubApi.SetDefaultGithubActionsPermissions - -
- - -Configure default GitHub Actions permissions for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. Not case sensitive. -- **allow_actions_to_approve_pull_requests** (`boolean`, optional) Allow GitHub Actions to approve pull requests. Enabling this may pose a security risk. -- **default_github_token_permissions** (`string`, optional) The default permissions granted to the GITHUB_TOKEN when running workflows. Options are 'read' or 'write'. - -## GithubApi.ListRequiredWorkflows - -
- - -Retrieve all required workflows in a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name. Note: The name is not case sensitive. This identifies which organization's workflows to list. -- **results_page_number** (`integer`, optional) The specific page number of required workflow results to fetch. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100. - -## GithubApi.CreateGithubRequiredWorkflow - -
- - -Create a required workflow in a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **repository_identifier** (`string`, required) The ID of the repository that contains the workflow file. Use this to specify which repository's workflow file should be used. -- **workflow_file_path** (`string`, required) Path of the workflow file to set as required for the organization. -- **repository_ids_for_selected_scope** (`array[integer]`, optional) List of repository IDs to enable the workflow when `scope` is 'selected'. -- **workflow_scope** (`string`, optional) Specify whether to enable the required workflow for all repositories or only selected ones within the organization. Use 'all' for all repositories and 'selected' when specifying particular repositories. - -## GithubApi.DeleteGithubRequiredWorkflow - -
- - -Deletes a required workflow in a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name. This is case insensitive. -- **workflow_identifier** (`integer`, required) The unique identifier of the required workflow to be deleted. - -## GithubApi.GetRequiredWorkflow - -
- - -Retrieve a required workflow for a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name. This name is not case sensitive. -- **workflow_id** (`integer`, required) The unique identifier of the workflow to retrieve for the organization. - -## GithubApi.UpdateGithubRequiredWorkflow - -
- - -Update a required workflow in a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **required_workflow_identifier** (`integer`, required) The unique identifier for the required workflow to update in the organization. -- **repository_id_for_workflow** (`string`, optional) The ID of the repository containing the workflow file to be updated. -- **repository_ids_for_workflow** (`array[integer]`, optional) List of repository IDs to enable the required workflow. Applicable only if `scope` is `selected`. -- **workflow_file_path** (`string`, optional) Path to the workflow file to be set as a required workflow in the organization. -- **workflow_scope** (`string`, optional) Specify the repository scope for enabling the workflow: 'all' for all repositories or 'selected' for specific ones within the organization. - -## GithubApi.ListRequiredWorkflowRepositories - -
- - -List repositories configured for a required workflow. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive and identifies the organization within GitHub. -- **workflow_unique_identifier** (`integer`, required) The unique identifier of the required workflow for which the repositories are to be listed. - -## GithubApi.SetGithubReposForRequiredWorkflow - -
- - -Set repositories for a GitHub required workflow. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name. Input is not case sensitive. -- **repository_ids_for_required_workflow** (`array[integer]`, required) An array of repository IDs for which the workflow is required. Provide each repository's ID as an integer. -- **required_workflow_identifier** (`integer`, required) The unique identifier for the required workflow you want to set for the repositories. - -## GithubApi.RemoveRepoFromRequiredWorkflow - -
- - -Removes a repository from a GitHub required workflow. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. This is not case sensitive. -- **repository_identifier** (`integer`, required) The unique identifier of the repository to be removed from the required workflow. -- **required_workflow_identifier** (`integer`, required) The unique identifier of the required workflow to be removed. - -## GithubApi.AddRepoToRequiredWorkflow - -
- - -Adds a repository to a GitHub required workflow. - -**Parameters** - -- **organization_name** (`string`, required) The organization name for GitHub. It is not case sensitive. -- **repository_unique_identifier** (`integer`, required) The unique identifier for the GitHub repository to be added to the required workflow. -- **required_workflow_identifier** (`integer`, required) The unique integer ID of the required workflow to which the repository will be added. - -## GithubApi.ListRunnerGroupsForOrg - -
- - -Retrieve self-hosted runner groups for a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization's name. This is not case sensitive. -- **repository_visibility_filter** (`string`, optional) Specify the repository to filter runner groups that they are allowed to be used by. -- **results_page_number** (`integer`, optional) Specify the page number of the results to fetch. Use an integer value. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. - -## GithubApi.CreateRunnerGroupForOrg - -
- - -Create a self-hosted runner group for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive. -- **runner_group_name** (`string`, required) Name of the self-hosted runner group to be created. This should be a descriptive and distinct name within your organization. -- **accessible_repository_ids** (`array[integer]`, optional) List of repository IDs that can access the runner group. -- **allow_public_repositories** (`boolean`, optional) Set to true to allow the runner group to be used by public repositories. -- **allowed_workflows** (`array[string]`, optional) List of workflows names the runner group is permitted to run. Considered only if 'restricted_to_workflows' is true. -- **restrict_to_selected_workflows** (`boolean`, optional) Set to true to restrict the runner group to run only the workflows in the selected_workflows array. -- **runner_group_visibility** (`string`, optional) Specify the visibility of the runner group: 'selected' for individual repositories, 'all' for all repositories, or 'private' for private repositories only. -- **runner_ids_to_add** (`array[integer]`, optional) List of runner IDs to include in the newly created runner group for the organization. - -## GithubApi.DeleteRunnerGroupFromOrganization - -
- - -Delete a self-hosted runner group from an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization on GitHub. This is not case-sensitive. -- **runner_group_id** (`integer`, required) The unique integer ID of the self-hosted runner group to delete. - -## GithubApi.GetSelfHostedRunnerGroupForOrg - -
- - -Retrieve a specific self-hosted runner group for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The organization name on GitHub. It is not case sensitive. -- **runner_group_identifier** (`integer`, required) Unique identifier for the self-hosted runner group. It should be an integer. - -## GithubApi.UpdateRunnerGroupSettings - -
- - -Update name and visibility of a runner group in an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. The name is not case sensitive. -- **runner_group_id** (`integer`, required) Unique identifier of the self-hosted runner group being updated. -- **runner_group_name** (`string`, required) The new name for the self-hosted runner group in the organization. -- **allow_public_repository_usage** (`boolean`, optional) Set to `true` to allow the runner group to be used by public repositories. -- **allowed_workflow_list** (`array[string]`, optional) List of workflows the runner group can run. Ignored unless workflows are restricted. -- **restrict_runner_group_to_workflows** (`boolean`, optional) Set to `true` to restrict the runner group to running only the workflows specified in `selected_workflows`. -- **runner_group_visibility** (`string`, optional) Specifies the visibility of the runner group. Options: 'selected' for individual repositories, 'all' for all repositories, 'private' for all private repositories. - -## GithubApi.ListReposWithRunnerGroupAccess - -
- - -Retrieve repositories with access to a runner group in an organization. - -**Parameters** - -- **organization_name** (`string`, required) The case-insensitive name of the organization. -- **runner_group_id** (`integer`, required) Unique identifier of the self-hosted runner group to fetch repository access details. -- **result_page_number** (`integer`, optional) Page number of the results to fetch. -- **results_per_page** (`integer`, optional) The number of results to retrieve per page, with a maximum of 100. - -## GithubApi.SetGithubRunnerGroupRepoAccess - -
- - -Update repository access for a GitHub runner group. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **repository_ids_for_access** (`array[integer]`, required) List of repository IDs allowed to access the self-hosted runner group. -- **runner_group_id** (`integer`, required) Unique identifier for the self-hosted runner group in the organization. - -## GithubApi.RemoveRepoAccessFromRunnerGroup - -
- - -Remove repository access from a self-hosted runner group. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. This input is not case sensitive. -- **repository_unique_id** (`integer`, required) The unique identifier of the repository to remove access from the runner group. Must be an integer. -- **runner_group_unique_id** (`integer`, required) Unique identifier of the self-hosted runner group. This is required to specify which runner group's access will be modified. - -## GithubApi.AddRepoAccessToRunnerGroup - -
- - -Add repository access to a self-hosted runner group. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive. -- **repository_unique_id** (`integer`, required) The unique identifier of the repository to add access for. -- **runner_group_identifier** (`integer`, required) Provide the unique integer identifier for the self-hosted runner group. - -## GithubApi.ListOrgRunnerGroupRunners - -
- - -List self-hosted runners in an organization group. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive. -- **runner_group_id** (`integer`, required) Unique identifier of the self-hosted runner group to fetch runners for. -- **result_page_number** (`integer`, optional) Specifies the page number of results to be fetched. Used for pagination. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100. - -## GithubApi.UpdateSelfHostedRunnersForOrgGroup - -
- - -Update self-hosted runners in an organization's runner group. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive. -- **runner_group_id** (`integer`, required) Unique identifier for the self-hosted runner group to update. -- **runner_ids_to_add** (`array[integer]`, required) Array of integer IDs representing the runners to be added to the organization runner group. - -## GithubApi.RemoveRunnerFromGroup - -
- - -Remove a self-hosted runner from an organization's group. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. This value is not case sensitive. -- **runner_group_identifier** (`integer`, required) Unique identifier of the self-hosted runner group for removal action. -- **runner_id** (`integer`, required) Unique identifier of the self-hosted runner to remove from the group. - -## GithubApi.AddRunnerToGroup - -
- - -Add a self-hosted runner to an organization's runner group. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **runner_group_identifier** (`integer`, required) The unique integer identifier of the self-hosted runner group to which the runner will be added. -- **runner_identifier** (`integer`, required) Unique identifier of the self-hosted runner to be added to the group. - -## GithubApi.ListOrgSelfHostedRunners - -
- - -Retrieve self-hosted runners for a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization's name. This is case insensitive. -- **results_page_number** (`integer`, optional) Specify the page number of the results to fetch. For paginated data retrieval. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page, with a maximum of 100. - -## GithubApi.ListGithubRunnerBinariesForOrg - -
- - -Retrieve downloadable binaries for GitHub runner application. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. The organization name is not case sensitive. - -## GithubApi.CreateOrgRunnerRegistrationToken - -
- - -Generate a registration token for GitHub organization runners. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. This is not case-sensitive. - -## GithubApi.GetOrgRunnerRemovalToken - -
- - -Get a token to remove a self-hosted runner from an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. - -## GithubApi.RemoveSelfHostedRunnerFromOrg - -
- - -Forcefully remove a self-hosted runner from an organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization's name. This input is not case sensitive. -- **runner_id** (`integer`, required) Unique identifier of the self-hosted GitHub runner to be removed. - -## GithubApi.GetOrgSelfHostedRunner - -
- - -Get details of a self-hosted runner for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name (not case sensitive). -- **runner_id** (`integer`, required) Unique integer identifier of the self-hosted runner within the organization. - -## GithubApi.RemoveAllCustomLabelsRunnerOrg - -
- - -Remove all custom labels from an organization's self-hosted runner. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name, not case sensitive. -- **runner_id** (`integer`, required) The unique identifier of the self-hosted runner. This is required to target the specific runner for label removal in an organization. - -## GithubApi.ListRunnerLabelsForOrg - -
- - -Retrieve labels for a self-hosted runner in an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. This parameter is not case sensitive. -- **runner_unique_id** (`integer`, required) The unique identifier for the self-hosted runner. It must be an integer. - -## GithubApi.AddLabelsToRunner - -
- - -Add custom labels to a self-hosted runner in an organization. - -**Parameters** - -- **custom_labels_to_add** (`array[string]`, required) An array of strings representing the custom labels to add to the self-hosted runner. Each label is a string. -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **runner_id** (`integer`, required) Unique identifier of the self-hosted runner to which labels are added. - -## GithubApi.SetCustomLabelsRunnerOrg - -
- - -Set custom labels for a self-hosted runner in an organization. - -**Parameters** - -- **custom_labels** (`array[string]`, required) An array of custom label names to assign to the runner. Pass an empty array to remove all labels. -- **organization_name** (`string`, required) The name of the organization. This is not case sensitive. -- **runner_identifier** (`integer`, required) Unique identifier of the self-hosted runner to set custom labels. - -## GithubApi.DeleteCustomRunnerLabel - -
- - -Remove a custom label from a self-hosted runner in an organization. - -**Parameters** - -- **custom_label_name** (`string`, required) The name of the custom label to remove from the self-hosted runner. -- **organization_name** (`string`, required) The case-insensitive name of the organization. -- **runner_identifier** (`integer`, required) Unique identifier of the self-hosted runner. Must be an integer. - -## GithubApi.ListOrganizationSecrets - -
- - -Retrieve all organization secrets without values. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name to list secrets for. This name is not case-sensitive. -- **page_number** (`integer`, optional) Page number of the results to fetch for pagination purposes. -- **results_per_page** (`integer`, optional) Specify the number of secrets to list per page, with a maximum of 100. - -## GithubApi.GetOrganizationPublicKey - -
- - -Retrieve the public key for GitHub organization secrets encryption. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name. This is not case sensitive. - -## GithubApi.DeleteGithubOrgSecret - -
- - -Deletes a secret from a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name, not case sensitive. -- **secret_name** (`string`, required) The name of the secret to be deleted from the GitHub organization. Ensure the name is correct and case insensitive. - -## GithubApi.GetGithubOrgSecret - -
- - -Retrieve details of a GitHub organization secret. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name. This name is not case sensitive. -- **secret_name** (`string`, required) The name of the secret within the GitHub organization. It identifies which secret's details to retrieve. - -## GithubApi.CreateOrUpdateOrgSecret - -
- - -Create or update an organization's secret on GitHub. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **repository_visibility** (`string`, required) Specifies which type of organization repositories have access to the organization secret. Choices are 'all', 'private', or 'selected'. -- **secret_name** (`string`, required) The name of the secret. It's used to identify the secret within the organization. -- **encrypted_secret_value** (`string`, optional) The secret's encrypted value using LibSodium and a GitHub org public key. -- **encryption_key_id** (`string`, optional) The ID of the public key used to encrypt the secret. This must match the key used during encryption. -- **repository_ids_for_secret_access** (`array[integer]`, optional) Array of repository ids allowed access to the secret. Provide only when `visibility` is `selected`. - -## GithubApi.ListReposWithOrgSecret - -
- - -Retrieve repositories with access to a specific organization secret. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive. -- **secret_name** (`string`, required) The name of the secret for which to list selected repositories. Case insensitive. -- **result_page_number** (`integer`, optional) Page number of the results to fetch for pagination. -- **results_per_page** (`integer`, optional) The number of repositories to return per page, with a maximum of 100 allowed. - -## GithubApi.UpdateOrgSecretRepos - -
- - -Update repositories for an organization secret. - -**Parameters** - -- **organization_name** (`string`, required) The organization's name for the secret. It is not case sensitive. -- **repository_ids_for_access** (`array[integer]`, required) An array of repository IDs allowed to access the organization secret when visibility is set to 'selected'. -- **secret_name** (`string`, required) The name of the organization secret to update repositories for. This value is case-insensitive. - -## GithubApi.RemoveRepoFromOrgSecret - -
- - -Remove a repository from an organization's secret access. - -**Parameters** - -- **organization_name** (`string`, required) The organization name. It is not case sensitive. -- **repository_id** (`integer`, required) The unique ID of the repository to be removed from the organization's secret. -- **secret_name** (`string`, required) The name of the organization secret to remove the repository from. - -## GithubApi.AddRepoToOrgSecret - -
- - -Add a repository to an organization's secret. - -**Parameters** - -- **organization_name** (`string`, required) The organization's name. It is not case sensitive. -- **repository_id** (`integer`, required) The unique integer ID of the repository to be added to the organization secret. This ID specifies which repository you want to include. -- **secret_name** (`string`, required) The name of the organization secret to which the repository will be added. - -## GithubApi.ListOrgVariables - -
- - -Retrieve all variables for a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **result_page_number** (`integer`, optional) Specify the page number of the organization variables to retrieve. -- **results_per_page** (`integer`, optional) The number of results to display per page, up to a maximum of 30. - -## GithubApi.CreateGithubOrgVariable - -
- - -Create an organization variable for GitHub Actions workflows. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive. -- **repository_access_visibility** (`string`, required) Type of repositories in the organization that can access the variable: 'all', 'private', or 'selected'. -- **variable_name** (`string`, required) The name of the organization variable to be created. This name will be used to reference the variable in workflows. -- **variable_value** (`string`, required) The value assigned to the organization variable in GitHub. -- **repository_ids_with_variable_access** (`array[integer]`, optional) List of repository IDs allowed to access the organization variable. Required when 'visibility' is 'selected'. - -## GithubApi.DeleteGithubOrgVariable - -
- - -Delete an organization's variable on GitHub. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. This is not case sensitive. -- **variable_name** (`string`, required) The name of the organization variable to delete. It should be a string matching the variable's identifier. - -## GithubApi.GetOrganizationVariable - -
- - -Retrieve a specific variable from a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name. This value is not case sensitive. -- **variable_name** (`string`, required) The exact name of the specific variable to retrieve from the organization. - -## GithubApi.UpdateGithubOrgActionVariable - -
- - -Update an organization variable in GitHub Actions. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization's name. This name is not case sensitive. -- **repository_ids_for_selected_visibility** (`array[integer]`, optional) An array of repository IDs that can access the organization variable. Only provide when `visibility` is set to `selected`. -- **repository_visibility_type** (`string`, optional) Specifies which repositories in the organization can access the variable. Options: `all`, `private`, `selected`. -- **var_name** (`string`, optional) Specify the name of the GitHub organization variable to update. -- **variable_name** (`string`, optional) The name of the organization variable to update. This is case-insensitive. -- **variable_value** (`string`, optional) The new value to assign to the organization variable. It must be a string. - -## GithubApi.ListReposWithOrgVariableAccess - -
- - -Retrieve repos accessing an organization's variable. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive. -- **variable_name** (`string`, required) The name of the organization variable to check for repository access. -- **result_page_number** (`integer`, optional) The page number of repository results to retrieve. Use this to navigate through results. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. - -## GithubApi.SetOrgVariableRepos - -
- - -Replace repositories for an organization's variable. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive. -- **repository_ids_for_access** (`array[integer]`, required) An array of integers representing the repository IDs that can access the organization variable. Ensure the IDs are valid and accessible. -- **variable_name** (`string`, required) The name of the organization variable to be updated. - -## GithubApi.RemoveRepoFromOrgVariable - -
- - -Remove a repository from a GitHub organization variable. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. This is not case sensitive. -- **repository_id** (`integer`, required) The ID of the repository to be removed from the organization variable. This should be an integer value identifying the repository. -- **variable_name** (`string`, required) The name of the organization variable to remove the repository from. - -## GithubApi.AddRepoToOrgVariable - -
- - -Add a repository to an organization's selected variables. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. This is not case sensitive. -- **repository_id** (`integer`, required) The integer ID of the repository to be added to the organization variable. This is a required field. -- **variable_name** (`string`, required) The name of the organization variable to which the repository will be added. - -## GithubApi.RemoveOrgAnnouncementBanner - -
- - -Remove the announcement banner for a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization's name. This is not case sensitive. - -## GithubApi.GetOrgAnnouncementBanner - -
- - -Retrieve the announcement banner for a specific organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive. - -## GithubApi.SetOrgAnnouncementBanner - -
- - -Sets the announcement banner for a GitHub organization. - -**Parameters** - -- **announcement_text** (`string`, required) The announcement text formatted in GitHub Flavored Markdown. See GitHub's basic writing syntax for details. -- **organization_name** (`string`, required) The name of the GitHub organization. The name is not case sensitive. -- **announcement_expiry_time** (`string`, optional) The expiry time for the announcement, in ISO 8601 format. Use `null` or empty for no expiry. - -## GithubApi.GetOrgAuditLog - -
- - -Retrieve the audit log for a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **event_order** (`string`, optional) Specify the order of audit log events. Use 'desc' for newest first or 'asc' for oldest first. Default is 'desc'. -- **event_types_to_include** (`string`, optional) Specify the event types to include: 'web' for web events, 'git' for Git events, or 'all' for both. Default is 'web'. -- **results_page_number** (`integer`, optional) Specify the page number of results to fetch. Useful for navigating through paginated audit log entries. -- **results_per_page** (`integer`, optional) Defines the number of audit log events returned per page, with a maximum of 100. -- **search_events_after_cursor** (`string`, optional) Cursor for searching events after a specific point, as given in the Link header. -- **search_events_before_cursor** (`string`, optional) A cursor to search for events before this point. Use to limit results to events occurring before a specific reference. -- **search_phrase** (`string`, optional) A string to filter audit log events based on specific criteria. This can help in retrieving older events. Refer to the GitHub documentation for more details on searching the audit log. - -## GithubApi.ListOrgCodeScanningAlerts - -
- - -Retrieve code scanning alerts for an organization's repositories. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. This field is not case sensitive. -- **alert_severity** (`string`, optional) Specifies the severity of code scanning alerts to be returned. Acceptable values include 'critical', 'high', 'medium', 'low', 'warning', 'note', and 'error'. -- **alert_state** (`string`, optional) Filter code scanning alerts by their state: 'open', 'closed', 'dismissed', or 'fixed'. -- **code_scanning_tool_guid** (`string`, optional) The GUID of a specific code scanning tool. Use this to filter alerts by the tool. Must not use with `tool_name`. -- **cursor_before** (`string`, optional) A cursor used to fetch results occurring before this point in the data timeline. -- **filter_by_tool_name** (`string`, optional) Specify the name of a code scanning tool to filter results. Only alerts from this tool will be listed. Ensure not to use `tool_guid` if this is specified. -- **results_after_cursor** (`string`, optional) A cursor indicating the point after which to retrieve results. Used for pagination. -- **results_page_number** (`integer`, optional) The page number of the results to fetch from the list of code scanning alerts. -- **results_per_page** (`integer`, optional) The number of results per page, with a maximum limit of 100. -- **sort_direction** (`string`, optional) Specifies the sort order of the results. Use 'asc' for ascending or 'desc' for descending. -- **sort_results_by** (`string`, optional) Specifies the property by which to sort the results. Options are 'created' or 'updated'. - -## GithubApi.ListDependabotAlertsForOrganization - -
- - -Lists Dependabot alerts for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The organization name for which to list Dependabot alerts. This name is not case sensitive. -- **alert_severity_filter** (`string`, optional) Comma-separated severities to filter alerts. Options: `low`, `medium`, `high`, `critical`. -- **alert_states** (`string`, optional) Comma-separated list of alert states to filter by. Options: `dismissed`, `fixed`, `open`. -- **deprecated_first_results_page_size** (`integer`, optional) **Deprecated**. Use `per_page` with `after` instead. Specifies the number of results per page, up to 100, starting from the first matching result. Avoid using with `last`. -- **deprecated_last_results_per_page** (`integer`, optional) **Deprecated**. Use this to specify the number of results per page (max 100) from the last matching result. Cannot be used with 'first'. -- **ecosystem_list** (`string`, optional) Comma-separated ecosystems to filter alerts. Options: composer, go, maven, npm, nuget, pip, pub, rubygems, rust. -- **package_names** (`string`, optional) A comma-separated list of package names. Only alerts for these specified packages will be returned. -- **paginate_after_cursor** (`string`, optional) A cursor indicating the point to continue the listing from, based on the Link header. -- **results_before_cursor** (`string`, optional) A cursor indicating to search for Dependabot alerts before this position. -- **results_per_page** (`integer`, optional) Specifies the number of Dependabot alerts to return per page, with a maximum of 100. -- **sort_by_property** (`string`, optional) Sort results by `created` (alert creation) or `updated` (state change). -- **sort_direction** (`string`, optional) The order to sort the results, either ascending ('asc') or descending ('desc'). -- **vulnerable_dependency_scope** (`string`, optional) Specify the scope of the vulnerable dependency as either 'development' or 'runtime'. Only alerts with this scope will be returned. - -## GithubApi.ListGithubOrgSecrets - -
- - -Retrieve Dependabot organization secrets from GitHub. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name. It is not case sensitive. -- **results_page_number** (`integer`, optional) Page number to fetch results from in the paginated list of organization secrets. -- **results_per_page** (`integer`, optional) The number of secrets to list per page, with a maximum of 100. - -## GithubApi.GetOrgPublicKey - -
- - -Retrieve the public key for encrypting GitHub Dependabot secrets. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name, not case sensitive. - -## GithubApi.RemoveGithubOrgSecret - -
- - -Delete a secret from a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. This is not case sensitive. -- **secret_name_to_delete** (`string`, required) The name of the secret to delete from the GitHub organization. - -## GithubApi.GetOrgSecretInfo - -
- - -Retrieve details of an organization's secret without revealing the encrypted value. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **organization_secret_name** (`string`, required) The name of the secret for the organization. It is required to identify the specific secret without revealing its encrypted value. This name is not case sensitive. - -## GithubApi.UpdateGithubOrgSecret - -
- - -Create or update a GitHub organization secret. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization, not case sensitive. -- **repository_access_type** (`string`, required) Determines which organization repositories can access the secret: 'all', 'private', or 'selected' (which requires specifying `selected_repository_ids`). -- **secret_name** (`string`, required) The name of the secret to create or update. This should be a unique identifier for the secret within the organization. -- **encrypted_secret_value** (`string`, optional) The secret value encrypted using LibSodium with the organization public key. -- **encryption_key_id** (`string`, optional) The ID of the key used to encrypt the organization secret, required for security verification. -- **selected_repository_ids_to_include** (`array[string]`, optional) Array of repository IDs allowed to access the secret. Used when visibility is set to 'selected'. - -## GithubApi.ListSelectedRepositoriesForSecret - -
- - -Retrieve repositories with selected access for an org secret. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. This is not case sensitive. Required to identify the organization whose secret's repository access is being queried. -- **secret_name** (`string`, required) The name of the secret for which you wish to list selected repositories. It is case insensitive. -- **results_page_number** (`integer`, optional) The page number of the results to fetch, used for pagination. -- **results_per_page** (`integer`, optional) Number of results per page, up to a maximum of 100. - -## GithubApi.SetReposForOrgSecret - -
- - -Update selected repos for an organization's Dependabot secret. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **secret_name** (`string`, required) The name of the organization secret to update the repository access for. This should match the name of an existing Dependabot secret. -- **selected_repository_ids** (`array[integer]`, required) List of repository IDs that can access the org secret. Use only when visibility is 'selected'. - -## GithubApi.DeleteRepoFromOrgSecret - -
- - -Remove a repository from a GitHub organization secret. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **repository_id** (`integer`, required) The unique identifier of the repository to be removed from the organization secret. -- **secret_name** (`string`, required) The name of the GitHub organization secret to remove the repository from. - -## GithubApi.AddRepositoryToSecret - -
- - -Add a repository to a GitHub organization secret. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **repository_id_for_org_secret** (`integer`, required) The ID of the repository to be added to the organization secret. This ID should be an integer. -- **secret_name** (`string`, required) The name of the organization secret to which a repository will be added. This is case-insensitive. - -## GithubApi.ListPublicOrgEvents - -
- - -List public events for a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **results_page_number** (`integer`, optional) Page number of the results to fetch. Determines which set of results to return. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100. - -## GithubApi.GetGithubExternalGroupInfo - -
- - -Retrieve information about a GitHub external group's usage. - -**Parameters** - -- **group_id** (`integer`, required) The unique identifier of the group. Must be an integer. -- **organization_name** (`string`, required) The name of the GitHub organization. The name is not case sensitive. - -## GithubApi.ListExternalGroupsForOrg - -
- - -Retrieve external groups available in a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **group_name_filter** (`string`, optional) Filter results to include only groups with names containing this text. -- **pagination_token** (`integer`, optional) Token to specify the starting point for the next set of results. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum value of 100. - -## GithubApi.ListOrganizationWebhooks - -
- - -Retrieve the webhooks for a specific organization on GitHub. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name. This parameter is case insensitive. -- **result_page_number** (`integer`, optional) The specific page number of results to retrieve from the list of organization webhooks. -- **results_per_page** (`integer`, optional) The number of webhook results to display per page, with a maximum of 100. - -## GithubApi.CreateGithubOrgWebhook - -
- - -Create a webhook for a GitHub organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_name** (`string`, optional) The name of the GitHub organization. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.DeleteOrgWebhook - -
- - -Delete a webhook from a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is case insensitive. -- **webhook_identifier** (`integer`, required) The unique identifier of the webhook to be deleted. It should be provided as an integer. - -## GithubApi.GetOrgWebhookDetails - -
- - -Retrieve details of a specific organization webhook. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization, not case sensitive. -- **webhook_id** (`integer`, required) The unique identifier for the organization's webhook. This is an integer value used to specify which webhook details to retrieve. - -## GithubApi.UpdateGithubOrgWebhook - -
- - -Update a webhook configured in a GitHub organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_name** (`string`, optional) The name of the GitHub organization; not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **webhook_identifier** (`integer`, optional) The unique identifier of the webhook to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.GetOrgWebhookConfiguration - -
- - -Retrieve webhook configuration for a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The non-case-sensitive name of the GitHub organization. -- **webhook_hook_id** (`integer`, required) The unique identifier of the organization's webhook, provided as an integer. - -## GithubApi.UpdateOrgWebhookConfig - -
- - -Update webhook configuration for a GitHub organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_name** (`string`, optional) The name of the GitHub organization to update. Case insensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **webhook_identifier** (`integer`, optional) The unique identifier of the webhook to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.GetWebhookEventDeliveries - -
- - -Retrieve webhook deliveries for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **webhook_hook_id** (`integer`, required) The unique identifier of the webhook in the organization. -- **include_redeliveries** (`boolean`, optional) Indicate whether to include repeated webhook deliveries in the results. Set to true to include. -- **pagination_start_cursor** (`string`, optional) A cursor to indicate the starting delivery for fetching the page of deliveries. Useful for pagination purposes. -- **results_per_page** (`integer`, optional) Specifies the number of webhook deliveries to be returned per page (maximum 100). - -## GithubApi.GetGithubWebhookDelivery - -
- - -Retrieve a webhook delivery for a GitHub organization. - -**Parameters** - -- **hook_identifier** (`integer`, required) The unique identifier of the webhook hook. This is an integer value used to specify which webhook's delivery details to retrieve for the organization. -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **webhook_delivery_id** (`integer`, required) The unique identifier of the specific delivery to be retrieved. This should be an integer. - -## GithubApi.RedeliverWebhookDelivery - -
- - -Redeliver an organization's webhook delivery attempt. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. This is not case sensitive. -- **webhook_delivery_id** (`integer`, required) The unique identifier of the webhook delivery to be redelivered. -- **webhook_hook_id** (`integer`, required) The unique identifier of the webhook hook. Provide an integer value. - -## GithubApi.SendGithubHookPing - -
- - -Triggers a ping event on a GitHub organization webhook. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **webhook_hook_id** (`integer`, required) The unique integer ID of the GitHub organization webhook to ping. - -## GithubApi.GetGithubOrgInstallationInfo - -
- - -Retrieve GitHub organization's installation information. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name. It is not case-sensitive. - -## GithubApi.OrganizationAppInstallations - -
- - -Retrieve GitHub App installations for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **page_number_to_fetch** (`integer`, optional) Page number of the results to fetch. Used for pagination in retrieving GitHub App installations. -- **results_per_page** (`integer`, optional) The number of GitHub App installations to return per page, with a maximum of 100. - -## GithubApi.ListOrganizationIssuesForUser - -
- - -Retrieve issues and pull requests for a user in an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **issue_filter** (`string`, optional) Specifies the type of issues to return: 'assigned', 'created', 'mentioned', 'subscribed', 'all', or 'repos'. -- **issue_labels** (`string`, optional) Comma-separated list of label names to filter issues. Example: `bug,ui,@high`. -- **issues_state** (`string`, optional) Specify the state of issues to return: 'open', 'closed', or 'all'. -- **result_page_number** (`integer`, optional) Page number of results to fetch, used for pagination. Starts from 1. -- **results_per_page** (`integer`, optional) The number of results to display per page (maximum 100). -- **sort_criteria** (`string`, optional) Defines the attribute to sort the issues by. Options are 'created', 'updated', or 'comments'. -- **sort_direction** (`string`, optional) The direction to sort the results by. Accepted values are 'asc' for ascending and 'desc' for descending. -- **updated_since** (`string`, optional) Filter to show notifications updated after this timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. - -## GithubApi.ListOrgMembers - -
- - -Retrieve members of a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization to list members from. It is not case sensitive. -- **filter_members** (`string`, optional) Filter the list of members. Use '2fa_disabled' to list members without two-factor authentication. -- **member_role_filter** (`string`, optional) Filter members by their role in the organization ('all', 'admin', 'member'). -- **page_number** (`integer`, optional) Page number of the results to fetch. Use this to navigate through paginated results. -- **results_per_page** (`integer`, optional) Number of results per page, with a maximum of 100. - -## GithubApi.RemoveOrganizationMember - -
- - -Remove a user from an organization's access list. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user's handle to be removed from the organization. -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. - -## GithubApi.CheckUserMembershipInOrg - -
- - -Checks if a user is a member of a GitHub organization. - -**Parameters** - -- **github_user_handle** (`string`, required) The username or handle for the GitHub user account being checked for organization membership. -- **organization_name** (`string`, required) The case-insensitive name of the GitHub organization to check membership against. - -## GithubApi.RemoveOrgMember - -
- - -Remove a user's membership from a GitHub organization. - -**Parameters** - -- **github_username** (`string`, required) The GitHub username to remove from the organization; it is not case-sensitive. -- **organization_name** (`string`, required) The case-insensitive name of the GitHub organization. - -## GithubApi.GetUserOrgMembershipStatus - -
- - -Get a user's membership status in an organization. - -**Parameters** - -- **github_user_handle** (`string`, required) The handle for the GitHub user account to check membership status. -- **organization_name** (`string`, required) The GitHub organization name. It is not case sensitive. - -## GithubApi.UpdateOrgMembership - -
- - -Manage user membership for a GitHub organization. - -**Parameters** - -- **github_user_handle** (`string`, required) The handle for the GitHub user account to be added or updated in the organization. -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **user_role_in_organization** (`string`, optional) Specify the user's role in the organization. Options are 'admin' for organization owner, or 'member' for non-owner. - -## GithubApi.ListRecentGithubMigrations - -
- - -Retrieve the latest GitHub migrations for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name. This value is not case sensitive. Use to specify which organization's migrations to list. -- **exclude_attributes** (`array[string]`, optional) A list of attributes to exclude from the API response to enhance performance. -- **results_page_number** (`integer`, optional) Page number to fetch specific results from the list of migrations. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum value of 100. - -## GithubApi.StartOrgMigration - -
- - -Initiates a migration archive for a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. The name is not case sensitive. -- **repositories_to_migrate** (`array[string]`, required) A list of repository names to be included in the migration process. -- **exclude_attachments** (`boolean`, optional) Set to true to exclude attachments from the migration, reducing archive file size. -- **exclude_git_data** (`boolean`, optional) Set to true to exclude repository git data from the migration, reducing archive size. Useful for metadata-only migrations. -- **exclude_items** (`array[string]`, optional) Specify related items to exclude from the response for performance optimization, e.g., ["repositories"]. -- **exclude_metadata** (`boolean`, optional) Set to true to exclude metadata, including only git source. Useful for reducing file complexity. -- **exclude_owner_projects** (`boolean`, optional) Indicate whether projects owned by the organization or users should be excluded from the migration. -- **exclude_releases** (`boolean`, optional) Set to true to exclude releases from the migration archive, reducing file size. -- **lock_repositories** (`boolean`, optional) Set to true to lock repositories during migration, preventing changes. -- **only_include_org_metadata** (`boolean`, optional) Specify whether only organization metadata is included, keeping the repositories array empty and ignoring other flags. - -## GithubApi.CheckOrgMigrationStatus - -
- - -Fetches the status of an organization's migration. - -**Parameters** - -- **migration_id** (`integer`, required) The unique identifier of the migration. Expected as an integer. -- **organization_name** (`string`, required) The name of the organization, not case sensitive, for which to fetch migration status. -- **exclude_attributes** (`array[string]`, optional) List of attribute names to exclude from the API response for improved performance. - -## GithubApi.DeleteGithubOrgMigrationArchive - -
- - -Delete a previous GitHub organization migration archive. - -**Parameters** - -- **migration_identifier** (`integer`, required) The unique identifier of the migration archive to delete. -- **organization_name** (`string`, required) The GitHub organization name. The name is not case sensitive. - -## GithubApi.FetchOrgMigrationArchiveUrl - -
- - -Fetches the URL to download an organization's migration archive. - -**Parameters** - -- **migration_identifier** (`integer`, required) The unique identifier for the specific migration. This should be an integer value. -- **organization_name** (`string`, required) The name of the organization. This value is not case sensitive. - -## GithubApi.UnlockGithubRepoForOrgMigration - -
- - -Unlock a locked repository after migration for an organization. - -**Parameters** - -- **migration_unique_identifier** (`integer`, required) The unique identifier for the migration process. -- **organization_name** (`string`, required) The GitHub organization name, which is not case sensitive. -- **repository_name** (`string`, required) The name of the repository to be unlocked. This is required and should match the exact repository name used during the migration. Case sensitivity does not matter. - -## GithubApi.ListReposForOrgMigration - -
- - -List all repositories for an organization's migration. - -**Parameters** - -- **migration_unique_identifier** (`integer`, required) The unique identifier for the organization migration in GitHub. -- **organization_name** (`string`, required) The name of the organization. This name is not case sensitive and identifies the GitHub organization for which the migration repositories will be listed. -- **results_page_number** (`integer`, optional) Page number of the results to fetch, used for pagination. -- **results_per_page** (`integer`, optional) Number of results per page, with a maximum of 100. - -## GithubApi.ListOrgOutsideCollaborators - -
- - -Retrieve outside collaborators for a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name, not case sensitive. -- **filter_outside_collaborators** (`string`, optional) Specify '2fa_disabled' to filter for collaborators without two-factor authentication, or 'all' for all collaborators. -- **result_page_number** (`integer`, optional) Specify the page number to fetch results from the list of outside collaborators. -- **results_per_page** (`integer`, optional) Specify the number of results to display per page, with a maximum of 100. - -## GithubApi.RemoveOrgOutsideCollaborator - -
- - -Remove a user from all organization repositories. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user account handle to remove from the organization's repositories. -- **organization_name** (`string`, required) The name of the organization from which to remove the user. It is not case sensitive. - -## GithubApi.ConvertMemberToOutsideCollaborator - -
- - -Convert GitHub org member to outside collaborator. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user handle to be converted to an outside collaborator. -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **perform_asynchronously** (`boolean`, optional) Set to true to perform the request asynchronously, queuing the job with a 202 status code. - -## GithubApi.ListOrgPreReceiveHooks - -
- - -Retrieve pre-receive hooks for a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case-sensitive. -- **page_number** (`integer`, optional) Page number of the results to fetch. Use this to navigate through paginated results. -- **results_per_page** (`integer`, optional) The number of results to return per page. The maximum allowed is 100. -- **sort_direction** (`string`, optional) The direction to sort the results by. Accepts 'asc' or 'desc'. -- **sort_order** (`string`, optional) Specify the sort order for the response: options are 'created', 'updated', or 'name'. - -## GithubApi.RemoveOrgPreReceiveHook - -
- - -Removes pre-receive hook enforcement overrides for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization where the pre-receive hook enforcement override will be removed. It is not case sensitive. -- **pre_receive_hook_id** (`integer`, required) The unique identifier for the pre-receive hook to be removed. - -## GithubApi.GetOrgPreReceiveHook - -
- - -Retrieve a pre-receive hook for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization; case insensitive. -- **pre_receive_hook_unique_id** (`integer`, required) The unique identifier of the pre-receive hook. Must be an integer. - -## GithubApi.UpdatePreReceiveHookEnforcement - -
- - -Update pre-receive hook enforcement for a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It's not case sensitive. -- **pre_receive_hook_id** (`integer`, required) The unique identifier of the pre-receive hook to be updated. -- **allow_downstream_configuration** (`boolean`, optional) Boolean indicating whether repositories can override the enforcement settings of the pre-receive hook. -- **enforcement_state** (`string`, optional) Specify the state of enforcement for the hook on this repository. Possible values may include 'enabled', 'disabled', etc. - -## GithubApi.ListOrganizationProjects - -
- - -Retrieve a list of projects for a given organization on GitHub. - -**Parameters** - -- **organization_name** (`string`, required) The case-insensitive name of the GitHub organization for which to list projects. -- **project_state** (`string`, optional) Specifies the state of projects to return: 'open', 'closed', or 'all'. -- **results_page_number** (`integer`, optional) Specifies the page number of the results to fetch for organization projects. -- **results_per_page** (`integer`, optional) The number of project results to display per page, with a maximum of 100. - -## GithubApi.CreateOrgProjectGithub - -
- - -Create a project board for a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name. Not case sensitive. -- **project_name** (`string`, required) The name of the project board to be created. It will serve as the identifier for the project within the organization. Must be a string. -- **project_description** (`string`, optional) The description of the project to be created for the GitHub organization. This should be a clear and concise explanation of the project's purpose. - -## GithubApi.ListPublicOrgMembers - -
- - -Retrieve public members of a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **results_page_number** (`integer`, optional) The page number of the results to fetch, used for pagination. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page, up to a maximum of 100. - -## GithubApi.RemovePublicOrgMembership - -
- - -Remove public organization membership for the user. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user account handle for which to remove public organization membership. -- **organization_name** (`string`, required) The name of the GitHub organization. This name is not case sensitive. - -## GithubApi.CheckGithubOrgMembership - -
- - -Checks if a user is a public member of a GitHub organization. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user account handle to check for public organization membership. -- **organization_name** (`string`, required) The case-insensitive name of the GitHub organization. - -## GithubApi.SetOwnGithubPublicMembership - -
- - -Publicize your GitHub organization membership. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user account handle to publicize the membership for. -- **organization_name** (`string`, required) The GitHub organization name to make membership public. Case insensitive. - -## GithubApi.ListOrganizationRepositories - -
- - -Retrieve repositories for a specific organization on GitHub. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **page_number** (`integer`, optional) Page number of the results to fetch, used for pagination. -- **repository_type** (`string`, optional) Specify the type of repositories to return, such as 'all', 'public', 'private', etc. Note: 'internal' is unsupported with an installation access token. -- **results_per_page** (`integer`, optional) The number of repository results to display per page, with a maximum limit of 100. -- **sort_order** (`string`, optional) Specifies the sorting order of the results. Use 'asc' for ascending or 'desc' for descending. -- **sort_property** (`string`, optional) Specifies the property to sort the repository results by, such as created, updated, pushed, or full_name. - -## GithubApi.CreateGithubOrganizationRepo - -
- - -Create a new repository in a GitHub organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_name** (`string`, optional) The name of the GitHub organization where the repository will be created. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListOrgSecretScanningAlerts - -
- - -Retrieve secret scanning alerts for an organization's repositories. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization for which secret scanning alerts are to be listed. This value is not case-sensitive. -- **alert_resolution_filter** (`string`, optional) A comma-separated list of resolutions to filter secret scanning alerts. Valid options are `false_positive`, `wont_fix`, `revoked`, `pattern_edited`, `pattern_deleted`, and `used_in_tests`. -- **alert_state** (`string`, optional) Specify 'open' or 'resolved' to filter secret scanning alerts by their state. -- **results_page_number** (`integer`, optional) The page number of results to retrieve, starting from 1. Determines which subset of results will be returned. -- **results_per_page** (`integer`, optional) The number of results to return per page, with a maximum of 100. -- **search_after_cursor** (`string`, optional) A cursor for paginating results, provided in the Link header. Use an empty string for the initial request to receive a starting cursor. -- **search_before_cursor** (`string`, optional) A cursor indicating that the query should only look for events before this point. Use an empty string to get an initial cursor. -- **secret_types** (`string`, optional) Comma-separated list of secret types to return. Defaults to all secret types. Refer to the GitHub documentation for details on secret types. -- **sort_by_property** (`string`, optional) Choose 'created' to sort by alert creation date or 'updated' to sort by last update or resolution. -- **sort_direction** (`string`, optional) Specifies the order to sort the results: ascending ('asc') or descending ('desc'). - -## GithubApi.ListSecurityManagerTeams - -
- - -Retrieve teams that are security managers in an organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization's name. It is not case sensitive. - -## GithubApi.RemoveSecurityManagerRole - -
- - -Remove security manager role from a team in an organization. - -**Parameters** - -- **organization_name** (`string`, required) The organization's name. It is not case sensitive. -- **team_identifier** (`string`, required) The unique slug identifying the team by name. This is required to specify the team whose security manager role is to be removed. - -## GithubApi.AddSecurityManagerTeam - -
- - -Add a team as a security manager for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. This is not case sensitive. Required for adding a team as a security manager. -- **team_slug** (`string`, required) The slug of the team name to be added as a security manager. This is case-insensitive. - -## GithubApi.GetAdvancedSecurityCommitters - -
- - -Retrieve GitHub Advanced Security committers for an organization. - -**Parameters** - -- **organization_name** (`string`, required) The organization name for which to retrieve security committers. It is not case sensitive. -- **results_page_number** (`integer`, optional) The page number of the results to fetch. Useful for paginating through large sets of results. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum limit of 100. - -## GithubApi.ListOrganizationTeams - -
- - -Retrieve teams visible to the user in a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name. It is not case sensitive. -- **results_page_number** (`integer`, optional) Page number of the results to fetch from the list of teams. -- **results_per_page** (`integer`, optional) Specify the number of results per page, up to a maximum of 100. - -## GithubApi.CreateGithubTeam - -
- - -Create a new team in a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The case-insensitive name of the GitHub organization where the team will be created. -- **team_name** (`string`, required) The name of the team to be created. It should be a string. -- **deprecated_repository_permission** (`string`, optional) Specifies the permission for new repositories, though it is deprecated. Options are `pull` or `push`. -- **ldap_distinguished_name** (`string`, optional) The distinguished name (DN) of the LDAP entry to map to a team. Ensure LDAP synchronization is enabled. -- **parent_team_id** (`integer`, optional) The numerical ID of the team to assign as the parent for the new team. -- **repository_names_to_add_to_team** (`array[string]`, optional) Array of full repository names (e.g., "organization-name/repository-name") to associate with the team. -- **team_description** (`string`, optional) A brief description of the team being created. This helps specify the team's purpose or role within the organization. -- **team_maintainers_github_ids** (`array[string]`, optional) List of GitHub IDs for organization members who will become team maintainers. -- **team_privacy_level** (`string`, optional) Specifies if the team is 'secret' or 'closed'. Defaults: 'secret' for non-nested teams, 'closed' for parent/child teams. - -## GithubApi.DeleteTeamInOrg - -
- - -Delete a team in a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The case-insensitive name of the GitHub organization containing the team to be deleted. -- **team_slug** (`string`, required) The unique slug identifier of the team within the organization to be deleted. - -## GithubApi.GetTeamBySlug - -
- - -Retrieve team details using organization and team slug. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **team_slug** (`string`, required) The slug of the team name. This is a URL-friendly version, typically all lowercase with special characters and spaces replaced by hyphens. - -## GithubApi.UpdateGithubTeam - -
- - -Update a team's details within a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. This is not case sensitive. -- **team_slug** (`string`, required) The slug of the team name, used to uniquely identify the team within the organization. -- **parent_team_id** (`integer`, optional) The ID of the team to set as the parent team for nesting purposes. -- **team_description** (`string`, optional) The description of the team. Provide a concise summary or details for team identification. -- **team_name** (`string`, optional) The new name for the GitHub team within the organization. -- **team_privacy_level** (`string`, optional) Specifies the team's privacy level. Options: 'secret' (visible only to owners and team members) or 'closed' (visible to all organization members). Parent teams cannot be 'secret'. -- **team_repository_permission** (`string`, optional) **Deprecated**. Specifies the default permission for newly added repositories. Options: 'pull', 'push', 'admin'. - -## GithubApi.ListTeamDiscussions - -
- - -Retrieve all discussions from a team's page in an organization. - -**Parameters** - -- **organization_name** (`string`, required) The case-insensitive name of the GitHub organization. -- **team_slug** (`string`, required) The slug of the team's name to identify which team's discussions to retrieve in the organization. -- **pinned_discussions_only** (`string`, optional) Filter to retrieve only pinned discussions. Use 'true' for pinned only, 'false' for all. -- **results_page_number** (`integer`, optional) The specific page number of discussion results to retrieve. -- **results_per_page** (`integer`, optional) The number of results per page, with a maximum of 100. -- **sort_direction** (`string`, optional) Specify the sorting direction for the results. Use 'asc' for ascending or 'desc' for descending order. - -## GithubApi.CreateTeamDiscussionGithub - -
- - -Create a discussion post on a GitHub team's page. - -**Parameters** - -- **discussion_body_text** (`string`, required) The content of the discussion post. Provide detailed text for the discussion body. -- **discussion_post_title** (`string`, required) The title for the discussion post on the team's page. -- **organization_name** (`string`, required) The organization name, not case-sensitive, for which the team discussion will be created. -- **team_slug** (`string`, required) The unique slug of the team name. This is required to specify which team's page the discussion will be posted on. -- **create_private_post** (`boolean`, optional) Set to `true` to create a private post visible only to team members and maintainers, or `false` for a public post visible to all organization members. - -## GithubApi.DeleteTeamDiscussion - -
- - -Delete a discussion from a team's page on GitHub. - -**Parameters** - -- **discussion_number** (`integer`, required) The unique number identifying the discussion to be deleted. -- **organization_name** (`string`, required) The organization name on GitHub. It is not case sensitive. -- **team_slug** (`string`, required) The slug identifier of the team name on GitHub. This is required to specify which team's discussion is to be deleted. - -## GithubApi.GetTeamDiscussion - -
- - -Retrieve a specific team discussion from GitHub. - -**Parameters** - -- **discussion_identifier_number** (`integer`, required) The unique number identifying the discussion to retrieve. -- **organization_name** (`string`, required) The name of the GitHub organization. This is not case sensitive. -- **team_slug** (`string`, required) The slug of the GitHub team name, used to specify the team. - -## GithubApi.UpdateTeamDiscussion - -
- - -Edits the title and body of a team discussion post. - -**Parameters** - -- **discussion_id** (`integer`, required) The unique number identifying the discussion to be updated. -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive and uniquely identifies the organization on GitHub. -- **team_slug** (`string`, required) Provide the slug (URL-friendly version) of the team's name. Case sensitivity is ignored. -- **discussion_body_text** (`string`, optional) The updated body text of the discussion post. Provide the new content you want for the discussion. -- **discussion_title** (`string`, optional) The new title for the discussion post. Only the provided title will be updated. - -## GithubApi.ListTeamDiscussionComments - -
- - -Retrieve comments from a team discussion in an organization. - -**Parameters** - -- **discussion_id** (`integer`, required) The unique number identifying the discussion to retrieve comments from. -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive. -- **team_slug** (`string`, required) The identifier for the team, typically a URL-friendly version of the team name. -- **results_page_number** (`integer`, optional) The specific page of discussion comments to retrieve, starting with 1 for the first page. -- **results_per_page** (`integer`, optional) The number of discussion comments to return per page, maximum of 100. -- **sort_direction** (`string`, optional) Specify the sort order for results: 'asc' for ascending or 'desc' for descending. - -## GithubApi.CreateTeamDiscussionComment - -
- - -Create a new comment on a team discussion in an organization. - -**Parameters** - -- **comment_body_text** (`string`, required) The text content of the comment to be added to the team discussion. -- **discussion_number** (`integer`, required) The number that identifies the specific discussion within the team to which you want to add a comment. -- **organization_name** (`string`, required) The name of the organization where the team discussion is located. This is not case sensitive. -- **team_slug** (`string`, required) The slug identifier for the team name within the organization, used to specify which team's discussion to comment on. - -## GithubApi.DeleteTeamDiscussionComment - -
- - -Deletes a comment on a team discussion in an organization. - -**Parameters** - -- **comment_identifier** (`integer`, required) The unique number identifying the comment to be deleted. -- **discussion_identifier** (`integer`, required) The unique number identifying the discussion for the comment to be deleted. -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive. -- **team_slug** (`string`, required) The slug of the team name in the organization. Case insensitive. - -## GithubApi.GetGithubTeamDiscussionComment - -
- - -Retrieve a specific comment from a GitHub team discussion. - -**Parameters** - -- **comment_identifier** (`integer`, required) The specific number identifying the comment in the discussion. -- **discussion_id** (`integer`, required) The unique number identifying the specific discussion on GitHub. -- **organization_name** (`string`, required) The name of the GitHub organization. This is not case sensitive. -- **team_slug** (`string`, required) The slug (URL-friendly version) of the GitHub team's name. It is not case sensitive. - -## GithubApi.UpdateGithubDiscussionComment - -
- - -Updates a GitHub discussion comment's text. - -**Parameters** - -- **comment_identifier** (`integer`, required) A unique integer identifying the comment to be updated in the discussion. -- **discussion_comment_body** (`string`, required) The new text for the discussion comment to be updated. -- **discussion_id** (`integer`, required) The unique number identifying the GitHub discussion to update the comment in. -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case-sensitive. -- **team_slug** (`string`, required) The slug of the team name. This is used to specify the team in the organization. - -## GithubApi.ListTeamDiscussionCommentReactions - -
- - -Retrieve reactions for a team discussion comment in an organization. - -**Parameters** - -- **comment_identifier** (`integer`, required) The unique number identifying the discussion comment. -- **discussion_number** (`integer`, required) The number identifying the specific discussion in the team. -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **team_slug** (`string`, required) The slug of the team name, case-insensitive, used to identify the team in the organization. -- **filter_by_reaction_type** (`string`, optional) Specify a single reaction type to filter results. Options: '+1', '-1', 'laugh', 'confused', 'heart', 'hooray', 'rocket', 'eyes'. Omit to list all reactions. -- **results_page_number** (`integer`, optional) The page number of the comments reactions to fetch from the results. -- **results_per_page** (`integer`, optional) The number of results per page to return (maximum 100). - -## GithubApi.AddReactionToTeamDiscussionComment - -
- - -Add a reaction to a GitHub team discussion comment. - -**Parameters** - -- **comment_identifier** (`integer`, required) The unique number identifying the team discussion comment to react to. -- **discussion_identifier** (`integer`, required) The number identifying the discussion within the team. -- **organization_name** (`string`, required) The name of the organization. This value is not case sensitive. -- **reaction_type** (`string`, required) The type of reaction emoji to add to the team discussion comment. Accepted values are: '+1', '-1', 'laugh', 'confused', 'heart', 'hooray', 'rocket', 'eyes'. -- **team_slug** (`string`, required) The slug of the team name within the organization, used to identify the team. - -## GithubApi.DeleteTeamDiscussionCommentReaction - -
- - -Delete a reaction from a team discussion comment on GitHub. - -**Parameters** - -- **comment_identifier** (`integer`, required) The number that identifies the comment in the team discussion. -- **discussion_identifier** (`integer`, required) The number identifying the specific discussion in the team. -- **organization_name** (`string`, required) The organization name on GitHub. It is not case sensitive. -- **reaction_id** (`integer`, required) The unique identifier of the reaction to be deleted. This should be an integer value. -- **team_slug** (`string`, required) The slug of the team name, used to identify the team in the organization. - -## GithubApi.GetTeamDiscussionReactions - -
- - -Retrieve reactions to a specific team discussion in a GitHub organization. - -**Parameters** - -- **discussion_identifier** (`integer`, required) The number identifying the team discussion to retrieve reactions for. -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **team_slug** (`string`, required) The slug of the team's name in the specified GitHub organization. It identifies the team for which reactions are being retrieved. -- **reaction_type** (`string`, optional) Specify the type of reaction to retrieve (e.g., '+1', '-1', 'laugh'). Omit to retrieve all reactions. -- **results_page_number** (`integer`, optional) The page number of the results to fetch. Use to navigate through paginated responses. -- **results_per_page** (`integer`, optional) Specify the number of results per page, maximum of 100. - -## GithubApi.AddReactionToGithubTeamDiscussion - -
- - -Add a reaction to a GitHub team discussion. - -**Parameters** - -- **discussion_id** (`integer`, required) The unique identifier number for the team discussion. -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **reaction_type** (`string`, required) The reaction type to add to the team discussion. Valid options include: '+1', '-1', 'laugh', 'confused', 'heart', 'hooray', 'rocket', 'eyes'. -- **team_slug** (`string`, required) The URL-friendly version of the team's name. - -## GithubApi.DeleteGithubTeamDiscussionReaction - -
- - -Delete a reaction from a GitHub team discussion. - -**Parameters** - -- **discussion_number** (`integer`, required) The number that identifies the GitHub team discussion to delete a reaction from. Must be an integer. -- **organization_name** (`string`, required) The organization name. This value is not case sensitive and identifies the GitHub organization. -- **reaction_unique_identifier** (`integer`, required) The unique identifier for the specific reaction to be deleted from the discussion. -- **team_slug** (`string`, required) The slug (URL-friendly version) of the team name in GitHub, used to identify a team within an organization. - -## GithubApi.UnlinkExternalIdpGroupFromTeam - -
- - -Unlink an external IdP group from a GitHub team. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. This is not case sensitive. -- **team_slug** (`string`, required) The slug of the team's name. It identifies the team within the organization. - -## GithubApi.ListLinkedExternalGroups - -
- - -Retrieve connections between a GitHub team and external groups. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **team_slug** (`string`, required) Slug of the team name to identify the specific GitHub team. - -## GithubApi.LinkExternalGroupToTeam - -
- - -Link an external IDP group to a GitHub team. - -**Parameters** - -- **external_group_id** (`integer`, required) The ID of the external group to be linked with the GitHub team. -- **organization_name** (`string`, required) The GitHub organization name. This value is not case sensitive. -- **team_slug** (`string`, required) The slug of the team name to connect with an external group. It is case insensitive. - -## GithubApi.ListTeamMembersInOrg - -
- - -Retrieve team members in a specified organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **team_slug** (`string`, required) The slug of the team name within the organization. Used to identify the specific team. -- **filter_by_role** (`string`, optional) Filters team members by their role: 'member', 'maintainer', or 'all'. -- **result_page_number** (`integer`, optional) The page number of results to fetch. Use this for pagination. -- **results_per_page** (`integer`, optional) Specifies the number of team members to return per page, up to a maximum of 100. - -## GithubApi.RemoveTeamMembership - -
- - -Remove a user's membership from a GitHub team. - -**Parameters** - -- **github_user_handle** (`string`, required) The handle for the GitHub user account to be removed from the team. -- **organization_name** (`string`, required) The GitHub organization name. This input is not case sensitive. -- **team_slug** (`string`, required) The slug identifier for the GitHub team's name. This is used to specify the team you want to modify. - -## GithubApi.GetUserTeamMembershipInOrg - -
- - -Retrieve a user's team membership status in an organization. - -**Parameters** - -- **github_username** (`string`, required) The GitHub username of the account whose team membership status is being retrieved. This username is not case sensitive. -- **organization_name** (`string`, required) The case-insensitive name of the GitHub organization. -- **team_slug** (`string`, required) The slug of the team name. It uniquely identifies the team within the organization. Case insensitive. - -## GithubApi.AddUpdateGithubTeamMembership - -
- - -Add or update a user's membership in a GitHub team. - -**Parameters** - -- **github_team_slug** (`string`, required) The slug identifier of the team's name within the organization. This is not case-sensitive. -- **github_user_handle** (`string`, required) The GitHub user account handle to add or update in the organization team. -- **organization_name** (`string`, required) The name of the GitHub organization (case insensitive) to which the team belongs. -- **user_team_role** (`string`, optional) Specifies the role for the user in the team, either 'member' or 'maintainer'. - -## GithubApi.ListTeamProjectsInOrg - -
- - -Retrieve a list of projects for a team in an organization. - -**Parameters** - -- **organization_name** (`string`, required) The case-insensitive name of the organization for which to list team projects. -- **team_slug** (`string`, required) The team's unique slug identifier. This is used to specify which team's projects to list. -- **results_page_number** (`integer`, optional) The page number for the results you wish to retrieve. Used for paginating through results. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum limit of 100. - -## GithubApi.RemoveProjectFromTeam - -
- - -Remove a project from a team in a GitHub organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. This value is not case sensitive. -- **project_unique_identifier** (`integer`, required) The unique identifier of the project to be removed from the team. -- **team_slug** (`string`, required) The slug identifier for the team name in the organization. Case insensitive. - -## GithubApi.CheckTeamProjectPermissions - -
- - -Check team's permissions for an organization's project. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive. -- **project_unique_identifier** (`integer`, required) The unique integer ID of the project to check permissions for. -- **team_slug** (`string`, required) The slug of the team name used to identify the team within the organization. It is not case sensitive. - -## GithubApi.AddOrUpdateGithubTeamProjectPermissions - -
- - -Add or update a GitHub team's permissions on an organization project. - -**Parameters** - -- **organization_name** (`string`, required) The GitHub organization name. This is not case sensitive. -- **project_id** (`integer`, required) The unique identifier of the project to update or add to the team. -- **team_slug** (`string`, required) The slug representation of the GitHub team's name within the organization. This is used to identify the team in the request. -- **project_permission_level** (`string`, optional) Permission level to grant the team for the project. Options: 'read', 'write', 'admin'. Default uses the team's current level. - -## GithubApi.ListTeamRepositories - -
- - -Retrieve a list of repositories for a specified team. - -**Parameters** - -- **organization_name** (`string`, required) The organization name. Case insensitivity applies. -- **team_slug** (`string`, required) The slug of the team name (case-insensitive). -- **results_page_number** (`integer`, optional) The page number of the results to fetch for pagination. -- **results_per_page** (`integer`, optional) Number of results to return per page, with a maximum of 100. - -## GithubApi.RemoveRepoFromTeam - -
- - -Remove a repository from a GitHub team within an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case-sensitive. -- **repository_name** (`string`, required) The name of the repository to remove from the team. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive. -- **team_slug** (`string`, required) The slug of the team name to identify which team's repository link should be removed. This is required and case insensitive. - -## GithubApi.CheckTeamRepoPermissions - -
- - -Check a team's permissions for a specific repository within an organization. - -**Parameters** - -- **organization_name** (`string`, required) The organization name on GitHub. It is not case sensitive. Required to check team permissions. -- **repository_name** (`string`, required) The name of the repository for which you want to check permissions. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository, not case sensitive. -- **team_slug** (`string`, required) The slug of the team name. Used to identify the team whose permissions you are checking. - -## GithubApi.UpdateTeamRepoPermissions - -
- - -Manage team repository access and permissions. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. This parameter is not case sensitive. -- **repository_name** (`string`, required) The name of the repository to be managed. The name is not case sensitive. -- **repository_owner_account** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **team_slug** (`string`, required) The slug identifier of the team within the organization. It is not case-sensitive. -- **team_repo_permission** (`string`, optional) Permission to grant the team on this repository. Options: `pull`, `triage`, `push`, `maintain`, `admin`, or a custom role name defined by the organization. Defaults to team's current permission if unspecified. - -## GithubApi.ListChildTeams - -
- - -Retrieves child teams of a specified team in an organization. - -**Parameters** - -- **organization_name** (`string`, required) The organization's name. It's case insensitive and used to specify which organization's team structure to query. -- **team_identifier_slug** (`string`, required) The slug of the team name for which to list child teams. This is used to uniquely identify the team within the organization. -- **page_number** (`integer`, optional) The page number to retrieve in the list of child teams. Use to paginate the results. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page, with a maximum of 100. - -## GithubApi.ManageOrgSecurityFeatures - -
- - -Toggle security features for all repositories in an organization. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. This value is not case sensitive. -- **security_feature** (`string`, required) Specifies the security feature to enable or disable. Options include: dependency_graph, dependabot_alerts, dependabot_security_updates, advanced_security, secret_scanning, secret_scanning_push_protection. -- **security_feature_action** (`string`, required) Specifies whether to enable or disable the security feature for all organization repositories. Use 'enable_all' to activate and 'disable_all' to deactivate. - -## GithubApi.DeleteProjectCard - -
- - -Delete a project card from GitHub projects. - -**Parameters** - -- **card_id** (`integer`, required) The unique identifier of the project card to delete. - -## GithubApi.GetProjectCard - -
- - -Retrieve details of a specific project card in GitHub. - -**Parameters** - -- **project_card_id** (`integer`, required) The unique ID of the GitHub project card to retrieve details for. - -## GithubApi.UpdateGithubProjectCard - -
- - -Update an existing project card on GitHub. - -**Parameters** - -- **card_identifier** (`integer`, required) The unique identifier of the GitHub project card to be updated. -- **card_note** (`string`, optional) The text note associated with the project card. It can include details or remarks. -- **set_card_archived_status** (`boolean`, optional) Specify true to archive the card or false to unarchive it. - -## GithubApi.MoveProjectCard - -
- - -Move a project card to a different position within the same column or to a different column. - -**Parameters** - -- **card_identifier** (`integer`, required) The unique identifier for the card to be moved within the project. -- **card_position** (`string`, required) Specify where to place the card within the column: 'top', 'bottom', or 'after:``'. -- **destination_column_id** (`integer`, optional) The unique identifier of the column to which the card should be moved. If not provided, the card is moved within its current column. - -## GithubApi.DeleteGithubProjectColumn - -
- - -Deletes a specific project column on GitHub. - -**Parameters** - -- **project_column_id** (`integer`, required) The unique integer identifier of the GitHub project column to be deleted. - -## GithubApi.GetGithubProjectColumn - -
- - -Retrieve details of a GitHub project column using its ID. - -**Parameters** - -- **project_column_id** (`integer`, required) The unique identifier for the project column to retrieve. - -## GithubApi.UpdateProjectColumn - -
- - -Update an existing project column on GitHub. - -**Parameters** - -- **column_identifier** (`integer`, required) The unique identifier of the project column to update. -- **project_column_name** (`string`, required) The new name for the project column on GitHub. - -## GithubApi.ListProjectCards - -
- - -Retrieve project cards for a specific column on GitHub projects. - -**Parameters** - -- **column_identifier** (`integer`, required) The unique identifier for the specified project column, used to list its cards. -- **filter_by_archived_state** (`string`, optional) Filters project cards by their archived state. Options are 'all', 'archived', or 'not_archived'. -- **results_page_number** (`integer`, optional) Specifies the page number of the project cards results to fetch. Useful for navigating through paginated results. -- **results_per_page** (`integer`, optional) Number of project cards returned per page, up to a maximum of 100. - -## GithubApi.CreateGithubProjectCard - -
- - -Create a project card in a specified GitHub column. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **column_identifier** (`integer`, optional) The unique identifier of the GitHub project column where the card will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.MoveGithubProjectColumn - -
- - -Move a column within a GitHub project board. - -**Parameters** - -- **column_position** (`string`, required) Specifies where to move the project column. Use `first`, `last`, or `after:` to position after a specific column. -- **project_column_id** (`integer`, required) The unique identifier of the column to be moved in the GitHub project. - -## GithubApi.DeleteProjectBoard - -
- - -Deletes a specified project board on GitHub. - -**Parameters** - -- **project_identifier** (`integer`, required) The unique identifier of the GitHub project board to be deleted. - -## GithubApi.GetGithubProjectById - -
- - -Retrieve details of a GitHub project by its ID. - -**Parameters** - -- **project_id** (`integer`, required) The unique identifier for the GitHub project to retrieve. - -## GithubApi.UpdateProjectBoard - -
- - -Update a project board's information on GitHub. - -**Parameters** - -- **project_unique_identifier** (`integer`, required) The unique identifier of the GitHub project board to update. -- **is_private** (`boolean`, optional) A boolean indicating if the project is private. Set to true for private (not visible to everyone) and false for public. -- **organization_permission_level** (`string`, optional) Sets the baseline permission for all organization members on this project. Options are 'read', 'write', 'admin', or 'none'. -- **project_description** (`string`, optional) A detailed description or content of the project board. -- **project_name** (`string`, optional) The new name for the project board. Must be a string. -- **project_state** (`string`, optional) Specify the state of the project; use 'open' or 'closed'. - -## GithubApi.ListProjectCollaborators - -
- - -Retrieve collaborators for a GitHub organization project. - -**Parameters** - -- **project_id** (`integer`, required) The unique identifier for the GitHub organization project to retrieve collaborators for. -- **collaborator_affiliation_filter** (`string`, optional) Specifies how to filter collaborators: `outside`, `direct`, or `all`. -- **results_page_number** (`integer`, optional) The page number to retrieve from the list of collaborators. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. - -## GithubApi.RemoveProjectCollaborator - -
- - -Remove a collaborator from a GitHub organization project. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user's handle to be removed as a collaborator. -- **project_unique_identifier** (`integer`, required) The unique numeric identifier of the GitHub organization project. - -## GithubApi.AddProjectCollaborator - -
- - -Add a collaborator to an organization project. - -**Parameters** - -- **collaborator_username** (`string`, required) The GitHub username of the collaborator to be added to the project. -- **project_id** (`integer`, required) The unique identifier of the project to which a collaborator is being added. This ID is required to specify the exact project for collaboration. -- **collaborator_permission_level** (`string`, optional) The permission level to assign to the collaborator. Options are: 'read', 'write', or 'admin'. - -## GithubApi.GetUserProjectPermission - -
- - -Retrieve a user's permission level for an organization project. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub username of the user whose project permission level is being queried. -- **project_id** (`integer`, required) The unique identifier of the GitHub project for which to fetch the user's permission. - -## GithubApi.ListGithubProjectColumns - -
- - -Retrieve columns of a specific GitHub project. - -**Parameters** - -- **project_identifier** (`integer`, required) The unique identifier of the GitHub project to list columns for. -- **page_number** (`integer`, optional) The specific page number of the results to fetch from the GitHub project columns list. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100. - -## GithubApi.CreateProjectColumn - -
- - -Create a new column in a GitHub project. - -**Parameters** - -- **column_name** (`string`, required) The name of the column to be created in the GitHub project. -- **project_id** (`integer`, required) The unique integer identifier for the GitHub project where the column will be created. - -## GithubApi.GetGithubRateLimit - -
- - -Retrieve current GitHub API rate limit status. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.ListRepoRequiredWorkflows - -
- - -Retrieve required workflows in a GitHub repository. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive. -- **repository_name** (`string`, required) The name of the GitHub repository you want to query. This is not case sensitive. -- **page_number** (`integer`, optional) The specific page of workflow results to retrieve. Use this for pagination. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page, with a maximum of 100. - -## GithubApi.GetGithubRepoRequiredWorkflow - -
- - -Retrieve a specific required workflow from a GitHub repository. - -**Parameters** - -- **organization_name** (`string`, required) The name of the GitHub organization. It is not case sensitive. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **required_workflow_id** (`integer`, required) The unique ID of the required workflow that has executed at least once in the repository. - -## GithubApi.DeleteGithubRepository - -
- - -Deletes a specified GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository you want to delete. This is not case sensitive. -- **repository_owner_name** (`string`, required) The account owner of the repository; not case sensitive. - -## GithubApi.GetGithubRepositoryDetails - -
- - -Retrieve detailed information about a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) Specify the account owner of the repository. This name is not case sensitive. - -## GithubApi.UpdateGithubRepository - -
- - -Update repository details on GitHub. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository to update, not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListGithubRepoArtifacts - -
- - -Retrieve all artifacts for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository to retrieve artifacts from. This input is not case sensitive. -- **repository_owner** (`string`, required) The username or organization name of the repository owner. This is not case sensitive. -- **filter_artifacts_by_name** (`string`, optional) Filters artifacts by providing an exact match for the artifact name. Use a string to specify the artifact name. -- **result_page_number** (`integer`, optional) Specify the page number of results to fetch for paginated artifact listings. -- **results_per_page** (`integer`, optional) Specify the number of artifacts to return per page, with a maximum limit of 100. - -## GithubApi.DeleteGithubArtifact - -
- - -Deletes a specified GitHub artifact. - -**Parameters** - -- **artifact_unique_identifier** (`integer`, required) The unique identifier of the artifact to be deleted. Must be an integer value. -- **repository_name** (`string`, required) The name of the GitHub repository where the artifact resides. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository, case-insensitive. - -## GithubApi.GetWorkflowArtifact - -
- - -Retrieve a specific artifact from a GitHub workflow run. - -**Parameters** - -- **artifact_identifier** (`integer`, required) The unique identifier for the artifact to retrieve from a workflow run. -- **repository_name** (`string`, required) The name of the repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Not case sensitive. - -## GithubApi.GetGithubArtifactDownloadUrl - -
- - -Retrieve a URL to download a GitHub artifact zip file. - -**Parameters** - -- **archive_format_zip** (`string`, required) Specify the archive format as 'zip'. This is required for the download link. -- **artifact_id** (`integer`, required) The unique identifier of the artifact to be downloaded. -- **repository_name** (`string`, required) The name of the GitHub repository (not case sensitive). -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.GetGithubActionsCacheUsage - -
- - -Fetch GitHub Actions cache usage for a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Case insensitive name. - -## GithubApi.FetchGithubActionsCachePolicy - -
- - -Retrieve the cache usage policy for GitHub Actions in a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.ConfigureGithubActionsCache - -
- - -Set GitHub Actions cache usage policy for a repository. - -**Parameters** - -- **repository_cache_size_limit_gb** (`integer`, required) Specify the size limit for all GitHub Actions caches in the repository, in gigabytes. -- **repository_name** (`string`, required) The name of the GitHub repository. This field is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is the GitHub username or organization name and is not case sensitive. - -## GithubApi.RemoveActionsCacheKey - -
- - -Delete GitHub Actions caches by key for a repository. - -**Parameters** - -- **cache_key** (`string`, required) The key used to identify and delete a specific GitHub Actions cache. -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Not case sensitive. -- **git_reference_for_cache_deletion** (`string`, optional) Specify the Git reference to restrict cache deletion. Use `refs/heads/` for branches or `refs/pull//merge` for pull requests. - -## GithubApi.ListGithubActionsCaches - -
- - -Retrieve the list of GitHub Actions caches for a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This value is not case sensitive. -- **cache_key_or_prefix** (`string`, optional) Explicit key or prefix to identify the cache. Use this to filter caches by specific keys or prefixes. -- **git_reference** (`string`, optional) Specify the Git reference for the results to list. Use `refs/heads/` for branches or `refs/pull//merge` for pull requests. -- **results_page_number** (`integer`, optional) The page number of the results to fetch, used for pagination. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page, with a maximum of 100. -- **sort_by_property** (`string`, optional) The property to sort results by. Options are 'created_at', 'last_accessed_at', or 'size_in_bytes'. -- **sort_direction** (`string`, optional) Specify 'asc' for ascending or 'desc' for descending order of results. - -## GithubApi.DeleteGithubActionsCache - -
- - -Delete a GitHub Actions cache by ID for a repository. - -**Parameters** - -- **github_actions_cache_id** (`integer`, required) The unique identifier for the GitHub Actions cache to be deleted. -- **repository_name** (`string`, required) The name of the repository. Not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.GetGithubWorkflowJob - -
- - -Retrieve a specific job from a GitHub workflow run. - -**Parameters** - -- **job_identifier** (`integer`, required) Unique integer identifier of the workflow job to retrieve. -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Case insensitive. - -## GithubApi.DownloadGithubWorkflowJobLogs - -
- - -Retrieve a URL to download GitHub workflow job logs. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository (case insensitive). -- **repository_owner** (`string`, required) The account owner of the GitHub repository. Provide the name in a non-case sensitive format. -- **workflow_job_id** (`integer`, required) The unique identifier of the GitHub workflow job to download logs for. - -## GithubApi.GithubRerunWorkflowJob - -
- - -Re-run a job in a GitHub workflow. - -**Parameters** - -- **job_identifier** (`integer`, required) The unique integer identifier of the job to be re-run. This is required to specify which job in the workflow needs to be restarted. -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **enable_debug_logging** (`boolean`, optional) Set to true to enable debug logging for the re-run. - -## GithubApi.GetOidcSubjectClaimTemplate - -
- - -Retrieve the OIDC subject claim customization template for a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive. - -## GithubApi.SetGithubOidcSubjectClaim - -
- - -Customize OIDC subject claim for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This value is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Not case sensitive. -- **use_default_template** (`boolean`, required) Set to true to use the default template, which ignores `include_claim_keys`. -- **claim_keys_to_include** (`array[string]`, optional) Array of unique strings for claim keys, containing only alphanumeric characters and underscores. - -## GithubApi.FetchGithubActionsPerms - -
- - -Retrieve GitHub Actions permissions for a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive. - -## GithubApi.UpdateRepoActionsPermissions - -
- - -Sets GitHub Actions permissions for a repository. - -**Parameters** - -- **enable_github_actions** (`boolean`, required) Boolean flag indicating if GitHub Actions should be enabled on the repository. `True` enables, `False` disables. -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **actions_permission_policy** (`string`, optional) Defines the policy for actions allowed to run: 'all', 'local_only', or 'selected'. - -## GithubApi.GetWorkflowAccessLevel - -
- - -Determine external workflow access level for a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository (case insensitive). -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive. - -## GithubApi.SetWorkflowAccess - -
- - -Set the access level for workflows in a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username or organization name that owns the repository. This is not case sensitive. -- **workflow_access_level** (`string`, required) Specifies access level for workflows outside the repository: 'none', 'user', or 'organization'. - -## GithubApi.GetAllowedActionsForRepo - -
- - -Retrieve allowed GitHub Actions settings for a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The username or organization name of the repository owner. Case insensitive. - -## GithubApi.SetGithubActionsAllowedInRepo - -
- - -Set allowed GitHub Actions in a repository. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository. This is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.GetDefaultGithubActionsPermissions - -
- - -Retrieve default GitHub Actions workflow permissions for a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository, which is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.ConfigureGithubTokenPermissions - -
- - -Set default workflow permissions for a repository's GitHub Actions. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive. -- **default_workflow_permissions** (`string`, optional) Specify the default permissions ('read' or 'write') for the GITHUB_TOKEN when running workflows. -- **enable_pull_request_approval** (`boolean`, optional) Set to true to allow GitHub Actions to approve pull requests. Enabling this may pose a security risk. - -## GithubApi.ListRequiredWorkflowRuns - -
- - -Retrieve all workflow runs for a required workflow. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. Case sensitivity is ignored. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **required_workflow_id** (`integer`, required) The ID of the required workflow that has run at least once in a repository. -- **branch_name** (`string`, optional) Specify the branch name to filter workflow runs associated with it. Use the name of the branch from the `push`. -- **check_suite_identifier** (`integer`, optional) Specify the Check Suite ID to filter workflow runs associated with this specific ID. -- **exclude_pull_requests** (`boolean`, optional) If true, pull requests are omitted from the response. -- **results_page_number** (`integer`, optional) The page number of the results to fetch, used for pagination of the workflow runs. -- **results_per_page** (`integer`, optional) The number of workflow run results to display per page, with a maximum limit of 100. -- **sha_for_head_commit** (`string`, optional) Returns workflow runs associated with the specified head SHA (commit identifier). -- **trigger_event** (`string`, optional) Specify the event type that triggers the workflow run, such as `push`, `pull_request`, or `issue`. -- **workflow_actor_username** (`string`, optional) Specify the username of the actor whose workflow runs you want to retrieve. Use the GitHub login for the user who initiated the push. -- **workflow_run_status** (`string`, optional) Specify the workflow run status or conclusion to filter results. Options include 'completed', 'in_progress', 'success', etc. -- **workflow_runs_created_date_range** (`string`, optional) Specify the date-time range to filter workflow runs based on their creation date. Use GitHub's date search syntax for formatting. - -## GithubApi.ListSelfHostedRunners - -
- - -Retrieve self-hosted runners for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository (case-insensitive) for which to list self-hosted runners. -- **repository_owner** (`string`, required) The account owner of the repository, not case sensitive. -- **results_page_number** (`integer`, optional) Page number of the results to fetch for listing self-hosted runners. -- **results_per_page** (`integer`, optional) The number of results to return per page, with a maximum of 100. - -## GithubApi.ListRunnerAppsForRepo - -
- - -Retrieve runner application binaries for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. Case insensitive. -- **repository_owner** (`string`, required) The account owner of the repository on GitHub. The name is not case sensitive. - -## GithubApi.CreateRepoRegistrationToken - -
- - -Obtain a registration token for GitHub repository actions. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Provide the GitHub username or organization name. It is not case sensitive. - -## GithubApi.GenerateGithubRunnerRemoveToken - -
- - -Generate a token to remove a GitHub self-hosted runner. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This should match exactly as it appears on GitHub but is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive. - -## GithubApi.RemoveSelfHostedRunner - -
- - -Removes a self-hosted runner from a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **runner_unique_identifier** (`integer`, required) Unique identifier of the self-hosted runner to be removed. - -## GithubApi.RetrieveRunnerDetails - -
- - -Retrieve information about a self-hosted runner in a GitHub repo. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This corresponds to the GitHub repository name and is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This name is not case sensitive. -- **runner_identifier** (`integer`, required) Unique identifier of the self-hosted runner. Required to fetch specific runner details. - -## GithubApi.RemoveCustomLabelsRunnerRepo - -
- - -Remove all custom labels from a self-hosted runner in a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It is not case-sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Case insensitive. -- **runner_unique_identifier** (`integer`, required) Unique identifier of the self-hosted runner to remove custom labels from. - -## GithubApi.ListRunnerLabels - -
- - -Retrieve all labels for a self-hosted runner in a GitHub repo. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. Case insensitive. -- **self_hosted_runner_id** (`integer`, required) The unique integer identifier of the self-hosted runner in the repository. - -## GithubApi.LabelRunnerForRepo - -
- - -Add custom labels to a repository's self-hosted runner. - -**Parameters** - -- **custom_labels_to_add** (`array[string]`, required) The names of the custom labels to add to the self-hosted runner. Provide as an array of strings. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Case insensitive. -- **runner_id** (`integer`, required) Unique identifier for the self-hosted runner in the repository. - -## GithubApi.SetRunnerLabels - -
- - -Update custom labels for a self-hosted runner in a GitHub repo. - -**Parameters** - -- **custom_labels_for_runner** (`array[string]`, required) An array of custom labels to set for the self-hosted runner. Pass an empty array to clear all labels. -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case-sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. This name is not case sensitive. -- **runner_id** (`integer`, required) The unique integer identifier of the self-hosted runner to update labels for. - -## GithubApi.RemoveRunnerLabel - -
- - -Remove a custom label from a self-hosted runner in a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This name is not case sensitive. -- **runner_custom_label_name** (`string`, required) The name of the custom label on the self-hosted runner to be removed. -- **runner_unique_identifier** (`integer`, required) The unique ID number of the self-hosted runner to identify which runner to remove the label from. - -## GithubApi.ListGithubWorkflowRuns - -
- - -Retrieve all workflow runs for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository (case insensitive). -- **repository_owner** (`string`, required) The GitHub username or organization name that owns the repository. It is case-insensitive. -- **actor_username** (`string`, optional) Specify the username of the user whose workflow runs you want to retrieve. Use the login of the user who initiated the run. -- **branch_name** (`string`, optional) Specify the branch name to filter workflow runs associated with that branch. -- **check_suite_id** (`integer`, optional) Returns workflow runs with the specified check suite ID. -- **filter_by_head_sha** (`string`, optional) Only returns workflow runs associated with the specified commit SHA (head_sha). -- **omit_pull_requests** (`boolean`, optional) If true, pull requests are excluded from the workflow runs response. -- **results_page_number** (`integer`, optional) Page number of the results to fetch, used for paginating results. -- **results_per_page** (`integer`, optional) The number of results to return per page, with a maximum limit of 100. -- **triggering_event** (`string`, optional) Specify the event that triggers the workflow run, such as 'push', 'pull_request', or 'issue'. -- **workflow_created_date_range** (`string`, optional) Specify a date-time range to filter workflow runs by creation date. Use GitHub's specific date syntax for format. -- **workflow_run_status** (`string`, optional) Specifies the desired status or conclusion of the workflow runs to retrieve, such as 'success', 'in_progress', etc. - -## GithubApi.DeleteGithubWorkflowRun - -
- - -Delete a specific GitHub workflow run. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. The name is not case sensitive. -- **workflow_run_id** (`integer`, required) The unique identifier of the GitHub workflow run to be deleted. This should be an integer value. - -## GithubApi.GetGithubWorkflowRun - -
- - -Retrieve details of a specific GitHub workflow run. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive and is used to identify the repo for the workflow run. -- **repository_owner** (`string`, required) The account owner of the repository, not case sensitive. -- **workflow_run_id** (`integer`, required) The unique identifier of the GitHub workflow run. Must be an integer. -- **omit_pull_requests** (`boolean`, optional) If true, omits pull requests from the response, resulting in an empty array. - -## GithubApi.GetGithubActionsRunReviews - -
- - -Retrieve reviews for a GitHub Actions run. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. The input is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Not case sensitive. -- **workflow_run_id** (`integer`, required) The unique identifier of the GitHub Actions workflow run. This integer is required to fetch the reviews. - -## GithubApi.ListWorkflowArtifacts - -
- - -Retrieve artifacts from a GitHub workflow run. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **workflow_run_id** (`integer`, required) The unique identifier of the specific workflow run to retrieve artifacts from. -- **page_number_to_fetch** (`integer`, optional) The page number of the artifacts results to retrieve. -- **results_per_page** (`integer`, optional) Number of results to return per page, up to a maximum of 100. - -## GithubApi.GetGithubWorkflowRunAttempt - -
- - -Retrieve details of a specific GitHub workflow run attempt. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository, not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This value is not case sensitive. -- **workflow_attempt_number** (`integer`, required) The numeric identifier for the specific attempt of the workflow run to be retrieved. -- **workflow_run_id** (`integer`, required) The unique identifier of the GitHub workflow run. This integer specifies the exact run to retrieve information for. -- **omit_pull_requests** (`boolean`, optional) Set to true to omit pull requests from the response. - -## GithubApi.ListWorkflowRunJobs - -
- - -Retrieve jobs from a specific GitHub workflow run attempt. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository to fetch jobs from. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository, not case sensitive. -- **workflow_run_attempt_number** (`integer`, required) The attempt number of the specific workflow run to retrieve jobs for. This is typically used to distinguish between multiple attempts of the same run. -- **workflow_run_id** (`integer`, required) The unique identifier of the workflow run to list jobs for. -- **results_page_number** (`integer`, optional) Specify the page number of the results to fetch, used for pagination. -- **results_per_page** (`integer`, optional) Specifies the number of job results to return per page, with a maximum of 100. - -## GithubApi.GetWorkflowRunAttemptLogsUrl - -
- - -Retrieve a URL to download workflow run attempt logs. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive and identifies the repository for which to retrieve logs. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **workflow_attempt_number** (`integer`, required) The specific attempt number of the workflow run to fetch logs for. -- **workflow_run_id** (`integer`, required) The unique identifier of the workflow run. Used to specify which workflow's logs to download. - -## GithubApi.CancelGithubWorkflowRun - -
- - -Cancels a GitHub workflow run using its ID. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This is not case sensitive and should match the repository where the workflow run is located. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **workflow_run_id** (`integer`, required) The unique identifier of the GitHub workflow run to be canceled. This should be an integer value. - -## GithubApi.ListGithubWorkflowJobs - -
- - -Fetches jobs for a specific GitHub workflow run. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. It is not case sensitive and identifies whose account owns the repository. -- **workflow_run_id** (`integer`, required) The unique identifier of the GitHub workflow run to fetch jobs for. -- **job_filter_by_completion_time** (`string`, optional) Filter jobs by their `completed_at` timestamp. Use 'latest' for the most recent execution or 'all' for all executions. -- **results_page_number** (`integer`, optional) Page number for paginated results to fetch from the workflow jobs list. -- **results_per_page** (`integer`, optional) Specify the number of job results to return per page, with a maximum of 100. - -## GithubApi.DeleteGithubWorkflowRunLogs - -
- - -Deletes all logs for a specified workflow run on GitHub. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case-sensitive. -- **repository_owner_name** (`string`, required) The account owner of the repository. This name is not case sensitive. -- **workflow_run_id** (`integer`, required) The unique identifier of the workflow run to delete logs for. - -## GithubApi.DownloadWorkflowRunLogs - -
- - -Get a redirect URL to download workflow run log files. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This field is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is case-insensitive. -- **workflow_run_id** (`integer`, required) The unique identifier of the workflow run to download logs for. - -## GithubApi.GetPendingDeploymentsForRun - -
- - -Retrieve pending deployments for a GitHub workflow run. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **workflow_run_id** (`integer`, required) The unique identifier of the workflow run to fetch pending deployments for. - -## GithubApi.ApproveOrRejectPendingDeployments - -
- - -Approve or reject pending deployments for a workflow run. - -**Parameters** - -- **deployment_review_comment** (`string`, required) A comment to accompany the approval or rejection of the deployment review. -- **deployment_review_state** (`string`, required) Specify 'approved' to approve or 'rejected' to reject deployments to the environments. -- **environment_ids** (`array[integer]`, required) List of environment IDs to approve or reject. Each ID must be an integer. -- **repository_name** (`string`, required) The name of the repository. This value is not case-sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **workflow_run_id** (`integer`, required) The unique identifier of the workflow run to be approved or rejected. - -## GithubApi.RerunGithubWorkflow - -
- - -Initiates the rerun of a specific GitHub workflow. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. The name is not case sensitive. -- **workflow_run_id** (`integer`, required) The unique identifier of the workflow run to be re-run. -- **enable_debug_logging** (`boolean`, optional) Enable debug logging for the workflow re-run by setting to true. - -## GithubApi.RerunFailedGithubWorkflowJobs - -
- - -Re-run failed jobs in a GitHub workflow run. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. This is not case sensitive. -- **workflow_run_id** (`integer`, required) The unique identifier of the GitHub workflow run to re-run failed jobs for. -- **enable_debug_logging** (`boolean`, optional) Enable debug logging for the re-run of failed workflow jobs. - -## GithubApi.ListRepoSecrets - -
- - -Retrieve all repository secrets without values. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. It is not case sensitive. -- **results_page_number** (`integer`, optional) Specifies the page number of the secrets list to fetch. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. - -## GithubApi.GetRepoPublicKey - -
- - -Retrieve the public key for encrypting repository secrets. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This value is not case sensitive. Provide the repository name for which you want to retrieve the public key. -- **repository_owner** (`string`, required) The account owner of the repository. Enter a case-insensitive string specifying the owner's account name. - -## GithubApi.DeleteGithubRepoSecret - -
- - -Deletes a secret from a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **secret_name** (`string`, required) The specific name of the secret to delete from the repository. - -## GithubApi.GetRepositorySecretInfo - -
- - -Retrieve metadata for a specific GitHub repository secret. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Not case sensitive. -- **secret_name** (`string`, required) The name of the secret to retrieve metadata for. - -## GithubApi.CreateOrUpdateGithubRepoSecret - -
- - -Create or update a GitHub repository secret with an encrypted value. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **secret_name** (`string`, required) The name of the secret to create or update in the repository. -- **encrypted_secret_value** (`string`, optional) The secret's value encrypted with LibSodium using a repository's public key. -- **encryption_key_id** (`string`, optional) Provide the ID of the key used to encrypt the secret. - -## GithubApi.ListGithubRepoVariables - -
- - -Retrieve all variables for a specified GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository, case insensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **page_number** (`integer`, optional) Page number to fetch in the list of repository variables. Use for paginating results. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page, with a maximum of 30. - -## GithubApi.CreateGithubRepoVariable - -
- - -Create a variable for a GitHub repository to use in Actions workflows. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This value is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. Case insensitive. -- **variable_name** (`string`, required) The name of the repository variable to create. -- **variable_value** (`string`, required) The content or data for the repository variable. - -## GithubApi.DeleteGithubRepoVariable - -
- - -Delete a repository variable on GitHub using its name. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository to delete the variable from. It is not case-sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **variable_name** (`string`, required) The name of the variable to delete from the repository. It should match exactly as stored. - -## GithubApi.GetGithubRepoVariable - -
- - -Retrieve a specific variable from a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **variable_name** (`string`, required) The name of the variable to retrieve from the repository. This is case-sensitive and must match the variable's exact name. - -## GithubApi.UpdateGithubRepoVariable - -
- - -Update a variable in a GitHub repository for actions workflows. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This name is not case sensitive. -- **env_variable_name** (`string`, optional) The name of the variable to update in the GitHub repository. -- **repository_variable_value** (`string`, optional) The new value for the specified repository variable. -- **variable_name** (`string`, optional) The name of the variable in the repository. - -## GithubApi.ListGithubRepoWorkflows - -
- - -Retrieve GitHub workflows in a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This field is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. Case insensitive. -- **results_page_number** (`integer`, optional) The page number for pagination, used to fetch specific sets of results. -- **results_per_page** (`integer`, optional) The number of workflow results to display per page, with a maximum limit of 100. - -## GithubApi.ListGithubIssueAssignees - -
- - -Retrieve available assignees for GitHub issues. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository, case insensitive. -- **repository_owner** (`string`, required) The owner of the repository. Input is not case sensitive. -- **results_page_number** (`integer`, optional) Page number of the results to fetch. Use to paginate through results. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum limit of 100. - -## GithubApi.CheckUserAssignmentPermission - -
- - -Check if a user can be assigned to a GitHub issue. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. Input is not case sensitive. -- **user_assignee** (`string`, required) The username of the GitHub user to check for issue assignment permissions. - -## GithubApi.GetRepoAutolinks - -
- - -Retrieve autolinks for a specific GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It is case insensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This name is not case sensitive. -- **results_page_number** (`integer`, optional) Specify the page number to retrieve results from when fetching autolinks for a repository. - -## GithubApi.CreateRepositoryAutolink - -
- - -Create an autolink reference in a GitHub repository. - -**Parameters** - -- **autolink_key_prefix** (`string`, required) The prefix that triggers link creation when found in issues, pull requests, or commits. -- **repository_name** (`string`, required) The name of the repository. This is not case sensitive. -- **repository_owner_account** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **url_template_for_autolink** (`string`, required) URL containing `` for reference. It should match the characters based on `is_alphanumeric` value. -- **match_alphanumeric_characters** (`boolean`, optional) Determines if the autolink reference matches alphanumeric characters. True includes A-Z, 0-9, '-', false matches only numeric characters. - -## GithubApi.DeleteGithubRepoAutolink - -
- - -Delete an autolink reference from a GitHub repository. - -**Parameters** - -- **autolink_identifier** (`integer`, required) The unique integer identifier of the autolink to be deleted from the repository. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.GetRepositoryAutolink - -
- - -Retrieve a specific GitHub repository autolink by ID. - -**Parameters** - -- **autolink_id** (`integer`, required) The unique identifier of the autolink configured in the GitHub repository. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.ListGithubRepoBranches - -
- - -Retrieve branches from a specific GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case-sensitive. -- **results_page_number** (`integer`, optional) Page number of the results to fetch from the list of branches. -- **results_per_page** (`integer`, optional) Specify the number of branch results per page (maximum 100). -- **return_only_protected_branches** (`boolean`, optional) Set to `true` to return only protected branches, `false` for only unprotected, or omit to return all branches. - -## GithubApi.GetGithubRepoBranch - -
- - -Retrieve details of a specific branch from a GitHub repository. - -**Parameters** - -- **branch_name** (`string`, required) The name of the GitHub branch. Avoid using wildcard characters. For wildcard support, refer to the GitHub GraphQL API. -- **repository_name** (`string`, required) The name of the GitHub repository (case-insensitive). -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.DeleteBranchProtection - -
- - -Remove protection from a specified GitHub branch. - -**Parameters** - -- **branch_name** (`string`, required) The name of the branch to remove protection from. Cannot contain wildcard characters. -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.GetGithubBranchProtection - -
- - -Retrieve protection settings for a GitHub branch. - -**Parameters** - -- **branch_name** (`string`, required) The specific name of the GitHub branch to retrieve protection settings for. Must not contain wildcard characters. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. The name is not case sensitive. - -## GithubApi.UpdateBranchProtection - -
- - -Update GitHub repository branch protection settings. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository on GitHub. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository, which is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) The name of the branch to update protection settings for. It cannot contain wildcard characters. For wildcard support, use the GraphQL API. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.DeleteAdminBranchProtection - -
- - -Remove admin enforcement on a protected branch. - -**Parameters** - -- **branch_name** (`string`, required) The exact name of the branch for which admin enforcement will be removed. Wildcards are not allowed. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive and should not include any special characters. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. This is not case sensitive. - -## GithubApi.GetAdminBranchProtectionStatus - -
- - -Get admin branch protection status on GitHub. - -**Parameters** - -- **branch_name** (`string`, required) The exact name of the branch. Wildcards are not allowed; use GraphQL API for wildcards. -- **repository_name** (`string`, required) The name of the GitHub repository. This name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.SetAdminBranchProtection - -
- - -Set admin branch protection in a GitHub repository. - -**Parameters** - -- **branch_name** (`string`, required) The exact name of the branch to set admin protection. Wildcards not supported. -- **repository_name** (`string`, required) The case-insensitive name of the repository to set admin branch protection for. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.RemovePullRequestReviewProtection - -
- - -Remove pull request review protection from a branch. - -**Parameters** - -- **branch_name** (`string`, required) The specific name of the branch to remove pull request review protection from. Wildcard characters are not allowed. -- **repository_name** (`string`, required) The case-insensitive name of the repository from which to remove pull request review protection. -- **repository_owner** (`string`, required) The account owner of the repository. It's not case sensitive. - -## GithubApi.GetPullRequestReviewProtection - -
- - -Get pull request review protection details for a branch. - -**Parameters** - -- **branch_name** (`string`, required) The name of the branch. Cannot contain wildcard characters. For wildcard usage, refer to the GraphQL API. -- **repository_name** (`string`, required) The name of the repository to retrieve pull request review protection details for. This name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. It is not case sensitive and identifies who owns the repository. - -## GithubApi.UpdatePullRequestReviewProtection - -
- - -Update pull request review protection settings for a branch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner_name** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) The name of the branch to update. It must not contain wildcard characters. For wildcard support, use the GraphQL API. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.DisableCommitSignatureProtection - -
- - -Disable required signed commits on a branch. - -**Parameters** - -- **branch_name** (`string`, required) The name of the branch where you want to disable commit signature protection. Wildcards are not allowed. -- **repository_name** (`string`, required) The name of the GitHub repository, case insensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Not case sensitive. - -## GithubApi.CheckBranchCommitSignatureStatus - -
- - -Check if a branch requires signed commits for protection. - -**Parameters** - -- **branch_name** (`string`, required) The name of the branch to check. It cannot contain wildcard characters. -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) The username of the repository owner. It is not case sensitive. - -## GithubApi.RequireSignedCommitsOnBranch - -
- - -Enable signed commit requirement on a GitHub branch. - -**Parameters** - -- **branch_name** (`string`, required) The name of the branch for which to require signed commits. It cannot contain wildcard characters. For using wildcards, refer to the GitHub GraphQL API. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. Name is not case sensitive. - -## GithubApi.RemoveStatusCheckProtection - -
- - -Remove status check protection from a GitHub branch. - -**Parameters** - -- **branch_name** (`string`, required) The name of the branch from which you want to remove status check protection. Wildcard characters are not allowed. Use the GraphQL API for wildcard support. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username or organization name that owns the repository, case insensitive. - -## GithubApi.GetBranchProtectionStatusChecks - -
- - -Retrieve status check protections for a GitHub branch. - -**Parameters** - -- **branch_name** (`string`, required) The name of the branch. It must not contain wildcard characters. -- **repository_name** (`string`, required) The name of the GitHub repository to check. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.UpdateBranchStatusCheckProtection - -
- - -Update status check protection for a GitHub branch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) The name of the branch for which to update status check protection. Wildcard characters are not allowed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.RemoveBranchStatusCheckContexts - -
- - -Remove status check contexts from a protected branch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. Enter a GitHub username, which is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository, case insensitive, to target for status check context removal. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) The name of the branch from which to remove status check contexts. Cannot contain wildcard characters. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.GetGithubStatusCheckContexts - -
- - -Retrieve status check contexts for a protected GitHub branch. - -**Parameters** - -- **branch_name** (`string`, required) The name of the branch. Cannot include wildcard characters. -- **repository_name** (`string`, required) The name of the GitHub repository. This value is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. The name is not case sensitive. - -## GithubApi.AddStatusCheckContextsToBranch - -
- - -Add status check contexts to a protected branch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository to add status check contexts to. This is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) The name of the branch to add status check contexts to. Cannot contain wildcard characters. Use GraphQL API for wildcards. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.SetBranchStatusCheckContexts - -
- - -Set status check contexts for a protected branch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) The name of the branch. It cannot contain wildcard characters. Use the GraphQL API for wildcard support. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.RemoveBranchAccessRestriction - -
- - -Remove access restrictions from a GitHub branch. - -**Parameters** - -- **branch_name** (`string`, required) The name of the branch to remove access restrictions from. Cannot contain wildcard characters. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. The value is not case-sensitive. - -## GithubApi.GetBranchAccessRestrictions - -
- - -Retrieve access information for a protected branch. - -**Parameters** - -- **branch_name** (`string`, required) The exact name of the branch to retrieve access information for. Wildcard characters are not allowed. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.RemoveGithubAppBranchAccess - -
- - -Remove an app's access to a protected GitHub branch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner_account** (`string`, optional) The account owner of the repository, case insensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository, not case-sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) The name of the branch to remove app access from. Wildcards are not allowed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.GetAppsWithBranchAccess - -
- - -Retrieve GitHub Apps with access to a protected branch. - -**Parameters** - -- **branch_name** (`string`, required) The name of the branch. Wildcard characters are not allowed; use exact names only. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository, not case sensitive. - -## GithubApi.AddAppAccessRestrictions - -
- - -Grant specified apps push access to a protected branch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The repository account owner. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository. This is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) The name of the branch to grant push access. Cannot contain wildcard characters. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.SetBranchAppAccessRestrictions - -
- - -Replace apps with push access on a protected branch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) The exact name of the branch to update app access restrictions for. Wildcard characters are not allowed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.RemoveTeamAccessFromBranch - -
- - -Remove a team's push access to a protected GitHub branch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository. This is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) The exact name of the branch from which to remove team access. Wildcard characters are not allowed. For wildcard usage, employ the GraphQL API. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.GetTeamsWithPushAccessToBranch - -
- - -Retrieve teams with push access to a protected branch. - -**Parameters** - -- **branch_name** (`string`, required) The name of the branch to retrieve teams with push access. Wildcard characters are not allowed. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username or organization name that owns the repository. It is not case sensitive. - -## GithubApi.AddTeamAccessToBranch - -
- - -Grant push access to teams for a specific branch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) Specify the branch name to grant team access. Wildcard characters are not allowed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.SetGithubBranchTeamAccess - -
- - -Update the team access restrictions on a GitHub branch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) The name of the branch. It cannot contain wildcard characters. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.RemoveUserAccessFromBranch - -
- - -Remove users' push access from a GitHub branch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) The name of the branch to remove user access from. It must not contain wildcard characters. For using wildcards, refer to the GitHub GraphQL API. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListUsersWithBranchAccess - -
- - -Retrieve users with push access to a protected branch on GitHub. - -**Parameters** - -- **branch_name** (`string`, required) The exact name of the branch to check for push access. Wildcard characters are not allowed. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.GrantPushAccessGithubBranch - -
- - -Grant push access to specified users for a GitHub branch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) The name of the branch to grant push access. Cannot contain wildcard characters. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.SetBranchUserAccessRestrictions - -
- - -Set user access restrictions for a GitHub branch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository. Note that it is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **branch_name** (`string`, optional) The name of the branch for which to set user access restrictions. Cannot contain wildcard characters. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.RenameGithubBranch - -
- - -Rename a branch in a GitHub repository. - -**Parameters** - -- **current_branch_name** (`string`, required) The current name of the branch to be renamed. Cannot include wildcard characters. -- **new_branch_name** (`string`, required) The new name for the branch. Ensure it doesn’t contain wildcard characters. -- **repository_name** (`string`, required) The name of the GitHub repository. It is case insensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository, not case sensitive. - -## GithubApi.CreateGithubCheckRun - -
- - -Create a new check run for a GitHub repository commit. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.GetGithubCheckRun - -
- - -Retrieve a specific GitHub check run by its ID. - -**Parameters** - -- **check_run_identifier** (`integer`, required) The unique identifier of the GitHub check run to retrieve. -- **repository_name** (`string`, required) The name of the GitHub repository, not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. The name is not case sensitive. - -## GithubApi.UpdateCheckRunStatus - -
- - -Update a check run for a specific commit in a repository. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. This is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository to update the check run. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **check_run_identifier** (`integer`, optional) The unique identifier of the check run to update. This should be an integer value. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListCheckRunAnnotations - -
- - -Retrieve annotations for a GitHub check run. - -**Parameters** - -- **check_run_identifier** (`integer`, required) The ID of the check run to retrieve annotations for. -- **repository_name** (`string`, required) The name of the GitHub repository (case insensitive). -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **results_page_number** (`integer`, optional) Specify the page number to fetch annotations from. Used for paginating results. -- **results_per_page** (`integer`, optional) The number of results per page to return, with a maximum of 100. - -## GithubApi.TriggerGithubCheckRerequest - -
- - -Triggers a rerequest for an existing GitHub check run. - -**Parameters** - -- **check_run_identifier** (`integer`, required) The unique identifier for the GitHub check run to be rerequested. -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner_account** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.CreateGithubCheckSuite - -
- - -Manually create a check suite on GitHub. - -**Parameters** - -- **head_commit_sha** (`string`, required) The SHA of the head commit for the check suite. Ensure it's a valid commit SHA. -- **repository_name** (`string`, required) The name of the GitHub repository where the check suite will be created. It is not case sensitive. -- **repository_owner_account** (`string`, required) Specify the account owner of the repository. This name is not case sensitive. - -## GithubApi.SetCheckSuitePreferences - -
- - -Set preferences for check suite creation in a repository. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.GetGithubCheckSuite - -
- - -Retrieve a GitHub check suite by ID. - -**Parameters** - -- **check_suite_id** (`integer`, required) The unique identifier for the GitHub check suite to retrieve. -- **repository_name** (`string`, required) The name of the repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. The name is not case sensitive. - -## GithubApi.ListGithubCheckRunsForSuite - -
- - -List check runs for a GitHub check suite using its ID. - -**Parameters** - -- **check_suite_identifier** (`integer`, required) The unique identifier of the check suite to list its check runs. -- **repository_name** (`string`, required) The name of the GitHub repository to query. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner's username of the repository. Case insensitive. -- **check_run_name** (`string`, optional) Returns check runs with the specified name. -- **check_run_status** (`string`, optional) Specify the status of the check runs to be returned. Options: 'queued', 'in_progress', 'completed'. -- **filter_by_completion_time** (`string`, optional) Filters check runs by their `completed_at` timestamp. Use 'latest' for the most recent runs or 'all' for all runs. -- **result_page_number** (`integer`, optional) Specifies which page of the results to fetch, for paginated data. -- **results_per_page** (`integer`, optional) Sets the number of results to return per page, with a maximum of 100. - -## GithubApi.RerequestGithubCheckSuite - -
- - -Rerequest a check suite on GitHub without code changes. - -**Parameters** - -- **check_suite_identifier** (`integer`, required) The unique identifier of the GitHub check suite to be rerequested. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. Specify the repository whose check suite you want to rerequest. -- **repository_owner** (`string`, required) The account owner of the repository (case insensitive). - -## GithubApi.ListCodeScanningAlerts - -
- - -Retrieve code scanning alerts for a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository for which to list code scanning alerts. This name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **alert_state_filter** (`string`, optional) Filter code scanning alerts by state. Valid options are 'open', 'closed', 'dismissed', and 'fixed'. -- **code_scanning_tool_guid** (`string`, optional) The GUID of a code scanning tool to filter alerts by this tool only. This can't be used with 'tool_name'. -- **code_scanning_tool_name** (`string`, optional) Specify the name of the code scanning tool to filter alerts by this tool only. Use either `tool_name` or `tool_guid`, but not both. -- **filter_by_severity** (`string`, optional) Specify the severity of code scanning alerts to filter, using values like 'critical', 'high', 'medium', 'low', 'warning', 'note', or 'error'. -- **git_reference_for_scan_results** (`string`, optional) The Git reference for listing results. Use `refs/heads/` or `` for branches, `refs/pull//merge` for pull requests. -- **results_page_number** (`integer`, optional) Page number to fetch results from. Use this to navigate through paginated results. -- **results_per_page** (`integer`, optional) The number of results per page, up to a maximum of 100. -- **sort_by_property** (`string`, optional) Property to sort the results by, either 'created' or 'updated'. -- **sort_direction** (`string`, optional) The direction to sort the results. Choose 'asc' for ascending or 'desc' for descending order. - -## GithubApi.GetCodeScanningAlert - -
- - -Retrieve a single code scanning alert from a GitHub repo. - -**Parameters** - -- **alert_number** (`integer`, required) The unique number identifying a specific code scanning alert on GitHub. Found at the end of the URL for an alert or in the `number` field from the `GET /repos/{owner}/{repo}/code-scanning/alerts` response. -- **repository_name** (`string`, required) The name of the repository. This parameter is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.UpdateGithubCodeScanningAlert - -
- - -Update the status of a GitHub code scanning alert. - -**Parameters** - -- **alert_identifier_number** (`integer`, required) The unique number identifying a GitHub code scanning alert, found at the end of the alert URL or in the response of the alerts list. -- **alert_state** (`string`, required) Specifies the new state of the code scanning alert. Use 'open' or 'dismissed'. Provide `dismissed_reason` if 'dismissed'. -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is case insensitive. -- **dismissal_comment** (`string`, optional) The comment explaining the reason for dismissing the code scanning alert. -- **dismissed_reason_for_alert** (`string`, optional) Required if the alert state is dismissed. Specify the reason using one of: 'None', 'false positive', 'won't fix', 'used in tests'. - -## GithubApi.ListCodeScanningAlertInstances - -
- - -Retrieve instances of a specific code scanning alert. - -**Parameters** - -- **alert_identifier** (`integer`, required) The unique number identifying the code scanning alert. Find this number at the end of the alert URL in GitHub or in the `GET /repos/{owner}/{repo}/code-scanning/alerts` response. -- **repository_name** (`string`, required) The name of the repository, not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **git_reference** (`string`, optional) The Git reference for the results you want to list. Format as `refs/heads/` or `` for branches, and `refs/pull//merge` for pull requests. -- **page_number** (`integer`, optional) Page number of the results to fetch. Use for navigating large sets of alert instances. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page (maximum 100). - -## GithubApi.ListRecentCodeScanningAnalyses - -
- - -Retrieve recent code scanning analyses for a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive, and it should match the GitHub account owning the target repository. -- **code_scanning_tool_guid** (`string`, optional) The GUID of the code scanning tool to filter results. Specify either this or 'tool_name', not both. -- **code_scanning_tool_name** (`string`, optional) Specify the name of a code scanning tool to list results by this tool only. Cannot be used with `tool_guid`. -- **filter_by_sarif_id** (`string`, optional) Filter analyses that belong to a specific SARIF upload by providing the SARIF ID. -- **git_reference_for_analyses** (`string`, optional) The Git reference for analyses; format as `refs/heads/` for branches or `refs/pull//merge` for pull requests. -- **page_number** (`integer`, optional) The page number of the results to fetch. Used for paginating through the list of analyses. -- **results_per_page** (`integer`, optional) Number of results per page, with a maximum limit of 100. -- **sort_by_property** (`string`, optional) Specify the property for sorting the results. Available option: 'created'. -- **sort_direction** (`string`, optional) The order to sort results, either ascending ('asc') or descending ('desc'). - -## GithubApi.DeleteCodeScanningAnalysis - -
- - -Delete a specific code scanning analysis from a GitHub repository. - -**Parameters** - -- **analysis_id** (`integer`, required) The ID of the analysis to delete, obtained from the `GET /repos/{owner}/{repo}/code-scanning/analyses` endpoint. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **allow_final_analysis_deletion** (`string`, optional) Set to 'true' to allow deletion if the analysis is the last in a set, preventing a 400 error. - -## GithubApi.GetCodeScanningAnalysis - -
- - -Retrieve detailed code scanning analysis for a GitHub repository. - -**Parameters** - -- **analysis_id** (`integer`, required) The ID number of the code scanning analysis to retrieve for the repository. This ID is obtained from the `GET /repos/{owner}/{repo}/code-scanning/analyses` operation. -- **repository_name** (`string`, required) The name of the GitHub repository. The name is not case sensitive. -- **repository_owner** (`string`, required) Specify the account owner of the repository. The name is not case sensitive. - -## GithubApi.UploadSarifCodeScanningResults - -
- - -Upload SARIF data to GitHub for code scanning results. - -**Parameters** - -- **base64_compressed_sarif_data** (`string`, required) A Base64-encoded string of the SARIF file compressed using gzip. Ensure proper encoding before upload. -- **commit_sha** (`string`, required) The SHA of the commit associated with the uploaded analysis. This links the SARIF data to a specific point in the repository's history. -- **git_reference** (`string`, required) The full Git reference. Format: `refs/heads/`, `refs/pull//merge`, or `refs/pull//head`. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive and identifies where the SARIF data will be uploaded. -- **repository_owner** (`string`, required) The account owner of the repository on GitHub, not case sensitive. -- **analysis_start_time** (`string`, optional) The timestamp when the analysis run began, in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. -- **base_directory_for_analysis** (`string`, optional) The base directory used in the analysis as it appears in the SARIF file to map file paths correctly. -- **tool_name** (`string`, optional) Specifies the tool name used for generating the code scanning analysis. Defaults to 'API' if not provided. Supports filtering by tool GUID in alerts operations. - -## GithubApi.GetSarifAnalysisInfo - -
- - -Retrieve SARIF upload status and analysis URL. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This input is case-insensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. This input is not case sensitive. -- **sarif_id** (`string`, required) The SARIF ID obtained after uploading. It is used to retrieve analysis details. - -## GithubApi.ListCodeownersErrors - -
- - -Identify syntax errors in a repository's CODEOWNERS file. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. It is not case sensitive. -- **version_reference** (`string`, optional) Specify the branch, tag, or commit name to select the CODEOWNERS file version. Defaults to the repository's default branch if not provided. - -## GithubApi.ListGithubRepoCollaborators - -
- - -Retrieve collaborators of a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. This name is not case sensitive. -- **filter_by_affiliation** (`string`, optional) Filter collaborators by affiliation: 'outside', 'direct', or 'all'. -- **filter_by_permission** (`string`, optional) Specify the permission level ('pull', 'triage', 'push', 'maintain', 'admin') to filter the repository collaborators. Returns all collaborators if not specified. -- **results_page_number** (`integer`, optional) The page number of results to retrieve when querying the list of collaborators. -- **results_per_page** (`integer`, optional) The number of results per page to return, with a maximum of 100. - -## GithubApi.RemoveRepoCollaborator - -
- - -Remove a collaborator from a GitHub repository. - -**Parameters** - -- **collaborator_username** (`string`, required) The GitHub user handle for the collaborator to be removed. -- **repository_name** (`string`, required) The name of the GitHub repository, case insensitive. -- **repository_owner_name** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.CheckGithubRepoCollaborator - -
- - -Check if a user is a collaborator on a GitHub repository. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub username to check collaboration status for. -- **repository_name** (`string`, required) The name of the GitHub repository, case-insensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository, not case sensitive. - -## GithubApi.AddOrUpdateGithubCollaborator - -
- - -Add or update a collaborator on a GitHub repository. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user handle for the collaborator to be added or updated. -- **repository_name** (`string`, required) The name of the GitHub repository. This input is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username of the account owner of the repository. This is not case sensitive. -- **permission_level_for_github_collaborator** (`string`, optional) Specify the permission to grant or update for a collaborator on an organization-owned GitHub repository. Only valid for such repositories. - -## GithubApi.CheckRepoCollaboratorPermission - -
- - -Check a collaborator's permission level in a GitHub repo. - -**Parameters** - -- **collaborator_username** (`string`, required) The GitHub user account handle to check permissions for. -- **repository_name** (`string`, required) The name of the GitHub repository (case insensitive). -- **repository_owner** (`string`, required) The account owner of the repository (not case sensitive). - -## GithubApi.ListRepoCommitComments - -
- - -Retrieve commit comments for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This name is not case sensitive. -- **results_page_number** (`integer`, optional) Specify the page number of commit comments to fetch from the repository. -- **results_per_page** (`integer`, optional) Number of commit comments to retrieve per page, with a maximum of 100. - -## GithubApi.DeleteGithubCommitComment - -
- - -Deletes a specific commit comment on GitHub. - -**Parameters** - -- **comment_id** (`integer`, required) The unique identifier of the commit comment to be deleted. -- **repository_name** (`string`, required) The name of the GitHub repository. This value is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. It is not case sensitive. - -## GithubApi.GetGithubCommitComment - -
- - -Retrieve details of a specific commit comment on GitHub. - -**Parameters** - -- **comment_identifier** (`integer`, required) The unique identifier for the GitHub commit comment to be retrieved. -- **repository_name** (`string`, required) The name of the repository. This value is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.UpdateCommitComment - -
- - -Update a comment on a GitHub commit. - -**Parameters** - -- **comment_contents** (`string`, required) The updated text of the commit comment. Enter the new content you wish to save. -- **comment_unique_id** (`integer`, required) The unique identifier for the commit comment being updated. It is an integer value that specifies the comment to be edited within the repository. -- **repository_name** (`string`, required) The name of the repository. This is not case sensitive. Provide the repository's exact name as it appears on GitHub. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. This name is not case sensitive. - -## GithubApi.ListCommitCommentReactions - -
- - -Retrieve reactions for a GitHub commit comment. - -**Parameters** - -- **comment_id** (`integer`, required) The unique identifier for the commit comment you want to retrieve reactions for. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive and identifies the repository within the specified owner's account. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **reaction_type** (`string`, optional) Filter results to show only a specific reaction type. Omit to list all reactions. -- **results_page_number** (`integer`, optional) Page number of the results to fetch, used for pagination. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page, with a maximum of 100. - -## GithubApi.AddReactionToCommitComment - -
- - -Add a reaction to a GitHub commit comment. - -**Parameters** - -- **comment_id** (`integer`, required) The unique identifier of the GitHub commit comment to which the reaction will be added. -- **reaction_type** (`string`, required) The type of reaction to add to the commit comment, e.g., '+1', 'heart', 'laugh'. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username of the repository owner. This value is case-insensitive. - -## GithubApi.DeleteCommitCommentReaction - -
- - -Delete a reaction from a commit comment on GitHub. - -**Parameters** - -- **comment_unique_identifier** (`integer`, required) The unique identifier for the specific commit comment you want to target. -- **reaction_unique_identifier** (`integer`, required) The unique identifier for the reaction to be deleted from a commit comment. -- **repository_name** (`string`, required) The case-insensitive name of the repository. -- **repository_owner** (`string`, required) The account owner of the repository. It is not case sensitive. - -## GithubApi.CheckCommitSignatureVerification - -
- - -Fetches verification status of a commit's signature on GitHub. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository to verify the commit signature. Not case-sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This value is not case sensitive. -- **commit_author_filter** (`string`, optional) GitHub login or email address to filter commits by author. -- **commit_file_path_filter** (`string`, optional) Specify a file path to filter commits that only include changes to this path. -- **only_commits_before_date** (`string`, optional) Filter commits to only include those before this date, formatted as `YYYY-MM-DDTHH:MM:SSZ`. -- **results_page_number** (`integer`, optional) Page number of the results to fetch, used for pagination. -- **results_per_page** (`integer`, optional) Specifies the number of commits to return per page, up to a maximum of 100. -- **start_commit_sha_or_branch** (`string`, optional) SHA or branch to start listing commits from. Defaults to the repository's default branch, usually 'main'. -- **updated_after_timestamp** (`string`, optional) Timestamp in ISO 8601 format to filter notifications updated after this time. - -## GithubApi.ListBranchesForCommit - -
- - -Retrieve branches for a specific commit in a GitHub repository. - -**Parameters** - -- **commit_sha** (`string`, required) The SHA hash of the commit used to identify specific branches where this commit is the HEAD in a GitHub repository. -- **repository_name** (`string`, required) The name of the GitHub repository. Not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository, not case sensitive. - -## GithubApi.ListCommitComments - -
- - -Retrieve comments for a specific commit in a GitHub repo. - -**Parameters** - -- **commit_sha** (`string`, required) The SHA string representing the specific commit to retrieve comments for. -- **repository_name** (`string`, required) The case-insensitive name of the GitHub repository. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive and identifies the GitHub user or organization that owns the repository. -- **results_page_number** (`integer`, optional) The page number of results to fetch for commit comments. Useful for paginating through large sets of comments. -- **results_per_page** (`integer`, optional) The number of comments to return per page, with a maximum of 100. - -## GithubApi.CreateGithubCommitComment - -
- - -Create a comment on a specific GitHub commit. - -**Parameters** - -- **comment_content** (`string`, required) The text of the comment to be added to the commit. It should be a clear and concise message. -- **commit_sha** (`string`, required) The SHA identifier of the commit to comment on. It uniquely identifies the commit within the repository. -- **repository_name** (`string`, required) The name of the GitHub repository where the commit resides. It's not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. Name is not case sensitive. -- **deprecated_line_number** (`integer`, optional) Line number in the file to comment on. **Deprecated**. Use the `position_in_diff` instead. -- **line_index_in_diff** (`integer`, optional) Line index in the diff to comment on. -- **relative_file_path** (`string`, optional) Relative path of the file to comment on within the repository. - -## GithubApi.ListPullRequestsForCommit - -
- - -Retrieve pull requests linked to a specific commit. - -**Parameters** - -- **commit_sha** (`string`, required) The SHA identifier of the commit to fetch associated pull requests. -- **repository_name** (`string`, required) The name of the repository (not case sensitive). -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **results_page_number** (`integer`, optional) Page number of the results to fetch from the list of pull requests associated with the commit. -- **results_per_page** (`integer`, optional) Number of results per page, with a maximum of 100. - -## GithubApi.GetCommitDetails - -
- - -Retrieve details of a single commit reference. - -**Parameters** - -- **commit_reference** (`string`, required) The reference string (branch name, tag, or commit SHA) for the commit to fetch details about. -- **repository_name** (`string`, required) The name of the repository. This is not case sensitive and required to identify the repository from which to fetch commit details. -- **repository_owner** (`string`, required) The account owner of the repository, not case sensitive. -- **results_page_number** (`integer`, optional) The page number of the commit results to fetch from the API. Use for pagination. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page, up to a maximum of 100. - -## GithubApi.ListCheckRunsForCommitRef - -
- - -Lists check runs for a given commit reference. - -**Parameters** - -- **commit_reference** (`string`, required) The commit reference, which can be a SHA, branch name, or tag name, to list check runs for. -- **repository_name** (`string`, required) The name of the repository. Input is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive and refers to the GitHub username or organization name. -- **application_id** (`integer`, optional) Optional integer identifier for a GitHub App to filter check runs created by that app. -- **check_run_name** (`string`, optional) Specify a name to filter check runs by their name. -- **check_run_status** (`string`, optional) Filter check runs by specifying the status ('queued', 'in_progress', 'completed'). -- **filter_by_completion_timestamp** (`string`, optional) Specify 'latest' to return the most recent check runs or 'all' to include all completed check runs. -- **results_page_number** (`integer`, optional) The specific page number of results to retrieve, used for pagination. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100. - -## GithubApi.ListCheckSuitesForRef - -
- - -List check suites for a specific commit reference. - -**Parameters** - -- **commit_reference** (`string`, required) The commit ref, which can be a SHA, branch name, or tag name. Used to list check suites. -- **repository_name** (`string`, required) The name of the repository to query. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository, case insensitive. -- **github_app_id_filter** (`integer`, optional) Filter check suites by the GitHub App ID to narrow results to relevant checks associated with a specific application. -- **results_page_number** (`integer`, optional) Specifies which page of results to fetch. Useful for paginating through a list of check suites. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. The maximum is 100. -- **specific_check_name** (`string`, optional) Specify the name of the check run to filter the results. - -## GithubApi.GetCombinedCommitStatus - -
- - -Retrieve the combined status of a commit for a given reference. - -**Parameters** - -- **reference_specifier** (`string`, required) The ref parameter specifying the SHA, branch name, or tag name for the commit status. -- **repository_name** (`string`, required) The name of the repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is a case-insensitive string. -- **results_page_number** (`integer`, optional) The page number of commit status results to fetch. Useful for pagination. -- **results_per_page** (`integer`, optional) The number of results to include per page, with a maximum limit of 100. - -## GithubApi.GetCommitStatuses - -
- - -Retrieve commit statuses for a specific ref in a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username or organization name that owns the repository. This is not case sensitive. -- **repository_reference** (`string`, required) The reference for the commit, which can be a SHA, branch name, or tag name. It specifies the ref to fetch statuses for in the repository. -- **results_page_number** (`integer`, optional) The page number to fetch the results from, useful for pagination. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100. - -## GithubApi.CompareGithubCommits - -
- - -Compares two commits in a GitHub repository. - -**Parameters** - -- **base_and_head_branch_comparison** (`string`, required) Specify branches/base and head in the format `BASE...HEAD` or `USERNAME:BASE...USERNAME:HEAD` to compare them. -- **repository_name** (`string`, required) The name of the GitHub repository to compare commits in. This input is not case sensitive. -- **repository_owner** (`string`, required) The username of the account that owns the repository. This name is not case sensitive. -- **page_number** (`integer`, optional) Page number of the results to fetch. Used for pagination to navigate through commit comparisons. -- **results_per_page** (`integer`, optional) Specifies the number of commit results returned per page. Maximum allowed is 100. - -## GithubApi.DeleteGithubFile - -
- - -Delete a file from a GitHub repository. - -**Parameters** - -- **commit_message** (`string`, required) The commit message explaining why the file is being deleted. This information is mandatory. -- **file_path** (`string`, required) The file path in the repository to be deleted. This path is case-sensitive. -- **file_sha_to_delete** (`string`, required) The SHA of the file to be deleted. This is required to identify the specific file version in the repository. -- **repository_name** (`string`, required) The name of the GitHub repository from which the file will be deleted. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository in a case-insensitive format. -- **author_email** (`string`, optional) Email of the author or committer for the commit. Required if using author or committer details. -- **author_name** (`string`, optional) The name of the author or committer of the commit. Required if 'author' is used. -- **branch_name** (`string`, optional) The name of the branch from which to delete the file. Defaults to the repository's default branch (usually 'master'). -- **committer_email** (`string`, optional) The email of the committer for the commit. This is required for deleting a file. -- **committer_name** (`string`, optional) The name of the committer or author of the commit for deleting the file. - -## GithubApi.GetGithubRepoContent - -
- - -Retrieve file or directory contents from a GitHub repository. - -**Parameters** - -- **file_or_directory_path** (`string`, required) The file or directory path within the repository. If omitted, the root directory is accessed. -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This value is not case sensitive. -- **commit_branch_or_tag** (`string`, optional) The name of the commit, branch, or tag to retrieve content from. Defaults to the repository's default branch, usually 'master'. - -## GithubApi.UpdateOrCreateGithubFile - -
- - -Create or update a file in a GitHub repository. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the GitHub repository, not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **file_path_in_repository** (`string`, optional) The file path within the repository where the file will be created or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListGithubRepoContributors - -
- - -Retrieve contributors for a specific GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. This value is not case sensitive. -- **include_anonymous_contributors** (`string`, optional) Set to `1` or `true` to include anonymous contributors in the results. -- **results_page_number** (`integer`, optional) Specifies the page number of contributors to fetch. Use this to navigate through paginated results. Each page contains a subset of contributors, with 'per_page' controlling the number of contributors per page. -- **results_per_page** (`integer`, optional) The number of results per page, with a maximum of 100. - -## GithubApi.ListDependabotAlertsForRepo - -
- - -Retrieve Dependabot alerts for a specific repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This is case insensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. This name is not case sensitive. -- **alert_states_filter** (`string`, optional) A comma-separated list of alert states to filter results by. Options: `dismissed`, `fixed`, `open`. -- **before_cursor** (`string`, optional) Cursor indicating the position to fetch results before this point. -- **cursor_after** (`string`, optional) A cursor to fetch results after a specified point. Helps in pagination by retrieving alerts following the given cursor position. -- **deprecated_page_number** (`integer`, optional) **Deprecated**. Use to specify the page number of results to fetch. Prefer using `before` or `after` cursors. -- **ecosystem_filter** (`string`, optional) Comma-separated list of ecosystems to filter alerts by: composer, go, maven, npm, nuget, pip, pub, rubygems, rust. -- **fetch_deprecated_first_page_results** (`integer`, optional) **Deprecated**. Number of results per page (max 100), starting from the first result. Avoid using with `last`. Use `per_page` and `after` instead. -- **fetch_last_page_results** (`integer`, optional) **Deprecated**: Use `per_page` with `before` instead. Fetch results per page from the last result (max 100). -- **manifest_paths** (`string`, optional) Comma-separated list of full manifest paths to filter alerts by those manifests. -- **package_names** (`string`, optional) A comma-separated list of package names. Only alerts for these packages will be returned. -- **results_per_page** (`integer`, optional) Specifies the number of results to be returned per page, with a maximum limit of 100. -- **severity_filter** (`string`, optional) Provide a comma-separated list of severities: `low`, `medium`, `high`, `critical`. Filters alerts by these severities. -- **sort_by** (`string`, optional) Sort alerts by `created` or `updated` date. `Created` means when the alert was created, `updated` means when the alert's state last changed. -- **sort_results_direction** (`string`, optional) Specify the order to sort the results: `asc` for ascending or `desc` for descending. -- **vulnerable_dependency_scope** (`string`, optional) Specifies the scope of the vulnerable dependency to filter alerts. Options: 'development' or 'runtime'. - -## GithubApi.GetDependabotAlert - -
- - -Retrieve details of a specific Dependabot alert. - -**Parameters** - -- **dependabot_alert_number** (`integer`, required) The identifier number for the Dependabot alert in the repository. Obtainable from the alert URL or response from `GET /repos/{owner}/{repo}/dependabot/alerts`. -- **repository_name** (`string`, required) The name of the repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.UpdateGithubDependabotAlert - -
- - -Update a GitHub Dependabot alert. - -**Parameters** - -- **alert_identifier** (`integer`, required) The unique number identifying a Dependabot alert in the repository. Find this at the end of the alert URL or in `number` fields from the `GET /repos/{owner}/{repo}/dependabot/alerts` response. -- **alert_state** (`string`, required) Specifies the state of the Dependabot alert. Use 'dismissed' to dismiss an alert and 'open' to keep it open. A 'dismissed_reason' is required when setting to 'dismissed'. -- **repository_name** (`string`, required) The name of the GitHub repository to update. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. Not case sensitive. -- **dismissed_alert_comment** (`string`, optional) An optional comment to provide context when dismissing the alert. -- **dismissed_reason_for_alert** (`string`, optional) Reason for dismissing the alert. Required if `state` is set to `dismissed`. Allowed values: 'fix_started', 'inaccurate', 'no_bandwidth', 'not_used', 'tolerable_risk'. - -## GithubApi.ListGitRepoSecrets - -
- - -Retrieve a list of secrets in a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **results_page_number** (`integer`, optional) Specifies the page number of results to retrieve from the repository secrets list. -- **results_per_page** (`integer`, optional) The number of secret results to display per page, maximum of 100. - -## GithubApi.GetGithubRepoPublicKey - -
- - -Retrieve the public key for encrypting repository secrets. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository, not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.RemoveGithubRepoSecret - -
- - -Delete a secret from a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository, not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository, not case sensitive. -- **secret_name** (`string`, required) The name of the secret to be deleted from the repository. - -## GithubApi.GetRepoSecretInfo - -
- - -Retrieve metadata of a repository secret from GitHub. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository, case insensitive. -- **secret_name** (`string`, required) The name of the secret to retrieve metadata for. Case insensitive. - -## GithubApi.ManageGithubRepoSecret - -
- - -Create or update an encrypted GitHub repository secret. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. Specify the GitHub username or organization name. -- **secret_name** (`string`, required) The name of the repository secret to create or update. Case insensitive. -- **encrypted_secret_value** (`string`, optional) The secret's value encrypted using LibSodium and a public key from the repository's public key endpoint. -- **encryption_key_id** (`string`, optional) The ID of the key used to encrypt the secret. This key is retrieved from GitHub's repository public key endpoint. - -## GithubApi.CompareDependencyChanges - -
- - -Get dependency changes between two commits of a repository. - -**Parameters** - -- **base_and_head_commit_specification** (`string`, required) Specify the base and head commits in the format `{base}...{head}` for comparison. -- **repository_name** (`string`, required) The name of the repository to compare. It is not case sensitive. -- **repository_owner_name** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **dependency_manifest_file_path** (`string`, optional) The full path, relative to the repository root, of the dependency manifest file. - -## GithubApi.CreateRepoDependencySnapshot - -
- - -Create a snapshot of a repository's dependencies. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the GitHub repository. This name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository to create a dependency snapshot for. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListGithubDeployments - -
- - -Retrieve deployments from a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **commit_sha** (`string`, optional) The commit SHA recorded at deployment creation time for filtering deployments. -- **deployment_environment** (`string`, optional) Specify the environment that was deployed to, such as 'staging' or 'production'. -- **deployment_task_name** (`string`, optional) The specific task name for the deployment, like `deploy` or `deploy:migrations`. -- **repository_ref** (`string`, optional) The name of the ref. This can be a branch, tag, or SHA to filter deployments by. -- **results_page_number** (`integer`, optional) Specifies which page of deployment results to fetch. Used for pagination to navigate through multiple pages of results. -- **results_per_page** (`integer`, optional) The number of results to return per page, with a maximum of 100. - -## GithubApi.CreateGithubDeployment - -
- - -Create a GitHub deployment for a specified repository ref. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. This input is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository to deploy. Not case-sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.DeleteGithubDeployment - -
- - -Delete a GitHub repository deployment. - -**Parameters** - -- **deployment_id** (`integer`, required) The unique identifier of the GitHub deployment to be deleted. This should be an integer. -- **repository_name** (`string`, required) The name of the repository. This name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.GetGithubDeploymentStatus - -
- - -Retrieve details of a specific GitHub deployment. - -**Parameters** - -- **deployment_id** (`integer`, required) The unique identifier for the deployment to retrieve details about. -- **repository_name** (`string`, required) The name of the GitHub repository, not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive. - -## GithubApi.ListGithubDeploymentStatuses - -
- - -Retrieve deployment statuses for a specified GitHub deployment. - -**Parameters** - -- **deployment_id** (`integer`, required) The unique identifier of the deployment to retrieve statuses for. Must be an integer. -- **repository_name** (`string`, required) The case-insensitive name of the GitHub repository. -- **repository_owner** (`string`, required) The GitHub username or organization that owns the repository. This is not case sensitive. -- **results_page_number** (`integer`, optional) The specific page number of deployment statuses to fetch. Used for pagination. -- **results_per_page** (`integer`, optional) The number of results to return per page, up to a maximum of 100. - -## GithubApi.CreateGithubDeploymentStatus - -
- - -Create deployment statuses for a GitHub deployment. - -**Parameters** - -- **deployment_id** (`integer`, required) The unique identifier for the deployment. This integer value specifies which deployment the status will be associated with. -- **deployment_status_state** (`string`, required) The desired state of the deployment status. Options include: 'error', 'failure', 'inactive', 'in_progress', 'queued', 'pending', 'success'. -- **repository_name** (`string`, required) The name of the GitHub repository. Case insensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **add_inactive_status_to_previous_deployments** (`boolean`, optional) Specifies if an 'inactive' status should be added to prior non-transient, non-production deployments with the same repository and environment. Defaults to true. -- **deployment_environment** (`string`, optional) Specifies the target deployment environment, such as `production`, `staging`, or `qa`. -- **deployment_environment_url** (`string`, optional) Sets the URL for accessing your deployment environment. Defaults to an empty string if not provided. -- **deployment_output_url** (`string`, optional) The full URL of the deployment's output. It replaces `target_url` and automatically sets `target_url` to the same value. Recommended for output logs. -- **deployment_status_target_url** (`string`, optional) Specify the URL containing output related to the deployment status. Note that it's recommended to use `log_url` instead, which replaces this parameter. -- **status_description** (`string`, optional) A brief description of the deployment status, up to 140 characters. - -## GithubApi.FetchDeploymentStatusGithub - -
- - -Retrieve a deployment status from a GitHub repository. - -**Parameters** - -- **deployment_id** (`integer`, required) The unique identifier of the deployment to retrieve the status for. Must be an integer. -- **deployment_status_id** (`integer`, required) The unique integer identifier for the deployment status in the GitHub repository. -- **repository_name** (`string`, required) The name of the repository (case-insensitive). -- **repository_owner** (`string`, required) The GitHub account owner of the repository. Not case sensitive. - -## GithubApi.TriggerGithubDispatchEvent - -
- - -Triggers a GitHub repository dispatch event. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) Specify the GitHub username or organization name that owns the repository. This is not case-sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository. This is not case sensitive and determines which repository's dispatch event will be triggered. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListRepositoryEnvironments - -
- - -Retrieve environments for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository to retrieve environments for. This name is not case-sensitive. -- **repository_owner** (`string`, required) The GitHub username of the repository owner. Case insensitive. -- **results_page_number** (`integer`, optional) The number of the page to retrieve for paginated results. -- **results_per_page** (`integer`, optional) The number of results to retrieve per page, with a maximum of 100. - -## GithubApi.DeleteRepoEnvironment - -
- - -Deletes a specific environment in a GitHub repository. - -**Parameters** - -- **environment_name** (`string`, required) The name of the GitHub repository environment to delete. This field is case insensitive. -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This value is not case sensitive. Specify the GitHub username or organization handle that owns the repository. - -## GithubApi.GetGithubRepoEnvironmentDetails - -
- - -Retrieve details about a GitHub repository environment. - -**Parameters** - -- **environment_name** (`string`, required) The name of the environment to retrieve details for. It is case insensitive. -- **repository_name** (`string`, required) The name of the GitHub repository (not case sensitive). -- **repository_owner_account_name** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.GithubManageEnvironment - -
- - -Create or update a GitHub environment with protection rules. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **environment_name** (`string`, optional) The name of the GitHub environment to create or update. This should be a string that accurately identifies the environment within the repository. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListDeploymentBranchPolicies - -
- - -Lists deployment branch policies for a GitHub environment. - -**Parameters** - -- **environment_name** (`string`, required) The name of the environment for which to list branch policies. This should match an existing environment in the repository. -- **repository_name** (`string`, required) The name of the repository, not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Input is not case sensitive. -- **result_page_number** (`integer`, optional) The page number of the results to retrieve. Use this to navigate through paginated results. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. - -## GithubApi.CreateGithubDeploymentBranchPolicy - -
- - -Creates a deployment branch policy for a GitHub environment. - -**Parameters** - -- **branch_name_pattern** (`string`, required) A pattern that branches must match to deploy to the environment. Wildcard characters won't match '/'. -- **environment_name** (`string`, required) The name of the environment for which to create a deployment branch policy. -- **repository_name** (`string`, required) The name of the GitHub repository, not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Case insensitive. - -## GithubApi.DeleteDeploymentBranchPolicy - -
- - -Delete a deployment branch policy for a GitHub environment. - -**Parameters** - -- **branch_policy_identifier** (`integer`, required) The unique identifier of the branch policy to be deleted. -- **environment_name** (`string`, required) The name of the GitHub environment for which the deployment branch policy will be deleted. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.GetDeploymentBranchPolicy - -
- - -Retrieve deployment branch policy for a specific environment. - -**Parameters** - -- **branch_policy_identifier** (`integer`, required) The unique identifier of the branch policy in the environment. Should be an integer value. -- **environment_name** (`string`, required) The name of the environment for which the deployment branch policy is being retrieved. -- **repository_name** (`string`, required) The name of the repository. Not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. This is case insensitive. - -## GithubApi.UpdateDeploymentBranchPolicy - -
- - -Update a deployment branch policy for a GitHub environment. - -**Parameters** - -- **branch_name_pattern** (`string`, required) Pattern that branches must match to deploy to the environment. Wildcards won't match '/'. See Ruby File.fnmatch for syntax. -- **branch_policy_identifier** (`integer`, required) The unique identifier for the branch policy to be updated. -- **environment_name** (`string`, required) The name of the environment for which the deployment branch policy is being updated. -- **repository_name** (`string`, required) The name of the GitHub repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username or organization name of the repository owner. It is case insensitive. - -## GithubApi.ListGithubRepoEvents - -
- - -Retrieve GitHub repository events. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. The name is not case sensitive. -- **repository_owner_name** (`string`, required) The username of the account owner of the repository, case insensitive. -- **results_page_number** (`integer`, optional) Specify the page number of the repository events to fetch. Useful for paginating results. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum limit of 100. - -## GithubApi.ListGithubRepoForks - -
- - -Fetches the list of forks for a specified GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive and specifies whose repository to list forks from. -- **results_page_number** (`integer`, optional) Specifies the page number for paginated results when listing forks. -- **results_per_page** (`integer`, optional) The number of results to return per page, with a maximum of 100. -- **sort_order** (`string`, optional) The order to sort the forks. Options: 'newest', 'oldest', 'stargazers', or 'watchers'. - -## GithubApi.CreateGithubFork - -
- - -Create a fork of a GitHub repository for the user. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository to fork. It's not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. This name is not case-sensitive. -- **fork_default_branch_only** (`boolean`, optional) Set to true to fork only the default branch of the repository. -- **new_fork_name** (`string`, optional) Specify a new name for the forked repository when forking an existing repository. -- **organization_name** (`string`, optional) Optional. Specify the organization name to fork into. If not provided, the fork will default to the user's account. - -## GithubApi.CreateGithubBlob - -
- - -Create a new blob in a GitHub repository. - -**Parameters** - -- **blob_content** (`string`, required) The content for the new GitHub blob. Accepts text or encoded binary data. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. This is not case sensitive. -- **content_encoding** (`string`, optional) Specify the encoding for the blob content. Supported values are 'utf-8' and 'base64'. - -## GithubApi.GetGithubBlobContent - -
- - -Retrieve Base64 encoded content of a GitHub blob. - -**Parameters** - -- **file_sha_identifier** (`string`, required) The SHA identifier for the blob. This is used to access the specific file blob from the GitHub repository. -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This name is not case sensitive. - -## GithubApi.CreateGitCommit - -
- - -Create a new Git commit on a GitHub repository. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. This name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository (case insensitive). Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.FetchCommitInfo - -
- - -Retrieve details and signature verification for a Git commit. - -**Parameters** - -- **commit_sha** (`string`, required) The SHA hash of the commit to retrieve details and verification status for. -- **repository_name** (`string`, required) The name of the repository to query. This input is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.ListGitMatchingRefs - -
- - -Retrieve Git references matching a specific name pattern. - -**Parameters** - -- **reference_pattern** (`string`, required) The pattern to match against Git references (e.g., heads/branch or tags/tag). Leave empty to retrieve all references. -- **repository_name** (`string`, required) The name of the repository to search for references. This name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. Specify the username or organization name that owns the repository. - -## GithubApi.GetGitReference - -
- - -Fetch a specific Git reference from a repository. - -**Parameters** - -- **git_reference** (`string`, required) The reference to the Git branch or tag, formatted as `heads/` or `tags/`. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.CreateGitReference - -
- - -Create a new reference in a GitHub repository. - -**Parameters** - -- **full_reference_name** (`string`, required) The fully qualified reference name (e.g., 'refs/heads/master'). Must start with 'refs' and include at least two slashes. -- **reference_sha** (`string`, required) The SHA-1 value for the reference. Required for creating a new reference in the repository. -- **repository_name** (`string`, required) The case-insensitive name of the GitHub repository to create a reference in. -- **repository_owner** (`string`, required) The account owner of the repository, not case sensitive. -- **authentication_token** (`string`, optional) The GitHub authentication token required to authorize the API request. - -## GithubApi.DeleteGitReference - -
- - -Deletes a specified Git reference in a repository. - -**Parameters** - -- **git_reference_to_delete** (`string`, required) The Git reference to delete, such as a branch or tag name. This should match the exact format used in the repository. -- **repository_name** (`string`, required) The name of the repository to delete the reference from. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username of the repository owner. This is not case sensitive. - -## GithubApi.UpdateGitReference - -
- - -Update a Git reference in a GitHub repository. - -**Parameters** - -- **fully_qualified_reference_name** (`string`, required) The fully qualified reference to update, e.g., `refs/heads/master`. Must start with `refs` and include at least two slashes. -- **repository_name** (`string`, required) The name of the repository in GitHub. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username or organization name that owns the repository. Not case sensitive. -- **target_sha1_value** (`string`, required) The SHA1 value to set the Git reference to. This should be a valid commit SHA in the repository. -- **force_update** (`boolean`, optional) Set to true to force the update and allow overwriting. False ensures a fast-forward update, preventing overwriting. - -## GithubApi.CreateGitTag - -
- - -Create a Git tag object on GitHub. - -**Parameters** - -- **git_object_sha** (`string`, required) The SHA of the Git object to tag, typically a commit, tree, or blob. -- **repository_name** (`string`, required) The name of the repository. This value is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **tag_message** (`string`, required) The message or description for the tag, providing context or details about it. -- **tag_name** (`string`, required) The name of the tag, typically a version (e.g., 'v0.0.1'). -- **tag_object_type** (`string`, required) Specifies the type of the object being tagged. Acceptable values are 'commit', 'tree', or 'blob'. -- **author_of_tag_name** (`string`, optional) The name of the author of the tag. It should be a string providing the full name. -- **tagger_email** (`string`, optional) The email address of the tag author. This should be in a valid email format. -- **tagging_date** (`string`, optional) The date and time when the object was tagged, in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. - -## GithubApi.GetGitTagSignatureVerification - -
- - -Retrieve verification details of a git tag signature. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This value is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. This name is not case sensitive. -- **tag_sha** (`string`, required) The SHA hash identifier of the git tag to be verified. This should be a string. - -## GithubApi.CreateGitTree - -
- - -Create or modify a git tree in a GitHub repository. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The GitHub account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.GetGitTree - -
- - -Fetch a git tree by its SHA1 value from a GitHub repo. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This is case-insensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **tree_sha** (`string`, required) The SHA1 value of the tree to fetch. This identifier is necessary to specify which tree structure should be retrieved from the repository. -- **enable_recursive_retrieval** (`string`, optional) If set, returns objects/subtrees referenced by the provided tree SHA. Use values: '0', '1', 'true', 'false'. Omit to disable recursion. - -## GithubApi.ListRepositoryWebhooks - -
- - -Retrieve webhooks for a specified GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This value is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository, not case sensitive. -- **result_page_number** (`integer`, optional) The page number of webhooks results to fetch from the repository. -- **results_per_page** (`integer`, optional) Specify the number of webhooks to list per page, with a maximum of 100. - -## GithubApi.CreateGithubRepoWebhook - -
- - -Create a webhook for a GitHub repository. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the GitHub repository. It is case insensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.DeleteRepoWebhook - -
- - -Delete a webhook from a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This input is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This name is not case sensitive. Provide the GitHub username or organization name. -- **webhook_identifier** (`integer`, required) The unique integer identifier of the webhook to be deleted. - -## GithubApi.GetRepoWebhook - -
- - -Retrieve the webhook configuration for a specific repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This value is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **webhook_id** (`integer`, required) The unique identifier of the webhook to be retrieved. - -## GithubApi.UpdateGithubRepoWebhook - -
- - -Update a webhook for a GitHub repository. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository to update. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **webhook_unique_identifier** (`integer`, optional) The unique identifier of the webhook to be updated. It must be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.GetRepoWebhookConfig - -
- - -Get the webhook configuration for a GitHub repository. - -**Parameters** - -- **hook_identifier** (`integer`, required) The unique identifier for the webhook. This is required to retrieve the specific webhook configuration for a repository. -- **repository_name** (`string`, required) The name of the GitHub repository. Not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Provide a non-case sensitive username. - -## GithubApi.UpdateRepoWebhookConfig - -
- - -Update GitHub repository webhook configuration settings. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository. Not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **webhook_hook_id** (`integer`, optional) The unique identifier of the webhook to update in the repository. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListGithubWebhookDeliveries - -
- - -Fetch webhook delivery events for a specific GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository (case insensitive). -- **repository_owner** (`string`, required) The account owner of the repository. Not case sensitive. -- **webhook_hook_id** (`integer`, required) The unique identifier of the webhook. This is necessary to fetch the specific webhook deliveries for the repository. -- **include_redelivered_events** (`boolean`, optional) Include redelivered webhook events in the results if set to true. -- **pagination_start_cursor** (`string`, optional) The starting point for fetching the page of deliveries. Use the `link` header for next/previous page cursors. -- **results_per_page** (`integer`, optional) The maximum number of webhook delivery results to fetch per page, up to 100. - -## GithubApi.GetWebhookDelivery - -
- - -Retrieve a specific webhook delivery from a repository. - -**Parameters** - -- **hook_identifier** (`integer`, required) The unique identifier of the webhook within a repository. It is an integer value required to specify which webhook's delivery information to retrieve. -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository, not case sensitive. -- **webhook_delivery_id** (`integer`, required) The unique identifier of the specific webhook delivery to retrieve details for. This is an integer value. - -## GithubApi.RedeliverGithubWebhook - -
- - -Redelivers a webhook delivery for a GitHub repository. - -**Parameters** - -- **hook_unique_identifier** (`integer`, required) The unique identifier for the GitHub webhook hook. This ID is required to specify which webhook to redeliver. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The repository's account owner. The name is not case sensitive. -- **webhook_delivery_id** (`integer`, required) The unique identifier for the webhook delivery attempt to be redelivered. - -## GithubApi.SendPingEventToWebhook - -
- - -Triggers a ping event to a GitHub webhook. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. Case insensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. This name is not case-sensitive. -- **webhook_identifier** (`integer`, required) The unique identifier of the GitHub webhook to send the ping event to. Must be an integer. - -## GithubApi.TriggerGithubWebhookTest - -
- - -Trigger a GitHub webhook test with the latest push event. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This parameter is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive. -- **webhook_identifier** (`integer`, required) The unique identifier of the webhook to be tested. This integer value specifies which webhook to trigger in the repository. - -## GithubApi.GetGithubAppRepoInstallation - -
- - -Fetches GitHub App installation info for a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive and identifies the specific repository for which to retrieve GitHub App installation information. -- **repository_owner** (`string`, required) The account owner's name for the repository, not case sensitive. - -## GithubApi.ListRepoInvitations - -
- - -List open invitations for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It's not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. The name is not case sensitive. -- **results_page_number** (`integer`, optional) Specifies the page number to fetch results from, used for pagination. -- **results_per_page** (`integer`, optional) The number of invitations to display per page, with a maximum limit of 100. - -## GithubApi.DeleteRepoInvitation - -
- - -Delete a repository invitation on GitHub. - -**Parameters** - -- **invitation_id** (`integer`, required) The unique identifier for the repository invitation to be deleted. It must be an integer. -- **repository_name** (`string`, required) The name of the GitHub repository to delete the invitation from. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This value is not case sensitive. - -## GithubApi.UpdateRepoInvitation - -
- - -Update a repository invitation on GitHub. - -**Parameters** - -- **invitation_id** (`integer`, required) The unique identifier of the invitation to be updated. It must be an integer. -- **repository_name** (`string`, required) The name of the repository to update the invitation for. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username of the account owner of the repository. It's not case sensitive. -- **user_permissions** (`string`, optional) Specify the permission level for the user on the repository. Valid values are `read`, `write`, `maintain`, `triage`, and `admin`. - -## GithubApi.ListGithubIssuesForRepo - -
- - -Retrieve open issues from a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository to fetch issues from. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **assignee_filter** (`string`, optional) Filter issues by assignee. Use a username, `none` for unassigned, or `*` for any assignee. -- **issue_creator** (`string`, optional) The GitHub username of the person who created the issue. -- **issue_labels** (`string`, optional) Comma separated list of label names to filter issues, e.g., 'bug,ui,@high'. -- **issue_state** (`string`, optional) Indicates the state of issues to retrieve: 'open', 'closed', or 'all'. -- **mentioned_user** (`string`, optional) A GitHub username to filter issues where this user is mentioned. -- **milestone_identifier** (`string`, optional) Filter issues by milestone. Use an integer for a specific milestone, "\*" for any milestone, or "none" for no milestones. -- **results_page_number** (`integer`, optional) Specifies which page of results to fetch. Use an integer value to navigate through paginated results. -- **results_per_page** (`integer`, optional) Number of results per page, up to a maximum of 100. -- **sort_direction** (`string`, optional) The direction to sort the results by. Use 'asc' for ascending and 'desc' for descending. -- **sort_issues_by** (`string`, optional) Specify sorting criteria for issues: 'created', 'updated', or 'comments'. -- **updated_since_timestamp** (`string`, optional) Only show issues or pull requests updated after this timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. - -## GithubApi.CreateGithubIssue - -
- - -Create a new issue in a GitHub repository. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the GitHub repository. Provide the username or organization name, case insensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository. Case insensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListIssueComments - -
- - -Fetch comments for all issues in a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository, not case sensitive. -- **results_page_number** (`integer`, optional) The page number of results to fetch for issue comments in a repository. -- **results_per_page** (`integer`, optional) Specify the number of results to display per page, up to a maximum of 100. -- **sort_direction** (`string`, optional) Sets the sorting order, `asc` for ascending or `desc` for descending, used with `sort`. -- **sort_property** (`string`, optional) The property to sort the issue comments by. Use 'created' for when the repo was starred or 'updated' for last push. -- **updated_after_timestamp** (`string`, optional) Filter comments updated after this timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. - -## GithubApi.DeleteGithubIssueComment - -
- - -Delete a specific comment from a GitHub issue. - -**Parameters** - -- **issue_comment_id** (`integer`, required) The unique identifier of the comment to be deleted. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive. Provide the username or organization name. - -## GithubApi.GetGithubIssueComment - -
- - -Retrieve a comment from a GitHub issue. - -**Parameters** - -- **comment_identifier** (`integer`, required) The unique integer identifier for the GitHub issue comment. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive and is required to identify the repository within an account. -- **repository_owner** (`string`, required) The account owner of the repository on GitHub. This is not case sensitive. - -## GithubApi.UpdateGithubIssueComment - -
- - -Update a comment on a GitHub issue. - -**Parameters** - -- **comment_contents** (`string`, required) The new text for the GitHub issue comment. This will replace the current contents of the comment. -- **comment_identifier** (`integer`, required) The unique numerical identifier of the GitHub issue comment to update. -- **repository_name** (`string`, required) The name of the repository. It is case-insensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. The name is not case sensitive. - -## GithubApi.ListIssueCommentReactions - -
- - -Retrieve reactions for a GitHub issue comment. - -**Parameters** - -- **comment_id** (`integer`, required) The unique identifier for the specific issue comment whose reactions are to be listed. -- **repository_name** (`string`, required) The name of the repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This value is not case sensitive. -- **reaction_type** (`string`, optional) Specify a single reaction type to filter results. Use values like '+1', '-1', 'laugh', etc. Omit to list all reactions. -- **results_page_number** (`integer`, optional) Page number of results to fetch from the reactions list. -- **results_per_page** (`integer`, optional) The number of reactions to retrieve per page, with a maximum of 100. - -## GithubApi.AddReactionToGithubComment - -
- - -Add a reaction to a GitHub issue comment. - -**Parameters** - -- **comment_unique_identifier** (`integer`, required) The unique identifier for the GitHub comment to which a reaction is being added. -- **reaction_type** (`string`, required) The type of reaction to add to the issue comment. Valid options: '+1', '-1', 'laugh', 'confused', 'heart', 'hooray', 'rocket', 'eyes'. -- **repository_name** (`string`, required) The name of the GitHub repository. This name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.DeleteGithubIssueCommentReaction - -
- - -Deletes a reaction from a GitHub issue comment. - -**Parameters** - -- **issue_comment_id** (`integer`, required) The unique identifier of the issue comment from which the reaction will be deleted. -- **reaction_identifier** (`integer`, required) The unique identifier of the reaction to be deleted from the issue comment. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.ListGithubRepoIssueEvents - -
- - -Retrieve events for issues in a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) Specify the account owner of the GitHub repository. The name is not case sensitive. -- **results_page_number** (`integer`, optional) Specifies the page number of the issue events results to fetch from the repository. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. - -## GithubApi.FetchGithubIssueEvent - -
- - -Retrieve details of a specific GitHub issue event. - -**Parameters** - -- **event_id** (`integer`, required) The unique identifier for the GitHub issue event to retrieve details for. It must be an integer. -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. Provide the GitHub username or organization name. - -## GithubApi.GetGithubIssueDetails - -
- - -Fetch details of a specific issue or pull request on GitHub. - -**Parameters** - -- **issue_identifier** (`integer`, required) The unique number that identifies the issue or pull request on GitHub. -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username of the repository owner. It is not case sensitive. - -## GithubApi.UpdateGithubIssue - -
- - -Update details of a GitHub issue. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the GitHub repository, case insensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository to update the issue in. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **issue_identifier** (`integer`, optional) The unique number identifying the GitHub issue to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.RemoveIssueAssignees - -
- - -Remove assignees from a GitHub issue. - -**Parameters** - -- **issue_number** (`integer`, required) The unique number identifying the GitHub issue to modify. -- **repository_name** (`string`, required) The name of the repository. This is case-insensitive and used to identify the specific repository affected. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. This value is not case sensitive. -- **assignees_to_remove** (`array[string]`, optional) List of usernames to remove as assignees from the issue. Only users with push access will see changes. - -## GithubApi.AssignGithubIssue - -
- - -Assign users to a GitHub issue. - -**Parameters** - -- **issue_number** (`integer`, required) The number that identifies the GitHub issue to which assignees will be added. -- **repository_name** (`string`, required) The name of the repository. This field is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **assignee_usernames** (`array[string]`, optional) Usernames of people to assign to the issue. Only users with push access can be assigned. - -## GithubApi.CheckUserAssignPermission - -
- - -Check if a user can be assigned to a GitHub issue. - -**Parameters** - -- **assignee_username** (`string`, required) The GitHub username of the person to check for assignment permission. -- **issue_identifier** (`integer`, required) The number that identifies the specific issue in the repository. -- **repository_name** (`string`, required) The name of the repository, not case sensitive, where the issue is located. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.ListGithubIssueComments - -
- - -Retrieve comments for a specific GitHub issue. - -**Parameters** - -- **issue_number** (`integer`, required) The unique number identifying the GitHub issue to retrieve comments for. -- **repository_name** (`string`, required) The name of the GitHub repository (case insensitive). -- **repository_owner** (`string`, required) The account owner of the repository. Provide the username as a case-insensitive string. -- **page_number** (`integer`, optional) Specify the page number of results to fetch when listing comments for pagination purposes. -- **results_per_page** (`integer`, optional) The number of comments to retrieve per page, maximum 100. -- **since_timestamp** (`string`, optional) Show notifications updated after this time in ISO 8601 format (`YYYY-MM-DDTHH:MM:SSZ`). - -## GithubApi.GithubCreateIssueComment - -
- - -Create a comment on a GitHub issue. - -**Parameters** - -- **comment_content** (`string`, required) The text content of the comment to be added to the issue. -- **issue_identifier** (`integer`, required) The unique number identifying the GitHub issue. -- **repository_name** (`string`, required) The name of the repository where the issue is located. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Not case sensitive. - -## GithubApi.ListGithubIssueEvents - -
- - -Retrieve events for a specific GitHub issue. - -**Parameters** - -- **issue_number** (`integer`, required) The number that identifies the issue within the repository. This is required to fetch the related events. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. This input is case insensitive. -- **results_page_number** (`integer`, optional) The page number to fetch results from when listing issue events. -- **results_per_page** (`integer`, optional) The number of issue events to return per page, with a maximum of 100. - -## GithubApi.RemoveAllLabelsFromGithubIssue - -
- - -Remove all labels from a GitHub issue. - -**Parameters** - -- **github_issue_number** (`integer`, required) The identifier number for the GitHub issue from which all labels should be removed. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive and must be provided as a string. -- **repository_owner** (`string`, required) The GitHub account owner of the repository, case-insensitive. - -## GithubApi.ListLabelsOnGithubIssue - -
- - -Retrieve all labels associated with a GitHub issue. - -**Parameters** - -- **issue_number** (`integer`, required) The unique identifier for the GitHub issue you wish to retrieve labels for. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive and identifies where the issue is located. -- **repository_owner** (`string`, required) The account owner of the repository. Provide a non-case-sensitive string. -- **results_page_number** (`integer`, optional) The page number of results to fetch from the GitHub API for an issue's labels. -- **results_per_page** (`integer`, optional) Number of labels to retrieve per page, maximum is 100. - -## GithubApi.AddLabelsToGithubIssue - -
- - -Add labels to a GitHub issue to categorize it. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The GitHub account owner of the repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository where the issue exists. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **issue_number** (`integer`, optional) The numeric identifier of the issue to which labels will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.SetGithubIssueLabels - -
- - -Set new labels for a GitHub issue. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The GitHub username or organization name of the repository owner. Not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository. This is not case sensitive and identifies the repository within which the issue resides. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **issue_number** (`integer`, optional) The unique identifier number for the GitHub issue to update labels. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.RemoveIssueLabel - -
- - -Remove a specified label from a GitHub issue. - -**Parameters** - -- **issue_number** (`integer`, required) The unique number identifying the issue in the repository. -- **label_name** (`string`, required) Specifies the label to be removed from the GitHub issue. The label name is case-sensitive. -- **repository_name** (`string`, required) The name of the repository where the issue resides. It is case-insensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This value is not case sensitive. - -## GithubApi.UnlockGithubIssue - -
- - -Unlock a locked GitHub issue conversation. - -**Parameters** - -- **issue_id** (`integer`, required) The unique identifier for the GitHub issue to be unlocked. -- **repository_name** (`string`, required) The name of the GitHub repository. Not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.LockGithubIssue - -
- - -Lock a GitHub issue or pull request conversation. - -**Parameters** - -- **issue_number** (`integer`, required) The number that identifies the GitHub issue to lock. -- **repository_name** (`string`, required) The name of the repository in which the issue or pull request exists. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This name is not case sensitive. -- **issue_lock_reason** (`string`, optional) The reason for locking the conversation. Acceptable values: 'off-topic', 'too heated', 'resolved', 'spam'. - -## GithubApi.ListIssueReactions - -
- - -Retrieve reactions from a GitHub issue. - -**Parameters** - -- **issue_number** (`integer`, required) The number that identifies the issue in the GitHub repository. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **reaction_type_to_filter** (`string`, optional) Filter reactions by a specific type (e.g., '+1', 'heart'). Omit to list all reactions. -- **results_page_number** (`integer`, optional) Specify the page number of results to fetch. Useful for pagination through large result sets. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. - -## GithubApi.AddReactionToGithubIssue - -
- - -Add a reaction to a GitHub issue. - -**Parameters** - -- **github_issue_number** (`integer`, required) The number that uniquely identifies the issue on GitHub. -- **reaction_type_to_add** (`string`, required) The reaction type to add to the issue. Options include '+1', '-1', 'laugh', 'confused', 'heart', 'hooray', 'rocket', 'eyes'. -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. The name is not case sensitive. - -## GithubApi.DeleteGithubIssueReaction - -
- - -Deletes a reaction from a GitHub issue. - -**Parameters** - -- **issue_number** (`integer`, required) The number identifying the issue in the repository. -- **reaction_identifier** (`integer`, required) The unique identifier of the reaction to be deleted from a GitHub issue. -- **repository_name** (`string`, required) The name of the GitHub repository. This value is not case sensitive. It identifies which repository the issue belongs to. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.GetIssueTimelineEvents - -
- - -Retrieve timeline events for a GitHub issue. - -**Parameters** - -- **issue_identifier** (`integer`, required) The unique number identifying the GitHub issue. -- **repository_name** (`string`, required) The name of the repository in GitHub. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository, not case sensitive. -- **results_page_number** (`integer`, optional) Page number of results to fetch, used for pagination. -- **results_per_page** (`integer`, optional) Specify the number of timeline events to retrieve per page, with a maximum of 100. - -## GithubApi.ListGithubDeployKeys - -
- - -Retrieve deploy keys for a specific GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive and identifies which repository's deploy keys are listed. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **result_page_number** (`integer`, optional) Specify the page number of the deploy keys results to fetch. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. - -## GithubApi.CreateGithubDeployKey - -
- - -Create a read-only deploy key for a GitHub repository. - -**Parameters** - -- **deploy_key_contents** (`string`, required) The public key contents to be added as a deploy key. -- **repository_name** (`string`, required) The case-insensitive name of the GitHub repository. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. Name is not case sensitive. -- **key_title** (`string`, optional) A name for the deploy key for identification purposes. -- **read_only_access** (`boolean`, optional) Set to `true` for read-only access. `False` allows both read and write access. - -## GithubApi.DeleteGithubDeployKey - -
- - -Delete a deploy key from a GitHub repository. - -**Parameters** - -- **deploy_key_id** (`integer`, required) The unique identifier for the deploy key to be deleted from the repository. -- **repository_name** (`string`, required) The name of the GitHub repository. This value is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. Not case sensitive. - -## GithubApi.GetGithubDeployKey - -
- - -Retrieve a deploy key from a GitHub repository. - -**Parameters** - -- **deploy_key_id** (`integer`, required) The unique identifier of the deploy key to retrieve from the repository. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.ListRepositoryLabels - -
- - -Retrieve labels for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository, not case-sensitive. -- **repository_owner** (`string`, required) The GitHub username of the repository owner. It is not case sensitive. -- **result_page_number** (`integer`, optional) The specific page number of results to fetch. Use this to navigate through paginated results. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. - -## GithubApi.CreateGithubLabel - -
- - -Creates a label in a specified GitHub repository. - -**Parameters** - -- **label_name** (`string`, required) The name of the label, supporting emojis using either native emoji or colon-style markup. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. Case insensitive. -- **label_color_hex** (`string`, optional) The hexadecimal color code for the label, without the leading '#'. -- **label_description** (`string`, optional) A short description of the label, with a maximum of 100 characters. - -## GithubApi.DeleteGithubLabel - -
- - -Delete a label from a GitHub repository. - -**Parameters** - -- **label_name** (`string`, required) The name of the label to delete from the repository. It should match the label exactly. -- **repository_name** (`string`, required) The name of the GitHub repository from which to delete the label. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Not case sensitive. - -## GithubApi.GetGithubLabel - -
- - -Retrieve details of a GitHub repository label. - -**Parameters** - -- **label_name** (`string`, required) The specific name of the label to retrieve from the GitHub repository. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. Not case sensitive. - -## GithubApi.UpdateGithubLabel - -
- - -Update a label on a GitHub repository. - -**Parameters** - -- **current_label_name** (`string`, required) The current name of the label to be updated. It should match exactly the label's existing name. -- **repository_name** (`string`, required) The name of the repository to update the label in. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **label_color_hex_code** (`string`, optional) The hexadecimal color code for the label, excluding the leading `#`. -- **label_description** (`string`, optional) A short description of the label, limited to 100 characters or fewer. -- **new_label_name** (`string`, optional) The updated label name for the GitHub label. Emojis can be embedded using native or colon-style markup (e.g., :strawberry:). For available emojis, refer to the Emoji cheat sheet. - -## GithubApi.ListRepoLanguages - -
- - -List programming languages used in a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. Case insensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. Case insensitive. - -## GithubApi.DisableLfsForGithubRepo - -
- - -Disable Git LFS for a specified GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository to disable LFS for. This value is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. This is not case sensitive. - -## GithubApi.EnableGitLfs - -
- - -Enables Git LFS for a specified repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.GetRepoLicense - -
- - -Fetch the license file of a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.SyncForkWithUpstream - -
- - -Sync a forked repository's branch with the upstream repo. - -**Parameters** - -- **branch_name_to_sync** (`string`, required) The name of the branch in the forked repository to update with upstream changes. -- **repository_name** (`string`, required) The name of the repository to update. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Not case sensitive. - -## GithubApi.MergeGithubBranch - -
- - -Merge a branch into a GitHub repository. - -**Parameters** - -- **base_branch_name** (`string`, required) The name of the base branch that the head will be merged into. This is the branch you want to merge changes into. -- **head_branch_or_commit_sha** (`string`, required) The branch name or commit SHA1 to be merged into the base branch. -- **repository_name** (`string`, required) The name of the GitHub repository, not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **merge_commit_message** (`string`, optional) Custom commit message for the merge. Defaults to a standard message if not provided. - -## GithubApi.ListGithubMilestones - -
- - -Retrieve milestones from a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. The name is not case sensitive. -- **milestone_state** (`string`, optional) Denotes the state of milestones to fetch: 'open', 'closed', or 'all'. -- **results_page_number** (`integer`, optional) The page number of milestones results to fetch. -- **results_per_page** (`integer`, optional) The number of results to display per page (maximum 100). -- **sort_direction** (`string`, optional) The direction for sorting milestones: 'asc' for ascending or 'desc' for descending order. -- **sort_milestones** (`string`, optional) Criteria to sort milestones by. Options include `due_on` for due date or `completeness` for progress. - -## GithubApi.CreateGithubMilestone - -
- - -Create a milestone in a GitHub repository. - -**Parameters** - -- **milestone_title** (`string`, required) The title of the milestone to be created in the GitHub repository. -- **repository_name** (`string`, required) The name of the repository, not case sensitive. -- **repository_owner** (`string`, required) The GitHub username or organization name that owns the repository. Not case sensitive. -- **milestone_description** (`string`, optional) A text description of the milestone to be created in the GitHub repository. -- **milestone_due_date** (`string`, optional) The due date for the milestone in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. -- **milestone_state** (`string`, optional) State of the milestone, either 'open' or 'closed'. - -## GithubApi.DeleteGithubMilestone - -
- - -Delete a milestone from a GitHub repository. - -**Parameters** - -- **milestone_identifier** (`integer`, required) The unique number that identifies the milestone to be deleted. -- **repository_name** (`string`, required) The repository name on GitHub, not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. This should match the GitHub username or organization name. It is not case sensitive. - -## GithubApi.GetGithubMilestone - -
- - -Retrieve details of a GitHub milestone for a repository. - -**Parameters** - -- **milestone_id** (`integer`, required) The unique number identifying the milestone to retrieve details from a GitHub repository. -- **repository_name** (`string`, required) The name of the repository for which the milestone information is needed. This name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.UpdateGithubMilestone - -
- - -Update a GitHub repository milestone. - -**Parameters** - -- **milestone_id** (`integer`, required) The unique number identifying the milestone to update. -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **milestone_description** (`string`, optional) A brief description of the milestone to be updated. -- **milestone_due_date** (`string`, optional) The due date for the milestone in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. -- **milestone_state** (`string`, optional) The state of the milestone. Accepted values are 'open' or 'closed'. -- **milestone_title** (`string`, optional) The title of the milestone to be updated in the GitHub repository. - -## GithubApi.ListLabelsForMilestone - -
- - -Retrieve labels for issues in a specific milestone on GitHub. - -**Parameters** - -- **milestone_number** (`integer`, required) The number that uniquely identifies the milestone in the repository. -- **repository_name** (`string`, required) The name of the repository for which to list milestone labels. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **results_page_number** (`integer`, optional) Specify the page number of results to fetch for listing milestone labels. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum limit of 100. - -## GithubApi.GetRepoNotifications - -
- - -Retrieve notifications for the user in a specific repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository, not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **include_read_notifications** (`boolean`, optional) If `true`, include notifications that have been marked as read. -- **results_page_number** (`integer`, optional) Specify the page number of the results to fetch. Useful for paginating through notifications. -- **results_per_page** (`integer`, optional) Number of notifications to display per page, with a maximum of 100. -- **show_only_participation_notifications** (`boolean`, optional) If `true`, only show notifications where the user is directly participating or mentioned. -- **updated_after_timestamp** (`string`, optional) Show notifications updated after this timestamp. Use ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. -- **updated_before** (`string`, optional) Display notifications updated before this time in ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ). - -## GithubApi.MarkRepoNotificationsAsRead - -
- - -Mark all repository notifications as read for the user. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **last_checked_timestamp** (`string`, optional) Timestamp for last notification check in ISO 8601 format. Omitting marks all as read. Defaults to current time if omitted. - -## GithubApi.DeleteGithubPagesSite - -
- - -Delete a GitHub Pages site from a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository from which to delete the GitHub Pages site. This name is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. Case insensitive. - -## GithubApi.GetGithubPagesSite - -
- - -Retrieve details of a GitHub Pages site for a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. Not case sensitive. - -## GithubApi.ConfigureGithubPagesSite - -
- - -Configures a GitHub Pages site for a repository. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. This is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository to configure. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.UpdateGithubPagesInfo - -
- - -Update information for a GitHub Pages site. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListGithubPagesBuilds - -
- - -Retrieve GitHub Pages build statuses for a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository to fetch the Pages build statuses for. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository, case-insensitive. -- **results_page_number** (`integer`, optional) The page number of the results to fetch. Use this to navigate through paginated results. -- **results_per_page** (`integer`, optional) The number of results per page, with a maximum of 100 allowed. - -## GithubApi.RequestGithubPagesBuild - -
- - -Request a build for your GitHub Pages site. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. Case-insensitive. -- **repository_owner_name** (`string`, required) The GitHub account owner of the repository. Case insensitive. - -## GithubApi.GetLatestGithubPagesBuild - -
- - -Retrieve the latest GitHub Pages build information. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Enter the name without considering case sensitivity. - -## GithubApi.GetGithubPagesBuild - -
- - -Retrieve details of a GitHub Pages build for a repository. - -**Parameters** - -- **build_identifier** (`integer`, required) The unique identifier for the GitHub Pages build. -- **repository_name** (`string`, required) The name of the repository. This field is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive. - -## GithubApi.CreateGithubPagesDeployment - -
- - -Create a GitHub Pages deployment for a repository. - -**Parameters** - -- **artifact_url** (`string`, required) URL of the artifact (.zip or .tar) with static assets for deployment. Must belong to the repository. -- **oidc_token_for_deployment** (`string`, required) The OIDC token from GitHub Actions used to certify the deployment origin. -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive. -- **build_version_identifier** (`string`, optional) A unique string representing the version of the deployment build. -- **target_environment_for_deployment** (`string`, optional) Specify the target environment for the GitHub Pages deployment (e.g., 'production', 'staging'). - -## GithubApi.ListRepoPreReceiveHooks - -
- - -List pre-receive hooks for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository, not case sensitive. -- **result_page_number** (`integer`, optional) The number of the results page to fetch, starting from 1. -- **results_per_page** (`integer`, optional) The number of results to display per page, maximum 100. -- **sort_direction** (`string`, optional) Specify 'asc' for ascending or 'desc' for descending sorting of results. -- **sort_hooks_by** (`string`, optional) Specifies the attribute to sort the pre-receive hooks by. Possible values are 'created', 'updated', or 'name'. - -## GithubApi.RemoveRepoHookEnforcement - -
- - -Remove overridden pre-receive hook enforcement for a repository. - -**Parameters** - -- **pre_receive_hook_identifier** (`integer`, required) The unique identifier of the pre-receive hook for the repository. -- **repository_name** (`string`, required) The case-insensitive name of the repository from which to remove the hook enforcement. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.GetPreReceiveHookForRepo - -
- - -Retrieve a pre-receive hook for a specific repository. - -**Parameters** - -- **pre_receive_hook_id** (`integer`, required) The unique identifier of the pre-receive hook for the repository. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.UpdateHookEnforcementForRepo - -
- - -Update pre-receive hook enforcement for a GitHub repository. - -**Parameters** - -- **pre_receive_hook_id** (`integer`, required) The unique identifier of the pre-receive hook to update enforcement settings for. -- **repository_name** (`string`, required) The name of the repository. This is case insensitive and identifies which repository's hook enforcement settings to update. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. This name is not case sensitive. -- **hook_enforcement_state** (`string`, optional) The desired state of enforcement for the hook on this repository. Options: 'enabled', 'disabled', 'testing'. - -## GithubApi.ListRepositoryProjects - -
- - -Retrieve projects from a specific GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. This value is not case sensitive. -- **project_state** (`string`, optional) Specify which state of projects to return: 'open', 'closed', or 'all'. -- **results_page_number** (`integer`, optional) Specifies which page of the results to fetch. Useful for paginated responses. -- **results_per_page** (`integer`, optional) The number of results to return per page. Maximum is 100. - -## GithubApi.CreateGithubProjectBoard - -
- - -Create a project board for a GitHub repository. - -**Parameters** - -- **project_name** (`string`, required) The name of the project board to be created in the repository. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case-sensitive. -- **repository_owner** (`string`, required) The username of the account that owns the repository. This is not case sensitive. -- **project_description** (`string`, optional) Provide a descriptive text for the project board to help clarify its purpose and content. - -## GithubApi.ListPullRequests - -
- - -Retrieve pull requests from a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository from which to retrieve pull requests. This name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **base_branch_name** (`string`, optional) Specify the base branch name to filter pull requests. Example: 'gh-pages'. -- **filter_by_head** (`string`, optional) Filter pull requests by head user/organization and branch in `user:ref-name` format. -- **filter_by_state** (`string`, optional) Filter pull requests by state: `open`, `closed`, or `all`. -- **page_number** (`integer`, optional) Page number of the results to fetch from the list of pull requests. -- **results_per_page** (`integer`, optional) The number of pull requests to retrieve per page, with a maximum of 100 results allowed. -- **sort_direction** (`string`, optional) The direction of the sorting for pull requests. Use 'asc' for ascending or 'desc' for descending order. Defaults to 'desc' when 'sort' is 'created' or not specified. -- **sort_pull_request_results_by** (`string`, optional) Specify the criterion for sorting pull request results. Options are 'created', 'updated', 'popularity', or 'long-running'. - -## GithubApi.CreateGithubPullRequest - -
- - -Create a draft pull request on GitHub repositories. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository for the pull request. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. Case-insensitive. -- **source_branch** (`string`, required) The name of the branch where your changes are implemented. Use `username:branch` format for cross-repository cases. -- **target_branch** (`string`, required) The branch name where changes are to be merged. Must be an existing branch in the current repository. -- **is_draft** (`boolean`, optional) Set to true to create the pull request as a draft. See GitHub documentation for more on draft pull requests. -- **issue_number_for_conversion** (`integer`, optional) Specify the issue number in the repository to convert into a pull request. Required unless a title is provided. -- **maintainers_can_modify** (`boolean`, optional) Indicates if maintainers can modify the pull request. Set to true to allow modifications. -- **pull_request_content** (`string`, optional) The descriptive content or message for the pull request. -- **pull_request_title** (`string`, optional) The title of the new pull request. This is required unless an `issue` is specified. -- **source_repository_name** (`string`, optional) Name of the repository where changes in the pull request were made. Required for cross-repository pull requests within the same organization. - -## GithubApi.ListReviewCommentsForRepo - -
- - -Retrieve review comments for all pull requests in a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository to fetch review comments from. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. Specify the username or organization name. -- **page_number** (`integer`, optional) Specify the page number of the results to retrieve from the API. Used for pagination. -- **results_per_page** (`integer`, optional) The number of review comments to retrieve per page, with a maximum limit of 100. -- **sort_direction** (`string`, optional) Specifies the order to sort the review comments. Options are 'asc' for ascending and 'desc' for descending. Note: This is ignored if no 'sort' parameter is set. -- **sort_reviews** (`string`, optional) Determines the order of review comments based on 'created', 'updated', or 'created_at'. -- **updated_after** (`string`, optional) Timestamp to filter notifications updated after this time in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ. - -## GithubApi.DeleteGithubReviewComment - -
- - -Delete a review comment on a GitHub pull request. - -**Parameters** - -- **comment_id** (`integer`, required) The unique identifier for the review comment to delete. This must be an integer and corresponds to the specific comment you intend to remove from the GitHub pull request. -- **repository_name** (`string`, required) The name of the repository, case-insensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository, not case sensitive. - -## GithubApi.GetGithubReviewCommentDetails - -
- - -Get details for a specific GitHub review comment. - -**Parameters** - -- **comment_id** (`integer`, required) The unique identifier of the GitHub review comment you want to retrieve details for. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This value is not case sensitive. - -## GithubApi.EditGithubReviewComment - -
- - -Edit a review comment on a GitHub pull request. - -**Parameters** - -- **comment_identifier** (`integer`, required) The unique identifier for the GitHub review comment to be edited. -- **comment_text** (`string`, required) The content of the updated review comment. -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository, not case sensitive. - -## GithubApi.ListPullRequestCommentReactions - -
- - -Retrieve reactions for a pull request review comment. - -**Parameters** - -- **comment_unique_identifier** (`integer`, required) The unique identifier for the pull request review comment. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **filter_reaction_type** (`string`, optional) Specify a single reaction type to filter results. Leave blank to return all reactions. -- **results_page_number** (`integer`, optional) Specify the page number of results to fetch for reactions to a pull request review comment. -- **results_per_page** (`integer`, optional) Specify the number of reactions to return per page, up to a maximum of 100. - -## GithubApi.AddReactionToPrComment - -
- - -Adds a reaction to a pull request review comment on GitHub. - -**Parameters** - -- **comment_unique_id** (`integer`, required) The unique identifier of the pull request review comment. -- **reaction_type_for_pr_comment** (`string`, required) Specifies the type of reaction to add to the pull request review comment. Valid options are '+1', '-1', 'laugh', 'confused', 'heart', 'hooray', 'rocket', 'eyes'. -- **repository_name** (`string`, required) The name of the repository where the comment is located. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.DeletePullRequestCommentReaction - -
- - -Delete a reaction from a pull request comment. - -**Parameters** - -- **comment_unique_id** (`integer`, required) The unique identifier of the pull request comment to delete a reaction from. -- **reaction_unique_identifier** (`integer`, required) The unique identifier for the reaction to delete from the pull request comment. -- **repository_name** (`string`, required) The name of the GitHub repository. It is case insensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive. - -## GithubApi.GetPullRequestDetails - -
- - -Retrieve details of a specific GitHub pull request. - -**Parameters** - -- **pull_request_number** (`integer`, required) The unique number identifying the pull request to retrieve details for. -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) Specifies the account owner of the repository. The name is not case sensitive. - -## GithubApi.UpdatePullRequest - -
- - -Update an existing pull request on GitHub. - -**Parameters** - -- **pull_request_number** (`integer`, required) The unique number identifying the pull request. -- **repository_name** (`string`, required) The name of the repository to update the pull request in. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This name is not case sensitive. -- **maintainers_can_modify** (`boolean`, optional) Boolean value indicating whether maintainers can modify the pull request. -- **pull_request_body** (`string`, optional) Provide the updated content or description for the pull request. -- **pull_request_state** (`string`, optional) Specifies whether the pull request should be 'open' or 'closed'. -- **pull_request_title** (`string`, optional) The new title for the pull request. Use this to update the PR title. -- **target_base_branch** (`string`, optional) The name of the branch where changes should be pulled into. Must be an existing branch on the current repository. - -## GithubApi.ListPullRequestReviewComments - -
- - -Retrieve all review comments for a pull request. - -**Parameters** - -- **pull_request_number** (`integer`, required) The unique number identifying the pull request within the repository. -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **notifications_since_timestamp** (`string`, optional) Filter review comments updated after this timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. -- **page_number_to_fetch** (`integer`, optional) The specific results page number to retrieve. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page, with a maximum limit of 100. -- **sort_direction** (`string`, optional) Specifies the direction to sort results. Use 'asc' for ascending or 'desc' for descending. Ignored without the 'sort' parameter. -- **sort_results_by** (`string`, optional) Property to sort comments: 'created' or 'updated'. - -## GithubApi.CreatePullRequestReviewComment - -
- - -Create a review comment on a GitHub pull request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The GitHub username or organization name of the repository owner. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository where the pull request exists. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **pull_request_number** (`integer`, optional) The unique number that identifies the pull request within the repository. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.CreateReplyToReviewComment - -
- - -Create a reply to a top-level review comment on a pull request. - -**Parameters** - -- **pull_request_number** (`integer`, required) The number identifying the pull request to reply to. -- **repository_name** (`string`, required) The name of the repository. This name is not case sensitive and identifies the repository where the reply will be posted. -- **repository_owner** (`string`, required) The account owner of the repository. Not case sensitive. -- **review_comment_text** (`string`, required) The content of the reply to the top-level review comment. This should be a string containing the reply text. -- **review_comment_unique_id** (`integer`, required) The unique identifier for the top-level review comment you are replying to. Replies to replies are not supported. - -## GithubApi.ListPullRequestCommits - -
- - -Retrieve up to 250 commits for a specific pull request. - -**Parameters** - -- **pull_request_number** (`integer`, required) The unique number identifying the pull request within the repository. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive and should be given as a string. -- **repository_owner** (`string`, required) The account owner of the repository, not case sensitive. -- **results_page_number** (`integer`, optional) Specify the page number of commit results to fetch. Useful for paginating through commit lists. -- **results_per_page** (`integer`, optional) Specify the number of commit results to return per page, up to a maximum of 100. - -## GithubApi.ListGithubPullRequestFiles - -
- - -Retrieve files changed in a GitHub pull request. - -**Parameters** - -- **pull_request_number** (`integer`, required) The unique number identifying the pull request. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username of the repository owner. This is not case sensitive. -- **results_page_number** (`integer`, optional) The page number of the results to fetch, used for pagination. -- **results_per_page** (`integer`, optional) The number of files to return per page, with a maximum of 100. - -## GithubApi.CheckPrMergeStatus - -
- - -Check if a pull request has been merged. - -**Parameters** - -- **pull_request_number** (`integer`, required) The unique number identifying the specific pull request to check. -- **repository_name** (`string`, required) The name of the repository. Input is case insensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This value is not case sensitive. It specifies which user's or organization's repository contains the pull request. - -## GithubApi.MergeGithubPullRequest - -
- - -Merge a pull request on GitHub. - -**Parameters** - -- **pull_request_number** (`integer`, required) The unique number identifying the pull request to be merged. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **commit_title** (`string`, optional) Title for the automatic commit message after merging the pull request. -- **extra_commit_message** (`string`, optional) Extra detail to append to the automatic commit message for the pull request. -- **merge_method** (`string`, optional) Specifies the method to merge the pull request. Options include 'merge', 'squash', or 'rebase'. -- **pull_request_head_sha** (`string`, optional) SHA of the pull request head that must match for the merge to proceed. - -## GithubApi.RemovePullRequestReviewers - -
- - -Remove requested reviewers from a GitHub pull request. - -**Parameters** - -- **pull_request_number** (`integer`, required) The unique identifier number for the pull request you want to modify. -- **repository_name** (`string`, required) The name of the repository from which to remove reviewers. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is case-insensitive. -- **user_logins_to_remove** (`array[string]`, required) An array of user logins to be removed from the pull request as reviewers. -- **team_slugs_to_remove** (`array[string]`, optional) An array of team slugs that should be removed as reviewers from the pull request. Each slug corresponds to a team associated with the repository. - -## GithubApi.GetRequestedReviewersForPr - -
- - -Retrieve users or teams requested for a pull request review. - -**Parameters** - -- **pull_request_number** (`integer`, required) The unique identifier for the pull request in a GitHub repository. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.RequestGithubPullRequestReviewers - -
- - -Request reviewers for a GitHub pull request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository. It should be a case-insensitive string. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the GitHub repository. This input is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **pull_request_number** (`integer`, optional) The number identifying the GitHub pull request for which reviewers will be requested. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListGithubPullRequestReviews - -
- - -Retrieve reviews for a specific GitHub pull request. - -**Parameters** - -- **pull_request_number** (`integer`, required) The unique identifier for the specific pull request to retrieve reviews for. -- **repository_name** (`string`, required) The name of the GitHub repository, not case sensitive. -- **repository_owner** (`string`, required) The GitHub username or organization name of the repository owner. Not case sensitive. -- **results_page_number** (`integer`, optional) The page number of the pull request reviews to fetch. Used for pagination. -- **results_per_page** (`integer`, optional) The number of reviews per page (maximum 100). Specify an integer value. - -## GithubApi.CreateGithubPullRequestReview - -
- - -Create a review for a GitHub pull request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **repository_owner** (`string`, optional) The account owner of the repository (case-insensitive). Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **repository_name** (`string`, optional) The name of the repository where the pull request exists, not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **pull_request_number** (`integer`, optional) The number that uniquely identifies the pull request for which the review is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.DeleteGithubPullRequestPendingReview - -
- - -Delete a pending review for a GitHub pull request. - -**Parameters** - -- **pull_request_number** (`integer`, required) The number identifying the specific pull request to delete the pending review from. -- **repository_name** (`string`, required) The name of the GitHub repository. This is not case sensitive. -- **repository_owner_name** (`string`, required) The GitHub account owner of the repository. This is not case sensitive. -- **unique_review_identifier** (`integer`, required) The unique identifier of the pending GitHub review to be deleted. - -## GithubApi.GetGithubReview - -
- - -Retrieve details of a specific pull request review from GitHub. - -**Parameters** - -- **pull_request_number** (`integer`, required) The unique number identifying the pull request on GitHub. -- **repository_name** (`string`, required) The name of the GitHub repository. This field is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. It is not case sensitive. -- **review_id** (`integer`, required) The unique numeric identifier for the specific review of the pull request. - -## GithubApi.UpdatePullRequestReview - -
- - -Update the review summary comment on a pull request. - -**Parameters** - -- **pull_request_number** (`integer`, required) The unique number that identifies the pull request. -- **repository_name** (`string`, required) The name of the repository to update the review on. Case insensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository, case insensitive. -- **review_body_text** (`string`, required) The updated body text for the pull request review. -- **review_identifier** (`integer`, required) The unique integer ID of the review to be updated. - -## GithubApi.GetReviewComments - -
- - -Retrieve comments for a specific pull request review. - -**Parameters** - -- **pull_request_number** (`integer`, required) The number that identifies the pull request to fetch comments from. -- **repository_name** (`string`, required) The name of the GitHub repository. This name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. It is not case sensitive. -- **review_id** (`integer`, required) The unique identifier of the review for which comments are being fetched. -- **result_page_number** (`integer`, optional) Specify the page number of the results to fetch. Used to navigate paginated results. -- **results_per_page** (`integer`, optional) Specify the number of results per page, up to a maximum of 100. - -## GithubApi.DismissPullRequestReview - -
- - -Dismiss a pull request review on GitHub. - -**Parameters** - -- **dismissal_message** (`string`, required) The message explaining the reason for dismissing the pull request review. -- **pull_request_number** (`integer`, required) The unique number identifying the pull request to dismiss the review for. -- **repository_name** (`string`, required) The name of the GitHub repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The username of the repository owner. This is not case sensitive and refers to the account that owns the repository. -- **review_identifier** (`integer`, required) The unique identifier for the pull request review to be dismissed. -- **dismissal_event** (`string`, optional) This is a required event type for dismissing a pull request review. Use 'DISMISS' to perform the dismissal action. - -## GithubApi.SubmitPullRequestReview - -
- - -Submit a review for a pull request on GitHub. - -**Parameters** - -- **pull_request_number** (`integer`, required) The identifier number of the pull request to be reviewed. -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Input is case insensitive. -- **review_action** (`string`, required) Specify the review action: `APPROVE`, `REQUEST_CHANGES`, or `COMMENT`. Leaving this empty sets the review to `PENDING`. -- **review_identifier** (`integer`, required) The unique identifier for the pull request review to be submitted. -- **review_body_text** (`string`, optional) The body text of the pull request review. Provide detailed feedback or comments for the review. - -## GithubApi.UpdatePullRequestBranch - -
- - -Update a pull request branch with latest upstream changes. - -**Parameters** - -- **pull_request_number** (`integer`, required) The unique number that identifies the pull request to update. -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **expected_head_sha** (`string`, optional) The most recent commit SHA of the pull request's HEAD. Must match the pull request's current HEAD to avoid a 422 error. - -## GithubApi.GetRepositoryReadme - -
- - -Retrieve the preferred README for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This is case insensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **commit_branch_tag_name** (`string`, optional) Specify the commit, branch, or tag name. Defaults to the repository's default branch if not provided. - -## GithubApi.FetchRepoReadme - -
- - -Retrieve the README from a specific repository directory. - -**Parameters** - -- **readme_directory_path** (`string`, required) The path within the repository to search for the README file. Default is repository root if not specified. -- **repository_name** (`string`, required) The name of the repository. This input is case insensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. Case insensitive. -- **commit_branch_or_tag_name** (`string`, optional) The name of the commit, branch, or tag. Defaults to the repository's default branch (usually 'master'). - -## GithubApi.GetGithubReleases - -
- - -Retrieve a list of releases for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. Case insensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. The name is not case sensitive. -- **results_page_number** (`integer`, optional) The specific page number of releases to fetch from a repository. -- **results_per_page** (`integer`, optional) Specify the number of release results per page, with a maximum of 100. - -## GithubApi.CreateGithubRelease - -
- - -Creates a new release in a specified GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository on GitHub. This name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **tag_name_for_release** (`string`, required) The name of the tag for the release. This is used to label the GitHub release. -- **auto_generate_release_notes** (`boolean`, optional) Automatically generate the name and body for the release. If 'name' is provided, it is used; otherwise, a name is auto-generated. 'Body' is prepended to generated notes if specified. -- **commit_reference** (`string`, optional) The branch or commit SHA from which the Git tag is created. Defaults to the repo's default branch. -- **draft** (`boolean`, optional) Set to `true` for a draft (unpublished) release, or `false` for a published one. -- **mark_as_prerelease** (`boolean`, optional) Set to `true` for a prerelease, `false` for a full release. -- **release_body_text** (`string`, optional) Text describing the contents of the tag. This is the message or notes for the release, providing context or details about changes. -- **release_name** (`string`, optional) The name of the release. This identifies the release and can be a version or descriptive text. -- **set_latest_release** (`boolean`, optional) Set whether this release should be the latest. Use 'true', 'false', or 'legacy'. Drafts and prereleases cannot be set as latest. - -## GithubApi.DeleteReleaseAsset - -
- - -Deletes a specific release asset on GitHub. - -**Parameters** - -- **asset_identifier** (`integer`, required) The unique identifier for the GitHub release asset to be deleted. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.DownloadGithubReleaseAsset - -
- - -Download binary content of a GitHub release asset. - -**Parameters** - -- **asset_unique_identifier** (`integer`, required) The unique identifier of the asset to download from a GitHub release. Must be an integer. -- **repository_name** (`string`, required) The name of the GitHub repository, not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. It is not case sensitive. - -## GithubApi.EditGithubReleaseAsset - -
- - -Edit a GitHub release asset with push access. - -**Parameters** - -- **release_asset_identifier** (`integer`, required) The unique integer identifier of the release asset to update. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **alternate_asset_description** (`string`, optional) Provide an alternate short description of the release asset, used instead of the filename. -- **file_name_of_asset** (`string`, optional) The file name of the asset. This is used to uniquely identify the asset file for the release. -- **release_asset_state** (`string`, optional) Specifies the state of the release asset. Possible values might include 'uploaded', 'deleted', etc. (API documentation does not explicitly define options). - -## GithubApi.GenerateGithubReleaseNotes - -
- - -Generate release notes for a GitHub repository. - -**Parameters** - -- **release_tag_name** (`string`, required) Specify the tag name for the release. Can be an existing tag or a new one. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. This is not case sensitive. -- **previous_tag_name** (`string`, optional) The name of the previous tag to use as the starting point for the release notes. It specifies the range of changes for this release. -- **release_configuration_file_path** (`string`, optional) Path to the configuration file in the repository for generating release notes. Defaults to '.github/release.yml' or '.github/release.yaml' if not specified. -- **target_commit** (`string`, optional) The commitish value that will target the release's tag. Required if tag_name doesn't reference an existing tag. Otherwise, it's ignored. - -## GithubApi.GetLatestGithubRelease - -
- - -Retrieve the latest full release from a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository to retrieve the latest release from. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.GetGithubReleaseByTag - -
- - -Retrieve GitHub release details by tag. - -**Parameters** - -- **release_tag** (`string`, required) The specific tag of the release to retrieve. This is used to identify and fetch details of the published release. -- **repository_name** (`string`, required) Specify the name of the repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. Provide the GitHub username or organization name. - -## GithubApi.DeleteGithubRelease - -
- - -Delete a GitHub release with push access permissions. - -**Parameters** - -- **release_identifier** (`integer`, required) The unique identifier of the GitHub release to delete. This is an integer value. -- **repository_name** (`string`, required) The name of the repository. It's not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository, not case sensitive. - -## GithubApi.GetGithubReleaseDetails - -
- - -Retrieve details of a specific GitHub release. - -**Parameters** - -- **release_id** (`integer`, required) The unique identifier for the specific GitHub release being queried. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.UpdateGithubRelease - -
- - -Edit a GitHub release with push access. - -**Parameters** - -- **release_identifier** (`integer`, required) The unique integer identifier for the GitHub release to be updated. -- **repository_name** (`string`, required) The name of the repository. This field is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **commitish_value** (`string`, optional) Determines the source for the Git tag; can be a branch or commit SHA. Defaults to the repo's default branch if the tag exists. -- **is_draft** (`boolean`, optional) Set to `true` to make the release a draft, `false` to publish it. -- **mark_as_prerelease** (`boolean`, optional) Set `true` to mark the release as a prerelease, or `false` to identify as a full release. -- **release_description** (`string`, optional) Text describing the contents and details of the release tag. -- **release_name** (`string`, optional) The name of the release to be updated in the repository. This is a user-friendly name for the release. -- **release_tag_name** (`string`, optional) The name of the tag for the GitHub release. Used to identify the release version. -- **set_as_latest_release** (`boolean`, optional) Specifies if this release should be the latest. Use 'true', 'false', or 'legacy'. Drafts/prereleases aren't eligible. - -## GithubApi.ListGithubReleaseAssets - -
- - -Retrieve a list of assets for a GitHub release. - -**Parameters** - -- **release_identifier** (`integer`, required) The unique identifier for the GitHub release to fetch assets from. -- **repository_name** (`string`, required) The name of the GitHub repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. This is not case sensitive. -- **page_number** (`integer`, optional) The specific page number to fetch from the list of release assets. Useful for navigation in paginated results. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum value of 100. This controls pagination. - -## GithubApi.ListGithubReleaseReactions - -
- - -Retrieve reactions for a GitHub release. - -**Parameters** - -- **release_identifier** (`integer`, required) The unique integer identifier of the GitHub release. -- **repository_name** (`string`, required) The name of the GitHub repository. Case sensitivity is not required. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. This name is not case sensitive. -- **reaction_type_filter** (`string`, optional) Specify a reaction type to filter results. Options are '+1', 'laugh', 'heart', 'hooray', 'rocket', 'eyes'. Leave empty to get all reactions. -- **results_page_number** (`integer`, optional) Page number of the results to fetch for paginated reactions. -- **results_per_page** (`integer`, optional) The number of results to display per page, up to a maximum of 100. - -## GithubApi.AddGithubReleaseReaction - -
- - -Add a reaction to a GitHub release. - -**Parameters** - -- **reaction_type** (`string`, required) The reaction type for the release, e.g., '+1', 'laugh', 'heart'. Choose from '+1', 'laugh', 'heart', 'hooray', 'rocket', 'eyes'. -- **release_identifier** (`integer`, required) The unique identifier for the GitHub release to which the reaction will be added. -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository on GitHub. The name is not case sensitive. - -## GithubApi.DeleteReleaseReaction - -
- - -Delete a reaction from a GitHub release. - -**Parameters** - -- **reaction_identifier** (`integer`, required) The unique identifier for the reaction to be deleted from a release. -- **release_id** (`integer`, required) The unique identifier of the GitHub release. Use this to specify which release's reaction you wish to delete. -- **repository_name** (`string`, required) The name of the repository. This field is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. The name is not case sensitive. - -## GithubApi.ListRepoCacheStatus - -
- - -Lists the status of each repository cache replica. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. It is not case sensitive and should clearly identify the GitHub repository of interest. -- **repository_owner** (`string`, required) The GitHub username of the repository owner. This is not case sensitive. -- **result_page_number** (`integer`, optional) The page number of results to fetch, used for pagination. -- **results_per_page** (`integer`, optional) The number of results per page (maximum 100). - -## GithubApi.ListGithubRepoSecretAlerts - -
- - -Retrieve secret scanning alerts for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. The name is not case sensitive. -- **alerts_state_filter** (`string`, optional) Filter alerts by their state: `open` or `resolved`. Specify to list only alerts in a specific state. -- **cursor_before_event** (`string`, optional) Search for events only before this cursor. Leave empty to get the initial cursor. -- **events_after_cursor** (`string`, optional) A cursor for paginated results to fetch events occurring after this point. Use an empty value to receive the initial cursor. -- **filter_by_secret_type** (`string`, optional) Comma-separated list of secret types to return. By default, all secret types are included. -- **results_page_number** (`integer`, optional) Specifies the page number of the secret scanning alerts to retrieve. Use this to paginate results. -- **results_per_page** (`integer`, optional) Specifies the number of secret scanning alerts to return per page, with a maximum of 100 items. -- **secret_alert_resolutions_filter** (`string`, optional) Comma-separated resolutions to filter alerts. Valid values: `false_positive`, `wont_fix`, `revoked`, `pattern_edited`, `pattern_deleted`, `used_in_tests`. -- **sort_direction** (`string`, optional) Specifies the direction to sort the results ('asc' for ascending, 'desc' for descending). -- **sort_results_by_property** (`string`, optional) Specifies the property to sort alerts: use 'created' for creation date, or 'updated' for last update or resolution date. - -## GithubApi.GetGithubSecretScanningAlert - -
- - -Retrieve a specific secret scanning alert from a GitHub repository. - -**Parameters** - -- **alert_identifier** (`integer`, required) The unique integer number identifying a GitHub secret scanning alert. This is found at the URL's end for the alert or in the `number` field of the alert response. -- **repository_name** (`string`, required) The case-insensitive name of the repository from which to retrieve the secret scanning alert. -- **repository_owner** (`string`, required) The username of the account owner for the repository. Case insensitive. - -## GithubApi.UpdateSecretScanningAlertStatus - -
- - -Update the status of a secret scanning alert on GitHub. - -**Parameters** - -- **alert_identifier** (`integer`, required) The unique number identifying the secret scanning alert. Found in the alert URL or the response of `GET /repos/{owner}/{repo}/code-scanning/alerts`. -- **alert_state** (`string`, required) Set the state of the secret scanning alert to 'open' or 'resolved'. 'Resolution' is required if set to 'resolved'. -- **repository_name** (`string`, required) The name of the repository. Not case sensitive. -- **repository_owner** (`string`, required) The GitHub username or organization name that owns the repository. It is not case sensitive. -- **alert_resolution_comment** (`string`, optional) An optional comment when closing an alert. Set to `null` if changing the alert state to `open`. Cannot be updated or deleted. -- **resolution_reason_for_secret_scanning_alert** (`string`, optional) Specifies the reason for resolving the alert when the state is set to 'resolved'. Possible values: 'None', 'false_positive', 'wont_fix', 'revoked', 'used_in_tests'. - -## GithubApi.ListSecretScanningAlertLocations - -
- - -Retrieve locations for a secret scanning alert in a repository. - -**Parameters** - -- **alert_number** (`integer`, required) The unique identifier number for a secret scanning alert. This can be found at the end of the URL for a code scanning alert on GitHub, or in the `number` field of the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` API call. -- **repository_name** (`string`, required) The name of the repository, case insensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. It is not case sensitive. -- **results_page_number** (`integer`, optional) The page number of the results to fetch for the secret scanning alert locations. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page (maximum 100). - -## GithubApi.ListRepoStargazers - -
- - -Retrieve users who starred a specific GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is case-insensitive. -- **repository_owner** (`string`, required) The username of the repository's account owner. The name is not case sensitive. -- **results_page_number** (`integer`, optional) Specify the page number for results pagination to retrieve a specific set of stargazers. -- **results_per_page** (`integer`, optional) The number of stargazer results to display per page, with a maximum of 100. - -## GithubApi.GetRepoCodeFrequency - -
- - -Get weekly code frequency stats for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The GitHub username is not case sensitive. - -## GithubApi.GetCommitActivity - -
- - -Fetch yearly commit activity grouped by week. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This value is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. - -## GithubApi.GetGithubContributorStats - -
- - -Retrieve GitHub repository contributor statistics. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case-sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. This is not case sensitive. - -## GithubApi.GetRepoCommitParticipation - -
- - -Retrieve weekly commit participation stats for a GitHub repo. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository, which is not case sensitive. -- **repository_owner** (`string`, required) The repository account owner on GitHub. Case-insensitive. - -## GithubApi.GetCommitActivityByHour - -
- - -Retrieve commit activity per hour for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository to analyze. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository; this is not case sensitive. - -## GithubApi.CreateGithubCommitStatus - -
- - -Create a commit status for a specific SHA on GitHub. - -**Parameters** - -- **commit_sha** (`string`, required) The SHA hash of the commit to set the status for. This uniquely identifies the commit in the repository. -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Enter the owner's username (not case sensitive). -- **status_state** (`string`, required) The state of the status for the commit. Possible values are 'error', 'failure', 'pending', or 'success'. -- **commit_status_target_url** (`string`, optional) The URL associated with the status for easy navigation in GitHub. Example: a deep link to CI build output. -- **status_description** (`string`, optional) A short description of the commit status, providing context or details about the status. -- **status_label** (`string`, optional) A case-insensitive string label to differentiate this status from other systems. - -## GithubApi.ListWatchersForRepo - -
- - -Retrieve the list of users watching a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository to list watchers for. It is not case sensitive. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. It's case insensitive. -- **results_page_number** (`integer`, optional) Page number of the results to fetch. Helps in paginating through results. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100. - -## GithubApi.UnsubscribeFromRepo - -
- - -Stop receiving notifications for a repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository to unsubscribe from. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. It is not case sensitive. - -## GithubApi.GetRepoSubscription - -
- - -Retrieve subscription status for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username of the repository owner. The name is not case sensitive. - -## GithubApi.SetRepoSubscription - -
- - -Manage your GitHub repository subscription settings. - -**Parameters** - -- **repository_name** (`string`, required) Specify the name of the GitHub repository to manage subscriptions. Not case sensitive. -- **repository_owner** (`string`, required) The username of the repository owner. Not case sensitive. -- **block_notifications** (`boolean`, optional) Set to true to block all notifications from this repository. -- **receive_notifications** (`boolean`, optional) Set to `true` to receive notifications from the repository. - -## GithubApi.ListGithubRepoTags - -
- - -Retrieve tags for a specified GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository to retrieve tags from. This is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username or organization that owns the repository. Case insensitive. -- **page_number** (`integer`, optional) The page number to fetch the results from for the list of repository tags. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100. - -## GithubApi.GetRepositoryTagProtectionStates - -
- - -Fetch the tag protection states of a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The GitHub username of the account owner for the repository. This value is not case sensitive. - -## GithubApi.CreateRepositoryTagProtection - -
- - -Create tag protection for a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **tag_protection_pattern** (`string`, required) An optional glob pattern for matching when enforcing tag protection. - -## GithubApi.DeleteRepositoryTagProtection - -
- - -Deletes a tag protection from a GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository. This field is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **tag_protection_identifier** (`integer`, required) The unique identifier for the tag protection to be deleted. Required for identifying which tag protection state to remove. - -## GithubApi.DownloadGithubRepoTarball - -
- - -Retrieve a URL to download a GitHub repository tarball. - -**Parameters** - -- **branch_or_commit_ref** (`string`, required) Specify the branch name or commit SHA for the repository. If omitted, the default branch is used. -- **repository_name** (`string`, required) The name of the GitHub repository. This input is not case sensitive. Specify the repository whose tarball you want to download. -- **repository_owner** (`string`, required) The GitHub account owner of the repository. It is not case sensitive. - -## GithubApi.ListRepositoryTeams - -
- - -Retrieve a list of teams for a specified GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. Not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is case-insensitive. -- **result_page_number** (`integer`, optional) The page number to fetch from the results. Use this to iterate through paginated data. -- **results_per_page** (`integer`, optional) The number of results to include per page, with a maximum of 100. - -## GithubApi.GetRepoTopics - -
- - -Retrieve all topics for a specific GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. This is not case sensitive. -- **page_number** (`integer`, optional) The page number of results to fetch. Useful for paginating through large data sets. -- **results_per_page** (`integer`, optional) The number of results to fetch per page, with a maximum of 100. - -## GithubApi.UpdateGithubRepoTopics - -
- - -Replace topics for a specific GitHub repository. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. It is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository. The name is not case sensitive. -- **repository_topic_names** (`array[string]`, required) An array of topics to replace existing repository topics. To clear all topics, send an empty array. Topics must be lowercase. - -## GithubApi.TransferGithubRepository - -
- - -Initiate the transfer of a GitHub repository to a new owner. - -**Parameters** - -- **new_owner_username_or_org** (`string`, required) The username or organization name to which the repository will be transferred. -- **repository_name** (`string`, required) The name of the repository to be transferred. Case-insensitive. -- **repository_owner** (`string`, required) The account owner of the repository. Case insensitive. -- **new_repository_name** (`string`, optional) The new name to be given to the repository. It should be a valid GitHub repository name. -- **team_ids_to_add** (`array[integer]`, optional) List of team IDs to add to the repository. Applicable only for organization-owned repositories. - -## GithubApi.DownloadGithubRepoZip - -
- - -Retrieve a URL to download a GitHub repository as a zip file. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository. The name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. Not case sensitive. -- **repository_reference** (`string`, required) Specify the branch, tag, or commit SHA to retrieve the zip archive from. Defaults to the repository's default branch if omitted. - -## GithubApi.CreateRepoFromTemplate - -
- - -Create a new repository from a template. - -**Parameters** - -- **new_repository_name** (`string`, required) The name of the new repository to be created using the template. -- **template_repository_name** (`string`, required) The name of the repository template to use for creating the new repository. -- **template_repository_owner** (`string`, required) Username or organization name that owns the template repository. -- **create_private_repository** (`boolean`, optional) Set to true to create a private repository, or false to create a public one. -- **include_all_branches_from_template** (`boolean`, optional) Set to true to include files from all branches in the template repository, not just the default branch. Default: false. -- **repository_description** (`string`, optional) A short description of the new GitHub repository to be created from the template. -- **repository_owner** (`string`, optional) The organization or user that will own the new repository. Must be a valid organization member if creating under an organization. - -## GithubApi.ListPublicGithubRepositories - -
- - -Retrieve all public GitHub repositories. - -**Parameters** - -- **repository_visibility** (`string`, optional) Specify types of repositories to return, such as 'all' or 'public'. -- **starting_repository_id** (`integer`, optional) Specify a repository ID to list only repositories with an ID greater than this value for pagination. - -## GithubApi.ListGithubEnvironmentSecrets - -
- - -Retrieve secrets for a GitHub environment. - -**Parameters** - -- **environment_name** (`string`, required) The name of the environment whose secrets are to be listed. This is necessary to identify the specific environment in the repository. -- **repository_unique_identifier** (`integer`, required) The unique identifier of the repository. Required to fetch the environment secrets. -- **results_page_number** (`integer`, optional) Page number of the results to fetch. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum allowable value of 100. - -## GithubApi.GetGithubEnvironmentPublicKey - -
- - -Fetch the public key for a GitHub environment. - -**Parameters** - -- **environment_name** (`string`, required) The name of the GitHub environment for which to retrieve the public key. -- **repository_id** (`integer`, required) The unique identifier of the GitHub repository. It must be an integer value. - -## GithubApi.DeleteGithubEnvironmentSecret - -
- - -Delete a GitHub environment secret by name. - -**Parameters** - -- **environment_name** (`string`, required) Specify the name of the GitHub environment from which the secret will be deleted. -- **repository_id** (`integer`, required) The unique identifier of the repository to delete the secret from. -- **secret_name_to_delete** (`string`, required) The name of the secret to be deleted from the environment. - -## GithubApi.GetEnvironmentSecretInfo - -
- - -Retrieve details of an environment secret on GitHub. - -**Parameters** - -- **environment_name** (`string`, required) The name of the environment to access the secret from. Required to specify which environment's secret details to retrieve. -- **repository_id** (`integer`, required) The unique identifier of the GitHub repository. -- **secret_name** (`string`, required) The name of the environment secret to retrieve information about. - -## GithubApi.ManageGithubEnvironmentSecret - -
- - -Create or update an encrypted environment secret on GitHub. - -**Parameters** - -- **encrypted_secret_value** (`string`, required) The secret value encrypted with LibSodium using a public key. Retrieve the key from the 'Get an environment public key' endpoint. -- **encryption_key_id** (`string`, required) The identifier for the encryption key used to encrypt the secret. This is required to ensure the correct decryption of the secret on GitHub. -- **environment_name** (`string`, required) The name of the environment in the GitHub repository where the secret will be created or updated. -- **repository_unique_id** (`integer`, required) The unique identifier of the GitHub repository where the secret will be managed. -- **secret_name** (`string`, required) The name of the secret to be created or updated in the GitHub environment. - -## GithubApi.ListGithubEnvironmentVariables - -
- - -Retrieve environment variables from a GitHub repository's environment. - -**Parameters** - -- **environment_name** (`string`, required) Specify the environment name to retrieve its variables within a GitHub repository. -- **repository_id** (`integer`, required) The unique identifier of the GitHub repository to retrieve environment variables from. -- **results_page_number** (`integer`, optional) Specify the page number to retrieve results from. Use for paginated results. -- **results_per_page** (`integer`, optional) Specifies the number of environment variables to return per page, with a maximum allowed value of 30. - -## GithubApi.CreateGithubEnvVariable - -
- - -Create an environment variable for GitHub Actions workflows. - -**Parameters** - -- **environment_name** (`string`, required) Specify the name of the environment where the variable will be created. This is required for defining the scope within GitHub Actions workflows. -- **repository_identifier** (`integer`, required) The unique identifier of the repository for which the environment variable is being created. -- **variable_name** (`string`, required) The name of the environment variable to be created. -- **variable_value** (`string`, required) The value assigned to the environment variable. Must be a string. - -## GithubApi.DeleteGithubEnvVariable - -
- - -Deletes an environment variable in a GitHub repository environment. - -**Parameters** - -- **environment_name** (`string`, required) The name of the environment from which the variable will be deleted. -- **repository_id** (`integer`, required) The unique identifier of the GitHub repository where the environment variable will be deleted. -- **variable_name** (`string`, required) The name of the environment variable to delete. - -## GithubApi.GetGithubEnvVariable - -
- - -Retrieve specific environment variable details from GitHub. - -**Parameters** - -- **environment_name** (`string`, required) The name of the environment to retrieve the variable from. Required for identifying the specific environment. -- **repository_id** (`integer`, required) The unique identifier of the GitHub repository. -- **variable_name** (`string`, required) The name of the environment variable to retrieve from the GitHub repository. - -## GithubApi.UpdateGithubActionsEnvVar - -
- - -Update an environment variable in GitHub Actions workflow. - -**Parameters** - -- **environment_name** (`string`, required) The name of the GitHub Actions workflow environment to update. -- **repository_id** (`integer`, required) The unique identifier of the repository to update the environment variable in. -- **environment_variable_value** (`string`, optional) The new value for the GitHub Actions environment variable. -- **variable_identifier** (`string`, optional) The name of the environment variable to update. -- **variable_name** (`string`, optional) The name of the environment variable to update in the GitHub Actions workflow. - -## GithubApi.ListProvisionedGroupsForEnterprise - -
- - -Retrieve provisioned SCIM groups for an enterprise. - -**Parameters** - -- **exclude_attribute_from_results** (`string`, optional) Specify an attribute to exclude from the results to speed up response time. -- **filter_by_attribute** (`string`, optional) Filter results by a specific attribute. Supported filters: `externalId`, `id`, `displayName`. Example: `externalId eq '9138790-10932-109120392-12321'`. -- **results_per_page** (`integer`, optional) The number of SCIM group results to return per page for pagination. -- **start_index** (`integer`, optional) The starting index for pagination; specifies where to begin returning results. - -## GithubApi.CreateEnterpriseScimGroup - -
- - -Create a SCIM group for a GitHub enterprise account. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.DeleteScimGroupFromEnterprise - -
- - -Delete a SCIM group from an enterprise. - -**Parameters** - -- **scim_group_id** (`string`, required) The unique identifier of the SCIM group to delete from an enterprise. - -## GithubApi.GetScimGroupInfo - -
- - -Retrieve provisioning information for a SCIM group in an enterprise. - -**Parameters** - -- **scim_group_identifier** (`string`, required) A unique identifier for the SCIM group to retrieve its provisioning information. -- **exclude_attributes** (`string`, optional) Specify attributes to exclude from the response to speed up retrieval. - -## GithubApi.UpdateEnterpriseGroupAttributes - -
- - -Update attributes for a provisioned enterprise group. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **scim_group_identifier** (`string`, optional) A unique identifier for the SCIM group to be updated. This is required to specify which group's attributes or memberships are being modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.UpdateEnterpriseGroupInfo - -
- - -Replace all information for a provisioned enterprise group. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **scim_group_identifier** (`string`, optional) A unique identifier for the SCIM group to update. This is necessary for identifying the specific group to replace its information. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListScimEnterpriseMembers - -
- - -Lists provisioned SCIM enterprise members for GitHub enterprises. - -**Parameters** - -- **exclude_attributes** (`string`, optional) Specify attributes to exclude from the results to improve query performance. Commonly used values are 'groups'. -- **filter_criteria** (`string`, optional) Filter results by `userName`, `externalId`, `id`, or `displayName`. Only one filter is supported. E.g., "externalId eq '9138790-10932-109120392-12321'". -- **pagination_start_index** (`integer`, optional) The starting index of the first result to return for paginated responses. -- **results_per_page** (`integer`, optional) Specify the number of SCIM enterprise members to return per page for pagination. - -## GithubApi.ProvisionEnterpriseUser - -
- - -Create a new SCIM enterprise user identity. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.DeleteUserFromEnterprise - -
- - -Permanently delete a SCIM user from an enterprise account. - -**Parameters** - -- **scim_user_identifier** (`string`, required) The unique identifier of the SCIM user to be permanently deleted from the enterprise. - -## GithubApi.GetScimUserInfo - -
- - -Fetch SCIM user provisioning information. - -**Parameters** - -- **scim_user_identifier** (`string`, required) The unique identifier for the SCIM user in the GitHub enterprise environment. - -## GithubApi.UpdateEnterpriseUserAttribute - -
- - -Update individual attributes for a provisioned enterprise user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **scim_user_id** (`string`, optional) The unique identifier for the SCIM user whose attributes you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.UpdateProvisionedEnterpriseUserInfo - -
- - -Update all information for a provisioned enterprise user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **scim_user_identifier** (`string`, optional) The unique identifier of the SCIM user for updating their information. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.SearchCodeInGithub - -
- - -Search for code in GitHub repositories. - -**Parameters** - -- **search_query** (`string`, required) A string containing search keywords and qualifiers to limit the search scope on GitHub. For more details, see the GitHub search query documentation. -- **results_page_number** (`integer`, optional) The page number of the results to fetch. Use this to navigate through search results. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page, with a maximum of 100. -- **sort_by_recent_index** (`string`, optional) Sort the search results by most recently indexed files. The only valid value is `indexed`. -- **sort_order** (`string`, optional) Determines whether the first search result returned is the highest number of matches (`desc`) or lowest number of matches (`asc`). Ignored unless `sort` is provided. - -## GithubApi.SearchGithubCommits - -
- - -Search for GitHub commits using various criteria. - -**Parameters** - -- **commit_search_query** (`string`, required) A string containing search keywords and qualifiers to find specific commits. Use qualifiers to narrow the search to specific areas of GitHub. See the API documentation for constructing queries with qualifiers. -- **result_order** (`string`, optional) Determines whether the first search result returned has the highest number of matches ('desc') or the lowest ('asc'). Used only with 'sort'. -- **results_page_number** (`integer`, optional) Page number of the results to fetch. Determines which set of results to retrieve in paginated requests. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100. -- **sort_results_by** (`string`, optional) Sort results by `author-date` or `committer-date`. Defaults to best match if not specified. - -## GithubApi.SearchGithubIssuesAndPrs - -
- - -Search GitHub issues and pull requests by state and keyword. - -**Parameters** - -- **search_query** (`string`, required) A string containing search keywords and qualifiers to limit search to specific areas. Supports various qualifiers for refined search. -- **results_page_number** (`integer`, optional) Specify the page number of results to fetch (starting from 1). -- **results_per_page** (`integer`, optional) The number of results to return per page, with a maximum limit of 100. -- **sort_by** (`string`, optional) Specifies the sorting criteria for the results, such as by comments, reactions, or date created. Defaults to best match if not specified. -- **sort_order** (`string`, optional) Determines whether the first search result returned is the highest number of matches (desc) or lowest number of matches (asc). This parameter is ignored unless you provide a sort value. - -## GithubApi.FindGithubLabels - -
- - -Search for labels in a GitHub repository by keywords. - -**Parameters** - -- **repository_id** (`integer`, required) The ID of the repository where labels will be searched. -- **search_keywords** (`string`, required) Keywords to search for in label names or descriptions. Excludes qualifiers. -- **result_page_number** (`integer`, optional) Specifies the page number of the search results to fetch. Useful for pagination. -- **results_per_page** (`integer`, optional) The number of label results to display per page, with a maximum of 100. -- **sort_labels_by** (`string`, optional) Specifies how to sort the query results by the timestamp fields 'created' or 'updated'. Defaults to 'best match'. -- **sort_order** (`string`, optional) Determines if the highest ('desc') or lowest ('asc') matches appear first. Requires 'sort' to be set. - -## GithubApi.SearchGithubRepositories - -
- - -Search GitHub repositories using various criteria. - -**Parameters** - -- **search_query** (`string`, required) A string containing search keywords and qualifiers to find specific repositories. Supports qualifiers and keywords for targeted searches. Refer to GitHub's documentation for query construction details: https://docs.github.com/enterprise-server@3.8/articles/searching-for-repositories/. -- **result_order** (`string`, optional) Set to 'desc' for highest matches first or 'asc' for lowest matches first in search results. Ignored if 'sort' is not provided. -- **results_page_number** (`integer`, optional) Specify the page number of the results to fetch in the search query. Useful for navigating through paginated results. -- **results_per_page** (`integer`, optional) Specify the number of repository results to return per page, with a maximum of 100. -- **sort_by** (`string`, optional) Sort results by `stars`, `forks`, `help-wanted-issues`, or `updated`. Default is best match. - -## GithubApi.SearchGithubTopics - -
- - -Search and retrieve topics from GitHub using specific criteria. - -**Parameters** - -- **search_query** (`string`, required) Search query containing keywords and qualifiers to filter GitHub topics. Supports the same qualifiers as GitHub's web interface. -- **result_page_number** (`integer`, optional) The page number to fetch in the search results. Maximum is 100 results per page. -- **results_per_page** (`integer`, optional) Specify the number of search results to return per page, with a maximum of 100. - -## GithubApi.GithubSearchUsers - -
- - -Search for GitHub users based on specific criteria. - -**Parameters** - -- **search_query** (`string`, required) Contains search keywords and qualifiers to find GitHub users. Supports multiple qualifiers to narrow the search. See GitHub's query format documentation for details. -- **page_number** (`integer`, optional) Page number to fetch results, used for accessing subsequent pages of search results. Maximum supported is 100. -- **results_per_page** (`integer`, optional) The number of GitHub user results returned per page, up to a maximum of 100. -- **sort_by_criterion** (`string`, optional) Sort the search results by 'followers', 'repositories', or 'joined'. Defaults to best match if not specified. -- **sort_order** (`string`, optional) Specifies the order of search results: 'desc' for highest matches or 'asc' for lowest. Requires 'sort'. - -## GithubApi.CheckConfigStatus - -
- - -Check the status of the most recent configuration process. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.StartGithubConfiguration - -
- - -Initiate the GitHub configuration process. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.CheckMaintenanceStatus - -
- - -Retrieve the maintenance status of your GitHub installation. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.ToggleMaintenanceMode - -
- - -Toggle GitHub Enterprise maintenance mode. - -**Parameters** - -- **maintenance_mode_settings** (`string`, required) A JSON string defining `enabled` (true/false) and `when` (e.g., 'now' or a chronic-parseable date) to set maintenance mode status and timing. - -## GithubApi.GetGithubEnterpriseSettings - -
- - -Retrieve the current settings of your GitHub Enterprise instance. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.SetGithubEnterpriseSettings - -
- - -Apply configuration settings to GitHub Enterprise instance. - -**Parameters** - -- **new_settings_json_string** (`string`, required) A JSON string specifying new settings to apply to the GitHub Enterprise instance. Only include settings you wish to change. - -## GithubApi.RemoveAuthorizedSshKey - -
- - -Remove an authorized SSH key from GitHub Enterprise. - -**Parameters** - -- **public_ssh_key** (`string`, required) The public SSH key to be removed from GitHub Enterprise. - -## GithubApi.GetAllAuthorizedSshKeys - -
- - -Retrieve all authorized SSH keys for enterprise admin. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.AddGithubAuthorizedSshKey - -
- - -Add an authorized SSH key to GitHub Enterprise. - -**Parameters** - -- **public_ssh_key** (`string`, required) The public SSH key to add to GitHub Enterprise. Ensure it is in the correct format. - -## GithubApi.GetGithubUserProfile - -
- - -Retrieve authenticated user's GitHub profile information. - -**Parameters** - -This tool does not take any parameters. - -## GithubApi.UpdateGithubProfile - -
- - -Update your authenticated GitHub user profile. - -**Parameters** - -- **is_hireable** (`boolean`, optional) Set to true if the user is available for hire, false otherwise. -- **new_blog_url** (`string`, optional) The new blog URL to update on your GitHub profile. -- **new_company_name** (`string`, optional) The new company name to update on the GitHub profile. -- **new_location** (`string`, optional) The location to update in the user’s GitHub profile. -- **new_twitter_username** (`string`, optional) The new Twitter username for the user to update in their GitHub profile. -- **new_user_biography** (`string`, optional) The new short biography of the user for the GitHub profile update. -- **new_user_name** (`string`, optional) The new name to update on the user's GitHub profile. -- **public_visible_email_address** (`string`, optional) The email address you want to be publicly visible on your GitHub profile. If your privacy settings hide your email, it will remain hidden. - -## GithubApi.DeleteUserEmail - -
- - -Delete an email for the authenticated GitHub user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListUserEmailAddresses - -
- - -Retrieve all email addresses of the authenticated user. - -**Parameters** - -- **results_page_number** (`integer`, optional) Specify the page number to fetch results for user email addresses. -- **results_per_page** (`integer`, optional) The number of email results to retrieve per page, maximum is 100. - -## GithubApi.AddEmailToGithubAccount - -
- - -Add a new email to the authenticated GitHub user's account. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.ListFollowers - -
- - -Retrieve followers of the authenticated user on GitHub. - -**Parameters** - -- **results_page_number** (`integer`, optional) Specifies which page of followers to fetch. Used for pagination. -- **results_per_page** (`integer`, optional) Specify the number of followers to list per page (maximum 100). - -## GithubApi.ListFollowedUsers - -
- - -Lists the people the authenticated user follows. - -**Parameters** - -- **results_page_number** (`integer`, optional) Specify the page number of the results you want to fetch. -- **results_per_page** (`integer`, optional) The number of results to return per page, with a maximum of 100. - -## GithubApi.UnfollowGithubUser - -
- - -Unfollow a user on GitHub. - -**Parameters** - -- **github_user_handle_to_unfollow** (`string`, required) The GitHub user's handle you want to unfollow. The user must be logged in and authenticated. - -## GithubApi.CheckIfUserIsFollowed - -
- - -Check if a user is followed by the authenticated GitHub user. - -**Parameters** - -- **github_user_handle** (`string`, required) The handle for the GitHub user account to check if they are followed by the authenticated user. - -## GithubApi.FollowGithubUser - -
- - -Follow a specified user on GitHub. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub username of the account you want to follow. Ensure it is a valid GitHub user handle. - -## GithubApi.ListUserGpgKeys - -
- - -Retrieve authenticated user's GPG keys from GitHub. - -**Parameters** - -- **page_number** (`integer`, optional) Specifies which page of results to retrieve for the GPG keys list. Use integers starting from 1. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum of 100. - -## GithubApi.AddGpgKeyToGithub - -
- - -Add a GPG key to your authenticated GitHub account. - -**Parameters** - -- **gpg_key_ascii_armored_format** (`string`, required) A GPG key in ASCII-armored format to be added to your GitHub account. -- **new_gpg_key_name** (`string`, optional) A descriptive name for the new GPG key to be added to your GitHub account. - -## GithubApi.RemoveGpgKey - -
- - -Remove a GPG key from your GitHub account. - -**Parameters** - -- **gpg_key_identifier** (`integer`, required) The unique identifier of the GPG key to be removed from the authenticated user's account. - -## GithubApi.GetUserGpgKeyDetails - -
- - -Retrieve extended details for a user's GPG key. - -**Parameters** - -- **gpg_key_identifier** (`integer`, required) The unique identifier of the GPG key to retrieve details for. - -## GithubApi.GetGithubAppInstallations - -
- - -Retrieve GitHub App installations for the authenticated user. - -**Parameters** - -- **results_page_number** (`integer`, optional) Page number of the results to fetch for GitHub App installations. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page, with a maximum of 100. - -## GithubApi.ListUserAccessibleRepos - -
- - -List repositories accessible to the authenticated user. - -**Parameters** - -- **installation_identifier** (`integer`, required) The unique identifier for the GitHub app installation required to list the repositories. -- **results_page_number** (`integer`, optional) Specify the page number of results to fetch, starting from 1. -- **results_per_page** (`integer`, optional) Specify the number of repository results to return per page (maximum 100). - -## GithubApi.RemoveRepoFromInstallation - -
- - -Remove a repository from a GitHub app installation. - -**Parameters** - -- **installation_unique_identifier** (`integer`, required) The unique identifier for the installation, needed to specify which installation to modify. -- **repository_id** (`integer`, required) The unique integer identifier of the repository to be removed from the installation. - -## GithubApi.AddRepositoryToGithubInstallation - -
- - -Add a repository to a GitHub installation for the authenticated user. - -**Parameters** - -- **installation_id** (`integer`, required) The unique identifier of the GitHub installation. -- **repository_id** (`integer`, required) Provide the unique integer identifier of the repository to add to the installation. - -## GithubApi.ListUserIssues - -
- - -Fetch issues and pull requests assigned to you. - -**Parameters** - -- **issue_filter_type** (`string`, optional) Specifies the type of issues to return. Options: 'assigned', 'created', 'mentioned', 'subscribed', 'all'. -- **issue_state** (`string`, optional) Specifies whether to return open, closed, or all issues. -- **label_filter** (`string`, optional) Comma-separated list of label names to filter issues by. Example: 'bug,ui,@high'. -- **result_page_number** (`integer`, optional) Specifies the page number of the results to fetch. Use for paginating through result sets. -- **results_per_page** (`integer`, optional) Specify the number of issues or pull requests to return per page. The maximum allowed value is 100. -- **sort_by** (`string`, optional) Choose sorting method for results: 'created', 'updated', or 'comments'. -- **sort_direction** (`string`, optional) Specifies the sorting direction of the results, either ascending (`asc`) or descending (`desc`). -- **updated_since** (`string`, optional) Show issues updated after this timestamp. Use ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. - -## GithubApi.ListPublicSshKeys - -
- - -Retrieve public SSH keys for the authenticated GitHub user. - -**Parameters** - -- **result_page_number** (`integer`, optional) Specifies which page of results to fetch, starting from 1. -- **results_per_page** (`integer`, optional) The number of SSH key results to display per page, with a maximum of 100. - -## GithubApi.AddSshKeyToGithubAccount - -
- - -Add a public SSH key to your GitHub account. - -**Parameters** - -- **public_ssh_key** (`string`, required) The public SSH key content to add to your GitHub account. Ensure it is in the correct format. -- **ssh_key_title** (`string`, optional) A descriptive name for the new SSH key added to the GitHub account. - -## GithubApi.RemoveGithubSshKey - -
- - -Removes a public SSH key from your GitHub account. - -**Parameters** - -- **ssh_key_unique_identifier** (`integer`, required) The unique identifier for the SSH key to be removed from the GitHub account. - -## GithubApi.GetPublicSshKeyDetails - -
- - -Retrieve details for a specified public SSH key. - -**Parameters** - -- **ssh_key_identifier** (`integer`, required) The unique identifier for the public SSH key to retrieve details. - -## GithubApi.ListOrganizationMemberships - -
- - -Retrieve organization memberships for the authenticated user. - -**Parameters** - -- **membership_state** (`string`, optional) Filter memberships by state: 'active' or 'pending'. Returns both if unspecified. -- **results_page_number** (`integer`, optional) Specify the page number of results to fetch, for pagination. -- **results_per_page** (`integer`, optional) Number of results per page. Maximum allowed is 100. - -## GithubApi.GetOrgMembershipStatus - -
- - -Retrieve the user's organization membership status. - -**Parameters** - -- **organization_name** (`string`, required) The name of the organization. It is not case sensitive and should be provided as a string. - -## GithubApi.UpdateGithubOrgMembership - -
- - -Update your GitHub organization membership settings. - -**Parameters** - -- **membership_state** (`string`, required) Set the state of the membership. Only accepts "active". -- **organization_name** (`string`, required) The name of the GitHub organization. This should not be case sensitive. - -## GithubApi.ListUserMigrations - -
- - -Lists all migrations a user has started. - -**Parameters** - -- **results_page_number** (`integer`, optional) The specific page of migration results to retrieve, starting from 1. -- **results_per_page** (`integer`, optional) The number of migration results per page, with a maximum of 100. - -## GithubApi.InitiateUserMigration - -
- - -Begin the creation of a user migration archive. - -**Parameters** - -- **repository_list** (`array[string]`, required) A list of repository names to be included in the migration. Expect an array of strings representing repository names. -- **exclude_attachments** (`boolean`, optional) Set to true to exclude attachments from the migration. -- **exclude_attributes** (`array[string]`, optional) List of attributes to exclude from the API response for better performance. -- **exclude_metadata** (`boolean`, optional) Set to true to exclude metadata and include only git source in the migration. -- **exclude_owner_projects** (`boolean`, optional) Set to true to exclude projects owned by the organization or users from the migration process. -- **exclude_releases** (`boolean`, optional) Set to true to exclude releases from the migration process. -- **exclude_repository_git_data** (`boolean`, optional) Set to true to exclude repository git data from the migration. -- **lock_repositories** (`boolean`, optional) Set to true to lock the repositories at the start of the migration. -- **org_metadata_only** (`boolean`, optional) Set to true to include only organization metadata. Repositories array will be empty and other flags are ignored. - -## GithubApi.DownloadGithubMigrationArchive - -
- - -Fetch the URL to download a GitHub migration archive. - -**Parameters** - -- **migration_unique_id** (`integer`, required) The unique identifier for the GitHub migration. This ID is required to fetch the migration archive URL. - -## GithubApi.ListUserMigrationRepos - -
- - -Retrieve repositories for a user's migration. - -**Parameters** - -- **migration_unique_identifier** (`integer`, required) The unique identifier for the user migration to retrieve repositories. -- **result_page_number** (`integer`, optional) Specify the page number of results to retrieve. Use this to paginate through multiple pages of repository data. -- **results_per_page** (`integer`, optional) The number of repository results to return per page, with a maximum of 100. - -## GithubApi.ListUserOrganizations - -
- - -List organizations for the authenticated GitHub user. - -**Parameters** - -- **page_number_to_fetch** (`integer`, optional) Page number of the results to fetch for user organizations. -- **results_per_page** (`integer`, optional) The number of organizations listed per page, up to a maximum of 100. - -## GithubApi.CreateGithubUserProjectBoard - -
- - -Create a project board for a GitHub user. - -**Parameters** - -- **project_name** (`string`, required) The name for the GitHub project board to be created. It should be a string representing the desired name. -- **project_body** (`string`, optional) The content or description of the GitHub project board. It should be a concise string summarizing the project's purpose or details. - -## GithubApi.ListGithubPublicEmails - -
- - -Retrieve publicly visible GitHub emails for the authenticated user. - -**Parameters** - -- **results_page_number** (`integer`, optional) The page number of email results to retrieve. Use this to navigate through paginated email results. -- **results_per_page** (`integer`, optional) The number of email results to display per page, with a maximum of 100. - -## GithubApi.ListUserRepositories - -
- - -Retrieve repositories accessible to the authenticated user. - -**Parameters** - -- **filter_repositories_before_timestamp** (`string`, optional) Only show repositories updated before the specified timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. -- **repository_affiliation_filter** (`string`, optional) Specify affiliations for repositories to list. Options: `owner`, `collaborator`, `organization_member`. Provide as a comma-separated string. -- **repository_type** (`string`, optional) Limit results to repositories of the specified type: 'all', 'owner', 'public', 'private', or 'member'. Avoid using with 'visibility' or 'affiliation'. -- **repository_visibility** (`string`, optional) Limit results to repositories with the specified visibility: 'all', 'public', or 'private'. -- **results_page_number** (`integer`, optional) Specify the page number of the results to fetch. -- **results_per_page** (`integer`, optional) The maximum number of repositories to display per page. Accepts an integer up to 100. -- **sort_order** (`string`, optional) Specify the order to sort repositories. Use 'asc' for ascending or 'desc' for descending. Default is 'asc' for 'full_name' sort and 'desc' otherwise. -- **sort_property** (`string`, optional) Property by which to sort repositories, such as `created`, `updated`, `pushed`, or `full_name`. -- **updated_after_timestamp** (`string`, optional) Filter repositories updated after the specified ISO 8601 timestamp (YYYY-MM-DDTHH:MM:SSZ). - -## GithubApi.CreateGithubRepoForUser - -
- - -Create a new GitHub repository for the authenticated user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## GithubApi.FetchOpenRepoInvitations - -
- - -List open repository invitations for the authenticated user. - -**Parameters** - -- **page_number** (`integer`, optional) Specify the page number of results to retrieve for open repository invitations. -- **results_per_page** (`integer`, optional) Specify the number of results to display per page, up to a maximum of 100. - -## GithubApi.DeclineRepoInvitation - -
- - -Decline an invitation to join a GitHub repository. - -**Parameters** - -- **invitation_id** (`integer`, required) The unique identifier of the GitHub repository invitation to decline. - -## GithubApi.AcceptGithubRepoInvitation - -
- - -Accept a GitHub repository invitation. - -**Parameters** - -- **invitation_id** (`integer`, required) The unique identifier for the GitHub invitation to be accepted. - -## GithubApi.ListSshSigningKeys - -
- - -Retrieve SSH signing keys for the authenticated GitHub user. - -**Parameters** - -- **results_page_number** (`integer`, optional) Page number of the results to fetch. Use this to navigate through paginated results. -- **results_per_page** (`integer`, optional) The number of SSH signing key results to display per page. The maximum allowed is 100. - -## GithubApi.CreateSshSigningKeyGithub - -
- - -Create an SSH signing key for your GitHub account. - -**Parameters** - -- **public_ssh_key** (`string`, required) The public SSH key to add to your GitHub account. Check for existing SSH keys before adding. -- **ssh_key_title** (`string`, optional) A descriptive name for the new SSH signing key. - -## GithubApi.DeleteGithubSshSigningKey - -
- - -Delete an SSH signing key from your GitHub account. - -**Parameters** - -- **ssh_signing_key_identifier** (`integer`, required) The unique identifier of the SSH signing key to delete. It must be an integer. - -## GithubApi.GetSshSigningKeyDetails - -
- - -Retrieve extended details for an SSH signing key. - -**Parameters** - -- **ssh_signing_key_identifier** (`integer`, required) The unique identifier of the SSH signing key to retrieve details for the authenticated user. - -## GithubApi.ListStarredRepositories - -
- - -Retrieve repositories starred by the authenticated user. - -**Parameters** - -- **page_number_to_fetch** (`integer`, optional) Specify the page number of results to retrieve. Use for pagination of starred repositories. -- **results_per_page** (`integer`, optional) The number of repositories to return per page, maximum of 100. -- **sort_by** (`string`, optional) The property to sort the results by. Use 'created' for sorting by the star creation date or 'updated' for the last push date. -- **sort_direction** (`string`, optional) The direction to sort the results by. Use 'asc' for ascending or 'desc' for descending. - -## GithubApi.UnstarGithubRepo - -
- - -Unstar a GitHub repository for the authenticated user. - -**Parameters** - -- **repository_name** (`string`, required) The name of the repository to unstar, not case sensitive. -- **repository_owner** (`string`, required) The account owner of the GitHub repository. The name is not case sensitive. - -## GithubApi.CheckRepoStarredByUser - -
- - -Check if a repository is starred by the authenticated user. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository to check. This is case insensitive. -- **repository_owner_account** (`string`, required) The account owner of the repository. This value is not case sensitive. - -## GithubApi.StarGithubRepository - -
- - -Star a GitHub repository for the authenticated user. - -**Parameters** - -- **repository_name** (`string`, required) The name of the GitHub repository to star. This name is not case sensitive. -- **repository_owner** (`string`, required) The account owner of the repository, case insensitive. - -## GithubApi.ListWatchedRepositories - -
- - -Retrieve repositories watched by the authenticated user. - -**Parameters** - -- **results_page_number** (`integer`, optional) Specify the page number of the results to fetch. Used for pagination of results. -- **results_per_page** (`integer`, optional) The number of repository results displayed per page (maximum 100). - -## GithubApi.ListUserGithubTeams - -
- - -Retrieve teams the authenticated GitHub user belongs to. - -**Parameters** - -- **results_page_number** (`integer`, optional) Page number to specify which set of results to fetch. Useful for pagination. -- **results_per_page** (`integer`, optional) Number of results to display per page, maximum value is 100. - -## GithubApi.ListGithubUsers - -
- - -Retrieve a list of all GitHub users by signup order. - -**Parameters** - -- **results_per_page** (`integer`, optional) The number of results to return per page, with a maximum of 100 allowed. -- **user_id_threshold** (`integer`, optional) A user ID. Only return users with an ID greater than this number. - -## GithubApi.GetGithubUserInfo - -
- - -Fetch public details of a GitHub user using their username. - -**Parameters** - -- **github_username** (`string`, required) The GitHub user's handle. Used to fetch their public profile information. - -## GithubApi.ListUserGithubEvents - -
- - -Retrieve a user's GitHub events, including private if authenticated. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub username for which to retrieve events. Use the handle of the user account. -- **page_number** (`integer`, optional) The page number of results to fetch for the user's GitHub events. -- **results_per_page** (`integer`, optional) Number of results to return per page, up to a maximum of 100. - -## GithubApi.GetUserOrgEvents - -
- - -Retrieve organization events for an authenticated GitHub user. - -**Parameters** - -- **github_username** (`string`, required) The GitHub handle of the user account for whom events are being retrieved. Authentication is required to access user-specific details. -- **organization_name** (`string`, required) The name of the GitHub organization. This parameter is not case sensitive. -- **results_page_number** (`integer`, optional) The specific page of results to retrieve. Provides pagination for fetching events. -- **results_per_page** (`integer`, optional) Specify the number of results to display per page, with a maximum of 100. - -## GithubApi.ListGithubUserPublicEvents - -
- - -Retrieve a GitHub user's public events. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user's handle to retrieve public events for. -- **page_number** (`integer`, optional) The page number of the results to retrieve. Use to navigate through paginated results. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100. - -## GithubApi.ListUserFollowers - -
- - -Retrieve a list of followers for a specific GitHub user. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user handle to list followers for. -- **results_page_number** (`integer`, optional) Specify the page number of results to retrieve followers for the specified user. Use this to paginate through results if there are many followers. -- **results_per_page** (`integer`, optional) The number of follower results to display per page, with a maximum limit of 100. - -## GithubApi.UserFollowingList - -
- - -Retrieve users followed by a specified GitHub user. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub username of the account whose followings you want to list. -- **result_page_number** (`integer`, optional) The page number of the result set to retrieve. Use this to paginate results. -- **results_per_page** (`integer`, optional) Specify the number of results to display per page. Maximum is 100. - -## GithubApi.CheckUserFollowingStatus - -
- - -Verify if a user follows another GitHub user. - -**Parameters** - -- **github_user_handle** (`string`, required) The handle for the GitHub user account initiating the following request. -- **target_username** (`string`, required) The username of the GitHub account you want to check if the main user follows. - -## GithubApi.GetUserGists - -
- - -Retrieve a user's public gists from GitHub. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub username whose public gists you want to retrieve. -- **page_number** (`integer`, optional) Page number of the gist results to fetch. Used for paginating results. -- **results_per_page** (`integer`, optional) The number of gists to display per page, with a maximum limit of 100. -- **updated_after_timestamp** (`string`, optional) Show notifications updated after the specified timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. - -## GithubApi.ListGpgKeysForUser - -
- - -Retrieve public GPG keys for a GitHub user. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub username of the account to retrieve GPG keys for. -- **page_number** (`integer`, optional) Page number of the results to fetch. Used for pagination. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100. - -## GithubApi.GetGithubUserHovercardInfo - -
- - -Retrieve detailed hovercard info for a GitHub user. - -**Parameters** - -- **github_username** (`string`, required) The GitHub username for which to retrieve hovercard information. -- **additional_info_type** (`string`, optional) Specifies the type of related information for the user's hovercard. Options: `organization`, `repository`, `issue`, `pull_request`. Required with `subject_id`. -- **subject_identifier** (`string`, optional) The ID corresponding to the specified `subject_type` (e.g., organization, repository). Required if `subject_type` is used. - -## GithubApi.GetGithubUserInstallation - -
- - -Retrieve a user's GitHub App installation information. - -**Parameters** - -- **github_user_handle** (`string`, required) The handle (username) of the GitHub user account to retrieve installation details for. - -## GithubApi.GetPublicSshKeys - -
- - -Retrieve verified public SSH keys for a specified GitHub user. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user's handle to retrieve their verified public SSH keys. -- **results_page_number** (`integer`, optional) Specify the page number of results to retrieve for pagination purposes. -- **results_per_page** (`integer`, optional) Specify the number of results per page, with a maximum allowed value of 100. - -## GithubApi.ListPublicOrgsForUser - -
- - -Retrieve public organization memberships for a GitHub user. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user account handle to retrieve public organization memberships for. -- **results_page_number** (`integer`, optional) Specify the page number of the results to fetch, for paginated results. -- **results_per_page** (`integer`, optional) The number of results to return per page, with a maximum of 100. - -## GithubApi.ListUserProjects - -
- - -Retrieve a list of GitHub projects for a specific user. - -**Parameters** - -- **github_username** (`string`, required) The GitHub username of the account whose projects are to be listed. -- **project_state** (`string`, optional) Specify the state of projects to return. Options are 'open', 'closed', or 'all'. -- **results_page_number** (`integer`, optional) Specify the page number of the results to fetch when listing user projects. -- **results_per_page** (`integer`, optional) The number of projects to display per page, up to a maximum of 100. - -## GithubApi.GetUserReceivedGithubEvents - -
- - -Retrieve events received by a GitHub user. - -**Parameters** - -- **github_user_handle** (`string`, required) The handle of the GitHub user account for which to retrieve events. -- **result_page_number** (`integer`, optional) Specifies the page number of results to retrieve from the GitHub events list. -- **results_per_page** (`integer`, optional) Specify the number of results per page, up to a maximum of 100. - -## GithubApi.ListUserReceivedPublicEvents - -
- - -Retrieve public events received by a GitHub user. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub handle for the user account whose public events are to be listed. -- **page_number** (`integer`, optional) Specify the page number of the results you wish to fetch. -- **results_per_page** (`integer`, optional) The number of results to return per page, with a maximum of 100. - -## GithubApi.GetUserRepos - -
- - -Retrieve public repositories of a GitHub user. - -**Parameters** - -- **github_user_handle** (`string`, required) The handle for the GitHub user whose repositories you want to retrieve. -- **page_number** (`integer`, optional) The page number of results to fetch, starting from 1. -- **repository_type** (`string`, optional) Limit results to repositories of the specified type: 'all', 'owner', or 'member'. -- **results_per_page** (`integer`, optional) Specify the number of repository results to be returned per page, up to a maximum of 100. -- **sort_order** (`string`, optional) Specifies the order to sort the repositories. Use 'asc' for ascending and 'desc' for descending order. -- **sort_results_by** (`string`, optional) Specify the property to sort the repository results by. Options: 'created', 'updated', 'pushed', or 'full_name'. - -## GithubApi.DemoteGithubSiteAdministrator - -
- - -Demote a GitHub site administrator. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user account handle to be demoted. - -## GithubApi.PromoteUserToSiteAdmin - -
- - -Promote a user to site administrator on GitHub Enterprise. - -**Parameters** - -- **github_user_handle** (`string`, required) The handle for the GitHub user account to be promoted to site administrator. - -## GithubApi.ListSshSigningKeysForUser - -
- - -Retrieve SSH signing keys for a specific GitHub user. - -**Parameters** - -- **github_username** (`string`, required) The GitHub username whose SSH signing keys you want to retrieve. -- **results_page_number** (`integer`, optional) Page number of the results to fetch when listing SSH signing keys. -- **results_per_page** (`integer`, optional) The number of results to display per page, with a maximum of 100. - -## GithubApi.ListStarredRepos - -
- - -Retrieve repositories starred by a user on GitHub. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user's handle (username) to retrieve starred repositories for. -- **page_number** (`integer`, optional) The page number of the results to fetch, useful for pagination. -- **results_per_page** (`integer`, optional) The number of repository results to return per page, with a maximum of 100. -- **sort_direction** (`string`, optional) Specify the direction to sort the results: 'asc' for ascending or 'desc' for descending. -- **sort_repositories_by** (`string`, optional) Property to sort the repositories by: 'created' for star date or 'updated' for last push date. - -## GithubApi.ListWatchedRepos - -
- - -Retrieve a list of repositories a user watches on GitHub. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub handle of the user whose watched repositories are to be retrieved. -- **results_page_number** (`integer`, optional) Page number of the results to fetch for the user's watched repositories. -- **results_per_page** (`integer`, optional) Specify the number of repository results to return per page, with a maximum of 100. - -## GithubApi.UnsuspendGithubUser - -
- - -Unsuspend a user on GitHub Enterprise. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub user handle to identify the user account to unsuspend. -- **unsuspension_reason** (`string`, optional) The reason for unsuspending the user, logged in the audit log. Defaults to "Unsuspended via API by _SITE_ADMINISTRATOR_" if not provided. - -## GithubApi.SuspendGithubUser - -
- - -Suspend a user on a GitHub Enterprise instance. - -**Parameters** - -- **github_user_handle** (`string`, required) The GitHub username to suspend, excluding Active Directory LDAP-authenticated users. -- **suspension_reason** (`string`, optional) A string detailing why the user is being suspended, which will be logged in the audit log. If omitted, a default message is used. - -## GithubApi.GetRandomGithubZen - -
- - -Fetch a random Zen of GitHub sentence. - -**Parameters** - -This tool does not take any parameters. - -## Secrets - -All tools in this toolset require the following secret: `GIT_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -The `GIT_SERVER_URL` secret specifies the GitHub server URL. Use `https://api.github.com` for regular GitHub.com accounts, or your GitHub Enterprise server URL (e.g., `https://github.your-company.com/api/v3`) for GitHub Enterprise deployments. - -## Reference - -Below is a reference of enumerations used by some of the tools in the GithubApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - -## Auth - -The GithubApi MCP Server uses the Auth Provider with id `arcade-github` to connect to users' GithubApi accounts. In order to use the MCP Server, you will need to configure the `arcade-github` auth provider. - -For detailed information on configuring the GitHub OAuth provider with Arcade, see the [GitHub Auth Provider documentation](/references/auth-providers/github). - - diff --git a/app/en/resources/integrations/development/github/page.mdx b/app/en/resources/integrations/development/github/page.mdx deleted file mode 100644 index 46559b587..000000000 --- a/app/en/resources/integrations/development/github/page.mdx +++ /dev/null @@ -1,2206 +0,0 @@ ---- -asIndexPage: true ---- - -# GitHub - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout, Tabs } from "nextra/components"; - - - - - -The Arcade GitHub MCP Server provides a pre-built set of tools for interacting with GitHub. This server is optimized for LLM usage and user experience, featuring fuzzy matching, smart defaults, and streamlined output. It is enterprise-ready and can be configured for both GitHub.com and GitHub Enterprise Server. - -These tools make it easy to build agents and AI apps that can: - -- Access private repositories (with the user's permission) -- Get info about repositories, issues, pull requests, and more -- Post issues, comments, and replies as the user -- Perform fuzzy searches for repositories, users, and labels -- Use intelligent defaults for user context and repository settings -- Interact with Projects V2 (modern GitHub Projects) - - - **Critical**: This MCP Server is built for **GitHub Apps**, not OAuth Apps. - - You **must** create a GitHub App (not an OAuth App) to use this server properly. - - 👉 [Complete GitHub App Setup Guide](/references/auth-providers/github) - - - - **Configuration Required**: All tools require secrets to be configured in Arcade Dashboard. See [Secrets Setup](#secrets-setup) below. - - ---- - -## GitHub Enterprise Support - - - This MCP Server fully supports **GitHub Enterprise Server 2.22+** - - -**Default Configuration:** -- If no `GITHUB_SERVER_URL` is configured, the default is `https://api.github.com` (GitHub.com) -- All tools work with GitHub.com out of the box - -**For GitHub Enterprise Server:** - -1. Create your GitHub App on your Enterprise instance (not github.com) -2. Configure the `GITHUB_SERVER_URL` secret in Arcade Dashboard (see [Secrets Setup](#secrets-setup) below) -3. Use your Enterprise server's API endpoint - -**Example Enterprise Server URLs:** -- `https://github.yourcompany.com/api/v3` -- `https://enterprise.yourorg.com/api/v3` -- `https://git.company.internal/api/v3` - - - **Note**: GitHub Enterprise Server uses the `/api/v3` path after the hostname. GitHub.com uses `https://api.github.com` (no `/api/v3` suffix). - - ---- - -## GitHub App Permissions Summary - -When creating your GitHub App, you'll need to grant specific permissions. Here's a quick reference of which tools require which permissions: - -### Repository Permissions - -| Permission | Level | Required For | -|------------|-------|--------------| -| **Contents** | Read | All repository and pull request tools, getting file contents | -| **Contents** | Write | Creating/updating files, creating branches, merging PRs | -| **Issues** | Read & Write | Issue management, PR assignments, managing labels (Issues) | -| **Pull requests** | Read & Write | Pull request management, reviews, managing labels (PRs) | -| **Metadata** | Read | All tools (automatically granted) | -| **Statuses** | Read | `CheckPullRequestMergeStatus` | - -### Organization Permissions - -| Permission | Level | Required For | -|------------|-------|--------------| -| **Members** | Read | Projects, collaborators, org repos, user search | -| **Projects** | Read & Write | All Projects V2 tools | - -### User Permissions - -| Permission | Level | Required For | -|------------|-------|--------------| -| **Read user profile** | Read | User context tools, review workload | -| **Act on behalf of user** | Enabled | `SetStarred` (starring repositories) | - -### Tools by Permission Requirements - -
-Basic Repository Access (Contents Read + Metadata) - -- `GetRepository` -- `CountStargazers` -- `ListStargazers` -- `ListRepositoryActivities` -- `GetFileContents` - -
- -
-Repository Write (Contents Write + Metadata) - -- `CreateBranch` -- `CreateOrUpdateFile` -- `UpdateFileLines` - -
- -
-Issue Management (Contents Read + Issues + Metadata) - -- `CreateIssue` -- `UpdateIssue` -- `GetIssue` -- `ListIssues` -- `CreateIssueComment` -- `ListRepositoryLabels` -- `ManageLabels` (for issues) - -
- -
-Pull Request Read (Contents + Pull requests Read + Metadata) - -- `ListPullRequests` -- `GetPullRequest` -- `ListPullRequestCommits` -- `ListReviewCommentsOnPullRequest` -- `CheckPullRequestMergeStatus` (+ Statuses) - -
- -
-Pull Request Write (Contents Read + Pull requests Write + Metadata) - -- `UpdatePullRequest` -- `CreatePullRequest` -- `SubmitPullRequestReview` -- `ManagePullRequest` -- `ManagePullRequestReviewers` -- `CreateReviewComment` -- `CreateReplyForReviewComment` -- `ResolveReviewThread` -- `ManageLabels` (for pull requests) -- `MergePullRequest` (+ Contents Write) - -
- -
-Organization Tools (Contents + Metadata + Members) - -- `ListOrgRepositories` -- `SearchMyRepos` -- `ListRepositoryCollaborators` -- `AssignPullRequestUser` (+ Issues Write) - -
- -
-Projects V2 (Contents + Metadata + Projects + Members) - -- `ListProjects` -- `ListProjectItems` -- `SearchProjectItem` -- `ListProjectFields` -- `UpdateProjectItem` (Projects Write) - -
- -
-User Context (Contents + Metadata + Read user profile) - -- `WhoAmI` (+ Members) -- `GetUserRecentActivity` -- `GetUserOpenItems` -- `GetReviewWorkload` (+ Pull requests Read) - -
- -
-⚠️ Special: Notifications (Requires Classic PAT) - -- `GetNotificationSummary` -- `ListNotifications` - -**Note**: GitHub Apps cannot access notifications API. Requires classic Personal Access Token with `notifications` scope. - -
- ---- - -## Available Tools - -These tools are currently available in the Arcade GitHub MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server) with the [GitHub auth - provider](/references/auth-providers/github#using-github-auth-in-custom-tools). - - -## Github.SetStarred - -
- - -Star or unstar a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) + **User Permissions** → "Act on behalf of user" - - **Important**: This tool requires the "Act on behalf of user" permission to be enabled in your GitHub App settings. - - -**Parameters** - -- **`owner`** _(string, required)_ The owner of the repository. -- **`name`** _(string, required)_ The name of the repository. -- **`starred`** _(boolean, required)_ Whether to star (`true`) or unstar (`false`) the repository. - ---- - -## Github.ListStargazers - -
- - -List the stargazers of a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`limit`** _(int, optional, Defaults to `None`)_ The maximum number of stargazers to return. If not provided, all stargazers will be returned. - ---- - -## Github.CreateIssue - -
- - -Create an issue in a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Issues (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. The name is not case sensitive. -- **`repo`** _(string, required)_ The name of the repository without the .git extension. The name is not case sensitive. -- **`title`** _(string, required)_ The title of the issue. -- **`body`** _(string, optional)_ The contents of the issue. -- **`assignees`** _(array of strings, optional)_ Logins for Users to assign to this issue. -- **`milestone`** _(integer, optional)_ The number of the milestone to associate this issue with. -- **`labels`** _(array of strings, optional)_ Labels to associate with this issue. -- **`add_to_project_number`** _(integer, optional)_ Project number to add this issue to. -- **`add_to_project_scope`** _(enum ([ProjectScopeTarget](#projectscopetarget)), optional)_ Project scope (organization or user) if adding to a project. -- **`add_to_project_owner`** _(string, optional)_ Project owner (defaults to issue owner if not specified). - ---- - -## Github.CreateIssueComment - -
- - -Create a comment on an issue in a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Issues (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. The name is not case sensitive. -- **`repo`** _(string, required)_ The name of the repository without the .git extension. The name is not case sensitive. -- **`issue_number`** _(integer, required)_ The number that identifies the issue. -- **`body`** _(string, required)_ The contents of the comment. - ---- - -## Github.UpdateIssue - -
- - -Update an existing issue in a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Issues (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`issue_number`** _(integer, required)_ The number that identifies the issue. -- **`title`** _(string, optional)_ The new title of the issue. -- **`body`** _(string, optional)_ The new contents of the issue. -- **`state`** _(enum ([IssueState](#issuestate)), optional)_ State of the issue (open, closed, all). -- **`labels`** _(array of strings, optional)_ Labels to set (replaces existing). -- **`assignees`** _(array of strings, optional)_ Assignees to set (replaces existing). -- **`milestone`** _(integer, optional)_ Milestone number to associate. - ---- - -## Github.GetIssue - -
- - -Get details of a specific issue from a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Issues (Read), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`issue_number`** _(integer, required)_ The number that identifies the issue. - ---- - -## Github.ListIssues - -
- - -List issues in a GitHub repository with filtering and pagination. - - - **GitHub App Permissions**: Repository → Contents (Read), Issues (Read), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`state`** _(enum ([IssueState](#issuestate)), optional, Defaults to `open`)_ The state of issues to return. -- **`labels`** _(string, optional)_ Comma-separated label names (e.g., "bug,ui,@high"). -- **`sort`** _(enum ([IssueSortProperty](#issuesortproperty)), optional, Defaults to `created`)_ What to sort results by. -- **`direction`** _(enum ([SortDirection](#sortdirection)), optional, Defaults to `desc`)_ The direction to sort results. -- **`since`** _(string, optional)_ Only show issues updated after this time (ISO 8601 format). -- **`per_page`** _(integer, optional, Defaults to `30`)_ The number of results per page (max 100). -- **`page`** _(integer, optional, Defaults to `1`)_ Page number of results to fetch. -- **`search_org_wide`** _(boolean, optional, Defaults to `false`)_ Search across all organization repositories instead of just one repository. - ---- - -## Github.ListPullRequests - -
- - -List pull requests in a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Read), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. The name is not case sensitive. -- **`repo`** _(string, required)_ The name of the repository without the .git extension. The name is not case sensitive. -- **`state`** _(enum ([PRState](#prstate)), optional, Defaults to `PRState.OPEN`)_ The state of the pull requests to return. -- **`head`** _(string, optional)_ Filter pulls by head user or head organization and branch name in the format of user:ref-name or organization:ref-name. -- **`base`** _(string, optional, Defaults to `'main'`)_ Filter pulls by base branch name. -- **`sort`** _(enum ([PRSortProperty](#prsortproperty)), optional, Defaults to `PRSortProperty.CREATED`)_ The property to sort the results by. -- **`direction`** _(enum ([SortDirection](#sortdirection)), optional)_ The direction of the sort. -- **`per_page`** _(integer, optional, Defaults to `30`)_ The number of results per page (max 100). -- **`page`** _(integer, optional, Defaults to `1`)_ The page number of the results to fetch. -- **`search_org_wide`** _(boolean, optional, Defaults to `false`)_ Search across all organization repositories instead of just one repository. - ---- - -## Github.GetPullRequest - -
- - -Get details of a pull request in a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Read), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. The name is not case sensitive. -- **`repo`** _(string, required)_ The name of the repository without the .git extension. The name is not case sensitive. -- **`pull_number`** _(integer, required)_ The number that identifies the pull request. -- **`include_diff_content`** _(boolean, optional, Defaults to `false`)_ If true, return the diff content of the pull request. - ---- - -## Github.UpdatePullRequest - -
- - -Update a pull request in a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. The name is not case sensitive. -- **`repo`** _(string, required)_ The name of the repository without the .git extension. The name is not case sensitive. -- **`pull_number`** _(integer, required)_ The number that identifies the pull request. -- **`title`** _(string, optional)_ The title of the pull request. -- **`body`** _(string, optional)_ The contents of the pull request. -- **`state`** _(enum ([PRState](#prstate)), optional)_ State of this Pull Request. Either open or closed. -- **`base`** _(string, optional)_ The name of the branch you want your changes pulled into. -- **`maintainer_can_modify`** _(boolean, optional)_ Indicates whether maintainers can modify the pull request. - ---- - -## Github.ListPullRequestCommits - -
- - -List commits (from oldest to newest) on a pull request in a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Read), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. The name is not case sensitive. -- **`repo`** _(string, required)_ The name of the repository without the .git extension. The name is not case sensitive. -- **`pull_number`** _(integer, required)_ The number that identifies the pull request. -- **`per_page`** _(integer, optional, Defaults to `30`)_ The number of results per page (max 100). -- **`page`** _(integer, optional, Defaults to `1`)_ The page number of the results to fetch. - ---- - -## Github.CreateReplyForReviewComment - -
- - -Create a reply to a review comment for a pull request in a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. The name is not case sensitive. -- **`repo`** _(string, required)_ The name of the repository without the .git extension. The name is not case sensitive. -- **`pull_number`** _(integer, required)_ The number that identifies the pull request. -- **`comment_id`** _(integer, required)_ The unique identifier of the comment to reply to. -- **`body`** _(string, required)_ The text of the reply comment. - ---- - -## Github.ResolveReviewThread - -
- - -Resolve or unresolve a pull request review conversation thread. - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`thread_id`** _(string, required)_ The GraphQL Node ID of the review thread. -- **`resolved`** _(boolean, optional, Defaults to `true`)_ Whether to resolve or unresolve the thread. - ---- - -## Github.ListReviewCommentsOnPullRequest - -
- - -List review comments on a pull request in a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Read), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. The name is not case sensitive. -- **`repo`** _(string, required)_ The name of the repository without the .git extension. The name is not case sensitive. -- **`pull_number`** _(integer, required)_ The number that identifies the pull request. -- **`sort`** _(enum ([ReviewCommentSortProperty](#reviewcommentsortproperty)), optional, Defaults to `'created'`)_ The property to sort the results by. Can be one of: `created`, `updated`. -- **`direction`** _(enum ([SortDirection](#sortdirection)), optional, Defaults to `'desc'`)_ The direction to sort results. Can be one of: `asc`, `desc`. -- **`since`** _(string, optional)_ Only show results that were last updated after the given time. This is a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ. -- **`per_page`** _(integer, optional, Defaults to `30`)_ The number of results per page (max 100). -- **`page`** _(integer, optional, Defaults to `1`)_ The page number of the results to fetch. -- **`include_extra_data`** _(boolean, optional, Defaults to `false`)_ If true, return all the data available about the pull requests. This is a large payload and may impact performance - use with caution. - ---- - -## Github.CreateReviewComment - -
- - -Create a review comment for a pull request in a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Write), Metadata (Read) - - - - **Important**: Line numbers must be part of the PR diff (changed lines only). If the line wasn't changed in the PR, the comment will fail. - - **Tip**: Use `subject_type='file'` to comment on the entire file if unsure about line positions. - - -If the subject_type is not 'file', then the start_line and end_line parameters are required. If the subject_type is 'file', then the start_line and end_line parameters are ignored. If the commit_id is not provided, the latest commit SHA of the PR's base branch will be used. - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. The name is not case sensitive. -- **`repo`** _(string, required)_ The name of the repository without the .git extension. The name is not case sensitive. -- **`pull_number`** _(integer, required)_ The number that identifies the pull request. -- **`body`** _(string, required)_ The text of the review comment. -- **`path`** _(string, required)_ The relative path to the file that necessitates a comment. -- **`commit_id`** _(string, optional)_ The SHA of the commit needing a comment. If not provided, the latest commit SHA of the PR's base branch will be used. -- **`start_line`** _(integer, optional)_ The start line of the range of lines in the pull request diff that the comment applies to. Required unless 'subject_type' is 'file'. -- **`end_line`** _(integer, optional)_ The end line of the range of lines in the pull request diff that the comment applies to. Required unless 'subject_type' is 'file'. -- **`side`** _(enum ([DiffSide](#diffside)), optional, Defaults to `'RIGHT'`)_ The side of the diff that the pull request's changes appear on. Use LEFT for deletions that appear in red. Use RIGHT for additions that appear in green or unchanged lines that appear in white and are shown for context. -- **`start_side`** _(string, optional)_ The starting side of the diff that the comment applies to. -- **`subject_type`** _(enum ([ReviewCommentSubjectType](#reviewcommentsubjecttype)), optional, Defaults to `'FILE'`)_ The type of subject that the comment applies to. Can be one of: file, hunk, or line. - ---- - -## Github.CountStargazers - -
- - -Count the number of stargazers (stars) for a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The owner of the repository. -- **`name`** _(string, required)_ The name of the repository. - ---- - -## Github.ListOrgRepositories - -
- - -List repositories for the specified GitHub organization. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) + Organization → Members (Read) - - -**Parameters** - -- **`org`** _(string, required)_ The organization name. The name is not case sensitive. -- **`repo_type`** _(enum ([RepoType](#repotype)), optional, Defaults to `'ALL'`)_ The types of repositories to return. -- **`sort`** _(enum ([RepoSortProperty](#reposortproperty)), optional, Defaults to `'CREATED'`)_ The property to sort the results by. -- **`sort_direction`** _(enum ([SortDirection](#sortdirection)), optional, Defaults to `'ASC'`)_ The order to sort by. -- **`per_page`** _(integer, optional, Defaults to `30`)_ The number of results per page. -- **`page`** _(integer, optional, Defaults to `1`)_ The page number of the results to fetch. - ---- - -## Github.GetRepository - -
- - -Get detailed information about a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. The name is not case sensitive. -- **`repo`** _(string, required)_ The name of the repository without the .git extension. The name is not case sensitive. - ---- - -## Github.ListRepositoryActivities - -
- - -List repository activities such as pushes, merges, force pushes, and branch changes. Retrieves a detailed history of changes to a repository, such as pushes, merges, force pushes, and branch changes, and associates these changes with commits and users. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. The name is not case sensitive. -- **`repo`** _(string, required)_ The name of the repository without the .git extension. The name is not case sensitive. -- **`direction`** _(enum ([SortDirection](#sortdirection)), optional, Defaults to `'DESC'`)_ The direction to sort the results by. -- **`per_page`** _(integer, optional, Defaults to `30`)_ The number of results per page (max 100). -- **`before`** _(string, optional)_ A cursor (unique identifier, e.g., a SHA of a commit) to search for results before this cursor. -- **`after`** _(string, optional)_ A cursor (unique identifier, e.g., a SHA of a commit) to search for results after this cursor. -- **`ref`** _(string, optional)_ The Git reference for the activities you want to list. Can be formatted as `refs/heads/BRANCH_NAME` or just `BRANCH_NAME`. -- **`actor`** _(string, optional)_ The GitHub username to filter by the actor who performed the activity. -- **`time_period`** _(enum ([RepoTimePeriod](#repotimeperiod)), optional)_ The time period to filter by. -- **`activity_type`** _(enum ([ActivityType](#activitytype)), optional)_ The activity type to filter by. - ---- - -## Github.ListReviewCommentsInARepository - -
- - -List review comments in a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Read), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. The name is not case sensitive. -- **`repo`** _(string, required)_ The name of the repository without the .git extension. The name is not case sensitive. -- **`sort`** _(enum ([ReviewCommentSortProperty](#reviewcommentsortproperty)), optional, Defaults to `'created'`)_ The property to sort the results by. Can be one of: created, updated. -- **`direction`** _(enum ([SortDirection](#sortdirection)), optional, Defaults to `'DESC'`)_ The direction to sort results. Ignored without sort parameter. Can be one of: asc, desc. -- **`since`** _(string, optional)_ Only show results that were last updated after the given time. This is a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ. -- **`per_page`** _(integer, optional, Defaults to `30`)_ The number of results per page (max 100). -- **`page`** _(integer, optional, Defaults to `1`)_ The page number of the results to fetch. -- **`include_extra_data`** _(boolean, optional, Defaults to `false`)_ If true, return all the data available about the pull requests. This is a large payload and may impact performance - use with caution. - ---- - -## Github.CreatePullRequest - -
- - -Create a new pull request in a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`title`** _(string, required)_ The title of the pull request. -- **`head`** _(string, required)_ The branch where your changes are (e.g., "feature/auth"). For cross-repo PRs: "username:branch". -- **`base`** _(string, required)_ The branch you want changes pulled into (e.g., "main"). -- **`body`** _(string, optional)_ The contents/description of the pull request. -- **`draft`** _(boolean, optional, Defaults to `false`)_ Create as a draft pull request. -- **`maintainer_can_modify`** _(boolean, optional, Defaults to `true`)_ Allow maintainers to modify the PR branch. -- **`issue`** _(integer, optional)_ Issue number to auto-link. Will prepend "Closes #(issue)" to the PR body. -- **`reviewers`** _(array of strings, optional)_ List of user logins to request reviews from. -- **`team_reviewers`** _(array of strings, optional)_ List of team slugs to request reviews from. - ---- - -## Github.MergePullRequest - -
- - -Merge a pull request in a GitHub repository. - - - **GitHub App Permissions**: Repository → Contents (Read & Write), Pull requests (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`pull_number`** _(integer, required)_ The number that identifies the pull request. -- **`merge_method`** _(enum ([MergeMethod](#mergemethod)), optional, Defaults to `merge`)_ The merge method to use (merge, squash, rebase). -- **`commit_title`** _(string, optional)_ Title for the merge commit. -- **`commit_message`** _(string, optional)_ Extra detail for the merge commit message. -- **`sha`** _(string, optional)_ Expected head SHA to ensure merge safety. Merge fails if SHA doesn't match. -- **`delete_branch`** _(boolean, optional, Defaults to `false`)_ Delete the head branch after successful merge. - ---- - -## Github.SubmitPullRequestReview - -
- - -Submit a review for a pull request (approve, request changes, or comment). - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`pull_number`** _(integer, required)_ The number that identifies the pull request. -- **`event`** _(enum ([ReviewEvent](#reviewevent)), required)_ The review action (APPROVE, REQUEST_CHANGES, COMMENT). -- **`body`** _(string, optional)_ The body text of the review. Required when event is REQUEST_CHANGES or COMMENT. - ---- - -## Github.ManagePullRequest - -
- - -Update properties of a pull request (title, body, state, base branch). - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`pull_number`** _(integer, required)_ The number that identifies the pull request. -- **`title`** _(string, optional)_ New title for the pull request. -- **`body`** _(string, optional)_ New body for the pull request. -- **`append_body`** _(boolean, optional, Defaults to `false`)_ Append to existing body instead of replacing. -- **`state`** _(enum ([PRState](#prstate)), optional)_ State of the pull request. -- **`base`** _(string, optional)_ The name of the branch to change the base to. - ---- - -## Github.ManagePullRequestReviewers - -
- - -Add or remove reviewers from a pull request. - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`pull_number`** _(integer, required)_ The number that identifies the pull request. -- **`add_reviewers`** _(array of strings, optional)_ List of user logins to add as reviewers. -- **`add_team_reviewers`** _(array of strings, optional)_ List of team slugs to add as reviewers. -- **`remove_reviewers`** _(array of strings, optional)_ List of user logins to remove as reviewers. -- **`remove_team_reviewers`** _(array of strings, optional)_ List of team slugs to remove as reviewers. - ---- - -## Github.AssignPullRequestUser - -
- - -Assign a user to a pull request with intelligent search and fuzzy matching. - - - **GitHub App Permissions**: Repository → Contents (Read), Issues (Write), Pull requests (Read), Metadata (Read) + Organization → Members (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`pull_number`** _(integer, required)_ The number that identifies the pull request. -- **`assignee_identifier`** _(string, required)_ The user identifier (username, email, name, or ID). -- **`search_mode`** _(enum ([UserSearchMode](#usersearchmode)), required)_ How to interpret the assignee_identifier. -- **`auto_accept_matches`** _(boolean, optional, Defaults to `false`)_ Auto-accept fuzzy matches above 0.9 confidence. - ---- - -## Github.CheckPullRequestMergeStatus - -
- - -Check if a pull request is ready to merge without attempting the merge. - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Read), Metadata (Read), Statuses (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`pull_number`** _(integer, required)_ The number that identifies the pull request. -- **`include_check_details`** _(boolean, optional, Defaults to `false`)_ Include individual check run details in the response. - ---- - -## Github.ListProjects - -
- - -List Projects V2 across organization or user scopes. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) + Organization → Projects (Read), Members (Read) - - **Note**: Works with Projects V2 only (not Classic Projects). - - -**Parameters** - -- **`search_mode`** _(enum ([ProjectLookupMode](#projectlookupmode)), required)_ Select search by number or name. -- **`scope_target`** _(enum ([ProjectScopeTarget](#projectscopetarget)), required)_ Where the project lives (organization, user, all). -- **`scope_identifier`** _(string, required)_ Owner reference (org name or username). -- **`project_identifier`** _(string, optional)_ Project number or title. -- **`query_filter`** _(string, optional)_ Filter projects (e.g., "template"). -- **`state`** _(enum ([ProjectState](#projectstate)), optional)_ Project state filter. -- **`per_page`** _(integer, optional, Defaults to `30`)_ Items per page (max 100). -- **`cursor`** _(string, optional)_ Cursor for next page. -- **`auto_accept_matches`** _(boolean, optional, Defaults to `false`)_ Auto-accept fuzzy matches above 0.9 confidence. - ---- - -## Github.ListProjectItems - -
- - -List items for a Projects V2 project with optional filtering. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) + Organization → Projects (Read), Members (Read) - - -**Parameters** - -- **`project_search_mode`** _(enum ([ProjectLookupMode](#projectlookupmode)), required)_ Select project lookup by number or name. -- **`project_identifier`** _(string, required)_ Project number or title. -- **`scope_target`** _(enum ([ProjectScopeTarget](#projectscopetarget)), required)_ Where the project lives. -- **`scope_identifier`** _(string, required)_ Owner reference. -- **`filter_assignee`** _(string, optional)_ Filter by assignee ("@me" or username). -- **`filter_status`** _(string, optional)_ Filter by status field value. -- **`filter_labels`** _(array of strings, optional)_ Filter by labels. -- **`filter_is_open`** _(boolean, optional)_ Filter by open/closed state. -- **`advanced_query`** _(string, optional)_ Advanced query (overrides filters). -- **`per_page`** _(integer, optional, Defaults to `30`)_ Items per page (max 100). -- **`cursor`** _(string, optional)_ Cursor for next page. -- **`auto_accept_matches`** _(boolean, optional, Defaults to `false`)_ Auto-accept fuzzy matches above 0.9 confidence. - ---- - -## Github.SearchProjectItem - -
- - -Search for a specific item in a Projects V2 project. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) + Organization → Projects (Read), Members (Read) - - -**Parameters** - -- **`project_search_mode`** _(enum ([ProjectLookupMode](#projectlookupmode)), required)_ Select project lookup by number or name. -- **`project_identifier`** _(string, required)_ Project number or title. -- **`item_search_mode`** _(enum ([ProjectItemLookupMode](#projectitemlookupmode)), required)_ Select item lookup by ID or title. -- **`item_identifier`** _(string, required)_ Item ID or title. -- **`scope_target`** _(enum ([ProjectScopeTarget](#projectscopetarget)), required)_ Where the project lives. -- **`scope_identifier`** _(string, required)_ Owner reference. -- **`auto_accept_matches`** _(boolean, optional, Defaults to `false`)_ Auto-accept fuzzy matches above 0.9 confidence. - ---- - -## Github.UpdateProjectItem - -
- - -Update field values for an item in a Projects V2 project. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) + Organization → Projects (Read & Write), Members (Read) - - -**Parameters** - -- **`project_search_mode`** _(enum ([ProjectLookupMode](#projectlookupmode)), required)_ Select project lookup by number or name. -- **`project_identifier`** _(string, required)_ Project number or title. -- **`item_search_mode`** _(enum ([ProjectItemLookupMode](#projectitemlookupmode)), required)_ Select item lookup by ID or title. -- **`item_identifier`** _(string, required)_ Item ID or title. -- **`scope_target`** _(enum ([ProjectScopeTarget](#projectscopetarget)), required)_ Where the project lives. -- **`scope_identifier`** _(string, required)_ Owner reference. -- **`field_updates`** _(object, required)_ Field updates (e.g., `{"Status": "Done", "Priority": "High"}`). -- **`auto_accept_matches`** _(boolean, optional, Defaults to `false`)_ Auto-accept fuzzy matches above 0.9 confidence. - ---- - -## Github.ListProjectFields - -
- - -List all custom fields configured for a Projects V2 project. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) + Organization → Projects (Read), Members (Read) - - -**Parameters** - -- **`project_search_mode`** _(enum ([ProjectLookupMode](#projectlookupmode)), required)_ Select project lookup by number or name. -- **`project_identifier`** _(string, required)_ Project number or title. -- **`scope_target`** _(enum ([ProjectScopeTarget](#projectscopetarget)), required)_ Where the project lives. -- **`scope_identifier`** _(string, required)_ Owner reference. -- **`auto_accept_matches`** _(boolean, optional, Defaults to `false`)_ Auto-accept fuzzy matches above 0.9 confidence. - ---- - -## Github.ListRepositoryCollaborators - -
- - -List users and teams who have access to a repository and can be requested as reviewers. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) + Organization → Members (Read) - - **Detail levels**: basic (fast), include_org_members (default), full_profiles (slow, enriches with emails/names) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`affiliation`** _(enum ([CollaboratorAffiliation](#collaboratoraffiliation)), optional)_ Filter by affiliation type. -- **`permission`** _(enum ([CollaboratorPermission](#collaboratorpermission)), optional)_ Filter by permission level. -- **`detail_level`** _(enum ([CollaboratorDetailLevel](#collaboratordetaillevel)), optional, Defaults to `include_org_members`)_ Detail level to include. -- **`include_teams`** _(boolean, optional, Defaults to `true`)_ Include teams that have access to the repository. -- **`per_page`** _(integer, optional, Defaults to `30`)_ Number of collaborators per page (max 100). -- **`page`** _(integer, optional, Defaults to `1`)_ Page number of results to fetch. - ---- - -## Github.SearchMyRepos - -
- - -Search repositories accessible to the authenticated user with fuzzy matching. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) + Organization → Members (Read) - - -**Parameters** - -- **`repo_name`** _(string, required)_ Repository name or partial name to search for. -- **`scope`** _(enum ([RepoSearchScope](#reposearchscope)), optional, Defaults to `all`)_ Where to search (all, personal, organization). -- **`organization`** _(string, optional)_ Organization name when scope is "organization". -- **`auto_accept_matches`** _(boolean, optional, Defaults to `false`)_ Auto-accept fuzzy matches above 0.9 confidence. -- **`include_recent_branches`** _(integer, optional, Defaults to `10`)_ Include up to this many recent branches per repository (0-30). - - ---- - -## Github.CreateBranch - -
- - -Create a new branch in a repository. - - - **GitHub App Permissions**: Repository → Contents (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`branch`** _(string, required)_ The name of the new branch. -- **`from_branch`** _(string, optional)_ The name of the branch to branch off of. Default: repository default branch. - ---- - -## Github.GetFileContents - -
- - -Get the contents of a file in a repository. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`path`** _(string, required)_ The content path. -- **`ref`** _(string, optional)_ The name of the commit/branch/tag. Default: the repository's default branch. - ---- - -## Github.CreateOrUpdateFile - -
- - -Create or update a file in a repository. - - - **GitHub App Permissions**: Repository → Contents (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`path`** _(string, required)_ The content path. -- **`content`** _(string, required)_ The new content of the file. -- **`message`** _(string, required)_ The commit message. -- **`branch`** _(string, required)_ The branch name. -- **`sha`** _(string, optional)_ The blob SHA of the file being replaced. Required if updating. - ---- - -## Github.UpdateFileLines - -
- - -Replace a block of lines within a file (1-indexed, inclusive). - - - **GitHub App Permissions**: Repository → Contents (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`path`** _(string, required)_ The content path. -- **`branch`** _(string, required)_ The branch to update. -- **`start_line`** _(integer, required)_ The first (1-indexed) line number to replace. Must be <= end_line. -- **`end_line`** _(integer, required)_ The last (1-indexed) line number to replace. Must exist in the file. -- **`new_content`** _(string, required)_ The replacement lines (no need to include trailing newline). -- **`message`** _(string, required)_ The commit message describing the change. - ---- - -## Github.ListRepositoryLabels - -
- - -List all labels defined in a repository. - - - **GitHub App Permissions**: Repository → Issues (Read), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`per_page`** _(integer, optional, Defaults to `100`)_ The number of results per page (max 100). -- **`page`** _(integer, optional, Defaults to `1`)_ The page number of the results to fetch. - ---- - -## Github.ManageLabels - -
- - -Add or remove labels from an issue or pull request. Supports fuzzy matching for typo tolerance. - - - **GitHub App Permissions**: Repository → Issues (Write) or Pull requests (Write), Metadata (Read) - - -**Parameters** - -- **`owner`** _(string, required)_ The account owner of the repository. -- **`repo`** _(string, required)_ The name of the repository. -- **`number`** _(integer, required)_ The number that identifies the issue or pull request. -- **`entity_type`** _(enum ([LabelEntityType](#labelentitytype)), required)_ The type of entity (issue or pull_request). -- **`add_labels`** _(array of strings, optional)_ List of label names to add. Supports fuzzy matching. -- **`remove_labels`** _(array of strings, optional)_ List of label names to remove. Supports fuzzy matching. -- **`auto_accept_matches`** _(boolean, optional, Defaults to `false`)_ Auto-accept fuzzy matches above 0.9 confidence. - ---- - -## Github.WhoAmI - -
- - -Get information about the authenticated GitHub user, including profile, organizations, and teams. - - - **GitHub App Permissions**: Organization → Members (Read) + User Permissions → Read user profile - - -**Parameters** - -_No parameters required for this tool._ - ---- - -## Github.GetUserRecentActivity - -
- - -Get user's recently created pull requests and issues across all repositories. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) + User Permissions → Read user profile - - -**Parameters** - -- **`days`** _(integer, optional, Defaults to `30`)_ Number of days to look back. -- **`per_page`** _(integer, optional, Defaults to `10`)_ Number of items per category (PRs and issues). Max 50. - ---- - -## Github.GetUserOpenItems - -
- - -Get user's currently open pull requests and issues across all repositories. - - - **GitHub App Permissions**: Repository → Contents (Read), Metadata (Read) + User Permissions → Read user profile - - -**Parameters** - -- **`per_page`** _(integer, optional, Defaults to `30`)_ Number of items per category (PRs and issues). Max 100. - ---- - -## Github.GetReviewWorkload - -
- - -Get pull requests awaiting review by the authenticated user. - - - **GitHub App Permissions**: Repository → Contents (Read), Pull requests (Read), Metadata (Read) + User Permissions → Read user profile - - -**Parameters** - -_No parameters required for this tool._ - ---- - -## Github.GetNotificationSummary - -
- - -Get a summary of GitHub notifications grouped by reason, repository, and type. - - - **Special Requirements**: GitHub Apps **cannot** access the notifications API. - - **Required**: Classic Personal Access Token with `notifications` scope. - - 👉 [How to create a Classic PAT](https://github.com/settings/tokens) - Create with `notifications` scope only - - -**Parameters** - -_No parameters required for this tool._ - ---- - -## Github.ListNotifications - -
- - -List GitHub notifications with pagination. - - - **Special Requirements**: GitHub Apps **cannot** access the notifications API. - - **Required**: Classic Personal Access Token with `notifications` scope. - - 👉 [How to create a Classic PAT](https://github.com/settings/tokens) - Create with `notifications` scope only - - -**Parameters** - -- **`page`** _(integer, optional, Defaults to `1`)_ Page number to fetch. -- **`per_page`** _(integer, optional, Defaults to `30`)_ Number of notifications per page (max 100). -- **`all_notifications`** _(boolean, optional, Defaults to `false`)_ Include read notifications. -- **`participating`** _(boolean, optional, Defaults to `false`)_ Only show notifications user is participating in. - ---- - -## Configuration & Setup - -### Authentication - - - **Critical**: This MCP Server uses **GitHub Apps** authentication, not OAuth Apps. - - You **must** create a GitHub App to use this server. OAuth Apps are not supported. - - -The Arcade GitHub MCP Server uses the [GitHub auth provider](/references/auth-providers/github) to connect to users' GitHub accounts. - -**For Arcade Cloud:** -- No configuration needed -- Your users will see `Arcade` as the requesting application -- All tools work out of the box - -**For Self-Hosted:** -- You must [create your own GitHub App](/references/auth-providers/github#creating-a-github-app) -- [Configure the GitHub auth provider](/references/auth-providers/github#configuring-github-auth-in-arcade) with your app credentials -- Your users will see your application name - - - **New to GitHub Apps?** Read [Why Arcade Uses GitHub Apps](/references/auth-providers/github#why-arcade-uses-github-apps-not-oauth-apps) - to understand the security and compliance benefits. - - -### Secrets Setup - -All tools require secrets to be configured in Arcade Dashboard. - -**Steps:** - -1. Go to [Arcade Dashboard](https://api.arcade.dev/dashboard) -2. Navigate to **Secrets** in the left sidebar -3. Click **Add Secret** -4. Add the following secrets: - -| Secret Name | Value | Required For | -|-------------|-------|--------------| -| `GITHUB_SERVER_URL` | `https://api.github.com` (default for GitHub.com) | All tools | -| `GITHUB_CLASSIC_PERSONAL_ACCESS_TOKEN` | Classic PAT with `notifications` scope | Notifications tools only | - - - **Default**: If `GITHUB_SERVER_URL` is not configured, it defaults to `https://api.github.com` (GitHub.com) - - **GitHub Enterprise Users**: Set `GITHUB_SERVER_URL` to your Enterprise server's API endpoint (e.g., `https://github.yourcompany.com/api/v3`). Note that Enterprise uses `/api/v3` path. See [GitHub Enterprise Support](#github-enterprise-support) for details. - - - - **For Notifications Tools**: Create a classic Personal Access Token at [github.com/settings/tokens](https://github.com/settings/tokens) with only the `notifications` scope checked. GitHub Apps cannot access the notifications API. - - ---- - -## Enumerations Reference - -Below is a reference of enumerations used by tools in this server. Each enum is linked from the tool documentation above. - -### PRSortProperty - -Sort properties for pull requests (`list_pull_requests`): - -- **`CREATED`**: `created` - Sort by creation date -- **`UPDATED`**: `updated` - Sort by last update date -- **`POPULARITY`**: `popularity` - Sort by number of comments/reactions -- **`LONG_RUNNING`**: `long-running` - Sort by duration PR has been open - -### PRState - -Pull request state filter: - -- **`OPEN`**: `open` - Open pull requests only -- **`CLOSED`**: `closed` - Closed pull requests only -- **`ALL`**: `all` - All pull requests - -### IssueState - -Issue state filter: - -- **`OPEN`**: `open` - Open issues only -- **`CLOSED`**: `closed` - Closed issues only -- **`ALL`**: `all` - All issues - -### IssueSortProperty - -Sort properties for issues (`list_issues`): - -- **`CREATED`**: `created` - Sort by creation date -- **`UPDATED`**: `updated` - Sort by last update date -- **`COMMENTS`**: `comments` - Sort by number of comments - -### ReviewCommentSortProperty - -Sort properties for review comments: - -- **`CREATED`**: `created` - Sort by creation date -- **`UPDATED`**: `updated` - Sort by last update date - -### ReviewCommentSubjectType - -Review comment subject type (`create_review_comment`): - -- **`FILE`**: `file` - Comment on entire file (use if unsure about line numbers) -- **`LINE`**: `line` - Comment on specific lines in diff - -### DiffSide - -Side of the diff for review comments: - -- **`LEFT`**: `LEFT` - For deletions (red) -- **`RIGHT`**: `RIGHT` - For additions (green) or unchanged lines (context) - -### SortDirection - -Sort direction (used across multiple tools): - -- **`ASC`**: `asc` - Ascending order (oldest first) -- **`DESC`**: `desc` - Descending order (newest first) - -### MergeMethod - -PR merge methods (`merge_pull_request`): - -- **`MERGE`**: `merge` - Create merge commit (preserves all commits) -- **`SQUASH`**: `squash` - Squash commits into one -- **`REBASE`**: `rebase` - Rebase and merge (linear history) - -### ReviewEvent - -Review actions (`submit_pull_request_review`): - -- **`APPROVE`**: `APPROVE` - Approve the pull request -- **`REQUEST_CHANGES`**: `REQUEST_CHANGES` - Request changes before merging -- **`COMMENT`**: `COMMENT` - Comment without approval/rejection - -### UserSearchMode - -User search modes (`assign_pull_request_user`): - -- **`username`**: `username` - Search by GitHub username -- **`email`**: `email` - Search by email address -- **`name`**: `name` - Search by display name -- **`id`**: `id` - Search by numeric user ID - -### RepoType - -Repository types (`list_org_repositories`): - -- **`ALL`**: `all` - All repositories -- **`PUBLIC`**: `public` - Public repositories only -- **`PRIVATE`**: `private` - Private repositories only -- **`FORKS`**: `forks` - Forked repositories only -- **`SOURCES`**: `sources` - Source repositories (not forks) -- **`MEMBER`**: `member` - Repositories with explicit permission - -### RepoSortProperty - -Repository sort properties: - -- **`CREATED`**: `created` - Sort by creation date -- **`UPDATED`**: `updated` - Sort by last update date -- **`PUSHED`**: `pushed` - Sort by last push date -- **`FULL_NAME`**: `full_name` - Sort alphabetically by full name - -### RepoSearchScope - -Repository search scope (`search_my_repos`): - -- **`ALL`**: `all` - All accessible repositories -- **`PERSONAL`**: `personal` - Personal repositories only -- **`ORGANIZATION`**: `organization` - Organization repositories only - -### RepoTimePeriod - -Time periods for activity filtering: - -- **`DAY`**: `day` - Last day -- **`WEEK`**: `week` - Last week -- **`MONTH`**: `month` - Last month -- **`QUARTER`**: `quarter` - Last quarter -- **`YEAR`**: `year` - Last year - -### ActivityType - -Repository activity types: - -- **`PUSH`**: `push` - Regular push events -- **`FORCE_PUSH`**: `force_push` - Force push events -- **`BRANCH_CREATION`**: `branch_creation` - Branch creation -- **`BRANCH_DELETION`**: `branch_deletion` - Branch deletion -- **`PR_MERGE`**: `pr_merge` - PR merge events -- **`MERGE_QUEUE_MERGE`**: `merge_queue_merge` - Merge queue events - -### CollaboratorAffiliation - -Collaborator affiliation types: - -- **`OUTSIDE`**: `outside` - Outside collaborators -- **`DIRECT`**: `direct` - Direct collaborators -- **`ALL`**: `all` - All collaborators - -### CollaboratorPermission - -Permission levels: - -- **`PULL`**: `pull` - Read-only access -- **`TRIAGE`**: `triage` - Read and triage access -- **`PUSH`**: `push` - Read and write access -- **`MAINTAIN`**: `maintain` - Read, write, and maintain access -- **`ADMIN`**: `admin` - Full administrative access - -### CollaboratorDetailLevel - -Detail level for collaborator listing: - -- **`BASIC`**: `basic` - Only explicit collaborators (fast) -- **`INCLUDE_ORG_MEMBERS`**: `include_org_members` - Add org members (default) -- **`FULL_PROFILES`**: `full_profiles` - Add org members + enrich with emails/names (slow) - -### ProjectScopeTarget - -Project scope: - -- **`ORGANIZATION`**: `organization` - Organization-owned projects -- **`USER`**: `user` - User-owned projects -- **`ALL`**: `all` - All accessible projects - -### ProjectLookupMode - -Project lookup method: - -- **`NUMBER`**: `number` - Find by project number -- **`NAME`**: `name` - Find by project name/title - -### ProjectItemLookupMode - -Project item lookup method: - -- **`ID`**: `id` - Find by item ID -- **`TITLE`**: `title` - Find by item title - -### ProjectState - -Project state filter: - -- **`OPEN`**: `open` - Open projects only -- **`CLOSED`**: `closed` - Closed projects only -- **`ALL`**: `all` - All projects - -### LabelEntityType - -Entity type for label management: - -- **`ISSUE`**: `issue` - Issue -- **`PULL_REQUEST`**: `pull_request` - Pull Request - - diff --git a/app/en/resources/integrations/development/pagerduty-api/page.mdx b/app/en/resources/integrations/development/pagerduty-api/page.mdx deleted file mode 100644 index 0f48f3aa2..000000000 --- a/app/en/resources/integrations/development/pagerduty-api/page.mdx +++ /dev/null @@ -1,11514 +0,0 @@ -# PagerdutyApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The PagerDutyApi MCP Server offers a comprehensive suite of tools for managing incidents, services, and integrations within the PagerDuty platform. Users can leverage these tools to: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## PagerdutyApi.AssignTagsToPagerdutyEntity - -
- - -Assign tags to PagerDuty entities like policies, teams, or users. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **entity_type** (`string`, optional) Specify the entity type to tag. Options: 'users', 'teams', 'escalation_policies'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **resource_id** (`string`, optional) The unique identifier of the PagerDuty entity to assign tags to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetTagsByEntityId - -
- - -Retrieve tags for Users, Teams, or Escalation Policies. - -**Parameters** - -- **entity_id** (`string`, required) The unique identifier of the resource for which to retrieve tags. This ID corresponds to a specific User, Team, or Escalation Policy. -- **entity_type** (`string`, required) Specifies the type of entity (users, teams, escalation_policies) to retrieve related tags for. -- **include_total_in_response** (`boolean`, optional) Set to true to include the total number of results in the pagination response. -- **pagination_offset** (`integer`, optional) The offset position to start paginating search results. Useful for browsing through large sets of data. -- **results_per_page** (`integer`, optional) The number of results to return per page when retrieving tags. - -## PagerdutyApi.GetAccountAbilities - -
- - -Retrieve your account's available abilities by feature name. - -**Parameters** - -This tool does not take any parameters. - -## PagerdutyApi.CheckAbilityStatus - -
- - -Check if your account has a specific ability. - -**Parameters** - -- **resource_id** (`string`, required) The unique ID of the resource or ability to check on your account. - -## PagerdutyApi.ListAddons - -
- - -Retrieve all installed add-ons on your PagerDuty account. - -**Parameters** - -- **addon_type_filter** (`string`, optional) Filters the results, showing only Add-ons of the specified type, such as 'full_page_addon' or 'incident_show_addon'. -- **filter_by_service_ids** (`array[string]`, optional) An array of service IDs to filter results, showing only Add-ons for these services. -- **include_additional_models** (`string`, optional) Specify additional models to include in the response, such as 'services'. -- **include_total_field** (`boolean`, optional) Set to true to include the total count of results in the response, which can affect response times. -- **pagination_start_offset** (`integer`, optional) Offset to start pagination of search results. This determines where to begin the list of add-ons. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. - -## PagerdutyApi.InstallPagerdutyAddon - -
- - -Install an add-on for your PagerDuty account. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetAddonDetails - -
- - -Retrieve detailed information about a PagerDuty add-on. - -**Parameters** - -- **addon_id** (`string`, required) The unique ID of the PagerDuty add-on to retrieve details for. - -## PagerdutyApi.RemoveAddon - -
- - -Remove an existing add-on from PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier for the add-on to be removed. - -## PagerdutyApi.UpdatePagerdutyAddon - -
- - -Update an existing add-on in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier for the add-on resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListAlertGroupingSettings - -
- - -Retrieve all alert grouping settings. - -**Parameters** - -- **include_total_in_response** (`boolean`, optional) Set to true to include the total number of records in the response; default is null for faster responses. -- **pagination_cursor_after** (`string`, optional) Cursor to retrieve the next page of results; used if additional data pages exist. -- **previous_page_cursor** (`string`, optional) Cursor to retrieve the previous page; use only if not on the first page. -- **results_per_page** (`integer`, optional) Specify the number of alert grouping settings to display per page. -- **service_id_list** (`array[string]`, optional) An array of service IDs to filter results. Only results for these IDs will be returned. - -## PagerdutyApi.CreateAlertGroupingSetting - -
- - -Create a new Alert Grouping Setting in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetAlertGroupingSetting - -
- - -Retrieve an existing alert grouping setting. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier for the alert grouping setting you want to retrieve. - -## PagerdutyApi.DeleteAlertGroupingSetting - -
- - -Delete an existing alert grouping setting. - -**Parameters** - -- **alert_grouping_setting_id** (`string`, required) The ID of the alert grouping setting to be deleted. This identifies the specific resource in PagerDuty. - -## PagerdutyApi.UpdateAlertGroupingSetting - -
- - -Update an existing alert grouping setting in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The ID of the alert grouping setting to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetIncidentMetrics - -
- - -Retrieve aggregated metrics for PagerDuty incidents. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetEscalationPolicyMetrics - -
- - -Get aggregated incident metrics by escalation policy. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.FetchIncidentMetrics - -
- - -Get aggregated metrics across all escalation policies. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetIncidentAnalyticsMetrics - -
- - -Retrieve aggregated incident metrics by service over time. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetAggregatedIncidentMetrics - -
- - -Retrieve aggregated incident metrics across all services. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetTeamIncidentMetrics - -
- - -Fetch aggregated incident metrics by team and time unit. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetAnalyticsMetricsForAllTeams - -
- - -Fetches aggregated incident metrics across all teams. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetAnalyticsMetricsPdAdvanceUsage - -
- - -Retrieve aggregated metrics for PD Advance usage. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.RetrieveAnalyticsData - -
- - -Provides aggregated incident metrics for selected responders. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.FetchResponderTeamMetrics - -
- - -Fetch incident metrics for team responders. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetIncidentAnalytics - -
- - -Fetch enriched incident metrics and data from PagerDuty Analytics. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetEnrichedIncidentData - -
- - -Retrieve enriched incident metrics for a specific incident. - -**Parameters** - -- **incident_id** (`string`, required) The unique identifier for the incident to retrieve analytics for. - -## PagerdutyApi.GetIncidentResponseAnalytics - -
- - -Provides enriched responder data for a single incident. - -**Parameters** - -- **incident_id** (`string`, required) The ID of the incident to retrieve analytics for. -- **display_order** (`string`, optional) Specifies the order to display results: 'asc' for ascending, 'desc' for descending. Defaults to 'desc'. -- **order_results_by_column** (`string`, optional) Specify the column to use for ordering the results, such as 'requested_at'. -- **results_limit** (`integer`, optional) The number of results to include in each batch. Acceptable values range from 1 to 1000. -- **time_zone_for_results** (`string`, optional) The time zone to use for displaying the results. - -## PagerdutyApi.GetResponderIncidentAnalytics - -
- - -Retrieve enriched incident metrics for a specific responder. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **responder_id** (`string`, optional) The unique identifier of the responder whose incident metrics are to be retrieved. It is required to specify which responder's data is needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListAuditRecords - -
- - -Retrieve audit trail records from PagerDuty. - -**Parameters** - -- **action_filters** (`string`, optional) Filter the audit records by specific actions such as 'create', 'update', or 'delete'. -- **actor_type_filter** (`string`, optional) Specifies the type of actor to filter the audit records by. Acceptable values are 'user_reference', 'api_key_reference', or 'app_reference'. -- **end_date_range** (`string`, optional) Specifies the end date for the audit record search. Defaults to now if not specified and cannot exceed 31 days after the start date. -- **filter_by_actor_id** (`string`, optional) Filter audit records by actor ID. Requires `actor_type` to be specified. -- **method_truncated_token** (`string`, optional) Filter records by method truncated token. Requires 'method_type' parameter for qualification. -- **method_type_filter** (`string`, optional) Specify the method type for filtering audit records. Options include 'browser', 'oauth', 'api_token', 'identity_provider', and 'other'. -- **next_result_cursor** (`string`, optional) Use this to fetch the next set of results. Typically acquired from the `next_cursor` of the prior request. If not provided, it starts from the beginning of the result set. -- **record_limit** (`integer`, optional) Specifies the maximum number of audit records to return. It is either the requested limit or the API's maximum request size. -- **resource_type_filter** (`string`, optional) Filter records by specified root resource types such as users, teams, or services. -- **start_date** (`string`, optional) The start date for the search range. Defaults to 24 hours ago if not specified. - -## PagerdutyApi.CreateAutomationAction - -
- - -Create a script, process, or runbook automation action. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListAutomationActions - -
- - -Retrieve all automation actions with optional query filters. - -**Parameters** - -- **classification_filter** (`string`, optional) Filters results to include only those matching the specified classification, such as 'diagnostic' or 'remediation'. -- **filter_by_action_type** (`string`, optional) Filter results to include only those matching the specified action type. Accepts 'script' or 'process_automation'. -- **filter_by_name** (`string`, optional) Filters results to include actions matching the specified name using case insensitive substring matching. -- **filter_by_runner_id** (`string`, optional) Filter results to include actions linked to a specific runner. Use 'any' to include only those linked to any runner, excluding unlinked actions. -- **filter_by_service_id** (`string`, optional) Filters results to include only those actions associated with the specified service ID. -- **filter_by_team_id** (`string`, optional) Filters results to include actions associated with a specified team by providing its ID. -- **max_results** (`integer`, optional) Maximum number of results to return, limited by the API's maximum request size. -- **next_page_cursor** (`string`, optional) Cursor to request the next set of results, typically obtained from the previous response. - -## PagerdutyApi.GetAutomationAction - -
- - -Retrieve details of a specific automation action. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier for the automation action to retrieve. - -## PagerdutyApi.DeleteAutomationAction - -
- - -Delete an automation action by ID. - -**Parameters** - -- **resource_id** (`string`, required) The unique ID of the automation action to be deleted. Required for identifying the specific resource. - -## PagerdutyApi.UpdateAutomationAction - -
- - -Update an existing automation action. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier of the automation action to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.InvokeAutomationAction - -
- - -Triggers an automation action in PagerDuty. - -**Parameters** - -- **incident_id** (`string`, required) The ID of the incident associated with the automation action invocation. This ties the action to a specific incident. -- **resource_id** (`string`, required) The unique identifier for the resource to be invoked. -- **alert_id_metadata** (`string`, optional) The alert ID to be used in the invocation metadata for the automation action. This identifier specifies which alert is associated with the action. - -## PagerdutyApi.GetServiceReferencesForAutomationAction - -
- - -Retrieve services linked to a specific automation action. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier for the automation action resource. - -## PagerdutyApi.AssociateAutomationActionWithService - -
- - -Associate an Automation Action with a service. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier of the resource to be associated with the service. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetAutomationActionServiceAssociation - -
- - -Retrieve details of an Automation Action and service relation. - -**Parameters** - -- **resource_id** (`string`, required) The ID of the resource to retrieve details about. This identifies the specific Automation Action. -- **service_identifier** (`string`, required) The unique identifier for the service to retrieve its relation with the Automation Action. - -## PagerdutyApi.DisassociateAutomationActionFromService - -
- - -Disassociate an Automation Action from a service. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the resource to disassociate. -- **service_id** (`string`, required) The unique identifier of the service to be disassociated from the automation action. This should be provided as a string. - -## PagerdutyApi.AssociateAutomationActionWithTeam - -
- - -Associate an Automation Action with a team. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier of the resource to be associated with a team. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetTeamReferencesForAutomationAction - -
- - -Retrieve teams associated with a specific automation action. - -**Parameters** - -- **resource_id** (`string`, required) The ID of the Automation Action resource to retrieve associated teams for. - -## PagerdutyApi.DisassociateAutomationActionFromTeam - -
- - -Disassociate an automation action from a team in PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The ID of the automation action to disassociate from the team. -- **team_id** (`string`, required) The unique identifier of the team to be disassociated from an automation action. - -## PagerdutyApi.GetAutomationActionTeamAssociation - -
- - -Retrieve details of an Automation Action and team relationship. - -**Parameters** - -- **resource_id** (`string`, required) The unique ID of the resource (Automation Action) to retrieve details for. -- **team_id** (`string`, required) The unique identifier for the team associated with the Automation Action. - -## PagerdutyApi.ListAutomationActionInvocations - -
- - -Retrieve a list of automation action invocations. - -**Parameters** - -- **action_id** (`string`, optional) The unique identifier for the action to filter invocations by. -- **exclude_invocation_state** (`string`, optional) Filter out invocations not in the specified state. Supported states: prepared, created, sent, queued, running, aborted, completed, error, unknown. -- **filter_by_invocation_state** (`string`, optional) Filter the invocations by their state. Options include 'prepared', 'created', 'sent', 'queued', 'running', 'aborted', 'completed', 'error', or 'unknown'. -- **incident_id** (`string`, optional) The unique identifier for the incident. Use this to filter invocations related to a specific incident. - -## PagerdutyApi.GetAutomationActionInvocation - -
- - -Retrieve details of an automation action invocation. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the automation action resource to retrieve. - -## PagerdutyApi.CreateAutomationRunner - -
- - -Create a Process or Runbook Automation runner. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListAutomationActionRunners - -
- - -Retrieve a list of Automation Action runners. - -**Parameters** - -- **include_additional_data_elements** (`array[string]`, optional) List of additional data elements to include in the response. Each entry should be a string representing the type of data element to include. -- **next_cursor** (`string`, optional) Optional cursor for requesting the next set of results. Use the value obtained from a previous response's `next_cursor`. If not provided, retrieval starts from the beginning. -- **result_limit** (`integer`, optional) Specifies the maximum number of Automation Action runners to return in the response. The actual response will have a minimum of this limit or the maximum allowed by the API. -- **runner_name_filter** (`string`, optional) Filter results to include Automation Action runners with names matching this substring (case insensitive). - -## PagerdutyApi.GetAutomationActionRunner - -
- - -Retrieve details of an Automation Action runner by ID. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier for the Automation Action runner to retrieve details. - -## PagerdutyApi.UpdateAutomationActionRunner - -
- - -Update an Automation Action runner in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier of the Automation Action runner to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeleteAutomationActionRunner - -
- - -Delete an Automation Action runner by ID. - -**Parameters** - -- **runner_id** (`string`, required) The unique ID of the Automation Action runner to delete. - -## PagerdutyApi.AssociateRunnerWithTeam - -
- - -Associate a runner with a specified team. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) Unique identifier for the resource to associate a runner with a team in PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetRunnerTeamAssociations - -
- - -Retrieve team references linked to a specific runner. - -**Parameters** - -- **runner_resource_id** (`string`, required) The ID of the automation actions runner to retrieve associated team references for. - -## PagerdutyApi.DisassociateRunnerFromTeam - -
- - -Disassociate a runner from a team in PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The unique ID of the resource to be disassociated from the team. This is required to identify the runner. -- **team_id** (`string`, required) The unique identifier for the team from which the runner will be disassociated. - -## PagerdutyApi.GetRunnerTeamAssociation - -
- - -Retrieve details of a runner and team relationship. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier for the resource to fetch runner-team association details. -- **team_identifier** (`string`, required) The unique ID representing the team for which the runner relation details are needed. - -## PagerdutyApi.ListBusinessServices - -
- - -Retrieve a list of existing business services. - -**Parameters** - -- **include_total_count** (`boolean`, optional) Set to true to include the total count of results in the pagination response. -- **pagination_offset** (`integer`, optional) Offset to start pagination of the search results. Use this to skip a set number of entries. -- **results_per_page** (`integer`, optional) Specify the number of results to display on each page. - -## PagerdutyApi.CreateBusinessService - -
- - -Create a new business service in PagerDuty. - -**Parameters** - -- **business_service_description** (`string`, optional) Provide a description for the Business Service. This should clearly outline the service's purpose and scope. -- **business_service_name** (`string`, optional) The name of the Business Service to be created. -- **business_service_owner** (`string`, optional) The owner or point of contact for the business service. -- **team_id** (`string`, optional) The unique identifier for the team associated with the business service. - -## PagerdutyApi.GetBusinessServiceDetails - -
- - -Retrieve details about a specific Business Service. - -**Parameters** - -- **business_service_id** (`string`, required) The ID of the business service to retrieve details for. - -## PagerdutyApi.DeleteBusinessService - -
- - -Delete an existing Business Service in PagerDuty. - -**Parameters** - -- **business_service_id** (`string`, required) The unique identifier of the Business Service to be deleted. - -## PagerdutyApi.UpdateBusinessService - -
- - -Update the details of a business service in PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier for the business service that needs updating. -- **business_service_description** (`string`, optional) The description of the Business Service to be updated. -- **business_service_name** (`string`, optional) The name of the Business Service to be updated. -- **business_service_owner** (`string`, optional) Specify the owner of the Business Service. Typically, this should be the point of contact responsible for the service. -- **team_id** (`string`, optional) The ID of the team associated with the business service. - -## PagerdutyApi.SubscribeToBusinessService - -
- - -Subscribe your account to a PagerDuty business service. - -**Parameters** - -- **resource_id** (`string`, required) The ID of the business service resource to subscribe to. - -## PagerdutyApi.UnsubscribeFromBusinessService - -
- - -Unsubscribe an account from a business service. - -**Parameters** - -- **business_service_id** (`string`, required) The unique identifier of the business service to unsubscribe from. - -## PagerdutyApi.GetBusinessServiceSubscribers - -
- - -Retrieve notification subscribers of a business service. - -**Parameters** - -- **business_service_id** (`string`, required) The unique identifier for the business service to retrieve subscribers. - -## PagerdutyApi.SubscribeBusinessServiceEntities - -
- - -Subscribe entities to a specified business service. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier of the business service to which entities will be subscribed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.RetrieveImpactfulSupportingBusinessServices - -
- - -Retrieve top supporting Business Services by impact for a given service. - -**Parameters** - -- **service_id** (`string`, required) The unique identifier for the business service to retrieve its supporting services by impact. -- **include_additional_fields** (`string`, optional) Specify additional fields to include, such as highest impacting priority or total impacted count. Accepts 'services.highest_impacting_priority' or 'total_impacted_count'. -- **resource_ids** (`string`, optional) List of resource IDs to retrieve their supporting Business Services impacts. Include multiple IDs if needed. - -## PagerdutyApi.UnsubscribeBusinessServiceNotifications - -
- - -Unsubscribe users from Business Service notifications. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier of the resource to unsubscribe from. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetTopLevelImpactorsForBusinessServices - -
- - -Retrieve high-priority incidents impacting top-level business services. - -**Parameters** - -- **business_service_ids** (`string`, optional) List of business service IDs to fetch impactors for. - -## PagerdutyApi.GetBusinessServiceImpacts - -
- - -Get top-level Business Services sorted by highest impact. - -**Parameters** - -- **business_service_ids** (`string`, optional) A list of specific Business Service IDs to retrieve impact information for. -- **include_additional_fields** (`string`, optional) Specify additional fields to include, such as 'services.highest_impacting_priority' or 'total_impacted_count'. - -## PagerdutyApi.GetPriorityThresholds - -
- - -Retrieve priority threshold details for an account. - -**Parameters** - -This tool does not take any parameters. - -## PagerdutyApi.ClearBusinessServicePriorityThresholds - -
- - -Clear priority thresholds for business services. - -**Parameters** - -This tool does not take any parameters. - -## PagerdutyApi.SetBusinessServicePriority - -
- - -Set the priority threshold for a business service. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListChangeEvents - -
- - -Fetch a list of existing change events from PagerDuty. - -**Parameters** - -- **end_date_utc** (`string`, optional) The end date in UTC ISO 8601 format for the date range to search. Note: Must be a valid UTC string. -- **include_total_in_pagination** (`boolean`, optional) Set to true to include the total count of results in pagination responses, which is null by default. -- **integration_ids** (`array[string]`, optional) Array of integration IDs; filters results to these integrations. -- **pagination_offset** (`integer`, optional) Offset to start retrieving paginated search results. -- **results_per_page** (`integer`, optional) Specify the number of change event results to return per page. -- **start_date_time_utc** (`string`, optional) The start date and time for searching change events, in UTC ISO 8601 format. -- **team_ids** (`array[string]`, optional) Array of team IDs. Filters results to those teams. Requires 'teams' ability. - -## PagerdutyApi.SendChangeEvent - -
- - -Send a change event to PagerDuty's API. - -**Parameters** - -This tool does not take any parameters. - -## PagerdutyApi.GetChangeEventDetails - -
- - -Retrieve detailed information about a Change Event. - -**Parameters** - -- **change_event_id** (`string`, required) The unique identifier of the Change Event to retrieve details for. - -## PagerdutyApi.UpdateChangeEvent - -
- - -Updates an existing change event in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier of the change event to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListEscalationPolicies - -
- - -Retrieve all current escalation policies. - -**Parameters** - -- **additional_models_to_include** (`string`, optional) Array of models to include in the response. Options: 'services', 'teams', 'targets'. -- **filter_by_user_ids** (`array[string]`, optional) Filters the results to show only escalation policies where any specified user is a target. Provide an array of user IDs. -- **include_total_in_pagination** (`boolean`, optional) Set to true to include the total count of records in the pagination response. False ensures faster response times by setting it to null. -- **name_filter_query** (`string`, optional) A string to filter results by matching escalation policy names. -- **pagination_offset** (`integer`, optional) Offset to start pagination for search results. -- **results_per_page** (`integer`, optional) Specifies the number of escalation policy results to display per page. -- **sort_by_field** (`string`, optional) Specify the sorting field for results: 'name', 'name:asc', or 'name:desc'. -- **team_ids** (`array[string]`, optional) A list of team IDs to filter escalation policies. Requires 'teams' ability. - -## PagerdutyApi.CreateEscalationPolicy - -
- - -Create a new escalation policy in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **change_tracking_user_email** (`string`, optional) The optional email address of a user for change tracking. Must be associated with the account making the request. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetEscalationPolicy - -
- - -Retrieve details of an escalation policy and its rules. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the escalation policy to retrieve. -- **include_models** (`string`, optional) Specify additional models to include in the response, such as services, teams, or targets. - -## PagerdutyApi.DeleteEscalationPolicy - -
- - -Delete an existing escalation policy from PagerDuty. - -**Parameters** - -- **escalation_policy_id** (`string`, required) The ID of the escalation policy to be deleted. Ensure the policy is not in use by any services and that you have the required permissions. - -## PagerdutyApi.UpdateEscalationPolicy - -
- - -Update an existing escalation policy and its rules. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **escalation_policy_id** (`string`, optional) The unique identifier of the escalation policy to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetEscalationPolicyAuditRecords - -
- - -Retrieve audit records for a specific escalation policy. - -**Parameters** - -- **resource_id** (`string`, required) Identifier for the escalation policy to retrieve audit records for. -- **end_date_of_search** (`string`, optional) The end date of the search range. Defaults to now if not specified. Cannot exceed 31 days after the start date. -- **next_cursor** (`string`, optional) A string used to fetch the next set of results. Obtain from the `next_cursor` of the previous request. If empty, it starts from the beginning of the result set. -- **result_limit** (`integer`, optional) Specifies the maximum number of audit records to return. It's the smaller of the provided limit or the API's max size. -- **start_date_for_audit_search** (`string`, optional) The start date for the audit record search. If not specified, defaults to 24 hours ago. - -## PagerdutyApi.ListEventOrchestrations - -
- - -Retrieve all Global Event Orchestrations from an account. - -**Parameters** - -- **pagination_offset** (`integer`, optional) The starting point for pagination in search results, specified as an integer. -- **results_per_page** (`integer`, optional) The number of results to return per page when listing the Global Event Orchestrations. -- **sort_field_with_order** (`string`, optional) Specify the field and order (asc/desc) for sorting results. Options include: 'name:asc', 'name:desc', 'routes:asc', 'routes:desc', 'created_at:asc', 'created_at:desc'. - -## PagerdutyApi.CreateGlobalEventOrchestration - -
- - -Create a Global Event Orchestration in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetGlobalEventOrchestration - -
- - -Retrieve details of a Global Event Orchestration by ID. - -**Parameters** - -- **event_orchestration_id** (`string`, required) The unique identifier for the Event Orchestration to be retrieved. - -## PagerdutyApi.UpdateEventOrchestration - -
- - -Update a Global Event Orchestration in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **event_orchestration_id** (`string`, optional) The unique identifier for the Event Orchestration to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeleteEventOrchestration - -
- - -Delete a Global Event Orchestration on PagerDuty. - -**Parameters** - -- **event_orchestration_id** (`string`, required) The ID of the Global Event Orchestration to delete. - -## PagerdutyApi.ListOrchestrationIntegrations - -
- - -Retrieve integrations for an event orchestration. - -**Parameters** - -- **event_orchestration_id** (`string`, required) The unique identifier for the Event Orchestration to retrieve integrations for. This ID is necessary to specify which event orchestration's integrations you wish to list. - -## PagerdutyApi.CreateEventIntegration - -
- - -Create an integration for event orchestration in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **event_orchestration_id** (`string`, optional) The unique identifier for the Event Orchestration within PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetIntegrationDetails - -
- - -Retrieve details of an orchestration integration. - -**Parameters** - -- **event_orchestration_id** (`string`, required) The ID of the Event Orchestration to retrieve integration details for. -- **integration_id** (`string`, required) The ID of the integration to retrieve details for within an event orchestration in PagerDuty. - -## PagerdutyApi.UpdateEventIntegration - -
- - -Update an event orchestration integration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **event_orchestration_id** (`string`, optional) The unique ID of the event orchestration to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **integration_id_for_update** (`string`, optional) The ID of an Integration to update within the event orchestration. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeleteIntegrationRoutingKey - -
- - -Delete an integration and its associated routing key. - -**Parameters** - -- **event_orchestration_id** (`string`, required) The identifier for the Event Orchestration to be deleted. -- **integration_id** (`string`, required) The unique ID of the integration to be deleted. This is necessary to identify which integration and its routing key should be removed. - -## PagerdutyApi.MigrateIntegrationToEventOrchestration - -
- - -Migrate an integration to a different event orchestration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **event_orchestration_id** (`string`, optional) The unique identifier of an Event Orchestration to migrate the integration to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetGlobalOrchestrationRules - -
- - -Retrieve global orchestration rules for an event. - -**Parameters** - -- **event_orchestration_id** (`string`, required) The ID of the specific Event Orchestration to retrieve rules for. - -## PagerdutyApi.UpdateEventOrchestrationGlobalRules - -
- - -Update global orchestration rules for event orchestration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **event_orchestration_id** (`string`, optional) The unique identifier for an Event Orchestration to update its global rules. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetGlobalOrchestrationRoutingRules - -
- - -Retrieve Global Orchestration's routing rules from PagerDuty. - -**Parameters** - -- **event_orchestration_id** (`string`, required) The ID of the Event Orchestration to retrieve routing rules for. - -## PagerdutyApi.UpdateOrchestrationRoutingRules - -
- - -Update rules for routing events in Global Orchestration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **event_orchestration_id** (`string`, optional) The unique identifier for the Event Orchestration to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetUnroutedEventOrchestrationRules - -
- - -Retrieve rules for unrouted event orchestration in PagerDuty. - -**Parameters** - -- **event_orchestration_id** (`string`, required) The unique identifier for the Event Orchestration to retrieve unrouted event rules. - -## PagerdutyApi.UpdateUnroutedEventRules - -
- - -Update rules for Unrouted events in Global Event Orchestration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **event_orchestration_id** (`string`, optional) The unique identifier for the Event Orchestration to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetServiceOrchestration - -
- - -Retrieve details of a service orchestration configuration. - -**Parameters** - -- **service_identifier** (`string`, required) The unique identifier for the service you want to retrieve orchestration details for. -- **include_models_in_response** (`string`, optional) Specify additional models like 'migrated_metadata' to include in the response. - -## PagerdutyApi.UpdateServiceOrchestration - -
- - -Update a Service Orchestration with new event rules. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **service_identifier** (`string`, optional) The unique identifier for the service to update the orchestration rules. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetServiceOrchestrationStatus - -
- - -Retrieve the active status of a Service Orchestration. - -**Parameters** - -- **service_id** (`string`, required) The unique identifier for the service to check its orchestration status. - -## PagerdutyApi.UpdateServiceOrchestrationStatus - -
- - -Update the active status of a service orchestration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **service_id** (`string`, optional) The unique identifier for the service to update the orchestration status. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListCacheVariables - -
- - -Retrieve cache variables for a global event orchestration. - -**Parameters** - -- **event_orchestration_id** (`string`, required) The unique identifier for an Event Orchestration to retrieve its cache variables. - -## PagerdutyApi.CreateCacheVariableEventOrchestration - -
- - -Create a cache variable for global event orchestration rules. - -**Parameters** - -- **event_orchestration_id** (`string`, required) The ID of an Event Orchestration for which the cache variable is to be created. - -## PagerdutyApi.GetCacheVariableGlobalEvent - -
- - -Retrieve a cache variable for a global event orchestration. - -**Parameters** - -- **cache_variable_identifier** (`string`, required) The unique identifier for a Cache Variable in a global event orchestration. -- **event_orchestration_id** (`string`, required) The ID of the event orchestration to retrieve the cache variable from. - -## PagerdutyApi.UpdateCacheVariable - -
- - -Update a cache variable for event orchestration rules. - -**Parameters** - -- **cache_variable_id** (`string`, required) The ID of the cache variable to update for the event orchestration. -- **event_orchestration_id** (`string`, required) The ID of the Event Orchestration to update the cache variable for. - -## PagerdutyApi.DeleteCacheVariableGlobalEvent - -
- - -Delete a cache variable for a global event orchestration. - -**Parameters** - -- **cache_variable_id** (`string`, required) The unique identifier of the cache variable to delete. -- **event_orchestration_id** (`string`, required) The unique identifier for the event orchestration from which the cache variable will be deleted. - -## PagerdutyApi.GetExternalDataCacheVar - -
- - -Retrieve external data Cache Variable data from Global Orchestration. - -**Parameters** - -- **cache_variable_id** (`string`, required) Provide the ID of the Cache Variable whose data you want to retrieve. -- **event_orchestration_id** (`string`, required) The unique identifier of an Event Orchestration to retrieve its cache variable data. - -## PagerdutyApi.UpdateExternalDataCacheVariable - -
- - -Update values for external data cache variables in global event orchestration. - -**Parameters** - -- **cache_variable_id** (`string`, required) The unique identifier for a Cache Variable within the event orchestration. This ID is used to specify which cache variable's data is to be updated. -- **event_orchestration_id** (`string`, required) The unique identifier for an Event Orchestration to be updated. - -## PagerdutyApi.DeleteExternalDataCacheVariable - -
- - -Deletes external data cache variable for event orchestration. - -**Parameters** - -- **cache_variable_id** (`string`, required) The ID of the cache variable to delete within the event orchestration. -- **event_orchestration_id** (`string`, required) The unique identifier for the Event Orchestration to target for cache variable deletion. - -## PagerdutyApi.ListCacheVariablesForServiceEventOrchestration - -
- - -Retrieve cache variables for service event orchestration. - -**Parameters** - -- **service_id** (`string`, required) The unique identifier of the service. It specifies which service's event orchestration cache variables to list. - -## PagerdutyApi.AddCacheVariableToServiceEvent - -
- - -Create a cache variable for a service event orchestration. - -**Parameters** - -- **service_identifier** (`string`, required) The ID of the service for which the cache variable is being created. This should be a string representing the unique identifier of the service. - -## PagerdutyApi.GetServiceEventCacheVariable - -
- - -Get a cache variable for a service event orchestration. - -**Parameters** - -- **cache_variable_id** (`string`, required) The unique identifier of the cache variable to retrieve. -- **service_identifier** (`string`, required) The unique identifier of the service. Use this to specify the service whose event orchestration cache variable you want to access. - -## PagerdutyApi.UpdateServiceEventCacheVariable - -
- - -Update a cache variable for a service event orchestration. - -**Parameters** - -- **cache_variable_id** (`string`, required) The ID of the cache variable to update for the service event orchestration. -- **service_identifier** (`string`, required) The unique identifier for the service to update the cache variable on a service event orchestration. - -## PagerdutyApi.DeleteServiceCacheVariable - -
- - -Delete a cache variable for a service event orchestration. - -**Parameters** - -- **cache_variable_id** (`string`, required) The unique identifier for the cache variable to be deleted in the service event orchestration. -- **service_identifier** (`string`, required) The unique identifier for the service related to the event orchestration. - -## PagerdutyApi.GetServiceEventCacheData - -
- - -Retrieve external data cache variable for event orchestration. - -**Parameters** - -- **cache_variable_id** (`string`, required) The ID of the Cache Variable to retrieve data for, used in service event orchestration. -- **service_identifier** (`string`, required) The unique identifier for the service to retrieve the cache variable data from. - -## PagerdutyApi.UpdateCacheVariableData - -
- - -Update cache variable data for service event orchestration. - -**Parameters** - -- **cache_variable_id** (`string`, required) The unique identifier for the Cache Variable to be updated. -- **service_identifier** (`string`, required) A unique identifier for the service whose cache variable data is to be updated. - -## PagerdutyApi.RemoveServiceCacheVariable - -
- - -Delete external data cache variable on a service orchestration. - -**Parameters** - -- **cache_variable_id** (`string`, required) The unique identifier for an external data cache variable to be deleted from the service event orchestration. -- **service_identifier** (`string`, required) The unique identifier for the service. Required for deleting cache variable data. - -## PagerdutyApi.ListEventOrchestrationEnablings - -
- - -Retrieve feature enablement settings for Event Orchestrations. - -**Parameters** - -- **event_orchestration_id** (`string`, required) The unique identifier for a specific Event Orchestration in PagerDuty. This is required to retrieve its feature enablement settings. - -## PagerdutyApi.UpdateEventOrchestrationFeatures - -
- - -Update features for Event Orchestration in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **event_orchestration_id** (`string`, optional) The unique identifier for an Event Orchestration to update features. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **feature_enablement_identifier** (`string`, optional) Specifies the feature enablement identifier for a product addon. Currently, only 'aiops' is supported. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListExtensionSchemas - -
- - -Retrieve a list of all PagerDuty extension schemas. - -**Parameters** - -- **include_total_in_response** (`boolean`, optional) Set to true to populate the total field in pagination responses, providing the total count, which may affect response time. -- **pagination_offset** (`integer`, optional) The starting point for pagination in the result set, defined as the number of items to skip. -- **results_per_page** (`integer`, optional) Specify the number of results to display per page. - -## PagerdutyApi.GetExtensionVendorDetails - -
- - -Retrieve details of a specific PagerDuty extension vendor. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier for the extension vendor resource. - -## PagerdutyApi.ListExtensions - -
- - -Retrieve a list of existing extensions and their details. - -**Parameters** - -- **filter_by_extension_object_id** (`string`, optional) Filter the extensions by specifying the extension object's ID you want to include. -- **filter_by_extension_vendor_id** (`string`, optional) Specify the extension vendor ID to filter extensions by vendor. -- **include_details** (`string`, optional) Specify additional details to include, such as 'extension_objects' or 'extension_schemas'. -- **include_total_in_response** (`boolean`, optional) Set to true to populate the total field in pagination responses, providing the total count of results. -- **name_query_filter** (`string`, optional) Filter results to show only records whose name matches this query string. -- **pagination_offset** (`integer`, optional) Offset to begin pagination search results listing. Specify an integer value to set the starting point. -- **results_per_page** (`integer`, optional) The number of results to return per page retrieval request. - -## PagerdutyApi.CreateServiceExtension - -
- - -Create a new extension for a service in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetExtensionDetails - -
- - -Retrieve details about a specific extension on PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the extension resource to retrieve details for. -- **include_additional_details** (`string`, optional) Specify additional details to include, such as 'extension_schemas', 'extension_objects', or 'temporarily_disabled'. - -## PagerdutyApi.DeleteExtension - -
- - -Delete an existing extension in PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the extension to be deleted. - -## PagerdutyApi.UpdateExtension - -
- - -Update an existing extension in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The ID of the extension resource you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.EnablePagerdutyExtension - -
- - -Enable a disabled extension on PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The unique ID of the PagerDuty extension to enable. - -## PagerdutyApi.ListIncidentWorkflows - -
- - -Retrieve all incident workflows in your PagerDuty account. - -**Parameters** - -- **filter_by_name** (`string`, optional) Filter results to show only records whose name matches the query. -- **include_additional_details** (`string`, optional) Specify additional details to include, such as 'steps' or 'team'. -- **include_total_in_pagination** (`boolean`, optional) Set to true to populate the `total` field in pagination responses, false otherwise to optimize for speed. -- **pagination_offset** (`integer`, optional) Offset to start pagination search results. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page in the response. - -## PagerdutyApi.CreateIncidentWorkflow - -
- - -Create a new incident workflow to automate actions. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetIncidentWorkflow - -
- - -Retrieve an existing Incident Workflow. - -**Parameters** - -- **incident_workflow_id** (`string`, required) The ID of the Incident Workflow to be retrieved. - -## PagerdutyApi.DeleteIncidentWorkflow - -
- - -Deletes an existing incident workflow in PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the incident workflow to be deleted. - -## PagerdutyApi.UpdateIncidentWorkflow - -
- - -Updates an existing incident workflow in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_workflow_id** (`string`, optional) The unique ID of the incident workflow to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.StartIncidentWorkflow - -
- - -Start an instance of an incident workflow for automation. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The ID of the resource to start the incident workflow for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListIncidentWorkflowActions - -
- - -Retrieve a list of incident workflow actions. - -**Parameters** - -- **filter_by_keyword** (`string`, optional) Show actions tagged with the specified keyword. Provide a specific keyword to filter results. -- **max_results_limit** (`integer`, optional) The maximum number of incident workflow actions to return in a single request. This value is the lesser of the specified limit or the API's maximum request size. -- **pagination_cursor** (`string`, optional) Optional parameter to fetch the next set of results. Use 'next_cursor' from the previous response. Starts at the beginning if not provided. - -## PagerdutyApi.GetIncidentWorkflowAction - -
- - -Retrieve details of an incident workflow action. - -**Parameters** - -- **resource_id** (`string`, required) The unique ID of the incident workflow action to retrieve. - -## PagerdutyApi.ListIncidentWorkflowTriggers - -
- - -Retrieve a list of existing incident workflow triggers. - -**Parameters** - -- **filter_by_service_id** (`string`, optional) Show triggers for incidents in the given service. Cannot be used with `incident_id`. -- **filter_by_trigger_type** (`string`, optional) Specify the type of triggers to show, such as 'manual', 'conditional', or 'incident_type'. -- **filter_for_disabled_triggers** (`boolean`, optional) Set to true to filter for disabled triggers, false for enabled. This parameter is deprecated. -- **incident_id_filter** (`string`, optional) Show triggers for the service of the specified incident. Cannot be used with `service_id`. -- **maximum_results** (`integer`, optional) Specify the maximum number of triggers to return. This limits the size of the response, constrained by the API's maximum request size. -- **pagination_cursor** (`string`, optional) Optional parameter to request the next set of results, usually from the `next_cursor` field of a previous request. Starts at the beginning if not provided. -- **sort_triggers_by** (`string`, optional) Specify the property to sort triggers, such as 'workflow_id asc' or 'workflow_name desc'. -- **workflow_id_filter** (`string`, optional) If provided, only show triggers configured to start the specified workflow, useful for listing services linked to a workflow. -- **workflow_name_contains** (`string`, optional) Filter triggers by workflow names containing this value. - -## PagerdutyApi.CreateIncidentWorkflowTrigger - -
- - -Initiate a new PagerDuty incident workflow trigger. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetIncidentWorkflowTrigger - -
- - -Retrieve an existing Incident Workflows Trigger. - -**Parameters** - -- **incident_workflow_trigger_id** (`string`, required) The unique ID of the Incident Workflow Trigger to be retrieved. - -## PagerdutyApi.UpdateIncidentWorkflowTrigger - -
- - -Update an existing incident workflow trigger. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The ID of the incident workflow trigger to be updated in PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeleteIncidentWorkflowTrigger - -
- - -Deletes an existing incident workflow trigger using its ID. - -**Parameters** - -- **incident_workflow_trigger_id** (`string`, required) The unique identifier of the incident workflow trigger to delete. - -## PagerdutyApi.AssociateServiceToIncidentWorkflowTrigger - -
- - -Associate a service with an existing incident workflow trigger. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier of the resource to associate with the incident workflow trigger. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.RemoveServiceFromIncidentTrigger - -
- - -Remove a service from an incident workflow trigger. - -**Parameters** - -- **service_identifier** (`string`, required) The unique identifier for the service to remove from the incident workflow trigger. -- **trigger_identifier** (`string`, required) The unique identifier for the incident workflow trigger from which the service will be removed. - -## PagerdutyApi.ListExistingIncidents - -
- - -Retrieve a list of existing incidents. - -**Parameters** - -- **additional_details_to_include** (`string`, optional) Array of additional details to include in the incident list, such as 'acknowledgers', 'agents', 'assignees', etc. -- **assigned_user_ids** (`array[string]`, optional) Return incidents currently assigned to specific users by providing their user IDs. Only incidents with statuses 'triggered' or 'acknowledged' are returned. Resolved incidents are not included. -- **end_date_range** (`string`, optional) The end date of the range for searching incidents. Maximum range is 6 months; default is 1 month. -- **filter_by_team_ids** (`array[string]`, optional) Array of team IDs to filter incidents. Requires `teams` ability. -- **ignore_since_until_date_range** (`string`, optional) Set to 'all' to ignore the 'since' and 'until' parameters, extending the search to all dates. -- **incident_deduplication_key** (`string`, optional) A unique key to identify and retrieve specific incidents. Useful for querying by matching alert keys. -- **incident_statuses** (`string`, optional) Specify the list of incident statuses to filter by, such as 'triggered', 'acknowledged', or 'resolved'. -- **incident_urgencies** (`string`, optional) Array of incident urgencies to filter results by. Valid values are 'high' or 'low'. Defaults to all urgencies. -- **include_total_in_response** (`boolean`, optional) Set to true to include the total number of incidents in the response, which may reduce response speed. -- **pagination_offset** (`integer`, optional) Offset to start pagination of the incident search results. Specify the number of entries to skip before starting to collect the result set. -- **render_time_zone** (`string`, optional) Specify the time zone for rendering results. Defaults to the account time zone. -- **results_per_page** (`integer`, optional) The number of results per page. Specify up to a maximum of 100. -- **service_ids** (`array[string]`, optional) A list of service IDs to filter incidents associated with specific services. -- **sort_incidents_by** (`array[string]`, optional) Specify fields and directions for sorting incidents, e.g., 'created_at:asc'. Separate fields with a comma. -- **start_date_range** (`string`, optional) The start date to begin searching for incidents, within a 6-month range. Defaults to 1 month if not provided. - -## PagerdutyApi.UpdateIncidents - -
- - -Manage the status of multiple incidents. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_email** (`string`, optional) The email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **results_per_page** (`integer`, optional) Specifies the maximum number of incident results to return per page. Only used when mode is 'execute'. -- **pagination_start_offset** (`integer`, optional) Offset from where to start paginated search results. This is used to navigate search results effectively. Only used when mode is 'execute'. -- **include_total_in_pagination** (`boolean`, optional) Set to true to populate the 'total' field in pagination responses. Otherwise, it remains null for faster response times. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.CreateIncident - -
- - -Create an incident in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_email** (`string`, optional) The email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetIncidentDetails - -
- - -Retrieve detailed information about a PagerDuty incident. - -**Parameters** - -- **incident_id** (`string`, required) The unique identifier for the specific incident. Include either the incident ID or number to retrieve details. -- **include_details** (`string`, optional) List of additional incident details to include, such as 'acknowledgers', 'agents', 'assignees', etc. - -## PagerdutyApi.ManageIncidentStatus - -
- - -Manage PagerDuty incident status and assignments. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_id** (`string`, optional) The unique identifier of the incident to be managed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **user_email_for_request** (`string`, optional) Email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListIncidentAlerts - -
- - -Retrieve alerts for a specified incident. - -**Parameters** - -- **incident_id** (`string`, required) The unique identifier of the incident to retrieve alerts for. -- **alert_deduplication_key** (`string`, optional) The unique key used for alert de-duplication. -- **filter_by_statuses** (`string`, optional) Filter alerts by specific statuses, such as 'triggered' or 'resolved'. -- **include_additional_details** (`string`, optional) Specify additional details to include, such as services, first_trigger_log_entries, or incidents. -- **include_pagination_total** (`boolean`, optional) Set to `true` to include the total count of results in pagination responses for faster response times. Set to `false` for the default behavior of `null`, which is faster. -- **results_per_page** (`integer`, optional) Specify the number of alert results per page for pagination. -- **sort_incident_alerts_by** (`string`, optional) Specify the field and order for sorting alerts (created_at or resolved_at, with ascending or descending options). -- **start_pagination_offset** (`integer`, optional) Offset for starting the pagination in search results. Use for navigating through paginated data. - -## PagerdutyApi.ResolveOrReassociateIncidentAlerts - -
- - -Resolve or reassign alerts to incidents. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_resource_id** (`string`, optional) The unique identifier for the incident resource to be resolved or reassociated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **user_email** (`string`, optional) The email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **results_per_page** (`integer`, optional) Specify the number of results to be returned per page. Must be an integer. Only used when mode is 'execute'. -- **pagination_offset** (`integer`, optional) Offset for pagination to specify where search results should begin. Only used when mode is 'execute'. -- **populate_total** (`boolean`, optional) Set to `true` to populate the `total` field in pagination responses, otherwise it remains `null` for faster response. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetIncidentAlertDetails - -
- - -Retrieve detailed information about a specific alert. - -**Parameters** - -- **alert_identifier** (`string`, required) The unique identifier of the alert to retrieve details for. -- **resource_id** (`string`, required) The unique identifier for the resource. This ID is used to fetch specific alert details in PagerDuty. - -## PagerdutyApi.ResolveOrUpdateIncidentAlert - -
- - -Resolve an alert or update its associated incident. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier for the resource you want to update or resolve. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **alert_id** (`string`, optional) The ID of the alert to resolve or update its parent incident. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **user_email_address** (`string`, optional) The email address of a valid user associated with the account making the request. Ensure it is linked to the account with necessary permissions. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.UpdateIncidentServiceImpact - -
- - -Update the impact of an incident on a business service. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier for the incident resource to update impact. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **business_service_id** (`string`, optional) The ID of the specific business service affected by the incident. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetImpactedBusinessServices - -
- - -Retrieve business services impacted by an incident. - -**Parameters** - -- **incident_id** (`string`, required) The ID of the incident to retrieve impacted business services for. - -## PagerdutyApi.GetCustomFieldValues - -
- - -Retrieve custom field values for a specific incident. - -**Parameters** - -- **incident_id** (`string`, required) The unique identifier for the incident whose custom field values are being requested. - -## PagerdutyApi.UpdateIncidentCustomFields - -
- - -Update custom field values for a specific incident. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_id** (`string`, optional) The ID of the incident to update custom field values. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListIncidentLogEntries - -
- - -Retrieve log entries for a specific incident. - -**Parameters** - -- **incident_id** (`string`, required) The unique identifier for the incident to retrieve log entries for. -- **additional_models_to_include** (`string`, optional) Array of additional models to include in the response, such as 'incidents', 'services', 'channels', or 'teams'. -- **end_date** (`string`, optional) Specify the end date for the log entry search range. Format as 'YYYY-MM-DD'. -- **include_total_in_response** (`boolean`, optional) Set to true to populate the total field in pagination responses for more detailed information. Defaults to null for faster responses. -- **pagination_start_offset** (`integer`, optional) Specifies the starting point for pagination to search results. Use an integer value. -- **results_per_page** (`integer`, optional) Specify the number of results to display per page. -- **results_time_zone** (`string`, optional) Time zone for rendering the results, defaults to the account time zone. -- **return_important_changes_only** (`boolean`, optional) If `true`, returns a subset of log entries showing only the most important changes to the incident. -- **start_date** (`string`, optional) The start date for the range to search log entries. Expected format: YYYY-MM-DDTHH:MM:SSZ. - -## PagerdutyApi.MergeIncidents - -
- - -Merge source incidents into a target incident. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The ID of the target incident for merging source incidents. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **user_email_address** (`string`, optional) The email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListIncidentNotes - -
- - -List notes for a specific incident. - -**Parameters** - -- **incident_id** (`string`, required) The unique identifier for the incident whose notes you want to retrieve. - -## PagerdutyApi.AddIncidentNote - -
- - -Add a new note to a specific incident. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_id** (`string`, optional) The unique identifier of the incident to which the note will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **user_email_address** (`string`, optional) The email address of a valid user associated with the account making the request. This must be an email registered with the PagerDuty account. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetOutlierIncidentInfo - -
- - -Retrieve information about an outlier incident for a service. - -**Parameters** - -- **incident_resource_id** (`string`, required) The unique identifier for the incident resource you want details about. -- **include_additional_incident_details** (`string`, optional) Include additional attributes for related incidents, specified as strings. -- **start_date_range** (`string`, optional) The start date for the search range in YYYY-MM-DD format. - -## PagerdutyApi.RetrievePastIncidents - -
- - -Retrieve past incidents with similar metadata. - -**Parameters** - -- **incident_id** (`string`, required) The unique identifier of the incident. Used to fetch past incidents with similar metadata. -- **include_total_past_incidents** (`boolean`, optional) Set to true to include the total number of past incidents in the response. This may increase response time. -- **results_limit** (`integer`, optional) Specifies the maximum number of past incidents to return. - -## PagerdutyApi.GetIncidentRelatedChangeEvents - -
- - -Retrieve change events related to a specific incident. - -**Parameters** - -- **incident_id** (`string`, required) The unique identifier of the incident for which related change events are to be listed. -- **results_per_page_limit** (`integer`, optional) The maximum number of change events to return per page for a specific incident. - -## PagerdutyApi.GetRelatedIncidents - -
- - -Retrieve recent related incidents impacting services. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the resource to retrieve related incidents for. -- **additional_attributes** (`string`, optional) Array of additional attributes to include for each related incident. Use 'incident' as the value. - -## PagerdutyApi.CreateIncidentResponderRequest - -
- - -Send a responder request for a specified incident. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_id** (`string`, optional) The unique identifier for the incident requiring a responder request. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **user_email** (`string`, optional) The email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.SnoozeIncident - -
- - -Temporarily suspend alerts for an incident. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_id** (`string`, optional) The unique ID of the incident to snooze. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **user_email** (`string`, optional) The email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.UpdateIncidentStatus - -
- - -Create a status update for a specific incident. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_id** (`string`, optional) The ID of the incident to update. This is required to specify which incident the status update is for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **requestor_email** (`string`, optional) The email address of a valid user making the request in PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetIncidentNotificationSubscribers - -
- - -Retrieve a list of notification subscribers for an incident. - -**Parameters** - -- **incident_id** (`string`, required) The unique identifier of the incident resource. - -## PagerdutyApi.SubscribeIncidentNotifications - -
- - -Subscribe entities to incident status update notifications. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The ID of the resource to subscribe entities for notification updates. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.UnsubscribeIncidentNotification - -
- - -Unsubscribe users from incident status update notifications. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier for the incident resource to unsubscribe from notifications. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListIncidentTypes - -
- - -Retrieve available incident types from PagerDuty. - -**Parameters** - -- **incident_type_filter** (`string`, optional) Filter incident types by their enabled state. Options: 'enabled', 'disabled', 'all'. - -## PagerdutyApi.CreateIncidentType - -
- - -Create a new incident type in PagerDuty to categorize incidents. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetIncidentTypeDetails - -
- - -Retrieve detailed information on a specific incident type. - -**Parameters** - -- **incident_type_identifier** (`string`, required) The ID or name of the Incident Type to retrieve details for. - -## PagerdutyApi.UpdateIncidentType - -
- - -Update or categorize an incident type on PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_type_id_or_name** (`string`, optional) The ID or name of the incident type to be updated. Specify to categorize the incident. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListIncidentTypeCustomFields - -
- - -List custom fields for a specified incident type. - -**Parameters** - -- **incident_type_id_or_name** (`string`, required) The ID or name of the incident type to retrieve custom fields for. -- **include_additional_details** (`string`, optional) Specify additional details to include, such as 'field_options'. - -## PagerdutyApi.CreateIncidentTypeCustomField - -
- - -Create a custom field for a specific incident type. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_type_id_or_name** (`string`, optional) The ID or name of the incident type for which the custom field is created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetIncidentTypeCustomField - -
- - -Retrieve a custom field for a specific incident type. - -**Parameters** - -- **field_id** (`string`, required) The ID of the custom field to retrieve for the incident type. -- **incident_type_id_or_name** (`string`, required) The ID or name of the Incident Type for which to retrieve the custom field. -- **include_field_details** (`string`, optional) Specify additional details, such as 'field_options', to include in the response. - -## PagerdutyApi.UpdateIncidentCustomField - -
- - -Update a custom field for a specific incident type. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_type_identifier** (`string`, optional) The ID or name of the specific incident type to update the custom field for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **field_identifier** (`string`, optional) Provide the unique ID of the field to be updated for the incident type. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeleteIncidentTypeCustomField - -
- - -Delete a custom field for a specified incident type. - -**Parameters** - -- **field_id** (`string`, required) The unique identifier of the custom field to be deleted. -- **incident_type_id_or_name** (`string`, required) The ID or name of the specific incident type to delete a custom field from. - -## PagerdutyApi.ListCustomFieldOptions - -
- - -Retrieve options for a custom field in an incident type. - -**Parameters** - -- **field_identifier** (`string`, required) The unique identifier for the custom field. -- **incident_type_identifier** (`string`, required) The ID or name of the Incident Type for which to retrieve custom field options. - -## PagerdutyApi.CreateCustomFieldOption - -
- - -Create a custom field option for incidents. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_type_id_or_name** (`string`, optional) The ID or name of the incident type for which the custom field option will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **field_id** (`string`, optional) The unique identifier for the custom field to which the option will be added. This should be a string that specifies the field within the incident type. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetCustomFieldOption - -
- - -Retrieve a specific custom field option for an incident type. - -**Parameters** - -- **field_id** (`string`, required) The ID of the custom field for which the field option details are retrieved. This ID specifies the field within the incident type. -- **field_option_id** (`string`, required) The unique identifier for the field option within a custom field. Used to retrieve specific option details. -- **incident_type_identifier** (`string`, required) The ID or name of the incident type for which the custom field option is to be retrieved. - -## PagerdutyApi.UpdateCustomFieldOption - -
- - -Update a field option for a custom incident field. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_type_id_or_name** (`string`, optional) The ID or name of the PagerDuty incident type. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **field_option_identifier** (`string`, optional) The unique identifier for the field option to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **field_id** (`string`, optional) The ID of the custom field to be updated in the incident type. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeleteCustomFieldOption - -
- - -Delete a custom field option for an incident type. - -**Parameters** - -- **field_identifier** (`string`, required) The unique identifier of the custom field from which the option will be deleted. -- **field_option_id** (`string`, required) The ID of the field option to be deleted. This is required for identifying which option to remove from the custom field. -- **incident_type_identifier** (`string`, required) The ID or name of the incident type for which the custom field option should be deleted. - -## PagerdutyApi.ListUserLicenseAllocations - -
- - -Retrieve licenses allocated to users in your account. - -**Parameters** - -- **pagination_offset** (`integer`, optional) The starting position for pagination in the search results. -- **results_per_page** (`integer`, optional) Specifies the number of results to display per page when retrieving user licenses. - -## PagerdutyApi.ListAccountLicenses - -
- - -Retrieve the list of licenses for your account. - -**Parameters** - -This tool does not take any parameters. - -## PagerdutyApi.FetchIncidentLogs - -
- - -Retrieve all incident log entries across the account. - -**Parameters** - -- **additional_models_to_include** (`string`, optional) Specify additional models to include in the response, such as incidents, services, channels, or teams. -- **include_total_in_pagination** (`boolean`, optional) Set to true to populate the total field in pagination responses. Set to false for faster response times. -- **pagination_offset** (`integer`, optional) Offset to start pagination in search results. Used for navigating through large datasets. -- **render_results_in_time_zone** (`string`, optional) Time zone for rendering results. Defaults to the account time zone if not specified. -- **results_per_page** (`integer`, optional) Specifies the number of results returned per page. -- **return_important_changes_only** (`boolean`, optional) If true, return only the most important changes to the incident in log entries. -- **search_end_date** (`string`, optional) The end date for the search range. Specify in YYYY-MM-DD format. -- **start_date_range** (`string`, optional) Specify the start date for the search range. Format: YYYY-MM-DD. -- **team_ids** (`array[string]`, optional) Array of team IDs to filter log entries. Requires 'teams' ability on the account. - -## PagerdutyApi.GetIncidentLogEntryDetails - -
- - -Retrieve detailed information about a specific incident log entry. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the incident log entry to retrieve details for. -- **additional_models_to_include** (`string`, optional) List of additional models like 'incidents', 'services', 'channels', or 'teams' to include in the response. -- **render_results_in_time_zone** (`string`, optional) Specify the time zone for rendering the results. Defaults to the account's time zone if not provided. - -## PagerdutyApi.UpdateIncidentLogEntry - -
- - -Update an existing incident log entry channel. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_resource_id** (`string`, optional) The unique ID of the incident log entry resource to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **user_email** (`string`, optional) The email address of a valid user associated with the account making the log entry update request. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListMaintenanceWindows - -
- - -Retrieve maintenance windows with optional filters for service or team. - -**Parameters** - -- **filter_by_name** (`string`, optional) Filter maintenance windows to show only those with names matching the query. -- **filter_by_service_ids** (`array[string]`, optional) An array of service IDs to filter maintenance windows. Only results related to these services will be returned. -- **filter_by_team_ids** (`array[string]`, optional) Array of team IDs to filter results. Requires 'teams' ability. -- **include_models** (`string`, optional) Specify models to include in the response, such as 'teams', 'services', or 'users'. -- **include_total_in_response** (`boolean`, optional) Set to true to populate the `total` field in pagination responses and get the total count of records. -- **maintenance_window_state** (`string`, optional) Specify the state of maintenance windows to return: 'past', 'future', 'ongoing', 'open', or 'all'. -- **pagination_offset** (`integer`, optional) Offset to start the pagination of search results. Use to skip a number of results. -- **results_per_page** (`integer`, optional) The number of maintenance window results to display per page. - -## PagerdutyApi.CreateMaintenanceWindow - -
- - -Create a maintenance window for specified services. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_email** (`string`, optional) The email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetMaintenanceWindow - -
- - -Retrieve details of an existing maintenance window in PagerDuty. - -**Parameters** - -- **maintenance_window_id** (`string`, required) The unique identifier of the maintenance window to retrieve. -- **include_models** (`string`, optional) Array of additional models to include in the response. Options are 'teams', 'services', or 'users'. - -## PagerdutyApi.DeleteMaintenanceWindow - -
- - -Delete or end a maintenance window in PagerDuty. - -**Parameters** - -- **maintenance_window_id** (`string`, required) The unique identifier for the maintenance window to delete or end. - -## PagerdutyApi.UpdateMaintenanceWindow - -
- - -Update an existing maintenance window for services. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier for the maintenance window to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListNotifications - -
- - -Retrieve notifications within a specified time range. - -**Parameters** - -- **end_date_for_search** (`string`, required) The end of the date range for the search. Must be in the same format as the 'since' date and within 3 months of it. -- **start_date** (`string`, required) The start date for the search range. Time is optional and must match format of 'until'. -- **additional_details_include** (`string`, optional) Specify additional details to include, such as 'users'. -- **include_total_in_response** (`boolean`, optional) Set to true to populate the total field in pagination responses, otherwise it will be null. -- **notification_type_filter** (`string`, optional) Return notifications of a specific type such as SMS, email, phone, or push. -- **output_time_zone** (`string`, optional) Time zone for rendering results. Defaults to the account's time zone if not specified. -- **pagination_offset** (`integer`, optional) Offset number to begin the pagination of search results. -- **results_per_page** (`integer`, optional) The number of results to display per page. - -## PagerdutyApi.DeleteOauthDelegations - -
- - -Revoke OAuth app access for a user or account. - -**Parameters** - -- **delegation_type** (`string`, required) Specify the OAuth delegation type(s) to target: 'mobile' for mobile app or 'web' for web app sign-out. Multiple types can be separated by commas, for example, 'mobile,web'. -- **user_identifier** (`string`, required) The unique ID of the user whose OAuth delegations will be deleted. - -## PagerdutyApi.ListOnCallEntries - -
- - -Retrieve on-call entries for a specified time range. - -**Parameters** - -- **additional_details_to_include** (`string`, optional) Array of additional details to include such as escalation policies, users, or schedules. -- **end_time_for_on_call_search** (`string`, optional) Specify the end of the time period to search for on-call entries. The end time must be after the start time ('since') and cannot exceed 90 days in the future. Defaults to current time if not specified. -- **filter_by_escalation_policy_ids** (`array[string]`, optional) Array of escalation policy IDs to filter the on-call results. Only entries matching these IDs will be included. -- **filter_user_ids** (`array[string]`, optional) An array of user IDs to filter and show only the on-calls for these users. -- **include_total_in_response** (`boolean`, optional) Set to true to populate the total field in pagination responses, enhancing the response with total entry count. -- **pagination_offset** (`integer`, optional) Offset indicating where to start the pagination for search results. -- **results_per_page** (`integer`, optional) The maximum number of on-call entries to return per page. Set this to control pagination. -- **results_time_zone** (`string`, optional) Specifies the time zone for rendering results. Defaults to the account time zone if not provided. -- **return_earliest_on_call** (`boolean`, optional) Set to true to filter and return only the earliest on-call entry for each combination of escalation policy, escalation level, and user. -- **schedule_ids_filter** (`array[string]`, optional) Array of schedule IDs to filter results. Include `null` to cover permanent on-calls from direct user escalations. -- **start_time_range** (`string`, optional) The start time for the search range. On-call periods overlapping this time will be included. Defaults to the current time. Limited to 90 days in the future. - -## PagerdutyApi.GetPausedIncidentReportAlerts - -
- - -Retrieve recent paused incident report alerts. - -**Parameters** - -- **end_date_range** (`string`, optional) The end date for the search range to retrieve alerts. Must be within 6 months. -- **filter_by_suspend_method** (`string`, optional) Filter alerts by suspension type: 'Auto Pause' or 'Event Rules'. -- **service_identifier** (`string`, optional) Filter reports to a specific service by providing its service ID. -- **start_date** (`string`, optional) The start date for the search range. It should be in ISO 8601 format (YYYY-MM-DD). - -## PagerdutyApi.GetPausedIncidentReportCounts - -
- - -Retrieve reporting counts for paused incident usage. - -**Parameters** - -- **end_date** (`string`, optional) End date for the date range over which to search for paused incident reports. Format: YYYY-MM-DD. -- **filter_by_suspended_type** (`string`, optional) Filter to specify whether to include alerts suspended by Auto Pause or Event Rules. Use 'Auto Pause' or 'Event Rules'. -- **service_identifier** (`string`, optional) Filter to limit reporting to a particular service by providing a specific service ID. -- **start_date** (`string`, optional) The start date for the reporting period to search, in YYYY-MM-DD format. - -## PagerdutyApi.ListIncidentPriorities - -
- - -Retrieve a list of incident priorities by severity. - -**Parameters** - -- **include_total_in_response** (`boolean`, optional) Set to true to include the total number of results in the response, which is not shown by default for performance reasons. -- **pagination_offset** (`integer`, optional) Offset to start pagination from this position in the results. -- **results_per_page** (`integer`, optional) The number of incident priorities to display per page. - -## PagerdutyApi.ListRulesets - -
- - -Retrieve a list of all rulesets from PagerDuty. - -**Parameters** - -- **include_total_count** (`boolean`, optional) Set to true to include the total count of results in the response. By default, this is omitted for speed. Refer to the Pagination Docs for details. -- **pagination_offset** (`integer`, optional) The starting point for pagination in search results. Use this to skip a specific number of results. -- **results_per_page** (`integer`, optional) Specify the number of ruleset results to return per page. - -## PagerdutyApi.CreateRuleset - -
- - -Create a new ruleset to manage event routing. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetRuleset - -
- - -Retrieve details of a ruleset from PagerDuty. - -**Parameters** - -- **ruleset_id** (`string`, required) The unique identifier for the ruleset to retrieve from PagerDuty. - -## PagerdutyApi.UpdateRuleset - -
- - -Update an existing ruleset in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier for the ruleset to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeleteRuleset - -
- - -Delete an existing ruleset in PagerDuty. - -**Parameters** - -- **ruleset_id** (`string`, required) The unique identifier of the ruleset to be deleted. - -## PagerdutyApi.ListEventRules - -
- - -Retrieve all event rules within a specified ruleset. - -**Parameters** - -- **ruleset_id** (`string`, required) The unique identifier for the ruleset to list event rules from. -- **include_total_in_response** (`boolean`, optional) Set to true to include the total number of results in the pagination response. This may impact response time. -- **pagination_start_offset** (`integer`, optional) The starting point for pagination to begin returning results from a specific offset. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. - -## PagerdutyApi.CreateEventRule - -
- - -Create a new event rule within a ruleset. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier for the resource (ruleset) in which the event rule will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetEventRule - -
- - -Retrieve details of an event rule from a ruleset. - -**Parameters** - -- **event_rule_id** (`string`, required) The ID of the Event Rule to retrieve from a ruleset. -- **resource_id** (`string`, required) The unique ID of the resource to retrieve details for. This is required to specify which resource's event rule details are needed. - -## PagerdutyApi.UpdateEventRule - -
- - -Update an existing event rule within a ruleset. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique ID of the ruleset resource to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **event_rule_id** (`string`, optional) The unique identifier of the Event Rule to update within the ruleset. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeleteEventRule - -
- - -Delete an event rule from a specified ruleset. - -**Parameters** - -- **event_rule_id** (`string`, required) The unique identifier of the Event Rule to be deleted. -- **resource_id** (`string`, required) The unique identifier of the resource (ruleset) to delete the event rule from. - -## PagerdutyApi.ListOnCallSchedules - -
- - -Retrieve the on-call schedules from PagerDuty. - -**Parameters** - -- **additional_details_to_include** (`string`, optional) Specify additional details to include, such as 'schedule_layers', 'overrides_subschedule', 'final_schedule'. -- **end_date_range** (`string`, optional) Specify the end date for the schedule entries range. Defaults to 2 weeks after the 'since' date if not provided. -- **filter_by_name** (`string`, optional) Filters results to show records with matching names. -- **include_total_in_pagination** (`boolean`, optional) Set to true to populate the total field in pagination responses. Defaults to null for faster response times if false. -- **pagination_offset** (`integer`, optional) The starting point for pagination of search results. Use this to skip a specific number of results. -- **render_results_in_time_zone** (`string`, optional) Specify the time zone for displaying results. Defaults to the user's or account's time zone. -- **results_per_page** (`integer`, optional) The number of results to retrieve per page for the on-call schedules. -- **start_date_for_schedule_entries** (`string`, optional) The start date for showing schedule entries. Defaults to 2 weeks before the 'until' date if not specified. -- **user_id_for_next_oncall** (`string`, optional) Specify a user_id to get information about this user's next on-call schedule. - -## PagerdutyApi.CreateOnCallSchedule - -
- - -Create a new on-call schedule for users. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **allow_overflow** (`boolean`, optional) Set to true to allow on-call schedule entries to extend beyond date range bounds. Defaults to false. This results in longer schedule entries that encompass the full day if applicable. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetScheduleDetails - -
- - -Retrieve detailed schedule information. - -**Parameters** - -- **schedule_id** (`string`, required) The unique identifier for the schedule to retrieve details. -- **allow_schedule_overflow** (`boolean`, optional) If true, schedule entries can extend beyond date range bounds. Defaults to false, truncating entries at bounds. -- **date_range_start** (`string`, optional) The start date for the schedule entries. Defaults to 2 weeks before the end date if not provided. Optional parameter. -- **end_date_for_schedule_entries** (`string`, optional) The end of the date range to display schedule entries. Defaults to 2 weeks after the start date if provided. -- **results_time_zone** (`string`, optional) The time zone in which the schedule results will be rendered. Defaults to the schedule's time zone if not specified. -- **user_id_for_next_oncall** (`string`, optional) Specify the `user_id` to get information about this user's next on-call schedule. - -## PagerdutyApi.DeleteSchedule - -
- - -Delete an on-call schedule. - -**Parameters** - -- **schedule_id** (`string`, required) The unique identifier for the schedule to delete. - -## PagerdutyApi.UpdateOnCallSchedule - -
- - -Update an existing on-call schedule in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **schedule_id** (`string`, optional) The ID of the on-call schedule to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **allow_schedule_overflow** (`boolean`, optional) Allows schedule entries to exceed date range bounds if set to true. Defaults to false. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListScheduleAuditRecords - -
- - -Retrieve sorted audit records for a specific schedule. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the schedule resource to retrieve audit records for. -- **end_of_date_range** (`string`, optional) The end date for the search range. Defaults to 'now' if not specified; must be within 31 days after the 'since' date. -- **maximum_records_limit** (`integer`, optional) The maximum number of records to return. This is the lesser of the specified limit or the API's maximum size. -- **pagination_cursor** (`string`, optional) Cursor for requesting the next set of results. Use the `next_cursor` from the previous request to paginate. -- **start_date** (`string`, optional) The start date for searching audit records. Defaults to 24 hours ago if not specified. - -## PagerdutyApi.ListScheduleOverrides - -
- - -Fetch overrides for a specific schedule and time range. - -**Parameters** - -- **end_date_range** (`string`, required) The end date for the search range in which to list schedule overrides. -- **resource_id** (`string`, required) Specify the ID of the schedule resource to fetch overrides. -- **start_date** (`string`, required) The start date for the search range, formatted as YYYY-MM-DD. -- **include_overflown_entries** (`boolean`, optional) Set to true to include schedule entries extending beyond date range bounds. Defaults to false. -- **return_only_editable_overrides** (`boolean`, optional) Set to true to return only editable overrides. Only future overrides will be included. - -## PagerdutyApi.CreateScheduleOverride - -
- - -Create schedule overrides for specific users and time ranges. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier for the schedule resource to which the override will be applied. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeleteScheduleOverride - -
- - -Remove or truncate an on-call schedule override. - -**Parameters** - -- **override_id** (`string`, required) The unique identifier for the schedule override to be deleted or truncated. -- **resource_id** (`string`, required) The unique identifier for the schedule to remove or truncate the override from. - -## PagerdutyApi.ListOnCallUsers - -
- - -Retrieve users on call for a given schedule and time range. - -**Parameters** - -- **schedule_resource_id** (`string`, required) The ID of the schedule resource to retrieve on-call users for. -- **end_date_range** (`string`, optional) The end date for the time range of user search. Format as YYYY-MM-DD. -- **start_date_range** (`string`, optional) The start date of the range to search for users on call. Format should be YYYY-MM-DD. - -## PagerdutyApi.PreviewOnCallSchedule - -
- - -Generate a preview of an on-call schedule without saving it. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **start_date_range** (`string`, optional) The start date and time for the schedule preview. Use ISO 8601 format (e.g., '2023-10-01T10:00:00Z'). Only used when mode is 'execute'. -- **end_date** (`string`, optional) The end date of the range for the on-call schedule preview. Format as ISO 8601 string. Only used when mode is 'execute'. -- **include_overflow_entries** (`boolean`, optional) Set to true to allow schedule entries to overflow beyond the date range bounds. Defaults to false. True includes entries beyond specified dates. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.CreateServiceDependency - -
- - -Creates dependencies between two services in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetBusinessServiceDependencies - -
- - -Retrieve immediate dependencies of a Business Service. - -**Parameters** - -- **service_id** (`string`, required) The ID of the Business Service to retrieve its dependencies. - -## PagerdutyApi.RemoveServiceDependency - -
- - -Disassociate dependencies between two services. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetServiceDependencies - -
- - -Fetch immediate dependencies of a technical service. - -**Parameters** - -- **resource_id** (`string`, required) The ID of the technical service whose dependencies are to be retrieved. - -## PagerdutyApi.ListServices - -
- - -Retrieve a list of existing services. - -**Parameters** - -- **filter_by_service_name** (`string`, optional) Filters results to show only services with the specified name. -- **filter_by_team_ids** (`array[string]`, optional) Filter results to only include services related to the specified team IDs. Requires 'teams' ability. -- **include_additional_details** (`string`, optional) Array of additional details to include, such as 'escalation_policies', 'teams', 'integrations', or 'auto_pause_notifications_parameters'. -- **include_total_in_response** (`boolean`, optional) Set to true to include the total count of results in the pagination response. -- **name_query_filter** (`string`, optional) Filters results to show only services with names matching the query. -- **pagination_offset** (`integer`, optional) Offset to start pagination search results. -- **results_per_page** (`integer`, optional) Specify the number of results to be returned per page. -- **results_time_zone** (`string`, optional) Time zone for rendering results, defaulting to the account time zone. -- **sort_results_by** (`string`, optional) Specifies the field and order (ascending/descending) to sort the results by. Options include: 'name', 'name:asc', 'name:desc'. - -## PagerdutyApi.CreateNewService - -
- - -Create a new service for incident management. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetServiceDetails - -
- - -Retrieve details about an existing service. - -**Parameters** - -- **service_id** (`string`, required) The unique identifier of the service to retrieve details for. -- **additional_details_to_include** (`string`, optional) Array of additional details to include, such as escalation policies, teams, auto pause notifications parameters, or integrations. - -## PagerdutyApi.DeleteService - -
- - -Remove a service to prevent new incident creation. - -**Parameters** - -- **service_id** (`string`, required) The unique ID of the service to be deleted. - -## PagerdutyApi.UpdateServiceDetails - -
- - -Update details of an existing service in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **service_id** (`string`, optional) The unique identifier of the service to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListServiceAuditRecords - -
- - -Retrieve service audit records sorted by execution time. - -**Parameters** - -- **resource_id** (`string`, required) The ID of the service for which audit records are being retrieved. -- **end_date** (`string`, optional) The end of the date range for searching audit records. Defaults to `now()` if unspecified. Must be within 31 days after `start_date`. -- **pagination_cursor** (`string`, optional) Optional parameter to retrieve the next set of audit records. Use the token from `next_cursor` of the previous response. Defaults to the start if not provided. -- **result_limit** (`integer`, optional) Specify the maximum number of audit records to return. Accepts an integer value. -- **start_date_range** (`string`, optional) The start of the date range for search. Defaults to 24 hours ago if not specified. - -## PagerdutyApi.ListServiceChangeEvents - -
- - -Retrieve change events for a specific service. - -**Parameters** - -- **resource_id** (`string`, required) The ID of the service resource for which to list change events. -- **end_date_utc** (`string`, optional) The end of the date range for the search, in UTC ISO 8601 format. Only UTC dates are accepted. -- **filter_by_integration_ids** (`array[string]`, optional) An array of integration IDs to filter results. Only events related to these integrations will be returned. -- **include_total_in_response** (`boolean`, optional) Set to true to populate the total field in pagination responses, which may affect response time. -- **pagination_offset** (`integer`, optional) Offset to start pagination search results. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. -- **start_date** (`string`, optional) The start date of the search range, in UTC ISO 8601 format (e.g., '2023-10-01T00:00:00Z'). Ensure it is in UTC to avoid errors. -- **team_ids** (`array[string]`, optional) An array of team IDs to filter results. Account must have `teams` ability to use this. - -## PagerdutyApi.CreateServiceIntegration - -
- - -Create a new integration for a specific service. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The ID of the resource to create an integration for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.UpdateServiceIntegration - -
- - -Update an integration for a specific service. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier of the resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **service_integration_id** (`string`, optional) The unique identifier for the integration associated with the service to update. This ID specifies which integration to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetServiceIntegrationDetails - -
- - -Retrieve details about a specific service integration. - -**Parameters** - -- **integration_id** (`string`, required) The unique ID of the integration on the specified service in PagerDuty. -- **resource_id** (`string`, required) The unique identifier for the service resource to retrieve integration details. -- **include_additional_details** (`string`, optional) Specify additional details like 'services' or 'vendors' to include. - -## PagerdutyApi.ListServiceEventRules - -
- - -Retrieve a list of event rules for a specific service. - -**Parameters** - -- **service_id** (`string`, required) The unique identifier for the service whose event rules are being listed. -- **include_additional_models** (`string`, optional) Array of additional models to include in response, such as 'migrated_metadata'. -- **pagination_offset** (`integer`, optional) The starting point for pagination of search results, specified as an integer. -- **populate_total_field** (`boolean`, optional) Set to true to populate the total field in pagination responses; set to false to keep it null for faster responses. -- **results_per_page** (`integer`, optional) Specifies the number of results returned per page in the response. - -## PagerdutyApi.CreateServiceEventRule - -
- - -Create a new Event Rule on a Service in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **service_resource_id** (`string`, optional) The unique ID of the service resource where the event rule will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ConvertServiceEventRules - -
- - -Convert service event rules to orchestration rules. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the service to be converted. This is required to specify which service's event rules need to be converted to orchestration rules. - -## PagerdutyApi.GetEventRuleFromService - -
- - -Retrieve an event rule from a specified service. - -**Parameters** - -- **event_rule_id** (`string`, required) The ID of the event rule to retrieve from the specified service. -- **resource_id** (`string`, required) The unique identifier of the service resource to retrieve the event rule for. - -## PagerdutyApi.UpdateServiceEventRule - -
- - -Update a specific event rule within a service. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique ID of the service resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **event_rule_id** (`string`, optional) The ID of the Event Rule to update within the service. It identifies which event rule the update will apply to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeleteServiceEventRule - -
- - -Delete an event rule from a service in PagerDuty. - -**Parameters** - -- **event_rule_id** (`string`, required) The ID of the Event Rule to be deleted. Use this to specify which rule to remove. -- **service_id** (`string`, required) The unique identifier of the service resource from which to delete the event rule. - -## PagerdutyApi.CreateServiceCustomField - -
- - -Create a new custom field for services. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListServiceCustomFields - -
- - -Retrieve the custom fields for PagerDuty services. - -**Parameters** - -- **include_additional_details** (`string`, optional) Specify additional details to include, such as 'field_options'. - -## PagerdutyApi.GetServiceCustomFieldInfo - -
- - -Retrieve detailed information about a custom field for a service. - -**Parameters** - -- **field_id** (`string`, required) The unique identifier for the custom field you want to retrieve information about. -- **include_field_details** (`string`, optional) Specify additional details to include, such as 'field_options'. - -## PagerdutyApi.UpdateServiceCustomField - -
- - -Update a custom field for a PagerDuty service. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **service_field_id** (`string`, optional) The unique identifier of the custom field to update in PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeleteServiceCustomField - -
- - -Deletes a custom field from a service. - -**Parameters** - -- **field_id** (`string`, required) The ID of the custom field you want to delete from the service. - -## PagerdutyApi.ListServiceCustomFieldOptions - -
- - -Retrieve all options for a specific custom field in PagerDuty. - -**Parameters** - -- **field_id** (`string`, required) The unique identifier for the custom field to retrieve options for. - -## PagerdutyApi.AddServiceFieldOption - -
- - -Create a new option for a custom field in PagerDuty services. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **field_identifier** (`string`, optional) The unique identifier for the custom field where the new option will be added. This is required to specify which field you are modifying. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetServiceCustomFieldOption - -
- - -Retrieve a service custom field option by field and option ID. - -**Parameters** - -- **field_id** (`string`, required) The unique identifier for the field to which the custom option belongs. Required to fetch the specific field option. -- **field_option_identifier** (`string`, required) The unique identifier for the field option. Use to specify which custom field option to retrieve. - -## PagerdutyApi.UpdateServiceCustomFieldOption - -
- - -Update a custom field option in a service. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **field_id** (`string`, optional) The unique identifier of the field to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **field_option_id** (`string`, optional) The ID of the custom field option to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeleteServiceCustomFieldOption - -
- - -Delete a custom field option from a service. - -**Parameters** - -- **field_identifier** (`string`, required) The ID of the field to be deleted from the service. -- **field_option_id** (`string`, required) The unique identifier for the custom field option to be deleted. - -## PagerdutyApi.GetServiceCustomFieldValues - -
- - -Retrieve custom field values for a specific service. - -**Parameters** - -- **service_id** (`string`, required) The unique identifier for the PagerDuty service whose custom field values are to be retrieved. - -## PagerdutyApi.SetServiceCustomFieldValues - -
- - -Update custom field values for a specific service. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **service_id** (`string`, optional) The unique identifier of the service whose custom field values need to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListServiceFeatureEnablements - -
- - -List feature enablement settings for a service. - -**Parameters** - -- **service_id** (`string`, required) The unique identifier for the PagerDuty service whose feature enablements you want to list. - -## PagerdutyApi.UpdateServiceFeatureEnablement - -
- - -Update the feature enablement for a service addon. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The ID of the PagerDuty resource to update the feature enablement for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **feature_enablement_identifier** (`string`, optional) Specify the feature enablement identifier, typically the addon name. Currently, only 'aiops' is supported. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.RetrieveSessionConfigurations - -
- - -Retrieve session configurations for a PagerDuty account. - -**Parameters** - -- **session_configuration_type** (`string`, optional) Specifies session configuration type: 'mobile' or 'web'. Omit to return both types. - -## PagerdutyApi.UpdateSessionConfigurations - -
- - -Create or update session configurations in PagerDuty. - -**Parameters** - -- **absolute_session_time_to_live_seconds** (`integer`, required) Specify the absolute session time to live in seconds. -- **idle_session_time_to_live** (`integer`, required) Specify the idle session time to live in seconds. This determines how long a session remains active without activity before being terminated. -- **session_configuration_type** (`string`, required) Specify session configuration type: 'mobile', 'web', or a comma-separated list of both. - -## PagerdutyApi.DeletePagerdutySessionConfigurations - -
- - -Delete session configurations for a PagerDuty account. - -**Parameters** - -- **session_configuration_type** (`string`, required) Specify 'mobile', 'web', or a comma-separated list of both to define which session configurations to delete. - -## PagerdutyApi.GetAccountStandards - -
- - -Retrieve all standards of an account. - -**Parameters** - -- **active_standards_only** (`boolean`, optional) Set to true to include only active standards. Set to false to include both active and inactive standards. -- **resource_type_filter** (`string`, optional) Specify the type of resource to filter standards. Must be 'technical_service'. - -## PagerdutyApi.UpdateStandard - -
- - -Updates a standard in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **standard_id** (`string`, optional) The unique identifier of the standard to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListResourceStandards - -
- - -Retrieve standards applied to multiple resources. - -**Parameters** - -- **resource_ids** (`array[string]`, required) Array of resource IDs to which standards will be applied. Maximum of 100 items. -- **resource_type** (`string`, required) Specifies the type of resources to which the standards are applied. For example, 'technical_services'. - -## PagerdutyApi.GetResourceStandards - -
- - -Retrieve standards applied to a specified resource on PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The ID of the resource for which you want to list the applied standards. -- **resource_type** (`string`, required) Specify the type of resource to which standards are applied, such as 'technical_services'. - -## PagerdutyApi.GetStatusDashboards - -
- - -Retrieve all custom Status Dashboard views for your account. - -**Parameters** - -This tool does not take any parameters. - -## PagerdutyApi.GetStatusDashboard - -
- - -Retrieve PagerDuty status dashboard details by ID. - -**Parameters** - -- **status_dashboard_id** (`string`, required) The unique ID of the PagerDuty status dashboard to retrieve. - -## PagerdutyApi.GetImpactedServicesDashboard - -
- - -Get most impacted Business Services for a Status Dashboard. - -**Parameters** - -- **status_dashboard_id** (`string`, required) The ID of the Status Dashboard to fetch impacted Business Services for. -- **include_additional_fields** (`string`, optional) Specify additional fields to include, like highest impacting priority or total impacted count. Use values: 'services.highest_impacting_priority' or 'total_impacted_count'. - -## PagerdutyApi.GetStatusDashboardBySlug - -
- - -Retrieve a PagerDuty Status Dashboard by its URL slug. - -**Parameters** - -- **status_dashboard_url_slug** (`string`, required) The URL slug for a status dashboard, typically a dash-separated string like 'dash-separated-string'. Used to identify a specific dashboard in PagerDuty. - -## PagerdutyApi.GetServiceImpactsByUrlSlug - -
- - -Retrieve impacted business services from a status dashboard. - -**Parameters** - -- **status_dashboard_url_slug** (`string`, required) The URL slug for the specific status dashboard to retrieve service impacts from. -- **include_additional_fields** (`string`, optional) Specify whether to include additional fields such as highest impacting priority and total impacted count. Choose from 'services.highest_impacting_priority' or 'total_impacted_count'. - -## PagerdutyApi.ListStatusPages - -
- - -Retrieve a list of status pages. - -**Parameters** - -- **status_page_type** (`string`, optional) Specifies the type of the status page. Must be 'public' or 'private'. - -## PagerdutyApi.ListStatusPageImpacts - -
- - -Retrieve impacts for a specified status page by ID. - -**Parameters** - -- **status_page_id** (`string`, required) The ID of the status page to retrieve impacts for. -- **filter_by_post_type** (`string`, optional) Specify the type of posts to filter by: 'incident' or 'maintenance'. - -## PagerdutyApi.GetStatusPageImpact - -
- - -Retrieve impact details for a specific status page. - -**Parameters** - -- **status_page_id** (`string`, required) The ID of the status page resource to retrieve impact details for. -- **status_page_impact_id** (`string`, required) The unique identifier for the Status Page Impact. Use this to fetch specific impact details. - -## PagerdutyApi.ListStatusPageServices - -
- - -Retrieve services for a specific Status Page by ID. - -**Parameters** - -- **status_page_id** (`string`, required) The unique identifier of the Status Page to retrieve associated services. - -## PagerdutyApi.GetStatusPageService - -
- - -Get service details for a status page by ID and service ID. - -**Parameters** - -- **resource_id** (`string`, required) The ID of the status page resource to fetch the service for. -- **status_page_service_id** (`string`, required) The unique identifier of the Status Page service to be retrieved. - -## PagerdutyApi.ListStatusPageSeverities - -
- - -Retrieve severities for a specified status page. - -**Parameters** - -- **status_page_id** (`string`, required) The unique identifier for the status page to retrieve severities. -- **post_type_filter** (`string`, optional) Specify the type of post to filter. Options: 'incident' or 'maintenance'. - -## PagerdutyApi.GetStatusPageSeverity - -
- - -Retrieve severity details for a status page using IDs. - -**Parameters** - -- **status_page_id** (`string`, required) The unique identifier for the status page resource. -- **status_page_severity_id** (`string`, required) The unique identifier for the specific severity on a status page. Used to fetch severity details. - -## PagerdutyApi.ListStatusPageStatuses - -
- - -Retrieve statuses for a specific status page by ID. - -**Parameters** - -- **status_page_id** (`string`, required) The unique ID of the status page to retrieve statuses for. -- **filter_by_post_type** (`string`, optional) Filter statuses by post type. Options include 'incident' or 'maintenance'. - -## PagerdutyApi.GetStatusPageStatus - -
- - -Retrieve the status of a status page by ID and status ID. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier for the resource to fetch the status for. -- **status_page_status_id** (`string`, required) The ID of the Status Page status to retrieve. This is required to specify which status is being queried. - -## PagerdutyApi.ListStatusPagePosts - -
- - -Retrieve posts for a specific status page using its ID. - -**Parameters** - -- **status_page_id** (`string`, required) The unique ID of the status page to retrieve posts from. -- **filter_by_post_type** (`string`, optional) Filter posts by type. Acceptable values are 'incident' or 'maintenance'. -- **filter_by_reviewed_status** (`string`, optional) Filter posts by their reviewed status. Possible values are 'approved' or 'not_reviewed'. -- **status_identifiers** (`array[string]`, optional) Filter posts by an array of status identifiers to specify which statuses to retrieve. - -## PagerdutyApi.CreateStatusPagePost - -
- - -Create a status page post using a specific page ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **status_page_id** (`string`, optional) The unique identifier for the status page to which the post will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetStatusPagePost - -
- - -Retrieve a post from a specific status page. - -**Parameters** - -- **status_page_id** (`string`, required) The ID of the status page resource to retrieve the post from. -- **status_page_post_id** (`string`, required) The unique identifier for the Status Page Post to retrieve details. -- **include_models** (`array[string]`, optional) Array of model names to include in the response for additional detail. - -## PagerdutyApi.UpdateStatusPagePost - -
- - -Update a post on a status page by its ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The ID of the status page resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **status_page_post_id** (`string`, optional) The ID of the status page post to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeleteStatusPagePost - -
- - -Delete a post from a status page using its ID. - -**Parameters** - -- **status_page_id** (`string`, required) The unique identifier for the status page from which the post will be deleted. -- **status_page_post_id** (`string`, required) The unique identifier for the Status Page Post to be deleted. - -## PagerdutyApi.ListStatusUpdates - -
- - -Retrieve post updates for a specific status page and post ID. - -**Parameters** - -- **resource_id** (`string`, required) The unique ID of the status page resource for which updates are needed. -- **status_page_post_id** (`string`, required) The ID of the specific status page post to retrieve updates for. This identifies which post's updates will be listed. -- **filter_by_reviewed_status** (`string`, optional) Filter post updates by their reviewed status. Options are 'approved' or 'not_reviewed'. - -## PagerdutyApi.CreateStatusPagePostUpdate - -
- - -Create a post update for a specific status page post. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier of the resource you are targeting. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **status_page_post_id** (`string`, optional) The ID of the Status Page Post for which the update is created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetPostUpdate - -
- - -Retrieve specific post updates by post and update IDs. - -**Parameters** - -- **post_update_id** (`string`, required) The ID of the Status Page Post Update required for fetching specific update details. -- **resource_id** (`string`, required) The unique identifier for the resource to retrieve the post update. -- **status_page_post_id** (`string`, required) The unique identifier for the Status Page Post to retrieve updates for. - -## PagerdutyApi.ModifyStatusPagePostUpdate - -
- - -Update a specific status page post update. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier for the resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **status_page_post_id** (`string`, optional) The unique ID of the Status Page Post to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **status_page_post_update_id** (`string`, optional) The unique identifier for the specific status page post update to be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeleteStatusPagePostUpdate - -
- - -Delete a specific post update on PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The unique ID of the resource to be deleted. -- **status_page_post_id** (`string`, required) The ID of the Status Page Post to identify the specific post. -- **status_page_post_update_id** (`string`, required) The unique ID of the status page post update to delete. - -## PagerdutyApi.GetPostmortemByPostId - -
- - -Retrieve postmortem details using post ID. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier for the resource. Used to retrieve the specific postmortem information. -- **status_page_post_id** (`string`, required) The ID of the Status Page Post to retrieve postmortem details. - -## PagerdutyApi.CreateStatusPagePostmortem - -
- - -Create a postmortem for a status page post. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique ID of the resource for which the postmortem is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **status_page_post_id** (`string`, optional) The unique identifier of the status page post for which the postmortem is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.UpdateStatusPagePostmortem - -
- - -Update a postmortem for a specific post by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique ID of the resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **status_page_post_id** (`string`, optional) The ID of the Status Page Post to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.DeletePostmortem - -
- - -Deletes a postmortem from a status page post by ID. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the resource to delete. -- **status_page_post_id** (`string`, required) The unique identifier for the status page post whose postmortem you want to delete. - -## PagerdutyApi.ListStatusPageSubscriptions - -
- - -Retrieve subscriptions for a specific status page by ID. - -**Parameters** - -- **status_page_id** (`string`, required) The unique identifier for the status page. Required to retrieve subscriptions associated with it. -- **subscription_channel_filter** (`string`, optional) Specify the channel to filter subscriptions. Options: webhook, email, slack. -- **subscription_status_filter** (`string`, optional) Filter the list of subscriptions by their status: 'active' or 'pending'. - -## PagerdutyApi.CreateStatusPageSubscription - -
- - -Subscribe to a status page by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **status_page_id** (`string`, optional) The ID of the status page to subscribe to. This string is used to identify the specific page. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetStatusPageSubscription - -
- - -Retrieve a status page subscription by ID. - -**Parameters** - -- **resource_id** (`string`, required) The unique ID of the status page resource to retrieve the subscription details. -- **status_page_subscription_id** (`string`, required) The unique identifier for the Status Page subscription. - -## PagerdutyApi.DeleteStatusPageSubscription - -
- - -Delete a status page subscription by ID. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the status page resource to delete the subscription from. -- **status_page_subscription_id** (`string`, required) The unique identifier for the specific status page subscription to be deleted. - -## PagerdutyApi.ListAccountTags - -
- - -Retrieve all tags for your account. - -**Parameters** - -- **include_total_in_pagination** (`boolean`, optional) Set to true to include the total number of results in the pagination response. Defaults to false for faster response without total. -- **pagination_offset** (`integer`, optional) Offset to start pagination search results. Use this to specify the starting point for retrieval when paginating through results. -- **results_per_page** (`integer`, optional) The number of results to display per page. -- **tag_filter_query** (`string`, optional) Filters the results to show only tags whose labels match this query string. - -## PagerdutyApi.CreateTag - -
- - -Create a tag for filtering in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetTagDetails - -
- - -Retrieve details about a specific PagerDuty Tag. - -**Parameters** - -- **resource_id** (`string`, required) The unique ID of the PagerDuty Tag to retrieve details for. - -## PagerdutyApi.RemoveTag - -
- - -Remove an existing tag from escalation policies, teams, or users. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the resource (tag) to be removed. - -## PagerdutyApi.GetTagsByEntity - -
- - -Retrieve related entities for a specific tag. - -**Parameters** - -- **entity_type** (`string`, required) Specify the type of entity related to the tag. Options: 'users', 'teams', or 'escalation_policies'. -- **resource_id** (`string`, required) The unique identifier of the resource to retrieve related entities for a tag. -- **include_total_in_pagination** (`boolean`, optional) Set to true to include the total count of results in pagination responses, which may impact response times. -- **pagination_offset** (`integer`, optional) Offset to start pagination of search results. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. - -## PagerdutyApi.CreateNewTeam - -
- - -Create a new team with users and escalation policies. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListPagerdutyTeams - -
- - -Retrieve a list of teams from your PagerDuty account. - -**Parameters** - -- **filter_by_name_query** (`string`, optional) Specify a query to filter teams by name. Only teams with names matching this query will be returned. -- **include_total_in_response** (`boolean`, optional) Set to true to include the total count of results in the response for pagination. This may impact response time. -- **pagination_offset** (`integer`, optional) Offset to start returning team results from in pagination. -- **results_per_page** (`integer`, optional) Specify the number of teams to return per page. - -## PagerdutyApi.GetTeamDetails - -
- - -Retrieve details about a specified team. - -**Parameters** - -- **team_id** (`string`, required) The unique ID of the team to retrieve information for. -- **include_additional_models** (`string`, optional) Specify additional models like 'privileges' to include in the response. - -## PagerdutyApi.DeleteTeamInPagerduty - -
- - -Delete an existing team in PagerDuty. - -**Parameters** - -- **team_id** (`string`, required) The unique identifier of the team to be deleted in PagerDuty. -- **reassignment_team_id** (`string`, optional) The ID of the team to reassign unresolved incidents. If omitted, incidents will become account-level. - -## PagerdutyApi.UpdateTeam - -
- - -Update the details of an existing team. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_id** (`string`, optional) The unique identifier of the team to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetLatestTeamAuditRecords - -
- - -Retrieve the latest audit records for a specific team. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the team or resource for which you want to retrieve audit records. This ID specifies which team's audit records to retrieve. -- **end_date_for_search_range** (`string`, optional) The end date of the search range. Defaults to current date if not specified, and must be within 31 days of the 'since' date. -- **next_results_cursor** (`string`, optional) Cursor for fetching the next set of results. Obtained from the `next_cursor` of a previous request. Starts from the beginning if not provided. -- **number_of_records_limit** (`integer`, optional) Specify the maximum number of audit records to retrieve in the request. -- **start_date_range** (`string`, optional) The date from which to start searching audit records. Defaults to 24 hours ago if not specified. - -## PagerdutyApi.RemoveTeamEscalationPolicy - -
- - -Remove an escalation policy from a team. - -**Parameters** - -- **escalation_policy_id** (`string`, required) The identifier of the escalation policy to remove from the team. -- **resource_id** (`string`, required) The unique identifier of the team resource from which the escalation policy will be removed. - -## PagerdutyApi.AddEscalationPolicyToTeam - -
- - -Add an escalation policy to a team. - -**Parameters** - -- **escalation_policy_id** (`string`, required) The ID of the escalation policy to be added to the team. Ensure it is a valid policy ID within your organization. -- **team_resource_id** (`string`, required) The unique identifier for the team resource to update with an escalation policy. - -## PagerdutyApi.ListTeamMembers - -
- - -Retrieve details of members in a specified team. - -**Parameters** - -- **team_id** (`string`, required) The unique identifier for the team whose members you want to retrieve. -- **include_total_in_pagination** (`boolean`, optional) Set to true to populate the total field in pagination responses. Default is false for faster response times. -- **include_users_in_response** (`string`, optional) Include additional models such as 'users' in the team members response. -- **pagination_offset** (`integer`, optional) Integer to set the starting point for pagination in search results. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page. - -## PagerdutyApi.GetTeamNotificationSubscriptions - -
- - -Retrieve a team's notification subscriptions from PagerDuty. - -**Parameters** - -- **team_id** (`string`, required) The ID of the team to retrieve notification subscriptions for. This must be a valid team ID added through the notification subscriptions endpoint. - -## PagerdutyApi.CreateTeamNotificationSubscriptions - -
- - -Create notification subscriptions for a specified team. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_id** (`string`, optional) The ID of the team for which you want to create notification subscriptions. This is a required identifier. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.UnsubscribeTeamNotifications - -
- - -Unsubscribe a team from specific notification subscriptions. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The ID of the resource to unsubscribe from notifications. This should be a string value representing the unique identifier for the specific resource. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.RemoveUserFromTeam - -
- - -Remove a user from a specific team in PagerDuty. - -**Parameters** - -- **team_id** (`string`, required) The ID of the team from which the user will be removed. -- **team_user_id** (`string`, required) The ID of the user to be removed from the team in PagerDuty. - -## PagerdutyApi.AddUserToTeam - -
- - -Add a user to a specified team on PagerDuty. - -**Parameters** - -- **team_id** (`string`, required) The ID of the team to which the user will be added. -- **user_id** (`string`, required) The unique identifier for the user to be added to the team. This ID should match a user already present in the system. -- **user_role_on_team** (`string`, optional) Specify the role of the user on the team. Allowed values are 'observer', 'responder', or 'manager'. - -## PagerdutyApi.GetTemplateList - -
- - -Retrieve a list of all templates on an account. - -**Parameters** - -- **filter_by_template_type** (`string`, optional) Specify the type of template to filter results by. Use this to narrow down the list to specific template types. -- **include_total_in_response** (`boolean`, optional) Set to true to include the total count of templates in the response. This may affect response time. -- **pagination_offset** (`integer`, optional) Offset to start pagination search results. Define where the returned list should begin. -- **results_per_page** (`integer`, optional) The number of template results returned per page. Use this to control pagination size. -- **search_template_query** (`string`, optional) Template name or description to search for in the templates list. -- **sort_by_field_and_direction** (`string`, optional) Specify the field ('name' or 'created_at') and direction ('asc' or 'desc') to sort results. Format: field:direction, defaulting to ascending. - -## PagerdutyApi.CreateAlertTemplate - -
- - -Create a new alert or incident template. - -**Parameters** - -- **email_body_html** (`string`, optional) The HTML body content for the email message to be sent as part of the template. -- **email_subject** (`string`, optional) The subject line for the email template, which will appear as the email's subject. -- **short_message_template** (`string`, optional) The short message for the template, used in SMS, Push notifications, Slack, etc. -- **template_description** (`string`, optional) Provide a brief description of the template, outlining its purpose and use case. -- **template_name** (`string`, optional) The name for the new template to be created in PagerDuty. -- **template_type** (`string`, optional) The type of template. Currently, only 'status_update' is supported. - -## PagerdutyApi.GetTemplateDetails - -
- - -Retrieve details of a specific template using its ID. - -**Parameters** - -- **template_id** (`string`, required) The unique ID of the template to retrieve details for. - -## PagerdutyApi.UpdateTemplate - -
- - -Update an existing template in PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the template to be updated. -- **email_body_html** (`string`, optional) The HTML content for the email body of the template. -- **email_subject** (`string`, optional) The subject of the email to be updated in the template. -- **short_message_template** (`string`, optional) The short message content for the template used in SMS, Push notifications, Slack, etc. -- **template_description** (`string`, optional) Provide a brief description of the template. This helps to explain its purpose and content. -- **template_name** (`string`, optional) The name of the template to update in PagerDuty. -- **template_type** (`string`, optional) The type of template. Only 'status_update' is supported. - -## PagerdutyApi.DeleteTemplate - -
- - -Delete a specific template on the PagerDuty account. - -**Parameters** - -- **template_id** (`string`, required) The ID of the template resource to delete from the PagerDuty account. Required for deletion. - -## PagerdutyApi.RenderStatusUpdateTemplate - -
- - -Renders a status update template with given incident data. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incident_id** (`string`, optional) The ID of the incident resource to render the template for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetTemplateFields - -
- - -Retrieve fields for account templates. - -**Parameters** - -This tool does not take any parameters. - -## PagerdutyApi.ListPagerdutyUsers - -
- - -Retrieve users from your PagerDuty account. - -**Parameters** - -- **additional_models_to_include** (`string`, optional) Array of additional models to include in the response, such as 'contact_methods', 'notification_rules', 'teams', or 'subdomains'. -- **include_total_in_response** (`boolean`, optional) Set to true to include the total count in pagination responses, which may slow down the response time. -- **pagination_offset** (`integer`, optional) Offset to start pagination in search results. Specify the number of items to skip. -- **results_per_page** (`integer`, optional) Specify the number of user results to be returned per page. -- **team_ids** (`array[string]`, optional) An array of team IDs to filter the user results. Requires the account to have the 'teams' ability. -- **user_name_filter** (`string`, optional) String to filter users by name in the PagerDuty account. - -## PagerdutyApi.CreatePagerdutyUser - -
- - -Create a new user in PagerDuty for account interaction. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **requester_email** (`string`, optional) The email of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetUserDetails - -
- - -Retrieve details about a specific PagerDuty user. - -**Parameters** - -- **user_id** (`string`, required) The unique identifier for the specific PagerDuty user whose details are to be retrieved. -- **additional_models_to_include** (`string`, optional) Specify additional models (e.g., 'contact_methods', 'notification_rules') to include in the response. - -## PagerdutyApi.RemoveUserFromPagerduty - -
- - -Remove an existing user from PagerDuty. - -**Parameters** - -- **user_id** (`string`, required) The unique identifier of the user to be removed from PagerDuty. - -## PagerdutyApi.UpdatePagerdutyUser - -
- - -Update an existing PagerDuty user's information. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_id** (`string`, optional) The unique identifier for the user to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetUserAuditRecords - -
- - -Retrieve audit records for a specified user. - -**Parameters** - -- **user_id** (`string`, required) The unique identifier for the user whose audit records are being retrieved. -- **end_date_range** (`string`, optional) The end date for searching audit records. Defaults to now and cannot exceed 31 days after `since`. -- **pagination_cursor** (`string`, optional) Optional string to fetch the next set of results. Use the `next_cursor` from previous responses. -- **result_limit** (`integer`, optional) Specifies the maximum number of audit records to retrieve in a single request. -- **start_date** (`string`, optional) The start date for the search range. Defaults to 24 hours ago if not specified. - -## PagerdutyApi.GetUserContactMethods - -
- - -Retrieve a user's contact methods from PagerDuty. - -**Parameters** - -- **user_id** (`string`, required) The ID of the PagerDuty user whose contact methods are to be retrieved. - -## PagerdutyApi.CreateUserContactMethod - -
- - -Create a new contact method for a PagerDuty user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_id** (`string`, optional) The unique identifier of the user for whom the contact method is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetUserContactMethodInfo - -
- - -Retrieve details about a user's contact method in PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The ID of the user resource to retrieve contact method details for. -- **user_contact_method_id** (`string`, required) The unique identifier for a user's specific contact method in PagerDuty. - -## PagerdutyApi.RemoveUserContactMethod - -
- - -Remove a user's contact method from PagerDuty. - -**Parameters** - -- **contact_method_id** (`string`, required) The identifier for the user's contact method to be removed from PagerDuty. -- **user_resource_id** (`string`, required) The ID of the user resource to identify which user the contact method belongs to. - -## PagerdutyApi.UpdateUserContactMethod - -
- - -Update a user's contact method on PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier of the user whose contact method is being updated. It should be a string representing the user's ID in PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **user_contact_method_id** (`string`, optional) The unique identifier for the user's contact method to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetUserLicense - -
- - -Retrieve the license allocated to a user. - -**Parameters** - -- **user_id** (`string`, required) The unique identifier of the user to fetch license information for. - -## PagerdutyApi.ListUserNotificationRules - -
- - -Retrieve a PagerDuty user's notification rules. - -**Parameters** - -- **user_resource_id** (`string`, required) The unique identifier of the PagerDuty user whose notification rules are to be retrieved. -- **incident_urgency** (`string`, optional) Specify the incident urgency for the notification rules: 'high', 'low', or 'all'. Defaults to 'high'. -- **include_additional_details** (`string`, optional) Specify additional details to include, such as 'contact_methods'. - -## PagerdutyApi.CreateUserNotificationRule - -
- - -Create a new user notification rule in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_resource_id** (`string`, optional) The unique ID of the user resource for which the notification rule is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetUserNotificationRule - -
- - -Retrieve details about a user's notification rule. - -**Parameters** - -- **notification_rule_id** (`string`, required) The unique identifier for the user's notification rule to be retrieved. -- **user_id** (`string`, required) The unique identifier of the user in PagerDuty. Required to fetch their notification rule. -- **include_additional_details** (`string`, optional) Specify additional details to include such as 'contact_methods'. - -## PagerdutyApi.RemoveUserNotificationRule - -
- - -Remove a user's notification rule on PagerDuty. - -**Parameters** - -- **notification_rule_identifier** (`string`, required) The unique identifier for the notification rule to be removed from the user's profile. -- **resource_id** (`string`, required) The ID of the user who owns the notification rule. - -## PagerdutyApi.UpdateUserNotificationRule - -
- - -Update a user's notification rule in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique ID of the user's notification resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **notification_rule_id** (`string`, optional) The ID of the user's notification rule to update in PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetUserNotificationSubscriptions - -
- - -Retrieve a user's notification subscriptions. - -**Parameters** - -- **user_id** (`string`, required) The unique identifier for the user whose notification subscriptions are being retrieved. - -## PagerdutyApi.CreateUserNotificationSubscriptions - -
- - -Create new notification subscriptions for a user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier of the resource for which to create notification subscriptions. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.UnsubscribeUserNotifications - -
- - -Unsubscribe a user from notification subscriptions. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier of the resource from which to unsubscribe the user. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.ListUserHandoffNotificationRules - -
- - -List handoff notification rules for a PagerDuty user. - -**Parameters** - -- **user_id** (`string`, required) The unique identifier of the PagerDuty user whose handoff notification rules you want to retrieve. - -## PagerdutyApi.CreateHandoffNotificationRule - -
- - -Create a handoff notification rule for PagerDuty users. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier for the user or resource for which the handoff notification rule will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetUserHandoffNotificationRule - -
- - -Fetch a user's handoff notification rule details. - -**Parameters** - -- **oncall_handoff_notification_rule_id** (`string`, required) The ID of the oncall handoff notification rule for the user. -- **user_id** (`string`, required) The unique identifier for the user whose handoff notification rule details are being retrieved. This is required to specify the target user in PagerDuty. - -## PagerdutyApi.DeleteUserHandoffNotificationRule - -
- - -Remove a handoff notification rule for a PagerDuty user. - -**Parameters** - -- **oncall_handoff_notification_rule_id** (`string`, required) The unique ID of the on-call handoff notification rule to be deleted for the user. -- **user_resource_id** (`string`, required) The ID of the user resource to delete the handoff notification rule from. Required for identifying the user. - -## PagerdutyApi.UpdateUserHandoffNotification - -
- - -Update a user's handoff notification rule in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique ID of the resource to be updated, representing the user in PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **handoff_notification_rule_id** (`string`, optional) The ID of the oncall handoff notification rule to update for the user. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetUserActiveSessions - -
- - -List active sessions of a specified PagerDuty user. - -**Parameters** - -- **user_id** (`string`, required) The ID of the PagerDuty user whose active sessions are to be retrieved. - -## PagerdutyApi.GetUserSessionDetails - -
- - -Fetches details about a specific PagerDuty user session. - -**Parameters** - -- **resource_id** (`string`, required) The unique ID of the PagerDuty user whose session details you want to retrieve. -- **session_type** (`string`, required) Specifies the type of the user session. This information is required to identify the nature of the session for the user session ID. -- **user_session_id** (`string`, required) The unique session ID for a specific PagerDuty user to retrieve session details. - -## PagerdutyApi.GetUserNotificationRules - -
- - -Retrieve status update notification rules for a PagerDuty user. - -**Parameters** - -- **user_id** (`string`, required) The unique identifier for the PagerDuty user whose notification rules are to be retrieved. -- **include_additional_details** (`string`, optional) Specify additional details to include, such as 'contact_methods'. - -## PagerdutyApi.CreateUserStatusUpdateNotificationRule - -
- - -Create a new status update notification rule for a user. - -**Parameters** - -- **resource_id** (`string`, required) The ID of the user resource for which the notification rule is being created. -- **status_update_notification_rule** (`json`, optional) A JSON object representing the rule for contacting the user for incident status updates. It includes details like contact method and notification preferences. - -## PagerdutyApi.GetUserStatusUpdateNotificationRule - -
- - -Get details about a user's status update notification rule. - -**Parameters** - -- **status_update_notification_rule_id** (`string`, required) The ID of the user's status update notification rule to retrieve details for. -- **user_id** (`string`, required) The unique identifier of the user whose notification rule details are to be retrieved. -- **include_contact_methods** (`string`, optional) Specify 'contact_methods' to include additional contact method details in the response. Leave empty if no additional details are needed. - -## PagerdutyApi.RemoveUserStatusUpdateNotificationRule - -
- - -Removes a user's status update notification rule in PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the user whose notification rule is being deleted. -- **status_update_notification_rule_id** (`string`, required) The ID of the status update notification rule for a specific user in PagerDuty. - -## PagerdutyApi.UpdateUserStatusNotificationRule - -
- - -Update a user's status update notification rule. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **resource_id** (`string`, optional) The unique identifier for the user resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **status_update_notification_rule_id** (`string`, optional) The ID of the user's status update notification rule to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetCurrentUserDetails - -
- - -Retrieves details about the current PagerDuty user. - -**Parameters** - -- **additional_models_to_include** (`string`, optional) Specifies additional models, such as contact methods or teams, to include in the response. Options: contact_methods, notification_rules, teams, subdomains. - -## PagerdutyApi.ListAllVendors - -
- - -Retrieve a list of all vendor integrations. - -**Parameters** - -- **include_total_in_pagination** (`boolean`, optional) Set to true to populate the `total` field in pagination responses, which provides the total number of results but may affect performance. -- **pagination_offset** (`integer`, optional) Offset for starting pagination of the search results. -- **results_per_page** (`integer`, optional) The maximum number of vendor results to return per page. Use to control pagination. - -## PagerdutyApi.GetVendorDetails - -
- - -Fetch detailed information about a specific vendor on PagerDuty. - -**Parameters** - -- **vendor_id** (`string`, required) The unique identifier for the vendor whose details are being requested. - -## PagerdutyApi.ListWebhookSubscriptions - -
- - -Retrieve existing webhook subscriptions from PagerDuty. - -**Parameters** - -- **include_total_in_pagination** (`boolean`, optional) Set to true to populate the `total` field in pagination responses. Useful if you need the total number of entries. -- **pagination_offset** (`integer`, optional) Offset to start the pagination of search results. -- **resource_filter_id** (`string`, optional) The ID of the resource to filter upon. Required if filtering by service or team. -- **resource_filter_type** (`string`, optional) Specify the type of resource to filter webhook subscriptions by, such as 'account', 'service', or 'team'. -- **results_per_page** (`integer`, optional) Specify the number of webhook subscription results to return per page. - -## PagerdutyApi.CreateWebhookSubscription - -
- - -Create a new webhook subscription in PagerDuty. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## PagerdutyApi.GetWebhookSubscriptionDetails - -
- - -Retrieve details about a specific webhook subscription. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the webhook subscription to retrieve details for. - -## PagerdutyApi.UpdateWebhookSubscription - -
- - -Update an existing webhook subscription. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the webhook subscription to be updated. -- **filter_object_id** (`string`, optional) The ID of the object used as the filter. Required unless the filter type is account_reference. -- **filter_object_type** (`string`, optional) Specify the type of object used as the filter: 'account_reference', 'service_reference', or 'team_reference'. -- **oauth_client_id** (`string`, optional) The ID of the OAuth client for authenticating webhook requests. This field is optional. -- **send_webhook** (`boolean`, optional) Set to true to send a webhook. Default is true. False to disable. -- **webhook_events** (`array[string]`, optional) List of outbound event types the subscription will receive. -- **webhook_subscription_description** (`string`, optional) A short description of the webhook subscription. - -## PagerdutyApi.DeleteWebhookSubscription - -
- - -Delete a webhook subscription in PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier for the webhook subscription to be deleted. - -## PagerdutyApi.EnableWebhookSubscription - -
- - -Enable a temporarily disabled webhook subscription. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier for the webhook subscription to be enabled. - -## PagerdutyApi.TestWebhookSubscription - -
- - -Test a webhook subscription by firing a test event. - -**Parameters** - -- **resource_id** (`string`, required) The unique ID of the webhook subscription to be tested. - -## PagerdutyApi.ListOauthClients - -
- - -Retrieve all OAuth clients for webhook subscriptions. - -**Parameters** - -This tool does not take any parameters. - -## PagerdutyApi.CreateOauthClient - -
- - -Create a new OAuth client for webhook subscriptions. - -**Parameters** - -- **oauth_client_id** (`string`, required) The OAuth client ID provided by the OAuth server. -- **oauth_client_name** (`string`, required) A human-readable name for the OAuth client. It is used to identify the client in a user-friendly manner. -- **oauth_client_secret** (`string`, required) The client secret provided by the OAuth server for the OAuth client. -- **oauth_grant_type** (`string`, required) The OAuth grant type. Currently, only 'client_credentials' is supported. -- **oauth_token_endpoint_url** (`string`, required) The URL for the OAuth token endpoint required to obtain an access token. -- **oauth_scopes_requested** (`string`, optional) The OAuth scopes requested for this client. - -## PagerdutyApi.GetOauthClientDetails - -
- - -Retrieve details of a specific OAuth client by ID. - -**Parameters** - -- **oauth_client_id** (`string`, required) The unique identifier of the OAuth client to retrieve details for. - -## PagerdutyApi.UpdateOauthClient - -
- - -Update an existing OAuth client configuration. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier for the OAuth client resource to update. -- **oauth_client_id** (`string`, optional) The OAuth client ID as provided by the OAuth server. -- **oauth_client_name** (`string`, optional) A human-readable name for the OAuth client. -- **oauth_client_secret** (`string`, optional) The OAuth client secret provided by the OAuth server for authentication. -- **oauth_grant_type** (`string`, optional) Specifies the OAuth grant type to use, currently only 'client_credentials' is supported. Always use 'client_credentials' as input. -- **oauth_scopes_requested** (`string`, optional) The OAuth scopes requested for this client. Provide as a space-separated string. -- **oauth_token_endpoint_url** (`string`, optional) The URL for the OAuth token endpoint required for this client. - -## PagerdutyApi.DeleteOauthClient - -
- - -Delete an OAuth client from webhook subscriptions. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the OAuth client to be deleted. - -## PagerdutyApi.ListWorkflowIntegrations - -
- - -Retrieve a list of available workflow integrations. - -**Parameters** - -- **include_deprecated_integrations** (`boolean`, optional) Set to true to include deprecated integrations in the response; false to exclude them. -- **next_results_cursor** (`string`, optional) A string to request the next set of results, usually from the `next_cursor` field of the previous response. Defaults to starting at the beginning if not provided. -- **result_limit** (`integer`, optional) The limit on the number of workflow integrations to return in the response. - -## PagerdutyApi.GetWorkflowIntegrationDetails - -
- - -Retrieve details about a PagerDuty workflow integration. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier of the workflow integration resource in PagerDuty that you want to retrieve details for. - -## PagerdutyApi.ListWorkflowIntegrationConnections - -
- - -Retrieve all workflow integration connections from PagerDuty. - -**Parameters** - -- **filter_by_partial_name** (`string`, optional) Filter integrations by a partial name match to narrow down the results. -- **next_results_cursor** (`string`, optional) Optional parameter to retrieve the next set of results from the API. Typically obtained from the previous request's `next_cursor` field. If not provided, the request starts from the beginning. -- **response_limit** (`integer`, optional) The maximum number of results to return for the request. - -## PagerdutyApi.GetWorkflowConnections - -
- - -Retrieve connections for a specific workflow integration. - -**Parameters** - -- **workflow_integration_id** (`string`, required) Specify the unique ID of the workflow integration to retrieve its connections. -- **filter_by_partial_name** (`string`, optional) Filter integrations by a partial name match. Provide part of the integration name to refine results. -- **next_result_cursor** (`string`, optional) Request the next set of results using the cursor obtained from a previous response. Leave empty to start from the beginning. -- **result_limit** (`integer`, optional) Specifies the maximum number of results to return. It is the minimum of the request's limit or the API's maximum request size. - -## PagerdutyApi.CreateWorkflowIntegrationConnection - -
- - -Create a new workflow integration connection in PagerDuty. - -**Parameters** - -- **workflow_integration_id** (`string`, required) The ID of the Workflow Integration to create a connection for. - -## PagerdutyApi.GetWorkflowIntegrationConnectionDetails - -
- - -Retrieve details of a Workflow Integration Connection. - -**Parameters** - -- **resource_id** (`string`, required) The unique ID of the Workflow Integration Connection resource. -- **workflow_integration_id** (`string`, required) The unique ID of the Workflow Integration to retrieve details for. - -## PagerdutyApi.UpdateWorkflowIntegrationConnection - -
- - -Update an existing Workflow Integration Connection. - -**Parameters** - -- **integration_id** (`string`, required) The ID of the Workflow Integration to be updated. Required to specify which integration connection to modify. -- **resource_id** (`string`, required) The ID of the resource to be updated. - -## PagerdutyApi.DeleteWorkflowIntegrationConnection - -
- - -Delete a Workflow Integration Connection on PagerDuty. - -**Parameters** - -- **resource_id** (`string`, required) The unique identifier for the resource to be deleted. -- **workflow_integration_id** (`string`, required) The unique ID of the Workflow Integration to be deleted. - -## Reference - -Below is a reference of enumerations used by some of the tools in the PagerdutyApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - ---- - -## Auth - -The Arcade PagerDuty MCP Server uses the [PagerDuty auth provider](/references/auth-providers/pagerduty) to connect to users' PagerDuty accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the PagerDuty auth provider](/references/auth-providers/pagerduty#configuring-pagerduty-auth) with your own PagerDuty app credentials. - - diff --git a/app/en/resources/integrations/development/posthog-api/page.mdx b/app/en/resources/integrations/development/posthog-api/page.mdx deleted file mode 100644 index ef950c17e..000000000 --- a/app/en/resources/integrations/development/posthog-api/page.mdx +++ /dev/null @@ -1,27053 +0,0 @@ -# PosthogApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The PosthogApi MCP Server offers a comprehensive suite of tools for managing and analyzing data within the PostHog platform. Users can leverage these tools to: - -## Configuration - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) -The PosthogApi MCP Server requires two secrets to authenticate with your PostHog instance: - -### Getting Your PostHog Server URL - -The server URL depends on your PostHog deployment: - -- **PostHog Cloud (US Region)**: `https://us.posthog.com` -- **PostHog Cloud (EU Region)**: `https://eu.posthog.com` -- **Self-Hosted**: Use your instance's base URL (e.g., `https://analytics.yourdomain.com`) - -You can verify your server URL by checking your PostHog account settings or the URL you use to access PostHog. - -### Getting Your Personal API Key - -To generate a PostHog personal API key: - -1. Log in to your PostHog account -2. Click your avatar in the bottom-left corner -3. Select the gear icon to open "Account settings" -4. Navigate to the "Personal API Keys" section -5. Click "+ Create a personal API key" -6. Provide a descriptive label for the key -7. Select the necessary scopes (choose only the scopes required for your use case) -8. Click "Create key" -9. **Copy and securely store the key immediately** - it won't be shown again - -For more details on authentication and API usage, refer to the [PostHog API documentation](https://posthog.com/docs/api). - -Once you have both values, configure them as secrets when using the PosthogApi MCP Server. Learn more about [configuring secrets](/guides/create-tools/tool-basics/create-tool-secrets). - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## PosthogApi.RetrieveAppMetrics - -
- - -Retrieve application metrics for a specific project environment. - -**Parameters** - -- **plugin_config_id** (`integer`, required) A unique integer value identifying the plugin configuration. -- **project_id** (`string`, required) A string representing the ID of the project to access metrics for. Obtain this ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveAppMetricsErrorDetails - -
- - -Retrieve detailed error metrics for a specific app. - -**Parameters** - -- **plugin_config_id** (`integer`, required) A unique integer identifying the plugin configuration. -- **project_id** (`string`, required) String representing the Project ID to access. Obtain this ID via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveAppMetricsExports - -
- - -Retrieve historical app metrics exports for a project. - -**Parameters** - -- **plugin_configuration_id** (`string`, required) The ID of the plugin configuration to retrieve metrics for. Ensure it matches the correct configuration in your Datadog setup. -- **project_id_of_the_posthog_project** (`string`, required) The ID of the Datadog project to access. Obtain it via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveHistoricalAppMetrics - -
- - -Retrieve historical app metrics for a specific environment. - -**Parameters** - -- **export_id** (`string`, required) The identifier of the historical export you want to retrieve. This should be a valid string corresponding to a specific export. -- **plugin_configuration_id** (`string`, required) The ID of the plugin configuration to retrieve historical metrics for. This identifies which plugin's data you want to access. -- **project_id** (`string`, required) The Project ID to access for retrieving historical app metrics. Obtain it via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListEnvBatchExports - -
- - -Retrieve the list of batch exports for a specific environment. - -**Parameters** - -- **project_identifier** (`string`, required) The Project ID to access for fetching batch exports. Obtain it by calling /api/projects/. -- **initial_result_index** (`integer`, optional) The initial index from which to return the results. Use this to navigate pages. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateBatchExportForEnvironments - -
- - -Initiate a batch export for selected environments. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project you want to access for batch export. Obtain it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListBatchExportBackfills - -
- - -Retrieve a list of batch export backfills. - -**Parameters** - -- **batch_export_identifier** (`string`, required) The unique identifier for the batch export to retrieve specific backfill details. -- **project_id** (`string`, required) The ID of the project to access batch export backfills. Obtainable via /api/projects/. -- **pagination_cursor** (`string`, optional) The pagination cursor for retrieving the next set of results in a paginated response. -- **results_ordering_field** (`string`, optional) Specify the field by which to order the batch export backfills results. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateBackfillForBatchExport - -
- - -Create a new backfill for a BatchExport. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_identifier** (`string`, optional) The unique identifier of the BatchExport for which to create a backfill. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Call /api/projects/ to retrieve this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveBatchExportBackfill - -
- - -Retrieve details of a batch export backfill. - -**Parameters** - -- **batch_export_backfill_uuid** (`string`, required) The UUID identifying the specific batch export backfill to retrieve. -- **batch_export_identifier** (`string`, required) The identifier for the specific batch export. Provide as a string to retrieve backfill details. -- **project_id** (`string`, required) The unique ID of the project to access. Use /api/projects/ to retrieve the ID if unknown. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CancelBatchExportBackfill - -
- - -Cancel a batch export backfill process. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_identifier** (`string`, optional) A unique identifier string for the batch export backfill to be canceled. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **batch_export_backfill_id** (`string`, optional) A UUID string identifying the specific batch export backfill to cancel. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Call /api/projects/ to find the project ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListEnvironmentExports - -
- - -Fetches a list of batch export runs for a given environment. - -**Parameters** - -- **batch_export_identifier** (`string`, required) The ID of the batch export you wish to access. Required to retrieve batch export runs for a specific project. -- **project_id** (`string`, required) The unique identifier of the project you want to access in Datadog. Use /api/projects/ to find the ID. -- **order_by_field** (`string`, optional) Specify the field used to order the batch export run results. This determines the sorting criteria for the list of export runs. -- **pagination_cursor** (`string`, optional) The value used for paginating results in a list of export runs. It allows fetching subsequent pages of results. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentExportRun - -
- - -Retrieve details of a specific environment export run. - -**Parameters** - -- **batch_export_id** (`string`, required) A unique identifier for the batch export run. Provide the UUID identifying this export. -- **batch_export_run_id** (`string`, required) A UUID string identifying this specific batch export run for retrieval. -- **project_id** (`string`, required) The unique identifier for the project you wish to access. Retrieve this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CancelBatchExportRun - -
- - -Cancel an ongoing batch export run. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_run_id** (`string`, optional) A UUID string identifying the specific batch export run to be canceled. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **batch_export_run_uuid** (`string`, optional) A UUID string that identifies the batch export run to be canceled. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to access. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentBatchExportLogs - -
- - -Retrieve logs from a specific environment batch export run. - -**Parameters** - -- **batch_export_identifier** (`string`, required) A string representing the unique identifier for the batch export. -- **batch_export_run_id** (`string`, required) A UUID string identifying the specific batch export run. -- **project_identifier** (`string`, required) The unique Project ID needed to access the specific project. Retrieve this ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetryBatchExportRun - -
- - -Initiate a retry of a batch export run. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_identifier** (`string`, optional) A string representing the UUID of the batch export run to retry. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **batch_export_run_id** (`string`, optional) The UUID identifying the batch export run to retry. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Project ID for accessing the specific project. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentBatchExport - -
- - -Retrieve details of a specific environment batch export. - -**Parameters** - -- **batch_export_uuid** (`string`, required) A UUID string identifying the specific batch export to retrieve details for. -- **project_id** (`string`, required) The ID of the project to access. Retrieve via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentBatchExports - -
- - -Update environment batch exports details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_uuid** (`string`, optional) The UUID identifying the specific batch export to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Project ID to access; retrieve from /api/projects/ if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentExport - -
- - -Update environment export batch details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_id** (`string`, optional) A UUID string that uniquely identifies the environment export batch to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve it with a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteBatchExport - -
- - -Delete a batch export in a specific environment. - -**Parameters** - -- **batch_export_uuid** (`string`, required) A UUID string identifying the batch export to delete. -- **project_id** (`string`, required) The ID of the project to access for batch export deletion. Obtainable via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.TriggerBatchExportBackfill - -
- - -Trigger a backfill for a BatchExport. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_uuid** (`string`, optional) A UUID string identifying this batch export. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The Project ID for accessing the desired project. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentLogs - -
- - -Retrieve logs from environment batch exports. - -**Parameters** - -- **batch_export_id** (`string`, required) A UUID string that specifies the batch export to retrieve logs for. This is a unique identifier for the log batch export. -- **project_id** (`string`, required) The ID of the project to access for retrieving environment batch export logs. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.PauseBatchExport - -
- - -Pause a batch export operation. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_id** (`string`, optional) A UUID string identifying the batch export to be paused. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The unique identifier for the project. Use /api/projects/ to find it. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RunEnvironmentTestStep - -
- - -Initiate a test step execution for environment batch exports. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_uuid** (`string`, optional) A UUID string to identify the specific batch export for the test step execution. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The unique Project ID for the targeted environment. Obtainable via `/api/projects/`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UnpauseBatchExport - -
- - -Unpause a paused BatchExport to resume data export. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_id** (`string`, optional) A UUID string identifying the batch export to unpause. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve using a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEnvironmentBatchExport - -
- - -Initiate a batch export for environment tests. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project to access for initiating the batch export. To find this, call /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetEnvironmentsBatchExportStatus - -
- - -Gets the status of a test batch export for environments. - -**Parameters** - -- **project_id_for_export_status** (`string`, required) The Project ID to retrieve the test batch export status. Obtainable from a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListEnvironmentDashboards - -
- - -Retrieve dashboards for a specific environment. - -**Parameters** - -- **project_id** (`string`, required) Project ID required to access a specific environment in Datadog. Use the /api/projects/ endpoint to find the ID. -- **initial_index_for_results** (`integer`, optional) The index from which to start returning results, useful for pagination. -- **response_format** (`string`, optional) Specifies the format of the response. Accepted values are 'json' or 'txt'. -- **results_per_page** (`integer`, optional) The number of dashboard results to return per page. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEnvironmentDashboard - -
- - -Create a new dashboard within a specific environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The ID of the project for accessing its environment. Retrieve via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format of the response. Options: 'json', 'txt'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListCollaboratorsOnDashboard - -
- - -Retrieve collaborators for a dashboard in a project. - -**Parameters** - -- **dashboard_identifier** (`integer`, required) The unique identifier for the dashboard. Must be an integer and is required to retrieve collaborators. -- **project_identifier** (`string`, required) The unique identifier for the project. Obtainable by calling the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.AddDashboardCollaborator - -
- - -Add a collaborator to a specific dashboard. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_id** (`integer`, optional) The unique identifier of the dashboard to which the collaborator is being added. It must be an integer value. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve using the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveDashboardCollaborator - -
- - -Remove a collaborator from a dashboard in a specific environment. - -**Parameters** - -- **collaborator_user_uuid** (`string`, required) The unique user ID of the collaborator to be removed from the dashboard. -- **dashboard_id** (`integer`, required) The unique identifier of the dashboard from which you want to remove a collaborator. This should be an integer. -- **project_id** (`string`, required) ID of the project to access. Retrieve the ID using the /api/projects/ endpoint if needed. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListSharedDashboards - -
- - -Retrieve shared dashboard information for a specified project. - -**Parameters** - -- **dashboard_identifier** (`integer`, required) The unique integer ID of the dashboard whose sharing information you want to retrieve. -- **project_id** (`string`, required) The ID of the project you want to access for retrieving shared dashboard details. Obtain this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateDashboardSharingPassword - -
- - -Create a password for sharing a dashboard. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_identifier** (`integer`, optional) The unique integer identifier for the dashboard. This ID is required to create a sharing password. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project for which you want to create a dashboard sharing password. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteDashboardSharingPassword - -
- - -Delete a password from a dashboard's sharing configuration. - -**Parameters** - -- **dashboard_identifier** (`integer`, required) The unique integer identifier for the dashboard from which the password is to be deleted. -- **password_identifier** (`string`, required) The unique identifier of the password to be deleted from the dashboard's sharing configuration. This is required to specify which password to remove. -- **project_identifier** (`string`, required) Unique identifier for the project. Retrieve by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RefreshDashboardSharing - -
- - -Refresh a dashboard's sharing link in Datadog environments. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_id** (`integer`, optional) The unique integer ID of the Datadog dashboard to refresh the sharing link for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Specify the Project ID for accessing the desired project in Datadog. Retrieve it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetEnvironmentDashboard - -
- - -Retrieve a specific dashboard for an environment. - -**Parameters** - -- **dashboard_id** (`integer`, required) A unique integer value identifying the dashboard to retrieve. -- **project_id** (`string`, required) Project ID for accessing the specific environment dashboard. Obtainable via call to /api/projects/. -- **response_format** (`string`, optional) Specify the format of the response data. Use 'json' for JSON format or 'txt' for plain text format. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentDashboard - -
- - -Update settings of an environment dashboard. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_id** (`integer`, optional) A unique integer value to identify the environment dashboard to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve this using the /api/projects/ endpoint if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the desired format of the response. Options are 'json' or 'txt'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateDashboardEnvironment - -
- - -Update specific dashboard settings in an environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_id** (`integer`, optional) Unique integer identifying the dashboard to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to access. Call /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specifies the format of the response. Options include 'json' or 'txt'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteDashboard - -
- - -Mark a dashboard as deleted. - -**Parameters** - -- **dashboard_id** (`integer`, required) A unique integer value identifying the dashboard to be marked as deleted. -- **project_id** (`string`, required) Project ID to access the desired project. Retrieve using /api/projects/ if needed. -- **response_format** (`string`, optional) Specifies the format of the response. Options include 'json' and 'txt'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.MoveDashboardTile - -
- - -Move a tile's position in a specific dashboard. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_id** (`integer`, optional) A unique integer value identifying this dashboard within Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The identifier for the project you want to access. Retrieve it by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specifies the desired format of the response data. Options are 'json' or 'txt'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.StreamDashboardTiles - -
- - -Stream dashboard metadata and tiles via Server-Sent Events. - -**Parameters** - -- **dashboard_id** (`integer`, required) A unique integer value identifying the dashboard to stream. -- **project_id** (`string`, required) The ID of the project you wish to access. Obtain this by calling /api/projects/. -- **response_format** (`string`, optional) Specifies the format for the streamed dashboard response. Choose 'json' for JSON format or 'txt' for plain text. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEnvironmentDashboardFromTemplate - -
- - -Create an environment dashboard from a template. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The Project ID for the target environment in Datadog. Retrieve this ID via the /api/projects/ API call. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specifies the format of the response. Choose between 'json' or 'txt'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListDataColorThemes - -
- - -Retrieve data color themes for a specific environment. - -**Parameters** - -- **project_identifier** (`string`, required) Project ID to access specific environment data color themes. Obtain by calling /api/projects/. -- **initial_index** (`integer`, optional) The initial index from which to return the results. Used for pagination. -- **results_per_page** (`integer`, optional) The maximum number of results to return on each page. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateDataColorTheme - -
- - -Create a new data color theme for the environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) Project ID to access the desired project. Obtain it through a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentColorTheme - -
- - -Retrieve color theme data for a specific environment. - -**Parameters** - -- **color_theme_id** (`integer`, required) A unique integer value identifying the data color theme for the environment. -- **project_identifier** (`string`, required) The ID of the project whose environment color theme data is being accessed. Obtain it via `/api/projects/`. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentColorTheme - -
- - -Update the color theme of an environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **data_color_theme_id** (`integer`, optional) A unique integer value identifying the data color theme to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentTheme - -
- - -Update color themes for project environments. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **color_theme_id** (`integer`, optional) A unique integer identifying the data color theme to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project you want to access. Obtain it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteEnvironmentColorTheme - -
- - -Delete a specific environment's color theme in Datadog. - -**Parameters** - -- **data_color_theme_id** (`integer`, required) A unique integer value used to identify the data color theme to be deleted. -- **project_id** (`string`, required) The ID of the project for accessing its environment. Obtain by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListEnvironmentDatasetItems - -
- - -Retrieve dataset items for a specific environment. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project you're accessing. Use /api/projects/ to find it. -- **filter_by_dataset_id** (`string`, optional) Specify the dataset ID to filter the results by a specific dataset. -- **results_per_page** (`integer`, optional) Number of results to return per page. This defines pagination size. -- **results_start_index** (`integer`, optional) The initial index from which to return the results. Use this to control the starting point of the returned dataset items. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEnvironmentDatasetItem - -
- - -Create a dataset item in the specified environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier for the project you want to access. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentDatasetItem - -
- - -Retrieve a specific environment dataset item by ID. - -**Parameters** - -- **dataset_item_id** (`string`, required) A UUID string that identifies the specific dataset item to retrieve. -- **project_id** (`string`, required) The unique identifier for the project to access. To find it, call /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentDatasetItem - -
- - -Update an environment dataset item in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dataset_item_uuid** (`string`, optional) A UUID string uniquely identifying the dataset item to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The unique identifier of the project you want to access. Retrieve it by making a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyEnvironmentDatasetItem - -
- - -Update specific fields in an environment dataset item. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dataset_item_id** (`string`, optional) A UUID string specifying the dataset item to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project to access. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteEnvironmentDatasetItem - -
- - -Marks a dataset item in an environment as deleted. - -**Parameters** - -- **dataset_item_id** (`string`, required) A UUID string identifying the dataset item to mark as deleted. -- **project_id** (`string`, required) The unique Project ID for accessing the desired project. Retrieve by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListEnvironmentDatasets - -
- - -Retrieve datasets for a specified project environment. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Retrieve the ID by calling /api/projects/. -- **dataset_ids** (`array[string]`, optional) List of dataset IDs to filter results. Provide multiple IDs separated by commas. -- **ordering_criteria** (`array[string]`, optional) Specify the ordering of the dataset results. Options include `created_at`, `-created_at`, `updated_at`, `-updated_at`. Multiple criteria can be provided as a list. -- **results_limit_per_page** (`integer`, optional) Specifies the number of datasets to return per page. This is used to control pagination and manage the volume of data retrieved in a single call. -- **results_start_index** (`integer`, optional) The initial index to start returning datasets from, for pagination purposes. -- **search_terms** (`string`, optional) Search terms to filter datasets by name, description, or metadata. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEnvironmentDataset - -
- - -Create a dataset environment in a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id_for_environment** (`string`, optional) Project ID for accessing the project where the dataset environment will be created. To get this ID, call the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentDataset - -
- - -Retrieve a specific environment dataset by ID. - -**Parameters** - -- **environment_dataset_id** (`string`, required) A UUID string identifying the specific environment dataset to retrieve. -- **project_id** (`string`, required) The ID of the project you want to access. Use /api/projects/ to find this ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentDataset - -
- - -Updates details of a specific environment dataset. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dataset_id** (`string`, optional) A UUID string identifying the specific dataset to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to access. Retrieve the ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyEnvironmentDataset - -
- - -Update dataset in a specific environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dataset_uuid** (`string`, optional) A UUID string identifying the dataset to update within the environment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique identifier of the project to access. Retrieve via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteDataset - -
- - -Delete a dataset by setting it to deleted status. - -**Parameters** - -- **dataset_uuid** (`string`, required) A UUID string identifying the dataset to be marked as deleted. -- **project_identifier** (`string`, required) The unique identifier for the project. Use /api/projects/ to find it. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchEndpointRunStatus - -
- - -Retrieve the run status of an endpoint. - -**Parameters** - -- **endpoint_name** (`string`, required) The name of the endpoint you want to update or retrieve status for. -- **project_id** (`string`, required) The unique ID of the project to access. Obtain it via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentEndpoint - -
- - -Update an existing environment endpoint. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **endpoint_name** (`string`, optional) The name of the endpoint to update. This is used to identify the specific endpoint within the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetLastExecutionTimes - -
- - -Retrieve last execution times for multiple endpoints. - -**Parameters** - -- **endpoint_names** (`array[string]`, required) List of endpoint names to retrieve execution times for. Each name should be a string. -- **project_id** (`string`, required) The ID of the project you wish to access. Use the /api/projects/ endpoint to retrieve the ID if needed. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListErrorTrackingAssignmentRules - -
- - -Retrieve error tracking assignment rules for a given environment. - -**Parameters** - -- **project_id** (`string`, required) The unique ID of the project to access. Retrieve it by calling /api/projects/. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page when listing error tracking assignment rules. -- **results_start_index** (`integer`, optional) The initial index to start returning results from within the list. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateErrorTrackingAssignmentRule - -
- - -Create a new error tracking assignment rule. - -**Parameters** - -- **assignee_username** (`string`, required) Username of the individual to whom the error tracking assignment rule is assigned. This should be a valid username within the project. -- **assignment_rule_filters** (`string`, required) Filters to specify the criteria for the error tracking assignment rule. Input as a string. -- **order_key_priority** (`integer`, required) An integer specifying the priority order of the rule. Lower values imply higher priority. -- **project_id** (`string`, required) ID of the project to access. Retrieve via /api/projects/ call. -- **rule_id** (`string`, required) A unique identifier for the error tracking assignment rule to be created. -- **disabled_data_state** (`string`, optional) Indicates if data for the error tracking rule is disabled. Use 'true' to disable, 'false' to enable. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveErrorTrackingAssignmentRules - -
- - -Retrieve error tracking assignment rules for a project. - -**Parameters** - -- **error_tracking_rule_id** (`string`, required) A UUID identifying the error tracking assignment rule to retrieve. -- **project_id** (`string`, required) The unique identifier for the project to access. Obtain this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateErrorTrackingRules - -
- - -Updates error tracking assignment rules for a project. - -**Parameters** - -- **assignee_identifier** (`string`, required) The unique identifier for the person to whom errors will be assigned. This can be a user ID or username within the project. -- **assignment_rule_id** (`string`, required) A UUID string that identifies the error tracking assignment rule to update. -- **environment_id** (`string`, required) The unique identifier for the environment whose error tracking rules are being updated. -- **filter_criteria** (`string`, required) Specifies the filter criteria for updating error tracking assignment rules. This should be a string detailing the conditions used to filter the errors. -- **project_id** (`string`, required) Project ID to access. Retrieve it via a call to /api/projects/. -- **update_order_key** (`integer`, required) The order key for arranging assignment rules in a specified sequence. Provide an integer value. -- **disable_error_data** (`string`, optional) Specify whether to disable error data for tracking rules. Accepts a string value indicating the disabled state. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateErrorTrackingAssignmentRules - -
- - -Partially update error tracking assignment rules for environments. - -**Parameters** - -- **project_identifier** (`string`, required) The unique ID of the project to access for updating error tracking rules. Obtain it via `/api/projects/`. -- **assignee_for_error_tracking** (`string`, optional) The identifier of the assignee for the error tracking rule. This should be a string representing the user or team to which the error tracking assignment is being made. -- **disabled_data** (`string`, optional) Provide a string indicating which data or fields should be marked as disabled in the error tracking rules. -- **error_tracking_rule_id** (`string`, optional) A UUID string identifying the specific error tracking assignment rule to update. -- **filter_expression** (`string`, optional) Provide a string that specifies criteria for selecting which rules to update. Use logical expressions to define this filter. -- **order_key** (`integer`, optional) The order key for sorting or prioritizing the assignment rules. Provide as an integer. -- **rule_identifier** (`string`, optional) The unique ID of the error tracking assignment rule to update. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteErrorTrackingRule - -
- - -Deletes a specified error tracking assignment rule. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Obtain this by calling /api/projects/. -- **rule_id** (`string`, required) The UUID of the error tracking assignment rule to be deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ReorderAssignmentRules - -
- - -Reorder error tracking assignment rules in a project environment. - -**Parameters** - -- **project_id** (`string`, required) The Project ID for accessing the desired project. Retrieve it using /api/projects/. -- **disable_rule_data** (`string`, optional) Specify whether rule data is disabled, using 'true' or 'false'. -- **rule_filters** (`string`, optional) A string containing conditions to filter assignment rules for reordering. Useful for applying specific criteria when reordering rules. -- **rule_id** (`string`, optional) The specific ID of the assignment rule to be reordered within the project environment. -- **rule_order_position** (`integer`, optional) The new position for the assignment rule in the order list. Use an integer to specify the desired position. -- **target_assignee** (`string`, optional) Specifies the assignee for the error tracking rules in the project. This should be a valid user identifier in the Datadog environment. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListErrorTrackingFingerprints - -
- - -Retrieve error tracking fingerprints for a specific project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique ID of the project you want to access. Obtain this by calling /api/projects/. -- **initial_index_for_results** (`integer`, optional) The initial index from which to return the results for the error tracking fingerprints list. -- **results_per_page** (`integer`, optional) Number of results to return per page. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetErrorTrackingFingerprint - -
- - -Retrieve a specific error tracking fingerprint by ID. - -**Parameters** - -- **error_tracking_fingerprint_uuid** (`string`, required) A UUID identifying the error tracking issue fingerprint v2. -- **project_id** (`string`, required) Project ID to access specific project data. Use /api/projects/ to retrieve this ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteErrorFingerprint - -
- - -Mark an error fingerprint as deleted in Datadog. - -**Parameters** - -- **error_fingerprint_uuid** (`string`, required) A UUID string identifying the specific error tracking issue fingerprint to be marked as deleted. -- **posthog_project_id** (`string`, required) The ID of the Datadog project you want to modify. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ResolveGithubFileLinks - -
- - -Resolve GitHub file links for error tracking projects. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Retrieve the ID via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListErrorTrackingGroupingRules - -
- - -Retrieve error tracking grouping rules for a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Retrieve it by calling /api/projects/. -- **initial_index_for_results** (`integer`, optional) The starting index from which to return results, used for pagination. -- **results_per_page** (`integer`, optional) Number of results to return per page when listing error tracking grouping rules. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateErrorTrackingGroupingRule - -
- - -Create a new error tracking grouping rule for a project. - -**Parameters** - -- **assignee_identifier** (`string`, required) The identifier of the user to whom the error tracking issue is assigned. Provide a valid user ID or username. -- **error_tracking_filters** (`string`, required) Filters for error tracking grouping rule. Provide criteria to classify errors, such as error types or patterns. -- **order_priority_key** (`integer`, required) An integer representing the priority or sequence order of the error tracking grouping rule within the project. -- **project_id** (`string`, required) The ID of the project to access. Obtainable via a call to /api/projects/. -- **rule_identifier** (`string`, required) A unique string identifier for the new error tracking grouping rule. -- **grouping_rule_disabled_data** (`string`, optional) Indicate if the grouping rule data should be disabled. Accepts a boolean in string form, like 'true' or 'false'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveErrorGroupingRules - -
- - -Retrieve error tracking grouping rules for an environment. - -**Parameters** - -- **grouping_rule_id** (`string`, required) A UUID string identifying this specific error tracking grouping rule for retrieval. -- **project_id_for_access** (`string`, required) The ID of the project you are trying to access for retrieving error tracking grouping rules. Obtain using the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateErrorTrackingGroupingRules - -
- - -Update error tracking grouping rules for a project. - -**Parameters** - -- **assignee_user_id** (`string`, required) The user ID of the person to whom the error tracking task is assigned. -- **filters_for_grouping_rules** (`string`, required) Specify filters as a string to refine which errors to group. This can include criteria like error type or severity. -- **grouping_rule_id** (`string`, required) A UUID string identifying the error tracking grouping rule to update in Datadog. -- **priority_order_key** (`integer`, required) Specify the integer value to determine the priority order of grouping rules. -- **project_id** (`string`, required) The ID of the project to access. Retrieve this by calling /api/projects/. -- **rule_id** (`string`, required) The unique identifier for the error tracking grouping rule to be updated. -- **disabled_data** (`string`, optional) A string indicating which data to disable in the error tracking grouping rules. Provide the specific data identifier or description. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyGroupingRules - -
- - -Update error tracking grouping rules for a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you want to access. Retrieve it by calling /api/projects/. -- **assigned_user** (`string`, optional) Specify the user assigned to manage the error tracking rules. It should be the username or ID of the Datadog user. -- **disable_data_filtering** (`string`, optional) Specifies data filtering rules to be disabled. Provide a string indicating the types of rules or data aspects to disable. -- **error_tracking_rule_uuid** (`string`, optional) A UUID string identifying the error tracking grouping rule to update. -- **filters_string** (`string`, optional) String containing filtering conditions for updating grouping rules. Specify conditions to narrow down rules to be updated. -- **grouping_rule_order_key** (`integer`, optional) An integer that specifies the priority order of the error grouping rule within a project. Higher values may denote higher priority. -- **rule_id** (`string`, optional) The ID of the grouping rule to be updated. Required for specifying which rule to modify within the project. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveErrorTrackingRule - -
- - -Delete an error tracking grouping rule in a project. - -**Parameters** - -- **error_tracking_rule_id** (`string`, required) A UUID string identifying the specific error tracking grouping rule to be deleted. -- **project_identifier** (`string`, required) The ID of the project to access. Obtain it using /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ReorderErrorTrackingRules - -
- - -Reorder error tracking grouping rules in a project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique identifier for the project you wish to access. Obtainable via the /api/projects/ endpoint. -- **disabled_data_details** (`string`, optional) Specify details of the data to disable or modify. Format as a string describing which elements are affected. -- **error_grouping_filters** (`string`, optional) Filters to apply for selecting specific error tracking rules to reorder. This can include criteria like rule severity, type, etc. -- **error_tracking_rule_id** (`string`, optional) Unique identifier for the error tracking rule you want to reorder. -- **new_order_key** (`integer`, optional) An integer representing the new order position for the error tracking grouping rules. -- **rule_assignee** (`string`, optional) Assign a person or role responsible for the error tracking grouping rule. Expected to be a string representing a user's name or identifier. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListErrorTrackingReleases - -
- - -Retrieve releases from error tracking for a specific environment. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier of the project to access. Obtain by calling /api/projects/. -- **results_per_page** (`integer`, optional) The number of results to return per page for error tracking releases. -- **start_index_for_results** (`integer`, optional) The starting index for the results to be returned. Use this to paginate results in the list of error tracking releases. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateErrorTrackingRelease - -
- - -Create a new error tracking release for a project. - -**Parameters** - -- **error_release_id** (`string`, required) Unique identifier for the error tracking release to be accessed or modified. -- **hash_identifier** (`string`, required) Unique string identifier for the release hash. Required for tracking specific releases. -- **project_id** (`string`, required) ID of the project for which to create an error tracking release. Obtainable via /api/projects/. -- **project_name** (`string`, required) The name of the project for which you want to create an error tracking release. -- **release_creation_timestamp** (`string`, required) Timestamp indicating when the error tracking release was created. Format should be ISO 8601 (e.g., 2023-10-02T14:48:00Z). -- **release_version** (`string`, required) The version identifier for the new error tracking release. -- **team_identifier** (`integer`, required) The integer ID of the team associated with the error tracking release. Required to specify the team context in Datadog. -- **release_metadata** (`string`, optional) Optional metadata for the error tracking release. Provide additional information in a string format. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveErrorTrackingRelease - -
- - -Retrieves details of a specific error tracking release. - -**Parameters** - -- **project_identifier** (`string`, required) Project ID to access specific error tracking release data. Obtainable via /api/projects/ call. -- **release_uuid** (`string`, required) A UUID string identifying the specific error tracking release to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateErrorTrackingReleases - -
- - -Update error tracking releases in a project environment. - -**Parameters** - -- **created_at_timestamp** (`string`, required) The timestamp indicating when the release was created. Format should be ISO 8601 (e.g., '2023-09-23T18:25:43.511Z'). -- **project_identifier** (`string`, required) The Project ID for accessing the specific project in Datadog. Obtainable by calling /api/projects/. -- **project_key** (`string`, required) The identifier or name of the project for which you're updating the error tracking release. -- **release_hash_id** (`string`, required) A unique identifier for the release you want to update. Provides a reference to the specific release version within the project's error tracking data. -- **release_id** (`string`, required) A UUID string identifying the error tracking release to update. -- **release_version** (`string`, required) The version of the release being updated. This should typically be a string representing the version code or number. -- **team_identifier** (`integer`, required) The unique integer identifier for the team. Used to specify which team's release information to update. -- **update_id** (`string`, required) The unique identifier for the release you want to update. -- **metadata_description** (`string`, optional) Provide a string with additional information or details about the release metadata. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateErrorTrackingRelease - -
- - -Update details for an error tracking release. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Retrieve by calling /api/projects/. -- **error_tracking_release_id** (`string`, optional) A UUID string identifying the error tracking release to be updated. -- **release_creation_date** (`string`, optional) The date and time when the error tracking release was created. Expected in ISO 8601 format (e.g., 2023-10-31T14:30:00Z). -- **release_hash_identifier** (`string`, optional) A unique string identifier for the error tracking release to be updated. -- **release_id** (`string`, optional) The unique identifier of the error tracking release to update. -- **release_metadata** (`string`, optional) Metadata for the error tracking release. This should be a string detailing any additional information relevant to the release. -- **release_project_name** (`string`, optional) The name of the project associated with the error tracking release to be updated. -- **release_version** (`string`, optional) The specific version of the error tracking release to update. It should be a string representing the version number. -- **team_identifier** (`integer`, optional) The unique identifier for the team associated with the error tracking release. Expected to be an integer. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteErrorTrackingRelease - -
- - -Deletes a specific error tracking release from a project environment. - -**Parameters** - -- **error_tracking_release_id** (`string`, required) A UUID string identifying the error tracking release to be deleted. -- **project_id** (`string`, required) The ID of the project being accessed. Use `/api/projects/` to find the ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveErrorTrackingReleaseHash - -
- - -Retrieve details for a specific error tracking release hash. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Obtainable via a call to /api/projects/. -- **release_hash_id** (`string`, required) The unique identifier for the error tracking release hash. This ID is necessary to retrieve the specific details. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListErrorTrackingSuppressionRules - -
- - -List error tracking suppression rules for a project environment. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Obtain by calling /api/projects/. -- **results_per_page** (`integer`, optional) Number of results to return per page. -- **results_start_index** (`integer`, optional) The starting index for the results to be returned, useful for pagination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateErrorTrackingSuppressionRule - -
- - -Create a new error tracking suppression rule. - -**Parameters** - -- **project_id** (`string`, required) The unique ID of the project to access. Obtain it by calling /api/projects/. -- **suppress_rule_order_key** (`integer`, required) An integer representing the order or priority of the suppression rule in the list. Determines processing sequence. -- **suppression_rule_filters** (`string`, required) A string defining the criteria to filter which errors should be suppressed. Specify conditions relevant to your project's needs. -- **suppression_rule_id** (`string`, required) A unique identifier for the suppression rule to be created. This ID helps in tracking and managing the specific rule. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetSuppressionRuleDetails - -
- - -Retrieve details of a suppression rule in error tracking. - -**Parameters** - -- **project_identifier** (`string`, required) The unique identifier for the project to access. Obtainable via the /api/projects/ call. -- **suppression_rule_uuid** (`string`, required) A UUID string identifying the specific error tracking suppression rule. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateErrorTrackingSuppressionRules - -
- - -Update error tracking suppression rules for a project. - -**Parameters** - -- **filters** (`string`, required) String criteria used to specify which errors to suppress. Format should align with Datadog's filtering syntax. -- **project_identifier** (`string`, required) The unique identifier for the project you want to access. Use the API call /api/projects/ to obtain this ID. -- **rule_id** (`string`, required) The unique identifier for the suppression rule to be updated. -- **suppression_rule_id** (`string`, required) A UUID string identifying the error tracking suppression rule. -- **suppression_rule_order_key** (`integer`, required) Specify the order key for the suppression rule. This determines its priority in execution. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateErrorSuppressionRule - -
- - -Update error tracking suppression rules for a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you're trying to access. Call /api/projects/ to find the ID. -- **rule_id** (`string`, optional) The unique identifier of the suppression rule to update. This ID is required to specify which rule you want to partially update. -- **rule_order_key** (`integer`, optional) Specify the order for the suppression rule as an integer. Determines rule priority or execution sequence. -- **suppression_rule_filters** (`string`, optional) A string defining filters for the suppression rule updates (e.g., specific conditions or parameters). -- **suppression_rule_id** (`string`, optional) The UUID identifying the error tracking suppression rule to update. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveErrorSuppressionRule - -
- - -Delete an error tracking suppression rule. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access. Use /api/projects/ to find it. -- **suppression_rule_uuid** (`string`, required) A UUID string that uniquely identifies the error tracking suppression rule to be deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ReorderErrorTrackingSuppressionRules - -
- - -Reorder error tracking suppression rules for a project. - -**Parameters** - -- **project_id** (`string`, required) The unique ID of the project for which you want to reorder suppression rules. To locate the ID, make a call to /api/projects/. -- **error_tracking_filters** (`string`, optional) Specify filter criteria to narrow down which suppression rules are reordered, using a string format. -- **new_order_key** (`integer`, optional) Integer representing the new order sequence for suppression rules in a project. -- **suppression_rule_id** (`string`, optional) The unique ID of the suppression rule you're reordering within the project. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListErrorTrackingSymbolSets - -
- - -Retrieve error tracking symbol sets for a project. - -**Parameters** - -- **project_id** (`string`, required) The unique ID of the project to access. Obtain it by calling /api/projects/. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page. -- **start_index** (`integer`, optional) The initial index from which to return the results for pagination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateSymbolSet - -
- - -Create a new symbol set for error tracking in a project. - -**Parameters** - -- **project_id** (`string`, required) Project ID needed to access the specific project for creating a symbol set. Obtainable via /api/projects/ call. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveErrorTrackingSymbolSet - -
- - -Retrieve details of a specific error tracking symbol set. - -**Parameters** - -- **error_tracking_symbol_set_uuid** (`string`, required) A UUID string identifying the specific error tracking symbol set to retrieve. -- **project_id** (`string`, required) Project ID for accessing the specified project. Use /api/projects/ to find this ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentSymbolSet - -
- - -Update error tracking symbol sets in environments. - -**Parameters** - -- **error_tracking_symbol_set_id** (`string`, required) A UUID identifying the error tracking symbol set to update. -- **project_id_for_symbol_set_update** (`string`, required) The ID of the project for updating the symbol set. Obtainable via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateErrorTrackingSymbols - -
- - -Update symbol sets for error tracking in a specific environment. - -**Parameters** - -- **error_tracking_symbol_set_id** (`string`, required) A UUID identifying the error tracking symbol set to update. -- **project_identifier** (`string`, required) The ID of the project you wish to access. Retrieve by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteSymbolSet - -
- - -Deletes an error tracking symbol set by ID. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access. Use the /api/projects/ endpoint to find this ID. -- **symbol_set_id** (`string`, required) A UUID string identifying the error tracking symbol set to delete. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CompleteSymbolSetUpload - -
- - -Finalize the upload of symbol sets in Datadog error tracking. - -**Parameters** - -- **project_id_for_symbol_set** (`string`, required) Specify the Project ID for accessing the project in Datadog. Retrieve using the /api/projects/ endpoint. -- **reference_id** (`string`, required) A unique identifier for the symbol set upload reference. -- **symbol_set_id** (`string`, required) A UUID string identifying the specific error tracking symbol set to be finalized. -- **team_identifier** (`integer`, required) The unique integer identifier representing the team within the Datadog project. -- **upload_created_at_timestamp** (`string`, required) The timestamp marking when the upload was created, in ISO 8601 format. -- **upload_session_id** (`string`, required) The unique identifier for the symbol set upload session you wish to complete. This ID is obtained during the initial upload process. -- **storage_pointer** (`string`, optional) A string representing the storage location pointer for the symbol set. Required to identify the upload location within Datadog. -- **upload_failure_reason** (`string`, optional) Provide the reason for upload failure if applicable. This helps in diagnosing issues related to the symbol set upload process in Datadog. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CompleteSymbolSetsUpload - -
- - -Complete the uploading process for symbol sets in error tracking. - -**Parameters** - -- **project_id** (`string`, required) Specifies the Project ID for access. Obtain this ID via the /api/projects/ endpoint. -- **reference_identifier** (`string`, required) A string used to identify the symbol set upload reference. It helps in finalizing the upload process. -- **symbol_set_id** (`string`, required) Unique identifier for the symbol set upload session to complete. -- **team_identifier** (`integer`, required) The integer ID of the team associated with the symbol sets upload you are finalizing. Required for access control and process completion. -- **upload_completion_timestamp** (`string`, required) Timestamp indicating when the upload process was completed, in ISO 8601 format. -- **storage_pointer** (`string`, optional) A string value representing the storage pointer identifier for the symbol sets. Used to specify the location where the symbol sets are stored. -- **upload_failure_reason** (`string`, optional) A description of the reason for the upload failure, if applicable. Provide detailed information about what caused the issue. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.StartErrorTrackingUpload - -
- - -Initiate a bulk upload for error tracking symbols. - -**Parameters** - -- **project_id** (`string`, required) The unique ID of the project to access. Obtainable via /api/projects/ API call. -- **team_id** (`integer`, required) Numeric ID of the team associated with the error tracking upload. -- **upload_creation_timestamp** (`string`, required) The ISO 8601 timestamp indicating when the upload was created. This helps to record the exact time of initiating the upload process. -- **upload_reference** (`string`, required) A unique identifier for the bulk upload session to ensure proper tracking and management. -- **upload_task_id** (`string`, required) Unique identifier for the bulk upload task. Used to reference the upload process. -- **storage_pointer** (`string`, optional) A string that identifies where the symbol sets are stored. Use this to specify the location for the bulk upload. -- **upload_failure_reason** (`string`, optional) Provide a description if there was a failure during bulk upload initiation. This can help identify issues with the upload process. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.StartSymbolUpload - -
- - -Initiate symbol set upload for error tracking environments. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access. Obtain it via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEvaluationRun - -
- - -Initiate a new evaluation run for a project. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access for the evaluation run. Retrieve it using /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListEnvironmentEvaluations - -
- - -Retrieve evaluations for a specific project environment. - -**Parameters** - -- **project_identifier** (`string`, required) The unique ID of the project to access evaluations. Retrieve via /api/projects/. -- **evaluation_ids** (`array[string]`, optional) List of evaluation IDs to filter results. Multiple IDs allowed, separated by commas. -- **evaluation_ordering** (`array[string]`, optional) Specify the ordering of results. Use created_at, updated_at, or name, with optional '-' for descending. -- **filter_by_enabled_status** (`boolean`, optional) Filter by enabled (true) or disabled (false) evaluations. -- **results_offset_index** (`integer`, optional) The initial index from which to return the results, allowing pagination control. -- **results_per_page** (`integer`, optional) Number of results to return per page in the environment evaluations list. -- **search_query** (`string`, optional) Search in the evaluation's name or description. Use this to filter results by specific keywords. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEnvironmentEvaluation - -
- - -Create a new environment evaluation for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) Project ID to access. Obtainable from calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentEvaluation - -
- - -Retrieve details of a specific environment evaluation. - -**Parameters** - -- **evaluation_id** (`string`, required) A UUID string that uniquely identifies the evaluation to be retrieved. -- **project_id** (`string`, required) The unique identifier for the project to access. Use /api/projects/ to find it. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentEvaluation - -
- - -Update an environment's evaluation in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **evaluation_id** (`string`, optional) A UUID string uniquely identifying the evaluation to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to update. Obtainable via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyEnvironmentEvaluation - -
- - -Update specific environment evaluation details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **evaluation_id** (`string`, optional) A UUID string that identifies the specific environment evaluation to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Provide the Project ID to identify and access the specific project. Use /api/projects/ to retrieve the ID if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteEvaluation - -
- - -Marks an evaluation as deleted in the environment. - -**Parameters** - -- **evaluation_uuid** (`string`, required) A UUID string identifying the evaluation to be marked as deleted. -- **project_identifier** (`string`, required) The ID of the project to access in Datadog. Retrieve it via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentEvent - -
- - -Retrieve details of a specific environment event. - -**Parameters** - -- **event_id** (`string`, required) The unique identifier for the environment event you want to retrieve details for. -- **project_identifier** (`string`, required) The unique ID of the project you want to access. Use /api/projects/ to obtain it if unknown. -- **response_format** (`string`, optional) Specify the desired format of the response. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentEventValues - -
- - -Retrieve event values for a specific environment. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access environment data. Retrieve via /api/projects/. -- **output_format** (`string`, optional) Specifies the format of the returned data. Use 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.EnvironmentExportsOverview - -
- - -Retrieve a list of exports for a specified environment. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access. Retrieve the ID using a call to /api/projects/. -- **result_start_index** (`integer`, optional) The initial index from which to start returning results for the exports list. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEnvironmentExports - -
- - -Initiates the creation of environment exports in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique ID of the project for which you want to create environment exports. Use /api/projects/ to find the ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentExports - -
- - -Retrieve details of an environment export in Datadog. - -**Parameters** - -- **export_id** (`integer`, required) A unique integer value identifying the exported asset to retrieve. -- **project_id** (`string`, required) The ID of the project to access. Retrieve using /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentExportContent - -
- - -Retrieve content of a specific environment export. - -**Parameters** - -- **exported_asset_id** (`integer`, required) A unique integer value identifying the exported asset. Required to retrieve the specific environment export content. -- **project_identifier** (`string`, required) Project ID to access the desired project. Retrieve the ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListProjectFileSystems - -
- - -Retrieve file systems for a given project environment. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access. Use /api/projects/ to retrieve this ID if unknown. -- **initial_result_index** (`integer`, optional) The initial index from which to return the results. Use this to paginate through data. -- **results_per_page_limit** (`integer`, optional) Specify the number of results to return per page when listing file systems. -- **search_term** (`string`, optional) A search term to filter the results based on specific criteria. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateFileSystemEnvironment - -
- - -Create a new file system environment in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project to access for environment creation. Retrieve it from /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetEnvironmentFileSystemDetails - -
- - -Retrieve details of a file system in a specific environment. - -**Parameters** - -- **file_system_uuid** (`string`, required) A UUID string identifying the file system to retrieve details for. -- **project_identifier** (`string`, required) Project ID to access the specific project environment. Use /api/projects/ to find this ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentFileSystem - -
- - -Update a file system for a specific environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **file_system_id** (`string`, optional) A UUID string identifying this file system for the update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The unique identifier for the project containing the environment. Retrieve using the /api/projects/ endpoint if unknown. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyEnvironmentFileSystem - -
- - -Partially update a file system environment in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **file_system_id** (`string`, optional) A UUID string that uniquely identifies the specific file system to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique identifier for the project you want to modify. Use the endpoint `/api/projects/` to retrieve this ID if unknown. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteFilesystemEnvironment - -
- - -Deletes a file system in the specified environment. - -**Parameters** - -- **filesystem_id** (`string`, required) A UUID string identifying the file system to be deleted. -- **project_identifier** (`string`, required) The Project ID of the specific environment. Obtainable through /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetFileCountInFolder - -
- - -Retrieve the count of all files in a specified folder. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **file_system_uuid** (`string`, optional) A UUID string identifying the file system to get the file count. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Project ID for accessing the desired project. Use /api/projects/ to find the ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEnvironmentFileSystemLink - -
- - -Create a link between environment and file system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **file_system_uuid** (`string`, optional) A UUID string that uniquely identifies the file system to be linked. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve using /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.MoveFileWithinEnvironment - -
- - -Move a file within an environment's file system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **file_system_uuid** (`string`, optional) A UUID string identifying the file system to move within the environment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Project ID for accessing the specific project environment. Obtain it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CountFilesInDirectory - -
- - -Get count of all files in a specified folder. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The project ID for accessing the desired project. Retrieve this ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEnvironmentFileSystemLogView - -
- - -Create a file system log view for an environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) Project ID to access the specific environment. Use /api/projects/ to find it. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveUnfiledFileSystemItems - -
- - -Retrieve unfiled file system items for a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the specific project whose unfiled file system items you want to retrieve. To obtain this ID, call /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListFileSystemShortcuts - -
- - -Retrieve file system shortcuts for a specified project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project whose file system shortcuts you want to access. Use the /api/projects/ call to find the ID. -- **result_start_index** (`integer`, optional) The initial index from which to start returning results for the file system shortcuts list. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page when retrieving file system shortcuts. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateFileSystemShortcut - -
- - -Create a file system shortcut for a project environment. - -**Parameters** - -- **creation_timestamp** (`string`, required) The timestamp indicating when the file system shortcut was created. Format: YYYY-MM-DDTHH:MM:SSZ. -- **file_system_path** (`string`, required) The file system path where the shortcut will point to. This should specify the environment-specific directory. -- **project_identifier** (`string`, required) The unique ID of the project to access. Obtain it via a call to /api/projects/. -- **shortcut_identifier** (`string`, required) A unique identifier for the filesystem shortcut to be created. Used to distinguish this shortcut. -- **reference_name** (`string`, optional) A string representing the reference name for the file system shortcut. Use a unique identifier or description that aids in shortcut identification. -- **shortcut_type** (`string`, optional) Specify the type of shortcut to create, such as "folder" or "file". -- **target_href** (`string`, optional) The URL or path to which the file system shortcut will point. This should be a valid string representing the reference destination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveFileSystemShortcut - -
- - -Retrieve details of a specific file system shortcut. - -**Parameters** - -- **file_system_shortcut_id** (`string`, required) A UUID string identifying the specific file system shortcut to retrieve details for. -- **project_identifier** (`string`, required) The unique Project ID needed to access the specific project. Obtain this by querying /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvFileSystemShortcut - -
- - -Updates a file system shortcut in a specified environment. - -**Parameters** - -- **creation_timestamp** (`string`, required) The timestamp when the shortcut was created. Format: ISO 8601 string. -- **file_system_path** (`string`, required) The path of the file system shortcut to update. Specify the full directory path as a string. -- **file_system_shortcut_id** (`string`, required) A UUID string identifying the file system shortcut to be updated. -- **project_identifier** (`string`, required) The ID of the project to access. Retrieve this by calling /api/projects/. -- **shortcut_id** (`string`, required) Unique identifier of the file system shortcut to update in the specified environment. -- **reference_identifier** (`string`, optional) The reference identifier for the file system shortcut to be updated. -- **shortcut_href** (`string`, optional) The URL or URI of the file system shortcut to update. -- **shortcut_type** (`string`, optional) Specifies the type of the file system shortcut to be updated, such as 'document' or 'folder'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyEnvFileSystemShortcut - -
- - -Update a file system shortcut in a specific environment. - -**Parameters** - -- **project_id** (`string`, required) The unique ID of the project to access. Retrieve it via a call to /api/projects/. -- **created_at_timestamp** (`string`, optional) The timestamp of when the file system shortcut was created, in ISO 8601 format. -- **file_system_shortcut_id** (`string`, optional) Unique identifier for the file system shortcut to be updated. -- **file_system_shortcut_type** (`string`, optional) Specifies the type of the file system shortcut to update, such as 'symlink' or 'hardlink'. -- **reference_identifier** (`string`, optional) A unique string identifier for the file system shortcut to be updated. -- **shortcut_file_path** (`string`, optional) The path to the file system shortcut that needs to be updated in the environment. -- **shortcut_href** (`string`, optional) The URL or link to the file system shortcut that needs updating. This should be a valid URI. -- **shortcut_id** (`string`, optional) A UUID string that uniquely identifies the file system shortcut to update. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteFileSystemShortcut - -
- - -Deletes a file system shortcut in an environment. - -**Parameters** - -- **file_system_shortcut_id** (`string`, required) The UUID string that uniquely identifies the file system shortcut to be deleted. -- **project_identifier** (`string`, required) The unique identifier for the project you wish to access. Retrieve this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListEnvironmentGroups - -
- - -Retrieve all groups for a specific environment's group type. - -**Parameters** - -- **group_type_index** (`integer`, required) The index representing the specific group type to list. Use this to filter groups by type. -- **project_id** (`string`, required) ID of the project to access. Retrieve the ID from the /api/projects/ endpoint. -- **search_group_name** (`string`, required) Search term for the group name to filter results. -- **pagination_cursor** (`string`, optional) The pagination cursor value to navigate through the paginated list of environment groups. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEnvironmentGroup - -
- - -Create a new environment group in a project. - -**Parameters** - -- **environment_group_key** (`string`, required) A string identifier for the environment group. It must be unique within the project. -- **group_type_index** (`integer`, required) An integer representing the index of the group type to be created within the project. Ensure it matches the available types for grouping. -- **project_identifier** (`string`, required) The unique identifier for the project to access. Retrieve using /api/projects/. -- **environment_group_properties** (`string`, optional) A JSON string containing key-value pairs for the properties of the environment group. Define attributes like settings and configurations relevant to the group. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentGroupActivity - -
- - -Retrieve activity data for groups within an environment. - -**Parameters** - -- **group_type_index** (`integer`, required) An integer that specifies the type of group to find within the environment. -- **project_id** (`string`, required) Project ID required to access activity data for the specified environment group. Obtain this ID by making a call to /api/projects/. -- **user_id_for_group_retrieval** (`string`, required) Specify the user ID to retrieve group activities for within a project. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteEnvironmentGroupProperty - -
- - -Deletes a property from an environment group. - -**Parameters** - -- **creation_date** (`string`, required) The date when the property was created, in ISO 8601 format. -- **environment_group_type_index** (`integer`, required) An integer representing the group type index to identify the environment group. -- **group_key** (`string`, required) Specify the key of the environment group you want to target for property deletion. -- **group_key_for_deletion** (`string`, required) The key of the property to delete from the environment group. -- **group_type_index** (`integer`, required) Specify the group type index to identify which group to delete the property from. This should be an integer value. -- **project_id** (`string`, required) The unique identifier for the project. Obtain it by calling /api/projects/. -- **group_properties_to_delete** (`string`, optional) A comma-separated list of property names you want to delete from the environment group. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FindEnvironmentGroups - -
- - -Retrieve details of environment groups by project ID. - -**Parameters** - -- **environment_group_key** (`string`, required) Specify the key of the environment group you want to find within the project. -- **group_type_to_find** (`integer`, required) Specify the type of environment group to find. This is represented as an integer value that corresponds to a specific group type within the project. -- **project_id** (`string`, required) The ID of the project to access. Call /api/projects/ to find the project ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentPropertyDefinitions - -
- - -Retrieve property definitions for environment groups. - -**Parameters** - -- **project_identifier** (`string`, required) Project ID for accessing environment groups. Use /api/projects/ to find this ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentPropertyValues - -
- - -Retrieve property values of environments within a project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique ID of the project to access. Retrieve this ID via a call to the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetRelatedEnvironmentGroups - -
- - -Retrieve related environment groups for a project. - -**Parameters** - -- **group_type_identifier** (`integer`, required) An integer representing the specific group type to locate within the environment groups. -- **project_id** (`string`, required) The unique ID of the project to access related environment groups. Obtainable via a call to /api/projects/. -- **user_id_for_group_search** (`string`, required) The ID of the user for whom you want to find related groups. This helps in retrieving specific group associations for the given user. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentGroupProperty - -
- - -Update a property of an environment group. - -**Parameters** - -- **creation_timestamp** (`string`, required) The date and time when the property was created, in ISO 8601 format (e.g., '2023-10-05T14:48:00Z'). -- **environment_group_key** (`string`, required) A unique identifier for the environment group whose property is being updated. -- **group_key** (`string`, required) Specify the key of the group to locate within the project for updating properties. -- **group_type_identifier** (`integer`, required) A unique integer representing the type of environment group to locate and update. -- **group_type_index_identifier** (`integer`, required) The integer index identifying the type of the environment group to be updated. Ensure it corresponds to the correct group type required for the operation. -- **project_id** (`string`, required) The unique Project ID for accessing specific project resources. Retrieve this ID by making a call to /api/projects/. -- **group_properties** (`string`, optional) A JSON string representing the properties to update in the environment group. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListProjectHogFunctions - -
- - -Retrieve a list of hog functions for a given project. - -**Parameters** - -- **project_identifier** (`string`, required) The Project ID to access the specific project. Use /api/projects/ to find the ID. -- **created_at** (`string`, optional) The creation date of the hog function. Expected in ISO 8601 format (e.g., 2023-10-11T15:00:00Z). -- **created_by_user_id** (`integer`, optional) The user ID of the person who created the hog functions. -- **function_id** (`string`, optional) The unique identifier for the hog function to be retrieved. Specify this to get details of a specific function. -- **function_types** (`array[string]`, optional) Specify one or more hog function types to filter by, separated by commas. -- **include_enabled_functions** (`boolean`, optional) If set to true, returns only enabled hog functions; otherwise, returns all functions. -- **results_offset** (`integer`, optional) The initial index from which to return the results for paginated data. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page for the hog functions list. -- **search_term** (`string`, optional) A string used to search and filter the list of hog functions. -- **update_timestamp** (`string`, optional) A timestamp indicating the last update time of the hog function. Use format YYYY-MM-DDTHH:MM:SSZ. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateHogFunctionEnvironment - -
- - -Track and create a new file system view in an environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project to access. Call /api/projects/ to retrieve project IDs if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.TrackHogFunctionViews - -
- - -Tracks views on a specific hog function by logging access. - -**Parameters** - -- **hog_function_uuid** (`string`, required) A UUID string to identify the specific hog function for view tracking. -- **target_project_id** (`string`, required) The ID of the project to access. Use /api/projects/ to find the ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateHogFunctions - -
- - -Update and log views of file system resources. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **hog_function_uuid** (`string`, optional) A UUID string identifying this hog function to update and log views. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project you want to access. Retrieve it using a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateHogFunctionViewLog - -
- - -Log a new view for an environment's hog function. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **hog_function_uuid** (`string`, optional) A UUID string identifying the hog function to log a view for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteHogFunction - -
- - -Marks a hog function as deleted in a project. - -**Parameters** - -- **hog_function_id** (`string`, required) A UUID string identifying the specific hog function to mark as deleted. -- **project_identifier** (`string`, required) The unique identifier for the project to access. To find it, make a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateHogFunctionBroadcast - -
- - -Create a broadcast for hog functions in an environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **hog_function_id** (`string`, optional) A UUID string identifying the hog function for broadcast creation. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) String representing the ID of the project to access. Obtain the ID via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.TrackHogFunctionInvocation - -
- - -Track and log hog function invocations in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **hog_function_id** (`string`, optional) A UUID string identifying the hog function to track in the specified project environment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Call /api/projects/ to retrieve the ID if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveHogFunctionLogs - -
- - -Retrieve logs for hog function views in an environment. - -**Parameters** - -- **hog_function_uuid** (`string`, required) A UUID string identifying the specific hog function to retrieve logs for. -- **project_identifier** (`string`, required) The unique identifier for the project to access. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveHogFunctionMetrics - -
- - -Retrieve hog function metrics for a specific environment. - -**Parameters** - -- **hog_function_uuid** (`string`, required) A UUID string identifying the specific hog function for which metrics are being retrieved. -- **project_identifier** (`string`, required) Project ID of the target project. Retrieve via /api/projects/ if unknown. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveHogFunctionMetricsTotals - -
- - -Retrieve total metrics for a specific HOG function. - -**Parameters** - -- **hog_function_uuid** (`string`, required) A UUID string identifying the specific HOG function for which to retrieve metrics. -- **project_id** (`string`, required) The ID of the project to access. Obtainable via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveHogFunctionIcon - -
- - -Retrieve the icon for a specified hog function view access. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Obtain it by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentHogFunctionIcons - -
- - -Logs and retrieves hog function icons for a given environment. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Use /api/projects/ to find the correct ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateHogFunctionsOrder - -
- - -Update the execution order of HogFunctions. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier for the project whose HogFunctions you want to rearrange. Use /api/projects/ to find it. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetEnvironmentInsights - -
- - -Retrieve insights for a specific environment. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Use /api/projects/ to find the correct ID. -- **created_by_user_id** (`integer`, optional) The user ID of who created the insight. Expected as an integer. -- **initial_result_index** (`integer`, optional) The initial index from which to start returning results. -- **refresh_method** (`string`, optional) Strategy for refreshing insights, with options for cache use and sync/async execution. Choices include: 'force_cache', 'blocking', 'async', 'lazy_async', 'force_blocking', and 'force_async'. -- **response_format** (`string`, optional) Specify the format of the retrieved insights (csv or json). -- **results_per_page** (`integer`, optional) Number of results to return per page for pagination. -- **return_basic_insight_metadata_only** (`boolean`, optional) Set to true to return only basic metadata without results for faster response. -- **short_identifier** (`string`, optional) The short identifier for the environment to retrieve insights for. This is unique per environment. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEnvironmentInsight - -
- - -Create a new insight for an environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) Project ID to access the specific project. Retrieve using /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **output_format** (`string`, optional) Specify the format of the output data. Accepted values are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListEnvironmentInsights - -
- - -Retrieve sharing details of environment insights. - -**Parameters** - -- **insight_id** (`integer`, required) The identifier for the specific insight. Provide as an integer to specify which insight's sharing details to retrieve. -- **project_identifier** (`string`, required) Unique identifier for the project to access. Retrieve via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateSharingPassword - -
- - -Create a new password for sharing configuration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **insight_identifier** (`integer`, optional) The unique integer ID of the insight for which you want to create a sharing password. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to access. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteInsightSharingPassword - -
- - -Delete a password from an insight's sharing configuration. - -**Parameters** - -- **insight_identifier** (`integer`, required) The unique integer ID of the insight whose sharing password you want to delete. -- **password_identifier** (`string`, required) The unique identifier of the password to be deleted from the sharing configuration. -- **project_id** (`string`, required) The unique identifier for the project you wish to access. Obtain this ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RefreshInsightsSharing - -
- - -Refresh sharing status of insights in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **insight_id** (`integer`, optional) The ID of the insight you want to refresh sharing for. This should be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to access. Use /api/projects/ to find the project ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchEnvironmentInsights - -
- - -Retrieve insights for a specific environment. - -**Parameters** - -- **insight_identifier** (`integer`, required) A unique integer identifying the specific insight to retrieve. -- **project_identifier** (`string`, required) The ID of the project to access. Retrieve it by calling /api/projects/. -- **dashboard_id_context** (`integer`, optional) The ID of the dashboard to apply its filters and date range if loading insight in the context of a dashboard. -- **insight_refresh_strategy** (`string`, optional) Determines how to refresh the insight: choose from 'force_cache', 'blocking', 'async', 'lazy_async', 'force_blocking', or 'force_async'. Dictates calculation synchronization and use of cache. -- **output_format** (`string`, optional) Specify the format for the output data. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentInsights - -
- - -Update insights for a specified environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **insight_identifier** (`integer`, optional) A unique integer identifying the specific insight to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique string ID of the project to access. Obtainable via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **output_format** (`string`, optional) Specify the format for the response data. Options are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentInsightsLog - -
- - -Log a view of environment insights to track changes. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **insight_identifier** (`integer`, optional) A unique integer identifying the environment insight to log. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The Project ID needed to access the desired environment insights. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **output_format** (`string`, optional) Specify the format of the data to be returned. Options are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteEnvironmentInsight - -
- - -Marks an environment insight as deleted. - -**Parameters** - -- **insight_id** (`integer`, required) A unique integer value identifying the environment insight to be marked as deleted. -- **project_identification** (`string`, required) The ID of the project to access. Obtain by calling /api/projects/. -- **response_format** (`string`, optional) Specify the response format for the deletion confirmation, either 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentInsightActivity - -
- - -Retrieve logs of views on environment insights. - -**Parameters** - -- **insight_id** (`integer`, required) A unique integer identifying the specific insight to retrieve logs for. -- **project_id** (`string`, required) The unique ID of the project to access. Call /api/projects/ to retrieve it. -- **response_format** (`string`, optional) Specify the format of the response. Allowed values are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.TrackEnvironmentInsights - -
- - -Retrieve and log environment activity insights. - -**Parameters** - -- **environment_project_id** (`string`, required) Project ID for accessing environment insights. Obtainable via the /api/projects/ endpoint. -- **output_format** (`string`, optional) Specify the output format of the retrieved data. Accepts 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CancelInsightCreation - -
- - -Cancel the creation of an environment insight. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The ID of the project to access. Use /api/projects/ to find the ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the response format as either 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveLastViewedInsights - -
- - -Fetches the last 5 insights viewed, sorted by recency. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access insights for. Use /api/projects/ to find the ID. -- **response_format** (`string`, optional) Specifies the format of the returned data. Accepts 'csv' or 'json'. Defaults to 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateInsightViewTimestamps - -
- - -Updates the view timestamps for specific insights. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) Project ID to access. Retrieve this ID using the /api/projects/ endpoint if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specifies the format of the returned data. Options are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListEnvironmentIntegrations - -
- - -Retrieve a list of integrations for a specified environment. - -**Parameters** - -- **project_identifier** (`string`, required) Project ID for accessing the desired project's environment. Obtain this ID by calling /api/projects/. -- **results_per_page** (`integer`, optional) Number of results to return per page for the environment integrations list. -- **starting_index** (`integer`, optional) The initial index from which to return results, used for pagination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEnvironmentIntegration - -
- - -Create a new integration for a specified environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) Project ID needed to access the specific project. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveIntegrationDetails - -
- - -Retrieve integration details for a specific environment. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer value identifying the specific integration to retrieve. -- **project_identifier** (`string`, required) Project ID to access the specific environment. Retrieve it via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteEnvironmentIntegration - -
- - -Delete an integration from a project environment. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer representing the integration to be deleted. -- **project_identifier** (`string`, required) The unique identifier for the project. Use an API call to /api/projects/ to retrieve this if unknown. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveIntegrationChannels - -
- - -Retrieve integration channels for a specific project. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer identifying the specific integration within Datadog. -- **project_id** (`string`, required) The unique ID of the project you want to access. Obtain it by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveClickupLists - -
- - -Retrieve ClickUp lists for specific project integrations. - -**Parameters** - -- **integration_id** (`integer`, required) Unique integer identifying the specific integration. -- **project_id** (`string`, required) The unique ID of the project you want to access. Retrieve it via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetClickupSpaces - -
- - -Retrieve ClickUp spaces for a specific integration. - -**Parameters** - -- **integration_identifier** (`integer`, required) An integer value uniquely identifying the integration to retrieve ClickUp spaces for. -- **project_identifier** (`string`, required) The unique ID of the project to access specific ClickUp spaces. Obtain this ID via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetClickupWorkspaces - -
- - -Retrieve ClickUp workspaces for a specific integration. - -**Parameters** - -- **clickup_project_id** (`string`, required) The Project ID for accessing the desired ClickUp workspace. Obtain the ID by calling /api/projects/. -- **integration_id** (`integer`, required) A unique integer value identifying the integration to retrieve workspaces for. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.VerifyEmailIntegration - -
- - -Verify email address for an integration's environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_id** (`integer`, optional) A unique integer value identifying this integration within the environment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Project ID for which you want to verify the email integration. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetGithubReposForIntegration - -
- - -Retrieve GitHub repositories linked to a Datadog integration. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer identifying the specific integration within Datadog. -- **project_id** (`string`, required) The unique ID of the project to access. Obtain the project ID using the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveGoogleAccessibleAccounts - -
- - -Retrieve Google accessible accounts for a given integration. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer identifying the integration. -- **project_id** (`string`, required) Project ID to access specific Google accounts. Obtain by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetGoogleConversionActions - -
- - -Retrieve Google conversion actions for a specific environment. - -**Parameters** - -- **integration_identifier** (`integer`, required) A unique integer identifying the integration. -- **project_id** (`string`, required) The ID of the project you want to access. Obtain this from /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveIntegrationTeams - -
- - -Retrieve linear teams for an integration in a project. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer identifying the integration to retrieve team details. -- **project_id** (`string`, required) The ID of the project you want to access. Find this ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetLinkedinAdsAccounts - -
- - -Retrieve LinkedIn Ads accounts linked to a project. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer to identify the LinkedIn Ads integration within Datadog. -- **project_id** (`string`, required) The ID of the project to access LinkedIn Ads accounts. Retrieve this ID via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveLinkedinAdsConversionRules - -
- - -Retrieve LinkedIn Ads conversion rules for a project. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer identifying the LinkedIn Ads integration to retrieve conversion rules for. -- **project_id** (`string`, required) The ID of the project for which you want to retrieve LinkedIn Ads conversion rules. Obtain this ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetTwilioPhoneNumbers - -
- - -Retrieve Twilio phone numbers for a specific integration. - -**Parameters** - -- **integration_identifier** (`integer`, required) A unique integer value identifying the Twilio integration for which phone numbers should be retrieved. -- **project_id** (`string`, required) The ID of the project you want to access. Use /api/projects/ to retrieve the ID if needed. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveIntegrationAuthorization - -
- - -Retrieve integration authorization status for a project. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the project you want to access. Obtain the ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentLogAttributes - -
- - -Retrieve log attributes for a specific environment. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the project whose environment log attributes you want to retrieve. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateLogsQueryForEnvironment - -
- - -Create a logs query for a specific environment. - -**Parameters** - -- **project_identifier** (`string`, required) The unique ID of the project being accessed. Use /api/projects/ to find it. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEnvironmentLogSparkline - -
- - -Create a sparkline for environment logs in Datadog. - -**Parameters** - -- **project_id_for_log_sparkline** (`string`, required) The Project ID for accessing the environment logs in Datadog. Retrieve this ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentLogsValues - -
- - -Fetch log values for a given environment and project. - -**Parameters** - -- **project_id** (`string`, required) The unique ID of the project to access. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateMaxToolsInsight - -
- - -Create an insight for maximum tools in a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you want to access to create the insight. Obtainable via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetPersistedFolders - -
- - -Retrieve a list of persisted folders for a given environment. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you want to access. Obtain this by calling /api/projects/. -- **results_per_page** (`integer`, optional) Number of results to return per page when retrieving folders. -- **starting_index** (`integer`, optional) The initial index from which to return the results, used for pagination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreatePersistedFolder - -
- - -Create a persisted folder in a Datadog environment. - -**Parameters** - -- **folder_creation_timestamp** (`string`, required) Timestamp indicating when the folder was created. It should be in ISO 8601 format. -- **folder_id** (`string`, required) A unique identifier for the persisted folder to be created in the environment. -- **folder_type** (`string`, required) Specifies the type of the folder to create. Acceptable values are 'home' for Home directory and 'pinned' for Pinned directory. -- **folder_updated_at** (`string`, required) Timestamp indicating when the folder was last updated. -- **project_identifier** (`string`, required) The ID of the Datadog project for accessing a specific environment. Obtain this by calling /api/projects/. -- **folder_protocol** (`string`, optional) Specify the protocol for the persisted folder, typically as a string indicator. -- **persisted_folder_path** (`string`, optional) Specify the path for the persisted folder in the Datadog environment. This should be a valid directory path within the project. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersistedEnvironmentFolder - -
- - -Retrieve details of a persisted environment folder by ID. - -**Parameters** - -- **persisted_folder_id** (`string`, required) A UUID string identifying the persisted folder to retrieve. -- **project_identifier** (`string`, required) The unique identifier for the project related to the persisted folder. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentFolder - -
- - -Update a specific folder in an environment project. - -**Parameters** - -- **folder_creation_date** (`string`, required) The date and time when the folder was created, in ISO 8601 format (e.g., '2023-10-12T14:23:30Z'). -- **folder_id** (`string`, required) The identifier for the folder to be updated in the environment. -- **folder_type** (`string`, required) Specify the type of the folder: 'home' for Home, 'pinned' for Pinned. -- **folder_update_timestamp** (`string`, required) Timestamp indicating when the folder was last updated. Expected in ISO 8601 format. -- **folder_uuid** (`string`, required) A UUID string identifying the Persisted Folder to update. -- **project_identifier** (`string`, required) String ID of the project to access. Retrieve by calling /api/projects/. -- **folder_path** (`string`, optional) The path of the folder within the environment project to update. -- **folder_protocol_type** (`string`, optional) Specifies the protocol type for accessing the folder. Must be a string. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyEnvFolder - -
- - -Partially update a specific environment folder. - -**Parameters** - -- **project_id** (`string`, required) Provide the Project ID to access the specific environment. Retrieve it via /api/projects/. -- **environment_folder_creation_date** (`string`, optional) The creation date of the environment folder. Expected in YYYY-MM-DD format. -- **environment_folder_id** (`string`, optional) The unique identifier for the environment folder to update. Provide a valid string ID. -- **environment_folder_last_updated** (`string`, optional) The timestamp when the environment folder was last updated. Use ISO 8601 format. -- **environment_folder_protocol** (`string`, optional) Specify the protocol type for the environment folder, such as 'home' or 'pinned'. -- **folder_path** (`string`, optional) Specify the updated path for the environment folder. -- **folder_type** (`string`, optional) Specify the type of the folder: `home` for Home or `pinned` for Pinned. -- **persisted_folder_id** (`string`, optional) A UUID string that uniquely identifies the persisted folder to be updated. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeletePersistedFolder - -
- - -Delete a persisted folder from a project environment. - -**Parameters** - -- **persisted_folder_uuid** (`string`, required) A UUID identifying the persisted folder to be deleted. -- **project_id** (`string`, required) The unique ID of the project where the folder resides. Retrieve this ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersonDetails - -
- - -Retrieve details of a specific person in a project. - -**Parameters** - -- **person_id** (`integer`, required) Unique integer identifying the person to retrieve details for. -- **project_identifier** (`string`, required) The ID of the project to retrieve the person's details. Obtainable via a call to /api/projects/. -- **response_format** (`string`, optional) Specify the format for the response data. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdatePersonProperties - -
- - -Update specific properties of a person in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **person_id** (`integer`, optional) A unique integer identifier for the person whose properties are to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve using /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format for the endpoint response. Choose between 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyPersonsInEnvironment - -
- - -Modify or remove persons in a given environment. - -**Parameters** - -- **project_id_of_target_environment** (`string`, required) The Project ID for the environment you want to access. Find it with a call to /api/projects/. -- **distinct_ids_list** (`array[string]`, optional) List of unique identifiers for individuals to be updated or deleted. Each identifier should be a string. -- **person_created_at** (`string`, optional) The timestamp of when the person was created, formatted as a string. This helps identify the creation date of the person within the system. -- **person_id** (`integer`, optional) The unique identifier for the person you want to update or delete. This is an integer value. -- **person_identifier** (`integer`, optional) A unique integer used to identify the person for modification or deletion. -- **person_identifier_uuid** (`string`, optional) The unique identifier for the person whose data is to be updated or deleted. This UUID is required for the operation. -- **person_name** (`string`, optional) The name of the person to modify. This is required for updating the person's information. -- **person_properties** (`string`, optional) JSON string of properties and values to update for a person. This may include attributes like name, email, etc. -- **response_format** (`string`, optional) Specifies the format of the response data. Acceptable values are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeletePersonRecord - -
- - -Deletes an individual person record from a project. - -**Parameters** - -- **person_id** (`integer`, required) A unique integer value identifying the person to be deleted. -- **project_id** (`string`, required) The ID of the project to access. Obtain it by calling /api/projects/. -- **delete_events_task** (`boolean`, optional) If true, a task to delete all events associated with this person is created and queued, running every Sunday at 5 AM UTC. -- **response_format** (`string`, optional) Specifies the format of the response, either 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersonActivity - -
- - -Retrieve a person's activity from the environment. - -**Parameters** - -- **person_id** (`integer`, required) A unique integer identifying the person whose activity you want to retrieve. -- **project_id** (`string`, required) Project ID to access. Obtain by calling /api/projects/. -- **output_format** (`string`, optional) Specify the output format for the data, either 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.QueuePersonEventsDeletion - -
- - -Queue the deletion of all events for a specific person. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **person_identifier** (`integer`, optional) A unique integer identifying the person whose events are to be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Project ID needed to access the specific project. Obtainable via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **events_export_format** (`string`, optional) The format in which to export events before deletion. Acceptable values are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeletePersonProperty - -
- - -Deletes a specific property from a person. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **property_key_to_delete** (`string`, optional) Specify the property key of the person to delete. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **person_identifier** (`integer`, optional) A unique integer identifier for the person whose property is to be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Use /api/projects/ to retrieve this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format of the response. Options are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeletePersonRecordings - -
- - -Queue deletion of all recordings associated with a person. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **person_id** (`integer`, optional) A unique integer identifier for the person whose recordings should be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project for which you want to queue recording deletions. Obtainable via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format for the response, either 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersonPropertyTimeline - -
- - -Retrieve timeline of property changes for a person. - -**Parameters** - -- **person_identifier** (`integer`, required) Unique integer value for identifying the person. -- **project_id** (`string`, required) The ID of the project to access. Obtainable via a call to /api/projects/. -- **output_format** (`string`, optional) Specify the format of the data to be retrieved. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ReadOrDeletePerson - -
- - -Read or delete a person's record in the environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **person_id** (`integer`, optional) Unique integer identifier for the person to read or delete. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Unique identifier for the project to access. Retrieve via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **output_format** (`string`, optional) Specify the format of the response. Choose between 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdatePersonProperty - -
- - -Update a specific property for a person in an environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **property_key** (`string`, optional) The key of the property you want to update for a person. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **property_value** (`string`, optional) Specify the value for the property to update for a person. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **person_identifier** (`integer`, optional) Unique identifier for the person. Use an integer value to specify the person whose property you wish to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Specify the ID of the project you wish to access. Retrieve the project ID via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **output_format** (`string`, optional) The format in which the response is returned. Choose either 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetPersonsActivity - -
- - -Retrieve activity data for persons in a project environment. - -**Parameters** - -- **project_identifier** (`string`, required) The unique ID of the project to access. Use /api/projects/ to find the ID. -- **response_format** (`string`, optional) Specifies the format of the response data. Choose either 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.BulkDeletePersonsInEnvironment - -
- - -Bulk delete persons by IDs in a Datadog environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **target_project_id** (`string`, optional) The ID of the project you wish to access for this operation. Retrieve it using the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **distinct_ids_to_delete** (`json`, optional) Provide a list of up to 1000 distinct IDs to delete all associated persons. Only used when mode is 'execute'. -- **response_format** (`string`, optional) Specify the format of the API response, either 'csv' or 'json'. Only used when mode is 'execute'. -- **posthog_person_ids** (`json`, optional) A list of up to 1000 PostHog person IDs to delete from the environment. Only used when mode is 'execute'. -- **delete_events** (`boolean`, optional) If true, a task to delete all events related to this person will be created and queued, executing at 5AM UTC every Sunday. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersonsCohorts - -
- - -Retrieve persons cohort data from specified environments. - -**Parameters** - -- **project_id** (`string`, required) Project ID for accessing the specified cohort data. Obtain this by calling /api/projects/. -- **response_format** (`string`, optional) Specifies the format of the response. Supported values are 'csv' and 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchPersonsFunnelData - -
- - -Fetch persons data from the funnel in a specified environment. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Use /api/projects/ to find this ID. -- **output_format** (`string`, optional) Specify the format of the data output: 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreatePersonsFunnel - -
- - -Create a funnel for tracking persons. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **target_project_id** (`string`, optional) The ID of the project you want to access. Obtain it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **output_format** (`string`, optional) Specify the output format for the funnel creation. Options are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersonsFunnelCorrelation - -
- - -Retrieve persons related to funnel correlation in an environment. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Retrieve using /api/projects/. -- **response_format** (`string`, optional) Specifies the format of the response. Acceptable values are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreatePersonsFunnelCorrelation - -
- - -Create a funnel correlation for persons in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier for the project to access. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **output_format** (`string`, optional) Specifies the output format of the response. Accepts 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersonsLifecycle - -
- - -Retrieve lifecycle details of persons in a project. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier of the project to access. Use /api/projects/ to find this ID. -- **response_format** (`string`, optional) Specify the format of the response data. Choose either 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ResetDistinctId - -
- - -Reset a distinct_id for a deleted person. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project to access. Retrieve this via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format of the response. Options are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersonStickiness - -
- - -Retrieve stickiness data for persons in a project environment. - -**Parameters** - -- **project_identifier** (`string`, required) The unique Project ID needed to access stickiness data. Obtainable via a call to /api/projects/. -- **response_format** (`string`, optional) Specifies the format of the response data. Available options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersonsTrends - -
- - -Retrieve trends data for persons in a specified environment. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access for retrieving person trends. Obtain this by calling /api/projects/. -- **response_format** (`string`, optional) Specify the format of the response: 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersonsData - -
- - -Retrieve information about persons in a specified environment. - -**Parameters** - -- **project_identifier** (`string`, required) The unique Project ID required to access the specific environment. Obtainable via /api/projects/. -- **response_format** (`string`, optional) Specifies the format in which the response should be returned. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListEnvironmentPluginLogs - -
- - -Retrieve logs for a plugin configuration in a specific environment. - -**Parameters** - -- **plugin_configuration_id** (`string`, required) The identifier for the plugin configuration to retrieve logs for. Required to specify which plugin configuration's logs to access. -- **project_id** (`string`, required) The ID of the project to access logs for. Obtain this ID by calling /api/projects/. -- **results_offset_index** (`integer`, optional) The starting index for the results to return from the API. Used for pagination. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page for pagination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetEnvironmentQueryResults - -
- - -Retrieve results of an environment query for a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you want to access. Retrieve it via a call to /api/projects/. -- **query_id** (`string`, required) The ID of the specific query to retrieve results for within the project's environment. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteEnvironmentQuery - -
- - -Delete a specific query environment. - -**Parameters** - -- **project_id_access** (`string`, required) Specify the Project ID of the project you want to access. Obtain the ID by calling /api/projects/. -- **query_id** (`string`, required) The unique ID of the environment query to be deleted. This is necessary to specify which query environment should be removed. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveQueryLogDetails - -
- - -Retrieve query log details for a given query ID. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the project. Call /api/projects/ to find it. -- **query_id** (`string`, required) The unique identifier for the query issued in the last 24 hours to retrieve its log details. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CheckPosthogEnvAuthenticationAsync - -
- - -Check authentication for Datadog environment asynchronously. - -**Parameters** - -- **posthog_project_id** (`string`, required) Project ID to access a specific Datadog environment. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentDraftSql - -
- - -Retrieve draft SQL for a specific environment. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access. Obtain by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListSyntheticPlaylists - -
- - -Retrieve synthetic session recording playlists. - -**Parameters** - -- **project_identifier** (`string`, required) A string representing the Project ID to access specific project environments for synthetic session recording playlists. Obtain the ID by calling /api/projects/. -- **created_by_user_id** (`integer`, optional) The user ID of the creator of the playlists to filter results by. If not specified, playlists by any creator will be included. -- **playlist_short_id** (`string`, optional) A unique identifier for the playlist. Used to specify which playlist to retrieve or target. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page. -- **starting_index_for_results** (`integer`, optional) The starting index from which the results will be returned. Used for pagination in retrieving playlists. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateSessionRecordingPlaylist - -
- - -Create a new session recording playlist for an environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) Provide the Project ID to access the specific project. You can retrieve the ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveSessionRecordingPlaylists - -
- - -Retrieve a session recording playlist for a specific project. - -**Parameters** - -- **playlist_short_id** (`string`, required) The short identifier of the session recording playlist to retrieve. Required for accessing specific playlist details. -- **project_id** (`string`, required) The unique identifier of the project to access. Obtain this ID from the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateSessionRecordingPlaylist - -
- - -Update a session recording playlist within an environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) Project ID required to access the specific project. Obtainable via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **playlist_short_id** (`string`, optional) The short ID of the session recording playlist to update. It identifies the specific playlist within a project environment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyRecordingPlaylist - -
- - -Update session recording playlists for a given project and ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique ID of the project to access. Retrieve the ID via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **session_recording_short_id** (`string`, optional) The unique short identifier for the session recording playlist you want to update. Typically a concise string for quick reference. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteSessionRecordingPlaylist - -
- - -Mark a session recording playlist as deleted. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Retrieve by calling /api/projects/. -- **session_recording_playlist_short_id** (`string`, required) The short ID of the session recording playlist to mark as deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveSessionRecordings - -
- - -Retrieve session recordings for a specified playlist. - -**Parameters** - -- **playlist_short_id** (`string`, required) The unique short ID of the session recording playlist to retrieve recordings from. -- **project_id** (`string`, required) The unique ID of the project. Obtain this by calling the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateSessionRecordingPlaylistEntry - -
- - -Add a recording to a session playlist. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier for the project to access. Obtain by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **session_recording_id** (`string`, optional) The ID of the session recording to be added to the playlist. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **session_recording_short_id** (`string`, optional) The short ID of the session recording to add to the playlist. It must be a valid string identifier. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteSessionRecording - -
- - -Deletes a session recording from a playlist. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Use /api/projects/ to find it. -- **session_recording_identifier** (`string`, required) The unique identifier of the session recording to be deleted. This ID is required to specify which recording to remove from the playlist. -- **session_recording_short_id** (`string`, required) The short ID of the session recording to be deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListSessionRecordings - -
- - -Retrieve session recordings for a specific environment. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the project to access session recordings. Use the `/api/projects/` endpoint to find this ID if unknown. -- **results_per_page** (`integer`, optional) Number of session recordings to return per page. -- **starting_index_for_results** (`integer`, optional) The initial index from which to return the session recordings results. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveSessionRecording - -
- - -Retrieve a specific session recording by ID. - -**Parameters** - -- **project_id** (`string`, required) The ID of the Datadog project to access. Obtain it by calling /api/projects/. -- **session_recording_id** (`string`, required) A UUID string identifying the specific session recording to retrieve. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifySessionRecording - -
- - -Update session recording details for a specific environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **session_recording_id** (`string`, optional) A UUID string identifying the session recording to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Project ID to access. Obtain it via the /api/projects/ call. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateSessionRecording - -
- - -Partially update session recording details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **session_recording_uuid** (`string`, optional) A UUID string identifying the session recording to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to access. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveSessionRecording - -
- - -Delete a session recording from an environment. - -**Parameters** - -- **project_identifier** (`string`, required) The unique identifier for the project you want to access. Retrieve from /api/projects/. -- **session_recording_id** (`string`, required) A UUID string identifying the session recording to delete. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListSessionRecordingSharing - -
- - -Retrieve sharing details for a specific session recording. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Use /api/projects/ to find the project ID. -- **session_recording_id** (`string`, required) The unique ID of the session recording you want to retrieve sharing details for. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GenerateRecordingPassword - -
- - -Create a password for session recording sharing. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) Project ID for accessing a specific project. Retrieve via /api/projects/ to find the correct ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **recording_id** (`string`, optional) The unique identifier of the session recording for which you want to create a sharing password. This ID is necessary to specify the exact recording within the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteSharingPassword - -
- - -Delete a password from the sharing configuration. - -**Parameters** - -- **password_identifier** (`string`, required) The unique identifier of the password to be deleted from the sharing configuration. -- **recording_id** (`string`, required) The ID of the recording from which the password is to be deleted. This identifies the specific session recording. -- **target_project_id** (`string`, required) The ID of the project from which to delete the password. Obtain this ID via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RefreshSessionRecordingSharing - -
- - -Refreshes the sharing status of a session recording. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier for the project. Retrieve it using the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **session_recording_id** (`string`, optional) The unique identifier of the session recording to refresh sharing status. Required to specify which recording's sharing status to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GenerateSessionSummaries - -
- - -Generate AI summaries for session recordings. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you want to access. Retrieve it by calling the /api/projects/ endpoint. -- **session_id_list** (`array[string]`, required) List of session IDs to be summarized, with a maximum of 300 IDs. -- **summarization_focus_area** (`string`, optional) Optional focus area for the summarization to guide the AI in highlighting specific patterns or information. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GenerateIndividualSessionSummary - -
- - -Generate individual AI summaries for each session. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Obtain it by calling /api/projects/. -- **session_ids_to_summarize** (`array[string]`, required) List of session IDs for summarization, up to a maximum of 300. -- **summarization_focus_area** (`string`, optional) Optional focus area for refining the session summarization. Enhances the summary by concentrating on specified topics or elements. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentSessionProperties - -
- - -Retrieve session property definitions for an environment. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access. Obtain from calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetEnvironmentSessionValues - -
- - -Retrieve session values for a specific environment. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project for which to retrieve session values. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListEnvironmentSubscriptions - -
- - -Retrieve subscriptions for environment projects. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the project to access its environment subscriptions. Obtain this ID from the /api/projects/ endpoint. -- **result_start_index** (`integer`, optional) Initial index to start retrieving results from for pagination purposes. -- **results_per_page** (`integer`, optional) Number of results to return per page. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEnvironmentSubscription - -
- - -Create a new subscription for an environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) Project ID to access the specific project. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveSubscriptionDetails - -
- - -Retrieve details of a project's subscription environment. - -**Parameters** - -- **project_identifier** (`string`, required) The unique identifier for the project you want to access. Obtain by calling /api/projects/. -- **subscription_id** (`integer`, required) A unique integer value identifying the subscription to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEnvironmentSubscription - -
- - -Update environment subscription for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **subscription_identifier** (`integer`, optional) A unique integer value identifying the subscription to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you're accessing. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyEnvironmentSubscription - -
- - -Update a subscription for a specific environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **subscription_id** (`integer`, optional) Unique integer identifying the subscription to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteEnvironmentSubscription - -
- - -Marks an environment subscription as deleted in Datadog. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project for accessing its environment subscription. Obtain via a call to /api/projects/. -- **subscription_id** (`integer`, required) A unique integer value identifying the subscription to be marked as deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListUserInterviews - -
- - -Retrieve user interviews for a project environment. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project for accessing user interviews. Retrieve this by calling /api/projects/. -- **result_start_index** (`integer`, optional) The starting index for returning user interviews results. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateUserInterviewEnvironment - -
- - -Create a user interview environment in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **access_project_id** (`string`, optional) The ID of the project to access for creating a user interview environment. Use /api/projects/ endpoint to retrieve if unknown. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveUserInterview - -
- - -Retrieve details of a specific user interview. - -**Parameters** - -- **interview_id** (`string`, required) A UUID string identifying the specific user interview to be retrieved. -- **project_identifier** (`string`, required) The ID of the project to access. Use /api/projects/ to find this ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateUserInterviewEnvironment - -
- - -Update environment details for a user interview. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_interview_id** (`string`, optional) A UUID string that uniquely identifies the user interview to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project for accessing environment details. Obtain by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyInterviewEnvironment - -
- - -Partially update a user interview environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_interview_id** (`string`, optional) A UUID string that uniquely identifies the user interview to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **target_project_id** (`string`, optional) The ID of the project to access. Obtain by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteUserInterview - -
- - -Delete a user interview from an environment. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project for accessing the specific user interview. Obtain this by calling /api/projects/. -- **user_interview_id** (`string`, required) A UUID string identifying the user interview to delete. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListWarehouseSavedQueries - -
- - -Retrieve a list of saved warehouse queries for a project. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the project you want to access. Obtain this ID by calling /api/projects/. -- **page_number** (`integer`, optional) The page number within the paginated result set to retrieve. Use for navigating through results. -- **search_term** (`string`, optional) The term used to filter and search through the saved queries. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateWarehouseSavedQuery - -
- - -Create a new warehouse saved query. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project to access. Retrieve it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetWarehouseSavedQuery - -
- - -Retrieve details of a warehouse saved query. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Retrieve this by calling /api/projects/. -- **saved_query_id** (`string`, required) A UUID string identifying the specific data warehouse saved query to retrieve. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateWarehouseQuery - -
- - -Updates a saved query in the data warehouse. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **saved_query_uuid** (`string`, optional) A UUID identifying the specific saved query to update in the data warehouse. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project to access. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateWarehouseSavedQuery - -
- - -Update a warehouse saved query in a specified environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **saved_query_uuid** (`string`, optional) A UUID string identifying this data warehouse saved query for updates. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to access. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteSavedQuery - -
- - -Delete a saved query from the warehouse. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access. Retrieve it with a call to /api/projects/. -- **saved_query_uuid** (`string`, required) A UUID string identifying the data warehouse saved query to be deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEnvironmentQueryActivity - -
- - -Retrieve activity details of a saved warehouse query. - -**Parameters** - -- **project_identifier** (`string`, required) Project ID for accessing the specific project. Retrieve it using /api/projects/. -- **query_id** (`string`, required) A UUID string identifying the data warehouse saved query for retrieving activity details. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchSavedQueryAncestors - -
- - -Retrieve ancestors of a saved query, including parents and beyond. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **saved_query_id** (`string`, optional) A UUID string identifying the specific data warehouse saved query to fetch ancestors for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) ID of the project to access. Retrieve via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CancelSavedQueryWorkflow - -
- - -Cancel a running saved query workflow in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **saved_query_id** (`string`, optional) A UUID string identifying the data warehouse saved query to cancel. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to access for canceling the saved query. Retrieve the project ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetDescendantsSavedQuery - -
- - -Retrieve descendants of a specified saved query. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **saved_query_uuid** (`string`, optional) The UUID that uniquely identifies this saved query in the data warehouse. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project to access. Get this ID via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UndoMaterializationPosthog - -
- - -Revert materialization to the original view in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **saved_query_uuid** (`string`, optional) A UUID string identifying the data warehouse saved query to be reverted. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id_for_access** (`string`, optional) Project ID to access the relevant Datadog environment. Retrieve by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RunSavedQuery - -
- - -Execute a saved query in the Datadog environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **saved_query_uuid** (`string`, optional) A UUID string identifying the saved query to be executed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. To find the ID, call /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListWarehouseTables - -
- - -Retrieve a list of warehouse tables for a given environment. - -**Parameters** - -- **project_identifier** (`string`, required) The unique identifier of the project to access. Use /api/projects/ to find this ID. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. -- **search_term** (`string`, optional) A term to filter the warehouse tables based on specific criteria. -- **starting_index_for_results** (`integer`, optional) The index from which to begin returning the list of results for warehouse tables. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateWarehouseTable - -
- - -Create a new warehouse table for a specified environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The ID of the project to access for creating a warehouse table. Obtain it from /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveWarehouseTable - -
- - -Retrieve details of a specific warehouse table. - -**Parameters** - -- **project_id** (`string`, required) Project ID for accessing the specific data warehouse. Retrieve it using /api/projects/. -- **warehouse_table_id** (`string`, required) A UUID string identifying this specific data warehouse table for retrieval. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyWarehouseTable - -
- - -Update a specific warehouse table's information. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **warehouse_table_id** (`string`, optional) A UUID string identifying the data warehouse table to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project you want to access. Retrieve via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateWarehouseTable - -
- - -Update specific warehouse tables in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **warehouse_table_uuid** (`string`, optional) A UUID string that identifies the specific data warehouse table to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project you wish to access. Obtainable by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteWarehouseTable - -
- - -Delete a specific warehouse table in a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project containing the warehouse table to delete. Use /api/projects/ to obtain IDs. -- **warehouse_table_id** (`string`, required) A UUID string that uniquely identifies the data warehouse table to be deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RefreshWarehouseTableSchema - -
- - -Refresh the schema of a warehouse table. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **warehouse_table_uuid** (`string`, optional) A UUID string identifying the specific data warehouse table. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to access. Obtain it by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateWarehouseTableSchema - -
- - -Update the schema of a warehouse table. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **warehouse_table_id** (`string`, optional) A UUID string identifying the data warehouse table to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The Project ID for accessing the desired project. Retrieve using /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ManageWarehouseTable - -
- - -Create a warehouse table in Datadog environments. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) Specify the Project ID for accessing the desired project. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveWebVitals - -
- - -Retrieve web vitals for a specific project environment. - -**Parameters** - -- **filter_by_pathname** (`string`, required) Specify the pathname to filter web vitals data for a particular resource. -- **project_id** (`string`, required) Project ID for accessing the specific project's web vitals. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListOrganizations - -
- - -Retrieve a list of organizations. - -**Parameters** - -- **results_per_page** (`integer`, optional) Specify the number of organization results to return per page. -- **results_start_index** (`integer`, optional) The initial index from where to start returning results. Useful for pagination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateOrganization - -
- - -Create a new organization in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetOrganizationDetails - -
- - -Retrieve details of a specific organization. - -**Parameters** - -- **organization_id** (`string`, required) A UUID string to identify the organization whose details you want to retrieve. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateOrganizationDetails - -
- - -Update details for a specific organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) A UUID string identifying the organization to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateOrganizationInfo - -
- - -Partially update organization information. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) A UUID string identifying the organization to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteOrganization - -
- - -Delete an organization from Datadog. - -**Parameters** - -- **organization_id** (`string`, required) A UUID string to identify the organization to be deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RollbackEnvironmentsMigration - -
- - -Trigger rollback migration for multi-environment projects. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_uuid** (`string`, optional) A UUID string identifying the organization for the rollback operation. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListBatchExports - -
- - -Retrieve a list of batch exports for an organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization for which to list batch exports. This is required to specify which organization's exports to retrieve. -- **result_offset** (`integer`, optional) The starting index for returning results. Useful for pagination. -- **results_per_page** (`integer`, optional) Number of results to return per page for batch exports. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateBatchExports - -
- - -Create a new batch export for an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) A string representing the unique identifier for the organization. Required to specify which organization the batch export will be created for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveBatchExportDetails - -
- - -Retrieve details of a specific batch export in an organization. - -**Parameters** - -- **batch_export_id** (`string`, required) A UUID string identifying this specific batch export. -- **organization_id** (`string`, required) A unique identifier for the organization. Provide this to retrieve batch export details. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateBatchExports - -
- - -Update batch exports for a specific organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_id** (`string`, optional) A UUID string identifying this batch export that needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_identifier** (`string`, optional) A string representing the unique identifier for the organization whose batch export settings need updating. Ensure the correct ID is provided for successful updates. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyBatchExports - -
- - -Update batch exports for an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_id** (`string`, optional) A UUID string that uniquely identifies the batch export to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_identifier** (`string`, optional) A string representing the unique identifier of the organization for which the batch exports need to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveBatchExport - -
- - -Delete a batch export from an organization. - -**Parameters** - -- **batch_export_id** (`string`, required) A UUID string that uniquely identifies the batch export to be deleted. -- **organization_id** (`string`, required) A string representing the unique identifier of the organization from which the batch export will be removed. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.InitiateExportBackfill - -
- - -Triggers a backfill for a BatchExport. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_id** (`string`, optional) A UUID string identifying the batch export to backfill. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_identifier** (`string`, optional) A string representing the unique identifier of the organization. Required for initiating the backfill process. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveBatchExportLogs - -
- - -Retrieve logs from a specific batch export. - -**Parameters** - -- **batch_export_id** (`string`, required) A UUID string to identify the batch export for log retrieval. -- **organization_id** (`string`, required) A string representing the unique identifier of the organization. Required to retrieve specific batch export logs. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.HaltBatchExport - -
- - -Pause an ongoing BatchExport process. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_id** (`string`, optional) A UUID string that uniquely identifies the specific batch export to be paused. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_identifier** (`string`, optional) The UUID string that identifies the organization related to the batch export. Required for pausing the export. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RunBatchExportTestStep - -
- - -Run a test step for a batch export in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_uuid** (`string`, optional) A UUID string that uniquely identifies the batch export to be tested. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_id** (`string`, optional) A string identifying the organization within Datadog for which the batch export test step is to be run. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ResumeBatchExport - -
- - -Unpause a paused BatchExport for a given organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_id** (`string`, optional) A UUID string identifying the batch export to unpause. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_identifier** (`string`, optional) A string representing the organization's unique identifier within Datadog. Required to specify which organization's BatchExport to unpause. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RunTestStepNewForBatchExports - -
- - -Run a new test step for batch exports. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique identifier of the organization where the test step will be initiated. It is required to specify which organization's batch exports you want to test. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveBatchExportsTest - -
- - -Retrieve batch exports test details for an organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization to retrieve batch export test details. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListOrganizationDomains - -
- - -Retrieve a list of domains for a specified organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose domains are to be retrieved. This is required to specify which organization's domains you want to list. -- **initial_index_for_results** (`integer`, optional) The starting index from which the domain results are returned, useful for pagination. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. Use this to control pagination of domain listings. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateDomainInOrganization - -
- - -Add a new domain to an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization to which the domain will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveDomainDetails - -
- - -Fetch details of a specific domain in an organization. - -**Parameters** - -- **domain_id** (`string`, required) A UUID string identifying the specific domain. -- **organization_id** (`string`, required) A string representing the unique identifier for the organization to which the domain belongs. Required to retrieve domain details. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateOrganizationDomain - -
- - -Update an organization's domain using Datadog's API. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **domain_uuid** (`string`, optional) The UUID string identifying the domain to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_id** (`string`, optional) The unique identifier for the organization whose domain needs to be updated. This should be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateDomainPartial - -
- - -Partially update domain information for an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **domain_id** (`string`, optional) A UUID string that uniquely identifies the domain to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_identifier** (`string`, optional) The unique identifier for the organization whose domain is being partially updated. Expected to be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteDomain - -
- - -Remove a domain from an organization. - -**Parameters** - -- **domain_uuid** (`string`, required) A UUID string that uniquely identifies the domain to be deleted. -- **organization_identifier** (`string`, required) A string that uniquely identifies the organization from which the domain will be removed. This should be specified when calling the tool. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.VerifyDomainForOrg - -
- - -Verify a domain for a specified organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **domain_uuid** (`string`, optional) A UUID string identifying the domain to be verified for the organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_identifier** (`string`, optional) A unique string ID representing the organization associated with the domain to verify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListOrganizationInvites - -
- - -Retrieve all pending invites for an organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose pending invites you want to retrieve. -- **results_per_page** (`integer`, optional) Number of results to return per page when listing organization invites. -- **start_index** (`integer`, optional) The initial index from which to return the results. Use this for pagination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateOrganizationInvite - -
- - -Send an invitation to join an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the Datadog organization to which the invitation will be sent. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CancelInvitation - -
- - -Cancels an invitation to join an organization. - -**Parameters** - -- **invite_identifier_uuid** (`string`, required) A UUID string representing the invitation to be cancelled. -- **organization_id** (`string`, required) A string identifier for the organization whose invitation is to be canceled. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateBulkInvites - -
- - -Create bulk invites for an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique string ID of the organization where you want to create bulk invites. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListOrganizationMembers - -
- - -Retrieve the list of members in an organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose members are to be listed. This ID determines which organization's members will be retrieved. -- **results_per_page** (`integer`, optional) Number of results to return per page when listing organization members. -- **results_start_index** (`integer`, optional) The initial index from which to return the results, for pagination purposes. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateOrganizationMember - -
- - -Update a member's information in an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) A string representing the unique identifier of the organization in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **user_uuid** (`string`, optional) The unique identifier (UUID) of the user to be updated in the organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateOrganizationMemberDetails - -
- - -Update details of an organization member in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique identifier for the organization in Datadog. This is required to specify which organization's member is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **member_user_uuid** (`string`, optional) The unique user UUID of the organization member to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveOrganizationMember - -
- - -Remove a member from an organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization from which the member is to be removed. -- **user_uuid** (`string`, required) The unique identifier (UUID) of the user to be removed from the organization. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveMemberScopedApiKeys - -
- - -Retrieve scoped API keys for a member in an organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose member's scoped API keys are to be retrieved. -- **user_uuid** (`string`, required) The unique identifier for the user within the organization. This is required to retrieve their scoped API keys. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetCurrentOrgProjects - -
- - -Retrieve projects for the current organization. - -**Parameters** - -- **organization_identifier** (`string`, required) A string representing the unique identifier of the current organization. Required to fetch projects. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. -- **start_index** (`integer`, optional) The initial index from which to return the results. Use this to paginate results starting from a specific point. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateProjectForOrganization - -
- - -Create a new project for the current organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique identifier for the organization. Used to specify which organization's project is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetOrganizationProjectDetails - -
- - -Fetch details of a specific project within an organization. - -**Parameters** - -- **organization_identifier** (`string`, required) A string representing the unique identifier for the organization whose project details are to be retrieved. -- **project_id** (`integer`, required) A unique identifier for the project. This is required to retrieve specific project details within an organization. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateProjectDetails - -
- - -Update project details for the current organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`integer`, optional) A unique integer identifying the project to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_identifier** (`string`, optional) A unique string identifying the organization whose project details are to be updated. Required for specifying the target organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateOrganizationProject - -
- - -Update a project's details within an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`integer`, optional) A unique integer value identifying the project to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_identifier** (`string`, optional) A string representing the identifier of the organization. Required to update the project details. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteProject - -
- - -Deletes a project from the current organization. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique identifier for the organization from which the project is to be deleted. Ensure this ID is correct to prevent errors. -- **project_id** (`integer`, required) A unique integer identifying the project to delete. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveProjectActivity - -
- - -Retrieve project activity for a specific organization and project. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization for which to retrieve project activity. -- **project_id** (`integer`, required) A unique integer value identifying the specific project to retrieve activity for. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateProjectProductIntent - -
- - -Update product intent for a specific project in an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`integer`, optional) A unique integer value identifying the project to update within the organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_identifier** (`string`, optional) The unique identifier of the organization. Provide this to specify which organization's project is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateOrganizationProject - -
- - -Create a project for the current organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_unique_id** (`integer`, optional) An integer that uniquely identifies the project to be created for the organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_identifier** (`string`, optional) A unique string that identifies the organization for which the project is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateProjectOnboardingStatus - -
- - -Update the onboarding status of a project in an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`integer`, optional) A unique integer identifying the specific project to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_identifier** (`string`, optional) A string representing the unique ID of the organization to update the project onboarding status within. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteSecretTokenBackup - -
- - -Deletes a secret token backup for a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`integer`, optional) The unique ID of the project whose secret token backup is to be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_id** (`string`, optional) A unique identifier for the organization. This is required to specify which organization's project the secret token backup belongs to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CheckDemoDataGenerationStatus - -
- - -Check if demo data is being generated for a project. - -**Parameters** - -- **organization_identifier** (`string`, required) A string that uniquely identifies the organization for the project. -- **project_identifier** (`integer`, required) An integer uniquely identifying the project to check demo data generation status for. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ResetProjectToken - -
- - -Reset a project's token in the current organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`integer`, optional) A unique identifier for the project whose token will be reset. This is required to specify which project's token needs to be reset. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_id** (`string`, optional) The unique identifier for the organization in which the project is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RotateSecretTokenForProject - -
- - -Rotate the secret token for a specific project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`integer`, optional) A unique integer identifying the project for which you want to rotate the secret token. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_id** (`string`, optional) The ID of the organization to which the project belongs. Required for token rotation. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetProxyRecords - -
- - -Retrieve proxy records for a given organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization for which to retrieve proxy records. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page when retrieving proxy records. -- **starting_index_for_results** (`integer`, optional) The initial index from which to begin returning results. Use this to paginate through the list of proxy records. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateProxyRecords - -
- - -Create a proxy record for an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) A unique string identifier for the organization to which the proxy record will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveProxyRecord - -
- - -Retrieve details of a specific proxy record. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose proxy record you want to retrieve. -- **proxy_record_id** (`string`, required) The unique identifier for the proxy record to be retrieved. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateProxyRecord - -
- - -Update a proxy record within an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **proxy_record_id** (`string`, optional) The unique identifier for the proxy record to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_id** (`string`, optional) A unique identifier for the organization whose proxy record is being updated. This must be a valid string representing the organization in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyProxyRecord - -
- - -Update partial details of a proxy record. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **proxy_record_id** (`string`, optional) The unique identifier for the proxy record to be updated. This is required to specify which record is being modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_id** (`string`, optional) The unique identifier for the organization. It determines the organization within which the proxy record needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteProxyRecord - -
- - -Deletes a proxy record for an organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization from which the proxy record will be deleted. This is required to specify the target organization. -- **proxy_record_id** (`string`, required) The unique identifier of the proxy record to be deleted. Required for deletion. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListOrganizationRoles - -
- - -Fetches the list of roles for a specified organization. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization to fetch roles for. Must be a valid string identifier. -- **results_per_page** (`integer`, optional) Specify the number of roles to return per page. -- **starting_result_index** (`integer`, optional) The starting index from which to return role results for pagination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateRoleInOrganization - -
- - -Create a new role within an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier of the organization where the role will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveRoleDetails - -
- - -Retrieve details of a specific role within an organization. - -**Parameters** - -- **organization_identifier** (`string`, required) A string that uniquely identifies the organization within which the role is being retrieved. Required to ensure that the role details correspond to the correct organization. -- **role_id** (`string`, required) A UUID string to identify the specific role within the organization. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateOrganizationRole - -
- - -Update an organization's role details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **role_uuid** (`string`, optional) A UUID string identifying the role to be updated in the organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_id** (`string`, optional) A unique identifier for the organization where the role will be updated. This is a required parameter. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateRoleDetails - -
- - -Partially update organization role details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **role_uuid** (`string`, optional) A UUID string identifying the role to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_id** (`string`, optional) A string representing the identifier of the organization. Required for role updates. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteRoleInOrganization - -
- - -Delete a specific role within an organization. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization from which the role will be deleted. This should be a string. -- **role_id** (`string`, required) A UUID string identifying the role to be deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListRoleMemberships - -
- - -Retrieve role memberships for a specified role within an organization. - -**Parameters** - -- **organization_id** (`string`, required) A unique identifier for the organization within Datadog. -- **role_identifier** (`string`, required) The unique identifier of the role for which memberships are to be retrieved within an organization. -- **result_start_index** (`integer`, optional) The initial index from which to return the role membership results. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page when listing role memberships. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateRoleMembership - -
- - -Create a role membership in an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in which the role membership is to be created. This is required to specify the targeted organization within Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **role_identifier** (`string`, optional) The unique identifier of the role to which the user will be assigned. It should be a string that matches the specific role in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveRoleMembership - -
- - -Remove a role membership from an organization. - -**Parameters** - -- **organization_identifier** (`string`, required) A string representing the unique identifier of the organization. Required to specify which organization the role membership belongs to. -- **role_id** (`string`, required) The unique identifier for the role from which membership will be removed. It should be a valid UUID string. -- **role_membership_id** (`string`, required) A UUID string identifying the specific role membership to be removed. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListProjectActions - -
- - -Retrieve and log actions for a specific project. - -**Parameters** - -- **project_identifier** (`string`, required) Project ID to access specific project actions. Obtain via /api/projects/ if unknown. -- **response_format** (`string`, optional) Specify the format for the response data. Options are 'csv' or 'json'. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. -- **starting_index_for_results** (`integer`, optional) The initial index from which results should start when retrieving project actions. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.LogTrackFilesystemViews - -
- - -Log a new view for file system access tracking. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project to access. Call /api/projects/ to obtain it. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format of the response. Valid options are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveProjectAction - -
- - -Retrieve logs for a specific project action. - -**Parameters** - -- **action_id** (`integer`, required) Unique integer identifying the specific action to retrieve logs for. -- **project_id** (`string`, required) The ID of the project to access. Use /api/projects/ to find this ID. -- **response_format** (`string`, optional) Specify the format for the response data. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateProjectAction - -
- - -Update and track views for a project action in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **action_id** (`integer`, optional) The unique integer to identify the action within the project for updating. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) ID of the project to access. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **output_format** (`string`, optional) Specifies the format of the data response. Options are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateActionPartial - -
- - -Partially update an action in a project to track views. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **action_id** (`integer`, optional) A unique integer value identifying the action to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project you want to access. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format for the output data. Choose between 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.MarkActionAsDeleted - -
- - -Mark an action as deleted in a specific project. - -**Parameters** - -- **action_id** (`integer`, required) A unique integer identifying the action you want to mark as deleted in the project. -- **project_identifier** (`string`, required) The unique Project ID to access the specific project. Retrieve this by calling /api/projects/. -- **response_format** (`string`, optional) Specify the format of the response, either 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetProjectActivityLog - -
- - -Fetch the activity log for a specific project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique ID of the project you want to access the activity log for. Retrieve by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListAvailableAgents - -
- - -Retrieve a list of agent definitions for tasks. - -**Parameters** - -- **project_identification** (`string`, required) The ID of the project you want to access. Obtain the ID by calling /api/projects/. -- **result_start_index** (`integer`, optional) The initial index to begin returning agent definitions from the list. -- **results_per_page** (`integer`, optional) Specify the number of agent definitions to return per page. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveAgentDefinition - -
- - -Retrieve a specific agent definition by ID. - -**Parameters** - -- **agent_id** (`string`, required) The unique identifier of the agent to retrieve. This ID specifies which agent's details to fetch. -- **project_id** (`string`, required) The unique identifier for the project you want to access. Use the API call /api/projects/ to find the project ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListAnnotationsForProject - -
- - -Retrieve annotations for a specific project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Obtain by calling /api/projects/. -- **initial_result_index** (`integer`, optional) The starting index for the results to return in pagination. -- **results_limit_per_page** (`integer`, optional) Specify the number of results to return per page when retrieving annotations for a project. -- **search_term** (`string`, optional) A search term to filter the annotations. Can be a keyword or phrase. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateAnnotation - -
- - -Create a new annotation for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project where the annotation will be created. Obtain it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveProjectAnnotation - -
- - -Retrieve details of a specific annotation by ID. - -**Parameters** - -- **annotation_id** (`integer`, required) A unique integer identifying the specific annotation to retrieve from a project. -- **project_identifier** (`string`, required) Project ID to access the desired project in Datadog. Obtainable via `/api/projects/`. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateAnnotation - -
- - -Update an existing annotation by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **annotation_id** (`integer`, optional) A unique integer identifying the annotation to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Project ID for accessing the desired project. Retrieve ID with /api/projects/ call. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyAnnotation - -
- - -Update specific details of an annotation in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **annotation_id** (`integer`, optional) A unique integer to identify the specific annotation to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteAnnotation - -
- - -Mark an annotation as deleted in a project. - -**Parameters** - -- **annotation_id** (`integer`, required) A unique integer identifier for the annotation to be marked as deleted. -- **project_id_for_annotation** (`string`, required) The ID of the project where the annotation should be marked as deleted. Use /api/projects/ to find the correct ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetAppMetrics - -
- - -Retrieve application metrics for a specific project and ID. - -**Parameters** - -- **plugin_config_id** (`integer`, required) A unique integer identifying the plugin configuration. -- **project_id_for_app_metrics** (`string`, required) The Project ID for the project whose app metrics you want to retrieve. Find the ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetErrorDetailsForAppMetrics - -
- - -Retrieve error details for specific app metrics. - -**Parameters** - -- **plugin_config_id** (`integer`, required) A unique integer identifying the plugin configuration to retrieve error details for. -- **project_identifier** (`string`, required) The unique Project ID for accessing specific app metrics error details. Obtain this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchMetricsHistory - -
- - -Retrieve historical exports of app metrics. - -**Parameters** - -- **plugin_configuration_identifier** (`string`, required) The ID of the plugin configuration for which historical metrics exports are being fetched. -- **project_identifier** (`string`, required) The Project ID required to access the desired project's historical data. Obtainable via a /api/projects/ call. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveAppMetricsHistoricalExports - -
- - -Retrieve historical export data for app metrics. - -**Parameters** - -- **export_id** (`string`, required) The unique identifier for the specific app metrics export record to retrieve. -- **plugin_configuration_id** (`string`, required) The ID for the plugin configuration to be used when retrieving app metrics. This is required to specify the context of the metrics data. -- **project_identifier** (`string`, required) Project ID to access the targeted project. Retrieve the ID using the /api/projects/ endpoint if needed. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchBatchExports - -
- - -Retrieve a list of batch exports for a specific project. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project for which to access batch exports. Obtain this by calling /api/projects/. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page when retrieving batch exports. -- **starting_index** (`integer`, optional) The initial index from which to return the results in the list of batch exports. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateBatchExport - -
- - -Initiate a batch export for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project you want to access for batch export. Retrieve from /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListBackfillExports - -
- - -Retrieve list of batch export backfills for a project. - -**Parameters** - -- **batch_export_identifier** (`string`, required) The unique identifier for the batch export to retrieve backfills for. Required to specify which export's backfills are listed. -- **project_identifier** (`string`, required) The ID of the project to access. Obtainable via /api/projects/ call. -- **ordering_field_for_results** (`string`, optional) Specify the field to use for ordering the backfill export results. -- **pagination_cursor** (`string`, optional) The pagination cursor value used to navigate through paginated results. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateBatchExportBackfill - -
- - -Create a new backfill for a batch export. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_identifier** (`string`, optional) The unique identifier for the batch export to be backfilled. This ID determines which specific export the backfill will apply to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project to access. Retrieve this via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetBatchExportBackfill - -
- - -Retrieve details of a specific batch export backfill. - -**Parameters** - -- **batch_export_backfill_id** (`string`, required) A UUID string identifying the specific batch export backfill to retrieve. -- **batch_export_identifier** (`string`, required) A string representing the batch export backfill ID to retrieve details. -- **project_id** (`string`, required) The ID of the project to access. Retrieve the project ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.TerminateBatchExportBackfill - -
- - -Cancel a batch export backfill in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_identifier** (`string`, optional) A unique identifier for the batch export backfill to be canceled. This ID specifies which batch export backfill is targeted for termination. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **backfill_id** (`string`, optional) A UUID string identifying this batch export backfill in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Project ID to access. Use /api/projects/ to find the ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListBatchExportRuns - -
- - -Retrieve batch export runs for a specific project and export. - -**Parameters** - -- **batch_export_identifier** (`string`, required) The unique identifier for the batch export. Used to specify which export runs to retrieve. -- **project_id** (`string`, required) The ID of the project to access. Use /api/projects/ to find the ID. -- **pagination_cursor** (`string`, optional) The pagination cursor value used to fetch the next page of results. -- **results_ordering_field** (`string`, optional) Specify the field for ordering the results of the batch export runs. Common fields might include date, status, or name. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveBatchExportRun - -
- - -Retrieve details of a specific batch export run. - -**Parameters** - -- **batch_export_id** (`string`, required) A unique string to identify the batch export run you want to retrieve details for. -- **batch_export_run_uuid** (`string`, required) A UUID string identifying the specific batch export run for detailed retrieval. -- **project_id** (`string`, required) Provide the Project ID to access the specific project. Use /api/projects/ to obtain the ID if unknown. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.StopBatchExportRun - -
- - -Cancel an ongoing batch export run in a specific project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_run_identifier** (`string`, optional) A UUID string uniquely identifying the batch export run to be canceled. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **batch_export_run_id** (`string`, optional) A UUID string that uniquely identifies the batch export run to be canceled. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project you want to access. Use /api/projects/ to find the correct ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveBatchExportRunLogs - -
- - -Retrieve logs for a specific batch export run. - -**Parameters** - -- **batch_export_identifier** (`string`, required) A unique identifier for the batch export. Necessary for retrieving logs for that specific export run. -- **batch_export_run_id** (`string`, required) A UUID string identifying this specific batch export run in Datadog. -- **project_id** (`string`, required) The unique identifier for the project you want to access. Retrieve it by calling `/api/projects/`. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetryExportRun - -
- - -Retry a batch export run in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_identifier** (`string`, optional) The unique identifier for the batch export run to retry. It should be provided as a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **batch_export_run_id** (`string`, optional) A UUID string that identifies the specific batch export run to retry in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The Project ID you want to access in Datadog. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePosthogBatchExports - -
- - -Retrieve specific Datadog batch export details. - -**Parameters** - -- **batch_export_id** (`string`, required) A UUID string that uniquely identifies the batch export in Datadog. -- **project_id** (`string`, required) The ID of the project you want to access. Call /api/projects/ to find this ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateBatchExport - -
- - -Update an existing batch export in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_id** (`string`, optional) A UUID string identifying the batch export to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.EditBatchExports - -
- - -Update specific details of batch exports. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_id** (`string`, optional) A UUID string identifying the batch export to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project you're accessing. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DestroyBatchExport - -
- - -Deletes a specific batch export in a project. - -**Parameters** - -- **batch_export_uuid** (`string`, required) A UUID string identifying the batch export to be deleted. -- **project_id** (`string`, required) The unique identifier for the project to access. Use /api/projects/ to retrieve it. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.StartBatchExportBackfill - -
- - -Initiate a backfill process for a BatchExport. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_id** (`string`, optional) A UUID string identifying the specific batch export. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to access. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveLogExports - -
- - -Retrieve logs from batch exports by project and export ID. - -**Parameters** - -- **batch_export_id** (`string`, required) A UUID specifying the batch export to retrieve logs from. -- **project_id** (`string`, required) Project ID for accessing the specific project. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.SuspendBatchExport - -
- - -Pause an ongoing batch export process in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_uuid** (`string`, optional) A UUID identifying the batch export to pause. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Project ID for accessing the specific project. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RunTestStepBatchExport - -
- - -Initiate a test step for batch exports. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_id** (`string`, optional) A UUID string used to identify the specific batch export for the test step. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to access for batch export testing. Retrieve this ID via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ReactivateBatchExport - -
- - -Unpause a paused BatchExport in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **batch_export_uuid** (`string`, optional) A UUID string identifying this batch export to be unpaused. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to access for unpausing the BatchExport. Make a call to /api/projects/ to find the project ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RunBatchExportsTestStep - -
- - -Triggers a test step for batch exports in a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier for the project you want to access for the batch export test step. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveBatchExportTests - -
- - -Retrieve batch export test details for a project. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access. Use the /api/projects/ endpoint to find this ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListProjectCohorts - -
- - -Retrieve a list of cohorts for a given project. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier of the project to access. To obtain this ID, call /api/projects/. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. -- **results_start_index** (`integer`, optional) The initial index from which to return the results. Use this to paginate through larger sets of data. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateCohortTracking - -
- - -Logs a new view on the resource for tracking purposes. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project you wish to access. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveCohortsData - -
- - -Retrieve cohort details and access logs for a project. - -**Parameters** - -- **cohort_identifier** (`integer`, required) A unique integer that identifies the specific cohort you wish to retrieve data for. -- **project_id** (`string`, required) The ID of the project to access. Obtain it by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyCohortViews - -
- - -Update cohort views to track new file system accesses. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **cohort_identifier** (`integer`, optional) A unique integer identifying the specific cohort to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project being accessed. Call /api/projects/ to obtain this ID if unknown. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateCohortViews - -
- - -Update and track cohort file system views. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **cohort_id** (`integer`, optional) A unique integer identifier for the cohort. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you're trying to access. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.SetCohortDeleted - -
- - -Mark a cohort as deleted in the Datadog project. - -**Parameters** - -- **cohort_id** (`integer`, required) A unique integer used to identify the cohort to be marked as deleted. -- **project_id** (`string`, required) The ID of the Datadog project you want to mark the cohort as deleted in. Obtainable via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetCohortActivity - -
- - -Retrieve logs of file system views for a cohort. - -**Parameters** - -- **cohort_id** (`integer`, required) A unique integer value identifying the specific cohort whose file system view logs are to be retrieved. -- **project_id** (`string`, required) The identifier of the project to access. Obtainable via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.AddPersonsToStaticCohort - -
- - -Add persons to a static cohort in Datadog. - -**Parameters** - -- **cohort_id** (`integer`, required) A unique integer that identifies the cohort to update. -- **project_identifier** (`string`, required) The ID of the project to access. Retrieve it via /api/projects/. -- **person_uuids_to_add** (`array[string]`, optional) List of person UUIDs to add to the cohort. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveCohortCalculationHistory - -
- - -Retrieve calculation history for a specific cohort. - -**Parameters** - -- **cohort_id** (`integer`, required) A unique integer identifying the cohort to retrieve calculation history for. -- **project_id** (`string`, required) The ID of the project you are accessing. Use /api/projects/ to find IDs. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateStaticCohortCopy - -
- - -Create a static copy of a dynamic cohort. - -**Parameters** - -- **cohort_identifier** (`integer`, required) A unique integer identifying the dynamic cohort to be duplicated as a static cohort. -- **project_identifier** (`string`, required) The ID of the project to access. Obtain it by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetCohortPersons - -
- - -Retrieve a list of persons in a specific project cohort. - -**Parameters** - -- **cohort_id** (`integer`, required) A unique integer value identifying this cohort. Required to retrieve the list of persons associated with it. -- **project_id** (`string`, required) The ID of the project you want to access. Obtain this via the /api/projects/ endpoint. -- **output_format** (`string`, optional) Specify the format of the returned data. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemovePersonFromStaticCohort - -
- - -Removes a person from a static cohort in a project. - -**Parameters** - -- **cohort_id** (`integer`, required) Unique integer ID for the specific cohort from which to remove the person. -- **project_id** (`string`, required) The Project ID you want to access. Obtain it by calling /api/projects/. -- **person_uuid_to_remove** (`string`, optional) Provide the UUID of the person to remove from the cohort. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveCohortActivity - -
- - -Retrieve logs of cohort activity views. - -**Parameters** - -- **project_id** (`string`, required) Project ID to access specific cohort activity logs. Retrieve the ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListDashboardTemplates - -
- - -Retrieve a list of dashboard templates for a project. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier of the specific project for which you want to retrieve dashboard templates. This ID can be obtained by calling the `/api/projects/` endpoint. -- **results_per_page** (`integer`, optional) Specify the number of dashboard templates to return per page. -- **starting_index_for_results** (`integer`, optional) The index from which to start returning results, useful for pagination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateDashboardTemplate - -
- - -Create a new dashboard template in a Datadog project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier for the Datadog project where you want to create the dashboard template. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveDashboardTemplate - -
- - -Retrieve a specific dashboard template by ID. - -**Parameters** - -- **dashboard_template_uuid** (`string`, required) A UUID string identifying the dashboard template to retrieve. -- **project_identifier** (`string`, required) A string representing the ID of the project you want to access. Obtain it by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyDashboardTemplate - -
- - -Update a Datadog dashboard template. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_template_uuid** (`string`, optional) A UUID string that identifies the dashboard template to be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique Project ID for accessing a specific Datadog project. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateDashboardTemplate - -
- - -Partially update a dashboard template in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_template_id** (`string`, optional) A UUID string identifying the dashboard template to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **dashboard_project_id** (`string`, optional) Project ID to access a specific dashboard. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteDashboardTemplate - -
- - -Mark a Datadog dashboard template as deleted. - -**Parameters** - -- **dashboard_template_id** (`string`, required) A UUID string uniquely identifying the Datadog dashboard template to be marked as deleted. -- **project_identifier** (`string`, required) The Project ID needed to access the specific project. Obtainable via the "/api/projects/" endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveDashboardTemplateSchema - -
- - -Retrieve JSON schema for dashboard templates. - -**Parameters** - -- **project_id** (`string`, required) Specify the Project ID for accessing the relevant dashboard template schema. Obtain the ID via the /api/projects/ endpoint if unknown. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetAvailableDashboards - -
- - -Retrieve a list of dashboards for a specific project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique identifier for the project you want to access. Retrieve this by calling /api/projects/. -- **response_format** (`string`, optional) Specify the format of the response. Accepted values are 'json' or 'txt'. -- **results_per_page** (`integer`, optional) Specify the number of dashboards to return per page. This controls pagination for the results. -- **start_index_for_results** (`integer`, optional) The starting index for returning the list of dashboards, used for pagination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateDashboard - -
- - -Create a new dashboard for a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The ID of the project for which you want to create the dashboard. Retrieve this ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **output_format** (`string`, optional) Specify the format of the dashboard creation response. Options are 'json' or 'txt'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListDashboardCollaborators - -
- - -Retrieve the list of collaborators for a dashboard. - -**Parameters** - -- **dashboard_identifier** (`integer`, required) The integer ID of the dashboard for which to retrieve the list of collaborators. This ID is unique for each dashboard. -- **project_id** (`string`, required) The unique ID of the Datadog project to access. Retrieve this by calling /api/projects. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateDashboardCollaborator - -
- - -Add a collaborator to a specified dashboard. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_identifier** (`integer`, optional) The unique integer ID of the dashboard to which you want to add a collaborator. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Project ID for accessing the project. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteCollaboratorFromDashboard - -
- - -Remove a collaborator from a specific dashboard. - -**Parameters** - -- **dashboard_id** (`integer`, required) The unique identifier for the dashboard from which you want to remove the collaborator. It's required to specify which dashboard the action pertains to. -- **project_id** (`string`, required) The ID of the project for accessing the dashboard. Obtainable via /api/projects/. -- **user_uuid** (`string`, required) The unique identifier of the user to be removed from the dashboard. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListDashboardShares - -
- - -Retrieve information about how dashboards are shared. - -**Parameters** - -- **dashboard_identifier** (`integer`, required) The unique integer identifier for the dashboard whose sharing information is being requested. -- **project_identifier** (`string`, required) The ID of the project to access. Obtain this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.SetDashboardSharingPassword - -
- - -Create a new password for dashboard sharing configuration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_identifier** (`integer`, optional) The identifier for the dashboard you want to configure with sharing passwords. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to access. To retrieve this ID, use the endpoint /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveDashboardSharingPassword - -
- - -Remove a password from a dashboard's sharing configuration. - -**Parameters** - -- **dashboard_identifier** (`integer`, required) The unique identifier for the dashboard from which the password should be deleted. This is an integer value. -- **password_identifier** (`string`, required) The unique identifier of the password to delete from the sharing configuration. -- **project_id** (`string`, required) The unique identifier for the project you're trying to access. Obtain this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RefreshDashboardSharingLink - -
- - -Refresh the sharing link for a specific dashboard. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_identification_number** (`integer`, optional) An integer representing the specific dashboard to refresh the sharing link for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project. Retrieve it via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetDashboardDetails - -
- - -Retrieve details of a specific dashboard. - -**Parameters** - -- **dashboard_id** (`integer`, required) A unique integer value identifying the specific dashboard to retrieve details for. -- **project_id** (`string`, required) Project ID to specify which project to access. Obtain from /api/projects/. -- **response_format** (`string`, optional) The format in which the dashboard details should be returned. Accepted values are 'json' or 'txt'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateDashboard - -
- - -Update a specific Datadog dashboard. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_id** (`integer`, optional) A unique integer value identifying the specific Datadog dashboard to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The Project ID to access the relevant dashboard. Use the '/api/projects/' endpoint to retrieve the ID if necessary. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format for the response, either 'json' or 'txt'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateDashboardPartial - -
- - -Partially update a dashboard's details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_id** (`integer`, optional) A unique integer identifying the dashboard to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you're trying to access. Use an API call to /api/projects/ to find it. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Defines the format of the response returned by the API. Options are 'json' or 'txt'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveDashboard - -
- - -Request the deletion of a specified dashboard. - -**Parameters** - -- **dashboard_id** (`integer`, required) A unique integer identifying the dashboard to delete. Specify the ID for the target dashboard. -- **project_identifier** (`string`, required) The unique ID of the project for accessing its dashboards. Retrieve it via /api/projects/. -- **response_format** (`string`, optional) Specify the format of the response. Options are 'json' or 'txt'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateDashboardTilePosition - -
- - -Repositions a tile on a Datadog dashboard. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dashboard_id** (`integer`, optional) A unique integer value identifying the specific dashboard to update the tile position. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Obtainable via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the desired format of the response. Choose between 'json' or 'txt'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveDashboardTiles - -
- - -Stream metadata and tiles of a dashboard. - -**Parameters** - -- **dashboard_id** (`integer`, required) A unique integer identifying the dashboard to stream metadata and tiles from. -- **project_id** (`string`, required) The ID of the project to access. Obtainable via a call to /api/projects/. -- **response_format** (`string`, optional) Specify the format of the streamed data. Options include 'json' and 'txt'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateDashboardFromTemplate - -
- - -Create a dashboard from a template JSON. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project to access. Use /api/projects/ to find it. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format for the response. Options are 'json' or 'txt'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchDataColorThemes - -
- - -Retrieve a list of data color themes for a project. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier of the project to access color themes. Retrieve the ID via /api/projects/. -- **results_per_page** (`integer`, optional) Specifies the number of data color themes to return per page. -- **starting_index** (`integer`, optional) The initial index from which to start returning the results for data color themes. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.AddDataColorTheme - -
- - -Create a new data color theme for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier of the project for which you want to create a data color theme. Retrieve this ID with a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveDataColorTheme - -
- - -Retrieve details of a specific data color theme. - -**Parameters** - -- **data_color_theme_id** (`integer`, required) A unique integer value identifying the specific data color theme to retrieve. -- **project_identifier** (`string`, required) The unique ID of the project to access. Use /api/projects/ to find this ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateDataColorTheme - -
- - -Update the color theme for a specific project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **color_theme_id** (`integer`, optional) A unique integer identifying the data color theme to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project you want to access. Retrieve the ID by querying /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyDataTheme - -
- - -Update a specific data color theme for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **theme_id** (`integer`, optional) A unique integer value identifying the data color theme to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to access. Use /api/projects/ to find the ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteDataColorTheme - -
- - -Delete a data color theme from a project. - -**Parameters** - -- **data_color_theme_id** (`integer`, required) A unique integer identifying the data color theme to delete. -- **project_id** (`string`, required) The ID of the project containing the data color theme to delete. Retrieve this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListProjectDatasetItems - -
- - -Retrieve dataset items for a specific project in Datadog. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the project whose dataset items you want to retrieve. Obtainable via /api/projects/. -- **filter_by_dataset_id** (`string`, optional) A string representing the dataset ID to filter the results by. -- **results_per_page** (`integer`, optional) Specify the number of dataset items to return per page. -- **start_index** (`integer`, optional) The initial index from which to return the dataset items, used for pagination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateDatasetItem - -
- - -Create a new dataset item in a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) Project ID for the target project. Obtain by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveDatasetItem - -
- - -Retrieve details of a specific dataset item. - -**Parameters** - -- **dataset_item_id** (`string`, required) The UUID identifying the specific dataset item to retrieve. -- **project_id** (`string`, required) The ID of the project to access. Use '/api/projects/' to find this ID if needed. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateDatasetItem - -
- - -Update an existing dataset item with new information. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dataset_item_id** (`string`, optional) A UUID string identifying the dataset item to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Project ID of the project to access. You can find this ID by making a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyDatasetItem - -
- - -Update specific details of a dataset item. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dataset_item_uuid** (`string`, optional) A UUID string identifying the dataset item to be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project where the dataset item is located. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.SetDatasetItemDeleted - -
- - -Mark a dataset item as deleted in a project. - -**Parameters** - -- **dataset_item_uuid** (`string`, required) A UUID string identifying the specific dataset item to mark as deleted. -- **project_identifier** (`string`, required) ID of the project to access. To find this, call /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListDatasets - -
- - -Retrieve a list of datasets for a specific project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access datasets for. Use /api/projects/ to find this ID. -- **dataset_ids** (`array[string]`, optional) A list of dataset IDs. Can include multiple IDs separated by commas. -- **initial_result_index** (`integer`, optional) The initial index from which to return the results. -- **order_datasets_by** (`array[string]`, optional) Specify the order of dataset results. Options: 'created_at', '-created_at', 'updated_at', '-updated_at'. -- **results_per_page** (`integer`, optional) Specify the number of results returned per page. This determines how many datasets are retrieved in one API call. -- **search_query** (`string`, optional) Search within dataset name, description, or metadata using a keyword or phrase. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateDatasetProject - -
- - -Create a new dataset within a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project where the dataset will be created. Obtainable via the /api/projects/ call. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveDatasetInfo - -
- - -Retrieve details of a specific dataset in a project. - -**Parameters** - -- **dataset_identifier** (`string`, required) A UUID string identifying the specific dataset to retrieve. -- **project_identifier** (`string`, required) The ID of the project to access. Use /api/projects/ to retrieve project IDs. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateDataset - -
- - -Update a specific dataset within a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dataset_identifier** (`string`, optional) A UUID string identifying the dataset to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateDatasetInfo - -
- - -Update specific dataset information in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dataset_uuid** (`string`, optional) A UUID string that uniquely identifies the dataset to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to be accessed. Retrieve using a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteDatasetById - -
- - -Facilitates marking a dataset as deleted in a project. - -**Parameters** - -- **dataset_uuid** (`string`, required) A UUID string that uniquely identifies the dataset to be marked as deleted within the project. -- **project_identifier** (`string`, required) Provide the Project ID for accessing the desired project. Use the /api/projects/ endpoint to locate the ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetEarlyAccessFeatures - -
- - -Retrieve a list of early access features for a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to retrieve early access features for. Obtainable via /api/projects/. -- **number_of_results_per_page** (`integer`, optional) Specify the number of results to return per page for early access features. -- **result_start_index** (`integer`, optional) The initial index from which to return the results when paginating through early access features. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEarlyAccessFeatureTracking - -
- - -Create tracking for early access feature views. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) Project ID to access specific project features. Retrieve this ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEarlyAccessFeature - -
- - -Retrieve information about an early access feature. - -**Parameters** - -- **feature_uuid** (`string`, required) A UUID string identifying the early access feature to retrieve. -- **project_identifier** (`string`, required) The unique ID of the project you want to access. Retrieve this by calling the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyEarlyAccessFeature - -
- - -Update early access feature for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **early_access_feature_id** (`string`, optional) A UUID string identifying the early access feature to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The unique identifier for the project. Fetch it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEarlyAccessFeature - -
- - -Update an early access feature for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **early_access_feature_id** (`string`, optional) A UUID string identifying the specific early access feature. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to access. Retrieve this from the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveEarlyAccessFeature - -
- - -Remove an early access feature from a project. - -**Parameters** - -- **early_access_feature_id** (`string`, required) A UUID string that identifies the specific early access feature to be removed. -- **project_id_for_removal** (`string`, required) Project ID to identify the project for accessing or removing the early access feature. Use the /api/projects/ endpoint to find this ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePosthogEndpointRun - -
- - -Retrieve details of a specific Datadog endpoint run. - -**Parameters** - -- **endpoint_name** (`string`, required) The name of the Datadog endpoint to retrieve details for. This specifies which endpoint's run details you want to access. -- **project_identifier** (`string`, required) The ID of the project to access. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEndpoint - -
- - -Update an existing endpoint run in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **endpoint_name** (`string`, optional) The name of the endpoint to be updated. This is a required string parameter. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Project ID to access the specific project. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchRecentExecutionTimes - -
- - -Fetch the last 6 months of execution times for endpoints. - -**Parameters** - -- **endpoint_names** (`array[string]`, required) An array of endpoint names to retrieve execution times for, within the specified project. -- **project_id** (`string`, required) The Project ID you want to access. Retrieve it using /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListProjectEnvironments - -
- - -Get a list of environments for a specific project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique identifier for the project whose environments you want to list. Retrieve this by calling `/api/projects/`. -- **initial_result_index** (`integer`, optional) The initial index from which to return the results, used to paginate. -- **results_per_page** (`integer`, optional) The number of environments to return on each page of results. Specify an integer value. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateProjectEnvironment - -
- - -Create a new environment for a specific project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project to access. Retrieve it by calling `/api/projects/`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetProjectEnvironmentDetails - -
- - -Retrieve details of a specific environment within a project. - -**Parameters** - -- **environment_id** (`integer`, required) Unique integer identifying the environment (or team) to retrieve details for. -- **project_identifier** (`string`, required) Project ID to access specific project details. Retrieve this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.EditProjectEnvironment - -
- - -Update environment settings for a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **environment_identifier** (`integer`, optional) A unique integer identifying the environment (aka team) for modification. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) String ID of the project to access. Obtain ID via /api/projects/ call. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyProjectEnvironment - -
- - -Update a specific environment of a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **environment_identifier** (`integer`, optional) A unique integer identifying the environment or team to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project you want to access. Use /api/projects/ to find the Project ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteEnvironment - -
- - -Delete a specific environment from a project. - -**Parameters** - -- **environment_id** (`integer`, required) A unique integer identifying the environment to delete. -- **project_identifier** (`string`, required) The ID of the project you're trying to access. Find this by calling the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetEnvironmentActivity - -
- - -Retrieve project environment activity details. - -**Parameters** - -- **environment_id** (`integer`, required) A unique integer identifying the environment (aka team). -- **project_identifier** (`string`, required) The unique identifier for the project you wish to access. Obtainable by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateProjectEnvironment - -
- - -Update product intent for a project environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **environment_identifier** (`integer`, optional) A unique integer that identifies the environment or team. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to be accessed. Obtainable via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CompleteProjectOnboarding - -
- - -Mark a project's product onboarding as complete in an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **environment_id** (`integer`, optional) A unique integer value identifying this environment (aka team). Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to access. Retrieve this by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveDefaultEvaluationTags - -
- - -Retrieve default evaluation tags for a project environment. - -**Parameters** - -- **environment_id** (`integer`, required) A unique integer value identifying the environment or team for tag retrieval. -- **project_id** (`string`, required) The unique identifier for the project. Retrieve the ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateDefaultEvaluationTags - -
- - -Manage default evaluation tags for a team environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **environment_id** (`integer`, optional) A unique integer value identifying the environment (team) for which to manage evaluation tags. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project you want to access for managing evaluation tags. Retrieve using /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteDefaultEvaluationTags - -
- - -Delete default evaluation tags for a project environment. - -**Parameters** - -- **environment_identifier** (`integer`, required) A unique integer identifying the environment (or team) for tag management. -- **project_id** (`string`, required) The unique ID of the project to access. Find this ID through a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteEnvSecretTokenBackup - -
- - -Deletes a secret token backup in a project environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **environment_id** (`integer`, optional) A unique integer identifying the environment (aka team) to target for deletion. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The Project ID to access for managing secret token backups. Retrieve IDs via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetProjectEventRestrictions - -
- - -Retrieve event ingestion restrictions for a project environment. - -**Parameters** - -- **environment_identifier** (`integer`, required) A unique integer identifying the environment (team) for which to retrieve event restrictions. -- **project_identifier** (`string`, required) The ID of the project to access. Retrieve it via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DemoDataStatus - -
- - -Check if an environment is generating demo data. - -**Parameters** - -- **environment_id** (`integer`, required) A unique integer value identifying the environment (aka team) for which you want to check demo data status. -- **project_identifier** (`string`, required) The unique ID of the project to access. Retrieve ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ResetProjectEnvironmentToken - -
- - -Resets the token for a specified project environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **environment_identifier** (`integer`, optional) A unique integer value identifying the environment or team. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RotateEnvironmentSecretToken - -
- - -Rotate the secret token for a project environment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **environment_id** (`integer`, optional) A unique integer identifying the environment or team to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Project ID for the environment. Obtainable by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEventDefinitions - -
- - -Retrieve event definitions for a specified project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access event definitions. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEventDefinition - -
- - -Retrieve details of a specific event definition by ID. - -**Parameters** - -- **event_definition_id** (`string`, required) A UUID string identifying the specific event definition to retrieve. -- **project_id** (`string`, required) The ID of the project to access. Find this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateEventDefinition - -
- - -Update an existing event definition in a project. - -**Parameters** - -- **event_definition_id** (`string`, required) A UUID string identifying the event definition to update. -- **project_id** (`string`, required) Project ID of the project you're trying to access. Retrieve the ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyEventDefinition - -
- - -Update an event definition in a project. - -**Parameters** - -- **event_definition_uuid** (`string`, required) A UUID string identifying the event definition to be updated. -- **project_identifier** (`string`, required) Project ID to access the specific project in Datadog. Obtain by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteEventDefinition - -
- - -Delete an event definition by ID and project. - -**Parameters** - -- **event_definition_id** (`string`, required) A UUID string that uniquely identifies the event definition to be deleted. -- **project_identifier** (`string`, required) Project ID of the target project. Retrieve this ID via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEventDefinitionMetrics - -
- - -Retrieve metrics for a specific event definition. - -**Parameters** - -- **event_definition_id** (`string`, required) A UUID string identifying the specific event definition. -- **project_identifier** (`string`, required) The unique ID of the project to access. Retrieve this via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEventDetails - -
- - -Retrieve details of a specific event. - -**Parameters** - -- **event_id** (`string`, required) The unique identifier for the event you want to retrieve details about. -- **project_identifier** (`string`, required) The ID of the project to access. Obtain it with a call to /api/projects/. -- **response_format** (`string`, optional) Specifies the format of the response data. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveEventValues - -
- - -Retrieve event values for a specified project. - -**Parameters** - -- **project_id** (`string`, required) Project ID to access specific event data. Obtain by calling /api/projects/. -- **output_format** (`string`, optional) Specifies the format of the retrieved event values. Acceptable values are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetExperimentHoldouts - -
- - -Retrieve the list of experiment holdouts for a project. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier of the project for which you want to retrieve experiment holdouts. Obtain this ID by calling the `/api/projects/` endpoint. -- **initial_index** (`integer`, optional) The initial index from which to return the results. Used for pagination in retrieving experiment holdouts. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page for the query. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateExperimentHoldout - -
- - -Create a new experiment holdout within a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier for the project you want to access. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetExperimentHoldout - -
- - -Retrieve details of a specific experiment holdout from a project. - -**Parameters** - -- **experiment_holdout_id** (`integer`, required) A unique integer value identifying the specific experiment holdout. -- **project_identifier** (`string`, required) The ID of the project you want to access. Retrieve this ID using a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateExperimentHoldout - -
- - -Update an experiment holdout in a specific project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **experiment_holdout_id** (`integer`, optional) Unique integer identifying the specific experiment holdout to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access for updating the experiment holdout. Retrieve this by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyExperimentHoldout - -
- - -Update the details of an experiment holdout. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **experiment_holdout_id** (`integer`, optional) The unique integer identifier for the experiment holdout you wish to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **target_project_id** (`string`, optional) Specify the ID of the project you want to access. Retrieve the ID using /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteExperimentHoldout - -
- - -Delete an experiment holdout from a project. - -**Parameters** - -- **experiment_holdout_id** (`integer`, required) A unique integer identifying the experiment holdout to be deleted. -- **project_id** (`string`, required) The ID of the project from which to delete the experiment holdout. Obtainable via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListExperimentSavedMetrics - -
- - -Retrieve saved metrics for an experiment in a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Obtain the ID by calling /api/projects/. -- **initial_result_index** (`integer`, optional) The starting index for returning results, used for pagination. -- **results_per_page** (`integer`, optional) Specify the number of metric results to return per page. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateExperimentSavedMetrics - -
- - -Create and save metrics for an experiment in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project for which you want to create and save experiment metrics. Obtain from /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveExperimentMetrics - -
- - -Retrieve saved experiment metrics from a project. - -**Parameters** - -- **experiment_metric_id** (`integer`, required) A unique integer value identifying the experiment's saved metric to retrieve. -- **project_identifier** (`string`, required) The ID of the project for which you want to retrieve saved experiment metrics. Obtain this by making a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateExperimentSavedMetrics - -
- - -Update saved metrics for a specific experiment in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **experiment_metric_id** (`integer`, optional) A unique integer identifying the specific experiment saved metric to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the Datadog project containing the experiment whose metrics you wish to update. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateExperimentMetrics - -
- - -Update saved metrics for a specific experiment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **experiment_metric_id** (`integer`, optional) A unique integer identifying the experiment saved metric to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to access. Obtain it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteSavedMetric - -
- - -Deletes a saved experimental metric. - -**Parameters** - -- **experiment_metric_id** (`integer`, required) A unique integer identifying the experiment saved metric to delete. -- **project_id** (`string`, required) The ID of the project containing the saved metric to delete. Obtainable via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListPosthogExperiments - -
- - -Retrieve a list of experiments from a Datadog project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the Datadog project to access. Obtainable via a call to /api/projects/. -- **page_result_limit** (`integer`, optional) The number of experiment results to return per page. Specify as an integer. -- **start_index** (`integer`, optional) The index from which to start returning results. Used for pagination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateExperimentInProject - -
- - -Create a new experiment within a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id_for_experiment_creation** (`string`, optional) The ID of the project where the experiment will be created. Obtain this by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetProjectExperimentDetails - -
- - -Retrieve details of a specific experiment within a project. - -**Parameters** - -- **experiment_id** (`integer`, required) A unique integer identifying the experiment to retrieve details for. -- **project_id** (`string`, required) The ID of the project to access. Use /api/projects/ to find the ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateExperiment - -
- - -Update details of a specific experiment in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **experiment_id** (`integer`, optional) A unique integer that identifies the experiment to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique string ID of the project to be accessed. Retrieve by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateExperimentDetails - -
- - -Partially update experiment details in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **experiment_id** (`integer`, optional) A unique integer value identifying the experiment to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Provide the ID of the project you want to access. Use the /api/projects/ endpoint to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteExperiment - -
- - -Delete an experiment by setting it as deleted. - -**Parameters** - -- **experiment_id** (`integer`, required) A unique integer value used to identify the experiment to be marked as deleted. -- **project_id** (`string`, required) The unique ID of the project containing the experiment to be deleted. Obtainable via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateExposureCohortForExperiment - -
- - -Create an exposure cohort for an experiment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **experiment_id** (`integer`, optional) A unique integer used to identify the specific experiment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique identifier for the project you're accessing. Obtain this via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DuplicateExperimentPosthog - -
- - -Create a duplicate of a specific experiment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **experiment_id** (`integer`, optional) Unique integer to identify the experiment to duplicate. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project you want to access in Datadog. Obtain this by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateExperimentTimeseriesRecalculation - -
- - -Initiate recalculation of experiment timeseries data. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **experiment_id** (`integer`, optional) A unique integer value identifying this experiment for recalculation. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique identifier of the project you want to access for the recalculation. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveExperimentTimeseries - -
- - -Retrieve timeseries data for an experiment-metric pair. - -**Parameters** - -- **experiment_id** (`integer`, required) A unique integer identifying the experiment to retrieve timeseries data for. -- **project_id** (`string`, required) The unique identifier for the project to access. Retrieve the ID with a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListExperimentsEligibleFeatureFlags - -
- - -Retrieve feature flags eligible for experiments. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the project to access. Use /api/projects/ to find this ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveExperimentsFlagStatus - -
- - -Retrieve status of experiments requiring flag implementation. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access for flag implementation status retrieval. Obtain using /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListProjectExports - -
- - -Retrieve a list of exports for a given project ID. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access exports for. Use /api/projects/ to find the project ID. -- **results_per_page** (`integer`, optional) Number of results to return per page for export details. -- **start_index** (`integer`, optional) The initial index to start returning results from. Use this to paginate results. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateExports - -
- - -Initiate the export process for Datadog projects. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier of the Datadog project to initiate exports. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveProjectExport - -
- - -Retrieve data of a specific project export. - -**Parameters** - -- **export_id** (`integer`, required) Unique integer to identify the exported asset. -- **project_id** (`string`, required) The ID of the project to access. Use /api/projects/ to find the project ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveExportedContent - -
- - -Retrieve exported content from a specific project. - -**Parameters** - -- **exported_asset_id** (`integer`, required) A unique integer identifying the exported asset. -- **project_identifier** (`string`, required) The ID of the project you want to access. Use /api/projects/ to find the project ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListFeatureFlags - -
- - -Retrieve feature flags for a specified project. - -**Parameters** - -- **project_identifier** (`string`, required) The identifier for the project to access feature flags. Retrieve using /api/projects/. -- **exclude_feature_flag_keys** (`string`, optional) A JSON-encoded list of feature flag keys to exclude from the results. Useful for filtering. -- **feature_flag_search_term** (`string`, optional) Search for a feature flag by its key or name, case insensitive. -- **filter_by_active_status** (`string`, optional) Filter feature flags by active status. Use 'STALE', 'false', or 'true'. -- **filter_by_evaluation_runtime** (`string`, optional) Filter feature flags by their evaluation runtime. Options: 'both', 'client', 'server'. -- **filter_by_tags** (`string`, optional) A JSON-encoded list of tag names to filter feature flags by. Use this to specify which tags should be included in the results. -- **flag_type** (`string`, optional) Specifies the feature flag type to filter results. Options are 'boolean', 'experiment', or 'multivariant'. -- **initial_creator_user_id** (`string`, optional) The User ID that initially created the feature flag. It helps filter feature flags created by a specific user. -- **results_offset_index** (`integer`, optional) The starting index for the results to be returned. -- **results_per_page** (`integer`, optional) Specify the number of feature flags to return for each page of results. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateFeatureFlag - -
- - -Create a new feature flag in a specific project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_unique_identifier** (`string`, optional) The unique identifier for the project to access. Retrieve it by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveFeatureFlags - -
- - -Retrieve details of a specific feature flag. - -**Parameters** - -- **feature_flag_identifier** (`integer`, required) The unique integer ID that identifies the specific feature flag to retrieve. -- **project_id** (`string`, required) ID of the project to access. Retrieve by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyFeatureFlags - -
- - -Update existing feature flags in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **feature_flag_id** (`integer`, optional) A unique integer identifying the feature flag to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to access. Retrieve it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateFeatureFlags - -
- - -Update feature flags for a specific project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **feature_flag_id** (`integer`, optional) A unique integer value identifying the specific feature flag to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique identifier for the project to access. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.MarkFeatureFlagDeleted - -
- - -Mark a feature flag as deleted. - -**Parameters** - -- **feature_flag_id** (`integer`, required) A unique integer value used to identify the feature flag. -- **project_identifier** (`string`, required) Project ID to access a specific project. Retrieve by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveFeatureFlagActivity - -
- - -Retrieve activity details for a specific feature flag. - -**Parameters** - -- **feature_flag_id** (`integer`, required) A unique integer identifying the feature flag to retrieve activity for. -- **project_identifier** (`string`, required) Unique identifier for the project to access. Obtain from the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateStaticCohortForFeatureFlag - -
- - -Create a static cohort for a specific feature flag. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **feature_flag_id** (`integer`, optional) A unique integer value identifying the specific feature flag to create a static cohort for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access for creating a static cohort for the feature flag. Retrieve via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateFeatureFlagsDashboard - -
- - -Create a dashboard for feature flags in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **feature_flag_id** (`integer`, optional) A unique integer value identifying this feature flag for creation or modification. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to access. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateFeatureFlagUsageDashboard - -
- - -Create or manage feature flag usage dashboards. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **feature_flag_id** (`integer`, optional) A unique integer identifying this feature flag for the usage dashboard. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to access. Retrieve it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveFeatureFlagConfig - -
- - -Retrieve remote configuration of a specific feature flag. - -**Parameters** - -- **feature_flag_identifier** (`integer`, required) The unique integer that identifies the specific feature flag to retrieve. -- **project_identifier** (`string`, required) The ID of the project to access. Use /api/projects/ to find the ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveFeatureFlagStatus - -
- - -Retrieve the status of a specific feature flag for a project. - -**Parameters** - -- **feature_flag_id** (`integer`, required) A unique integer identifying the feature flag whose status you want to retrieve. -- **project_identifier** (`string`, required) Project ID to access a specific project. Obtain by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveFeatureFlagsActivity - -
- - -Retrieve feature flags activity for a specific project. - -**Parameters** - -- **project_identifier** (`string`, required) Unique identifier for the project to retrieve feature flags activity. Obtainable via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetFeatureFlagKeys - -
- - -Retrieve feature flag keys using a list of IDs. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project to access. Obtain the ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveFeatureFlagsEvaluationReasons - -
- - -Retrieve evaluation reasons for feature flags by project. - -**Parameters** - -- **project_id_for_feature_flags** (`string`, required) The ID of the project to access for retrieving feature flags evaluation reasons. Obtainable via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveLocalFeatureFlags - -
- - -Retrieve feature flags for local evaluation in a project. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access feature flags for. Retrieve this ID via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetFeatureFlags - -
- - -Retrieve current feature flags for a user's project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access feature flags for. Make a call to /api/projects/ to find the project's ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateFeatureFlagBlastRadius - -
- - -Create a feature flag blast radius for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **feature_flag_project_id** (`string`, optional) The Project ID for accessing the desired project. Obtainable via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListFileSystems - -
- - -Fetches the list of file systems for a given project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project for which you want to list file systems. Obtain by calling /api/projects/. -- **results_per_page** (`integer`, optional) Number of results to return per page for file system listings. -- **search_term** (`string`, optional) A search term to filter the list of file systems. -- **start_index** (`integer`, optional) The initial index from which to return the file system results. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateProjectFileSystem - -
- - -Create a file system for a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project for which you want to create a file system. Retrieve this ID by calling `/api/projects/`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveFileSystemInfo - -
- - -Retrieve detailed file system information for a project. - -**Parameters** - -- **file_system_id** (`string`, required) A UUID string identifying the file system to retrieve details for. -- **project_id** (`string`, required) The ID of the project to access. Get this ID by calling the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateFileSystem - -
- - -Updates a file system in a specific project by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **file_system_id** (`string`, optional) A UUID string uniquely identifying the file system to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The identifier for the project you want to access. Use the project ID to specify which project's file system to update. Retrieve the ID by calling the /api/projects/ endpoint if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyFileSystem - -
- - -Update specific details of a file system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **file_system_id** (`string`, optional) A UUID string used to identify the specific file system to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The unique ID of the project. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteFileSystem - -
- - -Delete a specified file system in a project. - -**Parameters** - -- **file_system_id** (`string`, required) A UUID string identifying the file system to delete. -- **project_id** (`string`, required) Provide the Project ID of the project you're trying to access. Retrieve the ID with a /api/projects/ call. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchFolderFileCount - -
- - -Get the count of all files in a folder. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **file_system_uuid** (`string`, optional) A UUID string that uniquely identifies the file system for which you want to get the file count. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Project ID to access the project for counting files. Obtain via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateFileSystemLink - -
- - -Create a link for a file system in a specific project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **file_system_id** (`string`, optional) A UUID string that uniquely identifies the file system. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to access. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.MoveFileSystemEntry - -
- - -Moves a file system entry to a new location within the project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **file_system_id** (`string`, optional) A UUID string identifying the file system to be moved within the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **target_project_id** (`string`, optional) The Project ID of the target project where the file system entry will be moved. Obtain this ID from the /api/projects/ endpoint if necessary. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchFileCountByPath - -
- - -Retrieve the count of files in a specified folder. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The ID of the project to access. Retrieve by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateFileSystemLogView - -
- - -Create a new file system log view for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **target_project_id** (`string`, optional) The ID of the project for which you want to create a file system log view. Use the API to retrieve the project ID if unknown. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveUnfiledFiles - -
- - -Retrieve unfiled files for a specific project. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the project whose unfiled files you want to retrieve. Make a call to /api/projects/ to find this ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetFileShortcuts - -
- - -Retrieve a list of file system shortcuts for a given project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access file system shortcuts. Obtain this ID via /api/projects/. -- **initial_result_index** (`integer`, optional) The zero-based index from which to start returning results. Use to manage pagination. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page when retrieving file system shortcuts. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FileSystemShortcutCreate - -
- - -Create a file system shortcut in a specific project. - -**Parameters** - -- **file_system_shortcut_path** (`string`, required) The file path where the shortcut will be created. It should be a valid string path within the project. -- **project_id** (`string`, required) The ID of the project to access. Retrieve project IDs by calling /api/projects/. -- **shortcut_creation_timestamp** (`string`, required) The timestamp when the shortcut was created, in string format. Typically, in ISO 8601 format. -- **shortcut_id** (`string`, required) A unique identifier for the file system shortcut being created. -- **reference_id** (`string`, optional) A unique reference string for the shortcut. This identifies the shortcut within the project. -- **shortcut_type** (`string`, optional) Specifies the type of file system shortcut to be created. Accepted values could include types like 'link', 'alias', or 'junction'. -- **shortcut_url** (`string`, optional) The URL reference for the file system shortcut to be created. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetFileSystemShortcut - -
- - -Retrieve details of a file system shortcut. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Use the /api/projects/ endpoint to find the ID if needed. -- **shortcut_id** (`string`, required) A UUID string to identify the file system shortcut to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyFileSystemShortcut - -
- - -Update a file system shortcut in a specified project. - -**Parameters** - -- **creation_timestamp** (`string`, required) A string representing the creation date and time of the shortcut. Format: ISO 8601 (e.g., '2021-09-15T13:45:30Z'). -- **file_system_path** (`string`, required) The file system path of the shortcut to be updated. Provide the exact path within the project. -- **file_system_shortcut_id** (`string`, required) The UUID string identifying the file system shortcut to be updated. -- **project_id** (`string`, required) The unique ID of the project you want to update the file system shortcut for. Retrieve this ID by calling /api/projects/. -- **shortcut_id** (`string`, required) The unique identifier for the file system shortcut to be updated. -- **file_system_shortcut_href** (`string`, optional) The URL of the file system shortcut to be updated. It specifies the link to the resource. -- **reference_identifier** (`string`, optional) A unique string identifier for the file system shortcut to be updated. This is used to specify which shortcut you are modifying. -- **shortcut_type** (`string`, optional) Specifies the type of the file system shortcut to update. Accepted values may vary based on use case. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateFileSystemShortcut - -
- - -Update a file system shortcut in a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you want to access. Retrieve it by calling /api/projects/. -- **file_system_shortcut_id** (`string`, optional) A UUID identifying the file system shortcut to be updated. -- **file_system_shortcut_link** (`string`, optional) The URL or path to link the file system shortcut to. This should be a valid URL or path, depending on the system configuration. -- **reference_identifier** (`string`, optional) The reference identifier for the file system shortcut to be updated. This is a string value required to specify which shortcut you are targeting for the update. -- **shortcut_creation_date** (`string`, optional) ISO 8601 format string representing when the shortcut was created. -- **shortcut_id** (`string`, optional) The unique identifier for the file system shortcut to be updated. This ID specifies which shortcut will have its details modified. -- **shortcut_path** (`string`, optional) The file path for the shortcut to be updated. This should specify the exact location within the file system where the shortcut is located. -- **shortcut_type** (`string`, optional) Specify the type of the file system shortcut, such as 'symbolic' or 'hard'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveFileSystemShortcut - -
- - -Delete a file system shortcut from a project. - -**Parameters** - -- **file_system_shortcut_uuid** (`string`, required) A UUID string identifying the file system shortcut to delete. -- **project_identifier** (`string`, required) The Project ID to access. Retrieve it by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetFeatureFlagValues - -
- - -Retrieve possible values for a feature flag. - -**Parameters** - -- **project_id** (`string`, required) The unique ID of the project to access. Obtain this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListGroupsByType - -
- - -Retrieve all groups for a specified group type. - -**Parameters** - -- **group_type_to_list** (`integer`, required) Specify the type of the group to retrieve by providing the index. -- **project_id** (`string`, required) Project ID of the target project. It can be found by calling /api/projects/. -- **search_group_name** (`string`, required) Search for a group by its name. Provide keywords or partial names to filter the group list. -- **pagination_cursor_value** (`string`, optional) Provide the pagination cursor value to navigate through paginated results. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateProjectGroup - -
- - -Create a new group in a specified project. - -**Parameters** - -- **group_identifier_key** (`string`, required) A unique string identifier for the new group being created within a project. This key should be distinct to avoid conflicts with existing groups. -- **group_type_identifier** (`integer`, required) An integer specifying the type of group to create within the project. -- **project_identifier** (`string`, required) The ID of the project where the new group will be created. Use /api/projects/ to find the ID. -- **group_properties** (`string`, optional) Specify the properties of the group you want to create. Provide this as a JSON string with property keys and values. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveGroupActivity - -
- - -Fetches activity data for specified project groups. - -**Parameters** - -- **group_type_id** (`integer`, required) The numeric identifier for the group type to retrieve activity data. -- **project_identifier** (`string`, required) Project ID to access the specific group activity. Find this ID via the /api/projects/ endpoint. -- **user_id_for_group_retrieval** (`string`, required) Specify the user ID to find associated groups for activity retrieval. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteGroupProperty - -
- - -Delete a group property in a Datadog project. - -**Parameters** - -- **group_identifier_key** (`string`, required) The unique identifier key of the group from which the property will be deleted. This is required to specify the exact group within the project. -- **group_index_type** (`integer`, required) An integer representing the index of the group type to delete a property from. -- **group_key_for_deletion** (`string`, required) The unique key identifying the group from which the property will be deleted. -- **group_type_index** (`integer`, required) An integer specifying the group type to find within a project for property deletion. -- **project_id** (`string`, required) The ID of the Datadog project for accessing and managing group properties. To find this ID, make a call to /api/projects/. -- **property_creation_date** (`string`, required) The timestamp when the group property was created. Use ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ). -- **group_property_key** (`string`, optional) The key of the group property to be deleted from the Datadog project. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveProjectGroups - -
- - -Retrieve group details for a specific project. - -**Parameters** - -- **group_key_to_find** (`string`, required) Specify the key of the group you want to find. This is used to identify the specific group within the project. -- **group_type_index** (`integer`, required) Specify the integer index for the group type you want to find within a project. -- **project_id** (`string`, required) The unique identifier for the project to access group details. Obtainable via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveGroupPropertyDefinitions - -
- - -Retrieve group property definitions for a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveGroupPropertyValues - -
- - -Retrieve property values for groups within a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Obtain it by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveRelatedGroups - -
- - -Retrieve related groups for a specific project in Datadog. - -**Parameters** - -- **group_type_index** (`integer`, required) The index specifying the type of group to find. -- **project_id** (`string`, required) The ID of the project to access. Obtainable via the /api/projects/ endpoint. -- **user_id_to_find_groups** (`string`, required) The ID of the user to find related groups for within a specified project. It should be a string value. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateGroupProperty - -
- - -Update a property of a group within a project. - -**Parameters** - -- **group_identifier** (`string`, required) Specify the unique key of the group to locate and update within the project. -- **group_identifier_key** (`string`, required) The unique key identifying the group to update. This key ensures that the correct group is modified. -- **group_property_creation_date** (`string`, required) The date and time when the group property was created. Use ISO 8601 format, e.g., '2023-10-05T14:48:00Z'. -- **group_type_index** (`integer`, required) Specify the integer index of the group type to identify the group. -- **index_of_group_type** (`integer`, required) An integer representing the index of the group type to update. Specify the correct index to modify the desired group type within the project. -- **project_id** (`string`, required) The unique ID of the project to access. Retrieve it by calling /api/projects/. -- **group_properties_value** (`string`, optional) The properties or attributes to update for the specified group in the project. This should be a string describing the desired changes. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListGroupTypes - -
- - -Retrieve list of group types for a specific project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique identifier for the project you want to access. Obtain this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteGroupType - -
- - -Delete a specified group type in a project. - -**Parameters** - -- **group_type_index** (`integer`, required) Index of the group type to be deleted. Use an integer value to specify the group type. -- **project_id** (`string`, required) The ID of the project you want to access. Obtain this ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetGroupTypeMetrics - -
- - -Retrieve metrics for a specific group type in a project. - -**Parameters** - -- **group_type_index** (`integer`, required) The index of the group type for which to retrieve metrics. This identifies the specific group type within the project. -- **project_identifier** (`string`, required) String representing the Project ID to access the desired project in Datadog. Obtain it through a call to /api/projects/. -- **results_offset** (`integer`, optional) The starting index for returning results, used for pagination. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateGroupTypeMetric - -
- - -Create a new metric for a specific group type. - -**Parameters** - -- **group_type_index** (`integer`, required) An integer representing the index of the group type to which a new metric will be added. -- **group_type_metric_id** (`string`, required) The unique identifier for the metric you wish to create. It should be a string value. -- **metric_filters** (`string`, required) Optional filters to apply when creating the group type metric. It accepts a string of filter criteria to narrow down the data. -- **metric_name** (`string`, required) The name of the metric to be created for the group type. This should be a descriptive and unique identifier that helps distinguish this metric from others. -- **project_id** (`string`, required) Project ID for accessing the specific project. Make a call to /api/projects/ to retrieve available IDs. -- **display_format** (`string`, optional) Specifies how the metric will be displayed: 'number' for a numeric display, or 'sparkline' for a graphical display. -- **interval_in_days** (`integer`, optional) Specify the interval in days for the metric data aggregation. -- **metric_format** (`string`, optional) Specify the format for the metric. Options are 'numeric' or 'currency'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveGroupTypeMetric - -
- - -Retrieve metrics for a specific group type. - -**Parameters** - -- **group_type_index** (`integer`, required) An integer representing the index of the group type to retrieve metrics for. -- **group_usage_metric_id** (`string`, required) A UUID string identifying this group usage metric to retrieve its details. -- **project_id** (`string`, required) The ID of the project to access, retrievable via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateGroupTypeMetrics - -
- - -Updates metrics for a specified group type in a project. - -**Parameters** - -- **filters_criteria** (`string`, required) Specify criteria to filter metrics data. Use a string representation of conditions. -- **group_type_index** (`integer`, required) An integer representing the index of the group type to be updated. This is required to identify which group type's metrics need modification. -- **group_usage_metric_id** (`string`, required) A UUID string identifying the group usage metric to be updated. -- **metric_id** (`string`, required) Unique identifier for the metric to be updated. Expect a string value. -- **metric_name** (`string`, required) The name of the metric to update for the specified group type in a project. -- **project_id** (`string`, required) The ID of the project you want to access. Use /api/projects/ to find it. -- **interval_in_days** (`integer`, optional) Specify the interval in days for updating metrics. -- **metric_display_type** (`string`, optional) Defines how the metrics are displayed. Options are 'number' or 'sparkline'. -- **metric_format_type** (`string`, optional) Specifies the display format of the metric: 'numeric' for numeric values or 'currency' for currency representation. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateMetricsForGroupType - -
- - -Update metrics for a specific group type in a project. - -**Parameters** - -- **group_type_position** (`integer`, required) The index of the group type to update within the metrics. It should be an integer value. -- **project_id** (`string`, required) The unique ID of the project you want to access. Retrieve it by calling /api/projects/. -- **filter_conditions** (`string`, optional) Conditions to filter the metrics. Specify as a string, e.g., 'status:active'. -- **group_metric_name** (`string`, optional) The name of the metric to update for the specified group type. -- **group_type_id** (`string`, optional) The unique identifier for the group type to update metrics for. -- **group_usage_metric_id** (`string`, optional) A UUID string identifying the group usage metric to update. -- **metric_display_type** (`string`, optional) Defines how the metric should be displayed: 'number' or 'sparkline'. -- **metric_format_type** (`string`, optional) Specifies the format of the metric. Can be 'numeric' or 'currency'. Choose 'numeric' for plain numbers and 'currency' for currency representation. -- **update_interval_days** (`integer`, optional) Number of days to set as the interval for updating metrics. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteGroupTypeMetric - -
- - -Delete a specific metric from a group type. - -**Parameters** - -- **group_type_index** (`integer`, required) An integer representing the position of the group type in the list. Specify the exact index to delete the associated metric. -- **metric_uuid** (`string`, required) A UUID string identifying the metric to be deleted from the group type. -- **project_id** (`string`, required) The ID of the project to access. Retrieve it via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateGroupDashboard - -
- - -Update a project's group detail dashboard. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The string representing the Project ID you want to access. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateDefaultGroupColumns - -
- - -Update default columns for group types in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier for the project you want to access. Retrieve it by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateGroupTypeMetadata - -
- - -Updates metadata for group types in a project. - -**Parameters** - -- **project_identifier** (`string`, required) Project ID to access a specific project. Use /api/projects/ to find the ID. -- **default_columns** (`array[string]`, optional) An array of strings representing the default columns for the group type metadata. Each string specifies a column name to be included by default. -- **detail_dashboard_id** (`integer`, optional) The integer ID of the detail dashboard associated with the group type. -- **group_type_creation_date** (`string`, optional) The creation date of the group type in ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ). -- **group_type_identifier** (`string`, optional) The identifier for the group type to update metadata for. Provide a unique string value that represents the group type within the project. -- **group_type_index** (`integer`, optional) An integer representing the index of the group type you want to update within the project. It identifies which specific group type's metadata is to be modified. -- **group_type_name_plural** (`string`, optional) The plural name for the group type to be updated. This should reflect the plural form used in the project metadata. -- **singular_group_name** (`string`, optional) The singular name to be used for a specific group type. This is used for clear identification and communication. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListHogFunctions - -
- - -Retrieve a list of hog functions for a project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique identifier for the project you want to access. Obtain via /api/projects/. -- **created_at** (`string`, optional) Specify the creation date for filtering hog functions. Use ISO 8601 format (YYYY-MM-DD). -- **created_by_user_id** (`integer`, optional) The unique integer ID of the user who created the resource. -- **function_id** (`string`, optional) The unique identifier for the hog function to retrieve details for. -- **hog_function_types** (`array[string]`, optional) A list of hog function types, specified as strings. Supports multiple values. -- **include_only_enabled_functions** (`boolean`, optional) Include only enabled functions. Set to true to include enabled functions, false to include all. -- **result_offset** (`integer`, optional) The starting index for the returned results, used for pagination. -- **results_per_page** (`integer`, optional) Integer specifying the number of results to return per page. -- **search_term** (`string`, optional) A search term used to filter the list of hog functions based on specific criteria. -- **updated_timestamp** (`string`, optional) The timestamp for the latest update of the hog function. Use an ISO 8601 format. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateHogFunction - -
- - -Log a new file system view for a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The unique ID of the project to access. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveProjectHogFunction - -
- - -Retrieve details of a hog function in a project. - -**Parameters** - -- **hog_function_id** (`string`, required) A UUID string identifying the specific hog function to retrieve. -- **project_identifier** (`string`, required) The unique ID of the project you want to access. Retrieve it via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyHogFunctions - -
- - -Update and track file system views for hog functions. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **hog_function_uuid** (`string`, optional) A UUID string to uniquely identify the hog function to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the desired project. Retrieve via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateHogFunctionViews - -
- - -Log and update views for hog functions in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **hog_function_uuid** (`string`, optional) A UUID string identifying the hog function to log a view for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The unique ID of the project. Retrieve by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveHogFunction - -
- - -Marks a HOG function as deleted in a Datadog project. - -**Parameters** - -- **hog_function_id** (`string`, required) A UUID string identifying the HOG function to be marked as deleted. -- **project_id_for_deletion** (`string`, required) The unique identifier of the project where the HOG function resides. Obtain by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.TrackFileSystemView - -
- - -Log and track a file system view on resource access. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **hog_function_uuid** (`string`, optional) A UUID string identifying the hog function to track. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) A string representing the Project ID of the project to access. Retrieve this ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.TrackFsView - -
- - -Logs a view each time a resource is accessed via GET. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **hog_function_uuid** (`string`, optional) A UUID string identifying this hog function. Required for logging views. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you are accessing. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveLogsForFileSystemViews - -
- - -Retrieves logs for tracked file system views. - -**Parameters** - -- **hog_function_uuid** (`string`, required) A UUID string identifying the specific hog function to retrieve logs for. -- **project_identifier** (`string`, required) A string representing the Project ID for access. Call /api/projects/ to find the ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.TrackFileSystemViews - -
- - -Retrieve metrics for tracking file system views. - -**Parameters** - -- **hog_function_id** (`string`, required) A UUID string identifying the specific hog function for tracking views. -- **project_identifier** (`string`, required) The ID of the project to access. Retrieve via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetHogFunctionMetricsTotals - -
- - -Retrieve total metrics for a specified hog function. - -**Parameters** - -- **hog_function_uuid** (`string`, required) A UUID string identifying the specific hog function for which metrics are being retrieved. -- **project_identifier** (`string`, required) Project ID for accessing the specific project. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetHogFunctionIcon - -
- - -Retrieve the icon for hog functions in a specific project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project for which you want to retrieve the hog function icon. Obtain the ID via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveProjectIcons - -
- - -Retrieve and log views of project icons. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project you want to access. Retrieve it using /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateHogfunctionOrder - -
- - -Modify the order of execution for HogFunctions. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) ID of the project to access. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListProjectInsights - -
- - -Retrieve insights list for a specific project. - -**Parameters** - -- **project_id** (`string`, required) Project ID to access specific insights. Obtain it via /api/projects/. -- **creator_user_id** (`integer`, optional) The user ID of the creator of the insights. Provide this as an integer value to filter insights by the creator. -- **insights_refresh_mode** (`string`, optional) Determine how aggressively to refresh insights: 'force_cache', 'blocking', 'async', 'lazy_async', 'force_blocking', or 'force_async'. -- **project_short_id** (`string`, optional) The short identifier for the project within Datadog. Used to specify which project's insights to retrieve. -- **response_format** (`string`, optional) Specifies the format of the response, either 'csv' or 'json'. Choose based on your output preference. -- **results_offset_index** (`integer`, optional) The starting index for returning results from the insights list. -- **results_per_page** (`integer`, optional) Specify the number of insights to return per page. -- **return_basic_metadata_only** (`boolean`, optional) If true, return only basic insight metadata without results for a faster response. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateInsightEntry - -
- - -Logs a new file system view entry for insights. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The ID of the project for which you want to log a file system view. Obtain it using the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format of the response, either 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListInsightSharing - -
- - -Retrieve sharing details for a specific insight. - -**Parameters** - -- **insight_identifier** (`integer`, required) The unique identifier for the specific insight you want to retrieve sharing details for. This is an integer value that uniquely represents an insight within the project. -- **project_id** (`string`, required) The ID of the project to access. Retrieve via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateInsightsSharingPassword - -
- - -Create a new password for insights sharing configuration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **insight_identifier** (`integer`, optional) The numerical ID representing the specific insight to create a password for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project you want to access. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeletePasswordFromSharingConfig - -
- - -Delete a password from the sharing configuration of an insight. - -**Parameters** - -- **insight_identifier** (`integer`, required) The unique integer identifier for the insight from which the password is being deleted. -- **project_identifier** (`string`, required) The ID of the project to access. Retrieve it via the /api/projects endpoint. -- **sharing_password_id** (`string`, required) The unique ID of the password to be deleted from the sharing configuration. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RefreshInsightSharing - -
- - -Refresh the sharing settings of an insight. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **insight_identifier** (`integer`, optional) The unique integer identifier for the insight to refresh sharing settings. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The Project ID to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveInsightData - -
- - -Retrieve tracked insights for project file system views. - -**Parameters** - -- **insight_id** (`integer`, required) A unique integer identifying the specific insight to retrieve. -- **project_id** (`string`, required) Project ID to access. Obtain it by calling /api/projects/. -- **dashboard_context_id** (`integer`, optional) ID of the dashboard for context-specific insight. Filters and date range from this dashboard will be applied. -- **output_format** (`string`, optional) Specifies the format for the retrieved insights data. Options are 'csv' or 'json'. -- **refresh_insight_strategy** (`string`, optional) Defines the strategy for refreshing the insight. Options include 'force_cache', 'blocking', 'async', 'lazy_async', 'force_blocking', and 'force_async', determining sync/async behavior and cache usage. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateInsights - -
- - -Update insights tracking view for a project resource. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **insight_id** (`integer`, optional) A unique integer identifying the insight to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **output_format** (`string`, optional) Specify the format of the response data. Accepts 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateInsightsViewLog - -
- - -Log a new view for a specific insight resource. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **insight_id** (`integer`, optional) A unique integer value to identify the specific insight. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Project ID to access the required insight. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specifies the format of the response. Acceptable values are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteInsight - -
- - -Marks an insight as deleted in a project. - -**Parameters** - -- **insight_id** (`integer`, required) A unique integer identifying the insight to be marked as deleted. -- **project_identifier** (`string`, required) Project ID to access and mark an insight as deleted. Use /api/projects/ to find the ID. -- **response_format** (`string`, optional) Specifies the format of the response data. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetInsightsActivity - -
- - -Retrieve logs of insight views for a project. - -**Parameters** - -- **insight_id** (`integer`, required) A unique integer identifying the specific insight to retrieve logs for. -- **project_id_for_access** (`string`, required) Project ID to access the desired project. Retrieve ID via /api/projects/ if unknown. -- **response_format** (`string`, optional) Specify the format of the response: 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveInsightsActivity - -
- - -Retrieve insights activity logs for a specified project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access insights activity data. Obtain by calling /api/projects/. -- **output_format** (`string`, optional) Specify the format for the output: 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.StopInsightProcess - -
- - -Cancel the ongoing insight creation process for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The unique identifier for the project. Use /api/projects/ to find it. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) The desired format of the response, either 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveRecentlyViewedInsights - -
- - -Retrieve details of the last 5 insights viewed by the user. - -**Parameters** - -- **project_id** (`string`, required) Project ID for accessing the specific project insights. Obtainable via `/api/projects/`. -- **response_format** (`string`, optional) Specify the format of the returned data. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RecordInsightViews - -
- - -Update the view timestamps for specified insights. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project to access. Retrieve the ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specifies the format of the response. Choose between 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListProjectIntegrations - -
- - -Retrieve a list of integrations for a specific project. - -**Parameters** - -- **project_id** (`string`, required) Specify the Project ID to retrieve its associated integrations. You can find this ID by calling /api/projects/. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. -- **starting_index_for_results** (`integer`, optional) The index to start returning results from, used for pagination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateProjectIntegration - -
- - -Creates a new integration for a specific project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier for the project. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetIntegrationDetails - -
- - -Retrieve integration details for a specific project. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer identifying this integration. -- **project_id** (`string`, required) The ID of the project for which integration details are needed. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteIntegration - -
- - -Delete an existing integration for a project. - -**Parameters** - -- **integration_id** (`integer`, required) The unique integer used to identify the specific integration to be deleted. -- **project_id** (`string`, required) The Project ID needed to access the project. Retrieve it by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetIntegrationChannels - -
- - -Retrieve integration channels for a specific project and ID. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer identifying the specific integration in Datadog. -- **project_identifier** (`string`, required) Project identifier for accessing a specific project. Use the /api/projects/ endpoint to find the ID if needed. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetClickupLists - -
- - -Retrieve ClickUp lists for a specific project integration. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer to identify the integration for retrieving ClickUp lists. -- **project_identifier** (`string`, required) The ID of the project to access. Obtain this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveClickupSpaces - -
- - -Retrieve ClickUp spaces for a specific integration. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer identifying the integration to retrieve associated ClickUp spaces. -- **project_id** (`string`, required) The ID of the project to access spaces for. Obtainable via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveClickupWorkspaces - -
- - -Retrieve ClickUp workspaces for a project integration. - -**Parameters** - -- **integration_unique_identifier** (`integer`, required) A unique integer identifying the integration for retrieving ClickUp workspaces. -- **project_id** (`string`, required) Project ID to access specific ClickUp workspaces. Obtain the ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateEmailVerificationIntegration - -
- - -Initiate an email verification integration for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_id** (`integer`, optional) A unique integer identifying the integration to set up email verification for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project for which the email verification integration is to be initiated. Obtain this ID by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchGithubReposForIntegration - -
- - -Retrieve GitHub repositories for a specified integration. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer representing the integration whose associated GitHub repositories will be retrieved. -- **project_identifier** (`string`, required) The ID of the project you wish to access in Datadog. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetGoogleAccessibleAccounts - -
- - -Retrieve accessible Google accounts for integration. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer identifying the specific integration. -- **project_id** (`string`, required) The ID of the project you want to access. Retrieve this ID by making a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveGoogleConversionData - -
- - -Retrieve Google conversion actions for a specific project. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer identifying the integration for which to retrieve Google conversion actions. -- **project_id** (`string`, required) The ID of the project you wish to access. Use this to retrieve specific Google conversion actions. You can find the project ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveLinearTeams - -
- - -Fetch Linear team details for a specific integration. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer identifying the specific integration to retrieve Linear team details. -- **project_identifier** (`string`, required) The ID of the project to access. Obtain it through the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveLinkedinAdsAccounts - -
- - -Retrieve LinkedIn Ads accounts for a project integration. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer identifying the LinkedIn integration for the project. -- **project_id** (`string`, required) Unique ID of the project for accessing LinkedIn Ads accounts. Obtainable by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetLinkedinAdsConversionRules - -
- - -Retrieve LinkedIn Ads conversion rules for a specific project. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer value identifying the LinkedIn integration. -- **project_id** (`string`, required) The ID of the project to access LinkedIn Ads conversion rules. Retrieve via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveTwilioPhoneNumbers - -
- - -Retrieve Twilio phone numbers for a specific integration. - -**Parameters** - -- **integration_id** (`integer`, required) A unique integer value identifying this Twilio integration to retrieve phone numbers for. -- **project_id_for_twilio_integration** (`string`, required) The ID of the project to access Twilio phone numbers. Obtainable via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetIntegrationAuthorization - -
- - -Retrieve integration authorization details for a project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique ID of the project to access integration authorization details. Obtainable via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateChatCompletion - -
- - -Create a chat completion using OpenAI or compatible models. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The unique identifier for the project to access. Retrieve via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format of the chat completion response. Possible values are 'json' or 'txt'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateMessageWithClaude - -
- - -Create a message using Anthropic's Claude models. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The ID of the project you want to access. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **message_format** (`string`, optional) Specify the format of the message. Options are 'json' or 'txt'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveLogAttributes - -
- - -Retrieve log attributes for a specific project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Obtainable via the /api/projects/ endpoint. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateLogQuery - -
- - -Initiate a logs query for a specific project. - -**Parameters** - -- **project_id** (`string`, required) The unique Project ID for accessing the desired project in Datadog. Obtain by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateLogsSparkline - -
- - -Create a sparkline for project logs. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project for which you want to create a sparkline. Retrieve the ID using the /api/projects/ endpoint before using it here. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveLogValues - -
- - -Retrieve log values for a specified project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to retrieve logs from. Obtain the project ID via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListPosthogNotebooks - -
- - -Retrieve a list of notebooks from Datadog. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you want to access notebooks for. Use /api/projects/ to find the ID. -- **filter_by_logged_in_user** (`string`, optional) Provide any value to filter results to notebooks created by the logged-in user. -- **filter_criteria** (`string`, optional) String to filter notebooks. Use colon-separated key-value pairs, separated by space or comma. -- **filter_date_before** (`string`, optional) Filter for notebooks created before this specified date and time. Use ISO 8601 format (e.g., '2023-10-01T15:00:00Z'). -- **filter_from_date** (`string`, optional) Filter for notebooks created after this specific date and time. The date should be provided in an appropriate format, such as ISO 8601. -- **notebook_creator_uuid** (`integer`, optional) The UUID of the notebook's creator. Use this to filter notebooks by their creator. -- **results_per_page** (`integer`, optional) Specifies the number of notebook results to return per page. -- **starting_index_for_results** (`integer`, optional) The index to start returning results from. This is used for pagination. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateNotebook - -
- - -Create a new notebook within a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The ID of the project where the notebook will be created. Use /api/projects/ to find the ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveNotebookDetails - -
- - -Retrieve details of a specific notebook. - -**Parameters** - -- **notebook_short_id** (`string`, required) The short ID of the notebook you want to retrieve details for. This is required to specify the notebook within the project. -- **project_identifier** (`string`, required) Project ID to access specific project details. Obtain via /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateNotebook - -
- - -Update a specific notebook's details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project you are accessing. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **notebook_short_id** (`string`, optional) Provide the unique short ID of the notebook to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateNotebookDetails - -
- - -Update notebook details in a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **target_project_id** (`string`, optional) The ID of the project to access. Use /api/projects/ to find the project ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **notebook_short_id** (`string`, optional) The unique short identifier for the notebook to be updated. This ID is required to specify which notebook to modify within the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteNotebook - -
- - -Deletes a specific notebook by marking it as deleted. - -**Parameters** - -- **notebook_short_id** (`string`, required) The short ID of the notebook to mark as deleted. This ID uniquely identifies the notebook within the project. -- **project_id** (`string`, required) The ID of the project to access. Obtain it by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveNotebookActivity - -
- - -Retrieve activity details of a specific notebook. - -**Parameters** - -- **notebook_short_id** (`string`, required) The unique short identifier of the notebook for which activity details are requested. Used to specify the exact notebook within the project. -- **project_id** (`string`, required) The ID of the project you're trying to access. Obtain it by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetNotebookActivity - -
- - -Retrieve activity details for a specific project notebook. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project from which to retrieve notebook activity. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveNotebookComments - -
- - -Retrieve comments from notebook recordings in a project. - -**Parameters** - -- **project_identifier** (`string`, required) Provide the Project ID to access specific notebook comments. Use /api/projects/ to find the ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListPersistedFolders - -
- - -Retrieve persisted folders for a given project. - -**Parameters** - -- **project_id** (`string`, required) Project ID of the project to access. Obtain the ID by calling /api/projects/. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page. -- **start_index** (`integer`, optional) The initial index from which to start returning the results. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.PersistFolderCreation - -
- - -Create a new persisted folder in Datadog. - -**Parameters** - -- **folder_category** (`string`, required) Specifies the type of the persisted folder. Options are 'home' for Home or 'pinned' for Pinned. -- **folder_creation_date** (`string`, required) The date and time when the persisted folder is created, in ISO 8601 format. -- **folder_last_updated** (`string`, required) A string representing the timestamp of the last update to the folder, in ISO 8601 format. -- **folder_type** (`string`, required) Specifies the type of the folder. Possible values are 'home' for Home or 'pinned' for Pinned. -- **project_identifier** (`string`, required) The unique identifier for the target project. Retrieve it via /api/projects/. -- **folder_path** (`string`, optional) Specify the path where the persisted folder will be created within the project. It should be a string representing the directory structure needed. -- **folder_protocol** (`string`, optional) Specify the protocol for the persisted folder. Expected values are network protocol types like HTTP or FTP. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersistedFolder - -
- - -Retrieve a specific persisted folder within a project. - -**Parameters** - -- **persisted_folder_uuid** (`string`, required) A UUID string identifying the persisted folder to be retrieved. -- **project_id** (`string`, required) The unique identifier for the project to access the persisted folder. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdatePersistedFolder - -
- - -Update details of a persisted folder in a project. - -**Parameters** - -- **folder_creation_date** (`string`, required) The date when the folder was originally created, in string format. Use this to specify the creation timestamp for folder updates. -- **folder_id** (`string`, required) The unique identifier of the folder to update within the project. -- **folder_type** (`string`, required) Specify the folder type: 'home' for Home or 'pinned' for Pinned. -- **persisted_folder_id** (`string`, required) A UUID string identifying the persisted folder to update. -- **project_id** (`string`, required) The ID of the project to access. Retrieve using /api/projects/. -- **update_timestamp** (`string`, required) Provide the timestamp when the folder was last updated. Use ISO 8601 format (e.g., '2023-10-01T12:34:56Z'). -- **folder_path** (`string`, optional) Specify the path where the persisted folder is located within the project. -- **update_protocol** (`string`, optional) Specify the protocol for the folder update. This value should be a string. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateFolderInfo - -
- - -Update a persisted folder's metadata in Datadog. - -**Parameters** - -- **project_id** (`string`, required) The ID of the Datadog project you want to access. Make a call to /api/projects/ to find it. -- **folder_creation_date** (`string`, optional) The date when the folder was created, expected in a string format (e.g., YYYY-MM-DD). -- **folder_id** (`string`, optional) The unique identifier of the persisted folder to update. -- **folder_path** (`string`, optional) The path to the persisted folder to update in Datadog. This specifies the location or hierarchy within the project where the folder resides. -- **folder_type** (`string`, optional) Specify the type of the folder. Options are 'home' for Home or 'pinned' for Pinned. -- **persisted_folder_id** (`string`, optional) A UUID string identifying the persisted folder to update. -- **protocol_type** (`string`, optional) Specify the protocol type for the persisted folder metadata. This is typically a string indicating the protocol used. -- **update_timestamp** (`string`, optional) Timestamp indicating when the persisted folder was last updated. Use ISO 8601 format. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveFolder - -
- - -Deletes a specified persisted folder from a project. - -**Parameters** - -- **persisted_folder_id** (`string`, required) A UUID string identifying the persisted folder to be deleted. -- **project_id** (`string`, required) The ID of the project to access. Obtain this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersonData - -
- - -Retrieve detailed information about a specific person. - -**Parameters** - -- **person_identifier** (`integer`, required) Unique integer identifying the person to retrieve information for. -- **project_id** (`string`, required) The ID of the project for accessing specific person data. Obtain it via /api/projects/. -- **output_format** (`string`, optional) Specify the format in which to retrieve the person data. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyPersonDetails - -
- - -Update properties for a person in the project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **person_id** (`integer`, optional) A unique integer representing a person to update in the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) ID of the target project for accessing person data. Retrieve the ID via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specifies the format of the response output, either 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdatePersonInfo - -
- - -Update person details using partial data. - -**Parameters** - -- **project_id** (`string`, required) Project ID for accessing the intended project. Obtain by calling /api/projects/. -- **creation_timestamp** (`string`, optional) The timestamp when the person data was initially created, in ISO 8601 format (e.g., '2023-10-05T14:48:00.000Z'). -- **person_distinct_ids** (`array[string]`, optional) An array of unique identifiers for the person whose data is being updated. These identifiers help to distinguish between different users. -- **person_id** (`integer`, optional) The identifier of the person whose information is being updated. It should be an integer. -- **person_identifier** (`integer`, optional) A unique integer identifying the person to update. -- **person_name** (`string`, optional) The name of the person whose details are being updated. This should be a string representing the person's full name. -- **person_properties** (`string`, optional) Stringified JSON containing specific person properties to update. -- **response_format** (`string`, optional) The format of the response. Options are 'csv' or 'json'. -- **user_uuid** (`string`, optional) The unique identifier for the person to be updated. Must be a valid UUID string. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeletePerson - -
- - -Delete an individual person from a project. - -**Parameters** - -- **person_id** (`integer`, required) A unique integer identifying the person to be deleted. -- **project_id** (`string`, required) The ID of the project to access. Retrieve by calling /api/projects/. -- **delete_events** (`boolean`, optional) Set to true to create a task to delete all events associated with this person, batched and executed at 5AM UTC every Sunday. -- **response_format** (`string`, optional) Specify the format of the response data. Choose between 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetPersonActivity - -
- - -Retrieve activities and details of a specific person. - -**Parameters** - -- **person_identifier** (`integer`, required) A unique integer value identifying the person. Required for retrieving their activity details. -- **project_id** (`string`, required) The ID of the project to access. Obtainable via /api/projects/. -- **response_format** (`string`, optional) Specify the format of the response, either 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.QueuePersonEventDeletion - -
- - -Queue deletion of events for a person during non-peak hours. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **person_identifier** (`integer`, optional) A unique integer value identifying the person whose events are to be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Unique identifier for the project. Obtain via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format of the response. Choose either 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemovePersonAttribute - -
- - -Delete a specific property from a person's profile. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **property_key_to_delete** (`string`, optional) Specify the property key you want to delete from a person's profile. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **person_identifier** (`integer`, optional) A unique integer to identify the person whose property you want to delete. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project you want to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the desired format for the response. Can be 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemovePersonRecordings - -
- - -Queue deletion of all recordings associated with a person. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **person_identifier** (`integer`, optional) A unique integer value used to identify the person whose recordings are to be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The unique identifier for the project. To obtain this ID, call /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **file_format** (`string`, optional) Specify the format type for the output. Acceptable values are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersonPropertiesTimeline - -
- - -Retrieve the timeline of a person's properties changes. - -**Parameters** - -- **person_id** (`integer`, required) A unique integer value identifying this person. -- **project_id** (`string`, required) The unique identifier for the project you're trying to access. Obtain it via a call to /api/projects/. -- **response_format** (`string`, optional) Specify the format of the response. Accepted values are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.SplitPersonEntityCreate - -
- - -Create a sub-person entity for an existing person. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **person_identifier** (`integer`, optional) A unique integer identifying the person for whom a sub-entity will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to access. Retrieve by calling `/api/projects/`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **output_format** (`string`, optional) Specifies the output format for the response. Accepts 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyUserAttribute - -
- - -Update a specific property for a person in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **property_key** (`string`, optional) The key for the property you want to update for the person. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **property_value** (`string`, optional) Specify the value of the property to be updated for a person. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **person_identifier** (`integer`, optional) A unique integer value used to identify the person whose property is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Project ID to access the relevant project. Retrieve it via `/api/projects/`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format for the response. Use 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.PersonActivityInfo - -
- - -Retrieve details of a person's activities. - -**Parameters** - -- **access_project_id** (`string`, required) The ID of the project you want to access. Call /api/projects/ to find this ID. -- **response_format** (`string`, optional) Specify the format for the response, either 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.BulkDeletePersons - -
- - -Bulk delete persons by IDs in a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project to access for deleting persons. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **distinct_ids_list** (`json`, optional) A list of distinct IDs to delete associated persons, limited to 1000 IDs per call. Only used when mode is 'execute'. -- **response_format** (`string`, optional) Specifies the format of the response, either 'csv' or 'json'. Only used when mode is 'execute'. -- **posthog_person_ids** (`json`, optional) A JSON list of up to 1000 PostHog person IDs to delete. Only used when mode is 'execute'. -- **delete_associated_events** (`boolean`, optional) If true, a task is created to delete all events related to the persons being deleted. It runs every Sunday at 5AM UTC. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetPersonsCohorts - -
- - -Retrieve information about person cohorts in a project. - -**Parameters** - -- **project_id** (`string`, required) Project ID of the project to access. Use /api/projects/ to find this ID. -- **response_format** (`string`, optional) Specify the format of the response: 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersonsFunnel - -
- - -Retrieve persons data for a project funnel. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Find it by calling /api/projects/. -- **output_format** (`string`, optional) Specify the desired output format. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateOrUpdatePersons - -
- - -Create or update persons in a project funnel. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier for the project to access. Use /api/projects/ to find the ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format of the response. Options are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FunnelCorrelationPersonsRetrieve - -
- - -Retrieve funnel correlation data for persons in a project. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the project you want to access. Retrieve this ID by calling /api/projects/. -- **response_format** (`string`, optional) Format of the response data. Choose 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.AddPersonsFunnelCorrelation - -
- - -Create or update persons in a funnel correlation. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) Project ID for accessing the project. Obtain by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the format of the response. Options are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetPersonsLifecycle - -
- - -Retrieve lifecycle information of persons in a project. - -**Parameters** - -- **project_id** (`string`, required) Project ID to access the specific project. Use /api/projects/ to find the ID if unknown. -- **response_format** (`string`, optional) The format in which to retrieve lifecycle information. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ResetPersonDistinctId - -
- - -Reset a distinct_id for a deleted person to reuse it. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project you want to access. Use the /api/projects/ endpoint to retrieve available IDs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **response_format** (`string`, optional) Specify the response format. Options are 'csv' or 'json'. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePersonsStickiness - -
- - -Retrieve information about persons' stickiness in a project. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier of the project to access. Retrieve by calling /api/projects/. -- **response_format** (`string`, optional) Determines the format of the response. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetPersonTrends - -
- - -Retrieve trends related to persons in a project. - -**Parameters** - -- **project_identifier** (`string`, required) The Project ID required to access and retrieve trends of persons for a specific project. Use the /api/projects/ endpoint to find the ID. -- **response_format** (`string`, optional) Specify the format for the response data. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetPersonInfo - -
- - -Retrieve or delete person details in a Datadog project. - -**Parameters** - -- **project_id** (`string`, required) Project ID to access specific project details in Datadog. Obtain this by calling /api/projects/. -- **response_format** (`string`, optional) Specifies the format of the response data. Options are 'csv' or 'json'. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListPluginConfigLogs - -
- - -Retrieve logs for a specific plugin configuration. - -**Parameters** - -- **plugin_configuration_id** (`string`, required) The ID of the plugin configuration whose logs you want to retrieve. -- **project_id** (`string`, required) The unique identifier for the project whose plugin logs you want to access. Obtain this by calling /api/projects/. -- **results_per_page** (`integer`, optional) Number of results to return per page for the log list. -- **starting_index** (`integer`, optional) The starting index for results retrieval, used to paginate through logs. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListPropertyDefinitions - -
- - -Retrieve a list of property definitions for a specific project. - -**Parameters** - -- **project_id** (`string`, required) ID of the project you're accessing. Use /api/projects/ to find it. -- **event_names_json** (`string`, optional) A JSON-encoded string of event names to populate `is_seen_on_filtered_events` in the response. -- **exclude_core_properties** (`boolean`, optional) Set to true to exclude core properties from the response; false to include them. -- **exclude_hidden_properties** (`boolean`, optional) Set to true to exclude properties marked as hidden from the results. -- **excluded_properties_list** (`string`, optional) A JSON-encoded list of property names to exclude from the response. -- **filter_feature_flag_properties** (`boolean`, optional) Set to true to include only feature flag properties, false to exclude them. -- **filter_properties_by_event_names** (`boolean`, optional) Set to true to return only properties for events specified in `event_names`. -- **filter_properties_list** (`string`, optional) Comma-separated list of properties to filter the results by. -- **group_type_index_for_group_properties** (`integer`, optional) Provide the group type index specifically for properties of type 'group'. This should only be set if the type is set to 'group'. -- **include_only_numerical_properties** (`boolean`, optional) Set to true to return only numerical property definitions, false to exclude them. -- **property_definition_type** (`string`, optional) Specify which type of property definitions to return: 'event', 'person', 'group', or 'session'. -- **result_start_index** (`integer`, optional) The initial index from which to return the results. Use this to paginate through results starting from a specific index. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page when retrieving property definitions. -- **search_query** (`string`, optional) Keyword to search properties by name in the project. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrievePropertyDefinitions - -
- - -Retrieve details of property definitions for a given project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you want to access. Retrieve it via /api/projects/. -- **property_definition_id** (`string`, required) A UUID string identifying the specific property definition. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdatePropertyDefinitions - -
- - -Update property definitions for a specific project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **property_definition_id** (`string`, optional) A UUID string identifying the specific property definition to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Project ID to access specific project details in Datadog. Call /api/projects/ to find it. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdatePropertyDefinition - -
- - -Update partial property definition details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **property_definition_id** (`string`, optional) A UUID string identifying the property definition to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to access. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeletePropertyDefinition - -
- - -Delete a property definition from a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Retrieve it via the /api/projects/ endpoint. -- **property_definition_id** (`string`, required) A UUID string identifying the property definition to be deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CheckPropertyEventAssociation - -
- - -Check if a property has been seen with specified event names. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the target project. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveQueryFromProject - -
- - -Retrieve a specific query from a project. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier of the project you want to access. Obtainable via a call to /api/projects/. -- **query_id** (`string`, required) The unique identifier of the query you want to retrieve from the project. This is required to specify which query to access. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteProjectQuery - -
- - -Delete a specific project query. - -**Parameters** - -- **project_id** (`string`, required) ID of the project you want to access. Retrieve it via a call to /api/projects/. -- **query_id** (`string`, required) The unique identifier for the query to be deleted within the project. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetQueryLogDetails - -
- - -Retrieve query log details for a specified query ID. - -**Parameters** - -- **project_id** (`string`, required) Project ID for accessing the specific project. Retrieve by calling /api/projects/. -- **query_id** (`string`, required) The unique identifier of the query to retrieve log details. The query must have been issued within the last 24 hours. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CheckAsyncAuth - -
- - -Checks authorization for creating asynchronous queries. - -**Parameters** - -- **project_id_for_auth_check** (`string`, required) The ID of the Datadog project to check access for creating asynchronous queries. Obtain the ID by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveDraftSqlQuery - -
- - -Retrieve draft SQL query for a specific project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access for the draft SQL query. Obtainable via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListSessionPlaylists - -
- - -Retrieve session recording playlists, including synthetic ones. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project you're trying to access. Obtain it by calling /api/projects/. -- **created_by_user_id** (`integer`, optional) ID of the user who created the playlist. Must be an integer. -- **playlist_short_id** (`string`, optional) A specific short identifier for the playlist to retrieve. -- **results_offset** (`integer`, optional) The index from which to start returning results. Useful for pagination. -- **results_per_page** (`integer`, optional) Number of results to return per page. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.NewSessionRecordingPlaylist - -
- - -Create a new session recording playlist for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project for which you want to create a session recording playlist. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveRecordingPlaylist - -
- - -Retrieve a session recording playlist for a project. - -**Parameters** - -- **playlist_short_id** (`string`, required) The short ID of the session recording playlist to retrieve. This helps identify the specific playlist to fetch. -- **project_id** (`string`, required) The ID of the project to access. Retrieve it by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifySessionRecordingPlaylist - -
- - -Update session recording playlists for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project you want to access. Retrieve the ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **playlist_short_identifier** (`string`, optional) A unique identifier for the session recording playlist to be updated. It is used to specify the exact playlist within the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.EditSessionPlaylist - -
- - -Partially update a session recording playlist. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The unique identifier of the project. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **playlist_short_id** (`string`, optional) The short ID of the session recording playlist to modify. Required for identifying the playlist. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveSessionRecordingPlaylist - -
- - -Soft delete a session recording playlist in a project. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access. Retrieve this by calling /api/projects/. -- **session_recording_playlist_short_id** (`string`, required) A unique short identifier for the session recording playlist to be deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveRecordingPlaylistViews - -
- - -Retrieve and log views of session recording playlists. - -**Parameters** - -- **project_id** (`string`, required) Project ID to access specific recording playlists. Use /api/projects/ to find the ID. -- **recording_short_id** (`string`, required) The short identifier of the recording playlist to retrieve views for. Required for accessing specific recordings. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.AddSessionRecordingToPlaylist - -
- - -Add a session recording to a specified playlist. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) Project ID to access the specific project. Retrieve by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **session_recording_identifier** (`string`, optional) The unique ID of the session recording to be added to the playlist. This ID identifies the specific recording you want to track or log in the given playlist. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **session_recording_short_id** (`string`, optional) The unique short identifier of the session recording to add to the playlist within the specified project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteSessionRecording2 - -
- - -Delete a session recording from a playlist in a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you want to access. Obtainable via /api/projects/. -- **session_recording_id** (`string`, required) The unique identifier for the session recording to be deleted. -- **session_recording_short_id** (`string`, required) The unique short ID of the session recording to delete from the playlist. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchSessionRecordings - -
- - -Retrieve session recordings for a specific project. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier of the project for which to retrieve session recordings. Obtainable via the /api/projects/ endpoint. -- **results_per_page** (`integer`, optional) Number of session recordings to return per page. This controls the pagination size. -- **start_index_for_results** (`integer`, optional) The initial index from which to start returning the results. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchSessionRecording - -
- - -Retrieve details of a specific session recording. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Find the project ID with /api/projects/. -- **session_recording_id** (`string`, required) A UUID string that uniquely identifies the session recording to retrieve. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateSessionRecording2 - -
- - -Update session recording details for a specific project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **session_recording_id** (`string`, optional) A UUID string identifying the session recording to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to access. To find this ID, use the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.EditSessionRecording - -
- - -Update specific details of a session recording. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **session_recording_id** (`string`, optional) A UUID string used to uniquely identify the session recording to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DestroySessionRecording - -
- - -Delete a specific session recording from a project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project containing the session recording to delete. Retrieve using /api/projects/. -- **session_recording_id** (`string`, required) A UUID string identifying this session recording for deletion. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetSessionRecordingsSharingLinks - -
- - -Obtain sharing links for a Datadog session recording. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access session recordings. Retrieve via /api/projects/. -- **session_recording_id** (`string`, required) The unique ID of the session recording for which you want to obtain sharing links. This ID is required to specify the exact recording within the project. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateRecordingSharePassword - -
- - -Create a new password for sharing configuration of a recording. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project to access. Use the /api/projects/ endpoint to find the project ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **recording_id** (`string`, optional) Unique identifier of the recording for which the sharing password is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveSharingPassword - -
- - -Delete a sharing configuration password from a session recording. - -**Parameters** - -- **password_identifier** (`string`, required) The unique identifier for the password to be removed from the sharing configuration. -- **project_identifier** (`string`, required) The unique ID of the project for accessing its session recordings. Retrieve this by calling /api/projects/. -- **session_recording_id** (`string`, required) The ID of the session recording from which the password will be deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateSessionRecordingSharing - -
- - -Refresh session recording sharing status. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique string identifier for the project you want to access. Obtainable via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **session_recording_id** (`string`, optional) The unique ID of the session recording to update the sharing status for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveSessionPropertyDefinitions - -
- - -Retrieve definitions of session properties for a project. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access session property definitions. Obtainable via the /api/projects/ call. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveProjectSessionValues - -
- - -Retrieve session values for a specific project. - -**Parameters** - -- **project_id** (`string`, required) Project ID to access session values. Obtain it via a call to /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetProjectSubscriptions - -
- - -Retrieve a list of subscriptions for a specific project. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access subscriptions for. Use /api/projects/ to find the ID if unknown. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page for the subscription list. -- **results_start_index** (`integer`, optional) The index position to start returning results from within the subscription list. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateProjectSubscription - -
- - -Create a new subscription for a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The ID of the project to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetSubscriptionInfo - -
- - -Retrieve details of a specific project subscription. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Obtain it via a call to /api/projects/. -- **subscription_id** (`integer`, required) A unique integer value identifying this subscription. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateSubscriptionSettings - -
- - -Update subscription settings for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **subscription_id** (`integer`, optional) A unique integer identifying the subscription to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve it via /api/projects/ if unknown. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateSubscriptionDetails - -
- - -Update details of a project subscription. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **subscription_id** (`integer`, optional) A unique integer value identifying this subscription. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project you want to access. Retrieve it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UnsubscribeFromProjectAlerts - -
- - -Set project alert subscription as deleted. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access. Retrieve it from the /api/projects/ endpoint. -- **subscription_id** (`integer`, required) A unique integer identifier for the project alert subscription to be marked as deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetProjectSurveys - -
- - -Retrieve a list of surveys for a given project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access. Retrieve project ID via the /api/projects/ endpoint. -- **initial_result_index** (`integer`, optional) The starting index for returning survey results, used for pagination. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page, as an integer. -- **search_term** (`string`, optional) A search term to filter the list of surveys. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateSurvey - -
- - -Create a new survey for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project for creating a survey. Retrieve this ID via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveSurveyData - -
- - -Retrieve data for a specific survey using project and survey IDs. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you want to access. Retrieve it via /api/projects/ if unknown. -- **survey_uuid** (`string`, required) A UUID string identifying the specific survey to be retrieved. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateSurveyTracking - -
- - -Tracks a new view for a survey by logging access. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **survey_uuid** (`string`, optional) A UUID string that uniquely identifies the survey to track. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The unique identifier of the project to access. Retrieve this ID by making a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateSurveyInfo - -
- - -Update information for a specific survey. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **survey_uuid** (`string`, optional) A UUID string identifying the survey to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteSurvey - -
- - -Delete a survey from a specific project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique ID of the project containing the survey to delete. Obtainable via the /api/projects/ endpoint. -- **survey_uuid** (`string`, required) A UUID string that uniquely identifies the survey to delete. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchSurveyActivity - -
- - -Retrieve logs of survey activity views. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you want to access. Retrieve this by calling /api/projects/. -- **survey_uuid** (`string`, required) A UUID string uniquely identifying the survey to retrieve activity logs for. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DuplicateSurveyToProjects - -
- - -Duplicate a survey to multiple projects in one transaction. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **survey_uuid** (`string`, optional) A UUID string identifying the survey to be duplicated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **target_project_id** (`string`, optional) The ID of the target project where the survey will be duplicated. Obtain this ID via the /api/projects/ call. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetSurveyResponseStatistics - -
- - -Get survey response statistics for a specific survey. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access. Retrieve this using the /api/projects/ endpoint. -- **survey_uuid** (`string`, required) A UUID string identifying the specific survey to retrieve statistics for. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.SummarizeSurveyResponses - -
- - -Create a summary of survey responses for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **survey_uuid** (`string`, optional) A UUID string that uniquely identifies the survey for which responses are to be summarized. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique identifier string for the project. Obtain it by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.TrackSurveyActivity - -
- - -Retrieve and log survey activity views. - -**Parameters** - -- **project_id** (`string`, required) The Project ID to access and track survey activities. Find the ID using /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetSurveyResponseCount - -
- - -Retrieve the count of survey responses for a project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique identifier for the project whose survey response count you want to retrieve. Use /api/projects/ to find the ID. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetSurveyStatistics - -
- - -Retrieve aggregated response statistics for surveys. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the project to access. Get this by calling /api/projects/. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListProjectTasks - -
- - -Retrieve tasks for a specific project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique identifier of the project for which to retrieve tasks. Obtain this ID via the /api/projects/ endpoint. -- **results_per_page** (`integer`, optional) Number of task results to return per page. Use this to limit the result set size. -- **start_index** (`integer`, optional) The zero-based index from which to begin returning task results. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateProjectTask - -
- - -Create a new task within a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The ID of the project to access for task creation. Retrieve the ID using a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetProjectTaskDetails - -
- - -Retrieve details of a specific task within a project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique ID of the project to access task details. Use /api/projects/ to find available project IDs. -- **task_id** (`string`, required) A UUID string identifying the specific task within the project. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateProjectTask - -
- - -Update task details within a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **task_uuid** (`string`, optional) A UUID string identifying the task to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project being accessed. Use /api/projects/ to find project IDs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateTaskInProject - -
- - -Update a specific task within a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **task_uuid** (`string`, optional) A UUID string that uniquely identifies the specific task to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project to access for task updates. Retrieve this using the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteProjectTask - -
- - -Delete a specific task within a project. - -**Parameters** - -- **project_identifier** (`string`, required) Project ID of the target project. Obtain this by calling /api/projects/. -- **task_uuid** (`string`, required) A UUID string identifying the specific task to delete within a project. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.InitiateTaskWorkflow - -
- - -Initiate the workflow for a specific task stage. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access. Retrieve this by calling /api/projects/. -- **task_uuid** (`string`, required) A UUID string used to uniquely identify the task to be initiated. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateTaskPosition - -
- - -Update the position of a task within its current stage. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project for accessing or modifying tasks. Obtainable via a call to /api/projects/. -- **task_identifier** (`string`, required) A UUID string specifying the task to be updated. -- **new_task_position** (`integer`, optional) The new integer position for the task within its current stage. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListTaskRuns - -
- - -Retrieve a list of task run executions for a specific task. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you want to access. Obtain it via a call to /api/projects/. -- **task_identifier** (`string`, required) The unique ID of the task for which you want to list the run executions. Ensures retrieval of all run data related to this specific task. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. This is useful for paginating large datasets. -- **starting_index_for_results** (`integer`, optional) The starting index for returning results in a paginated list of task runs. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateTaskRun - -
- - -Create and manage execution of a specific task by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The ID of the project to access. Use /api/projects/ to retrieve project IDs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **task_id** (`string`, optional) The identifier for the specific task to run within the project. Ensure it matches the correct task you intend to execute. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetTaskRunDetails - -
- - -Retrieve details of a specific task run execution. - -**Parameters** - -- **project_identifier** (`string`, required) The unique identifier for the project you want to access. Obtain it via a call to /api/projects/. -- **task_identifier** (`string`, required) A UUID string identifying the specific task run execution. -- **task_run_id** (`string`, required) A UUID string to identify the specific task run execution. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateTaskRunStatus - -
- - -Update the status of a specific task run. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **task_run_id** (`string`, optional) A UUID string identifying the specific task run to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project to access. Retrieve via /api/projects/ if unknown. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **task_run_task_identifier** (`string`, optional) The unique task ID for identifying the specific task run to update. This ID is associated with the task execution. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.AppendTaskRunLogs - -
- - -Append log entries to a specific task run log array. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **task_run_uuid** (`string`, optional) A UUID string to identify the specific task run for log appending. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) ID of the project to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **task_run_task_id** (`string`, optional) A string representing the task ID for the task run. This identifies which task the logs are associated with. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateTaskRunOutput - -
- - -Update the output field for a specific task run. - -**Parameters** - -- **project_identifier** (`string`, required) The unique Project ID required to access and update the specific task run details within a project. Obtainable via the /api/projects/ endpoint. -- **task_identifier** (`string`, required) A string representing the unique identifier for a particular task run being accessed. -- **task_run_id** (`string`, required) A UUID string that uniquely identifies the task run to update. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetSavedQueriesList - -
- - -Retrieve saved warehouse queries for a specific project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you want to access. Retrieve this ID by calling /api/projects/. -- **current_page_number** (`integer`, optional) Indicates the page number for retrieving paginated results of saved warehouse queries. -- **search_term** (`string`, optional) A search term to filter the saved warehouse queries. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.AddWarehouseSavedQuery - -
- - -Create a warehouse saved query for data management. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id_for_access** (`string`, optional) The ID of the project to access. Obtainable by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveWarehouseSavedQuery - -
- - -Retrieve details of a specific warehouse saved query. - -**Parameters** - -- **project_id** (`string`, required) Project ID to access the specific project. Retrieve it via /api/projects/. -- **query_uuid** (`string`, required) A UUID string identifying the specific data warehouse saved query to retrieve. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.EditWarehouseSavedQuery - -
- - -Update a specific warehouse saved query. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **saved_query_id** (`string`, optional) A UUID string identifying the specific data warehouse saved query to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique ID of the project to access. Retrieve this ID via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyWarehouseQuery - -
- - -Partially update a warehouse saved query in a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **query_identifier** (`string`, optional) A UUID string that identifies the specific warehouse saved query to be partially updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Project ID for the warehouse saved query. Obtain it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteWarehouseSavedQuery - -
- - -Deletes a specified warehouse saved query. - -**Parameters** - -- **project_id_to_access** (`string`, required) Provide the Project ID for the warehouse project. Obtain the ID by calling /api/projects/. -- **saved_query_uuid** (`string`, required) A UUID string that uniquely identifies the data warehouse saved query to be deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveSavedQueryActivity - -
- - -Retrieve activity details of a saved warehouse query. - -**Parameters** - -- **project_identifier** (`string`, required) The identifier for the project you want to access. Retrieve it via /api/projects/. -- **saved_query_id** (`string`, required) The UUID of the data warehouse saved query to retrieve activity details for. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetAncestorsOfSavedQuery - -
- - -Retrieve ancestors of a saved query in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **data_warehouse_query_uuid** (`string`, optional) A UUID identifying the specific data warehouse saved query to retrieve ancestors for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) Project ID to access. Retrieve the ID using the /api/projects/ endpoint if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CancelRunningSavedQuery - -
- - -Cancel a running saved query workflow in progress. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **saved_query_uuid** (`string`, optional) A UUID string that identifies the saved data warehouse query to cancel. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Project ID to access the specific project. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetQueryDescendants - -
- - -Retrieve descendants of a saved query. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **query_id** (`string`, optional) A UUID string identifying the data warehouse saved query to retrieve descendants for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project to access. Retrieve it by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UndoMaterialization - -
- - -Revert back to the original view by undoing materialization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **saved_query_uuid** (`string`, optional) A UUID string identifying the specific data warehouse saved query to be reverted. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Provide the Project ID for accessing the specific project. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ExecuteSavedQuery - -
- - -Executes a saved query in Datadog's warehouse. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **query_uuid** (`string`, optional) The UUID string identifying the specific data warehouse saved query to execute. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The ID of the project you want to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.WarehouseTablesOverview - -
- - -Retrieve a list of warehouse tables for a specific project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique identifier of the project whose warehouse tables you wish to access. Use the project ID obtained via a call to /api/projects/. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page when listing warehouse tables. -- **results_start_index** (`integer`, optional) The initial index from which the results should start. Useful for pagination. -- **search_term** (`string`, optional) A term to filter the list of warehouse tables by matching names or descriptions. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.AddWarehouseTable - -
- - -Create a new warehouse table in a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The ID of the project to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetWarehouseTable - -
- - -Retrieve details of a specific warehouse table. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to retrieve the warehouse table from. Obtainable by calling /api/projects/. -- **warehouse_table_id** (`string`, required) A UUID string identifying the data warehouse table to be retrieved. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.EditWarehouseTable - -
- - -Updates information for a specific warehouse table. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **warehouse_table_id** (`string`, optional) A UUID string identifying the data warehouse table to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) The ID of the project you want to access. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateWarehouseTable2 - -
- - -Partially update a warehouse table entry. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **warehouse_table_id** (`string`, optional) A UUID string identifying the data warehouse table to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Project ID of the project you're trying to access. Use the `/api/projects/` endpoint to find the correct ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RemoveWarehouseTable - -
- - -Delete a specified warehouse table from a project. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project to access. Use /api/projects/ to find this ID. -- **warehouse_table_uuid** (`string`, required) A UUID string identifying the data warehouse table to be deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateTableSchema - -
- - -Refresh the schema of a specific warehouse table. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **warehouse_table_uuid** (`string`, optional) A UUID string identifying the warehouse table to refresh the schema for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_id** (`string`, optional) String representing the Project ID for accessing a specific project. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ModifyTableSchema - -
- - -Update the schema of a warehouse table. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **table_id** (`string`, optional) A UUID string to identify the data warehouse table for schema modification. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique Project ID for accessing the desired project. To obtain this ID, call /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.WarehouseTableFileOperations - -
- - -Create a new warehouse table from a file. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id_for_access** (`string`, optional) Specify the Project ID to access the desired project. Use /api/projects/ to find available IDs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.FetchWebAnalyticsBreakdown - -
- - -Retrieve breakdown of web analytics by property. - -**Parameters** - -- **breakdown_property** (`string`, required) Specify the property to break down web analytics by, such as Browser, DeviceType, Country, etc. -- **end_date** (`string`, required) The end date for retrieving web analytics data, formatted as YYYY-MM-DD. -- **project_id_for_access** (`string`, required) Project ID to access specific analytics data. Obtainable via a call to /api/projects/. -- **start_date** (`string`, required) Start date for the query in the format YYYY-MM-DD. -- **apply_url_path_cleaning** (`boolean`, optional) Set to true to apply URL path cleaning. -- **filter_by_host** (`string`, optional) Specify the domain to filter the results by, such as 'example.com'. -- **filter_test_accounts** (`boolean`, optional) Set to true to filter out test accounts from the results. -- **results_limit** (`integer`, optional) Specify the maximum number of results to return from the query. -- **results_offset** (`integer`, optional) Number of results to skip for paginated data retrieval. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GetWebAnalyticsOverview - -
- - -Retrieve an overview of web analytics data for a project. - -**Parameters** - -- **end_date_query** (`string`, required) End date for the query in the format YYYY-MM-DD. -- **project_id** (`string`, required) The unique identifier for the project you want to access web analytics data for. Obtain this by calling /api/projects/. -- **start_date** (`string`, required) Start date for the query in YYYY-MM-DD format. Determines the beginning of the analytics data range. -- **filter_test_accounts** (`boolean`, optional) Set to true to filter out test accounts from the analytics data. -- **host_filter** (`string`, optional) Specify the host to filter web analytics data by (e.g., example.com). - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListWebExperiments - -
- - -Retrieve a list of web experiments for a given project. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project to access web experiments. Retrieve this ID via the /api/projects/ endpoint. -- **results_per_page** (`integer`, optional) Specifies the number of results to return per page when retrieving web experiments. -- **start_index_for_results** (`integer`, optional) The initial index from which to return the experiment results. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateWebExperiment - -
- - -Create a web experiment for a project. - -**Parameters** - -- **experiment_id** (`integer`, required) Unique integer ID for the web experiment. Required for identifying the experiment within the project. -- **experiment_name** (`string`, required) The name for the web experiment you want to create in Datadog. -- **feature_flag_key** (`string`, required) Unique identifier for the feature flag associated with the web experiment. -- **project_id** (`string`, required) ID of the project for the web experiment. Obtain it via /api/projects/. -- **web_experiment_variants** (`string`, required) JSON string defining the variants for the web experiment, including transforms, conditions, and rollout percentages. -- **experiment_creation_date** (`string`, optional) The timestamp when the web experiment was created, in ISO 8601 format. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveWebExperiment - -
- - -Retrieve details of a specific web experiment. - -**Parameters** - -- **project_id** (`string`, required) The ID of the project you want to access. Call /api/projects/ to retrieve the ID. -- **web_experiment_id** (`integer`, required) A unique integer identifying the web experiment to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateWebExperiment - -
- - -Update web experiment details within a project. - -**Parameters** - -- **experiment_id** (`integer`, required) The ID of the web experiment to update. Must be an integer. -- **experiment_name** (`string`, required) Specify the name of the web experiment to update. This is used to identify the experiment for modification within the project. -- **feature_flag_key** (`string`, required) Unique identifier for the feature flag associated with the web experiment. -- **project_id** (`string`, required) The ID of the project to access. Retrieve this ID via the `/api/projects/` endpoint. -- **web_experiment_id** (`integer`, required) A unique integer identifying this web experiment to be updated. -- **web_experiment_variants** (`string`, required) JSON string specifying variants for the web experiment. Include control, transforms, conditions, and rollout_percentage. -- **creation_timestamp** (`string`, optional) Timestamp indicating when the web experiment was created. It should be in ISO 8601 format. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateWebExperimentStatus - -
- - -Update the status of a web experiment. - -**Parameters** - -- **project_id_for_access** (`string`, required) Project ID to access the specific project. Obtain it via /api/projects/. -- **creation_timestamp** (`string`, optional) The timestamp when the web experiment was created. Must be in ISO 8601 format (e.g., '2023-10-05T14:48:00.000Z'). -- **experiment_identifier** (`integer`, optional) The unique identifier for the web experiment that needs to be updated. -- **experiment_name** (`string`, optional) The name of the web experiment to be updated. This should be a descriptive string identifying the specific experiment within the project. -- **feature_flag_key** (`string`, optional) A string representing the feature flag key associated with the web experiment. It uniquely identifies the feature toggle you want to update. -- **web_experiment_id** (`integer`, optional) A unique integer identifying the web experiment. -- **web_experiment_variants** (`string`, optional) JSON string defining the variants for the web experiment. Include text, HTML, selector, conditions, and rollout percentage for each variant. Example: `{ "control": { "transforms": [ { "text": "Here comes Superman!", "html": "", "selector": "#page > #body > .header h1" } ], "conditions": "None", "rollout_percentage": 50 } }` - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteWebExperiment - -
- - -Delete a web experiment from a specific project. - -**Parameters** - -- **project_identifier** (`string`, required) The ID of the project from which you want to delete the web experiment. Obtainable via the /api/projects/ call. -- **web_experiment_id** (`integer`, required) Unique integer identifying the web experiment to delete. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ListUsers - -
- - -Retrieve a list of users from Datadog. - -**Parameters** - -- **filter_staff_only** (`boolean`, optional) Set to true to list only staff members; set to false to include all users. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page when listing users. -- **start_index** (`integer`, optional) The index to start retrieving results from. Useful for pagination of user results. -- **user_email** (`string`, optional) Filter users by email. Use a full or partial email address to narrow results. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveUserInformation - -
- - -Retrieve detailed information about a specific user. - -**Parameters** - -- **user_unique_identifier** (`string`, required) The unique identifier for a specific user in Datadog. This should be a string value. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateUserDetails - -
- - -Update user details in the database. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_uuid** (`string`, optional) The unique identifier (UUID) of the user to be updated. Required for identifying the specific user record. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateUserInfo - -
- - -Partially update a user's information in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_uuid** (`string`, optional) The unique identifier for the user to be updated. This is required to specify which user's information should be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DeleteUserAccount - -
- - -Deletes a user account from the system. - -**Parameters** - -- **user_uuid** (`string`, required) The UUID of the user account to be deleted. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveUserHedgehogConfig - -
- - -Retrieve a user's hedgehog configuration details. - -**Parameters** - -- **user_uuid** (`string`, required) The unique UUID of the user whose hedgehog configuration details are to be retrieved. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.UpdateUserHedgehogConfig - -
- - -Update a user's hedgehog configuration settings in Datadog. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_uuid** (`string`, optional) A unique identifier for the user whose hedgehog configuration is to be updated. It is a string value that must be provided to target the correct user. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CreateUserScenePersonalization - -
- - -Create personalized scene settings for a user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_uuid** (`string`, optional) The unique identifier for the user whose scene you want to personalize. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.InitiateUser2faSetup - -
- - -Initiate two-factor authentication setup for a user. - -**Parameters** - -- **user_uuid** (`string`, required) A unique identifier for the user to initiate 2FA setup. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.GenerateBackupCodes - -
- - -Generate new backup codes for two-factor authentication. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_uuid** (`string`, optional) A unique identifier for the user to generate new backup codes. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.DisableUser2fa - -
- - -Disable two-factor authentication for a user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_unique_identifier** (`string`, optional) The unique identifier of the user whose 2FA is to be disabled. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RetrieveUser2faSetupStatus - -
- - -Retrieve a user's two-factor authentication setup status. - -**Parameters** - -- **user_identifier** (`string`, required) A unique identifier for the user whose two-factor authentication setup status is being retrieved. This is typically a UUID string. - -## PosthogApi.Retrieve2faStatus - -
- - -Retrieve current 2FA status and backup codes if enabled. - -**Parameters** - -- **user_identifier_uuid** (`string`, required) A unique identifier for the user to retrieve the 2FA status. Typically a string of alphanumeric characters. - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ValidateTwoFactorAuthentication - -
- - -Validate a user's two-factor authentication code. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_identifier** (`string`, optional) The unique identifier for the user whose two-factor authentication is being validated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.ValidateUser2fa - -
- - -Validate a user's two-factor authentication status. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_uuid** (`string`, optional) The unique identifier for the user whose 2FA status needs to be validated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.CancelEmailChangeRequest - -
- - -Cancel a pending email change request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.RequestEmailVerification - -
- - -Request an email verification for a user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## PosthogApi.VerifyUserEmail - -
- - -Initiates the email verification process for a user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Reference - -Below is a reference of enumerations used by some of the tools in the PosthogApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - diff --git a/app/en/resources/integrations/development/vercel-api/page.mdx b/app/en/resources/integrations/development/vercel-api/page.mdx deleted file mode 100644 index b7ca96321..000000000 --- a/app/en/resources/integrations/development/vercel-api/page.mdx +++ /dev/null @@ -1,7012 +0,0 @@ -# VercelApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The VercelApi MCP Server offers a comprehensive suite of tools for managing Vercel projects, domains, and integrations. Users can efficiently perform actions such as: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## VercelApi.ReadAccessGroup - -
- - -Retrieve details of a specific access group. - -**Parameters** - -- **access_group_id_or_name** (`string`, required) The ID or name of the access group to retrieve details for. -- **team_identifier** (`string`, optional) The identifier of the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The Team slug used to perform the request on behalf of the specified team. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateAccessGroup - -
- - -Update metadata for an access group. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **access_group_id_or_name** (`string`, optional) The ID or name of the access group to update. Use either the unique identifier or the group's name to specify which access group you want to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier for the team on whose behalf the request is performed. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The identifier for the team, used to perform the request on its behalf. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteAccessGroup - -
- - -Deletes an access group by ID or name. - -**Parameters** - -- **group_id_or_name** (`string`, required) The ID or name of the access group to be deleted. -- **team_identifier** (`string`, optional) The identifier for the team on whose behalf the request is made. -- **team_slug** (`string`, optional) The slug for the team on whose behalf the request will be made. This identifies the team uniquely. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.ListAccessGroupMembers - -
- - -Retrieve members of a specific access group. - -**Parameters** - -- **access_group_id_or_name** (`string`, required) Specify the ID or name of the access group to list its members. -- **continuation_cursor_for_paging** (`string`, optional) Cursor used to retrieve the next page of access group members. -- **member_limit** (`integer`, optional) Specify the maximum number of access group members to return. -- **member_search_query** (`string`, optional) Search for members using their name, username, or email. -- **team_identifier** (`string`, optional) The Team identifier for which to list access group members. -- **team_slug** (`string`, optional) The unique slug of the team for which you want to list access group members. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.ListAccessGroups - -
- - -Retrieve a list of access groups within Vercel. - -**Parameters** - -- **access_groups_limit** (`integer`, optional) Specify the maximum number of access groups to be returned in the response. -- **continuation_cursor_for_next_page** (`string`, optional) A string to retrieve the next page of results using a continuation cursor. -- **max_projects_in_response** (`integer`, optional) Specify the maximum number of projects to include in the response list. -- **members_inclusion_limit** (`integer`, optional) Specify the number of members to include in the response. -- **project_id** (`string`, optional) Filter access groups by the specified project ID in Vercel. -- **search_access_groups_by_name** (`string`, optional) Provide a name or keyword to search for specific access groups. -- **team_identifier** (`string`, optional) The ID of the team for which to list access groups. Specify this to perform the request on behalf of a specific team. -- **team_slug** (`string`, optional) A string representing the Team slug to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateAccessGroup - -
- - -Create a new access group on Vercel. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_identifier** (`string`, optional) The identifier of the team on whose behalf the access group is being created. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The unique slug identifier for the team to create the access group for. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.ListAccessGroupProjects - -
- - -Retrieve a list of projects for a given access group. - -**Parameters** - -- **access_group_identifier** (`string`, required) The ID or name of the Access Group to list its projects. -- **continuation_cursor** (`string`, optional) The continuation cursor used to retrieve the next page of results in a paginated response. -- **max_project_count** (`integer`, optional) Maximum number of access group projects to return. Must be an integer. -- **team_identifier** (`string`, optional) The unique identifier for the team to perform the request on behalf of. This specifies which team's access group projects to list. -- **team_slug** (`string`, optional) The slug of the team to perform the request on behalf of. Specify to filter projects by team. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateAccessGroupProject - -
- - -Create a project within a specific access group. - -**Parameters** - -- **access_group_id_or_name** (`string`, required) Identifier or name of the access group to associate with the project. It helps specify which access group the new project will be part of. -- **project_id** (`string`, required) The unique ID of the project to be added to the access group. -- **project_role** (`string`, required) The role to be assigned to the project within the access group. Options: 'ADMIN', 'PROJECT_VIEWER', 'PROJECT_DEVELOPER'. -- **team_identifier** (`string`, optional) The unique identifier for the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The unique identifier slug for the team on whose behalf the request is made. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetAccessGroupProject - -
- - -Retrieve details of a specific access group project. - -**Parameters** - -- **access_group_id_or_name** (`string`, required) The identifier or name of the access group for the project. -- **project_id** (`string`, required) The unique identifier for the project within the access group. It is required to fetch the project details. -- **team_identifier** (`string`, optional) The identifier of the team to perform the request on behalf of. This should be a string representing the team's unique ID. -- **team_slug** (`string`, optional) The Team slug to perform the request on behalf of. Provide the specific slug associated with the team. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateAccessGroupProject - -
- - -Update an access group project in Vercel. - -**Parameters** - -- **access_group_id_or_name** (`string`, required) Specify the access group by its ID or name to target the update. -- **project_id** (`string`, required) The unique identifier for the project to update in the access group. -- **project_role** (`string`, required) Specify the project role to add to the access group. Choose from 'ADMIN', 'PROJECT_VIEWER', or 'PROJECT_DEVELOPER'. -- **team_identifier** (`string`, optional) The unique identifier for the team on whose behalf the request is made. -- **team_slug** (`string`, optional) The unique identifier for the team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteAccessGroupProject - -
- - -Delete a specified access group project on Vercel. - -**Parameters** - -- **access_group_id_or_name** (`string`, required) Enter the access group ID or name to identify the specific group for project deletion. -- **project_id** (`string`, required) The ID of the project you want to delete from the access group. -- **team_identifier** (`string`, optional) The ID of the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug of the team to perform the deletion on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RecordCacheEvents - -
- - -Record artifacts cache usage events for Vercel. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_identifier** (`string`, optional) The Team identifier to perform the request on behalf of. Used to specify which team's cache usage events are being recorded. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The Team slug to perform the request on behalf of. It identifies the specific team within Vercel. Only used when mode is 'execute'. -- **ci_environment** (`string`, optional) The continuous integration or delivery environment where this artifact is downloaded. Only used when mode is 'execute'. -- **is_interactive_shell** (`integer`, optional) Set to 1 if the client is an interactive shell, otherwise set to 0. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CheckRemoteCachingStatus - -
- - -Check the status of Remote Caching. - -**Parameters** - -- **team_identifier** (`string`, optional) The unique identifier for the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The unique slug identifier for the team on whose behalf the request is made. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DownloadCacheArtifact - -
- - -Downloads a cache artifact using its hash identifier. - -**Parameters** - -- **artifact_hash** (`string`, required) The unique hash identifier for the cache artifact to download. -- **ci_environment** (`string`, optional) Specify the continuous integration or delivery environment from which the artifact is downloaded. -- **interactive_shell_client** (`integer`, optional) Set to 1 if the client is an interactive shell; otherwise set to 0. -- **team_identifier** (`string`, optional) The Team identifier to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug of the team to perform the request on behalf of, identifying which team's artifact to download. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.QueryArtifactsInfo - -
- - -Retrieve detailed information about multiple artifacts. - -**Parameters** - -- **artifact_hashes** (`array[string]`, required) An array of artifact hashes to query information for. -- **team_identifier** (`string`, optional) The identifier of the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug identifying the team for which the request is performed. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateNewDeploymentCheck - -
- - -Create a new deployment check using Vercel API. - -**Parameters** - -- **block_deployment_on_failure** (`boolean`, required) Indicates if the check should block a deployment from succeeding. -- **check_name** (`string`, required) The name of the check being created. This is required to identify the check purpose. -- **deployment_id** (`string`, required) The unique identifier of the deployment to create the check for. -- **allow_rerun_request** (`boolean`, optional) Allow users to request a rerun of the check if it fails. Use a boolean value. -- **details_url** (`string`, optional) A URL that provides further details about the check. Expected format is a valid URL string. -- **external_identifier** (`string`, optional) A unique identifier used as an external reference for the check. -- **page_path_to_check** (`string`, optional) Specify the path of the page that is being checked. This should be a string value representing the specific page path for the deployment check. -- **team_identifier** (`string`, optional) The unique identifier used to perform the request on behalf of a team. -- **team_slug** (`string`, optional) The slug (unique identifier) of the team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.ListDeploymentChecks - -
- - -List all checks for a specific deployment. - -**Parameters** - -- **deployment_id** (`string`, required) The ID of the deployment to retrieve checks for. -- **team_identifier** (`string`, optional) The ID of the team to perform the request for. This identifies which team's context is used. -- **team_slug** (`string`, optional) The Team slug used to perform the request. This identifies the team under which the deployment was made. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetDeploymentCheckDetails - -
- - -Retrieve details for a specific deployment check. - -**Parameters** - -- **check_identifier** (`string`, required) The unique identifier of the check to fetch details for. -- **deployment_id** (`string`, required) The ID of the deployment for which the check details are required. -- **team_id** (`string`, optional) The identifier for the team on whose behalf the request is performed. -- **team_slug** (`string`, optional) The slug identifier for the team to perform the request on behalf of. It uniquely represents the team within the system. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateExistingCheck - -
- - -Updates an existing deployment check. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **deployment_id** (`string`, optional) The identifier for the deployment to update the check for. Ensure it is a valid string. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **check_identifier** (`string`, optional) The unique identifier of the check to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The identifier of the Team to perform the request on behalf of. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug of the team to perform the request on behalf of. This identifies the team within Vercel. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RerequestCheck - -
- - -Retries a failed deployment check. - -**Parameters** - -- **check_to_rerun_id** (`string`, required) The ID of the check you want to rerun. This identifies the specific failed check to retry. -- **deployment_id** (`string`, required) The ID of the deployment for which the check needs to be rerun. This specifies the which specific deployment's check is to be retried. -- **mark_check_as_running** (`boolean`, optional) Mark the check as running if set to true when re-requested. -- **team_identifier** (`string`, optional) The Team identifier to perform the request on behalf of. It specifies which team's context the request should be executed in. -- **team_slug** (`string`, optional) The identifier for the team to perform the check rerequest on behalf of. Use the team's slug format. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateProjectDataCache - -
- - -Update the data cache for a Vercel project. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the Vercel project to update the data cache. -- **disable_data_cache** (`boolean`, optional) Set to true to disable the project's data cache, or false to enable it. Default is false. -- **team_identifier** (`string`, optional) The unique Team ID to perform the request on behalf of. Required for targeted updates. -- **team_slug** (`string`, optional) The Team slug to perform the request on behalf of. Use this to specify which team's project to update. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.FetchDeploymentLogs - -
- - -Retrieve build logs for a specific deployment by ID. - -**Parameters** - -- **deployment_identifier_or_hostname** (`string`, required) The unique identifier or hostname of the deployment to fetch logs for. -- **build_event_delimiter** (`number`, optional) Specify the delimiter type for separating logged events. Use '0' for no delimiter and '1' for an alternative separation method. -- **deployment_build_id** (`string`, optional) The unique identifier for the deployment build for which logs are to be retrieved. -- **enable_live_streaming** (`number`, optional) Set to '1' to enable live streaming of events as they happen. Use '0' to disable live streaming. -- **event_order** (`string`, optional) Specifies the order of returned events by timestamp. Use 'forward' for chronological order or 'backward' for reverse order. -- **fetch_until_timestamp** (`number`, optional) Timestamp up to which the build logs should be retrieved. -- **filter_by_status_code** (`string`, optional) Specify the HTTP status code range to filter deployment events. -- **include_builds** (`number`, optional) Specify whether to include build events (1) or not (0) in the response. -- **maximum_events_to_return** (`number`, optional) Specify the max number of events to return. Use `-1` for all available logs. -- **start_timestamp_for_logs** (`number`, optional) Timestamp from which to start retrieving build logs. Provide in milliseconds. -- **team_identifier** (`string`, optional) Identifies the team on whose behalf the request is performed. -- **team_slug** (`string`, optional) The unique identifier (slug) of the Team for which the request is made. Used to specify the team context. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateIntegrationDeployment - -
- - -Update a deployment integration action. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **deployment_id** (`string`, optional) The unique identifier for the deployment to update. This is required to specify which deployment's integration action should be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **integration_configuration_id** (`string`, optional) The ID of the integration configuration to update. This is required to specify which integration setup the action applies to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **resource_id** (`string`, optional) The unique identifier for the resource to be updated in the deployment integration. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **deployment_action** (`string`, optional) Specifies the action to be taken for the deployment integration. Expected as a descriptive string indicating the action type. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetDeploymentInfo - -
- - -Retrieve deployment information by ID or URL. - -**Parameters** - -- **deployment_id_or_url** (`string`, required) The unique identifier or hostname of the deployment to retrieve details for. -- **include_git_repo_information** (`string`, optional) Set to 'true' to include Git repository details or 'false' to exclude them. -- **team_identifier** (`string`, optional) The unique identifier for the team on whose behalf the request is made. -- **team_slug** (`string`, optional) The Team slug for performing the request on behalf of that team. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateVercelDeployment - -
- - -Create a new deployment on Vercel. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **force_new_deployment** (`string`, optional) Set to 'true' to force a new deployment even if a similar one exists. Only used when mode is 'execute'. -- **skip_framework_detection_confirmation** (`string`, optional) Set to 'true' to skip framework detection and avoid confirmation request failures. Only used when mode is 'execute'. -- **team_identifier** (`string`, optional) The Team identifier to perform the request on behalf of for creating a deployment on Vercel. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug identifying the team to perform the deployment on behalf of. This is essential for specifying the target team for the deployment request. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CancelDeployment - -
- - -Cancel a currently building deployment. - -**Parameters** - -- **deployment_id** (`string`, required) The unique identifier of the deployment to cancel. -- **team_identifier** (`string`, optional) The Team identifier to perform the request on behalf of when canceling a deployment. -- **team_slug** (`string`, optional) The Team slug for which the deployment cancellation should be performed. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.PurchaseDomain - -
- - -Facilitates the purchase of a specified domain. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_identifier** (`string`, optional) The unique identifier for the team to perform the domain purchase request. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug representing the team to perform the purchase on behalf of. This identifies the team within Vercel. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetDomainPrice - -
- - -Retrieve domain price and purchase period details. - -**Parameters** - -- **domain_name** (`string`, required) The domain name to check the purchase price for. -- **domain_status_for_pricing** (`string`, optional) Specifies the domain status ('new', 'renewal', 'transfer', 'redemption') to check the price for. -- **team_identifier** (`string`, optional) The Team identifier for executing the request on behalf of a specific team. This is usually a unique string assigned to the team. -- **team_slug_for_request** (`string`, optional) The slug identifier of the team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CheckDomainAvailability - -
- - -Check if a domain name is available for purchase. - -**Parameters** - -- **domain_name** (`string`, required) The domain name you want to check for purchase availability. -- **team_identifier** (`string`, optional) The identifier of the Team on whose behalf the request is performed. -- **team_slug** (`string`, optional) The slug for the team or organization on whose behalf the request is performed. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetDnsRecords - -
- - -Retrieve DNS records for a specified domain name. - -**Parameters** - -- **domain_name** (`string`, required) The domain name for which to retrieve DNS records. Must be a valid domain. -- **maximum_records_to_list** (`string`, optional) Specify the maximum number of DNS records to retrieve in a single request. -- **records_created_after_timestamp** (`string`, optional) Get records created after this specified JavaScript timestamp. It filters DNS records based on the creation date. -- **team_identifier** (`string`, optional) The identifier of the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug representing the team on whose behalf the request is made. -- **until_timestamp** (`string`, optional) Retrieve records created before the specified JavaScript timestamp. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateDnsRecord - -
- - -Creates a DNS record for a domain. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **domain_name_for_dns_record** (`string`, optional) The domain for which the DNS record will be created. Must be a valid and registered domain name. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The Team identifier for performing the request. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug identifier for the team performing the DNS record creation. It should be a string that represents the team's unique slug. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateDnsRecord - -
- - -Update an existing DNS record for a domain. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **dns_record_id** (`string`, optional) The unique identifier of the DNS record to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier of the team performing the request. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug representing the Team to perform the DNS update on behalf of. It is used to specify the team context for the request. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RemoveDnsRecord - -
- - -Removes an existing DNS record from a domain. - -**Parameters** - -- **dns_record_id** (`string`, required) The unique identifier of the DNS record to be removed. Required for specifying which record to delete. -- **domain_name** (`string`, required) The domain from which the DNS record will be removed. Provide the full domain name. -- **team_identifier** (`string`, optional) The identifier for the team on whose behalf the request is performed. -- **team_slug** (`string`, optional) The slug representing the team on whose behalf the DNS record is removed. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetSupportedTlds - -
- - -Retrieve a list of TLDs supported by Vercel. - -**Parameters** - -- **team_id** (`string`, optional) The ID of the team for which to retrieve supported TLDs. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetTldPrice - -
- - -Retrieve base price for a specific TLD. - -**Parameters** - -- **top_level_domain** (`string`, required) The top-level domain (TLD) for which to retrieve the base price. Examples include 'com', 'net', 'org'. -- **registration_years** (`string`, optional) The number of years for which the TLD registration price should be calculated. Provide this as an integer representing the duration in years. -- **team_id** (`string`, optional) The ID of the team for which the TLD price data is requested. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DomainAvailabilityStatus - -
- - -Check if a domain is available for purchase. - -**Parameters** - -- **domain_name_to_check_availability** (`string`, required) The domain name to check for availability. Must be a valid and complete domain name string. -- **team_identifier** (`string`, optional) A unique identifier for the team whose domain availability is being queried. This is a string value. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.FetchDomainPrice - -
- - -Retrieve price data for a specific domain from Vercel. - -**Parameters** - -- **domain_name** (`string`, required) The domain name to check the pricing for. Provide a fully qualified domain like 'example.com'. -- **number_of_years** (`string`, optional) Specify the number of years for which the domain pricing is needed. Typically set to 1 or more. -- **team_identifier** (`string`, optional) A string representing the unique identifier of the team associated with the domain. This is required for specifying which team's domain pricing information should be retrieved. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CheckDomainAvailabilityBulk - -
- - -Check availability for multiple domains. - -**Parameters** - -- **domain_names** (`array[string]`, required) A list of domain names to check, with a maximum of 50 domains. -- **team_identifier** (`string`, optional) Unique identifier for the team or organization associated with the request. It may be required to access specific domain availability data. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetDomainAuthCode - -
- - -Retrieve the auth code for transferring a domain from Vercel. - -**Parameters** - -- **domain_name** (`string`, required) The domain name for which the auth code is being requested. It should be a valid domain registered with Vercel. -- **team_id** (`string`, optional) The ID representing the Vercel team associated with the domain. Required for accessing team-specific domains. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.PurchaseDomainVercel - -
- - -Purchase a domain with Vercel's API. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **domain_name** (`string`, optional) The domain name that you wish to purchase using Vercel's API. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_id** (`string`, optional) The unique identifier for the team under which the domain will be purchased. This is expected to be a string. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.PurchaseMultipleDomains - -
- - -Purchase multiple domains simultaneously. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_id** (`string`, optional) The unique identifier for the team under which the domains will be purchased. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.TransferDomainToVercel - -
- - -Transfer a domain to Vercel from another registrar. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **domain_name** (`string`, optional) The domain name to be transferred to Vercel. It should be a valid domain currently registered elsewhere. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier for the Vercel team requesting the domain transfer. It helps associate the domain transfer with the correct Vercel team. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CheckDomainTransferStatus - -
- - -Retrieve the transfer status of a domain. - -**Parameters** - -- **domain_name** (`string`, required) Specifies the domain name to check the transfer status for. It should be a valid domain string. -- **team_id** (`string`, optional) The unique identifier of the team requesting the domain transfer status. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RenewDomain - -
- - -Renews a domain registration through Vercel. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **domain_name** (`string`, optional) The domain name to be renewed, in string format. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier for the team that owns the domain. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateDomainAutoRenew - -
- - -Update the auto-renew setting for a domain. - -**Parameters** - -- **domain_name** (`string`, required) The domain for which you want to update the auto-renew setting. It should be a valid domain name, such as 'example.com'. -- **enable_auto_renew** (`boolean`, required) Set to true to enable auto-renewal of the domain, or false to disable it. -- **team_id** (`string`, optional) The unique identifier for the team associated with the domain. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateDomainNameservers - -
- - -Update the nameservers for a domain. - -**Parameters** - -- **domain_name** (`string`, required) The domain name to update the nameservers for. Provide the full domain, e.g., 'example.com'. -- **nameservers_list** (`array[string]`, required) A list of nameservers to set for the domain. Pass an empty list to revert to Vercel's default nameservers. -- **team_id** (`string`, optional) The unique identifier for the team to which the domain belongs. If not provided, the default team context is used. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetDomainContactInfoSchema - -
- - -Retrieve the schema for TLD-specific contact information. - -**Parameters** - -- **domain_name** (`string`, required) The domain name for which to retrieve the TLD-specific contact information schema. -- **team_id** (`string`, optional) A unique identifier for the team within Vercel. Required to retrieve domain-specific contact info. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetDomainOrderInfo - -
- - -Retrieve information about a domain order by its ID. - -**Parameters** - -- **order_id** (`string`, required) The unique ID of the domain order to retrieve information about. -- **team_id** (`string`, optional) The ID of the team associated with the domain order. This identifies the specific team within Vercel that the domain order belongs to. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.FetchDomainTransferAvailability - -
- - -Fetch a domain's transfer status or availability. - -**Parameters** - -- **domain_name** (`string`, required) The domain name to check for transfer status or availability. -- **team_identifier** (`string`, optional) The Team identifier to perform the request on behalf of. It should be a string representing the team's unique ID. -- **team_slug** (`string`, optional) The identifier slug of the team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetDomainConfiguration - -
- - -Retrieve configuration details for a specific domain. - -**Parameters** - -- **domain_name** (`string`, required) The name of the domain to retrieve configuration details for. -- **include_only_assigned_nameservers** (`string`, optional) When true, only nameservers assigned directly to the domain are included. When false, parent zone nameservers are included if no direct assignment exists. -- **project_id_or_name** (`string`, optional) The project ID or name associated with the domain, used if not yet linked to a project. -- **team_identifier** (`string`, optional) The identifier for the team to perform the request on behalf of. It specifies which team's context to use when fetching domain configurations. -- **team_slug** (`string`, optional) The Team slug used to perform the request on behalf of a specific team. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetDomainInfo - -
- - -Retrieve information on a single domain from Vercel. - -**Parameters** - -- **domain_name** (`string`, required) The name of the domain to retrieve information for. -- **team_identifier** (`string`, optional) The identifier for the team to perform the request on behalf of. Typically a unique string. -- **team_slug** (`string`, optional) The slug identifier for the team on behalf of whom the request is made. It uniquely identifies the team in Vercel. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetRegisteredDomains - -
- - -Retrieve a list of registered domains for the user or team. - -**Parameters** - -- **domains_created_since_timestamp** (`number`, optional) Get domains created after the specified JavaScript timestamp. -- **maximum_domains_to_list** (`number`, optional) The maximum number of domains to include in the list returned by the request. -- **team_id** (`string`, optional) The unique Team identifier to retrieve domains for a specific team instead of the authenticated user. -- **team_slug** (`string`, optional) The team slug used to perform the request on behalf of a specific team. -- **until_timestamp** (`number`, optional) Fetch domains created before this JavaScript timestamp. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.AddNewDomainVercel - -
- - -Add a new apex domain with Vercel for the user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_identifier** (`string`, optional) The identifier of the Team on whose behalf the request is made. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The identifier for the team to execute the request on behalf of. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateApexDomain - -
- - -Update or move the apex domain configuration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **apex_domain_name** (`string`, optional) The apex domain to update or move. Accepts a string value representing the domain name (e.g., 'example.com'). Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier for the team to perform the domain update on behalf of. This allows the request to be associated with a specific team. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug identifying the Team on whose behalf the request is made. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteVercelDomain - -
- - -Delete a domain from Vercel and remove associated aliases. - -**Parameters** - -- **domain_name** (`string`, required) The domain name to be deleted from Vercel. This action will also remove any associated aliases. -- **team_identifier** (`string`, optional) The identifier of the team to perform the domain deletion request on behalf of. -- **team_slug** (`string`, optional) The specific team slug to perform the deletion request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.InvalidateCacheByTags - -
- - -Mark cache tags as stale for revalidation in the background. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id_or_name** (`string`, optional) Specify the project ID or name for which the cache tags should be marked as stale. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_id** (`string`, optional) The Team identifier to execute the request for. Provide the team's unique ID. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The identifier (slug) for the team to perform the request on their behalf. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteCacheByTags - -
- - -Marks cache tags as deleted to revalidate associated entries. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id_or_name** (`string`, optional) The ID or name of the project associated with the cache tags to delete. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The identifier for the team on whose behalf the cache deletion request is performed. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) Specify the team slug to perform the cache deletion on behalf of a team. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetEdgeConfigs - -
- - -Fetch all Edge Configs from Vercel's service. - -**Parameters** - -- **team_identifier** (`string`, optional) Specify the Team identifier for which the Edge Configs need to be fetched. -- **team_slug** (`string`, optional) The Team slug to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateEdgeConfig - -
- - -Create a new Edge Configuration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_identifier** (`string`, optional) The identifier of the team to perform the request for. This is required to specify on whose behalf the request is made. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The Team slug that specifies the team to perform the request on behalf of. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetEdgeConfig - -
- - -Retrieve Edge Config details from Vercel. - -**Parameters** - -- **edge_config_id** (`string`, required) The unique identifier for the Edge Config to retrieve details from Vercel. -- **team_identifier** (`string`, optional) The unique identifier for the team to perform the request on behalf of in Vercel. -- **team_slug** (`string`, optional) The slug of the team to perform the request on behalf of in Vercel. This identifier is needed to specify which team's settings are being accessed. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateEdgeConfig - -
- - -Update an existing Edge Config to apply changes. - -**Parameters** - -- **edge_config_identifier** (`string`, required) The unique identifier of the Edge Config to be updated. This is required to specify which configuration should be modified. -- **edge_config_slug** (`string`, required) The unique slug identifier for the Edge Config that needs updating. -- **team_slug** (`string`, required) The slug identifying the team on whose behalf the request is performed. -- **team_identifier** (`string`, optional) The unique identifier of the team to perform the request for. Required for updating the Edge Config on behalf of a specific team. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteEdgeConfig - -
- - -Delete a Vercel Edge Config by ID. - -**Parameters** - -- **edge_config_id** (`string`, required) The unique identifier of the Edge Config to be deleted. -- **team_identifier** (`string`, optional) The unique identifier for the team on whose behalf the request is made. -- **team_slug** (`string`, optional) The slug of the team on whose behalf the request is performed. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetEdgeConfigItems - -
- - -Retrieve all items from an Edge Config. - -**Parameters** - -- **edge_config_id** (`string`, required) The ID of the Edge Config to retrieve items from. This is required to specify which Edge Config data to access. -- **team_identifier** (`string`, optional) The Team identifier to perform the request for a specific Vercel team. -- **team_slug** (`string`, optional) The slug representing the team on whose behalf the request is made. Each team has a unique slug identifier. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateEdgeConfigItems - -
- - -Batch update Edge Config Items efficiently. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **edge_config_identifier** (`string`, optional) The identifier for the specific Edge Config to update in the batch request. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier of the Team on whose behalf the request is made. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The unique slug of the team to perform the request on behalf of. It identifies the team in a URL-friendly format. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetEdgeConfigSchema - -
- - -Retrieve the schema of an Edge Config. - -**Parameters** - -- **edge_config_id** (`string`, required) The identifier for the specific Edge Config to retrieve its schema. It is required to specify which configuration's schema you want to query. -- **team_identifier** (`string`, optional) The unique identifier for the team to make requests on their behalf. -- **team_slug** (`string`, optional) The slug of the team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateEdgeConfigSchema - -
- - -Update an Edge Config's schema to modify its structure. - -**Parameters** - -- **edge_config_identifier** (`string`, required) The unique identifier for the Edge Config to update its schema. -- **edge_config_schema_definition** (`string`, required) JSON string defining the updated structure and settings of the Edge Config. -- **enable_dry_run** (`string`, optional) Set to true to simulate the update without applying changes. Useful for testing. -- **team_identifier** (`string`, optional) The unique ID of the team on whose behalf the request will be made. -- **team_slug** (`string`, optional) The Team slug to perform the request on behalf of. It identifies the specific team for the operation. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteEdgeConfigSchema - -
- - -Deletes an existing Edge Config schema. - -**Parameters** - -- **edge_config_id** (`string`, required) The unique identifier for the specific Edge Config schema to be deleted. -- **team_identifier** (`string`, optional) The identifier of the team on whose behalf the request is made. -- **team_slug** (`string`, optional) The slug representing the team on whose behalf the request is performed. It uniquely identifies the team within Vercel. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetEdgeConfigItem - -
- - -Retrieve a specific Edge Config Item by its identifiers. - -**Parameters** - -- **edge_config_id** (`string`, required) The ID of the Edge Config to retrieve a specific item from. -- **edge_config_item_key** (`string`, required) The key of the specific Edge Config Item to retrieve. -- **team_identifier** (`string`, optional) The ID of the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug of the team for which the Edge Config Item is requested. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetEdgeConfigTokens - -
- - -Retrieve all tokens of a specific Edge Config. - -**Parameters** - -- **edge_config_id** (`string`, required) A string representing the unique identifier of the Edge Config to retrieve tokens for. This ID is necessary to specify which Edge Config's tokens are being accessed. -- **team_identifier** (`string`, optional) The ID of the team to perform the request on behalf of. It identifies which team's Edge Config tokens to retrieve. -- **team_slug** (`string`, optional) Slug of the team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteEdgeConfigTokens - -
- - -Delete tokens from an existing Edge Config. - -**Parameters** - -- **edge_config_id** (`string`, required) The unique identifier for the Edge Config from which tokens will be deleted. Required for specifying the target Edge Config. -- **tokens_to_delete** (`array[string]`, required) A list of token identifiers to be deleted from the Edge Config. Each token should be a string. -- **team_identifier** (`string`, optional) The unique identifier of the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The Team slug representing the team on whose behalf the request is performed. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetEdgeConfigTokenInfo - -
- - -Retrieve metadata about an Edge Config token. - -**Parameters** - -- **edge_config_id** (`string`, required) The identifier for the Edge Config to retrieve metadata for. This is required to specify which configuration token's information is needed. -- **edge_config_token** (`string`, required) The token used to obtain metadata for a specific Edge Config. -- **team_identifier** (`string`, optional) The identifier of the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The Team slug for performing the request on behalf of a specific team. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.AddEdgeConfigToken - -
- - -Adds a token to an existing Edge Config. - -**Parameters** - -- **edge_config_id** (`string`, required) The unique identifier for the Edge Config to which the token will be added. -- **token_label** (`string`, required) A descriptive label for the token being added to the Edge Config. -- **team_identifier** (`string`, optional) The identifier for the team on whose behalf the request is performed. -- **team_slug** (`string`, optional) The slug identifying the Team on whose behalf the request is made. This is used for specifying the target team within Vercel. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RetrieveEdgeConfigBackup - -
- - -Retrieve a specific Edge Config version from backup storage. - -**Parameters** - -- **edge_config_backup_version_id** (`string`, required) The unique identifier for the backup version of the Edge Config to retrieve. -- **edge_config_id** (`string`, required) The ID of the Edge Config to retrieve from backup storage. -- **team_identifier** (`string`, optional) The unique identifier of the Team to perform the request on behalf of. -- **team_slug** (`string`, optional) The team's unique slug to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetEdgeConfigBackups - -
- - -Retrieve backups of an Edge Config. - -**Parameters** - -- **edge_config_id** (`string`, required) The unique identifier for the Edge Config whose backups you want to retrieve. -- **backup_limit** (`number`, optional) The maximum number of Edge Config backups to return. This is useful for paginating results. -- **include_metadata** (`string`, optional) Indicate if metadata should be included in the response. Use 'true' to include. -- **next_page_token** (`string`, optional) A token for fetching the next page of results if pagination is needed. -- **team_identifier** (`string`, optional) The identifier for the team on whose behalf the request is made. -- **team_slug** (`string`, optional) The team slug to perform the request on behalf of. It identifies the specific team in Vercel. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.ListUserEvents - -
- - -Fetches a list of user-generated events on Vercel. - -**Parameters** - -- **deprecated_user_id** (`string`, optional) Deprecated. Use 'principal_id' instead. If both 'principal_id' and 'deprecated_user_id' exist, 'principal_id' will be used. -- **end_time_filter** (`string`, optional) Timestamp to filter events created until this time. -- **event_types_filter** (`string`, optional) Comma-delimited list of event types to filter the results by. -- **filter_by_principal_id** (`string`, optional) Filter events generated by a specific principal when retrieving events for a Team. -- **include_event_payload** (`string`, optional) Set to 'true' to include the 'payload' field in each event response. -- **include_items_since_timestamp** (`string`, optional) Timestamp to only include items created since then. Use ISO 8601 format. -- **maximum_items_to_return** (`number`, optional) Maximum number of items that can be returned from the request. -- **project_ids_filter** (`string`, optional) Comma-separated list of project IDs to filter the events by. -- **team_identifier** (`string`, optional) Specify the Team ID to retrieve events related to that team. -- **team_slug** (`string`, optional) The Team slug to perform the request on behalf of. Use this to specify which team's events to retrieve. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RetrieveBillingPlans - -
- - -Retrieve billing plans for a specific integration and product. - -**Parameters** - -- **integration_identifier_or_slug** (`string`, required) The unique identifier or slug for the integration to retrieve billing plans for. Use the specific key related to the integration. -- **product_id_or_slug** (`string`, required) The unique identifier or slug for the product to retrieve billing plans. -- **additional_metadata** (`string`, optional) Optional metadata for the request, provided as a string. -- **team_identifier** (`string`, optional) The identifier for the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The unique team slug used to identify which team's context the request should be performed in. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.ConnectIntegrationResourceToProject - -
- - -Connect an integration resource to a Vercel project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_configuration_id** (`string`, optional) The identifier for the integration configuration to be connected to the Vercel project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **resource_id** (`string`, optional) The ID of the integration resource to connect to the Vercel project. This is required to establish the link. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The identifier of the team to perform the request on behalf of. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The unique team slug used to perform the request on behalf of a specific team in Vercel. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateIntegrationInstallation - -
- - -Updates an integration installation configuration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_configuration_id** (`string`, optional) The ID of the integration configuration to update. This should be a string identifying the specific installation. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.FetchAccountInfo - -
- - -Fetch the best account or user's contact info. - -**Parameters** - -- **integration_configuration_id** (`string`, required) The unique identifier for the integration configuration. Required to fetch the user's account info. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetMemberRoleInfo - -
- - -Retrieve member role and details for a specific member ID. - -**Parameters** - -- **integration_configuration_id** (`string`, required) A unique identifier for the integration configuration. Required to specify which integration to retrieve member details from. -- **member_id** (`string`, required) The ID of the member to retrieve role and details for. This corresponds to the "user_id" claim in the SSO OIDC token. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.NotifyVercelOfUpdates - -
- - -Send update notifications to Vercel for installations or resources. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_configuration_id** (`string`, optional) The ID of the integration configuration. It links the notification to the specific Vercel installation or resource. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetIntegrationResources - -
- - -Retrieve all resources for a given installation ID. - -**Parameters** - -- **installation_id** (`string`, required) The unique identifier of the integration installation to fetch resources for. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.FetchIntegrationResource - -
- - -Fetch a resource using its partner ID. - -**Parameters** - -- **integration_configuration_id** (`string`, required) The ID of the specific installation to which the resource belongs. -- **third_party_resource_id** (`string`, required) The ID provided by the third-party provider for the specific resource. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteIntegrationResource - -
- - -Delete a resource from an integration by ID. - -**Parameters** - -- **integration_installation_id** (`string`, required) The ID of the installation to delete the resource from. -- **resource_id** (`string`, required) The ID of the resource to be deleted. Required for identifying the specific resource within the integration. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.ImportResourceToVercel - -
- - -Import or synchronize a resource to Vercel. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_configuration_id** (`string`, optional) The unique identifier for the integration configuration in Vercel. Required to specify which configuration to use when importing the resource. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **resource_identifier** (`string`, optional) The unique identifier for the resource to be imported or synchronized with Vercel. This ID is used to match the resource between the partner's system and Vercel's system. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateResource - -
- - -Update an existing resource with new information. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_configuration_id** (`string`, optional) The unique identifier for the integration configuration to update. Required for identifying which integration configuration is being modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **resource_id** (`string`, optional) The unique identifier of the resource to be updated. This is required to specify which resource you are targeting for updates. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.SubmitBillingData - -
- - -Submit billing and usage data to the server. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_configuration_id** (`string`, optional) A string representing the unique identifier for the integration configuration. This is required to submit billing data. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.SubmitInvoiceToVercel - -
- - -Submit an invoice to Vercel's billing system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_configuration_id** (`string`, optional) The unique ID for the Vercel integration configuration. This links the invoice submission to the correct integration setup in Vercel. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetInvoiceDetails - -
- - -Retrieve invoice details and status by ID. - -**Parameters** - -- **integration_configuration_id** (`string`, required) The unique identifier for the integration configuration. Required to specify the configuration context for the invoice retrieval. -- **invoice_id** (`string`, required) The unique identifier of the invoice to retrieve details and status for. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RequestVercelInvoiceRefund - -
- - -Request a refund for an invoice in Vercel. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **vercel_integration_configuration_id** (`string`, optional) The unique identifier for the Vercel integration configuration related to the invoice. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **invoice_id** (`string`, optional) The unique identifier for the invoice for which the refund is requested. This ID is obtained from the invoice creation process. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.SubmitPrepaymentBalances - -
- - -Submit prepayment balances to Vercel for billing. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_configuration_id** (`string`, optional) The unique identifier for the integration configuration. Use the ID provided during the integration setup. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateResourceSecrets - -
- - -Updates the secrets of a specified resource. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_configuration_id** (`string`, optional) The unique identifier for the integration configuration associated with the resource. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **integration_product_id_or_slug** (`string`, optional) Specify the product ID or slug to identify the integration product for the resource update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **resource_id** (`string`, optional) The unique identifier for the resource whose secrets are being updated. This is required to specify which resource's secrets need modification. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateSecretsById - -
- - -Update the secrets of a Vercel resource by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_configuration_id** (`string`, optional) The ID of the integration configuration. This identifies the specific configuration in Vercel to update secrets for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **resource_id** (`string`, optional) The unique identifier of the Vercel resource whose secrets are to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RetrieveIntegrationConfigurations - -
- - -Retrieve all configurations for an authenticated integration. - -**Parameters** - -- **configuration_view_type** (`string`, required) Specify 'account' to view all configurations or 'project' to exclude configurations generated from the authorization flow. -- **installation_type** (`string`, optional) Specifies the installation type. Options are 'marketplace' or 'external'. -- **integration_id** (`string`, optional) The ID or slug of the integration to retrieve configurations for. -- **team_identifier** (`string`, optional) Specifies the Team ID to perform the request on behalf of. -- **team_slug** (`string`, optional) The Team slug to perform the request on behalf of when retrieving configurations. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetIntegrationConfiguration - -
- - -Retrieve configuration details by ID. - -**Parameters** - -- **configuration_id** (`string`, required) ID of the configuration to retrieve. The user or team must own this configuration. -- **team_identifier** (`string`, optional) The identifier for the team on whose behalf the request is made. -- **team_slug** (`string`, optional) The unique team slug to perform the request on behalf of a specific team. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RemoveVercelConfiguration - -
- - -Delete a Vercel configuration by ID. - -**Parameters** - -- **configuration_id** (`string`, required) The unique identifier of the Vercel configuration to be deleted. -- **team_identifier** (`string`, optional) The identifier for the team on behalf of which the configuration is removed. -- **team_slug** (`string`, optional) The team slug representing the Vercel team to perform the action on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.ListIntegrationConfigurationProducts - -
- - -Retrieve products for a specific integration configuration. - -**Parameters** - -- **integration_configuration_id** (`string`, required) ID of the specific integration configuration to list available products for. -- **team_identifier** (`string`, optional) The Team identifier to perform the request on behalf of. It specifies which team's configuration products to list. -- **team_slug** (`string`, optional) The slug of the team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.ExchangeSsoToken - -
- - -Exchange OAuth code for an OIDC token to authenticate users. - -**Parameters** - -- **authorization_code** (`string`, required) The sensitive OAuth authorization code received from Vercel for the SSO token exchange process. -- **integration_client_id** (`string`, required) The unique client ID for the integration, required for authentication. -- **integration_client_secret** (`string`, required) The secret key for the integration client, used for authentication. -- **authorization_state** (`string`, optional) The state received from the initialization request for security validation. -- **integration_redirect_uri** (`string`, optional) The URL where the user will be redirected after authentication. -- **sso_grant_type** (`string`, optional) Specifies the grant type as 'authorization_code' for OAuth process. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RetrieveIntegrationLogDrains - -
- - -Retrieve all integration log drains for the user or team. - -**Parameters** - -- **team_identifier** (`string`, optional) The identifier for the Team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug of the team to perform the request on behalf of. Used to specify which team's log drains to retrieve. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateIntegrationLogDrain - -
- - -Sets up an Integration log drain for Vercel. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_identifier** (`string`, optional) The Team identifier for performing the request on behalf of a specific team in Vercel. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug representing the team to perform the request on behalf of. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteIntegrationLogDrain - -
- - -Delete an Integration log drain by ID. - -**Parameters** - -- **log_drain_id** (`string`, required) The ID of the log drain to be deleted. This identifies the specific log drain for removal. -- **team_identifier** (`string`, optional) The identifier of the Team on whose behalf the request is made. -- **team_slug** (`string`, optional) The slug of the team on whose behalf the request is performed. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetDeploymentRuntimeLogs - -
- - -Get logs for a specific deployment's runtime. - -**Parameters** - -- **deployment_id** (`string`, required) The unique identifier for the deployment whose runtime logs are to be retrieved. -- **project_id** (`string`, required) The unique identifier for the project related to the deployment. This is necessary to retrieve the correct runtime logs. -- **team_identifier** (`string`, optional) The unique identifier for the team to make the request on behalf of. -- **team_slug** (`string`, optional) The unique slug representing the team on whose behalf the request is made. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateExperimentationItems - -
- - -Create one or multiple experimentation items. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_configuration_id** (`string`, optional) The ID of the integration configuration for which to create experimentation items. This ties the items to a specific setup or environment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **resource_identifier** (`string`, optional) The unique identifier of the resource to associate with the experimentation items. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateExperimentationItem - -
- - -Update an existing experimentation item. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_configuration_id** (`string`, optional) The ID of the integration configuration to be updated. This identifies which configuration is being patched. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **resource_identifier** (`string`, optional) The unique identifier of the experimentation resource to update. Provides context for which item needs modification. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **experiment_item_id** (`string`, optional) The unique identifier for the experimentation item to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteExperimentationItem - -
- - -Delete an existing experimentation item. - -**Parameters** - -- **experiment_item_id** (`string`, required) The unique identifier for the experimentation item to be deleted. -- **integration_configuration_id** (`string`, required) The ID of the integration configuration to identify the correct setup. -- **resource_id** (`string`, required) The unique identifier for the resource containing the item to be deleted. This is required to specify which resource the item belongs to. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.PushEdgeConfig - -
- - -Push configuration data to Edge Config for syncing. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **integration_configuration_id** (`string`, optional) The unique identifier for the integration configuration. Use this to specify which configuration to push to Edge Config. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **resource_identifier** (`string`, optional) The ID of the resource for the configuration data to be pushed. Required for identifying the target Edge Config. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.ListProjectMembers - -
- - -Retrieve all members of a specified project on Vercel. - -**Parameters** - -- **project_id_or_name** (`string`, required) The ID or name of the project to list members for. -- **added_since_timestamp** (`integer`, optional) Timestamp in milliseconds to include members added since this time. -- **end_time_timestamp** (`integer`, optional) The timestamp in milliseconds to include project members added until this time. -- **member_limit** (`integer`, optional) Specify the maximum number of project members to return. Provide an integer value. -- **search_project_members** (`string`, optional) Search for project members by name, username, or email. -- **team_identifier** (`string`, optional) The unique identifier of the team to perform the request on behalf of. This should be a string. -- **team_slug** (`string`, optional) The Team slug to perform the request on behalf of, identifying the specific team associated with the project. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.AddProjectMember - -
- - -Add a new member to a Vercel project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id_or_name** (`string`, optional) The ID or name of the Vercel project to which a new member will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier of the Team to perform the request on behalf of. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug identifying the team for performing the request. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RemoveProjectMember - -
- - -Removes a member from a specific project. - -**Parameters** - -- **project_id_or_name** (`string`, required) The ID or name of the project from which the member will be removed. -- **user_id** (`string`, required) The unique user ID of the member to be removed from the project. -- **team_identifier** (`string`, optional) The identifier for the team on whose behalf the request is made. This should be a string. -- **team_slug** (`string`, optional) The slug used to identify the Team for which the request is being made. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RetrieveProjectsList - -
- - -Retrieve the list of user's or team's projects. - -**Parameters** - -- **exclude_repositories** (`string`, optional) Comma-separated list of repository names to exclude from the results. -- **filter_by_edge_config_id** (`string`, optional) Filter results by connected Edge Config ID. Provide the ID as a string to retrieve projects linked to this specific config. -- **filter_by_edge_config_token_id** (`string`, optional) Filter results by the connected Edge Config Token ID. Provide the specific token ID to refine project search. -- **filter_by_elastic_concurrency** (`string`, optional) Filter projects by elastic concurrency status. Use '1' for enabled or '0' for disabled. -- **filter_by_repo** (`string`, optional) Filter the project results by the specified repository name, also used for project count. -- **filter_by_repository_id** (`string`, optional) Filter the project results by specifying the Repository ID. -- **filter_by_static_ips_enabled** (`string`, optional) Set to '1' to filter projects with Static IPs enabled, '0' otherwise. -- **include_deprecated_projects** (`boolean`, optional) Include deprecated projects in the results when set to True. -- **max_projects_returned** (`string`, optional) Specifies the maximum number of projects to return in the list. -- **repository_url_filter** (`string`, optional) URL to filter projects associated with a specific repository. -- **require_git_fork_authorization** (`string`, optional) Set to '1' to require authorization for Git fork PRs before deployment, or '0' to disable. -- **search_by_project_name** (`string`, optional) Search for projects using a keyword or term in the name field. -- **team_identifier** (`string`, optional) The ID of the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The team slug to perform the request on behalf of, representing a specific team within Vercel. -- **updated_after** (`string`, optional) Filter projects updated after the specified timestamp or using a continuation token. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateNewProject - -
- - -Create a new project with specified configurations. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_identifier** (`string`, optional) The identifier of the team on whose behalf the project will be created. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug representing the Team to perform the request on behalf of. It should be a string identifier. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetProjectInfo - -
- - -Retrieve specific project details using project ID or name. - -**Parameters** - -- **project_identifier_or_name** (`string`, required) The unique project identifier or the project name to retrieve details. -- **team_identifier** (`string`, optional) The unique identifier for the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The unique slug representing the team on whose behalf the request is performed. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateProjectDetails - -
- - -Update a project's fields using its name or ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id_or_name** (`string`, optional) The unique identifier or name of the Vercel project to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier of the team on whose behalf the request is made. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug of the team on whose behalf the request is made. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteProject - -
- - -Delete a Vercel project by ID or name. - -**Parameters** - -- **project_identifier_or_name** (`string`, required) The unique project identifier or the project name to specify which project to delete. -- **team_identifier** (`string`, optional) The unique identifier of the team to perform the project deletion. -- **team_slug** (`string`, optional) The slug representing the team to execute the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateProjectNetworkLinks - -
- - -Update project connections to shared Secure Compute networks. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier_or_name** (`string`, optional) Specify the unique project identifier or project name for the network connection update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The identifier for the team on whose behalf the request is made. This is required to specify the context of the update. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The unique slug of the team that this request should be performed on behalf of. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateCustomEnvironment - -
- - -Create a custom environment for your Vercel project. - -**Parameters** - -- **project_unique_identifier_or_name** (`string`, required) The unique project identifier or project name for which the custom environment is being created. -- **branch_matcher_type** (`string`, optional) Specifies the type of branch matcher: 'equals', 'startsWith', or 'endsWith'. -- **copy_environment_variables_from** (`string`, optional) Specify the source environment to copy variables from. This is optional. -- **custom_environment_slug** (`string`, optional) Specify the slug for the new custom environment. It cannot be 'Production' or 'Preview'. -- **environment_description** (`string`, optional) Optional description for the custom environment being created. -- **git_branch_name_pattern** (`string`, optional) Git branch name or part of it to match with the custom environment. -- **team_identifier** (`string`, optional) The identifier of the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug of the team to perform the request on behalf of. It is required to specify the unique team for the custom environment. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetCustomProjectEnvironments - -
- - -Retrieve custom environments for a specified project. - -**Parameters** - -- **project_id_or_name** (`string`, required) The unique identifier or name of the project to retrieve custom environments. -- **git_branch_name** (`string`, optional) Specify the git branch to fetch custom environments from. This identifies the branch to retrieve environments for. -- **team_identifier** (`string`, optional) The identifier for the Team to perform the request on behalf of. Expected as a string. -- **team_slug** (`string`, optional) The slug of the team to perform the request on behalf of. This identifies the specific team related to the project. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RetrieveCustomEnvironment - -
- - -Retrieve custom environment details for a project. - -**Parameters** - -- **custom_environment_identifier** (`string`, required) The unique identifier for a custom environment within the project, excluding 'Production' or 'Preview'. -- **project_identifier_or_name** (`string`, required) The unique project identifier or the project's name to retrieve details for. -- **team_identifier** (`string`, optional) The unique Team identifier used to perform the request on behalf of a specified team. -- **team_slug** (`string`, optional) The Team slug used to perform the request. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateCustomEnvironment - -
- - -Update a custom environment for a Vercel project. - -**Parameters** - -- **custom_environment_id** (`string`, required) The unique identifier for the custom environment within the project. -- **project_identifier_or_name** (`string`, required) The unique project identifier or project name for the custom environment. -- **branch_matcher_type** (`string`, optional) Specifies the branch matcher type: 'equals', 'startsWith', or 'endsWith'. -- **branch_name_pattern** (`string`, optional) Specify a portion or full Git branch name for matching. Used to identify branches in custom environments. -- **custom_environment_description** (`string`, optional) Optional description of the custom environment to be updated. -- **custom_environment_slug** (`string`, optional) Slug of the custom environment to update. Must not be 'Production' or 'Preview'. -- **team_identifier** (`string`, optional) The identifier of the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug of the team to perform the update on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RemoveCustomEnvironment - -
- - -Remove a specified custom environment from a project. - -**Parameters** - -- **custom_environment_identifier** (`string`, required) The unique identifier for the custom environment within the project to be removed. -- **project_identifier_or_name** (`string`, required) The unique project identifier or the project name to target the environment removal. -- **delete_unassigned_environment_variables** (`boolean`, optional) Delete environment variables that are not assigned to any environments when set to true. -- **team_identifier** (`string`, optional) The identifier for the team to make the request on behalf of. -- **team_slug** (`string`, optional) The slug representing the team on whose behalf to perform the request. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RetrieveProjectDomains - -
- - -Retrieve domains linked to a specific project. - -**Parameters** - -- **project_id_or_name** (`string`, required) Specify the unique project identifier or the project name. -- **created_before_timestamp** (`number`, optional) Get domains created before this JavaScript timestamp for filtering results. -- **custom_environment_id** (`string`, optional) The unique custom environment identifier within the project. -- **domains_created_since_timestamp** (`number`, optional) Get domains created after this JavaScript timestamp. -- **domains_sort_order** (`string`, optional) Sort order for domains based on creation date. -- **filter_by_git_branch** (`string`, optional) Specify the branch to filter domains associated with that branch. -- **filter_by_redirect_target** (`string`, optional) Specify the redirect target to filter domains. Useful for targeting specific redirections. -- **filter_by_verification_status** (`string`, optional) Filter domains by their verification status (e.g., verified, unverified). -- **filter_production_domains** (`string`, optional) Set to 'true' to filter only production domains; otherwise, returns all. -- **filter_target_domain** (`string`, optional) Specify 'production' or 'preview' to filter domains based on their target environment. -- **include_redirect_domains** (`string`, optional) Specify whether to include redirect project domains. Use "true" to include (default), "false" to exclude. -- **max_domains_to_list** (`number`, optional) The maximum number of domains to list in the response, with a maximum value of 100. -- **team_identifier** (`string`, optional) The unique identifier for the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug representing the team on whose behalf the request is made. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.FetchProjectDomain - -
- - -Fetch domain details for a specific project. - -**Parameters** - -- **project_domain_name** (`string`, required) The name of the project's domain to fetch details for. -- **project_id_or_name** (`string`, required) The unique project identifier or the project name for fetching domain details. -- **team_identifier** (`string`, optional) The Team identifier to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug of the team on whose behalf the request is made. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateProjectDomainConfig - -
- - -Update a project's domain configuration. - -**Parameters** - -- **project_domain_name** (`string`, required) The project domain name to be updated. Example: 'example.com'. -- **project_identifier_or_name** (`string`, required) The unique project identifier or the project name used to update domain configuration. -- **linked_git_branch** (`string`, optional) The Git branch to associate with the project domain. -- **redirect_status_code** (`integer`, optional) HTTP status code for the domain redirect. Acceptable values are 301, 302, 307, 308, or None if no redirect is required. -- **redirect_target_domain** (`string`, optional) Specify the target destination domain for the redirect of a project domain. -- **team_identifier** (`string`, optional) The identifier for the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug identifier for the team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RemoveProjectDomain - -
- - -Removes a domain from a specified project. - -**Parameters** - -- **project_domain_name** (`string`, required) The domain name of the project to be removed. -- **project_id_or_name** (`string`, required) The unique project identifier or name to specify which project's domain is to be removed. -- **remove_redirects** (`boolean`, optional) Set to true to remove all domains from the project that redirect to the domain being removed. -- **team_identifier** (`string`, optional) The identifier for the team on whose behalf the request is performed. -- **team_slug** (`string`, optional) The slug identifier of the team to perform the request on behalf of. Used to specify which team's project domain should be removed. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.AddProjectDomain - -
- - -Add a domain to a specified Vercel project. - -**Parameters** - -- **project_domain_name** (`string`, required) The domain name to be added to the specified Vercel project. -- **project_identifier_or_name** (`string`, required) The unique identifier or name of the project to which the domain will be added. -- **custom_environment_id** (`string`, optional) The unique custom environment identifier within the project. -- **git_branch_to_link_domain** (`string`, optional) The Git branch to associate with the project domain when adding it to a Vercel project. This allows the domain to be tied to a specific branch in the repository. -- **redirect_status_code** (`integer`, optional) HTTP status code for redirecting the domain. Options are: 301, 302, 307, 308, or None. -- **redirect_target_domain** (`string`, optional) Specify the target destination domain to redirect to. -- **team_identifier** (`string`, optional) The identifier of the team for which the request is made. This ensures the request is executed on behalf of the specified team. -- **team_slug** (`string`, optional) The slug of the team to perform the request on behalf of. This identifies the team context for the domain addition. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.MoveProjectDomain - -
- - -Transfer a domain from one project to another. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id_or_name** (`string`, optional) Provide the unique project identifier or the project name for the domain transfer. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_domain_name** (`string`, optional) The domain name of the project to be moved to another project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The identifier for the team on whose behalf the request is made. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug for the team on whose behalf the request is made. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.VerifyProjectDomain - -
- - -Verify the status of a project domain's verification challenge. - -**Parameters** - -- **project_id_or_name** (`string`, required) The unique project identifier or the project name to verify the domain for. -- **verify_domain_name** (`string`, required) The domain name you want to verify for the project. -- **team_identifier** (`string`, optional) The Team identifier to perform the request on behalf of. Provide as a string. -- **team_slug** (`string`, optional) The Team slug used to perform the verification request on behalf of a specific team. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetProjectEnvironmentVariables - -
- - -Retrieve environment variables for a specified project. - -**Parameters** - -- **project_id_or_name** (`string`, required) The unique identifier or name of the project to retrieve environment variables for. -- **caller_source** (`string`, optional) Specify the source making the API call. -- **custom_environment_id** (`string`, optional) The unique custom environment identifier within the project. Use this to specify a specific custom environment. -- **custom_environment_slug** (`string`, optional) The custom environment slug (name) within the project to filter specific settings. -- **decrypt_values** (`string`, optional) Set to 'true' to decrypt environment variable values. Use 'false' to keep them encrypted. -- **filter_by_git_branch** (`string`, optional) Specify the git branch to filter the environment variable results. Must have target set to 'preview'. -- **team_identifier** (`string`, optional) The unique identifier of the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The Team slug to perform the request on behalf of. Use this to specify the team context for the request. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateProjectEnvironmentVariables - -
- - -Create or update environment variables for a Vercel project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier_or_name** (`string`, optional) The unique identifier or name of the Vercel project to create or update environment variables for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **allow_override_existing_variable** (`string`, optional) Allows updating the value of an existing environment variable if set to true. Only used when mode is 'execute'. -- **team_identifier** (`string`, optional) The Team identifier to perform the request on behalf of, specified as a string. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The Team slug for the project. Used to perform the request on behalf of a specific team. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RetrieveProjectEnvironmentVariable - -
- - -Retrieve the environment variable for a given project. - -**Parameters** - -- **environment_variable_id** (`string`, required) The unique ID for the environment variable to retrieve its decrypted value. -- **project_identifier_or_name** (`string`, required) The unique identifier or name of the project to retrieve its environment variable. -- **team_identifier** (`string`, optional) The identifier for the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug for the team to perform the request on behalf of. This identifies the team in a user-friendly way. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteProjectEnvVariable - -
- - -Delete a project's specific environment variable. - -**Parameters** - -- **environment_variable_identifier** (`string`, required) The unique identifier of the environment variable to be deleted. -- **project_identifier_or_name** (`string`, required) The unique project identifier or name to identify the target project for which the environment variable should be deleted. -- **custom_environment_identifier** (`string`, optional) The unique custom environment identifier within the project. -- **team_identifier** (`string`, optional) The Team identifier to perform the request on behalf of. -- **team_slug** (`string`, optional) The Team slug used to perform the request on behalf of a team. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.EditProjectEnvironmentVariable - -
- - -Edit a specific environment variable for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id_or_name** (`string`, optional) Specify the unique project identifier or the project name. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **environment_variable_id** (`string`, optional) The unique environment variable identifier for the Vercel project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier for the team on whose behalf the request is made. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The identifier for the team on whose behalf the request is made. This is usually a URL-friendly name for the team. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteProjectEnvVariables - -
- - -Delete multiple environment variables from a Vercel project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id_or_name** (`string`, optional) The unique project identifier or the project name to specify which project to delete variables from. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The Team identifier to perform the request on behalf of when deleting environment variables. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug representing the team on whose behalf the request is performed. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UploadClientCertToProject - -
- - -Upload a client certificate for mTLS authentication. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id_or_name** (`string`, optional) The unique identifier or name of the Vercel project to upload the client certificate to. This is required to specify which project the mTLS certificate should be associated with. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The string identifier of the team to perform the request on behalf of. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug representing the team on whose behalf the request is made. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetRollingReleaseBillingStatus - -
- - -Get the billing status for a project's rolling releases. - -**Parameters** - -- **project_id_or_name** (`string`, required) Project ID or name, URL-encoded, to identify the project for which to retrieve billing status. -- **team_identifier** (`string`, optional) The identifier for the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug representation of the team to perform the request for. Used to specify which team's billing status is being queried. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetRollingReleaseConfig - -
- - -Fetch the rolling releases configuration for a project. - -**Parameters** - -- **project_identifier** (`string`, required) The project ID or name, URL-encoded, to identify the project for the configuration request. -- **team_identifier** (`string`, optional) The unique identifier for the Team on whose behalf the request is made. -- **team_slug** (`string`, optional) The slug representing the team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DisableRollingReleases - -
- - -Disable rolling releases for a Vercel project. - -**Parameters** - -- **project_id_or_name** (`string`, required) Project ID or URL-encoded name to specify the Vercel project. -- **team_identifier** (`string`, optional) The identifier of the team to execute the request on behalf of. -- **team_slug** (`string`, optional) The slug identifying the team to perform the request on behalf of. This should be a string value. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateRollingReleaseConfig - -
- - -Update or disable rolling releases for a Vercel project. - -**Parameters** - -- **project_id_or_name** (`string`, required) Project ID or name (URL-encoded) for updating rolling release settings. -- **team_identifier** (`string`, optional) The identifier for the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug identifying the team for which the request is made. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetRollingRelease - -
- - -Retrieve the rolling release for a specific project. - -**Parameters** - -- **project_id_or_name** (`string`, required) The project ID or URL-encoded project name to identify the specific project. -- **filter_by_release_state** (`string`, optional) Filter the rolling release by its state: ACTIVE, COMPLETE, or ABORTED. -- **team_identifier** (`string`, optional) The unique identifier of the team on whose behalf the request is made. -- **team_slug** (`string`, optional) The slug that identifies the team on whose behalf the request is made. This is required for team-specific data access. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.AdvanceRolloutStage - -
- - -Advance a rollout to the next stage when manual approval is required. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) Project ID or URL-encoded project name to identify the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The Team identifier used for performing the request on behalf of the specified team. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug representing the team for which the rollout action will be performed. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.ForceCompleteRollingRelease - -
- - -Complete a rolling release to serve 100% traffic from canary. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The project ID or URL-encoded project name in Vercel. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier for the team on whose behalf the request is performed. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug of the team for which the request is performed. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.InitiateProjectTransfer - -
- - -Initiate a project transfer request between teams. - -**Parameters** - -- **project_id_or_name** (`string`, required) The ID or name of the project to transfer between teams. -- **team_identifier** (`string`, optional) The unique identifier of the team initiating the project transfer. -- **team_slug** (`string`, optional) The Team slug to perform the project transfer request on behalf of. This is a unique identifier for the team on Vercel. -- **webhook_callback_url** (`string`, optional) The URL to send a webhook to when the project transfer is accepted. -- **webhook_signing_secret** (`string`, optional) The secret key used to sign the webhook payload with HMAC-SHA256 for security verification. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.AcceptProjectTransfer - -
- - -Accept a project transfer request on Vercel. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_transfer_code** (`string`, optional) The unique code of the project transfer request, required to accept the transfer. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier of the team to perform the request on behalf of. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The team slug used to perform the project transfer request on behalf of a specific team. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateProjectProtectionBypass - -
- - -Update the deployment protection bypass for a Vercel project. - -**Parameters** - -- **project_id_or_name** (`string`, required) The unique Vercel project identifier or project name to update the protection bypass for. -- **create_new_automation_bypass** (`boolean`, optional) Create a new automation bypass after revoking the current secret. -- **optional_secret_value** (`string`, optional) Optional value of the secret to generate; omit for OAuth2 tokens. -- **revoke_automation_bypass** (`string`, optional) Secret value of the automation bypass to be revoked for a Vercel project. -- **team_identifier** (`string`, optional) The identifier for the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug of the team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.PromoteDeploymentToProduction - -
- - -Promotes a deployment to production without rebuilding it. - -**Parameters** - -- **deployment_identifier** (`string`, required) The ID of the deployment to be promoted to production. It should be a valid string representing the deployment ID. -- **project_id** (`string`, required) The unique identifier of the project associated with the deployment to promote. -- **team_identifier** (`string`, optional) The unique identifier for the team on whose behalf the request is made. It should be a string value. -- **team_slug** (`string`, optional) The slug of the team to perform the promotion request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetLastPromoteAliasesStatus - -
- - -Retrieve aliases and their mapping status from last promote request. - -**Parameters** - -- **project_id** (`string`, required) Specify the Project ID to filter the promote aliases related to that specific project. -- **aliases_created_before_timestamp** (`number`, optional) Get aliases created before this epoch timestamp. -- **filter_failed_aliases** (`boolean`, optional) Set to true to filter results to only include aliases that failed to map to the requested deployment. -- **get_aliases_created_after_epoch** (`number`, optional) Get aliases created after the specified epoch timestamp. -- **max_aliases_to_list** (`number`, optional) Specify the maximum number of aliases to list from the request. The maximum allowed is 100. -- **team_identifier** (`string`, optional) The Team identifier to perform the request on behalf of. Must be a string. -- **team_slug** (`string`, optional) The slug representing the team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.PauseProject - -
- - -Pause a Vercel project by its ID. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the Vercel project you wish to pause. -- **team_identifier** (`string`, optional) The identifier of the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The Team slug to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UnpauseProject - -
- - -Unpause a Vercel project using its project ID. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier for the Vercel project to be unpaused. -- **team_identifier** (`string`, optional) The identifier for the team on behalf of which the request is performed. Used to specify the target team in Vercel. -- **team_slug** (`string`, optional) The slug identifying the team to perform the request on behalf of. Required for targeting the correct team's project. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateAttackChallengeMode - -
- - -Updates Attack Challenge mode setting for a project. - -**Parameters** - -- **enable_attack_challenge_mode** (`boolean`, required) Set to true to enable Attack Challenge mode; false to disable it. -- **project_id** (`string`, required) The unique identifier of the project to update the Attack Challenge mode for. -- **attack_mode_active_until** (`number`, optional) The UNIX timestamp indicating when the Attack Challenge mode should be active until. Specify this to control the duration of the mode being enabled. -- **team_identifier** (`string`, optional) The unique identifier for the team on whose behalf the request is made. -- **team_slug** (`string`, optional) The unique slug of the team on behalf of which the request is made. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.SetFirewallConfiguration - -
- - -Update firewall configuration with specified rules. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier for the project to configure the firewall settings. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier of the team to perform the request on behalf of. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug representing the team for which the firewall configuration will be updated. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateFirewallConfig - -
- - -Modify the existing firewall config for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_identifier** (`string`, optional) The unique identifier for the project to modify the firewall config. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier for the team to perform the request on behalf of. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The Team slug used to identify the team for the request. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetFirewallConfig - -
- - -Retrieve the active firewall configuration for a project. - -**Parameters** - -- **firewall_configuration_version** (`string`, required) The deployed version of the firewall configuration to retrieve. -- **project_id** (`string`, required) The unique identifier for the project whose firewall configuration is being retrieved. -- **team_identifier** (`string`, optional) The identifier for the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The team slug to perform the request on behalf of. It identifies the specific team by its slug name. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetActiveAttackStatus - -
- - -Retrieve active attack data from the Vercel firewall. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier of the project to retrieve attack data for. -- **active_days_since** (`number`, optional) Number of days in the past to look for active attack data. Defaults to 1 day if not specified. -- **team_identifier** (`string`, optional) The unique identifier of the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug of the team to perform the request on behalf of. This identifies which team to target for the retrieval of attack data within Vercel's system. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RetrieveProjectBypassRules - -
- - -Retrieve the bypass rules for a specified project. - -**Parameters** - -- **project_id** (`string`, required) The unique identifier of the project for which to retrieve bypass rules. -- **filter_by_domain** (`string`, optional) Specify the domain to filter bypass rules. This filters rules related to the given domain. -- **filter_by_project_scope** (`boolean`, optional) Set to true to filter results by project-scoped rules. -- **filter_by_source_ip** (`string`, optional) Specify a source IP to filter the system bypass rules for a project. -- **pagination_offset** (`string`, optional) Pagination offset, retrieving results after the specified ID. -- **result_limit** (`number`, optional) The maximum number of rules to retrieve. Specify as a number. This is useful for controlling the volume of data returned. -- **team_identifier** (`string`, optional) The unique identifier of the team on whose behalf the request is performed. -- **team_slug** (`string`, optional) The slug representing the team to make the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateFirewallBypassRule - -
- - -Create a new firewall bypass rule. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The identifier for the project to create a bypass rule for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The identifier for the team on whose behalf the request is made. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug identifier of the team for which the bypass rule is created. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RemoveBypassRule - -
- - -Removes a bypass rule from the firewall. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_id** (`string`, optional) The unique identifier for the project from which to remove the bypass rule. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier for the team on whose behalf the request is made. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The Team slug indicating which team to perform the request on behalf of. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateIntegrationStore - -
- - -Create integration stores for FREE and PAID billing plans. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_identifier** (`string`, optional) The unique identifier of the team on whose behalf the request is being made. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The unique slug of the team for which the integration store is being created. This identifies the team on behalf of which the request is made. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetTeamMembers - -
- - -Retrieve a list of team members for a specified team. - -**Parameters** - -- **added_since_timestamp** (`number`, optional) Include team members added since this timestamp in milliseconds. -- **exclude_project_id** (`string`, optional) Exclude members belonging to the specified project using the project ID. -- **filter_by_team_role** (`string`, optional) Return members with the specified team role. Valid roles include OWNER, MEMBER, DEVELOPER, SECURITY, BILLING, VIEWER, VIEWER_FOR_PLUS, and CONTRIBUTOR. -- **include_members_until** (`number`, optional) Timestamp in milliseconds to include members added until this time. -- **member_limit** (`number`, optional) Specify the maximum number of team members to return in a single request. -- **project_id_for_eligible_members** (`string`, optional) Include team members eligible for the specified project by providing the project ID. -- **search_team_members** (`string`, optional) Search for team members by their name, username, or email. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.InviteUserToTeam - -
- - -Invite a user to join a Vercel team. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_id** (`string`, optional) The unique identifier for the Vercel team to which the user is being invited. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RequestTeamAccess - -
- - -Request to join a team on Vercel. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_id** (`string`, optional) The unique identifier of the Vercel team you want to join. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CheckTeamAccessStatus - -
- - -Check the status of a team access request. - -**Parameters** - -- **team_id** (`string`, required) The unique identifier for the team whose access request status is being checked. -- **user_id** (`string`, required) The ID of the user whose team access request status is being checked. Leave empty to use the authenticated user. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.JoinVercelTeam - -
- - -Join a Vercel team using invite code or team ID. - -**Parameters** - -- **team_id** (`string`, required) The unique ID of the Vercel team to join. Use this if you have the team ID instead of an invite code. -- **team_invite_code** (`string`, optional) The invite code used to join a specific Vercel team. This is a string value provided to new members for team access. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateTeamMember - -
- - -Update a team member's role or confirm membership. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **member_id** (`string`, optional) The unique identifier for the team member to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_id** (`string`, optional) The unique ID of the team where the member's role or membership status will be updated. It is required to identify the specific team. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RemoveTeamMember - -
- - -Remove or dismiss a team member or leave a team. - -**Parameters** - -- **team_id** (`string`, required) The ID of the team from which to remove or dismiss a member, or leave. -- **user_id** (`string`, required) The unique identifier of the user to be removed or dismissed from the team. -- **new_default_team_id** (`string`, optional) The ID of the team to set as the new default team for the Northstar user when removing another team member. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetTeamInfo - -
- - -Retrieve information for a specified team using teamId. - -**Parameters** - -- **team_identifier** (`string`, required) The unique identifier for the team to retrieve information about. -- **team_slug** (`string`, optional) A string representing the unique slug of the team. Used to specify which team's data to retrieve. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateTeamInfo - -
- - -Update information of a specified team. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_identifier** (`string`, optional) The unique identifier for the team whose information you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_slug** (`string`, optional) The unique slug for the team used to perform the request. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetUserTeams - -
- - -Retrieve all teams for the authenticated user. - -**Parameters** - -- **max_number_of_teams** (`number`, optional) Maximum number of teams to return in the response. -- **teams_created_since_timestamp** (`number`, optional) Timestamp in milliseconds to include only teams created since this time. -- **teams_created_until** (`number`, optional) Timestamp in milliseconds to filter Teams created until the specified time. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateVercelTeam - -
- - -Create a new team in your Vercel account. - -**Parameters** - -- **team_slug** (`string`, required) The desired slug for the new team, used as a team identifier. -- **session_landing_page** (`string`, optional) The URL of the landing page where the session started. This is used for session attribution on Vercel. -- **session_referrer** (`string`, optional) Referrer URL for the session initiating the team creation process. -- **signup_referrer_page** (`string`, optional) The referrer URL of the page before the signup page, used for tracking attribution. -- **team_name** (`string`, optional) The desired name for the Team. If not provided, it will be generated from the slug. -- **utm_campaign_name** (`string`, optional) Specifies the UTM campaign name for tracking purposes when creating a team. -- **utm_medium** (`string`, optional) The medium through which the user arrived, such as email, social, or cpc. -- **utm_source** (`string`, optional) The UTM source identifier, indicating where the traffic originates from, such as a search engine or newsletter. -- **utm_term** (`string`, optional) The UTM term used for tracking specific keywords in marketing campaigns. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteTeam - -
- - -Delete a team from your Vercel account. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_identifier** (`string`, optional) The unique identifier of the team to be deleted in your Vercel account. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **new_default_team_id** (`string`, optional) Specify the team ID to set as the new default after deletion. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The slug of the team you want to delete. Used to identify the team for the delete operation. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteTeamInviteCode - -
- - -Delete an active team invite code in Vercel. - -**Parameters** - -- **team_identifier** (`string`, required) The unique identifier of the team to perform the operation for in Vercel. -- **team_invite_code_id** (`string`, required) The ID of the team invite code to be deleted in Vercel. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RetrieveAuthTokens - -
- - -Retrieve a list of the current user's authentication tokens. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateAuthToken - -
- - -Create a new authentication token for the user. - -**Parameters** - -- **token_name** (`string`, required) A descriptive name for the authentication token. This helps in identifying the token's purpose or context. -- **expiration_timestamp** (`number`, optional) The expiration time for the token, specified as a Unix timestamp. This defines when the token will no longer be valid. -- **team_identifier** (`string`, optional) The unique identifier for the Team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug of the Team to perform the request on behalf of. This identifies the specific team within your Vercel account. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RetrieveAuthTokenMetadata - -
- - -Retrieve metadata about an authentication token. - -**Parameters** - -- **authentication_token_identifier** (`string`, required) The ID of the token to retrieve metadata for. Use "current" for the token that the current request is authenticated with. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.InvalidateAuthToken - -
- - -Invalidate an authentication token to revoke access. - -**Parameters** - -- **token_id** (`string`, required) The ID of the token to invalidate. Use 'current' to invalidate the token used for this request. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetAuthenticatedUserInfo - -
- - -Retrieve current authenticated user's information. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.InitiateUserDeletion - -
- - -Initiates user deletion and sends a confirmation email. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.CreateVercelWebhook - -
- - -Create a new webhook in Vercel projects. - -**Parameters** - -- **events_list** (`array[string]`, required) A list of event types that trigger the webhook. Must be an array of strings, each representing an event. -- **webhook_url** (`string`, required) The target URL where the webhook will send POST requests. It should be a valid and publicly accessible URL. -- **project_ids** (`array[string]`, optional) List of project IDs for which the webhook is being created. Each ID should be a string. -- **team_identifier** (`string`, optional) The identifier for the team on whose behalf the request is performed. -- **team_slug** (`string`, optional) The slug representing the Vercel team to target the request for. It identifies the team on whose behalf the webhook is created. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.ListVercelWebhooks - -
- - -Retrieve a list of webhooks from Vercel. - -**Parameters** - -- **project_id** (`string`, optional) The unique identifier for the project to retrieve webhooks from. -- **team_identifier** (`string`, optional) The identifier for the Vercel team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug identifier for the team to perform the request on behalf of. This is used to specify which team's webhooks you want to retrieve. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetWebhook - -
- - -Retrieve details of a specific webhook using its ID. - -**Parameters** - -- **webhook_id** (`string`, required) The unique identifier of the webhook to retrieve details for. -- **team_identifier** (`string`, optional) The identifier of the team on whose behalf the request is made. Required to specify the team context. -- **team_slug** (`string`, optional) The slug representing the team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteVercelWebhook - -
- - -Delete a specific webhook from Vercel. - -**Parameters** - -- **webhook_id** (`string`, required) The unique identifier of the webhook to be deleted. -- **team_identifier** (`string`, optional) The Team identifier used to perform the request on behalf of the specified team. -- **team_slug** (`string`, optional) The slug representing the Vercel team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetDeploymentAliases - -
- - -Fetch aliases for a specific deployment by ID. - -**Parameters** - -- **deployment_id** (`string`, required) The ID of the deployment for which to list the aliases. -- **team_identifier** (`string`, optional) The identifier of the team to perform the request on behalf of. It is required to retrieve deployment aliases. -- **team_slug** (`string`, optional) The slug representing the team on whose behalf the request is made. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.SetDeploymentAlias - -
- - -Assigns a new alias to a Vercel deployment. - -**Parameters** - -- **deployment_id** (`string`, required) The ID of the deployment to assign the alias to. This identifier is crucial for specifying which deployment will receive the new alias. -- **deployment_alias** (`string`, optional) The alias to assign to the specified Vercel deployment. -- **redirect_hostname** (`string`, optional) Hostname to redirect the alias to, using status code 307. This will override the deployment ID from the URL. -- **team_identifier** (`string`, optional) The identifier of the team to perform the alias assignment on behalf of. Required for team-based operations. -- **team_slug** (`string`, optional) The Team slug to perform the request on behalf of. This identifies the team for the deployment operation. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.ListAliases - -
- - -Retrieve a list of Vercel aliases for a user or team. - -**Parameters** - -- **aliases_created_after_timestamp** (`number`, optional) Get aliases created after this JavaScript timestamp. Use a timestamp in milliseconds since the epoch. -- **created_after_timestamp** (`number`, optional) Return aliases created after this UNIX timestamp. -- **filter_by_domain** (`string`, optional) Return only aliases associated with the specified domain name. -- **get_aliases_before_timestamp** (`number`, optional) Retrieve aliases created before the specified JavaScript timestamp. -- **maximum_aliases_to_list** (`number`, optional) Specifies the maximum number of aliases to retrieve in the request. -- **project_id_filter** (`string`, optional) Filter to list aliases associated with the specified project ID. -- **rollback_deployment_id** (`string`, optional) Specify the deployment ID to get aliases that would be rolled back for that deployment. -- **team_identifier** (`string`, optional) The identifier for the team to perform the request on behalf of. Use this to specify the team whose aliases should be listed. -- **team_slug** (`string`, optional) The slug identifier for the team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RetrieveVercelAlias - -
- - -Retrieve Vercel alias information for a host name or alias ID. - -**Parameters** - -- **alias_identifier** (`string`, required) The alias or alias ID of the Vercel entity to retrieve. -- **after_timestamp** (`number`, optional) Get the alias only if it was created after this JavaScript timestamp (milliseconds since epoch). -- **created_after_timestamp** (`number`, optional) Retrieve the alias only if it was created after the specified timestamp (in milliseconds). -- **created_before_timestamp** (`number`, optional) Retrieve the alias only if it was created before this JavaScript timestamp. -- **project_id** (`string`, optional) Fetch the alias only if it is associated with this project ID in Vercel. -- **team_identifier** (`string`, optional) The Team identifier to perform the request on behalf of. -- **team_slug** (`string`, optional) The Team slug to perform the request on behalf of. This specifies the team context for the alias retrieval. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteAliasById - -
- - -Delete a specific alias by its ID. - -**Parameters** - -- **alias_id_to_remove** (`string`, required) The unique ID or alias of the item to be removed from Vercel. -- **team_identifier** (`string`, optional) The unique identifier for the team to execute the request. -- **team_slug** (`string`, optional) The unique slug of the team for which the alias will be deleted. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UpdateUrlProtectionBypass - -
- - -Update the protection bypass for a Vercel URL. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **alias_or_deployment_id** (`string`, optional) The ID of the alias or deployment for which to update the protection bypass. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier of the team on whose behalf the request is made. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) The team slug representing which team the request should be performed for in Vercel. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RetrieveCertificateById - -
- - -Retrieve a Vercel certificate using its ID. - -**Parameters** - -- **certificate_id** (`string`, required) The unique identifier of the certificate to be retrieved from Vercel. -- **team_identifier** (`string`, optional) The identifier of the team to perform the request on behalf of. -- **team_slug** (`string`, optional) The slug identifying the team to perform the request on behalf of. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RemoveCertificate - -
- - -Remove a certificate from Vercel using its ID. - -**Parameters** - -- **certificate_id** (`string`, required) The unique identifier of the certificate to remove. -- **team_identifier** (`string`, optional) The identifier for the team on whose behalf the removal request is made. -- **team_slug** (`string`, optional) The slug of the team to perform the request on behalf of in Vercel. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.IssueVercelCertificate - -
- - -Request a new SSL certificate from Vercel. - -**Parameters** - -- **common_names_for_certificate** (`array[string]`, optional) List of common names (domains) that the SSL certificate should be issued for. -- **team_id** (`string`, optional) The identifier for the Vercel team on whose behalf the certificate request is made. -- **team_slug** (`string`, optional) The team slug identifier for cert request on behalf of a specific team. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.UploadCertificate - -
- - -Uploads a certificate to Vercel. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_identifier** (`string`, optional) The unique identifier for the team to perform the request on behalf of. Only used when mode is 'execute'. -- **team_slug** (`string`, optional) Specify the team slug to perform the request on behalf of in Vercel. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.GetVercelDeploymentFiles - -
- - -Retrieve the file structure of a Vercel deployment. - -**Parameters** - -- **deployment_identifier** (`string`, required) The unique identifier for the deployment to retrieve its file structure. -- **team_identifier** (`string`, optional) The identifier of the team on whose behalf the request is made. -- **team_slug** (`string`, optional) The slug of the team performing the request. It is required for team-scoped requests. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.RetrieveDeploymentFileContents - -
- - -Retrieve the contents of a file from a Vercel deployment. - -**Parameters** - -- **deployment_unique_identifier** (`string`, required) The unique identifier for the deployment from which to retrieve the file. -- **file_identifier** (`string`, required) The unique identifier for the file you want to retrieve from the deployment. -- **file_path** (`string`, optional) Path to the file to fetch, applicable only for Git-based deployments. -- **team_identifier** (`string`, optional) The identifier of the team to make the request on behalf of. -- **team_slug** (`string`, optional) The slug of the team to perform the request on behalf of. Specify which team's context to use. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.ListVercelDeployments - -
- - -Retrieve deployments from Vercel for a user or team. - -**Parameters** - -- **branch_name_filter** (`string`, optional) Specify the branch name to filter deployments. -- **created_after_timestamp** (`number`, optional) Retrieve deployments created after this Date timestamp. Defaults to current time if not specified. -- **deployment_name** (`string`, optional) The name of the deployment to filter results. -- **deployment_since_timestamp** (`number`, optional) Retrieve deployments created after this JavaScript timestamp. -- **deployment_state_filter** (`string`, optional) Filter deployments by their state, such as `BUILDING`, `ERROR`, `INITIALIZING`, `QUEUED`, `READY`, or `CANCELED`. -- **fetch_deployments_before_timestamp** (`number`, optional) Specify a JavaScript timestamp to retrieve deployments created before this time. -- **filter_by_environment** (`string`, optional) Specify the environment to filter deployments (e.g., 'production', 'staging'). -- **filter_by_project_id** (`string`, optional) Filter deployments using a specific project ID or name. -- **filter_by_project_ids** (`array[string]`, optional) Filter deployments from specified project IDs. Cannot be used with the 'filter_by_project_id' argument. -- **filter_by_rollback_candidacy** (`boolean`, optional) Set to true to filter and include only rollback candidate deployments. -- **filter_by_sha** (`string`, optional) Filter deployments based on the specific SHA value. -- **get_deployments_before_timestamp** (`number`, optional) A timestamp to get deployments created before a specific date. Useful for filtering older deployments. Defaults to the current time if not specified. -- **maximum_deployments_to_list** (`number`, optional) Sets the maximum number of deployments to retrieve in one request. -- **team_identifier** (`string`, optional) The identifier for the team to perform the request on behalf of. Use when filtering deployments by team. -- **team_slug** (`string`, optional) The team slug to perform the request on behalf of. Specify which team's deployments to retrieve. -- **user_filter** (`string`, optional) Filter deployments by the user who created them. Provide a username or user ID. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## VercelApi.DeleteDeployment - -
- - -Delete a Vercel deployment using its ID or URL. - -**Parameters** - -- **deployment_id** (`string`, required) The ID of the deployment to be deleted. Use this if not providing a URL. -- **deployment_url** (`string`, optional) A Deployment or Alias URL for identifying the deployment to delete. The ID will be ignored if this is provided. -- **team_identifier** (`string`, optional) The unique identifier for the team on whose behalf the request is executed. -- **team_slug** (`string`, optional) The Team slug to perform the deletion on behalf of. Specify which team's deployment to delete. - -**Secrets** - -This tool requires the following secrets: `VERCEL_ACCESS_TOKEN` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -To obtain a Vercel access token: - -1. Log in to your [Vercel Dashboard](https://vercel.com/dashboard) -2. Go to Settings → Tokens -3. Click "Create" and provide a descriptive name -4. Set the desired scope and click "Create Token" -5. Copy and securely store the token (it won't be displayed again) - -For detailed instructions, see the [Vercel API Access Token guide](https://vercel.com/guides/how-do-i-use-a-vercel-api-access-token). - -## Reference - -Below is a reference of enumerations used by some of the tools in the VercelApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - diff --git a/app/en/resources/integrations/development/zoho-creator-api/page.mdx b/app/en/resources/integrations/development/zoho-creator-api/page.mdx deleted file mode 100644 index 64a7c3abe..000000000 --- a/app/en/resources/integrations/development/zoho-creator-api/page.mdx +++ /dev/null @@ -1,773 +0,0 @@ -# ZohoCreatorApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The ZohoCreatorApi MCP Server offers a comprehensive suite of tools for interacting with Zoho Creator applications. Users can efficiently manage and manipulate data within their apps, enabling actions such as: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## ZohoCreatorApi.FetchZohoAppSections - -
- - -Fetch details of sections and components in Zoho Creator apps. - -**Parameters** - -- **zoho_account_owner_name** (`string`, required) The account owner's username in Zoho. Required to fetch data for the specified application. -- **zoho_application_link_name** (`string`, required) The unique link name of the Zoho Creator application whose sections and components you want to fetch. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.FetchRecordDetail - -
- - -Fetches detailed view data of a record by ID. - -**Parameters** - -- **application_private_link** (`string`, required) The private link identifier of the Zoho application, necessary for accessing the specific record's detail view. -- **account_owner_name** (`string`, required) The name of the account owner in Zoho. This specifies the owner of the account to which the app belongs. -- **application_link_name** (`string`, required) The unique identifier or slug for the specific Zoho app to query. This determines which app's data is accessed. -- **report_link_name** (`string`, required) The link name of the report from which to fetch the record detail. It identifies the specific report in the Zoho app. -- **record_id** (`string`, required) The unique identifier of the record to fetch detailed information for. It should be a string corresponding to the record's ID in the Zoho app. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.FetchZohoFormFieldsMetadata - -
- - -Fetches metadata of fields in a Zoho Creator form. - -**Parameters** - -- **account_owner_name** (`string`, required) The Zoho account owner's username. Required to identify the specific account that owns the application. -- **application_link_name** (`string`, required) The unique link name of the Zoho Creator application. It identifies which application's form metadata to fetch. -- **form_identifier** (`string`, required) The unique identifier or link name of the Zoho Creator form to fetch metadata for. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.FetchZohoReportsMeta - -
- - -Fetches meta information of reports in Zoho Creator. - -**Parameters** - -- **zoho_account_owner_name** (`string`, required) The name of the account owner in Zoho. Used to identify which account's report metadata to fetch. -- **zoho_app_link_name** (`string`, required) The unique link name of the Zoho Creator application to fetch report metadata from. This identifies the specific app within your Zoho account. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.UpdateZohoCreatorReportRecords - -
- - -Update records in a Zoho Creator report. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **account_owner_name** (`string`, optional) The username of the owner of the Zoho account associated with the application. Required for determining access and permissions. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **application_link_name** (`string`, optional) The unique identifier (link name) of the Zoho Creator application. Required to specify the target app for updating records. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **report_link_name** (`string`, optional) The name or identifier of the report in Zoho Creator whose records you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **process_until_limit_enabled** (`boolean`, optional) Set to true to process records until reaching a limit of 200. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.FetchZohoRecords - -
- - -Fetch records from a Zoho Creator report. - -**Parameters** - -- **account_owner_identifier** (`string`, required) The unique identifier for the Zoho account owner. Required to fetch the report data. -- **application_link_name** (`string`, required) The unique identifier for the Zoho Creator application. It specifies which app's report to fetch. -- **report_link_name** (`string`, required) The unique link name of the Zoho Creator report to fetch records from. -- **start_record_index** (`integer`, optional) The starting index of records to retrieve from the report. Must be an integer. -- **record_limit** (`integer`, optional) The maximum number of records to retrieve, up to 200. -- **filter_criteria** (`string`, optional) Specify conditions to filter records. Use Zoho Creator query format for filtering. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.DeleteReportRecords - -
- - -Delete records from a specified Zoho Creator report. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **account_owner_name** (`string`, optional) The name of the Zoho account owner. It identifies whose account the deletion should occur under. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **application_link_name** (`string`, optional) The unique identifier for the application within Zoho Creator. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **report_identifier** (`string`, optional) The name of the report from which records should be deleted. Must match the link name configured in Zoho Creator. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **process_records_up_to_limit** (`boolean`, optional) Boolean to enable processing records up to the 200-record limit per request. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.FetchZohoCreatorPagesMeta - -
- - -Fetches meta information of pages in a Zoho Creator app. - -**Parameters** - -- **account_owner_name** (`string`, required) The name of the account owner in Zoho. This identifies the owner of the application for which the page metadata is fetched. -- **zoho_app_link_name** (`string`, required) The unique identifier for the Zoho Creator application to fetch page metadata. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.GetApplicationMetaInfo - -
- - -Fetches meta information of accessible applications. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.InsertRecordsInZohoForm - -
- - -Add records to a form in Zoho Creator. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **zoho_account_owner_name** (`string`, optional) The name of the account owner in Zoho. This is required to identify which account the records should be added to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **application_link_name** (`string`, optional) The unique identifier of the application in which the form is located. This is necessary to specify the target Zoho Creator application. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **form_link_name** (`string`, optional) The unique link name of the form in Zoho Creator where records will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.UpdateZohoRecord - -
- - -Update a specific record in Zoho Creator by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **zoho_account_owner_name** (`string`, optional) The account owner's name in Zoho. Used to identify the correct Zoho Creator account for the update operation. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **application_link_name** (`string`, optional) The unique name of the Zoho Creator application where the record resides. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **report_link_name** (`string`, optional) The string identifier of the report in Zoho Creator where the record is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **record_id** (`string`, optional) The unique identifier for the record to be updated in Zoho Creator. This ID specifies which record in the report will be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.FetchZohoRecordDetail - -
- - -Fetches detailed view data of a Zoho record by ID. - -**Parameters** - -- **account_owner_name** (`string`, required) The name of the account owner in Zoho to fetch the record for. This identifies the specific account under which the record exists. -- **application_identifier** (`string`, required) The name of the application in Zoho used to uniquely identify which app's record details are to be fetched. -- **report_link_name** (`string`, required) The specific name of the report in Zoho from which the data will be fetched. -- **record_id** (`string`, required) The unique ID of the Zoho record to fetch its detailed information. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.DeleteZohoRecord - -
- - -Delete a specific record in Zoho Creator by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **zoho_account_owner_name** (`string`, optional) The account owner's name in Zoho. Required to specify which user's account to access. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **application_link_name** (`string`, optional) The unique identifier for the Zoho Creator application. Provide this to specify which application contains the record to delete. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **report_link_name** (`string`, optional) The unique name of the report in Zoho where the record is listed. This identifies which report contains the record to be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **record_id** (`string`, optional) The unique ID of the record to be deleted from Zoho Creator. This must match the ID displayed in the relevant Zoho report. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.CreateBulkReadJob - -
- - -Initiate a bulk read job to export records. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **account_owner_name** (`string`, optional) The name of the account owner in Zoho for whom the bulk read job is being created. This should match the official account details. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **application_link_name** (`string`, optional) The name of the application within Zoho to export records from. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **report_reference_name** (`string`, optional) Specifies the unique link or name of the report from which records will be exported in Zoho. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.FetchZohoReportRecords - -
- - -Fetch records displayed by a Zoho Creator report. - -**Parameters** - -- **zoho_private_link** (`string`, required) The private link URL or identifier for accessing a specific Zoho Creator report. -- **account_owner_name** (`string`, required) The username of the Zoho account owner. Required to identify the correct account for fetching report records. -- **zoho_application_link_name** (`string`, required) The unique link name of the Zoho Creator application from which to fetch report records. -- **report_link_name** (`string`, required) The unique link name of the Zoho report to fetch records from. It's required to specify which report to access. -- **record_fetch_start_index** (`integer`, optional) Specify the starting index for records to be fetched. Use an integer value. -- **record_limit** (`integer`, optional) Specify the maximum number of records to fetch, up to 200. -- **filter_criteria** (`string`, optional) A string to filter records based on specific conditions, formatted as 'Field_Name Operator Value'. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.GetBulkReadJobDetails - -
- - -Retrieve details of a completed bulk read job in Zoho Creator. - -**Parameters** - -- **account_owner_name** (`string`, required) The name of the account owner in Zoho. Required for identifying the correct account. -- **application_link_name** (`string`, required) The name of the Zoho Creator application. Used to identify which application's bulk read job details are being retrieved. -- **report_link_name** (`string`, required) The link name of the report for which the bulk read job details are requested. This is required to specify the report in Zoho Creator. -- **job_id** (`string`, required) The unique identifier for the bulk read job to retrieve details for. This should be a string value. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.FetchWorkspaceAppMeta - -
- - -Fetch meta information of applications in a workspace. - -**Parameters** - -- **workspace_account_owner_name** (`string`, required) The name of the account owner for the workspace you want to fetch application meta information from. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.FetchZohoFormMetaInformation - -
- - -Fetch meta information of Zoho Creator app forms. - -**Parameters** - -- **zoho_account_owner_name** (`string`, required) The name of the account owner for the Zoho Creator application. Required for authentication and identifying the account context. -- **zoho_app_link_name** (`string`, required) The unique link name of the Zoho Creator application. This identifies the app whose form meta information is to be fetched. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoCreatorApi.AddRecordsToZohoForm - -
- - -Add multiple records to a Zoho Creator form efficiently. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **form_private_link** (`string`, optional) The unique identifier for accessing a specific form in Zoho Creator securely. Required for access control. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **zoho_account_owner_name** (`string`, optional) The account owner's name associated with the Zoho Creator application. This is needed to authenticate and route the records correctly. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **application_link_name** (`string`, optional) The unique identifier for the Zoho application where the form resides. Required to locate the specific application. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **zoho_form_link_name** (`string`, optional) The unique link name of the form in Zoho Creator where records will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Reference - -Below is a reference of enumerations used by some of the tools in the ZohoCreatorApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - -## Secrets - -This MCP Server requires the `ZOHO_SERVER_URL` secret to be configured. Learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets). - -### Getting your Zoho Server URL - -The Zoho Server URL is the base URL for your Zoho account's data center. Zoho operates in multiple data centers around the world, and you must use the correct URL for your account. - -Your Zoho Server URL depends on which data center your account is registered in: - -| Data Center | Server URL | -| ----------- | ----------------------------- | -| US | `https://creator.zoho.com` | -| EU | `https://creator.zoho.eu` | -| India | `https://creator.zoho.in` | -| Australia | `https://creator.zoho.com.au` | -| China | `https://creator.zoho.com.cn` | - -To determine which data center your account uses: - -1. Log in to your Zoho Creator account -2. Look at the URL in your browser's address bar -3. The domain (`.com`, `.eu`, `.in`, `.com.au`, or `.com.cn`) indicates your data center - -For example, if you access Zoho Creator at `https://creator.zoho.eu`, your server URL is `https://creator.zoho.eu`. - -The server URL is used as the base for all API requests. For example, when retrieving application metadata, the full URL would be constructed as: - -``` -{zoho_server_url}/creator/v2/meta/{account_owner_name}/{app_link_name}/sections -``` - -Which would become `https://creator.zoho.com/creator/v2/meta/{account_owner_name}/{app_link_name}/sections` for US accounts. - -## Auth - -The ZohoCreatorApi MCP Server uses the Auth Provider with id `arcade-zoho` to connect to users' Zoho Creator accounts. In order to use the MCP Server, you will need to configure the `arcade-zoho` auth provider. - -Learn how to configure the Zoho auth provider in the [Zoho auth provider documentation](/references/auth-providers/zoho). - - diff --git a/app/en/resources/integrations/entertainment/[toolkitId]/_meta.tsx b/app/en/resources/integrations/entertainment/[toolkitId]/_meta.tsx new file mode 100644 index 000000000..ce7f0efde --- /dev/null +++ b/app/en/resources/integrations/entertainment/[toolkitId]/_meta.tsx @@ -0,0 +1,13 @@ +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "*": { + theme: { + breadcrumb: false, + toc: false, + copyPage: false, + }, + }, +}; + +export default meta; diff --git a/app/en/resources/integrations/entertainment/[toolkitId]/page-impl.tsx b/app/en/resources/integrations/entertainment/[toolkitId]/page-impl.tsx new file mode 100644 index 000000000..b3fc5986b --- /dev/null +++ b/app/en/resources/integrations/entertainment/[toolkitId]/page-impl.tsx @@ -0,0 +1,10 @@ +import { createToolkitDocsPage } from "@/app/en/resources/integrations/_lib/toolkit-docs-page"; + +export const dynamicParams = false; + +const { Page, generateMetadata, generateStaticParams } = + createToolkitDocsPage("entertainment"); + +export { generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/entertainment/[toolkitId]/page.mdx b/app/en/resources/integrations/entertainment/[toolkitId]/page.mdx new file mode 100644 index 000000000..ca97c319f --- /dev/null +++ b/app/en/resources/integrations/entertainment/[toolkitId]/page.mdx @@ -0,0 +1,14 @@ +--- +title: "MCP server" +description: "Generated MCP server documentation." +--- + +import Page, { + dynamicParams, + generateMetadata, + generateStaticParams, +} from "./page-impl"; + +export { dynamicParams, generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/entertainment/_meta.tsx b/app/en/resources/integrations/entertainment/_meta.tsx index fe927d8b9..2b7eebcd9 100644 --- a/app/en/resources/integrations/entertainment/_meta.tsx +++ b/app/en/resources/integrations/entertainment/_meta.tsx @@ -1,21 +1,13 @@ import type { MetaRecord } from "nextra"; const meta: MetaRecord = { - "*": { - theme: { - breadcrumb: true, - toc: true, - copyPage: true, - }, - }, imgflip: { title: "Imgflip", + href: "/en/resources/integrations/entertainment/imgflip", }, spotify: { title: "Spotify", - }, - twitch: { - title: "Twitch", + href: "/en/resources/integrations/entertainment/spotify", }, }; diff --git a/app/en/resources/integrations/entertainment/imgflip/page.mdx b/app/en/resources/integrations/entertainment/imgflip/page.mdx deleted file mode 100644 index 262ebee91..000000000 --- a/app/en/resources/integrations/entertainment/imgflip/page.mdx +++ /dev/null @@ -1,145 +0,0 @@ -# Imgflip - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Imgflip MCP Server provides a pre-built set of tools for interacting with Imgflip. These tools make it easy to build agents and AI apps that can: - -- Create memes -- Search for memes -- Get popular meme templates - -## Available Tools - -These tools are currently available in the Arcade Imgflip MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Imgflip.SearchMemes - -
- - -Search for meme templates by query (Premium feature) - -This tool searches through Imgflip's database of over 1 million meme templates -to find ones that match your search query. This is a Premium feature that -requires a paid Imgflip subscription. - -**Parameters** - -- `query` _(string, required)_ Search query to find meme templates. Be specific for better results. -- `include_nsfw` _(boolean, optional)_ Include not-safe-for-work memes in search results. Defaults to False. -- `limit` _(integer, optional)_ Maximum number of meme templates to return. Defaults to 20. - ---- - -## Imgflip.GetPopularMemes - -
- - -Get popular meme templates from Imgflip - -This tool retrieves a list of popular meme templates that can be used -to create custom memes. These templates are ordered by popularity -based on how many times they've been captioned. - -**Parameters** - -- `limit` _(integer, optional)_ Maximum number of meme templates to return. Defaults to 20. - ---- - -## Imgflip.CreateMeme - -
- - -Create a custom meme using an Imgflip template - -This tool creates a custom meme by adding your text to an existing -meme template. You can specify top and bottom text, choose fonts, -and control text sizing. - -**Parameters** - -- `template_id` _(string, required)_ The meme template ID to use for creation. You can get this from get_popular_memes. -- `top_text` _(string, optional)_ Text to display at the top of the meme. Leave empty if not needed. -- `bottom_text` _(string, optional)_ Text to display at the bottom of the meme. Leave empty if not needed. -- `font` _(Font, optional)_ Font family to use for the text. Defaults to IMPACT. -- `max_font_size` _(integer, optional)_ Maximum font size for the text. Defaults to 50. -- `no_watermark` _(boolean, optional)_ Remove the Imgflip watermark (Premium feature). Defaults to False. - - diff --git a/app/en/resources/integrations/entertainment/spotify/imgflip.mdx b/app/en/resources/integrations/entertainment/spotify/imgflip.mdx deleted file mode 100644 index 55557aaff..000000000 --- a/app/en/resources/integrations/entertainment/spotify/imgflip.mdx +++ /dev/null @@ -1,145 +0,0 @@ -# Imgflip - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Imgflip MCP Server provides a pre-built set of tools for interacting with Imgflip. These tools make it easy to build agents and AI apps that can: - -- Create memes -- Search for memes -- Get popular meme templates - -## Available Tools - -These tools are currently available in the Arcade Imgflip MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Imgflip.SearchMemes - -
- - -Search for meme templates by query (Premium feature) - -This tool searches through Imgflip's database of over 1 million meme templates -to find ones that match your search query. This is a Premium feature that -requires a paid Imgflip subscription. - -**Parameters** - -- `query` _(string, required)_ Search query to find meme templates. Be specific for better results. -- `include_nsfw` _(boolean, optional)_ Include not-safe-for-work memes in search results. Defaults to False. -- `limit` _(integer, optional)_ Maximum number of meme templates to return. Defaults to 20. - ---- - -## Imgflip.GetPopularMemes - -
- - -Get popular meme templates from Imgflip - -This tool retrieves a list of popular meme templates that can be used -to create custom memes. These templates are ordered by popularity -based on how many times they've been captioned. - -**Parameters** - -- `limit` _(integer, optional)_ Maximum number of meme templates to return. Defaults to 20. - ---- - -## Imgflip.CreateMeme - -
- - -Create a custom meme using an Imgflip template - -This tool creates a custom meme by adding your text to an existing -meme template. You can specify top and bottom text, choose fonts, -and control text sizing. - -**Parameters** - -- `template_id` _(string, required)_ The meme template ID to use for creation. You can get this from get_popular_memes. -- `top_text` _(string, optional)_ Text to display at the top of the meme. Leave empty if not needed. -- `bottom_text` _(string, optional)_ Text to display at the bottom of the meme. Leave empty if not needed. -- `font` _(Font, optional)_ Font family to use for the text. Defaults to IMPACT. -- `max_font_size` _(integer, optional)_ Maximum font size for the text. Defaults to 50. -- `no_watermark` _(boolean, optional)_ Remove the Imgflip watermark (Premium feature). Defaults to False. - - diff --git a/app/en/resources/integrations/entertainment/spotify/page.mdx b/app/en/resources/integrations/entertainment/spotify/page.mdx deleted file mode 100644 index ebfb5b86c..000000000 --- a/app/en/resources/integrations/entertainment/spotify/page.mdx +++ /dev/null @@ -1,444 +0,0 @@ -# Spotify - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - This Toolkit is not available in Arcade Cloud. You can use these tools with a - [self-hosted](/guides/deployment-hosting/configure-engine) instance of Arcade. - - -
- - - -The Arcade Spotify MCP Server provides a pre-built set of tools for interacting with Spotify. These tools make it easy to build agents and AI apps that can: - -- Get information about tracks -- Search for tracks -- Control playback - -## Available Tools - -These tools are currently available in the Arcade Spotify MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server) with the [Spotify auth - provider](/references/auth-providers/spotify#using-spotify-auth-in-custom-tools). - - -## Spotify.GetTrackFromId - -
- - -Get information about a track - -**Parameters** - -- `track_id` _(string, required)_ The Spotify ID of the track - ---- - -## Spotify.AdjustPlaybackPosition - -
- - -Adjust the playback position within the currently playing track. - -Knowledge of the current playback state is NOT needed to use this tool as it handles clamping the position to valid start/end boundaries to prevent overshooting or negative values. - -This tool allows you to seek to a specific position within the currently playing track. You can either provide an absolute position in milliseconds or a relative position from the current playback position in milliseconds. - -Note: Either absolute_position_ms or relative_position_ms must be provided, but not both. - -**Parameters** - -- `absolute_position_ms` _(integer, optional)_ The absolute position in milliseconds to seek to - -- `relative_position_ms` _(integer, optional)_ The relative position from the current playback position in milliseconds to seek to - ---- - -## Spotify.SkipToPreviousTrack - -
- - -Skip to the previous track in the user's queue, if any - ---- - -## Spotify.SkipToNextTrack - -
- - -Skip to the next track in the user's queue, if any - ---- - -## Spotify.PausePlayback - -
- - -Pause the currently playing track, if any - ---- - -## Spotify.ResumePlayback - -
- - -Resume the currently playing track, if any - ---- - -## Spotify.StartTracksPlaybackById - -
- - -Start playback of a list of tracks (songs) - -**Parameters** - -- `track_ids` _(array, required)_ A list of Spotify track (song) IDs to play. Order of execution is not guarenteed. - -- `position_ms` _(integer, optional)_ The position in milliseconds to start the first track from - ---- - -## Spotify.GetPlaybackState - -
- - -Get information about the user's current playback state, including track or episode, and active device. This tool does not perform any actions. Use other tools to control playback. - ---- - -## Spotify.GetCurrentlyPlaying - -
- - -Get information about the user's currently playing track - ---- - -## Spotify.PlayArtistByName - -
- - -Plays a song by an artist and queues four more songs by the same artist - -**Parameters** - -- `name` _(string, required)_ The name of the artist to play - ---- - -## Spotify.PlayTrackByName - -
- - -Plays a song by name - -**Parameters** - -- `track_name` _(string, required)_ The name of the track to play - -- `artist_name` _(string, optional)_ The name of the artist of the track - -## Spotify.GetAvailableDevices - -
- - -Get the available devices - ---- - -## Spotify.Search - -
- - -Search Spotify catalog information - -Explanation of the q parameter: You can narrow down your search using field filters. The available filters are album, artist, track, year, upc, tag:hipster, tag:new, isrc, and genre. Each field filter only applies to certain result types. - - The artist and year filters can be used while searching albums, artists and tracks. You can filter on a single year or a range (e.g. 1955-1960). - The album filter can be used while searching albums and tracks. - The genre filter can be used while searching artists and tracks. - The isrc and track filters can be used while searching tracks. - The upc, tag:new and tag:hipster filters can only be used while searching albums. The tag:new filter will return albums released in the past two weeks and tag:hipster can be used to return only albums with the lowest 10% popularity. - - Example: q="remaster track:Doxy artist:Miles Davis" - -**Parameters** - -- `q` _(string, required)_ The search query - -- `types` _(array, required)_ The types of results to return, Valid values are 'album', 'artist', 'playlist', 'track', 'show', 'episode', 'audiobook' - -- `limit` _(integer, optional)_ The maximum number of results to return. Defaults to `1`. - - diff --git a/app/en/resources/integrations/entertainment/twitch/page.mdx b/app/en/resources/integrations/entertainment/twitch/page.mdx deleted file mode 100644 index f606268a1..000000000 --- a/app/en/resources/integrations/entertainment/twitch/page.mdx +++ /dev/null @@ -1,174 +0,0 @@ -import { Tabs } from "nextra/components"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout, Steps } from "nextra/components"; - -# Twitch auth provider - - - At this time, Arcade does not offer a default Twitch Auth Provider. To use - Twitch auth, you must create a custom Auth Provider with your own Twitch OAuth - 2.0 credentials as described below. - - -The Twitch auth provider enables tools and agents to call the Twitch API on behalf of a user. - -### What's documented here - -This page describes how to use and configure Twitch auth with Arcade. - -This auth provider is used by: - -- Your [app code](#using-twitch-auth-in-app-code) that needs to call Twitch APIs -- Or, your [custom tools](#using-twitch-auth-in-custom-tools) that need to call Twitch APIs - -## Configuring Twitch auth - -### Create a Twitch app - -- Twitch requires that you have two-factor authentication enabled for your account. Enable in your [account security seetings](https://www.twitch.tv/settings/security) -- Create a Twitch Application in the [Twitch App Console](https://dev.twitch.tv/console/apps) -- Set the OAuth Redirect URL to the redirect URL generated by Arcade (see below) -- Select your Application category -- Select the 'Confidential' Client Type -- Copy the App key (Client ID) and App secret (Client Secret), which you'll need below - -Next, add the Twitch app to Arcade. - -### Configuring Twitch auth with the Arcade Dashboard - -1. Navigate to the OAuth section of the Arcade Dashboard and click **Add OAuth Provider**. -2. Select **Twitch** as the provider. -3. Choose a unique **ID** for your provider (e.g. "my-twitch-provider") with an optional **Description**. -4. Enter your **Client ID** and **Client Secret** from your Twitch app. -5. Note the **Redirect URL** generated by Arcade. This must be set as your Twitch app's OAuth Redirect URL. -6. Click **Save**. - -When you use tools that require Twitch auth using your Arcade account credentials, Arcade will automatically use this Twitch OAuth provider. - - -## Using Twitch auth in app code - -Use the Twitch auth provider in your own agents and AI apps to get a user-scoped token for the Twitch API. See [authorizing agents with Arcade](/get-started/about-arcade) to understand how this works. - -Use `client.auth.start()` to get a user token for the Twitch API: - - - - -```python {8-12} -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -user_id = "{arcade_user_id}" - -# Start the authorization process -auth_response = client.auth.start( - user_id=user_id, - provider="twitch", - scopes=["channel:manage:polls"], -) - -if auth_response.status != "completed": - print("Please complete the authorization challenge in your browser:") - print(auth_response.url) - -# Wait for the authorization to complete -auth_response = client.auth.wait_for_completion(auth_response) - -token = auth_response.context.token -# Do something interesting with the token... -``` - - - - - -```javascript {8-10} -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const userId = "{arcade_user_id}"; - -// Start the authorization process -const authResponse = await client.auth.start(userId, "twitch", { - scopes: ["channel:manage:polls"], -}); - -if (authResponse.status !== "completed") { - console.log("Please complete the authorization challenge in your browser:"); - console.log(authResponse.url); -} - -// Wait for the authorization to complete -authResponse = await client.auth.waitForCompletion(authResponse); - -const token = authResponse.context.token; -// Do something interesting with the token... -``` - - - - - -## Using Twitch auth in custom tools - -You can author your own [custom tools](/guides/create-tools/tool-basics/build-mcp-server) that interact with the Twitch API. - -Use the `Twitch()` auth class to specify that a tool requires authorization with Twitch. The `context.authorization.token` field will be automatically populated with the user's Twitch token: - -```python {5-6,9-13,36} -from typing import Annotated, Optional - -import httpx - -from arcade_tdk import ToolContext, tool -from arcade_tdk.auth import Twitch - - -@tool( - requires_auth=Twitch( - scopes=["channel:manage:polls"], - ) -) -async def create_poll( - context: ToolContext, - broadcaster_id: Annotated[ - str, - "The ID of the broadcaster to create the poll for.", - ], - title: Annotated[ - str, - "The title of the poll.", - ], - choices: Annotated[ - list[str], - "The choices of the poll.", - ], - duration: Annotated[ - int, - "The duration of the poll in seconds.", - ], -) -> Annotated[dict, "The poll that was created"]: - """Create a poll for a Twitch channel.""" - url = "https://api.twitch.tv/helix/polls" - headers = { - "Authorization": f"Bearer {context.authorization.token}", - "Client-Id": "your_client_id", - "Content-Type": "application/json", - } - payload = { - "broadcaster_id": broadcaster_id, - "title": title, - "choices": [{"title": choice} for choice in choices], - "duration": duration, - } - - async with httpx.AsyncClient() as client: - response = await client.post(url, headers=headers, json=payload) - response.raise_for_status() - return response.json() -``` - - diff --git a/app/en/resources/integrations/others/[toolkitId]/_meta.tsx b/app/en/resources/integrations/others/[toolkitId]/_meta.tsx new file mode 100644 index 000000000..ce7f0efde --- /dev/null +++ b/app/en/resources/integrations/others/[toolkitId]/_meta.tsx @@ -0,0 +1,13 @@ +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "*": { + theme: { + breadcrumb: false, + toc: false, + copyPage: false, + }, + }, +}; + +export default meta; diff --git a/app/en/resources/integrations/others/[toolkitId]/page-impl.tsx b/app/en/resources/integrations/others/[toolkitId]/page-impl.tsx new file mode 100644 index 000000000..e37332a5d --- /dev/null +++ b/app/en/resources/integrations/others/[toolkitId]/page-impl.tsx @@ -0,0 +1,10 @@ +import { createToolkitDocsPage } from "@/app/en/resources/integrations/_lib/toolkit-docs-page"; + +export const dynamicParams = false; + +const { Page, generateMetadata, generateStaticParams } = + createToolkitDocsPage("others"); + +export { generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/others/[toolkitId]/page.mdx b/app/en/resources/integrations/others/[toolkitId]/page.mdx new file mode 100644 index 000000000..ca97c319f --- /dev/null +++ b/app/en/resources/integrations/others/[toolkitId]/page.mdx @@ -0,0 +1,14 @@ +--- +title: "MCP server" +description: "Generated MCP server documentation." +--- + +import Page, { + dynamicParams, + generateMetadata, + generateStaticParams, +} from "./page-impl"; + +export { dynamicParams, generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/others/_meta.tsx b/app/en/resources/integrations/others/_meta.tsx new file mode 100644 index 000000000..232a6b2c1 --- /dev/null +++ b/app/en/resources/integrations/others/_meta.tsx @@ -0,0 +1,78 @@ +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "-- Optimized": { + type: "separator", + title: "Optimized", + }, + codesandbox: { + title: "Codesandbox", + href: "/en/resources/integrations/others/codesandbox", + }, + complextools: { + title: "ComplexTools", + href: "/en/resources/integrations/others/complextools", + }, + deepwiki: { + title: "Deepwiki", + href: "/en/resources/integrations/others/deepwiki", + }, + figma: { + title: "Figma", + href: "/en/resources/integrations/others/figma", + }, + google: { + title: "Google", + href: "/en/resources/integrations/others/google", + }, + math: { + title: "Math", + href: "/en/resources/integrations/others/math", + }, + microsoft: { + title: "Microsoft", + href: "/en/resources/integrations/others/microsoft", + }, + notiontoolkit: { + title: "Notion", + href: "/en/resources/integrations/others/notiontoolkit", + }, + pagerduty: { + title: "Pagerduty", + href: "/en/resources/integrations/others/pagerduty", + }, + pylon: { + title: "Pylon", + href: "/en/resources/integrations/others/pylon", + }, + search: { + title: "Search", + href: "/en/resources/integrations/others/search", + }, + test2: { + title: "Test2", + href: "/en/resources/integrations/others/test2", + }, + web: { + title: "Web", + href: "/en/resources/integrations/others/web", + }, + "-- Starter": { + type: "separator", + title: "Starter", + }, + upclickapi: { + title: "ClickUp API", + href: "/en/resources/integrations/others/upclickapi", + }, + mailchimpmarketingapi: { + title: "Mailchimp API", + href: "/en/resources/integrations/others/mailchimpmarketingapi", + }, + pylonapi: { + title: "PylonApi", + href: "/en/resources/integrations/others/pylonapi", + }, +}; + +export default meta; diff --git a/app/en/resources/integrations/payments/[toolkitId]/_meta.tsx b/app/en/resources/integrations/payments/[toolkitId]/_meta.tsx new file mode 100644 index 000000000..ce7f0efde --- /dev/null +++ b/app/en/resources/integrations/payments/[toolkitId]/_meta.tsx @@ -0,0 +1,13 @@ +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "*": { + theme: { + breadcrumb: false, + toc: false, + copyPage: false, + }, + }, +}; + +export default meta; diff --git a/app/en/resources/integrations/payments/[toolkitId]/page-impl.tsx b/app/en/resources/integrations/payments/[toolkitId]/page-impl.tsx new file mode 100644 index 000000000..de3a2ba00 --- /dev/null +++ b/app/en/resources/integrations/payments/[toolkitId]/page-impl.tsx @@ -0,0 +1,10 @@ +import { createToolkitDocsPage } from "@/app/en/resources/integrations/_lib/toolkit-docs-page"; + +export const dynamicParams = false; + +const { Page, generateMetadata, generateStaticParams } = + createToolkitDocsPage("payments"); + +export { generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/payments/[toolkitId]/page.mdx b/app/en/resources/integrations/payments/[toolkitId]/page.mdx new file mode 100644 index 000000000..ca97c319f --- /dev/null +++ b/app/en/resources/integrations/payments/[toolkitId]/page.mdx @@ -0,0 +1,14 @@ +--- +title: "MCP server" +description: "Generated MCP server documentation." +--- + +import Page, { + dynamicParams, + generateMetadata, + generateStaticParams, +} from "./page-impl"; + +export { dynamicParams, generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/payments/_meta.tsx b/app/en/resources/integrations/payments/_meta.tsx index 40d42c8e2..7996ca173 100644 --- a/app/en/resources/integrations/payments/_meta.tsx +++ b/app/en/resources/integrations/payments/_meta.tsx @@ -1,15 +1,25 @@ import type { MetaRecord } from "nextra"; const meta: MetaRecord = { - "*": { - theme: { - breadcrumb: true, - toc: true, - copyPage: true, - }, + "-- Optimized": { + type: "separator", + title: "Optimized", }, stripe: { title: "Stripe", + href: "/en/resources/integrations/payments/stripe", + }, + "-- Starter": { + type: "separator", + title: "Starter", + }, + stripeapi: { + title: "Stripe API", + href: "/en/resources/integrations/payments/stripeapi", + }, + zohobooksapi: { + title: "Zoho Books API", + href: "/en/resources/integrations/payments/zohobooksapi", }, }; diff --git a/app/en/resources/integrations/payments/stripe/page.mdx b/app/en/resources/integrations/payments/stripe/page.mdx deleted file mode 100644 index 8484e1fe4..000000000 --- a/app/en/resources/integrations/payments/stripe/page.mdx +++ /dev/null @@ -1,456 +0,0 @@ -# Stripe - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Stripe MCP Sever lets you interact with the Stripe API. Use these tools to build intelligent agents and applications that process payments, create invoices, and more. - -## Available Tools - - - - - If you need an action that's not listed here, please [contact - us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Stripe.CreateCustomer - -Create a customer in Stripe. - -**Parameters** - -- **`name`** _(string, required)_: The name of the customer. -- **`email`** _(string, optional)_: The email address of the customer. - -
- - -## Stripe.ListCustomers - -Fetch a list of customers from Stripe. - -**Parameters** - -- **`limit`** _(int, optional, defaults to 10)_: A limit on the number of objects to be returned. Limit can range between 1 and 100. -- **`email`** _(string, optional)_: A case-sensitive filter on the list based on the customer's email field. - -
- - -## Stripe.CreateProduct - -Create a product in Stripe. - -**Parameters** - -- **`name`** _(string, required)_: The name of the product. -- **`description`** _(string, optional)_: The description of the product. - - - -## Stripe.ListProducts - -Fetch a list of products from Stripe. - -**Parameters** - -- **`limit`** _(int, optional, defaults to 10)_: A limit on the number of products returned. Limit can range between 1 and 100, and defaults to 10. - - - -## Stripe.CreatePrice - -Create a price in Stripe. - -**Parameters** - -- **`product`** _(string, required)_: The ID of the product to create the price for. -- **`unit_amount`** _(int, required)_: The unit amount of the price in cents. -- **`currency`** _(string, required)_: The currency of the price. - - - -## Stripe.ListPrices - -Fetch a list of prices from Stripe. - -**Parameters** - -- **`product`** _(string, optional)_: The ID of the product to list prices for. -- **`limit`** _(int, optional, defaults to 10)_: A limit on the number of objects to be returned. Limit can range between 1 and 100, and defaults to 10. - - - -## Stripe.CreatePaymentLink - -Create a payment link in Stripe. - -**Parameters** - -- **`price`** _(string, required)_: The ID of the price to create the payment link for. -- **`quantity`** _(int, required)_: The quantity of the product to include. - - - -## Stripe.ListInvoices - -List invoices in Stripe. - -**Parameters** - -- **`customer`** _(string, optional)_: The ID of the customer to list invoices for. -- **`limit`** _(int, optional, defaults to 10)_: A limit on the number of invoices returned. Limit can range between 1 and 100, and defaults to 10. - - - -## Stripe.CreateInvoice - -Create an invoice in Stripe. - -**Parameters** - -- **`customer`** _(string, required)_: The ID of the customer to create the invoice for. -- **`days_until_due`** _(int, optional)_: The number of days until the invoice is due. - - - -## Stripe.CreateInvoiceItem - -Create an invoice item in Stripe. - -**Parameters** - -- **`customer`** _(string, required)_: The ID of the customer to create the invoice item for. -- **`price`** _(string, required)_: The ID of the price for the item. -- **`invoice`** _(string, required)_: The ID of the invoice to create the item for. - - - -## Stripe.FinalizeInvoice - -Finalize an invoice in Stripe. - -**Parameters** - -- **`invoice`** _(string, required)_: The ID of the invoice to finalize. - - - -## Stripe.RetrieveBalance - -Retrieve the balance from Stripe. This tool takes no inputs. - - - -## Stripe.CreateRefund - -Refund a payment intent in Stripe. - -**Parameters** - -- **`payment_intent`** _(string, required)_: The ID of the PaymentIntent to refund. -- **`amount`** _(int, optional)_: The refund amount to refund in cents. - - - -## Stripe.ListPaymentIntents - -List payment intents in Stripe. - -**Parameters** - -- **`customer`** _(string, optional)_: The ID of the customer to list payment intents for. -- **`limit`** _(int, optional)_: A limit on the number of payment intents returned. Limit can range between 1 and 100, and defaults to 10. - - - -## Stripe.CreateBillingPortalSession - -Create a billing portal session in Stripe. - -**Parameters** - -- **`customer`** _(string, required)_: The ID of the customer to create the billing portal session for. -- **`return_url`** _(string, optional)_: The default URL to return to afterwards. - - - -## Auth - -The Arcade Stripe MCP Sever uses the [Stripe Agent Toolkit](https://github.com/stripe/agent-MCP Sever) to interact with the Stripe API. - -- **Required Secret:** - - `STRIPE_SECRET_KEY`: Your Stripe API key. - - diff --git a/app/en/resources/integrations/payments/stripe_api/page.mdx b/app/en/resources/integrations/payments/stripe_api/page.mdx deleted file mode 100644 index 37639e25f..000000000 --- a/app/en/resources/integrations/payments/stripe_api/page.mdx +++ /dev/null @@ -1,7702 +0,0 @@ -# StripeApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The StripeApi MCP Server provides a comprehensive set of tools for interacting with the low-level Stripe API. These tools let users and agents: - -- Inspect and manage accounts, connected accounts, capabilities, external accounts, and account persons. -- View and delete customers, payment methods, cards, bank accounts, tax IDs, discounts, coupons, and promotion codes. -- Create, retrieve, search, and manage charges, refunds, disputes, payment intents, payment links, checkout sessions, and payment-related line items. -- Access billing, invoices, invoice items, credit notes, application fees/refunds, billing alerts, credit grants, meters, and billing portal configurations. -- Work with Stripe's issuing features (cards, cardholders, authorizations, disputes, settlements, tokens) and physical bundles. -- Query and retrieve Treasury and Financial Connections data: financial accounts, transactions, transfers, inbound/outbound payments, received credits/debits, and account owners. -- Manage products, prices, plans, subscriptions, subscription items/schedules, quotes, and promotion/feature attachments. -- Retrieve tax data: tax rates, tax codes, tax registrations, tax calculations, and related line items. -- Use reporting and Sigma tools: report types, report runs, scheduled query runs, and search endpoints for invoices, subscriptions, products, prices, charges, and customers. -- Administer Stripe resources: files/file links, webhooks, terminal configurations/locations/readers, Apple Pay domains, Radar value lists, test clocks, tokens, top-ups, payouts, transfers/reversals, and verification/identity sessions and reports. -- Fetch auxiliary objects: country specs, exchange rates, climate products/orders/suppliers, mandates, source objects/transactions, issuing tokens, and invoice rendering templates. - -Ideal for building agents or apps that need programmatic access to nearly every read and management operation across Stripe's APIs. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## StripeApi.GetStripeAccountDetails - -
- - -Retrieve details of a Stripe account. - -**Parameters** - -- **expand_fields** (`array[string]`, optional) A list of fields to specify which fields in the Stripe account response should be expanded. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteStripeConnectedAccount - -
- - -Delete managed accounts via Stripe Connect. - -**Parameters** - -- **account_id_to_delete** (`string`, required) The unique identifier of the Stripe account to be deleted. Ensure this is a managed account with zero balance. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveAccountDetails - -
- - -Retrieve details of a specific account. - -**Parameters** - -- **account_id** (`string`, required) The unique identifier of the account to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) A list of fields to expand in the response for detailed account information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteExternalBankAccount - -
- - -Delete an external bank account for a specified account. - -**Parameters** - -- **account_identifier** (`string`, required) The account ID from which you want to delete an external bank account. -- **external_account_id** (`string`, required) The unique identifier of the external bank account to be deleted. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetExternalBankAccountDetails - -
- - -Retrieve details of a specific external bank account for an account. - -**Parameters** - -- **account_id** (`string`, required) The unique identifier for the account associated with the external bank account. -- **external_account_id** (`string`, required) Unique identifier for the external bank account to retrieve its details. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to expand for additional detail. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetAccountCapabilities - -
- - -Retrieve capabilities associated with a Stripe account. - -**Parameters** - -- **account_id** (`string`, required) The ID of the Stripe account for which to retrieve capabilities. This is a required field. -- **fields_to_expand** (`array[string]`, optional) A list of fields to expand in the response, specified as strings. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetAccountCapabilityDetails - -
- - -Retrieve details of a specific account capability. - -**Parameters** - -- **account_id** (`string`, required) The unique identifier for the Stripe account whose capability information is being requested. -- **account_capability_identifier** (`string`, required) A unique identifier string for the specific capability of the account to be retrieved. This is essential to specify which capability's details you want to fetch from Stripe. -- **expand_fields** (`array[string]`, optional) List of fields in the response to expand for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.ListExternalAccounts - -
- - -Retrieve external accounts linked to a Stripe account. - -**Parameters** - -- **stripe_account_id** (`string`, required) The unique identifier for the Stripe account whose external accounts you want to retrieve. -- **pagination_ending_before** (`string`, optional) A cursor used to define your position in the list for pagination. It specifies the object ID before which the list should end. -- **expand_response_fields** (`array[string]`, optional) A list of fields in the response to expand for detailed information. -- **max_results_per_page** (`integer`, optional) Specify the number of external accounts to retrieve, ranging from 1 to 100. Default is 10. -- **filter_by_object_type** (`string`, optional) Specify the type of external accounts to filter: 'bank_account' or 'card'. -- **pagination_starting_after_object_id** (`string`, optional) Object ID for pagination to fetch the next page of results. Use the ID of the last object from the current list. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteExternalAccount - -
- - -Delete a specified external account for a given account. - -**Parameters** - -- **account_identifier** (`string`, required) The unique identifier of the account from which the external account will be deleted. -- **external_account_id** (`string`, required) Unique identifier for the external account to be deleted. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetStripeExternalAccountDetails - -
- - -Retrieve details of a specific Stripe external account. - -**Parameters** - -- **stripe_account_id** (`string`, required) The unique identifier for the Stripe account containing the external account. -- **external_account_id** (`string`, required) Unique identifier for the external account to be retrieved from Stripe. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteAccountPersonRelationship - -
- - -Remove a person's relationship from a Stripe account. - -**Parameters** - -- **account_id** (`string`, required) The unique identifier for the Stripe account from which the person's relationship will be removed. This ID is required to specify the correct account. -- **person_id** (`string`, required) The unique identifier of the person whose relationship to the account is to be removed. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrievePersonInformation - -
- - -Retrieve information about a person in a Stripe account. - -**Parameters** - -- **stripe_account_id** (`string`, required) The unique identifier of the Stripe account from which to retrieve the person's information. This is required to access the account details linked to this person. -- **person_identifier** (`string`, required) The unique identifier of the person to retrieve within the Stripe account. This ID is required to fetch the specific person's details. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteAccountPerson - -
- - -Delete a person's relationship to an account in Stripe. - -**Parameters** - -- **account_id** (`string`, required) The unique identifier of the account from which a person's relationship will be deleted. This must be a valid Stripe account ID. -- **person_id** (`string`, required) A unique identifier for the person whose relationship to the account will be deleted. This is required and must be a valid person ID in Stripe. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrievePersonAccountDetails - -
- - -Retrieve details of a person linked to an account. - -**Parameters** - -- **account_id** (`string`, required) The identifier of the Stripe account to which the person is linked. This is required to specify which account's person details need to be retrieved. -- **person_identifier** (`string`, required) The unique identifier of the person whose details need to be retrieved. This ID is associated with the person's account in Stripe. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response to be expanded for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.ListApplePayDomains - -
- - -Retrieve a list of Apple Pay domains. - -**Parameters** - -- **domain_name_filter** (`string`, optional) Filter the list by a specific domain name. Leave empty to return all domains. -- **pagination_ending_before_id** (`string`, optional) Object ID for pagination to fetch the previous page of the list. -- **expand_fields** (`array[string]`, optional) An array of fields to expand in the response for additional details. -- **max_domains_to_return** (`integer`, optional) Specify the number of Apple Pay domains to retrieve, between 1 and 100. Defaults to 10 if not set. -- **pagination_starting_after_cursor** (`string`, optional) An object ID for pagination to retrieve the next page of the list. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteApplePayDomain - -
- - -Delete an Apple Pay domain from Stripe. - -**Parameters** - -- **apple_pay_domain_to_delete** (`string`, required) The domain name of the Apple Pay domain you wish to delete from your Stripe account. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveApplePayDomain - -
- - -Retrieve details of an Apple Pay domain. - -**Parameters** - -- **apple_pay_domain_name** (`string`, required) The domain name of the Apple Pay site to retrieve details for. This should be a valid domain string. -- **fields_to_expand** (`array[string]`, optional) A list of fields to expand in the response for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveApplicationFeeRefundDetail - -
- - -Retrieve details of a specific application fee refund. - -**Parameters** - -- **application_fee_id** (`string`, required) The ID of the application fee associated with the refund to retrieve details for. -- **refund_id** (`string`, required) The unique identifier of the specific refund to retrieve details for. This is required to access a particular refund. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response for additional detail. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveApplicationFeeDetails - -
- - -Retrieve details of a specific application fee. - -**Parameters** - -- **application_fee_id** (`string`, required) The unique identifier of the application fee to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) A list of fields to expand in the response for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetApplicationFeeRefunds - -
- - -Retrieve refunds for a specific application fee. - -**Parameters** - -- **application_fee_id** (`string`, required) The unique identifier of the application fee for which refunds are being retrieved. This ID specifies which fee's refunds should be listed. -- **pagination_cursor_ending_before** (`string`, optional) An object ID cursor used for pagination to fetch the previous page of refunds. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to expand for additional details. -- **maximum_number_of_refunds** (`integer`, optional) The maximum number of refund objects to return, ranging from 1 to 100. Defaults to 10 if not specified. -- **pagination_starting_after** (`string`, optional) An object ID to fetch the next page of refunds after this ID, used for pagination. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCurrentAccountBalance - -
- - -Retrieve the current account balance from Stripe. - -**Parameters** - -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveBalanceTransactionById - -
- - -Retrieve details of a balance transaction by ID. - -**Parameters** - -- **balance_transaction_id** (`string`, required) The unique identifier for the balance transaction to retrieve. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetBalanceSettings - -
- - -Retrieve balance settings for a connected Stripe account. - -**Parameters** - -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for the connected Stripe account's balance settings. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetBalanceTransactionById - -
- - -Retrieve details of a balance transaction by ID. - -**Parameters** - -- **transaction_id** (`string`, required) The unique identifier of the balance transaction to be retrieved. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetBillingAlerts - -
- - -Retrieve active and inactive billing alerts. - -**Parameters** - -- **filter_by_alert_type** (`string`, optional) Filter results to only include alerts of the specified type. Accepts 'usage_threshold'. -- **pagination_ending_before** (`string`, optional) A pagination cursor. Use this ID to fetch the previous page of the list if starting from a specific object. -- **expand_response_fields** (`array[string]`, optional) List of fields in the response that should be expanded. Each field should be a string. -- **result_limit** (`integer`, optional) Specify the maximum number of billing alerts to be returned. Accepts an integer from 1 to 100. Defaults to 10 if not provided. -- **filter_by_meter** (`string`, optional) Filter results to only include alerts related to a specific meter type. -- **pagination_starting_after** (`string`, optional) Cursor indicating the starting point for fetching the next page of alerts. Use an object ID from a previous response. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetBillingAlert - -
- - -Retrieve billing alert details by ID. - -**Parameters** - -- **billing_alert_id** (`string`, required) The unique identifier of the billing alert to retrieve details for. -- **expand_fields** (`array[string]`, optional) List of fields in the response that should be expanded. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCreditBalanceTransactions - -
- - -Retrieve a list of credit balance transactions. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier of the customer for which to fetch credit balance transactions. -- **credit_grant_id** (`string`, optional) The identifier for the specific credit grant to fetch its credit balance transactions. -- **pagination_ending_cursor** (`string`, optional) A pagination cursor ID to fetch the previous page of the list. Use an object ID to identify your position. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response that should be expanded for additional details. -- **max_transactions_to_return** (`integer`, optional) Specify the maximum number of transactions to return, ranging between 1 and 100. The default is 10. -- **pagination_starting_after** (`string`, optional) An object ID cursor to fetch the next page of credit balance transactions. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCreditBalanceTransaction - -
- - -Retrieve a credit balance transaction by ID. - -**Parameters** - -- **transaction_id** (`string`, required) Unique identifier for the credit balance transaction to be retrieved. -- **fields_to_expand** (`array[string]`, optional) An array of field names to expand in the response. Allows accessing nested information related to the transaction. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetBillingCreditGrants - -
- - -Retrieve a list of billing credit grants. - -**Parameters** - -- **customer_id** (`string`, optional) The unique identifier of the customer whose credit grants you want to retrieve. -- **pagination_ending_before** (`string`, optional) An object ID to fetch the previous page of the list. Use the last received object's ID from the current page. -- **fields_to_expand** (`array[string]`, optional) A list of fields to be expanded in the response for detailed information. -- **credit_grant_limit** (`integer`, optional) The maximum number of credit grants to return, between 1 and 100. Defaults to 10 if not specified. -- **pagination_starting_after_cursor** (`string`, optional) A cursor (object ID) for pagination to fetch the next page in the list. Use the ID from the last object in the previous list. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveCreditGrant - -
- - -Retrieve details of a specific credit grant using its ID. - -**Parameters** - -- **credit_grant_id** (`string`, required) The unique identifier for the credit grant to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response that should be expanded to include additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetBillingMeters - -
- - -Retrieve a list of billing meters from Stripe. - -**Parameters** - -- **pagination_ending_before** (`string`, optional) An object ID cursor to fetch the previous page, used for pagination. -- **fields_to_expand** (`array[string]`, optional) An array of strings specifying which fields in the response should be expanded. -- **number_of_billing_meters** (`integer`, optional) Specify the number of billing meters to return, ranging from 1 to 100 (default is 10). -- **pagination_starting_after_cursor** (`string`, optional) Cursor ID to define your starting point in the list for pagination. Use this to fetch the next page of results. -- **filter_status** (`string`, optional) Filter results to include only billing meters with the specified status. Options are 'active' or 'inactive'. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveBillingMeter - -
- - -Retrieve billing meter details by ID. - -**Parameters** - -- **billing_meter_id** (`string`, required) The ID of the billing meter to be retrieved. -- **fields_to_expand** (`array[string]`, optional) A list of field names to expand in the billing meter response for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetBillingMeterEventSummaries - -
- - -Retrieve billing meter event summaries by meter ID. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier of the customer for which to fetch event summaries. -- **stop_aggregating_until** (`integer`, required) The exclusive timestamp to stop aggregating meter events. Ensure it aligns with minute boundaries. -- **start_time_timestamp** (`integer`, required) The timestamp to begin aggregating meter events (inclusive). Must align with minute boundaries. -- **meter_id** (`string`, required) The unique identifier for the billing meter to fetch event summaries for. -- **pagination_ending_before_id** (`string`, optional) An object ID for pagination, used to fetch the previous page of a list. Aligns the list cursor to end before the specified object ID. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for detailed results. -- **number_of_objects_limit** (`integer`, optional) A limit on the number of billing meter event summaries to be returned. Must be between 1 and 100, with a default of 10. -- **pagination_starting_after_id** (`string`, optional) The object ID to use as a cursor to fetch the next page of the list for pagination. -- **granularity_for_event_summaries** (`string`, optional) Specifies the granularity for event summaries: 'hour' or 'day'. If not set, returns a single summary for the time range. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetBillingPortalConfigurations - -
- - -Retrieve customer portal configurations from Stripe. - -**Parameters** - -- **pagination_cursor_ending_before** (`string`, optional) A cursor for pagination to get the previous page in the list, using an object ID. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to be expanded. Each entry should be a string representing a field name. -- **result_limit** (`integer`, optional) Specify the number of configurations to return, between 1 and 100. Default is 10. -- **pagination_start_after_id** (`string`, optional) A cursor object ID used to fetch the next page of the list for pagination. -- **only_active_configurations** (`boolean`, optional) Set to true to list only active configurations, or false to list inactive ones. -- **return_default_configurations_only** (`boolean`, optional) Set to true to return only default configurations, or false to return non-default configurations. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCustomerPortalConfiguration - -
- - -Retrieve customer portal configuration details. - -**Parameters** - -- **configuration_id** (`string`, required) The unique identifier for the customer portal configuration to retrieve. -- **expand_fields_in_response** (`array[string]`, optional) A list of field names in the response that should be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.StripeSearchCharges - -
- - -Search for previously created charges using Stripe. - -**Parameters** - -- **search_query_string** (`string`, required) The search query string using Stripe's Search Query Language to filter charge results. Refer to Stripe's documentation for syntax and fields. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for additional detail. -- **result_limit** (`integer`, optional) Specify the number of charge objects to return. The limit can be between 1 and 100, with a default of 10. -- **pagination_cursor** (`string`, optional) Cursor for pagination. Use the 'next_page' value from the previous response for subsequent requests. Omit on the first call. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveStripeChargeDetails - -
- - -Retrieve details of a specific Stripe charge via its unique ID. - -**Parameters** - -- **charge_id** (`string`, required) The unique identifier of the charge. Use this to retrieve its details. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to expand for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetChargeDisputeDetails - -
- - -Retrieve details of a dispute for a specific charge. - -**Parameters** - -- **charge_id** (`string`, required) The unique identifier of the charge for which you want to retrieve dispute details. -- **fields_to_expand_in_dispute_response** (`array[string]`, optional) List of fields to expand in the dispute response for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetChargeRefunds - -
- - -Retrieve refunds for a specific charge on Stripe. - -**Parameters** - -- **charge_id** (`string`, required) The unique identifier of the charge for which to retrieve refunds. This ID is required to specify the particular charge. -- **pagination_ending_before** (`string`, optional) Specify an object ID to fetch the previous page of refunds before this object. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response for more detailed information. -- **object_return_limit** (`integer`, optional) Specify the number of refunds to return, ranging from 1 to 100. Defaults to 10 if not set. -- **pagination_starting_after** (`string`, optional) ID of the object to start retrieving the next page from. Used for pagination in refund lists. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveRefundDetailsByCharge - -
- - -Fetches details of a refund associated to a specific charge. - -**Parameters** - -- **charge_id** (`string`, required) The unique identifier for the charge associated with the refund. -- **refund_id** (`string`, required) The ID of the refund to retrieve details for. This is required to specify the refund you want to look up. -- **fields_to_expand** (`array[string]`, optional) List of fields in the refund details to be expanded in the response. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveCheckoutSession - -
- - -Retrieve a specific Stripe checkout session. - -**Parameters** - -- **session_id** (`string`, required) The unique identifier for the Checkout Session you want to retrieve. This is required to specify which session's details to access. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the checkout session response that should be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCheckoutSessionLineItems - -
- - -Fetch line items from a Stripe Checkout Session. - -**Parameters** - -- **checkout_session_id** (`string`, required) The unique identifier for the Stripe Checkout Session. This ID is required to retrieve associated line items. -- **cursor_ending_before** (`string`, optional) An object ID used for pagination to retrieve the page before the specified object in the list. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for additional details. -- **item_limit** (`integer`, optional) Sets the maximum number of line items to return, ranging from 1 to 100. Default is 10. -- **pagination_starting_after** (`string`, optional) A string representing the object ID to start the list after, for pagination purposes. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.ListClimateOrders - -
- - -Retrieve all Climate order objects from Stripe. - -**Parameters** - -- **pagination_ending_before_cursor** (`string`, optional) A cursor ID to paginate backwards through the list, fetching the page before the specified object ID for Climate orders. -- **expand_fields** (`array[string]`, optional) A list of fields in the response to expand. Provide each field name as a string in an array. -- **maximum_objects_to_return** (`integer`, optional) The number of Climate order objects to retrieve, ranging from 1 to 100. Default is 10. -- **pagination_starting_after_cursor** (`string`, optional) An object ID used as a cursor to define your place in the pagination list to retrieve the next page. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetClimateOrderDetails - -
- - -Retrieve details of a specific Climate order. - -**Parameters** - -- **order_id** (`string`, required) Unique identifier for the Climate order to retrieve details. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.ListClimateProducts - -
- - -Retrieve a list of all available Climate products. - -**Parameters** - -- **pagination_ending_before** (`string`, optional) An object ID cursor to fetch the previous page in a paginated list. Use to define your place in the list. -- **fields_to_expand** (`array[string]`, optional) Specify which fields in the response should be expanded as a list of strings. -- **objects_limit** (`integer`, optional) The maximum number of Climate product objects to return, ranging from 1 to 100. Default is 10. -- **pagination_starting_after_id** (`string`, optional) A cursor (object ID) to define your starting point in the list for pagination. Used to fetch the next page after the specified object ID. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveClimateProductDetails - -
- - -Retrieve details of a specific Climate product from Stripe. - -**Parameters** - -- **product_id** (`string`, required) The unique identifier of the Climate product to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to expand for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.ListClimateSuppliers - -
- - -Retrieve a list of all available Climate suppliers. - -**Parameters** - -- **pagination_ending_before** (`string`, optional) The object ID to use as a cursor for fetching the previous page of suppliers in the list. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response that should be expanded. -- **result_limit** (`integer`, optional) Specify the number of Climate supplier objects to return, ranging from 1 to 100, with a default of 10. -- **pagination_starting_after_cursor** (`string`, optional) Object ID for pagination to fetch the next page of the Climate suppliers list. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveClimateSupplier - -
- - -Fetches details of a specific Climate supplier. - -**Parameters** - -- **supplier_identifier** (`string`, required) The unique identifier for the Climate supplier to be retrieved. This is required to fetch the supplier's information. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response for detailed information on the Climate supplier. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetConfirmationTokenInfo - -
- - -Retrieves details of an existing confirmation token. - -**Parameters** - -- **confirmation_token** (`string`, required) The unique identifier of the confirmation token to retrieve details for. This is required. -- **fields_to_expand** (`array[string]`, optional) A list of fields to expand in the response for additional details. Each field should be specified as a string. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveCountrySpecs - -
- - -Retrieve all country specification objects from the API. - -**Parameters** - -- **pagination_ending_before** (`string`, optional) The object ID to specify your place in the list for pagination, retrieving the previous page of results. -- **expand_response_fields** (`array[string]`, optional) An array of strings specifying fields in the response to be expanded for more detailed information. -- **number_of_country_specs_to_return** (`integer`, optional) Number of country specification objects to return, ranging from 1 to 100. The default is 10. -- **pagination_starting_after_id** (`string`, optional) Object ID to define your place in the list for pagination. Use it to fetch the next page if available, based on the last object from a previous list call. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCountrySpecifications - -
- - -Retrieve country specifications using a country code. - -**Parameters** - -- **country_code** (`string`, required) The ISO 3166-1 alpha-2 country code for which you want to retrieve specifications. For example, 'US' for the United States. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response to be expanded. Each field should be specified as a string. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteStripeCoupon - -
- - -Delete a coupon in Stripe without affecting current users. - -**Parameters** - -- **coupon_id** (`string`, required) The unique identifier of the coupon to delete on Stripe. This ID specifies which coupon should be deleted. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCouponDetails - -
- - -Retrieve details of a coupon by its ID. - -**Parameters** - -- **coupon_id** (`string`, required) The unique identifier of the coupon to retrieve details. -- **expanded_fields** (`array[string]`, optional) A list of fields in the response that should be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveCreditNoteLines - -
- - -Fetch line items from a specified credit note. - -**Parameters** - -- **credit_note_id** (`string`, required) The unique identifier of the credit note to retrieve line items from. -- **pagination_ending_before** (`string`, optional) The object ID to paginate before, fetching the previous page in the list. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to be expanded. Allows detailed retrieval of related objects. -- **max_objects_to_return** (`integer`, optional) Specify the number of credit note line items to return. Must be between 1 and 100, default is 10. -- **pagination_starting_after** (`string`, optional) An object ID used for pagination to fetch the next page of the list. This ID should be the last object from a previous set of data. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveCreditNote - -
- - -Retrieve details of a specific credit note by ID. - -**Parameters** - -- **credit_note_id** (`string`, required) The unique identifier of the credit note to be retrieved. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response to be expanded for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.SearchStripeCustomers - -
- - -Search and retrieve customer data from Stripe. - -**Parameters** - -- **search_query_string** (`string`, required) The search query string used to search for customers. Refer to Stripe's Search Query Language documentation for syntax and supported fields. -- **expand_response_fields** (`array[string]`, optional) A list of fields in the response that should be expanded. Provide the field names as strings. -- **customer_result_limit** (`integer`, optional) Specifies the maximum number of customer records to return, between 1 and 100. Default is 10. -- **pagination_cursor** (`string`, optional) Cursor for paginating through results. Use 'next_page' from a previous response for subsequent results. Omit on the first call. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteStripeCustomer - -
- - -Permanently delete a Stripe customer and cancel subscriptions. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier of the customer to be deleted. This ID is required and should match the customer in the Stripe system. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveCustomerDetails - -
- - -Retrieve details of a specific customer. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the customer to retrieve details for. This is a string provided by Stripe. -- **expand_response_fields** (`array[string]`, optional) List of fields to expand in the response for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCustomerBalanceTransactions - -
- - -Retrieve a customer's balance transaction updates. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier of the customer. This ID is used to retrieve balance transaction updates for that specific customer. -- **pagination_ending_before_cursor** (`string`, optional) A cursor ID used to fetch the previous page of balance transactions in pagination. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded. -- **result_limit** (`integer`, optional) Sets the maximum number of balance transactions to retrieve, ranging from 1 to 100. Default is 10. -- **pagination_starting_after_cursor** (`string`, optional) A cursor for pagination. Use the object ID from the last received page to fetch the next page. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCustomerBalanceTransaction - -
- - -Retrieve a specific customer balance transaction from Stripe. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the customer. This is required to retrieve the specific balance transaction. -- **transaction_id** (`string`, required) The unique identifier for the customer balance transaction to retrieve. -- **fields_to_expand** (`array[string]`, optional) A list of fields to expand in the response for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCustomerBankAccounts - -
- - -Retrieve bank accounts for a specific customer. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier of the customer whose bank accounts you want to retrieve. This ID is required to access the bank account details associated with a specific customer. -- **pagination_ending_before** (`string`, optional) An object ID used as a cursor to fetch the previous page of bank accounts in a paginated list. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response. Specify which aspects of the response should be expanded for detailed information. -- **result_limit** (`integer`, optional) The maximum number of bank accounts to return, ranging from 1 to 100. Defaults to 10 if not specified. -- **pagination_cursor_starting_after** (`string`, optional) A string specifying the object ID to define your place in the list for pagination. Use this to fetch the next page of bank accounts. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCustomerBankAccountDetails - -
- - -Retrieve details of a customer's bank account from Stripe. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the Stripe customer whose bank account details are being retrieved. -- **bank_account_id** (`string`, required) The unique identifier for the specific bank account associated with the Stripe customer. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to expand for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCustomerCards - -
- - -Retrieve a list of cards belonging to a customer. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the customer whose cards are to be retrieved. This ID is required to obtain the card list. -- **pagination_ending_before** (`string`, optional) Object ID to define the cursor's place in pagination, used to fetch the previous page of the card list. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to be expanded for additional details. -- **card_retrieval_limit** (`integer`, optional) Specify the maximum number of cards to retrieve. The limit must be between 1 and 100, with a default of 10 if not specified. -- **pagination_starting_after_cursor** (`string`, optional) An object ID indicating the position to start fetching the next page of the card list. Use this for pagination. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCustomerCardDetails - -
- - -Retrieve details about a specific card for a customer. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the customer whose card details are being retrieved. This is required to specify which customer's card information you want to access. -- **card_id** (`string`, required) The unique identifier of the card to retrieve details for. This is specific to the card associated with the customer. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCustomerCashBalance - -
- - -Retrieve a customer's cash balance on Stripe. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier of the customer whose cash balance is being retrieved. This ID is used to specify which customer's balance should be returned. -- **fields_to_expand** (`array[string]`, optional) An array of strings specifying which fields in the response should be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCustomerCashBalanceTransactions - -
- - -Retrieve transactions modifying a customer's cash balance. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier of the customer whose cash balance transactions are to be retrieved. This ID is required for the API call. -- **pagination_cursor_ending_before** (`string`, optional) A string representing the ID used for pagination to fetch the previous page of transactions. -- **expand_fields** (`array[string]`, optional) List of fields to expand in the response for detailed information. -- **transaction_limit** (`integer`, optional) The number of transactions to return, between 1 and 100. Default is 10. -- **pagination_starting_after_cursor** (`string`, optional) Object ID cursor for pagination to continue listing transactions after a specified object. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveCashBalanceTransaction - -
- - -Retrieve a cash balance transaction for a customer. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier of the customer whose cash balance transaction is to be retrieved. -- **transaction_id** (`string`, required) The unique identifier for the cash balance transaction to be retrieved. -- **expand_fields_in_response** (`array[string]`, optional) List of fields to expand in the response for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RemoveCustomerDiscount - -
- - -Remove the current discount applied to a customer. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the customer whose discount is to be removed. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveCustomerDiscount - -
- - -Retrieve a customer's discount information. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the customer whose discount information you want to retrieve. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to expand. Use to get additional related information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCustomerPaymentMethods - -
- - -Retrieve payment methods for a specific customer. - -**Parameters** - -- **customer_id** (`string`, required) Unique identifier for the customer whose payment methods are to be retrieved. -- **enable_redisplay_setting** (`string`, optional) Indicates if the payment method can be shown again in a checkout flow. Options: 'always', 'limited', 'unspecified'. -- **pagination_ending_before_id** (`string`, optional) An object ID used to paginate backwards by defining the end of the list. -- **response_fields_to_expand** (`array[string]`, optional) A list of fields to expand in the response for detailed information. -- **max_payment_methods_returned** (`integer`, optional) Limit the number of payment methods returned. Accepts a value between 1 and 100, with a default of 10. -- **pagination_starting_after_cursor** (`string`, optional) Cursor for pagination that defines the start point in the list. Use the ID of the last object from the previous page. -- **payment_method_type_filter** (`string`, optional) Specify a payment method type to filter the list. Without filtering, all types are included. Choose from options like 'card', 'paypal', etc. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCustomerPaymentMethod - -
- - -Retrieve a customer's specific payment method. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the customer whose payment method information is being retrieved. This ID should be a string matching the customer's record in Stripe. -- **payment_method_id** (`string`, required) The unique identifier for the payment method to retrieve for the customer. -- **fields_to_expand** (`array[string]`, optional) List of fields in the payment method response that should be expanded for more details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.ListCustomerPaymentSources - -
- - -Retrieve payment sources for a specified customer. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the customer whose payment sources you want to retrieve. -- **pagination_ending_before** (`string`, optional) A cursor for pagination to fetch the previous page. Use an object ID from your list request. -- **expand_response_fields** (`array[string]`, optional) List of fields in the response to be expanded for additional details. -- **max_payment_sources_to_return** (`integer`, optional) Set the maximum number of payment sources to return, from 1 to 100. Defaults to 10 if not specified. -- **filter_by_object_type** (`string`, optional) Filter payment sources based on a specific object type (e.g., card, bank_account). -- **pagination_start_cursor** (`string`, optional) An object ID (string) that specifies your place in the list to fetch the next page. Use it for pagination. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveCustomerPaymentSource - -
- - -Retrieve a specified source for a given customer. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the customer whose payment source needs to be retrieved. -- **source_id** (`string`, required) The unique identifier of the payment source to retrieve for the specified customer. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCustomerSubscriptions - -
- - -Retrieve a customer's active subscriptions. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the customer whose subscriptions are being retrieved. -- **pagination_ending_before_cursor** (`string`, optional) An object ID to define your position in pagination. Use this cursor to fetch the previous page of subscriptions. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for additional details. -- **subscription_limit** (`integer`, optional) The maximum number of subscription objects to return. Must be between 1 and 100, defaulting to 10. -- **pagination_starting_after_object_id** (`string`, optional) An object ID used as a cursor to fetch the next page of subscriptions in a paginated list. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveStripeSubscriptionById - -
- - -Retrieve a Stripe subscription by its ID. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the customer whose subscription is being retrieved. Provide this to specify which customer's subscription details to fetch. -- **subscription_id** (`string`, required) The identifier of the subscription to retrieve. Required to fetch the specific subscription details. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the subscription response, allowing for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RemoveCustomerSubscriptionDiscount - -
- - -Removes the discount from a customer's subscription. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for the customer whose subscription discount should be removed. -- **subscription_id** (`string`, required) The unique identifier for the customer's subscription from which the discount will be removed. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetSubscriptionDiscount - -
- - -Retrieve discount details for a customer's subscription. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier of the customer whose subscription discount details are being retrieved. -- **subscription_id** (`string`, required) The unique identifier for the customer's subscription to retrieve discount details. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCustomerTaxIds - -
- - -Retrieve a customer's tax IDs from their profile. - -**Parameters** - -- **customer_id** (`string`, required) The ID of the customer for whom the tax IDs are being retrieved. This is a required field. -- **pagination_ending_before** (`string`, optional) Cursor object ID to fetch the previous page in a paginated list. Use the ID from the starting object of the current list. -- **expand_fields** (`array[string]`, optional) A list of fields in the response that should be expanded. Provide field names as strings. -- **max_number_of_tax_ids** (`integer`, optional) Specify the maximum number of tax IDs to return. Accepts an integer between 1 and 100, with a default value of 10. -- **pagination_starting_after** (`string`, optional) An object ID from the current list to continue fetching the next page in pagination. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteCustomerTaxId - -
- - -Deletes a customer's existing tax ID. - -**Parameters** - -- **customer_identifier** (`string`, required) The unique identifier for the customer whose tax ID will be deleted. This is a string provided by Stripe. -- **tax_id** (`string`, required) The unique identifier of the tax ID to be deleted for the customer. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCustomerTaxId - -
- - -Retrieve a specific customer's tax ID information. - -**Parameters** - -- **customer_identifier** (`string`, required) The unique identifier of the customer whose tax ID is to be retrieved. -- **tax_id_identifier** (`string`, required) The unique identifier of the customer's tax ID to be retrieved. -- **expand_response_fields** (`array[string]`, optional) A list of field names in the response that should be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveDisputeById - -
- - -Retrieve details of a dispute using its ID. - -**Parameters** - -- **dispute_id** (`string`, required) The unique identifier of the dispute to be retrieved. This ID can be used to fetch detailed information about the specific dispute. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the dispute response that should be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetActiveEntitlements - -
- - -Retrieve active entitlements for a customer from Stripe. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier of the customer whose active entitlements are being retrieved. -- **pagination_ending_before** (`string`, optional) An object ID cursor to fetch the previous page of the list of active entitlements. -- **expand_fields_in_response** (`array[string]`, optional) An array of field names to be expanded in the response from Stripe. Use this to include additional details related to specific entities. -- **max_number_of_entitlements** (`integer`, optional) Maximum number of active entitlements to retrieve for the customer, between 1 and 100. Default is 10. -- **pagination_starting_after** (`string`, optional) Use this to specify where to start the list pagination. Provide the object ID from where the list should continue. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveActiveEntitlement - -
- - -Retrieve details of an active entitlement by ID. - -**Parameters** - -- **entitlement_id** (`string`, required) The unique identifier of the active entitlement to retrieve. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response that should be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetStripeEntitlementFeatures - -
- - -Retrieve a list of entitlement features from Stripe. - -**Parameters** - -- **pagination_ending_before** (`string`, optional) Cursor for pagination defining the position in list. Use to fetch previous page by providing object ID. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to be expanded. -- **object_return_limit** (`integer`, optional) Specify the number of features to return, ranging between 1 and 100. Defaults to 10 if not provided. -- **filter_by_lookup_key** (`string`, optional) Filter results to only include features with the specified lookup key. -- **pagination_starting_after** (`string`, optional) A cursor for pagination. Use the object ID from the last item of your current list to fetch the next page. -- **include_archived_features** (`boolean`, optional) Set to true to include only archived features, or false to exclude them. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveFeatureDetails - -
- - -Fetches details for a specific feature by ID. - -**Parameters** - -- **feature_id** (`string`, required) The unique identifier of the feature to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveStripeEventDetails - -
- - -Retrieve details of a Stripe event using its unique ID. - -**Parameters** - -- **event_identifier** (`string`, required) The unique identifier of the event to retrieve details for. Typically received via a webhook and must have been created in the last 30 days. -- **fields_to_expand_in_response** (`array[string]`, optional) List of fields to be expanded in the response. Provide field names as strings. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetExchangeRates - -
- - -Retrieve Stripe's supported foreign currency exchange rates. - -**Parameters** - -- **pagination_ending_before_currency** (`string`, optional) The currency code to define your position for fetching the previous page in the exchange rate list. -- **response_fields_to_expand** (`array[string]`, optional) List of fields in the response to be expanded for detailed information. -- **result_limit** (`integer`, optional) Set the maximum number of exchange rate objects to return, ranging from 1 up to the maximum number supported by Stripe. -- **pagination_starting_currency** (`string`, optional) The currency code to define the starting point in the paginated list of exchange rates. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetDeprecatedExchangeRates - -
- - -Retrieves deprecated exchange rates for a given currency. - -**Parameters** - -- **currency_rate_id** (`string`, required) The currency code (e.g., 'USD') to retrieve exchange rates for. Use the deprecated Exchange Rate API responsibly. -- **expand_fields** (`array[string]`, optional) List of fields to be expanded in the response. Each field is specified as a string. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveFileLink - -
- - -Fetches a file link using its ID. - -**Parameters** - -- **file_link_id** (`string`, required) The ID of the file link to retrieve details for. This is used to fetch the specific file link from Stripe. -- **fields_to_expand** (`array[string]`, optional) An array of strings specifying which fields in the response should be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetFileDetails - -
- - -Retrieve details of an existing file object from Stripe. - -**Parameters** - -- **file_id** (`string`, required) The unique identifier for the file object whose details you want to retrieve. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetFinancialConnectionsAccountDetails - -
- - -Retrieve details of a Financial Connections Account. - -**Parameters** - -- **financial_account_identifier** (`string`, required) The unique identifier for the Financial Connections Account to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetFinancialAccountOwners - -
- - -Retrieve owners of a specified financial account. - -**Parameters** - -- **ownership_object_id** (`string`, required) The ID of the ownership object from which to fetch the account owners. -- **account_id** (`string`, required) The unique identifier of the financial account to retrieve its owners. -- **pagination_cursor_ending_before** (`string`, optional) An ID to fetch the previous page in pagination, defining your place in the list. -- **fields_to_expand** (`array[string]`, optional) A list of field names in the response to be expanded, specified as an array of strings. -- **object_limit** (`integer`, optional) Specifies the maximum number of account owners to return, ranging from 1 to 100, with a default of 10. -- **pagination_starting_after_cursor** (`string`, optional) A cursor indicating the starting point for pagination in a list. Use the object ID from the previous response to fetch the next page. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveFinancialConnectionsSession - -
- - -Retrieve details of a Financial Connections Session. - -**Parameters** - -- **financial_connection_session_id** (`string`, required) The unique identifier of the Financial Connections Session to retrieve. -- **fields_to_expand** (`array[string]`, optional) An array of strings specifying which fields in the response should be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetFinancialTransactionDetails - -
- - -Retrieve details of a specific financial transaction. - -**Parameters** - -- **transaction_id** (`string`, required) The unique identifier of the financial transaction to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response to show additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveForwardingRequest - -
- - -Fetch a specific ForwardingRequest object using its ID. - -**Parameters** - -- **forwarding_request_id** (`string`, required) The unique identifier for the ForwardingRequest object to be retrieved. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveStripeVerificationReport - -
- - -Retrieve details of an existing Stripe verification report. - -**Parameters** - -- **verification_report_id** (`string`, required) The unique identifier of the verification report to fetch from Stripe. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response to expand for additional detail. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveVerificationSessionDetails - -
- - -Retrieve details of a Stripe verification session. - -**Parameters** - -- **verification_session_id** (`string`, required) The unique identifier of the Stripe VerificationSession to be retrieved. -- **expand_response_fields** (`array[string]`, optional) A list of fields in the response to be expanded for additional details. Use this to customize the verbosity of the response. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveInvoicePayment - -
- - -Fetch the details of a specific invoice payment by ID. - -**Parameters** - -- **invoice_payment_id** (`string`, required) The ID of the invoice payment to retrieve details for. This ID is required to fetch the payment information. -- **fields_to_expand** (`array[string]`, optional) List of fields to be expanded in the response. Each field should be specified as a string. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetInvoiceRenderingTemplates - -
- - -Retrieve all invoice rendering templates by creation date. - -**Parameters** - -- **pagination_ending_before** (`string`, optional) A pagination cursor indicating the object ID to end before when listing templates. Use this to fetch the previous page. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for more detailed information. -- **result_limit** (`integer`, optional) Specify the maximum number of invoice rendering templates to return, ranging from 1 to 100. Defaults to 10. -- **pagination_starting_after** (`string`, optional) Object ID defining your place in the list to fetch the next page. -- **template_status** (`string`, optional) Filter templates by their status: 'active' or 'archived'. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveInvoiceTemplate - -
- - -Fetch an invoice rendering template by ID. - -**Parameters** - -- **invoice_template_id** (`string`, required) The unique identifier for the invoice rendering template you want to retrieve. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for detailed information. -- **template_version** (`integer`, optional) Specify the version number of the invoice rendering template to retrieve. If omitted, the latest version is returned. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteInvoiceItem - -
- - -Delete an invoice item from a draft or unattached invoice. - -**Parameters** - -- **invoice_item_id** (`string`, required) The unique identifier of the invoice item to be deleted. It must be either unattached or part of a draft invoice. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetInvoiceItemDetails - -
- - -Retrieve details of a specific invoice item by ID. - -**Parameters** - -- **invoice_item_id** (`string`, required) The ID of the invoice item to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to expand for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.SearchStripeInvoices - -
- - -Search for previously created Stripe invoices. - -**Parameters** - -- **search_query_string** (`string`, required) The search query string using Stripe's Search Query Language. Refer to Stripe's documentation for syntax and supported fields. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response to be expanded for additional details. Provide field names as strings. -- **result_limit** (`integer`, optional) Defines the maximum number of invoice records to return, ranging from 1 to 100. Defaults to 10 if not specified. -- **pagination_cursor** (`string`, optional) A cursor for pagination to retrieve subsequent pages. Use the next_page value from a previous response; exclude for the first call. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteInvoiceDraft - -
- - -Permanently delete a draft invoice. - -**Parameters** - -- **invoice_id** (`string`, required) The unique identifier of the draft invoice to be permanently deleted. Cannot be used on finalized invoices or those associated with subscriptions. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveInvoiceById - -
- - -Retrieve details of an invoice using its ID. - -**Parameters** - -- **invoice_id** (`string`, required) The unique identifier for the invoice to retrieve. -- **expand_fields_in_response** (`array[string]`, optional) A list of fields in the invoice response that should be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetInvoiceLineItems - -
- - -Fetch line items from a specific invoice. - -**Parameters** - -- **invoice_id** (`string`, required) The unique identifier for the invoice to retrieve line items from. Provide this ID to specify which invoice's line items you want to access. -- **pagination_ending_before_cursor** (`string`, optional) A cursor ID to fetch the previous page of line items in the invoice list. -- **fields_to_expand** (`array[string]`, optional) List the fields in the invoice line items response that should be expanded for more details. -- **max_line_items_to_return** (`integer`, optional) The maximum number of line items to return. It can range from 1 to 100, with a default of 10. -- **pagination_start_after** (`string`, optional) An object ID defining your place in the list for pagination, used to fetch the next page of invoice line items. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveIssuingAuthorization - -
- - -Fetches details of an Issuing Authorization object. - -**Parameters** - -- **authorization_id** (`string`, required) The unique identifier for the Issuing Authorization object to retrieve. -- **expand_fields** (`array[string]`, optional) List of strings specifying which fields in the response should be expanded. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveIssuingCardholder - -
- - -Retrieve details of an issuing cardholder. - -**Parameters** - -- **cardholder_id** (`string`, required) The unique identifier of the cardholder to retrieve details for, in string format. -- **fields_to_expand** (`array[string]`, optional) An array of field names to expand in the response for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetIssuingCardDetails - -
- - -Retrieve details of a specific issuing card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the issuing card you want to retrieve details for. This is required. -- **fields_to_expand** (`array[string]`, optional) An array of fields to expand in the response for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveIssuingDispute - -
- - -Fetch the details of a specific issuing dispute. - -**Parameters** - -- **dispute_id** (`string`, required) The unique identifier of the Issuing Dispute to be retrieved. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the dispute response that should be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrievePersonalizationDesign - -
- - -Retrieve a personalization design object by ID. - -**Parameters** - -- **personalization_design_id** (`string`, required) The ID of the personalization design to retrieve. This is used to specify which design object's details are desired. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetLatestPhysicalBundles - -
- - -Retrieve the latest physical bundle objects from Stripe. - -**Parameters** - -- **pagination_end_before_id** (`string`, optional) An object ID used for pagination to fetch the previous page of the list. -- **fields_to_expand** (`array[string]`, optional) List of response fields to expand for more detailed information. -- **number_of_bundles_limit** (`integer`, optional) Specify the maximum number of physical bundle objects to return, ranging from 1 to 100. Default is 10. -- **pagination_starting_after_id** (`string`, optional) Provide the object ID to continue pagination from the next item after it in the list. -- **filter_status** (`string`, optional) Filter physical bundles by status. Options include 'active', 'inactive', or 'review'. -- **filter_by_bundle_type** (`string`, optional) Specify the type of physical bundles to return. Options are 'custom' or 'standard'. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrievePhysicalBundle - -
- - -Retrieve details of a physical bundle. - -**Parameters** - -- **physical_bundle_id** (`string`, required) The unique identifier of the physical bundle to retrieve. -- **fields_to_expand** (`array[string]`, optional) Comma-separated list of fields in the response to be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveIssuingSettlement - -
- - -Fetch details of an Issuing Settlement object. - -**Parameters** - -- **settlement_id** (`string`, required) The unique identifier of the Issuing Settlement to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) List of fields to be expanded in the response for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetIssuingTokenInfo - -
- - -Retrieve details of an Issuing Token. - -**Parameters** - -- **issuing_token_id** (`string`, required) The unique identifier of the Issuing Token to retrieve information for. This is required to specify which token's details are needed from Stripe. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response to be expanded for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveIssuingTransaction - -
- - -Fetch details of an issuing transaction by ID. - -**Parameters** - -- **transaction_id** (`string`, required) The unique identifier for the issuing transaction to be retrieved. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveFinancialSessionDetails - -
- - -Retrieve details of a financial connection session. - -**Parameters** - -- **session_identifier** (`string`, required) The unique identifier for the financial connection session to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) An array of fields in the response that should be expanded to include more details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetLinkedAccountDetails - -
- - -Retrieve details of a financial connections account. - -**Parameters** - -- **account_id** (`string`, required) The unique identifier for the financial connections account to retrieve details for. -- **expand_fields** (`array[string]`, optional) List of fields in the response to be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetLinkedAccountOwners - -
- - -Retrieve owners of a specific linked account. - -**Parameters** - -- **ownership_object_id** (`string`, required) The unique ID of the ownership object to retrieve owners from. This is required to specify which account's owners to list. -- **linked_account_id** (`string`, required) The unique identifier of the account to retrieve owners for. This is required to specify which account's owners you want to list. -- **pagination_ending_before** (`string`, optional) Cursor ID for pagination to fetch the previous page. Use the object ID from the start of the current list result. -- **expanded_fields** (`array[string]`, optional) List of fields to be expanded in the response. Specify field names to include more data in the response. -- **number_of_owners_to_return** (`integer`, optional) Specify the number of account owners to retrieve, ranging from 1 to 100. Default is 10. -- **pagination_starting_after** (`string`, optional) Cursor for pagination to specify the starting point for the next page of results using an object ID. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveMandateInfo - -
- - -Retrieve detailed information of a mandate. - -**Parameters** - -- **mandate_id** (`string`, required) The unique identifier for the mandate to retrieve details for. It should be a valid string representing the mandate ID in Stripe. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.SearchStripePaymentIntents - -
- - -Search previously created Stripe PaymentIntents. - -**Parameters** - -- **search_query_string** (`string`, required) The search query to find specific PaymentIntents using Stripe's Search Query Language. Refer to the documentation for query syntax and fields. -- **expand_fields** (`array[string]`, optional) A list of specific fields in the response that should be expanded. Use field names as strings. -- **result_limit** (`integer`, optional) Number of PaymentIntent objects to return, ranging from 1 to 100, with a default of 10. -- **pagination_cursor** (`string`, optional) Cursor for pagination. Use the 'next_page' value from a previous response to request more results. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrievePaymentIntentDetails - -
- - -Retrieve details of a specific PaymentIntent using its ID. - -**Parameters** - -- **payment_intent_id** (`string`, required) The unique identifier of the PaymentIntent to retrieve details for. Required to specify which PaymentIntent you are interested in. -- **payment_intent_client_secret** (`string`, optional) The client secret for the PaymentIntent, required when using a publishable key to retrieve the source. -- **fields_to_expand** (`array[string]`, optional) A list of fields to expand in the response for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetStripePaymentLinks - -
- - -Retrieve a list of Stripe payment links. - -**Parameters** - -- **pagination_ending_before** (`string`, optional) An object ID cursor to define the starting point in the list for pagination, retrieving the previous page. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response that should be expanded. Use field names as strings. -- **object_return_limit** (`integer`, optional) Specifies the maximum number of payment link objects to retrieve, ranging from 1 to 100. Default is 10. -- **pagination_starting_after_cursor** (`string`, optional) The object ID to define your place in the list for pagination. Use it to fetch the next page of payment links. -- **include_active_payment_links** (`boolean`, optional) Return active payment links only. Set to `false` to list inactive payment links. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrievePaymentLinkInfo - -
- - -Retrieve detailed information about a payment link. - -**Parameters** - -- **payment_link_id** (`string`, required) The unique identifier of the payment link to retrieve details for. -- **expand_fields** (`array[string]`, optional) List of fields to expand in the response for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetPaymentLinkLineItems - -
- - -Retrieve the line items for a specific payment link. - -**Parameters** - -- **payment_link_id** (`string`, required) The unique identifier for the payment link whose line items need to be retrieved. -- **pagination_ending_before** (`string`, optional) An object ID that serves as a pagination cursor to fetch the previous page of the list. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for more detailed information. -- **item_limit** (`integer`, optional) Specifies the maximum number of line items to retrieve, ranging from 1 to 100. Default is 10. -- **pagination_starting_after** (`string`, optional) An object ID used as a cursor to fetch the next page of the list when paginating. Use the ID of the last object from the previous response. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.ListPaymentMethodConfigurations - -
- - -Retrieve available payment method configurations from Stripe. - -**Parameters** - -- **filter_by_connect_application** (`string`, optional) Specify the Connect application ID to filter the payment method configurations by. -- **pagination_ending_before_id** (`string`, optional) Object ID that defines your place in the list for pagination, used to fetch the previous page. -- **expand_fields** (`array[string]`, optional) List of fields in the response that should be expanded. Provide field names as strings in an array. -- **max_results** (`integer`, optional) Specify the maximum number of payment method configurations to be returned, ranging from 1 to 100. Defaults to 10 if not specified. -- **pagination_starting_after_id** (`string`, optional) The object ID to define your place in the list for pagination, used to fetch the next page of results. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrievePaymentMethodConfiguration - -
- - -Retrieve a specific payment method configuration. - -**Parameters** - -- **payment_method_configuration_id** (`string`, required) The unique identifier for the payment method configuration to retrieve. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.ListPaymentMethodDomains - -
- - -Retrieve details of existing payment method domains. - -**Parameters** - -- **domain_name** (`string`, optional) Specify the domain name for the payment method domain object you want to represent. -- **pagination_cursor_ending_before** (`string`, optional) A cursor ID to fetch the previous page of the payment method domain list in pagination. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to expand for more detailed information. -- **limit_number_of_returned_objects** (`integer`, optional) Specify the number of payment method domains to return, ranging from 1 to 100. Default is 10. -- **pagination_cursor_starting_after** (`string`, optional) An object ID cursor to fetch the next page in the list. -- **include_enabled_domains** (`boolean`, optional) Include only enabled payment method domains in the results. If false, all domains will be included regardless of status. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetPaymentMethodDomainDetails - -
- - -Retrieve details of a specific payment method domain. - -**Parameters** - -- **payment_method_domain_id** (`string`, required) The unique identifier of the payment method domain to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetTreasuryPaymentMethods - -
- - -Retrieve a list of PaymentMethods for Treasury flows. - -**Parameters** - -- **customer_id** (`string`, optional) The ID of the customer whose PaymentMethods will be retrieved for Treasury flows. This is used to filter the payment methods specific to a customer. -- **pagination_ending_before** (`string`, optional) An object ID to fetch the previous page of the list in pagination. Use to navigate to earlier records. -- **expand_response_fields** (`array[string]`, optional) Specifies which fields in the payment methods response should be expanded for more details. -- **result_limit** (`integer`, optional) The maximum number of payment methods to return, between 1 and 100. Default is 10. -- **starting_after_payment_method** (`string`, optional) An object ID cursor to paginate through the list of payment methods. Use it to fetch the next page after a given object. -- **filter_payment_method_type** (`string`, optional) Filter the list based on the payment method type. Use specific payment method values like 'card', 'paypal', etc., if expecting only one type. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveStripePaymentMethod - -
- - -Retrieve details of a specific Stripe payment method. - -**Parameters** - -- **payment_method_id** (`string`, required) The unique identifier of the Stripe PaymentMethod to be retrieved. Required for fetching details of a specific payment method. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response to be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetStripePayoutDetails - -
- - -Retrieve details of a specific Stripe payout. - -**Parameters** - -- **payout_id** (`string`, required) The unique ID of the payout to retrieve details for from Stripe. -- **fields_to_expand** (`array[string]`, optional) List of fields in the payout response to expand for more details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteStripePlan - -
- - -Delete a specified plan from Stripe. - -**Parameters** - -- **plan_id** (`string`, required) The unique identifier of the plan to be deleted in Stripe. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveStripePlan - -
- - -Retrieve details of a specific Stripe plan by ID. - -**Parameters** - -- **stripe_plan_id** (`string`, required) The unique identifier for the Stripe plan to retrieve details about. This is required to obtain a specific plan's information. -- **fields_to_expand** (`array[string]`, optional) A list of fields to expand in the response for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.SearchStripePrices - -
- - -Search for previously created Stripe prices. - -**Parameters** - -- **search_query_string** (`string`, required) The search query string for prices using Stripe's Search Query Language. Refer to the documentation for syntax and supported fields. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response that should be expanded. -- **result_limit** (`integer`, optional) Specifies the maximum number of price objects to return. Must be between 1 and 100, with a default of 10. -- **pagination_cursor** (`string`, optional) Cursor for paginating through results. Omit on first call; use 'next_page' from a prior response for additional results. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveStripePrice - -
- - -Fetches price details using a specific ID from Stripe. - -**Parameters** - -- **price_id** (`string`, required) The unique identifier for the price you want to retrieve from Stripe. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded to include additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.SearchStripeProducts - -
- - -Search for previously created products on Stripe. - -**Parameters** - -- **search_query_string** (`string`, required) The search query string to find products. Refer to Stripe's Search Query Language for syntax and available fields. -- **response_fields_to_expand** (`array[string]`, optional) List of specific fields to expand in the response for detailed information. Use field names as strings. -- **results_limit** (`integer`, optional) Specifies the maximum number of product results to return, ranging from 1 to 100. Defaults to 10 if not set. -- **pagination_cursor** (`string`, optional) A cursor for paginating through the results. Use the 'next_page' value from the previous response for subsequent pages. Do not include this on the first call. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteStripeProduct - -
- - -Delete a product from Stripe if eligible. - -**Parameters** - -- **product_id_to_delete** (`string`, required) The unique identifier of the product to delete. Ensure the product has no prices or SKUs associated with it. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetProductDetails - -
- - -Retrieve details of a specific product by ID. - -**Parameters** - -- **product_id** (`string`, required) The unique identifier for the product to retrieve details. Obtainable from product creation requests or product lists. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetProductFeatures - -
- - -Retrieve features for a specific product. - -**Parameters** - -- **product_id** (`string`, required) The unique identifier of the product for which you want to retrieve features. This is a required field. -- **pagination_ending_cursor** (`string`, optional) An object ID that defines your position in the list for pagination, used to fetch the previous page. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for additional details. -- **number_of_features_to_return** (`integer`, optional) Specifies the number of product features to return. Must be between 1 and 100, with a default of 10. -- **pagination_starting_after_cursor** (`string`, optional) Cursor for pagination to fetch the next page of product features. Use the object ID from the last item on the previous page. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteProductFeature - -
- - -Delete a specific feature from a product. - -**Parameters** - -- **feature_id** (`string`, required) The identifier of the feature to be deleted from the product. -- **product_id** (`string`, required) The unique identifier of the product from which the feature is to be deleted. This is required to specify which product's feature should be removed. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetProductFeatureDetails - -
- - -Retrieve details of a feature attached to a product. - -**Parameters** - -- **product_feature_id** (`string`, required) The unique identifier of the product feature to retrieve details for. -- **product_id** (`string`, required) The unique identifier of the product associated with the feature. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response to expand for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetPromotionCodeDetails - -
- - -Retrieve details of a specific promotion code. - -**Parameters** - -- **promotion_code_id** (`string`, required) The unique identifier of the promotion code to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response to be expanded. Provide field names as strings. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveQuotesList - -
- - -Fetches a list of your available quotes. - -**Parameters** - -- **customer_id** (`string`, optional) The ID of the customer to retrieve quotes for. -- **pagination_ending_before_cursor** (`string`, optional) A string cursor indicating the object ID before which results are returned for pagination purposes. Use it to fetch the previous page of the list. -- **fields_to_expand** (`array[string]`, optional) A list of fields to expand in the response. Each field is specified as a string. -- **result_limit** (`integer`, optional) Sets the maximum number of quote objects to retrieve, between 1 and 100. Default is 10. -- **pagination_starting_after** (`string`, optional) Object ID for pagination to fetch the list after the specified item. Use to get the next page. -- **quote_status** (`string`, optional) The status of the quote. Possible values are 'accepted', 'canceled', 'draft', or 'open'. -- **test_clock_id** (`string`, optional) The ID of the test clock to filter quotes. Must be set with the customer parameter. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveQuoteById - -
- - -Fetches quote details using a specified ID. - -**Parameters** - -- **quote_id** (`string`, required) The unique identifier of the quote to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetUpfrontQuoteLineItems - -
- - -Retrieve computed upfront line items from a quote. - -**Parameters** - -- **quote_id** (`string`, required) The unique ID of the quote for which to retrieve upfront line items. This ID is required to specify the quote in context. -- **pagination_ending_before_id** (`string`, optional) A cursor indicating the last object ID to fetch the previous page in a paginated list of upfront line items. -- **fields_to_expand** (`array[string]`, optional) A list of fields to expand in the response for more detailed information. Each entry should be a string representing a field. -- **max_line_items_to_return** (`integer`, optional) The maximum number of line items to retrieve, between 1 and 100. Default is 10. -- **pagination_starting_object_id** (`string`, optional) An object ID used to fetch the next page of results in pagination, such as `obj_foo`. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetQuoteLineItems - -
- - -Fetch line items from a specified quote. - -**Parameters** - -- **quote_identifier** (`string`, required) The unique identifier of the quote whose line items are to be retrieved. -- **pagination_cursor_ending_before** (`string`, optional) The object ID to define your place in the list for fetching the previous page. -- **fields_to_expand** (`array[string]`, optional) List of field names to expand in the response for detailed information. -- **max_items_to_return** (`integer`, optional) Specifies the maximum number of line items to return, ranging from 1 to 100. Defaults to 10 if not specified. -- **pagination_starting_after_cursor** (`string`, optional) The object ID to define your place in the list for pagination, used to fetch the next page after the specified object. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DownloadQuotePdf - -
- - -Download the PDF for a finalized Stripe quote. - -**Parameters** - -- **quote_id** (`string`, required) The unique identifier for the finalized quote to download as a PDF. This ID is required to retrieve the specific quote. -- **expand_fields** (`array[string]`, optional) A list of fields in the quote response that should be expanded for additional detail. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveEarlyFraudWarningDetails - -
- - -Retrieve details of an early fraud warning. - -**Parameters** - -- **early_fraud_warning_id** (`string`, required) The unique identifier of the early fraud warning to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response that should be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RemoveRadarValueListItem - -
- - -Remove an item from a Stripe Radar value list. - -**Parameters** - -- **radar_value_list_item_id** (`string`, required) The unique identifier of the ValueListItem to be removed from the Stripe Radar value list. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveValueListItem - -
- - -Retrieve details of a specific ValueListItem in Stripe Radar. - -**Parameters** - -- **value_list_item_id** (`string`, required) The unique identifier of the ValueListItem to retrieve from Stripe's Radar service. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the ValueListItem response to expand for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteStripeValueList - -
- - -Delete a Stripe Radar ValueList and its items. - -**Parameters** - -- **value_list_id** (`string`, required) The unique identifier of the ValueList to be deleted. Ensure it is not referenced in any rules before deletion. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveRadarValuelist - -
- - -Retrieve details of a specific Radar ValueList. - -**Parameters** - -- **identifier_of_radar_valuelist** (`string`, required) The unique identifier of the Radar ValueList to retrieve details for. It is required to fetch the specific ValueList object. -- **expand_fields** (`array[string]`, optional) List of fields in the response to expand for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveRefundDetails - -
- - -Retrieve details of an existing refund. - -**Parameters** - -- **refund_id** (`string`, required) The unique identifier of the refund to retrieve details for. -- **expand_fields** (`array[string]`, optional) Specify which fields in the response should be expanded. Provide an array of field paths. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetReportRunDetails - -
- - -Retrieve details of an existing report run. - -**Parameters** - -- **report_run_id** (`string`, required) The unique identifier for the report run you want to retrieve details for. This ID is provided by Stripe when the report run is created. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response to include more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetStripeReportTypes - -
- - -Retrieve a comprehensive list of Stripe report types. - -**Parameters** - -- **expand_fields** (`array[string]`, optional) A list of fields in the Stripe report types response to be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetStripeReportTypeDetails - -
- - -Retrieve details for a specific Stripe Report Type. - -**Parameters** - -- **stripe_report_type_id** (`string`, required) The unique identifier for the Stripe Report Type to retrieve details about. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to expand for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetReviewDetails - -
- - -Retrieve details of a specific review on Stripe. - -**Parameters** - -- **review_identifier** (`string`, required) The unique identifier of the review to be retrieved from Stripe. This is a required parameter. -- **expand_fields** (`array[string]`, optional) List of fields in the review response to be expanded for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveSetupIntentDetails - -
- - -Fetch details of an existing Stripe SetupIntent. - -**Parameters** - -- **setup_intent_id** (`string`, required) The unique identifier for the SetupIntent to be retrieved. -- **setup_intent_client_secret** (`string`, optional) The client secret for retrieving SetupIntent using a publishable key. Required for client-side retrieval. -- **fields_to_expand** (`array[string]`, optional) A list of fields to expand in the response, such as nested objects. Each field should be specified as a string. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveShippingRateDetails - -
- - -Retrieve details of a specific shipping rate using its ID. - -**Parameters** - -- **shipping_rate_id** (`string`, required) The unique identifier for the shipping rate to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetScheduledQueryRuns - -
- - -Retrieve a list of scheduled query runs from Stripe. - -**Parameters** - -- **pagination_cursor_ending_before** (`string`, optional) A cursor object ID for pagination to fetch the previous page of the list. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded. -- **object_limit** (`integer`, optional) Specify the number of objects to return, between 1 and 100. Default is 10. -- **pagination_starting_after** (`string`, optional) Cursor for pagination, to fetch the next page starting after the specified object ID. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveScheduledQueryRunDetails - -
- - -Fetches details of a Stripe Sigma scheduled query run. - -**Parameters** - -- **scheduled_query_run_id** (`string`, required) The unique identifier for the scheduled query run you wish to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for additional detail. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveStripeSource - -
- - -Retrieve updated details of a Stripe source object. - -**Parameters** - -- **stripe_source_id** (`string`, required) The unique identifier of the Stripe source object to retrieve its current information. -- **source_client_secret** (`string`, optional) The client secret of the source. Required if a publishable key is used to retrieve the source. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveSourceMandateNotification - -
- - -Retrieve details of a specific mandate notification. - -**Parameters** - -- **mandate_notification_id** (`string`, required) The unique identifier of the mandate notification to retrieve details for. -- **source_id** (`string`, required) The unique identifier of the source to retrieve information for. This is required to specify which source's mandate notification you want to access. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response that should be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetSourceTransactions - -
- - -Retrieve transactions for a specific source. - -**Parameters** - -- **source_id** (`string`, required) The unique identifier of the source to retrieve transactions for. Required to specify the target of the retrieval. -- **pagination_ending_before** (`string`, optional) An object ID for pagination to fetch the previous page of the list. Use the ID of the first object from the current list. -- **fields_to_expand** (`array[string]`, optional) A list of field names in the response that should be expanded for detailed information. -- **transaction_limit** (`integer`, optional) Maximum number of transactions to return. Must be between 1 and 100, default is 10. -- **pagination_starting_after** (`string`, optional) An object ID used as a cursor to fetch the next page of the list. Use this to continue listing transactions after a known last object ID. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetStripeSourceTransaction - -
- - -Retrieve a Stripe source transaction by ID. - -**Parameters** - -- **source_id** (`string`, required) The unique ID of the Stripe source. Use this to specify which source's transaction to retrieve. -- **stripe_source_transaction_id** (`string`, required) The unique identifier for the source transaction to retrieve from Stripe. This ID is obtained from previous source creation requests. -- **fields_to_expand** (`array[string]`, optional) An array of strings specifying which fields in the response should be expanded. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetSubscriptionItems - -
- - -Retrieve subscription items for a subscription. - -**Parameters** - -- **subscription_id** (`string`, required) The unique identifier of the subscription to retrieve its items. -- **pagination_ending_before** (`string`, optional) Object ID for pagination to fetch the previous page of subscription items. -- **expand_fields** (`array[string]`, optional) List of fields in the response to be expanded. Specify each field as a string. -- **max_items_to_return** (`integer`, optional) Specify the number of subscription items to return, ranging from 1 to 100. Defaults to 10. -- **pagination_starting_after** (`string`, optional) A cursor object ID to define your place for pagination, fetching the next page of the list. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveSubscriptionItem - -
- - -Retrieve details of a specific subscription item. - -**Parameters** - -- **subscription_item_id** (`string`, required) The unique identifier of the subscription item to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response to be expanded for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveSubscriptionSchedule - -
- - -Get details of an existing subscription schedule by ID. - -**Parameters** - -- **subscription_schedule_id** (`string`, required) The unique identifier for the subscription schedule to retrieve details for. -- **fields_to_expand_in_response** (`array[string]`, optional) A list of fields to expand in the response for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.SearchStripeSubscriptions - -
- - -Search previously created Stripe subscriptions. - -**Parameters** - -- **search_query_string** (`string`, required) The search query string used to filter Stripe subscriptions. Refer to the Stripe Search Query Language documentation for syntax and query fields. -- **expand_fields** (`array[string]`, optional) A list of fields in the Stripe subscription response to be expanded. This allows accessing additional data for each subscription object. -- **result_limit** (`integer`, optional) Specify the maximum number of subscription results to return, from 1 to 100. Default is 10. -- **pagination_cursor** (`string`, optional) Cursor for paginating through results. Omit on first call; use next_page value from a prior response for subsequent results. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetSubscriptionDetails - -
- - -Retrieve details of a subscription by its ID. - -**Parameters** - -- **subscription_id** (`string`, required) The ID of the subscription to retrieve details for. It is required to fetch the subscription information. -- **fields_to_expand** (`array[string]`, optional) List of fields in the subscription response to be expanded for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RemoveSubscriptionDiscount - -
- - -Remove the discount from a subscription. - -**Parameters** - -- **subscription_id** (`string`, required) The unique identifier for the subscription from which the discount will be removed. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveTaxCalculation - -
- - -Retrieve a specific tax calculation by its ID. - -**Parameters** - -- **tax_calculation_id** (`string`, required) The unique identifier for the Tax Calculation object to retrieve. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response. Use to get detailed subfields of tax calculations. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveTaxCalculationLineItems - -
- - -Retrieve line items for a Stripe tax calculation. - -**Parameters** - -- **tax_calculation_id** (`string`, required) The ID of the tax calculation to retrieve line items for. Ensure that the calculation has not expired. -- **pagination_cursor_ending_before** (`string`, optional) An object ID to define your place in the list for pagination, used to fetch the previous page. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response to be expanded. Use this to include additional data in the output. -- **object_return_limit** (`integer`, optional) Specifies the number of objects to return, between 1 and 100. Default is 10. -- **pagination_starting_after_item_id** (`string`, optional) An object ID used for pagination to fetch the next page of results. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetTaxRegistrations - -
- - -Retrieve a list of tax registration objects from Stripe. - -**Parameters** - -- **pagination_ending_before** (`string`, optional) An object ID used as a cursor to define your position in the list for pagination. Use this to fetch the previous page of objects. -- **response_fields_to_expand** (`array[string]`, optional) List of fields to be expanded in the response, allowing for detailed information retrieval. -- **object_limit** (`integer`, optional) Specifies the number of tax registration objects to return, ranging from 1 to 100. Defaults to 10 if not specified. -- **pagination_starting_after_object_id** (`string`, optional) A cursor for pagination. Use the object ID to fetch the next page of the list when applicable. -- **tax_registration_status** (`string`, optional) Specifies the status of the tax registration. Options: active, all, expired, scheduled. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetTaxRegistrationInfo - -
- - -Retrieve details of a specific tax registration. - -**Parameters** - -- **registration_id** (`string`, required) The unique identifier for the tax registration. Provide this to retrieve specific registration details. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded to provide more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetTaxSettings - -
- - -Retrieve merchant tax settings in Stripe. - -**Parameters** - -- **expand_fields** (`array[string]`, optional) A list of field names in the response to expand for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveTaxTransaction - -
- - -Retrieve details of a specific tax transaction. - -**Parameters** - -- **transaction_id** (`string`, required) Unique identifier for the tax transaction to retrieve. -- **expand_response_fields** (`array[string]`, optional) A list of fields to expand in the tax transaction response for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetTransactionLineItems - -
- - -Retrieve line items for a specified transaction. - -**Parameters** - -- **transaction_id** (`string`, required) The unique identifier for the transaction. Use this to retrieve its line items from Stripe. -- **pagination_ending_id** (`string`, optional) Cursor ID for paginating backwards to fetch the previous page of transaction line items. -- **expand_fields** (`array[string]`, optional) Specify which response fields to expand. Provide an array of strings with field names. -- **number_of_items_to_return** (`integer`, optional) Specifies the number of line items to return, between 1 and 100. Defaults to 10 if not specified. -- **pagination_starting_after** (`string`, optional) A cursor ID for pagination to fetch the next page of the list. Use the last object's ID from the current page. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetTaxCodesList - -
- - -Retrieve all available tax codes for products from Stripe. - -**Parameters** - -- **pagination_cursor_ending_before** (`string`, optional) A cursor (object ID) to fetch the previous page of the tax codes list in pagination. Use to define your place in the list when stepping backwards. -- **fields_to_expand** (`array[string]`, optional) Specifies which fields in the tax codes response should be expanded for more detailed information. -- **object_return_limit** (`integer`, optional) Set the maximum number of tax codes to return, ranging from 1 to 100, with a default of 10. -- **pagination_starting_after_cursor** (`string`, optional) An object ID used as a cursor to fetch the next page of the list. Use it for pagination to continue from the last retrieved item. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetTaxCodeDetails - -
- - -Retrieve details for a specific tax code by ID. - -**Parameters** - -- **tax_code_id** (`string`, required) The unique ID of the tax code to retrieve. Use this to fetch specific tax code details from Stripe. -- **fields_to_expand** (`array[string]`, optional) List of fields to be expanded in the response. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteTaxId - -
- - -Delete a tax ID from an account or customer. - -**Parameters** - -- **tax_id** (`string`, required) The identifier of the tax ID to be deleted. This should be the specific tax ID string associated with an account or customer in Stripe. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveTaxId - -
- - -Retrieve an account or customer's tax_id object. - -**Parameters** - -- **tax_id_identifier** (`string`, required) The unique identifier for the tax_id object to be retrieved. This is a required field to specify which tax_id you want information about. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response that should be expanded for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveTaxRate - -
- - -Fetches a tax rate by its ID from Stripe. - -**Parameters** - -- **tax_rate_id** (`string`, required) The unique identifier for the tax rate to be retrieved from Stripe. This ID is required to fetch the specific tax rate details. -- **expand_fields** (`array[string]`, optional) A list of fields to be expanded in the response. This allows you to retrieve additional nested information related to the tax rate. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetTerminalConfigurations - -
- - -Retrieve a list of terminal Configuration objects. - -**Parameters** - -- **pagination_ending_before** (`string`, optional) A string cursor for pagination to fetch the previous page, defined by an object ID. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to expand for additional details. -- **maximum_objects_to_return** (`integer`, optional) Set the maximum number of terminal Configuration objects to retrieve, ranging from 1 to 100. Default is 10. -- **pagination_starting_after_id** (`string`, optional) An object ID for pagination, defining the start position for the next page of the list. Use this to continue listing from a specific object. -- **only_return_account_default_configurations** (`boolean`, optional) If true, only return the account default configurations; if false, return non-default configurations. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteTerminalConfiguration - -
- - -Deletes a terminal configuration. - -**Parameters** - -- **configuration_id_to_delete** (`string`, required) The ID of the terminal configuration you want to delete from Stripe. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveTerminalConfiguration - -
- - -Retrieves a terminal configuration object for Stripe. - -**Parameters** - -- **configuration_id** (`string`, required) The unique identifier of the terminal configuration to retrieve. -- **expand_fields** (`array[string]`, optional) A list of fields in the terminal configuration response that should be expanded for more details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetTerminalLocations - -
- - -Retrieve a list of terminal location objects from Stripe. - -**Parameters** - -- **pagination_ending_before_cursor** (`string`, optional) The object ID to define your place in pagination, used to fetch the previous page of the list. -- **fields_to_expand** (`array[string]`, optional) A list of fields to expand in the response for more detailed information. -- **results_limit** (`integer`, optional) The maximum number of terminal location objects to return. Acceptable values are between 1 and 100; default is 10. -- **pagination_starting_after** (`string`, optional) A cursor indicating the position in the list to start fetching the next set of terminal locations. Use this with the object ID received at the end of the previous page. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteTerminalLocation - -
- - -Deletes a specified terminal location in Stripe. - -**Parameters** - -- **location_identifier** (`string`, required) The unique identifier of the terminal location to delete. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveTerminalLocation - -
- - -Fetches details of a terminal location by ID. - -**Parameters** - -- **location_id** (`string`, required) The unique identifier for the terminal location to retrieve information for. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to expand for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetTerminalReaders - -
- - -Retrieve a list of terminal reader objects. - -**Parameters** - -- **filter_by_device_type** (`string`, optional) Specify the type of device to filter terminal readers. Options include: 'bbpos_chipper2x', 'bbpos_wisepad3', 'bbpos_wisepos_e', 'mobile_phone_reader', 'simulated_stripe_s700', 'simulated_wisepos_e', 'stripe_m2', 'stripe_s700', 'verifone_P400'. -- **pagination_cursor_ending_before** (`string`, optional) A cursor for pagination, used to fetch the previous page based on object ID. -- **expand_response_fields** (`array[string]`, optional) List of fields to expand in the response, specified as strings. -- **object_return_limit** (`integer`, optional) Specifies the maximum number of terminal reader objects to return, ranging from 1 to 100. Default is 10. -- **filter_by_location_id** (`string`, optional) Specify the location ID to filter readers to a specific location only. -- **filter_by_serial_number** (`string`, optional) Provide a serial number to filter the list of terminal readers by this specific serial number. -- **pagination_start_object_id** (`string`, optional) The object ID used as a cursor to define your starting point in the list for pagination, fetching the next page. -- **filter_by_status** (`string`, optional) Filter terminal readers by their status, either 'offline' or 'online'. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteTerminalReader - -
- - -Delete a terminal reader from the Stripe account. - -**Parameters** - -- **terminal_reader_id** (`string`, required) The ID of the terminal reader to be deleted from the Stripe account. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveTerminalReader - -
- - -Retrieve details of a terminal reader. - -**Parameters** - -- **terminal_reader_id** (`string`, required) The unique identifier for the terminal reader to retrieve. It should be a string value. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for more detail. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetTestClocksList - -
- - -Retrieve a list of your test clocks from Stripe. - -**Parameters** - -- **pagination_cursor_ending_before** (`string`, optional) A cursor ID for pagination to fetch the previous page of the list. Use an object ID. -- **expand_response_fields** (`array[string]`, optional) List of fields to expand in the response. Specify fields you want expanded for more details. -- **number_of_objects_limit** (`integer`, optional) Specify the number of test clocks to return, between 1 and 100, with a default of 10. -- **pagination_starting_after_cursor** (`string`, optional) An object ID for pagination. Use this ID to fetch the next page of the list of test clocks. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteTestClock - -
- - -Deletes a test clock in Stripe's test environment. - -**Parameters** - -- **test_clock_id** (`string`, required) The unique identifier of the test clock to be deleted from Stripe's test environment. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveTestClock - -
- - -Retrieve details of a Stripe test clock. - -**Parameters** - -- **test_clock_id** (`string`, required) The unique identifier of the test clock to retrieve from Stripe. -- **expand_fields** (`array[string]`, optional) A list of strings specifying which fields in the response should be expanded for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveStripeToken - -
- - -Retrieve details of a Stripe token using its ID. - -**Parameters** - -- **stripe_token_id** (`string`, required) The ID of the Stripe token you want to retrieve details about. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for more detail. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveStripeTopupDetails - -
- - -Retrieve details of a Stripe top-up using its ID. - -**Parameters** - -- **topup_id** (`string`, required) The unique ID of the Stripe top-up you want to retrieve details for. -- **expand_fields** (`array[string]`, optional) A list of fields in the response to be expanded. Specify field names as strings. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetTransferReversals - -
- - -Retrieve reversals of a specific transfer. - -**Parameters** - -- **transfer_id** (`string`, required) The unique identifier of the transfer for which to retrieve reversals. -- **pagination_ending_before** (`string`, optional) An object ID cursor to navigate to the previous page in the list of reversals. -- **expand_fields_in_response** (`array[string]`, optional) List of response fields to expand in the results for detailed data. -- **fetch_limit** (`integer`, optional) Set the maximum number of reversal objects to return, ranging from 1 to 100. Default is 10. -- **pagination_start_cursor** (`string`, optional) The object ID to define your place in the list for pagination. Use this to fetch the next page, starting after the given object ID. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetTransferDetails - -
- - -Retrieve details of an existing transfer using its ID. - -**Parameters** - -- **transfer_id** (`string`, required) The unique identifier for the transfer you want to retrieve details about. This ID is obtained from a transfer creation request or the transfer list. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the transfer response to expand for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetSpecificTransferReversalDetails - -
- - -Retrieve details about a specific transfer reversal. - -**Parameters** - -- **reversal_id** (`string`, required) The unique identifier of the transfer reversal to retrieve details for. -- **transfer_id** (`string`, required) The unique identifier for the transfer to retrieve reversal details from. This is required to specify which transfer you're inquiring about. -- **expand_fields** (`array[string]`, optional) List of fields in the response to be expanded for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCreditReversals - -
- - -Retrieve a list of Credit Reversals from Stripe's Treasury. - -**Parameters** - -- **financial_account_id** (`string`, required) The ID of the FinancialAccount associated with the CreditReversals to be returned. -- **pagination_ending_before** (`string`, optional) A cursor object ID for pagination to fetch the previous list page. -- **fields_to_expand** (`array[string]`, optional) A list of fields to be expanded in the response for detailed information. -- **max_objects_returned** (`integer`, optional) Sets the maximum number of credit reversals to be returned. Valid range is 1 to 100, defaulting to 10. -- **filter_by_received_credit_id** (`string`, optional) Filter Credit Reversals to only include those associated with the specified ReceivedCredit ID. -- **pagination_starting_after_cursor** (`string`, optional) An object ID used to fetch the next page of the list in a paginated response. -- **credit_reversal_status** (`string`, optional) Filter CreditReversals based on their status. Possible values are: canceled, posted, processing. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetCreditReversalDetails - -
- - -Retrieve details of a specific CreditReversal using its ID. - -**Parameters** - -- **credit_reversal_id** (`string`, required) The unique ID of the CreditReversal to retrieve details for. This ID is obtained from the CreditReversal creation request or list. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response that should be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetDebitReversalsList - -
- - -Retrieves a list of debit reversals from Stripe. - -**Parameters** - -- **financial_account_id** (`string`, required) The ID of the FinancialAccount to retrieve associated debit reversals. -- **pagination_ending_before_cursor** (`string`, optional) A cursor object ID for pagination. Use this to fetch the previous page of the list. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response to expand for obtaining additional nested information. -- **max_number_of_debit_reversals** (`integer`, optional) The maximum number of debit reversals to return. Must be between 1 and 100. Defaults to 10 if not specified. -- **filter_by_received_debit_id** (`string`, optional) The ID of the ReceivedDebit to filter debit reversals by. Only returns reversals for this specific ID. -- **resolution_status** (`string`, optional) Filter DebitReversals based on the resolution ('lost' or 'won'). -- **pagination_starting_after_cursor** (`string`, optional) An object ID that serves as a pagination cursor for fetching the next page of results. -- **filter_by_status** (`string`, optional) Specify the status of DebitReversals to return. Options are: 'canceled', 'completed', or 'processing'. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveDebitReversal - -
- - -Retrieve details of a specific debit reversal. - -**Parameters** - -- **debit_reversal_id** (`string`, required) The unique identifier of the DebitReversal object to be retrieved. -- **expand_fields** (`array[string]`, optional) List of fields to expand in the DebitReversal response. Provide an array of field names as strings. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetFinancialAccountDetails - -
- - -Retrieve details of a specific financial account. - -**Parameters** - -- **financial_account_id** (`string`, required) The unique identifier of the financial account to be retrieved. This ID is required to fetch the account details. -- **fields_to_expand** (`array[string]`, optional) A list of strings specifying which fields in the financial account details should be expanded in the response. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetFinancialAccountFeatures - -
- - -Retrieve features of a financial account. - -**Parameters** - -- **financial_account_id** (`string`, required) The ID of the financial account for which to retrieve feature information. This is required. -- **expand_response_fields** (`array[string]`, optional) A list of fields in the response that should be expanded for more detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetInboundTransfers - -
- - -Retrieve inbound transfers for a financial account. - -**Parameters** - -- **financial_account_id** (`string`, required) The ID of the FinancialAccount to retrieve associated inbound transfers. -- **pagination_ending_before_id** (`string`, optional) The object ID defining your place in the list to fetch the previous page. Use this for pagination. -- **expand_response_fields** (`array[string]`, optional) List of fields in the response to be expanded for detailed information. -- **transfer_limit** (`integer`, optional) Set the maximum number of inbound transfer objects to return, ranging from 1 to 100. Default is 10. -- **pagination_starting_after_object_id** (`string`, optional) Cursor for pagination to fetch the next page by using the object ID from the end of the previous result set. -- **filter_by_transfer_status** (`string`, optional) Filter inbound transfers by their status: 'processing', 'succeeded', 'failed', or 'canceled'. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveInboundTransferDetails - -
- - -Retrieve details of a specific inbound transfer. - -**Parameters** - -- **inbound_transfer_id** (`string`, required) The unique identifier of the inbound transfer to retrieve details for. -- **expand_fields** (`array[string]`, optional) Specify which fields in the response should be expanded for detailed information. Provide them as a list of strings. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveOutboundPaymentDetails - -
- - -Retrieve details of an existing OutboundPayment by ID. - -**Parameters** - -- **outbound_payment_id** (`string`, required) The unique identifier of the OutboundPayment to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) List of fields to expand in the response for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetOutboundTransfers - -
- - -Retrieve outbound transfers from a financial account. - -**Parameters** - -- **financial_account_id** (`string`, required) The ID of the financial account to retrieve outbound transfers from. -- **pagination_cursor_ending_before** (`string`, optional) Cursor for pagination to fetch the previous page of the outbound transfers list using an object ID. -- **fields_to_expand** (`array[string]`, optional) List of fields in the response to be expanded. Provide field names as strings. -- **limit_transfers** (`integer`, optional) The number of outbound transfers to return. Valid range is 1 to 100, default is 10. -- **pagination_starting_after** (`string`, optional) A cursor for pagination to fetch the next page of the list, using an object ID from a previous request. -- **outbound_transfer_status_filter** (`string`, optional) Filter outbound transfers by status, such as 'processing', 'canceled', 'failed', 'posted', or 'returned'. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetOutboundTransferDetails - -
- - -Retrieve details of a specific outbound transfer. - -**Parameters** - -- **outbound_transfer_id** (`string`, required) The unique identifier for the outbound transfer to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response to be expanded for more details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetReceivedCreditDetails - -
- - -Retrieve details of a specific ReceivedCredit by ID. - -**Parameters** - -- **received_credit_id** (`string`, required) The unique identifier of the ReceivedCredit to retrieve details for. This ID is required to fetch the specific credit's information. -- **fields_to_expand** (`array[string]`, optional) A list of fields in the response to expand for additional details. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetReceivedDebits - -
- - -Retrieve a list of received debits from Stripe Treasury. - -**Parameters** - -- **financial_account_id** (`string`, required) The ID of the FinancialAccount from which funds were pulled. -- **pagination_cursor_previous_page** (`string`, optional) A cursor for pagination to fetch the previous page of the list. Use an object ID received in a previous response. -- **expand_fields** (`array[string]`, optional) List of fields in the response to expand for more detailed information. -- **max_number_of_debits** (`integer`, optional) Specify the maximum number of received debits to return. Accepts an integer between 1 and 100, default is 10. -- **pagination_starting_after** (`string`, optional) An object ID for pagination to fetch the next page, starting after this ID. -- **debit_status_filter** (`string`, optional) Filter results by status: 'succeeded' or 'failed'. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveReceivedDebitDetails - -
- - -Retrieve details of a specific ReceivedDebit by ID. - -**Parameters** - -- **received_debit_id** (`string`, required) The unique ID of the ReceivedDebit to retrieve details for. This ID is required. -- **fields_to_expand** (`array[string]`, optional) List of response fields to expand for detailed information. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveTransactionEntry - -
- - -Fetches details of a specific treasury transaction entry. - -**Parameters** - -- **transaction_entry_id** (`string`, required) The unique identifier of the treasury transaction entry to retrieve. -- **fields_to_expand** (`array[string]`, optional) An array of field names to include in the response for additional detail. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveTreasuryTransactionDetails - -
- - -Retrieve details of a specific treasury transaction. - -**Parameters** - -- **transaction_id** (`string`, required) The ID of the treasury transaction you want to retrieve details for. -- **fields_to_expand** (`array[string]`, optional) List of fields in the treasury transaction response to be expanded, specified as an array of strings. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.GetStripeWebhookEndpoints - -
- - -Retrieve a list of your Stripe webhook endpoints. - -**Parameters** - -- **pagination_ending_before** (`string`, optional) A cursor (object ID) for pagination to fetch the previous page of webhook endpoints. -- **expand_fields** (`array[string]`, optional) A list of field names to expand in the response, allowing for detailed data retrieval. -- **object_limit** (`integer`, optional) The number of webhook endpoints to return, ranging from 1 to 100. Defaults to 10 if not specified. -- **pagination_starting_after_id** (`string`, optional) An object ID used for pagination to fetch the next page in a list. Use the last object's ID from the current list. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.DeleteStripeWebhookEndpoint - -
- - -Delete a Stripe webhook endpoint by ID. - -**Parameters** - -- **webhook_endpoint_id** (`string`, required) The unique identifier for the Stripe webhook endpoint you wish to delete. This ID is required to specify which endpoint should be removed from your Stripe configurations. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## StripeApi.RetrieveWebhookEndpoint - -
- - -Retrieve details of a specified webhook endpoint by ID. - -**Parameters** - -- **webhook_endpoint_id** (`string`, required) The unique identifier for the Stripe webhook endpoint you want to retrieve. -- **fields_to_expand** (`array[string]`, optional) A list of fields to expand in the response, specified as strings. - -**Secrets** - -This tool requires the following secrets: `STRIPE_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - - diff --git a/app/en/resources/integrations/payments/zoho-books-api/page.mdx b/app/en/resources/integrations/payments/zoho-books-api/page.mdx deleted file mode 100644 index 22e40fbf5..000000000 --- a/app/en/resources/integrations/payments/zoho-books-api/page.mdx +++ /dev/null @@ -1,18201 +0,0 @@ -# ZohoBooksApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The ZohoBooksApi MCP Server offers a comprehensive suite of tools for managing financial transactions and accounting within Zoho Books. Users can efficiently perform actions such as: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## ZohoBooksApi.CreateBankAccount - -
- - -Create a bank or credit card account in your organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization for which to create the bank or credit card account. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListBankAccounts - -
- - -List all bank and credit card accounts for your organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. This is required to list all associated bank and credit card accounts in Zoho Books. -- **account_status_filter** (`string`, optional) Specify the status to filter accounts: 'Status.All', 'Status.Active', or 'Status.Inactive'. -- **sort_by** (`string`, optional) Specify the sorting criterion for the accounts. Options: 'account_name', 'account_type', 'account_code'. -- **page_number** (`integer`, optional) The page number of results to retrieve. Defaults to 1 if not specified. -- **records_per_page** (`integer`, optional) Number of records to be fetched per page. Default value is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateBankAccountZohoBooks - -
- - -Modify a bank account in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization to be modified. Required for identifying the specific organization's bank account. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bank_account_id** (`string`, optional) Unique identifier of the bank account to be updated in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetBankAccountDetails - -
- - -Retrieve detailed information of a specified bank account. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID for the organization. Required to specify which organization's data to access. -- **bank_account_id** (`string`, required) Unique identifier used to specify the bank account for detailed retrieval. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteBankAccount - -
- - -Delete a bank account from your organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books. Required to identify which organization's bank account is to be deleted. -- **bank_account_unique_id** (`string`, required) Unique identifier of the bank account to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeactivateBankAccount - -
- - -Deactivate a bank account in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization in Zoho Books. This is required to identify which organization's bank account to deactivate. -- **bank_account_id** (`string`, required) Unique identifier of the bank account to deactivate in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ActivateBankAccount - -
- - -Activate a bank account in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization in Zoho Books. This ID is required to activate a bank account within the specified organization. -- **bank_account_id** (`string`, required) Unique identifier of the bank account to be activated in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ImportBankStatements - -
- - -Import bank or credit card feeds into your account. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization to import bank statements for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetLastImportedBankStatement - -
- - -Retrieve the last imported bank statement details for an account. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization used to retrieve the bank statement. -- **bank_account_id** (`string`, required) Unique identifier of the bank account for retrieving the last imported statement. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteLastImportedBankStatement - -
- - -Delete the last imported bank statement. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. This is required to specify which organization's bank statement needs to be deleted. -- **bank_account_unique_identifier** (`string`, required) Unique identifier for the bank account from which the statement will be deleted. -- **bank_statement_id** (`string`, required) Unique identifier of the bank statement to be deleted. Required for identifying which statement to remove. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.FetchBankAccountRules - -
- - -Fetch rules for a specified bank account. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. This ID is necessary to fetch the rules linked with the specified bank or credit card account. -- **bank_account_id** (`integer`, required) ID of the bank or credit card account to fetch rules for. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateFinancialAccountRule - -
- - -Create and apply rules for banking and credit accounts. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. Used to specify which organization's account rules are being altered. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetBankAccountRuleDetails - -
- - -Retrieve details of a specific bank account rule. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which to retrieve the bank account rule details. -- **bank_account_rule_id** (`string`, required) Unique identifier of the bank account rule to retrieve its details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateBankAccountRule - -
- - -Update or modify a bank account rule in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization in Zoho Books for which the bank account rule needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bank_account_rule_id** (`string`, optional) Unique identifier for the bank account rule to update in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteBankAccountRule - -
- - -Deletes a bank account rule, removing its effect on transactions. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID representing the organization. Required for identifying the correct account. -- **bank_account_rule_id** (`string`, required) Unique identifier of the bank account rule to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateBankTransaction - -
- - -Creates a bank transaction in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization for which the bank transaction is to be created. This ID helps identify the specific organization within Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetBankTransactions - -
- - -Retrieve all transaction details for a bank account. - -**Parameters** - -- **organization_id** (`string`, required) A unique ID representing the organization for which transactions are being queried. This is required to specify the context of the request. -- **bank_account_id** (`integer`, optional) Unique identifier for the bank account to retrieve transactions for. -- **transaction_type_filter** (`string`, optional) Specify the type of transactions to retrieve. Expected as a string, e.g., 'expense', 'income'. -- **transaction_date_range** (`string`, optional) Specify the start and end date for the transaction date range. Use 'date_start' for the start and 'date_end' for the end date. -- **transaction_amount_range** (`number`, optional) Set a range of transaction amounts to filter transactions. Use two numbers: start amount, end amount. -- **transaction_status_list_view** (`string`, optional) Filter transactions by status: all, uncategorized, manually_added, matched, excluded, categorized. -- **transaction_reference_number** (`string`, optional) Search for a transaction using its reference number for more precise results. -- **transaction_filter_type** (`string`, optional) Filter transactions by type: Status.All, Status.Uncategorized, Status.Categorized, Status.ManuallyAdded, Status.Excluded, Status.Matched. -- **sort_transactions_by** (`string`, optional) Specify how to sort transactions. Allowed value: 'date'. -- **transaction_status_filter** (`string`, optional) Filter transactions by status: All, uncategorized, manually_added, matched, excluded, categorized. -- **search_transactions_by_text** (`string`, optional) Search transactions using contact name or transaction description. -- **transaction_page_number** (`integer`, optional) Page number of transactions to fetch, with a default value of 1. Used for pagination. -- **records_per_page** (`integer`, optional) Specify the number of transaction records to fetch per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateBankTransaction - -
- - -Update details of a specific bank transaction. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier of the organization in Zoho Books for which the bank transaction is being updated. This is required to specify the organization context for the transaction update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bank_transaction_identifier** (`string`, optional) Unique identifier for the specific bank transaction to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.FetchBankTransactionDetails - -
- - -Fetch details of a specific bank transaction by ID. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which the bank transaction details need to be fetched. -- **bank_transaction_id** (`string`, required) Unique identifier for the bank transaction to fetch its details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteBankTransaction - -
- - -Delete a bank transaction using its ID. - -**Parameters** - -- **organization_id** (`string`, required) Specify the ID of the organization to target for transaction deletion. -- **bank_transaction_id** (`string`, required) Unique identifier for the bank transaction to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.FindMatchingBankTransactions - -
- - -Find matching uncategorized bank transactions. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization to search transactions for. -- **transaction_id** (`string`, required) Unique identifier for the bank transaction to search for matching entries. -- **bank_transaction_id** (`string`, required) Unique identifier of the bank transaction to be matched. -- **transaction_type** (`string`, optional) Specify the type of transaction. Allowed values: deposit, refund, transfer_fund, card_payment, sales_without_invoices, expense_refund, owner_contribution, interest_income, other_income, owner_drawings, sales_return. Note: Some types are module-specific and cannot be created under this endpoint. -- **filter_date_after** (`string`, optional) Specify the date after which transactions should be filtered. Use YYYY-MM-DD format. -- **filter_date_before** (`string`, optional) Specify a date in YYYY-MM-DD format. Transactions before this date will be filtered. -- **minimum_transaction_amount** (`number`, optional) Minimum amount to filter transactions. Only transactions equal to or greater than this amount are included. -- **maximum_transaction_amount** (`number`, optional) Maximum amount for filtering transactions. Only transactions with an amount less than or equal to this value will be included. -- **transaction_contact_name** (`string`, optional) Name of the contact person involved in the transaction. -- **transaction_reference_number** (`string`, optional) Reference number of the transaction to filter matching records. -- **page_number_to_fetch** (`integer`, optional) Page number to fetch. Default is 1, used for pagination. -- **records_per_page** (`integer`, optional) Number of records to be fetched per page. The default value is 200. -- **show_all_transactions** (`boolean`, optional) Set to true to display all transactions without applying filters; false to filter transactions. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MatchBankTransaction - -
- - -Match an uncategorized bank transaction with an existing one. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) Unique identifier for the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bank_transaction_id** (`string`, optional) Unique identifier of the bank transaction to be matched. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **account_id** (`string`, optional) The mandatory Account ID for listing transactions to match. This is required to specify the bank account in Zoho Books. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UnmatchBankTransaction - -
- - -Unmatch a previously matched bank transaction. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization for which the transaction unmatching is to be performed. -- **transaction_id** (`string`, required) The unique identifier of the bank transaction to be unmatched. -- **account_id_for_transactions** (`string`, optional) The mandatory ID of the account for which transactions are to be unlisted. This is essential to specify the correct account involved in the transaction. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ExcludeBankTransaction - -
- - -Exclude a transaction from a bank or credit card account. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization to which the transaction belongs. -- **transaction_id** (`string`, required) Unique identifier of the bank transaction to be excluded. -- **account_id_for_transaction_exclusion** (`string`, optional) The ID of the account from which a transaction will be excluded. This is a mandatory field. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RestoreBankTransaction - -
- - -Restores an excluded bank transaction in your account. - -**Parameters** - -- **organization_id** (`string`, required) ID of the Zoho Books organization to restore the transaction for. -- **bank_transaction_id** (`string`, required) The unique identifier for the specific bank transaction to be restored. -- **account_id** (`string`, optional) Mandatory Account ID for which transactions are to be restored. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CategorizeBankTransaction - -
- - -Categorize an uncategorized bank transaction. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) Provide the ID of the organization to categorize the transaction. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bank_transaction_id** (`string`, optional) Unique identifier of the bank transaction to be categorized. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CategorizeBankTransactionAsExpense - -
- - -Categorize an uncategorized bank transaction as an expense. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique ID of the organization in Zoho Books. Required to identify which organization's transaction is being categorized. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bank_transaction_id** (`string`, optional) Unique identifier for the bank transaction to be categorized as an expense. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **attachment_document** (`string`, optional) Document file to attach with the transaction as a string (e.g., base64 encoded or URL). Only used when mode is 'execute'. -- **total_number_of_files** (`integer`, optional) Total count of files to be attached to the transaction. Only used when mode is 'execute'. -- **document_identifiers** (`integer`, optional) Comma-separated list of document IDs to be attached to the transaction. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UncategorizeBankTransaction - -
- - -Revert a categorized bank transaction to uncategorized. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books for which the transaction is to be uncategorized. -- **bank_transaction_id** (`string`, required) Unique identifier of the bank transaction to uncategorize. -- **account_id_for_transactions** (`string`, optional) The mandatory Account ID for which transactions are to be listed. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CategorizeTransactionAsVendorPayment - -
- - -Categorize a bank transaction as a vendor payment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique string ID of the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **transaction_id** (`string`, optional) Unique identifier of the bank transaction to categorize as vendor payment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CategorizeTransactionAsPayment - -
- - -Categorize an uncategorized transaction as a Customer Payment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization in Zoho Books for which the transaction is being categorized. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bank_transaction_id** (`string`, optional) Unique identifier of the bank transaction to be categorized as Customer Payment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CategorizeTransactionAsRefund - -
- - -Categorize a transaction as a credit note refund. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. Must match the organization in Zoho Books to categorize transactions accurately. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **transaction_id** (`string`, optional) Unique identifier of the bank transaction to categorize as a refund from a credit note. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CategorizeRefundVendorCredit - -
- - -Categorize transactions as vendor credit refunds. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) Specify the ID of the organization for which the transaction is being categorized as a vendor credit refund. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bank_transaction_id** (`string`, optional) Unique identifier of the bank transaction to categorize as a vendor credit refund. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CategorizeBankTransactionPaymentRefund - -
- - -Categorize bank transactions as payment refunds. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) Unique identifier for the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bank_statement_line_id** (`string`, optional) Unique identifier for the bank statement line to be categorized. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CategorizeVendorPaymentRefund - -
- - -Categorize bank transactions as Vendor Payment Refund. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization whose transactions are being categorized. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bank_statement_line_id** (`string`, optional) Unique identifier for the bank statement line to categorize as Vendor Payment Refund. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateCurrencyAdjustment - -
- - -Create a base currency adjustment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique identifier for the organization in Zoho Books. Required for currency adjustments. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **account_identifiers** (`string`, optional) Comma-separated IDs of accounts for currency adjustments in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListBaseCurrencyAdjustments - -
- - -Fetch base currency adjustments list from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization to retrieve currency adjustments from. -- **filter_by_date** (`string`, optional) Filter the base currency adjustment list by specific date ranges. Allowed values are: Date.All, Date.Today, Date.ThisWeek, Date.ThisMonth, Date.ThisQuarter, Date.ThisYear. -- **sort_currency_adjustment_list_by** (`string`, optional) Specify the sorting criterion for the currency adjustment list. Options include: adjustment_date, exchange_rate, currency_code, debit_or_credit, or gain_or_loss. -- **search_by_last_modified_time** (`string`, optional) Use a timestamp to filter adjustments by their last modified time. -- **fetch_page_number** (`integer`, optional) The page number to fetch. Defaults to 1 if not specified. -- **records_per_page** (`integer`, optional) Number of records to fetch per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetBaseCurrencyAdjustmentDetails - -
- - -Retrieve base currency adjustment details by ID. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose currency adjustment details are being retrieved. -- **base_currency_adjustment_identifier** (`string`, required) Unique identifier of the base currency adjustment to retrieve its details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteCurrencyAdjustment - -
- - -Deletes the specified base currency adjustment. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization whose currency adjustment you want to delete. -- **base_currency_adjustment_id** (`string`, required) Unique identifier of the base currency adjustment to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListCurrencyAdjustmentAccounts - -
- - -Retrieve accounts involved in currency adjustments. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which the currency adjustment accounts are needed. -- **currency_id_for_adjustment** (`string`, required) ID of the currency to post an adjustment for. This specifies which currency is being adjusted. -- **adjustment_date** (`string`, required) Specify the date for the currency adjustment in YYYY-MM-DD format. -- **exchange_rate** (`number`, required) Specify the exchange rate for the currency to affect transactions. -- **adjustment_notes** (`string`, required) Notes for the base currency adjustment, providing additional information or context. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateVendorBill - -
- - -Create a bill received from your vendor. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in which the bill will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **attachment_file_path** (`string`, optional) Path to the file to attach. Accepts GIF, PNG, JPEG, JPG, BMP, and PDF formats. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListAllBills - -
- - -Retrieve all bills with pagination support. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required to specify which organization's bills to list. -- **filter_by_bill_number** (`string`, optional) Filter bills using the bill number. Use exact matches, prefix with 'bill_number_startswith', or substring with 'bill_number_contains'. -- **filter_by_reference_number** (`string`, optional) Filter bills by reference number. Supports exact matches, prefix matching using `reference_number_startswith`, and substring matching using `reference_number_contains`. Useful for finding bills by external references or vendor invoice numbers. -- **bill_date_filter** (`string`, optional) Filter bills by bill date in YYYY-MM-DD format. Use for specific dates, date ranges (date_start/date_end), or relative dates (date_before/date_after). -- **filter_by_status** (`string`, optional) Specify the status of bills to filter by. Options include 'paid', 'open', 'overdue', 'void', or 'partially_paid'. -- **filter_by_description_text** (`string`, optional) Filter bills using description text. Supports exact matches, prefix matching with 'description_startswith', or substring matching with 'description_contains'. Useful for finding bills by line item descriptions or vendor notes. -- **filter_by_vendor_name** (`string`, optional) Filter bills by vendor name. Use prefix matching with 'vendor_name_startswith' or substring matching with 'vendor_name_contains'. -- **filter_by_total_amount** (`number`, optional) Filter bills by total amount using conditions like less than, greater than, etc. Specify conditions using keys like 'total_less_than' or 'total_greater_than'. -- **filter_by_vendor_id** (`integer`, optional) Unique identifier to filter bills by a specific vendor, retrieving all related bills. -- **filter_by_item_id** (`integer`, optional) Filter bills by a specific item ID. Retrieves all bills containing a particular product or service item based on its unique identifier. -- **recurring_bill_identifier** (`integer`, optional) Filter bills by a specific recurring bill ID to retrieve all bills generated from a recurring template or schedule. -- **filter_by_purchase_order_id** (`integer`, optional) Specify the Purchase Order ID to filter bills associated with a specific order. Helps track procurement workflows. -- **filter_by_last_modified_time** (`string`, optional) Filter bills by last modification timestamp using ISO 8601 format (YYYY-MM-DDTHH:MM:SS+/-HHMM) to find bills modified at or after a specific time. -- **bill_status_filter** (`string`, optional) Filter bills by status. Options: Status.All, Status.PartiallyPaid, Status.Paid, Status.Overdue, Status.Void, Status.Open. -- **search_text** (`string`, optional) Filter bills using general text across bill number, reference number, and vendor name to find matches. Useful for quick searches. -- **page_number** (`integer`, optional) Specify the page number for pagination to navigate multiple pages of bills. -- **bills_per_page** (`integer`, optional) Specify the number of bills to retrieve per page. Default is 200, but adjustable for performance needs and rate limits. -- **sort_by_column** (`string`, optional) Specify the column to sort bills by. Available options: vendor_name, bill_number, date, due_date, total, balance, created_time. -- **sorting_order** (`string`, optional) Specify the sort order for bills: 'A' for ascending, 'D' for descending. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateBillByCustomField - -
- - -Update or create a bill using a custom field identifier. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization for which the bill is to be updated or created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_identifier_key** (`string`, optional) Specify the API name of the custom field with unique values for identifying the bill. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_field_unique_value** (`string`, optional) Provide the unique value from the custom field to identify and update the specific bill. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **enable_upsert** (`boolean`, optional) Set to true to enable upsert functionality. Creates a new bill if no existing bill matches the custom field value. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateBillInZoho - -
- - -Updates a bill by modifying details in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books. Required for updating a bill. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bill_unique_identifier** (`string`, optional) The unique identifier for the bill to be updated in Zoho Books. Ensure this matches the bill you intend to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **file_attachment** (`string`, optional) File to attach. Allowed extensions: gif, png, jpeg, jpg, bmp, pdf. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RetrieveBillDetails - -
- - -Retrieve the details of a specific bill. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization for which the bill details are being retrieved. -- **bill_identifier** (`string`, required) Unique identifier of the bill to retrieve its details. This should be provided as a string. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteExistingBill - -
- - -Deletes an existing bill if no payments are applied. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization in Zoho Books needed to delete the bill. -- **bill_identifier** (`string`, required) The unique identifier of the bill you wish to delete. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateCustomFieldsInBill - -
- - -Update custom fields in existing bills. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization for which the bill's custom fields are being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bill_identifier** (`string`, optional) Unique identifier of the bill to update its custom fields. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkBillVoid - -
- - -Mark a bill as void in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. Used to specify which organization's bill should be marked as void. -- **bill_identifier** (`string`, required) Unique identifier of the bill to mark as void in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkBillOpen - -
- - -Mark a void bill as open in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) Provide the ID of the organization in Zoho Books to mark the bill as open. -- **bill_id** (`string`, required) Unique identifier of the bill to mark as open in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SubmitBillForApproval - -
- - -Submit a bill for approval in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization in Zoho Books for which the bill is being submitted. -- **bill_identifier** (`string`, required) Unique identifier of the bill to be submitted for approval. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ApproveBill - -
- - -Approve a bill in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) ID of the organization for which the bill needs approval. -- **bill_identifier** (`string`, required) Unique identifier of the bill to be approved in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateBillingAddress - -
- - -Updates the billing address for a specified bill. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization for which the billing address is being updated. This identifier is necessary to access specific organizational data. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bill_unique_identifier** (`string`, optional) Provide the unique identifier for the bill to update its billing address. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetBillPaymentsList - -
- - -Retrieve the list of payments made for a specific bill. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization for which to retrieve bill payments. -- **bill_identifier** (`string`, required) Unique identifier for the specific bill to retrieve payment details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ApplyVendorCreditsToBill - -
- - -Apply vendor credits to a bill. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization where credits are being applied. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bill_identifier** (`string`, optional) Unique identifier for the bill to apply credits to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteBillPayment - -
- - -Delete a payment made to a bill. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books for which the bill payment is to be deleted. -- **bill_identifier** (`string`, required) Unique identifier of the bill to be deleted. -- **bill_payment_identifier** (`string`, required) Unique identifier of the bill payment to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RetrieveBillAttachment - -
- - -Retrieve the attachment from a specific bill. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization to specify which organization's bill attachment to retrieve. -- **bill_identifier** (`string`, required) The unique identifier of the bill to retrieve its attachment. -- **get_thumbnail** (`boolean`, optional) Set to true to get the thumbnail of the attachment instead of the full file. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AttachFileToBill - -
- - -Attach a file to a specific bill. - -**Parameters** - -- **organization_identifier** (`string`, required) The ID of the organization in Zoho Books to which the bill belongs. -- **bill_id** (`string`, required) Unique identifier of the bill for which the file will be attached. Use this to specify the target bill in Zoho Books. -- **file_attachment** (`string`, optional) File to attach to the bill. Accepted formats: gif, png, jpeg, jpg, bmp, pdf. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteBillAttachment - -
- - -Delete the file attached to a specific bill. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization within Zoho Books. This is required to specify which organization's bill attachment is to be deleted. -- **bill_unique_identifier** (`string`, required) Unique identifier for the specific bill whose attachment is to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetBillHistory - -
- - -Retrieve the complete history and comments for a bill. - -**Parameters** - -- **organization_id** (`string`, required) String identifier for the organization whose bill history and comments you wish to retrieve. -- **bill_identifier** (`string`, required) Unique identifier of the bill to retrieve its history and comments. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AddCommentToBill - -
- - -Add a comment to a specific bill in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique identifier of the organization in Zoho Books. Required to specify which organization's bill to comment on. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bill_identifier** (`string`, optional) Unique identifier for the bill to add a comment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteBillComment - -
- - -Delete a specific comment from a bill in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization from which the bill comment will be deleted. -- **bill_identifier** (`string`, required) The unique identifier for the bill from which the comment will be deleted. This ID is necessary to specify the correct bill in Zoho Books. -- **comment_id** (`string`, required) Unique identifier of the comment to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ConvertPurchaseOrderToBill - -
- - -Fetch bill payload from purchase orders. - -**Parameters** - -- **organization_id** (`string`, required) Enter the ID of the organization for which the bill will be created. -- **purchase_order_ids** (`string`, required) Comma-separated IDs of the purchase orders to be converted into a bill. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateChartOfAccount - -
- - -Creates an account with a specified account type. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization for which the account is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListChartOfAccounts - -
- - -Retrieve a list of all chart of accounts. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization to retrieve chart of accounts for. -- **account_type_filter** (`string`, optional) Filter accounts based on type and status. Options: AccountType.All, AccountType.Active, AccountType.Inactive, AccountType.Asset, AccountType.Liability, AccountType.Equity, AccountType.Income, AccountType.Expense. -- **sort_accounts_by** (`string`, optional) Specify how to sort the accounts. Options: 'account_name', 'account_type'. -- **last_modified_time_filter** (`string`, optional) Fetch accounts modified since a specific timestamp, formatted as YYYY-MM-DDTHH:MM:SSZ. -- **page_number** (`integer`, optional) Specify the page number to retrieve. Default is 1. -- **records_per_page** (`integer`, optional) Number of records to retrieve per page. Defaults to 200 if not specified. -- **include_balance** (`boolean`, optional) Include current account balances in the response when set to true. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateAccountInfo - -
- - -Updates account information in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The ID of the organization for which the account will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **account_identifier** (`string`, optional) Unique identifier for the account to update in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetAccountDetails - -
- - -Retrieve detailed information for a specified account. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization to which the account belongs. -- **account_unique_id** (`string`, required) Unique identifier for the account details request. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteAccount - -
- - -Delete a chart of account in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization in Zoho Books. -- **account_identifier** (`string`, required) The unique identifier for the account to be deleted in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ActivateChartOfAccount - -
- - -Activate a chart of account in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books that needs the account to be activated. -- **account_unique_identifier** (`string`, required) Unique identifier of the account to be activated in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeactivateChartOfAccount - -
- - -Deactivate a specific chart of account. - -**Parameters** - -- **organization_identifier** (`string`, required) ID of the organization to deactivate the chart of account for. -- **account_identifier** (`string`, required) The unique identifier of the account to be deactivated. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListAccountTransactions - -
- - -Retrieve transactions for a specified account. - -**Parameters** - -- **organization_id** (`string`, required) Unique identifier for the organization whose account transactions are being queried. -- **account_id** (`string`, required) The unique ID of the account to retrieve transactions for. -- **transaction_date_range** (`string`, optional) Specify a date range for searching transactions. Use 'yyyy-mm-dd' format. Supports 'date.start', 'date.end', 'date.before', and 'date.after'. -- **amount_range** (`number`, optional) Specify the amount range to filter account transactions. Use fields like less_than, less_equals, greater_than, and greater_equals to define the criteria. -- **filter_by_account_type** (`string`, optional) Filter accounts based on account type and status. Options: AccountType.All, AccountType.Active, AccountType.Inactive, AccountType.Asset, AccountType.Liability, AccountType.Equity, AccountType.Income, AccountType.Expense. -- **transaction_type** (`string`, optional) Filter transactions by type, such as 'invoice', 'expense', or 'refund'. -- **sort_by** (`string`, optional) Specify the column to sort transactions. Possible values: 'account_name', 'account_type'. -- **page_number** (`integer`, optional) Page number to be fetched for the transaction list. Defaults to 1 if not specified. -- **records_per_page** (`integer`, optional) Number of records to be fetched per page. Default is 200. Specify a custom integer to override. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteTransaction - -
- - -Delete a specified accounting transaction. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books for which the transaction will be deleted. -- **transaction_identifier** (`string`, required) Unique identifier for the transaction to be deleted in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateContactPerson - -
- - -Create a contact person for a contact in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization where the contact person will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateContactPerson - -
- - -Update an existing contact person's details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique ID representing the organization whose contact person is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **contact_person_identifier** (`string`, optional) Unique identifier for the contact person to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteContactPerson - -
- - -Delete an existing contact person from the records. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization to identify which entity the contact person belongs to. -- **contact_person_id** (`string`, required) Unique identifier for the contact person to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListContactPersons - -
- - -Retrieve contact persons for a given contact ID. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization for which the contact persons are being retrieved. -- **contact_identifier** (`string`, required) Unique identifier for the contact to retrieve associated persons. -- **page_number** (`integer`, optional) The page number to fetch when listing contact persons. Default is 1. -- **records_per_page** (`integer`, optional) Specifies the number of contact records to retrieve per page. The default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetContactPersonDetails - -
- - -Retrieve details of a specific contact person. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books. This identifies which organization the contact person belongs to. -- **contact_identifier** (`string`, required) Unique identifier for the contact in Zoho Books. -- **contact_person_identifier** (`string`, required) Unique identifier of the contact person in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkPrimaryContactPerson - -
- - -Mark a contact person as primary for a contact. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique identifier for the organization. This is required to specify which organization's contact is being updated. -- **contact_person_identifier** (`string`, required) Unique identifier for the contact person to be marked as primary. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateBusinessContact - -
- - -Create a new business contact with comprehensive details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique ID of the organization for which the contact is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RetrieveContactList - -
- - -Retrieve and filter a list of contacts from Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) Provide the ID of the organization to retrieve relevant contact data. -- **filter_contact_by_type** (`string`, optional) Filter contacts by type. Accepts 'customer' or 'vendor'. -- **contact_name_filter** (`string`, optional) Filter contacts by name. Use 'startswith' or 'contains' for match type. Max-length: 100 characters. -- **search_by_company_name** (`string`, optional) Search contacts by company name. Maximum length is 100 characters. Use variants like 'company_name_startswith' and 'company_name_contains' for different search methods. -- **primary_contact_first_name** (`string`, optional) Search contacts by the first name of the primary contact person. Use 'first_name_startswith' or 'first_name_contains'. Max-length 100. -- **search_by_last_name** (`string`, optional) Search contacts by last name of the primary contact person. Supports 'startswith' or 'contains' options. Max-length 100. -- **address_search** (`string`, optional) Search contacts by address field. Use 'address_startswith' or 'address_contains'. Max-length 100. -- **email_search_criteria** (`string`, optional) Search contacts by email of the primary contact person. Use 'startswith' or 'contains' in the string to specify the search variant. Max length is 100 characters. -- **contact_phone_number** (`string`, optional) Search contacts by primary contact's phone number. Supports 'startswith' and 'contains' variants. Max length of 100 characters. -- **contact_status_filter** (`string`, optional) Filter contacts by status. Options include All, Active, Inactive, Duplicate, PortalEnabled, PortalDisabled, OverDue, Unpaid, CreditLimitExceed, and Crm. -- **search_contacts_text** (`string`, optional) Search contacts using contact name or notes. Maximum length is 100 characters. -- **sort_by_column** (`string`, optional) Specify the column to sort contacts by. Allowed values: contact_name, first_name, last_name, email, outstanding_receivable_amount, created_time, and last_modified_time. -- **crm_contact_id** (`string`, optional) CRM Contact ID to filter specific contact details. -- **crm_account_id** (`string`, optional) Specify the CRM Account ID for the contact to retrieve specific contact details. -- **crm_vendor_id** (`string`, optional) The CRM Vendor ID associated with the contact, used to filter results. -- **page_number_to_fetch** (`integer`, optional) Specify the page number to be fetched. Defaults to 1 if not provided. -- **records_per_page** (`integer`, optional) The number of contact records to fetch per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateContactByCustomField - -
- - -Update a contact using a unique custom field value. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization in Zoho Books. This is required to specify which organization's records to update or create. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_field_api_name** (`string`, optional) The API name of the unique custom field used to identify the contact. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_value** (`string`, optional) The unique value of the custom field used to identify the contact. Must be a non-duplicate value. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **create_contact_if_not_found** (`boolean`, optional) Set to true to create a new contact if the unique custom field value isn't found. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateBusinessContact - -
- - -Update detailed information for an existing business contact. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization to which the contact belongs. This is required for identifying the organization context for the update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **contact_id** (`string`, optional) Unique identifier for the contact to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RetrieveContactDetails - -
- - -Retrieve comprehensive details of a specific contact. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique identifier of the organization for which the contact details are being retrieved. -- **contact_id** (`string`, required) Unique identifier for the contact to retrieve detailed information. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteContact - -
- - -Delete an existing contact from the system. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization from which the contact will be deleted. -- **contact_unique_identifier** (`string`, required) Unique identifier of the contact to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ActivateContact - -
- - -Activate a contact in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization to which the contact belongs. -- **contact_identifier** (`string`, required) Unique identifier of the contact to be marked as active. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkContactInactive - -
- - -Mark a Zoho Books contact as inactive. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization in Zoho Books. -- **contact_identifier** (`string`, required) Unique identifier of the contact in Zoho Books. Required to specify which contact to mark as inactive. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.EnableContactPortalAccess - -
- - -Enable portal access for a specified contact in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization within Zoho Books, required to enable portal access for a contact. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **contact_unique_id** (`string`, optional) Unique identifier for the specific contact whose portal access is to be enabled. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.EnablePaymentReminder - -
- - -Enable automated payment reminders for a contact. - -**Parameters** - -- **organization_id** (`string`, required) Provide the unique ID of the organization for which to enable payment reminders. -- **contact_unique_identifier** (`string`, required) Unique identifier of the contact for whom the payment reminder is enabled. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DisableContactPaymentReminder - -
- - -Disable automated payment reminders for a contact. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books for which payment reminders will be disabled. -- **contact_unique_identifier** (`string`, required) Unique identifier of the contact to disable payment reminders for. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.EmailContactStatement - -
- - -Sends an email statement to a specified contact. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. Required to send the email statement to a specified contact. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **contact_identifier** (`string`, optional) Unique identifier of the contact to send the statement to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **statement_start_date** (`string`, optional) The starting date for the statement in the format [yyyy-mm-dd]. If omitted, the current month will be used. Only used when mode is 'execute'. -- **statement_end_date** (`string`, optional) End date for the statement in the format [yyyy-mm-dd]. If not provided, the current month's statement will be sent. Only used when mode is 'execute'. -- **attachment_files** (`string`, optional) Files to be attached with the statement email, in multipart/form-data format. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetContactStatementMailContent - -
- - -Retrieve the statement email content for a contact. - -**Parameters** - -- **organization_identifier** (`string`, required) ID of the organization to retrieve statement mail content for the contact. -- **contact_unique_identifier** (`string`, required) Unique identifier for the contact to retrieve the statement mail content. -- **statement_start_date** (`string`, optional) Start date for the statement. Use format [yyyy-mm-dd]. Defaults to current month if not provided. -- **statement_end_date** (`string`, optional) End date for the statement in the format [yyyy-mm-dd]. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SendEmailToContact - -
- - -Send an email directly to a specified contact. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique ID of the organization to which the contact belongs. It is required for sending the email. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **contact_id** (`string`, optional) Unique identifier for the contact to send the email to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **send_customer_statement_with_email** (`boolean`, optional) Indicate if a customer statement PDF should be sent with the email. Use 'true' to send, 'false' otherwise. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetContactActivityRecentComments - -
- - -Retrieve recent comments for a specific contact. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose contact comments you want to retrieve. -- **contact_unique_identifier** (`string`, required) Unique identifier of the contact to retrieve recent comments. -- **page_number_to_fetch** (`integer`, optional) Page number to be fetched. Defaults to 1 if not specified. -- **records_per_page** (`integer`, optional) Number of records to be fetched per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetContactAddresses - -
- - -Retrieve addresses for a specified contact. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization in Zoho Books. This ID is necessary to fetch the contact's addresses within the specified organization. -- **contact_id** (`string`, required) Unique identifier of the contact in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AddContactAddress - -
- - -Add an additional address to a contact in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization for which the contact address will be added. This is required to specify the target organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **contact_id** (`string`, optional) The unique identifier for the contact to which an address will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateContactAddress - -
- - -Edit the additional address of a contact. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books. This is required to specify which organization's contact address needs updating. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **contact_identifier** (`string`, optional) Unique identifier of the contact to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **address_identifier** (`string`, optional) Unique identifier of the address to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteContactAddress - -
- - -Deletes an additional address of a contact. - -**Parameters** - -- **organization_id** (`string`, required) Unique ID of the organization in Zoho Books required for address deletion. -- **contact_unique_id** (`string`, required) Unique identifier for the contact whose address you want to delete. -- **address_identifier** (`string`, required) Unique identifier of the address to be deleted for the specified contact. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetContactRefundHistory - -
- - -Retrieve the refund history of a specific contact. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books. Required to access the specific account data. -- **contact_unique_identifier** (`string`, required) Unique identifier of the contact in Zoho Books for refund history retrieval. -- **page_number** (`integer`, optional) The page number to fetch for the contact's refund history. Default is 1. -- **records_per_page** (`integer`, optional) Specifies how many refund records to fetch per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.TrackContactFor1099Reporting - -
- - -Track a contact for 1099 reporting in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique identifier for the organization in Zoho Books required for 1099 reporting. This should be the ID specific to the organization tracked in the U.S.A. -- **contact_unique_id** (`string`, required) Unique identifier of the contact for 1099 tracking. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.Stop1099TrackingForVendor - -
- - -Stop 1099 payment tracking for a vendor in the U.S. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization where 1099 tracking will be stopped. -- **vendor_contact_id** (`string`, required) Unique identifier of the vendor contact to stop 1099 tracking. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RetrieveUnusedRetainerPayments - -
- - -Retrieve unused retainer payments for a contact. - -**Parameters** - -- **organization_id** (`string`, required) Unique identifier for the organization to filter retainer payments. -- **contact_id** (`string`, required) The unique identifier for the contact whose unused retainer payments are being retrieved. This is required to specify which contact's data you want to access. -- **filter_by_currency_id** (`string`, optional) Currency ID to filter unused retainer payments by a specific currency. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateCreditNote - -
- - -Create a new credit note for customer adjustments. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization for which the credit note is being created. Required for identifying the correct entity within Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **invoice_id** (`string`, optional) Invoice ID for the required invoice to associate with the credit note. Only used when mode is 'execute'. -- **use_custom_credit_note_number** (`boolean`, optional) Set to true to provide your own credit note number, bypassing auto-numbering. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListCreditNotes - -
- - -Retrieve and filter a list of credit notes. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which you want to list credit notes. Required for identification and retrieval. -- **credit_note_number** (`string`, optional) Filter credit notes by a specific credit note number. The number must be a unique identifier, up to 100 characters. -- **filter_date** (`string`, optional) Filter credit notes by the date they were raised. Use yyyy-mm-dd format to search for specific credit notes. -- **filter_by_status** (`string`, optional) Specify the status to filter credit notes. Options include: 'open', 'closed', 'void', or 'draft'. -- **filter_by_total_amount** (`number`, optional) Filter credit notes by their total amount. Input a specific total value to retrieve matching credit notes. -- **filter_by_reference_number** (`string`, optional) Filter credit notes by their reference number, limited to 100 characters. -- **filter_by_customer_name** (`string`, optional) Filter credit notes by customer name. Use to search for credit notes associated with a specific customer. Max-Length is 100 characters. -- **filter_by_item_name** (`string`, optional) Search for credit notes by item name. Maximum length is 100 characters. -- **filter_by_customer_id** (`string`, optional) Search for credit notes associated with a specific customer using the customer ID. Retrieve customer IDs from the contacts API. -- **filter_by_item_description** (`string`, optional) Filter credit notes by item description. Use 'startswith:' or 'contains:' for flexible matching. Max length of 100 characters. -- **filter_by_item_id** (`string`, optional) Filter credit notes by item ID to find notes containing a specific item. Obtain item IDs from the items API. -- **filter_by_line_item_id** (`string`, optional) Search for credit notes containing a specific line item using its ID. -- **filter_by_tax_id** (`string`, optional) Filter credit notes using a specific tax ID. Retrieve the tax ID from the taxes API. -- **status_filter** (`string`, optional) Filter credit notes by status using predefined values: 'Status.All', 'Status.Open', 'Status.Draft', 'Status.Closed', 'Status.Void'. -- **search_text** (`string`, optional) Search credit notes across multiple fields like credit note number, customer name, and reference number. Max-length is 100 characters. -- **sort_credit_notes_by_column** (`string`, optional) Specify the column by which to sort the credit notes. Allowed values: 'customer_name', 'creditnote_number', 'balance', 'total', 'date', and 'created_time'. -- **page_number** (`integer`, optional) Page number for pagination. Specify which page of results to retrieve. Default is 1. -- **records_per_page** (`integer`, optional) Specify the number of credit notes to be returned per page for pagination. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateCreditNoteWithCustomField - -
- - -Update or create a credit note using a custom field. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization to which the credit note belongs. This identifies the target organization for the update or creation operation. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_key** (`string`, optional) The API name of the unique custom field used to identify the credit note. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_field_unique_value** (`string`, optional) The unique value for the custom field used to identify the credit note to update or create. Ensure this matches the specific custom field's unique value constraints. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **create_new_credit_note_if_not_found** (`boolean`, optional) Set to true to create a new credit note if the unique custom field value isn't found in existing credit notes. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateCreditNoteDetails - -
- - -Update details of an existing credit note. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. Required to specify which organization's credit note to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **credit_note_unique_identifier** (`string`, optional) Unique identifier for the credit note to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **ignore_auto_number_generation** (`boolean`, optional) Set to true to provide your own credit note number instead of using the auto-generated one. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetCreditNoteDetails - -
- - -Retrieve details of a specific credit note using its ID. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization in Zoho Books. -- **credit_note_id** (`string`, required) The unique identifier of the credit note to retrieve details for. This ID is essential for accessing the specific credit note information. -- **response_format** (`string`, optional) Specify the format of the credit note details: json, pdf, or html. Default is html. -- **export_with_default_print_option** (`boolean`, optional) Specify whether to export the credit note PDF with the default print option. Use 'true' or 'false'. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteCreditNote - -
- - -Delete an existing credit note using its ID. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose credit note you wish to delete. -- **credit_note_id** (`string`, required) Unique identifier of the credit note to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.EmailCreditNote - -
- - -Send a credit note via email. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) ID of the organization for which the credit note is being emailed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **credit_note_id** (`string`, optional) Unique identifier of the credit note to be emailed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **customer_id_for_credit_note** (`string`, optional) Customer ID for whom the credit note is raised. Used to identify the recipient of the email. Only used when mode is 'execute'. -- **email_attachments** (`string`, optional) The file paths or URLs of files to attach to the email. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetCreditNoteEmailContent - -
- - -Retrieve email content for a given credit note. - -**Parameters** - -- **organization_identifier** (`string`, required) ID of the organization to retrieve the credit note email content for. This is a required field. -- **credit_note_id** (`string`, required) Unique identifier of the credit note to retrieve its email content. -- **specified_email_template_id** (`string`, optional) ID of a specific email template. If not provided, defaults to customer's or the default template. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkCreditNoteVoid - -
- - -Marks a credit note as void in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books to mark the credit note as void. -- **credit_note_identifier** (`string`, required) Unique identifier of the credit note to mark as void in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ConvertCreditNoteToDraft - -
- - -Convert a voided credit note to a draft status. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books. -- **credit_note_id** (`string`, required) Unique identifier of the credit note to be converted to draft. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkCreditNoteOpen - -
- - -Convert a draft credit note to open status in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books. -- **credit_note_id** (`string`, required) Unique identifier of the credit note to be converted to Open status. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SubmitCreditNoteForApproval - -
- - -Submit a credit note for approval in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) Provide the ID of the organization for which the credit note is being submitted for approval. -- **credit_note_id** (`string`, required) Unique identifier of the credit note to submit for approval in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ApproveCreditNote - -
- - -Approve a credit note for a specified ID. - -**Parameters** - -- **organization_id** (`string`, required) Provide the ID of the organization for which the credit note is being approved. -- **credit_note_identifier** (`string`, required) A unique string identifier for the specific credit note to approve. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RetrieveCreditNoteEmailHistory - -
- - -Retrieve the email history of a specific credit note. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization for which you want to retrieve the credit note email history. -- **credit_note_id** (`string`, required) Unique identifier of the credit note to retrieve its email history. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateCreditNoteBillingAddress - -
- - -Update the billing address for a specific credit note. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization in Zoho Books. Required to specify which organization's data is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **credit_note_identifier** (`string`, optional) A unique identifier for the credit note to update its billing address. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateCreditNoteShippingAddress - -
- - -Updates the shipping address of an existing credit note. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) ID of the organization to which the credit note belongs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **credit_note_id** (`string`, optional) Unique identifier of the credit note to update the shipping address for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetCreditNotePdfTemplates - -
- - -Retrieve all credit note PDF templates from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books. Required to fetch credit note templates. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateCreditNoteTemplate - -
- - -Updates the PDF template for a specified credit note. - -**Parameters** - -- **organization_identifier** (`string`, required) Unique identifier for the organization. Required to specify which organization's credit note template will be updated. -- **credit_note_id** (`string`, required) Unique identifier of the credit note to be updated. -- **credit_note_template_id** (`string`, required) Unique identifier of the credit note template to be updated. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListCreditNoteInvoices - -
- - -List invoices to which the credit note is applied. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which you want to list the invoices associated with the credit note. -- **credit_note_id** (`string`, required) Unique identifier of the credit note to retrieve associated invoices. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ApplyCreditNoteToInvoice - -
- - -Apply credit note to existing invoices in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization within Zoho Books to which the credit note is being applied. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **credit_note_id** (`string`, optional) Unique identifier of the credit note to apply to invoices. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteCreditNoteInvoice - -
- - -Delete the credits applied to an invoice of a credit note. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization to identify which organization's data is being manipulated. -- **credit_note_unique_id** (`string`, required) Unique identifier for the credit note to delete its associated invoice credits. -- **credit_note_invoice_id** (`string`, required) Unique identifier of the credit note invoice to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetCreditNoteComments - -
- - -Retrieve comments and history of a credit note. - -**Parameters** - -- **organization_identifier** (`string`, required) Provide the organization's unique ID to retrieve credit note comments. -- **credit_note_id** (`string`, required) Provide the unique identifier of the credit note to retrieve its comments and history. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AddCreditNoteComment - -
- - -Add a comment to an existing credit note. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The string ID of the organization to which the credit note belongs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **credit_note_id** (`string`, optional) Unique identifier of the credit note to which the comment will be added. This is required to specify the exact credit note targeted for the comment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteCreditNoteComment - -
- - -Delete a specific comment from a credit note. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. Required for deleting a credit note comment. -- **credit_note_id** (`string`, required) Unique identifier of the credit note to which the comment belongs. -- **comment_unique_identifier** (`string`, required) The unique ID of the comment to be deleted from a credit note. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreditNoteRefundListing - -
- - -Retrieve a paginated list of credit note refunds. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Use this to specify which organization's credit note refunds to list. -- **customer_identifier** (`string`, optional) ID of the customer for whom the credit note is raised. Provide to filter refunds by customer. -- **refunds_sort_column** (`string`, optional) Specifies the attribute to sort the credit note refunds. Use values like 'refund_mode', 'reference_number', 'date', 'creditnote_number', 'customer_name', 'amount_bcy', or 'amount_fcy'. -- **pagination_page_number** (`integer`, optional) Page number for pagination to specify which page of results to retrieve. Default is 1. -- **records_per_page** (`integer`, optional) Number of records to display per page in the paginated results. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListCreditNoteRefunds - -
- - -Retrieve refunds for a specific credit note. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization to retrieve credit note refunds for. -- **credit_note_id** (`string`, required) Unique identifier of the credit note to retrieve refunds for. -- **page_number** (`integer`, optional) Specify the page number to retrieve in paginated results. Default is 1. -- **results_per_page** (`integer`, optional) Number of records to return per page, controlling pagination. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RefundCreditNote - -
- - -Process a credit note refund in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization in Zoho Books for which the credit note refund is being processed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **credit_note_id** (`string`, optional) Unique identifier of the credit note to refund. This is required to specify which credit note the refund applies to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetCreditNoteRefund - -
- - -Retrieve refund details for a specific credit note. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization for which the credit note refund is being retrieved. Use a valid organization identifier. -- **credit_note_id** (`string`, required) Unique identifier of the credit note to retrieve refund details for. -- **credit_note_refund_id** (`string`, required) Unique identifier of the credit note refund to retrieve specific refund details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateRefundTransaction - -
- - -Update the refunded transaction details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization. Required to identify which organization's records are being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **credit_note_identifier** (`string`, optional) Unique identifier of the credit note to update the refund transaction. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **credit_note_refund_id** (`string`, optional) Provide the unique identifier of the credit note refund to update its transaction details. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteCreditNoteRefund - -
- - -Delete a specific credit note refund by ID. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required to delete a credit note refund. -- **credit_note_id** (`string`, required) Unique identifier of the credit note to be refunded. -- **credit_note_refund_id** (`string`, required) Unique identifier of the credit note refund to delete. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateCurrency - -
- - -Create a currency for transactions in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization for which the currency is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListConfiguredCurrencies - -
- - -Retrieve the list of configured currencies in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. Required to retrieve currency data for a specific organization. -- **exclude_base_currency_filter** (`string`, optional) Set to exclude the base currency from the result. Use 'Currencies.ExcludeBaseCurrency'. -- **page_number** (`integer`, optional) The page number of currency records to fetch. Default is 1. -- **records_per_page** (`integer`, optional) Number of currency records to fetch per page. Defaults to 200 if not specified. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateCurrencyDetails - -
- - -Update the details of a currency in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization for which the currency details are being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **currency_unique_identifier** (`string`, optional) Unique identifier of the currency to be updated in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetCurrencyDetails - -
- - -Get the details of a specific currency. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which the currency details are requested. -- **currency_identifier** (`string`, required) Unique identifier for the currency to fetch details for. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RemoveCurrency - -
- - -Remove a specific currency from the system. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID representing the organization for which the currency deletion is requested. -- **currency_identifier** (`string`, required) Unique identifier of the currency to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListCurrencyExchangeRates - -
- - -Retrieve exchange rates for a specific currency. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization to retrieve exchange rates. -- **currency_identifier** (`string`, required) Unique identifier for the currency to retrieve exchange rates. -- **exchange_rate_from_date** (`string`, optional) Date to start retrieving exchange rates. Returns rates from this date or nearest previous match. -- **sort_by_column** (`string`, optional) Sorts the exchange rates by the specified column. Only 'effective_date' is allowed. -- **return_current_date_exchange_rate_only** (`boolean`, optional) Set to true to return the exchange rate only if it's available for the current date. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateExchangeRate - -
- - -Create an exchange rate for a specified currency. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization for which the exchange rate is being created. This must be a unique identifier within Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **currency_identifier** (`string`, optional) Unique identifier for the currency used to create the exchange rate in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetCurrencyExchangeRate - -
- - -Retrieve details of a specific currency exchange rate. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization for which you want to retrieve exchange rate details. -- **currency_unique_identifier** (`string`, required) Unique identifier for the currency. Use to specify the currency for the exchange rate details. -- **exchange_rate_unique_id** (`string`, required) Unique identifier of the exchange rate to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateExchangeRate - -
- - -Update exchange rate details for a currency in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization for which the exchange rate is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **currency_unique_identifier** (`string`, optional) Unique identifier for the currency you want to update the exchange rate for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **exchange_rate_identifier** (`string`, optional) Unique identifier for the exchange rate to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteExchangeRate - -
- - -Delete an exchange rate for a specific currency. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which the exchange rate is being deleted. -- **currency_identifier** (`string`, required) Unique identifier for the currency whose exchange rate is to be deleted. -- **exchange_rate_identifier** (`string`, required) Unique identifier for the exchange rate to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListCustomModuleRecords - -
- - -Fetches records from a specified custom module. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the Zoho organization to fetch records from. -- **custom_module_name** (`string`, required) Name of the custom module from which to retrieve records in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateCustomModuleRecords - -
- - -Updates existing custom module records in bulk. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization that owns the module records to be updated. This ID is required to specify which organization's records are being modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **module_name** (`string`, optional) Specify the name of the custom module to update records in bulk. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateCustomModule - -
- - -Creates a custom module in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization for which the custom module is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_module_name** (`string`, optional) Specify the name for the custom module to be created in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteCustomModule - -
- - -Deletes a specified custom module in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. -- **module_name** (`string`, required) The name of the custom module to be deleted in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetCustomModuleRecordDetails - -
- - -Fetch details of an organization in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. -- **module_name** (`string`, required) The name of the module associated with the organization in Zoho Books. -- **custom_module_id** (`integer`, required) The ID for the specific custom module in Zoho Books that you want to retrieve details for. This value should be an integer. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateCustomModuleRecord - -
- - -Update an existing custom module in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **module_name** (`string`, optional) The name of the custom module to be updated in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_module_id** (`integer`, optional) The ID of the custom module to be updated in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteCustomModuleRecord - -
- - -Delete an individual record from a custom module. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required to specify which organization's module record to delete. -- **module_name** (`string`, required) Name of the custom module containing the record to delete. -- **custom_module_id** (`integer`, required) The unique integer ID of the custom module to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateCustomerDebitNote - -
- - -Create a customer debit note for invoice adjustments. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) A unique identifier for the organization to which the debit note will be associated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **send_debit_note** (`boolean`, optional) Set to true to send the debit note to the associated contacts. Accepts true or false. Only used when mode is 'execute'. -- **ignore_auto_number_generation** (`boolean`, optional) Set to true to ignore automatic debit note number generation, requiring manual entry. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListCustomerDebitNotes - -
- - -Retrieve and organize customer debit notes easily. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization for this request. Required for identifying the organization whose debit notes are being queried. -- **search_item_name** (`string`, optional) Search debit notes based on product or service names. Supports 'item_name_startswith' and 'item_name_contains'. Max length is 100 characters. -- **search_by_item_id** (`string`, optional) Search for customer debit notes using a specific item ID to filter based on product or service identifiers. -- **item_description_filter** (`string`, optional) Filter debit notes by item description using detailed descriptions of products or services. Supports 'startswith' and 'contains' variants. Max length: 100 characters. -- **search_by_customer_name** (`string`, optional) Search debit notes by customer name. Filters based on the business or individual name. Maximum 100 characters. -- **customer_email_filter** (`string`, optional) Filter debit notes by customer email address, with a maximum length of 100 characters, to find specific customers or generate segment reports. -- **search_by_total_amount** (`string`, optional) Filter debit notes by the total amount, including taxes, discounts, and adjustments. Useful for finding specific price ranges or high-value transactions. -- **search_by_outstanding_balance** (`string`, optional) Filter debit notes by the remaining unpaid amount owed by the customer. Useful for finding overdue debit notes, tracking receivables, or generating aging reports. -- **search_by_custom_field** (`string`, optional) Filter debit notes using custom fields. Supports 'custom_field_startswith' and 'custom_field_contains' for searching specific text patterns. -- **search_date_range** (`string`, optional) Filter debit notes by creation date using yyyy-mm-dd format. Supports variants: date_start, date_end, date_before, date_after. -- **filter_due_date** (`string`, optional) Search debit notes by due date using yyyy-mm-dd format. Supports 'due_date_start', 'due_date_end', 'due_date_before', and 'due_date_after' variants. -- **creation_date_filter** (`string`, optional) Filter debit notes by creation date. Use formats: 'yyyy-mm-dd', 'created_date_start', 'created_date_end', 'created_date_before', or 'created_date_after'. -- **last_modified_timestamp** (`string`, optional) Filter debit notes modified after this timestamp in YYYY-MM-DDTHH:MM:SS-UTC format. -- **status_filter** (`string`, optional) Filter debit notes by their status. Allowed values: sent, draft, overdue, paid, void, unpaid, partially_paid, viewed. -- **search_by_customer_id** (`string`, optional) Search debit notes by the customer's unique identifier. Use the customer ID from the Contacts API to find all corresponding debit notes. -- **filter_by_debit_note_type** (`string`, optional) Set to 'Type.DebitNote' to filter debit notes specifically. Required for this search. -- **general_search_text** (`string`, optional) Search debit notes by number, purchase order, or customer name. Max 100 characters. Useful for quick searches across multiple fields. -- **sort_debit_notes_by_column** (`string`, optional) Sort debit notes by a specific column. Allowed values: customer_name, debit_note_number, date, due_date, total, balance, created_time. -- **page_number_to_fetch** (`integer`, optional) Page number to retrieve from paginated results. Default is 1. Use with `per_page` to navigate extensive debit note data efficiently. -- **records_per_page** (`integer`, optional) Specify the number of records to retrieve per page, up to a maximum of 200. The default value is 200. This helps manage data transfer efficiency. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateCustomerDebitNote - -
- - -Update an existing customer debit note. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) Organization ID for the request within Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **debit_note_unique_identifier** (`string`, optional) Unique identifier for the debit note to be updated in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **ignore_auto_number_generation** (`boolean`, optional) Set to true to ignore automatic debit note number generation, requiring manual input of the debit note number. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetCustomerDebitNote - -
- - -Retrieve the details of a customer debit note from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) Organization ID for the request. This ID is required to specify the organization from which to retrieve the debit note. -- **debit_note_unique_id** (`string`, required) Unique identifier for the specific debit note to retrieve details. -- **response_format** (`string`, optional) Format of the debit note details. Options are json, pdf, or html. Default is json. -- **print_pdf** (`boolean`, optional) If true, print the exported PDF version of the debit note; otherwise, do not print. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteCustomerDebitNote - -
- - -Delete an existing customer debit note in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization within Zoho Books. Required to specify which organization's data to access or modify. -- **debit_note_unique_id** (`string`, required) Unique identifier for the debit note to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateCustomerPayment - -
- - -Create a new customer payment in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books. This is necessary to associate the payment with the correct organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListCustomerPayments - -
- - -List all payments made by your customers. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization. Required to specify which organization's payments to list. -- **search_customer_name** (`string`, optional) Filter payments by customer name using 'startswith' or 'contains' variants. Max length: 100 characters. -- **search_by_reference_number** (`string`, optional) Search payments by reference number. Supports 'startswith' and 'contains' variants. Max-length 100. -- **payment_date** (`string`, optional) Specify the date of the customer payment in YYYY-MM-DD format to filter results. -- **payment_amount_filter** (`number`, optional) Filter payments by amount using variants: less_than, less_equals, greater_than, or greater_equals. -- **search_by_customer_notes** (`string`, optional) Search payments using customer notes, supporting 'startswith' and 'contains' variants. -- **payment_mode_filter** (`string`, optional) Filter payments by specifying the payment mode. Use 'startswith' or 'contains' for partial matching. -- **filter_payments_by_mode** (`string`, optional) Filter payments by the payment mode. Accepted values include: All, Check, Cash, BankTransfer, Paypal, CreditCard, GoogleCheckout, Credit, Authorizenet, BankRemittance, Payflowpro, Stripe, TwoCheckout, Braintree, Others. -- **sort_column** (`string`, optional) Specify the column to sort the payments by. Common options include date, amount, or customer name. -- **search_term_for_payments** (`string`, optional) Search payments by reference number, customer name, or payment description. Maximum length is 100 characters. -- **customer_id** (`string`, optional) The unique identifier for the customer involved in the payment. Use this to target specific customer transactions. -- **page_number_to_fetch** (`integer`, optional) The page number of payment records to be retrieved. Defaults to 1. -- **records_per_page** (`integer`, optional) Number of records to be fetched per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.BulkDeleteCustomerPayments - -
- - -Delete multiple customer payments efficiently. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier string for the organization in Zoho Books. -- **payment_ids_to_delete** (`string`, required) Comma-separated list of payment IDs to be deleted in the bulk operation. -- **perform_bulk_delete** (`boolean`, required) Set to true to perform the bulk delete operation for customer payments. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdatePaymentByCustomField - -
- - -Update or upsert a customer payment using a unique custom field. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization whose payment is being updated or created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_api_name** (`string`, optional) API name of the unique custom field used to identify the payment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_value** (`string`, optional) The unique value of the custom field used to identify or create a payment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **create_new_payment_if_not_found** (`boolean`, optional) Set to true to create a new payment when no matching unique custom field value is found. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateCustomerPaymentInfo - -
- - -Update an existing payment information. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization for which the payment update is requested. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **payment_unique_identifier** (`string`, optional) The unique identifier for the payment to be updated. Use this to specify which payment you want to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetCustomerPaymentDetails - -
- - -Retrieve details of a specific customer payment. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which the payment details are requested. -- **payment_identifier** (`string`, required) The unique identifier of the payment to retrieve details for. -- **response_format** (`string`, optional) Format of the response. Allowed values: 'json' or 'pdf'. Default is 'json'. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteCustomerPayment - -
- - -Delete an existing payment for a customer. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose payment is being deleted. -- **payment_identifier** (`string`, required) Unique identifier for the payment to be deleted. Required to specify which payment record should be removed. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListCustomerPaymentRefunds - -
- - -Retrieve refunds for a specified customer payment. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization. Required to specify which organization's data to access. -- **customer_payment_identifier** (`string`, required) Unique identifier of the customer payment to retrieve associated refunds. -- **page_number** (`integer`, optional) Specify the page number to fetch. Defaults to 1 if not provided. -- **records_per_page** (`integer`, optional) Number of records to fetch per page. Defaults to 200 if not specified. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RefundExcessPayment - -
- - -Refund the excess amount paid by a customer. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization to process the refund under. Ensure this matches the ID in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **customer_payment_identifier** (`string`, optional) Unique identifier for the customer's payment to be refunded. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateCustomerPaymentCustomFields - -
- - -Update custom fields in existing customer payments. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization to which the customer payment belongs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **customer_payment_identifier** (`string`, optional) The unique identifier for the customer payment you wish to update custom fields for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetCustomerPaymentRefundDetails - -
- - -Obtain details of a specific customer payment refund. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization. This is required to specify which organization's data to access. -- **customer_payment_unique_id** (`string`, required) Unique identifier of the customer payment to retrieve refund details. -- **refund_identifier** (`string`, required) Unique identifier of the refund for the specified customer payment. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdatePaymentRefund - -
- - -Update details of a customer payment refund. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books. Required to access the organization's data. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **customer_payment_identifier** (`string`, optional) Unique identifier of the customer payment to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **refund_identifier** (`string`, optional) Unique identifier for the refund transaction to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteCustomerPaymentRefund - -
- - -Delete a refund for an existing customer payment. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which the refund deletion is requested. -- **customer_payment_identifier** (`string`, required) The unique identifier for the customer payment associated with the refund to be deleted. -- **refund_identifier** (`string`, required) Unique identifier of the refund to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateCustomerEstimate - -
- - -Create an estimate for a customer using Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization for which the estimate is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **send_estimate_to_contact** (`boolean`, optional) Set to true to send the estimate to the contact person(s) associated with it, false to skip sending. Only used when mode is 'execute'. -- **ignore_automatic_estimate_number_generation** (`boolean`, optional) Set to true to bypass automatic estimate number generation. This requires specifying an estimate number. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListEstimates - -
- - -Retrieve a list of all estimates with pagination. - -**Parameters** - -- **organization_id** (`string`, required) Specifies the ID of the organization to filter the estimates. -- **estimate_number_filter** (`string`, optional) Specify an estimate number or use variants like 'startswith' or 'contains' for partial matching to filter estimates. -- **reference_number_filter** (`string`, optional) Filter or search estimates by their reference number. Supports partial matches using 'startswith' and 'contains'. -- **customer_name** (`string`, optional) Search estimates by customer's name with optional variants for partial matches, such as 'startswith' and 'contains'. -- **total_filter** (`number`, optional) Specify a condition to search estimates by their total amount. Use variants like 'less_than', 'less_equals', 'greater_than', and 'greater_equals' for range queries. -- **filter_by_customer_id** (`string`, optional) Filter or search estimates using the unique customer ID. Use the `customer_id` provided by the Contacts API for the same organization to retrieve estimates linked to a specific customer. -- **filter_by_item_id** (`string`, optional) Filter or search estimates by the unique item ID. Use the item_id returned by the Items API for the same organization to find estimates including a specific product or service. -- **item_name_filter** (`string`, optional) Search estimates by item name. Supports variants like 'item_name_startswith' and 'item_name_contains' for partial matches. -- **search_by_item_description** (`string`, optional) Search estimates by item description. Use variants 'item_description_startswith' and 'item_description_contains' for pattern matching. -- **search_by_custom_field** (`string`, optional) Search estimates by a custom field, supporting variants like 'startswith' or 'contains' for partial matches. Useful for identifying estimates linked to specific custom data. -- **expiry_date** (`string`, optional) Specify the expiration date of the estimates to filter the results. Use the format YYYY-MM-DD. -- **estimate_date_filter** (`string`, optional) Search estimates by date using variants like 'date_start', 'date_end', 'date_before', or 'date_after'. -- **estimate_status_filter** (`string`, optional) Filter estimates by status. Allowed values: draft, sent, invoiced, accepted, declined, expired. -- **filter_estimates_by_status** (`string`, optional) Specify the status to filter estimates. Allowed values: Status.All, Status.Sent, Status.Draft, Status.Invoiced, Status.Accepted, Status.Declined, Status.Expired. -- **keyword_search** (`string`, optional) Keyword search across estimate number, reference number, or customer name to quickly find matching estimates. -- **sort_estimates_by_column** (`string`, optional) Specify the column to sort estimates by. Options: customer_name, estimate_number, date, total, created_time. -- **deal_potential_id** (`integer`, optional) Potential ID of a Deal in CRM. Use this to filter estimates linked to specific deals. -- **page_number** (`integer`, optional) Specify the page number to fetch. Default is 1. -- **records_per_page** (`integer`, optional) Number of records to fetch per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateEstimateWithCustomField - -
- - -Update or create an estimate using a custom field value. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) Provide the ID of the organization for which the estimate is being updated or created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_api_name** (`string`, optional) The API name of the custom field used to uniquely identify and update an estimate. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_value** (`string`, optional) The unique value of the custom field used to identify and update the estimate. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **create_new_estimate_if_not_found** (`boolean`, optional) Set to true to create a new estimate if no existing record matches the custom field value. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateEstimate - -
- - -Update an existing estimate in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization whose estimate needs updating. It should be a unique identifier in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **estimate_unique_id** (`string`, optional) Unique identifier for the estimate you want to update in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **ignore_auto_number_generation** (`boolean`, optional) Set to true to ignore auto generation of estimate numbers and manually specify the estimate number. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RetrieveEstimateDetails - -
- - -Retrieve the details of a specific estimate. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization in Zoho Books. Required to retrieve estimate details. -- **estimate_id** (`string`, required) Unique identifier of the specific estimate to retrieve details for. -- **response_format** (`string`, optional) Specify the format for the estimate details: json, pdf, or html. Default is json. -- **print_pdf** (`boolean`, optional) Set to true to print the exported PDF of the estimate. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteEstimate - -
- - -Delete an existing estimate in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization where the estimate will be deleted. -- **estimate_id** (`string`, required) Unique identifier for the estimate to be deleted in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateEstimateCustomFields - -
- - -Update custom fields in a specific estimate. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization whose estimate custom fields are being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **estimate_identifier** (`string`, optional) Unique identifier for the estimate to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkEstimateAsSent - -
- - -Mark a draft estimate as sent. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books. Required to identify which organization's estimate to mark as sent. -- **estimate_identifier** (`string`, required) The unique identifier for the estimate to be marked as sent. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AcceptEstimate - -
- - -Mark a sent estimate as accepted if the customer has accepted it. - -**Parameters** - -- **organization_id** (`string`, required) ID for the organization related to the estimate acceptance. -- **estimate_identifier** (`string`, required) Unique identifier of the estimate to be marked as accepted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeclineEstimate - -
- - -Marks a sent estimate as declined if rejected by customer. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization for which the estimate is being declined. -- **estimate_identifier** (`string`, required) Unique identifier of the estimate to mark as declined. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SubmitEstimateForApproval - -
- - -Submit an estimate for approval. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books that the estimate belongs to. -- **estimate_identifier** (`string`, required) Unique identifier of the estimate to be submitted for approval. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ApproveEstimate - -
- - -Approve an estimate in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization in Zoho Books whose estimate is being approved. This should be the unique identifier associated with the organization. -- **estimate_identifier** (`string`, required) Unique identifier for the estimate to be approved in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SendEstimateEmail - -
- - -Send an email estimate to a customer. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier of the organization. This ID is required to send an estimate email. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **estimate_identifier** (`string`, optional) Unique identifier of the estimate to be emailed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **email_attachments** (`string`, optional) Files to be attached to the email estimate. Provide file paths or URLs. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetEstimateEmailContent - -
- - -Retrieve the email content for a specific estimate. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which you want to retrieve the estimate email content. -- **email_template_id** (`string`, required) Optional. Specify a template ID to retrieve the email content based on a specific template. If not provided, defaults to the customer's associated or default template. -- **estimate_id** (`string`, required) Unique identifier for the estimate to retrieve its email content. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SendEstimatesEmail - -
- - -Send multiple estimates to customers via email. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. -- **estimate_ids_to_email** (`string`, required) Comma-separated string of up to 10 estimate IDs to send via email. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ExportEstimatesAsPdf - -
- - -Export up to 25 estimates as a single PDF document. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. Required to specify which organization's estimates are to be exported. -- **estimate_ids** (`string`, required) Comma-separated list of estimate IDs to include in the PDF. Maximum of 25 IDs allowed. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ExportAndPrintEstimates - -
- - -Export and print estimates as a PDF file. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization whose estimates are to be exported and printed. -- **estimate_ids_to_export** (`string`, required) Comma-separated list of estimate IDs to export and print. Maximum of 25 IDs allowed. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateEstimateBillingAddress - -
- - -Updates the billing address for a specific estimate. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier of the organization in Zoho Books. Required to specify the organization whose estimate billing address is to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **estimate_identifier** (`string`, optional) Unique identifier of the estimate to update the billing address. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateEstimateShippingAddress - -
- - -Updates the shipping address for an existing estimate in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization in Zoho Books whose estimate's shipping address is to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **estimate_identifier** (`string`, optional) Unique identifier of the estimate to update its shipping address. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetEstimateTemplates - -
- - -Retrieve all estimate PDF templates. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization to fetch estimate templates. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateEstimateTemplate - -
- - -Update the PDF template for an estimate. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization for which the estimate template is being updated. -- **estimate_identifier** (`string`, required) Provide the unique identifier for the specific estimate you want to update. -- **estimate_template_identifier** (`string`, required) Unique identifier for the estimate template to update in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetEstimateComments - -
- - -Get the complete history and comments of an estimate. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization whose estimate comments are needed. -- **estimate_identifier** (`string`, required) Unique identifier for the estimate to retrieve its history and comments. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AddEstimateComment - -
- - -Add a comment for a specific estimate in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique ID of the organization within Zoho Books. It is required to specify which organization's estimate is being commented on. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **estimate_identifier** (`string`, optional) Unique identifier for the specific estimate to comment on. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateEstimateComment - -
- - -Update an existing comment on an estimate. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The ID representing the organization. Required to update the comment in the specified organization's estimate. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **estimate_identifier** (`string`, optional) Unique identifier of the estimate to update the comment for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **comment_unique_identifier** (`string`, optional) The unique identifier of the comment to be updated on an estimate. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteEstimateComment - -
- - -Delete an estimate comment. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization where the estimate comment is located. -- **estimate_unique_id** (`string`, required) The unique identifier for the estimate, required to specify which estimate's comment to delete. -- **comment_unique_identifier** (`string`, required) Unique identifier of the comment to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateExpense - -
- - -Create a billable or non-billable expense record. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization for which the expense is being recorded. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **expense_receipt_file** (`string`, optional) File path or URL for the expense receipt. Accepted formats: gif, png, jpeg, jpg, bmp, pdf, xls, xlsx, doc, docx. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListExpenses - -
- - -Retrieve a list of expenses with pagination. - -**Parameters** - -- **organization_id** (`string`, required) Unique identifier for the organization whose expenses are being queried. -- **search_by_description** (`string`, optional) Search expenses by description, supports 'description_startswith' and 'description_contains'. Max-length is 100 characters. -- **search_by_reference_number** (`string`, optional) Search expenses by part or complete reference number using 'startswith' or 'contains'. Max-length is 100 characters. -- **filter_by_date** (`string`, optional) Search expenses by expense date. Use variants: date_start, date_end, date_before, or date_after. Format [yyyy-mm-dd]. -- **expense_status** (`string`, optional) Search expenses by status. Allowed values: unbilled, invoiced, reimbursed, non-billable, billable. -- **amount_filter** (`number`, optional) Search expenses by amount using the variants: less_than, less_equals, greater_than, or greater_equals. -- **search_expense_account_name** (`string`, optional) Search expenses by account name. Use 'startswith:' or 'contains:'. Max length is 100 characters. -- **customer_name_filter** (`string`, optional) Filter expenses by customer name. Supports 'startswith' and 'contains' variants. Max length is 100 characters. -- **vendor_name_filter** (`string`, optional) Filter expenses by vendor name using 'vendor_name_startswith' or 'vendor_name_contains'. -- **expense_account_customer_id** (`string`, optional) The ID of the expense account for the customer. Use this to filter expenses specific to a customer's account. -- **vendor_id** (`string`, optional) ID of the vendor associated with the expense. -- **recurring_expense_id** (`string`, optional) The ID used to search for expenses associated with a recurring expense. -- **paid_through_account_id** (`string`, optional) The ID of the account through which the expense was paid. -- **search_expenses_text** (`string`, optional) Search expenses by account name, description, customer name, or vendor name. Maximum length is 100 characters. -- **sort_expenses_by** (`string`, optional) Sort expenses by the specified column. Allowed values: date, account_name, total, bcy_total, reference_number, customer_name, created_time. -- **expense_status_filter** (`string`, optional) Filter expenses by status. Allowed values: 'Status.All', 'Status.Billable', 'Status.Nonbillable', 'Status.Reimbursed', 'Status.Invoiced', 'Status.Unbilled'. -- **page_number** (`integer`, optional) Page number to fetch, with the default starting at 1. -- **records_per_page** (`integer`, optional) Number of expense records to fetch per page. Defaults to 200 if not specified. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateExpenseWithCustomField - -
- - -Update or create an expense using custom field values. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization for which the expense update is intended. It is required to identify the target organization in the API. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_field_api_name** (`string`, optional) API name of the unique custom field used to identify the expense. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_value** (`string`, optional) The unique value for the custom field used to update or create an expense. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **allow_upsert_new_expense** (`boolean`, optional) Set to true to create a new expense if no matching unique custom field value is found. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateExistingExpense - -
- - -Update an existing expense in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization. Required to identify which organization's expense is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **expense_identifier** (`string`, optional) The unique identifier for the expense to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **expense_receipt_file** (`string`, optional) File path of the expense receipt to attach. Allowed extensions are gif, png, jpeg, jpg, bmp, pdf, xls, xlsx, doc, and docx. Ensure the file is accessible and in an accepted format. Only used when mode is 'execute'. -- **delete_receipt** (`boolean`, optional) Set to true to remove the attached receipt from the expense. Use false to keep it. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetExpenseDetails - -
- - -Retrieve details of a specific expense by ID. - -**Parameters** - -- **organization_identifier** (`string`, required) String representing the ID of the organization for which the expense details are requested. -- **expense_identifier** (`string`, required) Unique identifier for the expense to retrieve its details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteExpenseEntry - -
- - -Delete an existing expense entry in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique identifier for the organization within Zoho Books. -- **expense_identifier** (`string`, required) Unique identifier of the expense to be deleted in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetExpenseComments - -
- - -Retrieve comments and history for a specific expense. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization in Zoho Books required to fetch the expense comments. -- **expense_unique_id** (`string`, required) Unique identifier for the expense to retrieve its comments and history in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListCompanyEmployees - -
- - -Retrieve a paginated list of all employees. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose employees are being listed. This should be provided as a string. -- **page_number** (`integer`, optional) The page number to fetch. Default is 1 for the first page. -- **records_per_page** (`integer`, optional) Specify the number of employee records to retrieve per page, with a default of 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateEmployeeForExpense - -
- - -Create an employee for an expense record in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization in Zoho Books where the employee will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.FetchEmployeeDetails - -
- - -Retrieve detailed information about an employee. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization in Zoho Books. This ID is necessary to specify which organization's employee details are being requested. -- **employee_unique_id** (`string`, required) The unique identifier for the employee whose details are to be fetched in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteEmployeeRecord - -
- - -Remove an employee from the records in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) ID of the organization to uniquely identify it for employee deletion. -- **employee_identifier** (`string`, required) The unique identifier for the employee to be deleted in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RetrieveExpenseReceipt - -
- - -Retrieve the receipt attached to an expense. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization in Zoho Books. Required to retrieve the expense receipt. -- **expense_identifier** (`string`, required) Unique identifier for the expense to retrieve its receipt. Required for locating the specific expense in Zoho Books. -- **get_receipt_thumbnail** (`boolean`, optional) Set to true to get a thumbnail of the receipt; false returns the full receipt. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AttachExpenseReceipt - -
- - -Attach a receipt to a specified expense. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. -- **expense_id** (`string`, required) Unique identifier for the expense to which the receipt will be attached. -- **expense_receipt_file** (`string`, optional) The file to attach as an expense receipt. Supported formats: gif, png, jpeg, jpg, bmp, pdf, xls, xlsx, doc, docx. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteExpenseReceipt - -
- - -Deletes the receipt attached to an expense. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization for which the expense receipt is to be deleted. Ensure it's accurate to target the correct entity. -- **expense_id** (`string`, required) Unique identifier for the expense whose receipt is to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateFixedAsset - -
- - -Create a fixed asset in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization in Zoho Books for which the fixed asset is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetFixedAssetsList - -
- - -Retrieve a list of fixed assets from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization for which to list fixed assets. -- **filter_fixed_asset_status** (`string`, optional) Filter the fixed asset list by status. Valid inputs: Status.All, Status.Active, Status.Cancel, Status.FullyDepreciated, Status.WriteOff, Status.Sold, Status.Draft. -- **sort_by_column** (`string`, optional) Specify the column to sort the fixed asset list. Choose from: asset_name, asset_number, asset_cost, created_time, current_asset_value. -- **sort_order** (`string`, optional) Sort the fixed asset list in ascending or descending order. Use 'A' for ascending and 'D' for descending. -- **page_number** (`integer`, optional) The page number to fetch from the fixed asset list. Defaults to 1 if not specified. -- **records_per_page** (`integer`, optional) Number of fixed asset records to fetch per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateFixedAssetInfo - -
- - -Update fixed asset details in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization whose fixed asset you wish to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **fixed_asset_identifier** (`string`, optional) Unique identifier for the specific fixed asset to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetFixedAssetDetails - -
- - -Retrieve details of a fixed asset using its ID. - -**Parameters** - -- **organization_id** (`string`, required) Provide the ID of the organization for which you want to retrieve the asset details. -- **fixed_asset_identifier** (`string`, required) Unique identifier for the fixed asset to retrieve its details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteFixedAsset - -
- - -Delete a specified fixed asset. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization from which the fixed asset will be deleted. Ensure this ID corresponds to the correct organization. -- **fixed_asset_identifier** (`string`, required) Unique identifier of the fixed asset to be deleted. This ID is required to specify which asset to remove. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.FetchAssetHistory - -
- - -Fetch the detailed history of a specific fixed asset. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose asset history is being requested. -- **fixed_asset_identifier** (`string`, required) Unique identifier for the fixed asset. Required to fetch its detailed history. -- **page_number** (`integer`, optional) Page number to retrieve, with a default value of 1. -- **records_per_page** (`integer`, optional) Number of records to fetch per page. Defaults to 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetAssetDepreciationSummary - -
- - -Displays detailed future depreciation rates for a fixed asset. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization for which the asset's future depreciation rates are to be retrieved. -- **fixed_asset_identifier** (`string`, required) Unique identifier for the fixed asset to fetch its future depreciation rates. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ActivateFixedAsset - -
- - -Activate a fixed asset to begin depreciation calculation. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization. This is required to identify which organization's asset to activate. -- **fixed_asset_id** (`string`, required) Unique identifier of the fixed asset to activate for depreciation calculation. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CancelFixedAsset - -
- - -Cancel a fixed asset in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. Required to specify which organization's fixed asset to cancel. -- **fixed_asset_id** (`string`, required) Unique identifier for the fixed asset to be canceled. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkFixedAssetAsDraft - -
- - -Set a fixed asset status to draft in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization for which the fixed asset status will be changed. -- **fixed_asset_identifier** (`string`, required) Unique identifier for the fixed asset in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.WriteOffFixedAsset - -
- - -Remove a fixed asset from the records. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. Required to specify which organization's asset is to be written off. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **fixed_asset_identifier** (`string`, optional) Unique identifier of the fixed asset to be written off in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SellFixedAsset - -
- - -Initiate the sale of a specified fixed asset. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier of the organization within Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **fixed_asset_identifier** (`string`, optional) Unique identifier of the fixed asset to be sold. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AddFixedAssetComment - -
- - -Add a comment to a fixed asset in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization in Zoho Books. This is required to add a comment to the fixed asset. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **fixed_asset_identifier** (`string`, optional) Unique identifier for the fixed asset to add a comment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteAssetComment - -
- - -Delete a comment from a fixed asset in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) Provide the ID of the organization to specify which organization's asset comment you want to delete. -- **fixed_asset_identifier** (`string`, required) Unique identifier of the fixed asset to delete a comment from. -- **comment_id** (`string`, required) Unique identifier of the comment to be deleted from the fixed asset. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateFixedAssetType - -
- - -Create a fixed asset type in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization for which to create the fixed asset type. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetFixedAssetTypeList - -
- - -Retrieve a list of fixed asset types. - -**Parameters** - -- **organization_id** (`string`, required) Unique identifier for the organization to retrieve asset types for. -- **page_number_to_fetch** (`integer`, optional) The page number to retrieve for the list of fixed asset types. Defaults to 1 if not specified. -- **records_per_page** (`integer`, optional) Number of records to fetch per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateFixedAssetType - -
- - -Update a fixed asset type with new information. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **fixed_asset_type_identifier** (`string`, optional) Unique identifier for the fixed asset type to be updated in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteFixedAssetType - -
- - -Deletes a specified fixed asset type from the system. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization within Zoho Books. -- **fixed_asset_type_identifier** (`string`, required) Unique identifier for the fixed asset type to delete. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ImportCustomerFromCrm - -
- - -Import a customer from Zoho CRM to Zoho Books using CRM account ID. - -**Parameters** - -- **organization_id** (`string`, required) Unique identifier for the organization within Zoho Books. -- **crm_account_id** (`string`, required) Unique identifier of the Zoho CRM account to import the customer from. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CrmToBooksContactImport - -
- - -Import a customer from Zoho CRM to Zoho Books using CRM contact ID. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization within Zoho Books. -- **zoho_crm_contact_id** (`string`, required) Unique identifier for the Zoho CRM contact to import into Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ImportVendorFromCrm - -
- - -Import a vendor from Zoho CRM to Zoho Books using CRM vendor ID. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization in Zoho Books for which the vendor is being imported. This ID is used to specify the target organization in Zoho Books. -- **zoho_crm_vendor_id** (`string`, required) Unique identifier of the Zoho CRM vendor to import. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ImportCrmProductToZohoBooks - -
- - -Import a product from Zoho CRM to Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization in Zoho Books. This is required to import products from Zoho CRM. -- **crm_product_id** (`string`, required) Unique identifier of the Zoho CRM product to be imported into Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateCustomerInvoice - -
- - -Create an invoice for your customer. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization for which the invoice is created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **send_invoice_to_contacts** (`boolean`, optional) Boolean to determine if the invoice is sent to the contact persons. Use 'true' to send, 'false' otherwise. Only used when mode is 'execute'. -- **ignore_auto_number_generation** (`boolean`, optional) Set to true to ignore auto invoice number generation, requiring manual input. Only used when mode is 'execute'. -- **enable_quick_create_mode** (`boolean`, optional) Enable quick create mode for streamlined invoice creation with minimal required fields. Set to true for activation. Only used when mode is 'execute'. -- **enable_batch_payments** (`boolean`, optional) Enable batch payment processing for the invoice. True means the invoice is included in batch operations. Requires 'is_quick_create' to be true. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetInvoiceList - -
- - -Retrieve and organize a list of invoices from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization for which invoices are being queried. This ID is crucial for accessing the correct set of invoices within Zoho Books. -- **search_by_invoice_number** (`string`, optional) Search for invoices using their unique invoice number. Supports 'startswith' and 'contains' variants. Max length: 100 characters. -- **search_invoice_by_item_name** (`string`, optional) Filters invoices by product or service name in line items. Supports 'item_name_startswith' and 'item_name_contains'. Max length: 100 characters. -- **search_by_item_id** (`string`, optional) Search invoices by item ID. Use the unique identifier of a product or service to filter invoices that include specific line items. -- **item_description_filter** (`string`, optional) Filter invoices by item description using keywords. Supports 'startswith' and 'contains' variants. Max 100 characters. -- **search_reference_number** (`string`, optional) Search invoices by reference number, such as purchase order or project codes, to find invoices associated with specific projects or transactions. -- **search_by_customer_name** (`string`, optional) Search for invoices using the customer's name, with a maximum length of 100 characters, to generate customer-specific reports or find all invoices for a customer. -- **recurring_invoice_id** (`string`, optional) ID of the recurring invoice from which the invoice is created. Use to filter invoices tied to specific recurring billing cycles. -- **customer_email_filter** (`string`, optional) Filter invoices by the customer's email address. Maximum length is 100 characters. Ideal for finding specific customer invoices or customer segment analysis. -- **search_by_total_amount** (`string`, optional) Search and filter invoices based on the final total amount, including taxes, discounts, and adjustments. Useful for finding invoices within specific price ranges or identifying high-value transactions. -- **search_by_outstanding_balance** (`string`, optional) Filter invoices by outstanding balance to find overdue invoices, track receivables, or generate aging reports. -- **search_by_custom_field** (`string`, optional) Search invoices using custom fields. Supports 'custom_field_startswith' and 'custom_field_contains' for partial matching. -- **invoice_date_filter** (`string`, optional) Filter invoices by invoice date using yyyy-mm-dd format. Supports variants like date_start, date_end, date_before, and date_after to find invoices within specific date ranges. -- **invoice_due_date_filter** (`string`, optional) Filter invoices by due date using yyyy-mm-dd format. Supports start, end, before, and after variants for flexible searching. -- **filter_by_creation_date** (`string`, optional) Filter invoices by creation date with yyyy-mm-dd format. Supports variants: start, end, before, and after. -- **filter_by_last_modified_time** (`string`, optional) Filters invoices modified after a specific timestamp in YYYY-MM-DDTHH:MM:SS-UTC format. Useful for identifying recently updated invoices. -- **invoice_status** (`string`, optional) Filter invoices by their current status (e.g., sent, draft, overdue, etc.). -- **search_by_customer_id** (`string`, optional) Filters invoices using the unique customer ID. Use the ID from the Contacts API to find all invoices for a specific customer. -- **filter_invoices_by_criteria** (`string`, optional) Filter invoices by status (e.g., Status.Sent, Status.Paid) or payment expected date using Date.PaymentExpectedDate. -- **general_search_text** (`string`, optional) General search for invoices by invoice number, purchase order, or customer name. Accepts up to 100 characters. -- **sort_by_column** (`string`, optional) Specify the column to sort invoices by. Options: customer_name, invoice_number, date, due_date, total, balance, created_time. -- **search_by_crm_potential_id** (`integer`, optional) Find invoices linked to a specific CRM deal or opportunity using its potential ID from Zoho CRM. -- **response_format_type** (`integer`, optional) Specifies the desired response format: 0 for all invoices, 1 for all invoices with counts and totals, 2 for count only, 3 for count and totals, 4 for invoices and totals. -- **page_number** (`integer`, optional) Page number to fetch from paginated results. Default is 1. Use with 'per_page' for navigating large data sets. -- **records_per_page** (`integer`, optional) Number of records to fetch per page. Default is 200, maximum is 200. Use to control result size for performance optimization. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateInvoiceByCustomField - -
- - -Update or create an invoice using a custom field value. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. This is required to specify which organization's invoice should be updated or created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_api_name** (`string`, optional) The API name of the unique custom field used to locate the invoice to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_field_value** (`string`, optional) The unique value of the custom field used to find or create the invoice. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **create_new_invoice_if_not_found** (`boolean`, optional) Set to true to create a new invoice if the unique custom field value is not found in existing invoices. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateInvoice - -
- - -Update details of an existing invoice in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization to which the invoice belongs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **invoice_id** (`string`, optional) Unique identifier of the invoice to be updated. Ensure this ID corresponds to an existing invoice. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **ignore_auto_invoice_number_generation** (`boolean`, optional) Set to true to ignore automatic invoice number generation, requiring manual entry of the invoice number. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetInvoiceDetails - -
- - -Retrieve details of a specific invoice by ID. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization for which the invoice details are requested. -- **invoice_identifier** (`string`, required) Unique identifier of the invoice. Used to specify which invoice details to retrieve. -- **format_type** (`string`, optional) Specify the format for invoice details: json, pdf, or html. Default is json. -- **print_pdf** (`boolean`, optional) Boolean value indicating whether to print the exported PDF. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteInvoiceInZohoBooks - -
- - -Delete an existing invoice in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which the invoice is to be deleted in Zoho Books. -- **invoice_identifier** (`string`, required) Unique identifier of the invoice to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkInvoiceAsSent - -
- - -Mark a draft invoice as sent. - -**Parameters** - -- **organization_id** (`string`, required) Unique identifier of the organization for which the invoice will be marked as sent. -- **invoice_unique_identifier** (`string`, required) Unique identifier of the invoice to be marked as sent. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.VoidInvoiceStatus - -
- - -Mark an invoice as void in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books. Required to specify which organization the invoice belongs to. -- **invoice_unique_identifier** (`string`, required) Unique identifier for the invoice to be marked as void. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkInvoiceAsDraft - -
- - -Mark a voided invoice as draft in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization in Zoho Books. -- **invoice_identifier** (`string`, required) Unique identifier of the invoice to be marked as draft. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SendInvoicesEmail - -
- - -Send up to 10 invoices by email to customers. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The organization ID for which invoices will be emailed. Required for sending emails. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **comma_separated_invoice_ids** (`string`, optional) Comma separated list of invoice IDs to be emailed. Maximum 10 IDs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateInvoiceFromSalesOrder - -
- - -Create an invoice from a confirmed sales order. - -**Parameters** - -- **sales_order_id** (`string`, required) The unique identifier of the confirmed sales order to create an invoice for. -- **organization_id** (`string`, required) ID of the organization for which the invoice is being created. This must be a valid string ID. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AssociateInvoiceWithSalesOrder - -
- - -Link existing invoices to sales orders for tracking. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. Required for linking invoices with sales orders. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SubmitInvoiceForApproval - -
- - -Submit an invoice for approval in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. -- **invoice_unique_id** (`string`, required) The unique identifier for the invoice to be submitted for approval. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ApproveInvoice - -
- - -Approve a specified invoice for processing. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization for which the invoice is to be approved. -- **invoice_identifier** (`string`, required) Unique identifier of the invoice to approve. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetInvoiceEmailContent - -
- - -Retrieve the email content for a specific invoice. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique identifier for the organization. Required to retrieve invoice email content for the specified organization. -- **invoice_identifier** (`string`, required) Unique identifier of the invoice to retrieve its email content. -- **email_template_id** (`string`, optional) Optional. Specify a template ID to get the email content based on a specific template. Defaults to customer-associated or default template if not provided. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SendInvoiceEmail - -
- - -Email an invoice to a customer with optional content customization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier of the organization to which the invoice is linked. This ID is required to specify which organization's invoice is being emailed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **invoice_identifier** (`string`, optional) Unique string identifier for the specific invoice to be emailed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **invoice_email_attachments** (`string`, optional) A comma-separated list of file paths to attach to the email. Provide file paths if additional files need to be included with the invoice email. Only used when mode is 'execute'. -- **send_customer_statement** (`boolean`, optional) Set to 'True' to send the customer statement PDF with the email. Only used when mode is 'execute'. -- **send_invoice_attachment** (`boolean`, optional) Set to true to attach the invoice with the email; false to exclude it. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RemindCustomerInvoicePayment - -
- - -Remind customers of unpaid invoices by email. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. It specifies which organization's invoice reminders to manage. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **invoice_identifier** (`string`, optional) Unique identifier of the invoice to send a payment reminder for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **email_attachments** (`string`, optional) Comma-separated list of file URLs to attach to the reminder email. Only used when mode is 'execute'. -- **include_customer_statement_pdf** (`boolean`, optional) Set to true to include a customer statement PDF with the email reminder. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetPaymentReminderEmailContent - -
- - -Fetch the email content of a payment reminder for an invoice. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID for the organization within Zoho Books for which the payment reminder email content is being fetched. -- **invoice_identifier** (`string`, required) Unique identifier for the specific invoice to fetch the reminder email content. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SendInvoiceReminders - -
- - -Send email reminders for unpaid invoices. - -**Parameters** - -- **organization_identifier** (`string`, required) Provide the ID of the organization for which the invoice reminders are to be sent. -- **invoice_ids** (`string`, required) List of invoice IDs to send reminders for. Only for open or overdue invoices, up to 10 at once. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ExportInvoicesAsPdf - -
- - -Export up to 25 invoices as a single PDF file. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization for which invoices are being exported. -- **invoice_ids** (`string`, required) Comma-separated list of invoice IDs to export as a PDF. Maximum of 25 IDs allowed. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ExportAndPrintInvoices - -
- - -Export and print multiple invoices as PDFs. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required to specify which organization's invoices to print. -- **invoice_identifiers** (`string`, required) A comma-separated string of up to 25 invoice IDs to export and print as PDFs. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DisableInvoicePaymentReminder - -
- - -Disable automated payment reminders for an invoice. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required to specify which organization's invoice reminders are being disabled. -- **invoice_identifier** (`string`, required) Unique identifier of the invoice to disable payment reminders. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ActivateInvoiceReminder - -
- - -Enable automated payment reminders for invoices. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which the invoice payment reminder is being activated. -- **invoice_identifier** (`string`, required) Unique identifier of the invoice for which payment reminders are to be activated. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.WriteOffInvoiceBalance - -
- - -Write off the balance amount of an invoice in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books. -- **invoice_identifier** (`string`, required) The unique identifier for the invoice to be written off. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CancelWriteOffInvoice - -
- - -Cancel the write-off amount of an invoice in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization in Zoho Books whose invoice write-off is to be canceled. -- **invoice_unique_identifier** (`string`, required) The unique identifier for the invoice whose write-off is to be canceled. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ModifyInvoiceAddress - -
- - -Update the billing address for a specific invoice. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique string ID of the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **invoice_identifier** (`string`, optional) Unique identifier of the invoice to update the billing address. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateInvoiceShippingAddress - -
- - -Update the shipping address of a specific invoice. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier of the organization in Zoho Books. Required to specify which organization's invoice will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **invoice_unique_identifier** (`string`, optional) Unique identifier of the invoice to update the shipping address. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListInvoiceTemplates - -
- - -Fetch all invoice PDF templates from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization to fetch invoice templates for. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateInvoiceTemplate - -
- - -Update the PDF template for a specific invoice. - -**Parameters** - -- **organization_id** (`string`, required) Provide the ID of the organization for which the invoice template is being updated. -- **invoice_identifier** (`string`, required) Unique identifier for the invoice to update the PDF template. -- **invoice_template_id** (`string`, required) Unique identifier for the invoice template to be updated. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetInvoicePayments - -
- - -Retrieve a list of payments for a specific invoice. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization to retrieve invoice payments for. -- **invoice_identifier** (`string`, required) Unique identifier of the invoice to retrieve its payment details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetInvoiceCreditsApplied - -
- - -Retrieve the credits applied to a specific invoice. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required to retrieve credits applied to an invoice. -- **invoice_identifier** (`string`, required) Unique identifier of the invoice for which credits are applied. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ApplyCreditsToInvoice - -
- - -Apply customer credits to an invoice. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization to identify where credits are applied. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **invoice_unique_identifier** (`string`, optional) Unique identifier of the invoice to which credits will be applied. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteInvoicePayment - -
- - -Delete a payment made to an invoice in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books to which the payment belongs. This is required to identify the specific organization for deleting the invoice payment. -- **invoice_identifier** (`string`, required) Unique identifier of the invoice to delete the payment from. -- **invoice_payment_identifier** (`string`, required) Unique identifier of the invoice payment to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RemoveInvoiceCredit - -
- - -Remove a specific credit applied to an invoice. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization from which the credit is being removed. -- **invoice_identifier** (`string`, required) Unique identifier of the invoice to remove a credit from. -- **credit_note_invoice_id** (`string`, required) Unique identifier of the credit note invoice to be removed from the invoice. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetInvoiceAttachment - -
- - -Fetch attachment file from a specified invoice. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization to retrieve the invoice attachment for. -- **invoice_identifier** (`string`, required) Unique identifier of the invoice to fetch the attachment from. -- **get_thumbnail** (`boolean`, optional) Set to true to get the thumbnail of the invoice attachment. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AttachInvoiceFile - -
- - -Attach a file to a specified invoice. - -**Parameters** - -- **organization_identifier** (`string`, required) ID of the organization for which the invoice attachment is being added. This is required to identify the specific organization within Zoho Books. -- **invoice_identifier** (`string`, required) Unique identifier for the invoice to attach the file to. -- **file_to_attach** (`string`, optional) The file to be attached. Allowed extensions: gif, png, jpeg, jpg, bmp, pdf. -- **send_attachment_in_email** (`boolean`, optional) Set to True to send the attachment with the invoice when emailed. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SetInvoiceAttachmentPreference - -
- - -Set the email attachment preference for an invoice. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. -- **invoice_identifier** (`string`, required) Unique identifier for the specific invoice to update attachment preference. -- **send_attachment_with_email** (`boolean`, required) Set to true to send the attachment with the invoice when emailed. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteInvoiceAttachment - -
- - -Delete the file attached to an invoice. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which the invoice attachment will be deleted. This is required to authenticate and identify the specific organization on Zoho Books. -- **invoice_identifier** (`string`, required) Unique identifier of the invoice to delete the attachment from. Must match the invoice's ID in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RetrieveInvoiceDocument - -
- - -Retrieve a document attached to a specific invoice. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization to retrieve the document from. -- **invoice_id** (`string`, required) The unique identifier for the invoice to which the document is attached. Required to retrieve the document. -- **invoice_document_id** (`string`, required) Unique identifier for the specific document attached to the invoice. Required to retrieve the exact document. -- **response_format** (`string`, optional) Specify the desired format for the response, such as json, pdf, or html. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteInvoiceDocument - -
- - -Delete a document attached to an invoice. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. This is required to specify which organization's invoice document is to be deleted. -- **invoice_id** (`string`, required) The unique identifier of the invoice from which the document will be deleted. This ID is required and must be a valid invoice in the system. -- **invoice_document_id** (`string`, required) The unique ID of the document to be deleted from the invoice. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteInvoiceExpenseReceipt - -
- - -Delete attached expense receipts from an invoice. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization from which the expense receipt will be deleted. -- **expense_identifier** (`string`, required) Unique identifier of the expense to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateInvoiceCustomFields - -
- - -Update custom fields in an existing invoice. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization to which the invoice belongs. This is required to identify the correct organization context for the invoice update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **invoice_identifier** (`string`, optional) Unique identifier of the invoice to update custom fields. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetInvoiceComments - -
- - -Get comments and history of an invoice. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which the invoice comments and history are being retrieved. Must be a unique string identifier. -- **invoice_identifier** (`string`, required) Unique identifier for the specific invoice to retrieve comments and history. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AddInvoiceComment - -
- - -Add a comment to a specific invoice. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization for which the invoice belongs. It must be a valid and existing organization ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **invoice_identifier** (`string`, optional) Unique identifier of the invoice to add a comment to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateInvoiceComment - -
- - -Update an existing comment on an invoice. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) ID of the organization for which the invoice comment needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **invoice_unique_id** (`string`, optional) Unique identifier for the invoice to update its comment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **comment_id** (`string`, optional) Unique identifier of the comment to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteInvoiceComment - -
- - -Delete a specific comment from an invoice. - -**Parameters** - -- **organization_id** (`string`, required) Identifier for the organization in Zoho Books. -- **invoice_identifier** (`string`, required) Unique identifier of the invoice to delete the comment from. -- **comment_unique_identifier** (`string`, required) The unique identifier for the comment to be deleted from the invoice. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GenerateInvoicePaymentLink - -
- - -Generate a payment link for an invoice with expiry. - -**Parameters** - -- **organization_identifier** (`string`, required) Specify the organization's unique ID. -- **invoice_transaction_id** (`string`, required) The unique ID of the transaction or invoice for which the payment link is generated. -- **transaction_type** (`string`, required) Specifies the type of transaction, typically 'Invoice'. -- **link_type** (`string`, required) Specifies whether the payment link is Private or Public. -- **payment_link_expiry_date** (`string`, required) The date when the payment link should expire. Use format: yyyy-MM-dd. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateNewZohoItem - -
- - -Create a new item in Zoho Books inventory. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListActiveInventoryItems - -
- - -Retrieve a paginated list of all active inventory items. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization to fetch items from. -- **item_name_search** (`string`, optional) Search for items by name using prefixes 'name_startswith' or 'name_contains'. Maximum length is 100 characters. -- **description_filter** (`string`, optional) Search items by description. Use keywords or phrases up to 100 characters. Prefix with 'description_startswith' or 'description_contains' for specific filtering. -- **search_by_rate_criteria** (`string`, optional) Specify rate conditions to filter items. Use format like 'rate_less_than:100'. -- **search_by_tax_id** (`string`, optional) Search for items using the tax ID as a filter. -- **tax_name_filter** (`string`, optional) Filter items by their tax name. -- **tax_exemption_identifier** (`string`, optional) ID for the tax exemption. Required if is_taxable is false. -- **associated_account_id** (`string`, optional) ID of the account to associate the item with. -- **filter_items_by_status** (`string`, optional) Filter items by status. Allowed values are 'Status.All', 'Status.Active', and 'Status.Inactive'. -- **search_items_by_text** (`string`, optional) Search for items by name or description, up to 100 characters. -- **sort_items_by** (`string`, optional) Specify the attribute to sort items by. Allowed values: 'name', 'rate', 'tax_name'. -- **sat_item_key_code** (`string`, optional) SAT Item key code used to filter items. Provide a valid string key code for lookup. -- **sat_unit_code** (`string`, optional) SAT Unit code for specific inventory items. Used to search or filter items based on their unit code. -- **page_number_to_fetch** (`integer`, optional) The page number of active items to retrieve, with a default of 1 if unspecified. -- **records_per_page** (`integer`, optional) Specify the number of records to fetch per page. Default is 200. -- **is_item_taxable** (`boolean`, optional) Boolean indicating if the item is taxable. True means the item is taxable. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateItemViaCustomField - -
- - -Update or create an item using a unique custom field. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books. This ID is used to specify which organization's data you are trying to access or modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_api_name** (`string`, optional) The API name of the unique custom field used for identifying the item. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_value** (`string`, optional) The unique value of the custom field used to identify or create an item in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **create_item_if_not_found** (`boolean`, optional) Set to true to create a new item if no item matches the unique custom field value. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateZohoItemDetails - -
- - -Update the details of an item in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization in Zoho Books for which the item details are to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **item_identifier** (`string`, optional) Unique identifier of the item to be updated in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RetrieveItemDetails - -
- - -Retrieve details of a specific item in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose item details are being retrieved. -- **item_unique_identifier** (`string`, required) Unique identifier for the item to retrieve details from Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteItemInZohoBooks - -
- - -Delete an item from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization in Zoho Books from which you wish to delete the item. -- **item_identifier** (`string`, required) Unique identifier of the item to be deleted from Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateItemCustomFields - -
- - -Updates custom fields in an existing item. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization associated with the item. This is required to specify which organization's item custom fields should be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **item_identifier** (`string`, optional) Provide the unique identifier for the item to update its custom fields. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ActivateInactiveItem - -
- - -Activate an inactive item in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for your organization in Zoho Books. Required to activate an item. -- **item_identifier** (`string`, required) Unique identifier of the item to be activated in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkItemInactive - -
- - -Mark an item as inactive in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. Required for specifying which organization's item to mark as inactive. -- **item_identifier** (`string`, required) Unique identifier of the item to be marked inactive. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateJournalEntry - -
- - -Create a journal entry in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetJournalList - -
- - -Retrieve a list of accounting journals. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization to retrieve journals for. -- **journal_entry_number** (`string`, optional) Search journals by journal entry number using exact match or variants like 'entry_number_startswith' and 'entry_number_contains'. -- **search_by_reference_number** (`string`, optional) Search journals by reference number. Use 'startswith:' or 'contains:' for filtering options. -- **journal_date_search** (`string`, optional) Specify date criteria to search journals. Use date_start, date_end, date_before, or date_after. -- **search_journal_notes** (`string`, optional) Search journals by their associated notes. Options: 'startswith' or 'contains'. -- **search_by_last_modified_time** (`string`, optional) Search for journals using the last modified time as a filter criterion. Provide a valid timestamp to filter entries updated after that time. -- **journal_total_filter** (`number`, optional) Filter journals based on total amount using keys like total_less_than or total_greater_equals. -- **search_by_customer_id** (`integer`, optional) Use a specific Customer ID to search for journals in Zoho Books. -- **vendor_id** (`integer`, optional) Specify the Vendor ID to search journals associated with that vendor. -- **filter_journals_by_date** (`string`, optional) Specify the time period to filter journals by date. Options: JournalDate.All, JournalDate.Today, JournalDate.ThisWeek, JournalDate.ThisMonth, JournalDate.ThisQuarter, JournalDate.ThisYear. -- **sorting_column_for_journals** (`string`, optional) Specify the field to sort journals by. Options: 'journal_date', 'entry_number', 'reference_number', 'total'. -- **page_number_to_fetch** (`integer`, optional) Page number of the journal list to retrieve. Default value is 1. -- **records_per_page** (`integer`, optional) Number of journal records to be fetched per page. Default value is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateJournalInZohoBooks - -
- - -Updates a journal entry in Zoho Books with specified details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization in Zoho Books. Required for identifying which organization's journal entry to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **journal_identifier** (`string`, optional) The unique identifier for the journal entry to be updated in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetJournalDetails - -
- - -Retrieve the details of a specific journal entry in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization in Zoho Books required to retrieve journal details. -- **journal_unique_id** (`string`, required) The unique identifier for the journal to retrieve its details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteJournalEntry - -
- - -Delete a specific journal entry by ID. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization associated with the journal to be deleted. -- **journal_entry_id** (`string`, required) The unique identifier for the journal entry to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.PublishDraftJournal - -
- - -Mark a draft journal as published in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization in Zoho Books. Required to identify the organization where the journal resides. -- **journal_identifier** (`string`, required) Unique identifier of the journal to be marked as published. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AttachFileToJournal - -
- - -Attach a file to a Zoho Books journal entry. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization where the file will be attached. This is used to specify the target organization in Zoho Books. -- **journal_unique_identifier** (`string`, required) Provide the unique identifier for the specific journal entry to which the file will be attached. -- **attachment_file_path** (`string`, optional) The path to the file that will be attached to the journal in Zoho Books. -- **document_to_attach** (`string`, optional) The document or file to be attached to the journal entry in Zoho Books. -- **total_number_of_files** (`integer`, optional) Specify the total number of files to be attached to the journal. Ensure this matches the actual number of attachments. -- **document_identifiers** (`string`, optional) A string of document IDs that need to be attached. These IDs should be associated with the documents intended for attachment. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AddJournalComment - -
- - -Add a comment to a journal entry in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization in Zoho Books where the comment is to be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **journal_unique_id** (`string`, optional) The unique identifier for the journal entry to which the comment will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteJournalComment - -
- - -Delete a journal comment in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required to specify which organization's journal comment should be deleted. -- **journal_unique_id** (`string`, required) Unique identifier of the journal for which the comment will be deleted. -- **comment_id** (`string`, required) Unique identifier of the comment to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.EnableOrganizationLocations - -
- - -Enable locations for an organization in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization for which to enable location tracking. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateZohoBookLocation - -
- - -Create a new location in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization for which the location is being created in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListInventoryLocations - -
- - -Retrieve all available locations from Zoho Inventory. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateLocationInZohoBooks - -
- - -Update location details in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization in Zoho Books. It is required to identify which organization's location is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **location_identifier** (`string`, optional) Unique identifier of the location to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteLocation - -
- - -Delete a location from the system. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization to which the location belongs. -- **location_id** (`string`, required) The unique identifier of the location to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ActivateLocation - -
- - -Marks a location as active. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization to which the location belongs. -- **location_identifier** (`string`, required) Unique identifier for the location to be marked as active. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkLocationInactive - -
- - -Marks a specific location as inactive in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization in Zoho Books to mark the location as inactive. -- **location_identifier** (`string`, required) Unique identifier of the location to be marked as inactive in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SetPrimaryLocation - -
- - -Marks a specified location as primary in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization for which to set the primary location in Zoho Books. -- **location_identifier** (`string`, required) Unique identifier of the location to be marked as primary. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateOpeningBalance - -
- - -Creates an opening balance for accounts. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization for which the opening balance is being created. This ID is required to specify the target organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateOpeningBalance - -
- - -Update the existing opening balance information. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. Required for updating the opening balance information. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetOpeningBalance - -
- - -Retrieves the opening balance for accounts. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization to retrieve the opening balance for. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteOpeningBalance - -
- - -Delete the entered opening balance in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose opening balance is to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateOrganizationInZohoBooks - -
- - -Create a new organization in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization to be created in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListOrganizations - -
- - -Retrieve the list of organizations from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization to list details for. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateOrganizationDetails - -
- - -Update an organization's details in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) Unique identifier of the organization to update in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **organization_identifier** (`string`, optional) The unique string identifier for the organization to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetOrganizationDetails - -
- - -Retrieve details of an organization from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) Unique identifier for the organization in Zoho Books. Used to retrieve specific organization details. -- **org_id** (`string`, required) Unique identifier for the specific organization. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateProject - -
- - -Create a new project in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) Unique identifier for the organization in Zoho Books. Required for project creation. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListProjects - -
- - -Retrieve a list of all projects with pagination. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which to list projects. -- **filter_projects_by_status** (`string`, optional) Filter projects by status. Use Status.All, Status.Active, or Status.Inactive. -- **search_by_customer_id** (`string`, optional) Search projects using the customer's ID to filter results. -- **sort_projects_by** (`string`, optional) Sort projects by project name, customer name, rate, or created time. -- **page_number** (`integer`, optional) Specify the page number to retrieve. Defaults to 1 if not specified. -- **records_per_page** (`integer`, optional) Number of records to fetch per page. Defaults to 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateProjectWithCustomField - -
- - -Update or create projects using a unique custom field. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) A string representing the organization's ID required to update or create a project using the custom field. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_api_name** (`string`, optional) The API name of the unique custom field used to identify the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_value** (`string`, optional) The unique value for the custom field used to identify or create a project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **create_new_project_if_not_found** (`boolean`, optional) Set to true to create a new project if no existing project matches the unique custom field value. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateProjectDetails - -
- - -Update details of a project in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization within Zoho Books, required to identify the organization whose project is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_unique_identifier** (`string`, optional) Unique identifier of the project to be updated in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetProjectDetails - -
- - -Retrieve detailed information of a specific project by ID. - -**Parameters** - -- **organization_identifier** (`string`, required) ID of the organization to retrieve project details. -- **project_unique_identifier** (`string`, required) Unique identifier for the project to retrieve detailed information. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteProject - -
- - -Deletes an existing project in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization in Zoho Books. Required to identify the organization from which the project will be deleted. -- **project_id** (`string`, required) Unique identifier of the project to be deleted in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ActivateProject - -
- - -Activate a project in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization in which the project is to be activated. -- **project_identifier** (`string`, required) Unique identifier for the project to activate in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeactivateProject - -
- - -Deactivate a project in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books. Required for identifying the organization for the project update. -- **project_id** (`string`, required) The unique identifier of the project to be marked as inactive. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CloneProject - -
- - -Clone an existing project in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_unique_identifier** (`string`, optional) Unique string identifier of the project to be cloned. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AssignUsersToProject - -
- - -Assign users to a specific project in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) Unique ID of the organization in Zoho Books for which users are being assigned to a project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) The unique identifier for the project to which users will be assigned. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListProjectUsers - -
- - -Get a list of users associated with a project. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID representing the organization in Zoho Books. Required to access project users. -- **project_identifier** (`string`, required) Unique identifier for the project to retrieve associated users. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.InviteUserToProject - -
- - -Invite a user to a project in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier of the organization in Zoho Books where the project is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_unique_identifier** (`string`, optional) Unique identifier of the project in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateProjectUserDetails - -
- - -Update user details in a specific project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. Required to update the user's project details. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Unique identifier for the project in Zoho Books. Required to specify which project's user details are being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **user_identifier** (`string`, optional) Unique identifier for the user to be updated within the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetProjectUserDetails - -
- - -Fetch details of a user within a project in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique identifier for the organization in Zoho Books. This is required to fetch the user details associated with the specified project. -- **project_identifier** (`string`, required) The unique identifier for the project in Zoho Books to fetch user details from. -- **user_identifier** (`string`, required) Unique identifier of the user within the project. Required to fetch user-specific details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RemoveUserFromProject - -
- - -Remove a user from a specific project in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization within Zoho Books. -- **project_identifier** (`string`, required) The unique identifier for the project from which the user will be removed. -- **user_identifier** (`string`, required) Unique identifier of the user to be removed from the project. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.PostProjectComment - -
- - -Post a comment to a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique identifier of the organization for which the comment is being posted. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_unique_identifier** (`string`, optional) Unique identifier for the project in Zoho Books. Required to specify the target project for adding a comment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetProjectComments - -
- - -Retrieve comments for a specified project. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization to fetch project comments for. -- **project_identifier** (`string`, required) Unique identifier of the project to fetch comments for. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteProjectComment - -
- - -Delete a specific comment from a project. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which the comment is to be deleted. -- **project_identifier** (`string`, required) Unique identifier of the project to delete the comment from. -- **comment_unique_identifier** (`string`, required) Unique identifier for the comment to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListProjectInvoices - -
- - -Retrieve invoices for a specific project in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique identifier for the organization in Zoho Books. This is required to access the specific organization's project invoices. -- **project_unique_identifier** (`string`, required) Unique identifier for the specific project to retrieve invoices for. -- **sort_invoices_by** (`string`, optional) Specify the column to sort invoices by. Options are: 'invoice_number', 'date', 'total', 'balance', 'created_time'. -- **page_number_to_fetch** (`integer`, optional) Specify the page number to retrieve from the list of invoices. Default is 1. -- **records_per_page** (`integer`, optional) The number of invoice records to fetch per page. Defaults to 200 if not specified. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateVendorPurchaseOrder - -
- - -Generate a purchase order for a vendor. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books for which the purchase order is being created. Required to specify the target organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **file_attachment** (`string`, optional) File path or URL to attach. Allowed extensions: gif, png, jpeg, jpg, bmp, pdf, xls, xlsx, doc, docx. Only used when mode is 'execute'. -- **ignore_auto_number_generation** (`boolean`, optional) Set to true to disable automatic purchase order number generation, requiring a manual number. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListPurchaseOrders - -
- - -Retrieve a list of all purchase orders. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization to filter purchase orders. -- **search_by_purchaseorder_number** (`string`, optional) Search purchase order by number. Supports exact, starts with, and contains variants. -- **reference_number_search** (`string`, optional) Search for a purchase order using the exact or partial reference number. Supports 'startswith' and 'contains' methods. -- **creation_date** (`string`, optional) Creation date for purchase order search in YYYY-MM-DD format. -- **purchase_order_status** (`string`, optional) Filter purchase orders by status. Options: draft, open, billed, cancelled. -- **search_by_item_description** (`string`, optional) Search purchase orders by item description. Use partial matches or specific description. Includes variants like 'startswith' and 'contains'. -- **vendor_name** (`string`, optional) Search purchase orders by vendor name with optional 'startswith' or 'contains' variants. -- **total_amount_filter** (`number`, optional) Filter purchase orders by total amount. Use options like 'start', 'end', 'less_than', 'less_equals', 'greater_than', 'greater_equals' to specify the range or comparison. -- **vendor_identifier** (`string`, optional) Specify the unique ID of the vendor to filter purchase orders. Useful for grouping POs by a specific vendor. -- **search_by_last_modified_time** (`string`, optional) ISO 8601 format (YYYY-MM-DDTHH:MM:SS±HH:MM) to filter POs by last modified time. For finding recently updated POs. -- **search_by_item_id** (`string`, optional) Search purchase orders using the unique item ID to find POs containing a specific item. -- **status_filter** (`string`, optional) Filter purchase orders by status. Use 'Status.All', 'Status.Draft', 'Status.Open', 'Status.Billed', or 'Status.Cancelled'. -- **search_purchase_order_text** (`string`, optional) Search for purchase orders by number, reference, or vendor name. Allows general searching across multiple fields for quick lookup. -- **sort_by_column** (`string`, optional) Column to sort purchase orders by. Options: vendor_name, purchaseorder_number, date, delivery_date, total, created_time. -- **search_by_custom_field** (`string`, optional) Search purchase orders using custom field criteria. Supports 'startswith' and 'contains' variants. -- **page_number** (`integer`, optional) Specify the page number to fetch, with a default value of 1. -- **records_per_page** (`integer`, optional) Specifies the number of purchase orders to retrieve per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdatePurchaseOrderByCustomField - -
- - -Update or create a purchase order via custom field value. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. This is required to specify which organization's purchase order needs to be updated or created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_api_name** (`string`, optional) The API name of the unique custom field used to update or identify the purchase order. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_value** (`string`, optional) Unique value for the custom field to retrieve and update the purchase order. This should match the specific custom field value used to identify the order. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **create_new_order_if_not_found** (`boolean`, optional) Set to true to create a new purchase order if no existing order matches the unique custom field value. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdatePurchaseOrder - -
- - -Update an existing purchase order in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization for which the purchase order is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **purchase_order_identifier** (`string`, optional) Unique identifier for the specific purchase order to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **attachment_file_path** (`string`, optional) File path of the attachment with extensions: gif, png, jpeg, jpg, bmp, pdf, xls, xlsx, doc, docx. Only used when mode is 'execute'. -- **ignore_auto_number_generation** (`boolean`, optional) If true, ignore automatic purchase order number generation and manually specify the order number. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RetrievePurchaseOrderDetails - -
- - -Retrieve the details of a purchase order. - -**Parameters** - -- **organization_identifier** (`string`, required) Unique ID of the organization to retrieve purchase order details. -- **purchase_order_id** (`string`, required) Provide the unique identifier of the purchase order to retrieve its details. -- **response_format** (`string`, optional) Specifies the format of the purchase order details. Options: json, pdf, html. Default is json. -- **print_pdf** (`boolean`, optional) Set to True to print the exported PDF of the purchase order. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeletePurchaseOrder - -
- - -Delete an existing purchase order in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization within Zoho Books. Required to specify which organization's purchase order is to be deleted. -- **purchase_order_identifier** (`string`, required) Unique identifier for the purchase order to delete. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateCustomFieldsPurchaseOrder - -
- - -Update custom field values in purchase orders. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique ID of the organization associated with the purchase order. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **purchase_order_id** (`string`, optional) A unique identifier for the purchase order to update custom fields. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.OpenPurchaseOrder - -
- - -Mark a draft purchase order as open. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books whose purchase order status needs to be changed. -- **purchase_order_identifier** (`string`, required) Unique identifier for the purchase order to be marked as open. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkPurchaseOrderBilled - -
- - -Mark a purchase order as billed in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization in Zoho Books. Required to perform actions within the specified organization. -- **purchase_order_id** (`string`, required) Unique identifier of the purchase order to be marked as billed. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CancelPurchaseOrder - -
- - -Cancel a specific purchase order in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The identifier for the organization in Zoho Books. This ID is required to specify which organization's purchase order should be cancelled. -- **purchase_order_id** (`string`, required) The unique identifier of the purchase order to be cancelled. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SubmitPurchaseOrder - -
- - -Submit a purchase order for approval. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization within Zoho Books. -- **purchase_order_id** (`string`, required) Unique identifier of the purchase order to be submitted for approval. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ApprovePurchaseOrder - -
- - -Approve a purchase order. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization for which to approve the purchase order. This should be a unique string identifier provided by Zoho Books. -- **purchase_order_identifier** (`string`, required) The unique identifier for the purchase order to be approved. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SendPurchaseOrderEmail - -
- - -Send a purchase order email to the vendor. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique identifier for the organization. Required to specify which organization the purchase order belongs to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **purchase_order_id** (`string`, optional) Unique identifier of the purchase order to be emailed to the vendor. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **email_attachments** (`string`, optional) A comma-separated list of file paths or URLs to attach to the email. Only used when mode is 'execute'. -- **attachment_file_name** (`string`, optional) The name of the file to attach to the email for the purchase order. Only used when mode is 'execute'. -- **send_purchase_order_attachment** (`boolean`, optional) Set to true to include the purchase order as an attachment with the email. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetPurchaseOrderEmailContent - -
- - -Retrieves the email content of a purchase order. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization to retrieve the purchase order email content for. -- **purchase_order_id** (`string`, required) Unique identifier of the purchase order to retrieve its email content. -- **email_template_id** (`string`, optional) Get the email content based on a specific email template. Defaults to customer-associated or default template if not provided. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdatePurchaseOrderBillingAddress - -
- - -Update the billing address for a specific purchase order. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization to update the billing address in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **purchase_order_identifier** (`string`, optional) Unique identifier for the specific purchase order to update the billing address. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetPurchaseOrderTemplates - -
- - -Retrieve all purchase order PDF templates from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization for retrieving purchase order templates. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RetrievePurchaseOrderAttachment - -
- - -Retrieve the file attached to a specific purchase order. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID representing the organization. Required to specify which organization's purchase order to access. -- **purchase_order_id** (`string`, required) The unique identifier of the purchase order to retrieve the attachment for. -- **get_thumbnail** (`boolean`, optional) Set to true to get the thumbnail of the attachment, or false to retrieve the full file. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AttachFileToPurchaseOrder - -
- - -Attach a file to a specified purchase order. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. -- **purchase_order_id** (`string`, required) The unique identifier of the purchase order to which the file will be attached. -- **file_attachment** (`string`, optional) The file to attach to the purchase order. Must be one of the following formats: gif, png, jpeg, jpg, bmp, pdf, xls, xlsx, doc, or docx. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdatePurchaseOrderEmailAttachment - -
- - -Update email attachment preference for a purchase order. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization for which the purchase order email attachment preference is being updated. -- **purchase_order_id** (`string`, required) Unique identifier of the purchase order to update the email attachment preference for. -- **include_attachment_with_email** (`boolean`, required) Boolean to determine if the attachment should be sent with the purchase order email. Set to true to include the attachment, or false to exclude it. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeletePurchaseOrderAttachment - -
- - -Deletes the attachment from a purchase order. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization in Zoho Books. This is required to specify which organization's records to access or modify. -- **purchase_order_id** (`string`, required) Unique identifier of the purchase order to delete the attachment from. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetPurchaseOrderComments - -
- - -Retrieve comments and history of a purchase order. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization to retrieve purchase order comments for. Required to specify which organization's data to access. -- **purchase_order_id** (`string`, required) Unique identifier for the specific purchase order to retrieve comments and history. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AddPurchaseOrderComment - -
- - -Add a comment to a purchase order in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books. This ID is required to specify which organization's purchase order is being commented on. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **purchase_order_identifier** (`string`, optional) Unique identifier for the purchase order in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdatePurchaseOrderComment - -
- - -Update an existing comment on a purchase order. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID representing the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **purchase_order_id** (`string`, optional) The unique identifier for the purchase order to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **comment_identifier** (`string`, optional) Unique identifier of the comment to be updated in the purchase order. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeletePurchaseOrderComment - -
- - -Delete a comment from a purchase order. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. Provide this to specify which organization's purchase order comment you wish to delete. -- **purchase_order_id** (`string`, required) Unique identifier of the purchase order to delete the comment from. -- **comment_unique_identifier** (`string`, required) Unique identifier of the comment to be deleted. Required to specify which comment to remove from a purchase order. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RejectPurchaseOrder - -
- - -Reject a specific purchase order in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) A unique identifier for the organization in Zoho Books. -- **purchase_order_id** (`string`, required) The ID of the purchase order to be rejected in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateRecurringBill - -
- - -Create a recurring bill in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization in Zoho Books for which the recurring bill will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateRecurringBillCustomField - -
- - -Update or create a recurring bill using a unique custom field. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization associated with the recurring bill. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_field_unique_identifier_key** (`string`, optional) The API name of the unique custom field used to identify the recurring bill. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_value** (`string`, optional) Unique value of the custom field used to identify the recurring bill. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **allow_creation_if_missing** (`boolean`, optional) Set to true to create a new recurring bill if the unique custom field value is not found. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateRecurringBill - -
- - -Update details of a recurring bill in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books. This ID is required to specify the organization whose recurring bill is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **recurring_bill_identifier** (`string`, optional) Unique identifier for the recurring bill to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetRecurringBillDetails - -
- - -Retrieve details of a recurring bill from Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization in Zoho Books. -- **recurring_bill_unique_id** (`string`, required) Unique identifier for the recurring bill in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteRecurringBill - -
- - -Delete an existing recurring bill in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) ID of the organization in Zoho Books to delete a recurring bill from. -- **recurring_bill_identifier** (`string`, required) Unique identifier of the recurring bill to be deleted in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.StopRecurringBill - -
- - -Stop an active recurring bill in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID representing the organization in Zoho Books. -- **recurring_bill_identifier** (`string`, required) Unique identifier for the recurring bill to be stopped. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ResumeRecurringBill - -
- - -Resume a stopped recurring bill in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID for the organization in Zoho Books. -- **recurring_bill_identifier** (`string`, required) Provide the unique identifier of the recurring bill to resume it in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetRecurringBillHistory - -
- - -Get history and comments of a recurring bill. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which you want to get the recurring bill history. -- **recurring_bill_identifier** (`string`, required) Unique identifier for the specific recurring bill. Required to fetch its history and comments. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateRecurringExpense - -
- - -Create a recurring expense in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books. This ID is necessary to specify which organization's records to create the recurring expense under. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListRecurringExpenses - -
- - -Retrieve all recurring expenses from your records. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization whose recurring expenses need to be listed. -- **recurring_expense_name_filter** (`string`, optional) Filter recurring expenses by name using either 'startswith' or 'contains'. Maximum length is 100 characters. -- **search_by_last_created_date** (`string`, optional) Filter recurring expenses based on last generated expense date. Use formats: last_created_date_start, last_created_date_end, last_created_date_before, last_created_date_after with date [yyyy-mm-dd]. -- **filter_by_next_expense_date** (`string`, optional) Filter recurring expenses by dates related to the next expected expense. Options include 'next_expense_date_start', 'next_expense_date_end', 'next_expense_date_before', and 'next_expense_date_after'. Format is 'yyyy-mm-dd'. -- **expense_status** (`string`, optional) Specify the status of expenses to search for. Allowed values are 'active', 'stopped', and 'expired'. -- **account_id_for_expense** (`string`, optional) Specify the unique identifier for the expense account to filter expenses associated with it. -- **filter_by_account_name** (`string`, optional) Search expenses by account name with options for exact match or partial match using 'startswith' and 'contains'. Max-length is 100 characters. -- **amount_filter** (`number`, optional) Specify a filter for expense amounts, such as 'amount_less_than', 'amount_less_equals', 'amount_greater_than', or 'amount_greater_than'. -- **search_by_customer_name** (`string`, optional) Search recurring expenses by customer name. Use variants 'customer_name_startswith' or 'customer_name_contains'. Max 100 characters. -- **search_by_customer_id** (`string`, optional) Specify the customer ID to search expenses associated with that customer. -- **paid_through_account_id** (`string`, optional) ID of the account through which the expense was paid. Used to filter expenses. -- **expense_status_filter** (`string`, optional) Filter recurring expenses by their status. Use 'Status.All', 'Status.Active', 'Status.Expired', or 'Status.Stopped'. -- **search_expenses_by_text** (`string`, optional) Specify text to search expenses by account name, description, customer name, or vendor name. Maximum length is 100 characters. -- **sort_expenses_by_column** (`string`, optional) Specify the column to sort expenses by. Allowed values: next_expense_date, account_name, total, last_created_date, recurrence_name, customer_name, created_time. -- **page_number_to_fetch** (`integer`, optional) The page number of records to retrieve, starting from 1. Default is 1. -- **records_per_page** (`integer`, optional) Specify how many records to retrieve per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateRecurringExpense - -
- - -Update or create a recurring expense using a custom field. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) Unique identifier for the organization whose recurring expense is to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_api_name** (`string`, optional) Unique CustomField API Name to identify the recurring expense. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_value** (`string`, optional) Unique value of the CustomField used to identify the recurring expense. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **create_new_recurring_if_not_found** (`boolean`, optional) Set to true to create a new recurring expense if the unique custom field value is not found. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ModifyRecurringExpense - -
- - -Update a recurring expense in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) Provide the ID of the organization for which the recurring expense needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **recurring_expense_identifier** (`string`, optional) Unique identifier for the recurring expense to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetRecurringExpenseDetails - -
- - -Get details of a specific recurring expense in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) Provide the ID of the organization to retrieve its specific recurring expense details from Zoho Books. -- **recurring_expense_id** (`string`, required) Unique identifier for the recurring expense to retrieve its details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteRecurringExpense - -
- - -Delete an existing recurring expense in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. -- **recurring_expense_id** (`string`, required) The unique identifier for the recurring expense to be deleted in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.StopRecurringExpense - -
- - -Stop an active recurring expense in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books for which the recurring expense will be stopped. -- **recurring_expense_identifier** (`string`, required) Unique identifier for the recurring expense to be stopped. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ResumeRecurringExpense - -
- - -Resumes a stopped recurring expense cycle. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. -- **recurring_expense_id** (`string`, required) The unique identifier for the recurring expense to be resumed. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListChildExpenses - -
- - -Retrieve child expenses from a recurring expense. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization to list child expenses for. -- **recurring_expense_identifier** (`string`, required) Unique identifier for the recurring expense to retrieve child expenses. -- **sort_expenses_by** (`string`, optional) Specify the field to sort expenses. Valid options: next_expense_date, account_name, total, last_created_date, recurrence_name, customer_name, created_time. -- **fetch_page_number** (`integer`, optional) Specify the page number to retrieve. Default is 1. -- **records_per_page** (`integer`, optional) Specify the number of expense records to retrieve per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetRecurringExpenseHistory - -
- - -Get history and comments of a recurring expense. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which the recurring expense history is requested. -- **recurring_expense_id** (`string`, required) Unique identifier for the specific recurring expense to retrieve history and comments. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateRecurringInvoice - -
- - -Create a new recurring invoice in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization for which the recurring invoice is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListRecurringInvoices - -
- - -Retrieve details of all recurring invoices. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization for which you want to list the recurring invoices. Required for accessing specific organization's data. -- **recurrence_unique_name** (`string`, optional) Unique name for the recurring profile, provided by the user. Max-length is 100 characters. -- **search_by_item_name** (`string`, optional) Search recurring invoices by item name, using 'item_name_startswith' or 'profileitemname_contains' variants. -- **item_description_filter** (`string`, optional) Search for recurring invoices by item description using 'startswith' or 'contains' criteria. -- **customer_name** (`string`, optional) Name of the customer for whom the recurring invoice is raised. Use this to filter invoices by customer. -- **line_item_id** (`string`, optional) Specify the line item ID for filtering recurring invoices. -- **item_id** (`string`, optional) Unique identifier for the item associated with the recurring invoice. -- **tax_identifier** (`string`, optional) ID of the tax or tax group associated with the recurring invoice. -- **invoice_note** (`string`, optional) A short note for the recurring invoice, providing additional details or context. -- **recurring_invoice_start_date** (`string`, optional) The date on which the recurring invoice starts. Format: YYYY-MM-DD. -- **recurring_invoice_end_date** (`string`, optional) The date when the recurring invoice expires, formatted as YYYY-MM-DD. -- **customer_id** (`string`, optional) The ID of the customer for whom the recurring invoice is raised. Use this to filter invoices specific to a customer. -- **recurring_invoice_status** (`string`, optional) Status of the recurring invoice: 'active', 'stopped', or 'expired'. -- **filter_recurring_invoice_status** (`string`, optional) Filter recurring invoices by status or payment expected date. Allowed values: Status.All, Status.Active, Status.Stopped, Status.Expired. -- **search_text** (`string`, optional) Search invoices by invoice number, purchase order, or customer name. Maximum length is 100 characters. -- **sort_by_column** (`string`, optional) Specify the column to sort the recurring invoices by. Leave empty for no sorting. -- **page_number** (`integer`, optional) The page number to fetch, with a default value of 1. -- **records_per_page** (`integer`, optional) Number of records to retrieve per page, with a default of 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateRecurringInvoiceCustomField - -
- - -Update or create a recurring invoice using a custom field. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. This ID is required to update or create a recurring invoice using the custom field. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_api_name** (`string`, optional) The unique API name of the custom field used to identify which recurring invoice to update or create. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_value** (`string`, optional) The unique value for the custom field used to identify and update the recurring invoice. This should be a unique string associated with a custom field configured to reject duplicates. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **enable_upsert** (`boolean`, optional) Set to true to create a new invoice if no existing invoice matches the unique identifier. Set to false to update only without creating a new invoice. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateRecurringInvoice - -
- - -Update details of a recurring invoice in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique ID of the organization in Zoho Books. Required for updating a recurring invoice. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **recurring_invoice_id** (`string`, optional) Unique identifier of the recurring invoice to be updated in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetRecurringInvoiceDetails - -
- - -Retrieve details of a specific recurring invoice. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required to access organization-specific data. -- **recurring_invoice_identifier** (`string`, required) Unique identifier for the recurring invoice to retrieve its details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteRecurringInvoice - -
- - -Delete an existing recurring invoice. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization to which the recurring invoice belongs. Required for identifying the correct organization. -- **recurring_invoice_id** (`string`, required) Unique identifier for the recurring invoice to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.StopRecurringInvoice - -
- - -Stop an active recurring invoice in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization for which the recurring invoice is to be stopped. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **recurring_invoice_id** (`string`, optional) The unique identifier for the recurring invoice to be stopped. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ResumeRecurringInvoice - -
- - -Resumes a stopped recurring invoice. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization whose invoice needs to be resumed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **recurring_invoice_id** (`string`, optional) Unique identifier of the recurring invoice to be resumed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateRecurringInvoiceTemplate - -
- - -Update the PDF template for a recurring invoice. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique identifier of the organization. This ID is used to specify which organization's recurring invoice template will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **recurring_invoice_identifier** (`string`, optional) Unique identifier of the recurring invoice to update the PDF template for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **invoice_template_id** (`string`, optional) Unique identifier of the recurring invoice template to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetRecurringInvoiceHistory - -
- - -Get the complete history and comments of a recurring invoice. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization. Required to access invoice history. -- **recurring_invoice_id** (`string`, required) Unique identifier for the specific recurring invoice to retrieve its history and comments. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateRetainerInvoice - -
- - -Create a retainer invoice for a customer. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization for which the retainer invoice is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **ignore_auto_number_generation** (`boolean`, optional) Set to true to ignore automatic invoice number generation and manually input the invoice number. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListRetainerInvoices - -
- - -List all retainer invoices with pagination. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization within Zoho Books. -- **sort_by_column** (`string`, optional) Specifies the column to sort retainer invoices by. Allowed values: 'customer_name', 'retainer_invoice_number', 'date', 'due_date', 'total', 'balance', 'created_time'. -- **filter_invoices_by_status_or_date** (`string`, optional) Filter invoices by status or payment expected date. Valid values: Status.All, Status.Sent, Status.Draft, Status.OverDue, Status.Paid, Status.Void, Status.Unpaid, Status.PartiallyPaid, Status.Viewed, Date.PaymentExpectedDate. -- **sorting_order** (`string`, optional) The order for sorting retainer invoices. Typically 'asc' for ascending or 'desc' for descending. -- **page_number** (`integer`, optional) Specifies the page number for pagination when listing retainer invoices. -- **records_per_page** (`integer`, optional) Number of records to fetch per page. Default is 200. -- **print_pdf** (`boolean`, optional) Set to true to print the exported PDF of retainer invoices. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ModifyInvoice - -
- - -Update an existing invoice in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique ID of the organization within Zoho Books to which the retainer invoice belongs. This is required to ensure the update is applied to the correct entity. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **retainer_invoice_id** (`string`, optional) Unique identifier of the retainer invoice to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetRetainerInvoiceDetails - -
- - -Retrieve details of a specific retainer invoice. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization to retrieve the retainer invoice for. -- **retainer_invoice_id** (`string`, required) Unique identifier of the retainer invoice to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteRetainerInvoice - -
- - -Delete an existing retainer invoice. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization whose retainer invoice you want to delete. -- **retainer_invoice_identifier** (`string`, required) Unique identifier of the retainer invoice to delete. Required for specifying the invoice to be removed. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkInvoiceSent - -
- - -Marks a draft retainer invoice as sent. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. This ID is necessary to specify which organization's invoice should be marked as sent. -- **retainer_invoice_id** (`string`, required) Unique identifier of the retainer invoice to be marked as sent. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ModifyRetainerInvoiceTemplate - -
- - -Update the PDF template for a retainer invoice. - -**Parameters** - -- **organization_identifier** (`string`, required) The ID of the organization to update the retainer invoice template for. It should be a string representing the organization's unique identifier in Zoho Books. -- **retainer_invoice_id** (`string`, required) Unique identifier for the retainer invoice to update the PDF template. -- **retainer_invoice_template_id** (`string`, required) Unique identifier of the retainer invoice template. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.VoidRetainerInvoice - -
- - -Mark a retainer invoice as void. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization required to identify which organization's invoice to void. -- **retainer_invoice_id** (`string`, required) Unique identifier for the retainer invoice to be marked as void. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkRetainerInvoiceAsDraft - -
- - -Mark a voided retainer invoice as draft. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization in Zoho Books. -- **retainer_invoice_id** (`string`, required) Unique identifier of the retainer invoice to be marked as draft. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SubmitRetainerInvoice - -
- - -Submit a retainer invoice for approval in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization in Zoho Books to which the retainer invoice belongs. -- **retainer_invoice_unique_id** (`string`, required) Unique identifier of the retainer invoice for submission. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ApproveRetainerInvoice - -
- - -Approve a retainer invoice in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which the retainer invoice is being approved. -- **retainer_invoice_id** (`string`, required) Unique identifier of the retainer invoice to approve. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.EmailRetainerInvoiceToCustomer - -
- - -Send a retainer invoice to a customer via email. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **retainer_invoice_id** (`string`, optional) The unique identifier of the retainer invoice to be emailed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **email_attachments** (`string`, optional) List of file paths or URLs for files to attach to the email. Only used when mode is 'execute'. -- **send_customer_statement** (`boolean`, optional) Set to true to send the customer statement PDF with the email. Only used when mode is 'execute'. -- **attach_invoice_to_email** (`boolean`, optional) Attach the retainer invoice to the email if true. Accepts a boolean value. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RetrieveRetainerInvoiceEmailContent - -
- - -Retrieve the email content of a retainer invoice. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization. Required to access retainer invoice emails. -- **retainer_invoice_id** (`string`, required) Unique identifier of the retainer invoice. Used to fetch the specific email content. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateBillingAddressRetainerInvoice - -
- - -Update billing address for a retainer invoice. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. Required to specify which organization's invoice needs updating. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **retainer_invoice_id** (`string`, optional) Unique identifier of the retainer invoice to update the billing address. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetRetainerInvoiceTemplates - -
- - -Retrieve all retainer invoice PDF templates. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization to retrieve retainer invoice templates from. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetRetainerInvoiceAttachment - -
- - -Retrieve the file attached to a retainer invoice. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose invoice attachment you want to retrieve. -- **retainer_invoice_id** (`string`, required) Unique identifier of the retainer invoice for which the attachment is to be retrieved. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AttachFileToInvoice - -
- - -Attach a file to an invoice. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization to which the invoice belongs. Required to specify the correct entity for file attachment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **retainer_invoice_identifier** (`string`, optional) Unique identifier of the retainer invoice to which the file will be attached. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteRetainerInvoiceAttachment - -
- - -Delete a file attached to a retainer invoice. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books whose invoice attachment is to be deleted. -- **retainer_invoice_id** (`string`, required) Unique identifier of the retainer invoice to specify which invoice's attachment should be deleted. -- **document_id** (`string`, required) Unique identifier of the retainer invoice document to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetRetainerInvoiceHistory - -
- - -Get the history and comments of a retainer invoice. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization to fetch its retainer invoice history. -- **retainer_invoice_id** (`string`, required) Unique identifier of the retainer invoice to look up its history and comments. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AddRetainerInvoiceComment - -
- - -Add a comment to a specific retainer invoice. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) Unique ID string of the organization in Zoho Books to add a comment to a retainer invoice. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **retainer_invoice_id** (`string`, optional) A unique identifier for the retainer invoice you want to comment on. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteRetainerInvoiceComment - -
- - -Remove a specific comment from a retainer invoice. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization within Zoho Books for which the comment is to be deleted. -- **retainer_invoice_id** (`string`, required) Unique identifier of the retainer invoice to find the specific invoice for comment deletion. -- **comment_identifier** (`string`, required) Unique identifier of the comment to be deleted from the retainer invoice. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateRetainerInvoiceComment - -
- - -Update a comment on a retainer invoice. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization to which the retainer invoice belongs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **retainer_invoice_id** (`string`, optional) Unique identifier of the retainer invoice to update the comment for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **comment_identifier** (`string`, optional) The unique identifier of the comment to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateSalesOrder - -
- - -Create a sales order for a customer. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique ID of the organization for which the sales order is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **total_number_of_files** (`integer`, optional) Specify the total number of files to be attached to the sales order. Only used when mode is 'execute'. -- **document_attachment** (`string`, optional) A document to be attached to the sales order. Provide as a string containing the document details or content. Only used when mode is 'execute'. -- **ignore_auto_number_generation** (`boolean`, optional) Set to true to ignore auto sales order number generation, requiring manual sales order number entry. Only used when mode is 'execute'. -- **can_send_via_email** (`boolean`, optional) Set to true if the file can be sent via email. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListSalesOrders - -
- - -Retrieve a list of all sales orders. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which sales orders are to be listed. -- **sort_column** (`string`, optional) Column field to sort sales order results. Options: customer_name, salesorder_number, shipment_date, last_modified_time, reference_number, total, date, created_time. -- **cross_field_search_text** (`string`, optional) A general search term for matching text across fields like sales order number, reference number, and customer name for quick identification. -- **filter_sales_order_by_status** (`string`, optional) Filter sales orders by status. Options: All, Open, Draft, OverDue, PartiallyInvoiced, Invoiced, Void, Closed. -- **filter_by_sales_order_number** (`string`, optional) Filter sales orders by sales order number with operators: startswith, not_in, in, or contains. Max length: 100 characters. -- **filter_by_item_name** (`string`, optional) Filter sales orders by line item name. Use matching operators like startswith, not_in, in, and contains. Max length: 100 characters. -- **filter_by_item_id** (`string`, optional) Filter sales orders by a specific line item identifier to retrieve orders containing a particular product or service. -- **filter_by_item_description** (`string`, optional) Filter sales orders by line item description. Supports variants like startswith, not_in, in, and contains. Max length: 100 characters. -- **filter_by_reference_number** (`string`, optional) Filter sales orders by external reference number using operators like `startswith`, `not_in`, `in`, and `contains`. -- **customer_name_filter** (`string`, optional) Filter sales orders by customer name with operators like startswith, not_in, in, and contains. Max length: 100 characters. -- **filter_by_total** (`number`, optional) Specify range operators to filter sales orders by total. Use total_start, total_end, total_less_than, total_greater_than, etc. -- **creation_date_filter** (`string`, optional) Filter sales orders by creation date using operators like `date_start`, `date_end`, `date_before`, `date_after`. Format: `yyyy-mm-dd`. -- **shipment_date_filter** (`string`, optional) Specify the shipment date filter for sales orders. Use variants such as 'shipment_date_start', 'shipment_date_end', 'shipment_date_before', and 'shipment_date_after' in 'yyyy-mm-dd' format. -- **sales_order_status** (`string`, optional) Filter sales orders by their status. Allowed values: draft, open, invoiced, partially_invoiced, void, and overdue. -- **filter_by_customer_id** (`string`, optional) Filter sales orders by specific customer ID. Retrieves orders associated with a customer for CRM and reporting. -- **sales_representative_id** (`string`, optional) Filter sales orders by specific sales representative ID for tracking and reporting purposes. -- **sales_order_ids** (`string`, optional) Comma-separated list of sales order IDs to filter results. Maximum length is 200 characters. -- **last_modified_time** (`string`, optional) Specify the last modified time of the sales order to filter results. Use the format 'yyyy-mm-dd'. -- **response_format** (`string`, optional) Specifies the format for sales order details. Must be one of: json, csv, xml, xls, xlsx, pdf, jhtml, or html. Default is json. -- **custom_view_id** (`string`, optional) ID of the custom view to filter sales orders based on predefined criteria. -- **deal_crm_potential_id** (`integer`, optional) Potential ID of a Deal in CRM. Used to filter sales orders associated with a specific deal. -- **page_number** (`integer`, optional) Specify the page number for retrieving paginated sales order results. Default is 1 for the first page. -- **max_sales_orders_per_page** (`integer`, optional) Specify the maximum number of sales order records to return per page. Default is 200 for optimal performance and memory usage. -- **enable_printing** (`boolean`, optional) Enable printing of the exported PDF. Use when 'accept' is set to 'pdf' and 'salesorder_ids' includes values. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateSalesOrderWithCustomField - -
- - -Update or create a sales order using a custom field. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_api_name** (`string`, optional) The API name of the unique custom field used to identify the sales order to update or create. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_custom_field_value** (`string`, optional) The unique value of the custom field used to retrieve and update a specific sales order. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **allow_creation_if_not_found** (`boolean`, optional) Set to true to create a new sales order if the unique custom field value is not found. Complete details are required for creation. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateSalesOrderInZohoBooks - -
- - -Update details of an existing sales order in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization to which the sales order belongs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **sales_order_id** (`string`, optional) Unique identifier of the sales order to update in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **total_number_of_files** (`integer`, optional) Specify the total number of files to be attached to the sales order update. Only used when mode is 'execute'. -- **attach_document** (`string`, optional) A document to be attached to the sales order. Provide the file path or URL as a string. Only used when mode is 'execute'. -- **ignore_auto_number_generation** (`boolean`, optional) Set to TRUE to ignore auto-generation of the sales order number. This requires manually entering the number. Only used when mode is 'execute'. -- **allow_email_sending** (`boolean`, optional) Determine if the updated sales order can be sent via email. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetSalesOrderDetails - -
- - -Retrieve details of a specific sales order. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. This ID is used to specify the organization within Zoho Books whose sales order details need to be retrieved. -- **sales_order_id** (`string`, required) Unique identifier of the sales order required to retrieve its details. -- **output_format** (`string`, optional) Specifies the format in which to receive the sales order details. Options include: json, csv, xml, xls, xlsx, pdf, jhtml, and html. Default is json. -- **print_pdf** (`boolean`, optional) Set to true to print the exported PDF of the sales order, otherwise false. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteSalesOrder - -
- - -Delete an existing sales order. - -**Parameters** - -- **organization_id** (`string`, required) Provide the ID of the organization for which the sales order will be deleted. -- **sales_order_id** (`string`, required) Unique identifier for the sales order to be deleted. Ensure it is not invoiced. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateSalesOrderCustomFields - -
- - -Update custom fields in existing sales orders efficiently. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization associated with the sales order. This is required to identify which organization's sales order needs updating. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **sales_order_id** (`string`, optional) Unique identifier for the sales order to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.OpenSalesOrder - -
- - -Mark a draft sales order as open in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization where the sales order is to be marked as open. -- **sales_order_id** (`string`, required) Unique identifier of the sales order to mark as open in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkSalesOrderAsVoid - -
- - -Mark a sales order as void in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **sales_order_id** (`string`, optional) Unique identifier for the specific sales order to be marked as void. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateSalesOrderSubStatus - -
- - -Update the sub status of a sales order in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization in Zoho Books. This ID is required to specify which organization's sales order needs an update. -- **sales_order_id** (`string`, required) Unique identifier for the specific sales order to update. -- **sales_order_status_code** (`string`, required) The unique code representing the new status for a sales order. This is required to update the status in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.EmailSalesOrderToCustomer - -
- - -Email a sales order to a customer. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization for which the sales order is being emailed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **sales_order_id** (`string`, optional) Provide the unique identifier of the sales order to be emailed to the customer. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **sales_order_identifier** (`string`, optional) Unique identifier of the sales order to be emailed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **sales_order_attachments** (`string`, optional) A list of file paths or URLs for attachments to include with the sales order email. Only used when mode is 'execute'. -- **file_name** (`string`, optional) Specify the name of the file to be attached to the email. Only used when mode is 'execute'. -- **include_sales_order_attachment** (`boolean`, optional) Specify true to include the sales order attachment in the email, or false to exclude it. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetSalesOrderEmailContent - -
- - -Retrieve email content for a specific sales order. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization in Zoho Books for which the sales order email content is required. -- **sales_order_id** (`string`, required) Unique identifier of the sales order to retrieve its email content. -- **email_template_id** (`string`, optional) Optional. ID of the email template for retrieving specific email content. If not provided, defaults will be used. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SubmitSalesOrderForApproval - -
- - -Submit a sales order for approval in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization in Zoho Books where the sales order is submitted. -- **sales_order_id** (`string`, required) Unique identifier of the sales order to be submitted for approval. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ApproveSalesOrder - -
- - -Approve a specified sales order in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization in Zoho Books required for approving a sales order. -- **sales_order_id** (`string`, required) The unique identifier for the sales order to be approved. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ExportSalesOrdersPdf - -
- - -Export sales orders as a single PDF document. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose sales orders will be exported as a PDF. This ID is required to access and retrieve the sales order data from Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ExportPrintSalesOrders - -
- - -Export and print sales orders as PDFs. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization whose sales orders you want to export and print as PDFs. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateSalesOrderBillingAddress - -
- - -Updates the billing address for a specific sales order. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization associated with the sales order. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **sales_order_identifier** (`string`, optional) Unique identifier of the sales order to update the billing address for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateShippingAddressSalesOrder - -
- - -Update the shipping address for a specific sales order. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The ID of the organization in Zoho Books to update the shipping address for the sales order. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **sales_order_identifier** (`string`, optional) Unique identifier of the sales order to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetSalesOrderTemplates - -
- - -Retrieve all sales order PDF templates from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) A string representing the ID of the organization. Required to specify which organization's sales order templates to retrieve. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateSalesOrderTemplate - -
- - -Update the PDF template for a sales order. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization associated with the sales order. -- **sales_order_id** (`string`, required) Unique identifier for the sales order to be updated with a new PDF template. -- **sales_order_template_id** (`string`, required) Unique identifier of the sales order template to update. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetSalesOrderAttachment - -
- - -Retrieve the file attached to a specific sales order. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books. -- **sales_order_id** (`string`, required) Unique identifier of the sales order to retrieve the attachment for. -- **require_preview_of_sales_order** (`boolean`, optional) Specify whether a preview of the Sales Order is required. Use True for preview, False for no preview. -- **require_inline_response** (`boolean`, optional) Set to true if an inline response is needed, displaying directly in the browser. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AttachFileToSalesOrder - -
- - -Attach a file to a specific sales order in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) Unique identifier for the organization in Zoho Books. -- **sales_order_identifier** (`string`, required) Unique identifier of the sales order to which the file will be attached. -- **file_to_attach** (`string`, optional) Path or identifier of the file to be attached to the sales order. -- **document_file_path** (`string`, optional) Path to the document file that needs to be attached to the sales order. -- **number_of_files** (`integer`, optional) Specify the total number of files to be attached to the sales order. -- **document_identifiers** (`string`, optional) A string representing the IDs of the documents to attach. Comma-separated for multiple IDs. -- **allow_sending_file_in_mail** (`boolean`, optional) Boolean indicating if the file can be sent in mail. True allows sending. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SetSalesOrderAttachmentPreference - -
- - -Sets attachment preference for sales order emails. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization for which you want to update the attachment preference. -- **sales_order_id** (`string`, required) Unique identifier of the sales order to update. -- **allow_attachment_in_email** (`boolean`, required) Indicate if the file can be sent in the email. Set to true to allow, false to prevent. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteSalesOrderAttachment - -
- - -Delete an attached file from a sales order in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization whose sales order attachment is to be deleted. -- **sales_order_id** (`string`, required) Unique identifier for the sales order from which the attachment will be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetSalesOrderComments - -
- - -Retrieve the history and comments of a sales order. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization for which to retrieve sales order comments. -- **sales_order_id** (`string`, required) Unique identifier of the sales order to retrieve comments and history for. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AddSalesOrderComment - -
- - -Add a comment to a sales order in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier of the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **sales_order_id** (`string`, optional) Unique identifier of the sales order to which the comment will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateSalesOrderComment - -
- - -Update an existing comment on a sales order. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique ID of the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **sales_order_id** (`string`, optional) Unique identifier of the sales order to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **comment_id** (`string`, optional) Unique identifier of the comment associated with the sales order that needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteSalesOrderComment - -
- - -Delete a comment from a sales order in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization. This ID is required to specify which organization's sales order comment needs to be deleted. -- **sales_order_id** (`string`, required) Unique identifier of the sales order to delete the comment from. -- **comment_identifier** (`string`, required) Unique identifier of the comment to delete. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateSalesReceipt - -
- - -Create a sales receipt for immediate payment transactions. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) Unique identifier for the organization needed to create the sales receipt. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **ignore_auto_number_generation** (`boolean`, optional) Set to true to ignore automatic sales receipt number generation, requiring manual entry of the receipt number. Only used when mode is 'execute'. -- **send_receipt_via_email** (`boolean`, optional) Set to true to send the sales receipt to the customer via email. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListSalesReceipts - -
- - -Retrieve a list of all sales receipts. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required to list sales receipts. -- **search_receipt_by_number** (`string`, optional) Search for receipts using their unique number. Supports 'startswith' and 'contains' filters. Max length: 100 characters. -- **search_by_item_name** (`string`, optional) Search sales receipts by item name using 'startswith' or 'contains' variants. Maximum length is 100 characters. -- **sort_by_column** (`string`, optional) Specify the column to sort sales receipts by. Options: customer_name, receipt_number, date, total, created_time. -- **filter_sales_receipts_by_status** (`string`, optional) Filter sales receipts based on their status. Options include date ranges like 'ThisWeek', and statuses like 'Status.Draft'. -- **customer_identifier** (`string`, optional) Filter sales receipts by specific customer identifier. Provide the unique ID of the customer to retrieve their sales receipts. -- **date_filter** (`string`, optional) Filter sales receipts by date using variants like date_start, date_end, date_before, and date_after. Use yyyy-mm-dd format. -- **total_filter_options** (`number`, optional) Filter sales receipts using range operators like total_start, total_end, total_less_than, and total_greater_than. Expects a number specifying the total amount. -- **page_number** (`integer`, optional) Specify the page number for retrieving paginated sales receipt results. Defaults to 1. -- **max_records_per_page** (`integer`, optional) Specify the maximum number of sales receipt records to return per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateSalesReceipt - -
- - -Update an existing sales receipt in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier of the organization in Zoho Books. It is required to specify which organization's sales receipt needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **sales_receipt_identifier** (`string`, optional) Unique identifier for the sales receipt to be updated. This is required to specify which receipt to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetSalesReceiptDetails - -
- - -Retrieve the details of a sales receipt. - -**Parameters** - -- **organization_identifier** (`string`, required) ID of the organization for which the sales receipt is being retrieved. -- **sales_receipt_id** (`string`, required) The unique identifier for the sales receipt to be retrieved. Required for fetching the specific sales receipt details. -- **output_format** (`string`, optional) Specifies the format in which to retrieve the sales receipt details. Options are 'json', 'pdf', or 'html'. Default is 'json'. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteSalesReceipt - -
- - -Delete an existing sales receipt in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books. -- **sales_receipt_id** (`string`, required) The unique identifier for the sales receipt to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.EmailSalesReceiptToCustomer - -
- - -Email a sales receipt to the customer. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **sales_receipt_identifier** (`string`, optional) The unique identifier of the sales receipt to be emailed to the customer. It must be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **attach_pdf** (`boolean`, optional) Set to true to send the sales receipt PDF with the email. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AddProjectTask - -
- - -Add a task to a specific project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique ID of the organization for which the task is being added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Unique identifier of the project in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetProjectTasks - -
- - -Retrieve a list of tasks for a specified project. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. This is required to specify which organization's project tasks to retrieve. -- **project_unique_id** (`string`, required) Unique identifier for the project to fetch tasks. -- **fetch_page_number** (`integer`, optional) The page number of results to retrieve. Default is 1. -- **records_per_page** (`integer`, optional) Specify the number of task records to fetch per page. Defaults to 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateProjectTask - -
- - -Update the details of a project task. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization in Zoho Books to identify the context for the task update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **project_identifier** (`string`, optional) Unique identifier of the project in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **task_identifier** (`string`, optional) Unique identifier of the task to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetTaskDetails - -
- - -Retrieve detailed information about a specific task in a project. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. -- **project_id** (`string`, required) Unique identifier of the project. -- **task_unique_identifier** (`string`, required) The unique identifier for the task to retrieve details for from Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteProjectTask - -
- - -Remove a task from a specific project in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique ID of the organization to which the task belongs. -- **project_identifier** (`string`, required) Unique identifier for the project from which a task will be deleted. -- **task_identifier** (`string`, required) Unique identifier of the task to be deleted in the project. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateAssociatedTax - -
- - -Create and associate a tax with an item. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization in Zoho Books where the tax will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListTaxes - -
- - -Retrieve a list of simple and compound taxes. - -**Parameters** - -- **organization_id** (`string`, required) Unique ID of the organization to list taxes for. -- **page_number** (`integer`, optional) Page number of the tax list to retrieve. Defaults to 1 if not specified. -- **records_per_page** (`integer`, optional) The number of tax records to retrieve per page. Defaults to 200 if not specified. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateTaxDetails - -
- - -Update the details of a specified tax. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique identifier for the organization that owns the tax to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **tax_identifier** (`string`, optional) Unique identifier of the tax to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetTaxDetails - -
- - -Retrieve the details of a specific tax. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization to retrieve tax details from. -- **tax_identifier** (`string`, required) Unique identifier for retrieving specific tax details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteTax - -
- - -Delete a simple or compound tax in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization within Zoho Books. This is required to specify which organization's tax entry to delete. -- **tax_identifier** (`string`, required) Unique identifier of the tax to be deleted in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RetrieveTaxGroupDetails - -
- - -Retrieve details of a specific tax group. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization in Zoho Books to get the tax group details for. -- **tax_group_identifier** (`string`, required) Unique identifier for the tax group in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateTaxGroupDetails - -
- - -Update details of a specific tax group in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique ID of the organization in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **tax_group_identifier** (`string`, optional) Unique identifier of the tax group to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteTaxGroup - -
- - -Delete a tax group if not associated with transactions. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique identifier for the organization in Zoho Books. -- **tax_group_identifier** (`string`, required) Unique identifier of the tax group to be deleted. Ensure it's not associated with active transactions to proceed. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateTaxGroup - -
- - -Create a tax group with multiple associated taxes. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization within Zoho Books. This is required to create a tax group. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateTaxAuthority - -
- - -Create a tax authority in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization for which the tax authority is to be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetTaxAuthorities - -
- - -Retrieve the list of tax authorities. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which to retrieve tax authorities. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateTaxAuthorityDetails - -
- - -Update details of a tax authority. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier of the organization for which the tax authority details need to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **tax_authority_identifier** (`string`, optional) Unique identifier of the tax authority to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetTaxAuthorityDetails - -
- - -Retrieve details of a specific tax authority. - -**Parameters** - -- **organization_id** (`string`, required) Provide the ID of the organization to retrieve tax authority details. -- **tax_authority_unique_id** (`string`, required) Unique identifier of the tax authority to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteTaxAuthority - -
- - -Delete a specific tax authority. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization to identify which one the tax authority belongs to. -- **tax_authority_identifier** (`string`, required) The unique identifier for the tax authority to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateTaxExemption - -
- - -Create a tax exemption in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books for which the tax exemption is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetTaxExemptionsList - -
- - -Retrieve a list of tax exemptions from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization whose tax exemptions are being requested. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateTaxExemptionDetails - -
- - -Update the details of a tax exemption. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier of the organization for which the tax exemption needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **tax_exemption_identifier** (`string`, optional) Unique identifier for the tax exemption to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetTaxExemptionDetails - -
- - -Retrieve the details of a tax exemption using its ID. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required to access the organization's tax exemption details. -- **tax_exemption_identifier** (`string`, required) The unique identifier for the tax exemption to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteTaxExemption - -
- - -Delete a specific tax exemption from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization in Zoho Books. -- **tax_exemption_identifier** (`string`, required) Unique identifier of the tax exemption to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.LogTimeEntries - -
- - -Log time entries in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books. Required for logging time entries. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListTimeEntries - -
- - -Retrieve all time entries with pagination. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique identifier for the organization. Required to retrieve time entries specific to this organization. -- **start_date_for_time_entries** (`string`, optional) Date from which the time entries should start being fetched. Expected format is YYYY-MM-DD. -- **end_date_for_time_entries** (`string`, optional) The end date for fetching logged time entries in YYYY-MM-DD format. -- **filter_time_entries_by** (`string`, optional) Filter time entries by date or status. Use values like Date.Today, Date.ThisMonth, Status.Unbilled, etc. -- **project_id** (`string`, optional) Search for time entries by specifying the project ID. -- **search_time_entries_by_user_id** (`string`, optional) Search and filter time entries based on a specific user's ID. Provide the ID as a string. -- **sort_time_entries_by** (`string`, optional) Sort time entries by project name, task name, user name, log date, timer start time, or customer name. -- **page_number_to_fetch** (`integer`, optional) Page number to retrieve time entries from, starting at 1 by default. -- **records_per_page** (`integer`, optional) Number of records to fetch per page. Defaults to 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteTimeEntries - -
- - -Delete time tracking entries from projects. - -**Parameters** - -- **organization_identifier** (`string`, required) ID of the organization to identify which entity's time entries will be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateTimeEntry - -
- - -Updates an existing logged time entry. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization to which the time entry belongs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **time_entry_identifier** (`string`, optional) Unique identifier of the existing time entry to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetTimeEntryDetails - -
- - -Retrieve details of a specific time entry. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization for which the time entry details are requested. -- **time_entry_identifier** (`string`, required) Unique identifier of the time entry to retrieve details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteLoggedTimeEntry - -
- - -Delete a specific logged time entry. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization from which the time entry will be deleted. -- **time_entry_identifier** (`string`, required) Unique identifier for the logged time entry to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.StartTimeTracking - -
- - -Initiate time tracking for a specific entry. - -**Parameters** - -- **organization_identifier** (`string`, required) ID of the organization for which the time tracking is to be started. -- **time_entry_identifier** (`string`, required) Unique identifier for the specific time entry to be tracked. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.StopTimeTracking - -
- - -Stop the timer for a time entry. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization where the time entry is being stopped. This ID is required to specify which organization's time tracking should be affected. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetCurrentRunningTimer - -
- - -Retrieve the current running timer for a user. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization whose running timer is being retrieved. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateOrganizationUser - -
- - -Create a user for your organization in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization in Zoho Books where the user will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetOrganizationUsers - -
- - -Retrieve the list of all users in the organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization to retrieve its users. Provide a valid organization ID as a string. -- **user_status_filter** (`string`, optional) Filter users based on their status. Options: Status.All, Status.Active, Status.Inactive, Status.Invited, Status.Deleted. -- **sort_users_by_column** (`string`, optional) Specify the attribute to sort users by. Allowed values are name, email, user_role, and status. -- **page_number** (`integer`, optional) Page number to be retrieved, with default being 1. Specify to navigate through pages. -- **records_per_page** (`integer`, optional) Number of user records to retrieve per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateUserDetails - -
- - -Update user details in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique ID of the organization whose user's details are being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **user_identifier** (`string`, optional) Unique identifier of the user to be updated in Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetUserDetails - -
- - -Retrieve detailed information about a specific user in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. This is required to specify the organization context for API calls. -- **user_unique_identifier** (`string`, required) A unique string that identifies the user in Zoho Books. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RemoveUserFromOrganization - -
- - -Delete a user from the organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization from which the user will be deleted. -- **user_unique_identifier** (`string`, required) Unique identifier of the user to be deleted from the organization. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetCurrentUserDetails - -
- - -Retrieve details of the current user from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books to retrieve the current user details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SendInvitationEmail - -
- - -Send an invitation email to a user in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization in Zoho Books required to send the invitation. -- **user_unique_identifier** (`string`, required) Unique identifier of the user to whom the invitation email will be sent. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ActivateInactiveUser - -
- - -Mark an inactive user as active. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization for which the user will be reactivated. Ensure it matches the organization's records. -- **user_identifier** (`string`, required) Unique identifier for the user to be activated. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeactivateUserAccount - -
- - -Deactivate a user's account in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization within Zoho Books to which the user belongs. -- **user_unique_identifier** (`string`, required) Provide the unique identifier of the user to be deactivated. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateVendorCredit - -
- - -Create vendor credit for returns or adjustments. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization for which the vendor credit is being created. Must be a valid organization ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bill_id** (`string`, optional) Identifier of the bill associated with the vendor credit. Required for linking the credit to a specific transaction. Only used when mode is 'execute'. -- **ignore_auto_number_generation** (`boolean`, optional) Set to true to bypass auto number generation. A vendor credit number becomes mandatory when enabled. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListVendorCredits - -
- - -Retrieve and filter vendor credits from Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Zoho Books. -- **vendor_credit_number_filter** (`string`, optional) Filter vendor credits by specific vendor credit number. Supports partial matching with options like 'startswith' and 'contains'. -- **filter_by_creation_date** (`string`, optional) Filter vendor credits by creation date using yyyy-mm-dd format. Supports date_start, date_end, date_before, and date_after for range filtering. -- **vendor_credit_status** (`string`, optional) Filter vendor credits by their current status. Allowed values: 'open', 'closed', 'void', or 'draft'. -- **total_amount_filter** (`string`, optional) Filter vendor credits by total amount. Use variants: total_start, total_end, total_less_than, total_less_equals, total_greater_than, total_greater_equals. -- **reference_number_filter** (`string`, optional) Filter vendor credits by their reference number, supporting 'startswith' and 'contains' for partial matches. -- **filter_by_vendor_name** (`string`, optional) Filter vendor credits by vendor name, supporting partial matches with 'startswith' and 'contains'. -- **filter_by_item_name** (`string`, optional) Filter vendor credits by item name. Use 'startswith:' or 'contains:' as prefixes for partial matching. -- **item_description_filter** (`string`, optional) Filter vendor credits by item description. Supports partial matching with 'startswith' and 'contains'. -- **filter_by_notes_content** (`string`, optional) Filter vendor credits by notes content. Use partial matching with variants: notes_startswith or notes_contains. -- **filter_by_custom_field** (`string`, optional) Filter vendor credits by custom field values. Use 'custom_field_startswith' or 'custom_field_contains' for partial matching. -- **filter_by_last_modified_time** (`string`, optional) Filter vendor credits by last modified time using ISO 8601 format (yyyy-mm-ddThh:mm:ss-hh:mm). -- **filter_by_customer_id** (`integer`, optional) Filter vendor credits by a specific customer ID to find credits associated with that customer. Retrieve customer IDs from the contacts API. -- **filter_by_line_item_id** (`integer`, optional) Filter vendor credits by a specific line item ID to find credits containing the item. -- **filter_by_item_id** (`integer`, optional) Filter vendor credits by a specific item ID. Use this to find vendor credits containing the item. Retrieve item IDs from the items API. -- **filter_by_tax_id** (`integer`, optional) Filter vendor credits by specific tax ID to find credits with that tax applied. Tax IDs are retrieved from the taxes API. -- **filter_by_status** (`string`, optional) Filter vendor credits by status using predefined values: Status.All, Status.Open, Status.Draft, Status.Closed, Status.Void. -- **search_text** (`string`, optional) Enter text to search vendor credits by credit number, vendor name, and reference number. -- **sort_by_column** (`string`, optional) Specify which column to sort vendor credits by. Options: vendor_name, vendor_credit_number, balance, total, date, created_time, last_modified_time, reference_number. -- **pagination_page_number** (`integer`, optional) Specify the page number to retrieve results from for pagination. Default is 1. -- **pagination_records_per_page** (`integer`, optional) Specify the number of vendor credit records to return per page. The default value is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateVendorCredit - -
- - -Update an existing vendor credit in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique identifier of the organization in Zoho Books. Required to update vendor credit. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **vendor_credit_id** (`string`, optional) The unique identifier for the vendor credit to be updated. This string is required to locate the specific credit. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetVendorCreditDetails - -
- - -Retrieve details of a specific vendor credit. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose vendor credit details are being requested. -- **vendor_credit_id** (`string`, required) Unique identifier for the vendor credit to retrieve details. -- **output_format** (`string`, optional) Specify the format for vendor credit details. Options: json, xml, csv, xls, pdf, html, jhtml. Default is html. -- **export_vendor_credit_pdf** (`boolean`, optional) Set to true to export the vendor credit as a PDF with default print options. Accepts 'true', 'false', 'on', 'off'. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteVendorCredit - -
- - -Delete a vendor credit by its ID. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required to specify which organization's vendor credit to delete. -- **vendor_credit_identifier** (`string`, required) Unique identifier of the vendor credit to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.OpenVendorCreditStatus - -
- - -Change a vendor credit status to open in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books whose vendor credit status needs to be marked as open. -- **vendor_credit_identifier** (`string`, required) Unique identifier for the vendor credit to be marked as open. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.MarkVendorCreditVoid - -
- - -Mark an existing vendor credit as void in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) Provide the unique ID of the organization in Zoho Books. -- **vendor_credit_identifier** (`string`, required) Unique identifier for the vendor credit to be marked as void. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SubmitVendorCreditForApproval - -
- - -Submit a vendor credit for approval. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization where the vendor credit is submitted for approval. -- **vendor_credit_unique_id** (`string`, required) Unique identifier of the vendor credit to be submitted for approval. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ApproveVendorCredit - -
- - -Approve a vendor credit in Zoho Books. - -**Parameters** - -- **organization_identifier** (`string`, required) The ID of the organization in Zoho Books. This uniquely identifies the organization for which the vendor credit approval will be processed. -- **vendor_credit_identifier** (`string`, required) Unique identifier for the vendor credit to be approved. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListBillsWithVendorCredit - -
- - -List bills with applied vendor credit from a vendor credit ID. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization to fetch applicable bills for vendor credit. -- **vendor_credit_id** (`string`, required) Unique identifier for the vendor credit to list the applied bills. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ApplyVendorCreditToBill - -
- - -Apply vendor credit to an existing bill in Zoho Books. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization where the vendor credit will be applied. Required for identification within Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **vendor_credit_identifier** (`string`, optional) Unique identifier for the vendor credit to be applied to a bill. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RemoveVendorBillCredit - -
- - -Delete credits applied to a vendor bill. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization for which the vendor credit bill is to be deleted. -- **vendor_credit_identifier** (`string`, required) Unique identifier of the vendor credit to be deleted. Required for bill credit removal. -- **vendor_credit_bill_identifier** (`string`, required) Unique identifier of the vendor credit bill to delete the applied credits. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RefundVendorCredit - -
- - -Process a refund for vendor credit. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The ID of the organization for which the vendor credit refund is being processed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **vendor_credit_identifier** (`string`, optional) Unique identifier for the vendor credit that needs to be refunded. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListVendorCreditRefunds - -
- - -Retrieve all refunds for a specified vendor credit. - -**Parameters** - -- **organization_identifier** (`string`, required) Unique string ID of the organization for which refunds are to be listed. -- **vendor_credit_id** (`string`, required) The unique identifier for a specific vendor credit whose refunds are to be listed. -- **page_number** (`integer`, optional) Page number for pagination, specifying which set of results to retrieve. Default is 1. -- **records_per_page** (`integer`, optional) Specify the number of refunds to return per page for pagination. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateVendorCreditRefund - -
- - -Update a refunded vendor credit transaction. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) Unique identifier for the organization. This is needed to specify which organization the vendor credit refund update applies to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **vendor_credit_identifier** (`string`, optional) Unique identifier of the vendor credit to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **vendor_credit_refund_identifier** (`string`, optional) Unique identifier for the vendor credit refund transaction that needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetVendorCreditRefund - -
- - -Retrieve a refund for a specific vendor credit. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization to which the vendor credit belongs. -- **vendor_credit_identifier** (`string`, required) Unique identifier for the vendor credit to retrieve the refund details. -- **vendor_credit_refund_id** (`string`, required) Unique identifier of the vendor credit refund for the specific transaction. Required to retrieve refund details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteVendorCreditRefund - -
- - -Delete a vendor credit refund in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization to which the vendor credit refund belongs. -- **vendor_credit_identifier** (`string`, required) Unique identifier for the vendor credit, required to delete the refund. -- **vendor_credit_refund_id** (`string`, required) Unique identifier for the specific vendor credit refund you wish to delete. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.FetchVendorCreditRefunds - -
- - -Retrieve a paginated list of vendor credit refunds. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization for which to list vendor credit refunds. -- **search_vendor_credits_by_customer_id** (`integer`, optional) Search for vendor credits linked to a specific customer using their ID. -- **vendor_credit_last_modified_time** (`string`, optional) Search vendor credits using the last modified time as a filter. This expects a date-time string, typically in ISO 8601 format, to narrow down results by when they were last modified. -- **sort_vendor_credits_by_column** (`string`, optional) Specify the column to sort vendor credits by. Allowed values: vendor_name, vendor_credit_number, balance, total, date, created_time, last_modified_time, reference_number. -- **pagination_page_number** (`integer`, optional) Specify the page number of results to retrieve for pagination. Default is 1. -- **records_per_page** (`integer`, optional) Number of vendor credits to return per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.AddVendorCreditComment - -
- - -Add a comment to an existing vendor credit. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization. Required to specify which organization the vendor credit belongs to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **vendor_credit_identifier** (`string`, optional) Unique identifier for the vendor credit to which the comment will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetVendorCreditComments - -
- - -Retrieve history and comments for a vendor credit. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization. This ID is required to access the vendor credit comments. -- **vendor_credit_identifier** (`string`, required) The unique identifier for the specific vendor credit to retrieve its history and comments. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteVendorCreditComment - -
- - -Delete a vendor credit comment in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization in Zoho Books. -- **vendor_credit_id** (`string`, required) Unique identifier of the vendor credit to specify which comment to delete. -- **comment_id** (`string`, required) Unique identifier of the vendor credit comment to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.CreateVendorPayment - -
- - -Create and apply a payment to a vendor's bill. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique ID of the organization to which the vendor payment belongs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListVendorPayments - -
- - -Fetch all payments made to vendors. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization whose vendor payments you want to list. -- **vendor_name_query** (`string`, optional) Search payments by vendor name using parameters like startswith or contains. -- **search_by_reference_number** (`string`, optional) Search payments using the reference number. Supports variants: 'startswith' and 'contains'. -- **payment_number_search** (`string`, optional) Search payments using the payment number with options for exact match, starts with, or contains. -- **payment_date_filter** (`string`, optional) Specify the date for payment filtering. Use variants like 'date_start', 'date_end', 'date_before', and 'date_after'. -- **payment_amount_filter** (`number`, optional) Filter payments by amount paid to the vendor. Use variants: 'less_than', 'less_equals', 'greater_than', 'greater_equals' to specify the condition. -- **search_by_payment_mode** (`string`, optional) Search payments by payment mode using variants like 'startswith' or 'contains'. -- **search_with_payment_notes** (`string`, optional) Search payments using notes with options like startswith or contains. -- **vendor_id** (`string`, optional) The unique ID of the vendor, used to search payments by vendor ID. -- **last_modified_time_filter** (`string`, optional) Filter vendor payments by their last modified time. Use a date-time string in ISO 8601 format. -- **search_payments_by_bill_id** (`string`, optional) Search payments using the specific Bill ID associated with the transaction. -- **search_by_description** (`string`, optional) Search payments by description. Use 'description_startswith' or 'description_contains' variants for specific matches. -- **filter_payment_mode** (`string`, optional) Filter payments by payment mode. Options include All, Check, Cash, BankTransfer, Paypal, CreditCard, GoogleCheckout, Credit, Authorizenet, BankRemittance, Payflowpro, and Others. -- **search_text** (`string`, optional) Search for payments using reference number, vendor name, or payment description. -- **sort_payments_by** (`string`, optional) Sort payments by column. Options: vendor_name, date, reference_number, amount, balance. -- **page_number_to_fetch** (`integer`, optional) Specify the page number of results to fetch. Default is 1. -- **records_per_page** (`integer`, optional) Specify the number of records to fetch per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateVendorPaymentWithCustomId - -
- - -Update or create a vendor payment using a unique custom field. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization within Zoho Books. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_field_api_name** (`string`, optional) The API name of the unique custom field used to identify the vendor payment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_field_unique_value** (`string`, optional) The unique value of the custom field used to identify or create a vendor payment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **create_new_record_if_not_exists** (`boolean`, optional) Set to true to create a new vendor payment if no existing record matches the unique custom field value. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteMultipleVendorPayments - -
- - -Delete multiple vendor payments in one action. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization from which the vendor payments are to be deleted. -- **vendor_payment_ids** (`string`, required) Comma-separated list of vendor payment IDs to delete. -- **bulk_delete** (`boolean`, required) Set to true to perform bulk deletion of vendor payments. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateVendorPayment - -
- - -Update or modify an existing vendor payment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) Provide the specific ID of the organization for which the vendor payment is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **payment_identifier** (`string`, optional) The unique identifier of the vendor payment to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.FetchVendorPaymentDetails - -
- - -Retrieve details of a vendor payment by payment ID. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization to retrieve the vendor payment details. -- **payment_identifier** (`string`, required) Unique identifier for the payment to retrieve its details. -- **include_tax_information** (`boolean`, optional) Set to true to fetch tax information for the vendor payment. -- **fetch_statement_line_info** (`boolean`, optional) Set to true to fetch statement line information for the vendor payment. -- **print_payment** (`boolean`, optional) Specify true to print the Vendor Payment details. -- **is_bill_payment_id** (`boolean`, optional) True if the ID is for a Bill Payment, false for a Vendor Payment. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteVendorPayment - -
- - -Delete an existing vendor payment in Zoho Books. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization for which the vendor payment is to be deleted. This is required to identify the correct organization within Zoho Books. -- **vendor_payment_id** (`string`, required) Unique identifier of the vendor payment to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.ListVendorPaymentRefunds - -
- - -List all refunds for a vendor payment. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization in Zoho Books to list the refunds for. This should be a unique identifier as specified by Zoho Books. -- **payment_identifier** (`string`, required) Unique identifier of the vendor payment to fetch refunds for. -- **page_number** (`integer`, optional) Page number to be fetched, starting from 1. Default is 1. -- **records_per_page** (`integer`, optional) Number of records to fetch per page. Default is 200. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.RefundVendorOverpayment - -
- - -Refund excess amount paid to a vendor. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_identifier** (`string`, optional) The unique ID representing the organization. Required to refund vendor overpayment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **vendor_payment_id** (`string`, optional) Unique identifier for the vendor payment to be refunded. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetVendorPaymentRefundDetails - -
- - -Retrieve details of a specific vendor payment refund. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization whose vendor payment refund details are requested. -- **payment_identifier** (`string`, required) Unique identifier for the payment associated with the vendor refund. -- **vendor_payment_refund_id** (`string`, required) Unique identifier for the vendor payment refund to retrieve its details. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.UpdateVendorPaymentRefund - -
- - -Update the refunded transaction for a vendor payment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization associated with the refund transaction. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **payment_identifier** (`string`, optional) Unique identifier of the payment. Required to specify which payment is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **vendor_payment_refund_id** (`string`, optional) Unique identifier of the vendor payment refund required for updating the transaction. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.DeleteVendorPaymentRefund - -
- - -Delete a refund from an existing vendor payment. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization to which the vendor payment refund belongs. -- **payment_identifier** (`string`, required) Unique identifier of the payment to be deleted. -- **vendor_payment_refund_id** (`string`, required) Unique identifier of the vendor payment refund to be deleted. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.SendVendorPaymentEmail - -
- - -Send a payment receipt email to a vendor. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) ID of the organization for which the vendor payment email is being sent. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **vendor_payment_id** (`string`, optional) Unique identifier for the vendor payment. Used to retrieve and send the corresponding payment receipt via email. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **email_attachments** (`string`, optional) List of file paths or URLs to attach to the email. Only used when mode is 'execute'. -- **attached_file_name** (`string`, optional) Specify the name of the file to be attached to the email. Only used when mode is 'execute'. -- **send_vendor_payment_attachment** (`boolean`, optional) Set to true to include the vendor payment attachment in the email. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ZohoBooksApi.GetVendorPaymentEmailContent - -
- - -Retrieve email content for a vendor payment receipt. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required to retrieve the vendor payment email content. -- **vendor_payment_id** (`string`, required) Unique identifier for the vendor payment to retrieve email content. - -**Secrets** - -This tool requires the following secrets: `ZOHO_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Reference - -Below is a reference of enumerations used by some of the tools in the ZohoBooksApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - -## Secrets - -This MCP Server requires the `ZOHO_SERVER_URL` secret to be configured. Learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets). - -### Getting your Zoho Server URL - -The Zoho Server URL is the base URL for your Zoho account's data center. Zoho operates in multiple data centers around the world, and you must use the correct URL for your account. - -Your Zoho Server URL depends on which data center your account is registered in: - -| Data Center | Server URL | -| ----------- | --------------------------- | -| US | `https://books.zoho.com` | -| EU | `https://books.zoho.eu` | -| India | `https://books.zoho.in` | -| Australia | `https://books.zoho.com.au` | -| China | `https://books.zoho.com.cn` | - -To determine which data center your account uses: - -1. Log in to your Zoho Books account -2. Look at the URL in your browser's address bar -3. The domain (`.com`, `.eu`, `.in`, `.com.au`, or `.com.cn`) indicates your data center - -For example, if you access Zoho Books at `https://books.zoho.eu`, your server URL is `https://books.zoho.eu`. - -The server URL is used as the base for all API requests. For example, when retrieving invoices, the full URL would be constructed as: - -``` -{zoho_server_url}/api/v3/invoices?organization_id=... -``` - -Which would become `https://books.zoho.com/api/v3/invoices?organization_id=...` for US accounts. - -## Auth - -The ZohoBooksApi MCP Server uses the Auth Provider with id `arcade-zoho` to connect to users' Zoho Books accounts. In order to use the MCP Server, you will need to configure the `arcade-zoho` auth provider. - -Learn how to configure the Zoho auth provider in the [Zoho auth provider documentation](/references/auth-providers/zoho). - - diff --git a/app/en/resources/integrations/preview/[toolkitId]/_meta.tsx b/app/en/resources/integrations/preview/[toolkitId]/_meta.tsx new file mode 100644 index 000000000..ce7f0efde --- /dev/null +++ b/app/en/resources/integrations/preview/[toolkitId]/_meta.tsx @@ -0,0 +1,13 @@ +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "*": { + theme: { + breadcrumb: false, + toc: false, + copyPage: false, + }, + }, +}; + +export default meta; diff --git a/app/en/resources/integrations/preview/[toolkitId]/page.tsx b/app/en/resources/integrations/preview/[toolkitId]/page.tsx new file mode 100644 index 000000000..7e7572370 --- /dev/null +++ b/app/en/resources/integrations/preview/[toolkitId]/page.tsx @@ -0,0 +1,35 @@ +import { TOOLKITS } from "@arcadeai/design-system"; +import { notFound, redirect } from "next/navigation"; +import { readToolkitData } from "@/app/_lib/toolkit-data"; + +const TOOLKIT_ID_NORMALIZER = /[^a-z0-9]+/g; + +function normalizeToolkitId(value: string): string { + return value.toLowerCase().replace(TOOLKIT_ID_NORMALIZER, ""); +} + +export default async function ToolkitPreviewRedirectPage({ + params, +}: { + params: Promise<{ toolkitId: string }>; +}) { + const { toolkitId } = await params; + const normalizedId = normalizeToolkitId(toolkitId); + + const toolkit = TOOLKITS.find( + (entry) => entry.id.toLowerCase() === normalizedId + ); + if (toolkit) { + redirect(`/en/resources/integrations/${toolkit.category}/${normalizedId}`); + } + + // Fallback: if this toolkit isn't present in the design system, try the JSON. + const data = await readToolkitData(normalizedId); + if (!data) { + notFound(); + } + + redirect( + `/en/resources/integrations/${data.metadata.category || "others"}/${normalizedId}` + ); +} diff --git a/app/en/resources/integrations/preview/[toolkitId]/toolkit-preview-content.tsx b/app/en/resources/integrations/preview/[toolkitId]/toolkit-preview-content.tsx new file mode 100644 index 000000000..154df1f35 --- /dev/null +++ b/app/en/resources/integrations/preview/[toolkitId]/toolkit-preview-content.tsx @@ -0,0 +1,48 @@ +"use client"; + +import { useParams } from "next/navigation"; +import { useEffect, useState } from "react"; +import { ToolkitPage } from "@/app/_components/toolkit-docs/components/toolkit-page"; +import type { ToolkitData } from "@/app/_components/toolkit-docs/types"; + +export function ToolkitPreviewContent() { + const params = useParams(); + const rawToolkitId = String(params.toolkitId ?? ""); + const toolkitId = rawToolkitId.toLowerCase().replace(/[^a-z0-9]+/g, ""); + const [data, setData] = useState(null); + const [loading, setLoading] = useState(true); + const [error, setError] = useState(null); + + useEffect(() => { + const loadData = async () => { + try { + const response = await fetch(`/api/toolkit-data/${toolkitId}`); + if (!response.ok) { + throw new Error(`Toolkit not found: ${rawToolkitId}`); + } + const toolkitData = await response.json(); + setData(toolkitData); + } catch (err) { + setError(err instanceof Error ? err.message : "Failed to load toolkit"); + } finally { + setLoading(false); + } + }; + + loadData(); + }, [toolkitId, rawToolkitId]); + + if (loading) { + return

Loading toolkit data...

; + } + + if (error || !data) { + return ( +

+ {error || `Toolkit "${rawToolkitId}" not found.`} +

+ ); + } + + return ; +} diff --git a/app/en/resources/integrations/preview/_meta.tsx b/app/en/resources/integrations/preview/_meta.tsx new file mode 100644 index 000000000..be81649be --- /dev/null +++ b/app/en/resources/integrations/preview/_meta.tsx @@ -0,0 +1,15 @@ +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "*": { + theme: { + // Preview pages are dynamic/client-rendered. + // We render breadcrumb + "On this page" ourselves to match existing layouts. + breadcrumb: false, + toc: false, + copyPage: true, + }, + }, +}; + +export default meta; diff --git a/app/en/resources/integrations/preview/page.mdx b/app/en/resources/integrations/preview/page.mdx new file mode 100644 index 000000000..521970b94 --- /dev/null +++ b/app/en/resources/integrations/preview/page.mdx @@ -0,0 +1,12 @@ +--- +title: "Toolkit previews" +description: "Preview generated toolkit documentation." +--- + +import { ToolkitPreviewIndex } from "./toolkit-preview-index"; + +# Toolkit documentation previews + +Preview pages for all generated toolkit JSON data. + + diff --git a/app/en/resources/integrations/preview/toolkit-preview-index.tsx b/app/en/resources/integrations/preview/toolkit-preview-index.tsx new file mode 100644 index 000000000..d934d05c2 --- /dev/null +++ b/app/en/resources/integrations/preview/toolkit-preview-index.tsx @@ -0,0 +1,113 @@ +import { TOOLKITS } from "@arcadeai/design-system"; +import Link from "next/link"; +import { readToolkitIndex } from "@/app/_lib/toolkit-data"; + +const AUTH_TYPE_STYLES: Record = { + oauth2: "bg-blue-500/10 text-blue-400 border-blue-500/30", + api_key: "bg-amber-500/10 text-amber-400 border-amber-500/30", + mixed: "bg-purple-500/10 text-purple-400 border-purple-500/30", + none: "bg-green-500/10 text-green-400 border-green-500/30", +}; + +const AUTH_TYPE_LABELS: Record = { + oauth2: "OAuth", + api_key: "API Key", + mixed: "Mixed", + none: "None", +}; + +export async function ToolkitPreviewIndex() { + const index = await readToolkitIndex(); + + if (!index) { + return ( +
+

+ No toolkit index found. Run the generator first. +

+
+ ); + } + + const toolkitById = new Map( + TOOLKITS.map((toolkit) => [toolkit.id.toLowerCase(), toolkit] as const) + ); + + const groupedByCategory = index.toolkits.reduce( + (acc, toolkit) => { + const resolved = toolkitById.get(toolkit.id.toLowerCase()); + const category = resolved?.category || toolkit.category || "other"; + if (!acc[category]) { + acc[category] = []; + } + acc[category].push({ + ...toolkit, + category, + label: resolved?.label || toolkit.label, + }); + return acc; + }, + {} as Record + ); + + const categories = Object.keys(groupedByCategory).sort(); + + return ( +
+
+ + {index.toolkits.length}{" "} + toolkits generated + + + {new Date(index.generatedAt).toLocaleString()} + +
+ + {categories.map((category) => ( +
+

+ + {category.replace(/-/g, " ")} + + {groupedByCategory[category].length} + +

+
+ {groupedByCategory[category] + .sort((a, b) => a.label.localeCompare(b.label)) + .map((toolkit) => ( + +
+ + {toolkit.label} + + + v{toolkit.version} + +
+
+ + {toolkit.toolCount} tools + + + {AUTH_TYPE_LABELS[toolkit.authType] || toolkit.authType} + +
+ + ))} +
+
+ ))} +
+ ); +} diff --git a/app/en/resources/integrations/productivity/[toolkitId]/_meta.tsx b/app/en/resources/integrations/productivity/[toolkitId]/_meta.tsx new file mode 100644 index 000000000..ce7f0efde --- /dev/null +++ b/app/en/resources/integrations/productivity/[toolkitId]/_meta.tsx @@ -0,0 +1,13 @@ +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "*": { + theme: { + breadcrumb: false, + toc: false, + copyPage: false, + }, + }, +}; + +export default meta; diff --git a/app/en/resources/integrations/productivity/[toolkitId]/page-impl.tsx b/app/en/resources/integrations/productivity/[toolkitId]/page-impl.tsx new file mode 100644 index 000000000..f111497cc --- /dev/null +++ b/app/en/resources/integrations/productivity/[toolkitId]/page-impl.tsx @@ -0,0 +1,10 @@ +import { createToolkitDocsPage } from "@/app/en/resources/integrations/_lib/toolkit-docs-page"; + +export const dynamicParams = false; + +const { Page, generateMetadata, generateStaticParams } = + createToolkitDocsPage("productivity"); + +export { generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/productivity/[toolkitId]/page.mdx b/app/en/resources/integrations/productivity/[toolkitId]/page.mdx new file mode 100644 index 000000000..ca97c319f --- /dev/null +++ b/app/en/resources/integrations/productivity/[toolkitId]/page.mdx @@ -0,0 +1,14 @@ +--- +title: "MCP server" +description: "Generated MCP server documentation." +--- + +import Page, { + dynamicParams, + generateMetadata, + generateStaticParams, +} from "./page-impl"; + +export { dynamicParams, generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/productivity/_meta.tsx b/app/en/resources/integrations/productivity/_meta.tsx index af7760a6a..21d4088dd 100644 --- a/app/en/resources/integrations/productivity/_meta.tsx +++ b/app/en/resources/integrations/productivity/_meta.tsx @@ -1,69 +1,129 @@ import type { MetaRecord } from "nextra"; const meta: MetaRecord = { - "*": { - theme: { - breadcrumb: true, - toc: true, - copyPage: true, - }, + "-- Optimized": { + type: "separator", + title: "Optimized", }, asana: { title: "Asana", + href: "/en/resources/integrations/productivity/asana", }, clickup: { title: "ClickUp", - }, - closeio: { - title: "Close.io", + href: "/en/resources/integrations/productivity/clickup", }, confluence: { title: "Confluence", + href: "/en/resources/integrations/productivity/confluence", }, dropbox: { title: "Dropbox", + href: "/en/resources/integrations/productivity/dropbox", }, gmail: { title: "Gmail", + href: "/en/resources/integrations/productivity/gmail", }, - "google-calendar": { + googlecalendar: { title: "Google Calendar", + href: "/en/resources/integrations/productivity/googlecalendar", }, - "google-contacts": { + googlecontacts: { title: "Google Contacts", + href: "/en/resources/integrations/productivity/googlecontacts", }, - "google-docs": { + googledocs: { title: "Google Docs", + href: "/en/resources/integrations/productivity/googledocs", }, - "google-drive": { + googledrive: { title: "Google Drive", + href: "/en/resources/integrations/productivity/googledrive", }, - "google-sheets": { + googlesheets: { title: "Google Sheets", + href: "/en/resources/integrations/productivity/googlesheets", }, - "google-slides": { + googleslides: { title: "Google Slides", + href: "/en/resources/integrations/productivity/googleslides", }, jira: { title: "Jira", + href: "/en/resources/integrations/productivity/jira", }, linear: { title: "Linear", + href: "/en/resources/integrations/productivity/linear", }, - "mailchimp-marketing-api": { - title: "Mailchimp Marketing API", - }, - notion: { - title: "Notion", - }, - obsidian: { - title: "Obsidian", + sharepoint: { + title: "Microsoft SharePoint", + href: "/en/resources/integrations/productivity/sharepoint", }, - "outlook-calendar": { + outlookcalendar: { title: "Outlook Calendar", + href: "/en/resources/integrations/productivity/outlookcalendar", }, - "outlook-mail": { + outlookmail: { title: "Outlook Mail", + href: "/en/resources/integrations/productivity/outlookmail", + }, + "-- Starter": { + type: "separator", + title: "Starter", + }, + airtableapi: { + title: "Airtable API", + href: "/en/resources/integrations/productivity/airtableapi", + }, + asanaapi: { + title: "Asana API", + href: "/en/resources/integrations/productivity/asanaapi", + }, + ashbyapi: { + title: "Ashby API", + href: "/en/resources/integrations/productivity/ashbyapi", + }, + boxapi: { + title: "Box API", + href: "/en/resources/integrations/productivity/boxapi", + }, + calendlyapi: { + title: "Calendly API", + href: "/en/resources/integrations/productivity/calendlyapi", + }, + clickupapi: { + title: "ClickUp API", + href: "/en/resources/integrations/productivity/clickupapi", + }, + figmaapi: { + title: "Figma API", + href: "/en/resources/integrations/productivity/figmaapi", + }, + lumaapi: { + title: "Luma API", + href: "/en/resources/integrations/productivity/lumaapi", + }, + miroapi: { + title: "Miro API", + href: "/en/resources/integrations/productivity/miroapi", + }, + squareupapi: { + title: "SquareUp API", + href: "/en/resources/integrations/productivity/squareupapi", + }, + ticktickapi: { + title: "TickTick API", + href: "/en/resources/integrations/productivity/ticktickapi", + }, + trelloapi: { + title: "Trello API", + href: "/en/resources/integrations/productivity/trelloapi", + }, + xeroapi: { + title: "Xero API", + href: "/en/resources/integrations/productivity/xeroapi", }, }; diff --git a/app/en/resources/integrations/productivity/airtable-api/page.mdx b/app/en/resources/integrations/productivity/airtable-api/page.mdx deleted file mode 100644 index 7e0269c34..000000000 --- a/app/en/resources/integrations/productivity/airtable-api/page.mdx +++ /dev/null @@ -1,2478 +0,0 @@ -# AirtableApi -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The AirtableApi MCP Server offers a comprehensive suite of tools for managing and interacting with Airtable's features. Users can efficiently perform actions such as: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your - own tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## AirtableApi.ListScimGroups - -
- - -Retrieve a list of SCIM groups from Airtable. - -**Parameters** - -- **filter_criteria** (`string`, optional) Defines a string-based filter to query specific SCIM groups in Airtable. Use SCIM filtering syntax to specify criteria. -- **group_count** (`number`, optional) Specify the maximum number of SCIM groups to list. It is an integer that determines how many groups the API should return. - - -## AirtableApi.CreateScimGroup - -
- - -Create a new SCIM group with no members. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.DeleteScimGroup - -
- - -Delete a SCIM Group from Airtable. - -**Parameters** - -- **group_id** (`string`, required) The unique identifier of the SCIM Group to be deleted from Airtable. - - -## AirtableApi.FetchScimGroup - -
- - -Retrieve details of a specific SCIM Group by ID. - -**Parameters** - -- **scim_group_id** (`string`, required) The unique identifier of the SCIM Group to retrieve. - - -## AirtableApi.UpdateGroupDetails - -
- - -Update group details using SCIM patch operations. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **group_id** (`string`, optional) A string representing the unique identifier of the group to be updated using SCIM patch operations. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.UpdateGroupAttributes - -
- - -Replace a group's attributes with new values. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **group_id** (`string`, optional) The unique identifier for the group whose attributes need to be replaced. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.ListScimUsers - -
- - -Retrieve a list of SCIM users from Airtable. - -**Parameters** - -- **start_index** (`number`, optional) The starting index for the list of SCIM users to retrieve. Use a positive integer to specify where to start listing from. -- **user_count_limit** (`number`, optional) The maximum number of SCIM user objects to return in the response. This should be a positive integer. -- **user_filter** (`string`, optional) Apply a filter string to narrow down the list of SCIM users. Uses SCIM standard filtering syntax. - - -## AirtableApi.CreateScimUser - -
- - -Create a new user using SCIM protocol. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.DeleteScimUser - -
- - -Delete a SCIM user from the system. - -**Parameters** - -- **scim_user_id** (`string`, required) Unique identifier for the SCIM user to delete. Cannot be the admin using the authentication token or the sole owner of a multi-collaborator workspace. - - -## AirtableApi.GetScimUser - -
- - -Get details of a single SCIM User by userId. - -**Parameters** - -- **user_id** (`string`, required) The unique identifier of the SCIM User to retrieve details for. - - -## AirtableApi.UpdateScimUserRecord - -
- - -Apply SCIM patch operations to update user details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_id** (`string`, optional) The unique identifier for the user to be updated. It should match the user's existing SCIM record. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.UpdateUserAttributes - -
- - -Replace a user's attributes with new values. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_id** (`string`, optional) The unique identifier of the user whose attributes are to be replaced. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.ListWebhooksForBase - -
- - -Retrieve registered webhooks and their statuses for a base. - -**Parameters** - -- **base_identifier** (`string`, required) The unique identifier for the base whose webhooks you want to list. - - -## AirtableApi.CreateAirtableWebhook - -
- - -Create a new webhook in a specified Airtable base. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **base_id** (`string`, optional) The ID of the Airtable base where the webhook will be created. It should be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.DeleteAirtableWebhook - -
- - -Deletes a webhook in Airtable with required permissions. - -**Parameters** - -- **airtable_base_id** (`string`, required) The unique ID of the Airtable base where the webhook is to be deleted. This is required to specify the target base. -- **webhook_id** (`string`, required) The unique identifier for the webhook to be deleted. This string is required to specify which webhook will be removed. - - -## AirtableApi.ToggleWebhookNotifications - -
- - -Enable or disable webhook notification pings. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **airtable_base_id** (`string`, optional) The unique identifier for the Airtable base. This specifies which database to target for enabling or disabling webhook notifications. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **webhook_id** (`string`, optional) The unique identifier for the webhook to be modified. Required for specifying which webhook's notifications you want to enable or disable. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.ListWebhookPayloads - -
- - -Retrieve update messages for a specified Airtable webhook. - -**Parameters** - -- **base_id** (`string`, required) Identifier for the Airtable base from which to list webhook payloads. -- **webhook_id** (`string`, required) The unique identifier for the webhook to retrieve update messages. This should be a string and should match the webhook set up in Airtable. -- **maximum_number_of_messages** (`number`, optional) The maximum number of update messages to retrieve for the webhook. -- **pagination_cursor** (`number`, optional) A numerical position indicating where to begin retrieving messages from the webhook payload list. Use this for pagination to continue from a previous list retrieval. - - -## AirtableApi.RefreshWebhookLifespan - -
- - -Extend the expiration time of an active webhook. - -**Parameters** - -- **base_identifier** (`string`, required) The unique identifier for the Airtable base containing the webhook. -- **webhook_id** (`string`, required) The unique identifier of the webhook to extend. Ensure it is an active webhook with an expiration. -- **webhook_request_body** (`json`, optional) JSON payload required for refreshing the webhook. Include necessary fields per API documentation. - - -## AirtableApi.ListAirtableBases - -
- - -Retrieve a list of accessible Airtable bases. - -**Parameters** - -- **pagination_offset** (`string`, optional) A string token to fetch the next set of Airtable bases if more results are available. Use the token from the last response to continue pagination. - - -## AirtableApi.CreateAirtableBase - -
- - -Create a new Airtable base with specified tables and schema. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.DeleteAirtableBase - -
- - -Delete a specified Airtable base. - -**Parameters** - -- **base_id** (`string`, required) The unique identifier of the base you want to delete. This ID is required to perform the deletion. - - -## AirtableApi.GetBaseCollaborators - -
- - -Retrieve information on base collaborators. - -**Parameters** - -- **base_id** (`string`, required) The unique identifier of the Airtable base to fetch collaborators from. This is a required string value. -- **fields_to_include** (`array[string]`, optional) A list of fields to include in the response. Specify as an array of strings such as ['email', 'name']. - - -## AirtableApi.ListBaseBlockInstallations - -
- - -Retrieve basic info of block installations for a specific base. - -**Parameters** - -- **base_id** (`string`, required) The unique identifier for a specific Airtable base to retrieve block installations from. - - -## AirtableApi.DeleteAirtableBlockInstallation - -
- - -Delete a block installation in Airtable, recoverable later. - -**Parameters** - -- **airtable_base_id** (`string`, required) The unique identifier for the Airtable base from which the block installation will be deleted. -- **block_installation_id** (`string`, required) The unique identifier of the block installation to be deleted. This is required to specify which block installation to remove. - - -## AirtableApi.ManageAirtableBlockInstallation - -
- - -Manages the installation state of an Airtable block. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **airtable_base_id** (`string`, optional) The unique identifier for the Airtable base where the block is installed. It is required to specify the base for the block installation. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **block_installation_id** (`string`, optional) The unique identifier for the block installation to be managed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.AddBaseCollaborator - -
- - -Add a collaborator to an Airtable base. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **base_id** (`string`, optional) The ID of the Airtable base to which the collaborator will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.RemoveBaseCollaborator - -
- - -Remove a collaborator from a base. - -**Parameters** - -- **base_id** (`string`, required) The unique identifier for the base from which the collaborator will be removed. This is a required field. -- **collaborator_id** (`string`, required) The unique identifier for the user or group to be removed from the base. - - -## AirtableApi.UpdateCollaboratorPermission - -
- - -Update a collaborator's permission level on a base. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **base_identifier** (`string`, optional) The unique identifier for the base to update permission. Required as a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **collaborator_id** (`string`, optional) The unique identifier for the user or group whose permission level is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.GetInterfaceInfo - -
- - -Retrieve information about a specified interface. - -**Parameters** - -- **airtable_base_id** (`string`, required) The unique identifier of the Airtable base. This ID specifies which base the interface information belongs to. -- **interface_id** (`string`, required) The ID of the Airtable interface to retrieve information for. This is found in the `interfaces` object from the `get base collaborators` endpoint. -- **include_elements** (`array[string]`, optional) Specify elements to include in the response. Provide as an array of strings representing the element names or IDs. - - -## AirtableApi.AddCollaboratorToAirtableInterface - -
- - -Add a collaborator to an Airtable interface. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **airtable_base_id** (`string`, optional) The unique identifier for the Airtable base where the interface is located. This helps specify which base the collaborator will be added to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **page_bundle_id** (`string`, optional) The unique identifier for the specific interface page bundle where the collaborator will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.RemoveInterfaceCollaborator - -
- - -Remove a collaborator from an interface. - -**Parameters** - -- **base_id** (`string`, required) The unique identifier for the Airtable base. This is required to specify which base the collaborator will be removed from. -- **collaborator_id** (`string`, required) The ID of the user or group to be removed as an interface collaborator. Must be a valid identifier. -- **interface_page_bundle_id** (`string`, required) The ID of the page bundle within the interface from which the collaborator is being removed. - - -## AirtableApi.UpdateCollaboratorPermissions - -
- - -Update permissions for an interface-only collaborator. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **base_identifier** (`string`, optional) The unique identifier for the Airtable base where the collaborator's permissions are being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **interface_page_bundle_id** (`string`, optional) The unique identifier for the page bundle associated with the interface in Airtable. Required to specify which interface the permissions are being updated for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **collaborator_id** (`string`, optional) The unique ID of the user or group whose permissions are to be updated. This is required for specifying which collaborator's access level should be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.DeleteInterfaceInvite - -
- - -Delete an outstanding interface invite in Airtable. - -**Parameters** - -- **base_identifier** (`string`, required) The unique identifier for the Airtable base from which the invite will be deleted. -- **invite_id** (`string`, required) The identifier of the outstanding interface invite to be deleted. Must be a valid string representing the invite ID. -- **page_bundle_id** (`string`, required) The unique ID of the interface page bundle to identify which interface's invite to delete. - - -## AirtableApi.DeleteBaseInvite - -
- - -Delete an outstanding base invite. - -**Parameters** - -- **base_id** (`string`, required) The unique identifier of the base from which the invite should be deleted. -- **invite_id** (`string`, required) The unique identifier for the invite to be deleted. Ensure this is an outstanding invite. - - -## AirtableApi.ListBaseShares - -
- - -Lists basic information of base shares. - -**Parameters** - -- **base_identifier** (`string`, required) The unique ID of the Airtable base to list shares for. Required to retrieve base share information. - - -## AirtableApi.DeleteAirtableShare - -
- - -Permanently delete a share from an Airtable base. - -**Parameters** - -- **airtable_base_id** (`string`, required) The unique identifier of the Airtable base from which the share will be deleted. This value is required. -- **share_id** (`string`, required) The unique identifier of the share to delete from an Airtable base. - - -## AirtableApi.ManageAirtableSharing - -
- - -Update and manage the share state of an Airtable base. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **airtable_base_id** (`string`, optional) The unique identifier for the Airtable base to manage its share state. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **share_identifier** (`string`, optional) The unique identifier for the share configuration to modify in Airtable. It specifies which share state needs to be managed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.GetAirtableBaseSchema - -
- - -Retrieve the schema of tables in an Airtable base. - -**Parameters** - -- **airtable_base_id** (`string`, required) The unique identifier for the Airtable base whose schema is being requested. This ID can be found in the URL of the base when accessed in Airtable. -- **fields_to_include** (`array[string]`, optional) A list of specific fields to include in the schema response. Each field should be a string representing the field name. - - -## AirtableApi.CreateAirtableTable - -
- - -Create a new table in Airtable and return its schema. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **airtable_base_id** (`string`, optional) The identifier for the Airtable base where the table will be created. Must be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.UpdateAirtableTable - -
- - -Update the properties of an Airtable table. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **airtable_base_id** (`string`, optional) The unique identifier for the Airtable base containing the table to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **table_id_or_name** (`string`, optional) The identifier or name of the table to update in Airtable. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.CreateAirtableField - -
- - -Creates a new column in an Airtable table and returns its schema. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **airtable_base_id** (`string`, optional) The unique identifier for the Airtable base containing the table. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **table_id** (`string`, optional) The unique identifier of the table where the new column will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.UpdateAirtableFieldDetails - -
- - -Updates the name or description of an Airtable field. - -**Parameters** - -- **airtable_base_id** (`string`, required) The unique ID of the Airtable base containing the field to update. -- **airtable_table_id** (`string`, required) The ID of the table in which the field's metadata is to be updated. -- **field_column_id** (`string`, required) The unique identifier for the field (column) to be updated in the Airtable base. -- **new_field_description** (`string`, optional) The new description for the field. Optional, max 20,000 characters. -- **new_field_name** (`string`, optional) The new name for the field in Airtable. This is optional but must be provided if no new description is given. - - -## AirtableApi.ListAirtableBaseViews - -
- - -Retrieve information on Airtable base views. - -**Parameters** - -- **airtable_base_id** (`string`, required) The ID of the Airtable base for which you want to list views. -- **fields_to_include** (`array[string]`, optional) A list of specific fields to include in the response. It filters the fields returned for each view. - - -## AirtableApi.DeleteAirtableView - -
- - -Deletes a specific view in Airtable by ID. - -**Parameters** - -- **airtable_base_id** (`string`, required) The ID of the Airtable base from which the view will be deleted. Must be a valid string identifier. -- **view_identifier** (`string`, required) The unique identifier of the Airtable view to delete. Required to specify which view to remove. - - -## AirtableApi.GetAirtableViewMetadata - -
- - -Get basic information about an Airtable base view. - -**Parameters** - -- **base_identifier** (`string`, required) The unique ID of the Airtable base. This is required to retrieve view metadata. -- **view_identifier** (`string`, required) A unique identifier for the Airtable view. Used to specify which view's metadata to retrieve. -- **include_fields** (`array[string]`, optional) Array of field names to include in the view metadata response. Specify specific fields if required. - - -## AirtableApi.GetEnterpriseInfo - -
- - -Retrieve basic information about an enterprise account. - -**Parameters** - -- **enterprise_account_id** (`string`, required) The unique identifier for the target enterprise account. This is required to fetch the relevant account information. -- **fields_to_include** (`array[string]`, optional) Specify an array of field names as strings to include in the response. Leaving this empty includes all default fields. - - -## AirtableApi.GetAuditLogEvents - -
- - -Retrieve audit log events for an enterprise. - -**Parameters** - -- **enterprise_account_id** (`string`, required) The unique identifier for the enterprise account to retrieve audit log events for. -- **end_time** (`string`, optional) The end time for retrieving audit log events. The format is ISO 8601 (e.g., '2023-10-15T10:00:00Z'). -- **event_category** (`string`, optional) Filter audit log events by specific categories. Accepts string values like 'security', 'compliance', etc. -- **event_type** (`string`, optional) Specify the type of event to filter the audit logs. Use a string representing the event category. -- **filter_by_originating_user_id** (`string`, optional) Filter audit log events by the ID of the originating user. -- **model_identifier** (`string`, optional) A string that specifies the model ID related to the audit log event. -- **next_page_token** (`string`, optional) Token to retrieve the next page of results when paginating through a large set of audit log events. -- **page_size** (`number`, optional) Number of log events to retrieve per page. It determines the size of the data fetched in a single API call. -- **previous_event_marker** (`string`, optional) A string marker to paginate backwards through audit log events, indicating the last event seen. -- **sort_order** (`string`, optional) Defines the order in which results are sorted. Use 'ascending' or 'descending'. -- **start_time** (`string`, optional) Specify the starting point for retrieving audit logs. Use ISO 8601 format (e.g., '2023-01-01T00:00:00Z'). - - -## AirtableApi.RetrieveAuditLogRequests - -
- - -Retrieve all audit log requests for an enterprise account. - -**Parameters** - -- **enterprise_account_id** (`string`, required) The unique identifier for the enterprise account to retrieve audit log requests for. -- **audit_log_page_size** (`number`, optional) Specify the number of audit log requests to return per page. Use this to control pagination. -- **pagination_offset** (`number`, optional) A number indicating the starting point for retrieving audit log requests. Used for pagination. - - -## AirtableApi.CreateAuditLogRequest - -
- - -Initiate the creation of an audit log request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enterprise_account_id** (`string`, optional) The ID of the enterprise account for which the audit log is being requested. Necessary to initiate the log request process. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.RetrieveAuditLog - -
- - -Retrieve a specific audit log request. - -**Parameters** - -- **audit_log_task_id** (`string`, required) The unique identifier for the specific audit log task to retrieve. This is required to fetch the log details. -- **enterprise_account_id** (`string`, required) The unique identifier for the enterprise account. This ID is required to retrieve the specific audit log request. - - -## AirtableApi.GetAirtableChangeEvents - -
- - -Retrieve change events for Airtable enterprise bases. - -**Parameters** - -- **enterprise_account_id** (`string`, required) The unique identifier for the enterprise account. This ID is required to retrieve the change events specific to the account. -- **end_time** (`string`, optional) The end time for retrieving change events in ISO 8601 format (e.g., '2023-01-01T23:59:59Z'). -- **page_size_limit** (`number`, optional) Specifies the maximum number of change events returned in a single request. Use a number to limit the size. -- **pagination_offset** (`string`, optional) String used to specify the starting point for the next page of results. Useful for pagination. -- **start_time** (`string`, optional) The starting timestamp for retrieving change events. Format is ISO 8601 (e.g., '2023-10-05T12:00:00Z'). - - -## AirtableApi.CreateDescendantEnterpriseAccount - -
- - -Create a descendant enterprise account in Airtable. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enterprise_account_id** (`string`, optional) The ID of the root enterprise account for which to create a descendant. This account must have Enterprise Hub enabled. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.GetEdiscoveryExportsStatus - -
- - -Retrieve status and results of all eDiscovery exports. - -**Parameters** - -- **enterprise_account_id** (`string`, required) The ID of the enterprise account for which to retrieve eDiscovery export status and results. -- **ediscovery_export_state** (`string`, optional) Filter exports by state: 'pending', 'processing', 'error', or 'done'. -- **pagination_offset** (`number`, optional) The number of records to skip for pagination. Useful for accessing data beyond initial pages. -- **result_page_size** (`number`, optional) Specify the number of eDiscovery export results to return per page. - - -## AirtableApi.CreateEdiscoveryExport - -
- - -Initiate an eDiscovery export request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enterprise_account_id** (`string`, optional) The unique identifier for the enterprise account. Required for creating an eDiscovery export. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.GetEdiscoveryExportStatus - -
- - -Retrieve the status and result of an eDiscovery export. - -**Parameters** - -- **enterprise_account_id** (`string`, required) The ID of the enterprise account for which to retrieve the eDiscovery export status and results. -- **enterprise_task_id** (`string`, required) The unique identifier for the eDiscovery export task. Required to check the status and get results. - - -## AirtableApi.BatchMoveUserGroupsBetweenAccounts - -
- - -Batch move user groups between enterprise accounts. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **target_enterprise_account_id** (`string`, optional) The ID of the target enterprise account to which user groups are being moved. Must belong to the same organization and have the Enterprise Hub feature enabled. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.MoveWorkspacesBetweenEnterpriseAccounts - -
- - -Move workspaces between enterprise accounts within the same organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enterprise_account_id** (`string`, optional) The unique identifier of the enterprise account to which workspaces are being moved. Ensure it belongs to the same organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.DeleteUsersByEmail - -
- - -Delete multiple users identified by their email addresses. - -**Parameters** - -- **enterprise_account_id** (`string`, required) The unique ID of the enterprise account from which users will be deleted. Required for specifying the target enterprise. -- **email_addresses** (`array[string]`, optional) An array of email addresses of users to be deleted. Each email must be a valid string. - - -## AirtableApi.GetAirtableUserInfo - -
- - -Fetch user details from Airtable by ID or email. - -**Parameters** - -- **enterprise_account_id** (`string`, required) The ID of the enterprise account associated with the user. Used to target specific enterprise-level user data. -- **include_fields** (`array[string]`, optional) Specify fields to include in the response. Provide an array of field names (strings). -- **user_emails** (`array[string]`, optional) An array of user email addresses to fetch information for. Provide one or more email strings. -- **user_ids** (`array[string]`, optional) A list of user IDs to fetch details for. Each ID should be a string. - - -## AirtableApi.BatchManageEnterpriseUsers - -
- - -Batch manage users in enterprise accounts. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enterprise_account_id** (`string`, optional) The unique identifier for the enterprise account to manage users within. This must be provided as a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.BatchManageUserMembership - -
- - -Batch manage user membership in enterprise accounts. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enterprise_account_id** (`string`, optional) The unique identifier of the enterprise account in which user membership will be managed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.GrantAdminAccess - -
- - -Grant admin access to specified users. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enterprise_account_id** (`string`, optional) The ID of the enterprise account to which admin access will be granted. Required for processing the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.RevokeAdminAccess - -
- - -Revoke admin access from specified users. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enterprise_account_id** (`string`, optional) The unique identifier for the enterprise account. Required to target the specific account for admin access revocation. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.DeleteEnterpriseUser - -
- - -Deletes an enterprise user by ID. - -**Parameters** - -- **enterprise_account_id** (`string`, required) The unique identifier for the enterprise account containing the user to be deleted. This is required for specifying the account context of the user. -- **user_id** (`string`, required) The unique identifier of the user to be deleted from the enterprise account. - - -## AirtableApi.GetUserInformation - -
- - -Fetch user information by ID from Airtable Enterprise. - -**Parameters** - -- **enterprise_account_id** (`string`, required) The ID of the Airtable Enterprise account associated with the user. This is required to fetch user data. -- **user_id** (`string`, required) The unique identifier for the user whose information is to be retrieved. Provide the user ID as a string. -- **include_fields** (`array[string]`, optional) Specify the list of fields to include in the user information response. Provide as an array of field names. - - -## AirtableApi.ManageEnterpriseAccountUser - -
- - -Manage users in enterprise accounts. - -**Parameters** - -- **enterprise_account_id** (`string`, required) The unique identifier for the enterprise account. Required to manage users within the account. -- **user_id** (`string`, required) The unique identifier for the user to be managed within the enterprise account. -- **update_user_email** (`string`, optional) New email for the user. Ensure enterprise account owns both original and destination domains. Follow SSO steps if applicable. -- **user_first_name** (`string`, optional) The new first name of the user in the enterprise account. -- **user_last_name** (`string`, optional) The last name of the user to be updated in the enterprise account. -- **user_state** (`string`, optional) Specify the user's state as 'provisioned' or 'deactivated'. Only applicable for managed users. - - -## AirtableApi.LogoutEnterpriseUser - -
- - -Logs out an enterprise account user from the system. - -**Parameters** - -- **enterprise_account_id** (`string`, required) The ID of the enterprise account to log the user out from. Required for enterprise-level logout. -- **enterprise_user_id** (`string`, required) The unique identifier of the enterprise user to log out. -- **logout_request_body** (`json`, optional) A JSON object containing necessary details to process the logout request. - - -## AirtableApi.RemoveUserFromEnterprise - -
- - -Unshare a user from all enterprise assets and revoke admin access. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enterprise_account_id** (`string`, optional) The ID of the enterprise account from which the user will be removed. Required to specify the enterprise context for user unsharing. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **user_id** (`string`, optional) The unique identifier of the user to be removed from the enterprise. It is a required string value. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.GetUserGroupInfo - -
- - -Retrieve basic information about a specific user group. - -**Parameters** - -- **user_group_id** (`string`, required) Provide the identifier for the user group to retrieve its basic information. -- **include_additional_info** (`array[string]`, optional) An array of strings specifying additional data to be included in the response, such as 'members' or 'permissions'. - - -## AirtableApi.RetrieveUserIdAndScopes - -
- - -Retrieve user's ID, associated scopes, and email if available. - -**Parameters** - -This tool does not take any parameters. - -## AirtableApi.CreateAirtableWorkspace - -
- - -Create a new workspace in Airtable. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.DeleteWorkspace - -
- - -Deletes a specified Airtable workspace. - -**Parameters** - -- **workspace_id** (`string`, required) The unique identifier of the workspace to delete. Ensure no important data is lost before proceeding. - - -## AirtableApi.GetWorkspaceCollaborators - -
- - -Retrieve information about workspace collaborators and invites. - -**Parameters** - -- **workspace_identifier** (`string`, required) The unique identifier of the workspace to retrieve collaborators and outstanding invites for. Provide the ID as a string. -- **include_additional_information** (`array[string]`, optional) List of additional fields to include in the response. Specify field names as strings, like 'email' or 'role'. - - -## AirtableApi.AddWorkspaceCollaborator - -
- - -Add a collaborator to an Airtable workspace. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **workspace_id** (`string`, optional) The unique identifier of the Airtable workspace where the collaborator will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.RemoveWorkspaceCollaborator - -
- - -Remove a collaborator from an Airtable workspace. - -**Parameters** - -- **collaborator_identifier** (`string`, required) The ID of the user or group to be removed from the workspace. -- **workspace_id** (`string`, required) The unique identifier of the Airtable workspace from which to remove a collaborator. - - -## AirtableApi.UpdateWorkspaceCollaboratorPermission - -
- - -Modify a collaborator's permission level in a workspace. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **workspace_id** (`string`, optional) The unique identifier of the workspace where the collaborator's permissions will be updated. This is required to specify which workspace is being modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **collaborator_id** (`string`, optional) The identifier for the user or group whose permissions are being updated in the workspace. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.DeleteWorkspaceInvite - -
- - -Delete a workspace invite. - -**Parameters** - -- **invite_id** (`string`, required) The unique identifier of the workspace invite to delete. -- **workspace_id** (`string`, required) The ID of the workspace from which the invite will be deleted. This is required to specify which workspace's invite is being revoked. - - -## AirtableApi.MoveAirtableBase - -
- - -Move a base between Airtable workspaces. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **target_workspace_id** (`string`, optional) The ID of the target workspace where the base will be moved. It should be a valid string ID of an existing workspace within the same Airtable enterprise. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.UpdateWorkspaceRestrictions - -
- - -Updates sharing restrictions for an Airtable workspace. - -**Parameters** - -- **workspace_id** (`string`, required) The unique identifier for the Airtable workspace to update restrictions. -- **invite_creation_restriction** (`string`, optional) Defines who can create invites in the workspace. Choose between 'unrestricted' or 'onlyOwners'. -- **share_creation_restriction** (`string`, optional) Specify the sharing creation restriction. Choose between 'unrestricted' or 'onlyOwners'. - - -## AirtableApi.UploadAttachmentToAirtable - -
- - -Upload attachments to an Airtable record's cell. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **airtable_base_id** (`string`, optional) The unique identifier of the Airtable base where the attachment will be uploaded. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **airtable_record_id** (`string`, optional) The unique string identifier for the Airtable record to which the attachment will be uploaded. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **attachment_field_id_or_name** (`string`, optional) The ID or name of the field where the attachment will be uploaded. This specifies the target field in the Airtable record. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.DeleteMultipleRecords - -
- - -Delete multiple records from an Airtable table. - -**Parameters** - -- **base_id** (`string`, required) The unique identifier of the Airtable base containing the records to be deleted. -- **table_identifier** (`string`, required) The unique identifier or name of the Airtable table from which records are to be deleted. -- **record_ids_to_delete** (`array[string]`, optional) An array of record IDs to delete from the table. Each ID should be a string. - - -## AirtableApi.ListAirtableRecords - -
- - -Retrieve records from a specified Airtable table. - -**Parameters** - -- **base_id** (`string`, required) The unique identifier for the Airtable base where the table is located. -- **table_id_or_name** (`string`, required) The ID or name of the Airtable table to retrieve records from. Using table IDs is recommended for consistency. -- **cell_format_method** (`string`, optional) Defines how cell values are returned. Specify 'json' for unformatted or 'string' for formatted values. -- **filter_by_formula** (`string`, optional) A formula string to filter records. Use Airtable's formula syntax where functions and operators will be applied to fields. -- **maximum_records** (`number`, optional) Specify the maximum number of records to retrieve from the Airtable table. -- **output_time_zone** (`string`, optional) Specifies the time zone for datetimes returned in records. Use IANA time zone format (e.g., 'America/Los_Angeles'). -- **page_size** (`number`, optional) Number of records per page to fetch. Default is 100. -- **pagination_offset** (`string`, optional) A string used for pagination to fetch the next set of records. Use the offset provided in the previous response to continue retrieving records. -- **record_metadata_fields** (`array[string]`, optional) An array of strings specifying which metadata fields to include for each record. -- **return_fields_by_field_id** (`boolean`, optional) Return fields by their field ID instead of field name when set to true. -- **sort_order** (`string`, optional) Specifies the order of records. Use a JSON string with fields and directions (asc or desc). -- **specific_fields** (`string`, optional) Comma-separated list of field names to be included in the response. If omitted, all fields are returned. -- **specified_view** (`string`, optional) Specifies the view in the table to be used for record retrieval. Provide the name or ID of the view. -- **user_locale** (`string`, optional) Specify the user locale to determine the language and regional settings for the records. - - -## AirtableApi.UpdateAirtableRecords - -
- - -Update or upsert multiple records in an Airtable table. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **airtable_base_id** (`string`, optional) The unique identifier for the Airtable base where the records will be updated or upserted. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **airtable_table_id_or_name** (`string`, optional) The ID or name of the Airtable table where records will be updated or upserted. Using the table ID is recommended for less disruption if the table name changes. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.CreateAirtableRecords - -
- - -Create multiple records in an Airtable base. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **base_id** (`string`, optional) The unique identifier for the Airtable base where records will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **table_id_or_name** (`string`, optional) The ID or name of the Airtable table where records will be created. Using the table ID is recommended for consistency. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.BulkUpdateAirtable - -
- - -Update or upsert multiple records in an Airtable table. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **base_id** (`string`, optional) The unique ID of the Airtable base containing the records to update. This is required to specify the target base. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **table_identifier** (`string`, optional) The table ID or name in Airtable where the records will be updated. Use the table ID to avoid changes if the name changes. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.DeleteAirtableRecord - -
- - -Deletes a single record from an Airtable base and table. - -**Parameters** - -- **airtable_base_id** (`string`, required) The unique identifier for the Airtable base from which the record will be deleted. This ID is required to specify the correct base. -- **record_id** (`string`, required) The unique identifier of the record to be deleted from the specified table in Airtable. -- **table_identifier** (`string`, required) The ID or name of the Airtable table from which the record should be deleted. This specifies which table within the base to target. - - -## AirtableApi.AirtableGetRecord - -
- - -Retrieve a single record from an Airtable table. - -**Parameters** - -- **airtable_base_id** (`string`, required) The unique identifier for the Airtable base containing the table from which to retrieve the record. This ID is required to locate the correct base and perform the record search. -- **record_id** (`string`, required) The unique identifier for the record you wish to retrieve from the Airtable table. This ID should be valid and correspond to a record within the specified base. -- **table_identifier** (`string`, required) Specify the table's ID or name from which to retrieve the record. -- **cell_format** (`string`, optional) Specify how cell values should be formatted. Options may include 'json' or 'string'. -- **return_fields_by_field_id** (`boolean`, optional) If true, fields are returned by Field ID instead of names. - - -## AirtableApi.UpdateAirtableRecord - -
- - -Update a single Airtable record with specified fields. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **base_id** (`string`, optional) The unique identifier of the Airtable base where the record exists. This ID is required to specify which base to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **table_id_or_name** (`string`, optional) The identifier or name of the Airtable table where the record resides. Using table IDs is recommended for stability. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **airtable_record_id** (`string`, optional) The unique identifier for the Airtable record you want to update. It is required to specify which record to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.ModifyAirtableEntry - -
- - -Update a specific record in an Airtable table. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **base_id** (`string`, optional) The unique identifier for the Airtable base. This specifies which base the record belongs to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **table_identifier** (`string`, optional) The unique identifier or name of the Airtable table where the record resides. Prefer using table IDs to avoid changes when table names are updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **record_identifier** (`string`, optional) Unique identifier for the Airtable record to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.GetRecordComments - -
- - -Retrieve comments for a specific record in Airtable. - -**Parameters** - -- **base_id** (`string`, required) The unique identifier for the Airtable base containing the record. -- **record_id** (`string`, required) Unique identifier for the record in Airtable whose comments are to be retrieved. -- **table_identifier** (`string`, required) The unique ID or name of the table containing the record. Specify either the ID or name to locate the table. -- **pagination_offset** (`string`, optional) A string used for pagination to fetch the next set of comments. Generally returned from a previous API call. -- **results_page_size** (`number`, optional) Number of comments to return per page. Useful for pagination. - - -## AirtableApi.AddRecordComment - -
- - -Creates a comment on a specified record. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **base_identifier** (`string`, optional) The unique identifier of the Airtable base where the record is located. This is required to specify which base contains the record you want to comment on. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **table_identifier** (`string`, optional) The ID or name of the table where the record is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **record_identifier** (`string`, optional) The unique identifier of the record where the comment will be added. This value specifies which record in Airtable will receive the comment. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.DeleteCommentFromRecord - -
- - -Delete a comment from a record in Airtable. - -**Parameters** - -- **airtable_base_id** (`string`, required) The ID of the Airtable base. This is required to identify which base the comment belongs to. -- **comment_id_to_delete** (`string`, required) The unique identifier of the comment to be deleted. Required for deletion. -- **record_id** (`string`, required) The unique identifier for the record from which the comment will be deleted. -- **table_id_or_name** (`string`, required) The ID or name of the table containing the record from which the comment will be deleted. - - -## AirtableApi.UpdateRecordComment - -
- - -Update a comment on a specific record. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **base_identifier** (`string`, optional) The unique identifier for the Airtable base containing the record. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **table_id_or_name** (`string`, optional) The ID or name of the Airtable table where the record with the comment is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **record_id** (`string`, optional) The unique identifier of the record whose comment you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **comment_id** (`string`, optional) The unique identifier of the comment to update. Ensure it belongs to the authorized user. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.DeleteRecordsByPrimaryKeys - -
- - -Delete records from a HyperDB table using primary keys. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enterprise_account_id** (`string`, optional) The unique identifier for the enterprise account. Required to access the correct HyperDB table. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **data_table_id** (`string`, optional) The unique identifier for the target HyperDB table from which records will be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AirtableApi.ReadHyperdbTableRecords - -
- - -Retrieve records from a specified HyperDB table. - -**Parameters** - -- **data_table_id** (`string`, required) The identifier of the HyperDB table from which records are to be retrieved. It is required to specify the correct table ID to access the corresponding data. -- **enterprise_account_id** (`string`, required) The unique identifier for the enterprise account. Required to access records from the specified HyperDB table. -- **fields_to_retrieve** (`array[string]`, optional) List of field names to retrieve from the HyperDB table records. Specify as an array of strings. -- **maximum_records_to_retrieve** (`number`, optional) The maximum number of records to retrieve from the HyperDB table. Specify an integer value to limit the number of records returned. -- **pagination_cursor** (`string`, optional) A string representing the position within the dataset to start retrieving records from. Use for paginated data retrieval. -- **primary_keys_to_retrieve** (`array[string]`, optional) An array of primary key strings to specify which records to retrieve from the HyperDB table. - - -## AirtableApi.UpsertAirtableRecords - -
- - -Update or insert records in an Airtable HyperDB table. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enterprise_account_id** (`string`, optional) The identifier for the Airtable enterprise account. Required for accessing the HyperDB table. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **data_table_id** (`string`, optional) The identifier for the HyperDB data table in Airtable. Required for targeting the specific table for upsert operations. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - - -## Reference - -Below is a reference of enumerations used by some of the tools in the AirtableApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - ---- - -## Auth - -The Arcade Airtable MCP Server uses the [Airtable auth provider](/references/auth-providers/airtable) to connect to users' Airtable accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Airtable auth provider](/references/auth-providers/airtable#configuring-airtable-auth) with your own Airtable app credentials. - - \ No newline at end of file diff --git a/app/en/resources/integrations/productivity/asana-api/page.mdx b/app/en/resources/integrations/productivity/asana-api/page.mdx deleted file mode 100644 index ad8634d03..000000000 --- a/app/en/resources/integrations/productivity/asana-api/page.mdx +++ /dev/null @@ -1,5344 +0,0 @@ -# AsanaApi -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The AsanaApi MCP Server offers a comprehensive suite of tools for managing and interacting with Asana's features. Users can perform a variety of actions, including: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your - own tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## AsanaApi.GetPendingAccessRequests - -
- - -Fetch pending access requests for a target object. - -**Parameters** - -- **target_object_id** (`string`, required) Globally unique identifier for the target object in Asana. -- **enable_pretty_output** (`boolean`, optional) Set to true for readable, indented output. Use primarily for debugging due to increased response size. -- **filter_by_user** (`string`, optional) User identifier to filter requests. Accepts 'me', an email, or a user gid. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. - - -## AsanaApi.SubmitAccessRequestAsana - -
- - -Submit a new access request for Asana projects or portfolios. - -**Parameters** - -- **access_request_message** (`string`, optional) Optional message providing context or additional information for the access request. -- **target_gid** (`string`, optional) The GID of the project or portfolio you are requesting access to in Asana. - - -## AsanaApi.ApproveAccessRequest - -
- - -Approves an access request for a target object in Asana. - -**Parameters** - -- **access_request_global_id** (`string`, required) Globally unique identifier for the specific access request to approve. - - -## AsanaApi.RejectAccessRequest - -
- - -Reject an access request for a target object. - -**Parameters** - -- **access_request_identifier** (`string`, required) Globally unique identifier for the access request to be rejected. This value is required for identifying which access request to reject in Asana. - - -## AsanaApi.GetAllocationRecord - -
- - -Fetch the complete allocation record for a given ID. - -**Parameters** - -- **allocation_unique_id** (`string`, required) Globally unique identifier for the allocation to fetch the complete record. -- **enable_pretty_output** (`boolean`, optional) Set to true to receive the response in a pretty, readable format. Useful for debugging, but increases response size and time. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response, as some properties are excluded by default. - - -## AsanaApi.UpdateAllocation - -
- - -Update an existing allocation in Asana. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **allocation_global_id** (`string`, optional) Globally unique identifier for the allocation to be updated. This is required to specify which allocation record to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Set to true to receive the response in a more readable, formatted JSON output. This increases response size and should be used mainly for debugging purposes. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.DeleteAllocation - -
- - -Deletes a specific allocation in Asana. - -**Parameters** - -- **allocation_id** (`string`, required) Globally unique identifier for the allocation to be deleted. -- **pretty_formatting** (`boolean`, optional) Provide pretty JSON formatting for better readability, recommended for debugging. - - -## AsanaApi.GetProjectAllocations - -
- - -Retrieve allocations for a specific project, user, or placeholder. - -**Parameters** - -- **assignee_id** (`string`, optional) Globally unique identifier for the user or placeholder the allocation is assigned to. -- **enable_pretty_output** (`boolean`, optional) Enable pretty output format for JSON. Use this for easier reading during debugging, as it increases response size and processing time. -- **include_optional_properties** (`array[string]`, optional) List properties to include in the response, provided as a list of strings. Provides access to additional data fields. -- **pagination_offset** (`string`, optional) Offset token for pagination. Use this to retrieve the next page of results. If not provided, the first page will be returned. Only use offsets returned from previous requests. -- **project_id** (`string`, optional) Globally unique identifier for the project to filter allocations by. -- **results_per_page** (`integer`, optional) The number of allocations to return per page, between 1 and 100. -- **workspace_id** (`string`, optional) Globally unique identifier for the workspace to filter allocations by. - - -## AsanaApi.CreateAllocation - -
- - -Creates a new allocation in Asana and returns its details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **optional_properties_to_include** (`array[string]`, optional) List the properties to include that are not included by default in the allocation resource response. Provide as an array of strings. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the response to improve readability with line breaks and indentation. Recommended only for debugging due to increased response time and size. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.FetchAttachmentDetails - -
- - -Fetch the full record of a specific attachment. - -**Parameters** - -- **attachment_unique_id** (`string`, required) The globally unique identifier for the attachment in Asana. -- **enable_pretty_output** (`boolean`, optional) Set to true for pretty-printed JSON output. Increases response size and time; recommended for debugging. -- **include_optional_properties** (`array[string]`, optional) An array of properties to include in the response. Specify which additional fields you want in the returned attachment record. - - -## AsanaApi.DeleteAttachment - -
- - -Delete a specific attachment in Asana. - -**Parameters** - -- **attachment_unique_id** (`string`, required) Globally unique identifier for the attachment to be deleted. -- **pretty_output_enabled** (`boolean`, optional) Set to true to return the response in a readable format with line breaks and indentation. Use for debugging, as it increases response time and size. - - -## AsanaApi.GetAttachments - -
- - -Retrieve all attachments for a specified Asana object. - -**Parameters** - -- **object_gid** (`string`, required) Globally unique identifier for the Asana object to fetch attachments from, such as a `project`, `project_brief`, or `task`. -- **enable_pretty_output** (`boolean`, optional) Return the response in a readable format with line breaks and indentation. Recommended for debugging as it may increase response size and time. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of properties to include, which are excluded by default. -- **pagination_offset_token** (`string`, optional) Token for pagination. Use this to get the next page of results. If omitted, the first page is returned. Use only tokens from previous responses. -- **results_per_page** (`integer`, optional) Number of objects to return per page, must be between 1 and 100. - - -## AsanaApi.RetrieveAuditLogEvents - -
- - -Retrieve audit log events from your Asana domain. - -**Parameters** - -- **workspace_unique_id** (`string`, required) Globally unique identifier for the workspace or organization to filter the audit log events. -- **actor_id_filter** (`string`, optional) Filter events to those triggered by the actor with this unique ID. -- **actor_type_filter** (`string`, optional) Specify the actor type to filter events. Use only if not querying by actor ID. -- **event_type_filter** (`string`, optional) Specify the type of events to filter. Refer to the supported audit log events for valid types. -- **filter_by_resource_id** (`string`, optional) Filter events based on the specific resource ID to retrieve only those associated with this ID. -- **filter_events_end_time** (`string`, optional) Filter events to include only those created before this date and time (exclusive). -- **pagination_offset** (`string`, optional) Offset token to specify the starting point for retrieving the next page of results. Use the token from the previous response to continue paging through results. Leaving this unset will fetch the first page. -- **results_per_page** (`integer`, optional) Set the number of audit log events to return per page of results, between 1 and 100. -- **start_time_filter** (`string`, optional) Filter events created on or after this time (inclusive). Provide in ISO 8601 format. - - -## AsanaApi.CreateParallelRequestsAsana - -
- - -Execute multiple requests to Asana's API simultaneously. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **include_optional_fields** (`array[string]`, optional) A list of optional properties to include in the response. Provide as an array of strings. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Enable pretty output format with line breaks and indentation. Useful for debugging but may increase response size and time. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetCustomFieldSettingsForProject - -
- - -Get custom field settings for a specified project. - -**Parameters** - -- **project_id** (`string`, required) Globally unique identifier for the Asana project to retrieve custom field settings. -- **enable_pretty_output** (`boolean`, optional) Enable to receive a pretty, human-readable response with line breaks and indentation. Increases response time and size, use for debugging. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of property names to include in the response, expanding beyond the default fields. -- **pagination_offset_token** (`string`, optional) An offset token for pagination. Use the token from a previous request to get the next page of results. If not provided, it returns the first page. -- **results_per_page** (`integer`, optional) Specify the number of custom field settings to return per page, between 1 and 100. - - -## AsanaApi.GetPortfolioCustomFieldSettings - -
- - -Retrieve custom field settings for an Asana portfolio. - -**Parameters** - -- **portfolio_unique_id** (`string`, required) Globally unique identifier for the portfolio in Asana. -- **include_optional_fields** (`array[string]`, optional) List optional properties to include in the response, specified as an array of strings. -- **pagination_offset_token** (`string`, optional) Offset token to fetch the next page of results. Use a token returned from a previous request. If not provided, the first page of results will be returned. -- **pretty_output** (`boolean`, optional) Set to true for pretty-formatted JSON output, with line breaks and indentation, mainly for debugging purposes. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. Must be between 1 and 100. - - -## AsanaApi.CreateCustomFieldInWorkspace - -
- - -Create a new custom field in an Asana workspace. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **include_optional_properties** (`array[string]`, optional) A list of optional property names to include in the response. Ensure these do not conflict with defaults. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Set to true to receive a JSON response with line breaks and indentation for better readability, mainly for debugging purposes. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetCustomFieldMetadata - -
- - -Retrieve complete metadata of a custom field in Asana. - -**Parameters** - -- **custom_field_id** (`string`, required) Globally unique identifier for the custom field in Asana to retrieve its metadata. -- **enable_pretty_output** (`boolean`, optional) Enable pretty printing for the output, making it more readable. Ideal for debugging, but increases response time and size. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. - - -## AsanaApi.UpdateAsanaCustomField - -
- - -Update specific fields of an Asana custom field. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **custom_field_global_id** (`string`, optional) Globally unique identifier for the custom field to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response, as the endpoint excludes some by default. Only used when mode is 'execute'. -- **pretty_output** (`boolean`, optional) Set to true to receive a pretty-formatted output with line breaks and indentation. Increases response time and size, suitable for debugging. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.DeleteCustomField - -
- - -Delete a specific custom field in Asana. - -**Parameters** - -- **custom_field_id** (`string`, required) The unique global identifier for the custom field to be deleted. -- **pretty_output** (`boolean`, optional) Set to true for a formatted and indented response; mainly for debugging. - - -## AsanaApi.GetCustomFieldsForWorkspace - -
- - -Retrieve custom fields for a specific workspace. - -**Parameters** - -- **workspace_identifier** (`string`, required) Globally unique identifier for the workspace or organization in Asana. -- **enable_pretty_output** (`boolean`, optional) Enable pretty printed output for the response, useful for debugging. This increases response time and size. -- **include_optional_properties** (`array[string]`, optional) A list of properties to include in the response for a workspace's custom fields. Include values such as 'name', 'type', etc. -- **pagination_offset_token** (`string`, optional) An offset token for pagination. Use a token from a previous request to continue where it left off. If not used, retrieves the first page. -- **results_per_page** (`integer`, optional) Specifies the number of custom fields to return per page, between 1 and 100. - - -## AsanaApi.AddEnumOptionToCustomField - -
- - -Add an enum option to a custom field in Asana. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **custom_field_identifier** (`string`, optional) Globally unique identifier for the custom field in Asana. Use this to specify the field you want to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) List of properties to include in the response that are excluded by default. Provide these as an array of strings. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Enable to receive a readable JSON response with line breaks and indentation. Use primarily for debugging as it increases response size and time. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.ReorderEnumOptionCustomField - -
- - -Reorder enum options in a custom field. - -**Parameters** - -- **custom_field_id** (`string`, required) Globally unique identifier for the custom field to be modified. -- **enable_pretty_output** (`boolean`, optional) Enable pretty output for a more readable JSON response format, useful for debugging. -- **enum_option_gid_to_relocate** (`string`, optional) The globally unique identifier (GID) of the enum option to relocate within the custom field. -- **include_optional_properties** (`array[string]`, optional) A list of resource properties to include in the response, which are excluded by default. This should be a list of strings. -- **insert_after_enum_option** (`string`, optional) The ID of an existing enum option after which the new option should be inserted. Cannot be used with 'insert_before_enum_option'. -- **insert_before_enum_option_gid** (`string`, optional) GID of an existing enum option before which the new option should be inserted. Cannot be used with after_enum_option. - - -## AsanaApi.UpdateEnumOption - -
- - -Update an existing enum option in Asana custom fields. - -**Parameters** - -- **enum_option_gid** (`string`, required) The globally unique identifier for the enum option to update. -- **enum_option_color** (`string`, optional) The color of the enum option. Defaults to 'none' if not provided. -- **enum_option_enabled** (`boolean`, optional) Indicates if the enum option is selectable for the custom field. Provide 'true' to make it selectable, 'false' otherwise. -- **enum_option_name** (`string`, optional) The name of the enum option to be updated. -- **include_optional_properties** (`array[string]`, optional) Provide a list of properties to include in the response, beyond the default set. -- **pretty_output** (`boolean`, optional) Set to true to receive the response in a pretty-printed format. Increases response time and size, useful for debugging. -- **resource_gid** (`string`, optional) Globally unique identifier for the resource as a string. -- **resource_type** (`string`, optional) The base type of the resource, specified as a string. This is necessary for updating the enum option. - - -## AsanaApi.GetCustomTypes - -
- - -Retrieve all custom types for a project in Asana. - -**Parameters** - -- **project_id** (`string`, required) Globally unique identifier for the project to filter custom types. -- **enable_pretty_output** (`boolean`, optional) Set to true for pretty-printed JSON output during debugging. Increases response size and time. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of properties to include in the response for additional details. -- **next_page_offset_token** (`string`, optional) Offset token from a previous response to fetch the next page of results. If not provided, the first page will be returned. -- **results_per_page** (`integer`, optional) Number of custom types to return per page. Must be between 1 and 100. - - -## AsanaApi.GetCustomTypeDetails - -
- - -Retrieve complete details of a specific custom type in Asana. - -**Parameters** - -- **custom_type_id** (`string`, required) Globally unique identifier for the custom type in Asana. -- **enable_pretty_output** (`boolean`, optional) If true, the response is formatted with line breaks and indentation for readability. Use this for debugging; it may increase response time and size. -- **include_optional_fields** (`array[string]`, optional) A list of property names to include in the response for the custom type. These are optional fields that are not included by default. - - -## AsanaApi.FetchAsanaEvents - -
- - -Fetches detailed records of recent Asana events. - -**Parameters** - -- **target_resource_id** (`string`, required) The ID of the resource to subscribe to. It can be a task, project, or goal. -- **enable_pretty_output** (`boolean`, optional) Enable pretty JSON output with line breaks and indentation for readability; primarily for debugging. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of property names to include in the response for more detailed event records. -- **sync_token** (`string`, optional) A sync token from the last request, or omit on the first sync to receive events from the start point. Ensure to handle the token for continued syncing. - - -## AsanaApi.InitiateGraphExport - -
- - -Initiate a graph export job for Asana objects. - -**Parameters** - -- **parent_object_id** (`string`, optional) Globally unique ID of the Asana parent object: goal, project, portfolio, or team. - - -## AsanaApi.InitiateBulkResourceExport - -
- - -Initiate a bulk export of tasks, teams, or messages in a workspace. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetGoalRelationshipDetails - -
- - -Retrieve details of a specific Asana goal relationship. - -**Parameters** - -- **goal_relationship_identifier** (`string`, required) Globally unique identifier for the goal relationship you want to retrieve. -- **enable_pretty_output** (`boolean`, optional) Enables pretty formatting for the response, increasing readability but also response size and time. Use for debugging. -- **include_optional_properties** (`array[string]`, optional) A comma-separated list of optional properties to include in the response. Use this to include properties that are not returned by default. - - -## AsanaApi.UpdateGoalRelationship - -
- - -Update an existing goal relationship in Asana. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **goal_relationship_unique_id** (`string`, optional) The globally unique identifier for the specific goal relationship to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) Specify properties to include in the response. Provide as a list of property names, which will include optional fields in the returned goal relationship. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Set to true for a readable response with indentation. Increases response size/time, recommended for debugging. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetGoalRelationships - -
- - -Retrieve compact goal relationship records from Asana. - -**Parameters** - -- **supported_goal_id** (`string`, required) Globally unique identifier for the supported goal in the goal relationship. -- **enable_pretty_output** (`boolean`, optional) Set to true for pretty JSON output with indentation. Use mainly for debugging as it increases response size and time. -- **goal_relationship_resource_subtype** (`string`, optional) Filter goal relationships by a specific resource subtype. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. Allows access to additional fields excluded by default. -- **pagination_offset** (`string`, optional) Token to specify the starting point for the next page of results. Use the token from the previous response to continue pagination. -- **results_per_page** (`integer`, optional) Specify the number of goal relationship records to return per page. Must be between 1 and 100. - - -## AsanaApi.CreateGoalSupportingRelationship - -
- - -Add a supporting resource to a specific goal in Asana. - -**Parameters** - -- **goal_global_identifier** (`string`, required) Globally unique identifier for the goal to which a supporting resource will be added. -- **enable_pretty_output** (`boolean`, optional) Enable to receive the response in a formatted and indented manner for easier readability. Recommended for debugging purposes as it increases response time and size. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional resource properties to include in the response. -- **insert_after_subgoal_id** (`string`, optional) ID of the subgoal to insert the new subgoal after. Cannot use with `insert_before`. Only for subgoal addition. -- **insert_subgoal_before_id** (`string`, optional) The ID of an existing subgoal. The new subgoal will be placed before this subgoal. Cannot be used with `insert_after_subgoal_id`. Only for adding subgoals. -- **supporting_goal_contribution_weight** (`integer`, optional) A number between 0 and 1 indicating the supporting goal's contribution to the parent goal's progress. Defaults to 0. -- **supporting_resource_id** (`string`, optional) The GID of the supporting resource to add to the parent goal. It must be the GID of a goal, project, task, or portfolio. - - -## AsanaApi.RemoveGoalRelationship - -
- - -Removes a supporting relationship from a goal in Asana. - -**Parameters** - -- **goal_global_id** (`string`, required) Globally unique identifier for the goal to identify which goal is being modified. -- **provide_pretty_output** (`boolean`, optional) Provides pretty-printed output for debugging, enhancing readability with line breaks and indentation. Increases response size and time. -- **supporting_resource_gid** (`string`, optional) The globally unique identifier (gid) of the supporting resource (goal, project, task, or portfolio) to remove from the parent goal. - - -## AsanaApi.GetAsanaGoalDetails - -
- - -Fetches detailed information for a specific Asana goal. - -**Parameters** - -- **goal_global_identifier** (`string`, required) Globally unique identifier for the goal to be retrieved. -- **enable_pretty_output** (`boolean`, optional) If true, formats the response with line breaks and indentation for readability, increasing response size and time. -- **include_optional_fields** (`array[string]`, optional) Specify optional properties to include in the response as a list of strings. - - -## AsanaApi.UpdateAsanaGoal - -
- - -Update a specific goal in Asana. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **goal_unique_id** (`string`, optional) Globally unique identifier for the goal to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **included_goal_properties** (`array[string]`, optional) List of optional goal properties to include in the response. Provide as an array of strings. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Set to true to format the response with line breaks and indentation for readability. Mainly for debugging as it increases response size. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.DeleteAsanaGoal - -
- - -Delete a specific goal in Asana. - -**Parameters** - -- **goal_identifier** (`string`, required) The unique global identifier for the specific Asana goal to delete. -- **enable_pretty_output** (`boolean`, optional) If true, provides pretty JSON output with indentation and line breaks for readability. Recommended for debugging due to increased response size and time. - - -## AsanaApi.GetCompactGoals - -
- - -Retrieve compact goal records from Asana. - -**Parameters** - -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for readable JSON response. Mainly for debugging; increases response time and size. -- **included_optional_properties** (`array[string]`, optional) A list of specific properties to include in the response. Use a comma-separated list format. -- **is_workspace_level** (`boolean`, optional) Set to true to filter for goals where the workspace level is active. Must be used with the workspace parameter. -- **pagination_offset_token** (`string`, optional) Offset token for pagination. Use the token from a previous response to retrieve the next page. If not provided, returns the first page. -- **portfolio_id** (`string`, optional) Globally unique identifier for the supporting portfolio in Asana. -- **project_id** (`string`, optional) Globally unique identifier for the project. Used to filter goals associated with a specific project. -- **results_per_page** (`integer`, optional) The number of goal records to return per page. Must be between 1 and 100. -- **supporting_task_id** (`string`, optional) Globally unique identifier for the supporting task in Asana. -- **team_id** (`string`, optional) Globally unique identifier for the team. Use this to filter goals associated with a specific team. -- **time_period_identifiers** (`array[string]`, optional) A list of globally unique identifiers for the desired time periods to filter the goals. -- **workspace_id** (`string`, optional) Globally unique identifier for the workspace. - - -## AsanaApi.CreateAsanaGoal - -
- - -Create a new goal in Asana workspace or team. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response for a more comprehensive goal record. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Enables pretty formatting for the API response, useful for debugging. Increases response time and size. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.CreateGoalMetric - -
- - -Create and add a goal metric to a specific goal. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **goal_global_id** (`string`, optional) Globally unique identifier for the goal to which the metric will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) Specify the optional properties to include in the response as a list of strings. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Set to true for formatted, human-readable output in JSON. Ideal for debugging. May increase response time and size. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.UpdateGoalMetric - -
- - -Updates a goal's current metric value in Asana. - -**Parameters** - -- **goal_unique_identifier** (`string`, required) Globally unique identifier for the Asana goal to be updated. -- **current_metric_value** (`number`, optional) The current numeric value of a goal metric. Required if metric type is number. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. -- **pretty_output** (`boolean`, optional) Set to true for a more readable response format, useful for debugging. -- **resource_base_type** (`string`, optional) The base type of the resource to update. It must be a string indicating the type of resource. -- **resource_unique_identifier** (`string`, optional) Globally unique identifier of the resource in Asana, represented as a string. - - -## AsanaApi.AddFollowersToGoal - -
- - -Add followers to a specific goal in Asana. - -**Parameters** - -- **goal_unique_id** (`string`, required) Globally unique identifier for the goal to which you want to add followers. -- **enable_pretty_output** (`boolean`, optional) Set to true to receive the response in a human-readable format with proper indentation and line breaks. Useful for debugging but increases response size and time. -- **optional_properties_to_include** (`array[string]`, optional) Comma-separated list of optional properties to include in the response for additional details. -- **user_identifiers_array** (`array[string]`, optional) An array of user identifiers to add as followers. These can be 'me', emails, or user gids. - - -## AsanaApi.RemoveGoalFollowers - -
- - -Remove followers from a specific goal in Asana. - -**Parameters** - -- **goal_unique_id** (`string`, required) Globally unique identifier for the goal to remove followers from. -- **enable_pretty_output** (`boolean`, optional) Enable pretty JSON output with line breaking and indentation. Useful for debugging; increases response time and size. -- **followers_to_remove** (`array[string]`, optional) An array of user identifiers to remove as followers. These can be "me", an email, or a user gid. -- **included_optional_fields** (`array[string]`, optional) Comma-separated list of optional properties to include in the response for additional details. - - -## AsanaApi.GetParentGoalsForGoal - -
- - -Fetches parent goals for a specific Asana goal. - -**Parameters** - -- **goal_unique_identifier** (`string`, required) Globally unique identifier for the Asana goal whose parent goals are to be fetched. -- **include_optional_properties** (`array[string]`, optional) List of optional properties to include in the response. It should be a comma-separated list of strings. -- **pretty_output_enabled** (`boolean`, optional) Set to true for a readable output format with line breaks and indentation, suitable for debugging. May increase response size and time. - - -## AsanaApi.FetchJobDetails - -
- - -Fetch complete details for a specific job record in Asana. - -**Parameters** - -- **job_id** (`string`, required) Globally unique identifier for the job to fetch details for. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response for the job. -- **opt_pretty** (`boolean`, optional) Set to true for pretty output with line breaks and indentation. Use this for debugging as it increases response time and size. - - -## AsanaApi.GetMemberships - -
- - -Retrieve compact membership records from Asana. - -**Parameters** - -- **enable_pretty_output** (`boolean`, optional) Enable pretty JSON output with line breaks and indentation for readability. Use for debugging purposes as it may increase response time and size. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional fields to include in the response. -- **member_identifier** (`string`, optional) Globally unique identifier for a team or user to filter specific memberships. -- **pagination_offset_token** (`string`, optional) Token for pagination. Use the offset from a previous API response to get the next page of results. -- **parent_id** (`string`, optional) Globally unique identifier for a goal, project, portfolio, or custom field in Asana. -- **results_per_page** (`integer`, optional) Specifies the number of objects to return per page. Must be between 1 and 100. - - -## AsanaApi.CreateAsanaMembership - -
- - -Create a new membership in Asana for goals, projects, portfolios, or custom fields. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **enable_pretty_output** (`boolean`, optional) If true, returns the response in a formatted JSON with line breaks and indentation. Recommended only for debugging, as it increases response size and processing time. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetMembershipInfo - -
- - -Retrieve membership record details by ID. - -**Parameters** - -- **membership_id** (`string`, required) Globally unique identifier for the membership. Used to specify which membership record to retrieve. -- **enable_pretty_output** (`boolean`, optional) Enable pretty output with indentation and line breaks for readability. Use for debugging as it increases response size and time. - - -## AsanaApi.UpdateMembership - -
- - -Update an existing membership in Asana. - -**Parameters** - -- **membership_id** (`string`, required) Globally unique identifier for the membership to update. -- **enable_pretty_output** (`boolean`, optional) If true, formats the response for readability with line breaks and indentation, useful for debugging. -- **member_access_level** (`string`, optional) Specify the access level for the member. Valid options depend on the membership type: Goals ('viewer', 'commenter', 'editor', 'admin'), Projects ('admin', 'editor', 'commenter'), Portfolios ('admin', 'editor', 'viewer'), Custom Fields ('admin', 'editor', 'user'). - - -## AsanaApi.DeleteAsanaMembership - -
- - -Delete a membership in Asana. - -**Parameters** - -- **membership_id** (`string`, required) Globally unique identifier for the membership to be deleted. -- **pretty_output_enabled** (`boolean`, optional) Enable pretty-printed JSON format for a more readable response. Recommended for debugging, as it increases response time and size. - - -## AsanaApi.RequestOrganizationExport - -
- - -Submit a request to export an organization in Asana. - -**Parameters** - -- **enable_pretty_output** (`boolean`, optional) Enable to receive the response in a formatted JSON with proper indentation. Increases response size and time; use primarily for debugging. -- **include_optional_properties** (`array[string]`, optional) List of property names to include in the export, separated by commas. Use to include non-default properties. -- **organization_id** (`string`, optional) Globally unique identifier for the workspace or organization to be exported in Asana. - - -## AsanaApi.GetOrganizationExportDetails - -
- - -Fetch details of a specific organization export. - -**Parameters** - -- **organization_export_id** (`string`, required) Globally unique identifier for the organization export. Required to retrieve the export details. -- **enable_pretty_output** (`boolean`, optional) Set to true for a human-readable response with line breaks and indentation. Recommended for debugging due to increased response size. -- **include_optional_properties** (`array[string]`, optional) Optional properties to include in the response, as a list of strings. This specifies which additional fields should be returned with the organization export details. - - -## AsanaApi.GetPortfolioMemberships - -
- - -Retrieve portfolio memberships from Asana. - -**Parameters** - -- **enable_pretty_output** (`boolean`, optional) Enable pretty output formatting with indentation for readability. Ideal for debugging, it increases response time and size. -- **include_optional_fields** (`array[string]`, optional) A list of optional properties to include in the response. Provide them as an array of strings. -- **pagination_offset_token** (`string`, optional) Token for pagination to retrieve the next page of results. Use the offset provided by a previous response. -- **portfolio_filter** (`string`, optional) Specify the portfolio ID to filter the results. -- **results_per_page** (`integer`, optional) Specifies the number of portfolio memberships to return per page, between 1 and 100. -- **user_identifier** (`string`, optional) A string identifier for a user: "me", an email, or the user's gid. -- **workspace_filter** (`string`, optional) Specify the workspace to filter portfolio membership results. This should match the workspace identifier used in Asana. - - -## AsanaApi.GetPortfolioMembership - -
- - -Retrieve a single portfolio membership record. - -**Parameters** - -- **portfolio_membership_id** (`string`, required) The unique identifier for the portfolio membership to retrieve. -- **enable_pretty_output** (`boolean`, optional) If true, enables pretty JSON output with line breaking and indentation, increasing response size and time. Useful for debugging. -- **include_optional_properties** (`array[string]`, optional) A list of optional properties to include in the response, specified as strings. - - -## AsanaApi.RetrievePortfolioMemberships - -
- - -Retrieve compact portfolio membership records for a portfolio. - -**Parameters** - -- **portfolio_identifier** (`string`, required) Globally unique identifier for the portfolio required to fetch membership records. -- **enable_pretty_output** (`boolean`, optional) Set to true to receive a readable, formatted response. Use this primarily for debugging due to increased response size and time. -- **include_optional_fields** (`array[string]`, optional) Specify a list of optional properties to include, using a comma-separated list. -- **pagination_offset_token** (`string`, optional) Offset token used for pagination to retrieve the next page of results. Use the token returned from a previous request. -- **results_per_page** (`integer`, optional) Number of portfolio memberships to return per page, between 1 and 100. -- **user_identifier** (`string`, optional) A string identifying a user. This can be 'me', an email, or the user's gid. - - -## AsanaApi.GetUserOwnedPortfolios - -
- - -Retrieve a list of portfolios owned by the user. - -**Parameters** - -- **workspace_identifier** (`string`, required) The unique identifier for the workspace or organization to filter portfolios on. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the output, improving readability with line breaks and indentation. This may increase response size and time, suitable for debugging. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of properties to include in the response, allowing retrieval of additional optional fields. -- **pagination_offset_token** (`string`, optional) A token to retrieve the next page of results. Use the offset token from a previous API response for pagination. If omitted, returns the first page. -- **portfolio_owner_identifier** (`string`, optional) Specify the user who owns the portfolio. Only applicable if using a Service Account for accessing portfolios owned by different users. -- **results_per_page** (`integer`, optional) The number of portfolios to return per page. Must be between 1 and 100. - - -## AsanaApi.CreateAsanaPortfolio - -
- - -Create a new portfolio in an Asana workspace. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **include_optional_fields** (`array[string]`, optional) List the optional properties to include in the response, such as ['name', 'members']. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) If true, formats the response with line breaks and indentation for easier readability. Recommended for debugging as it may increase response size and time. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetPortfolioDetails - -
- - -Retrieve complete details of a specific portfolio in Asana. - -**Parameters** - -- **portfolio_unique_id** (`string`, required) Globally unique identifier for the specific portfolio to retrieve details. -- **enable_pretty_output** (`boolean`, optional) Set to true for pretty, readable formatting of the output. Useful for debugging, but increases response size and time. -- **include_optional_properties** (`array[string]`, optional) List of properties to include in the response. Specify as a list of strings for fields you wish to include, as the API excludes some by default. - - -## AsanaApi.UpdatePortfolio - -
- - -Update an existing Asana portfolio. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **portfolio_unique_identifier** (`string`, optional) Globally unique identifier for the portfolio to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_fields** (`array[string]`, optional) A list of optional portfolio properties to include in the response, specified as an array of strings. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Provides formatted and indented output. Use primarily for debugging as it increases response size and processing time. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.DeletePortfolio - -
- - -Delete an existing portfolio in Asana. - -**Parameters** - -- **portfolio_global_id** (`string`, required) Globally unique identifier for the portfolio to be deleted. -- **enable_pretty_output** (`boolean`, optional) Enable this to receive a 'pretty' formatted JSON response, advisable for debugging only as it increases response time and size. - - -## AsanaApi.GetPortfolioItems - -
- - -Retrieve a list of items in a portfolio. - -**Parameters** - -- **portfolio_unique_id** (`string`, required) Globally unique identifier for the portfolio. Required to fetch items for a specific portfolio. -- **enable_pretty_output** (`boolean`, optional) If true, the response will be formatted for readability with line breaks and indentation. Recommended for debugging as this can increase response size and time. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. -- **pagination_offset_token** (`string`, optional) Token for offsetting to the next page of results. Use a token from previous pagination to retrieve subsequent pages. -- **results_per_page** (`integer`, optional) The number of items to return per page, between 1 and 100. - - -## AsanaApi.AddItemToPortfolio - -
- - -Add an item to a portfolio in Asana. - -**Parameters** - -- **portfolio_unique_id** (`string`, required) Globally unique identifier for the portfolio to which the item will be added. -- **add_after_item_id** (`string`, optional) ID of an item in the portfolio where the new item will be added after. Cannot be used with 'add_before_item_id'. -- **enable_pretty_output** (`boolean`, optional) Enable pretty JSON formatting for debugging. This increases response size and processing time. -- **insert_item_before_id** (`string`, optional) ID of an existing portfolio item. The new item will be placed before this item. Cannot be used with `insert_after_id`. -- **item_to_add_to_portfolio** (`string`, optional) The ID of the item to be added to the Asana portfolio. - - -## AsanaApi.RemoveItemFromPortfolio - -
- - -Remove an item from a portfolio in Asana. - -**Parameters** - -- **portfolio_identifier** (`string`, required) Globally unique identifier for the portfolio to remove the item from. -- **enable_pretty_output** (`boolean`, optional) Enable this to receive the response in a readable, formatted way. This can increase response size and is best for debugging. -- **item_to_remove** (`string`, optional) Specify the ID of the item to be removed from the portfolio. - - -## AsanaApi.AddCustomFieldToPortfolio - -
- - -Add a custom field setting to an Asana portfolio. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **portfolio_identifier** (`string`, optional) Globally unique identifier for the portfolio to which the custom field will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **pretty_formatting_enabled** (`boolean`, optional) Set to true to format the response for better readability, useful for debugging. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.RemoveCustomFieldFromPortfolio - -
- - -Removes a custom field from an Asana portfolio. - -**Parameters** - -- **portfolio_global_id** (`string`, required) Globally unique identifier for the portfolio to identify which portfolio the custom field should be removed from. -- **custom_field_id_to_remove** (`string`, optional) The unique identifier of the custom field to be removed from the portfolio. -- **enable_pretty_output** (`boolean`, optional) Enable pretty format for the output, adding line breaks and indentation for readability. Increases response size and processing time, recommended for debugging. - - -## AsanaApi.AddPortfolioMembers - -
- - -Add specified users as members of a portfolio on Asana. - -**Parameters** - -- **portfolio_global_id** (`string`, required) Globally unique identifier for the portfolio to which members will be added. -- **enable_pretty_output** (`boolean`, optional) Set to true for readable line-breaking and indentation in the response. Use for debugging as it increases response size and time. -- **include_optional_properties** (`array[string]`, optional) A list of optional properties to include in the response, provided as an array of strings. -- **portfolio_member_identifiers** (`string`, optional) An array of strings identifying users to add. Use 'me', an email, or user gid. - - -## AsanaApi.RemovePortfolioMembers - -
- - -Remove specified members from a portfolio. - -**Parameters** - -- **portfolio_unique_id** (`string`, required) Globally unique identifier for the portfolio to modify. Required for removing members. -- **enable_pretty_output** (`boolean`, optional) Enable to format the response with line breaks and indentation for readability. Recommended only for debugging. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of properties to include in the response, allowing for additional data retrieval. -- **members_to_remove** (`string`, optional) List of user identifiers to remove from the portfolio. Use 'me', an email, or user gid. - - -## AsanaApi.GetProjectBrief - -
- - -Retrieve the full record for a project brief. - -**Parameters** - -- **project_brief_identifier** (`string`, required) Globally unique identifier for the specific project brief to retrieve. -- **include_optional_properties** (`array[string]`, optional) An array of property names to include in the response. These properties are excluded by default. -- **pretty_output_enabled** (`boolean`, optional) Enable readable, formatted output. Suitable for debugging. Increases response time and size. - - -## AsanaApi.UpdateProjectBriefAsana - -
- - -Update an Asana project brief. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_brief_id** (`string`, optional) Globally unique identifier for the specific project brief to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) Specify a list of properties to include in the response, separated by commas. Only used when mode is 'execute'. -- **provide_pretty_output** (`boolean`, optional) If true, the response is formatted with line breaks and indentation for readability. Use primarily for debugging. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.DeleteProjectBrief - -
- - -Delete a specific project brief in Asana. - -**Parameters** - -- **project_brief_unique_id** (`string`, required) Globally unique identifier for the project brief to be deleted. -- **enable_pretty_output** (`boolean`, optional) Set to true for pretty-formatted output, making it more readable. Useful for debugging, this may increase response time and size. - - -## AsanaApi.CreateProjectBrief - -
- - -Create a new project brief in Asana. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_global_id** (`string`, optional) Globally unique identifier for the project in which the brief will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) List of properties to include that are excluded by default in the response. Provide as an array of strings. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Set to true to format the response with line breaks and indentation for readability. Useful for debugging. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetProjectMembershipDetails - -
- - -Retrieve detailed information for a project membership in Asana. - -**Parameters** - -- **project_membership_id** (`string`, required) The unique identifier for the project membership to retrieve details for. -- **enable_pretty_output** (`boolean`, optional) Set to true for a human-readable response format, useful for debugging. -- **include_optional_properties** (`array[string]`, optional) A list of optional project membership properties to include in the response. These are normally excluded by default. - - -## AsanaApi.GetProjectMemberships - -
- - -Fetch project membership records from Asana. - -**Parameters** - -- **project_unique_identifier** (`string`, required) Globally unique identifier for the project to fetch memberships for. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the response output. Useful for debugging as it adds line breaks and indentation, making it more readable. Note: This increases response size and time. -- **include_optional_properties** (`array[string]`, optional) List of properties to include in the response. Use a comma-separated list to specify optional properties to be included in the response. -- **page_offset_token** (`string`, optional) Token for pagination to retrieve the next set of results. Use the token from a previous response to get subsequent pages. -- **results_per_page** (`integer`, optional) The number of objects to return per page (between 1 and 100). -- **user_identifier** (`string`, optional) A string identifying a user, either "me", an email, or the user's gid. - - -## AsanaApi.GetProjectStatusUpdate - -
- - -Fetches a complete status update record for a project. - -**Parameters** - -- **project_status_update_id** (`string`, required) The ID of the project status update to retrieve. This should be a unique identifier for the specific status update. -- **enable_pretty_output** (`boolean`, optional) If true, formats the response with line breaks and indentation for readability. Recommended for debugging only, as it increases response size. -- **include_optional_properties** (`array[string]`, optional) A list of optional properties to include in the response. This allows fetching additional details that are excluded by default. - - -## AsanaApi.DeleteProjectStatus - -
- - -Delete a specific project status update in Asana. - -**Parameters** - -- **project_status_id** (`string`, required) The identifier for the project status update you wish to delete. -- **pretty_output** (`boolean`, optional) Enable pretty output for readable formatting during debugging; increases response size and time. - - -## AsanaApi.GetProjectStatusUpdates - -
- - -Fetch compact status updates for a given project. - -**Parameters** - -- **project_global_identifier** (`string`, required) Globally unique identifier for the project in Asana. -- **enable_pretty_output** (`boolean`, optional) Enable to format the response for readability with line breaks and indentation. Only recommended for debugging due to increased response size and processing time. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. -- **pagination_offset_token** (`string`, optional) Offset token for pagination. Use the token provided by a previous request to retrieve the next page of results. -- **results_per_page** (`integer`, optional) Number of status updates to return per page, must be between 1 and 100. - - -## AsanaApi.CreateProjectStatusUpdate - -
- - -Creates a new status update for a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_global_id** (`string`, optional) Globally unique identifier for the project in Asana. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **included_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response, which are excluded by default. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) If true, format the response for readability with line breaks and indentation. Mainly for debugging purposes. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetProjectTemplateDetails - -
- - -Retrieve complete details of a specific Asana project template. - -**Parameters** - -- **project_template_id** (`string`, required) Globally unique identifier for the project template to fetch complete details. -- **include_optional_properties** (`array[string]`, optional) List properties to include in the response. Exclude default properties, using a comma-separated format. -- **pretty_output_enabled** (`boolean`, optional) Set to true to receive a formatted and readable response output, suitable for debugging. Increases response time and size. - - -## AsanaApi.DeleteProjectTemplate - -
- - -Delete a specific existing project template in Asana. - -**Parameters** - -- **project_template_identifier** (`string`, required) Globally unique identifier for the Asana project template to delete. -- **enable_pretty_output** (`boolean`, optional) If true, outputs the response in a readable, pretty format with line breaks and indentation, mainly for debugging purposes. - - -## AsanaApi.GetAsanaProjectTemplates - -
- - -Fetch project template records from Asana. - -**Parameters** - -- **include_optional_fields** (`array[string]`, optional) A list of optional properties to include in the response. Provide as an array of strings, with each string representing a property name. -- **pagination_offset_token** (`string`, optional) Offset token for pagination. Use the token returned from a previous request to fetch the next page of results. If omitted, the first page is returned. -- **pretty_output** (`boolean`, optional) Set to true to enable pretty JSON formatting for debugging, despite increased size and time. -- **results_per_page** (`integer`, optional) Specify the number of project templates to return per page, between 1 and 100. -- **team_filter** (`string`, optional) The team ID to filter project templates on. -- **workspace_identifier** (`string`, optional) The identifier of the workspace to filter project templates results on. - - -## AsanaApi.GetProjectTemplatesForTeam - -
- - -Retrieve compact project template records for a team. - -**Parameters** - -- **team_id** (`string`, required) Globally unique identifier for the team to retrieve project templates. -- **enable_pretty_output** (`boolean`, optional) Enable to get the response in a readable, "pretty" JSON format. Useful for debugging. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. Specify any properties excluded by default that you wish to see. -- **pagination_offset_token** (`string`, optional) Offset token to fetch the next page of results. Use the token returned from a previous request's pagination. -- **results_per_page** (`integer`, optional) Number of project templates to return per page. Must be between 1 and 100. - - -## AsanaApi.InstantiateProjectFromTemplate - -
- - -Asynchronously instantiate a project from a template. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_template_id** (`string`, optional) Globally unique identifier for the project template to instantiate the project from. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) A list of optional properties to include in the response. Provide as a comma-separated list. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the response. Use this for debugging purposes as it increases response time and size. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetAsanaProjects - -
- - -Fetch filtered project records from Asana. - -**Parameters** - -- **enable_pretty_output** (`boolean`, optional) Enable pretty JSON formatting for debugging. Increases response size and processing time. -- **optional_fields_to_include** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. -- **pagination_offset_token** (`string`, optional) The offset token for pagination to obtain the next page of results. Use this token received from a previous request to continue retrieving subsequent data. -- **results_per_page** (`integer`, optional) Number of projects to return per page, from 1 to 100. -- **return_only_archived_projects** (`boolean`, optional) Boolean to filter projects by their archived status. Setting this to true returns only archived projects. -- **team_filter** (`string`, optional) Specify the team to filter projects in the Asana workspace. -- **workspace_filter** (`string`, optional) Specify the workspace or organization to filter the Asana projects. - - -## AsanaApi.CreateNewAsanaProject - -
- - -Create a new project in an Asana workspace or team. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **included_properties_list** (`array[string]`, optional) List of properties to include in the response. Specify as a comma-separated list to include optional fields that are excluded by default. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Set to true for readable JSON formatting with indents and line breaks. This is useful for debugging but increases response size and time. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetProjectDetails - -
- - -Retrieve complete details of a specified Asana project. - -**Parameters** - -- **project_global_identifier** (`string`, required) A unique identifier for the Asana project you want to retrieve details for. -- **enable_pretty_output** (`boolean`, optional) Set to true for nicely formatted, readable output, mainly for debugging due to increased size and time. -- **include_optional_properties** (`array[string]`, optional) A list of optional property names to include in the project details response. Provide these as a list of strings. - - -## AsanaApi.UpdateProjectDetails - -
- - -Update specific fields of an existing project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_global_id** (`string`, optional) Globally unique identifier for the project to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of properties to include in the response, showing optional fields by default excluded. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the response output, making it more readable with line breaks and indentation. Use this primarily for debugging as it increases response size and processing time. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.DeleteAsanaProject - -
- - -Delete a specific project in Asana. - -**Parameters** - -- **project_unique_identifier** (`string`, required) Globally unique identifier for the project to be deleted in Asana. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the response to make it more readable. It's recommended for debugging purposes only due to increased response size and time. - - -## AsanaApi.AsanaDuplicateProject - -
- - -Initiate duplication of a project in Asana. - -**Parameters** - -- **project_global_id** (`string`, required) Globally unique identifier for the project to be duplicated. -- **include_elements_in_project_duplication** (`string`, optional) A comma-separated list of optional elements to include when duplicating a project. Some elements are auto-included and cannot be excluded. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional properties to include in the response, such as additional project details. -- **last_due_date_in_duplicated_project** (`string`, optional) Sets the last due date in the duplicated project. The subsequent due dates will be offset similarly to the original project. -- **new_project_name** (`string`, optional) The name for the duplicated project in Asana. -- **new_project_team_id** (`string`, optional) Globally unique identifier for the team to set for the new project. If not provided, the project will remain in the same team as the original. -- **pretty_output_enabled** (`boolean`, optional) Enable pretty formatting for the response output. Useful for debugging but increases response size and time. -- **skip_weekends_in_schedule** (`boolean`, optional) Set to true to skip weekends for auto-shifted dates in the duplicated project schedule. This is a required parameter. -- **start_date_for_first_task** (`string`, optional) Sets the first start date in the duplicated project. Adjusts other start dates based on this. - - -## AsanaApi.GetProjectsForTask - -
- - -Retrieve all projects associated with a specific task. - -**Parameters** - -- **task_identifier** (`string`, required) The identifier of the task to retrieve associated projects for. -- **enable_pretty_output** (`boolean`, optional) Set to true to receive the output in a 'pretty' format, useful for debugging. Note: This increases response time and size. -- **optional_fields_to_include** (`array[string]`, optional) Comma-separated list of optional project properties to include in the response. -- **pagination_offset** (`string`, optional) Offset token used for pagination. If not provided, the first page is returned. Only pass an offset returned from a previous request. -- **results_per_page** (`integer`, optional) Number of project entries to return per page, between 1 and 100. - - -## AsanaApi.GetTeamProjects - -
- - -Fetch the list of projects for a specified team. - -**Parameters** - -- **team_identifier** (`string`, required) Globally unique identifier for the team whose projects are to be retrieved. It is required to specify the team. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the response, making it more readable. Use mainly for debugging due to increased response size. -- **include_optional_properties** (`array[string]`, optional) A list of optional properties to include in the response for the projects. Specify as a list of strings. -- **only_archived_projects** (`boolean`, optional) Return projects based on their archived status. True for archived projects, False for non-archived projects. -- **pagination_offset_token** (`string`, optional) Offset token used for pagination to fetch the next page of results. If not provided, the first page is returned. Use an offset from a previous response for subsequent pages. -- **results_per_page** (`integer`, optional) Number of projects to return per page, between 1 and 100. - - -## AsanaApi.CreateAsanaProjectForTeam - -
- - -Create a new Asana project for a specific team. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_global_id** (`string`, optional) Globally unique identifier for the team in Asana. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_project_properties** (`array[string]`, optional) Specify properties to include as a comma-separated list to get additional project details. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Set to true for readable output with line breaks and indentation. Recommended for debugging due to increased response size. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetWorkspaceProjects - -
- - -Fetch compact project records for a workspace. - -**Parameters** - -- **workspace_identifier** (`string`, required) Globally unique identifier for the workspace or organization in Asana. -- **archived_projects_only** (`boolean`, optional) Specify `true` to return only archived projects, and `false` to include unarchived ones. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the response output. Use this for a readable JSON format, mainly during debugging. -- **optional_fields_to_include** (`array[string]`, optional) Specify a list of property names to include in the response. These properties are not included by default. -- **pagination_offset_token** (`string`, optional) Offset token for pagination. Use to request subsequent pages. If omitted, returns the first page. Only use tokens from previous requests. -- **results_per_page** (`integer`, optional) Specify the number of project records to return per page. Must be between 1 and 100. - - -## AsanaApi.CreateProjectInWorkspace - -
- - -Create a new project in a specified workspace. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **workspace_identifier** (`string`, optional) Globally unique identifier for the workspace or organization where the project will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. Only used when mode is 'execute'. -- **pretty_output** (`boolean`, optional) Set to true for formatted, readable output. Use mainly during debugging as it increases response time and size. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.AddCustomFieldSettingToProject - -
- - -Add a custom field setting to a project in Asana. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **project_global_id** (`string`, optional) Globally unique identifier for the project in Asana. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of properties to include in the response, typically those excluded by default. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Set to true for a readable output format with line breaks and indentation. Increases response time and size, so use it mainly for debugging. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.RemoveCustomFieldFromProject - -
- - -Remove a custom field setting from an Asana project. - -**Parameters** - -- **project_unique_id** (`string`, required) Globally unique identifier for the Asana project. -- **custom_field_id_to_remove** (`string`, optional) The ID of the custom field to remove from the specified project in Asana. -- **enable_pretty_output** (`boolean`, optional) Formats the response in a readable way with line breaks and indentation. Use for debugging as it increases response time and size. - - -## AsanaApi.GetTaskCountsForProject - -
- - -Retrieve task count details for a specific project in Asana. - -**Parameters** - -- **project_global_id** (`string`, required) Globally unique identifier for the project in Asana. -- **enable_pretty_output** (`boolean`, optional) Set to true to format the response in a readable way with line breaks and indentation. Use for debugging due to increased response size. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of properties to include in the response. Opt-in to get specific data fields from the endpoint. - - -## AsanaApi.AddMembersToProject - -
- - -Add specified users as members of a project in Asana. - -**Parameters** - -- **project_unique_identifier** (`string`, required) Globally unique identifier for the project in Asana. -- **include_optional_properties** (`array[string]`, optional) A comma-separated list of optional properties to include in the response. This adds excluded properties by default. -- **pretty_output** (`boolean`, optional) If true, the response is formatted with line breaks and indentation for readability. Use mainly for debugging. -- **user_identifiers_array** (`string`, optional) An array of strings identifying users to be added to the project. Values can be 'me', an email, or a user GID. - - -## AsanaApi.RemoveMembersFromProject - -
- - -Remove specified users from a project in Asana. - -**Parameters** - -- **project_identifier** (`string`, required) Globally unique identifier for the project. -- **enable_pretty_output** (`boolean`, optional) Set to true for formatted, human-readable JSON. Increases response size; use for debugging. -- **include_optional_fields** (`array[string]`, optional) A list of optional fields to include in the response. Use a comma-separated list to specify. -- **user_identifiers** (`string`, optional) Array of user identifiers to be removed from the project. Accepts "me", email, or user gid. - - -## AsanaApi.AddFollowersToProject - -
- - -Add specified users as followers to an Asana project. - -**Parameters** - -- **project_unique_id** (`string`, required) Globally unique identifier for the project to which followers will be added. -- **enable_pretty_output** (`boolean`, optional) Enable pretty JSON output for readability, useful for debugging. May slow responses. -- **optional_fields_to_include** (`array[string]`, optional) Comma-separated list of optional properties to include in the response to enrich data output. -- **user_identifiers_to_add_as_followers** (`string`, optional) An array of user identifiers to add as followers. Accepts 'me', email addresses, or user gids. - - -## AsanaApi.RemoveFollowersFromProject - -
- - -Remove specified users from following a project in Asana. - -**Parameters** - -- **project_global_id** (`string`, required) Globally unique identifier for the project in Asana. -- **enable_pretty_output** (`boolean`, optional) Set to true to format the response with line breaks and indentation for readability. Useful for debugging. -- **include_optional_properties** (`array[string]`, optional) A list of property names to include in the response, specified as strings. This should be used to include properties that are not returned by default. -- **user_identifiers_to_unfollow** (`string`, optional) Array of user identifiers (e.g. "me", email, or gid) to remove from following the project. - - -## AsanaApi.CreateProjectTemplate - -
- - -Create a project template in Asana asynchronously. - -**Parameters** - -- **project_global_id** (`string`, required) Globally unique identifier for the project. Required to specify which project is being saved as a template. -- **enable_pretty_output** (`boolean`, optional) Enable pretty output formatting for easier readability in the response. Use mainly for debugging as it may increase response time and size. -- **include_optional_properties** (`array[string]`, optional) Specify a list of optional properties to include in the response by listing their names as strings. -- **make_template_public** (`boolean`, optional) Specify true to make the project template public to its team. Use false to keep it private. -- **team_id_for_project_template** (`string`, optional) Specify the team ID for the new project template. Use this when the project is in an organization. -- **template_name** (`string`, optional) The name of the new project template in Asana. -- **workspace_id_for_project_template** (`string`, optional) Globally unique identifier for the workspace of the new project template. Use only if the project is in a workspace. - - -## AsanaApi.FetchReactionsByEmoji - -
- - -Retrieve reactions with a specific emoji on an object. - -**Parameters** - -- **emoji_base_character** (`string`, required) Specify the emoji base character to filter reactions. Returns only reactions with this emoji. -- **object_gid** (`string`, required) Globally unique identifier (GID) for the Asana object (status update or story) from which to fetch reactions. -- **enable_pretty_output** (`boolean`, optional) Enable for readable JSON output with line breaks and indentation. Use primarily for debugging due to increased response size and time. -- **pagination_offset_token** (`string`, optional) Offset token to retrieve the next page of results. Use the token provided by a previous paginated request. If not specified, the API returns the first page. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. Must be between 1 and 100. - - -## AsanaApi.TriggerAsanaRule - -
- - -Trigger a rule in Asana using an incoming web request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **incoming_web_request_trigger_id** (`string`, optional) The ID of the incoming web request trigger used to execute the rule in Asana. This is automatically generated for the API endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetAsanaSection - -
- - -Retrieve a complete record of a single Asana section. - -**Parameters** - -- **section_global_id** (`string`, required) The globally unique identifier for the section to retrieve. -- **enable_pretty_output** (`boolean`, optional) Set to true to receive the response in a 'pretty' format with line breaks and indentation. Useful for debugging. This increases response time and size. -- **include_optional_properties** (`array[string]`, optional) Specify a list of optional properties to include in the response. This should be an array of strings. - - -## AsanaApi.UpdateSectionNameAsana - -
- - -Update the name of a specific section in Asana. - -**Parameters** - -- **section_global_identifier** (`string`, required) The globally unique identifier for the section to be updated in Asana. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of properties to include in the response. Allows inclusion of optional fields excluded by default. -- **insert_after_section_id** (`string`, optional) Identifier of an existing section after which the updated section should be inserted. Cannot be used with `insert_before_section_id`. -- **pretty_output** (`boolean`, optional) Set to true for a readable, pretty formatted response with line breaks and indentation. Recommended for debugging as it increases response size. -- **section_insert_before_id** (`string`, optional) The ID of an existing section in the project before which the updated section should be inserted. Cannot be provided with section_insert_after_id. -- **section_name** (`string`, optional) The new name for the section. It cannot be an empty string. - - -## AsanaApi.DeleteAsanaSection - -
- - -Delete a specific, existing section in Asana. - -**Parameters** - -- **section_global_identifier** (`string`, required) The globally unique identifier for the section to be deleted in Asana. -- **enable_pretty_output** (`boolean`, optional) If true, returns JSON with line breaks and indentation for readability. Increases response time and size, suitable for debugging. - - -## AsanaApi.GetProjectSections - -
- - -Fetch compact records for sections in a specified project. - -**Parameters** - -- **project_unique_identifier** (`string`, required) Globally unique identifier for the project in Asana. -- **enable_pretty_output** (`boolean`, optional) Enables readable formatting of the response when true, using line breaks and indentation. Recommended for debugging as it increases response time and size. -- **included_optional_fields** (`array[string]`, optional) List of optional properties to include in the response, specified as strings. This allows you to fetch additional details about the sections that are not included by default. -- **pagination_offset_token** (`string`, optional) Offset token for paginated API requests. Use it to retrieve the next set of results. If not provided, the API returns the first page. -- **results_per_page** (`integer`, optional) Specify the number of sections to return per page, between 1 and 100. - - -## AsanaApi.CreateSectionInProject - -
- - -Create a new section in an Asana project. - -**Parameters** - -- **project_global_id** (`string`, required) Globally unique identifier for the project in which to create the section. -- **enable_pretty_output** (`boolean`, optional) Set to true for a readable response format with line breaks and indentation. Use for debugging only. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. -- **insert_after_section_id** (`string`, optional) ID of an existing section to insert the new section after. Cannot be used with insert_before_section_id. -- **insert_before_section_id** (`string`, optional) ID of an existing section in the project before which the new section will be inserted. Cannot be used with 'insert_after_section_id'. -- **section_name** (`string`, optional) The name to display as the section title in the project. This cannot be empty. - - -## AsanaApi.AddTaskToSection - -
- - -Add a task to a specified section in Asana. - -**Parameters** - -- **section_global_identifier** (`string`, required) The globally unique identifier for the section where the task will be added. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the API response, with line breaks and indentation for readability. Use mainly for debugging. -- **insert_after_task_id** (`string`, optional) Specify the task ID after which the new task should be inserted within the section. Cannot be used with insert_before. -- **insert_task_before** (`string`, optional) The ID of an existing task in the section to insert the new task before. Cannot be used with insert_task_after. -- **task_description** (`string`, optional) The name or description of the task to be added to the specified section. - - -## AsanaApi.MoveSectionInProject - -
- - -Reorder sections within a project in Asana. - -**Parameters** - -- **project_global_id** (`string`, required) Globally unique identifier for the project in Asana. -- **enable_pretty_output** (`boolean`, optional) If true, enables pretty output with line breaks and indentation for readability. Use primarily for debugging, as it may increase response time and size. -- **insert_after_section_id** (`string`, optional) The ID of the section after which the given section will be inserted. Specify to reorder sections within the same project. -- **insert_before_section_id** (`string`, optional) Specify the section ID to place the given section immediately before it. -- **section_to_reorder** (`string`, optional) Globally unique identifier for the section to move within the project. - - -## AsanaApi.FetchStatusUpdate - -
- - -Fetch the complete record for a specific status update. - -**Parameters** - -- **status_update_id** (`string`, required) Unique identifier for the status update to retrieve the complete record. -- **enable_pretty_output** (`boolean`, optional) Set to true for a readable, pretty format with indentation. Useful for debugging. -- **include_optional_fields** (`array[string]`, optional) A list of optional fields to include in the response. Provide the fields as a list of strings. - - -## AsanaApi.DeleteStatusUpdate - -
- - -Delete a specific status update from Asana. - -**Parameters** - -- **status_update_id** (`string`, required) Unique ID of the status update to be deleted. -- **pretty_output** (`boolean`, optional) If true, the response is formatted for readability with line breaks and indentation. This increases response size and time, so use for debugging. - - -## AsanaApi.GetStatusUpdatesForObject - -
- - -Retrieve status updates for a specified object in Asana. - -**Parameters** - -- **object_gid** (`string`, required) Globally unique identifier (GID) for the Asana object (project, portfolio, or goal) to fetch status updates from. -- **created_since_time** (`string`, optional) Return statuses created after the specified time. Use ISO 8601 format. -- **enable_pretty_output** (`boolean`, optional) Enable pretty JSON output with line breaks and indentation for readability. Mainly used for debugging, as it increases response size. -- **optional_fields_to_include** (`array[string]`, optional) List the optional properties to include in the response. Provide as a comma-separated list of property names. -- **pagination_offset_token** (`string`, optional) Token to fetch the next page of results. Use an offset returned from a previous paginated request. -- **results_per_page** (`integer`, optional) Number of results to return per page. Must be between 1 and 100. - - -## AsanaApi.CreateStatusUpdate - -
- - -Create a new status update on an object in Asana. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **results_per_page** (`integer`, optional) Number of status updates to return per page, between 1 and 100. Only used when mode is 'execute'. -- **pagination_offset_token** (`string`, optional) Token to fetch the next page of results. Received from a previous API response for pagination. If omitted, the first page is returned. Only used when mode is 'execute'. -- **include_optional_fields** (`array[string]`, optional) List of properties to include. Provide as an array of strings to include optional properties in the response. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Set to true to receive the response in a readable, indented format. Use for debugging as it increases response time and size. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetAsanaStory - -
- - -Fetch the full record of a specific Asana story. - -**Parameters** - -- **story_identifier** (`string`, required) Globally unique identifier for the Asana story to be retrieved. -- **enable_pretty_output** (`boolean`, optional) Set to true to format the response with line breaks and indentation for readability. Recommended only for debugging, as it increases response size and processing time. -- **include_optional_properties** (`array[string]`, optional) A list of optional properties to include in the story record, specified as an array of strings. - - -## AsanaApi.UpdateAsanaStory - -
- - -Update an Asana story's details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **story_global_id** (`string`, optional) Globally unique identifier for the Asana story to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. Defaults to excluding some properties. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Set to true for a readable, formatted response. Use for debugging as it increases response size and time. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.DeleteAsanaStory - -
- - -Delete a story you've created on Asana. - -**Parameters** - -- **story_unique_id** (`string`, required) Globally unique identifier for the story to be deleted. -- **enable_pretty_output** (`boolean`, optional) Enable this for a readable, formatted response. Useful for debugging, but increases response time. - - -## AsanaApi.GetTaskStories - -
- - -Retrieve all stories for a specified Asana task. - -**Parameters** - -- **task_identifier** (`string`, required) The unique identifier for the task to retrieve stories from. -- **enable_pretty_output** (`boolean`, optional) Set to true for a readable, pretty format with line breaks and indentation. Useful for debugging. This will increase response time and size. -- **include_optional_fields** (`array[string]`, optional) List of optional resource properties to include, specified as an array of strings. -- **pagination_offset** (`string`, optional) An offset token for paginating through results. Use a token returned from a previous API call to access subsequent pages. If not provided, the first page is returned. -- **results_per_page** (`integer`, optional) Specify the number of stories to return per page, between 1 and 100. - - -## AsanaApi.AddTaskComment - -
- - -Add a comment to a specific task in Asana. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **target_task_id** (`string`, optional) The ID of the task to which the comment will be added. It is required to specify the task you want to operate on. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response, as the endpoint excludes some by default. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Formats the response for readability with line breaks and indentation when true. Recommended for debugging due to extra processing time. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetFilteredTags - -
- - -Retrieve compact tag records with optional filters. - -**Parameters** - -- **enable_pretty_output** (`boolean`, optional) Set to 'true' for pretty JSON output with line breaks and indentation. Use for readability during debugging. -- **include_optional_properties** (`array[string]`, optional) A list of properties to include in the response, specified as strings. Use to retrieve fields not returned by default. -- **pagination_offset** (`string`, optional) Offset token for pagination. Use the offset from the previous response to get the next page. If not provided, returns the first page. -- **results_per_page** (`integer`, optional) Specifies how many tag records to return per page. Must be an integer between 1 and 100. -- **workspace_for_filtering** (`string`, optional) The workspace ID used to filter tags in the request. - - -## AsanaApi.CreateNewAsanaTag - -
- - -Create a new tag in an Asana workspace or organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **include_optional_properties** (`array[string]`, optional) Specify optional properties to include in the response as a list of strings. These properties are excluded by default. Only used when mode is 'execute'. -- **pretty_output_enabled** (`boolean`, optional) Set to true for a well-indented, readable response format. Recommend use only for debugging due to increased response size and time. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetAsanaTagDetails - -
- - -Retrieve complete details for a specific Asana tag. - -**Parameters** - -- **tag_global_identifier** (`string`, required) Globally unique identifier for the tag in Asana used to fetch the complete tag details. -- **enable_pretty_output** (`boolean`, optional) Enable to format the response in a readable, pretty format. Increases response size and time; useful for debugging. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of additional tag properties to include in the response. - - -## AsanaApi.UpdateAsanaTag - -
- - -Update properties of an Asana tag. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **tag_global_identifier** (`string`, optional) Globally unique identifier for the tag to update in Asana. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_fields** (`array[string]`, optional) List of optional properties to include with the tag resource. Provide as an array of property names. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Set to true to receive the response in a readable format with proper indentation and line breaks. This is advised only for debugging as it increases response size. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.DeleteAsanaTag - -
- - -Delete a specific tag in Asana with its unique ID. - -**Parameters** - -- **tag_unique_identifier** (`string`, required) The globally unique identifier for the Asana tag to be deleted. -- **enable_pretty_output** (`boolean`, optional) Set to true for formatted JSON output with line breaks and indentation. Use mainly for debugging as it increases response size. - - -## AsanaApi.GetTagsForTask - -
- - -Retrieve all tags for a given task. - -**Parameters** - -- **task_identifier** (`string`, required) The unique identifier of the task to retrieve tags for in Asana. -- **enable_pretty_output** (`boolean`, optional) Set to true to receive the response in a formatted, readable form. Useful for debugging as it increases response size and time. -- **include_optional_fields** (`array[string]`, optional) List of optional properties to include in the response as comma-separated values. -- **pagination_offset_token** (`string`, optional) An offset token for paginating results. Use the token from a previous response to access subsequent pages. -- **results_per_page** (`integer`, optional) Number of objects to return per page. Must be between 1 and 100. - - -## AsanaApi.RetrieveWorkspaceTags - -
- - -Retrieve tags for a specific workspace in Asana. - -**Parameters** - -- **workspace_identifier** (`string`, required) Globally unique identifier for the Asana workspace or organization. -- **enable_pretty_output** (`boolean`, optional) Enable pretty JSON output with proper line breaking and indentation intended for debugging. This may increase response time and size. -- **include_optional_properties** (`array[string]`, optional) List of optional tag properties to include, specified as strings. These properties are excluded by default. -- **offset_token** (`string`, optional) The offset token to retrieve the next page of results. Use a token from a previous response for pagination. -- **results_per_page** (`integer`, optional) Specify the number of tag records to return per page, between 1 and 100. - - -## AsanaApi.CreateWorkspaceTag - -
- - -Create a new tag in a specific Asana workspace. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **workspace_id** (`string`, optional) Globally unique identifier for the workspace or organization in Asana. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **included_optional_properties** (`array[string]`, optional) List of optional properties to include in the response, specified as an array of strings. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Enable pretty JSON formatting for improved readability. Use mainly during debugging as it may increase response size. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.FetchProjectTaskTemplates - -
- - -Retrieve compact task template records for a specific project. - -**Parameters** - -- **enable_pretty_output** (`boolean`, optional) Enable this to receive the response in a readable format with proper indentation. Useful for debugging, but increases response time and size. -- **optional_fields_to_include** (`array[string]`, optional) A list of property names to include in the response. Specify the properties you wish to see for the task templates. -- **pagination_offset_token** (`string`, optional) Offset token for pagination, returned by the API. Use to request the next page of results. -- **project_id** (`string`, optional) The unique identifier for the project to filter task templates. -- **results_per_page** (`integer`, optional) Number of task templates to return per page, between 1 and 100. - - -## AsanaApi.FetchTaskTemplate - -
- - -Retrieve the complete record of a specific task template in Asana. - -**Parameters** - -- **task_template_unique_id** (`string`, required) Globally unique identifier for the task template to retrieve its complete record. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the output, making it more readable with line breaking and indentation. Use mainly for debugging. -- **include_optional_fields** (`array[string]`, optional) Specify properties to include in the response. Provide as a list of strings. - - -## AsanaApi.DeleteTaskTemplate - -
- - -Delete a specific task template by its ID. - -**Parameters** - -- **task_template_id** (`string`, required) Globally unique identifier for the task template to be deleted. -- **enable_pretty_output** (`boolean`, optional) Set to True for a pretty, formatted JSON response. This is useful for debugging but may increase response time and size. - - -## AsanaApi.CreateAsanaTask - -
- - -Create and initiate an Asana task asynchronously. - -**Parameters** - -- **task_template_id** (`string`, required) Globally unique identifier for the task template used to create the task. -- **enable_pretty_output** (`boolean`, optional) Enable 'pretty' formatting of the response for better readability. Useful for debugging but may increase response time and size. -- **include_optional_properties** (`array[string]`, optional) List of optional properties to include in the task resource, comma-separated. -- **task_name** (`string`, optional) The name of the new task to be created. If not provided, the task template name will be used by default. - - -## AsanaApi.GetFilteredTasks - -
- - -Retrieve filtered task records from Asana. - -**Parameters** - -- **assignee_id** (`string`, optional) The ID of the assignee to filter tasks on. If searching for unassigned tasks, use 'null'. Must be used with 'workspace'. -- **completed_since_date_time** (`string`, optional) Tasks must be incomplete or completed since this date/time. Provide in ISO 8601 format (e.g., '2023-10-01T12:00:00Z'). -- **enable_pretty_output** (`boolean`, optional) If true, provides the response in a pretty-printed, readable format. Use primarily for debugging as it increases response time and size. -- **filter_by_project** (`string`, optional) Specify the project to filter tasks. Use a string identifier for the project. -- **filter_by_workspace** (`string`, optional) The workspace to filter tasks by. Must be used with 'filter_by_assignee'. -- **modified_since_time** (`string`, optional) Return tasks modified since this time. Include changes in properties or associations. Format as string (e.g., 'YYYY-MM-DDTHH:MM:SSZ'). -- **optional_fields_to_include** (`array[string]`, optional) Specify properties to include in the response by providing an array of property names. These properties are excluded by default. -- **pagination_offset** (`string`, optional) An offset token for pagination to retrieve the next page of results. Use a previously returned token to continue pagination. -- **results_per_page** (`integer`, optional) Defines the number of task records to return per page. The value must be between 1 and 100. -- **section_filter** (`string`, optional) The section to filter tasks within a project in Asana. Specify a section name to narrow down the tasks. - - -## AsanaApi.AddAsanaTask - -
- - -Create a new task in Asana. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional task properties to include in the response. Excludes some properties by default. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Enable to receive the response in a readable format with line breaks and indentation. Use for debugging as it increases response time and size. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetTaskDetails - -
- - -Fetch detailed information for a specific Asana task. - -**Parameters** - -- **task_identifier** (`string`, required) Specify the unique identifier of the Asana task to retrieve detailed information. -- **enable_pretty_output** (`boolean`, optional) Set to true for a prettily formatted response, which may increase response time and size. Best used for debugging. -- **include_optional_properties** (`array[string]`, optional) Specify optional task properties to include in the response. Use a list of strings representing property names. - - -## AsanaApi.UpdateTask - -
- - -Update specific fields of an existing Asana task. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **task_id** (`string`, optional) The unique identifier of the task to update in Asana. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of task properties to include in the response, such as 'created_at', 'due_date', etc. Only used when mode is 'execute'. -- **pretty_output_enabled** (`boolean`, optional) Set to true for a formatted response with line breaks and indentation. Useful for debugging. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.DeleteAsanaTask - -
- - -Delete an existing task in Asana, moving it to trash. - -**Parameters** - -- **task_identifier** (`string`, required) The unique identifier of the task to delete in Asana. -- **pretty_output_enabled** (`boolean`, optional) Set to true for 'pretty' formatted response, useful for debugging. May increase response size and time. - - -## AsanaApi.DuplicateAsanaTask - -
- - -Create a job to duplicate a task in Asana. - -**Parameters** - -- **task_gid** (`string`, required) The unique identifier of the task to duplicate in Asana. -- **enable_pretty_output** (`boolean`, optional) Enable pretty printing of the JSON response for improved readability. Use this primarily for debugging as it increases response size and time. -- **fields_to_duplicate** (`string`, optional) Comma-separated list of task fields to duplicate, such as assignee, attachments, dates, etc. -- **new_task_name** (`string`, optional) The name for the newly duplicated task in Asana. -- **optional_fields_to_include** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. - - -## AsanaApi.GetProjectTasks - -
- - -Fetch tasks from a specific Asana project. - -**Parameters** - -- **project_global_id** (`string`, required) Globally unique identifier for the Asana project. Required to retrieve tasks from a specific project. -- **completed_since** (`string`, optional) Return tasks incomplete or completed after this date-time or 'now'. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the response. This makes the output more readable but increases response size and time. Useful for debugging. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. -- **pagination_offset_token** (`string`, optional) Token for paginating results. Use it to retrieve the next set of tasks from a previously returned offset. -- **results_per_page** (`integer`, optional) Number of task records to return per page in the result. Must be between 1 and 100. - - -## AsanaApi.GetTasksForSection - -
- - -Fetch tasks for a specific section in Asana. - -**Parameters** - -- **section_unique_identifier** (`string`, required) The globally unique identifier for the section in Asana to fetch tasks from. Required to specify the exact section targeted. -- **completed_since_filter** (`string`, optional) Return tasks incomplete or completed since a specific time. Use a date-time string or 'now'. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting of the response for readability. Increases response time and size. Use mainly for debugging. -- **optional_fields_to_include** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. -- **pagination_offset** (`string`, optional) Offset token for pagination. Use it to fetch the next page of results. If not provided, the first page will be returned. -- **results_per_page** (`integer`, optional) Number of tasks to return per page, between 1 and 100. - - -## AsanaApi.GetTasksForTag - -
- - -Retrieve tasks associated with a specific tag in Asana. - -**Parameters** - -- **tag_global_id** (`string`, required) Globally unique identifier for the tag to retrieve associated tasks. -- **enable_pretty_output** (`boolean`, optional) Formats the response for readability with line breaks and indentation. Use true only during debugging due to increased response size. -- **optional_fields_to_include** (`array[string]`, optional) List of optional property names to include in the response for each task (comma-separated). -- **pagination_offset** (`string`, optional) A token for pagination to fetch the next set of results. Use the token returned from a previous call for fetching subsequent pages. If not provided, the first page of results is returned. -- **results_per_page** (`integer`, optional) The number of task objects to return per page, ranging from 1 to 100. - - -## AsanaApi.GetUserTaskList - -
- - -Retrieve tasks in a user's My Tasks list. - -**Parameters** - -- **user_task_list_id** (`string`, required) Globally unique identifier for the user's task list. This ID is required to fetch tasks from the specified user list. -- **enable_pretty_output** (`boolean`, optional) Enable pretty output to make the JSON response more readable. This increases response time and size, so it's recommended for debugging only. -- **filter_completed_tasks_since** (`string`, optional) Return only tasks that are either incomplete or completed since this date-time or the keyword 'now'. -- **include_optional_fields** (`array[string]`, optional) List the optional properties to include in the response, as a list of strings. These properties are excluded by default. -- **pagination_offset_token** (`string`, optional) Offset token for pagination. Use the token returned from a previous request to fetch the next page. If not provided, the first page is returned. -- **tasks_per_page** (`integer`, optional) Specify the number of tasks to return per page, between 1 and 100. - - -## AsanaApi.GetTaskSubtasks - -
- - -Retrieve subtasks for a specific task in Asana. - -**Parameters** - -- **task_id** (`string`, required) The unique identifier of the task to retrieve subtasks for. -- **enable_pretty_output** (`boolean`, optional) Enable to receive the response in a 'pretty' format with line breaks and indentation. Useful for debugging. May increase response time and size. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. -- **pagination_offset** (`string`, optional) An offset token for pagination to retrieve the next page of results. Pass the token from a previous paginated request. If not provided, the first page is returned. -- **results_per_page** (`integer`, optional) Specify the number of subtasks to return per page. Must be between 1 and 100. - - -## AsanaApi.CreateSubtaskForTask - -
- - -Create a new subtask under a specified parent task. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **parent_task_id** (`string`, optional) The ID of the parent task for which the new subtask will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **included_optional_fields** (`array[string]`, optional) Comma-separated list of properties to include in the response. Allows access to optional fields not included by default. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Set to true for a formatted JSON response with line breaks and indentation. Increases size and time; use for debugging. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.UpdateTaskParentAsana - -
- - -Update the parent of an Asana task. - -**Parameters** - -- **task_identifier** (`string`, required) The unique identifier of the task to operate on. It should be a string. -- **enable_pretty_output** (`boolean`, optional) Set this to true to receive formatted output with line breaks and indentation. This is useful for debugging but increases response size and time. -- **include_optional_properties** (`array[string]`, optional) A list of optional task properties to include in the response. Use a list of property names. -- **new_task_parent** (`string`, optional) The new parent task ID for the task, or null to remove its current parent. -- **subtask_to_insert_after** (`string`, optional) Specify the subtask ID to insert the task after, or use 'null' to insert at the beginning of the list. -- **subtask_to_insert_before** (`string`, optional) Specify a subtask ID to insert the task before, or null to place at the end of the list. - - -## AsanaApi.GetTaskDependencies - -
- - -Retrieve all dependencies for a specific Asana task. - -**Parameters** - -- **task_id** (`string`, required) The global ID of the task to retrieve dependencies for in Asana. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for output; useful for debugging. Increases response size and time. -- **included_fields** (`array[string]`, optional) Comma-separated list of properties to include in the response. Some properties are excluded by default. -- **pagination_offset_token** (`string`, optional) The offset token for pagination, used to retrieve the next page of results. Pass this only if paginating a previous request. -- **results_per_page** (`integer`, optional) Specify the number of task dependencies to return per page. Must be between 1 and 100. - - -## AsanaApi.AddTaskDependencies - -
- - -Add dependencies to an Asana task. - -**Parameters** - -- **task_id_to_modify** (`string`, required) The unique identifier of the task to which dependencies will be added. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the response output. Provides improved readability with line breaking and indentation, recommended for debugging only. -- **task_dependency_ids** (`array[string]`, optional) An array of task GIDs that the current task depends on. These are required to establish dependencies between tasks in Asana. - - -## AsanaApi.RemoveTaskDependencies - -
- - -Unlink dependencies from a specified task on Asana. - -**Parameters** - -- **task_id** (`string`, required) The unique identifier of the task to operate on for removing dependencies. -- **enable_pretty_output** (`boolean`, optional) Set to true to receive a formatted, readable response. Useful for debugging, but increases response size and time. -- **task_dependency_ids_to_remove** (`array[string]`, optional) An array of task GIDs representing dependencies to be removed from the specified task. - - -## AsanaApi.GetTaskDependents - -
- - -Retrieve the dependents of a specific task. - -**Parameters** - -- **task_identifier** (`string`, required) The unique identifier of the task to retrieve dependents for. -- **enable_pretty_output** (`boolean`, optional) Enable this for JSON responses with readable line breaks and indentation. Use mainly for debugging. -- **include_optional_fields** (`array[string]`, optional) A list of optional properties to include in the response, specified as strings. -- **pagination_offset** (`string`, optional) Offset token for paginated results. Use a token from a previous response to continue fetching results. Defaults to the first page if not provided. -- **results_per_page** (`integer`, optional) Number of results to return per page, between 1 and 100. - - -## AsanaApi.AddDependentsToTask - -
- - -Add dependents to an Asana task. - -**Parameters** - -- **target_task_id** (`string`, required) The unique identifier for the task to add dependents to. -- **dependent_task_gids** (`array[string]`, optional) An array of task GIDs to be marked as dependents for this task. -- **enable_pretty_output** (`boolean`, optional) Set to true to format the response for readability. Use during debugging, as it increases response time and size. - - -## AsanaApi.RemoveTaskDependents - -
- - -Unlink dependents from an Asana task. - -**Parameters** - -- **task_id** (`string`, required) The unique identifier of the task to operate on. -- **dependents_task_ids** (`array[string]`, optional) An array of task GIDs that should be unlinked from the specified task. -- **enable_pretty_output** (`boolean`, optional) Set to true for prettified JSON output. Recommended only for debugging as it increases response size and time. - - -## AsanaApi.AddTaskToProject - -
- - -Add a task to a specified Asana project. - -**Parameters** - -- **task_global_id** (`string`, required) The unique global ID of the task to be operated on. -- **enable_pretty_output** (`boolean`, optional) Set to true for formatted JSON output, making it more readable. Useful for debugging. Note: This increases response time and size. -- **insert_after_task_id** (`string`, optional) Provide the ID of a task in the project to insert this task after, or use 'null' to insert at the beginning. -- **insert_task_before** (`string`, optional) Specify a task ID to insert the new task before it in the project, or use `null` to insert at the end of the list. -- **project_id_to_add_task** (`string`, optional) The unique identifier of the project to which the task will be added. -- **target_section_id** (`string`, optional) The ID of the section in the project to insert the task at the bottom. - - -## AsanaApi.RemoveTaskFromProject - -
- - -Remove a task from the specified project in Asana. - -**Parameters** - -- **task_identifier** (`string`, required) The unique identifier of the task to remove from the project. -- **enable_pretty_output** (`boolean`, optional) Enable 'pretty' response formatting. Provides line breaks and indentation for readability, useful mainly for debugging. -- **project_to_remove_task_from** (`string`, optional) The identifier of the project from which the task will be removed. - - -## AsanaApi.AddTagToTask - -
- - -Add a tag to a specific Asana task. - -**Parameters** - -- **task_id** (`string`, required) The unique identifier of the task to which the tag should be added. -- **enable_pretty_output** (`boolean`, optional) Enable this to receive a prettified JSON response. Useful for debugging, but increases response time and size. -- **tag_gid_to_add** (`string`, optional) The GID of the tag to be added to the specified task. - - -## AsanaApi.RemoveTagFromTask - -
- - -Remove a tag from a task in Asana. - -**Parameters** - -- **task_identifier** (`string`, required) The unique identifier of the task from which the tag should be removed. -- **enable_pretty_output** (`boolean`, optional) If true, formats the response for readability with line breaks and indentation. Use primarily for debugging. -- **tag_gid_to_remove** (`string`, optional) The GID of the tag to be removed from the task in Asana. - - -## AsanaApi.AddFollowersToTask - -
- - -Adds followers to an Asana task. - -**Parameters** - -- **task_gid** (`string`, required) The unique identifier of the task to add followers to. This is required to specify which task the followers should be added to. -- **enable_pretty_output** (`boolean`, optional) Enables pretty formatting for the response, adding line breaks and indentation. Useful for debugging but increases response size. -- **followers_identification** (`array[string]`, optional) An array of strings identifying users, which can be 'me', an email, or a user gid. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional task properties to include in the response. - - -## AsanaApi.AsanaRemoveFollowerForTask - -
- - -Remove followers from an Asana task. - -**Parameters** - -- **task_id** (`string`, required) The unique identifier of the task from which followers are to be removed. -- **enable_pretty_output** (`boolean`, optional) Set to true for readable JSON with line breaks and indentation. Use for debugging; increases response size and processing time. -- **followers_to_remove** (`array[string]`, optional) An array of strings identifying users to remove as followers. Acceptable formats: "me", an email, or a user's gid. -- **include_optional_properties** (`array[string]`, optional) A list of optional task properties to include in the response. Specify as an array of strings. - - -## AsanaApi.RetrieveTaskByCustomId - -
- - -Retrieve a task using a custom ID in Asana. - -**Parameters** - -- **task_custom_id** (`string`, required) The generated custom ID used to identify a specific task in Asana. -- **workspace_global_id** (`string`, required) Globally unique identifier for the workspace or organization in Asana. - - -## AsanaApi.SearchTasksInWorkspace - -
- - -Search for tasks in an Asana workspace using complex filters. - -**Parameters** - -- **workspace_global_id** (`string`, required) Globally unique identifier for the workspace or organization where tasks are searched. -- **all_tags_filters** (`string`, optional) Comma-separated list of tag IDs to filter tasks that have all specified tags. -- **assigned_by_user_ids** (`string`, optional) A comma-separated list of user IDs to filter tasks assigned by specific users. -- **assignee_identifiers_any** (`string`, optional) Provide a comma-separated list of user identifiers for any assignee to include in the search. -- **before_modified_on_date** (`string`, optional) ISO 8601 date string to filter tasks modified before this date. -- **completed_at_after** (`string`, optional) Specify an ISO 8601 datetime string to filter tasks completed after this date and time. -- **completed_at_before_datetime** (`string`, optional) Filter tasks completed before the specified ISO 8601 datetime. -- **completed_on_after_date** (`string`, optional) Specify an ISO 8601 date to filter tasks completed after this date. -- **completed_on_before_date** (`string`, optional) Filter tasks completed before a specific date using an ISO 8601 date string. -- **completed_on_date** (`string`, optional) Filter tasks by their completion date using an ISO 8601 date string or `null` for no specific date. -- **created_after_date** (`string`, optional) Specify the earliest creation date for tasks using an ISO 8601 date string. Filters tasks created after this date. -- **created_after_datetime** (`string`, optional) Filter tasks created after this ISO 8601 datetime string. -- **created_at_before** (`string`, optional) An ISO 8601 datetime string to filter tasks created before this date and time. -- **created_by_users** (`string`, optional) Comma-separated list of user IDs to filter tasks created by specific users. -- **created_on_before_date** (`string`, optional) Filter tasks created before a specific date using an ISO 8601 date string format. -- **created_on_date** (`string`, optional) Filter tasks by their creation date using an ISO 8601 date string or `null`. -- **due_at_after_datetime** (`string`, optional) Specify the start date and time for tasks due after this point. Use an ISO 8601 datetime string. -- **due_at_before** (`string`, optional) An ISO 8601 datetime string to filter tasks due before this date and time. -- **due_date_on** (`string`, optional) Filter tasks due on a specific date using an ISO 8601 date string or specify `null` for tasks with no due date. -- **enable_pretty_output** (`boolean`, optional) Formats the response with line breaks and indentation for readability. Use for debugging, as it increases response size and processing time. -- **end_date_before_start_on** (`string`, optional) Filter tasks starting before a specified date, using an ISO 8601 date string. -- **exclude_assigned_by_users** (`string`, optional) A comma-separated list of user IDs to exclude tasks assigned by these users. -- **exclude_assignees** (`string`, optional) Comma-separated list of user identifiers to exclude from the search results. -- **exclude_created_by_user_ids** (`string`, optional) Comma-separated list of user IDs to exclude from the search results. -- **exclude_followers_by_user_ids** (`string`, optional) Comma-separated list of user identifiers to exclude from the followers filter. -- **exclude_projects_by_id** (`string`, optional) A comma-separated list of project IDs to exclude from the search results. -- **exclude_sections_by_id** (`string`, optional) Comma-separated list of section or column IDs to exclude from the search results. -- **exclude_tags_by_ids** (`string`, optional) A comma-separated list of tag IDs to exclude from the search results. -- **exclude_tasks_commented_by_users** (`string`, optional) Comma-separated list of user identifiers to exclude tasks commented on by these users. -- **excluded_liked_by_user_ids** (`string`, optional) A comma-separated list of user IDs to exclude tasks liked by these users. -- **filter_by_all_projects** (`string`, optional) Comma-separated list of project IDs to filter tasks that belong to all specified projects. -- **filter_by_any_follower_ids** (`string`, optional) Filter tasks by providing a comma-separated list of user IDs who are followers of the tasks. -- **filter_by_any_team_ids** (`string`, optional) Comma-separated list of team IDs to filter tasks associated with any of these teams. -- **filter_due_date_before** (`string`, optional) Specify tasks with a due date earlier than this ISO 8601 date string. -- **filter_modified_date_start** (`string`, optional) Start date to filter tasks modified after this date in ISO 8601 format. -- **filter_sections_all** (`string`, optional) Comma-separated list of section or column IDs to filter tasks by inclusion in all specified sections. -- **filter_tasks_with_attachments** (`boolean`, optional) Set to true to filter tasks that have attachments, and false to include all tasks regardless of attachments. -- **filter_tasks_with_incomplete_dependencies** (`boolean`, optional) Filter tasks to those with incomplete dependencies. Use true to apply the filter. -- **filter_to_completed_tasks** (`boolean`, optional) Set to true to filter and display only completed tasks. -- **filter_to_incomplete_tasks_with_dependents** (`boolean`, optional) Set to true to filter tasks to those that are incomplete and have dependents. -- **include_any_tags_ids** (`string`, optional) Comma-separated list of tag IDs to include in the search filter. -- **include_only_subtasks** (`boolean`, optional) Set to true to include only subtasks in the results, false to include all tasks. -- **include_sections_in_search** (`string`, optional) A comma-separated list of section or column IDs to filter tasks in the search. -- **included_optional_properties** (`array[string]`, optional) List of optional properties to include for each returned task. Provide as comma-separated values. -- **last_modified_on** (`string`, optional) ISO 8601 date string or `null` to filter tasks based on the modification date. -- **modified_after_datetime** (`string`, optional) Filter tasks modified after this ISO 8601 datetime string. -- **modified_at_before_date** (`string`, optional) Filter tasks modified before this date. Use ISO 8601 datetime format. -- **portfolio_ids_included** (`string`, optional) A comma-separated list of portfolio IDs to include in the search. -- **project_ids_any** (`string`, optional) Comma-separated list of project IDs to include in the search. -- **search_text** (`string`, optional) Full-text search on task names and descriptions within the workspace. -- **sort_results_ascending** (`boolean`, optional) Set to true to sort search results in ascending order. Default is false. -- **start_date_after** (`string`, optional) An ISO 8601 date string to filter tasks starting after this date. -- **start_on_date** (`string`, optional) ISO 8601 date string specifying the start date of tasks to be searched, or `null` for unspecified. -- **task_resource_subtype** (`string`, optional) Filter tasks by their resource subtype, such as 'default_task', 'milestone', or 'approval'. -- **task_sort_order** (`string`, optional) Specify the sorting criteria for the task results. Options include 'due_date', 'created_at', 'completed_at', 'likes', or 'modified_at'. Defaults to 'modified_at'. -- **tasks_due_after_date** (`string`, optional) Specify an ISO 8601 date string to filter tasks due after this date. - - -## AsanaApi.GetTeamMembership - -
- - -Retrieve complete details for a team membership. - -**Parameters** - -- **team_membership_id** (`string`, required) The unique identifier for the specific team membership to retrieve. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the response with line breaks and indentation. Useful for debugging, but increases response time and size. -- **include_optional_properties** (`array[string]`, optional) A list of optional properties to include in the response, specified as strings. - - -## AsanaApi.GetTeamMemberships - -
- - -Retrieve compact team membership records from Asana. - -**Parameters** - -- **enable_pretty_output** (`boolean`, optional) Return response in a readable format with line breaks and indentation. Ideal for debugging. -- **optional_fields_to_include** (`array[string]`, optional) List the properties to include in the response, as some are excluded by default. -- **pagination_offset_token** (`string`, optional) An offset token for pagination. Use a previously returned token to access subsequent pages. If omitted, the first page is returned. -- **results_per_page** (`integer`, optional) Specify the number of results to return per page. Must be between 1 and 100. -- **team_identifier** (`string`, optional) Globally unique identifier for the team in Asana. -- **user_identifier** (`string`, optional) A string identifying a user. Use 'me', an email, or a user gid. Must be used with 'workspace'. -- **workspace_id** (`string`, optional) Globally unique identifier for the workspace. This parameter must be used with the user_id parameter. - - -## AsanaApi.FetchTeamMembers - -
- - -Retrieve the team memberships for a given team in Asana. - -**Parameters** - -- **team_global_identifier** (`string`, required) Globally unique identifier for the team to retrieve memberships for. -- **enable_pretty_output** (`boolean`, optional) Boolean to enable pretty formatted output with line breaks and indentation. Recommended for debugging due to increased response size and time. -- **optional_properties_to_include** (`array[string]`, optional) A list of optional properties to include in the results, given as an array of strings. Each string should be a property you wish to include. -- **pagination_offset_token** (`string`, optional) Token to retrieve the next page of results. Use the offset provided in a previous response for pagination. -- **results_per_page** (`integer`, optional) Number of objects to return per page. Must be between 1 and 100. - - -## AsanaApi.GetUserTeamMemberships - -
- - -Retrieve team membership records for a specific user. - -**Parameters** - -- **user_identifier** (`string`, required) A string identifying a user, which can be 'me', an email, or the user's gid. -- **workspace_identifier** (`string`, required) Globally unique identifier for the workspace in Asana. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the response output with line breaks and indentation, useful for debugging. It increases response size and time. -- **include_optional_fields** (`array[string]`, optional) A list of optional properties to include in the response, specified as strings. Use to get excluded fields. -- **pagination_offset** (`string`, optional) Offset token for pagination. Use the offset to get the next page of results, returned from a previous paginated request. -- **results_per_page** (`integer`, optional) Number of records to return per page, ranging from 1 to 100. - - -## AsanaApi.AsanaCreateTeam - -
- - -Create a team in your current Asana workspace. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response, enhancing the returned team's details. Only used when mode is 'execute'. -- **pretty_output_enabled** (`boolean`, optional) Set to true to receive pretty, human-readable output with line breaks and indentation. Use for debugging. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetAsanaTeamDetails - -
- - -Retrieve detailed information for a specific Asana team. - -**Parameters** - -- **team_global_id** (`string`, required) Globally unique identifier for the specific Asana team to retrieve details for. -- **enable_pretty_output** (`boolean`, optional) Set to true for human-readable formatting, with line breaks and indentation. Increases response time and size; use for debugging. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. - - -## AsanaApi.UpdateTeamInWorkspace - -
- - -Update a team within the current workspace. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_global_id** (`string`, optional) Globally unique identifier for the team to update in the workspace. Required to specify which team will be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) List of optional properties to include in the response. Use a list format for specifying multiple properties. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Enable 'pretty' formatted output for easier readability in responses, increasing response size and time, mainly used for debugging. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.GetAsanaTeamsForWorkspace - -
- - -Retrieve all teams for a specified Asana workspace. - -**Parameters** - -- **workspace_global_id** (`string`, required) Globally unique identifier for the workspace or organization in Asana. -- **enable_pretty_output** (`boolean`, optional) Set to true to receive the response in a 'pretty' JSON format with line breaks and indentation. Useful for debugging but increases response time and size. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. -- **pagination_offset_token** (`string`, optional) An offset token for pagination. Use a token from a previous request to retrieve the next page of results. If not provided, the first page is returned. -- **results_per_page** (`integer`, optional) Number of teams to return per page, between 1 and 100. - - -## AsanaApi.GetAsanaTeamsForUser - -
- - -Get all teams assigned to a specific Asana user. - -**Parameters** - -- **filter_by_organization** (`string`, required) Specify the workspace or organization to filter the teams on for the Asana user. -- **user_identifier** (`string`, required) A string identifying a user. Accepts 'me', an email, or user's gid. -- **enable_pretty_output** (`boolean`, optional) Set to true to format the response with line breaks and indentation. Useful for debugging but can increase response size. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. -- **pagination_offset_token** (`string`, optional) Offset token to navigate through paginated results. Use an offset from a previous request to get the next page. If not provided, the first page is returned. -- **results_per_page** (`integer`, optional) Number of team records to return per page. Must be between 1 and 100. - - -## AsanaApi.AddUserToTeam - -
- - -Adds a user to a specified team on Asana. - -**Parameters** - -- **team_unique_identifier** (`string`, required) Globally unique identifier for the team to which the user is being added. -- **enable_pretty_output** (`boolean`, optional) Set to true for a readable response format with line breaks and indentation. Use mainly for debugging due to increased response time and size. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of properties to include in the response, which are excluded by default. -- **user_identifier** (`string`, optional) Identifies the user to add. Use "me", an email, or the user's global ID (gid). - - -## AsanaApi.RemoveUserFromTeam - -
- - -Removes a user from a specified Asana team. - -**Parameters** - -- **team_global_identifier** (`string`, required) Globally unique identifier for the team to remove a user from. -- **enable_pretty_output** (`boolean`, optional) Enable pretty JSON formatting for the response. This increases readability but also response size, so it's advisable for debugging. -- **user_identifier** (`string`, optional) A string identifying the user to be removed. It can be 'me', an email, or the user's gid. - - -## AsanaApi.GetTimePeriodRecord - -
- - -Retrieve detailed information for a specific time period. - -**Parameters** - -- **time_period_id** (`string`, required) Globally unique identifier for the time period to retrieve its record. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for output. Use only for debugging as it increases response size and processing time. -- **include_optional_properties** (`array[string]`, optional) List of property names to include in the response. These properties are excluded by default. - - -## AsanaApi.GetTimePeriods - -
- - -Retrieve compact time period records from Asana. - -**Parameters** - -- **workspace_id** (`string`, required) Globally unique identifier for the Asana workspace. -- **enable_pretty_output** (`boolean`, optional) Set to true to receive formatted, readable output mainly for debugging, increasing response size. -- **end_date** (`string`, optional) The end date for time periods in ISO 8601 format. Specify the last date to include in the returned results. -- **include_optional_properties** (`array[string]`, optional) A list of optional property names to include in the response, specified as an array of strings. -- **pagination_offset** (`string`, optional) Offset token for pagination. Use the offset from a previous API response to retrieve the next page of results. If omitted, the first page is returned. -- **results_per_page** (`integer`, optional) The number of results to return per page, from 1 to 100. -- **start_date** (`string`, optional) Start date for the time period in ISO 8601 format. Determines the beginning of the time period records to be retrieved. - - -## AsanaApi.GetTimeTrackingEntries - -
- - -Retrieve time tracking entries for a specified task. - -**Parameters** - -- **task_id** (`string`, required) The unique identifier for the task to retrieve time tracking entries for. -- **enable_pretty_output** (`boolean`, optional) Set to true for a readable, pretty-formatted output. Recommended for debugging as it may increase response time and size. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional properties to include in the response, enhancing the returned resource details. -- **pagination_offset** (`string`, optional) Token for pagination; use to retrieve the next set of results. If not provided, the first page is returned. -- **results_per_page** (`integer`, optional) Number of time tracking entries to return per page, must be between 1 and 100. - - -## AsanaApi.CreateTimeTrackingEntry - -
- - -Create a time tracking entry on a task. - -**Parameters** - -- **task_id** (`string`, required) The unique identifier for the task to operate on. -- **duration_minutes_tracked** (`integer`, optional) Time in minutes tracked by the entry. Must be greater than 0. -- **enable_pretty_output** (`boolean`, optional) Set to true to receive formatted, human-readable JSON responses. Useful for debugging as it may slow down the response. -- **entry_logged_date** (`string`, optional) Optional. The date the time entry is logged. Defaults to today if not specified. -- **include_optional_properties** (`array[string]`, optional) A list of optional property names to include in the response. This should be used to specify which additional fields you want to include in the return data format when creating a time tracking entry. -- **project_gid_attribution** (`string`, optional) Optional. The GID of the project to which the tracked time is attributed. If not provided, no project attribution is made. - - -## AsanaApi.GetTimeTrackingEntry - -
- - -Retrieve a time tracking entry from Asana. - -**Parameters** - -- **time_tracking_entry_id** (`string`, required) Globally unique identifier for the time tracking entry. Used to specify which entry to retrieve. -- **enable_pretty_output** (`boolean`, optional) Enable to get the response in a readable format with line breaks and indentation. Use only for debugging, as it may increase response time and size. -- **include_optional_properties** (`array[string]`, optional) A list of property names to include as optional fields in the response. Provide properties as strings in a comma-separated format. Default properties are excluded unless explicitly specified here. - - -## AsanaApi.UpdateTimeTrackingEntry - -
- - -Updates an existing time tracking entry in Asana. - -**Parameters** - -- **time_tracking_entry_id** (`string`, required) Globally unique identifier for the time tracking entry to be updated. -- **duration_minutes_tracked** (`integer`, optional) The time in minutes tracked by the entry. Optional field. -- **enable_pretty_output** (`boolean`, optional) Enable formatted output for easier readability. Use mainly for debugging as it increases response time and size. -- **entry_logged_date** (`string`, optional) The date the entry is logged. Defaults to today if not specified. Use format 'YYYY-MM-DD'. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. -- **project_attributable_gid** (`string`, optional) Optional. The globally unique identifier (gid) of the project to which the time is attributable. - - -## AsanaApi.DeleteTimeTrackingEntry - -
- - -Delete a specific time tracking entry in Asana. - -**Parameters** - -- **time_tracking_entry_identifier** (`string`, required) Globally unique identifier for the time tracking entry to be deleted. -- **enable_pretty_output** (`boolean`, optional) Set to true for a formatted, readable JSON response. Use for debugging; increases response time and size. - - -## AsanaApi.FetchTimeTrackingData - -
- - -Fetch time tracking entries from Asana. - -**Parameters** - -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for the response. Useful for debugging, but increases response time and size. -- **include_optional_fields** (`array[string]`, optional) Include optional properties in the response by listing field names as a comma-separated array. This enhances the response data detail. -- **pagination_offset_token** (`string`, optional) Token to specify the starting point for retrieving the next page of results. Use the offset returned from a previous request. If not provided, the first page is returned. -- **portfolio_id** (`string`, optional) Globally unique identifier for the portfolio to filter time tracking entries by. -- **project_identifier_attribution** (`string`, optional) Unique ID for the project to filter time tracking entries by attribution. -- **results_per_page** (`integer`, optional) Specify the number of time tracking entries to return per page. Acceptable values are between 1 and 100. -- **task_id** (`string`, optional) Globally unique identifier for the task to filter time tracking entries by. This is used to specify the task whose time tracking entries you want to retrieve. -- **user_id_filter** (`string`, optional) Globally unique identifier for the user to filter time tracking entries by. -- **workspace_identifier** (`string`, optional) Globally unique identifier for the Asana workspace to filter the time tracking entries. - - -## AsanaApi.WorkspaceTypeaheadSearch - -
- - -Retrieve workspace objects using a typeahead search. - -**Parameters** - -- **workspace_id** (`string`, required) Globally unique identifier for the workspace or organization. -- **enable_pretty_output** (`boolean`, optional) Enable pretty format for the response with proper indentation. Use for debugging due to increased response size, but not recommended for production. -- **include_optional_fields** (`array[string]`, optional) A list of properties to include in the response, set as a comma-separated list to include optional fields in the result. -- **resource_type** (`string`, optional) Specify the type of workspace objects to return, such as 'custom_field', 'portfolio', 'project', 'tag', 'task', or 'user'. -- **results_count** (`integer`, optional) The number of results to return, ranging from 1 to 100. Default is 20. -- **search_query** (`string`, optional) String to search for relevant workspace objects. An empty string will return results. -- **search_result_resource_type** (`string`, optional) Specify the type of objects to return in the typeahead search. Options: custom_field, goal, project, project_template, portfolio, tag, task, team, user. Only one type can be used at a time. - - -## AsanaApi.FetchUserTaskDetails - -
- - -Retrieve the full record for a user task list. - -**Parameters** - -- **user_task_list_global_id** (`string`, required) Globally unique identifier for the user task list in Asana. -- **enable_pretty_output** (`boolean`, optional) Set to true for readable, indented JSON output. Use primarily for debugging due to increased response size. -- **include_optional_properties** (`array[string]`, optional) Specify which optional properties should be included in the response. Provide as a list of strings. - - -## AsanaApi.FetchUserTasks - -
- - -Fetch the full task list record for a user from Asana. - -**Parameters** - -- **user_identifier** (`string`, required) A string to identify the user, either "me", an email, or the user's gid. -- **workspace_id** (`string`, required) The ID of the workspace to retrieve the user's task list from in Asana. -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting for JSON responses. When true, the response includes line breaks and indentation for better readability. This increases response size and processing time, so use primarily for debugging. -- **include_optional_properties** (`array[string]`, optional) A list of optional properties to include in the response, specified as an array of strings. - - -## AsanaApi.GetAsanaUsers - -
- - -Retrieve Asana user records across workspaces. - -**Parameters** - -- **enable_pretty_output** (`boolean`, optional) Enable pretty formatting of the response for easier readability. Recommended for debugging as it increases response size and time. -- **filter_by_team_id** (`string`, optional) The team ID to filter users in Asana. It allows you to specify a particular team to narrow down the user results. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional user properties to include in the response. Use this to fetch additional fields excluded by default. -- **pagination_offset_token** (`string`, optional) Offset token for pagination, used to fetch subsequent pages of results. Only valid when using an offset returned in a prior request. -- **results_per_page** (`integer`, optional) The number of user records to return per page. Must be between 1 and 100. -- **workspace_id** (`string`, optional) The ID of the workspace or organization to filter users on. - - -## AsanaApi.GetUserDetails - -
- - -Retrieve detailed user information from Asana. - -**Parameters** - -- **user_identifier** (`string`, required) A string to identify a user, which can be 'me', an email, or a user's gid. -- **enable_pretty_output** (`boolean`, optional) Set to true to format the response for readability with line breaks and indentation. Recommended for debugging, as it may increase response time and size. -- **include_optional_properties** (`array[string]`, optional) Specify properties to include in the response using a comma-separated list of strings. - - -## AsanaApi.GetUserFavorites - -
- - -Retrieve a user's favorites from a specified Asana workspace. - -**Parameters** - -- **user_identifier** (`string`, required) String to identify a user: 'me', an email, or a user GID. -- **workspace_id** (`string`, required) The unique identifier of the Asana workspace to retrieve favorites from. -- **favorites_resource_type** (`string`, optional) Specifies the type of favorites to return (e.g., 'portfolio', 'project'). -- **include_optional_fields** (`array[string]`, optional) Specify a list of optional properties to include in the response, separated by commas. -- **pagination_offset** (`string`, optional) An offset token for pagination. Use a token returned from a previous request to navigate pages. If not provided, the first page is returned. -- **pretty_output** (`boolean`, optional) Set to true for readable, formatted output with line breaks and indentation, ideal for debugging. -- **results_per_page** (`integer`, optional) Specifies the number of objects to return per page, between 1 and 100. - - -## AsanaApi.GetTeamUsersAsana - -
- - -Retrieve user records for a specific Asana team. - -**Parameters** - -- **team_global_identifier** (`string`, required) Globally unique identifier for the Asana team to retrieve users from. -- **enable_pretty_output** (`boolean`, optional) Enable pretty output with line breaks and indentation for readability. Recommended for debugging as it increases response time and size. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of properties you wish to include in the response. These are excluded by default. -- **pagination_offset_token** (`string`, optional) Offset token for pagination. Use this token from a previous response to fetch the next page of results. - - -## AsanaApi.GetWorkspaceUsers - -
- - -Retrieve all users from a specified workspace. - -**Parameters** - -- **workspace_unique_id** (`string`, required) Globally unique identifier for the workspace or organization in Asana. -- **enable_pretty_output** (`boolean`, optional) Set to true for a "pretty" response with indentation and line breaks. Recommended for debugging as it increases response size and time. -- **include_optional_fields** (`array[string]`, optional) List properties to include in the response. Provide these as an array of strings to retrieve additional user information beyond the default fields. -- **pagination_offset_token** (`string`, optional) An offset token used for paginating results. It allows you to retrieve the next page of results by using a token returned from a previous request. If omitted, the first page is returned. - - -## AsanaApi.GetAsanaWebhooks - -
- - -Retrieve all registered Asana webhooks for a workspace. - -**Parameters** - -- **workspace_id** (`string`, required) The unique identifier of the Asana workspace to query for webhooks. -- **enable_pretty_output** (`boolean`, optional) Set to true for a readable, pretty-formatted JSON output. Increases response time and size. Use mainly for debugging. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of properties to include in the response, which are excluded by default. -- **pagination_offset_token** (`string`, optional) An offset token to retrieve the next page of results. Use the token from a previous API response for pagination. -- **results_per_page** (`integer`, optional) Number of webhooks to return per page, between 1 and 100. -- **specific_resource** (`string`, optional) Specify the resource ID to filter webhooks for that particular resource. - - -## AsanaApi.CreateAsanaWebhook - -
- - -Initiates the creation of a webhook in Asana. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **include_optional_properties** (`array[string]`, optional) Specify properties to include in the response. Provide a list of property names to include those optional properties in the response. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) If true, provides the response in a pretty format with line breaks and indentation. Use it for debugging as it increases response time and size. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.RetrieveWebhookDetails - -
- - -Retrieve the full record of a specified webhook. - -**Parameters** - -- **webhook_global_identifier** (`string`, required) Globally unique identifier for the webhook to retrieve its full record. -- **enable_pretty_output** (`boolean`, optional) Enables pretty output formatting with line breaks and indentation. Use this for debugging, but be aware it increases response time and size. -- **included_fields** (`array[string]`, optional) List of optional properties to include in the response. Provide these as an array of strings. - - -## AsanaApi.AsanaUpdateWebhookFilters - -
- - -Update filters for an Asana webhook. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **webhook_global_id** (`string`, optional) Globally unique identifier for the webhook to update its filters. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. Only used when mode is 'execute'. -- **enable_pretty_output** (`boolean`, optional) Enable this to receive the response in a human-readable format with line breaking and indentation. Recommended only for debugging as it increases response size and time. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## AsanaApi.DeleteAsanaWebhook - -
- - -Permanently delete a webhook in Asana. - -**Parameters** - -- **webhook_global_id** (`string`, required) Globally unique identifier for the specific webhook to delete in Asana. -- **enable_pretty_output** (`boolean`, optional) If true, formats the response with line breaks and indentation for readability. Use primarily for debugging as it increases response time and size. - - -## AsanaApi.GetWorkspaceMembership - -
- - -Get the complete record for a workspace membership. - -**Parameters** - -- **workspace_membership_id** (`string`, required) The unique identifier for the workspace membership to retrieve. -- **enable_pretty_output** (`boolean`, optional) Set to true for "pretty" JSON formatting with line breaks and indentation. Increases response time and size; use for debugging. -- **include_optional_properties** (`array[string]`, optional) List of specific properties to include in the response, as some are excluded by default. - - -## AsanaApi.GetUserWorkspaceMemberships - -
- - -Fetches a user's workspace membership records in Asana. - -**Parameters** - -- **user_identifier** (`string`, required) String identifying a user. Use 'me', an email, or a user gid. -- **enable_pretty_output** (`boolean`, optional) If true, provides the response in a readable, pretty format with line breaks and indentation. Useful for debugging. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional user properties to include in the response. -- **page_offset_token** (`string`, optional) Token to fetch the next page of results from a paginated request. Use a token returned from a previous response. -- **results_per_page** (`integer`, optional) Number of objects to return per page, between 1 and 100. - - -## AsanaApi.GetWorkspaceMemberships - -
- - -Retrieve workspace membership records. - -**Parameters** - -- **workspace_global_id** (`string`, required) A globally unique identifier for the workspace or organization to fetch memberships for. -- **enable_pretty_output** (`boolean`, optional) Enable pretty output with line breaks and indentation for debugging purposes. -- **include_optional_fields** (`array[string]`, optional) An array of strings specifying optional properties to include in the response. -- **pagination_offset** (`string`, optional) Offset token for pagination to retrieve the next page of results. Use the token returned from a previous call for continuous paging, or leave empty for the first page. -- **results_per_page** (`integer`, optional) Specify the number of membership records to return per page, from 1 to 100. -- **user_identifier** (`string`, optional) A string to identify a user, such as 'me', an email, or a user's gid in Asana. - - -## AsanaApi.GetVisibleWorkspaces - -
- - -Retrieve all workspaces visible to the user. - -**Parameters** - -- **enable_pretty_output** (`boolean`, optional) Enable for pretty, readable response. Ideal for debugging as it increases response time and size. -- **include_optional_properties** (`array[string]`, optional) Comma-separated list of optional fields to include in the response. Use this to include properties that are excluded by default. -- **pagination_offset** (`string`, optional) An offset token for paginating through the results. Use the token returned from a previous request to access the next page. -- **results_limit_per_page** (`integer`, optional) Specify the number of workspaces to return per page. Must be between 1 and 100. - - -## AsanaApi.GetWorkspaceDetails - -
- - -Retrieve detailed information about a specific Asana workspace. - -**Parameters** - -- **workspace_global_id** (`string`, required) Globally unique identifier for the Asana workspace or organization. -- **enable_pretty_output** (`boolean`, optional) Enable this to provide a response with pretty formatting, including line breaks and indentation. Recommended for debugging due to increased response size and time. -- **include_optional_properties** (`array[string]`, optional) List the optional properties to include, as a comma-separated list, to extend the default fields in the workspace record. - - -## AsanaApi.UpdateWorkspaceName - -
- - -Update the name of an existing Asana workspace. - -**Parameters** - -- **workspace_global_id** (`string`, required) Globally unique identifier for the workspace or organization. -- **enable_pretty_output** (`boolean`, optional) Enable this to receive the response in a readable and formatted style. Useful for debugging. May increase response size and time. -- **include_optional_fields** (`array[string]`, optional) List of additional workspace properties to include in the response, comma-separated. -- **resource_base_type** (`string`, optional) Specify the base type of the resource to update the workspace name. -- **workspace_name** (`string`, optional) The new name for the Asana workspace you want to update. -- **workspace_resource_gid** (`string`, optional) Globally unique identifier of the workspace resource. This is required to specify which workspace to update. - - -## AsanaApi.AddUserToWorkspace - -
- - -Add a user to an Asana workspace or organization. - -**Parameters** - -- **workspace_global_identifier** (`string`, required) Globally unique identifier for the workspace or organization in Asana. -- **enable_pretty_output** (`boolean`, optional) Enable this to receive the response in a readable JSON format with line breaks and indentation. This is useful for debugging but can increase response time and size. -- **include_optional_fields** (`array[string]`, optional) Comma-separated list of optional properties to include in the response. -- **user_identifier** (`string`, optional) A string identifying a user. Can be "me", an email, or a user ID (gid). - - -## AsanaApi.RemoveUserFromWorkspace - -
- - -Remove a user from an Asana workspace or organization. - -**Parameters** - -- **workspace_identifier** (`string`, required) Globally unique identifier for the workspace or organization in Asana. -- **enable_pretty_output** (`boolean`, optional) Enable to receive formatted and more readable output. Use for debugging due to increased response size and time. -- **user_identifier** (`string`, optional) Identifies the user to be removed. Accepts 'me', an email, or a globally unique user ID. - - -## AsanaApi.GetWorkspaceEvents - -
- - -Retrieve all events in a workspace since a specific sync token. - -**Parameters** - -- **workspace_global_id** (`string`, required) Globally unique identifier for the workspace or organization in Asana. -- **enable_pretty_output** (`boolean`, optional) Enable pretty output for better readability. Recommended for debugging as it increases response size and takes extra time. -- **sync_token** (`string`, optional) A sync token received from the last request to fetch events from a specific point in time. Omit on first sync to receive a new token. - - - -## Reference - -Below is a reference of enumerations used by some of the tools in the AsanaApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - - -## Auth - -The AsanaApi MCP Server uses the Auth Provider with id `arcade-asana` to connect to users' AsanaApi accounts. In order to use the MCP Server, you will need to configure the `arcade-asana` auth provider. - -For detailed information on configuring the Asana OAuth provider with Arcade, see the [Asana Auth Provider documentation](/references/auth-providers/asana). - - \ No newline at end of file diff --git a/app/en/resources/integrations/productivity/asana/_meta.tsx b/app/en/resources/integrations/productivity/asana/_meta.tsx deleted file mode 100644 index 457111c79..000000000 --- a/app/en/resources/integrations/productivity/asana/_meta.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import type { MetaRecord } from "nextra"; - -const meta: MetaRecord = { - reference: { - title: "Reference", - }, -}; - -export default meta; diff --git a/app/en/resources/integrations/productivity/asana/page.mdx b/app/en/resources/integrations/productivity/asana/page.mdx deleted file mode 100644 index bbf55f532..000000000 --- a/app/en/resources/integrations/productivity/asana/page.mdx +++ /dev/null @@ -1,629 +0,0 @@ ---- -asIndexPage: true ---- - -# Asana - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Asana MCP Server provides a pre-built set of tools for interacting with Asana. These tools make it easy to build agents and AI apps that can: - -- Manage teams, projects, and workspaces. -- Create, update, and search for tasks. -- Retrieve data about tasks, projects, workspaces, users, etc. -- Manage task attachments. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Asana.GetProjectById - -
- - -Get a project by its ID. - -**Parameters** - -- **project_id** _(string, required)_ The ID of the project. E.g. '1234567890' - -## Asana.ListProjects - -
- - -List projects associated to one or more teams. - -**Parameters** - -- **team_id** _(string, optional)_ The team ID to get projects from. Defaults to None (does not filter by team). -- **workspace_id** _(string, optional)_ The workspace ID to get projects from. Defaults to None. If not provided and the user has only one workspace, it will use that workspace. If not provided and the user has multiple workspaces, it will raise an error listing the available workspaces. -- **limit** _(int, optional, Defaults to `100`)_ The maximum number of projects to return. Min is 1, max is 100. Defaults to 100. -- **next_page_token** _(string, optional)_ The token to retrieve the next page of projects. Defaults to None (start from the first page). - -## Asana.GetTagById - -
- - -Get a tag by its ID. - -**Parameters** - -- **tag_id** _(string, required)_ The ID of the tag. E.g. '1234567890' - -## Asana.CreateTag - -
- - -Create a tag. - -**Parameters** - -- **name** _(string, required)_ The name of the tag. E.g. 'Priority'. -- **description** _(string, optional)_ The description of the tag. Defaults to None (no description). -- **color** _(list of enum [TagColor](/resources/integrations/productivity/asana/reference#tagcolor), optional)_ The color of the tag. Defaults to None (no color). -- **workspace_id** _(string, None)_ The ID of the workspace to create the tag in. If not provided, it will associate the tag to the user's workspace, if there's only one. Otherwise, it will raise an error. - -## Asana.ListTags - -
- - -List tags associated to one or more workspaces. - -**Parameters** - -- **workspace_id** _(string, optional)_ The workspace ID to retrieve tags from. Defaults to None. If not provided and the user has only one workspace, it will use that workspace. If not provided and the user has multiple workspaces, it will raise an error listing the available workspaces. -- **limit** _(int, optional, Defaults to `100`)_ Maximum number of items to return. Defaults to 100. Maximum allowed is 100. -- **next_page_token** _(string, optional)_ The token to retrieve the next page of tags. Defaults to None (start from the first page). - -## Asana.GetTasksWithoutId - -
- - -Search and retrieve tasks using full-text and filters when you don't have the task ID. - -**Parameters** - -- **keywords** _(string, optional)_ Keywords to search for tasks. Matches against the task name and description. Defaults to None (no keyword filter). -- **workspace_id** _(string, optional)_ The workspace ID to search for tasks. Defaults to None. If not provided and the user has only one workspace, it will use that workspace. If not provided and the user has multiple workspaces, it will raise an error listing the available workspaces. -- **assignee_id** _(string, optional)_ The ID of the user to filter tasks assigned to. Defaults to None (does not filter by assignee). -- **project** _(string, optional)_ The ID or name of the project to filter tasks. Defaults to None (does not filter by project). -- **team_id** _(string, optional)_ The ID of the team to filter tasks. Defaults to None (does not filter by team). -- **tags** _(list of strings, optional)_ Restricts the search to tasks associated to the given tags. Each item in the list can be a tag name (e.g. 'My Tag') or a tag ID (e.g. '1234567890'). Defaults to None (searches tasks associated to any tag or no tag). -- **due_on** _(string, optional)_ Match tasks that are due exactly on this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (searches tasks due on any date or without a due date). -- **due_on_or_after** _(string, optional)_ Match tasks that are due on OR AFTER this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (searches tasks due on any date or without a due date). -- **due_on_or_before** _(string, optional)_ Match tasks that are due on OR BEFORE this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (searches tasks due on any date or without a due date). -- **completed** _(bool, optional)_ Match tasks that are completed. Defaults to False (tasks that are NOT completed). -- **start_on** _(string, optional)_ Match tasks that started on this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (searches tasks started on any date or without a start date). -- **start_on_or_after** _(string, optional)_ Match tasks that started on OR AFTER this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (searches tasks started on any date or without a start date). -- ** start_on_or_before** _(string, optional)_ Match tasks that started on OR BEFORE this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (searches tasks started on any date or without a start date). -- **completed** _(bool, optional)_ Match tasks that are completed. Defaults to False (tasks that are NOT completed). -- **limit** _(int, optional, Defaults to `20`)_ Maximum number of tasks to return. Min of 1, max of 20. Defaults to 20. -- **sort_by** _(enum [TaskSortBy](/resources/integrations/productivity/asana/reference#tasksortby), optional)_ The field to sort the tasks by. Defaults to TaskSortBy.MODIFIED_AT. -- **sort_order** _(enum [SortOrder](/resources/integrations/productivity/asana/reference#sortorder), optional)_ The order to sort the tasks by. Defaults to SortOrder.DESCENDING. - -## Asana.GetTaskById - -
- - -Get a task by its ID. - -**Parameters** - -- **task_id** _(string, required)_ The ID of the task. E.g. '1234567890' -- **max_subtasks** _(int, optional)_ The maximum number of subtasks to return. Min of 0 (no subtasks), max of 100. Defaults to 100. - -## Asana.GetSubtasksFromATask - -
- - -Get subtasks associated to a task. - -**Parameters** - -- **task_id** _(string, required)_ The ID of the task. E.g. '1234567890' -- **limit** _(int, optional, Defaults to `100`)_ Maximum number of subtasks to return. Defaults to 100. Maximum allowed is 100. -- **next_page_token** _(string, optional)_ The token to retrieve the next page of subtasks. Defaults to None (start from the first page). - -## Asana.UpdateTask - -
- - -Update a task. - -**Parameters** - -- **task_id** _(string, required)_ The ID of the task. E.g. '1234567890' -- **name** _(string, optional)_ The new name of the task. Defaults to None (does not change the current name). -- **description** _(string, optional)_ The new description of the task. Defaults to None (does not change the current description). -- **completed** _(bool, optional)_ The new completion status of the task. Provide True to mark the task as completed, False to mark it as not completed. Defaults to None (does not change the current completion status). -- **start_date** _(string, optional)_ The new start date of the task. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (does not change the current start date). -- **due_date** _(string, optional)_ The new due date of the task. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (does not change the current due date). -- **assignee_id** _(string, optional)_ The ID of the user to assign the task to. Defaults to None (does not change the current assignee). - -## Asana.MarkTaskAsCompleted - -
- - -Mark a task as completed. - -**Parameters** - -- **task_id** _(string, required)_ The ID of the task. E.g. '1234567890' - -## Asana.CreateTask - -
- - -Create a task. - -**Parameters** - -- **name** _(string, required)_ The name of the task. E.g. 'My Task' -- **description** _(string, optional)_ The description of the task. Defaults to None (no description). -- **start_date** _(string, optional)_ The start date of the task. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (no start date). -- **due_date** _(string, optional)_ The due date of the task. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (no due date). -- **parent_task_id** _(string, optional)_ The ID of the parent task. Defaults to None (no parent task). -- **workspace_id** _(string, optional)_ The ID of the workspace to associate the task to. Defaults to None. -- **project** _(string, optional)_ The ID or name of the project to associate the task to. Defaults to None (no project). -- **assignee_id** _(string, optional)_ The ID of the user to assign the task to. Defaults to None (does not assign the task to anyone). -- **tags** _(list of strings, optional)_ The tags to associate with the task. Multiple tags can be provided in the list. Each item in the list can be a tag name (e.g. 'My Tag') or a tag ID (e.g. '1234567890'). If a tag name does not exist, it will be automatically created with the new task. Defaults to None (no tags associated). - -Observations: - -A new task must be associated to at least one of the following: parent_task_id, project, or workspace_id. If none of these are provided and the account has only one workspace, the task will be associated to that workspace. If none are provided and the account has multiple workspaces, an error will be raised with a list of available workspaces. - -## Asana.AttachFileToTask - -
- - -Attach a file to a task. - -**Parameters** - -- **task_id** _(string, required)_ The ID of the task. E.g. '1234567890' -- **file_name** _(string, required)_ The name of the file to attach with format extension. E.g. 'Image.png' or 'Report.pdf'. -- **file_content_stream** _(string, required)_ The string contents of the file to attach. Use this if the file is a text file. Defaults to None. -- **file_content_base64** _(string, required)_ The base64-encoded binary contents of the file. Use this for binary files like images or PDFs. Defaults to None. -- **file_content_url** _(string, required)_ The URL of the file to attach. Use this if the file is hosted on an external URL. Defaults to None. -- **file_encoding** _(string, optional)_ The encoding of the file to attach. Only used with file_content_str. Defaults to 'utf-8'. - -Observations: - -Provide exactly one of `file_content_str`, `file_content_base64`, or `file_content_url`, never more than one or none. - -- Use `file_content_str` for text files (will be encoded using `file_encoding`) -- Use `file_content_base64` for binary files like images, PDFs, etc. -- Use `file_content_url` if the file is hosted on an external URL - -## Asana.ListUsers - -
- - -List users that are members of one or more workspaces. - -**Parameters** - -- **workspace_id** _(string, optional)_ The workspace ID to list users from. Defaults to None. If no workspace ID is provided, it will use the current user's workspace , if there's only one. If the user has multiple workspaces, it will raise an error. -- **limit** _(int, optional, Defaults to `500`)_ The maximum number of users to retrieve. Min is 1, max is 500. Defaults to 500. -- **next_page_token** _(string, optional)_ The token to retrieve the next page of users. Defaults to None (start from the first page). - -## Asana.GetUserById - -
- - -Get a user by their ID. - -**Parameters** - -- **user_id** _(string, required)_ The ID of the user. E.g. '1234567890' - -## Asana.GetTeamById - -
- - -Get a team by its ID. - -**Parameters** - -- **team_id** _(string, required)_ The ID of the team. E.g. '1234567890' - -## Asana.ListTeamsTheCurrentUserIsAMemberOf - -
- - -List the teams the current user is a member of. - -**Parameters** - -- **workspace_id** _(string, optional)_ The workspace ID to list teams from. Defaults to None. If no workspace ID is provided, it will use the current user's workspace , if there's only one. If the user has multiple workspaces, it will raise an error. -- **limit** _(int, optional, Defaults to `100`)_ The maximum number of teams to retrieve. Min is 1, max is 100. Defaults to 100. -- **next_page_token** _(string, optional)_ The token to retrieve the next page of teams. Defaults to None (start from the first page). - -## Asana.ListTeams - -
- - -List teams associated to a workspace. - -**Parameters** - -- **workspace_id** _(string, optional)_ The workspace ID to list teams from. Defaults to None. If no workspace ID is provided, it will use the current user's workspace, if there's only one. If the user has multiple workspaces, it will raise an error listing the available workspaces. - -## Asana.GetWorkspaceById - -
- - -Get a workspace by its ID. - -**Parameters** - -- **workspace_id** _(string, required)_ The ID of the workspace. E.g. '1234567890' - -## Asana.ListWorkspaces - -
- - -List the user workspaces. - -**Parameters** - -- **limit** _(int, optional, Defaults to `100`)_ The maximum number of workspaces to retrieve. Min is 1, max is 100. Defaults to 100. -- **next_page_token** _(string, optional)_ The token to retrieve the next page of workspaces. Defaults to None (start from the first page). - -## Auth - -The Arcade Asana MCP Sever uses the [Asana auth provider](/references/auth-providers/asana) to connect to users' Asana accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Asana auth provider](/references/auth-providers/asana#configuring-your-own-asana-auth-provider-in-arcade) with your own Asana app credentials. - - diff --git a/app/en/resources/integrations/productivity/asana/reference/page.mdx b/app/en/resources/integrations/productivity/asana/reference/page.mdx deleted file mode 100644 index 42b40246d..000000000 --- a/app/en/resources/integrations/productivity/asana/reference/page.mdx +++ /dev/null @@ -1,39 +0,0 @@ -# Asana Reference - -Below is a reference of enumerations used by some tools in the Asana MCP Server: - -## TagColor - -- **DARK_GREEN**: `'dark-green'` -- **DARK_RED**: `'dark-red'` -- **DARK_BLUE**: `'dark-blue'` -- **DARK_PURPLE**: `'dark-purple'` -- **DARK_PINK**: `'dark-pink'` -- **DARK_ORANGE**: `'dark-orange'` -- **DARK_TEAL**: `'dark-teal'` -- **DARK_BROWN**: `'dark-brown'` -- **DARK_WARM_GRAY**: `'dark-warm-gray'` -- **LIGHT_GREEN**: `'light-green'` -- **LIGHT_RED**: `'light-red'` -- **LIGHT_BLUE**: `'light-blue'` -- **LIGHT_PURPLE**: `'light-purple'` -- **LIGHT_PINK**: `'light-pink'` -- **LIGHT_ORANGE**: `'light-orange'` -- **LIGHT_TEAL**: `'light-teal'` -- **LIGHT_BROWN**: `'light-brown'` -- **LIGHT_WARM_GRAY**: `'light-warm-gray'` - - -## TaskSortBy - -- **DUE_DATE**: `'due_date'` -- **CREATED_AT**: `'created_at'` -- **COMPLETED_AT**: `'completed_at'` -- **MODIFIED_AT**: `'modified_at'` -- **LIKES**: `'likes'` - - -## SortOrder - -- **ASCENDING**: `'ascending'` -- **DESCENDING**: `'descending'` diff --git a/app/en/resources/integrations/productivity/ashby-api/page.mdx b/app/en/resources/integrations/productivity/ashby-api/page.mdx deleted file mode 100644 index e82fbea69..000000000 --- a/app/en/resources/integrations/productivity/ashby-api/page.mdx +++ /dev/null @@ -1,4712 +0,0 @@ -# AshbyApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The AshbyApi MCP Server offers a comprehensive suite of tools for managing recruitment processes within the Ashby platform. Users can perform a variety of actions, including: - -- Create, update, and manage job applications and candidates. -- Retrieve detailed information about candidates, applications, jobs, and departments. -- Manage interview schedules, feedback, and assessments. -- Handle job postings, openings, and associated locations. -- Utilize webhooks for event notifications and manage user permissions. - -This server is designed to streamline the hiring process, making it easier to track candidates and manage recruitment workflows effectively. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## AshbyApi.GetApiKeyInfo - -
- - -Retrieve information about the current API key in use. - -**Parameters** - -- **empty_request_body** (`json`, optional) Provide an empty JSON object as the request body. This is required to make the call but should contain no data. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ChangeApplicationSource - -
- - -Change the source of an application in Ashby. - -**Parameters** - -- **application_source_details** (`json`, optional) JSON object containing `applicationId` and `sourceId` to specify the application and its new source. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ChangeApplicationStage - -
- - -Change the stage of a candidate's application. - -**Parameters** - -- **application_stage_change_details** (`json`, optional) A JSON object containing applicationId, interviewStageId, and optional archiveReasonId and archiveEmail details, to change the application stage. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateJobApplication - -
- - -Create a job application for a candidate. - -**Parameters** - -- **job_application_data** (`json`, optional) JSON object containing candidateId, jobId, interviewPlanId, interviewStageId, sourceId, creditedToUserId, createdAt, and applicationHistory for the job application. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.FetchApplicationDetails - -
- - -Fetch application details using application or form instance ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListApplications - -
- - -Retrieve all applications in the organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.TransferApplicationToJob - -
- - -Transfer an application to a different job. - -**Parameters** - -- **application_transfer_details** (`json`, optional) A JSON object containing the details for transferring an application, including `applicationId`, `jobId`, `interviewPlanId`, `interviewStageId`, and `startAutomaticActivities`. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateApplicationStatus - -
- - -Updates the status or details of an application. - -**Parameters** - -- **application_update_payload** (`json`, optional) JSON object containing applicationId, sourceId, creditedToUserId, createdAt, and sendNotifications to update application details. sendNotifications controls subscriber notifications. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateApplicationHistory - -
- - -Update the history of an application. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetApplicationHistory - -
- - -Fetch a paginated list of application history items. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetCandidateCriteriaEvaluations - -
- - -Retrieve AI evaluations for candidate job criteria. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListApplicationFeedback - -
- - -Retrieve interview feedback and scorecards for applications. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.AddHiringTeamMember - -
- - -Add a user to the hiring team for an application. - -**Parameters** - -- **hiring_team_member_details** (`json`, optional) A JSON object containing 'applicationId', 'teamMemberId', and 'roleId'. These IDs specify the application, team member, and role for adding to the hiring team. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.RemoveHiringTeamMember - -
- - -Remove a user from the hiring team for an application. - -**Parameters** - -- **hiring_team_removal_details** (`json`, optional) JSON object containing applicationId, teamMemberId, and roleId for the user to be removed. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetHiringTeamRoles - -
- - -Retrieve all available hiring team roles for applications. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.SubmitApplicationFeedback - -
- - -Submit application feedback forms with various field types. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetApprovalList - -
- - -Retrieve all approvals in the organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateApprovalDefinition - -
- - -Create or update an approval definition for an entity. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListArchiveReasons - -
- - -Retrieve a list of archive reasons. - -**Parameters** - -- **include_archived_interview_plans** (`boolean`, optional) Set to true to include archived interview plans in the results. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.AddCompletedAssessmentToCandidate - -
- - -Adds a completed assessment to a candidate's record. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.StartAssessment - -
- - -Start an assessment using the Ashby API. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListAssessments - -
- - -Retrieve a list of available assessments. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateAssessmentStatus - -
- - -Update the status of a candidate assessment in Ashby. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CancelAssessment - -
- - -Cancel an ongoing assessment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.AddCandidateToProject - -
- - -Add a candidate to a specified project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.AddCandidateTag - -
- - -Add a tag to a candidate in the recruitment system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.AnonymizeCandidateData - -
- - -Permanently anonymize a candidate's data in the system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateCandidate - -
- - -Create a new candidate entry. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateCandidateNote - -
- - -Add a note to a candidate's profile in Ashby. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetCandidateInformation - -
- - -Retrieve detailed information of a candidate using their ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListCandidates - -
- - -Retrieve a list of all candidates in an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListCandidateClientInfo - -
- - -Retrieve client info records for a candidate. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListCandidateNotes - -
- - -Retrieve all notes associated with a candidate. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListCandidateProjects - -
- - -Retrieve all projects linked to a candidate. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.FindCandidates - -
- - -Search for candidates by email or name. - -**Parameters** - -- **candidate_email** (`string`, optional) The email address of the candidate to search for. Use this to refine the search results and find specific candidates. -- **candidate_name** (`string`, optional) The name of the candidate to search for in the database. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateCandidateInfo - -
- - -Update an existing candidate's information. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateCandidateTag - -
- - -Create a new candidate tag in the Ashby system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListCandidateTags - -
- - -Retrieve a list of all candidate tags. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListCloseReasons - -
- - -Get a list of close reasons for jobs or openings. - -**Parameters** - -- **include_archived_reasons** (`boolean`, optional) Set to true to include archived close reasons in the response. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListEnabledCommunicationTemplates - -
- - -Retrieve all enabled communication templates. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateCustomField - -
- - -Creates a new custom field in Ashby. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetCustomFieldInfo - -
- - -Retrieve information about a custom field. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListCustomFields - -
- - -Retrieve a list of all custom fields. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.SetCustomFieldValue - -
- - -Update the value of a custom field for an object. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateDepartment - -
- - -Create a new department within an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ArchiveDepartment - -
- - -Archive a department within an organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.RestoreDepartment - -
- - -Restores a previously deleted department. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetDepartmentDetails - -
- - -Fetches department details using a department ID. - -**Parameters** - -- **department_id** (`json`, optional) The ID of the department to fetch details for. This is required to retrieve accurate department information. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListDepartments - -
- - -Retrieve a list of all departments. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.MoveDepartment - -
- - -Relocate a department to a new parent structure. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateDepartment - -
- - -Update existing department details in the system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.RetrieveCandidateFileUrl - -
- - -Retrieve the URL of a candidate's associated file. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetFeedbackFormInfo - -
- - -Fetch detailed information about a specific feedback form by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListFeedbackForms - -
- - -Retrieve a list of all feedback forms. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.HiringTeamAddMember - -
- - -Adds a user to the hiring team for a job or application. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.RemoveTeamMemberFromHiring - -
- - -Remove a member from the hiring team at job or application level. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListHiringTeamRoles - -
- - -Retrieve possible hiring team roles within an organization. - -**Parameters** - -- **return_role_titles_only** (`boolean`, optional) Set to true to return only role titles. Set to false to return objects with id and title. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.FetchInterviewDetails - -
- - -Retrieve interview details using interview ID. - -**Parameters** - -- **interview_id** (`json`, optional) The unique ID of the interview to fetch details for. This ID is required to retrieve the specific interview information. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListInterviews - -
- - -Retrieve a list of all scheduled interviews. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListInterviewEvents - -
- - -Retrieve a list of interview events for a schedule. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListInterviewPlans - -
- - -Fetch a list of all available interview plans. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CancelInterviewSchedule - -
- - -Cancel an interview schedule using its ID. - -**Parameters** - -- **interview_schedule_cancel_details** (`json`, optional) A JSON object containing the ID of the interview schedule to cancel and whether rescheduling is allowed. Required JSON structure with keys 'id' and 'allowReschedule'. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateInterviewSchedule - -
- - -Create a scheduled interview in Ashby. - -**Parameters** - -- **interview_schedule_request** (`json`, optional) JSON object containing application ID, interview events, and extra data. Events include start time, end time, and interviewers. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetInterviewSchedules - -
- - -Retrieve all interview schedules for the organization. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateInterviewSchedule - -
- - -Update, add, or cancel interview schedule events. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListInterviewStages - -
- - -Retrieve all interview stages for an interview plan in order. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.FetchInterviewStageDetails - -
- - -Fetches details of a specific interview stage. - -**Parameters** - -- **interview_stage_id** (`json`, optional) The unique identifier of the interview stage to fetch details for. Required for retrieving the specific stage information. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListInterviewStageGroups - -
- - -Retrieve all interview group stages in order. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListInterviewerPools - -
- - -Fetches a list of all interviewer pools. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetInterviewerPoolInfo - -
- - -Retrieve information about an interviewer pool. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateInterviewerPool - -
- - -Creates a new interviewer pool for hiring processes. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateInterviewerPool - -
- - -Update an interviewer pool. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ArchiveInterviewerPool - -
- - -Archive an interviewer pool when needed. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.RestoreInterviewerPool - -
- - -Restores an archived interviewer pool. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.AddUserToInterviewerPool - -
- - -Add a user to an interviewer pool in Ashby. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.RemoveUserFromInterviewerPool - -
- - -Remove a user from an interviewer pool. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateNewJob - -
- - -Create a new job listing with specified details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetJobDetails - -
- - -Retrieve detailed information about a job using its ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListAllJobs - -
- - -Retrieve all open, closed, and archived jobs from Ashby. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.SetJobStatus - -
- - -Update the status of a job by its ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateJobDetails - -
- - -Update details of an existing job. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateJobCompensation - -
- - -Update a job's compensation details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.SearchJobsByTitle - -
- - -Search for jobs by title. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListEnabledJobBoards - -
- - -Retrieve all enabled job boards. - -**Parameters** - -- **request_body_data** (`json`, optional) The JSON payload for the request. This should contain any necessary parameters for listing enabled job boards. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.JobInterviewPlanInfo - -
- - -Retrieve a job's interview plan details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetJobPostingInfo - -
- - -Retrieve detailed information about a specific job posting. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListPublishedJobPostings - -
- - -Retrieve all published and publicly listed job postings. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListJobTemplates - -
- - -Retrieve all active and inactive job templates. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateJobPosting - -
- - -Update an existing job posting on the Ashby platform. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ArchiveLocation - -
- - -Archives a location or location hierarchy. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateLocation - -
- - -Create a location or location hierarchy. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetLocationDetails - -
- - -Retrieve detailed information for a specific location. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListAllLocations - -
- - -Retrieve a list of all available locations. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.MoveLocationInHierarchy - -
- - -Move a location within the organizational hierarchy. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.RestoreArchivedLocation - -
- - -Restores an archived location or hierarchy. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateLocationAddress - -
- - -Update the address of a location. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateLocationName - -
- - -Updates the name of a location. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateLocationRemoteStatus - -
- - -Update the remote status of a specific location. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateWorkplaceType - -
- - -Update the workplace type for a specific location. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.OfferApprovalAction - -
- - -Approve an offer or a specific step in the approval process. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateOffer - -
- - -Create a new offer using specified form fields. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetOfferDetails - -
- - -Retrieve details about a specific offer using its ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetLatestOffers - -
- - -Retrieve the latest version of all offers available. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateCandidateOfferVersion - -
- - -Initiate a new offer version for a candidate. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateOffer - -
- - -Update an existing offer and retrigger approval steps. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.StartOfferProcess - -
- - -Initiate an offer process for a candidate. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetOpeningInfo - -
- - -Retrieve job opening details using a UUID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListJobOpenings - -
- - -Retrieve a list of current job openings. - -**Parameters** - -- **last_sync_token** (`string`, optional) Opaque token representing the last time a full set of results was fetched. Use this to sync data updates. -- **page_cursor** (`string`, optional) String indicating which page of job openings results to fetch, used for pagination. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.SearchJobOpenings - -
- - -Search for job openings by identifier. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateJobOpening - -
- - -Create a new job opening in the system. - -**Parameters** - -- **associated_job_ids** (`array[string]`, optional) Array of job IDs related to the opening. -- **department_team_id** (`string`, optional) The unique identifier for the department or team associated with the job opening. -- **employment_start_date** (`string`, optional) The date (in YYYY-MM-DD format) when the hired person is expected to start employment. -- **employment_type** (`string`, optional) The employment type for this opening. Options include: FullTime, PartTime, Intern, Contract, Temporary. -- **identifiers** (`string`, optional) Comma-separated list of jobIds, targetHireDate, targetStartDate, isBackfill, and employmentType to define job details. -- **is_backfill** (`boolean`, optional) Indicate whether the job opening is intended to backfill a previous employee's position. -- **job_description** (`string`, optional) A detailed description of the job opening, including responsibilities and qualifications. -- **location_ids** (`array[string]`, optional) A list of location IDs associated with the job opening. -- **opening_state** (`string`, optional) Specifies the state of the job opening. Options: Draft, Approved, Open, Closed. Defaults to Draft. Additional validation may be needed if not Draft. -- **target_hire_date** (`string`, optional) Specify the date (YYYY-MM-DD) by which the hire is intended to be made for the job opening. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.AddJobToOpening - -
- - -Adds a job to an opening. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.RemoveJobFromOpening - -
- - -Remove a job from an opening. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.AddLocationToJobOpening - -
- - -Adds a location to a job opening. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.RemoveLocationFromOpening - -
- - -Remove a location from a job opening. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.SetOpeningState - -
- - -Update the state of a job opening. - -**Parameters** - -- **close_reason_id** (`string`, optional) The ID for the reason why the opening is closed, required when setting the state to closed. -- **new_opening_state** (`string`, optional) The new state to update the job opening to. Accepted values are 'Draft', 'Approved', 'Open', 'Closed'. -- **opening_id** (`string`, optional) The unique identifier of the job opening to be updated. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.SetOpeningArchivedState - -
- - -Set or unset the archived state of a job opening. - -**Parameters** - -- **opening_id** (`string`, optional) The ID of the job opening to archive or unarchive. -- **set_archived_state** (`boolean`, optional) Boolean to set the archived state of a job opening. Use true to archive and false to unarchive. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateJobOpening - -
- - -Update the details of a job opening. - -**Parameters** - -- **department_team_id** (`string`, optional) The unique ID of the department or team associated with the job opening. -- **employment_type** (`string`, optional) Specifies the employment type for the job opening. Can be FullTime, PartTime, Intern, Contract, or Temporary. -- **fields_to_update** (`string`, optional) Specify the fields you want to update, such as jobIds, targetHireDate, targetStartDate, isBackfill, employmentType. -- **is_backfill** (`boolean`, optional) Indicate if the opening is intended to backfill an employee. Use true for backfill, false otherwise. -- **job_description_update** (`string`, optional) The new description text for the job opening. Provide a detailed and clear update relevant to the job role. -- **opening_identifier** (`string`, optional) The unique ID of the job opening to update. -- **target_hire_date** (`string`, optional) The date in YYYY-MM-DD format by which you intend to hire for the opening. -- **target_start_date** (`string`, optional) The intended start date (in YYYY-MM-DD format) for a newly hired employee. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetProjectInformation - -
- - -Retrieve detailed information about a project. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListProjects - -
- - -Retrieve a list of projects. - -**Parameters** - -- **last_sync_token** (`string`, optional) An opaque token from the last successful data sync. This is used to fetch updates. -- **max_items_to_return** (`integer`, optional) The maximum number of projects to return. The default and maximum value is 100. -- **page_results_cursor** (`string`, optional) An opaque cursor indicating which page of results to fetch from the project list. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.SearchProjectsByTitle - -
- - -Search for projects by title for quick lookups. - -**Parameters** - -- **project_title** (`string`, optional) The title of the project to search for. Use this to narrow down the results to specific projects based on their name. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateCandidateReferral - -
- - -Creates a candidate referral in the system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetReferralFormInfo - -
- - -Fetches or creates the default referral form details. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GenerateAndPollReport - -
- - -Generate a new report or poll status of report generation. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.RetrieveSyncReport - -
- - -Retrieve report data synchronously with Ashby. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListAllSources - -
- - -Retrieve a list of all sources for hiring processes. - -**Parameters** - -- **include_archived_items** (`boolean`, optional) When true, archived items are included in the results. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListSourceTrackingLinks - -
- - -Retrieve all source custom tracking links. - -**Parameters** - -- **include_disabled_tracking_links** (`boolean`, optional) Set to true to include disabled tracking links in the list. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetSurveyFormDetails - -
- - -Retrieve details of a survey form definition by id. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListSurveyFormDefinitions - -
- - -Retrieve all survey form definitions. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateSurveyRequest - -
- - -Create a survey request and get a survey URL. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListSurveyRequests - -
- - -Retrieve a list of all survey requests. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateSurveySubmission - -
- - -Create a new survey submission. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.ListSurveySubmissions - -
- - -Retrieve all survey submissions for a specific type. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetAshbyUserInfo - -
- - -Retrieve detailed information of a specific Ashby user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetAshbyUserList - -
- - -Retrieve a list of all users in Ashby and their access levels. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.AshbyUserSearch - -
- - -Search for an Ashby user by email address. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.GetInterviewerSettings - -
- - -Retrieve interviewer settings for a user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateInterviewerSettings - -
- - -Update interviewer settings for a user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.CreateWebhookSetting - -
- - -Creates a webhook setting in Ashby. - -**Parameters** - -- **webhook_configuration** (`json`, optional) A JSON object containing configuration details for the webhook, including webhookType, requestUrl, and secretToken. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.RetrieveWebhookInfo - -
- - -Retrieve detailed information on a specific webhook setting by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.UpdateWebhookSetting - -
- - -Update a webhook setting for Ashby service. - -**Parameters** - -- **webhook_settings_payload** (`json`, optional) JSON object containing `webhookId`, optionally one of `enabled`, `requestUrl`, or `secretToken` to update specific settings. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## AshbyApi.DeleteWebhookSetting - -
- - -Delete a webhook setting. - -**Parameters** - -- **webhook_id** (`json`, optional) The unique identifier of the webhook to be deleted. - -**Secrets** - -This tool requires the following secrets: `ASHBY_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Reference - -Below is a reference of enumerations used by some of the tools in the AshbyApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - diff --git a/app/en/resources/integrations/productivity/box-api/page.mdx b/app/en/resources/integrations/productivity/box-api/page.mdx deleted file mode 100644 index 537a272c5..000000000 --- a/app/en/resources/integrations/productivity/box-api/page.mdx +++ /dev/null @@ -1,5655 +0,0 @@ -# BoxApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The BoxApi MCP Server offers a comprehensive set of tools for managing Box content, metadata, security, collaboration, enterprise settings, Doc Gen/Sign workflows, and integrations. Key capabilities include: - -- Manage files, folders, trashed items, versions, thumbnails, downloads, and upload sessions (including chunked uploads). -- Inspect and modify file/folder metadata, classifications, watermarks, skills metadata, and app associations. -- Manage collaborations, comments, tasks, collections, shared links, web links, and related permissions. -- Create, list, inspect, and remove Box Doc Gen templates, template tags, and Doc Gen jobs (including batch and template-specific job listings). -- Manage Box Sign requests and templates (retrieve, resend, cancel, list). -- Admin and enterprise ops: list/manage users, groups, Hubs, archives, storage policies, retention and legal hold policies, device pins, terms of service, safe-collaboration domains, shield information barriers, and enterprise events. -- Manage metadata templates, cascade policies, and metadata instances (retrieve, find, delete). -- Manage webhooks, integrations (Slack, Teams), AI agents, and related mappings. -- Retrieve audit/operational data: recent items, events, collections, and activity for troubleshooting or reporting. -- Permanently delete or restore content: delete files/folders, remove from trash, delete archives, templates, policies, and other irreversible removals. - -Use these tools to build agents or apps that automate Box content lifecycle, security/compliance workflows, collaboration administration, document generation/signing, and enterprise integrations. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## BoxApi.ListBoxDocTemplates - -
- - -Retrieve Box Doc Gen templates the user collaborates on. - -**Parameters** - -- **pagination_start_marker** (`string`, optional) Defines the starting position for pagination of results. Requires `usemarker` to be set to `true`. -- **max_items_per_page** (`integer`, optional) Specify the maximum number of Box Doc Gen templates to return in a single page. - -## BoxApi.UnmarkBoxDocTemplate - -
- - -Unmarks a file as a Box Doc Gen template. - -**Parameters** - -- **file_id_to_unmark** (`string`, required) The ID of the file that will no longer be marked as a Box Doc Gen template. - -## BoxApi.GetBoxDocgenTemplateDetails - -
- - -Fetch details of a specific Box Doc Gen template. - -**Parameters** - -- **box_docgen_template_id** (`string`, required) The ID of the Box Doc Gen template to retrieve details for. - -## BoxApi.ListBoxDocgenTemplateTags - -
- - -Retrieve tags from a specific Box Doc Gen template. - -**Parameters** - -- **template_id** (`string`, required) The unique identifier for the Box Doc Gen template whose tags you want to retrieve. -- **template_version_id** (`string`, optional) The ID of the specific version of the template to retrieve tags from. -- **pagination_start_marker** (`string`, optional) Defines the starting position for results when using marker-based pagination. Must have `usemarker` set to `true`. -- **maximum_items_per_page** (`integer`, optional) Specifies the maximum number of tags to return per page from the Box Doc Gen template. - -## BoxApi.GetBoxDocgenJobDetails - -
- - -Retrieve details of a Box Doc Gen job using its ID. - -**Parameters** - -- **box_doc_gen_job_id** (`string`, required) The unique identifier for the Box Doc Gen job you want details for. - -## BoxApi.ListBoxDocgenJobs - -
- - -Retrieves a list of Box Doc Gen jobs for a user. - -**Parameters** - -- **pagination_marker** (`string`, optional) Starting position marker for paginating results. Requires 'usemarker' set to true. -- **maximum_items_per_page** (`integer`, optional) The maximum number of items to return per page. Specify an integer value to set the limit for pagination. - -## BoxApi.ListTemplateJobs - -
- - -Retrieve jobs associated with a specific document template. - -**Parameters** - -- **template_identifier** (`string`, required) The unique ID of the template for which jobs need to be retrieved. -- **pagination_start_marker** (`string`, optional) Defines the starting position for pagination. Requires 'usemarker' to be set to true. -- **max_items_per_page** (`integer`, optional) The maximum number of items to return per page from the list of jobs. - -## BoxApi.ListDocgenBatchJobs - -
- - -Retrieve details of Box Doc Gen jobs in a batch. - -**Parameters** - -- **box_doc_gen_batch_id** (`string`, required) The identifier for a Box Doc Gen batch used to retrieve specific job details. -- **pagination_marker** (`string`, optional) The position marker to start returning results. Use for marker-based pagination. Requires `usemarker` set to `true`. -- **maximum_items_per_page** (`integer`, optional) The maximum number of items to return per page when retrieving Box Doc Gen jobs. - -## BoxApi.GetBoxHubs - -
- - -Retrieve all Box Hubs for the user. - -**Parameters** - -- **hub_search_query** (`string`, optional) The string to search for specific Box Hubs. Use keywords to refine search results. -- **hub_scope** (`string`, optional) Specifies which Box Hubs to retrieve. Options: `editable`, `view_only`, `all`. Default is `all`. -- **sort_results_by** (`string`, optional) Field to sort Box Hubs by: `name`, `updated_at`, `last_accessed_at`, `view_count`, `relevance` (default: `relevance`). -- **sort_direction** (`string`, optional) Specify the sort order: 'ASC' for ascending or 'DESC' for descending. -- **pagination_start_marker** (`string`, optional) Defines the position marker to begin returning results, used for marker-based pagination. -- **max_items_per_page** (`integer`, optional) The maximum number of Box Hubs to return per page. Use for pagination control. - -## BoxApi.GetEnterpriseBoxHubs - -
- - -Retrieve Box Hubs for an enterprise. - -**Parameters** - -- **search_query_for_box_hubs** (`string`, optional) The search query string to find specific Box Hubs within an enterprise. -- **sort_results_by** (`string`, optional) The field to sort the Box Hubs by. Options: 'name', 'updated_at', 'last_accessed_at', 'view_count', 'relevance'. Default is 'relevance'. -- **sort_direction** (`string`, optional) The direction to sort results: alphabetical ascending ('ASC') or descending ('DESC'). -- **pagination_marker** (`string`, optional) The starting position marker for returning results, used in marker-based pagination. -- **max_items_per_page** (`integer`, optional) The maximum number of Box Hubs to return per page. This controls the page size for the result set. - -## BoxApi.RetrieveBoxHubDetails - -
- - -Fetch Box Hub details using its ID. - -**Parameters** - -- **box_hub_identifier** (`string`, required) The unique ID representing a Box Hub, found in the URL when visiting the hub. - -## BoxApi.DeleteBoxHub - -
- - -Delete a specific Box Hub using its ID. - -**Parameters** - -- **box_hub_unique_id** (`string`, required) The unique identifier for a Box Hub, obtainable from the hub's URL. - -## BoxApi.RetrieveBoxHubCollaborations - -
- - -Retrieves collaborations for a Box Hub. - -**Parameters** - -- **hub_identifier** (`string`, required) The unique string identifier for a Box Hub, found in the Hub's URL. -- **pagination_marker** (`string`, optional) The position marker to begin returning results, used for marker-based pagination. Ensure `usemarker` is set to `true`. -- **max_items_per_page** (`integer`, optional) The maximum number of collaboration items to return per page. Determines the page size for results. - -## BoxApi.GetBoxHubCollaborationDetails - -
- - -Retrieve details for a Box Hub collaboration by ID. - -**Parameters** - -- **hub_collaboration_id** (`string`, required) The unique identifier for the specific Box Hub collaboration you want to retrieve details for. - -## BoxApi.DeleteBoxHubCollaboration - -
- - -Remove a specific Box Hub collaboration. - -**Parameters** - -- **hub_collaboration_identifier** (`string`, required) The unique identifier for the Box Hub collaboration to be deleted. - -## BoxApi.RetrieveBoxHubItems - -
- - -Fetch all items from a specified Box Hub. - -**Parameters** - -- **hub_identifier** (`string`, required) The unique ID representing a Box Hub, retrievable from the hub's URL. -- **pagination_start_marker** (`string`, optional) Defines the starting position for results when using marker-based pagination. Requires `usemarker` to be `true`. -- **maximum_items_per_page** (`integer`, optional) The maximum number of items to return per page from a Box Hub. Specify an integer value to limit the number of items in each result set. - -## BoxApi.GetEnterpriseShieldLists - -
- - -Retrieve all shield lists for the enterprise. - -**Parameters** - -This tool does not take any parameters. - -## BoxApi.RetrieveShieldListById - -
- - -Retrieve details of a specific shield list by ID. - -**Parameters** - -- **shield_list_identifier** (`string`, required) The unique identifier for a shield list. Retrieve this ID by calling the endpoint that lists all shield lists for your enterprise. - -## BoxApi.DeleteShieldListById - -
- - -Delete a shield list using its ID. - -**Parameters** - -- **shield_list_id** (`string`, required) The unique identifier for the shield list to be deleted. Obtainable from the response of fetching all shield lists for the enterprise. - -## BoxApi.RetrieveEnterpriseArchives - -
- - -Retrieve archives for an enterprise from Box. - -**Parameters** - -- **max_items_per_page** (`integer`, optional) The maximum number of archive items to return per page when retrieving data. -- **pagination_start_marker** (`string`, optional) Defines the position marker to start returning results for pagination in archive retrieval. - -## BoxApi.DeleteArchive - -
- - -Permanently delete an archive by ID. - -**Parameters** - -- **archive_id** (`string`, required) The unique identifier of the archive to be permanently deleted. This ID is required for the deletion process. - -## BoxApi.RetrieveFileDetails - -
- - -Fetch details about a specific file using its ID. - -**Parameters** - -- **file_identifier** (`string`, required) The unique identifier for a file, found in the URL of the file in the web application. Example: from `https://*.app.box.com/files/123`, use `123`. -- **included_file_attributes** (`array[string]`, optional) Specify attributes to include in the response as a list of strings. Additional attributes replace standard fields unless explicitly included. Metadata can be queried using 'metadata' with scope and key. -- **etag_conditional_retrieval** (`string`, optional) Provide the last observed etag value to retrieve the file only if it has changed. Returns a 304 status if unchanged. -- **shared_link_with_optional_password** (`string`, optional) Provide the shared link URL for the item. Use the format 'shared_link=[link]' or 'shared_link=[link]&shared_link_password=[password]' if a password is required. -- **file_representations_request** (`string`, optional) Request specific representations of a file using hints, e.g., '[jpg?dimensions=32x32][jpg?dimensions=64x64]'. - -## BoxApi.DeleteFileFromBox - -
- - -Delete a file from Box or move it to trash. - -**Parameters** - -- **file_identifier** (`string`, required) The unique ID representing a file in Box. Found in the URL when viewing a file: https://\*.app.box.com/files/file_id. -- **ensure_no_recent_changes_etag** (`string`, optional) Pass the file's last observed etag value to ensure it hasn't changed before deletion. If the etag has changed, the operation will fail. - -## BoxApi.GetFileAppAssociations - -
- - -Retrieve app items associated with a specific file. - -**Parameters** - -- **file_identifier** (`string`, required) The unique ID representing a file in Box. Can be obtained from the file URL. -- **items_per_page_limit** (`integer`, optional) The maximum number of items to return per page. -- **pagination_marker** (`string`, optional) Defines the position marker for pagination. Required if using marker-based pagination. Ensure `usemarker` is set to `true`. -- **filter_by_application_type** (`string`, optional) Specify the application type to filter and return only app items related to it. - -## BoxApi.DownloadFileContent - -
- - -Retrieve the binary content of a specified file. - -**Parameters** - -- **file_identifier** (`string`, required) The unique identifier for the file to download. Obtainable from the file's URL in the web application. -- **file_version_to_download** (`string`, optional) The specific version of the file to retrieve in binary format. -- **optional_access_token** (`string`, optional) A string for an optional access token to pre-authenticate the file download request. Ensure it's scoped for read access only. -- **download_byte_range** (`string`, optional) Specify the byte range for the content to download in the format `bytes={start_byte}-{end_byte}` to define which section of the file to retrieve. -- **shared_link_with_optional_password** (`string`, optional) Provide the shared link URL of the item. Include a password if required, using the format `shared_link=[link]` or `shared_link=[link]&shared_link_password=[password]`. This allows access to files not explicitly shared with the user. - -## BoxApi.GetUploadSessionDetails - -
- - -Retrieve details of a specific file upload session. - -**Parameters** - -- **upload_session_id** (`string`, required) The ID of the upload session to retrieve information for. - -## BoxApi.AbortUploadSession - -
- - -Abort an upload session and discard all uploaded data. - -**Parameters** - -- **upload_session_id** (`string`, required) The unique identifier of the upload session to be aborted. This ID is required to specify which upload session should be cancelled and its data discarded. - -## BoxApi.GetUploadedChunksList - -
- - -Retrieve the list of uploaded chunks for an upload session. - -**Parameters** - -- **upload_session_identifier** (`string`, required) The unique identifier for the upload session. Use this to retrieve the list of uploaded chunks. -- **response_offset** (`integer`, optional) The starting position of the response item list. Must not exceed 10000, as higher values will result in a 400 error. -- **max_items_per_page** (`integer`, optional) The maximum number of uploaded chunks to return per page in the response. - -## BoxApi.RetrieveFileThumbnail - -
- - -Retrieves a thumbnail image of a specified file. - -**Parameters** - -- **file_identifier** (`string`, required) The unique identifier for the file. You can find this ID in the file URL on the Box web application. -- **thumbnail_file_format** (`string`, required) Specify the file format for the thumbnail, either 'png' or 'jpg'. -- **minimum_thumbnail_height** (`integer`, optional) Specify the minimum height for the thumbnail image required. Accepts an integer value. -- **minimum_thumbnail_width** (`integer`, optional) The minimum width of the thumbnail to be retrieved. Specify an integer value. -- **maximum_thumbnail_height** (`integer`, optional) The maximum height of the thumbnail in pixels. Valid values depend on the specified format. For .png, maximum is 256; for .jpg, maximum is 320. -- **maximum_thumbnail_width** (`integer`, optional) The maximum width for the thumbnail image in pixels. Define the width according to the available sizes in .png or .jpg formats. - -## BoxApi.GetFileCollaborations - -
- - -Retrieve collaborations for a specific file. - -**Parameters** - -- **file_identifier** (`string`, required) The unique file ID needed to retrieve collaborations. Obtainable from the file's URL in the web app. -- **requested_fields** (`array[string]`, optional) A list of specific attributes to include in the response. These fields are not typically included and override the standard response fields. -- **max_items_per_page** (`integer`, optional) The maximum number of collaboration items to return per page in the response. Useful for paginating results. -- **pagination_start_marker** (`string`, optional) Specifies the position marker for starting result pagination. Requires 'usemarker' set to 'true'. - -## BoxApi.GetFileComments - -
- - -Retrieve comments for a specific file. - -**Parameters** - -- **file_identifier** (`string`, required) The unique file ID, found in the Box web app URL, e.g., for `https://*.app.box.com/files/123`, the ID is `123`. -- **include_fields_in_response** (`array[string]`, optional) List of attributes to include in the response. Only specified fields and mini representation are returned. -- **maximum_items_per_page** (`integer`, optional) The maximum number of comments to return per page for the specified file. -- **response_start_offset** (`integer`, optional) The starting point for comments retrieval. Must not exceed 10000, or a 400 error occurs. - -## BoxApi.GetFileTasks - -
- - -Retrieve all tasks associated with a specific file. - -**Parameters** - -- **file_identifier** (`string`, required) The unique identifier for a file, found in the file URL on the Box web application. - -## BoxApi.RetrieveTrashedFile - -
- - -Retrieve a file that has been moved to the trash. - -**Parameters** - -- **file_identifier** (`string`, required) The unique identifier of a file moved to trash, obtained from the file's URL in the web application. -- **include_attributes_in_response** (`array[string]`, optional) A list of attributes to include in the response. Only specified fields and mini representation fields are returned. - -## BoxApi.PermanentlyDeleteFileFromTrash - -
- - -Permanently delete a file that is in the trash. - -**Parameters** - -- **file_identifier** (`string`, required) The unique identifier of a file to be permanently deleted from the trash. Obtainable from the file URL. - -## BoxApi.GetFileVersionHistory - -
- - -Retrieve a list of past versions for a file. - -**Parameters** - -- **file_identifier** (`string`, required) The unique ID representing a file in Box. Obtainable from the file's URL, e.g., `https://*.app.box.com/files/123` where `123` is the ID. -- **requested_fields** (`array[string]`, optional) A list of specific file attributes to include in the response. Only these fields, plus the mini representation, will be returned. -- **max_items_per_page** (`integer`, optional) Maximum number of file versions to return per page. -- **response_start_offset** (`integer`, optional) The item offset to begin the response from. Must not exceed 10000; otherwise, a 400 error will be returned. - -## BoxApi.RetrieveFileVersion - -
- - -Retrieve a specific version of a file for premium Box users. - -**Parameters** - -- **unique_file_identifier** (`string`, required) The unique identifier for a file on Box. Obtainable from the file's URL (e.g., '123' in 'https://\*.app.box.com/files/123'). -- **file_version_identifier** (`string`, required) The unique ID representing the specific version of a file to retrieve. -- **include_additional_attributes** (`array[string]`, optional) List of additional attributes to include in the response. Specify as an array of strings. Only fields specified will be returned, along with the mini representation. - -## BoxApi.DeleteBoxFileVersion - -
- - -Delete a specific file version from Box. - -**Parameters** - -- **file_identifier** (`string`, required) The unique identifier for a file in Box. Obtain it from the file's URL in the web app. Example: '123' for URL 'https://\*.app.box.com/files/123'. -- **file_version_id** (`string`, required) The unique identifier of the file version to be deleted. Obtainable from the Box platform. -- **if_match_etag_value** (`string`, optional) Pass the item's last observed etag value to ensure it hasn't changed before deletion. Use this to prevent conflicts. - -## BoxApi.RetrieveFileMetadata - -
- - -Retrieve all metadata for a specific file. - -**Parameters** - -- **file_identifier** (`string`, required) The unique identifier of a file, obtained from the URL in the Box web application. For example, from `https://*.app.box.com/files/123`, the `file_id` is `123`. - -## BoxApi.GetFileClassificationMetadata - -
- - -Retrieve classification metadata for a specific file. - -**Parameters** - -- **file_identifier** (`string`, required) The unique identifier for a file, obtained from the file's URL in the Box web application. For example, in `https://*.app.box.com/files/123`, the `file_id` is `123`. - -## BoxApi.RemoveFileClassification - -
- - -Remove classifications from a specified file. - -**Parameters** - -- **file_identifier** (`string`, required) The unique identifier for the file whose classification is to be removed. Obtainable from the Box file URL. - -## BoxApi.RetrieveFileTemplateMetadata - -
- - -Retrieve metadata for a specific file template. - -**Parameters** - -- **file_identifier** (`string`, required) The unique identifier for a file, obtainable from the file URL in the Box web application. -- **metadata_scope** (`string`, required) Defines the scope of the metadata template to be retrieved. Options are 'global' or 'enterprise'. -- **metadata_template_name** (`string`, required) The name of the metadata template to retrieve for the specified file. - -## BoxApi.DeleteFileMetadata - -
- - -Deletes metadata from a specified file. - -**Parameters** - -- **file_identifier** (`string`, required) The unique identifier for a file, retrievable from the file URL, e.g., `https://*.app.box.com/files/123` where `123` is the ID. -- **metadata_scope** (`string`, required) Specifies the scope of the metadata template. Choose 'global' or 'enterprise'. -- **metadata_template_name** (`string`, required) The name of the metadata template to be deleted from the file. - -## BoxApi.GetBoxSkillsMetadata - -
- - -Retrieve Box Skills metadata cards for a given file. - -**Parameters** - -- **file_id** (`string`, required) The unique identifier for the file in Box. Obtainable from the file's URL in the Box web app. - -## BoxApi.RemoveBoxSkillsMetadata - -
- - -Remove Box Skills cards metadata from a file. - -**Parameters** - -- **file_identifier** (`string`, required) The unique identifier for a file, which can be extracted from the URL in the web application. For example, in `https://*.app.box.com/files/123`, the `file_id` is `123`. - -## BoxApi.GetFileWatermark - -
- - -Retrieve the watermark for a file by its ID. - -**Parameters** - -- **file_identifier** (`string`, required) The unique identifier of a file. Obtainable from the URL when viewing a file on the web application. - -## BoxApi.RemoveFileWatermark - -
- - -Removes the watermark from a specified file. - -**Parameters** - -- **file_identifier** (`string`, required) The unique ID for the file, found in its Box URL. For example, from `https://*.app.box.com/files/123`, `file_id` is `123`. - -## BoxApi.RetrieveFileRequestInfo - -
- - -Retrieve information about a specific file request. - -**Parameters** - -- **file_request_unique_id** (`string`, required) The unique identifier for a file request, obtainable from the URL in the file request builder. - -## BoxApi.DeleteFileRequest - -
- - -Permanently delete a specific file request. - -**Parameters** - -- **file_request_identifier** (`string`, required) The unique ID representing a file request, extracted from the URL in the file request builder. - -## BoxApi.GetFolderDetails - -
- - -Retrieve details for a folder and its first 100 entries. - -**Parameters** - -- **folder_unique_identifier** (`string`, required) The unique identifier for a folder. Obtainable from the folder's URL, e.g., `123` in `https://*.app.box.com/folder/123`. The root folder's ID is `0`. -- **requested_fields** (`array[string]`, optional) A list of attributes to include in the response. Use for fields not normally returned in standard responses or for querying file metadata. -- **secondary_sort_attribute** (`string`, optional) Defines the second attribute by which folder items are sorted. Options include 'id', 'name', 'date', or 'size'. Not supported for root folders. -- **sort_direction** (`string`, optional) The order to sort results: 'ASC' for ascending or 'DESC' for descending. -- **response_offset** (`integer`, optional) The zero-based index to start the response from. Values exceeding 10000 are rejected with a 400 error. -- **max_items_per_page** (`integer`, optional) The maximum number of items to return in a single page of results. Controls pagination by limiting the number of entries per response. -- **ensure_item_has_changed** (`string`, optional) Supply the item's last known etag value to receive a response only if the item has changed. If unchanged, it returns a 304 status. -- **shared_link_credentials** (`string`, optional) The URL and optional password for the shared link to access items. Format as `shared_link=[link]` or `shared_link=[link]&shared_link_password=[password]`. - -## BoxApi.DeleteFolder - -
- - -Delete a folder permanently or move it to the trash. - -**Parameters** - -- **folder_identifier** (`string`, required) The unique identifier representing a folder. Determine it by copying the ID from the folder's URL in the Box web application. The root folder ID is '0'. -- **ensure_unchanged_etag** (`string`, optional) Last observed `etag` value to ensure the folder hasn't changed before deletion. If changed, the operation fails with a 412 error. -- **delete_recursively** (`boolean`, optional) Set to true to delete a non-empty folder and all its content recursively. - -## BoxApi.GetFolderAppItemAssociations - -
- - -Retrieve app items associated with a specific folder. - -**Parameters** - -- **folder_identifier** (`string`, required) The unique identifier representing a folder. Obtainable from the folder's URL. The root folder ID is '0'. -- **max_items_per_page** (`integer`, optional) The maximum number of items to return per page when retrieving app items associated with a folder. -- **pagination_start_marker** (`string`, optional) Position marker to begin returning results. Used for marker-based pagination. Requires `usemarker` set to `true`. -- **filter_by_application_type** (`string`, optional) Return only app items for the specified application type. - -## BoxApi.RetrieveFolderItems - -
- - -Retrieve items in a specified folder, including files and links. - -**Parameters** - -- **folder_identifier** (`string`, required) Unique ID of a folder. Obtainable from the folder's URL. Root folder ID is always '0'. -- **included_attributes** (`array[string]`, optional) List of attributes to include in the response. Specify fields normally omitted in standard responses or query metadata using the format 'metadata.scope.key'. -- **pagination_start_marker** (`string`, optional) Specifies the starting point for marker-based pagination. Requires 'usemarker' to be set to true. -- **starting_item_offset** (`integer`, optional) Specifies the starting point for the items to be returned. Must be an integer and cannot exceed 10000, or a 400 response is returned. -- **max_items_per_page** (`integer`, optional) The maximum number of items to return per page. Specify an integer value. -- **sort_attribute** (`string`, optional) Specifies the secondary attribute for sorting folder items. Options: 'id', 'name', 'date', or 'size'. Not supported for marker-based pagination on root folders. -- **sort_direction** (`string`, optional) The direction to sort results: alphabetical ascending (ASC) or descending (DESC). -- **shared_link_credentials** (`string`, optional) Provide the shared link URL and optional password to access items not explicitly shared with a user. Use 'shared_link=[link]' or 'shared_link=[link]&shared_link_password=[password]'. -- **use_marker_based_pagination** (`boolean`, optional) Set to true to enable marker-based pagination, which returns a marker for fetching the next page. Only one pagination method can be active at a time. - -## BoxApi.GetFolderCollaborations - -
- - -Retrieve pending and active collaborations for a folder. - -**Parameters** - -- **folder_identifier** (`string`, required) The unique identifier for a folder, obtainable from the folder's URL in the Box web application. For example, in the URL `https://*.app.box.com/folder/123`, the `folder_id` is `123`. -- **included_attributes** (`array[string]`, optional) List of attributes to include in the response, overriding standard fields unless specified. -- **max_items_per_page** (`integer`, optional) The maximum number of items to return per page. -- **start_position_marker** (`string`, optional) The position marker to begin returning results for marker-based pagination. Requires usemarker set to true. - -## BoxApi.RetrieveTrashedFolder - -
- - -Retrieve a specific folder from the trash. - -**Parameters** - -- **folder_identifier** (`string`, required) The unique identifier for a folder. Obtainable from the folder's URL in the web application. '0' represents the root folder. -- **include_attributes_in_response** (`array[string]`, optional) A list of attribute names to include in the response, specifying non-standard fields for retrieval. - -## BoxApi.PermanentlyDeleteFolderInTrash - -
- - -Permanently delete a folder from the trash. - -**Parameters** - -- **folder_identifier** (`string`, required) The unique identifier representing a folder to be permanently deleted from the trash. Obtainable from folder URL or use '0' for root folder. - -## BoxApi.RetrieveFolderMetadata - -
- - -Retrieve all metadata for a specific folder. - -**Parameters** - -- **folder_identifier** (`string`, required) The unique identifier for a folder, excluding the root folder with ID `0`. Obtainable from the URL when viewing a folder in Box. - -## BoxApi.GetFolderClassification - -
- - -Retrieve classification metadata for a specific folder. - -**Parameters** - -- **folder_identifier** (`string`, required) The unique identifier for a folder, retrievable from the folder's URL or as `0` for the root folder. - -## BoxApi.RemoveFolderClassifications - -
- - -Remove classifications from a specified folder. - -**Parameters** - -- **folder_identifier** (`string`, required) The unique identifier representing a folder. Obtain this by visiting the folder URL (e.g., `https://*.app.box.com/folder/123`). The root folder ID is `0`. - -## BoxApi.GetFolderMetadata - -
- - -Retrieve metadata template instance applied to a folder. - -**Parameters** - -- **folder_identifier** (`string`, required) The unique ID representing a folder. Obtainable from the folder's URL, but not the root folder (ID `0`). -- **metadata_scope** (`string`, required) The scope of the metadata template. It can be either 'global' or 'enterprise'. -- **metadata_template_name** (`string`, required) The name of the metadata template to retrieve from the folder. Excludes root folder (ID `0`). - -## BoxApi.DeleteFolderMetadata - -
- - -Deletes metadata from a specified folder. - -**Parameters** - -- **folder_identifier** (`string`, required) The unique identifier for a folder. Obtainable from the folder URL; use '0' for the root folder. -- **metadata_template_scope** (`string`, required) The scope of the metadata template. Choose either 'global' or 'enterprise'. -- **metadata_template_name** (`string`, required) The name of the metadata template to be deleted from the folder. - -## BoxApi.RetrieveTrashedItems - -
- - -Retrieve files and folders from the trash. - -**Parameters** - -- **include_attributes** (`array[string]`, optional) List of attributes to include in the response, such as non-default fields. Only these and mini representation fields will be returned. -- **maximum_items_per_page** (`integer`, optional) Specify the maximum number of items to return per page when retrieving trashed items. This value controls pagination to limit the items returned in a single request. -- **pagination_offset** (`integer`, optional) The index to start retrieving items from the trash. Must be less than or equal to 10000. -- **pagination_marker** (`string`, optional) Defines the position marker for marker-based pagination. Requires 'use_marker_based_pagination' to be true. -- **sort_direction** (`string`, optional) The direction to sort results: 'ASC' for ascending or 'DESC' for descending alphabetical order. -- **secondary_sort_attribute** (`string`, optional) Defines the second attribute by which items are sorted, such as 'name', 'date', or 'size'. Unsupported with marker-based pagination. -- **use_marker_based_pagination** (`boolean`, optional) Set to true to use marker-based pagination instead of offset-based pagination, allowing retrieval of the next page with a 'marker' field. - -## BoxApi.GetFolderWatermark - -
- - -Retrieve the watermark for a specific folder. - -**Parameters** - -- **folder_identifier** (`string`, required) The unique ID representing a folder. It can be found in the URL when viewing the folder in the web app. The root folder ID is '0'. - -## BoxApi.RemoveWatermarkFromFolder - -
- - -Removes the watermark from a specified folder. - -**Parameters** - -- **folder_identifier** (`string`, required) The unique identifier for a folder. This ID can be found in the URL when visiting the folder in the Box web application. For instance, in `https://*.app.box.com/folder/123`, the `folder_id` is `123`. The root folder is always `0`. - -## BoxApi.RetrieveFolderLockDetails - -
- - -Retrieve lock details for a specific folder. - -**Parameters** - -- **folder_identifier** (`string`, required) The unique identifier for a folder. Obtainable by visiting the folder URL in the Box web app. The root folder is ID '0'. - -## BoxApi.DeleteFolderLock - -
- - -Delete a specific folder lock if you're the owner or co-owner. - -**Parameters** - -- **folder_lock_identifier** (`string`, required) The unique ID of the folder lock to be deleted. You must be the owner or co-owner of the folder. - -## BoxApi.FindMetadataTemplate - -
- - -Retrieve metadata template details by ID. - -**Parameters** - -- **metadata_instance_id** (`string`, required) The ID of the metadata template instance to retrieve details for. -- **pagination_position_marker** (`string`, optional) Defines the starting position for marker-based pagination results. Requires `usemarker` to be `true`. -- **items_per_page_limit** (`integer`, optional) Specify the maximum number of items to return per page for pagination purposes. - -## BoxApi.GetClassificationMetadata - -
- - -Retrieve classification metadata template for the enterprise. - -**Parameters** - -This tool does not take any parameters. - -## BoxApi.RetrieveMetadataTemplate - -
- - -Retrieve a metadata template by scope and template key. - -**Parameters** - -- **metadata_template_scope** (`string`, required) Specifies the scope for the metadata template. Choose between 'global' or 'enterprise'. -- **metadata_template_name** (`string`, required) The name of the metadata template to retrieve its details. - -## BoxApi.DeleteMetadataTemplate - -
- - -Permanently delete a metadata template and its instances. - -**Parameters** - -- **metadata_template_scope** (`string`, required) Specifies the scope of the metadata template. Allowed values are 'global' or 'enterprise'. -- **metadata_template_name** (`string`, required) The name of the metadata template to be permanently deleted. - -## BoxApi.FetchMetadataTemplateById - -
- - -Retrieve a metadata template using its ID. - -**Parameters** - -- **template_id** (`string`, required) The unique identifier for the metadata template to be retrieved. Provide a valid template ID. - -## BoxApi.RetrieveGlobalMetadataTemplates - -
- - -Fetches global metadata templates from Box. - -**Parameters** - -- **pagination_start_marker** (`string`, optional) Specifies the position marker to begin returning results for paginated data. -- **max_items_per_page** (`integer`, optional) The maximum number of metadata templates to return per page from the Box global templates. - -## BoxApi.RetrieveEnterpriseMetadataTemplates - -
- - -Retrieve metadata templates for the user's enterprise. - -**Parameters** - -- **pagination_start_marker** (`string`, optional) Position marker to begin returning results, used with marker-based pagination. Requires `usemarker` to be `true`. -- **maximum_items_per_page** (`integer`, optional) The maximum number of items to return per page when retrieving metadata templates. - -## BoxApi.GetMetadataCascadePolicies - -
- - -Retrieve metadata cascade policies for a folder. - -**Parameters** - -- **target_folder_id** (`string`, required) The ID of the folder to query for metadata cascade policies. The root folder with ID '0' is not allowed. -- **owner_enterprise_id** (`string`, optional) The ID of the enterprise to find metadata cascade policies for. Defaults to the current enterprise if not specified. -- **pagination_marker** (`string`, optional) Position marker for paginating results. Set `usemarker` to true to enable. -- **response_offset** (`integer`, optional) The offset at which to begin the response, must not exceed 10000. - -## BoxApi.RetrieveMetadataCascadePolicy - -
- - -Retrieve a specific metadata cascade policy for a folder. - -**Parameters** - -- **metadata_cascade_policy_id** (`string`, required) The unique identifier for the metadata cascade policy to retrieve. - -## BoxApi.DeleteMetadataCascadePolicy - -
- - -Deletes a metadata cascade policy by ID. - -**Parameters** - -- **metadata_cascade_policy_id** (`string`, required) The unique ID of the metadata cascade policy to be deleted. Ensure it is valid and exists. - -## BoxApi.FetchCommentDetails - -
- - -Retrieve detailed information about a specific comment. - -**Parameters** - -- **comment_id** (`string`, required) The unique identifier for the comment whose details are being fetched. This ID is required to retrieve the comment's message, metadata, and creator information. -- **include_fields** (`array[string]`, optional) A list of attributes to include in the response. Only specified fields will be returned along with the mini representation. - -## BoxApi.DeleteComment - -
- - -Permanently deletes a specific comment by ID. - -**Parameters** - -- **comment_id** (`string`, required) The unique identifier of the comment you want to permanently delete. - -## BoxApi.GetCollaborationDetails - -
- - -Retrieve details of a specific collaboration. - -**Parameters** - -- **collaboration_id** (`string`, required) The unique identifier for the collaboration to retrieve details about. -- **include_fields** (`array[string]`, optional) List of specific attributes to include in the response, which are not typically returned. Specify explicitly to retrieve these fields. - -## BoxApi.DeleteCollaboration - -
- - -Deletes a specified collaboration by ID. - -**Parameters** - -- **collaboration_id_to_delete** (`string`, required) The unique identifier of the collaboration to be deleted. Provide this ID to remove the specified collaboration. - -## BoxApi.GetPendingCollaborationInvites - -
- - -Retrieve user's pending collaboration invites from Box. - -**Parameters** - -- **collaboration_status** (`string`, required) Set to 'pending' to retrieve all pending collaboration invitations. -- **include_attributes** (`array[string]`, optional) List of attribute names to include in the response. This overrides default fields, returning only specified attributes. -- **starting_item_offset** (`integer`, optional) Starting index for the response items. Cannot exceed 10000 to avoid errors. -- **maximum_items_per_page** (`integer`, optional) The maximum number of collaboration invites to return per page. - -## BoxApi.RetrieveTaskInformation - -
- - -Fetch details of a specific task by ID. - -**Parameters** - -- **task_id** (`string`, required) The unique identifier for the specific task to retrieve information about. - -## BoxApi.DeleteTaskFromFile - -
- - -Removes a specific task from a file. - -**Parameters** - -- **task_identifier** (`string`, required) The unique identifier for the task to be removed from the file. - -## BoxApi.ListTaskAssignments - -
- - -Retrieve all assignments for a specified task. - -**Parameters** - -- **task_id** (`string`, required) The unique identifier of the task for which assignments need to be retrieved. It must be provided as a string. - -## BoxApi.RetrieveTaskAssignmentInfo - -
- - -Retrieve detailed information about a task assignment. - -**Parameters** - -- **task_assignment_id** (`string`, required) The unique identifier for the task assignment to retrieve its details. - -## BoxApi.DeleteTaskAssignment - -
- - -Delete a specific task assignment. - -**Parameters** - -- **task_assignment_id** (`string`, required) The unique identifier of the task assignment to be deleted. - -## BoxApi.RetrieveSharedFileInfo - -
- - -Retrieve file information from a shared link. - -**Parameters** - -- **shared_link_credentials** (`string`, required) A header string containing the shared link and optional password. Format: `shared_link=[link]&shared_link_password=[password]`. -- **include_attributes_in_response** (`array[string]`, optional) A list of attributes to include in the response, specifying non-standard fields and affecting returned data format. -- **etag_for_change_detection** (`string`, optional) Pass the last observed etag value to return the item only if it has changed. - -## BoxApi.GetSharedLinkInfo - -
- - -Retrieve shared link details for a specific file. - -**Parameters** - -- **include_shared_link_fields** (`string`, required) Specify if the `shared_link` fields should be explicitly returned for the file item. -- **file_identifier** (`string`, required) The unique identifier for a file, found in the URL when accessing a file in the web application (e.g., for the URL `https://*.app.box.com/files/123`, the `file_id` is `123`). - -## BoxApi.GetSharedFolderInfo - -
- - -Retrieve folder details using a shared link. - -**Parameters** - -- **shared_link_header** (`string`, required) A string containing the shared link and optional password formatted as 'shared_link=[link]&shared_link_password=[password]'. -- **include_fields** (`array[string]`, optional) A list of specific attributes to include in the response. Only these fields will be returned unless explicitly specified otherwise. -- **etag_condition** (`string`, optional) Provide the last observed etag to receive the item only if it has changed. Useful for caching and reducing unnecessary data transfer. - -## BoxApi.GetFolderSharedLinkInfo - -
- - -Retrieve information for a shared link on a folder. - -**Parameters** - -- **include_shared_link_fields** (`string`, required) Specify if the shared_link fields should be explicitly returned for this folder. -- **folder_identifier** (`string`, required) The unique ID of the folder to retrieve shared link info for. It can be found in the folder URL in Box or use '0' for the root folder. - -## BoxApi.RetrieveWebLinkInfo - -
- - -Retrieve information about a specific web link. - -**Parameters** - -- **web_link_id** (`string`, required) The unique identifier for the web link to retrieve information about. -- **shared_link_access_details** (`string`, optional) The URL and optional password for accessing the shared link, formatted as `shared_link=[link]` or `shared_link=[link]&shared_link_password=[password]`. Use this to access items not explicitly shared with a user. - -## BoxApi.DeleteWebLink - -
- - -Delete a specified web link based on its ID. - -**Parameters** - -- **web_link_id** (`string`, required) The unique identifier for the web link to be deleted. - -## BoxApi.RetrieveTrashedWebLink - -
- - -Retrieves a web link that has been moved to the trash. - -**Parameters** - -- **web_link_id** (`string`, required) The unique identifier of the web link to retrieve from the trash. -- **include_fields_in_response** (`array[string]`, optional) List of attributes to include in the response, overriding standard fields; only mini representation plus these fields will be returned. - -## BoxApi.PermanentlyDeleteTrashedWebLink - -
- - -Permanently delete a trashed web link. - -**Parameters** - -- **web_link_identifier** (`string`, required) The unique identifier of the web link to be permanently deleted from the trash. This ID is required to specify which web link should be removed. - -## BoxApi.RetrieveSharedWebLink - -
- - -Retrieve information about a shared web link using a shared link. - -**Parameters** - -- **shared_link_header** (`string`, required) A string containing the shared link and optional password in the format: 'shared_link=[link]&shared_link_password=[password]'. -- **include_attributes_in_response** (`array[string]`, optional) A list of attributes to include in the response. Only specified fields and fields for the mini representation will be returned. -- **etag_if_updated_only** (`string`, optional) Provide the last observed etag value to only return the web link if it has been updated. This helps avoid unnecessary data transfer if no changes have occurred. - -## BoxApi.GetSharedWebLinkInfo - -
- - -Retrieve shared link information for a web link. - -**Parameters** - -- **request_shared_link_fields** (`string`, required) Specify the shared link fields to be explicitly returned for the web link. -- **web_link_identifier** (`string`, required) The ID of the web link for which to retrieve shared link information. - -## BoxApi.GetSharedAppItem - -
- - -Retrieve details of an app item using a shared link. - -**Parameters** - -- **shared_link_information** (`string`, required) A string with the format `shared_link=[link]&shared_link_password=[password]`, containing the shared link and an optional password. - -## BoxApi.ListEnterpriseUsers - -
- - -Retrieve all users in the enterprise. - -**Parameters** - -- **search_term_for_user_filtering** (`string`, optional) Limits results to users whose name or login begins with the specified term. Complete match required for external users. -- **user_type_filter** (`string`, optional) Specify the type of users to include: 'all', 'managed', or 'external'. -- **filter_by_external_app_user_id** (`string`, optional) Filter results to app users with the specified external app user ID. Used for retrieving users matching this ID. -- **include_additional_fields** (`array[string]`, optional) Specify additional attributes for inclusion in the response. Only selected fields and mini representation fields will be returned. -- **response_offset** (`integer`, optional) The starting point for the response; queries exceeding 10000 will return a 400 error. -- **max_items_per_page** (`integer`, optional) The maximum number of user records to return per page. -- **pagination_start_marker** (`string`, optional) Defines the position marker where results begin when using marker-based pagination. Requires `usemarker` set to `true`. -- **use_marker_pagination** (`boolean`, optional) Set to true to use marker-based pagination. This enables a `marker` field in the response for pagination. - -## BoxApi.GetAuthenticatedUserInfo - -
- - -Retrieve details of the currently authenticated user. - -**Parameters** - -- **requested_user_attributes** (`array[string]`, optional) List of user attributes to include in the response. Use to request non-standard fields, results in basic fields only unless specified. - -## BoxApi.GetUserInformation - -
- - -Retrieve detailed user information in the enterprise. - -**Parameters** - -- **user_identifier** (`string`, required) The unique identifier for the user whose information you want to retrieve. -- **requested_user_fields** (`array[string]`, optional) An array of attributes to include in the response. Only specified fields are returned unless otherwise stated. - -## BoxApi.DeleteUserAccount - -
- - -Delete a user account from the system. - -**Parameters** - -- **user_id** (`string`, required) The unique identifier for the user to be deleted. Required for specifying which user account to delete. -- **send_deletion_notification** (`boolean`, optional) Indicate whether the user should receive an email notification about the deletion. Set to true to send notification. -- **force_delete_user** (`boolean`, optional) Set to true to delete the user and their files even if they still own content. - -## BoxApi.GetUserAvatar - -
- - -Retrieve the image of a user's avatar. - -**Parameters** - -- **user_id** (`string`, required) The ID of the user whose avatar you want to retrieve. - -## BoxApi.RemoveUserAvatar - -
- - -Removes a user's existing avatar. - -**Parameters** - -- **user_identifier** (`string`, required) The unique identifier of the user whose avatar is to be deleted. Ensure this ID is correct, as the operation cannot be reversed. - -## BoxApi.GetUserEmailAliases - -
- - -Retrieve all email aliases for a specific user. - -**Parameters** - -- **user_identifier** (`string`, required) The unique ID of the user to retrieve email aliases for, formatted as a string. - -## BoxApi.RemoveUserEmailAlias - -
- - -Removes an email alias from a user account. - -**Parameters** - -- **user_identifier** (`string`, required) The unique ID of the user whose email alias is to be removed. -- **email_alias_id** (`string`, required) The unique identifier of the email alias to be removed. This is required to specify which alias to delete from the user account. - -## BoxApi.GetUserGroupMemberships - -
- - -Retrieve all groups a user belongs to. - -**Parameters** - -- **user_identifier** (`string`, required) The ID of the user to retrieve group memberships for. -- **max_items_per_page** (`integer`, optional) Maximum number of items to return per page. Set an integer value to limit the results displayed at once. -- **response_offset** (`integer`, optional) The starting point offset for the response items. Must be 10000 or less. - -## BoxApi.CheckUserInviteStatus - -
- - -Retrieve the status of a specific user invite. - -**Parameters** - -- **invite_id** (`string`, required) The unique identifier for the user invite you want to check. This ID is necessary to retrieve the invite's status. -- **included_attributes** (`array[string]`, optional) A list of attributes to include in the response. Specify attributes not normally returned in a standard response. Only the mini representation fields are returned unless explicitly specified. - -## BoxApi.RetrieveEnterpriseGroups - -
- - -Retrieve all groups for an enterprise with admin rights. - -**Parameters** - -- **group_name_starts_with** (`string`, optional) Returns groups whose names start with this search term. -- **included_attributes** (`array[string]`, optional) List of specific attributes to include in the response. Defaults to mini representation if unspecified. -- **max_items_per_page** (`integer`, optional) The maximum number of groups to return per page. -- **starting_item_offset** (`integer`, optional) The offset of the item at which to begin the response. Ensure the value does not exceed 10000 to avoid errors. - -## BoxApi.RetrieveGroupInfo - -
- - -Retrieve detailed information about a specified group. - -**Parameters** - -- **group_id** (`string`, required) The unique identifier of the group to retrieve information for. Ensure the user has the necessary permissions. -- **include_additional_fields** (`array[string]`, optional) A list of attributes to include in the response. Only specified fields will be returned alongside default mini representation fields. - -## BoxApi.DeleteGroup - -
- - -Permanently delete a group with admin permissions. - -**Parameters** - -- **group_id** (`string`, required) The unique identifier of the group to be permanently deleted. Must be used by an admin. - -## BoxApi.RetrieveGroupMemberships - -
- - -Fetch members of a specified group. - -**Parameters** - -- **group_identifier** (`string`, required) The unique ID of the group to fetch its members. Only members or admins can access this. -- **max_items_per_page** (`integer`, optional) Specify the maximum number of members to retrieve per page. -- **response_offset** (`integer`, optional) The starting point for retrieving members. Must not exceed 10000 to avoid errors. - -## BoxApi.GetGroupCollaborations - -
- - -Retrieve collaborations for a specified group. - -**Parameters** - -- **group_id** (`string`, required) The unique identifier of the group whose collaborations you want to retrieve. This ID is required to specify the group. -- **max_items_per_page** (`integer`, optional) Specifies the maximum number of collaboration items to return per page. Accepts an integer value. -- **response_offset** (`integer`, optional) Starting point in the list of collaborations. Must be an integer not exceeding 10000 to avoid rejection. - -## BoxApi.RetrieveGroupMembership - -
- - -Fetch details of a specific group membership. - -**Parameters** - -- **group_membership_id** (`string`, required) The unique identifier for the specific group membership to retrieve. Only admins or users with admin-level permissions can access this information. -- **include_fields_list** (`array[string]`, optional) List of specific attributes to include in the response, overriding standard fields. - -## BoxApi.DeleteGroupMembership - -
- - -Delete a specific group membership by ID. - -**Parameters** - -- **group_membership_id** (`string`, required) The unique identifier for the group membership to be deleted. Required for specifying which membership to remove. - -## BoxApi.ListDefinedWebhooks - -
- - -Retrieve all webhooks for your application. - -**Parameters** - -- **pagination_start_marker** (`string`, optional) The position marker to start returning results from. Required for marker-based pagination with `usemarker` set to `true`. -- **maximum_items_per_page** (`integer`, optional) The maximum number of webhooks to return per page. - -## BoxApi.GetSpecificWebhook - -
- - -Retrieve details of a specific webhook by ID. - -**Parameters** - -- **webhook_id** (`string`, required) The unique identifier of the webhook to retrieve details for. - -## BoxApi.DeleteWebhook - -
- - -Delete a specified webhook. - -**Parameters** - -- **webhook_id** (`string`, required) The unique identifier of the webhook to be deleted. It must be a valid string. - -## BoxApi.GetBoxEvents - -
- - -Retrieve up to a year of past events for a user or enterprise. - -**Parameters** - -- **event_stream_type** (`string`, optional) Specifies the category of events to retrieve. Options: 'all' for all user events, 'changes' for file updates, 'sync' for synced folders, 'admin_logs' for full enterprise events (requires admin), and 'admin_logs_streaming' for live enterprise events (requires admin). -- **event_stream_start_position** (`string`, optional) Specifies where to start receiving events in the stream. Use 'now' for initialization or '0' to retrieve all events. -- **event_limit** (`integer`, optional) The maximum number of events to retrieve. Fewer events may be returned if already available. -- **event_type_filter** (`array[string]`, optional) List of event types to filter by. Only applicable for 'admin_logs' or 'admin_logs_streaming' stream types. -- **event_start_date** (`string`, optional) The start date and time for filtering events. Used only with 'admin_logs' stream type. -- **event_time_upper_bound** (`string`, optional) The upper bound date and time for returning events, used only with 'admin_logs' stream type. Ignored for other stream types. - -## BoxApi.RetrieveUserCollections - -
- - -Retrieve collections for a user, including favorites. - -**Parameters** - -- **requested_fields** (`array[string]`, optional) A list of attribute names to include in the response. Only specified fields will be returned along with the mini representation. -- **pagination_offset** (`integer`, optional) Offset of the item to start the response. Must be 10000 or less to avoid rejection with a 400 error. -- **maximum_items_per_page** (`integer`, optional) The maximum number of items to return per page when retrieving user collections. - -## BoxApi.RetrieveCollectionContents - -
- - -Fetch files and folders from a specific collection. - -**Parameters** - -- **collection_id** (`string`, required) The unique identifier for the collection whose contents are to be retrieved. -- **attributes_to_include** (`array[string]`, optional) List of attributes to include in the response. Only the specified fields will be returned alongside the mini representation. -- **response_offset** (`integer`, optional) The starting position in the collection. Must not exceed 10000 to avoid errors. -- **max_items_per_page** (`integer`, optional) Specifies the maximum number of items to return per page when retrieving the collection contents. This controls pagination and helps manage large datasets. - -## BoxApi.RetrieveCollectionById - -
- - -Retrieve details of a collection using its ID. - -**Parameters** - -- **collection_identifier** (`string`, required) The unique ID of the collection to retrieve details for. - -## BoxApi.GetRecentItemsInfo - -
- - -Fetch recent items accessed by a user in Box. - -**Parameters** - -- **include_additional_fields** (`array[string]`, optional) A list of attributes to include in the response, overriding the default fields. -- **max_items_per_page** (`integer`, optional) The maximum number of items to return per page when fetching recent items accessed by a user. -- **pagination_start_marker** (`string`, optional) A position marker to begin returning results, used for marker-based pagination. Requires `usemarker=true`. - -## BoxApi.GetEnterpriseRetentionPolicies - -
- - -Retrieve all retention policies for an enterprise. - -**Parameters** - -- **filter_by_policy_name_prefix** (`string`, optional) Filter results using a case-sensitive prefix for retention policy names. -- **filter_by_retention_policy_type** (`string`, optional) Filter retention policies by type: 'finite' or 'indefinite'. -- **filter_by_creator_user_id** (`string`, optional) Filters the retention policies by the ID of the user who created them. Provide the user ID for specific filtering. -- **include_fields** (`array[string]`, optional) A list of attributes to include in the response, replacing standard fields unless specified. -- **maximum_items_per_page** (`integer`, optional) The maximum number of retention policies to return per page. -- **pagination_start_marker** (`string`, optional) Defines the position marker to begin returning results for marker-based pagination. - -## BoxApi.GetRetentionPolicy - -
- - -Retrieve details of a specified retention policy. - -**Parameters** - -- **retention_policy_id** (`string`, required) The ID of the retention policy to retrieve details for. This ID is essential for accessing the specific policy information. -- **include_attributes** (`array[string]`, optional) List of attributes to include in the response. Standard fields are omitted unless explicitly specified. - -## BoxApi.DeleteRetentionPolicy - -
- - -Permanently deletes a specified retention policy. - -**Parameters** - -- **retention_policy_id** (`string`, required) The unique identifier of the retention policy to be permanently deleted. - -## BoxApi.GetRetentionPolicyAssignments - -
- - -Retrieve retention policy assignments by policy ID. - -**Parameters** - -- **retention_policy_id** (`string`, required) The unique identifier of the retention policy to retrieve assignments for. -- **assignment_type** (`string`, optional) The type of retention policy assignment to retrieve, such as 'folder', 'enterprise', or 'metadata_template'. -- **include_fields_in_response** (`array[string]`, optional) A list of attribute names to include in the response. These specify additional fields to return beyond the standard response. -- **pagination_start_marker** (`string`, optional) The position marker to begin returning results for marker-based pagination. -- **max_items_per_page** (`integer`, optional) The maximum number of items to return per page when retrieving retention policy assignments. - -## BoxApi.RetrieveRetentionPolicyAssignment - -
- - -Fetch details of a retention policy assignment by ID. - -**Parameters** - -- **retention_policy_assignment_id** (`string`, required) The ID of the specific retention policy assignment to retrieve details for. -- **include_fields_in_response** (`array[string]`, optional) A list of attributes to include in the response. If specified, standard fields are excluded unless explicitly mentioned. - -## BoxApi.RemoveRetentionPolicyAssignment - -
- - -Removes a retention policy assignment from content. - -**Parameters** - -- **retention_policy_assignment_id** (`string`, required) The unique identifier for the retention policy assignment to be removed. - -## BoxApi.ListFilesUnderRetentionPolicy - -
- - -Retrieve files under a retention policy assignment. - -**Parameters** - -- **retention_policy_assignment_id** (`string`, required) The ID of the retention policy assignment used to identify which retention policy's files to retrieve. -- **position_marker** (`string`, optional) A string to define where to start returning results for pagination using marker-based pagination. Requires `usemarker` to be `true`. -- **max_items_per_page** (`integer`, optional) The maximum number of files to retrieve per page. Determines the page size for the results. - -## BoxApi.GetFileVersionsUnderRetention - -
- - -Fetch file versions under a specific retention policy assignment. - -**Parameters** - -- **retention_policy_assignment_id** (`string`, required) The ID of the retention policy assignment to retrieve file versions under retention. -- **pagination_start_marker** (`string`, optional) Defines the position marker to start returning results. Requires `usemarker` to be `true` for marker-based pagination. -- **max_items_per_page** (`integer`, optional) Specifies the maximum number of file versions to return per page during retrieval. - -## BoxApi.RetrieveLegalHoldPolicies - -
- - -Retrieve a list of enterprise legal hold policies. - -**Parameters** - -- **policy_name_prefix** (`string`, optional) Limits results to policies where names start with this term. It's case-insensitive. -- **response_attributes** (`array[string]`, optional) A list of attributes to include in the response. Only the specified fields and mini representation fields will be returned. -- **pagination_marker** (`string`, optional) The position marker to start returning results, used for marker-based pagination. Requires `usemarker` to be `true`. -- **maximum_items_per_page** (`integer`, optional) The maximum number of items to return per page. This controls the number of legal hold policies retrieved in a single request. - -## BoxApi.RetrieveLegalHoldPolicy - -
- - -Retrieve information about a specific legal hold policy. - -**Parameters** - -- **legal_hold_policy_id** (`string`, required) The unique identifier for the specific legal hold policy to retrieve. - -## BoxApi.DeleteLegalHoldPolicy - -
- - -Initiate deletion of a legal hold policy. - -**Parameters** - -- **legal_hold_policy_id** (`string`, required) The ID of the legal hold policy to delete. This is necessary to identify and initiate the deletion of the specified policy. - -## BoxApi.GetLegalHoldPolicyAssignments - -
- - -Retrieve items assigned to a legal hold policy. - -**Parameters** - -- **legal_hold_policy_id** (`string`, required) The unique identifier for the legal hold policy to retrieve assignments for. -- **filter_by_assignment_type** (`string`, optional) Specify the type of item (e.g., file, folder, user, etc.) the policy was applied to. Choices: ['file', 'file_version', 'folder', 'user', 'ownership', 'interactions']. -- **filter_by_item_id** (`string`, optional) Filters results by the ID of the item the policy was applied to. -- **pagination_marker** (`string`, optional) Specifies the position to start retrieving results using marker-based pagination. Requires `usemarker` to be set to `true`. -- **maximum_items_per_page** (`integer`, optional) Set the maximum number of items to retrieve per page for optimal pagination control. -- **response_fields** (`array[string]`, optional) List of attributes to include in the response, overriding standard fields unless specified. - -## BoxApi.RetrieveLegalHoldPolicyAssignment - -
- - -Retrieve details of a specific legal hold policy assignment. - -**Parameters** - -- **legal_hold_policy_assignment_id** (`string`, required) The unique identifier for the legal hold policy assignment to retrieve details about. - -## BoxApi.RemoveLegalHoldFromItem - -
- - -Initiate removal of a legal hold from an item. - -**Parameters** - -- **legal_hold_policy_assignment_id** (`string`, required) The unique identifier for the legal hold policy assignment you wish to remove. This value is necessary to initiate the removal process. - -## BoxApi.GetFilesOnLegalHold - -
- - -Retrieve files currently on legal hold for a specific assignment. - -**Parameters** - -- **legal_hold_policy_assignment_id** (`string`, required) The ID of the legal hold policy assignment to retrieve files currently on hold. -- **pagination_marker** (`string`, optional) Position marker for starting the result set when using marker-based pagination. Requires the 'usemarker' parameter to be true. -- **maximum_items_per_page** (`integer`, optional) The maximum number of items to return per page. Use this to control pagination size. -- **included_attributes** (`array[string]`, optional) A list of specific attributes to include in the response. Only these attributes will be returned unless others are explicitly specified. Use this to customize the response fields. - -## BoxApi.GetFileVersionRetentions - -
- - -Retrieve file version retentions for an enterprise. - -**Parameters** - -- **filter_by_file_id** (`string`, optional) Filters results to include only files with this specific file ID. -- **filter_by_file_version_id** (`string`, optional) Filters results by file versions matching this ID. -- **retention_policy_id** (`string`, optional) Filter results by the specific retention policy ID. -- **filter_by_disposition_action** (`string`, optional) Filter results based on the retention policy's disposition action, such as 'permanently_delete' or 'remove_retention'. -- **filter_by_disposition_before_date** (`string`, optional) Provide a date to filter results by files that will have their disposition come into effect before this date. Format: YYYY-MM-DD. -- **disposition_effective_after_date** (`string`, optional) Filter results by files with disposition effective after this date. Use ISO 8601 format (e.g., '2023-10-01'). -- **max_items_per_page** (`integer`, optional) The maximum number of items to return per page. -- **pagination_start_marker** (`string`, optional) Defines the starting point for paginated results using a position marker. Requires marker-based pagination to be enabled. - -## BoxApi.GetFileVersionsOnLegalHold - -
- - -Retrieve previous file versions under a legal hold assignment. - -**Parameters** - -- **legal_hold_policy_assignment_id** (`string`, required) The ID of the legal hold policy assignment to retrieve previous file versions for. -- **pagination_start_marker** (`string`, optional) Defines the position marker to start returning results for paginated data retrieval. Requires `usemarker` to be set to `true`. -- **max_items_per_page** (`integer`, optional) The maximum number of items to return per page when retrieving file versions. -- **include_additional_fields_in_response** (`array[string]`, optional) List of attribute names to include in the response. Only specified fields and mini representation fields will be returned. - -## BoxApi.GetFileVersionRetentionInfo - -
- - -Retrieve details of a file version retention. - -**Parameters** - -- **file_version_retention_id** (`string`, required) The ID of the specific file version retention to retrieve information for. This is required to access retention details. - -## BoxApi.RetrieveFileVersionLegalHolds - -
- - -Get details of legal holds on a specific file version. - -**Parameters** - -- **file_version_legal_hold_id** (`string`, required) The unique identifier of the file version legal hold to retrieve specific legal hold policy details. - -## BoxApi.GetLegacyFileVersionLegalHolds - -
- - -Retrieve file versions on legal hold in the legacy system. - -**Parameters** - -- **legal_hold_policy_id** (`string`, required) The ID of the legal hold policy for which file version legal holds need to be retrieved. -- **pagination_marker** (`string`, optional) A string that defines the starting point for marker-based pagination. Requires `usemarker` to be true. -- **max_items_per_page** (`integer`, optional) Specify the maximum number of items to return per page for the request. - -## BoxApi.GetShieldInformationBarrier - -
- - -Retrieve shield information barrier by ID. - -**Parameters** - -- **shield_information_barrier_id** (`string`, required) The unique identifier for the shield information barrier to be retrieved. - -## BoxApi.GetShieldInformationBarriers - -
- - -Retrieve shield information barriers for the enterprise. - -**Parameters** - -- **pagination_marker** (`string`, optional) Defines the starting point for paginated results using marker-based pagination. -- **max_items_per_page** (`integer`, optional) The maximum number of shield information barrier objects to return per page. This controls the pagination size. - -## BoxApi.GetShieldInformationBarrierReports - -
- - -Retrieve shield information barrier reports. - -**Parameters** - -- **shield_information_barrier_id** (`string`, required) The unique identifier for the shield information barrier whose reports need to be fetched. -- **pagination_marker** (`string`, optional) Position marker to start returning results for pagination. Requires 'usemarker' set to 'true'. -- **maximum_items_per_page** (`integer`, optional) The maximum number of shield information barrier reports to return per page. This integer value controls the page size for result sets. - -## BoxApi.FetchShieldBarrierReport - -
- - -Retrieve details of a shield information barrier report by ID. - -**Parameters** - -- **shield_barrier_report_id** (`string`, required) The unique ID of the shield information barrier report to retrieve. - -## BoxApi.GetShieldInfoBarrierSegment - -
- - -Retrieve shield information barrier segment by ID. - -**Parameters** - -- **barrier_segment_id** (`string`, required) The unique ID of the shield information barrier segment to be retrieved. - -## BoxApi.DeleteShieldInformationBarrierSegment - -
- - -Delete a shield information barrier segment by ID. - -**Parameters** - -- **shield_information_barrier_segment_id** (`string`, required) The ID of the shield information barrier segment to delete. This should be a valid string representing the segment's unique identifier. - -## BoxApi.GetShieldInformationBarrierSegments - -
- - -Retrieve shield information barrier segment details. - -**Parameters** - -- **shield_information_barrier_id** (`string`, required) The unique identifier for the shield information barrier that specifies the segment objects to retrieve. -- **pagination_position_marker** (`string`, optional) Defines the position marker to start returning results from, used for marker-based pagination. Requires usemarker to be true. -- **maximum_items_per_page** (`integer`, optional) The maximum number of shield information barrier segment items to return in a single request. Ideal for controlling page size during pagination. - -## BoxApi.GetShieldInfoBarrierMember - -
- - -Retrieve details of a shield information barrier segment member. - -**Parameters** - -- **member_id** (`string`, required) The ID of the shield information barrier segment member to retrieve details for. - -## BoxApi.RemoveShieldBarrierMember - -
- - -Delete a shield information barrier segment member by ID. - -**Parameters** - -- **member_id_for_deletion** (`string`, required) The ID of the shield information barrier segment member to be deleted. - -## BoxApi.ListShieldBarrierSegmentMembers - -
- - -Retrieve members of shield information barrier segments. - -**Parameters** - -- **segment_id** (`string`, required) The ID of the shield information barrier segment to retrieve members for. -- **pagination_marker** (`string`, optional) The position marker to begin returning paginated results. Requires `usemarker` to be `true`. -- **items_per_page_limit** (`integer`, optional) The maximum number of segment members to return per page. Use this to control pagination by specifying the number of results per page. - -## BoxApi.GetShieldInformationBarrierSegmentInfo - -
- - -Retrieve shield barrier segment restriction by ID. - -**Parameters** - -- **segment_restriction_id** (`string`, required) The unique identifier for the shield information barrier segment restriction. - -## BoxApi.DeleteShieldBarrierSegmentRestriction - -
- - -Delete a specific shield barrier segment restriction by ID. - -**Parameters** - -- **barrier_segment_restriction_id** (`string`, required) The ID of the shield information barrier segment restriction to delete. - -## BoxApi.GetShieldInformationRestrictions - -
- - -Retrieve restrictions for a shield information barrier segment. - -**Parameters** - -- **segment_id** (`string`, required) The unique identifier for the shield information barrier segment to retrieve restrictions. -- **pagination_position_marker** (`string`, optional) Defines the position marker to begin results, used for marker-based pagination. Requires `usemarker` to be `true`. -- **max_items_per_page** (`integer`, optional) The maximum number of items to return per page when retrieving shield information barrier segment restrictions. - -## BoxApi.GetDevicePinInfo - -
- - -Retrieve details of a specific device pin. - -**Parameters** - -- **device_pin_identifier** (`string`, required) The unique identifier for the device pin to retrieve information about. - -## BoxApi.DeleteDevicePin - -
- - -Delete a specific device pin from the system. - -**Parameters** - -- **device_pin_id** (`string`, required) The unique identifier of the device pin to be deleted. - -## BoxApi.GetEnterpriseDevicePins - -
- - -Retrieve all device pins for a specific enterprise. - -**Parameters** - -- **enterprise_id** (`string`, required) The unique identifier for the enterprise whose device pins are to be retrieved. This is a mandatory field. -- **pagination_start_marker** (`string`, optional) Defines the starting position for paginated results. Requires 'usemarker' to be true. -- **max_items_per_page** (`integer`, optional) The maximum number of device pins to retrieve per page. -- **sort_direction** (`string`, optional) The direction to sort results: alphabetical ascending ('ASC') or descending ('DESC'). - -## BoxApi.GetEnterpriseTermsOfService - -
- - -Retrieve the enterprise's terms of service. - -**Parameters** - -- **terms_of_service_type** (`string`, optional) Specify the type of terms of service to retrieve. Options are 'external' or 'managed'. - -## BoxApi.GetSpecificTermsOfService - -
- - -Fetches details of a specific terms of service. - -**Parameters** - -- **terms_of_service_id** (`string`, required) The unique identifier for the terms of service to be fetched. - -## BoxApi.GetUserTosStatus - -
- - -Retrieve user acceptance status for terms of service. - -**Parameters** - -- **terms_of_service_id** (`string`, required) The unique identifier for the specific terms of service document. -- **filter_by_user_id** (`string`, optional) Limits results to the specified user ID for retrieving their terms of service acceptance status. - -## BoxApi.GetSafeCollaborationDomains - -
- - -Retrieve domains approved for safe collaboration. - -**Parameters** - -- **pagination_start_marker** (`string`, optional) The position marker to begin returning results, used for marker-based pagination. Requires `usemarker` to be `true`. -- **maximum_items_per_page** (`integer`, optional) The maximum number of domains to return per page. Adjust this to control the page size of results. - -## BoxApi.FetchSafeCollaborationDomain - -
- - -Retrieve a designated safe collaboration domain within an enterprise. - -**Parameters** - -- **collaboration_whitelist_entry_id** (`string`, required) The ID of the trusted domain entry in the whitelist. Provide this to retrieve its details. - -## BoxApi.RemoveSafeCollaborationDomain - -
- - -Remove a domain from the safe collaboration list. - -**Parameters** - -- **whitelist_entry_id** (`string`, required) The unique identifier for the domain entry in the safe collaboration list to be removed. - -## BoxApi.GetCollaborationWhitelistExemptUsers - -
- - -Retrieve users exempt from collaboration restrictions. - -**Parameters** - -- **pagination_position_marker** (`string`, optional) Start position for returning results. Used for marker-based pagination. Requires `usemarker` set to `true`. -- **max_items_per_page** (`integer`, optional) The maximum number of users to return per page. Controls pagination size. - -## BoxApi.GetCollaborationWhitelistExemptUser - -
- - -Retrieve user exempt from collaboration restrictions. - -**Parameters** - -- **exemption_target_id** (`string`, required) The ID of the user who is exempt from collaboration domain restrictions. This ID is required to retrieve specific user details. - -## BoxApi.RemoveCollaborationWhitelistExemption - -
- - -Remove a user's exemption from domain restrictions in collaborations. - -**Parameters** - -- **exemption_id** (`string`, required) The ID of the user's exemption to be removed from the collaboration whitelist. - -## BoxApi.FetchEnterpriseStoragePolicies - -
- - -Fetches all storage policies in the enterprise. - -**Parameters** - -- **include_attributes** (`array[string]`, optional) An array of attribute names to include in the response. Specify attributes not normally returned in a standard response. Only mini representation fields and requested attributes will be returned. -- **pagination_marker** (`string`, optional) Defines the starting position for returning results using marker-based pagination. Requires `usemarker` to be `true`. -- **max_items_per_page** (`integer`, optional) Specify the maximum number of storage policy items to return per page. - -## BoxApi.FetchStoragePolicy - -
- - -Retrieve details of a specific storage policy. - -**Parameters** - -- **storage_policy_identifier** (`string`, required) The unique ID of the storage policy to retrieve details for. - -## BoxApi.FetchStoragePolicyAssignments - -
- - -Retrieve storage policy assignments for enterprise or user. - -**Parameters** - -- **target_type_for_assignments** (`string`, required) Specifies whether to return storage policy assignments for a 'user' or 'enterprise'. -- **target_user_or_enterprise_id** (`string`, required) The ID of the user or enterprise to fetch storage policy assignments for. -- **pagination_marker** (`string`, optional) Defines the position marker to start returning results for pagination. Requires 'usemarker' to be true. - -## BoxApi.FetchStoragePolicyAssignment - -
- - -Retrieve a storage policy assignment by ID. - -**Parameters** - -- **storage_policy_assignment_id** (`string`, required) The unique identifier of the storage policy assignment to be retrieved. - -## BoxApi.DeleteStoragePolicyAssignment - -
- - -Delete a user's storage policy assignment. - -**Parameters** - -- **storage_policy_assignment_id** (`string`, required) The ID of the storage policy assignment to delete. This is required and identifies which assignment to delete, reverting the user to the default policy. - -## BoxApi.DownloadZipContent - -
- - -Download the contents of a zip archive. - -**Parameters** - -- **zip_archive_unique_id** (`string`, required) The unique identifier for the zip archive to be downloaded. This ID must be obtained from the 'Create zip download' API response. - -## BoxApi.CheckZipDownloadStatus - -
- - -Check the status of a zip archive download. - -**Parameters** - -- **zip_archive_unique_identifier** (`string`, required) The unique identifier representing the zip archive for which to check download status. Obtainable from the `status_url` in the Create zip download API. - -## BoxApi.CancelSignRequest - -
- - -Cancel an existing sign request to stop further processing. - -**Parameters** - -- **sign_request_id** (`string`, required) The unique identifier of the signature request to be cancelled. - -## BoxApi.ResendSignatureRequestEmail - -
- - -Resend signature request email to outstanding signers. - -**Parameters** - -- **signature_request_id** (`string`, required) The unique identifier of the signature request to resend emails to outstanding signers. - -## BoxApi.RetrieveSignRequestById - -
- - -Retrieve details of a specific sign request by ID. - -**Parameters** - -- **signature_request_id** (`string`, required) The unique identifier for the signature request to retrieve. - -## BoxApi.FetchSignatureRequests - -
- - -Retrieve signature requests created by a user. - -**Parameters** - -- **pagination_marker** (`string`, optional) Defines the starting point for returning results, used for marker-based pagination. Requires use_marker to be true. -- **max_items_per_page** (`integer`, optional) Specify the maximum number of signature requests to return per page. -- **sender_email_list** (`array[string]`, optional) A list of sender emails to filter the signature requests by sender. `shared_requests` must be `true` if provided. -- **include_shared_requests** (`boolean`, optional) Set to true to include signature requests where the user is a collaborator but not the owner. Must be true if sender emails are provided. - -## BoxApi.GetManualStartWorkflows - -
- - -Retrieve workflows with manual start triggers for a folder. - -**Parameters** - -- **folder_id** (`string`, required) The unique identifier representing a folder. You can find this by visiting the folder in the web application and copying the ID from the URL. The root folder is always represented by ID '0'. -- **trigger_type_filter** (`string`, optional) Specify the trigger type to search for in workflows. Use 'WORKFLOW_MANUAL_START' for manual triggers. -- **max_items_per_page** (`integer`, optional) The maximum number of workflows to retrieve per page. Adjust based on your needs to control pagination. -- **pagination_marker** (`string`, optional) Specifies the position marker to start returning results. Used for marker-based pagination and requires `usemarker` to be set to `true`. - -## BoxApi.GetBoxSignTemplates - -
- - -Retrieve Box Sign templates created by a user. - -**Parameters** - -- **pagination_marker** (`string`, optional) The starting position marker for result pagination. Requires `usemarker` to be set to `true`. -- **max_items_per_page** (`integer`, optional) The maximum number of templates to return in a single response. - -## BoxApi.FetchBoxSignTemplateDetails - -
- - -Retrieve details of a specific Box Sign template. - -**Parameters** - -- **box_sign_template_id** (`string`, required) The unique identifier for a Box Sign template to retrieve its details. - -## BoxApi.ListSlackIntegrationMappings - -
- - -Retrieve Slack integration mappings for a Box enterprise. - -**Parameters** - -- **pagination_start_marker** (`string`, optional) Defines the starting position for pagination results. Requires 'usemarker' to be true. -- **max_items_per_page** (`integer`, optional) The maximum number of Slack integration mappings to return per page from the user's enterprise. -- **mapped_item_type** (`string`, optional) The type of mapped item for which the Slack integration mapping should be returned. Only 'channel' is supported. -- **mapped_item_id** (`string`, optional) ID of the mapped item for which the Slack integration mapping should be retrieved. -- **box_item_id** (`string`, optional) Box item ID for which to retrieve Slack integration mappings. Must be a valid ID within the user's enterprise. -- **box_item_type** (`string`, optional) Specify the type of Box item for which the mappings should be returned. Currently, only 'folder' is supported. -- **include_manually_created_mappings** (`boolean`, optional) Set to true to include mappings that have been manually created. - -## BoxApi.DeleteSlackIntegrationMapping - -
- - -Deletes a Slack integration mapping for Box content. - -**Parameters** - -- **slack_integration_mapping_id** (`string`, required) The ID of the Slack integration mapping to be deleted. This requires Admin or Co-Admin permission. - -## BoxApi.GetTeamsIntegrationMappings - -
- - -Retrieve Teams integration mappings for an enterprise. - -**Parameters** - -- **mapped_item_type** (`string`, optional) Specify the type of item ('channel' or 'team') for which the mapping should be returned. -- **mapped_item_id** (`string`, optional) The ID of the mapped item for which the mapping should be returned. Required for retrieving specific integration mappings. -- **box_item_id_for_mappings** (`string`, optional) The Box item ID to retrieve integration mappings for. Required for fetching specific mappings. -- **box_item_type** (`string`, optional) Specify the type of Box item for which the mappings should be returned. Acceptable value is 'folder'. - -## BoxApi.DeleteTeamsIntegrationMapping - -
- - -Deletes a Teams integration mapping in Box. - -**Parameters** - -- **integration_mapping_identifier** (`string`, required) The ID of the Teams integration mapping to be deleted. Required for identifying the specific mapping. - -## BoxApi.GetAiAgentDefaultConfig - -
- - -Retrieve the default configuration for the AI agent. - -**Parameters** - -- **filter_mode** (`string`, required) Specifies the mode to filter and return the agent configuration. Options: 'ask', 'text_gen', 'extract', 'extract_structured'. -- **agent_config_language_code** (`string`, optional) The ISO language code to specify the language for the AI agent configuration. Default is returned if unsupported. -- **model_identifier** (`string`, optional) Specify the model name to retrieve the default agent configuration. Ensure it matches the supported model names. - -## BoxApi.ListAiAgents - -
- - -Retrieve a list of AI agents with specified parameters. - -**Parameters** - -- **filter_by_mode** (`array[string]`, optional) List of modes to filter the agent configuration. Options: `ask`, `text_gen`, `extract`. -- **response_fields** (`array[string]`, optional) List of fields to return for each AI agent in the response. Specify as an array of strings. -- **agent_state_filter** (`array[string]`, optional) Specify the states of agents to return. Acceptable values include: 'enabled', 'disabled', and 'enabled_for_selected_users'. -- **results_start_position_marker** (`string`, optional) The starting point marker for returning paginated results. Use this to continue a previous query from where it left off. -- **max_items_per_page** (`integer`, optional) The maximum number of AI agents to return for a single page of results. -- **include_box_default_agents** (`boolean`, optional) Set to true to include Box default AI agents in the response, false otherwise. - -## BoxApi.GetAiAgentDetails - -
- - -Retrieve details of a specific AI agent by ID. - -**Parameters** - -- **agent_unique_identifier** (`string`, required) The unique identifier of the AI agent to retrieve details for. -- **fields_to_return** (`array[string]`, optional) List of specific fields to return in the response for the AI agent details. - -## BoxApi.DeleteAiAgent - -
- - -Removes an AI agent by its ID. - -**Parameters** - -- **agent_id** (`string`, required) The unique identifier of the AI agent you want to delete. This ID specifies which agent will be removed. - - diff --git a/app/en/resources/integrations/productivity/calendly-api/page.mdx b/app/en/resources/integrations/productivity/calendly-api/page.mdx deleted file mode 100644 index d66ed55da..000000000 --- a/app/en/resources/integrations/productivity/calendly-api/page.mdx +++ /dev/null @@ -1,1627 +0,0 @@ -# CalendlyApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The CalendlyApi MCP Server offers a comprehensive suite of tools for managing scheduling and event-related tasks within Calendly. Users can easily build agents and applications that can: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## CalendlyApi.ListEventInvitees - -
- - -Retrieve a list of invitees for a given event. - -**Parameters** - -- **event_uuid** (`string`, required) The unique identifier for the event whose invitees are being retrieved. -- **filter_by_email** (`string`, optional) Specify an email address to filter invitees by email. -- **invitee_status** (`string`, optional) Filter invitees by their status: 'active' for current invitees or 'canceled' for those who have canceled. -- **number_of_invitees_to_return** (`number`, optional) Specifies the number of invitee rows to return in the response. -- **pagination_token** (`string`, optional) A token to retrieve the next or previous page of invitees. Useful for paginated responses. -- **sort_order_by_created_at** (`string`, optional) Specify the order of results based on the creation date as 'asc' for ascending or 'desc' for descending. - -## CalendlyApi.ListScheduledEvents - -
- - -Retrieve a list of scheduled events from Calendly. - -**Parameters** - -- **event_status** (`string`, optional) Indicate if the event is 'active' or 'canceled'. -- **events_sort_order** (`string`, optional) Specify sorting order for events. Use 'start_time:asc' or 'start_time:desc'. -- **group_uri** (`string`, optional) URI of the group to fetch scheduled events for. Requires admin/owner or group admin privilege. -- **invitee_email** (`string`, optional) Email address of the invitee to filter and return related scheduled events. -- **max_start_time_utc** (`string`, optional) Include events with start times prior to this UTC time. Format: YYYY-MM-DDTHH:MM:SS.ssssssZ -- **min_start_time** (`string`, optional) Include events starting after this UTC time. Format: "2020-01-02T03:04:05.678123Z". -- **number_of_rows_to_return** (`number`, optional) Specify the number of event entries to retrieve. -- **organization_uri** (`string`, optional) URI of the organization to retrieve scheduled events for. Requires admin/owner privileges. -- **pagination_token** (`string`, optional) Token for navigating to the next or previous set of scheduled events. -- **user_uri** (`string`, optional) URI identifying the user for whom to return scheduled events. Use alone for personal events or with 'organization' for specific user events within an organization. - -## CalendlyApi.ListEventTypes - -
- - -Fetches event types for a specified user or organization. - -**Parameters** - -- **number_of_event_types_to_return** (`number`, optional) The number of event types to return. Specify the desired count of returned rows. -- **only_admin_managed** (`boolean`, optional) Return only admin managed event types if true, exclude them if false, or include all if omitted. -- **organization_uri** (`string`, optional) URI to view available personal, team, and organization event types. -- **pagination_token** (`string`, optional) Token to retrieve the next or previous set of event types in pagination. -- **return_active_event_types_only** (`boolean`, optional) Set to true to return only active event types, false for only inactive, or omit to include all event types. -- **sort_event_types_by** (`string`, optional) Specify field and direction to order results. Use `field:asc` or `field:desc`. Fields: name, position, created_at, updated_at. -- **user_availability_schedule_filter** (`string`, optional) Filters event types by the given primary availability schedule when used with the 'user' parameter. -- **user_uri** (`string`, optional) The user's URI to view associated personal, team, and organization event types. - -## CalendlyApi.CreateEventType - -
- - -Create a new one-on-one event type in Calendly. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## CalendlyApi.GetCalendlyUserInfo - -
- - -Retrieve user information from Calendly. - -**Parameters** - -- **user_unique_identifier** (`string`, required) The unique identifier of the user. Use 'me' to reference the caller. - -## CalendlyApi.GetUserAccountInfo - -
- - -Retrieve basic information about the current Calendly user. - -**Parameters** - -This tool does not take any parameters. - -## CalendlyApi.GetEventInviteeInfo - -
- - -Fetch information about a specific event invitee. - -**Parameters** - -- **event_unique_identifier** (`string`, required) The unique identifier for the specific Calendly event. Use this to specify which event's invitee details to retrieve. -- **invitee_unique_identifier** (`string`, required) The unique identifier of the invitee for a specific event. - -## CalendlyApi.CreateEventInvitee - -
- - -Create a new event invitee on Calendly. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## CalendlyApi.GetEventDetails - -
- - -Retrieve information about a specified scheduled event. - -**Parameters** - -- **event_unique_identifier** (`string`, required) The unique identifier for the event to retrieve details. - -## CalendlyApi.GetEventTypeInfo - -
- - -Retrieve information about a specified event type on Calendly. - -**Parameters** - -- **event_type_uuid** (`string`, required) The unique identifier (UUID) for the event type to be retrieved. - -## CalendlyApi.UpdateEventType - -
- - -Update details of an existing event type with Calendly. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **event_type_uuid** (`string`, optional) The unique identifier for the event type to be updated. This is essential for specifying which one-on-one event type you intend to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## CalendlyApi.ListOrganizationInvitations - -
- - -Retrieve organization invitations sent to members. - -**Parameters** - -- **organization_unique_identifier** (`string`, required) The unique identifier for the organization to retrieve invitations for. -- **filter_by_email** (`string`, optional) Email address to filter the results of organization invitations. -- **filter_by_status** (`string`, optional) Filter results by invitation status: 'pending', 'accepted', or 'declined'. -- **pagination_token** (`string`, optional) Token for fetching the next or previous set of organization invitations. -- **rows_to_return** (`number`, optional) Specify the number of organization invitation records to retrieve in the request. -- **sort_order** (`string`, optional) Specify the field and direction (ascending or descending) for sorting results. Format: `field:asc` or `field:desc`. Use a comma-separated list for multiple criteria. - -## CalendlyApi.InviteUserToOrganization - -
- - -Invite a user to join an organization. - -**Parameters** - -- **organization_unique_identifier** (`string`, required) The unique identifier for the organization to which the user is being invited. -- **user_email** (`string`, required) The email address of the user to be invited to the organization. - -## CalendlyApi.RevokeOrganizationInvitation - -
- - -Revoke an organization invitation in Calendly. - -**Parameters** - -- **invitation_unique_identifier** (`string`, required) The unique identifier for the organization invitation to be revoked. -- **organization_unique_identifier** (`string`, required) The organization's unique identifier required to revoke the invitation. - -## CalendlyApi.GetOrganizationInvitation - -
- - -Fetches details of an organization's invitation. - -**Parameters** - -- **organization_invitation_uuid** (`string`, required) The unique identifier of the organization's invitation. Provide this to retrieve specific invitation details. -- **organization_unique_id** (`string`, required) The unique identifier for the organization. - -## CalendlyApi.GetOrganizationMembershipInfo - -
- - -Retrieve details about a user's organization membership in Calendly. - -**Parameters** - -- **organization_membership_uuid** (`string`, required) The unique identifier for the organization's membership to retrieve details for a user. - -## CalendlyApi.RemoveUserFromOrganization - -
- - -Remove a user from an organization with admin rights. - -**Parameters** - -- **organization_membership_unique_id** (`string`, required) The unique identifier for the organization membership to be removed. - -## CalendlyApi.GetOrganizationMemberships - -
- - -Retrieve organization memberships and related details. - -**Parameters** - -- **filter_by_email** (`string`, optional) A specific email address to filter the organization memberships by. Only memberships associated with this email will be returned. -- **filter_by_organization** (`string`, optional) Filter the results by organization. Provide the organization's unique identifier or name to retrieve specific memberships. -- **filter_by_role** (`string`, optional) Filter the results by role. Options: 'owner', 'admin', 'user'. -- **filter_by_user** (`string`, optional) Filter the results by a specific user. Provide the user's identifier to narrow the search. -- **next_page_token** (`string`, optional) Token used to retrieve the next or previous set of results for paginated data. -- **number_of_rows_to_return** (`number`, optional) Specify the number of rows to return in the response. - -## CalendlyApi.CreateWebhookSubscription - -
- - -Create a webhook subscription for events in Calendly. - -**Parameters** - -- **callback_url** (`string`, required) The endpoint URL to receive POST requests for subscribed events in Calendly. -- **event_subscriptions** (`array[string]`, required) List of user events to subscribe to. Examples include 'invitee.created', 'invitee.canceled', etc. -- **organization_reference** (`string`, required) The unique reference identifier for the organization associated with the webhook. -- **webhook_subscription_scope** (`string`, required) Specifies the scope of the webhook subscription: "organization", "user", or "group". -- **group_reference** (`string`, optional) The unique reference to the group that the webhook will be tied to. -- **user_reference** (`string`, optional) The unique reference or ID of the user for whom the webhook will be tied. -- **webhook_signing_key** (`string`, optional) Optional secret key shared between your application and Calendly for verifying webhook signatures. Useful for ensuring webhook messages' authenticity. - -## CalendlyApi.ListWebhookSubscriptions - -
- - -Retrieve webhook subscriptions for an organization or user. - -**Parameters** - -- **filter_scope** (`string`, required) Filter the list by organization, user, or group. Acceptable values are 'organization', 'user', or 'group'. -- **organization_id** (`string`, required) The ID of the organization that owns the subscriptions being returned. This field is always required. -- **filter_by_group** (`string`, optional) Optional; filters the results by group when scope is set to 'group'. -- **filter_by_user** (`string`, optional) Filter results by user when 'scope' is set to 'user'. -- **number_of_rows_to_return** (`number`, optional) Specify the number of rows to be returned in the result set. -- **pagination_token** (`string`, optional) The token to retrieve the next or previous portion of the collection. -- **sort_by_field_and_direction** (`string`, optional) Specify the field and direction to order results. Use `created_at:asc` or `created_at:desc`. - -## CalendlyApi.GetWebhookSubscription - -
- - -Retrieve details of a specific webhook subscription. - -**Parameters** - -- **webhook_identifier** (`string`, required) The unique identifier of the webhook subscription to retrieve. - -## CalendlyApi.DeleteWebhookSubscription - -
- - -Delete a webhook subscription on Calendly. - -**Parameters** - -- **webhook_uuid** (`string`, required) The unique identifier for the webhook subscription to be deleted. This is required to specify which subscription will be removed. - -## CalendlyApi.CreateSchedulingLink - -
- - -Creates a single-use scheduling link for appointments. - -**Parameters** - -- **maximum_event_count** (`number`, required) The maximum number of events that can be scheduled using this link. Currently, only '1' is supported. -- **resource_owner_link** (`string`, required) A link to the resource owning this scheduling link, typically an Event Type URL. -- **resource_type** (`string`, required) Resource type for the scheduling link. This is always 'EventType'. - -## CalendlyApi.DeleteInviteeData - -
- - -Request removal of invitee data from all booked events. - -**Parameters** - -- **invitee_email_list** (`array[string]`, required) A list of invitee emails to remove data for from all booked events. Each entry should be a valid email address. - -## CalendlyApi.GetInviteeNoShowDetails - -
- - -Fetch details of a specified invitee no-show. - -**Parameters** - -- **invitee_uuid** (`string`, required) The unique identifier for the invitee whose no-show information is being requested. - -## CalendlyApi.UndoInviteeNoShowStatus - -
- - -Undo the no-show status for a Calendly invitee. - -**Parameters** - -- **invitee_unique_id** (`string`, required) The unique identifier for the invitee whose no-show status is to be undone. - -## CalendlyApi.MarkInviteeNoShow - -
- - -Mark an invitee as a no show in Calendly. - -**Parameters** - -- **invitee_id** (`string`, optional) The unique identifier for the invitee to be marked as a no show. This is required to specify which invitee did not attend. - -## CalendlyApi.GetGroupInfo - -
- - -Retrieve information about a specified group in Calendly. - -**Parameters** - -- **group_unique_identifier** (`string`, required) A unique identifier for the group whose information is to be retrieved from Calendly. - -## CalendlyApi.ListGroupRelationships - -
- - -Retrieve a list of group relationships for a given owner. - -**Parameters** - -- **filter_by_group** (`string`, optional) Filter results by a specific group using a group identifier. -- **filter_by_organization** (`string`, optional) Filter results by organization. Provide the organization ID or URI to narrow down the list of group relationships. -- **filter_by_owner_uri** (`string`, optional) The URI to filter results by owner, either an Organization Membership URI or Organization Invitation URI. -- **number_of_rows** (`number`, optional) Specify the number of rows to return in the response. -- **pagination_token** (`string`, optional) Token to navigate to the next or previous portion of the collection. - -## CalendlyApi.GetGroupRelationshipByUuid - -
- - -Retrieve group relationship details using a UUID. - -**Parameters** - -- **group_relationship_uuid** (`string`, required) The unique identifier (UUID) of the group relationship to retrieve details for. Use this to specify which relationship to fetch. - -## CalendlyApi.GetOrganizationDetails - -
- - -Retrieve details of a specified organization using UUID. - -**Parameters** - -- **organization_uuid** (`string`, required) The unique identifier for the organization to retrieve details. - -## CalendlyApi.CancelScheduledEvent - -
- - -Cancels a specified scheduled event on Calendly. - -**Parameters** - -- **event_unique_identifier** (`string`, required) The unique identifier for the event to be canceled. -- **cancellation_reason** (`string`, optional) The reason for canceling the event. Provide a clear and concise explanation. - -## CalendlyApi.ListRoutingForms - -
- - -Retrieve routing forms for a specified organization. - -**Parameters** - -- **organization_uri** (`string`, required) The URI of the organization to view its routing forms. It should be a valid string representing the organization's endpoint. -- **number_of_rows** (`number`, optional) The number of routing form entries to return for the request. -- **pagination_token** (`string`, optional) Token for fetching the next or previous portion of the routing forms collection. -- **sort_order** (`string`, optional) Specify the order of results using field and direction. Format: `created_at:asc` or `created_at:desc`. Use comma for multiple fields. - -## CalendlyApi.GetRoutingForm - -
- - -Retrieve details of a specified routing form. - -**Parameters** - -- **routing_form_uuid** (`string`, required) A unique identifier for the routing form to be retrieved. - -## CalendlyApi.ListRoutingFormSubmissions - -
- - -Get a list of Routing Form Submissions for a specified form. - -**Parameters** - -- **routing_form_uri** (`string`, required) The URI of the routing form to view its submissions. This specifies which form's submissions to retrieve. -- **number_of_rows_to_return** (`nu∫mber`, optional) Specify the number of routing form submissions to return. -- **pagination_token** (`string`, optional) Token for retrieving the next or previous set of form submissions. -- **sort_order** (`string`, optional) Specify field and direction to sort results. Format: `created_at:asc` or `created_at:desc`.b**∫** - -## CalendlyApi.GetRoutingFormSubmission - -
- - -Retrieve a specified Routing Form Submission by UUID. - -**Parameters** - -- **submission_uuid** (`string`, required) Unique identifier for the routing form submission to be retrieved. - -## CalendlyApi.ListAvailableEventTimes - -
- - -Retrieve available times for an event type within a date range. - -**Parameters** - -- **availability_end_time** (`string`, required) End time for the availability range, must be after the start time. -- **availability_start_time** (`string`, required) The start time for the availability range. Must be a future date, not in the past. -- **event_type_uri** (`string`, required) The URI associated with the event type to retrieve its available times. - -## CalendlyApi.ListActivityLogEntries - -
- - -Fetch a list of activity log entries. - -**Parameters** - -- **organization_uri** (`string`, required) URI of the organization to filter activity log entries. -- **actions** (`array[string]`, optional) Specify one or more actions associated with the log entries. Accepts an array of strings. -- **entry_categories** (`array[string]`, optional) Specify the categories of log entries to filter the results. This is an array of strings, each representing a category. -- **filter_by_search_term** (`string`, optional) Filters entries using supported operators: `|`, `+`, `"`, `-`, `()`, `*`. For example, `this | that` or `(email) + (signup)`. -- **include_entries_after** (`string`, optional) Include entries that occurred after this time. Use format: "YYYY-MM-DDTHH:MM:SS.sssZ" (UTC). -- **max_occurred_at_time** (`string`, optional) Include entries that occurred prior to this UTC time in the format "YYYY-MM-DDTHH:MM:SS.SSSZ". -- **number_of_rows_to_return** (`integer`, optional) Specifies the number of activity log entries to return in the response. -- **pagination_token** (`string`, optional) Token to get the next portion of the activity log collection. -- **sort_order** (`array[string]`, optional) Specify the field and direction to sort results. Format: `field:asc` or `field:desc`. -- **user_associated_uris** (`array[string]`, optional) Return entries from the user(s) associated with the provided URIs. This should be an array of strings representing the URIs of users. - -## CalendlyApi.CreateCustomShareLink - -
- - -Create a shareable link for a customized event. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## CalendlyApi.ListUserBusyTimes - -
- - -Retrieve user's scheduled events within a specific date range. - -**Parameters** - -- **availability_start_time** (`string`, required) Start time for the availability range. The date must not be in the past. -- **end_time** (`string`, required) End time for the requested availability range, must be after the start_time. -- **user_uri** (`string`, required) The URI associated with the user to retrieve busy times for. - -## CalendlyApi.GetUserAvailabilitySchedules - -
- - -Fetch a user's availability schedules. - -**Parameters** - -- **user_uri_reference** (`string`, required) A URI reference to the specified user whose availability schedules are to be retrieved. - -## CalendlyApi.GetUserAvailabilitySchedule - -
- - -Retrieve a user's availability schedule using their UUID. - -**Parameters** - -- **user_uuid** (`string`, required) The UUID of the availability schedule you want to retrieve. - -## CalendlyApi.DeleteScheduledEventsData - -
- - -Delete scheduled events data within a past time range. - -**Parameters** - -- **deletion_start_time_utc** (`string`, required) The UTC timestamp to start deleting scheduled events data. Must be in the past and not older than 24 months. -- **end_time_utc** (`string`, required) The UTC timestamp marking the end of the time range for data deletion, in the past, no greater than 24 months ago. - -## CalendlyApi.FetchEventTypeHosts - -
- - -Fetches a list of event type hosts from Calendly. - -**Parameters** - -- **event_type_uri** (`string`, required) The URI associated with the event type to identify the hosts. -- **number_of_rows_to_return** (`number`, optional) Specify the number of rows to fetch from the list of event type hosts. This determines the size of the dataset returned. -- **pagination_token** (`string`, optional) Token for fetching the next or previous portion of the event type host list. - -## CalendlyApi.CreateOneOffEvent - -
- - -Create a one-off event type in Calendly. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## CalendlyApi.GetSampleWebhookData - -
- - -Retrieve sample webhook data for testing integrations. - -**Parameters** - -- **organization_identifier** (`string`, required) The unique identifier for the organization. It specifies which organization the sample webhook data belongs to. -- **webhook_event_type** (`string`, required) Specify the type of webhook event to simulate, such as 'invitee.created' or 'invitee.canceled'. -- **webhook_scope** (`string`, required) Specify the scope for the sample webhook data. Options are 'user', 'organization', or 'group'. -- **user_identifier** (`string`, optional) The unique identifier for a user in Calendly whose webhook data you want to test. -- **webhook_event_group** (`string`, optional) Specify the group for the webhook event to categorize and filter data. Typically used for organizing related webhooks. - -## CalendlyApi.FetchOutgoingCommunications - -
- - -Retrieve outgoing SMS and email communications. - -**Parameters** - -- **organization_uri** (`string`, required) Return outgoing communications from the organization associated with this URI. This should be a valid URI string. -- **created_before** (`string`, optional) Include outgoing communications created before this time in UTC format (e.g., "2020-01-02T03:04:05.678Z"). -- **number_of_records_to_return** (`integer`, optional) The maximum number of outgoing communications records to retrieve. -- **pagination_token** (`string`, optional) Token for fetching the next set of outgoing communications. -- **start_time_utc** (`string`, optional) Include communications created after this UTC time (e.g. "2020-01-02T03:04:05.678Z"). - -## CalendlyApi.GetGroupList - -
- - -Retrieve a list of groups from Calendly. - -**Parameters** - -- **organization_uri** (`string`, required) URI for the organization to return associated groups from Calendly. -- **number_of_rows** (`number`, optional) Specify the number of rows (groups) to return from the query. Used to limit results. -- **pagination_token** (`string`, optional) Token for retrieving the next or previous set of groups in the list. - -## CalendlyApi.GetUserLocationInfo - -
- - -Retrieve configured location details for a specific user. - -**Parameters** - -- **user_uri** (`string`, required) The URI identifying the specific user to retrieve location information for. - -## CalendlyApi.GetEventAvailability - -
- - -Retrieve availability for a specific event type. - -**Parameters** - -- **event_type_uri** (`string`, required) The URI associated with the specific event type to retrieve availability. - -## CalendlyApi.UpdateEventAvailability - -
- - -Update an event type availability schedule. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **event_type_uri** (`string`, optional) URI of the event type to update the availability schedule for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## Reference - -Below is a reference of enumerations used by some of the tools in the CalendlyApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - ---- - -## Auth - -The Arcade Calendly MCP Server uses the [Calendly auth provider](/references/auth-providers/calendly) to connect to users' Calendly accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Calendly auth provider](/references/auth-providers/calendly#configuring-calendly-auth) with your own Calendly app credentials. - - diff --git a/app/en/resources/integrations/productivity/clickup-api/page.mdx b/app/en/resources/integrations/productivity/clickup-api/page.mdx deleted file mode 100644 index e58fbeda7..000000000 --- a/app/en/resources/integrations/productivity/clickup-api/page.mdx +++ /dev/null @@ -1,3505 +0,0 @@ -# ClickupApi -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The ClickupApi MCP Server offers a comprehensive suite of tools for interacting with ClickUp, enabling users to efficiently manage tasks, projects, and team collaboration. With this server, users can: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your - own tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## ClickupApi.GetClickupAccessToken - -
- - -Obtain an OAuth access token for ClickUp API authentication. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.GetClickupUserDetails - -
- - -Get details of the authenticated ClickUp user's account. - -**Parameters** - -This tool does not take any parameters. - -## ClickupApi.GetAuthorizedTeams - -
- - -Retrieve the workspaces for the authenticated user. - -**Parameters** - -This tool does not take any parameters. - -## ClickupApi.AddChecklistToTask - -
- - -Add a new checklist to a task in ClickUp. - -**Parameters** - -- **checklist_name** (`string`, required) The name or title of the checklist to be added to the task. It should be a descriptive string identifying the purpose or contents of the checklist. -- **task_identifier** (`string`, required) A unique identifier for the task to which the checklist will be added. It can be a custom or default task ID. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. -- **workspace_id_for_custom_task** (`integer`, optional) Provide the Workspace ID when 'custom_task_ids' is set to true. It's necessary to reference tasks by custom IDs. - - -## ClickupApi.EditChecklist - -
- - -Rename or reorder a task checklist in ClickUp. - -**Parameters** - -- **checklist_id** (`string`, required) The unique identifier (UUID) of the checklist to be edited or reordered. -- **checklist_name** (`string`, optional) The new name for the checklist. Leave empty if you do not wish to rename. -- **checklist_position** (`integer`, optional) Specify the order in which the checklist should appear on a task. Use 0 to place it at the top. - - -## ClickupApi.DeleteChecklist - -
- - -Deletes a checklist from a task in ClickUp. - -**Parameters** - -- **checklist_id** (`string`, required) The unique identifier for the checklist to be deleted. It should be in UUID format. - - -## ClickupApi.AddChecklistItemClickup - -
- - -Add an item to a checklist in ClickUp tasks. - -**Parameters** - -- **checklist_identifier** (`string`, required) A unique identifier for the checklist. Must be in UUID format. -- **assignee_user_id** (`integer`, optional) The unique ID of the user assigned to the checklist item. This should be an integer value representing the user's ID. -- **checklist_item_name** (`string`, optional) The name of the checklist item to be added. This should clearly describe the task or item to be completed. - - -## ClickupApi.UpdateChecklistItem - -
- - -Modify or update a specific task checklist item. - -**Parameters** - -- **checklist_item_uuid** (`string`, required) The UUID for the specific checklist item to be updated. -- **checklist_unique_identifier** (`string`, required) The UUID of the checklist to update. Example: b8a8-48d8-a0c6-b4200788a683. -- **assign_item_to_user** (`string`, optional) The user ID to which the checklist item will be assigned. This should be a string representing a valid user identifier in ClickUp. -- **checklist_item_name** (`string`, optional) The new name for the checklist item. Provide a string to rename the item. -- **mark_as_resolved** (`boolean`, optional) Boolean to mark the checklist item as resolved (true) or unresolved (false). -- **parent_checklist_item_id** (`string`, optional) Include another item's `checklist_item_id` to nest this item under it. - - -## ClickupApi.DeleteTaskChecklistItem - -
- - -Delete an item from a task checklist in ClickUp. - -**Parameters** - -- **checklist_identifier** (`string`, required) The unique identifier (UUID) for the checklist. Used to specify the checklist from which the item will be deleted. -- **checklist_item_uuid** (`string`, required) The unique identifier (UUID) of the checklist item to be deleted. - - -## ClickupApi.GetTaskComments - -
- - -Retrieve comments from a specified task in ClickUp. - -**Parameters** - -- **task_identifier** (`string`, required) Specify the unique identifier of the task whose comments you want to retrieve. -- **comment_date_unix_time_ms** (`integer`, optional) Specify the date of a task comment using Unix time in milliseconds for pagination. -- **comment_start_id** (`string`, optional) The ID of the earliest comment to start retrieving from, used for pagination. -- **use_custom_task_ids** (`boolean`, optional) Set to `true` if you want to reference a task by its custom task ID. -- **workspace_id_for_custom_task** (`integer`, optional) Provide the Workspace ID when using a custom task ID (requires `custom_task_ids` to be true). - - -## ClickupApi.AddTaskComment - -
- - -Add a new comment to a specific task on ClickUp. - -**Parameters** - -- **comment_content** (`string`, required) The text of the comment to be added to the task. It should contain any updates, feedback, or relevant information. -- **send_notifications_to_all** (`boolean`, required) If true, notifications will be sent to everyone, including the creator of the comment. -- **specific_task_id** (`string`, required) The ID of the task to add the comment to. Required for identifying the target task. -- **assignee_group** (`string`, optional) Specifies a group of users (as a comma-separated string) to be assigned to the comment. Ensure the group is relevant to the task. -- **comment_assignee_id** (`integer`, optional) An integer representing the user ID of the assignee for the comment on the task. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. -- **workspace_id_for_custom_task** (`integer`, optional) Provide the Workspace ID when referencing a task by its custom task ID (set `custom_task_ids` to true). - - -## ClickupApi.ViewChatComments - -
- - -Retrieve the most recent comments from a Chat view. - -**Parameters** - -- **chat_view_id** (`string`, required) The unique identifier for the Chat view to retrieve comments from. It should be a string, typically '105'. -- **comment_start_date_unix_ms** (`integer`, optional) The start date of a Chat view comment in Unix time (milliseconds) to fetch older comments. -- **start_comment_id** (`string`, optional) The comment ID to start retrieving older comments from in the Chat view. Use this to fetch comments beyond the most recent 25. - - -## ClickupApi.AddChatViewComment - -
- - -Add a new comment to a Chat view. - -**Parameters** - -- **comment_text** (`string`, required) The text content of the comment to be added to the Chat view. -- **send_notifications_to_all** (`boolean`, required) Set to true to send notifications to everyone, including the comment creator. -- **view_id** (`string`, required) The ID of the Chat view where the comment will be added. Expected as a string. - - -## ClickupApi.GetListComments - -
- - -View comments from a specific ClickUp list. - -**Parameters** - -- **list_id** (`integer`, required) The unique integer identifier of the ClickUp list for which comments are being retrieved. -- **oldest_comment_id** (`string`, optional) ID of the oldest comment to start retrieving additional comments from. -- **start_date_unix_millis** (`integer`, optional) Enter the date of a list info comment using Unix time in milliseconds to retrieve comments starting from this timestamp. - - -## ClickupApi.AddCommentToList - -
- - -Add a comment to a specific list in ClickUp. - -**Parameters** - -- **assignee_id** (`integer`, required) The ID of the user to whom the comment is assigned. This should be an integer value representing the user's unique identifier. -- **comment_text** (`string`, required) The text of the comment to be added to the list. This should contain the message or information you wish to convey. -- **list_identifier** (`integer`, required) The unique ID of the list where the comment will be added. -- **notify_all** (`boolean`, required) If true, notifications are sent to everyone, including the comment creator. - - -## ClickupApi.UpdateTaskComment - -
- - -Update a task comment in ClickUp. - -**Parameters** - -- **assignee_user_id** (`integer`, required) The ID of the user to assign the comment to. This should be a numeric user ID in ClickUp. -- **comment_identifier** (`integer`, required) The unique identifier of the comment to update. It must be an integer. -- **mark_comment_as_resolved** (`boolean`, required) Set to true to mark the comment as resolved; false to leave it unresolved. Accepts a boolean value. -- **new_comment_content** (`string`, required) The new content for the task comment. This will replace the existing comment text. -- **assign_to_group** (`integer`, optional) Assign the comment to a group by providing the group's ID. - - -## ClickupApi.DeleteTaskComment - -
- - -Delete a comment from a task. - -**Parameters** - -- **comment_id** (`integer`, required) The unique integer identifier of the comment to be deleted. - - -## ClickupApi.ViewThreadedComments - -
- - -Retrieve threaded replies to a comment. - -**Parameters** - -- **thread_comment_id** (`integer`, required) The ID of the comment for which threaded replies are to be retrieved. This ID should be an integer and corresponds to the comment in a ClickUp task whose replies you want to view. - - -## ClickupApi.CreateThreadedComment - -
- - -Create a threaded comment in a ClickUp task. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **parent_comment_id** (`integer`, optional) The ID of the parent comment to which the threaded reply will be attached. It should be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.ViewListCustomFields - -
- - -Retrieve accessible custom fields for a specific list. - -**Parameters** - -- **content_type** (`string`, required) The MIME type of the request body, typically set to 'application/json'. -- **list_id** (`integer`, required) The unique identifier of the list to retrieve accessible custom fields for. - - -## ClickupApi.GetFolderCustomFields - -
- - -Retrieve accessible custom fields from a folder in ClickUp. - -**Parameters** - -- **content_type** (`string`, required) The MIME type of the content being sent. Typically, use 'application/json'. -- **folder_id** (`integer`, required) The unique identifier of the folder to retrieve custom fields from. Must be an integer corresponding to a specific folder in ClickUp. - - -## ClickupApi.GetSpaceCustomFields - -
- - -Retrieve custom fields accessible in a specific ClickUp space. - -**Parameters** - -- **content_type_header** (`string`, required) The MIME type for the request header, typically 'application/json'. -- **space_identifier** (`integer`, required) The unique identifier for the ClickUp space from which to fetch available custom fields. It should be an integer. - - -## ClickupApi.ViewWorkspaceCustomFields - -
- - -Retrieve Workspace-level Custom Fields in ClickUp. - -**Parameters** - -- **content_type_header** (`string`, required) The MIME type of the content. Typically set to 'application/json' for JSON data. -- **workspace_id** (`integer`, required) The ID of the Workspace to retrieve custom fields for. This identifies which Workspace's fields you want to view. - - -## ClickupApi.UpdateTaskCustomField - -
- - -Update a custom field value for a specific task in ClickUp. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **task_id** (`string`, optional) The ID of the task to be updated with new custom field data. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_field_uuid** (`string`, optional) The UUID of the custom field to update for a specific task. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **workspace_id** (`integer`, optional) Provide the Workspace ID when referencing a task by its Custom Task ID (`custom_task_ids` must be true). Only used when mode is 'execute'. -- **use_custom_task_id_reference** (`boolean`, optional) Set to `true` to reference a task using its Custom Task ID. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.RemoveCustomFieldValue - -
- - -Remove a custom field value from a ClickUp task. - -**Parameters** - -- **custom_field_id** (`string`, required) UUID of the custom field to be removed from the task. Example: b8a8-48d8-a0c6-b4200788a683 -- **task_identifier** (`string`, required) The unique identifier of the task from which you want to remove the custom field value. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. -- **workspace_id** (`integer`, optional) Provide the Workspace ID when referencing a task by custom task id. - - -## ClickupApi.SetTaskDependency - -
- - -Set a task as waiting on or blocking another task. - -**Parameters** - -- **task_id_of_dependency** (`string`, required) The ID of the task that is waiting on or blocking another task. -- **dependent_task_id** (`string`, optional) The ID of the task that the specified task depends on or is blocking. This establishes the task dependency relationship. -- **depends_on_task_id** (`string`, optional) Specify the task ID that this task depends on or is blocked by. It should be a valid task ID in ClickUp. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. -- **workspace_id** (`integer`, optional) Provide the Workspace ID when `custom_task_ids` is true. Necessary for task identification. - - -## ClickupApi.RemoveTaskDependency - -
- - -Remove a dependency relationship between tasks. - -**Parameters** - -- **dependent_task_id** (`string`, required) The task ID that is dependent on another. Provide a valid task ID as a string. -- **depends_on_task_id** (`string`, required) The ID of the task that another task depends on. Provide a valid task ID to specify the dependent task. -- **task_id_to_remove_dependency** (`string`, required) Specify the task ID from which the dependency is to be removed. This is required to identify the task involved in the dependency relationship. -- **use_custom_task_ids** (`boolean`, optional) Set to true if referencing tasks by their custom task IDs is desired. -- **workspace_id** (`integer`, optional) Provide the Workspace ID when using custom task IDs by setting `custom_task_ids` to `true`. - - -## ClickupApi.LinkTasksClickup - -
- - -Link two ClickUp tasks together. - -**Parameters** - -- **source_task_id** (`string`, required) The ID of the task from which the link will be initiated. -- **task_to_link_to** (`string`, required) The ID of the task to link to the initiating task. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. -- **workspace_id_for_custom_task** (`integer`, optional) Provide the Workspace ID if referencing a task by custom task id (when custom_task_ids is true). - - -## ClickupApi.RemoveTaskLink - -
- - -Remove the link between two tasks. - -**Parameters** - -- **linked_task_id** (`string`, required) The task ID of the task to which the original task is linked. This specifies the connection to be removed. -- **primary_task_id** (`string`, required) The ID of the primary task from which to remove the link. This is required to identify the task. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. -- **workspace_id** (`integer`, optional) Provide the Workspace ID when `custom_task_ids` is set to `true`. - - -## ClickupApi.GetSpaceFolders - -
- - -Retrieve a list of folders from a specified space. - -**Parameters** - -- **space_id** (`integer`, required) The unique identifier of the space from which to retrieve folders. This is required to specify which space's folders are being requested. -- **include_archived_folders** (`boolean`, optional) Set to true to include archived folders in the results. - - -## ClickupApi.CreateFolderInSpace - -
- - -Add a new Folder to a Space in ClickUp. - -**Parameters** - -- **folder_name** (`string`, required) The name of the new folder to be created in the specified space. It should be a string representing the folder's title. -- **space_id** (`integer`, required) The unique identifier for the ClickUp Space where the folder will be created. It should be an integer. - - -## ClickupApi.ViewFolderLists - -
- - -Retrieve lists contained in a specified folder. - -**Parameters** - -- **folder_id** (`integer`, required) The unique identifier for the folder whose lists you want to retrieve. This must be an integer. - - -## ClickupApi.RenameClickupFolder - -
- - -Rename a folder in ClickUp. - -**Parameters** - -- **folder_id_clickup** (`integer`, required) The unique identifier for the ClickUp folder you wish to rename. -- **new_folder_name** (`string`, required) Specify the new name for the folder. This is the name that the folder will be renamed to in ClickUp. - - -## ClickupApi.DeleteWorkspaceFolder - -
- - -Delete a folder from your ClickUp workspace. - -**Parameters** - -- **folder_id** (`integer`, required) The unique ID of the folder to be deleted from your ClickUp workspace. Ensure this ID is correct to avoid unintended deletions. - - -## ClickupApi.ViewWorkspaceGoals - -
- - -View the Goals available in a Workspace. - -**Parameters** - -- **workspace_id** (`integer`, required) The unique identifier for the workspace to view its goals. -- **include_completed_goals** (`boolean`, optional) Indicate whether to include completed goals in the results. Set to true to include completed goals, or false to exclude them. - - -## ClickupApi.CreateWorkspaceGoal - -
- - -Add a new goal to a specified workspace. - -**Parameters** - -- **allow_multiple_owners** (`boolean`, required) Set to true to allow a goal to have multiple owners, or false for a single owner. -- **due_date_timestamp** (`integer`, required) The due date for the goal as a Unix timestamp in milliseconds. Represents when the goal should be completed. -- **goal_color** (`string`, required) The color code for the goal. Expected to be a string representing a color, such as a hex code like '#FF5733'. -- **goal_description** (`string`, required) A brief explanation of the goal to be added, providing context and details. -- **goal_name** (`string`, required) The name or title of the goal to be added to the workspace. -- **goal_owners** (`array[integer]`, required) Array of user IDs for those assigned to own the goal, allowing multiple owners. -- **workspace_id** (`integer`, required) The ID of the workspace where the goal will be added. This is a numeric value. - - -## ClickupApi.GetGoalDetails - -
- - -Retrieve detailed information about a specific goal including its targets. - -**Parameters** - -- **goal_identifier** (`string`, required) The unique identifier (UUID) for the goal to retrieve details and targets. - - -## ClickupApi.UpdateGoalDetails - -
- - -Update goal details such as name, due date, and owners. - -**Parameters** - -- **goal_color** (`string`, required) Set the color of the goal. Accepts a string representing the color, such as a hex code. -- **goal_description** (`string`, required) The new description for the goal. This should provide an overview or details of the goal's purpose. -- **goal_due_date** (`integer`, required) An integer representing the new due date for the goal, usually in Unix timestamp format. -- **goal_id** (`string`, required) The unique identifier for the goal to be updated. This is a UUID. -- **goal_name** (`string`, required) The new name for the goal. This will replace the current goal name. -- **new_owners_to_add** (`array[integer]`, required) List of user IDs to add as new owners for the goal. -- **remove_owners_user_ids** (`array[integer]`, required) Array of user IDs to be removed as owners of the goal. - - -## ClickupApi.DeleteGoal - -
- - -Deletes a goal from your workspace in ClickUp. - -**Parameters** - -- **content_type_header** (`string`, required) Specify the Content-Type header. Typically set to 'application/json'. -- **goal_identifier** (`string`, required) The unique identifier for the goal to be deleted. It must be a valid UUID. - - -## ClickupApi.AddTargetToGoal - -
- - -Add a target to a specific goal in ClickUp. - -**Parameters** - -- **goal_identifier** (`string`, required) The unique identifier (UUID) of the goal to which the target will be added. -- **initial_value_steps** (`integer`, required) Specify the starting value for the target's progress steps, as an integer. -- **linked_task_ids** (`array[string]`, required) An array of task IDs to associate the target with tasks. -- **list_ids** (`array[string]`, required) Array of List IDs to associate the target with multiple Lists. -- **target_name** (`string`, required) Specify the name for the target being added to the goal. It should be a descriptive label for easy identification. -- **target_owners_ids** (`array[integer]`, required) An array of user IDs representing the owners of the key result target. -- **target_steps_end** (`integer`, required) Specify the final value for the target steps. It indicates the goal completion threshold. -- **target_type** (`string`, required) Specify the type of target (key result) as one of the following: `number`, `currency`, `boolean`, `percentage`, or `automatic`. -- **target_unit** (`string`, required) Specify the unit for the target if using types like number, currency, or percentage. - - -## ClickupApi.UpdateKeyResultTarget - -
- - -Update the target of a specific key result. - -**Parameters** - -- **current_steps_value** (`integer`, required) The current number of steps completed for the key result target. Provide an integer value. -- **key_result_identifier** (`string`, required) Unique identifier for the key result to be updated, provided as a UUID. -- **note_update_description** (`string`, required) Text for the note associated with the key result. Use to add or update content related to the key result. - - -## ClickupApi.DeleteGoalTarget - -
- - -Delete a target from a goal in ClickUp. - -**Parameters** - -- **goal_target_id** (`string`, required) The unique identifier (UUID) of the key result to delete from the goal in ClickUp. - - -## ClickupApi.InviteGuestToWorkspace - -
- - -Invite a guest to join a ClickUp workspace. - -**Parameters** - -- **guest_email** (`string`, required) The email address of the guest to be invited to the workspace. Ensure it is correctly formatted. -- **workspace_id** (`integer`, required) The integer ID of the Workspace to which the guest will be invited. -- **allow_guest_to_create_views** (`boolean`, optional) Indicates if the guest can create views in the workspace. Accepts a boolean value. -- **allow_tag_editing** (`boolean`, optional) Set to true if the guest should be allowed to edit tags in the workspace. -- **allow_view_time_spent** (`boolean`, optional) Allow the guest to view time spent in the workspace. Accepts a boolean value: true to allow, false to deny. -- **can_view_estimated_times** (`boolean`, optional) Set to true to allow the guest to view estimated times for tasks. -- **can_view_points_estimated** (`boolean`, optional) Set to true to allow the guest to view estimated points for tasks. -- **custom_role_id** (`integer`, optional) The ID of the custom role to assign to the guest. Must be an integer value. - - -## ClickupApi.GetGuestInformation - -
- - -Retrieve information about a guest in a workspace. - -**Parameters** - -- **guest_identifier** (`integer`, required) An integer representing the unique ID of the guest whose information is to be retrieved. -- **workspace_id** (`integer`, required) The ID of the ClickUp workspace. This is required for identifying the specific workspace where the guest information is being retrieved. - - -## ClickupApi.ConfigureWorkspaceGuest - -
- - -Configure options for a guest in a workspace. - -**Parameters** - -- **guest_identifier** (`integer`, required) The unique identifier for the guest to be configured in the workspace. -- **workspace_id** (`integer`, required) The unique identifier for the ClickUp workspace where the guest is being configured. This is required for identifying the specific workspace. -- **allow_guest_to_edit_tags** (`boolean`, optional) Set to true to allow the guest to edit tags in the workspace; false to disallow. -- **allow_view_creation** (`boolean`, optional) A boolean to specify if the guest can create views. True allows view creation, false denies it. -- **allow_viewing_points_estimated** (`boolean`, optional) Specify if the guest can view estimated points in the workspace. True allows viewing; false restricts it. -- **allow_viewing_time_spent** (`boolean`, optional) Set to true to allow the guest to view time spent on tasks, false to restrict. -- **can_see_time_estimates** (`boolean`, optional) Determines if the guest can view time estimates. Use true to allow, false to restrict. -- **guest_custom_role_id** (`integer`, optional) An integer representing the custom role ID assigned to the guest in the workspace. - - -## ClickupApi.RemoveGuestFromWorkspace - -
- - -Revoke a guest's access to a ClickUp workspace. - -**Parameters** - -- **guest_id** (`integer`, required) The unique identifier for the guest to be removed from the workspace. This should be an integer value. -- **workspace_id** (`integer`, required) The unique ID of the ClickUp workspace from which the guest will be removed. This is an integer. - - -## ClickupApi.ShareTaskWithGuest - -
- - -Share a task with a guest in the ClickUp Workspace. - -**Parameters** - -- **guest_id** (`integer`, required) The unique identifier for the guest to share the task with. -- **guest_permission_level** (`string`, required) Defines the level of access for the guest. Options: 'read', 'comment', 'edit', 'create'. -- **task_id** (`string`, required) The unique identifier for the task to share with the guest. -- **include_shared_details** (`boolean`, optional) Set to `true` to include details of items shared with the guest. Defaults to `true`. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. -- **workspace_id_when_custom_task_ids_enabled** (`integer`, optional) Provide the Workspace ID when referencing tasks by custom task IDs. Required if `custom_task_ids` is `true`. - - -## ClickupApi.RemoveGuestFromTask - -
- - -Revoke a guest's access to a specific task in ClickUp. - -**Parameters** - -- **guest_id** (`integer`, required) The ID of the guest to remove from the task. This is a required integer value. -- **task_id** (`string`, required) The unique identifier of the task from which the guest's access should be revoked. This is required to specify the task. -- **include_shared_details** (`boolean`, optional) Set to `true` to include details of items shared with the guest. Default is `true`. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. -- **workspace_id_for_custom_task** (`integer`, optional) Provide the Workspace ID when referencing a task by its custom task ID. This is required if 'custom_task_ids' is set to 'true'. - - -## ClickupApi.AddGuestToList - -
- - -Add a guest to a specific list in ClickUp. - -**Parameters** - -- **guest_id** (`integer`, required) The unique identifier for the guest to be added. This should be an integer value. -- **guest_permission_level** (`string`, required) Permission level for the guest on the list. Options are `read`, `comment`, `edit`, or `create`. -- **list_id** (`integer`, required) The identifier of the list to which the guest will be added. -- **include_shared_details** (`boolean`, optional) Set to false to exclude shared item details from the guest view; defaults to true to include them. - - -## ClickupApi.RemoveGuestFromList - -
- - -Revoke a guest's access to a specific list in ClickUp. - -**Parameters** - -- **guest_user_id** (`integer`, required) The unique identifier of the guest whose access is to be revoked from the list. -- **list_identifier** (`integer`, required) The unique identifier for the list from which the guest's access will be revoked. This must be an integer. -- **include_shared_details** (`boolean`, optional) Set to `true` to include details of items shared with the guest. Default is `true`. - - -## ClickupApi.AddGuestToFolder - -
- - -Share a folder with a guest in ClickUp's Enterprise Plan. - -**Parameters** - -- **folder_id** (`integer`, required) The unique integer ID of the folder to be shared with the guest. -- **guest_identifier** (`integer`, required) The unique identifier for the guest to whom the folder will be shared. This should be an integer representing the guest's ID. -- **guest_permission_level** (`string`, required) Defines guest's access level: 'read' for view only, 'comment', 'edit', or 'create' for full access. -- **include_shared_items** (`boolean`, optional) Set to true to include details of items shared with the guest. Default is true. - - -## ClickupApi.RemoveGuestFromFolder - -
- - -Revoke a guest's access to a specified folder. - -**Parameters** - -- **folder_identifier** (`integer`, required) The unique identifier for the folder from which the guest's access should be revoked. This ID is essential to specify the exact folder within the ClickUp workspace. -- **guest_identifier** (`integer`, required) The unique numeric ID of the guest to be removed from the folder. This is required to identify which guest's access is being revoked. -- **include_shared_items** (`boolean`, optional) Set to true to include details of items shared with the guest. Defaults to true. - - -## ClickupApi.ViewListsInFolder - -
- - -Retrieve lists from a specific folder. - -**Parameters** - -- **folder_id** (`integer`, required) The unique identifier for the folder whose lists are to be retrieved. This is required to specify which folder's lists to view. -- **include_archived_lists** (`boolean`, optional) Specify whether to include archived lists. Set to true to include and false to exclude. - - -## ClickupApi.CreateClickupList - -
- - -Create a new list in a ClickUp folder. - -**Parameters** - -- **folder_id** (`integer`, required) The unique integer identifier for the folder where the new list will be added. -- **list_name** (`string`, required) The name of the new list to be created within the specified ClickUp folder. -- **due_date_timestamp** (`integer`, optional) The due date for the list in Unix timestamp format. Determines when the list should be completed. -- **formatted_list_description** (`string`, optional) Provide a markdown-formatted description for the List. Use this instead of plain text content. -- **include_time_in_due_date** (`boolean`, optional) Set to true to include a specific time with the due date. -- **list_assignee_user_id** (`integer`, optional) The user ID to assign this list to a specific user. This identifies who will be responsible for the list. -- **list_color** (`string`, optional) Specifies the color of the List, not related to task statuses. -- **list_description** (`string`, optional) A plain text description for the list. Use this to provide details about the list's purpose. -- **list_priority** (`integer`, optional) An integer value indicating the priority of the list, where a higher number typically means higher priority. - - -## ClickupApi.CreateFolderFromTemplate - -
- - -Creates a new folder from a template in a ClickUp space. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **clickup_space_id** (`string`, optional) ID of the ClickUp Space where the folder will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **folder_template_id** (`string`, optional) The ID of the folder template to be used for creating a new folder in a ClickUp space. Ensure the template is added to your Workspace. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.GetFolderlessLists - -
- - -View Lists in a Space not located in a Folder. - -**Parameters** - -- **space_identifier** (`integer`, required) The unique identifier of the space to retrieve the folderless lists from. It should be an integer. -- **include_archived_lists** (`boolean`, optional) Specify true to include archived lists, or false to exclude them. - - -## ClickupApi.AddFolderlessListToSpace - -
- - -Add a new folderless list to a specified space. - -**Parameters** - -- **list_name** (`string`, required) The name of the new list to be created within the space. -- **space_id** (`integer`, required) The unique identifier of the space where the list will be added. -- **due_date_timestamp** (`integer`, optional) An integer representing the UNIX timestamp for the list's due date. This defines the deadline for the list. -- **include_due_time** (`boolean`, optional) Set to true if the due date should include a specific time. -- **list_color_status** (`string`, optional) Specifies the color representing the List. This is for visual identification and does not affect task statuses. -- **list_description** (`string`, optional) A text description for the new list. Use plain text. For markdown, use `markdown_content`. -- **list_markdown_description** (`string`, optional) Markdown formatted description for the list. Use this instead of a plain text description. -- **list_owner_user_id** (`integer`, optional) The user ID for the list owner to be assigned to the new list. -- **list_priority_level** (`integer`, optional) Set the priority level for the list. It should be an integer value indicating the list's urgency or importance. - - -## ClickupApi.ViewListDetails - -
- - -Retrieve details of a specific list in ClickUp. - -**Parameters** - -- **list_id** (`integer`, required) The unique ID of the list to view details. Right-click the list in your ClickUp sidebar, select 'Copy link', and paste the URL's last string. - - -## ClickupApi.UpdateClickupList - -
- - -Update the details of a ClickUp list. - -**Parameters** - -- **list_identifier** (`string`, required) The unique identifier of the ClickUp list to update. This is a required string field. -- **list_name** (`string`, required) The new name for the ClickUp list. This should be a string value. -- **formatted_list_description** (`string`, optional) Formatted description of the list using Markdown syntax instead of plain text. -- **include_due_date_time** (`boolean`, optional) Set to true to include a specific time with the due date. -- **list_assignee_id** (`string`, optional) The ID of the user to assign to the list. Provide a valid user ID string. -- **list_color** (`string`, optional) Specify the color of the list. This refers to the List color rather than task statuses. -- **list_description_content** (`string`, optional) The plain text description to update for the ClickUp list. Use this instead of markdown for simple text updates. -- **list_due_date** (`integer`, optional) Set the list's due date as a Unix timestamp in milliseconds, representing the time the list is due. -- **list_priority** (`integer`, optional) Set the list's priority as an integer. Usually, 1 is high, 2 is medium, and 3 is low priority. -- **remove_list_color** (`boolean`, optional) Set to `true` to remove the List color; default is `false`. - - -## ClickupApi.DeleteWorkspaceList - -
- - -Delete a list from your ClickUp workspace. - -**Parameters** - -- **content_type_header** (`string`, required) Specifies the media type of the request. Typically set to 'application/json'. -- **workspace_list_id** (`integer`, required) The unique integer ID of the list to be deleted from the ClickUp workspace. - - -## ClickupApi.AddTaskToClickupList - -
- - -Add a task to an additional list in ClickUp. - -**Parameters** - -- **target_list_id** (`integer`, required) The unique identifier for the target list where the task will be added. This is required to associate the task with the correct list in ClickUp. -- **task_identifier** (`string`, required) Specify the ID of the task to be added to an additional list in ClickUp. - - -## ClickupApi.RemoveTaskFromAdditionalList - -
- - -Remove a task from an additional list in ClickUp. - -**Parameters** - -- **additional_list_id** (`integer`, required) The ID of the additional list from which the task should be removed. This is required for identifying the secondary list, not the task's home list. -- **task_identifier** (`string`, required) The unique identifier for the task to be removed from the additional list. - - -## ClickupApi.GetTaskMembers - -
- - -Retrieve members with direct access to a task. - -**Parameters** - -- **task_identifier** (`string`, required) The unique identifier of the task to retrieve members for. This ID is necessary to specify the task in question. - - -## ClickupApi.GetListMembers - -
- - -Retrieve members with access to a specific list in ClickUp. - -**Parameters** - -- **list_id** (`integer`, required) The unique identifier for the list in ClickUp. It is required to fetch the members with access to this list. - - -## ClickupApi.GetWorkspaceCustomRoles - -
- - -Retrieve custom roles from a specific workspace. - -**Parameters** - -- **workspace_id** (`integer`, required) The unique identifier for the workspace to retrieve custom roles from. -- **include_members** (`boolean`, optional) Include member details in the response. Set to true to include, false to exclude. - - -## ClickupApi.ViewSharedHierarchy - -
- - -View shared tasks, lists, and folders. - -**Parameters** - -- **workspace_id** (`integer`, required) The Workspace ID to view shared tasks, lists, and folders. - - -## ClickupApi.RetrieveAvailableSpaces - -
- - -View available Spaces in a Workspace. - -**Parameters** - -- **workspace_id** (`integer`, required) The ID of the workspace to retrieve available spaces from. -- **include_archived_spaces** (`boolean`, optional) Set to true to include archived Spaces in the results. Otherwise, only active Spaces are returned. - - -## ClickupApi.CreateSpaceInWorkspace - -
- - -Add a new Space to a Workspace. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **workspace_id** (`integer`, optional) The ID of the workspace where the new space will be added. It should be an integer value. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.GetWorkspaceSpaces - -
- - -Retrieve available Spaces in a Workspace. - -**Parameters** - -- **workspace_space_id** (`integer`, required) The unique identifier for the specific space in the workspace to retrieve details. - - -## ClickupApi.UpdateClickupSpace - -
- - -Update space attributes in ClickUp. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **space_identifier** (`integer`, optional) The unique identifier for the ClickUp space to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.DeleteWorkspaceSpace - -
- - -Delete a space from your ClickUp workspace. - -**Parameters** - -- **workspace_space_id** (`integer`, required) The unique identifier for the space to delete in your ClickUp workspace. Provide the specific space ID to permanently remove the space and its data. - - -## ClickupApi.GetSpaceTags - -
- - -Retrieve task tags for a specified space. - -**Parameters** - -- **content_type_header** (`string`, required) The MIME type of the request. Generally set to 'application/json'. -- **space_identifier** (`integer`, required) An integer representing the ID of the space for which to retrieve task tags. This ID is required to specify the space. - - -## ClickupApi.AddSpaceTaskTag - -
- - -Add a new task tag to a specified space in ClickUp. - -**Parameters** - -- **space_identifier** (`integer`, required) The unique identifier for the space where the tag will be added. It must be an integer. -- **tag_background_color** (`string`, required) Hex code representing the background color for the tag. It should be a string in the format '#RRGGBB'. -- **tag_foreground_color** (`string`, required) Hex code for the tag's foreground color. It defines the text color of the tag. -- **tag_name** (`string`, required) Name of the new tag to be added to the space. It should be a descriptive and concise identifier for categorizing tasks. - - -## ClickupApi.UpdateTaskTag - -
- - -Update a task tag in a ClickUp space. - -**Parameters** - -- **background_color_of_tag** (`string`, required) The background color for the task tag. It should be a valid hex color code (e.g., #FFFFFF). -- **current_tag_name** (`string`, required) The current name of the tag to be updated in the ClickUp space. -- **new_tag_name** (`string`, required) The new name for the task tag to be updated in the ClickUp space. It must be a string representing the desired tag name after the update. -- **space_id** (`integer`, required) The unique identifier of the ClickUp space where the tag will be updated. This is required to specify which space's tag needs modification. -- **tag_foreground_color** (`string`, required) The foreground (text) color of the tag in a valid color format (e.g., HEX). - - -## ClickupApi.DeleteSpaceTag - -
- - -Delete a task tag from a space in ClickUp. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **space_identifier** (`integer`, optional) The unique identifier of the space from which the tag will be deleted. This should be an integer value. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **tag_name_to_delete** (`string`, optional) The name of the tag to be deleted from the specified space. Ensure this tag name exists in the target space. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.AddTagToTask - -
- - -Add a tag to a specific task in ClickUp. - -**Parameters** - -- **content_type** (`string`, required) Specifies the media type of the request. Typically set to 'application/json'. -- **tag_name** (`string`, required) The name of the tag to add to the task. This should be a string representing the desired tag. -- **task_identifier** (`string`, required) The unique identifier of the task to which the tag will be added. Can be a custom task ID if specified. -- **use_custom_task_ids** (`boolean`, optional) Set to true if you want to reference a task using its custom task ID. -- **workspace_id_if_custom_task_ids** (`integer`, optional) Workspace ID required when referencing a task by its custom task ID. Only needed if `custom_task_ids=true`. - - -## ClickupApi.RemoveTagFromTask - -
- - -Remove a tag from a specific task in ClickUp. - -**Parameters** - -- **content_type_header** (`string`, required) Specifies the media type of the request. Commonly set to 'application/json'. -- **tag_name_to_remove** (`string`, required) The name of the tag to remove from the specified task. -- **task_id** (`string`, required) The unique identifier of the task from which the tag will be removed. Use the task's regular ID unless custom task IDs are enabled. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID, or false to use the standard ID. -- **workspace_id_for_custom_task** (`integer`, optional) The Workspace ID required when referencing a task by its custom ID (if custom_task_ids is true). - - -## ClickupApi.GetListTasks - -
- - -Retrieve tasks from a specific list in ClickUp. - -**Parameters** - -- **list_identifier** (`integer`, required) The unique identifier for the list. Find it by copying the link and extracting the number following /li in the URL. -- **custom_task_type_filters** (`array[number]`, optional) An array of numbers to filter tasks by custom types. Use 0 for tasks, 1 for Milestones, and other numbers for custom types defined in your Workspace. -- **date_created_less_than** (`integer`, optional) Filter tasks created before the specified Unix timestamp in milliseconds. -- **display_tasks_in_reverse_order** (`boolean`, optional) Set to true to display tasks in reverse order. -- **filter_by_assignees** (`array[string]`, optional) Filter tasks by assignee IDs. Provide an array of assignee IDs to filter tasks assigned to specific users. -- **filter_by_custom_field** (`array[string]`, optional) Include tasks with specific values in one Custom Field. This can be a Custom Relationship. Provide an array of strings representing the field values. -- **filter_by_custom_fields** (`array[string]`, optional) Include tasks with specific values in one or more Custom Fields. Use a JSON array of objects, where each object includes 'field_id', 'operator', and 'value'. -- **filter_by_date_done_before** (`integer`, optional) Filter tasks completed before a specified Unix time in milliseconds. -- **filter_by_statuses** (`array[string]`, optional) Filter tasks by their statuses. Use an array of status strings, such as ['to do', 'in progress']. -- **filter_by_tags** (`array[string]`, optional) Filter tasks by a list of tags. Provide an array of strings representing the tags to filter by. -- **filter_by_watchers** (`array[string]`, optional) An array of watcher IDs to filter tasks by watchers. Each ID should be a string. -- **filter_date_created_after** (`integer`, optional) Filter tasks created after this Unix timestamp in milliseconds. -- **filter_date_done_after** (`integer`, optional) Filter tasks completed after a specified date in Unix time (milliseconds). -- **filter_date_updated_after** (`integer`, optional) Filter tasks updated after the specified Unix timestamp in milliseconds. -- **filter_date_updated_less_than** (`integer`, optional) Filter tasks updated before a specific date, using Unix time in milliseconds. -- **filter_due_date_before** (`integer`, optional) Filter tasks with due dates earlier than the specified Unix time in milliseconds. -- **filter_due_date_greater_than** (`integer`, optional) Filter tasks by a due date greater than the provided Unix time in milliseconds. -- **include_archived_tasks** (`boolean`, optional) Set to true to include archived tasks in the results. By default, archived tasks are excluded. -- **include_closed_tasks** (`boolean`, optional) Set to true to include closed tasks in the response. Defaults to false to exclude them. -- **include_markdown_task_descriptions** (`boolean`, optional) Set to true to return task descriptions in Markdown format. -- **include_subtasks** (`boolean`, optional) Set to true to include subtasks; false to exclude them. Defaults to false. -- **include_tasks_in_multiple_lists** (`boolean`, optional) Set to true to include tasks that exist in multiple lists. By default, these tasks are excluded. -- **order_by_field** (`string`, optional) Specify the field to order tasks by. Options: 'id', 'created', 'updated', 'due_date'. Defaults to 'created'. -- **page_number_to_fetch** (`integer`, optional) Specify the page number to fetch tasks from, starting at 0. - - -## ClickupApi.CreateNewClickupTask - -
- - -Create a new task in ClickUp. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **target_list_id** (`integer`, optional) The ID of the list where the new task will be created. This should be an integer identifying the list in ClickUp. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.ViewTaskDetails - -
- - -Retrieve detailed information about a specific task. - -**Parameters** - -- **task_identifier** (`string`, required) The unique identifier for the task you want to retrieve details for in ClickUp. -- **filter_custom_fields** (`array[string]`, optional) Include tasks with specific values in one or more custom fields using the specified JSON format. Custom Relationships are supported. -- **include_markdown_description** (`boolean`, optional) Set to true to return task descriptions in Markdown format. -- **include_subtasks** (`boolean`, optional) Include subtasks in the task details if set to true. Defaults to false. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. -- **workspace_id_for_custom_task** (`integer`, optional) Provide the Workspace ID when referencing a task by its custom task ID. Required if `custom_task_ids` is true. - - -## ClickupApi.UpdateTaskInClickup - -
- - -Update task details in ClickUp. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **task_identifier** (`string`, optional) The ID of the task to be updated. Provide either the standard task ID or a custom task ID if 'custom_task_ids' is true. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **workspace_id_for_custom_task** (`integer`, optional) Provide the Workspace ID when referencing a task by its custom task ID (requires `custom_task_ids` set to true). Only used when mode is 'execute'. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.DeleteTask - -
- - -Delete a task from your ClickUp Workspace. - -**Parameters** - -- **content_type** (`string`, required) Specify the media type of the resource. Typically set as 'application/json'. -- **task_id** (`string`, required) The ID of the task to be deleted. This is mandatory and should be a valid task identifier. -- **use_custom_task_ids** (`boolean`, optional) Set to true if referencing a task by custom task ID is required. -- **workspace_id** (`integer`, optional) Provide the Workspace ID when referencing a task by its custom task ID. Required if `custom_task_ids` is true. - - -## ClickupApi.GetFilteredTeamTasks - -
- - -Retrieve tasks from a workspace based on specified filters. - -**Parameters** - -- **workspace_id** (`integer`, required) The ID of the workspace to retrieve tasks from. Must be an integer. -- **assignee_ids** (`array[string]`, optional) Filter tasks by assignee using their ClickUp user IDs. -- **custom_task_type_filters** (`array[number]`, optional) Filter tasks by custom task types. Use `0` for tasks, `1` for Milestones, and other numbers for Workspace-defined types. -- **display_tasks_in_reverse_order** (`boolean`, optional) Set to true to display tasks in reverse order. -- **due_date_before** (`integer`, optional) Filter tasks with due dates earlier than the specified Unix timestamp in milliseconds. -- **due_date_greater_than** (`integer`, optional) Filter tasks by a due date greater than the specified Unix time in milliseconds. -- **filter_by_custom_fields** (`array[string]`, optional) Include tasks with specific values in Custom Fields. Provide an array of objects with field_id, operator, and value keys. -- **filter_by_date_created_before** (`integer`, optional) Filter tasks created before this date. Specify as Unix time in milliseconds. -- **filter_by_date_done_after** (`integer`, optional) Filter tasks by the completion date after the given Unix time in milliseconds. -- **filter_by_done_date_before** (`integer`, optional) Filter tasks completed before a specific date. Provide the date in Unix time (milliseconds). -- **filter_by_list_ids** (`array[string]`, optional) An array of list IDs to filter tasks by. Example: ["1234", "6789"]. -- **filter_by_project_ids** (`array[string]`, optional) An array of folder IDs to filter tasks by specific folders. For example, ['1234', '6789']. -- **filter_by_space_ids** (`array[string]`, optional) An array of space IDs to filter tasks by. Example values: ['1234', '6789']. -- **filter_by_tags** (`array[string]`, optional) Filter tasks by tags. Use `%20` for spaces within tags. Example: `urgent%20task`. -- **filter_by_update_date_before** (`integer`, optional) Filter tasks updated before a specific date, provided as Unix time in milliseconds. -- **filter_by_updated_date_greater_than** (`integer`, optional) Filter tasks by their updated date, greater than the specified Unix time in milliseconds. -- **filter_created_date_after** (`integer`, optional) Filter tasks by creation date greater than the specified Unix time in milliseconds. -- **include_closed_tasks** (`boolean`, optional) Set to true to include closed tasks, false to exclude them. By default, closed tasks are excluded. -- **include_markdown_description** (`boolean`, optional) Set to true to return task descriptions in Markdown format. Default is false. -- **include_subtasks** (`boolean`, optional) Set to true to include subtasks, or false to exclude them. Defaults to false (exclude). -- **order_tasks_by** (`string`, optional) Specify the field by which to order tasks. Options include: 'id', 'created', 'updated', 'due_date'. Defaults to 'created'. -- **page_number_to_fetch** (`integer`, optional) Page number to fetch, starting at 0, in the paginated list of tasks. -- **parent_task_id** (`string`, optional) Include the parent task ID to return subtasks in the response. -- **status_filters** (`array[string]`, optional) Filter tasks by their statuses. Use '%20' for spaces. Example: ['to%20do', 'in%20progress']. - - -## ClickupApi.MergeTasksInClickup - -
- - -Merge multiple tasks into a target task in ClickUp. - -**Parameters** - -- **source_task_ids_to_merge** (`array[string]`, required) Array of task IDs to merge into the target task in ClickUp. -- **target_task_id** (`string`, required) ID of the target task into which other tasks will be merged. - - -## ClickupApi.TaskStatusDuration - -
- - -Get the duration a task spends in each status. - -**Parameters** - -- **content_type** (`string`, required) Specify the content type for the API request, typically 'application/json'. -- **task_identifier** (`string`, required) The unique identifier for the task you want to query. Use this to specify which task's status duration you are interested in. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. -- **workspace_id** (`integer`, optional) The Workspace ID must be provided when referencing a task by its custom task ID and `custom_task_ids` is set to `true`. - - -## ClickupApi.GetTaskTimeInStatus - -
- - -Retrieve duration of tasks in various statuses. - -**Parameters** - -- **content_type_header** (`string`, required) The MIME type of the body of the request. Typically set to 'application/json'. -- **task_ids_list** (`string`, required) A list of up to 100 task IDs to check duration in status. Include each task ID separated by commas. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference tasks by custom task IDs. -- **workspace_id_for_custom_task_ids** (`integer`, optional) Provide the Workspace ID if using custom task IDs. Required when `custom_task_ids` is `true`. - - -## ClickupApi.ViewTaskTemplates - -
- - -View available task templates in a workspace. - -**Parameters** - -- **content_type_header** (`string`, required) Sets the 'Content-Type' for the API request, typically 'application/json'. -- **page_number** (`integer`, required) The page number of results to retrieve. Used for pagination. -- **workspace_id** (`integer`, required) The ID of the workspace for which to retrieve task templates. This is used to specify the target workspace in ClickUp. - - -## ClickupApi.CreateTaskFromTemplate - -
- - -Create a task using an existing template. - -**Parameters** - -- **target_list_id** (`integer`, required) The ID of the list where the task will be created. This should be an integer associated with the desired list in your workspace. -- **task_name** (`string`, required) The name of the task to be created using the template. -- **task_template_id** (`string`, required) A string representing the ID of the task template to be used for task creation. Ensure the template is added to your workspace. - - -## ClickupApi.CreateListFromFolderTemplate - -
- - -Create a new list in a folder using a template. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **folder_identifier** (`string`, optional) The ID of the folder where the new list will be created using the specified template. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **template_id_for_list_creation** (`string`, optional) ID of the template to use for creating a new list in the folder. Ensure the template is added to your Workspace library. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.CreateListFromTemplate - -
- - -Create a new list in a ClickUp space using a template. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **space_id_for_list_creation** (`string`, optional) ID of the ClickUp Space where the new List will be created using the template. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **template_id** (`string`, optional) ID of the template to use for creating the list in the specified ClickUp space. It must be accessible in your Workspace. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.GetWorkspaceSeatDetails - -
- - -Retrieve seat details for a workspace. - -**Parameters** - -- **workspace_id** (`string`, required) The unique ID of the workspace for which seat details are to be retrieved. - - -## ClickupApi.GetWorkspacePlan - -
- - -Retrieve the current subscription plan for a workspace. - -**Parameters** - -- **workspace_id** (`string`, required) The unique ID for the workspace whose subscription plan you want to retrieve. - - -## ClickupApi.CreateUserGroup - -
- - -Create a user group within a ClickUp workspace. - -**Parameters** - -- **group_name** (`string`, required) The name of the user group to be created within the workspace. This should be a descriptive name to identify the group easily. -- **user_group_members** (`array[integer]`, required) List of user IDs to include in the user group. Each ID should be an integer representing a user within the workspace. -- **workspace_id** (`integer`, required) The unique ID of the ClickUp workspace where the user group will be created. -- **group_handle** (`string`, optional) A unique string identifier for the user group to be created. This will be used as the group's handle within the workspace. - - -## ClickupApi.GetWorkspaceCustomTaskTypes - -
- - -Retrieve custom task types for a specific workspace. - -**Parameters** - -- **workspace_id** (`integer`, required) The ID of the Workspace to retrieve custom task types for. - - -## ClickupApi.UpdateUserGroup - -
- - -Update and manage user groups within a ClickUp Workspace. - -**Parameters** - -- **user_group_id** (`string`, required) The unique identifier of the User Group within the Workspace. This ID is required to specify which group to update. -- **add_member_ids** (`array[integer]`, optional) An array of user IDs to add to the User Group. Each ID should be an integer. -- **handle_identifier** (`string`, optional) A unique identifier or handle for the User Group. This is used to reference the group within ClickUp. -- **remove_members_ids** (`array[integer]`, optional) An array of integer IDs representing the users to be removed from the User Group. -- **user_group_name** (`string`, optional) The new name for the User Group within the ClickUp Workspace. This should be a string representing the desired name. - - -## ClickupApi.DeleteUserGroup - -
- - -Delete a user group from your ClickUp workspace. - -**Parameters** - -- **user_group_id** (`string`, required) The identifier of the user group to be deleted from the workspace. - - -## ClickupApi.GetUserGroupsInWorkspace - -
- - -Retrieve user groups in a ClickUp workspace. - -**Parameters** - -- **workspace_id** (`integer`, required) The ID of the ClickUp workspace to retrieve user groups from. -- **user_group_ids** (`string`, optional) List one or more User Group IDs to retrieve details about specific user groups in the workspace. - - -## ClickupApi.GetTrackedTimeForTask - -
- - -Fetch tracked time for a specific task. - -**Parameters** - -- **set_content_type_header** (`string`, required) Set the Content-Type header for the request, typically as 'application/json'. -- **task_id** (`string`, required) The unique identifier for the task whose tracked time you want to retrieve. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference tasks by their custom task IDs instead of default IDs. -- **workspace_id** (`integer`, optional) The ID of the Workspace to be provided when referencing a task by its custom task ID. Required if `custom_task_ids` is `true`. - - -## ClickupApi.ClickupLegacyTimeTracking - -
- - -Log time entry for a ClickUp task using legacy endpoint. - -**Parameters** - -- **clickup_task_id** (`string`, required) The unique identifier of the task for which time is being logged. This can refer to either the standard task ID or a custom task ID if specified. -- **end_timestamp** (`integer`, required) Epoch timestamp indicating when the time tracking ended for the task. -- **start_time_unix_epoch** (`integer`, required) The start time of the time entry in Unix epoch format. This is required to log time for a task. -- **time_spent_seconds** (`integer`, required) Duration of time spent on the task in seconds. This is the time you want to log for the specific task. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. -- **workspace_id** (`integer`, optional) Provide the Workspace ID when `custom_task_ids` is `true`. - - -## ClickupApi.EditLegacyTimeEntry - -
- - -Edit a legacy time tracked entry for a task in ClickUp. - -**Parameters** - -- **end_time_epoch** (`integer`, required) The end time of the tracked interval in Unix epoch format. It marks when the time entry should conclude. -- **legacy_time_interval_id** (`string`, required) The unique identifier for the time interval to be edited. -- **start_timestamp** (`integer`, required) The start time of the time entry as a Unix timestamp in milliseconds. -- **task_identifier** (`string`, required) The unique identifier of the task for which the legacy time entry is being edited. This is required to specify the task in ClickUp. -- **time_duration_in_seconds** (`integer`, required) The total time duration (in seconds) for the time entry to be updated. This modifies the tracked time for a specific task. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. -- **workspace_id** (`integer`, optional) The Workspace ID required when custom task IDs are used. This must be set if `custom_task_ids` is `true`. - - -## ClickupApi.RemoveTimeEntry - -
- - -Delete a specific time entry from a task. - -**Parameters** - -- **content_type_header** (`string`, required) Specify the media type of the resource (usually 'application/json'). -- **interval_id_for_removal** (`string`, required) The unique identifier of the time entry to delete from a task. -- **task_identifier** (`string`, required) The identifier of the task from which to delete the time entry. This must match the task ID used in ClickUp. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. -- **workspace_id** (`integer`, optional) Provide the Workspace ID when `use_custom_task_ids` is `true`. Required to identify the workspace in ClickUp. - - -## ClickupApi.GetTimeEntriesInDateRange - -
- - -Retrieve time entries within a specified date range. - -**Parameters** - -- **content_type** (`string`, required) Specifies the format of the response content. Usually set to 'application/json'. -- **workspace_id** (`integer`, required) Specify the Workspace ID for filtering time entries when using custom task IDs. -- **end_date_unix_milliseconds** (`number`, optional) Specify the end date in Unix time (milliseconds) to filter time entries up to this point. -- **filter_by_assignee** (`number`, optional) Filter by user IDs. Use commas to separate multiple IDs (e.g., '1234,9876'). Only accessible to Workspace Owners/Admins. -- **folder_id** (`integer`, optional) Include time entries for tasks in a specific folder by providing its ID. Only one location filter (space, folder, list, or task) can be used at a time. -- **include_approval_details** (`boolean`, optional) Include detailed approval information for each time entry, such as Approver ID, Approved Time, List of Approvers, and Approval Status. -- **include_approval_history** (`boolean`, optional) Set to true to include the approval history for each time entry, with status changes, notes, and approvers. -- **include_location_names** (`boolean`, optional) Include the names of the List, Folder, and Space in the response along with their IDs when set to true. -- **include_only_billable_entries** (`boolean`, optional) Set to `true` to include only billable time entries, or `false` for non-billable entries. -- **include_task_tags** (`boolean`, optional) Set to true to include task tags in the response for associated time entries. -- **space_id** (`integer`, optional) Include time entries associated only with tasks in the specified Space using its ID. -- **specific_list_id** (`integer`, optional) Include only time entries associated with tasks in a specified List by providing the List ID. -- **specific_task_id** (`string`, optional) Include only time entries associated with the specified task. -- **start_date_in_unix_milliseconds** (`number`, optional) The start date of the time entries in Unix time (milliseconds). -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference tasks by their custom task IDs. Requires specifying the team_id. -- **workspace_id_for_custom_task_ids** (`integer`, optional) Provide the Workspace ID when referencing a task by its custom task ID, and `custom_task_ids` is set to true. - - -## ClickupApi.CreateTimeEntry - -
- - -Create a new time entry for tracking work. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_id_numeric** (`integer`, optional) The numeric ID of the workspace. Required if referencing a task by custom task ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **workspace_id** (`integer`, optional) Required if `custom_task_ids` is true. Provide the Workspace ID for the team. Only used when mode is 'execute'. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task id. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.ViewTimeEntry - -
- - -Retrieve details of a specific time entry. - -**Parameters** - -- **content_type** (`string`, required) Specifies the format of the content being sent or received, such as 'application/json'. -- **time_entry_id** (`string`, required) The ID of a specific time entry, which can be found using the Get Time Entries Within a Date Range endpoint. -- **workspace_id** (`integer`, required) The ID of the workspace (team) to which the time entry belongs. -- **include_approval_details** (`boolean`, optional) Include the details of the approval for the time entry when true. -- **include_approval_history** (`boolean`, optional) Include the approval history of the time entry in the response. Set to true to include. -- **include_location_names** (`boolean`, optional) Include names of the List, Folder, and Space in the response along with their respective IDs. -- **include_task_tags** (`boolean`, optional) Set to true to include task tags in the response. - - -## ClickupApi.DeleteTimeEntry - -
- - -Deletes a time entry from a ClickUp workspace. - -**Parameters** - -- **content_type_header** (`string`, required) Specify the content type of the request, usually 'application/json'. -- **timer_ids_to_delete** (`integer`, required) Comma-separated list of timer IDs to delete. -- **workspace_id** (`integer`, required) The unique identifier for the ClickUp workspace from which you want to delete the time entry. - - -## ClickupApi.UpdateTimeEntry - -
- - -Update the details of a time entry. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **workspace_id** (`integer`, optional) The Workspace ID is required when referencing a task by its custom task ID. Provide it if `custom_task_ids` is set to `true`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`integer`, optional) The ID of the workspace (team) where the time entry is located. This is an integer value. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **timer_id** (`integer`, optional) The unique identifier of the time entry to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference tasks by custom task IDs instead of standard IDs. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.ViewTimeEntryChanges - -
- - -View a list of changes made to a time entry. - -**Parameters** - -- **content_type_header** (`string`, required) The media type for the request, typically 'application/json'. Required for HTTP headers. -- **time_entry_id** (`string`, required) The ID of a time entry. This ID can be obtained using the Get Time Entries Within a Date Range endpoint. -- **workspace_id** (`integer`, required) The ID of the workspace (team) where the time entry resides. - - -## ClickupApi.GetCurrentRunningTimeEntry - -
- - -Retrieve the current running time entry for the user. - -**Parameters** - -- **content_type_header** (`string`, required) The MIME type of the content, e.g., 'application/json'. Required for HTTP content negotiation. -- **workspace_id** (`integer`, required) The ID of the workspace to retrieve the running time entry for. It identifies the specific workspace within ClickUp. -- **assignee_user_id** (`number`, optional) The user ID of the time entry assignee for whom the current running timer is being retrieved. This identifies which user's timer is actively running. - - -## ClickupApi.RemoveTagsFromTimeEntries - -
- - -Remove labels from specific time entries. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **workspace_id** (`integer`, optional) The unique ID of the Workspace from which to remove labels from time entries. Must be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.GetTimeEntryTags - -
- - -Retrieve all tags from time entries in a workspace. - -**Parameters** - -- **content_type_header** (`string`, required) The media type of the resource, usually set to 'application/json'. -- **workspace_id** (`integer`, required) The unique ID of the workspace to retrieve tags from. - - -## ClickupApi.AddTagToTimeEntry - -
- - -Add a label to a specific time entry in ClickUp. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **workspace_id** (`integer`, optional) The ID of the workspace where the time entry is located. This is required to specify which team the tag should be added to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.RenameTimeEntryLabel - -
- - -Rename a time entry label in ClickUp. - -**Parameters** - -- **current_label_name** (`string`, required) The current name of the time entry label that needs to be renamed. -- **foreground_color_for_tag** (`string`, required) Specify the hexadecimal foreground color for the tag (e.g., '#FFFFFF'). -- **label_background_color** (`string`, required) Hex code for the new background color of the label (e.g., '#FFFFFF'). -- **new_label_name** (`string`, required) The new name for the time entry label to be applied in ClickUp. -- **workspace_id** (`integer`, required) The ID of the workspace where the label is located. This is required to specify the team in ClickUp whose label you want to rename. - - -## ClickupApi.StartTimerClickup - -
- - -Start a timer for the authenticated ClickUp user. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **workspace_identifier** (`integer`, optional) The Workspace ID required when custom task IDs are used. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **workspace_id** (`integer`, optional) Provide the Workspace ID when `custom_task_ids` is `true`. Required for task referencing. Only used when mode is 'execute'. -- **use_custom_task_ids** (`boolean`, optional) Set to true to reference a task by its custom task ID. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.StopTimerEntry - -
- - -Stops a running timer for the authenticated user. - -**Parameters** - -- **content_type** (`string`, required) Specifies the media type of the request. Usually 'application/json'. -- **workspace_id** (`integer`, required) The ID of the workspace where the timer is running. Required to stop the timer. - - -## ClickupApi.InviteUserToWorkspace - -
- - -Invite a user to your ClickUp Workspace as a member. - -**Parameters** - -- **invite_as_admin** (`boolean`, required) Indicate if the user should be invited as an admin. True for admin, False for regular member. -- **user_email** (`string`, required) The email address of the user to be invited to the Workspace. Must be a valid email format. -- **workspace_id** (`integer`, required) The unique ID of the workspace to which the user is being invited. -- **custom_role_id** (`integer`, optional) The ID of the custom role to assign to the user in the Workspace. Must be an integer. - - -## ClickupApi.GetWorkspaceUserInfo - -
- - -Retrieve user information from a specified workspace. - -**Parameters** - -- **user_id** (`integer`, required) The unique identifier of the user to retrieve information for. This is required to specify which user's information is being accessed in the workspace. -- **workspace_id** (`integer`, required) The unique ID of the Workspace. Used to specify which Workspace's user information is to be retrieved. -- **show_shared_items** (`boolean`, optional) Set to `true` to include details of shared items; `false` excludes them by default. - - -## ClickupApi.UpdateUserWorkspaceDetails - -
- - -Update a user's name and role in a ClickUp workspace. - -**Parameters** - -- **assign_admin_role** (`boolean`, required) Set to true to assign the user as an admin in the workspace, otherwise false. -- **custom_role_id** (`integer`, required) An integer representing the custom role ID to assign to the user in the workspace. This is required for users with specific roles. -- **user_identifier** (`integer`, required) The unique identifier for the user within the workspace. This value is required to specify which user's details need updating. -- **user_name** (`string`, required) The new full name of the user to be updated in the ClickUp workspace. -- **workspace_id** (`integer`, required) The ID of the ClickUp workspace where the user's details will be updated. - - -## ClickupApi.RemoveUserFromWorkspace - -
- - -Remove a user from a ClickUp workspace. - -**Parameters** - -- **user_id** (`integer`, required) The ID of the user to be deactivated from the workspace. -- **workspace_id** (`integer`, required) The ID of the Workspace in ClickUp from which the user will be removed. - - -## ClickupApi.GetTeamViews - -
- - -Retrieve task and page views at the workspace level. - -**Parameters** - -- **workspace_id** (`integer`, required) The ID of the workspace to retrieve task and page views from in ClickUp. - - -## ClickupApi.CreateTeamView - -
- - -Add various views to a workspace at the Everything Level. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **workspace_id** (`integer`, optional) The unique identifier for the workspace where the view will be added. This corresponds to the team or workspace ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.GetSpaceViews - -
- - -Retrieve the task and page views for a specified Space. - -**Parameters** - -- **space_identifier** (`integer`, required) The unique integer ID of the space for which to retrieve task and page views. - - -## ClickupApi.AddSpaceView - -
- - -Add a new view to a ClickUp space. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **space_id** (`integer`, optional) The unique identifier of the ClickUp space where the view will be added. It should be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.GetFolderViews - -
- - -Retrieve available task and page views for a Folder in ClickUp. - -**Parameters** - -- **folder_id** (`integer`, required) The ID of the folder to retrieve views for. This should be an integer value. - - -## ClickupApi.AddViewToFolder - -
- - -Add various view types to a ClickUp folder. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **folder_id** (`integer`, optional) The unique integer ID of the ClickUp folder where the view will be added. Required for specifying the target folder. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.GetListViews - -
- - -Retrieve available views for a specific list. - -**Parameters** - -- **target_list_id** (`integer`, required) The unique identifier for the list to retrieve views from. This should be an integer. - - -## ClickupApi.AddViewToClickupList - -
- - -Add various views to a ClickUp list. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **clickup_list_id** (`integer`, optional) An integer representing the ID of the ClickUp list to which the view will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.ViewTaskOrPageInfo - -
- - -Retrieve details of a specific task or page view. - -**Parameters** - -- **view_identifier** (`string`, required) A unique identifier for the specific task or page view in ClickUp to be retrieved. This is required to obtain the relevant information. - - -## ClickupApi.UpdateViewSettings - -
- - -Update the settings and configuration of a view. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **view_identifier** (`string`, optional) The unique identifier for the view to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## ClickupApi.DeleteView - -
- - -Delete a specified view from ClickUp. - -**Parameters** - -- **view_id** (`string`, required) The ID of the view to be deleted in ClickUp. Must be provided as a string. - - -## ClickupApi.GetVisibleTasksInView - -
- - -Retrieve all visible tasks from a ClickUp view. - -**Parameters** - -- **pagination_page_number** (`integer`, required) The specific page number of tasks to retrieve. Used for pagination in task lists, starting at 1. -- **view_identifier** (`string`, required) The ID of the ClickUp view from which to retrieve visible tasks. Must be a string. - - -## ClickupApi.GetWorkspaceWebhooks - -
- - -Retrieve webhooks for a workspace. - -**Parameters** - -- **workspace_id** (`integer`, required) The ID of the Workspace to retrieve the webhooks for. - - -## ClickupApi.SetupClickupWebhook - -
- - -Set up a ClickUp webhook to monitor events. - -**Parameters** - -- **event_types** (`array[string]`, required) An array of event types to subscribe to, or use `*` to subscribe to all events. Refer to ClickUp documentation for available options. -- **webhook_url** (`string`, required) The URL where the webhook will send POST requests. Must be reachable to receive event data. -- **workspace_id** (`integer`, required) The ID of the workspace where the webhook will be set up. Use this to specify the team context for monitoring. -- **folder_id** (`integer`, optional) Specify the folder ID in ClickUp for which the webhook is to be created. It should be an integer value representing the folder. -- **space_identifier** (`integer`, optional) The numeric ID of the space within a ClickUp workspace for which the webhook is set up. -- **specific_task_id** (`string`, optional) Unique identifier for a specific task to monitor. Leave empty if not targeting a specific task. -- **target_list_id** (`integer`, optional) The ID of the list in ClickUp for which you want to set up a webhook. - - -## ClickupApi.UpdateClickupWebhookEvents - -
- - -Update a ClickUp webhook to modify monitored events. - -**Parameters** - -- **monitored_events** (`string`, required) A comma-separated list of events for the webhook to monitor. Use valid event names as per ClickUp webhook documentation. -- **webhook_endpoint_url** (`string`, required) The URL where the webhook should send POST requests for the events. Must be a valid and accessible URL. -- **webhook_identifier** (`string`, required) The unique identifier for the webhook to be updated, formatted as a UUID. -- **webhook_status** (`string`, required) Specify the new status of the webhook. Use 'active' to enable or 'inactive' to disable it. - - -## ClickupApi.DeleteWebhook - -
- - -Delete a webhook to stop event monitoring. - -**Parameters** - -- **webhook_id** (`string`, required) The unique identifier for the webhook to be deleted. Must be in UUID format. - - - -## Reference - -Below is a reference of enumerations used by some of the tools in the ClickupApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - - -## Auth - -The ClickupApi MCP Server uses the Auth Provider with id `arcade-clickup` to connect to users' ClickupApi accounts. In order to use the MCP Server, you will need to configure the `arcade-clickup` auth provider. - -For detailed information on configuring the ClickUp OAuth provider with Arcade, see the [ClickUp Auth Provider documentation](/references/auth-providers/clickup). - - \ No newline at end of file diff --git a/app/en/resources/integrations/productivity/clickup/_meta.tsx b/app/en/resources/integrations/productivity/clickup/_meta.tsx deleted file mode 100644 index 648a62088..000000000 --- a/app/en/resources/integrations/productivity/clickup/_meta.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import type { MetaRecord } from "nextra"; - -const meta: MetaRecord = { - "*": { - theme: { - breadcrumb: true, - toc: true, - copyPage: true, - }, - }, - reference: { - title: "Reference", - }, -}; - -export default meta; diff --git a/app/en/resources/integrations/productivity/clickup/page.mdx b/app/en/resources/integrations/productivity/clickup/page.mdx deleted file mode 100644 index e79d4a54b..000000000 --- a/app/en/resources/integrations/productivity/clickup/page.mdx +++ /dev/null @@ -1,867 +0,0 @@ ---- -asIndexPage: true ---- - -# Clickup - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The ClickUp MCP Server provides tools to interact with ClickUp workspaces, projects (spaces/folders/lists), tasks, comments, and members. It enables building agents and apps that can: - -- Discover workspace structure and users. -- Create, view, and modify tasks. -- Manage task assignments and task planning metadata. -- Work with comments and threaded replies. -- Search for containers and people by approximate name when location is unknown. -- Retrieve guidance for agent decision-making. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Clickup.GetTaskCommentReplies - -
- - -Get threaded replies for a specific ClickUp comment with pagination support. - -**Parameters** - -- **comment_id** (`string`, required) The ClickUp comment ID to get replies for -- **offset** (`integer`, optional) Starting position for offset-based retrieval (default: 0) -- **limit** (`integer`, optional) Maximum number of replies to return (max: 50, default: 20) - -## Clickup.CreateTaskCommentReply - -
- - -Create a new threaded reply to an existing ClickUp comment. - -**Parameters** - -- **comment_id** (`string`, required) The ClickUp comment ID to reply to -- **reply_text** (`string`, required) The text content of the reply -- **assignee_id** (`integer`, optional) User ID to assign the reply to - -## Clickup.CreateTask - -
- - -Create a new task in a ClickUp list with optional planning metadata. - -**Parameters** - -- **list_id** (`string`, required) The ClickUp list ID where the task will be created -- **task_title** (`string`, required) The name/title of the task -- **description** (`string`, optional) The description/content of the task -- **priority** (`Enum` [TaskPriority](/resources/integrations/productivity/clickup/reference#TaskPriority), optional) Task priority -- **status** (`string`, optional) Task status label (string) -- **parent_task_id** (`string`, optional) The parent task ID if this is a subtask -- **start_date** (`string`, optional) Date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]; ISO-8601 also supported -- **due_date** (`string`, optional) Date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]; ISO-8601 also supported -- **sprint_points** (`integer`, optional) The sprint points for the task - -## Clickup.GetTaskById - -
- - -Get detailed information about a specific task by its ID. Also supports custom task IDs - -**Parameters** - -- **task_id** (`string`, required) The task ID or custom task ID to retrieve -- **include_subtasks** (`boolean`, optional) Include subtask information (default: false ) -- **workspace_id_for_custom_id** (`string`, optional) The ClickUp workspace ID (provide this to use custom task IDs) - -## Clickup.UpdateTask - -
- - -Update one or more fields of an existing ClickUp task. - -**Parameters** - -- **task_id** (`string`, required) The ClickUp task ID to update -- **task_title** (`string`, optional) The new name/title of the task -- **description** (`string`, optional) The new description/content of the task -- **priority** (`Enum` [TaskPriority](/resources/integrations/productivity/clickup/reference#TaskPriority), optional) Task priority -- **status** (`string`, optional) Task status label (string) -- **parent_task_id** (`string`, optional) The new parent task ID -- **start_date** (`string`, optional) Date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]; ISO-8601 also supported -- **due_date** (`string`, optional) Date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]; ISO-8601 also supported -- **sprint_points** (`integer`, optional) The new sprint points for the task - -## Clickup.GetTasksByScope - -
- - -Get filtered tasks from ClickUp with advanced filtering options. - -**Parameters** - -- **workspace_id** (`string`, required) The ClickUp workspace ID for GUI URL generation (should be a number) -- **scope** (`Enum` [FilterScope](/resources/integrations/productivity/clickup/reference#FilterScope), required) The scope to filter tasks by (all, spaces, folders, or lists) -- **item_ids** (`array[string]`, optional) List of IDs to get tasks from (required for spaces/folders/lists, ignored for 'all') -- **offset** (`integer`, optional) Starting position for offset-based retrieval (default: 0) -- **limit** (`integer`, optional) Maximum number of tasks to return (max: 50, default: 20) -- **order_by** (`Enum` [TaskOrderBy](/resources/integrations/productivity/clickup/reference#TaskOrderBy), optional) Field to sort tasks by -- **should_sort_by_reverse** (`boolean`, optional) Whether to sort in descending order (default: False) -- **statuses** (`array[string]`, optional) List of status strings to filter by -- **include_closed** (`boolean`, optional) Whether to include closed tasks (default: False) -- **due_date_gt** (`string`, optional) Due date greater than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]) -- **due_date_lt** (`string`, optional) Due date less than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]) -- **date_created_gt** (`string`, optional) Created date greater than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]) -- **date_created_lt** (`string`, optional) Created date less than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]) - -## Clickup.GetTasksByAssignees - -
- - -Get filtered tasks assigned to specific team members with advanced filtering options. - -**Parameters** - -- **workspace_id** (`string`, required) The ClickUp workspace ID for GUI URL generation (should be a number) -- **assignees_ids** (`array[integer]`, required) List of assignee user IDs to get tasks for -- **offset** (`integer`, optional) Starting position for offset-based retrieval (default: 0) -- **limit** (`integer`, optional) Maximum number of tasks to return (max: 50, default: 20) -- **order_by** (`Enum` [TaskOrderBy](/resources/integrations/productivity/clickup/reference#TaskOrderBy), optional) Field to sort tasks by -- **should_sort_by_reverse** (`boolean`, optional) Whether to sort in descending order (default: False) -- **statuses** (`array[string]`, optional) List of status strings to filter by -- **include_closed** (`boolean`, optional) Whether to include closed tasks (default: False) -- **due_date_gt** (`string`, optional) Due date greater than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]) -- **due_date_lt** (`string`, optional) Due date less than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]) -- **date_created_gt** (`string`, optional) Created date greater than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]) -- **date_created_lt** (`string`, optional) Created date less than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]) - -## Clickup.UpdateTaskAssignees - -
- - -Update task assignees by adding and/or removing specific users. - -**Parameters** - -- **task_id** (`string`, required) The ClickUp task ID to update assignees for -- **assignee_ids_to_add** (`array[integer]`, optional) List of user IDs to add as assignees -- **assignee_ids_to_remove** (`array[integer]`, optional) List of user IDs to remove from assignees - -## Clickup.GetSpaces - -
- - -Retrieve spaces from a ClickUp workspace. - -**Parameters** - -- **workspace_id** (`string`, required) The ClickUp workspace ID to get spaces from (should be a number) -- **offset** (`integer`, optional) Starting position for offset-based retrieval (default: 0) -- **limit** (`integer`, optional) Maximum number of spaces to return (max: 50, default: 50) -- **include_archived** (`boolean`, optional) Whether to include archived spaces (default: False) - -## Clickup.GetFoldersForSpace - -
- - -Retrieve folders (also called directories, project categories, or project areas) from a - -**Parameters** - -- **space_id** (`string`, required) The ClickUp space ID to get folders from -- **workspace_id** (`string`, required) The ClickUp workspace ID for GUI URL generation (should be a number) -- **offset** (`integer`, optional) Starting position for offset-based retrieval (default: 0) -- **limit** (`integer`, optional) Maximum number of folders to return (max: 50, default: 50) -- **include_archived** (`boolean`, optional) Whether to include archived, inactive, or deleted folders (default: False) - -## Clickup.GetListsForFolder - -
- - -Retrieve task lists from a ClickUp folder (when users refer to a folder as a "directory", - -**Parameters** - -- **folder_id** (`string`, required) The ClickUp folder ID (also called directory ID) to get lists from -- **workspace_id** (`string`, required) The ClickUp workspace ID for GUI URL generation (should be a number) -- **offset** (`integer`, optional) Starting position for offset-based retrieval (default: 0) -- **limit** (`integer`, optional) Maximum number of lists to return (max: 50, default: 50) -- **include_archived** (`boolean`, optional) Whether to include archived, inactive, or completed lists (default: False) - -## Clickup.GetListsForSpace - -
- - -Retrieve all task lists from a ClickUp space by collecting lists from all folders within the - -**Parameters** - -- **space_id** (`string`, required) The ClickUp space ID to get lists from -- **workspace_id** (`string`, required) The ClickUp workspace ID for GUI URL generation (should be a number) -- **offset** (`integer`, optional) Starting position for offset-based retrieval (default: 0) -- **limit** (`integer`, optional) Maximum number of lists to return (max: 50, default: 50) -- **include_archived** (`boolean`, optional) Whether to include archived, inactive, or completed lists (default: False) - -## Clickup.GetStatusesForList - -
- - -Retrieve the possible task statuses for a specific ClickUp list. - -**Parameters** - -- **list_id** (`string`, required) The ClickUp list ID to retrieve possible task statuses for - -## Clickup.GetMembersForWorkspace - -
- - -Retrieve all team members from a specific ClickUp workspace. - -**Parameters** - -- **workspace_id** (`string`, required) The ID of the ClickUp workspace to get team members from (should be a number) -- **offset** (`integer`, optional) Starting position for offset-based retrieval (default: 0) -- **limit** (`integer`, optional) Maximum number of members to return (max: 50, default: 50) - -## Clickup.WhoAmI - -
- - -Return current user profile and accessible workspaces (teams). - -**Parameters** - -This tool does not take any parameters. - -## Clickup.GetSystemGuidance - -
- - -Return static guidance intended solely to help agents make informed decisions. - -**Parameters** - -This tool does not take any parameters. - -## Clickup.GetWorkspaceInsights - -
- - -Return a brief overview for a workspace using the latest updated tasks to inform the user. - -**Parameters** - -- **workspace_id** (`string`, required) The ClickUp workspace ID to summarize (should be a number) - -## Clickup.GetTaskComments - -
- - -Get comments for a specific ClickUp task with pagination support. - -**Parameters** - -- **task_id** (`string`, required) The ClickUp task ID to get comments for -- **limit** (`integer`, optional) Number of comments to retrieve (max 25, default: 5) -- **oldest_comment_id** (`string`, optional) ID of the oldest comment from previous call for pagination - -## Clickup.CreateTaskComment - -
- - -Create a new comment on a ClickUp task with optional assignment. - -**Parameters** - -- **task_id** (`string`, required) The ClickUp task ID to add a comment to -- **comment_text** (`string`, required) The text content of the comment -- **assignee_id** (`integer`, optional) User ID to assign the comment to (optional) - -## Clickup.UpdateTaskComment - -
- - -Update an existing comment on a ClickUp task. - -**Parameters** - -- **comment_id** (`string`, required) The ClickUp comment ID to update -- **task_id** (`string`, required) The ClickUp task ID the comment belongs to -- **comment_text** (`string`, optional) New text content for the comment (optional) -- **assignee_id** (`integer`, optional) User ID to assign the comment to (optional) -- **resolution** (`Enum` [CommentResolution](/resources/integrations/productivity/clickup/reference#CommentResolution), optional) Set comment resolution status (optional) - -## Clickup.FuzzySearchTasksByName - -
- - -Search for tasks using fuzzy matching on task names. - -**Parameters** - -- **name_to_search** (`string`, required) Task name to search for (minimum 6 characters) -- **workspace_id** (`string`, required) The workspace ID to search tasks in (should be a number) -- **scan_size** (`integer`, optional) Number of recent tasks to scan (max 500 default: 500) -- **include_closed** (`boolean`, optional) Include closed/completed tasks (default: false) -- **statuses** (`array[string]`, optional) Filter by specific ClickUp status names. Each list has its own statuses set. -- **assignee_ids** (`array[string]`, optional) Filter by assignee user IDs -- **space_ids** (`array[string]`, optional) Filter by ClickUp space IDs - limit search to specific spaces/teams -- **folder_ids** (`array[string]`, optional) Filter by ClickUp folder IDs - limit search to specific folders/projects -- **list_ids** (`array[string]`, optional) Filter by ClickUp list IDs - limit search to specific lists -- **limit** (`integer`, optional) Maximum number of matches to return (max: 50, default: 10) - -## Clickup.FuzzySearchListsByName - -
- - -Search for lists using fuzzy matching on list names. - -**Parameters** - -- **name_to_search** (`string`, required) List name to search for (minimum 6 characters) -- **workspace_id** (`string`, required) The workspace ID to search lists in (should be a number) -- **scan_size** (`integer`, optional) Number of lists to scan (in increments of 100, max 500 default: 500) -- **space_ids** (`array[string]`, optional) Filter by ClickUp space IDs - limit search to specific spaces/teams -- **folder_ids** (`array[string]`, optional) Filter by ClickUp folder IDs - limit search to specific folders/projects -- **should_include_archived** (`boolean`, optional) Include archived lists (default: false) -- **limit** (`integer`, optional) Maximum number of matches to return (max: 50, default: 10) - -## Clickup.FuzzySearchFoldersByName - -
- - -Search for folders using fuzzy matching on folder names. - -**Parameters** - -- **name_to_search** (`string`, required) Folder name to search for (minimum 6 characters) -- **workspace_id** (`string`, required) The workspace ID to search folders in (should be a number) -- **scan_size** (`integer`, optional) Number of folders to scan (in increments of 100, max 500 default: 500) -- **space_ids** (`array[string]`, optional) Filter by ClickUp space IDs - limit search to specific spaces/teams -- **should_include_archived** (`boolean`, optional) Include archived folders (default: false) -- **limit** (`integer`, optional) Maximum number of matches to return (max: 50, default: 10) - -## Clickup.FuzzySearchMembersByName - -
- - -Search for workspace members using fuzzy matching on member names. - -**Parameters** - -- **name_to_search** (`string`, required) Member name to search for (minimum 6 characters) -- **workspace_id** (`string`, required) The workspace ID to search members in (should be a number) -- **scan_size** (`integer`, optional) Number of members to scan (in increments of 100, max 500 default: 500) -- **limit** (`integer`, optional) Maximum number of matches to return (max: 50, default: 10) - -## Reference - -Below is a reference of enumerations used by some of the tools in the Clickup MCP Sever: - -## TaskPriority - -- **URGENT**: `URGENT` -- **HIGH**: `HIGH` -- **NORMAL**: `NORMAL` -- **LOW**: `LOW` - -## FilterScope - -- **ALL**: `all` -- **SPACES**: `spaces` -- **FOLDERS**: `folders` -- **LISTS**: `lists` - -## TaskOrderBy - -- **CREATED**: `created` -- **UPDATED**: `updated` -- **DUE_DATE**: `due_date` - -## CommentResolution - -- **SET_AS_RESOLVED**: `resolved` -- **SET_AS_UNRESOLVED**: `unresolved` - -## Auth - -The Arcade Clickup MCP Sever uses the [Clickup auth provider](/references/auth-providers/clickup) to connect to users' Clickup accounts. Please refer to the [Clickup auth provider](/references/auth-providers/clickup) documentation to learn how to configure auth. - - diff --git a/app/en/resources/integrations/productivity/clickup/reference/page.mdx b/app/en/resources/integrations/productivity/clickup/reference/page.mdx deleted file mode 100644 index 1ed5cb8be..000000000 --- a/app/en/resources/integrations/productivity/clickup/reference/page.mdx +++ /dev/null @@ -1,38 +0,0 @@ -# Clickup Reference - -Below is a reference of enumerations used by some tools in the Clickup MCP Server: - -## TaskPriority - -Task priority values are used in the `Clickup.CreateTask` tool to set the priority of a new task. Those are default values and cannot be changed by the user. - -- **URGENT**: `URGENT` -- **HIGH**: `HIGH` -- **NORMAL**: `NORMAL` -- **LOW**: `LOW` - -## FilterScope - -Filter scope values are used in the `Clickup.GetTasksByScope` tool to filter tasks by scope. The following enumeration values represent the possible scopes supported by the Clickup API: - -- **ALL**: `all` -- **SPACES**: `spaces` -- **FOLDERS**: `folders` -- **LISTS**: `lists` - -## TaskOrderBy - -Task order by values are used in the `Clickup.GetTasksByScope` tool to order tasks by a specific field. The following enumeration values represent the possible order by fields supported by the Clickup API: - -- **CREATED**: `created` -- **UPDATED**: `updated` -- **DUE_DATE**: `due_date` - -## CommentResolution - -Comment resolution values are used in the comment tools to set the resolution of a comment. The following enumeration values represent the possible resolutions supported by the Clickup API: - -- **SET_AS_RESOLVED**: `resolved` -- **SET_AS_UNRESOLVED**: `unresolved` - - diff --git a/app/en/resources/integrations/productivity/closeio/page.mdx b/app/en/resources/integrations/productivity/closeio/page.mdx deleted file mode 100644 index 6c9773986..000000000 --- a/app/en/resources/integrations/productivity/closeio/page.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: Close.io -description: Manage leads, contacts, and deals in Close.io CRM ---- - -# Close.io - -Coming Soon diff --git a/app/en/resources/integrations/productivity/confluence/page.mdx b/app/en/resources/integrations/productivity/confluence/page.mdx deleted file mode 100644 index 50e8d52e1..000000000 --- a/app/en/resources/integrations/productivity/confluence/page.mdx +++ /dev/null @@ -1,484 +0,0 @@ -# Confluence - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Confluence MCP Server provides a pre-built set of tools for interacting with Confluence. These tools make it easy to build agents and AI apps that can: - -- Work with pages, spaces, and attachments -- Search for content - -## Available tools - -These tools are currently available in the Arcade Confluence MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server) with the [Confluence auth - provider](/references/auth-providers/atlassian). - - -## Confluence.CreatePage - -Create a new page at the root of the given space. - -**Parameters** - -- **`space_identifier`** _(string, required)_: The ID or title of the space to create the page in -- **`title`** _(string, required)_: The title of the page -- **`content`** _(string, required)_: The content of the page. Only plain text is supported -- **`parent_id`** _(string, optional)_: The ID of the parent. If not provided, the page will be created at the root of the space -- **`is_private`** _(bool, optional)_: If true, then only the user who creates this page will be able to see it. Defaults to False -- **`is_draft`** _(bool, optional)_: If true, then the page will be created as a draft. Defaults to False - -
- - ---- - -## Confluence.UpdatePageContent - -Update a page's content. - -**Parameters** - -- **`page_identifier`** _(string, required)_: The ID or title of the page to update. Numerical titles are NOT supported -- **`content`** _(string, required)_: The content of the page. Only plain text is supported -- **`update_mode`** _(enum ([PageUpdateMode](#pageupdatemode)), optional)_: The mode of update. Defaults to 'append' - -
- - -## Confluence.RenamePage - -Rename a page by changing its title. - -**Parameters** - -- **`page_identifier`** _(string, required)_: The ID or title of the page to rename. Numerical titles are NOT supported -- **`title`** _(string, required)_: The title of the page - -
- - ---- - -## Confluence.GetPage - -Retrieve a SINGLE page's content by its ID or title. - -If a title is provided, then the first page with an exact matching title will be returned. - -IMPORTANT: For retrieving MULTIPLE pages, use `get_pages_by_id` instead for a massive performance and efficiency boost. If you call this function multiple times instead of using `get_pages_by_id`, then the universe will explode. - -**Parameters** - -- **`page_identifier`** _(string, required)_: Can be a page's ID or title. Numerical titles are NOT supported - -
- - ---- - -## Confluence.GetPagesById - -Get the content of MULTIPLE pages by their ID in a single efficient request. - -IMPORTANT: Always use this function when you need to retrieve content from more than one page, rather than making multiple separate calls to get_page, because this function is significantly more efficient than calling get_page multiple times. - -**Parameters** - -- **`page_ids`** _(list of strings, required)_: The IDs of the pages to get. IDs are numeric. Titles of pages are NOT supported. Maximum of 250 page ids supported - -
- - ---- - -## Confluence.ListPages - -Get the content of multiple pages by their ID. - -**Parameters** - -- **`space_ids`** _(list of strings, optional)_: Restrict the response to only include pages in these spaces. Only space IDs are supported. Titles of spaces are NOT supported. If not provided, then no restriction is applied. Maximum of 100 space ids supported -- **`sort_by`** _(enum ([PageSortOrder](#pagesortorder)), optional)_: The order of the pages to sort by. Defaults to created-date-newest-to-oldest -- **`limit`** _(int, optional)_: The maximum number of pages to return. Defaults to 25. Max is 250 -- **`pagination_token`** _(string, optional)_: The pagination token to use for the next page of results - -
- - ---- - -## Confluence.ListAttachments - -List attachments in a workspace. - -**Parameters** - -- **`sort_order`** _(enum ([AttachmentSortOrder](#attachmentsortorder)), optional)_: The order of the attachments to sort by. Defaults to created-date-newest-to-oldest -- **`limit`** _(int, optional)_: The maximum number of attachments to return. Defaults to 25. Max is 250 -- **`pagination_token`** _(string, optional)_: The pagination token to use for the next page of results - -
- - ---- - -## Confluence.GetAttachmentsForPage - -Get attachments for a page by its ID or title. - -If a page title is provided, then the first page with an exact matching title will be returned. - -**Parameters** - -- **`page_identifier`** _(string, required)_: The ID or title of the page to get attachments for -- **`limit`** _(int, optional)_: The maximum number of attachments to return. Defaults to 25. Max is 250 -- **`pagination_token`** _(string, optional)_: The pagination token to use for the next page of results - -
- - ---- - -## Confluence.SearchContent - -Search for content in Confluence. - -The search is performed across all content in the authenticated user's Confluence workspace. -All search terms in Confluence are case insensitive. - -You can use the parameters in different ways: - -- must_contain_all: For AND logic - content must contain ALL of these -- can_contain_any: For OR logic - content can contain ANY of these -- Combine them: must_contain_all=['banana'] AND can_contain_any=['database', 'guide'] - -**Parameters** - -- **`must_contain_all`** _(list of strings, optional)_: Words/phrases that content MUST contain (AND logic). Each item can be: - - Single word: 'banana' - content must contain this word - - Multi-word phrase: 'How to' - content must contain all these words (in any order) - - All items in this list must be present for content to match - - Example: ['banana', 'apple'] finds content containing BOTH 'banana' AND 'apple' -- **`can_contain_any`** _(list of strings, optional)_: Words/phrases where content can contain ANY of these (OR logic). Each item can be: - - Single word: 'project' - content containing this word will match - - Multi-word phrase: 'pen & paper' - content containing all these words will match - - Content matching ANY item in this list will be included - - Example: ['project', 'documentation'] finds content with 'project' OR 'documentation' -- **`enable_fuzzy`** _(bool, optional)_: Enable fuzzy matching to find similar terms (e.g. 'roam' will find 'foam'). Defaults to True -- **`limit`** _(int, optional)_: Maximum number of results to return (1-100). Defaults to 25 - -
- - ---- - -## Confluence.GetSpace - -Get the details of a space by its ID or key. - -**Parameters** - -- **`space_identifier`** _(string, required)_: Can be a space's ID or key. Numerical keys are NOT supported - -
- - ---- - -## Confluence.ListSpaces - -List all spaces sorted by name in ascending order. - -**Parameters** - -- **`limit`** _(int, optional)_: The maximum number of spaces to return. Defaults to 25. Max is 250 -- **`pagination_token`** _(string, optional)_: The pagination token to use for the next page of results - -
- - ---- - -## Confluence.GetSpaceHierarchy - -Retrieve the full hierarchical structure of a Confluence space as a tree structure. - -Only structural metadata is returned (not content). -The response is akin to the sidebar in the Confluence UI. - -Includes all pages, folders, whiteboards, databases, -smart links, etc. organized by parent-child relationships. - -**Parameters** - -- **`space_identifier`** _(string, required)_: Can be a space's ID or key. Numerical keys are NOT supported - -
- - -## Auth - -The Arcade Notion MCP Sever uses the [Notion auth provider](/references/auth-providers/notion) to connect to users' Notion accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Notion auth provider](/references/auth-providers/notion#configuring-notion-auth) with your own Notion app credentials. - ---- - -## Reference - -### PageUpdateMode - -The mode of update. - -- **`prepend`** _(string: "prepend")_ -- **`append`** _(string: "append")_ -- **`replace`** _(string: "replace")_ - -### PageSortOrder - -The order of the pages to sort by. - -- **`id-ascending`**: Sort by ID in ascending order. -- **`id-descending`**: Sort by ID in descending order. -- **`title-ascending`**: Sort by title in ascending order. -- **`title-descending`**: Sort by title in descending order. -- **`created-date-oldest-to-newest`**: Sort by created date from oldest to newest. -- **`created-date-newest-to-oldest`**: Sort by created date from newest to oldest. -- **`modified-date-oldest-to-newest`**: Sort by modified date from oldest to newest. -- **`modified-date-newest-to-oldest`**: Sort by modified date from newest to oldest. - -### AttachmentSortOrder - -The order of the attachments to sort by. - -- **`created-date-oldest-to-newest`**: Sort by created date from oldest to newest. -- **`created-date-newest-to-oldest`**: Sort by created date from newest to oldest. -- **`modified-date-oldest-to-newest`**: Sort by modified date from oldest to newest. -- **`modified-date-newest-to-oldest`**: Sort by modified date from newest to oldest. - - diff --git a/app/en/resources/integrations/productivity/dropbox/_meta.tsx b/app/en/resources/integrations/productivity/dropbox/_meta.tsx deleted file mode 100644 index 457111c79..000000000 --- a/app/en/resources/integrations/productivity/dropbox/_meta.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import type { MetaRecord } from "nextra"; - -const meta: MetaRecord = { - reference: { - title: "Reference", - }, -}; - -export default meta; diff --git a/app/en/resources/integrations/productivity/dropbox/page.mdx b/app/en/resources/integrations/productivity/dropbox/page.mdx deleted file mode 100644 index 28d1716e3..000000000 --- a/app/en/resources/integrations/productivity/dropbox/page.mdx +++ /dev/null @@ -1,142 +0,0 @@ ---- -asIndexPage: true ---- - -# Dropbox - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Dropbox MCP Server provides a pre-built set of tools for interacting with Dropbox. These tools make it easy to build agents and AI apps that can: - -- Browse files and folders -- Search for files and folders -- Download files - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Dropbox.ListItemsInFolder - -
- - -List all items in a folder. - -**Parameters** - -- **folder_path** _(string, required)_ Path to the folder. E.g. '/My Documents/My Folder' -- **limit** _(int, optional, Defaults to `100`)_ Maximum number of items to return. Defaults to 100. Maximum allowed is 2000. -- **cursor** _(string, optional)_ A cursor to use for pagination. Defaults to `None`. - -## Dropbox.SearchFilesAndFolders - -
- - -Search for files and folders in Dropbox. - -**Parameters** - -- **keywords** _(string, required)_ The keywords to search for. E.g. 'quarterly report' -- **search_in_folder_path** _(string, optional)_ Restricts the search to the specified folder path. E.g. '/My Documents/My Folder'. Defaults to `None` (search in the entire Dropbox). -- **filter_by_category** _(list of enum [DropboxItemCategory](/resources/integrations/productivity/dropbox/reference#dropboxitemcategory), optional)_ Restricts the search to the specified category(ies) of items. Defaults to `None` (returns all items). -- **limit** _(int, optional, Defaults to `100`)_ Maximum number of items to return. Defaults to 100. Maximum allowed is 2000. -- **cursor** _(string, optional)_ A cursor to use for pagination. Defaults to `None`. - -## Dropbox.DownloadFile - -
- - -Download a file from Dropbox. - -**Parameters** - -- **file_path** _(string, optional)_ Path to the file. E.g. '/My Documents/My Folder/My File.pdf' -- **file_id** _(string, optional)_ The ID of the file to download. E.g. 'id:a4ayc_80_OEAAAAAAAAAYa' - -Note: to call this tool, you must provide either `file_path` or `file_id`. - -## Auth - -The Arcade Dropbox MCP Sever uses the [Dropbox auth provider](/references/auth-providers/dropbox) to connect to users' Dropbox accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Dropbox auth provider](/references/auth-providers/dropbox#configuring-dropbox-auth) with your own Dropbox app credentials. - - diff --git a/app/en/resources/integrations/productivity/dropbox/reference/page.mdx b/app/en/resources/integrations/productivity/dropbox/reference/page.mdx deleted file mode 100644 index f3021c06d..000000000 --- a/app/en/resources/integrations/productivity/dropbox/reference/page.mdx +++ /dev/null @@ -1,12 +0,0 @@ - -## DropboxItemCategory - -- **IMAGE**: `'image'` -- **DOCUMENT**: `'document'` -- **PDF**: `'pdf'` -- **SPREADSHEET**: `'spreadsheet'` -- **PRESENTATION**: `'presentation'` -- **AUDIO**: `'audio'` -- **VIDEO**: `'video'` -- **FOLDER**: `'folder'` -- **PAPER**: `'paper'` diff --git a/app/en/resources/integrations/productivity/figma-api/page.mdx b/app/en/resources/integrations/productivity/figma-api/page.mdx deleted file mode 100644 index 653569f06..000000000 --- a/app/en/resources/integrations/productivity/figma-api/page.mdx +++ /dev/null @@ -1,1349 +0,0 @@ -# FigmaApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The FigmaApi MCP Server offers a comprehensive suite of tools for interacting with Figma files and projects. Users can efficiently manage design assets and collaborate on projects by performing actions such as: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## FigmaApi.FetchFigmaFile - -
- - -Retrieve a Figma file as a JSON object using its file key. - -**Parameters** - -- **file_key** (`string`, required) The unique key of the Figma file or branch to retrieve as JSON. -- **version_id** (`string`, optional) Specify the version ID to retrieve a specific version of the file. Default is the current version. -- **node_ids_of_interest** (`string`, optional) Comma-separated list of node IDs to retrieve specific parts of the Figma document. -- **traversal_depth** (`number`, optional) Positive integer indicating the depth in the document tree to retrieve. For example, 1 returns only Pages; 2 returns Pages and top-level objects. -- **export_vector_data** (`string`, optional) Set to "paths" to include vector data in the response. -- **include_plugin_data** (`string`, optional) Comma separated list of plugin IDs and/or 'shared'. Includes plugin data in the result. -- **include_branch_metadata** (`boolean`, optional) Set to true to include metadata about branches related to the file. If false, branch information will not be returned. - -## FigmaApi.GetFigmaFileNodes - -
- - -Retrieve nodes and metadata from a Figma file. - -**Parameters** - -- **node_ids_to_retrieve** (`string`, required) A comma-separated list of Figma node IDs to retrieve as JSON. -- **figma_file_key** (`string`, required) The file or branch key from which to export JSON data in Figma. -- **specific_version_id** (`string`, optional) Specify a version ID to retrieve a particular version of the Figma file. If omitted, the current version is retrieved. -- **node_tree_depth** (`number`, optional) Positive integer indicating how deep into the node tree to traverse from the starting node. A value of 1 returns only immediate children. Leaving it unset returns all nodes. -- **export_vector_data** (`string`, optional) Set to "paths" to include vector data in the response. -- **include_plugin_data** (`string`, optional) Comma-separated plugin IDs and/or 'shared' to include plugin-related data in results. - -## FigmaApi.RenderFigmaImages - -
- - -Fetch rendered images from Figma files by node IDs. - -**Parameters** - -- **node_ids_to_render** (`string`, required) A comma-separated list of node IDs for images to be rendered. -- **figma_file_key** (`string`, required) The key for the Figma file or branch to export images from. Use with the `branch_data` query parameter to obtain branch key if needed. -- **version_id** (`string`, optional) Specify a version ID to retrieve a particular version of a Figma file. If omitted, will use the current version. -- **image_scale_factor** (`number`, optional) A number between 0.01 and 4, representing the image scaling factor for rendering. -- **image_output_format** (`string`, optional) Specify the image format for the output. Options are 'jpg', 'png', 'svg', or 'pdf'. -- **render_text_as_outlines** (`boolean`, optional) Determines if text elements are rendered as outlines in SVGs. Set `true` for visual consistency; `false` for selectable text. -- **include_svg_id_attributes** (`boolean`, optional) Include id attributes for all SVG elements. Adds the layer name to the 'id' attribute. -- **include_node_id_in_svg_elements** (`boolean`, optional) Set to true to include node ID attributes for all SVG elements, adding the node ID to a `data-node-id` attribute. -- **svg_stroke_simplification_enabled** (`boolean`, optional) Set to true to simplify inside/outside strokes in SVG using stroke attributes instead of ``. -- **exclude_overlapping_content** (`boolean`, optional) Set to true to exclude overlapping content from rendering. Set to false to include overlaps, which may increase processing time. -- **use_full_dimensions_without_cropping** (`boolean`, optional) Export using full node dimensions, ignoring cropping and empty space. Ensures text nodes are fully visible. - -## FigmaApi.FetchImageFillLinks - -
- - -Retrieve download links for images in a Figma document. - -**Parameters** - -- **file_or_branch_key** (`string`, required) The file or branch key from which to retrieve image URLs. Use `GET /v1/files/:key` to get the branch key if needed. - -## FigmaApi.GetFileMetadata - -
- - -Retrieve metadata for a specified Figma file. - -**Parameters** - -- **file_identifier** (`string`, required) File or branch key to get metadata for. Use the `branch_data` query param to get the branch key. - -## FigmaApi.FigmaGetTeamProjects - -
- - -Fetch all projects within a specified Figma team. - -**Parameters** - -- **team_id** (`string`, required) The unique ID of the Figma team to list projects from. This is required to specify which team's projects to retrieve. - -## FigmaApi.GetFigmaProjectFiles - -
- - -Retrieve all files from a specific Figma project. - -**Parameters** - -- **project_identifier** (`string`, required) The unique string ID of the Figma project from which to list files. -- **include_branch_metadata** (`boolean`, optional) Include branch metadata for each main file with a branch in the project. Set to true to receive this data, otherwise false. - -## FigmaApi.FetchFileVersionHistory - -
- - -Fetch the version history of a Figma file. - -**Parameters** - -- **target_file_key** (`string`, required) The key of the file or branch to fetch version history for. Use this to specify the Figma file whose version history you need. -- **number_of_items_per_page** (`number`, optional) Specify the number of items to return per page. Defaults to 30 if not provided. -- **get_versions_before_id** (`number`, optional) A version ID to get versions before it in the history. Used for pagination. -- **after_version_id** (`number`, optional) Version ID to fetch subsequent versions. Used for pagination. Omit if not paginating. - -## FigmaApi.GetFigmaFileComments - -
- - -Retrieve comments from a Figma file. - -**Parameters** - -- **figma_file_or_branch_key** (`string`, required) Specify the file or branch key to retrieve comments from. Use the `GET /v1/files/:key` endpoint with `branch_data` query param for branch keys. -- **return_comments_as_markdown** (`boolean`, optional) Set to true to return comments as markdown equivalents when applicable. - -## FigmaApi.AddCommentToFigmaFile - -
- - -Posts a new comment on a Figma file. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **figma_file_key** (`string`, optional) File or branch key for the Figma file where the comment will be added. Retrieve this using `GET /v1/files/:key` with the `branch_data` query param for branch keys. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## FigmaApi.DeleteFigmaComment - -
- - -Delete your comment from a Figma file. - -**Parameters** - -- **figma_file_key** (`string`, required) The file or branch key from which to delete the comment. Use `GET /v1/files/:key` with `branch_data` to obtain the branch key. -- **comment_identifier** (`string`, required) The ID of the comment you wish to delete from the Figma file. Only the original commenter can perform this action. - -## FigmaApi.FetchCommentReactions - -
- - -Retrieve reactions from a specific comment in Figma. - -**Parameters** - -- **file_or_branch_key** (`string`, required) The key for the file or branch to retrieve the comment reactions from in Figma. -- **comment_id** (`string`, required) ID of the comment from which to retrieve reactions. -- **pagination_cursor** (`string`, optional) Cursor for pagination. Use the cursor from the previous call's response to retrieve the next set of reactions. - -## FigmaApi.AddFigmaCommentReaction - -
- - -Add a reaction to a comment on a Figma file. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **file_or_branch_key** (`string`, optional) Key of the file or branch where the comment reaction should be posted. Can be obtained via the Figma API. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **comment_id** (`string`, optional) The unique identifier of the comment you want to react to in a Figma file. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## FigmaApi.DeleteMyCommentReaction - -
- - -Deletes your specific comment reaction in Figma. - -**Parameters** - -- **reaction_emoji** (`string`, required) The emoji associated with the reaction to be deleted. Only the emoji used for the reaction you added can be deleted. -- **file_or_branch_key** (`string`, required) Key of the Figma file or branch where the reaction should be deleted. Use `GET /v1/files/:key` with the `branch_data` query param to obtain the branch key if needed. -- **comment_id** (`string`, required) The ID of the comment from which you want to delete your reaction. - -## FigmaApi.GetUserInformation - -
- - -Retrieve information for the authenticated Figma user. - -**Parameters** - -This tool does not take any parameters. - -## FigmaApi.GetTeamComponents - -
- - -Retrieve published components from a team's Figma library. - -**Parameters** - -- **team_id** (`string`, required) The unique identifier of the team whose components you want to retrieve. This ID is necessary to specify the source team library in Figma. -- **number_of_items_per_page** (`number`, optional) Specify the number of components to return in one page. Defaults to 30, maximum is 1000. -- **cursor_after_id** (`number`, optional) Cursor indicating which ID to start retrieving components after. Cannot be used with 'before'. -- **cursor_before** (`number`, optional) Cursor to retrieve components starting before a specific id. Exclusive with 'cursor_after'. - -## FigmaApi.GetFigmaFileComponents - -
- - -Retrieve published components from a Figma file library. - -**Parameters** - -- **file_key** (`string`, required) Main file key to list components from. Must not be a branch key. - -## FigmaApi.GetFigmaComponentMetadata - -
- - -Retrieve metadata for a Figma component by key. - -**Parameters** - -- **component_key** (`string`, required) The unique identifier of the Figma component to retrieve metadata for. - -## FigmaApi.GetTeamComponentSets - -
- - -Fetch published component sets from a Figma team library. - -**Parameters** - -- **team_id** (`string`, required) The unique identifier for the team from which to list component sets. -- **number_of_items_per_page** (`number`, optional) Specify the number of items to return per page in the results. Defaults to 30. -- **start_after_cursor** (`number`, optional) Cursor indicating the starting point for retrieving component sets, exclusive with `end_before_cursor`. This cursor is an internally tracked integer not corresponding to any IDs. -- **cursor_before_id** (`number`, optional) Cursor ID indicating the point before which to retrieve component sets. It must be exclusive with the 'after' cursor. - -## FigmaApi.GetPublishedComponentSets - -
- - -Retrieve published component sets from a Figma file. - -**Parameters** - -- **main_file_key** (`string`, required) The main file key of the Figma file to list component sets from. Must not be a branch key. - -## FigmaApi.GetFigmaComponentSet - -
- - -Retrieve metadata for a Figma component set using its key. - -**Parameters** - -- **component_set_key** (`string`, required) The unique key identifier for the Figma component set to retrieve metadata. - -## FigmaApi.GetTeamStyles - -
- - -Retrieve a list of published styles from a team's library in Figma. - -**Parameters** - -- **team_id** (`string`, required) The unique identifier of the team from which to retrieve published styles. -- **items_per_page** (`number`, optional) Specify the number of styles to return per page. Defaults to 30 if not provided. -- **start_after_cursor** (`number`, optional) Cursor to start retrieving styles after a specific ID. Cannot be used with before. Internally tracked integer. -- **cursor_before_id** (`number`, optional) Cursor for retrieving styles before a specific ID. Use this to paginate backwards. Exclusive with after. - -## FigmaApi.GetPublishedStylesFromFile - -
- - -Retrieve published styles from a Figma file library. - -**Parameters** - -- **main_file_key** (`string`, required) Main file key to list styles from. Must not be a branch key. - -## FigmaApi.GetStyleMetadata - -
- - -Retrieve Figma style metadata by key. - -**Parameters** - -- **style_key** (`string`, required) The unique identifier of the Figma style to retrieve metadata for. - -## FigmaApi.GetFigmaWebhooks - -
- - -Retrieve a list of webhooks from Figma. - -**Parameters** - -- **webhook_context** (`string`, optional) Specify the context for the webhooks. Accepts 'team', 'project', or 'file'. -- **context_identifier** (`string`, optional) The ID of the context to fetch attached webhooks. Cannot be used with plan_api_id. -- **plan_id_for_webhooks** (`string`, optional) The ID of your plan for retrieving webhooks across all accessible contexts. Cannot be used with context or context_id. -- **pagination_cursor** (`string`, optional) Cursor for pagination when using plan_api_id. Provide next_page or prev_page from previous response to navigate pages. - -## FigmaApi.CreateFigmaWebhook - -
- - -Create a new webhook for Figma events. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## FigmaApi.GetFigmaWebhook - -
- - -Retrieve a Figma webhook by its ID. - -**Parameters** - -- **webhook_id** (`string`, required) Unique identifier of the Figma webhook to retrieve. - -## FigmaApi.UpdateFigmaWebhook - -
- - -Update a Figma webhook by its ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **webhook_id_to_update** (`string`, optional) Provide the ID of the Figma webhook you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## FigmaApi.DeleteFigmaWebhook - -
- - -Delete a specified webhook in Figma. - -**Parameters** - -- **webhook_id_to_delete** (`string`, required) The unique identifier of the webhook you wish to delete. This ID is required for the deletion operation. - -## FigmaApi.GetRecentWebhookRequests - -
- - -Retrieve recent webhook requests from the last week. - -**Parameters** - -- **webhook_subscription_id** (`string`, required) The ID of the webhook subscription for which to retrieve recent events. - -## FigmaApi.RetrieveFigmaLocalVariables - -
- - -Retrieve local and remote variables from a Figma file. - -**Parameters** - -- **file_or_branch_key** (`string`, required) The key for the file or branch to retrieve variables from in Figma. If a branch, use `GET /v1/files/:key` with the `branch_data` query param to get the branch key. - -## FigmaApi.GetPublishedVariables - -
- - -Retrieve published variables from a Figma file. - -**Parameters** - -- **main_file_key** (`string`, required) The key of the Figma file to retrieve published variables from. Only use the main file key, not a branch key. - -## FigmaApi.ManageFigmaVariables - -
- - -Manage and organize Figma variable collections in bulk. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **file_identifier** (`string`, optional) Specifies the Figma file or branch key to modify variables. Retrieve branch key using `GET /v1/files/:key` with `branch_data` parameter. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## FigmaApi.GetDevResources - -
- - -Retrieve development resources from a Figma file. - -**Parameters** - -- **file_key** (`string`, required) The main file key for fetching development resources from a Figma file. Ensure it is not a branch key. -- **target_node_ids** (`string`, optional) Comma separated list of node IDs to filter dev resources. If left blank, returns resources for all nodes. - -## FigmaApi.CreateBulkDevResources - -
- - -Bulk create developer resources in multiple Figma files. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## FigmaApi.BulkUpdateFigmaDevResources - -
- - -Update multiple Figma dev resources in bulk. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## FigmaApi.DeleteDevResource - -
- - -Delete a dev resource from a Figma file. - -**Parameters** - -- **target_file_key** (`string`, required) The main file key from which to delete the dev resource. Must not be a branch key. -- **dev_resource_id** (`string`, required) The ID of the developer resource to delete from the Figma file. - -## FigmaApi.GetLibraryAnalyticsComponentActions - -
- - -Get analytics for library component actions. - -**Parameters** - -- **group_by_dimension** (`string`, required) Specify the dimension to group the analytics data by. Options are 'component' or 'team'. -- **library_file_key** (`string`, required) The unique file key for the Figma library to retrieve analytics data from. -- **data_page_cursor** (`string`, optional) Cursor indicating the specific page of data to fetch, obtained from a previous API call. -- **earliest_start_date** (`string`, optional) ISO 8601 date string (YYYY-MM-DD) for the earliest week to include. Rounded back to the start of a week. Defaults to one year prior. -- **latest_inclusion_date** (`string`, optional) ISO 8601 date string (YYYY-MM-DD) of the latest week to include, rounded forward to the nearest week's end. Defaults to the latest computed week. - -## FigmaApi.FetchComponentUsageData - -
- - -Fetch library analytics component usage data by dimension. - -**Parameters** - -- **group_by_dimension** (`string`, required) A dimension to group the returned analytics data. Choose between 'component' or 'file'. -- **library_file_key** (`string`, required) The file key of the library to fetch analytics data for. Required for specifying the target library. -- **data_page_cursor** (`string`, optional) Cursor indicating which page of data to fetch, obtained from a prior API call. - -## FigmaApi.GetLibraryStyleActions - -
- - -Retrieve library style analytics actions data by dimension. - -**Parameters** - -- **group_by_dimension** (`string`, required) Specify the dimension ('style' or 'team') to group the returned analytics data by. -- **library_file_key** (`string`, required) The unique file key of the Figma library to retrieve analytics data for. -- **pagination_cursor** (`string`, optional) A cursor to indicate which page of data to fetch. Obtain this from a prior API call. -- **earliest_week_start_date** (`string`, optional) ISO 8601 date string (YYYY-MM-DD) for the earliest week to include. Dates round back to the nearest week start. Defaults to one year prior. -- **end_date** (`string`, optional) ISO 8601 date string (YYYY-MM-DD) for the latest week to include, rounded to the week's end. Defaults to the latest computed week if not specified. - -## FigmaApi.GetLibraryStyleUsageData - -
- - -Retrieve style usage data from Figma library analytics. - -**Parameters** - -- **group_by_dimension** (`string`, required) Dimension to group the returned analytics data by. Options are 'style' or 'file'. -- **library_file_key** (`string`, required) The file key of the Figma library to fetch analytics data for. This is required to specify the source library. -- **pagination_cursor** (`string`, optional) Cursor indicating which page of data to fetch, obtained from a previous API call. - -## FigmaApi.FetchLibraryAnalyticsVariableActions - -
- - -Retrieve library analytics variable actions data from Figma. - -**Parameters** - -- **group_by_dimension** (`string`, required) A dimension to group the returned analytics data by. Options: 'variable', 'team'. -- **library_file_key** (`string`, required) The file key of the library for which to fetch analytics data. -- **page_cursor** (`string`, optional) Cursor to indicate which page of data to fetch, obtained from a previous API call. -- **earliest_week_start_date** (`string`, optional) ISO 8601 date string (YYYY-MM-DD) representing the earliest week to include. Rounded back to the nearest week's start. Defaults to one year prior. -- **end_date** (`string`, optional) ISO 8601 date string (YYYY-MM-DD) for the latest week to include. Defaults to the latest computed week. - -## FigmaApi.GetLibraryAnalyticsVariableUsages - -
- - -Retrieve analytics on library variable usage. - -**Parameters** - -- **group_by_dimension** (`string`, required) Specifies the dimension ('variable' or 'file') for grouping library analytics data. -- **library_file_key** (`string`, required) The unique key of the library to fetch analytics data from. -- **page_cursor** (`string`, optional) A token to fetch the specific page of results, received from a previous API call. - ---- - -## Auth - -The Arcade Figma MCP Server uses the [Figma auth provider](/references/auth-providers/figma) to connect to users' Figma accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Figma auth provider](/references/auth-providers/figma#configuring-figma-auth) with your own Figma app credentials. - -## Reference - -Below is a reference of enumerations used by some of the tools in the FigmaApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - diff --git a/app/en/resources/integrations/productivity/gmail/_meta.tsx b/app/en/resources/integrations/productivity/gmail/_meta.tsx deleted file mode 100644 index 648a62088..000000000 --- a/app/en/resources/integrations/productivity/gmail/_meta.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import type { MetaRecord } from "nextra"; - -const meta: MetaRecord = { - "*": { - theme: { - breadcrumb: true, - toc: true, - copyPage: true, - }, - }, - reference: { - title: "Reference", - }, -}; - -export default meta; diff --git a/app/en/resources/integrations/productivity/gmail/page.mdx b/app/en/resources/integrations/productivity/gmail/page.mdx deleted file mode 100644 index 5b7b3d9e2..000000000 --- a/app/en/resources/integrations/productivity/gmail/page.mdx +++ /dev/null @@ -1,562 +0,0 @@ ---- -asIndexPage: true ---- - -# Gmail - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import ScopePicker from "@/app/_components/scope-picker"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Gmail MCP Server provides a pre-built set of tools for interacting with Gmail. These tools make it easy to build agents and AI apps that can: - -- Send, read, and manage emails -- Compose and update draft emails -- Delete emails -- Search for emails by header -- List emails in the user's mailbox - -## Available Tools - -These tools are currently available in the Arcade Gmail MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server) with the [Google auth - provider](/references/auth-providers/google#using-google-auth-in-custom-tools). - - -Each tool requires specific Google OAuth scopes to function. You'll find the required scopes listed in a blue info box at the end of each tool's documentation below. For more information about configuring OAuth and tips for moving to production, see the [Google auth provider documentation](/references/auth-providers/google. - -## Find required scopes - -Select the tools you plan to use to see the OAuth scopes your application needs: - - - ---- - -## Gmail.SendEmail - -
- - -Send an email using the Gmail API. - -**Parameters** - -- **`subject`** _(string, required)_ The subject of the email. -- **`body`** _(string, required)_ The body of the email. -- **`recipient`** _(string, required)_ The recipient of the email. -- **`cc`** _(array, optional, Defaults to None)_ CC recipients of the email. -- **`bcc`** _(array, optional, Defaults to None)_ BCC recipients of the email. - - -`https://www.googleapis.com/auth/gmail.send` - - ---- - -## Gmail.SendDraftEmail - -
- - -Send a draft email using the Gmail API. - -**Parameters** - -- **`email_id`** _(string, required)_ The ID of the draft to send. - - -`https://www.googleapis.com/auth/gmail.send` - - ---- - -## Gmail.WriteDraftEmail - -
- - -Compose a new email draft using the Gmail API. - -**Parameters** - -- **`subject`** _(string, required)_ The subject of the draft email. -- **`body`** _(string, required)_ The body of the draft email. -- **`recipient`** _(string, required)_ The recipient of the draft email. -- **`cc`** _(array, optional, Defaults to None)_ CC recipients of the draft email. -- **`bcc`** _(array, optional, Defaults to None)_ BCC recipients of the draft email. - - -`https://www.googleapis.com/auth/gmail.compose` - - ---- - -## Gmail.UpdateDraftEmail - -
- - -Update an existing email draft. - -**Parameters** - -- **`draft_email_id`** _(string, required)_ The ID of the draft email to update. -- **`subject`** _(string, required)_ The subject of the draft email. -- **`body`** _(string, required)_ The body of the draft email. -- **`recipient`** _(string, required)_ The recipient of the draft email. -- **`cc`** _(array, optional, Defaults to None)_ CC recipients of the draft email. -- **`bcc`** _(array, optional, Defaults to None)_ BCC recipients of the draft email. - - -`https://www.googleapis.com/auth/gmail.compose` - - ---- - -## Gmail.DeleteDraftEmail - -
- - -Delete a draft email using the Gmail API. - -**Parameters** - -- **`draft_email_id`** _(string, required)_ The ID of the draft email to delete. - - -`https://www.googleapis.com/auth/gmail.compose` - - ---- - -## Gmail.TrashEmail - - - The `TrashEmail` tool is currently only available on a self-hosted instance of - the Arcade Engine. To learn more about self-hosting, see the [self-hosting - documentation](http://localhost:3000/en/guides/deployment-hosting/configure-engine). - - -
- - -Move an email to the trash folder. - -**Parameters** - -- **`email_id`** _(string, required)_ The ID of the email to trash. - - -`https://www.googleapis.com/auth/gmail.modify` - - ---- - -## Gmail.ListDraftEmails - -
- - -List draft emails in the user's mailbox. - -**Parameters** - -- **`n_drafts`** _(integer, optional, Defaults to 5)_ Number of draft emails to read. - - -`https://www.googleapis.com/auth/gmail.readonly` - - ---- - -## Gmail.ListEmailsByHeader - -
- - -Search for emails by header using the Gmail API. - -_At least one of the following parameters must be provided: `sender`, `recipient`, `subject`, `body`._ - -**Parameters** - -- **`sender`** _(string, optional, Defaults to None)_ The name or email address of the sender. -- **`recipient`** _(string, optional, Defaults to None)_ The name or email address of the recipient. -- **`subject`** _(string, optional, Defaults to None)_ Words to find in the subject of the email. -- **`body`** _(string, optional, Defaults to None)_ Words to find in the body of the email. -- **`date_range`** _(string, optional, Defaults to None)_ The date range of the emails. -- **`limit`** _(integer, optional, Defaults to 25)_ The maximum number of emails to return. - - -`https://www.googleapis.com/auth/gmail.readonly` - - ---- - -## Gmail.ListEmails - -
- - -Read emails from a Gmail account and extract plain text content. - -**Parameters** - -- **`n_emails`** _(integer, optional, Defaults to 5)_ Number of emails to read. - - -`https://www.googleapis.com/auth/gmail.readonly` - - ---- - -## Gmail.SearchThreads - -
- - -Search for threads in the user's mailbox - -**Parameters** - -- **`page_token`** _(string, optional)_ Page token to retrieve a specific page of results in the list. -- **`max_results`** _(integer, optional, Defaults to `10`)_ The maximum number of threads to return. -- **`include_spam_trash`** _(boolean, optional)_ Whether to include spam and trash in the results. -- **`label_ids`** _(array, optional)_ The IDs of labels to filter by. -- **`sender`** _(string, optional)_ The name or email address of the sender of the email. -- **`recipient`** _(string, optional)_ The name or email address of the recipient. -- **`subject`** _(string, optional)_ Words to find in the subject of the email. -- **`body`** _(string, optional)_ Words to find in the body of the email. -- **`date_range`** _(string, optional)_ The date range of the email. Valid values are 'today', 'yesterday', 'last_7_days', 'last_30_days', 'this_month', 'last_month', 'this_year'. - - -`https://www.googleapis.com/auth/gmail.readonly` - - ---- - -## Gmail.ListThreads - -
- - -List threads in the user's mailbox. - -**Parameters** - -- **`page_token`** _(string, optional)_ Page token to retrieve a specific page of results in the list. -- **`max_results`** _(integer, optional, Defaults to `10`)_ The maximum number of threads to return. -- **`include_spam_trash`** _(boolean, optional)_ Whether to include spam and trash in the results. - - -`https://www.googleapis.com/auth/gmail.readonly` - - ---- - -## Gmail.GetThread - -
- - -Get the specified thread by ID. - -**Parameters** - -- **`thread_id`** _(string, required)_ The ID of the thread to retrieve. - - -`https://www.googleapis.com/auth/gmail.readonly` - - ---- - -## Gmail.WhoAmI - -
- - -Get comprehensive user profile and Gmail account information. - -**Parameters** - -This tool does not take any parameters. - - -- `https://www.googleapis.com/auth/gmail.readonly` -- `https://www.googleapis.com/auth/userinfo.profile` -- `https://www.googleapis.com/auth/userinfo.email` - - ---- - -## Auth - -The Arcade Gmail MCP Sever uses the [Google auth provider](/references/auth-providers/google to connect to users' Google accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Google auth provider](/references/auth-providers/google#configuring-google-auth) with your own Google app credentials. - ---- - -## Reference - -### GmailReplyToWhom - -The type of recipient to reply to. - -- **`EVERY_RECIPIENT`**: Reply to the original sender and all recipients. -- **`ONLY_THE_SENDER`**: Reply to the original sender only. - - diff --git a/app/en/resources/integrations/productivity/gmail/reference/page.mdx b/app/en/resources/integrations/productivity/gmail/reference/page.mdx deleted file mode 100644 index 04c4c6dbf..000000000 --- a/app/en/resources/integrations/productivity/gmail/reference/page.mdx +++ /dev/null @@ -1,20 +0,0 @@ -# Gmail Reference - -Below is a reference of enumerations used by some tools in the Gmail MCP Server: - -## GmailReplyToWhom - -- **EVERY_RECIPIENT**: `every_recipient` -- **ONLY_THE_SENDER**: `only_the_sender` - -## DateRange - -- **TODAY**: `today` -- **YESTERDAY**: `yesterday` -- **LAST_7_DAYS**: `last_7_days` -- **LAST_30_DAYS**: `last_30_days` -- **THIS_MONTH**: `this_month` -- **LAST_MONTH**: `last_month` -- **THIS_YEAR**: `this_year` - - diff --git a/app/en/resources/integrations/productivity/google-calendar/_meta.tsx b/app/en/resources/integrations/productivity/google-calendar/_meta.tsx deleted file mode 100644 index 457111c79..000000000 --- a/app/en/resources/integrations/productivity/google-calendar/_meta.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import type { MetaRecord } from "nextra"; - -const meta: MetaRecord = { - reference: { - title: "Reference", - }, -}; - -export default meta; diff --git a/app/en/resources/integrations/productivity/google-calendar/page.mdx b/app/en/resources/integrations/productivity/google-calendar/page.mdx deleted file mode 100644 index 14a86f530..000000000 --- a/app/en/resources/integrations/productivity/google-calendar/page.mdx +++ /dev/null @@ -1,420 +0,0 @@ ---- -asIndexPage: true ---- - -# Google Calendar - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import ScopePicker from "@/app/_components/scope-picker"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Google Calendar MCP Server provides a pre-built set of tools for interacting with a user’s Google Calendar. These tools make it easy to build agents and apps that can: - -- Discover calendars accessible to the user and inspect user/profile/calendar environment (ListCalendars, WhoAmI). -- Create, update, list, and delete events (CreateEvent, UpdateEvent, ListEvents, DeleteEvent). -- Find available meeting times across attendees within a date/time range (FindTimeSlotsWhenEveryoneIsFree). - -## Available Tools - -These tools are currently available in the Arcade Google Calendar MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server) with the [Google auth - provider](/references/auth-providers/google#using-google-auth-in-custom-tools). - - -Each tool requires specific Google OAuth scopes to function. You'll find the required scopes listed in a blue info box at the end of each tool's documentation below. For more information about configuring OAuth and tips for moving to production, see the [Google auth provider documentation](/references/auth-providers/google. - -## Find required scopes - -Select the tools you plan to use to see the OAuth scopes your application needs: - - - ---- - -## GoogleCalendar.ListCalendars - -
- - -List all calendars accessible by the user. - -**Parameters** - -- **`max_results`** (`integer`, optional) The maximum number of calendars to return. Up to 250 calendars, defaults to 10. -- **`show_deleted`** (`boolean`, optional) Whether to show deleted calendars. Defaults to False -- **`show_hidden`** (`boolean`, optional) Whether to show hidden calendars. Defaults to False -- **`next_page_token`** (`string`, optional) The token to retrieve the next page of calendars. Optional. - - -- `https://www.googleapis.com/auth/calendar.readonly` -- `https://www.googleapis.com/auth/calendar.events` - - ---- - -## GoogleCalendar.CreateEvent - -
- - -Create a new event/meeting/sync/meetup in the specified calendar. - -**Parameters** - -- **`summary`** (`string`, required) The title of the event -- **`start_datetime`** (`string`, required) The datetime when the event starts in ISO 8601 format, e.g., '2024-12-31T15:30:00'. -- **`end_datetime`** (`string`, required) The datetime when the event ends in ISO 8601 format, e.g., '2024-12-31T17:30:00'. -- **`calendar_id`** (`string`, optional) The ID of the calendar to create the event in, usually 'primary'. -- **`description`** (`string`, optional) The description of the event -- **`location`** (`string`, optional) The location of the event -- **`visibility`** (`Enum` [EventVisibility](/resources/integrations/productivity/google-calendar/reference#EventVisibility), optional) The visibility of the event -- **`attendee_emails`** (`array[string]`, optional) The list of attendee emails. Must be valid email addresses e.g., username@domain.com. -- **`send_notifications_to_attendees`** (`Enum` [SendUpdatesOptions](/resources/integrations/productivity/google-calendar/reference#SendUpdatesOptions), optional) Should attendees be notified by email of the invitation? (none, all, external_only) -- **`add_google_meet`** (`boolean`, optional) Whether to add a Google Meet link to the event. Defaults to False. - - -- `https://www.googleapis.com/auth/calendar.readonly` -- `https://www.googleapis.com/auth/calendar.events` - - ---- - -## GoogleCalendar.ListEvents - -
- - -List events from the specified calendar within the given datetime range. - -min_end_datetime serves as the lower bound (exclusive) for an event's end time. max_start_datetime serves as the upper bound (exclusive) for an event's start time. - -For example: If min_end_datetime is set to 2024-09-15T09:00:00 and max_start_datetime is set to 2024-09-16T17:00:00, the function will return events that: - -1. End after 09:00 on September 15, 2024 (exclusive) -2. Start before 17:00 on September 16, 2024 (exclusive) This means an event starting at 08:00 on September 15 and ending at 10:00 on September 15 would be included, but an event starting at 17:00 on September 16 would not be included. - -**Parameters** - -- **`min_end_datetime`** (`string`, required) Filter by events that end on or after this datetime in ISO 8601 format, e.g., '2024-09-15T09:00:00'. -- **`max_start_datetime`** (`string`, required) Filter by events that start before this datetime in ISO 8601 format, e.g., '2024-09-16T17:00:00'. -- **`calendar_id`** (`string`, optional) The ID of the calendar to list events from -- **`max_results`** (`integer`, optional) The maximum number of events to return - - -- `https://www.googleapis.com/auth/calendar.readonly` -- `https://www.googleapis.com/auth/calendar.events` - - ---- - -## GoogleCalendar.UpdateEvent - -
- - -Update an existing event in the specified calendar with the provided details. Only the provided fields will be updated; others will remain unchanged. - -`updated_start_datetime` and `updated_end_datetime` are independent and can be provided separately. - -**Parameters** - -- **`event_id`** (`string`, required) The ID of the event to update -- **`updated_start_datetime`** (`string`, optional) The updated datetime that the event starts in ISO 8601 format, e.g., '2024-12-31T15:30:00'. -- **`updated_end_datetime`** (`string`, optional) The updated datetime that the event ends in ISO 8601 format, e.g., '2024-12-31T17:30:00'. -- **`updated_calendar_id`** (`string`, optional) The updated ID of the calendar containing the event. -- **`updated_summary`** (`string`, optional) The updated title of the event -- **`updated_description`** (`string`, optional) The updated description of the event -- **`updated_location`** (`string`, optional) The updated location of the event -- **`updated_visibility`** (`Enum` [EventVisibility](/resources/integrations/productivity/google-calendar/reference#EventVisibility), optional) The visibility of the event -- **`attendee_emails_to_add`** (`array[string]`, optional) The list of attendee emails to add. Must be valid email addresses e.g., username@domain.com. -- **`attendee_emails_to_remove`** (`array[string]`, optional) The list of attendee emails to remove. Must be valid email addresses e.g., username@domain.com. -- **`send_notifications_to_attendees`** (`Enum` [SendUpdatesOptions](/resources/integrations/productivity/google-calendar/reference#SendUpdatesOptions), optional) Should attendees be notified of the update? (none, all, external_only) -- **`update_google_meet`** (`Enum` [UpdateGoogleMeetOptions](/resources/integrations/productivity/google-calendar/reference#UpdateGoogleMeetOptions), optional) Whether to update the Google Meet link to the event. (none, add, remove) - - -`https://www.googleapis.com/auth/calendar.events` - - ---- - -## GoogleCalendar.DeleteEvent - -
- - -Delete an event from Google Calendar. - -**Parameters** - -- **`event_id`** (`string`, required) The ID of the event to delete -- **`calendar_id`** (`string`, optional) The ID of the calendar containing the event -- **`send_updates`** (`Enum` [SendUpdatesOptions](/resources/integrations/productivity/google-calendar/reference#SendUpdatesOptions), optional) Specifies which attendees to notify about the deletion - - -`https://www.googleapis.com/auth/calendar.events` - - ---- - -## GoogleCalendar.FindTimeSlotsWhenEveryoneIsFree - -
- - -Provides time slots when everyone is free within a given date range and time boundaries. - -**Parameters** - -- **`email_addresses`** (`array[string]`, optional) The list of email addresses from people in the same organization domain (apart from the currently logged in user) to search for free time slots. Defaults to None, which will return free time slots for the current user only. -- **`start_date`** (`string`, optional) The start date to search for time slots in the format 'YYYY-MM-DD'. Defaults to today's date. It will search starting from this date at the time 00:00:00. -- **`end_date`** (`string`, optional) The end date to search for time slots in the format 'YYYY-MM-DD'. Defaults to seven days from the start date. It will search until this date at the time 23:59:59. -- **`start_time_boundary`** (`string`, optional) Will return free slots in any given day starting from this time in the format 'HH:MM'. Defaults to '08:00', which is a usual business hour start time. -- **`end_time_boundary`** (`string`, optional) Will return free slots in any given day until this time in the format 'HH:MM'. Defaults to '18:00', which is a usual business hour end time. - - -`https://www.googleapis.com/auth/calendar.readonly` - - ---- - -## GoogleCalendar.WhoAmI - -
- - -Get comprehensive user profile and Google Calendar environment information. - -**Parameters** - -This tool does not take any parameters. - - -- `https://www.googleapis.com/auth/calendar.readonly` -- `https://www.googleapis.com/auth/userinfo.profile` -- `https://www.googleapis.com/auth/userinfo.email` - - ---- - -## Auth - -The Arcade Google Calendar MCP Sever uses the [Google auth provider](/references/auth-providers/google to connect to users' Google accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Google auth provider](/references/auth-providers/google#configuring-google-auth) with your own Google app credentials. - ---- - -## Reference - -### EventVisibility - -Defines the visibility of an event. - -- **`DEFAULT`**: Default visibility. -- **`PUBLIC`**: Public visibility. -- **`PRIVATE`**: Private visibility. -- **`CONFIDENTIAL`**: Confidential visibility. - -### SendUpdatesOptions - -- **`NONE`**: No notifications are sent. -- **`ALL`**: Notifications are sent to all guests. -- **`EXTERNAL_ONLY`**: Notifications are sent to non-Google Calendar guests only. - -## UpdateGoogleMeetOptions - -- **`NONE`**: No action is taken. -- **`ADD`**: Add the Google Meet link to the event. -- **`REMOVE`**: Remove the Google Meet link from the event. - - diff --git a/app/en/resources/integrations/productivity/google-calendar/reference/page.mdx b/app/en/resources/integrations/productivity/google-calendar/reference/page.mdx deleted file mode 100644 index ee7d53ef5..000000000 --- a/app/en/resources/integrations/productivity/google-calendar/reference/page.mdx +++ /dev/null @@ -1,24 +0,0 @@ -# GoogleCalendar Reference - -Below is a reference of enumerations used by some tools in the GoogleCalendar MCP Server: - -## EventVisibility - -- **DEFAULT**: `default` -- **PUBLIC**: `public` -- **PRIVATE**: `private` -- **CONFIDENTIAL**: `confidential` - -## SendUpdatesOptions - -- **NONE**: `none` -- **ALL**: `all` -- **EXTERNAL_ONLY**: `externalOnly` - -## UpdateGoogleMeetOptions - -- **NONE**: `none` -- **ADD**: `add` -- **REMOVE**: `remove` - - diff --git a/app/en/resources/integrations/productivity/google-contacts/page.mdx b/app/en/resources/integrations/productivity/google-contacts/page.mdx deleted file mode 100644 index 41f8df692..000000000 --- a/app/en/resources/integrations/productivity/google-contacts/page.mdx +++ /dev/null @@ -1,236 +0,0 @@ -# Google Contacts - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import ScopePicker from "@/app/_components/scope-picker"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Google Contacts MCP Server provides a pre-built set of tools for interacting with Google Contacts. These tools make it easy to build agents and AI apps that can: - -- Create new contacts -- Search for contacts by name or email - -## Available Tools - -These tools are currently available in the Arcade Google Contacts MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server) with the [Google auth - provider](/references/auth-providers/google#using-google-auth-in-custom-tools). - - -Each tool requires specific Google OAuth scopes to function. You'll find the required scopes listed in a blue info box at the end of each tool's documentation below. For more information about configuring OAuth and tips for moving to production, see the [Google auth provider documentation](/references/auth-providers/google. - -## Find required scopes - -Select the tools you plan to use to see the OAuth scopes your application needs: - - - ---- - -## GoogleContacts.SearchContactsByEmail - -Search the user's contacts in Google Contacts by email address. - - - -**Parameters** - -- **`email`** _(string, required)_: The email address to search for. -- **`limit`** _(integer, optional)_: The maximum number of contacts to return (30 is the max allowed by the Google API). - - - `https://www.googleapis.com/auth/contacts.readonly` - - ---- - -## GoogleContacts.SearchContactsByName - -Search the user's contacts in Google Contacts by name. - - - -**Parameters** - -- **`name`** _(string, required)_: The full name to search for. -- **`limit`** _(integer, optional)_: The maximum number of contacts to return (30 is the max allowed by the Google API). - - - `https://www.googleapis.com/auth/contacts.readonly` - - ---- - -## GoogleContacts.CreateContact - -Create a new contact record in Google Contacts. - - - -**Parameters** - -- **`given_name`** _(string, required)_: The given name of the contact. -- **`family_name`** _(string, optional)_: The optional family name of the contact. -- **`email`** _(string, optional)_: The optional email address of the contact. -- **`phone_number`** _(string, optional)_: The optional phone_number address of the contact. - - - `https://www.googleapis.com/auth/contacts` - - ---- - -## GoogleContacts.WhoAmI - -
- - -Get comprehensive user profile and Google Contacts environment information. - -**Parameters** - -This tool does not take any parameters. - - - - `https://www.googleapis.com/auth/contacts.readonly` - - `https://www.googleapis.com/auth/userinfo.profile` - - `https://www.googleapis.com/auth/userinfo.email` - - ---- - -## Auth - -The Arcade Google Contacts MCP Sever uses the [Google auth provider](/references/auth-providers/google to connect to users' Google accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Google auth provider](/references/auth-providers/google#configuring-google-auth) with your own Google app credentials. - - diff --git a/app/en/resources/integrations/productivity/google-docs/_meta.tsx b/app/en/resources/integrations/productivity/google-docs/_meta.tsx deleted file mode 100644 index 92008123f..000000000 --- a/app/en/resources/integrations/productivity/google-docs/_meta.tsx +++ /dev/null @@ -1,7 +0,0 @@ -const meta = { - reference: { - title: "Reference", - }, -}; - -export default meta; diff --git a/app/en/resources/integrations/productivity/google-docs/page.mdx b/app/en/resources/integrations/productivity/google-docs/page.mdx deleted file mode 100644 index 9fd55deec..000000000 --- a/app/en/resources/integrations/productivity/google-docs/page.mdx +++ /dev/null @@ -1,629 +0,0 @@ ---- -asIndexPage: true ---- - -# Google Docs - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import ScopePicker from "@/app/_components/scope-picker"; -import { Callout } from "nextra/components"; - - - - - This Toolkit is not available in Arcade Cloud. You can use these tools with a - [self-hosted](/guides/deployment-hosting/configure-engine) instance of Arcade. - - -
- - -The Arcade Google Docs MCP Server provides a pre-built set of tools for interacting with Google Docs. These tools make it easy to build agents and AI apps that can: - -- Create, update, list, and delete documents -- Access document metadata including hierarchical tab structures -- Retrieve document content with full tab support in multiple formats (Markdown, HTML, DocMD) - -## Available Tools - -These tools are currently available in the Arcade Google Docs MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server) with the [Google auth - provider](/references/auth-providers/google#using-google-auth-in-custom-tools). - - -Each tool requires specific Google OAuth scopes to function. You'll find the required scopes listed in a blue info box at the end of each tool's documentation below. For more information about configuring OAuth and tips for moving to production, see the [Google auth provider documentation](/references/auth-providers/google. - - - The `drive.file` scope only grants access to files that were created or opened by your application. If you need broader access to a user's Google Drive documents (e.g., to access documents created by other applications), you'll need to create your own Google OAuth provider and request the `drive.readonly` or `drive` scope. Note that these broader scopes are **not supported** by Arcade's default Google OAuth provider. - - -## Find required scopes - -Select the tools you plan to use to see the OAuth scopes your application needs: - - - ---- - -## GoogleDocs.WhoAmI - -
- - -Get comprehensive user profile and Google Docs environment information. - -**Parameters** - -This tool does not take any parameters. - - -- `https://www.googleapis.com/auth/drive.file` -- `https://www.googleapis.com/auth/userinfo.profile` -- `https://www.googleapis.com/auth/userinfo.email` - - ---- - -## GoogleDocs.GetDocumentById - -
- - -Get the latest version of the specified Google Docs document. - -**Parameters** - -- **`document_id`** _(string, required)_ The ID of the document to retrieve. - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDocs.GetDocumentAsDocMD - -
- - -Get the latest version of the specified Google Docs document in DocMD format. The DocMD output includes tags that can be used to annotate the document with location information, block types, block IDs, and other metadata. If the document has tabs, all tabs are included in sequential order unless a specific `tab_id` is provided. - -**Parameters** - -- **`document_id`** _(string, required)_ The ID of the document to retrieve. -- **`tab_id`** _(string, optional)_ The ID of a specific tab to retrieve. If provided, returns only content from that tab. If omitted, returns all tabs in sequential depth-first order. - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDocs.GetDocumentMetadata - -
- - -Get metadata for a Google Docs document including hierarchical tab structure. Returns document title, ID, URL, approximate total character and word counts, and nested tab information with approximate character and word counts for each tab. - -**Parameters** - -- **`document_id`** _(string, required)_ The ID of the document to get metadata for. - -**Response Fields** - -The response includes the following fields: - -- **`documentId`** _(string)_ The unique identifier of the document. -- **`title`** _(string)_ The title of the document. -- **`documentUrl`** _(string)_ The URL to open and edit the document in Google Docs. -- **`approximateTotalCharacterCount`** _(int)_ Approximate total number of characters across all tabs (or main body if no tabs). -- **`approximateTotalWordCount`** _(int)_ Approximate total number of words across all tabs (or main body if no tabs). -- **`tabsCount`** _(int)_ The total number of tabs in the document. -- **`tabs`** _(list[dict])_ List of tabs with hierarchical structure. Each tab includes: - - **`tabId`** _(string)_ The unique identifier of the tab. - - **`title`** _(string)_ The title/name of the tab. - - **`index`** _(int)_ The position of the tab among its siblings (0-indexed). - - **`nestingLevel`** _(int)_ The nesting depth (0 for top-level, 1 for child, 2 for grandchild). - - **`approximateCharacterCount`** _(int)_ Approximate number of characters in this tab's content (excluding child tabs). - - **`approximateWordCount`** _(int)_ Approximate number of words in this tab's content (excluding child tabs). - - **`parentTabId`** _(string, optional)_ The ID of the parent tab (if this is a nested tab). - - **`childTabs`** _(list[dict], optional)_ List of nested child tabs within this tab. - - - **Note on Approximate Counts**: The character and word counts are approximate and may differ slightly from the exact counts shown in Google Docs. The counts are calculated by parsing the document structure and may not include all formatting or hidden content. - - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDocs.EditDocument - -
- - -Edit a Google Docs document using natural language edit requests. This tool is stateless and does not have context about previous edits. If your edit request depends on knowledge about previous edits, provide that context in the edit requests. - -Note that this tool is agentic, and requires the secret OPENAI_API_KEY to be set. - -**Parameters** - -- **`document_id`** _(string, required)_ The ID of the document to edit. -- **`edit_requests`** _(list[str], required)_ A list of natural language descriptions of the desired changes to the document. Each entry should be a single, self-contained edit request that can be fully understood independently. Note: Each request may result in zero, one, or multiple actual edits depending on what changes are needed (e.g., a request might be ignored if the change already exists in the document). -- **`reasoning_effort`** _(enum ([ReasoningEffort](#reasoningeffort)), optional)_ The effort to put into reasoning about the edits. Defaults to medium. - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDocs.InsertTextAtEndOfDocument - -
- - -Insert text at the end of an existing Google Docs document. - -**Parameters** - -- **`document_id`** _(string, required)_ The ID of the document to update. -- **`text_content`** _(string, required)_ The text content to insert into the document. - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDocs.CreateBlankDocument - -
- - -Create a blank Google Docs document with the specified title. - -**Parameters** - -- **`title`** _(string, required)_ The title of the blank document to create. - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDocs.CreateDocumentFromText - -
- - -Create a Google Docs document with the specified title and text content. - -**Parameters** - -- **`title`** _(string, required)_ The title of the document to create. -- **`text_content`** _(string, required)_ The text content to insert into the document. - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDocs.SearchDocuments - -
- - -Search Google documents in the user's Google Drive. Excludes documents that are in the trash. - -**Parameters** - -- **`document_contains`** _(list[str], optional)_ Keywords or phrases that must be in the document title or body. Provide a list of keywords or phrases if needed. -- **`document_not_contains`** _(list[str], optional)_ Keywords or phrases that must not be in the document title or body. Provide a list of keywords or phrases if needed. -- **`search_only_in_shared_drive_id`** _(str, optional)_ The ID of the shared drive to restrict the search to. If provided, the search will only return documents from this drive. Defaults to None, which searches across all drives. -- **`include_shared_drives`** _(bool, optional)_ Whether to include documents from shared drives in the search results. Defaults to False (searches only in the user's 'My Drive'). -- **`include_organization_domain_documents`** _(bool, optional)_ Whether to include documents from the organization's domain. This is applicable to admin users who have permissions to view organization-wide documents in a Google Workspace account. Defaults to False. -- **`order_by`** _(enum ([OrderBy](#orderby)), optional)_ Sort order. Defaults to listing the most recently modified documents first. -- **`limit`** _(int, optional)_ The number of documents to list. Defaults to `50`. -- **`pagination_token`** _(str, optional)_ The pagination token to continue a previous request - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDocs.SearchAndRetrieveDocuments - -
- - -Searches for documents in the user's Google Drive and returns a list of documents (with text content) matching the search criteria. Excludes documents that are in the trash. If the document has tabs, all tab content is included in the output. - -**Parameters** - -- **`return_format`** _(enum ([DocumentFormat](#documentformat)), optional)_ The format of the document to be returned. Defaults to Markdown. Can be `MARKDOWN`, `HTML`, `DOCMD`, or `GOOGLE_API_JSON`. -- **`document_contains`** _(list[str], optional)_ Keywords or phrases that must be in the document title or body. Provide a list of keywords or phrases if needed. -- **`document_not_contains`** _(list[str], optional)_ Keywords or phrases that must not be in the document title or body. Provide a list of keywords or phrases if needed. -- **`search_only_in_shared_drive_id`** _(str, optional)_ The ID of the shared drive to restrict the search to. If provided, the search will only return documents from this drive. Defaults to None, which searches across all drives. -- **`include_shared_drives`** _(bool, optional)_ Whether to include documents from shared drives in the search results. Defaults to False (searches only in the user's 'My Drive'). -- **`include_organization_domain_documents`** _(bool, optional)_ Whether to include documents from the organization's domain. This is applicable to admin users who have permissions to view organization-wide documents in a Google Workspace account. Defaults to False. -- **`order_by`** _(enum ([OrderBy](#orderby)), optional)_ Sort order. Defaults to listing the most recently modified documents first. -- **`limit`** _(int, optional)_ The number of documents to list. Defaults to `50`. -- **`pagination_token`** _(str, optional)_ The pagination token to continue a previous request - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDocs.ListDocumentComments - -
- - -List all comments on the specified Google Docs document. - -**Parameters** - -- **`document_id`** _(string, required)_ The ID of the document to list comments for. -- **`include_deleted`** _(bool, optional)_ Whether to include deleted comments in the results. Defaults to False. - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDocs.CommentOnDocument - -
- - -Comment on a specific document by its ID. - -**Parameters** - -- **`document_id`** _(string, required)_ The ID of the document to comment on. -- **`comment_text`** _(string, required)_ The comment to add to the document. - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## Tab Support - -Google Docs supports hierarchical tabs within documents. The Google Docs tools provide comprehensive support for working with tabs: - -- **Tab Metadata**: `GetDocumentMetadata` returns hierarchical tab structures with approximate character and word counts for each tab -- **Tab Content**: `GetDocumentAsDocMD` and `SearchAndRetrieveDocuments` include all tab content in their output -- **Tab Filtering**: `GetDocumentAsDocMD` supports filtering to retrieve content from a specific tab using the `tab_id` parameter - -Tabs are represented with the following structure: -- Each tab has a unique `tabId`, `title`, `index`, and `nestingLevel` -- Tabs can be nested up to 3 levels deep (parent → child → grandchild) -- Tab metadata includes approximate character and word counts for each tab's content - ---- - -## Auth - -The Arcade Docs MCP Sever uses the [Google auth provider](/references/auth-providers/google to connect to users' Google accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Google auth provider](/references/auth-providers/google#configuring-google-auth) with your own Google app credentials. - ---- - -## Reference - -### DocumentFormat - -The format of the document to be returned. - -- **`MARKDOWN`**: Markdown format. Includes all tabs in the output if present. -- **`HTML`**: HTML format. Includes all tabs in the output if present. -- **`DOCMD`**: DocMD format with metadata tags. Includes all tabs in the output if present. -- **`GOOGLE_API_JSON`**: Original JSON format returned by the Google API. - -### OrderBy - -Sort keys for ordering files in Google Drive. Each key has both ascending and descending options. - -- **`CREATED_TIME`**: When the file was created (ascending). -- **`CREATED_TIME_DESC`**: When the file was created (descending). -- **`FOLDER`**: The folder ID, sorted using alphabetical ordering (ascending). -- **`FOLDER_DESC`**: The folder ID, sorted using alphabetical ordering (descending). -- **`MODIFIED_BY_ME_TIME`**: The last time the file was modified by the user (ascending). -- **`MODIFIED_BY_ME_TIME_DESC`**: The last time the file was modified by the user (descending). -- **`MODIFIED_TIME`**: The last time the file was modified by anyone (ascending). -- **`MODIFIED_TIME_DESC`**: The last time the file was modified by anyone (descending). -- **`NAME`**: The name of the file, sorted using alphabetical ordering (ascending). -- **`NAME_DESC`**: The name of the file, sorted using alphabetical ordering (descending). -- **`NAME_NATURAL`**: The name of the file, sorted using natural sort ordering (ascending). -- **`NAME_NATURAL_DESC`**: The name of the file, sorted using natural sort ordering (descending). -- **`QUOTA_BYTES_USED`**: The number of storage quota bytes used by the file (ascending). -- **`QUOTA_BYTES_USED_DESC`**: The number of storage quota bytes used by the file (descending). -- **`RECENCY`**: The most recent timestamp from the file's date-time fields (ascending). -- **`RECENCY_DESC`**: The most recent timestamp from the file's date-time fields (descending). -- **`SHARED_WITH_ME_TIME`**: When the file was shared with the user, if applicable (ascending). -- **`SHARED_WITH_ME_TIME_DESC`**: When the file was shared with the user, if applicable (descending). -- **`STARRED`**: Whether the user has starred the file (ascending). -- **`STARRED_DESC`**: Whether the user has starred the file (descending). -- **`VIEWED_BY_ME_TIME`**: The last time the file was viewed by the user (ascending). -- **`VIEWED_BY_ME_TIME_DESC`**: The last time the file was viewed by the user (descending). - -### ReasoningEffort - -The effort to put into reasoning about document edits. - -- **`MINIMAL`**: Minimal reasoning effort for simple, straightforward edits. -- **`LOW`**: Minimal reasoning effort for simple, straightforward edits. -- **`MEDIUM`**: Moderate reasoning effort for most editing tasks (default). -- **`HIGH`**: Maximum reasoning effort for complex edits requiring careful analysis. - - diff --git a/app/en/resources/integrations/productivity/google-docs/reference/page.mdx b/app/en/resources/integrations/productivity/google-docs/reference/page.mdx deleted file mode 100644 index 17b9abd39..000000000 --- a/app/en/resources/integrations/productivity/google-docs/reference/page.mdx +++ /dev/null @@ -1,36 +0,0 @@ -# GoogleDocs Reference - -Below is a reference of enumerations used by some tools in the GoogleDocs MCP Server: - -## OrderBy - -- **CREATED_TIME**: `createdTime` -- **CREATED_TIME_DESC**: `createdTime desc` -- **FOLDER**: `folder` -- **FOLDER_DESC**: `folder desc` -- **MODIFIED_BY_ME_TIME**: `modifiedByMeTime` -- **MODIFIED_BY_ME_TIME_DESC**: `modifiedByMeTime desc` -- **MODIFIED_TIME**: `modifiedTime` -- **MODIFIED_TIME_DESC**: `modifiedTime desc` -- **NAME**: `name` -- **NAME_DESC**: `name desc` -- **NAME_NATURAL**: `name_natural` -- **NAME_NATURAL_DESC**: `name_natural desc` -- **QUOTA_BYTES_USED**: `quotaBytesUsed` -- **QUOTA_BYTES_USED_DESC**: `quotaBytesUsed desc` -- **RECENCY**: `recency` -- **RECENCY_DESC**: `recency desc` -- **SHARED_WITH_ME_TIME**: `sharedWithMeTime` -- **SHARED_WITH_ME_TIME_DESC**: `sharedWithMeTime desc` -- **STARRED**: `starred` -- **STARRED_DESC**: `starred desc` -- **VIEWED_BY_ME_TIME**: `viewedByMeTime` -- **VIEWED_BY_ME_TIME_DESC**: `viewedByMeTime desc` - -## DocumentFormat - -- **MARKDOWN**: `markdown` -- **HTML**: `html` -- **GOOGLE_API_JSON**: `google_api_json` - - diff --git a/app/en/resources/integrations/productivity/google-drive/_meta.tsx b/app/en/resources/integrations/productivity/google-drive/_meta.tsx deleted file mode 100644 index 457111c79..000000000 --- a/app/en/resources/integrations/productivity/google-drive/_meta.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import type { MetaRecord } from "nextra"; - -const meta: MetaRecord = { - reference: { - title: "Reference", - }, -}; - -export default meta; diff --git a/app/en/resources/integrations/productivity/google-drive/page.mdx b/app/en/resources/integrations/productivity/google-drive/page.mdx deleted file mode 100644 index ca26002e3..000000000 --- a/app/en/resources/integrations/productivity/google-drive/page.mdx +++ /dev/null @@ -1,503 +0,0 @@ ---- -asIndexPage: true ---- - -# Google Drive - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import ScopePicker from "@/app/_components/scope-picker"; -import { Callout } from "nextra/components"; - - - - - -The Google Drive MCP Server provides a set of tools for interacting with Google Drive, enabling users to efficiently manage and access their files. With this MCP Server, users can: - -- Retrieve the file and folder structure of their Google Drive -- Search for specific files within Google Drive -- Create, rename, and move files and folders -- Download and upload files -- Share files with other users -- Generate a Google File Picker URL for user-driven file selection and authorization - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -Each tool requires specific Google OAuth scopes to function. You'll find the required scopes listed in a blue info box at the end of each tool's documentation below. For more information about configuring OAuth and tips for moving to production, see the [Google auth provider documentation](/references/auth-providers/google. - - - The `drive.file` scope only grants access to files that were created or opened by your application. If you need broader access to a user's Google Drive (e.g., to access files created by other applications), you'll need to create your own Google OAuth provider and request the `drive.readonly` or `drive` scope. Note that these broader scopes are **not supported** by Arcade's default Google OAuth provider. - - -## Find required scopes - -Select the tools you plan to use to see the OAuth scopes your application needs: - - - ---- - -## GoogleDrive.WhoAmI - -
- - -Get comprehensive user profile and Google Drive environment information. This tool provides detailed information about the authenticated user including their name, email, profile picture, Google Drive storage information, and the shared drives (and their IDs) the user has access to. - -**Parameters** - -This tool does not take any parameters. - - -- `https://www.googleapis.com/auth/drive.file` -- `https://www.googleapis.com/auth/userinfo.profile` -- `https://www.googleapis.com/auth/userinfo.email` - - ---- - -## GoogleDrive.GetFileTreeStructure - -
- - -Get the file/folder tree structure of the user's Google Drive. This operation can be inefficient for large drives, so use with caution. - -**Parameters** - -- **include_shared_drives** (`boolean`, optional): Whether to include shared drives in the file tree structure. Defaults to False. -- **restrict_to_shared_drive_id** (`string`, optional): If provided, only include files from this shared drive in the file tree structure. Defaults to None, which will include files and folders from all drives. -- **include_organization_domain_documents** (`boolean`, optional): Whether to include documents from the organization's domain. This is applicable to admin users who have permissions to view organization-wide documents in a Google Workspace account. Defaults to False. -- **order_by** (`Enum` [OrderBy](/resources/integrations/productivity/google-drive/reference#OrderBy), optional): Sort order. Defaults to listing the most recently modified documents first. -- **limit** (`integer`, optional): The number of files and folders to list. Defaults to None, which will list all files and folders. - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDrive.GenerateGoogleFilePickerUrl - -
- - -Generate a Google File Picker URL for user-driven file selection and authorization. This tool generates a URL that directs the end-user to a Google File Picker interface where they can select or upload Google Drive files. Users can grant permission to access their Drive files, providing a secure and authorized way to interact with their files. - -This is particularly useful when prior tools encountered failures due to file non-existence or permission errors. Once the user completes the file picker flow, the prior tool can be retried. - -**Parameters** - -This tool does not take any parameters. - - -No additional scopes required (uses basic Google authentication). - - ---- - -## GoogleDrive.SearchFiles - -
- - -Search for files in Google Drive. The provided query should only contain the search terms; the tool will construct the full search query for you. - -**Parameters** - -- **query** (`string`, required): The search query to find files in Google Drive. Will search for filenames and file contents that match the provided query. -- **folder_path_or_id** (`string`, optional): Search only within this specific folder. Provide either a path like `folder/subfolder` or a folder ID. If None, searches across all accessible locations. Defaults to None. -- **shared_drive_id** (`string`, optional): If provided, search only within this shared drive. Defaults to None (searches My Drive and optionally all shared drives). -- **include_shared_drives** (`boolean`, optional): If True and shared_drive_id is not set, include all shared drives in search. Defaults to False (My Drive only). -- **include_organization_domain_documents** (`boolean`, optional): Whether to include documents from the organization's domain. This is applicable to admin users who have permissions to view organization-wide documents in a Google Workspace account. Defaults to False. -- **order_by** (`Enum` [OrderBy](/resources/integrations/productivity/google-drive/reference#OrderBy), optional): Sort order for search results. Defaults to listing the most recently modified documents first. If the query contains `fullText`, then the order_by will be ignored. -- **limit** (`integer`, optional): The maximum number of search results to return. Defaults to 50. -- **file_types** (`Enum` [GoogleDriveFileType](/resources/integrations/productivity/google-drive/reference#GoogleDriveFileType), optional): Filter by specific file types. Defaults to None, which includes all file types. - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDrive.CreateFolder - -
- - -Create a new folder in Google Drive. By default, parent folder paths are resolved in My Drive. For shared drives, use folder IDs or provide shared_drive_id. - -**Parameters** - -- **folder_name** (`string`, required): The name of the new folder to create. -- **parent_folder_path_or_id** (`string`, optional): The parent folder path like `folder/subfolder` or folder ID where to create. If None, creates at the root of My Drive. If providing a path, it will be resolved within My Drive by default. Do not include the folder to create in this path. Defaults to None. -- **shared_drive_id** (`string`, optional): If creating in a shared drive and using a parent folder path, provide the shared drive ID. Not needed when using folder IDs or creating in My Drive. Defaults to None. - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDrive.RenameFile - -
- - -Rename a file or folder in Google Drive. By default, paths are resolved in My Drive. For files in shared drives, either use the file ID directly or provide the shared_drive_id parameter. - -**Parameters** - -- **file_path_or_id** (`string`, required): The path like `folder/subfolder/filename` or the file ID to rename. If providing a path, it will be resolved within My Drive by default. -- **new_filename** (`string`, required): The new name for the file. -- **shared_drive_id** (`string`, optional): If the file is in a shared drive and you're using a path (not ID), provide the shared drive ID to resolve the path within that drive. Not needed when using file IDs. Defaults to None (searches My Drive). - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDrive.MoveFile - -
- - -Move a file or folder to a different folder within the same Google Drive. Can move to a folder (keeping name), or move and rename in one operation. By default, paths are resolved in My Drive. For shared drives, use file IDs or provide shared_drive_id. - -**Parameters** - -- **source_file_path_or_id** (`string`, required): The source file path like `folder/subfolder/filename` or the file ID of the file to move. If providing a path, it will be resolved within My Drive by default. -- **destination_folder_path_or_id** (`string`, required): The path to the file's parent folder (exclude the file to be moved) or parent folder ID to move the file into. -- **new_filename** (`string`, optional): Optional new name for the file after moving. If None, keeps the original name. Defaults to None. -- **shared_drive_id** (`string`, optional): If working with paths in a shared drive, provide the shared drive ID. Not needed when using IDs. Defaults to None (uses My Drive). - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDrive.DownloadFile - -
- - - - DO NOT feed this tool's response to a language model. The response is too large. Instead, let the language model select this tool, and then directly execute the tool, decode its response, and then save the contents to a local file. - - - This tool is intended to be used in conjunction with `DownloadFileChunk`. - - -Download a blob file (non-workspace file) from Google Drive as base64 encoded content. For small files (under ~5MB raw), returns the file content directly in the response as base64. For large files, returns metadata with `requires_chunked_download=True` - use `DownloadFileChunk` to retrieve the file in parts. - -**Parameters** - -- **file_path_or_id** (`string`, required): The file path like `folder/subfolder/filename` or the file ID of the file to download. Folders NOT supported. If providing a path, it will be resolved within My Drive by default. -- **shared_drive_id** (`string`, optional): If the file is in a shared drive and using a path, provide the shared drive ID. Not needed when using file IDs. Defaults to None (uses My Drive). - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDrive.DownloadFileChunk - -
- - - - DO NOT feed this tool's response to a language model. The response is too large. Instead, let the language model select this tool, and then directly execute the tool, decode its response, and then save the contents to a local file. - - - - This tool is intended to be used in conjunction with `DownloadFile`. - - -Download a specific byte range of a file from Google Drive. Use this for large files that require chunked download (when `DownloadFile` returns `requires_chunked_download=True`). Call repeatedly with increasing `start_byte` values to retrieve the complete file. - -Returns the chunk content as base64, along with progress information including whether this is the final chunk. - -**Parameters** - -- **file_path_or_id** (`string`, required): The file path like `folder/subfolder/filename` or the file ID to download a chunk from. If providing a path, it will be resolved within My Drive by default. -- **start_byte** (`integer`, required): The starting byte position for this chunk (0-indexed). -- **chunk_size** (`integer`, optional): The size of the chunk to download in bytes. Max 5MB (5242880). Defaults to 5MB (5242880). -- **shared_drive_id** (`string`, optional): If the file is in a shared drive and using a path, provide the shared drive ID. Not needed when using file IDs. Defaults to None (uses My Drive). - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDrive.UploadFile - -
- - -Upload a file to Google Drive from a URL. Fetches the file content from the provided URL and uploads it to Google Drive. Supports files of any size - uses resumable upload internally for large files. - - - This tool cannot upload Google Workspace files (Google Docs, Sheets, Slides). Only regular files are supported. - - -**Parameters** - -- **file_name** (`string`, required): The name for the uploaded file. -- **source_url** (`string`, required): The public download URL to fetch the file content from. The tool will download from this URL and upload to Google Drive. -- **mime_type** (`Enum` [UploadMimeType](/resources/integrations/productivity/google-drive/reference#UploadMimeType), optional): The file type. If not provided, will be inferred from the URL or Content-Type header. Supported: text (txt, csv, json, html, md), pdf, images (png, jpeg, gif). Defaults to None (auto-detect). -- **destination_folder_path_or_id** (`string`, optional): The folder path like `folder/subfolder` or folder ID where to upload. If None, uploads to the root of My Drive. If providing a path, it will be resolved within My Drive by default. Defaults to None. -- **shared_drive_id** (`string`, optional): If uploading to a folder in a shared drive using a path, provide the shared drive ID. Not needed when using folder IDs or uploading to My Drive. Defaults to None (My Drive). - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleDrive.ShareFile - -
- - -Share a file or folder in Google Drive with specific people by granting them permissions. If a user already has permission on the file, their role will be updated to the new role. By default, paths are resolved in My Drive. For shared drives, use file IDs or provide shared_drive_id. - -**Parameters** - -- **file_path_or_id** (`string`, required): The file path like `folder/subfolder/filename` or the file ID to share. If providing a path, it will be resolved within My Drive by default. -- **email_addresses** (`list[string]`, required): List of email addresses like `user@domain.com` to share with. -- **role** (`Enum` [PermissionRole](/resources/integrations/productivity/google-drive/reference#PermissionRole), optional): The permission role to grant. Defaults to `reader` (view-only). -- **send_notification_email** (`boolean`, optional): Whether to send an email notification to the recipients. Defaults to True. -- **message** (`string`, optional): Optional message to include in the notification email. Defaults to None. -- **shared_drive_id** (`string`, optional): If the file is in a shared drive and using a path, provide the shared drive ID. Not needed when using file IDs. Defaults to None (uses My Drive). - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## Auth - -The Arcade Google Drive MCP Server uses the [Google auth provider](/references/auth-providers/google to connect to users' Google Drive accounts. Please refer to the [Google auth provider](/references/auth-providers/google documentation to learn how to configure auth. - - diff --git a/app/en/resources/integrations/productivity/google-drive/reference/page.mdx b/app/en/resources/integrations/productivity/google-drive/reference/page.mdx deleted file mode 100644 index 6a5c66747..000000000 --- a/app/en/resources/integrations/productivity/google-drive/reference/page.mdx +++ /dev/null @@ -1,80 +0,0 @@ -# Google Drive Reference - -Below is a reference of enumerations used by some tools in the Google Drive MCP Server: - -## OrderBy - -Sort order options for listing and searching files. - -- **CREATED_TIME**: `createdTime` - When the file was created (ascending) -- **CREATED_TIME_DESC**: `createdTime desc` - When the file was created (descending) -- **FOLDER**: `folder` - The folder ID, sorted using alphabetical ordering (ascending) -- **FOLDER_DESC**: `folder desc` - The folder ID, sorted using alphabetical ordering (descending) -- **MODIFIED_BY_ME_TIME**: `modifiedByMeTime` - The last time the file was modified by the user (ascending) -- **MODIFIED_BY_ME_TIME_DESC**: `modifiedByMeTime desc` - The last time the file was modified by the user (descending) -- **MODIFIED_TIME**: `modifiedTime` - The last time the file was modified by anyone (ascending) -- **MODIFIED_TIME_DESC**: `modifiedTime desc` - The last time the file was modified by anyone (descending) -- **NAME**: `name` - The name of the file, sorted alphabetically (ascending) -- **NAME_DESC**: `name desc` - The name of the file, sorted alphabetically (descending) -- **NAME_NATURAL**: `name_natural` - The name of the file, sorted using natural sort ordering (ascending) -- **NAME_NATURAL_DESC**: `name_natural desc` - The name of the file, sorted using natural sort ordering (descending) -- **QUOTA_BYTES_USED**: `quotaBytesUsed` - The number of storage quota bytes used by the file (ascending) -- **QUOTA_BYTES_USED_DESC**: `quotaBytesUsed desc` - The number of storage quota bytes used by the file (descending) -- **RECENCY**: `recency` - The most recent timestamp from the file's date-time fields (ascending) -- **RECENCY_DESC**: `recency desc` - The most recent timestamp from the file's date-time fields (descending) -- **SHARED_WITH_ME_TIME**: `sharedWithMeTime` - When the file was shared with the user (ascending) -- **SHARED_WITH_ME_TIME_DESC**: `sharedWithMeTime desc` - When the file was shared with the user (descending) -- **STARRED**: `starred` - Whether the user has starred the file (ascending) -- **STARRED_DESC**: `starred desc` - Whether the user has starred the file (descending) -- **VIEWED_BY_ME_TIME**: `viewedByMeTime` - The last time the file was viewed by the user (ascending) -- **VIEWED_BY_ME_TIME_DESC**: `viewedByMeTime desc` - The last time the file was viewed by the user (descending) - -## GoogleDriveFileType - -File type filters for searching files. - -- **SPREADSHEET**: `spreadsheet` - Google Sheets -- **SLIDES**: `slides` - Google Slides presentations -- **DOCUMENT**: `document` - Google Docs -- **DRAWING**: `drawing` - Google Drawings -- **FORM**: `form` - Google Forms -- **FOLDER**: `folder` - Folders -- **IMAGE**: `image` - Image files (JPEG, PNG, GIF, WebP) -- **VIDEO**: `video` - Video files (MP4, MPEG, QuickTime, WebM) -- **AUDIO**: `audio` - Audio files (MP3, M4A, WAV) -- **SCRIPT**: `script` - Google Apps Script -- **SITES**: `sites` - Google Sites -- **PDF**: `pdf` - PDF documents - -## PermissionRole - -Permission roles for sharing Google Drive files and folders. - -- **READER**: `reader` - Can view and download -- **COMMENTER**: `commenter` - Can view, download, and comment -- **WRITER**: `writer` - Can view, download, comment, and edit -- **OWNER**: `owner` - Full control (transfer ownership) - -## UploadMimeType - -Supported file types for uploading to Google Drive. This tool can only upload regular files - it cannot create Google Workspace files (Google Docs, Sheets, Slides). - -### Text-based files - -- **PLAIN_TEXT**: `text/plain` - .txt files -- **CSV**: `text/csv` - .csv spreadsheet data -- **JSON**: `application/json` - .json data files -- **HTML**: `text/html` - .html web pages -- **MARKDOWN**: `text/markdown` - .md documentation - -### Documents - -- **PDF**: `application/pdf` - .pdf documents - -### Images - -- **PNG**: `image/png` - .png images -- **JPEG**: `image/jpeg` - .jpg/.jpeg images -- **GIF**: `image/gif` - .gif images -- **WEBP**: `image/webp` - .webp images -- **SVG**: `image/svg+xml` - .svg vector graphics diff --git a/app/en/resources/integrations/productivity/google-sheets/_meta.tsx b/app/en/resources/integrations/productivity/google-sheets/_meta.tsx deleted file mode 100644 index 92008123f..000000000 --- a/app/en/resources/integrations/productivity/google-sheets/_meta.tsx +++ /dev/null @@ -1,7 +0,0 @@ -const meta = { - reference: { - title: "Reference", - }, -}; - -export default meta; diff --git a/app/en/resources/integrations/productivity/google-sheets/page.mdx b/app/en/resources/integrations/productivity/google-sheets/page.mdx deleted file mode 100644 index 7ddb3ef21..000000000 --- a/app/en/resources/integrations/productivity/google-sheets/page.mdx +++ /dev/null @@ -1,453 +0,0 @@ ---- -asIndexPage: true ---- - -# Google Sheets - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import ScopePicker from "@/app/_components/scope-picker"; -import { Callout } from "nextra/components"; - - - - - -The Arcade GoogleSheets MCP Server provides a pre-built set of tools for working with Google Sheets. These tools make it easy to build agents and AI apps that can: - -- Create new spreadsheets and seed initial data. -- Search Google Drive for spreadsheets and retrieve metadata (titles, IDs, URLs; excludes trash). -- Read specific ranges from sheets. -- Write to single cells or update ranges with flexible data formats. -- Add notes to cells. -- Get detailed spreadsheet and sheet metadata (names, IDs, positions, row/column counts; metadata only). - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -Each tool requires specific Google OAuth scopes to function. You'll find the required scopes listed in a blue info box at the end of each tool's documentation below. For more information about configuring OAuth and tips for moving to production, see the [Google auth provider documentation](/references/auth-providers/google. - - - The `drive.file` scope only grants access to files that were created or opened - by your application. If you need broader access to a user's Google Drive - spreadsheets (e.g., to access spreadsheets created by other applications), - you'll need to create your own Google OAuth provider and request the - `drive.readonly` or `drive` scope. Note that these broader scopes are **not - supported** by Arcade's default Google OAuth provider. - - -## Find required scopes - -Select the tools you plan to use to see the OAuth scopes your application needs: - - - ---- - -## GoogleSheets.CreateSpreadsheet - -
- - -Create a new spreadsheet with the provided title and data in its first sheet - -**Parameters** - -- **title** (`string`, optional) The title of the new spreadsheet -- **data** (`string`, optional) The data to write to the spreadsheet. A JSON string (property names enclosed in double quotes) representing a dictionary that maps row numbers to dictionaries that map column letters to cell values. For example, data[23]['C'] would be the value of the cell in row 23, column C. Type hint: dict[int, dict[str, Union[int, float, str, bool]]] - - - `https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleSheets.WriteToCell - -
- - -Write a value to a single cell in a spreadsheet. - -**Parameters** - -- **spreadsheet_id** (`string`, required) The id of the spreadsheet to write to -- **column** (`string`, required) The column string to write to. For example, 'A', 'F', or 'AZ' -- **row** (`integer`, required) The row number to write to -- **value** (`string`, required) The value to write to the cell -- **sheet_name** (`string`, optional) The name of the sheet to write to. Defaults to 'Sheet1' - - - `https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleSheets.UpdateCells - -
- - -Write values to a Google Sheet using a flexible data format. - -**Parameters** - -- **spreadsheet_id** (`string`, required) The id of the spreadsheet to write to -- **data** (`string`, required) The data to write. A JSON string (property names enclosed in double quotes) representing a dictionary that maps row numbers to dictionaries that map column letters to cell values. For example, data[23]['C'] is the value for cell C23. This is the same format accepted by create_spreadsheet. Type hint: dict[int, dict[str, int | float | str | bool]] -- **sheet_position** (`integer`, optional) The position/tab of the sheet in the spreadsheet to write to. A value of 1 represents the first (leftmost/Sheet1) sheet. Defaults to 1. -- **sheet_id_or_name** (`string`, optional) The id or name of the sheet to write to. If provided, takes precedence over sheet_position. - - - `https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleSheets.AddNoteToCell - -
- - -Add a note to a specific cell in a spreadsheet. A note is a small - -**Parameters** - -- **spreadsheet_id** (`string`, required) The id of the spreadsheet to add a comment to -- **column** (`string`, required) The column string to add a note to. For example, 'A', 'F', or 'AZ' -- **row** (`integer`, required) The row number to add a note to -- **note_text** (`string`, required) The text for the note to add -- **sheet_position** (`integer`, optional) The position/tab of the sheet in the spreadsheet to write to. A value of 1 represents the first (leftmost/Sheet1) sheet. Defaults to 1. -- **sheet_id_or_name** (`string`, optional) The id or name of the sheet to write to. If provided, takes precedence over sheet_position. - - - `https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleSheets.SearchSpreadsheets - -
- - -Searches for spreadsheets in the user's Google Drive based on the titles and content and - -**Parameters** - -- **spreadsheet_contains** (`array[string]`, optional) Keywords or phrases that must be in the spreadsheet title. Provide a list of keywords or phrases if needed. -- **spreadsheet_not_contains** (`array[string]`, optional) Keywords or phrases that must NOT be in the spreadsheet title. Provide a list of keywords or phrases if needed. -- **search_only_in_shared_drive_id** (`string`, optional) The ID of the shared drive to restrict the search to. If provided, the search will only return spreadsheets from this drive. Defaults to None, which searches across all drives. -- **include_shared_drives** (`boolean`, optional) Whether to include spreadsheets from shared drives. Defaults to False (searches only in the user's 'My Drive'). -- **include_organization_domain_spreadsheets** (`boolean`, optional) Whether to include spreadsheets from the organization's domain. This is applicable to admin users who have permissions to view organization-wide spreadsheets in a Google Workspace account. Defaults to False. -- **order_by** (`Enum` [OrderBy](/resources/integrations/productivity/google-sheets/reference#orderby), optional) Sort order. Defaults to listing the most recently modified spreadsheets first -- **limit** (`integer`, optional) The maximum number of spreadsheets to list. Defaults to 10. Max is 50 -- **pagination_token** (`string`, optional) The pagination token to continue a previous request - - - `https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleSheets.WhoAmI - -
- - -Get comprehensive user profile and Google Sheets environment information. - -**Parameters** - -This tool does not take any parameters. - - - - `https://www.googleapis.com/auth/drive.file` - - `https://www.googleapis.com/auth/userinfo.profile` - - `https://www.googleapis.com/auth/userinfo.email` - - ---- - -## GoogleSheets.GenerateGoogleFilePickerUrl - -
- - -Generate a Google File Picker URL for user-driven file selection and authorization. - -**Parameters** - -This tool does not take any parameters. - - - No additional scopes required (uses basic Google authentication). - - ---- - -## GoogleSheets.GetSpreadsheet - -
- - -Gets the specified range of cells from a single sheet in the spreadsheet. - -**Parameters** - -- **spreadsheet_id** (`string`, required) The id of the spreadsheet to get -- **sheet_position** (`integer`, optional) The position/tab of the sheet in the spreadsheet to get. A value of 1 represents the first (leftmost/Sheet1) sheet . Defaults to 1. -- **sheet_id_or_name** (`string`, optional) The id or name of the sheet to get. Defaults to None, which means sheet_position will be used instead. -- **start_row** (`integer`, optional) Starting row number (1-indexed, defaults to 1) -- **start_col** (`string`, optional) Starting column letter(s) or 1-based column number (defaults to 'A') -- **max_rows** (`integer`, optional) Maximum number of rows to fetch for each sheet in the spreadsheet. Must be between 1 and 1000. Defaults to 1000. -- **max_cols** (`integer`, optional) Maximum number of columns to fetch for each sheet in the spreadsheet. Must be between 1 and 100. Defaults to 100. - - - `https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleSheets.GetSpreadsheetMetadata - -
- - -Gets the metadata for a spreadsheet including the metadata for the sheets in the spreadsheet. - -**Parameters** - -- **spreadsheet_id** (`string`, required) The id of the spreadsheet to get metadata for - - - `https://www.googleapis.com/auth/drive.file` - - ---- - -## Auth - -The Arcade GoogleSheets MCP Sever uses the [Google auth provider](/references/auth-providers/google to connect to users' GoogleSheets accounts. Please refer to the [Google auth provider](/references/auth-providers/google documentation to learn how to configure auth. - - diff --git a/app/en/resources/integrations/productivity/google-sheets/reference/page.mdx b/app/en/resources/integrations/productivity/google-sheets/reference/page.mdx deleted file mode 100644 index a14c73d4f..000000000 --- a/app/en/resources/integrations/productivity/google-sheets/reference/page.mdx +++ /dev/null @@ -1,30 +0,0 @@ -# GoogleSheets Reference - -Below is a reference of enumerations used by some tools in the GoogleSheets MCP Server: - -## OrderBy - -- **CREATED_TIME**: `createdTime` -- **CREATED_TIME_DESC**: `createdTime desc` -- **FOLDER**: `folder` -- **FOLDER_DESC**: `folder desc` -- **MODIFIED_BY_ME_TIME**: `modifiedByMeTime` -- **MODIFIED_BY_ME_TIME_DESC**: `modifiedByMeTime desc` -- **MODIFIED_TIME**: `modifiedTime` -- **MODIFIED_TIME_DESC**: `modifiedTime desc` -- **NAME**: `name` -- **NAME_DESC**: `name desc` -- **NAME_NATURAL**: `name_natural` -- **NAME_NATURAL_DESC**: `name_natural desc` -- **QUOTA_BYTES_USED**: `quotaBytesUsed` -- **QUOTA_BYTES_USED_DESC**: `quotaBytesUsed desc` -- **RECENCY**: `recency` -- **RECENCY_DESC**: `recency desc` -- **SHARED_WITH_ME_TIME**: `sharedWithMeTime` -- **SHARED_WITH_ME_TIME_DESC**: `sharedWithMeTime desc` -- **STARRED**: `starred` -- **STARRED_DESC**: `starred desc` -- **VIEWED_BY_ME_TIME**: `viewedByMeTime` -- **VIEWED_BY_ME_TIME_DESC**: `viewedByMeTime desc` - - diff --git a/app/en/resources/integrations/productivity/google-slides/page.mdx b/app/en/resources/integrations/productivity/google-slides/page.mdx deleted file mode 100644 index e7bc2302f..000000000 --- a/app/en/resources/integrations/productivity/google-slides/page.mdx +++ /dev/null @@ -1,400 +0,0 @@ -# Google Slides - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import ScopePicker from "@/app/_components/scope-picker"; -import { Callout } from "nextra/components"; - - - - - -The GoogleSlides MCP Server provides a set of tools for interacting with Google Slides presentations. These tools enable users and AI applications to: - -- Create new presentations and add slides. -- Comment on specific slides and list all comments in a presentation. -- Search for presentations in Google Drive. -- Retrieve and convert presentation content to markdown format. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -Each tool requires specific Google OAuth scopes to function. You'll find the required scopes listed in a blue info box at the end of each tool's documentation below. For more information about configuring OAuth and tips for moving to production, see the [Google auth provider documentation](/references/auth-providers/google. - - - The `drive.file` scope only grants access to files that were created or opened by your application. If you need broader access to a user's Google Drive presentations (e.g., to access presentations created by other applications), you'll need to create your own Google OAuth provider and request the `drive.readonly` or `drive` scope. Note that these broader scopes are **not supported** by Arcade's default Google OAuth provider. - - -## Find required scopes - -Select the tools you plan to use to see the OAuth scopes your application needs: - - - ---- - -## GoogleSlides.CommentOnPresentation - -
- - -Comment on a specific slide by its index in a Google Slides presentation. - -**Parameters** - -- **presentation_id** (`string`, required) The ID of the presentation to comment on -- **comment_text** (`string`, required) The comment to add to the slide - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleSlides.ListPresentationComments - -
- - -List all comments on the specified Google Slides presentation. - -**Parameters** - -- **presentation_id** (`string`, required) The ID of the presentation to list comments for -- **include_deleted** (`boolean`, optional) Whether to include deleted comments in the results. Defaults to False. - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleSlides.CreatePresentation - -
- - -Create a new Google Slides presentation - -**Parameters** - -- **title** (`string`, required) The title of the presentation to create -- **subtitle** (`string`, optional) The subtitle of the presentation to create - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleSlides.CreateSlide - -
- - -Create a new slide at the end of the specified presentation - -**Parameters** - -- **presentation_id** (`string`, required) The ID of the presentation to create the slide in -- **slide_title** (`string`, required) The title of the slide to create -- **slide_body** (`string`, required) The body (text) of the slide to create - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleSlides.SearchPresentations - -
- - -Searches for presentations in the user's Google Drive. - -**Parameters** - -- **presentation_contains** (`array[string]`, optional) Keywords or phrases that must be in the presentation title or content. Provide a list of keywords or phrases if needed. -- **presentation_not_contains** (`array[string]`, optional) Keywords or phrases that must NOT be in the presentation title or content. Provide a list of keywords or phrases if needed. -- **search_only_in_shared_drive_id** (`string`, optional) The ID of the shared drive to restrict the search to. If provided, the search will only return presentations from this drive. Defaults to None, which searches across all drives. -- **include_shared_drives** (`boolean`, optional) Whether to include presentations from shared drives. Defaults to False (searches only in the user's 'My Drive'). -- **include_organization_domain_presentations** (`boolean`, optional) Whether to include presentations from the organization's domain. This is applicable to admin users who have permissions to view organization-wide presentations in a Google Workspace account. Defaults to False. -- **order_by** (`Enum` OrderBy, optional) Sort order. Defaults to listing the most recently modified presentations first -- **limit** (`integer`, optional) The number of presentations to list -- **pagination_token** (`string`, optional) The pagination token to continue a previous request - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## GoogleSlides.WhoAmI - -
- - -Get comprehensive user profile and Google Slides environment information. - -**Parameters** - -This tool does not take any parameters. - - -- `https://www.googleapis.com/auth/drive.file` -- `https://www.googleapis.com/auth/userinfo.profile` -- `https://www.googleapis.com/auth/userinfo.email` - - ---- - -## GoogleSlides.GenerateGoogleFilePickerUrl - -
- - -Generate a Google File Picker URL for user-driven file selection and authorization. - -**Parameters** - -This tool does not take any parameters. - - -No additional scopes required (uses basic Google authentication). - - ---- - -## GoogleSlides.GetPresentationAsMarkdown - -
- - -Get the specified Google Slides presentation and convert it to markdown. - -**Parameters** - -- **presentation_id** (`string`, required) The ID of the presentation to retrieve. - - -`https://www.googleapis.com/auth/drive.file` - - ---- - -## Auth - -The Arcade GoogleSlides MCP Sever uses the [Google auth provider](/references/auth-providers/google to connect to users' GoogleSlides accounts. Please refer to the [Google auth provider](/references/auth-providers/google documentation to learn how to configure auth. - -## GoogleSlides Reference - -Below is a reference of enumerations used by some tools in the GoogleSlides MCP Sever: - -### OrderBy - -- **CREATED_TIME**: `createdTime` -- **CREATED_TIME_DESC**: `createdTime desc` -- **FOLDER**: `folder` -- **FOLDER_DESC**: `folder desc` -- **MODIFIED_BY_ME_TIME**: `modifiedByMeTime` -- **MODIFIED_BY_ME_TIME_DESC**: `modifiedByMeTime desc` -- **MODIFIED_TIME**: `modifiedTime` -- **MODIFIED_TIME_DESC**: `modifiedTime desc` -- **NAME**: `name` -- **NAME_DESC**: `name desc` -- **NAME_NATURAL**: `name_natural` -- **NAME_NATURAL_DESC**: `name_natural desc` -- **QUOTA_BYTES_USED**: `quotaBytesUsed` -- **QUOTA_BYTES_USED_DESC**: `quotaBytesUsed desc` -- **RECENCY**: `recency` -- **RECENCY_DESC**: `recency desc` -- **SHARED_WITH_ME_TIME**: `sharedWithMeTime` -- **SHARED_WITH_ME_TIME_DESC**: `sharedWithMeTime desc` -- **STARRED**: `starred` -- **STARRED_DESC**: `starred desc` -- **VIEWED_BY_ME_TIME**: `viewedByMeTime` -- **VIEWED_BY_ME_TIME_DESC**: `viewedByMeTime desc` - - diff --git a/app/en/resources/integrations/productivity/jira/_meta.tsx b/app/en/resources/integrations/productivity/jira/_meta.tsx deleted file mode 100644 index e480f7ced..000000000 --- a/app/en/resources/integrations/productivity/jira/_meta.tsx +++ /dev/null @@ -1,12 +0,0 @@ -import type { MetaRecord } from "nextra"; - -const meta: MetaRecord = { - reference: { - title: "Reference", - }, - "environment-variables": { - title: "Environment Variables", - }, -}; - -export default meta; diff --git a/app/en/resources/integrations/productivity/jira/environment-variables/page.mdx b/app/en/resources/integrations/productivity/jira/environment-variables/page.mdx deleted file mode 100644 index a392025af..000000000 --- a/app/en/resources/integrations/productivity/jira/environment-variables/page.mdx +++ /dev/null @@ -1,33 +0,0 @@ -import { Callout } from "nextra/components"; - -# Jira Environment Variables - -### `JIRA_MAX_CONCURRENT_REQUESTS` - -Arcade uses asynchronous calls to request Jira API endpoints. In some tools, multiple concurrent HTTP requests may be made to speed up execution. This environment variable controls the maximum number of concurrent requests to Jira API in any tool execution. - -The value must be a numeric string with an integer greater than or equal to 1. - -**Default:** `3` - - -### `JIRA_API_REQUEST_TIMEOUT` - -Controls the maximum number of seconds to wait for a response from the Jira API. This is also applied, in some cases, as a global max timeout for multiple requests that are made in a single tool execution. For instance, when a tool needs to paginate results from a given endpoint, this timeout may apply to the entire pagination process in total, not only to the individual requests. - -The value must be a numeric string with an integer greater than or equal to 1. - -**Default:** `30` - - -### `JIRA_CACHE_MAX_ITEMS` - - - The caching strategy does not involve caching Jira API responses that go into tool output, but only internal values. - - -The Arcade Jira MCP Server will cache some values that are repeatedly used in tool execution to enable better performance. This environment variable controls the maximum number of items to hold in each cache. - -The value must be a numeric string with an integer greater than or equal to 1. - -**Default:** `5000` diff --git a/app/en/resources/integrations/productivity/jira/page.mdx b/app/en/resources/integrations/productivity/jira/page.mdx deleted file mode 100644 index fc8f3f4e9..000000000 --- a/app/en/resources/integrations/productivity/jira/page.mdx +++ /dev/null @@ -1,1405 +0,0 @@ ---- -asIndexPage: true ---- - -# Jira - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Jira MCP Server provides a comprehensive set of tools for interacting with Jira, enabling users and AI applications to efficiently manage issues and projects. With this MCP Sever, you can: - -- Create, update, and search for Jira issues using various parameters. -- Retrieve detailed information about issues, projects, users, and issue types. -- Manage issue labels and attachments, including adding and removing them. -- Transition issues between different statuses and manage comments on issues. -- Browse and list available projects, priorities, and users within Jira. -- Browse and list information of available boards and sprints within a Jira cloud. - -This MCP Sever streamlines the process of issue management, making it easier to integrate Jira functionalities into applications and workflows. - - - -

- Handling multiple Atlassian Clouds -

- -A Jira user may have multiple Atlassian Clouds authorized via the same OAuth grant. In such cases, the Jira tools must be called with the `atlassian_cloud_id` argument. The [`Jira.GetAvailableAtlassianClouds`](/resources/integrations/productivity/jira#jiragetavailableatlassianclouds) tool can be used to get the available Atlassian Clouds and their IDs. - -When a tool call does not receive a value for `atlassian_cloud_id` and the user only has a single Atlassian Cloud authorized, the tool will use that. Otherwise, an error will be raised. The error will contain an additional content listing the available Atlassian Clouds and their IDs. - -Your AI Agent or AI-powered chat application can use the tool referenced above (or the exception's additional content) to guide the user into selecting the correct Atlassian Cloud. - -When the user selects an Atlassian Cloud, it may be appropriate to keep this information in the LLM's context window for subsequent tool calls, avoiding the need to ask the user multiple times. - -**_It is the job of the AI Agent or chat application to:_** - -1. Make it clear to the chat's end user which Atlassian Cloud is being used at any moment, to avoid, for example, having a Jira Issue being created in the wrong Atlassian Cloud; -1. Appropriately instruct the LLM and keep the relevant information in its context window, enabling it to correctly call the Jira tools, **especially in multi-turn conversations**. - -
- -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Jira.ListIssueTypesByProject - -
- - -Get the list of issue types (e.g. 'Task', 'Epic', etc.) available to a given project. - -**Parameters** - -- **project** (`string`, required) The project to get issue types for. Provide a project name, key, or ID. If a project name is provided, the tool will try to find a unique exact match among the available projects. -- **limit** (`integer`, optional) The maximum number of issue types to retrieve. Min of 1, max of 200. Defaults to 200. -- **offset** (`integer`, optional) The number of issue types to skip. Defaults to 0 (start from the first issue type). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetIssueTypeById - -
- - -Get the details of a Jira issue type by its ID. - -**Parameters** - -- **issue_type_id** (`string`, required) The ID of the issue type to retrieve -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetIssueById - -
- - -Get the details of a Jira issue by its ID. - -**Parameters** - -- **issue** (`string`, required) The ID or key of the issue to retrieve -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetIssuesWithoutId - -
- - -Search for Jira issues when you don't have the issue ID(s). - -**Parameters** - -- **keywords** (`string`, optional) Keywords to search for issues. Matches against the issue name, description, comments, and any custom field of type text. Defaults to None (no keywords filtering). -- **due_from** (`string`, optional) Match issues due on or after this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (no due date filtering). -- **due_until** (`string`, optional) Match issues due on or before this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (no due date filtering). -- **status** (`string`, optional) Match issues that are in this status. Provide a status name. Ex: 'To Do', 'In Progress', 'Done'. Defaults to None (any status). -- **priority** (`string`, optional) Match issues that have this priority. Provide a priority name. E.g. 'Highest'. Defaults to None (any priority). -- **assignee** (`string`, optional) Match issues that are assigned to this user. Provide the user's name or email address. Ex: 'John Doe' or 'john.doe@example.com'. Defaults to None (any assignee). -- **project** (`string`, optional) Match issues that are associated with this project. Provide the project's name, ID, or key. If a project name is provided, the tool will try to find a unique exact match among the available projects. Defaults to None (search across all projects). -- **issue_type** (`string`, optional) Match issues that are of this issue type. Provide an issue type name or ID. E.g. 'Task', 'Epic', '12345'. If a name is provided, the tool will try to find a unique exact match among the available issue types. Defaults to None (any issue type). -- **labels** (`array[string]`, optional) Match issues that are in these labels. Defaults to None (any label). -- **parent_issue** (`string`, optional) Match issues that are a child of this issue. Provide the issue's ID or key. Defaults to None (no parent issue filtering). -- **limit** (`integer`, optional) The maximum number of issues to retrieve. Min 1, max 100, default 50. -- **next_page_token** (`string`, optional) The token to use to get the next page of issues. Defaults to None (first page). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.ListIssues - -
- - -Get the issues for a given project. - -**Parameters** - -- **project** (`string`, optional) The project to get issues for. Provide a project ID, key or name. If a project is not provided and 1) the user has only one project, the tool will use that; 2) the user has multiple projects, the tool will raise an error listing the available projects to choose from. -- **limit** (`integer`, optional) The maximum number of issues to retrieve. Min 1, max 100, default 50. -- **next_page_token** (`string`, optional) The token to use to get the next page of issues. Defaults to None (first page). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.SearchIssuesWithoutJql - -
- - -Parameterized search for Jira issues (without having to provide a JQL query). - -**Parameters** - -- **keywords** (`string`, optional) Keywords to search for issues. Matches against the issue name, description, comments, and any custom field of type text. Defaults to None (no keywords filtering). -- **due_from** (`string`, optional) Match issues due on or after this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (no due date filtering). -- **due_until** (`string`, optional) Match issues due on or before this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (no due date filtering). -- **status** (`string`, optional) Match issues that are in this status. Provide a status name. Ex: 'To Do', 'In Progress', 'Done'. Defaults to None (any status). -- **priority** (`string`, optional) Match issues that have this priority. Provide a priority name. E.g. 'Highest'. Defaults to None (any priority). -- **assignee** (`string`, optional) Match issues that are assigned to this user. Provide the user's name or email address. Ex: 'John Doe' or 'john.doe@example.com'. Defaults to None (any assignee). -- **project** (`string`, optional) Match issues that are associated with this project. Provide the project's name, ID, or key. If a project name is provided, the tool will try to find a unique exact match among the available projects. Defaults to None (search across all projects). -- **issue_type** (`string`, optional) Match issues that are of this issue type. Provide an issue type name or ID. E.g. 'Task', 'Epic', '12345'. If a name is provided, the tool will try to find a unique exact match among the available issue types. Defaults to None (any issue type). -- **labels** (`array[string]`, optional) Match issues that are in these labels. Defaults to None (any label). -- **parent_issue** (`string`, optional) Match issues that are a child of this issue. Provide the issue's ID or key. Defaults to None (no parent issue filtering). -- **limit** (`integer`, optional) The maximum number of issues to retrieve. Min 1, max 100, default 50. -- **next_page_token** (`string`, optional) The token to use to get the next page of issues. Defaults to None (first page). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.SearchIssuesWithJql - -
- - -Search for Jira issues using a JQL (Jira Query Language) query. - -**Parameters** - -- **jql** (`string`, required) The JQL (Jira Query Language) query to search for issues -- **limit** (`integer`, optional) The maximum number of issues to retrieve. Min of 1, max of 100. Defaults to 50. -- **next_page_token** (`string`, optional) The token to use to get the next page of issues. Defaults to None (first page). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.CreateIssue - -
- - -Create a new Jira issue. - -**Parameters** - -- **title** (`string`, required) The title of the issue. -- **issue_type** (`string`, required) The name or ID of the issue type. If a name is provided, the tool will try to find a unique exact match among the available issue types. -- **project** (`string`, optional) The ID, key or name of the project to associate the issue with. If a name is provided, the tool will try to find a unique exact match among the available projects. Defaults to None (no project). If `project` and `parent_issue` are not provided, the tool will select the single project available. If the user has multiple, an error will be returned with the available projects to choose from. -- **due_date** (`string`, optional) The due date of the issue. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (no due date). -- **description** (`string`, optional) The description of the issue. Defaults to None (no description). -- **environment** (`string`, optional) The environment of the issue. Defaults to None (no environment). -- **labels** (`array[string]`, optional) The labels of the issue. Defaults to None (no labels). A label cannot contain spaces. If a label is provided with spaces, they will be trimmed and replaced by underscores. -- **parent_issue** (`string`, optional) The ID or key of the parent issue. Defaults to None (no parent issue). Must provide at least one of `parent_issue` or `project` arguments. -- **priority** (`string`, optional) The ID or name of the priority to use for the issue. If a name is provided, the tool will try to find a unique exact match among the available priorities. Defaults to None (the issue is created with Jira's default priority for the specified project). -- **assignee** (`string`, optional) The name, email or ID of the user to assign the issue to. If a name or email is provided, the tool will try to find a unique exact match among the available users. Defaults to None (no assignee). -- **reporter** (`string`, optional) The name, email or ID of the user who is the reporter of the issue. If a name or email is provided, the tool will try to find a unique exact match among the available users. Defaults to None (no reporter). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.AddLabelsToIssue - -
- - -Add labels to an existing Jira issue. - -**Parameters** - -- **issue** (`string`, required) The ID or key of the issue to update -- **labels** (`array[string]`, required) The labels to add to the issue. A label cannot contain spaces. If a label is provided with spaces, they will be trimmed and replaced by underscores. -- **notify_watchers** (`boolean`, optional) Whether to notify the issue's watchers. Defaults to True (notifies watchers). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.RemoveLabelsFromIssue - -
- - -Remove labels from an existing Jira issue. - -**Parameters** - -- **issue** (`string`, required) The ID or key of the issue to update -- **labels** (`array[string]`, required) The labels to remove from the issue (case-insensitive) -- **notify_watchers** (`boolean`, optional) Whether to notify the issue's watchers. Defaults to True (notifies watchers). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.UpdateIssue - -
- - -Update an existing Jira issue. - -**Parameters** - -- **issue** (`string`, required) The key or ID of the issue to update -- **title** (`string`, optional) The new issue title. Provide an empty string to clear the title. Defaults to None (does not change the title). -- **description** (`string`, optional) The new issue description. Provide an empty string to clear the description. Defaults to None (does not change the description). -- **environment** (`string`, optional) The new issue environment. Provide an empty string to clear the environment. Defaults to None (does not change the environment). -- **due_date** (`string`, optional) The new issue due date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Provide an empty string to clear the due date. Defaults to None (does not change the due date). -- **issue_type** (`string`, optional) The new issue type name or ID. If a name is provided, the tool will try to find a unique exact match among the available issue types. Defaults to None (does not change the issue type). -- **priority** (`string`, optional) The name or ID of the new issue priority. If a name is provided, the tool will try to find a unique exact match among the available priorities. Defaults to None (does not change the priority). -- **parent_issue** (`string`, optional) The ID or key of the parent issue. A parent cannot be removed by providing an empty string. It is possible to change the parent issue by providing a new issue ID or key, or to leave it unchanged. Defaults to None (does not change the parent issue). -- **assignee** (`string`, optional) The new issue assignee name, email, or ID. If a name or email is provided, the tool will try to find a unique exact match among the available users. Provide an empty string to remove the assignee. Defaults to None (does not change the assignee). -- **reporter** (`string`, optional) The new issue reporter name, email, or ID. If a name or email is provided, the tool will try to find a unique exact match among the available users. Provide an empty string to remove the reporter. Defaults to None (does not change the reporter). -- **labels** (`array[string]`, optional) The new issue labels. This argument will replace all labels with the new list. Providing an empty list will remove all labels. To add or remove a subset of labels, use the `Jira.AddLabelsToIssue` or the `Jira.RemoveLabelsFromIssue` tools. Defaults to None (does not change the labels). A label cannot contain spaces. If a label is provided with spaces, they will be trimmed and replaced by underscores. -- **notify_watchers** (`boolean`, optional) Whether to notify the issue's watchers. Defaults to True (notifies watchers). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.ListSprintsForBoards - -
- - -Retrieve sprints from Jira boards with filtering options for planning and tracking purposes. - -**Parameters** - -- **board_identifiers_list** (`array[string]`, optional) List of board names or numeric IDs (as strings) to retrieve sprints from. Include all mentioned boards in a single list for best performance. Maximum 25 boards per operation. Optional, defaults to None. -- **max_sprints_per_board** (`integer`, optional) Maximum sprints per board (1-50). Latest sprints first. Optional, defaults to 50. -- **offset** (`integer`, optional) Number of sprints to skip per board for pagination. Optional, defaults to 0. -- **state** (`Enum` [SprintState](/resources/integrations/productivity/jira/reference#SprintState), optional) Filter by sprint state. NOTE: Date filters (start_date, end_date, specific_date) have higher priority than state filtering. Use state filtering only when no date criteria is specified. For temporal queries like 'last month' or 'next week', use date parameters instead. Optional, defaults to None (all states). -- **start_date** (`string`, optional) Start date filter in YYYY-MM-DD format. Can combine with end_date. Optional, defaults to None. -- **end_date** (`string`, optional) End date filter in YYYY-MM-DD format. Can combine with start_date. Optional, defaults to None. -- **specific_date** (`string`, optional) Specific date in YYYY-MM-DD to find sprints active on that date. Cannot combine with start_date/end_date. Optional, defaults to None. -- **atlassian_cloud_id** (`string`, optional) Atlassian Cloud ID to use. Optional, defaults to None (uses single authorized cloud). - -## Jira.GetSprintIssues - -
- - -Get all issues that are currently assigned to a specific sprint with pagination support. - -**Parameters** - -- **sprint_id** (`string`, required) The numeric Jira sprint ID that identifies the sprint in Jira's API. -- **limit** (`integer`, optional) The maximum number of issues to return. Must be between 1 and 100 inclusive. Controls pagination and determines how many issues are fetched and returned. Defaults to 50 for improved performance. -- **offset** (`integer`, optional) The number of issues to skip before starting to return results. Used for pagination when the sprint has many issues. Must be 0 or greater. Defaults to 0. -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.AddIssuesToSprint - -
- - -Add a list of issues to a sprint. - -**Parameters** - -- **sprint_id** (`string`, required) The numeric Jira sprint ID that identifies the sprint in Jira's API. -- **issue_ids** (`array[string]`, required) List of issue IDs or keys to add to the sprint. Must not be empty and cannot exceed 50 issues. -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.MoveIssuesFromSprintToBacklog - -
- - -Move issues from active or future sprints back to the board's backlog. - -**Parameters** - -- **sprint_id** (`string`, required) The numeric Jira sprint ID that identifies the sprint in Jira's API. -- **issue_identifiers** (`array[string]`, required) List of issue IDs or keys to move from the sprint to the backlog. Maximum 50 issues per call. Issues will be moved back to the board's backlog. -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.ListLabels - -
- - -Get the existing labels (tags) in the user's Jira instance. - -**Parameters** - -- **limit** (`integer`, optional) The maximum number of labels to return. Min of 1, Max of 200. Defaults to 200. -- **offset** (`integer`, optional) The number of labels to skip. Defaults to 0 (starts from the first label) -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.ListUsers - -
- - -Browse users in Jira. - -**Parameters** - -- **account_type** (`string`, optional) The account type of the users to return. Defaults to 'atlassian'. Provide `None` to disable filtering by account type. The account type filter will be applied after retrieving users from Jira API, thus the tool may return less users than the limit and still have more users to paginate. Check the `pagination` key in the response dictionary. -- **limit** (`integer`, optional) The maximum number of users to return. Min of 1, max of 50. Defaults to 50. -- **offset** (`integer`, optional) The number of users to skip before starting to return users. Defaults to 0 (start from the first user). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetUserById - -
- - -Get user information by their ID. - -**Parameters** - -- **user_id** (`string`, required) The the user's ID. -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetUsersWithoutId - -
- - -Get users without their account ID, searching by display name and email address. - -**Parameters** - -- **name_or_email** (`string`, required) The user's display name or email address to search for (case-insensitive). The string can match the prefix of the user's attribute. For example, a string of 'john' will match users with a display name or email address that starts with 'john', such as 'John Doe', 'Johnson', 'john@example.com', etc. -- **enforce_exact_match** (`boolean`, optional) Whether to enforce an exact match of the name_or_email against users' display name and email attributes. Defaults to False (return all users that match the prefix). If set to True, before returning results, the tool will filter users with a display name OR email address that match exactly the value of the `name_or_email` argument. -- **limit** (`integer`, optional) The maximum number of users to return. Min of 1, max of 50. Defaults to 50. -- **offset** (`integer`, optional) The number of users to skip before starting to return users. Defaults to 0 (start from the first user). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetAvailableAtlassianClouds - -
- - -Get available Atlassian Clouds. - -**Parameters** - -This tool does not take any parameters. - -## Jira.AttachFileToIssue - -
- - -Add an attachment to an issue. - -**Parameters** - -- **issue** (`string`, required) The issue ID or key to add the attachment to -- **filename** (`string`, required) The name of the file to add as an attachment. The filename should contain the file extension (e.g. 'test.txt', 'report.pdf'), but it is not mandatory. -- **file_content_str** (`string`, optional) The string content of the file to attach. Use this if the file is a text file. Defaults to None. -- **file_content_base64** (`string`, optional) The base64-encoded binary contents of the file. Use this for binary files like images or PDFs. Defaults to None. -- **file_encoding** (`string`, optional) The encoding of the file to attach. Only used with file_content_str. Defaults to 'utf-8'. -- **file_type** (`string`, optional) The type of the file to attach. E.g. 'application/pdf', 'text', 'image/png'. If not provided, the tool will try to infer the type from the filename. If the filename is not recognized, it will attach the file without specifying a type. Defaults to None (infer from filename or attach without type). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.ListIssueAttachmentsMetadata - -
- - -Get the metadata about the files attached to an issue. - -**Parameters** - -- **issue** (`string`, required) The ID or key of the issue to retrieve -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetAttachmentMetadata - -
- - -Get the metadata of an attachment. - -**Parameters** - -- **attachment_id** (`string`, required) The ID of the attachment to retrieve -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.DownloadAttachment - -
- - -Download the contents of an attachment associated with an issue. - -**Parameters** - -- **attachment_id** (`string`, required) The ID of the attachment to download -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetTransitionById - -
- - -Get a transition by its ID. - -**Parameters** - -- **issue** (`string`, required) The ID or key of the issue -- **transition_id** (`string`, required) The ID of the transition -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetTransitionsAvailableForIssue - -
- - -Get the transitions available for an existing Jira issue. - -**Parameters** - -- **issue** (`string`, required) The ID or key of the issue -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetTransitionByStatusName - -
- - -Get a transition available for an issue by the transition name. - -**Parameters** - -- **issue** (`string`, required) The ID or key of the issue -- **transition** (`string`, required) The name of the transition status -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.TransitionIssueToNewStatus - -
- - -Transition a Jira issue to a new status. - -**Parameters** - -- **issue** (`string`, required) The ID or key of the issue -- **transition** (`string`, required) The transition to perform. Provide the transition ID or its name (case insensitive). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.WhoAmI - -
- - -Fetches the current user's profile information. - -**Parameters** - -This tool does not take any parameters. - -## Jira.ListProjects - -
- - -Browse projects available in Jira. - -**Parameters** - -- **limit** (`integer`, optional) The maximum number of projects to return. Min of 1, Max of 50. Defaults to 50. -- **offset** (`integer`, optional) The number of projects to skip. Defaults to 0 (starts from the first project) -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.SearchProjects - -
- - -Get the details of all Jira projects. - -**Parameters** - -- **keywords** (`string`, optional) The keywords to search for projects. Matches against project name and key (case insensitive). Defaults to None (no keywords filter). -- **limit** (`integer`, optional) The maximum number of projects to return. Min of 1, Max of 50. Defaults to 50. -- **offset** (`integer`, optional) The number of projects to skip. Defaults to 0 (starts from the first project) -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetProjectById - -
- - -Get the details of a Jira project by its ID or key. - -**Parameters** - -- **project** (`string`, required) The ID or key of the project to retrieve -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetBoards - -
- - -Retrieve Jira boards either by specifying their names or IDs, or get all - -**Parameters** - -- **board_identifiers_list** (`array[string]`, optional) List of board names or numeric IDs (as strings) to retrieve using pagination. Include all mentioned boards in a single list for best performance. Default None retrieves all boards. Maximum 50 boards returned per call. -- **limit** (`integer`, optional) Maximum number of boards to return (1-50). Defaults to max that is 50. -- **offset** (`integer`, optional) Number of boards to skip for pagination. Must be 0 or greater. Defaults to 0. -- **atlassian_cloud_id** (`string`, optional) Atlassian Cloud ID to use. Defaults to None (uses single authorized cloud). - -## Jira.GetBoardBacklogIssues - -
- - -Get all issues in a board's backlog with pagination support. - -**Parameters** - -- **board_id** (`string`, required) The ID of the board to retrieve backlog issues from. Must be a valid board ID that supports backlogs (typically Scrum or Kanban boards). -- **limit** (`integer`, optional) The maximum number of issues to return. Must be between 1 and 100 inclusive. Controls pagination and determines how many issues are fetched and returned. Defaults to 50 for improved performance. -- **offset** (`integer`, optional) The number of issues to skip before starting to return results. Used for pagination when the backlog has many issues. For example, offset=50 with limit=50 would return issues 51-100. Must be 0 or greater. Defaults to 0. -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetPriorityById - -
- - -Get the details of a priority by its ID. - -**Parameters** - -- **priority_id** (`string`, required) The ID of the priority to retrieve. -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.ListPrioritySchemes - -
- - -Browse the priority schemes available in Jira. - -**Parameters** - -- **scheme_name** (`string`, optional) Filter by scheme name. Defaults to None (returns all scheme names). -- **limit** (`integer`, optional) The maximum number of priority schemes to return. Min of 1, max of 50. Defaults to 50. -- **offset** (`integer`, optional) The number of priority schemes to skip. Defaults to 0 (start from the first scheme). -- **order_by** (`Enum` [PrioritySchemeOrderBy](/resources/integrations/productivity/jira/reference#PrioritySchemeOrderBy), optional) The order in which to return the priority schemes. Defaults to name ascending. -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.ListPrioritiesByScheme - -
- - -Browse the priorities associated with a priority scheme. - -**Parameters** - -- **scheme_id** (`string`, required) The ID of the priority scheme to retrieve priorities for. -- **limit** (`integer`, optional) The maximum number of priority schemes to return. Min of 1, max of 50. Defaults to 50. -- **offset** (`integer`, optional) The number of priority schemes to skip. Defaults to 0 (start from the first scheme). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.ListProjectsByScheme - -
- - -Browse the projects associated with a priority scheme. - -**Parameters** - -- **scheme_id** (`string`, required) The ID of the priority scheme to retrieve projects for. -- **project** (`string`, optional) Filter by project ID, key or name. Defaults to None (returns all projects). -- **limit** (`integer`, optional) The maximum number of projects to return. Min of 1, max of 50. Defaults to 50. -- **offset** (`integer`, optional) The number of projects to skip. Defaults to 0 (start from the first project). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.ListPrioritiesAvailableToAProject - -
- - -Browse the priorities available to be used in issues in the specified Jira project. - -**Parameters** - -- **project** (`string`, required) The ID, key or name of the project to retrieve priorities for. -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.ListPrioritiesAvailableToAnIssue - -
- - -Browse the priorities available to be used in the specified Jira issue. - -**Parameters** - -- **issue** (`string`, required) The ID or key of the issue to retrieve priorities for. -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetCommentById - -
- - -Get a comment by its ID. - -**Parameters** - -- **issue_id** (`string`, required) The ID or key of the issue to retrieve the comment from. -- **comment_id** (`string`, required) The ID of the comment to retrieve -- **include_adf_content** (`boolean`, optional) Whether to include the ADF (Atlassian Document Format) content of the comment in the response. Defaults to False (return only the HTML rendered content). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.GetIssueComments - -
- - -Get the comments of a Jira issue by its ID. - -**Parameters** - -- **issue** (`string`, required) The ID or key of the issue to retrieve -- **limit** (`integer`, optional) The maximum number of comments to retrieve. Min 1, max 100, default 100. -- **offset** (`integer`, optional) The number of comments to skip. Defaults to 0 (start from the first comment). -- **order_by** (`Enum` [IssueCommentOrderBy](/resources/integrations/productivity/jira/reference#IssueCommentOrderBy), optional) The order in which to return the comments. Defaults to 'created_date_descending' (most recent first). -- **include_adf_content** (`boolean`, optional) Whether to include the ADF (Atlassian Document Format) content of the comment in the response. Defaults to False (return only the HTML rendered content). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Jira.AddCommentToIssue - -
- - -Add a comment to a Jira issue. - -**Parameters** - -- **issue** (`string`, required) The ID or key of the issue to comment on. -- **body** (`string`, required) The body of the comment to add to the issue. -- **reply_to_comment** (`string`, optional) Quote a previous comment as a reply to it. Provide the comment's ID. Must be a comment from the same issue. Defaults to None (no quoted comment). -- **mention_users** (`array[string]`, optional) The users to mention in the comment. Provide the user display name, email address, or ID. Ex: 'John Doe' or 'john.doe@example.com'. Defaults to None (no user mentions). -- **atlassian_cloud_id** (`string`, optional) The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised. - -## Auth - -The Arcade Jira MCP Sever uses the [Atlassian auth provider](/references/auth-providers/atlassian) to connect to users' Jira accounts. Please refer to the [Atlassian auth provider](/references/auth-providers/atlassian) documentation to learn how to configure auth. - - diff --git a/app/en/resources/integrations/productivity/jira/reference/page.mdx b/app/en/resources/integrations/productivity/jira/reference/page.mdx deleted file mode 100644 index e01dea324..000000000 --- a/app/en/resources/integrations/productivity/jira/reference/page.mdx +++ /dev/null @@ -1,27 +0,0 @@ -# Jira Reference - -Below is a reference of enumerations used by some tools in the Jira MCP Server: - -## SprintState - -Sprint states are used in the `Jira.ListSprints` tool to filter sprints. The following enumeration values represent the possible states supported by the Jira API, either individually or in combination: - -- **FUTURE**: `future` -- **ACTIVE**: `active` -- **CLOSED**: `closed` -- **FUTURE_AND_ACTIVE**: `future_and_active` -- **FUTURE_AND_CLOSED**: `future_and_closed` -- **ACTIVE_AND_CLOSED**: `active_and_closed` -- **ALL**: `all` - -## PrioritySchemeOrderBy - -- **NAME_ASCENDING**: `name ascending` -- **NAME_DESCENDING**: `name descending` - -## IssueCommentOrderBy - -- **CREATED_DATE_ASCENDING**: `created_date_ascending` -- **CREATED_DATE_DESCENDING**: `created_date_descending` - - diff --git a/app/en/resources/integrations/productivity/linear/page.mdx b/app/en/resources/integrations/productivity/linear/page.mdx deleted file mode 100644 index 1634a04bf..000000000 --- a/app/en/resources/integrations/productivity/linear/page.mdx +++ /dev/null @@ -1,1707 +0,0 @@ -# Linear - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Linear MCP Server provides a comprehensive set of tools for interacting with Linear's issue tracking, project management, and team collaboration features. With this MCP Server, you can: - -- **Issues**: Create, update, search, and manage issues with full support for labels, priorities, assignments, and workflow states -- **Projects**: Create and manage projects, track milestones, and post status updates -- **Initiatives**: Manage high-level strategic goals and link projects to initiatives -- **Teams**: Access team information and member details -- **Cycles**: Work with time-boxed iterations (sprints) for organizing work -- **Comments**: Add, update, and reply to comments on issues -- **GitHub Integration**: Link GitHub PRs, commits, and issues to Linear issues -- **User Context**: Access notifications, recent activity, and authenticated user information - -## Available tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - - -Each tool includes behavior hints as defined by the [Model Context Protocol](https://modelcontextprotocol.io/specification/2025-06-18/server/tools#tool) specification. These hints are not yet supported, but we've added them to help you understand the side effects of each tool: - -- `readOnlyHint` — The tool only reads data, no modifications -- `openWorldHint` — The tool interacts with external systems (Linear's API) -- `destructiveHint` — The tool may cause irreversible changes (e.g., deletion) -- `idempotentHint` — Repeated calls with the same arguments have no additional effect - - ---- - -## User context tools - -### Linear.WhoAmI - -Get the authenticated user's profile and team memberships. - -
- - -Returns the current user's information including their name, email, organization, and the teams they belong to. - -**Parameters** - -This tool takes no parameters. - - -- `readOnlyHint: true` - Only reads user profile, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 2 API calls (viewer + viewer_teams) executed in parallel. - - ---- - -### Linear.GetNotifications - -Get the authenticated user's notifications. - -
- - -Returns notifications including issue mentions, comments, assignments, and state changes. - -**Parameters** - -- **unread_only** (`boolean`, _optional_) Only return unread notifications. Default is `False`. -- **limit** (`integer`, _optional_) Maximum number of notifications to return. Min 1, max 50. Default is 20. -- **end_cursor** (`string`, _optional_) Cursor for pagination. Use 'end_cursor' from previous response. Default is None. - - -- `readOnlyHint: true` - Only reads notifications, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1 API call. - - ---- - -### Linear.GetRecentActivity - -Get the authenticated user's recent issue activity. - -
- - -Returns issues the user has recently created or been assigned to within the specified time period. - -**Parameters** - -- **days** (`integer`, _optional_) Number of days to look back for activity. Min 1, max 90. Default is 30. -- **limit** (`integer`, _optional_) Maximum number of activities to return. Min 1, max 50. Default is 20. - - -- `readOnlyHint: true` - Only reads activity data, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 3 API calls (viewer + created issues + assigned issues) with issues - fetched in parallel. - - ---- - -## Team tools - -### Linear.GetTeam - -Get detailed information about a specific Linear team. - -
- - -Supports lookup by ID, key (like TOO, ENG), or name (with fuzzy matching). - -**Parameters** - -- **value** (`string`, **required**) The value to look up (ID, key, or name depending on lookup_by). -- **lookup_by** (`enum`, _optional_) How to look up the team. Options: `id`, `key`, `name`. Default is `id`. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept fuzzy matches above 90% confidence. Only used when lookup_by is name. Default is `False`. - - -- `readOnlyHint: true` - Only reads team data, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1-2 API calls (ID: 1 call, KEY: 1 call, NAME: 1-2 calls if fuzzy match - auto-accepts). - - ---- - -### Linear.ListTeams - -List Linear teams, optionally filtered by keywords and other criteria. - -
- - -Returns all teams when no filters provided, or filtered results when keywords or other filters are specified. - -**Parameters** - -- **keywords** (`string`, _optional_) Search keywords to match in team names. Default is None (all teams). -- **include_archived** (`boolean`, _optional_) Include archived teams in results. Default is `False`. -- **created_after** (`string`, _optional_) Filter teams created after this date in ISO format (YYYY-MM-DD). Default is None (all time). -- **limit** (`integer`, _optional_) Maximum number of teams to return. Min 1, max 50. Default is 20. -- **end_cursor** (`string`, _optional_) Cursor for pagination. Use 'end_cursor' from previous response. Default is None. - - -- `readOnlyHint: true` - Only reads team data, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1 API call. - - ---- - -## Issue tools - -### Linear.ListIssues - -List Linear issues, optionally filtered by keywords and other criteria. - -
- - -Returns all issues when no filters provided, or filtered results when keywords or other filters are specified. - -**Parameters** - -- **keywords** (`string`, _optional_) Search keywords to match in issue titles and descriptions. Default is None. -- **team** (`string`, _optional_) Filter by team name or key. Default is None (all teams). -- **state** (`string`, _optional_) Filter by workflow state name. Default is None (all states). -- **assignee** (`string`, _optional_) Filter by assignee. Use '@me' for current user. Default is None. -- **priority** (`enum`, _optional_) Filter by priority level. Options: `urgent`, `high`, `medium`, `low`, `no_priority`. Default is None. -- **label** (`string`, _optional_) Filter by label name. Default is None. -- **project** (`string`, _optional_) Filter by project name. Default is None. -- **created_after** (`string`, _optional_) Filter issues created after this date in ISO format (YYYY-MM-DD). Default is None. -- **limit** (`integer`, _optional_) Maximum number of issues to return. Min 1, max 50. Default is 20. -- **end_cursor** (`string`, _optional_) Cursor for pagination. Use 'end_cursor' from previous response. Default is None. - - -- `readOnlyHint: true` - Only reads issue data, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1 API call. - - ---- - -### Linear.GetIssue - -Get detailed information about a specific Linear issue. - -
- - -Accepts either the issue UUID or the human-readable identifier (like TOO-123). - -**Parameters** - -- **issue_id** (`string`, **required**) The Linear issue ID or identifier (like TOO-123). -- **include_comments** (`boolean`, _optional_) Include comments in the response. Default is `True`. -- **include_attachments** (`boolean`, _optional_) Include attachments in the response. Default is `True`. -- **include_relations** (`boolean`, _optional_) Include issue relations (blocks, dependencies). Default is `True`. -- **include_children** (`boolean`, _optional_) Include sub-issues in the response. Default is `True`. - - -- `readOnlyHint: true` - Only reads issue data, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1 API call. - - ---- - -### Linear.CreateIssue - -Create a new Linear issue with validation. - -
- - -All entity references (team, assignee, labels, state, project, cycle, parent) are validated before creation. If an entity is not found, suggestions are returned to help correct the input. - -**Parameters** - -- **team** (`string`, **required**) Team name, key, or ID. -- **title** (`string`, **required**) Issue title. -- **description** (`string`, _optional_) Issue description in Markdown format. Default is None. -- **assignee** (`string`, _optional_) Assignee name or email. Use '@me' for current user. Must be a team member. Default is '@me'. -- **labels_to_add** (`array`, _optional_) Labels to add by name or ID. Default is None. -- **priority** (`enum`, _optional_) Issue priority. Options: `urgent`, `high`, `medium`, `low`, `no_priority`. Default is None. -- **state** (`string`, _optional_) Initial workflow state name. Default is team's default state. -- **project** (`string`, _optional_) Project name, slug, or ID to link. Default is None. -- **cycle** (`string`, _optional_) Cycle name or number to link. Default is None. -- **parent_issue** (`string`, _optional_) Parent issue identifier to make this a sub-issue. Default is None. -- **estimate** (`integer`, _optional_) Effort estimate in points. Default is None. -- **due_date** (`string`, _optional_) Due date in YYYY-MM-DD format. Default is None. -- **attachment_url** (`string`, _optional_) URL to attach to the issue. Default is None. -- **attachment_title** (`string`, _optional_) Title for the attached URL. Default is None (URL used as title). -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept fuzzy matches above 90% confidence. Default is `False`. - - -- `readOnlyHint: false` - Creates new issue in Linear -- `destructiveHint: - false` - Additive operation, creates new resource -- `idempotentHint: false` - - Each call creates a new issue -- `openWorldHint: true` - Interacts with - Linear's external API - - - -Makes 2-5 API calls (validation + create, +1 if @me assignee, +1 if - parent_issue, +1 if attachment). - - ---- - -### Linear.UpdateIssue - -Update a Linear issue with partial updates. - -
- - -Only fields that are explicitly provided will be updated. All entity references are validated before update. - -**Parameters** - -- **issue_id** (`string`, **required**) Issue ID or identifier (like TOO-123). -- **title** (`string`, _optional_) New issue title. Only updated if provided. -- **description** (`string`, _optional_) New description in Markdown. Only updated if provided. -- **assignee** (`string`, _optional_) New assignee name or email. Use '@me' for current user. Only updated if provided. -- **labels_to_add** (`array`, _optional_) Labels to add by name or ID. Default is None. -- **labels_to_remove** (`array`, _optional_) Labels to remove by name or ID. Default is None. -- **priority** (`enum`, _optional_) New priority. Options: `urgent`, `high`, `medium`, `low`, `no_priority`. Only updated if provided. -- **state** (`string`, _optional_) New workflow state name. Only updated if provided. -- **project** (`string`, _optional_) Project to link (name, slug, or ID). Only updated if provided. -- **cycle** (`string`, _optional_) Cycle to link (name or number). Only updated if provided. -- **estimate** (`integer`, _optional_) New effort estimate in points. Only updated if provided. -- **due_date** (`string`, _optional_) New due date in YYYY-MM-DD format. Only updated if provided. -- **attachment_url** (`string`, _optional_) URL to attach to the issue. Default is None. -- **attachment_title** (`string`, _optional_) Title for the attached URL. Default is None (URL used as title). -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept fuzzy matches above 90% confidence. Default is `False`. - - -- `readOnlyHint: false` - Modifies existing issue -- `destructiveHint: false` - - Updates fields, doesn't delete -- `idempotentHint: true` - Same update with - same args = same result -- `openWorldHint: true` - Interacts with Linear's - external API - - - -Makes 2-5 API calls (issue lookup + validation, +1 if @me, +1 for update, +1 - if attachment). - - ---- - -### Linear.TransitionIssueState - -Transition a Linear issue to a new workflow state. - -
- - -The target state is validated against the team's available states. - -**Parameters** - -- **issue_id** (`string`, **required**) Issue ID or identifier (like TOO-123). -- **target_state** (`string`, **required**) Target workflow state name. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept fuzzy matches above 90% confidence. Default is `False`. - - -- `readOnlyHint: false` - Changes issue workflow state -- `destructiveHint: - false` - Updates state, doesn't delete -- `idempotentHint: true` - - Transitioning to same state = no change -- `openWorldHint: true` - Interacts - with Linear's external API - - - -Makes 2-3 API calls (1 for issue lookup, 1 for validation data, 1 for update). - - ---- - -### Linear.CreateIssueRelation - -Create a relation between two issues. - -
- - -Relation types define the relationship from the source issue's perspective: - -- `blocks`: Source issue blocks the related issue -- `blockedBy`: Source issue is blocked by the related issue -- `duplicate`: Source issue is a duplicate of the related issue -- `related`: Issues are related (bidirectional) - -**Parameters** - -- **issue** (`string`, **required**) Source issue ID or identifier. -- **related_issue** (`string`, **required**) Related issue ID or identifier. -- **relation_type** (`enum`, **required**) Type of relation to create. Options: `blocks`, `blockedBy`, `duplicate`, `related`. - - -- `readOnlyHint: false` - Creates relation between issues -- `destructiveHint: - false` - Additive operation, creates link -- `idempotentHint: true` - Creating - same relation again = no change -- `openWorldHint: true` - Interacts with - Linear's external API - - - -Makes 3 API calls (get source + related issue in parallel, create relation). - - ---- - -### Linear.ManageIssueSubscription - -Subscribe to or unsubscribe from an issue's notifications. - -
- - -**Parameters** - -- **issue** (`string`, **required**) Issue ID or identifier. -- **subscribe** (`boolean`, **required**) True to subscribe, False to unsubscribe. - - -- `readOnlyHint: false` - Modifies user's subscription state - -- `destructiveHint: false` - Toggles subscription, reversible -- `idempotentHint: - true` - Subscribing when subscribed = no change -- `openWorldHint: true` - - Interacts with Linear's external API - - - -Makes 2 API calls (get issue, subscribe/unsubscribe). - - ---- - -### Linear.ArchiveIssue - -Archive an issue. - -
- - -Archived issues are hidden from default views but can be restored. - -**Parameters** - -- **issue** (`string`, **required**) Issue ID or identifier to archive. - - -- `readOnlyHint: false` - Archives (soft-deletes) issue -- `destructiveHint: - true` - Hides issue from default views -- `idempotentHint: true` - Archiving - already-archived = no change -- `openWorldHint: true` - Interacts with Linear's - external API - - - -Makes 2 API calls (get issue, archive). - - ---- - -## Comment tools - -### Linear.ListComments - -List comments on an issue. - -
- - -Returns comments with user info, timestamps, and reply threading info. - -**Parameters** - -- **issue** (`string`, **required**) Issue ID or identifier. -- **limit** (`integer`, _optional_) Maximum number of comments to return. Min 1, max 50. Default is 20. -- **end_cursor** (`string`, _optional_) Cursor for pagination. Use 'end_cursor' from previous response. Default is None. - - -- `readOnlyHint: true` - Only reads comment data, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 2 API calls (get issue, get comments). - - ---- - -### Linear.AddComment - -Add a comment to an issue. - -
- - -**Parameters** - -- **issue** (`string`, **required**) Issue ID or identifier to comment on. -- **body** (`string`, **required**) Comment body in Markdown format. - - -- `readOnlyHint: false` - Creates new comment on issue -- `destructiveHint: - false` - Additive operation, creates new comment -- `idempotentHint: false` - - Each call creates a new comment -- `openWorldHint: true` - Interacts with - Linear's external API - - - -Makes 2 API calls (get issue, create comment). - - ---- - -### Linear.UpdateComment - -Update an existing comment. - -
- - -**Parameters** - -- **comment_id** (`string`, **required**) Comment ID to update. -- **body** (`string`, **required**) New comment body in Markdown format. - - -- `readOnlyHint: false` - Modifies existing comment -- `destructiveHint: false` -- Updates content, doesn't delete -- `idempotentHint: true` - Same update with - same args = same result -- `openWorldHint: true` - Interacts with Linear's - external API - - - -Makes 1 API call. - - ---- - -### Linear.ReplyToComment - -Reply to an existing comment on an issue. - -
- - -Creates a threaded reply to the specified parent comment. - -**Parameters** - -- **issue** (`string`, **required**) Issue ID or identifier. -- **parent_comment_id** (`string`, **required**) ID of the comment to reply to. -- **body** (`string`, **required**) Reply body in Markdown format. - - -- `readOnlyHint: false` - Creates reply to existing comment - -- `destructiveHint: false` - Additive operation, creates new reply - -- `idempotentHint: false` - Each call creates a new reply -- `openWorldHint: - true` - Interacts with Linear's external API - - - -Makes 2 API calls (get issue, create reply). - - ---- - -## Project tools - -### Linear.GetProject - -Get detailed information about a specific Linear project. - -
- - -Supports lookup by ID, slug_id, or name (with fuzzy matching for name). - -**Parameters** - -- **value** (`string`, **required**) The value to look up (ID, slug_id, or name depending on lookup_by). -- **lookup_by** (`enum`, _optional_) How to look up the project. Options: `id`, `slug_id`, `name`. Default is `id`. -- **include_milestones** (`boolean`, _optional_) Include project milestones in the response. Default is `True`. -- **include_members** (`boolean`, _optional_) Include project members in the response. Default is `True`. -- **include_issues** (`boolean`, _optional_) Include latest 10 issues (by updated_at) in the response. Default is `True`. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept fuzzy matches above 90% confidence. Only used when lookup_by is name. Default is `False`. - - -- `readOnlyHint: true` - Only reads project data, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1-2 API calls (1 for ID/slug lookup, 2 if fuzzy matching by name). - - ---- - -### Linear.ListProjects - -List Linear projects, optionally filtered by keywords and other criteria. - -
- - -Returns all projects when no filters provided, or filtered results when keywords or other filters are specified. - -**Parameters** - -- **keywords** (`string`, _optional_) Search keywords to match in project names. Default is None (all projects). -- **state** (`string`, _optional_) Filter by project state. Default is None (all states). -- **team** (`string`, _optional_) Filter by team name. Default is None (all teams). -- **created_after** (`string`, _optional_) Filter projects created after this date in ISO format (YYYY-MM-DD). Default is None (all time). -- **limit** (`integer`, _optional_) Maximum number of projects to return. Min 1, max 50. Default is 20. -- **end_cursor** (`string`, _optional_) Cursor for pagination. Use 'end_cursor' from previous response. Default is None. - - -- `readOnlyHint: true` - Only reads project data, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1 API call. - - ---- - -### Linear.GetProjectDescription - -Get a project's full description with pagination support. - -
- - -Use this tool when you need the complete description of a project that was truncated in the get_project response. Supports chunked reading for very large descriptions. - -**Parameters** - -- **project_id** (`string`, **required**) The project ID or slug_id. -- **offset** (`integer`, _optional_) Character offset to start reading from. Default is 0 (start). -- **limit** (`integer`, _optional_) Maximum characters to return. Default is 5000. - - -- `readOnlyHint: true` - Only reads description, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1 API call. - - ---- - -### Linear.CreateProject - -Create a new Linear project. - -
- - -Team is validated before creation. If team is not found, suggestions are returned to help correct the input. Lead is validated if provided. - -**Parameters** - -- **name** (`string`, **required**) Project name. -- **team** (`string`, **required**) Team name, key, or ID to associate the project with. -- **description** (`string`, _optional_) Project description in Markdown format. Default is None. -- **state** (`enum`, _optional_) Initial project state. Options: `planned`, `started`, `paused`, `completed`, `canceled`. Default is None (uses Linear default). -- **lead** (`string`, _optional_) Project lead name or email. Must be a workspace member. Default is None. -- **start_date** (`string`, _optional_) Project start date in YYYY-MM-DD format. Default is None. -- **target_date** (`string`, _optional_) Target completion date in YYYY-MM-DD format. Default is None. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept fuzzy matches above 90% confidence. Default is `False`. - - -- `readOnlyHint: false` - Creates new project in Linear -- `destructiveHint: - false` - Additive operation, creates new resource -- `idempotentHint: false` - - Each call creates a new project -- `openWorldHint: true` - Interacts with - Linear's external API - - - -Makes 2 API calls (1 for validation data, 1 for creation). - - ---- - -### Linear.UpdateProject - -Update a Linear project with partial updates. - -
- - -Only fields that are explicitly provided will be updated. All entity references are validated before update. - -**Parameters** - -- **project_id** (`string`, **required**) Project ID or slug_id. -- **name** (`string`, _optional_) New project name. Only updated if provided. -- **description** (`string`, _optional_) New project description in Markdown format. Only updated if provided. -- **state** (`enum`, _optional_) New project state. Options: `planned`, `started`, `paused`, `completed`, `canceled`. Only updated if provided. -- **lead** (`string`, _optional_) New project lead name or email. Only updated if provided. -- **start_date** (`string`, _optional_) New start date in YYYY-MM-DD format. Only updated if provided. -- **target_date** (`string`, _optional_) New target date in YYYY-MM-DD format. Only updated if provided. -- **teams_to_add** (`array`, _optional_) Team names, keys, or IDs to add to the project. Only updated if provided. -- **teams_to_remove** (`array`, _optional_) Team names, keys, or IDs to remove from the project. Only updated if provided. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept fuzzy matches above 90% confidence. Default is `False`. - - -- `readOnlyHint: false` - Modifies existing project -- `destructiveHint: false` -- Updates fields, doesn't delete -- `idempotentHint: true` - Same update with - same args = same result -- `openWorldHint: true` - Interacts with Linear's - external API - - - -Makes 1-3 API calls (1 for update, +1-2 if resolving lead/team). - - ---- - -### Linear.CreateProjectUpdate - -Create a project status update. - -
- - -Project updates are posts that communicate progress, blockers, or status changes to stakeholders. They appear in the project's Updates tab and can include a health status indicator. - -**Parameters** - -- **project_id** (`string`, **required**) The project ID to create an update for. -- **body** (`string`, **required**) The update content in Markdown format. -- **health** (`enum`, _optional_) Project health status. Options: `onTrack`, `atRisk`, `offTrack`. Default is None (no change). - - -- `readOnlyHint: false` - Creates status update post -- `destructiveHint: - false` - Additive operation, creates new update -- `idempotentHint: false` - - Each call creates a new update -- `openWorldHint: true` - Interacts with - Linear's external API - - - -Makes 1 API call. - - ---- - -### Linear.ArchiveProject - -Archive a project. - -
- - -Archived projects are hidden from default views but can be restored. - -**Parameters** - -- **project** (`string`, **required**) Project ID, slug_id, or name to archive. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept fuzzy matches above 90% confidence. Default is `False`. - - -- `readOnlyHint: false` - Archives (soft-deletes) project -- `destructiveHint: - true` - Hides project from default views -- `idempotentHint: true` - Archiving - already-archived = no change -- `openWorldHint: true` - Interacts with Linear's - external API - - - -Makes 2 API calls (get project, archive). - - ---- - -## Initiative tools - -### Linear.GetInitiative - -Get detailed information about a specific Linear initiative. - -
- - -Supports lookup by ID or name (with fuzzy matching for name). - -**Parameters** - -- **value** (`string`, **required**) The value to look up (ID or name depending on lookup_by). -- **lookup_by** (`enum`, _optional_) How to look up the initiative. Options: `id`, `name`. Default is `id`. -- **include_projects** (`boolean`, _optional_) Include linked projects in the response. Default is `True`. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept fuzzy matches above 90% confidence. Only used when lookup_by is name. Default is `False`. - - -- `readOnlyHint: true` - Only reads initiative data, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1-2 API calls (1 for ID lookup, 2 if fuzzy matching by name). - - ---- - -### Linear.ListInitiatives - -List Linear initiatives, optionally filtered by keywords and other criteria. - -
- - -Returns all initiatives when no filters provided, or filtered results when keywords or other filters are specified. - -**Parameters** - -- **keywords** (`string`, _optional_) Search keywords to match in initiative names. Default is None (all initiatives). -- **state** (`enum`, _optional_) Filter by initiative state. Options: `planned`, `started`, `paused`, `completed`. Default is None (all states). -- **limit** (`integer`, _optional_) Maximum number of initiatives to return. Min 1, max 50. Default is 20. -- **end_cursor** (`string`, _optional_) Cursor for pagination. Use 'end_cursor' from previous response. Default is None. - - -- `readOnlyHint: true` - Only reads initiative data, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1 API call. - - ---- - -### Linear.GetInitiativeDescription - -Get an initiative's full description with pagination support. - -
- - -Use this tool when you need the complete description of an initiative that was truncated in the get_initiative response. Supports chunked reading for very large descriptions. - -**Parameters** - -- **initiative_id** (`string`, **required**) The initiative ID. -- **offset** (`integer`, _optional_) Character offset to start reading from. Default is 0 (start). -- **limit** (`integer`, _optional_) Maximum characters to return. Default is 5000. - - -- `readOnlyHint: true` - Only reads description, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1 API call. - - ---- - -### Linear.CreateInitiative - -Create a new Linear initiative. - -
- - -Initiatives are high-level strategic goals that group related projects. - -**Parameters** - -- **name** (`string`, **required**) Initiative name. -- **description** (`string`, _optional_) Initiative description in Markdown format. Default is None. -- **status** (`enum`, _optional_) Initial initiative status. Options: `planned`, `started`, `paused`, `completed`. Default is None (uses Linear default). -- **target_date** (`string`, _optional_) Target completion date in YYYY-MM-DD format. Default is None. - - -- `readOnlyHint: false` - Creates new initiative in Linear -- `destructiveHint: - false` - Additive operation, creates new resource -- `idempotentHint: false` - - Each call creates a new initiative -- `openWorldHint: true` - Interacts with - Linear's external API - - - -Makes 1 API call. - - ---- - -### Linear.UpdateInitiative - -Update a Linear initiative with partial updates. - -
- - -Only fields that are explicitly provided will be updated. - -**Parameters** - -- **initiative_id** (`string`, **required**) Initiative ID. -- **name** (`string`, _optional_) New initiative name. Only updated if provided. -- **description** (`string`, _optional_) New initiative description in Markdown format. Only updated if provided. -- **status** (`enum`, _optional_) New initiative status. Options: `planned`, `started`, `paused`, `completed`. Only updated if provided. -- **target_date** (`string`, _optional_) New target date in YYYY-MM-DD format. Only updated if provided. - - -- `readOnlyHint: false` - Modifies existing initiative -- `destructiveHint: - false` - Updates fields, doesn't delete -- `idempotentHint: true` - Same update - with same args = same result -- `openWorldHint: true` - Interacts with Linear's - external API - - - -Makes 1 API call. - - ---- - -### Linear.AddProjectToInitiative - -Link a project to an initiative. - -
- - -Both initiative and project can be specified by ID or name. If a name is provided, fuzzy matching is used to resolve it. - -**Parameters** - -- **initiative** (`string`, **required**) Initiative ID or name to link the project to. -- **project** (`string`, **required**) Project ID or name to link. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept fuzzy matches above 90% confidence. Default is `False`. - - -- `readOnlyHint: false` - Creates link between project and initiative - -- `destructiveHint: false` - Additive operation, creates association - -- `idempotentHint: true` - Linking same project again = no change - -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 3 API calls (initiatives query, projects query, - initiativeToProjectCreate mutation). - - ---- - -### Linear.ArchiveInitiative - -Archive an initiative. - -
- - -Archived initiatives are hidden from default views but can be restored. - -**Parameters** - -- **initiative** (`string`, **required**) Initiative ID or name to archive. -- **auto_accept_matches** (`boolean`, _optional_) Auto-accept fuzzy matches above 90% confidence. Default is `False`. - - -- `readOnlyHint: false` - Archives (soft-deletes) initiative - -- `destructiveHint: true` - Hides initiative from default views - -- `idempotentHint: true` - Archiving already-archived = no change - -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 2 API calls (get initiative, archive). - - ---- - -## Cycle tools - -### Linear.GetCycle - -Get detailed information about a specific Linear cycle. - -
- - -**Parameters** - -- **cycle_id** (`string`, **required**) The cycle ID. - - -- `readOnlyHint: true` - Only reads cycle data, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1 API call. - - ---- - -### Linear.ListCycles - -List Linear cycles, optionally filtered by team and status. - -
- - -Cycles are time-boxed iterations (like sprints) for organizing work. - -**Parameters** - -- **team** (`string`, _optional_) Filter by team ID or key. Default is None (all teams). -- **active_only** (`boolean`, _optional_) Only return currently active cycles. Default is `False`. -- **include_completed** (`boolean`, _optional_) Include completed cycles. Default is `True`. -- **limit** (`integer`, _optional_) Maximum number of cycles to return. Min 1, max 50. Default is 20. -- **end_cursor** (`string`, _optional_) Cursor for pagination. Use 'end_cursor' from previous response. Default is None. - - -- `readOnlyHint: true` - Only reads cycle data, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1-2 API calls (1 for cycles, +1 if team filter provided to resolve team - ID). - - ---- - -## Metadata tools - -### Linear.ListLabels - -List available issue labels in the workspace. - -
- - -Returns labels that can be applied to issues. Use label IDs or names when creating or updating issues. - -**Parameters** - -- **limit** (`integer`, _optional_) Maximum number of labels to return. Min 1, max 100. Default is 50. - - -- `readOnlyHint: true` - Only reads label data, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1 API call. - - ---- - -### Linear.ListWorkflowStates - -List available workflow states in the workspace. - -
- - -Returns workflow states that can be used for issue transitions. States are team-specific and have different types. - -**Parameters** - -- **team** (`string`, _optional_) Filter by team name or key. Default is None (all teams). -- **state_type** (`enum`, _optional_) Filter by state type. Options: `triage`, `backlog`, `unstarted`, `started`, `completed`, `canceled`. Default is None (all types). -- **limit** (`integer`, _optional_) Maximum number of states to return. Min 1, max 100. Default is 50. - - -- `readOnlyHint: true` - Only reads workflow state data, no modifications -- `openWorldHint: true` - Interacts with Linear's external API - - - -Makes 1 API call. - - ---- - -## GitHub integration tools - -### Linear.LinkGithubToIssue - -Link a GitHub PR, commit, or issue to a Linear issue. - -
- - -Automatically detects the artifact type from the URL and generates an appropriate title if not provided. - -**Parameters** - -- **issue** (`string`, **required**) Issue ID or identifier to link to. -- **github_url** (`string`, **required**) GitHub URL to link (PR, commit, or issue). -- **title** (`string`, _optional_) Custom title for the link. If not provided, auto-generated from URL. - - -- `readOnlyHint: false` - Attaches GitHub link to issue -- `destructiveHint: - false` - Additive operation, creates attachment -- `idempotentHint: true` - - Linking same URL again = no change -- `openWorldHint: true` - Interacts with - Linear's external API - - - -Makes 2 API calls (get issue, link URL). - - ---- - -## Auth - -The Arcade Linear MCP Server uses the [Linear auth provider](/references/auth-providers/linear) to connect to users' Linear accounts. Please refer to the [Linear auth provider](/references/auth-providers/linear) documentation to learn how to configure auth. - - diff --git a/app/en/resources/integrations/productivity/luma-api/page.mdx b/app/en/resources/integrations/productivity/luma-api/page.mdx deleted file mode 100644 index 5434adbd6..000000000 --- a/app/en/resources/integrations/productivity/luma-api/page.mdx +++ /dev/null @@ -1,1313 +0,0 @@ -# LumaApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The LumaApi MCP Server offers a comprehensive suite of tools for managing events and calendars within the Luma platform. Users can efficiently perform actions such as: - -- Create, update, and manage events, including scheduling and ticketing. -- Retrieve detailed information about events, guests, and users. -- Manage guest statuses and send invitations via email and SMS. -- Handle coupons and membership tiers for events and calendars. -- Import contacts and apply tags to organize attendees effectively. - -This server is designed to streamline event management and enhance user engagement through its robust API capabilities. - -## Authentication - -The Arcade Luma API MCP Server requires one environment variable to authenticate with the [Luma API](https://docs.luma.com/reference/getting-started-with-your-api): - -- `LUMA_API_KEY` - -**How to obtain your credentials:** - -1. Navigate to your [Luma dashboard](https://lu.ma/) -2. Click on your profile icon and go to **Settings** -3. Navigate to **API** or **Developer Settings** -4. Click **Generate API Key** or **Create New Key** -5. Copy the API key and store it securely - - - The Luma API requires a **Luma Plus** subscription. Be careful with your API - key since it provides full access to your Luma account. - - -For more details, see the [Luma API Getting Started guide](https://docs.luma.com/reference/getting-started-with-your-api). - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## LumaApi.GetEventAdminInfo - -
- - -Retrieve admin information for an accessible event. - -**Parameters** - -- **event_api_id** (`string`, optional) Event API ID, starting with 'evt-', used to identify the event. -- **event_id** (`string`, optional) The unique identifier for the event, usually starts with 'evt-'. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.ListLumaCalendarEvents - -
- - -Retrieve all events managed by your Luma Calendar. - -**Parameters** - -- **event_sort_direction** (`string`, optional) Defines the order of events. Use 'asc' or 'desc' for ascending or descending. Options 'asc nulls last' and 'desc nulls last' place nulls at the end. -- **filter_events_before** (`string`, optional) Filter events to show only those happening before this ISO 8601 Datetime. Example: 2022-10-19T03:27:13.673Z -- **number_of_items_to_return** (`number`, optional) The number of events to return. The server enforces a maximum limit. -- **pagination_cursor** (`string`, optional) Use the `next_cursor` value from a previous request to continue listing events. -- **sort_by_column** (`string`, optional) Specify the column to sort events by. For now, 'start_at' is the available option. -- **start_date_after** (`string`, optional) Specify the starting datetime to filter events after this timestamp in ISO 8601 format (e.g., 2022-10-19T03:27:13.673Z). - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.GetEventGuest - -
- - -Retrieve event guest details using their ID. - -**Parameters** - -- **event_api_id** (`string`, optional) Provide the unique API ID for the event to retrieve guest details. -- **event_identifier** (`string`, optional) The ID of the event, typically starting with 'evt-'. Used to identify the specific event. -- **guest_api_id** (`string`, optional) The unique API ID of the guest, distinct from the user ID. This is used for identifying the guest within the system. -- **guest_email** (`string`, optional) The email address of the event guest to look up. -- **guest_identifier** (`string`, optional) Identifier for looking up the guest, such as guest ID (gst-), ticket key, guest key (g-), or the user's email. -- **proxy_key** (`string`, optional) Value of the `pk` parameter from the check-in QR code used to identify the guest. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.GetEventGuests - -
- - -Retrieve registered or invited guests for an event. - -**Parameters** - -- **event_api_id** (`string`, optional) The unique ID of the event, typically starting with 'evt-'. -- **event_id** (`string`, optional) The unique identifier for the event, usually starts with 'evt-'. -- **guest_approval_status** (`string`, optional) Filter guests by their approval status. Options: 'approved', 'session', 'pending_approval', 'invited', 'declined', 'waitlist'. -- **guest_sort_column** (`string`, optional) The column to sort the guest list by. Options are 'name', 'email', 'created_at', 'registered_at', or 'checked_in_at'. -- **items_to_return** (`number`, optional) Specify the number of guest entries to return. The server enforces a maximum limit. -- **next_cursor_value** (`string`, optional) Value of `next_cursor` from a previous request to paginate through results. -- **sort_order** (`string`, optional) Specify the order for sorting the list of guests. Acceptable values are 'asc', 'desc', 'asc nulls last', or 'desc nulls last'. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.GetUserInfo - -
- - -Retrieve the user's personal information and profile details. - -**Parameters** - -This tool does not take any parameters. -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.ListPersonTags - -
- - -Retrieve a list of tags associated with persons. - -**Parameters** - -- **items_to_return** (`number`, optional) Specify the number of tags to return. The server will impose a maximum limit. -- **pagination_cursor** (`string`, optional) Use the `next_cursor` value from a previous response to paginate results. -- **sort_by_column** (`string`, optional) Specifies the column to sort the tags by. Options are 'name', 'color', or 'created_at'. -- **sorting_direction** (`string`, optional) Specifies the order direction of the person tags. Choose from 'asc', 'desc', 'asc nulls last', or 'desc nulls last'. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.LumaEntityLookup - -
- - -Lookup an entity on Luma by its slug. - -**Parameters** - -- **entity_slug** (`string`, required) The unique string identifier for the entity to be looked up in Luma. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.CheckEventExistence - -
- - -Determine if an event exists on the calendar. - -**Parameters** - -- **calendar_platform_type** (`string`, optional) Specifies the source platform of the event, either 'external' or 'luma'. -- **event_details_url** (`string`, optional) The URL of the event page to check if it exists in the calendar. -- **event_identifier** (`string`, optional) A unique string identifier for the event to check its existence on the calendar. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.ListPeople - -
- - -Retrieve a list of people from the calendar. - -**Parameters** - -- **calendar_membership_status** (`string`, optional) Specify the membership status for filtering calendar members. This is only relevant for calendar memberships. -- **calendar_membership_tier_api_id** (`string`, optional) A unique identifier for the calendar membership tier to filter people. -- **calendar_tier_id** (`string`, optional) Unique identifier for the calendar membership tier to filter people. -- **filter_by_tags** (`string`, optional) Comma-separated list of tag names or IDs to filter people with specified tags. -- **items_to_return** (`number`, optional) Specify the number of items to return in the response. The server may enforce a maximum limit. -- **pagination_next_cursor** (`string`, optional) Provide the `next_cursor` value from a previous request to continue pagination. -- **search_query** (`string`, optional) Search for people using names or emails. -- **sort_by_column** (`string`, optional) Sort the list of people by a specified column: created_at, event_checked_in_count, event_approved_count, name, or revenue_usd_cents. -- **sort_order** (`string`, optional) Specifies the order for sorting results: 'asc', 'desc', 'asc nulls last', or 'desc nulls last'. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.ListEventCoupons - -
- - -Retrieve all coupons created for an event. - -**Parameters** - -- **event_api_id** (`string`, optional) The unique identifier for the event, typically starting with 'evt-'. Required to list coupons for the specified event. -- **event_identifier** (`string`, optional) Event ID, typically starting with 'evt-'. It identifies the specific event for which to list coupons. -- **item_return_limit** (`number`, optional) Specifies the number of items to return in the response, up to the server's maximum allowed. -- **pagination_cursor** (`string`, optional) Value of `next_cursor` from a previous request to continue pagination. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.ListCalendarCoupons - -
- - -Retrieve all coupons for a calendar. - -**Parameters** - -- **items_to_return** (`number`, optional) The number of coupon items to retrieve. The server enforces a maximum limit. -- **pagination_cursor** (`string`, optional) Provide the `next_cursor` value obtained from a prior request to paginate through results. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.ListEventTicketTypes - -
- - -Retrieve a list of all ticket types for an event. - -**Parameters** - -- **event_id** (`string`, optional) The unique identifier for an event, typically starting with 'evt-'. -- **event_identifier** (`string`, optional) The unique identifier for the event, usually starting with evt-. -- **include_hidden_ticket_types** (`string`, optional) Set to true to include hidden ticket types in the response list. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.GetTicketTypeById - -
- - -Retrieve event ticket type details by ID. - -**Parameters** - -- **event_ticket_type_api_id** (`string`, optional) The unique API ID for the event ticket type. It must be provided to retrieve ticket information. -- **ticket_type_id** (`string`, optional) The ID of the ticket type to retrieve, typically starts with 'ett-'. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.ListMembershipTiers - -
- - -Retrieve available membership tiers for the calendar. - -**Parameters** - -- **items_to_return_count** (`number`, optional) Specify the number of membership tiers to return. The server may enforce a maximum limit. -- **previous_request_next_cursor** (`string`, optional) The `next_cursor` value from a prior request for fetching subsequent data. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.CreateEvent - -
- - -Creates and schedules a new event. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.UpdateEvent - -
- - -Update event details using Luma's API. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.UpdateGuestStatus - -
- - -Updates the status of an event guest. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.SendGuestEventInvite - -
- - -Send event invitations to guests via email and SMS. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.AddEventGuests - -
- - -Add guests to an event with default or custom tickets. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.AddEventHost - -
- - -Add a host to an event in Luma. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.CreateEventCoupon - -
- - -Create a non-editable coupon for event registration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.ModifyCoupon - -
- - -Update a coupon's details in the system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.GenerateEventCoupon - -
- - -Create a coupon for calendar-managed events. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.UpdateCoupon - -
- - -Updates a coupon in the calendar. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.ImportPeopleToCalendar - -
- - -Import people to your calendar from contact lists. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.CreatePersonTag - -
- - -Create a new person tag in the calendar system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.UpdatePersonTag - -
- - -Updates a tag for a person in the calendar system. - -**Parameters** - -- **person_tag_api_id** (`string`, required) The unique identifier for the tag to be updated. It is required to identify which tag needs modification. -- **tag_color** (`string`, optional) Specify the color to be assigned to the person's tag. Choose from: cranberry, barney, red, green, blue, purple, yellow, orange. -- **tag_name** (`string`, optional) The new name for the tag to be updated. It should be descriptive and relevant to the person's role or status. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.DeletePersonTag - -
- - -Deletes a person tag from the calendar. - -**Parameters** - -- **tag_identifier** (`string`, required) The unique identifier of the person tag to be deleted. It should match the tag's API ID. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.ApplyTagToCalendarMembers - -
- - -Apply a tag to existing calendar members. - -**Parameters** - -- **tag_identifier** (`string`, required) The Tag API ID (e.g., 'tag-123') or tag name to be applied to calendar members. -- **email_addresses** (`array[string]`, optional) Array of email addresses to apply the tag to existing calendar members. -- **user_api_ids_to_tag** (`array[string]`, optional) Array of user API IDs to apply the tag to. Each ID corresponds to a calendar member. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.RemoveTagFromCalendarMembers - -
- - -Remove a tag from existing calendar members. - -**Parameters** - -- **tag_identifier** (`string`, required) The ID or name of the tag to remove from calendar members, such as 'tag-123' or 'Birthday'. -- **email_addresses_to_remove_tag** (`array[string]`, optional) Array of email addresses to remove the tag from the calendar members. -- **user_api_ids_to_remove_tag** (`array[string]`, optional) Array of user API IDs from which to remove the specified tag. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.AddEventToLumaCalendar - -
- - -Add an existing event to the Luma calendar. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.GenerateUploadUrl - -
- - -Generates a URL for image upload. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.CreateEventTicketType - -
- - -Create a new ticket type for an event. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.UpdateTicketTypeConfiguration - -
- - -Update an existing ticket type configuration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.SoftDeleteTicketType - -
- - -Soft delete a ticket type if certain conditions are met. - -**Parameters** - -- **event_ticket_type_id** (`string`, required) The ID of the event ticket type to be soft deleted. Ensure no tickets are sold, and it's not the last visible type before deletion. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.AddUserToMembershipTier - -
- - -Add a user to a specified free membership tier. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## LumaApi.UpdateMembershipStatus - -
- - -Update a member's membership status and handle payments. - -**Parameters** - -- **membership_status** (`string`, required) Set the membership status to either 'approved' to capture payment or 'declined' to cancel the subscription. -- **user_identifier** (`string`, required) User ID (e.g., 'usr-xxx') or email address to identify the member whose status is to be updated. - -**Secrets** - -This tool requires the following secrets: `LUMA_API_KEY`. You can obtain this from your [Luma dashboard](https://lu.ma/). See the [Authentication section](#authentication) above for detailed instructions and the [Luma API documentation](https://docs.luma.com/reference/getting-started-with-your-api) for more information. - -## Reference - -Below is a reference of enumerations used by some of the tools in the LumaApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - diff --git a/app/en/resources/integrations/productivity/mailchimp-marketing-api/page.mdx b/app/en/resources/integrations/productivity/mailchimp-marketing-api/page.mdx deleted file mode 100644 index 240d9151e..000000000 --- a/app/en/resources/integrations/productivity/mailchimp-marketing-api/page.mdx +++ /dev/null @@ -1,7252 +0,0 @@ -# MailchimpMarketingApi -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The Mailchimp Marketing API MCP Server offers a comprehensive suite of tools for managing and optimizing email marketing campaigns. Users can leverage these tools to: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your - own tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## MailchimpMarketingApi.GetMailchimpApiResources - -
- - -Retrieve all available Mailchimp API resource links. - -**Parameters** - -- **exclude_fields** (`string`, optional) A comma-separated list of fields to exclude using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return, using dot notation for sub-object parameters. - - -## MailchimpMarketingApi.GetChimpChatterActivity - -
- - -Retrieve the latest Chimp Chatter activity for your account. - -**Parameters** - -- **number_of_records_to_return** (`string`, optional) Specify the number of Chimp Chatter records to return. Default is 10, maximum is 1000. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.GetMailchimpAccountExports - -
- - -Retrieve a list of account exports in Mailchimp. - -**Parameters** - -- **fields_to_exclude** (`string`, optional) A comma-separated list of fields to exclude. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return in the response. Use dot notation for nested fields. -- **number_of_records** (`string`, optional) Specify the number of records to return. Defaults to 10, maximum is 1000. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0, used to manage data retrieval position. - - -## MailchimpMarketingApi.CreateMailchimpAccountExport - -
- - -Create a new account export in your Mailchimp account. - -**Parameters** - -- **include_export_stages** (`array[string]`, required) Array of export stages to include in the account export. -- **export_starting_date** (`string`, optional) An ISO 8601 date to limit export to records created after this time. Excludes audiences. - - -## MailchimpMarketingApi.GetAccountExportInfo - -
- - -Get information about a specific account export. - -**Parameters** - -- **account_export_id** (`string`, required) The unique ID for the account export. Required to retrieve specific export details. -- **fields_to_exclude** (`string`, optional) A comma-separated list of fields to exclude. Use dot notation for sub-objects. -- **include_fields** (`string`, optional) Comma-separated list of fields to include in the response, using dot notation for sub-objects. - - -## MailchimpMarketingApi.GetAudienceContacts - -
- - -Retrieve all audience information from the account. - -**Parameters** - -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters. -- **include_fields** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object parameters. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **records_to_return** (`string`, optional) The number of audience records to return, ranging from 1 to 1000. Default is 10. - - -## MailchimpMarketingApi.GetAudienceInfo - -
- - -Retrieve information about a specific audience. - -**Parameters** - -- **audience_id** (`string`, required) The unique ID of the audience to retrieve information for. -- **exclude_fields_list** (`string`, optional) A list of fields to exclude from the response, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.RetrieveAudienceContactList - -
- - -Retrieve contacts for a specific marketing audience. - -**Parameters** - -- **audience_id** (`string`, required) The unique identifier for the specific audience to retrieve contacts. Ensure this ID corresponds to an existing audience. -- **created_before_datetime** (`string`, optional) Restricts the response to contacts created at or before the specified time. Use ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00. -- **created_since** (`string`, optional) Restrict contacts to those created after this timestamp (exclusive). Use ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00. -- **exclude_fields_list** (`string`, optional) Comma-separated fields to exclude from the response, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to include in the response, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) Specifies how many records to return, from 10 to 1000. -- **pagination_cursor** (`string`, optional) Paginate through records using a `next_cursor` from a previous request. By default, fetches the first page. -- **restrict_by_update_date_before** (`string`, optional) Restricts the response to contacts updated at or before the specified date and time, using ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00. -- **updated_since** (`string`, optional) Restrict response to contacts updated after this time using ISO 8601 format (exclusive). - - -## MailchimpMarketingApi.CreateAudienceContact - -
- - -Create a new omni-channel contact for an audience. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **audience_unique_id** (`string`, optional) The unique identifier for the audience in Mailchimp where the contact will be added. This ID is necessary to specify the target audience for the new contact. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **merge_field_validation_mode** (`string`, optional) Choose 'ignore_required_checks' to skip validation on required merge fields, or 'strict' to enforce validation. Defaults to 'strict' if not set. Only used when mode is 'execute'. -- **data_processing_mode** (`string`, optional) Selects the data processing mode: 'historical' mode skips automations and webhooks, 'live' mode triggers them. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.RetrieveAudienceContact - -
- - -Retrieve a specific omni-channel contact in an audience. - -**Parameters** - -- **audience_unique_id** (`string`, required) The unique ID for the audience to retrieve the contact from. -- **unique_contact_identifier** (`string`, required) A unique identifier for the contact, either a Mailchimp contact ID or a channel hash. Format: email:[md5_hash] for emails or sms:[sha256_hash] for phone numbers. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude, using dot notation for sub-objects, when retrieving contact details. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return, using dot notation for sub-objects. - - -## MailchimpMarketingApi.UpdateContactInformation - -
- - -Update information for an existing contact. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **audience_id** (`string`, optional) The unique ID for the audience to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **contact_id** (`string`, optional) The unique ID for the contact to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **merge_field_validation_mode** (`string`, optional) Specifies how merge field validation is handled. Options: `ignore_required_checks` (no error if fields missing), `strict` (errors if required fields not provided). Default is `strict`. Only used when mode is 'execute'. -- **data_processing_mode** (`string`, optional) Specify `historical` to prevent triggering automations/webhooks, or `live` to trigger them for contact data changes. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.ArchiveContactMailchimp - -
- - -Archives a contact in a Mailchimp audience. - -**Parameters** - -- **audience_unique_id** (`string`, required) The unique ID for the Mailchimp audience where the contact will be archived. -- **contact_id** (`string`, required) The unique identifier for the contact to archive within the audience in Mailchimp. - - -## MailchimpMarketingApi.ForgetContact - -
- - -Forget a contact in the audience list. - -**Parameters** - -- **audience_id** (`string`, required) The unique ID for the audience where the contact should be forgotten. -- **contact_id** (`string`, required) The unique ID of the contact to be forgotten from the audience. - - -## MailchimpMarketingApi.GetConnectedApps - -
- - -Retrieve registered connected applications for an account. - -**Parameters** - -- **exclude_fields_from_response** (`string`, optional) A comma-separated list of fields to exclude from the response, referencing sub-objects with dot notation. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return in the response. Use dot notation for sub-object fields. -- **number_of_records_to_return** (`string`, optional) Specify the number of records to return. Default is 10, maximum is 1000. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.GetAuthorizedAppInfo - -
- - -Retrieve details of a specific authorized application. - -**Parameters** - -- **authorized_application_id** (`string`, required) The unique ID for the connected authorized application to retrieve its information. -- **fields_to_exclude** (`string`, optional) Comma-separated list of fields to exclude. Use dot notation for sub-object references. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.GetClassicAutomationsSummary - -
- - -Fetch a summary of an account's classic automations. - -**Parameters** - -- **automation_status_filter** (`string`, optional) Specify the status of automations to filter results (e.g., 'active', 'paused'). -- **created_after_time** (`string`, optional) Specify the time to filter automations created after this date-time. Use ISO 8601 format, e.g., 2015-10-21T15:41:36+00:00. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to include in the response, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) The number of automation records to return. Default is 10, maximum is 1000. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. -- **restrict_before_create_time** (`string`, optional) Restrict the response to automations created before the specified time in ISO 8601 format. Example: 2015-10-21T15:41:36+00:00. -- **restrict_to_automations_started_before** (`string`, optional) Restrict the response to automations started before this time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00). -- **start_time_after** (`string`, optional) Restrict the response to automations started after this date and time in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00). - - -## MailchimpMarketingApi.CreateMailchimpAutomation - -
- - -Create a new classic automation in Mailchimp. - -**Parameters** - -- **automation_workflow_type** (`string`, required) Specify the type of Automation workflow. Currently, only 'abandonedCart' is supported. -- **automation_from_name** (`string`, optional) The 'from' name to display in the new automation emails. It should be an easily recognizable name for recipients. -- **list_id** (`string`, optional) The unique identifier for the Mailchimp List to target with the automation. -- **reply_to_email_address** (`string`, optional) The reply-to email address for the automation in Mailchimp. -- **store_id** (`string`, optional) The unique identifier for the store in Mailchimp. Required to target specific automation to a store. - - -## MailchimpMarketingApi.GetAutomationSummary - -
- - -Retrieve details of a specific classic automation workflow. - -**Parameters** - -- **workflow_id** (`string`, required) The unique ID for the automation workflow to retrieve its summary. -- **fields_to_exclude** (`string`, optional) A comma-separated list of fields to exclude from the automation workflow details. Use dot notation for sub-objects. -- **include_fields** (`string`, optional) A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.PauseAutomationEmails - -
- - -Pause emails in a specific automation workflow. - -**Parameters** - -- **automation_workflow_id** (`string`, required) The unique identifier for the specific automation workflow to be paused. - - -## MailchimpMarketingApi.StartMailchimpAutomationEmails - -
- - -Start all emails in a Mailchimp automation workflow. - -**Parameters** - -- **automation_workflow_id** (`string`, required) The unique identifier for the Mailchimp automation workflow to be started. - - -## MailchimpMarketingApi.ArchiveMailchimpAutomation - -
- - -Permanently archive a Mailchimp automation. - -**Parameters** - -- **automation_workflow_id** (`string`, required) The unique identifier for the Mailchimp automation workflow to archive. This ID is necessary to specify which automation you want to permanently end. - - -## MailchimpMarketingApi.GetAutomationEmailsSummary - -
- - -Get a summary of emails in an automation workflow. - -**Parameters** - -- **automation_workflow_id** (`string`, required) The unique ID of the automation workflow to retrieve the email summary for. - - -## MailchimpMarketingApi.GetAutomationEmailInfo - -
- - -Retrieve details of a specific classic automation email. - -**Parameters** - -- **automation_email_unique_id** (`string`, required) The unique identifier for the Automation workflow email in Mailchimp. -- **automation_workflow_id** (`string`, required) The unique ID for the automation workflow. - - -## MailchimpMarketingApi.RemoveClassicAutomationEmail - -
- - -Removes a specified classic automation workflow email. - -**Parameters** - -- **automation_workflow_email_id** (`string`, required) The unique identifier for the specific automation workflow email to be removed. -- **automation_workflow_id** (`string`, required) The unique identifier for the Automation workflow to target for email removal. - - -## MailchimpMarketingApi.UpdateAutomationEmailSettings - -
- - -Update settings for a classic automation workflow email. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **automation_workflow_id** (`string`, optional) The unique identifier for the Automation workflow to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **automation_workflow_email_id** (`string`, optional) The unique ID for the Automation workflow email to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetAutomationEmailQueueInfo - -
- - -Retrieve details of a classic automation email queue in Mailchimp. - -**Parameters** - -- **automation_workflow_email_id** (`string`, required) The unique ID for the automation workflow email. -- **automation_workflow_id** (`string`, required) The unique ID for the Automation workflow to obtain the email queue details. - - -## MailchimpMarketingApi.AddSubscriberToWorkflow - -
- - -Add a subscriber to an automation workflow. - -**Parameters** - -- **automation_workflow_id** (`string`, required) The unique identifier for the Automation workflow to which the subscriber will be added. -- **subscriber_email_address** (`string`, required) The email address of the subscriber to add to the automation workflow. -- **workflow_email_id** (`string`, required) The unique ID for the Automation workflow email. Required to identify the specific email in the workflow. - - -## MailchimpMarketingApi.GetAutomationSubscriberInfo - -
- - -Get details of a subscriber in an automation email queue. - -**Parameters** - -- **automation_workflow_email_id** (`string`, required) The unique ID for the Automation workflow email in Mailchimp. -- **automation_workflow_id** (`string`, required) The unique ID for the Automation workflow in Mailchimp. -- **subscriber_email_md5_hash** (`string`, required) The MD5 hash of the lowercase version of the subscriber's email address in the list. - - -## MailchimpMarketingApi.PauseAutomatedEmail - -
- - -Pause an automated email in a Mailchimp workflow. - -**Parameters** - -- **automation_workflow_email_id** (`string`, required) The unique ID for the automation workflow email to be paused. -- **automation_workflow_id** (`string`, required) The unique ID for the Mailchimp automation workflow to pause. - - -## MailchimpMarketingApi.StartAutomatedEmail - -
- - -Initiate an automated email in Mailchimp. - -**Parameters** - -- **automation_email_id** (`string`, required) The unique ID for the specific email in the automation workflow to be started. -- **automation_workflow_id** (`string`, required) The unique identifier for the Automation workflow in Mailchimp. - - -## MailchimpMarketingApi.GetRemovedAutomationSubscribers - -
- - -Get details on subscribers removed from automation workflows. - -**Parameters** - -- **automation_workflow_id** (`string`, required) The unique ID for identifying the specific automation workflow in Mailchimp. - - -## MailchimpMarketingApi.RemoveSubscriberFromWorkflow - -
- - -Remove a subscriber from a Mailchimp automation workflow. - -**Parameters** - -- **automation_workflow_id** (`string`, required) The unique identifier for the Mailchimp automation workflow. -- **subscriber_email_address** (`string`, required) Email address of the list member to be removed from the workflow. - - -## MailchimpMarketingApi.GetRemovedSubscriberInfo - -
- - -Retrieve details about a removed subscriber from automation. - -**Parameters** - -- **automation_workflow_id** (`string`, required) The unique ID for the Mailchimp automation workflow. It is required to identify from which workflow the subscriber was removed. -- **subscriber_hash** (`string`, required) MD5 hash of the lowercase version of the subscriber's email address to identify the removed member. - - -## MailchimpMarketingApi.GetBatchSummaries - -
- - -Retrieve a summary of batch requests from Mailchimp. - -**Parameters** - -- **exclude_fields_to_return** (`string`, optional) A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of specific fields to include in the response, using dot notation for sub-objects. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0, used for navigating through large sets of data. -- **record_count_to_return** (`string`, optional) Specify the number of records to return, from 1 to 1000. Default is 10. - - -## MailchimpMarketingApi.StartBatchProcessing - -
- - -Initiate a batch operations request in Mailchimp. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetBatchStatus - -
- - -Retrieve the status of a Mailchimp batch request. - -**Parameters** - -- **batch_operation_id** (`string`, required) The unique ID for the Mailchimp batch operation to check its status. -- **excluded_fields_list** (`string`, optional) Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters. -- **return_fields** (`string`, optional) A comma-separated list of fields to include in the response, using dot notation for sub-objects. - - -## MailchimpMarketingApi.CancelBatchRequest - -
- - -Cancels a running batch request to stop its execution. - -**Parameters** - -- **batch_request_id** (`string`, required) The unique identifier for the batch request you want to cancel. - - -## MailchimpMarketingApi.GetAllBatchWebhooks - -
- - -Retrieve all configured webhooks for batches. - -**Parameters** - -- **fields_to_exclude** (`string`, optional) Comma-separated list of fields to exclude. Use dot notation for sub-object parameters. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object references. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. -- **records_to_return** (`string`, optional) Specify the number of webhook records to return. Default is 10, maximum is 1000. - - -## MailchimpMarketingApi.ConfigureWebhookOnBatchComplete - -
- - -Configure a webhook for batch processing completion alerts. - -**Parameters** - -- **webhook_url** (`string`, required) The URL where the webhook payload will be sent upon batch completion. It must be a valid and accessible URL. -- **webhook_enabled** (`boolean`, optional) Set to True to enable the webhook to receive requests when batch processing completes. - - -## MailchimpMarketingApi.GetBatchWebhookInfo - -
- - -Retrieve details of a specific batch webhook on Mailchimp. - -**Parameters** - -- **batch_webhook_id** (`string`, required) The unique ID for the batch webhook to retrieve information from Mailchimp. -- **fields_to_exclude** (`string`, optional) A comma-separated list of fields to exclude from the batch webhook details. Use dot notation for sub-objects. -- **include_fields** (`string`, optional) Specify fields to include in response. Use dot notation for sub-object fields. - - -## MailchimpMarketingApi.UpdateBatchWebhook - -
- - -Update a batch webhook on Mailchimp. - -**Parameters** - -- **batch_webhook_unique_id** (`string`, required) The unique identifier for the batch webhook to update. -- **enable_webhook** (`boolean`, optional) Enable or disable webhook requests (true for enable, false for disable). -- **webhook_url** (`string`, optional) A valid URL to send webhook notifications when a batch request completes in Mailchimp. - - -## MailchimpMarketingApi.RemoveBatchWebhook - -
- - -Remove a batch webhook to stop sending webhooks to a URL. - -**Parameters** - -- **batch_webhook_id** (`string`, required) The unique identifier for the batch webhook to remove. Use this ID to specify which webhook should be deleted, stopping any further webhook notifications to the associated URL. - - -## MailchimpMarketingApi.GetMailchimpTemplateFolders - -
- - -Retrieve all template folders from Mailchimp. - -**Parameters** - -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude. Use dot notation for sub-objects. -- **include_fields** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object parameters. -- **number_of_records_to_return** (`string`, optional) Specify the number of template folder records to return, up to a maximum of 1000. The default is 10. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.CreateTemplateFolder - -
- - -Create a new template folder in Mailchimp. - -**Parameters** - -- **folder_name** (`string`, required) The desired name for the new template folder in Mailchimp. - - -## MailchimpMarketingApi.GetTemplateFolderInfo - -
- - -Retrieve details of a specific template folder. - -**Parameters** - -- **template_folder_id** (`string`, required) The unique ID for the template folder to retrieve information about. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude from the response. Use dot notation for sub-object fields. -- **included_fields** (`string`, optional) A comma-separated list of fields to return for the folder. Use dot notation for sub-objects. - - -## MailchimpMarketingApi.UpdateTemplateFolder - -
- - -Update a specific folder for organizing templates. - -**Parameters** - -- **folder_name** (`string`, required) The new name for the template folder. Provide a string value. -- **template_folder_id** (`string`, required) The unique identifier for the template folder to be updated. - - -## MailchimpMarketingApi.DeleteTemplateFolder - -
- - -Delete a specific template folder in Mailchimp. - -**Parameters** - -- **template_folder_id** (`string`, required) The unique ID for the template folder to be deleted. Use this to specify which folder should be removed and have its templates marked as 'unfiled'. - - -## MailchimpMarketingApi.GetCampaignFolders - -
- - -Retrieve all folders used to organize campaigns. - -**Parameters** - -- **exclude_fields** (`string`, optional) A comma-separated list of fields to exclude. Use dot notation for sub-objects. -- **include_fields** (`string`, optional) A comma-separated list of fields to include in the response. Use dot notation for sub-object fields. -- **number_of_records_to_return** (`string`, optional) The number of campaign folders to return, between 1 and 1000. Defaults to 10. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Defaults to 0. Use for fetching subsequent pages. - - -## MailchimpMarketingApi.CreateCampaignFolder - -
- - -Create a new campaign folder in Mailchimp. - -**Parameters** - -- **folder_name** (`string`, required) The name to assign to the new campaign folder. It should be a descriptive string that helps identify the folder's contents. - - -## MailchimpMarketingApi.GetCampaignFolderInfo - -
- - -Get details about a specific campaign folder. - -**Parameters** - -- **campaign_folder_id** (`string`, required) The unique identifier for the campaign folder. Used to specify which folder's information to retrieve. -- **exclude_fields** (`string`, optional) Specify a comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters. -- **included_fields** (`string`, optional) Comma-separated list of fields to return. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.UpdateCampaignFolder - -
- - -Update a specific folder used to organize campaigns. - -**Parameters** - -- **campaign_folder_id** (`string`, required) The unique identifier for the campaign folder to be updated. -- **folder_name** (`string`, required) The new name to assign to the campaign folder. - - -## MailchimpMarketingApi.DeleteCampaignFolder - -
- - -Delete a specific campaign folder in Mailchimp. - -**Parameters** - -- **campaign_folder_id** (`string`, required) The unique ID for the Mailchimp campaign folder to be deleted. - - -## MailchimpMarketingApi.GetAllMarketingCampaigns - -
- - -Fetches all marketing campaigns from an account. - -**Parameters** - -- **campaign_status** (`string`, optional) Filter campaigns by their status (e.g., sent, draft). -- **campaign_type** (`string`, optional) Specify the type of campaign to retrieve (e.g., regular, plaintext, absplit). -- **campaigns_created_after** (`string`, optional) Specify the date and time to restrict results to campaigns created after this point. Must be in ISO 8601 format. -- **created_before_date_time** (`string`, optional) Restrict response to campaigns created before this time using ISO 8601 format. -- **exclude_fields** (`string`, optional) A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return. Use dot notation for sub-object parameters. -- **include_resend_shortcut_eligibility** (`string`, optional) Include this field in the response to determine if campaigns are eligible for Resend Shortcuts. -- **list_member_identifier** (`string`, optional) The MD5 hash of the lowercase version of the list member’s email. Used to retrieve campaigns sent to this member. -- **list_unique_id** (`string`, optional) The unique identifier for the list associated with the campaigns to be retrieved. -- **number_of_records_to_return** (`string`, optional) Number of records to return, between 10 and 1000. Default is 10. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **restrict_to_campaigns_sent_after** (`string`, optional) Restrict the response to campaigns sent after the specified ISO 8601 time. -- **sent_before_time** (`string`, optional) Restricts the response to campaigns sent before the specified time. It should be in ISO 8601 format. -- **sort_by_field** (`string`, optional) Specify the field to sort the campaigns by. Use dot notation for sub-object fields. -- **sort_order_direction** (`string`, optional) Specify the sorting order for the results. Use 'ASC' for ascending or 'DESC' for descending. -- **unique_folder_id** (`string`, optional) Unique identifier for the folder containing the campaigns. - - -## MailchimpMarketingApi.CreateMailchimpCampaign - -
- - -Create a new Mailchimp campaign quickly. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetCampaignDetails - -
- - -Retrieve details of a specific marketing campaign. - -**Parameters** - -- **campaign_id** (`string`, required) The unique identifier for the campaign to retrieve details about. -- **fields_to_exclude** (`string`, optional) A comma-separated list of fields to exclude, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Specify a comma-separated list of fields to return, using dot notation for sub-object parameters. -- **include_resend_shortcut_eligibility** (`string`, optional) Include the `resend_shortcut_eligibility` field in the response to check if the campaign is eligible for Campaign Resend Shortcuts. -- **include_resend_shortcut_usage** (`string`, optional) Include this to receive the `resend_shortcut_usage` field, providing details about campaigns related by a shortcut. - - -## MailchimpMarketingApi.UpdateCampaignSettings - -
- - -Update campaign settings in Mailchimp. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **campaign_unique_id** (`string`, optional) The unique identifier for the campaign to be updated in Mailchimp. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.DeleteMailchimpCampaign - -
- - -Delete a specific Mailchimp campaign. - -**Parameters** - -- **campaign_id** (`string`, required) The unique ID for the Mailchimp campaign to delete. - - -## MailchimpMarketingApi.CancelCampaignSend - -
- - -Cancel a sent campaign before all recipients receive it. - -**Parameters** - -- **campaign_identifier** (`string`, required) The unique identifier for the Mailchimp campaign to be canceled. Used to specify which campaign's delivery is to be stopped. - - -## MailchimpMarketingApi.ReplicateCampaignMailchimp - -
- - -Replicate a saved or sent Mailchimp campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the Mailchimp campaign to be replicated. - - -## MailchimpMarketingApi.SendMailchimpCampaign - -
- - -Send a Mailchimp campaign immediately or as scheduled. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the Mailchimp campaign to be sent. This is a string value required to trigger the campaign. - - -## MailchimpMarketingApi.ScheduleCampaignDelivery - -
- - -Schedule a Mailchimp campaign for delivery. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the Mailchimp campaign to be scheduled. -- **schedule_delivery_time** (`string`, required) The UTC date and time to schedule the campaign for delivery in ISO 8601 format. Must be on the quarter-hour (:00, :15, :30, :45). -- **batch_delivery_delay** (`integer`, optional) The delay in minutes between batches for campaign delivery. -- **number_of_batches_for_campaign** (`integer`, optional) The number of batches for the campaign send. Determines how the campaign delivery is split into batches. -- **use_timewarp** (`boolean`, optional) Set to true to use Timewarp for localizing campaign delivery to recipients' time zones. Cannot be true when using Batch Delivery. - - -## MailchimpMarketingApi.UnscheduleCampaign - -
- - -Unschedule a scheduled Mailchimp campaign. - -**Parameters** - -- **campaign_id** (`string`, required) The unique identifier for the scheduled campaign to be unscheduled. - - -## MailchimpMarketingApi.SendTestEmailCampaign - -
- - -Send a test email for a specific campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique ID for the specific Mailchimp campaign to send the test email for. -- **test_email_addresses** (`array[string]`, required) An array of email addresses to receive the test email. -- **test_email_send_type** (`string`, required) Specify the type of test email to send: 'html' or 'plaintext'. - - -## MailchimpMarketingApi.PauseRssCampaign - -
- - -Pause an RSS-Driven campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the RSS-Driven campaign you want to pause. It should be a string. - - -## MailchimpMarketingApi.ResumeRssDrivenCampaign - -
- - -Resume an RSS-Driven campaign in Mailchimp. - -**Parameters** - -- **campaign_id** (`string`, required) The unique identifier for the RSS-driven campaign to be resumed. - - -## MailchimpMarketingApi.ResendCampaignToSegments - -
- - -Resend a campaign to specific segments. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique ID for identifying the campaign to replicate and resend. -- **resend_shortcut_type** (`string`, optional) Specify the type of segment to resend the campaign to. Options: 'to_non_openers', 'to_new_subscribers', 'to_non_clickers', 'to_non_purchasers'. Default is 'to_non_openers'. - - -## MailchimpMarketingApi.GetCampaignContent - -
- - -Retrieve the HTML and plain-text content for a Mailchimp campaign. - -**Parameters** - -- **campaign_id** (`string`, required) The unique identifier for the Mailchimp campaign to retrieve content for. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude when retrieving campaign content. Use dot notation for sub-object fields. -- **included_fields** (`string`, optional) A comma-separated list of fields to include in the response. Use dot notation to specify sub-object parameters. - - -## MailchimpMarketingApi.SetCampaignContent - -
- - -Set the content for a campaign in Mailchimp. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **campaign_id** (`string`, optional) The unique identifier for the Mailchimp campaign to set the content for. This ID is required to specify which campaign you are updating. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetMailchimpCampaignFeedback - -
- - -Retrieve feedback comments for a Mailchimp campaign. - -**Parameters** - -- **campaign_id** (`string`, required) The unique identifier for the specific Mailchimp campaign from which to retrieve feedback. -- **fields_to_exclude** (`string`, optional) Comma-separated list of fields to exclude from the feedback data, using dot notation for sub-objects. -- **include_fields** (`string`, optional) A comma-separated list of specific fields to return, using dot notation for sub-objects. - - -## MailchimpMarketingApi.AddCampaignFeedback - -
- - -Add feedback to a specific Mailchimp campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the Mailchimp campaign to which feedback will be added. -- **feedback_content** (`string`, required) The content of the feedback to be added to the campaign. -- **editable_block_id** (`integer`, optional) The ID of the editable block the feedback addresses in the campaign. -- **is_feedback_complete** (`boolean`, optional) Indicates whether the feedback is complete. Use 'true' if complete and 'false' otherwise. - - -## MailchimpMarketingApi.GetCampaignFeedbackMessage - -
- - -Retrieve a specific feedback message from a campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the campaign to retrieve the specific feedback message. -- **feedback_message_id** (`string`, required) The unique identifier for the feedback message to retrieve from the campaign. -- **exclude_fields_from_feedback** (`string`, optional) A comma-separated list of fields to exclude from the feedback. Use dot notation for sub-object parameters. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to include in the response. Use dot notation for sub-object fields. - - -## MailchimpMarketingApi.UpdateCampaignFeedback - -
- - -Update specific feedback for a Mailchimp campaign. - -**Parameters** - -- **campaign_id** (`string`, required) The unique identifier for the Mailchimp campaign to be updated. -- **feedback_message_id** (`string`, required) The unique identifier for the specific feedback message to update in the campaign. -- **editable_block_id** (`integer`, optional) The ID of the editable block that the feedback addresses within the campaign. -- **feedback_is_complete** (`boolean`, optional) Indicates if the feedback is marked as complete. Use true for complete and false for incomplete. -- **feedback_message** (`string`, optional) The text content of the feedback message to be updated. - - -## MailchimpMarketingApi.RemoveCampaignFeedback - -
- - -Remove a specific feedback message from a campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) A unique identifier for the campaign from which you want to remove feedback. -- **feedback_message_id** (`string`, required) The unique identifier for the feedback message to be removed from the campaign. - - -## MailchimpMarketingApi.ReviewCampaignSendChecklist - -
- - -Review the send checklist for a Mailchimp campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the campaign in Mailchimp. -- **fields_to_exclude** (`string`, optional) Comma-separated list of fields to exclude, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return. Use dot notation for sub-objects. - - -## MailchimpMarketingApi.GetConnectedSites - -
- - -Retrieve all connected sites from a Mailchimp account. - -**Parameters** - -- **exclude_fields_list** (`string`, optional) A list of fields to exclude, using dot notation for sub-object parameters. -- **included_fields** (`string`, optional) A comma-separated list of specific fields to return. Use dot notation for sub-object parameters. -- **number_of_records_to_return** (`string`, optional) The number of records to return. Default is 10, maximum is 1000. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.CreateMailchimpConnectedSite - -
- - -Create a new Mailchimp connected site. - -**Parameters** - -- **connected_site_domain** (`string`, required) The domain of the site you want to connect to Mailchimp. -- **site_unique_identifier** (`string`, required) A unique identifier string for the site. This is used to distinguish different connected sites in Mailchimp. - - -## MailchimpMarketingApi.GetConnectedSiteInfo - -
- - -Retrieve details of a specific connected site. - -**Parameters** - -- **connected_site_identifier** (`string`, required) The unique identifier for the connected site to retrieve its information. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Specify a comma-separated list of fields to return. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.RemoveMailchimpConnectedSite - -
- - -Remove a connected site from your Mailchimp account. - -**Parameters** - -- **site_identifier** (`string`, required) The unique identifier for the connected site you wish to remove from your Mailchimp account. - - -## MailchimpMarketingApi.VerifyScriptInstallation - -
- - -Verify if the Mailchimp connected site script is installed. - -**Parameters** - -- **site_unique_identifier** (`string`, required) The unique identifier for the Mailchimp connected site to verify script installation. - - -## MailchimpMarketingApi.TriggerAutomationStep - -
- - -Trigger a step in a Mailchimp automation flow. - -**Parameters** - -- **flow_id** (`string`, required) The unique identifier for the automation flow to trigger a specific step. -- **list_member_email_address** (`string`, required) The email address of the list member to trigger the automation step for. -- **step_identifier** (`string`, required) The unique identifier for the step in the Mailchimp automation flow. - - -## MailchimpMarketingApi.GetFileManagerFiles - -
- - -Retrieve images and files from the Mailchimp File Manager. - -**Parameters** - -- **created_after_date** (`string`, optional) Files created after this date will be included in the response. Use ISO 8601 format: 2015-10-21T15:41:36+00:00. -- **exclude_fields_list** (`string`, optional) Comma-separated fields to omit from the response. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object parameters. -- **file_created_by_user** (`string`, optional) The Mailchimp account user who created the File Manager file. -- **file_sort_field** (`string`, optional) Specify the field to sort the files by, such as 'name', 'date', etc. -- **file_type** (`string`, optional) The file type to filter File Manager files. Expected as a string value. -- **number_of_records_to_return** (`string`, optional) Specifies the number of records to return. Default is 10; maximum is 1000. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **restrict_files_before_date** (`string`, optional) Restrict the response to files created before the specified ISO 8601 date. -- **sort_order_direction** (`string`, optional) Sets the order direction for sorting results. Use 'ASC' for ascending and 'DESC' for descending. - - -## MailchimpMarketingApi.UploadFileToFileManager - -
- - -Upload a new file or image to the File Manager. - -**Parameters** - -- **file_content_base64** (`string`, required) The base64-encoded contents of the file to be uploaded. -- **file_name** (`string`, required) The name to be assigned to the uploaded file. -- **folder_id** (`integer`, optional) The ID of the folder where the file will be uploaded. This should be an integer. - - -## MailchimpMarketingApi.GetFileManagerFileInfo - -
- - -Retrieve information about a specific file from Mailchimp's File Manager. - -**Parameters** - -- **file_manager_file_id** (`string`, required) The unique ID for the File Manager file to retrieve its information. -- **exclude_fields_list** (`string`, optional) Comma-separated list of fields to exclude, using dot notation for sub-objects. -- **return_fields** (`string`, optional) A comma-separated list of fields to return. Use dot notation to specify sub-objects. - - -## MailchimpMarketingApi.UpdateFileManagerFile - -
- - -Update a file in the Mailchimp File Manager. - -**Parameters** - -- **file_manager_file_id** (`string`, required) The unique identifier for the File Manager file to be updated. -- **file_name** (`string`, optional) Specify the new name for the file in the File Manager. -- **folder_id** (`integer`, optional) The ID of the folder. Set to `0` to remove a file from its current folder. - - -## MailchimpMarketingApi.DeleteFileManagerFile - -
- - -Remove a specific file from Mailchimp's File Manager. - -**Parameters** - -- **file_manager_file_id** (`string`, required) The unique identifier for the file to be deleted from Mailchimp's File Manager. - - -## MailchimpMarketingApi.ListFileManagerFolders - -
- - -Retrieve a list of folders from the File Manager. - -**Parameters** - -- **created_after_date** (`string`, optional) Restrict the response to files created after the specified date in ISO 8601 format. -- **created_by_user** (`string`, optional) The Mailchimp account user who created the File Manager file. -- **exclude_fields** (`string`, optional) A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to include in the response, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) Specify the number of folder records to return, from 1 to 1000. Default is 10. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. -- **restrict_to_files_created_before** (`string`, optional) Restrict the response to files created before the specified date using ISO 8601 format, e.g., 2015-10-21T15:41:36+00:00. - - -## MailchimpMarketingApi.CreateNewFileManagerFolder - -
- - -Create a new folder in Mailchimp's File Manager. - -**Parameters** - -- **folder_name** (`string`, required) The desired name for the new folder in File Manager. - - -## MailchimpMarketingApi.GetFileManagerFolderInfo - -
- - -Retrieve details of a specific folder from File Manager. - -**Parameters** - -- **file_manager_folder_id** (`string`, required) The unique identifier for the File Manager folder to retrieve. -- **exclude_fields_list** (`string`, optional) Comma-separated fields to exclude. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of specific fields to return, use dot notation for sub-objects. - - -## MailchimpMarketingApi.UpdateFileManagerFolder - -
- - -Update a specific File Manager folder in Mailchimp. - -**Parameters** - -- **file_manager_folder_id** (`string`, required) The unique identifier for the File Manager folder to update. -- **folder_name** (`string`, required) The new name for the File Manager folder. It should be a string value. - - -## MailchimpMarketingApi.DeleteFileManagerFolder - -
- - -Delete a specific folder in the File Manager. - -**Parameters** - -- **file_manager_folder_id** (`string`, required) The unique identifier for the folder to be deleted in the File Manager. - - -## MailchimpMarketingApi.GetFolderFiles - -
- - -Retrieve files and images from a specific folder. - -**Parameters** - -- **file_manager_folder_id** (`string`, required) The unique identifier for the specific File Manager folder to retrieve files from. -- **exclude_fields** (`string`, optional) Comma-separated list of fields to exclude. Use dot notation for sub-object parameters. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object fields. -- **file_creator_user** (`string`, optional) Mailchimp account user who created the File Manager file. Filter results by this user's contributions. -- **file_type** (`string`, optional) Specifies the file type to filter files in the folder. Use to retrieve specific types like 'image', 'document', etc. -- **filter_files_created_after** (`string`, optional) Restrict the response to files created after the specified date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00). -- **number_of_records** (`string`, optional) Specifies the number of files to retrieve, with a default of 10 and a maximum of 1000. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. Use this to access pages beyond the first one. -- **restrict_files_before_date** (`string`, optional) Restrict response to files created before this date using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00). -- **sort_by_field** (`string`, optional) Specify the field to sort the files by, such as name or size. -- **sort_order_direction** (`string`, optional) Specify the order direction for sorting results. Typically 'asc' for ascending or 'desc' for descending order. - - -## MailchimpMarketingApi.RetrieveMailchimpLists - -
- - -Retrieve information about all Mailchimp lists. - -**Parameters** - -- **created_after_date** (`string`, optional) Restrict results to lists created after this date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00). -- **created_before_date** (`string`, optional) Restrict response to lists created before the specified date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00). -- **exclude_fields_list** (`string`, optional) Comma-separated list of fields to exclude, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return, using dot notation for sub-objects. -- **filter_by_subscriber_email** (`string`, optional) Restrict results to lists that include a specific subscriber's email address. -- **include_total_contacts** (`string`, optional) Set to true to return the total_contacts field, which includes an approximate count of all contacts in any state. -- **lists_after_last_campaign_date** (`string`, optional) Restrict results to lists created after the last campaign send date. Use ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00). -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **records_to_return** (`string`, optional) The number of list records to return. Accepts values between 1 and 1000, with a default of 10. -- **restrict_to_ecommerce_store_lists** (`string`, optional) Restrict results to lists containing an active, connected, undeleted ecommerce store. Expected values are 'true' or 'false'. -- **restrict_to_lists_before_last_campaign_sent** (`string`, optional) Restrict results to lists created before the last campaign send date (ISO 8601 format). -- **sort_direction** (`string`, optional) Determines the order direction for the sorted results. Accepts 'asc' for ascending and 'desc' for descending. -- **sort_lists_by_field** (`string`, optional) Field by which to sort the list results. Choose from available list fields. - - -## MailchimpMarketingApi.CreateMailchimpList - -
- - -Create a new list in your Mailchimp account. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetMailchimpListInfo - -
- - -Retrieve details of a specific list in Mailchimp. - -**Parameters** - -- **mailchimp_list_id** (`string`, required) The unique ID for the Mailchimp list to retrieve information about. -- **exclude_fields_in_mailchimp** (`string`, optional) A comma-separated list of fields to exclude. Use dot notation for sub-objects, e.g., 'stats.member_count'. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object parameters. -- **include_total_contacts** (`string`, optional) Set to true to include the approximate count of all contacts in any state (total_contacts) in the response. - - -## MailchimpMarketingApi.UpdateMailchimpListSettings - -
- - -Update settings for a specific Mailchimp list. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **mailchimp_list_id** (`string`, optional) The unique ID of the Mailchimp list to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.DeleteMailchimpList - -
- - -Delete a list from your Mailchimp account. - -**Parameters** - -- **list_id** (`string`, required) The unique ID for the Mailchimp list to be deleted. - - -## MailchimpMarketingApi.ManageMailchimpListMembers - -
- - -Batch subscribe or unsubscribe members in a Mailchimp list. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **list_id** (`string`, optional) The unique ID for the specific Mailchimp list to manage. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **allow_incomplete_merge_fields** (`string`, optional) Allows member data without required merge fields if set to true. Defaults to false. Only used when mode is 'execute'. -- **ignore_duplicate_members** (`string`, optional) Set to true to ignore duplicate entries in the batch request, saving the first occurrence. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetAbuseReportsForList - -
- - -Retrieve all abuse reports for a specified mailing list. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID for the mailing list to retrieve abuse reports for. -- **exclude_fields_from_result** (`string`, optional) Comma-separated list of fields to exclude from the response, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) The number of records to return. Default is 10. Maximum is 1000. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. -- **return_fields** (`string`, optional) Comma-separated list of fields to include in the response. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.FetchAbuseReportDetails - -
- - -Fetch details about a specific abuse report for a mailing list. - -**Parameters** - -- **abuse_report_id** (`string`, required) The unique identifier for the specific abuse report to fetch details for. -- **mailing_list_unique_id** (`string`, required) The unique ID for the mailing list associated with the abuse report. -- **fields_to_exclude** (`string`, optional) A comma-separated list of fields to exclude using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object parameters. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **records_to_return** (`string`, optional) Specify the number of records to return, between 1 and 1000. Default is 10. - - -## MailchimpMarketingApi.GetDailyListActivity - -
- - -Fetch daily detailed activity stats for a list in Mailchimp. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique identifier for the Mailchimp list to retrieve activity stats. -- **exclude_fields** (`string`, optional) Comma-separated list of fields to exclude. Use dot notation for sub-object parameters. -- **include_fields** (`string`, optional) Comma-separated list of specific fields to include in the response, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) The number of records to return. Default is 10, maximum is 1000. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.GetTopEmailClients - -
- - -Retrieve the top email clients from a specific list. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique identifier for the email list to retrieve client data from. -- **exclude_fields** (`string`, optional) Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-objects. - - -## MailchimpMarketingApi.GetMonthlyListGrowthSummary - -
- - -Retrieve monthly summary of a list's growth activity. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique identifier for the specific list in Mailchimp. Required for retrieving growth activity. -- **exclude_fields_to_return** (`string`, optional) A comma-separated list of fields to exclude from the response, using dot notation for sub-objects. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. -- **records_to_return** (`string`, optional) Specify the number of records to return, with a default of 10 and a maximum of 1000. -- **return_fields** (`string`, optional) A comma-separated list of specific fields to return. Use dot notation for sub-object parameters. -- **sort_order_direction** (`string`, optional) Determines the sorting order for the results, either ascending or descending. -- **sort_results_by_field** (`string`, optional) Specify the field by which results should be sorted. Use dot notation for sub-object fields. - - -## MailchimpMarketingApi.GetListGrowthSummary - -
- - -Get a list's growth activity summary for a specific month and year. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID for the specific list in Mailchimp. -- **specific_month_of_growth_history** (`string`, required) Specify the month and year (in 'YYYY-MM' format) for retrieving the list's growth history. -- **exclude_fields_list** (`string`, optional) Comma-separated list of fields to exclude. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return, using dot notation for sub-objects. - - -## MailchimpMarketingApi.GetListInterestCategories - -
- - -Retrieve interest categories for a specific mailing list. - -**Parameters** - -- **list_id** (`string`, required) The unique identifier for the mailing list you want to retrieve interest categories for. -- **exclude_fields_list** (`string`, optional) Comma-separated list of fields to exclude using dot notation for sub-objects. Helps reduce the size of the response by omitting unnecessary data. -- **include_fields** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-objects. -- **interest_group_type** (`string`, optional) Specify the type of interest group to restrict results. Example: 'checkboxes', 'radio_buttons'. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. Use to manage pagination flow. -- **record_count** (`string`, optional) The number of records to return. Specify a value from 10 to 1000. Defaults to 10 if not provided. - - -## MailchimpMarketingApi.CreateInterestCategory - -
- - -Create a new interest category in a Mailchimp list. - -**Parameters** - -- **category_description** (`string`, required) Text description of the interest category. Appears on signup forms, often phrased as a question. -- **category_display_type** (`string`, required) Determines how the interest category appears on signup forms. Options include: 'checkboxes', 'dropdown', 'radio', or 'hidden'. -- **list_unique_id** (`string`, required) The unique ID identifying the Mailchimp list where the interest category will be created. -- **category_display_order** (`integer`, optional) The numerical order for displaying categories. Lower numbers appear first. - - -## MailchimpMarketingApi.GetInterestCategoryInfo - -
- - -Fetch specific interest category details from a Mailchimp list. - -**Parameters** - -- **interest_category_unique_id** (`string`, required) The unique ID for the interest category you want to retrieve information about. -- **list_unique_id** (`string`, required) The unique ID for the Mailchimp list you want to retrieve interest category details from. -- **fields_to_exclude** (`string`, optional) Comma-separated list of fields to exclude, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to include in the response, using dot notation for sub-objects. - - -## MailchimpMarketingApi.UpdateInterestCategory - -
- - -Update a specific interest category in Mailchimp. - -**Parameters** - -- **category_display_type** (`string`, required) Specifies how the category's interests are shown on signup forms. Options: 'checkboxes', 'dropdown', 'radio', 'hidden'. -- **interest_category_id** (`string`, required) The unique ID for the interest category to be updated. -- **interest_category_title** (`string`, required) The text description of this interest category for signup forms, often phrased as a question. -- **list_unique_id** (`string`, required) The unique identifier for the Mailchimp list to be updated. -- **category_display_order** (`integer`, optional) The numerical order for displaying the category. Lower numbers appear first. - - -## MailchimpMarketingApi.DeleteInterestCategory - -
- - -Delete a specific interest category from a list. - -**Parameters** - -- **interest_category_id** (`string`, required) The unique ID of the interest category to be deleted from a list. -- **list_id** (`string`, required) The unique ID for the Mailchimp list from which you want to delete an interest category. - - -## MailchimpMarketingApi.GetInterestCategoryInterests - -
- - -Retrieve interests for a specific category in Mailchimp. - -**Parameters** - -- **interest_category_unique_id** (`string`, required) The unique identifier for a specific interest category in a Mailchimp list. -- **list_unique_id** (`string`, required) The unique ID for the Mailchimp list. -- **excluded_fields** (`string`, optional) Comma-separated list of fields to exclude, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return, using dot notation as needed. -- **number_of_records_to_return** (`string`, optional) Specify the number of records to return, between 10 and 1000. Default is 10. -- **pagination_skip_count** (`string`, optional) The number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.CreateInterestGroup - -
- - -Create a new interest group for a specific category. - -**Parameters** - -- **interest_category_unique_id** (`string`, required) The unique ID for the interest category to which the new group belongs. -- **interest_group_name** (`string`, required) The name of the interest group, shown publicly on subscription forms. -- **list_unique_id** (`string`, required) The unique ID for the Mailchimp list to which the interest group will be added. -- **interest_display_order** (`integer`, optional) The order in which this interest is displayed relative to others. Use an integer value. - - -## MailchimpMarketingApi.GetInterestGroupNames - -
- - -Retrieve interest group names for a specific category. - -**Parameters** - -- **interest_category_id** (`string`, required) The unique identifier for the interest category in a Mailchimp list. -- **list_unique_id** (`string`, required) The unique identifier for the Mailchimp list to retrieve interest group names from. -- **specific_interest_group_name** (`string`, required) The specific interest or group name to retrieve in the category. -- **exclude_fields** (`string`, optional) Comma-separated list of fields to exclude, using dot notation for sub-objects. -- **include_fields** (`string`, optional) A comma-separated list of fields to return, using dot notation for sub-objects. - - -## MailchimpMarketingApi.UpdateInterestGroupName - -
- - -Update group names in a specific interest category. - -**Parameters** - -- **interest_category_id** (`string`, required) The unique ID for the interest category to be updated. -- **interest_group_name** (`string`, required) The new name for the interest group, displayed publicly on subscription forms. -- **list_unique_id** (`string`, required) The unique ID for the list to be updated. -- **specific_interest_id** (`string`, required) The unique ID for the specific interest group name within the category. -- **interest_display_order** (`integer`, optional) The numerical order in which the interest should appear in a list. - - -## MailchimpMarketingApi.DeleteInterestFromCategory - -
- - -Delete an interest from a specific category. - -**Parameters** - -- **interest_category_id** (`string`, required) The unique ID for the interest category to delete the interest from. This ID is essential to specify the correct category in Mailchimp. -- **interest_identifier** (`string`, required) The unique identifier for the specific interest or group name to be deleted. -- **list_unique_id** (`string`, required) The unique ID for the list to be targeted for deleting an interest. - - -## MailchimpMarketingApi.GetListSegmentsInfo - -
- - -Retrieve details of all segments for a specific list. - -**Parameters** - -- **list_identifier** (`string`, required) The unique identifier for the mailing list whose segments are to be retrieved. -- **created_after_datetime** (`string`, optional) Restrict results to segments created after the specified time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00). -- **exclude_fields** (`string`, optional) Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return, using dot notation for sub-objects. -- **include_cleaned_members** (`string`, optional) Set to 'true' to include cleaned (bounced) members in the response. Use this to see members who have been removed due to email issues. -- **include_transactional_members** (`string`, optional) Specify whether to include transactional members in the response. Use 'true' or 'false'. -- **include_unsubscribed_members** (`string`, optional) Set to 'true' to include unsubscribed members in the response. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **records_count** (`string`, optional) The number of records to return. Default: 10. Max: 1000. -- **restrict_since_updated_time** (`string`, optional) Restrict results to segments updated after this time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00). -- **restrict_to_segments_created_before** (`string`, optional) Restrict results to segments created before the specified time. Use ISO 8601 format: 2015-10-21T15:41:36+00:00. -- **restrict_to_segments_updated_before** (`string`, optional) Restrict results to segments updated before the specified time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00). -- **segment_type** (`string`, optional) Specify the type of segment to filter results. Use known segment types as strings. - - -## MailchimpMarketingApi.CreateMailchimpSegment - -
- - -Create a new segment in a specific Mailchimp list. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique identifier for the Mailchimp list where the new segment will be created. -- **segment_name** (`string`, required) The name of the segment to be created in Mailchimp. -- **emails_for_static_segment** (`array[string]`, optional) An array of emails for creating a static segment. An empty array means no subscribers. Cannot be used with 'options'. -- **segment_match_conditions** (`array[json]`, optional) Array of conditions to define how the segment matches subscribers. Refer to the Mailchimp documentation for various condition types. -- **segment_match_type** (`string`, optional) Specifies the match type for the segment conditions. Use 'any' to match any condition and 'all' to match all conditions. - - -## MailchimpMarketingApi.GetSegmentInfo - -
- - -Retrieve information about a specific Mailchimp segment. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID for the Mailchimp list to fetch segment information from. -- **segment_id** (`string`, required) Provide the unique ID for the segment you want information on. -- **exclude_fields_list** (`string`, optional) Comma-separated list of fields to exclude, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return, using dot notation for sub-objects. -- **include_cleaned_members** (`string`, optional) Set to 'true' to include cleaned members in the response. Cleaned members are those deleted due to bounce or other delivery issues. -- **include_transactional_members** (`string`, optional) Set to 'true' to include transactional members in the response. -- **include_unsubscribed_members** (`string`, optional) Set to 'true' to include unsubscribed members in the response. - - -## MailchimpMarketingApi.DeleteSpecificSegment - -
- - -Delete a specific segment from a Mailchimp list. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID for the Mailchimp list to target for segment deletion. -- **segment_unique_id** (`string`, required) The unique identifier for the segment to be deleted. It must match the segment ID in Mailchimp. - - -## MailchimpMarketingApi.UpdateMailchimpSegment - -
- - -Update the details of a specific segment in a Mailchimp list. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID for the list to update the segment in. This ID is required to identify the list containing the target segment. -- **segment_name** (`string`, required) The new name for the segment to be updated. -- **segment_unique_id** (`string`, required) The unique ID for the segment to update. -- **segment_conditions** (`array[json]`, optional) An array of conditions that define the segment criteria. Each condition should be a JSON object specifying the targeting parameters. -- **segment_match_type** (`string`, optional) Determines if any or all conditions must be met for the segment. Allowed values: 'any', 'all'. -- **static_email_list** (`array[string]`, optional) An array of emails for the static segment. Emails not on the list are ignored. An empty array resets the segment, removing all members. Cannot be used with 'options'. - - -## MailchimpMarketingApi.UpdateListSegment - -
- - -Batch update members in a Mailchimp list segment. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique identifier for the Mailchimp list. -- **segment_unique_id** (`string`, required) The unique ID of the segment in the Mailchimp list for member updates. -- **emails_to_add_to_segment** (`array[string]`, optional) An array of email addresses to add to the specified static segment. Only existing list emails will be added. Limit of 500. -- **emails_to_remove_from_segment** (`array[string]`, optional) An array of up to 500 emails to remove from the static segment. Emails not in the list will be ignored. - - -## MailchimpMarketingApi.GetSegmentMembersInfo - -
- - -Get information about members in a saved segment. - -**Parameters** - -- **list_identifier** (`string`, required) The unique ID representing the mailing list from which the segment members will be retrieved. This ID is required to specify the context of the segment. -- **segment_unique_id** (`string`, required) The unique ID for the segment to retrieve members from. -- **fields_to_exclude** (`string`, optional) Comma-separated list of fields to exclude using dot notation for sub-objects. -- **include_cleaned_members** (`string`, optional) Specify 'true' to include cleaned (invalid or bounced) members in the response. Otherwise, specify 'false'. -- **include_transactional_members** (`string`, optional) Set to true to include transactional members in the response. -- **include_unsubscribed_members** (`string`, optional) Specify 'true' to include unsubscribed members in the response, 'false' to exclude them. -- **included_fields** (`string`, optional) Comma-separated list of specific fields to return. Use dot notation for sub-object parameters. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination purposes. Default is 0. -- **records_to_return** (`string`, optional) The number of records to return. Default is 10; maximum is 1000. - - -## MailchimpMarketingApi.AddMemberToStaticSegment - -
- - -Add a member to a Mailchimp static segment. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID for the Mailchimp list to which the segment belongs. -- **segment_id** (`string`, required) The unique ID for the segment to which the member will be added. -- **subscriber_email_address** (`string`, required) The email address of the subscriber to be added to the static segment. - - -## MailchimpMarketingApi.RemoveMemberFromMailchimpSegment - -
- - -Remove a member from a Mailchimp static segment. - -**Parameters** - -- **email_md5_hash** (`string`, required) The MD5 hash of the lowercase version of the list member's email address. -- **list_unique_id** (`string`, required) The unique ID of the mailing list from which the member will be removed. -- **segment_unique_id** (`string`, required) The unique identifier for the Mailchimp segment from which the member will be removed. - - -## MailchimpMarketingApi.SearchTagsByName - -
- - -Search for tags on a list by name. - -**Parameters** - -- **list_id** (`string`, required) The unique identifier for a Mailchimp list. This is essential for specifying which list to search for tags. -- **tag_name_search_query** (`string`, optional) The prefix to filter tags by name. Returns tags where names start with this query. - - -## MailchimpMarketingApi.GetMailchimpListMembers - -
- - -Retrieve member details from a specific Mailchimp list. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID for the Mailchimp list to retrieve member information from. -- **changed_after_timestamp** (`string`, optional) Restrict results to subscribers whose information changed after the specified timestamp in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00). -- **email_type** (`string`, optional) Specify the type of email format. Typically 'html' or 'text'. -- **fields_to_exclude** (`string`, optional) Comma-separated list of fields to exclude from the response, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object parameters. -- **filter_by_interest_ids** (`string`, optional) Comma-separated list of interest IDs to filter list members. Must be combined with interest_category_id and interest_match. -- **filter_by_since_last_campaign** (`string`, optional) Filter subscribers by their status (subscribed/unsubscribed/pending/cleaned) since the last email campaign. Requires member status. -- **filter_unsubscribed_since** (`string`, optional) Filter subscribers who unsubscribed since a specific date. Must use 'unsubscribed' status only. -- **filter_vip_members** (`string`, optional) Filter to return only VIP list members. Use `true` for VIPs only, `false` for all members. -- **interest_category_id** (`string`, optional) The unique id for the interest category used to filter Mailchimp list members. -- **interest_match_filter** (`string`, optional) Specify how to match list members by interests. Options: 'any', 'all', or 'none'. Must accompany interest_category_id and interest_ids. -- **number_of_records_to_return** (`string`, optional) Specify the number of records to return, between 10 and 1000, default is 10. -- **opt_in_after_timestamp** (`string`, optional) Restrict results to subscribers who opted-in after the specified timeframe in ISO 8601 format: 2015-10-21T15:41:36+00:00. -- **opt_in_before_timestamp** (`string`, optional) Restrict results to subscribers who opted in before the specified timeframe. Use ISO 8601 format. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **restrict_change_before_timeframe** (`string`, optional) Restrict results to subscribers whose information changed before the provided timeframe in ISO 8601 format (e.g., '2015-10-21T15:41:36+00:00'). -- **sort_field_for_members** (`string`, optional) Specifies the field by which to sort the list members. -- **sort_order_direction** (`string`, optional) Determines the order direction for sorted results. Common values are 'asc' for ascending and 'desc' for descending. -- **subscriber_status** (`string`, optional) The status of the subscriber (e.g., subscribed, unsubscribed, cleaned, pending). -- **unique_email_identifier** (`string`, optional) A unique identifier for the email address across all Mailchimp lists. Use this to filter for a specific member. - - -## MailchimpMarketingApi.AddMemberToMailchimpList - -
- - -Add a new member to a Mailchimp list. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **list_unique_id** (`string`, optional) The unique ID for the Mailchimp list to which a new member will be added. This ID can be found in the Mailchimp account settings. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bypass_merge_field_validation** (`string`, optional) Set to true to accept member data without required merge fields. Defaults to false. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetListMemberInfo - -
- - -Retrieve details about a specific list member in Mailchimp. - -**Parameters** - -- **list_id** (`string`, required) The unique ID for the Mailchimp list to retrieve the member from. -- **member_identifier** (`string`, required) The MD5 hash of the lowercase list member's email, or the email address/contact_id itself. -- **fields_to_exclude** (`string`, optional) A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.AddOrUpdateListMember - -
- - -Add or update a member in a Mailchimp list. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **unique_list_id** (`string`, optional) The unique ID identifying the Mailchimp list where members are added or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **subscriber_identifier** (`string`, optional) MD5 hash of the lowercase version of the member's email address, email address, or contact ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **bypass_merge_field_check** (`string`, optional) Set to true to allow member data without required merge fields. Defaults to false. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.UpdateListMemberInfo - -
- - -Update information for a specific list member in Mailchimp. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **list_unique_id** (`string`, optional) The unique ID for the Mailchimp list. This ID identifies which list to update the member information in. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **member_identifier** (`string`, optional) The MD5 hash of the lowercase list member's email, email address, or contact_id. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **skip_merge_validation** (`string`, optional) Set to true to allow member data without merge field values, even if usually required. Defaults to false. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.ArchiveListMember - -
- - -Archives a member from a Mailchimp list. - -**Parameters** - -- **mailing_list_id** (`string`, required) The unique identifier for the specific Mailchimp list to archive a member from. -- **member_identifier** (`string`, required) The MD5 hash of the lowercase version of the list member's email address, or use the email address/contact_id directly. - - -## MailchimpMarketingApi.GetMemberActivity - -
- - -Retrieve recent email activity for a list member. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID for the Mailchimp list you want to query. -- **member_identifier** (`string`, required) MD5 hash of the lowercase email, email address, or contact ID of the list member. -- **actions_to_return** (`string`, optional) Comma-separated list of specific member actions to retrieve, such as opens, clicks, and unsubscribes. -- **exclude_fields_from_activity** (`string`, optional) A comma-separated list of fields to exclude from the member activity response. Use dot notation for sub-objects. -- **included_fields** (`string`, optional) Comma-separated list of specific fields to retrieve for member activity, using dot notation for sub-objects. - - -## MailchimpMarketingApi.GetMemberActivityFeed - -
- - -Fetch a Mailchimp list member's activity details. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID for the Mailchimp list. Required to retrieve the member's activity data. -- **member_identifier** (`string`, required) The MD5 hash of the lowercase version of the list member's email address, or the email address itself, or contact_id. -- **activity_type_filters** (`string`, optional) Comma-separated list of activity types to filter by, such as 'open', 'bounce', or 'click'. -- **exclude_fields_from_response** (`string`, optional) Comma-separated list of fields to exclude from the response, use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to include in the response. Use dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) The number of activity records to return. Default is 10, max is 1000. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.RetrieveMemberTags - -
- - -Fetches tags for a specific mailing list member. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique identifier for the mailing list. Required to specify which list to retrieve member tags from. -- **member_identifier** (`string`, required) The MD5 hash of the lowercase version of the email, or email address, or contact_id of the list member. -- **exclude_specific_fields** (`string`, optional) A comma-separated list of fields to exclude using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object parameters. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **record_count** (`string`, optional) Specify the number of records to return, between 1 and 1000. Default is 10. - - -## MailchimpMarketingApi.UpdateListMemberTags - -
- - -Add or remove tags from a Mailchimp list member. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **list_unique_id** (`string`, optional) The unique ID for the Mailchimp list to update tags for a member. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **subscriber_email_hash** (`string`, optional) The MD5 hash of the lowercase version of the list member's email address. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.RetrieveContactEvents - -
- - -Retrieve events for a specific contact in a list. - -**Parameters** - -- **contact_identifier** (`string`, required) The unique identifier for the list member. This can be the MD5 hash of the lowercase email address, the email address itself, or the contact ID. -- **list_unique_id** (`string`, required) The unique identifier for the Mailchimp list from which to retrieve contact events. -- **exclude_fields** (`string`, optional) Comma-separated fields to exclude from the response using dot notation for sub-objects. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **records_to_return_count** (`string`, optional) The number of records to return. Default is 10 and maximum is 1000. -- **return_field_list** (`string`, optional) A comma-separated list of fields to return, using dot notation for sub-objects. - - -## MailchimpMarketingApi.AddListMemberEvent - -
- - -Add an event for a list member in Mailchimp. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **list_identifier** (`string`, optional) The unique identifier for the Mailchimp list. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **list_member_identifier** (`string`, optional) The MD5 hash of the lowercase version of the list member's email address, or the email address/contact_id. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetMemberGoalEvents - -
- - -Retrieve the last 50 goal events for a specific list member. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique identifier for the Mailchimp list. Required for fetching member goal events. -- **member_identifier** (`string`, required) The MD5 hash of the lowercase version of the member's email, email address, or contact_id. -- **exclude_fields_list** (`string`, optional) Comma-separated list of fields to exclude, using dot notation for sub-objects. -- **include_fields** (`string`, optional) Comma-separated list of specific fields to return, using dot notation for sub-objects. - - -## MailchimpMarketingApi.GetMemberNotes - -
- - -Retrieve recent notes for a Mailchimp list member. - -**Parameters** - -- **list_id** (`string`, required) The unique ID of the Mailchimp list to retrieve notes for. -- **subscriber_hash** (`string`, required) The MD5 hash of the lowercase version of the list member's email address. Used to identify the list member. -- **exclude_fields** (`string`, optional) Comma-separated list of fields to exclude using dot notation for sub-objects. -- **include_fields** (`string`, optional) A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters. -- **number_of_records_to_return** (`string`, optional) Specify the number of member notes to return, between 1 and 1000. Default is 10. -- **order_direction** (`string`, optional) Specifies the order direction for sorted note results. Accepts 'asc' or 'desc'. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **sort_notes_by_field** (`string`, optional) Specify the field to sort the notes by, e.g., 'created_at' or 'updated_at'. - - -## MailchimpMarketingApi.AddNoteToSubscriber - -
- - -Add a new note for a specific subscriber in Mailchimp. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique identifier for the Mailchimp list. This is required to add a note to a subscriber's profile in the specified list. -- **subscriber_email_hash** (`string`, required) MD5 hash of the lowercase version of the subscriber's email address. -- **subscriber_note_content** (`string`, optional) The content of the note for a subscriber. It must be limited to 1,000 characters. - - -## MailchimpMarketingApi.GetListMemberNote - -
- - -Retrieve a specific note for a list member. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique identifier for the mailing list to retrieve a member's note from. -- **member_identifier** (`string`, required) The MD5 hash of the lowercase email, the email address itself, or contact ID for a list member. -- **note_id** (`string`, required) The unique identifier for the note associated with a list member. -- **exclude_fields** (`string`, optional) A comma-separated list of fields to exclude using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return, using dot notation for sub-objects. - - -## MailchimpMarketingApi.UpdateMemberNote - -
- - -Update a specific note for a list member in Mailchimp. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID for the mailing list where the note is being updated. -- **member_identifier** (`string`, required) The MD5 hash, email address, or contact_id of the list member. -- **note_identifier** (`string`, required) The unique identifier for the note to be updated. -- **note_content** (`string`, optional) Content of the note to be updated. Must not exceed 1,000 characters. - - -## MailchimpMarketingApi.DeleteMemberNote - -
- - -Delete a specific note for a list member. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique identifier for the list in which the member's note is to be deleted. -- **member_identifier** (`string`, required) The MD5 hash of the member's email (in lowercase), the email itself, or contact_id for identifying list members. -- **note_id** (`string`, required) The ID for the specific note you want to delete for a list member. - - -## MailchimpMarketingApi.DeleteMemberDataPermanently - -
- - -Permanently delete a list member's data in Mailchimp. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID of the list from which the member will be deleted. This ID identifies the target list in Mailchimp. -- **member_email_hash** (`string`, required) MD5 hash of the lowercase version of the member's email address. - - -## MailchimpMarketingApi.GetAudienceMergeFields - -
- - -Get a list of all merge fields for an audience. - -**Parameters** - -- **audience_list_id** (`string`, required) The unique ID for the audience list in Mailchimp. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude from the response. Use dot notation for sub-object fields. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return, using dot notation for sub-objects. -- **is_required_merge_field** (`string`, optional) Indicates if the merge field is required. Pass 'true' or 'false'. -- **merge_field_type** (`string`, optional) Specify the type of merge field to retrieve, such as 'text', 'number', etc. -- **number_of_records_to_return** (`string`, optional) Specify the number of records to return, between 1 and 1000 (default is 10). -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.AddAudienceMergeField - -
- - -Add a new merge field to a specific audience. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **audience_list_id** (`string`, optional) The unique ID of the Mailchimp audience list to which the merge field will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetMergeFieldInfo - -
- - -Retrieve information about a specific merge field. - -**Parameters** - -- **list_id** (`string`, required) The unique ID of the Mailchimp list to get merge field information from. -- **merge_field_id** (`string`, required) The unique identifier for the merge field in the list. -- **exclude_merge_fields** (`string`, optional) Comma-separated list of fields to exclude using dot notation for sub-object parameters. -- **fields_to_return** (`string`, optional) Specify the fields to return, using comma-separated dot notation for nested fields. - - -## MailchimpMarketingApi.UpdateMergeField - -
- - -Update a specific merge field in a list. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **list_id** (`string`, optional) The unique ID for the list to update the merge field in. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **merge_field_id** (`string`, optional) The unique ID for the specific merge field to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.DeleteMergeField - -
- - -Delete a specific merge field from a Mailchimp list. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID for the Mailchimp list from which to delete the merge field. -- **merge_field_id** (`string`, required) The ID for the merge field to delete from the Mailchimp list. - - -## MailchimpMarketingApi.GetListWebhooksInfo - -
- - -Get information about all webhooks for a specific list. - -**Parameters** - -- **list_unique_identifier** (`string`, required) The unique identifier for the mailing list to retrieve webhook information. - - -## MailchimpMarketingApi.CreateMailchimpWebhook - -
- - -Create a new webhook for a specific Mailchimp list. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **mailchimp_list_id** (`string`, optional) The unique ID for the Mailchimp list for which the webhook will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetWebhookInfo - -
- - -Retrieve details of a specific Mailchimp webhook. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID for the Mailchimp list to retrieve the webhook information. -- **webhook_id** (`string`, required) Provide the unique ID of the webhook to retrieve its information. - - -## MailchimpMarketingApi.DeleteMailchimpWebhook - -
- - -Delete a specific webhook from a Mailchimp list. - -**Parameters** - -- **list_id** (`string`, required) The unique ID for the Mailchimp list from which the webhook will be deleted. This ID identifies the list containing the target webhook. -- **webhook_id** (`string`, required) The unique identifier for the webhook to be deleted from the specified Mailchimp list. - - -## MailchimpMarketingApi.UpdateWebhookSettings - -
- - -Update the settings for an existing webhook. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **list_id** (`string`, optional) The unique identifier for the mailing list associated with the webhook. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **webhook_identifier** (`string`, optional) The unique identifier for the webhook to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetListSignupForms - -
- - -Retrieve signup forms for a Mailchimp list. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID of the Mailchimp list for retrieving signup forms. - - -## MailchimpMarketingApi.CustomizeListSignupForm - -
- - -Customize a list's default signup form in Mailchimp. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **list_unique_id** (`string`, optional) The unique ID for the Mailchimp list to customize the signup form. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetListSubscriberLocations - -
- - -Retrieve subscriber location data by list. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique ID for the subscriber list in Mailchimp. -- **exclude_fields** (`string`, optional) Comma-separated list of fields to exclude using dot notation for sub-objects. -- **include_fields** (`string`, optional) A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.GetListSurveysInfo - -
- - -Retrieve information about surveys for a specific list. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique identifier for the list to retrieve survey information. This ID is essential for specifying which list's surveys to access. - - -## MailchimpMarketingApi.GetSurveyDetails - -
- - -Retrieve details about a specific Mailchimp survey. - -**Parameters** - -- **list_unique_id** (`string`, required) The unique identifier for the Mailchimp list associated with the survey. -- **survey_id** (`string`, required) The unique ID of the survey to retrieve details for in Mailchimp. - - -## MailchimpMarketingApi.PublishMailchimpSurvey - -
- - -Publishes a Mailchimp survey from draft to published status. - -**Parameters** - -- **mailchimp_list_id** (`string`, required) The unique ID for the Mailchimp list associated with the survey. -- **survey_id** (`string`, required) The unique identifier of the survey to be published. Required for specifying which survey to publish. - - -## MailchimpMarketingApi.UnpublishMailchimpSurvey - -
- - -Unpublish a survey in Mailchimp Marketing. - -**Parameters** - -- **mailchimp_list_id** (`string`, required) The unique ID for the Mailchimp list associated with the survey to unpublish. -- **survey_id** (`string`, required) Enter the unique ID of the survey to unpublish in Mailchimp. - - -## MailchimpMarketingApi.CreateSurveyCampaignEmail - -
- - -Generate a campaign email linking to a survey. - -**Parameters** - -- **list_identifier** (`string`, required) The unique identifier for the email list. -- **survey_identifier** (`string`, required) The unique identifier for the survey to link in the campaign email. - - -## MailchimpMarketingApi.GetAllLandingPages - -
- - -Retrieve all landing pages from Mailchimp. - -**Parameters** - -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude using dot notation for sub-objects. -- **include_fields** (`string`, optional) Comma-separated list of fields to include in the response, using dot notation for nested fields. -- **record_count** (`string`, optional) Specify the number of landing page records to return. Defaults to 10; maximum is 1000. -- **sort_by_field** (`string`, optional) Specify the field by which the landing pages should be sorted. -- **sort_direction** (`string`, optional) Specifies the order direction for sorting the results (e.g., ascending or descending). - - -## MailchimpMarketingApi.CreateMailchimpLandingPage - -
- - -Create an unpublished Mailchimp landing page. - -**Parameters** - -- **enable_restricted_data_processing** (`boolean`, optional) Enable restricted data processing under CCPA for tracking. True ensures compliance with CCPA. -- **landing_page_description** (`string`, optional) Provide a description for the Mailchimp landing page. -- **landing_page_name** (`string`, optional) The name of the landing page to be created. -- **landing_page_template_id** (`integer`, optional) The integer ID representing the template of the Mailchimp landing page. -- **landing_page_template_type** (`string`, optional) Specifies the template type for the landing page. Options are 'signup' or 'product'. -- **landing_page_title** (`string`, optional) The title that appears in the browser's title bar for the landing page. -- **mailchimp_list_id** (`string`, optional) The ID of the Mailchimp list associated with the landing page. -- **store_identifier** (`string`, optional) The unique identifier of the store linked to this landing page. -- **track_with_mailchimp** (`boolean`, optional) Set to true to use cookies for tracking unique visitors and calculating conversion rates. -- **use_account_default_list** (`string`, optional) Set to 'true' to use the account's default list instead of specifying a list_id for the landing page. - - -## MailchimpMarketingApi.GetLandingPageInfo - -
- - -Retrieve information about a specific landing page by ID. - -**Parameters** - -- **landing_page_id** (`string`, required) The unique identifier for the landing page to retrieve information about. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude. Use dot notation for sub-object parameters. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.UpdateLandingPage - -
- - -Update a landing page on Mailchimp. - -**Parameters** - -- **landing_page_id** (`string`, required) The unique ID for the landing page to be updated. -- **enable_restricted_data_processing** (`boolean`, optional) Set to true to enable Google’s restricted data processing in compliance with the CCPA for this landing page. -- **enable_tracking_with_mailchimp** (`boolean`, optional) Enable cookie tracking to monitor unique visitors and calculate conversion rates. More info: [here](https://mailchimp.com/help/use-track-mailchimp/). -- **landing_page_description** (`string`, optional) Provide a description for the landing page. This text summarizes the page's purpose and content. -- **landing_page_name** (`string`, optional) The name for the landing page to be updated. -- **landing_page_title** (`string`, optional) The title displayed in the browser's title bar for the landing page. -- **list_id_for_landing_page** (`string`, optional) The ID of the list associated with this landing page. -- **store_id** (`string`, optional) The ID of the store associated with this landing page. It must match an existing store in the Mailchimp account. - - -## MailchimpMarketingApi.DeleteLandingPage - -
- - -Delete a specified landing page. - -**Parameters** - -- **landing_page_id** (`string`, required) The unique ID for the landing page to be deleted. - - -## MailchimpMarketingApi.PublishLandingPage - -
- - -Publishes a landing page from draft or edited state. - -**Parameters** - -- **landing_page_id** (`string`, required) The unique identifier for the landing page to publish. - - -## MailchimpMarketingApi.UnpublishLandingPage - -
- - -Unpublish a draft or published landing page. - -**Parameters** - -- **landing_page_id** (`string`, required) The unique ID of the landing page to be unpublished. Required for identifying the specific page on Mailchimp. - - -## MailchimpMarketingApi.GetLandingPageHtml - -
- - -Retrieve the HTML content of a Mailchimp landing page. - -**Parameters** - -- **landing_page_id** (`string`, required) The unique identifier for the Mailchimp landing page to retrieve. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude from the response using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return, using dot notation for nested objects. - - -## MailchimpMarketingApi.GetCampaignReports - -
- - -Retrieve detailed campaign reports from Mailchimp. - -**Parameters** - -- **campaign_type** (`string`, optional) Specify the type of campaign to retrieve reports for. Valid options are dependent on Mailchimp's supported campaign types. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude from the report. Use dot notation for sub-objects. -- **included_fields** (`string`, optional) Comma-separated list of fields to include in the response, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) Specify the number of records to return, ranging from 10 to 1000. Default is 10. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **restrict_to_campaigns_sent_after** (`string`, optional) Restrict the response to campaigns sent after the specified ISO 8601 date and time. -- **restrict_to_campaigns_sent_before** (`string`, optional) Restrict response to campaigns sent before this ISO 8601 time format (e.g., 2015-10-21T15:41:36+00:00). - - -## MailchimpMarketingApi.GetCampaignReportDetails - -
- - -Retrieve detailed report for a specific sent campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique ID for the campaign to retrieve its report details. -- **exclude_fields_list** (`string`, optional) Comma-separated list of fields to be excluded from the response. Use dot notation for sub-object references. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return. Use dot notation for sub-objects. - - -## MailchimpMarketingApi.GetCampaignAbuseReports - -
- - -Get a list of abuse complaints for a specific campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the email marketing campaign to fetch abuse complaints. -- **exclude_fields** (`string`, optional) Comma-separated list of fields to exclude in the response using dot notation for sub-objects. -- **include_fields** (`string`, optional) A comma-separated list of fields to include in the response. Use dot notation for nested fields. - - -## MailchimpMarketingApi.GetCampaignAbuseReportDetails - -
- - -Retrieve details of an abuse report for a campaign. - -**Parameters** - -- **abuse_report_id** (`string`, required) The unique identifier for the abuse report. This ID is necessary to retrieve the specific report details. -- **campaign_unique_id** (`string`, required) The unique identifier for the campaign to fetch the abuse report details. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects. -- **include_fields** (`string`, optional) A comma-separated list of fields to include in the response, using dot notation for sub-objects. - - -## MailchimpMarketingApi.GetCampaignAdviceFeedback - -
- - -Get feedback based on a campaign's performance data. - -**Parameters** - -- **campaign_id** (`string`, required) The unique identifier for the campaign to get advice feedback on. -- **exclude_fields_to_return** (`string`, optional) A comma-separated list of fields to omit in the response. Use dot notation for sub-objects. -- **include_fields** (`string`, optional) Comma-separated fields to include in the response. Use dot notation for sub-objects. - - -## MailchimpMarketingApi.GetCampaignClickDetails - -
- - -Get details about link clicks in Mailchimp campaigns. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for a specific Mailchimp campaign. Required to fetch corresponding click details. -- **fields_to_exclude** (`string`, optional) Comma-separated list of fields to exclude using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) Specify the number of click records to return. The default is 10, and the maximum is 1000. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. -- **return_fields** (`string`, optional) A comma-separated list of fields to include in the response. Use dot notation for sub-objects. -- **sort_by_field** (`string`, optional) Specify the field to sort click reports by, such as 'clicks', 'unique_clicks', or 'link_name'. -- **sort_direction** (`string`, optional) Determines the order direction for sorted results, such as ascending or descending. - - -## MailchimpMarketingApi.GetCampaignLinkClickDetails - -
- - -Get click details for a specific campaign link. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the Mailchimp campaign to fetch link click details. -- **link_identifier** (`string`, required) The unique identifier for the link whose click details are to be retrieved in the campaign report. -- **excluded_fields_list** (`string`, optional) A comma-separated list of fields to exclude from the response, using dot notation for sub-objects. -- **include_fields** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-objects. - - -## MailchimpMarketingApi.FetchClickDetailsForCampaign - -
- - -Retrieve details on members who clicked a specific campaign link. - -**Parameters** - -- **campaign_id** (`string`, required) A unique identifier for the email marketing campaign to retrieve click details. -- **link_identifier** (`string`, required) The unique identifier for the specific link in the campaign. This ID is used to retrieve details of list members who clicked the link. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to include in the response. Use dot notation for nested fields. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **record_count** (`string`, optional) The number of member records to return. Default is 10 and the maximum is 1000. - - -## MailchimpMarketingApi.GetSubscriberClickDetails - -
- - -Retrieve details of a subscriber's link click in a campaign. - -**Parameters** - -- **campaign_id** (`string`, required) The unique identifier for the campaign to get subscriber click details. -- **link_identifier** (`string`, required) The unique ID for the link clicked within a campaign. Use to specify which link's click details to retrieve. -- **subscriber_email_hash** (`string`, required) The MD5 hash of the lowercase version of the subscriber's email address. -- **exclude_fields_list** (`string`, optional) Comma-separated list of fields to exclude from the result, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of specific fields to include in the response. Use dot notation for nested objects. - - -## MailchimpMarketingApi.GetCampaignOpenDetails - -
- - -Get details on opened campaign emails by list members. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the campaign. Required to retrieve open details for specific campaign emails. -- **exclude_fields_to_return** (`string`, optional) Comma-separated fields to exclude from the response. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) Specify the number of records to return. Default is 10, maximum is 1000. -- **pagination_offset** (`string`, optional) The number of records from the collection to skip for pagination. Default is 0. -- **sort_by_field** (`string`, optional) Specify the field by which to sort the open reports. Choose from available fields to determine the order of results. -- **sort_order_direction** (`string`, optional) Specify the order direction for sorted results. Use 'asc' for ascending or 'desc' for descending. -- **start_date_time_for_campaign_open_events** (`string`, optional) Restrict results to campaign open events that occur after this date and time in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00). - - -## MailchimpMarketingApi.GetCampaignSubscriberOpenDetails - -
- - -Retrieve details of a subscriber who opened a campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the campaign to retrieve subscriber open details. -- **subscriber_email_hash** (`string`, required) The MD5 hash of the lowercase version of the subscriber's email address. -- **exclude_fields_from_response** (`string`, optional) A comma-separated list of fields to exclude from the response, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return for the subscriber's open details. Use dot notation for sub-object fields. - - -## MailchimpMarketingApi.GetCampaignDomainPerformance - -
- - -Get top domain performance for an email campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the email campaign to retrieve domain performance statistics. -- **exclude_fields_from_report** (`string`, optional) Comma-separated list of fields to exclude from the report, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return in the response. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.GetCampaignSocialActivity - -
- - -Get social activity summary for a campaign using EepURL. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique id for the campaign to retrieve its social activity summary. -- **fields_to_exclude** (`string`, optional) Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to include in the response, using dot notation for sub-object parameters. - - -## MailchimpMarketingApi.RetrieveCampaignSubscriberActivity - -
- - -Retrieve subscriber activity for a specific campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for a specific email campaign. -- **activity_since_timestamp** (`string`, optional) Restrict results to email activity events occurring after this timestamp, using ISO 8601 format. -- **fields_to_exclude** (`string`, optional) Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to include in the response. Use dot notation for sub-object fields. -- **number_of_records_to_return** (`string`, optional) Specifies how many records to return. The default is 10, with a maximum of 1000. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.GetCampaignEmailActivity - -
- - -Retrieve specific list member's activity in a campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the campaign whose member activity is being retrieved. -- **subscriber_hash** (`string`, required) The MD5 hash of the lowercase version of the list member's email address for which you want to retrieve activity. -- **fields_to_exclude** (`string`, optional) A comma-separated list of fields to exclude from the response using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return, using dot notation for sub-objects. -- **restrict_activity_since** (`string`, optional) Restrict results to email activity events occurring after this time (ISO 8601 format). - - -## MailchimpMarketingApi.FetchCampaignOpenLocations - -
- - -Retrieve top open locations for a specific campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the specific marketing campaign. -- **fields_to_exclude** (`string`, optional) A comma-separated list of fields to exclude. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to include in the response. Use dot notation for sub-objects. -- **number_of_records** (`string`, optional) Specify the number of location records to return. Default is 10, maximum is 1000. -- **records_to_skip** (`string`, optional) Number of records to skip for pagination purposes. Default is 0. - - -## MailchimpMarketingApi.GetCampaignRecipients - -
- - -Retrieve information about campaign recipients. - -**Parameters** - -- **campaign_unique_identifier** (`string`, required) The unique identifier for the specific campaign whose recipients you want to retrieve. -- **fields_to_exclude** (`string`, optional) A comma-separated list of fields to exclude, using dot notation for sub-objects. -- **include_fields** (`string`, optional) Comma-separated list of fields to return, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) Specify the number of recipient records to return, between 1 and 1000. Default is 10. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.GetCampaignRecipientInfo - -
- - -Get information about a specific campaign recipient. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique ID for the campaign for which recipient information is requested. It should be in string format and is required to identify the specific campaign. -- **recipient_subscriber_hash** (`string`, required) MD5 hash of the lowercase version of the recipient's email address. -- **excluded_fields** (`string`, optional) A comma-separated list of fields to exclude. Use dot notation for sub-object parameters. -- **fields_to_return** (`string`, optional) Comma-separated fields to include in the response, using dot notation for sub-objects. - - -## MailchimpMarketingApi.GetCampaignSubReports - -
- - -Retrieve sub-reports of a specific parent campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique ID of the parent campaign to retrieve sub-reports for. -- **fields_to_exclude** (`string`, optional) A comma-separated list of fields to exclude. Use dot notation for sub-object parameters. -- **return_fields** (`string`, optional) Comma-separated list of fields to return, using dot notation for sub-objects. - - -## MailchimpMarketingApi.GetUnsubscribedCampaignMembers - -
- - -Get details of members unsubscribed from a specific campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the marketing campaign to retrieve unsubscribed members information. -- **exclude_fields_list** (`string`, optional) Comma-separated list of fields to exclude using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to include in the response, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) Specify the number of records to return. Default is 10 and maximum is 1000. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination, with a default value of 0. - - -## MailchimpMarketingApi.GetUnsubscribedMemberInfo - -
- - -Retrieve info on an unsubscribed list member from a campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the Mailchimp campaign. -- **subscriber_email_hash** (`string`, required) The MD5 hash of the lowercase version of the list member's email address for identification. -- **exclude_fields_list** (`string`, optional) A list of fields to exclude, using dot notation for sub-objects. -- **include_fields** (`string`, optional) Specify which fields to return, using a comma-separated list with dot notation for sub-objects. - - -## MailchimpMarketingApi.GetCampaignProductActivity - -
- - -Get breakdown of product activity for a campaign. - -**Parameters** - -- **campaign_unique_id** (`string`, required) The unique identifier for the campaign whose product activity is being retrieved. -- **exclude_fields_from_response** (`string`, optional) A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects. -- **include_fields** (`string`, optional) Comma-separated list of fields to return, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) The number of records to return, between 1 and 1000. Defaults to 10. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. -- **sort_results_by_field** (`string`, optional) Specify the field by which to sort the product activity results. Use dot notation for sub-object fields. - - -## MailchimpMarketingApi.GetAvailableTemplates - -
- - -Retrieve a list of available email templates. - -**Parameters** - -- **created_after_date** (`string`, optional) Retrieve templates created after a specific date. Use ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00). -- **exclude_fields_list** (`string`, optional) Comma-separated fields to exclude from the response, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to include in the response, using dot notation for sub-objects. -- **filter_by_category** (`string`, optional) Limit the results to templates that match a specific category. -- **number_of_records_to_return** (`string`, optional) Specify the number of template records to return (1-1000). Default is 10. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. Use for paginated responses. -- **restrict_before_date_created** (`string`, optional) Restrict the response to templates created before the specified date in ISO 8601 format. For example: 2015-10-21T15:41:36+00:00. -- **sort_order_direction** (`string`, optional) Specify the order direction for sorted results ('asc' for ascending, 'desc' for descending). -- **sort_templates_by_field** (`string`, optional) Specify the field to sort templates by. Determines the sorting order of returned templates. -- **template_content_type** (`string`, optional) Filter templates based on content structure. Use 'template' for legacy, 'multichannel' for new editor, or 'html' for code your own. -- **template_creator_user** (`string`, optional) Specify the Mailchimp account user who created the template to filter results. -- **template_folder_id** (`string`, optional) The unique ID for the folder containing templates to retrieve. -- **template_type** (`string`, optional) Specify the template type to limit the results. This filters the email templates based on their type. - - -## MailchimpMarketingApi.CreateMailchimpTemplate - -
- - -Create a new Classic template in Mailchimp. - -**Parameters** - -- **template_html_content** (`string`, required) The raw HTML content for the template, supporting Mailchimp Template Language. -- **template_name** (`string`, required) The name assigned to the new template. It should be descriptive for easy identification. -- **template_folder_id** (`string`, optional) The ID of the folder where the template will be stored. Ensure the folder exists in the Mailchimp account. - - -## MailchimpMarketingApi.GetMailchimpTemplateInfo - -
- - -Retrieves detailed information about a specific Mailchimp template. - -**Parameters** - -- **template_id** (`string`, required) The unique identifier for the Mailchimp template to retrieve information about. -- **fields_to_exclude** (`string`, optional) Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Specify a comma-separated list of fields to include in the response. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.UpdateEmailTemplate - -
- - -Update the details of an existing email template. - -**Parameters** - -- **template_html_content** (`string`, required) The raw HTML for the template using Mailchimp's Template Language. -- **template_name** (`string`, required) The name of the email template to update. -- **template_unique_id** (`string`, required) The unique identifier for the email template to be updated. -- **destination_folder_id** (`string`, optional) The ID of the folder where the template is currently located. - - -## MailchimpMarketingApi.DeleteEmailTemplate - -
- - -Delete a specific email template in Mailchimp. - -**Parameters** - -- **template_unique_id** (`string`, required) The unique identifier for the email template to be deleted in Mailchimp. - - -## MailchimpMarketingApi.GetTemplateEditableSections - -
- - -Retrieve editable sections and default content of a template. - -**Parameters** - -- **template_unique_id** (`string`, required) The unique identifier for the Mailchimp template to retrieve editable sections. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to include in the response. Use dot notation for sub-objects. - - -## MailchimpMarketingApi.GetAccountOrders - -
- - -Retrieve information about an account's ecommerce orders. - -**Parameters** - -- **exclude_order_fields** (`string`, optional) Comma-separated list of fields to exclude, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return. Use dot notation for sub-object parameters. -- **filter_by_outreach_id** (`string`, optional) Return orders associated with the specified outreach_id. -- **number_of_records_to_return** (`string`, optional) Specify the number of order records to return. Default is 10, maximum is 1000. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **restrict_to_campaign_id** (`string`, optional) Restrict results to orders with a specific campaign ID value. -- **restrict_to_outreach_orders** (`string`, optional) Restrict results to orders that have an outreach attached, such as an email campaign or Facebook ad. -- **specific_customer_id** (`string`, optional) Restrict results to orders made by a specific customer using their unique customer ID. - - -## MailchimpMarketingApi.GetEcommerceStoresInfo - -
- - -Retrieve information about all ecommerce stores in the account. - -**Parameters** - -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude from the response, using dot notation for nested objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return using dot notation for sub-objects. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **records_to_return** (`string`, optional) Specify the number of store records to return (10 to 1000). - - -## MailchimpMarketingApi.AddNewEcommerceStore - -
- - -Add a new e-commerce store to your Mailchimp account. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetEcommerceStoreInfo - -
- - -Retrieve detailed information about a specific eCommerce store. - -**Parameters** - -- **store_id** (`string`, required) A unique identifier for the store to retrieve information about. -- **excluded_fields_list** (`string`, optional) Comma-separated list of fields to exclude from the response, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.UpdateEcommerceStore - -
- - -Update an e-commerce store's details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) The unique identifier for the store you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.DeleteEcommerceStore - -
- - -Delete a store and its associated subresources. - -**Parameters** - -- **store_identifier** (`string`, required) The unique identifier for the store to be deleted. - - -## MailchimpMarketingApi.GetStoreCartsInfo - -
- - -Retrieve information about a store's ecommerce carts. - -**Parameters** - -- **store_identifier** (`string`, required) The unique identifier for the store to retrieve cart information. -- **exclude_fields** (`string`, optional) Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to include in the response, using dot notation for nested objects. -- **number_of_records_to_return** (`string`, optional) Specify the number of records to return, up to a maximum of 1000. Default is 10. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.AddCartToStore - -
- - -Add a new cart to an ecommerce store. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) The unique identifier for the ecommerce store where the new cart will be added. This is essential to specify the target store. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetCartInfo - -
- - -Fetch information about a specific ecommerce cart. - -**Parameters** - -- **cart_identifier** (`string`, required) The unique identifier for the cart in the ecommerce store. -- **store_identifier** (`string`, required) The unique identifier for the store. Use this to specify which store's cart information to retrieve. -- **fields_to_exclude** (`string`, optional) Comma-separated list of fields to exclude using dot notation for nested objects. -- **include_fields** (`string`, optional) Specify a comma-separated list of fields to return, using dot notation for sub-objects. - - -## MailchimpMarketingApi.UpdateCart - -
- - -Update a specific cart in an e-commerce store. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_id** (`string`, optional) The unique identifier for the store where the cart is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **cart_identifier** (`string`, optional) The unique identifier for the cart. Used to specify which cart to update in the e-commerce store. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.DeleteCart - -
- - -Deletes a specific cart from an ecommerce store. - -**Parameters** - -- **cart_id** (`string`, required) The ID for the cart to be deleted from the store. -- **store_identifier** (`string`, required) The unique identifier for the ecommerce store from which the cart will be deleted. - - -## MailchimpMarketingApi.GetCartLineItemsInfo - -
- - -Retrieve information about a cart's line items. - -**Parameters** - -- **cart_id** (`string`, required) The unique identifier for the cart to retrieve line items for. -- **store_identifier** (`string`, required) The unique identifier for the store containing the cart. -- **exclude_fields** (`string`, optional) Specify fields to exclude from the response. Use a comma-separated list with dot notation for sub-object parameters. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return in the response. Use dot notation for sub-object parameters. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Defaults to 0. -- **records_to_return** (`string`, optional) The number of cart line items to return, from 1 to 1000. Default is 10. - - -## MailchimpMarketingApi.AddLineItemToCart - -
- - -Add a new line item to an existing shopping cart. - -**Parameters** - -- **cart_identifier** (`string`, required) The unique identifier for the cart to which the line item will be added. -- **cart_line_item_identifier** (`string`, required) A unique identifier for the cart line item. -- **line_item_price** (`number`, required) The monetary price for the line item being added to the cart. Must be a numeric value. -- **line_item_quantity** (`integer`, required) The number of units for the specified product variant in the cart. -- **product_id** (`string`, required) A unique identifier for the product to be added to the cart line item. -- **product_variant_id** (`string`, required) A unique identifier for the product variant to be added to the cart. This is necessary to specify which variant of the product is being added. -- **store_identifier** (`string`, required) The unique identifier for the store. This is necessary to specify which store's cart will be updated. - - -## MailchimpMarketingApi.RetrieveCartLineItemInfo - -
- - -Get information about a specific cart line item. - -**Parameters** - -- **cart_identifier** (`string`, required) The unique identifier for the cart. Required to retrieve specific cart line item information. -- **cart_line_item_id** (`string`, required) The ID for the line item in a specific cart. Used to identify which item details to retrieve. -- **store_identifier** (`string`, required) Unique identifier for the store. Use this to specify which store's cart line item you want to retrieve. -- **exclude_fields** (`string`, optional) Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return for the cart line item. Use dot notation for sub-objects. - - -## MailchimpMarketingApi.UpdateCartLineItem - -
- - -Update a specific cart line item in Mailchimp. - -**Parameters** - -- **cart_id** (`string`, required) The unique identifier for the cart. -- **cart_line_item_id** (`string`, required) The unique identifier for the line item within the cart to be updated. -- **store_identifier** (`string`, required) The unique identifier for the e-commerce store. Essential for specifying which store's cart line item to update. -- **cart_line_item_price** (`number`, optional) The price of a cart line item to be updated. -- **cart_line_item_quantity** (`integer`, optional) The quantity of the cart line item to update. -- **product_identifier** (`string`, optional) A unique identifier for the product associated with the cart line item. -- **product_variant_identifier** (`string`, optional) A unique identifier for the product variant associated with the cart line item. Required to specify which variant to update. - - -## MailchimpMarketingApi.DeleteCartLineItem - -
- - -Delete a specific cart line item. - -**Parameters** - -- **cart_identifier** (`string`, required) The unique identifier for the cart in the eCommerce store. -- **line_item_id** (`string`, required) ID for the line item in the cart to be deleted. -- **store_identifier** (`string`, required) The unique identifier for the store from which the cart line item will be deleted. - - -## MailchimpMarketingApi.GetStoreCustomersInfo - -
- - -Retrieve information about a store's customers. - -**Parameters** - -- **store_identifier** (`string`, required) The unique identifier for the e-commerce store to retrieve customer information. -- **fields_to_exclude** (`string`, optional) Comma-separated fields to exclude in the response, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return, using dot notation for sub-objects. -- **filter_by_email_address** (`string`, optional) Restrict the response to customers matching the specified email address. -- **number_of_records_to_return** (`string`, optional) The number of customer records to return. Default is 10, maximum is 1000. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.AddCustomerToStore - -
- - -Add a new customer to an ecommerce store. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) The unique identifier for the ecommerce store where the customer will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetCustomerInfo - -
- - -Retrieve specific customer information from an eCommerce store. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier for a customer in a specific store. Required to fetch customer details. -- **store_id** (`string`, required) The unique identifier for the eCommerce store. -- **fields_to_exclude** (`string`, optional) Comma-separated list of fields to exclude using dot notation for sub-objects. -- **return_fields** (`string`, optional) A comma-separated list of fields to return for the customer data. Use dot notation for sub-objects. - - -## MailchimpMarketingApi.AddOrUpdateCustomerInStore - -
- - -Add or update a customer in an eCommerce store. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) The unique identifier for the eCommerce store where the customer will be added or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **customer_identifier** (`string`, optional) The unique identifier for the customer in the specified store. This ID is necessary for adding or updating customer details. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.UpdateCustomerInfo - -
- - -Update a customer's information in an ecommerce store. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) The unique identifier for the ecommerce store where the customer resides. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **customer_identifier** (`string`, optional) The unique identifier for a customer in a specific store. Required to update customer information. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.DeleteStoreCustomer - -
- - -Delete a customer from an ecommerce store. - -**Parameters** - -- **customer_identifier** (`string`, required) The unique identifier for the customer to be deleted from the store. This ID is used to specify which customer's records should be removed. -- **store_identifier** (`string`, required) The unique identifier for the ecommerce store from which the customer will be deleted. - - -## MailchimpMarketingApi.GetStorePromoRules - -
- - -Retrieve promo rules for a specified store. - -**Parameters** - -- **store_identifier** (`string`, required) The unique identifier for the store to retrieve promo rules from. -- **exclude_fields_list** (`string`, optional) Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return, using dot notation for sub-objects. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination, with a default value of 0. -- **records_to_return** (`string`, optional) Specify the number of promo rule records to return. Default is 10, maximum is 1000. - - -## MailchimpMarketingApi.AddStorePromoRule - -
- - -Add a new promo rule to an e-commerce store on Mailchimp. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_id** (`string`, optional) The unique identifier for the store where the promo rule will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetPromoRuleInfo - -
- - -Retrieve information about a specific promo rule in an ecommerce store. - -**Parameters** - -- **promo_rule_id** (`string`, required) The unique identifier for the promo rule in the store. Required to fetch specific rule details. -- **store_id** (`string`, required) The unique identifier for the ecommerce store. Required to fetch promo rule details. -- **exclude_fields** (`string`, optional) A comma-separated list of fields to exclude from the promo rule data. Use dot notation to reference sub-objects. -- **include_fields** (`string`, optional) A comma-separated list of specific fields to return using dot notation for sub-objects. - - -## MailchimpMarketingApi.UpdatePromoRule - -
- - -Update a promotional rule in an e-commerce store. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) Specify the unique identifier of the e-commerce store where the promo rule will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **promo_rule_identifier** (`string`, optional) The unique identifier for the promotional rule within the store. This is required to specify which promo rule to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.DeletePromoRuleFromStore - -
- - -Delete a promo rule from a specified ecommerce store. - -**Parameters** - -- **promo_rule_id** (`string`, required) The unique identifier for the promo rule to be deleted from the store. -- **store_id** (`string`, required) The unique identifier for the ecommerce store from which the promo rule will be deleted. - - -## MailchimpMarketingApi.GetStorePromoCodes - -
- - -Retrieve information about promo codes for a specific store. - -**Parameters** - -- **promo_rule_id** (`string`, required) The unique identifier for the promotion rule of a store to fetch promo codes. -- **store_identifier** (`string`, required) The unique identifier for the store to get promo codes from. Required to specify which store's promo codes to retrieve. -- **exclude_fields_list** (`string`, optional) Specify a comma-separated list of fields to exclude from the returned data. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of specific fields to include in the response, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) The number of promo code records to return. Default is 10, with a maximum of 1000. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination purposes. Default is 0. - - -## MailchimpMarketingApi.AddPromoCodeToStore - -
- - -Add a new promo code to an ecommerce store. - -**Parameters** - -- **promo_code** (`string`, required) The discount code for the promotion. It must be a UTF-8 string, with a maximum length of 50 characters. -- **promo_code_identifier** (`string`, required) A unique identifier for the promo code. Must be UTF-8, max length 50. -- **promo_rule_identifier** (`string`, required) The ID for the promotional rule associated with the store. -- **promotion_redemption_url** (`string`, required) The URL used in the promotion campaign. Must be UTF-8, max length 2000 characters. -- **store_identifier** (`string`, required) The unique identifier for the ecommerce store where the promo code will be added. -- **is_promo_code_enabled** (`boolean`, optional) Specifies if the promo code is enabled. Use true to enable, false to disable. -- **promo_code_usage_count** (`integer`, optional) Number of times the promo code has been used. This integer value helps track the utilization of the promo code. -- **promotion_creation_datetime** (`string`, optional) The date and time the promotion was created, in ISO 8601 format. -- **promotion_updated_datetime** (`string`, optional) The date and time the promotion was last updated, in ISO 8601 format. - - -## MailchimpMarketingApi.GetPromoCodeInfo - -
- - -Retrieve details of a specific promo code. - -**Parameters** - -- **promo_code_id** (`string`, required) The unique identifier for the promo code associated with a store. -- **promo_rule_id** (`string`, required) The unique identifier for the promo rule of a store. This is required to fetch specific promo code information. -- **store_id** (`string`, required) The unique identifier for the store. Required to specify which store's promo code information to retrieve. -- **exclude_fields** (`string`, optional) Comma-separated list of fields to exclude using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return, using dot notation for sub-objects. - - -## MailchimpMarketingApi.UpdatePromoCode - -
- - -Update details of a specific promo code. - -**Parameters** - -- **promo_code_identifier** (`string`, required) The unique identifier for the promo code of a store. -- **promo_rule_identifier** (`string`, required) The identifier for the promo rule in a store. Used to specify which promotional rule to update. -- **store_identifier** (`string`, required) The unique identifier for the eCommerce store in Mailchimp. -- **discount_code** (`string`, optional) The discount code for the promo. Must be UTF-8 and up to 50 characters. -- **is_promo_code_enabled** (`boolean`, optional) Set to true to enable the promo code, or false to disable it. -- **promo_code_usage_count** (`integer`, optional) Specifies how many times the promo code has been used. Accepts an integer value. -- **promotion_created_at** (`string`, optional) The promotion creation date and time in ISO 8601 format. -- **promotion_redemption_url** (`string`, optional) The URL for the promotion campaign. Must be UTF-8, max 2000 characters. -- **promotion_update_timestamp** (`string`, optional) The timestamp when the promotion was updated, in ISO 8601 format. This indicates the last update time of the promo code details. - - -## MailchimpMarketingApi.DeleteStorePromoCode - -
- - -Delete a promo code from an e-commerce store. - -**Parameters** - -- **promo_code_id** (`string`, required) The ID of the promo code to be deleted from the store. -- **promo_rule_id** (`string`, required) The unique identifier for the promo rule of a store, used to specify which promo rule the code belongs to. -- **store_identifier** (`string`, required) The unique identifier for the store from which the promo code will be deleted. - - -## MailchimpMarketingApi.GetStoreOrdersInfo - -
- - -Retrieve information about a store's orders via Mailchimp. - -**Parameters** - -- **store_identifier** (`string`, required) The unique identifier for the store whose orders information is to be retrieved. -- **exclude_order_fields** (`string`, optional) Comma-separated list of order fields to exclude, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-objects. -- **filter_by_customer_id** (`string`, optional) Restrict results to orders made by a specific customer using their unique customer ID. -- **number_of_records_to_return** (`string`, optional) Specify the number of records to return, between 1 and 1000, with a default of 10. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. -- **restrict_to_campaign_id** (`string`, optional) Restrict results to orders with the specified `campaign_id`. -- **restrict_to_outreach_orders** (`string`, optional) Indicate whether to restrict results to orders with an outreach attached, such as an email campaign or Facebook ad. Accepts 'true' or 'false'. -- **specific_outreach_id** (`string`, optional) Restrict results to orders with a specific outreach ID. - - -## MailchimpMarketingApi.AddOrderToStore - -
- - -Add a new order to an ecommerce store. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) The unique identifier for the store where the order will be added. This should be a string value that accurately corresponds to an existing store in the system. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetSpecificOrderInfo - -
- - -Retrieve information about a specific order in a store. - -**Parameters** - -- **order_id** (`string`, required) The unique identifier for the order in a store. It is required to retrieve specific order details. -- **store_identifier** (`string`, required) The unique identifier for the store. Required to fetch order information. -- **exclude_fields_list** (`string`, optional) Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters. -- **include_fields** (`string`, optional) Comma-separated list of fields to return, using dot notation for sub-objects. - - -## MailchimpMarketingApi.UpdateEcommerceOrder - -
- - -Add or update an order in an ecommerce store. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) The unique identifier for the store in which the order is being added or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **order_identifier** (`string`, optional) The unique identifier for the order in the store. Used to specify which order to update or add. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.UpdateOrderMailchimp - -
- - -Update a specific order in Mailchimp's e-commerce store. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) The unique identifier for the store in which the order is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **order_id** (`string`, optional) The unique identifier for the order in the store that needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.DeleteOrderInEcommerceStore - -
- - -Delete an order from an eCommerce store. - -**Parameters** - -- **ecommerce_store_id** (`string`, required) The unique identifier for the eCommerce store from which the order will be deleted. -- **order_id** (`string`, required) The unique identifier for the order to delete within the store. - - -## MailchimpMarketingApi.GetOrderLineItems - -
- - -Retrieve information about order line items. - -**Parameters** - -- **order_id** (`string`, required) The unique identifier for the order within the store. Required to specify which order's line items to retrieve. -- **store_id** (`string`, required) The unique identifier for the store. Used to specify which store's order line items to retrieve. -- **exclude_fields** (`string`, optional) Comma-separated list of fields to exclude, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) Specify the number of line item records to return, between 1 and 1000. Default is 10. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination, default is 0. - - -## MailchimpMarketingApi.AddOrderLineItem - -
- - -Add a new line item to an existing order. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) The unique identifier for the store where the order is placed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **order_id** (`string`, optional) The unique identifier for the order in the store, used to specify which order to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetSpecificOrderLineItemInfo - -
- - -Get details about a specific order line item. - -**Parameters** - -- **order_id** (`string`, required) The unique identifier for the order within a store. Required to fetch details of the specific order line item. -- **order_line_item_id** (`string`, required) The unique identifier for the line item in the order. -- **store_identifier** (`string`, required) The unique identifier for the store. This is required to specify which store's data to retrieve. -- **exclude_fields** (`string`, optional) A comma-separated list of specific fields to exclude from the response. Use dot notation for sub-object fields. -- **return_fields** (`string`, optional) Comma-separated list of fields to return. Use dot notation for sub-objects. - - -## MailchimpMarketingApi.UpdateOrderLineItem - -
- - -Update a specific order line item. - -**Parameters** - -- **line_item_id** (`string`, required) The unique identifier for the line item within an order in a store. -- **order_id** (`string`, required) The unique identifier for the order within the store. Required to specify which order is being updated. -- **store_identifier** (`string`, required) Unique identifier for the store where the order was placed. -- **line_item_discount_amount** (`number`, optional) The total discount amount applied to this line item in the order. Provide as a numerical value. -- **order_line_item_price** (`number`, optional) Specify the updated price for the order line item. This should be a numerical value reflecting the new cost of the item. -- **order_line_item_quantity** (`integer`, optional) Specify the quantity of the order line item to be updated. -- **product_identifier** (`string`, optional) A unique identifier for the product associated with the order line item. -- **product_variant_id** (`string`, optional) A unique identifier for the product variant associated with the order line item. This is required to specify the variant of the product being referenced. - - -## MailchimpMarketingApi.DeleteOrderLineItem - -
- - -Delete a specific order line item. - -**Parameters** - -- **order_id** (`string`, required) The unique identifier for the order within a store. This is required to delete a line item from the specified order. -- **order_line_item_id** (`string`, required) The unique identifier for the line item of an order to be deleted. -- **store_id** (`string`, required) Unique identifier for the store from which the order line item will be deleted. - - -## MailchimpMarketingApi.GetStoreProductsInfo - -
- - -Get information about a store's products from Mailchimp. - -**Parameters** - -- **store_identifier** (`string`, required) The unique identifier for the store whose product information is being retrieved. -- **exclude_fields_list** (`string`, optional) Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters. -- **number_of_records_to_return** (`string`, optional) Specify the number of product records to return, from 1 to 1000. The default value is 10. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **return_fields_list** (`string`, optional) A comma-separated list of specific fields to return. Use dot notation for sub-objects. - - -## MailchimpMarketingApi.AddProductToStore - -
- - -Add a new product to a Mailchimp store. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_id** (`string`, optional) The unique identifier of the store where the product will be added. This is required to specify the target store. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetProductInfo - -
- - -Get information about a specific product from an ecommerce store. - -**Parameters** - -- **product_id** (`string`, required) The unique identifier for the product within a store. This ID is required to fetch specific product details. -- **store_identifier** (`string`, required) The unique identifier for the store from which to retrieve the product information. -- **fields_to_exclude** (`string`, optional) Comma-separated fields to exclude in the response, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return, using dot notation for sub-objects. - - -## MailchimpMarketingApi.UpdateProductInfo - -
- - -Update details of a specific product in a store. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) The identifier for the specific store whose product details are being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **product_identifier** (`string`, optional) The unique identifier for the product within a store. Required for updating product details. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.UpdateEcommerceProduct - -
- - -Update a specific product in an ecommerce store. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) The unique identifier of the store to update the product in. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **product_id** (`string`, optional) The unique identifier for the product within a store. This is used to specify which product needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.DeleteEcommerceProduct - -
- - -Delete a product from an eCommerce store. - -**Parameters** - -- **product_id** (`string`, required) The unique identifier for the product to delete from a store. -- **store_id** (`string`, required) The unique identifier of the eCommerce store from which the product will be deleted. - - -## MailchimpMarketingApi.GetProductVariantsInfo - -
- - -Retrieve information on product variants from a store. - -**Parameters** - -- **product_identifier** (`string`, required) The unique identifier for the product within the store. -- **store_id** (`string`, required) The unique identifier for the store. Required to fetch product variant data. -- **exclude_fields_list** (`string`, optional) Specify fields to exclude using a comma-separated list. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) Specify the number of product variant records to return, default is 10, max is 1000. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.AddProductVariantMailchimp - -
- - -Add a new variant to an existing product in Mailchimp. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) The unique identifier for the store where the product variant will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **product_id** (`string`, optional) The ID for the product within a store to which a new variant will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.GetProductVariantInfo - -
- - -Retrieve information on a specific product variant. - -**Parameters** - -- **product_id** (`string`, required) The ID of the product in the specified store. Required to retrieve variant details. -- **product_variant_id** (`string`, required) The unique identifier for the product variant in the store. -- **store_id** (`string`, required) The unique identifier for the store to query the product variant details. -- **exclude_fields** (`string`, optional) Comma-separated list of fields to exclude in the response. Use dot notation for sub-object parameters. -- **fields_to_return** (`string`, optional) A comma-separated list of product variant fields to return, using dot notation for sub-objects. - - -## MailchimpMarketingApi.UpdateProductVariant - -
- - -Add or update a product variant in an ecommerce store. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) The unique identifier for the ecommerce store. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **product_identifier** (`string`, optional) The unique identifier for the product in the store. This ID is used to specify which product's variant is being added or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **product_variant_id** (`string`, optional) The unique identifier for the product variant to be updated or added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.ModifyProductVariant - -
- - -Update a product variant in an e-commerce store. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **store_identifier** (`string`, optional) A unique identifier for the store where the product variant will be updated. Must be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **product_identifier** (`string`, optional) The unique identifier for a product in a store. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **product_variant_id** (`string`, optional) The ID for the product variant to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MailchimpMarketingApi.DeleteProductVariant - -
- - -Delete a product variant from an ecommerce store. - -**Parameters** - -- **product_id** (`string`, required) The unique identifier for the product within a store to which the variant belongs. -- **product_variant_id** (`string`, required) The identifier for the product variant to be deleted from the store. -- **store_identifier** (`string`, required) The unique identifier for the store from which the product variant will be deleted. - - -## MailchimpMarketingApi.GetProductImages - -
- - -Retrieve information about a product's images. - -**Parameters** - -- **product_identifier** (`string`, required) The unique identifier for a product in a specific store. Required to retrieve product image details. -- **store_id** (`string`, required) The unique identifier for the e-commerce store. -- **exclude_fields** (`string`, optional) A comma-separated list of fields to exclude from the response using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) Specify the number of product image records to return, ranging from 1 to 1000. Defaults to 10 if not provided. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.AddProductImage - -
- - -Add a new image to a specific product. - -**Parameters** - -- **product_id** (`string`, required) The unique identifier for the product in the store. Required to specify which product the image will be added to. -- **product_image_id** (`string`, required) A unique identifier for the product image to be added. -- **product_image_url** (`string`, required) The URL of the image to be added to the product. -- **store_id** (`string`, required) The unique identifier for the store where the product is hosted. Required to specify which store's catalog you are updating. -- **product_variant_ids** (`array[string]`, optional) List of product variant IDs using the image. - - -## MailchimpMarketingApi.GetProductImageInfo - -
- - -Retrieve details of a specific product image in an eCommerce store. - -**Parameters** - -- **product_identifier** (`string`, required) The unique identifier for the product in the store. -- **product_image_id** (`string`, required) The unique identifier for the product image to retrieve details about. -- **store_identifier** (`string`, required) The unique identifier of the store. Used to specify the store whose product image information is to be retrieved. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude, using dot notation for sub-object parameters. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object fields. - - -## MailchimpMarketingApi.UpdateProductImageMailchimp - -
- - -Update a product image in an e-commerce store. - -**Parameters** - -- **product_identifier** (`string`, required) The unique identifier for a product in the store. Used to specify which product's image should be updated. -- **product_image_id** (`string`, required) The unique identifier for the product image to update. -- **store_id** (`string`, required) The unique identifier for the e-commerce store. -- **product_image_unique_id** (`string`, optional) A unique identifier for a specific product image to be updated in the store. -- **product_image_url** (`string`, optional) The URL of the product image to be updated. -- **variant_ids** (`array[string]`, optional) A list of product variant IDs associated with the image. Each variant ID should be a string. - - -## MailchimpMarketingApi.DeleteProductImage - -
- - -Delete an image from a product in an e-commerce store. - -**Parameters** - -- **product_id** (`string`, required) The unique ID for the product in the store from which the image will be deleted. -- **product_image_id** (`string`, required) The unique identifier for the product image to be deleted from the store's inventory. -- **store_identifier** (`string`, required) The unique identifier for the e-commerce store. - - -## MailchimpMarketingApi.SearchMailchimpCampaigns - -
- - -Search for email campaigns using query terms. - -**Parameters** - -- **search_query** (`string`, required) The terms used to filter and search Mailchimp campaigns. -- **exclude_campaign_fields** (`string`, optional) Comma-separated list of fields to exclude from the search results. Use dot notation for sub-objects. -- **included_fields** (`string`, optional) Specify the fields to return as a comma-separated list. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.SearchMailchimpMembers - -
- - -Search for Mailchimp list members across lists. - -**Parameters** - -- **search_query** (`string`, required) The search query to filter list members by email, first name, or last name. -- **fields_to_exclude** (`string`, optional) A comma-separated list specifying which fields to exclude from results. Use dot notation for sub-object references. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return, using dot notation for sub-objects. -- **list_unique_id** (`string`, optional) The unique identifier for a Mailchimp list to restrict the search. Use this to specify a particular list. - - -## MailchimpMarketingApi.CheckMailchimpApiHealth - -
- - -Checks the health status of the Mailchimp API. - -**Parameters** - -This tool does not take any parameters. - -## MailchimpMarketingApi.GetFacebookAdsList - -
- - -Retrieve a list of Facebook ads from Mailchimp. - -**Parameters** - -- **exclude_fields** (`string`, optional) A comma-separated list of fields to exclude. Utilize dot notation for sub-object fields. -- **fields_to_return** (`string`, optional) A comma-separated list of specific fields to return in the response. Use dot notation for sub-object parameters. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination, with a default of 0. -- **records_count** (`string`, optional) Specify the number of Facebook ad records to return. Default is 10, maximum is 1000. -- **sort_by_field** (`string`, optional) Specify the field by which to sort the Facebook ads. -- **sort_direction** (`string`, optional) Specifies the sorting order: 'asc' for ascending or 'desc' for descending. - - -## MailchimpMarketingApi.GetFacebookAdDetails - -
- - -Retrieve details of a specific Facebook ad campaign. - -**Parameters** - -- **facebook_ad_outreach_id** (`string`, required) The unique outreach ID of the Facebook ad to retrieve details for. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return; use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.GetFacebookAdsReports - -
- - -Get reports of Facebook ads for marketing analysis. - -**Parameters** - -- **exclude_fields** (`string`, optional) A comma-separated list of fields to exclude in the report. Use dot notation for sub-objects if needed. -- **include_fields** (`string`, optional) Comma-separated list of fields to return. Use dot notation for sub-object parameters. -- **pagination_offset** (`string`, optional) The number of records to skip for pagination. Default is 0. -- **record_count** (`string`, optional) Specify the number of Facebook ads records to return. Default is 10, maximum is 1000. -- **sort_order_direction** (`string`, optional) Specifies the order direction for sorting results. Use 'asc' for ascending and 'desc' for descending. -- **sorting_field_for_results** (`string`, optional) Specifies the field by which to sort the Facebook ads report results. - - -## MailchimpMarketingApi.GetFacebookAdReport - -
- - -Get report details of a Facebook ad campaign. - -**Parameters** - -- **outreach_id** (`string`, required) The unique identifier for the Facebook ad campaign to retrieve the report for. -- **fields_to_exclude** (`string`, optional) List of fields to exclude from the report, using comma-separated values. Use dot notation for sub-object parameters. -- **include_fields** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.GetFacebookAdsProductActivity - -
- - -Retrieve product activity breakdown for a Facebook ads outreach. - -**Parameters** - -- **outreach_id** (`string`, required) The unique identifier for the Facebook ads outreach campaign to retrieve the product activity breakdown. -- **exclude_fields** (`string`, optional) Comma-separated list of fields to exclude using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to include in the response, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) The number of records to return. Default is 10. Maximum is 1000. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination. Default is 0. -- **sort_by_field** (`string`, optional) Specify the field to sort the returned records by, using the field name. - - -## MailchimpMarketingApi.GetLandingPageReport - -
- - -Retrieve the report for a specific landing page. - -**Parameters** - -- **landing_page_outreach_id** (`string`, required) The outreach ID for the landing page you want to retrieve the report for. -- **exclude_report_fields** (`string`, optional) A comma-separated list of fields to exclude from the landing page report. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return, using dot notation for sub-objects. - - -## MailchimpMarketingApi.GetLandingPageReports - -
- - -Retrieve reports of landing pages from Mailchimp. - -**Parameters** - -- **fields_to_exclude** (`string`, optional) A comma-separated list of fields to exclude from the report. Use dot notation for sub-objects. -- **include_fields** (`string`, optional) A comma-separated list of fields to include in the response, using dot notation for sub-objects. -- **number_of_records_to_return** (`string`, optional) Specify the number of records to return, from 1 to 1000. Defaults to 10 if not provided. -- **records_to_skip** (`string`, optional) The number of records to skip for pagination. Default is 0. - - -## MailchimpMarketingApi.GetSurveyReports - -
- - -Retrieve detailed reports for marketing surveys. - -**Parameters** - -- **fields_to_exclude** (`string`, optional) A comma-separated list of fields to exclude from survey reports. Use dot notation for sub-object fields. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to return. Use dot notation for sub-objects. -- **number_of_records** (`string`, optional) The number of survey report records to return. Defaults to 10. Max value is 1000. -- **pagination_offset** (`string`, optional) Number of records to skip for pagination, default is 0. - - -## MailchimpMarketingApi.GetSurveyReport - -
- - -Retrieve report details for a specific survey. - -**Parameters** - -- **survey_id** (`string`, required) The unique ID of the survey to retrieve the report for. -- **exclude_fields_list** (`string`, optional) A comma-separated list of fields to exclude from the survey report. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) A comma-separated list of fields to include in the survey report. Use dot notation for sub-objects. - - -## MailchimpMarketingApi.GetSurveyQuestionReports - -
- - -Retrieve reports for survey questions by survey ID. - -**Parameters** - -- **survey_identifier** (`string`, required) The unique identifier for the survey to retrieve question reports. -- **exclude_fields_from_report** (`string`, optional) A comma-separated list of fields to exclude from the survey report. Use dot notation for nested fields. -- **include_fields** (`string`, optional) Comma-separated list of fields to return for survey questions. Use dot notation for sub-object parameters. - - -## MailchimpMarketingApi.GetSurveyQuestionReport - -
- - -Get report data for a specific survey question. - -**Parameters** - -- **survey_id** (`string`, required) The unique identifier for the survey. Required to retrieve specific survey question reports. -- **survey_question_id** (`string`, required) The unique ID of the survey question to get the report for. -- **fields_to_exclude** (`string`, optional) A comma-separated list of fields to exclude from the survey question report, using dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return using dot notation for sub-objects. - - -## MailchimpMarketingApi.GetSurveyQuestionAnswers - -
- - -Retrieve answers for a specific survey question. - -**Parameters** - -- **survey_identifier** (`string`, required) The unique identifier for the survey whose question answers are being retrieved. -- **survey_question_id** (`string`, required) The unique identifier for the survey question to retrieve answers from. -- **exclude_fields** (`string`, optional) Specify fields to exclude from the response using a comma-separated list. Use dot notation for sub-objects. -- **fields_to_return** (`string`, optional) Comma-separated list of fields to return, using dot notation for sub-objects. -- **filter_by_respondent_familiarity** (`string`, optional) Filter survey responses based on the familiarity level of the respondents. Accepts a string value. - - -## MailchimpMarketingApi.GetSurveyResponses - -
- - -Retrieve responses to a specific survey. - -**Parameters** - -- **survey_id** (`string`, required) The unique identifier for the survey to retrieve responses for. -- **chosen_answer_id** (`string`, optional) The ID of the selected answer option to filter survey responses. -- **exclude_survey_fields** (`string`, optional) A comma-separated list of fields to exclude from survey responses. Use dot notation for sub-objects. -- **filter_by_respondent_familiarity** (`string`, optional) Filter survey responses by respondents' familiarity level. Provide a familiarity string to narrow down results. -- **included_fields** (`string`, optional) A comma-separated list of fields to return in the response. Use dot notation for sub-objects. -- **question_id** (`string`, optional) The ID of the question that was answered to filter responses. - - -## MailchimpMarketingApi.GetSurveyResponse - -
- - -Retrieve details of a specific survey response. - -**Parameters** - -- **survey_id** (`string`, required) The ID of the survey to retrieve the response from. -- **survey_response_id** (`string`, required) The ID of the specific survey response to retrieve. - - -## MailchimpMarketingApi.GetDomainDetails - -
- - -Retrieve details for a specific verified domain. - -**Parameters** - -- **domain_name** (`string`, required) The domain name to retrieve details for. Must be a verified domain on the account. - - -## MailchimpMarketingApi.DeleteVerifiedDomain - -
- - -Deletes a verified domain from your Mailchimp account. - -**Parameters** - -- **domain_name** (`string`, required) The domain name to be deleted from your Mailchimp account. - - -## MailchimpMarketingApi.VerifySendingDomain - -
- - -Verify if a domain is authorized for sending emails. - -**Parameters** - -- **domain_name_to_verify** (`string`, required) The domain name you wish to verify for sending emails through Mailchimp. -- **verification_code** (`string`, required) The code sent to the provided email address for domain verification. - - -## MailchimpMarketingApi.GetVerifiedMailchimpDomains - -
- - -Retrieve all verified sending domains for a Mailchimp account. - -**Parameters** - -This tool does not take any parameters. - -## MailchimpMarketingApi.AddVerifiedDomain - -
- - -Add a verified domain to your Mailchimp account. - -**Parameters** - -- **verification_email_address** (`string`, required) The email address at the domain to verify, which will receive a two-factor challenge for verification. - - - -## Reference - -Below is a reference of enumerations used by some of the tools in the MailchimpMarketingApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - - -## Auth - -The MailchimpMarketingApi MCP Server uses the Auth Provider with id `arcade-mailchimp` to connect to users' MailchimpMarketingApi accounts. In order to use the MCP Server, you will need to configure the `arcade-mailchimp` auth provider. - -The Mailchimp OAuth provider enables secure authentication with Mailchimp's Marketing API using OAuth 2.0. This allows your tools and agents to access user data and perform actions on their behalf. For detailed information on setting up the OAuth provider, including how to register your application with Mailchimp and configure the auth provider in Arcade, see the [Mailchimp Auth Provider documentation](/references/auth-providers/mailchimp). - - \ No newline at end of file diff --git a/app/en/resources/integrations/productivity/miro-api/page.mdx b/app/en/resources/integrations/productivity/miro-api/page.mdx deleted file mode 100644 index 8fb33fd29..000000000 --- a/app/en/resources/integrations/productivity/miro-api/page.mdx +++ /dev/null @@ -1,3576 +0,0 @@ -# MiroApi -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The MiroApi MCP Server offers a comprehensive suite of tools for managing and interacting with Miro boards and organizational settings. Users can perform a variety of actions, including: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your - own tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## MiroApi.GetAccessTokenInfo - -
- - -Retrieve detailed information about an access token. - -**Parameters** - -This tool does not take any parameters. - -## MiroApi.GetRecentAuditLogs - -
- - -Retrieve recent audit logs from the last 90 days. - -**Parameters** - -- **end_date_for_audit_logs** (`string`, required) Retrieve audit logs created before this date and time. Format: UTC ISO 8601, including milliseconds and trailing Z. -- **start_date_time_for_audit_logs** (`string`, required) Retrieve audit logs created after the specified UTC start date and time in ISO 8601 format, including milliseconds and 'Z'. -- **maximum_results_limit** (`integer`, optional) Specify the maximum number of audit logs to retrieve in a single request. Defaults to 100 if not specified. Use a smaller number to limit the results or manage pagination efficiently. -- **pagination_cursor** (`string`, optional) Cursor value for paginating through audit log results. Use the value returned in the previous response to obtain the next set of results. -- **sort_order** (`string`, optional) Specifies the sort order for viewing audit logs: 'ASC' for ascending or 'DESC' for descending. - - -## MiroApi.GetBoardClassificationSettings - -
- - -Retrieve board classification settings for an organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique string ID of the organization for which to retrieve board classification settings. - - -## MiroApi.UpdateBoardClassification - -
- - -Update board classification for team boards in Miro. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required for specifying which organization's team boards will be classified. -- **team_identifier** (`string`, required) The unique identifier for the team whose board classification is being updated. This is used to specify which team's boards will be affected by the API call. -- **assign_to_not_classified_only** (`boolean`, optional) If true, assign data classification only to non-classified boards; otherwise, assign to all boards. -- **data_classification_label_id** (`integer`, optional) The ID of the data classification label to assign to a team's boards. - - -## MiroApi.GetTeamBoardClassificationSettings - -
- - -Retrieve board classification settings for an enterprise team. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required for retrieving team settings. -- **team_identifier** (`string`, required) ID of the team whose board classification settings you want to retrieve. Must be a string. - - -## MiroApi.UpdateTeamBoardClassificationSettings - -
- - -Updates board classification settings for a team's existing board. - -**Parameters** - -- **organization_id** (`string`, required) ID of the organization whose team's board classification settings will be updated. -- **team_identifier** (`string`, required) The unique identifier for the team to update board classification settings for. -- **data_classification_default_label_id** (`integer`, optional) The ID of the default data classification label to set for the team. This should be an integer. -- **enable_data_classification** (`boolean`, optional) Enable data classification for the team. Set to `true` to enable, `false` to disable. - - -## MiroApi.RetrieveBoardClassification - -
- - -Get the data classification of a Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier for the Miro board to retrieve classification. -- **organization_id** (`string`, required) The unique identifier of the organization for which you want to retrieve the board classification. -- **team_id** (`string`, required) The unique identifier of the team to fetch the board classification from. - - -## MiroApi.SetBoardClassification - -
- - -Update the data classification for a Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) The unique identifier of the board to update its classification. -- **organization_id** (`string`, required) The ID of the organization to update the board classification for. Required for enterprise users with Company Admin rights. -- **team_id** (`string`, required) The unique identifier of the team associated with the board to be updated. Required for classification updates. -- **data_classification_label_id** (`string`, optional) The ID of the data classification label to apply to the board. - - -## MiroApi.RetrieveEdiscoveryCases - -
- - -Retrieve eDiscovery cases for your organization. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization to retrieve the eDiscovery cases for. -- **maximum_items** (`integer`, optional) Specifies the maximum number of eDiscovery cases to retrieve in the result list. -- **pagination_cursor** (`string`, optional) Indicator for result position in pagination. Leave empty for first page; use previous request's cursor for subsequent pages. - - -## MiroApi.RetrieveCaseInfo - -
- - -Retrieve detailed information about an organization's case. - -**Parameters** - -- **case_id** (`string`, required) The unique ID of the case to retrieve information for. -- **organization_id** (`string`, required) The unique ID of the organization whose case information you want to retrieve. - - -## MiroApi.RetrieveLegalHolds - -
- - -Retrieve all legal holds for an organization's case. - -**Parameters** - -- **case_id** (`string`, required) The ID of the case for which you want to retrieve the list of legal holds. Ensure it is a valid string identifying the case. -- **organization_id** (`string`, required) The ID of the organization to retrieve the list of legal holds for a specific case. Required for identifying the organization. -- **maximum_items_in_result** (`integer`, optional) Specify the maximum number of items to return in the result list. -- **pagination_cursor** (`string`, optional) An indicator of the result page position. Leave empty for the first page, or use the previous request's cursor value for subsequent pages. - - -## MiroApi.RetrieveLegalHoldInfo - -
- - -Retrieve legal hold information for a specific case. - -**Parameters** - -- **case_identifier** (`string`, required) The unique ID of the case for which you want to retrieve the legal hold information. -- **legal_hold_identifier** (`string`, required) The unique identifier for the legal hold you want to retrieve information about. -- **organization_id** (`string`, required) The unique ID of the organization to retrieve the legal hold information. - - -## MiroApi.ReviewLegalHoldBoards - -
- - -Review Miro boards under legal hold for legal proceedings. - -**Parameters** - -- **case_id** (`string`, required) The unique identifier for the case associated with the legal hold items you wish to retrieve. -- **legal_hold_identifier** (`string`, required) The unique identifier for the legal hold to retrieve content items under hold. -- **organization_id** (`string`, required) The ID of the organization to retrieve the list of content items under hold. -- **maximum_items_in_result** (`integer`, optional) The maximum number of items to include in the result list. Use to limit response size. -- **page_cursor** (`string`, optional) An indicator for pagination. Leave empty for the first page or use a value from the previous request's cursor field for next pages. - - -## MiroApi.CreateBoardExportJob - -
- - -Initiates an export job for specified boards in an organization. - -**Parameters** - -- **board_export_request_id** (`string`, required) A unique identifier for the export job, used to track the export process of boards in Miro. -- **organization_id** (`string`, required) Unique identifier of the organization for exporting boards. -- **export_board_ids** (`array[string]`, optional) A list of board IDs to be exported. Provide the IDs as an array of strings. -- **export_format** (`string`, optional) Specifies the format for exporting the board. Options: SVG (default), HTML, or PDF. - - -## MiroApi.GetExportJobStatus - -
- - -Retrieve the status of a Miro board export job. - -**Parameters** - -- **board_export_job_id** (`string`, required) Unique identifier for the Miro board export job. -- **organization_id** (`string`, required) Unique identifier for the Miro organization. Required for retrieving the export job status. - - -## MiroApi.RetrieveMiroExportResults - -
- - -Retrieve results of a Miro board export job. - -**Parameters** - -- **job_identifier** (`string`, required) Unique identifier for the Miro board export job, required to retrieve export results. -- **organization_unique_identifier** (`string`, required) The unique identifier for the organization. Required to retrieve export job results. - - -## MiroApi.FetchBoardContentChanges - -
- - -Fetches content changes for board items in your organization. - -**Parameters** - -- **end_modification_datetime** (`string`, required) Specify the end date and time for filtering content logs based on when a board item was last modified. Use UTC format adhering to ISO 8601 with a trailing Z offset. -- **organization_id** (`string`, required) A string representing the unique identifier of the organization required for fetching board content changes. -- **start_date_time** (`string`, required) Specify the start date and time for filtering content logs, in UTC format (ISO 8601 with trailing Z). -- **board_ids** (`array[string]`, optional) List of board IDs for retrieving content logs. Provide as an array of strings. -- **max_results_per_call** (`integer`, optional) The maximum number of results to return per call. If exceeded, a cursor is provided for pagination. -- **pagination_cursor** (`string`, optional) Cursor for pagination to fetch the next set of results. Use the cursor value from the previous response to continue retrieving paginated results. -- **sort_order_by_date** (`string`, optional) Specify 'asc' for ascending or 'desc' for descending sort order based on modified date. -- **user_email_filter** (`array[string]`, optional) Filter content logs based on the list of emails of users who created, modified, or deleted board items. - - -## MiroApi.ResetUserSessions - -
- - -Reset all active Miro sessions for a specific user. - -**Parameters** - -- **user_email_for_session_reset** (`string`, required) Email ID of the user whose sessions need resetting. This will sign the user out from all devices. - - -## MiroApi.GetOrganizationInfo - -
- - -Retrieve detailed information about a specific organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization to retrieve information for. This is required to access the organization's details. - - -## MiroApi.GetOrganizationMembers - -
- - -Retrieve organization members using organization ID or emails. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization to retrieve members from. Required for the operation. -- **include_only_active_members** (`boolean`, optional) Set to true to include only active members in the response. Set to false to include all members, regardless of their status. -- **license_type** (`string`, optional) Defines the type of license for the organization members to filter (e.g., full, occasional, free). -- **member_role_filter** (`string`, optional) Filter organization members by role, such as 'organization_internal_admin' or 'organization_external_user'. -- **pagination_cursor** (`string`, optional) String value for pagination to retrieve the next set of results in a multi-page response. -- **result_limit** (`integer`, optional) Specifies the maximum number of organization members to retrieve. -- **user_emails** (`string`, optional) A comma-separated string of user emails to filter organization members. - - -## MiroApi.GetOrganizationMemberInfo - -
- - -Retrieve details about a specific organization member. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose member info is being retrieved. -- **organization_member_id** (`string`, required) ID of the organization member to retrieve information for. - - -## MiroApi.CreateMiroBoard - -
- - -Create a new board on Miro with specific settings. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.RetrieveUserBoards - -
- - -Retrieve a list of boards accessible to the user. - -**Parameters** - -- **board_owner_id** (`string`, optional) Filter boards by the owner's user ID to view boards created by a specific user. -- **maximum_number_of_boards** (`string`, optional) Specifies the maximum number of boards to retrieve. Use a positive integer to limit results. -- **project_id_filter** (`string`, optional) Specify the project ID to filter boards accessible to the user. This retrieves boards linked to the given project instantly. -- **results_offset** (`string`, optional) The number of items to skip before starting to collect the result set. This is used for pagination. -- **search_query** (`string`, optional) A string to search and filter boards by name or content. Useful for narrowing down results. -- **sort_boards_by** (`string`, optional) Specify how to sort the list of boards. Options include 'default', 'last_modified', 'last_opened', 'last_created', and 'alphabetically'. -- **team_identifier** (`string`, optional) The unique identifier for the team to filter boards. This allows retrieval of boards associated with the specified team. - - -## MiroApi.CopyMiroBoard - -
- - -Create a copy of an existing Miro board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **source_board_id** (`string`, optional) Unique identifier (ID) of the board that you want to copy. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.RetrieveBoardInfo - -
- - -Retrieve details of a specific Miro board. - -**Parameters** - -- **board_unique_identifier** (`string`, required) Unique identifier (ID) of the board to retrieve information from Miro. - - -## MiroApi.UpdateMiroBoard - -
- - -Update details of a specific Miro board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_identifier** (`string`, optional) Unique identifier of the Miro board to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.DeleteMiroBoard - -
- - -Delete a Miro board and move it to Trash. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier of the Miro board to be deleted. Must be a valid string ID. - - -## MiroApi.AddAppCardToBoard - -
- - -Add an app card item to a specified board on Miro. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_identifier** (`string`, optional) Unique identifier (ID) of the Miro board where the app card will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.RetrieveAppCardInfo - -
- - -Retrieve information for a specific Miro app card item. - -**Parameters** - -- **board_identifier** (`string`, required) The unique ID for the board containing the app card item to retrieve. -- **item_identifier** (`string`, required) Unique identifier of the app card item to retrieve from the board. - - -## MiroApi.UpdateMiroAppCard - -
- - -Update an app card item on a Miro board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_identifier** (`string`, optional) Unique identifier of the board where the app card will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **item_identifier_for_update** (`string`, optional) Unique identifier (ID) of the app card item to update on the Miro board. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.DeleteAppCardFromBoard - -
- - -Delete an app card item from a Miro board. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier (ID) of the board from which to delete an app card item. -- **item_id** (`string`, required) Unique identifier (ID) of the item to delete from the board. - - -## MiroApi.AddCardToMiroBoard - -
- - -Add a card item to a Miro board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **miro_board_id** (`string`, optional) Unique identifier (ID) of the Miro board where you want to add the card item. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.GetCardItemInfo - -
- - -Retrieve details about a specific card item from a Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier of the board to retrieve the specific card item from. -- **item_unique_id** (`string`, required) Unique identifier of the item to retrieve from the board. - - -## MiroApi.UpdateCardOnBoard - -
- - -Update a card item on a Miro board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_identifier** (`string`, optional) Unique identifier (ID) of the board on which the card item will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **card_item_id** (`string`, optional) Unique identifier (ID) of the card item to update on the board. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.DeleteCardItem - -
- - -Deletes a card item from the Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier of the board from which the card item should be deleted. -- **item_id** (`string`, required) The unique identifier of the card item to be deleted from the board. - - -## MiroApi.AddConnectorToBoard - -
- - -Adds a connector to a specified Miro board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_unique_id** (`string`, optional) Unique identifier for the Miro board where the connector will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.GetBoardConnectors - -
- - -Retrieve connectors for a specified board on Miro. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier for the Miro board to retrieve connectors from. Required for identifying the specific board. -- **pagination_cursor** (`string`, optional) Cursor pointing to the next set of results for paginated requests. Use this to retrieve subsequent pages. -- **result_limit** (`string`, optional) Specifies the maximum number of connectors to retrieve in one call. This assists in pagination of connector data. - - -## MiroApi.RetrieveBoardConnectorInfo - -
- - -Retrieve information for a specific board connector. - -**Parameters** - -- **board_unique_identifier** (`string`, required) Unique identifier for the Miro board from which to retrieve the connector. -- **connector_unique_id** (`string`, required) Unique identifier (ID) of the connector to retrieve from a Miro board. - - -## MiroApi.UpdateConnectorOnBoard - -
- - -Update a connector on a Miro board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_identifier** (`string`, optional) The unique string identifier of the Miro board to update the connector on. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **connector_identifier** (`string`, optional) Unique ID of the connector to update on the board. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.DeleteBoardConnector - -
- - -Delete a specific connector from a board. - -**Parameters** - -- **board_unique_identifier** (`string`, required) Unique identifier (ID) of the board from which you want to delete the connector. -- **connector_id** (`string`, required) Unique identifier of the connector to delete from the board. - - -## MiroApi.AddDocumentToBoardByUrl - -
- - -Add a document to a Miro board using its URL. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier (ID) of the Miro board where the document will be added. -- **document_title** (`string`, optional) A short text header to identify the document added to the board. -- **document_url** (`string`, optional) The URL where the document is hosted. This URL is required to add the document to the Miro board. -- **item_height_in_pixels** (`number`, optional) Specifies the height of the item on the board in pixels. -- **item_width_in_pixels** (`number`, optional) Specify the width of the document item on the board in pixels. -- **parent_frame_id** (`string`, optional) Unique identifier of the parent frame for the document item on the board. -- **position_x_coordinate** (`number`, optional) X-axis coordinate for placing the item on the board. Defaults to `0`. Center of board is `0`. -- **rotation_angle_degrees** (`number`, optional) Specify the rotation angle of the document item in degrees. Use positive values for clockwise rotation and negative for counterclockwise. -- **y_axis_coordinate_on_board** (`number`, optional) Y-axis coordinate for placing the document on the Miro board. Defaults to `0`, where `0` is the center of the board. - - -## MiroApi.RetrieveDocumentItemInfo - -
- - -Retrieve information for a specific document item on a board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier of the board to retrieve a specific document item from. -- **document_item_id** (`string`, required) Unique identifier (ID) of the document item to retrieve from the board. - - -## MiroApi.UpdateDocumentItemOnBoard - -
- - -Update a document item on a Miro board using its URL. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier of the Miro board where the document item will be updated. -- **item_identifier_to_update** (`string`, required) Unique identifier of the item to update on the board. -- **document_hosting_url** (`string`, optional) URL where the document is hosted for updating on the Miro board. -- **document_title** (`string`, optional) A short text header to identify the document on the board. -- **item_height_pixels** (`number`, optional) Height of the document item in pixels. -- **item_width_pixels** (`number`, optional) Specify the width of the item in pixels on the board. -- **parent_frame_id** (`string`, optional) Unique identifier (ID) of the parent frame for the item on the board. -- **rotation_angle_degrees** (`number`, optional) Rotation angle of an item, in degrees, relative to the board. Positive values rotate clockwise, negative values rotate counterclockwise. -- **x_axis_coordinate_on_board** (`number`, optional) X-axis coordinate for the item's placement on the board, with default positioning at 0. Center of the board is x: 0. -- **y_axis_coordinate** (`number`, optional) Y-axis coordinate for placing the item on the board. Default is 0, with absolute positioning relative to the board center. - - -## MiroApi.DeleteDocumentItemFromBoard - -
- - -Deletes a document item from a Miro board. - -**Parameters** - -- **board_id** (`string`, required) The unique ID of the Miro board to delete the document item from. -- **item_id** (`string`, required) Unique identifier of the item to delete from the board. - - -## MiroApi.AddEmbedItemToBoard - -
- - -Add an embed item with external content to a Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier of the board where you want to create the embed item. -- **content_display_mode** (`string`, optional) Specify how the embedded content is displayed on the board. Options are 'inline' for direct display and 'modal' for modal overlay. -- **content_url** (`string`, optional) A valid URL pointing to the content resource to embed in the board. Supports HTTP and HTTPS. -- **embed_item_width_pixels** (`number`, optional) Width of the embed item in pixels. Defines the size of the item on the board. -- **item_height** (`number`, optional) Specify the height of the embedded item, in pixels. -- **parent_frame_id** (`string`, optional) Unique identifier (ID) of the parent frame for the item on the Miro board. -- **preview_image_url** (`string`, optional) URL of the image used as the preview for the embedded item. -- **x_coordinate_on_board** (`number`, optional) X-axis coordinate for the item's location on the board. Default is 0, with absolute positioning relative to the board center. -- **y_axis_coordinate_on_board** (`number`, optional) Y-axis coordinate for placing the item on the board. Default is 0, with (0, 0) as the board's center. - - -## MiroApi.GetEmbedItemInfo - -
- - -Retrieve details of an embed item on a Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier (ID) of the Miro board from which to retrieve the embed item. -- **embed_item_id** (`string`, required) Unique identifier of the embed item to retrieve from the board. - - -## MiroApi.UpdateEmbedItemOnBoard - -
- - -Update an embed item on a Miro board. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier (ID) of the board where you want to update the item. -- **embed_item_id** (`string`, required) Unique identifier (ID) of the embed item to update on the board. -- **content_resource_url** (`string`, optional) A valid URL pointing to the content resource to embed in the board. Supports HTTP and HTTPS protocols. -- **embed_display_mode** (`string`, optional) Defines how the content in the embed item is displayed on the board. Use 'inline' for direct display and 'modal' for a modal overlay view. -- **item_height_in_pixels** (`number`, optional) Specify the height of the embed item in pixels. -- **item_width_pixels** (`number`, optional) Specifies the width of the item on the board in pixels. -- **parent_frame_id** (`string`, optional) Unique identifier (ID) of the parent frame for the item being updated on the board. -- **preview_image_url** (`string`, optional) URL of the image used as the preview for the embedded item. -- **x_axis_coordinate_on_board** (`number`, optional) X-axis coordinate for the location of the item on the board. Defaults to `0`, representing the center of the board. -- **y_axis_coordinate** (`number`, optional) Y-axis coordinate of the item's location on the board. Defaults to `0`. Center of board is `y: 0`. - - -## MiroApi.RemoveEmbedItemFromBoard - -
- - -Remove an embed item from a Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier (ID) of the board from which the embed item will be deleted. -- **item_id_to_delete** (`string`, required) Unique identifier of the embed item to be deleted from the board. - - -## MiroApi.AddImageToMiroBoard - -
- - -Add an image to a Miro board using a URL. - -**Parameters** - -- **board_unique_identifier** (`string`, required) The unique identifier for the board where the image will be added. -- **image_height_pixels** (`number`, optional) Height of the image in pixels to be added to the Miro board. -- **image_title** (`string`, optional) A short text header to identify the image on the Miro board. -- **image_url** (`string`, optional) URL of the image to be added to the Miro board. -- **image_width_pixels** (`number`, optional) The width of the image in pixels to be added to the board. -- **parent_frame_id** (`string`, optional) Unique identifier for the parent frame where the image will be added. Use this to specify a frame within the board if needed. -- **rotation_angle_degrees** (`number`, optional) Rotation angle of the image, in degrees, relative to the board. Use positive for clockwise and negative for counterclockwise. -- **x_axis_coordinate** (`number`, optional) X-axis coordinate for the image location on the Miro board. Center is at x: 0. Default is 0. -- **y_axis_coordinate** (`number`, optional) Y-axis coordinate of the item's location on the board. Default is 0, centered on the board. - - -## MiroApi.GetImageItemInfo - -
- - -Fetches details for a specified image item on a Miro board. - -**Parameters** - -- **board_unique_id** (`string`, required) Unique identifier of the board to retrieve a specific image item from. -- **image_item_id** (`string`, required) Unique identifier of the image item to retrieve from the board. - - -## MiroApi.UpdateBoardImage - -
- - -Update an image item on a Miro board using a URL. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier (ID) of the board where the image item will be updated. -- **image_item_id** (`string`, required) The unique ID of the image item to update on the board. -- **image_height_pixels** (`number`, optional) Specify the height of the image item in pixels. -- **image_title** (`string`, optional) A short text header to identify the image on the board. -- **image_url** (`string`, optional) The URL of the image to update on the board. -- **image_width_in_pixels** (`number`, optional) The width of the image item on the board, specified in pixels. -- **item_rotation_angle** (`number`, optional) Specify the rotation angle for the image item in degrees. Use positive values for clockwise and negative for counterclockwise rotation. -- **parent_frame_id** (`string`, optional) Unique identifier (ID) of the parent frame for the item. -- **x_axis_coordinate** (`number`, optional) X-axis coordinate for the item's location on the board. The board's center is at x: 0. Default is 0. -- **y_axis_coordinate_position** (`number`, optional) The Y-axis coordinate for placing the item on the board. Default is `0`, with absolute positioning on the board. - - -## MiroApi.DeleteBoardImage - -
- - -Deletes an image item from a Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier of the board from which to delete the image item. Required for deleting the image. -- **image_item_id** (`string`, required) Unique identifier of the image item to delete from the board. - - -## MiroApi.RetrieveBoardItems - -
- - -Retrieve items from a specific Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier (ID) of the Miro board to retrieve items from. -- **item_type_filter** (`string`, optional) Specify the type of items to retrieve from the board (e.g., 'text', 'shape', 'sticky_note'). -- **items_limit** (`string`, optional) The maximum number of items to retrieve from the board at once, using pagination. -- **pagination_cursor** (`string`, optional) A string token used for cursor-based pagination to fetch the next set of results. - - -## MiroApi.GetBoardItemInfo - -
- - -Retrieve information for a specific item on a Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier of the board to retrieve the specific item from. -- **item_identifier** (`string`, required) Unique identifier of the item to retrieve from the board. - - -## MiroApi.UpdateItemPositionParent - -
- - -Update an item's position or parent on a Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) The unique ID of the board where the item's position or parent will be updated. -- **item_id** (`string`, required) Unique identifier of the item to update on the board. -- **item_x_axis_coordinate** (`number`, optional) X-axis coordinate for the item's location on the board. Default is 0, with positioning relative to the board center. -- **parent_frame_id** (`string`, optional) Unique identifier of the parent frame for the specified item. -- **y_axis_coordinate** (`number`, optional) Y-axis coordinate for the item's location on the board. Defaults to `0` with absolute positioning to the board, not the viewport. - - -## MiroApi.DeleteBoardItem - -
- - -Deletes an item from a Miro board. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier (ID) of the board from which you want to delete the item. -- **item_id** (`string`, required) Unique identifier (ID) of the item to delete from the board. - - -## MiroApi.ShareMiroBoard - -
- - -Invite new members to collaborate on a Miro board. - -**Parameters** - -- **board_unique_identifier** (`string`, required) Unique identifier for the Miro board you want to share. Required to specify the target board. -- **invitee_email_addresses** (`array[string]`, required) A list of up to 20 email addresses to invite to the board. -- **board_member_role** (`string`, optional) Role assigned to the board member. Options are viewer, commenter, editor, coowner, or owner. Note: 'owner' functions as 'coowner'. -- **invitation_message** (`string`, optional) A custom message to include in the invitation email sent to new board collaborators. - - -## MiroApi.GetMiroBoardMembers - -
- - -Retrieve members of a Miro board. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier (ID) of the Miro board whose members are to be retrieved. -- **number_of_members_to_retrieve** (`string`, optional) Specify the maximum number of board members to retrieve. This limits the number of results returned in one call. -- **pagination_offset** (`string`, optional) Specifies the starting point of the list of board members to return, for pagination purposes. - - -## MiroApi.GetBoardMemberInfo - -
- - -Retrieve details about a specific board member. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier (ID) of the board to which the board member belongs. -- **board_member_id** (`string`, required) Unique identifier (ID) of the board member whose role you want to retrieve on a specific board. - - -## MiroApi.UpdateBoardMemberRole - -
- - -Update the role of a Miro board member. - -**Parameters** - -- **board_member_unique_id** (`string`, required) Unique identifier of the board member whose role needs updating. -- **board_unique_identifier** (`string`, required) Unique identifier for the board where the member role will be updated. -- **board_member_role** (`string`, optional) The new role to assign to the board member. Options: 'viewer', 'commenter', 'editor', 'coowner', 'owner'. - - -## MiroApi.RemoveBoardMember - -
- - -Remove a member from a Miro board. - -**Parameters** - -- **board_member_id** (`string`, required) Unique identifier of the board member to be removed from the board. -- **board_unique_id** (`string`, required) Unique identifier of the board from which the member will be removed. - - -## MiroApi.AddShapeToMiroBoard - -
- - -Add a shape to a Miro board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_id** (`string`, optional) Unique identifier of the Miro board where the shape will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.GetShapeInformation - -
- - -Retrieve detailed information about a specific shape on a Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier (ID) of the Miro board from which to retrieve a specific shape item. -- **shape_item_id** (`string`, required) Unique identifier of the shape item to retrieve from the Miro board. - - -## MiroApi.UpdateBoardShape - -
- - -Update a shape item on a Miro board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_identifier** (`string`, optional) Unique identifier of the Miro board where you want to update the shape item. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **shape_item_id** (`string`, optional) Unique identifier (ID) of the shape item to update on the board. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.DeleteShapeFromMiroBoard - -
- - -Delete a shape item from a Miro board. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier of the board from which you want to delete the shape item. -- **item_id** (`string`, required) Unique identifier (ID) of the shape item to delete from the Miro board. - - -## MiroApi.AddStickyNoteToBoard - -
- - -Add a sticky note to a Miro board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_id** (`string`, optional) Unique identifier of the board where the sticky note will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.GetStickyNoteInfo - -
- - -Retrieve details of a sticky note from a Miro board. - -**Parameters** - -- **miro_board_id** (`string`, required) The unique identifier of the Miro board to retrieve the sticky note item from. -- **sticky_note_id** (`string`, required) Specify the unique ID of the sticky note to retrieve from the board. - - -## MiroApi.UpdateStickyNote - -
- - -Update a sticky note on a Miro board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_id_for_update** (`string`, optional) Unique identifier of the board where the sticky note update will occur. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **sticky_note_id** (`string`, optional) Unique identifier (ID) of the sticky note you want to update on the board. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.DeleteStickyNote - -
- - -Deletes a sticky note from a Miro board. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier (ID) of the board from which you want to delete the sticky note. -- **sticky_note_id** (`string`, required) Unique identifier (ID) of the sticky note you want to delete from the board. - - -## MiroApi.AddTextToMiroBoard - -
- - -Add a text item to a specified Miro board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_identifier** (`string`, optional) The unique ID of the Miro board where the text item will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.GetTextItemInfo - -
- - -Retrieve details of a text item from a Miro board. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier (ID) of the board to retrieve a specific text item from. Required for identifying the board within Miro. -- **text_item_id** (`string`, required) Unique identifier (ID) of the text item to retrieve from the board. - - -## MiroApi.UpdateBoardText - -
- - -Update a text item on a Miro board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_id** (`string`, optional) Unique ID of the Miro board where the text item is to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **text_item_id** (`string`, optional) Unique identifier (ID) of the text item to update on the board. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.RemoveBoardTextItem - -
- - -Delete a text item from a Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier of the board from which the text item will be deleted. -- **text_item_id** (`string`, required) Unique identifier (ID) of the text item to delete from the board. - - -## MiroApi.AddItemsToMiroBoard - -
- - -Add up to 20 items to a Miro board in one transaction. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **miro_board_identifier** (`string`, optional) The unique identifier of the Miro board where items will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.AddBoardFrame - -
- - -Add a frame to a Miro board. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier of the board where the frame will be created. -- **frame_fill_color** (`string`, optional) Specify the fill color for the frame using hex values. Supported colors include: `#f5f6f8`, `#d5f692`, `#d0e17a`, `#93d275`, `#67c6c0`, `#23bfe7`, `#a6ccf5`, `#7b92ff`, `#fff9b1`, `#f5d128`, `#ff9d48`, `#f16c7f`, `#ea94bb`, `#ffcee0`, `#b384bb`, `#000000`. The default is transparent (`#ffffffff`). -- **frame_format** (`string`, optional) Specify the format for the frame. Only 'custom' is supported. -- **frame_height_pixels** (`number`, optional) Specify the height of the frame in pixels on the Miro board. -- **frame_title** (`string`, optional) Title of the frame to appear at the top. It must be a string. -- **frame_type** (`string`, optional) Specify the type of frame to create. Only 'freeform' is supported at the moment. -- **frame_width_in_pixels** (`number`, optional) Specify the width of the frame in pixels. -- **position_y_coordinate** (`number`, optional) Y-axis coordinate for the frame's position on the board. Default is `0`. Center of the board has `x: 0` and `y: 0`. -- **reveal_frame_content** (`boolean`, optional) Set to true to reveal content inside the frame; false to hide it. Applicable for Enterprise plans only. -- **x_axis_position_on_board** (`number`, optional) X-axis coordinate for placing the frame on the board. Default is 0, where the center is at x: 0. - - -## MiroApi.GetBoardFrameInfo - -
- - -Retrieve information about a specific frame on a board. - -**Parameters** - -- **board_unique_id** (`string`, required) Unique identifier of the board containing the frame to retrieve. -- **frame_id** (`string`, required) Unique identifier (ID) of the frame to retrieve from the board. - - -## MiroApi.UpdateMiroBoardFrame - -
- - -Update a frame on a Miro board with new properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_id** (`string`, optional) Unique identifier (ID) of the board where the frame needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **frame_id** (`string`, optional) Unique identifier of the frame to update on the board. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.DeleteBoardFrame - -
- - -Delete a frame from a Miro board. - -**Parameters** - -- **board_id** (`string`, required) The unique ID of the Miro board from which you want to delete the frame. -- **frame_id** (`string`, required) Unique identifier of the frame to be deleted from the board. - - -## MiroApi.GetItemsWithinFrame - -
- - -Retrieve items within a specified frame on a Miro board. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier (ID) of the board containing the frame to retrieve items from. -- **frame_id** (`string`, required) The ID of the frame from which you want to retrieve the items. Required to locate the parent frame on the board. -- **item_retrieval_limit** (`string`, optional) Specifies the maximum number of items to return in one call. Used for pagination purposes. -- **item_type_filter** (`string`, optional) Specify the type of items to retrieve within the frame. Leave blank to retrieve all types. -- **pagination_cursor** (`string`, optional) A string used for cursor-based pagination to fetch the next set of results. - - -## MiroApi.GetAppUsageMetrics - -
- - -Retrieve usage metrics for a specific app over a time range. - -**Parameters** - -- **application_id** (`string`, required) The ID of the app to retrieve metrics for. Provide a valid app ID to obtain usage data. -- **end_date** (`string`, required) End date of the period in UTC format, e.g., 2024-12-31. -- **start_date_utc** (`string`, required) Start date of the period in UTC format (e.g., 2024-12-31). -- **group_data_by_period** (`string`, optional) Specify the time period for grouping data: 'DAY', 'WEEK', or 'MONTH'. - - -## MiroApi.RetrieveAppMetrics - -
- - -Retrieve total usage metrics for a specific app. - -**Parameters** - -- **app_id** (`string`, required) The unique identifier of the app to retrieve total usage metrics for. - - -## MiroApi.CreateBoardSubscription - -
- - -Subscribe to board update notifications via webhook. - -**Parameters** - -- **board_id** (`string`, optional) Unique identifier of the board to associate with the webhook subscription. -- **webhook_callback_url** (`string`, optional) The HTTPS URL where Miro sends a webhook upon an event occurrence. This URL must be accessible by Miro to receive notifications. -- **webhook_status** (`string`, optional) Set the status of the webhook subscription. Use 'enabled' to receive notifications, 'disabled' to stop notifications, or 'lost_access' if access to the board is lost. - - -## MiroApi.UpdateBoardWebhookSubscription - -
- - -Update the status or URL of a board's webhook subscription. - -**Parameters** - -- **subscription_id** (`string`, required) The unique identifier of the webhook subscription to be updated. -- **webhook_callback_url** (`string`, optional) The HTTPS URL where Miro sends webhooks when events occur. Must be a valid URL. -- **webhook_status** (`string`, optional) Set the webhook subscription status: `enabled`, `disabled`, or handle `lost_access`. - - -## MiroApi.GetUserWebhookSubscriptions - -
- - -Retrieve all webhook subscriptions for a Miro user. - -**Parameters** - -- **pagination_cursor** (`string`, optional) A string token used to paginate through webhook subscriptions. If not provided, retrieves the first page. -- **subscription_limit** (`string`, optional) Specify the maximum number of webhook subscriptions to retrieve for the user. - - -## MiroApi.GetMiroSubscriptionInfo - -
- - -Fetch detailed information for a specific Miro subscription. - -**Parameters** - -- **subscription_id** (`string`, required) Unique identifier of the Miro subscription to retrieve. - - -## MiroApi.DeleteMiroWebhookSubscription - -
- - -Delete a Miro webhook subscription by ID. - -**Parameters** - -- **subscription_id** (`string`, required) The unique identifier (ID) for the Miro subscription to delete. - - -## MiroApi.GetMiroMindmapNode - -
- - -Retrieve details about a specific mind map node on a Miro board. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier (ID) of the Miro board to retrieve a mind map node from. -- **mindmap_node_id** (`string`, required) Unique identifier of the mind map node to retrieve from the board. - - -## MiroApi.DeleteMindmapNode - -
- - -Delete a mind map node and its child nodes from the board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier (ID) of the board from which the mind map node will be deleted. -- **mindmap_node_id** (`string`, required) The unique ID of the mind map node to delete, including all child nodes, from the board. - - -## MiroApi.GetMindmapNodes - -
- - -Retrieve mind map nodes from a specified Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) The unique identifier for the Miro board to retrieve mind map nodes from. This ID specifies the target board. -- **maximum_results_limit** (`string`, optional) Specifies the maximum number of mind map nodes returned in the response. Use this to control pagination and limit the data load. -- **pagination_cursor** (`string`, optional) A string that points to the next portion of the results set for cursor-based pagination. - - -## MiroApi.AddMindmapNode - -
- - -Add a new mind map node to a Miro board. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier (ID) of the board where the new mind map node will be created. -- **mindmap_node_content** (`string`, optional) The text content to display within the mind map node. -- **node_type** (`string`, optional) Specifies the type of mind map node. Use 'text' as the current valid type. -- **node_width_pixels** (`number`, optional) Width of the mind map node in pixels. Specifies how wide the node will appear on the board. -- **parent_frame_id** (`string`, optional) Unique identifier (ID) of the parent node or frame for the mind map node. -- **x_coordinate** (`number`, optional) X-axis coordinate for node placement on the board. Defaults to `0`, placing the node at the center along the x-axis. -- **y_coordinate** (`number`, optional) Y-coordinate for item placement on the board. Defaults to 0 if not specified, placing it at the board's center. - - -## MiroApi.GetBoardItems - -
- - -Retrieve items from a specific Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier of the Miro board to retrieve items from. -- **item_type** (`string`, optional) Specify the type of items to retrieve from the board, such as 'shape'. -- **pagination_cursor** (`string`, optional) The cursor value to retrieve the next set of items from a board. Use the value returned in the previous response to paginate through results. -- **pagination_limit** (`string`, optional) The maximum number of items to return in a single call. Use this to control the size of the result set per request. - - -## MiroApi.RetrieveBoardItemInfo - -
- - -Retrieve details for a specific board item on Miro. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier of the Miro board to retrieve a specific item from. -- **item_id** (`string`, required) Unique identifier of the item to retrieve from the board. - - -## MiroApi.RemoveBoardItem - -
- - -Delete an item from a Miro board. - -**Parameters** - -- **board_unique_id** (`string`, required) Unique identifier of the Miro board to delete the item from. -- **item_id** (`string`, required) Unique identifier (ID) of the item to delete from the board. - - -## MiroApi.AddFlowchartShapeToBoard - -
- - -Add a flowchart shape item to a Miro board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_identifier** (`string`, optional) The unique ID of the Miro board where the flowchart shape will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.RetrieveShapeInformation - -
- - -Retrieve information for a specific shape item on a board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier for the board to retrieve a specific shape item from. -- **shape_item_id** (`string`, required) Unique identifier (ID) of the shape item to retrieve from the board. - - -## MiroApi.UpdateFlowchartShape - -
- - -Update a shape item in a Miro flowchart board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **board_identifier** (`string`, optional) Unique identifier of the board where the shape item will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **item_id** (`string`, optional) Unique identifier (ID) of the shape item to update on the board. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## MiroApi.DeleteFlowchartShape - -
- - -Delete a flowchart shape from a Miro board. - -**Parameters** - -- **board_unique_id** (`string`, required) Unique identifier of the board from which to delete the shape item. -- **item_id** (`string`, required) Unique identifier of the flowchart shape item to delete from the board. - - -## MiroApi.CreateGroupOnBoard - -
- - -Creates a group of items on a Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) The unique string identifier of the Miro board where the group will be created. -- **item_ids** (`array[string]`, optional) An array of unique identifiers (IDs) for the items to be grouped on the board. Each ID corresponds to an item you wish to include in the group. - - -## MiroApi.GetBoardGroups - -
- - -Retrieve all groups and their items from a specific board. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier of the Miro board to retrieve groups from. -- **max_items_to_return** (`integer`, optional) The maximum number of items to return at once. Default is 10 and the maximum is 50. -- **next_page_cursor** (`string`, optional) The cursor value for fetching the next set of group items from the board. Use it to paginate results. - - -## MiroApi.GetItemsByGroupId - -
- - -Retrieve items from a specific group on a Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier (ID) of the Miro board to retrieve items from. -- **group_item_id** (`string`, required) The ID of the group item to retrieve from the board. -- **max_items_per_request** (`integer`, optional) The maximum number of items to return per request. Default is 10, maximum is 50. -- **next_cursor** (`string`, optional) A string used for cursor-based pagination to fetch the next set of results. Set it to the value received from the previous API response to continue retrieving items. - - -## MiroApi.GetGroupItemsMiro - -
- - -Retrieve items from a specific group on a Miro board. - -**Parameters** - -- **board_unique_identifier** (`string`, required) Unique identifier for the Miro board to fetch group items from. -- **group_id** (`string`, required) Unique identifier of the group to retrieve items from on the board. - - -## MiroApi.UngroupItemsOnMiroBoard - -
- - -Ungroup items from a group on Miro board. - -**Parameters** - -- **group_id** (`string`, required) Unique identifier (ID) of the group to be ungrouped on the Miro board. -- **miro_board_id** (`string`, required) Unique identifier (ID) of the Miro board to ungroup items from. -- **remove_items_after_ungrouping** (`boolean`, optional) Specify if items should be removed after ungrouping. Default is false. - - -## MiroApi.UpdateBoardGroup - -
- - -Replace and update an existing group in a board. - -**Parameters** - -- **board_unique_id** (`string`, required) Unique identifier for the board to update the group on. -- **group_id** (`string`, required) Unique identifier (ID) of the group to be updated. This ID is required to replace the group. -- **item_ids** (`array[string]`, optional) Array of unique identifiers (IDs) for the items in the new group. - - -## MiroApi.DeleteBoardGroup - -
- - -Delete a group and its items from a Miro board. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier of the board from which the group will be deleted. -- **delete_items_with_group** (`boolean`, required) Set to true to delete items within the group when deleting the group from the board. -- **group_id** (`string`, required) Unique identifier (ID) of the group to be deleted. - - -## MiroApi.RevokeMiroAccessToken - -
- - -Revoke the current Miro access token. - -**Parameters** - -- **client_id** (`string`, required) The client ID associated with the access token for Miro. Required for token revocation. -- **client_secret** (`string`, required) The client secret associated with the access token to be revoked. This is required for validation. -- **miro_access_token** (`string`, required) The Miro access token that needs to be revoked, rendering it and the refresh token unusable. - - -## MiroApi.GetTagsFromItem - -
- - -Retrieve all tags from a specified item on a board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier (ID) of the board containing the item for which tags are to be retrieved. -- **item_identifier** (`string`, required) Unique identifier (ID) of the item whose tags are to be retrieved from the board. - - -## MiroApi.CreateBoardTag - -
- - -Create a tag on a Miro board. - -**Parameters** - -- **board_unique_id** (`string`, required) The unique identifier (ID) of the Miro board where the tag will be created. -- **tag_title** (`string`, required) Unique, case-sensitive text for the tag. -- **tag_fill_color** (`string`, optional) The fill color of the tag. Choose from options: red, light_green, cyan, yellow, magenta, green, blue, gray, violet, dark_green, dark_blue, black. - - -## MiroApi.GetBoardTags - -
- - -Retrieve all tags from a specified Miro board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the board to retrieve tags from. This is required to specify the target board in Miro. -- **maximum_number_of_tags** (`string`, optional) Specifies the maximum number of tags to retrieve from the board. -- **result_offset** (`string`, optional) Specifies the starting point for the result set to retrieve tags, useful for pagination. - - -## MiroApi.GetTagInfo - -
- - -Retrieve detailed information for a specific tag on a Miro board. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier (ID) of the board from which to retrieve the specific tag. -- **tag_identifier** (`string`, required) Unique identifier of the tag to retrieve from the board. - - -## MiroApi.UpdateMiroTag - -
- - -Update a tag on a Miro board. - -**Parameters** - -- **board_identifier** (`string`, required) Unique identifier (ID) of the board where the tag update should occur. -- **tag_unique_identifier** (`string`, required) Unique identifier for the tag you want to update on a Miro board. -- **tag_fill_color** (`string`, optional) Specify the fill color for the tag. Choices are: red, light_green, cyan, yellow, magenta, green, blue, gray, violet, dark_green, dark_blue, black. -- **tag_title** (`string`, optional) Unique, case-sensitive text of the tag to be updated. - - -## MiroApi.DeleteBoardTag - -
- - -Delete a tag from a Miro board and its items. - -**Parameters** - -- **board_identifier** (`string`, required) Unique ID of the board from which to delete a specific tag. -- **tag_id_to_delete** (`string`, required) Unique identifier of the tag that you want to delete from the board. - - -## MiroApi.RetrieveItemsByTag - -
- - -Retrieve items from a board by specifying a tag. - -**Parameters** - -- **board_id** (`string`, required) Unique identifier of the board from which to retrieve items by tag. -- **tag_identifier** (`string`, required) Unique identifier (ID) for the tag to retrieve items associated with it. -- **max_items_to_retrieve** (`string`, optional) Specifies the maximum number of items to retrieve with the specified tag from a board. Use an integer. -- **pagination_offset** (`string`, optional) Specifies the number of items to skip before starting to collect the result set. Use to navigate paginated results. - - -## MiroApi.AttachTagToItem - -
- - -Attach a tag to a specific item on a Miro board. - -**Parameters** - -- **board_id** (`string`, required) Unique ID of the board where the item to tag is located. -- **item_identifier** (`string`, required) Unique identifier of the item to which you want to add a tag on the Miro board. -- **tag_id** (`string`, required) Unique identifier of the tag to attach to the item. - - -## MiroApi.RemoveTagFromItem - -
- - -Remove a specified tag from an item on a Miro board. - -**Parameters** - -- **board_id_for_tag_removal** (`string`, required) Unique identifier (ID) of the board from which the tag will be removed from an item. -- **item_id** (`string`, required) Unique identifier (ID) of the item from which the tag will be removed. -- **tag_unique_identifier** (`string`, required) Unique identifier (ID) of the tag you want to remove from the item on the board. - - -## MiroApi.CreateEnterpriseProject - -
- - -Create a new project within an enterprise team on Miro. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization where you want to create a project on Miro. -- **project_name** (`string`, required) The name of the project to be created within the team. It should be descriptive and unique for easy identification. -- **team_id** (`string`, required) The unique ID of the team where the project will be created. - - -## MiroApi.GetTeamProjects - -
- - -Fetches projects from a specified team within an organization. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization to retrieve the list of available projects from. -- **team_id** (`string`, required) The ID of the team from which to retrieve the list of projects. This is required to specify which team's projects to fetch. -- **max_results_per_call** (`integer`, optional) The maximum number of projects to return in one call. Use this to control the size of the dataset returned. If exceeded, a cursor for pagination will be provided. -- **pagination_cursor** (`string`, optional) Used to navigate through pages of results. Leave empty for the first page; set to the value from the previous response for subsequent pages. - - -## MiroApi.GetMiroProjectInfo - -
- - -Retrieve information for a specific Miro project. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization to retrieve project information. -- **project_identifier** (`string`, required) The unique ID of the project to retrieve information for. -- **team_id_for_project_info** (`string`, required) The ID of the team from which you want to retrieve the project information. - - -## MiroApi.UpdateProjectInfo - -
- - -Update project details for an enterprise account. - -**Parameters** - -- **new_project_name** (`string`, required) New name to be assigned to the project. -- **organization_id** (`string`, required) The unique identifier of an organization. -- **project_identifier** (`string`, required) The unique identifier for the project to be updated. -- **team_id** (`string`, required) The unique identifier for a team associated with the project. - - -## MiroApi.DeleteEnterpriseProject - -
- - -Delete a project while retaining associated boards and users. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization from which you want to delete a project. -- **project_id_to_delete** (`string`, required) The ID of the project that needs to be deleted from the organization. -- **team_id** (`string`, required) The unique identifier of the team from which the project is to be deleted. - - -## MiroApi.GetProjectSettings - -
- - -Retrieve enterprise project settings for a specific project. - -**Parameters** - -- **organization_id** (`string`, required) The unique ID of the organization to which the project belongs. -- **project_id** (`string`, required) The ID of the project for which you want to retrieve the project settings. -- **team_id** (`string`, required) The ID of the team to which the project belongs. Must be a valid team ID within the organization. - - -## MiroApi.UpdateProjectSettings - -
- - -Update settings for an enterprise-level project. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization to which the project belongs. -- **project_identifier** (`string`, required) The unique ID of the project whose settings need updating. -- **team_id** (`string`, required) The unique identifier of the team associated with the project. -- **team_access_level** (`string`, optional) Specifies the access level for the team. Use "private" to restrict access to project members only and "view" to allow team-wide viewing. - - -## MiroApi.AddMiroProjectMember - -
- - -Add a user to an Enterprise Miro project. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization to which the project belongs. -- **project_id** (`string`, required) The unique ID of the Miro project to which a user will be added. -- **project_member_role** (`string`, required) Role of the user to be assigned in the Miro project. Possible values: owner, editor, viewer, commentator, coowner. -- **team_id** (`string`, required) The ID of the team to which the project belongs. Used to identify the specific team for project member addition. -- **user_email_id** (`string`, required) The email address of the user to be added as a project member. - - -## MiroApi.GetProjectMembers - -
- - -Retrieve members of a specific project. - -**Parameters** - -- **organization_id** (`string`, required) The ID of the organization to which the project belongs. -- **project_identifier** (`string`, required) The unique identifier of the project to retrieve its members. -- **team_id** (`string`, required) The unique ID of the team associated with the project. -- **maximum_results_per_call** (`integer`, optional) Specifies the maximum number of project members to return per call. Additional results can be accessed via the cursor parameter. -- **pagination_cursor** (`string`, optional) Indicator for the page position in the result set. Leave empty for the first page; use the prior response's cursor for next pages. - - -## MiroApi.GetProjectMemberInfo - -
- - -Retrieve information about a specific project member. - -**Parameters** - -- **member_id** (`string`, required) The ID of the project member to retrieve specific information. -- **organization_id** (`string`, required) The ID of the organization to which the project belongs. -- **project_identifier** (`string`, required) The ID of the project to get information about a specific member. -- **team_identifier** (`string`, required) The ID of the team to which the project belongs. - - -## MiroApi.UpdateProjectMemberRole - -
- - -Update the role and details of a project member. - -**Parameters** - -- **member_id** (`string`, required) The unique identifier for the project member whose role you want to update. -- **organization_id** (`string`, required) The ID of the organization to which the project member belongs. -- **project_id** (`string`, required) The unique ID of the project to be updated. -- **team_id** (`string`, required) The unique identifier for the team that the project member is associated with. Required for specifying which team the member belongs to. -- **project_member_role** (`string`, optional) The new role for the project member. Choose from 'owner', 'editor', 'viewer', 'commentator', or 'coowner'. - - -## MiroApi.RemoveProjectMember - -
- - -Remove a member from a Miro project. - -**Parameters** - -- **member_id** (`string`, required) The ID of the member to be removed from the project. -- **organization_id** (`string`, required) The ID of the organization to which the project belongs. -- **project_identifier** (`string`, required) The unique identifier for the project from which to remove a member. This ID is required to specify the project accurately. -- **team_id** (`string`, required) The ID of the team to which the project belongs, required for specifying the project context. - - -## MiroApi.CreateEnterpriseTeam - -
- - -Creates a new team in an existing Miro organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization where the team is being created. -- **team_name** (`string`, optional) The name of the team to be created within the organization. - - -## MiroApi.GetEnterpriseTeams - -
- - -Retrieve list of teams in an enterprise organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization to retrieve teams from. -- **maximum_results_limit** (`integer`, optional) The maximum number of team records to retrieve. If not set, defaults to the API's default value. -- **pagination_cursor** (`string`, optional) Indicator for page position in results. Leave empty for first page; use previous cursor for next pages. -- **team_name_filter** (`string`, optional) Filters teams by name using case insensitive partial match. For example, 'dev' will return both 'Developer's team' and 'Team for developers'. - - -## MiroApi.GetTeamInfo - -
- - -Retrieve information about an existing team within an organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization in Miro. -- **team_id** (`string`, required) The unique identifier of the team to retrieve information for. This is required to specify which team within the organization you're inquiring about. - - -## MiroApi.UpdateEnterpriseTeam - -
- - -Update details of an existing enterprise team. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization to which the team belongs. -- **team_identifier** (`string`, required) The unique identifier for the team to be updated. -- **new_team_name** (`string`, optional) Specify the new name for the team. - - -## MiroApi.DeleteEnterpriseTeam - -
- - -Deletes an existing team for enterprise users. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required to specify which organization's team is to be deleted. -- **team_id** (`string`, required) The unique identifier for the team to be deleted within the organization. - - -## MiroApi.InviteMiroTeamMember - -
- - -Invite a new user to a Miro team within your organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the Miro organization to which the user belongs. -- **team_identifier** (`string`, required) Specify the unique identifier of the team within the organization. -- **user_email_for_team_invitation** (`string`, required) Email address of the user to be invited to the Miro team. Ensure the email belongs to a user in your Miro organization. -- **team_member_role** (`string`, optional) Specify the role for the team member: 'member', 'admin', or 'team_guest'. Determines access and permissions in the team. - - -## MiroApi.GetEnterpriseTeamMembers - -
- - -Retrieve team members for an enterprise organization team. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization whose team members are being retrieved. -- **team_identifier** (`string`, required) The unique identifier for the team whose members are being retrieved. -- **filter_by_role** (`string`, optional) Filter team members by their role. Accepted values: 'member', 'admin', 'non_team', 'team_guest'. -- **member_retrieval_limit** (`integer`, optional) The maximum number of team members to retrieve in one call. Leave empty for default. -- **pagination_cursor** (`string`, optional) Indicates the page position for fetching results. Leave empty for the first page or use the value from the previous cursor field for subsequent pages. - - -## MiroApi.RetrieveTeamMemberById - -
- - -Retrieve team member details by ID for enterprise users. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. Required to retrieve team member details. -- **team_identifier** (`string`, required) The unique identifier for the team within the organization. -- **team_member_id** (`string`, required) The unique identifier for the team member to be retrieved. - - -## MiroApi.UpdateTeamMemberRole - -
- - -Update a team member's role in an enterprise team. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. -- **team_identifier** (`string`, required) The unique identifier for the team whose member's role is to be updated. -- **team_member_id** (`string`, required) The unique identifier of the team member whose role is to be updated. -- **team_member_role** (`string`, optional) Role of the team member. Options: 'member', 'admin', 'team_guest'. Specifies permissions within the team. - - -## MiroApi.RemoveTeamMember - -
- - -Remove a team member from a team by ID within an enterprise. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier of the organization from which a team member will be removed. -- **team_identifier** (`string`, required) The unique identifier of the team from which the member will be removed. This should be a string representing the Team ID. -- **team_member_id** (`string`, required) The unique identifier of the team member to be removed. - - -## MiroApi.GetDefaultTeamSettings - -
- - -Retrieve default team settings for an organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for an Organization within Miro's Enterprise plan. Required for retrieving default team settings. - - -## MiroApi.GetTeamSettings - -
- - -Fetches settings for a specific team in an organization. - -**Parameters** - -- **organization_id** (`string`, required) The unique identifier for the organization. -- **team_id** (`string`, required) The unique identifier for the team whose settings you want to retrieve. - - -## MiroApi.UpdateTeamSettings - -
- - -Update settings for an existing team in Miro Enterprise. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **organization_id** (`string`, optional) The unique identifier for the organization to which the team belongs. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **team_identifier** (`string`, optional) The unique identifier of the team to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - - -## Reference - -Below is a reference of enumerations used by some of the tools in the MiroApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - ---- - -## Auth - -The Arcade Miro MCP Server uses the [Miro auth provider](/references/auth-providers/miro) to connect to users' Miro accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Miro auth provider](/references/auth-providers/miro#configuring-miro-auth) with your own Miro app credentials. - - \ No newline at end of file diff --git a/app/en/resources/integrations/productivity/notion/page.mdx b/app/en/resources/integrations/productivity/notion/page.mdx deleted file mode 100644 index 75e4765bc..000000000 --- a/app/en/resources/integrations/productivity/notion/page.mdx +++ /dev/null @@ -1,311 +0,0 @@ -# Notion - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Notion MCP Server provides a pre-built set of tools for interacting with Notion. These tools make it easy to build agents and AI apps that can: - -- Get a page's content -- Create a new page -- Search for pages or databases by title -- Get the metadata of a Notion object (page or database) -- Get a workspace's folder structure - -## Available tools - -These tools are currently available in the Arcade Notion MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server) with the [Notion auth - provider](/references/auth-providers/notion). - - -## NotionToolkit.GetPageContentById - -
- - -Get the content of a Notion page as markdown with the page's ID. - -**Parameters** - -- **`page_id`** _(string, required)_ The ID of the page to get content from. - ---- - -## NotionToolkit.GetPageContentByTitle - -
- - -Get the content of a Notion page as markdown with the page's title. - -**Parameters** - -- **`title`** _(string, required)_ The title of the page to get content from. - ---- - -## NotionToolkit.CreatePage - -
- - -Create a new Notion page by specifying an existing parent page and the new page details. - -**Parameters** - -- **`parent_title`** _(string, required)_ Title of an existing page where the new page will be created. -- **`title`** _(string, required)_ Title of the new page. -- **`content`** _(string, optional)_ The content of the new page. - ---- - -## NotionToolkit.SearchByTitle - -
- - -Search for similar titles of pages, databases, or both within the user's Notion workspace. This tool returns minimal information about matching objects without their content. - -**Parameters** - -- **`query`** _(string, optional)_ - A substring to search for within page and database titles. If not provided, all items are returned. -- **`select`** _(str, optional)_ - Limit the search to only pages or only databases. If provided, must be one of `page` or `database`. Defaults to both. -- **`order_by`** _(str, optional)_ - The direction to sort search results by last edited time. Must be either `ascending` or `descending`. Defaults to `descending`. -- **`limit`** _(int, optional)_ - The maximum number of results to return. Defaults to 100. Use -1 for no limit. - ---- - -## NotionToolkit.GetObjectMetadata - -
- - -Get the metadata of a Notion object (page or database) using its title or ID. One of `object_title` or `object_id` must be provided (but not both). The returned metadata includes the object's ID, timestamps, properties, URL, and more. - -**Parameters** - -- **`object_title`** _(string, optional)_ - The title of the page or database whose metadata to retrieve. -- **`object_id`** _(string, optional)_ - The ID of the page or database whose metadata to retrieve. -- **`object_type`** _(str, optional)_ - The type of object to match the title against. If provided, must be one of `page` or `database`. Defaults to both if not provided. - ---- - -## NotionToolkit.GetWorkspaceStructure - -
- - -Get the complete workspace structure of your Notion workspace. This tool returns a hierarchical view of pages and databases, making it easier to understand the organization of your workspace. - -**Parameters** - -_None_ - ---- - -## NotionToolkit.AppendContentToEndOfPage - -
- - -Append markdown content to the end of a Notion page using either the page's ID or title. - -**Parameters** - -- **`page_id_or_title`** _(string, required)_ The ID or title of the page to append content to. -- **`content`** _(string, required)_ The markdown content to append to the end of the page. - ---- - -## NotionToolkit.WhoAmI - -
- - -Get comprehensive user profile and Notion workspace information. - -**Parameters** - -This tool does not take any parameters. - -## Auth - -The Arcade Notion MCP Sever uses the [Notion auth provider](/references/auth-providers/notion) to connect to users' Notion accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Notion auth provider](/references/auth-providers/notion#configuring-notion-auth) with your own Notion app credentials. - - diff --git a/app/en/resources/integrations/productivity/obsidian/page.mdx b/app/en/resources/integrations/productivity/obsidian/page.mdx deleted file mode 100644 index 422047d16..000000000 --- a/app/en/resources/integrations/productivity/obsidian/page.mdx +++ /dev/null @@ -1,3 +0,0 @@ -# Obsidian - -The Arcade Obsidian Toolkit is a community contributed MCP Sever verified by the Arcade team. To learn more about the MCP Sever, please visit the [Arcade Obsidian GitHub repository](https://github.com/spartee/arcade-obsidian). diff --git a/app/en/resources/integrations/productivity/outlook-calendar/page.mdx b/app/en/resources/integrations/productivity/outlook-calendar/page.mdx deleted file mode 100644 index d36c14afe..000000000 --- a/app/en/resources/integrations/productivity/outlook-calendar/page.mdx +++ /dev/null @@ -1,193 +0,0 @@ -# Outlook Calendar - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Outlook Calendar MCP Server provides pre-built tools for working with calendar events using the Outlook API. Use these tools to: - -- Create events -- List events -- Get an event - -## Available Tools - -These tools are currently available in the Arcade Outlook Calendar MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server) with the [Google auth - provider](/references/auth-providers/google#using-google-auth-in-custom-tools). - - -## OutlookCalendar.WhoAmI - -Get information about the current user and their Outlook Calendar environment. - -
- - -**Parameters** - -This tool does not take any parameters. - ---- - -## OutlookCalendar.CreateEvent - -Create an event in the authenticated user's default calendar. - -Ignores timezone offsets provided in the start_date_time and end_date_time parameters. -Instead, uses the user's default calendar timezone to filter events. -If the user has not set a timezone for their calendar, then the timezone will be UTC. - -**Parameters** - -- **`subject`** _(string, required)_: The text of the event's subject (title) line. -- **`body`** _(string, required)_: The body of the event. -- **`start_date_time`** _(datetime, required)_: The datetime of the event's start, represented in ISO 8601 format. Timezone offset is ignored. For example, 2025-04-25T13:00:00 -- **`end_date_time`** _(datetime, required)_: The datetime of the event's end, represented in ISO 8601 format. Timezone offset is ignored. For example, 2025-04-25T13:30:00 -- **`location`** _(string, optional)_: The location of the event. -- **`attendee_emails`** _(list of strings, optional)_: The email addresses of the attendees of the event. Must be valid email addresses e.g., username@domain.com. -- **`is_online_meeting`** _(bool, optional)_: Whether the event is an online meeting. Defaults to False - -
- - ---- - -## OutlookCalendar.GetEvent - -Get an event by its ID from the user's calendar. - -**Parameters** - -- **`event_id`** _(string, required)_: The ID of the event to get. - -
- - ---- - -## OutlookCalendar.ListEventsInTimeRange - -List events in the user's calendar in a specific time range. - -Ignores timezone offsets provided in the start_date_time and end_date_time parameters. -Instead, uses the user's default calendar timezone to filter events. -If the user has not set a timezone for their calendar, then the timezone will be UTC. - -**Parameters** - -- **`start_date_time`** (datetime, required): The start date and time of the time range, represented in ISO 8601 format. Timezone offset is ignored. For example, 2025-04-24T19:00:00 -- **`end_date_time`** (datetime, required): The end date and time of the time range, represented in ISO 8601 format. Timezone offset is ignored. For example, 2025-04-24T19:30:00 -- **`limit`** (int, optional): The maximum number of events to return. Max 1000. Defaults to 10. - -
- - ---- - -## Auth - -The Arcade Outlook Calendar MCP Sever uses the [Microsoft auth provider](/references/auth-providers/microsoft) to connect to users' Microsoft accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Microsoft auth provider](/references/auth-providers/microsoft#configuring-microsoft-auth) with your own Microsoft app credentials. - ---- - - diff --git a/app/en/resources/integrations/productivity/outlook-mail/_meta.tsx b/app/en/resources/integrations/productivity/outlook-mail/_meta.tsx deleted file mode 100644 index 53eaa37a1..000000000 --- a/app/en/resources/integrations/productivity/outlook-mail/_meta.tsx +++ /dev/null @@ -1,7 +0,0 @@ -import type { MetaRecord } from "nextra"; - -export default { - reference: { - title: "Reference", - }, -} satisfies MetaRecord; diff --git a/app/en/resources/integrations/productivity/outlook-mail/page.mdx b/app/en/resources/integrations/productivity/outlook-mail/page.mdx deleted file mode 100644 index 6b3749368..000000000 --- a/app/en/resources/integrations/productivity/outlook-mail/page.mdx +++ /dev/null @@ -1,417 +0,0 @@ ---- -asIndexPage: true ---- - -# Outlook Mail - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Outlook Mail MCP Server provides pre-built tools for working with emails using the Outlook API. Use these tools to: - -- Read emails -- Write emails -- Send emails - -## Available Tools - -These tools are currently available in the Arcade Outlook Mail MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server) with the [Google auth - provider](/references/auth-providers/google#using-google-auth-in-custom-tools). - - -## OutlookMail.WhoAmI - -
- - -Get comprehensive user profile and Outlook Mail environment information. - -**Parameters** - -This tool does not take any parameters. - ---- - -## OutlookMail.CreateDraftEmail - -Compose a new draft email in Outlook. - -**Parameters** - -- **`subject`** _(string, required)_: The subject of the email to create. -- **`body`** _(string, required)_: The body of the email to create. -- **`to_recipients`** _(list of strings, required)_: The email addresses that will be the recipients of the draft email. -- **`cc_recipients`** _(list of strings, optional)_: The email addresses that will be the CC recipients of the draft email. -- **`bcc_recipients`** _(list of strings, optional)_: The email addresses that will be the BCC recipients of the draft email. - -
- - ---- - -## OutlookMail.UpdateDraftEmail - -Update an existing draft email in Outlook. - -This tool overwrites the subject and body of a draft email (if provided), -and modifies its recipient lists by selectively adding or removing email addresses. - -This tool can update any un-sent email: - draft - reply-draft - reply-all draft - forward draft - -**Parameters** - -- **`message_id`** _(string, required)_: The ID of the draft email to update. -- **`subject`** _(string, optional)_: The new subject of the draft email. If provided, the existing subject will be overwritten. -- **`body`** _(string, optional)_: The new body of the draft email. If provided, the existing body will be overwritten -- **`to_add`** _(list of strings, optional)_: Email addresses to add as 'To' recipients. -- **`to_remove`** _(list of strings, optional)_: Email addresses to remove from the current 'To' recipients. -- **`cc_add`** _(list of strings, optional)_: Email addresses to add as 'CC' recipients. -- **`cc_remove`** _(list of strings, optional)_: Email addresses to remove from the current 'CC' recipients. -- **`bcc_add`** _(list of strings, optional)_: Email addresses to add as 'BCC' recipients. -- **`bcc_remove`** _(list of strings, optional)_: Email addresses to remove from the current 'BCC' recipients. -
- - ---- - -## OutlookMail.SendDraftEmail - -Send an existing draft email in Outlook - - This tool can send any un-sent email: - - draft - - reply-draft - - reply-all draft - - forward draft - -**Parameters** - -- **`message_id`** (string, required): The ID of the draft email to send - - - ---- - -## OutlookMail.CreateAndSendEmail - -Create and immediately send a new email in Outlook to the specified recipients - -**Parameters** - -- **`subject`** (string, required): The subject of the email to create -- **`body`** (string, required): The body of the email to create -- **`to_recipients`** (list[str], required): The email addresses that will be the recipients of the email -- **`cc_recipients`** (list[str], optional): The email addresses that will be the CC recipients of the email. -- **`bcc_recipients`** (list[str], optional): The email addresses that will be the BCC recipients of the email. - - - ---- - -## OutlookMail.ReplyToEmail - -Reply to an existing email in Outlook. - -Use this tool to reply to the sender or all recipients of the email. -Specify the reply_type to determine the scope of the reply. - -**Parameters** - -- **`message_id`** (string, required): The ID of the email to reply to -- **`body`** (string, required): The body of the reply to the email -- **`reply_type`** (enum ([ReplyType](#replytype)), required): Specify "reply" to reply only to the sender or "reply_all" to reply to all recipients. - - - ---- - -## OutlookMail.ListEmails - -List emails in the user's mailbox across all folders. - -Since this tool lists email across all folders, it may return sent items, drafts, -and other items that are not in the inbox. - -**Parameters** - -- **`limit`** (int, optional): The number of messages to return. Max is 100. Defaults to 5. -- **`pagination_token`** (str, optional): The pagination token to continue a previous request - - - ---- - -## OutlookMail.ListEmailsInFolder - -List the user's emails in the specified folder. - -Exactly one of `well_known_folder_name` or `folder_id` MUST be provided. - -**Parameters** - -- **`well_known_folder_name`** (enum ([WellKnownFolderNames](#wellknownfoldernames)), optional): The name of the folder to list emails from. Defaults to None. -- **`folder_id`** (str, optional): The ID of the folder to list emails from if the folder is not a well-known folder. Defaults to None. -- **`limit`** (int, optional): The number of messages to return. Max is 100. Defaults to 5. -- **`pagination_token`** (str, optional): The pagination token to continue a previous request - - - ---- - -## OutlookMail.ListEmailsByProperty - -List emails in the user's mailbox across all folders filtering by a property. - -**Parameters** - -- **`property`** (enum ([EmailFilterProperty](#emailfilterproperty)), required): The property to filter the emails by. -- **`operator`** (enum ([FilterOperator](#filteroperator)), required): The operator to use for the filter -- **`value`** (string, required): The value to filter the emails by. -- **`limit`** (int, optional): The number of messages to return. Max is 100. Defaults to 5. -- **`pagination_token`** (str, optional): The pagination token to continue a previous request - - - ---- - -## Auth - -The Arcade Outlook Mail MCP Sever uses the [Microsoft auth provider](/references/auth-providers/microsoft) to connect to users' Microsoft accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Microsoft auth provider](/references/auth-providers/microsoft#configuring-microsoft-auth) with your own Microsoft app credentials. - ---- - -## Reference - -### WellKnownFolderNames - -Well-known folder names that are created for users by default. -Instead of using the ID of these folders, you can use the well-known folder names. - -- **`DELETED_ITEMS`** _(string: "deleteditems")_ -- **`DRAFTS`** _(string: "drafts")_ -- **`INBOX`** _(string: "inbox")_ -- **`JUNK_EMAIL`** _(string: "junkemail")_ -- **`SENT_ITEMS`** _(string: "sentitems")_ -- **`STARRED`** _(string: "starred")_ -- **`TODO`** _(string: "tasks")_ - -### ReplyType - -The type of reply to send to an email. - -- **`REPLY`** _(string: "reply")_ -- **`REPLY_ALL`** _(string: "reply_all")_ - -### EmailFilterProperty - -The property to filter the emails by. - -- **`SUBJECT`** _(string: "subject")_ -- **`CONVERSATION_ID`** _(string: "conversationId")_ -- **`RECEIVED_DATE_TIME`** _(string: "receivedDateTime")_ -- **`SENDER`** _(string: "sender/emailAddress/address")_ - -### FilterOperator - -The operator to use for the filter. - -- **`EQUAL`** _(string: "eq")_ -- **`NOT_EQUAL`** _(string: "ne")_ -- **`GREATER_THAN`** _(string: "gt")_ -- **`GREATER_THAN_OR_EQUAL_TO`** _(string: "ge")_ -- **`LESS_THAN`** _(string: "lt")_ -- **`LESS_THAN_OR_EQUAL_TO`** _(string: "le")_ -- **`STARTS_WITH`** _(string: "startsWith")_ -- **`ENDS_WITH`** _(string: "endsWith")_ -- **`CONTAINS`** _(string: "contains")_ - - diff --git a/app/en/resources/integrations/productivity/outlook-mail/reference/page.mdx b/app/en/resources/integrations/productivity/outlook-mail/reference/page.mdx deleted file mode 100644 index 5774d27ac..000000000 --- a/app/en/resources/integrations/productivity/outlook-mail/reference/page.mdx +++ /dev/null @@ -1,39 +0,0 @@ -# OutlookMail Reference - -Below is a reference of enumerations used by some tools in the OutlookMail MCP Server: - -## ReplyType - -- **REPLY**: `reply` -- **REPLY_ALL**: `reply_all` - -## WellKnownFolderNames - -- **DELETED_ITEMS**: `deleteditems` -- **DRAFTS**: `drafts` -- **INBOX**: `inbox` -- **JUNK_EMAIL**: `junkemail` -- **SENT_ITEMS**: `sentitems` -- **STARRED**: `starred` -- **TODO**: `tasks` - -## EmailFilterProperty - -- **SUBJECT**: `subject` -- **CONVERSATION_ID**: `conversationId` -- **RECEIVED_DATE_TIME**: `receivedDateTime` -- **SENDER**: `sender/emailAddress/address` - -## FilterOperator - -- **EQUAL**: `eq` -- **NOT_EQUAL**: `ne` -- **GREATER_THAN**: `gt` -- **GREATER_THAN_OR_EQUAL_TO**: `ge` -- **LESS_THAN**: `lt` -- **LESS_THAN_OR_EQUAL_TO**: `le` -- **STARTS_WITH**: `startsWith` -- **ENDS_WITH**: `endsWith` -- **CONTAINS**: `contains` - - diff --git a/app/en/resources/integrations/productivity/sharepoint/page.mdx b/app/en/resources/integrations/productivity/sharepoint/page.mdx deleted file mode 100644 index 4cd3b93a6..000000000 --- a/app/en/resources/integrations/productivity/sharepoint/page.mdx +++ /dev/null @@ -1,408 +0,0 @@ -# Sharepoint - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The SharePoint MCP Server provides a comprehensive set of tools for interacting with SharePoint sites and their contents. Users can perform various actions, including: - -- Retrieve lists, items, and pages from SharePoint sites. -- Access metadata and content of specific pages. -- Search for and retrieve information about SharePoint sites and drives. -- Browse and download files from SharePoint drives / document libraries. - -This MCP Sever simplifies the process of accessing and managing SharePoint resources efficiently for AI Agents and chat bots. - - - The SharePoint MCP Server requires a Microsoft 365 account. Personal Microsoft accounts are not supported. - - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Sharepoint.GetListsFromSite - -
- - -Retrieve lists from a SharePoint site. - -**Parameters** - -- **site** (`string`, required) Site ID, SharePoint URL, or site name to get lists from. Prefer using a site ID whenever available for optimal performance. - -## Sharepoint.GetItemsFromList - -
- - -Retrieve items from a list in a SharePoint site. - -**Parameters** - -- **site** (`string`, required) Site ID, SharePoint URL, or site name to get lists from. Prefer using a site ID whenever available for optimal performance. -- **list_id** (`string`, required) The ID of the list to get items from. - -## Sharepoint.GetPage - -
- - -Retrieve metadata and the contents of a page in a SharePoint site. - -**Parameters** - -- **site** (`string`, required) Site ID, SharePoint URL, or site name to retrieve base pages from. Prefer using a site ID whenever available for optimal performance -- **page_id** (`string`, required) The ID of the page to retrieve. -- **include_page_content** (`boolean`, optional) Whether to include the page content in the response. Defaults to True. If set to False, the tool will return only the page metadata. - -## Sharepoint.ListPages - -
- - -Retrieve pages from a SharePoint site. - -**Parameters** - -- **site** (`string`, required) Site ID, SharePoint URL, or site name to retrieve base pages from. Prefer using a site ID whenever available for optimal performance. -- **limit** (`integer`, optional) The maximum number of pages to return. Defaults to 10, max is 200. - -## Sharepoint.GetSite - -
- - -Retrieve information about a specific SharePoint site by its ID, URL, or name. - -**Parameters** - -- **site** (`string`, required) Site ID, SharePoint URL, or site name to search for. - -## Sharepoint.SearchSites - -
- - -Search for SharePoint sites by name or description. - -**Parameters** - -- **keywords** (`string`, required) The search term to find sites by name or description. -- **limit** (`integer`, optional) The maximum number of sites to return. Defaults to 10, max is 100. -- **offset** (`integer`, optional) The offset to start from. - -## Sharepoint.ListSites - -
- - -List all SharePoint sites accessible to the current user. - -**Parameters** - -- **limit** (`integer`, optional) The maximum number of sites to return. Defaults to 10, max is 100. -- **offset** (`integer`, optional) The offset to start from. - -## Sharepoint.GetFollowedSites - -
- - -Retrieve a list of SharePoint sites that are followed by the current user. - -**Parameters** - -- **limit** (`integer`, optional) The maximum number of sites to return. Defaults to 10, max is 100. - -## Sharepoint.GetDrivesFromSite - -
- - -Retrieve drives / document libraries from a SharePoint site. - -**Parameters** - -- **site** (`string`, required) Site ID, SharePoint URL, or site name to get drives from. Prefer using a site ID whenever available for optimal performance. - -## Sharepoint.ListRootItemsInDrive - -
- - -Retrieve items from the root of a drive in a SharePoint site. - -**Parameters** - -- **drive_id** (`string`, required) The ID of the drive to get items from. -- **limit** (`integer`, optional) The number of items to get. Defaults to 100, max is 500. -- **offset** (`integer`, optional) The number of items to skip. - -## Sharepoint.ListItemsInFolder - -
- - -Retrieve items from a folder in a drive in a SharePoint site. - -**Parameters** - -- **drive_id** (`string`, required) The ID of the drive to get items from. -- **folder_id** (`string`, required) The ID of the folder to get items from. -- **limit** (`integer`, optional) The number of items to get. Defaults to 100, max is 500. -- **offset** (`integer`, optional) The number of items to skip. - -## Sharepoint.SearchDriveItems - -
- - -Search for items in one or more Sharepoint drives. - -**Parameters** - -- **keywords** (`string`, required) The keywords to search for files in the drive. -- **drive_id** (`string`, optional) Optionally, the ID of the drive to search items in. If not provided, the search will be performed in all drives. -- **folder_id** (`string`, optional) Optionally narrow the search within a specific folder by its ID. If not provided, the search will be performed in the whole drive. If a folder_id is provided, it is required to provide a drive_id as well. -- **limit** (`integer`, optional) The number of files to get. Defaults to 50, max is 500. -- **offset** (`integer`, optional) The number of files to skip. - -## Auth - -The Arcade Sharepoint MCP Sever uses the [Microsoft auth provider](/references/auth-providers/microsoft) to connect to users' Sharepoint accounts. Please refer to the [Microsoft auth provider](/references/auth-providers/microsoft) documentation to learn how to configure auth. - - diff --git a/app/en/resources/integrations/productivity/squareup-api/page.mdx b/app/en/resources/integrations/productivity/squareup-api/page.mdx deleted file mode 100644 index 09bea7d64..000000000 --- a/app/en/resources/integrations/productivity/squareup-api/page.mdx +++ /dev/null @@ -1,7441 +0,0 @@ -# SquareupApi -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The SquareupApi MCP Server offers a comprehensive suite of tools for managing various aspects of the Square platform. Users can perform actions related to payments, customer management, inventory, and more. Key functionalities include: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your - own tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## SquareupApi.RevokeOauthAccessToken - -
- - -Revoke all OAuth access tokens for an account. - -**Parameters** - -- **application_client_id** (`string`, optional) The Square-issued ID for your application, found on the OAuth page in the Developer Dashboard. -- **merchant_access_token** (`string`, optional) The access token of the merchant whose token you want to revoke. Cannot be used with `merchant_id`. -- **merchant_id_to_revoke** (`string`, optional) The merchant ID whose token you want to revoke. Do not use if 'access_token' is provided. -- **terminate_single_access_token** (`boolean`, optional) If true, terminate only the specified access token without revoking the entire authorization. Defaults to false. - - -## SquareupApi.ObtainOauthToken - -
- - -Obtain OAuth access and refresh tokens. - -**Parameters** - -- **application_id** (`string`, required) The Square-issued ID of your application, available as the Application ID in the Developer Console. Required for code and PKCE flows. -- **oauth_grant_type** (`string`, required) Specifies the method for obtaining an OAuth access token. Choose from 'authorization_code', 'refresh_token', or 'migration_token'. -- **application_client_secret** (`string`, optional) The application's secret key from the Developer Console, required for code flow. Distinct from a personal access token. -- **application_redirect_url** (`string`, optional) The registered redirect URL for your application. Required for code flow and PKCE flow if `grant_type` is `authorization_code`. -- **authorization_code** (`string`, optional) The authorization code for exchanging an OAuth access token, required for code flow and PKCE flow if `grant_type` is `authorization_code`. -- **expire_token_in_24_hours** (`boolean`, optional) Set to true to make the access token expire in 24 hours. Optional for any grant type. -- **legacy_migration_token** (`string`, optional) A valid legacy access token for generating a new OAuth access token, required if `grant_type` is `migration_token`. -- **pkce_code_verifier** (`string`, optional) The secret your application generated for the authorization request, required for PKCE flow when `grant_type` is `authorization_code`. -- **requested_scopes** (`array[string]`, optional) List of permissions for the access token, like ["MERCHANT_PROFILE_READ", "PAYMENTS_READ"]. Optional for certain flows. -- **valid_refresh_token** (`string`, optional) A valid refresh token used to generate a new OAuth access token, returned in a previous ObtainToken response. Required for the code and PKCE flow if grant_type is refresh_token. - - -## SquareupApi.RetrieveTokenStatus - -
- - -Retrieve the status of an OAuth or personal access token. - -**Parameters** - -This tool does not take any parameters. - -## SquareupApi.ActivateDomainForApplePay - -
- - -Activates a domain for use with Apple Pay and Square. - -**Parameters** - -- **apple_pay_domain_name** (`string`, required) Enter the domain name, as per RFC-1034, to register it with Apple Pay. - - -## SquareupApi.ListBankAccounts - -
- - -Fetches bank accounts linked to a Square account. - -**Parameters** - -- **location_id_filter** (`string`, optional) Specify this optional filter to retrieve bank accounts linked to a specific location. -- **max_bank_accounts** (`integer`, optional) Specify the maximum number of bank accounts to return. The limit can be up to 1000, which is also the default. -- **pagination_cursor** (`string`, optional) The pagination cursor from a previous `ListBankAccounts` call to retrieve the next set of results. - - -## SquareupApi.GetBankAccountDetailsByV1Id - -
- - -Fetches bank account details using a V1 ID. - -**Parameters** - -- **v1_bank_account_id** (`string`, required) The V1 ID of the bank account to retrieve details for. This ID is used to fetch specific account information from the Squareup service. - - -## SquareupApi.GetBankAccountDetails - -
- - -Retrieve details of a bank account linked to a Square account. - -**Parameters** - -- **bank_account_id** (`string`, required) Square-issued ID of the desired bank account to retrieve its details. - - -## SquareupApi.RetrieveBookings - -
- - -Retrieve a collection of bookings. - -**Parameters** - -- **customer_id_for_bookings** (`string`, optional) The ID of the customer for whom to retrieve bookings. If not provided, retrieves bookings for all customers. -- **earliest_start_time** (`string`, optional) The RFC 3339 timestamp specifying the earliest start time for bookings. Defaults to current time if not set. -- **latest_start_time** (`string`, optional) The latest possible start time of bookings in RFC 3339 format. Defaults to 31 days after `start_at_min` if not set. -- **max_results_per_page** (`integer`, optional) The maximum number of results per page to return in a paged response. -- **pagination_cursor** (`string`, optional) The pagination cursor for the next page of results. Leave empty for the first page. -- **specific_location_id** (`string`, optional) Retrieve bookings for a specific location by its ID. If not set, retrieves bookings for all locations. -- **team_member_id** (`string`, optional) The ID of the team member to retrieve bookings for. Leave unset to retrieve bookings for all members. - - -## SquareupApi.CreateBooking - -
- - -Create a new booking for a service. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.SearchBookingAvailability - -
- - -Find available booking slots for appointments. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.BulkRetrieveBookings - -
- - -Retrieve multiple bookings using booking IDs. - -**Parameters** - -- **booking_ids** (`array[string]`, required) A non-empty list of booking IDs to retrieve the corresponding bookings. - - -## SquareupApi.RetrieveBookingProfile - -
- - -Retrieve a seller's booking profile information. - -**Parameters** - -This tool does not take any parameters. - -## SquareupApi.ListBookingCustomAttributeDefinitions - -
- - -Retrieve all custom attribute definitions for bookings. - -**Parameters** - -- **pagination_cursor** (`string`, optional) Cursor from the previous response to get the next page of results. -- **result_limit** (`integer`, optional) Maximum results to return per page. Must be between 1 and 100, default is 20. - - -## SquareupApi.CreateBookingCustomAttribute - -
- - -Creates a custom attribute definition for bookings. - -**Parameters** - -- **attribute_schema_json** (`json`, optional) The JSON schema defining data type for booking custom attributes. Required for attribute creation. For more, visit Squareup Custom Attributes Overview. -- **current_attribute_definition_version** (`integer`, optional) The current version of the custom attribute definition. Must be set to the latest version for updates and strong consistency. -- **custom_attribute_created_timestamp** (`string`, optional) The creation timestamp of the custom attribute definition in RFC 3339 format. -- **custom_attribute_definition_name** (`string`, optional) The name for the custom attribute definition. Must be unique within the seller and application pair and required if visibility is 'VISIBILITY_READ_ONLY' or 'VISIBILITY_READ_WRITE_VALUES'. -- **custom_attribute_description** (`string`, optional) A description for the custom attribute, required if visibility is read-only or read-write. Displayed as a tooltip in UIs. -- **custom_attribute_key** (`string`, optional) Identifier for the custom attribute definition. Use a simple or qualified key. Must be unique and cannot be changed later. -- **custom_attribute_visibility** (`string`, optional) Defines the permission level required to view the custom attribute. Options: VISIBILITY_HIDDEN, VISIBILITY_READ_ONLY, VISIBILITY_READ_WRITE_VALUES. -- **idempotency_key** (`string`, optional) A unique string identifier for the request to ensure idempotency. This prevents duplicate operations in case of retries. -- **updated_at_timestamp** (`string`, optional) The timestamp in RFC 3339 format indicating when the custom attribute definition was last updated or created. - - -## SquareupApi.DeleteBookingCustomAttributeDefinition - -
- - -Deletes a booking's custom attribute definition. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute definition to delete for bookings. - - -## SquareupApi.RetrieveBookingCustomAttributeDefinition - -
- - -Retrieve a booking's custom attribute definition. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key for the custom attribute definition to retrieve. Use a qualified key if not the definition owner. -- **current_version_of_custom_attribute_definition** (`integer`, optional) The current version of the custom attribute definition for consistent reads. Provides the specified version or higher if available. Returns `BAD_REQUEST` if the version is higher than current. - - -## SquareupApi.UpdateBookingCustomAttribute - -
- - -Update a booking's custom attribute definition. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute definition to update. This key can be a simple key or a qualified key consisting of the application ID and the simple key, formatted as 'application_id:simple_key'. -- **created_at_timestamp** (`string`, optional) The timestamp indicating when the custom attribute definition was created, in RFC 3339 format. This is used to track the original creation time of the attribute definition. -- **current_version_of_custom_attribute_definition** (`integer`, optional) Specify the current version of the custom attribute definition to enable optimistic concurrency. Must match the latest version; stale writes are rejected. -- **custom_attribute_definition_key** (`string`, optional) The key of the custom attribute definition, either as a simple key or in the format 'application_id:simple key'. Unique per application, seller, and resource type. -- **custom_attribute_definition_name** (`string`, optional) The unique name for the booking's custom attribute definition, required if visibility is set to read-only or read-write. -- **custom_attribute_description** (`string`, optional) A seller-oriented description of the custom attribute, required if visibility is read-only or read-write. -- **custom_attribute_schema** (`json`, optional) A JSON object defining the schema for the custom attribute, determining its data type. Required for creating a definition. -- **idempotency_token** (`string`, optional) A unique string identifier for ensuring the request is idempotent. Refer to Square's Idempotency guidelines for details. -- **updated_timestamp** (`string`, optional) The RFC 3339 formatted timestamp of the last update for the custom attribute definition. -- **visibility_level** (`string`, optional) Specifies permission level for viewing the custom attribute definition. Options: VISIBILITY_HIDDEN, VISIBILITY_READ_ONLY, VISIBILITY_READ_WRITE_VALUES. - - -## SquareupApi.BulkDeleteBookingCustomAttributes - -
- - -Bulk delete custom attributes for bookings. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.BulkUpsertBookingCustomAttributes - -
- - -Bulk upserts custom attributes for bookings. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListSellerBookingProfiles - -
- - -Retrieve booking profiles for seller locations. - -**Parameters** - -- **max_results_per_page** (`integer`, optional) The maximum number of booking profiles to return in a single response page. -- **pagination_cursor** (`string`, optional) Use this to fetch the next page of results. Leave blank for the first page. - - -## SquareupApi.RetrieveSellerLocationBookingProfile - -
- - -Retrieve a seller's location booking profile. - -**Parameters** - -- **location_id** (`string`, required) The ID of the location for which to retrieve the booking profile. - - -## SquareupApi.ListBookingProfiles - -
- - -Retrieve booking profiles for team members. - -**Parameters** - -- **filter_by_location_id** (`string`, optional) Filter to return only team members enabled at the specified location ID. -- **include_only_bookable_members** (`boolean`, optional) Set to true to include only team members who are bookable. False includes all members. -- **maximum_results_limit** (`integer`, optional) Specify the maximum number of results to return in a paged response. -- **pagination_cursor** (`string`, optional) The cursor for pagination to retrieve the next page of results. Omit for the first page of results. - - -## SquareupApi.RetrieveTeamBookingProfiles - -
- - -Retrieve booking profiles for one or more team members. - -**Parameters** - -- **team_member_ids** (`array[string]`, required) A non-empty list of team member IDs to retrieve booking profiles for. - - -## SquareupApi.GetTeamMemberBookingProfile - -
- - -Retrieve a team member's booking profile from Square. - -**Parameters** - -- **team_member_unique_id** (`string`, required) The unique identifier for the team member whose booking profile is being retrieved. - - -## SquareupApi.RetrieveBooking - -
- - -Retrieve detailed information about a booking. - -**Parameters** - -- **booking_id** (`string`, required) The ID of the Booking object to retrieve details for. - - -## SquareupApi.UpdateBooking - -
- - -Update an existing booking with new details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **booking_identifier** (`string`, optional) The unique identifier of the booking to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.CancelBooking - -
- - -Cancel an existing booking. - -**Parameters** - -- **booking_id** (`string`, required) The unique ID of the booking to be canceled. This ID is required to identify which booking to cancel. -- **booking_revision_number** (`integer`, optional) The current revision number of the booking for optimistic concurrency control. -- **idempotency_key** (`string`, optional) Unique key to ensure the request is idempotent and prevents duplicate operations. - - -## SquareupApi.ListBookingCustomAttributes - -
- - -Retrieve a booking's custom attributes. - -**Parameters** - -- **booking_id** (`string`, required) The unique identifier for the target booking to list custom attributes for. This is required to specify which booking's attributes to retrieve. -- **include_custom_attribute_definitions** (`boolean`, optional) Set to true to include custom attribute definitions, providing names, descriptions, data types, and other details. Default is false. -- **maximum_results_limit** (`integer`, optional) The maximum number of results to return in a single response (1-100). Default is 20. -- **pagination_cursor** (`string`, optional) The cursor from the previous API response used to retrieve the next page of results. - - -## SquareupApi.DeleteBookingCustomAttribute - -
- - -Deletes a custom attribute from a booking. - -**Parameters** - -- **booking_id** (`string`, required) The unique identifier for the booking from which the custom attribute will be deleted. -- **custom_attribute_key** (`string`, required) The key of the custom attribute to delete. Must match the key in the Square seller account. Use a qualified key if not the definition owner. - - -## SquareupApi.RetrieveBookingCustomAttribute - -
- - -Retrieve custom attributes of a booking. - -**Parameters** - -- **booking_id** (`string`, required) The unique identifier for the target booking. This ID is required to retrieve the specific custom attribute for the booking. -- **custom_attribute_key** (`string`, required) The key of the custom attribute to retrieve. Must match the `key` of a custom attribute definition in the Square seller account. Use the qualified key if not the definition owner. -- **custom_attribute_version** (`integer`, optional) The desired version for strong consistency reads of the custom attribute. Uses the specified version or a higher one if available. -- **include_custom_attribute_definition** (`boolean`, optional) Set to true to include the custom attribute definition, providing name, description, and data type details. Default is false. - - -## SquareupApi.SetBookingCustomAttribute - -
- - -Upserts a custom attribute for a booking. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **booking_id** (`string`, optional) The ID of the target booking to update or insert a custom attribute for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_attribute_key** (`string`, optional) The key for the custom attribute to create or update, matching the existing key in the Square seller account. Use the qualified key if not the definition owner. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListUserCards - -
- - -Retrieve a list of cards owned by the account. - -**Parameters** - -- **filter_by_customer_id** (`string`, optional) Limit results to cards associated with a specific customer ID. By default, all cards owned by the merchant are returned. -- **include_disabled_cards** (`boolean`, optional) Include disabled cards in the results. By default, only enabled cards are returned. -- **limit_to_reference_id** (`string`, optional) Limit results to cards associated with the given reference ID. Use this to filter cards matching a specific reference. -- **pagination_cursor** (`string`, optional) A string token to retrieve the next set of card results for pagination. -- **sort_order** (`string`, optional) Specifies the sort order of the list by card creation date. Options are 'ASC' (ascending) or 'DESC' (descending). Defaults to 'ASC'. - - -## SquareupApi.AddCardToMerchant - -
- - -Adds a card on file to an existing merchant. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveCardDetails - -
- - -Retrieve details for a specific card. - -**Parameters** - -- **card_id** (`string`, required) Unique ID for the desired card to retrieve its details. - - -## SquareupApi.DisableCreditCard - -
- - -Disable a credit card to prevent further charges. - -**Parameters** - -- **credit_card_id** (`string`, required) Unique ID of the credit card to be disabled. This is required to specify the card to be deactivated. - - -## SquareupApi.ListCashDrawerShifts - -
- - -Retrieve cash drawer shift details for a location and date range. - -**Parameters** - -- **location_id** (`string`, required) The unique identifier of the location to retrieve cash drawer shifts for. -- **exclusive_query_end_time** (`string`, optional) The exclusive end time for the query on opened_at, provided in ISO 8601 format. -- **pagination_cursor** (`string`, optional) Opaque cursor used for fetching the next page of results from the API. -- **results_per_page** (`integer`, optional) Number of cash drawer shift events per page. Default is 200, with a maximum of 1000. -- **sort_order** (`string`, optional) Specifies the order of cash drawer shifts based on their opened_at field. Options are 'ASC' for ascending and 'DESC' for descending. Default is 'ASC'. -- **start_time** (`string`, optional) The inclusive start time for the query in ISO 8601 format. - - -## SquareupApi.RetrieveCashDrawerShiftSummary - -
- - -Retrieve summary details for a specific cash drawer shift. - -**Parameters** - -- **location_identifier** (`string`, required) The unique ID of the location to retrieve cash drawer shifts from. -- **shift_identifier** (`string`, required) The unique ID of the specific cash drawer shift to retrieve details for. - - -## SquareupApi.ListCashDrawerShiftEvents - -
- - -Retrieve events for a specific cash drawer shift. - -**Parameters** - -- **location_id** (`string`, required) The unique identifier for the location to retrieve cash drawer shift events from. -- **shift_id** (`string`, required) The ID of the cash drawer shift to retrieve events for. -- **max_results_per_page** (`integer`, optional) Number of results to return per page (default is 200, maximum is 1000). -- **pagination_cursor** (`string`, optional) Opaque cursor for fetching the next page of cash drawer shift event results. - - -## SquareupApi.DeleteCatalogItems - -
- - -Deletes catalog items and their children by IDs. - -**Parameters** - -- **catalog_object_ids_to_delete** (`array[string]`, required) The IDs of the catalog objects to be deleted. Deletion is cascading, removing the item and dependent objects. - - -## SquareupApi.RetrieveCatalogObjects - -
- - -Retrieve detailed catalog objects by provided IDs. - -**Parameters** - -- **catalog_object_ids** (`array[string]`, required) An array of IDs representing the CatalogObjects to retrieve. Each ID must be a string. -- **catalog_version** (`integer`, optional) The specific version of catalog objects to retrieve, allowing access to historical data. If omitted, the current version is used. -- **include_category_path_to_root** (`boolean`, optional) Include the `path_to_root` list for each returned category instance if set to true. Shows the path from parent categories to root. -- **include_deleted_objects** (`boolean`, optional) Set to `true` to include deleted objects (`is_deleted` attribute) in the response. -- **include_related_objects** (`boolean`, optional) If true, include additional related objects in the response. These are objects referenced by ID, included one level deep. Defaults to false. - - -## SquareupApi.BatchUpsertCatalogObjects - -
- - -Batch create or update up to 10,000 catalog objects. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.GetSquareCatalogInfo - -
- - -Retrieve Square Catalog API information and batch size limits. - -**Parameters** - -This tool does not take any parameters. - -## SquareupApi.ListCatalogItems - -
- - -Retrieve a list of catalog objects by type from Square catalog. - -**Parameters** - -- **catalog_object_types** (`string`, optional) A case-insensitive, comma-separated list of object types to retrieve. Valid types include ITEM, ITEM_VARIATION, CATEGORY, DISCOUNT, TAX, MODIFIER, MODIFIER_LIST, IMAGE, etc. Defaults to top-level types if unspecified. -- **catalog_version_number** (`integer`, optional) Specify the catalog version number to retrieve historical objects. If omitted, retrieves current version. -- **pagination_cursor** (`string`, optional) The cursor for pagination from a previous response. Leave unset for the initial request. Page size is 100. - - -## SquareupApi.UpsertCatalogObject - -
- - -Create or update a catalog object in Squareup. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.DeleteCatalogObject - -
- - -Delete a catalog object and its children by ID. - -**Parameters** - -- **catalog_object_id** (`string`, required) The unique ID of the catalog object to delete. Deletion is cascading, removing all dependent objects. - - -## SquareupApi.GetCatalogItemInfo - -
- - -Retrieve detailed information for a specific catalog item. - -**Parameters** - -- **catalog_object_id** (`string`, required) The object ID of the catalog item to retrieve detailed information for. -- **catalog_version** (`integer`, optional) Specify a catalog version to retrieve historical object data. If not provided, the current catalog version is used. -- **include_category_path_to_root** (`boolean`, optional) Include the category's path to the root in the response to show its hierarchy. Returns an empty list for top-level categories. -- **include_related_objects** (`boolean`, optional) Set to `true` to include additional related objects, like associated categories, taxes, and images, in the response. Ideal for immediate user display. - - -## SquareupApi.SearchCatalogObjects - -
- - -Search for catalog objects using specified query filters. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.SearchCatalogItems - -
- - -Find catalog items or variations based on search filters. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.UpdateItemModifierLists - -
- - -Update modifier lists for a catalog item. - -**Parameters** - -- **catalog_item_ids** (`array[string]`, required) A list of catalog item IDs associated with the CatalogModifierList objects to update. -- **modifier_list_ids_to_disable** (`array[string]`, optional) The IDs of CatalogModifierList objects to disable for the CatalogItem. At least one of this or modifier_lists_to_enable must be specified. -- **modifier_list_ids_to_enable** (`array[string]`, optional) The IDs of the CatalogModifierList objects to enable for the CatalogItem. At least one of `modifier_lists_to_enable` or `modifier_lists_to_disable` must be specified. - - -## SquareupApi.UpdateItemTaxes - -
- - -Update tax settings for specified catalog items. - -**Parameters** - -- **catalog_item_ids** (`array[string]`, required) List of IDs for the CatalogItems associated with the CatalogTax objects being updated. Maximum of 1,000 IDs. -- **catalog_tax_ids_to_disable** (`array[string]`, optional) List of CatalogTax object IDs to disable. Specify either this or taxes_to_enable. -- **tax_ids_to_enable** (`array[string]`, optional) List of CatalogTax object IDs to enable. Must specify at least one if 'tax_ids_to_disable' is not provided. - - -## SquareupApi.ListSalesChannels - -
- - -Retrieve a list of available sales channels. - -**Parameters** - -- **channel_reference_type** (`string`, optional) Type of reference associated with the sales channel, such as LOCATION or ONLINE_SITE. -- **channel_status** (`string`, optional) Specify the status of the channel. Options are 'ACTIVE' or 'INACTIVE'. -- **maximum_results_limit** (`integer`, optional) Specify the maximum number of sales channels to return. Defaults to 100 if not provided. -- **next_page_cursor** (`string`, optional) Provide the cursor to fetch the next set of results if pagination is needed. -- **reference_id** (`string`, optional) ID of the reference associated with the sales channel. - - -## SquareupApi.RetrieveSalesChannels - -
- - -Retrieve bulk information about sales channels. - -**Parameters** - -- **channel_identifiers** (`array[string]`, required) A list of IDs representing sales channels to retrieve details for. - - -## SquareupApi.RetrieveChannelInfo - -
- - -Retrieve detailed information about a specific channel. - -**Parameters** - -- **channel_id** (`string`, required) The unique identifier for the channel to retrieve information about. - - -## SquareupApi.ListCustomerProfiles - -
- - -Retrieve customer profiles from a Square account. - -**Parameters** - -- **customer_sort_field** (`string`, optional) Specifies the field by which customers should be sorted. Options: 'DEFAULT' or 'CREATED_AT'. Default is 'DEFAULT'. -- **customer_sort_order** (`string`, optional) Specify sorting order for customers: 'ASC' for ascending or 'DESC' for descending. Default is 'ASC'. -- **include_total_customer_count** (`boolean`, optional) Set to true to include the total customer count in the response. Default is false. -- **max_results_per_page** (`integer`, optional) Specify the maximum number of customer profiles to retrieve in a single page. Must be between 1 and 100. Default is 100. -- **pagination_cursor** (`string`, optional) A pagination cursor from a previous request to retrieve the next set of results. - - -## SquareupApi.CreateCustomer - -
- - -Creates a new customer for a business in Square. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.BulkCreateCustomers - -
- - -Create multiple customer profiles in bulk. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.BulkDeleteCustomers - -
- - -Deletes multiple customer profiles at once. - -**Parameters** - -- **customer_profile_ids** (`array[string]`, required) Array of customer profile IDs to be deleted. - - -## SquareupApi.BulkRetrieveCustomers - -
- - -Retrieve multiple customer profiles using IDs. - -**Parameters** - -- **customer_ids** (`array[string]`, required) List of customer profile IDs to retrieve. - - -## SquareupApi.UpdateMultipleCustomerProfiles - -
- - -Update multiple customer profiles in one request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListCustomerCustomAttributeDefinitions - -
- - -Retrieve customer custom attribute definitions for a Square seller. - -**Parameters** - -- **max_results_per_page** (`integer`, optional) Maximum number of results to return per page. It ranges from 1 to 100, defaulting to 20. -- **pagination_cursor** (`string`, optional) Cursor from the previous response for pagination. Use it to get the next page of results. - - -## SquareupApi.CreateCustomerAttributeDefinition - -
- - -Create a custom attribute for customer profiles. - -**Parameters** - -- **attribute_definition_name** (`string`, optional) The unique name of the custom attribute definition for both API and UI purposes. Required if visibility is set to 'VISIBILITY_READ_ONLY' or 'VISIBILITY_READ_WRITE_VALUES'. -- **created_at_timestamp** (`string`, optional) The timestamp indicating when the custom attribute definition was created, in RFC 3339 format. -- **current_custom_attribute_version** (`integer`, optional) The current version of the custom attribute definition. Incremental value used for optimistic concurrency control. Must be the latest version on writes to avoid rejection of stale updates. -- **custom_attribute_key** (`string`, optional) Unique identifier for the custom attribute definition, either a simple or qualified key. Up to 60 characters, including alphanumeric, periods (.), underscores (_), and hyphens (-). -- **custom_attribute_schema** (`json`, optional) The JSON schema defining the data type for the custom attribute. This is required when creating a definition. -- **custom_attribute_visibility** (`string`, optional) Specify the level of permission required to view the custom attribute definition. Options include 'VISIBILITY_HIDDEN', 'VISIBILITY_READ_ONLY', and 'VISIBILITY_READ_WRITE_VALUES'. -- **customer_attribute_description** (`string`, optional) A description for the custom attribute definition, required if visibility is set to 'VISIBILITY_READ_ONLY' or 'VISIBILITY_READ_WRITE_VALUES'. This serves as a seller-oriented tooltip. -- **idempotency_key** (`string`, optional) A unique identifier for the request to prevent duplicate executions in case of retries. This is used for ensuring idempotency. -- **timestamp_updated_at** (`string`, optional) Timestamp indicating when the custom attribute definition was created or updated, in RFC 3339 format. - - -## SquareupApi.DeleteCustomerAttributeDefinition - -
- - -Delete a customer custom attribute definition from Square. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute definition to delete from a Square seller account. - - -## SquareupApi.GetCustomerCustomAttributeDefinition - -
- - -Retrieve a customer's custom attribute definition from Square. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute definition to retrieve. Use the qualified key if not the owner. -- **custom_attribute_version** (`integer`, optional) The current version of the custom attribute definition to ensure consistent reads. Use to check for the most up-to-date data. - - -## SquareupApi.UpdateCustomerAttributeDefinition - -
- - -Update customer custom attribute definitions for a Square seller. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute definition to update. This should be either a simple or qualified key. -- **attribute_description** (`string`, optional) Provide a seller-oriented description for the custom attribute. This may include constraints and will be displayed as a tooltip. Required if visibility is set to `VISIBILITY_READ_ONLY` or `VISIBILITY_READ_WRITE_VALUES`. -- **attribute_visibility** (`string`, optional) Defines who can read and write the custom attribute values and definition. Options are 'VISIBILITY_HIDDEN', 'VISIBILITY_READ_ONLY', or 'VISIBILITY_READ_WRITE_VALUES'. -- **creation_timestamp** (`string`, optional) The timestamp indicating when the custom attribute definition was created, in RFC 3339 format. -- **current_version** (`integer`, optional) The current version of the custom attribute definition, required for optimistic concurrency control. Must be set to the latest version to ensure updates are not stale. This helps enforce strong consistency during updates. -- **custom_attribute_definition_key** (`string`, optional) The identifier for the custom attribute definition. It can be a simple key or a qualified key. The format is either 'key' or 'application_id:key'. It must be unique and cannot be changed after creation. -- **custom_attribute_definition_name** (`string`, optional) The name of the custom attribute definition for API and seller UI, unique within the seller and application pair. Required if visibility is `VISIBILITY_READ_ONLY` or `VISIBILITY_READ_WRITE_VALUES`. -- **custom_attribute_definition_schema** (`json`, optional) The JSON schema defining the data type of custom attributes. This is mandatory when creating a definition. -- **unique_request_identifier** (`string`, optional) A unique identifier for this request to ensure idempotency. Prevents duplicate operations by using the same identifier for retries. -- **updated_timestamp** (`string`, optional) The RFC 3339 format timestamp indicating when the custom attribute definition was last updated. - - -## SquareupApi.BulkUpsertCustomerAttributes - -
- - -Bulk create or update custom attributes for customer profiles. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListCustomerGroups - -
- - -Retrieve a list of customer groups for a business. - -**Parameters** - -- **max_results_per_page** (`integer`, optional) The maximum number of customer groups to return per page. Must be between 1 and 50. -- **pagination_cursor** (`string`, optional) A pagination cursor to retrieve the next set of results from a previous query. Useful for handling paginated responses. - - -## SquareupApi.CreateCustomerGroup - -
- - -Creates a new customer group for a business. - -**Parameters** - -- **customer_group_name** (`string`, required) The name of the customer group to be created. It is required for organizing customers into the group. -- **customer_group_id** (`string`, optional) A unique Square-generated ID for the customer group. This is automatically generated by Square and is used to identify the customer group. -- **group_created_timestamp** (`string`, optional) Specify the timestamp for when the customer group was created, in RFC 3339 format. -- **group_last_updated_time** (`string`, optional) The timestamp when the customer group was last updated, in RFC 3339 format. -- **idempotency_key** (`string`, optional) A unique string to ensure the request is processed only once. See [Idempotency](https://developer.squareup.com/docs/build-basics/common-api-patterns/idempotency). - - -## SquareupApi.DeleteCustomerGroup - -
- - -Deletes a customer group by its ID. - -**Parameters** - -- **customer_group_id** (`string`, required) The ID of the customer group you want to delete. - - -## SquareupApi.GetCustomerGroup - -
- - -Retrieve details of a specific customer group by group ID. - -**Parameters** - -- **customer_group_id** (`string`, required) The unique ID of the customer group to retrieve details for. - - -## SquareupApi.UpdateCustomerGroup - -
- - -Updates a customer group by its ID. - -**Parameters** - -- **customer_group_id** (`string`, required) The ID of the customer group to update. -- **customer_group_name** (`string`, required) The new name for the customer group to be updated. -- **customer_group_unique_id** (`string`, optional) A unique Square-generated ID for the customer group to be updated. -- **group_creation_timestamp** (`string`, optional) The timestamp of when the customer group was created in RFC 3339 format. Required to track creation time. -- **group_last_updated_timestamp** (`string`, optional) The timestamp when the customer group was last updated, in RFC 3339 format. - - -## SquareupApi.SearchSquareCustomers - -
- - -Search customer profiles in a Square account. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListCustomerSegments - -
- - -Retrieve customer segments for a business. - -**Parameters** - -- **max_results_per_page** (`integer`, optional) The maximum number of results to return in a single page. Value must be between 1 and 50. Default is 50. -- **pagination_cursor** (`string`, optional) A pagination cursor for retrieving the next set of customer segment results. Use a cursor returned from a previous call to continue listing. - - -## SquareupApi.GetCustomerSegment - -
- - -Retrieve specific customer segment information. - -**Parameters** - -- **customer_segment_id** (`string`, required) The Square-issued ID of the customer segment to retrieve. - - -## SquareupApi.DeleteCustomerProfile - -
- - -Delete a customer profile from a business system. - -**Parameters** - -- **customer_id** (`string`, required) The ID of the customer to delete from the business system. Required for identifying the customer profile to remove. -- **customer_profile_version** (`integer`, optional) The current version of the customer profile for optimistic concurrency control. - - -## SquareupApi.RetrieveCustomerDetails - -
- - -Retrieve detailed information for a specific customer. - -**Parameters** - -- **customer_id** (`string`, required) The unique identifier of the customer to retrieve details for. - - -## SquareupApi.UpdateCustomerProfile - -
- - -Update a customer's profile with new or changed details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **customer_id** (`string`, optional) The unique identifier of the customer to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListCustomerCustomAttributes - -
- - -Retrieve custom attributes of a customer profile. - -**Parameters** - -- **customer_profile_id** (`string`, required) The unique identifier of the customer profile whose custom attributes are to be retrieved. -- **include_attribute_definitions** (`boolean`, optional) Set to true to include custom attribute definitions in each custom attribute's definition field. Default is false. -- **maximum_results_per_page** (`integer`, optional) The maximum number of results to return in a single response. Valid values are 1 to 100, default is 20. -- **paging_cursor** (`string`, optional) Cursor from the previous response to get the next page of results. Used for pagination. - - -## SquareupApi.DeleteCustomerCustomAttribute - -
- - -Deletes a custom attribute from a customer profile. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute to delete. Must match the key of a custom attribute definition in the Square seller account. Use the qualified key if not the definition owner. -- **customer_profile_id** (`string`, required) The ID of the target customer profile for which the custom attribute will be deleted. - - -## SquareupApi.GetCustomerCustomAttribute - -
- - -Retrieve a custom attribute from a customer profile. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute to retrieve. This must match an existing custom attribute key in the Square seller account. Use a qualified key if not the definition owner. -- **customer_profile_id** (`string`, required) The ID of the customer profile to retrieve the custom attribute from. -- **attribute_version** (`integer`, optional) The version of the custom attribute for consistent reads. A higher version will return a BAD_REQUEST error. -- **include_custom_attribute_definition** (`boolean`, optional) Set to true to include the custom attribute definition with name, description, data type, and other details. Default is false. - - -## SquareupApi.UpdateCustomerCustomAttribute - -
- - -Create or update a custom attribute for a customer profile. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **customer_identifier** (`string`, optional) The ID of the target customer profile for which the custom attribute will be created or updated. This ID should match the customer profile in the Square system. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_attribute_key** (`string`, optional) The key identifying the custom attribute to create or update. Must match a key in the Square seller account's custom attribute definition. Use a qualified key if the application is not the definition owner. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RemoveCustomerGroup - -
- - -Remove a group membership from a customer. - -**Parameters** - -- **customer_id** (`string`, required) The ID of the customer to remove from the group. Provide the unique identifier associated with the customer. -- **group_id** (`string`, required) The unique identifier of the customer group to remove the customer from. - - -## SquareupApi.AddGroupToCustomer - -
- - -Adds a customer to a specified group. - -**Parameters** - -- **customer_group_id** (`string`, required) The unique identifier of the group to which the customer will be added. This is necessary to specify the exact group for categorization purposes. -- **customer_id** (`string`, required) The unique identifier of the customer to be added to the specified group. - - -## SquareupApi.ListMerchantDevices - -
- - -Retrieve a list of devices for a merchant's terminal API. - -**Parameters** - -- **device_listing_order** (`string`, optional) Specifies whether to list devices from oldest to newest ('ASC') or newest to oldest ('DESC'). -- **filter_by_location_id** (`string`, optional) Return devices only at the specified location ID, if provided. -- **pagination_cursor** (`string`, optional) A string used to fetch the next set of device results. Obtained from a prior API call, it facilitates pagination. -- **results_page_limit** (`integer`, optional) The number of results to return in a single page. Use this to control pagination of the device list. - - -## SquareupApi.ListDeviceCodes - -
- - -List all device codes for a merchant. - -**Parameters** - -- **device_code_status** (`string`, optional) Filter DeviceCodes by statuses: 'UNKNOWN', 'UNPAIRED', 'PAIRED', or 'EXPIRED'. Defaults to 'PAIRED' and 'UNPAIRED' if empty. -- **location_id_filter** (`string`, optional) Filter to return only DeviceCodes from the specified location. Returns data from all locations if not provided. -- **pagination_cursor** (`string`, optional) A pagination cursor from a previous call. Use to get the next set of results. -- **product_type_filter** (`string`, optional) Specify the product type to filter DeviceCodes. Defaults to all if empty. Options include 'TERMINAL_API'. - - -## SquareupApi.CreateSquareTerminalDeviceCode - -
- - -Generate a DeviceCode for Square Terminal login. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveDeviceCode - -
- - -Retrieve device code details by ID. - -**Parameters** - -- **device_code_id** (`string`, required) The unique identifier for the device code to retrieve its details. - - -## SquareupApi.RetrieveDeviceById - -
- - -Retrieve specific device information using its ID. - -**Parameters** - -- **device_identifier** (`string`, required) The unique identifier for the device to retrieve information from Square's system. - - -## SquareupApi.GetAccountDisputes - -
- - -Retrieve a list of disputes for an account. - -**Parameters** - -- **dispute_states_filter** (`string`, optional) Specify dispute states to filter the results. Options: INQUIRY_EVIDENCE_REQUIRED, INQUIRY_PROCESSING, INQUIRY_CLOSED, EVIDENCE_REQUIRED, PROCESSING, WON, LOST, ACCEPTED. Defaults to all states if not provided. -- **location_id** (`string`, optional) The unique ID of the location to filter disputes for. If omitted, disputes from all locations are returned. -- **pagination_cursor** (`string`, optional) A string cursor from a previous call to retrieve the next set of dispute results. See [Pagination](https://developer.squareup.com/docs/build-basics/common-api-patterns/pagination). - - -## SquareupApi.RetrieveDisputeDetails - -
- - -Retrieve details about a specific dispute using its ID. - -**Parameters** - -- **dispute_id** (`string`, required) The unique identifier for the dispute you want to retrieve details about. - - -## SquareupApi.AcceptDisputeLoss - -
- - -Accept the loss on a dispute and update its status to ACCEPTED. - -**Parameters** - -- **dispute_id** (`string`, required) The unique ID of the dispute to accept and resolve. - - -## SquareupApi.GetDisputeEvidence - -
- - -Retrieve evidence for a specific dispute. - -**Parameters** - -- **dispute_id** (`string`, required) Specify the ID of the dispute to retrieve its associated evidence. -- **pagination_cursor** (`string`, optional) A cursor for pagination. Provide this to retrieve the next set of results for the original query. - - -## SquareupApi.UploadDisputeEvidenceText - -
- - -Upload text evidence for a dispute challenge. - -**Parameters** - -- **dispute_id** (`string`, required) The unique ID of the dispute to upload text evidence for. -- **evidence_text_string** (`string`, required) Provide the textual evidence string to be used in the dispute challenge. -- **unique_request_key** (`string`, required) A unique key for identifying and ensuring the idempotency of the request. For additional details, see Square's idempotency documentation. -- **dispute_evidence_type** (`string`, optional) Specify the type of evidence for the dispute. Options include: GENERIC_EVIDENCE, ONLINE_OR_APP_ACCESS_LOG, AUTHORIZATION_DOCUMENTATION, etc. - - -## SquareupApi.RemoveDisputeEvidence - -
- - -Removes specified evidence from a dispute in Square. - -**Parameters** - -- **dispute_id** (`string`, required) The ID of the dispute to remove evidence from. Provide a valid string ID to specify the dispute. -- **evidence_id** (`string`, required) The ID of the evidence to be removed from the dispute. - - -## SquareupApi.GetDisputeEvidenceMetadata - -
- - -Get metadata for specified dispute evidence. - -**Parameters** - -- **dispute_id** (`string`, required) The unique ID of the dispute to retrieve evidence metadata from. -- **evidence_id** (`string`, required) The unique identifier for the evidence to retrieve metadata for. Required to specify which evidence's metadata is needed in the dispute. - - -## SquareupApi.SubmitEvidenceToBank - -
- - -Submit evidence for a dispute to the cardholder's bank. - -**Parameters** - -- **dispute_identifier** (`string`, required) The unique ID of the dispute for which evidence is being submitted. - - -## SquareupApi.SearchSquareEvents - -
- - -Search for Square API events within a specified timeframe. - -**Parameters** - -- **end_time_range** (`string`, optional) A datetime in RFC 3339 format marking the end of the time range for the event search. -- **filter_by_location_ids** (`array[string]`, optional) An array of location IDs to filter events by specific locations. -- **filter_event_types** (`array[string]`, optional) A list of event types to filter the search results by. Each event type should be a string. -- **maximum_events_per_page** (`integer`, optional) Specify the maximum number of events to return per page, up to 100. -- **merchant_ids_filter** (`array[string]`, optional) An array of merchant IDs used to filter events by merchant. -- **pagination_cursor** (`string`, optional) A pagination cursor for retrieving the next set of events from a previous search query. -- **sort_key_for_event_search** (`string`, optional) Set the key by which to sort the returned events. Options include 'DEFAULT'. -- **sort_order** (`string`, optional) Specify the order (chronological or alphabetical) for sorting results. Choose 'ASC' for ascending or 'DESC' for descending order. -- **time_range_start** (`string`, optional) Datetime value in RFC 3339 format indicating the start of the event timeframe. - - -## SquareupApi.DisableSearchableEvents - -
- - -Disable events to prevent them from being searchable. - -**Parameters** - -This tool does not take any parameters. - -## SquareupApi.EnableEventsSearch - -
- - -Enable events to make them searchable. - -**Parameters** - -This tool does not take any parameters. - -## SquareupApi.ListEventTypes - -
- - -Retrieve available event types for webhooks and API queries. - -**Parameters** - -- **api_version** (`string`, optional) Specify the API version to list event types, overriding the application's default version. - - -## SquareupApi.ListGiftCards - -
- - -Retrieve and filter a list of gift cards. - -**Parameters** - -- **filter_by_customer_id** (`string`, optional) Provide a customer ID to return only the gift cards linked to that specific customer. -- **gift_card_state** (`string`, optional) Specify the state of the gift cards to filter the results by their current status. If not provided, all states are included. -- **gift_card_type** (`string`, optional) Filter gift cards by a specified type, or return all types if not provided. -- **pagination_cursor** (`string`, optional) A pagination cursor from a previous call to retrieve the next set of results. If not provided, returns the first page. -- **results_per_page_limit** (`integer`, optional) Specify the number of gift cards to return per page. Maximum is 200; default is 30. - - -## SquareupApi.CreateGiftCard - -
- - -Create and register digital or physical gift cards. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListGiftCardActivities - -
- - -Retrieve and filter gift card activities. - -**Parameters** - -- **activity_sort_order** (`string`, optional) Specify the order to return gift card activities: 'ASC' for oldest to newest, 'DESC' for newest to oldest (default). -- **end_time_rfc3339** (`string`, optional) The inclusive end timestamp for the reporting period in RFC 3339 format. Defaults to current time. -- **filter_by_activity_type** (`string`, optional) Specify a type of gift card activity to filter the results. If not provided, all activity types are returned. -- **filter_by_location_id** (`string`, optional) Specify a location ID to filter gift card activities for that location. Leave empty for activities across all locations. -- **pagination_cursor** (`string`, optional) A cursor returned by a previous call to paginate results. Use to retrieve the next set of results. -- **reporting_period_start_time** (`string`, optional) The starting timestamp for filtering gift card activities, in RFC 3339 format. Inclusive of the provided time; defaults to one year ago. -- **results_limit_per_page** (`integer`, optional) Specify the number of results per page. Maximum is 100; default is 50. -- **specific_gift_card_id** (`string`, optional) Specify a gift card ID to retrieve activities related to that specific card. If not provided, activities for all gift cards will be returned. - - -## SquareupApi.CreateGiftCardActivity - -
- - -Creates a gift card activity to manage gift card balance or state. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveGiftCard - -
- - -Retrieve a gift card using its account number. - -**Parameters** - -- **gift_card_account_number** (`string`, required) The account number (GAN) of the gift card to retrieve. Max length 255 digits; Square-issued GANs have 16 digits. - - -## SquareupApi.RetrieveGiftCardFromToken - -
- - -Retrieve a gift card using a secure token. - -**Parameters** - -- **secure_payment_token** (`string`, required) The secure payment token used to retrieve the gift card. Generated by the Web Payments SDK or In-App Payments SDK. - - -## SquareupApi.LinkCustomerToGiftCard - -
- - -Link a customer to a gift card for future use. - -**Parameters** - -- **customer_id** (`string`, required) The ID of the customer to link to the gift card. This should be a unique identifier representing the customer in the system. -- **gift_card_identifier** (`string`, required) The unique ID of the gift card to link to the customer. - - -## SquareupApi.UnlinkCustomerFromGiftCard - -
- - -Unlink a customer from a gift card. - -**Parameters** - -- **customer_id_to_unlink** (`string`, required) The unique identifier of the customer to unlink from the gift card. Ensure it matches the correct customer. -- **gift_card_id_to_unlink** (`string`, required) The ID of the gift card to be unlinked from the customer. Required for unlinking process. - - -## SquareupApi.RetrieveGiftCardSquareup - -
- - -Retrieve gift card details using a gift card ID. - -**Parameters** - -- **gift_card_id** (`string`, required) The unique ID of the gift card to retrieve information. - - -## SquareupApi.RetrieveInventoryAdjustment - -
- - -Fetches inventory adjustment details by ID. - -**Parameters** - -- **inventory_adjustment_id** (`string`, required) ID of the InventoryAdjustment to retrieve. - - -## SquareupApi.ApplyInventoryAdjustments - -
- - -Apply batch adjustments to inventory quantities. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.FetchInventoryChanges - -
- - -Retrieve historical inventory changes and adjustments. - -**Parameters** - -- **filter_by_catalog_object_ids** (`array[string]`, optional) Filter results by providing an array of CatalogObject IDs. Only applicable when set. -- **filter_by_location_ids** (`array[string]`, optional) Return results filtered by specific `Location` IDs. This is optional and defaults to null. -- **filter_by_updated_before_timestamp** (`string`, optional) Return results with `created_at` or `calculated_at` before this RFC 3339 timestamp. -- **filter_inventory_change_types** (`array[string]`, optional) A list of `InventoryChangeType` values to filter results, excluding `TRANSFER`. Default is `[PHYSICAL_COUNT, ADJUSTMENT]`. -- **filter_updated_after_timestamp** (`string`, optional) Return results with `calculated_at` after specified time in RFC 3339 format. Default is the UNIX epoch (`1970-01-01T00:00:00Z`). -- **inventory_states_filter** (`array[string]`, optional) Filter to return `ADJUSTMENT` query results by `InventoryState`. Only applies if set. Accepts a list of states. -- **number_of_records_to_return** (`integer`, optional) The number of inventory change records to return in the response. -- **pagination_cursor** (`string`, optional) A cursor for pagination to retrieve the next set of inventory results. Use this from a previous call to continue fetching data. - - -## SquareupApi.RetrieveInventoryCounts - -
- - -Retrieve current inventory counts for specific items and locations. - -**Parameters** - -- **filter_by_catalog_object_ids** (`array[string]`, optional) A list of `CatalogObject` IDs to filter the inventory results. Only applicable when set. -- **filter_by_location_ids** (`array[string]`, optional) An array of Location IDs to filter inventory counts. Only applicable when set. -- **filter_by_updated_after_timestamp** (`string`, optional) Filter results to include only those with a `calculated_at` timestamp after the specified RFC 3339 time. Default is the UNIX epoch. -- **inventory_state_filters** (`array[string]`, optional) Filter results by specific inventory states. Ignored states: NONE, SOLD, UNLINKED_RETURN. Provide as an array of strings. -- **pagination_cursor** (`string`, optional) A pagination cursor to retrieve the next set of results for the original query. -- **record_limit** (`integer`, optional) Specify the number of inventory count records to return. - - -## SquareupApi.GetInventoryPhysicalCount - -
- - -Retrieve details of a specific inventory physical count. - -**Parameters** - -- **inventory_physical_count_id** (`string`, required) ID of the InventoryPhysicalCount to retrieve details for. - - -## SquareupApi.RetrieveInventoryTransfer - -
- - -Retrieve detailed inventory transfer information. - -**Parameters** - -- **inventory_transfer_id** (`string`, required) The unique identifier for the InventoryTransfer to retrieve. - - -## SquareupApi.GetInventoryCount - -
- - -Retrieve current stock count for a specific catalog item. - -**Parameters** - -- **catalog_object_id** (`string`, required) The ID of the CatalogObject to retrieve inventory count for. -- **location_ids** (`string`, optional) Comma-separated list of Location IDs to query. Use an empty list to query all locations. -- **pagination_cursor** (`string`, optional) A cursor for paginating results, from previous call, to fetch next page. - - -## SquareupApi.ListInvoices - -
- - -Retrieve a list of invoices for a specified location. - -**Parameters** - -- **location_identifier** (`string`, required) The unique identifier for the location to fetch invoices from. -- **maximum_invoices_to_return** (`integer`, optional) Specify the maximum number of invoices to return. The limit is 200; default is 100 if not set. -- **pagination_cursor** (`string`, optional) A cursor for pagination to retrieve the next set of invoice results. - - -## SquareupApi.CreateDraftInvoice - -
- - -Create a draft invoice for an order using Squareup. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.SearchInvoices - -
- - -Search for invoices based on location and optional customer. - -**Parameters** - -- **location_id** (`array[string]`, required) Specify the location ID to limit the invoice search. Only one location ID can be provided. -- **customer_id** (`array[string]`, optional) Specify the customer ID to limit the search to invoices for that customer. Only one customer can be specified. -- **maximum_invoice_count** (`integer`, optional) The maximum number of invoices to return, up to 200. Defaults to 100 if not specified. -- **pagination_cursor** (`string`, optional) A cursor to retrieve the next set of results for pagination. Use the cursor from the previous response. -- **sort_by_field** (`string`, optional) Specify the field for sorting results. Default is 'INVOICE_SORT_DATE'. -- **sort_order** (`string`, optional) The order in which results are returned, either 'DESC' for descending or 'ASC' for ascending. - - -## SquareupApi.DeleteInvoice - -
- - -Delete a draft invoice and change order status to CANCELED. - -**Parameters** - -- **invoice_id** (`string`, required) The ID of the draft invoice to delete. -- **invoice_version** (`integer`, optional) The version number of the invoice to delete. Use GetInvoice or ListInvoices if unknown. - - -## SquareupApi.RetrieveInvoiceById - -
- - -Retrieve invoice details using an invoice ID. - -**Parameters** - -- **invoice_id** (`string`, required) The ID of the invoice to retrieve. This should be a unique string representing a specific invoice. - - -## SquareupApi.UpdateInvoice - -
- - -Updates invoice details with specified changes. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **invoice_id** (`string`, optional) The unique ID of the invoice you wish to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RemoveInvoiceAttachment - -
- - -Removes an attachment from an invoice. - -**Parameters** - -- **attachment_id** (`string`, required) The unique identifier for the invoice attachment to be deleted. Required for removing the specified file from the invoice. -- **invoice_identifier** (`string`, required) The unique ID of the invoice from which to delete the attachment. Applicable for specific invoice states. - - -## SquareupApi.CancelInvoice - -
- - -Cancel an invoice to prevent further transactions. - -**Parameters** - -- **invoice_id** (`string`, required) The ID of the invoice you want to cancel. This is required to specify which invoice will be affected. -- **invoice_version_to_cancel** (`integer`, required) The version number of the invoice to be canceled. Use GetInvoice or ListInvoices to find it if unknown. - - -## SquareupApi.PublishInvoice - -
- - -Publish a draft invoice with Square, updating its status. - -**Parameters** - -- **invoice_id** (`string`, required) The ID of the draft invoice that you wish to publish. This ID uniquely identifies the invoice within the system. -- **invoice_version** (`integer`, required) Specify the current version number of the invoice to publish. This must match the existing invoice version to avoid rejection. -- **unique_request_identifier** (`string`, optional) A unique string to identify the `PublishInvoice` request. If omitted or empty, each request is treated as independent. Refer to the Square documentation on idempotency for more information. - - -## SquareupApi.ListBreakTypes - -
- - -Retrieve a paginated list of break types for a business. - -**Parameters** - -- **filter_by_location_id** (`string`, optional) Filter results to break types associated with the specified location ID. -- **max_results_per_page** (`integer`, optional) Specify the maximum number of BreakType results to return per page. Must be between 1 and 200. Default is 200. -- **next_page_cursor** (`string`, optional) A pointer to the next page of `BreakType` results to fetch for continued listing of break types. - - -## SquareupApi.CreateBreakType - -
- - -Create a new BreakType template for a location. - -**Parameters** - -- **break_expected_duration** (`string`, required) The expected length of the break in RFC-3339 duration format (e.g., PT15M for 15 minutes). -- **break_name** (`string`, required) A human-readable name for the break type, displayed to team members. -- **is_break_paid** (`boolean`, required) Indicates if the break counts towards compensated work time. Use true for a paid break, false for an unpaid break. -- **location_id** (`string`, required) The ID of the business location where this break type will apply. It is required to associate the break type with a specific location. -- **break_type_uuid** (`string`, optional) The UUID for the BreakType object. It uniquely identifies the break type. -- **concurrency_version** (`integer`, optional) Integer for resolving concurrency issues; fails if it doesn't match server version. -- **created_at_timestamp** (`string`, optional) A read-only timestamp in RFC 3339 format, automatically populated and not required for input. -- **idempotency_key** (`string`, optional) A unique string to ensure the operation is idempotent, avoiding duplicate actions. -- **updated_at_timestamp** (`string`, optional) A read-only timestamp in RFC 3339 format indicating when the BreakType was last updated. - - -## SquareupApi.DeleteBreakType - -
- - -Deletes an existing BreakType. - -**Parameters** - -- **break_type_uuid** (`string`, required) The UUID of the BreakType to be deleted. - - -## SquareupApi.GetBreakTypeById - -
- - -Retrieve details of a specific BreakType by ID. - -**Parameters** - -- **break_type_uuid** (`string`, required) The UUID of the BreakType to retrieve. - - -## SquareupApi.UpdateBreakType - -
- - -Update an existing BreakType configuration. - -**Parameters** - -- **break_counts_for_compensation** (`boolean`, required) Set to true if this break counts towards time worked for compensation purposes. -- **break_duration_rfc3339** (`string`, required) The expected duration of the break in RFC-3339 format (e.g., PT15M for 15 minutes). -- **break_name** (`string`, required) A human-readable name for the break type, shown to team members in Square products. -- **break_type_uuid** (`string`, required) The UUID of the BreakType to be updated. -- **business_location_id** (`string`, required) The ID of the business location this type of break applies to. Required for updating break settings. -- **break_type_creation_timestamp** (`string`, optional) A read-only timestamp in RFC 3339 format indicating when the BreakType was created. This is not modifiable. -- **break_type_id** (`string`, optional) The UUID for the BreakType object being updated. This is required for identifying which BreakType to modify. -- **readonly_updated_at_timestamp** (`string`, optional) The read-only timestamp in RFC 3339 format indicating the last update time for BreakType. It's not modifiable. -- **version_for_concurrency** (`integer`, optional) The version number for concurrency control. Helps resolve conflicts by matching the server's current version. - - -## SquareupApi.CreateScheduledShift - -
- - -Create a scheduled shift with draft shift details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.BulkPublishScheduledShifts - -
- - -Publish multiple scheduled shifts in bulk. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListScheduledShifts - -
- - -Retrieve a list of scheduled shifts with filtering options. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveScheduledShift - -
- - -Retrieve details of a scheduled shift by ID. - -**Parameters** - -- **scheduled_shift_id** (`string`, required) The unique identifier of the scheduled shift to retrieve details for. - - -## SquareupApi.UpdateScheduledShift - -
- - -Updates draft shift details for a scheduled shift. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **scheduled_shift_id** (`string`, optional) The unique identifier of the scheduled shift to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.PublishScheduledShift - -
- - -Publish a scheduled shift to make it official. - -**Parameters** - -- **scheduled_shift_id** (`string`, required) The ID of the scheduled shift to publish. -- **unique_idempotency_key** (`string`, required) A unique identifier for ensuring the idempotency of the publish request. Prevents duplicate operations if the request is retried. -- **current_shift_version** (`integer`, optional) The current version of the scheduled shift for optimistic concurrency control. If it doesn't match the server version, the request fails. -- **notification_audience** (`string`, optional) Specify who receives email notifications when a scheduled shift is published. Options are: ALL, AFFECTED, NONE. - - -## SquareupApi.ListTeamMemberWages - -
- - -Retrieve paginated list of team member wages for a business. - -**Parameters** - -- **filter_by_team_member_id** (`string`, optional) Filter wages to only those associated with the specified team member by ID. -- **max_results_per_page** (`integer`, optional) The maximum number of TeamMemberWage results to return per page, ranging from 1 to 200. Default is 200. -- **next_page_cursor** (`string`, optional) A pointer to the next page of team member wage results to fetch. - - -## SquareupApi.GetTeamMemberWage - -
- - -Retrieve wage details for a specific team member. - -**Parameters** - -- **team_member_wage_id** (`string`, required) The unique identifier (UUID) for retrieving the specific TeamMemberWage record. - - -## SquareupApi.CreateTeamMemberTimecard - -
- - -Create a timecard for a team member's workday. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.SearchTimecards - -
- - -Retrieve filtered and sorted timecard records for a business. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.DeleteTimecard - -
- - -Delete a specific timecard entry. - -**Parameters** - -- **timecard_uuid** (`string`, required) The UUID for the Timecard being deleted. - - -## SquareupApi.GetTimecardById - -
- - -Fetch details of a specific timecard by ID. - -**Parameters** - -- **timecard_id** (`string`, required) The unique UUID identifying the timecard you want to retrieve. - - -## SquareupApi.UpdateTimecard - -
- - -Update an existing timecard with new details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **timecard_id** (`string`, optional) The unique identifier of the timecard to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListWorkweekConfigs - -
- - -Retrieve workweek configurations for a business. - -**Parameters** - -- **maximum_results_per_page** (`integer`, optional) Maximum number of WorkweekConfig results to return per page. -- **pagination_cursor** (`string`, optional) Pointer to the next page of WorkweekConfig results to fetch. - - -## SquareupApi.UpdateWorkweekConfiguration - -
- - -Update workweek configuration settings. - -**Parameters** - -- **workweek_config_id** (`string`, required) The UUID for the `WorkweekConfig` object to be updated. -- **workweek_start_day** (`string`, required) Specifies the start day of the workweek. Acceptable values are: MON, TUE, WED, THU, FRI, SAT, SUN. -- **workweek_start_time_local** (`string`, required) The local time a business week starts, represented as a string in `HH:MM` format (`HH:MM:SS` is accepted, but seconds are truncated). -- **read_only_updated_at** (`string`, optional) A read-only timestamp in RFC 3339 format; presented in UTC, to indicate the last update time of the workweek configuration. -- **workweek_config_uuid** (`string`, optional) The UUID of the workweek configuration object to be updated. -- **workweek_config_version** (`integer`, optional) Version number to resolve concurrency issues. If it doesn't match the server, the update fails. If omitted, a blind write occurs. -- **workweek_creation_timestamp** (`string`, optional) Read-only UTC timestamp of workweek config creation in RFC 3339 format. - - -## SquareupApi.ListAllLocations - -
- - -Fetch details of all seller's locations, including inactive ones. - -**Parameters** - -This tool does not take any parameters. - -## SquareupApi.CreateNewLocation - -
- - -Create a new location for sales and configuration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListLocationCustomAttributeDefinitions - -
- - -Get location-related custom attribute definitions for a Square account. - -**Parameters** - -- **filter_by_visibility** (`string`, optional) Filter results by visibility values: 'ALL', 'READ', or 'READ_WRITE'. Determines the visibility of custom attribute definitions returned. -- **maximum_results_per_page** (`integer`, optional) Sets the maximum number of results to return in a single response page. Accepts values between 1 and 100, default is 20. -- **pagination_cursor** (`string`, optional) The cursor from the previous response to fetch the next page of results. - - -## SquareupApi.CreateLocationCustomAttribute - -
- - -Create a custom attribute for a Square location. - -**Parameters** - -- **current_definition_version** (`integer`, optional) The current version of the custom attribute definition. Must match the latest version for updates to ensure optimistic concurrency and avoid stale writes. -- **custom_attribute_definition_creation_timestamp** (`string`, optional) The creation timestamp for the custom attribute definition in RFC 3339 format. Required for consistently tracking when the definition was created. -- **custom_attribute_description** (`string`, optional) A seller-oriented description of the custom attribute definition. Required if visibility is `VISIBILITY_READ_ONLY` or `VISIBILITY_READ_WRITE_VALUES`. It may be shown as a tooltip in the Square UI. -- **custom_attribute_key** (`string`, optional) The unique identifier for the custom attribute definition, formatted as 'application_id:simple_key' or a simple key with up to 60 characters including alphanumeric, periods, underscores, and hyphens. -- **custom_attribute_name** (`string`, optional) The unique name for the custom attribute, used in API and UI. Required if visibility is not private. -- **custom_attribute_schema** (`json`, optional) A JSON schema defining the data type of the custom attribute. It's required for creating a definition. -- **custom_attribute_visibility** (`string`, optional) Sets the permission level to view and edit the custom attribute. Options: VISIBILITY_HIDDEN, VISIBILITY_READ_ONLY, VISIBILITY_READ_WRITE_VALUES. -- **unique_request_id** (`string`, optional) A unique identifier for this request to ensure idempotency. It helps prevent duplicate operations by distinguishing each request as unique. -- **updated_timestamp** (`string`, optional) The timestamp indicating when the custom attribute definition was created or last updated, in RFC 3339 format. - - -## SquareupApi.DeleteLocationCustomAttribute - -
- - -Delete a custom attribute definition from a location. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The identifier for the custom attribute definition to remove. - - -## SquareupApi.RetrieveLocationCustomAttributeDefinition - -
- - -Retrieve a location's custom attribute definition. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key for the custom attribute definition to retrieve, using the qualified key if not the owner. -- **current_custom_attribute_version** (`integer`, optional) The version number of the custom attribute definition for consistent reads. Must match the current or higher version. - - -## SquareupApi.UpdateLocationCustomAttribute - -
- - -Updates a custom attribute definition for a location. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute definition to update. It should match the key provided when the definition was created. -- **current_version** (`integer`, optional) The current version of the custom attribute definition. Must be set to the latest version for updates to ensure optimistic concurrency. -- **custom_attribute_creation_timestamp** (`string`, optional) The creation timestamp for the custom attribute definition in RFC 3339 format. -- **custom_attribute_definition_identifier** (`string`, optional) The unique identifier for the custom attribute definition. This can be a simple key or a qualified key (format: application_id:simple_key). It supports up to 60 alphanumeric characters, periods (.), underscores (_), and hyphens (-). -- **custom_attribute_description** (`string`, optional) A description for the custom attribute definition, including any constraints. Required if the visibility is `VISIBILITY_READ_ONLY` or `VISIBILITY_READ_WRITE_VALUES`. -- **custom_attribute_name** (`string`, optional) The unique name for the custom attribute definition. Required if visibility is set to specific levels. -- **custom_attribute_schema** (`json`, optional) The JSON schema defining the data type of the custom attributes. Required when creating a definition. Refer to the Square Custom Attributes Overview for details. -- **custom_attribute_visibility_level** (`string`, optional) Specifies permission level required to view the custom attribute definition. Options: VISIBILITY_HIDDEN, VISIBILITY_READ_ONLY, VISIBILITY_READ_WRITE_VALUES. -- **unique_idempotency_key** (`string`, optional) A unique identifier for the request to ensure idempotency. Prevents duplicate processing of requests. -- **update_timestamp** (`string`, optional) The timestamp indicating when the custom attribute definition was last updated, in RFC 3339 format. - - -## SquareupApi.BulkDeleteLocationCustomAttributes - -
- - -Delete custom attributes for multiple locations at once. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.BulkUpsertLocationCustomAttributes - -
- - -Bulk create or update custom attributes for multiple locations. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveLocationDetails - -
- - -Retrieve details of a specific business location. - -**Parameters** - -- **location_id** (`string`, required) The ID of the location to retrieve. Use "main" to return the main location details. - - -## SquareupApi.UpdateLocationSquareup - -
- - -Updates a business location on Square. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **location_id** (`string`, optional) The ID of the location to update on Square. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListLocationCustomAttributes - -
- - -Retrieve custom attributes for a specific location. - -**Parameters** - -- **location_id** (`string`, required) The ID of the target location to retrieve custom attributes for. -- **filter_by_visibility** (`string`, optional) Filters custom attribute definitions by visibility values. Options include 'ALL', 'READ', or 'READ_WRITE'. -- **include_custom_attribute_definitions** (`boolean`, optional) Set to true to include custom attribute definitions, providing name, description, and data type details. Defaults to false. -- **maximum_results_limit** (`integer`, optional) The maximum number of results to return in a single response. Valid range: 1 to 100. Default is 20. -- **pagination_cursor** (`string`, optional) The cursor for fetching the next page of results in a paginated response. - - -## SquareupApi.RemoveLocationCustomAttribute - -
- - -Delete a custom attribute from a location. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute to delete, matching the key of a custom attribute definition in the Square seller account. Use the qualified key if not the definition owner. -- **location_id** (`string`, required) The unique identifier for the target location where the custom attribute will be deleted. - - -## SquareupApi.GetLocationCustomAttribute - -
- - -Retrieve a custom attribute for a specific location. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key for the custom attribute to retrieve. Must match the key in Square's custom attribute definition. Use qualified key if needed. -- **target_location_id** (`string`, required) The ID of the target location to retrieve its custom attribute. -- **custom_attribute_version** (`integer`, optional) Specify the current version of the custom attribute for consistent data retrieval. A BAD_REQUEST error is returned if this version exceeds the current version. -- **include_custom_attribute_definition** (`boolean`, optional) Set to true to include details like name, description, and data type of the custom attribute definition. Default is false. - - -## SquareupApi.UpsertLocationCustomAttribute - -
- - -Create or update a custom attribute for a location. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **location_id** (`string`, optional) The ID of the target location for which the custom attribute is to be created or updated. It should be a string that uniquely identifies the location within the Square seller account. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_attribute_key** (`string`, optional) The key for the custom attribute to create or update. Must match an existing attribute definition key in the Square account. Use a qualified key if not the owner. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.CreateLoyaltyAccount - -
- - -Create a loyalty account for a buyer. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.SearchLoyaltyAccounts - -
- - -Search for loyalty accounts by phone number or customer ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveLoyaltyAccount - -
- - -Retrieve details of a specific loyalty account. - -**Parameters** - -- **loyalty_account_id** (`string`, required) The unique identifier of the loyalty account to retrieve. - - -## SquareupApi.AccumulateLoyaltyPoints - -
- - -Add points to a loyalty account for a purchase. - -**Parameters** - -- **loyalty_account_id** (`string`, required) The unique identifier for the target loyalty account to which points will be added. -- **purchase_location_id** (`string`, required) The ID of the location where the purchase was made, necessary for loyalty point accumulation. -- **unique_request_id** (`string`, required) A unique string identifier for the `AccumulateLoyaltyPoints` request. Must be unique for each request to ensure idempotency. -- **loyalty_program_id** (`string`, optional) The ID of the loyalty program to add points to. Required to identify the correct program. -- **order_id_for_accumulation** (`string`, optional) The ID of the order for which points are accumulated. Required if using the Orders API. -- **points_to_accumulate** (`integer`, optional) Specify the number of points to add to the loyalty account from the purchase event if not using the Orders API. - - -## SquareupApi.AdjustLoyaltyPoints - -
- - -Manually adjust loyalty points for a buyer's account. - -**Parameters** - -- **loyalty_account_id** (`string`, required) The unique ID of the buyer's loyalty account to adjust. -- **points_adjustment_amount** (`integer`, required) The number of points to add or remove from the buyer's account. -- **unique_request_identifier** (`string`, required) A unique string to identify this loyalty points adjustment request. Must be unique for each request to prevent duplicates. -- **adjustment_reason** (`string`, optional) The reason for adjusting the loyalty points, such as 'customer courtesy' or 'error correction'. -- **allow_negative_balance** (`boolean`, optional) Set to true to allow a negative balance after point subtraction. Defaults to false if not specified. -- **loyalty_program_id** (`string`, optional) The Square-assigned ID of the loyalty program to adjust points for. - - -## SquareupApi.SearchLoyaltyEvents - -
- - -Retrieve and search for Square loyalty events. - -**Parameters** - -- **end_time** (`string`, optional) Datetime in RFC 3339 format indicating when the time range ends for the search. -- **location_ids_for_events_query** (`array[string]`, optional) List of Location IDs for querying loyalty events. Multiple IDs use OR logic. -- **loyalty_account_id** (`string`, optional) The ID of the loyalty account associated with the events to filter. -- **loyalty_event_types** (`array[string]`, optional) Array of loyalty event types to filter results. Multiple values are combined using OR logic. Refer to LoyaltyEventType for options. -- **max_results_count** (`integer`, optional) The maximum number of loyalty events to include in the response. Defaults to 30. -- **order_id_filter** (`string`, optional) The ID of the order associated with the event to filter results. -- **pagination_cursor** (`string`, optional) Provide a pagination cursor to retrieve the next set of results from a previous query. -- **start_datetime** (`string`, optional) A datetime value in RFC 3339 format indicating when the time range starts for the search query. - - -## SquareupApi.GetLoyaltyProgram - -
- - -Retrieve the loyalty program details for a seller. - -**Parameters** - -- **loyalty_program_identifier** (`string`, required) The ID of the loyalty program or the keyword 'main'. Use to retrieve the loyalty program of a seller. - - -## SquareupApi.CalculateLoyaltyPoints - -
- - -Calculate loyalty points a buyer can earn from a purchase. - -**Parameters** - -- **loyalty_program_id** (`string`, required) The ID of the loyalty program, defining the rules for accruing points. -- **currency_code** (`string`, optional) Indicates the associated currency for an amount of money using ISO 4217 codes. For example, 'USD' for United States Dollar. -- **loyalty_account_id** (`string`, optional) The ID of the target loyalty account. Optionally specify if using the Orders API. Determines promotion point eligibility based on trigger limits. -- **order_id** (`string`, optional) The Order ID used to calculate points. Provide this if using the Orders API. Otherwise, use transaction_amount_money. -- **transaction_amount_in_smallest_denomination** (`integer`, optional) The amount of money for the transaction, given in the smallest denomination of the currency (e.g., cents for USD). - - -## SquareupApi.ListLoyaltyPromotions - -
- - -Retrieve promotions from a specific loyalty program. - -**Parameters** - -- **loyalty_program_id** (`string`, required) The ID of the loyalty program to list promotions for. Obtain via `RetrieveLoyaltyProgram` using `main`. -- **max_results_per_page** (`integer`, optional) Specify the maximum number of promotions to return in a single response. Must be between 1 and 30, defaults to 30. -- **pagination_cursor** (`string`, optional) The cursor for retrieving the next page of results from the previous call. -- **promotion_status_filter** (`string`, optional) Specify the status to filter loyalty promotions. Options include ACTIVE, ENDED, CANCELED, SCHEDULED. Returns promotions with the specified status. - - -## SquareupApi.CreateLoyaltyPromotion - -
- - -Create a new loyalty promotion for a program. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **loyalty_program_id** (`string`, optional) The ID of the loyalty program to associate with the promotion. Use the RetrieveLoyaltyProgram endpoint with the 'main' keyword to obtain it. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveLoyaltyPromotion - -
- - -Retrieve details of a specific loyalty promotion. - -**Parameters** - -- **loyalty_program_id** (`string`, required) The ID of the base loyalty program. Obtain this by calling the RetrieveLoyaltyProgram API using the 'main' keyword. -- **promotion_id** (`string`, required) The ID of the loyalty promotion to retrieve. This ID is necessary to specify which promotion details to access. - - -## SquareupApi.CancelLoyaltyPromotion - -
- - -Cancels an active or scheduled loyalty promotion early. - -**Parameters** - -- **loyalty_program_id** (`string`, required) The unique ID of the base loyalty program to identify which program the promotion is associated with. -- **loyalty_promotion_id** (`string`, required) The ID of the loyalty promotion to cancel, which can be 'ACTIVE' or 'SCHEDULED'. - - -## SquareupApi.CreateLoyaltyReward - -
- - -Create a loyalty reward by locking points for a customer. - -**Parameters** - -- **loyalty_account_id** (`string`, required) The Square-assigned ID of the loyalty account to which the reward belongs. -- **reward_tier_id** (`string`, required) The Square-assigned ID of the reward tier used to create the loyalty reward. -- **unique_request_key** (`string`, required) A unique string that identifies this CreateLoyaltyReward request. Must be unique for each request to prevent duplication. -- **loyalty_reward_id** (`string`, optional) The Square-assigned ID of the loyalty reward to be created or referenced. -- **loyalty_reward_status** (`string`, optional) The status of the loyalty reward. Possible values: 'ISSUED', 'REDEEMED', 'DELETED'. -- **number_of_loyalty_points** (`integer`, optional) The number of loyalty points to use for creating the reward. -- **order_id** (`string`, optional) The Square-assigned ID of the order to which the reward is attached. Optional if no order is involved. -- **reward_creation_timestamp** (`string`, optional) The timestamp when the reward was created, in RFC 3339 format. This indicates the date and time of reward creation. -- **reward_last_updated_timestamp** (`string`, optional) The timestamp when the reward was last updated, in RFC 3339 format. -- **reward_redeemed_timestamp** (`string`, optional) The timestamp when the reward was redeemed, in RFC 3339 format. This value indicates the moment the reward was used. - - -## SquareupApi.SearchLoyaltyRewards - -
- - -Search for loyalty rewards with optional filters. - -**Parameters** - -- **loyalty_account_id** (`string`, optional) The ID of the loyalty account to which the loyalty reward belongs. Required if using a query object. -- **maximum_results** (`integer`, optional) The maximum number of loyalty reward results to return. Default is 30. -- **pagination_cursor** (`string`, optional) A cursor for pagination to retrieve the next set of results from a previous call. -- **reward_status** (`string`, optional) The status of the loyalty reward. Options: ISSUED, REDEEMED, DELETED. - - -## SquareupApi.DeleteLoyaltyReward - -
- - -Deletes a loyalty reward and restores points to the account. - -**Parameters** - -- **loyalty_reward_id** (`string`, required) The ID of the loyalty reward to delete, returning points to the account. Cannot delete redeemed rewards. - - -## SquareupApi.GetLoyaltyReward - -
- - -Retrieve details of a specific loyalty reward. - -**Parameters** - -- **loyalty_reward_id** (`string`, required) The ID of the loyalty reward to retrieve. This is required to fetch details about a specific reward for a customer. - - -## SquareupApi.RedeemLoyaltyReward - -
- - -Redeem a loyalty reward for a customer purchase. - -**Parameters** - -- **idempotency_key** (`string`, required) A unique string to identify this `RedeemLoyaltyReward` request, ensuring uniqueness for each request. -- **location_id** (`string`, required) The ID of the location where the loyalty reward is redeemed. -- **loyalty_reward_id** (`string`, required) The unique ID of the loyalty reward to redeem. Required for specifying which reward to process. - - -## SquareupApi.GetMerchantDetails - -
- - -Retrieve details about a specific merchant. - -**Parameters** - -- **previous_response_cursor** (`integer`, optional) The cursor generated by the previous response for fetching subsequent pages. - - -## SquareupApi.ListMerchantCustomAttributeDefinitions - -
- - -Retrieve merchant custom attribute definitions. - -**Parameters** - -- **max_results_per_page** (`integer`, optional) The maximum number of results to return in a single response, ranging from 1 to 100. Default is 20. -- **pagination_cursor** (`string`, optional) The cursor for retrieving the next page of results from a previous response. -- **visibility_filter_option** (`string`, optional) Specify the visibility level of the CustomAttributeDefinition results. Options: ALL, READ, READ_WRITE. - - -## SquareupApi.CreateMerchantCustomAttribute - -
- - -Create a custom attribute for a Square merchant account. - -**Parameters** - -- **attribute_visibility_level** (`string`, optional) Specify the permission level required to view and edit the custom attribute: VISIBILITY_HIDDEN, VISIBILITY_READ_ONLY, or VISIBILITY_READ_WRITE_VALUES. -- **creation_timestamp** (`string`, optional) The creation timestamp of the custom attribute definition in RFC 3339 format. -- **custom_attribute_definition_description** (`string`, optional) The seller-oriented description for the custom attribute definition, including any constraints to observe. Required if visibility is 'VISIBILITY_READ_ONLY' or 'VISIBILITY_READ_WRITE_VALUES'. -- **custom_attribute_definition_version** (`integer`, optional) Read-only version of the custom attribute definition, required for updates to ensure optimistic concurrency control. -- **custom_attribute_json_schema** (`json`, optional) The JSON schema for the custom attribute definition, which determines the data type of the corresponding custom attributes. Required for creation. -- **custom_attribute_key** (`string`, optional) The unique identifier for the custom attribute. Format: application_id:simple_key. Up to 60 characters, including '.', '_', '-'. Must be unique per application, seller, and resource type. -- **custom_attribute_name** (`string`, optional) The name of the custom attribute definition. It must be unique within the seller/application pair and is required if visibility is set to read-only or read-write. -- **idempotency_key** (`string`, optional) A unique string identifier for the request to ensure it can be retried safely without duplication. Useful in scenarios with network issues or retries. -- **updated_timestamp** (`string`, optional) The timestamp of the last update or creation of the custom attribute definition, in RFC 3339 format. - - -## SquareupApi.DeleteMerchantCustomAttribute - -
- - -Delete a custom attribute definition for a Square merchant. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute definition to be deleted from the Square account. - - -## SquareupApi.GetMerchantCustomAttributeDefinition - -
- - -Retrieves custom attribute definition for a Square seller account. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute definition to retrieve. Use the qualified key if not the definition owner. -- **custom_attribute_version** (`integer`, optional) Specifies the current version of the custom attribute definition for retrieving the most up-to-date data. If the specified version is higher than the current, a 'BAD_REQUEST' error is returned. - - -## SquareupApi.UpdateMerchantCustomAttributeDefinition - -
- - -Updates a merchant's custom attribute definition. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute definition to update. A string value that identifies the specific custom attribute definition. -- **creation_timestamp** (`string`, optional) The timestamp indicating when the custom attribute definition was created, in RFC 3339 format. -- **current_definition_version** (`integer`, optional) Specify the current version of the custom attribute definition to ensure optimistic concurrency. Must match the latest version as stale versions are rejected. -- **custom_attribute_definition_identifier** (`string`, optional) The identifier for the custom attribute definition. It may be a simple key or a qualified key formatted as application_id:simple_key with up to 60 alphanumeric characters, periods, underscores, and hyphens. -- **custom_attribute_definition_name** (`string`, optional) The unique name for the custom attribute definition, required if the visibility is 'VISIBILITY_READ_ONLY' or 'VISIBILITY_READ_WRITE_VALUES'. -- **custom_attribute_description** (`string`, optional) A seller-oriented description for the custom attribute definition, detailing any constraints. Required for certain visibility settings. -- **custom_attribute_json_schema** (`json`, optional) The JSON schema defining data type and structure for the custom attribute definition. Necessary when creating a definition. -- **custom_attribute_visibility** (`string`, optional) The permission level required to view this custom attribute definition. Options: 'VISIBILITY_HIDDEN', 'VISIBILITY_READ_ONLY', 'VISIBILITY_READ_WRITE_VALUES'. -- **idempotency_key** (`string`, optional) A unique identifier for the request to ensure idempotency. It prevents duplicate processing. -- **last_updated_timestamp** (`string`, optional) The timestamp of the last update to the custom attribute definition in RFC 3339 format. - - -## SquareupApi.BulkDeleteMerchantCustomAttributes - -
- - -Bulk delete custom attributes for a merchant. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.UpsertMerchantCustomAttributesBulk - -
- - -Bulk creates or updates custom attributes for a merchant. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveMerchantInfo - -
- - -Retrieve merchant details using their ID. - -**Parameters** - -- **merchant_id** (`string`, required) The ID of the merchant to retrieve. Use 'me' to get the merchant accessible to this call. - - -## SquareupApi.ListMerchantCustomAttributes - -
- - -Retrieve custom attributes for a specified merchant. - -**Parameters** - -- **merchant_identifier** (`string`, required) The unique identifier for the target merchant whose custom attributes are to be listed. -- **filter_custom_attribute_visibility** (`string`, optional) Filters custom attribute definition results by visibility values. Valid options are 'ALL', 'READ', or 'READ_WRITE'. -- **include_custom_attribute_definitions** (`boolean`, optional) Set to true to include custom attribute definitions, providing details like name, description, and data type. -- **maximum_results_limit** (`integer`, optional) The maximum number of results to return in a single response. Minimum is 1, maximum is 100, defaults to 20. -- **paging_cursor** (`string`, optional) The cursor from the previous paged response to retrieve the next set of results. - - -## SquareupApi.RemoveMerchantAttribute - -
- - -Delete a custom attribute from a merchant. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute to delete. Use the qualified key if the attribute is owned by another application. -- **merchant_id** (`string`, required) The unique identifier of the merchant whose custom attribute is being deleted. - - -## SquareupApi.RetrieveMerchantCustomAttribute - -
- - -Retrieve a custom attribute associated with a merchant. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute to retrieve, matching the `key` of a custom attribute definition in the Square seller account. -- **merchant_identifier** (`string`, required) The unique identifier of the target merchant to retrieve the custom attribute for. -- **custom_attribute_version** (`integer`, optional) Integer value representing the custom attribute's current version for consistent reads. If specified version exceeds current, an error is returned. -- **include_custom_attribute_definition** (`boolean`, optional) Set to true to return the custom attribute definition, including name, description, and data type. Defaults to false. - - -## SquareupApi.UpsertMerchantCustomAttribute - -
- - -Create or update a custom attribute for a merchant. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **merchant_id** (`string`, optional) The unique ID of the target merchant for whom the custom attribute is being created or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_attribute_key** (`string`, optional) The key of the custom attribute to create or update. This key must match the key of a custom attribute definition in the Square seller account. If the requester is not the definition owner, use the qualified key. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveLocationSettings - -
- - -Retrieve settings for a Square-hosted checkout page location. - -**Parameters** - -- **location_id** (`string`, required) The unique ID of the location for which to retrieve the checkout page settings. - - -## SquareupApi.UpdateCheckoutLocationSettings - -
- - -Update location settings for a Square-hosted checkout page. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **location_id** (`string`, optional) The unique identifier of the location to update settings for the Square-hosted checkout page. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveSquareMerchantSettings - -
- - -Retrieve Square merchant settings for checkout pages. - -**Parameters** - -This tool does not take any parameters. - -## SquareupApi.UpdateMerchantSettings - -
- - -Updates Square-hosted checkout page settings for a merchant. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListPaymentLinks - -
- - -Lists all online payment links for Squareup. - -**Parameters** - -- **pagination_cursor** (`string`, optional) A pagination cursor from a previous call to fetch the next set of results. If not provided, returns the first page. -- **results_per_page_limit** (`integer`, optional) Advisory limit on number of results per page. Ignored if negative, zero, or over 1000. Defaults to 100. - - -## SquareupApi.CreatePaymentLink - -
- - -Create a Square-hosted checkout page for payments. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.DeletePaymentLink - -
- - -Deletes a specified payment link. - -**Parameters** - -- **payment_link_id** (`string`, required) The unique identifier of the payment link to delete. This ID specifies which payment link should be removed. - - -## SquareupApi.RetrievePaymentLink - -
- - -Retrieve a payment link using its ID. - -**Parameters** - -- **payment_link_id** (`string`, required) The unique ID of the payment link to retrieve. - - -## SquareupApi.UpdatePaymentLink - -
- - -Update details of an existing payment link. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **payment_link_id** (`string`, optional) The unique identifier of the payment link to update. Required to specify which link will be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.CreateOrderForPurchase - -
- - -Creates a new order for purchase with product details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveMultipleOrders - -
- - -Retrieve multiple orders using their IDs. - -**Parameters** - -- **order_ids_list** (`array[string]`, required) An array of order IDs to retrieve, with a maximum of 100 per request. -- **location_id** (`string`, optional) Optional location ID for the orders. Omit to use the current merchant's ID. - - -## SquareupApi.PreviewOrderPricing - -
- - -Preview order pricing without creating an order. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.CloneOrderDraft - -
- - -Clone an existing order as a draft. - -**Parameters** - -- **order_id_to_clone** (`string`, required) The ID of the order you want to clone. -- **clone_request_idempotency_key** (`string`, optional) A unique string to identify the clone request. Allows safe retries without duplicating cloned orders. -- **order_version** (`integer`, optional) An optional integer specifying the order version for concurrency protection. If omitted, the latest version is used. - - -## SquareupApi.ListOrderCustomAttributeDefinitions - -
- - -Retrieve order-related custom attribute definitions for a Square seller. - -**Parameters** - -- **custom_attribute_visibility_filter** (`string`, optional) Specify whether to return all custom attributes, or only those that are read-only ('READ') or read-write ('READ_WRITE'). Valid options are 'ALL', 'READ', or 'READ_WRITE'. -- **maximum_results_per_page** (`integer`, optional) The maximum number of results to return in a single response. Accepts values 1 to 100, default is 20. -- **pagination_cursor** (`string`, optional) The cursor for fetching the next page of results in a multi-page response. It should be used as returned from a previous call. - - -## SquareupApi.CreateOrderCustomAttribute - -
- - -Define a custom attribute for Square orders. - -**Parameters** - -- **creation_timestamp** (`string`, optional) The timestamp indicating when the custom attribute definition was created, in RFC 3339 format. -- **current_version_of_custom_attribute_definition** (`integer`, optional) Read-only. Specifies the current version of the custom attribute definition for optimistic concurrency and consistency. -- **custom_attribute_definition_key** (`string`, optional) A unique identifier for the custom attribute definition. Can be a simple or qualified key. Must be unique per application, seller, and resource type. Cannot exceed 60 characters. -- **custom_attribute_definition_name** (`string`, optional) The name for the custom attribute definition, unique within the seller and application. Required if visibility is read-only or read-write. -- **custom_attribute_description** (`string`, optional) Provide a detailed seller-oriented description for the custom attribute definition. Required if visibility is 'READ_ONLY' or 'READ_WRITE_VALUES'. -- **custom_attribute_schema** (`json`, optional) The JSON schema defining the data type of the custom attribute. Required when creating a definition. -- **custom_attribute_visibility** (`string`, optional) Specifies who can read and write the custom attribute values. Options are: 'VISIBILITY_HIDDEN', 'VISIBILITY_READ_ONLY', 'VISIBILITY_READ_WRITE_VALUES'. -- **unique_request_id** (`string`, optional) A unique identifier for this request to ensure idempotency. Use a UUID or similar unique string. -- **updated_timestamp** (`string`, optional) The timestamp in RFC 3339 format indicating when the custom attribute definition was last updated or created. - - -## SquareupApi.DeleteOrderCustomAttributeDefinition - -
- - -Delete a custom attribute definition from an order. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute definition to delete from an order. - - -## SquareupApi.RetrieveOrderCustomAttributeDefinition - -
- - -Retrieve a custom attribute definition for an order. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute definition you want to retrieve. This should match the key set in Square seller account. -- **current_custom_attribute_version** (`integer`, optional) Specify the current version of the custom attribute for optimistic concurrency control. - - -## SquareupApi.UpdateOrderCustomAttributeDefinition - -
- - -Modify order-related custom attribute definitions. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key for the custom attribute definition to update. Must be unique per application, seller, and resource type. -- **creation_timestamp** (`string`, optional) The timestamp indicating when the custom attribute definition was created, in RFC 3339 format. This field is read-only and used for informational purposes. -- **current_version_of_custom_attribute_definition** (`integer`, optional) The current version of the custom attribute definition. Provide this to enable optimistic concurrency. -- **custom_attribute_definition_key** (`string`, optional) The identifier of the custom attribute definition. Can be a simple or qualified key. Must be unique per application, seller, and resource type. -- **custom_attribute_description** (`string`, optional) Description for the custom attribute definition, viewable as a Square UI tooltip. Required if visibility is READ_ONLY or READ_WRITE_VALUES. -- **custom_attribute_name** (`string`, optional) The unique name for the custom attribute definition within the seller and application pair. Required if visibility is `VISIBILITY_READ_ONLY` or `VISIBILITY_READ_WRITE_VALUES`. -- **custom_attribute_schema** (`json`, optional) Provide the JSON schema for the custom attribute definition, determining the data type of associated attributes. This is mandatory when creating a definition. -- **custom_attribute_updated_timestamp** (`string`, optional) The timestamp in RFC 3339 format showing when the custom attribute definition was created or last updated. -- **custom_attribute_visibility** (`string`, optional) Sets the visibility level for the custom attribute definition. Options: 'VISIBILITY_HIDDEN', 'VISIBILITY_READ_ONLY', 'VISIBILITY_READ_WRITE_VALUES'. -- **idempotency_identifier** (`string`, optional) A unique string identifier for the request to ensure idempotency. Refer to Square's idempotency guidelines for more details. - - -## SquareupApi.BulkDeleteOrderCustomAttributes - -
- - -Perform bulk deletion of custom attributes from orders. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.BulkUpsertOrderCustomAttributes - -
- - -Perform bulk create or update of order custom attributes. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.SearchSquareOrders - -
- - -Search and retrieve orders from Square locations. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveOrderById - -
- - -Retrieve an order's details using its ID. - -**Parameters** - -- **order_id** (`string`, required) The unique identifier of the order to retrieve from the Square API. - - -## SquareupApi.UpdateOrderSquare - -
- - -Update fields of an open Square order. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **order_id** (`string`, optional) The unique identifier for the order that needs to be updated. This ID specifies which order will have its fields modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListOrderCustomAttributes - -
- - -Retrieve custom attributes associated with an order. - -**Parameters** - -- **target_order_id** (`string`, required) The unique identifier of the target order to retrieve custom attributes for. -- **custom_attributes_visibility** (`string`, optional) Specify which custom attributes to return: 'ALL', 'READ', or 'READ_WRITE'. -- **include_custom_attribute_definitions** (`boolean`, optional) Set to true to include custom attribute definition details such as name, description, and data type. Defaults to false. -- **max_results_per_page** (`integer`, optional) Specifies the maximum number of custom attribute results returned per page. Accepts values from 1 to 100, default is 20. -- **pagination_cursor** (`string`, optional) The cursor used to retrieve the next page of results in a paginated response. - - -## SquareupApi.DeleteOrderCustomAttribute - -
- - -Delete a custom attribute from an order profile. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key of the custom attribute to delete. Must match an existing custom attribute definition key. -- **order_id** (`string`, required) The unique identifier of the order from which the custom attribute will be deleted. - - -## SquareupApi.RetrieveOrderCustomAttribute - -
- - -Retrieve a custom attribute for a specified order. - -**Parameters** - -- **custom_attribute_key** (`string`, required) The key for the custom attribute to retrieve, matching an existing attribute definition key. -- **order_id** (`string`, required) The unique ID of the target order to retrieve the custom attribute for. -- **custom_attribute_version** (`integer`, optional) Specify the current version of the custom attribute for optimistic concurrency control. -- **include_custom_attribute_definition** (`boolean`, optional) Set to true to include custom attribute definition details such as name, description, and data type. Defaults to false. - - -## SquareupApi.UpdateOrderCustomAttribute - -
- - -Create or update a custom attribute for an order. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **order_id** (`string`, optional) The ID of the target order for which the custom attribute is being created or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_attribute_key** (`string`, optional) The key of the custom attribute to be created or updated. Must match an existing custom attribute definition key. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.PayOrder - -
- - -Settle an order using approved payments. - -**Parameters** - -- **order_id** (`string`, required) The unique identifier of the order to be paid. -- **unique_transaction_identifier** (`string`, required) A unique string to identify the request and ensure the prevention of duplicate payments. Reuse the same key for retrying the same request. -- **order_version** (`integer`, optional) Specify the version of the order to be paid. Defaults to latest if not provided. -- **payment_ids_to_collect** (`array[string]`, optional) Array of payment IDs to collect; total must match the order total. - - -## SquareupApi.RetrievePaymentsList - -
- - -Retrieve a list of payments from your account. - -**Parameters** - -- **card_last_four_digits** (`string`, optional) Filter payments by the last four digits of the payment card used. -- **end_time** (`string`, optional) End of the time range for retrieving payments, in RFC 3339 format. Defaults to the current time. -- **end_time_updated_for_payments** (`string`, optional) The end time for retrieving payments, in RFC 3339 format, based on `updated_at`. -- **is_offline_payment** (`boolean`, optional) Set to true to include offline payments, or false to exclude them. -- **max_results_per_page** (`integer`, optional) The maximum number of payment results to return per page (up to 100). Defaults to 100 if more is specified. -- **offline_end_time** (`string`, optional) The end time in RFC 3339 format for retrieving offline payments, based on the `offline_payment_details.client_created_at` field. Default is the current time. -- **offline_payment_start_time** (`string`, optional) Start of the time range for retrieving offline payments in RFC 3339 format. Uses 'offline_payment_details.client_created_at'. -- **pagination_cursor** (`string`, optional) A pagination cursor for fetching the next set of payment results from the ListPayments endpoint. -- **payment_card_brand** (`string`, optional) The brand of the payment card to filter payments (e.g., VISA, MasterCard). -- **results_sort_order** (`string`, optional) Specify the order of the results: `ASC` for oldest to newest, `DESC` for newest to oldest (default). -- **sort_by_field** (`string`, optional) Choose the field to sort results by. Options: `CREATED_AT`, `OFFLINE_CREATED_AT`, `UPDATED_AT`. Default is `CREATED_AT`. -- **specific_location_id** (`string`, optional) Limit results to the specified location ID. Defaults to the main location associated with the seller. -- **start_time_range** (`string`, optional) Start time to retrieve payments, in RFC 3339 format. Defaults to one year ago if not specified. -- **total_payment_amount** (`integer`, optional) The exact amount in the total_money field for a payment. Use an integer to specify the amount in cents. -- **updated_at_start_time** (`string`, optional) Start of the time range for retrieving payments based on the `updated_at` field, in RFC 3339 format. - - -## SquareupApi.CreatePayment - -
- - -Create a payment using credit/debit card or other sources. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.CancelPaymentByIdempotency - -
- - -Cancel a payment by idempotency key when status is unknown. - -**Parameters** - -- **payment_idempotency_key** (`string`, required) The idempotency key used to identify the payment to cancel. It should match the key used in the original CreatePayment request. - - -## SquareupApi.GetPaymentDetails - -
- - -Retrieve detailed information about a specific payment. - -**Parameters** - -- **payment_id** (`string`, required) Unique ID to retrieve specific payment details. - - -## SquareupApi.UpdatePaymentStatus - -
- - -Update a payment's approved status and details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **payment_identifier** (`string`, optional) The unique ID of the payment you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.CancelPayment - -
- - -Cancel or void an approved payment. - -**Parameters** - -- **payment_id_to_cancel** (`string`, required) The unique identifier of the payment to be canceled. Must have an APPROVED status. - - -## SquareupApi.CompletePayment - -
- - -Complete an approved payment using Squareup. - -**Parameters** - -- **payment_identifier** (`string`, required) The unique ID identifying the payment to be completed. This is required for completing a payment with an 'APPROVED' status. -- **current_payment_version_token** (`string`, optional) The token identifying the current Payment version for optimistic concurrency. It ensures the Payment version matches the caller's expectations to prevent mismatches. - - -## SquareupApi.ListPayouts - -
- - -Retrieve a list of payouts for the default location. - -**Parameters** - -- **begin_timestamp** (`string`, optional) The starting timestamp for the payout creation time, in RFC 3339 format. Defaults to one year ago if not provided. -- **end_time_rfc3339** (`string`, optional) RFC 3339 timestamp marking the end of the payout creation time. Defaults to current time if not specified. -- **filter_payout_status** (`string`, optional) If provided, only payouts with the specified status ('SENT', 'FAILED', 'PAID') are returned. -- **location_identifier** (`string`, optional) The ID of the location for which to list the payouts. Defaults to the main location associated with the seller if not specified. -- **pagination_cursor** (`string`, optional) A cursor for pagination, returned by a previous call. Use it to retrieve the next set of results. Be aware of changes in request parameters between calls. -- **payout_sort_order** (`string`, optional) Specifies the order for listing payouts. Use 'DESC' for descending or 'ASC' for ascending order. -- **results_per_page** (`integer`, optional) Maximum number of results per page. Defaults to 100 and cannot exceed 100. - - -## SquareupApi.GetPayoutDetails - -
- - -Retrieve details of a specific payout using payout ID. - -**Parameters** - -- **payout_id** (`string`, required) The unique identifier of the payout to retrieve details for. This ID is required to fetch the specific payout information. - - -## SquareupApi.ListPayoutEntries - -
- - -Retrieve all payout entries for a specific payout. - -**Parameters** - -- **payout_id** (`string`, required) The unique string identifier for the specific payout to retrieve information for. -- **maximum_results_per_page** (`integer`, optional) Specifies the maximum number of results to return on a single page (max 100). Default is 100. -- **pagination_cursor** (`string`, optional) A cursor to retrieve the next set of results in a paginated response. Use a cursor from a previous response for continuity. -- **payout_entries_sort_order** (`string`, optional) Specify the order (ASC or DESC) in which payout entries are listed. - - -## SquareupApi.ListPaymentRefunds - -
- - -Retrieve a list of payment refunds for the account. - -**Parameters** - -- **end_time_rfc3339** (`string`, optional) Specifies the end time in RFC 3339 format to retrieve `PaymentRefunds` based on `created_at`. Defaults to the current time. -- **limit_results_to_location_id** (`string`, optional) Limit results to refunds from the specified location. By default, returns all locations. -- **maximum_results_per_page** (`integer`, optional) Specifies the max number of refund results per page. Max value is 100; defaults to 100. -- **pagination_cursor** (`string`, optional) A pagination cursor from a previous response to fetch the next set of results. -- **refund_status_filter** (`string`, optional) Specify a refund status to filter the results. If omitted, refunds of all statuses are returned. -- **refunds_start_time** (`string`, optional) The start time in RFC 3339 format to retrieve PaymentRefunds based on the created_at field. Default is the current time minus one year. -- **results_sort_order** (`string`, optional) The order in which results are listed by their creation date: `ASC` for oldest to newest, `DESC` for newest to oldest (default). -- **sort_results_by_field** (`string`, optional) The field used to sort payment refund results. Options: 'CREATED_AT' (default) or 'UPDATED_AT'. -- **source_payment_type** (`string`, optional) Specify to only return refunds for payments with the indicated source type (e.g., CARD, BANK_ACCOUNT). -- **updated_at_end_time** (`string`, optional) The end of the time range for retrieving refunds, in RFC 3339 format. Default is the current time. -- **updated_at_start_time** (`string`, optional) Start of time range for retrieving each PaymentRefund, in RFC 3339 format. Defaults to begin_time if omitted. - - -## SquareupApi.RefundPayment - -
- - -Refund a payment partially or fully using Square. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveRefundDetails - -
- - -Retrieve details of a specific refund using the refund ID. - -**Parameters** - -- **refund_unique_id** (`string`, required) The unique ID for the specific refund to retrieve details for. - - -## SquareupApi.ListSquareOnlineSites - -
- - -List all Square Online sites for a seller. - -**Parameters** - -This tool does not take any parameters. - -## SquareupApi.DeleteSquareSnippet - -
- - -Delete a snippet from a Square Online site. - -**Parameters** - -- **site_id** (`string`, required) The ID of the Square Online site containing the snippet to be deleted. - - -## SquareupApi.RetrieveOnlineSiteSnippet - -
- - -Retrieve a specific snippet from a Square Online site. - -**Parameters** - -- **site_identifier** (`string`, required) The unique ID of the Square Online site containing the snippet to retrieve. - - -## SquareupApi.AddOrUpdateSquareOnlineSnippet - -
- - -Add or update a snippet on a Square Online site. - -**Parameters** - -- **site_id_for_snippet** (`string`, required) The ID of the site where you want to add or update the snippet. Obtained through ListSites function. -- **snippet_code_content** (`string`, required) The code snippet to add or update, which can include valid HTML, JavaScript, or both. This will be appended to the head element of all site pages except checkout pages. -- **snippet_id** (`string`, optional) The Square-assigned ID for the snippet to add or update. -- **snippet_initial_creation_timestamp** (`string`, optional) The timestamp indicating when the snippet was initially added to the site, in RFC 3339 format. -- **snippet_last_updated_timestamp** (`string`, optional) The timestamp for when the snippet was last updated on the site, in RFC 3339 format. -- **snippet_site_id** (`string`, optional) The ID of the site that contains the snippet to be updated or added. - - -## SquareupApi.CreateCustomerSubscription - -
- - -Enroll a customer in a subscription plan. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.BulkSwapSubscriptionPlan - -
- - -Schedule a plan variation swap for multiple subscriptions. - -**Parameters** - -- **location_id_association** (`string`, required) The ID of the location to associate with the swapped subscriptions. This specifies where the subscription changes are applied. -- **new_plan_variation_id** (`string`, required) The ID of the new subscription plan variation for the swap. This field is required. -- **old_plan_variation_id** (`string`, required) The ID of the current plan variation to swap. Active subscriptions using this plan will switch to the new variation on their next billing day. - - -## SquareupApi.SearchSubscriptions - -
- - -Search for subscriptions by location and customer IDs. - -**Parameters** - -- **customer_ids_to_filter** (`array[string]`, optional) A list of customer IDs to filter subscriptions by. Leave empty to include all customers. -- **filter_by_location_ids** (`array[string]`, optional) An array of location IDs to filter subscriptions by location. -- **filter_by_source_applications** (`array[string]`, optional) A list of source application names to filter subscriptions by. -- **include_related_info** (`array[string]`, optional) Specify related information to include in the response, such as 'actions' for scheduled actions on subscriptions. -- **max_subscriptions_returned** (`integer`, optional) Defines the maximum number of subscriptions to return in a single response. -- **pagination_cursor** (`string`, optional) Cursor for fetching the next set of subscription results if previous results exceeded the limit. If not set, returns the last page of results. - - -## SquareupApi.RetrieveSubscriptionDetails - -
- - -Retrieve details of a specific subscription using its ID. - -**Parameters** - -- **subscription_id** (`string`, required) The unique ID of the subscription to retrieve details for. Necessary to specify which subscription to access. -- **include_related_info** (`string`, optional) Specify related info to include in the response. Use 'actions' to include scheduled actions on the subscription. - - -## SquareupApi.UpdateSubscription - -
- - -Update subscription details with new or cleared values. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **subscription_id** (`string`, optional) The unique identifier of the subscription you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.DeleteSubscriptionAction - -
- - -Delete a scheduled action for a subscription. - -**Parameters** - -- **subscription_id** (`string`, required) The ID of the subscription for which the action is to be deleted. Provide the correct subscription ID to ensure accurate targeting. -- **targeted_action_id** (`string`, required) The ID of the specific action to be deleted from the subscription. - - -## SquareupApi.ChangeBillingAnchorDate - -
- - -Change the billing anchor date for a subscription. - -**Parameters** - -- **subscription_id** (`string`, required) The ID of the subscription for which the billing anchor date will be updated. -- **billing_anchor_day** (`integer`, optional) The day (1-31) of the month to set as the billing anchor for the cycle. -- **scheduled_billing_anchor_change_date** (`string`, optional) The `YYYY-MM-DD`-formatted date when the `BILLING_ANCHOR_CHANGE` action occurs. If unspecified or within current billing cycle, change is immediate. - - -## SquareupApi.CancelSubscription - -
- - -Cancel an active subscription at the end of the billing period. - -**Parameters** - -- **subscription_id** (`string`, required) The unique ID of the subscription to be canceled. Required for scheduling the cancellation action. - - -## SquareupApi.ListSubscriptionEvents - -
- - -Retrieve all events for a specific subscription. - -**Parameters** - -- **subscription_id** (`string`, required) The unique identifier for the subscription whose events are to be retrieved. -- **event_limit** (`integer`, optional) The maximum number of subscription events to retrieve in the response. -- **pagination_cursor** (`string`, optional) Specify the cursor from a previous response to fetch the next page of subscription events. Leave unset to get the last page. - - -## SquareupApi.PauseSubscription - -
- - -Schedule a pause for an active subscription. - -**Parameters** - -- **subscription_id** (`string`, required) The unique ID of the subscription you want to pause. -- **pause_cycle_count** (`integer`, optional) Specify the number of billing cycles to pause the subscription. A 'RESUME' action will be scheduled at the end of this period. Do not set 'resume_effective_date' or 'resume_change_timing' if this is used. -- **pause_effective_date** (`string`, optional) The `YYYY-MM-DD`-formatted date when the scheduled `PAUSE` action occurs. If unspecified or within the current billing cycle, the subscription pauses at the start of the next cycle. -- **pause_reason** (`string`, optional) The reason provided by the user for pausing the subscription. It should convey the rationale behind the pause action. -- **reactivation_date** (`string`, optional) The date (YYYY-MM-DD) when the subscription is reactivated by a scheduled `RESUME` action. Must be at least one billing cycle after `pause_effective_date`. -- **resume_change_timing** (`string`, optional) Specifies when the subscription resume action takes place. Options are 'IMMEDIATE' or 'END_OF_BILLING_CYCLE'. - - -## SquareupApi.ResumeSubscription - -
- - -Resume a paused or deactivated subscription. - -**Parameters** - -- **subscription_id** (`string`, required) The ID of the subscription to resume. Provide a valid subscription ID string. -- **resume_change_timing** (`string`, optional) Specify when the pending change to resume the subscription takes effect. Choose between 'IMMEDIATE' or 'END_OF_BILLING_CYCLE'. -- **subscription_resume_effective_date** (`string`, optional) The `YYYY-MM-DD`-formatted date when the subscription is reactivated. - - -## SquareupApi.SwapSubscriptionPlan - -
- - -Swap a subscription plan variation for an existing subscription. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **subscription_id** (`string`, optional) The ID of the subscription to swap the plan for. This is required to identify which subscription will have its plan changed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.CreateTeamMember - -
- - -Create a new team member with given and family names. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.BulkCreateTeamMembers - -
- - -Create multiple team members in bulk. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.BulkUpdateTeamMembers - -
- - -Update multiple team members in bulk. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListJobs - -
- - -Retrieve jobs from a seller's account, sorted by title. - -**Parameters** - -- **pagination_cursor** (`string`, optional) The pagination cursor for retrieving the next page of results. Use the cursor from the previous call to continue fetching. - - -## SquareupApi.CreateJobInSellerAccount - -
- - -Create a job for a seller account. - -**Parameters** - -- **unique_creation_request_id** (`string`, required) A unique string to identify the `CreateJob` request, ensuring it is not processed multiple times. -- **is_tip_eligible** (`boolean`, optional) Indicates whether team members can earn tips for the job. Accepts a boolean value. -- **job_creation_timestamp** (`string`, optional) The timestamp for when the job was created, in RFC 3339 format. -- **job_id** (`string`, optional) Unique Square-assigned job ID. This is read-only and used internally by Square. -- **job_last_updated_timestamp** (`string`, optional) The timestamp indicating when the job was last updated, in RFC 3339 format. -- **job_title** (`string`, optional) The title of the job to be created in the seller's account. -- **job_version_readonly** (`integer`, optional) Read-only field for the current version of the job, used for optimistic concurrency in `UpdateJob` requests. - - -## SquareupApi.RetrieveJobDetails - -
- - -Retrieve details of a specified job. - -**Parameters** - -- **job_identifier** (`string`, required) The unique string ID of the job to retrieve details for. - - -## SquareupApi.UpdateJobDetails - -
- - -Update job title or tip eligibility in the system. - -**Parameters** - -- **job_id_to_update** (`string`, required) The unique ID of the job to update. This specifies which job's title or tip eligibility you want to modify. -- **enable_tips_for_job** (`boolean`, optional) Set to true to allow team members to earn tips for the job, false to prevent them. -- **job_creation_timestamp** (`string`, optional) The timestamp representing when the job was created, formatted in RFC 3339. -- **job_id** (`string`, optional) The unique Square-assigned ID of the job. Obtainable via ListJobs API or from team member wage settings. -- **job_last_updated_timestamp** (`string`, optional) The timestamp when the job was last updated, in RFC 3339 format. Used for optimistic concurrency control. -- **job_title** (`string`, optional) The new title of the job to update. -- **job_version_for_concurrency** (`integer`, optional) The current version of the job for optimistic concurrency control. Must match the server version to proceed with updates. - - -## SquareupApi.SearchTeamMembers - -
- - -Retrieve a filtered list of team members for a business. - -**Parameters** - -- **filter_by_location_ids** (`array[string]`, optional) Filter team members by specified location IDs. If empty, includes all locations. -- **maximum_team_members_per_page** (`integer`, optional) Specify the maximum number of team members to return per page, default is 100. -- **pagination_cursor** (`string`, optional) The cursor used to retrieve the next page of results in a paginated list. -- **return_account_owner_only** (`boolean`, optional) Set to true to return only the team member who is the Square account owner. -- **team_member_status** (`string`, optional) Filter team members by their status: 'ACTIVE' or 'INACTIVE'. - - -## SquareupApi.GetTeamMemberDetails - -
- - -Retrieve details for a specific team member by ID. - -**Parameters** - -- **team_member_id** (`string`, required) The unique identifier for the team member to retrieve their details from Squareup. - - -## SquareupApi.UpdateTeamMember - -
- - -Updates a single TeamMember object. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_member_id** (`string`, optional) The unique identifier of the team member to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveTeamMemberWageSetting - -
- - -Retrieve wage settings for a specified team member. - -**Parameters** - -- **team_member_id** (`string`, required) The unique identifier for the team member whose wage setting needs to be retrieved. - - -## SquareupApi.UpdateWageSetting - -
- - -Create or update a team member's wage setting. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **team_member_id** (`string`, optional) The unique ID of the team member whose WageSetting will be updated or created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.CreateTerminalAction - -
- - -Create and send a terminal action request to a device. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.SearchTerminalActions - -
- - -Retrieve a filtered list of terminal action requests. - -**Parameters** - -- **device_id_filter** (`string`, optional) Filter TerminalActions by a specific device ID. Leave blank to include all devices. -- **end_time_rfc3339** (`string`, optional) A datetime in RFC 3339 format indicating the end of the time range. -- **filter_terminal_action_status** (`string`, optional) Filter results by the status of the TerminalAction (e.g., `PENDING`, `IN_PROGRESS`, `CANCEL_REQUESTED`, `CANCELED`, `COMPLETED`). -- **pagination_cursor** (`string`, optional) A pagination cursor from a previous response to retrieve the next set of results. -- **result_limit** (`integer`, optional) Limit the number of results returned for a single request. -- **result_sort_order** (`string`, optional) Defines the order ('DESC' or 'ASC') for sorting the terminal action requests. -- **start_time_rfc3339** (`string`, optional) The start datetime in RFC 3339 format for filtering terminal actions. -- **terminal_action_type** (`string`, optional) Specify the type of terminal action, such as 'QR_CODE', 'PING', etc. This helps filter actions by their purpose. - - -## SquareupApi.RetrieveTerminalAction - -
- - -Retrieve a Terminal action request by action ID. - -**Parameters** - -- **terminal_action_id** (`string`, required) Unique ID for the desired Terminal Action. This is required to retrieve the specific action request. - - -## SquareupApi.CancelTerminalAction - -
- - -Cancel a terminal action request if possible. - -**Parameters** - -- **terminal_action_id** (`string`, required) Unique ID for the `TerminalAction` you want to cancel. This ID helps target the specific action to abort. - - -## SquareupApi.DismissTerminalAction - -
- - -Dismiss a Terminal action request if permitted. - -**Parameters** - -- **terminal_action_id** (`string`, required) Unique ID for the TerminalAction to be dismissed. - - -## SquareupApi.CreateTerminalCheckout - -
- - -Create a Terminal checkout request for payment. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.SearchTerminalCheckouts - -
- - -Retrieve filtered Terminal checkout requests for the merchant. - -**Parameters** - -- **checkout_status_filter** (`string`, optional) Specify the desired status to filter TerminalCheckout results. Options: PENDING, IN_PROGRESS, CANCEL_REQUESTED, CANCELED, COMPLETED. -- **device_id_filter** (`string`, optional) Filters TerminalCheckout objects associated with a specific device. Omitting this shows checkouts for all devices. -- **end_time_rfc3339** (`string`, optional) A datetime in RFC 3339 format indicating when the time range ends. -- **pagination_cursor** (`string`, optional) A pagination cursor from a previous call, used to fetch the next set of results for the same query. Useful for traversing paginated results. -- **result_limit** (`integer`, optional) Maximum number of results to return in a single request. -- **result_sort_order** (`string`, optional) Specifies the order (DESC or ASC) for results in a request, such as chronological or alphabetical. -- **start_time_range** (`string`, optional) The start datetime for the TerminalCheckout search in RFC 3339 format. - - -## SquareupApi.RetrieveTerminalCheckout - -
- - -Retrieve a Terminal checkout request by checkout ID. - -**Parameters** - -- **checkout_id** (`string`, required) The unique ID for the desired TerminalCheckout request. Use this ID to retrieve specific checkout details. - - -## SquareupApi.CancelTerminalCheckout - -
- - -Cancel a terminal checkout request if possible. - -**Parameters** - -- **terminal_checkout_id** (`string`, required) The unique ID for the desired TerminalCheckout to be canceled. - - -## SquareupApi.DismissTerminalCheckout - -
- - -Dismiss a Terminal checkout request. - -**Parameters** - -- **terminal_checkout_id** (`string`, required) Unique ID for the `TerminalCheckout` to be dismissed. - - -## SquareupApi.CreateTerminalRefund - -
- - -Creates a refund request for Interac payments on Square Terminal. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.SearchTerminalRefunds - -
- - -Retrieve a filtered list of Interac Terminal refund requests. - -**Parameters** - -- **device_id_filter** (`string`, optional) `TerminalRefund` objects associated with a specific device. If not provided, all refunds for the account are displayed. -- **end_time_range** (`string`, optional) A datetime value in RFC 3339 format indicating the end of the time range for filtering terminal refund requests. -- **filter_terminal_refund_status** (`string`, optional) Filter terminal refunds by status. Options: `PENDING`, `IN_PROGRESS`, `CANCEL_REQUESTED`, `CANCELED`, or `COMPLETED`. -- **pagination_cursor** (`string`, optional) A cursor to paginate results, used to retrieve the next set from a previous query. -- **result_limit** (`integer`, optional) Specifies the maximum number of refund results to retrieve in a single request. -- **sort_order** (`string`, optional) The order in which terminal refund results are listed. Use 'ASC' for oldest to newest or 'DESC' for newest to oldest (default). -- **start_datetime** (`string`, optional) A datetime in RFC 3339 format. Indicates when the time range starts for filtering terminal refunds. - - -## SquareupApi.GetTerminalRefund - -
- - -Retrieve details of an Interac Terminal refund by ID. - -**Parameters** - -- **terminal_refund_id** (`string`, required) The unique ID for the desired TerminalRefund. Use this ID to retrieve specific refund details available for 30 days. - - -## SquareupApi.CancelTerminalRefund - -
- - -Cancel a terminal refund request by its ID. - -**Parameters** - -- **refund_request_id** (`string`, required) The unique ID of the terminal refund request to cancel. - - -## SquareupApi.DismissTerminalRefund - -
- - -Dismiss a Terminal refund request. - -**Parameters** - -- **terminal_refund_unique_id** (`string`, required) Unique ID for the TerminalRefund associated with the refund to be dismissed. - - -## SquareupApi.CreateTransferOrder - -
- - -Create a draft transfer order between locations. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.SearchTransferOrders - -
- - -Search for transfer orders using specific filters. - -**Parameters** - -- **destination_location_ids** (`array[string]`, optional) Array of destination location IDs to filter transfer orders. -- **filter_by_order_statuses** (`array[string]`, optional) Filter transfer orders by their statuses. Accepts an array of status strings. Refer to TransferOrderStatus for valid values. -- **maximum_results** (`integer`, optional) Specify the maximum number of results to return, from 1 to 100. -- **pagination_cursor** (`string`, optional) A string token to continue a search from a previous position, enabling pagination through results. -- **sort_by_field** (`string`, optional) Specify the field to sort transfer orders. Options: CREATED_AT, UPDATED_AT. -- **sort_order** (`string`, optional) Specify the order ('DESC' or 'ASC') in which results are returned. 'DESC' for descending and 'ASC' for ascending. -- **source_location_ids** (`array[string]`, optional) Array of source location IDs to filter transfer orders by their source location. - - -## SquareupApi.DeleteDraftTransferOrder - -
- - -Delete a draft transfer order and trigger webhook event. - -**Parameters** - -- **transfer_order_id** (`string`, required) The ID of the transfer order in DRAFT status to delete. Only draft orders are eligible. -- **optimistic_concurrency_version** (`integer`, optional) Version number used for optimistic concurrency control to ensure data consistency when deleting a draft transfer order. - - -## SquareupApi.RetrieveTransferOrderDetails - -
- - -Retrieve detailed information of a specific transfer order. - -**Parameters** - -- **transfer_order_id** (`string`, required) The ID of the transfer order to retrieve, required to get order details. - - -## SquareupApi.UpdateTransferOrder - -
- - -Update specific fields of a transfer order. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **transfer_order_identifier** (`string`, optional) The unique identifier of the transfer order to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.CancelTransferOrder - -
- - -Cancel a transfer order in progress for inventory locations. - -**Parameters** - -- **transfer_order_id** (`string`, required) The ID of the transfer order to cancel. The order must be in STARTED or PARTIALLY_RECEIVED status. -- **unique_request_key** (`string`, required) A unique string to identify this request. Must be unique for each UpdateTransferOrder request. -- **transfer_order_version** (`integer`, optional) Provide the version number for optimistic concurrency when canceling the transfer order. - - -## SquareupApi.RecordTransferOrderReceipt - -
- - -Record received items for a transfer order. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **transfer_order_id** (`string`, optional) The ID of the transfer order for which items are being received. This ID is required to process the receipt of items, including partial and damaged quantities, and update inventory accordingly. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.StartTransferOrder - -
- - -Start a transfer order to mark it as in-transit. - -**Parameters** - -- **transfer_order_id** (`string`, required) The ID of the transfer order to start. Must be in DRAFT status. -- **unique_request_identifier** (`string`, required) A unique string to identify each UpdateTransferOrder request, ensuring it is not repeated for any request. -- **optimistic_concurrency_version** (`integer`, optional) Specify the version number for optimistic concurrency control. Ensure the version is current to avoid conflicts. - - -## SquareupApi.BulkCreateVendors - -
- - -Create multiple vendor profiles for suppliers. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.RetrieveVendors - -
- - -Retrieve detailed information about specific vendors. - -**Parameters** - -- **vendor_ids** (`array[string]`, optional) List of vendor IDs to retrieve details for. Provide the IDs as an array of strings. - - -## SquareupApi.BulkUpdateVendors - -
- - -Update multiple vendor records simultaneously. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.CreateVendor - -
- - -Create a vendor for a supplier to a seller. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.SearchVendors - -
- - -Search for vendors using filters and sorters. - -**Parameters** - -- **pagination_cursor** (`string`, optional) A string used to retrieve the next set of results for a previous query. Follow the pagination guide for details. -- **sort_field_for_vendors** (`string`, optional) Specify the vendor property field to sort the results by. Options include 'NAME' or 'CREATED_AT'. -- **sort_order** (`string`, optional) Specify the order (e.g., chronological or alphabetical) for sorting the results. Options are 'ASC' or 'DESC'. -- **vendor_names_to_filter** (`array[string]`, optional) Array of vendor names to filter the search results by. Only vendors matching these names will be retrieved. -- **vendor_statuses** (`array[string]`, optional) List of vendor statuses to filter the search results. Refer to possible values in VendorStatus. - - -## SquareupApi.RetrieveVendorDetails - -
- - -Retrieve detailed information about a vendor by ID. - -**Parameters** - -- **vendor_id** (`string`, required) The unique ID of the vendor to retrieve details for. - - -## SquareupApi.UpdateVendorInfo - -
- - -Update an existing vendor's information. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - - -## SquareupApi.ListWebhookEventTypes - -
- - -Retrieve all webhook event types available for subscription. - -**Parameters** - -- **api_version_for_event_types** (`string`, optional) Specify the API version to list event types, overriding the default version. - - -## SquareupApi.ListWebhookSubscriptions - -
- - -Lists all webhook subscriptions owned by the application. - -**Parameters** - -- **include_disabled_subscriptions** (`boolean`, optional) If set to true, includes disabled subscriptions in the results. By default, only enabled subscriptions are returned. -- **maximum_results_per_page** (`integer`, optional) The maximum number of results returned in one page, up to 100. -- **pagination_cursor** (`string`, optional) A cursor from a previous call for paginating results. Use it to retrieve the next set of results. -- **sort_order** (`string`, optional) Sort returned list by subscription creation date. Options are 'ASC' for ascending or 'DESC' for descending. Defaults to 'ASC'. - - -## SquareupApi.CreateWebhookSubscription - -
- - -Creates a webhook subscription. - -**Parameters** - -- **api_version** (`string`, optional) Specifies the API version for the webhook subscription. Optional; defaults to the application's current API version if not provided. -- **enable_subscription** (`boolean`, optional) Indicates whether the subscription is enabled (`true`) or not (`false`). -- **event_types** (`array[string]`, optional) An array of event types for the subscription, each as a string. -- **subscription_created_at** (`string`, optional) The creation timestamp of the subscription in RFC 3339 format, e.g., "2016-09-04T23:59:33.123Z". -- **subscription_last_updated_timestamp** (`string`, optional) The timestamp of when the subscription was last updated, in RFC 3339 format (e.g., '2016-09-04T23:59:33.123Z'). -- **subscription_name** (`string`, optional) The name for the webhook subscription. -- **subscription_signature_key** (`string`, optional) The Square-generated signature key used to validate the origin of the webhook event. -- **subscription_unique_id** (`string`, optional) A Square-generated unique ID for the webhook subscription. -- **unique_request_identifier** (`string`, optional) A unique string to ensure the idempotence of the CreateWebhookSubscription request, preventing duplicate entries. -- **webhook_notification_url** (`string`, optional) The URL where webhook notifications will be sent. Ensure it is accessible and accurately formatted. - - -## SquareupApi.DeleteWebhookSubscription - -
- - -Deletes a specified webhook subscription. - -**Parameters** - -- **webhook_subscription_id** (`string`, required) The ID of the webhook subscription to delete. This ID is required to specify which subscription needs to be removed. - - -## SquareupApi.RetrieveWebhookSubscription - -
- - -Retrieve details of a specific webhook subscription. - -**Parameters** - -- **webhook_subscription_id** (`string`, required) The unique ID of the webhook subscription to retrieve. - - -## SquareupApi.UpdateWebhookSubscription - -
- - -Update a webhook subscription to modify its settings. - -**Parameters** - -- **subscription_id** (`string`, required) The unique ID of the subscription to update. This is required to identify the webhook subscription that needs to be modified. -- **api_version_of_subscription** (`string`, optional) Specify the API version for the subscription. Optional for creation and defaults to the application's API version if not provided. -- **event_types** (`array[string]`, optional) An array of event types associated with this subscription that trigger the webhook. -- **signature_key** (`string`, optional) The Square-generated signature key for validating the webhook origin. -- **subscription_created_timestamp** (`string`, optional) The timestamp indicating when the subscription was created, formatted in RFC 3339. -- **subscription_enabled** (`boolean`, optional) Set to `true` to enable the subscription or `false` to disable it. -- **subscription_name** (`string`, optional) The new name for the webhook subscription to update. -- **subscription_unique_id** (`string`, optional) A Square-generated unique ID for the webhook subscription to be updated. This is required to identify which subscription to modify. -- **updated_at_timestamp** (`string`, optional) The timestamp of the last update for the subscription, in RFC 3339 format (e.g., "2016-09-04T23:59:33.123Z"). -- **webhook_notification_url** (`string`, optional) The URL to which webhooks are sent. Must be a valid URL that can receive POST requests. - - -## SquareupApi.UpdateWebhookSignatureKey - -
- - -Update a webhook subscription's signature key. - -**Parameters** - -- **webhook_subscription_id** (`string`, required) The ID of the Webhook Subscription to update. This is a required field. -- **unique_request_identifier** (`string`, optional) A unique string to identify the UpdateWebhookSubscriptionSignatureKey request, ensuring idempotency. - - -## SquareupApi.TestWebhookSubscription - -
- - -Send a test event to a webhook subscription URL. - -**Parameters** - -- **webhook_subscription_id** (`string`, required) The ID of the Webhook Subscription to test. This is required for sending a test event. -- **test_event_type** (`string`, optional) Specifies the event type for testing the webhook subscription. It must match an event type in the subscription's event list. - - - -## Reference - -Below is a reference of enumerations used by some of the tools in the SquareupApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - - ---- - -## Auth - -The Arcade Square MCP Server uses the [Square auth provider](/references/auth-providers/square) to connect to users' Square accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Square auth provider](/references/auth-providers/square#configuring-square-auth) with your own Square app credentials. - - \ No newline at end of file diff --git a/app/en/resources/integrations/productivity/ticktick-api/page.mdx b/app/en/resources/integrations/productivity/ticktick-api/page.mdx deleted file mode 100644 index faf1cdb36..000000000 --- a/app/en/resources/integrations/productivity/ticktick-api/page.mdx +++ /dev/null @@ -1,387 +0,0 @@ -# TicktickApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The TicktickApi MCP Server offers a comprehensive set of tools for managing tasks and projects within Ticktick. Users can easily create, update, and delete tasks and projects, as well as retrieve detailed information about them. Key actions include: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## TicktickApi.RetrieveTaskDetails - -
- - -Retrieve detailed information for a specific task. - -**Parameters** - -- **project_identifier** (`string`, required) The unique ID of the project containing the task to retrieve. -- **task_identifier** (`string`, required) Unique identifier for the task to retrieve detailed information including subtasks and reminders. - -## TicktickApi.DeleteSpecificTask - -
- - -Permanently delete a task using project and task IDs. - -**Parameters** - -- **project_id** (`string`, required) The unique ID of the project containing the task to be deleted. -- **task_identifier_to_delete** (`string`, required) The unique ID of the task to permanently delete from a project. - -## TicktickApi.CreateTaskTicktick - -
- - -Create a new task in Ticktick with specified properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## TicktickApi.UpdateTaskProperties - -
- - -Update a task's properties in Ticktick. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **task_identifier** (`string`, optional) The unique ID of the task to update in Ticktick. This is required to identify the specific task to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## TicktickApi.MarkTaskComplete - -
- - -Marks a specific task as completed in Ticktick. - -**Parameters** - -- **project_id** (`string`, required) Unique ID of the project containing the task to be completed. -- **task_identifier** (`string`, required) The unique ID of the task to be marked as completed. - -## TicktickApi.GetUserProjects - -
- - -Retrieve all user-accessible projects from Ticktick. - -**Parameters** - -This tool does not take any parameters. - -## TicktickApi.CreateProjectInTicktick - -
- - -Create a new project in Ticktick with optional properties. - -**Parameters** - -- **project_name** (`string`, required) Name of the project to be created. This is a required field. -- **project_color** (`string`, optional) Hex color code representing the project's color (e.g., '#F18181'). -- **project_kind** (`string`, optional) Specifies the type of items the project will store. Choose 'TASK' for tasks or 'NOTE' for notes. -- **project_sort_order** (`integer`, optional) The integer value representing the project's sort order. -- **project_view_mode** (`string`, optional) The display mode for the project: choose from 'list', 'kanban', or 'timeline'. - -## TicktickApi.GetTicktickProjectById - -
- - -Retrieve Ticktick project details by project ID. - -**Parameters** - -- **project_id** (`string`, required) The unique ID of the Ticktick project to retrieve. - -## TicktickApi.UpdateProjectProperties - -
- - -Update properties of an existing project. - -**Parameters** - -- **project_identifier** (`string`, required) Unique ID of the project to update. -- **project_color** (`string`, optional) Hex color code representing the color of the project, such as '#FFFFFF'. -- **project_kind** (`string`, optional) Specify the type of project: TASK or NOTE. -- **project_name** (`string`, optional) The new name for the project to be updated. This should be a string representing the desired project name. -- **project_sort_order** (`integer`, optional) Sort order value for the project, default is 0. Determines the project's position relative to others. -- **project_view_mode** (`string`, optional) Specifies the view mode of the project. Options are 'list', 'kanban', or 'timeline'. - -## TicktickApi.DeleteTicktickProject - -
- - -Permanently delete a project in Ticktick by ID. - -**Parameters** - -- **project_id** (`string`, required) The unique ID of the Ticktick project to permanently delete. Ensure the ID is correct, as this action cannot be undone. - -## TicktickApi.RetrieveProjectWithTasks - -
- - -Retrieve detailed project information and all related tasks. - -**Parameters** - -- **project_id** (`string`, required) The unique ID of the project to retrieve with all data, including tasks and columns. - -## Reference - -Below is a reference of enumerations used by some of the tools in the TicktickApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - -## Auth - -The TicktickApi MCP Server uses the Auth Provider with id `arcade-ticktick` to connect to users' TickTick accounts. In order to use the MCP Server, you will need to configure the `arcade-ticktick` auth provider. - -Learn how to configure the TickTick auth provider in the [TickTick auth provider documentation](/references/auth-providers/ticktick). - - diff --git a/app/en/resources/integrations/productivity/trello-api/page.mdx b/app/en/resources/integrations/productivity/trello-api/page.mdx deleted file mode 100644 index 9d5c0f437..000000000 --- a/app/en/resources/integrations/productivity/trello-api/page.mdx +++ /dev/null @@ -1,8625 +0,0 @@ -# TrelloApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The TrelloApi MCP Server offers a comprehensive suite of tools for interacting with Trello, enabling users and AI applications to efficiently manage boards, cards, lists, and members. With this server, you can: - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## TrelloApi.GetTrelloAction - -
- - -Fetches details of a specific Trello action by ID. - -**Parameters** - -- **action_id** (`string`, required) The unique ID of the Trello action to be fetched. Required for retrieving specific action details. -- **action_fields** (`string`, optional) Specify 'all' or a comma-separated list of action fields you want to retrieve. Use 'all' for full details. -- **include_display_info** (`boolean`, optional) Include display information in the response if true. -- **include_entities** (`boolean`, optional) Set to True to include related entities in the response, or False to exclude them. -- **include_member** (`boolean`, optional) Include the member object in the response for the action. Set to true to include. -- **include_member_creator** (`boolean`, optional) Set to true to include the member object for the creator of the action. -- **member_creator_fields** (`string`, optional) Specify `all` or a comma-separated list of member fields to include for the action creator. -- **member_information_fields** (`string`, optional) Specify 'all' or a comma-separated list of member fields to include in the response. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateTrelloComment - -
- - -Edit a comment action in Trello. - -**Parameters** - -- **action_id** (`string`, required) The unique identifier for the specific action comment you want to update. -- **new_comment_text** (`string`, required) The updated text content for the Trello comment action. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteTrelloAction - -
- - -Delete a specific comment action from Trello. - -**Parameters** - -- **action_id** (`string`, required) The ID of the comment action to be deleted. Only comment actions are valid for deletion. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetActionProperty - -
- - -Retrieve a specific property of a Trello action. - -**Parameters** - -- **action_field** (`string`, required) The specific field to retrieve from a Trello action, such as 'id', 'type', or 'date'. -- **action_id** (`string`, required) The unique identifier of the action to retrieve its specific property. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetBoardForAction - -
- - -Retrieve board details for a given action on Trello. - -**Parameters** - -- **action_id** (`string`, required) The ID of the action to retrieve the associated board details. -- **board_fields** (`string`, optional) Specify 'all' or a comma-separated list of board fields like 'id, name, desc'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloCardForAction - -
- - -Get details of a Trello card associated with an action. - -**Parameters** - -- **action_id** (`string`, required) The unique identifier of the action linked to the Trello card. -- **card_fields** (`string`, optional) Specify 'all' to retrieve all fields or provide a comma-separated list of specific card fields like 'id,name,shortUrl'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetActionList - -
- - -Retrieve the list associated with a Trello action. - -**Parameters** - -- **action_id** (`string`, required) The unique identifier of the Trello action to retrieve its associated list. -- **list_fields** (`string`, optional) Specify 'all' or a comma-separated list of fields to retrieve for the list. Acceptable values include specific fields like 'id'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetActionMember - -
- - -Retrieve the member associated with a Trello action. - -**Parameters** - -- **action_id** (`string`, required) The unique ID of the Trello action to retrieve the associated member's details. -- **member_fields** (`string`, optional) Specify `all` to retrieve all member fields or provide a comma-separated list of specific fields. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetActionCreatorMember - -
- - -Retrieve the member who created a specific Trello action. - -**Parameters** - -- **action_id** (`string`, required) The unique identifier of the Trello action to retrieve the creator information for. -- **member_fields** (`string`, optional) Specify 'all' or a comma-separated list of member fields to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetActionOrganization - -
- - -Retrieve the organization related to a Trello action. - -**Parameters** - -- **action_id** (`string`, required) The unique ID of the Trello action to retrieve the associated organization details. -- **organization_fields** (`string`, optional) Specify 'all' or a comma-separated list of fields (e.g., 'id', 'name') to determine which organization details to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ModifyTrelloComment - -
- - -Update the text of a Trello comment action. - -**Parameters** - -- **action_id_to_update** (`string`, required) The ID of the Trello comment action to update. -- **new_comment_text** (`string`, required) Provide the new text for the Trello comment you wish to update. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ListReactionsForAction - -
- - -Retrieve reactions for a specific Trello action. - -**Parameters** - -- **action_id** (`string`, required) The unique ID of the action for which you want to list reactions. -- **include_member_as_nested_resource** (`boolean`, optional) Specify true to include the member as a nested resource in the response. Useful for detailed member information. -- **load_emoji_as_nested_resource** (`boolean`, optional) Set to true to load the emoji as a nested resource. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.AddReactionToTrelloAction - -
- - -Add a reaction to a Trello action. - -**Parameters** - -- **action_id** (`string`, required) The ID of the Trello action to which you want to add a reaction. -- **emoji_short_name** (`string`, optional) The short name of the emoji to add as a reaction, like 'thumbsup' or 'smile'. -- **emoji_skin_variation** (`string`, optional) Specifies the `skinVariation` for the emoji being added as a reaction, like default or medium-light. -- **emoji_unified_value** (`string`, optional) The `unified` value of the emoji to add to the Trello action. This is a code representing the emoji and is used to specify the exact emoji to add. -- **native_emoji_unicode** (`string`, optional) The native unicode emoji to add as a reaction. It should be a valid emoji character. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetReactionInfo - -
- - -Get detailed information about a specific Trello reaction. - -**Parameters** - -- **action_id** (`string`, required) The ID of the Trello Action to retrieve reaction information for. -- **reaction_id** (`string`, required) The unique identifier for the specific reaction to retrieve details. -- **include_emoji_as_nested_resource** (`boolean`, optional) Set to true to load emoji as a nested resource. -- **include_member_as_nested_resource** (`boolean`, optional) Include the member as a nested resource in the reaction details. Refer to the Members Nested Resource guide. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteTrelloReaction - -
- - -Deletes a specific reaction on a Trello action. - -**Parameters** - -- **action_id** (`string`, required) The ID of the Trello action from which the reaction will be deleted. -- **reaction_id** (`string`, required) The unique identifier of the reaction to be deleted from a Trello action. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetActionReactionsSummary - -
- - -Get a summary of all reactions for a Trello action. - -**Parameters** - -- **action_id** (`string`, required) The unique identifier for the specific Trello action to retrieve reactions for. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetApplicationComplianceData - -
- - -Retrieve compliance data for a specified application. - -**Parameters** - -- **application_key** (`string`, required) The unique key for the application to retrieve its compliance data. This is required to access the specific compliance details. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.TrelloGetBatchRequests - -
- - -Retrieve up to 10 resources with a single batched request. - -**Parameters** - -- **urls_list_for_batching** (`string`, required) A list of up to 10 API routes, each beginning with a forward slash. Exclude the API version number. Example: '/members/trello', '/cards/[cardId]'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetBoardMemberships - -
- - -Retrieve user membership details for a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier for the Trello board to retrieve membership details. -- **include_activity** (`boolean`, optional) Set to true to include activity data for premium organizations only. -- **include_member_object** (`boolean`, optional) Set to true to include a nested member object in the response. -- **member_fields_to_show** (`string`, optional) Specify which fields to display if 'member' is set to true. Valid values are fields from the nested member resource. -- **membership_filter** (`string`, optional) Specifies the type of memberships to retrieve: `admins`, `all`, `none`, or `normal`. -- **show_org_member_type** (`boolean`, optional) Set to true to show the type of member (e.g., 'admin') a user is to the organization. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloBoard - -
- - -Retrieve details of a specific Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board to retrieve details for. Required to specify which board to access. -- **board_fields_to_include** (`string`, optional) Specify which board fields to include in the response. Use 'all' or a comma-separated list of field names like closed, dateLastActivity, etc. -- **include_actions** (`string`, optional) Include actions as a nested resource in the response. Refer to Trello's nested resources guide for more information. -- **include_board_stars** (`string`, optional) Specify whether to include starred boards information. Options are 'mine' or 'none'. -- **include_card_plugin_data** (`boolean`, optional) Boolean to include card plugin data in the response when used with the `cards` parameter. -- **include_cards_resource** (`string`, optional) Include card details as part of the response. Cards are nested resources; read more about them in the Trello API documentation. -- **include_checklists** (`string`, optional) Set to true to include checklists as a nested resource in the response. -- **include_custom_fields** (`boolean`, optional) Set to true to include custom fields in the board response. -- **include_labels** (`string`, optional) Specify if the labels nested resource should be included in the board response. Use 'true' or 'false'. -- **include_lists** (`string`, optional) Include the lists associated with the board in the response. This is a nested resource. -- **include_members_as_nested_resource** (`string`, optional) Include member details as a nested resource in the response. Set to 'true' to include, 'false' to exclude. -- **include_memberships** (`string`, optional) Include memberships data as a nested resource in the response. -- **include_my_preferences** (`boolean`, optional) Set to true to include the user's preferences for the board in the response. -- **include_organization** (`boolean`, optional) Include organization details for the board. Set to true to include. -- **include_organization_plugin_data** (`boolean`, optional) Set to true to include organization pluginData with the response when using the organization parameter. Expects a boolean value. -- **include_plugin_data** (`boolean`, optional) Set to true to include pluginData for the board in the response, or false to exclude it. -- **include_tags** (`boolean`, optional) Set to true to include the collection(s) (tags) that a board belongs to in the response. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateTrelloBoard - -
- - -Update details of an existing Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier for the Trello board to be updated. -- **allow_workspace_members_to_join** (`boolean`, optional) Allows Workspace members to join the board themselves. True to allow, false to disallow. -- **background_preference** (`string`, optional) Specify the background for the board. Use a custom background ID or choose from: blue, orange, green, red, purple, pink, lime, sky, grey. -- **board_description** (`string`, optional) A new description for the board, 0 to 16384 characters long. -- **calendar_feed_enabled** (`boolean`, optional) Set to true to enable the calendar feed; false to disable it. -- **card_aging_preference** (`string`, optional) Set card aging style on the board. Options: pirate, regular. -- **close_board** (`boolean`, optional) Sets whether the board should be closed. Use true to close the board and false to keep it open. -- **comment_permission** (`string`, optional) Specify who can comment on cards. Options: disabled, members, observers, org, public. -- **display_card_covers** (`boolean`, optional) Set to true to display card covers on the board, false to hide them. -- **hide_voter_identities** (`boolean`, optional) If true, the Voting Power-Up hides who voted on cards. -- **new_board_name** (`string`, optional) The new name for the board. Must be 1 to 16384 characters long. -- **permission_level** (`string`, optional) Set the board's permission level: org, private, or public. -- **user_subscribed_to_board** (`string`, optional) Indicate if the acting user is subscribed to the board. Use 'true' or 'false'. -- **voting_permissions** (`string`, optional) Specify who can vote on this board. Options: disabled, members, observers, org, public. -- **who_can_invite** (`string`, optional) Specifies who can invite people to the board. Accepts 'admins' or 'members'. -- **workspace_id_for_board** (`string`, optional) The unique ID of the Workspace to which the board should be moved. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteBoard - -
- - -Delete a specific board from Trello. - -**Parameters** - -- **board_id_to_delete** (`string`, required) The ID of the Trello board to delete. Ensure it is the correct board as this action is irreversible. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloBoardField - -
- - -Retrieve a specific field from a Trello board. - -**Parameters** - -- **board_field** (`string`, required) Specify the field of the Trello board to retrieve. Valid values: closed, dateLastActivity, dateLastView, desc, descData, idMemberCreator, idOrganization, invitations, invited, labelNames, memberships, name, pinned, powerUps, prefs, shortLink, shortUrl, starred, subscribed, url. -- **board_id** (`string`, required) The unique identifier of the Trello board to fetch the field from. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetBoardStars - -
- - -Retrieve star count for a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board for which to retrieve star count. -- **board_star_filter** (`string`, optional) Specify whose stars to include: 'mine' for personal stars, 'none' for no filtering. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetBoardChecklists - -
- - -Retrieve all checklists from a specific Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board from which to retrieve checklists. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetOpenCardsOnBoard - -
- - -Retrieve all open cards on a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board to retrieve open cards from. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetFilteredBoardCards - -
- - -Retrieve cards on a Trello board based on a specified filter. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier for the Trello board from which to retrieve cards. -- **card_filter** (`string`, required) Specify the filter for retrieving cards: `all`, `closed`, `complete`, `incomplete`, `none`, `open`, `visible`. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetBoardCustomFields - -
- - -Retrieve Custom Field Definitions for a specific Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique ID of the Trello board for which custom fields are to be retrieved. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateLabelOnBoard - -
- - -Create a new label on a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board where the new label will be created. -- **label_color** (`string`, required) Sets the color of the new label. Accepted values include specific colors or `null` for no color. -- **label_name** (`string`, required) The name of the label to be created. It must be between 1 and 16,384 characters long. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloBoardLists - -
- - -Retrieve lists from a specified Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board to retrieve lists from. -- **card_filter** (`string`, optional) Specify how to filter cards within the lists. Options: 'all', 'closed', 'none', 'open'. -- **card_properties_to_include** (`string`, optional) Specify `all` or a comma-separated list of card fields to include, such as name, id, etc. -- **list_fields** (`string`, optional) Specify 'all' or a comma-separated list of list fields to include in the response. -- **list_filter** (`string`, optional) Apply a filter to the lists. Options are 'all', 'closed', 'none', or 'open'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateTrelloBoardList - -
- - -Create a new list on a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board where the list will be created. Required for specifying which board to add the list to. -- **list_name** (`string`, required) The name of the list to be created. It should be between 1 to 16384 characters in length. -- **list_position** (`string`, optional) Specifies where the list should be positioned. Use 'top', 'bottom', or a positive number for custom placement. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetFilteredBoardLists - -
- - -Retrieve filtered lists from a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board to retrieve lists for. -- **list_filter** (`string`, required) Specifies the filter to apply on board lists. Options are `all`, `closed`, `none`, or `open`. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetBoardMembers - -
- - -Retrieve members of a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board whose members are to be retrieved. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.InviteMemberToTrelloBoard - -
- - -Invite a member to a Trello board via email. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier for the Trello board to which the member will be invited. -- **member_email_address** (`string`, required) The email address of the user to be added as a member to the Trello board. -- **member_access_type** (`string`, optional) Specifies the role of the new board member. Valid values are: admin, normal, or observer. -- **user_full_name** (`string`, optional) The full name of the user being invited. Must be at least 1 character and not begin or end with a space. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.AddMemberToBoard - -
- - -Add a member to a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The ID of the board to update. Required to specify which Trello board the member will be added to. -- **member_id_to_add** (`string`, required) The ID of the member to add to the Trello board. -- **member_role_type** (`string`, required) Specifies the role of the member on the board. Choose from 'admin', 'normal', or 'observer'. -- **allow_billable_guest** (`boolean`, optional) Set to true to allow organization admins to add multi-board guests to the board. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RemoveMemberFromTrelloBoard - -
- - -Remove a member from a specified Trello board. - -**Parameters** - -- **board_id** (`string`, required) The ID of the Trello board from which to remove a member. -- **member_id_to_remove** (`string`, required) The ID of the member to remove from the Trello board. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateBoardMembership - -
- - -Update a specific board membership by ID. - -**Parameters** - -- **board_id** (`string`, required) The ID of the Trello board you want to update the membership for. -- **membership_id** (`string`, required) The ID of a membership to be updated on the board. -- **membership_type** (`string`, required) Specifies the role of the member on the board. Choose one of: admin, normal, observer. -- **member_fields_to_update** (`string`, optional) Specify the member fields to update, such as avatarHash, bio, fullName, or all. Valid values include: all, avatarHash, bio, bioData, confirmed, fullName, idPremOrgsAdmin, initials, memberType, products, status, url, username. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateBoardEmailPosition - -
- - -Update the email position preference on a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board to update the email position preference for. -- **email_position** (`string`, required) Position of the email address on a board. Valid values: bottom, top. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.SetTrelloEmailListDefault - -
- - -Change the default email-to-board list in Trello. - -**Parameters** - -- **board_id_to_update** (`string`, required) The ID of the Trello board that you want to update the default email-to-board list for. This is required to specify which board's preferences are being changed. -- **email_list_id** (`string`, required) The ID of the email list to set as default for email-to-board cards. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateSidebarPreference - -
- - -Update the sidebar visibility preference for a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The ID of the Trello board whose sidebar preference is to be updated. -- **show_sidebar** (`boolean`, required) Set to true to show the sidebar on the board, false to hide it. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateSidebarActivityPreference - -
- - -Toggle the sidebar activity visibility for a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board to update the sidebar activity preference. -- **show_sidebar_activity** (`boolean`, required) Boolean to determine if sidebar activity should be shown. True to show, False to hide. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateSidebarActionsPreference - -
- - -Update sidebar board actions preference on a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board to update the sidebar actions preference. -- **show_sidebar_board_actions** (`boolean`, required) Set to true to show sidebar board actions, or false to hide them on a Trello board. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateSidebarMembersPref - -
- - -Update the sidebar members visibility preference on a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board to update the sidebar members preference. -- **show_sidebar_members** (`boolean`, required) Set to 'true' to show members of the board in the sidebar, 'false' to hide. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateTrelloBoard - -
- - -Create a new board on Trello. - -**Parameters** - -- **board_name** (`string`, required) The new name for the Trello board. Must be between 1 to 16384 characters. -- **add_default_lists** (`boolean`, optional) Add the default lists (To Do, Doing, Done) to a new board. Ignored if `idBoardSource` is provided. -- **allow_self_join** (`boolean`, optional) Set to `true` to allow users to join the board themselves. Set to `false` if they need an invitation. -- **board_background_color** (`string`, optional) Specify the custom background ID or choose from predefined colors: blue, orange, green, red, purple, pink, lime, sky, grey. -- **board_description** (`string`, optional) A description for the new board, ranging from 0 to 16384 characters in length. -- **board_permission_level** (`string`, optional) Set the permission level of the board. Options are: `org`, `private`, `public`. -- **card_aging_type** (`string`, optional) Type of card aging on the board: `pirate` or `regular`. Determines visual changes over time when enabled. -- **comment_permission** (`string`, optional) Specify who can comment on cards: `disabled`, `members`, `observers`, `org`, `public`. -- **enable_card_covers** (`boolean`, optional) Boolean to determine whether card covers are enabled on the board. -- **enabled_power_ups** (`string`, optional) Specify the Power-Ups to enable on the board. Options: all, calendar, cardAging, recap, voting. -- **include_original_cards** (`string`, optional) Specify 'cards' to keep cards from the original board when copying; otherwise, omit for none. -- **invitation_permissions** (`string`, optional) Specifies who can invite users to join the board. Choose either `admins` or `members`. -- **source_board_id** (`string`, optional) The ID of the board to copy for creating a new board. -- **use_default_labels** (`boolean`, optional) Set to true to use the default set of labels on the new board; false to exclude them. -- **voting_permissions** (`string`, optional) Specifies who can vote on the board: `disabled`, `members`, `observers`, `org`, or `public`. -- **workspace_id_or_name** (`string`, optional) The ID or name of the Trello Workspace where the board will be created. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GenerateBoardCalendarKey - -
- - -Generate a calendar key for a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board for which the calendar key is to be generated. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GenerateBoardEmailKey - -
- - -Generate a unique email key for a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board for which to generate an email key. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateBoardTag - -
- - -Create a new tag for a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The ID of the Trello board where the tag will be created. -- **organization_tag_id** (`string`, required) The ID of the tag from the organization to associate with the board. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.MarkTrelloBoardAsViewed - -
- - -Mark a Trello board as viewed to update status. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board to mark as viewed. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetBoardPowerUps - -
- - -Retrieve the enabled Power-Ups on a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique ID of the Trello board from which to retrieve enabled Power-Ups. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ListBoardPowerUps - -
- - -Retrieve the Power-Ups enabled on a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique identifier of the Trello board for which to list Power-Ups. -- **power_up_filter** (`string`, optional) Specify the filter for Power-Ups: choose 'enabled' to list only those currently active on the board, or 'available' to list those that can be activated. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloCardById - -
- - -Retrieve details of a Trello card using its ID. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier for the Trello card to retrieve. -- **attachment_fields_list** (`string`, optional) Specify 'all' or a comma-separated list of attachment fields to retrieve for the card. -- **board_fields_selection** (`string`, optional) Specify 'all' or select specific board fields to include. Defaults to 'name, desc, descData, closed, idOrganization, pinned, url, prefs'. -- **card_fields** (`string`, optional) Specify 'all' or a comma-separated list of fields to retrieve for the card. Defaults to all main fields such as badges, desc, due, etc. -- **checklist_fields_detail** (`string`, optional) Specify `all` or a comma-separated list of fields (`idBoard`, `idCard`, `name`, `pos`) to include for checklists. -- **include_actions_details** (`string`, optional) Specify if actions details should be included. Refer to [Actions Nested Resource](https://cloud/trello/guides/rest-api/nested-resources/#actions-nested-resource) for more information. -- **include_attachments** (`string`, optional) Specify if attachments should be returned. Use 'true' for all attachments, 'false' for none, or 'cover' for cover attachments only. -- **include_check_item_states** (`boolean`, optional) Set to `true` to include check item states of the card; `false` to exclude them. -- **include_checklists** (`string`, optional) Specifies whether to return checklists on the card. Use 'all' or 'none'. -- **include_custom_field_items** (`boolean`, optional) Set to `true` to include custom field items in the response; `false` to exclude them. -- **include_list_resource** (`boolean`, optional) A boolean to include list resource information related to the card. Set to true to include this information. -- **include_members** (`boolean`, optional) Whether to return member objects for members on the card. Set to true to include them. -- **include_members_voted** (`boolean`, optional) Set to true to return member objects for members who voted on the card. -- **include_plugin_data** (`boolean`, optional) Specify whether to include plugin data in the card details response. -- **include_stickers** (`boolean`, optional) Set to true to include sticker models in the response; false to exclude. -- **member_fields** (`string`, optional) Specify `all` or a comma-separated list of member fields like avatarHash, fullName, initials, username. -- **member_voted_fields** (`string`, optional) Specify `all` or a comma-separated list of fields for members who voted on the card. Defaults to `avatarHash, fullName, initials, username`. -- **return_board_object** (`boolean`, optional) Set to true to return the board object the card is on. Use false to exclude it. -- **sticker_fields_selection** (`string`, optional) Specify `all` or a comma-separated list of sticker fields to retrieve for a Trello card. This determines which sticker-related data is included in the response. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteTrelloCard - -
- - -Delete a card from Trello by ID. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card to delete. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloCardProperty - -
- - -Retrieve a specific property of a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique ID of the Trello card to retrieve a property from. -- **desired_card_field** (`string`, required) The field or attribute of the Trello card you want to retrieve. Options include 'id', 'desc', 'due', etc. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetCardActions - -
- - -Retrieve the actions performed on a specific Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card to retrieve actions for. -- **action_type_filter** (`string`, optional) Comma-separated list of action types to filter actions on a Trello card. -- **actions_page_number** (`number`, optional) The page number to retrieve for the list of actions on a card, with each page containing 50 actions. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ListCardAttachments - -
- - -Retrieve all attachments from a specified Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card to retrieve attachments from. -- **attachment_fields** (`string`, optional) Specify 'all' for all fields or a comma-separated list of attachment fields to retrieve. -- **restrict_to_cover_attachment** (`string`, optional) Set to 'cover' to retrieve only the cover attachment of the card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.AddAttachmentToTrelloCard - -
- - -Attach a file or link to a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card to which the attachment will be added. -- **attachment_mime_type** (`string`, optional) The MIME type of the attachment file. Should be a valid MIME type string (max 256 characters). -- **attachment_name** (`string`, optional) The name of the attachment. Maximum length is 256 characters. -- **attachment_url** (`string`, optional) A URL to attach to the Trello card. Must start with 'http://' or 'https://'. -- **file_attachment** (`string`, optional) The file data to upload and attach to the Trello card as multipart/form-data. -- **use_as_card_cover** (`boolean`, optional) Set to true to use the new attachment as the card cover. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteCardAttachment - -
- - -Delete an attachment from a Trello card. - -**Parameters** - -- **attachment_id_to_delete** (`string`, required) The ID of the attachment you want to delete from the card. -- **card_id** (`string`, required) The unique identifier for the Trello card from which the attachment will be deleted. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetBoardForCard - -
- - -Retrieve the board details for a specific card. - -**Parameters** - -- **card_id** (`string`, required) The unique ID of the Trello card to retrieve the board for. -- **board_fields** (`string`, optional) Specify `all` or a comma-separated list of board fields to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetCardChecklistCompletionStatus - -
- - -Retrieve completed checklist items from a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card to retrieve completed checklist items. -- **checklist_item_fields** (`string`, optional) Specify `all` for all fields or a comma-separated list of: `idCheckItem`, `state` to filter the checklist item details. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetCardChecklists - -
- - -Retrieve checklists for a specified Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card for which checklists are retrieved. -- **card_fields** (`string`, optional) Specify 'all' or list fields like `idBoard,idCard,name,pos` to include in the response. -- **include_all_checklists** (`string`, optional) Specify whether to include all checklists (`all`) or none (`none`) for the card. Accepted values are 'all' or 'none'. -- **include_check_items** (`string`, optional) Specify whether to include all check items (`all`) or none (`none`). -- **include_checkitem_fields** (`string`, optional) Specify 'all' for all fields or a comma-separated list of desired fields among: name, nameData, pos, state, type, due, dueReminder, idMember. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateChecklistOnCard - -
- - -Create a new checklist on a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card to which the checklist will be added. -- **checklist_name** (`string`, optional) The name of the checklist to be created on a Trello card. -- **checklist_position** (`string`, optional) Specify the position of the checklist on the card. Accepts `top`, `bottom`, or a positive number indicating the exact position. -- **source_checklist_id** (`string`, optional) The ID of a source checklist to copy into the new checklist. This is used to duplicate the tasks from another checklist. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetSpecificCheckitemOnCard - -
- - -Retrieve details of a specific checkItem on a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The ID of the Trello card to retrieve the checkItem from. -- **checkitem_id** (`string`, required) The unique ID of the checkItem on the card. -- **checkitem_fields** (`string`, optional) Specify `all` or a comma-separated list of fields (`name,nameData,pos,state,type,due,dueReminder,idMember`) to retrieve for the checkItem. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateChecklistItemTrello - -
- - -Update an item in a Trello checklist on a card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card where the checklist item is located. -- **checkitem_id** (`string`, required) The unique identifier for the checklist item to be updated. -- **checkitem_due_reminder** (`number`, optional) The number of minutes before the due date when a reminder should be sent for the checkitem. -- **checklist_id** (`string`, optional) The unique ID of the checklist containing the item to be updated. -- **checklist_item_due_date** (`string`, optional) The due date for the checklist item in ISO 8601 format (e.g., '2023-12-31T23:59:59Z'). -- **checklist_item_new_name** (`string`, optional) The new name for the checklist item. -- **checklist_item_position** (`string`, optional) Specify the position of the checklist item as `top`, `bottom`, or a positive float for custom ordering. -- **completion_state** (`string`, optional) Specify the state of the checklist item as either `complete` or `incomplete`. -- **member_id_to_remove** (`string`, optional) The Trello member ID to remove from the card's checklist item. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteChecklistItemOnCard - -
- - -Delete a checklist item from a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card from which you want to delete a checklist item. -- **checklist_item_id** (`string`, required) The ID of the checklist item to delete from the card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetCardList - -
- - -Retrieve the list containing a specific card from Trello. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello Card to find its containing list. -- **list_fields** (`string`, optional) Specify `all` or a comma-separated list of list attributes to retrieve. Defines the fields you want from the list containing the card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetCardMembers - -
- - -Retrieve members associated with a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier for the Trello card whose members are being retrieved. -- **member_fields** (`string`, optional) Specify `all` for all fields or list specific member fields separated by commas. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetMembersWhoVotedOnCard - -
- - -Retrieve members who voted on a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique ID of the Trello card for which you want to retrieve the list of voting members. -- **member_fields** (`string`, optional) Specify 'all' or a comma-separated list of member fields to retrieve information on those members who voted on the card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.VoteOnTrelloCard - -
- - -Vote on a Trello card for a specific member. - -**Parameters** - -- **card_id** (`string`, required) The unique ID of the Trello card on which to vote. -- **member_id_for_vote** (`string`, required) The ID of the member casting a 'yes' vote on the Trello card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloCardPluginData - -
- - -Retrieve shared plugin data from a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique ID of the Trello card to retrieve plugin data for. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetCardStickers - -
- - -Get the stickers on a Trello card using its ID. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier for a Trello card to retrieve its stickers. -- **sticker_fields** (`string`, optional) Specify 'all' or a comma-separated list of sticker fields to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.AddStickerToTrelloCard - -
- - -Add a sticker to a specific Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card to which the sticker will be added. -- **sticker_identifier** (`string`, required) Specify the sticker ID for custom stickers or use default string identifiers like 'taco-cool' for default stickers. -- **sticker_left_position** (`number`, required) The left position of the sticker. Acceptable values range from -60 to 100. -- **sticker_top_position** (`number`, required) Specify the vertical position of the sticker on the card, ranging from -60 to 100. -- **sticker_z_index** (`integer`, required) Specify the z-index of the sticker to determine overlay order. Use integers to set layer depth. -- **sticker_rotation** (`number`, optional) The rotation angle of the sticker in degrees, allowing for visual adjustment. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloCardSticker - -
- - -Fetch details of a specific sticker on a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The ID of the Trello card to retrieve the sticker from. -- **sticker_id** (`string`, required) The unique identifier for the sticker on the Trello card. -- **sticker_fields** (`string`, optional) Specify 'all' or a comma-separated list of sticker fields you want to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RemoveCardSticker - -
- - -Removes a specified sticker from a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card from which the sticker will be removed. -- **sticker_id** (`string`, required) The ID of the sticker to be removed from the specified Trello card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateTrelloCardSticker - -
- - -Update a sticker on a specified Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card to update the sticker on. -- **sticker_id** (`string`, required) The unique identifier for the sticker to be updated on the Trello card. It must match an existing sticker on the specified card. -- **sticker_left_position** (`number`, required) The left position of the sticker, ranging from -60 to 100. -- **sticker_top_position** (`number`, required) The vertical position of the sticker on the card, ranging from -60 to 100. Determines the position from the top. -- **sticker_z_index** (`integer`, required) The z-index of the sticker, determining its layer position with respect to other stickers on the card. Provide as an integer. -- **sticker_rotation** (`number`, optional) The rotation angle of the sticker. Provide a number representing the degrees of rotation. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateCardComment - -
- - -Update an existing comment on a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier for the Trello card where the comment resides. -- **comment_action_id** (`string`, required) The unique ID of the comment action you wish to update on a Trello card. -- **new_comment_text** (`string`, required) The new text content for the comment being updated on the Trello card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteCommentOnCard - -
- - -Deletes a comment from a Trello card action. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier for the Trello card from which the comment will be deleted. -- **comment_action_id** (`string`, required) The ID of the comment action to be deleted from the card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateTrelloCardCustomField - -
- - -Update or remove a custom field value on a Trello card. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **card_id** (`string`, optional) The ID of the Trello card where the custom field value will be set or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **custom_field_id** (`string`, optional) The unique identifier for the custom field on the Trello card. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateTrelloCardCustomFields - -
- - -Update custom fields on a Trello card. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetCardCustomFieldItems - -
- - -Retrieve custom field items for a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier for the Trello card whose custom field items you want to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.AddCommentToTrelloCard - -
- - -Add a comment to a specific Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card where the comment will be added. -- **comment_text** (`string`, required) The content of the comment to be added to the Trello card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.AddLabelToTrelloCard - -
- - -Add a label to a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier for the specific Trello card. -- **label_id** (`string`, optional) The ID of the label to add to the Trello card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.AddMemberToTrelloCard - -
- - -Add a member to a specified Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier for the Trello card to which a member will be added. It is required to specify which card the member should be added to. -- **member_id_to_add** (`string`, optional) The ID of the member to add to the specified Trello card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateTrelloCardLabel - -
- - -Add a new label to a specific Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card to which the label will be added. -- **label_color** (`string`, required) Specify a valid Trello label color or use 'null'. Check Trello's documentation for available colors. -- **label_name** (`string`, optional) The name for the label to add to the Trello card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.MarkTrelloCardNotificationsRead - -
- - -Mark Trello card notifications as read. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card whose notifications need to be marked as read. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RemoveLabelFromTrelloCard - -
- - -Remove a specific label from a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier for the Trello card from which the label will be removed. -- **label_id_to_remove** (`string`, required) The ID of the label you want to remove from the Trello card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RemoveMemberFromCard - -
- - -Removes a member from a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier for the Trello card from which the member will be removed. -- **member_id_to_remove** (`string`, required) The ID of the member to remove from the Trello card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RemoveMemberVote - -
- - -Remove a member's vote from a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier of the Trello card from which to remove the vote. -- **member_id_to_remove_vote** (`string`, required) The ID of the member whose vote is to be removed from the Trello card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateTrelloChecklistItem - -
- - -Update an item in a Trello card checklist. - -**Parameters** - -- **card_id** (`string`, required) The unique identifier for the Trello card where the checklist item is located. -- **checklist_id** (`string`, required) The ID of the checklist item you want to update on the Trello card. -- **checklist_item_id** (`string`, required) The unique ID of the checklist item that needs to be updated on the Trello card. -- **position_in_checklist** (`string`, optional) Position the checklist item at the 'top', 'bottom', or a specific order with a positive float. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteTrelloCardChecklist - -
- - -Delete a checklist from a Trello card. - -**Parameters** - -- **card_id** (`string`, required) The ID of the Trello card from which the checklist will be deleted. -- **checklist_id** (`string`, required) The ID of the checklist to delete from the Trello card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateTrelloChecklist - -
- - -Create a new checklist in Trello. - -**Parameters** - -- **card_id** (`string`, required) The unique ID of the Trello card where the checklist will be added. -- **checklist_name** (`string`, optional) The name of the checklist to be created. It should be a string with 1 to 16384 characters. -- **checklist_position** (`string`, optional) The position of the checklist on the card. Accepts 'top', 'bottom', or a positive number indicating specific placement. -- **source_checklist_id** (`string`, optional) The ID of the checklist to be copied into the new checklist. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetChecklistById - -
- - -Retrieve a specific Trello checklist by ID. - -**Parameters** - -- **checklist_id** (`string`, required) Provide the ID of the Trello checklist you want to retrieve. -- **checkitem_fields_to_return** (`string`, optional) Fields on the checkItem to return if checkItems are included. Use `all` or a comma-separated list of available fields like `name`, `type`, `due`, etc. -- **checklist_fields** (`string`, optional) Specify `all` or a comma-separated list of checklist fields to return. -- **include_cards** (`string`, optional) Specify which cards associated with the checklist should be returned. Valid options are: 'all', 'closed', 'none', 'open', 'visible'. -- **return_check_items** (`string`, optional) Specify whether to return check items on the checklist, using 'all' or 'none'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateTrelloChecklist - -
- - -Update an existing checklist on Trello. - -**Parameters** - -- **checklist_id** (`string`, required) ID of the checklist to update on Trello. This is required to specify which checklist needs updating. -- **checklist_name** (`string`, optional) Name of the checklist to update. Must be 1 to 16,384 characters long. -- **checklist_position** (`string`, optional) Specify the position of the checklist on the card. Options are `top`, `bottom`, or a positive number indicating the precise position. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteTrelloChecklist - -
- - -Deletes a checklist from Trello using its ID. - -**Parameters** - -- **checklist_id** (`string`, required) The unique identifier of the checklist to be deleted from Trello. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetChecklistField - -
- - -Retrieve a specific field from a Trello checklist. - -**Parameters** - -- **checklist_field_to_retrieve** (`string`, required) Specify the field of the checklist to retrieve: 'name' or 'pos'. -- **checklist_id** (`string`, required) The unique identifier of the checklist to retrieve a specific field from. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateChecklistField - -
- - -Updates a specific field of a checklist on Trello. - -**Parameters** - -- **checklist_field** (`string`, required) Specify the checklist field to update. Options are 'name' or 'pos'. -- **checklist_id** (`string`, required) ID of the checklist to be updated. This is required to specify which checklist field to modify. -- **checklist_name_value** (`string`, required) The new name for the checklist. Must be a string of length 1 to 16384. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetBoardFromChecklist - -
- - -Retrieve the board associated with a checklist on Trello. - -**Parameters** - -- **checklist_id** (`string`, required) ID of the checklist to identify which board it is associated with on Trello. -- **board_fields_selection** (`string`, optional) Specify 'all' or a comma-separated list of board fields to retrieve. Default is 'all'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetCardFromChecklist - -
- - -Retrieve card details for a specified checklist. - -**Parameters** - -- **checklist_id** (`string`, required) The unique identifier of the Trello checklist to retrieve the associated card. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetChecklistCheckitems - -
- - -Retrieve checkitems from a Trello checklist. - -**Parameters** - -- **checklist_id** (`string`, required) The unique identifier of the checklist to retrieve its checkitems. -- **fields_to_retrieve** (`string`, optional) Specify which fields to retrieve from the checklist items. Options include: `all`, `name`, `nameData`, `pos`, `state`, `type`, `due`, `dueReminder`, `idMember`. -- **list_checkitems_filter** (`string`, optional) Specify whether to retrieve 'all' checkitems or 'none'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateCheckitemInChecklist - -
- - -Create a new checkitem in a Trello checklist. - -**Parameters** - -- **checkitem_name** (`string`, required) The name of the new check item on the checklist. Must be between 1 and 16384 characters long. -- **checklist_id** (`string`, required) The unique ID of the checklist where the checkitem will be created. -- **checkitem_due_date** (`string`, optional) Specify the due date for the checkitem in ISO 8601 format (e.g., YYYY-MM-DD). -- **checkitem_position** (`string`, optional) Position of the check item in checklist: `top`, `bottom`, or a positive number. -- **due_reminder_minutes** (`number`, optional) Minutes before the due date to trigger a reminder for the checkitem. -- **is_checkitem_checked** (`boolean`, optional) Set to true if the check item should be checked upon creation. Otherwise, it will be unchecked. -- **member_id** (`string`, optional) ID of the member to associate with the checkitem. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetChecklistItem - -
- - -Retrieve a specific checkitem from a checklist on Trello. - -**Parameters** - -- **check_item_id** (`string`, required) ID of the specific check item to retrieve from the checklist. -- **checklist_id** (`string`, required) The unique identifier of the checklist containing the desired checkitem. -- **checkitem_fields** (`string`, optional) Specify which fields of the checkitem to retrieve. Options include `all`, `name`, `nameData`, `pos`, `state`, `type`, `due`, `dueReminder`, `idMember`. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RemoveChecklistItem - -
- - -Remove an item from a Trello checklist. - -**Parameters** - -- **check_item_id** (`string`, required) The ID of the specific checklist item to be removed from Trello. -- **checklist_id** (`string`, required) ID of the checklist from which the item will be removed. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateTrelloCustomField - -
- - -Create a new custom field on a Trello board. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetCustomField - -
- - -Retrieve details of a Trello custom field by ID. - -**Parameters** - -- **custom_field_id** (`string`, required) Provide the ID of the custom field to retrieve its details in Trello. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateCustomFieldDefinition - -
- - -Update a Custom Field definition in Trello. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **custom_field_id** (`string`, optional) The unique identifier for the Custom Field to update in Trello. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteTrelloCustomField - -
- - -Delete a custom field from a Trello board. - -**Parameters** - -- **custom_field_id** (`string`, required) The unique identifier of the Custom Field to be deleted from the Trello board. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.AddDropdownOptionCustomField - -
- - -Add an option to a dropdown Custom Field in Trello. - -**Parameters** - -- **custom_field_id** (`string`, required) The unique identifier of the custom field to which a dropdown option will be added. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetCustomFieldOptions - -
- - -Retrieve options of a Trello drop-down custom field. - -**Parameters** - -- **custom_field_id** (`string`, required) The ID of the Trello custom field to retrieve options for. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetCustomFieldOptionTrello - -
- - -Retrieve a specific dropdown option from Trello custom fields. - -**Parameters** - -- **custom_field_item_id** (`string`, required) ID of the custom field item in Trello to retrieve the dropdown option for. -- **custom_field_option_id** (`string`, required) ID of the Trello custom field option to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteCustomFieldOption - -
- - -Delete an option from a Trello Custom Field dropdown. - -**Parameters** - -- **custom_field_item_id** (`string`, required) ID of the customfielditem to identify which dropdown option to delete. -- **custom_field_option_id** (`string`, required) ID of the custom field option to delete from the dropdown list. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ListAvailableEmoji - -
- - -Retrieve a list of available emojis on Trello. - -**Parameters** - -- **include_spritesheet_urls** (`boolean`, optional) Set to true to include spritesheet URLs in the response. -- **locale_for_emoji** (`string`, optional) Specify the locale for returning emoji descriptions and names. Defaults to the logged-in member's locale. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetEnterpriseById - -
- - -Retrieve details of a Trello enterprise by ID. - -**Parameters** - -- **enterprise_id** (`string`, required) The unique identifier for the enterprise you want to retrieve from Trello. -- **enterprise_fields** (`string`, optional) Comma-separated list of fields to include, such as `id`, `name`, `displayName`, `prefs`, and more. -- **include_paid_account_information** (`boolean`, optional) Include paid account information in the returned workspace objects if set to true. If false, it will be excluded. -- **member_count** (`integer`, optional) Specify the number of members to retrieve, ranging from 0 to 100. -- **member_fields** (`string`, optional) Specify one of: `avatarHash`, `fullName`, `initials`, `username` to filter member fields. -- **member_filter_query** (`string`, optional) A SCIM-style query to filter members. Overrides member types ('normal', 'admins', etc.) and paginates the member array. -- **member_inclusion_type** (`string`, optional) Specify which member roles to include: `none`, `normal`, `admins`, `owners`, `all`. -- **member_sort** (`string`, optional) Use a SCIM-style sorting value prefixed by '-' for descending or ascending if no prefix. Note: Deprecated `member_sortBy` parameter. -- **member_sorting_order** (`string`, optional) SCIM-style sorting value for members. Use '-' prefix for descending order, no prefix for ascending. -- **member_start_index** (`integer`, optional) Specify the starting index for paginated members. Accepts any integer between 0 and 100. -- **organization_fields_value** (`string`, optional) Specify valid values for nested organization fields as accepted by the API. -- **organization_inclusion** (`string`, optional) Determine scope of organizations to retrieve with the enterprise: 'none', 'members', 'public', or 'all'. -- **organization_memberships_list** (`string`, optional) Comma-separated list indicating organization memberships such as `me`, `normal`, `admin`, `active`, `deactivated`. -- **sort_members_order** (`string`, optional) Order the sorting of members. Acceptable values are `ascending`, `descending`, `asc`, or `desc`. Note: This parameter is deprecated and `member_sort` is preferred. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetEnterpriseAuditLog - -
- - -Retrieve audit log actions for a specific enterprise. - -**Parameters** - -- **enterprise_id** (`string`, required) Specify the ID of the enterprise to retrieve audit log actions for. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetEnterpriseAdmins - -
- - -Retrieve admin members of an enterprise by ID. - -**Parameters** - -- **enterprise_id** (`string`, required) The ID of the enterprise to retrieve admin members for. -- **admin_fields** (`string`, optional) Specify fields to retrieve for each admin member; valid values as per Trello's nested member field resource. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetEnterpriseSignupUrl - -
- - -Retrieve the signup URL for a specified enterprise. - -**Parameters** - -- **enterprise_id** (`string`, required) ID of the enterprise to retrieve the signup URL for. -- **authenticate** (`boolean`, optional) Set to 'True' if authentication is required for the API call, otherwise 'False'. -- **has_confirmation_been_accepted** (`boolean`, optional) Indicates whether the user has accepted the required confirmations before being redirected. -- **redirect_url** (`string`, optional) A valid URL where the user will be redirected after signup. -- **terms_of_service_accepted** (`boolean`, optional) Indicate whether the user has consented to the Trello Terms of Service before being redirected to the enterprise signup page. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetEnterpriseUsers - -
- - -Fetch users from a Trello enterprise. - -**Parameters** - -- **enterprise_id** (`string`, required) ID of the Trello enterprise to retrieve users from. -- **active_date_filter** (`string`, optional) Returns only Trello users active since this date (inclusive). Provide the date in YYYY-MM-DD format. -- **active_since_date** (`string`, optional) Filter users active since this date (inclusive). Use YYYY-MM-DD format. -- **fetch_deactivated_members** (`boolean`, optional) When true, returns members who have been deactivated; when false, returns members who have not. Both active and deactivated members are returned if unspecified. -- **licensed_members_only** (`boolean`, optional) Set to true to retrieve only members with a license for the Trello Enterprise; false for only unlicensed members. Leave unspecified to include both licensed and unlicensed members. -- **only_admin_members** (`boolean`, optional) Set to True to return only administrators of the Trello Enterprise. If False, return non-admins. Unspecified returns both. -- **pagination_cursor** (`string`, optional) Cursor value to fetch the next set of user results. Use the cursor received from a previous response to continue fetching more users. -- **return_board_guests** (`boolean`, optional) Set to true to return members who are guests on boards; false to return only non-guests. If not set, both are included. -- **return_managed_members_only** (`boolean`, optional) Specify true to return only managed members, false for only unmanaged, or omit for both. -- **search_query** (`string`, optional) String to search for members by email or full name starting with this value. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetEnterpriseMembers - -
- - -Retrieve members of a specific enterprise from Trello. - -**Parameters** - -- **enterprise_id** (`string`, required) The unique ID of the enterprise whose members you want to retrieve. -- **board_fields_to_include** (`string`, optional) Specify valid board field values to include from the nested board resource. -- **member_count_filter** (`string`, optional) A SCIM-style filter to specify the number of members to retrieve. Use this to filter results according to SCIM standards. -- **member_field_list** (`string`, optional) A comma-separated list of member fields to include, e.g., 'fullName,email'. -- **organization_fields** (`string`, optional) Valid organization field values allowed by the Trello nested organization field resource. This customizes which organization data is returned. -- **scim_style_filter** (`string`, optional) A SCIM-style query to filter enterprise members, taking precedence over other member settings. -- **sort_by** (`string`, optional) Deprecated: Use 'sort' instead. A SCIM-style value to sort members, affecting pagination. -- **sorting_order** (`string`, optional) Specify how to sort members using a SCIM-style value. Prefix with `-` for descending order; otherwise, ascending. -- **start_index** (`integer`, optional) The starting point for pagination, using an integer between 0 and 9999. -- **use_deprecated_sort_order** (`string`, optional) Specify the sorting order for members: 'ascending', 'descending', 'asc', 'desc'. Deprecated; use 'sort' instead. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetEnterpriseMember - -
- - -Retrieve a specific member of an enterprise by ID. - -**Parameters** - -- **enterprise_id** (`string`, required) The unique identifier for the enterprise to retrieve. This is required to specify which enterprise's member data you are accessing. -- **member_id** (`string`, required) The ID of the member resource you want to retrieve details for within an enterprise. -- **board_fields** (`string`, optional) Comma-separated list of board fields to retrieve, as defined by the Trello nested board resource. -- **member_field_values** (`string`, optional) Comma-separated valid values for member fields to retrieve details about a specific enterprise member. -- **organization_field_values** (`string`, optional) Comma-separated list of organization fields to include. Refer to Trello's nested organization field resource for valid values. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CheckOrganizationTransferability - -
- - -Check if an organization can be transferred to an enterprise. - -**Parameters** - -- **enterprise_id** (`string`, required) ID of the Enterprise to check for organization transferability. -- **organization_id** (`string`, required) The ID of the organization to check for transferability. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetClaimableWorkspaces - -
- - -Retrieve claimable workspaces for an enterprise by ID. - -**Parameters** - -- **enterprise_id_to_retrieve_workspaces** (`string`, required) The unique ID of the enterprise to retrieve claimable workspaces for. -- **active_since_date** (`string`, optional) Specify the date in YYYY-MM-DD format to filter workspaces active up to this date. -- **enterprise_name** (`string`, optional) The name of the enterprise for which to retrieve claimable workspaces. -- **inactive_since_date** (`string`, optional) Date in YYYY-MM-DD format to search for workspace inactiveness. -- **maximum_workspaces** (`integer`, optional) Sets the maximum number of workspaces to retrieve and sort. Use an integer to specify the limit. -- **sort_order_cursor** (`string`, optional) Specifies the sorting cursor for the order in which matching workspaces are returned. Use this to paginate results. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetPendingWorkspacesByEnterpriseId - -
- - -Retrieve pending workspaces for an enterprise by ID. - -**Parameters** - -- **enterprise_id** (`string`, required) ID of the enterprise to retrieve pending workspaces for. -- **active_since_date** (`string`, optional) Date in YYYY-MM-DD format to filter active workspaces up to a certain date. -- **search_up_to_inactive_date** (`string`, optional) Date in YYYY-MM-DD format indicating the search cutoff for workspace inactiveness. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateEnterpriseAuthToken - -
- - -Create an auth token for a Trello enterprise. - -**Parameters** - -- **enterprise_id** (`string`, required) The unique ID of the enterprise for which the auth token will be generated. -- **token_expiration** (`string`, optional) Specify the token's duration: `1hour`, `1day`, `30days`, or `never`. This determines how long the token will be valid. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetEnterpriseOrganizations - -
- - -Retrieve organizations associated with a specific enterprise. - -**Parameters** - -- **enterprise_id** (`string`, required) ID of the Enterprise to retrieve its organizations. -- **number_of_organizations_to_retrieve** (`integer`, optional) Specify the number of organizations to retrieve. Must be an integer between 0 and 100. -- **organization_fields** (`string`, optional) Comma-separated list of organization fields to include in the response. Valid options are: 'id', 'name'. -- **organization_filter** (`string`, optional) Optional filter for specifying which organizations to include in the response. -- **starting_index** (`integer`, optional) The starting index for fetching organizations, must be an integer greater than or equal to 1. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.TransferOrganizationToEnterprise - -
- - -Transfer an organization to an enterprise. - -**Parameters** - -- **enterprise_id** (`string`, required) The ID of the Enterprise to which the organization will be transferred. -- **organization_id** (`string`, required) ID of the organization to be transferred to the enterprise in Trello. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateEnterpriseMemberLicense - -
- - -Update an enterprise member's license status in Trello. - -**Parameters** - -- **enterprise_id** (`string`, required) The unique identifier for the enterprise. Required for license updates. -- **grant_enterprise_license** (`boolean`, required) Boolean indicating if the member should be given an Enterprise license (true) or not (false). -- **member_id** (`string`, required) The unique ID of the Trello member to update license status. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeactivateEnterpriseMember - -
- - -Deactivate a member in a Trello enterprise. - -**Parameters** - -- **deactivate_member** (`boolean`, required) Set to True to deactivate the member, False to keep active. -- **enterprise_id** (`string`, required) The ID of the enterprise from which the member should be deactivated. -- **member_id_to_deactivate** (`string`, required) The ID of the member to deactivate in a Trello enterprise. -- **board_fields_to_include** (`string`, optional) Specify which board fields should be included. Use values like 'id', 'name', 'desc', etc. -- **nested_member_fields** (`string`, optional) Comma-separated list of valid values for the nested member field resource. -- **organization_fields** (`string`, optional) Comma-separated list of fields related to the organization, such as 'id' or 'name'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.MakeMemberAdminEnterprise - -
- - -Promote a member to admin in a Trello enterprise. - -**Parameters** - -- **enterprise_id** (`string`, required) The ID of the enterprise for which you want to promote a member to admin. -- **member_id_to_promote** (`string`, required) ID of the member to be promoted to admin of the enterprise. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RemoveEnterpriseAdmin - -
- - -Remove a member as admin from an enterprise. - -**Parameters** - -- **enterprise_id** (`string`, required) The Trello Enterprise ID from which to remove the member as admin. -- **member_id_to_remove** (`string`, required) ID of the member to be removed as an admin from the enterprise. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RemoveOrganizationFromEnterprise - -
- - -Remove an organization from a Trello enterprise. - -**Parameters** - -- **enterprise_id** (`string`, required) The ID of the Trello enterprise from which the organization will be removed. -- **organization_id_to_remove** (`string`, required) The ID of the organization to be removed from the Trello enterprise. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloLabelInfo - -
- - -Retrieve information about a specific Trello label. - -**Parameters** - -- **label_id** (`string`, required) The unique identifier for the Trello label to retrieve information about. -- **label_fields** (`string`, optional) Specify 'all' or a comma-separated list of label fields to retrieve details about. Refer to Trello's field documentation for options. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateTrelloLabel - -
- - -Update Trello label details using its ID. - -**Parameters** - -- **label_id** (`string`, required) The unique identifier for the Trello label to update. -- **label_color** (`string`, optional) Specify the new color for the label. Allowed colors: yellow, purple, blue, red, green, orange, black, sky, pink, lime. -- **new_label_name** (`string`, optional) The new name for the Trello label to be updated. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteLabelById - -
- - -Delete a label in Trello by its ID. - -**Parameters** - -- **label_id** (`string`, required) The unique identifier for the label to be deleted from Trello. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateTrelloLabelField - -
- - -Update a specific field on a Trello label. - -**Parameters** - -- **label_field_to_update** (`string`, required) Specify the label field to update, such as 'color' or 'name'. -- **label_id** (`string`, required) The unique identifier of the Trello label to update. -- **new_field_value** (`string`, required) The new value to update the specified label field with, such as a new color or name. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateNewLabelOnBoard - -
- - -Create a new label on a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The ID of the Trello board on which to create the new label. This is required to specify the target board. -- **label_color** (`string`, required) Specify the color for the label. Choose from yellow, purple, blue, red, green, orange, black, sky, pink, or lime. -- **label_name** (`string`, required) The name assigned to the new label being created on the Trello board. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloListInfo - -
- - -Retrieve details for a specific Trello list using its ID. - -**Parameters** - -- **list_id** (`string`, required) The unique identifier of the Trello list to retrieve information for. -- **list_fields** (`string`, optional) Specify 'all' or provide a comma-separated list of list field names to retrieve specific details. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateTrelloList - -
- - -Update the properties of a Trello list. - -**Parameters** - -- **list_id** (`string`, required) The unique ID of the Trello list to be updated. -- **archive_list** (`boolean`, optional) Set to true to archive the list, false to keep it open. -- **board_id_destination** (`string`, optional) ID of the board to which the list will be moved. -- **is_subscribed** (`boolean`, optional) Whether the active member is subscribed to this list. Use `true` to subscribe and `false` to unsubscribe. -- **new_list_name** (`string`, optional) The new name to assign to the Trello list. -- **new_list_position** (`string`, optional) New position for the list: 'top', 'bottom', or a positive floating point number. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateTrelloList - -
- - -Create a new list on a Trello board. - -**Parameters** - -- **board_id** (`string`, required) The unique string ID of the Trello board where the list will be created. -- **list_name** (`string`, required) The name of the new list to be created on the Trello board. -- **list_position** (`string`, optional) Position of the list on the board: `top`, `bottom`, or a positive floating number to specify exact placement. -- **source_list_id** (`string`, optional) ID of the list to copy into the new list. Leave blank to create a new list without copying. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ArchiveAllCardsInList - -
- - -Archives all cards in a specified Trello list. - -**Parameters** - -- **list_id** (`string`, required) The unique identifier of the Trello list to archive all cards from. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.TrelloMoveAllCardsInList - -
- - -Move all cards from one list to another in Trello. - -**Parameters** - -- **destination_board_id** (`string`, required) The board ID where the cards will be moved to. -- **source_list_id** (`string`, required) The ID of the list from which all cards will be moved. -- **target_list_id** (`string`, required) The ID of the Trello list to which all cards should be moved. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ArchiveOrUnarchiveTrelloList - -
- - -Archive or unarchive a Trello list. - -**Parameters** - -- **list_id** (`string`, required) The unique identifier of the Trello list to archive or unarchive. -- **archive_list** (`string`, optional) Set to true to archive the list or false to unarchive. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.MoveTrelloListToBoard - -
- - -Reorganize Trello by moving a list to another board. - -**Parameters** - -- **board_id_for_list_movement** (`string`, required) The ID of the board to which the Trello list should be moved. -- **list_id** (`string`, required) The unique ID of the Trello list to be moved. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RenameTrelloList - -
- - -Renames a Trello list by its ID. - -**Parameters** - -- **list_field_to_update** (`string`, required) Specifies the list field to update, such as 'name', 'pos', or 'subscribed'. -- **trello_list_id** (`string`, required) The unique identifier for the Trello list you want to rename. -- **new_list_name** (`string`, optional) The new name for the Trello list. Provide a descriptive and clear title to easily identify the list. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloListActions - -
- - -Retrieve actions performed on a specific Trello list. - -**Parameters** - -- **list_id** (`string`, required) The unique ID of the Trello list to retrieve actions for. -- **action_types** (`string`, optional) Comma-separated list of action types to filter actions on the Trello list. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetBoardOfList - -
- - -Retrieve the board associated with a specific list on Trello. - -**Parameters** - -- **list_id** (`string`, required) The unique ID of the Trello list to identify its board. -- **board_fields** (`string`, optional) Specify 'all' for all fields, or provide a comma-separated list of desired board fields. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ListTrelloCardsInList - -
- - -Fetches all cards from a specified Trello list. - -**Parameters** - -- **list_id** (`string`, required) The unique ID of the Trello list to fetch cards from. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloMemberInfo - -
- - -Fetch information about a Trello member profile. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member to retrieve information for. -- **board_backgrounds_option** (`string`, optional) Specify type of board backgrounds: `all`, `custom`, `default`, `none`, or `premium`. -- **include_actions** (`string`, optional) Include actions related to the member. Refer to the Actions Nested Resource for details. -- **include_boards_details** (`string`, optional) Specify if you want to include detailed information about the member's boards. Refer to the Boards Nested Resource for options. -- **include_boards_invited** (`string`, optional) Specify `all` or a comma-separated list of board states like closed, members, open, etc., to filter invited boards. -- **include_card_details** (`string`, optional) Include detailed information about cards associated with the member. Refer to the Cards Nested Resource for options. -- **include_custom_board_backgrounds** (`string`, optional) Specify whether to include custom board backgrounds. Use `all` for all backgrounds or `none` to exclude them. -- **include_custom_emoji** (`string`, optional) Specify whether to include all custom emojis ('all') or none ('none') in the response. -- **include_custom_stickers** (`string`, optional) Specify if custom stickers should be included. Use `all` to include or `none` to exclude. -- **include_invited_organizations** (`string`, optional) Specify the scope of invited organizations to include: all, members, none, or public. -- **include_paid_account_information** (`boolean`, optional) Include paid account information in the returned member object when true. -- **include_paid_account_information_in_workspace** (`boolean`, optional) Include paid account information in the returned workspace object if true. -- **include_saved_searches** (`boolean`, optional) Set to true to include saved searches information in the response, false to exclude. -- **include_tokens** (`string`, optional) Include tokens associated with the member. Options: `all` to include, `none` to exclude. -- **invited_boards_fields** (`string`, optional) Specify 'all' or a comma-separated list of board fields for invited boards. Options include: id, name, desc, and more. -- **member_fields_selection** (`string`, optional) Specify 'all' or a comma-separated list of member fields to retrieve information about. Use 'all' to retrieve all available member fields. -- **notification_details** (`string`, optional) Fetch notification information related to the member. Refer to the Notifications Nested Resource for options. -- **organization_fields_selection** (`string`, optional) Specify 'all' or provide a comma-separated list of organization fields like 'id', 'name'. -- **organization_fields_to_include** (`string`, optional) Specify 'all' or a comma-separated list of organization fields like 'id', 'name' to include in the response. -- **organization_visibility** (`string`, optional) Specify organization visibility: `all`, `members`, `none`, or `public`. -- **return_board_stars** (`boolean`, optional) Set to true to return boardStars in the response, otherwise false to exclude them. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateTrelloMember - -
- - -Update Trello member details. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member to be updated. -- **avatar_source** (`string`, optional) Source of the avatar; must be one of: 'gravatar', 'none', or 'upload'. -- **enable_color_blind_mode** (`boolean`, optional) Set to true to enable color blind mode preferences for the member, false to disable. -- **member_bio** (`string`, optional) Biography of the member. Provide a brief description or update to the member's bio as a string. -- **member_initials** (`string`, optional) New initials for the member. Must be 1-4 characters long. -- **new_full_name** (`string`, optional) The new name for the member. Ensure it does not begin or end with a space. -- **new_username** (`string`, optional) The new username for the Trello member. It must be at least 3 characters long and can only contain lowercase letters, underscores, and numbers. The username must be unique within Trello. -- **preferred_locale** (`string`, optional) Specifies the preferred locale for the member's settings. This should be a valid locale string (e.g., 'en_US'). -- **summary_notification_interval** (`integer`, optional) Time interval in minutes for summary notifications. Use `-1` to disable, `1` for every minute, or `60` for hourly notifications. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetMemberProperty - -
- - -Retrieve a specific property of a Trello member. - -**Parameters** - -- **member_field_name** (`string`, required) Specify the name of the member field to retrieve, such as 'username', 'email', etc. -- **member_id_or_username** (`string`, required) The ID or username of the Trello member whose property is to be retrieved. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ListMemberActions - -
- - -Retrieve a list of actions for a specified member. - -**Parameters** - -- **member_identifier** (`string`, required) The ID or username of the Trello member whose actions you want to retrieve. -- **action_types_filter** (`string`, optional) A comma-separated list of action types to filter the actions of a Trello member. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetMemberBoardBackgrounds - -
- - -Retrieve custom board backgrounds for a Trello member. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member whose board backgrounds are being retrieved. -- **board_background_filter** (`string`, optional) Specify the filter for board backgrounds: `all`, `custom`, `default`, `none`, or `premium`. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UploadTrelloBoardBackground - -
- - -Upload a new board background on Trello. - -**Parameters** - -- **background_image_file_path** (`string`, required) The file path for the image to be uploaded as a new board background. Provide the full path or a URL to the image file. -- **member_id_or_username** (`string`, required) The ID or username of the Trello member to upload the board background for. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetMemberBoardBackground - -
- - -Retrieve a board background for a specific member. - -**Parameters** - -- **board_background_id** (`string`, required) The ID of the board background to retrieve. This is required to specify which background details to fetch for a member. -- **member_id_or_username** (`string`, required) The ID or username of the member whose board background is being retrieved. -- **fields_to_retrieve** (`string`, optional) Specify 'all' or a comma-separated list of fields to retrieve: 'brightness', 'fullSizeUrl', 'scaled', 'tile'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateBoardBackground - -
- - -Update the background of a Trello board. - -**Parameters** - -- **board_background_id** (`string`, required) ID of the board background to update. -- **member_id_or_username** (`string`, required) The ID or username of the Trello member associated with the board to update. -- **background_brightness** (`string`, optional) Set the brightness level for the board background. Options are `dark`, `light`, or `unknown`. -- **tile_background** (`boolean`, optional) Set to true to tile the board background. False to not tile it. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteBoardBackground - -
- - -Delete a board background from a member's Trello board. - -**Parameters** - -- **board_background_id** (`string`, required) The unique identifier for the board background to be deleted. -- **member_id_or_username** (`string`, required) The ID or username of the Trello member whose board background you want to delete. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ListMemberBoardStars - -
- - -Retrieve a member's board stars on Trello. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member whose board stars are to be listed. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.StarTrelloBoardForMember - -
- - -Star a Trello board on behalf of a specified member. - -**Parameters** - -- **board_id_to_star** (`string`, required) The unique identifier of the Trello board to be starred. -- **board_star_position** (`string`, required) Specify the position of the starred board: `top`, `bottom`, or a positive float for custom positioning. -- **member_id_or_username** (`string`, required) The ID or username of the Trello member for whom the board is being starred. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetSpecificBoardStar - -
- - -Retrieve details of a specific board star. - -**Parameters** - -- **board_star_id** (`string`, required) The ID of the board star to retrieve details for. -- **member_id_or_username** (`string`, required) The ID or username of the member to retrieve the board star for. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateStarredBoardPosition - -
- - -Update the position of a starred board in Trello. - -**Parameters** - -- **board_star_id** (`string`, required) The unique identifier for the board star to update. -- **member_id_or_username** (`string`, required) The ID or username of the Trello member to update the board position for. -- **new_board_position** (`string`, optional) The new position for the starred board. Options are `top`, `bottom`, or a positive float for custom positioning. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UnstarBoard - -
- - -Unstar a Trello board for a specific member. - -**Parameters** - -- **board_star_id** (`string`, required) The unique ID of the board star to be removed for a specific member. -- **member_id** (`string`, required) The ID or username of the Trello member who wants to unstar the board. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ListUserBoards - -
- - -Retrieve boards a user is a member of on Trello. - -**Parameters** - -- **member_identifier** (`string`, required) The ID or username of the Trello member whose boards are to be retrieved. -- **board_fields** (`string`, optional) Specify `all` or a comma-separated list of board fields to include in the response. Available fields include 'id', 'name', 'desc', 'descData', 'closed', 'idMemberCreator', 'idOrganization', 'pinned', 'url', 'shortUrl', 'prefs', 'labelNames', 'starred', 'limits', 'memberships', 'enterpriseOwned'. -- **board_filter** (`string`, optional) Filter boards by specifying 'all' or a comma-separated list of statuses like 'closed', 'members', 'open', etc. -- **include_lists** (`string`, optional) Specify which lists to include with the boards. Options: `all`, `closed`, `none`, `open`. -- **include_organization** (`boolean`, optional) Set to true to include the Organization object with the Boards. -- **organization_fields_to_include** (`string`, optional) Specifies which organization fields to include, either `all` or a comma-separated list of specific fields like `id` and `name`. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetMemberInvitedBoards - -
- - -Retrieve boards a member is invited to on Trello. - -**Parameters** - -- **member_identifier** (`string`, required) The ID or username of the Trello member to retrieve invited boards for. -- **board_fields_option** (`string`, optional) Specify 'all' or provide a comma-separated list of board fields to retrieve (e.g., 'id,name,desc'). - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetMemberCards - -
- - -Retrieve cards associated with a specific member on Trello. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member to retrieve cards for. -- **card_status_filter** (`string`, optional) Filter cards by status: `all`, `closed`, `complete`, `incomplete`, `none`, `open`, or `visible`. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetCustomBoardBackgrounds - -
- - -Retrieve a member's custom board backgrounds on Trello. - -**Parameters** - -- **member_identifier** (`string`, required) The ID or username of the member to retrieve custom board backgrounds for. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UploadCustomBoardBackground - -
- - -Upload a new custom board background to Trello. - -**Parameters** - -- **background_file_upload** (`string`, required) The file path or URL of the custom board background to upload. It should specify the location of the image file you want to use as the board background. -- **member_id_or_username** (`string`, required) The ID or username of the Trello member for whom the background is being uploaded. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetCustomBoardBackground - -
- - -Get a specific custom board background from Trello. - -**Parameters** - -- **custom_background_id** (`string`, required) The unique identifier for the custom board background to retrieve. -- **member_id_or_username** (`string`, required) The ID or username of the Trello member to retrieve the custom board background for. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateCustomBoardBackground - -
- - -Update a specific custom board background in Trello. - -**Parameters** - -- **custom_background_id** (`string`, required) The ID of the custom board background to be updated in Trello. -- **member_id_or_username** (`string`, required) The Trello ID or username of the member whose board background will be updated. -- **background_brightness** (`string`, optional) Set the brightness of the custom board background. Options: 'dark', 'light', 'unknown'. -- **tile_background** (`boolean`, optional) Indicates whether to tile the board background. Accepts a boolean value. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RemoveCustomBoardBackground - -
- - -Delete a specific custom board background. - -**Parameters** - -- **custom_background_id** (`string`, required) The ID of the custom board background to be deleted. -- **member_id_or_username** (`string`, required) The ID or username of the member whose custom board background will be deleted. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetMemberCustomEmojis - -
- - -Retrieve a Trello member's uploaded custom emojis. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member whose custom emojis are being retrieved. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateCustomEmojiTrello - -
- - -Create a new custom emoji in Trello. - -**Parameters** - -- **emoji_image_file** (`string`, required) Path or URL to the image file for the emoji. The image must be in a supported format. -- **emoji_name** (`string`, required) Provide a name for the emoji, between 2 and 64 characters. -- **member_identifier** (`string`, required) The ID or username of the Trello member to whom the emoji will be added. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetMemberCustomEmoji - -
- - -Retrieve a custom emoji for a Trello member. - -**Parameters** - -- **custom_emoji_id** (`string`, required) The unique identifier for a member's custom emoji on Trello. -- **member_id_or_username** (`string`, required) The ID or username of the Trello member whose custom emoji you want to retrieve. -- **emoji_fields** (`string`, optional) Specify `all` or a comma-separated list of `name`, `url` to determine which fields to return for the custom emoji. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetMemberUploadedStickers - -
- - -Retrieve a Trello member's uploaded stickers. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member whose stickers you want to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UploadCustomStickerToTrello - -
- - -Upload a new custom sticker to a Trello member's account. - -**Parameters** - -- **custom_sticker_file_path** (`string`, required) The file path or URL of the custom sticker to be uploaded for the Trello member. -- **member_id_or_username** (`string`, required) The ID or username of the Trello member to whom the custom sticker will be uploaded. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetMemberCustomSticker - -
- - -Retrieve a member's custom sticker from Trello. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member whose custom sticker is to be retrieved. -- **sticker_id** (`string`, required) The unique identifier for the uploaded sticker. Required to fetch the sticker's details. -- **sticker_fields** (`string`, optional) Specify 'all' or a comma-separated list of 'scaled', 'url' to determine which sticker details to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteCustomSticker - -
- - -Deletes a custom sticker from a Trello member's account. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member whose sticker is to be deleted. -- **sticker_id** (`string`, required) The unique identifier of the uploaded sticker to be deleted. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetMemberNotifications - -
- - -Retrieve a Trello member's notifications. - -**Parameters** - -- **member_identifier** (`string`, required) The ID or username of the Trello member to fetch notifications for. -- **include_display** (`boolean`, optional) Boolean to include display-related data in the response. -- **include_entities** (`boolean`, optional) Include entities in the member's notifications when set to true. -- **include_member_creator_details** (`boolean`, optional) A boolean to include details of the member who created the notifications. True to include, False to exclude. -- **member_creator_fields** (`string`, optional) Specify 'all' or provide a comma-separated list of member fields to include in the response. -- **notification_fields** (`string`, optional) Specify `all` or a comma-separated list of notification fields to retrieve. -- **notification_filter** (`string`, optional) Specify the type of notifications to retrieve: all, createCard, commentCard, etc. -- **notification_id_before** (`string`, optional) Set to retrieve notifications sent before this specific notification ID. -- **notification_limit** (`integer`, optional) The maximum number of notifications to retrieve, capped at 1000. -- **notification_read_status_filter** (`string`, optional) Specify read status to filter notifications: `all`, `read`, or `unread`. -- **page_number** (`integer`, optional) The page number for pagination. Maximum value is 100. -- **since_notification_id** (`string`, optional) A notification ID to start retrieving notifications from. Useful for fetching notifications after a specific point. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetMemberWorkspaces - -
- - -Retrieve a member's workspaces from Trello. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member to retrieve workspaces for. -- **include_paid_account_info** (`boolean`, optional) Include paid account information in the returned workspace object if set to true. -- **organization_fields** (`string`, optional) Specify 'all' or a comma-separated list of organization fields like 'id', 'name'. -- **workspace_filter** (`string`, optional) Specify the type of workspaces to include. Options: `all`, `members` (private), `none`, `public`. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetInvitedWorkspaces - -
- - -Retrieve a member's invited Workspaces. - -**Parameters** - -- **member_identifier** (`string`, required) The ID or username of the Trello member to retrieve their invited Workspaces. -- **organization_fields** (`string`, optional) Specifies the fields to retrieve for each organization. Use 'all' or a comma-separated list like 'id,name'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ListMemberSavedSearches - -
- - -Retrieve a Trello member's saved searches. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member whose saved searches you want to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateSavedSearch - -
- - -Create a saved search for a Trello member. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member for whom the saved search is created. -- **saved_search_name** (`string`, required) The title for the saved search to be created for a Trello member. -- **saved_search_position** (`string`, required) Specify the position of the saved search. Can be 'top', 'bottom', or a positive float for custom placement. -- **search_query** (`string`, required) The search query to be saved for the Trello member. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetSavedSearch - -
- - -Retrieve the details of a saved search from Trello. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member whose saved search you want to retrieve. -- **saved_search_id** (`string`, required) The ID of the saved search to retrieve information about. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateSavedSearch - -
- - -Update the details of a saved search in Trello. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the member whose saved search is being updated. -- **saved_search_id** (`string`, required) The unique identifier of the saved search to be updated in Trello. -- **new_position_for_saved_search** (`string`, optional) Specify the new position for the saved search: 'top', 'bottom', or a positive float for a custom placement. -- **new_saved_search_name** (`string`, optional) The new name for the saved search. -- **new_search_query** (`string`, optional) The new search query to update the saved search in Trello. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteSavedSearchOnTrello - -
- - -Remove a saved search from a Trello member account. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username identifying the member whose saved search is to be deleted. -- **saved_search_id** (`string`, required) The unique identifier of the saved search to delete from a Trello member's account. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetMemberAppTokens - -
- - -Retrieve a Trello member's app tokens list. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member to retrieve app tokens for. -- **include_webhooks** (`boolean`, optional) Set to true to include webhooks in the response; false to exclude them. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateMemberAvatar - -
- - -Create a new avatar for a Trello member. - -**Parameters** - -- **avatar_image_file** (`string`, required) A string representing the image file data for the member's new avatar. It should be a file path or base64-encoded image. -- **member_id_or_username** (`string`, required) The ID or username of the Trello member for whom you want to create an avatar. This identifies the member uniquely. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DismissTrelloMessage - -
- - -Dismiss a specific message in Trello for a member. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member whose message is being dismissed. -- **message_to_dismiss** (`string`, required) The specific message to dismiss for a Trello member. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetMemberNotificationSettings - -
- - -Retrieve a Trello member's notification settings. - -**Parameters** - -- **member_identifier** (`string`, required) The ID or username of the Trello member to retrieve notification settings for. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateMemberNotificationBlockedKeys - -
- - -Update a member's blocked notification keys on Trello. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **member_identifier** (`string`, optional) The unique ID or username of the Trello member to update notification settings for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloMemberNotificationSettings - -
- - -Retrieve blocked notification keys for a Trello member's channel. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the Trello member to retrieve notification settings for. -- **notification_channel** (`string`, required) Specify the channel to block notifications on for the Trello member. Accepted value: 'email'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateTrelloMemberNotificationSettings - -
- - -Update blocked notification keys for a Trello member's channel. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **member_id_or_username** (`string`, optional) The ID or username of the Trello member whose notification settings will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **notification_channel** (`string`, optional) Specify the channel where notifications should be blocked, e.g., 'email'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ModifyMemberNotificationsTrello - -
- - -Update a member's blocked notification keys on Trello. - -**Parameters** - -- **blocked_notification_keys** (`string`, required) List the notification keys to block, either as a singular key or comma-separated list. Valid keys include: notification_comment_card, notification_added_a_due_date, notification_changed_due_date, and others. -- **member_id_or_username** (`string`, required) The ID or username of the Trello member whose notification settings will be updated. -- **notification_channel** (`string`, required) Specify the channel to block notifications on, such as 'email'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloNotification - -
- - -Retrieve detailed Trello notification information by ID. - -**Parameters** - -- **notification_id** (`string`, required) The unique identifier for the Trello notification you want to retrieve. -- **board_fields_list** (`string`, optional) Specify 'all' or a comma-separated list of board fields to include. -- **card_fields_to_include** (`string`, optional) Specify `all` or a comma-separated list of card fields to include, such as `id`, `name`, or `due`. -- **include_board_object** (`boolean`, optional) Include the board object in the response if true. -- **include_card** (`boolean`, optional) Specify True to include the card object. -- **include_creator_member** (`boolean`, optional) Set to true to include the member object of the creator in the response. -- **include_display_object** (`boolean`, optional) Set to true to include the display object with the results. -- **include_entities_object** (`boolean`, optional) Include the entities object in the notification results. Set to true to include, false to exclude. -- **include_list_object** (`boolean`, optional) Include the list object in the notification data if set to true. -- **include_member_fields** (`string`, optional) Specify 'all' or a comma-separated list of member fields to include in the response. -- **include_member_object** (`boolean`, optional) Include the member object in the notification details if set to true. -- **include_notification_fields** (`string`, optional) Specify 'all' or a comma-separated list of notification fields to include, such as 'id', 'unread', or 'type'. -- **include_organization** (`boolean`, optional) Set to true to include the organization object in the response. -- **member_creator_fields** (`string`, optional) Specify 'all' or a comma-separated list of member fields to include the member object of the creator. -- **organization_fields** (`string`, optional) Specify `all` or a comma-separated list of organization fields (e.g., `id`, `name`) to include in the response. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateNotificationReadStatus - -
- - -Update the read status of a Trello notification. - -**Parameters** - -- **notification_id** (`string`, required) The unique identifier for the Trello notification to update. -- **mark_as_unread** (`boolean`, optional) Set to false to mark the notification as read, or true to mark as unread. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloNotificationProperty - -
- - -Retrieve a specific property of a Trello notification. - -**Parameters** - -- **notification_id** (`string`, required) The unique identifier of the Trello notification to query. -- **notification_property_field** (`string`, required) Specify the property field of the Trello notification to retrieve. Options include: id, unread, type, date, dateRead, data, card, board, idMemberCreator, idAction, reactions. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.MarkAllNotificationsRead - -
- - -Marks all Trello notifications as read. - -**Parameters** - -- **mark_as_read** (`boolean`, optional) Specify true to mark notifications as read or false to mark as unread. Defaults to true. -- **notification_ids** (`array[string]`, optional) A list of notification IDs to mark as read or unread. Useful for grouping related notifications. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.MarkNotificationAsUnread - -
- - -Mark a Trello notification as unread. - -**Parameters** - -- **notification_id** (`string`, required) The unique ID of the Trello notification you want to mark as unread. -- **notification_read_status** (`string`, optional) Set this to an empty string to mark the notification as unread. This is a required field to change the read status. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetBoardFromNotification - -
- - -Retrieve the board linked to a specific notification. - -**Parameters** - -- **notification_id** (`string`, required) The unique identifier of the Trello notification to retrieve associated board details. -- **board_fields** (`string`, optional) Specify 'all' or a comma-separated list of board fields (e.g., 'name,desc,url'). - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetNotificationCard - -
- - -Retrieve the card linked to a specific notification. - -**Parameters** - -- **notification_id** (`string`, required) The unique ID of the notification for which the associated card details are being fetched. -- **card_fields** (`string`, optional) Specify 'all' or a comma-separated list of card fields like 'id', 'name', etc., to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloNotificationList - -
- - -Retrieve the list a Trello notification is associated with. - -**Parameters** - -- **notification_id** (`string`, required) The ID of the Trello notification to retrieve the associated list for. -- **notification_fields** (`string`, optional) Specify `all` or a comma-separated list of fields for the list associated with the notification. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetNotificationMemberDetails - -
- - -Retrieve information about the member involved in a notification. - -**Parameters** - -- **notification_id** (`string`, required) The ID of the Trello notification to get details about the member involved. -- **member_fields** (`string`, optional) Specify 'all' or a comma-separated list of member fields to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetNotificationCreator - -
- - -Retrieve the creator of a Trello notification. - -**Parameters** - -- **notification_id** (`string`, required) The ID of the Trello notification to retrieve the creator's details. -- **member_fields** (`string`, optional) Specify `all` or a comma-separated list of member fields to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetAssociatedOrganizationNotifications - -
- - -Retrieve the organization associated with a notification. - -**Parameters** - -- **notification_id** (`string`, required) Provide the ID of the Trello notification to retrieve its associated organization. -- **organization_fields** (`string`, optional) Specify 'all' or a comma-separated list of organization fields ('id', 'name') to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateWorkspaceTrello - -
- - -Create a new Trello Workspace. - -**Parameters** - -- **display_name** (`string`, required) The name to display for the Trello Workspace. This is how the Workspace will be labeled in Trello. -- **website_url** (`string`, optional) A URL for the workspace starting with `http://` or `https://`. -- **workspace_description** (`string`, optional) A detailed description for the Trello Workspace. -- **workspace_name** (`string`, optional) A lowercase alphanumeric string, min 3 characters, underscores allowed. Invalid characters are removed. Unique name is substituted if conflict occurs. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetOrganizationDetails - -
- - -Retrieve details about a Trello organization. - -**Parameters** - -- **organization_id_or_name** (`string`, required) The unique ID or name of the Trello organization to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateOrganizationTrello - -
- - -Updates an organization's details in Trello. - -**Parameters** - -- **organization_id_or_name** (`string`, required) The ID or name of the Trello organization to update. -- **google_apps_associated_domain** (`string`, optional) The Google Apps domain to link this organization to. -- **google_apps_version** (`integer`, optional) Set the Google Apps version to `1` or `2` for the organization. -- **new_display_name** (`string`, optional) A new display name for the organization. It must be at least 1 character long without leading or trailing spaces. -- **organization_description** (`string`, optional) A new description for the organization. Provide relevant and concise details. -- **organization_invite_restriction** (`string`, optional) An email address with optional wildcard characters to restrict organization invites. Example: `subdomain.*.trello.com` -- **organization_new_name** (`string`, optional) A unique name for the organization with at least 3 lowercase letters, underscores, and numbers. -- **organization_website** (`string`, optional) A URL for the organization starting with `http://`, `https://`, or `null`. -- **prevent_external_members** (`boolean`, optional) Set to true to prevent non-workspace members from being added to boards inside the Workspace. -- **private_board_visibility** (`string`, optional) Specifies who can create private boards in the organization. Options: `admin`, `none`, `org`. -- **public_board_visibility_permission** (`string`, optional) Who on the Workspace can create public boards. Options are: `admin`, `none`, `org`. -- **workspace_board_visibility_restriction** (`string`, optional) Determines who in the Workspace can create Workspace-visible boards. Accepts one of: `admin`, `none`, `org`. -- **workspace_visibility_permission** (`string`, optional) Set the visibility level of the Workspace page. Accepts 'private' or 'public'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteTrelloOrganization - -
- - -Delete an organization in Trello using its ID. - -**Parameters** - -- **organization_identifier** (`string`, required) The ID or name of the organization to delete in Trello. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetOrganizationField - -
- - -Retrieve a specific field from a Trello organization. - -**Parameters** - -- **organization_field** (`string`, required) Specify the field of the organization to retrieve, such as 'id' or 'name'. -- **organization_identifier** (`string`, required) The unique ID or name of the Trello organization to retrieve information from. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ListWorkspaceActions - -
- - -Retrieve actions related to a specific Trello Workspace. - -**Parameters** - -- **organization_id_or_name** (`string`, required) The ID or name of the Trello Workspace to list actions for. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ListWorkspaceBoards - -
- - -Retrieve boards in a specified Trello Workspace. - -**Parameters** - -- **workspace_identifier** (`string`, required) The ID or name of the Trello Workspace to retrieve boards from. -- **board_fields** (`string`, optional) Specify 'all' or a comma-separated list of board fields such as 'id', 'name', 'desc', etc. This determines which fields to include in the response. -- **board_filter** (`string`, optional) Specify `all` or a comma-separated list of `open`, `closed`, `members`, `organization`, `public` to filter board types. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.StartOrganizationCsvExport - -
- - -Initiate CSV export for a Trello organization. - -**Parameters** - -- **workspace_id_or_name** (`string`, required) The ID or name of the Trello Workspace to export data from. -- **include_attachments** (`boolean`, optional) Set to true to include attachments in the CSV export, otherwise set to false. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RetrieveOrganizationExports - -
- - -Retrieve exports for a Trello organization. - -**Parameters** - -- **workspace_identifier** (`string`, required) The identifier for the Trello Workspace, which can be either its ID or name. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ListWorkspaceMembers - -
- - -Retrieve members of a Trello Workspace by ID. - -**Parameters** - -- **workspace_id_or_name** (`string`, required) The ID or name of the Trello Workspace to retrieve members from. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateOrganizationMembers - -
- - -Update members of a Trello organization. - -**Parameters** - -- **member_email** (`string`, required) The email address of the member to be updated in the organization. -- **member_full_name** (`string`, required) The full name of the member, at least 1 character not beginning or ending with a space. -- **organization_id_or_name** (`string`, required) The ID or name of the Trello organization to update members for. -- **member_role** (`string`, optional) Specify the role of the member, either `admin` or `normal`. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ListWorkspaceMemberships - -
- - -Retrieve memberships of a Trello Workspace. - -**Parameters** - -- **organization_id_or_name** (`string`, required) The ID or name of the Trello Workspace you want to retrieve memberships for. -- **include_member_objects** (`boolean`, optional) Whether to include Member objects with the Workspace memberships. `True` to include, `False` to exclude. -- **membership_filter** (`string`, optional) Filter memberships: use `all` or a comma-separated list of `active`, `admin`, `deactivated`, `me`, `normal`. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetOrganizationMembership - -
- - -Retrieve a specific membership for an organization. - -**Parameters** - -- **membership_id** (`string`, required) The ID of the membership to retrieve details for a specific organization. -- **organization_id_or_name** (`string`, required) The unique ID or name of the organization to fetch membership details for. -- **include_member_object** (`boolean`, optional) Include the Member object in the response when set to true. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetWorkspacePluginData - -
- - -Retrieve organization scoped plugin data for a Trello workspace. - -**Parameters** - -- **organization_id_or_name** (`string`, required) The ID or name of the organization in Trello to retrieve plugin data for a workspace. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ListOrganizationCollections - -
- - -List collections or tags for a specified organization on Trello. - -**Parameters** - -- **organization_id_or_name** (`string`, required) The ID or name of the Trello organization to list collections for. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateOrganizationTag - -
- - -Create a new tag within a specific Trello organization. - -**Parameters** - -- **organization_id_or_name** (`string`, required) The ID or name of the Trello organization where the tag will be created. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.AddOrUpdateWorkspaceMember - -
- - -Add or update a member in a Trello Workspace. - -**Parameters** - -- **member_id_or_username** (`string`, required) The ID or username of the member to add or update in the Trello Workspace. -- **member_role_type** (`string`, required) Specify the role of the member in the workspace. Acceptable values are 'admin' or 'normal'. -- **organization_id_or_name** (`string`, required) The ID or name of the Trello organization to which the member will be added or updated. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RemoveMemberFromWorkspace - -
- - -Remove a member from a Trello Workspace. - -**Parameters** - -- **member_id** (`string`, required) The ID of the member to remove from the Trello Workspace. -- **workspace_identifier** (`string`, required) The ID or name of the Trello Workspace to identify the organization for removal of a member. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateWorkspaceMemberStatus - -
- - -Deactivate or reactivate a member of a workspace. - -**Parameters** - -- **deactivate_member** (`boolean`, required) Set to true to deactivate the member or false to reactivate the member in the workspace. -- **member_id_or_username** (`string`, required) The ID or username of the member whose status needs to be updated in the workspace. -- **organization_id_or_name** (`string`, required) The ID or name of the organization within Trello to update the member status. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.SetWorkplaceLogo - -
- - -Set the logo image for a Workspace. - -**Parameters** - -- **workspace_identifier** (`string`, required) The ID or name of the Trello Workspace for which to set the logo. -- **logo_image_file** (`string`, optional) The image file to set as the Workspace logo. Provide the file path or URL of the image. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteWorkspaceLogo - -
- - -Remove the logo from a Trello Workspace. - -**Parameters** - -- **workspace_id_or_name** (`string`, required) The ID or name of the Trello Workspace to delete the logo from. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteMemberFromWorkspace - -
- - -Remove a member from a Workspace and all Workspace boards. - -**Parameters** - -- **member_id_to_remove** (`string`, required) The ID of the member to be removed from the Workspace. -- **organization_id_or_name** (`string`, required) The ID or name of the Trello organization (Workspace) from which the member is to be removed. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RemoveWorkspaceDomain - -
- - -Remove the associated Google Apps domain from a Workspace. - -**Parameters** - -- **organization_id_or_name** (`string`, required) The ID or name of the Trello organization to dissociate the Google Apps domain from. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RemoveEmailDomainRestriction - -
- - -Remove email domain restriction for Workspace invites. - -**Parameters** - -- **organization_id_or_name** (`string`, required) The ID or name of the Trello organization to remove the email domain restriction from. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteOrganizationTag - -
- - -Delete a specified tag from an organization. - -**Parameters** - -- **organization_id_or_name** (`string`, required) The ID or name of the organization from which to delete the tag. -- **tag_id_to_delete** (`string`, required) The ID of the tag to be removed from the organization. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CheckBoardBillableGuests - -
- - -Check if a board has new billable guests. - -**Parameters** - -- **board_id** (`string`, required) The ID of the Trello board to check for new billable guests. -- **organization_id_or_name** (`string`, required) The ID or name of the Trello organization to check for new billable guests on the board. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloPluginInfo - -
- - -Retrieve information about a specific Trello plugin. - -**Parameters** - -- **organization_id_or_name** (`string`, required) The ID or name of the organization for which the plugin information is requested. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateTrelloPlugin - -
- - -Update a specific plugin on Trello. - -**Parameters** - -- **organization_identifier** (`string`, required) The ID or name of the organization associated with the plugin to update. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateTrelloPluginListing - -
- - -Create a new listing for a Trello Power-Up. - -**Parameters** - -- **power_up_id** (`string`, required) The ID of the Power-Up for which you are creating a new listing. -- **listing_locale** (`string`, optional) The specific locale code (e.g., 'en-US') for which the listing should be displayed. -- **locale_description** (`string`, optional) The description for the Power-Up listing in the specified locale. -- **overview_for_locale** (`string`, optional) The overview text to display for the specified locale. Provide a concise summary relevant to the plugin. -- **plugin_locale_name** (`string`, optional) The name for the Power-Up listing in the specified locale. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetPluginMemberPrivacyCompliance - -
- - -Retrieve a plugin's member privacy compliance status. - -**Parameters** - -- **power_up_id** (`string`, required) The unique identifier of the Power-Up to check member privacy compliance. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdatePowerUpListing - -
- - -Update an existing listing for a Trello Power-Up. - -**Parameters** - -- **listing_id** (`string`, required) The ID of the existing listing for the Power-Up that is being updated. -- **power_up_id** (`string`, required) The ID of the Power-Up whose listing is being updated. -- **listing_description** (`string`, optional) The description to show for the specified locale of the Power-Up listing. -- **listing_locale** (`string`, optional) The locale code for displaying the listing, e.g., 'en' for English. -- **localized_name** (`string`, optional) The name of the listing to display for the specified locale. -- **overview_for_locale** (`string`, optional) Provide the overview text for the specified locale to update the listing. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.TrelloSearch - -
- - -Search for information within Trello. - -**Parameters** - -- **search_query** (`string`, required) The search query string, with a length between 1 and 16384 characters. -- **board_fields_selection** (`string`, optional) Comma-separated list of board fields to return or 'all' for every field. Options include: closed, dateLastActivity, etc. -- **board_identifiers** (`string`, optional) Specify 'mine' to search all your boards or provide a comma-separated list of Board IDs. -- **card_fields** (`string`, optional) Specify 'all' or a comma-separated list of card fields like 'badges', 'desc', 'labels'. Defaults to 'all' if omitted. -- **card_ids** (`string`, optional) Comma-separated list of Trello Card IDs to search within. -- **cards_page_number** (`number`, optional) Specify the page number for card search results. Maximum value is 100. -- **enable_partial_search** (`boolean`, optional) Enable partial search to match content starting with words in your query, allowing for more flexible search results. -- **include_card_attachments** (`string`, optional) Specify 'true' to include all attachment objects, 'cover' for only card cover attachments, or 'false' for no attachments. -- **include_card_list** (`boolean`, optional) Include the parent list with card results. A boolean value (true or false). -- **include_card_members** (`boolean`, optional) Include member objects with card results if set to true; exclude them if false. -- **include_card_stickers** (`boolean`, optional) Set to true to include sticker objects with card results. Set to false to exclude them. -- **include_parent_board_with_card_results** (`boolean`, optional) Set to true to include parent board details in card results. -- **include_parent_organization_with_board_results** (`boolean`, optional) Include the parent organization in the board results. Set to true to include, false to exclude. -- **max_members_returned** (`integer`, optional) The maximum number of members to return in the search results. Maximum value is 1000. -- **max_workspaces_to_return** (`integer`, optional) The maximum number of Workspaces to return. Accepts an integer up to 1000. -- **maximum_boards_returned** (`integer`, optional) The maximum number of boards to return. Must be an integer up to 1000. -- **maximum_cards_to_return** (`integer`, optional) The maximum number of cards to return. Maximum value is 1000. -- **member_fields_selection** (`string`, optional) Specify which member fields to return. Options: `all` or a comma-separated list of: avatarHash, bio, bioData, confirmed, fullName, idPremOrgsAdmin, initials, memberType, products, status, url, username. -- **organization_fields_to_return** (`string`, optional) Specify 'all' or a comma-separated list of organization attributes like 'billableMemberCount', 'desc', 'displayName', etc., to include in the results. -- **organization_ids** (`string`, optional) A comma-separated list of Trello Organization IDs to filter the search results. -- **trello_object_types** (`string`, optional) Specify types of Trello objects to search, such as 'all', 'actions', 'boards', 'cards', 'members', or 'organizations'. Use a comma-separated list. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.SearchTrelloMembers - -
- - -Search and retrieve Trello member information. - -**Parameters** - -- **search_query** (`string`, required) The search term for finding Trello members, between 1 and 16384 characters long. -- **board_id** (`string`, optional) The ID of the Trello board to filter members by. Leave empty to include all boards. -- **organization_id** (`string`, optional) Unique identifier for the organization to filter the search results. Use this to limit the search to members within a specific organization. -- **restrict_to_organization_members** (`boolean`, optional) If true, limit the search results to include only members of the organization. -- **result_limit** (`integer`, optional) Specify the maximum number of Trello member search results to return, with a maximum of 20. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RetrieveTrelloTokenInfo - -
- - -Retrieve information about a Trello token. - -**Parameters** - -- **trello_token** (`string`, required) The unique identifier for the Trello token to retrieve information about. -- **include_webhooks** (`boolean`, optional) Set to true to include webhooks in the response; false to exclude them. -- **retrieve_fields** (`string`, optional) Specify 'all' or a comma-separated list of fields: dateCreated, dateExpires, idMember, identifier, permissions. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloTokenOwner - -
- - -Retrieve information about a Trello token's owner. - -**Parameters** - -- **trello_token** (`string`, required) The unique Trello token to identify and retrieve the owner information. Must be a valid string. -- **retrieve_fields** (`string`, optional) Specify 'all' or a comma-separated list of Trello member fields to retrieve, such as 'id'. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RetrieveTokenWebhooks - -
- - -Retrieve all webhooks created with a specific token. - -**Parameters** - -- **trello_token** (`string`, required) The Trello token used to retrieve associated webhooks. It identifies the user's session and permissions. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.CreateTrelloWebhook - -
- - -Create a new webhook for a Trello token. - -**Parameters** - -- **object_id_for_webhook** (`string`, required) ID of the Trello object (board or card) to create a webhook on. -- **trello_token** (`string`, required) The authentication token for Trello. It allows access to create the webhook. Required for authorization. -- **webhook_callback_url** (`string`, required) The URL where the webhook will POST updates. Ensure it's a valid and accessible URL. -- **webhook_description** (`string`, optional) A string description displayed when retrieving information about the webhook. It helps identify the purpose or function of the webhook. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RetrieveTrelloWebhook - -
- - -Retrieve details of a specific Trello webhook. - -**Parameters** - -- **trello_token** (`string`, required) The Trello API token used to authenticate the request and retrieve the webhook details. -- **webhook_id** (`string`, required) The ID of the Trello webhook you want to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteTrelloWebhook - -
- - -Delete a specific Trello webhook. - -**Parameters** - -- **access_token** (`string`, required) The access token used for authentication. It identifies the user and grants permission to delete the webhook. -- **webhook_id** (`string`, required) The unique ID of the Trello webhook you wish to delete. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.UpdateTrelloWebhook - -
- - -Update a Trello webhook using a specific token. - -**Parameters** - -- **authentication_token** (`string`, required) The token used for authenticating the request to update the webhook in Trello. Required for authorization. -- **webhook_id** (`string`, required) The ID of the Trello webhook to be updated. Used to identify which webhook to modify. -- **callback_url** (`string`, optional) The URL where the webhook will POST data. Ensure the URL is accessible and correct. -- **object_id_for_webhook** (`string`, optional) ID of the Trello object (e.g., board, card) associated with the webhook. -- **webhook_description** (`string`, optional) A description to be displayed when retrieving information about the webhook. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.DeleteTrelloToken - -
- - -Deletes a Trello token to revoke access. - -**Parameters** - -- **trello_token_to_delete** (`string`, required) The Trello token string that needs to be deleted to revoke access. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.AddTrelloWebhook - -
- - -Create a new webhook on Trello. - -**Parameters** - -- **callback_url** (`string`, required) A valid URL that supports `HEAD` and `POST` requests for webhook notifications. -- **model_id_to_monitor** (`string`, required) ID of the Trello model (board, card, etc.) to monitor for changes. -- **is_webhook_active** (`boolean`, optional) A boolean to specify whether the webhook is active and sending POST requests. -- **webhook_description** (`string`, optional) A description of the webhook, up to 16384 characters long. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetTrelloWebhookById - -
- - -Retrieve details of a Trello webhook by its ID. - -**Parameters** - -- **webhook_id** (`string`, required) The unique identifier for the Trello webhook to retrieve. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.ModifyTrelloWebhook - -
- - -Updates a Trello webhook by its ID. - -**Parameters** - -- **webhook_id** (`string`, required) The ID of the Trello webhook to update. This identifies which webhook's settings you want to modify. -- **activate_webhook** (`boolean`, optional) Set to true to activate the webhook and enable sending POST requests, or false to deactivate. -- **callback_url** (`string`, optional) A valid URL that is reachable with a `HEAD` and `POST` request, used to receive webhook data. -- **model_id** (`string`, optional) ID of the model to be monitored for webhook updates. -- **webhook_description** (`string`, optional) A string describing the webhook, with a length from 0 to 16384 characters. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.RemoveTrelloWebhook - -
- - -Delete a Trello webhook by ID. - -**Parameters** - -- **webhook_id** (`string`, required) The ID of the Trello webhook you want to delete. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - -## TrelloApi.GetWebhookField - -
- - -Retrieve a specific field from a Trello webhook. - -**Parameters** - -- **webhook_field_to_retrieve** (`string`, required) Specify which field to retrieve from the webhook. Options are: `active`, `callbackURL`, `description`, `idModel`. -- **webhook_id** (`string`, required) ID of the Trello webhook to retrieve information from. - -**Secrets** - -This tool requires the following secrets: `TRELLO_API_KEY`, `TRELLO_API_TOKEN`. You can obtain these from the [Trello Power-Ups Admin Portal](https://trello.com/power-ups/admin) or directly at [trello.com/app-key](https://trello.com/app-key). See the [Authentication section](#authentication) above for detailed instructions and the [Trello API documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/) for more information. - ---- - -## Authentication - -The Arcade Trello API MCP Server requires two environment variables to authenticate with the Trello API: - -- `TRELLO_API_KEY` -- `TRELLO_API_TOKEN` - -**How to obtain your credentials:** - -1. Log in to your [Trello account](https://trello.com/) -2. Navigate to the [Power-Ups Admin Portal](https://trello.com/power-ups/admin) -3. Click on "New" to create a new Power-Up or select an existing one -4. In your Power-Up settings, go to the **API Key** tab -5. Your **API Key** will be displayed -6. Click on "Token" link to generate a **Token** (this will require authorization) -7. Authorize the token with the required scopes -8. Copy both the API Key and Token for use in your configuration - -Alternatively, you can directly access your API key at: [https://trello.com/app-key](https://trello.com/app-key) - -For more details, see the [Trello API Authentication documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/). - -## Reference - -Below is a reference of enumerations used by some of the tools in the TrelloApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - diff --git a/app/en/resources/integrations/productivity/xero-api/page.mdx b/app/en/resources/integrations/productivity/xero-api/page.mdx deleted file mode 100644 index 3b164fce9..000000000 --- a/app/en/resources/integrations/productivity/xero-api/page.mdx +++ /dev/null @@ -1,4825 +0,0 @@ -# XeroApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The XeroApi MCP Server provides a comprehensive set of tools for interacting with Xero accounting data. These tools let agents and apps: - -- Access and manage core accounting entities: accounts, invoices, credit notes, payments, bank transactions/transfers, journals, manual journals, prepayments, overpayments, and reconciliations. -- Work with contacts, contact groups, purchase orders, quotes, items, budgets, and repeating invoices. -- Retrieve, download, and manage attachments across accounts, contacts, invoices, bank transactions, journals, purchase orders, quotes, receipts, and more (by ID or filename). -- Create and retrieve history/audit records for payments, invoices, payments/batch payments, bank transactions/transfers, purchase orders, quotes, receipts, items, journals, and repeating invoices. -- Run and fetch financial and management reports: balance sheet, profit & loss, trial balance, budget summary, bank summary, aged receivables/payables, executive summary, and custom reports. -- Manage organizational settings: organisation details, tenants/connections, CIS settings, currencies, tax rates, tracking categories/options, and branding themes. -- Create or delete resources where supported (e.g., accounts, inventory items, tracking categories/options, linked transactions, allocations, tenant connections) and perform setup actions such as setting financial setup (chart of accounts and conversion). -- Retrieve lists of users, contacts, payment services, batch payments, and a wide range of Xero entities for integration, reporting, reconciliation, and automation tasks. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## XeroApi.RetrieveFullChartOfAccounts - -
- - -Retrieves the full chart of accounts from Xero. - -**Parameters** - -- **xero_tenant_identifier** (`string`, required) Unique identifier for the Xero tenant to retrieve its accounts. -- **filter_by_attribute** (`string`, optional) Filter accounts by specific attributes or conditions using string syntax. -- **order_by_element** (`string`, optional) Specify a field to order the returned accounts (e.g., 'Name' or 'AccountType'). -- **only_modified_since_timestamp** (`string`, optional) Specify a timestamp to return only records created or modified since that time. The timestamp should be in ISO 8601 format. - -## XeroApi.RetrieveAccountDetails - -
- - -Retrieve chart of accounts using a unique account ID. - -**Parameters** - -- **account_id** (`string`, required) Unique identifier for the Account object to retrieve specific account details. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant to retrieve the account details from. - -## XeroApi.DeleteAccount - -
- - -Delete a chart of accounts in Xero. - -**Parameters** - -- **account_id** (`string`, required) The unique identifier for the Account object to be deleted. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required to specify which tenant's account to delete. - -## XeroApi.RetrieveAccountAttachments - -
- - -Retrieve attachments for a specified account. - -**Parameters** - -- **account_id** (`string`, required) Unique identifier for the account object to retrieve attachments from. -- **tenant_identifier** (`string`, required) Xero identifier for the Tenant, used to specify which tenant's data to access. - -## XeroApi.RetrieveAccountAttachment - -
- - -Retrieve a specific account attachment by ID. - -**Parameters** - -- **account_unique_identifier** (`string`, required) Unique identifier for the Account object to retrieve the attachment from. -- **attachment_id** (`string`, required) Unique identifier for the attachment you want to retrieve from an account. This ID is necessary to specify the exact attachment you need. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required to specify which tenant's account attachment you want to retrieve. -- **mime_type_of_attachment** (`string`, required) The MIME type of the attachment file, such as image/jpg or application/pdf. - -## XeroApi.RetrieveAccountAttachmentByFilename - -
- - -Retrieve an attachment for a specific account by filename. - -**Parameters** - -- **account_id** (`string`, required) Unique identifier for the Account object in Xero. -- **attachment_file_name** (`string`, required) The name of the attachment to retrieve for a specific account. -- **tenant_identifier** (`string`, required) The unique Xero identifier for the Tenant. Required to access the specific tenant's attachments. -- **mime_type_of_attachment** (`string`, required) The MIME type of the attachment file to retrieve, such as image/jpg or application/pdf. - -## XeroApi.RetrieveBatchPayments - -
- - -Retrieve batch payments for invoices. - -**Parameters** - -- **tenant_identifier** (`string`, required) Xero identifier for the Tenant required to access its specific batch payment data. -- **filter_by_element** (`string`, optional) Apply a filter to the batch payments using any specified element. -- **order_by_element** (`string`, optional) Specify the element to sort the batch payments by. The value should be a string representing the element. -- **modified_since_timestamp** (`string`, optional) Timestamp to filter records modified or created since then. Format: ISO 8601 date and time. - -## XeroApi.GetBatchPaymentDetails - -
- - -Retrieve details of a specific batch payment by ID. - -**Parameters** - -- **batch_payment_id** (`string`, required) Unique identifier for the batch payment to retrieve details. -- **xero_tenant_id** (`string`, required) The unique Xero identifier for the tenant, necessary for accessing tenant-specific data. - -## XeroApi.RetrieveBatchPaymentHistory - -
- - -Retrieve the history of a specific batch payment. - -**Parameters** - -- **batch_payment_id** (`string`, required) Unique identifier for the batch payment to retrieve its history. -- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant. Required to access specific tenant data. - -## XeroApi.CreateBatchPaymentHistoryRecord - -
- - -Creates a history record for a batch payment. - -**Parameters** - -- **batch_payment_id** (`string`, required) Unique identifier for the specific batch payment in Xero. -- **xero_tenant_identifier** (`string`, required) Xero identifier for Tenant. This is required to specify which tenant's batch payment history is being recorded. -- **idempotency_key** (`string`, optional) A unique string to prevent duplicate processing. Maximum 128 characters. - -## XeroApi.RetrieveBankTransactions - -
- - -Retrieve spent or received money transactions from Xero. - -**Parameters** - -- **xero_tenant_id** (`string`, required) Xero identifier for the Tenant, required to specify which account to access. -- **filter_by_element** (`string`, optional) Specify criteria to filter transactions by any element. Use valid filter expressions based on transaction fields. -- **order_transactions_by** (`string`, optional) Specify the element by which to order the transactions, such as date or amount. -- **transaction_page_number** (`integer`, optional) Specifies which page of up to 100 bank transactions to retrieve. -- **use_four_decimal_places** (`integer`, optional) Indicate if unit amounts should use four decimal places (e.g., 4). -- **records_per_page** (`integer`, optional) Specify the number of records to retrieve per page. This controls the pagination size. -- **modified_since_timestamp** (`string`, optional) Return records created or modified since this UTC timestamp (ISO 8601 format). - -## XeroApi.RetrieveBankTransaction - -
- - -Retrieve bank transaction details by ID. - -**Parameters** - -- **bank_transaction_id** (`string`, required) Unique identifier for a specific bank transaction in Xero. -- **xero_tenant_id** (`string`, required) The Xero identifier for the tenant (organization). Required to access the specific tenant's data. -- **use_four_decimal_places** (`integer`, optional) Option to use four decimal places for unit amounts. Specify '4' to enable. - -## XeroApi.RetrieveBankTransactionAttachments - -
- - -Retrieve attachments from a specific bank transaction. - -**Parameters** - -- **bank_transaction_id** (`string`, required) Xero generated unique identifier for a bank transaction, used to retrieve corresponding attachments. -- **xero_tenant_id** (`string`, required) The unique identifier for a Xero tenant, required to access specific tenant data. - -## XeroApi.RetrieveBankTransactionAttachment - -
- - -Retrieve a specific attachment from a bank transaction. - -**Parameters** - -- **bank_transaction_id** (`string`, required) Xero generated unique identifier for a bank transaction. -- **attachment_id** (`string`, required) Unique identifier for the Attachment object. -- **xero_tenant_identifier** (`string`, required) Xero unique identifier for the Tenant. This is required to specify which organization data is to be accessed. -- **attachment_mime_type** (`string`, required) The mime type of the attachment file to retrieve, such as image/jpeg or application/pdf. - -## XeroApi.GetBankTransactionAttachment - -
- - -Retrieve an attachment from a bank transaction by filename. - -**Parameters** - -- **bank_transaction_id** (`string`, required) Xero generated unique identifier for a bank transaction. Required to retrieve the correct attachment. -- **attachment_filename** (`string`, required) Name of the attachment to retrieve from the bank transaction. -- **xero_tenant_identifier** (`string`, required) The unique identifier for the Xero tenant associated with the bank transaction. -- **attachment_mime_type** (`string`, required) The MIME type of the attachment file to retrieve, such as image/jpg or application/pdf. - -## XeroApi.GetBankTransactionHistory - -
- - -Retrieve history of a specific bank transaction by ID. - -**Parameters** - -- **bank_transaction_id** (`string`, required) The unique identifier for a bank transaction generated by Xero. Use this ID to retrieve specific transaction history. -- **tenant_identifier** (`string`, required) Xero unique identifier for the tenant. Required to access tenant-specific data. - -## XeroApi.CreateBankTransactionHistory - -
- - -Creates a record in the bank transaction history. - -**Parameters** - -- **bank_transaction_id** (`string`, required) Xero-generated unique identifier for the bank transaction to create a history record. -- **tenant_id** (`string`, required) Xero identifier for the tenant. This is required to specify which Xero account the transaction history will be associated with. -- **idempotency_key** (`string`, optional) A unique key to prevent duplicate processing. Maximum 128 characters. - -## XeroApi.RetrieveBankTransfers - -
- - -Retrieve all bank transfers from Xero. - -**Parameters** - -- **xero_tenant_identifier** (`string`, required) A unique string identifier for the Xero tenant to retrieve bank transfers from. -- **filter_bank_transfers** (`string`, optional) String to filter bank transfer records by a specific element, such as status or date range. -- **order_by_element** (`string`, optional) Specify the field to order the bank transfer records by. Use the field names available in the Xero bank transfer dataset. -- **modified_since_timestamp** (`string`, optional) Filter records to only include those created or modified since this timestamp. Use ISO 8601 format (e.g., '2023-10-01T00:00:00Z'). - -## XeroApi.RetrieveBankTransfer - -
- - -Retrieve details of a specific bank transfer using its ID. - -**Parameters** - -- **bank_transfer_id** (`string`, required) The unique identifier for a bank transfer generated by Xero. -- **tenant_id** (`string`, required) Xero identifier for the tenant. This is required to specify which tenant's data to access. - -## XeroApi.RetrieveBankTransferAttachments - -
- - -Retrieve attachments from a specific bank transfer in Xero. - -**Parameters** - -- **bank_transfer_id** (`string`, required) Xero-generated unique identifier for a bank transfer. Required to retrieve associated attachments. -- **tenant_identifier** (`string`, required) The unique Xero identifier for your tenant. This ID specifies which tenant the bank transfer belongs to. - -## XeroApi.FetchBankTransferAttachment - -
- - -Fetch a specific bank transfer attachment by ID. - -**Parameters** - -- **bank_transfer_unique_id** (`string`, required) Xero-generated unique identifier for a bank transfer. It is required to locate the specific transfer for the attachment. -- **attachment_id** (`string`, required) Unique identifier for the attachment object that you want to retrieve from a specific bank transfer. -- **tenant_identifier** (`string`, required) The Xero identifier for the tenant you want to access. -- **attachment_mime_type** (`string`, required) The MIME type of the attachment to retrieve, e.g., image/jpg, application/pdf. - -## XeroApi.RetrieveBankTransferAttachment - -
- - -Retrieve a bank transfer attachment by file name. - -**Parameters** - -- **bank_transfer_id** (`string`, required) Xero-generated unique identifier for a bank transfer. Required to specify which bank transfer's attachment is being retrieved. -- **attachment_file_name** (`string`, required) The name of the attachment file to retrieve from the bank transfer. -- **xero_tenant_identifier** (`string`, required) The unique identifier for the Xero tenant associated with the bank transfer. -- **attachment_mime_type** (`string`, required) The MIME type of the attachment file, such as 'image/jpg' or 'application/pdf'. - -## XeroApi.GetBankTransferHistory - -
- - -Retrieve specific bank transfer history by ID. - -**Parameters** - -- **bank_transfer_id** (`string`, required) Unique identifier for the Xero bank transfer needed to retrieve its history. -- **tenant_identifier** (`string`, required) Xero identifier for the tenant. Required to specify which tenant's bank transfer history to retrieve. - -## XeroApi.CreateBankTransferHistory - -
- - -Create a history record for a bank transfer. - -**Parameters** - -- **bank_transfer_id** (`string`, required) Xero generated unique identifier for the specific bank transfer to create a history record for. -- **xero_tenant_id** (`string`, required) The unique identifier for a Xero tenant. Required to specify which tenant's data to access. -- **idempotency_key** (`string`, optional) A unique string to safely retry requests without risk of duplication, limited to 128 characters. - -## XeroApi.GetBrandingThemes - -
- - -Retrieve all branding themes from Xero. - -**Parameters** - -- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant to retrieve branding themes. - -## XeroApi.RetrieveBrandingTheme - -
- - -Retrieve details of a specific branding theme. - -**Parameters** - -- **branding_theme_id** (`string`, required) Unique identifier for a branding theme to retrieve its details. -- **tenant_identifier** (`string`, required) The Xero identifier for the Tenant. This is required to specify which tenant's branding theme to retrieve. - -## XeroApi.GetPaymentServicesForBrandingTheme - -
- - -Retrieve payment services for a specific branding theme. - -**Parameters** - -- **branding_theme_id** (`string`, required) Unique identifier for a Branding Theme to retrieve associated payment services. -- **xero_tenant_id** (`string`, required) Xero identifier for the Tenant. This unique ID is required to specify which tenant's data is being accessed. - -## XeroApi.RetrieveBudgets - -
- - -Retrieve a list of budgets from Xero. - -**Parameters** - -- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant. Required for accessing specific tenant data. -- **filter_by_budget_id** (`string`, optional) Filter to retrieve a specific budget by its BudgetID. -- **filter_start_date** (`string`, optional) The start date to filter budgets until. Expected format is YYYY-MM-DD. -- **filter_by_end_date** (`string`, optional) Specify the end date to filter the budgets. Use the format YYYY-MM-DD. - -## XeroApi.RetrieveBudgetDetails - -
- - -Retrieve detailed information about a budget including lines. - -**Parameters** - -- **budget_identifier** (`string`, required) Unique identifier for budgets. Required to retrieve specific budget details including budget lines. -- **tenant_identifier** (`string`, required) Xero identifier for the Tenant to specify which tenant's budget to retrieve. -- **filter_end_date** (`string`, optional) Specifies the end date to filter the budget data. Use the format YYYY-MM-DD. -- **filter_start_date** (`string`, optional) The start date from which to filter the budget details. Format must be YYYY-MM-DD. - -## XeroApi.FetchAllXeroContacts - -
- - -Retrieve all contacts from a Xero organization. - -**Parameters** - -- **tenant_identifier** (`string`, required) A unique string to identify the tenant in Xero. -- **filter_by_element** (`string`, optional) Specify conditions to filter contacts by any element within their data fields. -- **sort_order** (`string`, optional) Specifies the sorting order for contacts based on a specified element, such as name or date. -- **contact_ids** (`array[string]`, optional) Comma-separated list of ContactIDs to retrieve specific contacts. Use this to filter the contacts returned by their unique IDs in a single call. -- **pagination_page_number** (`integer`, optional) The specific page number to retrieve when fetching contacts. Each page returns up to 100 contacts. -- **search_term** (`string`, optional) A case-insensitive search term for filtering contacts by Name, FirstName, LastName, ContactNumber, or EmailAddress. -- **records_per_page** (`integer`, optional) Number of contact records to retrieve per page. -- **modified_since_timestamp** (`string`, optional) Retrieve only records created or modified after the specified timestamp. Use ISO 8601 format for the timestamp. -- **include_archived_contacts** (`boolean`, optional) Set to true to include contacts with a status of ARCHIVED in the response. False will exclude them. -- **retrieve_summary_only_contacts** (`boolean`, optional) Set to true to retrieve only lightweight contact fields, excluding computation-heavy data for faster API responses. - -## XeroApi.GetXeroContactByNumber - -
- - -Retrieve a contact from Xero by contact number. - -**Parameters** - -- **contact_number** (`string`, required) The unique contact number to identify a Xero contact; max length 50 characters. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant. It is required to specify which organization's data to retrieve. - -## XeroApi.RetrieveXeroContact - -
- - -Retrieve specific contact information from Xero. - -**Parameters** - -- **contact_id** (`string`, required) Provide the unique identifier for the contact to retrieve their information from Xero. -- **xero_tenant_identifier** (`string`, required) The unique identifier for the tenant in Xero, required to retrieve contact details. - -## XeroApi.GetContactAttachments - -
- - -Retrieve attachments for a Xero contact. - -**Parameters** - -- **contact_id** (`string`, required) Unique identifier for a contact in Xero. -- **xero_tenant_identifier** (`string`, required) The unique Xero tenant identifier for the organisation. - -## XeroApi.RetrieveContactAttachment - -
- - -Retrieve a specific contact attachment by ID. - -**Parameters** - -- **contact_id** (`string`, required) Unique identifier for a Contact in Xero to retrieve a specific attachment. -- **attachment_id** (`string`, required) Unique identifier for the Attachment object from a contact in Xero. -- **tenant_identifier** (`string`, required) The unique identifier for the tenant in Xero to access specific data connected to a tenant account. -- **attachment_mime_type** (`string`, required) The MIME type of the attachment file (e.g., image/jpeg, application/pdf). - -## XeroApi.GetContactAttachment - -
- - -Retrieve a contact's attachment by file name. - -**Parameters** - -- **contact_identifier** (`string`, required) Unique identifier for a contact in Xero to retrieve its specific attachment. -- **attachment_file_name** (`string`, required) Specify the name of the attachment to retrieve from the contact. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. This is required to specify which tenant's data should be accessed. -- **attachment_mime_type** (`string`, required) The MIME type of the attachment file, such as image/jpg or application/pdf. - -## XeroApi.GetContactCisSettings - -
- - -Retrieve CIS settings for a Xero contact. - -**Parameters** - -- **contact_identifier** (`string`, required) Unique identifier for a specific contact in Xero. -- **tenant_identifier** (`string`, required) Xero identifier for the tenant. Required for accessing the correct organization within Xero. - -## XeroApi.GetContactHistory - -
- - -Retrieve history records for a specific contact. - -**Parameters** - -- **contact_id** (`string`, required) Unique identifier for a contact to retrieve their history records. -- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant. Required to access specific tenant data. - -## XeroApi.AddContactHistoryRecord - -
- - -Create a new history record for a contact in Xero. - -**Parameters** - -- **contact_unique_identifier** (`string`, required) Unique identifier for a Contact in Xero. Required to specify which contact the history record is for. -- **tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required to specify which tenant's contact history to update. -- **idempotency_key** (`string`, optional) A unique string up to 128 characters to safely retry requests without duplicate processing. - -## XeroApi.RetrieveContactGroups - -
- - -Retrieve contact group IDs and names from Xero. - -**Parameters** - -- **tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required to access the correct tenant's contact groups. -- **filter_criteria** (`string`, optional) A string to filter contact groups based on specified criteria, using any element. -- **order_by** (`string`, optional) Specify the criteria to order the contact groups by. It can be any element to sort the results accordingly. - -## XeroApi.RetrieveContactGroup - -
- - -Retrieve a specific contact group by ID. - -**Parameters** - -- **contact_group_id** (`string`, required) Unique identifier for a Contact Group in Xero. Use this to retrieve specific group details. -- **xero_tenant_id** (`string`, required) Identifier for the Xero tenant needed to access specific tenant data. - -## XeroApi.RemoveContactsFromGroup - -
- - -Removes all contacts from a specified contact group in Xero. - -**Parameters** - -- **contact_group_id** (`string`, required) Unique identifier for the contact group to remove contacts from. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the specific tenant required to access its data. - -## XeroApi.RemoveContactFromGroup - -
- - -Delete a specific contact from a contact group. - -**Parameters** - -- **contact_group_id** (`string`, required) Unique identifier for a contact group to specify which group the contact should be removed from. -- **contact_identifier** (`string`, required) Unique identifier for a contact to be removed from the group. -- **tenant_identifier** (`string`, required) Xero identifier for the tenant. Required for specifying the target tenant in requests. - -## XeroApi.GetCreditNotes - -
- - -Retrieve credit notes from the Xero service. - -**Parameters** - -- **tenant_identifier** (`string`, required) The unique identifier for the Xero tenant. Required to specify which tenant's credit notes to retrieve. -- **filter_by_element** (`string`, optional) A string to filter credit notes by specific criteria using any element. -- **sort_credit_notes** (`string`, optional) Specifies the order to retrieve credit notes, e.g., by date or amount. -- **page_number** (`integer`, optional) The page number to retrieve. Each page returns up to 100 credit notes with line items. -- **unit_decimal_places** (`integer`, optional) Specify the number of decimal places for unit amounts. For example, use 4 for four decimal places. -- **number_of_records_per_page** (`integer`, optional) Defines the number of credit notes to retrieve per page from the Xero service. This helps control the size of each result set. -- **modified_since_timestamp** (`string`, optional) Only retrieve records created or modified after this timestamp (in ISO 8601 format). - -## XeroApi.RetrieveCreditNote - -
- - -Retrieve a credit note using its unique ID. - -**Parameters** - -- **credit_note_id** (`string`, required) Unique identifier for the credit note to retrieve details from Xero. -- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant associated with the credit note. It is required to specify which tenant's data to access. -- **use_four_decimal_places** (`integer`, optional) Specify if four decimal places should be used for unit amounts. Default is false. - -## XeroApi.GetCreditNoteAttachments - -
- - -Fetch attachments for a specific credit note from Xero. - -**Parameters** - -- **credit_note_id** (`string`, required) Unique identifier for a specific Credit Note in Xero to fetch attachments. -- **tenant_identifier** (`string`, required) Xero identifier for the tenant. Required to specify which tenant's data to access. - -## XeroApi.GetCreditNoteAttachment - -
- - -Retrieve specific attachment from a credit note by ID. - -**Parameters** - -- **credit_note_id** (`string`, required) Unique identifier for the credit note you want to retrieve an attachment from. -- **attachment_id** (`string`, required) Unique identifier for the attachment object to be retrieved. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. It's required to specify which organization to access. -- **attachment_mime_type** (`string`, required) The MIME type of the attachment file to retrieve, such as image/jpg or application/pdf. - -## XeroApi.RetrieveCreditNoteAttachment - -
- - -Retrieve a specific credit note attachment by file name. - -**Parameters** - -- **credit_note_id** (`string`, required) Unique identifier for a Credit Note. Use this ID to specify which credit note's attachment you want to retrieve. -- **attachment_file_name** (`string`, required) The name of the attachment to be retrieved from the credit note (e.g., invoice.pdf). -- **xero_tenant_identifier** (`string`, required) Unique identifier for the Xero Tenant. Required to specify which tenant's data to access. -- **attachment_mime_type** (`string`, required) The MIME type of the attachment file to retrieve, such as 'image/jpg' or 'application/pdf'. - -## XeroApi.GetCreditNotePdf - -
- - -Retrieve a credit note as a PDF file. - -**Parameters** - -- **credit_note_id** (`string`, required) Unique identifier for the credit note to retrieve as a PDF. -- **tenant_identifier** (`string`, required) Xero identifier for the tenant to retrieve the specific credit note PDF. - -## XeroApi.DeleteCreditNoteAllocation - -
- - -Remove an allocation from a specific credit note. - -**Parameters** - -- **credit_note_unique_id** (`string`, required) Unique identifier for a specific credit note to delete the allocation from. -- **allocation_id** (`string`, required) Unique identifier for the Allocation object needing deletion from a credit note. -- **xero_tenant_id** (`string`, required) Unique Xero identifier for the Tenant. Required to specify which tenant's data is being accessed. - -## XeroApi.GetCreditNoteHistory - -
- - -Retrieve history records of a specific credit note. - -**Parameters** - -- **credit_note_id** (`string`, required) Unique identifier for a specific credit note. Required to retrieve its history records. -- **xero_tenant_id** (`string`, required) The unique identifier for a Xero tenant. Required to access tenant-specific data. - -## XeroApi.FetchCreditNoteHistory - -
- - -Retrieve the history of a specific credit note. - -**Parameters** - -- **credit_note_id** (`string`, required) Unique identifier for the credit note whose history you want to retrieve. -- **xero_tenant_id** (`string`, required) Xero identifier for the tenant. Required to specify which tenant's credit note history to retrieve. -- **idempotency_key** (`string`, optional) String to safely retry requests without creating duplicates. Max 128 characters. - -## XeroApi.GetXeroCurrencies - -
- - -Retrieve currencies from your Xero organization. - -**Parameters** - -- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant. Required to access organization-specific data. -- **filter_criteria** (`string`, optional) A string to filter the currencies based on specific criteria, such as currency code or name. -- **order_by** (`string`, optional) Specify the element to order the currencies by. Accepts a string corresponding to an element in the currency data. - -## XeroApi.RetrieveExpenseClaims - -
- - -Fetches expense claims from Xero. - -**Parameters** - -- **xero_tenant_identifier** (`string`, required) The unique identifier for the Xero tenant required to specify which organization's data to retrieve. -- **filter_by_element** (`string`, optional) Apply a filter based on specific elements in the expense claims. -- **order_by** (`string`, optional) Specify the element by which to order the expense claims, such as date or amount. -- **modified_since_timestamp** (`string`, optional) Retrieve records created or modified since this timestamp in ISO 8601 format (e.g., '2023-10-04T00:00:00Z'). - -## XeroApi.RetrieveExpenseClaim - -
- - -Retrieve details of a specific expense claim by ID. - -**Parameters** - -- **expense_claim_id** (`string`, required) Unique identifier for an expense claim to retrieve its details. -- **xero_tenant_id** (`string`, required) Xero tenant identifier for the specific business or organization you are retrieving the expense claim from. - -## XeroApi.RetrieveExpenseClaimHistory - -
- - -Retrieve the history of a specific expense claim. - -**Parameters** - -- **expense_claim_id** (`string`, required) Unique identifier for retrieving the specific expense claim history. -- **xero_tenant_id** (`string`, required) Xero identifier for the tenant. This is required to specify which tenant's data to access. - -## XeroApi.AddExpenseClaimHistory - -
- - -Creates a history record for an expense claim. - -**Parameters** - -- **expense_claim_id** (`string`, required) Unique identifier for the specific expense claim to add a history record. -- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant. This is required to specify which tenant the expense claim history record is associated with. -- **idempotency_key** (`string`, optional) A unique string (max 128 characters) to safely retry requests without duplicating processing. - -## XeroApi.RetrieveInvoices - -
- - -Retrieve sales invoices or purchase bills from Xero. - -**Parameters** - -- **xero_tenant_id** (`string`, required) Unique identifier for a Xero tenant to retrieve invoices specific to that tenant. -- **filter_by_condition** (`string`, optional) Filter using a condition expression defined on any element, similar to a SQL WHERE clause. -- **order_by** (`string`, optional) Specify the criteria for ordering invoices, such as date or amount. -- **invoice_ids** (`array[string]`, optional) Comma-separated list of Invoice IDs to filter results. -- **filter_by_invoice_numbers** (`array[string]`, optional) Filter results by providing a list of invoice numbers. Each item should be a string representing one invoice number. -- **filter_contact_ids** (`array[string]`, optional) Comma-separated list of ContactIDs to filter invoices. -- **filter_by_statuses** (`array[string]`, optional) Filter invoices by a list of statuses for improved response times. Use explicit parameters instead of OR conditions. -- **page_number** (`integer`, optional) Specify the page number to retrieve. Up to 100 invoices per page can be returned. -- **unit_decimal_places** (`integer`, optional) Specify the number of decimal places for unit amounts, e.g., 4 for four decimal places. -- **records_per_page** (`integer`, optional) Specify the number of invoice records to retrieve per page. -- **search_term** (`string`, optional) A case-insensitive search parameter for fields like InvoiceNumber and Reference. -- **modified_since_timestamp** (`string`, optional) Return only records created or modified since this timestamp. Use the format 'YYYY-MM-DDTHH:MM:SS'. -- **include_archived_invoices** (`boolean`, optional) Set to true to include invoices with a status of ARCHIVED in the response. -- **filter_by_created_by_my_app** (`boolean`, optional) Set to true to retrieve only invoices created by your app. -- **retrieve_summary_only** (`boolean`, optional) Set to true to retrieve a smaller, lightweight version of the response for quicker API calls, excluding computation-heavy fields. - -## XeroApi.GetInvoiceDetails - -
- - -Retrieve a specific invoice using its unique ID. - -**Parameters** - -- **invoice_identifier** (`string`, required) Unique identifier for the invoice to be retrieved. -- **xero_tenant_id** (`string`, required) Xero identifier for the Tenant. Used to specify which tenant's invoice is retrieved. -- **unit_decimal_places** (`integer`, optional) Specify the number of decimal places to use for unit amounts, e.g., 4 for four decimal places. - -## XeroApi.RetrieveInvoicePdf - -
- - -Retrieve an invoice or purchase bill as a PDF. - -**Parameters** - -- **invoice_id** (`string`, required) Unique identifier for the invoice to retrieve as a PDF from Xero. -- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant. This is required to specify the account from which to retrieve the invoice PDF. - -## XeroApi.RetrieveInvoiceAttachments - -
- - -Retrieve attachments for a specific invoice or bill. - -**Parameters** - -- **invoice_id** (`string`, required) Unique identifier for the invoice to retrieve attachments from. -- **tenant_identifier** (`string`, required) Xero identifier for the Tenant that owns the invoice. - -## XeroApi.RetrieveInvoiceAttachmentById - -
- - -Retrieve a specific invoice attachment by ID. - -**Parameters** - -- **invoice_id** (`string`, required) The unique identifier for the invoice to retrieve the attachment from. -- **attachment_id** (`string`, required) Unique identifier for the attachment object in Xero. -- **tenant_identifier** (`string`, required) Xero identifier for the tenant. Required to specify the tenant from which the attachment is being retrieved. -- **attachment_mime_type** (`string`, required) The MIME type of the attachment file, e.g., image/jpg or application/pdf. - -## XeroApi.GetInvoiceAttachment - -
- - -Retrieve an attachment from an invoice by filename. - -**Parameters** - -- **invoice_id** (`string`, required) Unique identifier for the invoice from which to retrieve the attachment. -- **attachment_file_name** (`string`, required) Specify the exact name of the attachment to retrieve from the invoice or purchase bill. -- **tenant_identifier** (`string`, required) Xero identifier for the Tenant to specify which organization's data to access. -- **attachment_mime_type** (`string`, required) The MIME type of the attachment file being retrieved, such as image/jpg or application/pdf. - -## XeroApi.RetrieveOnlineInvoiceUrl - -
- - -Retrieve a URL for viewing an online invoice. - -**Parameters** - -- **invoice_identifier** (`string`, required) Unique identifier for the invoice to retrieve its online URL. -- **xero_tenant_id** (`string`, required) Xero tenant identifier needed to retrieve the correct online invoice. - -## XeroApi.RetrieveInvoiceHistory - -
- - -Retrieve history of a specific invoice. - -**Parameters** - -- **invoice_id** (`string`, required) Unique identifier for the invoice to retrieve its history. -- **tenant_identifier** (`string`, required) Xero identifier for the tenant. This is required to specify which tenant's data to access. - -## XeroApi.CreateInvoiceHistory - -
- - -Create a history record for a specific invoice. - -**Parameters** - -- **invoice_id** (`string`, required) Unique identifier for the invoice. This is required to create a history record for the specified invoice in Xero. -- **tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required for specifying which tenant the invoice history belongs to. -- **idempotency_key** (`string`, optional) A string up to 128 characters to safely retry requests without duplicate processing. - -## XeroApi.GetInvoiceReminderSettings - -
- - -Retrieve invoice reminder settings from Xero. - -**Parameters** - -- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant. This is required to access specific tenant data. - -## XeroApi.GetItems - -
- - -Retrieve items from Xero. - -**Parameters** - -- **xero_tenant_id** (`string`, required) The unique identifier for a Xero tenant. Required to specify which tenant's data to retrieve. -- **filter_criteria** (`string`, optional) Filter items by specific criteria using any element such as field names or conditions. -- **order_by_element** (`string`, optional) Specify the sorting order of items by any element, such as name or price. -- **unit_decimal_places** (`integer`, optional) Defines the number of decimal places for unit amounts, e.g., 4 for four decimal places. -- **modified_since_timestamp** (`string`, optional) Fetch records created or modified since the provided timestamp (e.g., '2023-01-01T00:00:00Z'). - -## XeroApi.RetrieveXeroItem - -
- - -Retrieve a specific item from Xero using its ID. - -**Parameters** - -- **item_identifier** (`string`, required) The unique identifier for the item in Xero. This is required to retrieve specific item details. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. This is required to specify which tenant's data should be accessed. -- **use_unit_decimal_places** (`integer`, optional) Specify the number of unit decimal places to use, e.g., 4 for four decimal places in unit amounts. - -## XeroApi.DeleteInventoryItem - -
- - -Delete a specific item from inventory. - -**Parameters** - -- **item_id** (`string`, required) Unique identifier for the item to be deleted. -- **tenant_identifier** (`string`, required) The unique identifier for the Xero tenant to specify which tenant's data to access. - -## XeroApi.GetItemHistory - -
- - -Retrieve history for a specific item from Xero. - -**Parameters** - -- **item_id** (`string`, required) Unique identifier for the item whose history you want to retrieve in Xero. -- **xero_tenant_id** (`string`, required) Provide the unique Xero identifier associated with the Tenant to access its data. - -## XeroApi.CreateItemHistory - -
- - -Creates a history record for a specific item in Xero. - -**Parameters** - -- **item_id** (`string`, required) Unique identifier for the item to create a history record for in Xero. -- **tenant_identifier** (`string`, required) Xero identifier for the tenant, required to specify which tenant's item history is being updated. -- **idempotency_key** (`string`, optional) A unique key to ensure request retrying without duplication, max 128 characters. - -## XeroApi.GetFinancialJournals - -
- - -Retrieve financial journal entries from Xero. - -**Parameters** - -- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant. Required to specify which tenant's journals are retrieved. -- **journal_number_offset** (`integer`, optional) Specify the journal number offset. Journals with a number greater than this will be returned. -- **modified_since_timestamp** (`string`, optional) Return records created or modified since this timestamp. Use a string format like 'YYYY-MM-DDTHH:MM:SSZ'. -- **retrieve_cash_basis_journals** (`boolean`, optional) Set to true to retrieve journals on a cash basis. Defaults to false for accrual basis. - -## XeroApi.RetrieveSpecificJournal - -
- - -Retrieve a specific journal using its unique ID. - -**Parameters** - -- **journal_id** (`string`, required) Unique identifier for the journal to be retrieved. -- **xero_tenant_identifier** (`string`, required) A unique identifier for the Xero tenant. Required to specify which tenant's journal should be accessed. - -## XeroApi.RetrieveJournalByNumber - -
- - -Retrieve a specific journal by its unique number. - -**Parameters** - -- **journal_number** (`integer`, required) The unique number identifying the journal entry to retrieve. -- **tenant_identifier** (`string`, required) The unique identifier for a Xero tenant to specify the context for the journal retrieval. - -## XeroApi.RetrieveLinkedTransactions - -
- - -Retrieve linked transactions from Xero. - -**Parameters** - -- **tenant_identifier** (`string`, required) The Xero identifier for a specific tenant. Required for identifying the tenant whose linked transactions are being retrieved. -- **page_number** (`integer`, optional) Specify the page number to retrieve in paginated results, starting from 1. -- **linked_transaction_id** (`string`, optional) The Xero identifier for a Linked Transaction to retrieve specific billable expenses. -- **source_transaction_id** (`string`, optional) Filter by SourceTransactionID to get linked transactions from a specific ACCPAY invoice. -- **filter_by_contact_id** (`string`, optional) Filter results by the customer's ContactID to get linked transactions for a specific customer. -- **filter_by_status** (`string`, optional) Filter linked transactions by status when combined with ContactID. Retrieves transactions associated with a customer based on this status. -- **filter_by_target_transaction_id** (`string`, optional) Filter linked transactions by TargetTransactionID to get those allocated to a specific ACCREC invoice. - -## XeroApi.GetLinkedTransaction - -
- - -Retrieve specific linked transaction details by ID. - -**Parameters** - -- **linked_transaction_id** (`string`, required) Unique identifier for the linked transaction to be retrieved. -- **tenant_id** (`string`, required) Xero tenant identifier for accessing the correct organization. - -## XeroApi.DeleteLinkedTransaction - -
- - -Delete a specific linked transaction. - -**Parameters** - -- **linked_transaction_id** (`string`, required) Unique identifier for the linked transaction to be deleted. -- **xero_tenant_identifier** (`string`, required) Provide the unique Xero identifier for the tenant to specify the context of the deletion. - -## XeroApi.RetrieveManualJournals - -
- - -Retrieve manual journals from Xero. - -**Parameters** - -- **tenant_identifier** (`string`, required) The unique Xero identifier for the Tenant to retrieve manual journals from. -- **filter_criteria** (`string`, optional) Filter manual journals based on specified criteria, such as date or amount. -- **order_by_element** (`string`, optional) Specify the element to order the results by. Use field names like date, amount, etc. -- **page_number** (`integer`, optional) The page number to retrieve, e.g., page=1. Returns up to 100 manual journals per call. -- **records_per_page** (`integer`, optional) Specify the number of manual journal records to retrieve per page. -- **modified_since_timestamp** (`string`, optional) Retrieve records created or modified since this timestamp (ISO 8601 format). - -## XeroApi.RetrieveManualJournal - -
- - -Retrieve details of a specific manual journal. - -**Parameters** - -- **manual_journal_id** (`string`, required) Unique identifier for the manual journal you want to retrieve. -- **xero_tenant_id** (`string`, required) The unique identifier for a Xero tenant. Required to access tenant-specific data. - -## XeroApi.RetrieveJournalAttachments - -
- - -Retrieve attachments for a specific manual journal. - -**Parameters** - -- **manual_journal_id** (`string`, required) The unique identifier for a specific manual journal to retrieve its attachments. -- **tenant_id** (`string`, required) The unique Xero identifier for the tenant to access the manual journal attachments. - -## XeroApi.RetrieveJournalAttachment - -
- - -Retrieve a specific attachment from a manual journal using its ID. - -**Parameters** - -- **manual_journal_id** (`string`, required) Unique identifier for the manual journal from which to retrieve the attachment. -- **attachment_id** (`string`, required) Provide the unique identifier for the attachment object to retrieve it from a manual journal. -- **xero_tenant_id** (`string`, required) The unique Xero identifier for the tenant. Required to specify which tenant's data to access. -- **attachment_mime_type** (`string`, required) Specify the mime type of the attachment (e.g., image/jpg, application/pdf) to retrieve. - -## XeroApi.GetJournalAttachmentByFilename - -
- - -Retrieve a manual journal attachment by file name. - -**Parameters** - -- **manual_journal_id** (`string`, required) Unique identifier for the manual journal. Required to retrieve the specific attachment. -- **attachment_file_name** (`string`, required) The name of the attachment file to retrieve from the manual journal. -- **xero_tenant_identifier** (`string`, required) The unique identifier for the Xero tenant, used to specify the particular organization's data to access. -- **attachment_file_mime_type** (`string`, required) The MIME type of the attachment file, such as image/jpeg or application/pdf. - -## XeroApi.GetManualJournalHistory - -
- - -Retrieve history for a specific manual journal. - -**Parameters** - -- **manual_journal_id** (`string`, required) Unique identifier for the manual journal. Used to retrieve its historical details from Xero. -- **xero_tenant_id** (`string`, required) Xero identifier for a specific tenant. This is required to identify which tenant's data to retrieve. - -## XeroApi.CreateJournalHistoryRecord - -
- - -Creates a history record for a specific manual journal. - -**Parameters** - -- **manual_journal_id** (`string`, required) Unique identifier for a specific manual journal in Xero. -- **tenant_identifier** (`string`, required) Xero identifier for the tenant is required to specify which tenant's manual journal is being updated. -- **idempotency_key** (`string`, optional) A unique string, up to 128 characters, to safely retry requests without duplicate processing. - -## XeroApi.GetXeroOrganisationDetails - -
- - -Retrieves Xero organisation details. - -**Parameters** - -- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant. This ID is required to specify which organisation's details to retrieve. - -## XeroApi.RetrieveXeroOrganisationActions - -
- - -Retrieve key actions allowed in Xero organisation. - -**Parameters** - -- **xero_tenant_id** (`string`, required) Xero identifier for the tenant to specify which organisation's actions to retrieve. - -## XeroApi.GetCisSettings - -
- - -Retrieve CIS settings for a Xero organisation. - -**Parameters** - -- **organisation_id** (`string`, required) The unique Xero identifier for the organisation to retrieve CIS settings for. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required to specify which tenant's CIS settings to retrieve. - -## XeroApi.RetrieveOverpayments - -
- - -Retrieve overpayments from the accounting system. - -**Parameters** - -- **tenant_identifier** (`string`, required) The unique identifier for the Xero tenant to retrieve overpayments for. -- **filter_criteria** (`string`, optional) Filter overpayments by a specific element or condition. Use syntax like "Property=value" for filtering. -- **order_by_element** (`string`, optional) Specify the element by which to order the retrieved overpayments. Accepts any valid field. -- **page_number** (`integer`, optional) The page number for retrieving overpayments. Up to 100 overpayments will be returned per page. -- **unit_decimal_places** (`integer`, optional) The number of decimal places to use for unit amounts. Accepts up to four decimals. -- **records_per_page** (`integer`, optional) Specify the number of records to retrieve per page. Determines the page size for the results. -- **records_modified_since** (`string`, optional) Return records created or modified after the specified timestamp in ISO 8601 format. - -## XeroApi.RetrieveSpecificOverpayment - -
- - -Retrieve details of a specific overpayment by ID. - -**Parameters** - -- **overpayment_id** (`string`, required) Unique identifier for the overpayment to be retrieved. This ID is required to fetch the specific details of the overpayment from Xero. -- **xero_tenant_identifier** (`string`, required) The unique identifier for the Xero tenant. Required to specify which organization's data to access. - -## XeroApi.DeleteOverpaymentAllocation - -
- - -Delete an allocation from an overpayment in Xero. - -**Parameters** - -- **overpayment_id** (`string`, required) Unique identifier for a specific overpayment in Xero. -- **allocation_id** (`string`, required) Unique identifier for the Allocation object to be deleted. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant. Required to specify which tenant's data to access. - -## XeroApi.GetOverpaymentHistory - -
- - -Retrieve history records for a specific overpayment in Xero. - -**Parameters** - -- **overpayment_id** (`string`, required) Unique identifier for a specific overpayment in Xero. -- **xero_tenant_id** (`string`, required) Unique identifier for the tenant in Xero. Used to specify which tenant's data to access. - -## XeroApi.RecordOverpaymentHistory - -
- - -Creates a history record for a specific overpayment. - -**Parameters** - -- **overpayment_id** (`string`, required) Unique identifier for an overpayment that you want to create a history record for. -- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant. Required to specify which tenant to apply the overpayment history record to. -- **idempotency_key** (`string`, optional) A unique string (max 128 characters) for safely retrying requests without duplicate processing. - -## XeroApi.FetchInvoicePayments - -
- - -Retrieve payments for invoices and credit notes in Xero. - -**Parameters** - -- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. This is required to access the specific tenant's data. -- **filter_condition** (`string`, optional) Specify the filter condition for retrieving payments, based on any element. -- **order_by** (`string`, optional) Specify the order of payments by any element, such as date or amount. -- **page_number** (`integer`, optional) The page number to retrieve, starting from 1. Up to 100 payments are returned per page. -- **records_per_page** (`integer`, optional) Specify the number of records to retrieve per page, up to a maximum of 100. -- **modified_since_timestamp** (`string`, optional) Only records created or modified since this timestamp will be retrieved. Use ISO 8601 format (e.g., 'YYYY-MM-DDTHH:MM:SSZ'). - -## XeroApi.RetrieveInvoicePayment - -
- - -Retrieve specific payment details using a payment ID. - -**Parameters** - -- **payment_id** (`string`, required) Unique identifier for the payment, used to retrieve specific payment details in Xero. -- **xero_tenant_id** (`string`, required) Xero identifier for the tenant. This is required to specify which organization's data to access. - -## XeroApi.RetrievePaymentHistory - -
- - -Retrieve the history records of a specific payment. - -**Parameters** - -- **payment_identifier** (`string`, required) Unique identifier for a specific payment to retrieve its history. -- **tenant_identifier** (`string`, required) Xero identifier for the tenant. Used to specify which tenant's data to access. - -## XeroApi.CreatePaymentHistoryRecord - -
- - -Create a history record for a specific payment. - -**Parameters** - -- **payment_identifier** (`string`, required) Unique identifier for a specific payment in Xero. -- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant. This is required to specify which tenant's data the action applies to. -- **idempotency_key** (`string`, optional) A unique key to safely retry requests and prevent duplicate processing. Maximum 128 characters. - -## XeroApi.RetrievePaymentServices - -
- - -Retrieve available payment services from Xero. - -**Parameters** - -- **xero_tenant_id** (`string`, required) Unique identifier for the Xero tenant. Required to retrieve specific payment services for the tenant. - -## XeroApi.RetrievePrepayments - -
- - -Retrieve prepayment details from Xero. - -**Parameters** - -- **xero_tenant_identifier** (`string`, required) The unique Xero identifier for the Tenant. Required for specifying which account's prepayments to retrieve. -- **filter_condition** (`string`, optional) Provide a filter condition to specify which prepayments to retrieve. -- **order_criteria** (`string`, optional) Specifies the order of elements. Use field names for custom sorting, such as 'Date ASC' or 'Amount DESC'. -- **page_number** (`integer`, optional) Specify the page number to retrieve, up to 100 prepayments per page. -- **unit_decimal_places** (`integer`, optional) Specify the number of decimal places (e.g., 4) for unit amounts. Use for precise calculations. -- **records_per_page** (`integer`, optional) The number of prepayment records to retrieve per page. This controls how many results are returned in a single call. -- **modified_since_timestamp** (`string`, optional) Only return records created or modified since the specified timestamp (e.g., '2023-10-01T00:00:00Z'). - -## XeroApi.GetPrepaymentDetails - -
- - -Retrieve details of a specified prepayment from Xero. - -**Parameters** - -- **prepayment_id** (`string`, required) The unique identifier for the prepayment you want to retrieve. -- **xero_tenant_id** (`string`, required) The unique Xero identifier for the tenant. Required to retrieve specific prepayment data. - -## XeroApi.DeletePrepaymentAllocation - -
- - -Delete an allocation from a prepayment in Xero. - -**Parameters** - -- **prepayment_id** (`string`, required) Unique identifier for a PrePayment. Required to specify which prepayment the allocation will be deleted from. -- **allocation_id** (`string`, required) Unique identifier for the Allocation object to be deleted from a prepayment. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant in which the prepayment allocation deletion will occur. - -## XeroApi.GetPrepaymentHistory - -
- - -Retrieve history for a specific prepayment. - -**Parameters** - -- **prepayment_id** (`string`, required) Unique identifier for the prepayment to retrieve its history. -- **xero_tenant_id** (`string`, required) Unique identifier for the Xero tenant, required to access its data. - -## XeroApi.CreatePrepaymentHistory - -
- - -Creates a history record for a specific prepayment. - -**Parameters** - -- **prepayment_id** (`string`, required) Unique identifier for the specific PrePayment to create a history record for. -- **xero_tenant_id** (`string`, required) Xero identifier for the Tenant. This is required to specify which tenant's data the prepayment history applies to. -- **idempotency_key** (`string`, optional) A unique string to safely retry requests without duplicate processing, up to 128 characters. - -## XeroApi.RetrievePurchaseOrders - -
- - -Retrieve purchase orders from Xero. - -**Parameters** - -- **xero_tenant_id** (`string`, required) Unique identifier for the Xero tenant to access specific organization's data. -- **filter_by_status** (`string`, optional) Filter purchase orders by status. Accepted values are: 'DRAFT', 'SUBMITTED', 'AUTHORISED', 'BILLED', 'DELETED'. -- **filter_by_start_date** (`string`, optional) Specify the start date for filtering purchase orders. Use format 'YYYY-MM-DD'. -- **filter_by_end_date** (`string`, optional) Filter purchase orders by end date (format: YYYY-MM-DD). -- **order_by_element** (`string`, optional) Specifies the element by which to sort the purchase orders, such as date or status. Accepts any valid field name. -- **page_number** (`integer`, optional) Specifies the page of results to retrieve. Increment to access subsequent pages of purchase orders. -- **records_per_page** (`integer`, optional) Specify the number of purchase order records to retrieve per page. -- **modified_since_timestamp** (`string`, optional) Timestamp to filter records created or modified since this time. Use ISO 8601 format (e.g., '2023-01-01T00:00:00Z'). - -## XeroApi.GetPurchaseOrderPdf - -
- - -Retrieve a purchase order as a PDF using its ID. - -**Parameters** - -- **purchase_order_id** (`string`, required) Unique identifier for a purchase order to retrieve it as a PDF. -- **tenant_identifier** (`string`, required) The Xero identifier for the Tenant. Required to specify which tenant's data to access. - -## XeroApi.RetrievePurchaseOrder - -
- - -Retrieve details of a specific purchase order by ID. - -**Parameters** - -- **purchase_order_id** (`string`, required) Unique identifier for a purchase order. Required to retrieve specific purchase order details. -- **xero_tenant_id** (`string`, required) Xero identifier for the tenant. This is required to specify which tenant's purchase order to retrieve. - -## XeroApi.RetrievePurchaseOrderByNumber - -
- - -Fetches a purchase order using its unique number. - -**Parameters** - -- **purchase_order_number** (`string`, required) Unique identifier for the purchase order to be fetched. -- **xero_tenant_id** (`string`, required) Unique identifier for the Xero tenant. Required to specify the account from which to retrieve the purchase order. - -## XeroApi.RetrievePurchaseOrderHistory - -
- - -Retrieve the history of a specific purchase order. - -**Parameters** - -- **purchase_order_id** (`string`, required) Unique identifier for the purchase order to retrieve its history. -- **tenant_identifier** (`string`, required) Xero identifier for the tenant, required to specify which organization data belongs to. - -## XeroApi.CreatePurchaseOrderHistory - -
- - -Create a history record for a purchase order. - -**Parameters** - -- **purchase_order_id** (`string`, required) Unique identifier for a Purchase Order. Pass the specific ID for which a history record will be created. -- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant. Required for API requests. -- **idempotency_key** (`string`, optional) A unique key to safely retry requests without duplicate processing; 128 character max. - -## XeroApi.RetrievePurchaseOrderAttachments - -
- - -Retrieve attachments for a specific purchase order. - -**Parameters** - -- **purchase_order_id** (`string`, required) Unique identifier for a purchase order to retrieve its attachments. -- **xero_tenant_id** (`string`, required) The unique Xero identifier for the tenant linked to the purchase order. Required to authenticate and access tenant-specific data. - -## XeroApi.FetchPurchaseOrderAttachment - -
- - -Retrieve a specific attachment from a purchase order. - -**Parameters** - -- **purchase_order_id** (`string`, required) Unique identifier for a Purchase Order to retrieve a specific attachment. -- **attachment_id** (`string`, required) Unique identifier for the attachment object to be retrieved. -- **xero_tenant_id** (`string`, required) Xero identifier for the Tenant. This is required to specify which organization the request is for. -- **attachment_mime_type** (`string`, required) The MIME type of the attachment file to retrieve, e.g., image/jpg, application/pdf. - -## XeroApi.RetrievePoAttachmentByFilename - -
- - -Retrieve a purchase order attachment by filename. - -**Parameters** - -- **purchase_order_id** (`string`, required) Unique identifier for the purchase order you want to retrieve the attachment from. -- **attachment_file_name** (`string`, required) Name of the attachment file to be retrieved from the purchase order. -- **xero_tenant_identifier** (`string`, required) Xero unique identifier for the tenant organization. Required to specify which organization's data to retrieve. -- **attachment_mime_type** (`string`, required) The MIME type of the attachment file to retrieve, e.g., image/jpg or application/pdf. - -## XeroApi.RetrieveSalesQuotes - -
- - -Retrieve sales quotes from Xero. - -**Parameters** - -- **xero_tenant_id** (`string`, required) Xero tenant identifier for accessing the specific account's data. -- **filter_start_date** (`string`, optional) Filter quotes issued after a specified date in YYYY-MM-DD format. -- **filter_date_to** (`string`, optional) Filter for sales quotes before a specified date in YYYY-MM-DD format. -- **expiry_date_after** (`string`, optional) Filter to retrieve quotes expiring after the specified date. Format: YYYY-MM-DD. -- **filter_expiry_date_before** (`string`, optional) Filter for quotes expiring before a specified date (YYYY-MM-DD). -- **contact_id** (`string`, optional) Filter the sales quotes by specifying the contact ID to which they belong. -- **quote_status** (`string`, optional) Filter quotes by their status (e.g., DRAFT, SENT). -- **page_number** (`integer`, optional) The page number to retrieve, allowing pagination through quotes. Each page returns up to 100 quotes. -- **order_by_element** (`string`, optional) Specify the element to order the sales quotes by. -- **quote_number_filter** (`string`, optional) Filter sales quotes by specifying the quote number (e.g., QU-0001). -- **modified_since_timestamp** (`string`, optional) Retrieve records created or modified after this timestamp. - -## XeroApi.RetrieveQuote - -
- - -Retrieve details of a specific quote by ID. - -**Parameters** - -- **quote_id** (`string`, required) Unique identifier for a quote to retrieve its details. -- **xero_tenant_id** (`string`, required) Provide the Xero identifier for the tenant to specify the account context. - -## XeroApi.RetrieveQuoteHistory - -
- - -Retrieves history records of a specific quote. - -**Parameters** - -- **quote_id** (`string`, required) Unique identifier for the quote to retrieve its history records. -- **xero_tenant_identifier** (`string`, required) The unique identifier for the Xero tenant. Required to specify which tenant's quote history to retrieve. - -## XeroApi.AddQuoteHistory - -
- - -Creates a history record for a specific quote. - -**Parameters** - -- **quote_identifier** (`string`, required) Unique identifier for a quote to which the history will be added. -- **xero_tenant_id** (`string`, required) Xero identifier for the tenant. Required for specifying the tenant within the Xero system. -- **idempotency_key** (`string`, optional) Unique key to safely retry requests and avoid duplicate processing (max 128 characters). - -## XeroApi.RetrieveQuotePdf - -
- - -Retrieve a specific quote as a PDF file using the quote ID. - -**Parameters** - -- **quote_id** (`string`, required) A unique identifier for the quote to retrieve as a PDF. -- **tenant_identifier** (`string`, required) The unique Xero tenant identifier required to access the specific quote. - -## XeroApi.RetrieveQuoteAttachments - -
- - -Retrieve attachments for a specific quote in Xero. - -**Parameters** - -- **quote_id** (`string`, required) Unique identifier for a quote in Xero to retrieve its attachments. -- **tenant_identifier** (`string`, required) The unique Xero tenant identifier required to retrieve the quote attachments. - -## XeroApi.GetQuoteAttachment - -
- - -Retrieve a specific attachment from a quote by ID. - -**Parameters** - -- **quote_id** (`string`, required) Unique identifier for a quote. Used to specify which quote the attachment belongs to. -- **attachment_id** (`string`, required) Unique identifier for the attachment object you wish to retrieve. -- **xero_tenant_identifier** (`string`, required) The unique Xero identifier for the tenant required to access the attachment. -- **attachment_content_type** (`string`, required) The MIME type of the attachment file to retrieve, such as image/jpeg or application/pdf. - -## XeroApi.RetrieveQuoteAttachmentByFilename - -
- - -Retrieve an attachment from a quote using filename. - -**Parameters** - -- **quote_identifier** (`string`, required) Unique identifier for a Quote. Use this to specify which quote's attachment you want to retrieve. -- **attachment_filename** (`string`, required) Name of the attachment file to retrieve from the quote. -- **xero_tenant_identifier** (`string`, required) Xero tenant's unique identifier. Required to specify which tenant's data to access. -- **attachment_mime_type** (`string`, required) The MIME type of the attachment file (e.g., image/jpg, application/pdf). - -## XeroApi.GetDraftExpenseReceipts - -
- - -Retrieve draft expense claim receipts from Xero. - -**Parameters** - -- **xero_tenant_id** (`string`, required) The unique identifier for a Xero tenant. Used to specify which tenant's data to retrieve. -- **filter_condition** (`string`, optional) A string to filter draft expense receipts based on specified criteria. -- **order_receipts_by** (`string`, optional) Specify the attribute by which to order the receipts. For example, by date or amount. -- **unit_decimal_places** (`integer`, optional) Specifies the number of decimal places for unit amounts. For example, set to 4 for four decimal places. -- **modified_since_timestamp** (`string`, optional) A timestamp to filter records updated or created since this date. Format should be in ISO 8601, e.g., '2023-10-10T00:00:00Z'. - -## XeroApi.RetrieveDraftExpenseClaimReceipt - -
- - -Retrieve a draft expense claim receipt using its ID. - -**Parameters** - -- **receipt_id** (`string`, required) The unique identifier for the draft expense claim receipt to retrieve. -- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant. Required to specify which organization's data is being accessed. -- **use_four_decimal_places** (`integer`, optional) Set to true to use four decimal places for unit amounts, false for standard. - -## XeroApi.GetReceiptAttachments - -
- - -Retrieve attachments for a specific expense claim receipt. - -**Parameters** - -- **receipt_id** (`string`, required) Unique identifier for the expense claim receipt to retrieve attachments. -- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant. Required to access tenant-specific data. - -## XeroApi.RetrieveReceiptAttachment - -
- - -Retrieve a specific attachment from an expense receipt. - -**Parameters** - -- **receipt_id** (`string`, required) Unique identifier for a receipt used to retrieve its attachment. -- **attachment_id** (`string`, required) Unique identifier for the attachment object you want to retrieve. -- **xero_tenant_id** (`string`, required) Xero identifier for the Tenant. Required to specify which tenant's data to access. -- **attachment_mime_type** (`string`, required) Specify the MIME type of the attachment, e.g., 'image/jpg' or 'application/pdf'. - -## XeroApi.GetExpenseReceiptAttachment - -
- - -Retrieve an attachment from a receipt by file name. - -**Parameters** - -- **receipt_id** (`string`, required) The unique identifier for a specific expense receipt. This is used to locate the correct receipt attachment. -- **attachment_file_name** (`string`, required) The name of the attachment to retrieve from the expense claim receipt. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required to specify the organization context in Xero from which to retrieve the attachment. -- **attachment_mime_type** (`string`, required) The MIME type of the attachment file, such as image/jpg or application/pdf, that you are retrieving from the receipt. - -## XeroApi.RetrieveReceiptHistory - -
- - -Retrieve detailed history for a specific receipt. - -**Parameters** - -- **receipt_id** (`string`, required) Unique identifier for the receipt to retrieve its history. -- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant associated with the receipt. - -## XeroApi.RecordReceiptHistory - -
- - -Creates a history record for a specific receipt. - -**Parameters** - -- **receipt_id** (`string`, required) Unique identifier for a receipt used to create a history record. -- **tenant_identifier** (`string`, required) Xero tenant identifier required for creating the receipt history. -- **idempotency_key** (`string`, optional) String up to 128 characters to safely retry requests without risk of duplication. - -## XeroApi.GetRepeatingInvoices - -
- - -Retrieve repeating invoices from Xero. - -**Parameters** - -- **tenant_identifier** (`string`, required) The unique identifier for the tenant in Xero. Required to retrieve specific tenant data. -- **filter_by_element** (`string`, optional) Filter invoices using a specific element condition. Use Xero's query language for filtering expressions. -- **order_by_element** (`string`, optional) Specify the element to order the repeating invoices by. It accepts a string indicating the element to sort by. - -## XeroApi.GetRepeatingInvoice - -
- - -Retrieve a specific repeating invoice using its unique ID. - -**Parameters** - -- **repeating_invoice_id** (`string`, required) Unique identifier for the specific repeating invoice to retrieve. -- **tenant_id** (`string`, required) Xero tenant identifier required to access a specific tenant's data. - -## XeroApi.RetrieveRepeatingInvoiceAttachments - -
- - -Retrieve attachments from a specified repeating invoice. - -**Parameters** - -- **repeating_invoice_id** (`string`, required) Unique identifier for a repeating invoice in Xero. Needed to retrieve the corresponding attachments. -- **xero_tenant_identifier** (`string`, required) A unique identifier for the Xero tenant. Required to access specific tenant data. - -## XeroApi.RetrieveRepeatingInvoiceAttachmentById - -
- - -Retrieve a specific attachment from a repeating invoice. - -**Parameters** - -- **repeating_invoice_id** (`string`, required) Unique identifier for a Repeating Invoice in Xero system. -- **attachment_id** (`string`, required) Unique identifier for the attachment object you want to retrieve from the repeating invoice. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant needed to retrieve the repeating invoice attachment. -- **attachment_mime_type** (`string`, required) The MIME type of the attachment file, such as image/jpg or application/pdf. - -## XeroApi.RetrieveRepeatingInvoiceAttachment - -
- - -Retrieve a repeating invoice attachment by file name. - -**Parameters** - -- **repeating_invoice_id** (`string`, required) Unique identifier for a specific repeating invoice. This is necessary to locate the invoice attachment. -- **attachment_file_name** (`string`, required) The name of the attachment file you wish to retrieve from the repeating invoice. -- **xero_tenant_identifier** (`string`, required) Xero tenant ID needed to identify the specific organization in Xero. -- **attachment_mime_type** (`string`, required) Specify the MIME type of the attachment file to retrieve, such as image/jpg or application/pdf. - -## XeroApi.GetRepeatingInvoiceHistory - -
- - -Retrieve history record for a specific repeating invoice. - -**Parameters** - -- **repeating_invoice_id** (`string`, required) Unique identifier for the specific repeating invoice to retrieve history for. -- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant associated with the repeating invoice. - -## XeroApi.CreateRepeatingInvoiceHistory - -
- - -Creates a history record for a repeating invoice. - -**Parameters** - -- **repeating_invoice_id** (`string`, required) Unique identifier for a Repeating Invoice to create a history record. -- **tenant_identifier** (`string`, required) Xero identifier for the tenant, required for accessing specific tenant data. -- **idempotency_key** (`string`, optional) A unique string, max 128 characters, to safely retry requests without duplication. - -## XeroApi.Retrieve1099Reports - -
- - -Retrieves 1099 tax reports. - -**Parameters** - -- **xero_tenant_identifier** (`string`, required) The unique identifier for the tenant in Xero. Required to access the specific tenant's 1099 report data. -- **report_year** (`string`, optional) The year for which the 1099 report should be retrieved, in YYYY format. - -## XeroApi.GetAgedPayablesReportByContact - -
- - -Retrieve aged payables report by contact. - -**Parameters** - -- **contact_identifier** (`string`, required) Unique identifier for the contact to retrieve the aged payables report. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required to specify which tenant's data is being accessed. -- **report_date** (`string`, optional) The specific date for the Aged Payables By Contact report in YYYY-MM-DD format. -- **report_from_date** (`string`, optional) Specify the start date for filtering the report, in YYYY-MM-DD format (e.g. 2021-02-01). -- **report_end_date** (`string`, optional) Filter the report by specifying the end date, formatted as YYYY-MM-DD (e.g., 2021-02-28). - -## XeroApi.GetAgedReceivablesReportByContact - -
- - -Retrieve aged receivables report by contact. - -**Parameters** - -- **contact_identifier** (`string`, required) Unique identifier for a Contact to retrieve their aged receivables report. -- **tenant_identifier** (`string`, required) Unique Xero identifier for the Tenant. Required to specify which tenant's data to retrieve. -- **report_date** (`string`, optional) The specific date for which the aged receivables report by contact is generated. -- **start_date_filter** (`string`, optional) Filter the report starting from this date (YYYY-MM-DD). -- **filter_by_to_date** (`string`, optional) Specify the end date for filtering the aged receivables report, e.g., '2021-02-28'. - -## XeroApi.GetBalanceSheetReport - -
- - -Retrieve the balance sheet report from Xero. - -**Parameters** - -- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. Used to specify which organization's data to retrieve in Xero. -- **report_date** (`string`, optional) The specific date for which to retrieve the Balance Sheet report. Format as YYYY-MM-DD. -- **number_of_periods** (`integer`, optional) The number of periods to include in the Balance Sheet report. -- **comparison_timeframe** (`string`, optional) The period size for comparison, e.g., MONTH, QUARTER, or YEAR. -- **balance_sheet_tracking_option_id_1** (`string`, optional) The first tracking option ID for generating the Balance Sheet report in Xero. -- **tracking_option_id_2** (`string`, optional) The tracking option ID for secondary categorization in the Balance Sheet report. This allows for filtering or segmentation based on a second tracking category within Xero. -- **use_standard_layout** (`boolean`, optional) Set to true to use the standard layout for the Balance Sheet report in Xero. -- **return_cash_basis** (`boolean`, optional) Set to True to return the Balance Sheet report using a cash basis. - -## XeroApi.GetBankSummaryReport - -
- - -Retrieve bank summary reports from Xero. - -**Parameters** - -- **xero_tenant_id** (`string`, required) Unique identifier for the Xero tenant. Required for accessing the relevant account data. -- **start_date_filter** (`string`, optional) Filter the report by the starting date, formatted as YYYY-MM-DD. For example, 2021-02-01. -- **end_date_filter** (`string`, optional) Filter the report by the end date, formatted as YYYY-MM-DD, e.g., 2021-02-28. - -## XeroApi.RetrieveSpecificReport - -
- - -Retrieve a specific report using a ReportID. - -**Parameters** - -- **report_id** (`string`, required) Unique identifier for a specific report to be retrieved. -- **xero_tenant_id** (`string`, required) Xero identifier for the Tenant. This is required to specify which tenant's data is being accessed. - -## XeroApi.GetBudgetSummaryReport - -
- - -Retrieves the budget summary report from Xero. - -**Parameters** - -- **xero_tenant_identifier** (`string`, required) The unique Xero identifier for the tenant, required for authentication and data retrieval. -- **report_date** (`string`, optional) The specific date for the budget summary report in YYYY-MM-DD format, e.g., 2018-03-31. -- **number_of_periods_to_compare** (`integer`, optional) The number of periods for comparison, must be an integer between 1 and 12. -- **comparison_timeframe** (`integer`, optional) Specify the period size for comparison: 1 for month, 3 for quarter, or 12 for year. - -## XeroApi.RetrieveExecutiveSummaryReport - -
- - -Retrieve an executive summary report for financial insights. - -**Parameters** - -- **xero_tenant_identifier** (`string`, required) The Xero identifier for the tenant. Required to specify which tenant's data should be retrieved. -- **report_date** (`string`, optional) The date for the Bank Summary report in the format YYYY-MM-DD (e.g., 2018-03-31). - -## XeroApi.RetrieveUniqueReportsList - -
- - -Retrieve a list of unique reports from Xero. - -**Parameters** - -- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant to retrieve reports for. - -## XeroApi.GetProfitAndLossReport - -
- - -Retrieve profit and loss report from Xero. - -**Parameters** - -- **tenant_identifier** (`string`, required) The Xero identifier for the tenant. Required to specify which tenant's data to access. -- **from_date** (`string`, optional) Filter the report by the starting date in YYYY-MM-DD format, e.g., 2021-02-01. -- **end_date** (`string`, optional) Filter by the end date of the report in YYYY-MM-DD format, e.g., 2021-02-28. -- **number_of_comparison_periods** (`integer`, optional) The number of periods to compare, must be an integer between 1 and 12. -- **comparison_timeframe** (`string`, optional) The period size to compare to for the report. Options are MONTH, QUARTER, or YEAR. -- **tracking_category_id** (`string`, optional) The first tracking category ID for the Profit and Loss report filter. Expect a string representing the tracking category identifier. -- **secondary_tracking_category_id** (`string`, optional) The ID of the second tracking category for the Profit and Loss report. -- **tracking_option_1_id** (`string`, optional) The identifier for the first tracking option in the Profit and Loss report. -- **tracking_option_id_2** (`string`, optional) The second tracking option identifier for filtering the Profit and Loss report. -- **return_standard_layout** (`boolean`, optional) Set to true to return the Profit and Loss report in the standard layout. -- **return_cash_basis_only** (`boolean`, optional) Specify true to return the Profit and Loss report on a cash only basis. - -## XeroApi.GetTrialBalanceReport - -
- - -Fetches the trial balance report from Xero. - -**Parameters** - -- **tenant_identifier** (`string`, required) The unique identifier for the Xero tenant to retrieve the trial balance report for. -- **report_date** (`string`, optional) The specific date for the Trial Balance report in YYYY-MM-DD format. -- **return_cash_basis_only** (`boolean`, optional) Set to true to return the trial balance report on a cash-only basis, false for accrual. - -## XeroApi.SetFinancialSetup - -
- - -Sets up the financial chart of accounts and conversion details. - -**Parameters** - -- **xero_tenant_identifier** (`string`, required) Xero tenant ID required to identify the specific tenant for the request. -- **financial_setup_details** (`json`, required) JSON object containing accounts, conversion balances, and a conversion date for setting up the financial chart in Xero. -- **idempotency_key** (`string`, optional) A unique string up to 128 characters to safely retry requests without duplicating processing. - -## XeroApi.RetrieveTaxRates - -
- - -Retrieve tax rates from Xero. - -**Parameters** - -- **xero_tenant_id** (`string`, required) A unique identifier for the Xero tenant. This is required to access tenant-specific data. -- **filter_by_element** (`string`, optional) Apply a filter to the tax rates by specifying an element condition (e.g. 'Status=="ACTIVE"'). -- **order_by_element** (`string`, optional) Specify the element to order the tax rates by. Provide any valid field or attribute name. - -## XeroApi.GetTaxRateByTaxType - -
- - -Retrieve a specific tax rate using a TaxType code. - -**Parameters** - -- **tax_type_code** (`string`, required) A valid TaxType code used to retrieve the specific tax rate. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant. Required to specify which tenant's data is being accessed. - -## XeroApi.GetTrackingCategories - -
- - -Retrieve tracking categories and options from Xero. - -**Parameters** - -- **xero_tenant_identifier** (`string`, required) Unique identifier for the Xero tenant. Required to specify the tenant from which tracking categories should be retrieved. -- **filter_conditions** (`string`, optional) String to filter tracking categories by specific conditions. -- **order_by_element** (`string`, optional) Specify the element to order the tracking categories and options by. -- **include_archived_categories** (`boolean`, optional) Set to true to include categories and options with a status of ARCHIVED in the response. - -## XeroApi.GetTrackingCategory - -
- - -Retrieve tracking category details using its unique ID. - -**Parameters** - -- **tracking_category_id** (`string`, required) Unique identifier for the tracking category to retrieve details for. -- **xero_tenant_id** (`string`, required) A string representing the Xero identifier for the tenant. Required to access tenant-specific data. - -## XeroApi.RemoveTrackingCategory - -
- - -Deletes a specific tracking category from Xero. - -**Parameters** - -- **tracking_category_id** (`string`, required) Unique identifier for the tracking category to be deleted in Xero. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant. Required to specify which tenant's tracking category to delete. - -## XeroApi.DeleteTrackingOption - -
- - -Deletes a specific tracking category option in Xero. - -**Parameters** - -- **tracking_category_id** (`string`, required) Unique identifier for the tracking category to specify which category the option will be deleted from. -- **tracking_option_id** (`string`, required) Unique identifier for a tracking option to be deleted in Xero. -- **xero_tenant_id** (`string`, required) The unique identifier for a Xero tenant. This specifies which tenant's data will be affected. - -## XeroApi.RetrieveXeroUsers - -
- - -Retrieve users from the Xero platform. - -**Parameters** - -- **xero_tenant_identifier** (`string`, required) Xero identifier for the specific tenant. This is required to specify the tenant for which users are to be retrieved. -- **filter_by_criteria** (`string`, optional) A string to filter users based on specific criteria in Xero. -- **order_by_element** (`string`, optional) Specify the element to order the retrieved users by, such as name or date. -- **modified_since_timestamp** (`string`, optional) Return only records created or modified since this timestamp, formatted as an ISO 8601 string. - -## XeroApi.RetrieveSpecificUser - -
- - -Retrieve details of a specific user from Xero. - -**Parameters** - -- **user_identifier** (`string`, required) Unique identifier for a User in Xero system. -- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. Use this to specify which tenant the user belongs to. - -## XeroApi.GetConnectedTenants - -
- - -Fetch active Tenants connections from Xero organization. - -**Parameters** - -- **filter_auth_event_id** (`string`, optional) A string used to filter the results by a specific authEventId, narrowing down the connections returned. - -## XeroApi.DeleteTenantConnection - -
- - -Delete a specified Xero connection using its ID. - -**Parameters** - -- **tenant_connection_id** (`string`, required) Unique identifier for the Xero connection to be deleted. - - diff --git a/app/en/resources/integrations/sales/[toolkitId]/_meta.tsx b/app/en/resources/integrations/sales/[toolkitId]/_meta.tsx new file mode 100644 index 000000000..ce7f0efde --- /dev/null +++ b/app/en/resources/integrations/sales/[toolkitId]/_meta.tsx @@ -0,0 +1,13 @@ +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "*": { + theme: { + breadcrumb: false, + toc: false, + copyPage: false, + }, + }, +}; + +export default meta; diff --git a/app/en/resources/integrations/sales/[toolkitId]/page-impl.tsx b/app/en/resources/integrations/sales/[toolkitId]/page-impl.tsx new file mode 100644 index 000000000..3112c162b --- /dev/null +++ b/app/en/resources/integrations/sales/[toolkitId]/page-impl.tsx @@ -0,0 +1,10 @@ +import { createToolkitDocsPage } from "@/app/en/resources/integrations/_lib/toolkit-docs-page"; + +export const dynamicParams = false; + +const { Page, generateMetadata, generateStaticParams } = + createToolkitDocsPage("sales"); + +export { generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/sales/[toolkitId]/page.mdx b/app/en/resources/integrations/sales/[toolkitId]/page.mdx new file mode 100644 index 000000000..ca97c319f --- /dev/null +++ b/app/en/resources/integrations/sales/[toolkitId]/page.mdx @@ -0,0 +1,14 @@ +--- +title: "MCP server" +description: "Generated MCP server documentation." +--- + +import Page, { + dynamicParams, + generateMetadata, + generateStaticParams, +} from "./page-impl"; + +export { dynamicParams, generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/sales/_meta.tsx b/app/en/resources/integrations/sales/_meta.tsx index 6038e0d90..81c622556 100644 --- a/app/en/resources/integrations/sales/_meta.tsx +++ b/app/en/resources/integrations/sales/_meta.tsx @@ -1,18 +1,53 @@ import type { MetaRecord } from "nextra"; const meta: MetaRecord = { - "*": { - theme: { - breadcrumb: true, - toc: true, - copyPage: true, - }, + "-- Optimized": { + type: "separator", + title: "Optimized", }, hubspot: { title: "HubSpot", + href: "/en/resources/integrations/sales/hubspot", }, salesforce: { title: "Salesforce", + href: "/en/resources/integrations/sales/salesforce", + }, + "-- Starter": { + type: "separator", + title: "Starter", + }, + hubspotautomationapi: { + title: "HubSpot Automation API", + href: "/en/resources/integrations/sales/hubspotautomationapi", + }, + hubspotcmsapi: { + title: "HubSpot CMS API", + href: "/en/resources/integrations/sales/hubspotcmsapi", + }, + hubspotconversationsapi: { + title: "HubSpot Conversations API", + href: "/en/resources/integrations/sales/hubspotconversationsapi", + }, + hubspotcrmapi: { + title: "HubSpot CRM API", + href: "/en/resources/integrations/sales/hubspotcrmapi", + }, + hubspoteventsapi: { + title: "HubSpot Events API", + href: "/en/resources/integrations/sales/hubspoteventsapi", + }, + hubspotmarketingapi: { + title: "HubSpot Marketing API", + href: "/en/resources/integrations/sales/hubspotmarketingapi", + }, + hubspotmeetingsapi: { + title: "HubSpot Meetings API", + href: "/en/resources/integrations/sales/hubspotmeetingsapi", + }, + hubspotusersapi: { + title: "HubSpot Users API", + href: "/en/resources/integrations/sales/hubspotusersapi", }, }; diff --git a/app/en/resources/integrations/sales/hubspot-automation-api/page.mdx b/app/en/resources/integrations/sales/hubspot-automation-api/page.mdx deleted file mode 100644 index d40582e1d..000000000 --- a/app/en/resources/integrations/sales/hubspot-automation-api/page.mdx +++ /dev/null @@ -1,331 +0,0 @@ -# HubspotAutomationApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The HubspotAutomationApi MCP Server offers a comprehensive suite of tools for managing and automating workflows within HubSpot. Users can leverage these tools to: - -- Complete and manage blocked action executions in automation workflows. -- Fetch and retrieve details about email campaigns and workflows. -- Check the enrollment status of contacts in sequences. -- Enroll contacts into specific sequences for automated follow-ups. -- Access user-specific sequences and their details. - -This server streamlines the automation process, making it easier to handle marketing activities and user interactions within HubSpot. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## HubspotAutomationApi.CompleteActionExecution - -
- - -Complete a specific blocked action execution by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **action_execution_id** (`string`, optional) The unique identifier of the action execution to be completed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotAutomationApi.CompleteBatchActionExecutions - -
- - -Complete a batch of blocked action executions. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotAutomationApi.FetchEmailCampaigns - -
- - -Fetch email campaigns from HubSpot Automation. - -**Parameters** - -- **email_campaign_flow_ids** (`array[string]`, optional) An array of flow IDs to specify which email campaigns to retrieve. Each ID should be a string. -- **end_date_filter** (`string`, optional) A timestamp filter to get campaigns before a specific date (in YYYY-MM-DD format). -- **max_results** (`integer`, optional) Specifies the maximum number of email campaign entries to retrieve. Should be an integer value. -- **start_date** (`string`, optional) Specify the start date for fetching email campaigns. This should be in the format YYYY-MM-DD to filter results starting after this date. - -## HubspotAutomationApi.GetWorkflows - -
- - -Retrieve details of HubSpot workflows. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotAutomationApi.GetWorkflowIdMappings - -
- - -Retrieve HubSpot workflow ID mappings in batch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotAutomationApi.CheckContactEnrollmentStatus - -
- - -Retrieve the sequence enrollment status of a contact by ID. - -**Parameters** - -- **contact_id** (`string`, required) The unique ID of the contact to check their sequence enrollment status. - -## HubspotAutomationApi.GetUserSequences - -
- - -Retrieve a list of sequences for a specific user. - -**Parameters** - -This tool does not take any parameters. - -## HubspotAutomationApi.EnrollContactInSequence - -
- - -Enroll a contact into a sequence with user ID and details. - -**Parameters** - -- **contact_id** (`string`, required) The unique identifier of the contact to be enrolled in the sequence. -- **sender_email** (`string`, required) The email address of the sender enrolling the contact. This should be a valid email associated with the sender's HubSpot user account. -- **sequence_identifier** (`string`, required) The unique identifier of the sequence to enroll the contact into. It should be a valid string matching the sequence available in the system. -- **sender_alias_address** (`string`, optional) Email alias for the sender addressing the sequence. This is used instead of the default email address. - -## HubspotAutomationApi.GetSequenceDetails - -
- - -Retrieve details of a specific sequence by its ID. - -**Parameters** - -- **sequence_id** (`string`, required) The unique ID of the sequence to retrieve details for. This ID identifies which sequence's information will be returned. - -## Reference - -Below is a reference of enumerations used by some of the tools in the HubspotAutomationApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - -## Auth - -The HubspotAutomationApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotAutomationApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider. - - diff --git a/app/en/resources/integrations/sales/hubspot-cms-api/page.mdx b/app/en/resources/integrations/sales/hubspot-cms-api/page.mdx deleted file mode 100644 index 9c550b941..000000000 --- a/app/en/resources/integrations/sales/hubspot-cms-api/page.mdx +++ /dev/null @@ -1,5481 +0,0 @@ -# HubspotCmsApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The HubspotCmsApi MCP Server offers a comprehensive suite of tools for managing content within the HubSpot CMS. Users can efficiently perform actions such as: - -- Create, update, and delete blog posts, landing pages, and site pages. -- Manage blog authors and tags, including creating language variations. -- Handle multi-language support for content and manage URL redirects. -- Retrieve detailed information about various content types, including revision histories and settings. - -This server streamlines content management processes, making it easier to maintain and optimize your HubSpot CMS environment. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## HubspotCmsApi.GetBlogAuthorById - -
- - -Retrieve blog author details using an object ID. - -**Parameters** - -- **blog_author_id** (`string`, required) The unique identifier for the blog author to retrieve their details. -- **include_deleted_blog_authors** (`boolean`, optional) Set to true to include deleted blog authors in the results. Defaults to false. -- **specific_author_property** (`string`, optional) Specify a property to retrieve specific details about the blog author, such as a specific attribute or field. - -## HubspotCmsApi.DeleteBlogAuthor - -
- - -Delete a specific blog author by ID. - -**Parameters** - -- **blog_author_id** (`string`, required) The unique identifier of the Blog Author to be deleted. -- **return_archived_only** (`boolean`, optional) Set to true to return only archived blog authors. Use for fetching deleted or inactive authors. - -## HubspotCmsApi.UpdateBlogAuthor - -
- - -Update specific details of a blog author. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **blog_author_id** (`string`, optional) The unique ID of the blog author to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **update_deleted_blog_authors** (`boolean`, optional) Set to `true` to update deleted Blog Authors. Defaults to `false`. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.DetachBlogAuthorFromLangGroup - -
- - -Detach a Blog Author from a multi-language group. - -**Parameters** - -- **author_id_to_detach** (`string`, required) ID of the blog author to remove from a multi-language group in HubSpot CMS. - -## HubspotCmsApi.UpdateBlogAuthorsBatch - -
- - -Update multiple blog author objects at once. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **update_deleted_blog_authors** (`boolean`, optional) Set to true to update deleted Blog Authors. Defaults to false. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.SetPrimaryLanguageBlogAuthor - -
- - -Set a blog author as the primary language in a multilingual group. - -**Parameters** - -- **primary_language_author_id** (`string`, required) The ID of the blog author to be set as the primary in a multi-language group. - -## HubspotCmsApi.DeleteBlogAuthors - -
- - -Delete specified blog authors in HubSpot CMS. - -**Parameters** - -- **blog_author_ids** (`array[string]`, required) List of blog author IDs to delete from HubSpot CMS. - -## HubspotCmsApi.CreateBlogAuthorsBatch - -
- - -Create multiple blog authors in a single batch request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.RetrieveBlogAuthors - -
- - -Retrieve specified Blog Author objects from the CMS. - -**Parameters** - -- **author_identifiers** (`array[string]`, required) An array of strings representing the identifiers for the blog authors to retrieve. -- **include_deleted_authors** (`boolean`, optional) Specifies whether to include deleted Blog Authors in the results. Set to true to include them. - -## HubspotCmsApi.GetBlogAuthors - -
- - -Retrieve the list of blog authors. - -**Parameters** - -- **created_after** (`string`, optional) Return only blog authors created after this specified timestamp. -- **created_at_exact_time** (`string`, optional) Return blog authors created at exactly the specified time. Use ISO 8601 format for timestamps. -- **filter_by_creation_before_date** (`string`, optional) Return Blog Authors created before the specified date and time in ISO 8601 format. -- **filter_by_last_updated_before** (`string`, optional) Only return blog authors last updated before the specified timestamp. Format: YYYY-MM-DDTHH:MM:SSZ. -- **filter_by_updated_after** (`string`, optional) Return Blog Authors updated after a specific time. Use an ISO 8601 datetime string, e.g., '2023-01-01T00:00:00Z'. -- **include_archived_authors** (`boolean`, optional) Specify `true` to include archived (deleted) blog authors in the results. Defaults to `false`. -- **included_properties** (`string`, optional) Comma-separated list of specific properties to include in the response for each author. If empty, all properties will be fetched by default. -- **pagination_cursor_token** (`string`, optional) The cursor token from `paging.next.after` to fetch the next set of results. -- **result_limit** (`integer`, optional) Maximum number of blog authors to return. Default is 100. -- **sort_fields** (`array[string]`, optional) Fields for sorting results. Choose from: `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Default is `createdAt`. -- **updated_at_timestamp** (`string`, optional) Return blog authors last updated at the specified exact time (ISO 8601 format). - -## HubspotCmsApi.CreateBlogAuthor - -
- - -Create a new Blog Author in HubSpot CMS. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.AttachAuthorToMultilangGroup - -
- - -Attach a Blog Author to a multi-language group. - -**Parameters** - -- **author_object_id** (`string`, required) ID of the blog author to add to a multi-language group in HubSpot CMS. -- **designated_language** (`string`, required) The language code of the blog author to be added to a multi-language group, e.g., 'en' for English. -- **primary_language_object_id** (`string`, required) ID of the primary language object in the multi-language group. -- **primary_language** (`string`, optional) Specify the primary language of the multi-language group to which the author will be attached. - -## HubspotCmsApi.CreateBlogAuthorLanguageVariation - -
- - -Create a language variation for a blog author. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.UpdateBlogAuthorLanguages - -
- - -Set new languages for each blog author in a group. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.GetBlogRevisionHistory - -
- - -Retrieve the revision history of blog settings. - -**Parameters** - -- **blog_id** (`string`, required) The unique identifier for the blog whose settings history is being retrieved. This is required for querying specific blog settings. -- **retrieve_revisions_before_timestamp** (`string`, optional) Retrieve revisions before this timestamp in milliseconds since Unix Epoch. -- **revision_limit** (`integer`, optional) The maximum number of blog setting revisions to retrieve. Provide an integer value to restrict the number of results. -- **start_date_for_revisions** (`string`, optional) Specify a date to filter revisions that occurred after this date. Format: YYYY-MM-DD. - -## HubspotCmsApi.UpdateBlogLanguages - -
- - -Update the languages for blog settings. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.RetrieveBlogRevisionDetails - -
- - -Retrieve specific blog revision details by ID. - -**Parameters** - -- **blog_id** (`string`, required) The unique identifier for the blog post. It is required to fetch the specific revision details. -- **revision_id** (`string`, required) A unique string identifier for a specific blog revision to be retrieved. - -## HubspotCmsApi.GetBlogSettings - -
- - -Fetch blog settings using a blog ID. - -**Parameters** - -- **blog_id** (`string`, required) The unique identifier of the blog for which you want to fetch the settings. This is required to specify which blog's details to retrieve. - -## HubspotCmsApi.CreateBlogLanguageVariation - -
- - -Create a language variation for a blog in HubSpot CMS. - -**Parameters** - -- **blog_id** (`string`, required) ID of the blog to clone for creating a language variation. -- **blog_slug** (`string`, optional) Path to the blog. Used to specify the location of the language variation within the CMS. -- **primary_language** (`string`, optional) Specify the language of the primary blog to clone. This determines the source content for the new language variation. -- **target_language_for_blog_variant** (`string`, optional) The language code for the new blog variant, specifying the target language for translation. - -## HubspotCmsApi.RetrieveBlogSettings - -
- - -Retrieve current blog settings from the HubSpot CMS. - -**Parameters** - -- **created_before** (`string`, optional) Retrieve blog settings created before this date. Format as 'YYYY-MM-DD'. -- **created_timestamp** (`string`, optional) The exact timestamp when the blog settings were created, formatted as an ISO 8601 string. -- **filter_created_after_date** (`string`, optional) Filter settings to only include blogs created after the specified date (ISO 8601 format). -- **include_archived** (`boolean`, optional) Set to true to include archived blog settings and false to exclude them. -- **max_number_of_results** (`integer`, optional) The maximum number of blog settings to retrieve. The value should be an integer. -- **pagination_cursor** (`string`, optional) A token to retrieve the next set of blog settings after the current page. Use this for paginating results. -- **sort_options** (`array[string]`, optional) An array specifying fields to sort by, in order of priority (e.g., ['createdAt', '-updatedAt'] for ascending and descending). -- **updated_after_timestamp** (`string`, optional) Fetch settings for blogs updated after this date and time. Use ISO 8601 format. -- **updated_at_exact_timestamp** (`string`, optional) Fetch blogs with this exact update timestamp. Use ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ). -- **updated_before_date** (`string`, optional) The latest date (inclusive) to filter blog updates. Provide in 'YYYY-MM-DD' format. - -## HubspotCmsApi.SetNewBlogPrimaryLanguage - -
- - -Set a new primary language for blogs. - -**Parameters** - -- **primary_language_object_id** (`string`, required) ID of the blog object to set as primary in the multi-language group. - -## HubspotCmsApi.DetachBlogFromLanguageGroup - -
- - -Detach a blog from its multi-language group. - -**Parameters** - -- **object_id_to_detach** (`string`, required) ID of the blog to remove from its multi-language group in HubSpot CMS. - -## HubspotCmsApi.AttachBlogToLanguageGroup - -
- - -Attach a blog to a multi-language group in HubSpot CMS. - -**Parameters** - -- **designated_language** (`string`, required) The language code of the blog to add to a multi-language group. Use standard language codes like 'en', 'fr', etc. -- **object_id_to_add** (`string`, required) ID of the blog object to be added to a multi-language group in HubSpot CMS. -- **primary_language_object_id** (`string`, required) ID of the primary language object in the multi-language group to which the blog will be attached. -- **primary_language** (`string`, optional) Primary language code for the multi-language group to which the blog should be attached (e.g., 'en', 'fr'). - -## HubspotCmsApi.RetrieveAuditLogs - -
- - -Retrieve audit logs based on specified filters. - -**Parameters** - -- **event_types** (`array[string]`, optional) A list of event types to filter by, such as CREATED, UPDATED, PUBLISHED, DELETED, UNPUBLISHED. -- **filter_by_object_ids** (`array[string]`, optional) List of object IDs to filter the audit logs by. -- **filter_by_object_type** (`array[string]`, optional) List the object types to filter audit logs by, such as BLOG, LANDING_PAGE, DOMAIN, etc. Use a comma-separated format. -- **number_of_logs_to_return** (`integer`, optional) Specifies the number of audit logs to retrieve. -- **sort_direction** (`array[string]`, optional) Specify the sort direction for audit logs by timestamp, e.g., 'asc' or 'desc'. -- **timestamp_after** (`string`, optional) Timestamp (in ISO 8601 format) after which audit logs will be returned. -- **timestamp_before** (`string`, optional) A timestamp to filter audit logs before the specified date and time. -- **user_ids_to_filter** (`array[string]`, optional) Array of user IDs to filter the audit logs by. Provide as a list of strings. - -## HubspotCmsApi.GetExistingDomains - -
- - -Retrieve all existing domains in the CMS. - -**Parameters** - -- **created_at_date_filter** (`string`, optional) Specify a date to return only domains created on this exact date. Format: YYYY-MM-DD. -- **created_before_date** (`string`, optional) Filter to return only domains created before the specified date. Format: YYYY-MM-DD. -- **filter_by_update_date** (`string`, optional) Only return domains updated on this specific date. Use 'YYYY-MM-DD' format. -- **filter_domains_updated_after** (`string`, optional) Return domains updated after this specified date. Use ISO 8601 format (YYYY-MM-DD). -- **filter_updated_before_date** (`string`, optional) Return only domains updated before this date in ISO 8601 format (e.g., '2023-10-05T00:00:00Z'). -- **get_domains_created_after_date** (`string`, optional) Only return domains created after the specified date (in YYYY-MM-DD format). -- **maximum_results_per_page** (`integer`, optional) Specifies the maximum number of domain results to return per page. -- **paging_cursor_token** (`string`, optional) The paging cursor token of the last successfully read resource, used for paginated results. -- **return_archived** (`boolean`, optional) Return only archived domains if true. Return unarchived if false. -- **sort_criteria** (`array[string]`, optional) Defines the order of the domain results. Provide an array of strings specifying fields to sort by, such as ['createdAt', 'updatedAt']. - -## HubspotCmsApi.GetDomainById - -
- - -Retrieve domain details by ID from HubSpot CMS. - -**Parameters** - -- **domain_id** (`string`, required) The unique ID of the domain to retrieve details for from HubSpot CMS. - -## HubspotCmsApi.ExportHubdbDraftTable - -
- - -Export HubDB draft table to CSV or Excel format. - -**Parameters** - -- **table_id_or_name** (`string`, required) The ID or name of the table to export. Use this to specify the exact table you want to download. -- **export_file_format** (`string`, optional) The file format for exporting the draft table. Choose from `CSV`, `XLSX`, or `XLS`. - -## HubspotCmsApi.GetAllDraftTablesDetails - -
- - -Retrieve details of all draft HubDB tables. - -**Parameters** - -- **content_type** (`string`, optional) Specify the content type filter for retrieving draft tables. Leave empty for no filter. -- **created_after_date** (`string`, optional) Return tables created after the specified date and time. Format: YYYY-MM-DDTHH:MM:SSZ. -- **created_at_exact_time** (`string`, optional) Return tables created at the specified exact time (ISO 8601 format). -- **created_before_date** (`string`, optional) Return tables created before this specified time. -- **filter_by_updated_before_date** (`string`, optional) Return tables last updated before this specified time in ISO 8601 format. -- **include_archived_tables** (`boolean`, optional) Set to true to include archived tables in the results, false by default. -- **include_localized_schema** (`boolean`, optional) Indicates whether to include localized schema information for draft tables. Accepts a boolean value. -- **maximum_results_limit** (`integer`, optional) Specifies the maximum number of draft table results to return, with a default of 1000. -- **pagination_cursor_token** (`string`, optional) Cursor token to fetch the next set of results from a paginated response. -- **return_tables_updated_after** (`string`, optional) Only return tables that were last updated after the specified timestamp (ISO 8601 format). -- **sort_fields_for_results** (`array[string]`, optional) Fields to sort the results by. Valid fields are `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Defaults to `createdAt`. -- **updated_at_specific_time** (`string`, optional) Return tables last updated at the specified exact time. - -## HubspotCmsApi.GetTableRow - -
- - -Get a single row from a HubSpot CMS table by ID. - -**Parameters** - -- **row_id** (`string`, required) The ID of the row to retrieve from the table. -- **table_id_or_name** (`string`, required) The ID or name of the HubSpot CMS table to retrieve the row from. -- **archived** (`boolean`, optional) A boolean to retrieve archived rows. Set to True to include archived rows, or False to exclude them. - -## HubspotCmsApi.GetDraftHubdbTableRows - -
- - -Retrieve rows from a draft HubDB table with optional filtering. - -**Parameters** - -- **table_id_or_name** (`string`, required) The ID or name of the HubDB table to query for draft rows. -- **include_archived_rows** (`boolean`, optional) Specify whether to include archived rows in the results. Use `true` to include archived rows, `false` to exclude them. -- **maximum_results_limit** (`integer`, optional) Specifies the maximum number of results to return from the draft table. Default is 1000. -- **next_page_cursor** (`string`, optional) Cursor token to retrieve the next set of results, from `paging.next.after` in a paged response. -- **result_offset** (`integer`, optional) The number of rows to skip before starting to collect the result set from the draft version of a table. -- **sort_columns** (`array[string]`, optional) List of column names to sort the results by. Use format like ['column1', '-column2'] to specify ascending or descending order. -- **specified_columns** (`array[string]`, optional) Specify the column names to return only these columns in the result, instead of all columns. - -## HubspotCmsApi.CloneHubdbDraftRow - -
- - -Clone a single row in a HubDB draft table. - -**Parameters** - -- **row_id_to_clone** (`string`, required) The ID of the row to be cloned in the draft table. -- **table_id_or_name** (`string`, required) The ID or name of the table to be cloned. -- **new_row_name** (`string`, optional) The name for the cloned row. Specify a new name if required. - -## HubspotCmsApi.ResetHubdbDraftToPublished - -
- - -Reset HubDB draft table to match the published version. - -**Parameters** - -- **table_identifier** (`string`, required) The ID or name of the HubDB table to reset to the published version. -- **include_foreign_ids** (`boolean`, optional) Set to true to populate foreign ID values in the response. - -## HubspotCmsApi.ExportTableFromHubdb - -
- - -Exports a HubDB table in the desired format. - -**Parameters** - -- **hubdb_table_id_or_name** (`string`, required) The ID or name of the HubDB table to export. -- **file_format_to_export** (`string`, optional) The file format for exporting the table. Options are `CSV`, `XLSX`, and `XLS`. - -## HubspotCmsApi.ReplaceDraftTableRows - -
- - -Batch replace rows in HubSpot CMS draft tables. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **table_identifier** (`string`, optional) The ID or name of the table in which you want to replace draft rows. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.CloneHubdbTable - -
- - -Clone an existing HubDB table as a draft. - -**Parameters** - -- **copy_rows** (`boolean`, required) Boolean indicating whether to copy the rows during the cloning process. -- **is_hubspot_defined** (`boolean`, required) Indicate if the table is defined by HubSpot. This is a boolean value where true means the table is HubSpot-defined. -- **source_table_id_or_name** (`string`, required) The ID or name of the HubDB table to clone. -- **new_table_label** (`string`, optional) The label for the new cloned table. Specify a descriptive label for identification. -- **new_table_name** (`string`, optional) The desired new name for the cloned HubDB table draft. - -## HubspotCmsApi.PermanentlyDeleteHubdbDraftRows - -
- - -Permanently delete draft rows from a HubDB table. - -**Parameters** - -- **row_ids_to_delete** (`array[string]`, required) An array of up to 100 row IDs to permanently delete from the draft version of the table. -- **table_id_or_name** (`string`, required) The ID or name of the HubDB table to target for deleting draft rows. - -## HubspotCmsApi.GetDraftTableRowById - -
- - -Retrieve a single draft row by ID from a HubDB table. - -**Parameters** - -- **row_id** (`string`, required) The ID of the row in the table's draft version to retrieve. -- **table_identifier** (`string`, required) The ID or name of the HubDB table to fetch the draft row from. -- **include_archived** (`boolean`, optional) Set to true to include archived rows in the search result. Defaults to false. - -## HubspotCmsApi.ReplaceDraftTableRow - -
- - -Replace a row in the draft version of a HubDB table. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **table_id_or_name** (`string`, optional) The ID or name of the HubDB table to replace the row in. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **row_id** (`string`, optional) The unique identifier of the row to be replaced in the draft table. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.DeleteDraftTableRowHubspot - -
- - -Permanently delete a row from a HubDB draft table. - -**Parameters** - -- **row_id** (`string`, required) The unique ID of the row to be permanently deleted from the draft version of the HubDB table. -- **table_id_or_name** (`string`, required) The ID or name of the HubDB table from which the draft row will be deleted. - -## HubspotCmsApi.UpdateHubdbRowDraft - -
- - -Update specific fields in a HubDB table's draft row. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **table_identifier** (`string`, optional) The ID or name of the HubDB table to update the draft row in. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **row_id** (`string`, optional) The unique ID of the row to be updated in the draft table. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.FetchHubdbTableRows - -
- - -Fetch rows from a HubDB table using filters and sorting. - -**Parameters** - -- **table_identifier** (`string`, required) The ID or name of the HubDB table to query for fetching row data. -- **include_archived_rows** (`boolean`, optional) Set to true to include archived rows in the results; false to exclude them. -- **maximum_results_limit** (`integer`, optional) Specifies the maximum number of results to return. The default value is 1000, which can be adjusted to retrieve fewer entries. -- **pagination_cursor_token** (`string`, optional) Cursor token to fetch the next set of results. Obtainable from the `paging.next.after` of a paged response. -- **requested_columns** (`array[string]`, optional) Specify column names to retrieve only the required columns' data, excluding others. -- **row_offset** (`integer`, optional) The starting point for fetching a subset of rows, useful for pagination. It's similar to specifying which row to start fetching from. -- **sort_columns** (`array[string]`, optional) List of column names to sort the results by. Each entry is a string representing a column. Prefix with '-' for descending order. - -## HubspotCmsApi.AddHubdbTableRow - -
- - -Add a new row to a HubDB draft table. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **target_table_id_or_name** (`string`, optional) The ID or name of the target HubDB table to add the row to. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.ReadHubdbTableRows - -
- - -Retrieve rows from a published HubDB table. - -**Parameters** - -- **hubdb_table_id_or_name** (`string`, required) The ID or name of the HubDB table to query. Use this to specify which table's rows to retrieve. -- **row_ids** (`array[string]`, required) An array of strings representing the row IDs to retrieve from the specified HubDB table. - -## HubspotCmsApi.CreateDraftTableRows - -
- - -Create draft rows in a specified HubSpot table. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **table_id_or_name** (`string`, optional) The ID or name of the HubSpot table to which the draft rows are being added. This is required to specify which table you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.GetHubdbTableDetails - -
- - -Get details of a HubDB table, including columns and row count. - -**Parameters** - -- **table_id_or_name** (`string`, required) The ID or name of the HubDB table to retrieve details for. -- **get_localized_schema** (`boolean`, optional) Set to `true` to return the localized schema for the table. If `false`, returns the default schema. -- **include_foreign_id_values** (`boolean`, optional) Set this to true to populate foreign ID values in the result. -- **return_archived_table_details** (`boolean`, optional) Set to true to return details for an archived table. Defaults to false. - -## HubspotCmsApi.ArchiveHubdbTable - -
- - -Archive a HubDB table in HubSpot CMS. - -**Parameters** - -- **hubdb_table_identifier** (`string`, required) The ID or name of the HubDB table to archive. Provides the reference needed to identify the table within the system. - -## HubspotCmsApi.GetHubdbDraftRows - -
- - -Fetch draft rows from a specified HubDB table. - -**Parameters** - -- **row_ids** (`array[string]`, required) An array of row IDs to retrieve draft rows from the specified HubDB table. -- **table_id_or_name** (`string`, required) ID or name of the HubDB table to retrieve draft rows from. - -## HubspotCmsApi.CloneDraftTableRowsHubspot - -
- - -Clone rows in a draft HubDB table by row IDs. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **hubdb_table_id_or_name** (`string`, optional) The ID or name of the HubDB table to clone rows from. Specify either the unique table ID or its name. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.GetAllHubdbTables - -
- - -Retrieve details of all published HubDB tables. - -**Parameters** - -- **content_type_filter** (`string`, optional) Filter tables by the specified content type to return only those matching it. -- **created_after** (`string`, optional) Return tables created after the specified time in ISO 8601 format. -- **created_before_timestamp** (`string`, optional) Return tables created before this timestamp. Format should be in ISO 8601. -- **cursor_token_for_next_results** (`string`, optional) The cursor token to retrieve the next set of results. Obtain this from the `paging.next.after` in a paged response. -- **filter_by_creation_time** (`string`, optional) Return tables created at the specified time. Format: ISO 8601. -- **include_archived_tables** (`boolean`, optional) Specifies whether to include archived tables in the results. Defaults to `false`. -- **include_localized_schema** (`boolean`, optional) Include localized schema details in the response if true. -- **last_updated_exact_time** (`string`, optional) Only return tables last updated at exactly the specified time, formatted as a string. -- **max_table_results** (`integer`, optional) Maximum number of HubDB table results to return. Default is 1000. -- **sort_fields** (`array[string]`, optional) Specify fields for sorting results: `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Defaults to `createdAt`. -- **updated_after_timestamp** (`string`, optional) Return tables last updated after this timestamp. Format: 'YYYY-MM-DDTHH:MM:SSZ'. -- **updated_before_time** (`string`, optional) Return tables updated before this specific time. - -## HubspotCmsApi.CreateHubdbTable - -
- - -Create a new draft HubDB table with a unique name and label. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.DeleteTableVersion - -
- - -Delete a specific version of a HubDB table. - -**Parameters** - -- **table_identifier** (`string`, required) The unique ID or name of the HubDB table whose version you want to delete. -- **table_version_id** (`integer`, required) Specify the ID of the table version to delete. This should be an integer value that identifies a specific version in HubDB. - -## HubspotCmsApi.UnpublishHubdbTable - -
- - -Unpublish a HubDB table to stop rendering data on website pages. - -**Parameters** - -- **table_identifier** (`string`, required) The ID or name of the HubDB table to unpublish. -- **include_foreign_ids** (`boolean`, optional) Set this to true to populate foreign ID values in the response. - -## HubspotCmsApi.GetDraftTableDetails - -
- - -Retrieve details of a draft HubDB table by ID or name. - -**Parameters** - -- **table_id_or_name** (`string`, required) The ID or name of the HubDB table to retrieve draft details for. -- **include_foreign_ids** (`boolean`, optional) Set this to `true` to populate foreign ID values in the result. -- **include_localized_schema** (`boolean`, optional) Set to true to include the localized schema in the result. -- **return_archived_table** (`boolean`, optional) Set to `true` to return an archived table. Defaults to `false`. - -## HubspotCmsApi.UpdateHubdbDraftTable - -
- - -Update or modify a HubDB table draft in HubSpot CMS. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **table_id_or_name** (`string`, optional) The ID or name of the HubDB table to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **return_archived_tables** (`boolean`, optional) Set to true to return archived tables. Defaults to false. Only used when mode is 'execute'. -- **populate_foreign_ids** (`boolean`, optional) Set to true to populate foreign ID values in the table result. Only used when mode is 'execute'. -- **retrieve_localized_schema** (`boolean`, optional) Set to true to retrieve the localized schema of the HubDB table, if available. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.PublishTableDraft - -
- - -Publish draft table to update website pages. - -**Parameters** - -- **table_identifier** (`string`, required) The ID or name of the HubSpot CMS table to publish. This identifies which draft table's data and schema should be copied to the published version. -- **include_foreign_id_values** (`boolean`, optional) Set to `true` to populate foreign ID values in the response. - -## HubspotCmsApi.BatchUpdateTableRowsHubspot - -
- - -Update multiple draft table rows in HubSpot CMS. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **table_id_or_name** (`string`, optional) The ID or name of the table to update rows in the draft version. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.CreateAttentionSpanEvent - -
- - -Log viewer's attention span details for media events. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.TrackMediaMilestones - -
- - -Log user progress milestones in media content viewing. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.CreateMediaPlayedEvent - -
- - -Log an event when media playback starts. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.RetrievePreviousSitePageVersion - -
- - -Retrieve a previous version of a site page. - -**Parameters** - -- **site_page_id** (`string`, required) The unique identifier for the site page whose previous version is to be retrieved. -- **site_page_revision_id** (`string`, required) The ID of the specific revision of the site page to retrieve. - -## HubspotCmsApi.GetLandingPagePreviousVersions - -
- - -Retrieve previous versions of a Landing Page for review. - -**Parameters** - -- **landing_page_id** (`string`, required) The ID of the Landing Page to retrieve previous versions for. -- **cursor_token_for_next_set** (`string`, optional) The cursor token for retrieving the next set of results, from the `paging.next.after` JSON property. -- **limit_page_fetching_before_cursor** (`string`, optional) A token used for fetching results before a specific cursor position in paged results. Typically used in pagination to navigate backwards. -- **max_results** (`integer`, optional) The maximum number of previous landing page versions to return. Default is 100. - -## HubspotCmsApi.UpdateSitePagesBatch - -
- - -Batch update specified site pages in HubSpot CMS. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **update_deleted_site_pages** (`boolean`, optional) Specify true to update deleted Site Pages. Defaults to false. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.GetPreviousFolderVersions - -
- - -Retrieve previous versions of a CMS folder. - -**Parameters** - -- **folder_id** (`string`, required) The unique ID of the folder to retrieve its previous versions. -- **before_token** (`string`, optional) A cursor token to fetch items before a certain point in the result set, used for pagination. -- **max_results** (`integer`, optional) Specifies the maximum number of folder versions to retrieve. Default is 100. -- **pagination_cursor_after** (`string`, optional) The cursor token to retrieve the next set of results from the `paging.next.after` property in a paged response. - -## HubspotCmsApi.RestorePageVersion - -
- - -Restore a specific version of a HubSpot site page. - -**Parameters** - -- **page_version_to_restore** (`string`, required) The ID of the site page version to restore. Use this to revert to a previous version. -- **site_page_id** (`string`, required) The unique identifier for the Site Page to be restored. - -## HubspotCmsApi.GetLandingPageFolders - -
- - -Retrieve the list of landing page folders from HubSpot CMS. - -**Parameters** - -- **created_after** (`string`, optional) Return folders created after this specified ISO 8601 timestamp. -- **created_before_time** (`string`, optional) Return folders created before this specific time. -- **exact_update_time** (`string`, optional) Return folders last updated at exactly the specified time. Use a string format for the timestamp. -- **filter_folders_created_at** (`string`, optional) Return folders created at an exact specified time. Use ISO 8601 format. -- **folder_property** (`string`, optional) Specify properties to include in the response for each folder. Leave empty for all properties. -- **include_deleted_folders** (`boolean`, optional) Include deleted folders in the results when set to true. Defaults to false. -- **max_results_limit** (`integer`, optional) The maximum number of folder results to return. Default is 100. -- **next_page_cursor** (`string`, optional) The cursor token to retrieve the next set of results from a paged response. -- **sort_criteria** (`array[string]`, optional) Fields to use for sorting results. Valid options: `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Default: `createdAt`. -- **updated_after_date** (`string`, optional) Only return folders last updated after the specified time. Use ISO 8601 format for the date and time. -- **updated_before_timestamp** (`string`, optional) Return folders last updated before this specified timestamp. - -## HubspotCmsApi.CreateLandingPageFolder - -
- - -Create a new folder in HubSpot CMS for landing pages. - -**Parameters** - -- **deletion_timestamp** (`string`, required) The ISO8601 timestamp indicating when the folder was deleted. Leave this empty if the folder is active. -- **folder_category** (`integer`, required) The type of object this folder applies to. Must be set to LANDING_PAGE. -- **folder_creation_date** (`string`, required) The ISO8601 timestamp when this folder was created. -- **folder_name** (`string`, required) The name of the folder to display in the app dashboard. -- **folder_unique_id** (`string`, required) The unique identifier for the content folder. This is a string that serves as the primary key for the folder. -- **parent_folder_id** (`integer`, required) The ID of the parent content folder under which the new folder will be nested. -- **updated_timestamp** (`string`, required) The timestamp in ISO8601 format indicating when the folder was last updated. - -## HubspotCmsApi.AttachPageToLanguageGroup - -
- - -Attach a site page to a multi-language group. - -**Parameters** - -- **object_id_to_add_to_language_group** (`string`, required) ID of the site page object to add to a multi-language group. -- **page_language** (`string`, required) Designated language code (e.g., 'en', 'fr') of the page to add to a multi-language group. -- **primary_language_object_id** (`string`, required) ID of the primary language object in the multi-language group to which the page will be attached. -- **primary_language_of_group** (`string`, optional) Specify the primary language for the multi-language group. - -## HubspotCmsApi.ScheduleSitePagePublication - -
- - -Schedule a site page for publication at a specified time. - -**Parameters** - -- **object_id_to_schedule** (`string`, required) The ID of the site page to be scheduled for publication. -- **publication_date** (`string`, required) The date and time when the site page should be published. Use ISO 8601 format (e.g., '2023-12-31T23:59:00Z'). - -## HubspotCmsApi.DetachSitePageFromLanguageGroup - -
- - -Detach a site page from a multi-language group. - -**Parameters** - -- **object_id_to_detach** (`string`, required) The ID of the site page to detach from the multi-language group. - -## HubspotCmsApi.CreateLandingPageFolders - -
- - -Create multiple landing page folders in HubSpot CMS. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.GetPreviousSitePageVersions - -
- - -Retrieve previous versions of a site page. - -**Parameters** - -- **site_page_id** (`string`, required) The unique identifier for the Site Page to retrieve its previous versions. -- **max_results_limit** (`integer`, optional) The maximum number of previous versions to retrieve. Defaults to 100 if not specified. -- **next_results_cursor** (`string`, optional) The cursor token to fetch the next set of site page versions. Obtain this from `paging.next.after` in the response of a previous request. -- **page_version_cursor_before** (`string`, optional) The cursor token to get the set of results before a specific point. Useful for backward paging through results. - -## HubspotCmsApi.GetLandingPageDraft - -
- - -Retrieve the full draft version of a landing page. - -**Parameters** - -- **landing_page_id** (`string`, required) The unique identifier for the Landing Page draft to be retrieved. - -## HubspotCmsApi.UpdateLandingPageDraft - -
- - -Update draft of a specific landing page by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **landing_page_id** (`string`, optional) The ID of the landing page to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.GetLandingPages - -
- - -Retrieve a list of HubSpot CMS landing pages. - -**Parameters** - -- **created_after** (`string`, optional) Return landing pages created after this specified timestamp (ISO 8601 format). -- **created_at_timestamp** (`string`, optional) Return landing pages created at the specified exact timestamp. Format: ISO 8601. -- **created_before_timestamp** (`string`, optional) Only return landing pages created before the specified ISO 8601 timestamp. -- **cursor_after_token** (`string`, optional) The token to get the next set of results. Obtainable from `paging.next.after` in a paged response. -- **filter_by_property** (`string`, optional) Specify a property to filter the landing pages by. -- **include_archived_pages** (`boolean`, optional) Specify whether to include deleted landing pages in the results. Defaults to false. -- **last_updated_before** (`string`, optional) Return landing pages updated before this specified datetime (ISO format). -- **last_updated_exact_time** (`string`, optional) Return Landing Pages last updated at exactly this time. Use ISO 8601 format. -- **max_results** (`integer`, optional) Specify the maximum number of landing pages to return. Default is 100. -- **sort_fields_for_results** (`array[string]`, optional) Specifies fields for sorting results. Valid options: `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Default is `createdAt`. -- **updated_after_datetime** (`string`, optional) Return landing pages updated after this datetime in ISO 8601 format. - -## HubspotCmsApi.CreateLandingPage - -
- - -Create a new landing page in HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.EndActiveAbTest - -
- - -End an active A/B test and designate a winner. - -**Parameters** - -- **test_id_to_end** (`string`, required) The unique identifier of the A/B test that you want to conclude in the HubSpot CMS. -- **winner_id** (`string`, required) The ID of the object to designate as the winner of the A/B test. This should match the ID used in the CMS to identify the specific variant. - -## HubspotCmsApi.RestoreSitePageToDraft - -
- - -Restore a specific site page version to draft. - -**Parameters** - -- **site_page_id** (`string`, required) The ID of the Site Page to be restored to draft. -- **site_page_version_id_to_restore** (`integer`, required) The ID of the Site Page version to restore as the new draft. - -## HubspotCmsApi.CreateLandingPages - -
- - -Create multiple landing pages in HubSpot CMS. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.UpdateLandingPagesBatch - -
- - -Batch update landing pages in HubSpot CMS. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **update_deleted_landing_pages** (`boolean`, optional) Set to true to update deleted (archived) Landing Pages. Defaults to false. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.RetrieveLandingPages - -
- - -Retrieve specified Landing Page objects from HubSpot CMS. - -**Parameters** - -- **landing_page_ids** (`array[string]`, required) Array of strings, each representing a Landing Page ID to retrieve details for. -- **return_archived_landing_pages** (`boolean`, optional) Specify whether to return deleted Landing Pages. Defaults to `false`. - -## HubspotCmsApi.CloneLandingPageHubspot - -
- - -Clone a landing page in HubSpot CMS. - -**Parameters** - -- **landing_page_id** (`string`, required) ID of the landing page to be cloned. Required for identifying the source page. -- **cloned_landing_page_name** (`string`, optional) The name to assign to the newly cloned landing page in HubSpot CMS. - -## HubspotCmsApi.RestoreFolderVersion - -
- - -Restore a specific version of a folder in HubSpot CMS. - -**Parameters** - -- **folder_id** (`string`, required) The unique identifier for the folder you want to restore in HubSpot CMS. -- **folder_version_id_to_restore** (`string`, required) The ID of the folder version to be restored in HubSpot CMS. - -## HubspotCmsApi.SetPrimaryLandingPageLanguage - -
- - -Set a landing page as the primary language for a group. - -**Parameters** - -- **landing_page_id** (`string`, required) The ID of the landing page to set as primary in the multi-language group. - -## HubspotCmsApi.RestoreLandingPageVersion - -
- - -Restore a specific version of a HubSpot landing page. - -**Parameters** - -- **landing_page_id** (`string`, required) The unique identifier for the landing page you want to restore. -- **landing_page_version_id** (`string`, required) The ID of the Landing Page version to be restored. - -## HubspotCmsApi.GetSitePageDraft - -
- - -Retrieve the full draft version of the Site Page. - -**Parameters** - -- **site_page_id** (`string`, required) The unique identifier for the site page to retrieve its draft version. - -## HubspotCmsApi.UpdateSitePageDraft - -
- - -Update the draft version of a specific site page. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **site_page_id** (`string`, optional) The unique identifier for the Site Page to update the draft. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.RetrieveSitePages - -
- - -Retrieve Site Page objects from HubSpot CMS. - -**Parameters** - -- **page_identifiers** (`array[string]`, required) An array of strings, each representing an identifier for a Site Page to be retrieved. Use these IDs to specify which Site Pages to access. -- **return_deleted_site_pages** (`boolean`, optional) Set to true to return deleted Site Pages; false to exclude them. - -## HubspotCmsApi.GetLandingPageFolderById - -
- - -Retrieve details of a landing page folder by its ID. - -**Parameters** - -- **folder_id** (`string`, required) The unique identifier for the landing page folder to retrieve. -- **filter_by_property** (`string`, optional) Specify properties to include in the response for the folder object. Leave empty to fetch all properties. -- **include_archived_folders** (`boolean`, optional) Specifies whether to include deleted folders in the response. Use 'true' to include them; defaults to 'false'. - -## HubspotCmsApi.DeleteLandingPageFolder - -
- - -Deletes a CMS landing page folder by ID. - -**Parameters** - -- **folder_id** (`string`, required) The ID of the folder to be deleted. Provide the specific ID of the CMS landing page folder you wish to delete. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived results. - -## HubspotCmsApi.UpdateLandingPageFolder - -
- - -Update specific attributes of a landing page folder. - -**Parameters** - -- **content_folder_unique_id** (`string`, required) The unique ID of the landing page content folder to be updated. -- **creation_timestamp** (`string`, required) The creation timestamp of the folder in ISO8601 format. Used for reference only, typically not updated. -- **deletion_timestamp_iso8601** (`string`, required) The timestamp in ISO8601 format indicating when the content folder was deleted. Required for specifying deletion time. -- **folder_category** (`integer`, required) Specify the object type for the folder. Must be LANDING_PAGE. -- **folder_id** (`string`, required) The unique ID of the landing page folder to be updated. -- **folder_name** (`string`, required) Specify the new name of the landing page folder to display in the app dashboard. -- **parent_folder_id** (`integer`, required) The ID of the content folder this folder is nested under. Specify this to set a new parent folder. -- **update_timestamp** (`string`, required) The timestamp when the folder was last updated, in ISO8601 format. This indicates when changes were made. -- **update_deleted_folders** (`boolean`, optional) Set to true to update folders marked as deleted. Defaults to false. - -## HubspotCmsApi.CreateAbTestVariation - -
- - -Create a new A/B test variation in HubSpot CMS. - -**Parameters** - -- **ab_test_variation_name** (`string`, required) The name of the A/B test variation to be created. -- **object_test_id** (`string`, required) The ID of the object to be tested in the A/B test variation. - -## HubspotCmsApi.GetSitePagesList - -
- - -Retrieve a list of site pages with filtering options. - -**Parameters** - -- **created_at_time_filter** (`string`, optional) Return Site Pages created at exactly the specified time. Accepts an exact timestamp in string format. -- **created_before_date_time** (`string`, optional) Return Site Pages created before this date-time. Use ISO 8601 format. -- **filter_created_after** (`string`, optional) Return Site Pages created after the specified time. Use an ISO 8601 timestamp format. -- **filter_updated_after** (`string`, optional) Return site pages updated after this specific time. Use ISO 8601 format. -- **include_deleted_site_pages** (`boolean`, optional) Set to true to include deleted Site Pages in the results. Defaults to false if not specified. -- **include_property_details** (`string`, optional) Specify the properties to include in the Site Pages results. Leave empty to include all properties. -- **last_updated_before** (`string`, optional) Return site pages last updated before this datetime. Format: ISO 8601 string. -- **last_updated_exact_time** (`string`, optional) Return site pages last updated at exactly the specified time in ISO 8601 format. -- **maximum_results** (`integer`, optional) The maximum number of site pages to return. Default is 100. -- **next_page_cursor** (`string`, optional) Cursor token for paged results; use `paging.next.after` for the next set. -- **sort_fields_for_results** (`array[string]`, optional) Specify fields for sorting site pages. Options: `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Default is `createdAt`. - -## HubspotCmsApi.CreateSitePage - -
- - -Create a new site page in HubSpot CMS. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.AttachLandingPageToLanguageGroup - -
- - -Attach a landing page to a multi-language group. - -**Parameters** - -- **designated_language_to_add** (`string`, required) The language of the landing page to add to a multi-language group. Expect a language code. -- **object_id_for_language_group** (`string`, required) ID of the landing page to add to the multi-language group. -- **primary_language_object_id** (`string`, required) Provide the ID of the primary language object in the multi-language group to which the landing page will be attached. -- **primary_language** (`string`, optional) Specifies the primary language of the multi-language group to which the landing page will be attached. - -## HubspotCmsApi.CreateLanguageVariation - -
- - -Create a new language variation for a site page. - -**Parameters** - -- **content_id_to_clone** (`string`, required) ID of the site page content to clone for creating a language variation. -- **primary_content_language** (`string`, optional) Specify the language of the primary content to clone for creating the variation. -- **target_language** (`string`, optional) Target language code for the new site page variant, e.g., 'fr' for French. - -## HubspotCmsApi.RetrievePreviousLandingPageVersion - -
- - -Retrieve a previous version of a Landing Page. - -**Parameters** - -- **landing_page_id** (`string`, required) The unique identifier for the landing page. -- **landing_page_version_id** (`string`, required) The ID of the landing page version to retrieve. - -## HubspotCmsApi.EndAbTestSelectWinner - -
- - -End an active A/B test and designate a winner. - -**Parameters** - -- **test_id_to_end** (`string`, required) ID of the A/B test to be ended. -- **winner_object_id** (`string`, required) ID of the landing page variant to designate as the winner of the A/B test. - -## HubspotCmsApi.PublishLandingPageDraft - -
- - -Publish changes from a landing page draft to live. - -**Parameters** - -- **landing_page_id** (`string`, required) The ID of the landing page whose draft will be pushed live. - -## HubspotCmsApi.DetachLandingPageFromLanguageGroup - -
- - -Detach a landing page from a multi-language group. - -**Parameters** - -- **landing_page_id** (`string`, required) The ID of the landing page to detach from the multi-language group in HubSpot CMS. - -## HubspotCmsApi.NewAbTestVariation - -
- - -Create a new A/B test variation in HubSpot CMS. - -**Parameters** - -- **ab_test_variation_name** (`string`, required) The name for the new A/B test variation to be created. -- **object_id_to_test** (`string`, required) ID of the object to be tested in the A/B test variation. - -## HubspotCmsApi.ScheduleLandingPage - -
- - -Schedule a landing page for publication. - -**Parameters** - -- **landing_page_id** (`string`, required) The unique identifier for the landing page to be scheduled for publication. -- **publication_date** (`string`, required) The date when the landing page should be published. Use the format YYYY-MM-DD. - -## HubspotCmsApi.UpdateLandingPageLanguages - -
- - -Update languages for landing pages in a multi-language group. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.UpdateSitePageLanguages - -
- - -Set new languages for site pages in a multi-language group. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.RerunPreviousAbTest - -
- - -Rerun a previous A/B test on a landing page. - -**Parameters** - -- **test_id_to_rerun** (`string`, required) Provide the ID of the test you want to rerun on the landing page. -- **variation_id** (`string`, required) Provide the ID of the object you wish to reactivate as a test variation. This ID is necessary to specify which variation of the landing page you intend to rerun in the A/B test. - -## HubspotCmsApi.DeleteLandingPageFolders - -
- - -Delete specified landing page folders in HubSpot CMS. - -**Parameters** - -- **folder_identifiers** (`array[string]`, required) An array of strings representing the identifiers of the folders to be deleted. - -## HubspotCmsApi.CreateSitePagesBatch - -
- - -Create multiple site page objects in batch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.DeleteCmsSitePages - -
- - -Delete specified Site Page objects in the CMS. - -**Parameters** - -- **page_ids_to_delete** (`array[string]`, required) An array of strings representing the IDs of the Site Page objects to delete. - -## HubspotCmsApi.UpdateLandingPageFolders - -
- - -Update multiple HubSpot CMS landing page folders. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **only_include_archived_results** (`boolean`, optional) Set to true to return only archived folder results; false to return all folders. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.CloneSitePage - -
- - -Clone an existing site page in HubSpot CMS. - -**Parameters** - -- **object_id_to_clone** (`string`, required) ID of the site page to be cloned in HubSpot CMS. -- **clone_name** (`string`, optional) The desired name for the cloned site page object. - -## HubspotCmsApi.SetPrimaryLanguageForSitePage - -
- - -Set a site page as the primary language of its group. - -**Parameters** - -- **page_id_to_set_primary** (`string`, required) The ID of the site page to set as the primary language in the multi-language group. - -## HubspotCmsApi.RetrieveFolderPreviousVersion - -
- - -Retrieve a previous version of a folder in HubSpot CMS. - -**Parameters** - -- **folder_id** (`string`, required) The unique identifier for the folder whose previous version you want to retrieve. -- **folder_version_id** (`string`, required) The unique identifier for the folder version to be retrieved. - -## HubspotCmsApi.ResetLandingPageDraft - -
- - -Reset a landing page draft to its live version. - -**Parameters** - -- **landing_page_id** (`string`, required) The ID of the Landing Page whose draft will be reset to the live version. - -## HubspotCmsApi.GetLandingPageById - -
- - -Retrieve details of a specific landing page by ID. - -**Parameters** - -- **landing_page_id** (`string`, required) The unique identifier of the landing page to be retrieved. -- **include_archived** (`boolean`, optional) Include deleted landing pages in the response if set to true. Defaults to false. -- **landing_page_property** (`string`, optional) Specify which properties of the landing page to retrieve, such as 'title' or 'url'. Leave blank to fetch all. - -## HubspotCmsApi.DeleteLandingPage - -
- - -Delete a specified landing page by its ID. - -**Parameters** - -- **landing_page_id** (`string`, required) The unique identifier of the landing page to delete in HubSpot CMS. -- **return_archived_results_only** (`boolean`, optional) Set to true to only return results that have been archived. - -## HubspotCmsApi.UpdateLandingPage - -
- - -Update specific fields of a landing page by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **landing_page_id** (`string`, optional) The unique ID of the landing page to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **update_archived_pages** (`boolean`, optional) Set to true to update archived (deleted) Landing Pages. Defaults to false. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.PublishSitePage - -
- - -Publish draft changes to live site page. - -**Parameters** - -- **site_page_id** (`string`, required) The ID of the Site Page whose draft will be published live. Ensure it corresponds to the correct page in HubSpot CMS. - -## HubspotCmsApi.CreateMultilanguageLandingPage - -
- - -Create a new language variation for a landing page. - -**Parameters** - -- **content_id_to_clone** (`string`, required) The ID of the landing page content to be cloned for creating a new language variation. -- **primary_language_of_content** (`string`, optional) Language code of the primary content to be cloned for creating the new language variation. -- **target_language** (`string`, optional) Specify the target language for the new landing page variant. - -## HubspotCmsApi.DeleteLandingPages - -
- - -Deletes specified HubSpot landing pages permanently. - -**Parameters** - -- **landing_page_ids** (`array[string]`, required) An array of strings representing the IDs of landing pages to delete permanently. - -## HubspotCmsApi.RestoreLandingPageDraft - -
- - -Restore a specified landing page version to draft. - -**Parameters** - -- **landing_page_id** (`string`, required) The ID of the landing page to restore a specific version to draft. -- **landing_page_version_id_to_restore** (`integer`, required) The ID of the landing page version you want to restore as the new draft. - -## HubspotCmsApi.RestartAbTest - -
- - -Rerun a previous A/B test to gain new insights. - -**Parameters** - -- **ab_test_id** (`string`, required) The unique ID of the A/B test you wish to rerun on your HubSpot CMS site pages. -- **test_variation_id** (`string`, required) ID of the object to reactivate as a test variation for the A/B test. - -## HubspotCmsApi.ResetHubspotPageDraft - -
- - -Resets HubSpot CMS draft to the live version. - -**Parameters** - -- **site_page_id** (`string`, required) The ID of the HubSpot Site Page whose draft will be reset to the live version. - -## HubspotCmsApi.RetrieveSitePageById - -
- - -Retrieve Site Page details by ID. - -**Parameters** - -- **site_page_id** (`string`, required) The unique identifier for the Site Page to retrieve. -- **return_archived_site_pages** (`boolean`, optional) Boolean indicating whether to return deleted Site Pages. Defaults to 'false'. -- **site_page_property** (`string`, optional) Specify the property of the Site Page to return. Leave empty to retrieve all properties. - -## HubspotCmsApi.DeleteSitePage - -
- - -Delete a specified site page in HubSpot CMS. - -**Parameters** - -- **site_page_id** (`string`, required) The unique identifier for the site page to be deleted in HubSpot CMS. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only the pages that have been archived. - -## HubspotCmsApi.UpdateSitePage - -
- - -Update specific fields of a HubSpot site page. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **site_page_id** (`string`, optional) The unique identifier for the Site Page to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **update_deleted_site_pages** (`boolean`, optional) Boolean to specify whether to update deleted Site Pages. Defaults to `false`. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.UpdateFolderObjects - -
- - -Update specified folder objects in HubSpot CMS. - -**Parameters** - -- **folder_identifiers** (`array[string]`, required) An array of strings identifying folder objects to update in HubSpot CMS. -- **include_archived_folders** (`boolean`, optional) Indicate whether to include archived folders in the results. Defaults to `false`. - -## HubspotCmsApi.ScheduleBlogPost - -
- - -Schedule a blog post for future publication. - -**Parameters** - -- **blog_post_id** (`string`, required) The ID of the blog post to be scheduled for future publication. -- **scheduled_publish_date** (`string`, required) The date and time when the blog post should be published, formatted as a string (e.g., '2023-12-31T23:59:59'). - -## HubspotCmsApi.RetrieveBlogPostsById - -
- - -Retrieve a batch of blog posts by their IDs. - -**Parameters** - -- **blog_post_ids** (`array[string]`, required) A list of blog post IDs to retrieve. Each ID should be a string. -- **include_archived_posts** (`boolean`, optional) Include deleted blog posts if true. Defaults to `false`. - -## HubspotCmsApi.UpdateBlogPostLanguages - -
- - -Set new languages for multi-language blog posts. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.CreateBatchBlogPosts - -
- - -Create multiple blog posts in a single request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.UpdateBlogPostsBatch - -
- - -Update a batch of blog posts in the CMS. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **update_archived_posts** (`boolean`, optional) Indicates whether to update deleted blog posts. Defaults to `false`. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.RestoreBlogPostToDraft - -
- - -Restore a previous blog post version to draft. - -**Parameters** - -- **blog_post_id** (`string`, required) The unique identifier for the blog post to be restored to a draft version. This is the same as the blog post's current ID in the HubSpot CMS. -- **version_to_restore_id** (`integer`, required) The ID of the blog post version to revert to the draft state. - -## HubspotCmsApi.GetBlogPostDraft - -
- - -Retrieve the full draft version of a blog post. - -**Parameters** - -- **blog_post_id** (`string`, required) The ID of the blog post to retrieve the draft version. - -## HubspotCmsApi.UpdateBlogPostDraft - -
- - -Update specific fields of a blog post draft. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **blog_post_id** (`string`, optional) The ID of the blog post draft to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.RetrievePreviousBlogVersion - -
- - -Retrieve a previous version of a blog post. - -**Parameters** - -- **blog_post_id** (`string`, required) The unique identifier for the blog post whose previous version is to be retrieved. -- **version_id** (`string`, required) The ID of the specific blog post version to retrieve. - -## HubspotCmsApi.NewLanguageBlogVariation - -
- - -Create a new language variation from an existing blog post. - -**Parameters** - -- **blog_post_id** (`string`, required) The ID of the blog post you want to clone into a new language variation. -- **target_language** (`string`, optional) The language code for the target language of the new blog post variation (e.g., 'fr' for French). - -## HubspotCmsApi.CloneBlogPost - -
- - -Creates a copy of an existing blog post. - -**Parameters** - -- **blog_post_id** (`string`, required) ID of the blog post to be cloned. This identifies the specific blog post you want to duplicate. -- **cloned_blog_post_name** (`string`, optional) The name for the newly cloned blog post. This is how the cloned post will be titled or identified. - -## HubspotCmsApi.RetrieveBlogPosts - -
- - -Retrieve all blog posts with optional paging and filtering. - -**Parameters** - -- **created_after** (`string`, optional) Return blog posts created after the specified time. Use ISO 8601 format for the date-time. -- **created_before** (`string`, optional) Only return blog posts created before the specified time in ISO 8601 format. -- **filter_by_creation_time** (`string`, optional) Return only blog posts created at the specified time in ISO 8601 format. -- **filter_by_update_after** (`string`, optional) Only return blog posts last updated after the specified timestamp. Use a format such as ISO 8601 for date and time. -- **include_archived_posts** (`boolean`, optional) Specify true to include archived (deleted) blog posts in the results. Defaults to false. -- **max_results** (`integer`, optional) The maximum number of blog post results to return. Default is 20. -- **pagination_cursor_token** (`string`, optional) The cursor token to retrieve the next set of blog post results. Obtain from `paging.next.after` in a previous response. -- **return_specific_properties** (`string`, optional) Comma-separated list of specific fields to return for each blog post (e.g., 'title,author,date'). Leave empty to return all fields. -- **sort_fields_for_results** (`array[string]`, optional) An array specifying fields to sort blog posts. Use fields like `createdAt`, `name`, `updatedAt`, `createdBy`, `updatedBy`. -- **updated_at_exact** (`string`, optional) Return blog posts last updated at the exact specified time in ISO 8601 format. -- **updated_before_date** (`string`, optional) Return blog posts last updated before this date. Use ISO 8601 format (e.g., '2023-09-04T15:00:00Z'). - -## HubspotCmsApi.CreateBlogPost - -
- - -Create a new blog post with specified content. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.RestoreBlogPostVersion - -
- - -Restore a blog post to a previous version. - -**Parameters** - -- **blog_post_id** (`string`, required) The ID of the blog post to be restored to a previous version. -- **version_to_restore_id** (`string`, required) The unique identifier of the blog post version to which you want to revert. - -## HubspotCmsApi.DetachBlogPostLanguageGroup - -
- - -Detach a blog post from a multi-language group. - -**Parameters** - -- **object_id_to_detach_from_language_group** (`string`, required) ID of the blog post to be removed from the multi-language group. - -## HubspotCmsApi.PublishBlogPost - -
- - -Publish a draft blog post to make it live. - -**Parameters** - -- **blog_post_id** (`string`, required) The unique identifier of the blog post to be published live. - -## HubspotCmsApi.DeleteBlogPost - -
- - -Delete a blog post by its unique ID. - -**Parameters** - -- **blog_post_ids_to_delete** (`array[string]`, required) An array of blog post IDs to delete. Each ID should be a string representing a unique blog post. - -## HubspotCmsApi.ResetBlogPostDraft - -
- - -Resets a blog post draft to the currently published content. - -**Parameters** - -- **blog_post_id** (`string`, required) The unique ID of the blog post draft that you want to reset to the published version. - -## HubspotCmsApi.AttachBlogPostToLanguageGroup - -
- - -Attach a blog post to a multi-language group in HubSpot CMS. - -**Parameters** - -- **designated_language** (`string`, required) Specify the language code (e.g., 'en', 'fr', 'es') for the blog post to be added to the multi-language group. -- **object_id** (`string`, required) The ID of the blog post to attach to a multi-language group. -- **primary_language_object_id** (`string`, required) ID of the primary language object in the multi-language group. -- **primary_language** (`string`, optional) Primary language of the multi-language group. Specify in ISO language code format (e.g., 'en', 'fr'). - -## HubspotCmsApi.SetPrimaryLanguageBlogPost - -
- - -Set the primary language of a blog post in a multi-language group. - -**Parameters** - -- **blog_post_id** (`string`, required) The ID of the blog post to set as primary in its multi-language group. - -## HubspotCmsApi.GetPreviousBlogPostVersions - -
- - -Retrieve all previous versions of a blog post in HubSpot. - -**Parameters** - -- **blog_post_id** (`string`, required) The unique ID of the blog post for retrieving its previous versions in HubSpot CMS. -- **before_timestamp** (`string`, optional) The timestamp to retrieve versions updated before this time. -- **maximum_results_limit** (`integer`, optional) The maximum number of blog post versions to return. Default is 100. -- **next_page_cursor** (`string`, optional) The cursor token to retrieve the next set of blog post versions, obtained from `paging.next.after`. - -## HubspotCmsApi.RetrieveBlogPostById - -
- - -Retrieve a blog post by its ID from HubSpot CMS. - -**Parameters** - -- **blog_post_id** (`string`, required) The unique identifier of the blog post to retrieve from HubSpot CMS. -- **include_archived_posts** (`boolean`, optional) If true, includes deleted (archived) blog posts in the retrieval. Defaults to false. -- **return_specific_properties** (`string`, optional) Comma-separated list of specific properties to retrieve from the blog post. - -## HubspotCmsApi.RemoveBlogPost - -
- - -Delete a blog post by its ID. - -**Parameters** - -- **blog_post_id** (`string`, required) The unique ID of the blog post to delete. This ID identifies which specific post will be removed. -- **only_archived_results** (`boolean`, optional) Set to true to return only deleted (archived) blog posts. - -## HubspotCmsApi.UpdateBlogPost - -
- - -Update specific fields of a blog post by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **blog_post_id** (`string`, optional) The unique identifier of the blog post to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **update_archived_posts** (`boolean`, optional) Set to true to update deleted (archived) blog posts. Defaults to false. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.RetrieveIndexedDataByContentId - -
- - -Retrieve all indexed data for a specific document by ID. - -**Parameters** - -- **document_id** (`string`, required) ID of the target document when searching for indexed properties in HubSpot CMS. -- **document_type** (`string`, optional) Specify the document type, such as `SITE_PAGE`, `BLOG_POST`, or `KNOWLEDGE_ARTICLE`. - -## HubspotCmsApi.SearchWebsiteContent - -
- - -Search for website content on a HubSpot account. - -**Parameters** - -- **blog_ids_to_search** (`array[integer]`, optional) List of blog IDs to search within. Allows searching multiple blogs by their IDs. -- **boost_recent_time_window** (`string`, optional) A relative time window to boost scores of documents published within this period. Use '10d' for 10 days. Supported units: ms, s, m, h, d. Applicable to blog posts only. -- **content_language_code** (`string`, optional) Specifies the language of content to be searched using a valid ISO 639-1 code (e.g. 'es' for Spanish). -- **content_type_filters** (`array[string]`, optional) List of content types to search, such as SITE_PAGE, LANDING_PAGE, BLOG_POST, LISTING_PAGE, and KNOWLEDGE_ARTICLE. -- **hubdb_query_filter** (`string`, optional) Specify a HubDB query to filter search results in the specified table. -- **hubdb_table_id** (`integer`, optional) Specifies a specific HubDB table to search. Only results from this table are returned. Can be combined with 'hubdb_query' for further filtering. -- **invert_path_prefix_filter** (`boolean`, optional) Set to 'false' to apply the normal behavior of the pathPrefix filter; 'true' to invert it. -- **maximum_boost_limit** (`number`, optional) Specifies the maximum amount a result will be boosted based on its view count. Defaults to 5.0. -- **pagination_offset** (`integer`, optional) Integer used to page through results. Use the offset from the previous request to access the next set of results. -- **path_prefixes** (`array[string]`, optional) An array of strings to filter search results by URL path prefix. Only returns results with paths starting with specified prefixes. -- **popularity_boost** (`number`, optional) Specify the boost factor for a result based on its view count. Defaults to 1.0. -- **result_length** (`string`, optional) Specifies whether search results should be detailed (LONG) or brief (SHORT). -- **results_limit** (`integer`, optional) The number of search results to return. Defaults to 10 and has a maximum of 100. -- **search_domains** (`array[string]`, optional) List of domains to match search results for. Multiple domains can be included by separating them with '&'. -- **search_properties** (`array[string]`, optional) A list of properties to include in the search. Options: `title`, `description`, `html`. By default, all properties are searched. -- **search_term** (`string`, optional) The term to search for in the HubSpot website content. -- **show_autocomplete** (`boolean`, optional) Specify whether autocomplete results should be shown. Defaults to false. - -## HubspotCmsApi.GetFileMetadata - -
- - -Retrieve metadata for a file in a specified environment. - -**Parameters** - -- **file_environment** (`string`, required) Specify the environment of the file, either 'draft' or 'published'. -- **file_path** (`string`, required) The file system location of the file to retrieve metadata for. -- **include_properties** (`string`, optional) Comma-separated list of additional properties to include in the metadata response, if applicable. - -## HubspotCmsApi.DownloadFileFromHubspotCms - -
- - -Download file content from HubSpot CMS by path and environment. - -**Parameters** - -- **file_environment** (`string`, required) Specify the environment of the file. Options are 'draft' or 'published'. -- **file_system_path** (`string`, required) The file system path to the file within HubSpot CMS to be downloaded. - -## HubspotCmsApi.DeleteFileInCmsEnvironment - -
- - -Deletes a file in a specified CMS environment. - -**Parameters** - -- **file_environment** (`string`, required) Specify the environment of the file to delete. Valid values are "draft" or "published". -- **file_system_location** (`string`, required) The file system location of the file to be deleted. - -## HubspotCmsApi.ExtractZipFileAsync - -
- - -Initiate asynchronous extraction of a zip file on HubSpot CMS. - -**Parameters** - -- **zip_file_path** (`string`, required) The path to the zip file in the developer file system that needs extraction. - -## HubspotCmsApi.CheckExtractionStatus - -
- - -Retrieve the current status of a source-code extraction task. - -**Parameters** - -- **extraction_task_id** (`integer`, required) The unique ID of the extraction task, obtained from the initial `extract/async` request. This ID is required to check the status of the extraction. - -## HubspotCmsApi.UpdateBlogTags - -
- - -Update multiple blog tags in HubSpot CMS. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **update_deleted_blog_tags** (`boolean`, optional) Specifies whether to update deleted blog tags. Defaults to false. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.UpdateBlogTagLanguages - -
- - -Update languages for blog tags in a multi-language group. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.DetachBlogTagFromLanguageGroup - -
- - -Detach a Blog Tag from a multi-language group. - -**Parameters** - -- **blog_tag_id** (`string`, required) ID of the blog tag to remove from a multi-language group in HubSpot CMS. - -## HubspotCmsApi.CreateBlogTagsBatch - -
- - -Create multiple blog tags in a single request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCmsApi.ArchiveBlogTags - -
- - -Archive multiple blog tags in HubSpot CMS. - -**Parameters** - -- **blog_tag_identifiers** (`array[string]`, required) An array of strings representing the blog tag identifiers to be archived. - -## HubspotCmsApi.SetBlogTagPrimaryLanguage - -
- - -Set a blog tag as the primary language in a multi-language group. - -**Parameters** - -- **primary_language_tag_id** (`string`, required) ID of the blog tag to set as the primary language in a multi-language group. - -## HubspotCmsApi.RetrieveBlogTags - -
- - -Retrieve Blog Tag objects based on specified IDs. - -**Parameters** - -- **blog_tag_ids** (`array[string]`, required) A list of strings representing the IDs of the Blog Tag objects to retrieve. -- **include_deleted_tags** (`boolean`, optional) Boolean indicating if deleted Blog Tags should be included in the response. If true, deleted tags are returned. - -## HubspotCmsApi.GetBlogTags - -
- - -Retrieve a list of blog tags with paging and filtering options. - -**Parameters** - -- **additional_properties** (`string`, optional) Include additional fields in the response. Specify the properties you want to retrieve. -- **created_after_time** (`string`, optional) Only return Blog Tags created after the specified time. Provide the time in ISO 8601 format. -- **filter_by_creation_time** (`string`, optional) Filter blog tags to return only those created at the specified exact time. Use ISO 8601 format for the date-time. -- **filter_tags_created_before** (`string`, optional) Only return blog tags created before the specified date and time in UTC, formatted as an ISO 8601 string. -- **include_archived_tags** (`boolean`, optional) Specify whether to return deleted blog tags. Defaults to false. -- **last_updated_before** (`string`, optional) Return blog tags updated before this date and time (in ISO 8601 format). -- **maximum_results_to_return** (`integer`, optional) Specify the maximum number of blog tags to return. Default is 100. -- **pagination_cursor_token** (`string`, optional) The token to retrieve the next set of results from a paginated response. Obtain this from the `paging.next.after` property in the previous response. -- **sort_fields_for_results** (`array[string]`, optional) Fields to sort results by. Options: `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Default is `createdAt`. -- **updated_after** (`string`, optional) Return Blog Tags last updated after the specified date and time. Provide in ISO 8601 format, e.g., '2023-10-21T15:30:00Z'. -- **updated_at_exact** (`string`, optional) Return blog tags last updated at the specified exact time (ISO 8601 format). - -## HubspotCmsApi.CreateBlogTag - -
- - -Create a new blog tag in HubSpot CMS. - -**Parameters** - -- **blog_tag_unique_id** (`string`, required) The unique ID assigned to the Blog Tag. -- **creation_timestamp** (`string`, required) The timestamp (ISO8601 format) when this Blog Tag was created. Leave empty if not applicable. -- **deletion_timestamp** (`string`, required) The ISO8601 timestamp marking when the blog tag was deleted. -- **language_code** (`string`, required) The explicit ISO 639 language code for the tag, such as 'en' for English or 'es' for Spanish. -- **primary_tag_translation_id** (`integer`, required) Specify the ID of the primary tag that this tag was translated from. -- **tag_name** (`string`, required) The name for the new blog tag to be created in HubSpot CMS. -- **updated_timestamp** (`string`, required) The timestamp (ISO8601 format) when the Blog Tag was last updated. - -## HubspotCmsApi.AttachTagToLanguageGroup - -
- - -Attach a blog tag to a multi-language group. - -**Parameters** - -- **designated_language** (`string`, required) Specify the language of the blog tag to add to a multi-language group. Use a language code like 'en' for English. -- **object_id_for_multilanguage_group** (`string`, required) ID of the blog tag to add to the multi-language group. -- **primary_language_object_id** (`string`, required) ID of the primary language object in the multi-language group. -- **primary_language** (`string`, optional) Specifies the primary language of the multi-language group. - -## HubspotCmsApi.RetrieveBlogTagById - -
- - -Retrieve blog tag details using its ID. - -**Parameters** - -- **blog_tag_id** (`string`, required) The unique identifier for the Blog Tag to be retrieved. -- **include_archived_blog_tags** (`boolean`, optional) Specify whether to include archived blog tags in the response. Defaults to `false`. -- **property_name** (`string`, optional) Specify a property of the blog tag to retrieve. Leave blank to get all details. - -## HubspotCmsApi.DeleteBlogTag - -
- - -Delete a specified Blog Tag in HubSpot CMS. - -**Parameters** - -- **blog_tag_id** (`string`, required) The unique identifier for the Blog Tag to be deleted. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only blog tags that have been archived. - -## HubspotCmsApi.UpdateBlogTag - -
- - -Update specific fields of a blog tag by its ID. - -**Parameters** - -- **blog_tag_id** (`string`, required) The unique identifier for the blog tag to be updated. -- **blog_tag_unique_id** (`string`, required) The unique ID of the Blog Tag to be updated. -- **created_timestamp** (`string`, required) The timestamp (ISO8601 format) when the blog tag was created. This field is optional and can be used if the creation time needs to be updated. -- **deleted_timestamp** (`string`, required) The ISO8601 timestamp indicating when the blog tag was deleted. -- **language** (`string`, required) The ISO 639 language code for the tag. Select from the available options. -- **last_updated_timestamp** (`string`, required) The ISO8601 timestamp when the blog tag was last updated. -- **primary_tag_translated_from_id** (`integer`, required) ID of the primary tag from which this tag was translated. -- **tag_name** (`string`, required) The new name for the blog tag to be updated. This is a required field when changing the tag's name. -- **update_deleted_blog_tags** (`boolean`, optional) Set to `true` to update deleted Blog Tags. Defaults to `false`. - -## HubspotCmsApi.CreateBlogTagLanguageVariation - -
- - -Create a new language variation from an existing blog tag. - -**Parameters** - -- **blog_tag_id** (`string`, required) ID of the existing blog tag to be cloned for creating a language variation. -- **new_blog_tag_name** (`string`, required) The name for the newly cloned blog tag language variation. -- **primary_blog_tag_language** (`string`, optional) Specify the language code of the primary blog tag to be cloned, such as 'en', 'fr', etc. -- **target_language_for_blog_tag_variation** (`string`, optional) Specifies the target language for the new blog tag variant. - -## HubspotCmsApi.FetchUrlRedirects - -
- - -Retrieve all URL redirects with optional filters. - -**Parameters** - -- **created_after_date** (`string`, optional) Return redirects created after this date (format: YYYY-MM-DD). -- **created_at** (`string`, optional) Return redirects created exactly on this date. Format: YYYY-MM-DD. -- **filter_by_exact_update_date** (`string`, optional) Return redirects last updated on this exact date. Use a valid date format (e.g., YYYY-MM-DD). -- **filter_created_before_date** (`string`, optional) Return redirects created before this date. Expected format: YYYY-MM-DD. -- **filter_updated_after** (`string`, optional) Only include redirects updated after this specified date (ISO 8601 format). -- **paging_cursor_token** (`string`, optional) Token for the last read resource to fetch additional results. -- **results_per_page_limit** (`integer`, optional) Maximum number of URL redirects to return per page. Use to control pagination. -- **return_archived_only** (`boolean`, optional) Set to true to return only archived URL redirects, false to exclude them. -- **sort_criteria** (`array[string]`, optional) Specify fields to sort the URL redirects by. Can include multiple fields such as 'createdAt' or 'updatedAt'. -- **updated_before_date** (`string`, optional) Only return redirects last updated before this date (in YYYY-MM-DD format). - -## HubspotCmsApi.CreateUrlRedirect - -
- - -Creates and configures a new URL redirect in HubSpot CMS. - -**Parameters** - -- **redirect_destination_url** (`string`, required) The target URL to which the redirect will point. This should be a valid and complete URL. -- **redirect_style** (`integer`, required) Integer indicating the style of the redirect. Defines the behavior and type of the redirect, such as permanent (301) or temporary (302). -- **route_prefix** (`string`, required) Defines the prefix for the URL route to be redirected. Provide the specific path without the domain, e.g., '/example-path'. -- **apply_only_after_not_found** (`boolean`, optional) Applies the redirect only after a 404 Not Found response if true. -- **enable_pattern_matching** (`boolean`, optional) Set to true to enable URL pattern matching for the redirect. False matches exact URLs only. -- **enable_protocol_agnostic** (`boolean`, optional) Set to true to ignore the protocol (HTTP/HTTPS) when matching URLs. Enables protocol-agnostic redirects. -- **ignore_trailing_slash** (`boolean`, optional) Set to true to ignore trailing slashes, allowing flexibility in URL matches. -- **match_full_url** (`boolean`, optional) Set to true to match the entire URL exactly. False applies partial matching. -- **match_query_string** (`boolean`, optional) Indicates whether the redirect should match the query string. Set to true to match, false to ignore. -- **redirect_precedence** (`integer`, optional) An integer indicating the priority of the redirect if multiple rules match. Higher numbers take precedence. - -## HubspotCmsApi.GetUrlRedirectDetailsById - -
- - -Retrieve details of a URL redirect by ID. - -**Parameters** - -- **url_redirect_id** (`string`, required) The ID of the target URL redirect to fetch details for. - -## HubspotCmsApi.DeleteUrlRedirect - -
- - -Deletes an existing URL redirect in HubSpot CMS. - -**Parameters** - -- **url_redirect_id** (`string`, required) The unique identifier of the URL redirect to be deleted within the HubSpot CMS. - -## HubspotCmsApi.UpdateUrlRedirectSettings - -
- - -Update settings for an existing URL redirect in HubSpot CMS. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **url_redirect_id** (`string`, optional) The unique identifier for the URL redirect to be updated. This ID specifies which redirect's settings will be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## Reference - -Below is a reference of enumerations used by some of the tools in the HubspotCmsApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - -## Auth - -The HubspotCmsApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotCmsApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider. - - diff --git a/app/en/resources/integrations/sales/hubspot-conversations-api/page.mdx b/app/en/resources/integrations/sales/hubspot-conversations-api/page.mdx deleted file mode 100644 index d6129a1e8..000000000 --- a/app/en/resources/integrations/sales/hubspot-conversations-api/page.mdx +++ /dev/null @@ -1,780 +0,0 @@ -# HubspotConversationsApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The Hubspot Conversations API MCP Server offers a comprehensive suite of tools for managing and interacting with conversation threads and channels within HubSpot. Users can perform a variety of actions, including: - -- Retrieve and manage conversation inboxes and channels. -- Access detailed information about conversation threads and messages. -- Send new messages and update existing ones within conversation threads. -- Archive or restore conversation threads as needed. -- Resolve actor details and retrieve message history for specific threads. - -This MCP Server is designed to streamline communication management and enhance user engagement through HubSpot's conversational capabilities. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## HubspotConversationsApi.ListConversationInboxes - -
- - -Retrieve a list of conversation inboxes. - -**Parameters** - -This tool does not take any parameters. - -## HubspotConversationsApi.RetrieveThreadById - -
- - -Retrieve detailed information about a conversation thread by ID. - -**Parameters** - -- **conversation_thread_id** (`string`, required) The unique identifier for the conversation thread you wish to retrieve. Provide the specific thread ID to access its details. - -## HubspotConversationsApi.ArchiveConversationThread - -
- - -Archives a conversation thread, marking it for deletion. - -**Parameters** - -- **thread_identifier** (`string`, required) The unique identifier of the conversation thread to archive. This is a required field and should match the specific thread you wish to archive. - -## HubspotConversationsApi.UpdateConversationThread - -
- - -Update the status or restore a conversation thread. - -**Parameters** - -- **thread_identifier** (`string`, required) The unique identifier for the conversation thread to update or restore. -- **is_thread_archived** (`boolean`, optional) Set to true to archive or false to restore the thread. Determines if the thread is currently archived. -- **thread_status** (`string`, optional) Set the thread's status to `OPEN` or `CLOSED`. - -## HubspotConversationsApi.RetrieveFullMessageContent - -
- - -Retrieve the original text and rich text of a HubSpot message. - -**Parameters** - -- **conversation_thread_id** (`string`, required) The unique identifier for the conversation thread containing the message. -- **message_id** (`string`, required) The unique identifier for the message. Used to retrieve the message's full original content. - -## HubspotConversationsApi.ListConversationChannels - -
- - -Retrieve a list of conversation channels from Hubspot. - -**Parameters** - -This tool does not take any parameters. - -## HubspotConversationsApi.RetrieveActorDetails - -
- - -Retrieve details of a specific actor by actor ID. - -**Parameters** - -- **actor_id** (`string`, required) The unique identifier for the actor whose details are to be retrieved. - -## HubspotConversationsApi.RetrieveConversationThreads - -
- - -Retrieve conversation threads from Hubspot Conversations. - -**Parameters** - -This tool does not take any parameters. - -## HubspotConversationsApi.GetMessageHistoryForThread - -
- - -Retrieve the message history for a specific thread. - -**Parameters** - -- **thread_id** (`string`, required) The unique identifier for the conversation thread whose message history is to be retrieved. - -## HubspotConversationsApi.SendConversationMessage - -
- - -Send a new message in a conversation thread. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **thread_id** (`string`, optional) The unique identifier for the conversation thread where the message will be sent. It should be a string that corresponds to the existing thread ID in Hubspot. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotConversationsApi.ResolveConversationActors - -
- - -Resolve ActorIds to conversation participants. - -**Parameters** - -- **actor_ids** (`array[string]`, required) A list of Actor IDs to resolve into detailed participant information. Each entry should be a string representing an Actor ID. - -## HubspotConversationsApi.GetChannelAccountDetails - -
- - -Retrieve details of a HubSpot channel account by ID. - -**Parameters** - -- **channel_account_id** (`string`, required) The unique ID of the HubSpot channel account to retrieve details for. This ID is required to fetch the channel account's information. - -## HubspotConversationsApi.RetrieveChannelAccounts - -
- - -Retrieve a list of channel accounts from Hubspot. - -**Parameters** - -This tool does not take any parameters. - -## HubspotConversationsApi.RetrieveChannelDetails - -
- - -Retrieve details of a channel using its ID. - -**Parameters** - -- **channel_id** (`string`, required) The unique ID of the channel to retrieve details for in Hubspot Conversations. - -## HubspotConversationsApi.GetInboxDetails - -
- - -Retrieve details of a conversation inbox by ID. - -**Parameters** - -- **inbox_id** (`string`, required) The unique identifier for the conversation inbox you wish to retrieve details for. It should be a string representing the inbox ID. - -## HubspotConversationsApi.RetrieveThreadMessage - -
- - -Retrieve a single message from a conversation thread. - -**Parameters** - -- **message_id** (`string`, required) The unique identifier for the specific message within a thread. Used to retrieve message details. -- **thread_id** (`string`, required) The unique identifier of the conversation thread from which to retrieve the message. - -## HubspotConversationsApi.GetCustomChannelMessageDetails - -
- - -Retrieve details for a specific message in a custom channel. - -**Parameters** - -- **channel_id** (`string`, required) The unique identifier for the custom channel from which the message was sent. Required to fetch specific message details. -- **message_id** (`string`, required) The unique identifier of the message to retrieve details for. This ID is used to specify the exact message in the custom channel. - -## HubspotConversationsApi.UpdateMessageStatus - -
- - -Update the status of a conversation message. - -**Parameters** - -- **channel_identifier** (`string`, required) The unique identifier for the custom channel where the message is located. It is required to specify which channel the message belongs to. -- **message_id** (`string`, required) Unique identifier of the message to be updated. -- **message_status** (`string`, required) Specifies the status of the message. Valid values are SENT, FAILED, and READ. -- **error_message_for_failed_status** (`string`, optional) Provide an error message when the status is FAILED to clarify the reason for failure. Only use this when 'statusType' is 'FAILED'. - -## HubspotConversationsApi.UpdateChannelAccountStaging - -
- - -Update channel account staging token details for public apps. - -**Parameters** - -- **account_name** (`string`, required) The name of the account to be updated for the channel account staging token. -- **account_token** (`string`, required) The unique token identifying the specific channel account staging. Required for updating account details. -- **channel_id** (`string`, required) The unique identifier for the channel to update. This is necessary to specify which channel's staging token details are being modified. -- **delivery_identifier_type** (`string`, required) Type of delivery identifier: HS_EMAIL_ADDRESS, HS_PHONE_NUMBER, or CHANNEL_SPECIFIC_OPAQUE_ID. -- **delivery_identifier_value** (`string`, required) The PublicDeliveryIdentifier in string format, such as an E.164 phone number, an email address, or a channel-specific identifier. - -## HubspotConversationsApi.GetCustomChannelAccounts - -
- - -Retrieve accounts for a specified custom channel. - -**Parameters** - -- **custom_channel_id** (`string`, required) The unique identifier of the custom channel to retrieve accounts for. Must be a valid string. - -## HubspotConversationsApi.CreateChannelAccount - -
- - -Create a new account for a specified communication channel. - -**Parameters** - -- **account_name** (`string`, required) The name of the account to be created for the channel. It identifies the account within the specified communication channel. -- **channel_id** (`string`, required) The unique identifier for the communication channel where the account will be created. This should be a string value. -- **inbox_id** (`string`, required) The unique identifier for the inbox where the channel account will be created. This should be a string that corresponds to an existing inbox in Hubspot. -- **is_authorized** (`boolean`, required) Boolean to indicate if the account should be authorized. Set to true for authorized accounts, false otherwise. -- **delivery_identifier_type** (`string`, optional) Type of identifier: HS_EMAIL_ADDRESS, HS_PHONE_NUMBER, or CHANNEL_SPECIFIC_OPAQUE_ID. -- **delivery_identifier_value** (`string`, optional) A string representation of the delivery identifier. Can be an E.164 phone number, an email address, or a channel-specific identifier. - -## HubspotConversationsApi.RetrieveChannelAccountDetails - -
- - -Retrieve details for a specific channel account. - -**Parameters** - -- **channel_account_id** (`string`, required) Unique identifier for the specific channel account to retrieve details about. Provided as a string. -- **channel_identifier** (`string`, required) The unique identifier for the channel. Used to specify which channel's account details to retrieve. - -## HubspotConversationsApi.UpdateChannelAccountInfo - -
- - -Update channel account name and authorization status. - -**Parameters** - -- **channel_account_id** (`string`, required) The unique identifier for the channel account to be updated. It is required for specifying which channel account to modify. -- **channel_id** (`string`, required) The unique identifier for the channel in Hubspot Conversations. Required to specify which channel account to update. -- **channel_account_name** (`string`, optional) The new name for the channel account. This updates the display name associated with the account. -- **set_authorization_status** (`boolean`, optional) Boolean value to update the channel account's authorization. Set to False to disable the account. - -## HubspotConversationsApi.PublishCustomChannelMessage - -
- - -Publish a message to a custom channel on HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **custom_channel_id** (`string`, optional) The unique ID of the custom channel where the message will be published. Must be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## Reference - -Below is a reference of enumerations used by some of the tools in the HubspotConversationsApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - -## Auth - -The HubspotConversationsApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotConversationsApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider. - - diff --git a/app/en/resources/integrations/sales/hubspot-crm-api/page.mdx b/app/en/resources/integrations/sales/hubspot-crm-api/page.mdx deleted file mode 100644 index 5ca4651f6..000000000 --- a/app/en/resources/integrations/sales/hubspot-crm-api/page.mdx +++ /dev/null @@ -1,13976 +0,0 @@ -# HubspotCrmApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The HubspotCrmApi MCP Server offers a comprehensive suite of tools for managing and interacting with HubSpot CRM. Users can efficiently perform a variety of actions, including: - -- Retrieve, create, update, and delete records for contacts, companies, deals, tickets, and more. -- Manage associations between different CRM objects, such as linking contacts to companies or deals. -- Handle tasks, meetings, notes, and emails, including batch operations for efficiency. -- Access and manage custom properties, pipelines, and services within the HubSpot environment. -- Search for specific records based on various criteria and retrieve detailed information about them. - -This MCP Server is designed to streamline CRM operations, making it easier to maintain and manipulate data within HubSpot. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## HubspotCrmApi.RetrieveHubspotCrmRecords - -
- - -Retrieve HubSpot CRM records by ID or unique property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **crm_object_type** (`string`, optional) The type of CRM object to retrieve (e.g., contacts, companies). Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **return_only_archived_records** (`boolean`, optional) Set true to return only archived records; false to return unarchived records. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateObjectAssociation - -
- - -Create an association between two CRM objects in HubSpot. - -**Parameters** - -- **association_type** (`string`, required) Specifies the type of association to create between the objects, such as 'contact_to_company'. -- **source_object_id** (`string`, required) The ID of the primary object to associate in HubSpot. This should be a valid string representing the CRM object's unique identifier. -- **source_object_type** (`string`, required) Type of the source object. Specify the CRM object type, such as 'contact', 'company', or 'deal'. -- **target_object_id** (`string`, required) The ID of the target object to associate with. This is the object you want to link to the main object in HubSpot CRM. -- **target_object_type** (`string`, required) The type of the target object to associate. Examples include 'contact', 'company', or 'deal'. - -## HubspotCrmApi.RemoveCrmAssociation - -
- - -Remove associations between CRM objects. - -**Parameters** - -- **association_type** (`string`, required) The type of association between the CRM objects to be removed. Specify the nature of the relationship, such as 'contact-to-company'. -- **object_type** (`string`, required) Specifies the type of the primary CRM object (e.g., 'contact', 'company'). -- **source_object_id** (`string`, required) The unique identifier of the source object whose association is to be removed. -- **target_object_id** (`string`, required) The ID of the target object to unlink from the source object. This must be a string representing the unique identifier. -- **target_object_type** (`string`, required) Specifies the type of the target CRM object to unlink. Examples include 'contact', 'company', etc. - -## HubspotCrmApi.UpdateMultipleHubspotAppointments - -
- - -Update multiple appointments in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **hubspot_object_type** (`string`, optional) Specify the type of HubSpot CRM object to update, e.g., 'appointments'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetAppointmentsData - -
- - -Retrieve a page of appointments from HubSpot CRM. - -**Parameters** - -- **appointment_object_type** (`string`, required) The type of HubSpot object to be queried, specifically for appointments. -- **appointment_properties_to_return** (`array[string]`, optional) A list of property names to include in the response. Properties not present on the requested objects are ignored. -- **only_archived_results** (`boolean`, optional) Set to true to return only results that have been archived. -- **paging_cursor_token** (`string`, optional) Token indicating the last successfully read resource to continue pagination. -- **properties_with_history** (`array[string]`, optional) List properties to return with their history of values. Reduces max results per request. -- **results_limit** (`integer`, optional) Specify the maximum number of results to display per page. -- **retrieve_associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for. If specified associations don't exist, they will be ignored. - -## HubspotCrmApi.CreateCrmAppointment - -
- - -Create an appointment in the CRM with specified properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **appointment_object_type** (`string`, optional) Specifies the type of CRM object to create. For appointments, this should be 'appointment'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchAppointments - -
- - -Create multiple appointments in one request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **appointment_object_type** (`string`, optional) Specify the type of CRM object for the appointments, typically 'appointments'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetAssociationsInHubspot - -
- - -Retrieve associations between HubSpot CRM objects. - -**Parameters** - -- **hubspot_object_id** (`string`, required) The unique identifier for the HubSpot CRM object whose associations are being requested. -- **object_type** (`string`, required) Specifies the type of HubSpot CRM object (e.g., contact, deal, company) whose associations you want to retrieve. -- **target_object_type** (`string`, required) The type of the target object to which the association is being found. Specify the object type like 'contact', 'deal', 'company', etc. -- **include_full_associations** (`boolean`, optional) Set to true to include full associations in the response, otherwise only basic associations will be returned. -- **max_results** (`integer`, optional) Specifies the maximum number of associations to return. Provide an integer value to limit the results. -- **paging_offset_after** (`string`, optional) A string used for pagination to get the next set of results after the specified cursor. Leave empty or omit for the first set of results. - -## HubspotCrmApi.UpsertHubspotRecords - -
- - -Create or update HubSpot CRM records in batch mode. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **object_type** (`string`, optional) The type of object in HubSpot CRM (e.g., contacts, companies) to create or update. Specify the object type relevant to your operation. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchAppointments - -
- - -Search for appointments based on specified criteria. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **appointment_search_criteria_type** (`string`, optional) Specify the type of object for the appointment search, such as 'appointments'. This determines the domain within the CRM to be searched. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveMultipleAppointments - -
- - -Archive multiple appointments using their IDs. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **appointment_object_type** (`string`, optional) The type of object to be archived, typically 'appointments' for this endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GdprDeleteObject - -
- - -Delete CRM objects in compliance with GDPR. - -**Parameters** - -- **object_id** (`string`, required) The unique identifier for the CRM object to be deleted under GDPR compliance. -- **object_type_for_gdpr_deletion** (`string`, required) Specify the type of CRM object to delete (e.g., contacts, companies) for GDPR compliance. -- **unique_property_name** (`string`, optional) Specify a unique property name for the object to be deleted under GDPR. - -## HubspotCrmApi.RetrieveCrmObject - -
- - -Fetch CRM object details by ID or unique property. - -**Parameters** - -- **object_id** (`string`, required) The ID of the CRM object to retrieve. This can be the internal object ID or a unique property value specified by the id_property. -- **object_type** (`string`, required) Specifies the type of CRM object to retrieve, such as "contacts", "companies", or "deals". -- **associated_object_types** (`array[string]`, optional) Comma-separated list of object types to retrieve associated IDs for. Missing associations are ignored. -- **properties_list** (`array[string]`, optional) An array of property names to be returned in the response. If any specified properties are not present, they will be ignored. -- **properties_with_history** (`array[string]`, optional) List properties to be returned with their historical values. If a property doesn't exist, it'll be ignored. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived results. -- **unique_property_name** (`string`, optional) Specify the name of a property with unique values for this object to identify it instead of the default ID. - -## HubspotCrmApi.DeleteCrmObject - -
- - -Delete a CRM object and move it to the recycling bin. - -**Parameters** - -- **crm_object_id** (`string`, required) The unique identifier for the CRM object to be deleted. This ID specifies which object will be moved to the recycling bin. -- **crm_object_type** (`string`, required) Specify the type of CRM object to delete, such as 'contact', 'deal', or 'company'. - -## HubspotCrmApi.UpdateHubspotObject - -
- - -Update specific properties of a HubSpot CRM object. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **object_type** (`string`, optional) The type of CRM object to update (e.g., contacts, companies). Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **object_identifier** (`string`, optional) A string representing the internal object ID or unique property value used to identify the HubSpot CRM object for updating. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of a property whose values are unique for the object, used to identify the object for the update. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.MergeHubspotCrmObjects - -
- - -Merge two HubSpot CRM objects into a single entity. - -**Parameters** - -- **hubspot_object_type** (`string`, required) Specify the type of HubSpot CRM object to merge, such as contact, company, or deal. -- **object_id_to_merge** (`string`, required) The ID of the HubSpot CRM object to be merged into the primary object. This should be a string identifier. -- **primary_object_id** (`string`, required) The ID of the primary HubSpot CRM object to retain post-merge. - -## HubspotCrmApi.CreateBatchAssociationsHubspot - -
- - -Batch create associations between object types in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **from_object_type** (`string`, optional) The type of the source object for the association (e.g., 'contact', 'company'). Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **target_object_type** (`string`, optional) The type of the object that the associations will point to (e.g., 'contacts', 'companies'). Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.BatchReadAssociations - -
- - -Retrieve batch associations between CRM object types in HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **source_object_type** (`string`, optional) The CRM object type from which the associations originate, such as 'contacts' or 'deals'. Specify a valid CRM object type. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **destination_object_type** (`string`, optional) Specify the CRM object type to associate with, such as 'contacts' or 'companies'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.HubspotBatchArchiveAssociations - -
- - -Batch archive associations in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **source_object_type** (`string`, optional) The type of the source object for the associations to be archived (e.g., 'contacts', 'companies'). Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **target_object_type** (`string`, optional) Specify the type of the object to which the association is directed, e.g., 'company', 'deal'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetAssociationTypes - -
- - -Get association types between two object types in HubSpot CRM. - -**Parameters** - -- **source_object_type** (`string`, required) Specifies the source object type in HubSpot CRM from which associations are retrieved (e.g., 'contact', 'deal'). -- **target_object_type** (`string`, required) Specify the type of the destination object to retrieve association types for. These are the related entities in HubSpot CRM. - -## HubspotCrmApi.CreateBatchOfCalls - -
- - -Create a batch of calls with specified properties and associations. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertCallRecords - -
- - -Create or update call records in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveCallsBatch - -
- - -Retrieve a batch of calls by ID from HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_only_archived** (`boolean`, optional) Set to 'true' to return only archived calls, 'false' to exclude them. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateBatchCalls - -
- - -Update multiple calls in HubSpot CRM by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetCallsPage - -
- - -Retrieve a page of call records from HubSpot CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) Specify object types to retrieve associated IDs for. Comma-separated list. Non-existing associations are ignored. -- **call_properties** (`array[string]`, optional) A list of properties to include in the response, such as call date, duration, etc. -- **paging_cursor_token** (`string`, optional) The paging cursor token from the last successfully read resource for retrieving the next page of results. -- **properties_with_history** (`array[string]`, optional) A list of properties to return with historical values. Note: Reduces max calls per request. -- **results_per_page** (`integer`, optional) The maximum number of call records to display per page. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived call records. False will include non-archived records. - -## HubspotCrmApi.CreateHubspotCall - -
- - -Create a call in HubSpot with specified properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetCallDetails - -
- - -Retrieve details of a call using its ID in HubSpot CRM. - -**Parameters** - -- **call_identifier** (`string`, required) The unique identifier for the call. This can be an internal object ID or a unique property value as specified. -- **associated_object_types** (`array[string]`, optional) Specify object types to retrieve associated IDs for. Use comma-separated values. -- **only_archived_results** (`boolean`, optional) Specify `True` to return only archived results, otherwise `False`. -- **properties_with_history** (`array[string]`, optional) Comma-separated list of properties to return with history. Ignores non-existent properties. -- **return_properties** (`array[string]`, optional) Comma-separated list of properties to return in the response. Ignored if not present on requested object. -- **unique_property_name** (`string`, optional) Unique property name used to identify the call object in HubSpot CRM. - -## HubspotCrmApi.ArchiveCallInHubspot - -
- - -Archive a call in HubSpot CRM by moving it to the recycle bin. - -**Parameters** - -- **call_identifier** (`string`, required) The unique identifier for the call to be archived in HubSpot CRM. - -## HubspotCrmApi.UpdateCallInfo - -
- - -Update details of a specific call record in the CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **call_identifier** (`string`, optional) The identifier for the call object you wish to update. This can be the internal call ID or a unique value defined by the `idProperty`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of a unique property for identifying the call object, other than the default ID. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveCallsBatch - -
- - -Archive a batch of calls by their IDs. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchCallsHubspot - -
- - -Search and filter call records in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveCartsBatch - -
- - -Archive multiple carts by ID in a batch operation. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchOfCarts - -
- - -Create a batch of carts efficiently in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveCartDetails - -
- - -Retrieve detailed information about shopping carts. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) List object types to retrieve associated IDs for. Ignored if associations don't exist. -- **cart_properties_to_return** (`array[string]`, optional) List of properties to include in the response for each cart. Ignored if missing on objects. -- **max_results_per_page** (`integer`, optional) Maximum number of results to display per page when retrieving cart details. -- **paging_cursor_token** (`string`, optional) The paging cursor token for retrieving the next set of results. Use the `paging.next.after` from the previous response for more results. -- **properties_with_history_list** (`array[string]`, optional) List of properties to return with their history in the response. Reduces max number of carts per request. -- **return_only_archived** (`boolean`, optional) Set to true to return only archived results. - -## HubspotCrmApi.CreateCartHubspotCrm - -
- - -Create a cart and retrieve its details including ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveCartRecords - -
- - -Retrieve cart records by record ID or custom property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **only_archived_results** (`boolean`, optional) Set to true to return only archived results. Default is false. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertCartRecords - -
- - -Create or update cart records in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateCartsBatch - -
- - -Update a batch of carts by internal ID or unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchHubspotCarts - -
- - -Search for carts in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetCartDetails - -
- - -Retrieve detailed information of a cart by ID. - -**Parameters** - -- **cart_identifier** (`string`, required) The unique identifier for the cart. This can be the internal ID or a unique property value specified by the `idProperty` parameter. -- **associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for, such as 'deals' or 'contacts'. -- **only_return_archived_results** (`boolean`, optional) Set to `true` to return only archived results; `false` includes all. -- **properties_with_history** (`array[string]`, optional) Specify properties to retrieve alongside their history of previous values, separated by commas. -- **return_properties** (`array[string]`, optional) List of specific properties to retrieve for the cart. Ignored if properties don't exist. -- **unique_property_name** (`string`, optional) Specify a property name with unique values for the cart object, if not using the default internal ID. - -## HubspotCrmApi.DeleteShoppingCart - -
- - -Delete a shopping cart from HubSpot CRM. - -**Parameters** - -- **cart_identifier** (`string`, required) The unique identifier of the shopping cart to delete from HubSpot CRM. It should be a string. - -## HubspotCrmApi.UpdateCartProperties - -
- - -Update specific properties of a cart in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **cart_identifier** (`string`, optional) The unique identifier of the cart to be updated. This is required to specify which cart's properties will be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_identifier_property** (`string`, optional) The name of the property with unique values for this cart object to identify it. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertCommercePayments - -
- - -Create or update unique commerce payment records in HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchCommercePayments - -
- - -Create a batch of commerce payments in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveCommercePaymentDetails - -
- - -Retrieve details of a specific commerce payment using its ID. - -**Parameters** - -- **commerce_payment_id** (`string`, required) The unique identifier for the commerce payment to retrieve details for. It corresponds to the internal object ID by default. -- **associated_object_types** (`array[string]`, optional) List of object types to retrieve associated IDs for. If any specified associations do not exist, they are ignored. -- **only_return_archived_results** (`boolean`, optional) Specify `true` to return only archived results. Default is `false`. -- **properties_with_history** (`array[string]`, optional) List of properties to retrieve along with their historical values. Specify as comma-separated values. -- **return_properties** (`array[string]`, optional) A list of property names to be included in the response. Irrelevant properties will be ignored. -- **unique_property_name** (`string`, optional) The property name used as a unique identifier for the commerce payment object. - -## HubspotCrmApi.DeleteCommercePayment - -
- - -Delete a commerce payment from the CRM system. - -**Parameters** - -- **commerce_payment_id** (`string`, required) The unique identifier for the commerce payment to be moved to the recycling bin. - -## HubspotCrmApi.UpdateCommercePayment - -
- - -Partially update a commerce payment by ID or unique property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **commerce_payment_id** (`string`, optional) The internal ID of the commerce payment to update. This ID identifies the specific payment object within the system. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of a unique property for identifying the object. Use this if not using the default internal ID. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveCommercePaymentsBatch - -
- - -Archive a batch of commerce payments by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateCommercePaymentsBatch - -
- - -Update a batch of commerce payments by internal ID or unique values. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveCommercePaymentRecords - -
- - -Retrieve commerce payment records by ID or unique property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_results_only** (`boolean`, optional) Return only archived commerce payment records if set to true. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchCommercePayments - -
- - -Search for commerce payments in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetCommercePayments - -
- - -Retrieve a page of commerce payments from HubSpot CRM. - -**Parameters** - -- **associations_to_retrieve** (`array[string]`, optional) List of object types to retrieve associated IDs for. Non-existing associations are ignored. -- **paging_cursor_token** (`string`, optional) The paging cursor token from the last successfully read resource. Used for paginating through results. -- **properties_with_history** (`array[string]`, optional) A list of properties to be returned with their historical values. Reduces the maximum payments per request. -- **results_per_page** (`integer`, optional) Specify the maximum number of results to display per page. -- **returned_properties** (`array[string]`, optional) List the properties to return in the response. Non-present properties are ignored. -- **show_only_archived** (`boolean`, optional) Set to true to return only archived results. - -## HubspotCrmApi.CreateCommercePayment - -
- - -Create a commerce payment and return its details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateSubscriptionBatch - -
- - -Update multiple subscriptions by ID or property values. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveSubscriptionsBatch - -
- - -Archive a batch of subscriptions by ID in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchHubspotSubscriptions - -
- - -Search for subscriptions in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetSubscriptionData - -
- - -Fetch a page of subscription data from HubSpot CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) List of object types to retrieve associated IDs for. Ignored if not existing. -- **max_results_per_page** (`integer`, optional) The maximum number of subscription results to display per page. -- **paging_cursor_token** (`string`, optional) The token indicating the last successfully read resource, used for pagination in subsequent requests. -- **properties_with_history** (`array[string]`, optional) List of property names for retrieving their values and history. Reduces max subscriptions per request. -- **requested_properties** (`array[string]`, optional) A list of property names to be included in the response. If a specified property is not present in the requested objects, it will be ignored. -- **return_only_archived** (`boolean`, optional) Set to true to return only archived results. Set to false to include active results. - -## HubspotCrmApi.CreateSubscription - -
- - -Create a new subscription in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertSubscriptionsInHubspotCrm - -
- - -Batch create or update subscription records in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveSubscriptionRecords - -
- - -Retrieve subscription records by ID or unique property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **only_archived_records** (`boolean`, optional) Set to true to return only archived results. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchSubscriptions - -
- - -Create a batch of subscriptions in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetSubscriptionDetails - -
- - -Retrieve details of a specific subscription by ID. - -**Parameters** - -- **subscription_id** (`string`, required) The unique identifier for the subscription object to be retrieved. This can be the internal object ID or a unique property value specified by the idProperty query param. -- **association_types_to_retrieve** (`array[string]`, optional) A list of object types to retrieve associated IDs for. Non-existing associations will be ignored. -- **only_archived_results** (`boolean`, optional) Set to true to return only archived items, false to exclude them. -- **properties_with_history** (`array[string]`, optional) A list of property names whose values and history are to be retrieved for the subscription. Properties not present on the object will be ignored. -- **requested_properties** (`array[string]`, optional) List of properties to return in the response. Properties not present in the object will be ignored. -- **unique_property_name** (`string`, optional) The property name used to uniquely identify the subscription object instead of the default ID. - -## HubspotCrmApi.DeleteSubscription - -
- - -Delete a specific subscription from HubSpot CRM. - -**Parameters** - -- **subscription_id** (`string`, required) The unique identifier of the subscription to be deleted. This moves the subscription to the recycling bin in HubSpot CRM. - -## HubspotCrmApi.UpdateSubscription - -
- - -Update subscription details using provided property values. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **subscription_id** (`string`, optional) The identifier for the subscription to update, typically the internal object ID. Specify this to target the right subscription. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of a unique property to identify the subscription object for updating. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateMessagesBatch - -
- - -Update a batch of messages in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.DeleteBatchMessages - -
- - -Delete a batch of messages by ID with restoration option. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertCommunicationsRecords - -
- - -Create or update communication records in bulk. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ReadCommunicationsPage - -
- - -Retrieve a page of communications from HubSpot CRM. - -**Parameters** - -- **paging_cursor_token** (`string`, optional) The paging cursor token for the next set of results to read from the previous request's `paging.next.after` JSON property. -- **properties_with_history** (`array[string]`, optional) A list of properties to return with their history. Reduces the maximum number of communications per request. -- **results_per_page** (`integer`, optional) The maximum number of results to display per page. -- **retrieve_associations** (`array[string]`, optional) Comma-separated list of object types to get associated IDs for. Ignored if the association doesn't exist. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived results. False includes all results. -- **specified_properties** (`array[string]`, optional) List of communication properties to return in the response. Properties not present will be ignored. - -## HubspotCrmApi.CreateHubspotCommunication - -
- - -Create a new communication entry in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetCommunicationById - -
- - -Retrieve details of a communication by its ID. - -**Parameters** - -- **communication_identifier** (`string`, required) Specify the unique ID or property value for the communication object to retrieve. -- **properties_to_return** (`array[string]`, optional) Comma-separated list of properties to include in the response. Missing properties are ignored. -- **properties_with_history** (`array[string]`, optional) List the properties whose history of values should be returned. Comma-separated values are expected. -- **retrieve_associated_object_types** (`array[string]`, optional) A list of object types for retrieving associated IDs. Non-existing associations will be ignored. -- **return_only_archived** (`boolean`, optional) Set to true to return only results that have been archived. Defaults to false to include non-archived results. -- **unique_property_name** (`string`, optional) The property name used to uniquely identify the communication object. Allows retrieval by non-default identifiers. - -## HubspotCrmApi.ArchiveCommunication - -
- - -Archive a communication by its ID. - -**Parameters** - -- **communication_id** (`string`, required) The unique identifier for the communication object to be archived. It must be a valid string representing an existing communication ID. - -## HubspotCrmApi.UpdateCommunicationDetails - -
- - -Update communication object details in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **communication_id** (`string`, optional) The internal object ID of the communication. Used to identify which communication object to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The unique property name used to identify the communication object if not using `communicationId`. It must refer to a property with unique values for the object. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchCrmMessages - -
- - -Search and filter CRM messages based on various criteria. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveBatchCommunications - -
- - -Retrieve a batch of communication messages by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_only** (`boolean`, optional) Set to True to return only archived results. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateHubspotMessagesBatch - -
- - -Create a batch of messages in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveBatchCompaniesHubspot - -
- - -Retrieve a batch of company records from HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_only** (`boolean`, optional) Set to true to return only archived companies in the results. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveAllCompanies - -
- - -Retrieve all companies from HubSpot CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for. Non-existent associations will be ignored. -- **paging_cursor_token** (`string`, optional) The cursor token to fetch the next set of results in a paginated response. -- **properties_to_return** (`array[string]`, optional) List of properties to include in the response. Ignore if not present on the object. -- **properties_with_history** (`array[string]`, optional) A list of properties to return with their history of previous values. This reduces max companies per request. -- **results_per_page_limit** (`integer`, optional) The maximum number of results to display per page. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived results in the response. - -## HubspotCrmApi.CreateCompanyHubspot - -
- - -Create a new company in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchCompaniesInHubspot - -
- - -Search for companies in HubSpot CRM using filters and sorting. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveCompanyById - -
- - -Retrieve detailed company information using its ID. - -**Parameters** - -- **company_identifier** (`string`, required) A unique identifier for the company, such as its ID or a unique property name, used to retrieve its details. -- **associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for. Ignores non-existent associations. -- **company_properties_to_retrieve** (`array[string]`, optional) List the specific company properties to retrieve, separated by commas. Ignored if properties are unavailable. -- **retrieve_properties_with_history** (`array[string]`, optional) List of properties to return with their history of previous values. Ignored if properties aren't present. -- **return_only_archived** (`boolean`, optional) Set to true to return only archived results. If false, non-archived results will be returned. -- **unique_property_name** (`string`, optional) The name of a unique property to identify the company. Used instead of company ID. - -## HubspotCrmApi.DeleteCompany - -
- - -Delete a company by ID in HubSpot CRM. - -**Parameters** - -- **company_id** (`string`, required) The unique identifier of the company to be deleted in HubSpot CRM. This ID is required to specify the company. - -## HubspotCrmApi.UpdateHubspotCompany - -
- - -Update a company's details in HubSpot CRM using its ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **company_unique_identifier** (`string`, optional) The unique identifier for the company to be updated, either the companyId or a unique property value. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) Specify the name of the unique property used to identify the company. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateOrUpdateCompanies - -
- - -Create or update companies in HubSpot CRM using a unique identifier. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateBatchOfCompanies - -
- - -Update multiple company records in HubSpot by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchOfCompanies - -
- - -Create a batch of companies with properties and associations. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.DeleteCompaniesBatch - -
- - -Delete a batch of companies by ID in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.MergeCompanyRecords - -
- - -Merge two company records in HubSpot CRM. - -**Parameters** - -- **company_id_to_merge** (`string`, required) The ID of the company to merge into the primary company. -- **primary_company_id** (`string`, required) The ID of the primary company into which the other company will be merged. - -## HubspotCrmApi.BatchReadContacts - -
- - -Retrieve multiple contacts using internal IDs or unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_only** (`boolean`, optional) Set to True to return only archived contacts. False excludes them. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetContactDetails - -
- - -Retrieve detailed information about a specific contact. - -**Parameters** - -- **contact_identifier** (`string`, required) The ID or unique property value used to identify the contact in HubSpot CRM. -- **associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for. Ignored if associations do not exist. -- **properties_with_history** (`array[string]`, optional) A list of properties to return with their history of previous values. Ignored if properties are not present. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only results that have been archived. -- **return_properties** (`array[string]`, optional) List of properties to include in the response for the contact. If absent on the object, they will be ignored. -- **unique_property_name** (`string`, optional) The property name with unique values for the contact type, used to identify the object. - -## HubspotCrmApi.DeleteContact - -
- - -Delete a contact and move it to the recycling bin. - -**Parameters** - -- **contact_id** (`string`, required) The unique identifier of the contact to be deleted and moved to the recycling bin. - -## HubspotCrmApi.UpdateContactInformation - -
- - -Update specific fields of a contact in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **contact_id** (`string`, optional) The unique ID or property value used to identify the contact for the update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) Specify the property name with unique values for identifying the contact, such as email or phone number. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.MergeContacts - -
- - -Merges two contacts into one in HubSpot CRM. - -**Parameters** - -- **contact_id_to_merge** (`string`, required) The ID of the contact object that will be merged into the primary contact. -- **primary_contact_id** (`string`, required) The unique identifier of the primary contact that will remain after merging. This contact's information will be retained. - -## HubspotCrmApi.ArchiveContactsBatch - -
- - -Archive a batch of contacts by ID in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchContacts - -
- - -Create a batch of contacts in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateBatchContacts - -
- - -Update a batch of contacts in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GdprDeleteContact - -
- - -Permanently delete a contact for GDPR compliance. - -**Parameters** - -- **contact_identifier** (`string`, required) The unique ID or email used to identify the contact for deletion. Use 'email' in conjunction with 'id_property' if identifying by email. -- **contact_identifier_property** (`string`, optional) Specify 'email' to identify the contact by email address. If not using email, specify another unique identifier property. - -## HubspotCrmApi.GetContacts - -
- - -Retrieve a page of contacts from HubSpot CRM. - -**Parameters** - -- **contact_properties_to_retrieve** (`array[string]`, optional) A list of properties to include in the response. Non-existent properties will be ignored. -- **max_results_per_page** (`integer`, optional) The maximum number of contact results to return per page. -- **paging_cursor_token** (`string`, optional) The token indicating the last read resource, used for pagination to retrieve more results. -- **properties_with_history** (`array[string]`, optional) Specify properties to return with their history of previous values, reducing the max number of objects per request. -- **retrieve_associated_ids** (`array[string]`, optional) A list of object types to retrieve associated IDs for. If associations do not exist, they will be ignored. -- **return_only_archived_results** (`boolean`, optional) Whether to return only results that have been archived. Use 'true' for archived only. - -## HubspotCrmApi.CreateHubspotContact - -
- - -Create a contact in HubSpot CRM and retrieve its details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchContacts - -
- - -Search contacts in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertContactBatch - -
- - -Upsert a batch of contacts in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetCourses - -
- - -Fetch a page of courses from HubSpot CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) Comma-separated list of object types to retrieve associated IDs for; ignored if non-existent. -- **maximum_results_per_page** (`integer`, optional) Specify the maximum number of courses to display in a single page of results. -- **paging_cursor_token** (`string`, optional) The paging cursor token of the last successfully read resource, used to fetch the next page of results. -- **properties_to_return** (`array[string]`, optional) Comma separated list of properties to include in the response. Ignored if not present on requested objects. -- **properties_with_history** (`array[string]`, optional) List of properties to return with their history. This can reduce the number of courses per request. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived results. False includes non-archived results. - -## HubspotCrmApi.CreateHubspotCourse - -
- - -Create a course in HubSpot CRM and return its details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveCoursesBatch - -
- - -Archive a batch of courses by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetCourseDetails - -
- - -Fetch details of a course using the course ID. - -**Parameters** - -- **course_id** (`string`, required) The unique identifier for the course. Use this to specify which course details to retrieve. -- **include_properties** (`array[string]`, optional) A list of property names to include in the response. Any missing properties will be ignored. -- **include_properties_with_history** (`array[string]`, optional) Specify properties to retrieve with their history of changes. Input as a list, each entry being a property name. -- **retrieve_associated_object_types** (`array[string]`, optional) A list of object types for retrieving associated IDs. Non-existent associations will be ignored. -- **return_only_archived** (`boolean`, optional) Set to true to return only results that have been archived. -- **unique_property_name** (`string`, optional) Specify the name of a unique property for the course object. - -## HubspotCrmApi.DeleteCourse - -
- - -Delete a course by moving it to the recycling bin. - -**Parameters** - -- **course_id** (`string`, required) The unique identifier for the course to be deleted. This identifier is used to locate the specific course in the CRM system. - -## HubspotCrmApi.UpdateHubspotCourse - -
- - -Update specific properties of a HubSpot course object. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **course_identifier** (`string`, optional) The unique identifier for the HubSpot course. It can be the internal course ID or a unique property value specified by `idProperty`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The property name with unique values for identifying the object to update. Use it if not using `courseId`. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchOfCourses - -
- - -Create a batch of courses in CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.BatchUpsertRecords - -
- - -Create or update HubSpot CRM records via unique identifier. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.HubspotCrmSearchObjects - -
- - -Search and retrieve objects from HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateCoursesBatch - -
- - -Update multiple courses in a batch by ID or unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveHubspotRecords - -
- - -Retrieve HubSpot CRM records by ID or unique property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_records** (`boolean`, optional) Set to true to return only archived records; false to exclude archived records in HubSpot CRM. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveOwnersList - -
- - -Retrieve a list of owners from the HubSpot CRM account. - -**Parameters** - -- **filter_by_email** (`string`, optional) Specify an email address to filter the list of owners returned. Only the owner with this exact email will be retrieved. -- **include_archived** (`boolean`, optional) Set to true to include archived owners in the retrieved list. -- **owners_list_limit** (`integer`, optional) The maximum number of owners to return per page. Provide an integer value. -- **pagination_cursor_after** (`string`, optional) A cursor to get the next page of results, indicating the last result shown from the previous request. - -## HubspotCrmApi.RetrieveOwnerDetails - -
- - -Retrieve details of a specific CRM owner by ID. - -**Parameters** - -- **owner_id** (`integer`, required) The unique ID of the CRM owner. Use this to retrieve the owner's details. -- **include_archived** (`boolean`, optional) Set to true to include archived owners in the retrieved details. -- **owner_id_type** (`string`, optional) Specify whether the 'ownerId' refers to an 'id' or 'userId'. - -## HubspotCrmApi.BatchRetrieveHubspotRecords - -
- - -Retrieve HubSpot CRM records using batch read. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **crm_object_type** (`string`, optional) Specify the type of CRM object to retrieve, such as 'contact', 'deal', or 'company'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **return_archived_results** (`boolean`, optional) Set to true to return only archived results. Use false to include active records. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.FetchHubspotObjectById - -
- - -Retrieve a HubSpot CRM object using its unique ID. - -**Parameters** - -- **object_identifier** (`string`, required) The unique identifier of the HubSpot CRM object to retrieve. This can be the internal object ID or another unique property value if specified by the `id_property` parameter. -- **object_type** (`string`, required) The type of the HubSpot CRM object you want to retrieve. Examples include 'contact', 'company', and 'deal'. -- **associated_object_types** (`array[string]`, optional) Specify object types to retrieve associated IDs for, separated by commas. Non-existing associations will be ignored. -- **properties_with_history** (`array[string]`, optional) A list of properties to return along with their historical values. Ignored if properties are not present. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived results. Set to false to include all results. -- **return_properties** (`array[string]`, optional) List of properties to return for the object. Ignored if not present on the object. -- **unique_property_name** (`string`, optional) Specify the property name that uniquely identifies the object. - -## HubspotCrmApi.MoveObjectToRecycleBin - -
- - -Move a CRM object to the recycling bin. - -**Parameters** - -- **object_id** (`string`, required) The unique identifier for the CRM object to be moved to the recycling bin. This ID specifies which object within the CRM will be affected. -- **object_type** (`string`, required) Type of the CRM object to be moved, such as 'contacts', 'companies', etc. - -## HubspotCrmApi.ModifyHubspotObject - -
- - -Update specific properties of a HubSpot CRM object. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **hubspot_object_type** (`string`, optional) Specify the type of HubSpot CRM object (e.g., 'contacts', 'companies', 'deals'). Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **object_identifier** (`string`, optional) The internal ID of the HubSpot object to update. Use a string format. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of a unique property for identifying the object. Use when the default object ID isn't used. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.MergeHubspotObjects - -
- - -Merge two HubSpot CRM objects of the same type. - -**Parameters** - -- **object_id_to_merge** (`string`, required) The ID of the object to be merged into the primary object. It must be of the same type as the primary object. -- **object_type_to_merge** (`string`, required) The type of HubSpot CRM object to merge, such as 'contacts' or 'companies'. -- **primary_object_id** (`string`, required) The ID of the object that will remain after the merge. Provide as a string. - -## HubspotCrmApi.ArchiveHubspotObjectsBatch - -
- - -Archive a batch of HubSpot CRM objects by ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **hubspot_object_type** (`string`, optional) Specifies the type of HubSpot CRM objects to archive (e.g., 'contacts', 'companies'). Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateHubspotObjectsBatch - -
- - -Update multiple HubSpot CRM objects in a batch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **object_type** (`string`, optional) The type of HubSpot CRM object to update, such as 'contacts', 'companies', 'deals', or 'tickets'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateHubspotObjectsBatch - -
- - -Create a batch of objects in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **hubspot_object_type** (`string`, optional) Specifies the type of object to create in HubSpot, such as 'contacts', 'deals', or 'companies'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateOrCreateHubspotRecords - -
- - -Create or update HubSpot CRM records in bulk. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **crm_object_type** (`string`, optional) Specifies the type of CRM object to act upon, such as 'contacts', 'companies', etc. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetHubspotObjectsPage - -
- - -Retrieve a page of HubSpot CRM objects. - -**Parameters** - -- **object_type** (`string`, required) Specify the type of CRM object to retrieve, such as 'contacts', 'companies', or 'deals'. -- **associated_object_types** (`array[string]`, optional) Comma-separated object types to retrieve associated IDs for. Ignored if associations do not exist. -- **max_results_per_page** (`integer`, optional) Specify the maximum number of results to display per page. -- **paging_cursor_token** (`string`, optional) The token used to retrieve the next page of results. Obtained from the `paging.next.after` property of a previous response. -- **properties_with_history** (`array[string]`, optional) List the properties to return with their historical values in the CRM objects. -- **requested_properties** (`array[string]`, optional) List of properties to include in the response. Ignored if not present on the object(s). -- **return_archived_results_only** (`boolean`, optional) Return only the archived results if set to true. - -## HubspotCrmApi.CreateCrmObject - -
- - -Create a CRM object and retrieve its details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **crm_object_type** (`string`, optional) Specify the type of CRM object to create, such as 'contact', 'company', or 'deal'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchHubspotObjects - -
- - -Perform a search on HubSpot CRM objects by type. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **object_type** (`string`, optional) Specify the type of object to search for in HubSpot, such as contacts, companies, or deals. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateMultipleDeals - -
- - -Update multiple deals in the CRM system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchDeals - -
- - -Search for deals using specified criteria and filters. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateOrUpdateHubspotRecords - -
- - -Create or update HubSpot CRM records using unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveMultipleDeals - -
- - -Archive multiple deals using their IDs in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveCrmRecords - -
- - -Retrieve CRM records by ID or custom unique property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **retrieve_only_archived_records** (`boolean`, optional) Set to true to retrieve only archived CRM records. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetHubspotDealById - -
- - -Retrieve HubSpot CRM deal information by Deal ID. - -**Parameters** - -- **deal_id** (`string`, required) The unique identifier of the deal to retrieve from HubSpot CRM. -- **associated_object_types** (`array[string]`, optional) List of object types to retrieve associated IDs for. Ignored if associations do not exist. -- **properties_with_history** (`array[string]`, optional) Specify properties to return with their history of values. Use a comma-separated list. -- **return_archived_only** (`boolean`, optional) Set to true to return only results that have been archived. -- **return_properties** (`array[string]`, optional) List of properties to be returned in the response. Ignored if not present on the object. -- **unique_property_name** (`string`, optional) Specify the unique property name used to identify the deal. It defaults to an internal object ID if not provided. - -## HubspotCrmApi.ArchiveDealInHubspot - -
- - -Archives a specific deal in HubSpot CRM. - -**Parameters** - -- **deal_id** (`string`, required) The unique identifier of the deal to be archived in HubSpot CRM. - -## HubspotCrmApi.UpdateHubspotDeal - -
- - -Update a specific deal in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **deal_identifier** (`string`, optional) The unique identifier of the deal to be updated in HubSpot CRM. Can be internal ID or unique property value. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of a unique property to identify the deal instead of `dealId`. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateMultipleDeals - -
- - -Create multiple deals in HubSpot CRM in one request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetDealsPage - -
- - -Read a page of deals from the CRM system. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) List of object types to retrieve associated IDs for, separated by commas. If associations don't exist, they're ignored. -- **deal_properties** (`array[string]`, optional) List the properties to include in the response as a comma-separated string. Ignored if not present. -- **paging_cursor_token** (`string`, optional) The token for the paging cursor to retrieve the next page of results. -- **properties_with_history** (`array[string]`, optional) A list of deal properties for which historical values are returned. Usage reduces max results per request. -- **results_limit_per_page** (`integer`, optional) The maximum number of deals to display per page, as an integer. -- **return_archived_only** (`boolean`, optional) Set to true to return only archived results; false to include active results. - -## HubspotCrmApi.CreateHubspotDeal - -
- - -Create a new deal in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.MergeDeals - -
- - -Combine two deals into a single unified deal in HubSpot CRM. - -**Parameters** - -- **deal_id_to_merge** (`string`, required) The ID of the deal to be merged into the primary deal. -- **primary_deal_id** (`string`, required) The ID of the primary deal that will remain after merging. - -## HubspotCrmApi.ManageDealSplits - -
- - -Create or replace deal splits for specific deals. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ReadBatchDealSplits - -
- - -Fetch a batch of deal split objects by deal ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchDiscounts - -
- - -Search for discounts in the HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateDiscountsBatch - -
- - -Update multiple discounts by ID or unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveDiscountDetails - -
- - -Retrieve details of a discount by its ID. - -**Parameters** - -- **discount_identifier** (`string`, required) The unique identifier for the discount object to retrieve. This can either be the internal ID or a value of a unique property specified by `idProperty`. -- **archived_results_only** (`boolean`, optional) Set to true to return only results that have been archived. -- **associated_object_types** (`array[string]`, optional) Comma-separated list of object types to retrieve associated IDs for. Non-existent associations will be ignored. -- **properties_with_history** (`array[string]`, optional) List of properties to retrieve along with their value history. Ignored if properties are missing. -- **return_properties** (`array[string]`, optional) Comma-separated list of properties to return in response. Ignored if not present on the object. -- **unique_property_name** (`string`, optional) The property name for uniquely identifying the discount object. Use when the property value is not the default ID. - -## HubspotCrmApi.DeleteDiscount - -
- - -Delete a discount and move it to the recycling bin. - -**Parameters** - -- **discount_identifier** (`string`, required) The unique identifier of the discount object to delete and move to the recycling bin. - -## HubspotCrmApi.UpdateDiscountDetails - -
- - -Update specific properties of a discount in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **discount_identifier** (`string`, optional) The unique identifier for the discount object. This can be the internal ID or a unique property specified by `idProperty`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of a unique property to identify the discount object. Use this instead of the internal discount ID if needed. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchDiscountsHubspot - -
- - -Create a batch of discounts in HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertDiscountRecords - -
- - -Create or update discount records in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveDiscountsBatch - -
- - -Archive a batch of discounts by their IDs in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetHubspotDiscounts - -
- - -Retrieve a page of discounts from HubSpot CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for. Unknown associations will be ignored. -- **maximum_results_per_page** (`integer`, optional) The maximum number of results to display per page. -- **paging_cursor_token** (`string`, optional) The cursor token for pagination. Use the token from the last successfully read resource to fetch the next page. -- **properties_with_history** (`array[string]`, optional) List of properties to return with their history; reduces number of discounts returned per request. -- **return_only_archived** (`boolean`, optional) Set to true to return only archived discounts, false to include all. -- **returned_discount_properties** (`array[string]`, optional) List of properties to include in the response. Comma-separated, ignored if not present. - -## HubspotCrmApi.CreateDiscount - -
- - -Creates a discount and returns its details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveDiscountRecords - -
- - -Retrieve discount records by ID or custom property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **archived** (`boolean`, optional) Set to true to return only archived results. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchOfEmails - -
- - -Create a batch of emails with specified properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveEmailsPage - -
- - -Retrieve a page of emails from HubSpot CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for. If any specified associations don't exist, they will be ignored. -- **max_results_per_page** (`integer`, optional) The maximum number of email results to display per page. -- **paging_cursor_token** (`string`, optional) The token for the next page of results, from the `paging.next.after` field of the previous response. -- **properties_with_history** (`array[string]`, optional) List of properties to return with their history of previous values. Reduces maximum emails per request. -- **return_only_archived** (`boolean`, optional) Set to true to retrieve only archived emails. -- **returned_email_properties** (`array[string]`, optional) List the email properties to be included in the response. Specify as an array of strings representing the desired properties. - -## HubspotCrmApi.CreateHubspotEmail - -
- - -Create an email in HubSpot CRM and retrieve its details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveEmailRecords - -
- - -Retrieve email records by ID or custom property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **only_archived_records** (`boolean`, optional) Set to true to return only archived email records from HubSpot CRM. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateOrUpdateHubspotEmails - -
- - -Create or update HubSpot email records in batch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveEmailById - -
- - -Retrieve email object details using its ID. - -**Parameters** - -- **email_id** (`string`, required) The unique ID or property value of the email object to be retrieved. -- **object_types_for_associated_ids** (`array[string]`, optional) List the object types to retrieve associated IDs. If no associations exist, they will be ignored. -- **properties_with_history** (`array[string]`, optional) Comma-separated property names to include their history of previous values in the response. Non-existent properties will be ignored. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived results. Set to false to return active results. -- **returned_properties** (`array[string]`, optional) A list of properties to return for the email object. Properties not present on the object will be ignored. -- **unique_property_name** (`string`, optional) Specify the property name that holds unique values for the email object to be retrieved. - -## HubspotCrmApi.DeleteEmail - -
- - -Move an email to the recycling bin using its ID. - -**Parameters** - -- **email_id** (`string`, required) The unique identifier of the email to be archived in HubSpot CRM. - -## HubspotCrmApi.UpdateEmailInHubspotCrm - -
- - -Updates an email object in HubSpot CRM with new property values. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **email_identifier** (`string`, optional) The unique identifier for the email object, either the internal ID or a unique property value. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) Name of a unique property for identifying the email object, used instead of default ID. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveEmailsBatch - -
- - -Archive a batch of emails by their IDs. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateBatchEmails - -
- - -Update a batch of emails by their IDs or unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchEmails - -
- - -Search for emails based on specified query parameters. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetFeedbackSubmissionById - -
- - -Retrieve feedback submission details by ID. - -**Parameters** - -- **feedback_submission_id** (`string`, required) The ID of the feedback submission to retrieve details for. This can be the internal object ID or a unique property value specified by `idProperty`. -- **associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for. If nonexistent, they will be ignored. -- **properties_with_history** (`array[string]`, optional) Comma-separated list of properties to return with their history of previous values. Ignored if not present on the object. -- **return_archived_only** (`boolean`, optional) Set to true to return only archived results, false for active ones. -- **return_properties** (`array[string]`, optional) List of properties to return in the response. Non-existent properties will be ignored. -- **unique_property_name** (`string`, optional) The name of a property whose values are unique for the feedback submission object. - -## HubspotCrmApi.SearchFeedbackSubmissions - -
- - -Search for feedback submissions in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveFeedbackRecords - -
- - -Retrieve feedback submission records by ID or custom properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_only** (`boolean`, optional) Set to true to return only archived feedback submission records. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetFeedbackSubmissions - -
- - -Retrieve a page of feedback submissions from the CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) Comma separated list of object types to retrieve associated IDs for, like 'contacts' or 'companies'. Ignored if nonexistent. -- **max_results_per_page** (`integer`, optional) Specify the maximum number of results to display per page. -- **paging_cursor_token** (`string`, optional) The token of the last read resource for fetching the next page of results. -- **properties_to_return** (`array[string]`, optional) List of properties to return for each feedback submission. Comma separated. Ignores non-existing properties. -- **properties_with_history** (`array[string]`, optional) A list of property names whose history of values should be returned. Properties not present will be ignored. Reduces the maximum number of submissions per request. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived feedback submissions; false to include both archived and active submissions. - -## HubspotCrmApi.GetFeeDetails - -
- - -Retrieve information about a specific fee by ID. - -**Parameters** - -- **fee_identifier** (`string`, required) The unique identifier for the fee object to retrieve. It can be the internal object ID or a value from a unique property specified by the `idProperty` parameter. -- **associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for. Non-existent associations will be ignored. -- **only_return_archived_results** (`boolean`, optional) Set to true to retrieve only archived results. False for non-archived. -- **properties_with_history** (`array[string]`, optional) List of properties to return with their history of previous values, specified as strings. Non-existent properties will be ignored. -- **return_properties** (`array[string]`, optional) A list of properties to return for the fee object. Any non-existent properties will be ignored. -- **unique_property_name** (`string`, optional) Specify the property name with unique values for the fee object. - -## HubspotCrmApi.DeleteFeeObject - -
- - -Move a fee object to the recycling bin using its fee ID. - -**Parameters** - -- **fee_id_to_delete** (`string`, required) The unique identifier of the fee object to be deleted in HubSpot CRM. - -## HubspotCrmApi.UpdateFeeDetails - -
- - -Update specific details of a fee in the CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **fee_identifier** (`string`, optional) The ID or unique property value that identifies the fee object to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) Specify the unique property name to identify the object instead of the default ID. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertHubspotFees - -
- - -Create or update fee records in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetCrmFees - -
- - -Fetch a list of fees from the CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) Comma-separated list of object types to retrieve associated IDs for. Ignored if associations don't exist. -- **fee_properties_to_return** (`array[string]`, optional) List of properties to be returned in the response. If a property is not present, it will be ignored. -- **maximum_results_per_page** (`integer`, optional) The maximum number of fees to display per page. -- **paging_cursor_token** (`string`, optional) The token used to retrieve the next page of results. Use the token returned in `paging.next.after` from a previous response. -- **properties_with_history** (`array[string]`, optional) List of properties to return with their history. Reduces max number of fees per request. -- **return_archived_only** (`boolean`, optional) Set to true to return only results that have been archived. - -## HubspotCrmApi.CreateFeeInCrm - -
- - -Create a fee in the CRM and receive the object's details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchFees - -
- - -Create a batch of fees in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchFeesInCrm - -
- - -Search for fees in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateBatchFees - -
- - -Update multiple fees by internal ID or unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveFeesBatch - -
- - -Archives a batch of fees by their IDs in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveFeeRecords - -
- - -Retrieve fee records by ID or custom property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_only** (`boolean`, optional) Set to true to return only archived fee records. False to return active records. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateGoalTargetsBatch - -
- - -Batch create multiple goal targets in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveGoalTargets - -
- - -Retrieve goal target records using record ID or custom value. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_only_archived_results** (`boolean`, optional) Set to true to return only the archived records. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetGoalTargetById - -
- - -Retrieve goal target object details using its ID. - -**Parameters** - -- **goal_target_id** (`string`, required) The unique identifier for the goal target object. Can be the internal object ID or a unique property value specified by `idProperty`. -- **archived_results** (`boolean`, optional) Set to true to return only archived results. Default is false. -- **associated_object_types** (`array[string]`, optional) Specify object types to retrieve associated IDs. If not present, they will be ignored. Use commas to separate multiple types. -- **properties_with_history** (`array[string]`, optional) Comma-separated properties to return with their value histories. Ignored if properties are absent on the object. -- **returned_properties** (`array[string]`, optional) List of properties to return. Ignored if not present on the object. -- **unique_property_name** (`string`, optional) The property name used as a unique identifier for the goal target object. - -## HubspotCrmApi.DeleteGoalTarget - -
- - -Deletes a goal target by its ID to the recycling bin. - -**Parameters** - -- **goal_target_id** (`string`, required) The unique identifier for the goal target to be deleted. Required to specify which target to move to the recycling bin. - -## HubspotCrmApi.UpdateGoalTarget - -
- - -Update properties of a HubSpot goal target. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **goal_target_id** (`string`, optional) The internal ID of the goal target to update. Use this to specify which goal target object to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of a unique property for the goal target object used for identification or update. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchGoalTargets - -
- - -Search for goal targets using specified criteria. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveGoalTargetsBatch - -
- - -Archive multiple goal targets using their IDs in one batch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateBatchGoalTargets - -
- - -Update multiple goal targets in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertGoalTargets - -
- - -Create or update goal target records in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetGoalTargets - -
- - -Retrieve a page of goal targets from HubSpot CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) List of object types to retrieve associated IDs for, ignored if non-existent. -- **paging_cursor_token** (`string`, optional) Token of the last successfully read item. Use it for fetching the next page of results. -- **properties_with_history** (`array[string]`, optional) Comma-separated properties to return with their history of previous values. Reduces the max number of goals retrievable in one request. -- **results_per_page_limit** (`integer`, optional) Specify the maximum number of results to display per page. -- **return_only_archived** (`boolean`, optional) Set to true to return only results that have been archived. -- **returned_properties** (`array[string]`, optional) Comma-separated list of properties to return in the response. Ignored if absent on requested objects. - -## HubspotCrmApi.CreateGoalTarget - -
- - -Create a goal target in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchOfInvoices - -
- - -Create a batch of invoices swiftly. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchInvoices - -
- - -Find invoices in the HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveInvoiceRecords - -
- - -Retrieve invoice records by ID or custom property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_only** (`boolean`, optional) Set to true to return only results that have been archived from HubSpot CRM. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetInvoiceById - -
- - -Retrieve invoice details by ID. - -**Parameters** - -- **invoice_identifier** (`string`, required) The unique identifier for the invoice. This can be the internal object ID or any unique property value as specified by the `id_property`. -- **associated_object_types** (`array[string]`, optional) List of object types to retrieve associated IDs for, separated by commas. Ignored if associations don't exist. -- **historical_properties** (`array[string]`, optional) Comma-separated list of properties to return along with their history of previous values. -- **requested_properties** (`array[string]`, optional) List of properties to be returned in the response for the specified invoice. Properties not present on the object will be ignored. -- **return_archived_only** (`boolean`, optional) Specify `True` to return only archived results. `False` returns both archived and non-archived results. -- **unique_identifier_property** (`string`, optional) The name of a property whose values uniquely identify the invoice object. Specify this to use a unique property other than the internal object ID. - -## HubspotCrmApi.DeleteInvoice - -
- - -Archive an invoice by moving it to the recycling bin. - -**Parameters** - -- **invoice_identifier** (`string`, required) The unique identifier for the invoice to be archived in HubSpot CRM. - -## HubspotCrmApi.UpdateInvoiceDetails - -
- - -Update invoice details in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **invoice_identifier** (`string`, optional) Unique identifier for the invoice, either the internal ID or specified unique property value, to update in HubSpot CRM. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) Name of the unique property for identifying the invoice object. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateInvoicesBatch - -
- - -Updates multiple invoices in the HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveInvoices - -
- - -Retrieve a page of invoices from HubSpot CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) A list of object types whose associated IDs should be retrieved. Ignored if associations do not exist. -- **maximum_results_per_page** (`integer`, optional) The maximum number of invoice results to display per page. -- **paging_cursor_token** (`string`, optional) The token for the last successfully read resource to retrieve the next page of results. -- **properties_with_history** (`array[string]`, optional) List properties to return with their historical values. Reduced invoice limit per request. -- **return_archived_only** (`boolean`, optional) Set to true to return only archived invoices; false for all invoices. -- **specified_properties** (`array[string]`, optional) List of invoice property names to return. Ignored if properties are not present on the objects. - -## HubspotCrmApi.CreateHubspotInvoice - -
- - -Create an invoice in HubSpot CRM and retrieve its details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertHubspotInvoices - -
- - -Create or update HubSpot invoice records in batch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveInvoicesBatch - -
- - -Archive a batch of invoices by their IDs. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveLeadRecords - -
- - -Retrieve lead records by ID or custom unique property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_only** (`boolean`, optional) Return only results that have been archived. Set to 'true' to filter by archived records. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchCrmLeads - -
- - -Search for leads in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetHubspotLeadsPage - -
- - -Retrieve a page of leads from HubSpot CRM. - -**Parameters** - -- **archived_leads_only** (`boolean`, optional) Return only leads that have been archived. Set to true to include only archived leads, false to exclude them. -- **associated_object_types** (`array[string]`, optional) Comma-separated list of object types to retrieve associated IDs for; ignored if non-existent. -- **lead_properties_to_return** (`array[string]`, optional) An array of the property names to include in the lead details response. Unavailable properties will be ignored. -- **paging_cursor_token** (`string`, optional) The cursor token to continue retrieving leads from where the last page ended. -- **properties_with_history** (`array[string]`, optional) List of properties whose historical values will be returned. Reduce max leads per request. -- **results_limit_per_page** (`integer`, optional) Defines the maximum number of leads to display per page. - -## HubspotCrmApi.CreateLeadHubspot - -
- - -Create a new lead in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateLeadsBatch - -
- - -Create a batch of new leads in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateLeadsBatch - -
- - -Update multiple leads in a batch by ID or unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetLeadById - -
- - -Retrieve a lead by its unique identifier. - -**Parameters** - -- **lead_identifier** (`string`, required) The unique identifier for the lead. Typically the internal ID, or a unique property value if specified by `idProperty`. -- **associated_object_types** (`array[string]`, optional) Comma-separated list of object types to retrieve associated IDs for, with non-existent associations ignored. -- **only_archived_results** (`boolean`, optional) Set to true to return only archived results. -- **return_properties_with_history** (`array[string]`, optional) A list of properties to return with their history of previous values. Comma-separated values should be used. Ignored if properties are not present. -- **returned_properties** (`array[string]`, optional) A list of properties to be returned in the response. Only specified properties present on the lead will be included. -- **unique_property_name** (`string`, optional) Specifies a unique property name to identify the lead. Overrides default ID. - -## HubspotCrmApi.ArchiveHubspotLead - -
- - -Archive a HubSpot CRM lead by identifier. - -**Parameters** - -- **lead_identifier** (`string`, required) The unique identifier for the lead to be archived in HubSpot CRM. - -## HubspotCrmApi.UpdateLeadDetails - -
- - -Update details of a specific lead in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **lead_identifier** (`string`, optional) The internal object ID or unique property value used to identify the lead in HubSpot CRM. Required for updating the lead details. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) Specify the name of a unique property to identify the lead, instead of using the internal ID. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveLeadsBatch - -
- - -Archive a batch of leads by ID in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetAssociationLimitRecords - -
- - -Fetch records near association limits between two objects. - -**Parameters** - -- **source_object_type_id** (`string`, required) Specifies the ID of the source object type to check association limits from. -- **to_object_type_id** (`string`, required) The ID of the target object type for the association limit query. - -## HubspotCrmApi.GetCustomAssociationLabelsLimits - -
- - -Get limits and usage for custom association labels in HubSpot CRM. - -**Parameters** - -- **source_object_type_id** (`string`, optional) The unique identifier for the source object type. It specifies which object type the association is coming from in the CRM. -- **target_object_type_id** (`string`, optional) The ID of the target object type to which the association label applies. Specify the target entity in HubSpot CRM. - -## HubspotCrmApi.FetchAssociationLimitObjects - -
- - -Fetch objects approaching association limits for a specified type. - -**Parameters** - -- **from_object_type_id** (`string`, required) Identifier for the 'from' object type whose records' association limits are being queried. - -## HubspotCrmApi.GetCustomObjectLimits - -
- - -Retrieve limits and usage for HubSpot custom object schemas. - -**Parameters** - -This tool does not take any parameters. - -## HubspotCrmApi.GetCustomPropertyLimits - -
- - -Retrieve limits and usage for custom properties per object. - -**Parameters** - -This tool does not take any parameters. - -## HubspotCrmApi.RetrieveLimitApproachingRecords - -
- - -Retrieve objects nearing or at HubSpot CRM association limits. - -**Parameters** - -This tool does not take any parameters. - -## HubspotCrmApi.GetHubspotCrmLimitsRecords - -
- - -Retrieve limits and usage for records in HubSpot CRM. - -**Parameters** - -This tool does not take any parameters. - -## HubspotCrmApi.PipelineLimitsUsage - -
- - -Retrieve limits and usage for HubSpot CRM pipelines. - -**Parameters** - -This tool does not take any parameters. - -## HubspotCrmApi.GetCalculatedPropertiesLimits - -
- - -Get limits and usage for calculated properties in HubSpot CRM. - -**Parameters** - -This tool does not take any parameters. - -## HubspotCrmApi.RetrieveLineItemsPage - -
- - -Retrieve a page of line items from HubSpot CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) List of object types to retrieve associated IDs. Nonexistent associations are ignored. -- **include_properties** (`array[string]`, optional) List the properties to include in the response, separated by commas. Ignored if not present. -- **max_results_per_page** (`integer`, optional) Sets the maximum number of line items to display per page. -- **pagination_cursor_after** (`string`, optional) The cursor token from the last page to retrieve the next set of results. -- **properties_with_history** (`array[string]`, optional) A list of property names to return with their value history. This reduces the max line items per request. -- **return_only_archived** (`boolean`, optional) Set to true to return only archived results. False returns non-archived results. - -## HubspotCrmApi.CreateHubspotLineItem - -
- - -Create a new line item in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetLineItemDetails - -
- - -Retrieve details of a line item by its ID. - -**Parameters** - -- **line_item_id** (`string`, required) The unique ID or property value of the line item to retrieve. This identifies the specific line item in HubSpot CRM. -- **associated_object_types** (`array[string]`, optional) Comma separated list of object types to retrieve associated IDs for. Non-existent associations are ignored. -- **only_return_archived** (`boolean`, optional) Set to True to return only archived results. -- **properties_with_history** (`array[string]`, optional) A list of properties to return with their value history. Ignored if not present on the object. -- **return_properties** (`array[string]`, optional) Comma-separated list of properties to return. Ignored if not present on the object. -- **unique_identifier_property** (`string`, optional) Specifies a unique property name to identify the line item in HubSpot CRM. - -## HubspotCrmApi.DeleteLineItem - -
- - -Moves a specified line item to the recycling bin. - -**Parameters** - -- **line_item_id** (`string`, required) The unique identifier of the line item to be archived or deleted. - -## HubspotCrmApi.UpdateLineItem - -
- - -Update properties of a CRM line item using its ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **line_item_id** (`string`, optional) The internal ID of the line item to update. This ID identifies the object to be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) Specify a property with unique values to identify the line item instead of using the internal ID. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertLineItemsBatch - -
- - -Batch create or update line items by unique ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateLineItemsBatch - -
- - -Create a batch of line items in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateLineItemsBatch - -
- - -Update multiple line items in CRM using internal IDs or unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchLineItems - -
- - -Search for line items in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveBatchLineItems - -
- - -Retrieve batch line item records by ID or custom property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **retrieve_only_archived** (`boolean`, optional) Set to true to retrieve only archived line items. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveLineItemsBatch - -
- - -Archive a batch of line items in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ListCrmEntries - -
- - -Retrieve a page of CRM listings with specified properties. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for, such as 'contacts' or 'deals'. Ignored if not existent. -- **include_only_archived_results** (`boolean`, optional) Set to true to return only archived results. False to exclude archived entries. -- **include_properties_with_history** (`array[string]`, optional) List the properties whose values along with their history should be returned. Reduces the number of listings per request. -- **maximum_results_per_page** (`integer`, optional) The maximum number of CRM listing results to display per page. This controls pagination size. -- **paging_cursor_token** (`string`, optional) The cursor token for fetching the next page of CRM listings. -- **properties_to_return** (`array[string]`, optional) Comma-separated list of properties to include in the response. Non-existent properties will be ignored. - -## HubspotCrmApi.CreateHubspotListing - -
- - -Create a HubSpot CRM listing and get the object details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveMultipleListings - -
- - -Archive multiple listings using their IDs. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateMultipleCrmListings - -
- - -Update multiple CRM listings using internal IDs or unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.FetchHubspotRecords - -
- - -Retrieve HubSpot CRM records by ID or custom property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_records_only** (`boolean`, optional) Set to true to return only HubSpot CRM records that have been archived. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateMultipleListings - -
- - -Create multiple listings in a single request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateOrUpdateBatchRecords - -
- - -Create or update CRM records in batches. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchHubspotListings - -
- - -Search listings in HubSpot CRM using filters and properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetListingDetails - -
- - -Retrieve details of a listing by its ID. - -**Parameters** - -- **unique_listing_id** (`string`, required) The unique identifier for the listing to be retrieved in HubSpot CRM. -- **properties_to_return** (`array[string]`, optional) A list of properties to be included in the response. Non-existent properties will be ignored. -- **properties_with_history** (`array[string]`, optional) An array of property names to return along with their historical values. -- **retrieve_associated_object_types** (`array[string]`, optional) List of object types to retrieve associated IDs for. Comma separated. Non-existent associations will be ignored. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived results. Use false to include non-archived as well. -- **unique_property_name** (`string`, optional) The name of a property with unique values to identify the object in HubSpot CRM. - -## HubspotCrmApi.MoveListingToRecycleBin - -
- - -Move a listing to the recycling bin by ID. - -**Parameters** - -- **listing_id** (`string`, required) The unique identifier of the listing to be moved to the recycling bin in HubSpot CRM. - -## HubspotCrmApi.HubspotUpdateListing - -
- - -Update specific details of a HubSpot listing. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **listing_id** (`string`, optional) The unique identifier of the listing to update in HubSpot. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of a unique property for this object, used for identification. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateListName - -
- - -Update the name of a CRM list in HubSpot. - -**Parameters** - -- **list_id** (`string`, required) The unique ILS ID of the list to update. -- **include_filter_branch_definition** (`boolean`, optional) Set to true to include filter branch definitions in the response list definition, or false to exclude them. -- **new_list_name** (`string`, optional) The new name for the CRM list. It must be globally unique relative to other public lists. - -## HubspotCrmApi.UpdateListMemberships - -
- - -Add or remove records from a manual or snapshot list. - -**Parameters** - -- **list_identifier** (`string`, required) The unique ILS ID of the MANUAL or SNAPSHOT list to update. -- **record_ids_to_add** (`array[string]`, required) An array of record IDs to be added to the specified list. Ensure these records are already created in the system. -- **record_ids_to_remove** (`array[string]`, required) An array of record IDs to remove from the list. Each ID should be a string. - -## HubspotCrmApi.FetchHubspotListById - -
- - -Fetch a single HubSpot CRM list using its ILS list ID. - -**Parameters** - -- **list_id** (`string`, required) The ILS ID of the HubSpot CRM list to fetch. -- **include_filter_definitions** (`boolean`, optional) Include filter branch definitions in the response. Defaults to false, meaning filter definitions are not included. - -## HubspotCrmApi.DeleteList - -
- - -Delete a specified CRM list by its ID. - -**Parameters** - -- **list_id_to_delete** (`string`, required) The ILS ID of the CRM list to delete. Ensure the ID is correct to avoid unintentional deletion. - -## HubspotCrmApi.RetrieveConversionDetails - -
- - -Retrieve conversion details for a specific list in HubSpot CRM. - -**Parameters** - -- **list_id** (`string`, required) The ID of the list for which you want to retrieve conversion details. - -## HubspotCrmApi.ScheduleListConversion - -
- - -Schedule or update the conversion of an active list to static. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **list_id** (`string`, optional) The ID of the list you want to schedule the conversion for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.DeleteScheduledConversion - -
- - -Delete a scheduled conversion for a specific list. - -**Parameters** - -- **list_id** (`string`, required) The ID of the list for which you want to cancel the scheduled conversion. - -## HubspotCrmApi.SearchHubspotLists - -
- - -Search HubSpot CRM lists by name or page through all lists. - -**Parameters** - -- **filter_by_list_ids** (`array[string]`, optional) An array of list IDs to filter search results. If not provided or empty, no filter is applied. -- **filter_by_processing_types** (`array[string]`, optional) List of processing types to filter results. Valid values: 'MANUAL', 'SNAPSHOT', 'DYNAMIC'. If omitted, no filtering by processing type is applied. -- **include_additional_list_properties** (`array[string]`, optional) Specify additional list properties to include in the response. Defaults fetch standard properties like `hs_list_size` and others. -- **number_of_lists_to_return** (`integer`, optional) The number of lists to include in the response. Defaults to 20 if not provided, with a maximum of 500. -- **search_query** (`string`, optional) The term to search for lists by name. Returns all lists if empty. -- **sort_order** (`string`, optional) Specify the order in which the lists should be sorted. Acceptable values could be 'asc' for ascending or 'desc' for descending order. -- **start_offset** (`integer`, optional) The starting point for pagination of list results. Defaults to `0` if not provided. - -## HubspotCrmApi.MoveListToFolder - -
- - -Move a CRM list to a specified folder. - -**Parameters** - -- **list_id** (`string`, required) The ID of the list you want to move. It should be a valid string representing the list in HubSpot CRM. -- **target_folder_id** (`string`, required) The ID of the folder to move the list to. Use '0' for the root folder. - -## HubspotCrmApi.AddToHubspotCrmList - -
- - -Add records to a specified HubSpot CRM list. - -**Parameters** - -- **list_id** (`string`, required) The ILS ID of the MANUAL or SNAPSHOT list to add records. -- **record_ids_to_add** (`array[string]`, required) An array of strings representing the IDs of the records to add to the list. - -## HubspotCrmApi.FetchListByName - -
- - -Fetch details of a list by its name and object type. - -**Parameters** - -- **list_name** (`string`, required) The name of the list to fetch. This is not case sensitive. -- **object_type_id** (`string`, required) The object type ID for the list. Example: `0-1` for `CONTACT`. -- **include_filters** (`boolean`, optional) Set to true to include filter branch definitions in the response. By default, filters are not included. - -## HubspotCrmApi.MoveFolderInHubspot - -
- - -Move a folder to a new parent in HubSpot CRM. - -**Parameters** - -- **folder_id_to_move** (`string`, required) The ID of the folder you want to move to a new location in HubSpot CRM. -- **target_parent_folder_id** (`string`, required) The ID of the target parent folder to which the current folder will be moved. - -## HubspotCrmApi.TranslateLegacyToNewListId - -
- - -Translate legacy list ID to the new list ID format. - -**Parameters** - -- **legacy_list_id** (`string`, optional) The legacy list ID from the lists v1 API to be translated to the new format. - -## HubspotCrmApi.TranslateLegacyListIdsBatch - -
- - -Translate legacy list IDs to new list IDs in batch. - -**Parameters** - -- **legacy_list_ids** (`array[string]`, required) An array of legacy list IDs to be translated to new IDs, supporting up to 10,000 strings. - -## HubspotCrmApi.RestoreDeletedList - -
- - -Restore a previously deleted HubSpot CRM list. - -**Parameters** - -- **list_id_to_restore** (`string`, required) The ILS ID of the list to restore. Use this to specify which deleted list to recover. - -## HubspotCrmApi.RenameCrmFolder - -
- - -Rename a folder in HubSpot CRM by its folder ID. - -**Parameters** - -- **folder_id** (`string`, required) The ID of the folder you want to rename in HubSpot CRM. -- **new_folder_name** (`string`, optional) The new name to assign to the folder. It should be a string representing the desired folder name in HubSpot CRM. - -## HubspotCrmApi.FetchListMembershipsOrdered - -
- - -Fetch list memberships ordered by addition date. - -**Parameters** - -- **list_id** (`string`, required) The unique ILS ID of the list to retrieve memberships from. -- **after_paging_offset_token** (`string`, optional) The token for the page that comes after the previously requested records, sorted in ascending order. Takes precedence over 'before'. -- **before_offset_token** (`string`, optional) The paging offset token to retrieve records preceding the specified page, sorted in descending order. -- **record_limit** (`integer`, optional) Specify the number of records to return, with a maximum limit of 250. - -## HubspotCrmApi.AddAllFromSourceListToDestinationList - -
- - -Add records from a source list to a destination list in HubSpot. - -**Parameters** - -- **destination_list_id** (`string`, required) The ILS ID of the MANUAL or SNAPSHOT destination list to which the source list records are added. -- **source_list_id** (`string`, required) The ILS ID of the source list from which records are added to the destination list. - -## HubspotCrmApi.GetRecordListMemberships - -
- - -Retrieve lists a CRM record is a member of. - -**Parameters** - -- **object_type_id** (`string`, required) Specify the object type ID of the record to retrieve its list memberships. -- **record_id** (`string`, required) The unique identifier of the CRM record whose list memberships you want to retrieve. - -## HubspotCrmApi.DeleteCrmFolder - -
- - -Deletes a specified CRM folder by ID. - -**Parameters** - -- **folder_id_to_delete** (`string`, required) The ID of the folder to be deleted in HubSpot CRM. - -## HubspotCrmApi.RetrieveFoldersWithChildNodes - -
- - -Retrieve folders and include all child folders recursively. - -**Parameters** - -- **target_folder_id** (`string`, optional) The ID of the folder to retrieve and include all child nodes recursively from HubSpot CRM. - -## HubspotCrmApi.CreateFolderHubspotCrm - -
- - -Creates a folder in HubSpot CRM with specified details. - -**Parameters** - -- **folder_name** (`string`, required) The name of the folder to be created in HubSpot CRM. -- **parent_folder_id** (`string`, optional) The ID of the folder where the new folder will be created. Defaults to root folder (ID: 0) if not specified. - -## HubspotCrmApi.RemoveRecordsFromList - -
- - -Remove specified records from a HubSpot CRM list. - -**Parameters** - -- **list_id** (`string`, required) The ILS ID of the MANUAL or SNAPSHOT list from which records will be removed. -- **record_ids_to_remove** (`array[string]`, required) List of record IDs to remove from the HubSpot CRM list. - -## HubspotCrmApi.FetchHubspotListMemberships - -
- - -Retrieve memberships of a HubSpot list by order of record ID. - -**Parameters** - -- **list_identifier** (`string`, required) The ILS ID of the HubSpot list to retrieve memberships for. -- **before_offset_token** (`string`, optional) The paging offset token for the page before the previously requested records, used to sort records in descending order. -- **number_of_records_to_return** (`integer`, optional) Defines how many records to retrieve in the response, with a maximum value of 250. -- **paging_offset_after_token** (`string`, optional) The paging offset token for the page that comes after the previously requested records. If provided, records will follow this offset, sorted in ascending order. Takes precedence over the before offset. - -## HubspotCrmApi.RemoveAllListMemberships - -
- - -Remove all records from a CRM list without deleting the list. - -**Parameters** - -- **list_id** (`string`, required) The ILS ID of a MANUAL or SNAPSHOT list in HubSpot CRM. Required for removing all memberships. - -## HubspotCrmApi.GetMeetingDetailsById - -
- - -Retrieve detailed information about a specific meeting. - -**Parameters** - -- **meeting_identifier** (`string`, required) Unique identifier for the meeting you want to retrieve details for. -- **only_archived** (`boolean`, optional) Set to true to return only archived meeting results. -- **properties_with_history** (`array[string]`, optional) Comma separated list of properties to return with history of values. Ignored if not present on the object. -- **retrieve_associated_object_ids** (`array[string]`, optional) List of object types to fetch associated IDs for. Nonexistent associations will be ignored. -- **return_properties** (`array[string]`, optional) A list of properties to be returned in the response. If any specified properties are not present, they will be ignored. -- **unique_property_name** (`string`, optional) The property name whose values uniquely identify the meeting object. - -## HubspotCrmApi.DeleteMeeting - -
- - -Move a meeting to the recycling bin using its ID. - -**Parameters** - -- **meeting_id** (`string`, required) The unique ID of the meeting to be moved to the recycling bin. This is required to identify the specific meeting. - -## HubspotCrmApi.UpdateHubspotMeeting - -
- - -Update specific properties of a HubSpot meeting. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **meeting_id** (`string`, optional) The internal ID of the meeting or a property name with unique values for identification. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of the unique property for identifying the meeting. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateMeetingsBatch - -
- - -Update a batch of meetings in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveMeetingRecords - -
- - -Retrieve meeting records by ID or unique property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_only_archived_results** (`boolean`, optional) Set to true to retrieve only archived meeting records. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveMeetingsBatch - -
- - -Archive multiple meetings by IDs in batch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetMeetingsPage - -
- - -Retrieve a page of meetings data from HubSpot CRM. - -**Parameters** - -- **maximum_results_per_page** (`integer`, optional) The maximum number of meeting results to display per page. Specify an integer value. -- **paging_cursor_token** (`string`, optional) The token indicating the last successfully read resource, used for paging through results. -- **properties** (`array[string]`, optional) A list of property names to return in the response. If any are not present, they will be ignored. -- **properties_with_history** (`array[string]`, optional) List of properties to retrieve with their change history. Reduces max meetings returned per request. -- **retrieve_associated_object_ids** (`array[string]`, optional) List object types to retrieve associated IDs for; ignored if associations don't exist. -- **return_archived_results** (`boolean`, optional) Set to true to return only archived results; false to include active results. - -## HubspotCrmApi.CreateHubspotMeeting - -
- - -Create a meeting in HubSpot and get its details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertMeetings - -
- - -Create or update meeting records in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchMeetings - -
- - -Create a batch of meetings in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchHubspotMeetings - -
- - -Search for meetings in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchHubspotNotes - -
- - -Search for notes in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveNotesPage - -
- - -Retrieve a page of notes from HubSpot CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) List of object types to retrieve associated IDs for. Non-existent associations will be ignored. -- **paging_cursor_token** (`string`, optional) Token for paging to retrieve the next set of notes. Use the token from `paging.next.after` in the previous response. -- **properties_with_history** (`array[string]`, optional) List of properties to return with their historical values. Reduces the maximum number of notes per request. -- **results_per_page** (`integer`, optional) The maximum number of note results to display per page. Specify an integer value. -- **return_only_archived_notes** (`boolean`, optional) Set to True to return only archived notes; otherwise, non-archived notes are returned. -- **returned_properties_list** (`array[string]`, optional) List of note properties to include in the response. Specify as an array of strings. - -## HubspotCrmApi.CreateNoteInHubspot - -
- - -Create a note in HubSpot CRM and return its details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveNotesRecords - -
- - -Retrieve notes records by ID or custom property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_only** (`boolean`, optional) Set to true to return only archived records. Use false to include non-archived records. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertNotesHubspot - -
- - -Create or update notes in HubSpot CRM by unique property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveNotesBatch - -
- - -Archive a batch of notes by their IDs. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.BatchUpdateNotes - -
- - -Update multiple notes in HubSpot CRM by ID or property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchOfNotes - -
- - -Create multiple notes in a CRM batch operation. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetNoteDetails - -
- - -Retrieve details of a note by its unique ID. - -**Parameters** - -- **note_id** (`string`, required) The unique identifier of the note to retrieve details for. -- **associated_object_types** (`array[string]`, optional) List the object types to retrieve associated IDs for, separated by commas. Invalid types are ignored. -- **properties_to_return** (`array[string]`, optional) A list of property names to return for the note. Non-existing properties will be ignored. -- **return_archived_results_only** (`boolean`, optional) Set to true to return only archived notes. -- **return_properties_with_history** (`array[string]`, optional) List properties to return with their history of previous values. Ignored if not present on the object. -- **unique_property_name** (`string`, optional) Specify the unique property name to identify the object in HubSpot CRM. - -## HubspotCrmApi.DeleteNoteHubspot - -
- - -Move a HubSpot note to the recycling bin. - -**Parameters** - -- **note_id** (`string`, required) The unique identifier of the note to be archived in HubSpot CRM. - -## HubspotCrmApi.UpdateHubspotNote - -
- - -Update a HubSpot note with new property values. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **note_identifier** (`string`, optional) The ID or unique property value of the note to update. Use `noteId` for internal ID or specify a unique property via `idProperty`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of a property with unique values for this object, used to identify the note. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.FetchEnablementData - -
- - -Fetch enablement data from HubSpot CRM. - -**Parameters** - -This tool does not take any parameters. - -## HubspotCrmApi.EnableObjectTypeInHubspot - -
- - -Enable an object type in HubSpot CRM via its ID. - -**Parameters** - -- **object_type_id** (`string`, required) The unique identifier for the object type in HubSpot CRM that needs to be enabled. - -## HubspotCrmApi.SearchOrderRecords - -
- - -Search for order records in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveHubspotOrders - -
- - -Retrieve order records from HubSpot CRM by ID or custom property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_only_archived_orders** (`boolean`, optional) Set to True to return only archived order records from HubSpot CRM. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetOrderDetails - -
- - -Retrieve details of an order using its ID. - -**Parameters** - -- **order_identifier** (`string`, required) The unique identifier for the order. This can be the internal object ID or a unique property value specified by the idProperty. -- **associated_object_types** (`array[string]`, optional) Comma separated list of object types to retrieve associated IDs. Non-existent associations are ignored. -- **properties_with_history** (`array[string]`, optional) A list of properties to return with their history of previous values. If specified properties are not present, they will be ignored. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived results for the specified order. -- **return_properties** (`array[string]`, optional) List the properties to retrieve for the order. Any nonexistent properties will be ignored. -- **unique_property_name** (`string`, optional) Specify the name of a unique property to identify the order. Overrides the default ID. - -## HubspotCrmApi.DeleteOrderById - -
- - -Deletes an order by its ID from the CRM. - -**Parameters** - -- **order_id** (`string`, required) The unique ID of the order to delete, moving it to the recycling bin. - -## HubspotCrmApi.UpdateOrderDetails - -
- - -Update specific details of an order using its ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **order_id** (`string`, optional) The internal ID of the order to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) Specify the name of a unique property to identify the order object instead of using the order ID. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertOrdersInHubspot - -
- - -Create or update orders in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchOrders - -
- - -Create a batch of orders in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateHubspotOrdersBatch - -
- - -Update multiple HubSpot CRM orders in a batch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetOrdersPage - -
- - -Retrieve a page of orders from CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for; ignored if not existing. -- **only_return_archived_orders** (`boolean`, optional) Set to true to return only archived orders. False returns both archived and unarchived orders. -- **order_properties_to_return** (`array[string]`, optional) A list of properties to be included in the order response. Specify as a comma-separated string. Ignored if not present on the objects. -- **paging_cursor_token** (`string`, optional) Token for pagination, representing the last successfully read resource for fetching the next page of results. -- **properties_with_history** (`array[string]`, optional) A list of order properties to return with their history of previous values. Reduces maximum results per request. -- **results_per_page** (`integer`, optional) The maximum number of orders to display per page. This controls the pagination size. - -## HubspotCrmApi.CreateHubspotOrder - -
- - -Create a new order in HubSpot CRM with specified properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveOrdersBatch - -
- - -Archive a batch of orders by ID in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdatePartnerClientsBatch - -
- - -Update multiple partner clients in a batch. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetPartnerClients - -
- - -Retrieve partner clients from HubSpot CRM. - -**Parameters** - -- **client_properties** (`array[string]`, optional) A list of specific client properties to retrieve, such as 'name', 'email', etc. -- **include_archived** (`boolean`, optional) Set to true to include archived partner clients, false to exclude them. -- **include_associations** (`array[string]`, optional) List of associations to include in the response. Specify names of associations as strings. -- **pagination_cursor** (`string`, optional) A string token to retrieve the next page of partner clients, obtained from a previous response. -- **properties_with_history** (`array[string]`, optional) List property names to retrieve along with their historical versions. Each property should be specified as a string. -- **retrieval_limit** (`integer`, optional) Specifies the maximum number of partner clients to retrieve from the HubSpot CRM in a single call. - -## HubspotCrmApi.BatchReadPartnerClients - -
- - -Fetch batch details of partner clients in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **include_archived** (`boolean`, optional) Set to true to include archived partner clients in the batch results. Default is false. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchPartnerClients - -
- - -Perform a search for partner clients in CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetPartnerClientInfo - -
- - -Retrieve information for a specific partner client. - -**Parameters** - -- **partner_client_id** (`string`, required) The unique identifier for the partner client to retrieve details from HubSpot CRM. -- **associated_objects** (`array[string]`, optional) A list of associated object types to include, such as 'contacts' or 'deals'. -- **include_archived_data** (`boolean`, optional) Boolean to specify if archived partner client data should be included in the response. Set to true to include archived data. -- **optional_properties** (`array[string]`, optional) An array of specific properties to retrieve for the partner client. Leave empty to obtain all available properties. -- **properties_with_history** (`array[string]`, optional) Specify the list of properties to retrieve, including their historical values. -- **property_id** (`string`, optional) Specify which property should be used as the primary identifier for the partner client. Useful for custom identification schemes. - -## HubspotCrmApi.UpdatePartnerClient - -
- - -Update details of a partner client in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **partner_client_id** (`string`, optional) The unique identifier for the partner client to be updated in HubSpot CRM. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **identifier_property** (`string`, optional) Specify the property name used to identify the partner client for update operations. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.AssociatePartnerClientWithObject - -
- - -Associate a partner client with another CRM object. - -**Parameters** - -- **association_type** (`string`, required) Specifies the type of association (e.g., contact, company, deal) between the partner client and the object. -- **partner_client_id** (`string`, required) The unique identifier for the partner client you wish to associate with another object. This should be a string representing the partner client's ID in the CRM system. -- **target_object_id** (`string`, required) The unique identifier of the CRM object you are associating with the partner client. This could be any valid object ID such as that of a contact, company, or deal. -- **target_object_type** (`string`, required) The type of the object to associate with the partner client (e.g., contact, company, deal). - -## HubspotCrmApi.RemovePartnerClientAssociation - -
- - -Remove an association between two partner clients in HubSpot CRM. - -**Parameters** - -- **association_type** (`string`, required) The type of association to be removed between the partner client and the object. This defines the nature of their relationship. -- **partner_client_id** (`string`, required) The unique identifier for the partner client to be disassociated. This should be a string that identifies the specific partner client in the HubSpot CRM. -- **target_object_id** (`string`, required) The unique identifier of the object associated with the target partner client. -- **target_object_type** (`string`, required) Specify the type of the object you are dissociating from the partner client, such as 'contacts' or 'companies'. - -## HubspotCrmApi.ListPartnerClientAssociations - -
- - -Retrieve associations of a partner client by type. - -**Parameters** - -- **partner_client_id** (`string`, required) The unique identifier for the partner client whose associations are to be retrieved. It is required and must be a valid string. -- **target_object_type** (`string`, required) The type of object to which the partner client is associated. Specify using a string value representing the object type, such as 'contact' or 'deal'. -- **include_family_associations** (`boolean`, optional) Indicate whether to include family associations in the response. Set to true to include them. -- **max_results_per_page** (`integer`, optional) Specify the maximum number of results to display per page. Use an integer value. -- **paging_cursor_token** (`string`, optional) The token used for pagination to fetch the next set of results. - -## HubspotCrmApi.GetPartnerServiceDetails - -
- - -Retrieve details of a partner service by ID. - -**Parameters** - -- **partner_service_id** (`string`, required) The unique ID of the partner service object to retrieve. This can be the internal object ID or a unique property value as specified by the `idProperty`. -- **properties_to_return** (`array[string]`, optional) A list of property names to return for the partner service. Any missing properties will be ignored. -- **properties_with_history** (`array[string]`, optional) List of properties whose historical values should be returned for the partner service object. -- **retrieve_associated_ids** (`array[string]`, optional) Comma-separated list of object types to retrieve associated IDs. Non-existent associations are ignored. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived results, false otherwise. -- **unique_property_name** (`string`, optional) The name of a unique property to identify the object. - -## HubspotCrmApi.UpdatePartnerService - -
- - -Partially update a partner service object in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **partner_service_id** (`string`, optional) The internal object ID of the partner service to update. Use this to specify the object you want to partially update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) Specify the name of a unique property for the partner service object to identify it. This is used instead of the default internal ID. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrievePartnerServicesRecords - -
- - -Retrieve partner services records by ID or unique property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_only_archived_records** (`boolean`, optional) Set to true to return only the archived records. False will include non-archived records. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchPartnerServicesHubspot - -
- - -Search for partner services in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetPartnerServices - -
- - -Retrieve a page of partner services. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for. Ignored if associations do not exist. -- **maximum_results_per_page** (`integer`, optional) The maximum number of results to display per page. Must be an integer value. -- **paging_cursor_after** (`string`, optional) The cursor token to retrieve the next page of results in a paged response. -- **properties_with_history** (`array[string]`, optional) List of property names to fetch with their history. Reduces max number of results per request. -- **return_only_archived** (`boolean`, optional) Set to true to return only results that have been archived. -- **return_properties** (`array[string]`, optional) List of properties to return in the response. Ignored if not present on requested objects. - -## HubspotCrmApi.AssociatePartnerService - -
- - -Associate a partner service with another CRM object. - -**Parameters** - -- **association_type** (`string`, required) Specifies the type of association to create between the partner service and another object (e.g., "owner", "affiliate"). -- **partner_service_id** (`string`, required) The identifier for the partner service to associate with another object. This should be a valid string representing the unique ID of the partner service in the CRM. -- **target_object_id** (`string`, required) The ID of the target object you want to associate with the partner service. This should be a valid object ID in HubSpot CRM. -- **target_object_type** (`string`, required) The type of CRM object to associate with the partner service, e.g., 'contacts', 'companies', or 'deals'. - -## HubspotCrmApi.RemovePartnerServiceAssociation - -
- - -Remove an association between two partner services. - -**Parameters** - -- **association_type** (`string`, required) Specifies the type of association to remove between the partner services. This is a string value that defines how the services are linked. -- **partner_service_id** (`string`, required) The unique identifier for the partner service. It specifies which partner service's association is to be removed. -- **target_object_id** (`string`, required) The unique identifier of the object to be disassociated from the partner service. This is required to specify which object is being unlinked. -- **target_object_type** (`string`, required) The type of the object to which the partner service is associated. Specify the object category, such as 'contact', 'company', etc. - -## HubspotCrmApi.UpdatePartnerServicesBatch - -
- - -Update multiple partner services in CRM by ID or unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ListPartnerServiceAssociations - -
- - -Retrieve associations of a partner service by type. - -**Parameters** - -- **partner_service_id** (`string`, required) The unique identifier of the partner service to retrieve associations for. This ID is required. -- **target_object_type** (`string`, required) The type of object to filter associations by, such as contacts, companies, etc. -- **include_associated_fields** (`boolean`, optional) Set to true to include associated fields in the response. -- **max_results_per_page** (`integer`, optional) Specify the maximum number of results to display per page. This determines the page size for the response. -- **paging_cursor_token** (`string`, optional) The token to continue paginated results from the last read resource. - -## HubspotCrmApi.ReadBatchPayments - -
- - -Retrieve a batch of payments from CRM by IDs or unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **only_return_archived_results** (`boolean`, optional) Return only archived results if set to true. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetPaymentDetails - -
- - -Retrieve details of a payment object by ID. - -**Parameters** - -- **payment_identifier** (`string`, required) The unique identifier for the payment object. This can be the internal object ID or a unique property value. -- **properties_with_history** (`array[string]`, optional) List of properties to return with their historical values. Unavailable properties will be ignored. -- **requested_properties** (`array[string]`, optional) A list of properties to return in the response. Non-existent properties will be ignored. -- **retrieve_associated_object_ids** (`array[string]`, optional) A list of object types to retrieve associated IDs for this payment. Non-existent associations are ignored. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived results in the response. -- **unique_property_name** (`string`, optional) The name of a property uniquely identifying the payment object type. Used to specify a unique property other than the internal ID. - -## HubspotCrmApi.GetPaymentRecords - -
- - -Retrieve a page of payment records from HubSpot CRM. - -**Parameters** - -- **archived_results_only** (`boolean`, optional) Indicate if only archived payment records should be returned. Set to true to filter for archived records only. -- **associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for. If specified associations do not exist, they will be ignored. -- **paging_token_after** (`string`, optional) The cursor token from the last read resource to fetch the next page of results. -- **payment_properties_to_include** (`array[string]`, optional) A list of property names to include in the response. Specified properties not present on the requested objects will be ignored. -- **properties_with_history** (`array[string]`, optional) A list of property names to return with their historical values. Ignored if not present on objects. -- **results_per_page_limit** (`integer`, optional) Maximum number of payment records to display per page. - -## HubspotCrmApi.SearchHubspotPayments - -
- - -Search for payments in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetPipelineStageAudit - -
- - -Retrieve audit logs for a specific pipeline stage. - -**Parameters** - -- **object_type** (`string`, required) The CRM object type to query for the pipeline stage, such as 'deals', 'tickets', or 'contacts'. -- **pipeline_id** (`string`, required) The unique identifier for the pipeline to retrieve stage audit logs from. -- **stage_identifier** (`string`, required) The unique identifier of the pipeline stage to audit. Use this to specify which stage's mutations you want to retrieve. - -## HubspotCrmApi.GetPipelineById - -
- - -Retrieve a single CRM pipeline by its unique ID. - -**Parameters** - -- **object_type_in_crm** (`string`, required) Specify the type of CRM object, such as 'deals' or 'tickets', whose pipeline you want to retrieve. -- **pipeline_unique_id** (`string`, required) The unique identifier for the CRM pipeline to retrieve details. This value is required to fetch the specific pipeline information. - -## HubspotCrmApi.ReplacePipelineHubspot - -
- - -Replace a specific pipeline in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **object_type** (`string`, optional) Specify the object type for the pipeline, such as 'deals' or 'tickets'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **pipeline_identifier** (`string`, optional) The unique identifier of the pipeline to replace in HubSpot CRM. This is required to specify which pipeline is being modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **validate_references_before_deletion** (`boolean`, optional) Set to true to validate all references before deleting the pipeline. Only used when mode is 'execute'. -- **validate_deal_stage_usages_before_delete** (`boolean`, optional) Set to true to validate deal stage usages before deleting a pipeline; false to proceed without validation. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.DeletePipeline - -
- - -Delete a specific pipeline in the CRM. - -**Parameters** - -- **pipeline_id** (`string`, required) The unique identifier of the pipeline to be deleted. Required for specifying which pipeline to remove. -- **pipeline_object_type** (`string`, required) Specify the type of object for the pipeline, such as 'deals' or 'tickets'. -- **validate_deal_stage_usages_before_deletion** (`boolean`, optional) Set to true to validate deal stage usages before deleting a pipeline, preventing deletion if usages are found. -- **validate_references_before_delete** (`boolean`, optional) Set to true to validate references before deleting the pipeline. This prevents accidental deletion when references are present. - -## HubspotCrmApi.UpdatePipelineInCrm - -
- - -Partially update a pipeline in the CRM. - -**Parameters** - -- **crm_object_type** (`string`, required) Specify the type of CRM object (e.g., deals, tickets) to update the pipeline for. -- **pipeline_identifier** (`string`, required) The unique identifier for the pipeline to be updated. This is required to specify which pipeline to modify. -- **is_pipeline_archived** (`boolean`, optional) Set to true if the pipeline is currently archived and you intend to restore it. Use only for restoration calls. -- **pipeline_display_order** (`integer`, optional) The display order number to determine the position of the pipeline in the CRM. Pipelines with the same display order are sorted alphabetically by label. -- **pipeline_label** (`string`, optional) A unique label to organize and identify the pipeline within HubSpot's UI. -- **validate_deal_stage_usages_before_delete** (`boolean`, optional) Indicate if deal stage usages should be validated before deletion. A boolean value is expected. -- **validate_references_before_deletion** (`boolean`, optional) Set to true to validate references before deletion. - -## HubspotCrmApi.GetPipelineStages - -
- - -Retrieve all stages of a specified pipeline. - -**Parameters** - -- **object_type** (`string`, required) Specify the type of CRM object, such as deals or tickets, associated with the pipeline. -- **pipeline_id** (`string`, required) The ID of the pipeline to retrieve stages for. Must be a valid pipeline ID in HubSpot CRM. - -## HubspotCrmApi.CreatePipelineStage - -
- - -Create a stage in a specified pipeline. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **crm_object_type** (`string`, optional) Specify the CRM object type, such as deals or tickets, for the pipeline. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **pipeline_id** (`string`, optional) The unique identifier of the pipeline where the new stage will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetPipelineAuditLog - -
- - -Retrieves the audit log for a specified CRM pipeline. - -**Parameters** - -- **object_type** (`string`, required) The type of CRM object for which audit logs are being retrieved, such as 'deals' or 'contacts'. -- **pipeline_id** (`string`, required) The unique identifier for the pipeline to fetch the audit log from. This ID is used to target a specific pipeline within HubSpot CRM. - -## HubspotCrmApi.GetAllPipelines - -
- - -Retrieve all pipelines for a specified object type. - -**Parameters** - -- **object_type** (`string`, required) Specify the CRM object type (e.g., contacts, deals) to retrieve pipelines for. - -## HubspotCrmApi.CreateCrmPipeline - -
- - -Create a new CRM pipeline in HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **pipeline_object_type** (`string`, optional) Specify the type of CRM object for the pipeline, such as 'deals' or 'tickets'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetPipelineStageById - -
- - -Retrieve a specific pipeline stage by its ID. - -**Parameters** - -- **object_type** (`string`, required) The type of CRM object, such as 'deals' or 'tickets', to access the pipeline stage for. -- **pipeline_id** (`string`, required) The unique identifier for the pipeline in HubSpot CRM. Use this ID to specify which pipeline the stage belongs to. -- **stage_id** (`string`, required) Unique ID of the pipeline stage to retrieve details from HubSpot CRM. - -## HubspotCrmApi.ReplacePipelineStageProperties - -
- - -Replace and update a pipeline stage in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **crm_object_type** (`string`, optional) Specifies the CRM object type like 'deals' or 'contacts' to identify the pipeline stage being replaced. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **pipeline_id** (`string`, optional) The unique identifier for the pipeline whose stage properties are to be replaced. This must match the ID used in HubSpot CRM. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **pipeline_stage_id** (`string`, optional) The unique identifier for the pipeline stage to be replaced. This is required to specify which stage's properties will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.DeletePipelineStage - -
- - -Deletes a pipeline stage from HubSpot CRM. - -**Parameters** - -- **object_type** (`string`, required) Specify the type of CRM object (e.g., deals, tickets) for which the pipeline stage is being deleted. -- **pipeline_id** (`string`, required) The unique ID of the pipeline containing the stage to be deleted. -- **stage_identifier** (`string`, required) The unique identifier of the pipeline stage to be deleted. - -## HubspotCrmApi.UpdatePipelineStage - -
- - -Update a stage in a CRM pipeline. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **pipeline_object_type** (`string`, optional) The type of CRM object in the pipeline, such as 'deals' or 'tickets'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **pipeline_id** (`string`, optional) A unique identifier for the pipeline to be updated. This is necessary to specify which pipeline contains the stage you want to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **stage_id** (`string`, optional) The unique identifier of the stage to be updated within the pipeline. This is required to specify which stage's details need modification. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetMultiplePostalMailObjects - -
- - -Retrieve multiple postal mail objects by IDs or unique values. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **include_archived** (`boolean`, optional) Set to true to include archived postal mail objects in the results. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchivePostalMailBatch - -
- - -Archive a batch of postal mail objects using their IDs. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetPostalMailRecords - -
- - -Retrieve postal mail records from the CRM. - -**Parameters** - -- **associated_objects** (`array[string]`, optional) A list of object types to retrieve associations for, such as contacts or companies. -- **include_archived_records** (`boolean`, optional) Include archived postal mail records if true; exclude them if false. -- **include_properties_history** (`array[string]`, optional) Specify property names to include their history in the records. Use an array of strings. -- **max_records** (`integer`, optional) The maximum number of postal mail records to return. Must be an integer. -- **pagination_cursor_after** (`string`, optional) A cursor for pagination. Use it to retrieve the next set of postal mail records after a specific point. -- **retrieve_specific_properties** (`array[string]`, optional) List of specific properties to include in the response. Provide property names as strings. - -## HubspotCrmApi.CreatePostalMailObject - -
- - -Create a postal mail object in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreatePostalMailBatch - -
- - -Create a batch of postal mail objects in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertPostalMailInHubspot - -
- - -Create or update postal mail records in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetPostalMailById - -
- - -Retrieve details of a postal mail record by ID from HubSpot CRM. - -**Parameters** - -- **postal_mail_id** (`string`, required) The unique identifier for the postal mail record to retrieve details from HubSpot CRM. -- **identify_by_id_property** (`string`, optional) Specifies which property will be used as the primary identifier. Accepts a string that represents the property within the postal mail object that should be used to identify and retrieve details. -- **include_archived** (`boolean`, optional) Set to true to include archived postal mail records in the response. -- **properties_with_history** (`array[string]`, optional) A list of property names for which history should be returned. Accepts an array of strings. -- **related_objects_associations** (`array[string]`, optional) List of string identifiers representing related objects to retrieve alongside the postal mail record. -- **specified_properties** (`array[string]`, optional) A list of specific postal mail properties to retrieve. Leave empty to get all properties. - -## HubspotCrmApi.ArchivePostalMail - -
- - -Archive a postal mail object in HubSpot CRM. - -**Parameters** - -- **postal_mail_id** (`string`, required) The unique identifier of the postal mail object to be archived. - -## HubspotCrmApi.UpdatePostalMailRecord - -
- - -Update a postal mail record in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **postal_mail_id** (`string`, optional) A unique identifier for the postal mail record to be updated in HubSpot CRM. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **property_identifier** (`string`, optional) Specify the property key of the postal mail record to identify which field to update. This is typically the name of the field in the CRM record. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateMultiplePostalMails - -
- - -Update multiple postal mail records at once in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchPostalMailHubspot - -
- - -Search for postal mail objects in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveProductsBatch - -
- - -Archive a batch of products by ID in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetProductsPage - -
- - -Fetch a page of products from HubSpot CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) Provide a comma-separated list of object types to retrieve associated IDs for. Ignored if not existing. -- **include_properties_with_history** (`array[string]`, optional) Comma separated list of product properties to include along with their history. Reduces maximum results per request if used. -- **maximum_results_per_page** (`integer`, optional) The maximum number of results to display per page. -- **paging_cursor_token** (`string`, optional) The cursor token for the last read resource, used for paged responses. -- **product_properties_to_return** (`array[string]`, optional) Comma-separated properties to include in the response. Any non-existent properties for the requested objects will be ignored. -- **return_archived_only** (`boolean`, optional) Set to true to return only results that have been archived. - -## HubspotCrmApi.CreateProductInHubspot - -
- - -Create a new product in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchHubspotProducts - -
- - -Search for products in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveHubspotProductRecords - -
- - -Retrieve HubSpot product records by ID or unique property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **only_archived** (`boolean`, optional) Set to true to retrieve only archived product records. False returns unarchived records. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchOfProducts - -
- - -Create a batch of products in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertHubspotProductsBatch - -
- - -Batch create or update HubSpot product records. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetProductDetailsById - -
- - -Retrieve product details using a product ID. - -**Parameters** - -- **product_id** (`string`, required) A unique identifier for the product. Can be the internal ID or any unique property as specified by `idProperty`. -- **properties_to_return** (`array[string]`, optional) A list of product properties to include in the response. Any missing properties will be ignored. -- **properties_with_history** (`array[string]`, optional) List properties to return with their history of past values, separated by commas. Ignored if not present in object. -- **retrieve_associated_object_ids** (`array[string]`, optional) A list of object types to retrieve associated IDs for. Any non-existent associations will be ignored. -- **return_archived_only** (`boolean`, optional) Set to true to return only archived results. If false, only non-archived results are returned. -- **unique_property_name** (`string`, optional) Specify the property name with unique values for the product object, instead of default productId. - -## HubspotCrmApi.RemoveProduct - -
- - -Archive a product by moving it to the recycling bin. - -**Parameters** - -- **product_id** (`string`, required) The unique identifier of the product to be archived in HubSpot CRM. - -## HubspotCrmApi.UpdateProductInfo - -
- - -Partially update product information in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **product_id** (`string`, optional) The internal object ID of the product to be updated. This identifies the specific product in HubSpot CRM for the update operation. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The unique property name used to identify the product. It should be a string representing a property with unique values. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateHubspotProductsBatch - -
- - -Update a batch of HubSpot products by ID or unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveCrmProperties - -
- - -Archive a list of properties in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **crm_object_type** (`string`, optional) Specify the type of CRM object (e.g., 'contacts', 'companies') for which the properties should be archived. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ReadPropertyGroup - -
- - -Retrieve details of a property group by its name. - -**Parameters** - -- **object_type** (`string`, required) Specify the type of CRM object, such as 'contacts' or 'deals'. -- **property_group_name** (`string`, required) The name of the property group to be retrieved. - -## HubspotCrmApi.DeletePropertyGroup - -
- - -Delete a property group and move it to recycling bin. - -**Parameters** - -- **crm_object_type** (`string`, required) Specify the type of CRM object, such as 'contacts', 'companies', etc. -- **property_group_name** (`string`, required) The name of the property group to delete. This identifies which group to move to the recycling bin in HubSpot CRM. - -## HubspotCrmApi.UpdatePropertyGroup - -
- - -Update fields in a specified property group. - -**Parameters** - -- **object_type** (`string`, required) Specifies the type of object in HubSpot CRM (e.g., contacts, companies). -- **property_group_name** (`string`, required) The unique name of the property group to be updated in HubSpot CRM. -- **property_group_display_order** (`integer`, optional) Set the display order of the property group. Use positive integers for ordering, or -1 to display after positive values. -- **property_group_label** (`string`, optional) A human-readable label for the property group in HubSpot. - -## HubspotCrmApi.ReadProperty - -
- - -Retrieve CRM property details by name and type. - -**Parameters** - -- **crm_object_type** (`string`, required) Specify the CRM object type, such as 'contact' or 'company', to retrieve the property for. -- **property_name** (`string`, required) The unique name of the property to retrieve. This should match the property name in HubSpot CRM. -- **property_specifications** (`string`, optional) Specify the details or attributes of the property to retrieve. Use a comma-separated list for multiple specifications. -- **return_archived_only** (`boolean`, optional) Set to True to return only archived property results. - -## HubspotCrmApi.DeletePropertyHubspotCrm - -
- - -Delete a property in HubSpot CRM and move it to the recycling bin. - -**Parameters** - -- **object_type** (`string`, required) Specify the type of object in HubSpot CRM (e.g., 'contacts', 'companies'). -- **property_name** (`string`, required) The name of the property to delete, identified by its unique name within the object type. - -## HubspotCrmApi.UpdatePropertyValue - -
- - -Update specific fields of a CRM property partially. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **crm_object_type** (`string`, optional) Specify the type of CRM object (e.g., 'contacts', 'deals') to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **property_identifier** (`string`, optional) The unique name of the CRM property to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ReadBatchProperties - -
- - -Fetches a batch of properties for a specified CRM object type. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **crm_object_type** (`string`, optional) The type of CRM object for which properties are being read (e.g., contacts, deals). Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchProperties - -
- - -Create a batch of properties for a specified object type in HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **object_type** (`string`, optional) Specifies the type of CRM object for which to create properties (e.g., contacts, deals, companies). Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveHubspotProperties - -
- - -Retrieve all properties for a HubSpot object type. - -**Parameters** - -- **object_type** (`string`, required) Specifies the HubSpot object type (e.g., contact, deal) to retrieve properties for. -- **return_archived_only** (`boolean`, optional) Set to true to return only results that have been archived. Otherwise, return all properties. -- **selected_properties** (`string`, optional) A comma-separated list of specific properties to retrieve for the object type. Leave empty to retrieve all properties. - -## HubspotCrmApi.CreateHubspotCrmProperty - -
- - -Create a new property for a specified object type in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **object_type** (`string`, optional) Specify the object type to which the new property will be added, such as contact, company, or deal. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveHubspotPropertyGroups - -
- - -Retrieve HubSpot CRM property groups for a specified object type. - -**Parameters** - -- **hubspot_object_type** (`string`, required) Specify the HubSpot object type to retrieve property groups, such as 'contacts', 'companies', or 'deals'. - -## HubspotCrmApi.CreatePropertyGroup - -
- - -Create a new property group in HubSpot CRM. - -**Parameters** - -- **internal_property_group_name** (`string`, required) The unique name used internally to reference the property group via the API. -- **object_type** (`string`, required) Specifies the CRM object type for the property group (e.g., contacts, companies). -- **property_group_label** (`string`, required) A human-readable label for the property group, displayed in HubSpot. -- **property_group_display_order** (`integer`, optional) Defines the display order of the property group, with lowest positive integers displayed first. Use -1 to display after positive values. - -## HubspotCrmApi.GetPropertyValidationRules - -
- - -Retrieve validation rules for properties of a given object in HubSpot CRM. - -**Parameters** - -- **object_type_id** (`string`, required) The unique identifier for the object type in HubSpot CRM whose property validation rules you want to retrieve. This is a string value. - -## HubspotCrmApi.FetchPropertyValidation - -
- - -Retrieve validation rules for a specific property in HubSpot CRM. - -**Parameters** - -- **object_type_id** (`string`, required) The unique identifier for the object type in HubSpot CRM, such as "contacts" or "deals". -- **property_name** (`string`, required) The name of the property whose validation rules you want to retrieve in HubSpot CRM. It must match exactly to identify the property correctly. - -## HubspotCrmApi.ArchiveQuotesBatch - -
- - -Archive a batch of quotes in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetQuotesPage - -
- - -Retrieve a page of quotes with specified properties. - -**Parameters** - -- **paging_cursor_token** (`string`, optional) The token to identify the last read resource for pagination. Use it to get the next page of results. -- **properties_with_history** (`array[string]`, optional) List of properties to return with their history. Reduces max quotes per request. -- **quote_properties_to_return** (`array[string]`, optional) List the properties to retrieve for each quote. Only present properties will be returned. -- **results_limit** (`integer`, optional) The maximum number of quote results to display per page. Accepts an integer value. -- **retrieve_associated_ids_for_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for. Non-existing associations will be ignored. -- **return_archived_only** (`boolean`, optional) Set to true to return only archived results. False to include active results. - -## HubspotCrmApi.CreateHubspotQuote - -
- - -Create a new quote in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetQuoteById - -
- - -Retrieve details of a quote by its ID. - -**Parameters** - -- **quote_id** (`string`, required) The ID or unique property value of the quote to be retrieved. This identifies the specific quote in HubSpot CRM. -- **included_properties** (`array[string]`, optional) List of properties to be returned in the response. If a property is not present, it will be ignored. Input should be an array of strings. -- **only_return_archived** (`boolean`, optional) Set to true to only return results that have been archived for the quote. -- **properties_with_history** (`array[string]`, optional) Comma-separated list of properties to return with their value history. Ignored if not present. -- **retrieve_associated_object_types** (`array[string]`, optional) List of object types to retrieve associated IDs for; ignored if non-existent. -- **unique_property_name** (`string`, optional) The property name with unique values for the quote object, used in the retrieval process. - -## HubspotCrmApi.ArchiveQuote - -
- - -Archive a quote by moving it to the recycling bin. - -**Parameters** - -- **quote_identifier** (`string`, required) The unique identifier for the quote to be archived in HubSpot CRM. - -## HubspotCrmApi.UpdateQuoteInformation - -
- - -Update a quote's details in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **quote_identifier** (`string`, optional) The identifier of the quote to be updated. This can be the internal ID or a unique property value specified by `idProperty`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of a property with unique values for identifying the quote object. Used instead of `quoteId`. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateQuoteBatch - -
- - -Update a batch of quotes using internal ID or property values. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateOrUpdateQuotes - -
- - -Create or update quote records in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchOfQuotes - -
- - -Creates a batch of quotes in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchQuotesInHubspot - -
- - -Search for quotes in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveQuotesBatch - -
- - -Retrieve multiple quotes by ID or custom property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **archived_results_only** (`boolean`, optional) Specify `true` to return only archived results; `false` to include non-archived results. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetHubspotCrmObjectSchemas - -
- - -Retrieve HubSpot CRM object schemas. - -**Parameters** - -- **return_archived_only** (`boolean`, optional) Set to True to return only results that have been archived. - -## HubspotCrmApi.CreateCrmObjectSchema - -
- - -Create a new CRM object schema in HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetCrmObjectSchema - -
- - -Retrieve a CRM object schema by its type. - -**Parameters** - -- **object_type** (`string`, required) The fully qualified name or object type ID of the CRM schema to retrieve. - -## HubspotCrmApi.DeleteCrmObjectSchema - -
- - -Delete a CRM object schema in HubSpot. - -**Parameters** - -- **object_type_identifier** (`string`, required) The fully qualified name or object type ID of the schema to delete. -- **return_only_archived_results** (`boolean`, optional) Set to True to return only archived results. - -## HubspotCrmApi.UpdateCrmObjectSchema - -
- - -Update a CRM object's schema in HubSpot. - -**Parameters** - -- **object_type_identifier** (`string`, required) Fully qualified name or object type ID of your CRM schema for updates. -- **clear_description** (`boolean`, optional) Set to true to clear the description field for the object type schema. -- **object_description** (`string`, optional) A description for the CRM object schema, providing details about its purpose or usage in HubSpot. -- **object_singular_name** (`string`, optional) The word representing a single object. This cannot be changed later. -- **plural_labels** (`string`, optional) Specify the word representing multiple instances of the object type. This value is permanent and cannot be changed after setting. -- **primary_display_property** (`string`, optional) The primary property's name for this object, displayed prominently on the HubSpot record page. -- **required_properties** (`array[string]`, optional) List of property names that must be provided when creating an object of this type in HubSpot. -- **restorable** (`boolean`, optional) Indicates if the object can be restored after deletion. Accepts a boolean value. -- **searchable_properties** (`array[string]`, optional) List of property names to be indexed for HubSpot's product search, enhancing searchability of the CRM object type. -- **secondary_display_properties** (`array[string]`, optional) Names of secondary properties displayed on the HubSpot record page for this object type. - -## HubspotCrmApi.CreateCrmObjectAssociation - -
- - -Create an association between HubSpot CRM objects. - -**Parameters** - -- **crm_object_type_schema** (`string`, required) Fully qualified name or object type ID of your CRM object schema to create the association. -- **primary_object_type_id** (`string`, required) ID of the primary object type to link from in the CRM system. -- **target_object_type_id** (`string`, required) ID of the target object type to link to in the CRM association. -- **association_name** (`string`, optional) A unique name for the association between CRM objects. This helps identify the link. - -## HubspotCrmApi.DeleteCrmAssociation - -
- - -Remove an association between CRM object schemas. - -**Parameters** - -- **association_id** (`string`, required) Unique ID of the association to be removed. -- **schema_object_type** (`string`, required) The fully qualified name or object type ID of your schema to identify which CRM object to target. - -## HubspotCrmApi.FetchHubspotObjectRecords - -
- - -Retrieve HubSpot CRM records by ID or custom property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_only** (`boolean`, optional) Indicate if only archived records should be returned when retrieving HubSpot CRM data. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateServicesBatch - -
- - -Update multiple service records in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.HubspotCrmUpsertRecords - -
- - -Create or update unique records in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.HubspotSearchCustomObjects - -
- - -Search for custom objects in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveServicesBatch - -
- - -Archive multiple services using their IDs in bulk. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetHubspotObjectById - -
- - -Retrieve a HubSpot CRM object using its service ID. - -**Parameters** - -- **hubspot_crm_service_id** (`string`, required) The unique identifier (service ID) of the HubSpot CRM object to retrieve. This can be the internal object ID or any unique property defined by the `idProperty`. -- **associated_object_types** (`array[string]`, optional) A list of object types whose associated IDs should be retrieved. Non-existent associations will be ignored. -- **properties_with_history** (`array[string]`, optional) A list of properties to return along with their history for a HubSpot CRM object. Properties should be specified as strings in the list. -- **return_archived_only** (`boolean`, optional) Set to true to return only archived results. False returns non-archived results. -- **return_properties_list** (`array[string]`, optional) A list of properties to be returned in the response. Non-existing properties will be ignored. -- **unique_property_name** (`string`, optional) Specify the name of a property with unique values for the object. - -## HubspotCrmApi.DeleteObjectHubspot - -
- - -Move an object to the recycling bin in HubSpot CRM. - -**Parameters** - -- **object_service_id** (`string`, required) The unique identifier for the object to be moved to the recycling bin in HubSpot CRM. - -## HubspotCrmApi.EditHubspotObject - -
- - -Partially update a HubSpot CRM object with specified properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **object_identifier** (`string`, optional) The unique identifier or `{serviceId}` for the object to be updated. This can be an internal object ID or a unique property value when used with `idProperty`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of a unique property for the object, used instead of the internal ID if specified. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ReadServicesPage - -
- - -Retrieve a page of services with customizable properties. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for each service. Ignored if associations do not exist. -- **max_results_per_page** (`integer`, optional) Specify the maximum number of results to display per page. -- **paging_cursor_token** (`string`, optional) The cursor token from the last read to retrieve the next page of results. -- **properties_with_history** (`array[string]`, optional) A list of properties to return with their history of values. If absent, properties are ignored. Reduces max services per request. -- **requested_properties** (`array[string]`, optional) Comma-separated list of properties to include in the response. Non-existent properties will be ignored. -- **return_archived_only** (`boolean`, optional) Set to true to return only archived results; false to include non-archived results. - -## HubspotCrmApi.CreateServiceRecord - -
- - -Create a service record in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchOfServices - -
- - -Create a batch of services in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveHubspotTasks - -
- - -Archive multiple HubSpot tasks by their IDs. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetTaskDetails - -
- - -Retrieve HubSpot CRM task details using task ID. - -**Parameters** - -- **task_id** (`string`, required) The unique identifier for the HubSpot CRM task. Retrieve specific task details using this ID. -- **associated_object_types** (`array[string]`, optional) List of object types to retrieve associated IDs for. Returns IDs of related objects. -- **properties_with_history** (`array[string]`, optional) List of properties to return with their previous values. Comma-separated and ignored if not present. -- **requested_properties** (`array[string]`, optional) List of properties to return for the task. Only available properties will be returned. -- **return_only_archived** (`boolean`, optional) Set to true to return only archived results. -- **unique_property_name** (`string`, optional) Specify the name of the property with unique values to identify the task. - -## HubspotCrmApi.DeleteTaskInHubspot - -
- - -Delete a task in HubSpot by task ID. - -**Parameters** - -- **task_id** (`string`, required) The unique identifier of the task to be deleted from HubSpot CRM. Required to move the task to the recycling bin. - -## HubspotCrmApi.UpdateHubspotTask - -
- - -Update properties of a HubSpot task using its ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **task_identifier** (`string`, optional) The internal ID or unique property name of the task to update. Defaults to internal ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) Specify the name of the property with unique values. Used for identifying the object instead of `taskId`. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchTasks - -
- - -Create a batch of tasks in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateBatchTasks - -
- - -Update a batch of tasks in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveHubspotTasks - -
- - -Retrieve HubSpot task records by ID or custom property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_only** (`boolean`, optional) Set to true to return only archived records from HubSpot. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertHubspotTasks - -
- - -Create or update tasks in HubSpot using a unique property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchHubspotTasks - -
- - -Search for tasks in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetTasksList - -
- - -Retrieve a page of tasks from HubSpot CRM. - -**Parameters** - -- **max_results_per_page** (`integer`, optional) Specify the maximum number of task results to retrieve per page. -- **paging_cursor_token** (`string`, optional) The token indicating the last resource read, used for pagination to continue from the next page. -- **properties_with_history** (`array[string]`, optional) Specify properties to return along with their full change history. Note: This reduces the number of tasks per request. -- **retrieve_associated_object_ids** (`array[string]`, optional) A list of object types to retrieve associated IDs for. If specified associations do not exist, they will be ignored. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived tasks; false for active tasks. -- **task_properties_to_return** (`array[string]`, optional) A list of property names to include in the response. Ignored if not present on the tasks. - -## HubspotCrmApi.CreateTaskInCrm - -
- - -Create a task in HubSpot CRM and return task details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetTaxesPage - -
- - -Retrieve a page of tax details from HubSpot CRM. - -**Parameters** - -- **archived_only** (`boolean`, optional) Set to true to return only archived tax results. -- **included_properties** (`array[string]`, optional) List the properties to be returned for each tax. Specify as an array of strings. -- **max_results_per_page** (`integer`, optional) Specify the maximum number of tax results to display per page. -- **paging_cursor_token** (`string`, optional) The token for the paging cursor from the last read resource for fetching the next page of results. -- **properties_with_history** (`array[string]`, optional) Specify properties to return with their history. Reduces max number of taxes per request. -- **retrieve_associated_object_ids** (`array[string]`, optional) Comma-separated list of object types to retrieve associated IDs for. Non-existent associations will be ignored. - -## HubspotCrmApi.CreateHubspotTax - -
- - -Create a tax in HubSpot CRM and retrieve its details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetTaxDetailsById - -
- - -Retrieve tax details using a specific tax ID. - -**Parameters** - -- **tax_id** (`string`, required) The unique ID or property value for the tax object. Default is the internal object ID. -- **associated_object_types** (`array[string]`, optional) A list of object types to retrieve associated IDs for. Non-existent associations will be ignored. -- **properties_with_history** (`array[string]`, optional) List properties to return with their historical values. Use a comma-separated format. -- **return_archived_only** (`boolean`, optional) Set to true to return only archived results. False returns non-archived records. -- **return_properties** (`array[string]`, optional) Comma-separated list of properties to be included in the response. Non-existing properties will be ignored. -- **unique_property_name** (`string`, optional) The name of a property whose values are unique for the tax object. Use this to specify an alternative ID property instead of the default internal ID. - -## HubspotCrmApi.DeleteTaxEntry - -
- - -Archive a tax entry in HubSpot CRM. - -**Parameters** - -- **tax_entry_id** (`string`, required) The unique identifier for the tax entry you want to archive in HubSpot CRM. - -## HubspotCrmApi.UpdateTaxObject - -
- - -Update properties of a tax object in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **tax_object_identifier** (`string`, optional) The identifier for the tax object. Use the internal `taxId` by default or provide a unique property value specified by the `idProperty`. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of a property uniquely identifying this tax object. Used instead of `taxId` if specified. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateOrUpdateTaxRecords - -
- - -Create or update tax records based on unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateBatchTaxes - -
- - -Update taxes in batch using IDs or unique values. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveTaxRecords - -
- - -Retrieve tax records by ID or custom property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_only** (`boolean`, optional) Set to true to retrieve only archived records, false to exclude them. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateTaxBatch - -
- - -Create a batch of taxes in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchTaxes - -
- - -Search for tax entries within HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveTaxBatch - -
- - -Archive a batch of taxes by their IDs. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.MergeSupportTickets - -
- - -Merge two support tickets into one unified record. - -**Parameters** - -- **primary_ticket_id** (`string`, required) The ID of the ticket designated as the primary record in the merge operation. After merging, this ticket will contain all combined information. -- **secondary_ticket_id** (`string`, required) The ID of the support ticket to be merged into the primary ticket. It specifies which ticket will be combined with the primary ticket record. - -## HubspotCrmApi.DeleteHubspotTicketsBatch - -
- - -Delete a batch of tickets in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetTicketDetails - -
- - -Retrieve details of a ticket by ID from HubSpot CRM. - -**Parameters** - -- **ticket_id** (`string`, required) The ID of the ticket to retrieve from HubSpot CRM. This can be the internal object ID or a unique property value based on the `idProperty`. -- **associated_object_types** (`array[string]`, optional) List of object types for retrieving associated IDs. Non-existent associations will be ignored. -- **only_return_archived** (`boolean`, optional) Set to true to return only archived results. -- **properties_to_return** (`array[string]`, optional) A list of properties to include in the response. Properties not present will be ignored. -- **properties_with_history** (`array[string]`, optional) List of properties with their history to be returned. If properties are missing, they'll be ignored. -- **unique_identifier_property** (`string`, optional) Specifies the property name with unique values for identifying the ticket. - -## HubspotCrmApi.DeleteTicket - -
- - -Move a ticket to the recycling bin by ticket ID. - -**Parameters** - -- **ticket_id** (`string`, required) The unique ID of the ticket to move to the recycling bin. Must be a valid string representing the ticket identifier. - -## HubspotCrmApi.UpdateTicketInfo - -
- - -Partially update ticket details in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **ticket_id** (`string`, optional) The internal ID of the ticket to be updated. This is used to identify the specific ticket in HubSpot CRM. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) The name of a property whose values are unique for the ticket object. Specify if not using the default ticket ID. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertCrmTickets - -
- - -Create or update CRM tickets in bulk using unique identifiers. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveTicketBatch - -
- - -Retrieve a batch of tickets by ID or property value. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_archived_tickets_only** (`boolean`, optional) Set to true to return only archived tickets. If false, include non-archived tickets as well. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.FetchTicketsPage - -
- - -Retrieve a page of tickets from HubSpot CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) A list of object types (e.g. 'contacts', 'companies') to retrieve associated IDs for tickets. Ignore if they don't exist. -- **include_properties** (`array[string]`, optional) A list of properties to return for each ticket. Specify as strings; unlisted properties will be ignored. -- **paging_cursor_token** (`string`, optional) The token for the last read resource to continue paging results. -- **properties_with_history** (`array[string]`, optional) A list of property names to return with their historical values. Reduces the number of tickets retrievable per request. -- **results_per_page** (`integer`, optional) The maximum number of results to display per page. Must be a positive integer. -- **return_only_archived** (`boolean`, optional) Return only archived tickets if set to 'True'. - -## HubspotCrmApi.CreateTicket - -
- - -Create a support ticket in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.SearchTickets - -
- - -Search and filter CRM tickets based on properties and associations. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateBatchTickets - -
- - -Create a batch of tickets in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateTicketBatch - -
- - -Update multiple tickets in HubSpot CRM by ID or property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveEventDetails - -
- - -Retrieve detailed information for a specific HubSpot event. - -**Parameters** - -- **event_id** (`string`, required) Specify the event ID to retrieve detailed information for a specific event in HubSpot CRM. -- **event_template_id** (`string`, required) The ID of the event template used to identify and retrieve specific event details in HubSpot CRM. - -## HubspotCrmApi.SendEventToHubspot - -
- - -Send event data to a specified HubSpot event type. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveEventInstance - -
- - -Retrieve an event instance using template and event ID. - -**Parameters** - -- **event_id** (`string`, required) The unique identifier for the specific event you want to retrieve. -- **event_template_id** (`string`, required) The unique ID of the event template required to retrieve the event instance. - -## HubspotCrmApi.BatchCreateTimelineEvents - -
- - -Batch create multiple timeline event instances. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UploadCallTranscripts - -
- - -Upload call transcripts to HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetTranscriptById - -
- - -Retrieve call transcript details by transcript ID. - -**Parameters** - -- **transcript_id** (`string`, required) The unique identifier of the call transcript to retrieve from HubSpot CRM. - -## HubspotCrmApi.DeleteCallTranscript - -
- - -Delete a call transcript by transcript ID. - -**Parameters** - -- **transcript_id** (`string`, required) The unique identifier for the call transcript you want to delete from the HubSpot CRM. - -## HubspotCrmApi.SearchCrmUsers - -
- - -Perform a user search in the CRM database. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.CreateUsersBatch - -
- - -Create a batch of users in the CRM system. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.ArchiveUsersBatch - -
- - -Archives a batch of users by their IDs in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.RetrieveHubspotUserRecords - -
- - -Retrieve HubSpot user records by ID or unique property. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **return_only_archived_results** (`boolean`, optional) Specify True to return only results that have been archived. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpsertHubspotUsers - -
- - -Create or update user records in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetUserInfo - -
- - -Retrieves user information from HubSpot CRM using user ID. - -**Parameters** - -- **user_identifier** (`string`, required) The unique identifier for the user. This can be the internal object ID or a property value specified by `idProperty`. -- **object_associations** (`array[string]`, optional) Comma separated list of object types to retrieve associated IDs for in the user info response. -- **properties_to_return** (`array[string]`, optional) A list of user properties to return in the response. If any specified properties are not present, they will be ignored. -- **properties_with_history** (`array[string]`, optional) List of property names to return with their value history for the user. -- **return_only_archived_results** (`boolean`, optional) Set to true to return only archived results. Set to false to exclude archived items from results. -- **unique_property_name** (`string`, optional) The name of a property with unique values to identify the object. - -## HubspotCrmApi.DeleteUser - -
- - -Delete a user and move to recycling bin. - -**Parameters** - -- **user_id_to_delete** (`string`, required) The unique identifier of the user to delete and move to the recycling bin. - -## HubspotCrmApi.UpdateHubspotUser - -
- - -Update user details in HubSpot CRM. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **user_id** (`string`, optional) The internal user ID or unique property value to identify the user for updating. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **unique_property_name** (`string`, optional) Specifies the name of a property with unique values for identifying the user object. Use this if not using userId. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.UpdateMultipleUsers - -
- - -Update multiple users in HubSpot CRM by internal ID or unique properties. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotCrmApi.GetUsersPage - -
- - -Fetch a page of users from the CRM. - -**Parameters** - -- **associated_object_types** (`array[string]`, optional) A list of object types for which associated IDs should be retrieved. If specified associations do not exist, they will be ignored. -- **max_results_per_page** (`integer`, optional) Specify the maximum number of results to display per page. -- **paging_cursor_token** (`string`, optional) The paging cursor token from the last read resource, used to fetch next set of results. -- **properties_with_history** (`array[string]`, optional) List of properties to return with their history. Reduces the maximum number of users per request. -- **return_only_archived** (`boolean`, optional) Set to true to return only results that have been archived. -- **user_properties** (`array[string]`, optional) A list of user property names to include in the response. Any non-existent properties will be ignored. - -## HubspotCrmApi.CreateCrmUser - -
- - -Create a new user in the CRM and retrieve their ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## Reference - -Below is a reference of enumerations used by some of the tools in the HubspotCrmApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - -## Auth - -The HubspotCrmApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotCrmApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider. - - diff --git a/app/en/resources/integrations/sales/hubspot-events-api/page.mdx b/app/en/resources/integrations/sales/hubspot-events-api/page.mdx deleted file mode 100644 index 96cd54612..000000000 --- a/app/en/resources/integrations/sales/hubspot-events-api/page.mdx +++ /dev/null @@ -1,432 +0,0 @@ -# HubspotEventsApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The Hubspot Events API MCP Server offers a comprehensive suite of tools for managing and analyzing event data within HubSpot. Users can efficiently perform actions such as: - -- Retrieve event completion data for specific contacts to track engagement. -- List and manage custom event definitions and their properties. -- Create, update, and delete custom events and their associated properties. -- Send single or batch event completion data to HubSpot for streamlined reporting. - -This server is designed to enhance event tracking and management capabilities within the HubSpot ecosystem. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## HubspotEventsApi.RetrieveEventCompletions - -
- - -Retrieve instances of event completion data. - -**Parameters** - -- **crm_object_id** (`integer`, optional) The ID of the CRM Object to filter event instances on. Must be used with `object_type`. -- **crm_object_type** (`string`, optional) Specify the CRM object type to filter event instances (e.g., `contact`). -- **event_instance_ids** (`array[string]`, optional) List of event instance IDs. Each ID must uniquely match the event instance, and any additional filters must align with the event instance's attributes. -- **event_property_filter** (`json`, optional) Specify a key-value pair to filter event completions by a property (e.g., `hs_city=portland`). Use `%20` or `+` for spaces. -- **event_type_name** (`string`, optional) The specific name of the event type to retrieve data for. Available event types can be found using the event types endpoint. -- **filter_events_occurred_before** (`string`, optional) Filter for events that occurred before a specific datetime. Accepts an ISO 8601 formatted date-time string. -- **filter_occurred_after_datetime** (`string`, optional) Filter for event data occurring after a specific datetime, in ISO 8601 format (e.g., '2023-01-01T00:00:00Z'). -- **max_results_per_page** (`integer`, optional) The maximum number of results to display per page. -- **paging_before_token** (`string`, optional) The cursor token to fetch results occurring before this point when paginating results. -- **paging_cursor_token** (`string`, optional) The token for the next page of results, returned as `paging.next.after` in the previous response. -- **sort_direction** (`array[string]`, optional) Specify the sort direction for event instances based on the timestamp. Use `ASCENDING` or `DESCENDING`. -- **unique_identifier_property** (`json`, optional) Specify a unique identifier for a CRM object. For contacts, use the email property (e.g., `email=name@domain.com`). - -## HubspotEventsApi.ListEventTypes - -
- - -Retrieve a list of visible event type names. - -**Parameters** - -This tool does not take any parameters. - -## HubspotEventsApi.RetrieveCustomEventDefinitions - -
- - -Retrieve existing custom event definitions from Hubspot. - -**Parameters** - -- **event_name_search_string** (`string`, optional) String of characters to search for in event names. This is a simple 'contains' search without fuzzy matching. -- **include_event_properties** (`boolean`, optional) Include event properties in the response. Set to true to include all properties. -- **paging_cursor_token** (`string`, optional) The token indicating the position after the last successfully read resource for continued paged results. -- **results_per_page_limit** (`integer`, optional) The maximum number of event definitions to retrieve per page. -- **sort_order** (`string`, optional) Specify the order to sort results. Use 'ASC' for ascending or 'DESC' for descending. - -## HubspotEventsApi.CreateCustomEventDefinition - -
- - -Create a custom event definition in HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotEventsApi.FetchEventDefinitionByName - -
- - -Fetch details of a custom event definition by name. - -**Parameters** - -- **event_name** (`string`, required) The internal name of the custom event to fetch its definition. - -## HubspotEventsApi.DeleteCustomEventDefinition - -
- - -Delete a custom event definition by name. - -**Parameters** - -- **event_name** (`string`, required) The name of the custom event definition to delete. - -## HubspotEventsApi.UpdateCustomEventDefinition - -
- - -Update a specific custom event definition by name. - -**Parameters** - -- **internal_event_name** (`string`, required) The internal name of the custom event to be updated in Hubspot. -- **event_description** (`string`, optional) Provide a description for the custom event to be displayed as help text in HubSpot. -- **event_label** (`string`, optional) The human-readable label for the event, used in the HubSpot UI. - -## HubspotEventsApi.CreateEventProperty - -
- - -Create a new property for an existing event definition. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **custom_event_internal_name** (`string`, optional) The internal name of the custom event for which the property is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotEventsApi.DeleteCustomEventProperty - -
- - -Delete a property from a custom event definition. - -**Parameters** - -- **custom_event_internal_name** (`string`, required) The internal name of the custom event from which the property will be deleted. -- **property_internal_name** (`string`, required) The internal name of the property to delete from the custom event. - -## HubspotEventsApi.UpdateEventProperty - -
- - -Update a property in a custom event definition. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **custom_event_name** (`string`, optional) The internal name of the custom event to be updated. Required to identify which event's property is being modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **property_name_to_update** (`string`, optional) The internal name of the property to update within the event definition. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotEventsApi.SendBatchEvents - -
- - -Send multiple event completions in one request. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotEventsApi.SendEventData - -
- - -Send data for a single event completion. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## Reference - -Below is a reference of enumerations used by some of the tools in the HubspotEventsApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - -## Auth - -The HubspotEventsApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotEventsApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider. - - diff --git a/app/en/resources/integrations/sales/hubspot-marketing-api/page.mdx b/app/en/resources/integrations/sales/hubspot-marketing-api/page.mdx deleted file mode 100644 index 087e4d6c9..000000000 --- a/app/en/resources/integrations/sales/hubspot-marketing-api/page.mdx +++ /dev/null @@ -1,2811 +0,0 @@ -# HubspotMarketingApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The HubspotMarketingApi MCP Server offers a comprehensive suite of tools for managing marketing campaigns within HubSpot. Users can efficiently perform actions such as: - -- Create, update, and delete marketing campaigns and associated assets. -- Manage campaign budgets and spending items. -- Retrieve detailed metrics and reports on campaign performance and email statistics. -- Handle marketing events, including participation tracking and event details. -- Create and manage marketing forms and emails, including A/B testing and transactional emails. - -This server streamlines the process of executing marketing strategies and analyzing their effectiveness within the HubSpot platform. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## HubspotMarketingApi.GetCampaignSpendItem - -
- - -Retrieve details of a specific campaign spend item. - -**Parameters** - -- **campaign_guid** (`string`, required) Unique identifier for the marketing campaign to retrieve the spend item from. -- **spend_item_identifier** (`integer`, required) Unique identifier for the spend item in the campaign. - -## HubspotMarketingApi.UpdateCampaignSpend - -
- - -Update a specific campaign spend item by ID. - -**Parameters** - -- **campaign_guid** (`string`, required) Unique identifier for the campaign. -- **spend_amount** (`number`, required) The new amount value for the campaign spend. Specify this as a number representing the monetary value. -- **spend_identifier** (`integer`, required) Unique identifier for the spend item in the campaign to be updated. -- **spend_item_name** (`string`, required) The new name for the campaign spend item. This should be a descriptive string defining the spend item. -- **spend_order** (`integer`, required) The order or sequence number of the spend item within the campaign. It determines the priority or arrangement of the spend items. -- **spend_item_description** (`string`, optional) Details or notes about the campaign spend item. - -## HubspotMarketingApi.RemoveCampaignSpendItem - -
- - -Deletes a specific campaign spend item by ID. - -**Parameters** - -- **campaign_identifier** (`string`, required) Unique identifier for the specific marketing campaign. -- **spend_item_id** (`integer`, required) Unique identifier for the specific spend item to be deleted from the campaign. - -## HubspotMarketingApi.UpdateCampaignBatch - -
- - -Update a batch of marketing campaigns efficiently. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.GetCampaignBudget - -
- - -Retrieve details of a specific marketing campaign budget item. - -**Parameters** - -- **budget_item_id** (`integer`, required) Unique identifier for the budget item to retrieve details. -- **campaign_guid** (`string`, required) The unique identifier for the marketing campaign to access its budget details. - -## HubspotMarketingApi.UpdateCampaignBudget - -
- - -Update a specific campaign budget item by ID. - -**Parameters** - -- **budget_amount** (`number`, required) The amount to set for the budget item. This is a numerical value representing the budget in the specified currency. -- **budget_id** (`integer`, required) Unique identifier for the budget item to be updated. -- **budget_item_name** (`string`, required) The new name for the budget item. It should be a descriptive label that clearly identifies the budget item within the campaign. -- **campaign_guid** (`string`, required) A unique identifier for the campaign. Use this to specify which campaign's budget item to update. -- **priority_order** (`integer`, required) Specify the order in which the budget item appears. Accepted values are integers. -- **budget_item_description** (`string`, optional) A string to describe the budget item. Provide a brief explanation of what this budget is for. - -## HubspotMarketingApi.DeleteCampaignBudgetItem - -
- - -Delete a specific campaign budget item by ID. - -**Parameters** - -- **budget_item_id** (`integer`, required) Unique identifier for the budget item to be deleted. -- **campaign_guid** (`string`, required) Unique identifier for the campaign to delete the budget item from. - -## HubspotMarketingApi.AssociateAssetWithCampaign - -
- - -Associate a specified asset with a HubSpot campaign. - -**Parameters** - -- **asset_id** (`string`, required) The unique identifier for the asset to be associated with a campaign. This should be provided as a string. -- **asset_type** (`string`, required) Specify the asset type to associate with the campaign. Allowed values are FORM, OBJECT_LIST, and EXTERNAL_WEB_URL. -- **campaign_unique_identifier** (`string`, required) Unique identifier for the campaign, formatted as a UUID. Essential for associating an asset with the correct campaign. - -## HubspotMarketingApi.DisassociateCampaignAsset - -
- - -Disassociate an asset from a HubSpot marketing campaign. - -**Parameters** - -- **asset_id** (`string`, required) Unique identifier for the asset to be disassociated from the campaign. -- **asset_type** (`string`, required) Specify the type of asset to disassociate, limited to FORM, OBJECT_LIST, or EXTERNAL_WEB_URL. -- **campaign_unique_identifier** (`string`, required) Unique identifier for the campaign, formatted as a UUID. - -## HubspotMarketingApi.GetCampaignBudgetDetails - -
- - -Retrieve detailed budget and spend details for a campaign. - -**Parameters** - -- **campaign_unique_identifier** (`string`, required) Unique identifier for the campaign, formatted as a UUID. - -## HubspotMarketingApi.FetchMarketingCampaignBatches - -
- - -Retrieve a batch of HubSpot marketing campaigns and assets. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **fetch_start_date** (`string`, optional) Start date to fetch asset metrics, formatted as YYYY-MM-DD. Determines the period for asset metrics. Optional. Only used when mode is 'execute'. -- **end_date_for_asset_metrics** (`string`, optional) End date to fetch asset metrics, formatted as YYYY-MM-DD. If not provided, no asset metrics will be fetched. Only used when mode is 'execute'. -- **requested_properties** (`array[string]`, optional) Comma-separated list of properties to return in the response. Ignored if values are empty, resulting in an empty properties map if not specified. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.GetMarketingCampaigns - -
- - -Retrieve a page of marketing campaigns with optional filters. - -**Parameters** - -- **campaign_name_filter** (`string`, optional) A substring to filter campaigns by name. Returns campaigns containing this substring. Optional: returns all if not provided. -- **max_results_limit** (`integer`, optional) Maximum number of campaigns to return (1-100). Default is 50. -- **pagination_cursor** (`string`, optional) A cursor for pagination. If provided, results start after the given cursor. Example: NTI1Cg%3D%3D -- **requested_properties** (`array[string]`, optional) A list of properties to be included in the response. Comma-separate values are required. If any specified property is empty, it will be ignored. -- **sort_by** (`string`, optional) Specify the field to sort results by. Use '-' to denote descending order. Options are hs_name, createdAt, updatedAt. Default is hs_name. - -## HubspotMarketingApi.CreateMarketingCampaign - -
- - -Create a marketing campaign and retrieve its details. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.GetCampaignAttributionMetrics - -
- - -Retrieve attribution metrics for a specific campaign. - -**Parameters** - -- **campaign_unique_identifier** (`string`, required) Unique identifier for the campaign, formatted as a UUID. Required to retrieve specific campaign metrics. -- **report_end_date** (`string`, optional) Set the end date for the report data in YYYY-MM-DD format. Defaults to the current date if not specified. -- **start_date_for_report** (`string`, optional) The start date for the report data, formatted as YYYY-MM-DD. Default is 2006-01-01. - -## HubspotMarketingApi.ListCampaignAssets - -
- - -Retrieve all assets of a specified type for a campaign. - -**Parameters** - -- **asset_type** (`string`, required) The type of asset to fetch for the campaign, e.g., 'email', 'webpage'. -- **campaign_identifier** (`string`, required) Unique identifier for the campaign in UUID format. -- **end_date_for_asset_metrics** (`string`, optional) End date to fetch asset metrics, formatted as YYYY-MM-DD. Used for fetching metrics of assets within a specified period. Optional parameter. -- **maximum_results_limit** (`string`, optional) The maximum number of asset results to return. Default is 10. -- **metrics_start_date** (`string`, optional) Start date to fetch asset metrics, formatted as YYYY-MM-DD. Used to fetch metrics for a specified period. If not provided, no metrics will be fetched. -- **pagination_cursor** (`string`, optional) A cursor for pagination. If provided, results start after this cursor. Example: NTI1Cg%3D%3D - -## HubspotMarketingApi.ArchiveCampaignsBatch - -
- - -Delete a batch of marketing campaigns. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.GetCampaignRevenueReport - -
- - -Fetch revenue attribution report for a specific campaign. - -**Parameters** - -- **campaign_unique_identifier** (`string`, required) Unique identifier for the campaign, formatted as a UUID. -- **attribution_model** (`string`, optional) The revenue attribution model to be used. Allowed values: LINEAR, FIRST_INTERACTION, LAST_INTERACTION, FULL_PATH, U_SHAPED, W_SHAPED, TIME_DECAY, J_SHAPED, INVERSE_J_SHAPED. Defaults to LINEAR. -- **report_end_date** (`string`, optional) End date for the report data in YYYY-MM-DD format. Defaults to the current date. -- **report_start_date** (`string`, optional) The start date for the report data in the format YYYY-MM-DD. Default is 2006-01-01. - -## HubspotMarketingApi.CreateMarketingCampaignBatch - -
- - -Create a batch of marketing campaigns in HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.AddCampaignBudgetItem - -
- - -Add a new budget item to a marketing campaign. - -**Parameters** - -- **budget_amount** (`number`, required) The monetary amount for the budget item. It should be a numeric value denoting the budget amount to add to the campaign. -- **budget_item_name** (`string`, required) Name of the budget item to be added to the campaign. It should be descriptive and concise. -- **budget_item_order** (`integer`, required) The position or priority of the budget item in the list. Provide as an integer. -- **campaign_id** (`string`, required) Unique identifier for the campaign in HubSpot Marketing. -- **budget_item_description** (`string`, optional) A brief description of the budget item being added to the campaign. This can include details about what the budget will be used for and any other relevant information. - -## HubspotMarketingApi.GetCampaignDetails - -
- - -Retrieve details and metrics for a specific marketing campaign. - -**Parameters** - -- **campaign_guid** (`string`, required) Unique identifier for the campaign, formatted as a UUID. -- **end_date_for_asset_metrics** (`string`, optional) End date to fetch asset metrics, formatted as YYYY-MM-DD. If omitted, no metrics will be retrieved. -- **metrics_start_date** (`string`, optional) Start date for fetching asset metrics. Format as YYYY-MM-DD. Metrics are only retrieved if both start and end dates are provided. -- **properties_list** (`array[string]`, optional) List specific properties to return in the response. Leave empty for an empty properties map. - -## HubspotMarketingApi.DeleteMarketingCampaign - -
- - -Delete a specified marketing campaign. - -**Parameters** - -- **campaign_guid** (`string`, required) Unique identifier for the campaign, formatted as a UUID. - -## HubspotMarketingApi.UpdateCampaignProperties - -
- - -Update properties of a HubSpot marketing campaign. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **campaign_uuid** (`string`, optional) Unique identifier for the campaign, formatted as a UUID. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.FetchCampaignContactIds - -
- - -Fetch contact IDs for a specific campaign and contact type. - -**Parameters** - -- **campaign_identifier** (`string`, required) Unique identifier for the campaign formatted as a UUID. -- **contact_type_filter** (`string`, required) Specifies the type of metric for filtering contacts. Options: contactFirstTouch, contactLastTouch, influencedContacts. -- **contact_fetch_limit** (`integer`, optional) Specify the maximum number of contact IDs to retrieve, with a default of 100. -- **pagination_cursor** (`string`, optional) A string cursor for pagination to start results after the given point. Example: NTI1Cg%3D%3D -- **report_end_date** (`string`, optional) The end date for the report data in YYYY-MM-DD format. Defaults to the current date if not specified. -- **start_date** (`string`, optional) The start date for the report data in YYYY-MM-DD format. Default is 2006-01-01. - -## HubspotMarketingApi.CreateCampaignSpend - -
- - -Create a new campaign spend item for a marketing campaign. - -**Parameters** - -- **campaign_id** (`string`, required) Unique identifier for the marketing campaign to add the spend item to. -- **spend_amount** (`number`, required) The monetary value of the spend item to be added to the campaign. This should be a numerical value representing the amount in the currency used by the campaign. -- **spend_item_name** (`string`, required) The name of the spend item to be created for the campaign. This should be a descriptive title or label for the expenditure. -- **spend_item_order** (`integer`, required) The order of the spend item in the campaign. Use an integer to specify the sequence. -- **spend_description** (`string`, optional) A brief description of the campaign spend item, detailing the nature or purpose of the expenditure. - -## HubspotMarketingApi.GetFormById - -
- - -Retrieve a marketing form by its ID. - -**Parameters** - -- **form_id** (`string`, required) The unique identifier for the specific marketing form to retrieve. This ID is required to fetch the form details. -- **return_archived_only** (`boolean`, optional) Set to true to return only archived forms. - -## HubspotMarketingApi.UpdateHubspotForm - -
- - -Update all fields of a HubSpot form. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **hubspot_form_id** (`string`, optional) The unique identifier for the HubSpot form to update. This ID specifies which form's fields will be replaced. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.ArchiveMarketingForm - -
- - -Archive a marketing form in HubSpot. - -**Parameters** - -- **form_id** (`string`, required) The ID of the form to archive in HubSpot. This is required to process the archive request. - -## HubspotMarketingApi.UpdateHubspotMarketingForm - -
- - -Update components of a HubSpot marketing form. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **form_id** (`string`, optional) The unique identifier for the form to update. Must be provided to specify which form's components to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.ListHubspotForms - -
- - -Retrieve a list of HubSpot marketing forms. - -**Parameters** - -- **included_form_types** (`array[string]`, optional) List of form types to include in results, e.g., 'hubspot', 'workflow', etc. -- **paging_cursor_token** (`string`, optional) The token indicating the cursor position for paginated results. Use `paging.next.after` from the previous response to fetch more results. -- **results_per_page** (`integer`, optional) Specify the maximum number of forms to retrieve per page. -- **return_only_archived_forms** (`boolean`, optional) Set to true to return only archived forms in the results. - -## HubspotMarketingApi.CreateMarketingForm - -
- - -Create a new marketing form in HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.GetEmailStatistics - -
- - -Get aggregated email statistics in a specified time span. - -**Parameters** - -This tool does not take any parameters. - -## HubspotMarketingApi.PublishHubspotEmail - -
- - -Publish a HubSpot marketing email. - -**Parameters** - -- **hubspot_email_id** (`string`, required) The unique identifier for the HubSpot marketing email to publish. - -## HubspotMarketingApi.CreateAbTestEmailVariation - -
- - -Create a new variation for an email A/B test. - -**Parameters** - -- **email_content_id** (`string`, required) ID of the email content to create a variation for A/B testing. -- **variation_name** (`string`, required) The name of the new email variation for the A/B test. Provide a descriptive name to easily identify this variation. - -## HubspotMarketingApi.FetchEmailStatistics - -
- - -Fetch aggregated email statistics in specified intervals. - -**Parameters** - -This tool does not take any parameters. - -## HubspotMarketingApi.GetEmailAbTestVariation - -
- - -Retrieve the variation of an A/B test marketing email. - -**Parameters** - -- **email_identifier** (`string`, required) The unique identifier of the marketing email to obtain its A/B test variation. - -## HubspotMarketingApi.ResetEmailDraftToLive - -
- - -Reset an email draft to match the live version. - -**Parameters** - -- **email_id** (`string`, required) The unique identifier for the email draft to be reset. This is a string value used to specify which draft to revert. - -## HubspotMarketingApi.RestoreEmailRevisionToDraft - -
- - -Restore a previous email revision to draft state. - -**Parameters** - -- **email_identifier** (`string`, required) The unique identifier of the marketing email whose revision is to be restored to draft. This should match the specific email ID format used by HubSpot. -- **revision_id** (`string`, required) The unique identifier of the email revision to be restored to draft state. - -## HubspotMarketingApi.RetrieveEmailDraft - -
- - -Retrieve the draft version of a specified email. - -**Parameters** - -- **email_id** (`string`, required) The unique identifier of the email to retrieve the draft for. This ID is used to specify which email's draft or published version should be accessed. - -## HubspotMarketingApi.UpdateEmailDraft - -
- - -Create or update the draft version of a marketing email. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **email_id** (`string`, optional) The unique identifier of the marketing email to update or create a draft for. This is required to specify which email draft you are modifying. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.GetEmailRevisions - -
- - -Retrieve all versions of a marketing email. - -**Parameters** - -- **email_id** (`string`, required) The unique identifier of the marketing email to retrieve revisions for. - -## HubspotMarketingApi.UnpublishMarketingEmail - -
- - -Unpublish a HubSpot marketing email. - -**Parameters** - -- **email_identifier** (`string`, required) The unique identifier of the email you wish to unpublish in HubSpot Marketing. - -## HubspotMarketingApi.GetMarketingEmailRevision - -
- - -Retrieve a specific revision of a marketing email. - -**Parameters** - -- **email_id** (`string`, required) The unique identifier for the marketing email. This ID is required to specify which email's revision details to retrieve. -- **email_revision_id** (`string`, required) The unique ID of the specific email revision to retrieve. Provide the revisionId for accessing the exact version. - -## HubspotMarketingApi.CloneHubspotEmail - -
- - -Clone an existing HubSpot marketing email. - -**Parameters** - -- **original_email_id** (`string`, required) The unique identifier of the email you wish to clone in HubSpot. -- **cloned_email_name** (`string`, optional) The new name for the cloned email. This should be a descriptive string to identify the copy. -- **email_language** (`string`, optional) Specify the language for the cloned email, e.g., 'en' for English, 'fr' for French. - -## HubspotMarketingApi.HubspotMarketingEmailFilter - -
- - -Retrieve and filter HubSpot marketing emails. - -**Parameters** - -This tool does not take any parameters. - -## HubspotMarketingApi.CreateMarketingEmail - -
- - -Create a new marketing email in HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.RestoreEmailRevision - -
- - -Restore a previous revision of a marketing email. - -**Parameters** - -- **email_id** (`string`, required) The unique identifier for the marketing email you want to restore. This ID is required to specify which email's revision needs restoration. -- **revision_id** (`string`, required) The unique identifier for the specific revision of the email to be restored. - -## HubspotMarketingApi.GetMarketingEmailDetails - -
- - -Retrieve details for a specific marketing email. - -**Parameters** - -- **email_id** (`string`, required) The unique identifier for the specific marketing email. Required to retrieve email details. - -## HubspotMarketingApi.DeleteMarketingEmail - -
- - -Delete an existing marketing email by ID. - -**Parameters** - -- **email_id** (`string`, required) The unique ID of the marketing email to be deleted. - -## HubspotMarketingApi.UpdateMarketingEmailProperties - -
- - -Change properties of a marketing email. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **email_identifier** (`string`, optional) The unique identifier of the marketing email to be updated. Required to specify which email's properties are being changed. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.GetMarketingEventParticipationsBreakdown - -
- - -Retrieve participations breakdown for a specific marketing event. - -**Parameters** - -- **marketing_event_id** (`integer`, required) The internal id of the marketing event in HubSpot. -- **contact_identifier** (`string`, optional) The identifier of the Contact. It can be an email or internal ID. -- **last_retrieved_position_cursor** (`string`, optional) The cursor indicating the position of the last retrieved item for pagination. -- **participation_state** (`string`, optional) The participation state filter, which can be REGISTERED, CANCELLED, ATTENDED, or NO_SHOW. -- **response_size_limit** (`integer`, optional) Set the maximum number of records to return. Default is 10, maximum is 100. - -## HubspotMarketingApi.RecordMarketingEventAttendance - -
- - -Record participation of HubSpot contacts in a Marketing Event. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **external_event_id** (`string`, optional) The identifier for the marketing event in the external event application. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **new_subscriber_state** (`string`, optional) Specifies the new state of the contact in relation to the marketing event, such as 'register', 'attend', or 'cancel'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **external_account_id** (`string`, optional) The ID identifying the account associated with the marketing event in the external application. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.RecordHubspotSubscriberState - -
- - -Record subscriber state for HubSpot contacts and events. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **external_account_id** (`string`, optional) The account ID associated with this marketing event in the external event application. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **event_id_in_external_app** (`string`, optional) The ID of the marketing event in the external application. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **subscriber_state** (`string`, optional) The new subscriber state for the HubSpot contacts and the specified marketing event, such as 'register', 'attend', or 'cancel'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.GetMarketingEventDetails - -
- - -Retrieve details of a specific marketing event. - -**Parameters** - -- **external_account_id** (`string`, required) The accountId associated with this marketing event in the external event application. -- **marketing_event_id** (`string`, required) The unique identifier of the marketing event in the external application. - -## HubspotMarketingApi.UpsertMarketingEvent - -
- - -Upsert a marketing event in HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **external_event_id** (`string`, optional) The ID of the marketing event in the external application. Used to upsert the event in HubSpot. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.DeleteMarketingEvent - -
- - -Deletes a specified HubSpot marketing event. - -**Parameters** - -- **external_account_id** (`string`, required) The account ID associated with the marketing event to be deleted in the external event application. -- **marketing_event_id** (`string`, required) The ID of the marketing event in the external event application to be deleted. - -## HubspotMarketingApi.UpdateMarketingEventDetails - -
- - -Update details of an existing marketing event. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **external_account_id** (`string`, optional) The account ID associated with this marketing event in the external event application. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **external_event_id** (`string`, optional) The unique identifier of the marketing event in the external event application. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.UpsertMarketingEvents - -
- - -Upsert multiple marketing events in HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.RecordEventParticipationHubspot - -
- - -Record participation of contacts in a HubSpot marketing event. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **external_event_id** (`string`, optional) The ID of the marketing event in the external event application. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **subscriber_state** (`string`, optional) The new subscriber state for HubSpot contacts in the specified event. Options: 'register', 'attend', 'cancel'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **external_account_id** (`string`, optional) The account ID linked to the marketing event in the external event application. Only used when mode is 'execute'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.GetMarketingEventParticipationBreakdown - -
- - -Retrieve the participation breakdown for a marketing event. - -**Parameters** - -- **external_account_id** (`string`, required) The ID associated with the marketing event's account in the external application. -- **external_event_id** (`string`, required) The ID of the marketing event in the external event application. -- **contact_identifier** (`string`, optional) The unique identifier for the contact, such as an email or internal ID. -- **pagination_cursor** (`string`, optional) The cursor indicating the position of the last retrieved item, used for pagination. -- **participation_state_filter** (`string`, optional) The participation state to filter results. Possible values: REGISTERED, CANCELLED, ATTENDED, NO_SHOW. -- **response_size_limit** (`integer`, optional) Maximum number of participations to retrieve. Default is 10, maximum is 100. - -## HubspotMarketingApi.FetchEventDetails - -
- - -Fetch details of a marketing event by its object ID. - -**Parameters** - -- **marketing_event_object_id** (`string`, required) The internal ID of the marketing event in HubSpot. Used to fetch specific event details. - -## HubspotMarketingApi.RemoveMarketingEvent - -
- - -Deletes a specified marketing event by objectId. - -**Parameters** - -- **marketing_event_id** (`string`, required) The internal ID of the marketing event to be deleted in HubSpot. - -## HubspotMarketingApi.ModifyEventInformation - -
- - -Update details of a specific marketing event. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **event_internal_id** (`string`, optional) The internal ID of the marketing event in HubSpot to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.GetMarketingEventAssociatedLists - -
- - -Retrieve lists associated with a specific marketing event. - -**Parameters** - -- **external_account_id** (`string`, required) The account ID associated with the marketing event in the external application. -- **external_event_id** (`string`, required) The ID of the marketing event from the external event application. - -## HubspotMarketingApi.GetMarketingEventLists - -
- - -Retrieve lists associated with a specific marketing event. - -**Parameters** - -- **marketing_event_id** (`string`, required) The internal ID of the marketing event in HubSpot to retrieve associated lists. - -## HubspotMarketingApi.RegisterEventParticipation - -
- - -Logs event participation for contacts using email addresses. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **marketing_event_id** (`string`, optional) The internal ID of the marketing event in HubSpot. It is required to log participation for contacts. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **attendance_state** (`string`, optional) The attendance state for the contact in the event. Options: 'register', 'attend', or 'cancel'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.GetAllMarketingEvents - -
- - -Retrieve all marketing events from the portal. - -**Parameters** - -- **cursor_position_after** (`string`, optional) The cursor indicating the position of the last retrieved item for pagination purposes. -- **response_limit** (`integer`, optional) Sets the maximum number of marketing events to retrieve, between 10 and 100. - -## HubspotMarketingApi.RecordEventAttendance - -
- - -Record participation of HubSpot contacts in a marketing event. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **marketing_event_id** (`string`, optional) The internal ID of the marketing event in HubSpot for which attendance is being recorded. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **attendance_state** (`string`, optional) Specifies the attendance state of the contact: 'register', 'attend', or 'cancel'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.UpdateMarketingEventsBatch - -
- - -Update multiple marketing events by objectId. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.DeleteMarketingEvents - -
- - -Delete multiple marketing events by object ID. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.GetEventParticipationCounters - -
- - -Retrieve participation counters for a specific marketing event. - -**Parameters** - -- **event_id** (`string`, required) The unique identifier for the marketing event in the external application. Required to retrieve participation data. -- **external_account_id** (`string`, required) The account ID associated with the marketing event in the external application. - -## HubspotMarketingApi.SearchMarketingEventsByExternalId - -
- - -Search for marketing events by external ID. - -**Parameters** - -- **external_event_id** (`string`, required) The ID of the marketing event in the external event application used to search for matching events. - -## HubspotMarketingApi.GetMarketingEventParticipationCounters - -
- - -Retrieve participation counters for a marketing event. - -**Parameters** - -- **marketing_event_id** (`integer`, required) The internal ID of the marketing event in HubSpot, required to fetch participation counters. - -## HubspotMarketingApi.RemoveMarketingEvents - -
- - -Delete multiple HubSpot marketing events by specific IDs. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.CancelMarketingEvent - -
- - -Cancel a HubSpot marketing event. - -**Parameters** - -- **external_account_id** (`string`, required) The account ID associated with the marketing event in the external event application. -- **external_event_id** (`string`, required) The ID of the marketing event in the external event application. Required to identify the event to be cancelled. - -## HubspotMarketingApi.AssociateListWithMarketingEvent - -
- - -Associate a list with a marketing event by their IDs. - -**Parameters** - -- **list_id** (`string`, required) The ILS ID of the list to associate with the marketing event. -- **marketing_event_id** (`string`, required) The internal ID of the marketing event in HubSpot for association. - -## HubspotMarketingApi.DisassociateListFromMarketingEvent - -
- - -Disassociate a list from a marketing event using event and list IDs. - -**Parameters** - -- **list_identifier** (`string`, required) The ILS ID of the list to be disassociated from the marketing event. -- **marketing_event_id** (`string`, required) The internal ID of the marketing event in HubSpot to disassociate the list from. - -## HubspotMarketingApi.RecordSubscriberState - -
- - -Record a subscriber's state for a marketing event using email. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **external_account_id** (`string`, optional) The account ID linked to the marketing event in the external application, required for identifying events. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **marketing_event_id** (`string`, optional) The unique identifier for the marketing event in the external application. Required to record subscriber state. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **subscriber_state** (`string`, optional) The new subscriber state for a HubSpot contact in the specified marketing event. Options include 'register', 'attend', or 'cancel'. Required when mode is 'execute', ignored when mode is 'get_request_schema'. -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.LinkListToEvent - -
- - -Associates a marketing list with an event in HubSpot. - -**Parameters** - -- **external_account_id** (`string`, required) The account ID associated with the marketing event in the external event application. -- **external_event_id** (`string`, required) The ID of the marketing event in the external event application. Used to specify which event to associate with the list. -- **ils_list_id** (`string`, required) The ILS ID of the list to associate with the marketing event. - -## HubspotMarketingApi.DisassociateMarketingEventList - -
- - -Disassociate a list from a HubSpot marketing event using IDs. - -**Parameters** - -- **external_account_id** (`string`, required) The account ID linked to the marketing event in the external application. -- **list_id** (`string`, required) The ILS ID of the list to be disassociated from the marketing event. -- **marketing_event_id** (`string`, required) ID of the marketing event in the external application to be disassociated. - -## HubspotMarketingApi.MarkMarketingEventCompleted - -
- - -Mark a marketing event as completed in HubSpot. - -**Parameters** - -- **event_end_datetime** (`string`, required) The date and time when the marketing event ended. Expected in ISO 8601 format. -- **event_start_date_time** (`string`, required) The start date and time of the marketing event, formatted as an ISO 8601 string. -- **external_account_id** (`string`, required) The account ID associated with the marketing event in the external application. -- **marketing_event_id** (`string`, required) The unique ID of the marketing event in the external event application. - -## HubspotMarketingApi.CreateMarketingEvent - -
- - -Create a new marketing event in HubSpot. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.GetContactParticipationsBreakdown - -
- - -Retrieve a contact's event participation details by ID or email. - -**Parameters** - -- **contact_identifier** (`string`, required) The identifier of the contact, which can be either an email or an internal ID. -- **pagination_cursor** (`string`, optional) Cursor for the last retrieved item to manage pagination. -- **participation_state** (`string`, optional) The participation state for the contact. Options: REGISTERED, CANCELLED, ATTENDED, NO_SHOW. -- **response_size_limit** (`integer`, optional) Specify the maximum number of participation records to return. The default is 10, and the maximum is 100. - -## HubspotMarketingApi.FindHubspotMarketingEvents - -
- - -Fetch HubSpot marketing events by externalEventId. - -**Parameters** - -- **external_event_id** (`string`, required) The ID of the marketing event in the external application (externalEventId) to search for. - -## HubspotMarketingApi.SendMarketingEmail - -
- - -Send a template email to a specific recipient. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.SendTransactionalEmail - -
- - -Send a transactional email asynchronously. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMarketingApi.QuerySmtpTokens - -
- - -Retrieve SMTP API tokens by campaign name or emailCampaignId. - -**Parameters** - -- **campaign_name** (`string`, optional) Name of the campaign tied to the SMTP API token to query tokens. -- **email_campaign_id** (`string`, optional) Identifier assigned to the campaign provided during the token creation. Used to retrieve a specific SMTP API token. -- **maximum_tokens_to_return** (`integer`, optional) Specify the maximum number of SMTP API tokens to return in the response. -- **result_pagination_start** (`string`, optional) Specify a starting point for retrieving the next set of results. Use this for paginating through results. - -## HubspotMarketingApi.CreateSmtpApiToken - -
- - -Creates a SMTP API token for transaction emails. - -**Parameters** - -- **campaign_name** (`string`, required) The name of the campaign associated with the SMTP API token. -- **create_contact_for_recipients** (`boolean`, required) Indicates whether a contact should be created for email recipients. Set to true to create a contact. - -## HubspotMarketingApi.ResetPasswordForToken - -
- - -Resets the password for a specified token. - -**Parameters** - -- **token_identifier** (`string`, required) The unique string identifier for the token, used to reset its password. - -## HubspotMarketingApi.GetSmtpTokenById - -
- - -Retrieve details of an SMTP token using its ID. - -**Parameters** - -- **smtp_token_id** (`string`, required) The unique identifier of the SMTP token to be queried. - -## HubspotMarketingApi.DeleteSmtpToken - -
- - -Delete an SMTP token by ID in HubSpot Marketing. - -**Parameters** - -- **smtp_token_id** (`string`, required) The unique identifier of the SMTP token to be deleted, provided during token creation. - -## Reference - -Below is a reference of enumerations used by some of the tools in the HubspotMarketingApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - -## Auth - -The HubspotMarketingApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotMarketingApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider. - - diff --git a/app/en/resources/integrations/sales/hubspot-meetings-api/page.mdx b/app/en/resources/integrations/sales/hubspot-meetings-api/page.mdx deleted file mode 100644 index 4a1cf77d5..000000000 --- a/app/en/resources/integrations/sales/hubspot-meetings-api/page.mdx +++ /dev/null @@ -1,204 +0,0 @@ -# HubspotMeetingsApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The HubspotMeetingsApi MCP Server provides a set of tools for managing meetings through Hubspot's scheduling system. Users can easily schedule, book, and manage meetings with the following capabilities: - -- Schedule meetings using Hubspot's calendar integration. -- Retrieve details necessary for setting up a meeting scheduler. -- List available meeting scheduling links. -- Book meetings directly through Hubspot's platform. -- Fetch upcoming availability times for specific meeting pages. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## HubspotMeetingsApi.ScheduleMeetingHubspot - -
- - -Schedule a meeting using Hubspot's calendar integration. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMeetingsApi.GetMeetingSchedulerDetails - -
- - -Get necessary details for setting up a meeting scheduler. - -**Parameters** - -- **meeting_slug** (`string`, required) A unique identifier for the meeting link, used to retrieve specific scheduler details. - -## HubspotMeetingsApi.ListMeetingSchedulingPages - -
- - -Retrieve a paged list of meeting scheduling links. - -**Parameters** - -This tool does not take any parameters. - -## HubspotMeetingsApi.BookHubspotMeeting - -
- - -Book a meeting using Hubspot's scheduling feature. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -## HubspotMeetingsApi.GetNextMeetingAvailability - -
- - -Fetch the next availability times for a meeting page. - -**Parameters** - -- **availability_page_slug** (`string`, required) The unique slug identifier for the meeting page to check available time slots. - -## Reference - -Below is a reference of enumerations used by some of the tools in the HubspotMeetingsApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - -## Auth - -The HubspotMeetingsApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotMeetingsApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider. - - diff --git a/app/en/resources/integrations/sales/hubspot-users-api/page.mdx b/app/en/resources/integrations/sales/hubspot-users-api/page.mdx deleted file mode 100644 index 0b280a26a..000000000 --- a/app/en/resources/integrations/sales/hubspot-users-api/page.mdx +++ /dev/null @@ -1,264 +0,0 @@ -# HubspotUsersApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The HubspotUsersApi MCP Server provides a comprehensive set of tools for managing users and teams within a HubSpot account. With this server, users can: - -- Retrieve lists of users, teams, and roles associated with the account. -- Create new users with basic permissions. -- Update user information and manage user accounts. -- Remove users from the HubSpot system as needed. - -This server streamlines user management and enhances team collaboration within HubSpot. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## HubspotUsersApi.ViewAccountTeams - -
- - -Retrieve all teams for the account. - -**Parameters** - -This tool does not take any parameters. - -## HubspotUsersApi.GetAccountRoles - -
- - -Retrieve all user roles from an account. - -**Parameters** - -This tool does not take any parameters. - -## HubspotUsersApi.FetchHubspotUsersList - -
- - -Retrieve a list of users from a HubSpot account. - -**Parameters** - -- **page_cursor_after** (`string`, optional) A string token used to retrieve the next page of users, if more than 100 users are available. -- **user_retrieval_limit** (`integer`, optional) Specify the maximum number of users to retrieve from the HubSpot account. - -## HubspotUsersApi.CreateHubspotUser - -
- - -Create a new user in HubSpot with basic permissions. - -**Parameters** - -- **user_email** (`string`, required) The email address of the user to be created in HubSpot. -- **additional_team_ids** (`array[string]`, optional) List of IDs representing the user's additional teams. -- **last_name** (`string`, optional) The last name of the user to be created in HubSpot. -- **primary_team_id** (`string`, optional) The identifier for the user's primary team in HubSpot. -- **send_welcome_email** (`boolean`, optional) Set to true to send a welcome email prompting the user to set a password and log in. -- **user_first_name** (`string`, optional) The first name of the user to be created in HubSpot. -- **user_role_id** (`string`, optional) A string representing the new user's role within HubSpot. - -## HubspotUsersApi.RetrieveHubspotUserById - -
- - -Retrieve Hubspot user details using user ID or email. - -**Parameters** - -- **user_identifier** (`string`, required) Identifier of the Hubspot user to retrieve. It can be the user ID or email based on the `id_property`. -- **user_identifier_property** (`string`, optional) Specifies the property to identify the user: `USER_ID` (default) or `EMAIL`. - -## HubspotUsersApi.UpdateHubspotUserInfo - -
- - -Update information for a specified Hubspot user. - -**Parameters** - -- **user_identifier** (`string`, required) The unique identifier for the user. Can be the user's ID or email, based on the `id_property`. -- **additional_teams_ids** (`array[string]`, optional) An array of strings representing the IDs of the user's additional teams. -- **first_name** (`string`, optional) The first name of the user to update. This should be a string value. -- **last_name** (`string`, optional) The last name of the user to be modified. This is the new value of the user's last name. -- **user_identifier_property** (`string`, optional) Specifies if the user is identified by 'USER_ID' or 'EMAIL'. Default is 'USER_ID'. -- **user_primary_team_id** (`string`, optional) The unique ID for the user's primary team. -- **user_role_id** (`string`, optional) The ID representing the user's role. Used to assign the user a specific role within the system. - -## HubspotUsersApi.RemoveUserHubspot - -
- - -Remove a user from HubSpot using their ID or email. - -**Parameters** - -- **user_identifier** (`string`, required) Identifier of the user to remove from HubSpot. It can be a user ID or an email address. -- **user_identifier_property** (`string`, optional) Specify whether to use `USER_ID` or `EMAIL` to identify the user. - -## Auth - -The HubspotUsersApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotUsersApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider. - - diff --git a/app/en/resources/integrations/sales/hubspot/_meta.tsx b/app/en/resources/integrations/sales/hubspot/_meta.tsx deleted file mode 100644 index bd13949bb..000000000 --- a/app/en/resources/integrations/sales/hubspot/_meta.tsx +++ /dev/null @@ -1,5 +0,0 @@ -export default { - reference: { - title: "Reference", - }, -}; diff --git a/app/en/resources/integrations/sales/hubspot/page.mdx b/app/en/resources/integrations/sales/hubspot/page.mdx deleted file mode 100644 index 500d79ec9..000000000 --- a/app/en/resources/integrations/sales/hubspot/page.mdx +++ /dev/null @@ -1,1371 +0,0 @@ ---- -asIndexPage: true ---- - -# Hubspot - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Hubspot MCP Sever offers pre-built tools for interacting with HubSpot CRM. -Use these tools to automate CRM updates, log interactions, link records, and query HubSpot data for workflows and agents. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Hubspot.GetAllUsers - -
- - -Get all users/owners in the HubSpot portal. - -**Parameters** - -This tool does not take any parameters. - -## Hubspot.GetUserById - -
- - -Get detailed information about a specific user/owner by their ID. - -**Parameters** - -- **owner_id** (`integer`, required) The HubSpot owner/user ID to retrieve - -## Hubspot.WhoAmI - -
- - -Get current user information from HubSpot. - -**Parameters** - -This tool does not take any parameters. - -## Hubspot.ToolkitEnviromentGuidance - -
- - -Get guidance and considerations for using the HubSpot MCP Sever effectively. - -**Parameters** - -This tool does not take any parameters. - -## Hubspot.CreateNoteActivity - -
- - -Create a note engagement activity with required owner and associations. - -**Parameters** - -- **body** (`string`, required) The note content/body. -- **when_occurred** (`string`, required) When the note was created (ISO date format: YYYY-MM-DDTHH:MM:SS). -- **associate_to_contact_id** (`integer`, optional) Contact ID to associate this note with. -- **associate_to_company_id** (`integer`, optional) Company ID to associate this note with. -- **associate_to_deal_id** (`integer`, optional) Deal ID to associate this note with. - -## Hubspot.CreateCallActivity - -
- - -Create a call engagement activity with required owner and associations. - -**Parameters** - -- **title** (`string`, required) Short title for the call. -- **when_occurred** (`string`, required) When the call occurred (ISO date format: YYYY-MM-DDTHH:MM:SS). -- **direction** (`Enum` [HubspotCallDirection](/resources/integrations/sales/hubspot/reference#HubspotCallDirection), optional) Call direction (INBOUND or OUTBOUND). -- **summary** (`string`, optional) Short summary/notes of the call. -- **duration** (`integer`, optional) Call duration in seconds. -- **to_number** (`string`, optional) Phone number called to. -- **from_number** (`string`, optional) Phone number called from. -- **associate_to_contact_id** (`integer`, optional) Contact ID to associate this call with. -- **associate_to_company_id** (`integer`, optional) Company ID to associate this call with. -- **associate_to_deal_id** (`integer`, optional) Deal ID to associate this call with. - -## Hubspot.CreateEmailActivity - -
- - -Create a logged email engagement activity with essential fields including email headers. - -**Parameters** - -- **subject** (`string`, required) Email subject. -- **when_occurred** (`string`, required) When the email occurred (ISO date format: YYYY-MM-DDTHH:MM:SS). -- **from_email** (`string`, required) Sender email address. -- **to_email** (`string`, required) Primary recipient email address. -- **body_text** (`string`, optional) Email body in plain text. -- **body_html** (`string`, optional) Email body in HTML format. -- **from_first_name** (`string`, optional) Sender first name. -- **from_last_name** (`string`, optional) Sender last name. -- **to_first_name** (`string`, optional) Primary recipient first name. -- **to_last_name** (`string`, optional) Primary recipient last name. -- **cc_emails** (`array[string]`, optional) CC recipient email addresses. -- **bcc_emails** (`array[string]`, optional) BCC recipient email addresses. -- **direction** (`Enum` [HubspotEmailDirection](/resources/integrations/sales/hubspot/reference#HubspotEmailDirection), optional) Direction the email was sent (EMAIL, INCOMING_EMAIL, FORWARDED_EMAIL). -- **status** (`Enum` [HubspotEmailStatus](/resources/integrations/sales/hubspot/reference#HubspotEmailStatus), optional) Email status indicating the state of the email. -- **associate_to_contact_id** (`integer`, optional) Contact ID to associate this email with. -- **associate_to_company_id** (`integer`, optional) Company ID to associate this email with. -- **associate_to_deal_id** (`integer`, optional) Deal ID to associate this email with. - -## Hubspot.CreateMeetingActivity - -
- - -Create a meeting with essential fields including separate date and time. - -**Parameters** - -- **title** (`string`, required) Meeting title. -- **start_date** (`string`, required) Start date (YYYY-MM-DD format). -- **start_time** (`string`, required) Start time (HH:MM or HH:MM:SS format). -- **duration** (`string`, optional) Meeting duration in HH:MM format (e.g., 1:30 for 1 hour 30 minutes). -- **location** (`string`, optional) Meeting location. -- **outcome** (`Enum` [HubspotMeetingOutcome](/resources/integrations/sales/hubspot/reference#HubspotMeetingOutcome), optional) Meeting outcome. -- **associate_to_contact_id** (`integer`, optional) Contact ID to associate this meeting with. -- **associate_to_company_id** (`integer`, optional) Company ID to associate this meeting with. -- **associate_to_deal_id** (`integer`, optional) Deal ID to associate this meeting with. - -## Hubspot.CreateCommunicationActivity - -
- - -Create a communication activity for logging communications that are not done via -email, call, or meeting. - -This includes SMS, WhatsApp, LinkedIn messages, physical mail, and custom channel -conversations. -Must be associated with at least one of: contact, company, or deal. -The communication will be assigned to the current user. - -**Parameters** - -- **channel** (`Enum` [HubspotCommunicationChannel](/resources/integrations/sales/hubspot/reference#HubspotCommunicationChannel), required) Communication channel type. -- **when_occurred** (`string`, required) When the communication occurred (ISO date format: YYYY-MM-DDTHH:MM:SS). -- **body_text** (`string`, optional) Full message content. -- **associate_to_contact_id** (`integer`, optional) Contact ID to associate this communication with. -- **associate_to_company_id** (`integer`, optional) Company ID to associate this communication with. -- **associate_to_deal_id** (`integer`, optional) Deal ID to associate this communication with. - -## Hubspot.AssociateActivityToDeal - -
- - -Associate a single activity object to a deal using HubSpot standard association type. - -**Parameters** - -- **activity_type** (`Enum` [HubspotActivityType](/resources/integrations/sales/hubspot/reference#HubspotActivityType), required) Engagement activity type. -- **activity_id** (`integer`, required) The activity object ID -- **deal_id** (`integer`, required) The deal ID to associate to - -## Hubspot.UpdateNoteActivity - -
- - -Update a note activity directly by ID or list matching notes when searching by keywords. - -When using keywords, the tool will return a list of matching notes. Review the matches and call the tool again with the specific note_id to continue with the update. - -**Parameters** - -- **note_id** (`integer`, optional) The note ID to update. Provide either note_id or keywords, not both. -- **keywords** (`string`, optional) Keywords to search for the note content. Provide when note_id is not known. -- **body** (`string`, optional) Updated note content. -- **when_occurred** (`string`, optional) Updated creation timestamp (ISO format: YYYY-MM-DDTHH:MM:SS). -- **matches_limit** (`integer`, optional) Maximum number of notes to return when searching by keywords. Defaults to 5. Max is 20. - -## Hubspot.UpdateCallActivity - -
- - -Update a call activity directly by ID or list matching calls when searching by keywords. - -When using keywords, the tool will return a list of matching calls. Review the matches and call the tool again with the specific call_id to continue with the update. - -**Parameters** - -- **call_id** (`integer`, optional) The call activity ID to update. Provide either call_id or keywords, not both. -- **keywords** (`string`, optional) Keywords to search for call summaries or titles. Provide when call_id is not known. -- **title** (`string`, optional) Updated call title. -- **direction** (`Enum` [HubspotCallDirection](/resources/integrations/sales/hubspot/reference#HubspotCallDirection), optional) Updated call direction. -- **summary** (`string`, optional) Updated call summary. -- **duration** (`integer`, optional) Updated call duration in seconds. -- **to_number** (`string`, optional) Updated number called to. -- **from_number** (`string`, optional) Updated number called from. -- **when_occurred** (`string`, optional) Updated call timestamp (ISO format: YYYY-MM-DDTHH:MM:SS). -- **matches_limit** (`integer`, optional) Maximum number of calls to return when searching by keywords. Defaults to 5. Max is 20. - -## Hubspot.UpdateEmailActivity - -
- - -Update an email activity directly by ID or list matching emails when searching by keywords. - -When using keywords, the tool will return a list of matching emails. Review the matches and call the tool again with the specific email_id to continue with the update. - -**Parameters** - -- **email_id** (`integer`, optional) The email activity ID to update. Provide either email_id or keywords, not both. -- **keywords** (`string`, optional) Keywords to search for email subjects or body text. Provide when email_id is not known. -- **subject** (`string`, optional) Updated email subject. -- **direction** (`Enum` [HubspotEmailDirection](/resources/integrations/sales/hubspot/reference#HubspotEmailDirection), optional) Updated email direction. -- **status** (`Enum` [HubspotEmailStatus](/resources/integrations/sales/hubspot/reference#HubspotEmailStatus), optional) Updated email status. -- **body_text** (`string`, optional) Updated plain-text body. -- **body_html** (`string`, optional) Updated HTML body. -- **when_occurred** (`string`, optional) Updated email timestamp (ISO format: YYYY-MM-DDTHH:MM:SS). -- **matches_limit** (`integer`, optional) Maximum number of emails to return when searching by keywords. Defaults to 5. Max is 20. - -## Hubspot.UpdateMeetingActivity - -
- - -Update a meeting activity directly by ID or list matching meetings when searching by keywords. - -When using keywords, the tool will return a list of matching meetings. Review the matches and call the tool again with the specific meeting_id to continue with the update. - -**Parameters** - -- **meeting_id** (`integer`, optional) The meeting activity ID to update. Provide either meeting_id or keywords, not both. -- **keywords** (`string`, optional) Keywords to search for meeting titles. Provide when meeting_id is not known. -- **title** (`string`, optional) Updated meeting title. -- **start_date** (`string`, optional) Updated start date (YYYY-MM-DD). -- **start_time** (`string`, optional) Updated start time (HH:MM or HH:MM:SS). -- **duration** (`string`, optional) Updated duration in HH:MM format. -- **location** (`string`, optional) Updated meeting location. -- **outcome** (`Enum` [HubspotMeetingOutcome](/resources/integrations/sales/hubspot/reference#HubspotMeetingOutcome), optional) Updated meeting outcome. -- **matches_limit** (`integer`, optional) Maximum number of meetings to return when searching by keywords. Defaults to 5. Max is 20. - -## Hubspot.UpdateCommunicationActivity - -
- - -Update a communication activity by ID or list matching communications when searching by keywords. - -When using keywords, the tool will return a list of matching communications. Review the matches and call the tool again with the specific communication_id to continue with the update. - -**Parameters** - -- **communication_id** (`integer`, optional) The communication activity ID to update. Provide either communication_id or keywords, not both. -- **keywords** (`string`, optional) Keywords to search for communication body text. Provide when communication_id is not known. -- **channel** (`Enum` [HubspotCommunicationChannel](/resources/integrations/sales/hubspot/reference#HubspotCommunicationChannel), optional) Updated communication channel. -- **body_text** (`string`, optional) Updated message body. -- **when_occurred** (`string`, optional) Updated timestamp (ISO format: YYYY-MM-DDTHH:MM:SS). -- **matches_limit** (`integer`, optional) Maximum number of communications to return when searching by keywords. Defaults to 5. Max is 20. - -## Hubspot.GetContactDataByKeywords - -
- - -Retrieve contact data with associated companies, deals, calls, emails, - -**Parameters** - -- **keywords** (`string`, required) The keywords to search for contacts. It will match against the contact's first and last name, email addresses, phone numbers, and company name. -- **limit** (`integer`, optional) The maximum number of contacts to return. Defaults to 10. Max is 100. -- **next_page_token** (`string`, optional) The token to get the next page of results. Defaults to None (returns first page of results) - -## Hubspot.CreateContact - -
- - -Create a contact associated with a company. - -**Parameters** - -- **company_id** (`integer`, required) The ID of the company to create the contact for. -- **first_name** (`string`, required) The first name of the contact. -- **last_name** (`string`, optional) The last name of the contact. -- **email** (`string`, optional) The email address of the contact. -- **phone** (`string`, optional) The phone number of the contact. -- **mobile_phone** (`string`, optional) The mobile phone number of the contact. -- **job_title** (`string`, optional) The job title of the contact. - -## Hubspot.UpdateContact - -
- - -Update a contact directly by ID or list matching contacts when searching by keywords. - -When using keywords, the tool will return a list of matching contacts. Review the matches and call the tool again with the specific contact_id to continue with the update. - -**Parameters** - -- **contact_id** (`integer`, optional) The ID of the contact to update. Provide either contact_id or keywords, not both. -- **keywords** (`string`, optional) Keywords to search for the contact (name, email, phone). Provide when contact_id is not known. -- **first_name** (`string`, optional) The first name of the contact. -- **last_name** (`string`, optional) The last name of the contact. -- **email** (`string`, optional) The email address of the contact. -- **phone** (`string`, optional) The phone number of the contact. -- **mobile_phone** (`string`, optional) The mobile phone number of the contact. -- **job_title** (`string`, optional) The job title of the contact. -- **matches_limit** (`integer`, optional) The maximum number of contacts to return when searching by keywords. Defaults to 5. Max is 20. - -## Hubspot.ListContacts - -
- - -List contacts with optional filtering by company ID or deal ID, with pagination support. - -**Parameters** - -- **limit** (`integer`, optional) The maximum number of contacts to return. Defaults to 10. Max is 50. -- **company_id** (`integer`, optional) Filter contacts by company ID. Defaults to None (no filtering). -- **deal_id** (`integer`, optional) Filter contacts by deal ID. Defaults to None (no filtering). -- **sort_order** (`Enum` [HubspotSortOrder](/resources/integrations/sales/hubspot/reference#HubspotSortOrder), optional) Sort order for results. Defaults to LATEST_MODIFIED. -- **next_page_token** (`string`, optional) The token to get the next page of results. Defaults to None (returns first page of results) - -## Hubspot.GetDealDataByKeywords - -
- - -Retrieve deal data with associated contacts, companies, calls, emails, - -**Parameters** - -- **keywords** (`string`, required) The keywords to search for deals. It will match against the deal name and description. -- **limit** (`integer`, optional) The maximum number of deals to return. Defaults to 10. Max is 10. -- **next_page_token** (`string`, optional) The token to get the next page of results. Defaults to None (returns first page of results) - -## Hubspot.CreateDeal - -
- - -Create a new deal in HubSpot. - -**Parameters** - -- **deal_name** (`string`, required) The deal name (required) -- **deal_amount** (`number`, optional) The deal amount/value -- **deal_stage** (`string`, optional) The deal stage -- **deal_type** (`Enum` [HubspotDealType](/resources/integrations/sales/hubspot/reference#HubspotDealType), optional) The deal type. -- **expected_close_date** (`string`, optional) Expected close date in YYYY-MM-DD format -- **pipeline_id** (`string`, optional) Pipeline id. Use 'default' for default pipeline or pass a pipeline id (integer) -- **deal_owner** (`string`, optional) The deal owner user ID -- **priority_level** (`Enum` [HubspotDealPriority](/resources/integrations/sales/hubspot/reference#HubspotDealPriority), optional) Priority level. -- **deal_description** (`string`, optional) The deal description - -## Hubspot.UpdateDeal - -
- - -Update a deal directly by ID or list matching deals when searching by keywords. - -When using keywords, the tool will return a list of matching deals. Review the matches and call the tool again with the specific deal_id to continue with the update. - -**Parameters** - -- **deal_id** (`integer`, optional) The ID of the deal to update. Provide either deal_id or keywords, not both. -- **keywords** (`string`, optional) Keywords to search for the deal (name, description). Provide when deal_id is not known. -- **deal_name** (`string`, optional) The deal name. -- **deal_amount** (`number`, optional) The deal amount/value. -- **deal_stage** (`string`, optional) The deal stage ID. -- **deal_type** (`string`, optional) The deal type. Accepts enum values as strings (e.g., 'newbusiness', 'existingbusiness'). -- **expected_close_date** (`string`, optional) Expected close date in YYYY-MM-DD format. -- **deal_owner** (`string`, optional) The deal owner user ID. -- **priority_level** (`string`, optional) Priority level. Accepts enum values as strings (e.g., 'low', 'medium', 'high'). -- **deal_description** (`string`, optional) The deal description. -- **matches_limit** (`integer`, optional) The maximum number of deals to return when searching by keywords. Defaults to 5. Max is 20. - -## Hubspot.UpdateDealCloseDate - -
- - -Update the expected close date of an existing deal in HubSpot. - -**Parameters** - -- **deal_id** (`integer`, required) The ID of the deal to update -- **expected_close_date** (`string`, required) New expected close date in YYYY-MM-DD format - -## Hubspot.UpdateDealStage - -
- - -Updates a deal's stage, validating against the current pipeline if provided - -**Parameters** - -- **deal_id** (`integer`, required) The ID of the deal to update -- **deal_stage** (`string`, required) New deal stage ID -- **current_pipeline_id** (`string`, optional) Current pipeline id for this deal, if already known (skips fetching the deal) -- **allow_pipeline_change** (`boolean`, optional) If true, allows changing the deal's pipeline when the stage belongs to another pipeline - -## Hubspot.GetDealById - -
- - -Retrieve a specific deal by its ID from HubSpot. - -**Parameters** - -- **deal_id** (`integer`, required) The ID of the deal to retrieve - -## Hubspot.AssociateContactToDeal - -
- - -Associate a contact with an existing deal in HubSpot. - -**Parameters** - -- **deal_id** (`integer`, required) The ID of the deal to associate the contact with -- **contact_id** (`integer`, required) The ID of the contact to associate with the deal - -## Hubspot.ListDeals - -
- - -List deals with optional filtering by contact ID or company ID, with pagination support. - -**Parameters** - -- **limit** (`integer`, optional) The maximum number of deals to return. Defaults to 10. Max is 50. -- **contact_id** (`integer`, optional) Filter deals by contact ID. Defaults to None (no filtering). -- **company_id** (`integer`, optional) Filter deals by company ID. Defaults to None (no filtering). -- **sort_order** (`Enum` [HubspotSortOrder](/resources/integrations/sales/hubspot/reference#HubspotSortOrder), optional) Sort order for results. Defaults to LATEST_MODIFIED. -- **next_page_token** (`string`, optional) The token to get the next page of results. Defaults to None (returns first page of results) - -## Hubspot.GetNoteDataByKeywords - -
- - -Search for note activities by search terms in NOTE object properties. - -**Parameters** - -- **search_terms** (`string`, required) Search phrase or terms to find in NOTE properties. -- **limit** (`integer`, optional) The maximum number of notes to return. Defaults to 10. Max is 50. -- **truncate_big_strings** (`boolean`, optional) Whether to truncate string properties longer than 100 characters. Defaults to False. -- **next_page_token** (`string`, optional) The token to get the next page of results. Defaults to None (returns first page of results) - -## Hubspot.GetCallDataByKeywords - -
- - -Search for call activities by search terms in CALL object properties. - -**Parameters** - -- **search_terms** (`string`, required) Search phrase or terms to find in CALL properties. -- **limit** (`integer`, optional) The maximum number of calls to return. Defaults to 10. Max is 50. -- **truncate_big_strings** (`boolean`, optional) Whether to truncate string properties longer than 100 characters. Defaults to False. -- **next_page_token** (`string`, optional) The token to get the next page of results. Defaults to None (returns first page of results) - -## Hubspot.GetEmailDataByKeywords - -
- - -Search for email activities by search terms in EMAIL object properties. - -**Parameters** - -- **search_terms** (`string`, required) Search phrase or terms to find in EMAIL properties. -- **limit** (`integer`, optional) The maximum number of emails to return. Defaults to 10. Max is 50. -- **truncate_big_strings** (`boolean`, optional) Whether to truncate string properties longer than 100 characters. Defaults to False. -- **next_page_token** (`string`, optional) The token to get the next page of results. Defaults to None (returns first page of results) - -## Hubspot.GetMeetingDataByKeywords - -
- - -Search for meeting activities by search terms in MEETING object properties. - -**Parameters** - -- **search_terms** (`string`, required) Search phrase or terms to find in MEETING properties. -- **limit** (`integer`, optional) The maximum number of meetings to return. Defaults to 10. Max is 50. -- **truncate_big_strings** (`boolean`, optional) Whether to truncate string properties longer than 100 characters. Defaults to False. -- **next_page_token** (`string`, optional) The token to get the next page of results. Defaults to None (returns first page of results) - -## Hubspot.GetTaskDataByKeywords - -
- - -Search for task activities by search terms in TASK object properties. - -**Parameters** - -- **search_terms** (`string`, required) Search phrase or terms to find in TASK properties. -- **limit** (`integer`, optional) The maximum number of tasks to return. Defaults to 10. Max is 50. -- **truncate_big_strings** (`boolean`, optional) Whether to truncate string properties longer than 100 characters. Defaults to False. -- **next_page_token** (`string`, optional) The token to get the next page of results. Defaults to None (returns first page of results) - -## Hubspot.GetCommunicationDataByKeywords - -
- - -Search for communication activities by search terms in COMMUNICATION object properties. - -**Parameters** - -- **search_terms** (`string`, required) Search phrase or terms to find in COMMUNICATION properties. -- **limit** (`integer`, optional) The maximum number of communications to return. Defaults to 10. Max is 50. -- **truncate_big_strings** (`boolean`, optional) Whether to truncate string properties longer than 100 characters. Defaults to False. -- **next_page_token** (`string`, optional) The token to get the next page of results. Defaults to None (returns first page of results) - -## Hubspot.GetCompanyDataByKeywords - -
- - -Retrieve company data with associated contacts, deals, calls, emails, - -**Parameters** - -- **keywords** (`string`, required) The keywords to search for companies. It will match against the company name, phone, and website. -- **limit** (`integer`, optional) The maximum number of companies to return. Defaults to 10. Max is 10. -- **next_page_token** (`string`, optional) The token to get the next page of results. Defaults to None (returns first page of results) - -## Hubspot.CreateCompany - -
- - -Create a new company in HubSpot. - -**Parameters** - -- **company_name** (`string`, required) The company name (required) -- **web_domain** (`string`, optional) The company web domain (e.g., example.com) -- **industry_type** (`string`, optional) The company industry type (case-insensitive). -- **company_city** (`string`, optional) The company city location -- **company_state** (`string`, optional) The company state or province -- **company_country** (`string`, optional) The company country -- **phone_number** (`string`, optional) The company main phone number -- **website_url** (`string`, optional) The company website URL - -## Hubspot.UpdateCompany - -
- - -Update a company directly by ID or list matching companies when searching by keywords. - -When using keywords, the tool will return a list of matching companies. Review the matches and call the tool again with the specific company_id to continue with the update. - -**Parameters** - -- **company_id** (`integer`, optional) The ID of the company to update. Provide either company_id or keywords, not both. -- **keywords** (`string`, optional) Keywords to search for the company (name, domain, website). Provide when company_id is not known. -- **company_name** (`string`, optional) The company name. -- **web_domain** (`string`, optional) The company web domain (e.g., example.com). -- **industry_type** (`string`, optional) The company industry type (case-insensitive). -- **company_city** (`string`, optional) The company city location. -- **company_state** (`string`, optional) The company state or province. -- **company_country** (`string`, optional) The company country. -- **phone_number** (`string`, optional) The company main phone number. -- **website_url** (`string`, optional) The company website URL. -- **matches_limit** (`integer`, optional) The maximum number of companies to return when searching by keywords. Defaults to 5. Max is 20. - -## Hubspot.ListCompanies - -
- - -List companies with pagination support. - -**Parameters** - -- **limit** (`integer`, optional) The maximum number of companies to return. Defaults to 10. Max is 50. -- **sort_order** (`Enum` [HubspotSortOrder](/resources/integrations/sales/hubspot/reference#HubspotSortOrder), optional) Sort order for results. Defaults to LATEST_MODIFIED. -- **next_page_token** (`string`, optional) The token to get the next page of results. Defaults to None (returns first page of results) - -## Hubspot.GetAvailableIndustryTypes - -
- - -Get all available industry types for HubSpot companies. - -**Parameters** - -This tool does not take any parameters. - -## Hubspot.GetDealPipelines - -
- - -List HubSpot deal pipelines with their stages, optionally filtered by a search string. - -**Parameters** - -- **search** (`string`, optional) Optional case-insensitive search string to filter pipelines by id or label - -## Hubspot.GetDealPipelineStages - -
- - -List stages for a specific HubSpot deal pipeline. - -**Parameters** - -- **pipeline_id** (`string`, required) The pipeline id (e.g., 'default' or a pipeline GUID) - -## Auth - -The Arcade Cloud Platform offers a default [Hubspot auth provider](/references/auth-providers/hubspot). If you use it, there's nothing to configure. Your users will see `Arcade` as the name of the application requesting permission. - - diff --git a/app/en/resources/integrations/sales/hubspot/reference/page.mdx b/app/en/resources/integrations/sales/hubspot/reference/page.mdx deleted file mode 100644 index c8725f1fa..000000000 --- a/app/en/resources/integrations/sales/hubspot/reference/page.mdx +++ /dev/null @@ -1,64 +0,0 @@ -# Hubspot Reference - -Below is a reference of enumerations used by some of the tools in the Hubspot MCP Server: - -## HubspotCallDirection - -- **INBOUND**: `INBOUND` -- **OUTBOUND**: `OUTBOUND` - -## HubspotEmailDirection - -- **EMAIL**: `EMAIL` -- **INCOMING_EMAIL**: `INCOMING_EMAIL` -- **FORWARDED_EMAIL**: `FORWARDED_EMAIL` - -## HubspotEmailStatus - -- **BOUNCED**: `BOUNCED` -- **FAILED**: `FAILED` -- **SCHEDULED**: `SCHEDULED` -- **SENDING**: `SENDING` -- **SENT**: `SENT` - -## HubspotMeetingOutcome - -- **SCHEDULED**: `SCHEDULED` -- **COMPLETED**: `COMPLETED` -- **RESCHEDULED**: `RESCHEDULED` -- **NO_SHOW**: `NO_SHOW` -- **CANCELED**: `CANCELED` - -## HubspotCommunicationChannel - -- **SMS**: `SMS` -- **WHATS_APP**: `WHATS_APP` -- **LINKEDIN_MESSAGE**: `LINKEDIN_MESSAGE` -- **PHYSICAL_MAIL**: `PHYSICAL_MAIL` -- **CUSTOM_CHANNEL_CONVERSATION**: `CUSTOM_CHANNEL_CONVERSATION` - -## HubspotActivityType - -- **NOTE**: `note` -- **CALL**: `call` -- **EMAIL**: `email` -- **MEETING**: `meeting` -- **TASK**: `task` -- **COMMUNICATION**: `communication` - -## HubspotSortOrder - -- **LATEST_MODIFIED**: `LATEST_MODIFIED` -- **OLDEST_MODIFIED**: `OLDEST_MODIFIED` -- **ALPHABETICAL**: `ALPHABETICAL` - -## HubspotDealType - -- **NEW_BUSINESS**: `newbusiness` -- **EXISTING_BUSINESS**: `existingbusiness` - -## HubspotDealPriority - -- **LOW**: `low` -- **MEDIUM**: `medium` -- **HIGH**: `high` diff --git a/app/en/resources/integrations/sales/salesforce/page.mdx b/app/en/resources/integrations/sales/salesforce/page.mdx deleted file mode 100644 index 5edd14ca3..000000000 --- a/app/en/resources/integrations/sales/salesforce/page.mdx +++ /dev/null @@ -1,199 +0,0 @@ -# Salesforce CRM - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import { Callout } from "nextra/components"; - - - At this time, Arcade does not offer a default Salesforce Auth Provider. To use - Salesforce auth and MCP Sever, you must create a custom Auth Provider with your - own Salesforce OAuth 2.0 credentials as documented in [Salesforce Auth - Provider](/references/auth-providers/salesforce). - - - - - - -The Arcade Salesforce CRM MCP Server provides a pre-built set of tools for interacting with Accounts, Leads, Contacts, etc in the Salesforce CRM. These tools make it easy to build agents and AI apps that can: - -- Search for Accounts and Contacts by keywords or retrieve them by ID -- Read information about Accounts, such as company metadata, opportunities, deals, etc. -- Read information about Contacts, such as name, email addresses, phone numbers, email messages, call logs, notes, meetings, tasks, etc. -- Create contacts - -## Install and Run the Arcade Engine - -At this time, you need to [self-host](/references/auth-providers/salesforce) the Arcade Engine to use the Salesforce MCP Sever. Follow the step-by-step instructions in the [Salesforce Auth Provider](/references/auth-providers/salesforce) page. - -## Install - -```bash -pip install arcade_salesforce -``` - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - - - In order to use the Salesforce MCP Sever, you must [self-host the Arcade - Engine](/guides/deployment-hosting/configure-engine) and [configure the Salesforce - auth provider](/references/auth-providers/salesforce). The Arcade Engine is - available at `http://localhost:9099` by default. In the code examples below, - if necessary, adjust the `base_url` (in Python) or `baseURL` (in JavaScript) - parameter in the `Arcade` client constructor to match your environment. - - -## Salesforce.GetAccountDataByKeywords - -
- - -Searches for accounts in Salesforce and returns them with related info: contacts, leads, notes, calls, opportunities, tasks, emails, and events (up to 10 items of each type). - -**Parameters** - -- **query** _(string, required)_ The query to search for accounts. MUST be longer than one character. It will match the keywords against all account fields, such as name, website, phone, address, etc. E.g. 'Acme'. -- **limit** _(int, optional, Defaults to `10`)_ The maximum number of accounts to return. Defaults to 10. Maximum allowed is 10. -- **page** _(string, optional)_ The page number to return. Defaults to 1 (first page of results)." - -## Salesforce.GetAccountDataByID - -
- - -Gets the account with related info: contacts, leads, notes, calls, opportunities, tasks, emails, and events (up to 10 items of each type). - -**Parameters** - -- **account_id** _(string, required)_ The ID of the account to get data for. - -## Salesforce.CreateContact - -
- - -Creates a contact in Salesforce associated with an account. - -**Parameters** - -- **account_id** _(string, required)_ The ID of the account to create the contact for. -- **first_name** _(string, required)_ The first name of the contact. -- **last_name** _(string, required)_ The last name of the contact. -- **email** _(string, required)_ The email address of the contact. -- **phone** _(string, optional)_ The phone number of the contact. -- **mobile_phone** _(string, optional)_ The mobile phone number of the contact. -- **title** _(string, optional)_ The title of the contact. E.g. 'CEO', 'Sales Director', 'CTO', etc. -- **department** _(string, optional)_ The department of the contact. E.g. 'Marketing', 'Sales', 'IT', etc.". -- **description** _(string, optional)_ A description of the contact. - -## Self-hosting the Arcade Engine with Salesforce Auth - -At this time, Arcade Cloud does not support Salesforce auth. - -In order to use the Salesforce MCP Sever (or develop custom tools for Salesforce), you have to [self-host the Arcade Engine](/guides/deployment-hosting/configure-engine) and [configure the Salesforce auth provider](/references/auth-providers/salesforce) in your engine configuration. diff --git a/app/en/resources/integrations/search/[toolkitId]/_meta.tsx b/app/en/resources/integrations/search/[toolkitId]/_meta.tsx new file mode 100644 index 000000000..ce7f0efde --- /dev/null +++ b/app/en/resources/integrations/search/[toolkitId]/_meta.tsx @@ -0,0 +1,13 @@ +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "*": { + theme: { + breadcrumb: false, + toc: false, + copyPage: false, + }, + }, +}; + +export default meta; diff --git a/app/en/resources/integrations/search/[toolkitId]/page-impl.tsx b/app/en/resources/integrations/search/[toolkitId]/page-impl.tsx new file mode 100644 index 000000000..2d8dd42c5 --- /dev/null +++ b/app/en/resources/integrations/search/[toolkitId]/page-impl.tsx @@ -0,0 +1,10 @@ +import { createToolkitDocsPage } from "@/app/en/resources/integrations/_lib/toolkit-docs-page"; + +export const dynamicParams = false; + +const { Page, generateMetadata, generateStaticParams } = + createToolkitDocsPage("search"); + +export { generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/search/[toolkitId]/page.mdx b/app/en/resources/integrations/search/[toolkitId]/page.mdx new file mode 100644 index 000000000..ca97c319f --- /dev/null +++ b/app/en/resources/integrations/search/[toolkitId]/page.mdx @@ -0,0 +1,14 @@ +--- +title: "MCP server" +description: "Generated MCP server documentation." +--- + +import Page, { + dynamicParams, + generateMetadata, + generateStaticParams, +} from "./page-impl"; + +export { dynamicParams, generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/search/_meta.tsx b/app/en/resources/integrations/search/_meta.tsx index 4ff952bd0..2568520c0 100644 --- a/app/en/resources/integrations/search/_meta.tsx +++ b/app/en/resources/integrations/search/_meta.tsx @@ -1,43 +1,57 @@ -/** biome-ignore-all lint/style/useNamingConvention: This is ok for the meta file */ import type { MetaRecord } from "nextra"; const meta: MetaRecord = { - "*": { - theme: { - breadcrumb: true, - toc: true, - copyPage: true, - }, - }, - google_finance: { + "-- Optimized": { + type: "separator", + title: "Optimized", + }, + googlefinance: { title: "Google Finance", + href: "/en/resources/integrations/search/googlefinance", }, - google_flights: { + googleflights: { title: "Google Flights", + href: "/en/resources/integrations/search/googleflights", }, - google_hotels: { + googlehotels: { title: "Google Hotels", + href: "/en/resources/integrations/search/googlehotels", }, - google_jobs: { + googlejobs: { title: "Google Jobs", + href: "/en/resources/integrations/search/googlejobs", }, - google_maps: { + googlemaps: { title: "Google Maps", + href: "/en/resources/integrations/search/googlemaps", }, - google_news: { + googlenews: { title: "Google News", + href: "/en/resources/integrations/search/googlenews", }, - google_search: { + googlesearch: { title: "Google Search", + href: "/en/resources/integrations/search/googlesearch", }, - google_shopping: { + googleshopping: { title: "Google Shopping", + href: "/en/resources/integrations/search/googleshopping", }, walmart: { title: "Walmart", + href: "/en/resources/integrations/search/walmart", }, youtube: { - title: "YouTube", + title: "Youtube", + href: "/en/resources/integrations/search/youtube", + }, + "-- Starter": { + type: "separator", + title: "Starter", + }, + exaapi: { + title: "Exa API", + href: "/en/resources/integrations/search/exaapi", }, }; diff --git a/app/en/resources/integrations/search/exa-api/page.mdx b/app/en/resources/integrations/search/exa-api/page.mdx deleted file mode 100644 index c6b19640a..000000000 --- a/app/en/resources/integrations/search/exa-api/page.mdx +++ /dev/null @@ -1,1519 +0,0 @@ -# ExaApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The ExaApi MCP Server offers a comprehensive suite of tools for conducting searches, managing websets, and handling research requests. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## ExaApi.PerformExaSearch - -
- - -Conduct a search using Exa and retrieve relevant results. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.FindSimilarLinks - -
- - -Find similar links to a given link. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.GetContentDetails - -
- - -Retrieve details about specific content. - -**Parameters** - -- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation -- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.GenerateAnswerSummary - -
- - -Retrieve direct answers or detailed summaries with citations. - -**Parameters** - -- **search_query** (`string`, required) The question or query to be answered or summarized. -- **enable_streaming_response** (`boolean`, optional) Return the response as a server-sent events (SSE) stream if set to true. -- **include_full_text** (`boolean`, optional) If true, the response includes full text content in the search results. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.ListResearchRequests - -
- - -Retrieve a paginated list of research requests. - -**Parameters** - -- **pagination_cursor** (`string`, optional) A string representing the position in the paginated results to continue retrieving data from. -- **results_limit** (`number`, optional) Specifies the number of research requests to return in the response. Helps manage pagination effectively. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.CreateResearchRequest - -
- - -Create a new research request. - -**Parameters** - -- **research_request_details** (`json`, required) JSON object containing details of the research request including parameters and criteria. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.GetResearchById - -
- - -Retrieve research information using a specific ID. - -**Parameters** - -- **enable_streaming** (`string`, required) Set to 'true' to receive real-time streaming updates of the research information. -- **event_filter** (`string`, required) Specify the events to filter for in the research retrieval. Accepts a comma-separated list of event types. -- **research_id** (`string`, required) A string representing the unique identifier of the research to be retrieved. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.CreateWebset - -
- - -Create a new Webset with optional configurations. - -**Parameters** - -- **webset_configuration** (`json`, required) A JSON object detailing optional search, import, and enrichment configurations for the Webset. Include any necessary identifiers like `externalId`. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.ListWebsets - -
- - -Retrieve a list of available websets. - -**Parameters** - -- **pagination_cursor** (`string`, optional) A string used to paginate through the list of Websets. -- **websets_return_limit** (`number`, optional) Specify the maximum number of Websets to return in the response. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.GetWebsetDetails - -
- - -Retrieve detailed information about a specific webset. - -**Parameters** - -- **webset_identifier** (`string`, required) The unique identifier or external ID for the Webset to retrieve. -- **resources_to_expand** (`array[string]`, optional) A list of resources to include in the response for additional details. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.UpdateWebset - -
- - -Update details of an existing webset. - -**Parameters** - -- **webset_details** (`json`, required) A JSON object containing the details to update for the webset. This includes any attributes that need to be changed. -- **webset_id** (`string`, required) The unique id or externalId of the Webset to be updated. Ensure it matches a valid Webset. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.DeleteWebset - -
- - -Deletes a Webset and its associated items. - -**Parameters** - -- **webset_identifier** (`string`, required) The unique identifier or external ID of the Webset to delete. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.CancelWebsetOperations - -
- - -Cancel all operations on a specified Webset. - -**Parameters** - -- **webset_identifier** (`string`, required) The ID or external ID of the Webset to cancel operations on. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.PreviewSearchDecomposition - -
- - -Preview and analyze search query decomposition. - -**Parameters** - -- **search_query_details** (`json`, required) A JSON object detailing the search query to preview. It includes elements like the search string and any additional parameters for analysis. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.GetWebsetItem - -
- - -Retrieve a specific Webset Item by ID. - -**Parameters** - -- **webset_identifier** (`string`, required) The ID or external ID of the Webset to identify the desired Webset from which the item is to be retrieved. -- **webset_item_id** (`string`, required) The unique identifier of the Webset item to retrieve. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.DeleteWebsetItem - -
- - -Delete an item from a webset and cancel its enrichment process. - -**Parameters** - -- **webset_identifier** (`string`, required) The ID or external ID of the Webset from which the item will be deleted. -- **webset_item_id** (`string`, required) The unique identifier of the item to be deleted from the webset. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.ListWebsetItems - -
- - -Retrieve a list of items from a specific webset. - -**Parameters** - -- **webset_identifier** (`string`, required) The ID or external ID of the Webset to retrieve items from. -- **pagination_cursor** (`string`, optional) A string used to paginate through the results. Pass this to retrieve the next set of items in the webset. -- **result_limit** (`number`, optional) Specify the number of results to return. This controls the size of the page in a paginated response. -- **source_id** (`string`, optional) The unique identifier for the source from which to retrieve items. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.CreateWebsetEnrichment - -
- - -Create an enrichment for a specified webset. - -**Parameters** - -- **enrichment_details** (`json`, required) A JSON object containing the details required to create the enrichment for the webset. -- **webset_identifier** (`string`, required) The ID or external ID of the webset to enrich. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.UpdateWebsetEnrichment - -
- - -Update an enrichment configuration for a webset. - -**Parameters** - -- **enrichment_configuration_details** (`json`, required) A JSON object containing the details of the enrichment configuration to update. -- **enrichment_configuration_id** (`string`, required) The unique identifier of the enrichment configuration to be updated. -- **webset_identifier** (`string`, required) The identifier of the webset to be updated. Provide the specific name or ID of the webset. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.GetEnrichmentDetails - -
- - -Retrieve detailed information about a specific enrichment. - -**Parameters** - -- **enrichment_id** (`string`, required) The unique identifier for the specific enrichment you want to retrieve within the webset. -- **webset_identifier** (`string`, required) The ID or external ID of the webset to retrieve enrichment details for. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.DeleteEnrichment - -
- - -Delete an enrichment and cancel running processes. - -**Parameters** - -- **enrichment_id** (`string`, required) The unique identifier of the enrichment to be deleted. -- **webset_id** (`string`, required) The ID or external ID of the Webset to identify which enrichment to delete. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.CancelEnrichmentProcess - -
- - -Cancel a running enrichment process. - -**Parameters** - -- **enrichment_id** (`string`, required) The unique identifier of the enrichment process to be canceled. -- **webset_id** (`string`, required) The ID or external ID of the Webset to identify which enrichment process to cancel. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.CreateWebhookForNotifications - -
- - -Create webhooks to receive event notifications. - -**Parameters** - -- **webhook_configuration** (`json`, required) A JSON object detailing the events to monitor and the destination URL for notifications. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.GetWebhooksList - -
- - -Retrieve a paginated list of all webhooks in your account. - -**Parameters** - -- **pagination_cursor** (`string`, optional) The cursor used to navigate through pages of results for webhooks. -- **results_per_page** (`number`, optional) The number of webhooks to return per page, up to a maximum of 200. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.GetWebhookInfo - -
- - -Retrieve details of a webhook using its ID. - -**Parameters** - -- **webhook_id** (`string`, required) The unique identifier for the webhook you want details about. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.UpdateWebhookSettings - -
- - -Update a webhook's settings for events, URL, and metadata. - -**Parameters** - -- **webhook_id** (`string`, required) The unique identifier of the webhook to be updated. -- **webhook_update_request_body** (`json`, required) JSON object containing webhook updates, such as events list, new URL, and metadata. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.RemoveWebhook - -
- - -Remove a webhook from your account. - -**Parameters** - -- **webhook_id** (`string`, required) The unique identifier of the webhook to remove. This is necessary for specifying which webhook to delete. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.ListWebhookAttempts - -
- - -Retrieve and list all webhook attempt records. - -**Parameters** - -- **webhook_id** (`string`, required) The unique identifier for the webhook to retrieve attempt records for. -- **event_type_filter** (`string`, optional) Filter webhook attempts by specifying the type of event, such as 'webset.created' or 'monitor.run.completed'. -- **filter_by_successful_attempts** (`boolean`, optional) Use 'true' to filter for successful webhook attempts and 'false' for unsuccessful ones. -- **pagination_cursor** (`string`, optional) A string used to paginate through the webhook attempt results. -- **results_limit** (`number`, optional) Specify the maximum number of webhook attempt records to return. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.ListSystemEvents - -
- - -Retrieve a list of all system events. - -**Parameters** - -- **created_after** (`string`, optional) Filter events created after or at this timestamp. Use a valid ISO 8601 datetime string in UTC. -- **event_types_filter** (`array[string]`, optional) Filter events by specifying an array of event type names. -- **filter_created_before** (`string`, optional) Filter events created before or at this timestamp (inclusive). Provide a valid ISO 8601 datetime string in UTC. -- **pagination_cursor** (`string`, optional) Cursor for paginating through event results. Use it to navigate through pages of events. -- **results_limit** (`number`, optional) Specify the number of event results to return. This controls the size of the result set for a single request. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.GetEventById - -
- - -Retrieve details of an event using its ID. - -**Parameters** - -- **event_id** (`string`, required) The unique identifier of the event to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.CreateWebsetSearch - -
- - -Create a new search for a specified webset. - -**Parameters** - -- **search_criteria** (`json`, required) JSON object representing new search criteria for the webset. This specifies the parameters or conditions for the new search. -- **webset_id** (`string`, required) The unique identifier for the Webset you want to create a search in. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.GetSearchById - -
- - -Retrieve a search by its ID. - -**Parameters** - -- **search_id** (`string`, required) The ID of the search to retrieve details for. -- **webset_id** (`string`, required) The ID of the Webset to retrieve the specific search. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.CancelRunningSearch - -
- - -Cancels a currently running search operation. - -**Parameters** - -- **search_id** (`string`, required) The ID of the search to cancel. Provide the unique string identifier for the targeted search operation. -- **webset_id** (`string`, required) The ID of the Webset where the search is executing. Use this to specify the Webset to be canceled. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.CreateMonitorForWebsets - -
- - -Create a scheduled monitor to update Websets with fresh data. - -**Parameters** - -- **monitor_configuration** (`json`, required) JSON object describing the configuration for the new monitor, including schedule, search and refresh operations. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.ListWebsiteMonitors - -
- - -Fetch all monitors associated with a website. - -**Parameters** - -- **pagination_cursor** (`string`, optional) The cursor for paginating through the monitor results. -- **results_limit** (`number`, optional) Specifies the maximum number of monitor results to return. Use for pagination. -- **webset_id** (`string`, optional) The unique identifier for the Webset to retrieve monitors for. This is required to specify which website's monitors you want to list. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.GetSpecificMonitor - -
- - -Retrieve details of a specific monitor using its ID. - -**Parameters** - -- **monitor_id** (`string`, required) The unique identifier of the monitor to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.UpdateMonitorConfiguration - -
- - -Update the configuration of a monitor. - -**Parameters** - -- **monitor_configuration_details** (`json`, required) A JSON object containing the new configuration settings for the monitor. -- **monitor_id** (`string`, required) The unique identifier for the monitor to update. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.DeleteMonitor - -
- - -Deletes a specified monitor using its ID. - -**Parameters** - -- **monitor_id** (`string`, required) The unique identifier for the monitor to be deleted. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.ListMonitorRuns - -
- - -Lists all runs for a given monitor. - -**Parameters** - -- **monitor_id** (`string`, required) The ID of the monitor to list all associated runs. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.GetSpecificMonitorRun - -
- - -Retrieve details of a specific monitor run. - -**Parameters** - -- **monitor_id** (`string`, required) The unique identifier of the monitor to retrieve the run for. -- **run_id** (`string`, required) The unique identifier of the specific run to retrieve details for. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.CreateDataImport - -
- - -Initiates a new data import for uploading data into Websets. - -**Parameters** - -- **data_import_details** (`json`, required) The JSON object containing data to import for Websets. This includes details for enrichment, search, or exclusion processes. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.ListImports - -
- - -Retrieve all import entries for the Webset. - -**Parameters** - -- **pagination_cursor** (`string`, optional) String used for paginating through results. Pass it to retrieve the next set of results. -- **results_limit** (`number`, optional) Specify the maximum number of import results to return. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.GetSpecificImport - -
- - -Retrieve details of a specific import. - -**Parameters** - -- **import_id** (`string`, required) The unique identifier for the specific import to retrieve details about. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.UpdateImportsConfiguration - -
- - -Update an import configuration with new settings. - -**Parameters** - -- **import_configuration_details** (`json`, required) JSON object containing the new settings for the import configuration. Include all necessary fields that need to be updated. -- **import_id** (`string`, required) The identifier for the import configuration to be updated. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## ExaApi.DeleteImport - -
- - -Delete an import by its ID. - -**Parameters** - -- **import_id** (`string`, required) The unique identifier of the import to be deleted. - -**Secrets** - -This tool requires the following secrets: `EXA_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets)) - -## Reference - -Below is a reference of enumerations used by some of the tools in the ExaApi MCP Server: - -### ToolMode - -- **GET_REQUEST_SCHEMA**: `get_request_schema` -- **EXECUTE**: `execute` - - diff --git a/app/en/resources/integrations/search/google_finance/page.mdx b/app/en/resources/integrations/search/google_finance/page.mdx deleted file mode 100644 index 215900313..000000000 --- a/app/en/resources/integrations/search/google_finance/page.mdx +++ /dev/null @@ -1,131 +0,0 @@ -# Google Finance - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Google Finance MCP Sever lets you fetch real-time and historical stock data with ease. Use these tools to build intelligent agents and applications that fetch: - -- Stock summary data. -- Historical stock data. - -## Available Tools - - - - - If you need an action that's not listed here, please [contact - us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## GoogleFinance.GetStockSummary - -Retrieve summary information for a given stock using the Google Finance API via SerpAPI. This tool returns the current price and price change from the most recent trading day. - -**Parameters** - -- **`ticker_symbol`** _(string, required)_: The stock ticker, e.g., 'GOOG'. -- **`exchange_identifier`** _(string, required)_: The market identifier, e.g., 'NASDAQ'. - -
- - -## GoogleFinance.GetStockHistoricalData - -Fetch historical data for a given stock over a defined time window. This tool returns the stock's price and volume data along with key events when available. - -**Parameters** - -- **`ticker_symbol`** _(string, required)_: The stock ticker, e.g., 'GOOG'. -- **`exchange_identifier`** _(string, required)_: The market identifier, e.g., 'NASDAQ' or 'NYSE'. -- **`window`** _(enum ([GoogleFinanceWindow](#googlefinancewindow)), optional, defaults to ONE_MONTH)_: Time window for the graph data. - -
- - -## Auth - -The Arcade Google Finance MCP Sever uses the [SerpAPI](https://serpapi.com/) to get stock data from Google Finance. - -- **Secret:** - - `SERP_API_KEY`: Your SerpAPI API key. - - Setting the `SERP_API_KEY` secret is only required if you are - [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're - using Arcade Cloud, the secret is already set for you. To manage your - secrets, go to the [Secrets - page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade - Dashboard. - - ---- - -## Reference - -## GoogleFinanceWindow - -Defines the time window for fetching stock data from Google Finance. - -- **`ONE_DAY`**: Represents a 1-day time window. -- **`FIVE_DAYS`**: Represents a 5-day time window. -- **`ONE_MONTH`**: Represents a 1-month time window. -- **`SIX_MONTHS`**: Represents a 6-month time window. -- **`YEAR_TO_DATE`**: Represents the time from the start of the year to the current date. -- **`ONE_YEAR`**: Represents a 1-year time window. -- **`FIVE_YEARS`**: Represents a 5-year time window. -- **`MAX`**: Represents the maximum available time window. - - diff --git a/app/en/resources/integrations/search/google_flights/page.mdx b/app/en/resources/integrations/search/google_flights/page.mdx deleted file mode 100644 index 69631b269..000000000 --- a/app/en/resources/integrations/search/google_flights/page.mdx +++ /dev/null @@ -1,116 +0,0 @@ -# Google Flights - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Google Flights MCP Sever lets you search for flights with ease. Use these tools to build intelligent agents and applications that: - -- Search for one-way flights. - -## Available Tools - - - -## GoogleFlights.SearchOneWayFlights - -Retrieve flight search results for a one-way flight using Google Flights. - -**Parameters** - -- **`departure_airport_code`** _(string, required)_: The departure airport code. An uppercase 3-letter code. -- **`arrival_airport_code`** _(string, required)_: The arrival airport code. An uppercase 3-letter code. -- **`outbound_date`** _(string, required)_: Flight departure date in YYYY-MM-DD format. -- **`currency_code`** _(string, optional)_: Currency of the returned prices. Defaults to 'USD'. -- **`travel_class`** _(enum ([GoogleFlightsTravelClass](#googleflightstravelclass)), optional)_: Travel class of the flight. Defaults to 'ECONOMY'. -- **`num_adults`** _(int, optional)_: Number of adult passengers. Defaults to 1. -- **`num_children`** _(int, optional)_: Number of child passengers. Defaults to 0. -- **`max_stops`** _(enum ([GoogleFlightsMaxStops](#googleflightsmaxstops)), optional)_: Maximum number of stops (layovers) for the flight. Defaults to any number of stops. -- **`sort_by`** _(enum ([GoogleFlightsSortBy](#googleflightssortby)), optional)_: The sorting order of the results. Defaults to TOP_FLIGHTS. - -
- - -## Auth - -The Arcade Google Flights MCP Sever uses the [SerpAPI](https://serpapi.com/) to search for flights from Google Flights. - -- **Secret:** - - `SERP_API_KEY`: Your SerpAPI API key. - - - Setting the `SERP_API_KEY` secret is only required if you are - [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're - using Arcade Cloud, the secret is already set for you. To manage your secrets, - go to the [Secrets page](https://api.arcade.dev/dashboard/auth/secrets) in the - Arcade Dashboard. - - ---- - -## Reference - -## GoogleFlightsMaxStops - -Defines the maximum number of stops for flights. - -- **`ANY`**: Any number of stops is allowed. -- **`NONSTOP`**: Only nonstop flights are allowed. -- **`ONE`**: Only flights with one stop are allowed. -- **`TWO`**: Only flights with two stops are allowed. - -## GoogleFlightsSortBy - -Defines the sorting options for flight search results. - -- **`TOP_FLIGHTS`**: Sort by the best available flights. -- **`PRICE`**: Sort by the lowest price. -- **`DEPARTURE_TIME`**: Sort by the earliest departure time. -- **`ARRIVAL_TIME`**: Sort by the earliest arrival time. -- **`DURATION`**: Sort by the shortest flight duration. -- **`EMISSIONS`**: Sort by the lowest carbon emissions. - -## GoogleFlightsTravelClass - -Defines the travel class options for flights. - -- **`ECONOMY`**: Economy class. -- **`PREMIUM_ECONOMY`**: Premium economy class. -- **`BUSINESS`**: Business class. -- **`FIRST`**: First class. - - diff --git a/app/en/resources/integrations/search/google_hotels/page.mdx b/app/en/resources/integrations/search/google_hotels/page.mdx deleted file mode 100644 index 9bff4c0f9..000000000 --- a/app/en/resources/integrations/search/google_hotels/page.mdx +++ /dev/null @@ -1,94 +0,0 @@ -# Google Hotels - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Google Hotels MCP Sever lets you search for hotels with ease. Use this tool to build intelligent agents and applications that search for hotels worldwide. - -## Available Tools - - - -## GoogleHotels.SearchHotels - -Retrieve hotel search results using the Google Hotels API. - -**Parameters** - -- **`location`** _(string, required)_: Location to search for hotels, e.g., a city name, a state, etc. -- **`check_in_date`** _(string, required)_: Check-in date in YYYY-MM-DD format. -- **`check_out_date`** _(string, required)_: Check-out date in YYYY-MM-DD format. -- **`query`** _(string, optional)_: Anything that would be used in a regular Google Hotels search. -- **`currency`** _(string, optional)_: Currency code for prices. Defaults to 'USD'. -- **`min_price`** _(int, optional)_: Minimum price per night. Defaults to no minimum. -- **`max_price`** _(int, optional)_: Maximum price per night. Defaults to no maximum. -- **`num_adults`** _(int, optional)_: Number of adults per room. Defaults to 2. -- **`num_children`** _(int, optional)_: Number of children per room. Defaults to 0. -- **`sort_by`** _(enum ([GoogleHotelsSortBy](#googlehotelssortby)), optional)_: The sorting order of the results. Defaults to RELEVANCE. -- **`num_results`** _(int, optional)_: Maximum number of results to return. Defaults to 5. Max 20. - -
- - -## Auth - -The Arcade Google Hotels MCP Sever uses the [SerpAPI](https://serpapi.com/) to search for hotels from Google Hotels. - -- **Secret:** - - `SERP_API_KEY`: Your SerpAPI API key. - - - Setting the `SERP_API_KEY` secret is only required if you are - [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're - using Arcade Cloud, the secret is already set for you. To manage your secrets, - go to the [Secrets page](https://api.arcade.dev/dashboard/auth/secrets) in the - Arcade Dashboard. - - -## Reference - -## GoogleHotelsSortBy - -Defines the sorting options for hotel search results. - -- **`RELEVANCE`**: Sort by the most relevant results. -- **`LOWEST_PRICE`**: Sort by the lowest price available. -- **`HIGHEST_RATING`**: Sort by the highest customer ratings. -- **`MOST_REVIEWED`**: Sort by the most reviewed hotels. - - diff --git a/app/en/resources/integrations/search/google_jobs/page.mdx b/app/en/resources/integrations/search/google_jobs/page.mdx deleted file mode 100644 index 4ca6bf751..000000000 --- a/app/en/resources/integrations/search/google_jobs/page.mdx +++ /dev/null @@ -1,131 +0,0 @@ -# Google Jobs - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Google Jobs MCP Server provides a pre-built set of tools for interacting with Google Jobs. These tools make it easy to build agents and AI apps that can: - -- Search for job openings with Google Jobs. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## GoogleJobs.SearchJobs - -
- - -Search for job openings with Google Jobs. - -**Parameters** - -- **`query`** _(string, required)_ Search query. Provide a job title, company name, and/or any keywords in general representing what kind of jobs the user is looking for. -- **`location`** _(string, optional, Defaults to `None`)_ Location to search for jobs. E.g. 'United States' or 'New York, NY'. Defaults to None. -- **`language`** _(string, optional, Defaults to 'en' English)_ 2-character language code to use in the Google Jobs search. -- **`limit`** _(int, optional, Defaults to 10)_ Maximum number of results to retrieve. Defaults to 10 (max supported by the API). -- **`next_page_token`** _(string, optional, Defaults to `None`)_ Next page token to paginate results. Defaults to None (start from the first page). - -## Auth - -The Arcade Google Jobs MCP Sever uses the [SerpAPI](https://serpapi.com/) to get job data from Google Jobs. - -- **Secret:** - - `SERP_API_KEY`: Your SerpAPI API key. - - Setting the `SERP_API_KEY` secret is only required if you are - [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're - using Arcade Cloud, the secret is already set for you. To manage your - secrets, go to the [Secrets - page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade - Dashboard. - - -## Default parameters - -Language is configurable through environment variables. When set, they will be used as default for Google Jobs tools. - -Providing a different value as `language` argument in a tool call will override the default value. - -**Language** - -The language code is a 2-character code that determines the language in which the API will search and return news articles. There are two environment variables: - -- `ARCADE_GOOGLE_LANGUAGE`: a default value for all Google search tools. If not set, defaults to 'en' (English). -- `ARCADE_GOOGLE_JOBS_LANGUAGE`: a default value for the jobs search tools. If not set, defaults to `ARCADE_GOOGLE_LANGUAGE`. - -A list of supported language codes can be found [here](#languagecodes). - -## LanguageCodes - -- **`ar`**: Arabic -- **`bn`**: Bengali -- **`da`**: Danish -- **`de`**: German -- **`el`**: Greek -- **`en`**: English -- **`es`**: Spanish -- **`fi`**: Finnish -- **`fr`**: French -- **`hi`**: Hindi -- **`hu`**: Hungarian -- **`id`**: Indonesian -- **`it`**: Italian -- **`ja`**: Japanese -- **`ko`**: Korean -- **`ms`**: Malay -- **`nl`**: Dutch -- **`no`**: Norwegian -- **`pcm`**: Nigerian Pidgin -- **`pl`**: Polish -- **`pt`**: Portuguese -- **`pt-br`**: Portuguese (Brazil) -- **`pt-pt`**: Portuguese (Portugal) -- **`ru`**: Russian -- **`sv`**: Swedish -- **`tl`**: Filipino -- **`tr`**: Turkish -- **`uk`**: Ukrainian -- **`zh`**: Chinese -- **`zh-cn`**: Chinese (Simplified) -- **`zh-tw`**: Chinese (Traditional) - - diff --git a/app/en/resources/integrations/search/google_maps/page.mdx b/app/en/resources/integrations/search/google_maps/page.mdx deleted file mode 100644 index bdeb833cc..000000000 --- a/app/en/resources/integrations/search/google_maps/page.mdx +++ /dev/null @@ -1,476 +0,0 @@ -# Google Maps - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Google Maps MCP Server provides a pre-built set of tools for interacting with Google Maps. These tools make it easy to build agents and AI apps that can: - -- Get directions to a location using an address or latitude/longitude. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## GoogleMaps.GetDirectionsBetweenAddresses - -
- - -Get directions between two addresses. - -**Parameters** - -- **`origin_address`** _(string, required)_ The origin address. Example: '123 Main St, New York, NY 10001'. -- **`destination_address`** _(string, required)_ The destination address. Example: '456 Main St, New York, NY 10001'. -- **`language`** _(string, optional, Defaults to 'en' English)_ 2-character language code to use in the Google Maps search. A list of supported language codes can be found [here](#languagecodes). -- **`country`** _(string, optional, Defaults to `None`)_ 2-character country code to use in the Google Maps search. A list of supported country codes can be found [here](#countrycodes). -- **`distance_unit`** _(enum ([GoogleMapsDistanceUnit](#googlemapsdistanceunit)), optional, Defaults to `GoogleMapsDistanceUnit.KM`)_ Distance unit to use in the Google Maps search. -- **`travel_mode`** _(enum ([GoogleMapsTravelMode](#googlemapstravelmode)), optional, Defaults to `GoogleMapsTravelMode.BEST`)_ Travel mode to use in the Google Maps search. - -## GoogleMaps.GetDirectionsBetweenCoordinates - -
- - -Get directions between two latitude/longitude coordinates. - -**Parameters** - -- **`origin_latitude`** _(float, required)_ The origin latitude. -- **`origin_longitude`** _(float, required)_ The origin longitude. -- **`destination_latitude`** _(float, required)_ The destination latitude. -- **`destination_longitude`** _(float, required)_ The destination longitude. -- **`language`** _(string, optional, Defaults to 'en' English)_ 2-character language code to use in the Google Maps search. A list of supported language codes can be found [here](#languagecodes). -- **`country`** _(string, optional, Defaults to `None`)_ 2-character country code to use in the Google Maps search. A list of supported country codes can be found [here](#countrycodes). -- **`distance_unit`** _(enum ([GoogleMapsDistanceUnit](#googlemapsdistanceunit)), optional, Defaults to `GoogleMapsDistanceUnit.KM`)_ Distance unit to use in the Google Maps search. -- **`travel_mode`** _(enum ([GoogleMapsTravelMode](#googlemapstravelmode)), optional, Defaults to `GoogleMapsTravelMode.BEST`)_ Travel mode to use in the Google Maps search. - -## Auth - -The Arcade Google Maps MCP Sever uses the [SerpAPI](https://serpapi.com/) to get directions. - -- **Secret:** - - `SERP_API_KEY`: Your SerpAPI API key. - - Setting the `SERP_API_KEY` secret is only required if you are - [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're - using Arcade Cloud, the secret is already set for you. To manage your - secrets, go to the [Secrets - page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade - Dashboard. - - -## Default parameters - -Language, Country, Distance Unit, and Travel Mode are configurable through environment variables. When set, they will be used as default for Google Maps tools. - -Providing a different value as `language`, `country`, `distance_unit`, or `travel_mode` argument in a tool call will override the default value. - -**Language** - -The language code is a 2-character code that determines the language in which the API will search and return directions. There are two environment variables: - -- `ARCADE_GOOGLE_LANGUAGE`: a default value for all Google tools. If not set, defaults to 'en' (English). -- `ARCADE_GOOGLE_MAPS_LANGUAGE`: a default value for the Google Maps tools. If not set, defaults to `ARCADE_GOOGLE_LANGUAGE`. - -A list of supported language codes can be found [here](#languagecodes). - -**Country** - -The country code is a 2-character code that determines the country in which the API will search for directions: - -- `ARCADE_GOOGLE_MAPS_COUNTRY`: a default value for the Google Maps tools. If not set, defaults to `None`. - -A list of supported country codes can be found [here](#countrycodes). - -**Distance Unit** - -The distance unit is a string that determines the unit of distance to use in the Google Maps search: - -- `ARCADE_GOOGLE_MAPS_DISTANCE_UNIT`: a default value for the Google Maps tools. If not set, defaults to `GoogleMapsDistanceUnit.KM`. - -A list of supported distance units can be found [here](#googlemapsdistanceunit). - -**Travel Mode** - -The travel mode is a string that determines the mode of travel to use in the Google Maps search: - -- `ARCADE_GOOGLE_MAPS_TRAVEL_MODE`: a default value for the Google Maps tools. If not set, defaults to `GoogleMapsTravelMode.BEST`. - -A list of supported travel modes can be found [here](#googlemapstravelmode). - -- **Secret:** - - `SERP_API_KEY`: Your SerpAPI API key. - - Setting the `SERP_API_KEY` secret is only required if you are - [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're - using Arcade Cloud, the secret is already set for you. To manage your - secrets, go to the [Secrets - page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade - Dashboard. - - ---- - -## Reference - -### GoogleMapsDistanceUnit - -Distance unit to use in the Google Maps search. - -- **`KM`**: Kilometers. -- **`MI`**: Miles. - -### GoogleMapsTravelMode - -Travel mode to use in the Google Maps search. - -- **`BEST`**: Best mode. -- **`DRIVING`**: Driving mode. -- **`MOTORCYCLE`**: Motorcycle mode. -- **`PUBLIC_TRANSPORTATION`**: Public transportation mode. -- **`WALKING`**: Walking mode. -- **`BICYCLE`**: Bicycling mode. -- **`FLIGHT`**: Flight mode. - -### LanguageCodes - -- **`ar`**: Arabic -- **`bn`**: Bengali -- **`da`**: Danish -- **`de`**: German -- **`el`**: Greek -- **`en`**: English -- **`es`**: Spanish -- **`fi`**: Finnish -- **`fr`**: French -- **`hi`**: Hindi -- **`hu`**: Hungarian -- **`id`**: Indonesian -- **`it`**: Italian -- **`ja`**: Japanese -- **`ko`**: Korean -- **`ms`**: Malay -- **`nl`**: Dutch -- **`no`**: Norwegian -- **`pcm`**: Nigerian Pidgin -- **`pl`**: Polish -- **`pt`**: Portuguese -- **`pt-br`**: Portuguese (Brazil) -- **`pt-pt`**: Portuguese (Portugal) -- **`ru`**: Russian -- **`sv`**: Swedish -- **`tl`**: Filipino -- **`tr`**: Turkish -- **`uk`**: Ukrainian -- **`zh`**: Chinese -- **`zh-cn`**: Chinese (Simplified) -- **`zh-tw`**: Chinese (Traditional) - -### CountryCodes - -- **`af`**: Afghanistan -- **`al`**: Albania -- **`dz`**: Algeria -- **`as`**: American Samoa -- **`ad`**: Andorra -- **`ao`**: Angola -- **`ai`**: Anguilla -- **`aq`**: Antarctica -- **`ag`**: Antigua and Barbuda -- **`ar`**: Argentina -- **`am`**: Armenia -- **`aw`**: Aruba -- **`au`**: Australia -- **`at`**: Austria -- **`az`**: Azerbaijan -- **`bs`**: Bahamas -- **`bh`**: Bahrain -- **`bd`**: Bangladesh -- **`bb`**: Barbados -- **`by`**: Belarus -- **`be`**: Belgium -- **`bz`**: Belize -- **`bj`**: Benin -- **`bm`**: Bermuda -- **`bt`**: Bhutan -- **`bo`**: Bolivia -- **`ba`**: Bosnia and Herzegovina -- **`bw`**: Botswana -- **`bv`**: Bouvet Island -- **`br`**: Brazil -- **`io`**: British Indian Ocean Territory -- **`bn`**: Brunei Darussalam -- **`bg`**: Bulgaria -- **`bf`**: Burkina Faso -- **`bi`**: Burundi -- **`kh`**: Cambodia -- **`cm`**: Cameroon -- **`ca`**: Canada -- **`cv`**: Cape Verde -- **`ky`**: Cayman Islands -- **`cf`**: Central African Republic -- **`td`**: Chad -- **`cl`**: Chile -- **`cn`**: China -- **`cx`**: Christmas Island -- **`cc`**: Cocos (Keeling) Islands -- **`co`**: Colombia -- **`km`**: Comoros -- **`cg`**: Congo -- **`cd`**: Congo, the Democratic Republic of the -- **`ck`**: Cook Islands -- **`cr`**: Costa Rica -- **`ci`**: Cote D'ivoire -- **`hr`**: Croatia -- **`cu`**: Cuba -- **`cy`**: Cyprus -- **`cz`**: Czech Republic -- **`dk`**: Denmark -- **`dj`**: Djibouti -- **`dm`**: Dominica -- **`do`**: Dominican Republic -- **`ec`**: Ecuador -- **`eg`**: Egypt -- **`sv`**: El Salvador -- **`gq`**: Equatorial Guinea -- **`er`**: Eritrea -- **`ee`**: Estonia -- **`et`**: Ethiopia -- **`fk`**: Falkland Islands (Malvinas) -- **`fo`**: Faroe Islands -- **`fj`**: Fiji -- **`fi`**: Finland -- **`fr`**: France -- **`gf`**: French Guiana -- **`pf`**: French Polynesia -- **`tf`**: French Southern Territories -- **`ga`**: Gabon -- **`gm`**: Gambia -- **`ge`**: Georgia -- **`de`**: Germany -- **`gh`**: Ghana -- **`gi`**: Gibraltar -- **`gr`**: Greece -- **`gl`**: Greenland -- **`gd`**: Grenada -- **`gp`**: Guadeloupe -- **`gu`**: Guam -- **`gt`**: Guatemala -- **`gg`**: Guernsey -- **`gn`**: Guinea -- **`gw`**: Guinea-Bissau -- **`gy`**: Guyana -- **`ht`**: Haiti -- **`hm`**: Heard Island and Mcdonald Islands -- **`va`**: Holy See (Vatican City State) -- **`hn`**: Honduras -- **`hk`**: Hong Kong -- **`hu`**: Hungary -- **`is`**: Iceland -- **`in`**: India -- **`id`**: Indonesia -- **`ir`**: Iran, Islamic Republic of -- **`iq`**: Iraq -- **`ie`**: Ireland -- **`im`**: Isle of Man -- **`il`**: Israel -- **`it`**: Italy -- **`je`**: Jersey -- **`jm`**: Jamaica -- **`jp`**: Japan -- **`jo`**: Jordan -- **`kz`**: Kazakhstan -- **`ke`**: Kenya -- **`ki`**: Kiribati -- **`kp`**: Korea, Democratic People's Republic of -- **`kr`**: Korea, Republic of -- **`kw`**: Kuwait -- **`kg`**: Kyrgyzstan -- **`la`**: Lao People's Democratic Republic -- **`lv`**: Latvia -- **`lb`**: Lebanon -- **`ls`**: Lesotho -- **`lr`**: Liberia -- **`ly`**: Libyan Arab Jamahiriya -- **`li`**: Liechtenstein -- **`lt`**: Lithuania -- **`lu`**: Luxembourg -- **`mo`**: Macao -- **`mk`**: Macedonia, the Former Yugosalv Republic of -- **`mg`**: Madagascar -- **`mw`**: Malawi -- **`my`**: Malaysia -- **`mv`**: Maldives -- **`ml`**: Mali -- **`mt`**: Malta -- **`mh`**: Marshall Islands -- **`mq`**: Martinique -- **`mr`**: Mauritania -- **`mu`**: Mauritius -- **`yt`**: Mayotte -- **`mx`**: Mexico -- **`fm`**: Micronesia, Federated States of -- **`md`**: Moldova, Republic of -- **`mc`**: Monaco -- **`mn`**: Mongolia -- **`me`**: Montenegro -- **`ms`**: Montserrat -- **`ma`**: Morocco -- **`mz`**: Mozambique -- **`mm`**: Myanmar -- **`na`**: Namibia -- **`nr`**: Nauru -- **`np`**: Nepal -- **`nl`**: Netherlands -- **`an`**: Netherlands Antilles -- **`nc`**: New Caledonia -- **`nz`**: New Zealand -- **`ni`**: Nicaragua -- **`ne`**: Niger -- **`ng`**: Nigeria -- **`nu`**: Niue -- **`nf`**: Norfolk Island -- **`mp`**: Northern Mariana Islands -- **`no`**: Norway -- **`om`**: Oman -- **`pk`**: Pakistan -- **`pw`**: Palau -- **`ps`**: Palestinian Territory, Occupied -- **`pa`**: Panama -- **`pg`**: Papua New Guinea -- **`py`**: Paraguay -- **`pe`**: Peru -- **`ph`**: Philippines -- **`pn`**: Pitcairn -- **`pl`**: Poland -- **`pt`**: Portugal -- **`pr`**: Puerto Rico -- **`qa`**: Qatar -- **`re`**: Reunion -- **`ro`**: Romania -- **`ru`**: Russian Federation -- **`rw`**: Rwanda -- **`sh`**: Saint Helena -- **`kn`**: Saint Kitts and Nevis -- **`lc`**: Saint Lucia -- **`pm`**: Saint Pierre and Miquelon -- **`vc`**: Saint Vincent and the Grenadines -- **`ws`**: Samoa -- **`sm`**: San Marino -- **`st`**: Sao Tome and Principe -- **`sa`**: Saudi Arabia -- **`sn`**: Senegal -- **`rs`**: Serbia -- **`sc`**: Seychelles -- **`sl`**: Sierra Leone -- **`sg`**: Singapore -- **`sk`**: Slovakia -- **`si`**: Slovenia -- **`sb`**: Solomon Islands -- **`so`**: Somalia -- **`za`**: South Africa -- **`gs`**: South Georgia and the South Sandwich Islands -- **`es`**: Spain -- **`lk`**: Sri Lanka -- **`sd`**: Sudan -- **`sr`**: Suriname -- **`sj`**: Svalbard and Jan Mayen -- **`sz`**: Swaziland -- **`se`**: Sweden -- **`ch`**: Switzerland -- **`sy`**: Syrian Arab Republic -- **`tw`**: Taiwan, Province of China -- **`tj`**: Tajikistan -- **`tz`**: Tanzania, United Republic of -- **`th`**: Thailand -- **`tl`**: Timor-Leste -- **`tg`**: Togo -- **`tk`**: Tokelau -- **`to`**: Tonga -- **`tt`**: Trinidad and Tobago -- **`tn`**: Tunisia -- **`tr`**: Turkiye -- **`tm`**: Turkmenistan -- **`tc`**: Turks and Caicos Islands -- **`tv`**: Tuvalu -- **`ug`**: Uganda -- **`ua`**: Ukraine -- **`ae`**: United Arab Emirates -- **`uk`**: United Kingdom -- **`gb`**: United Kingdom -- **`us`**: United States -- **`um`**: United States Minor Outlying Islands -- **`uy`**: Uruguay -- **`uz`**: Uzbekistan -- **`vu`**: Vanuatu -- **`ve`**: Venezuela -- **`vn`**: Viet Nam -- **`vg`**: Virgin Islands, British -- **`vi`**: Virgin Islands, U.S. -- **`wf`**: Wallis and Futuna -- **`eh`**: Western Sahara -- **`ye`**: Yemen -- **`zm`**: Zambia -- **`zw`**: Zimbabwe - - diff --git a/app/en/resources/integrations/search/google_news/page.mdx b/app/en/resources/integrations/search/google_news/page.mdx deleted file mode 100644 index dfbd7a0b2..000000000 --- a/app/en/resources/integrations/search/google_news/page.mdx +++ /dev/null @@ -1,392 +0,0 @@ -# Google News - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Google News MCP Server provides a pre-built set of tools for interacting with Google News. These tools make it easy to build agents and AI apps that can: - -- Search for news stories with Google News. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## GoogleNews.SearchNewsStories - -
- - -Search for news stories with Google News. - -**Parameters** - -- **`keywords`** _(string, required)_ Keywords to search for news articles. E.g. 'Apple launches new iPhone'. -- **`country_code`** _(string, optional, Defaults to `None`)_ 2-character country code to search for news articles. E.g. 'us' (United States). Defaults to `None` (search news globally). -- **`language`** _(string, optional, Defaults to 'en' English)_ 2-character language code to search for news articles. E.g. 'en' (English). Defaults to 'en' (English). -- **`limit`** _(int, optional, Defaults to `None`)_ Maximum number of news articles to return. Defaults to None (returns all results found by the API). - -## Auth - -The Arcade Google News MCP Sever uses the [SerpAPI](https://serpapi.com/) to get news data from Google News. - -- **Secret:** - - `SERP_API_KEY`: Your SerpAPI API key. - - Setting the `SERP_API_KEY` secret is only required if you are - [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're - using Arcade Cloud, the secret is already set for you. To manage your - secrets, go to the [Secrets - page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade - Dashboard. - - -## Default parameters - -Language and Country are configurable through environment variables. When set, they will be used as default for Google News tools. - -Providing a different value as `language_code` or `country_code` argument in the tool call will override the default value. - -**Language** - -The language code is a 2-character code that determines the language in which the API will search and return news articles. There are two environment variables: - -- `ARCADE_GOOGLE_LANGUAGE`: a default value for all Google search tools. If not set, defaults to 'en' (English). -- `ARCADE_GOOGLE_NEWS_LANGUAGE`: a default value for the news search tools. If not set, defaults to `ARCADE_GOOGLE_LANGUAGE`. - -A list of supported language codes can be found [here](#languagecodes). - -**Country** - -The country code is a 2-character code that determines the country in which the API will search for news articles. There are two environment variables: - -- `ARCADE_GOOGLE_NEWS_COUNTRY`: a default value for the `SearchNews` tool. If not set, defaults to `None` (search news globally). - -A list of supported country codes can be found [here](#countrycodes). - ---- - -## Reference - -## LanguageCodes - -- **`ar`**: Arabic -- **`bn`**: Bengali -- **`da`**: Danish -- **`de`**: German -- **`el`**: Greek -- **`en`**: English -- **`es`**: Spanish -- **`fi`**: Finnish -- **`fr`**: French -- **`hi`**: Hindi -- **`hu`**: Hungarian -- **`id`**: Indonesian -- **`it`**: Italian -- **`ja`**: Japanese -- **`ko`**: Korean -- **`ms`**: Malay -- **`nl`**: Dutch -- **`no`**: Norwegian -- **`pcm`**: Nigerian Pidgin -- **`pl`**: Polish -- **`pt`**: Portuguese -- **`pt-br`**: Portuguese (Brazil) -- **`pt-pt`**: Portuguese (Portugal) -- **`ru`**: Russian -- **`sv`**: Swedish -- **`tl`**: Filipino -- **`tr`**: Turkish -- **`uk`**: Ukrainian -- **`zh`**: Chinese -- **`zh-cn`**: Chinese (Simplified) -- **`zh-tw`**: Chinese (Traditional) - -## CountryCodes - -- **`af`**: Afghanistan -- **`al`**: Albania -- **`dz`**: Algeria -- **`as`**: American Samoa -- **`ad`**: Andorra -- **`ao`**: Angola -- **`ai`**: Anguilla -- **`aq`**: Antarctica -- **`ag`**: Antigua and Barbuda -- **`ar`**: Argentina -- **`am`**: Armenia -- **`aw`**: Aruba -- **`au`**: Australia -- **`at`**: Austria -- **`az`**: Azerbaijan -- **`bs`**: Bahamas -- **`bh`**: Bahrain -- **`bd`**: Bangladesh -- **`bb`**: Barbados -- **`by`**: Belarus -- **`be`**: Belgium -- **`bz`**: Belize -- **`bj`**: Benin -- **`bm`**: Bermuda -- **`bt`**: Bhutan -- **`bo`**: Bolivia -- **`ba`**: Bosnia and Herzegovina -- **`bw`**: Botswana -- **`bv`**: Bouvet Island -- **`br`**: Brazil -- **`io`**: British Indian Ocean Territory -- **`bn`**: Brunei Darussalam -- **`bg`**: Bulgaria -- **`bf`**: Burkina Faso -- **`bi`**: Burundi -- **`kh`**: Cambodia -- **`cm`**: Cameroon -- **`ca`**: Canada -- **`cv`**: Cape Verde -- **`ky`**: Cayman Islands -- **`cf`**: Central African Republic -- **`td`**: Chad -- **`cl`**: Chile -- **`cn`**: China -- **`cx`**: Christmas Island -- **`cc`**: Cocos (Keeling) Islands -- **`co`**: Colombia -- **`km`**: Comoros -- **`cg`**: Congo -- **`cd`**: Congo, the Democratic Republic of the -- **`ck`**: Cook Islands -- **`cr`**: Costa Rica -- **`ci`**: Cote D'ivoire -- **`hr`**: Croatia -- **`cu`**: Cuba -- **`cy`**: Cyprus -- **`cz`**: Czech Republic -- **`dk`**: Denmark -- **`dj`**: Djibouti -- **`dm`**: Dominica -- **`do`**: Dominican Republic -- **`ec`**: Ecuador -- **`eg`**: Egypt -- **`sv`**: El Salvador -- **`gq`**: Equatorial Guinea -- **`er`**: Eritrea -- **`ee`**: Estonia -- **`et`**: Ethiopia -- **`fk`**: Falkland Islands (Malvinas) -- **`fo`**: Faroe Islands -- **`fj`**: Fiji -- **`fi`**: Finland -- **`fr`**: France -- **`gf`**: French Guiana -- **`pf`**: French Polynesia -- **`tf`**: French Southern Territories -- **`ga`**: Gabon -- **`gm`**: Gambia -- **`ge`**: Georgia -- **`de`**: Germany -- **`gh`**: Ghana -- **`gi`**: Gibraltar -- **`gr`**: Greece -- **`gl`**: Greenland -- **`gd`**: Grenada -- **`gp`**: Guadeloupe -- **`gu`**: Guam -- **`gt`**: Guatemala -- **`gg`**: Guernsey -- **`gn`**: Guinea -- **`gw`**: Guinea-Bissau -- **`gy`**: Guyana -- **`ht`**: Haiti -- **`hm`**: Heard Island and Mcdonald Islands -- **`va`**: Holy See (Vatican City State) -- **`hn`**: Honduras -- **`hk`**: Hong Kong -- **`hu`**: Hungary -- **`is`**: Iceland -- **`in`**: India -- **`id`**: Indonesia -- **`ir`**: Iran, Islamic Republic of -- **`iq`**: Iraq -- **`ie`**: Ireland -- **`im`**: Isle of Man -- **`il`**: Israel -- **`it`**: Italy -- **`je`**: Jersey -- **`jm`**: Jamaica -- **`jp`**: Japan -- **`jo`**: Jordan -- **`kz`**: Kazakhstan -- **`ke`**: Kenya -- **`ki`**: Kiribati -- **`kp`**: Korea, Democratic People's Republic of -- **`kr`**: Korea, Republic of -- **`kw`**: Kuwait -- **`kg`**: Kyrgyzstan -- **`la`**: Lao People's Democratic Republic -- **`lv`**: Latvia -- **`lb`**: Lebanon -- **`ls`**: Lesotho -- **`lr`**: Liberia -- **`ly`**: Libyan Arab Jamahiriya -- **`li`**: Liechtenstein -- **`lt`**: Lithuania -- **`lu`**: Luxembourg -- **`mo`**: Macao -- **`mk`**: Macedonia, the Former Yugosalv Republic of -- **`mg`**: Madagascar -- **`mw`**: Malawi -- **`my`**: Malaysia -- **`mv`**: Maldives -- **`ml`**: Mali -- **`mt`**: Malta -- **`mh`**: Marshall Islands -- **`mq`**: Martinique -- **`mr`**: Mauritania -- **`mu`**: Mauritius -- **`yt`**: Mayotte -- **`mx`**: Mexico -- **`fm`**: Micronesia, Federated States of -- **`md`**: Moldova, Republic of -- **`mc`**: Monaco -- **`mn`**: Mongolia -- **`me`**: Montenegro -- **`ms`**: Montserrat -- **`ma`**: Morocco -- **`mz`**: Mozambique -- **`mm`**: Myanmar -- **`na`**: Namibia -- **`nr`**: Nauru -- **`np`**: Nepal -- **`nl`**: Netherlands -- **`an`**: Netherlands Antilles -- **`nc`**: New Caledonia -- **`nz`**: New Zealand -- **`ni`**: Nicaragua -- **`ne`**: Niger -- **`ng`**: Nigeria -- **`nu`**: Niue -- **`nf`**: Norfolk Island -- **`mp`**: Northern Mariana Islands -- **`no`**: Norway -- **`om`**: Oman -- **`pk`**: Pakistan -- **`pw`**: Palau -- **`ps`**: Palestinian Territory, Occupied -- **`pa`**: Panama -- **`pg`**: Papua New Guinea -- **`py`**: Paraguay -- **`pe`**: Peru -- **`ph`**: Philippines -- **`pn`**: Pitcairn -- **`pl`**: Poland -- **`pt`**: Portugal -- **`pr`**: Puerto Rico -- **`qa`**: Qatar -- **`re`**: Reunion -- **`ro`**: Romania -- **`ru`**: Russian Federation -- **`rw`**: Rwanda -- **`sh`**: Saint Helena -- **`kn`**: Saint Kitts and Nevis -- **`lc`**: Saint Lucia -- **`pm`**: Saint Pierre and Miquelon -- **`vc`**: Saint Vincent and the Grenadines -- **`ws`**: Samoa -- **`sm`**: San Marino -- **`st`**: Sao Tome and Principe -- **`sa`**: Saudi Arabia -- **`sn`**: Senegal -- **`rs`**: Serbia -- **`sc`**: Seychelles -- **`sl`**: Sierra Leone -- **`sg`**: Singapore -- **`sk`**: Slovakia -- **`si`**: Slovenia -- **`sb`**: Solomon Islands -- **`so`**: Somalia -- **`za`**: South Africa -- **`gs`**: South Georgia and the South Sandwich Islands -- **`es`**: Spain -- **`lk`**: Sri Lanka -- **`sd`**: Sudan -- **`sr`**: Suriname -- **`sj`**: Svalbard and Jan Mayen -- **`sz`**: Swaziland -- **`se`**: Sweden -- **`ch`**: Switzerland -- **`sy`**: Syrian Arab Republic -- **`tw`**: Taiwan, Province of China -- **`tj`**: Tajikistan -- **`tz`**: Tanzania, United Republic of -- **`th`**: Thailand -- **`tl`**: Timor-Leste -- **`tg`**: Togo -- **`tk`**: Tokelau -- **`to`**: Tonga -- **`tt`**: Trinidad and Tobago -- **`tn`**: Tunisia -- **`tr`**: Turkiye -- **`tm`**: Turkmenistan -- **`tc`**: Turks and Caicos Islands -- **`tv`**: Tuvalu -- **`ug`**: Uganda -- **`ua`**: Ukraine -- **`ae`**: United Arab Emirates -- **`uk`**: United Kingdom -- **`gb`**: United Kingdom -- **`us`**: United States -- **`um`**: United States Minor Outlying Islands -- **`uy`**: Uruguay -- **`uz`**: Uzbekistan -- **`vu`**: Vanuatu -- **`ve`**: Venezuela -- **`vn`**: Viet Nam -- **`vg`**: Virgin Islands, British -- **`vi`**: Virgin Islands, U.S. -- **`wf`**: Wallis and Futuna -- **`eh`**: Western Sahara -- **`ye`**: Yemen -- **`zm`**: Zambia -- **`zw`**: Zimbabwe - - diff --git a/app/en/resources/integrations/search/google_search/page.mdx b/app/en/resources/integrations/search/google_search/page.mdx deleted file mode 100644 index 1cf2709c4..000000000 --- a/app/en/resources/integrations/search/google_search/page.mdx +++ /dev/null @@ -1,77 +0,0 @@ -# Google Search - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Search MCP Server provides a pre-built set of tools for interacting with Google search results. These tools make it easy to build agents and AI apps that can: - -- Search Google and return results. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## GoogleSearch.Search - -
- - -Search Google using SerpAPI and return organic search results. - -**Parameters** - -- **`query`** _(string, required)_ The search query. -- **`n_results`** _(integer, optional, Defaults to 5)_ Number of results to retrieve. - -## Auth - -The Arcade Google Search MCP Sever uses the [SerpAPI](https://serpapi.com/) to get get results from a Google search. - -- **Secret:** - - `SERP_API_KEY`: Your SerpAPI API key. - - Setting the `SERP_API_KEY` secret is only required if you are - [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're - using Arcade Cloud, the secret is already set for you. To manage your - secrets, go to the [Secrets - page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade - Dashboard. - - - diff --git a/app/en/resources/integrations/search/google_shopping/page.mdx b/app/en/resources/integrations/search/google_shopping/page.mdx deleted file mode 100644 index 16d1a3686..000000000 --- a/app/en/resources/integrations/search/google_shopping/page.mdx +++ /dev/null @@ -1,392 +0,0 @@ -# Google Shopping Search - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Google Shopping Search MCP Server provides a pre-built set of tools for interacting with Google Shopping. These tools make it easy to build agents and AI apps that can: - -- Search for products on Google Shopping; - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## GoogleShopping.SearchProducts - -
- - -Search for products on Google Shopping. - -**Parameters** - -- **keywords** _(string, required)_ Keywords to search for. E.g. 'apple iphone' or 'samsung galaxy' -- **`country_code`** _(string, optional, Defaults to 'us' United States)_ 2-character country code to use in the Google Shopping search. A list of supported country codes can be found [here](#countrycodes). -- **`language_code`** _(string, optional, Defaults to 'en' English)_ 2-character language code to use in the Google Shopping search. A list of supported language codes can be found [here](#languagecodes). - -## Auth - -The Arcade Google Shopping Search MCP Sever uses the [SerpAPI](https://serpapi.com/) to get product information from Google Shopping. - -- **Secret:** - - `SERP_API_KEY`: Your SerpAPI API key. - - Setting the `SERP_API_KEY` secret is only required if you are - [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're - using Arcade Cloud, the secret is already set for you. To manage your - secrets, go to the [Secrets - page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade - Dashboard. - - -## Default parameter values - -Language and Country are configurable through environment variables. When set, they will be used as default for YouTube tools. - -Providing a different value as `language_code` or `country_code` argument in a tool call will override the default value set in the environment variables. - -**Language** - -The language code is a 2-character code that determines the language in which the API will search and return video information. There are two environment variables: - -- `ARCADE_GOOGLE_LANGUAGE`: a default value for all Google Search tools. If not set, defaults to 'en' (English). -- `ARCADE_GOOGLE_SHOPPING_LANGUAGE`: a default value for the Google Shopping Search tools. If not set, defaults to `ARCADE_GOOGLE_LANGUAGE`. - -A list of supported language codes can be found [here](#languagecodes). - -**Country** - -The country code is a 2-character code that determines the country in which the API will search for videos: - -- `ARCADE_GOOGLE_COUNTRY`: a default value for all Google Search tools. If not set, defaults to `None`. -- `ARCADE_GOOGLE_SHOPPING_COUNTRY`: a default value for the Google Shopping Search tools. If not set, defaults to `ARCADE_GOOGLE_COUNTRY`. If `ARCADE_GOOGLE_COUNTRY` is not set, the default country for Google Shopping tools will be `us` (United States). - -A list of supported country codes can be found [here](#countrycodes). - ---- - -## Reference - -## LanguageCodes - -- **`ar`**: Arabic -- **`bn`**: Bengali -- **`da`**: Danish -- **`de`**: German -- **`el`**: Greek -- **`en`**: English -- **`es`**: Spanish -- **`fi`**: Finnish -- **`fr`**: French -- **`hi`**: Hindi -- **`hu`**: Hungarian -- **`id`**: Indonesian -- **`it`**: Italian -- **`ja`**: Japanese -- **`ko`**: Korean -- **`ms`**: Malay -- **`nl`**: Dutch -- **`no`**: Norwegian -- **`pcm`**: Nigerian Pidgin -- **`pl`**: Polish -- **`pt`**: Portuguese -- **`pt-br`**: Portuguese (Brazil) -- **`pt-pt`**: Portuguese (Portugal) -- **`ru`**: Russian -- **`sv`**: Swedish -- **`tl`**: Filipino -- **`tr`**: Turkish -- **`uk`**: Ukrainian -- **`zh`**: Chinese -- **`zh-cn`**: Chinese (Simplified) -- **`zh-tw`**: Chinese (Traditional) - -## CountryCodes - -- **`af`**: Afghanistan -- **`al`**: Albania -- **`dz`**: Algeria -- **`as`**: American Samoa -- **`ad`**: Andorra -- **`ao`**: Angola -- **`ai`**: Anguilla -- **`aq`**: Antarctica -- **`ag`**: Antigua and Barbuda -- **`ar`**: Argentina -- **`am`**: Armenia -- **`aw`**: Aruba -- **`au`**: Australia -- **`at`**: Austria -- **`az`**: Azerbaijan -- **`bs`**: Bahamas -- **`bh`**: Bahrain -- **`bd`**: Bangladesh -- **`bb`**: Barbados -- **`by`**: Belarus -- **`be`**: Belgium -- **`bz`**: Belize -- **`bj`**: Benin -- **`bm`**: Bermuda -- **`bt`**: Bhutan -- **`bo`**: Bolivia -- **`ba`**: Bosnia and Herzegovina -- **`bw`**: Botswana -- **`bv`**: Bouvet Island -- **`br`**: Brazil -- **`io`**: British Indian Ocean Territory -- **`bn`**: Brunei Darussalam -- **`bg`**: Bulgaria -- **`bf`**: Burkina Faso -- **`bi`**: Burundi -- **`kh`**: Cambodia -- **`cm`**: Cameroon -- **`ca`**: Canada -- **`cv`**: Cape Verde -- **`ky`**: Cayman Islands -- **`cf`**: Central African Republic -- **`td`**: Chad -- **`cl`**: Chile -- **`cn`**: China -- **`cx`**: Christmas Island -- **`cc`**: Cocos (Keeling) Islands -- **`co`**: Colombia -- **`km`**: Comoros -- **`cg`**: Congo -- **`cd`**: Congo, the Democratic Republic of the -- **`ck`**: Cook Islands -- **`cr`**: Costa Rica -- **`ci`**: Cote D'ivoire -- **`hr`**: Croatia -- **`cu`**: Cuba -- **`cy`**: Cyprus -- **`cz`**: Czech Republic -- **`dk`**: Denmark -- **`dj`**: Djibouti -- **`dm`**: Dominica -- **`do`**: Dominican Republic -- **`ec`**: Ecuador -- **`eg`**: Egypt -- **`sv`**: El Salvador -- **`gq`**: Equatorial Guinea -- **`er`**: Eritrea -- **`ee`**: Estonia -- **`et`**: Ethiopia -- **`fk`**: Falkland Islands (Malvinas) -- **`fo`**: Faroe Islands -- **`fj`**: Fiji -- **`fi`**: Finland -- **`fr`**: France -- **`gf`**: French Guiana -- **`pf`**: French Polynesia -- **`tf`**: French Southern Territories -- **`ga`**: Gabon -- **`gm`**: Gambia -- **`ge`**: Georgia -- **`de`**: Germany -- **`gh`**: Ghana -- **`gi`**: Gibraltar -- **`gr`**: Greece -- **`gl`**: Greenland -- **`gd`**: Grenada -- **`gp`**: Guadeloupe -- **`gu`**: Guam -- **`gt`**: Guatemala -- **`gg`**: Guernsey -- **`gn`**: Guinea -- **`gw`**: Guinea-Bissau -- **`gy`**: Guyana -- **`ht`**: Haiti -- **`hm`**: Heard Island and Mcdonald Islands -- **`va`**: Holy See (Vatican City State) -- **`hn`**: Honduras -- **`hk`**: Hong Kong -- **`hu`**: Hungary -- **`is`**: Iceland -- **`in`**: India -- **`id`**: Indonesia -- **`ir`**: Iran, Islamic Republic of -- **`iq`**: Iraq -- **`ie`**: Ireland -- **`im`**: Isle of Man -- **`il`**: Israel -- **`it`**: Italy -- **`je`**: Jersey -- **`jm`**: Jamaica -- **`jp`**: Japan -- **`jo`**: Jordan -- **`kz`**: Kazakhstan -- **`ke`**: Kenya -- **`ki`**: Kiribati -- **`kp`**: Korea, Democratic People's Republic of -- **`kr`**: Korea, Republic of -- **`kw`**: Kuwait -- **`kg`**: Kyrgyzstan -- **`la`**: Lao People's Democratic Republic -- **`lv`**: Latvia -- **`lb`**: Lebanon -- **`ls`**: Lesotho -- **`lr`**: Liberia -- **`ly`**: Libyan Arab Jamahiriya -- **`li`**: Liechtenstein -- **`lt`**: Lithuania -- **`lu`**: Luxembourg -- **`mo`**: Macao -- **`mk`**: Macedonia, the Former Yugosalv Republic of -- **`mg`**: Madagascar -- **`mw`**: Malawi -- **`my`**: Malaysia -- **`mv`**: Maldives -- **`ml`**: Mali -- **`mt`**: Malta -- **`mh`**: Marshall Islands -- **`mq`**: Martinique -- **`mr`**: Mauritania -- **`mu`**: Mauritius -- **`yt`**: Mayotte -- **`mx`**: Mexico -- **`fm`**: Micronesia, Federated States of -- **`md`**: Moldova, Republic of -- **`mc`**: Monaco -- **`mn`**: Mongolia -- **`me`**: Montenegro -- **`ms`**: Montserrat -- **`ma`**: Morocco -- **`mz`**: Mozambique -- **`mm`**: Myanmar -- **`na`**: Namibia -- **`nr`**: Nauru -- **`np`**: Nepal -- **`nl`**: Netherlands -- **`an`**: Netherlands Antilles -- **`nc`**: New Caledonia -- **`nz`**: New Zealand -- **`ni`**: Nicaragua -- **`ne`**: Niger -- **`ng`**: Nigeria -- **`nu`**: Niue -- **`nf`**: Norfolk Island -- **`mp`**: Northern Mariana Islands -- **`no`**: Norway -- **`om`**: Oman -- **`pk`**: Pakistan -- **`pw`**: Palau -- **`ps`**: Palestinian Territory, Occupied -- **`pa`**: Panama -- **`pg`**: Papua New Guinea -- **`py`**: Paraguay -- **`pe`**: Peru -- **`ph`**: Philippines -- **`pn`**: Pitcairn -- **`pl`**: Poland -- **`pt`**: Portugal -- **`pr`**: Puerto Rico -- **`qa`**: Qatar -- **`re`**: Reunion -- **`ro`**: Romania -- **`ru`**: Russian Federation -- **`rw`**: Rwanda -- **`sh`**: Saint Helena -- **`kn`**: Saint Kitts and Nevis -- **`lc`**: Saint Lucia -- **`pm`**: Saint Pierre and Miquelon -- **`vc`**: Saint Vincent and the Grenadines -- **`ws`**: Samoa -- **`sm`**: San Marino -- **`st`**: Sao Tome and Principe -- **`sa`**: Saudi Arabia -- **`sn`**: Senegal -- **`rs`**: Serbia -- **`sc`**: Seychelles -- **`sl`**: Sierra Leone -- **`sg`**: Singapore -- **`sk`**: Slovakia -- **`si`**: Slovenia -- **`sb`**: Solomon Islands -- **`so`**: Somalia -- **`za`**: South Africa -- **`gs`**: South Georgia and the South Sandwich Islands -- **`es`**: Spain -- **`lk`**: Sri Lanka -- **`sd`**: Sudan -- **`sr`**: Suriname -- **`sj`**: Svalbard and Jan Mayen -- **`sz`**: Swaziland -- **`se`**: Sweden -- **`ch`**: Switzerland -- **`sy`**: Syrian Arab Republic -- **`tw`**: Taiwan, Province of China -- **`tj`**: Tajikistan -- **`tz`**: Tanzania, United Republic of -- **`th`**: Thailand -- **`tl`**: Timor-Leste -- **`tg`**: Togo -- **`tk`**: Tokelau -- **`to`**: Tonga -- **`tt`**: Trinidad and Tobago -- **`tn`**: Tunisia -- **`tr`**: Turkiye -- **`tm`**: Turkmenistan -- **`tc`**: Turks and Caicos Islands -- **`tv`**: Tuvalu -- **`ug`**: Uganda -- **`ua`**: Ukraine -- **`ae`**: United Arab Emirates -- **`uk`**: United Kingdom -- **`gb`**: United Kingdom -- **`us`**: United States -- **`um`**: United States Minor Outlying Islands -- **`uy`**: Uruguay -- **`uz`**: Uzbekistan -- **`vu`**: Vanuatu -- **`ve`**: Venezuela -- **`vn`**: Viet Nam -- **`vg`**: Virgin Islands, British -- **`vi`**: Virgin Islands, U.S. -- **`wf`**: Wallis and Futuna -- **`eh`**: Western Sahara -- **`ye`**: Yemen -- **`zm`**: Zambia -- **`zw`**: Zimbabwe - - diff --git a/app/en/resources/integrations/search/walmart/page.mdx b/app/en/resources/integrations/search/walmart/page.mdx deleted file mode 100644 index 3b5969fc1..000000000 --- a/app/en/resources/integrations/search/walmart/page.mdx +++ /dev/null @@ -1,126 +0,0 @@ -# Walmart Search - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Walmart Search MCP Server provides a pre-built set of tools for interacting with Walmart. These tools make it easy to build agents and AI apps that can: - -- Search for products listed on Walmart stores; -- Get details about a product. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Walmart.SearchProducts - -
- - -Search for products listed on Walmart stores. - -**Parameters** - -- **keywords** _(string, required)_ Keywords to search for. E.g. 'apple iphone' or 'samsung galaxy' -- **sort_by** _(enum [WalmartSortBy](#walmartsortby), optional, Defaults to `WalmartSortBy.RELEVANCE`)_ Sort the results by the specified criteria. Defaults to `WalmartSortBy.RELEVANCE`. -- **min_price** _(float, optional, Defaults to `None`)_ Minimum price to filter the results. -- **max_price** _(float, optional, Defaults to `None`)_ Maximum price to filter the results. -- **next_day_delivery** _(bool, optional, Defaults to `False`)_ Whether to filter the results by next day delivery. Defaults to False (returns all products, regardless of delivery status). -- **page** _(int, optional, Defaults to `1`)_ Page number to fetch. Defaults to 1 (first page of results). The maximum page value is 100. - -## Walmart.GetProductDetails - -
- - -Get details about a product listed on Walmart. - -**Parameters** - -- **item_id** _(string, required)_ Item ID. E.g. '414600577'. This can be retrieved from the search results of the `SearchWalmartProducts` tool. - -## Auth - -The Arcade Walmart Search MCP Sever uses the [SerpAPI](https://serpapi.com/) to get product information from Walmart. - -- **Secret:** - - `SERP_API_KEY`: Your SerpAPI API key. - - Setting the `SERP_API_KEY` secret is only required if you are - [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're - using Arcade Cloud, the secret is already set for you. To manage your - secrets, go to the [Secrets - page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade - Dashboard. - - ---- - -## Reference - -## WalmartSortBy - -- **`RELEVANCE`**: `'relevance_according_to_keywords_searched'` - Sort by relevance. -- **`PRICE_LOW_TO_HIGH`**: `'lowest_price_first'` - Sort by price from low to high. -- **`PRICE_HIGH_TO_LOW`**: `'highest_price_first'` - Sort by price from high to low. -- **`BEST_SELLING`**: `'best_selling_products_first'` - Sort by best selling. -- **`RATING_HIGH`**: `'highest_rating_first'` - Sort by rating from high to low. -- **`NEW_ARRIVALS`**: `'new_arrivals_first'` - Sort by new arrivals. - - diff --git a/app/en/resources/integrations/search/youtube/page.mdx b/app/en/resources/integrations/search/youtube/page.mdx deleted file mode 100644 index 92270c366..000000000 --- a/app/en/resources/integrations/search/youtube/page.mdx +++ /dev/null @@ -1,419 +0,0 @@ -# YouTube Search - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade YouTube Search MCP Server provides a pre-built set of tools for interacting with YouTube. These tools make it easy to build agents and AI apps that can: - -- Search for videos on YouTube; -- Get details about a video. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Youtube.SearchForVideos - -
- - -Search for videos on YouTube. - -**Parameters** - -- **keywords** _(string, required)_ Keywords to search for. E.g. 'apple iphone' or 'samsung galaxy' -- **`language_code`** _(string, optional, Defaults to 'en' English)_ 2-character language code to use in the YouTube search. A list of supported language codes can be found [here](#languagecodes). -- **`country_code`** _(string, optional, Defaults to 'us' United States)_ 2-character country code to use in the YouTube search. A list of supported country codes can be found [here](#countrycodes). -- **`next_page_token`** _(string, optional, Defaults to 'None')_ The next page token to use for pagination. Defaults to `None` (start from the first page). - -## Youtube.GetYoutubeVideoDetails - -
- - -Get details about a video on YouTube. - -**Parameters** - -- **video_id** _(string, required)_ Video ID. E.g. '414600577'. This can be retrieved from the search results of the `SearchYoutubeVideos` tool. -- **`language_code`** _(string, optional, Defaults to 'en' English)_ 2-character language code to return information about the video. A list of supported language codes can be found [here](#languagecodes). -- **`country_code`** _(string, optional, Defaults to 'us' United States)_ 2-character country code to return information about the video. A list of supported country codes can be found [here](#countrycodes). - -## Auth - -The Arcade YouTube Search MCP Sever uses the [SerpAPI](https://serpapi.com/) to get video information from YouTube. - -- **Secret:** - - `SERP_API_KEY`: Your SerpAPI API key. - - Setting the `SERP_API_KEY` secret is only required if you are - [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're - using Arcade Cloud, the secret is already set for you. To manage your - secrets, go to the [Secrets - page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade - Dashboard. - - -## Default parameter values - -Language and Country are configurable through environment variables. When set, they will be used as default for YouTube tools. - -Providing a different value as `language_code` or `country_code` argument in a tool call will override the default value set in the environment variables. - -**Language** - -The language code is a 2-character code that determines the language in which the API will search and return video information. There are two environment variables: - -- `ARCADE_GOOGLE_LANGUAGE`: a default value for all Google Search tools. If not set, defaults to 'en' (English). -- `ARCADE_YOUTUBE_SEARCH_LANGUAGE`: a default value for the YouTube Search tools. If not set, defaults to `ARCADE_GOOGLE_LANGUAGE`. - -A list of supported language codes can be found [here](#languagecodes). - -**Country** - -The country code is a 2-character code that determines the country in which the API will search for videos: - -- `ARCADE_GOOGLE_COUNTRY`: a default value for all Google Search tools. If not set, defaults to `None`. -- `ARCADE_YOUTUBE_SEARCH_COUNTRY`: a default value for the YouTube Search tools. If not set, defaults to `ARCADE_GOOGLE_COUNTRY`. If `ARCADE_GOOGLE_COUNTRY` is not set, the default country for YouTube tools will be `us` (United States). - -A list of supported country codes can be found [here](#countrycodes). - ---- - -## Reference - -## LanguageCodes - -- **`ar`**: Arabic -- **`bn`**: Bengali -- **`da`**: Danish -- **`de`**: German -- **`el`**: Greek -- **`en`**: English -- **`es`**: Spanish -- **`fi`**: Finnish -- **`fr`**: French -- **`hi`**: Hindi -- **`hu`**: Hungarian -- **`id`**: Indonesian -- **`it`**: Italian -- **`ja`**: Japanese -- **`ko`**: Korean -- **`ms`**: Malay -- **`nl`**: Dutch -- **`no`**: Norwegian -- **`pcm`**: Nigerian Pidgin -- **`pl`**: Polish -- **`pt`**: Portuguese -- **`pt-br`**: Portuguese (Brazil) -- **`pt-pt`**: Portuguese (Portugal) -- **`ru`**: Russian -- **`sv`**: Swedish -- **`tl`**: Filipino -- **`tr`**: Turkish -- **`uk`**: Ukrainian -- **`zh`**: Chinese -- **`zh-cn`**: Chinese (Simplified) -- **`zh-tw`**: Chinese (Traditional) - -## CountryCodes - -- **`af`**: Afghanistan -- **`al`**: Albania -- **`dz`**: Algeria -- **`as`**: American Samoa -- **`ad`**: Andorra -- **`ao`**: Angola -- **`ai`**: Anguilla -- **`aq`**: Antarctica -- **`ag`**: Antigua and Barbuda -- **`ar`**: Argentina -- **`am`**: Armenia -- **`aw`**: Aruba -- **`au`**: Australia -- **`at`**: Austria -- **`az`**: Azerbaijan -- **`bs`**: Bahamas -- **`bh`**: Bahrain -- **`bd`**: Bangladesh -- **`bb`**: Barbados -- **`by`**: Belarus -- **`be`**: Belgium -- **`bz`**: Belize -- **`bj`**: Benin -- **`bm`**: Bermuda -- **`bt`**: Bhutan -- **`bo`**: Bolivia -- **`ba`**: Bosnia and Herzegovina -- **`bw`**: Botswana -- **`bv`**: Bouvet Island -- **`br`**: Brazil -- **`io`**: British Indian Ocean Territory -- **`bn`**: Brunei Darussalam -- **`bg`**: Bulgaria -- **`bf`**: Burkina Faso -- **`bi`**: Burundi -- **`kh`**: Cambodia -- **`cm`**: Cameroon -- **`ca`**: Canada -- **`cv`**: Cape Verde -- **`ky`**: Cayman Islands -- **`cf`**: Central African Republic -- **`td`**: Chad -- **`cl`**: Chile -- **`cn`**: China -- **`cx`**: Christmas Island -- **`cc`**: Cocos (Keeling) Islands -- **`co`**: Colombia -- **`km`**: Comoros -- **`cg`**: Congo -- **`cd`**: Congo, the Democratic Republic of the -- **`ck`**: Cook Islands -- **`cr`**: Costa Rica -- **`ci`**: Cote D'ivoire -- **`hr`**: Croatia -- **`cu`**: Cuba -- **`cy`**: Cyprus -- **`cz`**: Czech Republic -- **`dk`**: Denmark -- **`dj`**: Djibouti -- **`dm`**: Dominica -- **`do`**: Dominican Republic -- **`ec`**: Ecuador -- **`eg`**: Egypt -- **`sv`**: El Salvador -- **`gq`**: Equatorial Guinea -- **`er`**: Eritrea -- **`ee`**: Estonia -- **`et`**: Ethiopia -- **`fk`**: Falkland Islands (Malvinas) -- **`fo`**: Faroe Islands -- **`fj`**: Fiji -- **`fi`**: Finland -- **`fr`**: France -- **`gf`**: French Guiana -- **`pf`**: French Polynesia -- **`tf`**: French Southern Territories -- **`ga`**: Gabon -- **`gm`**: Gambia -- **`ge`**: Georgia -- **`de`**: Germany -- **`gh`**: Ghana -- **`gi`**: Gibraltar -- **`gr`**: Greece -- **`gl`**: Greenland -- **`gd`**: Grenada -- **`gp`**: Guadeloupe -- **`gu`**: Guam -- **`gt`**: Guatemala -- **`gg`**: Guernsey -- **`gn`**: Guinea -- **`gw`**: Guinea-Bissau -- **`gy`**: Guyana -- **`ht`**: Haiti -- **`hm`**: Heard Island and Mcdonald Islands -- **`va`**: Holy See (Vatican City State) -- **`hn`**: Honduras -- **`hk`**: Hong Kong -- **`hu`**: Hungary -- **`is`**: Iceland -- **`in`**: India -- **`id`**: Indonesia -- **`ir`**: Iran, Islamic Republic of -- **`iq`**: Iraq -- **`ie`**: Ireland -- **`im`**: Isle of Man -- **`il`**: Israel -- **`it`**: Italy -- **`je`**: Jersey -- **`jm`**: Jamaica -- **`jp`**: Japan -- **`jo`**: Jordan -- **`kz`**: Kazakhstan -- **`ke`**: Kenya -- **`ki`**: Kiribati -- **`kp`**: Korea, Democratic People's Republic of -- **`kr`**: Korea, Republic of -- **`kw`**: Kuwait -- **`kg`**: Kyrgyzstan -- **`la`**: Lao People's Democratic Republic -- **`lv`**: Latvia -- **`lb`**: Lebanon -- **`ls`**: Lesotho -- **`lr`**: Liberia -- **`ly`**: Libyan Arab Jamahiriya -- **`li`**: Liechtenstein -- **`lt`**: Lithuania -- **`lu`**: Luxembourg -- **`mo`**: Macao -- **`mk`**: Macedonia, the Former Yugosalv Republic of -- **`mg`**: Madagascar -- **`mw`**: Malawi -- **`my`**: Malaysia -- **`mv`**: Maldives -- **`ml`**: Mali -- **`mt`**: Malta -- **`mh`**: Marshall Islands -- **`mq`**: Martinique -- **`mr`**: Mauritania -- **`mu`**: Mauritius -- **`yt`**: Mayotte -- **`mx`**: Mexico -- **`fm`**: Micronesia, Federated States of -- **`md`**: Moldova, Republic of -- **`mc`**: Monaco -- **`mn`**: Mongolia -- **`me`**: Montenegro -- **`ms`**: Montserrat -- **`ma`**: Morocco -- **`mz`**: Mozambique -- **`mm`**: Myanmar -- **`na`**: Namibia -- **`nr`**: Nauru -- **`np`**: Nepal -- **`nl`**: Netherlands -- **`an`**: Netherlands Antilles -- **`nc`**: New Caledonia -- **`nz`**: New Zealand -- **`ni`**: Nicaragua -- **`ne`**: Niger -- **`ng`**: Nigeria -- **`nu`**: Niue -- **`nf`**: Norfolk Island -- **`mp`**: Northern Mariana Islands -- **`no`**: Norway -- **`om`**: Oman -- **`pk`**: Pakistan -- **`pw`**: Palau -- **`ps`**: Palestinian Territory, Occupied -- **`pa`**: Panama -- **`pg`**: Papua New Guinea -- **`py`**: Paraguay -- **`pe`**: Peru -- **`ph`**: Philippines -- **`pn`**: Pitcairn -- **`pl`**: Poland -- **`pt`**: Portugal -- **`pr`**: Puerto Rico -- **`qa`**: Qatar -- **`re`**: Reunion -- **`ro`**: Romania -- **`ru`**: Russian Federation -- **`rw`**: Rwanda -- **`sh`**: Saint Helena -- **`kn`**: Saint Kitts and Nevis -- **`lc`**: Saint Lucia -- **`pm`**: Saint Pierre and Miquelon -- **`vc`**: Saint Vincent and the Grenadines -- **`ws`**: Samoa -- **`sm`**: San Marino -- **`st`**: Sao Tome and Principe -- **`sa`**: Saudi Arabia -- **`sn`**: Senegal -- **`rs`**: Serbia -- **`sc`**: Seychelles -- **`sl`**: Sierra Leone -- **`sg`**: Singapore -- **`sk`**: Slovakia -- **`si`**: Slovenia -- **`sb`**: Solomon Islands -- **`so`**: Somalia -- **`za`**: South Africa -- **`gs`**: South Georgia and the South Sandwich Islands -- **`es`**: Spain -- **`lk`**: Sri Lanka -- **`sd`**: Sudan -- **`sr`**: Suriname -- **`sj`**: Svalbard and Jan Mayen -- **`sz`**: Swaziland -- **`se`**: Sweden -- **`ch`**: Switzerland -- **`sy`**: Syrian Arab Republic -- **`tw`**: Taiwan, Province of China -- **`tj`**: Tajikistan -- **`tz`**: Tanzania, United Republic of -- **`th`**: Thailand -- **`tl`**: Timor-Leste -- **`tg`**: Togo -- **`tk`**: Tokelau -- **`to`**: Tonga -- **`tt`**: Trinidad and Tobago -- **`tn`**: Tunisia -- **`tr`**: Turkiye -- **`tm`**: Turkmenistan -- **`tc`**: Turks and Caicos Islands -- **`tv`**: Tuvalu -- **`ug`**: Uganda -- **`ua`**: Ukraine -- **`ae`**: United Arab Emirates -- **`uk`**: United Kingdom -- **`gb`**: United Kingdom -- **`us`**: United States -- **`um`**: United States Minor Outlying Islands -- **`uy`**: Uruguay -- **`uz`**: Uzbekistan -- **`vu`**: Vanuatu -- **`ve`**: Venezuela -- **`vn`**: Viet Nam -- **`vg`**: Virgin Islands, British -- **`vi`**: Virgin Islands, U.S. -- **`wf`**: Wallis and Futuna -- **`eh`**: Western Sahara -- **`ye`**: Yemen -- **`zm`**: Zambia -- **`zw`**: Zimbabwe - - diff --git a/app/en/resources/integrations/social-communication/_meta.tsx b/app/en/resources/integrations/social-communication/_meta.tsx deleted file mode 100644 index 969c8b11c..000000000 --- a/app/en/resources/integrations/social-communication/_meta.tsx +++ /dev/null @@ -1,43 +0,0 @@ -import type { MetaRecord } from "nextra"; - -const meta: MetaRecord = { - "*": { - theme: { - breadcrumb: true, - toc: true, - copyPage: true, - }, - }, - discord: { - title: "Discord", - }, - linkedin: { - title: "LinkedIn", - }, - "microsoft-teams": { - title: "Microsoft Teams", - }, - reddit: { - title: "Reddit", - }, - slack: { - title: "Slack", - }, - "slack-api": { - title: "Slack API", - }, - teams: { - title: "Teams", - }, - twilio: { - title: "Twilio", - }, - x: { - title: "X (Twitter)", - }, - zoom: { - title: "Zoom", - }, -}; - -export default meta; diff --git a/app/en/resources/integrations/social-communication/discord/page.mdx b/app/en/resources/integrations/social-communication/discord/page.mdx deleted file mode 100644 index af66f9b37..000000000 --- a/app/en/resources/integrations/social-communication/discord/page.mdx +++ /dev/null @@ -1,138 +0,0 @@ -import { Tabs } from "nextra/components"; -import { Callout, Steps } from "nextra/components"; - -# Discord - -The Discord auth provider enables tools and agents to call the Discord API on behalf of a user. - -### What's documented here - -This page describes how to use and configure Discord auth with Arcade. - -This auth provider is used by: - -- Your [app code](#using-discord-auth-in-app-code) that needs to call Discord APIs -- Or, your [custom tools](#using-discord-auth-in-custom-tools) that need to call Discord APIs - -## Configuring Discord auth - -### Create a Discord app - -- Create a Discord Application in the [Discord developer portal](https://discord.com/developers/applications) -- In the OAuth2 tab, set the redirect URI to the redirect URL generated by Arcade (see below) -- Copy the Client ID and Client Secret (you may need to reset the secret to see it) - -Next, add the Discord app to Arcade. -### Configuring Discord auth with the Arcade Dashboard - -1. Navigate to the OAuth section of the Arcade Dashboard and click **Add OAuth Provider**. -2. Select **Discord** as the provider. -3. Choose a unique **ID** for your provider (e.g. "my-discord-provider") with an optional **Description**. -4. Enter your **Client ID** and **Client Secret** from your Discord app. -5. Note the **Redirect URL** generated by Arcade. This must be set as your Discord app's redirect URL. -6. Click **Save**. - -When you use tools that require Discord auth using your Arcade account credentials, Arcade will automatically use this Discord OAuth provider. - -## Using Discord auth in app code - -Use the Discord auth provider in your own agents and AI apps to get a user token for the Discord API. See [authorizing agents with Arcade](/get-started/about-arcade) to understand how this works. - -Use `client.auth.start()` to get a user token for the Discord API: - - - - -```python {8-12} -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -user_id = "{arcade_user_id}" - -# Start the authorization process -auth_response = client.auth.start( - user_id=user_id, - provider="discord", - scopes=["identify", "email", "guilds", "guilds.join"], -) - -if auth_response.status != "completed": - print("Please complete the authorization challenge in your browser:") - print(auth_response.url) - -# Wait for the authorization to complete -auth_response = client.auth.wait_for_completion(auth_response) - -token = auth_response.context.token -# Do something interesting with the token... -``` - - - - - -```javascript {8-10} -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const userId = "{arcade_user_id}"; - -// Start the authorization process -const authResponse = await client.auth.start(userId, "discord", { - scopes: ["identify", "email", "guilds", "guilds.join"], -}); - -if (authResponse.status !== "completed") { - console.log("Please complete the authorization challenge in your browser:"); - console.log(authResponse.url); -} - -// Wait for the authorization to complete -authResponse = await client.auth.waitForCompletion(authResponse); - -const token = authResponse.context.token; -// Do something interesting with the token... -``` - - - - - -## Using Discord auth in custom tools - -You can author your own [custom tools](/guides/create-tools/tool-basics/build-mcp-server) that interact with the Discord API. - -Use the `Discord()` auth class to specify that a tool requires authorization with Discord. The `context.authorization.token` field will be automatically populated with the user's Discord token: - -```python {5-6,9-13,23} -from typing import Annotated, Optional - -import httpx - -from arcade_tdk import ToolContext, tool -from arcade_tdk.auth import Discord - - -@tool( - requires_auth=Discord( - scopes=["guilds"], - ) -) -async def list_servers( - context: ToolContext, - user_id: Annotated[ - Optional[str], - "The user's user ID. Defaults to '@me' for the current user.", - ] = "@me", -) -> Annotated[dict, "List of servers the user is a member of"]: - """List a Discord user's servers they are a member of.""" - url = f"https://discord.com/api/users/{user_id}/guilds" - headers = {"Authorization": f"Bearer {context.authorization.token}"} - - async with httpx.AsyncClient() as client: - response = await client.get(url, headers=headers) - response.raise_for_status() - return response.json() -``` diff --git a/app/en/resources/integrations/social-communication/linkedin/page.mdx b/app/en/resources/integrations/social-communication/linkedin/page.mdx deleted file mode 100644 index b4b1f76dd..000000000 --- a/app/en/resources/integrations/social-communication/linkedin/page.mdx +++ /dev/null @@ -1,76 +0,0 @@ -# LinkedIn - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade LinkedIn MCP Server provides a pre-built set of tools for interacting with LinkedIn. These tools make it easy to build agents and AI apps that can: - -- Create a post - -## Available Tools - -These tools are currently available in the Arcade LinkedIn MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server) with the [LinkedIn auth - provider](/references/auth-providers/linkedin#using-linkedin-auth-in-custom-tools). - - -## Linkedin.CreateTextPost - -
- - -Share a new text post to LinkedIn. - -**Parameters** - -- **`text`** _(string, required)_ The text content of the post. - ---- - -## Auth - -The Arcade LinkedIn MCP Sever uses the [LinkedIn auth provider](/references/auth-providers/linkedin) to connect to users' LinkedIn accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the LinkedIn auth provider](/references/auth-providers/linkedin#configuring-linkedin-auth) with your own LinkedIn app credentials. - - diff --git a/app/en/resources/integrations/social-communication/microsoft-teams/_meta.tsx b/app/en/resources/integrations/social-communication/microsoft-teams/_meta.tsx deleted file mode 100644 index 53eaa37a1..000000000 --- a/app/en/resources/integrations/social-communication/microsoft-teams/_meta.tsx +++ /dev/null @@ -1,7 +0,0 @@ -import type { MetaRecord } from "nextra"; - -export default { - reference: { - title: "Reference", - }, -} satisfies MetaRecord; diff --git a/app/en/resources/integrations/social-communication/microsoft-teams/page.mdx b/app/en/resources/integrations/social-communication/microsoft-teams/page.mdx deleted file mode 100644 index 74a200eb1..000000000 --- a/app/en/resources/integrations/social-communication/microsoft-teams/page.mdx +++ /dev/null @@ -1,833 +0,0 @@ ---- -asIndexPage: true ---- - -# Microsoft Teams - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Microsoft Teams MCP Server provides a comprehensive set of tools for interacting with Microsoft Teams. Users can efficiently manage teams, channels, and chats, enabling them to: - -- Retrieve information about teams, channels, and chats. -- List, search, and manage users and teams. -- Send and reply to messages in both channels and chats. -- Access and search for messages across chats and channels. -- Create new chats and retrieve metadata about existing chats and channels. - -This MCP Sever streamlines collaboration and communication within Microsoft Teams, making it easier to manage interactions and information flow. - - - The Microsoft Teams MCP Server requires a Microsoft 365 account. Personal Microsoft accounts are not supported. - - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## MicrosoftTeams.WhoAmI - -
- - -Get information about the current user and their Microsoft Teams environment. - -**Parameters** - -This tool does not take any parameters. - -## MicrosoftTeams.GetSignedInUser - -
- - -Get the user currently signed in Microsoft Teams. - -**Parameters** - -This tool does not take any parameters. - -## MicrosoftTeams.ListUsers - -
- - -Lists the users in the Microsoft Teams tenant. - -**Parameters** - -- **limit** (`integer`, optional) The maximum number of users to return. Defaults to 50, max is 100. -- **offset** (`integer`, optional) The offset to start from. - -## MicrosoftTeams.SearchUsers - -
- - -Searches for users in the Microsoft Teams tenant. - -**Parameters** - -- **keywords** (`array[string]`, required) The keywords to match against users' names. -- **match_type** (`Enum` [PartialMatchType](/resources/integrations/social-communication/microsoft-teams/reference#PartialMatchType), optional) The type of match to use for the keywords. Defaults to match_any_of_the_keywords. -- **limit** (`integer`, optional) The maximum number of users to return. Defaults to 50, max is 999. -- **offset** (`integer`, optional) The offset to start from. - -## MicrosoftTeams.GetChannelMetadata - -
- - -Retrieves metadata about a Microsoft Teams channel and its members. - -**Parameters** - -- **channel_id** (`string`, optional) The ID of the channel to get. Provide either this or channel_name. -- **channel_name** (`string`, optional) The name of the channel to get. Provide either this or channel_id. -- **team_id_or_name** (`string`, optional) The ID or name of the team to get the channel of (optional). If not provided: in case the user is a member of a single team, the tool will use it; otherwise an error will be returned with a list of all teams to pick from. - -## MicrosoftTeams.ListChannels - -
- - -Lists channels in Microsoft Teams (including shared incoming channels). - -**Parameters** - -- **limit** (`integer`, optional) The maximum number of channels to return. Defaults to 50, max is 100. -- **offset** (`integer`, optional) The offset to start from. -- **team_id_or_name** (`string`, optional) The ID or name of the team to list the channels of (optional). If not provided: in case the user is a member of a single team, the tool will use it; otherwise an error will be returned with a list of all teams to pick from. - -## MicrosoftTeams.SearchChannels - -
- - -Searches for channels in a given Microsoft Teams team. - -**Parameters** - -- **keywords** (`array[string]`, required) The keywords to search for in channel names. -- **match_type** (`Enum` [MatchType](/resources/integrations/social-communication/microsoft-teams/reference#MatchType), optional) The type of match to use for the search. Defaults to 'partial_match_all_keywords'. -- **limit** (`integer`, optional) The maximum number of channels to return. Defaults to 50. Max of 100. -- **offset** (`integer`, optional) The offset to start from. -- **team_id_or_name** (`string`, optional) The ID or name of the team to search the channels of (optional). If not provided: in case the user is a member of a single team, the tool will use it; otherwise an error will be returned with a list of all teams to pick from. - -## MicrosoftTeams.GetChannelMessages - -
- - -Retrieves the messages in a Microsoft Teams channel. - -**Parameters** - -- **channel_id** (`string`, optional) The ID of the channel to get the messages of. -- **channel_name** (`string`, optional) The name of the channel to get the messages of. -- **limit** (`integer`, optional) The maximum number of messages to return. Defaults to 50, max is 50. -- **team_id_or_name** (`string`, optional) The ID or name of the team to get the messages of. If not provided: in case the user is a member of a single team, the tool will use it; otherwise an error will be returned with a list of all teams to pick from. - -## MicrosoftTeams.GetChannelMessageReplies - -
- - -Retrieves the replies to a Microsoft Teams channel message. - -**Parameters** - -- **message_id** (`string`, required) The ID of the message to get the replies of. -- **channel_id_or_name** (`string`, required) The ID or name of the channel to get the replies of. -- **team_id_or_name** (`string`, optional) The ID or name of the team to get the replies of. If not provided: in case the user is a member of a single team, the tool will use it; otherwise an error will be returned with a list of all teams to pick from. - -## MicrosoftTeams.SendMessageToChannel - -
- - -Sends a message to a Microsoft Teams channel. - -**Parameters** - -- **message** (`string`, required) The message to send to the channel. -- **channel_id_or_name** (`string`, required) The ID or name of the channel to send the message to. -- **team_id_or_name** (`string`, optional) The ID or name of the team to send the message to. If not provided: in case the user is a member of a single team, the tool will use it; otherwise an error will be returned with a list of all teams to pick from. - -## MicrosoftTeams.ReplyToChannelMessage - -
- - -Sends a reply to a Microsoft Teams channel message. - -**Parameters** - -- **reply_content** (`string`, required) The content of the reply message. -- **message_id** (`string`, required) The ID of the message to reply to. -- **channel_id_or_name** (`string`, required) The ID or name of the channel to send the message to. -- **team_id_or_name** (`string`, optional) The ID or name of the team to send the message to. If not provided: in case the user is a member of a single team, the tool will use it; otherwise an error will be returned with a list of all teams to pick from. - -## MicrosoftTeams.ListTeams - -
- - -Lists the teams the current user is associated with in Microsoft Teams. - -**Parameters** - -- **membership_type** (`Enum` [TeamMembershipType](/resources/integrations/social-communication/microsoft-teams/reference#TeamMembershipType), optional) The type of membership to filter by. Defaults to 'direct_member_of_the_team'. - -## MicrosoftTeams.SearchTeams - -
- - -Searches for teams available to the current user in Microsoft Teams. - -**Parameters** - -- **team_name_starts_with** (`string`, required) The prefix to match the name of the teams. -- **limit** (`integer`, optional) The maximum number of teams to return. Defaults to 10, max is 50. -- **next_page_token** (`string`, optional) The token to use to get the next page of results. - -## MicrosoftTeams.GetTeam - -
- - -Retrieves metadata about a team in Microsoft Teams. - -**Parameters** - -- **team_id** (`string`, optional) The ID of the team to get. -- **team_name** (`string`, optional) The name of the team to get. Prefer providing a team_id, when available, for optimal performance. - -## MicrosoftTeams.ListTeamMembers - -
- - -Lists the members of a team in Microsoft Teams. - -**Parameters** - -- **team_id** (`string`, optional) The ID of the team to list the members of. -- **team_name** (`string`, optional) The name of the team to list the members of. Prefer providing a team_id, when available, for optimal performance. -- **limit** (`integer`, optional) The maximum number of members to return. Defaults to 50, max is 999. -- **offset** (`integer`, optional) The number of members to skip. Defaults to 0. - -## MicrosoftTeams.SearchTeamMembers - -
- - -Searches for members of a team in Microsoft Teams. - -**Parameters** - -- **member_name_starts_with** (`string`, required) The prefix to match the name of the members. -- **team_id** (`string`, optional) The ID of the team to list the members of. -- **team_name** (`string`, optional) The name of the team to list the members of. Prefer providing a team_id, when available, for optimal performance. -- **limit** (`integer`, optional) The maximum number of members to return. Defaults to 50, max is 100. -- **offset** (`integer`, optional) The number of members to skip. Defaults to 0. - -## MicrosoftTeams.GetChatMessageById - -
- - -Retrieves a Microsoft Teams chat message. - -**Parameters** - -- **message_id** (`string`, required) The ID of the message to get. -- **chat_id** (`string`, required) The ID of the chat to get the message from. -- **user_ids** (`array[string]`, optional) The IDs of the users in the chat to get the message from. -- **user_names** (`array[string]`, optional) The names of the users in the chat to get the message from. Prefer providing user_ids, when available, since the performance is better. - -## MicrosoftTeams.GetChatMessages - -
- - -Retrieves messages from a Microsoft Teams chat (individual or group). - -**Parameters** - -- **chat_id** (`string`, optional) The ID of the chat to get messages from. -- **user_ids** (`array[string]`, optional) The IDs of the users in the chat to get messages from. -- **user_names** (`array[string]`, optional) The names of the users in the chat to get messages from. Prefer providing user_ids, when available, since the performance is better. -- **start_datetime** (`string`, optional) The start date to filter messages. Provide a string in the format 'YYYY-MM-DD' or 'YYYY-MM-DD HH:MM:SS'. Defaults to None (no start date filter). -- **end_datetime** (`string`, optional) The end date to filter messages. Provide a string in the format 'YYYY-MM-DD' or 'YYYY-MM-DD HH:MM:SS'. Defaults to None (no end date filter). -- **limit** (`integer`, optional) The maximum number of messages to return. Defaults to 50, max is 50. - -## MicrosoftTeams.GetChatMetadata - -
- - -Retrieves metadata about a Microsoft Teams chat. - -**Parameters** - -- **chat_id** (`string`, optional) The ID of the chat to get metadata about. -- **user_ids** (`array[string]`, optional) The IDs of the users in the chat to get metadata about. -- **user_names** (`array[string]`, optional) The names of the users in the chat to get messages from. Prefer providing user_ids, when available, since the performance is better. - -## MicrosoftTeams.ListChats - -
- - -List the Microsoft Teams chats to which the current user is a member of. - -**Parameters** - -- **limit** (`integer`, optional) The maximum number of chats to return. Defaults to 50, max is 50. -- **next_page_token** (`string`, optional) The token to use to get the next page of results. - -## MicrosoftTeams.SendMessageToChat - -
- - -Sends a message to a Microsoft Teams chat. - -**Parameters** - -- **message** (`string`, required) The message to send to the chat. -- **chat_id** (`string`, optional) The ID of the chat to send the message. -- **user_ids** (`array[string]`, optional) The IDs of the users in the chat to send the message. -- **user_names** (`array[string]`, optional) The names of the users in the chat to send the message. Prefer providing user_ids, when available, since the performance is better. - -## MicrosoftTeams.ReplyToChatMessage - -
- - -Sends a reply to a Microsoft Teams chat message. - -**Parameters** - -- **reply_content** (`string`, required) The content of the reply message. -- **message_id** (`string`, required) The ID of the message to reply to. -- **chat_id** (`string`, optional) The ID of the chat to send the message. -- **user_ids** (`array[string]`, optional) The IDs of the users in the chat to send the message. -- **user_names** (`array[string]`, optional) The names of the users in the chat to send the message. Prefer providing user_ids, when available, since the performance is better. - -## MicrosoftTeams.CreateChat - -
- - -Creates a Microsoft Teams chat. - -**Parameters** - -- **user_ids** (`array[string]`, optional) The IDs of the users to create a chat with. -- **user_names** (`array[string]`, optional) The names of the users to create a chat with. - -## MicrosoftTeams.SearchPeople - -
- - -Searches for people the user has interacted with in Microsoft Teams and other 365 products. - -**Parameters** - -- **keywords** (`array[string]`, required) The keywords to match against people's names. Provide one or more expressions. -- **match_type** (`Enum` [PartialMatchType](/resources/integrations/social-communication/microsoft-teams/reference#PartialMatchType), optional) The type of match to use for the keywords. Defaults to match_any_of_the_keywords. -- **limit** (`integer`, optional) The maximum number of people to return. Defaults to 50, max is 100. -- **next_page_token** (`string`, optional) The next page token to use for pagination. - -## MicrosoftTeams.SearchMessages - -
- - -Searches for messages across Microsoft Teams chats and channels. - -**Parameters** - -- **keywords** (`string`, required) The keywords to match against messages' content. -- **limit** (`integer`, optional) The maximum number of messages to return. Defaults to 50, max is 50. -- **offset** (`integer`, optional) The offset to start from. - -## Auth - -The Arcade MicrosoftTeams MCP Sever uses the [Microsoft auth provider](/references/auth-providers/microsoft) to connect to users' MicrosoftTeams accounts. Please refer to the [Microsoft auth provider](/references/auth-providers/microsoft) documentation to learn how to configure auth. - - diff --git a/app/en/resources/integrations/social-communication/microsoft-teams/reference/page.mdx b/app/en/resources/integrations/social-communication/microsoft-teams/reference/page.mdx deleted file mode 100644 index a4e6c6802..000000000 --- a/app/en/resources/integrations/social-communication/microsoft-teams/reference/page.mdx +++ /dev/null @@ -1,21 +0,0 @@ -# MicrosoftTeams Reference - -Below is a reference of enumerations used by some tools in the MicrosoftTeams MCP Server: - -## PartialMatchType - -- **PARTIAL_ALL**: `match_all_keywords` -- **PARTIAL_ANY**: `match_any_of_the_keywords` - -## MatchType - -- **EXACT**: `exact_match` -- **PARTIAL_ALL**: `partial_match_all_keywords` -- **PARTIAL_ANY**: `partial_match_any_of_the_keywords` - -## TeamMembershipType - -- **DIRECT_MEMBER**: `direct_member_of_the_team` -- **MEMBER_OF_SHARED_CHANNEL**: `member_of_a_shared_channel_in_another_team` - - diff --git a/app/en/resources/integrations/social-communication/reddit/page.mdx b/app/en/resources/integrations/social-communication/reddit/page.mdx deleted file mode 100644 index dff788543..000000000 --- a/app/en/resources/integrations/social-communication/reddit/page.mdx +++ /dev/null @@ -1,410 +0,0 @@ -# Reddit - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Reddit MCP Server provides a pre-built set of tools for interacting with Reddit. These tools make it easy to build agents and AI apps that can: - -- Submit text posts -- Comment on posts -- Reply to comments -- Get posts (title and other metadata) in a subreddit -- Get content (body) of posts -- Get top-level comments of a post -- Determine if a subreddit exists or is private -- Get rules of a subreddit -- Get the authenticated user's username -- Get posts by the authenticated user - -## Available Tools - -These tools are currently available in the Arcade Reddit MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server) with the [Reddit auth - provider](/references/auth-providers/reddit#using-reddit-auth-in-custom-tools). - - -## Reddit.SubmitTextPost - -
- - -Submit a text-based post to a subreddit - -**Parameters** - -- **`subreddit`** _(string, required)_ The name of the subreddit to which the post will be submitted. -- **`title`** _(string, required)_ The title of the submission. -- **`body`** _(string, optional)_ The body of the post in markdown format. Should never be the same as the title. -- **`nsfw`** _(boolean, optional)_ Indicates if the submission is NSFW. Default is `False`. -- **`spoiler`** _(boolean, optional)_ Indicates if the post is marked as a spoiler. Default is `False`. -- **`send_replies`** _(boolean, optional)_ If true, sends replies to the user's inbox. Default is `True`. - ---- - -## Reddit.CommentOnPost - -
- - -Comment on a Reddit post. - -**Parameters** - -- **`post_identifier`** _(string, required)_ The identifier of the Reddit post. The identifier may be a Reddit URL, a permalink, a fullname, or a post id. -- **`text`** _(string, required)_ The body of the comment in markdown format. - ---- - -## Reddit.ReplyToComment - -
- - -Reply to a Reddit comment - -**Parameters** - -- **`comment_identifier`** _(string, required)_ The identifier of the Reddit comment to reply to. The identifier may be a comment ID, a Reddit URL to the comment, a permalink to the comment, or the fullname of the comment. -- **`text`** _(string, required)_ The body of the reply in markdown format. - ---- - -## Reddit.GetPostsInSubreddit - -
- - -Gets posts titles, links, and other metadata in the specified subreddit. - -The time_range is required if the listing type is 'top' or 'controversial'. - -**Parameters** - -- **`subreddit`** _(string, required)_ The name of the subreddit to fetch posts from. -- **`listing`** _(enum ([SubredditListingType](/resources/integrations/social-communication/reddit#subredditlistingtype)), optional)_ The type of listing to fetch. For simple listings such as 'hot', 'new', or 'rising', the time_range parameter is ignored. For time-based listings such as 'top' or 'controversial', the 'time_range' parameter is required. Default is 'hot'. -- **`limit`** _(integer, optional)_ The maximum number of posts to fetch. Default is 10, max is 100. -- **`cursor`** _(str, optional)_ The pagination token from a previous call. -- **`time_range`** _(enum ([RedditTimeFilter](/resources/integrations/social-communication/reddit#reddittimefilter)), optional)_ The time range for filtering posts. Must be provided if the listing type is 'top' or 'controversial'. Otherwise, it is ignored. Defaults to 'today'. - ---- - -## Reddit.GetContentOfPost - -
- - -Get the content (body) of a Reddit post by its identifier. - -**Parameters** - -- **`post_identifier`** _(string, required)_ The identifier of the Reddit post. The identifier may be a Reddit URL, a permalink, a fullname, or a post id. - ---- - -## Reddit.GetContentOfMultiplePosts - -
- - -Get the content (body) of multiple Reddit posts by their identifiers in a single request - -**Parameters** - -- **`post_identifiers`** _(list of strings, required)_ A list of identifiers of the Reddit posts. The identifiers may be Reddit URLs, permalinks, fullnames, or post ids. - ---- - -## Reddit.GetTopLevelComments - -
- - -Get the first page of top-level comments of a Reddit post. - -**Parameters** - -- **`post_identifier`** _(string, required)_ The identifier of the Reddit post. The identifier may be a Reddit URL, a permalink, a fullname, or a post id. - ---- - -## Reddit.CheckSubredditAccess - -
- - -Checks whether the specified subreddit exists and also if it is accessible to the authenticated user. - -**Parameters** - -- **`subreddit`** _(string, required)_ The name of the subreddit to check. - ---- - -## Reddit.GetSubredditRules - -
- - -Gets the rules of the specified subreddit - -**Parameters** - -- **`subreddit`** _(string, required)_ The name of the subreddit for which to fetch rules. - ---- - -## Reddit.GetMyUsername - -
- - -Gets the username of the authenticated user. - ---- - -## Reddit.GetMyPosts - -
- - -Get posts that were created by the authenticated user sorted by newest first - -**Parameters** - -- **`limit`** _(integer, optional)_ The maximum number of posts to fetch. Default is 10, max is 100. -- **`include_body`** _(boolean, optional)_ Whether to include the body of the posts in the response. Default is `True`. -- **`cursor`** _(str, optional)_ The pagination token from a previous call. - -## Auth - -The Arcade Reddit MCP Sever uses the [Reddit auth provider](/references/auth-providers/reddit) to connect to users' Reddit accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Reddit auth provider](/references/auth-providers/reddit#configuring-reddit-auth) with your own Reddit app credentials. - -## Reference - -### SubredditListingType - -The type of listing to fetch. - -- **`HOT`** _(string: "hot")_: The hottest posts in the subreddit. -- **`NEW`** _(string: "new")_: The newest posts in the subreddit. -- **`RISING`** _(string: "rising")_: The posts that are trending up in the subreddit. -- **`TOP`** _(string: "top")_: The top posts in the subreddit (time-based). -- **`CONTROVERSIAL`** _(string: "controversial")_: The posts that are currently controversial in the subreddit (time-based). - -### RedditTimeFilter - -The time range for filtering posts. - -- **`NOW`** _(string: "NOW")_ -- **`TODAY`** _(string: "TODAY")_ -- **`THIS_WEEK`** _(string: "THIS_WEEK")_ -- **`THIS_MONTH`** _(string: "THIS_MONTH")_ -- **`THIS_YEAR`** _(string: "THIS_YEAR")_ -- **`ALL_TIME`** _(string: "ALL_TIME")_ - - diff --git a/app/en/resources/integrations/social-communication/slack-api/page.mdx b/app/en/resources/integrations/social-communication/slack-api/page.mdx deleted file mode 100644 index deff39fb4..000000000 --- a/app/en/resources/integrations/social-communication/slack-api/page.mdx +++ /dev/null @@ -1,2319 +0,0 @@ -# SlackApi - -import StarterToolInfo from "@/app/_components/starter-tool-info"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The SlackApi MCP Sever offers a comprehensive set of tools for administering Slack workspaces, automating messaging, managing channels, calls, files, emojis, user groups, invites, and user/team data. Key capabilities include: - -- Workspace & team management: create/update team name/description, fetch team info, settings, preferences, integration logs, billable users, and list/inspect teams in an Enterprise org. -- User and identity operations: list workspace/team users, find users by email, get user profiles, presence, identity, and manage profile photos. -- Channels & conversations: create/join conversations, get conversation info and members, list channels/conversations accessible to a user, open/resume DMs, invite users, set read cursors, and manage shared channel invites. -- Messaging & scheduling: send messages (regular and ephemeral), schedule/delete scheduled messages, list scheduled messages, get message permalinks, and search messages/files. -- Calls: register calls, get call info, add/remove participants. -- Files & sharing: obtain external upload URLs, fetch remote file info, share remote files to channels, enable public sharing. -- Bookmarks, pins & reactions: add/edit/remove bookmarks, pin/list pinned items, add/remove reactions. -- Emoji management: list custom emojis, rename emojis, and add emoji aliases (Enterprise). -- User groups: create, enable/disable, list, update user groups and their membership. -- Invite/workflow management: list pending/approved/denied workspace invites, accept/approve/deny shared channel invites, and list shared invites. -- Admin tools & verification: fetch workspace settings, owners, channels for org usergroups, list enterprise emojis/teams, revoke tokens, verify API calling code, and retrieve integration logs. -- Custom behavior: provide custom unfurling for URLs. - -This MCP Sever is designed for admins and apps requiring broad Slack API access (admin, invites, calls, chat, files, usergroups, reactions, users scopes). - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## SlackApi.AddSlackEmojiAlias - -
- - -Add an emoji alias in a Slack Enterprise organization. - -**Parameters** - -- **emoji_alias_name** (`string`, required) The new alias for the specified emoji. Whitespace or colons will be automatically trimmed. -- **target_emoji_name** (`string`, required) The name of the existing emoji to which the new alias is being added. Remove any surrounding whitespace or colons. - -## SlackApi.ListSlackEnterpriseEmojis - -
- - -Retrieve emojis for a Slack Enterprise organization. - -**Parameters** - -- **pagination_cursor** (`string`, optional) Cursor for fetching the next page of emojis. Use 'next_cursor' from the previous response. -- **max_items_to_return** (`integer`, optional) The maximum number of emojis to return, between 1 and 1000 inclusive. (default: '100') - -## SlackApi.RenameSlackEmoji - -
- - -Rename an emoji in a Slack Enterprise organization. - -**Parameters** - -- **current_emoji_name** (`string`, required) The current name of the emoji to be renamed. Colons (:myemoji:) around the value are optional. -- **new_emoji_name** (`string`, required) The new name to assign to the emoji in the Slack Enterprise organization. - -## SlackApi.ListApprovedWorkspaceInviteRequests - -
- - -Retrieve all approved workspace invite requests from Slack. - -**Parameters** - -- **workspace_id** (`string`, optional) ID for the Slack workspace where the invite requests were made. Required if the Enterprise org has more than one workspace. -- **pagination_cursor** (`string`, optional) Value of the `next_cursor` from the previous API response for paginating results. -- **result_limit** (`integer`, optional) Specify the number of results to return, between 1 and 1000 inclusive. (default: '100') - -## SlackApi.ListDeniedSlackInviteRequests - -
- - -Retrieve denied Slack workspace invite requests. - -**Parameters** - -- **workspace_team_id** (`string`, optional) ID of the workspace where the invite requests were made. Required if the Enterprise org has multiple workspaces. -- **pagination_cursor** (`string`, optional) The cursor value from the previous API response to fetch the next set of results. Use this for pagination. -- **result_limit** (`integer`, optional) Specify the number of denied invite request results to return, between 1 and 1000 inclusive. (default: '100') - -## SlackApi.ListPendingWorkspaceInvites - -
- - -Retrieve all pending workspace invite requests from Slack. - -**Parameters** - -- **workspace_id** (`string`, optional) The ID of the workspace to list pending invite requests from. Required for multi-workspace enterprises. -- **pagination_cursor** (`string`, optional) The cursor value for fetching the next set of invite requests. Use the `next_cursor` from the previous response if available. -- **result_limit** (`integer`, optional) The number of invite requests to return per call, must be between 1 and 1000. (default: '100') - -## SlackApi.ListTeamsInEnterprise - -
- - -Retrieve all teams in an Enterprise organization on Slack. - -**Parameters** - -- **maximum_items_to_return** (`integer`, optional) Specify the maximum number of teams to retrieve. Must be a positive integer, up to 1000. (default: '100') -- **pagination_cursor** (`string`, optional) Use this to retrieve the next page of results by setting it to the `next_cursor` from the previous response. - -## SlackApi.ListSlackWorkspaceOwners - -
- - -Retrieve all owners in a Slack workspace. - -**Parameters** - -- **workspace_id** (`string`, required) The unique identifier of the Slack workspace for which to list the owners. -- **maximum_items_to_return** (`integer`, optional) Specifies the maximum number of owners to return, ranging from 1 to 1000. (default: '100') -- **pagination_cursor** (`string`, optional) The cursor from the previous response used to fetch the next page of owners. Leave empty for the first page. - -## SlackApi.FetchWorkspaceSettingsInfo - -
- - -Retrieve settings information for a Slack workspace. - -**Parameters** - -- **slack_team_id** (`string`, required) The unique identifier of the Slack workspace (team) for which to fetch the settings information. - -## SlackApi.SetWorkspaceDescription - -
- - -Update the description of a Slack workspace. - -**Parameters** - -- **workspace_id** (`string`, required) The unique identifier for the Slack workspace where the description will be updated. -- **workspace_description** (`string`, required) The new description to set for the Slack workspace. Provide a clear and concise text. - -## SlackApi.SetSlackWorkspaceName - -
- - -Update the name of a Slack workspace. - -**Parameters** - -- **workspace_id** (`string`, required) Unique identifier for the Slack workspace whose name you want to update. -- **new_workspace_name** (`string`, required) The desired new name for the Slack workspace. This replaces the existing name. - -## SlackApi.ListChannelsForUsergroup - -
- - -Retrieve channels linked to an org-level user group in Slack. - -**Parameters** - -- **usergroup_id** (`string`, required) The ID of the IDP group to list channels for. It identifies which organizational group to retrieve the default channels from. -- **workspace_id** (`string`, optional) The unique identifier for the Slack workspace. -- **include_member_count_in_channels** (`boolean`, optional) Set to true to include the count of members for each channel, otherwise set to false. - -## SlackApi.ListWorkspaceUsers - -
- - -Retrieve a list of users from a Slack workspace. - -**Parameters** - -- **workspace_team_id** (`string`, optional) The ID of the Slack workspace (e.g., T1234) to filter users from. Only users from this workspace will be listed. -- **pagination_cursor** (`string`, optional) Use this to navigate through paginated results by setting it to the `next_cursor` from a previous response. -- **user_retrieval_limit** (`integer`, optional) Maximum number of users to retrieve per page from the Slack workspace. (default: '100') -- **return_only_active_users** (`boolean`, optional) Return only active users if true; return only deactivated users if false. Default is true. -- **include_deactivated_user_workspaces** (`boolean`, optional) Include workspaces for users even if they are deactivated. Only applies with org token and no team_id. Default is false. -- **return_only_guest_users** (`boolean`, optional) If true, returns only guests and their expiration dates that belong to the specified team_id. - -## SlackApi.CheckApiCallingCode - -
- - -Verify the correctness of API calling code for Slack. - -**Parameters** - -- **simulate_error_response** (`string`, optional) Specify an error code to simulate an error response for testing API calls. Useful for testing error handling. - -## SlackApi.RevokeSlackToken - -
- - -Revoke a Slack authentication token. - -**Parameters** - -- **trigger_testing_mode** (`boolean`, optional) Set to true to trigger testing mode where the token will not be revoked. Useful for testing. - -## SlackApi.EditSlackBookmark - -
- - -Edit an existing bookmark in a Slack channel. - -**Parameters** - -- **slack_channel_id** (`string`, required) The ID of the Slack channel where the bookmark will be updated. -- **target_bookmark_id** (`string`, required) The unique identifier of the bookmark you want to update. -- **bookmark_title** (`string`, optional) The new title for the bookmark to update. -- **bookmark_link** (`string`, optional) URL of the bookmark to be edited. Ensure it is a valid format starting with http or https. -- **emoji_tag** (`string`, optional) The emoji tag to apply to the bookmark link. It should be a valid emoji code (e.g., :smile:). - -## SlackApi.RemoveSlackBookmark - -
- - -Remove a bookmark from a Slack channel. - -**Parameters** - -- **slack_channel_id_to_remove_bookmark** (`string`, required) The ID of the Slack channel from which the bookmark should be removed. This ID specifies the target channel and is required to locate and delete the bookmark. -- **bookmark_id_to_remove** (`string`, required) The ID of the bookmark to be removed from a Slack channel. Ensure it is specified correctly to delete the correct bookmark. -- **quip_section_id** (`string`, optional) The ID of the Quip section to unbookmark. This is required to specify which section's bookmark should be removed. - -## SlackApi.GetSlackBotInfo - -
- - -Retrieve details about a Slack bot user. - -**Parameters** - -- **target_bot_id** (`string`, optional) The unique bot ID for which information is requested. This ID is specific to each workspace the bot is in. -- **team_id_for_org_token_use** (`string`, optional) Encoded team or enterprise ID where the bot exists. Required if using an organization token. Ignored if using a workspace-level token. - -## SlackApi.RegisterSlackCall - -
- - -Registers a new call on Slack. - -**Parameters** - -- **unique_call_id** (`string`, required) A unique ID for the Call, provided by the 3rd-party Call provider. Ensure it is unique across all calls from your service. -- **call_join_url** (`string`, required) The URL required for a client to join the Call on Slack. -- **optional_human_readable_display_id** (`string`, optional) An optional, human-readable ID for the call, supplied by the third-party provider. This ID will be displayed in the Call object if given. -- **desktop_app_join_url** (`string`, optional) The URL used to directly launch the 3rd-party Call from Slack clients, if provided. -- **call_start_timestamp** (`integer`, optional) Unix timestamp indicating when the call is scheduled to start. -- **call_title** (`string`, optional) The name of the Call to be registered on Slack. This title will be used to identify the Call within Slack. -- **call_creator_user_id** (`string`, optional) The valid Slack user ID of the creator of this call. Optional if using a user token, which defaults to the authed user. -- **participants_info** (`array[string]`, optional) A list of participants to register for the call, including 'slack_id', 'external_id', 'display_name', and 'avatar_url' for each user. - -## SlackApi.GetCallInformation - -
- - -Retrieve detailed information about a specific call in Slack. - -**Parameters** - -- **call_id** (`string`, required) The unique identifier of the call as returned by the `calls.add` method. This ID is necessary to retrieve detailed call information. - -## SlackApi.AddCallParticipants - -
- - -Add new participants to a Slack call. - -**Parameters** - -- **call_id** (`string`, required) The unique identifier for the call, as returned by the `calls.add` method. This ID specifies which call the participants will be added to. -- **participant_users** (`array[string]`, required) List of users to add, specified by `slack_id` or `external_id`. Include optional `display_name` and `avatar_url` for each user. - -## SlackApi.RemoveCallParticipants - -
- - -Remove participants from a Slack call. - -**Parameters** - -- **call_id** (`string`, required) The unique identifier for the call from which participants are to be removed. This `id` is obtained from the `calls.add` method. -- **users_to_remove** (`array[string]`, required) A list of user IDs to remove as participants from the call. Refer to Slack's documentation for specifying user IDs. - -## SlackApi.DeleteScheduledSlackMessage - -
- - -Delete a pending scheduled message from Slack queue. - -**Parameters** - -- **channel_id** (`string`, required) The ID of the channel where the scheduled message is set to post. Required to identify the correct message to delete. -- **scheduled_message_id** (`string`, required) The ID of the scheduled message to be deleted. This ID is obtained from the `chat.scheduleMessage` response. -- **delete_as_authenticated_user** (`boolean`, optional) Set to true to delete the message as the authenticated user with `chat:write:user` scope. Bot users are considered authenticated users. If false, the message will be deleted with `chat:write:bot` scope. - -## SlackApi.GetSlackMessagePermalink - -
- - -Retrieve a permalink URL for a specific Slack message. - -**Parameters** - -- **channel_id** (`string`, required) The unique identifier of the Slack conversation or channel containing the message. -- **message_timestamp** (`string`, required) The unique timestamp of the message to retrieve the permalink for. It identifies the message within the Slack channel. - -## SlackApi.SendEphemeralMessageSlack - -
- - -Send an ephemeral message to a user in a Slack channel. - -**Parameters** - -- **target_channel** (`string`, required) The channel, private group, or IM channel where the ephemeral message will be sent. Accepts an encoded ID or the channel's name. -- **recipient_user_id** (`string`, required) The ID of the user who will receive the ephemeral message. Must be in the specified channel. -- **structured_attachments** (`array[string]`, optional) A JSON-encoded array of structured attachments for the message. Presented as a URL-encoded string. -- **structured_blocks** (`array[string]`, optional) A URL-encoded JSON array of structured Slack block elements. Use for rich message formatting. -- **message_icon_emoji** (`string`, optional) Emoji to display as the message icon, overriding icon_url. Specify using the emoji name like :smile:. -- **message_icon_url** (`string`, optional) URL for the image to be used as the icon for the message. It overrides the icon_emoji if provided. -- **message_markdown_text** (`string`, optional) The main text formatted in markdown to be sent as an ephemeral message. Do not use with `blocks` or `text`. Character limit: 12,000. -- **message_parse_mode** (`string`, optional) Specifies how the message text is interpreted. Options are: 'none', 'full', 'mrkdwn', or 'false'. Defaults to 'none'. (default: 'none') -- **ephemeral_message_text** (`string`, optional) The main text of the ephemeral message for Slack. It acts as a fallback when using blocks; can be formatted as plain text or markdown. Limit to a few thousand bytes. -- **parent_message_timestamp** (`string`, optional) The timestamp of the parent message to post this ephemeral message in its thread. Ensure there is already an active thread. -- **bot_username** (`string`, optional) The username for the bot sending the ephemeral message. This sets the display name in the Slack message. -- **link_names_auto_link** (`boolean`, optional) Set to true to automatically find and link channel names and usernames. - -## SlackApi.SendSlackMessage - -
- - -Sends a message to a Slack channel. - -**Parameters** - -- **target_channel_id_or_name** (`string`, required) The encoded ID or name of the channel, private group, or IM where the message will be sent. Retrieve using Slack's conversations.list API. -- **message_attachments** (`array[string]`, optional) A JSON array of structured attachment objects for the message, provided as a URL-encoded string. Example: `[{"pretext": "pre-hello", "text": "text-world"}]`. -- **structured_blocks** (`array[string]`, optional) A JSON-based array of structured blocks for constructing messages using Block Kit. Provide as a URL-encoded string. Include fallback text if necessary. -- **emoji_icon_for_message** (`string`, optional) Emoji to display as the icon for the Slack message. Overrides any image URL icon. -- **message_icon_url** (`string`, optional) URL to an image to use as the icon for the message. Overrides any specified icon emoji. -- **message_markdown** (`string`, optional) The message text formatted using markdown, up to 12,000 characters. Cannot be used with `blocks` or `text`. -- **message_metadata** (`string`, optional) A JSON object with 'event_type' and 'event_payload' fields, URL-encoded, providing additional metadata for the message. -- **parse_mode** (`string`, optional) Specifies how the message content should be treated. Options are 'none' to remove hyperlinks or 'full' to ignore markdown formatting. -- **message_text** (`string`, optional) The main text of the message. Acts as the primary message or a fallback for notifications when using blocks. Supports plain text or markdown. -- **thread_timestamp** (`string`, optional) Timestamp of the parent message to which this message will be a reply. Use the parent's `ts` value, not a reply's. -- **bot_username** (`string`, optional) The display name to use for the bot when sending the message to Slack. -- **post_as_authenticated_user** (`boolean`, optional) Set to true to post the message as the authenticated user instead of as a bot. Only applicable for classic apps. -- **link_user_groups** (`boolean`, optional) Enable linking of user groups in the message. Individual user linking is not supported. -- **enable_slack_markup_parsing** (`boolean`, optional) Set to true to enable Slack markup parsing in the message. Default is enabled. -- **broadcast_reply_to_channel** (`boolean`, optional) Set to true to make the reply visible to everyone in the channel when responding to a thread. Use with 'thread_ts'. Default is false. -- **enable_unfurling_text_content** (`boolean`, optional) Set to true to enable unfurling of primarily text-based content in Slack messages. -- **disable_media_unfurling** (`boolean`, optional) Set to false to enable media unfurling and true to disable it. (default: 'false') - -## SlackApi.ListScheduledMessages - -
- - -Retrieve scheduled messages from Slack. - -**Parameters** - -- **channel_id** (`string`, optional) The ID of the Slack channel from which to retrieve scheduled messages. -- **pagination_cursor** (`string`, optional) Cursor value for pagination to specify the starting point of the list from a previous call. -- **latest_timestamp** (`string`, optional) A Unix timestamp marking the latest point in the time range for fetching scheduled messages. Ensure it is greater than the `oldest` timestamp if both are set. -- **max_number_of_entries** (`integer`, optional) Specify the maximum number of scheduled messages to return from Slack. -- **oldest_timestamp** (`string`, optional) A Unix timestamp representing the start of the time range for scheduled messages. It must be less than the `latest_timestamp` if both are specified. -- **team_id** (`string`, optional) Encoded team ID to specify which team's channels to list. Required if using an org-level token; ignore for workspace-level tokens. - -## SlackApi.ScheduleSlackMessage - -
- - -Schedule a message to be sent later in Slack. - -**Parameters** - -- **slack_channel_id_or_name** (`string`, required) Specify the target Slack channel, private group, or DM. Use an encoded ID or the channel name. Retrieve channel ID via `conversations.list`. -- **schedule_time_unix_timestamp** (`integer`, required) Unix timestamp for when the message should be posted to Slack. Must be within 120 days and not exceed 30 messages per 5-minute window. -- **attachments_json** (`string`, optional) A JSON array of structured attachments as a URL-encoded string for the Slack message. -- **structured_blocks_json** (`string`, optional) A URL-encoded string of a JSON-based array containing structured blocks for message formatting. -- **message_markdown** (`string`, optional) Message text in markdown format. Avoid using with 'blocks' or 'text'. Maximum 12,000 characters. -- **message_parsing_mode** (`string`, optional) Specifies how the message content should be parsed and interpreted when sending to Slack. For more details, refer to chat.postMessage documentation. -- **message_text** (`string`, optional) The main body of the Slack message or a fallback text when using blocks. Can be plain text or formatted with mrkdwn. -- **parent_message_timestamp** (`string`, optional) Timestamp of the parent message to which this message is a reply. Use the original message's timestamp, not a reply's timestamp. -- **metadata_json** (`string`, optional) JSON object containing 'event_type' and 'event_payload' fields. Must be URL-encoded. Note: using this will prevent scheduled messages from posting. -- **enable_group_linking** (`boolean`, optional) Set to true to link user groups in the message. Linking individual users is not supported; use mention syntax instead. -- **make_reply_visible_to_everyone** (`boolean`, optional) Set to true to make the reply visible to everyone in the channel or conversation. Use with `thread_ts`. Defaults to false. -- **enable_link_unfurling** (`boolean`, optional) Pass true to enable unfurling of primarily text-based content. -- **disable_unfurling_of_media_content** (`boolean`, optional) Set to true to disable unfurling of media content. Defaults to false. - -## SlackApi.CustomUnfurlSlackUrls - -
- - -Provide custom unfurl behavior for user-posted URLs on Slack. - -**Parameters** - -- **channel_id** (`string`, required) ID of the Slack channel where the message is posted. Required with 'ts' for custom unfurl or with 'unfurl_id' and 'source'. -- **message_timestamp** (`string`, required) Timestamp of the message to which unfurl behavior will be added. Ensure it corresponds to a message in the specified channel containing a fully-qualified URL registered with your Slack app. -- **unfurl_url_map** (`string`, required) A URL-encoded JSON map with URLs as keys and their corresponding unfurl data as values. Each URL should point to a single attachment, like message buttons. -- **authentication_invitation_message** (`string`, optional) A simple formatted string sent as an ephemeral message inviting the user to authenticate for full unfurl behavior. Supports Slack's _bold_, _italics_, and linking formatting. If provided, this takes precedence over `authentication_invitation_url`. -- **custom_authentication_url** (`string`, optional) A URL to redirect users for app authentication to enable full URL unfurling, requires URL encoding. -- **user_authentication_blocks** (`array[string]`, optional) A URL-encoded JSON array of structured blocks to send as an ephemeral message for user authentication invitation. -- **unfurl_link_id** (`string`, optional) The ID of the link to unfurl. Must be used with 'source'. -- **link_source** (`string`, optional) Specify the source of the link to unfurl as either 'composer' for links inside the message composer or 'conversations_history' for links posted to a conversation. Must be used with 'unfurl_id', or alternatively with 'channel' and 'ts'. -- **require_user_authentication** (`boolean`, optional) Set to true if the user must install your Slack app to trigger unfurls for this domain. - -## SlackApi.AcceptSlackInvite - -
- - -Accept invitations to a Slack Connect channel. - -**Parameters** - -- **channel_name** (`string`, required) Provide the desired name for the Slack Connect channel. If the channel doesn't exist in your workspace, this name will be assigned to it. -- **invite_id** (`string`, optional) ID of the invitation you want to accept. Must provide either this or channel_id. -- **slack_channel_id_to_accept** (`string`, optional) The ID of the channel you would like to accept the invitation for. Either this or `invite_id` is required. -- **workspace_id** (`string`, optional) The ID of the workspace where the channel should be accepted. Required if using an org-level token. -- **is_channel_private** (`boolean`, optional) True to make the channel private; false to make it public. -- **use_free_trial** (`boolean`, optional) Set to 'True' to use your workspace's free trial to start using Slack Connect. - -## SlackApi.ApproveSlackChannelInvitation - -
- - -Approve an invitation to a Slack Connect channel. - -**Parameters** - -- **shared_channel_invite_id** (`string`, required) The ID of the shared channel invitation you want to approve. It is required to specifically identify which invitation is being approved for the Slack Connect channel. -- **other_party_team_id** (`string`, optional) The team or enterprise ID of the other party involved in the Slack Connect invitation you are approving. - -## SlackApi.CreateSlackConversation - -
- - -Create a new public or private Slack conversation. - -**Parameters** - -- **channel_name** (`string`, required) The name of the new Slack channel to create. It must contain only lowercase letters, numbers, hyphens, and underscores, and be 80 characters or less. -- **encoded_team_id** (`string`, optional) The encoded team ID where the channel will be created. Required when using an organization-level token. Ignored if using a workspace-level token. -- **create_private_channel** (`boolean`, optional) Set to true to create a private channel instead of a public one. - -## SlackApi.GetConversationInfo - -
- - -Fetches information about a Slack conversation. - -**Parameters** - -- **conversation_id** (`string`, required) The unique ID of the Slack conversation to retrieve information for. -- **include_locale** (`boolean`, optional) Set to `true` to receive the locale for this conversation. Defaults to `false`. -- **include_member_count** (`boolean`, optional) Set to true to include the member count for the specified conversation. Defaults to false. - -## SlackApi.InviteUserToSlackChannel - -
- - -Invite users to a Slack channel. - -**Parameters** - -- **slack_channel_id** (`string`, required) The ID of the Slack channel to invite users to. It can be a public or private channel ID. -- **user_ids_list** (`string`, required) A list of up to 100 user IDs to invite, separated by commas. -- **continue_with_valid_users** (`boolean`, optional) Set to true to invite valid users while ignoring invalid IDs when multiple user IDs are provided. Default is false. - -## SlackApi.JoinSlackConversation - -
- - -Join an existing conversation in Slack. - -**Parameters** - -- **conversation_id** (`string`, required) The ID of the conversation or channel you want to join in Slack. - -## SlackApi.ListSlackChannels - -
- - -Retrieve a list of all channels in a Slack team. - -**Parameters** - -- **pagination_cursor** (`string`, optional) The cursor used to paginate through data collections. Use the `next_cursor` from a previous response to continue; omit for the first page. -- **maximum_number_of_channels** (`integer`, optional) Specify the maximum number of channels to return. Must be an integer under 1000. Note that fewer channels than requested may be returned. (default: '100') -- **team_id_for_org_app** (`string`, optional) Encoded team ID to list channels. Required for org-level tokens; ignored for workspace-level tokens. -- **channel_types** (`string`, optional) Comma-separated list of channel types to include, e.g., 'public_channel', 'private_channel', 'mpim', 'im'. (default: 'public_channel') -- **exclude_archived_channels** (`boolean`, optional) Set to true to exclude archived channels from the list of Slack channels. Default is false. - -## SlackApi.ListSharedChannelInvites - -
- - -Retrieve unapproved shared channel invites from Slack. - -**Parameters** - -- **workspace_team_id** (`string`, optional) The encoded team ID for the workspace to retrieve invites from. Required when using an organization token. -- **maximum_invites_to_return** (`integer`, optional) Specify the maximum number of unapproved shared channel invites to retrieve. (default: '100') -- **pagination_cursor** (`string`, optional) The cursor for paginating through results, obtained from a previous call's next_cursor. - -## SlackApi.SetSlackChannelReadCursor - -
- - -Update the read cursor in a Slack channel. - -**Parameters** - -- **channel_id** (`string`, required) The ID of the Slack channel or conversation where you want to set the read cursor. This should be a valid Slack channel ID. -- **timestamp_of_message_to_mark_as_read** (`string`, required) The unique identifier (timestamp) of the message you want to mark as most recently seen in the conversation. - -## SlackApi.GetSlackConversationMembers - -
- - -Retrieve members from a specified Slack conversation. - -**Parameters** - -- **conversation_id** (`string`, required) The ID of the Slack conversation to retrieve members from. This can be a channel, group, or direct message. -- **pagination_cursor** (`string`, optional) Cursor for pagination, set to the `next_cursor` value from a previous response to continue retrieving members from a conversation. -- **max_items_to_return** (`integer`, optional) The maximum number of conversation members to return. Recommended to specify a value under 1000, with no more than 200 results at a time for optimal pagination. (default: '100') - -## SlackApi.OpenOrResumeSlackConversation - -
- - -Open or resume a direct or multi-person message in Slack. - -**Parameters** - -- **conversation_channel_id** (`string`, optional) The ID of an existing direct or multi-person message channel to resume. Alternatively, provide the `users` field to start a new conversation. -- **target_user_ids** (`string`, optional) A comma-separated list of user IDs to open or resume a conversation. Provide 1 to 8 IDs. Supplying 1 ID opens a 1:1 DM, while more than 1 ID opens a multi-person DM. Do not include the caller's ID. -- **return_full_im_channel_definition** (`boolean`, optional) Set to true to receive the entire IM channel definition; false returns only the conversation ID. -- **prevent_creation** (`boolean`, optional) If true, does not create a new conversation and instead checks for an existing DM or MPDM. - -## SlackApi.GetSlackThreadMessages - -
- - -Retrieve messages from a Slack conversation thread. - -**Parameters** - -- **conversation_id** (`string`, required) The ID of the Slack conversation from which to fetch the message thread. -- **thread_message_timestamp** (`string`, required) Unique identifier of a parent message or a thread message (timestamp). Fetches the thread or the single message. -- **pagination_cursor** (`string`, optional) Cursor for pagination. Use the `next_cursor` from a previous response to fetch the next page of data. -- **latest_message_timestamp** (`string`, optional) Only include messages posted before this Unix timestamp in the results. (default: 'now') -- **maximum_items_to_return** (`integer`, optional) Specify the maximum number of messages to fetch. The default and maximum are 15 for certain apps, with possible rate limits. (default: '1000') -- **start_time_unix_timestamp** (`string`, optional) Only include messages after this Unix timestamp in results. (default: '0') -- **include_all_message_metadata** (`boolean`, optional) Set to true to return all metadata associated with this message. -- **include_boundary_timestamps** (`boolean`, optional) Include messages with 'oldest' or 'latest' timestamps. Ignored unless either timestamp is specified. - -## SlackApi.DenySharedInviteRequest - -
- - -Denies an external user invitation to a Slack channel. - -**Parameters** - -- **shared_channel_invite_id** (`string`, required) The ID for the shared channel invite request that you intend to deny. This is required for specifying which invite to decline. -- **deny_invite_message** (`string`, optional) An optional message explaining why the invitation was denied. This message will be sent to the requester. - -## SlackApi.ListCustomEmojiForTeam - -
- - -Retrieve a list of custom emojis for a specific team. - -**Parameters** - -- **include_emoji_categories** (`boolean`, optional) Set to true to include categories for Unicode emojis in the response. - -## SlackApi.GetExternalFileUploadUrl - -
- - -Retrieve a URL to upload an external file to Slack. - -**Parameters** - -- **file_size_in_bytes** (`integer`, required) Specify the size of the file to be uploaded, measured in bytes. Ensure this value accurately reflects the file size. -- **file_name** (`string`, required) The name of the file to be uploaded to Slack. -- **snippet_syntax_type** (`string`, optional) Specify the syntax highlighting type for the snippet being uploaded, such as 'javascript', 'python', etc. -- **alt_text_description** (`string`, optional) A description of the image for screen-readers, limited to 1000 characters. - -## SlackApi.GetRemoteFileInfoSlack - -
- - -Retrieve details about a remote file from Slack. - -**Parameters** - -- **file_external_identifier** (`string`, optional) The GUID defined by the creator for the remote file to retrieve its information. -- **file_id** (`string`, optional) The unique identifier of the file to retrieve information about. Use this to specify the file in Slack. - -## SlackApi.GetSlackRemoteFilesInfo - -
- - -Retrieve information about remote files added to Slack. - -**Parameters** - -- **filter_by_channel_id** (`string`, optional) Filter remote files to only include those appearing in the specified Slack channel, indicated by its channel ID. -- **pagination_cursor** (`string`, optional) A cursor for paginating through data. Use the `next_cursor` from a prior request to fetch the next set of results. Defaults to the first page if not set. -- **maximum_items_to_return** (`integer`, optional) Specify the maximum number of remote file records to retrieve from Slack. -- **filter_files_from_timestamp** (`string`, optional) Filter files created after this inclusive timestamp. Use a Unix timestamp format. (default: '0') -- **timestamp_filter_end** (`string`, optional) Filter files created before this timestamp (inclusive) in Unix epoch time format. (default: 'now') - -## SlackApi.ShareRemoteFileInChannel - -
- - -Share a remote file into a Slack channel. - -**Parameters** - -- **target_channel_ids** (`string`, required) Comma-separated list of Slack channel IDs where the remote file will be shared. Ensure IDs are valid and the user has permission to share files in these channels. -- **file_external_identifier** (`string`, optional) The globally unique identifier (GUID) for the file set by the app when registering with Slack. Required if 'file' is not provided. -- **file_id** (`string`, optional) The ID of a file registered with Slack to be shared. Required if `external_id` is not provided. - -## SlackApi.EnableSlackFileSharing - -
- - -Enable a Slack file for public sharing. - -**Parameters** - -- **file_id_to_share** (`string`, required) The ID of the file on Slack that you want to enable for public sharing. - -## SlackApi.PinItemToSlackChannel - -
- - -Pin an item to a Slack channel. - -**Parameters** - -- **channel_id** (`string`, required) The ID of the Slack channel where the message will be pinned. A `timestamp` must also be provided. -- **message_timestamp** (`string`, optional) The timestamp (`ts`) of the message to pin in the Slack channel. Ensure the channel is also specified. - -## SlackApi.ListPinnedItems - -
- - -Retrieve items pinned to a Slack channel. - -**Parameters** - -- **channel_id** (`string`, required) The ID of the Slack channel to retrieve pinned items from. This is required to specify which channel's pinned items will be listed. - -## SlackApi.AddSlackReaction - -
- - -Add a reaction to a Slack item. - -**Parameters** - -- **slack_channel_id** (`string`, required) ID of the channel where the message is posted. Use to specify the location for adding a reaction. -- **reaction_emoji_name** (`string`, required) The name of the emoji to be used as a reaction. Include skin tone modifiers if applicable (e.g., 'thumbsup::skin-tone-2'). -- **message_timestamp** (`string`, required) The timestamp of the message to which the reaction will be added. Ensure the format matches the Slack API requirements. - -## SlackApi.RemoveReactionFromItem - -
- - -Remove a reaction from a Slack item. - -**Parameters** - -- **reaction_emoji_name** (`string`, required) The name of the emoji reaction to be removed, such as 'smile' or 'thumbsup'. -- **target_file_id** (`string`, optional) The identifier of the file from which to remove the reaction. Specify either this, `target_file_comment_id`, or both `target_channel_id` and `target_message_timestamp`. -- **file_comment_id** (`string`, optional) The ID of the file comment from which you want to remove the reaction. Provide this if the reaction is on a file comment. -- **message_channel_id** (`string`, optional) Channel ID where the message to remove the reaction from was posted. Required if removing a reaction from a message. Use in combination with 'message_timestamp'. -- **message_timestamp** (`string`, optional) The exact timestamp of the message from which to remove the reaction. Specify when targeting a message. - -## SlackApi.SearchFilesInSlack - -
- - -Search for files in Slack using a query. - -**Parameters** - -- **search_query** (`string`, required) The text string to search for in Slack files. Use keywords or phrases to narrow down results. -- **items_per_page** (`integer`, optional) The number of file results to return per page. Maximum allowed value is 100. (default: '20') -- **results_page_number** (`integer`, optional) The specific page number of results to retrieve, with a maximum value of 100. (default: '1') -- **sort_files_by** (`string`, optional) Specify how to sort the search results: either by 'score' or 'timestamp'. (default: 'score') -- **sort_direction** (`string`, optional) Change the sort direction for search results to ascending ('asc') or descending ('desc'). (default: 'desc') -- **encoded_team_id** (`string`, optional) Encoded team ID to specify the search domain when using an org-level token. Ignored with a workspace-level token. -- **enable_query_highlight** (`boolean`, optional) Set to true to enable highlight markers for matching query terms in the search results. - -## SlackApi.SearchSlackMessages - -
- - -Search Slack messages based on a query. - -**Parameters** - -- **search_query** (`string`, required) The text to search for in Slack messages. Use keywords or phrases to narrow down results. -- **results_per_page** (`integer`, optional) The number of search results to return per page, with a maximum limit of 100. (default: '20') -- **page_number** (`integer`, optional) The page number of search results to retrieve, maximum value of 100. (default: '1') -- **pagination_cursor** (`string`, optional) Use '\*' for the first call to start pagination or provide the 'next_cursor' value from previous results to continue. -- **sort_results_by** (`string`, optional) Specify the criterion for sorting the search results, either by 'score' for relevance or 'timestamp' for chronological order. (default: 'score') -- **sort_direction** (`string`, optional) Specify the order for sorting results: use 'asc' for ascending or 'desc' for descending. (default: 'desc') -- **team_id** (`string`, optional) The encoded team ID to search within. Required only if an organization-level token is used. Ignored for workspace-level tokens. -- **enable_query_highlighting** (`boolean`, optional) Set to true to enable query highlight markers, marking matching terms in the results. - -## SlackApi.GetTeamBillableUsersInfo - -
- - -Retrieves billable users info for the current Slack team. - -**Parameters** - -- **pagination_cursor** (`string`, optional) Cursor for pagination. Use the `next_cursor` from the previous response to fetch the next page of users. (default: 'fetches the first page') -- **maximum_items_to_return** (`integer`, optional) Specifies the maximum number of billable user entries to be retrieved. -- **specific_user_id** (`string`, optional) The ID of a specific user to retrieve billable information for. Leave empty to retrieve info for all users. -- **encoded_team_id** (`string`, optional) Encoded team ID for retrieving billable info, required if using an org token. Ignored with workspace-level tokens. - -## SlackApi.GetCurrentSlackTeamInfo - -
- - -Retrieve information about the current Slack team. - -**Parameters** - -- **query_by_domain** (`string`, optional) Comma-separated domains to query instead of a team, used when the team is not specified. This only works for domains in the same enterprise as the querying team token. -- **specific_team_id** (`string`, optional) The ID of the Slack team to retrieve information about. If omitted, information about the current team will be returned. - -## SlackApi.GetIntegrationLogs - -
- - -Retrieve integration logs for the current Slack team. - -**Parameters** - -- **filter_by_app_id** (`string`, optional) Filter integration logs to a specific Slack app. If not provided, logs for all apps are retrieved. -- **filter_by_change_type** (`string`, optional) Specify the change type to filter logs. Options: 'added', 'removed', 'enabled', 'disabled', 'updated'. Defaults to all logs. -- **result_count** (`string`, optional) The number of log entries to retrieve. Specify the maximum number of logs to return in a single request. (default: '100') -- **result_page_number** (`string`, optional) The specific page number of the integration logs to retrieve. Used for pagination. (default: '1') -- **filter_by_service_id** (`string`, optional) Specify the service ID to filter integration logs related to a specific service. If not provided, logs for all services will be retrieved. -- **encoded_team_id** (`string`, optional) The encoded team ID to get logs from, required if using an org-level token. Ignored if using a workspace-level token. -- **filter_by_user** (`string`, optional) Filter logs generated by a specific user's actions. Defaults to all logs if not specified. - -## SlackApi.GetSlackTeamPreferences - -
- - -Retrieve a list of a workspace's team preferences. - -**Parameters** - -This tool does not take any parameters. - -## SlackApi.GetTeamProfile - -
- - -Retrieve a team's profile information from Slack. - -**Parameters** - -- **visibility_filter** (`string`, optional) Filter the profile fields based on visibility. Options: 'all', 'visible', 'hidden'. Default is 'all'. - -## SlackApi.CreateSlackUserGroup - -
- - -Creates a new user group in Slack. - -**Parameters** - -- **user_group_name** (`string`, required) A unique name for the user group to be created, distinguishing it from other user groups. -- **default_channel_ids** (`array[string]`, optional) A list of channel IDs to set as default for the User Group. Use comma-separated values. -- **custom_additional_channels** (`array[string]`, optional) Comma-separated encoded channel IDs where the User Group can add members. -- **user_group_description** (`string`, optional) A brief text describing the purpose or role of the user group in Slack. -- **unique_mention_handle** (`string`, optional) A unique mention handle for the user group. It must not duplicate existing handles of channels, users, or other user groups. -- **team_id_for_user_group_creation** (`string`, optional) Encoded team ID for the user group creation, required if using an org-level token. -- **include_user_count** (`boolean`, optional) Set to true to include the number of users in each User Group. -- **enable_display_as_sidebar_section** (`boolean`, optional) Set to true to display the user group as a sidebar section for all group members if the group has one or more default channels. - -## SlackApi.DisableUserGroup - -
- - -Disable an existing Slack User Group. - -**Parameters** - -- **user_group_id** (`string`, required) The encoded ID of the User Group to be disabled. -- **team_id** (`string`, optional) Encoded target team ID where the user group exists. Required only if using an org-level token; ignored for workspace-level tokens. -- **include_user_count** (`boolean`, optional) Include the number of users in the User Group. Set to true to include the count. - -## SlackApi.EnableSlackUserGroup - -
- - -Enable a user group in Slack. - -**Parameters** - -- **user_group_id** (`string`, required) The encoded ID of the User Group to be enabled in Slack. -- **team_id** (`string`, optional) Provide the encoded team ID where the user group is located. Only required if using an org-level token. Ignored with workspace-level tokens. -- **include_user_count** (`boolean`, optional) Set to true to include the number of users in the User Group. - -## SlackApi.ListSlackUserGroups - -
- - -Retrieve all user groups for a Slack team. - -**Parameters** - -- **team_id_for_org_token** (`string`, optional) Encoded team ID required when using an org-level token. Ignored if using a workspace-level token. -- **include_user_count** (`boolean`, optional) Set to true to include the number of users in each User Group. -- **include_disabled_groups** (`boolean`, optional) Set to true to include disabled user groups in the results. -- **include_users_in_group** (`boolean`, optional) Include the list of users for each User Group in the response. - -## SlackApi.UpdateSlackUserGroup - -
- - -Update an existing User Group in Slack. - -**Parameters** - -- **user_group_id** (`string`, required) The encoded ID of the User Group to update in Slack. -- **default_channel_ids** (`array[string]`, optional) A comma-separated list of channel IDs where the User Group is set as default. Use encoded channel IDs. -- **additional_channel_ids** (`array[string]`, optional) Comma separated encoded channel IDs for custom additions to user group members. -- **user_group_description** (`string`, optional) A short description of the User Group to update in Slack. This should clearly define the group's purpose or role. -- **user_group_handle** (`string`, optional) Unique mention handle for the User Group, distinct from all channels, users, and other User Groups. -- **user_group_name** (`string`, optional) A unique name for the User Group to update. Ensure it does not duplicate any existing User Group names. -- **team_id_for_org_token** (`string`, optional) Encoded team ID where the user group exists, required for org-level tokens. Ignored if using a workspace-level token. -- **include_user_count** (`boolean`, optional) Set to true to include the number of users in the User Group. -- **enable_sidebar_section** (`boolean`, optional) Set to true to configure the user group to appear as a sidebar section for all group members. Only relevant if the group has 1 or more default channels. - -## SlackApi.UpdateSlackUsergroupUsers - -
- - -Update the list of users in a Slack user group. - -**Parameters** - -- **user_group_id** (`string`, required) The encoded ID of the Slack user group to update. -- **user_ids_list** (`array[string]`, required) A comma separated string of encoded Slack user IDs representing the complete user list for the group. This replaces all current members. -- **team_id_for_org_token** (`string`, optional) Encoded team ID where the user group exists. Required if using an organization token; ignored with workspace-level token. -- **update_additional_channels** (`array[string]`, optional) Encoded channel IDs to add user group members to, separated by commas. These represent additional channels for custom user group member additions. -- **include_user_count** (`boolean`, optional) Set to true to include the number of users in the user group in the response. -- **is_shared_section** (`boolean`, optional) Indicates if the API call involves a shared section. Set to true if it does, otherwise false. - -## SlackApi.ListAccessibleSlackConversations - -
- - -Retrieve a list of conversations the user can access on Slack. - -**Parameters** - -- **pagination_cursor** (`string`, optional) A cursor for pagination to continue listing conversations from a specific point. Use the 'next_cursor' from a previous response. Default is the first page. -- **maximum_items_to_return** (`integer`, optional) The maximum number of conversations to return in the response. Must be an integer with a maximum value of 999. It is recommended to request no more than 200 results at a time for optimal performance. (default: '100') -- **slack_team_id** (`string`, optional) The encoded ID of the Slack team to list conversations for. Required if using an organization-level token. Ignored if a workspace-level token is used. -- **channel_types** (`string`, optional) Comma-separated list of channel types to filter conversations. Options: public_channel, private_channel, mpim, im. (default: 'public_channel') -- **specific_user_id** (`string`, optional) Filter conversations by a specific user ID's membership. Only includes conversations shared with the calling user. -- **exclude_archived_channels** (`boolean`, optional) Set to true to exclude archived channels from the retrieved list of Slack conversations. (default: false) - -## SlackApi.CheckSlackDiscoverability - -
- - -Check if an email is discoverable on Slack. - -**Parameters** - -- **email_to_check** (`string`, required) The email address to verify if it is associated with a discoverable Slack user. - -## SlackApi.GetSlackUserPresence - -
- - -Retrieve user presence information from Slack. - -**Parameters** - -- **target_user_id** (`string`, optional) The Slack user ID for which you want to retrieve presence information. (default: 'authed user') - -## SlackApi.GetUserIdentity - -
- - -Retrieve a user's identity information from Slack. - -**Parameters** - -This tool does not take any parameters. - -## SlackApi.ListSlackTeamUsers - -
- - -Fetches a list of all users in a Slack team. - -**Parameters** - -- **pagination_cursor** (`string`, optional) Cursor for paginating through data. Use the `next_cursor` from a previous response to continue. -- **maximum_items_to_return** (`integer`, optional) Maximum number of users to return (recommended max is 200 for pagination). -- **slack_team_id** (`string`, optional) The encoded team ID to list users from, necessary if an organization-level token is used. Ignored if a workspace-level token is provided. -- **include_user_locale** (`boolean`, optional) Set to true to receive locale information for each user. Default is false. - -## SlackApi.FindSlackUserByEmail - -
- - -Find a Slack user using their email address. - -**Parameters** - -- **user_email_address** (`string`, required) The email address of the user in the Slack workspace to search for. - -## SlackApi.GetSlackUserProfile - -
- - -Retrieve Slack user profile information and custom status. - -**Parameters** - -- **target_user_id** (`string`, optional) The unique identifier of the Slack user whose profile information is to be retrieved. -- **include_labels** (`boolean`, optional) Include labels for each ID in custom profile fields. This option can heavily rate-limit requests and is not recommended. Default is false. - -## SlackApi.SetSlackProfilePhoto - -
- - -Set the user's profile photo on Slack. - -**Parameters** - -- **crop_box_size** (`string`, optional) The size of the square crop box for the profile photo in pixels. Specify the width and height, which are the same value for a square. -- **crop_box_x_coordinate** (`string`, optional) X coordinate of the top-left corner of the crop box for the profile photo. -- **crop_y_coordinate** (`string`, optional) Y coordinate of the top-left corner of the crop box for the user's profile photo on Slack. This determines where the cropping of the image will start on the vertical axis. -- **profile_photo_image** (`string`, optional) The image file to set as the Slack profile photo. Provide image data directly with the correct content type (e.g., image/jpeg, image/png). - - diff --git a/app/en/resources/integrations/social-communication/slack/_meta.tsx b/app/en/resources/integrations/social-communication/slack/_meta.tsx deleted file mode 100644 index 1f77fe4f9..000000000 --- a/app/en/resources/integrations/social-communication/slack/_meta.tsx +++ /dev/null @@ -1,6 +0,0 @@ -export default { - install: { - title: "Install", - display: "hidden", // This hides it from the navigation - }, -}; diff --git a/app/en/resources/integrations/social-communication/slack/environment-variables/page.mdx b/app/en/resources/integrations/social-communication/slack/environment-variables/page.mdx deleted file mode 100644 index 54609e9bb..000000000 --- a/app/en/resources/integrations/social-communication/slack/environment-variables/page.mdx +++ /dev/null @@ -1,23 +0,0 @@ -# Environment Variables - -### `SLACK_MAX_CONCURRENT_REQUESTS` - -Arcade uses asynchronous calls to request Slack API endpoints. In some tools, multiple concurrent HTTP requests may be issued to speed up execution. This environment variable controls the maximum number of concurrent requests to Slack API in any tool execution. - -The value must be a numeric string with an integer greater than or equal to 1. - -**Default:** `3` - - -### `MAX_PAGINATION_SIZE_LIMIT` - -This environment variable controls the maximum number of items requested in a single call to a Slack API endpoint. Some of the Slack tools allow the tool caller to request a larger number of items per tool call, but the tool will paginate the results internally while respecting the `MAX_PAGINATION_SIZE_LIMIT`. - -**Default:** `200` (Slack supports, but discourages a limit larger than 200) - - -### `MAX_PAGINATION_TIMEOUT_SECONDS` - -Controls the maximum number of seconds any given Slack tool should wait while paginating responses from the Slack API. - -**Default:** `30` (expressed in seconds) diff --git a/app/en/resources/integrations/social-communication/slack/install/page.mdx b/app/en/resources/integrations/social-communication/slack/install/page.mdx deleted file mode 100644 index 96e144414..000000000 --- a/app/en/resources/integrations/social-communication/slack/install/page.mdx +++ /dev/null @@ -1,76 +0,0 @@ -# Arcade for Slack - -import { Steps, Callout } from "nextra/components"; -import { SignupLink } from "@/app/_components/analytics"; -import { SlackAuthLink } from "./slack-auth-link"; - -## Integrate Arcade with your Slack workspace - -Arcade securely connects your AI agents to APIs, data, code, and other systems via Tools. Our integration for Slack allows Arcade's tools to connect to your Slack workspace, helping your team work more efficiently. - -You can leverage this app in Arcade's Playground when you log in to the Arcade Dashboard, or in your own applications. - -While the Arcade app for Slack does not directly expose a Large Language Model (LLM) to you, you will likely use Arcade's tools in conjunction with an LLM. When using LLMs, there's always potential to generate inaccurate responses, summaries, or other output. - -Arcade's sample app for Slack brings Arcade's powerful AI tool-calling capabilities to your team's everyday conversations. The Arcade app for Slack can: - -- Send messages to your Slack channels and direct messages on your behalf -- Find information in your Slack channels and direct messages -- Generate content, summaries, and responses for messages you receive -- and more! - -For more details on what tools are available and what scopes they require, see the [Slack MCP Server documentation](/resources/integrations/social-communication/slack). - - - The Arcade app for Slack requires an active Arcade account. If you don't have - one yet,{" "} - - sign up for free - - . - - -## How it works - - -### Install the Arcade app for Slack -Click the "Add to Slack" button below to install Arcade in your workspace. - - - - - You'll need to be a workspace admin or have permission to install apps to add - Arcade to your Slack workspace. - - -### Invite Arcade to your channels - -Invite Arcade to any channel or direct message by typing `/invite @Arcade` to allow it to read and interact with content in that channel. - -### Start using Arcade's Slack tools - -Use Arcade's [tools for Slack](/resources/integrations/social-communication/slack) to: - -- Send messages to channels and DMs -- Find information in conversations -- Generate summaries of discussions - -Try leveraging the Arcade tools for Slack in the Arcade Playground by [chatting with an LLM](https://api.arcade.dev/dashboard/playground/chat) asking, "What are the last 5 messages in the general Slack channel?" or [executing Slack tools directly](https://api.arcade.dev/dashboard/playground/execute?toolId=GetMessagesInChannelByName&toolkits=%5B%5D&authProviders=%5B%5D&secrets=%5B%5D&input=%7B%22owner%22%3A%22ArcadeAI%22%2C%22name%22%3A%22arcade-ai%22%2C%22starred%22%3A%22true%22%2C%22channel_name%22%3A%22general%22%2C%22limit%22%3A%225%22%7D) without interacting with an LLM. - - - When using LLMs with Slack, responses may sometimes contain inaccuracies. - Always review AI-generated content before taking action. - - - - -## Next steps - -The Arcade app for Slack is a sample for what Arcade can do with your Slack workspace. It's likely that for your own applications you'll need to [create your own app for Slack](/references/auth-providers/slack). Creating your own application for Slack will allow you to brand the app, customize the permissions, and more. - -## Need help? - -If you have any questions or need assistance: - -- Check our [Slack MCP Server documentation](/resources/integrations/social-communication/slack) -- [Contact our support team](/resources/contact-us) diff --git a/app/en/resources/integrations/social-communication/slack/install/slack-auth-link.tsx b/app/en/resources/integrations/social-communication/slack/install/slack-auth-link.tsx deleted file mode 100644 index c880819e5..000000000 --- a/app/en/resources/integrations/social-communication/slack/install/slack-auth-link.tsx +++ /dev/null @@ -1,37 +0,0 @@ -"use client"; - -const TO_STRING_BASE = 36; -const SUBSTRING_START = 2; - -export function SlackAuthLink() { - return ( -
- -
- ); -} diff --git a/app/en/resources/integrations/social-communication/slack/page.mdx b/app/en/resources/integrations/social-communication/slack/page.mdx deleted file mode 100644 index f02c7451a..000000000 --- a/app/en/resources/integrations/social-communication/slack/page.mdx +++ /dev/null @@ -1,938 +0,0 @@ ---- -asIndexPage: true ---- - -# Slack - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Slack MCP Server provides a comprehensive set of tools for interacting with the Slack platform, enabling users and AI applications to efficiently manage conversations and user information. With this MCP Sever, you can: - -- Retrieve detailed information about users, including their IDs, usernames, and emails. -- List all users in your Slack team and get users in specific conversations. -- Send messages to channels, direct messages, or multi-person conversations. -- Access messages and metadata from various conversations, including channels and direct messages. -- Manage and list conversations, including public and private channels. - -This MCP Sever streamlines communication and enhances collaboration within Slack. - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## Slack.WhoAmI - -
- - -Get comprehensive user profile information. - -**Parameters** - -This tool takes no parameters. - -## Slack.GetUsersInfo - -
- - -Get the information of one or more users in Slack by ID, username, and/or email. - -**Parameters** - -- **user_ids** (`array[string]`, optional) The IDs of the users to get -- **usernames** (`array[string]`, optional) The usernames of the users to get. Prefer retrieving by user_ids and/or emails, when available, since the performance is better. -- **emails** (`array[string]`, optional) The emails of the users to get - -## Slack.ListUsers - -
- - -List all users in the authenticated user's Slack team. - -**Parameters** - -- **exclude_bots** (`boolean`, optional) Whether to exclude bots from the results. Defaults to True. -- **limit** (`integer`, optional) The maximum number of users to return. Defaults to 200. Maximum is 500. -- **next_cursor** (`string`, optional) The next cursor token to use for pagination. - -## Slack.SendMessage - -
- - -Send a message to a Channel, Direct Message (IM/DM), or Multi-Person (MPIM) conversation. - -Provide exactly one of: - -- channel_name; or -- conversation_id; or -- any combination of user_ids, usernames, and/or emails. - -In case multiple user_ids, usernames, and/or emails are provided, the tool will open a -multi-person conversation with the specified people and send the message to it. - -To improve performance, prefer providing a conversation_id over a channel_name, when available. When referencing users, prefer providing user_ids and/or emails, when possible. - -**Parameters** - -- **message** (`string`, required) The content of the message to send. -- **channel_name** (`string`, optional) The channel name to send the message to. Prefer providing a conversation_id, when available, since the performance is better. -- **conversation_id** (`string`, optional) The conversation ID to send the message to. -- **user_ids** (`array[string]`, optional) The Slack user IDs of the people to message. -- **emails** (`array[string]`, optional) The emails of the people to message. -- **usernames** (`array[string]`, optional) The Slack usernames of the people to message. Prefer providing user_ids and/or emails, when available, since the performance is better. - -## Slack.GetUsersInConversation - -
- - -Get the users in a Slack conversation (Channel, DM/IM, or MPIM) by its ID or by channel name. - -Provide exactly one of conversation_id or channel_name. Prefer providing a conversation_id, when available, since the performance is better. - -**Parameters** - -- **conversation_id** (`string`, optional) The ID of the conversation to get users in. -- **channel_name** (`string`, optional) The name of the channel to get users in. Prefer providing a conversation_id, when available, since the performance is better. -- **limit** (`integer`, optional) The maximum number of users to return. Defaults to 200. Maximum is 500. -- **next_cursor** (`string`, optional) The cursor to use for pagination. - -## Slack.GetMessages - -
- - -Get messages in a Slack Channel, DM (direct message) or MPIM (multi-person) conversation. - -Provide exactly one of: - -- conversation_id; or -- channel_name; or -- any combination of user_ids, usernames, and/or emails. - -To improve performance, prefer providing a conversation_id over a channel_name, when available. When referencing users, prefer providing user_ids and/or emails, when possible. - -**Parameters** - -- **conversation_id** (`string`, optional) The ID of the conversation to get messages from. Provide exactly one of conversation_id OR any combination of user_ids, usernames, and/or emails. -- **channel_name** (`string`, optional) The name of the channel to get messages from. Prefer providing a conversation_id, when available, since the performance is better. -- **user_ids** (`array[string]`, optional) The IDs of the users in the conversation to get messages from. -- **usernames** (`array[string]`, optional) The usernames of the users in the conversation to get messages from. Prefer providinguser_ids and/or emails, when available, since the performance is better. -- **emails** (`array[string]`, optional) The emails of the users in the conversation to get messages from. -- **oldest_relative** (`string`, optional) The oldest message to include in the results, specified as a time offset from the current time in the format 'DD:HH:MM' -- **latest_relative** (`string`, optional) The latest message to include in the results, specified as a time offset from the current time in the format 'DD:HH:MM' -- **oldest_datetime** (`string`, optional) The oldest message to include in the results, specified as a datetime object in the format 'YYYY-MM-DD HH:MM:SS' -- **latest_datetime** (`string`, optional) The latest message to include in the results, specified as a datetime object in the format 'YYYY-MM-DD HH:MM:SS' -- **limit** (`integer`, optional) The maximum number of messages to return. Defaults to 20. Maximum is 100. -- **next_cursor** (`string`, optional) The cursor to use for pagination. - -**Notes about the date/time filtering parameters:** - -To filter messages by an absolute datetime, use 'oldest_datetime' and/or 'latest_datetime'. If -only 'oldest_datetime' is provided, it will return messages from the oldest_datetime to the -current time. If only 'latest_datetime' is provided, it will return messages since the -beginning of the conversation to the latest_datetime. - -To filter messages by a relative datetime (e.g. 3 days ago, 1 hour ago, etc.), use -'oldest_relative' and/or 'latest_relative'. If only 'oldest_relative' is provided, it will -return messages from the oldest_relative to the current time. If only 'latest_relative' is -provided, it will return messages from the current time to the latest_relative. - -Do not provide both 'oldest_datetime' and 'oldest_relative' or both 'latest_datetime' and -'latest_relative'. - -Leave all arguments with the default None to get messages without date/time filtering - -## Slack.GetConversationMetadata - -
- - -Get metadata of a Channel, a Direct Message (IM / DM) or a Multi-Person (MPIM) conversation. - -Provide exactly one of: - -- conversation_id; or -- channel_name; or -- any combination of user_ids, usernames, and/or emails. - -To improve performance, prefer providing a conversation_id over a channel_name, when available. When referencing users, prefer providing user_ids and/or emails, when possible. - -**Parameters** - -- **conversation_id** (`string`, optional) The ID of the conversation to get metadata for -- **channel_name** (`string`, optional) The name of the channel to get metadata for. Prefer providing a conversation_id, when available, since the performance is better. -- **usernames** (`array[string]`, optional) The usernames of the users to get the conversation metadata. Prefer providing user_ids and/or emails, when available, since the performance is better. -- **emails** (`array[string]`, optional) The emails of the users to get the conversation metadata. -- **user_ids** (`array[string]`, optional) The IDs of the users to get the conversation metadata. - -## Slack.ListConversations - -
- - -List metadata for Slack conversations (channels, DMs, MPIMs) the user is a member of. - -**Parameters** - -- **conversation_types** (`Enum` [ConversationType](/resources/integrations/social-communication/slack/reference#ConversationType), optional) Optionally filter by the type(s) of conversations. Defaults to None (all types). -- **limit** (`integer`, optional) The maximum number of conversations to list. Defaults to 200. Maximum is 500. -- **next_cursor** (`string`, optional) The cursor to use for pagination. - -## Slack.GetUserInfoById - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.GetUsersInfo](#slackgetusersinfo) instead. - - -
- - -Get the information of a user in Slack. - -**Parameters** - -- **user_id** (`string`, required) The ID of the user to get - -## Slack.SendDmToUser - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.SendMessage](#slacksendmessage) instead. - - -
- - -Send a direct message to a user in Slack. - -**Parameters** - -- **user_name** (`string`, required) The Slack username of the person you want to message. Slack usernames are ALWAYS lowercase. -- **message** (`string`, required) The message you want to send - -## Slack.SendMessageToChannel - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.SendMessage](#slacksendmessage) instead. - - -
- - -Send a message to a channel in Slack. - -**Parameters** - -- **channel_name** (`string`, required) The Slack channel name where you want to send the message. -- **message** (`string`, required) The message you want to send - -## Slack.GetMembersInConversationById - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.GetUsersInConversation](#slackgetusersinconversation) - instead. - - -
- - -Get the members of a conversation in Slack by the conversation's ID. - -**Parameters** - -- **conversation_id** (`string`, required) The ID of the conversation to get members for -- **limit** (`integer`, optional) The maximum number of members to return. -- **next_cursor** (`string`, optional) The cursor to use for pagination. - -## Slack.GetMembersInChannelByName - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.GetUsersInConversation](#slackgetusersinconversation) - instead. - - -
- - -Get the members of a conversation in Slack by the conversation's name. - -**Parameters** - -- **channel_name** (`string`, required) The name of the channel to get members for -- **limit** (`integer`, optional) The maximum number of members to return. -- **next_cursor** (`string`, optional) The cursor to use for pagination. - -## Slack.GetMessagesInChannelByName - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.GetMessages](#slackgetmessages) instead. - - -
- - -Get the messages in a channel by the channel's name. - -**Parameters** - -- **channel_name** (`string`, required) The name of the channel -- **oldest_relative** (`string`, optional) The oldest message to include in the results, specified as a time offset from the current time in the format 'DD:HH:MM' -- **latest_relative** (`string`, optional) The latest message to include in the results, specified as a time offset from the current time in the format 'DD:HH:MM' -- **oldest_datetime** (`string`, optional) The oldest message to include in the results, specified as a datetime object in the format 'YYYY-MM-DD HH:MM:SS' -- **latest_datetime** (`string`, optional) The latest message to include in the results, specified as a datetime object in the format 'YYYY-MM-DD HH:MM:SS' -- **limit** (`integer`, optional) The maximum number of messages to return. -- **next_cursor** (`string`, optional) The cursor to use for pagination. - -## Slack.GetMessagesInConversationById - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.GetMessages](#slackgetmessages) instead. - - -
- - -Get the messages in a conversation by the conversation's ID. - -**Parameters** - -- **conversation_id** (`string`, required) The ID of the conversation to get history for -- **oldest_relative** (`string`, optional) The oldest message to include in the results, specified as a time offset from the current time in the format 'DD:HH:MM' -- **latest_relative** (`string`, optional) The latest message to include in the results, specified as a time offset from the current time in the format 'DD:HH:MM' -- **oldest_datetime** (`string`, optional) The oldest message to include in the results, specified as a datetime object in the format 'YYYY-MM-DD HH:MM:SS' -- **latest_datetime** (`string`, optional) The latest message to include in the results, specified as a datetime object in the format 'YYYY-MM-DD HH:MM:SS' -- **limit** (`integer`, optional) The maximum number of messages to return. -- **next_cursor** (`string`, optional) The cursor to use for pagination. - -## Slack.GetMessagesInDirectMessageConversationByUsername - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.GetMessages](#slackgetmessages) instead. - - -
- - -Get the messages in a direct conversation by the user's name. - -**Parameters** - -- **username** (`string`, required) The username of the user to get messages from -- **oldest_relative** (`string`, optional) The oldest message to include in the results, specified as a time offset from the current time in the format 'DD:HH:MM' -- **latest_relative** (`string`, optional) The latest message to include in the results, specified as a time offset from the current time in the format 'DD:HH:MM' -- **oldest_datetime** (`string`, optional) The oldest message to include in the results, specified as a datetime object in the format 'YYYY-MM-DD HH:MM:SS' -- **latest_datetime** (`string`, optional) The latest message to include in the results, specified as a datetime object in the format 'YYYY-MM-DD HH:MM:SS' -- **limit** (`integer`, optional) The maximum number of messages to return. -- **next_cursor** (`string`, optional) The cursor to use for pagination. - -## Slack.GetMessagesInMultiPersonDmConversationByUsernames - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.GetMessages](#slackgetmessages) instead. - - -
- - -Get the messages in a multi-person direct message conversation by the usernames. - -**Parameters** - -- **usernames** (`array[string]`, required) The usernames of the users to get messages from -- **oldest_relative** (`string`, optional) The oldest message to include in the results, specified as a time offset from the current time in the format 'DD:HH:MM' -- **latest_relative** (`string`, optional) The latest message to include in the results, specified as a time offset from the current time in the format 'DD:HH:MM' -- **oldest_datetime** (`string`, optional) The oldest message to include in the results, specified as a datetime object in the format 'YYYY-MM-DD HH:MM:SS' -- **latest_datetime** (`string`, optional) The latest message to include in the results, specified as a datetime object in the format 'YYYY-MM-DD HH:MM:SS' -- **limit** (`integer`, optional) The maximum number of messages to return. -- **next_cursor** (`string`, optional) The cursor to use for pagination. - -## Slack.ListConversationsMetadata - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.ListConversations](#slacklistconversations) instead. - - -
- - -List Slack conversations (channels, DMs, MPIMs) the user is a member of. - -**Parameters** - -- **conversation_types** (`Enum` [ConversationType](/resources/integrations/social-communication/slack/reference#ConversationType), optional) Optionally filter by the type(s) of conversations. Defaults to None (all types). -- **limit** (`integer`, optional) The maximum number of conversations to list. -- **next_cursor** (`string`, optional) The cursor to use for pagination. - -## Slack.ListPublicChannelsMetadata - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.ListConversations](#slacklistconversations) instead. - - -
- - -List metadata for public channels in Slack that the user is a member of. - -**Parameters** - -- **limit** (`integer`, optional) The maximum number of channels to list. - -## Slack.ListPrivateChannelsMetadata - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.ListConversations](#slacklistconversations) instead. - - -
- - -List metadata for private channels in Slack that the user is a member of. - -**Parameters** - -- **limit** (`integer`, optional) The maximum number of channels to list. - -## Slack.ListGroupDirectMessageConversationsMetadata - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.ListConversations](#slacklistconversations) instead. - - -
- - -List metadata for group direct message conversations that the user is a member of. - -**Parameters** - -- **limit** (`integer`, optional) The maximum number of conversations to list. - -## Slack.ListDirectMessageConversationsMetadata - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.ListConversations](#slacklistconversations) instead. - - -
- - -List metadata for direct message conversations in Slack that the user is a member of. - -**Parameters** - -- **limit** (`integer`, optional) The maximum number of conversations to list. - -## Slack.GetConversationMetadataById - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.GetConversationMetadata](#slackgetconversationmetadata) - instead. - - -
- - -Get the metadata of a conversation in Slack searching by its ID. - -**Parameters** - -- **conversation_id** (`string`, required) The ID of the conversation to get metadata for - -## Slack.GetChannelMetadataByName - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.GetConversationMetadata](#slackgetconversationmetadata) - instead. - - -
- - -Get the metadata of a channel in Slack searching by its name. - -**Parameters** - -- **channel_name** (`string`, required) The name of the channel to get metadata for -- **next_cursor** (`string`, optional) The cursor to use for pagination, if continuing from a previous search. - -## Slack.GetDirectMessageConversationMetadataByUsername - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.GetConversationMetadata](#slackgetconversationmetadata) - instead. - - -
- - -Get the metadata of a direct message conversation in Slack by the username. - -**Parameters** - -- **username** (`string`, required) The username of the user/person to get messages with -- **next_cursor** (`string`, optional) The cursor to use for pagination, if continuing from a previous search. - -## Slack.GetMultiPersonDmConversationMetadataByUsernames - - - This tool is marked for deprecation and will be removed in a future release. - Please use [Slack.GetConversationMetadata](#slackgetconversationmetadata) - instead. - - -
- - -Get the metadata of a multi-person direct message conversation in Slack by the usernames. - -**Parameters** - -- **usernames** (`array[string]`, required) The usernames of the users/people to get messages with -- **next_cursor** (`string`, optional) The cursor to use for pagination, if continuing from a previous search. - -## Auth - -The Arcade Slack MCP Sever uses the [Slack auth provider](/references/auth-providers/slack) to connect to users' Slack accounts. Please refer to the [Slack auth provider](/references/auth-providers/slack) documentation to learn how to configure auth. - - diff --git a/app/en/resources/integrations/social-communication/slack/reference/page.mdx b/app/en/resources/integrations/social-communication/slack/reference/page.mdx deleted file mode 100644 index f61cb7c0f..000000000 --- a/app/en/resources/integrations/social-communication/slack/reference/page.mdx +++ /dev/null @@ -1,12 +0,0 @@ -# Reference - -Below is a reference of enumerations used by some tools in the Slack MCP Server: - -## ConversationType - -- **PUBLIC_CHANNEL**: `public_channel` -- **PRIVATE_CHANNEL**: `private_channel` -- **MULTI_PERSON_DIRECT_MESSAGE**: `multi_person_direct_message` -- **DIRECT_MESSAGE**: `direct_message` - - diff --git a/app/en/resources/integrations/social-communication/slack_api.mdx b/app/en/resources/integrations/social-communication/slack_api.mdx deleted file mode 100644 index 30b7ab0ec..000000000 --- a/app/en/resources/integrations/social-communication/slack_api.mdx +++ /dev/null @@ -1,2319 +0,0 @@ -# SlackApi - -import StarterToolInfo from "@/components/StarterToolInfo"; -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - - - -The SlackApi MCP Server offers a comprehensive set of tools for administering Slack workspaces, automating messaging, managing channels, calls, files, emojis, user groups, invites, and user/team data. Key capabilities include: - -- Workspace & team management: create/update team name/description, fetch team info, settings, preferences, integration logs, billable users, and list/inspect teams in an Enterprise org. -- User and identity operations: list workspace/team users, find users by email, get user profiles, presence, identity, and manage profile photos. -- Channels & conversations: create/join conversations, get conversation info and members, list channels/conversations accessible to a user, open/resume DMs, invite users, set read cursors, and manage shared channel invites. -- Messaging & scheduling: send messages (regular and ephemeral), schedule/delete scheduled messages, list scheduled messages, get message permalinks, and search messages/files. -- Calls: register calls, get call info, add/remove participants. -- Files & sharing: obtain external upload URLs, fetch remote file info, share remote files to channels, enable public sharing. -- Bookmarks, pins & reactions: add/edit/remove bookmarks, pin/list pinned items, add/remove reactions. -- Emoji management: list custom emojis, rename emojis, and add emoji aliases (Enterprise). -- User groups: create, enable/disable, list, update user groups and their membership. -- Invite/workflow management: list pending/approved/denied workspace invites, accept/approve/deny shared channel invites, and list shared invites. -- Admin tools & verification: fetch workspace settings, owners, channels for org usergroups, list enterprise emojis/teams, revoke tokens, verify API calling code, and retrieve integration logs. -- Custom behavior: provide custom unfurling for URLs. - -This MCP Server is designed for admins and apps requiring broad Slack API access (admin, invites, calls, chat, files, usergroups, reactions, users scopes). - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## SlackApi.AddSlackEmojiAlias - -
- - -Add an emoji alias in a Slack Enterprise organization. - -**Parameters** - -- **emoji_alias_name** (`string`, required) The new alias for the specified emoji. Whitespace or colons will be automatically trimmed. -- **target_emoji_name** (`string`, required) The name of the existing emoji to which the new alias is being added. Remove any surrounding whitespace or colons. - -## SlackApi.ListSlackEnterpriseEmojis - -
- - -Retrieve emojis for a Slack Enterprise organization. - -**Parameters** - -- **pagination_cursor** (`string`, optional) Cursor for fetching the next page of emojis. Use 'next_cursor' from the previous response. -- **max_items_to_return** (`integer`, optional) The maximum number of emojis to return, between 1 and 1000 inclusive. (default: '100') - -## SlackApi.RenameSlackEmoji - -
- - -Rename an emoji in a Slack Enterprise organization. - -**Parameters** - -- **current_emoji_name** (`string`, required) The current name of the emoji to be renamed. Colons (:myemoji:) around the value are optional. -- **new_emoji_name** (`string`, required) The new name to assign to the emoji in the Slack Enterprise organization. - -## SlackApi.ListApprovedWorkspaceInviteRequests - -
- - -Retrieve all approved workspace invite requests from Slack. - -**Parameters** - -- **workspace_id** (`string`, optional) ID for the Slack workspace where the invite requests were made. Required if the Enterprise org has more than one workspace. -- **pagination_cursor** (`string`, optional) Value of the `next_cursor` from the previous API response for paginating results. -- **result_limit** (`integer`, optional) Specify the number of results to return, between 1 and 1000 inclusive. (default: '100') - -## SlackApi.ListDeniedSlackInviteRequests - -
- - -Retrieve denied Slack workspace invite requests. - -**Parameters** - -- **workspace_team_id** (`string`, optional) ID of the workspace where the invite requests were made. Required if the Enterprise org has multiple workspaces. -- **pagination_cursor** (`string`, optional) The cursor value from the previous API response to fetch the next set of results. Use this for pagination. -- **result_limit** (`integer`, optional) Specify the number of denied invite request results to return, between 1 and 1000 inclusive. (default: '100') - -## SlackApi.ListPendingWorkspaceInvites - -
- - -Retrieve all pending workspace invite requests from Slack. - -**Parameters** - -- **workspace_id** (`string`, optional) The ID of the workspace to list pending invite requests from. Required for multi-workspace enterprises. -- **pagination_cursor** (`string`, optional) The cursor value for fetching the next set of invite requests. Use the `next_cursor` from the previous response if available. -- **result_limit** (`integer`, optional) The number of invite requests to return per call, must be between 1 and 1000. (default: '100') - -## SlackApi.ListTeamsInEnterprise - -
- - -Retrieve all teams in an Enterprise organization on Slack. - -**Parameters** - -- **maximum_items_to_return** (`integer`, optional) Specify the maximum number of teams to retrieve. Must be a positive integer, up to 1000. (default: '100') -- **pagination_cursor** (`string`, optional) Use this to retrieve the next page of results by setting it to the `next_cursor` from the previous response. - -## SlackApi.ListSlackWorkspaceOwners - -
- - -Retrieve all owners in a Slack workspace. - -**Parameters** - -- **workspace_id** (`string`, required) The unique identifier of the Slack workspace for which to list the owners. -- **maximum_items_to_return** (`integer`, optional) Specifies the maximum number of owners to return, ranging from 1 to 1000. (default: '100') -- **pagination_cursor** (`string`, optional) The cursor from the previous response used to fetch the next page of owners. Leave empty for the first page. - -## SlackApi.FetchWorkspaceSettingsInfo - -
- - -Retrieve settings information for a Slack workspace. - -**Parameters** - -- **slack_team_id** (`string`, required) The unique identifier of the Slack workspace (team) for which to fetch the settings information. - -## SlackApi.SetWorkspaceDescription - -
- - -Update the description of a Slack workspace. - -**Parameters** - -- **workspace_id** (`string`, required) The unique identifier for the Slack workspace where the description will be updated. -- **workspace_description** (`string`, required) The new description to set for the Slack workspace. Provide a clear and concise text. - -## SlackApi.SetSlackWorkspaceName - -
- - -Update the name of a Slack workspace. - -**Parameters** - -- **workspace_id** (`string`, required) Unique identifier for the Slack workspace whose name you want to update. -- **new_workspace_name** (`string`, required) The desired new name for the Slack workspace. This replaces the existing name. - -## SlackApi.ListChannelsForUsergroup - -
- - -Retrieve channels linked to an org-level user group in Slack. - -**Parameters** - -- **usergroup_id** (`string`, required) The ID of the IDP group to list channels for. It identifies which organizational group to retrieve the default channels from. -- **workspace_id** (`string`, optional) The unique identifier for the Slack workspace. -- **include_member_count_in_channels** (`boolean`, optional) Set to true to include the count of members for each channel, otherwise set to false. - -## SlackApi.ListWorkspaceUsers - -
- - -Retrieve a list of users from a Slack workspace. - -**Parameters** - -- **workspace_team_id** (`string`, optional) The ID of the Slack workspace (e.g., T1234) to filter users from. Only users from this workspace will be listed. -- **pagination_cursor** (`string`, optional) Use this to navigate through paginated results by setting it to the `next_cursor` from a previous response. -- **user_retrieval_limit** (`integer`, optional) Maximum number of users to retrieve per page from the Slack workspace. (default: '100') -- **return_only_active_users** (`boolean`, optional) Return only active users if true; return only deactivated users if false. Default is true. -- **include_deactivated_user_workspaces** (`boolean`, optional) Include workspaces for users even if they are deactivated. Only applies with org token and no team_id. Default is false. -- **return_only_guest_users** (`boolean`, optional) If true, returns only guests and their expiration dates that belong to the specified team_id. - -## SlackApi.CheckApiCallingCode - -
- - -Verify the correctness of API calling code for Slack. - -**Parameters** - -- **simulate_error_response** (`string`, optional) Specify an error code to simulate an error response for testing API calls. Useful for testing error handling. - -## SlackApi.RevokeSlackToken - -
- - -Revoke a Slack authentication token. - -**Parameters** - -- **trigger_testing_mode** (`boolean`, optional) Set to true to trigger testing mode where the token will not be revoked. Useful for testing. - -## SlackApi.EditSlackBookmark - -
- - -Edit an existing bookmark in a Slack channel. - -**Parameters** - -- **slack_channel_id** (`string`, required) The ID of the Slack channel where the bookmark will be updated. -- **target_bookmark_id** (`string`, required) The unique identifier of the bookmark you want to update. -- **bookmark_title** (`string`, optional) The new title for the bookmark to update. -- **bookmark_link** (`string`, optional) URL of the bookmark to be edited. Ensure it is a valid format starting with http or https. -- **emoji_tag** (`string`, optional) The emoji tag to apply to the bookmark link. It should be a valid emoji code (e.g., :smile:). - -## SlackApi.RemoveSlackBookmark - -
- - -Remove a bookmark from a Slack channel. - -**Parameters** - -- **slack_channel_id_to_remove_bookmark** (`string`, required) The ID of the Slack channel from which the bookmark should be removed. This ID specifies the target channel and is required to locate and delete the bookmark. -- **bookmark_id_to_remove** (`string`, required) The ID of the bookmark to be removed from a Slack channel. Ensure it is specified correctly to delete the correct bookmark. -- **quip_section_id** (`string`, optional) The ID of the Quip section to unbookmark. This is required to specify which section's bookmark should be removed. - -## SlackApi.GetSlackBotInfo - -
- - -Retrieve details about a Slack bot user. - -**Parameters** - -- **target_bot_id** (`string`, optional) The unique bot ID for which information is requested. This ID is specific to each workspace the bot is in. -- **team_id_for_org_token_use** (`string`, optional) Encoded team or enterprise ID where the bot exists. Required if using an organization token. Ignored if using a workspace-level token. - -## SlackApi.RegisterSlackCall - -
- - -Registers a new call on Slack. - -**Parameters** - -- **unique_call_id** (`string`, required) A unique ID for the Call, provided by the 3rd-party Call provider. Ensure it is unique across all calls from your service. -- **call_join_url** (`string`, required) The URL required for a client to join the Call on Slack. -- **optional_human_readable_display_id** (`string`, optional) An optional, human-readable ID for the call, supplied by the third-party provider. This ID will be displayed in the Call object if given. -- **desktop_app_join_url** (`string`, optional) The URL used to directly launch the 3rd-party Call from Slack clients, if provided. -- **call_start_timestamp** (`integer`, optional) Unix timestamp indicating when the call is scheduled to start. -- **call_title** (`string`, optional) The name of the Call to be registered on Slack. This title will be used to identify the Call within Slack. -- **call_creator_user_id** (`string`, optional) The valid Slack user ID of the creator of this call. Optional if using a user token, which defaults to the authed user. -- **participants_info** (`array[string]`, optional) A list of participants to register for the call, including 'slack_id', 'external_id', 'display_name', and 'avatar_url' for each user. - -## SlackApi.GetCallInformation - -
- - -Retrieve detailed information about a specific call in Slack. - -**Parameters** - -- **call_id** (`string`, required) The unique identifier of the call as returned by the `calls.add` method. This ID is necessary to retrieve detailed call information. - -## SlackApi.AddCallParticipants - -
- - -Add new participants to a Slack call. - -**Parameters** - -- **call_id** (`string`, required) The unique identifier for the call, as returned by the `calls.add` method. This ID specifies which call the participants will be added to. -- **participant_users** (`array[string]`, required) List of users to add, specified by `slack_id` or `external_id`. Include optional `display_name` and `avatar_url` for each user. - -## SlackApi.RemoveCallParticipants - -
- - -Remove participants from a Slack call. - -**Parameters** - -- **call_id** (`string`, required) The unique identifier for the call from which participants are to be removed. This `id` is obtained from the `calls.add` method. -- **users_to_remove** (`array[string]`, required) A list of user IDs to remove as participants from the call. Refer to Slack's documentation for specifying user IDs. - -## SlackApi.DeleteScheduledSlackMessage - -
- - -Delete a pending scheduled message from Slack queue. - -**Parameters** - -- **channel_id** (`string`, required) The ID of the channel where the scheduled message is set to post. Required to identify the correct message to delete. -- **scheduled_message_id** (`string`, required) The ID of the scheduled message to be deleted. This ID is obtained from the `chat.scheduleMessage` response. -- **delete_as_authenticated_user** (`boolean`, optional) Set to true to delete the message as the authenticated user with `chat:write:user` scope. Bot users are considered authenticated users. If false, the message will be deleted with `chat:write:bot` scope. - -## SlackApi.GetSlackMessagePermalink - -
- - -Retrieve a permalink URL for a specific Slack message. - -**Parameters** - -- **channel_id** (`string`, required) The unique identifier of the Slack conversation or channel containing the message. -- **message_timestamp** (`string`, required) The unique timestamp of the message to retrieve the permalink for. It identifies the message within the Slack channel. - -## SlackApi.SendEphemeralMessageSlack - -
- - -Send an ephemeral message to a user in a Slack channel. - -**Parameters** - -- **target_channel** (`string`, required) The channel, private group, or IM channel where the ephemeral message will be sent. Accepts an encoded ID or the channel's name. -- **recipient_user_id** (`string`, required) The ID of the user who will receive the ephemeral message. Must be in the specified channel. -- **structured_attachments** (`array[string]`, optional) A JSON-encoded array of structured attachments for the message. Presented as a URL-encoded string. -- **structured_blocks** (`array[string]`, optional) A URL-encoded JSON array of structured Slack block elements. Use for rich message formatting. -- **message_icon_emoji** (`string`, optional) Emoji to display as the message icon, overriding icon_url. Specify using the emoji name like :smile:. -- **message_icon_url** (`string`, optional) URL for the image to be used as the icon for the message. It overrides the icon_emoji if provided. -- **message_markdown_text** (`string`, optional) The main text formatted in markdown to be sent as an ephemeral message. Do not use with `blocks` or `text`. Character limit: 12,000. -- **message_parse_mode** (`string`, optional) Specifies how the message text is interpreted. Options are: 'none', 'full', 'mrkdwn', or 'false'. Defaults to 'none'. (default: 'none') -- **ephemeral_message_text** (`string`, optional) The main text of the ephemeral message for Slack. It acts as a fallback when using blocks; can be formatted as plain text or markdown. Limit to a few thousand bytes. -- **parent_message_timestamp** (`string`, optional) The timestamp of the parent message to post this ephemeral message in its thread. Ensure there is already an active thread. -- **bot_username** (`string`, optional) The username for the bot sending the ephemeral message. This sets the display name in the Slack message. -- **link_names_auto_link** (`boolean`, optional) Set to true to automatically find and link channel names and usernames. - -## SlackApi.SendSlackMessage - -
- - -Sends a message to a Slack channel. - -**Parameters** - -- **target_channel_id_or_name** (`string`, required) The encoded ID or name of the channel, private group, or IM where the message will be sent. Retrieve using Slack's conversations.list API. -- **message_attachments** (`array[string]`, optional) A JSON array of structured attachment objects for the message, provided as a URL-encoded string. Example: `[{"pretext": "pre-hello", "text": "text-world"}]`. -- **structured_blocks** (`array[string]`, optional) A JSON-based array of structured blocks for constructing messages using Block Kit. Provide as a URL-encoded string. Include fallback text if necessary. -- **emoji_icon_for_message** (`string`, optional) Emoji to display as the icon for the Slack message. Overrides any image URL icon. -- **message_icon_url** (`string`, optional) URL to an image to use as the icon for the message. Overrides any specified icon emoji. -- **message_markdown** (`string`, optional) The message text formatted using markdown, up to 12,000 characters. Cannot be used with `blocks` or `text`. -- **message_metadata** (`string`, optional) A JSON object with 'event_type' and 'event_payload' fields, URL-encoded, providing additional metadata for the message. -- **parse_mode** (`string`, optional) Specifies how the message content should be treated. Options are 'none' to remove hyperlinks or 'full' to ignore markdown formatting. -- **message_text** (`string`, optional) The main text of the message. Acts as the primary message or a fallback for notifications when using blocks. Supports plain text or markdown. -- **thread_timestamp** (`string`, optional) Timestamp of the parent message to which this message will be a reply. Use the parent's `ts` value, not a reply's. -- **bot_username** (`string`, optional) The display name to use for the bot when sending the message to Slack. -- **post_as_authenticated_user** (`boolean`, optional) Set to true to post the message as the authenticated user instead of as a bot. Only applicable for classic apps. -- **link_user_groups** (`boolean`, optional) Enable linking of user groups in the message. Individual user linking is not supported. -- **enable_slack_markup_parsing** (`boolean`, optional) Set to true to enable Slack markup parsing in the message. Default is enabled. -- **broadcast_reply_to_channel** (`boolean`, optional) Set to true to make the reply visible to everyone in the channel when responding to a thread. Use with 'thread_ts'. Default is false. -- **enable_unfurling_text_content** (`boolean`, optional) Set to true to enable unfurling of primarily text-based content in Slack messages. -- **disable_media_unfurling** (`boolean`, optional) Set to false to enable media unfurling and true to disable it. (default: 'false') - -## SlackApi.ListScheduledMessages - -
- - -Retrieve scheduled messages from Slack. - -**Parameters** - -- **channel_id** (`string`, optional) The ID of the Slack channel from which to retrieve scheduled messages. -- **pagination_cursor** (`string`, optional) Cursor value for pagination to specify the starting point of the list from a previous call. -- **latest_timestamp** (`string`, optional) A Unix timestamp marking the latest point in the time range for fetching scheduled messages. Ensure it is greater than the `oldest` timestamp if both are set. -- **max_number_of_entries** (`integer`, optional) Specify the maximum number of scheduled messages to return from Slack. -- **oldest_timestamp** (`string`, optional) A Unix timestamp representing the start of the time range for scheduled messages. It must be less than the `latest_timestamp` if both are specified. -- **team_id** (`string`, optional) Encoded team ID to specify which team's channels to list. Required if using an org-level token; ignore for workspace-level tokens. - -## SlackApi.ScheduleSlackMessage - -
- - -Schedule a message to be sent later in Slack. - -**Parameters** - -- **slack_channel_id_or_name** (`string`, required) Specify the target Slack channel, private group, or DM. Use an encoded ID or the channel name. Retrieve channel ID via `conversations.list`. -- **schedule_time_unix_timestamp** (`integer`, required) Unix timestamp for when the message should be posted to Slack. Must be within 120 days and not exceed 30 messages per 5-minute window. -- **attachments_json** (`string`, optional) A JSON array of structured attachments as a URL-encoded string for the Slack message. -- **structured_blocks_json** (`string`, optional) A URL-encoded string of a JSON-based array containing structured blocks for message formatting. -- **message_markdown** (`string`, optional) Message text in markdown format. Avoid using with 'blocks' or 'text'. Maximum 12,000 characters. -- **message_parsing_mode** (`string`, optional) Specifies how the message content should be parsed and interpreted when sending to Slack. For more details, refer to chat.postMessage documentation. -- **message_text** (`string`, optional) The main body of the Slack message or a fallback text when using blocks. Can be plain text or formatted with mrkdwn. -- **parent_message_timestamp** (`string`, optional) Timestamp of the parent message to which this message is a reply. Use the original message's timestamp, not a reply's timestamp. -- **metadata_json** (`string`, optional) JSON object containing 'event_type' and 'event_payload' fields. Must be URL-encoded. Note: using this will prevent scheduled messages from posting. -- **enable_group_linking** (`boolean`, optional) Set to true to link user groups in the message. Linking individual users is not supported; use mention syntax instead. -- **make_reply_visible_to_everyone** (`boolean`, optional) Set to true to make the reply visible to everyone in the channel or conversation. Use with `thread_ts`. Defaults to false. -- **enable_link_unfurling** (`boolean`, optional) Pass true to enable unfurling of primarily text-based content. -- **disable_unfurling_of_media_content** (`boolean`, optional) Set to true to disable unfurling of media content. Defaults to false. - -## SlackApi.CustomUnfurlSlackUrls - -
- - -Provide custom unfurl behavior for user-posted URLs on Slack. - -**Parameters** - -- **channel_id** (`string`, required) ID of the Slack channel where the message is posted. Required with 'ts' for custom unfurl or with 'unfurl_id' and 'source'. -- **message_timestamp** (`string`, required) Timestamp of the message to which unfurl behavior will be added. Ensure it corresponds to a message in the specified channel containing a fully-qualified URL registered with your Slack app. -- **unfurl_url_map** (`string`, required) A URL-encoded JSON map with URLs as keys and their corresponding unfurl data as values. Each URL should point to a single attachment, like message buttons. -- **authentication_invitation_message** (`string`, optional) A simple formatted string sent as an ephemeral message inviting the user to authenticate for full unfurl behavior. Supports Slack's _bold_, _italics_, and linking formatting. If provided, this takes precedence over `authentication_invitation_url`. -- **custom_authentication_url** (`string`, optional) A URL to redirect users for app authentication to enable full URL unfurling, requires URL encoding. -- **user_authentication_blocks** (`array[string]`, optional) A URL-encoded JSON array of structured blocks to send as an ephemeral message for user authentication invitation. -- **unfurl_link_id** (`string`, optional) The ID of the link to unfurl. Must be used with 'source'. -- **link_source** (`string`, optional) Specify the source of the link to unfurl as either 'composer' for links inside the message composer or 'conversations_history' for links posted to a conversation. Must be used with 'unfurl_id', or alternatively with 'channel' and 'ts'. -- **require_user_authentication** (`boolean`, optional) Set to true if the user must install your Slack app to trigger unfurls for this domain. - -## SlackApi.AcceptSlackInvite - -
- - -Accept invitations to a Slack Connect channel. - -**Parameters** - -- **channel_name** (`string`, required) Provide the desired name for the Slack Connect channel. If the channel doesn't exist in your workspace, this name will be assigned to it. -- **invite_id** (`string`, optional) ID of the invitation you want to accept. Must provide either this or channel_id. -- **slack_channel_id_to_accept** (`string`, optional) The ID of the channel you would like to accept the invitation for. Either this or `invite_id` is required. -- **workspace_id** (`string`, optional) The ID of the workspace where the channel should be accepted. Required if using an org-level token. -- **is_channel_private** (`boolean`, optional) True to make the channel private; false to make it public. -- **use_free_trial** (`boolean`, optional) Set to 'True' to use your workspace's free trial to start using Slack Connect. - -## SlackApi.ApproveSlackChannelInvitation - -
- - -Approve an invitation to a Slack Connect channel. - -**Parameters** - -- **shared_channel_invite_id** (`string`, required) The ID of the shared channel invitation you want to approve. It is required to specifically identify which invitation is being approved for the Slack Connect channel. -- **other_party_team_id** (`string`, optional) The team or enterprise ID of the other party involved in the Slack Connect invitation you are approving. - -## SlackApi.CreateSlackConversation - -
- - -Create a new public or private Slack conversation. - -**Parameters** - -- **channel_name** (`string`, required) The name of the new Slack channel to create. It must contain only lowercase letters, numbers, hyphens, and underscores, and be 80 characters or less. -- **encoded_team_id** (`string`, optional) The encoded team ID where the channel will be created. Required when using an organization-level token. Ignored if using a workspace-level token. -- **create_private_channel** (`boolean`, optional) Set to true to create a private channel instead of a public one. - -## SlackApi.GetConversationInfo - -
- - -Fetches information about a Slack conversation. - -**Parameters** - -- **conversation_id** (`string`, required) The unique ID of the Slack conversation to retrieve information for. -- **include_locale** (`boolean`, optional) Set to `true` to receive the locale for this conversation. Defaults to `false`. -- **include_member_count** (`boolean`, optional) Set to true to include the member count for the specified conversation. Defaults to false. - -## SlackApi.InviteUserToSlackChannel - -
- - -Invite users to a Slack channel. - -**Parameters** - -- **slack_channel_id** (`string`, required) The ID of the Slack channel to invite users to. It can be a public or private channel ID. -- **user_ids_list** (`string`, required) A list of up to 100 user IDs to invite, separated by commas. -- **continue_with_valid_users** (`boolean`, optional) Set to true to invite valid users while ignoring invalid IDs when multiple user IDs are provided. Default is false. - -## SlackApi.JoinSlackConversation - -
- - -Join an existing conversation in Slack. - -**Parameters** - -- **conversation_id** (`string`, required) The ID of the conversation or channel you want to join in Slack. - -## SlackApi.ListSlackChannels - -
- - -Retrieve a list of all channels in a Slack team. - -**Parameters** - -- **pagination_cursor** (`string`, optional) The cursor used to paginate through data collections. Use the `next_cursor` from a previous response to continue; omit for the first page. -- **maximum_number_of_channels** (`integer`, optional) Specify the maximum number of channels to return. Must be an integer under 1000. Note that fewer channels than requested may be returned. (default: '100') -- **team_id_for_org_app** (`string`, optional) Encoded team ID to list channels. Required for org-level tokens; ignored for workspace-level tokens. -- **channel_types** (`string`, optional) Comma-separated list of channel types to include, e.g., 'public_channel', 'private_channel', 'mpim', 'im'. (default: 'public_channel') -- **exclude_archived_channels** (`boolean`, optional) Set to true to exclude archived channels from the list of Slack channels. Default is false. - -## SlackApi.ListSharedChannelInvites - -
- - -Retrieve unapproved shared channel invites from Slack. - -**Parameters** - -- **workspace_team_id** (`string`, optional) The encoded team ID for the workspace to retrieve invites from. Required when using an organization token. -- **maximum_invites_to_return** (`integer`, optional) Specify the maximum number of unapproved shared channel invites to retrieve. (default: '100') -- **pagination_cursor** (`string`, optional) The cursor for paginating through results, obtained from a previous call's next_cursor. - -## SlackApi.SetSlackChannelReadCursor - -
- - -Update the read cursor in a Slack channel. - -**Parameters** - -- **channel_id** (`string`, required) The ID of the Slack channel or conversation where you want to set the read cursor. This should be a valid Slack channel ID. -- **timestamp_of_message_to_mark_as_read** (`string`, required) The unique identifier (timestamp) of the message you want to mark as most recently seen in the conversation. - -## SlackApi.GetSlackConversationMembers - -
- - -Retrieve members from a specified Slack conversation. - -**Parameters** - -- **conversation_id** (`string`, required) The ID of the Slack conversation to retrieve members from. This can be a channel, group, or direct message. -- **pagination_cursor** (`string`, optional) Cursor for pagination, set to the `next_cursor` value from a previous response to continue retrieving members from a conversation. -- **max_items_to_return** (`integer`, optional) The maximum number of conversation members to return. Recommended to specify a value under 1000, with no more than 200 results at a time for optimal pagination. (default: '100') - -## SlackApi.OpenOrResumeSlackConversation - -
- - -Open or resume a direct or multi-person message in Slack. - -**Parameters** - -- **conversation_channel_id** (`string`, optional) The ID of an existing direct or multi-person message channel to resume. Alternatively, provide the `users` field to start a new conversation. -- **target_user_ids** (`string`, optional) A comma-separated list of user IDs to open or resume a conversation. Provide 1 to 8 IDs. Supplying 1 ID opens a 1:1 DM, while more than 1 ID opens a multi-person DM. Do not include the caller's ID. -- **return_full_im_channel_definition** (`boolean`, optional) Set to true to receive the entire IM channel definition; false returns only the conversation ID. -- **prevent_creation** (`boolean`, optional) If true, does not create a new conversation and instead checks for an existing DM or MPDM. - -## SlackApi.GetSlackThreadMessages - -
- - -Retrieve messages from a Slack conversation thread. - -**Parameters** - -- **conversation_id** (`string`, required) The ID of the Slack conversation from which to fetch the message thread. -- **thread_message_timestamp** (`string`, required) Unique identifier of a parent message or a thread message (timestamp). Fetches the thread or the single message. -- **pagination_cursor** (`string`, optional) Cursor for pagination. Use the `next_cursor` from a previous response to fetch the next page of data. -- **latest_message_timestamp** (`string`, optional) Only include messages posted before this Unix timestamp in the results. (default: 'now') -- **maximum_items_to_return** (`integer`, optional) Specify the maximum number of messages to fetch. The default and maximum are 15 for certain apps, with possible rate limits. (default: '1000') -- **start_time_unix_timestamp** (`string`, optional) Only include messages after this Unix timestamp in results. (default: '0') -- **include_all_message_metadata** (`boolean`, optional) Set to true to return all metadata associated with this message. -- **include_boundary_timestamps** (`boolean`, optional) Include messages with 'oldest' or 'latest' timestamps. Ignored unless either timestamp is specified. - -## SlackApi.DenySharedInviteRequest - -
- - -Denies an external user invitation to a Slack channel. - -**Parameters** - -- **shared_channel_invite_id** (`string`, required) The ID for the shared channel invite request that you intend to deny. This is required for specifying which invite to decline. -- **deny_invite_message** (`string`, optional) An optional message explaining why the invitation was denied. This message will be sent to the requester. - -## SlackApi.ListCustomEmojiForTeam - -
- - -Retrieve a list of custom emojis for a specific team. - -**Parameters** - -- **include_emoji_categories** (`boolean`, optional) Set to true to include categories for Unicode emojis in the response. - -## SlackApi.GetExternalFileUploadUrl - -
- - -Retrieve a URL to upload an external file to Slack. - -**Parameters** - -- **file_size_in_bytes** (`integer`, required) Specify the size of the file to be uploaded, measured in bytes. Ensure this value accurately reflects the file size. -- **file_name** (`string`, required) The name of the file to be uploaded to Slack. -- **snippet_syntax_type** (`string`, optional) Specify the syntax highlighting type for the snippet being uploaded, such as 'javascript', 'python', etc. -- **alt_text_description** (`string`, optional) A description of the image for screen-readers, limited to 1000 characters. - -## SlackApi.GetRemoteFileInfoSlack - -
- - -Retrieve details about a remote file from Slack. - -**Parameters** - -- **file_external_identifier** (`string`, optional) The GUID defined by the creator for the remote file to retrieve its information. -- **file_id** (`string`, optional) The unique identifier of the file to retrieve information about. Use this to specify the file in Slack. - -## SlackApi.GetSlackRemoteFilesInfo - -
- - -Retrieve information about remote files added to Slack. - -**Parameters** - -- **filter_by_channel_id** (`string`, optional) Filter remote files to only include those appearing in the specified Slack channel, indicated by its channel ID. -- **pagination_cursor** (`string`, optional) A cursor for paginating through data. Use the `next_cursor` from a prior request to fetch the next set of results. Defaults to the first page if not set. -- **maximum_items_to_return** (`integer`, optional) Specify the maximum number of remote file records to retrieve from Slack. -- **filter_files_from_timestamp** (`string`, optional) Filter files created after this inclusive timestamp. Use a Unix timestamp format. (default: '0') -- **timestamp_filter_end** (`string`, optional) Filter files created before this timestamp (inclusive) in Unix epoch time format. (default: 'now') - -## SlackApi.ShareRemoteFileInChannel - -
- - -Share a remote file into a Slack channel. - -**Parameters** - -- **target_channel_ids** (`string`, required) Comma-separated list of Slack channel IDs where the remote file will be shared. Ensure IDs are valid and the user has permission to share files in these channels. -- **file_external_identifier** (`string`, optional) The globally unique identifier (GUID) for the file set by the app when registering with Slack. Required if 'file' is not provided. -- **file_id** (`string`, optional) The ID of a file registered with Slack to be shared. Required if `external_id` is not provided. - -## SlackApi.EnableSlackFileSharing - -
- - -Enable a Slack file for public sharing. - -**Parameters** - -- **file_id_to_share** (`string`, required) The ID of the file on Slack that you want to enable for public sharing. - -## SlackApi.PinItemToSlackChannel - -
- - -Pin an item to a Slack channel. - -**Parameters** - -- **channel_id** (`string`, required) The ID of the Slack channel where the message will be pinned. A `timestamp` must also be provided. -- **message_timestamp** (`string`, optional) The timestamp (`ts`) of the message to pin in the Slack channel. Ensure the channel is also specified. - -## SlackApi.ListPinnedItems - -
- - -Retrieve items pinned to a Slack channel. - -**Parameters** - -- **channel_id** (`string`, required) The ID of the Slack channel to retrieve pinned items from. This is required to specify which channel's pinned items will be listed. - -## SlackApi.AddSlackReaction - -
- - -Add a reaction to a Slack item. - -**Parameters** - -- **slack_channel_id** (`string`, required) ID of the channel where the message is posted. Use to specify the location for adding a reaction. -- **reaction_emoji_name** (`string`, required) The name of the emoji to be used as a reaction. Include skin tone modifiers if applicable (e.g., 'thumbsup::skin-tone-2'). -- **message_timestamp** (`string`, required) The timestamp of the message to which the reaction will be added. Ensure the format matches the Slack API requirements. - -## SlackApi.RemoveReactionFromItem - -
- - -Remove a reaction from a Slack item. - -**Parameters** - -- **reaction_emoji_name** (`string`, required) The name of the emoji reaction to be removed, such as 'smile' or 'thumbsup'. -- **target_file_id** (`string`, optional) The identifier of the file from which to remove the reaction. Specify either this, `target_file_comment_id`, or both `target_channel_id` and `target_message_timestamp`. -- **file_comment_id** (`string`, optional) The ID of the file comment from which you want to remove the reaction. Provide this if the reaction is on a file comment. -- **message_channel_id** (`string`, optional) Channel ID where the message to remove the reaction from was posted. Required if removing a reaction from a message. Use in combination with 'message_timestamp'. -- **message_timestamp** (`string`, optional) The exact timestamp of the message from which to remove the reaction. Specify when targeting a message. - -## SlackApi.SearchFilesInSlack - -
- - -Search for files in Slack using a query. - -**Parameters** - -- **search_query** (`string`, required) The text string to search for in Slack files. Use keywords or phrases to narrow down results. -- **items_per_page** (`integer`, optional) The number of file results to return per page. Maximum allowed value is 100. (default: '20') -- **results_page_number** (`integer`, optional) The specific page number of results to retrieve, with a maximum value of 100. (default: '1') -- **sort_files_by** (`string`, optional) Specify how to sort the search results: either by 'score' or 'timestamp'. (default: 'score') -- **sort_direction** (`string`, optional) Change the sort direction for search results to ascending ('asc') or descending ('desc'). (default: 'desc') -- **encoded_team_id** (`string`, optional) Encoded team ID to specify the search domain when using an org-level token. Ignored with a workspace-level token. -- **enable_query_highlight** (`boolean`, optional) Set to true to enable highlight markers for matching query terms in the search results. - -## SlackApi.SearchSlackMessages - -
- - -Search Slack messages based on a query. - -**Parameters** - -- **search_query** (`string`, required) The text to search for in Slack messages. Use keywords or phrases to narrow down results. -- **results_per_page** (`integer`, optional) The number of search results to return per page, with a maximum limit of 100. (default: '20') -- **page_number** (`integer`, optional) The page number of search results to retrieve, maximum value of 100. (default: '1') -- **pagination_cursor** (`string`, optional) Use '\*' for the first call to start pagination or provide the 'next_cursor' value from previous results to continue. -- **sort_results_by** (`string`, optional) Specify the criterion for sorting the search results, either by 'score' for relevance or 'timestamp' for chronological order. (default: 'score') -- **sort_direction** (`string`, optional) Specify the order for sorting results: use 'asc' for ascending or 'desc' for descending. (default: 'desc') -- **team_id** (`string`, optional) The encoded team ID to search within. Required only if an organization-level token is used. Ignored for workspace-level tokens. -- **enable_query_highlighting** (`boolean`, optional) Set to true to enable query highlight markers, marking matching terms in the results. - -## SlackApi.GetTeamBillableUsersInfo - -
- - -Retrieves billable users info for the current Slack team. - -**Parameters** - -- **pagination_cursor** (`string`, optional) Cursor for pagination. Use the `next_cursor` from the previous response to fetch the next page of users. (default: 'fetches the first page') -- **maximum_items_to_return** (`integer`, optional) Specifies the maximum number of billable user entries to be retrieved. -- **specific_user_id** (`string`, optional) The ID of a specific user to retrieve billable information for. Leave empty to retrieve info for all users. -- **encoded_team_id** (`string`, optional) Encoded team ID for retrieving billable info, required if using an org token. Ignored with workspace-level tokens. - -## SlackApi.GetCurrentSlackTeamInfo - -
- - -Retrieve information about the current Slack team. - -**Parameters** - -- **query_by_domain** (`string`, optional) Comma-separated domains to query instead of a team, used when the team is not specified. This only works for domains in the same enterprise as the querying team token. -- **specific_team_id** (`string`, optional) The ID of the Slack team to retrieve information about. If omitted, information about the current team will be returned. - -## SlackApi.GetIntegrationLogs - -
- - -Retrieve integration logs for the current Slack team. - -**Parameters** - -- **filter_by_app_id** (`string`, optional) Filter integration logs to a specific Slack app. If not provided, logs for all apps are retrieved. -- **filter_by_change_type** (`string`, optional) Specify the change type to filter logs. Options: 'added', 'removed', 'enabled', 'disabled', 'updated'. Defaults to all logs. -- **result_count** (`string`, optional) The number of log entries to retrieve. Specify the maximum number of logs to return in a single request. (default: '100') -- **result_page_number** (`string`, optional) The specific page number of the integration logs to retrieve. Used for pagination. (default: '1') -- **filter_by_service_id** (`string`, optional) Specify the service ID to filter integration logs related to a specific service. If not provided, logs for all services will be retrieved. -- **encoded_team_id** (`string`, optional) The encoded team ID to get logs from, required if using an org-level token. Ignored if using a workspace-level token. -- **filter_by_user** (`string`, optional) Filter logs generated by a specific user's actions. Defaults to all logs if not specified. - -## SlackApi.GetSlackTeamPreferences - -
- - -Retrieve a list of a workspace's team preferences. - -**Parameters** - -This tool does not take any parameters. - -## SlackApi.GetTeamProfile - -
- - -Retrieve a team's profile information from Slack. - -**Parameters** - -- **visibility_filter** (`string`, optional) Filter the profile fields based on visibility. Options: 'all', 'visible', 'hidden'. Default is 'all'. - -## SlackApi.CreateSlackUserGroup - -
- - -Creates a new user group in Slack. - -**Parameters** - -- **user_group_name** (`string`, required) A unique name for the user group to be created, distinguishing it from other user groups. -- **default_channel_ids** (`array[string]`, optional) A list of channel IDs to set as default for the User Group. Use comma-separated values. -- **custom_additional_channels** (`array[string]`, optional) Comma-separated encoded channel IDs where the User Group can add members. -- **user_group_description** (`string`, optional) A brief text describing the purpose or role of the user group in Slack. -- **unique_mention_handle** (`string`, optional) A unique mention handle for the user group. It must not duplicate existing handles of channels, users, or other user groups. -- **team_id_for_user_group_creation** (`string`, optional) Encoded team ID for the user group creation, required if using an org-level token. -- **include_user_count** (`boolean`, optional) Set to true to include the number of users in each User Group. -- **enable_display_as_sidebar_section** (`boolean`, optional) Set to true to display the user group as a sidebar section for all group members if the group has one or more default channels. - -## SlackApi.DisableUserGroup - -
- - -Disable an existing Slack User Group. - -**Parameters** - -- **user_group_id** (`string`, required) The encoded ID of the User Group to be disabled. -- **team_id** (`string`, optional) Encoded target team ID where the user group exists. Required only if using an org-level token; ignored for workspace-level tokens. -- **include_user_count** (`boolean`, optional) Include the number of users in the User Group. Set to true to include the count. - -## SlackApi.EnableSlackUserGroup - -
- - -Enable a user group in Slack. - -**Parameters** - -- **user_group_id** (`string`, required) The encoded ID of the User Group to be enabled in Slack. -- **team_id** (`string`, optional) Provide the encoded team ID where the user group is located. Only required if using an org-level token. Ignored with workspace-level tokens. -- **include_user_count** (`boolean`, optional) Set to true to include the number of users in the User Group. - -## SlackApi.ListSlackUserGroups - -
- - -Retrieve all user groups for a Slack team. - -**Parameters** - -- **team_id_for_org_token** (`string`, optional) Encoded team ID required when using an org-level token. Ignored if using a workspace-level token. -- **include_user_count** (`boolean`, optional) Set to true to include the number of users in each User Group. -- **include_disabled_groups** (`boolean`, optional) Set to true to include disabled user groups in the results. -- **include_users_in_group** (`boolean`, optional) Include the list of users for each User Group in the response. - -## SlackApi.UpdateSlackUserGroup - -
- - -Update an existing User Group in Slack. - -**Parameters** - -- **user_group_id** (`string`, required) The encoded ID of the User Group to update in Slack. -- **default_channel_ids** (`array[string]`, optional) A comma-separated list of channel IDs where the User Group is set as default. Use encoded channel IDs. -- **additional_channel_ids** (`array[string]`, optional) Comma separated encoded channel IDs for custom additions to user group members. -- **user_group_description** (`string`, optional) A short description of the User Group to update in Slack. This should clearly define the group's purpose or role. -- **user_group_handle** (`string`, optional) Unique mention handle for the User Group, distinct from all channels, users, and other User Groups. -- **user_group_name** (`string`, optional) A unique name for the User Group to update. Ensure it does not duplicate any existing User Group names. -- **team_id_for_org_token** (`string`, optional) Encoded team ID where the user group exists, required for org-level tokens. Ignored if using a workspace-level token. -- **include_user_count** (`boolean`, optional) Set to true to include the number of users in the User Group. -- **enable_sidebar_section** (`boolean`, optional) Set to true to configure the user group to appear as a sidebar section for all group members. Only relevant if the group has 1 or more default channels. - -## SlackApi.UpdateSlackUsergroupUsers - -
- - -Update the list of users in a Slack user group. - -**Parameters** - -- **user_group_id** (`string`, required) The encoded ID of the Slack user group to update. -- **user_ids_list** (`array[string]`, required) A comma separated string of encoded Slack user IDs representing the complete user list for the group. This replaces all current members. -- **team_id_for_org_token** (`string`, optional) Encoded team ID where the user group exists. Required if using an organization token; ignored with workspace-level token. -- **update_additional_channels** (`array[string]`, optional) Encoded channel IDs to add user group members to, separated by commas. These represent additional channels for custom user group member additions. -- **include_user_count** (`boolean`, optional) Set to true to include the number of users in the user group in the response. -- **is_shared_section** (`boolean`, optional) Indicates if the API call involves a shared section. Set to true if it does, otherwise false. - -## SlackApi.ListAccessibleSlackConversations - -
- - -Retrieve a list of conversations the user can access on Slack. - -**Parameters** - -- **pagination_cursor** (`string`, optional) A cursor for pagination to continue listing conversations from a specific point. Use the 'next_cursor' from a previous response. Default is the first page. -- **maximum_items_to_return** (`integer`, optional) The maximum number of conversations to return in the response. Must be an integer with a maximum value of 999. It is recommended to request no more than 200 results at a time for optimal performance. (default: '100') -- **slack_team_id** (`string`, optional) The encoded ID of the Slack team to list conversations for. Required if using an organization-level token. Ignored if a workspace-level token is used. -- **channel_types** (`string`, optional) Comma-separated list of channel types to filter conversations. Options: public_channel, private_channel, mpim, im. (default: 'public_channel') -- **specific_user_id** (`string`, optional) Filter conversations by a specific user ID's membership. Only includes conversations shared with the calling user. -- **exclude_archived_channels** (`boolean`, optional) Set to true to exclude archived channels from the retrieved list of Slack conversations. (default: false) - -## SlackApi.CheckSlackDiscoverability - -
- - -Check if an email is discoverable on Slack. - -**Parameters** - -- **email_to_check** (`string`, required) The email address to verify if it is associated with a discoverable Slack user. - -## SlackApi.GetSlackUserPresence - -
- - -Retrieve user presence information from Slack. - -**Parameters** - -- **target_user_id** (`string`, optional) The Slack user ID for which you want to retrieve presence information. (default: 'authed user') - -## SlackApi.GetUserIdentity - -
- - -Retrieve a user's identity information from Slack. - -**Parameters** - -This tool does not take any parameters. - -## SlackApi.ListSlackTeamUsers - -
- - -Fetches a list of all users in a Slack team. - -**Parameters** - -- **pagination_cursor** (`string`, optional) Cursor for paginating through data. Use the `next_cursor` from a previous response to continue. -- **maximum_items_to_return** (`integer`, optional) Maximum number of users to return (recommended max is 200 for pagination). -- **slack_team_id** (`string`, optional) The encoded team ID to list users from, necessary if an organization-level token is used. Ignored if a workspace-level token is provided. -- **include_user_locale** (`boolean`, optional) Set to true to receive locale information for each user. Default is false. - -## SlackApi.FindSlackUserByEmail - -
- - -Find a Slack user using their email address. - -**Parameters** - -- **user_email_address** (`string`, required) The email address of the user in the Slack workspace to search for. - -## SlackApi.GetSlackUserProfile - -
- - -Retrieve Slack user profile information and custom status. - -**Parameters** - -- **target_user_id** (`string`, optional) The unique identifier of the Slack user whose profile information is to be retrieved. -- **include_labels** (`boolean`, optional) Include labels for each ID in custom profile fields. This option can heavily rate-limit requests and is not recommended. Default is false. - -## SlackApi.SetSlackProfilePhoto - -
- - -Set the user's profile photo on Slack. - -**Parameters** - -- **crop_box_size** (`string`, optional) The size of the square crop box for the profile photo in pixels. Specify the width and height, which are the same value for a square. -- **crop_box_x_coordinate** (`string`, optional) X coordinate of the top-left corner of the crop box for the profile photo. -- **crop_y_coordinate** (`string`, optional) Y coordinate of the top-left corner of the crop box for the user's profile photo on Slack. This determines where the cropping of the image will start on the vertical axis. -- **profile_photo_image** (`string`, optional) The image file to set as the Slack profile photo. Provide image data directly with the correct content type (e.g., image/jpeg, image/png). - - diff --git a/app/en/resources/integrations/social-communication/teams/_meta.tsx b/app/en/resources/integrations/social-communication/teams/_meta.tsx deleted file mode 100644 index 648a62088..000000000 --- a/app/en/resources/integrations/social-communication/teams/_meta.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import type { MetaRecord } from "nextra"; - -const meta: MetaRecord = { - "*": { - theme: { - breadcrumb: true, - toc: true, - copyPage: true, - }, - }, - reference: { - title: "Reference", - }, -}; - -export default meta; diff --git a/app/en/resources/integrations/social-communication/teams/reference/page.mdx b/app/en/resources/integrations/social-communication/teams/reference/page.mdx deleted file mode 100644 index 999517183..000000000 --- a/app/en/resources/integrations/social-communication/teams/reference/page.mdx +++ /dev/null @@ -1,25 +0,0 @@ -# Teams Reference - -Below is a reference of enumerations used by some tools in the Teams MCP Server: - -## PartialMatchType - -- **PARTIAL_ALL**: `match_all_keywords` -- **PARTIAL_ANY**: `match_any_of_the_keywords` - -## MatchType - -- **EXACT**: `exact_match` -- **PARTIAL_ALL**: `partial_match_all_keywords` -- **PARTIAL_ANY**: `partial_match_any_of_the_keywords` - -## TeamMembershipType - -- **DIRECT_MEMBER**: `direct_member_of_the_team` -- **MEMBER_OF_SHARED_CHANNEL**: `member_of_a_shared_channel_in_another_team` - -## PartialMatchType - -- **PARTIAL_ALL**: `match_all_keywords` -- **PARTIAL_ANY**: `match_any_of_the_keywords` - diff --git a/app/en/resources/integrations/social-communication/twilio/page.mdx b/app/en/resources/integrations/social-communication/twilio/page.mdx deleted file mode 100644 index c58e4992a..000000000 --- a/app/en/resources/integrations/social-communication/twilio/page.mdx +++ /dev/null @@ -1,64 +0,0 @@ ---- -asIndexPage: true ---- -# Twilio - -A handy MCP Sever for easily sending SMS and WhatsApp messages with Twilio. - -## Features - -- Send SMS messages via Twilio -- Send WhatsApp messages via Twilio -- Built for Arcade integration - -## Prerequisites - -A Twilio account with: - -- Account SID -- API Key SID -- API Key Secret -- A Twilio phone number -- WhatsApp enabled on your Twilio number (for WhatsApp functionality) - -To set up your Twilio account and acquire the required credentials, please refer to the Twilio documentation: [Create an API Key](https://www.twilio.com/docs/iam/api-keys#create-an-api-key). This guide will walk you through the process of creating an account and generating the necessary API keys. - -## Configuration - -By default, the configuration is loaded from an `engine.env` file in your project root, but you can specify a different file if needed. Ensure the file contains the following variables: - -```env -TWILIO_ACCOUNT_SID=your_account_sid -TWILIO_API_KEY_SID=your_api_key_sid -TWILIO_API_KEY_SECRET=your_api_key_secret -TWILIO_PHONE_NUMBER=your_twilio_phone_number -MY_PHONE_NUMBER=your_personal_phone_number -``` - -## Usage Examples - -Explore the versatility of this MCP Sever with the following example prompts: - -- **📩 Send an SMS to your personal number:** - - _Prompt:_ "Send an SMS to my number saying 'Hello from Arcade!'" - -- **💬 Dispatch a WhatsApp message:** - - _Prompt:_ "Send a WhatsApp message to +19999999999 with the top 10 movies of all time." - -- **⏰ Schedule a reminder SMS:** - - _Prompt:_ "Send an SMS to my number reminding me about the meeting at 3 PM tomorrow." - -- **💡 Share a motivational quote via WhatsApp:** - - _Prompt:_ "Send a WhatsApp message to +19999999999 with the quote 'The only way to do great work is to love what you do. - Steve Jobs'" - -- **🌤️ Provide a weather update via SMS:** - - _Prompt:_ "Send an SMS to +19999999999 with today's weather forecast for New York City." - -- **🎉 Send a birthday greeting via WhatsApp:** - - _Prompt:_ "Send a WhatsApp message to +19999999999 saying 'Happy Birthday! Hope you have a fantastic day!'" diff --git a/app/en/resources/integrations/social-communication/twilio/reference/page.mdx b/app/en/resources/integrations/social-communication/twilio/reference/page.mdx deleted file mode 100644 index aa7b5520d..000000000 --- a/app/en/resources/integrations/social-communication/twilio/reference/page.mdx +++ /dev/null @@ -1,35 +0,0 @@ -# Reference - -| | | -| ----------- | -------------------------------------------------------------- | -| Name | twilio | -| Package | [arcade_twilio](https://pypi.org/project/arcade_twilio/0.1.0/) | -| Repository | [Github](https://github.com/sdserranog/arcade-twilio) | -| Install | `pip install arcade_twilio==0.1.0` | -| Description | A twilio integration to send SMS and WhatsApps. | -| Author | sdserranog@gmail.com | - -| Tool Name | Description | -| ----------------------------- | ------------------------------------------ | -| [SendSms](#sendsms) | Send an SMS/text message to a phone number | -| [SendWhatsapp](#sendwhatsapp) | Send a WhatsApp message to a phone number | - -### SendSms - -Send an SMS/text message to a phone number - -#### Parameters - -- `phone_number`_(string, required)_ The phone number to send the message to. Use 'my_phone_number' when a phone number is not specified or when the request implies sending to the user themselves -- `message`_(string, required)_ The text content to be sent via SMS - ---- - -### SendWhatsapp - -Send a WhatsApp message to a phone number - -#### Parameters - -- `phone_number`_(string, required)_ The phone number to send the message to. Use 'my_phone_number' when a phone number is not specified or when the request implies sending to the user themselves -- `message`_(string, required)_ The text content to be sent via WhatsApp diff --git a/app/en/resources/integrations/social-communication/x/page.mdx b/app/en/resources/integrations/social-communication/x/page.mdx deleted file mode 100644 index f84b67514..000000000 --- a/app/en/resources/integrations/social-communication/x/page.mdx +++ /dev/null @@ -1,246 +0,0 @@ -# X (formerly Twitter) - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade X (formerly Twitter) MCP Server provides a pre-built set of tools for interacting with X (formerly Twitter). These tools make it easy to build agents and AI apps that can: - -- Post tweets -- Reply to tweets -- Quote tweets -- Delete tweets -- Search for tweets by username -- Search for tweets by keywords -- Look up a user by username - -## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server). - - -## X.LookupSingleUserByUsername - -
- - -Look up a user on X (Twitter) by their username. - -**Parameters** - -- **username** (`string`, required) The username of the X (Twitter) user to look up - -## X.PostTweet - -
- - -Post a tweet to X (Twitter). - -**Parameters** - -- **tweet_text** (`string`, required) The text content of the tweet you want to post -- **quote_tweet_id** (`string`, optional) The ID of the tweet you want to quote. Optional. - -## X.ReplyToTweet - -
- - -Reply to a tweet on X (Twitter). - -**Parameters** - -- **tweet_id** (`string`, required) The ID of the tweet you want to reply to -- **tweet_text** (`string`, required) The text content of the tweet you want to post -- **quote_tweet_id** (`string`, optional) The ID of the tweet you want to quote. Optional. - -## X.DeleteTweetById - -
- - -Delete a tweet on X (Twitter). - -**Parameters** - -- **tweet_id** (`string`, required) The ID of the tweet you want to delete - -## X.SearchRecentTweetsByUsername - -
- - -Search for recent tweets (last 7 days) on X (Twitter) by username. - -**Parameters** - -- **username** (`string`, required) The username of the X (Twitter) user to look up -- **max_results** (`integer`, optional) The maximum number of results to return. Must be in range [1, 100] inclusive -- **next_token** (`string`, optional) The pagination token starting from which to return results - -## X.SearchRecentTweetsByKeywords - -
- - -Search for recent tweets (last 7 days) on X (Twitter) by required keywords and phrases. - -**Parameters** - -- **keywords** (`array[string]`, optional) List of keywords that must be present in the tweet -- **phrases** (`array[string]`, optional) List of phrases that must be present in the tweet -- **max_results** (`integer`, optional) The maximum number of results to return. Must be in range [1, 100] inclusive -- **next_token** (`string`, optional) The pagination token starting from which to return results - -## X.LookupTweetById - -
- - -Look up a tweet on X (Twitter) by tweet ID. - -**Parameters** - -- **tweet_id** (`string`, required) The ID of the tweet you want to look up - -## Auth - -The Arcade X MCP Sever uses the [X auth provider](/references/auth-providers/x) to connect to users' X accounts. Please refer to the [X auth provider](/references/auth-providers/x) documentation to learn how to configure auth. - - diff --git a/app/en/resources/integrations/social-communication/zoom/_meta.tsx b/app/en/resources/integrations/social-communication/zoom/_meta.tsx deleted file mode 100644 index 1f77fe4f9..000000000 --- a/app/en/resources/integrations/social-communication/zoom/_meta.tsx +++ /dev/null @@ -1,6 +0,0 @@ -export default { - install: { - title: "Install", - display: "hidden", // This hides it from the navigation - }, -}; diff --git a/app/en/resources/integrations/social-communication/zoom/install/page.mdx b/app/en/resources/integrations/social-communication/zoom/install/page.mdx deleted file mode 100644 index 09ef2d9ed..000000000 --- a/app/en/resources/integrations/social-communication/zoom/install/page.mdx +++ /dev/null @@ -1,108 +0,0 @@ -# Arcade for Zoom - -import { Steps, Callout } from "nextra/components"; -import { SignupLink } from "@/app/_components/analytics"; -import { ZoomAuthLink } from "./zoom-auth-link"; - -## Integrate Arcade with your Zoom account - -Arcade securely connects your AI agents to APIs, data, code, and other systems via Tools. Our Zoom integration allows Arcade's tools to connect to your Zoom account, helping you manage meetings and gather information more efficiently. - -You can leverage this app in Arcade's Playground when you log in to the Arcade Dashboard, or in your own applications. - -While the Arcade app for Zoom does not directly expose a Large Language Model (LLM) to you, you will likely use Arcade's tools in conjunction with an LLM. When using LLMs, there's always potential to generate inaccurate responses, summaries, or other output. - -Arcade's Zoom app brings Arcade's powerful AI tool-calling capabilities to your meeting management. The Arcade app for Zoom can: - -- List your upcoming meetings within the next 24 hours -- Retrieve meeting invitation details for specific meetings -- Find the participants and/or registrants for a specific meeting -- and more! - -For more details on what tools are available and what scopes they require, see the [Zoom MCP Server documentation](/resources/integrations/social-communication/zoom). - - - The Arcade Zoom app requires an active Arcade account. If you don't have one - yet,{" "} - sign up for free - . - - -## How it works - - - -### Start using Arcade's Zoom tools - -Use Arcade's [tools for Zoom](/resources/integrations/social-communication/zoom) to: - -- List your upcoming meetings -- Get meeting invitation details -- Find meeting participants and registrants -- and more! - -Try leveraging the Arcade Zoom tools in the Arcade Playground by [chatting with an LLM](https://api.arcade.dev/dashboard/playground/chat) asking, "What meetings do I have scheduled today?" or [executing Zoom tools directly](https://api.arcade.dev/dashboard/playground/execute?toolId=ListUpcomingMeetings&toolkits=%5B%5D&authProviders=%5B%5D&secrets=%5B%5D&input=%7B%22user_id%22%3A%22me%22%7D) without interacting with an LLM. - - - When using LLMs with Zoom, responses may sometimes contain inaccuracies. - Always review AI-generated content before taking action. - - - - -## Support and troubleshooting - -If you encounter any issues connecting Arcade to your Zoom account: - -1. Verify you've granted all required permissions during authorization -2. Ensure your Zoom account is active and in good standing -3. Check that you're using a compatible browser (Chrome, Firefox, Safari, or Edge) -4. Clear your browser cache and cookies, then try again - -### Adding the Arcade Zoom app to your Zoom account - -If using the Arcade playground directly did not work, you can try adding the Arcade Zoom app to your Zoom account by clicking the "Connect with Zoom" button below. - - - - - You'll need to have a Zoom account with appropriate permissions to allow - Arcade to access your Zoom data. - - -### Authorize the requested permissions - -When connecting Arcade to your Zoom account, depending on which Arcade tools you'll be using, you'll be asked to authorize specific permissions: - -- **user:read:user** - Allows Arcade to access basic profile information -- **user:read:email** - Enables Arcade to access your email address -- **meeting:read:meetings** - Enables Arcade to list your upcoming meetings -- **meeting:read:invitation** - Enables Arcade to read meeting invitation details - -These permissions ensure Arcade can perform the necessary functions while protecting your privacy and security. - -### Removing the Arcade Zoom app - -To remove the Arcade Zoom app from your Zoom account, you can do so by going to the [Zoom App Marketplace](https://marketplace.zoom.us/user/installed) and uninstalling the app. - -Arcade only stores authentication tokens, not your Zoom data. These tokens become invalid when you uninstall the app and will eventually expire. To remove tokens immediately, delete the Zoom Auth Provider from the [Arcade Dashboard](https://api.arcade.dev/dashboard/auth/oauth). - -## Privacy and security - -Arcade takes the security of your Zoom data seriously: - -- We only request the minimum permissions needed for our tools to function -- Your Zoom credentials are never stored on our servers -- All communication between Arcade and Zoom is encrypted -- You can revoke Arcade's access to your Zoom account at any time through your [Zoom App Marketplace](https://marketplace.zoom.us/user/installed) - -## Next steps - -The Arcade Zoom app is a sample of what Arcade can do with your Zoom account. For your own applications, you might want to [create your own Zoom app](/references/auth-providers/zoom). Creating your own Zoom application will allow you to brand the app, customize the permissions, and more. - -## Need help? - -If you have any questions or need assistance: - -- Check our [Zoom MCP Server documentation](/resources/integrations/social-communication/zoom) -- [Contact our support team](/resources/contact-us) diff --git a/app/en/resources/integrations/social-communication/zoom/install/zoom-auth-link.tsx b/app/en/resources/integrations/social-communication/zoom/install/zoom-auth-link.tsx deleted file mode 100644 index 5b4b79545..000000000 --- a/app/en/resources/integrations/social-communication/zoom/install/zoom-auth-link.tsx +++ /dev/null @@ -1,40 +0,0 @@ -"use client"; - -const TO_STRING_BASE = 36; -const SUBSTRING_START = 2; - -export function ZoomAuthLink() { - return ( -
- -
- ); -} diff --git a/app/en/resources/integrations/social-communication/zoom/page.mdx b/app/en/resources/integrations/social-communication/zoom/page.mdx deleted file mode 100644 index 94895da83..000000000 --- a/app/en/resources/integrations/social-communication/zoom/page.mdx +++ /dev/null @@ -1,82 +0,0 @@ ---- -asIndexPage: true ---- - -# Zoom - -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import { Callout } from "nextra/components"; - - - - - -The Arcade Zoom MCP Server provides tools for interacting with Zoom. With these tools, you can build agents and AI applications that can: - -- List upcoming meetings -- Retrieve meeting invitation details - -## Available Tools - -These tools are currently available in the Arcade Zoom MCP Sever. - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your own - tools](/guides/create-tools/tool-basics/build-mcp-server) with the [Zoom auth - provider](/references/auth-providers/zoom#using-zoom-auth-in-custom-tools). - - -## Zoom.ListUpcomingMeetings - -List a Zoom user's upcoming meetings within the next 24 hours. - -**Parameters** - -- **`user_id`** _(string, optional)_ The user's user ID or email address. Defaults to 'me' for the current user. - ---- - -## Zoom.GetMeetingInvitation - -Retrieve the invitation note for a specific Zoom meeting. - -**Parameters** - -- **`meeting_id`** _(string, required)_ The meeting's numeric ID (as a string). - ---- - -## Auth - -The Arcade Zoom MCP Sever uses the [Zoom auth provider](/references/auth-providers/zoom) to connect to users' Zoom accounts. - -With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade ` as the name of the application that's requesting permission. - -With a self-hosted installation of Arcade, you need to [configure the Zoom auth provider](/references/auth-providers/zoom#configuring-zoom-auth) with your own Zoom app credentials. - - diff --git a/app/en/resources/integrations/social/[toolkitId]/_meta.tsx b/app/en/resources/integrations/social/[toolkitId]/_meta.tsx new file mode 100644 index 000000000..ce7f0efde --- /dev/null +++ b/app/en/resources/integrations/social/[toolkitId]/_meta.tsx @@ -0,0 +1,13 @@ +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "*": { + theme: { + breadcrumb: false, + toc: false, + copyPage: false, + }, + }, +}; + +export default meta; diff --git a/app/en/resources/integrations/social/[toolkitId]/page-impl.tsx b/app/en/resources/integrations/social/[toolkitId]/page-impl.tsx new file mode 100644 index 000000000..5b68950fd --- /dev/null +++ b/app/en/resources/integrations/social/[toolkitId]/page-impl.tsx @@ -0,0 +1,10 @@ +import { createToolkitDocsPage } from "@/app/en/resources/integrations/_lib/toolkit-docs-page"; + +export const dynamicParams = false; + +const { Page, generateMetadata, generateStaticParams } = + createToolkitDocsPage("social"); + +export { generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/social/[toolkitId]/page.mdx b/app/en/resources/integrations/social/[toolkitId]/page.mdx new file mode 100644 index 000000000..ca97c319f --- /dev/null +++ b/app/en/resources/integrations/social/[toolkitId]/page.mdx @@ -0,0 +1,14 @@ +--- +title: "MCP server" +description: "Generated MCP server documentation." +--- + +import Page, { + dynamicParams, + generateMetadata, + generateStaticParams, +} from "./page-impl"; + +export { dynamicParams, generateMetadata, generateStaticParams }; + +export default Page; diff --git a/app/en/resources/integrations/social/_meta.tsx b/app/en/resources/integrations/social/_meta.tsx new file mode 100644 index 000000000..21475a1de --- /dev/null +++ b/app/en/resources/integrations/social/_meta.tsx @@ -0,0 +1,42 @@ +import type { MetaRecord } from "nextra"; + +const meta: MetaRecord = { + "-- Optimized": { + type: "separator", + title: "Optimized", + }, + linkedin: { + title: "LinkedIn", + href: "/en/resources/integrations/social/linkedin", + }, + microsoftteams: { + title: "Microsoft Teams", + href: "/en/resources/integrations/social/microsoftteams", + }, + reddit: { + title: "Reddit", + href: "/en/resources/integrations/social/reddit", + }, + slack: { + title: "Slack", + href: "/en/resources/integrations/social/slack", + }, + x: { + title: "X", + href: "/en/resources/integrations/social/x", + }, + zoom: { + title: "Zoom", + href: "/en/resources/integrations/social/zoom", + }, + "-- Starter": { + type: "separator", + title: "Starter", + }, + slackapi: { + title: "Slack API", + href: "/en/resources/integrations/social/slackapi", + }, +}; + +export default meta; diff --git a/app/globals.css b/app/globals.css index 830563d51..0499d7afa 100644 --- a/app/globals.css +++ b/app/globals.css @@ -3,6 +3,7 @@ @import "@arcadeai/design-system/assets/variables.css"; @source "../node_modules/@arcadeai/design-system/dist"; @plugin 'tailwindcss-animate'; +@plugin '@tailwindcss/typography'; @variant dark (&:where(.dark *)); @@ -61,11 +62,83 @@ code { white-space: pre-wrap; } +/* Hide built-in Nextra actions on toolkit pages */ +html[data-page-kind="toolkit"] { + /* Hide Nextra's copy page dropdown (has x:float-end class) */ + [class*="x\:float-end"] { + display: none !important; + } + /* Hide "Edit content in GitHub" link from Nextra (we have our own) */ + a[href*="github.com/ArcadeAI/docs/tree/main/"], + a[href*="github.com/ArcadeAI/docs/blob/main/"] { + display: none !important; + } +} + pre code { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace; } +/* Toolkit pages: Improve code readability in light mode */ +html[data-page-kind="toolkit"].light pre, +html[data-page-kind="toolkit"]:not(.dark) pre { + background-color: #f8fafc; + color: #0f172a; +} + +html[data-page-kind="toolkit"].light pre code, +html[data-page-kind="toolkit"]:not(.dark) pre code, +html[data-page-kind="toolkit"].light .nextra-code, +html[data-page-kind="toolkit"]:not(.dark) .nextra-code { + color: inherit; +} + +/* Toolkit pages: Override Nextra callout colors for better readability */ +html[data-page-kind="toolkit"] .nextra-callout { + border-width: 1px; + border-radius: 0.75rem; +} + +/* Warning callouts - toolkit pages only */ +html[data-page-kind="toolkit"] .nextra-callout.x\:bg-yellow-50 { + background-color: rgb(254 252 232) !important; + color: rgb(113 63 18) !important; + border-color: rgb(234 179 8) !important; +} + +html.dark[data-page-kind="toolkit"] .nextra-callout.x\:bg-yellow-50 { + background-color: rgb(113 63 18 / 0.15) !important; + color: rgb(253 224 71) !important; + border-color: rgb(234 179 8 / 0.4) !important; +} + +/* Info callouts - toolkit pages only */ +html[data-page-kind="toolkit"] .nextra-callout.x\:bg-blue-100 { + background-color: rgb(239 246 255) !important; + color: rgb(29 78 216) !important; + border-color: rgb(59 130 246) !important; +} + +html.dark[data-page-kind="toolkit"] .nextra-callout.x\:bg-blue-100 { + background-color: rgb(30 58 138 / 0.15) !important; + color: rgb(147 197 253) !important; + border-color: rgb(59 130 246 / 0.4) !important; +} + +/* Success/default callouts - toolkit pages only */ +html[data-page-kind="toolkit"] .nextra-callout.x\:bg-green-100 { + background-color: rgb(240 253 244) !important; + color: rgb(21 128 61) !important; + border-color: rgb(34 197 94) !important; +} + +html.dark[data-page-kind="toolkit"] .nextra-callout.x\:bg-green-100 { + background-color: rgb(20 83 45 / 0.15) !important; + color: rgb(134 239 172) !important; + border-color: rgb(34 197 94 / 0.4) !important; +} + /* Position search next to logo */ nav > a[aria-label="Home page"] { order: -2; @@ -98,6 +171,15 @@ nav > div:has(.nextra-search) { margin-top: 0; } +@keyframes tool-name-marquee { + 0% { + transform: translateX(0); + } + 100% { + transform: translateX(-100%); + } +} + /* Only number h3 (###) in Steps component, not smaller nested headings */ .nextra-steps h4, .nextra-steps h5, diff --git a/app/not-found.tsx b/app/not-found.tsx index 995681e3c..06779f4f9 100644 --- a/app/not-found.tsx +++ b/app/not-found.tsx @@ -13,8 +13,8 @@ import { Home, SearchX } from "lucide-react"; import Link from "next/link"; import { usePathname, useSearchParams } from "next/navigation"; import posthog from "posthog-js"; -import { use, useEffect, useMemo, useRef } from "react"; -import { getDictionaryClient } from "@/_dictionaries/get-dictionary-client"; +import { Suspense, useEffect, useMemo, useRef, useState } from "react"; +import type { Dictionary } from "@/_dictionaries/i18n-config"; import { BackButton } from "@/app/_components/back-button"; const LOCALE_PATH_REGEX = /^\/([a-z]{2}(?:-[A-Z]{2})?)(?:\/.+|$)/; @@ -33,10 +33,27 @@ function getReferrerInfo(): { referrer: string; referringDomain: string } { } } -export default function NotFound() { +// Default dictionary for fallback during SSR +const defaultDict: Dictionary["notFoundPage"] = { + title: "Page not found", + description: "This page doesn't exist or may have moved.", + notAvailablePrefix: "Not available in", + tryEnglish: "Try English version", + translationHint: "This page may not be translated yet.", + viewOriginalEnglish: "View the original in English", + goHome: "Go to homepage", + goBack: "Go back", + needHelp: "Need help? Try these popular pages:", + quickstart: "Quickstart", + mcpServers: "MCP Servers", + createMcpServer: "Create a MCP Server", +}; + +function NotFoundContent() { const pathname = usePathname() || "/"; const searchParams = useSearchParams(); const lastCapturedPathRef = useRef(null); + const [dict, setDict] = useState(defaultDict); const { currentLocale, englishPath, showEnglishLink } = useMemo(() => { const locale = pathname.match(LOCALE_PATH_REGEX)?.[1] || "en"; @@ -50,7 +67,26 @@ export default function NotFound() { }; }, [pathname]); - const dict = use(getDictionaryClient(currentLocale)); + // Load dictionary on client side + useEffect(() => { + const loadDict = async () => { + try { + type DictModule = { default: Dictionary }; + let dictModule: DictModule; + if (currentLocale === "es") { + dictModule = await import("@/_dictionaries/es"); + } else if (currentLocale === "pt-BR") { + dictModule = await import("@/_dictionaries/pt-BR"); + } else { + dictModule = await import("@/_dictionaries/en"); + } + setDict(dictModule.default.notFoundPage); + } catch { + // Keep default English dictionary on error + } + }; + loadDict(); + }, [currentLocale]); useEffect(() => { const search = searchParams?.toString(); @@ -93,22 +129,22 @@ export default function NotFound() { {/* Content */}

- {dict.notFoundPage.title} + {dict.title}

- {dict.notFoundPage.description} + {dict.description}

{/* English fallback */} {showEnglishLink && (
- {dict.notFoundPage.translationHint} + {dict.translationHint} - {dict.notFoundPage.viewOriginalEnglish} + {dict.viewOriginalEnglish} .
@@ -119,18 +155,16 @@ export default function NotFound() { - +
-

- {dict.notFoundPage.needHelp} -

+

{dict.needHelp}

- {dict.notFoundPage.quickstart} + {dict.quickstart} - {dict.notFoundPage.mcpServers} + {dict.mcpServers} - {dict.notFoundPage.createMcpServer} + {dict.createMcpServer}
@@ -167,3 +201,15 @@ export default function NotFound() {
); } + +export default function NotFound() { + return ( + Loading...
+ } + > + + + ); +} diff --git a/biome.jsonc b/biome.jsonc index 5d7637e6c..7ba3126d8 100644 --- a/biome.jsonc +++ b/biome.jsonc @@ -15,6 +15,9 @@ "enabled": true, "rules": { "recommended": true, + "nursery": { + "useSortedClasses": "off" + }, "suspicious": { "noUnknownAtRules": "off" }, @@ -37,6 +40,80 @@ } } } + }, + { + "includes": ["app/cheat-sheet-print.css"], + "linter": { + "rules": { + "style": { + "noDescendingSpecificity": "off" + } + } + } + }, + { + "includes": ["**/*.test.ts", "**/*.test.tsx"], + "linter": { + "rules": { + "style": { + "noMagicNumbers": "off" + } + } + } + }, + { + "includes": ["app/_components/toolkit-docs/**"], + "linter": { + "rules": { + "complexity": { + "noExcessiveCognitiveComplexity": "warn" + }, + "performance": { + "noBarrelFile": "off" + }, + "style": { + "noMagicNumbers": "off", + "useFilenamingConvention": "off" + } + } + } + }, + { + "includes": ["toolkit-docs-generator/**/*"], + "linter": { + "rules": { + "performance": { + "noBarrelFile": "off", + "noAccumulatingSpread": "off", + "useTopLevelRegex": "off" + }, + "suspicious": { + "useGuardForIn": "off", + "useAwait": "off", + "noConsole": "off", + "noExplicitAny": "warn" + }, + "style": { + "noMagicNumbers": "off", + "noParameterProperties": "off", + "useConsistentMemberAccessibility": "off", + "useConsistentTypeDefinitions": "off", + "noNestedTernary": "off", + "useCollapsedIf": "off", + "useDefaultSwitchClause": "off", + "useBlockStatements": "off", + "useNodejsImportProtocol": "off" + }, + "nursery": { + "noIncrementDecrement": "off", + "noShadow": "off", + "useMaxParams": "off" + }, + "complexity": { + "noExcessiveCognitiveComplexity": "warn" + } + } + } } ], "assist": { @@ -49,15 +126,19 @@ "extends": ["ultracite/core", "ultracite/react", "ultracite/next"], "files": { "ignoreUnknown": false, + "maxSize": 10485760, "includes": [ "!dist", "!build", "!node_modules", "!public", + "!scripts", "!agents", "!.vscode", "!.vscode/launch.json", "!.next", + "!extract-custom-sections", + "!custom-sections-transformer", "!examples", "!app/globals.css" ] diff --git a/data/toolkits/airtableapi.json b/data/toolkits/airtableapi.json new file mode 100644 index 000000000..8795c3d0b --- /dev/null +++ b/data/toolkits/airtableapi.json @@ -0,0 +1,6713 @@ +{ + "id": "AirtableApi", + "label": "Airtable API", + "version": "4.0.0", + "description": "Tools that enable LLMs to interact directly with the airtable API.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/airtable.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/airtable-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "airtable", + "allScopes": [ + "data.recordComments:read", + "data.recordComments:write", + "data.records:read", + "data.records:write", + "enterprise.account:read", + "enterprise.account:write", + "enterprise.auditLogs:read", + "enterprise.changeEvents:read", + "enterprise.exports:manage", + "enterprise.groups:manage", + "enterprise.groups:read", + "enterprise.scim.usersAndGroups:manage", + "enterprise.user:read", + "enterprise.user:write", + "hyperDB.records:read", + "hyperDB.records:write", + "schema.bases:read", + "schema.bases:write", + "webhook:manage", + "workspacesAndBases.shares:manage", + "workspacesAndBases:manage", + "workspacesAndBases:read", + "workspacesAndBases:write" + ] + }, + "tools": [ + { + "name": "AddBaseCollaborator", + "qualifiedName": "AirtableApi.AddBaseCollaborator", + "fullyQualifiedName": "AirtableApi.AddBaseCollaborator@4.0.0", + "description": "Add a collaborator to an Airtable base.\n\n Use this tool to add a new collaborator to a specified Airtable base. It facilitates inviting one collaborator at a time.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "base_id", + "type": "string", + "required": false, + "description": "The ID of the Airtable base to which the collaborator will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'add-base-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.AddBaseCollaborator", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "base_id": { + "value": "tbl1234567890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\": \"collaborator@example.com\", \"role\": \"editor\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddCollaboratorToAirtableInterface", + "qualifiedName": "AirtableApi.AddCollaboratorToAirtableInterface", + "fullyQualifiedName": "AirtableApi.AddCollaboratorToAirtableInterface@4.0.0", + "description": "Add a collaborator to an Airtable interface.\n\n This tool is used to add a new collaborator to a specific interface in Airtable. Call this when you need to give a user access to an interface within a particular base.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "airtable_base_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Airtable base where the interface is located. This helps specify which base the collaborator will be added to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "page_bundle_id", + "type": "string", + "required": false, + "description": "The unique identifier for the specific interface page bundle where the collaborator will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'add-interface-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.AddCollaboratorToAirtableInterface", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "airtable_base_id": { + "value": "app1234567890", + "type": "string", + "required": false + }, + "page_bundle_id": { + "value": "page123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\":\"newcollaborator@example.com\",\"role\":\"editor\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddRecordComment", + "qualifiedName": "AirtableApi.AddRecordComment", + "fullyQualifiedName": "AirtableApi.AddRecordComment@4.0.0", + "description": "Creates a comment on a specified record.\n\n Use this tool to add a comment on a specific record in Airtable. Supports mentioning users within the comment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "base_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the Airtable base where the record is located. This is required to specify which base contains the record you want to comment on. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "table_identifier", + "type": "string", + "required": false, + "description": "The ID or name of the table where the record is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "record_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the record where the comment will be added. This value specifies which record in Airtable will receive the comment. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["data.recordComments:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.AddRecordComment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "base_identifier": { + "value": "app123456789", + "type": "string", + "required": false + }, + "table_identifier": { + "value": "tbl987654321", + "type": "string", + "required": false + }, + "record_identifier": { + "value": "rec567890123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"comment\":\"@user Comment text here.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddWorkspaceCollaborator", + "qualifiedName": "AirtableApi.AddWorkspaceCollaborator", + "fullyQualifiedName": "AirtableApi.AddWorkspaceCollaborator@4.0.0", + "description": "Add a collaborator to an Airtable workspace.\n\n Use this tool to add a single collaborator to a specified Airtable workspace. This function is called when you need to invite someone to join your workspace as a collaborator.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "The unique identifier of the Airtable workspace where the collaborator will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'add-workspace-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.AddWorkspaceCollaborator", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "workspace_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\": \"collaborator@example.com\", \"role\": \"editor\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AirtableGetRecord", + "qualifiedName": "AirtableApi.AirtableGetRecord", + "fullyQualifiedName": "AirtableApi.AirtableGetRecord@4.0.0", + "description": "Retrieve a single record from an Airtable table.\n\nThis tool is used to fetch a specific record from an Airtable table using its Record ID. It will return the record if it can be located within the table or elsewhere in the same base.", + "parameters": [ + { + "name": "airtable_base_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Airtable base containing the table from which to retrieve the record. This ID is required to locate the correct base and perform the record search.", + "enum": null, + "inferrable": true + }, + { + "name": "record_id", + "type": "string", + "required": true, + "description": "The unique identifier for the record you wish to retrieve from the Airtable table. This ID should be valid and correspond to a record within the specified base.", + "enum": null, + "inferrable": true + }, + { + "name": "table_identifier", + "type": "string", + "required": true, + "description": "Specify the table's ID or name from which to retrieve the record.", + "enum": null, + "inferrable": true + }, + { + "name": "cell_format", + "type": "string", + "required": false, + "description": "Specify how cell values should be formatted. Options may include 'json' or 'string'.", + "enum": null, + "inferrable": true + }, + { + "name": "return_fields_by_field_id", + "type": "boolean", + "required": false, + "description": "If true, fields are returned by Field ID instead of names.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["data.records:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-record'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.AirtableGetRecord", + "parameters": { + "airtable_base_id": { + "value": "app123456789", + "type": "string", + "required": true + }, + "record_id": { + "value": "rec987654321", + "type": "string", + "required": true + }, + "table_identifier": { + "value": "Table A", + "type": "string", + "required": true + }, + "cell_format": { + "value": "json", + "type": "string", + "required": false + }, + "return_fields_by_field_id": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BatchManageEnterpriseUsers", + "qualifiedName": "AirtableApi.BatchManageEnterpriseUsers", + "fullyQualifiedName": "AirtableApi.BatchManageEnterpriseUsers@4.0.0", + "description": "Batch manage users in enterprise accounts.\n\n Use this tool to manage enterprise account users by ID or email. Ideal for updates or changing user emails. Best suited for handling up to 10 users per batch to optimize performance and avoid timeouts.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enterprise_account_id", + "type": "string", + "required": false, + "description": "The unique identifier for the enterprise account to manage users within. This must be provided as a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.user:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'manage-user-batched'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.BatchManageEnterpriseUsers", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enterprise_account_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"users\":[{\"id\":\"user123\",\"email\":\"user123@example.com\"},{\"id\":\"user456\",\"email\":\"user456@example.com\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BatchManageUserMembership", + "qualifiedName": "AirtableApi.BatchManageUserMembership", + "fullyQualifiedName": "AirtableApi.BatchManageUserMembership@4.0.0", + "description": "Batch manage user membership in enterprise accounts.\n\n This tool allows changing a user's membership status between unmanaged and organization member in an enterprise account. It handles membership updates in batches and returns outcomes for each user processed, including any errors encountered. Use when managing user roles within organizations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enterprise_account_id", + "type": "string", + "required": false, + "description": "The unique identifier of the enterprise account in which user membership will be managed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.user:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'manage-user-membership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.BatchManageUserMembership", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enterprise_account_id": { + "value": "ent-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"users\":[{\"id\":\"user-1\",\"status\":\"member\"},{\"id\":\"user-2\",\"status\":\"unmanaged\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BatchMoveUserGroupsBetweenAccounts", + "qualifiedName": "AirtableApi.BatchMoveUserGroupsBetweenAccounts", + "fullyQualifiedName": "AirtableApi.BatchMoveUserGroupsBetweenAccounts@4.0.0", + "description": "Batch move user groups between enterprise accounts.\n\n Use this tool to transfer user groups between two enterprise accounts within the same organization, provided the accounts have the Enterprise Hub feature enabled. The tool ensures compliance with organizational invite settings, potentially removing non-org unit members during the move.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "target_enterprise_account_id", + "type": "string", + "required": false, + "description": "The ID of the target enterprise account to which user groups are being moved. Must belong to the same organization and have the Enterprise Hub feature enabled. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.groups:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'move-user-groups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.BatchMoveUserGroupsBetweenAccounts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "target_enterprise_account_id": { + "value": "acct_1234567890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"userGroups\":[{\"id\":\"group_1\",\"name\":\"Marketing Team\"},{\"id\":\"group_2\",\"name\":\"Engineering Team\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkUpdateAirtable", + "qualifiedName": "AirtableApi.BulkUpdateAirtable", + "fullyQualifiedName": "AirtableApi.BulkUpdateAirtable@4.0.0", + "description": "Update or upsert multiple records in an Airtable table.\n\n Use this tool to perform a destructive update on multiple records in an Airtable table. Provide up to 10 record objects, each with an ID and fields to update. Optionally, perform upserts by including fields to merge on, allowing records to be created if no matching records are found. The response will specify which records were updated or created.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "base_id", + "type": "string", + "required": false, + "description": "The unique ID of the Airtable base containing the records to update. This is required to specify the target base. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "table_identifier", + "type": "string", + "required": false, + "description": "The table ID or name in Airtable where the records will be updated. Use the table ID to avoid changes if the name changes. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["data.records:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-multiple-records-put'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.BulkUpdateAirtable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "base_id": { + "value": "app1234567890", + "type": "string", + "required": false + }, + "table_identifier": { + "value": "tbl9876543210", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"records\": [{\"id\": \"rec1\", \"fields\": {\"Status\": \"Completed\", \"Priority\": \"High\"}}, {\"id\": \"rec2\", \"fields\": {\"Status\": \"In Progress\", \"Priority\": \"Medium\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAirtableBase", + "qualifiedName": "AirtableApi.CreateAirtableBase", + "fullyQualifiedName": "AirtableApi.CreateAirtableBase@4.0.0", + "description": "Create a new Airtable base with specified tables and schema.\n\nThis tool creates a new base in Airtable with the provided tables and returns the schema for the newly created base. At least one table and field must be specified, with fields having unique names within the table. A default grid view is created for each table.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["schema.bases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-base'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.CreateAirtableBase", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"New Base\",\"tables\":[{\"name\":\"Tasks\",\"fields\":[{\"name\":\"Task Name\",\"type\":\"singleLineText\"},{\"name\":\"Due Date\",\"type\":\"date\"}]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAirtableField", + "qualifiedName": "AirtableApi.CreateAirtableField", + "fullyQualifiedName": "AirtableApi.CreateAirtableField@4.0.0", + "description": "Creates a new column in an Airtable table and returns its schema.\n\n\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "airtable_base_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Airtable base containing the table. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "table_id", + "type": "string", + "required": false, + "description": "The unique identifier of the table where the new column will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["schema.bases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-field'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.CreateAirtableField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "airtable_base_id": { + "value": "app1234567890", + "type": "string", + "required": false + }, + "table_id": { + "value": "tbl9876543210", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Column\", \"type\": \"singleLineText\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAirtableRecords", + "qualifiedName": "AirtableApi.CreateAirtableRecords", + "fullyQualifiedName": "AirtableApi.CreateAirtableRecords@4.0.0", + "description": "Create multiple records in an Airtable base.\n\n Use this tool to create up to 10 records in a specified Airtable base and table. Utilize table IDs for stability, and include record objects with cell values. Returns a unique array of newly created record IDs if successful.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "base_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Airtable base where records will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the Airtable table where records will be created. Using the table ID is recommended for consistency. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["data.records:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-records'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.CreateAirtableRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "base_id": { + "value": "app123456789", + "type": "string", + "required": false + }, + "table_id_or_name": { + "value": "tbl987654321", + "type": "string", + "required": false + }, + "request_body": { + "value": "[{\"fields\": {\"Name\": \"John Doe\", \"Email\": \"john.doe@example.com\"}}, {\"fields\": {\"Name\": \"Jane Smith\", \"Email\": \"jane.smith@example.com\"}}, {\"fields\": {\"Name\": \"Alice Johnson\", \"Email\": \"alice.johnson@example.com\"}}]", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAirtableTable", + "qualifiedName": "AirtableApi.CreateAirtableTable", + "fullyQualifiedName": "AirtableApi.CreateAirtableTable@4.0.0", + "description": "Create a new table in Airtable and return its schema.\n\n This tool creates a new table in Airtable and provides the schema for the newly created table. At least one field must be specified, and fields must have unique, case-insensitive names within the table. The first field serves as the primary field. A default view with all fields visible is created.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "airtable_base_id", + "type": "string", + "required": false, + "description": "The identifier for the Airtable base where the table will be created. Must be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["schema.bases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-table'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.CreateAirtableTable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "airtable_base_id": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"fields\":[{\"name\":\"ID\",\"type\":\"number\"},{\"name\":\"Name\",\"type\":\"text\"},{\"name\":\"Created At\",\"type\":\"date\"}]}\"", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAirtableWebhook", + "qualifiedName": "AirtableApi.CreateAirtableWebhook", + "fullyQualifiedName": "AirtableApi.CreateAirtableWebhook@4.0.0", + "description": "Create a new webhook in a specified Airtable base.\n\n Use this tool to create a webhook in a specified Airtable base with the option to receive payload notifications. Note that webhooks are limited to 10 per base, and OAuth integrations can create up to 2. Webhooks expire in 7 days but can be refreshed if still active. Creator level permissions are required.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "base_id", + "type": "string", + "required": false, + "description": "The ID of the Airtable base where the webhook will be created. It should be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["webhook:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-a-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.CreateAirtableWebhook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "base_id": { + "value": "app1234567890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"url\": \"https://example.com/webhook\", \"events\": [\"create\", \"update\", \"delete\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAirtableWorkspace", + "qualifiedName": "AirtableApi.CreateAirtableWorkspace", + "fullyQualifiedName": "AirtableApi.CreateAirtableWorkspace@4.0.0", + "description": "Create a new workspace in Airtable.\n\nThis tool creates a new workspace in Airtable within a specified enterprise account. It returns the ID of the newly created workspace. The user must be an active admin of the enterprise account to successfully create the workspace.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-workspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.CreateAirtableWorkspace", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"New Workspace\", \"description\": \"Workspace for new projects\", \"admin_user_id\": \"user_12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAuditLogRequest", + "qualifiedName": "AirtableApi.CreateAuditLogRequest", + "fullyQualifiedName": "AirtableApi.CreateAuditLogRequest@4.0.0", + "description": "Initiate the creation of an audit log request.\n\n Starts the processing necessary to retrieve audit logs and returns an ID to track and download the logs later. For new cases, prefer using the audit log events API.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enterprise_account_id", + "type": "string", + "required": false, + "description": "The ID of the enterprise account for which the audit log is being requested. Necessary to initiate the log request process. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.auditLogs:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-audit-log-request'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.CreateAuditLogRequest", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enterprise_account_id": { + "value": "ent-ABC123XYZ", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"event_type\":\"user_login\",\"timestamp\":\"2023-10-01T12:34:56Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateDescendantEnterpriseAccount", + "qualifiedName": "AirtableApi.CreateDescendantEnterpriseAccount", + "fullyQualifiedName": "AirtableApi.CreateDescendantEnterpriseAccount@4.0.0", + "description": "Create a descendant enterprise account in Airtable.\n\n This tool creates a descendant enterprise (organizational unit) account under a root enterprise account in Airtable. It should be called when you need to organize accounts hierarchically within the Enterprise Hub. Ensure the root account supports descendant creation.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enterprise_account_id", + "type": "string", + "required": false, + "description": "The ID of the root enterprise account for which to create a descendant. This account must have Enterprise Hub enabled. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.account:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-descendant-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.CreateDescendantEnterpriseAccount", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enterprise_account_id": { + "value": "ent-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Descendant Account\", \"type\": \"sub_organization\", \"details\": {\"description\": \"This is a test descendant account.\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateEdiscoveryExport", + "qualifiedName": "AirtableApi.CreateEdiscoveryExport", + "fullyQualifiedName": "AirtableApi.CreateEdiscoveryExport@4.0.0", + "description": "Initiate an eDiscovery export request.\n\n Use this tool to create an eDiscovery export request in Airtable. It returns an ID to check the status and download the export.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enterprise_account_id", + "type": "string", + "required": false, + "description": "The unique identifier for the enterprise account. Required for creating an eDiscovery export. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.exports:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-ediscovery-export'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.CreateEdiscoveryExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enterprise_account_id": { + "value": "ent-12345678", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\":\"example@domain.com\",\"export_type\":\"full\",\"include_archived\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateScimGroup", + "qualifiedName": "AirtableApi.CreateScimGroup", + "fullyQualifiedName": "AirtableApi.CreateScimGroup@4.0.0", + "description": "Create a new SCIM group with no members.\n\nThis tool creates a new SCIM group without any members. It should be called when there's a need to set up a new group structure. To add members, use patch or put group endpoints.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.scim.usersAndGroups:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-scim-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.CreateScimGroup", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"displayName\":\"Example SCIM Group\",\"externalId\":\"example-scim-group-123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateScimUser", + "qualifiedName": "AirtableApi.CreateScimUser", + "fullyQualifiedName": "AirtableApi.CreateScimUser@4.0.0", + "description": "Create a new user using SCIM protocol.\n\nThis tool creates a new SCIM user, marking them as active and assigning an email matching the username. It's intended for SSO environments only. Beware of potential conflicts with existing non-enterprise users.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.scim.usersAndGroups:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-scim-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.CreateScimUser", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"schemas\":[\"urn:ietf:params:scim:schemas:core:2.0:User\"],\"userName\":\"john.doe@example.com\",\"active\":true,\"name\":{\"givenName\":\"John\",\"familyName\":\"Doe\"},\"emails\":[{\"value\":\"john.doe@example.com\",\"primary\":true}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAirtableBase", + "qualifiedName": "AirtableApi.DeleteAirtableBase", + "fullyQualifiedName": "AirtableApi.DeleteAirtableBase@4.0.0", + "description": "Delete a specified Airtable base.\n\nUse this tool to delete an Airtable base by specifying the base ID. Deleted bases can be restored by workspace owners within the retention period set by the billing plan.", + "parameters": [ + { + "name": "base_id", + "type": "string", + "required": true, + "description": "The unique identifier of the base you want to delete. This ID is required to perform the deletion.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-base'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteAirtableBase", + "parameters": { + "base_id": { + "value": "app1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAirtableBlockInstallation", + "qualifiedName": "AirtableApi.DeleteAirtableBlockInstallation", + "fullyQualifiedName": "AirtableApi.DeleteAirtableBlockInstallation@4.0.0", + "description": "Delete a block installation in Airtable, recoverable later.\n\nUse this tool when you need to delete a block installation from an Airtable base. The deletion is not permanent and can be recovered if needed.", + "parameters": [ + { + "name": "airtable_base_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Airtable base from which the block installation will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "block_installation_id", + "type": "string", + "required": true, + "description": "The unique identifier of the block installation to be deleted. This is required to specify which block installation to remove.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-block-installation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteAirtableBlockInstallation", + "parameters": { + "airtable_base_id": { + "value": "app1234567890abcdef", + "type": "string", + "required": true + }, + "block_installation_id": { + "value": "blk9876543210fedcba", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAirtableRecord", + "qualifiedName": "AirtableApi.DeleteAirtableRecord", + "fullyQualifiedName": "AirtableApi.DeleteAirtableRecord@4.0.0", + "description": "Deletes a single record from an Airtable base and table.\n\nUse this tool to delete a specific record from a specified table within an Airtable base by providing the base ID, table ID or name, and record ID.", + "parameters": [ + { + "name": "airtable_base_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Airtable base from which the record will be deleted. This ID is required to specify the correct base.", + "enum": null, + "inferrable": true + }, + { + "name": "record_id", + "type": "string", + "required": true, + "description": "The unique identifier of the record to be deleted from the specified table in Airtable.", + "enum": null, + "inferrable": true + }, + { + "name": "table_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the Airtable table from which the record should be deleted. This specifies which table within the base to target.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["data.records:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-record'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteAirtableRecord", + "parameters": { + "airtable_base_id": { + "value": "app1234567890", + "type": "string", + "required": true + }, + "record_id": { + "value": "rec0987654321", + "type": "string", + "required": true + }, + "table_identifier": { + "value": "tblABCDEFGHIJK", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAirtableShare", + "qualifiedName": "AirtableApi.DeleteAirtableShare", + "fullyQualifiedName": "AirtableApi.DeleteAirtableShare@4.0.0", + "description": "Permanently delete a share from an Airtable base.\n\nThis tool permanently deletes a share from an Airtable base. It should be used when you need to remove a share entirely, with no recovery option available.", + "parameters": [ + { + "name": "airtable_base_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Airtable base from which the share will be deleted. This value is required.", + "enum": null, + "inferrable": true + }, + { + "name": "share_id", + "type": "string", + "required": true, + "description": "The unique identifier of the share to delete from an Airtable base.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases.shares:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-share'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteAirtableShare", + "parameters": { + "airtable_base_id": { + "value": "app1234567890ABCDEF", + "type": "string", + "required": true + }, + "share_id": { + "value": "shrABCDEFGHIJKLMN", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAirtableView", + "qualifiedName": "AirtableApi.DeleteAirtableView", + "fullyQualifiedName": "AirtableApi.DeleteAirtableView@4.0.0", + "description": "Deletes a specific view in Airtable by ID.\n\nUse this tool to delete a specific view from an Airtable base. Provide the base ID and view ID to perform the deletion.", + "parameters": [ + { + "name": "airtable_base_id", + "type": "string", + "required": true, + "description": "The ID of the Airtable base from which the view will be deleted. Must be a valid string identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "view_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the Airtable view to delete. Required to specify which view to remove.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-view'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteAirtableView", + "parameters": { + "airtable_base_id": { + "value": "app1234567890", + "type": "string", + "required": true + }, + "view_identifier": { + "value": "viw0987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAirtableWebhook", + "qualifiedName": "AirtableApi.DeleteAirtableWebhook", + "fullyQualifiedName": "AirtableApi.DeleteAirtableWebhook@4.0.0", + "description": "Deletes a webhook in Airtable with required permissions.\n\nUse this tool to delete an existing webhook in Airtable. Requires creator level permissions to perform the action.", + "parameters": [ + { + "name": "airtable_base_id", + "type": "string", + "required": true, + "description": "The unique ID of the Airtable base where the webhook is to be deleted. This is required to specify the target base.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The unique identifier for the webhook to be deleted. This string is required to specify which webhook will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["webhook:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-a-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteAirtableWebhook", + "parameters": { + "airtable_base_id": { + "value": "app1234567890", + "type": "string", + "required": true + }, + "webhook_id": { + "value": "whk0987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBaseInvite", + "qualifiedName": "AirtableApi.DeleteBaseInvite", + "fullyQualifiedName": "AirtableApi.DeleteBaseInvite@4.0.0", + "description": "Delete an outstanding base invite.\n\nUse this tool to delete an outstanding base invite by specifying the base and invite IDs. It is useful for managing and revoking access invitations.", + "parameters": [ + { + "name": "base_id", + "type": "string", + "required": true, + "description": "The unique identifier of the base from which the invite should be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "invite_id", + "type": "string", + "required": true, + "description": "The unique identifier for the invite to be deleted. Ensure this is an outstanding invite.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-base-invite'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteBaseInvite", + "parameters": { + "base_id": { + "value": "app1234567890", + "type": "string", + "required": true + }, + "invite_id": { + "value": "invite0987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCommentFromRecord", + "qualifiedName": "AirtableApi.DeleteCommentFromRecord", + "fullyQualifiedName": "AirtableApi.DeleteCommentFromRecord@4.0.0", + "description": "Delete a comment from a record in Airtable.\n\nUse this tool to delete a specific comment from a record in Airtable. Non-admin users can only delete their own comments, while Enterprise Admins can delete any comment. Call this when you need to manage comments on records.", + "parameters": [ + { + "name": "airtable_base_id", + "type": "string", + "required": true, + "description": "The ID of the Airtable base. This is required to identify which base the comment belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_id_to_delete", + "type": "string", + "required": true, + "description": "The unique identifier of the comment to be deleted. Required for deletion.", + "enum": null, + "inferrable": true + }, + { + "name": "record_id", + "type": "string", + "required": true, + "description": "The unique identifier for the record from which the comment will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the table containing the record from which the comment will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["data.recordComments:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteCommentFromRecord", + "parameters": { + "airtable_base_id": { + "value": "app1234567890", + "type": "string", + "required": true + }, + "comment_id_to_delete": { + "value": "comment123456", + "type": "string", + "required": true + }, + "record_id": { + "value": "rec0987654321", + "type": "string", + "required": true + }, + "table_id_or_name": { + "value": "tblABCDEFGHIJ", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteEnterpriseUser", + "qualifiedName": "AirtableApi.DeleteEnterpriseUser", + "fullyQualifiedName": "AirtableApi.DeleteEnterpriseUser@4.0.0", + "description": "Deletes an enterprise user by ID.\n\nUse this tool to delete users from an enterprise account, including both internal and managed users. Provide the specific enterprise account ID and user ID for successful deletion.", + "parameters": [ + { + "name": "enterprise_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the enterprise account containing the user to be deleted. This is required for specifying the account context of the user.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier of the user to be deleted from the enterprise account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.user:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-user-by-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteEnterpriseUser", + "parameters": { + "enterprise_account_id": { + "value": "acct_123456789", + "type": "string", + "required": true + }, + "user_id": { + "value": "user_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteInterfaceInvite", + "qualifiedName": "AirtableApi.DeleteInterfaceInvite", + "fullyQualifiedName": "AirtableApi.DeleteInterfaceInvite@4.0.0", + "description": "Delete an outstanding interface invite in Airtable.\n\nDelete an interface invite that is still outstanding in Airtable using the specified base ID, interface ID, and invite ID.", + "parameters": [ + { + "name": "base_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Airtable base from which the invite will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "invite_id", + "type": "string", + "required": true, + "description": "The identifier of the outstanding interface invite to be deleted. Must be a valid string representing the invite ID.", + "enum": null, + "inferrable": true + }, + { + "name": "page_bundle_id", + "type": "string", + "required": true, + "description": "The unique ID of the interface page bundle to identify which interface's invite to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-interface-invite'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteInterfaceInvite", + "parameters": { + "base_identifier": { + "value": "app1234567890", + "type": "string", + "required": true + }, + "invite_id": { + "value": "inv9876543210", + "type": "string", + "required": true + }, + "page_bundle_id": { + "value": "bundle0011223344", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMultipleRecords", + "qualifiedName": "AirtableApi.DeleteMultipleRecords", + "fullyQualifiedName": "AirtableApi.DeleteMultipleRecords@4.0.0", + "description": "Delete multiple records from an Airtable table.\n\nUse this tool to delete multiple records in an Airtable table by providing an array of record IDs. It's useful for batch operations where several entries need to be removed simultaneously.", + "parameters": [ + { + "name": "base_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Airtable base containing the records to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "table_identifier", + "type": "string", + "required": true, + "description": "The unique identifier or name of the Airtable table from which records are to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "record_ids_to_delete", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of record IDs to delete from the table. Each ID should be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["data.records:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-multiple-records'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteMultipleRecords", + "parameters": { + "base_id": { + "value": "app1234567890", + "type": "string", + "required": true + }, + "table_identifier": { + "value": "Table 1", + "type": "string", + "required": true + }, + "record_ids_to_delete": { + "value": ["recA1B2C3D4E5F6", "recG7H8I9J0K1L2M3"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteRecordsByPrimaryKeys", + "qualifiedName": "AirtableApi.DeleteRecordsByPrimaryKeys", + "fullyQualifiedName": "AirtableApi.DeleteRecordsByPrimaryKeys@4.0.0", + "description": "Delete records from a HyperDB table using primary keys.\n\n Use this tool to delete records from a HyperDB table by providing the primary keys. It should be called when you need to remove entries from the table based on specific key matches.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enterprise_account_id", + "type": "string", + "required": false, + "description": "The unique identifier for the enterprise account. Required to access the correct HyperDB table. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "data_table_id", + "type": "string", + "required": false, + "description": "The unique identifier for the target HyperDB table from which records will be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["hyperDB.records:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hyperdb-delete-records-by-primary-keys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteRecordsByPrimaryKeys", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enterprise_account_id": { + "value": "ent_1234567890", + "type": "string", + "required": false + }, + "data_table_id": { + "value": "tbl_9876543210", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"primaryKeys\":[\"rec_abc123\",\"rec_def456\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteScimGroup", + "qualifiedName": "AirtableApi.DeleteScimGroup", + "fullyQualifiedName": "AirtableApi.DeleteScimGroup@4.0.0", + "description": "Delete a SCIM Group from Airtable.\n\nThis tool deletes a specified SCIM Group in Airtable, useful for managing group memberships and access control.", + "parameters": [ + { + "name": "group_id", + "type": "string", + "required": true, + "description": "The unique identifier of the SCIM Group to be deleted from Airtable.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.scim.usersAndGroups:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-scim-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteScimGroup", + "parameters": { + "group_id": { + "value": "scim-group-1234", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteScimUser", + "qualifiedName": "AirtableApi.DeleteScimUser", + "fullyQualifiedName": "AirtableApi.DeleteScimUser@4.0.0", + "description": "Delete a SCIM user from the system.\n\nThe tool deletes a single SCIM user, except the admin owning the token or the sole owner of a multi-collaborator workspace. Refer to the SCIM specification for more details.", + "parameters": [ + { + "name": "scim_user_id", + "type": "string", + "required": true, + "description": "Unique identifier for the SCIM user to delete. Cannot be the admin using the authentication token or the sole owner of a multi-collaborator workspace.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.scim.usersAndGroups:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-scim-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteScimUser", + "parameters": { + "scim_user_id": { + "value": "user-123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteUsersByEmail", + "qualifiedName": "AirtableApi.DeleteUsersByEmail", + "fullyQualifiedName": "AirtableApi.DeleteUsersByEmail@4.0.0", + "description": "Delete multiple users identified by their email addresses.\n\nThis tool deletes multiple users by their email addresses within a specified enterprise account. Use it when you need to remove several users efficiently.", + "parameters": [ + { + "name": "enterprise_account_id", + "type": "string", + "required": true, + "description": "The unique ID of the enterprise account from which users will be deleted. Required for specifying the target enterprise.", + "enum": null, + "inferrable": true + }, + { + "name": "email_addresses", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of email addresses of users to be deleted. Each email must be a valid string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.user:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-users-by-email'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteUsersByEmail", + "parameters": { + "enterprise_account_id": { + "value": "ent-1234567890", + "type": "string", + "required": true + }, + "email_addresses": { + "value": [ + "user1@example.com", + "user2@example.com", + "user3@example.com" + ], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteWorkspace", + "qualifiedName": "AirtableApi.DeleteWorkspace", + "fullyQualifiedName": "AirtableApi.DeleteWorkspace@4.0.0", + "description": "Deletes a specified Airtable workspace.\n\nUse this tool to delete a specific Airtable workspace. Ensure there are no important bases in the workspace before deletion or transfer them to another workspace. Deleted workspaces can be restored within the retention period from the Trash UI if the user is the workspace owner.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The unique identifier of the workspace to delete. Ensure no important data is lost before proceeding.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-workspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteWorkspace", + "parameters": { + "workspace_id": { + "value": "wrk123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteWorkspaceInvite", + "qualifiedName": "AirtableApi.DeleteWorkspaceInvite", + "fullyQualifiedName": "AirtableApi.DeleteWorkspaceInvite@4.0.0", + "description": "Delete a workspace invite.\n\nUse this tool to delete an invitation to a workspace by specifying the workspace and invite IDs. This is useful for revoking access that has been granted but not yet accepted.", + "parameters": [ + { + "name": "invite_id", + "type": "string", + "required": true, + "description": "The unique identifier of the workspace invite to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The ID of the workspace from which the invite will be deleted. This is required to specify which workspace's invite is being revoked.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-workspace-invite'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.DeleteWorkspaceInvite", + "parameters": { + "invite_id": { + "value": "inv123456789", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "wk987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ExtendWebhookExpiration", + "qualifiedName": "AirtableApi.ExtendWebhookExpiration", + "fullyQualifiedName": "AirtableApi.ExtendWebhookExpiration@4.0.0", + "description": "Extend the expiration time of an active webhook.\n\nUse this tool to extend the life of an active webhook in Airtable by 7 days. Requires Creator level permissions and applies only to active webhooks with an expiration time.", + "parameters": [ + { + "name": "airtable_base_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Airtable base containing the webhook. Required for extending the webhook's expiration.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_identifier", + "type": "string", + "required": true, + "description": "The ID of the webhook to extend. This must be a string representing the specific webhook you wish to refresh.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["webhook:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'refresh-a-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ExtendWebhookExpiration", + "parameters": { + "airtable_base_id": { + "value": "app1234567890", + "type": "string", + "required": true + }, + "webhook_identifier": { + "value": "key9876543210", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchScimGroup", + "qualifiedName": "AirtableApi.FetchScimGroup", + "fullyQualifiedName": "AirtableApi.FetchScimGroup@4.0.0", + "description": "Retrieve details of a specific SCIM Group by ID.\n\nThis tool retrieves details of a specific group as a SCIM Group object using the group's ID. It should be called when there's a need to access or display information about a specific group managed within the SCIM system.", + "parameters": [ + { + "name": "scim_group_id", + "type": "string", + "required": true, + "description": "The unique identifier of the SCIM Group to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.scim.usersAndGroups:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-scim-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.FetchScimGroup", + "parameters": { + "scim_group_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAirtableBaseSchema", + "qualifiedName": "AirtableApi.GetAirtableBaseSchema", + "fullyQualifiedName": "AirtableApi.GetAirtableBaseSchema@4.0.0", + "description": "Retrieve the schema of tables in an Airtable base.\n\nUse this tool to get the schema details of all tables within a specific Airtable base. It is useful for understanding the structure and fields of the tables in the specified base.", + "parameters": [ + { + "name": "airtable_base_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Airtable base whose schema is being requested. This ID can be found in the URL of the base when accessed in Airtable.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of specific fields to include in the schema response. Each field should be a string representing the field name.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["schema.bases:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-base-schema'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetAirtableBaseSchema", + "parameters": { + "airtable_base_id": { + "value": "app1234567890", + "type": "string", + "required": true + }, + "fields_to_include": { + "value": ["Name", "Email", "Phone"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAirtableChangeEvents", + "qualifiedName": "AirtableApi.GetAirtableChangeEvents", + "fullyQualifiedName": "AirtableApi.GetAirtableChangeEvents@4.0.0", + "description": "Retrieve change events for Airtable enterprise bases.\n\nUse this tool to get change events for enterprise bases in Airtable. These events are accessible for 14 days and require change event features to be enabled in your account settings.", + "parameters": [ + { + "name": "enterprise_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the enterprise account. This ID is required to retrieve the change events specific to the account.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time", + "type": "string", + "required": false, + "description": "The end time for retrieving change events in ISO 8601 format (e.g., '2023-01-01T23:59:59Z').", + "enum": null, + "inferrable": true + }, + { + "name": "page_size_limit", + "type": "number", + "required": false, + "description": "Specifies the maximum number of change events returned in a single request. Use a number to limit the size.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "String used to specify the starting point for the next page of results. Useful for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time", + "type": "string", + "required": false, + "description": "The starting timestamp for retrieving change events. Format is ISO 8601 (e.g., '2023-10-05T12:00:00Z').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.changeEvents:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'change-events'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetAirtableChangeEvents", + "parameters": { + "enterprise_account_id": { + "value": "e1234567890", + "type": "string", + "required": true + }, + "end_time": { + "value": "2023-10-05T23:59:59Z", + "type": "string", + "required": false + }, + "page_size_limit": { + "value": 100, + "type": "integer", + "required": false + }, + "pagination_offset": { + "value": "page_2_offset", + "type": "string", + "required": false + }, + "start_time": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAirtableUserInfo", + "qualifiedName": "AirtableApi.GetAirtableUserInfo", + "fullyQualifiedName": "AirtableApi.GetAirtableUserInfo@4.0.0", + "description": "Fetch user details from Airtable by ID or email.\n\nUse this tool to retrieve basic information for internal or external Airtable users based on their ID or email address.", + "parameters": [ + { + "name": "enterprise_account_id", + "type": "string", + "required": true, + "description": "The ID of the enterprise account associated with the user. Used to target specific enterprise-level user data.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify fields to include in the response. Provide an array of field names (strings).", + "enum": null, + "inferrable": true + }, + { + "name": "user_emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of user email addresses to fetch information for. Provide one or more email strings.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of user IDs to fetch details for. Each ID should be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.user:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-users-by-id-or-email'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetAirtableUserInfo", + "parameters": { + "enterprise_account_id": { + "value": "eabc123456", + "type": "string", + "required": true + }, + "include_fields": { + "value": ["email", "name", "role"], + "type": "array", + "required": false + }, + "user_emails": { + "value": ["user1@example.com", "user2@example.com"], + "type": "array", + "required": false + }, + "user_ids": { + "value": ["usr_123", "usr_456"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAirtableViewMetadata", + "qualifiedName": "AirtableApi.GetAirtableViewMetadata", + "fullyQualifiedName": "AirtableApi.GetAirtableViewMetadata@4.0.0", + "description": "Get basic information about an Airtable base view.\n\nUse this tool to obtain metadata for a specific view within an Airtable base, including details like name and structure. Ideal for retrieving details necessary to understand the view's configuration.", + "parameters": [ + { + "name": "base_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the Airtable base. This is required to retrieve view metadata.", + "enum": null, + "inferrable": true + }, + { + "name": "view_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the Airtable view. Used to specify which view's metadata to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of field names to include in the view metadata response. Specify specific fields if required.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-view-metadata'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetAirtableViewMetadata", + "parameters": { + "base_identifier": { + "value": "app1234567890abcdef", + "type": "string", + "required": true + }, + "view_identifier": { + "value": "viw0987654321abcdef", + "type": "string", + "required": true + }, + "include_fields": { + "value": ["Name", "Description", "CreatedAt"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAuditLogEvents", + "qualifiedName": "AirtableApi.GetAuditLogEvents", + "fullyQualifiedName": "AirtableApi.GetAuditLogEvents@4.0.0", + "description": "Retrieve audit log events for an enterprise.\n\nUse this tool to get audit log events related to an enterprise account. It provides access to historical and ongoing log data to track activities and changes.", + "parameters": [ + { + "name": "enterprise_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the enterprise account to retrieve audit log events for.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time", + "type": "string", + "required": false, + "description": "The end time for retrieving audit log events. The format is ISO 8601 (e.g., '2023-10-15T10:00:00Z').", + "enum": null, + "inferrable": true + }, + { + "name": "event_category", + "type": "string", + "required": false, + "description": "Filter audit log events by specific categories. Accepts string values like 'security', 'compliance', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "event_type", + "type": "string", + "required": false, + "description": "Specify the type of event to filter the audit logs. Use a string representing the event category.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_originating_user_id", + "type": "string", + "required": false, + "description": "Filter audit log events by the ID of the originating user.", + "enum": null, + "inferrable": true + }, + { + "name": "model_identifier", + "type": "string", + "required": false, + "description": "A string that specifies the model ID related to the audit log event.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "Token to retrieve the next page of results when paginating through a large set of audit log events.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "number", + "required": false, + "description": "Number of log events to retrieve per page. It determines the size of the data fetched in a single API call.", + "enum": null, + "inferrable": true + }, + { + "name": "previous_event_marker", + "type": "string", + "required": false, + "description": "A string marker to paginate backwards through audit log events, indicating the last event seen.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Defines the order in which results are sorted. Use 'ascending' or 'descending'.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time", + "type": "string", + "required": false, + "description": "Specify the starting point for retrieving audit logs. Use ISO 8601 format (e.g., '2023-01-01T00:00:00Z').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.auditLogs:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'audit-log-events'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetAuditLogEvents", + "parameters": { + "enterprise_account_id": { + "value": "1234567890abcdefg", + "type": "string", + "required": true + }, + "end_time": { + "value": "2023-10-15T10:00:00Z", + "type": "string", + "required": false + }, + "event_category": { + "value": "security", + "type": "string", + "required": false + }, + "event_type": { + "value": "user_login", + "type": "string", + "required": false + }, + "filter_by_originating_user_id": { + "value": "user_9876543210", + "type": "string", + "required": false + }, + "model_identifier": { + "value": "model_abcdef1234", + "type": "string", + "required": false + }, + "next_page_token": { + "value": "token_123456", + "type": "string", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "previous_event_marker": { + "value": "marker_abcdef", + "type": "string", + "required": false + }, + "sort_order": { + "value": "descending", + "type": "string", + "required": false + }, + "start_time": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBaseCollaborators", + "qualifiedName": "AirtableApi.GetBaseCollaborators", + "fullyQualifiedName": "AirtableApi.GetBaseCollaborators@4.0.0", + "description": "Retrieve information on base collaborators.\n\nFetches details about active collaborators and outstanding invites for a specified Airtable base, excluding deleted users.", + "parameters": [ + { + "name": "base_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Airtable base to fetch collaborators from. This is a required string value.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to include in the response. Specify as an array of strings such as ['email', 'name'].", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-base-collaborators'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetBaseCollaborators", + "parameters": { + "base_id": { + "value": "app1234567890", + "type": "string", + "required": true + }, + "fields_to_include": { + "value": ["email", "name"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEdiscoveryExportsStatus", + "qualifiedName": "AirtableApi.GetEdiscoveryExportsStatus", + "fullyQualifiedName": "AirtableApi.GetEdiscoveryExportsStatus@4.0.0", + "description": "Retrieve status and results of all eDiscovery exports.\n\nUse this tool to get the current status and results for all eDiscovery exports within an enterprise account.", + "parameters": [ + { + "name": "enterprise_account_id", + "type": "string", + "required": true, + "description": "The ID of the enterprise account for which to retrieve eDiscovery export status and results.", + "enum": null, + "inferrable": true + }, + { + "name": "ediscovery_export_state", + "type": "string", + "required": false, + "description": "Filter exports by state: 'pending', 'processing', 'error', or 'done'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "number", + "required": false, + "description": "The number of records to skip for pagination. Useful for accessing data beyond initial pages.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_size", + "type": "number", + "required": false, + "description": "Specify the number of eDiscovery export results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.exports:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-ediscovery-export'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetEdiscoveryExportsStatus", + "parameters": { + "enterprise_account_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "ediscovery_export_state": { + "value": "processing", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "result_page_size": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEdiscoveryExportStatus", + "qualifiedName": "AirtableApi.GetEdiscoveryExportStatus", + "fullyQualifiedName": "AirtableApi.GetEdiscoveryExportStatus@4.0.0", + "description": "Retrieve the status and result of an eDiscovery export.\n\nUse this tool to check the status and obtain results of an eDiscovery export for a specific enterprise account.", + "parameters": [ + { + "name": "enterprise_account_id", + "type": "string", + "required": true, + "description": "The ID of the enterprise account for which to retrieve the eDiscovery export status and results.", + "enum": null, + "inferrable": true + }, + { + "name": "enterprise_task_id", + "type": "string", + "required": true, + "description": "The unique identifier for the eDiscovery export task. Required to check the status and get results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.exports:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-ediscovery-export'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetEdiscoveryExportStatus", + "parameters": { + "enterprise_account_id": { + "value": "acct_123456789", + "type": "string", + "required": true + }, + "enterprise_task_id": { + "value": "task_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEnterpriseInfo", + "qualifiedName": "AirtableApi.GetEnterpriseInfo", + "fullyQualifiedName": "AirtableApi.GetEnterpriseInfo@4.0.0", + "description": "Retrieve basic information about an enterprise account.\n\nThis tool returns fundamental details regarding a specified enterprise account, which can be useful for understanding account characteristics and status.", + "parameters": [ + { + "name": "enterprise_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the target enterprise account. This is required to fetch the relevant account information.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify an array of field names as strings to include in the response. Leaving this empty includes all default fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.account:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetEnterpriseInfo", + "parameters": { + "enterprise_account_id": { + "value": "e1234567890", + "type": "string", + "required": true + }, + "fields_to_include": { + "value": ["name", "status", "created_time"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetInterfaceInfo", + "qualifiedName": "AirtableApi.GetInterfaceInfo", + "fullyQualifiedName": "AirtableApi.GetInterfaceInfo@4.0.0", + "description": "Retrieve information about a specified interface.\n\nThis tool fetches general details about a specified Airtable interface, excluding any deleted collaborators and including only outstanding invites. Use it when you need to access interface information via the interface ID (`pageBundleId`).", + "parameters": [ + { + "name": "airtable_base_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Airtable base. This ID specifies which base the interface information belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "interface_id", + "type": "string", + "required": true, + "description": "The ID of the Airtable interface to retrieve information for. This is found in the `interfaces` object from the `get base collaborators` endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "include_elements", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify elements to include in the response. Provide as an array of strings representing the element names or IDs.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-interface'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetInterfaceInfo", + "parameters": { + "airtable_base_id": { + "value": "app1234567890abcdef", + "type": "string", + "required": true + }, + "interface_id": { + "value": "int1234567890abcdef", + "type": "string", + "required": true + }, + "include_elements": { + "value": ["element1", "element2", "element3"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRecordComments", + "qualifiedName": "AirtableApi.GetRecordComments", + "fullyQualifiedName": "AirtableApi.GetRecordComments@4.0.0", + "description": "Retrieve comments for a specific record in Airtable.\n\nUse this tool to get a list of comments for a record in Airtable, ordered from newest to oldest. This can be useful for tracking discussions or updates related to a specific record.", + "parameters": [ + { + "name": "base_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Airtable base containing the record.", + "enum": null, + "inferrable": true + }, + { + "name": "record_id", + "type": "string", + "required": true, + "description": "Unique identifier for the record in Airtable whose comments are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "table_identifier", + "type": "string", + "required": true, + "description": "The unique ID or name of the table containing the record. Specify either the ID or name to locate the table.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "A string used for pagination to fetch the next set of comments. Generally returned from a previous API call.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_size", + "type": "number", + "required": false, + "description": "Number of comments to return per page. Useful for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["data.recordComments:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-comments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetRecordComments", + "parameters": { + "base_id": { + "value": "app1234567890", + "type": "string", + "required": true + }, + "record_id": { + "value": "rec0987654321", + "type": "string", + "required": true + }, + "table_identifier": { + "value": "Table 1", + "type": "string", + "required": true + }, + "pagination_offset": { + "value": null, + "type": "string", + "required": false + }, + "results_page_size": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetScimUser", + "qualifiedName": "AirtableApi.GetScimUser", + "fullyQualifiedName": "AirtableApi.GetScimUser@4.0.0", + "description": "Get details of a single SCIM User by userId.\n\nUse this tool to retrieve information about a specific user as a SCIM User object, using their unique userId.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier of the SCIM User to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.scim.usersAndGroups:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-scim-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetScimUser", + "parameters": { + "user_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserGroupInfo", + "qualifiedName": "AirtableApi.GetUserGroupInfo", + "fullyQualifiedName": "AirtableApi.GetUserGroupInfo@4.0.0", + "description": "Retrieve basic information about a specific user group.\n\nUse this tool to obtain key details for a specific user group by providing the group ID. It is useful when you need to display or process user group information.", + "parameters": [ + { + "name": "user_group_id", + "type": "string", + "required": true, + "description": "Provide the identifier for the user group to retrieve its basic information.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_info", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings specifying additional data to be included in the response, such as 'members' or 'permissions'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.groups:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-user-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetUserGroupInfo", + "parameters": { + "user_group_id": { + "value": "ug_12345", + "type": "string", + "required": true + }, + "include_additional_info": { + "value": ["members", "permissions"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserInformation", + "qualifiedName": "AirtableApi.GetUserInformation", + "fullyQualifiedName": "AirtableApi.GetUserInformation@4.0.0", + "description": "Fetch user information by ID from Airtable Enterprise.\n\nUse this tool to retrieve basic information for an internal or external user in an Airtable Enterprise account by providing the user's ID.", + "parameters": [ + { + "name": "enterprise_account_id", + "type": "string", + "required": true, + "description": "The ID of the Airtable Enterprise account associated with the user. This is required to fetch user data.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier for the user whose information is to be retrieved. Provide the user ID as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify the list of fields to include in the user information response. Provide as an array of field names.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.user:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-user-by-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetUserInformation", + "parameters": { + "enterprise_account_id": { + "value": "ent12345abcde", + "type": "string", + "required": true + }, + "user_id": { + "value": "user56789xyz", + "type": "string", + "required": true + }, + "include_fields": { + "value": ["email", "full_name", "role"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceCollaborators", + "qualifiedName": "AirtableApi.GetWorkspaceCollaborators", + "fullyQualifiedName": "AirtableApi.GetWorkspaceCollaborators@4.0.0", + "description": "Retrieve information about workspace collaborators and invites.\n\nThis tool retrieves basic information about collaborators in a specific workspace, excluding deleted collaborators and including only outstanding invites. Useful for managing or reviewing current workspace memberships and pending invitations.", + "parameters": [ + { + "name": "workspace_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the workspace to retrieve collaborators and outstanding invites for. Provide the ID as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_information", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of additional fields to include in the response. Specify field names as strings, like 'email' or 'role'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-workspace-collaborators'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GetWorkspaceCollaborators", + "parameters": { + "workspace_identifier": { + "value": "workspace_123456", + "type": "string", + "required": true + }, + "include_additional_information": { + "value": ["email", "role"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GrantAdminAccess", + "qualifiedName": "AirtableApi.GrantAdminAccess", + "fullyQualifiedName": "AirtableApi.GrantAdminAccess@4.0.0", + "description": "Grant admin access to specified users.\n\n This tool grants admin access to users via their ID or email. It should be called when an admin needs to grant elevated privileges to users on an enterprise account. If both ID and email are provided, email is ignored. The result includes successful grants and any errors encountered.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enterprise_account_id", + "type": "string", + "required": false, + "description": "The ID of the enterprise account to which admin access will be granted. Required for processing the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.user:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'grant-admin-access'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.GrantAdminAccess", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enterprise_account_id": { + "value": "ent123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"users\":[{\"id\":\"user1\",\"email\":\"user1@example.com\"},{\"id\":\"user2\",\"email\":\"user2@example.com\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAirtableBases", + "qualifiedName": "AirtableApi.ListAirtableBases", + "fullyQualifiedName": "AirtableApi.ListAirtableBases@4.0.0", + "description": "Retrieve a list of accessible Airtable bases.\n\nUse this tool to obtain a list of Airtable bases that the token has access to. The tool returns up to 1000 bases at a time, along with pagination information if more results are available.", + "parameters": [ + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "A string token to fetch the next set of Airtable bases if more results are available. Use the token from the last response to continue pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["schema.bases:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-bases'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ListAirtableBases", + "parameters": { + "pagination_offset": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAirtableBaseViews", + "qualifiedName": "AirtableApi.ListAirtableBaseViews", + "fullyQualifiedName": "AirtableApi.ListAirtableBaseViews@4.0.0", + "description": "Retrieve information on Airtable base views.\n\nThis tool is used to obtain basic information about the views within a specified Airtable base. It should be called when you need details about the different views available in a particular base in Airtable.", + "parameters": [ + { + "name": "airtable_base_id", + "type": "string", + "required": true, + "description": "The ID of the Airtable base for which you want to list views.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of specific fields to include in the response. It filters the fields returned for each view.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-views'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ListAirtableBaseViews", + "parameters": { + "airtable_base_id": { + "value": "app1234567890", + "type": "string", + "required": true + }, + "fields_to_include": { + "value": ["name", "type", "createdTime"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAirtableRecords", + "qualifiedName": "AirtableApi.ListAirtableRecords", + "fullyQualifiedName": "AirtableApi.ListAirtableRecords@4.0.0", + "description": "Retrieve records from a specified Airtable table.\n\nThis tool retrieves records from a specified table in Airtable, supporting pagination and filtering options. Use table IDs to avoid modifying requests when table names change. Supports offset for pagination and maxRecords to limit the results.", + "parameters": [ + { + "name": "base_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Airtable base where the table is located.", + "enum": null, + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Airtable table to retrieve records from. Using table IDs is recommended for consistency.", + "enum": null, + "inferrable": true + }, + { + "name": "cell_format_method", + "type": "string", + "required": false, + "description": "Defines how cell values are returned. Specify 'json' for unformatted or 'string' for formatted values.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_formula", + "type": "string", + "required": false, + "description": "A formula string to filter records. Use Airtable's formula syntax where functions and operators will be applied to fields.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_records", + "type": "number", + "required": false, + "description": "Specify the maximum number of records to retrieve from the Airtable table.", + "enum": null, + "inferrable": true + }, + { + "name": "output_time_zone", + "type": "string", + "required": false, + "description": "Specifies the time zone for datetimes returned in records. Use IANA time zone format (e.g., 'America/Los_Angeles').", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "number", + "required": false, + "description": "Number of records per page to fetch. Default is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "A string used for pagination to fetch the next set of records. Use the offset provided in the previous response to continue retrieving records.", + "enum": null, + "inferrable": true + }, + { + "name": "record_metadata_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings specifying which metadata fields to include for each record.", + "enum": null, + "inferrable": true + }, + { + "name": "return_fields_by_field_id", + "type": "boolean", + "required": false, + "description": "Return fields by their field ID instead of field name when set to true.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specifies the order of records. Use a JSON string with fields and directions (asc or desc).", + "enum": null, + "inferrable": true + }, + { + "name": "specific_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of field names to be included in the response. If omitted, all fields are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "specified_view", + "type": "string", + "required": false, + "description": "Specifies the view in the table to be used for record retrieval. Provide the name or ID of the view.", + "enum": null, + "inferrable": true + }, + { + "name": "user_locale", + "type": "string", + "required": false, + "description": "Specify the user locale to determine the language and regional settings for the records.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["data.records:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-records'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ListAirtableRecords", + "parameters": { + "base_id": { + "value": "app1234567890", + "type": "string", + "required": true + }, + "table_id_or_name": { + "value": "tbl9876543210", + "type": "string", + "required": true + }, + "cell_format_method": { + "value": "json", + "type": "string", + "required": false + }, + "filter_by_formula": { + "value": "{Status} = 'Active'", + "type": "string", + "required": false + }, + "maximum_records": { + "value": 50, + "type": "integer", + "required": false + }, + "output_time_zone": { + "value": "America/New_York", + "type": "string", + "required": false + }, + "page_size": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_offset": { + "value": "offset12345", + "type": "string", + "required": false + }, + "record_metadata_fields": { + "value": ["createdTime", "lastModifiedTime"], + "type": "array", + "required": false + }, + "return_fields_by_field_id": { + "value": true, + "type": "boolean", + "required": false + }, + "sort_order": { + "value": "{\"Field\":\"Name\",\"Direction\":\"asc\"}", + "type": "string", + "required": false + }, + "specific_fields": { + "value": "Name,Status,CreatedAt", + "type": "string", + "required": false + }, + "specified_view": { + "value": "GridView", + "type": "string", + "required": false + }, + "user_locale": { + "value": "en-US", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListBaseBlockInstallations", + "qualifiedName": "AirtableApi.ListBaseBlockInstallations", + "fullyQualifiedName": "AirtableApi.ListBaseBlockInstallations@4.0.0", + "description": "Retrieve basic info of block installations for a specific base.\n\nUse this tool to get a list of block installations within a specified base in Airtable. It provides basic information about each block installation, useful for managing and understanding block deployments in a base.", + "parameters": [ + { + "name": "base_id", + "type": "string", + "required": true, + "description": "The unique identifier for a specific Airtable base to retrieve block installations from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-block-installations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ListBaseBlockInstallations", + "parameters": { + "base_id": { + "value": "app1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListBaseShares", + "qualifiedName": "AirtableApi.ListBaseShares", + "fullyQualifiedName": "AirtableApi.ListBaseShares@4.0.0", + "description": "Lists basic information of base shares.\n\nCall this tool to retrieve a list of shared base information for a given base in Airtable.", + "parameters": [ + { + "name": "base_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the Airtable base to list shares for. Required to retrieve base share information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases.shares:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-shares'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ListBaseShares", + "parameters": { + "base_identifier": { + "value": "app1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListScimGroups", + "qualifiedName": "AirtableApi.ListScimGroups", + "fullyQualifiedName": "AirtableApi.ListScimGroups@4.0.0", + "description": "Retrieve a list of SCIM groups from Airtable.\n\nThis tool calls Airtable's API to retrieve a list of groups formatted as SCIM Group objects. It should be used when you need to obtain detailed group information in compliance with the SCIM specification.", + "parameters": [ + { + "name": "filter_criteria", + "type": "string", + "required": false, + "description": "Defines a string-based filter to query specific SCIM groups in Airtable. Use SCIM filtering syntax to specify criteria.", + "enum": null, + "inferrable": true + }, + { + "name": "group_count", + "type": "number", + "required": false, + "description": "Specify the maximum number of SCIM groups to list. It is an integer that determines how many groups the API should return.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.scim.usersAndGroups:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-scim-groups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ListScimGroups", + "parameters": { + "filter_criteria": { + "value": "displayName eq 'Admins'", + "type": "string", + "required": false + }, + "group_count": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListScimUsers", + "qualifiedName": "AirtableApi.ListScimUsers", + "fullyQualifiedName": "AirtableApi.ListScimUsers@4.0.0", + "description": "Retrieve a list of SCIM users from Airtable.\n\nUse this tool to get a list of users represented as SCIM User objects, following the SCIM specification for list responses.", + "parameters": [ + { + "name": "start_index", + "type": "number", + "required": false, + "description": "The starting index for the list of SCIM users to retrieve. Use a positive integer to specify where to start listing from.", + "enum": null, + "inferrable": true + }, + { + "name": "user_count_limit", + "type": "number", + "required": false, + "description": "The maximum number of SCIM user objects to return in the response. This should be a positive integer.", + "enum": null, + "inferrable": true + }, + { + "name": "user_filter", + "type": "string", + "required": false, + "description": "Apply a filter string to narrow down the list of SCIM users. Uses SCIM standard filtering syntax.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.scim.usersAndGroups:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-scim-users'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ListScimUsers", + "parameters": { + "start_index": { + "value": 1, + "type": "integer", + "required": false + }, + "user_count_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "user_filter": { + "value": "userName eq \"jdoe\"", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWebhookPayloads", + "qualifiedName": "AirtableApi.ListWebhookPayloads", + "fullyQualifiedName": "AirtableApi.ListWebhookPayloads@4.0.0", + "description": "Retrieve update messages for a specified Airtable webhook.\n\nThis tool retrieves the update messages that a client can consume for a specific webhook. It should be called after a webhook ping is received. Using this tool will also extend the webhook's expiration by setting it to 7 days from the call.", + "parameters": [ + { + "name": "base_id", + "type": "string", + "required": true, + "description": "Identifier for the Airtable base from which to list webhook payloads.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The unique identifier for the webhook to retrieve update messages. This should be a string and should match the webhook set up in Airtable.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_number_of_messages", + "type": "number", + "required": false, + "description": "The maximum number of update messages to retrieve for the webhook.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "number", + "required": false, + "description": "A numerical position indicating where to begin retrieving messages from the webhook payload list. Use this for pagination to continue from a previous list retrieval.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-webhook-payloads'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ListWebhookPayloads", + "parameters": { + "base_id": { + "value": "app123456789", + "type": "string", + "required": true + }, + "webhook_id": { + "value": "whk987654321", + "type": "string", + "required": true + }, + "maximum_number_of_messages": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWebhooksForBase", + "qualifiedName": "AirtableApi.ListWebhooksForBase", + "fullyQualifiedName": "AirtableApi.ListWebhooksForBase@4.0.0", + "description": "Retrieve registered webhooks and their statuses for a base.\n\nUse this tool to list all webhooks registered for a specific base, including their statuses. Requires read-level permissions.", + "parameters": [ + { + "name": "base_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the base whose webhooks you want to list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["webhook:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-webhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ListWebhooksForBase", + "parameters": { + "base_identifier": { + "value": "app1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "LogoutUserEnterpriseAccount", + "qualifiedName": "AirtableApi.LogoutUserEnterpriseAccount", + "fullyQualifiedName": "AirtableApi.LogoutUserEnterpriseAccount@4.0.0", + "description": "Logs out an enterprise account user.\n\nThis tool logs out a user from an enterprise account. Applicable for ELA and FLA internal enterprise account users and managed claiming enterprise users.", + "parameters": [ + { + "name": "enterprise_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the enterprise account. Required for logging out a user from the account.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier of the user to log out from the enterprise account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.user:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'logout-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.LogoutUserEnterpriseAccount", + "parameters": { + "enterprise_account_id": { + "value": "eac_1234567890", + "type": "string", + "required": true + }, + "user_id": { + "value": "user_9876543210", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageAirtableBlockInstallation", + "qualifiedName": "AirtableApi.ManageAirtableBlockInstallation", + "fullyQualifiedName": "AirtableApi.ManageAirtableBlockInstallation@4.0.0", + "description": "Manages the installation state of an Airtable block.\n\n This tool modifies the installation state of a specified block in a given Airtable base. It should be called when there is a need to update the status or settings of a block installation.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "airtable_base_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Airtable base where the block is installed. It is required to specify the base for the block installation. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "block_installation_id", + "type": "string", + "required": false, + "description": "The unique identifier for the block installation to be managed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'manage-block-installation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ManageAirtableBlockInstallation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "airtable_base_id": { + "value": "app1234567890", + "type": "string", + "required": false + }, + "block_installation_id": { + "value": "blk0987654321", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\": \"active\", \"settings\": {\"theme\": \"dark\", \"layout\": \"grid\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageAirtableSharing", + "qualifiedName": "AirtableApi.ManageAirtableSharing", + "fullyQualifiedName": "AirtableApi.ManageAirtableSharing@4.0.0", + "description": "Update and manage the share state of an Airtable base.\n\n Use this tool to modify the sharing configuration for a specific Airtable base. It's useful for changing user access or permissions associated with the base.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "airtable_base_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Airtable base to manage its share state. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "share_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the share configuration to modify in Airtable. It specifies which share state needs to be managed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases.shares:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'manage-share'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ManageAirtableSharing", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "airtable_base_id": { + "value": "app1234567890", + "type": "string", + "required": false + }, + "share_identifier": { + "value": "shrd1234567890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"permissions\":\"read_only\",\"emails\":[\"user@example.com\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageEnterpriseAccountUser", + "qualifiedName": "AirtableApi.ManageEnterpriseAccountUser", + "fullyQualifiedName": "AirtableApi.ManageEnterpriseAccountUser@4.0.0", + "description": "Manage users in enterprise accounts.\n\nUse this tool to update details of users within an enterprise account. It is suitable for modifying user information associated with managed users.", + "parameters": [ + { + "name": "enterprise_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the enterprise account. Required to manage users within the account.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier for the user to be managed within the enterprise account.", + "enum": null, + "inferrable": true + }, + { + "name": "update_user_email", + "type": "string", + "required": false, + "description": "New email for the user. Ensure enterprise account owns both original and destination domains. Follow SSO steps if applicable.", + "enum": null, + "inferrable": true + }, + { + "name": "user_first_name", + "type": "string", + "required": false, + "description": "The new first name of the user in the enterprise account.", + "enum": null, + "inferrable": true + }, + { + "name": "user_last_name", + "type": "string", + "required": false, + "description": "The last name of the user to be updated in the enterprise account.", + "enum": null, + "inferrable": true + }, + { + "name": "user_state", + "type": "string", + "required": false, + "description": "Specify the user's state as 'provisioned' or 'deactivated'. Only applicable for managed users.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.user:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'manage-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ManageEnterpriseAccountUser", + "parameters": { + "enterprise_account_id": { + "value": "entp_123456789", + "type": "string", + "required": true + }, + "user_id": { + "value": "user_987654321", + "type": "string", + "required": true + }, + "update_user_email": { + "value": "new.email@example.com", + "type": "string", + "required": false + }, + "user_first_name": { + "value": "John", + "type": "string", + "required": false + }, + "user_last_name": { + "value": "Doe", + "type": "string", + "required": false + }, + "user_state": { + "value": "provisioned", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ModifyAirtableEntry", + "qualifiedName": "AirtableApi.ModifyAirtableEntry", + "fullyQualifiedName": "AirtableApi.ModifyAirtableEntry@4.0.0", + "description": "Update a specific record in an Airtable table.\n\n This tool updates a single record in an Airtable table. Only specified fields are updated, leaving others unchanged. Use table IDs to avoid modifying requests when table names change. Automatic data conversion can be enabled with the typecast parameter for better integration with third-party data sources.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "base_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Airtable base. This specifies which base the record belongs to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "table_identifier", + "type": "string", + "required": false, + "description": "The unique identifier or name of the Airtable table where the record resides. Prefer using table IDs to avoid changes when table names are updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "record_identifier", + "type": "string", + "required": false, + "description": "Unique identifier for the Airtable record to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["data.records:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-record-put'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ModifyAirtableEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "base_id": { + "value": "app123456", + "type": "string", + "required": false + }, + "table_identifier": { + "value": "tbl789012", + "type": "string", + "required": false + }, + "record_identifier": { + "value": "rec345678", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"fields\":{\"Status\":\"Complete\",\"Priority\":\"High\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MoveAirtableBase", + "qualifiedName": "AirtableApi.MoveAirtableBase", + "fullyQualifiedName": "AirtableApi.MoveAirtableBase@4.0.0", + "description": "Move a base between Airtable workspaces.\n\n Use this tool to move a base from one workspace to another within the same Airtable enterprise account.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "target_workspace_id", + "type": "string", + "required": false, + "description": "The ID of the target workspace where the base will be moved. It should be a valid string ID of an existing workspace within the same Airtable enterprise. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'move-base'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.MoveAirtableBase", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "target_workspace_id": { + "value": "workspace_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"baseId\":\"base_987654\",\"description\":\"Moving base to a new workspace\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MoveWorkspacesBetweenEnterpriseAccounts", + "qualifiedName": "AirtableApi.MoveWorkspacesBetweenEnterpriseAccounts", + "fullyQualifiedName": "AirtableApi.MoveWorkspacesBetweenEnterpriseAccounts@4.0.0", + "description": "Move workspaces between enterprise accounts within the same organization.\n\n Use this tool to batch move workspaces from one enterprise account to another within the same organization, provided the Enterprise Hub feature is enabled. Note that non-org unit collaborators might be removed if the target account's invite settings are restricted.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enterprise_account_id", + "type": "string", + "required": false, + "description": "The unique identifier of the enterprise account to which workspaces are being moved. Ensure it belongs to the same organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'move-workspaces'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.MoveWorkspacesBetweenEnterpriseAccounts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enterprise_account_id": { + "value": "enterprise_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"workspace_ids\":[\"ws_001\",\"ws_002\",\"ws_003\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReadHyperdbTableRecords", + "qualifiedName": "AirtableApi.ReadHyperdbTableRecords", + "fullyQualifiedName": "AirtableApi.ReadHyperdbTableRecords@4.0.0", + "description": "Retrieve records from a specified HyperDB table.\n\nUse this tool to fetch records from a HyperDB table by specifying the enterprise account ID and data table ID. Ideal for accessing or reviewing data stored in HyperDB tables.", + "parameters": [ + { + "name": "data_table_id", + "type": "string", + "required": true, + "description": "The identifier of the HyperDB table from which records are to be retrieved. It is required to specify the correct table ID to access the corresponding data.", + "enum": null, + "inferrable": true + }, + { + "name": "enterprise_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the enterprise account. Required to access records from the specified HyperDB table.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_retrieve", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of field names to retrieve from the HyperDB table records. Specify as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_records_to_retrieve", + "type": "number", + "required": false, + "description": "The maximum number of records to retrieve from the HyperDB table. Specify an integer value to limit the number of records returned.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string representing the position within the dataset to start retrieving records from. Use for paginated data retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_keys_to_retrieve", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of primary key strings to specify which records to retrieve from the HyperDB table.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["hyperDB.records:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hyperdb-table-read-records'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ReadHyperdbTableRecords", + "parameters": { + "data_table_id": { + "value": "tbl123456", + "type": "string", + "required": true + }, + "enterprise_account_id": { + "value": "ent987654", + "type": "string", + "required": true + }, + "fields_to_retrieve": { + "value": ["name", "email", "created_at"], + "type": "array", + "required": false + }, + "maximum_records_to_retrieve": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc123", + "type": "string", + "required": false + }, + "primary_keys_to_retrieve": { + "value": ["rec1", "rec2", "rec3"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveBaseCollaborator", + "qualifiedName": "AirtableApi.RemoveBaseCollaborator", + "fullyQualifiedName": "AirtableApi.RemoveBaseCollaborator@4.0.0", + "description": "Remove a collaborator from a base.\n\nUse this tool to delete a collaborator from a specific base in Airtable. It should be called when you want to remove access for a user or group to a base.", + "parameters": [ + { + "name": "base_id", + "type": "string", + "required": true, + "description": "The unique identifier for the base from which the collaborator will be removed. This is a required field.", + "enum": null, + "inferrable": true + }, + { + "name": "collaborator_id", + "type": "string", + "required": true, + "description": "The unique identifier for the user or group to be removed from the base.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-base-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.RemoveBaseCollaborator", + "parameters": { + "base_id": { + "value": "appXYZ123456", + "type": "string", + "required": true + }, + "collaborator_id": { + "value": "usrABC7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveInterfaceCollaborator", + "qualifiedName": "AirtableApi.RemoveInterfaceCollaborator", + "fullyQualifiedName": "AirtableApi.RemoveInterfaceCollaborator@4.0.0", + "description": "Remove a collaborator from an interface.\n\nUse this tool to delete an interface collaborator. Base collaborator access is needed to remove others, but it can also be used for self-removal with interface-only access.", + "parameters": [ + { + "name": "base_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Airtable base. This is required to specify which base the collaborator will be removed from.", + "enum": null, + "inferrable": true + }, + { + "name": "collaborator_id", + "type": "string", + "required": true, + "description": "The ID of the user or group to be removed as an interface collaborator. Must be a valid identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "interface_page_bundle_id", + "type": "string", + "required": true, + "description": "The ID of the page bundle within the interface from which the collaborator is being removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-interface-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.RemoveInterfaceCollaborator", + "parameters": { + "base_id": { + "value": "app123456789", + "type": "string", + "required": true + }, + "collaborator_id": { + "value": "user12345", + "type": "string", + "required": true + }, + "interface_page_bundle_id": { + "value": "bundle987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveUserFromEnterprise", + "qualifiedName": "AirtableApi.RemoveUserFromEnterprise", + "fullyQualifiedName": "AirtableApi.RemoveUserFromEnterprise@4.0.0", + "description": "Unshare a user from all enterprise assets and revoke admin access.\n\n This tool removes a user's access from all enterprise workspaces, bases, interfaces, and user groups. It also revokes admin access if applicable. It returns lists detailing the unsharing and sharing actions that were executed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enterprise_account_id", + "type": "string", + "required": false, + "description": "The ID of the enterprise account from which the user will be removed. Required to specify the enterprise context for user unsharing. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": false, + "description": "The unique identifier of the user to be removed from the enterprise. It is a required string value. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.user:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'remove-user-from-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.RemoveUserFromEnterprise", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enterprise_account_id": { + "value": "ent123456", + "type": "string", + "required": false + }, + "user_id": { + "value": "user7890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\":\"unshare\",\"users\":[\"user7890\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveWorkspaceCollaborator", + "qualifiedName": "AirtableApi.RemoveWorkspaceCollaborator", + "fullyQualifiedName": "AirtableApi.RemoveWorkspaceCollaborator@4.0.0", + "description": "Remove a collaborator from an Airtable workspace.\n\nUse this tool to remove a collaborator, identified by user or group ID, from a specified Airtable workspace.", + "parameters": [ + { + "name": "collaborator_identifier", + "type": "string", + "required": true, + "description": "The ID of the user or group to be removed from the workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Airtable workspace from which to remove a collaborator.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-workspace-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.RemoveWorkspaceCollaborator", + "parameters": { + "collaborator_identifier": { + "value": "usr12345", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "ws98765", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAuditLog", + "qualifiedName": "AirtableApi.RetrieveAuditLog", + "fullyQualifiedName": "AirtableApi.RetrieveAuditLog@4.0.0", + "description": "Retrieve a specific audit log request.\n\nFetches details of a specified audit log request using the enterprise account and audit log task IDs. This tool is not recommended for new use cases; consider using the audit log events API instead.", + "parameters": [ + { + "name": "audit_log_task_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific audit log task to retrieve. This is required to fetch the log details.", + "enum": null, + "inferrable": true + }, + { + "name": "enterprise_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the enterprise account. This ID is required to retrieve the specific audit log request.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.auditLogs:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-audit-log-request'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.RetrieveAuditLog", + "parameters": { + "audit_log_task_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "enterprise_account_id": { + "value": "xyz987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAuditLogRequests", + "qualifiedName": "AirtableApi.RetrieveAuditLogRequests", + "fullyQualifiedName": "AirtableApi.RetrieveAuditLogRequests@4.0.0", + "description": "Retrieve all audit log requests for an enterprise account.\n\nThis tool retrieves all the audit log requests for a given enterprise account. It's meant for accessing historical log records. Note that using this API is discouraged for new use cases; consider using the audit log events API instead.", + "parameters": [ + { + "name": "enterprise_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the enterprise account to retrieve audit log requests for.", + "enum": null, + "inferrable": true + }, + { + "name": "audit_log_page_size", + "type": "number", + "required": false, + "description": "Specify the number of audit log requests to return per page. Use this to control pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "number", + "required": false, + "description": "A number indicating the starting point for retrieving audit log requests. Used for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.auditLogs:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-audit-log-requests'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.RetrieveAuditLogRequests", + "parameters": { + "enterprise_account_id": { + "value": "ent-12345abcde", + "type": "string", + "required": true + }, + "audit_log_page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveUserIdAndScopes", + "qualifiedName": "AirtableApi.RetrieveUserIdAndScopes", + "fullyQualifiedName": "AirtableApi.RetrieveUserIdAndScopes@4.0.0", + "description": "Retrieve user's ID, associated scopes, and email if available.\n\nThis tool retrieves the user's ID and the associated scopes with the OAuth token used. If the token has the `user.email:read` scope, the tool also returns the user's email.", + "parameters": [], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-user-id-scopes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.RetrieveUserIdAndScopes", + "parameters": {}, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RevokeAdminAccess", + "qualifiedName": "AirtableApi.RevokeAdminAccess", + "fullyQualifiedName": "AirtableApi.RevokeAdminAccess@4.0.0", + "description": "Revoke admin access from specified users.\n\n Use this tool to revoke admin access from users by providing either their user ID or email. Only directly assigned admin access can be revoked. If both ID and email are provided, only the ID is used. Errors for unprocessed users are included in the response.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enterprise_account_id", + "type": "string", + "required": false, + "description": "The unique identifier for the enterprise account. Required to target the specific account for admin access revocation. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.user:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'revoke-admin-access'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.RevokeAdminAccess", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enterprise_account_id": { + "value": "e12345678", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"user_id\": \"user_123\", \"email\": \"example@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ToggleWebhookNotifications", + "qualifiedName": "AirtableApi.ToggleWebhookNotifications", + "fullyQualifiedName": "AirtableApi.ToggleWebhookNotifications@4.0.0", + "description": "Enable or disable webhook notification pings.\n\n Use this tool to enable or disable notification pings for a specific webhook in Airtable. Requires creator-level permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "airtable_base_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Airtable base. This specifies which database to target for enabling or disabling webhook notifications. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_id", + "type": "string", + "required": false, + "description": "The unique identifier for the webhook to be modified. Required for specifying which webhook's notifications you want to enable or disable. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["webhook:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enable-disable-webhook-notifications'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.ToggleWebhookNotifications", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "airtable_base_id": { + "value": "app1234567890", + "type": "string", + "required": false + }, + "webhook_id": { + "value": "hook1234567890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"enabled\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateAirtableFieldDetails", + "qualifiedName": "AirtableApi.UpdateAirtableFieldDetails", + "fullyQualifiedName": "AirtableApi.UpdateAirtableFieldDetails@4.0.0", + "description": "Updates the name or description of an Airtable field.\n\nThis tool updates the name and/or description of a specified field in an Airtable base. It requires at least one of the name or description to be provided. Use this when you need to change field metadata in Airtable.", + "parameters": [ + { + "name": "airtable_base_id", + "type": "string", + "required": true, + "description": "The unique ID of the Airtable base containing the field to update.", + "enum": null, + "inferrable": true + }, + { + "name": "airtable_table_id", + "type": "string", + "required": true, + "description": "The ID of the table in which the field's metadata is to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "field_column_id", + "type": "string", + "required": true, + "description": "The unique identifier for the field (column) to be updated in the Airtable base.", + "enum": null, + "inferrable": true + }, + { + "name": "new_field_description", + "type": "string", + "required": false, + "description": "The new description for the field. Optional, max 20,000 characters.", + "enum": null, + "inferrable": true + }, + { + "name": "new_field_name", + "type": "string", + "required": false, + "description": "The new name for the field in Airtable. This is optional but must be provided if no new description is given.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["schema.bases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-field'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UpdateAirtableFieldDetails", + "parameters": { + "airtable_base_id": { + "value": "app1234567890", + "type": "string", + "required": true + }, + "airtable_table_id": { + "value": "tbl9876543210", + "type": "string", + "required": true + }, + "field_column_id": { + "value": "fldXYZ12345", + "type": "string", + "required": true + }, + "new_field_description": { + "value": "Updated description for the field.", + "type": "string", + "required": false + }, + "new_field_name": { + "value": "Updated Field Name", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateAirtableRecord", + "qualifiedName": "AirtableApi.UpdateAirtableRecord", + "fullyQualifiedName": "AirtableApi.UpdateAirtableRecord@4.0.0", + "description": "Update a single Airtable record with specified fields.\n\n This tool updates a single record in Airtable using either table names or IDs. Use it when you need to modify specific fields of a record without altering the rest. Supports automatic data conversion with the typecast parameter.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "base_id", + "type": "string", + "required": false, + "description": "The unique identifier of the Airtable base where the record exists. This ID is required to specify which base to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": false, + "description": "The identifier or name of the Airtable table where the record resides. Using table IDs is recommended for stability. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "airtable_record_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Airtable record you want to update. It is required to specify which record to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["data.records:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-record'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UpdateAirtableRecord", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "base_id": { + "value": "app123456789", + "type": "string", + "required": false + }, + "table_id_or_name": { + "value": "tbl987654321", + "type": "string", + "required": false + }, + "airtable_record_id": { + "value": "recXYZ12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"fields\":{\"Name\":\"John Doe\",\"Status\":\"Active\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateAirtableRecords", + "qualifiedName": "AirtableApi.UpdateAirtableRecords", + "fullyQualifiedName": "AirtableApi.UpdateAirtableRecords@4.0.0", + "description": "Update or upsert multiple records in an Airtable table.\n\n Use this tool to update up to 10 records in an Airtable table, or to upsert them by setting the `performUpsert` option. The tool is ideal when you want to make changes to specific fields without affecting others. By default, only included fields are updated. Use `PUT` instead of `PATCH` for destructive updates, which clear unincluded fields. Upserts enable the creation of new records if no match is found or update them if a match is found. Typecasting can be enabled to convert strings to appropriate cell values.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "airtable_base_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Airtable base where the records will be updated or upserted. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "airtable_table_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the Airtable table where records will be updated or upserted. Using the table ID is recommended for less disruption if the table name changes. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["data.records:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-multiple-records'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UpdateAirtableRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "airtable_base_id": { + "value": "app123456789", + "type": "string", + "required": false + }, + "airtable_table_id_or_name": { + "value": "tbl987654321", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"records\":[{\"id\":\"rec1\",\"fields\":{\"Name\":\"Updated Name\",\"Status\":\"In Progress\"}}, {\"id\":\"rec2\",\"fields\":{\"Name\":\"Another Update\",\"Priority\":\"High\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateAirtableTable", + "qualifiedName": "AirtableApi.UpdateAirtableTable", + "fullyQualifiedName": "AirtableApi.UpdateAirtableTable@4.0.0", + "description": "Update the properties of an Airtable table.\n\n Use this tool to update the name, description, or date dependency settings of a specific Airtable table identified by its base ID and table ID or name.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "airtable_base_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Airtable base containing the table to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": false, + "description": "The identifier or name of the table to update in Airtable. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["schema.bases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-table'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UpdateAirtableTable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "airtable_base_id": { + "value": "app1234567890", + "type": "string", + "required": false + }, + "table_id_or_name": { + "value": "Table 1", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Table Name\", \"description\": \"This table has been updated.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCollaboratorPermission", + "qualifiedName": "AirtableApi.UpdateCollaboratorPermission", + "fullyQualifiedName": "AirtableApi.UpdateCollaboratorPermission@4.0.0", + "description": "Update a collaborator's permission level on a base.\n\n Use this tool to modify the permission level of a specific collaborator on a designated base. Ideal for managing user access and ensuring appropriate permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "base_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the base to update permission. Required as a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "collaborator_id", + "type": "string", + "required": false, + "description": "The unique identifier for the user or group whose permission level is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-collaborator-base-permission'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UpdateCollaboratorPermission", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "base_identifier": { + "value": "app1234567890", + "type": "string", + "required": false + }, + "collaborator_id": { + "value": "user0987654321", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"permissionLevel\":\"editor\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCollaboratorPermissions", + "qualifiedName": "AirtableApi.UpdateCollaboratorPermissions", + "fullyQualifiedName": "AirtableApi.UpdateCollaboratorPermissions@4.0.0", + "description": "Update permissions for an interface-only collaborator.\n\n This tool updates the permissions for a specific collaborator associated with an interface in Airtable. Use it to modify access levels for collaborators on a specific base and interface.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "base_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the Airtable base where the collaborator's permissions are being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "interface_page_bundle_id", + "type": "string", + "required": false, + "description": "The unique identifier for the page bundle associated with the interface in Airtable. Required to specify which interface the permissions are being updated for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "collaborator_id", + "type": "string", + "required": false, + "description": "The unique ID of the user or group whose permissions are to be updated. This is required for specifying which collaborator's access level should be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-interface-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UpdateCollaboratorPermissions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "base_identifier": { + "value": "app1234567890", + "type": "string", + "required": false + }, + "interface_page_bundle_id": { + "value": "page_bundle_001", + "type": "string", + "required": false + }, + "collaborator_id": { + "value": "collab_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"permissions\": {\"accessLevel\": \"editor\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGroupAttributes", + "qualifiedName": "AirtableApi.UpdateGroupAttributes", + "fullyQualifiedName": "AirtableApi.UpdateGroupAttributes@4.0.0", + "description": "Replace a group's attributes with new values.\n\n Use this tool to update all attributes of a specified group with new values in Airtable. Call this when a complete group update is necessary.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "group_id", + "type": "string", + "required": false, + "description": "The unique identifier for the group whose attributes need to be replaced. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.scim.usersAndGroups:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-scim-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UpdateGroupAttributes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "group_id": { + "value": "grp123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Group Name\", \"description\": \"Updated description for the group.\", \"members\": [\"user1\", \"user2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGroupDetails", + "qualifiedName": "AirtableApi.UpdateGroupDetails", + "fullyQualifiedName": "AirtableApi.UpdateGroupDetails@4.0.0", + "description": "Update group details using SCIM patch operations.\n\n This tool allows you to apply a series of SCIM patch operations to update a group's details on Airtable. It applies the operations sequentially, following the SCIM specification.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "group_id", + "type": "string", + "required": false, + "description": "A string representing the unique identifier of the group to be updated using SCIM patch operations. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.scim.usersAndGroups:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-scim-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UpdateGroupDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "group_id": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"schemas\":[\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"],\"Operations\":[{\"op\":\"replace\",\"path\":\"displayName\",\"value\":\"New Group Name\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateRecordComment", + "qualifiedName": "AirtableApi.UpdateRecordComment", + "fullyQualifiedName": "AirtableApi.UpdateRecordComment@4.0.0", + "description": "Update a comment on a specific record.\n\n Use this tool to update a comment you've created on a specific record in Airtable. Ensure the comment belongs to you before attempting to update.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "base_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the Airtable base containing the record. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the Airtable table where the record with the comment is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "record_id", + "type": "string", + "required": false, + "description": "The unique identifier of the record whose comment you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_id", + "type": "string", + "required": false, + "description": "The unique identifier of the comment to update. Ensure it belongs to the authorized user. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["data.recordComments:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UpdateRecordComment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "base_identifier": { + "value": "app123456789", + "type": "string", + "required": false + }, + "table_id_or_name": { + "value": "Table1", + "type": "string", + "required": false + }, + "record_id": { + "value": "rec987654321", + "type": "string", + "required": false + }, + "comment_id": { + "value": "com456789012", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"text\": \"Updated comment text\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateScimUserRecord", + "qualifiedName": "AirtableApi.UpdateScimUserRecord", + "fullyQualifiedName": "AirtableApi.UpdateScimUserRecord@4.0.0", + "description": "Apply SCIM patch operations to update user details.\n\n Use this tool to perform a sequence of SCIM patch operations on an existing user. Suitable for updating user attributes according to SCIM specification.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": false, + "description": "The unique identifier for the user to be updated. It should match the user's existing SCIM record. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.scim.usersAndGroups:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-scim-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UpdateScimUserRecord", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"schemas\":[\"urn:ietf:params:scim:schemas:core:2.0:User\"],\"Operations\":[{\"op\":\"replace\",\"path\":\"name.givenName\",\"value\":\"John\"},{\"op\":\"replace\",\"path\":\"name.familyName\",\"value\":\"Doe\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateUserAttributes", + "qualifiedName": "AirtableApi.UpdateUserAttributes", + "fullyQualifiedName": "AirtableApi.UpdateUserAttributes@4.0.0", + "description": "Replace a user's attributes with new values.\n\n Use this tool to update all attributes for a specific user in the SCIM system. It allows setting the 'active' status to true or false, and requires full replacement of existing attributes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": false, + "description": "The unique identifier of the user whose attributes are to be replaced. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["enterprise.scim.usersAndGroups:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-scim-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UpdateUserAttributes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_id": { + "value": "user_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"active\": true, \"attributes\": {\"firstName\": \"John\", \"lastName\": \"Doe\", \"email\": \"john.doe@example.com\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateWorkspaceCollaboratorPermission", + "qualifiedName": "AirtableApi.UpdateWorkspaceCollaboratorPermission", + "fullyQualifiedName": "AirtableApi.UpdateWorkspaceCollaboratorPermission@4.0.0", + "description": "Modify a collaborator's permission level in a workspace.\n\n Use this tool to update the permission level of a collaborator within a specified workspace, adjusting their access rights as needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "The unique identifier of the workspace where the collaborator's permissions will be updated. This is required to specify which workspace is being modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "collaborator_id", + "type": "string", + "required": false, + "description": "The identifier for the user or group whose permissions are being updated in the workspace. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-workspace-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UpdateWorkspaceCollaboratorPermission", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "ws123456", + "type": "string", + "required": false + }, + "collaborator_id": { + "value": "collab7890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"permission_level\": \"editor\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateWorkspaceRestrictions", + "qualifiedName": "AirtableApi.UpdateWorkspaceRestrictions", + "fullyQualifiedName": "AirtableApi.UpdateWorkspaceRestrictions@4.0.0", + "description": "Updates sharing restrictions for an Airtable workspace.\n\nUse this tool to modify the sharing restrictions settings of a specific Airtable workspace by providing the workspace ID.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Airtable workspace to update restrictions.", + "enum": null, + "inferrable": true + }, + { + "name": "invite_creation_restriction", + "type": "string", + "required": false, + "description": "Defines who can create invites in the workspace. Choose between 'unrestricted' or 'onlyOwners'.", + "enum": null, + "inferrable": true + }, + { + "name": "share_creation_restriction", + "type": "string", + "required": false, + "description": "Specify the sharing creation restriction. Choose between 'unrestricted' or 'onlyOwners'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["workspacesAndBases:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-workspace-restrictions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UpdateWorkspaceRestrictions", + "parameters": { + "workspace_id": { + "value": "workspace123", + "type": "string", + "required": true + }, + "invite_creation_restriction": { + "value": "onlyOwners", + "type": "string", + "required": false + }, + "share_creation_restriction": { + "value": "unrestricted", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UploadAttachmentToAirtable", + "qualifiedName": "AirtableApi.UploadAttachmentToAirtable", + "fullyQualifiedName": "AirtableApi.UploadAttachmentToAirtable@4.0.0", + "description": "Upload attachments to an Airtable record's cell.\n\n Use this tool to upload an attachment directly into a specified record and cell in Airtable, with a file size limit of 5 MB. For larger files, consider using a public URL method.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "airtable_base_id", + "type": "string", + "required": false, + "description": "The unique identifier of the Airtable base where the attachment will be uploaded. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "airtable_record_id", + "type": "string", + "required": false, + "description": "The unique string identifier for the Airtable record to which the attachment will be uploaded. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_field_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the field where the attachment will be uploaded. This specifies the target field in the Airtable record. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'upload-attachment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UploadAttachmentToAirtable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "airtable_base_id": { + "value": "app1234567890abcdef", + "type": "string", + "required": false + }, + "airtable_record_id": { + "value": "rec0987654321abcdef", + "type": "string", + "required": false + }, + "attachment_field_id_or_name": { + "value": "Attachments", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"fields\":{\"Attachments\":[{\"url\":\"https://example.com/myfile.jpg\"}]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertAirtableRecords", + "qualifiedName": "AirtableApi.UpsertAirtableRecords", + "fullyQualifiedName": "AirtableApi.UpsertAirtableRecords@4.0.0", + "description": "Update or insert records in an Airtable HyperDB table.\n\n Use this tool to update or insert records in an Airtable HyperDB table by matching primary keys. Ideal for syncing data or ensuring records are up-to-date without manual oversight.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enterprise_account_id", + "type": "string", + "required": false, + "description": "The identifier for the Airtable enterprise account. Required for accessing the HyperDB table. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "data_table_id", + "type": "string", + "required": false, + "description": "The identifier for the HyperDB data table in Airtable. Required for targeting the specific table for upsert operations. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "airtable", + "providerType": "oauth2", + "scopes": ["hyperDB.records:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hyperdb-upsert-records-by-primary-keys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AirtableApi.UpsertAirtableRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enterprise_account_id": { + "value": "entp_1234567890", + "type": "string", + "required": false + }, + "data_table_id": { + "value": "tbl_0987654321", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"records\":[{\"id\":\"rec_ABC123\",\"fields\":{\"Name\":\"John Doe\",\"Email\":\"john.doe@example.com\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "airtable", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:26:20.863Z", + "summary": "## Arcade Toolkit for Airtable API\nThe Airtable API toolkit allows LLMs to seamlessly interact with Airtable, enabling the management of records, collaborators, and enterprise accounts efficiently.\n\n### Capabilities\n- Manage Airtable bases, records, and tables with ease.\n- Collaborator management, including permissions and user roles within workspaces and interfaces.\n- Support for batch operations to manipulate multiple records and users.\n- Facilitate webhooks, comments, and audit log requests for enhanced functionality.\n\n### OAuth\n**Provider:** Airtable\n**Scopes:** data.recordComments:read, data.recordComments:write, data.records:read, data.records:write, enterprise.account:read, and more.\n\n### Secrets\nNo secret types or names are required for this toolkit." +} diff --git a/data/toolkits/arcadeengineapi.json b/data/toolkits/arcadeengineapi.json new file mode 100644 index 000000000..d2aa71b30 --- /dev/null +++ b/data/toolkits/arcadeengineapi.json @@ -0,0 +1,1662 @@ +{ + "id": "ArcadeEngineApi", + "label": "Arcade Engine API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the engine API.", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/arcade.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/arcade-engine-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "AuthorizeUserToolAccess", + "qualifiedName": "ArcadeEngineApi.AuthorizeUserToolAccess", + "fullyQualifiedName": "ArcadeEngineApi.AuthorizeUserToolAccess@1.0.0", + "description": "Authorize a user to access a specific tool.\n\nThis tool authorizes a user for a specific tool by its name. It should be called when a user needs permission to access a specific tool. The tool returns the authorization status.", + "parameters": [ + { + "name": "tool_name_for_authorization", + "type": "string", + "required": true, + "description": "Specify the name of the tool to authorize the user for access.", + "enum": null, + "inferrable": true + }, + { + "name": "redirect_uri_after_authorization", + "type": "string", + "required": false, + "description": "Optional URI to redirect the user after authorization.", + "enum": null, + "inferrable": true + }, + { + "name": "tool_version", + "type": "string", + "required": false, + "description": "Specify the tool version to authorize. If not provided, any version will be used.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": false, + "description": "The unique identifier for a user. Required only when using an API key for authorization.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tool-authorize'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.AuthorizeUserToolAccess", + "parameters": { + "tool_name_for_authorization": { + "value": "ArcadeEngine", + "type": "string", + "required": true + }, + "redirect_uri_after_authorization": { + "value": "https://example.com/redirect", + "type": "string", + "required": false + }, + "tool_version": { + "value": "1.0.0", + "type": "string", + "required": false + }, + "user_id": { + "value": "user12345", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AuthorizeWorker", + "qualifiedName": "ArcadeEngineApi.AuthorizeWorker", + "fullyQualifiedName": "ArcadeEngineApi.AuthorizeWorker@1.0.0", + "description": "Authorize a worker based on their ID.\n\nThis tool is used to verify and authorize a worker by their ID. It should be called when it's necessary to check if a worker has the appropriate permissions or status to perform certain tasks.", + "parameters": [ + { + "name": "worker_id", + "type": "string", + "required": true, + "description": "The unique identifier for the worker to be authorized.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'workers-authorize'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.AuthorizeWorker", + "parameters": { + "worker_id": { + "value": "worker_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckArcadeEngineHealth", + "qualifiedName": "ArcadeEngineApi.CheckArcadeEngineHealth", + "fullyQualifiedName": "ArcadeEngineApi.CheckArcadeEngineHealth@1.0.0", + "description": "Check the health status of the Arcade Engine.\n\nUse this tool to verify if the Arcade Engine service is currently healthy and operational.", + "parameters": [], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'arcade-health'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.CheckArcadeEngineHealth", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckAuthStatus", + "qualifiedName": "ArcadeEngineApi.CheckAuthStatus", + "fullyQualifiedName": "ArcadeEngineApi.CheckAuthStatus@1.0.0", + "description": "Verify the ongoing authorization status of a tool.\n\nUse this tool to check the status of an ongoing authorization process for a specific tool. Ideal for monitoring when an authorization completes or times out.", + "parameters": [ + { + "name": "authorization_id", + "type": "string", + "required": true, + "description": "The unique ID for the authorization process to check its status.", + "enum": null, + "inferrable": true + }, + { + "name": "timeout_in_seconds", + "type": "integer", + "required": false, + "description": "Specify the timeout duration in seconds. Maximum allowed is 59 seconds.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'auth-status'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.CheckAuthStatus", + "parameters": { + "authorization_id": { + "value": "auth_123456789", + "type": "string", + "required": true + }, + "timeout_in_seconds": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWorker", + "qualifiedName": "ArcadeEngineApi.CreateWorker", + "fullyQualifiedName": "ArcadeEngineApi.CreateWorker@1.0.0", + "description": "Create a new worker in the system.\n\nThis tool is used to add a new worker to the system. It should be called when there's a need to register a new worker.", + "parameters": [ + { + "name": "worker_id", + "type": "string", + "required": true, + "description": "A unique identifier for the worker to be created. It should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_worker", + "type": "boolean", + "required": false, + "description": "Set to true to enable the new worker upon creation, or false to keep it disabled.", + "enum": null, + "inferrable": true + }, + { + "name": "http_retry_attempts", + "type": "integer", + "required": false, + "description": "Number of retry attempts for HTTP requests if a failure occurs.", + "enum": null, + "inferrable": true + }, + { + "name": "http_secret_key", + "type": "string", + "required": false, + "description": "A secret key used for HTTP authentication and authorization. It should be a secure string provided by the service.", + "enum": null, + "inferrable": true + }, + { + "name": "http_timeout_seconds", + "type": "integer", + "required": false, + "description": "The timeout duration for the HTTP connection, specified in seconds. This defines how long the system should wait for the HTTP request to complete before timing out.", + "enum": null, + "inferrable": true + }, + { + "name": "mcp_retry_attempts", + "type": "integer", + "required": false, + "description": "Specifies the number of retry attempts for MCP connections. Provide an integer value to define how many times the system should retry a connection if it fails.", + "enum": null, + "inferrable": true + }, + { + "name": "mcp_timeout_duration", + "type": "integer", + "required": false, + "description": "The timeout duration for MCP operations in seconds. Must be an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "worker_http_uri", + "type": "string", + "required": false, + "description": "The HTTP URI for the worker's endpoint. This expects a valid URL string that specifies where the worker's service can be accessed.", + "enum": null, + "inferrable": true + }, + { + "name": "worker_resource_uri", + "type": "string", + "required": false, + "description": "The URI for the worker's resource location or service endpoint. Provide the full URI as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "worker_type", + "type": "string", + "required": false, + "description": "Specifies the type of worker to be created. It should be a string indicating the category or role of the worker.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'workers-create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.CreateWorker", + "parameters": { + "worker_id": { + "value": "worker_12345", + "type": "string", + "required": true + }, + "enable_worker": { + "value": true, + "type": "boolean", + "required": false + }, + "http_retry_attempts": { + "value": 3, + "type": "integer", + "required": false + }, + "http_secret_key": { + "value": "s3cur3K3y123!", + "type": "string", + "required": false + }, + "http_timeout_seconds": { + "value": 30, + "type": "integer", + "required": false + }, + "mcp_retry_attempts": { + "value": 5, + "type": "integer", + "required": false + }, + "mcp_timeout_duration": { + "value": 60, + "type": "integer", + "required": false + }, + "worker_http_uri": { + "value": "https://api.example.com/workers/worker_12345", + "type": "string", + "required": false + }, + "worker_resource_uri": { + "value": "https://api.example.com/resources/worker_12345", + "type": "string", + "required": false + }, + "worker_type": { + "value": "service_worker", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAuthProvider", + "qualifiedName": "ArcadeEngineApi.DeleteAuthProvider", + "fullyQualifiedName": "ArcadeEngineApi.DeleteAuthProvider@1.0.0", + "description": "Delete a specific auth provider by ID.\n\nThis tool deletes a specified authentication provider using its ID. It should be called when you need to remove an auth provider from the system.", + "parameters": [ + { + "name": "auth_provider_id", + "type": "string", + "required": true, + "description": "The ID of the authentication provider to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'auth-providers-delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.DeleteAuthProvider", + "parameters": { + "auth_provider_id": { + "value": "auth_123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteMcpEndpoint", + "qualifiedName": "ArcadeEngineApi.DeleteMcpEndpoint", + "fullyQualifiedName": "ArcadeEngineApi.DeleteMcpEndpoint@1.0.0", + "description": "Delete the Model Context Protocol endpoint data.\n\nThis tool deletes data at the Model Context Protocol (MCP) endpoint, which supports Streamable HTTP transport. Use it to remove existing configurations or data tied to this endpoint.", + "parameters": [], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'mcp-endpoint'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.DeleteMcpEndpoint", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSecretById", + "qualifiedName": "ArcadeEngineApi.DeleteSecretById", + "fullyQualifiedName": "ArcadeEngineApi.DeleteSecretById@1.0.0", + "description": "Deletes a secret using its unique ID.\n\nUse this tool to delete a specific secret identified by its ID. Useful when needing to permanently remove a secret from the system.", + "parameters": [ + { + "name": "secret_id", + "type": "string", + "required": true, + "description": "The unique identifier of the secret to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'secrets-delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.DeleteSecretById", + "parameters": { + "secret_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteUserAuthConnection", + "qualifiedName": "ArcadeEngineApi.DeleteUserAuthConnection", + "fullyQualifiedName": "ArcadeEngineApi.DeleteUserAuthConnection@1.0.0", + "description": "Deletes a user/auth provider connection.\n\nThis tool deletes a connection between a user and an authentication provider. It should be called when a user needs to disconnect their account from an external auth provider.", + "parameters": [ + { + "name": "connection_id", + "type": "string", + "required": true, + "description": "The unique identifier for the user/auth provider connection to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'auth-connections-delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.DeleteUserAuthConnection", + "parameters": { + "connection_id": { + "value": "conn_1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteWorker", + "qualifiedName": "ArcadeEngineApi.DeleteWorker", + "fullyQualifiedName": "ArcadeEngineApi.DeleteWorker@1.0.0", + "description": "Deletes a specified worker from the system.\n\nUse this tool to remove a worker by providing their unique ID. It should be called when you need to permanently delete a worker record from the system.", + "parameters": [ + { + "name": "worker_id", + "type": "string", + "required": true, + "description": "The unique identifier for the worker to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'workers-delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.DeleteWorker", + "parameters": { + "worker_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ExecuteTool", + "qualifiedName": "ArcadeEngineApi.ExecuteTool", + "fullyQualifiedName": "ArcadeEngineApi.ExecuteTool@1.0.0", + "description": "Execute a specified tool with given parameters.\n\nThis tool allows the execution of a specified tool by providing its name and necessary arguments. It's useful for triggering specific actions or processes as dictated by the tool's logic.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tool-execute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.ExecuteTool", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"action\":\"start\",\"toolName\":\"exampleTool\",\"parameters\":{\"param1\":\"value1\",\"param2\":\"value2\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchToolsPage", + "qualifiedName": "ArcadeEngineApi.FetchToolsPage", + "fullyQualifiedName": "ArcadeEngineApi.FetchToolsPage@1.0.0", + "description": "Retrieve a list of tools for a specific worker.\n\nThis tool is used to get a list of tools associated with a specific worker ID. It should be called when you need an overview of tools for a particular worker.", + "parameters": [ + { + "name": "worker_id", + "type": "string", + "required": true, + "description": "The unique ID of the worker for which to retrieve the tools list.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_items", + "type": "integer", + "required": false, + "description": "Number of items to return in the result set. Default is 25 and the maximum is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "start_offset", + "type": "integer", + "required": false, + "description": "Offset from the start of the list for pagination. Defaults to 0.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tools-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.FetchToolsPage", + "parameters": { + "worker_id": { + "value": "worker_12345", + "type": "string", + "required": true + }, + "number_of_items": { + "value": 50, + "type": "integer", + "required": false + }, + "start_offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAuthProviderDetails", + "qualifiedName": "ArcadeEngineApi.GetAuthProviderDetails", + "fullyQualifiedName": "ArcadeEngineApi.GetAuthProviderDetails@1.0.0", + "description": "Retrieve details of a specific authentication provider.\n\nUse this tool to obtain the details of a particular authentication provider by specifying its ID.", + "parameters": [ + { + "name": "auth_provider_id", + "type": "string", + "required": true, + "description": "The ID of the authentication provider to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'auth-providers-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.GetAuthProviderDetails", + "parameters": { + "auth_provider_id": { + "value": "authProvider123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFormattedToolSpecification", + "qualifiedName": "ArcadeEngineApi.GetFormattedToolSpecification", + "fullyQualifiedName": "ArcadeEngineApi.GetFormattedToolSpecification@1.0.0", + "description": "Fetches a formatted specification for a given tool.\n\nUse this to obtain detailed, formatted specifications for a specific tool from a provider.", + "parameters": [ + { + "name": "tool_name", + "type": "string", + "required": true, + "description": "The name of the tool for which the formatted specification is requested.", + "enum": null, + "inferrable": true + }, + { + "name": "provider_format", + "type": "string", + "required": false, + "description": "Specifies the format of the tool as required by the provider.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": false, + "description": "The identifier for the user requesting the tool specification. This should be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tool-spec-formatted'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.GetFormattedToolSpecification", + "parameters": { + "tool_name": { + "value": "ImageProcessingTool", + "type": "string", + "required": true + }, + "provider_format": { + "value": "json", + "type": "string", + "required": false + }, + "user_id": { + "value": "user_123456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOpenapiSpecification", + "qualifiedName": "ArcadeEngineApi.GetOpenapiSpecification", + "fullyQualifiedName": "ArcadeEngineApi.GetOpenapiSpecification@1.0.0", + "description": "Get the OpenAPI 3.0 specification in JSON format.\n\nUse this tool to retrieve the OpenAPI 3.0 specification for the Arcade Engine API, which provides detailed information about all available endpoints and their usage.", + "parameters": [], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'openapi' (returns OpenAPI 3.0 specification)." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.GetOpenapiSpecification", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectDetails", + "qualifiedName": "ArcadeEngineApi.GetProjectDetails", + "fullyQualifiedName": "ArcadeEngineApi.GetProjectDetails@1.0.0", + "description": "Retrieve detailed information about a specific project.\n\nThis tool fetches and returns detailed information for a given project based on its ID. Use it when you need to access specific details about a project.", + "parameters": [ + { + "name": "authorization_token", + "type": "string", + "required": true, + "description": "JWT token required for authentication. Should be provided in the format: 'Bearer '.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project to retrieve details for. This should be a string matching the project's ID in the database.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-project'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.GetProjectDetails", + "parameters": { + "authorization_token": { + "value": "Bearer abcdef123456", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_7890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetScheduledToolDetails", + "qualifiedName": "ArcadeEngineApi.GetScheduledToolDetails", + "fullyQualifiedName": "ArcadeEngineApi.GetScheduledToolDetails@1.0.0", + "description": "Retrieve details for a specific scheduled tool execution.\n\nUse this tool to get information about a specific tool execution that has been scheduled, based on its unique identifier. It provides insights into the timing and parameters of the execution.", + "parameters": [ + { + "name": "scheduled_execution_id", + "type": "string", + "required": true, + "description": "The unique identifier for the scheduled tool execution to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tool-scheduled-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.GetScheduledToolDetails", + "parameters": { + "scheduled_execution_id": { + "value": "exec_1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetScheduledToolExecutions", + "qualifiedName": "ArcadeEngineApi.GetScheduledToolExecutions", + "fullyQualifiedName": "ArcadeEngineApi.GetScheduledToolExecutions@1.0.0", + "description": "Fetch a list of scheduled tool executions.\n\nUse this tool to retrieve a page of scheduled tool executions, useful for monitoring upcoming automated processes.", + "parameters": [ + { + "name": "items_limit", + "type": "integer", + "required": false, + "description": "The number of scheduled tool executions to return. Defaults to 25, max is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "list_offset", + "type": "integer", + "required": false, + "description": "The starting position in the list of scheduled tool executions, default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tool-scheduled-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.GetScheduledToolExecutions", + "parameters": { + "items_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "list_offset": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetToolsList", + "qualifiedName": "ArcadeEngineApi.GetToolsList", + "fullyQualifiedName": "ArcadeEngineApi.GetToolsList@1.0.0", + "description": "Retrieve a list of tools from the engine configuration.\n\nUse this tool to get a paginated list of tools available in the engine configuration, with optional filtering by toolkit.", + "parameters": [ + { + "name": "include_formats", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of tool formats to include in the response, specified by their names.", + "enum": null, + "inferrable": true + }, + { + "name": "items_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of tools to return, with a maximum of 100. Defaults to 25 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "start_offset", + "type": "integer", + "required": false, + "description": "Offset to determine the starting point from the list of tools. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "toolkit_name", + "type": "string", + "required": false, + "description": "Specifies the name of the toolkit to filter the tools list.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": false, + "description": "The ID of the user requesting the tool list. It is used to filter the results for a specific user context.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tools-list-static'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.GetToolsList", + "parameters": { + "include_formats": { + "value": ["format1", "format2", "format3"], + "type": "array", + "required": false + }, + "items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "start_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "toolkit_name": { + "value": "my_toolkit", + "type": "string", + "required": false + }, + "user_id": { + "value": "user123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetToolSpecification", + "qualifiedName": "ArcadeEngineApi.GetToolSpecification", + "fullyQualifiedName": "ArcadeEngineApi.GetToolSpecification@1.0.0", + "description": "Retrieve the specification for a specific arcade tool.\n\nThis tool returns the arcade tool specification for a specified tool by its name. It should be called when there's a need to understand the details or capabilities of a particular tool.", + "parameters": [ + { + "name": "tool_name", + "type": "string", + "required": true, + "description": "The name of the tool whose specification is to be retrieved. This should match the tool's registered name.", + "enum": null, + "inferrable": true + }, + { + "name": "formats_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of tool formats to include in the response. Provide formats as a list of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the user requesting the tool specification.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tool-spec'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.GetToolSpecification", + "parameters": { + "tool_name": { + "value": "ArcadeTool1", + "type": "string", + "required": true + }, + "formats_to_include": { + "value": ["json", "xml", "csv"], + "type": "array", + "required": false + }, + "user_identifier": { + "value": "user123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWorkerById", + "qualifiedName": "ArcadeEngineApi.GetWorkerById", + "fullyQualifiedName": "ArcadeEngineApi.GetWorkerById@1.0.0", + "description": "Retrieve worker details using their ID.\n\nUse this tool to obtain detailed information about a worker by providing their unique ID. Ideal for situations where specific worker data is required.", + "parameters": [ + { + "name": "worker_id", + "type": "string", + "required": true, + "description": "The unique identifier for the worker to retrieve details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'workers-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.GetWorkerById", + "parameters": { + "worker_id": { + "value": "worker_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWorkerHealthStatus", + "qualifiedName": "ArcadeEngineApi.GetWorkerHealthStatus", + "fullyQualifiedName": "ArcadeEngineApi.GetWorkerHealthStatus@1.0.0", + "description": "Retrieve the health status of a worker.\n\nThis tool is used to check the health status of a specific worker by their ID. It should be called when you need to monitor or verify the operational status of a worker.", + "parameters": [ + { + "name": "worker_id", + "type": "string", + "required": true, + "description": "The unique identifier for the worker whose health status you want to check.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'workers-health'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.GetWorkerHealthStatus", + "parameters": { + "worker_id": { + "value": "worker_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAccessibleProjects", + "qualifiedName": "ArcadeEngineApi.ListAccessibleProjects", + "fullyQualifiedName": "ArcadeEngineApi.ListAccessibleProjects@1.0.0", + "description": "Retrieve a list of accessible projects.\n\nThis tool returns all projects that the caller has access to. It is useful for identifying projects available to a specific user or account.", + "parameters": [ + { + "name": "bearer_token", + "type": "string", + "required": true, + "description": "A string containing the Bearer (JWT) token for authentication.", + "enum": null, + "inferrable": true + }, + { + "name": "items_to_skip", + "type": "integer", + "required": false, + "description": "The number of projects to skip before starting to collect the result set.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_to_return", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of projects to return. Must be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-projects'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.ListAccessibleProjects", + "parameters": { + "bearer_token": { + "value": "eyJz93a...k4laUWw", + "type": "string", + "required": true + }, + "items_to_skip": { + "value": 5, + "type": "integer", + "required": false + }, + "maximum_items_to_return": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAuthConnections", + "qualifiedName": "ArcadeEngineApi.ListAuthConnections", + "fullyQualifiedName": "ArcadeEngineApi.ListAuthConnections@1.0.0", + "description": "Retrieve all authentication connections for users.\n\nUse this tool to get a comprehensive list of all authentication connections associated with users. Ideal for managing or auditing user authentication setups.", + "parameters": [ + { + "name": "page_offset", + "type": "integer", + "required": false, + "description": "The starting point in the list for pagination. Useful for retrieving subsequent pages of data.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Number of auth connections to return per page. Use to control the size of the result set.", + "enum": null, + "inferrable": true + }, + { + "name": "provider_id", + "type": "string", + "required": false, + "description": "Unique identifier for the authentication provider.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": false, + "description": "The unique identifier for the user to list authentication connections for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'auth-connections-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.ListAuthConnections", + "parameters": { + "page_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "provider_id": { + "value": "auth_provider_123", + "type": "string", + "required": false + }, + "user_id": { + "value": "user_456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAvailableAuthProviders", + "qualifiedName": "ArcadeEngineApi.ListAvailableAuthProviders", + "fullyQualifiedName": "ArcadeEngineApi.ListAvailableAuthProviders@1.0.0", + "description": "Retrieve a list of available authentication providers.\n\nThis tool fetches a paginated list of authentication providers accessible to the caller. It should be used when identifying or managing auth providers in the system.", + "parameters": [], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'auth-providers-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.ListAvailableAuthProviders", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWorkers", + "qualifiedName": "ArcadeEngineApi.ListWorkers", + "fullyQualifiedName": "ArcadeEngineApi.ListWorkers@1.0.0", + "description": "Retrieve a list of all workers with their definitions.\n\nUse this tool to get information about all available workers and their definitions. This can be helpful for managing or reviewing the current worker pool.", + "parameters": [ + { + "name": "number_of_items_to_return", + "type": "integer", + "required": false, + "description": "The maximum number of worker items to return, with a default of 25 and a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "start_offset", + "type": "integer", + "required": false, + "description": "Offset from the start of the list for pagination. Defaults to 0.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'workers-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.ListWorkers", + "parameters": { + "number_of_items_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "start_offset": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveFormattedToolsList", + "qualifiedName": "ArcadeEngineApi.RetrieveFormattedToolsList", + "fullyQualifiedName": "ArcadeEngineApi.RetrieveFormattedToolsList@1.0.0", + "description": "Fetches a formatted list of tools from engine configuration.\n\nUse this tool to retrieve a page of tools from the engine's configuration, which can be filtered by toolkit and formatted for a specific provider.", + "parameters": [ + { + "name": "filter_by_toolkit", + "type": "string", + "required": false, + "description": "Specify the toolkit name to filter the list of tools.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_items_to_return", + "type": "integer", + "required": false, + "description": "Specify the number of tools to return. Defaults to 25, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "offset_start_index", + "type": "integer", + "required": false, + "description": "Offset from the start of the tools list. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "provider_format", + "type": "string", + "required": false, + "description": "Format the tools according to the provider's specifications. Accepts a string value.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": false, + "description": "The ID of the user for whom the tool list is to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tools-list-formatted'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.RetrieveFormattedToolsList", + "parameters": { + "filter_by_toolkit": { + "value": "game_development", + "type": "string", + "required": false + }, + "number_of_items_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "offset_start_index": { + "value": 10, + "type": "integer", + "required": false + }, + "provider_format": { + "value": "json", + "type": "string", + "required": false + }, + "user_identifier": { + "value": "user_12345", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TestWorkerConnection", + "qualifiedName": "ArcadeEngineApi.TestWorkerConnection", + "fullyQualifiedName": "ArcadeEngineApi.TestWorkerConnection@1.0.0", + "description": "Test a worker connection before adding it to the system.\n\nUse this tool to verify if a worker connection is functioning properly before integrating it into your system.", + "parameters": [ + { + "name": "worker_connection_type", + "type": "string", + "required": true, + "description": "Specify the type of worker connection to test. It must be a string value indicating the category or mode of the worker.", + "enum": null, + "inferrable": true + }, + { + "name": "http_uri", + "type": "string", + "required": false, + "description": "Specify the HTTP URI of the worker to test the connection.", + "enum": null, + "inferrable": true + }, + { + "name": "mcp_uri", + "type": "string", + "required": false, + "description": "The URI for the MCP connection required to test a worker connection.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'workers-test'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.TestWorkerConnection", + "parameters": { + "worker_connection_type": { + "value": "REST", + "type": "string", + "required": true + }, + "http_uri": { + "value": "http://example.com/api/worker", + "type": "string", + "required": false + }, + "mcp_uri": { + "value": "http://example.com/api/mcp", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSessionVerificationSettings", + "qualifiedName": "ArcadeEngineApi.UpdateSessionVerificationSettings", + "fullyQualifiedName": "ArcadeEngineApi.UpdateSessionVerificationSettings@1.0.0", + "description": "Update session verification settings for a user.\n\nThis tool updates the session verification settings for the user or entity making the call. It should be used when there's a need to modify how sessions are verified, reflecting any new security or configuration preferences.", + "parameters": [ + { + "name": "unsafe_skip_verification", + "type": "boolean", + "required": false, + "description": "Set to true to skip the session verification, making it unsafe.", + "enum": null, + "inferrable": true + }, + { + "name": "verifier_url", + "type": "string", + "required": false, + "description": "The URL of the verifier service used for session verification. Provide a valid URL.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ARCADE_API_KEY"], + "secretsInfo": [ + { + "name": "ARCADE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session-verification-settings-update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ArcadeEngineApi.UpdateSessionVerificationSettings", + "parameters": { + "unsafe_skip_verification": { + "value": false, + "type": "boolean", + "required": false + }, + "verifier_url": { + "value": "https://example.com/verifier", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## Secrets\n\nThis MCP Server requires the `ARCADE_API_KEY` secret to be configured. Learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets).\n\n### Getting your Arcade API Key\n\nTo use the Arcade Engine API MCP Server, you need an Arcade API key. This key authenticates your requests to the Arcade Engine.\n\nLearn how to create and manage your Arcade API keys in the [API Keys documentation](/get-started/setup/api-keys).", + "header": "## Secrets" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:25:46.352Z", + "summary": "The Arcade Engine API toolkit provides developers with the ability to seamlessly integrate language models (LLMs) with the Arcade Engine API, enabling dynamic interactions and tool management.\n\n**Capabilities**\n- Authorize users and workers for specific tools.\n- Retrieve detailed information about tools, projects, and workers.\n- Monitor health statuses of the Arcade Engine and workers.\n- Execute tools with specified parameters and manage scheduled executions.\n- Manage user authentication connections and configurations.\n\n**OAuth**\nThere is no OAuth authentication for this toolkit.\n\n**Secrets**\nUtilize the `ARCADE_API_KEY` to access secure endpoints and manage sensitive operations within the system." +} diff --git a/data/toolkits/asana.json b/data/toolkits/asana.json new file mode 100644 index 000000000..37d8bd708 --- /dev/null +++ b/data/toolkits/asana.json @@ -0,0 +1,1518 @@ +{ + "id": "Asana", + "label": "Asana", + "version": "1.1.1", + "description": "Arcade tools designed for LLMs to interact with Asana", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/asana.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/asana", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "asana", + "allScopes": ["default"] + }, + "tools": [ + { + "name": "AttachFileToTask", + "qualifiedName": "Asana.AttachFileToTask", + "fullyQualifiedName": "Asana.AttachFileToTask@1.1.1", + "description": "Attaches a file to an Asana task\n\nProvide exactly one of file_content_str, file_content_base64, or file_content_url, never more\nthan one.\n\n- Use file_content_str for text files (will be encoded using file_encoding)\n- Use file_content_base64 for binary files like images, PDFs, etc.\n- Use file_content_url if the file is hosted on an external URL", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The ID of the task to attach the file to.", + "enum": null, + "inferrable": true + }, + { + "name": "file_name", + "type": "string", + "required": true, + "description": "The name of the file to attach with format extension. E.g. 'Image.png' or 'Report.pdf'.", + "enum": null, + "inferrable": true + }, + { + "name": "file_content_str", + "type": "string", + "required": false, + "description": "The string contents of the file to attach. Use this if the file is a text file. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "file_content_base64", + "type": "string", + "required": false, + "description": "The base64-encoded binary contents of the file. Use this for binary files like images or PDFs. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "file_content_url", + "type": "string", + "required": false, + "description": "The URL of the file to attach. Use this if the file is hosted on an external URL. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "file_encoding", + "type": "string", + "required": false, + "description": "The encoding of the file to attach. Only used with file_content_str. Defaults to 'utf-8'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The task with the file attached." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.AttachFileToTask", + "parameters": { + "task_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "file_name": { + "value": "Document.pdf", + "type": "string", + "required": true + }, + "file_content_str": { + "value": null, + "type": "string", + "required": false + }, + "file_content_base64": { + "value": "JVBERi0xLjQKJcfs...", + "type": "string", + "required": false + }, + "file_content_url": { + "value": null, + "type": "string", + "required": false + }, + "file_encoding": { + "value": "utf-8", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTag", + "qualifiedName": "Asana.CreateTag", + "fullyQualifiedName": "Asana.CreateTag@1.1.1", + "description": "Create a tag in Asana", + "parameters": [ + { + "name": "name", + "type": "string", + "required": true, + "description": "The name of the tag to create. Length must be between 1 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "The description of the tag to create. Defaults to None (no description).", + "enum": null, + "inferrable": true + }, + { + "name": "color", + "type": "string", + "required": false, + "description": "The color of the tag to create. Defaults to None (no color).", + "enum": [ + "dark-green", + "dark-red", + "dark-blue", + "dark-purple", + "dark-pink", + "dark-orange", + "dark-teal", + "dark-brown", + "dark-warm-gray", + "light-green", + "light-red", + "light-blue", + "light-purple", + "light-pink", + "light-orange", + "light-teal", + "light-brown", + "light-warm-gray" + ], + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "The ID of the workspace to create the tag in. If not provided, it will associated the tag to a current workspace, if there's only one. Otherwise, it will raise an error.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The created tag." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.CreateTag", + "parameters": { + "name": { + "value": "Urgent", + "type": "string", + "required": true + }, + "description": { + "value": "Tasks that need immediate attention", + "type": "string", + "required": false + }, + "color": { + "value": "#FF0000", + "type": "string", + "required": false + }, + "workspace_id": { + "value": "1234567890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTask", + "qualifiedName": "Asana.CreateTask", + "fullyQualifiedName": "Asana.CreateTask@1.1.1", + "description": "Creates a task in Asana\n\nThe task must be associated to at least one of the following: parent_task_id, project, or\nworkspace_id. If none of these are provided and the account has only one workspace, the task\nwill be associated to that workspace. If the account has multiple workspaces, an error will\nbe raised with a list of available workspaces.", + "parameters": [ + { + "name": "name", + "type": "string", + "required": true, + "description": "The name of the task", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "The start date of the task in the format YYYY-MM-DD. Example: '2025-01-01'. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "due_date", + "type": "string", + "required": false, + "description": "The due date of the task in the format YYYY-MM-DD. Example: '2025-01-01'. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "The description of the task. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_task_id", + "type": "string", + "required": false, + "description": "The ID of the parent task. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "The ID of the workspace to associate the task to. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "project", + "type": "string", + "required": false, + "description": "The ID or name of the project to associate the task to. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_id", + "type": "string", + "required": false, + "description": "The ID of the user to assign the task to. Defaults to 'me', which assigns the task to the current user.", + "enum": null, + "inferrable": true + }, + { + "name": "tags", + "type": "array", + "innerType": "string", + "required": false, + "description": "The tags to associate with the task. Multiple tags can be provided in the list. Each item in the list can be a tag name (e.g. 'My Tag') or a tag ID (e.g. '1234567890'). If a tag name does not exist, it will be automatically created with the new task. Defaults to None (no tags associated).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Creates a task in Asana" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.CreateTask", + "parameters": { + "name": { + "value": "Design Homepage", + "type": "string", + "required": true + }, + "start_date": { + "value": "2025-01-01", + "type": "string", + "required": false + }, + "due_date": { + "value": "2025-01-10", + "type": "string", + "required": false + }, + "description": { + "value": "Create a new design for the homepage with updated branding.", + "type": "string", + "required": false + }, + "parent_task_id": { + "value": "9876543210", + "type": "string", + "required": false + }, + "workspace_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "project": { + "value": "4567890123", + "type": "string", + "required": false + }, + "assignee_id": { + "value": "me", + "type": "string", + "required": false + }, + "tags": { + "value": ["design", "homepage", "urgent"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectById", + "qualifiedName": "Asana.GetProjectById", + "fullyQualifiedName": "Asana.GetProjectById@1.1.1", + "description": "Get an Asana project by its ID", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get a project by its ID" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.GetProjectById", + "parameters": { + "project_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSubtasksFromATask", + "qualifiedName": "Asana.GetSubtasksFromATask", + "fullyQualifiedName": "Asana.GetSubtasksFromATask@1.1.1", + "description": "Get the subtasks of a task", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The ID of the task to get the subtasks of.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of subtasks to return. Min of 1, max of 100. Defaults to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to retrieve the next page of subtasks. Defaults to None (start from the first page of subtasks)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The subtasks of the task." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.GetSubtasksFromATask", + "parameters": { + "task_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTagById", + "qualifiedName": "Asana.GetTagById", + "fullyQualifiedName": "Asana.GetTagById@1.1.1", + "description": "Get an Asana tag by its ID", + "parameters": [ + { + "name": "tag_id", + "type": "string", + "required": true, + "description": "The ID of the Asana tag to get", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get an Asana tag by its ID" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.GetTagById", + "parameters": { + "tag_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaskById", + "qualifiedName": "Asana.GetTaskById", + "fullyQualifiedName": "Asana.GetTaskById@1.1.1", + "description": "Get a task by its ID", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The ID of the task to get.", + "enum": null, + "inferrable": true + }, + { + "name": "max_subtasks", + "type": "integer", + "required": false, + "description": "The maximum number of subtasks to return. Min of 0 (no subtasks), max of 100. Defaults to 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The task with the given ID." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.GetTaskById", + "parameters": { + "task_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "max_subtasks": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTasksWithoutId", + "qualifiedName": "Asana.GetTasksWithoutId", + "fullyQualifiedName": "Asana.GetTasksWithoutId@1.1.1", + "description": "Search for tasks", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Keywords to search for tasks. Matches against the task name and description.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "The workspace ID to search for tasks. Defaults to None. If not provided and the user has only one workspace, it will use that workspace. If not provided and the user has multiple workspaces, it will raise an error listing the available workspaces.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_id", + "type": "string", + "required": false, + "description": "The ID of the user to filter tasks assigned to. Defaults to None (does not filter by assignee).", + "enum": null, + "inferrable": true + }, + { + "name": "project", + "type": "string", + "required": false, + "description": "The ID or name of the project to filter tasks. Defaults to None (searches tasks associated to any project or no project).", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "Restricts the search to tasks associated to the given team ID. Defaults to None (searches tasks associated to any team).", + "enum": null, + "inferrable": true + }, + { + "name": "tags", + "type": "array", + "innerType": "string", + "required": false, + "description": "Restricts the search to tasks associated to the given tags. Each item in the list can be a tag name (e.g. 'My Tag') or a tag ID (e.g. '1234567890'). Defaults to None (searches tasks associated to any tag or no tag).", + "enum": null, + "inferrable": true + }, + { + "name": "due_on", + "type": "string", + "required": false, + "description": "Match tasks that are due exactly on this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (searches tasks due on any date or without a due date).", + "enum": null, + "inferrable": true + }, + { + "name": "due_on_or_after", + "type": "string", + "required": false, + "description": "Match tasks that are due on OR AFTER this date. Format: YYYY-MM-DD. Ex: '2025-01-01' Defaults to None (searches tasks due on any date or without a due date).", + "enum": null, + "inferrable": true + }, + { + "name": "due_on_or_before", + "type": "string", + "required": false, + "description": "Match tasks that are due on OR BEFORE this date. Format: YYYY-MM-DD. Ex: '2025-01-01' Defaults to None (searches tasks due on any date or without a due date).", + "enum": null, + "inferrable": true + }, + { + "name": "start_on", + "type": "string", + "required": false, + "description": "Match tasks that started on this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (searches tasks started on any date or without a start date).", + "enum": null, + "inferrable": true + }, + { + "name": "start_on_or_after", + "type": "string", + "required": false, + "description": "Match tasks that started on OR AFTER this date. Format: YYYY-MM-DD. Ex: '2025-01-01' Defaults to None (searches tasks started on any date or without a start date).", + "enum": null, + "inferrable": true + }, + { + "name": "start_on_or_before", + "type": "string", + "required": false, + "description": "Match tasks that started on OR BEFORE this date. Format: YYYY-MM-DD. Ex: '2025-01-01' Defaults to None (searches tasks started on any date or without a start date).", + "enum": null, + "inferrable": true + }, + { + "name": "completed", + "type": "boolean", + "required": false, + "description": "Match tasks that are completed. Defaults to None (does not filter by completion status).", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of tasks to return. Min of 1, max of 100. Defaults to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "The field to sort the tasks by. Defaults to TaskSortBy.MODIFIED_AT.", + "enum": [ + "due_date", + "created_at", + "completed_at", + "modified_at", + "likes" + ], + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "The order to sort the tasks by. Defaults to SortOrder.DESCENDING.", + "enum": ["ascending", "descending"], + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The tasks that match the query." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.GetTasksWithoutId", + "parameters": { + "keywords": { + "value": "project update", + "type": "string", + "required": false + }, + "workspace_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "assignee_id": { + "value": "987654321", + "type": "string", + "required": false + }, + "project": { + "value": "Project Alpha", + "type": "string", + "required": false + }, + "team_id": { + "value": "team_1", + "type": "string", + "required": false + }, + "tags": { + "value": ["urgent", "review"], + "type": "array", + "required": false + }, + "due_on": { + "value": "2025-12-31", + "type": "string", + "required": false + }, + "due_on_or_after": { + "value": "2025-11-01", + "type": "string", + "required": false + }, + "due_on_or_before": { + "value": "2026-01-15", + "type": "string", + "required": false + }, + "start_on": { + "value": "2025-01-01", + "type": "string", + "required": false + }, + "start_on_or_after": { + "value": "2025-02-01", + "type": "string", + "required": false + }, + "start_on_or_before": { + "value": "2025-12-01", + "type": "string", + "required": false + }, + "completed": { + "value": true, + "type": "boolean", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_by": { + "value": "created_at", + "type": "string", + "required": false + }, + "sort_order": { + "value": "ASCENDING", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamById", + "qualifiedName": "Asana.GetTeamById", + "fullyQualifiedName": "Asana.GetTeamById@1.1.1", + "description": "Get an Asana team by its ID", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The ID of the Asana team to get", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get an Asana team by its ID" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.GetTeamById", + "parameters": { + "team_id": { + "value": "1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserById", + "qualifiedName": "Asana.GetUserById", + "fullyQualifiedName": "Asana.GetUserById@1.1.1", + "description": "Get a user by ID", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The user ID to get.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The user information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.GetUserById", + "parameters": { + "user_id": { + "value": "1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceById", + "qualifiedName": "Asana.GetWorkspaceById", + "fullyQualifiedName": "Asana.GetWorkspaceById@1.1.1", + "description": "Get an Asana workspace by its ID", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The ID of the Asana workspace to get", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get an Asana workspace by its ID" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.GetWorkspaceById", + "parameters": { + "workspace_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListProjects", + "qualifiedName": "Asana.ListProjects", + "fullyQualifiedName": "Asana.ListProjects@1.1.1", + "description": "List projects in Asana", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The team ID to get projects from. Defaults to None (does not filter by team).", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "The workspace ID to get projects from. Defaults to None. If not provided and the user has only one workspace, it will use that workspace. If not provided and the user has multiple workspaces, it will raise an error listing the available workspaces.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of projects to return. Min is 1, max is 100. Defaults to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to retrieve the next page of projects. Defaults to None (start from the first page of projects).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List projects in Asana associated to teams the current user is a member of" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.ListProjects", + "parameters": { + "team_id": { + "value": "123456", + "type": "string", + "required": false + }, + "workspace_id": { + "value": "654321", + "type": "string", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTags", + "qualifiedName": "Asana.ListTags", + "fullyQualifiedName": "Asana.ListTags@1.1.1", + "description": "List tags in an Asana workspace", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "The workspace ID to retrieve tags from. Defaults to None. If not provided and the user has only one workspace, it will use that workspace. If not provided and the user has multiple workspaces, it will raise an error listing the available workspaces.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of tags to return. Min is 1, max is 100. Defaults to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to retrieve the next page of tags. Defaults to None (start from the first page of tags)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List tags in an Asana workspace" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.ListTags", + "parameters": { + "workspace_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": "abc123token", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeams", + "qualifiedName": "Asana.ListTeams", + "fullyQualifiedName": "Asana.ListTeams@1.1.1", + "description": "List teams in an Asana workspace", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "The workspace ID to list teams from. Defaults to None. If no workspace ID is provided, it will use the current user's workspace, if there's only one. If the user has multiple workspaces, it will raise an error listing the available workspaces.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of teams to return. Min is 1, max is 100. Defaults to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to retrieve the next page of teams. Defaults to None (start from the first page of teams)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List teams in an Asana workspace" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.ListTeams", + "parameters": { + "workspace_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": "abc123token", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeamsTheCurrentUserIsAMemberOf", + "qualifiedName": "Asana.ListTeamsTheCurrentUserIsAMemberOf", + "fullyQualifiedName": "Asana.ListTeamsTheCurrentUserIsAMemberOf@1.1.1", + "description": "List teams in Asana that the current user is a member of", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "The workspace ID to list teams from. Defaults to None. If no workspace ID is provided, it will use the current user's workspace , if there's only one. If the user has multiple workspaces, it will raise an error.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of teams to return. Min is 1, max is 100. Defaults to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to retrieve the next page of teams. Defaults to None (start from the first page of teams)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List teams in Asana that the current user is a member of" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.ListTeamsTheCurrentUserIsAMemberOf", + "parameters": { + "workspace_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": "abcde12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUsers", + "qualifiedName": "Asana.ListUsers", + "fullyQualifiedName": "Asana.ListUsers@1.1.1", + "description": "List users in Asana", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "The workspace ID to list users from. Defaults to None. If no workspace ID is provided, it will use the current user's workspace , if there's only one. If the user has multiple workspaces, it will raise an error.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of users to retrieve. Min is 1, max is 100. Defaults to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to retrieve the next page of users. Defaults to None (start from the first page of users)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List users in Asana" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.ListUsers", + "parameters": { + "workspace_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": "abc123token", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWorkspaces", + "qualifiedName": "Asana.ListWorkspaces", + "fullyQualifiedName": "Asana.ListWorkspaces@1.1.1", + "description": "List workspaces in Asana that are visible to the authenticated user", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of workspaces to return. Min is 1, max is 100. Defaults to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to retrieve the next page of workspaces. Defaults to None (start from the first page of workspaces)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List workspaces in Asana that are visible to the authenticated user" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.ListWorkspaces", + "parameters": { + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": "abc123token", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MarkTaskAsCompleted", + "qualifiedName": "Asana.MarkTaskAsCompleted", + "fullyQualifiedName": "Asana.MarkTaskAsCompleted@1.1.1", + "description": "Mark a task in Asana as completed", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The ID of the task to mark as completed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The task marked as completed." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.MarkTaskAsCompleted", + "parameters": { + "task_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTask", + "qualifiedName": "Asana.UpdateTask", + "fullyQualifiedName": "Asana.UpdateTask@1.1.1", + "description": "Updates a task in Asana", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The ID of the task to update.", + "enum": null, + "inferrable": true + }, + { + "name": "name", + "type": "string", + "required": false, + "description": "The new name of the task. Defaults to None (does not change the current name).", + "enum": null, + "inferrable": true + }, + { + "name": "completed", + "type": "boolean", + "required": false, + "description": "The new completion status of the task. Provide True to mark the task as completed, False to mark it as not completed. Defaults to None (does not change the current completion status).", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "The new start date of the task in the format YYYY-MM-DD. Example: '2025-01-01'. Defaults to None (does not change the current start date).", + "enum": null, + "inferrable": true + }, + { + "name": "due_date", + "type": "string", + "required": false, + "description": "The new due date of the task in the format YYYY-MM-DD. Example: '2025-01-01'. Defaults to None (does not change the current due date).", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "The new description of the task. Defaults to None (does not change the current description).", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_id", + "type": "string", + "required": false, + "description": "The ID of the new user to assign the task to. Provide 'me' to assign the task to the current user. Defaults to None (does not change the current assignee).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["default"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Updates a task in Asana" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Asana.UpdateTask", + "parameters": { + "task_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "name": { + "value": "Update Asana task example", + "type": "string", + "required": false + }, + "completed": { + "value": true, + "type": "boolean", + "required": false + }, + "start_date": { + "value": "2023-11-01", + "type": "string", + "required": false + }, + "due_date": { + "value": "2023-11-10", + "type": "string", + "required": false + }, + "description": { + "value": "This is an updated description for the task.", + "type": "string", + "required": false + }, + "assignee_id": { + "value": "me", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Asana MCP Server uses the [Asana auth provider](/references/auth-providers/asana) to connect to users' Asana accounts.", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:25:43.078Z", + "summary": "Arcade offers a toolkit for seamless interaction with Asana, enabling developers to automate project management tasks. The toolkit supports various functionalities tailored for managing tasks, tags, and projects efficiently.\n\n**Capabilities**\n- Create, update, and manage tasks and subtasks within Asana.\n- Attach files to tasks in various formats.\n- Retrieve detailed information about projects, teams, and users.\n- List and create tags for organized task management.\n- Mark tasks as completed to streamline workflows.\n\n**OAuth**\n- **Provider**: Asana\n- **Scopes**: default\n\n**Secrets**\n- No secret types are utilized in this toolkit." +} diff --git a/data/toolkits/asanaapi.json b/data/toolkits/asanaapi.json new file mode 100644 index 000000000..cded60808 --- /dev/null +++ b/data/toolkits/asanaapi.json @@ -0,0 +1,17615 @@ +{ + "id": "AsanaApi", + "label": "Asana API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the Asana API.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/asana.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/asana-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "asana", + "allScopes": [ + "attachments:delete", + "attachments:read", + "custom_fields:read", + "custom_fields:write", + "goals:read", + "portfolios:read", + "portfolios:write", + "project_templates:read", + "projects:delete", + "projects:read", + "projects:write", + "stories:read", + "stories:write", + "tags:read", + "tags:write", + "task_templates:read", + "tasks:delete", + "tasks:read", + "tasks:write", + "team_memberships:read", + "teams:read", + "time_tracking_entries:read", + "users:read", + "webhooks:delete", + "webhooks:read", + "webhooks:write", + "workspace.typeahead:read", + "workspaces:read" + ] + }, + "tools": [ + { + "name": "AddAsanaTask", + "qualifiedName": "AsanaApi.AddAsanaTask", + "fullyQualifiedName": "AsanaApi.AddAsanaTask@1.0.0", + "description": "Create a new task in Asana.\n\n Use this tool to create a new task in a specified Asana workspace. You can set various fields on the task upon creation. It is required to specify a workspace, which cannot be changed later, unless specified through projects or a parent task.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional task properties to include in the response. Excludes some properties by default. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable to receive the response in a readable format with line breaks and indentation. Use for debugging as it increases response time and size. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddAsanaTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "include_optional_fields": { + "value": ["assignee", "due_date", "tags"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Task\", \"notes\": \"Description of the new task\", \"projects\": [\"1234567890\"], \"assignee\": \"user@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddCustomFieldSettingToProject", + "qualifiedName": "AsanaApi.AddCustomFieldSettingToProject", + "fullyQualifiedName": "AsanaApi.AddCustomFieldSettingToProject@1.0.0", + "description": "Add a custom field setting to a project in Asana.\n\n Use this tool to associate a custom field with a specific project in Asana. This operation requires the 'projects:write' scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_global_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the project in Asana. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include in the response, typically those excluded by default. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a readable output format with line breaks and indentation. Increases response time and size, so use it mainly for debugging. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addCustomFieldSettingForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddCustomFieldSettingToProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_global_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["color", "html_notes"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"custom_field_id\":\"9876543210\",\"value\":\"new_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddCustomFieldToPortfolio", + "qualifiedName": "AsanaApi.AddCustomFieldToPortfolio", + "fullyQualifiedName": "AsanaApi.AddCustomFieldToPortfolio@1.0.0", + "description": "Add a custom field setting to an Asana portfolio.\n\n Use this tool to associate a custom field with a specific portfolio in Asana. This requires portfolios:write access scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "portfolio_identifier", + "type": "string", + "required": false, + "description": "Globally unique identifier for the portfolio to which the custom field will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_formatting_enabled", + "type": "boolean", + "required": false, + "description": "Set to true to format the response for better readability, useful for debugging. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["portfolios:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addCustomFieldSettingForPortfolio'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddCustomFieldToPortfolio", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "portfolio_identifier": { + "value": "123456789", + "type": "string", + "required": false + }, + "pretty_formatting_enabled": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"custom_field_id\": \"987654321\", \"value\": \"Example Value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddDependentsToTask", + "qualifiedName": "AsanaApi.AddDependentsToTask", + "fullyQualifiedName": "AsanaApi.AddDependentsToTask@1.0.0", + "description": "Add dependents to an Asana task.\n\nUse this tool to mark a set of Asana tasks as dependents of another task, ensuring they are not already listed. Suitable for cases where task dependencies are being managed and a task can have up to 30 dependents and dependencies combined.", + "parameters": [ + { + "name": "target_task_id", + "type": "string", + "required": true, + "description": "The unique identifier for the task to add dependents to.", + "enum": null, + "inferrable": true + }, + { + "name": "dependent_task_gids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of task GIDs to be marked as dependents for this task.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to format the response for readability. Use during debugging, as it increases response time and size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addDependentsForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddDependentsToTask", + "parameters": { + "target_task_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "dependent_task_gids": { + "value": ["987654321", "123098456", "456789123"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddEnumOptionToCustomField", + "qualifiedName": "AsanaApi.AddEnumOptionToCustomField", + "fullyQualifiedName": "AsanaApi.AddEnumOptionToCustomField@1.0.0", + "description": "Add an enum option to a custom field in Asana.\n\n This tool adds a new enum option to a custom field in Asana, updating the list of enum options. Use this when managing custom fields and needing to expand the choices available. Requires 'custom_fields:write' scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "custom_field_identifier", + "type": "string", + "required": false, + "description": "Globally unique identifier for the custom field in Asana. Use this to specify the field you want to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to include in the response that are excluded by default. Provide these as an array of strings. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable to receive a readable JSON response with line breaks and indentation. Use primarily for debugging as it increases response size and time. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["custom_fields:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createEnumOptionForCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddEnumOptionToCustomField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "custom_field_identifier": { + "value": "1234567890", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["color", "is_enabled"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Option\", \"enabled\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddFollowersToGoal", + "qualifiedName": "AsanaApi.AddFollowersToGoal", + "fullyQualifiedName": "AsanaApi.AddFollowersToGoal@1.0.0", + "description": "Add followers to a specific goal in Asana.\n\nUse this tool to add followers to a specific goal in Asana. It returns the updated goal details after successfully adding the followers.", + "parameters": [ + { + "name": "goal_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the goal to which you want to add followers.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive the response in a human-readable format with proper indentation and line breaks. Useful for debugging but increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_properties_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response for additional details.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifiers_array", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of user identifiers to add as followers. These can be 'me', emails, or user gids.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addFollowers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddFollowersToGoal", + "parameters": { + "goal_unique_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "optional_properties_to_include": { + "value": ["name", "followers"], + "type": "array", + "required": false + }, + "user_identifiers_array": { + "value": ["me", "user@example.com", "123456"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddFollowersToProject", + "qualifiedName": "AsanaApi.AddFollowersToProject", + "fullyQualifiedName": "AsanaApi.AddFollowersToProject@1.0.0", + "description": "Add specified users as followers to an Asana project.\n\nThis tool adds a list of users as followers to a specified project in Asana. Followers receive \"tasks added\" notifications and are made members of the project if they aren't already. Use this when needing to update project followers.", + "parameters": [ + { + "name": "project_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project to which followers will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty JSON output for readability, useful for debugging. May slow responses.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response to enrich data output.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifiers_to_add_as_followers", + "type": "string", + "required": false, + "description": "An array of user identifiers to add as followers. Accepts 'me', email addresses, or user gids.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addFollowersForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddFollowersToProject", + "parameters": { + "project_unique_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "optional_fields_to_include": { + "value": ["name", "email", "photo"], + "type": "array", + "required": false + }, + "user_identifiers_to_add_as_followers": { + "value": "user1@example.com,user2@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddFollowersToTask", + "qualifiedName": "AsanaApi.AddFollowersToTask", + "fullyQualifiedName": "AsanaApi.AddFollowersToTask@1.0.0", + "description": "Adds followers to an Asana task.\n\nUse this tool to add one or more followers to a specific task in Asana. The request will return the updated task record, reflecting the changes.", + "parameters": [ + { + "name": "task_gid", + "type": "string", + "required": true, + "description": "The unique identifier of the task to add followers to. This is required to specify which task the followers should be added to.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enables pretty formatting for the response, adding line breaks and indentation. Useful for debugging but increases response size.", + "enum": null, + "inferrable": true + }, + { + "name": "followers_identification", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings identifying users, which can be 'me', an email, or a user gid.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional task properties to include in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addFollowersForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddFollowersToTask", + "parameters": { + "task_gid": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "followers_identification": { + "value": ["me", "user@example.com", "987654321"], + "type": "array", + "required": false + }, + "include_optional_properties": { + "value": ["completed", "due_on"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddItemToPortfolio", + "qualifiedName": "AsanaApi.AddItemToPortfolio", + "fullyQualifiedName": "AsanaApi.AddItemToPortfolio@1.0.0", + "description": "Add an item to a portfolio in Asana.\n\nUse this tool to add an item to a specified portfolio in Asana. Requires 'portfolios:write' permission.", + "parameters": [ + { + "name": "portfolio_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the portfolio to which the item will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "add_after_item_id", + "type": "string", + "required": false, + "description": "ID of an item in the portfolio where the new item will be added after. Cannot be used with 'add_before_item_id'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty JSON formatting for debugging. This increases response size and processing time.", + "enum": null, + "inferrable": true + }, + { + "name": "insert_item_before_id", + "type": "string", + "required": false, + "description": "ID of an existing portfolio item. The new item will be placed before this item. Cannot be used with `insert_after_id`.", + "enum": null, + "inferrable": true + }, + { + "name": "item_to_add_to_portfolio", + "type": "string", + "required": false, + "description": "The ID of the item to be added to the Asana portfolio.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["portfolios:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addItemForPortfolio'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddItemToPortfolio", + "parameters": { + "portfolio_unique_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "add_after_item_id": { + "value": "9876543210fedcba", + "type": "string", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "insert_item_before_id": { + "value": "1122334455667788", + "type": "string", + "required": false + }, + "item_to_add_to_portfolio": { + "value": "9988776655443322", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddMembersToProject", + "qualifiedName": "AsanaApi.AddMembersToProject", + "fullyQualifiedName": "AsanaApi.AddMembersToProject@1.0.0", + "description": "Add specified users as members of a project in Asana.\n\nUse this tool to add users as members of a specific project. This may also add users as followers depending on their notification settings.", + "parameters": [ + { + "name": "project_unique_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A comma-separated list of optional properties to include in the response. This adds excluded properties by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output", + "type": "boolean", + "required": false, + "description": "If true, the response is formatted with line breaks and indentation for readability. Use mainly for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifiers_array", + "type": "string", + "required": false, + "description": "An array of strings identifying users to be added to the project. Values can be 'me', an email, or a user GID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addMembersForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddMembersToProject", + "parameters": { + "project_unique_identifier": { + "value": "1209999999999999", + "type": "string", + "required": true + }, + "include_optional_properties": { + "value": ["email", "photo"], + "type": "array", + "required": false + }, + "pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "user_identifiers_array": { + "value": "user@example.com,1234567890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddPortfolioMembers", + "qualifiedName": "AsanaApi.AddPortfolioMembers", + "fullyQualifiedName": "AsanaApi.AddPortfolioMembers@1.0.0", + "description": "Add specified users as members of a portfolio on Asana.\n\nUse this tool to add a list of users as members to a specific portfolio in Asana. This returns the updated portfolio record with the new members included.", + "parameters": [ + { + "name": "portfolio_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the portfolio to which members will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for readable line-breaking and indentation in the response. Use for debugging as it increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional properties to include in the response, provided as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "portfolio_member_identifiers", + "type": "string", + "required": false, + "description": "An array of strings identifying users to add. Use 'me', an email, or user gid.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addMembersForPortfolio'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddPortfolioMembers", + "parameters": { + "portfolio_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["created_at", "modified_at"], + "type": "array", + "required": false + }, + "portfolio_member_identifiers": { + "value": ["user@example.com", "me", "9876543210"], + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddTagToTask", + "qualifiedName": "AsanaApi.AddTagToTask", + "fullyQualifiedName": "AsanaApi.AddTagToTask@1.0.0", + "description": "Add a tag to a specific Asana task.\n\nThis tool adds a tag to a specified task in Asana. It should be used when you need to organize tasks by attaching tags. Requires 'tasks:write' scope.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier of the task to which the tag should be added.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable this to receive a prettified JSON response. Useful for debugging, but increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_gid_to_add", + "type": "string", + "required": false, + "description": "The GID of the tag to be added to the specified task.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addTagForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddTagToTask", + "parameters": { + "task_id": { + "value": "1234567890123456", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "tag_gid_to_add": { + "value": "9876543210987654", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddTaskComment", + "qualifiedName": "AsanaApi.AddTaskComment", + "fullyQualifiedName": "AsanaApi.AddTaskComment@1.0.0", + "description": "Add a comment to a specific task in Asana.\n\n This tool adds a comment to a task in Asana, authored by the authenticated user, and returns the full record of the newly created comment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "target_task_id", + "type": "string", + "required": false, + "description": "The ID of the task to which the comment will be added. It is required to specify the task you want to operate on. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response, as the endpoint excludes some by default. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Formats the response for readability with line breaks and indentation when true. Recommended for debugging due to extra processing time. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["stories:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createStoryForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddTaskComment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "target_task_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["likes", "attachments"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"text\": \"This is a comment on the task.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddTaskDependencies", + "qualifiedName": "AsanaApi.AddTaskDependencies", + "fullyQualifiedName": "AsanaApi.AddTaskDependencies@1.0.0", + "description": "Add dependencies to an Asana task.\n\nMarks specified tasks as dependencies for a given task in Asana, ensuring they aren't already marked. Suitable for managing task workflows where completion order is essential.", + "parameters": [ + { + "name": "task_id_to_modify", + "type": "string", + "required": true, + "description": "The unique identifier of the task to which dependencies will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the response output. Provides improved readability with line breaking and indentation, recommended for debugging only.", + "enum": null, + "inferrable": true + }, + { + "name": "task_dependency_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of task GIDs that the current task depends on. These are required to establish dependencies between tasks in Asana.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addDependenciesForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddTaskDependencies", + "parameters": { + "task_id_to_modify": { + "value": "1234567890123456", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "task_dependency_ids": { + "value": ["9876543210987654", "1234567890987654"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddTaskToProject", + "qualifiedName": "AsanaApi.AddTaskToProject", + "fullyQualifiedName": "AsanaApi.AddTaskToProject@1.0.0", + "description": "Add a task to a specified Asana project.\n\nUse this to add a task to a specific project within Asana, optionally specifying the location. It can also reorder a task within a project. Only one of `insert_before`, `insert_after`, or `section` should be used to specify the location. Tasks can be associated with up to 20 projects.", + "parameters": [ + { + "name": "task_global_id", + "type": "string", + "required": true, + "description": "The unique global ID of the task to be operated on.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for formatted JSON output, making it more readable. Useful for debugging. Note: This increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "insert_after_task_id", + "type": "string", + "required": false, + "description": "Provide the ID of a task in the project to insert this task after, or use 'null' to insert at the beginning.", + "enum": null, + "inferrable": true + }, + { + "name": "insert_task_before", + "type": "string", + "required": false, + "description": "Specify a task ID to insert the new task before it in the project, or use `null` to insert at the end of the list.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_to_add_task", + "type": "string", + "required": false, + "description": "The unique identifier of the project to which the task will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "target_section_id", + "type": "string", + "required": false, + "description": "The ID of the section in the project to insert the task at the bottom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addProjectForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddTaskToProject", + "parameters": { + "task_global_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "insert_after_task_id": { + "value": "abcdef1234567890", + "type": "string", + "required": false + }, + "insert_task_before": { + "value": null, + "type": "string", + "required": false + }, + "project_id_to_add_task": { + "value": "proj_9876543210abcdef", + "type": "string", + "required": false + }, + "target_section_id": { + "value": "section_abcdef123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddTaskToSection", + "qualifiedName": "AsanaApi.AddTaskToSection", + "fullyQualifiedName": "AsanaApi.AddTaskToSection@1.0.0", + "description": "Add a task to a specified section in Asana.\n\nUse this tool to add a task to a specific, existing section in an Asana project. The task will be positioned at the top unless specified otherwise, and will be removed from other sections in the project. It cannot be used to add separators.", + "parameters": [ + { + "name": "section_global_identifier", + "type": "string", + "required": true, + "description": "The globally unique identifier for the section where the task will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the API response, with line breaks and indentation for readability. Use mainly for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "insert_after_task_id", + "type": "string", + "required": false, + "description": "Specify the task ID after which the new task should be inserted within the section. Cannot be used with insert_before.", + "enum": null, + "inferrable": true + }, + { + "name": "insert_task_before", + "type": "string", + "required": false, + "description": "The ID of an existing task in the section to insert the new task before. Cannot be used with insert_task_after.", + "enum": null, + "inferrable": true + }, + { + "name": "task_description", + "type": "string", + "required": false, + "description": "The name or description of the task to be added to the specified section.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addTaskForSection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddTaskToSection", + "parameters": { + "section_global_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "insert_after_task_id": { + "value": "987654321", + "type": "string", + "required": false + }, + "insert_task_before": { + "value": null, + "type": "string", + "required": false + }, + "task_description": { + "value": "Complete quarterly report", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddUserToTeam", + "qualifiedName": "AsanaApi.AddUserToTeam", + "fullyQualifiedName": "AsanaApi.AddUserToTeam@1.0.0", + "description": "Adds a user to a specified team on Asana.\n\nThis tool should be called when you need to add an existing user to an Asana team. The caller must be a member of the team and the user being added must belong to the same organization as the team.", + "parameters": [ + { + "name": "team_unique_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the team to which the user is being added.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a readable response format with line breaks and indentation. Use mainly for debugging due to increased response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include in the response, which are excluded by default.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": false, + "description": "Identifies the user to add. Use \"me\", an email, or the user's global ID (gid).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addUserForTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddUserToTeam", + "parameters": { + "team_unique_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": "email,name,photo,workspaces", + "type": "array", + "required": false + }, + "user_identifier": { + "value": "user@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddUserToWorkspace", + "qualifiedName": "AsanaApi.AddUserToWorkspace", + "fullyQualifiedName": "AsanaApi.AddUserToWorkspace@1.0.0", + "description": "Add a user to an Asana workspace or organization.\n\nUse this tool to add a user to an Asana workspace. The user can be specified by their unique user ID or email. It returns the complete user record of the invited user.", + "parameters": [ + { + "name": "workspace_global_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the workspace or organization in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable this to receive the response in a readable JSON format with line breaks and indentation. This is useful for debugging but can increase response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": false, + "description": "A string identifying a user. Can be \"me\", an email, or a user ID (gid).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addUserForWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AddUserToWorkspace", + "parameters": { + "workspace_global_identifier": { + "value": "1234567890123456", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": "photo,email", + "type": "array", + "required": false + }, + "user_identifier": { + "value": "user@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ApproveAccessRequest", + "qualifiedName": "AsanaApi.ApproveAccessRequest", + "fullyQualifiedName": "AsanaApi.ApproveAccessRequest@1.0.0", + "description": "Approves an access request for a target object in Asana.\n\nUse this tool to approve an access request for a specific target object in Asana. It should be called when a user needs to grant access to a specified request.", + "parameters": [ + { + "name": "access_request_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the specific access request to approve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'approveAccessRequest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.ApproveAccessRequest", + "parameters": { + "access_request_global_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AsanaCreateTeam", + "qualifiedName": "AsanaApi.AsanaCreateTeam", + "fullyQualifiedName": "AsanaApi.AsanaCreateTeam@1.0.0", + "description": "Create a team in your current Asana workspace.\n\n This tool is used to create a new team within the specified Asana workspace. It should be called when you need to organize a group of projects or tasks under a new team entity.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response, enhancing the returned team's details. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output_enabled", + "type": "boolean", + "required": false, + "description": "Set to true to receive pretty, human-readable output with line breaks and indentation. Use for debugging. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AsanaCreateTeam", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "include_optional_properties": { + "value": "description,members", + "type": "array", + "required": false + }, + "pretty_output_enabled": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Team\",\"color\":\"blue\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AsanaDuplicateProject", + "qualifiedName": "AsanaApi.AsanaDuplicateProject", + "fullyQualifiedName": "AsanaApi.AsanaDuplicateProject@1.0.0", + "description": "Initiate duplication of a project in Asana.\n\nCreates and returns a job to handle the asynchronous duplication of a project in Asana. It requires 'projects:write' scope.", + "parameters": [ + { + "name": "project_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project to be duplicated.", + "enum": null, + "inferrable": true + }, + { + "name": "include_elements_in_project_duplication", + "type": "string", + "required": false, + "description": "A comma-separated list of optional elements to include when duplicating a project. Some elements are auto-included and cannot be excluded.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response, such as additional project details.", + "enum": null, + "inferrable": true + }, + { + "name": "last_due_date_in_duplicated_project", + "type": "string", + "required": false, + "description": "Sets the last due date in the duplicated project. The subsequent due dates will be offset similarly to the original project.", + "enum": null, + "inferrable": true + }, + { + "name": "new_project_name", + "type": "string", + "required": false, + "description": "The name for the duplicated project in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "new_project_team_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the team to set for the new project. If not provided, the project will remain in the same team as the original.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output_enabled", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the response output. Useful for debugging but increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "skip_weekends_in_schedule", + "type": "boolean", + "required": false, + "description": "Set to true to skip weekends for auto-shifted dates in the duplicated project schedule. This is a required parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_for_first_task", + "type": "string", + "required": false, + "description": "Sets the first start date in the duplicated project. Adjusts other start dates based on this.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'duplicateProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AsanaDuplicateProject", + "parameters": { + "project_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "include_elements_in_project_duplication": { + "value": "tasks,notes", + "type": "string", + "required": false + }, + "include_optional_fields": { + "value": ["custom_fields", "attachments"], + "type": "array", + "required": false + }, + "last_due_date_in_duplicated_project": { + "value": "2023-12-31", + "type": "string", + "required": false + }, + "new_project_name": { + "value": "Duplicated Project Name", + "type": "string", + "required": false + }, + "new_project_team_id": { + "value": "9876543210", + "type": "string", + "required": false + }, + "pretty_output_enabled": { + "value": true, + "type": "boolean", + "required": false + }, + "skip_weekends_in_schedule": { + "value": true, + "type": "boolean", + "required": false + }, + "start_date_for_first_task": { + "value": "2023-11-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AsanaRemoveFollowerForTask", + "qualifiedName": "AsanaApi.AsanaRemoveFollowerForTask", + "fullyQualifiedName": "AsanaApi.AsanaRemoveFollowerForTask@1.0.0", + "description": "Remove followers from an Asana task.\n\nThis tool removes specified followers from a given Asana task and returns the complete, updated task record. It should be called when you need to update a task by removing certain users as followers. Requires 'tasks:write' scope.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier of the task from which followers are to be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for readable JSON with line breaks and indentation. Use for debugging; increases response size and processing time.", + "enum": null, + "inferrable": true + }, + { + "name": "followers_to_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings identifying users to remove as followers. Acceptable formats: \"me\", an email, or a user's gid.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional task properties to include in the response. Specify as an array of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeFollowerForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AsanaRemoveFollowerForTask", + "parameters": { + "task_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "followers_to_remove": { + "value": ["user1@example.com", "user2@example.com", "me"], + "type": "array", + "required": false + }, + "include_optional_properties": { + "value": ["name", "due_date", "assignee"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AsanaUpdateWebhookFilters", + "qualifiedName": "AsanaApi.AsanaUpdateWebhookFilters", + "fullyQualifiedName": "AsanaApi.AsanaUpdateWebhookFilters@1.0.0", + "description": "Update filters for an Asana webhook.\n\n Use this tool to update the filters of an existing Asana webhook by providing new filter specifications. The existing filters will be completely replaced with the new ones provided.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "webhook_global_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the webhook to update its filters. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable this to receive the response in a human-readable format with line breaking and indentation. Recommended only for debugging as it increases response size and time. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["webhooks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.AsanaUpdateWebhookFilters", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "webhook_global_id": { + "value": "1234567890abcdefg", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["created_at", "updated_at"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"filters\":[{\"resource_type\":\"project\",\"resource_id\":\"0987654321abcdefg\",\"action\":\"added\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAllocation", + "qualifiedName": "AsanaApi.CreateAllocation", + "fullyQualifiedName": "AsanaApi.CreateAllocation@1.0.0", + "description": "Creates a new allocation in Asana and returns its details.\n\n\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "optional_properties_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the properties to include that are not included by default in the allocation resource response. Provide as an array of strings. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the response to improve readability with line breaks and indentation. Recommended only for debugging due to increased response time and size. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createAllocation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateAllocation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "optional_properties_to_include": { + "value": ["notes", "start_on", "end_on"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"task\":\"1234567890\",\"section\":\"0987654321\",\"assignee\":\"assignee_user_id\",\"percentage\":50}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAsanaGoal", + "qualifiedName": "AsanaApi.CreateAsanaGoal", + "fullyQualifiedName": "AsanaApi.CreateAsanaGoal@1.0.0", + "description": "Create a new goal in Asana workspace or team.\n\n This tool is used to create a new goal in an Asana workspace or team. It returns the full record of the newly created goal, making it essential for managing and tracking team objectives within Asana.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response for a more comprehensive goal record. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enables pretty formatting for the API response, useful for debugging. Increases response time and size. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createGoal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateAsanaGoal", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "include_optional_properties": { + "value": "assignee,due_date", + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Increase Sales by 20%\", \"workspace\": \"123456\", \"team\": \"654321\", \"description\": \"Achieve a 20% increase in sales by Q4.\", \"archive\": false}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAsanaMembership", + "qualifiedName": "AsanaApi.CreateAsanaMembership", + "fullyQualifiedName": "AsanaApi.CreateAsanaMembership@1.0.0", + "description": "Create a new membership in Asana for goals, projects, portfolios, or custom fields.\n\n This tool creates a new membership in a specified Asana entity, such as a goal, project, portfolio, or custom field. It is used to add teams or users as members and returns the complete record of the newly created membership.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, returns the response in a formatted JSON with line breaks and indentation. Recommended only for debugging, as it increases response size and processing time. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createMembership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateAsanaMembership", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"user\":\"123456789\", \"project\":\"987654321\", \"role\":\"member\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAsanaPortfolio", + "qualifiedName": "AsanaApi.CreateAsanaPortfolio", + "fullyQualifiedName": "AsanaApi.CreateAsanaPortfolio@1.0.0", + "description": "Create a new portfolio in an Asana workspace.\n\n Use this tool to create a new portfolio in a specific Asana workspace with a supplied name. Note that this API does not automatically add states like 'Priority' that might be present in portfolios created through the Asana UI.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the optional properties to include in the response, such as ['name', 'members']. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, formats the response with line breaks and indentation for easier readability. Recommended for debugging as it may increase response size and time. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["portfolios:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createPortfolio'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateAsanaPortfolio", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "include_optional_fields": { + "value": ["name", "members"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Product Launch Portfolio\",\"members\":[{\"gid\":\"1234567890\",\"email\":\"member@example.com\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAsanaProjectForTeam", + "qualifiedName": "AsanaApi.CreateAsanaProjectForTeam", + "fullyQualifiedName": "AsanaApi.CreateAsanaProjectForTeam@1.0.0", + "description": "Create a new Asana project for a specific team.\n\n This tool creates a new project within a specified team on Asana and returns the full record of the created project. It requires a 'projects:write' scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_global_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the team in Asana. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_project_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify properties to include as a comma-separated list to get additional project details. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for readable output with line breaks and indentation. Recommended for debugging due to increased response size. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createProjectForTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateAsanaProjectForTeam", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_global_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "include_optional_project_properties": { + "value": ["custom_fields", "assignee"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Project\",\"notes\":\"This is a new project created via API.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAsanaTask", + "qualifiedName": "AsanaApi.CreateAsanaTask", + "fullyQualifiedName": "AsanaApi.CreateAsanaTask@1.0.0", + "description": "Create and initiate an Asana task asynchronously.\n\nThis tool creates a job to instantiate a task in Asana using a specified task template. It should be called when you want to initiate a task based on a template, resulting in the creation of an asynchronous job that returns the job details.", + "parameters": [ + { + "name": "task_template_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the task template used to create the task.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable 'pretty' formatting of the response for better readability. Useful for debugging but may increase response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of optional properties to include in the task resource, comma-separated.", + "enum": null, + "inferrable": true + }, + { + "name": "task_name", + "type": "string", + "required": false, + "description": "The name of the new task to be created. If not provided, the task template name will be used by default.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'instantiateTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateAsanaTask", + "parameters": { + "task_template_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["due_date", "assignee", "tags"], + "type": "array", + "required": false + }, + "task_name": { + "value": "New Project Task", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAsanaWebhook", + "qualifiedName": "AsanaApi.CreateAsanaWebhook", + "fullyQualifiedName": "AsanaApi.CreateAsanaWebhook@1.0.0", + "description": "Initiates the creation of a webhook in Asana.\n\n This tool initiates the creation of a webhook in Asana and requires the 'webhooks:write' scope. It involves a confirmation handshake for setup. Ensure your server can handle asynchronous requests to acknowledge the handshake for successful creation. Invalid hostnames like localhost are not allowed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify properties to include in the response. Provide a list of property names to include those optional properties in the response. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, provides the response in a pretty format with line breaks and indentation. Use it for debugging as it increases response time and size. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["webhooks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateAsanaWebhook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "include_optional_properties": { + "value": ["id", "created_at", "resource"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"data\":{\"resource\":\"project\",\"action\":\"added\",\"webhook_url\":\"https://example.com/webhook\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCustomFieldInWorkspace", + "qualifiedName": "AsanaApi.CreateCustomFieldInWorkspace", + "fullyQualifiedName": "AsanaApi.CreateCustomFieldInWorkspace@1.0.0", + "description": "Create a new custom field in an Asana workspace.\n\n Use this tool to create a custom field in a specific Asana workspace. The field's name must be unique and the type can be text, enum, multi_enum, number, date, or people. The workspace cannot be changed once set.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional property names to include in the response. Ensure these do not conflict with defaults. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive a JSON response with line breaks and indentation for better readability, mainly for debugging purposes. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["custom_fields:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateCustomFieldInWorkspace", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "include_optional_properties": { + "value": ["description", "is_important"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Priority Level\", \"type\": \"enum\", \"enum_options\": [{\"name\": \"High\"}, {\"name\": \"Medium\"}, {\"name\": \"Low\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGoalMetric", + "qualifiedName": "AsanaApi.CreateGoalMetric", + "fullyQualifiedName": "AsanaApi.CreateGoalMetric@1.0.0", + "description": "Create and add a goal metric to a specific goal.\n\n Use this tool to create and add a metric to a specified goal in Asana. It replaces an existing goal metric if one already exists.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "goal_global_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the goal to which the metric will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify the optional properties to include in the response as a list of strings. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for formatted, human-readable output in JSON. Ideal for debugging. May increase response time and size. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createGoalMetric'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateGoalMetric", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "goal_global_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["completion_percentage", "description"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"metric_name\": \"Increase revenue\", \"target_value\": 1000000}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGoalSupportingRelationship", + "qualifiedName": "AsanaApi.CreateGoalSupportingRelationship", + "fullyQualifiedName": "AsanaApi.CreateGoalSupportingRelationship@1.0.0", + "description": "Add a supporting resource to a specific goal in Asana.\n\nUse this tool to create a relationship between a goal and a supporting resource in Asana by specifying the goal ID. This tool is useful when you need to associate additional resources with an existing goal.", + "parameters": [ + { + "name": "goal_global_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the goal to which a supporting resource will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable to receive the response in a formatted and indented manner for easier readability. Recommended for debugging purposes as it increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional resource properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "insert_after_subgoal_id", + "type": "string", + "required": false, + "description": "ID of the subgoal to insert the new subgoal after. Cannot use with `insert_before`. Only for subgoal addition.", + "enum": null, + "inferrable": true + }, + { + "name": "insert_subgoal_before_id", + "type": "string", + "required": false, + "description": "The ID of an existing subgoal. The new subgoal will be placed before this subgoal. Cannot be used with `insert_after_subgoal_id`. Only for adding subgoals.", + "enum": null, + "inferrable": true + }, + { + "name": "supporting_goal_contribution_weight", + "type": "integer", + "required": false, + "description": "A number between 0 and 1 indicating the supporting goal's contribution to the parent goal's progress. Defaults to 0.", + "enum": null, + "inferrable": true + }, + { + "name": "supporting_resource_id", + "type": "string", + "required": false, + "description": "The GID of the supporting resource to add to the parent goal. It must be the GID of a goal, project, task, or portfolio.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addSupportingRelationship'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateGoalSupportingRelationship", + "parameters": { + "goal_global_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["description", "due_date", "owner"], + "type": "array", + "required": false + }, + "insert_after_subgoal_id": { + "value": "987654321", + "type": "string", + "required": false + }, + "insert_subgoal_before_id": { + "value": "456789123", + "type": "string", + "required": false + }, + "supporting_goal_contribution_weight": { + "value": 0, + "type": "integer", + "required": false + }, + "supporting_resource_id": { + "value": "112233445", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateNewAsanaProject", + "qualifiedName": "AsanaApi.CreateNewAsanaProject", + "fullyQualifiedName": "AsanaApi.CreateNewAsanaProject@1.0.0", + "description": "Create a new project in an Asana workspace or team.\n\n This tool creates a new project in a specified workspace or team within Asana. It is essential to specify the workspace, and if applicable, the team, especially when the workspace is an organization. Once set, these cannot be changed. Use this tool to organize tasks and initiatives within Asana projects.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "included_properties_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to include in the response. Specify as a comma-separated list to include optional fields that are excluded by default. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for readable JSON formatting with indents and line breaks. This is useful for debugging but increases response size and time. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateNewAsanaProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "included_properties_list": { + "value": ["name", "notes", "color"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Project\", \"notes\": \"This is a test project\", \"color\": \"green\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateNewAsanaTag", + "qualifiedName": "AsanaApi.CreateNewAsanaTag", + "fullyQualifiedName": "AsanaApi.CreateNewAsanaTag@1.0.0", + "description": "Create a new tag in an Asana workspace or organization.\n\n This tool should be called when there's a need to create a new tag within a specific Asana workspace or organization. It requires the 'tags:write' scope and returns the full record of the newly created tag.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify optional properties to include in the response as a list of strings. These properties are excluded by default. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output_enabled", + "type": "boolean", + "required": false, + "description": "Set to true for a well-indented, readable response format. Recommend use only for debugging due to increased response size and time. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tags:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateNewAsanaTag", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "include_optional_properties": { + "value": ["color", "workspace_id"], + "type": "array", + "required": false + }, + "pretty_output_enabled": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Project Tag\",\"color\":\"blue\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateParallelRequestsAsana", + "qualifiedName": "AsanaApi.CreateParallelRequestsAsana", + "fullyQualifiedName": "AsanaApi.CreateParallelRequestsAsana@1.0.0", + "description": "Execute multiple requests to Asana's API simultaneously.\n\n Use this tool to make parallel requests to Asana's API efficiently, allowing multiple operations to be executed at once.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional properties to include in the response. Provide as an array of strings. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty output format with line breaks and indentation. Useful for debugging but may increase response size and time. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createBatchRequest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateParallelRequestsAsana", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "include_optional_fields": { + "value": ["field1", "field2"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"data\":{\"name\":\"Task Name\",\"projects\":[\"project_id_1\",\"project_id_2\"]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateProjectBrief", + "qualifiedName": "AsanaApi.CreateProjectBrief", + "fullyQualifiedName": "AsanaApi.CreateProjectBrief@1.0.0", + "description": "Create a new project brief in Asana.\n\n Use this tool to create and initialize a new project brief within a specified Asana project. It returns the full details of the project brief after creation.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_global_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the project in which the brief will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to include that are excluded by default in the response. Provide as an array of strings. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to format the response with line breaks and indentation for readability. Useful for debugging. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createProjectBrief'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateProjectBrief", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_global_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["description", "due_date"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"title\":\"New Project Brief\",\"details\":\"This is the project brief details.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateProjectInWorkspace", + "qualifiedName": "AsanaApi.CreateProjectInWorkspace", + "fullyQualifiedName": "AsanaApi.CreateProjectInWorkspace@1.0.0", + "description": "Create a new project in a specified workspace.\n\n Use this tool to create a new project in a given workspace on Asana. If the workspace is an organization, provide a team to share the project. This action requires the 'projects:write' scope. Returns the full details of the new project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "workspace_identifier", + "type": "string", + "required": false, + "description": "Globally unique identifier for the workspace or organization where the project will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for formatted, readable output. Use mainly during debugging as it increases response time and size. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createProjectForWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateProjectInWorkspace", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "workspace_identifier": { + "value": "123456789", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["team", "due_date"], + "type": "array", + "required": false + }, + "pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Project\", \"notes\": \"Project Description\", \"team\": \"987654321\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateProjectStatusUpdate", + "qualifiedName": "AsanaApi.CreateProjectStatusUpdate", + "fullyQualifiedName": "AsanaApi.CreateProjectStatusUpdate@1.0.0", + "description": "Creates a new status update for a project.\n\n This tool creates a new status update on a specified project in Asana and returns the full record of the newly created project status update. Note: Prefer using the `/status_updates` route for new integrations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_global_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the project in Asana. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "included_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response, which are excluded by default. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, format the response for readability with line breaks and indentation. Mainly for debugging purposes. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createProjectStatusForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateProjectStatusUpdate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_global_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "included_optional_properties": { + "value": ["attachments", "comments"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"status\":\"In Progress\",\"comment\":\"The project is on track.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateProjectTemplate", + "qualifiedName": "AsanaApi.CreateProjectTemplate", + "fullyQualifiedName": "AsanaApi.CreateProjectTemplate@1.0.0", + "description": "Create a project template in Asana asynchronously.\n\nThis tool triggers the creation of a project template in Asana and returns details of the asynchronous job handling the process. Use this to save an existing project as a template, enabling its reuse.", + "parameters": [ + { + "name": "project_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project. Required to specify which project is being saved as a template.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty output formatting for easier readability in the response. Use mainly for debugging as it may increase response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify a list of optional properties to include in the response by listing their names as strings.", + "enum": null, + "inferrable": true + }, + { + "name": "make_template_public", + "type": "boolean", + "required": false, + "description": "Specify true to make the project template public to its team. Use false to keep it private.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_for_project_template", + "type": "string", + "required": false, + "description": "Specify the team ID for the new project template. Use this when the project is in an organization.", + "enum": null, + "inferrable": true + }, + { + "name": "template_name", + "type": "string", + "required": false, + "description": "The name of the new project template in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_for_project_template", + "type": "string", + "required": false, + "description": "Globally unique identifier for the workspace of the new project template. Use only if the project is in a workspace.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projectSaveAsTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateProjectTemplate", + "parameters": { + "project_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["due_date", "custom_fields"], + "type": "array", + "required": false + }, + "make_template_public": { + "value": false, + "type": "boolean", + "required": false + }, + "team_id_for_project_template": { + "value": "team_1234", + "type": "string", + "required": false + }, + "template_name": { + "value": "Marketing Campaign Template", + "type": "string", + "required": false + }, + "workspace_id_for_project_template": { + "value": "workspace_5678", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSectionInProject", + "qualifiedName": "AsanaApi.CreateSectionInProject", + "fullyQualifiedName": "AsanaApi.CreateSectionInProject@1.0.0", + "description": "Create a new section in an Asana project.\n\nUse this tool to create a new section within a specified Asana project. It returns the complete details of the newly added section, helping you organize tasks by sections.", + "parameters": [ + { + "name": "project_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project in which to create the section.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a readable response format with line breaks and indentation. Use for debugging only.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "insert_after_section_id", + "type": "string", + "required": false, + "description": "ID of an existing section to insert the new section after. Cannot be used with insert_before_section_id.", + "enum": null, + "inferrable": true + }, + { + "name": "insert_before_section_id", + "type": "string", + "required": false, + "description": "ID of an existing section in the project before which the new section will be inserted. Cannot be used with 'insert_after_section_id'.", + "enum": null, + "inferrable": true + }, + { + "name": "section_name", + "type": "string", + "required": false, + "description": "The name to display as the section title in the project. This cannot be empty.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createSectionForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateSectionInProject", + "parameters": { + "project_global_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["completed", "due_date"], + "type": "array", + "required": false + }, + "insert_after_section_id": { + "value": "987654321", + "type": "string", + "required": false + }, + "insert_before_section_id": { + "value": null, + "type": "string", + "required": false + }, + "section_name": { + "value": "New Section Title", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateStatusUpdate", + "qualifiedName": "AsanaApi.CreateStatusUpdate", + "fullyQualifiedName": "AsanaApi.CreateStatusUpdate@1.0.0", + "description": "Create a new status update on an object in Asana.\n\n Use this tool to add a status update to an object in Asana, such as a project. It returns the full record of the newly created status update, providing insight into the update's details and context.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of status updates to return per page, between 1 and 100. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Token to fetch the next page of results. Received from a previous API response for pagination. If omitted, the first page is returned. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to include. Provide as an array of strings to include optional properties in the response. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive the response in a readable, indented format. Use for debugging as it increases response time and size. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createStatusForObject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateStatusUpdate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "include_optional_fields": { + "value": ["author", "created_at"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"text\": \"Updated task priority to high.\", \"project\": \"1234567890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSubtaskForTask", + "qualifiedName": "AsanaApi.CreateSubtaskForTask", + "fullyQualifiedName": "AsanaApi.CreateSubtaskForTask@1.0.0", + "description": "Create a new subtask under a specified parent task.\n\n This tool is used to create a new subtask and associate it with an existing parent task in Asana. It requires the 'tasks:write' scope and returns the complete record of the newly created subtask.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "parent_task_id", + "type": "string", + "required": false, + "description": "The ID of the parent task for which the new subtask will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "included_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include in the response. Allows access to optional fields not included by default. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a formatted JSON response with line breaks and indentation. Increases size and time; use for debugging. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createSubtaskForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateSubtaskForTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "parent_task_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "included_optional_fields": { + "value": ["due_date", "assignee"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Subtask\", \"notes\": \"Details about the subtask\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTimeTrackingEntry", + "qualifiedName": "AsanaApi.CreateTimeTrackingEntry", + "fullyQualifiedName": "AsanaApi.CreateTimeTrackingEntry@1.0.0", + "description": "Create a time tracking entry on a task.\n\nUse this tool to log time against a specific task in Asana. It returns the information of the newly created time tracking entry, helping to keep task hours updated.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier for the task to operate on.", + "enum": null, + "inferrable": true + }, + { + "name": "duration_minutes_tracked", + "type": "integer", + "required": false, + "description": "Time in minutes tracked by the entry. Must be greater than 0.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive formatted, human-readable JSON responses. Useful for debugging as it may slow down the response.", + "enum": null, + "inferrable": true + }, + { + "name": "entry_logged_date", + "type": "string", + "required": false, + "description": "Optional. The date the time entry is logged. Defaults to today if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional property names to include in the response. This should be used to specify which additional fields you want to include in the return data format when creating a time tracking entry.", + "enum": null, + "inferrable": true + }, + { + "name": "project_gid_attribution", + "type": "string", + "required": false, + "description": "Optional. The GID of the project to which the tracked time is attributed. If not provided, no project attribution is made.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTimeTrackingEntry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateTimeTrackingEntry", + "parameters": { + "task_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "duration_minutes_tracked": { + "value": 45, + "type": "integer", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "entry_logged_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["user_id", "notes"], + "type": "array", + "required": false + }, + "project_gid_attribution": { + "value": "0987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateWorkspaceTag", + "qualifiedName": "AsanaApi.CreateWorkspaceTag", + "fullyQualifiedName": "AsanaApi.CreateWorkspaceTag@1.0.0", + "description": "Create a new tag in a specific Asana workspace.\n\n This tool creates a new tag in a designated workspace or organization in Asana. The tag is permanently associated with the specified workspace. It returns the full details of the newly created tag. This is useful for organizing tasks with a new categorization.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the workspace or organization in Asana. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "included_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of optional properties to include in the response, specified as an array of strings. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty JSON formatting for improved readability. Use mainly during debugging as it may increase response size. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tags:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTagForWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.CreateWorkspaceTag", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "included_optional_properties": { + "value": ["color", "notes"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Tag\",\"color\":\"blue\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAllocation", + "qualifiedName": "AsanaApi.DeleteAllocation", + "fullyQualifiedName": "AsanaApi.DeleteAllocation@1.0.0", + "description": "Deletes a specific allocation in Asana.\n\nUse this tool to delete an existing allocation in Asana by providing the allocation ID. Useful for tasks where removing resource allocations is needed.", + "parameters": [ + { + "name": "allocation_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the allocation to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_formatting", + "type": "boolean", + "required": false, + "description": "Provide pretty JSON formatting for better readability, recommended for debugging.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAllocation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteAllocation", + "parameters": { + "allocation_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "pretty_formatting": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAsanaGoal", + "qualifiedName": "AsanaApi.DeleteAsanaGoal", + "fullyQualifiedName": "AsanaApi.DeleteAsanaGoal@1.0.0", + "description": "Delete a specific goal in Asana.\n\nUse this tool to delete an existing goal in Asana by specifying the goal ID.", + "parameters": [ + { + "name": "goal_identifier", + "type": "string", + "required": true, + "description": "The unique global identifier for the specific Asana goal to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, provides pretty JSON output with indentation and line breaks for readability. Recommended for debugging due to increased response size and time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteGoal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteAsanaGoal", + "parameters": { + "goal_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAsanaMembership", + "qualifiedName": "AsanaApi.DeleteAsanaMembership", + "fullyQualifiedName": "AsanaApi.DeleteAsanaMembership@1.0.0", + "description": "Delete a membership in Asana.\n\nDelete a specific, existing membership for a goal, project, portfolio, or custom field in Asana by providing the membership ID.", + "parameters": [ + { + "name": "membership_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the membership to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output_enabled", + "type": "boolean", + "required": false, + "description": "Enable pretty-printed JSON format for a more readable response. Recommended for debugging, as it increases response time and size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteMembership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteAsanaMembership", + "parameters": { + "membership_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "pretty_output_enabled": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAsanaProject", + "qualifiedName": "AsanaApi.DeleteAsanaProject", + "fullyQualifiedName": "AsanaApi.DeleteAsanaProject@1.0.0", + "description": "Delete a specific project in Asana.\n\nUse this tool to delete an existing project in Asana by providing the project's unique identifier. The tool is called when you need to remove a project from Asana, and it confirms the deletion without returning any additional data.", + "parameters": [ + { + "name": "project_unique_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project to be deleted in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the response to make it more readable. It's recommended for debugging purposes only due to increased response size and time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:delete"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteAsanaProject", + "parameters": { + "project_unique_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAsanaSection", + "qualifiedName": "AsanaApi.DeleteAsanaSection", + "fullyQualifiedName": "AsanaApi.DeleteAsanaSection@1.0.0", + "description": "Delete a specific, existing section in Asana.\n\nThis tool deletes a specific, existing section in an Asana project using its GID. Note that the section must be empty to be deleted, and the last remaining section cannot be removed. The tool confirms deletion or provides error details if it fails.", + "parameters": [ + { + "name": "section_global_identifier", + "type": "string", + "required": true, + "description": "The globally unique identifier for the section to be deleted in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, returns JSON with line breaks and indentation for readability. Increases response time and size, suitable for debugging.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteSection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteAsanaSection", + "parameters": { + "section_global_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAsanaStory", + "qualifiedName": "AsanaApi.DeleteAsanaStory", + "fullyQualifiedName": "AsanaApi.DeleteAsanaStory@1.0.0", + "description": "Delete a story you've created on Asana.\n\nThis tool deletes a story on Asana if the story was created by the user. It should be called when a user wants to remove their own stories for tasks or projects in Asana.", + "parameters": [ + { + "name": "story_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the story to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable this for a readable, formatted response. Useful for debugging, but increases response time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteStory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteAsanaStory", + "parameters": { + "story_unique_id": { + "value": "1234567890abcdefg", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAsanaTag", + "qualifiedName": "AsanaApi.DeleteAsanaTag", + "fullyQualifiedName": "AsanaApi.DeleteAsanaTag@1.0.0", + "description": "Delete a specific tag in Asana with its unique ID.\n\nUse this tool to delete an existing tag in Asana by providing its unique global ID (tag_gid). This operation is permanent and should be used when a tag is no longer needed.", + "parameters": [ + { + "name": "tag_unique_identifier", + "type": "string", + "required": true, + "description": "The globally unique identifier for the Asana tag to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for formatted JSON output with line breaks and indentation. Use mainly for debugging as it increases response size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteAsanaTag", + "parameters": { + "tag_unique_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAsanaTask", + "qualifiedName": "AsanaApi.DeleteAsanaTask", + "fullyQualifiedName": "AsanaApi.DeleteAsanaTask@1.0.0", + "description": "Delete an existing task in Asana, moving it to trash.\n\nUse this tool to delete a specific task in Asana. The task will be moved to the user's trash, where it can be recovered within 30 days. This tool is useful for managing tasks that are no longer needed or were created by mistake.", + "parameters": [ + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the task to delete in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output_enabled", + "type": "boolean", + "required": false, + "description": "Set to true for 'pretty' formatted response, useful for debugging. May increase response size and time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:delete"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteAsanaTask", + "parameters": { + "task_identifier": { + "value": "1203456789", + "type": "string", + "required": true + }, + "pretty_output_enabled": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAsanaWebhook", + "qualifiedName": "AsanaApi.DeleteAsanaWebhook", + "fullyQualifiedName": "AsanaApi.DeleteAsanaWebhook@1.0.0", + "description": "Permanently delete a webhook in Asana.\n\nUse this tool to permanently remove a webhook from Asana. Even after deletion, requests that were in flight may still be received. No further requests will be issued once the webhook is deleted. Ensure you have the required 'webhooks:delete' scope.", + "parameters": [ + { + "name": "webhook_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the specific webhook to delete in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, formats the response with line breaks and indentation for readability. Use primarily for debugging as it increases response time and size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["webhooks:delete"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteAsanaWebhook", + "parameters": { + "webhook_global_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAttachment", + "qualifiedName": "AsanaApi.DeleteAttachment", + "fullyQualifiedName": "AsanaApi.DeleteAttachment@1.0.0", + "description": "Delete a specific attachment in Asana.\n\nUse this tool to delete an existing attachment in Asana by providing the attachment's unique ID. Requires `attachments:delete` scope.", + "parameters": [ + { + "name": "attachment_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the attachment to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output_enabled", + "type": "boolean", + "required": false, + "description": "Set to true to return the response in a readable format with line breaks and indentation. Use for debugging, as it increases response time and size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["attachments:delete"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAttachment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteAttachment", + "parameters": { + "attachment_unique_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "pretty_output_enabled": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCustomField", + "qualifiedName": "AsanaApi.DeleteCustomField", + "fullyQualifiedName": "AsanaApi.DeleteCustomField@1.0.0", + "description": "Delete a specific custom field in Asana.\n\nUse this tool to delete a specific custom field in Asana. Locked custom fields can only be deleted by the user who locked them. It returns confirmation of the deletion.", + "parameters": [ + { + "name": "custom_field_id", + "type": "string", + "required": true, + "description": "The unique global identifier for the custom field to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a formatted and indented response; mainly for debugging.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteCustomField", + "parameters": { + "custom_field_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeletePortfolio", + "qualifiedName": "AsanaApi.DeletePortfolio", + "fullyQualifiedName": "AsanaApi.DeletePortfolio@1.0.0", + "description": "Delete an existing portfolio in Asana.\n\nUse this tool to delete an existing portfolio by specifying the portfolio's ID in Asana. It should be called when a user needs to remove a portfolio from their system.", + "parameters": [ + { + "name": "portfolio_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the portfolio to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable this to receive a 'pretty' formatted JSON response, advisable for debugging only as it increases response time and size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deletePortfolio'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeletePortfolio", + "parameters": { + "portfolio_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteProjectBrief", + "qualifiedName": "AsanaApi.DeleteProjectBrief", + "fullyQualifiedName": "AsanaApi.DeleteProjectBrief@1.0.0", + "description": "Delete a specific project brief in Asana.\n\nUse this tool to delete an existing project brief in Asana by providing its unique identifier. The operation returns confirmation of deletion.", + "parameters": [ + { + "name": "project_brief_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project brief to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for pretty-formatted output, making it more readable. Useful for debugging, this may increase response time and size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteProjectBrief'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteProjectBrief", + "parameters": { + "project_brief_unique_id": { + "value": "12345abcd-6789-ef01-gh23-ijklmnopqrst", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteProjectStatus", + "qualifiedName": "AsanaApi.DeleteProjectStatus", + "fullyQualifiedName": "AsanaApi.DeleteProjectStatus@1.0.0", + "description": "Delete a specific project status update in Asana.\n\nThis tool deletes an existing project status update in Asana. It should be called when you need to remove a specific status update from a project. Note: This endpoint is deprecated; consider using the `/status_updates/{status_gid}` route for new integrations.", + "parameters": [ + { + "name": "project_status_id", + "type": "string", + "required": true, + "description": "The identifier for the project status update you wish to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty output for readable formatting during debugging; increases response size and time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteProjectStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteProjectStatus", + "parameters": { + "project_status_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteProjectTemplate", + "qualifiedName": "AsanaApi.DeleteProjectTemplate", + "fullyQualifiedName": "AsanaApi.DeleteProjectTemplate@1.0.0", + "description": "Delete a specific existing project template in Asana.\n\nUse this tool to permanently delete a specific project template in Asana by providing the template's unique identifier.", + "parameters": [ + { + "name": "project_template_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the Asana project template to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, outputs the response in a readable, pretty format with line breaks and indentation, mainly for debugging purposes.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteProjectTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteProjectTemplate", + "parameters": { + "project_template_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteStatusUpdate", + "qualifiedName": "AsanaApi.DeleteStatusUpdate", + "fullyQualifiedName": "AsanaApi.DeleteStatusUpdate@1.0.0", + "description": "Delete a specific status update from Asana.\n\nUse this tool to remove a specific status update in Asana by providing the status update's unique ID. This is useful for managing project updates and maintaining current information. The tool confirms successful deletion.", + "parameters": [ + { + "name": "status_update_id", + "type": "string", + "required": true, + "description": "Unique ID of the status update to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output", + "type": "boolean", + "required": false, + "description": "If true, the response is formatted for readability with line breaks and indentation. This increases response size and time, so use for debugging.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteStatusUpdate", + "parameters": { + "status_update_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTaskTemplate", + "qualifiedName": "AsanaApi.DeleteTaskTemplate", + "fullyQualifiedName": "AsanaApi.DeleteTaskTemplate@1.0.0", + "description": "Delete a specific task template by its ID.\n\nUse this tool to delete an existing task template in Asana by providing its unique GID. It's useful for removing templates that are no longer needed.", + "parameters": [ + { + "name": "task_template_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the task template to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to True for a pretty, formatted JSON response. This is useful for debugging but may increase response time and size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTaskTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteTaskTemplate", + "parameters": { + "task_template_id": { + "value": "1234567890123456", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTimeTrackingEntry", + "qualifiedName": "AsanaApi.DeleteTimeTrackingEntry", + "fullyQualifiedName": "AsanaApi.DeleteTimeTrackingEntry@1.0.0", + "description": "Delete a specific time tracking entry in Asana.\n\nUse this tool to delete an existing time tracking entry by specifying its unique identifier in Asana. Useful for managing and correcting time tracking data.", + "parameters": [ + { + "name": "time_tracking_entry_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the time tracking entry to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a formatted, readable JSON response. Use for debugging; increases response time and size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTimeTrackingEntry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DeleteTimeTrackingEntry", + "parameters": { + "time_tracking_entry_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DuplicateAsanaTask", + "qualifiedName": "AsanaApi.DuplicateAsanaTask", + "fullyQualifiedName": "AsanaApi.DuplicateAsanaTask@1.0.0", + "description": "Create a job to duplicate a task in Asana.\n\nThis tool creates and returns a job that will asynchronously handle the duplication of a specified task in Asana. It should be called when there's a need to copy an existing task.", + "parameters": [ + { + "name": "task_gid", + "type": "string", + "required": true, + "description": "The unique identifier of the task to duplicate in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty printing of the JSON response for improved readability. Use this primarily for debugging as it increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_duplicate", + "type": "string", + "required": false, + "description": "Comma-separated list of task fields to duplicate, such as assignee, attachments, dates, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "new_task_name", + "type": "string", + "required": false, + "description": "The name for the newly duplicated task in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'duplicateTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.DuplicateAsanaTask", + "parameters": { + "task_gid": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "fields_to_duplicate": { + "value": "assignee,attachments,dates", + "type": "string", + "required": false + }, + "new_task_name": { + "value": "Duplicate of Task 123", + "type": "string", + "required": false + }, + "optional_fields_to_include": { + "value": ["comments", "tags"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchAsanaEvents", + "qualifiedName": "AsanaApi.FetchAsanaEvents", + "fullyQualifiedName": "AsanaApi.FetchAsanaEvents@1.0.0", + "description": "Fetches detailed records of recent Asana events.\n\nThis tool retrieves a complete record of all events in Asana that occurred since a specific sync token was created. It should be called when you need to obtain the latest activities or changes related to a resource. If more than 100 events exist, the response will indicate additional events are available.", + "parameters": [ + { + "name": "target_resource_id", + "type": "string", + "required": true, + "description": "The ID of the resource to subscribe to. It can be a task, project, or goal.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty JSON output with line breaks and indentation for readability; primarily for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of property names to include in the response for more detailed event records.", + "enum": null, + "inferrable": true + }, + { + "name": "sync_token", + "type": "string", + "required": false, + "description": "A sync token from the last request, or omit on the first sync to receive events from the start point. Ensure to handle the token for continued syncing.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.FetchAsanaEvents", + "parameters": { + "target_resource_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["created_at", "modified_at"], + "type": "array", + "required": false + }, + "sync_token": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchAttachmentDetails", + "qualifiedName": "AsanaApi.FetchAttachmentDetails", + "fullyQualifiedName": "AsanaApi.FetchAttachmentDetails@1.0.0", + "description": "Fetch the full record of a specific attachment.\n\nRetrieves detailed information for a single attachment in Asana. Use this tool to access complete attachment records by attachment ID.", + "parameters": [ + { + "name": "attachment_unique_id", + "type": "string", + "required": true, + "description": "The globally unique identifier for the attachment in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for pretty-printed JSON output. Increases response size and time; recommended for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of properties to include in the response. Specify which additional fields you want in the returned attachment record.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["attachments:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAttachment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.FetchAttachmentDetails", + "parameters": { + "attachment_unique_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["size", "created_at", "modified_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchJobDetails", + "qualifiedName": "AsanaApi.FetchJobDetails", + "fullyQualifiedName": "AsanaApi.FetchJobDetails@1.0.0", + "description": "Fetch complete details for a specific job record in Asana.\n\nUse this tool to obtain the full record of a job by providing the job ID. Ideal for retrieving detailed information about specific jobs in Asana.", + "parameters": [ + { + "name": "job_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the job to fetch details for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response for the job.", + "enum": null, + "inferrable": true + }, + { + "name": "opt_pretty", + "type": "boolean", + "required": false, + "description": "Set to true for pretty output with line breaks and indentation. Use this for debugging as it increases response time and size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getJob'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.FetchJobDetails", + "parameters": { + "job_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "include_optional_properties": { + "value": ["assignee", "due_date", "created_at"], + "type": "array", + "required": false + }, + "opt_pretty": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchProjectTaskTemplates", + "qualifiedName": "AsanaApi.FetchProjectTaskTemplates", + "fullyQualifiedName": "AsanaApi.FetchProjectTaskTemplates@1.0.0", + "description": "Retrieve compact task template records for a specific project.\n\nCall this tool to obtain a list of compact task template records from Asana for a given project. This can be useful when you need to view or manage task templates associated with a particular project scope.", + "parameters": [ + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable this to receive the response in a readable format with proper indentation. Useful for debugging, but increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to include in the response. Specify the properties you wish to see for the task templates.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token for pagination, returned by the API. Use to request the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project to filter task templates.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of task templates to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["task_templates:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTaskTemplates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.FetchProjectTaskTemplates", + "parameters": { + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "optional_fields_to_include": { + "value": ["name", "due_date", "assignee"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "project_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchReactionsByEmoji", + "qualifiedName": "AsanaApi.FetchReactionsByEmoji", + "fullyQualifiedName": "AsanaApi.FetchReactionsByEmoji@1.0.0", + "description": "Retrieve reactions with a specific emoji on an object.\n\nUse this tool to get a list of reactions for a specific emoji character on an Asana object. Useful for analyzing engagement or feedback expressed through emojis.", + "parameters": [ + { + "name": "emoji_base_character", + "type": "string", + "required": true, + "description": "Specify the emoji base character to filter reactions. Returns only reactions with this emoji.", + "enum": null, + "inferrable": true + }, + { + "name": "object_gid", + "type": "string", + "required": true, + "description": "Globally unique identifier (GID) for the Asana object (status update or story) from which to fetch reactions.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable for readable JSON output with line breaks and indentation. Use primarily for debugging due to increased response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token to retrieve the next page of results. Use the token provided by a previous paginated request. If not specified, the API returns the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReactionsOnObject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.FetchReactionsByEmoji", + "parameters": { + "emoji_base_character": { + "value": "😊", + "type": "string", + "required": true + }, + "object_gid": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchStatusUpdate", + "qualifiedName": "AsanaApi.FetchStatusUpdate", + "fullyQualifiedName": "AsanaApi.FetchStatusUpdate@1.0.0", + "description": "Fetch the complete record for a specific status update.\n\nUse this tool to get detailed information about a specific status update by providing its unique identifier.", + "parameters": [ + { + "name": "status_update_id", + "type": "string", + "required": true, + "description": "Unique identifier for the status update to retrieve the complete record.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a readable, pretty format with indentation. Useful for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional fields to include in the response. Provide the fields as a list of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.FetchStatusUpdate", + "parameters": { + "status_update_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["comments", "attachments"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchTaskTemplate", + "qualifiedName": "AsanaApi.FetchTaskTemplate", + "fullyQualifiedName": "AsanaApi.FetchTaskTemplate@1.0.0", + "description": "Retrieve the complete record of a specific task template in Asana.\n\nUse this tool to get detailed information about a task template from Asana by providing the task template's GID. Make sure your token has the 'task_templates:read' scope.", + "parameters": [ + { + "name": "task_template_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the task template to retrieve its complete record.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the output, making it more readable with line breaking and indentation. Use mainly for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify properties to include in the response. Provide as a list of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["task_templates:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTaskTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.FetchTaskTemplate", + "parameters": { + "task_template_unique_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["members", "tags", "due_date"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchTeamMembers", + "qualifiedName": "AsanaApi.FetchTeamMembers", + "fullyQualifiedName": "AsanaApi.FetchTeamMembers@1.0.0", + "description": "Retrieve the team memberships for a given team in Asana.\n\nUse this tool to obtain a list of team memberships for a specific team in Asana, providing insight into who is part of the team.", + "parameters": [ + { + "name": "team_global_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the team to retrieve memberships for.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Boolean to enable pretty formatted output with line breaks and indentation. Recommended for debugging due to increased response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_properties_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional properties to include in the results, given as an array of strings. Each string should be a property you wish to include.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Token to retrieve the next page of results. Use the offset provided in a previous response for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of objects to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["team_memberships:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeamMembershipsForTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.FetchTeamMembers", + "parameters": { + "team_global_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "optional_properties_to_include": { + "value": ["email", "photo", "roles"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchTimeTrackingData", + "qualifiedName": "AsanaApi.FetchTimeTrackingData", + "fullyQualifiedName": "AsanaApi.FetchTimeTrackingData@1.0.0", + "description": "Fetch time tracking entries from Asana.\n\nRetrieve a list of time tracking entries filtered by specific tasks, attributed projects, portfolios, or users in Asana. Requires the 'time_tracking_entries:read' scope.", + "parameters": [ + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the response. Useful for debugging, but increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Include optional properties in the response by listing field names as a comma-separated array. This enhances the response data detail.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Token to specify the starting point for retrieving the next page of results. Use the offset returned from a previous request. If not provided, the first page is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "portfolio_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the portfolio to filter time tracking entries by.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier_attribution", + "type": "string", + "required": false, + "description": "Unique ID for the project to filter time tracking entries by attribution.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of time tracking entries to return per page. Acceptable values are between 1 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the task to filter time tracking entries by. This is used to specify the task whose time tracking entries you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id_filter", + "type": "string", + "required": false, + "description": "Globally unique identifier for the user to filter time tracking entries by.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_identifier", + "type": "string", + "required": false, + "description": "Globally unique identifier for the Asana workspace to filter the time tracking entries.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["time_tracking_entries:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTimeTrackingEntries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.FetchTimeTrackingData", + "parameters": { + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["duration", "notes", "start_time"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "portfolio_id": { + "value": "portfolio_456", + "type": "string", + "required": false + }, + "project_identifier_attribution": { + "value": "project_789", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "task_id": { + "value": "task_112", + "type": "string", + "required": false + }, + "user_id_filter": { + "value": "user_345", + "type": "string", + "required": false + }, + "workspace_identifier": { + "value": "workspace_678", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchUserTaskDetails", + "qualifiedName": "AsanaApi.FetchUserTaskDetails", + "fullyQualifiedName": "AsanaApi.FetchUserTaskDetails@1.0.0", + "description": "Retrieve the full record for a user task list.\n\nCall this tool to obtain detailed information about a specific user's task list in Asana. This requires read permissions on tasks.", + "parameters": [ + { + "name": "user_task_list_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the user task list in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for readable, indented JSON output. Use primarily for debugging due to increased response size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify which optional properties should be included in the response. Provide as a list of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserTaskList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.FetchUserTaskDetails", + "parameters": { + "user_task_list_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["due_date", "assignee", "completed"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchUserTasks", + "qualifiedName": "AsanaApi.FetchUserTasks", + "fullyQualifiedName": "AsanaApi.FetchUserTasks@1.0.0", + "description": "Fetch the full task list record for a user from Asana.\n\nThis tool retrieves the complete task list for a specified user in Asana, requiring the 'tasks:read' permission.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "A string to identify the user, either \"me\", an email, or the user's gid.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The ID of the workspace to retrieve the user's task list from in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for JSON responses. When true, the response includes line breaks and indentation for better readability. This increases response size and processing time, so use primarily for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional properties to include in the response, specified as an array of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserTaskListForUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.FetchUserTasks", + "parameters": { + "user_identifier": { + "value": "me", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["assignee", "due_date", "completed"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllocationRecord", + "qualifiedName": "AsanaApi.GetAllocationRecord", + "fullyQualifiedName": "AsanaApi.GetAllocationRecord@1.0.0", + "description": "Fetch the complete allocation record for a given ID.\n\nThis tool provides detailed information about an allocation using its unique ID. It should be called when you need to access specific allocation data from Asana.", + "parameters": [ + { + "name": "allocation_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the allocation to fetch the complete record.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive the response in a pretty, readable format. Useful for debugging, but increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response, as some properties are excluded by default.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAllocation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetAllocationRecord", + "parameters": { + "allocation_unique_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": "resource_costs,team_members", + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAsanaGoalDetails", + "qualifiedName": "AsanaApi.GetAsanaGoalDetails", + "fullyQualifiedName": "AsanaApi.GetAsanaGoalDetails@1.0.0", + "description": "Fetches detailed information for a specific Asana goal.\n\nThis tool retrieves the complete record of a specified goal in Asana, including associated time periods and custom field settings. It requires the necessary permissions: 'goals:read', 'time_periods:read', and 'custom_fields:read'.", + "parameters": [ + { + "name": "goal_global_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the goal to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, formats the response with line breaks and indentation for readability, increasing response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify optional properties to include in the response as a list of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["goals:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getGoal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetAsanaGoalDetails", + "parameters": { + "goal_global_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["custom_field_1", "custom_field_2"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAsanaProjects", + "qualifiedName": "AsanaApi.GetAsanaProjects", + "fullyQualifiedName": "AsanaApi.GetAsanaProjects@1.0.0", + "description": "Fetch filtered project records from Asana.\n\nRetrieve compact project records from Asana by applying optional filters for more efficient data handling, especially in large domains. Ensure the 'projects:read' scope is authorized.", + "parameters": [ + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty JSON formatting for debugging. Increases response size and processing time.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "The offset token for pagination to obtain the next page of results. Use this token received from a previous request to continue retrieving subsequent data.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of projects to return per page, from 1 to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_projects", + "type": "boolean", + "required": false, + "description": "Boolean to filter projects by their archived status. Setting this to true returns only archived projects.", + "enum": null, + "inferrable": true + }, + { + "name": "team_filter", + "type": "string", + "required": false, + "description": "Specify the team to filter projects in the Asana workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_filter", + "type": "string", + "required": false, + "description": "Specify the workspace or organization to filter the Asana projects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjects'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetAsanaProjects", + "parameters": { + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "optional_fields_to_include": { + "value": ["name", "due_date", "status"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "return_only_archived_projects": { + "value": false, + "type": "boolean", + "required": false + }, + "team_filter": { + "value": "Team Alpha", + "type": "string", + "required": false + }, + "workspace_filter": { + "value": "Workspace XYZ", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAsanaProjectTemplates", + "qualifiedName": "AsanaApi.GetAsanaProjectTemplates", + "fullyQualifiedName": "AsanaApi.GetAsanaProjectTemplates@1.0.0", + "description": "Fetch project template records from Asana.\n\nRetrieve compact project template records for all templates in a specified team or workspace within Asana. This requires the 'project_templates:read' scope.", + "parameters": [ + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional properties to include in the response. Provide as an array of strings, with each string representing a property name.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token for pagination. Use the token returned from a previous request to fetch the next page of results. If omitted, the first page is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to enable pretty JSON formatting for debugging, despite increased size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of project templates to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "team_filter", + "type": "string", + "required": false, + "description": "The team ID to filter project templates on.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_identifier", + "type": "string", + "required": false, + "description": "The identifier of the workspace to filter project templates results on.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["project_templates:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectTemplates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetAsanaProjectTemplates", + "parameters": { + "include_optional_fields": { + "value": ["custom_fields", "created_at"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "team_filter": { + "value": "123456789", + "type": "string", + "required": false + }, + "workspace_identifier": { + "value": "987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAsanaSection", + "qualifiedName": "AsanaApi.GetAsanaSection", + "fullyQualifiedName": "AsanaApi.GetAsanaSection@1.0.0", + "description": "Retrieve a complete record of a single Asana section.\n\nUse this tool to obtain detailed information about a specific section in Asana by providing the section's GID.", + "parameters": [ + { + "name": "section_global_id", + "type": "string", + "required": true, + "description": "The globally unique identifier for the section to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive the response in a 'pretty' format with line breaks and indentation. Useful for debugging. This increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify a list of optional properties to include in the response. This should be an array of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetAsanaSection", + "parameters": { + "section_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["color", "created_at", "modified_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAsanaStory", + "qualifiedName": "AsanaApi.GetAsanaStory", + "fullyQualifiedName": "AsanaApi.GetAsanaStory@1.0.0", + "description": "Fetch the full record of a specific Asana story.\n\nUse this tool to retrieve detailed information about a specific story in Asana. It requires the 'stories:read' scope, and optionally reads 'attachments:read' for previews and attachments.", + "parameters": [ + { + "name": "story_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the Asana story to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to format the response with line breaks and indentation for readability. Recommended only for debugging, as it increases response size and processing time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional properties to include in the story record, specified as an array of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["stories:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetAsanaStory", + "parameters": { + "story_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["attachments", "comments"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAsanaTagDetails", + "qualifiedName": "AsanaApi.GetAsanaTagDetails", + "fullyQualifiedName": "AsanaApi.GetAsanaTagDetails@1.0.0", + "description": "Retrieve complete details for a specific Asana tag.\n\nFetches the full tag record for a provided tag ID in Asana. Useful for obtaining information about a specific tag to understand its properties and associated tasks.", + "parameters": [ + { + "name": "tag_global_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the tag in Asana used to fetch the complete tag details.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable to format the response in a readable, pretty format. Increases response size and time; useful for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of additional tag properties to include in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tags:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetAsanaTagDetails", + "parameters": { + "tag_global_identifier": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["color", "created_at", "modified_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAsanaTeamDetails", + "qualifiedName": "AsanaApi.GetAsanaTeamDetails", + "fullyQualifiedName": "AsanaApi.GetAsanaTeamDetails@1.0.0", + "description": "Retrieve detailed information for a specific Asana team.\n\nUse this tool to obtain the complete details of a specific team in Asana. It requires the 'teams:read' scope and returns all available data for the team identified by its GID.", + "parameters": [ + { + "name": "team_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the specific Asana team to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for human-readable formatting, with line breaks and indentation. Increases response time and size; use for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["teams:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetAsanaTeamDetails", + "parameters": { + "team_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["created_at", "members"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAsanaTeamsForUser", + "qualifiedName": "AsanaApi.GetAsanaTeamsForUser", + "fullyQualifiedName": "AsanaApi.GetAsanaTeamsForUser@1.0.0", + "description": "Get all teams assigned to a specific Asana user.\n\nUse this tool to retrieve a list of all teams that a specific user is part of in Asana. Requires the 'teams:read' permission scope.", + "parameters": [ + { + "name": "filter_by_organization", + "type": "string", + "required": true, + "description": "Specify the workspace or organization to filter the teams on for the Asana user.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "A string identifying a user. Accepts 'me', an email, or user's gid.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to format the response with line breaks and indentation. Useful for debugging but can increase response size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token to navigate through paginated results. Use an offset from a previous request to get the next page. If not provided, the first page is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of team records to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["teams:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeamsForUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetAsanaTeamsForUser", + "parameters": { + "filter_by_organization": { + "value": "123456789", + "type": "string", + "required": true + }, + "user_identifier": { + "value": "me", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["custom_field_values", "workspace"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAsanaTeamsForWorkspace", + "qualifiedName": "AsanaApi.GetAsanaTeamsForWorkspace", + "fullyQualifiedName": "AsanaApi.GetAsanaTeamsForWorkspace@1.0.0", + "description": "Retrieve all teams for a specified Asana workspace.\n\nUse this tool to get a list of all teams in an Asana workspace visible to the user. Ensure the required scope 'teams:read' is granted.", + "parameters": [ + { + "name": "workspace_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the workspace or organization in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive the response in a 'pretty' JSON format with line breaks and indentation. Useful for debugging but increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "An offset token for pagination. Use a token from a previous request to retrieve the next page of results. If not provided, the first page is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of teams to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["teams:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeamsForWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetAsanaTeamsForWorkspace", + "parameters": { + "workspace_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["members", "projects"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAsanaUsers", + "qualifiedName": "AsanaApi.GetAsanaUsers", + "fullyQualifiedName": "AsanaApi.GetAsanaUsers@1.0.0", + "description": "Retrieve Asana user records across workspaces.\n\nFetches user records from Asana for all users in workspaces and organizations accessible to the authenticated user. An optional workspace ID can be provided to filter results. The data is sorted by user ID and requires the 'users:read' scope.", + "parameters": [ + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting of the response for easier readability. Recommended for debugging as it increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_team_id", + "type": "string", + "required": false, + "description": "The team ID to filter users in Asana. It allows you to specify a particular team to narrow down the user results.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional user properties to include in the response. Use this to fetch additional fields excluded by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token for pagination, used to fetch subsequent pages of results. Only valid when using an offset returned in a prior request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of user records to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "The ID of the workspace or organization to filter users on.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["users:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUsers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetAsanaUsers", + "parameters": { + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_by_team_id": { + "value": "123456", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["email", "photo"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "workspace_id": { + "value": "workspace_789", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAsanaWebhooks", + "qualifiedName": "AsanaApi.GetAsanaWebhooks", + "fullyQualifiedName": "AsanaApi.GetAsanaWebhooks@1.0.0", + "description": "Retrieve all registered Asana webhooks for a workspace.\n\nUse this tool to get a compact representation of all webhooks registered by your app for the authenticated user in a specified Asana workspace. Requires the 'webhooks:read' scope.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Asana workspace to query for webhooks.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a readable, pretty-formatted JSON output. Increases response time and size. Use mainly for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include in the response, which are excluded by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "An offset token to retrieve the next page of results. Use the token from a previous API response for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of webhooks to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_resource", + "type": "string", + "required": false, + "description": "Specify the resource ID to filter webhooks for that particular resource.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["webhooks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWebhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetAsanaWebhooks", + "parameters": { + "workspace_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": "resource_id,wildcard", + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abcdef123456", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "specific_resource": { + "value": "9876543210", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAttachments", + "qualifiedName": "AsanaApi.GetAttachments", + "fullyQualifiedName": "AsanaApi.GetAttachments@1.0.0", + "description": "Retrieve all attachments for a specified Asana object.\n\nThis tool returns all attachments associated with a specified Asana object. It can be used to get attachments for projects, project briefs, and tasks. For projects, it provides files from the \"Key resources\" section; for project briefs, inline files in the brief itself; for tasks, all associated files, including inline images in descriptions.", + "parameters": [ + { + "name": "object_gid", + "type": "string", + "required": true, + "description": "Globally unique identifier for the Asana object to fetch attachments from, such as a `project`, `project_brief`, or `task`.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Return the response in a readable format with line breaks and indentation. Recommended for debugging as it may increase response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include, which are excluded by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Token for pagination. Use this to get the next page of results. If omitted, the first page is returned. Use only tokens from previous responses.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of objects to return per page, must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["attachments:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAttachmentsForObject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetAttachments", + "parameters": { + "object_gid": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": "created_at,modified_at", + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abcdef123456", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCompactGoals", + "qualifiedName": "AsanaApi.GetCompactGoals", + "fullyQualifiedName": "AsanaApi.GetCompactGoals@1.0.0", + "description": "Retrieve compact goal records from Asana.\n\nUse this tool to get a summary of goals available in Asana. It should be called when you need to access an overview of goals, requiring the 'goals:read' permission scope.", + "parameters": [ + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for readable JSON response. Mainly for debugging; increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "included_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of specific properties to include in the response. Use a comma-separated list format.", + "enum": null, + "inferrable": true + }, + { + "name": "is_workspace_level", + "type": "boolean", + "required": false, + "description": "Set to true to filter for goals where the workspace level is active. Must be used with the workspace parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token for pagination. Use the token from a previous response to retrieve the next page. If not provided, returns the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "portfolio_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the supporting portfolio in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the project. Used to filter goals associated with a specific project.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of goal records to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "supporting_task_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the supporting task in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the team. Use this to filter goals associated with a specific team.", + "enum": null, + "inferrable": true + }, + { + "name": "time_period_identifiers", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of globally unique identifiers for the desired time periods to filter the goals.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the workspace.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["goals:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getGoals'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetCompactGoals", + "parameters": { + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "included_optional_properties": { + "value": ["name", "due_date", "status"], + "type": "array", + "required": false + }, + "is_workspace_level": { + "value": false, + "type": "boolean", + "required": false + }, + "pagination_offset_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "portfolio_id": { + "value": "portfolio-456", + "type": "string", + "required": false + }, + "project_id": { + "value": "project-789", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "supporting_task_id": { + "value": "task-101112", + "type": "string", + "required": false + }, + "team_id": { + "value": "team-131415", + "type": "string", + "required": false + }, + "time_period_identifiers": { + "value": ["time-period-161718"], + "type": "array", + "required": false + }, + "workspace_id": { + "value": "workspace-192021", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomFieldMetadata", + "qualifiedName": "AsanaApi.GetCustomFieldMetadata", + "fullyQualifiedName": "AsanaApi.GetCustomFieldMetadata@1.0.0", + "description": "Retrieve complete metadata of a custom field in Asana.\n\nFetches the full definition of a custom field's metadata in Asana, including type-specific details such as enum options.", + "parameters": [ + { + "name": "custom_field_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the custom field in Asana to retrieve its metadata.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty printing for the output, making it more readable. Ideal for debugging, but increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["custom_fields:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetCustomFieldMetadata", + "parameters": { + "custom_field_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["enum_options", "is_global"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomFieldSettingsForProject", + "qualifiedName": "AsanaApi.GetCustomFieldSettingsForProject", + "fullyQualifiedName": "AsanaApi.GetCustomFieldSettingsForProject@1.0.0", + "description": "Get custom field settings for a specified project.\n\nUse this tool to retrieve all custom field settings associated with a specific project in Asana. It returns a list in compact form, which can be expanded using `opt_fields` to include additional data.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the Asana project to retrieve custom field settings.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable to receive a pretty, human-readable response with line breaks and indentation. Increases response time and size, use for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of property names to include in the response, expanding beyond the default fields.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "An offset token for pagination. Use the token from a previous request to get the next page of results. If not provided, it returns the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of custom field settings to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCustomFieldSettingsForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetCustomFieldSettingsForProject", + "parameters": { + "project_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["type", "name", "gid"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomFieldsForWorkspace", + "qualifiedName": "AsanaApi.GetCustomFieldsForWorkspace", + "fullyQualifiedName": "AsanaApi.GetCustomFieldsForWorkspace@1.0.0", + "description": "Retrieve custom fields for a specific workspace.\n\nFetches a list of all custom fields in a specified workspace, using Asana's API. Requires the 'custom_fields:read' scope.", + "parameters": [ + { + "name": "workspace_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the workspace or organization in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty printed output for the response, useful for debugging. This increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to include in the response for a workspace's custom fields. Include values such as 'name', 'type', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "An offset token for pagination. Use a token from a previous request to continue where it left off. If not used, retrieves the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of custom fields to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["custom_fields:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCustomFieldsForWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetCustomFieldsForWorkspace", + "parameters": { + "workspace_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["name", "type", "enabled"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomTypeDetails", + "qualifiedName": "AsanaApi.GetCustomTypeDetails", + "fullyQualifiedName": "AsanaApi.GetCustomTypeDetails@1.0.0", + "description": "Retrieve complete details of a specific custom type in Asana.\n\nUse this to obtain the full record for a custom type by its ID. Useful for accessing detailed information about custom types within Asana projects.", + "parameters": [ + { + "name": "custom_type_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the custom type in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, the response is formatted with line breaks and indentation for readability. Use this for debugging; it may increase response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to include in the response for the custom type. These are optional fields that are not included by default.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCustomType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetCustomTypeDetails", + "parameters": { + "custom_type_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["color", "icon", "description"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomTypes", + "qualifiedName": "AsanaApi.GetCustomTypes", + "fullyQualifiedName": "AsanaApi.GetCustomTypes@1.0.0", + "description": "Retrieve all custom types for a project in Asana.\n\nUse this tool to get a list of custom types linked to a project in Asana. Customize returned data using `opt_fields` for more detailed information.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project to filter custom types.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for pretty-printed JSON output during debugging. Increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include in the response for additional details.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_offset_token", + "type": "string", + "required": false, + "description": "Offset token from a previous response to fetch the next page of results. If not provided, the first page will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of custom types to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCustomTypes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetCustomTypes", + "parameters": { + "project_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["name", "color"], + "type": "array", + "required": false + }, + "next_page_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFilteredTags", + "qualifiedName": "AsanaApi.GetFilteredTags", + "fullyQualifiedName": "AsanaApi.GetFilteredTags@1.0.0", + "description": "Retrieve compact tag records with optional filters.\n\nCall this tool to get a list of compact tag records from Asana based on specific filter parameters. Requires 'tags:read' scope.", + "parameters": [ + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to 'true' for pretty JSON output with line breaks and indentation. Use for readability during debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to include in the response, specified as strings. Use to retrieve fields not returned by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Offset token for pagination. Use the offset from the previous response to get the next page. If not provided, returns the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies how many tag records to return per page. Must be an integer between 1 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_for_filtering", + "type": "string", + "required": false, + "description": "The workspace ID used to filter tags in the request.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tags:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetFilteredTags", + "parameters": { + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["color", "created_at"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "workspace_for_filtering": { + "value": "1234567890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFilteredTasks", + "qualifiedName": "AsanaApi.GetFilteredTasks", + "fullyQualifiedName": "AsanaApi.GetFilteredTasks@1.0.0", + "description": "Retrieve filtered task records from Asana.\n\nUse this tool to get compact task records based on specific filters like project, tag, assignee, or workspace. Ensure to specify a `project` or `tag` if `assignee` and `workspace` are not provided.", + "parameters": [ + { + "name": "assignee_id", + "type": "string", + "required": false, + "description": "The ID of the assignee to filter tasks on. If searching for unassigned tasks, use 'null'. Must be used with 'workspace'.", + "enum": null, + "inferrable": true + }, + { + "name": "completed_since_date_time", + "type": "string", + "required": false, + "description": "Tasks must be incomplete or completed since this date/time. Provide in ISO 8601 format (e.g., '2023-10-01T12:00:00Z').", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, provides the response in a pretty-printed, readable format. Use primarily for debugging as it increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_project", + "type": "string", + "required": false, + "description": "Specify the project to filter tasks. Use a string identifier for the project.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_workspace", + "type": "string", + "required": false, + "description": "The workspace to filter tasks by. Must be used with 'filter_by_assignee'.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_time", + "type": "string", + "required": false, + "description": "Return tasks modified since this time. Include changes in properties or associations. Format as string (e.g., 'YYYY-MM-DDTHH:MM:SSZ').", + "enum": null, + "inferrable": true + }, + { + "name": "optional_fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify properties to include in the response by providing an array of property names. These properties are excluded by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "An offset token for pagination to retrieve the next page of results. Use a previously returned token to continue pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Defines the number of task records to return per page. The value must be between 1 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "section_filter", + "type": "string", + "required": false, + "description": "The section to filter tasks within a project in Asana. Specify a section name to narrow down the tasks.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTasks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetFilteredTasks", + "parameters": { + "assignee_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "completed_since_date_time": { + "value": "2023-09-15T12:00:00Z", + "type": "string", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_by_project": { + "value": "project_id_abc", + "type": "string", + "required": false + }, + "filter_by_workspace": { + "value": "workspace_id_xyz", + "type": "string", + "required": false + }, + "modified_since_time": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "optional_fields_to_include": { + "value": ["name", "due_date", "assignee"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abcd1234efgh5678", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "section_filter": { + "value": "In Progress", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGoalRelationshipDetails", + "qualifiedName": "AsanaApi.GetGoalRelationshipDetails", + "fullyQualifiedName": "AsanaApi.GetGoalRelationshipDetails@1.0.0", + "description": "Retrieve details of a specific Asana goal relationship.\n\nUse this tool to get the complete updated record of a specific goal relationship in Asana by providing the goal relationship ID.", + "parameters": [ + { + "name": "goal_relationship_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the goal relationship you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enables pretty formatting for the response, increasing readability but also response size and time. Use for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A comma-separated list of optional properties to include in the response. Use this to include properties that are not returned by default.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getGoalRelationship'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetGoalRelationshipDetails", + "parameters": { + "goal_relationship_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["progress", "owner"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGoalRelationships", + "qualifiedName": "AsanaApi.GetGoalRelationships", + "fullyQualifiedName": "AsanaApi.GetGoalRelationships@1.0.0", + "description": "Retrieve compact goal relationship records from Asana.\n\nCall this tool to get information on goal relationships within an Asana workspace. It provides a compact view of the connections between goals, which may be useful for tracking progress or understanding hierarchy.", + "parameters": [ + { + "name": "supported_goal_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the supported goal in the goal relationship.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for pretty JSON output with indentation. Use mainly for debugging as it increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "goal_relationship_resource_subtype", + "type": "string", + "required": false, + "description": "Filter goal relationships by a specific resource subtype.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response. Allows access to additional fields excluded by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Token to specify the starting point for the next page of results. Use the token from the previous response to continue pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of goal relationship records to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getGoalRelationships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetGoalRelationships", + "parameters": { + "supported_goal_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "goal_relationship_resource_subtype": { + "value": "subtype_example", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["property_one", "property_two"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abcdef123456", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMembershipInfo", + "qualifiedName": "AsanaApi.GetMembershipInfo", + "fullyQualifiedName": "AsanaApi.GetMembershipInfo@1.0.0", + "description": "Retrieve membership record details by ID.\n\nFetches information for a specified membership ID, including project, goal, portfolio, or custom field memberships.", + "parameters": [ + { + "name": "membership_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the membership. Used to specify which membership record to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty output with indentation and line breaks for readability. Use for debugging as it increases response size and time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getMembership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetMembershipInfo", + "parameters": { + "membership_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMemberships", + "qualifiedName": "AsanaApi.GetMemberships", + "fullyQualifiedName": "AsanaApi.GetMemberships@1.0.0", + "description": "Retrieve compact membership records from Asana.\n\nThis tool fetches compact membership records such as goal, project, portfolio, or custom field memberships from Asana. It can filter results to specific memberships by using a member ID.", + "parameters": [ + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty JSON output with line breaks and indentation for readability. Use for debugging purposes as it may increase response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional fields to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "member_identifier", + "type": "string", + "required": false, + "description": "Globally unique identifier for a team or user to filter specific memberships.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Token for pagination. Use the offset from a previous API response to get the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for a goal, project, portfolio, or custom field in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of objects to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getMemberships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetMemberships", + "parameters": { + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["created_at", "updated_at", "assignee"], + "type": "array", + "required": false + }, + "member_identifier": { + "value": "1234567890", + "type": "string", + "required": false + }, + "pagination_offset_token": { + "value": "abcdef123456", + "type": "string", + "required": false + }, + "parent_id": { + "value": "0987654321", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrganizationExportDetails", + "qualifiedName": "AsanaApi.GetOrganizationExportDetails", + "fullyQualifiedName": "AsanaApi.GetOrganizationExportDetails@1.0.0", + "description": "Fetch details of a specific organization export.\n\nUse this tool to obtain details about a previously-requested export of an organization's data in Asana. It requires the export ID to retrieve the relevant information.", + "parameters": [ + { + "name": "organization_export_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the organization export. Required to retrieve the export details.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a human-readable response with line breaks and indentation. Recommended for debugging due to increased response size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Optional properties to include in the response, as a list of strings. This specifies which additional fields should be returned with the organization export details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOrganizationExport'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetOrganizationExportDetails", + "parameters": { + "organization_export_id": { + "value": "123456-abc-def-7890-ghijklmnop", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["project_details", "task_assignee", "due_dates"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetParentGoalsForGoal", + "qualifiedName": "AsanaApi.GetParentGoalsForGoal", + "fullyQualifiedName": "AsanaApi.GetParentGoalsForGoal@1.0.0", + "description": "Fetches parent goals for a specific Asana goal.\n\nUse this tool to obtain a list of parent goals for a specified goal in Asana. It requires the 'goals:read' scope to access the data.", + "parameters": [ + { + "name": "goal_unique_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the Asana goal whose parent goals are to be fetched.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of optional properties to include in the response. It should be a comma-separated list of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output_enabled", + "type": "boolean", + "required": false, + "description": "Set to true for a readable output format with line breaks and indentation, suitable for debugging. May increase response size and time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["goals:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getParentGoalsForGoal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetParentGoalsForGoal", + "parameters": { + "goal_unique_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "include_optional_properties": { + "value": ["due_date", "owner", "created_at"], + "type": "array", + "required": false + }, + "pretty_output_enabled": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPendingAccessRequests", + "qualifiedName": "AsanaApi.GetPendingAccessRequests", + "fullyQualifiedName": "AsanaApi.GetPendingAccessRequests@1.0.0", + "description": "Fetch pending access requests for a target object.\n\nUse this tool to retrieve pending access requests for a specific target object in Asana. You can also filter these requests by a specific user if needed.", + "parameters": [ + { + "name": "target_object_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the target object in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for readable, indented output. Use primarily for debugging due to increased response size.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_user", + "type": "string", + "required": false, + "description": "User identifier to filter requests. Accepts 'me', an email, or a user gid.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAccessRequests'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetPendingAccessRequests", + "parameters": { + "target_object_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_by_user": { + "value": "me", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["requested_at", "request_status"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPortfolioCustomFieldSettings", + "qualifiedName": "AsanaApi.GetPortfolioCustomFieldSettings", + "fullyQualifiedName": "AsanaApi.GetPortfolioCustomFieldSettings@1.0.0", + "description": "Retrieve custom field settings for an Asana portfolio.\n\nCall this tool to get all the custom field settings associated with a specific portfolio on Asana in compact form.", + "parameters": [ + { + "name": "portfolio_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the portfolio in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List optional properties to include in the response, specified as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token to fetch the next page of results. Use a token returned from a previous request. If not provided, the first page of results will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for pretty-formatted JSON output, with line breaks and indentation, mainly for debugging purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCustomFieldSettingsForPortfolio'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetPortfolioCustomFieldSettings", + "parameters": { + "portfolio_unique_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "include_optional_fields": { + "value": ["color", "description"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPortfolioDetails", + "qualifiedName": "AsanaApi.GetPortfolioDetails", + "fullyQualifiedName": "AsanaApi.GetPortfolioDetails@1.0.0", + "description": "Retrieve complete details of a specific portfolio in Asana.\n\nThis tool is used to obtain the full record of a particular portfolio in Asana, given its unique ID. It requires the 'portfolios:read' scope and returns comprehensive details including any custom field settings if the 'custom_fields:read' scope is also available.", + "parameters": [ + { + "name": "portfolio_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the specific portfolio to retrieve details.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for pretty, readable formatting of the output. Useful for debugging, but increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to include in the response. Specify as a list of strings for fields you wish to include, as the API excludes some by default.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["portfolios:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPortfolio'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetPortfolioDetails", + "parameters": { + "portfolio_unique_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["custom_fields", "owner", "created_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPortfolioItems", + "qualifiedName": "AsanaApi.GetPortfolioItems", + "fullyQualifiedName": "AsanaApi.GetPortfolioItems@1.0.0", + "description": "Retrieve a list of items in a portfolio.\n\nThis tool fetches a list of items in compact form within a specified portfolio. It requires the 'portfolios:read' scope to access the portfolio data.", + "parameters": [ + { + "name": "portfolio_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the portfolio. Required to fetch items for a specific portfolio.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, the response will be formatted for readability with line breaks and indentation. Recommended for debugging as this can increase response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Token for offsetting to the next page of results. Use a token from previous pagination to retrieve subsequent pages.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of items to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["portfolios:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getItemsForPortfolio'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetPortfolioItems", + "parameters": { + "portfolio_unique_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["due_date", "assignee", "notes"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPortfolioMembership", + "qualifiedName": "AsanaApi.GetPortfolioMembership", + "fullyQualifiedName": "AsanaApi.GetPortfolioMembership@1.0.0", + "description": "Retrieve a single portfolio membership record.\n\nUse this tool to obtain the complete portfolio record for a specific portfolio membership by its unique identifier.", + "parameters": [ + { + "name": "portfolio_membership_id", + "type": "string", + "required": true, + "description": "The unique identifier for the portfolio membership to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, enables pretty JSON output with line breaking and indentation, increasing response size and time. Useful for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional properties to include in the response, specified as strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPortfolioMembership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetPortfolioMembership", + "parameters": { + "portfolio_membership_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["created_at", "updated_at", "notes"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPortfolioMemberships", + "qualifiedName": "AsanaApi.GetPortfolioMemberships", + "fullyQualifiedName": "AsanaApi.GetPortfolioMemberships@1.0.0", + "description": "Retrieve portfolio memberships from Asana.\n\nRetrieve a list of portfolio memberships based on specified criteria such as portfolio, user, or workspace from Asana. Useful for managing and accessing user roles in project management.", + "parameters": [ + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty output formatting with indentation for readability. Ideal for debugging, it increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional properties to include in the response. Provide them as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Token for pagination to retrieve the next page of results. Use the offset provided by a previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "portfolio_filter", + "type": "string", + "required": false, + "description": "Specify the portfolio ID to filter the results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of portfolio memberships to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": false, + "description": "A string identifier for a user: \"me\", an email, or the user's gid.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_filter", + "type": "string", + "required": false, + "description": "Specify the workspace to filter portfolio membership results. This should match the workspace identifier used in Asana.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPortfolioMemberships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetPortfolioMemberships", + "parameters": { + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["created_at", "modified_at"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "portfolio_filter": { + "value": "123456789", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "user_identifier": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "workspace_filter": { + "value": "workspace_987654", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectAllocations", + "qualifiedName": "AsanaApi.GetProjectAllocations", + "fullyQualifiedName": "AsanaApi.GetProjectAllocations@1.0.0", + "description": "Retrieve allocations for a specific project, user, or placeholder.\n\nUse this tool to get a list of work allocations filtered by a specific project, user, or placeholder in Asana.", + "parameters": [ + { + "name": "assignee_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the user or placeholder the allocation is assigned to.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty output format for JSON. Use this for easier reading during debugging, as it increases response size and processing time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List properties to include in the response, provided as a list of strings. Provides access to additional data fields.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Offset token for pagination. Use this to retrieve the next page of results. If not provided, the first page will be returned. Only use offsets returned from previous requests.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the project to filter allocations by.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of allocations to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the workspace to filter allocations by.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAllocations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetProjectAllocations", + "parameters": { + "assignee_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["time_spent", "effort_level"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "project_id": { + "value": "9876543210", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "workspace_id": { + "value": "5432167890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectBrief", + "qualifiedName": "AsanaApi.GetProjectBrief", + "fullyQualifiedName": "AsanaApi.GetProjectBrief@1.0.0", + "description": "Retrieve the full record for a project brief.\n\nUse this tool to obtain the complete details of a specific project brief by its unique identifier. Ideal for accessing comprehensive project information within Asana.", + "parameters": [ + { + "name": "project_brief_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the specific project brief to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of property names to include in the response. These properties are excluded by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output_enabled", + "type": "boolean", + "required": false, + "description": "Enable readable, formatted output. Suitable for debugging. Increases response time and size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectBrief'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetProjectBrief", + "parameters": { + "project_brief_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "include_optional_properties": { + "value": ["description", "due_date"], + "type": "array", + "required": false + }, + "pretty_output_enabled": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectDetails", + "qualifiedName": "AsanaApi.GetProjectDetails", + "fullyQualifiedName": "AsanaApi.GetProjectDetails@1.0.0", + "description": "Retrieve complete details of a specified Asana project.\n\nThis tool retrieves the complete record of a specific project from Asana. It requires 'projects:read' scope and additional scopes for accessing custom field settings and team information, if needed.", + "parameters": [ + { + "name": "project_global_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the Asana project you want to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for nicely formatted, readable output, mainly for debugging due to increased size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional property names to include in the project details response. Provide these as a list of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetProjectDetails", + "parameters": { + "project_global_identifier": { + "value": "1234567890123456", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["custom_fields", "team"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectMembershipDetails", + "qualifiedName": "AsanaApi.GetProjectMembershipDetails", + "fullyQualifiedName": "AsanaApi.GetProjectMembershipDetails@1.0.0", + "description": "Retrieve detailed information for a project membership in Asana.\n\nCall this tool to get a detailed record of a specific project membership in Asana by providing the project membership ID.", + "parameters": [ + { + "name": "project_membership_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project membership to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a human-readable response format, useful for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional project membership properties to include in the response. These are normally excluded by default.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectMembership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetProjectMembershipDetails", + "parameters": { + "project_membership_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["notes", "workspace", "modified_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectMemberships", + "qualifiedName": "AsanaApi.GetProjectMemberships", + "fullyQualifiedName": "AsanaApi.GetProjectMemberships@1.0.0", + "description": "Fetch project membership records from Asana.\n\nRetrieve compact information about project memberships for a specified project in Asana.", + "parameters": [ + { + "name": "project_unique_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project to fetch memberships for.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the response output. Useful for debugging as it adds line breaks and indentation, making it more readable. Note: This increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to include in the response. Use a comma-separated list to specify optional properties to be included in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "page_offset_token", + "type": "string", + "required": false, + "description": "Token for pagination to retrieve the next set of results. Use the token from a previous response to get subsequent pages.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of objects to return per page (between 1 and 100).", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": false, + "description": "A string identifying a user, either \"me\", an email, or the user's gid.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectMembershipsForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetProjectMemberships", + "parameters": { + "project_unique_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["assignee", "due_date"], + "type": "array", + "required": false + }, + "page_offset_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "user_identifier": { + "value": "user@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectSections", + "qualifiedName": "AsanaApi.GetProjectSections", + "fullyQualifiedName": "AsanaApi.GetProjectSections@1.0.0", + "description": "Fetch compact records for sections in a specified project.\n\nUse this tool to obtain a list of all sections within a specific project on Asana. It helps in managing and organizing project components effectively by retrieving key details of each section.", + "parameters": [ + { + "name": "project_unique_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enables readable formatting of the response when true, using line breaks and indentation. Recommended for debugging as it increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "included_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of optional properties to include in the response, specified as strings. This allows you to fetch additional details about the sections that are not included by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token for paginated API requests. Use it to retrieve the next set of results. If not provided, the API returns the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of sections to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSectionsForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetProjectSections", + "parameters": { + "project_unique_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "included_optional_fields": { + "value": ["color", "created_at"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectsForTask", + "qualifiedName": "AsanaApi.GetProjectsForTask", + "fullyQualifiedName": "AsanaApi.GetProjectsForTask@1.0.0", + "description": "Retrieve all projects associated with a specific task.\n\nReturns a compact list of projects that a specified task is part of. Useful for understanding task context within various projects.", + "parameters": [ + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The identifier of the task to retrieve associated projects for.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive the output in a 'pretty' format, useful for debugging. Note: This increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional project properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Offset token used for pagination. If not provided, the first page is returned. Only pass an offset returned from a previous request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of project entries to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectsForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetProjectsForTask", + "parameters": { + "task_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "optional_fields_to_include": { + "value": ["name", "created_at", "due_date"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectStatusUpdate", + "qualifiedName": "AsanaApi.GetProjectStatusUpdate", + "fullyQualifiedName": "AsanaApi.GetProjectStatusUpdate@1.0.0", + "description": "Fetches a complete status update record for a project.\n\nRetrieves the full details of a specific project status update. Note that this endpoint is deprecated, and new integrations should use `/status_updates/{status_gid}` instead.", + "parameters": [ + { + "name": "project_status_update_id", + "type": "string", + "required": true, + "description": "The ID of the project status update to retrieve. This should be a unique identifier for the specific status update.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, formats the response with line breaks and indentation for readability. Recommended for debugging only, as it increases response size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional properties to include in the response. This allows fetching additional details that are excluded by default.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetProjectStatusUpdate", + "parameters": { + "project_status_update_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["attachments", "comments"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectStatusUpdates", + "qualifiedName": "AsanaApi.GetProjectStatusUpdates", + "fullyQualifiedName": "AsanaApi.GetProjectStatusUpdates@1.0.0", + "description": "Fetch compact status updates for a given project.\n\nUse this tool to retrieve all the compact status update records for a specified project on Asana. This is useful to get a historical or current view of the project's status updates. Note that this endpoint is deprecated for new integrations.", + "parameters": [ + { + "name": "project_global_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable to format the response for readability with line breaks and indentation. Only recommended for debugging due to increased response size and processing time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token for pagination. Use the token provided by a previous request to retrieve the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of status updates to return per page, must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectStatusesForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetProjectStatusUpdates", + "parameters": { + "project_global_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["created_at", "modified_at", "assignee"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectTasks", + "qualifiedName": "AsanaApi.GetProjectTasks", + "fullyQualifiedName": "AsanaApi.GetProjectTasks@1.0.0", + "description": "Fetch tasks from a specific Asana project.\n\nRetrieves compact task records for all tasks in a given Asana project, ordered by their priority. Useful for accessing and managing task lists.", + "parameters": [ + { + "name": "project_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the Asana project. Required to retrieve tasks from a specific project.", + "enum": null, + "inferrable": true + }, + { + "name": "completed_since", + "type": "string", + "required": false, + "description": "Return tasks incomplete or completed after this date-time or 'now'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the response. This makes the output more readable but increases response size and time. Useful for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Token for paginating results. Use it to retrieve the next set of tasks from a previously returned offset.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of task records to return per page in the result. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTasksForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetProjectTasks", + "parameters": { + "project_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "completed_since": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["assignee", "due_date"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abcdef123456", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectTemplateDetails", + "qualifiedName": "AsanaApi.GetProjectTemplateDetails", + "fullyQualifiedName": "AsanaApi.GetProjectTemplateDetails@1.0.0", + "description": "Retrieve complete details of a specific Asana project template.\n\nFetches all information about a particular project template in Asana. Useful for obtaining full details of a project's structure and specifications.", + "parameters": [ + { + "name": "project_template_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project template to fetch complete details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List properties to include in the response. Exclude default properties, using a comma-separated format.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output_enabled", + "type": "boolean", + "required": false, + "description": "Set to true to receive a formatted and readable response output, suitable for debugging. Increases response time and size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["project_templates:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetProjectTemplateDetails", + "parameters": { + "project_template_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "include_optional_properties": { + "value": ["custom_field_1", "custom_field_2"], + "type": "array", + "required": false + }, + "pretty_output_enabled": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectTemplatesForTeam", + "qualifiedName": "AsanaApi.GetProjectTemplatesForTeam", + "fullyQualifiedName": "AsanaApi.GetProjectTemplatesForTeam@1.0.0", + "description": "Retrieve compact project template records for a team.\n\nCall this tool to get a list of project templates for a specified team in Asana. It requires the 'project_templates:read' scope.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the team to retrieve project templates.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable to get the response in a readable, \"pretty\" JSON format. Useful for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response. Specify any properties excluded by default that you wish to see.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token to fetch the next page of results. Use the token returned from a previous request's pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of project templates to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["project_templates:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectTemplatesForTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetProjectTemplatesForTeam", + "parameters": { + "team_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["created_at", "modified_at"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abcdef123456", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStatusUpdatesForObject", + "qualifiedName": "AsanaApi.GetStatusUpdatesForObject", + "fullyQualifiedName": "AsanaApi.GetStatusUpdatesForObject@1.0.0", + "description": "Retrieve status updates for a specified object in Asana.\n\nUse this tool to get the compact status update records for all updates related to a specific object in Asana. It is helpful for tracking changes or updates on any Asana object.", + "parameters": [ + { + "name": "object_gid", + "type": "string", + "required": true, + "description": "Globally unique identifier (GID) for the Asana object (project, portfolio, or goal) to fetch status updates from.", + "enum": null, + "inferrable": true + }, + { + "name": "created_since_time", + "type": "string", + "required": false, + "description": "Return statuses created after the specified time. Use ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty JSON output with line breaks and indentation for readability. Mainly used for debugging, as it increases response size.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the optional properties to include in the response. Provide as a comma-separated list of property names.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Token to fetch the next page of results. Use an offset returned from a previous paginated request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStatusesForObject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetStatusUpdatesForObject", + "parameters": { + "object_gid": { + "value": "1234567890", + "type": "string", + "required": true + }, + "created_since_time": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "optional_fields_to_include": { + "value": ["created_at", "created_by"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTagsForTask", + "qualifiedName": "AsanaApi.GetTagsForTask", + "fullyQualifiedName": "AsanaApi.GetTagsForTask@1.0.0", + "description": "Retrieve all tags for a given task.\n\nUse this tool to get a list of tags linked to a specific task in Asana. It requires the 'tags:read' scope to access the data.", + "parameters": [ + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the task to retrieve tags for in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive the response in a formatted, readable form. Useful for debugging as it increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of optional properties to include in the response as comma-separated values.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "An offset token for paginating results. Use the token from a previous response to access subsequent pages.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of objects to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tags:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTagsForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTagsForTask", + "parameters": { + "task_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["color", "created_at"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaskCountsForProject", + "qualifiedName": "AsanaApi.GetTaskCountsForProject", + "fullyQualifiedName": "AsanaApi.GetTaskCountsForProject@1.0.0", + "description": "Retrieve task count details for a specific project in Asana.\n\nUse this tool to get detailed counts of tasks, including total, incomplete, and completed tasks, for a specific project in Asana. Ensure the necessary scopes are granted: `projects:read`, and optionally `custom_fields:read` and `teams:read`. Opt in to specific fields to retrieve data, considering rate and cost limits.", + "parameters": [ + { + "name": "project_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to format the response in a readable way with line breaks and indentation. Use for debugging due to increased response size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include in the response. Opt-in to get specific data fields from the endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTaskCountsForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTaskCountsForProject", + "parameters": { + "project_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["completed_count", "incomplete_count"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaskDependencies", + "qualifiedName": "AsanaApi.GetTaskDependencies", + "fullyQualifiedName": "AsanaApi.GetTaskDependencies@1.0.0", + "description": "Retrieve all dependencies for a specific Asana task.\n\nThis tool is used to get all dependencies associated with a specific task in Asana. It should be utilized when there's a need to understand the dependencies that a task has, requiring tasks:read scope.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The global ID of the task to retrieve dependencies for in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for output; useful for debugging. Increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "included_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include in the response. Some properties are excluded by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "The offset token for pagination, used to retrieve the next page of results. Pass this only if paginating a previous request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of task dependencies to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDependenciesForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTaskDependencies", + "parameters": { + "task_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "included_fields": { + "value": ["name", "assignee", "due_date"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaskDependents", + "qualifiedName": "AsanaApi.GetTaskDependents", + "fullyQualifiedName": "AsanaApi.GetTaskDependents@1.0.0", + "description": "Retrieve the dependents of a specific task.\n\nUse this tool to obtain a list of all tasks dependent on a specified task in Asana. This tool requires the 'tasks:read' scope.", + "parameters": [ + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the task to retrieve dependents for.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable this for JSON responses with readable line breaks and indentation. Use mainly for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional properties to include in the response, specified as strings.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Offset token for paginated results. Use a token from a previous response to continue fetching results. Defaults to the first page if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDependentsForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTaskDependents", + "parameters": { + "task_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["due_date", "assignee", "priority"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abc123token", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaskDetails", + "qualifiedName": "AsanaApi.GetTaskDetails", + "fullyQualifiedName": "AsanaApi.GetTaskDetails@1.0.0", + "description": "Fetch detailed information for a specific Asana task.\n\nRetrieves the complete task record for a specified task in Asana. This includes information such as memberships and actual time spent, depending on permissions. Useful for getting comprehensive task data for project management and tracking purposes.", + "parameters": [ + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "Specify the unique identifier of the Asana task to retrieve detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a prettily formatted response, which may increase response time and size. Best used for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify optional task properties to include in the response. Use a list of strings representing property names.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTaskDetails", + "parameters": { + "task_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["assignee", "due_date", "completed"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTasksForSection", + "qualifiedName": "AsanaApi.GetTasksForSection", + "fullyQualifiedName": "AsanaApi.GetTasksForSection@1.0.0", + "description": "Fetch tasks for a specific section in Asana.\n\nUse this tool to retrieve all tasks within a given section in Asana's board view. Requires 'tasks:read' scope.", + "parameters": [ + { + "name": "section_unique_identifier", + "type": "string", + "required": true, + "description": "The globally unique identifier for the section in Asana to fetch tasks from. Required to specify the exact section targeted.", + "enum": null, + "inferrable": true + }, + { + "name": "completed_since_filter", + "type": "string", + "required": false, + "description": "Return tasks incomplete or completed since a specific time. Use a date-time string or 'now'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting of the response for readability. Increases response time and size. Use mainly for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Offset token for pagination. Use it to fetch the next page of results. If not provided, the first page will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of tasks to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTasksForSection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTasksForSection", + "parameters": { + "section_unique_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "completed_since_filter": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "optional_fields_to_include": { + "value": ["name", "due_on", "assignee"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTasksForTag", + "qualifiedName": "AsanaApi.GetTasksForTag", + "fullyQualifiedName": "AsanaApi.GetTasksForTag@1.0.0", + "description": "Retrieve tasks associated with a specific tag in Asana.\n\nUse this tool to get a list of tasks that are associated with a specific tag in Asana. This can help organize tasks that share common attributes or objectives. Useful for managing tasks by category or project requirements.", + "parameters": [ + { + "name": "tag_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the tag to retrieve associated tasks.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Formats the response for readability with line breaks and indentation. Use true only during debugging due to increased response size.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of optional property names to include in the response for each task (comma-separated).", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "A token for pagination to fetch the next set of results. Use the token returned from a previous call for fetching subsequent pages. If not provided, the first page of results is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of task objects to return per page, ranging from 1 to 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTasksForTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTasksForTag", + "parameters": { + "tag_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "optional_fields_to_include": { + "value": ["name", "due_date", "assignee"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abc123token", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaskStories", + "qualifiedName": "AsanaApi.GetTaskStories", + "fullyQualifiedName": "AsanaApi.GetTaskStories@1.0.0", + "description": "Retrieve all stories for a specified Asana task.\n\nThis tool fetches all compact records for stories associated with a specific task in Asana, requiring the 'stories:read' scope.", + "parameters": [ + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the task to retrieve stories from.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a readable, pretty format with line breaks and indentation. Useful for debugging. This will increase response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of optional resource properties to include, specified as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "An offset token for paginating through results. Use a token returned from a previous API call to access subsequent pages. If not provided, the first page is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of stories to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["stories:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStoriesForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTaskStories", + "parameters": { + "task_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["created_at", "modified_at"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abc123offset", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaskSubtasks", + "qualifiedName": "AsanaApi.GetTaskSubtasks", + "fullyQualifiedName": "AsanaApi.GetTaskSubtasks@1.0.0", + "description": "Retrieve subtasks for a specific task in Asana.\n\nUse this tool to get a list of subtasks for a given task in Asana. Useful when you need to see all the subtasks associated with a task to track progress or manage workflow.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier of the task to retrieve subtasks for.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable to receive the response in a 'pretty' format with line breaks and indentation. Useful for debugging. May increase response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "An offset token for pagination to retrieve the next page of results. Pass the token from a previous paginated request. If not provided, the first page is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of subtasks to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSubtasksForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTaskSubtasks", + "parameters": { + "task_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["assignee", "due_date"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abcdef123456", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamMembership", + "qualifiedName": "AsanaApi.GetTeamMembership", + "fullyQualifiedName": "AsanaApi.GetTeamMembership@1.0.0", + "description": "Retrieve complete details for a team membership.\n\nUse this tool to obtain the full team membership record for a specific team membership in Asana. It requires the 'team_memberships:read' scope.", + "parameters": [ + { + "name": "team_membership_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific team membership to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the response with line breaks and indentation. Useful for debugging, but increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional properties to include in the response, specified as strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["team_memberships:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeamMembership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTeamMembership", + "parameters": { + "team_membership_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["role", "created_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamMemberships", + "qualifiedName": "AsanaApi.GetTeamMemberships", + "fullyQualifiedName": "AsanaApi.GetTeamMemberships@1.0.0", + "description": "Retrieve compact team membership records from Asana.\n\nFetches compact records of team memberships from Asana when scope 'team_memberships:read' is required.", + "parameters": [ + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Return response in a readable format with line breaks and indentation. Ideal for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the properties to include in the response, as some are excluded by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "An offset token for pagination. Use a previously returned token to access subsequent pages. If omitted, the first page is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "Globally unique identifier for the team in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": false, + "description": "A string identifying a user. Use 'me', an email, or a user gid. Must be used with 'workspace'.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the workspace. This parameter must be used with the user_id parameter.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["team_memberships:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeamMemberships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTeamMemberships", + "parameters": { + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "optional_fields_to_include": { + "value": ["membership_status", "role"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "team_identifier": { + "value": "1234567890", + "type": "string", + "required": false + }, + "user_identifier": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "workspace_id": { + "value": "0987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamProjects", + "qualifiedName": "AsanaApi.GetTeamProjects", + "fullyQualifiedName": "AsanaApi.GetTeamProjects@1.0.0", + "description": "Fetch the list of projects for a specified team.\n\nThis tool retrieves the compact project records for all projects within a specified team. It should be used when you need to access or display project details for a given team in Asana. Requires the 'projects:read' scope.", + "parameters": [ + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the team whose projects are to be retrieved. It is required to specify the team.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the response, making it more readable. Use mainly for debugging due to increased response size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional properties to include in the response for the projects. Specify as a list of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "only_archived_projects", + "type": "boolean", + "required": false, + "description": "Return projects based on their archived status. True for archived projects, False for non-archived projects.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token used for pagination to fetch the next page of results. If not provided, the first page is returned. Use an offset from a previous response for subsequent pages.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of projects to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectsForTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTeamProjects", + "parameters": { + "team_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["due_date", "owner", "created_at"], + "type": "array", + "required": false + }, + "only_archived_projects": { + "value": false, + "type": "boolean", + "required": false + }, + "pagination_offset_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamUsersAsana", + "qualifiedName": "AsanaApi.GetTeamUsersAsana", + "fullyQualifiedName": "AsanaApi.GetTeamUsersAsana@1.0.0", + "description": "Retrieve user records for a specific Asana team.\n\nThis tool fetches the compact records of all users who are members of a specified Asana team. It should be called to obtain a list of team members, sorted alphabetically, with a limit of 2000 users.", + "parameters": [ + { + "name": "team_global_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the Asana team to retrieve users from.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty output with line breaks and indentation for readability. Recommended for debugging as it increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties you wish to include in the response. These are excluded by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token for pagination. Use this token from a previous response to fetch the next page of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["users:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUsersForTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTeamUsersAsana", + "parameters": { + "team_global_identifier": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["email", "workspaces"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "offset_67890xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTimePeriodRecord", + "qualifiedName": "AsanaApi.GetTimePeriodRecord", + "fullyQualifiedName": "AsanaApi.GetTimePeriodRecord@1.0.0", + "description": "Retrieve detailed information for a specific time period.\n\nUse this tool to get the full record of a single time period by specifying its identifier.", + "parameters": [ + { + "name": "time_period_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the time period to retrieve its record.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for output. Use only for debugging as it increases response size and processing time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of property names to include in the response. These properties are excluded by default.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTimePeriod'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTimePeriodRecord", + "parameters": { + "time_period_id": { + "value": "TP123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["duration", "status", "notes"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTimePeriods", + "qualifiedName": "AsanaApi.GetTimePeriods", + "fullyQualifiedName": "AsanaApi.GetTimePeriods@1.0.0", + "description": "Retrieve compact time period records from Asana.\n\nUse this tool to access and retrieve compact time period records from Asana's service when you need to handle or analyze time-related data.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the Asana workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive formatted, readable output mainly for debugging, increasing response size.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date", + "type": "string", + "required": false, + "description": "The end date for time periods in ISO 8601 format. Specify the last date to include in the returned results.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional property names to include in the response, specified as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Offset token for pagination. Use the offset from a previous API response to retrieve the next page of results. If omitted, the first page is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, from 1 to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "Start date for the time period in ISO 8601 format. Determines the beginning of the time period records to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTimePeriods'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTimePeriods", + "parameters": { + "workspace_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "end_date": { + "value": "2023-12-31T23:59:59Z", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["duration", "description"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "start_date": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTimeTrackingEntries", + "qualifiedName": "AsanaApi.GetTimeTrackingEntries", + "fullyQualifiedName": "AsanaApi.GetTimeTrackingEntries@1.0.0", + "description": "Retrieve time tracking entries for a specified task.\n\nUse this tool to get detailed time tracking entries associated with a specific task in Asana. It should be called when you need to analyze or review the time spent on a task by different users.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier for the task to retrieve time tracking entries for.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a readable, pretty-formatted output. Recommended for debugging as it may increase response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response, enhancing the returned resource details.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Token for pagination; use to retrieve the next set of results. If not provided, the first page is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of time tracking entries to return per page, must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["time_tracking_entries:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTimeTrackingEntriesForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTimeTrackingEntries", + "parameters": { + "task_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["user", "duration", "notes"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTimeTrackingEntry", + "qualifiedName": "AsanaApi.GetTimeTrackingEntry", + "fullyQualifiedName": "AsanaApi.GetTimeTrackingEntry@1.0.0", + "description": "Retrieve a time tracking entry from Asana.\n\nUse this tool to obtain the complete record of a specific time tracking entry in Asana. This should be called when detailed information about a particular time tracking task is needed.", + "parameters": [ + { + "name": "time_tracking_entry_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the time tracking entry. Used to specify which entry to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable to get the response in a readable format with line breaks and indentation. Use only for debugging, as it may increase response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to include as optional fields in the response. Provide properties as strings in a comma-separated format. Default properties are excluded unless explicitly specified here.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["time_tracking_entries:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTimeTrackingEntry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetTimeTrackingEntry", + "parameters": { + "time_tracking_entry_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": "duration,notes", + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserDetails", + "qualifiedName": "AsanaApi.GetUserDetails", + "fullyQualifiedName": "AsanaApi.GetUserDetails@1.0.0", + "description": "Retrieve detailed user information from Asana.\n\nUse this tool to get the complete user record for a specific user in Asana by providing their user ID. Ensure you have the required scope: users:read.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "A string to identify a user, which can be 'me', an email, or a user's gid.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to format the response for readability with line breaks and indentation. Recommended for debugging, as it may increase response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify properties to include in the response using a comma-separated list of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["users:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetUserDetails", + "parameters": { + "user_identifier": { + "value": "me", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["photo", "workspaces", "email"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserFavorites", + "qualifiedName": "AsanaApi.GetUserFavorites", + "fullyQualifiedName": "AsanaApi.GetUserFavorites@1.0.0", + "description": "Retrieve a user's favorites from a specified Asana workspace.\n\nThis tool retrieves all of a user's favorites within a specified Asana workspace and of a given type. The results are ordered as they appear in the user's Asana sidebar and are limited to the current user associated with the authentication token.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "String to identify a user: 'me', an email, or a user GID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Asana workspace to retrieve favorites from.", + "enum": null, + "inferrable": true + }, + { + "name": "favorites_resource_type", + "type": "string", + "required": false, + "description": "Specifies the type of favorites to return (e.g., 'portfolio', 'project').", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify a list of optional properties to include in the response, separated by commas.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "An offset token for pagination. Use a token returned from a previous request to navigate pages. If not provided, the first page is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for readable, formatted output with line breaks and indentation, ideal for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of objects to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["users:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFavoritesForUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetUserFavorites", + "parameters": { + "user_identifier": { + "value": "me", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "favorites_resource_type": { + "value": "project", + "type": "string", + "required": false + }, + "include_optional_fields": { + "value": ["due_date", "assignee"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abc123", + "type": "string", + "required": false + }, + "pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserOwnedPortfolios", + "qualifiedName": "AsanaApi.GetUserOwnedPortfolios", + "fullyQualifiedName": "AsanaApi.GetUserOwnedPortfolios@1.0.0", + "description": "Retrieve a list of portfolios owned by the user.\n\nUse this tool to get a list of portfolios owned by the current API user in Asana. This is useful for managing and organizing projects within the user's account.", + "parameters": [ + { + "name": "workspace_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the workspace or organization to filter portfolios on.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the output, improving readability with line breaks and indentation. This may increase response size and time, suitable for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include in the response, allowing retrieval of additional optional fields.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "A token to retrieve the next page of results. Use the offset token from a previous API response for pagination. If omitted, returns the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "portfolio_owner_identifier", + "type": "string", + "required": false, + "description": "Specify the user who owns the portfolio. Only applicable if using a Service Account for accessing portfolios owned by different users.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of portfolios to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["portfolios:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPortfolios'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetUserOwnedPortfolios", + "parameters": { + "workspace_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["name", "created_at", "updated_at"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "portfolio_owner_identifier": { + "value": "987654321", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserTaskList", + "qualifiedName": "AsanaApi.GetUserTaskList", + "fullyQualifiedName": "AsanaApi.GetUserTaskList@1.0.0", + "description": "Retrieve tasks in a user's My Tasks list.\n\nFetches a compact list of tasks for a user's My Tasks list from Asana. It includes both complete and incomplete tasks unless filtered. Access control applies, so private tasks are excluded if the authenticated user lacks permissions.", + "parameters": [ + { + "name": "user_task_list_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the user's task list. This ID is required to fetch tasks from the specified user list.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty output to make the JSON response more readable. This increases response time and size, so it's recommended for debugging only.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_completed_tasks_since", + "type": "string", + "required": false, + "description": "Return only tasks that are either incomplete or completed since this date-time or the keyword 'now'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the optional properties to include in the response, as a list of strings. These properties are excluded by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token for pagination. Use the token returned from a previous request to fetch the next page. If not provided, the first page is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "tasks_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of tasks to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTasksForUserTaskList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetUserTaskList", + "parameters": { + "user_task_list_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_completed_tasks_since": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "include_optional_fields": { + "value": ["due_date", "assignee"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "tasks_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserTeamMemberships", + "qualifiedName": "AsanaApi.GetUserTeamMemberships", + "fullyQualifiedName": "AsanaApi.GetUserTeamMemberships@1.0.0", + "description": "Retrieve team membership records for a specific user.\n\nThis tool returns the compact team membership records for a specified user in Asana. It should be called when you need to obtain information about a user's team memberships. Requires 'team_memberships:read' scope.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "A string identifying a user, which can be 'me', an email, or the user's gid.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the workspace in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the response output with line breaks and indentation, useful for debugging. It increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional properties to include in the response, specified as strings. Use to get excluded fields.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Offset token for pagination. Use the offset to get the next page of results, returned from a previous paginated request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of records to return per page, ranging from 1 to 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["team_memberships:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeamMembershipsForUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetUserTeamMemberships", + "parameters": { + "user_identifier": { + "value": "me", + "type": "string", + "required": true + }, + "workspace_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["team_name", "team_description"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserWorkspaceMemberships", + "qualifiedName": "AsanaApi.GetUserWorkspaceMemberships", + "fullyQualifiedName": "AsanaApi.GetUserWorkspaceMemberships@1.0.0", + "description": "Fetches a user's workspace membership records in Asana.\n\nUse this tool to obtain compact workspace membership details for a specific user in Asana. Call this tool when you need to understand which workspaces a user is associated with.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "String identifying a user. Use 'me', an email, or a user gid.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, provides the response in a readable, pretty format with line breaks and indentation. Useful for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional user properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "page_offset_token", + "type": "string", + "required": false, + "description": "Token to fetch the next page of results from a paginated request. Use a token returned from a previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of objects to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWorkspaceMembershipsForUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetUserWorkspaceMemberships", + "parameters": { + "user_identifier": { + "value": "me", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": "email,profile_picture", + "type": "array", + "required": false + }, + "page_offset_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetVisibleWorkspaces", + "qualifiedName": "AsanaApi.GetVisibleWorkspaces", + "fullyQualifiedName": "AsanaApi.GetVisibleWorkspaces@1.0.0", + "description": "Retrieve all workspaces visible to the user.\n\nFetches a list of compact records for all workspaces the authorized user can see, requiring the 'workspaces:read' scope.", + "parameters": [ + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable for pretty, readable response. Ideal for debugging as it increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional fields to include in the response. Use this to include properties that are excluded by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "An offset token for paginating through the results. Use the token returned from a previous request to access the next page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of workspaces to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["workspaces:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWorkspaces'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetVisibleWorkspaces", + "parameters": { + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["created_at", "is_template"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_limit_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceDetails", + "qualifiedName": "AsanaApi.GetWorkspaceDetails", + "fullyQualifiedName": "AsanaApi.GetWorkspaceDetails@1.0.0", + "description": "Retrieve detailed information about a specific Asana workspace.\n\nUse this tool to get the full record of a specific workspace in Asana by providing the workspace ID. It requires the 'workspaces:read' scope.", + "parameters": [ + { + "name": "workspace_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the Asana workspace or organization.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable this to provide a response with pretty formatting, including line breaks and indentation. Recommended for debugging due to increased response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the optional properties to include, as a comma-separated list, to extend the default fields in the workspace record.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["workspaces:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetWorkspaceDetails", + "parameters": { + "workspace_global_id": { + "value": "1234567890123", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": "name,icon,custom_fields", + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceEvents", + "qualifiedName": "AsanaApi.GetWorkspaceEvents", + "fullyQualifiedName": "AsanaApi.GetWorkspaceEvents@1.0.0", + "description": "Retrieve all events in a workspace since a specific sync token.\n\nUse this tool to get a full record of events that have occurred in an Asana workspace since a specified sync token. If the number of events exceeds 1000, the response will indicate there are more events to retrieve.", + "parameters": [ + { + "name": "workspace_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the workspace or organization in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty output for better readability. Recommended for debugging as it increases response size and takes extra time.", + "enum": null, + "inferrable": true + }, + { + "name": "sync_token", + "type": "string", + "required": false, + "description": "A sync token received from the last request to fetch events from a specific point in time. Omit on first sync to receive a new token.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWorkspaceEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetWorkspaceEvents", + "parameters": { + "workspace_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "sync_token": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceMembership", + "qualifiedName": "AsanaApi.GetWorkspaceMembership", + "fullyQualifiedName": "AsanaApi.GetWorkspaceMembership@1.0.0", + "description": "Get the complete record for a workspace membership.\n\nUse this tool to retrieve detailed information about a specific workspace membership in Asana.", + "parameters": [ + { + "name": "workspace_membership_id", + "type": "string", + "required": true, + "description": "The unique identifier for the workspace membership to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for \"pretty\" JSON formatting with line breaks and indentation. Increases response time and size; use for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of specific properties to include in the response, as some are excluded by default.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWorkspaceMembership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetWorkspaceMembership", + "parameters": { + "workspace_membership_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["user", "project", "role"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceMemberships", + "qualifiedName": "AsanaApi.GetWorkspaceMemberships", + "fullyQualifiedName": "AsanaApi.GetWorkspaceMemberships@1.0.0", + "description": "Retrieve workspace membership records.\n\nThis tool calls Asana's API to fetch compact workspace membership records for a specified workspace. It should be used when you need to list or check members of a workspace.", + "parameters": [ + { + "name": "workspace_global_id", + "type": "string", + "required": true, + "description": "A globally unique identifier for the workspace or organization to fetch memberships for.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty output with line breaks and indentation for debugging purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings specifying optional properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Offset token for pagination to retrieve the next page of results. Use the token returned from a previous call for continuous paging, or leave empty for the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of membership records to return per page, from 1 to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": false, + "description": "A string to identify a user, such as 'me', an email, or a user's gid in Asana.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWorkspaceMembershipsForWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetWorkspaceMemberships", + "parameters": { + "workspace_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["email", "photo"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "user_identifier": { + "value": "user@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceProjects", + "qualifiedName": "AsanaApi.GetWorkspaceProjects", + "fullyQualifiedName": "AsanaApi.GetWorkspaceProjects@1.0.0", + "description": "Fetch compact project records for a workspace.\n\nThis tool retrieves the compact project records for all projects in a specified workspace from Asana. It should be called when you need to access project information within a workspace. Note: May timeout for large domains; consider using the `/teams/{team_gid}/projects` endpoint for efficiency.", + "parameters": [ + { + "name": "workspace_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the workspace or organization in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "archived_projects_only", + "type": "boolean", + "required": false, + "description": "Specify `true` to return only archived projects, and `false` to include unarchived ones.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the response output. Use this for a readable JSON format, mainly during debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_fields_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify a list of property names to include in the response. These properties are not included by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token for pagination. Use to request subsequent pages. If omitted, returns the first page. Only use tokens from previous requests.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of project records to return per page. Must be between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectsForWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetWorkspaceProjects", + "parameters": { + "workspace_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "archived_projects_only": { + "value": false, + "type": "boolean", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "optional_fields_to_include": { + "value": ["name", "status", "due_date"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceUsers", + "qualifiedName": "AsanaApi.GetWorkspaceUsers", + "fullyQualifiedName": "AsanaApi.GetWorkspaceUsers@1.0.0", + "description": "Retrieve all users from a specified workspace.\n\nFetches compact records for all users in a specific Asana workspace or organization. Suitable for retrieving member lists sorted alphabetically, limited to 2000 users.", + "parameters": [ + { + "name": "workspace_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the workspace or organization in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a \"pretty\" response with indentation and line breaks. Recommended for debugging as it increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List properties to include in the response. Provide these as an array of strings to retrieve additional user information beyond the default fields.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "An offset token used for paginating results. It allows you to retrieve the next page of results by using a token returned from a previous request. If omitted, the first page is returned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["users:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUsersForWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.GetWorkspaceUsers", + "parameters": { + "workspace_unique_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["email", "photo", "workspaces"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "InitiateBulkResourceExport", + "qualifiedName": "AsanaApi.InitiateBulkResourceExport", + "fullyQualifiedName": "AsanaApi.InitiateBulkResourceExport@1.0.0", + "description": "Initiate a bulk export of tasks, teams, or messages in a workspace.\n\nUse this tool to start exporting tasks, teams, or messages from a workspace in Asana. The export is processed asynchronously, and results can be monitored using the jobs endpoint. The export includes attachments and stories by default, with options to specify fields and apply filters. The final export file is in JSON Lines format, compressed in a gzip container.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createResourceExport'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.InitiateBulkResourceExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"workspace_id\": \"123456789\", \"data\": {\"type\": \"task\", \"filters\": {\"completed\": false}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "InitiateGraphExport", + "qualifiedName": "AsanaApi.InitiateGraphExport", + "fullyQualifiedName": "AsanaApi.InitiateGraphExport@1.0.0", + "description": "Initiate a graph export job for Asana objects.\n\nInitiates a graph export job for a specified Asana goal, team, portfolio, or project. The export is processed asynchronously. Use the jobs endpoint to monitor progress. Caching occurs for exports exceeding 1,000 tasks, lasting 4 hours.", + "parameters": [ + { + "name": "parent_object_id", + "type": "string", + "required": false, + "description": "Globally unique ID of the Asana parent object: goal, project, portfolio, or team.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createGraphExport'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.InitiateGraphExport", + "parameters": { + "parent_object_id": { + "value": "1234567890123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "InstantiateProjectFromTemplate", + "qualifiedName": "AsanaApi.InstantiateProjectFromTemplate", + "fullyQualifiedName": "AsanaApi.InstantiateProjectFromTemplate@1.0.0", + "description": "Asynchronously instantiate a project from a template.\n\n This tool creates a job to asynchronously handle project instantiation using a specified project template. It should be called when you need to create a new project from an existing template in Asana. Ensure you have the 'projects:write' scope and verify if your workspace is an organization.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_template_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the project template to instantiate the project from. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional properties to include in the response. Provide as a comma-separated list. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the response. Use this for debugging purposes as it increases response time and size. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'instantiateProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.InstantiateProjectFromTemplate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_template_id": { + "value": "12345", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["custom_fields", "tasks"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Project\",\"notes\":\"Description of the project\",\"workspace\":\"WorkspaceID\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MoveSectionInProject", + "qualifiedName": "AsanaApi.MoveSectionInProject", + "fullyQualifiedName": "AsanaApi.MoveSectionInProject@1.0.0", + "description": "Reorder sections within a project in Asana.\n\nUse this tool to move sections relative to each other within a single Asana project. Either 'before_section' or 'after_section' must be specified. This tool does not support moving sections between different projects.", + "parameters": [ + { + "name": "project_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, enables pretty output with line breaks and indentation for readability. Use primarily for debugging, as it may increase response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "insert_after_section_id", + "type": "string", + "required": false, + "description": "The ID of the section after which the given section will be inserted. Specify to reorder sections within the same project.", + "enum": null, + "inferrable": true + }, + { + "name": "insert_before_section_id", + "type": "string", + "required": false, + "description": "Specify the section ID to place the given section immediately before it.", + "enum": null, + "inferrable": true + }, + { + "name": "section_to_reorder", + "type": "string", + "required": false, + "description": "Globally unique identifier for the section to move within the project.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insertSectionForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.MoveSectionInProject", + "parameters": { + "project_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "insert_after_section_id": { + "value": "0987654321", + "type": "string", + "required": false + }, + "insert_before_section_id": { + "value": "1122334455", + "type": "string", + "required": false + }, + "section_to_reorder": { + "value": "5566778899", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RejectAccessRequest", + "qualifiedName": "AsanaApi.RejectAccessRequest", + "fullyQualifiedName": "AsanaApi.RejectAccessRequest@1.0.0", + "description": "Reject an access request for a target object.\n\nThis tool should be called when you need to reject a pending access request for a specific target object in Asana. Use it to manage access control effectively by denying requests as needed.", + "parameters": [ + { + "name": "access_request_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the access request to be rejected. This value is required for identifying which access request to reject in Asana.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'rejectAccessRequest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RejectAccessRequest", + "parameters": { + "access_request_identifier": { + "value": "12345-abcdef-67890-ghijkl", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveCustomFieldFromPortfolio", + "qualifiedName": "AsanaApi.RemoveCustomFieldFromPortfolio", + "fullyQualifiedName": "AsanaApi.RemoveCustomFieldFromPortfolio@1.0.0", + "description": "Removes a custom field from an Asana portfolio.\n\nUse this tool to remove a custom field setting from a specific portfolio in Asana. Useful when you need to update portfolio configurations by eliminating unnecessary custom fields.", + "parameters": [ + { + "name": "portfolio_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the portfolio to identify which portfolio the custom field should be removed from.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_field_id_to_remove", + "type": "string", + "required": false, + "description": "The unique identifier of the custom field to be removed from the portfolio.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty format for the output, adding line breaks and indentation for readability. Increases response size and processing time, recommended for debugging.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["portfolios:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeCustomFieldSettingForPortfolio'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RemoveCustomFieldFromPortfolio", + "parameters": { + "portfolio_global_id": { + "value": "12345", + "type": "string", + "required": true + }, + "custom_field_id_to_remove": { + "value": "67890", + "type": "string", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveCustomFieldFromProject", + "qualifiedName": "AsanaApi.RemoveCustomFieldFromProject", + "fullyQualifiedName": "AsanaApi.RemoveCustomFieldFromProject@1.0.0", + "description": "Remove a custom field setting from an Asana project.\n\nUse this tool to remove a custom field setting from a specified project in Asana. This requires the 'projects:write' scope.", + "parameters": [ + { + "name": "project_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the Asana project.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_field_id_to_remove", + "type": "string", + "required": false, + "description": "The ID of the custom field to remove from the specified project in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Formats the response in a readable way with line breaks and indentation. Use for debugging as it increases response time and size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeCustomFieldSettingForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RemoveCustomFieldFromProject", + "parameters": { + "project_unique_id": { + "value": "1234567890123456", + "type": "string", + "required": true + }, + "custom_field_id_to_remove": { + "value": "9876543210987654", + "type": "string", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveFollowersFromProject", + "qualifiedName": "AsanaApi.RemoveFollowersFromProject", + "fullyQualifiedName": "AsanaApi.RemoveFollowersFromProject@1.0.0", + "description": "Remove specified users from following a project in Asana.\n\nThis tool removes a list of specified users from following a project in Asana without affecting their membership status. It should be called when you want to update who follows a project without altering project membership.", + "parameters": [ + { + "name": "project_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to format the response with line breaks and indentation for readability. Useful for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to include in the response, specified as strings. This should be used to include properties that are not returned by default.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifiers_to_unfollow", + "type": "string", + "required": false, + "description": "Array of user identifiers (e.g. \"me\", email, or gid) to remove from following the project.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeFollowersForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RemoveFollowersFromProject", + "parameters": { + "project_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["created_at", "modified_at"], + "type": "array", + "required": false + }, + "user_identifiers_to_unfollow": { + "value": ["user1@example.com", "user2@example.com"], + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveGoalFollowers", + "qualifiedName": "AsanaApi.RemoveGoalFollowers", + "fullyQualifiedName": "AsanaApi.RemoveGoalFollowers@1.0.0", + "description": "Remove followers from a specific goal in Asana.\n\nUse this tool to remove followers from a goal in Asana. It returns the complete updated goal record with the followers removed. Ideal for managing team members involved with specific goals.", + "parameters": [ + { + "name": "goal_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the goal to remove followers from.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty JSON output with line breaking and indentation. Useful for debugging; increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "followers_to_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of user identifiers to remove as followers. These can be \"me\", an email, or a user gid.", + "enum": null, + "inferrable": true + }, + { + "name": "included_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeFollowers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RemoveGoalFollowers", + "parameters": { + "goal_unique_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "followers_to_remove": { + "value": ["user@example.com", "another_user_gid"], + "type": "array", + "required": false + }, + "included_optional_fields": { + "value": ["followers", "custom_fields"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveGoalRelationship", + "qualifiedName": "AsanaApi.RemoveGoalRelationship", + "fullyQualifiedName": "AsanaApi.RemoveGoalRelationship@1.0.0", + "description": "Removes a supporting relationship from a goal in Asana.\n\nUse this tool to remove a specified supporting relationship from a parent goal in Asana. It is useful for managing and updating the hierarchical organization of goals.", + "parameters": [ + { + "name": "goal_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the goal to identify which goal is being modified.", + "enum": null, + "inferrable": true + }, + { + "name": "provide_pretty_output", + "type": "boolean", + "required": false, + "description": "Provides pretty-printed output for debugging, enhancing readability with line breaks and indentation. Increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "supporting_resource_gid", + "type": "string", + "required": false, + "description": "The globally unique identifier (gid) of the supporting resource (goal, project, task, or portfolio) to remove from the parent goal.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeSupportingRelationship'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RemoveGoalRelationship", + "parameters": { + "goal_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "provide_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "supporting_resource_gid": { + "value": "0987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveItemFromPortfolio", + "qualifiedName": "AsanaApi.RemoveItemFromPortfolio", + "fullyQualifiedName": "AsanaApi.RemoveItemFromPortfolio@1.0.0", + "description": "Remove an item from a portfolio in Asana.\n\nUse this tool to remove an item from a specified portfolio in Asana. Requires the 'portfolios:write' scope.", + "parameters": [ + { + "name": "portfolio_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the portfolio to remove the item from.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable this to receive the response in a readable, formatted way. This can increase response size and is best for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "item_to_remove", + "type": "string", + "required": false, + "description": "Specify the ID of the item to be removed from the portfolio.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["portfolios:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeItemForPortfolio'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RemoveItemFromPortfolio", + "parameters": { + "portfolio_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "item_to_remove": { + "value": "987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveMembersFromProject", + "qualifiedName": "AsanaApi.RemoveMembersFromProject", + "fullyQualifiedName": "AsanaApi.RemoveMembersFromProject@1.0.0", + "description": "Remove specified users from a project in Asana.\n\nThis tool calls the Asana API to remove a list of specified users from the members of a project. It returns the updated project record after the removal operation.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the project.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for formatted, human-readable JSON. Increases response size; use for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional fields to include in the response. Use a comma-separated list to specify.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifiers", + "type": "string", + "required": false, + "description": "Array of user identifiers to be removed from the project. Accepts \"me\", email, or user gid.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeMembersForProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RemoveMembersFromProject", + "parameters": { + "project_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["name", "members"], + "type": "array", + "required": false + }, + "user_identifiers": { + "value": ["user@example.com", "1122334455"], + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemovePortfolioMembers", + "qualifiedName": "AsanaApi.RemovePortfolioMembers", + "fullyQualifiedName": "AsanaApi.RemovePortfolioMembers@1.0.0", + "description": "Remove specified members from a portfolio.\n\nUse this tool to remove a list of users from the members of a specific Asana portfolio. The tool returns the updated portfolio record after the members have been removed.", + "parameters": [ + { + "name": "portfolio_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the portfolio to modify. Required for removing members.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable to format the response with line breaks and indentation for readability. Recommended only for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include in the response, allowing for additional data retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "members_to_remove", + "type": "string", + "required": false, + "description": "List of user identifiers to remove from the portfolio. Use 'me', an email, or user gid.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeMembersForPortfolio'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RemovePortfolioMembers", + "parameters": { + "portfolio_unique_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["name", "id", "created_at"], + "type": "array", + "required": false + }, + "members_to_remove": { + "value": "me, user@example.com, 987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTagFromTask", + "qualifiedName": "AsanaApi.RemoveTagFromTask", + "fullyQualifiedName": "AsanaApi.RemoveTagFromTask@1.0.0", + "description": "Remove a tag from a task in Asana.\n\nUse this tool to remove a specific tag from a task in Asana. This action requires write access to tasks.", + "parameters": [ + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the task from which the tag should be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, formats the response for readability with line breaks and indentation. Use primarily for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_gid_to_remove", + "type": "string", + "required": false, + "description": "The GID of the tag to be removed from the task in Asana.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeTagForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RemoveTagFromTask", + "parameters": { + "task_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "tag_gid_to_remove": { + "value": "987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTaskDependencies", + "qualifiedName": "AsanaApi.RemoveTaskDependencies", + "fullyQualifiedName": "AsanaApi.RemoveTaskDependencies@1.0.0", + "description": "Unlink dependencies from a specified task on Asana.\n\nUse this tool to remove a set of dependencies from a given task in Asana. Requires 'tasks:write' access scope.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier of the task to operate on for removing dependencies.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive a formatted, readable response. Useful for debugging, but increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "task_dependency_ids_to_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of task GIDs representing dependencies to be removed from the specified task.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeDependenciesForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RemoveTaskDependencies", + "parameters": { + "task_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "task_dependency_ids_to_remove": { + "value": ["9876543210", "1234987650"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTaskDependents", + "qualifiedName": "AsanaApi.RemoveTaskDependents", + "fullyQualifiedName": "AsanaApi.RemoveTaskDependents@1.0.0", + "description": "Unlink dependents from an Asana task.\n\nUse this tool to unlink a set of dependents from a specific task in Asana. This is useful when you need to adjust task dependencies within your project management workflow.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier of the task to operate on.", + "enum": null, + "inferrable": true + }, + { + "name": "dependents_task_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of task GIDs that should be unlinked from the specified task.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for prettified JSON output. Recommended only for debugging as it increases response size and time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeDependentsForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RemoveTaskDependents", + "parameters": { + "task_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "dependents_task_ids": { + "value": ["2345678901", "3456789012"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTaskFromProject", + "qualifiedName": "AsanaApi.RemoveTaskFromProject", + "fullyQualifiedName": "AsanaApi.RemoveTaskFromProject@1.0.0", + "description": "Remove a task from the specified project in Asana.\n\nRemoves a task from a specified project within Asana. The task continues to exist in the system but will no longer be associated with the project. Requires 'tasks:write' scope.", + "parameters": [ + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the task to remove from the project.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable 'pretty' response formatting. Provides line breaks and indentation for readability, useful mainly for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "project_to_remove_task_from", + "type": "string", + "required": false, + "description": "The identifier of the project from which the task will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeProjectForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RemoveTaskFromProject", + "parameters": { + "task_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "project_to_remove_task_from": { + "value": "0987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveUserFromTeam", + "qualifiedName": "AsanaApi.RemoveUserFromTeam", + "fullyQualifiedName": "AsanaApi.RemoveUserFromTeam@1.0.0", + "description": "Removes a user from a specified Asana team.\n\nUse this tool to remove a user from an Asana team. The request must be made by someone who is a member of the team.", + "parameters": [ + { + "name": "team_global_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the team to remove a user from.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty JSON formatting for the response. This increases readability but also response size, so it's advisable for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": false, + "description": "A string identifying the user to be removed. It can be 'me', an email, or the user's gid.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeUserForTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RemoveUserFromTeam", + "parameters": { + "team_global_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "user_identifier": { + "value": "user@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveUserFromWorkspace", + "qualifiedName": "AsanaApi.RemoveUserFromWorkspace", + "fullyQualifiedName": "AsanaApi.RemoveUserFromWorkspace@1.0.0", + "description": "Remove a user from an Asana workspace or organization.\n\nUse this tool to remove a user from a specified workspace or organization in Asana. The caller must be an admin in the workspace. The user can be identified by their user ID or email. Different token types (Service Account Token or Personal Access Token) affect post-removal behaviors, such as resource ownership transfer.", + "parameters": [ + { + "name": "workspace_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the workspace or organization in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable to receive formatted and more readable output. Use for debugging due to increased response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": false, + "description": "Identifies the user to be removed. Accepts 'me', an email, or a globally unique user ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeUserForWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RemoveUserFromWorkspace", + "parameters": { + "workspace_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "user_identifier": { + "value": "user@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReorderEnumOptionCustomField", + "qualifiedName": "AsanaApi.ReorderEnumOptionCustomField", + "fullyQualifiedName": "AsanaApi.ReorderEnumOptionCustomField@1.0.0", + "description": "Reorder enum options in a custom field.\n\nMoves an enum option within a custom field to a specified position relative to another option. Locked fields can only be edited by the locker.", + "parameters": [ + { + "name": "custom_field_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the custom field to be modified.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty output for a more readable JSON response format, useful for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "enum_option_gid_to_relocate", + "type": "string", + "required": false, + "description": "The globally unique identifier (GID) of the enum option to relocate within the custom field.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of resource properties to include in the response, which are excluded by default. This should be a list of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "insert_after_enum_option", + "type": "string", + "required": false, + "description": "The ID of an existing enum option after which the new option should be inserted. Cannot be used with 'insert_before_enum_option'.", + "enum": null, + "inferrable": true + }, + { + "name": "insert_before_enum_option_gid", + "type": "string", + "required": false, + "description": "GID of an existing enum option before which the new option should be inserted. Cannot be used with after_enum_option.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["custom_fields:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insertEnumOptionForCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.ReorderEnumOptionCustomField", + "parameters": { + "custom_field_id": { + "value": "12345", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "enum_option_gid_to_relocate": { + "value": "67890", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["name", "color"], + "type": "array", + "required": false + }, + "insert_after_enum_option": { + "value": "54321", + "type": "string", + "required": false + }, + "insert_before_enum_option_gid": { + "value": "09876", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RequestOrganizationExport", + "qualifiedName": "AsanaApi.RequestOrganizationExport", + "fullyQualifiedName": "AsanaApi.RequestOrganizationExport@1.0.0", + "description": "Submit a request to export an organization in Asana.\n\nUse this tool to initiate an organization export request in Asana. The export will be processed by Asana after the request is submitted.", + "parameters": [ + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable to receive the response in a formatted JSON with proper indentation. Increases response size and time; use primarily for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of property names to include in the export, separated by commas. Use to include non-default properties.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the workspace or organization to be exported in Asana.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createOrganizationExport'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RequestOrganizationExport", + "parameters": { + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["name", "created_at", "modified_at"], + "type": "array", + "required": false + }, + "organization_id": { + "value": "1234567890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAuditLogEvents", + "qualifiedName": "AsanaApi.RetrieveAuditLogEvents", + "fullyQualifiedName": "AsanaApi.RetrieveAuditLogEvents@1.0.0", + "description": "Retrieve audit log events from your Asana domain.\n\nUse this tool to get a list of audit log events captured in your Asana domain. It supports various query parameters for filtering events and provides paginated results. Useful for tracking and auditing activities since October 8th, 2021.", + "parameters": [ + { + "name": "workspace_unique_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the workspace or organization to filter the audit log events.", + "enum": null, + "inferrable": true + }, + { + "name": "actor_id_filter", + "type": "string", + "required": false, + "description": "Filter events to those triggered by the actor with this unique ID.", + "enum": null, + "inferrable": true + }, + { + "name": "actor_type_filter", + "type": "string", + "required": false, + "description": "Specify the actor type to filter events. Use only if not querying by actor ID.", + "enum": null, + "inferrable": true + }, + { + "name": "event_type_filter", + "type": "string", + "required": false, + "description": "Specify the type of events to filter. Refer to the supported audit log events for valid types.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_resource_id", + "type": "string", + "required": false, + "description": "Filter events based on the specific resource ID to retrieve only those associated with this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_events_end_time", + "type": "string", + "required": false, + "description": "Filter events to include only those created before this date and time (exclusive).", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Offset token to specify the starting point for retrieving the next page of results. Use the token from the previous response to continue paging through results. Leaving this unset will fetch the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Set the number of audit log events to return per page of results, between 1 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_filter", + "type": "string", + "required": false, + "description": "Filter events created on or after this time (inclusive). Provide in ISO 8601 format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAuditLogEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RetrieveAuditLogEvents", + "parameters": { + "workspace_unique_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "actor_id_filter": { + "value": "actor_12345", + "type": "string", + "required": false + }, + "actor_type_filter": { + "value": "user", + "type": "string", + "required": false + }, + "event_type_filter": { + "value": "task_created", + "type": "string", + "required": false + }, + "filter_by_resource_id": { + "value": "resource_67890", + "type": "string", + "required": false + }, + "filter_events_end_time": { + "value": "2023-09-30T23:59:59Z", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "abcdef123456", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "start_time_filter": { + "value": "2021-10-08T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePortfolioMemberships", + "qualifiedName": "AsanaApi.RetrievePortfolioMemberships", + "fullyQualifiedName": "AsanaApi.RetrievePortfolioMemberships@1.0.0", + "description": "Retrieve compact portfolio membership records for a portfolio.\n\nCall this tool to obtain a list of portfolio membership records associated with a specific portfolio in Asana. Use it when you need to view or manage the members of a portfolio.", + "parameters": [ + { + "name": "portfolio_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the portfolio required to fetch membership records.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive a readable, formatted response. Use this primarily for debugging due to increased response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify a list of optional properties to include, using a comma-separated list.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset_token", + "type": "string", + "required": false, + "description": "Offset token used for pagination to retrieve the next page of results. Use the token returned from a previous request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of portfolio memberships to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": false, + "description": "A string identifying a user. This can be 'me', an email, or the user's gid.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPortfolioMembershipsForPortfolio'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RetrievePortfolioMemberships", + "parameters": { + "portfolio_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["user_status", "role"], + "type": "array", + "required": false + }, + "pagination_offset_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "user_identifier": { + "value": "me", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTaskByCustomId", + "qualifiedName": "AsanaApi.RetrieveTaskByCustomId", + "fullyQualifiedName": "AsanaApi.RetrieveTaskByCustomId@1.0.0", + "description": "Retrieve a task using a custom ID in Asana.\n\nThis tool retrieves details of a task from Asana using a given custom ID shortcode. It requires the necessary scope for accessing task details and may include additional scopes to access related memberships or time tracking information.", + "parameters": [ + { + "name": "task_custom_id", + "type": "string", + "required": true, + "description": "The generated custom ID used to identify a specific task in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the workspace or organization in Asana.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTaskForCustomID'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RetrieveTaskByCustomId", + "parameters": { + "task_custom_id": { + "value": "abc12345xyz", + "type": "string", + "required": true + }, + "workspace_global_id": { + "value": "1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveWebhookDetails", + "qualifiedName": "AsanaApi.RetrieveWebhookDetails", + "fullyQualifiedName": "AsanaApi.RetrieveWebhookDetails@1.0.0", + "description": "Retrieve the full record of a specified webhook.\n\nUse this tool to get complete details of a webhook by its ID. Requires webhooks:read scope.", + "parameters": [ + { + "name": "webhook_global_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the webhook to retrieve its full record.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enables pretty output formatting with line breaks and indentation. Use this for debugging, but be aware it increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "included_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of optional properties to include in the response. Provide these as an array of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["webhooks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RetrieveWebhookDetails", + "parameters": { + "webhook_global_identifier": { + "value": "webhook_123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "included_fields": { + "value": ["created_at", "target", "resource"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveWorkspaceTags", + "qualifiedName": "AsanaApi.RetrieveWorkspaceTags", + "fullyQualifiedName": "AsanaApi.RetrieveWorkspaceTags@1.0.0", + "description": "Retrieve tags for a specific workspace in Asana.\n\nUse this tool to get compact tag records for a specified workspace in Asana. The tags can be filtered using various parameters.", + "parameters": [ + { + "name": "workspace_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the Asana workspace or organization.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty JSON output with proper line breaking and indentation intended for debugging. This may increase response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of optional tag properties to include, specified as strings. These properties are excluded by default.", + "enum": null, + "inferrable": true + }, + { + "name": "offset_token", + "type": "string", + "required": false, + "description": "The offset token to retrieve the next page of results. Use a token from a previous response for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of tag records to return per page, between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tags:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTagsForWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.RetrieveWorkspaceTags", + "parameters": { + "workspace_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["color", "created_at"], + "type": "array", + "required": false + }, + "offset_token": { + "value": "abcde12345", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchTasksInWorkspace", + "qualifiedName": "AsanaApi.SearchTasksInWorkspace", + "fullyQualifiedName": "AsanaApi.SearchTasksInWorkspace@1.0.0", + "description": "Search for tasks in an Asana workspace using complex filters.\n\nUtilize this tool to perform an advanced search for tasks within a specified Asana workspace. It supports complex filters and is available to premium Asana users. Use it to find tasks with specific criteria, including custom field parameters. Note that pagination needs to be handled manually due to search result variability.", + "parameters": [ + { + "name": "workspace_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the workspace or organization where tasks are searched.", + "enum": null, + "inferrable": true + }, + { + "name": "all_tags_filters", + "type": "string", + "required": false, + "description": "Comma-separated list of tag IDs to filter tasks that have all specified tags.", + "enum": null, + "inferrable": true + }, + { + "name": "assigned_by_user_ids", + "type": "string", + "required": false, + "description": "A comma-separated list of user IDs to filter tasks assigned by specific users.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_identifiers_any", + "type": "string", + "required": false, + "description": "Provide a comma-separated list of user identifiers for any assignee to include in the search.", + "enum": null, + "inferrable": true + }, + { + "name": "before_modified_on_date", + "type": "string", + "required": false, + "description": "ISO 8601 date string to filter tasks modified before this date.", + "enum": null, + "inferrable": true + }, + { + "name": "completed_at_after", + "type": "string", + "required": false, + "description": "Specify an ISO 8601 datetime string to filter tasks completed after this date and time.", + "enum": null, + "inferrable": true + }, + { + "name": "completed_at_before_datetime", + "type": "string", + "required": false, + "description": "Filter tasks completed before the specified ISO 8601 datetime.", + "enum": null, + "inferrable": true + }, + { + "name": "completed_on_after_date", + "type": "string", + "required": false, + "description": "Specify an ISO 8601 date to filter tasks completed after this date.", + "enum": null, + "inferrable": true + }, + { + "name": "completed_on_before_date", + "type": "string", + "required": false, + "description": "Filter tasks completed before a specific date using an ISO 8601 date string.", + "enum": null, + "inferrable": true + }, + { + "name": "completed_on_date", + "type": "string", + "required": false, + "description": "Filter tasks by their completion date using an ISO 8601 date string or `null` for no specific date.", + "enum": null, + "inferrable": true + }, + { + "name": "created_after_date", + "type": "string", + "required": false, + "description": "Specify the earliest creation date for tasks using an ISO 8601 date string. Filters tasks created after this date.", + "enum": null, + "inferrable": true + }, + { + "name": "created_after_datetime", + "type": "string", + "required": false, + "description": "Filter tasks created after this ISO 8601 datetime string.", + "enum": null, + "inferrable": true + }, + { + "name": "created_at_before", + "type": "string", + "required": false, + "description": "An ISO 8601 datetime string to filter tasks created before this date and time.", + "enum": null, + "inferrable": true + }, + { + "name": "created_by_users", + "type": "string", + "required": false, + "description": "Comma-separated list of user IDs to filter tasks created by specific users.", + "enum": null, + "inferrable": true + }, + { + "name": "created_on_before_date", + "type": "string", + "required": false, + "description": "Filter tasks created before a specific date using an ISO 8601 date string format.", + "enum": null, + "inferrable": true + }, + { + "name": "created_on_date", + "type": "string", + "required": false, + "description": "Filter tasks by their creation date using an ISO 8601 date string or `null`.", + "enum": null, + "inferrable": true + }, + { + "name": "due_at_after_datetime", + "type": "string", + "required": false, + "description": "Specify the start date and time for tasks due after this point. Use an ISO 8601 datetime string.", + "enum": null, + "inferrable": true + }, + { + "name": "due_at_before", + "type": "string", + "required": false, + "description": "An ISO 8601 datetime string to filter tasks due before this date and time.", + "enum": null, + "inferrable": true + }, + { + "name": "due_date_on", + "type": "string", + "required": false, + "description": "Filter tasks due on a specific date using an ISO 8601 date string or specify `null` for tasks with no due date.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Formats the response with line breaks and indentation for readability. Use for debugging, as it increases response size and processing time.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_before_start_on", + "type": "string", + "required": false, + "description": "Filter tasks starting before a specified date, using an ISO 8601 date string.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_assigned_by_users", + "type": "string", + "required": false, + "description": "A comma-separated list of user IDs to exclude tasks assigned by these users.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_assignees", + "type": "string", + "required": false, + "description": "Comma-separated list of user identifiers to exclude from the search results.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_created_by_user_ids", + "type": "string", + "required": false, + "description": "Comma-separated list of user IDs to exclude from the search results.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_followers_by_user_ids", + "type": "string", + "required": false, + "description": "Comma-separated list of user identifiers to exclude from the followers filter.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_projects_by_id", + "type": "string", + "required": false, + "description": "A comma-separated list of project IDs to exclude from the search results.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_sections_by_id", + "type": "string", + "required": false, + "description": "Comma-separated list of section or column IDs to exclude from the search results.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_tags_by_ids", + "type": "string", + "required": false, + "description": "A comma-separated list of tag IDs to exclude from the search results.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_tasks_commented_by_users", + "type": "string", + "required": false, + "description": "Comma-separated list of user identifiers to exclude tasks commented on by these users.", + "enum": null, + "inferrable": true + }, + { + "name": "excluded_liked_by_user_ids", + "type": "string", + "required": false, + "description": "A comma-separated list of user IDs to exclude tasks liked by these users.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_all_projects", + "type": "string", + "required": false, + "description": "Comma-separated list of project IDs to filter tasks that belong to all specified projects.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_any_follower_ids", + "type": "string", + "required": false, + "description": "Filter tasks by providing a comma-separated list of user IDs who are followers of the tasks.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_any_team_ids", + "type": "string", + "required": false, + "description": "Comma-separated list of team IDs to filter tasks associated with any of these teams.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_due_date_before", + "type": "string", + "required": false, + "description": "Specify tasks with a due date earlier than this ISO 8601 date string.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_modified_date_start", + "type": "string", + "required": false, + "description": "Start date to filter tasks modified after this date in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_sections_all", + "type": "string", + "required": false, + "description": "Comma-separated list of section or column IDs to filter tasks by inclusion in all specified sections.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_tasks_with_attachments", + "type": "boolean", + "required": false, + "description": "Set to true to filter tasks that have attachments, and false to include all tasks regardless of attachments.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_tasks_with_incomplete_dependencies", + "type": "boolean", + "required": false, + "description": "Filter tasks to those with incomplete dependencies. Use true to apply the filter.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_to_completed_tasks", + "type": "boolean", + "required": false, + "description": "Set to true to filter and display only completed tasks.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_to_incomplete_tasks_with_dependents", + "type": "boolean", + "required": false, + "description": "Set to true to filter tasks to those that are incomplete and have dependents.", + "enum": null, + "inferrable": true + }, + { + "name": "include_any_tags_ids", + "type": "string", + "required": false, + "description": "Comma-separated list of tag IDs to include in the search filter.", + "enum": null, + "inferrable": true + }, + { + "name": "include_only_subtasks", + "type": "boolean", + "required": false, + "description": "Set to true to include only subtasks in the results, false to include all tasks.", + "enum": null, + "inferrable": true + }, + { + "name": "include_sections_in_search", + "type": "string", + "required": false, + "description": "A comma-separated list of section or column IDs to filter tasks in the search.", + "enum": null, + "inferrable": true + }, + { + "name": "included_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of optional properties to include for each returned task. Provide as comma-separated values.", + "enum": null, + "inferrable": true + }, + { + "name": "last_modified_on", + "type": "string", + "required": false, + "description": "ISO 8601 date string or `null` to filter tasks based on the modification date.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_after_datetime", + "type": "string", + "required": false, + "description": "Filter tasks modified after this ISO 8601 datetime string.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_at_before_date", + "type": "string", + "required": false, + "description": "Filter tasks modified before this date. Use ISO 8601 datetime format.", + "enum": null, + "inferrable": true + }, + { + "name": "portfolio_ids_included", + "type": "string", + "required": false, + "description": "A comma-separated list of portfolio IDs to include in the search.", + "enum": null, + "inferrable": true + }, + { + "name": "project_ids_any", + "type": "string", + "required": false, + "description": "Comma-separated list of project IDs to include in the search.", + "enum": null, + "inferrable": true + }, + { + "name": "search_text", + "type": "string", + "required": false, + "description": "Full-text search on task names and descriptions within the workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_ascending", + "type": "boolean", + "required": false, + "description": "Set to true to sort search results in ascending order. Default is false.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_after", + "type": "string", + "required": false, + "description": "An ISO 8601 date string to filter tasks starting after this date.", + "enum": null, + "inferrable": true + }, + { + "name": "start_on_date", + "type": "string", + "required": false, + "description": "ISO 8601 date string specifying the start date of tasks to be searched, or `null` for unspecified.", + "enum": null, + "inferrable": true + }, + { + "name": "task_resource_subtype", + "type": "string", + "required": false, + "description": "Filter tasks by their resource subtype, such as 'default_task', 'milestone', or 'approval'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_sort_order", + "type": "string", + "required": false, + "description": "Specify the sorting criteria for the task results. Options include 'due_date', 'created_at', 'completed_at', 'likes', or 'modified_at'. Defaults to 'modified_at'.", + "enum": null, + "inferrable": true + }, + { + "name": "tasks_due_after_date", + "type": "string", + "required": false, + "description": "Specify an ISO 8601 date string to filter tasks due after this date.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'searchTasksForWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.SearchTasksInWorkspace", + "parameters": { + "workspace_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "all_tags_filters": { + "value": "9876543210,1234567890", + "type": "string", + "required": false + }, + "assigned_by_user_ids": { + "value": "1122334455,5566778899", + "type": "string", + "required": false + }, + "assignee_identifiers_any": { + "value": "user1,user2", + "type": "string", + "required": false + }, + "before_modified_on_date": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "completed_at_after": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "completed_at_before_datetime": { + "value": "2023-12-31T23:59:59Z", + "type": "string", + "required": false + }, + "completed_on_after_date": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "completed_on_before_date": { + "value": "2023-10-15", + "type": "string", + "required": false + }, + "completed_on_date": { + "value": "2023-10-10", + "type": "string", + "required": false + }, + "created_after_date": { + "value": "2023-08-01", + "type": "string", + "required": false + }, + "created_after_datetime": { + "value": "2023-08-15T12:00:00Z", + "type": "string", + "required": false + }, + "created_at_before": { + "value": "2023-09-30T23:59:59Z", + "type": "string", + "required": false + }, + "created_by_users": { + "value": "2345678901", + "type": "string", + "required": false + }, + "created_on_before_date": { + "value": "2023-09-01", + "type": "string", + "required": false + }, + "created_on_date": { + "value": "2023-09-15", + "type": "string", + "required": false + }, + "due_at_after_datetime": { + "value": "2023-11-01T00:00:00Z", + "type": "string", + "required": false + }, + "due_at_before": { + "value": "2023-11-30T00:00:00Z", + "type": "string", + "required": false + }, + "due_date_on": { + "value": "2023-10-20", + "type": "string", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "end_date_before_start_on": { + "value": "2023-09-15", + "type": "string", + "required": false + }, + "exclude_assigned_by_users": { + "value": "3344556677", + "type": "string", + "required": false + }, + "exclude_assignees": { + "value": "user3,user4", + "type": "string", + "required": false + }, + "exclude_created_by_user_ids": { + "value": "4455667788", + "type": "string", + "required": false + }, + "exclude_followers_by_user_ids": { + "value": "5566778899", + "type": "string", + "required": false + }, + "exclude_projects_by_id": { + "value": "9988776655", + "type": "string", + "required": false + }, + "exclude_sections_by_id": { + "value": "6677889900", + "type": "string", + "required": false + }, + "exclude_tags_by_ids": { + "value": "1122334455", + "type": "string", + "required": false + }, + "exclude_tasks_commented_by_users": { + "value": "1234567890", + "type": "string", + "required": false + }, + "excluded_liked_by_user_ids": { + "value": "9988776655", + "type": "string", + "required": false + }, + "filter_by_all_projects": { + "value": "1011121314,1516171819", + "type": "string", + "required": false + }, + "filter_by_any_follower_ids": { + "value": "1920212223", + "type": "string", + "required": false + }, + "filter_by_any_team_ids": { + "value": "2425262728", + "type": "string", + "required": false + }, + "filter_due_date_before": { + "value": "2023-10-25", + "type": "string", + "required": false + }, + "filter_modified_date_start": { + "value": "2023-09-10", + "type": "string", + "required": false + }, + "filter_sections_all": { + "value": "3031323334", + "type": "string", + "required": false + }, + "filter_tasks_with_attachments": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_tasks_with_incomplete_dependencies": { + "value": false, + "type": "boolean", + "required": false + }, + "filter_to_completed_tasks": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_to_incomplete_tasks_with_dependents": { + "value": false, + "type": "boolean", + "required": false + }, + "include_any_tags_ids": { + "value": "1617181920", + "type": "string", + "required": false + }, + "include_only_subtasks": { + "value": false, + "type": "boolean", + "required": false + }, + "include_sections_in_search": { + "value": "4142434445", + "type": "string", + "required": false + }, + "included_optional_properties": { + "value": ["name", "due_date", "completed"], + "type": "array", + "required": false + }, + "last_modified_on": { + "value": "2023-09-29T00:00:00Z", + "type": "string", + "required": false + }, + "modified_after_datetime": { + "value": "2023-09-18T00:00:00Z", + "type": "string", + "required": false + }, + "modified_at_before_date": { + "value": "2023-09-30", + "type": "string", + "required": false + }, + "portfolio_ids_included": { + "value": "4647484950", + "type": "string", + "required": false + }, + "project_ids_any": { + "value": "5152535455", + "type": "string", + "required": false + }, + "search_text": { + "value": "urgent task", + "type": "string", + "required": false + }, + "sort_results_ascending": { + "value": false, + "type": "boolean", + "required": false + }, + "start_date_after": { + "value": "2023-10-05", + "type": "string", + "required": false + }, + "start_on_date": { + "value": "2023-10-12", + "type": "string", + "required": false + }, + "task_resource_subtype": { + "value": "default_task", + "type": "string", + "required": false + }, + "task_sort_order": { + "value": "due_date", + "type": "string", + "required": false + }, + "tasks_due_after_date": { + "value": "2023-10-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SubmitAccessRequestAsana", + "qualifiedName": "AsanaApi.SubmitAccessRequestAsana", + "fullyQualifiedName": "AsanaApi.SubmitAccessRequestAsana@1.0.0", + "description": "Submit a new access request for Asana projects or portfolios.\n\nThis tool is used to submit a new access request for accessing a private project or portfolio in Asana. It should be called when a user needs permission to access these private objects.", + "parameters": [ + { + "name": "access_request_message", + "type": "string", + "required": false, + "description": "Optional message providing context or additional information for the access request.", + "enum": null, + "inferrable": true + }, + { + "name": "target_gid", + "type": "string", + "required": false, + "description": "The GID of the project or portfolio you are requesting access to in Asana.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createAccessRequest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.SubmitAccessRequestAsana", + "parameters": { + "access_request_message": { + "value": "I would like access to this project for collaboration on upcoming tasks.", + "type": "string", + "required": false + }, + "target_gid": { + "value": "1234567890123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TriggerAsanaRule", + "qualifiedName": "AsanaApi.TriggerAsanaRule", + "fullyQualifiedName": "AsanaApi.TriggerAsanaRule@1.0.0", + "description": "Trigger a rule in Asana using an incoming web request.\n\n Use this tool to trigger a specific rule in Asana that is set up with an \"incoming web request\" trigger. Ideal for automating workflows by executing preset rules on demand.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incoming_web_request_trigger_id", + "type": "string", + "required": false, + "description": "The ID of the incoming web request trigger used to execute the rule in Asana. This is automatically generated for the API endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'triggerRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.TriggerAsanaRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incoming_web_request_trigger_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"field\":\"value\", \"another_field\":123}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateAllocation", + "qualifiedName": "AsanaApi.UpdateAllocation", + "fullyQualifiedName": "AsanaApi.UpdateAllocation@1.0.0", + "description": "Update an existing allocation in Asana.\n\n Use this tool to update an existing allocation in Asana by providing specific fields to be changed. Unspecified fields will remain unchanged.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "allocation_global_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the allocation to be updated. This is required to specify which allocation record to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive the response in a more readable, formatted JSON output. This increases response size and should be used mainly for debugging purposes. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateAllocation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateAllocation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "allocation_global_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "include_optional_fields": { + "value": ["field1", "field2"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"data\":{\"field1\":\"value1\",\"field2\":\"value2\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateAsanaCustomField", + "qualifiedName": "AsanaApi.UpdateAsanaCustomField", + "fullyQualifiedName": "AsanaApi.UpdateAsanaCustomField@1.0.0", + "description": "Update specific fields of an Asana custom field.\n\n Use this tool to update an existing Asana custom field. Only the specified fields in the request will be updated, leaving other fields unchanged. The custom field's type and enum options cannot be modified using this endpoint. Ensure the 'custom_fields:write' scope is granted when invoking this method. Locked fields can only be updated by the user who locked them.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "custom_field_global_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the custom field to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response, as the endpoint excludes some by default. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive a pretty-formatted output with line breaks and indentation. Increases response time and size, suitable for debugging. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["custom_fields:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateAsanaCustomField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "custom_field_global_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["color", "is_locked"], + "type": "array", + "required": false + }, + "pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Field Name\", \"type\": \"enum\", \"enum_options\": [{\"name\": \"Option 1\", \"color\": \"#ff0000\"}, {\"name\": \"Option 2\", \"color\": \"#00ff00\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateAsanaGoal", + "qualifiedName": "AsanaApi.UpdateAsanaGoal", + "fullyQualifiedName": "AsanaApi.UpdateAsanaGoal@1.0.0", + "description": "Update a specific goal in Asana.\n\n Use this tool to update the details of an existing goal in Asana. Only the specified fields in the request will be changed, while others remain unchanged. It returns the fully updated goal record.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "goal_unique_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the goal to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "included_goal_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of optional goal properties to include in the response. Provide as an array of strings. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to format the response with line breaks and indentation for readability. Mainly for debugging as it increases response size. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateGoal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateAsanaGoal", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "goal_unique_id": { + "value": "12345abcd", + "type": "string", + "required": false + }, + "included_goal_properties": { + "value": ["name", "progress", "due_date"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Goal Name\",\"progress\":75,\"due_date\":\"2024-12-31\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateAsanaStory", + "qualifiedName": "AsanaApi.UpdateAsanaStory", + "fullyQualifiedName": "AsanaApi.UpdateAsanaStory@1.0.0", + "description": "Update an Asana story's details.\n\n Use this tool to update the text of a comment story or pin/unpin comment and attachment stories in Asana. Only one of `text` or `html_text` can be updated at a time. Requires 'stories:write' permission.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "story_global_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the Asana story to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response. Defaults to excluding some properties. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a readable, formatted response. Use for debugging as it increases response size and time. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["stories:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateStory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateAsanaStory", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "story_global_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": "attachments,pinned", + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"text\": \"Updated story text.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateAsanaTag", + "qualifiedName": "AsanaApi.UpdateAsanaTag", + "fullyQualifiedName": "AsanaApi.UpdateAsanaTag@1.0.0", + "description": "Update properties of an Asana tag.\n\n Updates specific properties of an Asana tag using the provided tag ID. Specify only the fields you wish to change to avoid overwriting other users' changes. Returns the complete updated tag record.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "tag_global_identifier", + "type": "string", + "required": false, + "description": "Globally unique identifier for the tag to update in Asana. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of optional properties to include with the tag resource. Provide as an array of property names. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive the response in a readable format with proper indentation and line breaks. This is advised only for debugging as it increases response size. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tags:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateAsanaTag", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "tag_global_identifier": { + "value": "1234567890", + "type": "string", + "required": false + }, + "include_optional_fields": { + "value": ["color", "workspace"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Tag Name\", \"notes\": \"Updated notes for the tag.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEnumOption", + "qualifiedName": "AsanaApi.UpdateEnumOption", + "fullyQualifiedName": "AsanaApi.UpdateEnumOption@1.0.0", + "description": "Update an existing enum option in Asana custom fields.\n\nThis tool is used to update an existing enum option in Asana custom fields. It's necessary to have the 'custom_fields:write' scope. Locked custom fields can only be updated by the user who locked them.", + "parameters": [ + { + "name": "enum_option_gid", + "type": "string", + "required": true, + "description": "The globally unique identifier for the enum option to update.", + "enum": null, + "inferrable": true + }, + { + "name": "enum_option_color", + "type": "string", + "required": false, + "description": "The color of the enum option. Defaults to 'none' if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "enum_option_enabled", + "type": "boolean", + "required": false, + "description": "Indicates if the enum option is selectable for the custom field. Provide 'true' to make it selectable, 'false' otherwise.", + "enum": null, + "inferrable": true + }, + { + "name": "enum_option_name", + "type": "string", + "required": false, + "description": "The name of the enum option to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Provide a list of properties to include in the response, beyond the default set.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true to receive the response in a pretty-printed format. Increases response time and size, useful for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_gid", + "type": "string", + "required": false, + "description": "Globally unique identifier for the resource as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": false, + "description": "The base type of the resource, specified as a string. This is necessary for updating the enum option.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["custom_fields:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateEnumOption'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateEnumOption", + "parameters": { + "enum_option_gid": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enum_option_color": { + "value": "blue", + "type": "string", + "required": false + }, + "enum_option_enabled": { + "value": true, + "type": "boolean", + "required": false + }, + "enum_option_name": { + "value": "Updated Option", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["color", "enabled"], + "type": "array", + "required": false + }, + "pretty_output": { + "value": false, + "type": "boolean", + "required": false + }, + "resource_gid": { + "value": "0987654321", + "type": "string", + "required": false + }, + "resource_type": { + "value": "task", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGoalMetric", + "qualifiedName": "AsanaApi.UpdateGoalMetric", + "fullyQualifiedName": "AsanaApi.UpdateGoalMetric@1.0.0", + "description": "Updates a goal's current metric value in Asana.\n\nUse this tool to update the existing metric value of a goal in Asana. It returns the complete updated goal metric record. If the metric does not exist, it will respond with an error.", + "parameters": [ + { + "name": "goal_unique_identifier", + "type": "string", + "required": true, + "description": "Globally unique identifier for the Asana goal to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "current_metric_value", + "type": "number", + "required": false, + "description": "The current numeric value of a goal metric. Required if metric type is number.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a more readable response format, useful for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_base_type", + "type": "string", + "required": false, + "description": "The base type of the resource to update. It must be a string indicating the type of resource.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_unique_identifier", + "type": "string", + "required": false, + "description": "Globally unique identifier of the resource in Asana, represented as a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateGoalMetric'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateGoalMetric", + "parameters": { + "goal_unique_identifier": { + "value": "goal_123456", + "type": "string", + "required": true + }, + "current_metric_value": { + "value": 75, + "type": "integer", + "required": false + }, + "include_optional_fields": { + "value": ["created_at", "modified_at"], + "type": "array", + "required": false + }, + "pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "resource_base_type": { + "value": "goal", + "type": "string", + "required": false + }, + "resource_unique_identifier": { + "value": "resource_7890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGoalRelationship", + "qualifiedName": "AsanaApi.UpdateGoalRelationship", + "fullyQualifiedName": "AsanaApi.UpdateGoalRelationship@1.0.0", + "description": "Update an existing goal relationship in Asana.\n\n Use this tool to update specific fields of an existing goal relationship in Asana. Provide only the fields you wish to change, as unspecified fields will remain unchanged.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "goal_relationship_unique_id", + "type": "string", + "required": false, + "description": "The globally unique identifier for the specific goal relationship to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify properties to include in the response. Provide as a list of property names, which will include optional fields in the returned goal relationship. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a readable response with indentation. Increases response size/time, recommended for debugging. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateGoalRelationship'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateGoalRelationship", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "goal_relationship_unique_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["due_date", "owner"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Goal Name\", \"status\": \"in_progress\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMembership", + "qualifiedName": "AsanaApi.UpdateMembership", + "fullyQualifiedName": "AsanaApi.UpdateMembership@1.0.0", + "description": "Update an existing membership in Asana.\n\nUse this tool to update fields of an existing membership for goals, projects, portfolios, or custom fields in Asana. Only the provided fields in the data block will be updated, while others remain unchanged.", + "parameters": [ + { + "name": "membership_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the membership to update.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, formats the response for readability with line breaks and indentation, useful for debugging.", + "enum": null, + "inferrable": true + }, + { + "name": "member_access_level", + "type": "string", + "required": false, + "description": "Specify the access level for the member. Valid options depend on the membership type: Goals ('viewer', 'commenter', 'editor', 'admin'), Projects ('admin', 'editor', 'commenter'), Portfolios ('admin', 'editor', 'viewer'), Custom Fields ('admin', 'editor', 'user').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateMembership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateMembership", + "parameters": { + "membership_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "member_access_level": { + "value": "editor", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePortfolio", + "qualifiedName": "AsanaApi.UpdatePortfolio", + "fullyQualifiedName": "AsanaApi.UpdatePortfolio@1.0.0", + "description": "Update an existing Asana portfolio.\n\n Use this tool to update an existing Asana portfolio. Only the specified fields in the request data will be updated, and any unspecified fields will remain unchanged. Requires the 'portfolios:write' scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "portfolio_unique_identifier", + "type": "string", + "required": false, + "description": "Globally unique identifier for the portfolio to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional portfolio properties to include in the response, specified as an array of strings. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Provides formatted and indented output. Use primarily for debugging as it increases response size and processing time. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["portfolios:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updatePortfolio'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdatePortfolio", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "portfolio_unique_identifier": { + "value": "123456789", + "type": "string", + "required": false + }, + "include_optional_fields": { + "value": ["name", "notes"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Portfolio Name\",\"notes\":\"Updated notes for the portfolio.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateProjectBriefAsana", + "qualifiedName": "AsanaApi.UpdateProjectBriefAsana", + "fullyQualifiedName": "AsanaApi.UpdateProjectBriefAsana@1.0.0", + "description": "Update an Asana project brief.\n\n Use this tool to update an existing Asana project brief. Specify only the fields to be updated; fields not specified will remain unchanged. Returns the complete updated project brief record.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_brief_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the specific project brief to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify a list of properties to include in the response, separated by commas. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "provide_pretty_output", + "type": "boolean", + "required": false, + "description": "If true, the response is formatted with line breaks and indentation for readability. Use primarily for debugging. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateProjectBrief'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateProjectBriefAsana", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_brief_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["description", "goals"], + "type": "array", + "required": false + }, + "provide_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"description\": \"Updated project brief description\", \"goals\": [\"Reach 1000 users\", \"Increase engagement by 50%\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateProjectDetails", + "qualifiedName": "AsanaApi.UpdateProjectDetails", + "fullyQualifiedName": "AsanaApi.UpdateProjectDetails@1.0.0", + "description": "Update specific fields of an existing project.\n\n Use this tool to update specific fields of an existing project in Asana. Specify only the fields you wish to change to avoid overwriting changes made by others. Returns the fully updated project record.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_global_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the project to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include in the response, showing optional fields by default excluded. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty formatting for the response output, making it more readable with line breaks and indentation. Use this primarily for debugging as it increases response size and processing time. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["projects:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateProjectDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_global_id": { + "value": "12345ABCD", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["name", "notes"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Project Name\", \"notes\": \"Updated project details.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSectionNameAsana", + "qualifiedName": "AsanaApi.UpdateSectionNameAsana", + "fullyQualifiedName": "AsanaApi.UpdateSectionNameAsana@1.0.0", + "description": "Update the name of a specific section in Asana.\n\nUse this tool to update the name of an existing section in an Asana project. It specifically changes the `name` field of a section without affecting other fields. Ideal for modifying section titles while preserving other data.", + "parameters": [ + { + "name": "section_global_identifier", + "type": "string", + "required": true, + "description": "The globally unique identifier for the section to be updated in Asana.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include in the response. Allows inclusion of optional fields excluded by default.", + "enum": null, + "inferrable": true + }, + { + "name": "insert_after_section_id", + "type": "string", + "required": false, + "description": "Identifier of an existing section after which the updated section should be inserted. Cannot be used with `insert_before_section_id`.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output", + "type": "boolean", + "required": false, + "description": "Set to true for a readable, pretty formatted response with line breaks and indentation. Recommended for debugging as it increases response size.", + "enum": null, + "inferrable": true + }, + { + "name": "section_insert_before_id", + "type": "string", + "required": false, + "description": "The ID of an existing section in the project before which the updated section should be inserted. Cannot be provided with section_insert_after_id.", + "enum": null, + "inferrable": true + }, + { + "name": "section_name", + "type": "string", + "required": false, + "description": "The new name for the section. It cannot be an empty string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateSection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateSectionNameAsana", + "parameters": { + "section_global_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "include_optional_properties": { + "value": ["color", "is_collapsible"], + "type": "array", + "required": false + }, + "insert_after_section_id": { + "value": "0987654321", + "type": "string", + "required": false + }, + "pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "section_insert_before_id": { + "value": "1122334455", + "type": "string", + "required": false + }, + "section_name": { + "value": "Updated Section Name", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTask", + "qualifiedName": "AsanaApi.UpdateTask", + "fullyQualifiedName": "AsanaApi.UpdateTask@1.0.0", + "description": "Update specific fields of an existing Asana task.\n\n Allows updating of specific fields in a task on Asana using the task's unique ID. Only the specified fields are altered, preventing unintended overwrite of other data. Requires 'tasks:write' scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "task_id", + "type": "string", + "required": false, + "description": "The unique identifier of the task to update in Asana. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of task properties to include in the response, such as 'created_at', 'due_date', etc. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "pretty_output_enabled", + "type": "boolean", + "required": false, + "description": "Set to true for a formatted response with line breaks and indentation. Useful for debugging. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "task_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["created_at", "due_date"], + "type": "array", + "required": false + }, + "pretty_output_enabled": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Task Name\",\"completed\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTaskParentAsana", + "qualifiedName": "AsanaApi.UpdateTaskParentAsana", + "fullyQualifiedName": "AsanaApi.UpdateTaskParentAsana@1.0.0", + "description": "Update the parent of an Asana task.\n\nThis tool updates the parent of a given task in Asana, allowing it to become a subtask of another task or to remove its existing parent. Utilize `insert_before` or `insert_after` to position subtasks appropriately, ensuring they are already part of the parent task. Requires 'tasks:write' scope.", + "parameters": [ + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the task to operate on. It should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Set this to true to receive formatted output with line breaks and indentation. This is useful for debugging but increases response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of optional task properties to include in the response. Use a list of property names.", + "enum": null, + "inferrable": true + }, + { + "name": "new_task_parent", + "type": "string", + "required": false, + "description": "The new parent task ID for the task, or null to remove its current parent.", + "enum": null, + "inferrable": true + }, + { + "name": "subtask_to_insert_after", + "type": "string", + "required": false, + "description": "Specify the subtask ID to insert the task after, or use 'null' to insert at the beginning of the list.", + "enum": null, + "inferrable": true + }, + { + "name": "subtask_to_insert_before", + "type": "string", + "required": false, + "description": "Specify a subtask ID to insert the task before, or null to place at the end of the list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'setParentForTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateTaskParentAsana", + "parameters": { + "task_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_properties": { + "value": ["due_date", "assignee", "tags"], + "type": "array", + "required": false + }, + "new_task_parent": { + "value": "987654321", + "type": "string", + "required": false + }, + "subtask_to_insert_after": { + "value": "234567890", + "type": "string", + "required": false + }, + "subtask_to_insert_before": { + "value": "345678901", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTeamInWorkspace", + "qualifiedName": "AsanaApi.UpdateTeamInWorkspace", + "fullyQualifiedName": "AsanaApi.UpdateTeamInWorkspace@1.0.0", + "description": "Update a team within the current workspace.\n\n Use this tool to modify the details of a team in Asana's workspace. It should be called when you need to update team settings or information.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_global_id", + "type": "string", + "required": false, + "description": "Globally unique identifier for the team to update in the workspace. Required to specify which team will be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of optional properties to include in the response. Use a list format for specifying multiple properties. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable 'pretty' formatted output for easier readability in responses, increasing response size and time, mainly used for debugging. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateTeamInWorkspace", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_global_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["color", "website"], + "type": "array", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Team Name\", \"description\": \"Updated description\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTimeTrackingEntry", + "qualifiedName": "AsanaApi.UpdateTimeTrackingEntry", + "fullyQualifiedName": "AsanaApi.UpdateTimeTrackingEntry@1.0.0", + "description": "Updates an existing time tracking entry in Asana.\n\nUse this tool to update specific fields of an existing time tracking entry in Asana by specifying only the fields you wish to change. It helps avoid overwriting changes made by others and returns the updated record.", + "parameters": [ + { + "name": "time_tracking_entry_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the time tracking entry to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "duration_minutes_tracked", + "type": "integer", + "required": false, + "description": "The time in minutes tracked by the entry. Optional field.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable formatted output for easier readability. Use mainly for debugging as it increases response time and size.", + "enum": null, + "inferrable": true + }, + { + "name": "entry_logged_date", + "type": "string", + "required": false, + "description": "The date the entry is logged. Defaults to today if not specified. Use format 'YYYY-MM-DD'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of optional properties to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "project_attributable_gid", + "type": "string", + "required": false, + "description": "Optional. The globally unique identifier (gid) of the project to which the time is attributable.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTimeTrackingEntry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateTimeTrackingEntry", + "parameters": { + "time_tracking_entry_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "duration_minutes_tracked": { + "value": 45, + "type": "integer", + "required": false + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "entry_logged_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "include_optional_properties": { + "value": ["notes", "tags"], + "type": "array", + "required": false + }, + "project_attributable_gid": { + "value": "9876543210", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateWorkspaceName", + "qualifiedName": "AsanaApi.UpdateWorkspaceName", + "fullyQualifiedName": "AsanaApi.UpdateWorkspaceName@1.0.0", + "description": "Update the name of an existing Asana workspace.\n\nUse this tool to change the name of a specific, existing Asana workspace. Only the workspace name can be modified, and the tool will return the complete, updated workspace record.", + "parameters": [ + { + "name": "workspace_global_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the workspace or organization.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable this to receive the response in a readable and formatted style. Useful for debugging. May increase response size and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of additional workspace properties to include in the response, comma-separated.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_base_type", + "type": "string", + "required": false, + "description": "Specify the base type of the resource to update the workspace name.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_name", + "type": "string", + "required": false, + "description": "The new name for the Asana workspace you want to update.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_resource_gid", + "type": "string", + "required": false, + "description": "Globally unique identifier of the workspace resource. This is required to specify which workspace to update.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.UpdateWorkspaceName", + "parameters": { + "workspace_global_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["created_at", "updated_at"], + "type": "array", + "required": false + }, + "resource_base_type": { + "value": "workspace", + "type": "string", + "required": false + }, + "workspace_name": { + "value": "New Workspace Name", + "type": "string", + "required": false + }, + "workspace_resource_gid": { + "value": "0987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WorkspaceTypeaheadSearch", + "qualifiedName": "AsanaApi.WorkspaceTypeaheadSearch", + "fullyQualifiedName": "AsanaApi.WorkspaceTypeaheadSearch@1.0.0", + "description": "Retrieve workspace objects using a typeahead search.\n\nThis tool fetches objects within a workspace via a typeahead search, providing quick, but not exhaustive or highly accurate results. It's useful for implementing auto-completion features by obtaining a compact representation of workspace objects, such as user, project, task, or project_template, ordered by relevance criteria specific to each type.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "Globally unique identifier for the workspace or organization.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pretty_output", + "type": "boolean", + "required": false, + "description": "Enable pretty format for the response with proper indentation. Use for debugging due to increased response size, but not recommended for production.", + "enum": null, + "inferrable": true + }, + { + "name": "include_optional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to include in the response, set as a comma-separated list to include optional fields in the result.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": false, + "description": "Specify the type of workspace objects to return, such as 'custom_field', 'portfolio', 'project', 'tag', 'task', or 'user'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_count", + "type": "integer", + "required": false, + "description": "The number of results to return, ranging from 1 to 100. Default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "String to search for relevant workspace objects. An empty string will return results.", + "enum": null, + "inferrable": true + }, + { + "name": "search_result_resource_type", + "type": "string", + "required": false, + "description": "Specify the type of objects to return in the typeahead search. Options: custom_field, goal, project, project_template, portfolio, tag, task, team, user. Only one type can be used at a time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "asana", + "providerType": "oauth2", + "scopes": ["workspace.typeahead:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'typeaheadForWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AsanaApi.WorkspaceTypeaheadSearch", + "parameters": { + "workspace_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "enable_pretty_output": { + "value": true, + "type": "boolean", + "required": false + }, + "include_optional_fields": { + "value": ["name", "due_date"], + "type": "array", + "required": false + }, + "resource_type": { + "value": "project", + "type": "string", + "required": false + }, + "results_count": { + "value": 10, + "type": "integer", + "required": false + }, + "search_query": { + "value": "design", + "type": "string", + "required": false + }, + "search_result_resource_type": { + "value": "project", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "asana", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The AsanaApi MCP Server uses the Auth Provider with id `arcade-asana` to connect to users' AsanaApi accounts. In order to use the MCP Server, you will need to configure the `arcade-asana` auth provider.\nFor detailed information on configuring the Asana OAuth provider with Arcade, see the [Asana Auth Provider documentation](/references/auth-providers/asana).", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:27:28.013Z", + "summary": "AsanaApi is a toolkit that enables integration with the Asana API, allowing LLMs to manage tasks, projects, goals, and custom fields effectively. \n\n**Capabilities:**\n- Create, update, delete, and retrieve records for tasks, projects, goals, and custom fields.\n- Manage task dependencies and followers with ease. \n- Retrieve detailed information about various entities, including custom field settings.\n- Utilize asynchronous operations for project instantiation and exports.\n- Efficiently handle permissions and access requests across the workspace.\n\n**OAuth:**\nProvider: Asana \nScopes: attachments:delete, attachments:read, custom_fields:read, custom_fields:write, goals:read, portfolios:read, portfolios:write, projects:delete, projects:read, projects:write, tasks:read, tasks:write, users:read, webhooks:read, webhooks:write.\n\n**Secrets:**\nNo secrets are required for using this toolkit." +} diff --git a/data/toolkits/ashbyapi.json b/data/toolkits/ashbyapi.json new file mode 100644 index 000000000..c794c2f09 --- /dev/null +++ b/data/toolkits/ashbyapi.json @@ -0,0 +1,7576 @@ +{ + "id": "AshbyApi", + "label": "Ashby API", + "version": "2.0.0", + "description": "Tools that enable LLMs to interact directly with the Ashby API", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/ashby.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/ashby-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "AddCandidateTag", + "qualifiedName": "AshbyApi.AddCandidateTag", + "fullyQualifiedName": "AshbyApi.AddCandidateTag@2.0.0", + "description": "Add a tag to a candidate in the recruitment system.\n\nUse this tool to attach a specific tag to a candidate in the Ashby recruitment platform, which helps in categorizing and managing candidates efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'candidateAddTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.AddCandidateTag", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidate_id\": \"12345\", \"tag\": \"interviewed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddCandidateToProject", + "qualifiedName": "AshbyApi.AddCandidateToProject", + "fullyQualifiedName": "AshbyApi.AddCandidateToProject@2.0.0", + "description": "Add a candidate to a specified project.\n\nUse this tool to assign a candidate to a specific project. Requires appropriate permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'candidateaddproject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.AddCandidateToProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidate_id\":\"1234\",\"project_id\":\"5678\",\"status\":\"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddCompletedAssessmentToCandidate", + "qualifiedName": "AshbyApi.AddCompletedAssessmentToCandidate", + "fullyQualifiedName": "AshbyApi.AddCompletedAssessmentToCandidate@2.0.0", + "description": "Adds a completed assessment to a candidate's record.\n\nUse this tool to update a candidate's profile with a completed assessment. Requires the 'candidatesWrite' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'assessmentAddCompletedToCandidate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.AddCompletedAssessmentToCandidate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidateId\":\"12345\",\"assessmentId\":\"abcde\",\"score\":95}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddHiringTeamMember", + "qualifiedName": "AshbyApi.AddHiringTeamMember", + "fullyQualifiedName": "AshbyApi.AddHiringTeamMember@2.0.0", + "description": "Add a user to the hiring team for an application.\n\nThis tool adds an Ashby user to the hiring team at the application level. Requires candidateWrite permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationaddhiringteammember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.AddHiringTeamMember", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidateId\":\"123456\",\"userId\":\"78910\",\"role\":\"interviewer\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddJobToOpening", + "qualifiedName": "AshbyApi.AddJobToOpening", + "fullyQualifiedName": "AshbyApi.AddJobToOpening@2.0.0", + "description": "Adds a job to an opening.\n\nUse this tool to add a job to an existing opening. Requires the `jobsWrite` permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'openingaddjob'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.AddJobToOpening", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"jobId\":\"12345\",\"openingId\":\"67890\",\"title\":\"Software Engineer\",\"description\":\"Develop and maintain software applications.\",\"location\":\"Remote\",\"department\":\"Engineering\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddLocationToJobOpening", + "qualifiedName": "AshbyApi.AddLocationToJobOpening", + "fullyQualifiedName": "AshbyApi.AddLocationToJobOpening@2.0.0", + "description": "Adds a location to a job opening.\n\nUse this tool to associate a specific location with a job opening. Requires appropriate permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'openingaddlocation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.AddLocationToJobOpening", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"jobOpeningId\":\"12345\",\"location\":\"New York, NY\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddUserToInterviewerPool", + "qualifiedName": "AshbyApi.AddUserToInterviewerPool", + "fullyQualifiedName": "AshbyApi.AddUserToInterviewerPool@2.0.0", + "description": "Add a user to an interviewer pool in Ashby.\n\nThis tool allows you to add a user to an interviewer pool using the Ashby API. Ensure you have the necessary permissions before making the call.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewerPoolAddUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.AddUserToInterviewerPool", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"user_id\": \"12345\", \"pool_id\": \"67890\", \"role\": \"interviewer\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AnonymizeCandidateData", + "qualifiedName": "AshbyApi.AnonymizeCandidateData", + "fullyQualifiedName": "AshbyApi.AnonymizeCandidateData@2.0.0", + "description": "Permanently anonymize a candidate's data in the system.\n\nUse this tool to anonymize a candidate's data. Ensure all candidate applications are archived or marked as hired before calling this tool. This action is irreversible and requires 'candidatesWrite' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'candidateAnonymize'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.AnonymizeCandidateData", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidateId\":\"12345\",\"anonymizeFields\":[\"name\",\"email\",\"phoneNumber\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ArchiveDepartment", + "qualifiedName": "AshbyApi.ArchiveDepartment", + "fullyQualifiedName": "AshbyApi.ArchiveDepartment@2.0.0", + "description": "Archive a department within an organization.\n\nUse this tool to archive a specified department within an organization. Ensure you have the necessary permissions before calling this tool.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'departmentarchive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ArchiveDepartment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"department_id\": \"123456\", \"organization_id\": \"org789\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ArchiveInterviewerPool", + "qualifiedName": "AshbyApi.ArchiveInterviewerPool", + "fullyQualifiedName": "AshbyApi.ArchiveInterviewerPool@2.0.0", + "description": "Archive an interviewer pool when needed.\n\nUse this tool to archive an interviewer pool, typically when it's no longer needed or active. Ensure you have the necessary permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewerPoolArchive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ArchiveInterviewerPool", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"interviewerPoolId\": \"12345\", \"archivedAt\": \"2023-10-01T12:00:00Z\", \"reason\": \"No longer in use\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ArchiveLocation", + "qualifiedName": "AshbyApi.ArchiveLocation", + "fullyQualifiedName": "AshbyApi.ArchiveLocation@2.0.0", + "description": "Archives a location or location hierarchy.\n\nUse this tool to archive a specific location or an entire location hierarchy when needed. It requires permission to modify organization data.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'locationarchive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ArchiveLocation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"locationId\":\"1234\",\"archiveReason\":\"Obsolete data\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AshbyUserSearch", + "qualifiedName": "AshbyApi.AshbyUserSearch", + "fullyQualifiedName": "AshbyApi.AshbyUserSearch@2.0.0", + "description": "Search for an Ashby user by email address.\n\nThis tool is used to find and retrieve details of an Ashby user by providing their email address. It requires the `organizationRead` permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'userSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.AshbyUserSearch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"email\":\"user@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelAssessment", + "qualifiedName": "AshbyApi.CancelAssessment", + "fullyQualifiedName": "AshbyApi.CancelAssessment@2.0.0", + "description": "Cancel an ongoing assessment.\n\nThis tool is used to cancel an ongoing assessment. Call this tool when you need to stop a scheduled or active assessment.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'assessmentCancel'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CancelAssessment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"assessmentId\":\"12345\",\"reason\":\"User requested cancellation\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelInterviewSchedule", + "qualifiedName": "AshbyApi.CancelInterviewSchedule", + "fullyQualifiedName": "AshbyApi.CancelInterviewSchedule@2.0.0", + "description": "Cancel an interview schedule by ID.\n\nUse this tool to cancel an interview schedule by its unique identifier. Requires appropriate permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewScheduleCancel'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CancelInterviewSchedule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"interview_schedule_id\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ChangeApplicationSource", + "qualifiedName": "AshbyApi.ChangeApplicationSource", + "fullyQualifiedName": "AshbyApi.ChangeApplicationSource@2.0.0", + "description": "Change the source of a job application.\n\nUse this tool to change the source of a job application. Requires the 'candidatesWrite' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationChangeSource'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ChangeApplicationSource", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"applicationId\":\"12345\",\"newSource\":\"Referral\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCandidate", + "qualifiedName": "AshbyApi.CreateCandidate", + "fullyQualifiedName": "AshbyApi.CreateCandidate@2.0.0", + "description": "Create a new candidate entry.\n\nUse this tool to create a new candidate in the system. Requires permissions to write candidates. For setting custom field values, use the custom fields endpoint.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'candidateCreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateCandidate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"John Doe\", \"email\": \"john.doe@example.com\", \"phone\": \"123-456-7890\", \"resume\": \"URL_TO_RESUME\", \"customFields\": {\"source\": \"LinkedIn\", \"referral\": \"Jane Smith\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCandidateNote", + "qualifiedName": "AshbyApi.CreateCandidateNote", + "fullyQualifiedName": "AshbyApi.CreateCandidateNote@2.0.0", + "description": "Add a note to a candidate's profile in Ashby.\n\nThis tool allows for the creation of a note on a candidate's profile, supporting HTML formatted text. It's useful for recruiters and interviewers to document additional information or insights about a candidate.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'candidateCreateNote'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateCandidateNote", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidate_id\":\"12345\",\"note\":\"

This is a note about the candidate.
They have strong communication skills.

\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCandidateOfferVersion", + "qualifiedName": "AshbyApi.CreateCandidateOfferVersion", + "fullyQualifiedName": "AshbyApi.CreateCandidateOfferVersion@2.0.0", + "description": "Initiate a new offer version for a candidate.\n\nUsed to create and return an offer version instance for a candidate's in-progress offer process. This instance can then be filled out and submitted using the `offer.create` endpoint. Requires the `offersWrite` permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'offerStart'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateCandidateOfferVersion", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidateId\":\"12345\",\"offerDetails\":{\"position\":\"Software Engineer\",\"salary\":\"100000\",\"startDate\":\"2023-10-01\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCandidateReferral", + "qualifiedName": "AshbyApi.CreateCandidateReferral", + "fullyQualifiedName": "AshbyApi.CreateCandidateReferral@2.0.0", + "description": "Creates a candidate referral in the system.\n\nUse this tool to create a referral for a candidate, typically when hiring or recommending someone for a position. Requires the `candidatesWrite` permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'referralCreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateCandidateReferral", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidate_id\": \"12345\", \"referral_source\": \"LinkedIn\", \"notes\": \"Strong technical skills and team player.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCandidateTag", + "qualifiedName": "AshbyApi.CreateCandidateTag", + "fullyQualifiedName": "AshbyApi.CreateCandidateTag@2.0.0", + "description": "Create a new candidate tag in the Ashby system.\n\nUse this tool to create a new tag for candidates in the Ashby system, requiring the 'hiringProcessMetadataWrite' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'candidatetagcreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateCandidateTag", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"Senior Developer\", \"description\": \"Tag for Senior Developer candidates.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCustomField", + "qualifiedName": "AshbyApi.CreateCustomField", + "fullyQualifiedName": "AshbyApi.CreateCustomField@2.0.0", + "description": "Creates a new custom field in Ashby.\n\nUse this tool to create a new custom field in Ashby, granted the necessary permissions are available.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'customFieldCreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateCustomField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"New Custom Field\",\"type\":\"text\",\"options\":[],\"required\":false}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDepartment", + "qualifiedName": "AshbyApi.CreateDepartment", + "fullyQualifiedName": "AshbyApi.CreateDepartment@2.0.0", + "description": "Create a new department within an organization.\n\nThis tool is used to create a new department in an organization. It requires appropriate permissions and should be called when a user needs to add a new department to their organization in the Ashby system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'departmentcreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateDepartment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"HR Department\", \"description\": \"Handles all human resources activities\", \"managerId\": \"12345\", \"location\": \"Building A\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateInterviewerPool", + "qualifiedName": "AshbyApi.CreateInterviewerPool", + "fullyQualifiedName": "AshbyApi.CreateInterviewerPool@2.0.0", + "description": "Creates a new interviewer pool for hiring processes.\n\nUse this tool to create an interviewer pool, which is a group of interviewers assigned for conducting interviews in a hiring process. Requires appropriate permissions to execute.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewerPoolCreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateInterviewerPool", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"poolName\":\"Technical Interviewers\",\"interviewerIds\":[\"intv1\",\"intv2\",\"intv3\"],\"department\":\"Engineering\",\"location\":\"Remote\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateInterviewSchedule", + "qualifiedName": "AshbyApi.CreateInterviewSchedule", + "fullyQualifiedName": "AshbyApi.CreateInterviewSchedule@2.0.0", + "description": "Create a new scheduled interview in Ashby.\n\nThis tool creates a scheduled interview in the Ashby platform, requiring the 'interviewsWrite' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewScheduleCreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateInterviewSchedule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidateId\": \"1234\", \"interviewerIds\": [\"5678\", \"91011\"], \"scheduledTime\": \"2023-10-25T10:00:00Z\", \"duration\": 30, \"location\": \"Zoom\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateJobApplication", + "qualifiedName": "AshbyApi.CreateJobApplication", + "fullyQualifiedName": "AshbyApi.CreateJobApplication@2.0.0", + "description": "Creates a job application for a candidate.\n\nUse this tool to create a job application for a candidate when sourcing for a job posting. Ensure you have the 'candidatesWrite' permission. This tool is not for job boards; refer to 'applicationForm.submit' for that purpose.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationCreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateJobApplication", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidate_id\":\"12345\",\"job_id\":\"67890\",\"resume\":\"base64_encoded_resume_content\",\"cover_letter\":\"base64_encoded_cover_letter_content\",\"additional_info\":{\"linkedin_url\":\"https://www.linkedin.com/in/example\",\"portfolio_url\":\"https://example.com/portfolio\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateJobOpening", + "qualifiedName": "AshbyApi.CreateJobOpening", + "fullyQualifiedName": "AshbyApi.CreateJobOpening@2.0.0", + "description": "Create a new job opening in the system.\n\nUse this tool to create a new job opening. Requires 'jobsWrite' permission. For setting custom fields, use the 'customFields.setValue' endpoint.", + "parameters": [ + { + "name": "associated_job_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of job IDs related to the opening.", + "enum": null, + "inferrable": true + }, + { + "name": "department_team_id", + "type": "string", + "required": false, + "description": "The unique identifier for the department or team associated with the job opening.", + "enum": null, + "inferrable": true + }, + { + "name": "employment_start_date", + "type": "string", + "required": false, + "description": "The date (in YYYY-MM-DD format) when the hired person is expected to start employment.", + "enum": null, + "inferrable": true + }, + { + "name": "employment_type", + "type": "string", + "required": false, + "description": "The employment type for this opening. Options include: FullTime, PartTime, Intern, Contract, Temporary.", + "enum": null, + "inferrable": true + }, + { + "name": "identifiers", + "type": "string", + "required": false, + "description": "Comma-separated list of jobIds, targetHireDate, targetStartDate, isBackfill, and employmentType to define job details.", + "enum": null, + "inferrable": true + }, + { + "name": "is_backfill", + "type": "boolean", + "required": false, + "description": "Indicate whether the job opening is intended to backfill a previous employee's position.", + "enum": null, + "inferrable": true + }, + { + "name": "job_description", + "type": "string", + "required": false, + "description": "A detailed description of the job opening, including responsibilities and qualifications.", + "enum": null, + "inferrable": true + }, + { + "name": "location_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of location IDs associated with the job opening.", + "enum": null, + "inferrable": true + }, + { + "name": "opening_state", + "type": "string", + "required": false, + "description": "Specifies the state of the job opening. Options: Draft, Approved, Open, Closed. Defaults to Draft. Additional validation may be needed if not Draft.", + "enum": null, + "inferrable": true + }, + { + "name": "target_hire_date", + "type": "string", + "required": false, + "description": "Specify the date (YYYY-MM-DD) by which the hire is intended to be made for the job opening.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'openingcreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateJobOpening", + "parameters": { + "associated_job_ids": { + "value": ["job_123", "job_456"], + "type": "array", + "required": false + }, + "department_team_id": { + "value": "team_789", + "type": "string", + "required": false + }, + "employment_start_date": { + "value": "2023-11-01", + "type": "string", + "required": false + }, + "employment_type": { + "value": "FullTime", + "type": "string", + "required": false + }, + "identifiers": { + "value": "job_123,2023-11-01,2023-10-15,true,FullTime", + "type": "string", + "required": false + }, + "is_backfill": { + "value": true, + "type": "boolean", + "required": false + }, + "job_description": { + "value": "We are seeking a skilled software engineer to join our team. Responsibilities include developing applications and collaborating with cross-functional teams.", + "type": "string", + "required": false + }, + "location_ids": { + "value": ["loc_001", "loc_002"], + "type": "array", + "required": false + }, + "opening_state": { + "value": "Open", + "type": "string", + "required": false + }, + "target_hire_date": { + "value": "2023-10-15", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateLocation", + "qualifiedName": "AshbyApi.CreateLocation", + "fullyQualifiedName": "AshbyApi.CreateLocation@2.0.0", + "description": "Create a location or location hierarchy.\n\nThis tool creates a new location or a location hierarchy within the system. It is useful for adding organizational locations, such as branches or divisions. Requires organizationWrite permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'locationcreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateLocation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"Main Branch\", \"type\": \"branch\", \"address\": \"123 Main St, Anytown, USA\", \"parent_location_id\": \"abc123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewJob", + "qualifiedName": "AshbyApi.CreateNewJob", + "fullyQualifiedName": "AshbyApi.CreateNewJob@2.0.0", + "description": "Create a new job listing with specified details.\n\nUse this tool to create a new job listing. It requires permission to write jobs and can be used in conjunction with the custom fields setting tool to add additional job details.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'jobCreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateNewJob", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"job_title\":\"Software Engineer\",\"job_description\":\"Responsible for developing and maintaining software applications.\",\"location\":\"Remote\",\"employment_type\":\"Full-time\",\"salary_range\":\"$100,000 - $120,000\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOffer", + "qualifiedName": "AshbyApi.CreateOffer", + "fullyQualifiedName": "AshbyApi.CreateOffer@2.0.0", + "description": "Create a new offer using specified form fields.\n\nThis tool is used to create a new offer by filling out various form fields. It requires the 'offersWrite' permission and supports field types such as Boolean, Currency, Date, Number, String, ValueSelect, and MultiValueSelect. Each field must be filled out with the accepted value type as per the specification.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'offerCreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateOffer", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\":\"Special Offer\",\"description\":\"Buy one get one free\",\"amount\":100.00,\"currency\":\"USD\",\"startDate\":\"2023-10-01\",\"endDate\":\"2023-12-31\",\"isActive\":true,\"categories\":[\"electronics\",\"accessories\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSurveyRequest", + "qualifiedName": "AshbyApi.CreateSurveyRequest", + "fullyQualifiedName": "AshbyApi.CreateSurveyRequest@2.0.0", + "description": "Create a survey request and get a survey URL.\n\nUse this tool to create a survey request for candidates and obtain a URL which can be shared with them to complete the survey. Note that this tool does not send the survey URL to the candidate automatically; it just generates the link.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveyRequestCreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateSurveyRequest", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\":\"Candidate Feedback Survey\",\"description\":\"We value your feedback on the interview process.\",\"questions\":[{\"question\":\"How would you rate your overall experience?\",\"type\":\"scale\",\"scale_min\":1,\"scale_max\":5},{\"question\":\"What did you like most about the interview?\",\"type\":\"text\"},{\"question\":\"What can we improve?\",\"type\":\"text\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSurveySubmission", + "qualifiedName": "AshbyApi.CreateSurveySubmission", + "fullyQualifiedName": "AshbyApi.CreateSurveySubmission@2.0.0", + "description": "Create a new survey submission.\n\nThis tool creates a new survey submission and should be called when you need to record a survey response. Requires appropriate permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveySubmissionCreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateSurveySubmission", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"survey_id\": \"12345\", \"responses\": {\"question_1\": \"Yes\", \"question_2\": \"No\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWebhookSetting", + "qualifiedName": "AshbyApi.CreateWebhookSetting", + "fullyQualifiedName": "AshbyApi.CreateWebhookSetting@2.0.0", + "description": "Creates a new webhook setting in Ashby.\n\nThis tool creates a webhook setting in Ashby. It should be called when you need to set up a new webhook to receive event notifications. Ensure the necessary permissions are granted.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'webhookcreate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.CreateWebhookSetting", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"url\": \"https://example.com/webhook\", \"events\": [\"user.created\", \"user.updated\"], \"active\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteWebhookSetting", + "qualifiedName": "AshbyApi.DeleteWebhookSetting", + "fullyQualifiedName": "AshbyApi.DeleteWebhookSetting@2.0.0", + "description": "Deletes a specified webhook setting.\n\nUse this tool to delete an existing webhook setting when no longer needed, ensuring the user has the required permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'webhookdelete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.DeleteWebhookSetting", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"webhook_id\": \"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchApplicationDetails", + "qualifiedName": "AshbyApi.FetchApplicationDetails", + "fullyQualifiedName": "AshbyApi.FetchApplicationDetails@2.0.0", + "description": "Fetch application details using application or form instance ID.\n\nUse this tool to retrieve details of an application by providing either the application ID or the submitted form instance ID. If both are provided, the application ID is prioritized. Requires 'candidatesRead' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.FetchApplicationDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"applicationId\":\"12345\",\"formInstanceId\":\"67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchInterviewStageDetails", + "qualifiedName": "AshbyApi.FetchInterviewStageDetails", + "fullyQualifiedName": "AshbyApi.FetchInterviewStageDetails@2.0.0", + "description": "Fetch interview stage details by ID.\n\nUse this tool to obtain detailed information about a specific interview stage by its ID. Requires the 'interviewsRead' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewStageInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.FetchInterviewStageDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"interview_stage_id\": \"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FindCandidates", + "qualifiedName": "AshbyApi.FindCandidates", + "fullyQualifiedName": "AshbyApi.FindCandidates@2.0.0", + "description": "Search for candidates by email or name.\n\nUse this tool to find candidates based on email and/or name for operations requiring a focused candidate set. Useful for building candidate autocompletes. Ensure you have the required permissions.", + "parameters": [ + { + "name": "candidate_email", + "type": "string", + "required": false, + "description": "The email address of the candidate to search for. Use this to refine the search results and find specific candidates.", + "enum": null, + "inferrable": true + }, + { + "name": "candidate_name", + "type": "string", + "required": false, + "description": "The name of the candidate to search for in the database.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'candidateSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.FindCandidates", + "parameters": { + "candidate_email": { + "value": "example@example.com", + "type": "string", + "required": false + }, + "candidate_name": { + "value": "John Doe", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GenerateAndPollReport", + "qualifiedName": "AshbyApi.GenerateAndPollReport", + "fullyQualifiedName": "AshbyApi.GenerateAndPollReport@2.0.0", + "description": "Generate a new report or poll status of report generation.\n\nThis tool generates a new report or checks the status of an existing report generation process in a two-step manner. Initially, call with a reportId to start report generation and receive a requestId. Then, poll using both reportId and requestId until the report's status is complete or failed. Ideal for asynchronous report operations that exceed 30 seconds. Requires `reportsRead` permission. If rate limits are exceeded, consider using the synchronous endpoint.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reportGenerate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GenerateAndPollReport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"reportId\":\"1234-abcd-5678-efgh\",\"options\":{\"format\":\"pdf\",\"includeMetadata\":true}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetApiKeyInfo", + "qualifiedName": "AshbyApi.GetApiKeyInfo", + "fullyQualifiedName": "AshbyApi.GetApiKeyInfo@2.0.0", + "description": "Retrieve information about the current API key.\n\nThis tool retrieves details about the API key being used for requests. It requires the 'apiKeysRead' permission and is essential for verifying or monitoring API key usage and access.", + "parameters": [], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apiKeyInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetApiKeyInfo", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetApplicationHistory", + "qualifiedName": "AshbyApi.GetApplicationHistory", + "fullyQualifiedName": "AshbyApi.GetApplicationHistory@2.0.0", + "description": "Fetch a paginated list of application history items.\n\nUse this tool to obtain detailed history records of an application, including updates and changes over time. Useful for tracking application progress or changes in candidate information.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationListHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetApplicationHistory", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"applicationId\":\"12345\",\"limit\":10,\"offset\":0}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetApprovalList", + "qualifiedName": "AshbyApi.GetApprovalList", + "fullyQualifiedName": "AshbyApi.GetApprovalList@2.0.0", + "description": "Retrieve all approvals in the organization.\n\nThis tool retrieves all approvals within the organization. It can optionally filter results by entity type and entity ID. Ensure the 'approvalsRead' permission is available when using this tool.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'approvalList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetApprovalList", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"entityType\":\"employee\",\"entityId\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAshbyUserInfo", + "qualifiedName": "AshbyApi.GetAshbyUserInfo", + "fullyQualifiedName": "AshbyApi.GetAshbyUserInfo@2.0.0", + "description": "Retrieve detailed information of a specific Ashby user.\n\nUse this tool to get detailed information about a specific user in Ashby by their user ID. Requires the 'organizationRead' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'userInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetAshbyUserInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"userId\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAshbyUserList", + "qualifiedName": "AshbyApi.GetAshbyUserList", + "fullyQualifiedName": "AshbyApi.GetAshbyUserList@2.0.0", + "description": "Retrieve a list of all users in Ashby and their access levels.\n\nCall this tool to get a list of all users in Ashby, including their global roles which indicate their access levels. Useful for understanding user permissions and roles within an organization on Ashby.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'userList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetAshbyUserList", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCandidateCriteriaEvaluations", + "qualifiedName": "AshbyApi.GetCandidateCriteriaEvaluations", + "fullyQualifiedName": "AshbyApi.GetCandidateCriteriaEvaluations@2.0.0", + "description": "Retrieve AI evaluations for candidate job criteria.\n\nFetch AI-generated evaluations assessing how well a candidate meets job requirements, including outcome and reasoning details. Requires specific permissions and enabled features.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationListCriteriaEvaluations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetCandidateCriteriaEvaluations", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidate_id\":\"12345\",\"job_id\":\"67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCandidateInformation", + "qualifiedName": "AshbyApi.GetCandidateInformation", + "fullyQualifiedName": "AshbyApi.GetCandidateInformation@2.0.0", + "description": "Retrieve detailed information of a candidate using their ID.\n\nThis tool retrieves comprehensive information about a candidate based on their unique ID, ensuring the caller has the necessary permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'candidateInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetCandidateInformation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidate_id\":\"123456\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomFieldInfo", + "qualifiedName": "AshbyApi.GetCustomFieldInfo", + "fullyQualifiedName": "AshbyApi.GetCustomFieldInfo@2.0.0", + "description": "Retrieve information about a custom field.\n\nGet details about a custom field, requiring the 'hiringProcessMetadataRead' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'customFieldInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetCustomFieldInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"customFieldId\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDepartmentInfo", + "qualifiedName": "AshbyApi.GetDepartmentInfo", + "fullyQualifiedName": "AshbyApi.GetDepartmentInfo@2.0.0", + "description": "Fetch department details by ID.\n\nUse this tool to retrieve detailed information about a department by providing its ID. It's useful for getting specifics on organization departments.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'departmentInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetDepartmentInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"department_id\": \"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFeedbackFormInfo", + "qualifiedName": "AshbyApi.GetFeedbackFormInfo", + "fullyQualifiedName": "AshbyApi.GetFeedbackFormInfo@2.0.0", + "description": "Fetch detailed information about a specific feedback form by ID.\n\nUse this tool to retrieve information about a single feedback form based on its ID, useful for understanding the content and structure of the feedback form. Ensure the necessary permissions are in place.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feedbackFormDefinitionInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetFeedbackFormInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"feedbackFormId\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetHiringTeamRoles", + "qualifiedName": "AshbyApi.GetHiringTeamRoles", + "fullyQualifiedName": "AshbyApi.GetHiringTeamRoles@2.0.0", + "description": "Retrieve all available hiring team roles for applications.\n\nThis tool fetches all available roles within the hiring team for applications in the organization. Requires candidatesRead permission.", + "parameters": [], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationHiringTeamRoleList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetHiringTeamRoles", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetInterviewDetails", + "qualifiedName": "AshbyApi.GetInterviewDetails", + "fullyQualifiedName": "AshbyApi.GetInterviewDetails@2.0.0", + "description": "Retrieve detailed information about a specific interview.\n\nThis tool is used to fetch interview details using a specific interview ID from the Ashby service. It requires the `interviewsRead` permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetInterviewDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"interview_id\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetInterviewerPoolInfo", + "qualifiedName": "AshbyApi.GetInterviewerPoolInfo", + "fullyQualifiedName": "AshbyApi.GetInterviewerPoolInfo@2.0.0", + "description": "Retrieve information about an interviewer pool.\n\nUse this tool to get details about an interviewer pool from Ashby. Requires the 'hiringProcessMetadataRead' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewerPoolInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetInterviewerPoolInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"poolId\":\"interviewer_pool_123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetInterviewerSettings", + "qualifiedName": "AshbyApi.GetInterviewerSettings", + "fullyQualifiedName": "AshbyApi.GetInterviewerSettings@2.0.0", + "description": "Retrieve interviewer settings for a user.\n\nThis tool retrieves the interviewer settings for a specified user in the organization. It requires the 'organizationRead' permission to access user information.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'userInterviewerSettings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetInterviewerSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"user_id\": \"12345\", \"organization_id\": \"org_67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetInterviewSchedules", + "qualifiedName": "AshbyApi.GetInterviewSchedules", + "fullyQualifiedName": "AshbyApi.GetInterviewSchedules@2.0.0", + "description": "Retrieve all interview schedules for the organization.\n\nThis tool is used to obtain a list of all interview schedules within an organization. It is ideal for managing or reviewing interview timelines and requires the 'interviewsRead' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewScheduleList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetInterviewSchedules", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetJobDetails", + "qualifiedName": "AshbyApi.GetJobDetails", + "fullyQualifiedName": "AshbyApi.GetJobDetails@2.0.0", + "description": "Retrieve detailed information about a job using its ID.\n\nThis tool provides comprehensive details about a specific job when given the job ID. It should be used when there's a need to gather information about job specifics, such as title, description, and requirements. Requires appropriate permissions to access job data.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'jobInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetJobDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"job_id\": \"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetJobPostingInfo", + "qualifiedName": "AshbyApi.GetJobPostingInfo", + "fullyQualifiedName": "AshbyApi.GetJobPostingInfo@2.0.0", + "description": "Retrieve detailed information about a specific job posting.\n\nThis tool retrieves comprehensive details about a specific job posting, including data for rich search results and application form definitions. It is useful for accessing detailed job information to present on websites or applications.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'jobPostingInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetJobPostingInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"jobId\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetLatestOffers", + "qualifiedName": "AshbyApi.GetLatestOffers", + "fullyQualifiedName": "AshbyApi.GetLatestOffers@2.0.0", + "description": "Retrieve the latest version of all offers available.\n\nUse this tool to get a list of all offers with their latest version from Ashby. Requires offersRead permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'offerList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetLatestOffers", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetLocationDetails", + "qualifiedName": "AshbyApi.GetLocationDetails", + "fullyQualifiedName": "AshbyApi.GetLocationDetails@2.0.0", + "description": "Retrieve detailed information for a specific location.\n\nUse this tool to obtain detailed information about a specific location by its ID. This requires the organizationRead permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'locationInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetLocationDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"location_id\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOfferDetails", + "qualifiedName": "AshbyApi.GetOfferDetails", + "fullyQualifiedName": "AshbyApi.GetOfferDetails@2.0.0", + "description": "Retrieve details about a specific offer using its ID.\n\nUse this tool to obtain detailed information about a specific offer by providing its ID. Requires the necessary permission to access the offer details.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'offerInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetOfferDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"offer_id\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOpeningInfo", + "qualifiedName": "AshbyApi.GetOpeningInfo", + "fullyQualifiedName": "AshbyApi.GetOpeningInfo@2.0.0", + "description": "Retrieve job opening details using a UUID.\n\nCall this tool to get specific information about a job opening identified by its UUID. Useful for accessing job details when the UUID is known and the `jobsRead` permission is granted.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'openinginfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetOpeningInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"uuid\": \"123e4567-e89b-12d3-a456-426614174000\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectInformation", + "qualifiedName": "AshbyApi.GetProjectInformation", + "fullyQualifiedName": "AshbyApi.GetProjectInformation@2.0.0", + "description": "Retrieve detailed information about a project.\n\nThis tool retrieves detailed information about a project using its UUID. It requires the 'jobsRead' permission. Use it to access comprehensive project data when given a valid UUID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projectinfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetProjectInformation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"uuid\": \"123e4567-e89b-12d3-a456-426614174000\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetReferralFormInfo", + "qualifiedName": "AshbyApi.GetReferralFormInfo", + "fullyQualifiedName": "AshbyApi.GetReferralFormInfo@2.0.0", + "description": "Fetches or creates the default referral form details.\n\nUse this tool to obtain the default referral form information. If no form exists, a default one will be created. Ensure that the 'hiringProcessMetadataRead' permission is granted.", + "parameters": [], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'referralFormInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetReferralFormInfo", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSurveyFormDetails", + "qualifiedName": "AshbyApi.GetSurveyFormDetails", + "fullyQualifiedName": "AshbyApi.GetSurveyFormDetails@2.0.0", + "description": "Retrieve details of a survey form definition by id.\n\nUse this tool to get details about a specific survey form definition using its id. Requires the hiringProcessMetadataRead permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveyFormDefinitionInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.GetSurveyFormDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"surveyFormId\": \"12345-abcde\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "HiringTeamAddMember", + "qualifiedName": "AshbyApi.HiringTeamAddMember", + "fullyQualifiedName": "AshbyApi.HiringTeamAddMember@2.0.0", + "description": "Adds a user to the hiring team for a job or application.\n\nThis tool is used to add an Ashby user to a hiring team at the application, job, or opening level. It requires the `organizationWrite` permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hiringteamaddmember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.HiringTeamAddMember", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"jobId\":\"12345\",\"userId\":\"67890\",\"role\":\"interviewer\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "JobInterviewPlanInfo", + "qualifiedName": "AshbyApi.JobInterviewPlanInfo", + "fullyQualifiedName": "AshbyApi.JobInterviewPlanInfo@2.0.0", + "description": "Retrieve a job's interview plan details.\n\nFetches the interview plan for a specific job, detailing the activities and interviews required at each stage. Useful for understanding the scheduling needs and process of a job interview.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'jobInterviewPlanInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.JobInterviewPlanInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"job_id\": \"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAllJobs", + "qualifiedName": "AshbyApi.ListAllJobs", + "fullyQualifiedName": "AshbyApi.ListAllJobs@2.0.0", + "description": "Retrieve all open, closed, and archived jobs from Ashby.\n\nThis tool is used to list all jobs, including open, closed, and archived ones. It can also include draft jobs if specified in the status parameter. Useful for accessing comprehensive job listings efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'jobList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListAllJobs", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"include_drafts\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAllLocations", + "qualifiedName": "AshbyApi.ListAllLocations", + "fullyQualifiedName": "AshbyApi.ListAllLocations@2.0.0", + "description": "Retrieve a list of all available locations.\n\nUse this tool to obtain a complete list of locations, excluding regions. Ensure you have the 'organizationRead' permission to access this data.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'locationlist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListAllLocations", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAllSources", + "qualifiedName": "AshbyApi.ListAllSources", + "fullyQualifiedName": "AshbyApi.ListAllSources@2.0.0", + "description": "Retrieve a list of all sources for hiring processes.\n\nUse this tool to obtain a comprehensive list of sources related to hiring processes. It requires the 'hiringProcessMetadataRead' permission to access the data.", + "parameters": [ + { + "name": "include_archived_items", + "type": "boolean", + "required": false, + "description": "When true, archived items are included in the results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'sourcelist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListAllSources", + "parameters": { + "include_archived_items": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListApplicationFeedback", + "qualifiedName": "AshbyApi.ListApplicationFeedback", + "fullyQualifiedName": "AshbyApi.ListApplicationFeedback@2.0.0", + "description": "Retrieve interview feedback and scorecards for applications.\n\nThis tool retrieves all interview scorecards and feedback submissions associated with a specific application, including form structure, submitted responses, and interview context. Useful for assessing candidate performance through submitted feedback.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationFeedbackList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListApplicationFeedback", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"applicationId\":\"12345\", \"includeFeedback\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListApplications", + "qualifiedName": "AshbyApi.ListApplications", + "fullyQualifiedName": "AshbyApi.ListApplications@2.0.0", + "description": "Retrieve all applications in the organization.\n\nUse this tool to get a comprehensive list of all candidate applications within your organization. Requires 'candidatesRead' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListApplications", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListArchiveReasons", + "qualifiedName": "AshbyApi.ListArchiveReasons", + "fullyQualifiedName": "AshbyApi.ListArchiveReasons@2.0.0", + "description": "Retrieve a list of archive reasons.\n\nUse this tool to get a list of reasons for archiving within the Ashby service. Requires the 'hiringProcessMetadataRead' permission.", + "parameters": [ + { + "name": "include_archived_interview_plans", + "type": "boolean", + "required": false, + "description": "Set to true to include archived interview plans in the results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'archivereasonlist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListArchiveReasons", + "parameters": { + "include_archived_interview_plans": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAssessments", + "qualifiedName": "AshbyApi.ListAssessments", + "fullyQualifiedName": "AshbyApi.ListAssessments@2.0.0", + "description": "Retrieve a list of available assessments.\n\nThis tool calls the partner's API to list all assessments supported by them. It is used to obtain the current assessment offerings.", + "parameters": [], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'assessmentList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListAssessments", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCandidateClientInfo", + "qualifiedName": "AshbyApi.ListCandidateClientInfo", + "fullyQualifiedName": "AshbyApi.ListCandidateClientInfo@2.0.0", + "description": "Retrieve client info records for a candidate.\n\nUse this tool to list all client information records for a specific candidate. Requires candidatesRead permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'candidateListClientInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListCandidateClientInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidateId\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCandidateNotes", + "qualifiedName": "AshbyApi.ListCandidateNotes", + "fullyQualifiedName": "AshbyApi.ListCandidateNotes@2.0.0", + "description": "Retrieve all notes associated with a candidate.\n\nUse this tool to retrieve all notes related to a specific candidate. This is useful for reviewing feedback or comments made during the recruitment process.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'candidateListNotes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListCandidateNotes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidate_id\": \"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCandidateProjects", + "qualifiedName": "AshbyApi.ListCandidateProjects", + "fullyQualifiedName": "AshbyApi.ListCandidateProjects@2.0.0", + "description": "Retrieve all projects linked to a candidate.\n\nUse this tool to list all projects associated with a specific candidate. Requires appropriate permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'candidateListProjects'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListCandidateProjects", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidate_id\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCandidates", + "qualifiedName": "AshbyApi.ListCandidates", + "fullyQualifiedName": "AshbyApi.ListCandidates@2.0.0", + "description": "Retrieve a list of all candidates in an organization.\n\nUse this tool to get a comprehensive list of all candidates within your organization. Useful for accessing candidate data for recruitment or management purposes. Requires 'candidatesRead' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'candidateList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListCandidates", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCandidateTags", + "qualifiedName": "AshbyApi.ListCandidateTags", + "fullyQualifiedName": "AshbyApi.ListCandidateTags@2.0.0", + "description": "Retrieve a list of all candidate tags.\n\nUse this tool to get a comprehensive list of candidate tags. Requires the hiringProcessMetadataRead permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'candidateTagList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListCandidateTags", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCloseReasons", + "qualifiedName": "AshbyApi.ListCloseReasons", + "fullyQualifiedName": "AshbyApi.ListCloseReasons@2.0.0", + "description": "Get a list of close reasons for jobs or openings.\n\nUse this tool to retrieve all the reasons for closing jobs or openings. Useful for understanding job status changes. Requires hiring process metadata read permissions.", + "parameters": [ + { + "name": "include_archived_reasons", + "type": "boolean", + "required": false, + "description": "Set to true to include archived close reasons in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'closeReasonList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListCloseReasons", + "parameters": { + "include_archived_reasons": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCustomFields", + "qualifiedName": "AshbyApi.ListCustomFields", + "fullyQualifiedName": "AshbyApi.ListCustomFields@2.0.0", + "description": "Retrieve a list of all custom fields.\n\nUse this tool to get a list of all custom fields available in the system. This action requires the 'hiringProcessMetadataRead' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'customFieldList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListCustomFields", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListDepartments", + "qualifiedName": "AshbyApi.ListDepartments", + "fullyQualifiedName": "AshbyApi.ListDepartments@2.0.0", + "description": "Retrieve a list of all departments.\n\nUse this tool to get a complete list of all departments within the organization. Requires appropriate permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'departmentList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListDepartments", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEnabledCommunicationTemplates", + "qualifiedName": "AshbyApi.ListEnabledCommunicationTemplates", + "fullyQualifiedName": "AshbyApi.ListEnabledCommunicationTemplates@2.0.0", + "description": "Retrieve all enabled communication templates.\n\nUse this tool to retrieve a list of all enabled communication templates in the system. Useful for managing or viewing templates that are currently active.", + "parameters": [], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'communicationTemplateList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListEnabledCommunicationTemplates", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEnabledJobBoards", + "qualifiedName": "AshbyApi.ListEnabledJobBoards", + "fullyQualifiedName": "AshbyApi.ListEnabledJobBoards@2.0.0", + "description": "Retrieve a list of all enabled job boards.\n\nUse this tool to get information on currently enabled job boards. Ideal for understanding which job boards are active and available for use.", + "parameters": [], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'jobBoardList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListEnabledJobBoards", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListFeedbackForms", + "qualifiedName": "AshbyApi.ListFeedbackForms", + "fullyQualifiedName": "AshbyApi.ListFeedbackForms@2.0.0", + "description": "Retrieve a list of all feedback forms.\n\nCall this tool to obtain a list of all feedback forms. Requires 'hiringProcessMetadataRead' permission for access.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feedbackFormDefinitionList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListFeedbackForms", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListHiringTeamRoles", + "qualifiedName": "AshbyApi.ListHiringTeamRoles", + "fullyQualifiedName": "AshbyApi.ListHiringTeamRoles@2.0.0", + "description": "Retrieve possible hiring team roles within an organization.\n\nCall this tool to get a list of hiring team roles for an organization. Useful for understanding the roles involved in hiring processes. Ensure you have the 'organizationRead' permission to use this tool.", + "parameters": [ + { + "name": "return_role_titles_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only role titles. Set to false to return objects with id and title.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hiringteamrolelist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListHiringTeamRoles", + "parameters": { + "return_role_titles_only": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListInterviewerPools", + "qualifiedName": "AshbyApi.ListInterviewerPools", + "fullyQualifiedName": "AshbyApi.ListInterviewerPools@2.0.0", + "description": "Fetches a list of all interviewer pools.\n\nUse this tool to retrieve a complete list of interviewer pools. It requires the `hiringProcessMetadataRead` permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewerPoolList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListInterviewerPools", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListInterviewEvents", + "qualifiedName": "AshbyApi.ListInterviewEvents", + "fullyQualifiedName": "AshbyApi.ListInterviewEvents@2.0.0", + "description": "Retrieve a list of interview events for a schedule.\n\nUse this tool to obtain a list of interview events linked to a specified interview schedule. It requires the necessary read permissions for accessing interview data.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewEventList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListInterviewEvents", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"schedule_id\":\"12345\",\"date_range\":{\"start\":\"2023-10-01\",\"end\":\"2023-10-31\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListInterviewPlans", + "qualifiedName": "AshbyApi.ListInterviewPlans", + "fullyQualifiedName": "AshbyApi.ListInterviewPlans@2.0.0", + "description": "Fetch a list of all available interview plans.\n\nUse this tool to retrieve a list of all interview plans from Ashby. Ideal for obtaining current interview structures and details. Ensure the `interviewsRead` permission is granted before use.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewPlanList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListInterviewPlans", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListInterviews", + "qualifiedName": "AshbyApi.ListInterviews", + "fullyQualifiedName": "AshbyApi.ListInterviews@2.0.0", + "description": "Retrieve a list of all scheduled interviews.\n\nUse this tool to get a comprehensive list of all interviews. This is useful for checking scheduled, completed, or upcoming interviews. Ensure you have the required permissions to access this information.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListInterviews", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListInterviewStageGroups", + "qualifiedName": "AshbyApi.ListInterviewStageGroups", + "fullyQualifiedName": "AshbyApi.ListInterviewStageGroups@2.0.0", + "description": "Retrieve all interview group stages in order.\n\nUse this tool to list all the interview group stages for a specific interview plan. This operation requires the 'interviewsRead' permission.", + "parameters": [], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewStageGroupList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListInterviewStageGroups", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListInterviewStages", + "qualifiedName": "AshbyApi.ListInterviewStages", + "fullyQualifiedName": "AshbyApi.ListInterviewStages@2.0.0", + "description": "Retrieve all interview stages for an interview plan in order.\n\nUse to obtain a list of all interview stages for a specific interview plan, ensuring they are in the correct order. Useful for understanding the interview process structure.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewStageList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListInterviewStages", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"interview_plan_id\": \"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListJobOpenings", + "qualifiedName": "AshbyApi.ListJobOpenings", + "fullyQualifiedName": "AshbyApi.ListJobOpenings@2.0.0", + "description": "Retrieve a list of current job openings.\n\nUsed to fetch a list of available job openings from the Ashby platform. Requires the 'jobsRead' permission to access opening list information.", + "parameters": [ + { + "name": "last_sync_token", + "type": "string", + "required": false, + "description": "Opaque token representing the last time a full set of results was fetched. Use this to sync data updates.", + "enum": null, + "inferrable": true + }, + { + "name": "page_cursor", + "type": "string", + "required": false, + "description": "String indicating which page of job openings results to fetch, used for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'openinglist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListJobOpenings", + "parameters": { + "last_sync_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "page_cursor": { + "value": "page_2", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListJobTemplates", + "qualifiedName": "AshbyApi.ListJobTemplates", + "fullyQualifiedName": "AshbyApi.ListJobTemplates@2.0.0", + "description": "Retrieve all active and inactive job templates.\n\nUse this tool to obtain a list of all job templates, both active and inactive. Useful for managing and reviewing job templates. Requires 'jobsRead' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'jobTemplateList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListJobTemplates", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListProjects", + "qualifiedName": "AshbyApi.ListProjects", + "fullyQualifiedName": "AshbyApi.ListProjects@2.0.0", + "description": "Retrieve a list of projects.\n\nUse this tool to obtain a list of projects. Requires the 'candidatesRead' permission.", + "parameters": [ + { + "name": "last_sync_token", + "type": "string", + "required": false, + "description": "An opaque token from the last successful data sync. This is used to fetch updates.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_to_return", + "type": "integer", + "required": false, + "description": "The maximum number of projects to return. The default and maximum value is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "page_results_cursor", + "type": "string", + "required": false, + "description": "An opaque cursor indicating which page of results to fetch from the project list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projectlist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListProjects", + "parameters": { + "last_sync_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "max_items_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "page_results_cursor": { + "value": "cursor_456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPublishedJobPostings", + "qualifiedName": "AshbyApi.ListPublishedJobPostings", + "fullyQualifiedName": "AshbyApi.ListPublishedJobPostings@2.0.0", + "description": "Retrieve all published and publicly listed job postings.\n\nUse this tool to get a list of job postings that are published and set for public display. Ensure to set the `listedOnly` parameter to `true` to avoid exposing unlisted jobs.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'jobPostingList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListPublishedJobPostings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"listedOnly\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSourceTrackingLinks", + "qualifiedName": "AshbyApi.ListSourceTrackingLinks", + "fullyQualifiedName": "AshbyApi.ListSourceTrackingLinks@2.0.0", + "description": "Retrieve all source custom tracking links.\n\nFetches a list of all custom tracking links used for source tracking, requiring the 'hiringProcessMetadataRead' permission.", + "parameters": [ + { + "name": "include_disabled_tracking_links", + "type": "boolean", + "required": false, + "description": "Set to true to include disabled tracking links in the list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'sourcetrackinglinklist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListSourceTrackingLinks", + "parameters": { + "include_disabled_tracking_links": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSurveyFormDefinitions", + "qualifiedName": "AshbyApi.ListSurveyFormDefinitions", + "fullyQualifiedName": "AshbyApi.ListSurveyFormDefinitions@2.0.0", + "description": "Retrieve all survey form definitions.\n\nFetches a list of all available survey form definitions. Useful for obtaining the structure and details of surveys used in the hiring process.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveyFormDefinitionList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListSurveyFormDefinitions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSurveyRequests", + "qualifiedName": "AshbyApi.ListSurveyRequests", + "fullyQualifiedName": "AshbyApi.ListSurveyRequests@2.0.0", + "description": "Retrieve a list of all survey requests.\n\nCall this tool to get an overview of all survey requests currently listed. Useful for accessing details on candidate surveys when you have the necessary permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveyRequestList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListSurveyRequests", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"status\":\"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSurveySubmissions", + "qualifiedName": "AshbyApi.ListSurveySubmissions", + "fullyQualifiedName": "AshbyApi.ListSurveySubmissions@2.0.0", + "description": "Retrieve all survey submissions for a specific type.\n\nUse this tool to obtain a list of all survey submissions associated with a particular survey type. Useful for analyzing survey results or monitoring participation.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveySubmissionList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.ListSurveySubmissions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"survey_type\":\"customer_feedback\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MoveDepartment", + "qualifiedName": "AshbyApi.MoveDepartment", + "fullyQualifiedName": "AshbyApi.MoveDepartment@2.0.0", + "description": "Relocate a department to a new parent structure.\n\nThis tool is used to move a department to a different parent structure within an organization. Requires appropriate permissions to execute.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'departmentmove'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.MoveDepartment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"departmentId\":\"12345\",\"newParentId\":\"67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MoveLocationInHierarchy", + "qualifiedName": "AshbyApi.MoveLocationInHierarchy", + "fullyQualifiedName": "AshbyApi.MoveLocationInHierarchy@2.0.0", + "description": "Move a location within the organizational hierarchy.\n\nThis tool is used to move a location in the location hierarchy. It requires the organizationWrite permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'locationmove'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.MoveLocationInHierarchy", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"locationId\":\"loc_12345\",\"newParentId\":\"loc_67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "OfferApprovalAction", + "qualifiedName": "AshbyApi.OfferApprovalAction", + "fullyQualifiedName": "AshbyApi.OfferApprovalAction@2.0.0", + "description": "Approve an offer or a specific step in the approval process.\n\nThis tool approves an entire offer or a specific step within an offer's approval process. Use it to mimic the \"Force Approve\" function in Ashby, requiring the `offersWrite` permission. Call without `approvalStepId` and `userId` to approve the whole process, or provide both to approve a specific step.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'offerApprove'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.OfferApprovalAction", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"offerId\":\"12345\",\"approved\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveHiringTeamMember", + "qualifiedName": "AshbyApi.RemoveHiringTeamMember", + "fullyQualifiedName": "AshbyApi.RemoveHiringTeamMember@2.0.0", + "description": "Remove a user from the hiring team at the application level.\n\nThis tool removes an Ashby user from the hiring team for a specific application. It requires the `candidateWrite` permission to perform the action.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationremovehiringteammember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.RemoveHiringTeamMember", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"applicationId\": \"app_123456\", \"userId\": \"user_78910\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveJobFromOpening", + "qualifiedName": "AshbyApi.RemoveJobFromOpening", + "fullyQualifiedName": "AshbyApi.RemoveJobFromOpening@2.0.0", + "description": "Remove a job from an opening.\n\nUse this tool to remove a job from an opening. This action requires the 'jobsWrite' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'openingremovejob'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.RemoveJobFromOpening", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"job_id\":\"12345\",\"opening_id\":\"67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveLocationFromOpening", + "qualifiedName": "AshbyApi.RemoveLocationFromOpening", + "fullyQualifiedName": "AshbyApi.RemoveLocationFromOpening@2.0.0", + "description": "Remove a location from a job opening.\n\nThis tool is used to remove a specified location from a job opening. It requires the `jobsWrite` permission and should be called when modifying job openings to update their location details.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'openingremovelocation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.RemoveLocationFromOpening", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"locationId\":\"12345\",\"openingId\":\"67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveTeamMemberFromHiring", + "qualifiedName": "AshbyApi.RemoveTeamMemberFromHiring", + "fullyQualifiedName": "AshbyApi.RemoveTeamMemberFromHiring@2.0.0", + "description": "Remove a member from the hiring team at job or application level.\n\nThis tool is used to remove an Ashby user from the hiring team for a specific application, job, or opening level. It requires the organization's write permission to perform the operation.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hiringteamremovemember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.RemoveTeamMemberFromHiring", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"job_id\":\"12345\",\"user_id\":\"67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveUserFromInterviewerPool", + "qualifiedName": "AshbyApi.RemoveUserFromInterviewerPool", + "fullyQualifiedName": "AshbyApi.RemoveUserFromInterviewerPool@2.0.0", + "description": "Remove a user from an interviewer pool.\n\nUse this tool to remove a specific user from an interviewer pool. Ensure you have the necessary permissions before making this call.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewerPoolRemoveUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.RemoveUserFromInterviewerPool", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"user_id\": \"12345\", \"interviewer_pool_id\": \"67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RestoreArchivedLocation", + "qualifiedName": "AshbyApi.RestoreArchivedLocation", + "fullyQualifiedName": "AshbyApi.RestoreArchivedLocation@2.0.0", + "description": "Restores an archived location or hierarchy.\n\nUse this tool to restore an archived location or location hierarchy in the system. Requires organizationWrite permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'locationrestore'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.RestoreArchivedLocation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"locationId\": \"12345\", \"restore\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RestoreDepartment", + "qualifiedName": "AshbyApi.RestoreDepartment", + "fullyQualifiedName": "AshbyApi.RestoreDepartment@2.0.0", + "description": "Restores a previously deleted department.\n\nUse this tool to restore a department that was previously deleted. This requires the organizationWrite permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'departmentrestore'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.RestoreDepartment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"departmentId\": \"12345\", \"restoreReason\": \"Accidental deletion\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RestoreInterviewerPool", + "qualifiedName": "AshbyApi.RestoreInterviewerPool", + "fullyQualifiedName": "AshbyApi.RestoreInterviewerPool@2.0.0", + "description": "Restores an archived interviewer pool.\n\nUse this tool to reactivate an interviewer pool that was previously archived. Ensure the necessary permissions are in place before performing this action.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewerPool.restore'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.RestoreInterviewerPool", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"poolId\":\"12345\",\"reason\":\"Reactivating for new interviews\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCandidateFileUrl", + "qualifiedName": "AshbyApi.RetrieveCandidateFileUrl", + "fullyQualifiedName": "AshbyApi.RetrieveCandidateFileUrl@2.0.0", + "description": "Retrieve the URL of a candidate's associated file.\n\nUse this tool to retrieve the URL of a file linked to a specific candidate. Ensure you have the required 'candidatesRead' permission. Note that using Ashby demo data may cause errors; create a test candidate for testing.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'fileInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.RetrieveCandidateFileUrl", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidate_id\": \"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSyncReport", + "qualifiedName": "AshbyApi.RetrieveSyncReport", + "fullyQualifiedName": "AshbyApi.RetrieveSyncReport@2.0.0", + "description": "Retrieve report data synchronously with Ashby.\n\nCall this tool to retrieve report data synchronously using Ashby's reportSynchronous endpoint. Use it when a quick report access is needed and is within the provided time constraints and limits. For longer or more resource-intensive reports, consider using asynchronous alternatives.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reportSynchronous'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.RetrieveSyncReport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"reportId\":\"12345\",\"filters\":{\"dateRange\":\"last_30_days\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveWebhookInfo", + "qualifiedName": "AshbyApi.RetrieveWebhookInfo", + "fullyQualifiedName": "AshbyApi.RetrieveWebhookInfo@2.0.0", + "description": "Retrieve detailed information on a specific webhook setting by ID.\n\nThis tool fetches detailed information about a specified webhook setting based on its ID. It is useful for understanding configuration details and is to be used when identifying the specifics of a webhook is necessary.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'webhookInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.RetrieveWebhookInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"webhook_id\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchJobOpenings", + "qualifiedName": "AshbyApi.SearchJobOpenings", + "fullyQualifiedName": "AshbyApi.SearchJobOpenings@2.0.0", + "description": "Search for job openings by identifier.\n\nUse this tool to search for job openings by their identifier. Requires appropriate permissions to access the data.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'openingsearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.SearchJobOpenings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"identifier\": \"job-12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchJobsByTitle", + "qualifiedName": "AshbyApi.SearchJobsByTitle", + "fullyQualifiedName": "AshbyApi.SearchJobsByTitle@2.0.0", + "description": "Search for jobs by title.\n\nUse this tool to find job listings by specifying the job title. This is useful for locating specific job openings across various industries and locations.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'jobSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.SearchJobsByTitle", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"job_title\": \"Software Engineer\", \"location\": \"New York\", \"full_time\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchProjectsByTitle", + "qualifiedName": "AshbyApi.SearchProjectsByTitle", + "fullyQualifiedName": "AshbyApi.SearchProjectsByTitle@2.0.0", + "description": "Search for projects by title for quick lookups.\n\nThis tool allows you to search for projects by their titles, returning up to 100 results. Use it when you need to quickly find a specific project or perform operations that require a small set of project results.", + "parameters": [ + { + "name": "project_title", + "type": "string", + "required": false, + "description": "The title of the project to search for. Use this to narrow down the results to specific projects based on their name.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projectSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.SearchProjectsByTitle", + "parameters": { + "project_title": { + "value": "Website Redesign", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SetCustomFieldValue", + "qualifiedName": "AshbyApi.SetCustomFieldValue", + "fullyQualifiedName": "AshbyApi.SetCustomFieldValue@2.0.0", + "description": "Update the value of a custom field for an object.\n\nUse this tool to set the value of a custom field for a specified object, requiring specific data types based on the field.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'customFieldSetValue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.SetCustomFieldValue", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"object_id\":\"12345\",\"custom_field_id\":\"67890\",\"value\":\"Sample Value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SetJobStatus", + "qualifiedName": "AshbyApi.SetJobStatus", + "fullyQualifiedName": "AshbyApi.SetJobStatus@2.0.0", + "description": "Update the status of a job by its ID.\n\nThis tool updates the status of a job based on its ID. It validates transitions between statuses: Drafts can be changed to Open or Archived, Open jobs to Closed, Closed jobs to Draft or Archived, and Archived jobs to Draft. It requires the 'jobsWrite' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'jobSetStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.SetJobStatus", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"jobId\":\"12345\",\"status\":\"Open\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SetOpeningArchivedState", + "qualifiedName": "AshbyApi.SetOpeningArchivedState", + "fullyQualifiedName": "AshbyApi.SetOpeningArchivedState@2.0.0", + "description": "Set or unset the archived state of a job opening.\n\nUse this tool to change the archived status of a specific job opening. Useful when needing to manage the visibility or status of job opportunities in a system, requiring 'jobsWrite' permission.", + "parameters": [ + { + "name": "opening_id", + "type": "string", + "required": false, + "description": "The ID of the job opening to archive or unarchive.", + "enum": null, + "inferrable": true + }, + { + "name": "set_archived_state", + "type": "boolean", + "required": false, + "description": "Boolean to set the archived state of a job opening. Use true to archive and false to unarchive.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'openingsetarchived'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.SetOpeningArchivedState", + "parameters": { + "opening_id": { + "value": "job-12345", + "type": "string", + "required": false + }, + "set_archived_state": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SetOpeningState", + "qualifiedName": "AshbyApi.SetOpeningState", + "fullyQualifiedName": "AshbyApi.SetOpeningState@2.0.0", + "description": "Update the state of a job opening.\n\nThis tool updates the state of a job opening in the Ashby platform. It should be called when it's necessary to change the status of an opening, requiring the `jobsWrite` permission.", + "parameters": [ + { + "name": "close_reason_id", + "type": "string", + "required": false, + "description": "The ID for the reason why the opening is closed, required when setting the state to closed.", + "enum": null, + "inferrable": true + }, + { + "name": "new_opening_state", + "type": "string", + "required": false, + "description": "The new state to update the job opening to. Accepted values are 'Draft', 'Approved', 'Open', 'Closed'.", + "enum": null, + "inferrable": true + }, + { + "name": "opening_id", + "type": "string", + "required": false, + "description": "The unique identifier of the job opening to be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'openingsetopeningstate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.SetOpeningState", + "parameters": { + "close_reason_id": { + "value": "reason123", + "type": "string", + "required": false + }, + "new_opening_state": { + "value": "Closed", + "type": "string", + "required": false + }, + "opening_id": { + "value": "job456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "StartAssessment", + "qualifiedName": "AshbyApi.StartAssessment", + "fullyQualifiedName": "AshbyApi.StartAssessment@2.0.0", + "description": "Start an assessment using the Ashby API.\n\nThis tool initiates an assessment process via the Ashby platform. It should be called when an assessment needs to be started and provides confirmation once initiated.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'assessmentStart'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.StartAssessment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"assessment_id\":\"12345\",\"candidate_id\":\"67890\",\"position\":\"Software Engineer\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "StartOfferProcess", + "qualifiedName": "AshbyApi.StartOfferProcess", + "fullyQualifiedName": "AshbyApi.StartOfferProcess@2.0.0", + "description": "Initiate an offer process for a candidate.\n\nUse this tool to start an offer process for a candidate. Requires the 'offersWrite' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'offerProcess.start'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.StartOfferProcess", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidate_id\":\"12345\",\"offer_details\":{\"position\":\"Software Engineer\",\"salary\":100000,\"start_date\":\"2023-11-01\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SubmitApplicationFeedback", + "qualifiedName": "AshbyApi.SubmitApplicationFeedback", + "fullyQualifiedName": "AshbyApi.SubmitApplicationFeedback@2.0.0", + "description": "Submit application feedback forms with various field types.\n\nThis tool allows you to submit application feedback forms supporting multiple field types such as boolean, date, email, number, text, score, phone, and select options. It requires the `candidatesWrite` permission and returns the submitted feedback with the field paths and values.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationfeedbacksubmit'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.SubmitApplicationFeedback", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidateId\":\"12345\",\"feedback\":{\"general\":\"Great candidate!\",\"score\":8,\"followUp\":true,\"feedbackDate\":\"2023-10-05\",\"email\":\"example@example.com\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TransferJobApplication", + "qualifiedName": "AshbyApi.TransferJobApplication", + "fullyQualifiedName": "AshbyApi.TransferJobApplication@2.0.0", + "description": "Transfer a candidate's application to a different job.\n\nUse this tool to move a candidate's application to a different position. Requires the `candidatesWrite` permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationTransfer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.TransferJobApplication", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidateId\":\"12345\",\"jobId\":\"67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateApplication", + "qualifiedName": "AshbyApi.UpdateApplication", + "fullyQualifiedName": "AshbyApi.UpdateApplication@2.0.0", + "description": "Update an application status or details.\n\nUse this tool to update the details of an application. Useful for modifying application statuses or details. Requires 'candidatesWrite' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationUpdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateApplication", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"applicationId\": \"12345\", \"status\": \"approved\", \"details\": {\"comment\": \"Application approved after review.\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateApplicationHistory", + "qualifiedName": "AshbyApi.UpdateApplicationHistory", + "fullyQualifiedName": "AshbyApi.UpdateApplicationHistory@2.0.0", + "description": "Update the history of an application.\n\nThis tool updates the history of an application, such as setting the entered stage time or deleting a history event. It requires the 'candidatesWrite' permission and the appropriate settings in your admin API key permissions configuration.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationUpdateHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateApplicationHistory", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"applicantId\": \"12345\", \"stage\": \"interview\", \"timestamp\": \"2023-10-01T14:30:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateApplicationStage", + "qualifiedName": "AshbyApi.UpdateApplicationStage", + "fullyQualifiedName": "AshbyApi.UpdateApplicationStage@2.0.0", + "description": "Change the stage of an application.\n\nUse this tool to update the stage of a job application. This operation requires the 'candidatesWrite' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applicationChangeStage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateApplicationStage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"applicationId\": \"12345\", \"stage\": \"interview\", \"comments\": \"Scheduled for Thursday\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateApprovalDefinition", + "qualifiedName": "AshbyApi.UpdateApprovalDefinition", + "fullyQualifiedName": "AshbyApi.UpdateApprovalDefinition@2.0.0", + "description": "Create or update an approval definition for an entity.\n\nThis tool updates or creates an approval definition for an entity that requires approval in Ashby. It can override the current definition or create a new one, based on the provided parameters. The tool is only applicable for entities that are within the scope of an approval managed by the API. If no approval steps are provided, the approval process is skipped.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'approvalDefinitionUpdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateApprovalDefinition", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"entity_id\":\"12345\",\"approval_steps\":[{\"step_name\":\"Manager Review\",\"required\":true},{\"step_name\":\"Finance Approval\",\"required\":false}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAssessmentStatus", + "qualifiedName": "AshbyApi.UpdateAssessmentStatus", + "fullyQualifiedName": "AshbyApi.UpdateAssessmentStatus@2.0.0", + "description": "Update the status of a candidate assessment in Ashby.\n\nUse this tool to update the status of a started assessment in Ashby. Requires 'candidatesWrite' permission. Provide 'assessment_status' unless 'cancelled_reason' is given.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'assessmentUpdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateAssessmentStatus", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"assessment_id\":\"12345\",\"assessment_status\":\"completed\",\"candidate_id\":\"67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCandidateInfo", + "qualifiedName": "AshbyApi.UpdateCandidateInfo", + "fullyQualifiedName": "AshbyApi.UpdateCandidateInfo@2.0.0", + "description": "Update an existing candidate's information.\n\nUse this tool to update the details of an existing candidate. Make sure you have the required permissions. For setting custom field values, use the `customFields.setValue` endpoint.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'candidateUpdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateCandidateInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"candidateId\": \"12345\", \"updatedFields\": {\"name\": \"John Doe\", \"email\": \"john.doe@example.com\", \"customFields\": {\"preferred_contact_method\": \"email\"}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDepartment", + "qualifiedName": "AshbyApi.UpdateDepartment", + "fullyQualifiedName": "AshbyApi.UpdateDepartment@2.0.0", + "description": "Update existing department details in the system.\n\nThis tool updates the details of a specific department within an organization. It requires the 'organizationWrite' permission to execute successfully.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'departmentupdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateDepartment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"departmentId\": \"12345\", \"name\": \"Engineering\", \"description\": \"Handles all engineering tasks\", \"location\": \"Building A\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateInterviewerPool", + "qualifiedName": "AshbyApi.UpdateInterviewerPool", + "fullyQualifiedName": "AshbyApi.UpdateInterviewerPool@2.0.0", + "description": "Update an interviewer pool.\n\nUse this tool to update details of an interviewer pool. Requires specific permissions to execute.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewerPoolUpdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateInterviewerPool", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"interviewerPoolId\":\"12345\",\"name\":\"New Interviewer Pool\",\"description\":\"A description of the new interviewer pool\",\"active\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateInterviewerSettings", + "qualifiedName": "AshbyApi.UpdateInterviewerSettings", + "fullyQualifiedName": "AshbyApi.UpdateInterviewerSettings@2.0.0", + "description": "Update interviewer settings for a user.\n\nUse this tool to update the interviewer settings for a user, such as setting or unsetting limits. Either one or both limits can be changed. Requires 'organizationWrite' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'userUpdateInterviewerSettings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateInterviewerSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"user_id\": \"12345\", \"limit_field_1\": true, \"limit_field_2\": false}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateInterviewSchedule", + "qualifiedName": "AshbyApi.UpdateInterviewSchedule", + "fullyQualifiedName": "AshbyApi.UpdateInterviewSchedule@2.0.0", + "description": "Update, add, or cancel interview schedule events.\n\nThis tool allows updating, adding, or canceling events in an interview schedule. It should be called to manage interview schedules effectively. Requires 'interviewsWrite' permission and the event's 'interviewEventId' to proceed with updates.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'interviewScheduleUpdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateInterviewSchedule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"interviewEventId\":\"12345\",\"scheduledTime\":\"2023-10-10T10:00:00Z\",\"status\":\"confirmed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateJobCompensation", + "qualifiedName": "AshbyApi.UpdateJobCompensation", + "fullyQualifiedName": "AshbyApi.UpdateJobCompensation@2.0.0", + "description": "Update a job's compensation details.\n\nUse this tool to modify the compensation tiers of an existing job. It requires the 'jobsWrite' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'jobUpdateCompensation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateJobCompensation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"jobId\":\"12345\",\"compensationTiers\":[{\"tier\":\"base\",\"amount\":65000},{\"tier\":\"bonus\",\"amount\":15000}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateJobDetails", + "qualifiedName": "AshbyApi.UpdateJobDetails", + "fullyQualifiedName": "AshbyApi.UpdateJobDetails@2.0.0", + "description": "Update details of an existing job.\n\nUse this tool to update information for an existing job listing. This tool requires specific write permissions to execute successfully. For custom fields, utilize a separate endpoint.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'jobUpdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateJobDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"jobId\":\"12345\",\"title\":\"Senior Software Engineer\",\"description\":\"Responsible for developing and maintaining software applications.\",\"location\":\"Remote\",\"salary\":\"100000\",\"requirements\":[\"5 years of experience\",\"Proficient in JavaScript\",\"Knowledge of cloud services\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateJobOpening", + "qualifiedName": "AshbyApi.UpdateJobOpening", + "fullyQualifiedName": "AshbyApi.UpdateJobOpening@2.0.0", + "description": "Update the details of a job opening.\n\nThis tool updates the details of a specified job opening. It requires the 'jobsWrite' permission. For setting custom field values on openings, use the dedicated customFields.setValue endpoint.", + "parameters": [ + { + "name": "department_team_id", + "type": "string", + "required": false, + "description": "The unique ID of the department or team associated with the job opening.", + "enum": null, + "inferrable": true + }, + { + "name": "employment_type", + "type": "string", + "required": false, + "description": "Specifies the employment type for the job opening. Can be FullTime, PartTime, Intern, Contract, or Temporary.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_update", + "type": "string", + "required": false, + "description": "Specify the fields you want to update, such as jobIds, targetHireDate, targetStartDate, isBackfill, employmentType.", + "enum": null, + "inferrable": true + }, + { + "name": "is_backfill", + "type": "boolean", + "required": false, + "description": "Indicate if the opening is intended to backfill an employee. Use true for backfill, false otherwise.", + "enum": null, + "inferrable": true + }, + { + "name": "job_description_update", + "type": "string", + "required": false, + "description": "The new description text for the job opening. Provide a detailed and clear update relevant to the job role.", + "enum": null, + "inferrable": true + }, + { + "name": "opening_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the job opening to update.", + "enum": null, + "inferrable": true + }, + { + "name": "target_hire_date", + "type": "string", + "required": false, + "description": "The date in YYYY-MM-DD format by which you intend to hire for the opening.", + "enum": null, + "inferrable": true + }, + { + "name": "target_start_date", + "type": "string", + "required": false, + "description": "The intended start date (in YYYY-MM-DD format) for a newly hired employee.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'openingupdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateJobOpening", + "parameters": { + "department_team_id": { + "value": "12345", + "type": "string", + "required": false + }, + "employment_type": { + "value": "FullTime", + "type": "string", + "required": false + }, + "fields_to_update": { + "value": "jobIds,targetHireDate,isBackfill", + "type": "string", + "required": false + }, + "is_backfill": { + "value": true, + "type": "boolean", + "required": false + }, + "job_description_update": { + "value": "We are looking for a skilled software engineer to join our team and contribute to exciting projects.", + "type": "string", + "required": false + }, + "opening_identifier": { + "value": "job-67890", + "type": "string", + "required": false + }, + "target_hire_date": { + "value": "2023-12-01", + "type": "string", + "required": false + }, + "target_start_date": { + "value": "2024-01-15", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateJobPosting", + "qualifiedName": "AshbyApi.UpdateJobPosting", + "fullyQualifiedName": "AshbyApi.UpdateJobPosting@2.0.0", + "description": "Update an existing job posting on the Ashby platform.\n\nUse this tool to update details of an existing job posting. Requires 'jobsWrite' permission. Note: To modify job description content, use `descriptionParts.descriptionBody` and set both suppressDescriptionOpening and suppressDescriptionClosing to true.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'jobPostingUpdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateJobPosting", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"jobId\":\"12345\",\"title\":\"Senior Software Engineer\",\"descriptionParts\":{\"descriptionBody\":\"We are looking for a talented engineer to join our team.\",\"suppressDescriptionOpening\":true,\"suppressDescriptionClosing\":true},\"location\":\"Remote\",\"department\":\"Engineering\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateLocationAddress", + "qualifiedName": "AshbyApi.UpdateLocationAddress", + "fullyQualifiedName": "AshbyApi.UpdateLocationAddress@2.0.0", + "description": "Update the address of a location.\n\nThis tool updates the address of a specified location or location hierarchy. It should be called when an address change is needed. Requires organization write permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'locationupdateaddress'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateLocationAddress", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"locationId\": \"1234\", \"address\": {\"street\": \"123 Main St\", \"city\": \"Anytown\", \"state\": \"CA\", \"postalCode\": \"90210\", \"country\": \"USA\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateLocationName", + "qualifiedName": "AshbyApi.UpdateLocationName", + "fullyQualifiedName": "AshbyApi.UpdateLocationName@2.0.0", + "description": "Updates the name of a location.\n\nUse this tool to update the name of a location. Ensure you have the required 'organizationWrite' permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'locationupdateName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateLocationName", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"locationId\":\"12345\",\"newName\":\"New Location Name\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateLocationRemoteStatus", + "qualifiedName": "AshbyApi.UpdateLocationRemoteStatus", + "fullyQualifiedName": "AshbyApi.UpdateLocationRemoteStatus@2.0.0", + "description": "Update the remote status of a specific location.\n\n\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'locationupdateremotestatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateLocationRemoteStatus", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"locationId\":\"12345\",\"status\":\"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOffer", + "qualifiedName": "AshbyApi.UpdateOffer", + "fullyQualifiedName": "AshbyApi.UpdateOffer@2.0.0", + "description": "Update an existing offer and retrigger approval steps.\n\nUse this tool to update an existing offer with new values across various field types like Boolean, Currency, Date, etc. This action will create a new version of the offer and initiate any necessary approval processes.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'offerUpdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateOffer", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"offerId\":\"12345\",\"status\":\"active\",\"discountPercent\":10,\"validUntil\":\"2023-12-31\",\"details\":{\"description\":\"Updated offer details.\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWebhookSettings", + "qualifiedName": "AshbyApi.UpdateWebhookSettings", + "fullyQualifiedName": "AshbyApi.UpdateWebhookSettings@2.0.0", + "description": "Update settings for an existing webhook.\n\nUse this tool to update webhook settings such as enabling/disabling, changing the request URL, or updating the secret token. Requires appropriate permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'webhookupdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateWebhookSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"webhook_id\": \"12345\", \"enabled\": true, \"url\": \"https://example.com/webhook\", \"secret_token\": \"newSecret123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWorkplaceType", + "qualifiedName": "AshbyApi.UpdateWorkplaceType", + "fullyQualifiedName": "AshbyApi.UpdateWorkplaceType@2.0.0", + "description": "Update the workplace type for a specific location.\n\nUse this tool to modify the workplace type of a given location within an organization. This operation requires the `organizationWrite` permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["ASHBY_API_KEY"], + "secretsInfo": [ + { + "name": "ASHBY_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'locationupdateworkplacetype'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "AshbyApi.UpdateWorkplaceType", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"locationId\":\"12345\",\"workplaceType\":\"remote\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:26:51.689Z", + "summary": "AshbyApi enables seamless interactions with the Ashby recruitment platform, allowing LLMs to perform various recruitment tasks efficiently. \n\n## Capabilities\n- Manage candidate profiles, including adding tags and assessments.\n- Facilitate interview scheduling and maintain interview records.\n- Create and update job openings and applications.\n- Archive and restore candidates, jobs, and departments swiftly.\n- Generate and manage reports on recruitment activities.\n\n## Secrets\n- **API Key**: Use the `ASHBY_API_KEY` for authentication.\n\nEnsure to understand the request schema to craft stringified JSON inputs for execution efficiently." +} diff --git a/data/toolkits/boxapi.json b/data/toolkits/boxapi.json new file mode 100644 index 000000000..60321c60f --- /dev/null +++ b/data/toolkits/boxapi.json @@ -0,0 +1,10634 @@ +{ + "id": "BoxApi", + "label": "Box API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the box API.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/box.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/box-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": [] + }, + "tools": [ + { + "name": "AbortUploadSession", + "qualifiedName": "BoxApi.AbortUploadSession", + "fullyQualifiedName": "BoxApi.AbortUploadSession@1.0.0", + "description": "Abort an upload session and discard all uploaded data.\n\nUse this tool to abort an ongoing upload session and discard all uploaded data. This action is irreversible, so it should be called when the user wants to cancel an upload session.", + "parameters": [ + { + "name": "upload_session_id", + "type": "string", + "required": true, + "description": "The unique identifier of the upload session to be aborted. This ID is required to specify which upload session should be cancelled and its data discarded.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_files_upload_sessions_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.AbortUploadSession", + "parameters": { + "upload_session_id": { + "value": "abc123xyz789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelSignRequest", + "qualifiedName": "BoxApi.CancelSignRequest", + "fullyQualifiedName": "BoxApi.CancelSignRequest@1.0.0", + "description": "Cancel an existing sign request to stop further processing.\n\nThis tool cancels a sign request based on the provided sign request ID, preventing any further action on it.", + "parameters": [ + { + "name": "sign_request_id", + "type": "string", + "required": true, + "description": "The unique identifier of the signature request to be cancelled.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post_sign_requests_id_cancel'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.CancelSignRequest", + "parameters": { + "sign_request_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckUserInviteStatus", + "qualifiedName": "BoxApi.CheckUserInviteStatus", + "fullyQualifiedName": "BoxApi.CheckUserInviteStatus@1.0.0", + "description": "Retrieve the status of a specific user invite.\n\nThis tool is used to get the current status of a user invite by its ID.", + "parameters": [ + { + "name": "invite_id", + "type": "string", + "required": true, + "description": "The unique identifier for the user invite you want to check. This ID is necessary to retrieve the invite's status.", + "enum": null, + "inferrable": true + }, + { + "name": "included_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attributes to include in the response. Specify attributes not normally returned in a standard response. Only the mini representation fields are returned unless explicitly specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_invites_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.CheckUserInviteStatus", + "parameters": { + "invite_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "included_attributes": { + "value": ["email", "role", "status"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckZipDownloadStatus", + "qualifiedName": "BoxApi.CheckZipDownloadStatus", + "fullyQualifiedName": "BoxApi.CheckZipDownloadStatus@1.0.0", + "description": "Check the status of a zip archive download.\n\nUse this tool to inspect the download progress of a zip archive, including the number of skipped items. This endpoint should be accessed after the download starts and is available for 12 hours. Follow the `status_url` obtained from the Create zip download API.", + "parameters": [ + { + "name": "zip_archive_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier representing the zip archive for which to check download status. Obtainable from the `status_url` in the Create zip download API.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_zip_downloads_id_status'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.CheckZipDownloadStatus", + "parameters": { + "zip_archive_unique_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAiAgent", + "qualifiedName": "BoxApi.DeleteAiAgent", + "fullyQualifiedName": "BoxApi.DeleteAiAgent@1.0.0", + "description": "Removes an AI agent by its ID.\n\nThis tool is used to delete an AI agent by specifying the agent's ID. It should be called when an AI agent needs to be removed from the system.", + "parameters": [ + { + "name": "agent_id", + "type": "string", + "required": true, + "description": "The unique identifier of the AI agent you want to delete. This ID specifies which agent will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_ai_agents_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteAiAgent", + "parameters": { + "agent_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteArchive", + "qualifiedName": "BoxApi.DeleteArchive", + "fullyQualifiedName": "BoxApi.DeleteArchive@1.0.0", + "description": "Permanently delete an archive by ID.\n\nUse this tool to permanently delete an archive using its unique ID. This action cannot be undone.", + "parameters": [ + { + "name": "archive_id", + "type": "string", + "required": true, + "description": "The unique identifier of the archive to be permanently deleted. This ID is required for the deletion process.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_archives_id_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteArchive", + "parameters": { + "archive_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBoxFileVersion", + "qualifiedName": "BoxApi.DeleteBoxFileVersion", + "fullyQualifiedName": "BoxApi.DeleteBoxFileVersion@1.0.0", + "description": "Delete a specific file version from Box.\n\nUse this tool to move a specific version of a file to the trash on Box. Applicable only for users with premium accounts.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a file in Box. Obtain it from the file's URL in the web app. Example: '123' for URL 'https://*.app.box.com/files/123'.", + "enum": null, + "inferrable": true + }, + { + "name": "file_version_id", + "type": "string", + "required": true, + "description": "The unique identifier of the file version to be deleted. Obtainable from the Box platform.", + "enum": null, + "inferrable": true + }, + { + "name": "if_match_etag_value", + "type": "string", + "required": false, + "description": "Pass the item's last observed etag value to ensure it hasn't changed before deletion. Use this to prevent conflicts.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_files_id_versions_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteBoxFileVersion", + "parameters": { + "file_identifier": { + "value": "456", + "type": "string", + "required": true + }, + "file_version_id": { + "value": "789", + "type": "string", + "required": true + }, + "if_match_etag_value": { + "value": "etag_value_123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBoxHub", + "qualifiedName": "BoxApi.DeleteBoxHub", + "fullyQualifiedName": "BoxApi.DeleteBoxHub@1.0.0", + "description": "Delete a specific Box Hub using its ID.\n\nThis tool is used to delete a specific Box Hub by providing its unique hub ID. It should be called when a user wants to remove a particular hub from the Box service.", + "parameters": [ + { + "name": "box_hub_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for a Box Hub, obtainable from the hub's URL.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_hubs_id_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteBoxHub", + "parameters": { + "box_hub_unique_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBoxHubCollaboration", + "qualifiedName": "BoxApi.DeleteBoxHubCollaboration", + "fullyQualifiedName": "BoxApi.DeleteBoxHubCollaboration@1.0.0", + "description": "Remove a specific Box Hub collaboration.\n\nUse this tool to delete a specific collaboration from a Box Hub by providing the collaboration ID. It should be called when you need to remove a user's collaboration access.", + "parameters": [ + { + "name": "hub_collaboration_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Box Hub collaboration to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_hub_collaborations_id_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteBoxHubCollaboration", + "parameters": { + "hub_collaboration_identifier": { + "value": "12345abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCollaboration", + "qualifiedName": "BoxApi.DeleteCollaboration", + "fullyQualifiedName": "BoxApi.DeleteCollaboration@1.0.0", + "description": "Deletes a specified collaboration by ID.\n\nThis tool is used to delete a collaboration by providing the specific collaboration ID. It should be called when a collaboration needs to be removed from the system.", + "parameters": [ + { + "name": "collaboration_id_to_delete", + "type": "string", + "required": true, + "description": "The unique identifier of the collaboration to be deleted. Provide this ID to remove the specified collaboration.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_collaborations_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteCollaboration", + "parameters": { + "collaboration_id_to_delete": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteComment", + "qualifiedName": "BoxApi.DeleteComment", + "fullyQualifiedName": "BoxApi.DeleteComment@1.0.0", + "description": "Permanently deletes a specific comment by ID.\n\nUse this tool to permanently remove a comment by providing its unique ID. Call this when you need to delete a comment and ensure it's not recoverable.", + "parameters": [ + { + "name": "comment_id", + "type": "string", + "required": true, + "description": "The unique identifier of the comment you want to permanently delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_comments_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteComment", + "parameters": { + "comment_id": { + "value": "12345abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteDevicePin", + "qualifiedName": "BoxApi.DeleteDevicePin", + "fullyQualifiedName": "BoxApi.DeleteDevicePin@1.0.0", + "description": "Delete a specific device pin from the system.\n\nThis tool is used to delete a specified device pin by its unique identifier. It should be called when there is a need to remove a device pin.", + "parameters": [ + { + "name": "device_pin_id", + "type": "string", + "required": true, + "description": "The unique identifier of the device pin to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_device_pinners_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteDevicePin", + "parameters": { + "device_pin_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteFileFromBox", + "qualifiedName": "BoxApi.DeleteFileFromBox", + "fullyQualifiedName": "BoxApi.DeleteFileFromBox@1.0.0", + "description": "Delete a file from Box or move it to trash.\n\nThis tool deletes a file from Box. Depending on enterprise settings, the file is either permanently deleted or moved to the trash. It should be called when a user requests to remove a file from their Box storage.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique ID representing a file in Box. Found in the URL when viewing a file: https://*.app.box.com/files/{file_id}.", + "enum": null, + "inferrable": true + }, + { + "name": "ensure_no_recent_changes_etag", + "type": "string", + "required": false, + "description": "Pass the file's last observed etag value to ensure it hasn't changed before deletion. If the etag has changed, the operation will fail.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_files_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteFileFromBox", + "parameters": { + "file_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "ensure_no_recent_changes_etag": { + "value": "abc123def456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteFileMetadata", + "qualifiedName": "BoxApi.DeleteFileMetadata", + "fullyQualifiedName": "BoxApi.DeleteFileMetadata@1.0.0", + "description": "Deletes metadata from a specified file.\n\nUse this tool to delete a specific piece of metadata from a file by providing the file ID, metadata scope, and template key.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a file, retrievable from the file URL, e.g., `https://*.app.box.com/files/123` where `123` is the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "metadata_scope", + "type": "string", + "required": true, + "description": "Specifies the scope of the metadata template. Choose 'global' or 'enterprise'.", + "enum": null, + "inferrable": true + }, + { + "name": "metadata_template_name", + "type": "string", + "required": true, + "description": "The name of the metadata template to be deleted from the file.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_files_id_metadata_id_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteFileMetadata", + "parameters": { + "file_identifier": { + "value": "123", + "type": "string", + "required": true + }, + "metadata_scope": { + "value": "global", + "type": "string", + "required": true + }, + "metadata_template_name": { + "value": "project_info", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteFileRequest", + "qualifiedName": "BoxApi.DeleteFileRequest", + "fullyQualifiedName": "BoxApi.DeleteFileRequest@1.0.0", + "description": "Permanently delete a specific file request.\n\nUse this tool to permanently delete a file request by its ID.", + "parameters": [ + { + "name": "file_request_identifier", + "type": "string", + "required": true, + "description": "The unique ID representing a file request, extracted from the URL in the file request builder.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_file_requests_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteFileRequest", + "parameters": { + "file_request_identifier": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteFolder", + "qualifiedName": "BoxApi.DeleteFolder", + "fullyQualifiedName": "BoxApi.DeleteFolder@1.0.0", + "description": "Delete a folder permanently or move it to the trash.\n\nUse this tool to remove a folder from Box, either permanently or by sending it to the trash.", + "parameters": [ + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "The unique identifier representing a folder. Determine it by copying the ID from the folder's URL in the Box web application. The root folder ID is '0'.", + "enum": null, + "inferrable": true + }, + { + "name": "ensure_unchanged_etag", + "type": "string", + "required": false, + "description": "Last observed `etag` value to ensure the folder hasn't changed before deletion. If changed, the operation fails with a 412 error.", + "enum": null, + "inferrable": true + }, + { + "name": "delete_recursively", + "type": "boolean", + "required": false, + "description": "Set to true to delete a non-empty folder and all its content recursively.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_folders_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteFolder", + "parameters": { + "folder_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "ensure_unchanged_etag": { + "value": "abcde12345", + "type": "string", + "required": false + }, + "delete_recursively": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteFolderLock", + "qualifiedName": "BoxApi.DeleteFolderLock", + "fullyQualifiedName": "BoxApi.DeleteFolderLock@1.0.0", + "description": "Delete a specific folder lock if you're the owner or co-owner.\n\nUse this tool to delete a lock on a folder you own or co-own, ensuring that only authorized modifications are permitted.", + "parameters": [ + { + "name": "folder_lock_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the folder lock to be deleted. You must be the owner or co-owner of the folder.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_folder_locks_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteFolderLock", + "parameters": { + "folder_lock_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteFolderMetadata", + "qualifiedName": "BoxApi.DeleteFolderMetadata", + "fullyQualifiedName": "BoxApi.DeleteFolderMetadata@1.0.0", + "description": "Deletes metadata from a specified folder.\n\nUse this tool to remove a specific piece of metadata from a folder by providing the folder ID, scope, and template key.", + "parameters": [ + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a folder. Obtainable from the folder URL; use '0' for the root folder.", + "enum": null, + "inferrable": true + }, + { + "name": "metadata_template_scope", + "type": "string", + "required": true, + "description": "The scope of the metadata template. Choose either 'global' or 'enterprise'.", + "enum": null, + "inferrable": true + }, + { + "name": "metadata_template_name", + "type": "string", + "required": true, + "description": "The name of the metadata template to be deleted from the folder.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_folders_id_metadata_id_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteFolderMetadata", + "parameters": { + "folder_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "metadata_template_scope": { + "value": "global", + "type": "string", + "required": true + }, + "metadata_template_name": { + "value": "ProjectDetails", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGroup", + "qualifiedName": "BoxApi.DeleteGroup", + "fullyQualifiedName": "BoxApi.DeleteGroup@1.0.0", + "description": "Permanently delete a group with admin permissions.\n\nThis tool is used to permanently delete a specified group. Only users with admin-level permissions are able to perform this action.", + "parameters": [ + { + "name": "group_id", + "type": "string", + "required": true, + "description": "The unique identifier of the group to be permanently deleted. Must be used by an admin.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_groups_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteGroup", + "parameters": { + "group_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGroupMembership", + "qualifiedName": "BoxApi.DeleteGroupMembership", + "fullyQualifiedName": "BoxApi.DeleteGroupMembership@1.0.0", + "description": "Delete a specific group membership by ID.\n\nThis tool deletes a group membership identified by its ID. It should be used by group admins or users with admin-level permissions to remove a member from a group.", + "parameters": [ + { + "name": "group_membership_id", + "type": "string", + "required": true, + "description": "The unique identifier for the group membership to be deleted. Required for specifying which membership to remove.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_group_memberships_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteGroupMembership", + "parameters": { + "group_membership_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteLegalHoldPolicy", + "qualifiedName": "BoxApi.DeleteLegalHoldPolicy", + "fullyQualifiedName": "BoxApi.DeleteLegalHoldPolicy@1.0.0", + "description": "Initiate deletion of a legal hold policy.\n\nUse this tool to start the process of deleting an existing legal hold policy. The deletion is asynchronous, meaning the policy won't be fully deleted when the response is received.", + "parameters": [ + { + "name": "legal_hold_policy_id", + "type": "string", + "required": true, + "description": "The ID of the legal hold policy to delete. This is necessary to identify and initiate the deletion of the specified policy.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_legal_hold_policies_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteLegalHoldPolicy", + "parameters": { + "legal_hold_policy_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMetadataCascadePolicy", + "qualifiedName": "BoxApi.DeleteMetadataCascadePolicy", + "fullyQualifiedName": "BoxApi.DeleteMetadataCascadePolicy@1.0.0", + "description": "Deletes a metadata cascade policy by ID.\n\nThis tool deletes a specified metadata cascade policy using its unique ID. It should be called when you need to remove a cascade policy from your metadata handling.", + "parameters": [ + { + "name": "metadata_cascade_policy_id", + "type": "string", + "required": true, + "description": "The unique ID of the metadata cascade policy to be deleted. Ensure it is valid and exists.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_metadata_cascade_policies_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteMetadataCascadePolicy", + "parameters": { + "metadata_cascade_policy_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMetadataTemplate", + "qualifiedName": "BoxApi.DeleteMetadataTemplate", + "fullyQualifiedName": "BoxApi.DeleteMetadataTemplate@1.0.0", + "description": "Permanently delete a metadata template and its instances.\n\nUse this tool to permanently delete a metadata template and all its instances. This action is irreversible and should be used with caution.", + "parameters": [ + { + "name": "metadata_template_scope", + "type": "string", + "required": true, + "description": "Specifies the scope of the metadata template. Allowed values are 'global' or 'enterprise'.", + "enum": null, + "inferrable": true + }, + { + "name": "metadata_template_name", + "type": "string", + "required": true, + "description": "The name of the metadata template to be permanently deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_metadata_templates_id_id_schema'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteMetadataTemplate", + "parameters": { + "metadata_template_scope": { + "value": "enterprise", + "type": "string", + "required": true + }, + "metadata_template_name": { + "value": "Project_Template", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteRetentionPolicy", + "qualifiedName": "BoxApi.DeleteRetentionPolicy", + "fullyQualifiedName": "BoxApi.DeleteRetentionPolicy@1.0.0", + "description": "Permanently deletes a specified retention policy.\n\nUse this tool to permanently delete a retention policy by its ID. It should be called when there is a need to remove a retention policy completely.", + "parameters": [ + { + "name": "retention_policy_id", + "type": "string", + "required": true, + "description": "The unique identifier of the retention policy to be permanently deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_retention_policies_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteRetentionPolicy", + "parameters": { + "retention_policy_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteShieldBarrierSegmentRestriction", + "qualifiedName": "BoxApi.DeleteShieldBarrierSegmentRestriction", + "fullyQualifiedName": "BoxApi.DeleteShieldBarrierSegmentRestriction@1.0.0", + "description": "Delete a specific shield barrier segment restriction by ID.", + "parameters": [ + { + "name": "barrier_segment_restriction_id", + "type": "string", + "required": true, + "description": "The ID of the shield information barrier segment restriction to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_shield_information_barrier_segment_restrictions_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteShieldBarrierSegmentRestriction", + "parameters": { + "barrier_segment_restriction_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteShieldInformationBarrierSegment", + "qualifiedName": "BoxApi.DeleteShieldInformationBarrierSegment", + "fullyQualifiedName": "BoxApi.DeleteShieldInformationBarrierSegment@1.0.0", + "description": "Delete a shield information barrier segment by ID.\n\nUse this tool to delete a specific shield information barrier segment by providing its ID.", + "parameters": [ + { + "name": "shield_information_barrier_segment_id", + "type": "string", + "required": true, + "description": "The ID of the shield information barrier segment to delete. This should be a valid string representing the segment's unique identifier.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_shield_information_barrier_segments_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteShieldInformationBarrierSegment", + "parameters": { + "shield_information_barrier_segment_id": { + "value": "seg-12345-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteShieldListById", + "qualifiedName": "BoxApi.DeleteShieldListById", + "fullyQualifiedName": "BoxApi.DeleteShieldListById@1.0.0", + "description": "Delete a shield list using its ID.\n\nUse this tool to delete a specific shield list by providing its ID. Ideal for managing and updating list configurations when a list is no longer needed.", + "parameters": [ + { + "name": "shield_list_id", + "type": "string", + "required": true, + "description": "The unique identifier for the shield list to be deleted. Obtainable from the response of fetching all shield lists for the enterprise.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_shield_lists_id_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteShieldListById", + "parameters": { + "shield_list_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteSlackIntegrationMapping", + "qualifiedName": "BoxApi.DeleteSlackIntegrationMapping", + "fullyQualifiedName": "BoxApi.DeleteSlackIntegrationMapping@1.0.0", + "description": "Deletes a Slack integration mapping for Box content.\n\nThis tool deletes a specified Slack integration mapping in Box. It requires admin or co-admin permissions. Use it when a Slack integration mapping needs to be removed.", + "parameters": [ + { + "name": "slack_integration_mapping_id", + "type": "string", + "required": true, + "description": "The ID of the Slack integration mapping to be deleted. This requires Admin or Co-Admin permission.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_integration_mappings_slack_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteSlackIntegrationMapping", + "parameters": { + "slack_integration_mapping_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteStoragePolicyAssignment", + "qualifiedName": "BoxApi.DeleteStoragePolicyAssignment", + "fullyQualifiedName": "BoxApi.DeleteStoragePolicyAssignment@1.0.0", + "description": "Delete a user's storage policy assignment.\n\nUse this tool to delete a storage policy assignment for a user. After deletion, the user will inherit the enterprise's default storage policy. Note the rate limit of two deletions per user within 24 hours.", + "parameters": [ + { + "name": "storage_policy_assignment_id", + "type": "string", + "required": true, + "description": "The ID of the storage policy assignment to delete. This is required and identifies which assignment to delete, reverting the user to the default policy.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_storage_policy_assignments_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteStoragePolicyAssignment", + "parameters": { + "storage_policy_assignment_id": { + "value": "SP123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTaskAssignment", + "qualifiedName": "BoxApi.DeleteTaskAssignment", + "fullyQualifiedName": "BoxApi.DeleteTaskAssignment@1.0.0", + "description": "Delete a specific task assignment.\n\nUse this tool to remove a specific task assignment by its ID. It confirms the deletion upon successful completion.", + "parameters": [ + { + "name": "task_assignment_id", + "type": "string", + "required": true, + "description": "The unique identifier of the task assignment to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_task_assignments_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteTaskAssignment", + "parameters": { + "task_assignment_id": { + "value": "12345-67890-abcde-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTaskFromFile", + "qualifiedName": "BoxApi.DeleteTaskFromFile", + "fullyQualifiedName": "BoxApi.DeleteTaskFromFile@1.0.0", + "description": "Removes a specific task from a file.\n\nUse this tool to delete a specific task from a file by providing the task ID. It is useful when tasks need to be removed as part of file management.", + "parameters": [ + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the task to be removed from the file.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_tasks_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteTaskFromFile", + "parameters": { + "task_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTeamsIntegrationMapping", + "qualifiedName": "BoxApi.DeleteTeamsIntegrationMapping", + "fullyQualifiedName": "BoxApi.DeleteTeamsIntegrationMapping@1.0.0", + "description": "Deletes a Teams integration mapping in Box.\n\nUse this tool to delete a Teams integration mapping in Box. Admin or Co-Admin roles are required to perform this action.", + "parameters": [ + { + "name": "integration_mapping_identifier", + "type": "string", + "required": true, + "description": "The ID of the Teams integration mapping to be deleted. Required for identifying the specific mapping.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_integration_mappings_teams_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteTeamsIntegrationMapping", + "parameters": { + "integration_mapping_identifier": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteUserAccount", + "qualifiedName": "BoxApi.DeleteUserAccount", + "fullyQualifiedName": "BoxApi.DeleteUserAccount@1.0.0", + "description": "Delete a user account from the system.\n\nUse this tool to delete a user account. Ensure the user does not own content, or use the 'force' option to remove the user along with their files.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier for the user to be deleted. Required for specifying which user account to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "send_deletion_notification", + "type": "boolean", + "required": false, + "description": "Indicate whether the user should receive an email notification about the deletion. Set to true to send notification.", + "enum": null, + "inferrable": true + }, + { + "name": "force_delete_user", + "type": "boolean", + "required": false, + "description": "Set to true to delete the user and their files even if they still own content.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_users_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteUserAccount", + "parameters": { + "user_id": { + "value": "123456", + "type": "string", + "required": true + }, + "send_deletion_notification": { + "value": true, + "type": "boolean", + "required": false + }, + "force_delete_user": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteWebhook", + "qualifiedName": "BoxApi.DeleteWebhook", + "fullyQualifiedName": "BoxApi.DeleteWebhook@1.0.0", + "description": "Delete a specified webhook.\n\nThis tool deletes a webhook when provided with its unique identifier. Use it to manage and remove webhooks that are no longer needed.", + "parameters": [ + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The unique identifier of the webhook to be deleted. It must be a valid string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_webhooks_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteWebhook", + "parameters": { + "webhook_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteWebLink", + "qualifiedName": "BoxApi.DeleteWebLink", + "fullyQualifiedName": "BoxApi.DeleteWebLink@1.0.0", + "description": "Delete a specified web link based on its ID.", + "parameters": [ + { + "name": "web_link_id", + "type": "string", + "required": true, + "description": "The unique identifier for the web link to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_web_links_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DeleteWebLink", + "parameters": { + "web_link_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DownloadFileContent", + "qualifiedName": "BoxApi.DownloadFileContent", + "fullyQualifiedName": "BoxApi.DownloadFileContent@1.0.0", + "description": "Retrieve the binary content of a specified file.\n\nThis tool is used to download the contents of a file from a given file ID. It should be called when access to the file data in binary format is required.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the file to download. Obtainable from the file's URL in the web application.", + "enum": null, + "inferrable": true + }, + { + "name": "file_version_to_download", + "type": "string", + "required": false, + "description": "The specific version of the file to retrieve in binary format.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_access_token", + "type": "string", + "required": false, + "description": "A string for an optional access token to pre-authenticate the file download request. Ensure it's scoped for read access only.", + "enum": null, + "inferrable": true + }, + { + "name": "download_byte_range", + "type": "string", + "required": false, + "description": "Specify the byte range for the content to download in the format `bytes={start_byte}-{end_byte}` to define which section of the file to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "shared_link_with_optional_password", + "type": "string", + "required": false, + "description": "Provide the shared link URL of the item. Include a password if required, using the format `shared_link=[link]` or `shared_link=[link]&shared_link_password=[password]`. This allows access to files not explicitly shared with the user.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id_content'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DownloadFileContent", + "parameters": { + "file_identifier": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "file_version_to_download": { + "value": "v2.0", + "type": "string", + "required": false + }, + "optional_access_token": { + "value": "abc123tokenxyz", + "type": "string", + "required": false + }, + "download_byte_range": { + "value": "bytes=0-1023", + "type": "string", + "required": false + }, + "shared_link_with_optional_password": { + "value": "shared_link=https://example.com/shared/file/link&shared_link_password=securePassword123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DownloadZipContent", + "qualifiedName": "BoxApi.DownloadZipContent", + "fullyQualifiedName": "BoxApi.DownloadZipContent@1.0.0", + "description": "Download the contents of a zip archive.\n\nThis tool retrieves the contents of a zip archive from a specified URL, which is valid for a short time. It's useful for downloading the archive to a device, but remember that once a download starts, it cannot be paused or resumed. A new request must be created for a fresh URL.", + "parameters": [ + { + "name": "zip_archive_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the zip archive to be downloaded. This ID must be obtained from the 'Create zip download' API response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_zip_downloads_id_content'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.DownloadZipContent", + "parameters": { + "zip_archive_unique_id": { + "value": "abc12345xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchBoxSignTemplateDetails", + "qualifiedName": "BoxApi.FetchBoxSignTemplateDetails", + "fullyQualifiedName": "BoxApi.FetchBoxSignTemplateDetails@1.0.0", + "description": "Retrieve details of a specific Box Sign template.\n\nThis tool is used to fetch information about a specific Box Sign template by its ID. It should be called when users need to access detailed information about a sign template in Box.", + "parameters": [ + { + "name": "box_sign_template_id", + "type": "string", + "required": true, + "description": "The unique identifier for a Box Sign template to retrieve its details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_sign_templates_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.FetchBoxSignTemplateDetails", + "parameters": { + "box_sign_template_id": { + "value": "template_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchCommentDetails", + "qualifiedName": "BoxApi.FetchCommentDetails", + "fullyQualifiedName": "BoxApi.FetchCommentDetails@1.0.0", + "description": "Retrieve detailed information about a specific comment.\n\nThis tool fetches the message, metadata, and creator information for a specified comment ID. It should be used when detailed comment insights are needed.", + "parameters": [ + { + "name": "comment_id", + "type": "string", + "required": true, + "description": "The unique identifier for the comment whose details are being fetched. This ID is required to retrieve the comment's message, metadata, and creator information.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attributes to include in the response. Only specified fields will be returned along with the mini representation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_comments_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.FetchCommentDetails", + "parameters": { + "comment_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "include_fields": { + "value": ["message", "created_at", "creator_id"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchEnterpriseStoragePolicies", + "qualifiedName": "BoxApi.FetchEnterpriseStoragePolicies", + "fullyQualifiedName": "BoxApi.FetchEnterpriseStoragePolicies@1.0.0", + "description": "Fetches all storage policies in the enterprise.\n\nUse this tool to retrieve a complete list of storage policies available within an enterprise.", + "parameters": [ + { + "name": "include_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of attribute names to include in the response. Specify attributes not normally returned in a standard response. Only mini representation fields and requested attributes will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "Defines the starting position for returning results using marker-based pagination. Requires `usemarker` to be `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of storage policy items to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_storage_policies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.FetchEnterpriseStoragePolicies", + "parameters": { + "include_attributes": { + "value": ["policy_name", "description", "storage_type"], + "type": "array", + "required": false + }, + "pagination_marker": { + "value": "abc123", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchMetadataTemplateById", + "qualifiedName": "BoxApi.FetchMetadataTemplateById", + "fullyQualifiedName": "BoxApi.FetchMetadataTemplateById@1.0.0", + "description": "Retrieve a metadata template using its ID.\n\nUse this tool to get detailed information about a specific metadata template by providing its ID.", + "parameters": [ + { + "name": "template_id", + "type": "string", + "required": true, + "description": "The unique identifier for the metadata template to be retrieved. Provide a valid template ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_metadata_templates_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.FetchMetadataTemplateById", + "parameters": { + "template_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchSafeCollaborationDomain", + "qualifiedName": "BoxApi.FetchSafeCollaborationDomain", + "fullyQualifiedName": "BoxApi.FetchSafeCollaborationDomain@1.0.0", + "description": "Retrieve a designated safe collaboration domain within an enterprise.\n\nThis tool is used to obtain information about a domain that has been marked as safe for creating collaborations within the current enterprise. It should be called when there is a need to verify if a domain can be trusted for collaboration purposes.", + "parameters": [ + { + "name": "collaboration_whitelist_entry_id", + "type": "string", + "required": true, + "description": "The ID of the trusted domain entry in the whitelist. Provide this to retrieve its details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_collaboration_whitelist_entries_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.FetchSafeCollaborationDomain", + "parameters": { + "collaboration_whitelist_entry_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchShieldBarrierReport", + "qualifiedName": "BoxApi.FetchShieldBarrierReport", + "fullyQualifiedName": "BoxApi.FetchShieldBarrierReport@1.0.0", + "description": "Retrieve details of a shield information barrier report by ID.\n\nUse this tool to get information about a specific shield information barrier report by providing its unique ID.", + "parameters": [ + { + "name": "shield_barrier_report_id", + "type": "string", + "required": true, + "description": "The unique ID of the shield information barrier report to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shield_information_barrier_reports_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.FetchShieldBarrierReport", + "parameters": { + "shield_barrier_report_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchSignatureRequests", + "qualifiedName": "BoxApi.FetchSignatureRequests", + "fullyQualifiedName": "BoxApi.FetchSignatureRequests@1.0.0", + "description": "Retrieve signature requests created by a user.\n\nFetches a list of signature requests that have been created by a user. Signature requests won't be listed if their associated files or parent folder are deleted.", + "parameters": [ + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "Defines the starting point for returning results, used for marker-based pagination. Requires use_marker to be true.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of signature requests to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "sender_email_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of sender emails to filter the signature requests by sender. `shared_requests` must be `true` if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "include_shared_requests", + "type": "boolean", + "required": false, + "description": "Set to true to include signature requests where the user is a collaborator but not the owner. Must be true if sender emails are provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_sign_requests'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.FetchSignatureRequests", + "parameters": { + "pagination_marker": { + "value": "xyz123", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 30, + "type": "integer", + "required": false + }, + "sender_email_list": { + "value": ["user1@example.com", "user2@example.com"], + "type": "array", + "required": false + }, + "include_shared_requests": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchStoragePolicy", + "qualifiedName": "BoxApi.FetchStoragePolicy", + "fullyQualifiedName": "BoxApi.FetchStoragePolicy@1.0.0", + "description": "Retrieve details of a specific storage policy.\n\nUse this tool to fetch information about a particular storage policy using its ID. It is useful when you need to view or verify details of a storage policy by its unique identifier.", + "parameters": [ + { + "name": "storage_policy_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the storage policy to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_storage_policies_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.FetchStoragePolicy", + "parameters": { + "storage_policy_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchStoragePolicyAssignment", + "qualifiedName": "BoxApi.FetchStoragePolicyAssignment", + "fullyQualifiedName": "BoxApi.FetchStoragePolicyAssignment@1.0.0", + "description": "Retrieve a storage policy assignment by ID.\n\nThis tool is used to fetch detailed information about a specific storage policy assignment using its unique ID. Call this tool when you need to get details about a particular storage policy assignment in the Box storage system.", + "parameters": [ + { + "name": "storage_policy_assignment_id", + "type": "string", + "required": true, + "description": "The unique identifier of the storage policy assignment to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_storage_policy_assignments_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.FetchStoragePolicyAssignment", + "parameters": { + "storage_policy_assignment_id": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchStoragePolicyAssignments", + "qualifiedName": "BoxApi.FetchStoragePolicyAssignments", + "fullyQualifiedName": "BoxApi.FetchStoragePolicyAssignments@1.0.0", + "description": "Retrieve storage policy assignments for enterprise or user.\n\nUse this tool to fetch all storage policy assignments associated with a specific enterprise or user, providing insights into storage management configurations.", + "parameters": [ + { + "name": "target_type_for_assignments", + "type": "string", + "required": true, + "description": "Specifies whether to return storage policy assignments for a 'user' or 'enterprise'.", + "enum": null, + "inferrable": true + }, + { + "name": "target_user_or_enterprise_id", + "type": "string", + "required": true, + "description": "The ID of the user or enterprise to fetch storage policy assignments for.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "Defines the position marker to start returning results for pagination. Requires 'usemarker' to be true.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_storage_policy_assignments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.FetchStoragePolicyAssignments", + "parameters": { + "target_type_for_assignments": { + "value": "user", + "type": "string", + "required": true + }, + "target_user_or_enterprise_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "pagination_marker": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FindMetadataTemplate", + "qualifiedName": "BoxApi.FindMetadataTemplate", + "fullyQualifiedName": "BoxApi.FindMetadataTemplate@1.0.0", + "description": "Retrieve metadata template details by ID.\n\nUse this tool to find and retrieve details of a metadata template by searching for the ID of a template instance.", + "parameters": [ + { + "name": "metadata_instance_id", + "type": "string", + "required": true, + "description": "The ID of the metadata template instance to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_position_marker", + "type": "string", + "required": false, + "description": "Defines the starting position for marker-based pagination results. Requires `usemarker` to be `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "items_per_page_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of items to return per page for pagination purposes.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_metadata_templates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.FindMetadataTemplate", + "parameters": { + "metadata_instance_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "pagination_position_marker": { + "value": "token123", + "type": "string", + "required": false + }, + "items_per_page_limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAiAgentDefaultConfig", + "qualifiedName": "BoxApi.GetAiAgentDefaultConfig", + "fullyQualifiedName": "BoxApi.GetAiAgentDefaultConfig@1.0.0", + "description": "Retrieve the default configuration for the AI agent.\n\nCall this tool to get the default settings and configurations for the AI agent. Useful for understanding the baseline setup or preparing to customize AI agent parameters.", + "parameters": [ + { + "name": "filter_mode", + "type": "string", + "required": true, + "description": "Specifies the mode to filter and return the agent configuration. Options: 'ask', 'text_gen', 'extract', 'extract_structured'.", + "enum": null, + "inferrable": true + }, + { + "name": "agent_config_language_code", + "type": "string", + "required": false, + "description": "The ISO language code to specify the language for the AI agent configuration. Default is returned if unsupported.", + "enum": null, + "inferrable": true + }, + { + "name": "model_identifier", + "type": "string", + "required": false, + "description": "Specify the model name to retrieve the default agent configuration. Ensure it matches the supported model names.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_ai_agent_default'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetAiAgentDefaultConfig", + "parameters": { + "filter_mode": { + "value": "text_gen", + "type": "string", + "required": true + }, + "agent_config_language_code": { + "value": "en-US", + "type": "string", + "required": false + }, + "model_identifier": { + "value": "gpt-4", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAiAgentDetails", + "qualifiedName": "BoxApi.GetAiAgentDetails", + "fullyQualifiedName": "BoxApi.GetAiAgentDetails@1.0.0", + "description": "Retrieve details of a specific AI agent by ID.\n\nCall this tool to get detailed information about a specific AI agent using their unique agent ID.", + "parameters": [ + { + "name": "agent_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the AI agent to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of specific fields to return in the response for the AI agent details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_ai_agents_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetAiAgentDetails", + "parameters": { + "agent_unique_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "fields_to_return": { + "value": ["name", "description", "status"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAuthenticatedUserInfo", + "qualifiedName": "BoxApi.GetAuthenticatedUserInfo", + "fullyQualifiedName": "BoxApi.GetAuthenticatedUserInfo@1.0.0", + "description": "Retrieve details of the currently authenticated user.\n\nThis tool retrieves information about the user who is currently authenticated via OAuth 2.0 or JWT. It can also be used with the `As-User` header to retrieve information on behalf of another user.", + "parameters": [ + { + "name": "requested_user_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of user attributes to include in the response. Use to request non-standard fields, results in basic fields only unless specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_users_me'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetAuthenticatedUserInfo", + "parameters": { + "requested_user_attributes": { + "value": ["name", "email", "role", "created_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoxDocgenJobDetails", + "qualifiedName": "BoxApi.GetBoxDocgenJobDetails", + "fullyQualifiedName": "BoxApi.GetBoxDocgenJobDetails@1.0.0", + "description": "Retrieve details of a Box Doc Gen job using its ID.\n\nThis tool fetches detailed information about a specific Box Doc Gen job, identified by its job ID. It should be called when details about a particular document generation task in Box are needed.", + "parameters": [ + { + "name": "box_doc_gen_job_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Box Doc Gen job you want details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_docgen_jobs_id_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetBoxDocgenJobDetails", + "parameters": { + "box_doc_gen_job_id": { + "value": "job_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoxDocgenTemplateDetails", + "qualifiedName": "BoxApi.GetBoxDocgenTemplateDetails", + "fullyQualifiedName": "BoxApi.GetBoxDocgenTemplateDetails@1.0.0", + "description": "Fetch details of a specific Box Doc Gen template.\n\nCall this tool to retrieve detailed information about a specific template from Box Doc Gen using its template ID.", + "parameters": [ + { + "name": "box_docgen_template_id", + "type": "string", + "required": true, + "description": "The ID of the Box Doc Gen template to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_docgen_templates_id_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetBoxDocgenTemplateDetails", + "parameters": { + "box_docgen_template_id": { + "value": "template_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoxEvents", + "qualifiedName": "BoxApi.GetBoxEvents", + "fullyQualifiedName": "BoxApi.GetBoxEvents@1.0.0", + "description": "Retrieve up to a year of past events for a user or enterprise.\n\nFetches past events for a specific user by default, or for the entire enterprise if the stream type is set. Requires admin privileges and appropriate application scope for enterprise events.", + "parameters": [ + { + "name": "event_stream_type", + "type": "string", + "required": false, + "description": "Specifies the category of events to retrieve. Options: 'all' for all user events, 'changes' for file updates, 'sync' for synced folders, 'admin_logs' for full enterprise events (requires admin), and 'admin_logs_streaming' for live enterprise events (requires admin).", + "enum": null, + "inferrable": true + }, + { + "name": "event_stream_start_position", + "type": "string", + "required": false, + "description": "Specifies where to start receiving events in the stream. Use 'now' for initialization or '0' to retrieve all events.", + "enum": null, + "inferrable": true + }, + { + "name": "event_limit", + "type": "integer", + "required": false, + "description": "The maximum number of events to retrieve. Fewer events may be returned if already available.", + "enum": null, + "inferrable": true + }, + { + "name": "event_type_filter", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of event types to filter by. Only applicable for 'admin_logs' or 'admin_logs_streaming' stream types.", + "enum": null, + "inferrable": true + }, + { + "name": "event_start_date", + "type": "string", + "required": false, + "description": "The start date and time for filtering events. Used only with 'admin_logs' stream type.", + "enum": null, + "inferrable": true + }, + { + "name": "event_time_upper_bound", + "type": "string", + "required": false, + "description": "The upper bound date and time for returning events, used only with 'admin_logs' stream type. Ignored for other stream types.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_events'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetBoxEvents", + "parameters": { + "event_stream_type": { + "value": "admin_logs", + "type": "string", + "required": false + }, + "event_stream_start_position": { + "value": "now", + "type": "string", + "required": false + }, + "event_limit": { + "value": 100, + "type": "integer", + "required": false + }, + "event_type_filter": { + "value": ["file.upload", "file.delete"], + "type": "array", + "required": false + }, + "event_start_date": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "event_time_upper_bound": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoxHubCollaborationDetails", + "qualifiedName": "BoxApi.GetBoxHubCollaborationDetails", + "fullyQualifiedName": "BoxApi.GetBoxHubCollaborationDetails@1.0.0", + "description": "Retrieve details for a Box Hub collaboration by ID.\n\nUse this tool to obtain information about a specific Box Hub collaboration by providing the collaboration ID.", + "parameters": [ + { + "name": "hub_collaboration_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific Box Hub collaboration you want to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_hub_collaborations_id_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetBoxHubCollaborationDetails", + "parameters": { + "hub_collaboration_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoxHubs", + "qualifiedName": "BoxApi.GetBoxHubs", + "fullyQualifiedName": "BoxApi.GetBoxHubs@1.0.0", + "description": "Retrieve all Box Hubs for the user.\n\nThis tool retrieves all the Box Hubs associated with the requesting user. It should be called when there's a need to list or display the user's Box Hubs.", + "parameters": [ + { + "name": "hub_search_query", + "type": "string", + "required": false, + "description": "The string to search for specific Box Hubs. Use keywords to refine search results.", + "enum": null, + "inferrable": true + }, + { + "name": "hub_scope", + "type": "string", + "required": false, + "description": "Specifies which Box Hubs to retrieve. Options: `editable`, `view_only`, `all`. Default is `all`.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_by", + "type": "string", + "required": false, + "description": "Field to sort Box Hubs by: `name`, `updated_at`, `last_accessed_at`, `view_count`, `relevance` (default: `relevance`).", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specify the sort order: 'ASC' for ascending or 'DESC' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Defines the position marker to begin returning results, used for marker-based pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of Box Hubs to return per page. Use for pagination control.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_hubs_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetBoxHubs", + "parameters": { + "hub_search_query": { + "value": "project", + "type": "string", + "required": false + }, + "hub_scope": { + "value": "editable", + "type": "string", + "required": false + }, + "sort_results_by": { + "value": "name", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "ASC", + "type": "string", + "required": false + }, + "pagination_start_marker": { + "value": "abc123", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoxSignTemplates", + "qualifiedName": "BoxApi.GetBoxSignTemplates", + "fullyQualifiedName": "BoxApi.GetBoxSignTemplates@1.0.0", + "description": "Retrieve Box Sign templates created by a user.\n\nCall this tool to get a list of all Box Sign templates that have been created by a specific user.", + "parameters": [ + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "The starting position marker for result pagination. Requires `usemarker` to be set to `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of templates to return in a single response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_sign_templates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetBoxSignTemplates", + "parameters": { + "pagination_marker": { + "value": "abc123", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoxSkillsMetadata", + "qualifiedName": "BoxApi.GetBoxSkillsMetadata", + "fullyQualifiedName": "BoxApi.GetBoxSkillsMetadata@1.0.0", + "description": "Retrieve Box Skills metadata cards for a given file.\n\nThis tool is used to list the Box Skills metadata cards that are attached to a specific file in Box. It should be called when you need to obtain metadata information about the skills applied to a file.", + "parameters": [ + { + "name": "file_id", + "type": "string", + "required": true, + "description": "The unique identifier for the file in Box. Obtainable from the file's URL in the Box web app.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id_metadata_global_boxSkillsCards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetBoxSkillsMetadata", + "parameters": { + "file_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetClassificationMetadata", + "qualifiedName": "BoxApi.GetClassificationMetadata", + "fullyQualifiedName": "BoxApi.GetClassificationMetadata@1.0.0", + "description": "Retrieve classification metadata template for the enterprise.\n\nThis tool retrieves classification metadata templates and lists all classifications available to a specified enterprise. It can be used to understand the security classification options within the enterprise.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_metadata_templates_enterprise_securityClassification-6VMVochwUWo_schema'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetClassificationMetadata", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCollaborationDetails", + "qualifiedName": "BoxApi.GetCollaborationDetails", + "fullyQualifiedName": "BoxApi.GetCollaborationDetails@1.0.0", + "description": "Retrieve details of a specific collaboration.\n\nUse this tool to obtain information about a specific collaboration by its ID.", + "parameters": [ + { + "name": "collaboration_id", + "type": "string", + "required": true, + "description": "The unique identifier for the collaboration to retrieve details about.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of specific attributes to include in the response, which are not typically returned. Specify explicitly to retrieve these fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_collaborations_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetCollaborationDetails", + "parameters": { + "collaboration_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "include_fields": { + "value": ["role", "status", "created_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCollaborationWhitelistExemptUser", + "qualifiedName": "BoxApi.GetCollaborationWhitelistExemptUser", + "fullyQualifiedName": "BoxApi.GetCollaborationWhitelistExemptUser@1.0.0", + "description": "Retrieve user exempt from collaboration restrictions.\n\nThis tool retrieves information about a user who is exempt from collaboration domain restrictions. It should be called when there is a need to identify such exempt users.", + "parameters": [ + { + "name": "exemption_target_id", + "type": "string", + "required": true, + "description": "The ID of the user who is exempt from collaboration domain restrictions. This ID is required to retrieve specific user details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_collaboration_whitelist_exempt_targets_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetCollaborationWhitelistExemptUser", + "parameters": { + "exemption_target_id": { + "value": "user_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCollaborationWhitelistExemptUsers", + "qualifiedName": "BoxApi.GetCollaborationWhitelistExemptUsers", + "fullyQualifiedName": "BoxApi.GetCollaborationWhitelistExemptUsers@1.0.0", + "description": "Retrieve users exempt from collaboration restrictions.\n\nUse this tool to obtain a list of users who are not restricted by collaboration domain rules. It provides a quick way to identify exempt users.", + "parameters": [ + { + "name": "pagination_position_marker", + "type": "string", + "required": false, + "description": "Start position for returning results. Used for marker-based pagination. Requires `usemarker` set to `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of users to return per page. Controls pagination size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_collaboration_whitelist_exempt_targets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetCollaborationWhitelistExemptUsers", + "parameters": { + "pagination_position_marker": { + "value": "abc123", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDevicePinInfo", + "qualifiedName": "BoxApi.GetDevicePinInfo", + "fullyQualifiedName": "BoxApi.GetDevicePinInfo@1.0.0", + "description": "Retrieve details of a specific device pin.\n\nThis tool fetches information about a specific device pin by its identifier. It should be called when detailed information about a particular device pin is needed.", + "parameters": [ + { + "name": "device_pin_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the device pin to retrieve information about.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_device_pinners_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetDevicePinInfo", + "parameters": { + "device_pin_identifier": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEnterpriseBoxHubs", + "qualifiedName": "BoxApi.GetEnterpriseBoxHubs", + "fullyQualifiedName": "BoxApi.GetEnterpriseBoxHubs@1.0.0", + "description": "Retrieve Box Hubs for an enterprise.\n\nThis tool retrieves all Box Hubs for a specified enterprise. It should be used by admins or Hub Co-admins with GCM scope to get information about the enterprise's Box Hubs.", + "parameters": [ + { + "name": "search_query_for_box_hubs", + "type": "string", + "required": false, + "description": "The search query string to find specific Box Hubs within an enterprise.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_by", + "type": "string", + "required": false, + "description": "The field to sort the Box Hubs by. Options: 'name', 'updated_at', 'last_accessed_at', 'view_count', 'relevance'. Default is 'relevance'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The direction to sort results: alphabetical ascending ('ASC') or descending ('DESC').", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "The starting position marker for returning results, used in marker-based pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of Box Hubs to return per page. This controls the page size for the result set.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_enterprise_hubs_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetEnterpriseBoxHubs", + "parameters": { + "search_query_for_box_hubs": { + "value": "Marketing Team", + "type": "string", + "required": false + }, + "sort_results_by": { + "value": "name", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "ASC", + "type": "string", + "required": false + }, + "pagination_marker": { + "value": "abc123", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEnterpriseDevicePins", + "qualifiedName": "BoxApi.GetEnterpriseDevicePins", + "fullyQualifiedName": "BoxApi.GetEnterpriseDevicePins@1.0.0", + "description": "Retrieve all device pins for a specific enterprise.\n\nThis tool should be used to retrieve all device pins within a specified enterprise. It requires admin privileges and the application needs the 'manage enterprise' scope to access the data.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "The unique identifier for the enterprise whose device pins are to be retrieved. This is a mandatory field.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Defines the starting position for paginated results. Requires 'usemarker' to be true.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of device pins to retrieve per page.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The direction to sort results: alphabetical ascending ('ASC') or descending ('DESC').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_enterprises_id_device_pinners'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetEnterpriseDevicePins", + "parameters": { + "enterprise_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "pagination_start_marker": { + "value": "marker123", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "ASC", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEnterpriseRetentionPolicies", + "qualifiedName": "BoxApi.GetEnterpriseRetentionPolicies", + "fullyQualifiedName": "BoxApi.GetEnterpriseRetentionPolicies@1.0.0", + "description": "Retrieve all retention policies for an enterprise.\n\nThis tool retrieves all retention policies associated with an enterprise. Use it to get a comprehensive list of retention policies.", + "parameters": [ + { + "name": "filter_by_policy_name_prefix", + "type": "string", + "required": false, + "description": "Filter results using a case-sensitive prefix for retention policy names.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_retention_policy_type", + "type": "string", + "required": false, + "description": "Filter retention policies by type: 'finite' or 'indefinite'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_creator_user_id", + "type": "string", + "required": false, + "description": "Filters the retention policies by the ID of the user who created them. Provide the user ID for specific filtering.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attributes to include in the response, replacing standard fields unless specified.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of retention policies to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Defines the position marker to begin returning results for marker-based pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_retention_policies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetEnterpriseRetentionPolicies", + "parameters": { + "filter_by_policy_name_prefix": { + "value": "Compliance_", + "type": "string", + "required": false + }, + "filter_by_retention_policy_type": { + "value": "finite", + "type": "string", + "required": false + }, + "filter_by_creator_user_id": { + "value": "user_123456", + "type": "string", + "required": false + }, + "include_fields": { + "value": ["policy_name", "created_at", "updated_at"], + "type": "array", + "required": false + }, + "maximum_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_start_marker": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEnterpriseShieldLists", + "qualifiedName": "BoxApi.GetEnterpriseShieldLists", + "fullyQualifiedName": "BoxApi.GetEnterpriseShieldLists@1.0.0", + "description": "Retrieve all shield lists for the enterprise.\n\nThis tool retrieves all security shield lists available within an enterprise, providing information on the protection settings implemented.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shield_lists_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetEnterpriseShieldLists", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEnterpriseTermsOfService", + "qualifiedName": "BoxApi.GetEnterpriseTermsOfService", + "fullyQualifiedName": "BoxApi.GetEnterpriseTermsOfService@1.0.0", + "description": "Retrieve the enterprise's terms of service.\n\nThis tool fetches the most recent terms of service text and settings for the enterprise. Use it to obtain or verify the terms currently in effect.", + "parameters": [ + { + "name": "terms_of_service_type", + "type": "string", + "required": false, + "description": "Specify the type of terms of service to retrieve. Options are 'external' or 'managed'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_terms_of_services'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetEnterpriseTermsOfService", + "parameters": { + "terms_of_service_type": { + "value": "managed", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileAppAssociations", + "qualifiedName": "BoxApi.GetFileAppAssociations", + "fullyQualifiedName": "BoxApi.GetFileAppAssociations@1.0.0", + "description": "Retrieve app items associated with a specific file.\n\nThis tool retrieves all app items associated with a specified file, including those linked to its ancestors. It reveals type/ids even if the user lacks View permission on the app item, assuming the user has access to the file.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique ID representing a file in Box. Can be obtained from the file URL.", + "enum": null, + "inferrable": true + }, + { + "name": "items_per_page_limit", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "Defines the position marker for pagination. Required if using marker-based pagination. Ensure `usemarker` is set to `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_application_type", + "type": "string", + "required": false, + "description": "Specify the application type to filter and return only app items related to it.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id_app_item_associations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFileAppAssociations", + "parameters": { + "file_identifier": { + "value": "1234567890123456789", + "type": "string", + "required": true + }, + "items_per_page_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_marker": { + "value": "abc123marker", + "type": "string", + "required": false + }, + "filter_by_application_type": { + "value": "video", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileClassificationMetadata", + "qualifiedName": "BoxApi.GetFileClassificationMetadata", + "fullyQualifiedName": "BoxApi.GetFileClassificationMetadata@1.0.0", + "description": "Retrieve classification metadata for a specific file.\n\nFetches the applied classification metadata instance for a given file using its ID.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a file, obtained from the file's URL in the Box web application. For example, in `https://*.app.box.com/files/123`, the `file_id` is `123`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id_metadata_enterprise_securityClassification-6VMVochwUWo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFileClassificationMetadata", + "parameters": { + "file_identifier": { + "value": "123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileCollaborations", + "qualifiedName": "BoxApi.GetFileCollaborations", + "fullyQualifiedName": "BoxApi.GetFileCollaborations@1.0.0", + "description": "Retrieve collaborations for a specific file.\n\nFetches pending and active collaborations for a file, showing all users with access or invitations.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique file ID needed to retrieve collaborations. Obtainable from the file's URL in the web app.", + "enum": null, + "inferrable": true + }, + { + "name": "requested_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of specific attributes to include in the response. These fields are not typically included and override the standard response fields.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of collaboration items to return per page in the response. Useful for paginating results.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Specifies the position marker for starting result pagination. Requires 'usemarker' set to 'true'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id_collaborations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFileCollaborations", + "parameters": { + "file_identifier": { + "value": "123456789abcdef", + "type": "string", + "required": true + }, + "requested_fields": { + "value": ["user_email", "role", "status"], + "type": "array", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_start_marker": { + "value": "marker123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileComments", + "qualifiedName": "BoxApi.GetFileComments", + "fullyQualifiedName": "BoxApi.GetFileComments@1.0.0", + "description": "Retrieve comments for a specific file.\n\nThis tool retrieves a list of comments associated with a given file. It should be called when you need to access comments on a file identified by its ID.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique file ID, found in the Box web app URL, e.g., for `https://*.app.box.com/files/123`, the ID is `123`.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of attributes to include in the response. Only specified fields and mini representation are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of comments to return per page for the specified file.", + "enum": null, + "inferrable": true + }, + { + "name": "response_start_offset", + "type": "integer", + "required": false, + "description": "The starting point for comments retrieval. Must not exceed 10000, or a 400 error occurs.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id_comments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFileComments", + "parameters": { + "file_identifier": { + "value": "123", + "type": "string", + "required": true + }, + "include_fields_in_response": { + "value": ["comment_text", "created_at", "created_by"], + "type": "array", + "required": false + }, + "maximum_items_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "response_start_offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFilesOnLegalHold", + "qualifiedName": "BoxApi.GetFilesOnLegalHold", + "fullyQualifiedName": "BoxApi.GetFilesOnLegalHold@1.0.0", + "description": "Retrieve files currently on legal hold for a specific assignment.\n\nThis tool retrieves a list of files with their current versions that are under a legal hold for a specified assignment. It should be used when you need to know which files are currently on hold for legal purposes associated with a specific legal hold policy assignment.", + "parameters": [ + { + "name": "legal_hold_policy_assignment_id", + "type": "string", + "required": true, + "description": "The ID of the legal hold policy assignment to retrieve files currently on hold.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "Position marker for starting the result set when using marker-based pagination. Requires the 'usemarker' parameter to be true.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page. Use this to control pagination size.", + "enum": null, + "inferrable": true + }, + { + "name": "included_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of specific attributes to include in the response. Only these attributes will be returned unless others are explicitly specified. Use this to customize the response fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_legal_hold_policy_assignments_id_files_on_hold'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFilesOnLegalHold", + "parameters": { + "legal_hold_policy_assignment_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "pagination_marker": { + "value": "marker123", + "type": "string", + "required": false + }, + "maximum_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "included_attributes": { + "value": ["file_name", "file_size", "version", "created_date"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileTasks", + "qualifiedName": "BoxApi.GetFileTasks", + "fullyQualifiedName": "BoxApi.GetFileTasks@1.0.0", + "description": "Retrieve all tasks associated with a specific file.\n\nThis tool retrieves all tasks linked to a given file using its file ID. It's used when there is a need to fetch task details for file management or task tracking purposes.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a file, found in the file URL on the Box web application.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id_tasks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFileTasks", + "parameters": { + "file_identifier": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileVersionHistory", + "qualifiedName": "BoxApi.GetFileVersionHistory", + "fullyQualifiedName": "BoxApi.GetFileVersionHistory@1.0.0", + "description": "Retrieve a list of past versions for a file.\n\nThis tool retrieves past versions of a specified file from Box, applicable only for premium account users. Use it to track file changes and version history.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique ID representing a file in Box. Obtainable from the file's URL, e.g., `https://*.app.box.com/files/123` where `123` is the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "requested_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of specific file attributes to include in the response. Only these fields, plus the mini representation, will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "Maximum number of file versions to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "response_start_offset", + "type": "integer", + "required": false, + "description": "The item offset to begin the response from. Must not exceed 10000; otherwise, a 400 error will be returned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id_versions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFileVersionHistory", + "parameters": { + "file_identifier": { + "value": "123", + "type": "string", + "required": true + }, + "requested_fields": { + "value": ["name", "version_number", "created_at"], + "type": "array", + "required": false + }, + "max_items_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "response_start_offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileVersionRetentionInfo", + "qualifiedName": "BoxApi.GetFileVersionRetentionInfo", + "fullyQualifiedName": "BoxApi.GetFileVersionRetentionInfo@1.0.0", + "description": "Retrieve details of a file version retention.\n\nThis tool provides information about a specific file version retention. Note that the file retention API is deprecated. For details on files and file versions under retention, refer to alternative endpoints.", + "parameters": [ + { + "name": "file_version_retention_id", + "type": "string", + "required": true, + "description": "The ID of the specific file version retention to retrieve information for. This is required to access retention details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_file_version_retentions_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFileVersionRetentionInfo", + "parameters": { + "file_version_retention_id": { + "value": "12345abcde67890fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileVersionRetentions", + "qualifiedName": "BoxApi.GetFileVersionRetentions", + "fullyQualifiedName": "BoxApi.GetFileVersionRetentions@1.0.0", + "description": "Retrieve file version retentions for an enterprise.\n\nRetrieves all file version retentions for a specified enterprise. Note that this API is deprecated; consider using newer alternatives for files and file versions under retention.", + "parameters": [ + { + "name": "filter_by_file_id", + "type": "string", + "required": false, + "description": "Filters results to include only files with this specific file ID.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_file_version_id", + "type": "string", + "required": false, + "description": "Filters results by file versions matching this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "retention_policy_id", + "type": "string", + "required": false, + "description": "Filter results by the specific retention policy ID.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_disposition_action", + "type": "string", + "required": false, + "description": "Filter results based on the retention policy's disposition action, such as 'permanently_delete' or 'remove_retention'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_disposition_before_date", + "type": "string", + "required": false, + "description": "Provide a date to filter results by files that will have their disposition come into effect before this date. Format: YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "disposition_effective_after_date", + "type": "string", + "required": false, + "description": "Filter results by files with disposition effective after this date. Use ISO 8601 format (e.g., '2023-10-01').", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Defines the starting point for paginated results using a position marker. Requires marker-based pagination to be enabled.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_file_version_retentions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFileVersionRetentions", + "parameters": { + "filter_by_file_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "filter_by_file_version_id": { + "value": "0987654321", + "type": "string", + "required": false + }, + "retention_policy_id": { + "value": "policy_001", + "type": "string", + "required": false + }, + "filter_by_disposition_action": { + "value": "permanently_delete", + "type": "string", + "required": false + }, + "filter_by_disposition_before_date": { + "value": "2023-12-31", + "type": "string", + "required": false + }, + "disposition_effective_after_date": { + "value": "2023-10-15", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_start_marker": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileVersionsOnLegalHold", + "qualifiedName": "BoxApi.GetFileVersionsOnLegalHold", + "fullyQualifiedName": "BoxApi.GetFileVersionsOnLegalHold@1.0.0", + "description": "Retrieve previous file versions under a legal hold assignment.\n\nUse this tool to obtain a list of previous file versions associated with a specific legal hold policy assignment. For current versions, use a different endpoint. This tool focuses on past file versions within the ongoing system architecture. It excludes content held due to custodian collaborations on a Hub.", + "parameters": [ + { + "name": "legal_hold_policy_assignment_id", + "type": "string", + "required": true, + "description": "The ID of the legal hold policy assignment to retrieve previous file versions for.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Defines the position marker to start returning results for paginated data retrieval. Requires `usemarker` to be set to `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page when retrieving file versions.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_fields_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of attribute names to include in the response. Only specified fields and mini representation fields will be returned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_legal_hold_policy_assignments_id_file_versions_on_hold'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFileVersionsOnLegalHold", + "parameters": { + "legal_hold_policy_assignment_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "pagination_start_marker": { + "value": "start_marker_001", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "include_additional_fields_in_response": { + "value": ["version_number", "created_at", "modified_by"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileVersionsUnderRetention", + "qualifiedName": "BoxApi.GetFileVersionsUnderRetention", + "fullyQualifiedName": "BoxApi.GetFileVersionsUnderRetention@1.0.0", + "description": "Fetch file versions under a specific retention policy assignment.\n\nThis tool retrieves a list of file versions that are currently under retention for a specified retention policy assignment. Use it to manage or review file retention statuses.", + "parameters": [ + { + "name": "retention_policy_assignment_id", + "type": "string", + "required": true, + "description": "The ID of the retention policy assignment to retrieve file versions under retention.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Defines the position marker to start returning results. Requires `usemarker` to be `true` for marker-based pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of file versions to return per page during retrieval.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_retention_policy_assignments_id_file_versions_under_retention'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFileVersionsUnderRetention", + "parameters": { + "retention_policy_assignment_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "pagination_start_marker": { + "value": "marker123", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileWatermark", + "qualifiedName": "BoxApi.GetFileWatermark", + "fullyQualifiedName": "BoxApi.GetFileWatermark@1.0.0", + "description": "Retrieve the watermark for a file by its ID.\n\nUse this tool to get the watermark information of a specific file. It requires the file ID to identify which file's watermark needs to be retrieved.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of a file. Obtainable from the URL when viewing a file on the web application.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id_watermark'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFileWatermark", + "parameters": { + "file_identifier": { + "value": "123456789abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFolderAppItemAssociations", + "qualifiedName": "BoxApi.GetFolderAppItemAssociations", + "fullyQualifiedName": "BoxApi.GetFolderAppItemAssociations@1.0.0", + "description": "Retrieve app items associated with a specific folder.\n\nThis tool returns all app items associated with a specified folder, including those linked through ancestor folders. It reveals type and IDs of the app items if the user has access to the folder, regardless of their permission on the app items themselves.", + "parameters": [ + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "The unique identifier representing a folder. Obtainable from the folder's URL. The root folder ID is '0'.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page when retrieving app items associated with a folder.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Position marker to begin returning results. Used for marker-based pagination. Requires `usemarker` set to `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_application_type", + "type": "string", + "required": false, + "description": "Return only app items for the specified application type.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_folders_id_app_item_associations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFolderAppItemAssociations", + "parameters": { + "folder_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_start_marker": { + "value": "abc123", + "type": "string", + "required": false + }, + "filter_by_application_type": { + "value": "my_app_type", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFolderClassification", + "qualifiedName": "BoxApi.GetFolderClassification", + "fullyQualifiedName": "BoxApi.GetFolderClassification@1.0.0", + "description": "Retrieve classification metadata for a specific folder.\n\nThis tool retrieves the security classification metadata applied to a specific folder. It can be used to understand how a folder is classified within an enterprise. The tool should be called when needing to access classification details for data management or security reviews.", + "parameters": [ + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a folder, retrievable from the folder's URL or as `0` for the root folder.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_folders_id_metadata_enterprise_securityClassification-6VMVochwUWo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFolderClassification", + "parameters": { + "folder_identifier": { + "value": "1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFolderCollaborations", + "qualifiedName": "BoxApi.GetFolderCollaborations", + "fullyQualifiedName": "BoxApi.GetFolderCollaborations@1.0.0", + "description": "Retrieve pending and active collaborations for a folder.\n\nThis tool retrieves a list of users who have access to or have been invited to a specified folder. It returns both pending and active collaborations.", + "parameters": [ + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a folder, obtainable from the folder's URL in the Box web application. For example, in the URL `https://*.app.box.com/folder/123`, the `folder_id` is `123`.", + "enum": null, + "inferrable": true + }, + { + "name": "included_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of attributes to include in the response, overriding standard fields unless specified.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "start_position_marker", + "type": "string", + "required": false, + "description": "The position marker to begin returning results for marker-based pagination. Requires usemarker set to true.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_folders_id_collaborations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFolderCollaborations", + "parameters": { + "folder_identifier": { + "value": "123", + "type": "string", + "required": true + }, + "included_attributes": { + "value": ["email", "role", "status"], + "type": "array", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "start_position_marker": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFolderDetails", + "qualifiedName": "BoxApi.GetFolderDetails", + "fullyQualifiedName": "BoxApi.GetFolderDetails@1.0.0", + "description": "Retrieve details for a folder and its first 100 entries.\n\nUse this tool to get information about a folder, along with the first 100 items it contains. This includes options for sorting and pagination. For accessing more items in the folder, a different endpoint should be used.", + "parameters": [ + { + "name": "folder_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a folder. Obtainable from the folder's URL, e.g., `123` in `https://*.app.box.com/folder/123`. The root folder's ID is `0`.", + "enum": null, + "inferrable": true + }, + { + "name": "requested_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attributes to include in the response. Use for fields not normally returned in standard responses or for querying file metadata.", + "enum": null, + "inferrable": true + }, + { + "name": "secondary_sort_attribute", + "type": "string", + "required": false, + "description": "Defines the second attribute by which folder items are sorted. Options include 'id', 'name', 'date', or 'size'. Not supported for root folders.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The order to sort results: 'ASC' for ascending or 'DESC' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "response_offset", + "type": "integer", + "required": false, + "description": "The zero-based index to start the response from. Values exceeding 10000 are rejected with a 400 error.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return in a single page of results. Controls pagination by limiting the number of entries per response.", + "enum": null, + "inferrable": true + }, + { + "name": "ensure_item_has_changed", + "type": "string", + "required": false, + "description": "Supply the item's last known etag value to receive a response only if the item has changed. If unchanged, it returns a 304 status.", + "enum": null, + "inferrable": true + }, + { + "name": "shared_link_credentials", + "type": "string", + "required": false, + "description": "The URL and optional password for the shared link to access items. Format as `shared_link=[link]` or `shared_link=[link]&shared_link_password=[password]`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_folders_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFolderDetails", + "parameters": { + "folder_unique_identifier": { + "value": "123", + "type": "string", + "required": true + }, + "requested_fields": { + "value": ["name", "size", "created_at"], + "type": "array", + "required": false + }, + "secondary_sort_attribute": { + "value": "name", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "ASC", + "type": "string", + "required": false + }, + "response_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "max_items_per_page": { + "value": 100, + "type": "integer", + "required": false + }, + "ensure_item_has_changed": { + "value": "abc123", + "type": "string", + "required": false + }, + "shared_link_credentials": { + "value": "shared_link=https://example.com/shared-folder&shared_link_password=secret", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFolderMetadata", + "qualifiedName": "BoxApi.GetFolderMetadata", + "fullyQualifiedName": "BoxApi.GetFolderMetadata@1.0.0", + "description": "Retrieve metadata template instance applied to a folder.\n\nThis tool retrieves the metadata template instance from a specified folder, excluding the root folder (ID `0`).", + "parameters": [ + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "The unique ID representing a folder. Obtainable from the folder's URL, but not the root folder (ID `0`).", + "enum": null, + "inferrable": true + }, + { + "name": "metadata_scope", + "type": "string", + "required": true, + "description": "The scope of the metadata template. It can be either 'global' or 'enterprise'.", + "enum": null, + "inferrable": true + }, + { + "name": "metadata_template_name", + "type": "string", + "required": true, + "description": "The name of the metadata template to retrieve from the folder. Excludes root folder (ID `0`).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_folders_id_metadata_id_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFolderMetadata", + "parameters": { + "folder_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "metadata_scope": { + "value": "enterprise", + "type": "string", + "required": true + }, + "metadata_template_name": { + "value": "ProjectMetadata", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFolderSharedLinkInfo", + "qualifiedName": "BoxApi.GetFolderSharedLinkInfo", + "fullyQualifiedName": "BoxApi.GetFolderSharedLinkInfo@1.0.0", + "description": "Retrieve information for a shared link on a folder.\n\nUse this tool to get details about a shared link for a specific folder using its ID. Useful for accessing or managing shared folder links.", + "parameters": [ + { + "name": "include_shared_link_fields", + "type": "string", + "required": true, + "description": "Specify if the shared_link fields should be explicitly returned for this folder.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the folder to retrieve shared link info for. It can be found in the folder URL in Box or use '0' for the root folder.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_folders_id#get_shared_link'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFolderSharedLinkInfo", + "parameters": { + "include_shared_link_fields": { + "value": "true", + "type": "string", + "required": true + }, + "folder_identifier": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFolderWatermark", + "qualifiedName": "BoxApi.GetFolderWatermark", + "fullyQualifiedName": "BoxApi.GetFolderWatermark@1.0.0", + "description": "Retrieve the watermark for a specific folder.\n\nUse this tool to get the watermark information for a folder identified by its ID. Useful for checking watermark status and details.", + "parameters": [ + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "The unique ID representing a folder. It can be found in the URL when viewing the folder in the web app. The root folder ID is '0'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_folders_id_watermark'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetFolderWatermark", + "parameters": { + "folder_identifier": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGroupCollaborations", + "qualifiedName": "BoxApi.GetGroupCollaborations", + "fullyQualifiedName": "BoxApi.GetGroupCollaborations@1.0.0", + "description": "Retrieve collaborations for a specified group.\n\nFetches all collaborations associated with a group, including access details for files or folders. Requires admin permissions to view enterprise groups.", + "parameters": [ + { + "name": "group_id", + "type": "string", + "required": true, + "description": "The unique identifier of the group whose collaborations you want to retrieve. This ID is required to specify the group.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of collaboration items to return per page. Accepts an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "response_offset", + "type": "integer", + "required": false, + "description": "Starting point in the list of collaborations. Must be an integer not exceeding 10000 to avoid rejection.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_groups_id_collaborations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetGroupCollaborations", + "parameters": { + "group_id": { + "value": "123456", + "type": "string", + "required": true + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "response_offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLegacyFileVersionLegalHolds", + "qualifiedName": "BoxApi.GetLegacyFileVersionLegalHolds", + "fullyQualifiedName": "BoxApi.GetLegacyFileVersionLegalHolds@1.0.0", + "description": "Retrieve file versions on legal hold in the legacy system.\n\nThis endpoint fetches file versions under legal hold in the legacy architecture for a specific legal hold assignment. It may not return all file versions for the policy ID. For file versions held in the new architecture, refer to the appropriate newer endpoints. This API will be deprecated after re-architecture completion.", + "parameters": [ + { + "name": "legal_hold_policy_id", + "type": "string", + "required": true, + "description": "The ID of the legal hold policy for which file version legal holds need to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "A string that defines the starting point for marker-based pagination. Requires `usemarker` to be true.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of items to return per page for the request.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_file_version_legal_holds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetLegacyFileVersionLegalHolds", + "parameters": { + "legal_hold_policy_id": { + "value": "LH-123456", + "type": "string", + "required": true + }, + "pagination_marker": { + "value": "marker-7890", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLegalHoldPolicyAssignments", + "qualifiedName": "BoxApi.GetLegalHoldPolicyAssignments", + "fullyQualifiedName": "BoxApi.GetLegalHoldPolicyAssignments@1.0.0", + "description": "Retrieve items assigned to a legal hold policy.\n\nUse this tool to fetch all items that have been associated with a specific legal hold policy.", + "parameters": [ + { + "name": "legal_hold_policy_id", + "type": "string", + "required": true, + "description": "The unique identifier for the legal hold policy to retrieve assignments for.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_assignment_type", + "type": "string", + "required": false, + "description": "Specify the type of item (e.g., file, folder, user, etc.) the policy was applied to. Choices: ['file', 'file_version', 'folder', 'user', 'ownership', 'interactions'].", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_item_id", + "type": "string", + "required": false, + "description": "Filters results by the ID of the item the policy was applied to.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "Specifies the position to start retrieving results using marker-based pagination. Requires `usemarker` to be set to `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "Set the maximum number of items to retrieve per page for optimal pagination control.", + "enum": null, + "inferrable": true + }, + { + "name": "response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of attributes to include in the response, overriding standard fields unless specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_legal_hold_policy_assignments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetLegalHoldPolicyAssignments", + "parameters": { + "legal_hold_policy_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "filter_by_assignment_type": { + "value": "file", + "type": "string", + "required": false + }, + "filter_by_item_id": { + "value": "file67890", + "type": "string", + "required": false + }, + "pagination_marker": { + "value": "marker123", + "type": "string", + "required": false + }, + "maximum_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "response_fields": { + "value": ["id", "name", "created_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetManualStartWorkflows", + "qualifiedName": "BoxApi.GetManualStartWorkflows", + "fullyQualifiedName": "BoxApi.GetManualStartWorkflows@1.0.0", + "description": "Retrieve workflows with manual start triggers for a folder.\n\nUse this tool to get workflows associated with a specific folder ID that have a manual start trigger type. Ensure your application is authorized to use the 'Manage Box Relay' application scope.", + "parameters": [ + { + "name": "folder_id", + "type": "string", + "required": true, + "description": "The unique identifier representing a folder. You can find this by visiting the folder in the web application and copying the ID from the URL. The root folder is always represented by ID '0'.", + "enum": null, + "inferrable": true + }, + { + "name": "trigger_type_filter", + "type": "string", + "required": false, + "description": "Specify the trigger type to search for in workflows. Use 'WORKFLOW_MANUAL_START' for manual triggers.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of workflows to retrieve per page. Adjust based on your needs to control pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "Specifies the position marker to start returning results. Used for marker-based pagination and requires `usemarker` to be set to `true`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_workflows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetManualStartWorkflows", + "parameters": { + "folder_id": { + "value": "123456", + "type": "string", + "required": true + }, + "trigger_type_filter": { + "value": "WORKFLOW_MANUAL_START", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_marker": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMetadataCascadePolicies", + "qualifiedName": "BoxApi.GetMetadataCascadePolicies", + "fullyQualifiedName": "BoxApi.GetMetadataCascadePolicies@1.0.0", + "description": "Retrieve metadata cascade policies for a folder.\n\nUse this tool to obtain a list of metadata cascade policies applied to a specific folder, excluding the root folder.", + "parameters": [ + { + "name": "target_folder_id", + "type": "string", + "required": true, + "description": "The ID of the folder to query for metadata cascade policies. The root folder with ID '0' is not allowed.", + "enum": null, + "inferrable": true + }, + { + "name": "owner_enterprise_id", + "type": "string", + "required": false, + "description": "The ID of the enterprise to find metadata cascade policies for. Defaults to the current enterprise if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "Position marker for paginating results. Set `usemarker` to true to enable.", + "enum": null, + "inferrable": true + }, + { + "name": "response_offset", + "type": "integer", + "required": false, + "description": "The offset at which to begin the response, must not exceed 10000.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_metadata_cascade_policies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetMetadataCascadePolicies", + "parameters": { + "target_folder_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "owner_enterprise_id": { + "value": "987654321", + "type": "string", + "required": false + }, + "pagination_marker": { + "value": "marker123", + "type": "string", + "required": false + }, + "response_offset": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPendingCollaborationInvites", + "qualifiedName": "BoxApi.GetPendingCollaborationInvites", + "fullyQualifiedName": "BoxApi.GetPendingCollaborationInvites@1.0.0", + "description": "Retrieve user's pending collaboration invites from Box.\n\nThis tool fetches all pending collaboration invitations for a user from the Box service. It should be called when you need to check for any outstanding collaboration invites for a user.", + "parameters": [ + { + "name": "collaboration_status", + "type": "string", + "required": true, + "description": "Set to 'pending' to retrieve all pending collaboration invitations.", + "enum": null, + "inferrable": true + }, + { + "name": "include_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of attribute names to include in the response. This overrides default fields, returning only specified attributes.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_item_offset", + "type": "integer", + "required": false, + "description": "Starting index for the response items. Cannot exceed 10000 to avoid errors.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of collaboration invites to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_collaborations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetPendingCollaborationInvites", + "parameters": { + "collaboration_status": { + "value": "pending", + "type": "string", + "required": true + }, + "include_attributes": { + "value": ["email", "invite_message"], + "type": "array", + "required": false + }, + "starting_item_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "maximum_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRecentItemsInfo", + "qualifiedName": "BoxApi.GetRecentItemsInfo", + "fullyQualifiedName": "BoxApi.GetRecentItemsInfo@1.0.0", + "description": "Fetch recent items accessed by a user in Box.\n\nRetrieves information on the most recent items a user has accessed in Box, up to 1000 items or within the last 90 days.", + "parameters": [ + { + "name": "include_additional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attributes to include in the response, overriding the default fields.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page when fetching recent items accessed by a user.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "A position marker to begin returning results, used for marker-based pagination. Requires `usemarker=true`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_recent_items'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetRecentItemsInfo", + "parameters": { + "include_additional_fields": { + "value": ["last_modified", "created_by", "shared_link"], + "type": "array", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_start_marker": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRetentionPolicy", + "qualifiedName": "BoxApi.GetRetentionPolicy", + "fullyQualifiedName": "BoxApi.GetRetentionPolicy@1.0.0", + "description": "Retrieve details of a specified retention policy.\n\nUse this tool to get details about a specific retention policy using its ID. It should be called when you need to understand or display the specifics of a particular retention policy.", + "parameters": [ + { + "name": "retention_policy_id", + "type": "string", + "required": true, + "description": "The ID of the retention policy to retrieve details for. This ID is essential for accessing the specific policy information.", + "enum": null, + "inferrable": true + }, + { + "name": "include_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of attributes to include in the response. Standard fields are omitted unless explicitly specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_retention_policies_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetRetentionPolicy", + "parameters": { + "retention_policy_id": { + "value": "12345", + "type": "string", + "required": true + }, + "include_attributes": { + "value": ["name", "duration", "status"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRetentionPolicyAssignments", + "qualifiedName": "BoxApi.GetRetentionPolicyAssignments", + "fullyQualifiedName": "BoxApi.GetRetentionPolicyAssignments@1.0.0", + "description": "Retrieve retention policy assignments by policy ID.\n\nThis tool returns a list of all retention policy assignments associated with a specified retention policy ID.", + "parameters": [ + { + "name": "retention_policy_id", + "type": "string", + "required": true, + "description": "The unique identifier of the retention policy to retrieve assignments for.", + "enum": null, + "inferrable": true + }, + { + "name": "assignment_type", + "type": "string", + "required": false, + "description": "The type of retention policy assignment to retrieve, such as 'folder', 'enterprise', or 'metadata_template'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attribute names to include in the response. These specify additional fields to return beyond the standard response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "The position marker to begin returning results for marker-based pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page when retrieving retention policy assignments.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_retention_policies_id_assignments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetRetentionPolicyAssignments", + "parameters": { + "retention_policy_id": { + "value": "12345", + "type": "string", + "required": true + }, + "assignment_type": { + "value": "folder", + "type": "string", + "required": false + }, + "include_fields_in_response": { + "value": ["name", "created_at", "modified_at"], + "type": "array", + "required": false + }, + "pagination_start_marker": { + "value": "marker_001", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSafeCollaborationDomains", + "qualifiedName": "BoxApi.GetSafeCollaborationDomains", + "fullyQualifiedName": "BoxApi.GetSafeCollaborationDomains@1.0.0", + "description": "Retrieve domains approved for safe collaboration.\n\nUse this tool to get a list of domains that are considered safe for creating collaborations within the current enterprise environment.", + "parameters": [ + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "The position marker to begin returning results, used for marker-based pagination. Requires `usemarker` to be `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of domains to return per page. Adjust this to control the page size of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_collaboration_whitelist_entries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetSafeCollaborationDomains", + "parameters": { + "pagination_start_marker": { + "value": "marker123", + "type": "string", + "required": false + }, + "maximum_items_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSharedAppItem", + "qualifiedName": "BoxApi.GetSharedAppItem", + "fullyQualifiedName": "BoxApi.GetSharedAppItem@1.0.0", + "description": "Retrieve details of an app item using a shared link.\n\nUse this tool to get information about an app item by providing a shared link, which may originate from any enterprise.", + "parameters": [ + { + "name": "shared_link_information", + "type": "string", + "required": true, + "description": "A string with the format `shared_link=[link]&shared_link_password=[password]`, containing the shared link and an optional password.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shared_items#app_items'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetSharedAppItem", + "parameters": { + "shared_link_information": { + "value": "shared_link=https://example.app.box.com/file/12345678&shared_link_password=mySecurePassword", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSharedFolderInfo", + "qualifiedName": "BoxApi.GetSharedFolderInfo", + "fullyQualifiedName": "BoxApi.GetSharedFolderInfo@1.0.0", + "description": "Retrieve folder details using a shared link.\n\nFetch detailed information about a folder using a shared link. This tool is useful when only the shared link is available, regardless of the folder's origin.", + "parameters": [ + { + "name": "shared_link_header", + "type": "string", + "required": true, + "description": "A string containing the shared link and optional password formatted as 'shared_link=[link]&shared_link_password=[password]'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of specific attributes to include in the response. Only these fields will be returned unless explicitly specified otherwise.", + "enum": null, + "inferrable": true + }, + { + "name": "etag_condition", + "type": "string", + "required": false, + "description": "Provide the last observed etag to receive the item only if it has changed. Useful for caching and reducing unnecessary data transfer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shared_items#folders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetSharedFolderInfo", + "parameters": { + "shared_link_header": { + "value": "shared_link=https://box.com/s/example_shared_link&shared_link_password=examplePassword", + "type": "string", + "required": true + }, + "include_fields": { + "value": ["name", "size", "created_at"], + "type": "array", + "required": false + }, + "etag_condition": { + "value": "abcd1234efgh5678", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSharedLinkInfo", + "qualifiedName": "BoxApi.GetSharedLinkInfo", + "fullyQualifiedName": "BoxApi.GetSharedLinkInfo@1.0.0", + "description": "Retrieve shared link details for a specific file.\n\nThis tool is used to get information about a shared link for a specified file. It should be called when users need details about the shared link associated with a particular file in the Box service.", + "parameters": [ + { + "name": "include_shared_link_fields", + "type": "string", + "required": true, + "description": "Specify if the `shared_link` fields should be explicitly returned for the file item.", + "enum": null, + "inferrable": true + }, + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a file, found in the URL when accessing a file in the web application (e.g., for the URL `https://*.app.box.com/files/123`, the `file_id` is `123`).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id#get_shared_link'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetSharedLinkInfo", + "parameters": { + "include_shared_link_fields": { + "value": "true", + "type": "string", + "required": true + }, + "file_identifier": { + "value": "123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSharedWebLinkInfo", + "qualifiedName": "BoxApi.GetSharedWebLinkInfo", + "fullyQualifiedName": "BoxApi.GetSharedWebLinkInfo@1.0.0", + "description": "Retrieve shared link information for a web link.\n\nUse this tool to obtain detailed information about a shared link on a specific web link by providing the web link ID.", + "parameters": [ + { + "name": "request_shared_link_fields", + "type": "string", + "required": true, + "description": "Specify the shared link fields to be explicitly returned for the web link.", + "enum": null, + "inferrable": true + }, + { + "name": "web_link_identifier", + "type": "string", + "required": true, + "description": "The ID of the web link for which to retrieve shared link information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_web_links_id#get_shared_link'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetSharedWebLinkInfo", + "parameters": { + "request_shared_link_fields": { + "value": "name,url,created_at,owner", + "type": "string", + "required": true + }, + "web_link_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetShieldInfoBarrierMember", + "qualifiedName": "BoxApi.GetShieldInfoBarrierMember", + "fullyQualifiedName": "BoxApi.GetShieldInfoBarrierMember@1.0.0", + "description": "Retrieve details of a shield information barrier segment member.\n\nThis tool retrieves details about a specific shield information barrier segment member based on its ID.", + "parameters": [ + { + "name": "member_id", + "type": "string", + "required": true, + "description": "The ID of the shield information barrier segment member to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shield_information_barrier_segment_members_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetShieldInfoBarrierMember", + "parameters": { + "member_id": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetShieldInfoBarrierSegment", + "qualifiedName": "BoxApi.GetShieldInfoBarrierSegment", + "fullyQualifiedName": "BoxApi.GetShieldInfoBarrierSegment@1.0.0", + "description": "Retrieve shield information barrier segment by ID.\n\nUse this tool to obtain details about a shield information barrier segment using its ID.", + "parameters": [ + { + "name": "barrier_segment_id", + "type": "string", + "required": true, + "description": "The unique ID of the shield information barrier segment to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shield_information_barrier_segments_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetShieldInfoBarrierSegment", + "parameters": { + "barrier_segment_id": { + "value": "seg_12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetShieldInformationBarrier", + "qualifiedName": "BoxApi.GetShieldInformationBarrier", + "fullyQualifiedName": "BoxApi.GetShieldInformationBarrier@1.0.0", + "description": "Retrieve shield information barrier by ID.\n\nUse this tool to get details of a shield information barrier using its ID.", + "parameters": [ + { + "name": "shield_information_barrier_id", + "type": "string", + "required": true, + "description": "The unique identifier for the shield information barrier to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shield_information_barriers_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetShieldInformationBarrier", + "parameters": { + "shield_information_barrier_id": { + "value": "SIB-123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetShieldInformationBarrierReports", + "qualifiedName": "BoxApi.GetShieldInformationBarrierReports", + "fullyQualifiedName": "BoxApi.GetShieldInformationBarrierReports@1.0.0", + "description": "Retrieve shield information barrier reports.\n\nThis tool fetches a list of reports related to shield information barriers, which can be used to understand and analyze the barriers in place.", + "parameters": [ + { + "name": "shield_information_barrier_id", + "type": "string", + "required": true, + "description": "The unique identifier for the shield information barrier whose reports need to be fetched.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "Position marker to start returning results for pagination. Requires 'usemarker' set to 'true'.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of shield information barrier reports to return per page. This integer value controls the page size for result sets.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shield_information_barrier_reports'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetShieldInformationBarrierReports", + "parameters": { + "shield_information_barrier_id": { + "value": "SIB12345", + "type": "string", + "required": true + }, + "pagination_marker": { + "value": "pageMarker123", + "type": "string", + "required": false + }, + "maximum_items_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetShieldInformationBarriers", + "qualifiedName": "BoxApi.GetShieldInformationBarriers", + "fullyQualifiedName": "BoxApi.GetShieldInformationBarriers@1.0.0", + "description": "Retrieve shield information barriers for the enterprise.\n\nThis tool fetches a list of shield information barrier objects associated with the enterprise according to the JWT.", + "parameters": [ + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "Defines the starting point for paginated results using marker-based pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of shield information barrier objects to return per page. This controls the pagination size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shield_information_barriers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetShieldInformationBarriers", + "parameters": { + "pagination_marker": { + "value": "abc123", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetShieldInformationBarrierSegmentInfo", + "qualifiedName": "BoxApi.GetShieldInformationBarrierSegmentInfo", + "fullyQualifiedName": "BoxApi.GetShieldInformationBarrierSegmentInfo@1.0.0", + "description": "Retrieve shield barrier segment restriction by ID.\n\nThis tool retrieves details of a shield information barrier segment restriction using the specified ID.", + "parameters": [ + { + "name": "segment_restriction_id", + "type": "string", + "required": true, + "description": "The unique identifier for the shield information barrier segment restriction.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shield_information_barrier_segment_restrictions_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetShieldInformationBarrierSegmentInfo", + "parameters": { + "segment_restriction_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetShieldInformationBarrierSegments", + "qualifiedName": "BoxApi.GetShieldInformationBarrierSegments", + "fullyQualifiedName": "BoxApi.GetShieldInformationBarrierSegments@1.0.0", + "description": "Retrieve shield information barrier segment details.\n\nUse this tool to fetch details of shield information barrier segment objects for a specified Information Barrier ID.", + "parameters": [ + { + "name": "shield_information_barrier_id", + "type": "string", + "required": true, + "description": "The unique identifier for the shield information barrier that specifies the segment objects to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_position_marker", + "type": "string", + "required": false, + "description": "Defines the position marker to start returning results from, used for marker-based pagination. Requires usemarker to be true.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of shield information barrier segment items to return in a single request. Ideal for controlling page size during pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shield_information_barrier_segments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetShieldInformationBarrierSegments", + "parameters": { + "shield_information_barrier_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "pagination_position_marker": { + "value": "item_5", + "type": "string", + "required": false + }, + "maximum_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetShieldInformationRestrictions", + "qualifiedName": "BoxApi.GetShieldInformationRestrictions", + "fullyQualifiedName": "BoxApi.GetShieldInformationRestrictions@1.0.0", + "description": "Retrieve restrictions for a shield information barrier segment.\n\nUse this tool to list restrictions for a specific shield information barrier segment based on its ID.", + "parameters": [ + { + "name": "segment_id", + "type": "string", + "required": true, + "description": "The unique identifier for the shield information barrier segment to retrieve restrictions.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_position_marker", + "type": "string", + "required": false, + "description": "Defines the position marker to begin results, used for marker-based pagination. Requires `usemarker` to be `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page when retrieving shield information barrier segment restrictions.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shield_information_barrier_segment_restrictions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetShieldInformationRestrictions", + "parameters": { + "segment_id": { + "value": "seg-12345", + "type": "string", + "required": true + }, + "pagination_position_marker": { + "value": "marker-67890", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSpecificTermsOfService", + "qualifiedName": "BoxApi.GetSpecificTermsOfService", + "fullyQualifiedName": "BoxApi.GetSpecificTermsOfService@1.0.0", + "description": "Fetches details of a specific terms of service.\n\nUse this tool to retrieve information about a specific terms of service using its ID.", + "parameters": [ + { + "name": "terms_of_service_id", + "type": "string", + "required": true, + "description": "The unique identifier for the terms of service to be fetched.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_terms_of_services_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetSpecificTermsOfService", + "parameters": { + "terms_of_service_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSpecificWebhook", + "qualifiedName": "BoxApi.GetSpecificWebhook", + "fullyQualifiedName": "BoxApi.GetSpecificWebhook@1.0.0", + "description": "Retrieve details of a specific webhook by ID.\n\nUse this tool to get information about a specific webhook by providing its ID. It retrieves details such as URL, triggers, and other related metadata.", + "parameters": [ + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The unique identifier of the webhook to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_webhooks_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetSpecificWebhook", + "parameters": { + "webhook_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamsIntegrationMappings", + "qualifiedName": "BoxApi.GetTeamsIntegrationMappings", + "fullyQualifiedName": "BoxApi.GetTeamsIntegrationMappings@1.0.0", + "description": "Retrieve Teams integration mappings for an enterprise.\n\nThis tool retrieves a list of Teams integration mappings within a user's enterprise. It requires Admin or Co-Admin access to execute this call.", + "parameters": [ + { + "name": "mapped_item_type", + "type": "string", + "required": false, + "description": "Specify the type of item ('channel' or 'team') for which the mapping should be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "mapped_item_id", + "type": "string", + "required": false, + "description": "The ID of the mapped item for which the mapping should be returned. Required for retrieving specific integration mappings.", + "enum": null, + "inferrable": true + }, + { + "name": "box_item_id_for_mappings", + "type": "string", + "required": false, + "description": "The Box item ID to retrieve integration mappings for. Required for fetching specific mappings.", + "enum": null, + "inferrable": true + }, + { + "name": "box_item_type", + "type": "string", + "required": false, + "description": "Specify the type of Box item for which the mappings should be returned. Acceptable value is 'folder'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_integration_mappings_teams'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetTeamsIntegrationMappings", + "parameters": { + "mapped_item_type": { + "value": "channel", + "type": "string", + "required": false + }, + "mapped_item_id": { + "value": "12345", + "type": "string", + "required": false + }, + "box_item_id_for_mappings": { + "value": "67890", + "type": "string", + "required": false + }, + "box_item_type": { + "value": "folder", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUploadedChunksList", + "qualifiedName": "BoxApi.GetUploadedChunksList", + "fullyQualifiedName": "BoxApi.GetUploadedChunksList@1.0.0", + "description": "Retrieve the list of uploaded chunks for an upload session.\n\nUse this tool to get a list of file chunks that have been uploaded to a specific upload session. This is helpful for tracking upload progress and ensuring all parts are correctly uploaded.", + "parameters": [ + { + "name": "upload_session_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the upload session. Use this to retrieve the list of uploaded chunks.", + "enum": null, + "inferrable": true + }, + { + "name": "response_offset", + "type": "integer", + "required": false, + "description": "The starting position of the response item list. Must not exceed 10000, as higher values will result in a 400 error.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of uploaded chunks to return per page in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_upload_sessions_id_parts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetUploadedChunksList", + "parameters": { + "upload_session_identifier": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "response_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUploadSessionDetails", + "qualifiedName": "BoxApi.GetUploadSessionDetails", + "fullyQualifiedName": "BoxApi.GetUploadSessionDetails@1.0.0", + "description": "Retrieve details of a specific file upload session.\n\nThis tool retrieves information about a file upload session using the session ID. It is useful for checking the status or details of ongoing or past file uploads.", + "parameters": [ + { + "name": "upload_session_id", + "type": "string", + "required": true, + "description": "The ID of the upload session to retrieve information for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_upload_sessions_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetUploadSessionDetails", + "parameters": { + "upload_session_id": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserAvatar", + "qualifiedName": "BoxApi.GetUserAvatar", + "fullyQualifiedName": "BoxApi.GetUserAvatar@1.0.0", + "description": "Retrieve the image of a user's avatar.\n\nUse this tool to get the avatar image for a specific user by their user ID.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The ID of the user whose avatar you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_users_id_avatar'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetUserAvatar", + "parameters": { + "user_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserEmailAliases", + "qualifiedName": "BoxApi.GetUserEmailAliases", + "fullyQualifiedName": "BoxApi.GetUserEmailAliases@1.0.0", + "description": "Retrieve all email aliases for a specific user.\n\nFetches all email aliases associated with a user, excluding their primary login email.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the user to retrieve email aliases for, formatted as a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_users_id_email_aliases'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetUserEmailAliases", + "parameters": { + "user_identifier": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserGroupMemberships", + "qualifiedName": "BoxApi.GetUserGroupMemberships", + "fullyQualifiedName": "BoxApi.GetUserGroupMemberships@1.0.0", + "description": "Retrieve all groups a user belongs to.\n\nFetches all the groups associated with a specific user. This is accessible only to group members or users with admin-level permissions.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The ID of the user to retrieve group memberships for.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "Maximum number of items to return per page. Set an integer value to limit the results displayed at once.", + "enum": null, + "inferrable": true + }, + { + "name": "response_offset", + "type": "integer", + "required": false, + "description": "The starting point offset for the response items. Must be 10000 or less.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_users_id_memberships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetUserGroupMemberships", + "parameters": { + "user_identifier": { + "value": "user_123456", + "type": "string", + "required": true + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "response_offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserInformation", + "qualifiedName": "BoxApi.GetUserInformation", + "fullyQualifiedName": "BoxApi.GetUserInformation@1.0.0", + "description": "Retrieve detailed user information in the enterprise.\n\nUse this tool to get information about a user in the enterprise. Requires permission to access user details. Returns limited info for external users with appropriate scopes.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the user whose information you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "requested_user_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of attributes to include in the response. Only specified fields are returned unless otherwise stated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_users_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetUserInformation", + "parameters": { + "user_identifier": { + "value": "user123@example.com", + "type": "string", + "required": true + }, + "requested_user_fields": { + "value": ["name", "email", "role", "last_login"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserTosStatus", + "qualifiedName": "BoxApi.GetUserTosStatus", + "fullyQualifiedName": "BoxApi.GetUserTosStatus@1.0.0", + "description": "Retrieve user acceptance status for terms of service.\n\nThis tool retrieves information about users and their status regarding terms of service acceptance, including whether they have accepted the terms and when.", + "parameters": [ + { + "name": "terms_of_service_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific terms of service document.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_user_id", + "type": "string", + "required": false, + "description": "Limits results to the specified user ID for retrieving their terms of service acceptance status.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_terms_of_service_user_statuses'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.GetUserTosStatus", + "parameters": { + "terms_of_service_id": { + "value": "tos_123456", + "type": "string", + "required": true + }, + "filter_by_user_id": { + "value": "user_7890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAiAgents", + "qualifiedName": "BoxApi.ListAiAgents", + "fullyQualifiedName": "BoxApi.ListAiAgents@1.0.0", + "description": "Retrieve a list of AI agents with specified parameters.\n\nThis tool fetches AI agents from the service based on provided filters or parameters. It should be called when information about available AI agents is needed, such as their names, types, or statuses.", + "parameters": [ + { + "name": "filter_by_mode", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of modes to filter the agent configuration. Options: `ask`, `text_gen`, `extract`.", + "enum": null, + "inferrable": true + }, + { + "name": "response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to return for each AI agent in the response. Specify as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "agent_state_filter", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify the states of agents to return. Acceptable values include: 'enabled', 'disabled', and 'enabled_for_selected_users'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_start_position_marker", + "type": "string", + "required": false, + "description": "The starting point marker for returning paginated results. Use this to continue a previous query from where it left off.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of AI agents to return for a single page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "include_box_default_agents", + "type": "boolean", + "required": false, + "description": "Set to true to include Box default AI agents in the response, false otherwise.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_ai_agents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.ListAiAgents", + "parameters": { + "filter_by_mode": { + "value": ["ask", "text_gen"], + "type": "array", + "required": false + }, + "response_fields": { + "value": ["name", "type", "status"], + "type": "array", + "required": false + }, + "agent_state_filter": { + "value": ["enabled", "disabled"], + "type": "array", + "required": false + }, + "results_start_position_marker": { + "value": "marker123", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "include_box_default_agents": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListBoxDocgenJobs", + "qualifiedName": "BoxApi.ListBoxDocgenJobs", + "fullyQualifiedName": "BoxApi.ListBoxDocgenJobs@1.0.0", + "description": "Retrieves a list of Box Doc Gen jobs for a user.\n\nUse this tool to get all the Box Doc Gen job details associated with a user.", + "parameters": [ + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "Starting position marker for paginating results. Requires 'usemarker' set to true.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page. Specify an integer value to set the limit for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_docgen_jobs_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.ListBoxDocgenJobs", + "parameters": { + "pagination_marker": { + "value": "marker123", + "type": "string", + "required": false + }, + "maximum_items_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListBoxDocgenTemplateTags", + "qualifiedName": "BoxApi.ListBoxDocgenTemplateTags", + "fullyQualifiedName": "BoxApi.ListBoxDocgenTemplateTags@1.0.0", + "description": "Retrieve tags from a specific Box Doc Gen template.\n\nCall this tool to list all tags used in a specific Box Doc Gen template. Use it when you need to access or manage the tags associated with a given template.", + "parameters": [ + { + "name": "template_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Box Doc Gen template whose tags you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "template_version_id", + "type": "string", + "required": false, + "description": "The ID of the specific version of the template to retrieve tags from.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Defines the starting position for results when using marker-based pagination. Must have `usemarker` set to `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of tags to return per page from the Box Doc Gen template.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_docgen_templates_id_tags_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.ListBoxDocgenTemplateTags", + "parameters": { + "template_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "template_version_id": { + "value": "v1.0", + "type": "string", + "required": false + }, + "pagination_start_marker": { + "value": "start123", + "type": "string", + "required": false + }, + "maximum_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListBoxDocTemplates", + "qualifiedName": "BoxApi.ListBoxDocTemplates", + "fullyQualifiedName": "BoxApi.ListBoxDocTemplates@1.0.0", + "description": "Retrieve Box Doc Gen templates the user collaborates on.\n\nFetches a list of Box Doc Gen templates where the user is a collaborator. Useful for managing or accessing document templates in Box.", + "parameters": [ + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Defines the starting position for pagination of results. Requires `usemarker` to be set to `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of Box Doc Gen templates to return in a single page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_docgen_templates_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.ListBoxDocTemplates", + "parameters": { + "pagination_start_marker": { + "value": "abc123", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListDefinedWebhooks", + "qualifiedName": "BoxApi.ListDefinedWebhooks", + "fullyQualifiedName": "BoxApi.ListDefinedWebhooks@1.0.0", + "description": "Retrieve all webhooks for your application.\n\nUsed to get all webhooks defined for files or folders owned by the authenticated user. Note: Admins can't see webhooks created by service accounts unless they have access to those folders.", + "parameters": [ + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "The position marker to start returning results from. Required for marker-based pagination with `usemarker` set to `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of webhooks to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_webhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.ListDefinedWebhooks", + "parameters": { + "pagination_start_marker": { + "value": "abc123", + "type": "string", + "required": false + }, + "maximum_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListDocgenBatchJobs", + "qualifiedName": "BoxApi.ListDocgenBatchJobs", + "fullyQualifiedName": "BoxApi.ListDocgenBatchJobs@1.0.0", + "description": "Retrieve details of Box Doc Gen jobs in a batch.\n\nUse this tool to get a list of Box Doc Gen jobs contained within a specific batch using the batch ID.", + "parameters": [ + { + "name": "box_doc_gen_batch_id", + "type": "string", + "required": true, + "description": "The identifier for a Box Doc Gen batch used to retrieve specific job details.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "The position marker to start returning results. Use for marker-based pagination. Requires `usemarker` set to `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page when retrieving Box Doc Gen jobs.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_docgen_batch_jobs_id_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.ListDocgenBatchJobs", + "parameters": { + "box_doc_gen_batch_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "pagination_marker": { + "value": "marker_1", + "type": "string", + "required": false + }, + "maximum_items_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEnterpriseUsers", + "qualifiedName": "BoxApi.ListEnterpriseUsers", + "fullyQualifiedName": "BoxApi.ListEnterpriseUsers@1.0.0", + "description": "Retrieve all users in the enterprise.\n\nFetches a list of users for the enterprise, including user IDs, public names, and login information. Requires appropriate permissions to access user data across the enterprise.", + "parameters": [ + { + "name": "search_term_for_user_filtering", + "type": "string", + "required": false, + "description": "Limits results to users whose name or login begins with the specified term. Complete match required for external users.", + "enum": null, + "inferrable": true + }, + { + "name": "user_type_filter", + "type": "string", + "required": false, + "description": "Specify the type of users to include: 'all', 'managed', or 'external'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_external_app_user_id", + "type": "string", + "required": false, + "description": "Filter results to app users with the specified external app user ID. Used for retrieving users matching this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify additional attributes for inclusion in the response. Only selected fields and mini representation fields will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "response_offset", + "type": "integer", + "required": false, + "description": "The starting point for the response; queries exceeding 10000 will return a 400 error.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of user records to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Defines the position marker where results begin when using marker-based pagination. Requires `usemarker` set to `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "use_marker_pagination", + "type": "boolean", + "required": false, + "description": "Set to true to use marker-based pagination. This enables a `marker` field in the response for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_users'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.ListEnterpriseUsers", + "parameters": { + "search_term_for_user_filtering": { + "value": "john", + "type": "string", + "required": false + }, + "user_type_filter": { + "value": "managed", + "type": "string", + "required": false + }, + "filter_by_external_app_user_id": { + "value": "12345", + "type": "string", + "required": false + }, + "include_additional_fields": { + "value": ["email", "department"], + "type": "array", + "required": false + }, + "response_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_start_marker": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "use_marker_pagination": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListFilesUnderRetentionPolicy", + "qualifiedName": "BoxApi.ListFilesUnderRetentionPolicy", + "fullyQualifiedName": "BoxApi.ListFilesUnderRetentionPolicy@1.0.0", + "description": "Retrieve files under a retention policy assignment.\n\nThis tool fetches a list of files that are under retention for a given retention policy assignment ID. It should be called when you need to identify files associated with a specific retention policy.", + "parameters": [ + { + "name": "retention_policy_assignment_id", + "type": "string", + "required": true, + "description": "The ID of the retention policy assignment used to identify which retention policy's files to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "position_marker", + "type": "string", + "required": false, + "description": "A string to define where to start returning results for pagination using marker-based pagination. Requires `usemarker` to be `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of files to retrieve per page. Determines the page size for the results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_retention_policy_assignments_id_files_under_retention'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.ListFilesUnderRetentionPolicy", + "parameters": { + "retention_policy_assignment_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "position_marker": { + "value": "abc123", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListShieldBarrierSegmentMembers", + "qualifiedName": "BoxApi.ListShieldBarrierSegmentMembers", + "fullyQualifiedName": "BoxApi.ListShieldBarrierSegmentMembers@1.0.0", + "description": "Retrieve members of shield information barrier segments.\n\nThis tool lists the members of shield information barrier segments based on provided segment IDs. It should be called when there's a need to identify or review members within these segments.", + "parameters": [ + { + "name": "segment_id", + "type": "string", + "required": true, + "description": "The ID of the shield information barrier segment to retrieve members for.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "The position marker to begin returning paginated results. Requires `usemarker` to be `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "items_per_page_limit", + "type": "integer", + "required": false, + "description": "The maximum number of segment members to return per page. Use this to control pagination by specifying the number of results per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shield_information_barrier_segment_members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.ListShieldBarrierSegmentMembers", + "parameters": { + "segment_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "pagination_marker": { + "value": "marker456", + "type": "string", + "required": false + }, + "items_per_page_limit": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSlackIntegrationMappings", + "qualifiedName": "BoxApi.ListSlackIntegrationMappings", + "fullyQualifiedName": "BoxApi.ListSlackIntegrationMappings@1.0.0", + "description": "Retrieve Slack integration mappings for a Box enterprise.\n\nThis tool is used to list Slack integration mappings within a user's enterprise on Box. It requires Admin or Co-Admin privileges.", + "parameters": [ + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Defines the starting position for pagination results. Requires 'usemarker' to be true.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of Slack integration mappings to return per page from the user's enterprise.", + "enum": null, + "inferrable": true + }, + { + "name": "mapped_item_type", + "type": "string", + "required": false, + "description": "The type of mapped item for which the Slack integration mapping should be returned. Only 'channel' is supported.", + "enum": null, + "inferrable": true + }, + { + "name": "mapped_item_id", + "type": "string", + "required": false, + "description": "ID of the mapped item for which the Slack integration mapping should be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "box_item_id", + "type": "string", + "required": false, + "description": "Box item ID for which to retrieve Slack integration mappings. Must be a valid ID within the user's enterprise.", + "enum": null, + "inferrable": true + }, + { + "name": "box_item_type", + "type": "string", + "required": false, + "description": "Specify the type of Box item for which the mappings should be returned. Currently, only 'folder' is supported.", + "enum": null, + "inferrable": true + }, + { + "name": "include_manually_created_mappings", + "type": "boolean", + "required": false, + "description": "Set to true to include mappings that have been manually created.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_integration_mappings_slack'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.ListSlackIntegrationMappings", + "parameters": { + "pagination_start_marker": { + "value": "abc123", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "mapped_item_type": { + "value": "channel", + "type": "string", + "required": false + }, + "mapped_item_id": { + "value": "C1234567890", + "type": "string", + "required": false + }, + "box_item_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "box_item_type": { + "value": "folder", + "type": "string", + "required": false + }, + "include_manually_created_mappings": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTaskAssignments", + "qualifiedName": "BoxApi.ListTaskAssignments", + "fullyQualifiedName": "BoxApi.ListTaskAssignments@1.0.0", + "description": "Retrieve all assignments for a specified task.\n\nThis tool is used to list all the assignments associated with a given task by providing the task ID. Use this tool to get details on who is assigned to a specific task.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier of the task for which assignments need to be retrieved. It must be provided as a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_tasks_id_assignments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.ListTaskAssignments", + "parameters": { + "task_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTemplateJobs", + "qualifiedName": "BoxApi.ListTemplateJobs", + "fullyQualifiedName": "BoxApi.ListTemplateJobs@1.0.0", + "description": "Retrieve jobs associated with a specific document template.\n\nUse this tool to get a list of all user jobs linked to a particular document generation template by providing the template ID.", + "parameters": [ + { + "name": "template_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the template for which jobs need to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Defines the starting position for pagination. Requires 'usemarker' to be set to true.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page from the list of jobs.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_docgen_template_jobs_id_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.ListTemplateJobs", + "parameters": { + "template_identifier": { + "value": "tmpl_123456789", + "type": "string", + "required": true + }, + "pagination_start_marker": { + "value": "marker_987654321", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PermanentlyDeleteFileFromTrash", + "qualifiedName": "BoxApi.PermanentlyDeleteFileFromTrash", + "fullyQualifiedName": "BoxApi.PermanentlyDeleteFileFromTrash@1.0.0", + "description": "Permanently delete a file that is in the trash.\n\nThis tool is used to permanently remove a file that has been moved to the trash. This action is irreversible and should be called when a file needs to be deleted without the possibility of recovery.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of a file to be permanently deleted from the trash. Obtainable from the file URL.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_files_id_trash'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.PermanentlyDeleteFileFromTrash", + "parameters": { + "file_identifier": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PermanentlyDeleteFolderInTrash", + "qualifiedName": "BoxApi.PermanentlyDeleteFolderInTrash", + "fullyQualifiedName": "BoxApi.PermanentlyDeleteFolderInTrash@1.0.0", + "description": "Permanently delete a folder from the trash.\n\nThis tool permanently deletes a folder that is in the trash, and this action cannot be undone. It should be called when there is a need to remove a folder from the trash permanently.", + "parameters": [ + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "The unique identifier representing a folder to be permanently deleted from the trash. Obtainable from folder URL or use '0' for root folder.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_folders_id_trash'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.PermanentlyDeleteFolderInTrash", + "parameters": { + "folder_identifier": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PermanentlyDeleteTrashedWebLink", + "qualifiedName": "BoxApi.PermanentlyDeleteTrashedWebLink", + "fullyQualifiedName": "BoxApi.PermanentlyDeleteTrashedWebLink@1.0.0", + "description": "Permanently delete a trashed web link.\n\nUse this tool to permanently delete a web link that is currently in the trash. This action is irreversible and should be used when the web link is no longer needed.", + "parameters": [ + { + "name": "web_link_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the web link to be permanently deleted from the trash. This ID is required to specify which web link should be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_web_links_id_trash'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.PermanentlyDeleteTrashedWebLink", + "parameters": { + "web_link_identifier": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveBoxSkillsMetadata", + "qualifiedName": "BoxApi.RemoveBoxSkillsMetadata", + "fullyQualifiedName": "BoxApi.RemoveBoxSkillsMetadata@1.0.0", + "description": "Remove Box Skills cards metadata from a file.\n\nUse this tool to delete any Box Skills cards metadata associated with a specific file. It should be called when there is a need to clean metadata from files stored in Box.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a file, which can be extracted from the URL in the web application. For example, in `https://*.app.box.com/files/123`, the `file_id` is `123`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_files_id_metadata_global_boxSkillsCards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RemoveBoxSkillsMetadata", + "parameters": { + "file_identifier": { + "value": "123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveCollaborationWhitelistExemption", + "qualifiedName": "BoxApi.RemoveCollaborationWhitelistExemption", + "fullyQualifiedName": "BoxApi.RemoveCollaborationWhitelistExemption@1.0.0", + "description": "Remove a user's exemption from domain restrictions in collaborations.\n\nThis tool is used to revoke a specific user's exemption from the list of allowed domains for collaborative activities, ensuring that the domain restrictions apply.", + "parameters": [ + { + "name": "exemption_id", + "type": "string", + "required": true, + "description": "The ID of the user's exemption to be removed from the collaboration whitelist.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_collaboration_whitelist_exempt_targets_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RemoveCollaborationWhitelistExemption", + "parameters": { + "exemption_id": { + "value": "exemption_123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveFileClassification", + "qualifiedName": "BoxApi.RemoveFileClassification", + "fullyQualifiedName": "BoxApi.RemoveFileClassification@1.0.0", + "description": "Remove classifications from a specified file.\n\nThis tool is used to remove any security classifications from a file in the Box service. It should be called when there's a need to clear security classifications.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the file whose classification is to be removed. Obtainable from the Box file URL.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_files_id_metadata_enterprise_securityClassification-6VMVochwUWo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RemoveFileClassification", + "parameters": { + "file_identifier": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveFileWatermark", + "qualifiedName": "BoxApi.RemoveFileWatermark", + "fullyQualifiedName": "BoxApi.RemoveFileWatermark@1.0.0", + "description": "Removes the watermark from a specified file.\n\nThis tool is used to remove a watermark from a file in the Box service. It should be called when there's a need to delete the watermark from a specified file.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique ID for the file, found in its Box URL. For example, from `https://*.app.box.com/files/123`, `file_id` is `123`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_files_id_watermark'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RemoveFileWatermark", + "parameters": { + "file_identifier": { + "value": "123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveFolderClassifications", + "qualifiedName": "BoxApi.RemoveFolderClassifications", + "fullyQualifiedName": "BoxApi.RemoveFolderClassifications@1.0.0", + "description": "Remove classifications from a specified folder.\n\nUse this tool to remove any security classifications applied to a specific folder. It is useful when needing to update or clear the classification status of folders in an enterprise setting.", + "parameters": [ + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "The unique identifier representing a folder. Obtain this by visiting the folder URL (e.g., `https://*.app.box.com/folder/123`). The root folder ID is `0`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_folders_id_metadata_enterprise_securityClassification-6VMVochwUWo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RemoveFolderClassifications", + "parameters": { + "folder_identifier": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveLegalHoldFromItem", + "qualifiedName": "BoxApi.RemoveLegalHoldFromItem", + "fullyQualifiedName": "BoxApi.RemoveLegalHoldFromItem@1.0.0", + "description": "Initiate removal of a legal hold from an item.\n\nUse this tool to start the process of removing a legal hold from a specific item. It is an asynchronous operation, meaning the hold is not fully removed immediately upon response.", + "parameters": [ + { + "name": "legal_hold_policy_assignment_id", + "type": "string", + "required": true, + "description": "The unique identifier for the legal hold policy assignment you wish to remove. This value is necessary to initiate the removal process.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_legal_hold_policy_assignments_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RemoveLegalHoldFromItem", + "parameters": { + "legal_hold_policy_assignment_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveRetentionPolicyAssignment", + "qualifiedName": "BoxApi.RemoveRetentionPolicyAssignment", + "fullyQualifiedName": "BoxApi.RemoveRetentionPolicyAssignment@1.0.0", + "description": "Removes a retention policy assignment from content.\n\nThis tool is used to delete a specific retention policy assignment identified by its ID. It should be called when you need to remove the association of retention policies from specific content.", + "parameters": [ + { + "name": "retention_policy_assignment_id", + "type": "string", + "required": true, + "description": "The unique identifier for the retention policy assignment to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_retention_policy_assignments_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RemoveRetentionPolicyAssignment", + "parameters": { + "retention_policy_assignment_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveSafeCollaborationDomain", + "qualifiedName": "BoxApi.RemoveSafeCollaborationDomain", + "fullyQualifiedName": "BoxApi.RemoveSafeCollaborationDomain@1.0.0", + "description": "Remove a domain from the safe collaboration list.\n\nUse this tool to delete a domain from the list of approved domains for collaborations in the enterprise.", + "parameters": [ + { + "name": "whitelist_entry_id", + "type": "string", + "required": true, + "description": "The unique identifier for the domain entry in the safe collaboration list to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_collaboration_whitelist_entries_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RemoveSafeCollaborationDomain", + "parameters": { + "whitelist_entry_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveShieldBarrierMember", + "qualifiedName": "BoxApi.RemoveShieldBarrierMember", + "fullyQualifiedName": "BoxApi.RemoveShieldBarrierMember@1.0.0", + "description": "Delete a shield information barrier segment member by ID.\n\nThis tool deletes a member from a shield information barrier segment using the provided member ID. Use this to manage and update segment member lists.", + "parameters": [ + { + "name": "member_id_for_deletion", + "type": "string", + "required": true, + "description": "The ID of the shield information barrier segment member to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_shield_information_barrier_segment_members_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RemoveShieldBarrierMember", + "parameters": { + "member_id_for_deletion": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveUserAvatar", + "qualifiedName": "BoxApi.RemoveUserAvatar", + "fullyQualifiedName": "BoxApi.RemoveUserAvatar@1.0.0", + "description": "Removes a user's existing avatar.\n\nUse this tool to permanently delete a user's avatar. This action is irreversible, so it should be called when you want to ensure a user's avatar is removed from their profile.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the user whose avatar is to be deleted. Ensure this ID is correct, as the operation cannot be reversed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_users_id_avatar'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RemoveUserAvatar", + "parameters": { + "user_identifier": { + "value": "user_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveUserEmailAlias", + "qualifiedName": "BoxApi.RemoveUserEmailAlias", + "fullyQualifiedName": "BoxApi.RemoveUserEmailAlias@1.0.0", + "description": "Removes an email alias from a user account.\n\nCall this tool to delete a specific email alias from a user's account using their user ID and the email alias ID.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the user whose email alias is to be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "email_alias_id", + "type": "string", + "required": true, + "description": "The unique identifier of the email alias to be removed. This is required to specify which alias to delete from the user account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_users_id_email_aliases_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RemoveUserEmailAlias", + "parameters": { + "user_identifier": { + "value": "user_12345", + "type": "string", + "required": true + }, + "email_alias_id": { + "value": "alias_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveWatermarkFromFolder", + "qualifiedName": "BoxApi.RemoveWatermarkFromFolder", + "fullyQualifiedName": "BoxApi.RemoveWatermarkFromFolder@1.0.0", + "description": "Removes the watermark from a specified folder.\n\nUse this tool to remove the watermark from a folder by providing the folder's ID in the request.", + "parameters": [ + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a folder. This ID can be found in the URL when visiting the folder in the Box web application. For instance, in `https://*.app.box.com/folder/123`, the `folder_id` is `123`. The root folder is always `0`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_folders_id_watermark'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RemoveWatermarkFromFolder", + "parameters": { + "folder_identifier": { + "value": "123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResendSignatureRequestEmail", + "qualifiedName": "BoxApi.ResendSignatureRequestEmail", + "fullyQualifiedName": "BoxApi.ResendSignatureRequestEmail@1.0.0", + "description": "Resend signature request email to outstanding signers.\n\nThis tool is used to resend a signature request email to all signers who have not yet completed the sign request. It should be called when you need to prompt signers again to complete a signing process.", + "parameters": [ + { + "name": "signature_request_id", + "type": "string", + "required": true, + "description": "The unique identifier of the signature request to resend emails to outstanding signers.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post_sign_requests_id_resend'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.ResendSignatureRequestEmail", + "parameters": { + "signature_request_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBoxHubCollaborations", + "qualifiedName": "BoxApi.RetrieveBoxHubCollaborations", + "fullyQualifiedName": "BoxApi.RetrieveBoxHubCollaborations@1.0.0", + "description": "Retrieves collaborations for a Box Hub.\n\nThis tool fetches all the collaborations associated with a given Box Hub. It should be called when there is a need to access or review the collaborative associations within a Box Hub.", + "parameters": [ + { + "name": "hub_identifier", + "type": "string", + "required": true, + "description": "The unique string identifier for a Box Hub, found in the Hub's URL.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "The position marker to begin returning results, used for marker-based pagination. Ensure `usemarker` is set to `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of collaboration items to return per page. Determines the page size for results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_hub_collaborations_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveBoxHubCollaborations", + "parameters": { + "hub_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "pagination_marker": { + "value": "marker456", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBoxHubDetails", + "qualifiedName": "BoxApi.RetrieveBoxHubDetails", + "fullyQualifiedName": "BoxApi.RetrieveBoxHubDetails@1.0.0", + "description": "Fetch Box Hub details using its ID.\n\nUse this tool to obtain detailed information about a specific Box Hub by providing its unique identifier.", + "parameters": [ + { + "name": "box_hub_identifier", + "type": "string", + "required": true, + "description": "The unique ID representing a Box Hub, found in the URL when visiting the hub.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_hubs_id_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveBoxHubDetails", + "parameters": { + "box_hub_identifier": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBoxHubItems", + "qualifiedName": "BoxApi.RetrieveBoxHubItems", + "fullyQualifiedName": "BoxApi.RetrieveBoxHubItems@1.0.0", + "description": "Fetch all items from a specified Box Hub.\n\nUse this tool to retrieve all items associated with a particular Box Hub. This is useful for accessing and managing the contents of a hub.", + "parameters": [ + { + "name": "hub_identifier", + "type": "string", + "required": true, + "description": "The unique ID representing a Box Hub, retrievable from the hub's URL.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Defines the starting position for results when using marker-based pagination. Requires `usemarker` to be `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page from a Box Hub. Specify an integer value to limit the number of items in each result set.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_hub_items_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveBoxHubItems", + "parameters": { + "hub_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "pagination_start_marker": { + "value": "abc123", + "type": "string", + "required": false + }, + "maximum_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCollectionById", + "qualifiedName": "BoxApi.RetrieveCollectionById", + "fullyQualifiedName": "BoxApi.RetrieveCollectionById@1.0.0", + "description": "Retrieve details of a collection using its ID.\n\nUse this tool to get detailed information about a specific collection by providing its ID.", + "parameters": [ + { + "name": "collection_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the collection to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_collections_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveCollectionById", + "parameters": { + "collection_identifier": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCollectionContents", + "qualifiedName": "BoxApi.RetrieveCollectionContents", + "fullyQualifiedName": "BoxApi.RetrieveCollectionContents@1.0.0", + "description": "Fetch files and folders from a specific collection.\n\nThis tool retrieves the files and/or folders contained within a specified collection. It should be called when a user needs to access or browse the contents of a particular collection using its ID.", + "parameters": [ + { + "name": "collection_id", + "type": "string", + "required": true, + "description": "The unique identifier for the collection whose contents are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "attributes_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of attributes to include in the response. Only the specified fields will be returned alongside the mini representation.", + "enum": null, + "inferrable": true + }, + { + "name": "response_offset", + "type": "integer", + "required": false, + "description": "The starting position in the collection. Must not exceed 10000 to avoid errors.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of items to return per page when retrieving the collection contents. This controls pagination and helps manage large datasets.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_collections_id_items'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveCollectionContents", + "parameters": { + "collection_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "attributes_to_include": { + "value": ["name", "size", "created_at"], + "type": "array", + "required": false + }, + "response_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveEnterpriseArchives", + "qualifiedName": "BoxApi.RetrieveEnterpriseArchives", + "fullyQualifiedName": "BoxApi.RetrieveEnterpriseArchives@1.0.0", + "description": "Retrieve archives for an enterprise from Box.\n\nThis tool retrieves archives for an enterprise using Box's API. It should be called when information about stored archives is needed.", + "parameters": [ + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of archive items to return per page when retrieving data.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Defines the position marker to start returning results for pagination in archive retrieval.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_archives_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveEnterpriseArchives", + "parameters": { + "max_items_per_page": { + "value": 30, + "type": "integer", + "required": false + }, + "pagination_start_marker": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveEnterpriseGroups", + "qualifiedName": "BoxApi.RetrieveEnterpriseGroups", + "fullyQualifiedName": "BoxApi.RetrieveEnterpriseGroups@1.0.0", + "description": "Retrieve all groups for an enterprise with admin rights.\n\nUse this tool to get a list of all groups within a specific enterprise. Requires admin permissions.", + "parameters": [ + { + "name": "group_name_starts_with", + "type": "string", + "required": false, + "description": "Returns groups whose names start with this search term.", + "enum": null, + "inferrable": true + }, + { + "name": "included_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of specific attributes to include in the response. Defaults to mini representation if unspecified.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of groups to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_item_offset", + "type": "integer", + "required": false, + "description": "The offset of the item at which to begin the response. Ensure the value does not exceed 10000 to avoid errors.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_groups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveEnterpriseGroups", + "parameters": { + "group_name_starts_with": { + "value": "Marketing", + "type": "string", + "required": false + }, + "included_attributes": { + "value": ["id", "name", "description"], + "type": "array", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "starting_item_offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveEnterpriseMetadataTemplates", + "qualifiedName": "BoxApi.RetrieveEnterpriseMetadataTemplates", + "fullyQualifiedName": "BoxApi.RetrieveEnterpriseMetadataTemplates@1.0.0", + "description": "Retrieve metadata templates for the user's enterprise.\n\nUsed to fetch all metadata templates designated for use within the user's enterprise.", + "parameters": [ + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Position marker to begin returning results, used with marker-based pagination. Requires `usemarker` to be `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page when retrieving metadata templates.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_metadata_templates_enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveEnterpriseMetadataTemplates", + "parameters": { + "pagination_start_marker": { + "value": "marker123", + "type": "string", + "required": false + }, + "maximum_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFileDetails", + "qualifiedName": "BoxApi.RetrieveFileDetails", + "fullyQualifiedName": "BoxApi.RetrieveFileDetails@1.0.0", + "description": "Fetch details about a specific file using its ID.\n\nUse this tool to get information about a file by providing its ID. It retrieves detailed metadata and properties of the file.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a file, found in the URL of the file in the web application. Example: from `https://*.app.box.com/files/123`, use `123`.", + "enum": null, + "inferrable": true + }, + { + "name": "included_file_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify attributes to include in the response as a list of strings. Additional attributes replace standard fields unless explicitly included. Metadata can be queried using 'metadata' with scope and key.", + "enum": null, + "inferrable": true + }, + { + "name": "etag_conditional_retrieval", + "type": "string", + "required": false, + "description": "Provide the last observed etag value to retrieve the file only if it has changed. Returns a 304 status if unchanged.", + "enum": null, + "inferrable": true + }, + { + "name": "shared_link_with_optional_password", + "type": "string", + "required": false, + "description": "Provide the shared link URL for the item. Use the format 'shared_link=[link]' or 'shared_link=[link]&shared_link_password=[password]' if a password is required.", + "enum": null, + "inferrable": true + }, + { + "name": "file_representations_request", + "type": "string", + "required": false, + "description": "Request specific representations of a file using hints, e.g., '[jpg?dimensions=32x32][jpg?dimensions=64x64]'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveFileDetails", + "parameters": { + "file_identifier": { + "value": "123", + "type": "string", + "required": true + }, + "included_file_attributes": { + "value": ["name", "size", "created_at"], + "type": "array", + "required": false + }, + "etag_conditional_retrieval": { + "value": "abc123etagvalue", + "type": "string", + "required": false + }, + "shared_link_with_optional_password": { + "value": "shared_link=https://example.app.box.com/files/123&shared_link_password=mysecretpassword", + "type": "string", + "required": false + }, + "file_representations_request": { + "value": "[jpg?dimensions=32x32][pdf]", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFileMetadata", + "qualifiedName": "BoxApi.RetrieveFileMetadata", + "fullyQualifiedName": "BoxApi.RetrieveFileMetadata@1.0.0", + "description": "Retrieve all metadata for a specific file.\n\nThis tool is used to obtain comprehensive metadata information for a given file. It should be called when there is a need to access detailed metadata associated with a specific file ID in the Box service.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of a file, obtained from the URL in the Box web application. For example, from `https://*.app.box.com/files/123`, the `file_id` is `123`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id_metadata'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveFileMetadata", + "parameters": { + "file_identifier": { + "value": "123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFileRequestInfo", + "qualifiedName": "BoxApi.RetrieveFileRequestInfo", + "fullyQualifiedName": "BoxApi.RetrieveFileRequestInfo@1.0.0", + "description": "Retrieve information about a specific file request.\n\nThis tool retrieves detailed information about a file request using its unique identifier. It should be called when you need to access metadata or details related to a specific file request.", + "parameters": [ + { + "name": "file_request_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for a file request, obtainable from the URL in the file request builder.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_file_requests_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveFileRequestInfo", + "parameters": { + "file_request_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFileTemplateMetadata", + "qualifiedName": "BoxApi.RetrieveFileTemplateMetadata", + "fullyQualifiedName": "BoxApi.RetrieveFileTemplateMetadata@1.0.0", + "description": "Retrieve metadata for a specific file template.\n\nUse this tool to get the metadata template instance applied to a file. It should be called when metadata information about a file is needed, such as tags, classifications, or other custom data types.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a file, obtainable from the file URL in the Box web application.", + "enum": null, + "inferrable": true + }, + { + "name": "metadata_scope", + "type": "string", + "required": true, + "description": "Defines the scope of the metadata template to be retrieved. Options are 'global' or 'enterprise'.", + "enum": null, + "inferrable": true + }, + { + "name": "metadata_template_name", + "type": "string", + "required": true, + "description": "The name of the metadata template to retrieve for the specified file.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id_metadata_id_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveFileTemplateMetadata", + "parameters": { + "file_identifier": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "metadata_scope": { + "value": "enterprise", + "type": "string", + "required": true + }, + "metadata_template_name": { + "value": "Project Metadata", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFileThumbnail", + "qualifiedName": "BoxApi.RetrieveFileThumbnail", + "fullyQualifiedName": "BoxApi.RetrieveFileThumbnail@1.0.0", + "description": "Retrieves a thumbnail image of a specified file.\n\nThis tool retrieves a thumbnail of a file in various sizes, such as 32x32, 64x64, 128x128, and 256x256 in .png format, or 32x32, 160x160, and 320x320 in .jpg format. Use this tool to get a smaller image representation of images and videos.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the file. You can find this ID in the file URL on the Box web application.", + "enum": null, + "inferrable": true + }, + { + "name": "thumbnail_file_format", + "type": "string", + "required": true, + "description": "Specify the file format for the thumbnail, either 'png' or 'jpg'.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_thumbnail_height", + "type": "integer", + "required": false, + "description": "Specify the minimum height for the thumbnail image required. Accepts an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_thumbnail_width", + "type": "integer", + "required": false, + "description": "The minimum width of the thumbnail to be retrieved. Specify an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_thumbnail_height", + "type": "integer", + "required": false, + "description": "The maximum height of the thumbnail in pixels. Valid values depend on the specified format. For .png, maximum is 256; for .jpg, maximum is 320.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_thumbnail_width", + "type": "integer", + "required": false, + "description": "The maximum width for the thumbnail image in pixels. Define the width according to the available sizes in .png or .jpg formats.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id_thumbnail_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveFileThumbnail", + "parameters": { + "file_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "thumbnail_file_format": { + "value": "png", + "type": "string", + "required": true + }, + "minimum_thumbnail_height": { + "value": 32, + "type": "integer", + "required": false + }, + "minimum_thumbnail_width": { + "value": 32, + "type": "integer", + "required": false + }, + "maximum_thumbnail_height": { + "value": 256, + "type": "integer", + "required": false + }, + "maximum_thumbnail_width": { + "value": 256, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFileVersion", + "qualifiedName": "BoxApi.RetrieveFileVersion", + "fullyQualifiedName": "BoxApi.RetrieveFileVersion@1.0.0", + "description": "Retrieve a specific version of a file for premium Box users.\n\nUse this tool to fetch details about a specific version of a file stored on Box. Only applicable for Box users with premium accounts who have version tracking enabled.", + "parameters": [ + { + "name": "unique_file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a file on Box. Obtainable from the file's URL (e.g., '123' in 'https://*.app.box.com/files/123').", + "enum": null, + "inferrable": true + }, + { + "name": "file_version_identifier", + "type": "string", + "required": true, + "description": "The unique ID representing the specific version of a file to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of additional attributes to include in the response. Specify as an array of strings. Only fields specified will be returned, along with the mini representation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id_versions_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveFileVersion", + "parameters": { + "unique_file_identifier": { + "value": "123", + "type": "string", + "required": true + }, + "file_version_identifier": { + "value": "456", + "type": "string", + "required": true + }, + "include_additional_attributes": { + "value": ["size", "modified_at", "name"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFileVersionLegalHolds", + "qualifiedName": "BoxApi.RetrieveFileVersionLegalHolds", + "fullyQualifiedName": "BoxApi.RetrieveFileVersionLegalHolds@1.0.0", + "description": "Get details of legal holds on a specific file version.\n\nUse this tool to retrieve information about legal hold policies assigned to a specific file version. This is useful for compliance and legal purposes when you need to know which legal holds are applied.", + "parameters": [ + { + "name": "file_version_legal_hold_id", + "type": "string", + "required": true, + "description": "The unique identifier of the file version legal hold to retrieve specific legal hold policy details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_file_version_legal_holds_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveFileVersionLegalHolds", + "parameters": { + "file_version_legal_hold_id": { + "value": "abc123legalhold", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFolderItems", + "qualifiedName": "BoxApi.RetrieveFolderItems", + "fullyQualifiedName": "BoxApi.RetrieveFolderItems@1.0.0", + "description": "Retrieve items in a specified folder, including files and links.\n\nUse this tool to get a list of items such as files, folders, and web links contained within a specific folder. To obtain details about the folder itself, use a different endpoint.", + "parameters": [ + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "Unique ID of a folder. Obtainable from the folder's URL. Root folder ID is always '0'.", + "enum": null, + "inferrable": true + }, + { + "name": "included_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of attributes to include in the response. Specify fields normally omitted in standard responses or query metadata using the format 'metadata..'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Specifies the starting point for marker-based pagination. Requires 'usemarker' to be set to true.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_item_offset", + "type": "integer", + "required": false, + "description": "Specifies the starting point for the items to be returned. Must be an integer and cannot exceed 10000, or a 400 response is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page. Specify an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_attribute", + "type": "string", + "required": false, + "description": "Specifies the secondary attribute for sorting folder items. Options: 'id', 'name', 'date', or 'size'. Not supported for marker-based pagination on root folders.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The direction to sort results: alphabetical ascending (ASC) or descending (DESC).", + "enum": null, + "inferrable": true + }, + { + "name": "shared_link_credentials", + "type": "string", + "required": false, + "description": "Provide the shared link URL and optional password to access items not explicitly shared with a user. Use 'shared_link=[link]' or 'shared_link=[link]&shared_link_password=[password]'.", + "enum": null, + "inferrable": true + }, + { + "name": "use_marker_based_pagination", + "type": "boolean", + "required": false, + "description": "Set to true to enable marker-based pagination, which returns a marker for fetching the next page. Only one pagination method can be active at a time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_folders_id_items'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveFolderItems", + "parameters": { + "folder_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "included_attributes": { + "value": [ + "metadata.global.created_at", + "metadata.custom.description" + ], + "type": "array", + "required": false + }, + "pagination_start_marker": { + "value": "marker123", + "type": "string", + "required": false + }, + "starting_item_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_attribute": { + "value": "name", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "ASC", + "type": "string", + "required": false + }, + "shared_link_credentials": { + "value": "shared_link=https://example.com/shared&shared_link_password=password123", + "type": "string", + "required": false + }, + "use_marker_based_pagination": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFolderLockDetails", + "qualifiedName": "BoxApi.RetrieveFolderLockDetails", + "fullyQualifiedName": "BoxApi.RetrieveFolderLockDetails@1.0.0", + "description": "Retrieve lock details for a specific folder.\n\nUse this tool to get information about locks on a folder. Authentication as the owner or co-owner is required.", + "parameters": [ + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a folder. Obtainable by visiting the folder URL in the Box web app. The root folder is ID '0'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_folder_locks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveFolderLockDetails", + "parameters": { + "folder_identifier": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFolderMetadata", + "qualifiedName": "BoxApi.RetrieveFolderMetadata", + "fullyQualifiedName": "BoxApi.RetrieveFolderMetadata@1.0.0", + "description": "Retrieve all metadata for a specific folder.\n\nUse this tool to get metadata details for any folder except the root folder.", + "parameters": [ + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a folder, excluding the root folder with ID `0`. Obtainable from the URL when viewing a folder in Box.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_folders_id_metadata'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveFolderMetadata", + "parameters": { + "folder_identifier": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveGlobalMetadataTemplates", + "qualifiedName": "BoxApi.RetrieveGlobalMetadataTemplates", + "fullyQualifiedName": "BoxApi.RetrieveGlobalMetadataTemplates@1.0.0", + "description": "Fetches global metadata templates from Box.\n\nUse this tool to retrieve all available global metadata templates provided by Box for enterprises.", + "parameters": [ + { + "name": "pagination_start_marker", + "type": "string", + "required": false, + "description": "Specifies the position marker to begin returning results for paginated data.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of metadata templates to return per page from the Box global templates.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_metadata_templates_global'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveGlobalMetadataTemplates", + "parameters": { + "pagination_start_marker": { + "value": "marker123", + "type": "string", + "required": false + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveGroupInfo", + "qualifiedName": "BoxApi.RetrieveGroupInfo", + "fullyQualifiedName": "BoxApi.RetrieveGroupInfo@1.0.0", + "description": "Retrieve detailed information about a specified group.\n\nThis tool fetches information about a group from Box. It's intended for use by group members or users with admin-level permissions.", + "parameters": [ + { + "name": "group_id", + "type": "string", + "required": true, + "description": "The unique identifier of the group to retrieve information for. Ensure the user has the necessary permissions.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attributes to include in the response. Only specified fields will be returned alongside default mini representation fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_groups_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveGroupInfo", + "parameters": { + "group_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "include_additional_fields": { + "value": ["description", "created_at", "updated_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveGroupMembership", + "qualifiedName": "BoxApi.RetrieveGroupMembership", + "fullyQualifiedName": "BoxApi.RetrieveGroupMembership@1.0.0", + "description": "Fetch details of a specific group membership.\n\nThis tool retrieves details for a specific group membership. It should be called by group admins or users with admin-level permissions to access membership information.", + "parameters": [ + { + "name": "group_membership_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific group membership to retrieve. Only admins or users with admin-level permissions can access this information.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of specific attributes to include in the response, overriding standard fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_group_memberships_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveGroupMembership", + "parameters": { + "group_membership_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "include_fields_list": { + "value": ["member_id", "role", "join_date"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveGroupMemberships", + "qualifiedName": "BoxApi.RetrieveGroupMemberships", + "fullyQualifiedName": "BoxApi.RetrieveGroupMemberships@1.0.0", + "description": "Fetch members of a specified group.\n\nRetrieves all the members of a specified group. This tool should be called when you need to get a list of users in a group. Note that access is restricted to members of the group or users with admin-level permissions.", + "parameters": [ + { + "name": "group_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the group to fetch its members. Only members or admins can access this.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of members to retrieve per page.", + "enum": null, + "inferrable": true + }, + { + "name": "response_offset", + "type": "integer", + "required": false, + "description": "The starting point for retrieving members. Must not exceed 10000 to avoid errors.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_groups_id_memberships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveGroupMemberships", + "parameters": { + "group_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "max_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "response_offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLegalHoldPolicies", + "qualifiedName": "BoxApi.RetrieveLegalHoldPolicies", + "fullyQualifiedName": "BoxApi.RetrieveLegalHoldPolicies@1.0.0", + "description": "Retrieve a list of enterprise legal hold policies.\n\nUse this tool to obtain a list of legal hold policies associated with an enterprise. Ideal for managing or reviewing legal compliance requirements.", + "parameters": [ + { + "name": "policy_name_prefix", + "type": "string", + "required": false, + "description": "Limits results to policies where names start with this term. It's case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "response_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attributes to include in the response. Only the specified fields and mini representation fields will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "The position marker to start returning results, used for marker-based pagination. Requires `usemarker` to be `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page. This controls the number of legal hold policies retrieved in a single request.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_legal_hold_policies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveLegalHoldPolicies", + "parameters": { + "policy_name_prefix": { + "value": "Compliance", + "type": "string", + "required": false + }, + "response_attributes": { + "value": ["id", "name", "created_at"], + "type": "array", + "required": false + }, + "pagination_marker": { + "value": "12345", + "type": "string", + "required": false + }, + "maximum_items_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLegalHoldPolicy", + "qualifiedName": "BoxApi.RetrieveLegalHoldPolicy", + "fullyQualifiedName": "BoxApi.RetrieveLegalHoldPolicy@1.0.0", + "description": "Retrieve information about a specific legal hold policy.\n\nThis tool is used to fetch details of a legal hold policy based on its ID. It should be called when users need to access information about a particular legal hold policy.", + "parameters": [ + { + "name": "legal_hold_policy_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific legal hold policy to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_legal_hold_policies_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveLegalHoldPolicy", + "parameters": { + "legal_hold_policy_id": { + "value": "abc123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLegalHoldPolicyAssignment", + "qualifiedName": "BoxApi.RetrieveLegalHoldPolicyAssignment", + "fullyQualifiedName": "BoxApi.RetrieveLegalHoldPolicyAssignment@1.0.0", + "description": "Retrieve details of a specific legal hold policy assignment.\n\nUse this tool to get information about a specific legal hold policy assignment by its ID. It provides details such as the policy name, status, and related information.", + "parameters": [ + { + "name": "legal_hold_policy_assignment_id", + "type": "string", + "required": true, + "description": "The unique identifier for the legal hold policy assignment to retrieve details about.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_legal_hold_policy_assignments_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveLegalHoldPolicyAssignment", + "parameters": { + "legal_hold_policy_assignment_id": { + "value": "12345678-abcde-90fgh-ijkl-1234567890mn", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveMetadataCascadePolicy", + "qualifiedName": "BoxApi.RetrieveMetadataCascadePolicy", + "fullyQualifiedName": "BoxApi.RetrieveMetadataCascadePolicy@1.0.0", + "description": "Retrieve a specific metadata cascade policy for a folder.\n\nThis tool retrieves detailed information about a specific metadata cascade policy that is assigned to a folder. Use this when you need to access the policy information by its unique ID.", + "parameters": [ + { + "name": "metadata_cascade_policy_id", + "type": "string", + "required": true, + "description": "The unique identifier for the metadata cascade policy to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_metadata_cascade_policies_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveMetadataCascadePolicy", + "parameters": { + "metadata_cascade_policy_id": { + "value": "abc12345-def6-7890-ghij-klmnopqrstuv", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveMetadataTemplate", + "qualifiedName": "BoxApi.RetrieveMetadataTemplate", + "fullyQualifiedName": "BoxApi.RetrieveMetadataTemplate@1.0.0", + "description": "Retrieve a metadata template by scope and template key.\n\nThis tool retrieves a metadata template using its `scope` and `templateKey`. It is useful for accessing specific template details for Box. To find these values, list all templates for an enterprise or globally, or list those applied to specific files or folders.", + "parameters": [ + { + "name": "metadata_template_scope", + "type": "string", + "required": true, + "description": "Specifies the scope for the metadata template. Choose between 'global' or 'enterprise'.", + "enum": null, + "inferrable": true + }, + { + "name": "metadata_template_name", + "type": "string", + "required": true, + "description": "The name of the metadata template to retrieve its details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_metadata_templates_id_id_schema'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveMetadataTemplate", + "parameters": { + "metadata_template_scope": { + "value": "enterprise", + "type": "string", + "required": true + }, + "metadata_template_name": { + "value": "Project Overview", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveRetentionPolicyAssignment", + "qualifiedName": "BoxApi.RetrieveRetentionPolicyAssignment", + "fullyQualifiedName": "BoxApi.RetrieveRetentionPolicyAssignment@1.0.0", + "description": "Fetch details of a retention policy assignment by ID.\n\nUse this tool to retrieve information about a specific retention policy assignment by providing the assignment ID. Useful for managing and reviewing data retention policies in Box.", + "parameters": [ + { + "name": "retention_policy_assignment_id", + "type": "string", + "required": true, + "description": "The ID of the specific retention policy assignment to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attributes to include in the response. If specified, standard fields are excluded unless explicitly mentioned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_retention_policy_assignments_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveRetentionPolicyAssignment", + "parameters": { + "retention_policy_assignment_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "include_fields_in_response": { + "value": ["name", "created_at", "status"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSharedFileInfo", + "qualifiedName": "BoxApi.RetrieveSharedFileInfo", + "fullyQualifiedName": "BoxApi.RetrieveSharedFileInfo@1.0.0", + "description": "Retrieve file information from a shared link.\n\nFetches details of a file using a shared link, which may originate within the current enterprise or externally. Useful for accessing file metadata when you only have the shared link.", + "parameters": [ + { + "name": "shared_link_credentials", + "type": "string", + "required": true, + "description": "A header string containing the shared link and optional password. Format: `shared_link=[link]&shared_link_password=[password]`.", + "enum": null, + "inferrable": true + }, + { + "name": "include_attributes_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attributes to include in the response, specifying non-standard fields and affecting returned data format.", + "enum": null, + "inferrable": true + }, + { + "name": "etag_for_change_detection", + "type": "string", + "required": false, + "description": "Pass the last observed etag value to return the item only if it has changed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shared_items'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveSharedFileInfo", + "parameters": { + "shared_link_credentials": { + "value": "shared_link=https://example.com/shared/file&shared_link_password=securePassword123", + "type": "string", + "required": true + }, + "include_attributes_in_response": { + "value": ["file_size", "owner_name", "last_modified"], + "type": "array", + "required": false + }, + "etag_for_change_detection": { + "value": "abc123etag", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSharedWebLink", + "qualifiedName": "BoxApi.RetrieveSharedWebLink", + "fullyQualifiedName": "BoxApi.RetrieveSharedWebLink@1.0.0", + "description": "Retrieve information about a shared web link using a shared link.\n\nThis tool is used to obtain details about a shared web link when you have a shared link, regardless of its origin.", + "parameters": [ + { + "name": "shared_link_header", + "type": "string", + "required": true, + "description": "A string containing the shared link and optional password in the format: 'shared_link=[link]&shared_link_password=[password]'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_attributes_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attributes to include in the response. Only specified fields and fields for the mini representation will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "etag_if_updated_only", + "type": "string", + "required": false, + "description": "Provide the last observed etag value to only return the web link if it has been updated. This helps avoid unnecessary data transfer if no changes have occurred.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shared_items#web_links'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveSharedWebLink", + "parameters": { + "shared_link_header": { + "value": "shared_link=https://example.box.com/s/abc123&shared_link_password=mySecretPassword", + "type": "string", + "required": true + }, + "include_attributes_in_response": { + "value": ["name", "created_at", "size"], + "type": "array", + "required": false + }, + "etag_if_updated_only": { + "value": "abc123etag", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveShieldListById", + "qualifiedName": "BoxApi.RetrieveShieldListById", + "fullyQualifiedName": "BoxApi.RetrieveShieldListById@1.0.0", + "description": "Retrieve details of a specific shield list by ID.\n\nUse this tool to get information about a shield list using its unique ID. It's called to access details of specific shield lists when needed.", + "parameters": [ + { + "name": "shield_list_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a shield list. Retrieve this ID by calling the endpoint that lists all shield lists for your enterprise.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_shield_lists_id_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveShieldListById", + "parameters": { + "shield_list_identifier": { + "value": "abcd1234-efgh-5678-ijkl-9012mnopqrstu", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSignRequestById", + "qualifiedName": "BoxApi.RetrieveSignRequestById", + "fullyQualifiedName": "BoxApi.RetrieveSignRequestById@1.0.0", + "description": "Retrieve details of a specific sign request by ID.\n\nUse this tool to obtain information about a sign request using its unique identifier.", + "parameters": [ + { + "name": "signature_request_id", + "type": "string", + "required": true, + "description": "The unique identifier for the signature request to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_sign_requests_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveSignRequestById", + "parameters": { + "signature_request_id": { + "value": "abc123def456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTaskAssignmentInfo", + "qualifiedName": "BoxApi.RetrieveTaskAssignmentInfo", + "fullyQualifiedName": "BoxApi.RetrieveTaskAssignmentInfo@1.0.0", + "description": "Retrieve detailed information about a task assignment.\n\nThis tool is used to get information on a specific task assignment by its ID. It can be called when users need to understand the status, assignee, or other details related to a task assignment.", + "parameters": [ + { + "name": "task_assignment_id", + "type": "string", + "required": true, + "description": "The unique identifier for the task assignment to retrieve its details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_task_assignments_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveTaskAssignmentInfo", + "parameters": { + "task_assignment_id": { + "value": "12345-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTaskInformation", + "qualifiedName": "BoxApi.RetrieveTaskInformation", + "fullyQualifiedName": "BoxApi.RetrieveTaskInformation@1.0.0", + "description": "Fetch details of a specific task by ID.\n\nThis tool retrieves information about a specific task using its ID. It should be called when you need detailed information about a particular task.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific task to retrieve information about.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_tasks_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveTaskInformation", + "parameters": { + "task_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTrashedFile", + "qualifiedName": "BoxApi.RetrieveTrashedFile", + "fullyQualifiedName": "BoxApi.RetrieveTrashedFile@1.0.0", + "description": "Retrieve a file that has been moved to the trash.\n\nThis tool retrieves details of a specific file that has been directly moved to the trash. It cannot be used if one of its parent folders was trashed instead.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of a file moved to trash, obtained from the file's URL in the web application.", + "enum": null, + "inferrable": true + }, + { + "name": "include_attributes_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attributes to include in the response. Only specified fields and mini representation fields are returned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_files_id_trash'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveTrashedFile", + "parameters": { + "file_identifier": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "include_attributes_in_response": { + "value": ["name", "size", "created_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTrashedFolder", + "qualifiedName": "BoxApi.RetrieveTrashedFolder", + "fullyQualifiedName": "BoxApi.RetrieveTrashedFolder@1.0.0", + "description": "Retrieve a specific folder from the trash.\n\nThis tool retrieves a folder that has been specifically moved to the trash. It can only be used if the folder itself, rather than a parent folder, is in the trash.", + "parameters": [ + { + "name": "folder_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a folder. Obtainable from the folder's URL in the web application. '0' represents the root folder.", + "enum": null, + "inferrable": true + }, + { + "name": "include_attributes_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attribute names to include in the response, specifying non-standard fields for retrieval.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_folders_id_trash'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveTrashedFolder", + "parameters": { + "folder_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "include_attributes_in_response": { + "value": ["name", "size", "created_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTrashedItems", + "qualifiedName": "BoxApi.RetrieveTrashedItems", + "fullyQualifiedName": "BoxApi.RetrieveTrashedItems@1.0.0", + "description": "Retrieve files and folders from the trash.\n\nUse this tool to access files and folders that have been moved to the trash. Supports retrieval of specific attributes and pagination options.", + "parameters": [ + { + "name": "include_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of attributes to include in the response, such as non-default fields. Only these and mini representation fields will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of items to return per page when retrieving trashed items. This value controls pagination to limit the items returned in a single request.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "The index to start retrieving items from the trash. Must be less than or equal to 10000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_marker", + "type": "string", + "required": false, + "description": "Defines the position marker for marker-based pagination. Requires 'use_marker_based_pagination' to be true.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The direction to sort results: 'ASC' for ascending or 'DESC' for descending alphabetical order.", + "enum": null, + "inferrable": true + }, + { + "name": "secondary_sort_attribute", + "type": "string", + "required": false, + "description": "Defines the second attribute by which items are sorted, such as 'name', 'date', or 'size'. Unsupported with marker-based pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "use_marker_based_pagination", + "type": "boolean", + "required": false, + "description": "Set to true to use marker-based pagination instead of offset-based pagination, allowing retrieval of the next page with a 'marker' field.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_folders_trash_items'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveTrashedItems", + "parameters": { + "include_attributes": { + "value": ["name", "date", "size"], + "type": "array", + "required": false + }, + "maximum_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_marker": { + "value": "marker123", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "ASC", + "type": "string", + "required": false + }, + "secondary_sort_attribute": { + "value": "date", + "type": "string", + "required": false + }, + "use_marker_based_pagination": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTrashedWebLink", + "qualifiedName": "BoxApi.RetrieveTrashedWebLink", + "fullyQualifiedName": "BoxApi.RetrieveTrashedWebLink@1.0.0", + "description": "Retrieves a web link that has been moved to the trash.\n\nUse this tool to get information about a specific web link that has been moved to the trash. Call this when you need to access details of a trashed web link by its ID.", + "parameters": [ + { + "name": "web_link_id", + "type": "string", + "required": true, + "description": "The unique identifier of the web link to retrieve from the trash.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of attributes to include in the response, overriding standard fields; only mini representation plus these fields will be returned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_web_links_id_trash'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveTrashedWebLink", + "parameters": { + "web_link_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "include_fields_in_response": { + "value": ["name", "url", "description"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveUserCollections", + "qualifiedName": "BoxApi.RetrieveUserCollections", + "fullyQualifiedName": "BoxApi.RetrieveUserCollections@1.0.0", + "description": "Retrieve collections for a user, including favorites.\n\nThis tool retrieves all collections for a specified user, currently supporting only the 'favorites' collection.", + "parameters": [ + { + "name": "requested_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attribute names to include in the response. Only specified fields will be returned along with the mini representation.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset of the item to start the response. Must be 10000 or less to avoid rejection with a 400 error.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per page when retrieving user collections.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_collections'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveUserCollections", + "parameters": { + "requested_fields": { + "value": ["id", "name", "created_at"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": 5000, + "type": "integer", + "required": false + }, + "maximum_items_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveWebLinkInfo", + "qualifiedName": "BoxApi.RetrieveWebLinkInfo", + "fullyQualifiedName": "BoxApi.RetrieveWebLinkInfo@1.0.0", + "description": "Retrieve information about a specific web link.\n\nThis tool is used to get details about a web link by its ID. Call this tool when you need information regarding a particular web link from the Box service.", + "parameters": [ + { + "name": "web_link_id", + "type": "string", + "required": true, + "description": "The unique identifier for the web link to retrieve information about.", + "enum": null, + "inferrable": true + }, + { + "name": "shared_link_access_details", + "type": "string", + "required": false, + "description": "The URL and optional password for accessing the shared link, formatted as `shared_link=[link]` or `shared_link=[link]&shared_link_password=[password]`. Use this to access items not explicitly shared with a user.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get_web_links_id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.RetrieveWebLinkInfo", + "parameters": { + "web_link_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "shared_link_access_details": { + "value": "shared_link=https://example.com&shared_link_password=securePassword123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnmarkBoxDocTemplate", + "qualifiedName": "BoxApi.UnmarkBoxDocTemplate", + "fullyQualifiedName": "BoxApi.UnmarkBoxDocTemplate@1.0.0", + "description": "Unmarks a file as a Box Doc Gen template.\n\nThis tool should be called to remove the designation of a Box file as a Doc Gen template. It confirms whether the unmarking was successful.", + "parameters": [ + { + "name": "file_id_to_unmark", + "type": "string", + "required": true, + "description": "The ID of the file that will no longer be marked as a Box Doc Gen template.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_docgen_templates_id_v2025.0'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "BoxApi.UnmarkBoxDocTemplate", + "parameters": { + "file_id_to_unmark": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:27:32.201Z", + "summary": "BoxApi provides tools enabling LLMs to interact directly with the Box API, facilitating various file and folder operations within a Box environment.\n\n### Capabilities\n- Manage files, folders, and metadata.\n- Collaborate with users through invitations and shared links.\n- Monitor upload sessions, download statuses, and event logs.\n- Handle legal hold and retention policies.\n- Integrate with third-party applications like Slack and Teams.\n\n### OAuth\n- **Provider**: Unknown\n- **Scopes**: None\n\n### Secrets\n- No secrets are required for using this toolkit." +} diff --git a/data/toolkits/brightdata.json b/data/toolkits/brightdata.json new file mode 100644 index 000000000..a754dc99b --- /dev/null +++ b/data/toolkits/brightdata.json @@ -0,0 +1,355 @@ +{ + "id": "Brightdata", + "label": "Bright Data", + "version": "0.2.0", + "description": "Search, Crawl and Scrape any site, at scale, without getting blocked", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/brightdata.svg", + "isBYOC": true, + "isPro": false, + "type": "community", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/brightdata", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "ScrapeAsMarkdown", + "qualifiedName": "Brightdata.ScrapeAsMarkdown", + "fullyQualifiedName": "Brightdata.ScrapeAsMarkdown@0.2.0", + "description": " Scrape a webpage and return content in Markdown format using Bright Data.\n\n Examples:\n scrape_as_markdown(\"https://example.com\") -> \"# Example Page\n\nContent...\"\n scrape_as_markdown(\"https://news.ycombinator.com\") -> \"# Hacker News\n...\"\n ", + "parameters": [ + { + "name": "url", + "type": "string", + "required": true, + "description": "URL to scrape", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["BRIGHTDATA_API_KEY", "BRIGHTDATA_ZONE"], + "secretsInfo": [ + { + "name": "BRIGHTDATA_API_KEY", + "type": "api_key" + }, + { + "name": "BRIGHTDATA_ZONE", + "type": "unknown" + } + ], + "output": { + "type": "string", + "description": "Scraped webpage content as Markdown" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Brightdata.ScrapeAsMarkdown", + "parameters": { + "url": { + "value": "https://example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchEngine", + "qualifiedName": "Brightdata.SearchEngine", + "fullyQualifiedName": "Brightdata.SearchEngine@0.2.0", + "description": " Search using Google, Bing, or Yandex with advanced parameters using Bright Data.\n\n Examples:\n search_engine(\"climate change\") -> \"# Search Results\n\n## Climate Change - Wikipedia\n...\"\n search_engine(\"Python tutorials\", engine=\"bing\", num_results=5) -> \"# Bing Results\n...\"\n search_engine(\"cats\", search_type=\"images\", country_code=\"us\") -> \"# Image Results\n...\"\n ", + "parameters": [ + { + "name": "query", + "type": "string", + "required": true, + "description": "Search query", + "enum": null, + "inferrable": true + }, + { + "name": "engine", + "type": "string", + "required": false, + "description": "Search engine to use", + "enum": ["google", "bing", "yandex"], + "inferrable": true + }, + { + "name": "language", + "type": "string", + "required": false, + "description": "Two-letter language code", + "enum": null, + "inferrable": true + }, + { + "name": "country_code", + "type": "string", + "required": false, + "description": "Two-letter country code", + "enum": null, + "inferrable": true + }, + { + "name": "search_type", + "type": "string", + "required": false, + "description": "Type of search", + "enum": ["images", "shopping", "news", "jobs"], + "inferrable": true + }, + { + "name": "start", + "type": "integer", + "required": false, + "description": "Results pagination offset", + "enum": null, + "inferrable": true + }, + { + "name": "num_results", + "type": "integer", + "required": false, + "description": "Number of results to return. The default is 10", + "enum": null, + "inferrable": true + }, + { + "name": "location", + "type": "string", + "required": false, + "description": "Location for search results", + "enum": null, + "inferrable": true + }, + { + "name": "device", + "type": "string", + "required": false, + "description": "Device type", + "enum": [ + "mobile", + "ios", + "iphone", + "ipad", + "android", + "android_tablet" + ], + "inferrable": true + }, + { + "name": "return_json", + "type": "boolean", + "required": false, + "description": "Return JSON instead of Markdown", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["BRIGHTDATA_API_KEY", "BRIGHTDATA_ZONE"], + "secretsInfo": [ + { + "name": "BRIGHTDATA_API_KEY", + "type": "api_key" + }, + { + "name": "BRIGHTDATA_ZONE", + "type": "unknown" + } + ], + "output": { + "type": "string", + "description": "Search results as Markdown or JSON" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Brightdata.SearchEngine", + "parameters": { + "query": { + "value": "climate change", + "type": "string", + "required": true + }, + "engine": { + "value": "google", + "type": "string", + "required": false + }, + "language": { + "value": "en", + "type": "string", + "required": false + }, + "country_code": { + "value": "us", + "type": "string", + "required": false + }, + "search_type": { + "value": "web", + "type": "string", + "required": false + }, + "start": { + "value": 0, + "type": "integer", + "required": false + }, + "num_results": { + "value": 10, + "type": "integer", + "required": false + }, + "location": { + "value": "California", + "type": "string", + "required": false + }, + "device": { + "value": "desktop", + "type": "string", + "required": false + }, + "return_json": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "WebDataFeed", + "qualifiedName": "Brightdata.WebDataFeed", + "fullyQualifiedName": "Brightdata.WebDataFeed@0.2.0", + "description": "Extract structured data from various websites like LinkedIn, Amazon, Instagram, etc.\nNEVER MADE UP LINKS - IF LINKS ARE NEEDED, EXECUTE search_engine FIRST.\nSupported source types:\n- amazon_product, amazon_product_reviews\n- linkedin_person_profile, linkedin_company_profile\n- zoominfo_company_profile\n- instagram_profiles, instagram_posts, instagram_reels, instagram_comments\n- facebook_posts, facebook_marketplace_listings, facebook_company_reviews\n- x_posts\n- zillow_properties_listing\n- booking_hotel_listings\n- youtube_videos\n\nExamples:\n web_data_feed(\"amazon_product\", \"https://amazon.com/dp/B08N5WRWNW\")\n -> \"{\"title\": \"Product Name\", ...}\"\n web_data_feed(\"linkedin_person_profile\", \"https://linkedin.com/in/johndoe\")\n -> \"{\"name\": \"John Doe\", ...}\"\n web_data_feed(\n \"facebook_company_reviews\", \"https://facebook.com/company\", num_of_reviews=50\n ) -> \"[{\"review\": \"...\", ...}]\"", + "parameters": [ + { + "name": "source_type", + "type": "string", + "required": true, + "description": "Type of data source", + "enum": [ + "amazon_product", + "amazon_product_reviews", + "linkedin_person_profile", + "linkedin_company_profile", + "zoominfo_company_profile", + "instagram_profiles", + "instagram_posts", + "instagram_reels", + "instagram_comments", + "facebook_posts", + "facebook_marketplace_listings", + "facebook_company_reviews", + "x_posts", + "zillow_properties_listing", + "booking_hotel_listings", + "youtube_videos" + ], + "inferrable": true + }, + { + "name": "url", + "type": "string", + "required": true, + "description": "URL of the web resource to extract data from", + "enum": null, + "inferrable": true + }, + { + "name": "num_of_reviews", + "type": "integer", + "required": false, + "description": "Number of reviews to retrieve. Only applicable for facebook_company_reviews. Default is None", + "enum": null, + "inferrable": true + }, + { + "name": "timeout", + "type": "integer", + "required": false, + "description": "Maximum time in seconds to wait for data retrieval", + "enum": null, + "inferrable": true + }, + { + "name": "polling_interval", + "type": "integer", + "required": false, + "description": "Time in seconds between polling attempts", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["BRIGHTDATA_API_KEY"], + "secretsInfo": [ + { + "name": "BRIGHTDATA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "Structured data from the requested source as JSON" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Brightdata.WebDataFeed", + "parameters": { + "source_type": { + "value": "amazon_product", + "type": "string", + "required": true + }, + "url": { + "value": "https://amazon.com/dp/B09G3HR42Z", + "type": "string", + "required": true + }, + "num_of_reviews": { + "value": 25, + "type": "integer", + "required": false + }, + "timeout": { + "value": 30, + "type": "integer", + "required": false + }, + "polling_interval": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## Secrets\n\nThis tool requires the following secrets:\n\n- `BRIGHTDATA_API_KEY`\n- `BRIGHTDATA_ZONE`\n\n### Auth\n\nThe Arcade Bright Data MCP Server uses [Bright Data](https://brightdata.com/) to access proxy networks and web scraping infrastructure.\n\n**Global Environment Variables:**\n\n- `BRIGHTDATA_API_KEY`: Your Bright Data API key. You can generate this from your [Bright Data dashboard](https://brightdata.com/cp/zones) under Account Settings → API Access.\n\n- `BRIGHTDATA_ZONE`: Your Bright Data zone name (e.g., `residential_proxy1`). This is the zone identifier you created in your Bright Data dashboard under Proxies & Scraping Infrastructure → Zones.\n\n**How to get your credentials:**\n\n1. **API Key**: Navigate to your [Bright Data Control Panel](https://brightdata.com/cp) → Settings → API Access → Generate API Token\n2. **Zone**: Go to Zones section in your dashboard, find your zone name in the format shown in the zone username: `brd-customer-{customer_id}-zone-{zone_name}`\n\nFor more details, see the [Bright Data API Documentation](https://docs.brightdata.com/api-reference).", + "header": "## Secrets" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:26:59.556Z" +} diff --git a/data/toolkits/calendlyapi.json b/data/toolkits/calendlyapi.json new file mode 100644 index 000000000..15ac5ae5e --- /dev/null +++ b/data/toolkits/calendlyapi.json @@ -0,0 +1,3341 @@ +{ + "id": "CalendlyApi", + "label": "Calendly API", + "version": "3.0.0", + "description": "Tools that enable LLMs to interact directly with the calendly API.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/calendly.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/calendly-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "calendly", + "allScopes": [] + }, + "tools": [ + { + "name": "CancelScheduledEvent", + "qualifiedName": "CalendlyApi.CancelScheduledEvent", + "fullyQualifiedName": "CalendlyApi.CancelScheduledEvent@3.0.0", + "description": "Cancels a specified scheduled event on Calendly.\n\nUse this tool to cancel a scheduled event by providing its unique identifier. It should be called when you need to remove an event from your calendar.", + "parameters": [ + { + "name": "event_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the event to be canceled.", + "enum": null, + "inferrable": true + }, + { + "name": "cancellation_reason", + "type": "string", + "required": false, + "description": "The reason for canceling the event. Provide a clear and concise explanation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-scheduled-event-cancellation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.CancelScheduledEvent", + "parameters": { + "event_unique_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "cancellation_reason": { + "value": "Scheduling conflict", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCustomShareLink", + "qualifiedName": "CalendlyApi.CreateCustomShareLink", + "fullyQualifiedName": "CalendlyApi.CreateCustomShareLink@3.0.0", + "description": "Create a shareable link for a customized event.\n\nUse this tool to generate a customized shareable link for one-on-one event types on Calendly. This tool should be called when you want to tailor event details for a specific invitee without creating a new event type. Note: Any details not specified will be inherited from the existing event.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-share'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.CreateCustomShareLink", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"event_type\":\"one_on_one\",\"duration\":30,\"location\":\"Zoom\",\"description\":\"Strategy meeting\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateEventInvitee", + "qualifiedName": "CalendlyApi.CreateEventInvitee", + "fullyQualifiedName": "CalendlyApi.CreateEventInvitee@3.0.0", + "description": "Create a new event invitee on Calendly.\n\nThis tool is used to create a new event invitee on Calendly. It triggers standard notifications, calendar invites, reschedules, and workflows as if booked via the Calendly interface. Note that only users on paid Calendly plans can access this feature.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-invitee'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.CreateEventInvitee", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"event_type\":\"meeting\",\"invitee_name\":\"John Doe\",\"invitee_email\":\"john.doe@example.com\",\"duration_minutes\":30}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateEventType", + "qualifiedName": "CalendlyApi.CreateEventType", + "fullyQualifiedName": "CalendlyApi.CreateEventType@3.0.0", + "description": "Create a new one-on-one event type in Calendly.\n\nThis tool is used to create a new one-on-one event type in Calendly. It is useful when scheduling personalized meetings or appointments.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-event-type'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.CreateEventType", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"One-on-One Meeting\",\"duration\":30,\"location\":\"Zoom\",\"description\":\"A personalized one-on-one meeting to discuss project updates.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOneOffEvent", + "qualifiedName": "CalendlyApi.CreateOneOffEvent", + "fullyQualifiedName": "CalendlyApi.CreateOneOffEvent@3.0.0", + "description": "Create a one-off event type in Calendly.\n\nThis tool is used to create a one-off event type in Calendly, allowing users to schedule unique events not linked to recurring event types.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-one-off-event-type'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.CreateOneOffEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"event_name\": \"Team Sync Meeting\", \"event_start\": \"2023-10-10T10:00:00Z\", \"event_duration\": 60, \"event_description\": \"Monthly sync meeting to align teams.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSchedulingLink", + "qualifiedName": "CalendlyApi.CreateSchedulingLink", + "fullyQualifiedName": "CalendlyApi.CreateSchedulingLink@3.0.0", + "description": "Creates a single-use scheduling link for appointments.", + "parameters": [ + { + "name": "maximum_event_count", + "type": "number", + "required": true, + "description": "The maximum number of events that can be scheduled using this link. Currently, only '1' is supported.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_owner_link", + "type": "string", + "required": true, + "description": "A link to the resource owning this scheduling link, typically an Event Type URL.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": true, + "description": "Resource type for the scheduling link. This is always 'EventType'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-scheduling-link'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.CreateSchedulingLink", + "parameters": { + "maximum_event_count": { + "value": 1, + "type": "integer", + "required": true + }, + "resource_owner_link": { + "value": "https://calendly.com/user/event-type-id", + "type": "string", + "required": true + }, + "resource_type": { + "value": "EventType", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateWebhookSubscription", + "qualifiedName": "CalendlyApi.CreateWebhookSubscription", + "fullyQualifiedName": "CalendlyApi.CreateWebhookSubscription@3.0.0", + "description": "Create a webhook subscription for events in Calendly.\n\nUse this tool to set up a webhook subscription for either an organization, user, or group. It triggers on specified events like invitee creation or cancellation. Useful for integrating Calendly events with other applications or systems.", + "parameters": [ + { + "name": "callback_url", + "type": "string", + "required": true, + "description": "The endpoint URL to receive POST requests for subscribed events in Calendly.", + "enum": null, + "inferrable": true + }, + { + "name": "event_subscriptions", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of user events to subscribe to. Examples include 'invitee.created', 'invitee.canceled', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_reference", + "type": "string", + "required": true, + "description": "The unique reference identifier for the organization associated with the webhook.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_subscription_scope", + "type": "string", + "required": true, + "description": "Specifies the scope of the webhook subscription: \"organization\", \"user\", or \"group\".", + "enum": null, + "inferrable": true + }, + { + "name": "group_reference", + "type": "string", + "required": false, + "description": "The unique reference to the group that the webhook will be tied to.", + "enum": null, + "inferrable": true + }, + { + "name": "user_reference", + "type": "string", + "required": false, + "description": "The unique reference or ID of the user for whom the webhook will be tied.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_signing_key", + "type": "string", + "required": false, + "description": "Optional secret key shared between your application and Calendly for verifying webhook signatures. Useful for ensuring webhook messages' authenticity.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createwebhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.CreateWebhookSubscription", + "parameters": { + "callback_url": { + "value": "https://example.com/webhook/callback", + "type": "string", + "required": true + }, + "event_subscriptions": { + "value": ["invitee.created", "invitee.canceled"], + "type": "array", + "required": true + }, + "organization_reference": { + "value": "org_12345", + "type": "string", + "required": true + }, + "webhook_subscription_scope": { + "value": "organization", + "type": "string", + "required": true + }, + "group_reference": { + "value": "group_67890", + "type": "string", + "required": false + }, + "user_reference": { + "value": "user_abcde", + "type": "string", + "required": false + }, + "webhook_signing_key": { + "value": "s3cr3tK3y", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteInviteeData", + "qualifiedName": "CalendlyApi.DeleteInviteeData", + "fullyQualifiedName": "CalendlyApi.DeleteInviteeData@3.0.0", + "description": "Request removal of invitee data from all booked events.\n\nUse this tool to submit a request for deleting an invitee's data from all previously booked events within your organization. It requires an Enterprise subscription and can take up to 7 days to complete.", + "parameters": [ + { + "name": "invitee_email_list", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of invitee emails to remove data for from all booked events. Each entry should be a valid email address.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-invitee-data'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.DeleteInviteeData", + "parameters": { + "invitee_email_list": { + "value": [ + "john.doe@example.com", + "jane.smith@example.com", + "alice.johnson@example.com" + ], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteScheduledEventsData", + "qualifiedName": "CalendlyApi.DeleteScheduledEventsData", + "fullyQualifiedName": "CalendlyApi.DeleteScheduledEventsData@3.0.0", + "description": "Delete scheduled events data within a past time range.\n\nUse this tool to request the deletion of scheduled events data for your organization within a specified past time range, up to 24 months. Completion may take up to 7 days. Requires an Enterprise subscription.", + "parameters": [ + { + "name": "deletion_start_time_utc", + "type": "string", + "required": true, + "description": "The UTC timestamp to start deleting scheduled events data. Must be in the past and not older than 24 months.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time_utc", + "type": "string", + "required": true, + "description": "The UTC timestamp marking the end of the time range for data deletion, in the past, no greater than 24 months ago.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-scheduled-event-data'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.DeleteScheduledEventsData", + "parameters": { + "deletion_start_time_utc": { + "value": "2021-10-01T00:00:00Z", + "type": "string", + "required": true + }, + "end_time_utc": { + "value": "2022-10-01T00:00:00Z", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteWebhookSubscription", + "qualifiedName": "CalendlyApi.DeleteWebhookSubscription", + "fullyQualifiedName": "CalendlyApi.DeleteWebhookSubscription@3.0.0", + "description": "Delete a webhook subscription on Calendly.\n\nUse this tool to delete a specific webhook subscription from Calendly by providing the webhook UUID.", + "parameters": [ + { + "name": "webhook_uuid", + "type": "string", + "required": true, + "description": "The unique identifier for the webhook subscription to be deleted. This is required to specify which subscription will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-webhook-subscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.DeleteWebhookSubscription", + "parameters": { + "webhook_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchEventTypeHosts", + "qualifiedName": "CalendlyApi.FetchEventTypeHosts", + "fullyQualifiedName": "CalendlyApi.FetchEventTypeHosts@3.0.0", + "description": "Fetches a list of event type hosts from Calendly.\n\nUse this tool to retrieve a list of hosts for event types on Calendly. This can be useful to determine availability or to manage event type assignments.", + "parameters": [ + { + "name": "event_type_uri", + "type": "string", + "required": true, + "description": "The URI associated with the event type to identify the hosts.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_rows_to_return", + "type": "number", + "required": false, + "description": "Specify the number of rows to fetch from the list of event type hosts. This determines the size of the dataset returned.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token for fetching the next or previous portion of the event type host list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-event-type-memberships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.FetchEventTypeHosts", + "parameters": { + "event_type_uri": { + "value": "https://calendly.com/api/v1/event_types/12345", + "type": "string", + "required": true + }, + "number_of_rows_to_return": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchOutgoingCommunications", + "qualifiedName": "CalendlyApi.FetchOutgoingCommunications", + "fullyQualifiedName": "CalendlyApi.FetchOutgoingCommunications@3.0.0", + "description": "Retrieve outgoing SMS and email communications.\n\nFetches a list of outgoing SMS and email communications for users with an Enterprise subscription.", + "parameters": [ + { + "name": "organization_uri", + "type": "string", + "required": true, + "description": "Return outgoing communications from the organization associated with this URI. This should be a valid URI string.", + "enum": null, + "inferrable": true + }, + { + "name": "created_before", + "type": "string", + "required": false, + "description": "Include outgoing communications created before this time in UTC format (e.g., \"2020-01-02T03:04:05.678Z\").", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "integer", + "required": false, + "description": "The maximum number of outgoing communications records to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token for fetching the next set of outgoing communications.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_utc", + "type": "string", + "required": false, + "description": "Include communications created after this UTC time (e.g. \"2020-01-02T03:04:05.678Z\").", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-outgoing-communications'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.FetchOutgoingCommunications", + "parameters": { + "organization_uri": { + "value": "https://example.organization.com", + "type": "string", + "required": true + }, + "created_before": { + "value": "2023-10-01T12:00:00.000Z", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "start_time_utc": { + "value": "2023-09-01T00:00:00.000Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCalendlyUserInfo", + "qualifiedName": "CalendlyApi.GetCalendlyUserInfo", + "fullyQualifiedName": "CalendlyApi.GetCalendlyUserInfo@3.0.0", + "description": "Retrieve user information from Calendly.\n\nCall this tool to get detailed information about a specific Calendly user using their UUID.", + "parameters": [ + { + "name": "user_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the user. Use 'me' to reference the caller.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetCalendlyUserInfo", + "parameters": { + "user_unique_identifier": { + "value": "me", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEventAvailability", + "qualifiedName": "CalendlyApi.GetEventAvailability", + "fullyQualifiedName": "CalendlyApi.GetEventAvailability@3.0.0", + "description": "Retrieve availability for a specific event type.\n\nThis tool returns the availability schedule for a given event type. It should be called when you need to check open time slots for booking or planning purposes.", + "parameters": [ + { + "name": "event_type_uri", + "type": "string", + "required": true, + "description": "The URI associated with the specific event type to retrieve availability.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-event-type-availability'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetEventAvailability", + "parameters": { + "event_type_uri": { + "value": "https://calendly.com/api/v1/events/123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEventDetails", + "qualifiedName": "CalendlyApi.GetEventDetails", + "fullyQualifiedName": "CalendlyApi.GetEventDetails@3.0.0", + "description": "Retrieve information about a specified scheduled event.\n\nUse this tool to get details about a specific event scheduled in Calendly, using the event's unique identifier.", + "parameters": [ + { + "name": "event_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the event to retrieve details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-scheduled-event'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetEventDetails", + "parameters": { + "event_unique_identifier": { + "value": "e12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEventInviteeInfo", + "qualifiedName": "CalendlyApi.GetEventInviteeInfo", + "fullyQualifiedName": "CalendlyApi.GetEventInviteeInfo@3.0.0", + "description": "Fetch information about a specific event invitee.\n\nUse this tool to obtain detailed information about an invitee for a particular scheduled event on Calendly. Call this when you need specifics about a person invited to an event, identified by event and invitee UUIDs.", + "parameters": [ + { + "name": "event_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the specific Calendly event. Use this to specify which event's invitee details to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "invitee_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the invitee for a specific event.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-scheduled-event-invitees'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetEventInviteeInfo", + "parameters": { + "event_unique_identifier": { + "value": "abc123event", + "type": "string", + "required": true + }, + "invitee_unique_identifier": { + "value": "xyz789invitee", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEventTypeInfo", + "qualifiedName": "CalendlyApi.GetEventTypeInfo", + "fullyQualifiedName": "CalendlyApi.GetEventTypeInfo@3.0.0", + "description": "Retrieve information about a specified event type on Calendly.\n\nUse this tool to obtain detailed information about a specific event type by providing its unique identifier (UUID). It's useful for understanding the configuration and settings of different event types in your Calendly account.", + "parameters": [ + { + "name": "event_type_uuid", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) for the event type to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-event-type'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetEventTypeInfo", + "parameters": { + "event_type_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGroupInfo", + "qualifiedName": "CalendlyApi.GetGroupInfo", + "fullyQualifiedName": "CalendlyApi.GetGroupInfo@3.0.0", + "description": "Retrieve information about a specified group in Calendly.\n\nUse this tool to get detailed information about a specific group in Calendly by providing the group's UUID.", + "parameters": [ + { + "name": "group_unique_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the group whose information is to be retrieved from Calendly.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetGroupInfo", + "parameters": { + "group_unique_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGroupList", + "qualifiedName": "CalendlyApi.GetGroupList", + "fullyQualifiedName": "CalendlyApi.GetGroupList@3.0.0", + "description": "Retrieve a list of groups from Calendly.\n\nUse this tool to obtain information about the various groups available in Calendly. It returns a list detailing these groups.", + "parameters": [ + { + "name": "organization_uri", + "type": "string", + "required": true, + "description": "URI for the organization to return associated groups from Calendly.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_rows", + "type": "number", + "required": false, + "description": "Specify the number of rows (groups) to return from the query. Used to limit results.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token for retrieving the next or previous set of groups in the list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-groups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetGroupList", + "parameters": { + "organization_uri": { + "value": "https://api.calendly.com/organizations/abc123", + "type": "string", + "required": true + }, + "number_of_rows": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "nextPageToken", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGroupRelationshipByUuid", + "qualifiedName": "CalendlyApi.GetGroupRelationshipByUuid", + "fullyQualifiedName": "CalendlyApi.GetGroupRelationshipByUuid@3.0.0", + "description": "Retrieve group relationship details using a UUID.\n\nThis tool fetches the details of a group relationship in Calendly by using the unique identifier (UUID). Use it when you need to access specific group relationship information.", + "parameters": [ + { + "name": "group_relationship_uuid", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the group relationship to retrieve details for. Use this to specify which relationship to fetch.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-group-relationship'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetGroupRelationshipByUuid", + "parameters": { + "group_relationship_uuid": { + "value": "d67f9caa-7b5e-4c9d-88f0-c3e7bfbcec1c", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetInviteeNoShowDetails", + "qualifiedName": "CalendlyApi.GetInviteeNoShowDetails", + "fullyQualifiedName": "CalendlyApi.GetInviteeNoShowDetails@3.0.0", + "description": "Fetch details of a specified invitee no-show.\n\nUse this tool to retrieve detailed information about an invitee who did not show up for a scheduled event. This is helpful for managing scheduling follow-ups or analyzing attendance patterns.", + "parameters": [ + { + "name": "invitee_uuid", + "type": "string", + "required": true, + "description": "The unique identifier for the invitee whose no-show information is being requested.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-invitee-no-show'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetInviteeNoShowDetails", + "parameters": { + "invitee_uuid": { + "value": "f9eecf80-4bae-4726-8f09-839f012e7085", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrganizationDetails", + "qualifiedName": "CalendlyApi.GetOrganizationDetails", + "fullyQualifiedName": "CalendlyApi.GetOrganizationDetails@3.0.0", + "description": "Retrieve details of a specified organization using UUID.\n\nCall this tool to obtain comprehensive information about an organization by providing its unique UUID.", + "parameters": [ + { + "name": "organization_uuid", + "type": "string", + "required": true, + "description": "The unique identifier for the organization to retrieve details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-organization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetOrganizationDetails", + "parameters": { + "organization_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrganizationInvitation", + "qualifiedName": "CalendlyApi.GetOrganizationInvitation", + "fullyQualifiedName": "CalendlyApi.GetOrganizationInvitation@3.0.0", + "description": "Fetches details of an organization's invitation.\n\nUse this tool to retrieve information about an invitation sent within an organization to its members. This can help track invitation status and details.", + "parameters": [ + { + "name": "organization_invitation_uuid", + "type": "string", + "required": true, + "description": "The unique identifier of the organization's invitation. Provide this to retrieve specific invitation details.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-organization-invitation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetOrganizationInvitation", + "parameters": { + "organization_invitation_uuid": { + "value": "e0b5c06e-329e-4fdc-9e23-88c0e11f0a07", + "type": "string", + "required": true + }, + "organization_unique_id": { + "value": "org_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrganizationMembershipInfo", + "qualifiedName": "CalendlyApi.GetOrganizationMembershipInfo", + "fullyQualifiedName": "CalendlyApi.GetOrganizationMembershipInfo@3.0.0", + "description": "Retrieve details about a user's organization membership in Calendly.\n\nUse this tool to get information about a specific user's membership within an organization on Calendly. This tool can be called when you need detailed membership data for a given user, identified by their unique UUID.", + "parameters": [ + { + "name": "organization_membership_uuid", + "type": "string", + "required": true, + "description": "The unique identifier for the organization's membership to retrieve details for a user.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-organization-membership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetOrganizationMembershipInfo", + "parameters": { + "organization_membership_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrganizationMemberships", + "qualifiedName": "CalendlyApi.GetOrganizationMemberships", + "fullyQualifiedName": "CalendlyApi.GetOrganizationMemberships@3.0.0", + "description": "Retrieve organization memberships and related details.\n\nUse this tool to list the organization memberships for all users in an organization. You can also retrieve your organization's URI using this endpoint.", + "parameters": [ + { + "name": "filter_by_email", + "type": "string", + "required": false, + "description": "A specific email address to filter the organization memberships by. Only memberships associated with this email will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_organization", + "type": "string", + "required": false, + "description": "Filter the results by organization. Provide the organization's unique identifier or name to retrieve specific memberships.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_role", + "type": "string", + "required": false, + "description": "Filter the results by role. Options: 'owner', 'admin', 'user'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_user", + "type": "string", + "required": false, + "description": "Filter the results by a specific user. Provide the user's identifier to narrow the search.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "Token used to retrieve the next or previous set of results for paginated data.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_rows_to_return", + "type": "number", + "required": false, + "description": "Specify the number of rows to return in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-organization-memberships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetOrganizationMemberships", + "parameters": { + "filter_by_email": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "filter_by_organization": { + "value": "org-12345", + "type": "string", + "required": false + }, + "filter_by_role": { + "value": "admin", + "type": "string", + "required": false + }, + "filter_by_user": { + "value": "user-67890", + "type": "string", + "required": false + }, + "next_page_token": { + "value": "nextPageToken123", + "type": "string", + "required": false + }, + "number_of_rows_to_return": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRoutingForm", + "qualifiedName": "CalendlyApi.GetRoutingForm", + "fullyQualifiedName": "CalendlyApi.GetRoutingForm@3.0.0", + "description": "Retrieve details of a specified routing form.\n\nCall this tool to obtain information about a specific routing form using its UUID.", + "parameters": [ + { + "name": "routing_form_uuid", + "type": "string", + "required": true, + "description": "A unique identifier for the routing form to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-routing-form'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetRoutingForm", + "parameters": { + "routing_form_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRoutingFormSubmission", + "qualifiedName": "CalendlyApi.GetRoutingFormSubmission", + "fullyQualifiedName": "CalendlyApi.GetRoutingFormSubmission@3.0.0", + "description": "Retrieve a specified Routing Form Submission by UUID.\n\nThis tool retrieves information about a specific routing form submission identified by its unique UUID. Use it to access details of a specific form submission in Calendly.", + "parameters": [ + { + "name": "submission_uuid", + "type": "string", + "required": true, + "description": "Unique identifier for the routing form submission to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-routing-form-submission'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetRoutingFormSubmission", + "parameters": { + "submission_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSampleWebhookData", + "qualifiedName": "CalendlyApi.GetSampleWebhookData", + "fullyQualifiedName": "CalendlyApi.GetSampleWebhookData@3.0.0", + "description": "Retrieve sample webhook data for testing integrations.\n\nUse this tool to obtain a sample webhook payload from Calendly for testing your webhook subscription integration. This is useful for developers who want to ensure their systems can properly handle the data structure and content sent by Calendly webhooks before going live.", + "parameters": [ + { + "name": "organization_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the organization. It specifies which organization the sample webhook data belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_event_type", + "type": "string", + "required": true, + "description": "Specify the type of webhook event to simulate, such as 'invitee.created' or 'invitee.canceled'.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_scope", + "type": "string", + "required": true, + "description": "Specify the scope for the sample webhook data. Options are 'user', 'organization', or 'group'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for a user in Calendly whose webhook data you want to test.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_event_group", + "type": "string", + "required": false, + "description": "Specify the group for the webhook event to categorize and filter data. Typically used for organizing related webhooks.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-sample-webhook-data'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetSampleWebhookData", + "parameters": { + "organization_identifier": { + "value": "org_123456789", + "type": "string", + "required": true + }, + "webhook_event_type": { + "value": "invitee.created", + "type": "string", + "required": true + }, + "webhook_scope": { + "value": "user", + "type": "string", + "required": true + }, + "user_identifier": { + "value": "user_987654321", + "type": "string", + "required": false + }, + "webhook_event_group": { + "value": "group_1", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserAccountInfo", + "qualifiedName": "CalendlyApi.GetUserAccountInfo", + "fullyQualifiedName": "CalendlyApi.GetUserAccountInfo@3.0.0", + "description": "Retrieve basic information about the current Calendly user.", + "parameters": [], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-current-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetUserAccountInfo", + "parameters": {}, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserAvailabilitySchedule", + "qualifiedName": "CalendlyApi.GetUserAvailabilitySchedule", + "fullyQualifiedName": "CalendlyApi.GetUserAvailabilitySchedule@3.0.0", + "description": "Retrieve a user's availability schedule using their UUID.\n\nUse this tool to obtain the availability schedule for a specific user identified by their UUID. It provides the details of available time slots.", + "parameters": [ + { + "name": "user_uuid", + "type": "string", + "required": true, + "description": "The UUID of the availability schedule you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-user-availability-schedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetUserAvailabilitySchedule", + "parameters": { + "user_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserAvailabilitySchedules", + "qualifiedName": "CalendlyApi.GetUserAvailabilitySchedules", + "fullyQualifiedName": "CalendlyApi.GetUserAvailabilitySchedules@3.0.0", + "description": "Fetch a user's availability schedules.\n\nUse this tool to get the availability schedules of a specified user, assisting in planning or checking user availability.", + "parameters": [ + { + "name": "user_uri_reference", + "type": "string", + "required": true, + "description": "A URI reference to the specified user whose availability schedules are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-user-availability-schedules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetUserAvailabilitySchedules", + "parameters": { + "user_uri_reference": { + "value": "https://api.calendly.com/v1/users/abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserLocationInfo", + "qualifiedName": "CalendlyApi.GetUserLocationInfo", + "fullyQualifiedName": "CalendlyApi.GetUserLocationInfo@3.0.0", + "description": "Retrieve configured location details for a specific user.\n\nThis tool is used to obtain the location information that a user has configured in their account. It can be called when location details are needed for scheduling or meeting purposes.", + "parameters": [ + { + "name": "user_uri", + "type": "string", + "required": true, + "description": "The URI identifying the specific user to retrieve location information for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-user-locations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetUserLocationInfo", + "parameters": { + "user_uri": { + "value": "https://calendly.com/users/abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWebhookSubscription", + "qualifiedName": "CalendlyApi.GetWebhookSubscription", + "fullyQualifiedName": "CalendlyApi.GetWebhookSubscription@3.0.0", + "description": "Retrieve details of a specific webhook subscription.\n\nUse this tool to get detailed information about a specific webhook subscription by providing its unique identifier.", + "parameters": [ + { + "name": "webhook_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the webhook subscription to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-webhook-subscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.GetWebhookSubscription", + "parameters": { + "webhook_identifier": { + "value": "abc123xyz456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "InviteUserToOrganization", + "qualifiedName": "CalendlyApi.InviteUserToOrganization", + "fullyQualifiedName": "CalendlyApi.InviteUserToOrganization@3.0.0", + "description": "Invite a user to join an organization.\n\nThis tool sends an invitation to a user to join a specific organization on Calendly. Use it when you need to add a new member to an organization by sending them an invitation.", + "parameters": [ + { + "name": "organization_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the organization to which the user is being invited.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email", + "type": "string", + "required": true, + "description": "The email address of the user to be invited to the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-organization-invitation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.InviteUserToOrganization", + "parameters": { + "organization_unique_identifier": { + "value": "org_123456", + "type": "string", + "required": true + }, + "user_email": { + "value": "newuser@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListActivityLogEntries", + "qualifiedName": "CalendlyApi.ListActivityLogEntries", + "fullyQualifiedName": "CalendlyApi.ListActivityLogEntries@3.0.0", + "description": "Fetch a list of activity log entries.\n\nThis tool retrieves a list of activity log entries from Calendly, requiring an Enterprise subscription. It is useful for accessing detailed logs of various activities.", + "parameters": [ + { + "name": "organization_uri", + "type": "string", + "required": true, + "description": "URI of the organization to filter activity log entries.", + "enum": null, + "inferrable": true + }, + { + "name": "actions", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify one or more actions associated with the log entries. Accepts an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "entry_categories", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify the categories of log entries to filter the results. This is an array of strings, each representing a category.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_search_term", + "type": "string", + "required": false, + "description": "Filters entries using supported operators: `|`, `+`, `\"`, `-`, `()`, `*`. For example, `this | that` or `(email) + (signup)`.", + "enum": null, + "inferrable": true + }, + { + "name": "include_entries_after", + "type": "string", + "required": false, + "description": "Include entries that occurred after this time. Use format: \"YYYY-MM-DDTHH:MM:SS.sssZ\" (UTC).", + "enum": null, + "inferrable": true + }, + { + "name": "max_occurred_at_time", + "type": "string", + "required": false, + "description": "Include entries that occurred prior to this UTC time in the format \"YYYY-MM-DDTHH:MM:SS.SSSZ\".", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_rows_to_return", + "type": "integer", + "required": false, + "description": "Specifies the number of activity log entries to return in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token to get the next portion of the activity log collection.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify the field and direction to sort results. Use format {field}:{direction}.", + "enum": null, + "inferrable": true + }, + { + "name": "user_associated_uris", + "type": "array", + "innerType": "string", + "required": false, + "description": "Return entries from the user(s) associated with the provided URIs. This should be an array of strings representing the URIs of users.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-activity-log-entries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.ListActivityLogEntries", + "parameters": { + "organization_uri": { + "value": "https://api.calendly.com/organizations/123456", + "type": "string", + "required": true + }, + "actions": { + "value": ["created", "updated"], + "type": "array", + "required": false + }, + "entry_categories": { + "value": ["event", "user"], + "type": "array", + "required": false + }, + "filter_by_search_term": { + "value": "(email) + (signup)", + "type": "string", + "required": false + }, + "include_entries_after": { + "value": "2023-09-01T00:00:00.000Z", + "type": "string", + "required": false + }, + "max_occurred_at_time": { + "value": "2023-09-30T23:59:59.999Z", + "type": "string", + "required": false + }, + "number_of_rows_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "sort_order": { + "value": ["occurred_at:desc"], + "type": "array", + "required": false + }, + "user_associated_uris": { + "value": [ + "https://api.calendly.com/users/987654", + "https://api.calendly.com/users/654321" + ], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAvailableEventTimes", + "qualifiedName": "CalendlyApi.ListAvailableEventTimes", + "fullyQualifiedName": "CalendlyApi.ListAvailableEventTimes@3.0.0", + "description": "Retrieve available times for an event type within a date range.\n\nReturns available times for a specified event type within a maximum 7-day date range. Useful for scheduling and planning events.", + "parameters": [ + { + "name": "availability_end_time", + "type": "string", + "required": true, + "description": "End time for the availability range, must be after the start time.", + "enum": null, + "inferrable": true + }, + { + "name": "availability_start_time", + "type": "string", + "required": true, + "description": "The start time for the availability range. Must be a future date, not in the past.", + "enum": null, + "inferrable": true + }, + { + "name": "event_type_uri", + "type": "string", + "required": true, + "description": "The URI associated with the event type to retrieve its available times.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-event-type-available-times'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.ListAvailableEventTimes", + "parameters": { + "availability_end_time": { + "value": "2023-10-15T18:00:00Z", + "type": "string", + "required": true + }, + "availability_start_time": { + "value": "2023-10-08T09:00:00Z", + "type": "string", + "required": true + }, + "event_type_uri": { + "value": "https://api.calendly.com/event_types/123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEventInvitees", + "qualifiedName": "CalendlyApi.ListEventInvitees", + "fullyQualifiedName": "CalendlyApi.ListEventInvitees@3.0.0", + "description": "Retrieve a list of invitees for a given event.\n\nUse this tool to obtain details about all invitees for a specific event. The tool is suitable when you need to see who has been invited to an event using its unique identifier.", + "parameters": [ + { + "name": "event_uuid", + "type": "string", + "required": true, + "description": "The unique identifier for the event whose invitees are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_email", + "type": "string", + "required": false, + "description": "Specify an email address to filter invitees by email.", + "enum": null, + "inferrable": true + }, + { + "name": "invitee_status", + "type": "string", + "required": false, + "description": "Filter invitees by their status: 'active' for current invitees or 'canceled' for those who have canceled.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_invitees_to_return", + "type": "number", + "required": false, + "description": "Specifies the number of invitee rows to return in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "A token to retrieve the next or previous page of invitees. Useful for paginated responses.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_by_created_at", + "type": "string", + "required": false, + "description": "Specify the order of results based on the creation date as 'asc' for ascending or 'desc' for descending.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-event-invitees'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.ListEventInvitees", + "parameters": { + "event_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "filter_by_email": { + "value": "example@example.com", + "type": "string", + "required": false + }, + "invitee_status": { + "value": "active", + "type": "string", + "required": false + }, + "number_of_invitees_to_return": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "token123", + "type": "string", + "required": false + }, + "sort_order_by_created_at": { + "value": "desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEventTypes", + "qualifiedName": "CalendlyApi.ListEventTypes", + "fullyQualifiedName": "CalendlyApi.ListEventTypes@3.0.0", + "description": "Fetches event types for a specified user or organization.\n\nThis tool retrieves all event types associated with a specified user or organization in Calendly. Use it when you need to get a list of event types for scheduling or management purposes.", + "parameters": [ + { + "name": "number_of_event_types_to_return", + "type": "number", + "required": false, + "description": "The number of event types to return. Specify the desired count of returned rows.", + "enum": null, + "inferrable": true + }, + { + "name": "only_admin_managed", + "type": "boolean", + "required": false, + "description": "Return only admin managed event types if true, exclude them if false, or include all if omitted.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_uri", + "type": "string", + "required": false, + "description": "URI to view available personal, team, and organization event types.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token to retrieve the next or previous set of event types in pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "return_active_event_types_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only active event types, false for only inactive, or omit to include all event types.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_event_types_by", + "type": "string", + "required": false, + "description": "Specify field and direction to order results. Use {field}:{asc/desc}. Fields: name, position, created_at, updated_at.", + "enum": null, + "inferrable": true + }, + { + "name": "user_availability_schedule_filter", + "type": "string", + "required": false, + "description": "Filters event types by the given primary availability schedule when used with the 'user' parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "user_uri", + "type": "string", + "required": false, + "description": "The user's URI to view associated personal, team, and organization event types.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-event-types'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.ListEventTypes", + "parameters": { + "number_of_event_types_to_return": { + "value": 5, + "type": "integer", + "required": false + }, + "only_admin_managed": { + "value": true, + "type": "boolean", + "required": false + }, + "organization_uri": { + "value": "https://api.calendly.com/organizations/abc123", + "type": "string", + "required": false + }, + "pagination_token": { + "value": "token_abc", + "type": "string", + "required": false + }, + "return_active_event_types_only": { + "value": false, + "type": "boolean", + "required": false + }, + "sort_event_types_by": { + "value": "created_at:asc", + "type": "string", + "required": false + }, + "user_availability_schedule_filter": { + "value": "https://api.calendly.com/users/xyz456/schedules", + "type": "string", + "required": false + }, + "user_uri": { + "value": "https://api.calendly.com/users/xyz456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGroupRelationships", + "qualifiedName": "CalendlyApi.ListGroupRelationships", + "fullyQualifiedName": "CalendlyApi.ListGroupRelationships@3.0.0", + "description": "Retrieve a list of group relationships for a given owner.\n\nUse this tool to get group relationship records, including one membership and multiple admin records for an owner.", + "parameters": [ + { + "name": "filter_by_group", + "type": "string", + "required": false, + "description": "Filter results by a specific group using a group identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_organization", + "type": "string", + "required": false, + "description": "Filter results by organization. Provide the organization ID or URI to narrow down the list of group relationships.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_owner_uri", + "type": "string", + "required": false, + "description": "The URI to filter results by owner, either an Organization Membership URI or Organization Invitation URI.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_rows", + "type": "number", + "required": false, + "description": "Specify the number of rows to return in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token to navigate to the next or previous portion of the collection.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-group-relationships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.ListGroupRelationships", + "parameters": { + "filter_by_group": { + "value": "group_12345", + "type": "string", + "required": false + }, + "filter_by_organization": { + "value": "org_67890", + "type": "string", + "required": false + }, + "filter_by_owner_uri": { + "value": "owner_uri_abcde", + "type": "string", + "required": false + }, + "number_of_rows": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "token_xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrganizationInvitations", + "qualifiedName": "CalendlyApi.ListOrganizationInvitations", + "fullyQualifiedName": "CalendlyApi.ListOrganizationInvitations@3.0.0", + "description": "Retrieve organization invitations sent to members.\n\nUse this tool to get a list of invitations that have been sent to members of a specific organization. This tool is useful for tracking pending or accepted invitations within the organization.", + "parameters": [ + { + "name": "organization_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the organization to retrieve invitations for.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_email", + "type": "string", + "required": false, + "description": "Email address to filter the results of organization invitations.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_status", + "type": "string", + "required": false, + "description": "Filter results by invitation status: 'pending', 'accepted', or 'declined'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token for fetching the next or previous set of organization invitations.", + "enum": null, + "inferrable": true + }, + { + "name": "rows_to_return", + "type": "number", + "required": false, + "description": "Specify the number of organization invitation records to retrieve in the request.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the field and direction (ascending or descending) for sorting results. Use a comma-separated list for multiple criteria.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-organization-invitations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.ListOrganizationInvitations", + "parameters": { + "organization_unique_identifier": { + "value": "org_123456", + "type": "string", + "required": true + }, + "filter_by_email": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "filter_by_status": { + "value": "pending", + "type": "string", + "required": false + }, + "pagination_token": { + "value": "token_abcdef", + "type": "string", + "required": false + }, + "rows_to_return": { + "value": 10, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "created_at,asc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRoutingForms", + "qualifiedName": "CalendlyApi.ListRoutingForms", + "fullyQualifiedName": "CalendlyApi.ListRoutingForms@3.0.0", + "description": "Retrieve routing forms for a specified organization.\n\nUse this tool to obtain a list of all routing forms associated with a specific organization. It should be called when there is a need to access routing forms data for organizational purposes.", + "parameters": [ + { + "name": "organization_uri", + "type": "string", + "required": true, + "description": "The URI of the organization to view its routing forms. It should be a valid string representing the organization's endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_rows", + "type": "number", + "required": false, + "description": "The number of routing form entries to return for the request.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token for fetching the next or previous portion of the routing forms collection.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the order of results using field and direction. Supports 'created_at' with 'asc' or 'desc'. Use comma for multiple fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-routing-forms'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.ListRoutingForms", + "parameters": { + "organization_uri": { + "value": "https://api.calendly.com/organizations/123456", + "type": "string", + "required": true + }, + "number_of_rows": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "abcdef12345", + "type": "string", + "required": false + }, + "sort_order": { + "value": "created_at,desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRoutingFormSubmissions", + "qualifiedName": "CalendlyApi.ListRoutingFormSubmissions", + "fullyQualifiedName": "CalendlyApi.ListRoutingFormSubmissions@3.0.0", + "description": "Get a list of Routing Form Submissions for a specified form.\n\nUse this tool to retrieve submissions from a specific routing form in your Calendly account. Ideal for accessing user responses collected through these forms.", + "parameters": [ + { + "name": "routing_form_uri", + "type": "string", + "required": true, + "description": "The URI of the routing form to view its submissions. This specifies which form's submissions to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_rows_to_return", + "type": "number", + "required": false, + "description": "Specify the number of routing form submissions to return.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token for retrieving the next or previous set of form submissions.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify field and direction to sort results (e.g., 'created_at:asc').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-routing-form-submissions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.ListRoutingFormSubmissions", + "parameters": { + "routing_form_uri": { + "value": "https://calendly.com/forms/123456789", + "type": "string", + "required": true + }, + "number_of_rows_to_return": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "nextPageToken123", + "type": "string", + "required": false + }, + "sort_order": { + "value": "created_at:desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListScheduledEvents", + "qualifiedName": "CalendlyApi.ListScheduledEvents", + "fullyQualifiedName": "CalendlyApi.ListScheduledEvents@3.0.0", + "description": "Retrieve a list of scheduled events from Calendly.\n\nUse this tool to get scheduled events based on specific criteria. Pass the 'organization' parameter to fetch events for an organization, 'user' for personal or specific user events, and 'group' for group events. Admins or owners have additional privileges for broader queries.", + "parameters": [ + { + "name": "event_status", + "type": "string", + "required": false, + "description": "Indicate if the event is 'active' or 'canceled'.", + "enum": null, + "inferrable": true + }, + { + "name": "events_sort_order", + "type": "string", + "required": false, + "description": "Specify sorting order for events. Use 'start_time:asc' or 'start_time:desc'.", + "enum": null, + "inferrable": true + }, + { + "name": "group_uri", + "type": "string", + "required": false, + "description": "URI of the group to fetch scheduled events for. Requires admin/owner or group admin privilege.", + "enum": null, + "inferrable": true + }, + { + "name": "invitee_email", + "type": "string", + "required": false, + "description": "Email address of the invitee to filter and return related scheduled events.", + "enum": null, + "inferrable": true + }, + { + "name": "max_start_time_utc", + "type": "string", + "required": false, + "description": "Include events with start times prior to this UTC time. Format: YYYY-MM-DDTHH:MM:SS.ssssssZ", + "enum": null, + "inferrable": true + }, + { + "name": "min_start_time", + "type": "string", + "required": false, + "description": "Include events starting after this UTC time. Format: \"2020-01-02T03:04:05.678123Z\".", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_rows_to_return", + "type": "number", + "required": false, + "description": "Specify the number of event entries to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_uri", + "type": "string", + "required": false, + "description": "URI of the organization to retrieve scheduled events for. Requires admin/owner privileges.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token for navigating to the next or previous set of scheduled events.", + "enum": null, + "inferrable": true + }, + { + "name": "user_uri", + "type": "string", + "required": false, + "description": "URI identifying the user for whom to return scheduled events. Use alone for personal events or with 'organization' for specific user events within an organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-scheduled-events'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.ListScheduledEvents", + "parameters": { + "event_status": { + "value": "active", + "type": "string", + "required": false + }, + "events_sort_order": { + "value": "start_time:asc", + "type": "string", + "required": false + }, + "group_uri": { + "value": "/groups/12345", + "type": "string", + "required": false + }, + "invitee_email": { + "value": "john.doe@example.com", + "type": "string", + "required": false + }, + "max_start_time_utc": { + "value": "2023-12-31T23:59:59.999999Z", + "type": "string", + "required": false + }, + "min_start_time": { + "value": "2023-01-01T00:00:00.000000Z", + "type": "string", + "required": false + }, + "number_of_rows_to_return": { + "value": 10, + "type": "integer", + "required": false + }, + "organization_uri": { + "value": "/organizations/67890", + "type": "string", + "required": false + }, + "pagination_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "user_uri": { + "value": "/users/54321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserBusyTimes", + "qualifiedName": "CalendlyApi.ListUserBusyTimes", + "fullyQualifiedName": "CalendlyApi.ListUserBusyTimes@3.0.0", + "description": "Retrieve user's scheduled events within a specific date range.\n\nUse this tool to obtain an ascending list of all internal and external events scheduled for a user within a specified date range, up to 7 days. External events are returned only if calendars are set to \"Check for conflicts.\" This tool is helpful for checking availability or scheduling new events based on the user's current commitments.", + "parameters": [ + { + "name": "availability_start_time", + "type": "string", + "required": true, + "description": "Start time for the availability range. The date must not be in the past.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time", + "type": "string", + "required": true, + "description": "End time for the requested availability range, must be after the start_time.", + "enum": null, + "inferrable": true + }, + { + "name": "user_uri", + "type": "string", + "required": true, + "description": "The URI associated with the user to retrieve busy times for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-user-busy-times'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.ListUserBusyTimes", + "parameters": { + "availability_start_time": { + "value": "2023-10-15T09:00:00Z", + "type": "string", + "required": true + }, + "end_time": { + "value": "2023-10-22T17:00:00Z", + "type": "string", + "required": true + }, + "user_uri": { + "value": "https://calendly.com/users/abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWebhookSubscriptions", + "qualifiedName": "CalendlyApi.ListWebhookSubscriptions", + "fullyQualifiedName": "CalendlyApi.ListWebhookSubscriptions@3.0.0", + "description": "Retrieve webhook subscriptions for an organization or user.\n\nUse this tool to obtain a list of webhook subscriptions associated with a specified organization or user on Calendly.", + "parameters": [ + { + "name": "filter_scope", + "type": "string", + "required": true, + "description": "Filter the list by organization, user, or group. Acceptable values are 'organization', 'user', or 'group'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization that owns the subscriptions being returned. This field is always required.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_group", + "type": "string", + "required": false, + "description": "Optional; filters the results by group when scope is set to 'group'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_user", + "type": "string", + "required": false, + "description": "Filter results by user when 'scope' is set to 'user'.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_rows_to_return", + "type": "number", + "required": false, + "description": "Specify the number of rows to be returned in the result set.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The token to retrieve the next or previous portion of the collection.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_field_and_direction", + "type": "string", + "required": false, + "description": "Specify the field and direction to order results. Use 'created_at:asc' or 'created_at:desc'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-webhook-subscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.ListWebhookSubscriptions", + "parameters": { + "filter_scope": { + "value": "organization", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "filter_by_group": { + "value": "group_7890", + "type": "string", + "required": false + }, + "filter_by_user": { + "value": "user_112233", + "type": "string", + "required": false + }, + "number_of_rows_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "token_abcdef", + "type": "string", + "required": false + }, + "sort_by_field_and_direction": { + "value": "created_at:desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MarkInviteeNoShow", + "qualifiedName": "CalendlyApi.MarkInviteeNoShow", + "fullyQualifiedName": "CalendlyApi.MarkInviteeNoShow@3.0.0", + "description": "Mark an invitee as a no show in Calendly.\n\nUse this tool to mark an invitee as a no show in Calendly. It should be called when you need to record that an invitee did not attend a scheduled event.", + "parameters": [ + { + "name": "invitee_id", + "type": "string", + "required": false, + "description": "The unique identifier for the invitee to be marked as a no show. This is required to specify which invitee did not attend.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-invitee-no-show'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.MarkInviteeNoShow", + "parameters": { + "invitee_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveUserFromOrganization", + "qualifiedName": "CalendlyApi.RemoveUserFromOrganization", + "fullyQualifiedName": "CalendlyApi.RemoveUserFromOrganization@3.0.0", + "description": "Remove a user from an organization with admin rights.\n\nThis tool removes a user from an organization in Calendly. It requires the caller to have admin rights and cannot be used to remove an organization owner.", + "parameters": [ + { + "name": "organization_membership_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization membership to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-organization-membership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.RemoveUserFromOrganization", + "parameters": { + "organization_membership_unique_id": { + "value": "abc123def456ghi789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RevokeOrganizationInvitation", + "qualifiedName": "CalendlyApi.RevokeOrganizationInvitation", + "fullyQualifiedName": "CalendlyApi.RevokeOrganizationInvitation@3.0.0", + "description": "Revoke an organization invitation in Calendly.\n\nUse this tool to revoke an organization invitation in Calendly, rendering the invitation link invalid.", + "parameters": [ + { + "name": "invitation_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the organization invitation to be revoked.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_unique_identifier", + "type": "string", + "required": true, + "description": "The organization's unique identifier required to revoke the invitation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'revoke-organization-invitation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.RevokeOrganizationInvitation", + "parameters": { + "invitation_unique_identifier": { + "value": "inv-123456789", + "type": "string", + "required": true + }, + "organization_unique_identifier": { + "value": "org-987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UndoInviteeNoShowStatus", + "qualifiedName": "CalendlyApi.UndoInviteeNoShowStatus", + "fullyQualifiedName": "CalendlyApi.UndoInviteeNoShowStatus@3.0.0", + "description": "Undo the no-show status for a Calendly invitee.\n\nThis tool removes the no-show status previously assigned to an invitee in Calendly. Use it to correct any erroneous no-show markings.", + "parameters": [ + { + "name": "invitee_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the invitee whose no-show status is to be undone.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-invitee-no-show'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.UndoInviteeNoShowStatus", + "parameters": { + "invitee_unique_id": { + "value": "abc12345xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEventAvailability", + "qualifiedName": "CalendlyApi.UpdateEventAvailability", + "fullyQualifiedName": "CalendlyApi.UpdateEventAvailability@3.0.0", + "description": "Update an event type availability schedule.\n\n Use this tool to modify the availability schedule of an existing calendar event type, such as updating times or days available.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "event_type_uri", + "type": "string", + "required": false, + "description": "URI of the event type to update the availability schedule for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-event-type-availability'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.UpdateEventAvailability", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "event_type_uri": { + "value": "https://api.calendly.com/v1/event_types/12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"availability\":{\"start\":\"2023-10-01T09:00:00Z\",\"end\":\"2023-10-01T17:00:00Z\",\"days\":[\"monday\",\"tuesday\",\"wednesday\"]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEventType", + "qualifiedName": "CalendlyApi.UpdateEventType", + "fullyQualifiedName": "CalendlyApi.UpdateEventType@3.0.0", + "description": "Update details of an existing event type with Calendly.\n\n Use this tool to update an existing one-on-one event type in Calendly. This tool is specifically for modifying event types categorized as 'solo' or one-on-one.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "event_type_uuid", + "type": "string", + "required": false, + "description": "The unique identifier for the event type to be updated. This is essential for specifying which one-on-one event type you intend to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "calendly", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-event-type'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CalendlyApi.UpdateEventType", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "event_type_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Event Name\",\"duration\":\"30\",\"description\":\"Updated description of the event.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "calendly", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:27:26.421Z", + "summary": "This documentation details the Arcade toolkit for integrating with the Calendly API, enabling developers to efficiently manage scheduling events and invitees. \n\n**Capabilities**\n- Create and cancel scheduled events as well as generate custom share links.\n- Manage invitees by adding, removing, or marking their attendance status.\n- Retrieve user and organization-specific information such as availability and event types.\n- Set up webhook subscriptions for real-time notifications on event changes.\n\n**OAuth**\n- Provider: Calendly\n- Scopes: None\n\n**Secrets**\n- None available in this toolkit." +} diff --git a/data/toolkits/clickup.json b/data/toolkits/clickup.json new file mode 100644 index 000000000..bd43954d7 --- /dev/null +++ b/data/toolkits/clickup.json @@ -0,0 +1,2248 @@ +{ + "id": "Clickup", + "label": "ClickUp", + "version": "1.1.1", + "description": "Arcade.dev LLM tools for interacting with ClickUp", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/clickup.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/clickup", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "clickup", + "allScopes": [] + }, + "tools": [ + { + "name": "CreateTask", + "qualifiedName": "Clickup.CreateTask", + "fullyQualifiedName": "Clickup.CreateTask@1.1.1", + "description": "Create a new task in a ClickUp list with optional planning metadata.\n\nUse this tool when you want to add a task to a specific list and optionally set\nits initial status, priority, scheduling information, and hierarchy.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The ClickUp list ID where the task will be created", + "enum": null, + "inferrable": true + }, + { + "name": "task_title", + "type": "string", + "required": true, + "description": "The name/title of the task", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "The description/content of the task", + "enum": null, + "inferrable": true + }, + { + "name": "priority", + "type": "string", + "required": false, + "description": "Task priority", + "enum": ["URGENT", "HIGH", "NORMAL", "LOW"], + "inferrable": true + }, + { + "name": "status", + "type": "string", + "required": false, + "description": "Task status label (string)", + "enum": null, + "inferrable": true + }, + { + "name": "parent_task_id", + "type": "string", + "required": false, + "description": "The parent task ID if this is a subtask", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "Date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]; ISO-8601 also supported", + "enum": null, + "inferrable": true + }, + { + "name": "due_date", + "type": "string", + "required": false, + "description": "Date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]; ISO-8601 also supported", + "enum": null, + "inferrable": true + }, + { + "name": "sprint_points", + "type": "integer", + "required": false, + "description": "The sprint points for the task", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Details of the created task" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.CreateTask", + "parameters": { + "list_id": { + "value": "12345", + "type": "string", + "required": true + }, + "task_title": { + "value": "Implement API Integration", + "type": "string", + "required": true + }, + "description": { + "value": "Develop and integrate the new API feature for the application.", + "type": "string", + "required": false + }, + "priority": { + "value": "high", + "type": "string", + "required": false + }, + "status": { + "value": "in progress", + "type": "string", + "required": false + }, + "parent_task_id": { + "value": "67890", + "type": "string", + "required": false + }, + "start_date": { + "value": "2023-10-01T09:00:00", + "type": "string", + "required": false + }, + "due_date": { + "value": "2023-10-15T17:00:00", + "type": "string", + "required": false + }, + "sprint_points": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTaskComment", + "qualifiedName": "Clickup.CreateTaskComment", + "fullyQualifiedName": "Clickup.CreateTaskComment@1.1.1", + "description": "Create a new comment on a ClickUp task with optional assignment.\n\nUse this tool to add text comments to tasks. You can optionally assign\nthe comment to a specific user for follow-up.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The ClickUp task ID to add a comment to", + "enum": null, + "inferrable": true + }, + { + "name": "comment_text", + "type": "string", + "required": true, + "description": "The text content of the comment", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_id", + "type": "integer", + "required": false, + "description": "User ID to assign the comment to (optional)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Details of the created comment" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.CreateTaskComment", + "parameters": { + "task_id": { + "value": "12345", + "type": "string", + "required": true + }, + "comment_text": { + "value": "Please review the latest updates on this task.", + "type": "string", + "required": true + }, + "assignee_id": { + "value": 678, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTaskCommentReply", + "qualifiedName": "Clickup.CreateTaskCommentReply", + "fullyQualifiedName": "Clickup.CreateTaskCommentReply@1.1.1", + "description": "Create a new threaded reply to an existing ClickUp comment.\n\nUse this tool to add threaded replies to comments, creating conversation threads.\nYou can optionally assign the reply to a specific user for follow-up.", + "parameters": [ + { + "name": "comment_id", + "type": "string", + "required": true, + "description": "The ClickUp comment ID to reply to", + "enum": null, + "inferrable": true + }, + { + "name": "reply_text", + "type": "string", + "required": true, + "description": "The text content of the reply", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_id", + "type": "integer", + "required": false, + "description": "User ID to assign the reply to", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Details of the created reply" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.CreateTaskCommentReply", + "parameters": { + "comment_id": { + "value": "123456", + "type": "string", + "required": true + }, + "reply_text": { + "value": "Thank you for the insights, I appreciate your input!", + "type": "string", + "required": true + }, + "assignee_id": { + "value": 789, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FuzzySearchFoldersByName", + "qualifiedName": "Clickup.FuzzySearchFoldersByName", + "fullyQualifiedName": "Clickup.FuzzySearchFoldersByName@1.1.1", + "description": "Search for folders using fuzzy matching on folder names.\n\nThis tool should ONLY be used when you cannot find the desired folder through normal context\nor direct searches. It performs fuzzy matching against folder names and returns simplified\nfolder information. Use other ClickUp tools to get full folder details or work with the folders.\n\nThis tool is also useful to avoid navigating through the ClickUp hierarchy tree\nwhen you know approximately what folder/project you're looking for\nbut don't know its exact location in the hierarchy.\n\nIn ClickUp, folders are also known as projects and serve as organizational containers for lists.\nReturns folders that match the name_to_search with match scores indicating relevance\n(1.0 = perfect match, lower scores = less relevant matches).", + "parameters": [ + { + "name": "name_to_search", + "type": "string", + "required": true, + "description": "Folder name to search for (minimum 2 characters)", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The workspace ID to search folders in (should be a number)", + "enum": null, + "inferrable": true + }, + { + "name": "scan_size", + "type": "integer", + "required": false, + "description": "Number of folders to scan (in increments of 100, max 500 default: 500)", + "enum": null, + "inferrable": true + }, + { + "name": "space_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by ClickUp space IDs - limit search to specific spaces/teams", + "enum": null, + "inferrable": true + }, + { + "name": "should_include_archived", + "type": "boolean", + "required": false, + "description": "Include archived folders (default: false)", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of matches to return (max: 50, default: 10)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Fuzzy search results for folders" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.FuzzySearchFoldersByName", + "parameters": { + "name_to_search": { + "value": "Marketing", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "123456", + "type": "string", + "required": true + }, + "scan_size": { + "value": 300, + "type": "integer", + "required": false + }, + "space_ids": { + "value": ["101", "102"], + "type": "array", + "required": false + }, + "should_include_archived": { + "value": true, + "type": "boolean", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FuzzySearchListsByName", + "qualifiedName": "Clickup.FuzzySearchListsByName", + "fullyQualifiedName": "Clickup.FuzzySearchListsByName@1.1.1", + "description": "Search for lists using fuzzy matching on list names.\n\nThis tool should ONLY be used when you cannot find the desired list through normal context\nor direct searches. It performs fuzzy matching against list names and returns simplified\nlist information. Use other ClickUp tools to get full list details or work with the lists.\n\nThis tool is also useful to avoid navigating through the ClickUp hierarchy tree\nwhen you know approximately what list you're looking for\nbut don't know its exact location in the hierarchy.\n\nReturns lists that match the name_to_search with match scores indicating relevance\n(1.0 = perfect match, lower scores = less relevant matches).", + "parameters": [ + { + "name": "name_to_search", + "type": "string", + "required": true, + "description": "List name to search for (minimum 2 characters)", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The workspace ID to search lists in (should be a number)", + "enum": null, + "inferrable": true + }, + { + "name": "scan_size", + "type": "integer", + "required": false, + "description": "Number of lists to scan (in increments of 100, max 500 default: 500)", + "enum": null, + "inferrable": true + }, + { + "name": "space_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by ClickUp space IDs - limit search to specific spaces/teams", + "enum": null, + "inferrable": true + }, + { + "name": "folder_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by ClickUp folder IDs - limit search to specific folders/projects", + "enum": null, + "inferrable": true + }, + { + "name": "should_include_archived", + "type": "boolean", + "required": false, + "description": "Include archived lists (default: false)", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of matches to return (max: 50, default: 10)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Fuzzy search results for lists" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.FuzzySearchListsByName", + "parameters": { + "name_to_search": { + "value": "Project Alpha", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "123456", + "type": "string", + "required": true + }, + "scan_size": { + "value": 500, + "type": "integer", + "required": false + }, + "space_ids": { + "value": ["654321", "987654"], + "type": "array", + "required": false + }, + "folder_ids": { + "value": ["345678"], + "type": "array", + "required": false + }, + "should_include_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FuzzySearchMembersByName", + "qualifiedName": "Clickup.FuzzySearchMembersByName", + "fullyQualifiedName": "Clickup.FuzzySearchMembersByName@1.1.1", + "description": "Search for workspace members using fuzzy matching on member names.\n\nThis tool should ONLY be used when you cannot find the desired team member through\nnormal context\nIt performs fuzzy matching against member names and returns\nsimplified member information including ID, name, and email.\n\nReturns team members that match the name_to_search with match scores indicating\nrelevance (1.0 = perfect match, lower scores = less relevant matches).", + "parameters": [ + { + "name": "name_to_search", + "type": "string", + "required": true, + "description": "Member name to search for (minimum 2 characters)", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The workspace ID to search members in (should be a number)", + "enum": null, + "inferrable": true + }, + { + "name": "scan_size", + "type": "integer", + "required": false, + "description": "Number of members to scan (in increments of 100, max 500 default: 500)", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of matches to return (max: 50, default: 10)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Fuzzy search results for members" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.FuzzySearchMembersByName", + "parameters": { + "name_to_search": { + "value": "John Doe", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "12345", + "type": "string", + "required": true + }, + "scan_size": { + "value": 200, + "type": "integer", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FuzzySearchTasksByName", + "qualifiedName": "Clickup.FuzzySearchTasksByName", + "fullyQualifiedName": "Clickup.FuzzySearchTasksByName@1.1.1", + "description": "Search for tasks using fuzzy matching on task names.\n\nThis tool should ONLY be used when you cannot find the desired task through normal context\nor direct searches. It performs fuzzy matching against task names and returns simplified\ntask information. Use the returned task IDs with get_task_by_id to retrieve full task details.\n\nThis tool is also useful to avoid navigating through the ClickUp hierarchy tree\nwhen you know approximately what task you're looking for\nbut don't know its exact location in the hierarchy.\n\nReturns the most recently updated tasks that match the name_to_search with match scores\nindicating relevance (1.0 = perfect match, lower scores = less relevant matches).", + "parameters": [ + { + "name": "name_to_search", + "type": "string", + "required": true, + "description": "Task name to search for (minimum 2 characters)", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The workspace ID to search tasks in (should be a number)", + "enum": null, + "inferrable": true + }, + { + "name": "scan_size", + "type": "integer", + "required": false, + "description": "Number of recent tasks to scan (max 500 default: 500)", + "enum": null, + "inferrable": true + }, + { + "name": "include_closed", + "type": "boolean", + "required": false, + "description": "Include closed/completed tasks (default: false)", + "enum": null, + "inferrable": true + }, + { + "name": "statuses", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by specific ClickUp status names. Each list has its own statuses set.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by assignee user IDs", + "enum": null, + "inferrable": true + }, + { + "name": "space_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by ClickUp space IDs - limit search to specific spaces/teams", + "enum": null, + "inferrable": true + }, + { + "name": "folder_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by ClickUp folder IDs - limit search to specific folders/projects", + "enum": null, + "inferrable": true + }, + { + "name": "list_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by ClickUp list IDs - limit search to specific lists", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of matches to return (max: 50, default: 10)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Fuzzy search results for tasks" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.FuzzySearchTasksByName", + "parameters": { + "name_to_search": { + "value": "Project Alpha", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "123456", + "type": "string", + "required": true + }, + "scan_size": { + "value": 100, + "type": "integer", + "required": false + }, + "include_closed": { + "value": false, + "type": "boolean", + "required": false + }, + "statuses": { + "value": ["in progress", "completed"], + "type": "array", + "required": false + }, + "assignee_ids": { + "value": ["987654", "123987"], + "type": "array", + "required": false + }, + "space_ids": { + "value": ["555666"], + "type": "array", + "required": false + }, + "folder_ids": { + "value": ["111222"], + "type": "array", + "required": false + }, + "list_ids": { + "value": ["333444"], + "type": "array", + "required": false + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFoldersForSpace", + "qualifiedName": "Clickup.GetFoldersForSpace", + "fullyQualifiedName": "Clickup.GetFoldersForSpace@1.1.1", + "description": "Retrieve folders (also called directories, project categories, or project areas) from a\nClickUp space.\n\nOnly use this tool when you already have the space ID and want to see the folders within\nthat specific space.\n\nImportant: When users mention a space(or area),\nalways use this tool to get the folders within that space.\n\nThis tool fetches folders from the specified space with support for offset-based retrieval\nand archived folder filtering. Results are sorted alphabetically by name.", + "parameters": [ + { + "name": "space_id", + "type": "string", + "required": true, + "description": "The ClickUp space ID to get folders from", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The ClickUp workspace ID for GUI URL generation (should be a number)", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Starting position for offset-based retrieval (default: 0)", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of folders to return (max: 50, default: 50)", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived", + "type": "boolean", + "required": false, + "description": "Whether to include archived, inactive, or deleted folders (default: False)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List of folders in the space" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.GetFoldersForSpace", + "parameters": { + "space_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "456", + "type": "string", + "required": true + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "include_archived": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListsForFolder", + "qualifiedName": "Clickup.GetListsForFolder", + "fullyQualifiedName": "Clickup.GetListsForFolder@1.1.1", + "description": "Retrieve task lists from a ClickUp folder (when users refer to a folder as a \"directory\",\nthey mean the same thing).\n\nOnly use this tool when you already have the folder ID and want to see the lists within\nthat specific folder.\n\nImportant: When users mention a specific folder(or directory), always use this tool to get\nthe lists within that folder.\n\nThis tool fetches lists from the specified folder with support for offset-based retrieval\nand archived list filtering. Results are sorted alphabetically by name.", + "parameters": [ + { + "name": "folder_id", + "type": "string", + "required": true, + "description": "The ClickUp folder ID (also called directory ID) to get lists from", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The ClickUp workspace ID for GUI URL generation (should be a number)", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Starting position for offset-based retrieval (default: 0)", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of lists to return (max: 50, default: 50)", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived", + "type": "boolean", + "required": false, + "description": "Whether to include archived, inactive, or completed lists (default: False)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List of task lists in the folder" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.GetListsForFolder", + "parameters": { + "folder_id": { + "value": "123456", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "78910", + "type": "string", + "required": true + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "include_archived": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListsForSpace", + "qualifiedName": "Clickup.GetListsForSpace", + "fullyQualifiedName": "Clickup.GetListsForSpace@1.1.1", + "description": "Retrieve all task lists from a ClickUp space by collecting lists from all folders within the\nspace.\n\nOnly use this tool when you have a space ID and want to see all lists across all folders\nwithin that space.\n\nThis tool provides a comprehensive view of all lists in a space with support for offset-based\nretrieval and archived list filtering. Results are sorted alphabetically by name.", + "parameters": [ + { + "name": "space_id", + "type": "string", + "required": true, + "description": "The ClickUp space ID to get lists from", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The ClickUp workspace ID for GUI URL generation (should be a number)", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Starting position for offset-based retrieval (default: 0)", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of lists to return (max: 50, default: 50)", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived", + "type": "boolean", + "required": false, + "description": "Whether to include archived, inactive, or completed lists (default: False)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List of task lists from all folders in the space" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.GetListsForSpace", + "parameters": { + "space_id": { + "value": "123456", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "7890", + "type": "string", + "required": true + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "include_archived": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMembersForWorkspace", + "qualifiedName": "Clickup.GetMembersForWorkspace", + "fullyQualifiedName": "Clickup.GetMembersForWorkspace@1.1.1", + "description": "Retrieve all team members from a specific ClickUp workspace.\n\nOnly use this tool when you already have the workspace ID and need to see the members\nwithin that specific workspace.\n\nThis tool fetches detailed information about all members of a ClickUp workspace,\nincluding their basic profile information and role within the workspace.\nResults are sorted and support offset-based retrieval.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The ID of the ClickUp workspace to get team members from (should be a number)", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Starting position for offset-based retrieval (default: 0)", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of members to return (max: 50, default: 50)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List of team members in the specified workspace" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.GetMembersForWorkspace", + "parameters": { + "workspace_id": { + "value": "123456", + "type": "string", + "required": true + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSpaces", + "qualifiedName": "Clickup.GetSpaces", + "fullyQualifiedName": "Clickup.GetSpaces@1.1.1", + "description": "Retrieve spaces from a ClickUp workspace.\n\nUse this tool when users ask for:\n- Spaces within a workspace (not folders or lists)\n- Available spaces to choose from before getting folders\n- Space discovery when you need to identify space IDs or names\n- High-level workspace organization structure\n\nNote: This is for spaces (top-level containers), not folders (which contain lists) nor lists.\nThis tool fetches spaces from the specified workspace with support for offset-based retrieval\nand archived space filtering. Results are sorted alphabetically by name.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The ClickUp workspace ID to get spaces from (should be a number)", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Starting position for offset-based retrieval (default: 0)", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of spaces to return (max: 50, default: 50)", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived", + "type": "boolean", + "required": false, + "description": "Whether to include archived spaces (default: False)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List of spaces in the workspace" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.GetSpaces", + "parameters": { + "workspace_id": { + "value": "123456", + "type": "string", + "required": true + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "include_archived": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStatusesForList", + "qualifiedName": "Clickup.GetStatusesForList", + "fullyQualifiedName": "Clickup.GetStatusesForList@1.1.1", + "description": "Retrieve the possible task statuses for a specific ClickUp list.\n\nOnly use this tool when you already have the list ID and need to discover the valid\nstatuses for that specific list.\n\nUse this tool to discover valid status labels and their ordering/type for a list\nbefore creating or updating tasks, since statuses can be customized per list.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The ClickUp list ID to retrieve possible task statuses for", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Possible statuses for a given list (useful when creating or updating tasks)" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.GetStatusesForList", + "parameters": { + "list_id": { + "value": "abc123def456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSystemGuidance", + "qualifiedName": "Clickup.GetSystemGuidance", + "fullyQualifiedName": "Clickup.GetSystemGuidance@1.1.1", + "description": "Return static guidance intended solely to help agents make informed decisions.\n\nImportant: The guidance content is for internal agent use only and should not be\ndisplayed to end users.", + "parameters": [], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Static guidance about ClickUp structure and usage tips" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.GetSystemGuidance", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTaskById", + "qualifiedName": "Clickup.GetTaskById", + "fullyQualifiedName": "Clickup.GetTaskById@1.1.1", + "description": "Get detailed information about a specific task by its ID. Also supports custom task IDs\nwhen workspace_id_for_custom_id is provided.\n\nUse when need more information about a task than if it id or custom id is already known.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The task ID or custom task ID to retrieve", + "enum": null, + "inferrable": true + }, + { + "name": "include_subtasks", + "type": "boolean", + "required": false, + "description": "Include subtask information (default: false )", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_for_custom_id", + "type": "string", + "required": false, + "description": "The ClickUp workspace ID (provide this to use custom task IDs)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The detailed task response" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.GetTaskById", + "parameters": { + "task_id": { + "value": "12345", + "type": "string", + "required": true + }, + "include_subtasks": { + "value": true, + "type": "boolean", + "required": false + }, + "workspace_id_for_custom_id": { + "value": "workspace_6789", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaskCommentReplies", + "qualifiedName": "Clickup.GetTaskCommentReplies", + "fullyQualifiedName": "Clickup.GetTaskCommentReplies@1.1.1", + "description": "Get threaded replies for a specific ClickUp comment with pagination support.\n\nThis tool retrieves replies to a parent comment using ClickUp's threaded\ncomment system with offset-based pagination. The parent comment itself\nis not included in the results, only the threaded replies.", + "parameters": [ + { + "name": "comment_id", + "type": "string", + "required": true, + "description": "The ClickUp comment ID to get replies for", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Starting position for offset-based retrieval (default: 0)", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of replies to return (max: 50, default: 20)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Threaded replies for the specified comment" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.GetTaskCommentReplies", + "parameters": { + "comment_id": { + "value": "abcd1234", + "type": "string", + "required": true + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaskComments", + "qualifiedName": "Clickup.GetTaskComments", + "fullyQualifiedName": "Clickup.GetTaskComments@1.1.1", + "description": "Get comments for a specific ClickUp task with pagination support.\n\nThis tool retrieves comments from a task using ClickUp's specific pagination method.\nFor the first call, omit oldest_comment_id. For subsequent calls, use the\noldest_comment_id from the previous response to get the next set of comments.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The ClickUp task ID to get comments for", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Number of comments to retrieve (max 25, default: 5)", + "enum": null, + "inferrable": true + }, + { + "name": "oldest_comment_id", + "type": "string", + "required": false, + "description": "ID of the oldest comment from previous call for pagination", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Comments for the specified task" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.GetTaskComments", + "parameters": { + "task_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "limit": { + "value": 5, + "type": "integer", + "required": false + }, + "oldest_comment_id": { + "value": "", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTasksByAssignees", + "qualifiedName": "Clickup.GetTasksByAssignees", + "fullyQualifiedName": "Clickup.GetTasksByAssignees@1.1.1", + "description": "Get filtered tasks assigned to specific team members with advanced filtering options.\n\nThis tool filters tasks by assignee(s) across the entire workspace.\nProvides comprehensive filtering capabilities including status and date range filtering.\n\nImportant: Use this tool when not interested in a specific task but a set of tasks from\na specific assignee\nor filtering criteria that does not include the task title(name).", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The ClickUp workspace ID for GUI URL generation (should be a number)", + "enum": null, + "inferrable": true + }, + { + "name": "assignees_ids", + "type": "array", + "innerType": "integer", + "required": true, + "description": "List of assignee user IDs to get tasks for", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Starting position for offset-based retrieval (default: 0)", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of tasks to return (max: 50, default: 20)", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "string", + "required": false, + "description": "Field to sort tasks by", + "enum": ["created", "updated", "due_date"], + "inferrable": true + }, + { + "name": "should_sort_by_reverse", + "type": "boolean", + "required": false, + "description": "Whether to sort in descending order (default: False)", + "enum": null, + "inferrable": true + }, + { + "name": "statuses", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of status strings to filter by", + "enum": null, + "inferrable": true + }, + { + "name": "include_closed", + "type": "boolean", + "required": false, + "description": "Whether to include closed tasks (default: False)", + "enum": null, + "inferrable": true + }, + { + "name": "due_date_gt", + "type": "string", + "required": false, + "description": "Due date greater than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS])", + "enum": null, + "inferrable": true + }, + { + "name": "due_date_lt", + "type": "string", + "required": false, + "description": "Due date less than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS])", + "enum": null, + "inferrable": true + }, + { + "name": "date_created_gt", + "type": "string", + "required": false, + "description": "Created date greater than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS])", + "enum": null, + "inferrable": true + }, + { + "name": "date_created_lt", + "type": "string", + "required": false, + "description": "Created date less than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS])", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Filtered tasks assigned to the specified assignees" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.GetTasksByAssignees", + "parameters": { + "workspace_id": { + "value": "123456", + "type": "string", + "required": true + }, + "assignees_ids": { + "value": ["111", "222", "333"], + "type": "array", + "required": true + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "order_by": { + "value": "due_date", + "type": "string", + "required": false + }, + "should_sort_by_reverse": { + "value": true, + "type": "boolean", + "required": false + }, + "statuses": { + "value": ["in_progress", "completed"], + "type": "array", + "required": false + }, + "include_closed": { + "value": false, + "type": "boolean", + "required": false + }, + "due_date_gt": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "due_date_lt": { + "value": "2023-12-31", + "type": "string", + "required": false + }, + "date_created_gt": { + "value": "2022-01-01", + "type": "string", + "required": false + }, + "date_created_lt": { + "value": "2022-12-31", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTasksByScope", + "qualifiedName": "Clickup.GetTasksByScope", + "fullyQualifiedName": "Clickup.GetTasksByScope@1.1.1", + "description": "Get filtered tasks from ClickUp with advanced filtering options.\n\nThis unified tool filters tasks at different organizational levels:\n\nImportant: Use this tool when not interested in a specific task but a set of tasks from a\nspecific scope\nor filtering criteria that does not include the task title(name).", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The ClickUp workspace ID for GUI URL generation (should be a number)", + "enum": null, + "inferrable": true + }, + { + "name": "scope", + "type": "string", + "required": true, + "description": "The scope to filter tasks by (all, spaces, folders, or lists)", + "enum": ["all", "spaces", "folders", "lists"], + "inferrable": true + }, + { + "name": "item_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of IDs to get tasks from (required for spaces/folders/lists, ignored for 'all')", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Starting position for offset-based retrieval (default: 0)", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of tasks to return (max: 50, default: 20)", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "string", + "required": false, + "description": "Field to sort tasks by", + "enum": ["created", "updated", "due_date"], + "inferrable": true + }, + { + "name": "should_sort_by_reverse", + "type": "boolean", + "required": false, + "description": "Whether to sort in descending order (default: False)", + "enum": null, + "inferrable": true + }, + { + "name": "statuses", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of status strings to filter by", + "enum": null, + "inferrable": true + }, + { + "name": "include_closed", + "type": "boolean", + "required": false, + "description": "Whether to include closed tasks (default: False)", + "enum": null, + "inferrable": true + }, + { + "name": "due_date_gt", + "type": "string", + "required": false, + "description": "Due date greater than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS])", + "enum": null, + "inferrable": true + }, + { + "name": "due_date_lt", + "type": "string", + "required": false, + "description": "Due date less than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS])", + "enum": null, + "inferrable": true + }, + { + "name": "date_created_gt", + "type": "string", + "required": false, + "description": "Created date greater than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS])", + "enum": null, + "inferrable": true + }, + { + "name": "date_created_lt", + "type": "string", + "required": false, + "description": "Created date less than (date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS])", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Filtered tasks from the specified scope" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.GetTasksByScope", + "parameters": { + "workspace_id": { + "value": "123456", + "type": "string", + "required": true + }, + "scope": { + "value": "lists", + "type": "string", + "required": true + }, + "item_ids": { + "value": ["654321", "789012"], + "type": "array", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "order_by": { + "value": "due_date", + "type": "string", + "required": false + }, + "should_sort_by_reverse": { + "value": true, + "type": "boolean", + "required": false + }, + "statuses": { + "value": ["in progress", "completed"], + "type": "array", + "required": false + }, + "include_closed": { + "value": false, + "type": "boolean", + "required": false + }, + "due_date_gt": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "due_date_lt": { + "value": "2023-10-31", + "type": "string", + "required": false + }, + "date_created_gt": { + "value": "2023-09-01", + "type": "string", + "required": false + }, + "date_created_lt": { + "value": "2023-09-30", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceInsights", + "qualifiedName": "Clickup.GetWorkspaceInsights", + "fullyQualifiedName": "Clickup.GetWorkspaceInsights@1.1.1", + "description": "Return a brief overview for a workspace using the latest updated tasks to inform the user.\n\nIncludes task summary, team insights, and container(space, folder, list) insights.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The ClickUp workspace ID to summarize (should be a number)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Brief workspace overview leveraging latest updated tasks to deliver actionable insights" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.GetWorkspaceInsights", + "parameters": { + "workspace_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTask", + "qualifiedName": "Clickup.UpdateTask", + "fullyQualifiedName": "Clickup.UpdateTask@1.1.1", + "description": "Update one or more fields of an existing ClickUp task.\n\nUse this tool to change a task's title, description, status, priority, dates,\nhierarchy (by setting a new parent), or sprint points. You can pass only the\nfields you want to modify—everything else remains unchanged.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The ClickUp task ID to update", + "enum": null, + "inferrable": true + }, + { + "name": "task_title", + "type": "string", + "required": false, + "description": "The new name/title of the task", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "The new description/content of the task", + "enum": null, + "inferrable": true + }, + { + "name": "priority", + "type": "string", + "required": false, + "description": "Task priority", + "enum": ["URGENT", "HIGH", "NORMAL", "LOW"], + "inferrable": true + }, + { + "name": "status", + "type": "string", + "required": false, + "description": "Task status label (string)", + "enum": null, + "inferrable": true + }, + { + "name": "parent_task_id", + "type": "string", + "required": false, + "description": "The new parent task ID", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "Date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]; ISO-8601 also supported", + "enum": null, + "inferrable": true + }, + { + "name": "due_date", + "type": "string", + "required": false, + "description": "Date string in format YYYY-MM-DD or YYYY-MM-DD HH:MM[:SS]; ISO-8601 also supported", + "enum": null, + "inferrable": true + }, + { + "name": "sprint_points", + "type": "integer", + "required": false, + "description": "The new sprint points for the task", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Details of the updated task" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.UpdateTask", + "parameters": { + "task_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "task_title": { + "value": "Update User Interface", + "type": "string", + "required": false + }, + "description": { + "value": "Enhance the user interface for better accessibility.", + "type": "string", + "required": false + }, + "priority": { + "value": "High", + "type": "string", + "required": false + }, + "status": { + "value": "In Progress", + "type": "string", + "required": false + }, + "parent_task_id": { + "value": "def456", + "type": "string", + "required": false + }, + "start_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "due_date": { + "value": "2023-10-15", + "type": "string", + "required": false + }, + "sprint_points": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTaskAssignees", + "qualifiedName": "Clickup.UpdateTaskAssignees", + "fullyQualifiedName": "Clickup.UpdateTaskAssignees@1.1.1", + "description": "Update task assignees by adding and/or removing specific users.\n\nUse this tool to manage task assignments by specifying which users to add or remove.\nYou can add assignees, remove assignees, or do both in a single operation.\nAt least one of the parameters (assignee_ids_to_add or assignee_ids_to_remove) must be provided.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The ClickUp task ID to update assignees for", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_ids_to_add", + "type": "array", + "innerType": "integer", + "required": false, + "description": "List of user IDs to add as assignees", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_ids_to_remove", + "type": "array", + "innerType": "integer", + "required": false, + "description": "List of user IDs to remove from assignees", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Result of the assignee update operation" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.UpdateTaskAssignees", + "parameters": { + "task_id": { + "value": "12345", + "type": "string", + "required": true + }, + "assignee_ids_to_add": { + "value": ["user_1", "user_2"], + "type": "array", + "required": false + }, + "assignee_ids_to_remove": { + "value": ["user_3"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTaskComment", + "qualifiedName": "Clickup.UpdateTaskComment", + "fullyQualifiedName": "Clickup.UpdateTaskComment@1.1.1", + "description": "Update an existing comment on a ClickUp task.\n\nThis tool is for updating top-level comments only, not threaded comment replies.\nUse this tool to modify comment text, change assignment, or set resolution status.\nAt least one parameter (comment_text, assignee_id, or resolution) must be provided.", + "parameters": [ + { + "name": "comment_id", + "type": "string", + "required": true, + "description": "The ClickUp comment ID to update", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The ClickUp task ID the comment belongs to", + "enum": null, + "inferrable": true + }, + { + "name": "comment_text", + "type": "string", + "required": false, + "description": "New text content for the comment (optional)", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_id", + "type": "integer", + "required": false, + "description": "User ID to assign the comment to (optional)", + "enum": null, + "inferrable": true + }, + { + "name": "resolution", + "type": "string", + "required": false, + "description": "Set comment resolution status (optional)", + "enum": ["resolved", "unresolved"], + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Details of the updated comment" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.UpdateTaskComment", + "parameters": { + "comment_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "task_id": { + "value": "def456", + "type": "string", + "required": true + }, + "comment_text": { + "value": "Updated comment text here.", + "type": "string", + "required": false + }, + "assignee_id": { + "value": 789, + "type": "integer", + "required": false + }, + "resolution": { + "value": "resolved", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "Clickup.WhoAmI", + "fullyQualifiedName": "Clickup.WhoAmI@1.1.1", + "description": "Return current user profile and accessible workspaces (teams).\n\nThis should be the FIRST tool called when starting any ClickUp interaction.\n\nEach workspace represents\na separate team or organization with its own members, projects, and settings.", + "parameters": [], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The current user's profile information and accessible workspaces (teams). This should be the first tool called." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Clickup.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## TaskPriority\n\n- **URGENT**: `URGENT`\n- **HIGH**: `HIGH`\n- **NORMAL**: `NORMAL`\n- **LOW**: `LOW`", + "header": "## TaskPriority" + }, + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## TaskOrderBy\n\n- **CREATED**: `created`\n- **UPDATED**: `updated`\n- **DUE_DATE**: `due_date`", + "header": "## TaskOrderBy" + }, + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## CommentResolution\n\n- **SET_AS_RESOLVED**: `resolved`\n- **SET_AS_UNRESOLVED**: `unresolved`", + "header": "## CommentResolution" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:27:41.755Z", + "summary": "The Arcade.dev Toolkit for ClickUp empowers developers to efficiently manage tasks, comments, and workspace structures within ClickUp through seamless API interactions. \n\n**Capabilities**\n- Create, update, and retrieve tasks and comments, enabling direct engagement with team tasks.\n- Conduct fuzzy searches for lists, folders, and members to enhance navigability.\n- Retrieve insights about workspaces and configure task statuses dynamically.\n- Manage team assignments effectively, facilitating team collaboration.\n- Execute structured queries for tasks based on specified criteria to optimize task management.\n\n**OAuth** \n- Provider: ClickUp \n- Note: Utilizes OAuth2 authentication for secure access.\n\n**Secrets** \n- No secrets required for integration." +} diff --git a/data/toolkits/clickupapi.json b/data/toolkits/clickupapi.json new file mode 100644 index 000000000..df7c12d5d --- /dev/null +++ b/data/toolkits/clickupapi.json @@ -0,0 +1,10330 @@ +{ + "id": "ClickupApi", + "label": "ClickUp API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the clickup API.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/clickup.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/clickup-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "clickup", + "allScopes": [] + }, + "tools": [ + { + "name": "AddChatViewComment", + "qualifiedName": "ClickupApi.AddChatViewComment", + "fullyQualifiedName": "ClickupApi.AddChatViewComment@1.0.0", + "description": "Add a new comment to a Chat view.\n\nUse this tool to add a comment to a Chat view in ClickUp. This can be used to facilitate discussion and share information in a specific View context.", + "parameters": [ + { + "name": "comment_text", + "type": "string", + "required": true, + "description": "The text content of the comment to be added to the Chat view.", + "enum": null, + "inferrable": true + }, + { + "name": "send_notifications_to_all", + "type": "boolean", + "required": true, + "description": "Set to true to send notifications to everyone, including the comment creator.", + "enum": null, + "inferrable": true + }, + { + "name": "view_id", + "type": "string", + "required": true, + "description": "The ID of the Chat view where the comment will be added. Expected as a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateChatViewComment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddChatViewComment", + "parameters": { + "comment_text": { + "value": "This is a new comment on the Chat view.", + "type": "string", + "required": true + }, + "send_notifications_to_all": { + "value": true, + "type": "boolean", + "required": true + }, + "view_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddChecklistItemClickup", + "qualifiedName": "ClickupApi.AddChecklistItemClickup", + "fullyQualifiedName": "ClickupApi.AddChecklistItemClickup@1.0.0", + "description": "Add an item to a checklist in ClickUp tasks.\n\nUse this tool to add a new line item to an existing checklist within a task in ClickUp. This can be useful for task management and ensuring all steps are documented within a checklist.", + "parameters": [ + { + "name": "checklist_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the checklist. Must be in UUID format.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_user_id", + "type": "integer", + "required": false, + "description": "The unique ID of the user assigned to the checklist item. This should be an integer value representing the user's ID.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_item_name", + "type": "string", + "required": false, + "description": "The name of the checklist item to be added. This should clearly describe the task or item to be completed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateChecklistItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddChecklistItemClickup", + "parameters": { + "checklist_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "assignee_user_id": { + "value": 42, + "type": "integer", + "required": false + }, + "checklist_item_name": { + "value": "Complete the project report", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddChecklistToTask", + "qualifiedName": "ClickupApi.AddChecklistToTask", + "fullyQualifiedName": "ClickupApi.AddChecklistToTask@1.0.0", + "description": "Add a new checklist to a task in ClickUp.\n\nUse this tool to add a checklist to a specific task in ClickUp by providing the task ID.", + "parameters": [ + { + "name": "checklist_name", + "type": "string", + "required": true, + "description": "The name or title of the checklist to be added to the task. It should be a descriptive string identifying the purpose or contents of the checklist.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the task to which the checklist will be added. It can be a custom or default task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_for_custom_task", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when 'custom_task_ids' is set to true. It's necessary to reference tasks by custom IDs.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateChecklist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddChecklistToTask", + "parameters": { + "checklist_name": { + "value": "Weekly Review Checklist", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "abc-123", + "type": "string", + "required": true + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "workspace_id_for_custom_task": { + "value": 456, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddCommentToList", + "qualifiedName": "ClickupApi.AddCommentToList", + "fullyQualifiedName": "ClickupApi.AddCommentToList@1.0.0", + "description": "Add a comment to a specific list in ClickUp.\n\nThis tool allows you to add a comment to a specified list in ClickUp. Use it when you need to provide additional information or feedback on a list.", + "parameters": [ + { + "name": "assignee_id", + "type": "integer", + "required": true, + "description": "The ID of the user to whom the comment is assigned. This should be an integer value representing the user's unique identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_text", + "type": "string", + "required": true, + "description": "The text of the comment to be added to the list. This should contain the message or information you wish to convey.", + "enum": null, + "inferrable": true + }, + { + "name": "list_identifier", + "type": "integer", + "required": true, + "description": "The unique ID of the list where the comment will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "notify_all", + "type": "boolean", + "required": true, + "description": "If true, notifications are sent to everyone, including the comment creator.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateListComment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddCommentToList", + "parameters": { + "assignee_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "comment_text": { + "value": "This is a follow-up comment regarding the list updates.", + "type": "string", + "required": true + }, + "list_identifier": { + "value": 67890, + "type": "integer", + "required": true + }, + "notify_all": { + "value": true, + "type": "boolean", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddFolderlessListToSpace", + "qualifiedName": "ClickupApi.AddFolderlessListToSpace", + "fullyQualifiedName": "ClickupApi.AddFolderlessListToSpace@1.0.0", + "description": "Add a new folderless list to a specified space.\n\nThis tool is used to create a new list within a specified space in ClickUp without associating it with a folder. It facilitates the organization of tasks directly within the space.", + "parameters": [ + { + "name": "list_name", + "type": "string", + "required": true, + "description": "The name of the new list to be created within the space.", + "enum": null, + "inferrable": true + }, + { + "name": "space_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the space where the list will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "due_date_timestamp", + "type": "integer", + "required": false, + "description": "An integer representing the UNIX timestamp for the list's due date. This defines the deadline for the list.", + "enum": null, + "inferrable": true + }, + { + "name": "include_due_time", + "type": "boolean", + "required": false, + "description": "Set to true if the due date should include a specific time.", + "enum": null, + "inferrable": true + }, + { + "name": "list_color_status", + "type": "string", + "required": false, + "description": "Specifies the color representing the List. This is for visual identification and does not affect task statuses.", + "enum": null, + "inferrable": true + }, + { + "name": "list_description", + "type": "string", + "required": false, + "description": "A text description for the new list. Use plain text. For markdown, use `markdown_content`.", + "enum": null, + "inferrable": true + }, + { + "name": "list_markdown_description", + "type": "string", + "required": false, + "description": "Markdown formatted description for the list. Use this instead of a plain text description.", + "enum": null, + "inferrable": true + }, + { + "name": "list_owner_user_id", + "type": "integer", + "required": false, + "description": "The user ID for the list owner to be assigned to the new list.", + "enum": null, + "inferrable": true + }, + { + "name": "list_priority_level", + "type": "integer", + "required": false, + "description": "Set the priority level for the list. It should be an integer value indicating the list's urgency or importance.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateFolderlessList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddFolderlessListToSpace", + "parameters": { + "list_name": { + "value": "Project Alpha Tasks", + "type": "string", + "required": true + }, + "space_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "due_date_timestamp": { + "value": 1700000000, + "type": "integer", + "required": false + }, + "include_due_time": { + "value": true, + "type": "boolean", + "required": false + }, + "list_color_status": { + "value": "#FF5733", + "type": "string", + "required": false + }, + "list_description": { + "value": "Tasks for Project Alpha.", + "type": "string", + "required": false + }, + "list_markdown_description": { + "value": "## Tasks for Project Alpha\n- Task 1\n- Task 2", + "type": "string", + "required": false + }, + "list_owner_user_id": { + "value": 78910, + "type": "integer", + "required": false + }, + "list_priority_level": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddGuestToFolder", + "qualifiedName": "ClickupApi.AddGuestToFolder", + "fullyQualifiedName": "ClickupApi.AddGuestToFolder@1.0.0", + "description": "Share a folder with a guest in ClickUp's Enterprise Plan.\n\nThis tool shares a specific folder with a guest, available only for ClickUp Workspaces on the Enterprise Plan. Use it to collaborate by granting access to specified guests.", + "parameters": [ + { + "name": "folder_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the folder to be shared with the guest.", + "enum": null, + "inferrable": true + }, + { + "name": "guest_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the guest to whom the folder will be shared. This should be an integer representing the guest's ID.", + "enum": null, + "inferrable": true + }, + { + "name": "guest_permission_level", + "type": "string", + "required": true, + "description": "Defines guest's access level: 'read' for view only, 'comment', 'edit', or 'create' for full access.", + "enum": null, + "inferrable": true + }, + { + "name": "include_shared_items", + "type": "boolean", + "required": false, + "description": "Set to true to include details of items shared with the guest. Default is true.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AddGuestToFolder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddGuestToFolder", + "parameters": { + "folder_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "guest_identifier": { + "value": 67890, + "type": "integer", + "required": true + }, + "guest_permission_level": { + "value": "edit", + "type": "string", + "required": true + }, + "include_shared_items": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddGuestToList", + "qualifiedName": "ClickupApi.AddGuestToList", + "fullyQualifiedName": "ClickupApi.AddGuestToList@1.0.0", + "description": "Add a guest to a specific list in ClickUp.\n\nThis tool adds a guest to a list within ClickUp, available only for Enterprise Plan workspaces.", + "parameters": [ + { + "name": "guest_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the guest to be added. This should be an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "guest_permission_level", + "type": "string", + "required": true, + "description": "Permission level for the guest on the list. Options are `read`, `comment`, `edit`, or `create`.", + "enum": null, + "inferrable": true + }, + { + "name": "list_id", + "type": "integer", + "required": true, + "description": "The identifier of the list to which the guest will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "include_shared_details", + "type": "boolean", + "required": false, + "description": "Set to false to exclude shared item details from the guest view; defaults to true to include them.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AddGuestToList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddGuestToList", + "parameters": { + "guest_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "guest_permission_level": { + "value": "edit", + "type": "string", + "required": true + }, + "list_id": { + "value": 67890, + "type": "integer", + "required": true + }, + "include_shared_details": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddSpaceTaskTag", + "qualifiedName": "ClickupApi.AddSpaceTaskTag", + "fullyQualifiedName": "ClickupApi.AddSpaceTaskTag@1.0.0", + "description": "Add a new task tag to a specified space in ClickUp.\n\nUse this tool to create a new tag for tasks within a specific space in ClickUp. It's useful for organizing tasks by category or priority.", + "parameters": [ + { + "name": "space_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the space where the tag will be added. It must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_background_color", + "type": "string", + "required": true, + "description": "Hex code representing the background color for the tag. It should be a string in the format '#RRGGBB'.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_foreground_color", + "type": "string", + "required": true, + "description": "Hex code for the tag's foreground color. It defines the text color of the tag.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_name", + "type": "string", + "required": true, + "description": "Name of the new tag to be added to the space. It should be a descriptive and concise identifier for categorizing tasks.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateSpaceTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddSpaceTaskTag", + "parameters": { + "space_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "tag_background_color": { + "value": "#FF5733", + "type": "string", + "required": true + }, + "tag_foreground_color": { + "value": "#FFFFFF", + "type": "string", + "required": true + }, + "tag_name": { + "value": "Urgent", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddSpaceView", + "qualifiedName": "ClickupApi.AddSpaceView", + "fullyQualifiedName": "ClickupApi.AddSpaceView@1.0.0", + "description": "Add a new view to a ClickUp space.\n\n Use this tool to add a List, Board, Calendar, Table, Timeline, Workload, Activity, Map, Chat, or Gantt view to a ClickUp Space.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "space_id", + "type": "integer", + "required": false, + "description": "The unique identifier of the ClickUp space where the view will be added. It should be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateSpaceView'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddSpaceView", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "space_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"view_type\":\"board\",\"name\":\"Project Board\",\"fields\":[{\"name\":\"Status\",\"type\":\"dropdown\"},{\"name\":\"Due Date\",\"type\":\"date\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddTagToTask", + "qualifiedName": "ClickupApi.AddTagToTask", + "fullyQualifiedName": "ClickupApi.AddTagToTask@1.0.0", + "description": "Add a tag to a specific task in ClickUp.\n\nUse this tool to assign a tag to a task in ClickUp by specifying the task ID and tag name. It helps in organizing and categorizing tasks efficiently.", + "parameters": [ + { + "name": "content_type", + "type": "string", + "required": true, + "description": "Specifies the media type of the request. Typically set to 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_name", + "type": "string", + "required": true, + "description": "The name of the tag to add to the task. This should be a string representing the desired tag.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the task to which the tag will be added. Can be a custom task ID if specified.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true if you want to reference a task using its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_if_custom_task_ids", + "type": "integer", + "required": false, + "description": "Workspace ID required when referencing a task by its custom task ID. Only needed if `custom_task_ids=true`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AddTagToTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddTagToTask", + "parameters": { + "content_type": { + "value": "application/json", + "type": "string", + "required": true + }, + "tag_name": { + "value": "urgent", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "abc123", + "type": "string", + "required": true + }, + "use_custom_task_ids": { + "value": false, + "type": "boolean", + "required": false + }, + "workspace_id_if_custom_task_ids": { + "value": null, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddTagToTimeEntry", + "qualifiedName": "ClickupApi.AddTagToTimeEntry", + "fullyQualifiedName": "ClickupApi.AddTagToTimeEntry@1.0.0", + "description": "Add a label to a specific time entry in ClickUp.\n\n This tool is used to attach a label to a time entry for a specific team in ClickUp. It should be called when you want to organize or categorize time entries with tags for better tracking and management.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "The ID of the workspace where the time entry is located. This is required to specify which team the tag should be added to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'Addtagsfromtimeentries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddTagToTimeEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"tag\":\"Project Management\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddTargetToGoal", + "qualifiedName": "ClickupApi.AddTargetToGoal", + "fullyQualifiedName": "ClickupApi.AddTargetToGoal@1.0.0", + "description": "Add a target to a specific goal in ClickUp.\n\nUse this tool to add a key result target to an existing goal in ClickUp, enhancing goal tracking and achievement.", + "parameters": [ + { + "name": "goal_identifier", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the goal to which the target will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_value_steps", + "type": "integer", + "required": true, + "description": "Specify the starting value for the target's progress steps, as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "linked_task_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of task IDs to associate the target with tasks.", + "enum": null, + "inferrable": true + }, + { + "name": "list_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "Array of List IDs to associate the target with multiple Lists.", + "enum": null, + "inferrable": true + }, + { + "name": "target_name", + "type": "string", + "required": true, + "description": "Specify the name for the target being added to the goal. It should be a descriptive label for easy identification.", + "enum": null, + "inferrable": true + }, + { + "name": "target_owners_ids", + "type": "array", + "innerType": "integer", + "required": true, + "description": "An array of user IDs representing the owners of the key result target.", + "enum": null, + "inferrable": true + }, + { + "name": "target_steps_end", + "type": "integer", + "required": true, + "description": "Specify the final value for the target steps. It indicates the goal completion threshold.", + "enum": null, + "inferrable": true + }, + { + "name": "target_type", + "type": "string", + "required": true, + "description": "Specify the type of target (key result) as one of the following: `number`, `currency`, `boolean`, `percentage`, or `automatic`.", + "enum": null, + "inferrable": true + }, + { + "name": "target_unit", + "type": "string", + "required": true, + "description": "Specify the unit for the target if using types like number, currency, or percentage.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateKeyResult'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddTargetToGoal", + "parameters": { + "goal_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "initial_value_steps": { + "value": 10, + "type": "integer", + "required": true + }, + "linked_task_ids": { + "value": ["task_1", "task_2", "task_3"], + "type": "array", + "required": true + }, + "list_ids": { + "value": ["list_1", "list_2"], + "type": "array", + "required": true + }, + "target_name": { + "value": "Improve Customer Satisfaction", + "type": "string", + "required": true + }, + "target_owners_ids": { + "value": ["user_1", "user_2"], + "type": "array", + "required": true + }, + "target_steps_end": { + "value": 50, + "type": "integer", + "required": true + }, + "target_type": { + "value": "percentage", + "type": "string", + "required": true + }, + "target_unit": { + "value": "%", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddTaskComment", + "qualifiedName": "ClickupApi.AddTaskComment", + "fullyQualifiedName": "ClickupApi.AddTaskComment@1.0.0", + "description": "Add a new comment to a specific task on ClickUp.\n\nThis tool allows users to add a new comment to a specified task on ClickUp. It should be called when there's a need to comment on a task, offering a way to communicate updates, feedback, or any relevant information directly related to the task in question.", + "parameters": [ + { + "name": "comment_content", + "type": "string", + "required": true, + "description": "The text of the comment to be added to the task. It should contain any updates, feedback, or relevant information.", + "enum": null, + "inferrable": true + }, + { + "name": "send_notifications_to_all", + "type": "boolean", + "required": true, + "description": "If true, notifications will be sent to everyone, including the creator of the comment.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_task_id", + "type": "string", + "required": true, + "description": "The ID of the task to add the comment to. Required for identifying the target task.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_group", + "type": "string", + "required": false, + "description": "Specifies a group of users (as a comma-separated string) to be assigned to the comment. Ensure the group is relevant to the task.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_assignee_id", + "type": "integer", + "required": false, + "description": "An integer representing the user ID of the assignee for the comment on the task.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_for_custom_task", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when referencing a task by its custom task ID (set `custom_task_ids` to true).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTaskComment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddTaskComment", + "parameters": { + "comment_content": { + "value": "Please review the latest changes made to the document.", + "type": "string", + "required": true + }, + "send_notifications_to_all": { + "value": true, + "type": "boolean", + "required": true + }, + "specific_task_id": { + "value": "123456", + "type": "string", + "required": true + }, + "assignee_group": { + "value": "design_team,development_team", + "type": "string", + "required": false + }, + "comment_assignee_id": { + "value": 42, + "type": "integer", + "required": false + }, + "use_custom_task_ids": { + "value": false, + "type": "boolean", + "required": false + }, + "workspace_id_for_custom_task": { + "value": 101, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddTaskToClickupList", + "qualifiedName": "ClickupApi.AddTaskToClickupList", + "fullyQualifiedName": "ClickupApi.AddTaskToClickupList@1.0.0", + "description": "Add a task to an additional list in ClickUp.\n\nThis tool adds a specified task to an additional list in ClickUp, requiring the 'Tasks in Multiple List' ClickApp to be enabled. Use this tool to manage tasks across multiple lists efficiently.", + "parameters": [ + { + "name": "target_list_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the target list where the task will be added. This is required to associate the task with the correct list in ClickUp.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "Specify the ID of the task to be added to an additional list in ClickUp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AddTaskToList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddTaskToClickupList", + "parameters": { + "target_list_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "task_identifier": { + "value": "task_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddViewToClickupList", + "qualifiedName": "ClickupApi.AddViewToClickupList", + "fullyQualifiedName": "ClickupApi.AddViewToClickupList@1.0.0", + "description": "Add various views to a ClickUp list.\n\n Use this tool to add different types of views (List, Board, Calendar, etc.) to a specific ClickUp list using the list ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "clickup_list_id", + "type": "integer", + "required": false, + "description": "An integer representing the ID of the ClickUp list to which the view will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateListView'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddViewToClickupList", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "clickup_list_id": { + "value": 123456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"view_type\":\"list\",\"name\":\"My Custom List View\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddViewToFolder", + "qualifiedName": "ClickupApi.AddViewToFolder", + "fullyQualifiedName": "ClickupApi.AddViewToFolder@1.0.0", + "description": "Add various view types to a ClickUp folder.\n\n Use this tool to add a List, Board, Calendar, Table, Timeline, Workload, Activity, Map, Chat, or Gantt view to a specific folder in ClickUp.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "folder_id", + "type": "integer", + "required": false, + "description": "The unique integer ID of the ClickUp folder where the view will be added. Required for specifying the target folder. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateFolderView'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.AddViewToFolder", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "folder_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"view_type\":\"board\",\"name\":\"Project Board\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ClickupLegacyTimeTracking", + "qualifiedName": "ClickupApi.ClickupLegacyTimeTracking", + "fullyQualifiedName": "ClickupApi.ClickupLegacyTimeTracking@1.0.0", + "description": "Log time entry for a ClickUp task using legacy endpoint.\n\nThis tool allows logging time entries for a specific ClickUp task using a legacy API endpoint. It should be called when you need to record time spent on tasks, although it's recommended to use the updated Time Tracking API for new implementations.", + "parameters": [ + { + "name": "clickup_task_id", + "type": "string", + "required": true, + "description": "The unique identifier of the task for which time is being logged. This can refer to either the standard task ID or a custom task ID if specified.", + "enum": null, + "inferrable": true + }, + { + "name": "end_timestamp", + "type": "integer", + "required": true, + "description": "Epoch timestamp indicating when the time tracking ended for the task.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_unix_epoch", + "type": "integer", + "required": true, + "description": "The start time of the time entry in Unix epoch format. This is required to log time for a task.", + "enum": null, + "inferrable": true + }, + { + "name": "time_spent_seconds", + "type": "integer", + "required": true, + "description": "Duration of time spent on the task in seconds. This is the time you want to log for the specific task.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when `custom_task_ids` is `true`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'Tracktime'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ClickupLegacyTimeTracking", + "parameters": { + "clickup_task_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "end_timestamp": { + "value": 1697077200, + "type": "integer", + "required": true + }, + "start_time_unix_epoch": { + "value": 1697073600, + "type": "integer", + "required": true + }, + "time_spent_seconds": { + "value": 3600, + "type": "integer", + "required": true + }, + "use_custom_task_ids": { + "value": false, + "type": "boolean", + "required": false + }, + "workspace_id": { + "value": 123456, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ConfigureWorkspaceGuest", + "qualifiedName": "ClickupApi.ConfigureWorkspaceGuest", + "fullyQualifiedName": "ClickupApi.ConfigureWorkspaceGuest@1.0.0", + "description": "Configure options for a guest in a workspace.\n\nThis tool adjusts settings for a guest in a ClickUp workspace, specifically for teams on the Enterprise Plan.", + "parameters": [ + { + "name": "guest_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the guest to be configured in the workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the ClickUp workspace where the guest is being configured. This is required for identifying the specific workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_guest_to_edit_tags", + "type": "boolean", + "required": false, + "description": "Set to true to allow the guest to edit tags in the workspace; false to disallow.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_view_creation", + "type": "boolean", + "required": false, + "description": "A boolean to specify if the guest can create views. True allows view creation, false denies it.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_viewing_points_estimated", + "type": "boolean", + "required": false, + "description": "Specify if the guest can view estimated points in the workspace. True allows viewing; false restricts it.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_viewing_time_spent", + "type": "boolean", + "required": false, + "description": "Set to true to allow the guest to view time spent on tasks, false to restrict.", + "enum": null, + "inferrable": true + }, + { + "name": "can_see_time_estimates", + "type": "boolean", + "required": false, + "description": "Determines if the guest can view time estimates. Use true to allow, false to restrict.", + "enum": null, + "inferrable": true + }, + { + "name": "guest_custom_role_id", + "type": "integer", + "required": false, + "description": "An integer representing the custom role ID assigned to the guest in the workspace.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'EditGuestOnWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ConfigureWorkspaceGuest", + "parameters": { + "guest_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "workspace_id": { + "value": 67890, + "type": "integer", + "required": true + }, + "allow_guest_to_edit_tags": { + "value": true, + "type": "boolean", + "required": false + }, + "allow_view_creation": { + "value": false, + "type": "boolean", + "required": false + }, + "allow_viewing_points_estimated": { + "value": true, + "type": "boolean", + "required": false + }, + "allow_viewing_time_spent": { + "value": false, + "type": "boolean", + "required": false + }, + "can_see_time_estimates": { + "value": true, + "type": "boolean", + "required": false + }, + "guest_custom_role_id": { + "value": 98765, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateClickupList", + "qualifiedName": "ClickupApi.CreateClickupList", + "fullyQualifiedName": "ClickupApi.CreateClickupList@1.0.0", + "description": "Create a new list in a ClickUp folder.\n\nUse this tool to add a new list to a specified folder in ClickUp. Ideal for organizing tasks or projects within a folder.", + "parameters": [ + { + "name": "folder_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier for the folder where the new list will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "list_name", + "type": "string", + "required": true, + "description": "The name of the new list to be created within the specified ClickUp folder.", + "enum": null, + "inferrable": true + }, + { + "name": "due_date_timestamp", + "type": "integer", + "required": false, + "description": "The due date for the list in Unix timestamp format. Determines when the list should be completed.", + "enum": null, + "inferrable": true + }, + { + "name": "formatted_list_description", + "type": "string", + "required": false, + "description": "Provide a markdown-formatted description for the List. Use this instead of plain text content.", + "enum": null, + "inferrable": true + }, + { + "name": "include_time_in_due_date", + "type": "boolean", + "required": false, + "description": "Set to true to include a specific time with the due date.", + "enum": null, + "inferrable": true + }, + { + "name": "list_assignee_user_id", + "type": "integer", + "required": false, + "description": "The user ID to assign this list to a specific user. This identifies who will be responsible for the list.", + "enum": null, + "inferrable": true + }, + { + "name": "list_color", + "type": "string", + "required": false, + "description": "Specifies the color of the List, not related to task statuses.", + "enum": null, + "inferrable": true + }, + { + "name": "list_description", + "type": "string", + "required": false, + "description": "A plain text description for the list. Use this to provide details about the list's purpose.", + "enum": null, + "inferrable": true + }, + { + "name": "list_priority", + "type": "integer", + "required": false, + "description": "An integer value indicating the priority of the list, where a higher number typically means higher priority.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.CreateClickupList", + "parameters": { + "folder_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "list_name": { + "value": "New Project Tasks", + "type": "string", + "required": true + }, + "due_date_timestamp": { + "value": 1698508800, + "type": "integer", + "required": false + }, + "formatted_list_description": { + "value": "# Project Overview\nThis list contains tasks for the new project.", + "type": "string", + "required": false + }, + "include_time_in_due_date": { + "value": true, + "type": "boolean", + "required": false + }, + "list_assignee_user_id": { + "value": 78910, + "type": "integer", + "required": false + }, + "list_color": { + "value": "#FF5733", + "type": "string", + "required": false + }, + "list_description": { + "value": "This list is dedicated to tasks related to the new project initiative.", + "type": "string", + "required": false + }, + "list_priority": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateFolderFromTemplate", + "qualifiedName": "ClickupApi.CreateFolderFromTemplate", + "fullyQualifiedName": "ClickupApi.CreateFolderFromTemplate@1.0.0", + "description": "Creates a new folder from a template in a ClickUp space.\n\n This tool creates a new folder using a predefined template within a specified ClickUp space. It can also incorporate nested assets like lists and tasks from the template into the new folder. Templates must be added to your Workspace before use. The operation can be executed asynchronously or synchronously.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "clickup_space_id", + "type": "string", + "required": false, + "description": "ID of the ClickUp Space where the folder will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_template_id", + "type": "string", + "required": false, + "description": "The ID of the folder template to be used for creating a new folder in a ClickUp space. Ensure the template is added to your Workspace. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateFolderFromTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.CreateFolderFromTemplate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "clickup_space_id": { + "value": "abc123space", + "type": "string", + "required": false + }, + "folder_template_id": { + "value": "temp456folder", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Folder\", \"description\": \"This is a folder created from a template.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateFolderInSpace", + "qualifiedName": "ClickupApi.CreateFolderInSpace", + "fullyQualifiedName": "ClickupApi.CreateFolderInSpace@1.0.0", + "description": "Add a new Folder to a Space in ClickUp.\n\nThis tool allows you to create a new folder within a specified space in ClickUp. Use it when you need to organize tasks or projects into a new folder under an existing space.", + "parameters": [ + { + "name": "folder_name", + "type": "string", + "required": true, + "description": "The name of the new folder to be created in the specified space. It should be a string representing the folder's title.", + "enum": null, + "inferrable": true + }, + { + "name": "space_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the ClickUp Space where the folder will be created. It should be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateFolder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.CreateFolderInSpace", + "parameters": { + "folder_name": { + "value": "Project Alpha", + "type": "string", + "required": true + }, + "space_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateListFromFolderTemplate", + "qualifiedName": "ClickupApi.CreateListFromFolderTemplate", + "fullyQualifiedName": "ClickupApi.CreateListFromFolderTemplate@1.0.0", + "description": "Create a new list in a folder using a template.\n\n Use this tool to create a new list in a ClickUp folder using an existing list template. Ensure the template is added to your Workspace library before invoking this tool. The tool returns the future List ID immediately, though the list creation may continue asynchronously.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "folder_identifier", + "type": "string", + "required": false, + "description": "The ID of the folder where the new list will be created using the specified template. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "template_id_for_list_creation", + "type": "string", + "required": false, + "description": "ID of the template to use for creating a new list in the folder. Ensure the template is added to your Workspace library. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateFolderListFromTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.CreateListFromFolderTemplate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "folder_identifier": { + "value": "folder_12345", + "type": "string", + "required": false + }, + "template_id_for_list_creation": { + "value": "template_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New List\", \"content\": \"This is a new list created from a template.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateListFromTemplate", + "qualifiedName": "ClickupApi.CreateListFromTemplate", + "fullyQualifiedName": "ClickupApi.CreateListFromTemplate@1.0.0", + "description": "Create a new list in a ClickUp space using a template.\n\n This tool creates a new list within a specified ClickUp space using a provided list template. Publicly shared templates must be added to the Workspace before they can be used. The operation can be performed asynchronously or synchronously based on the 'return_immediately' parameter.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "space_id_for_list_creation", + "type": "string", + "required": false, + "description": "ID of the ClickUp Space where the new List will be created using the template. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "template_id", + "type": "string", + "required": false, + "description": "ID of the template to use for creating the list in the specified ClickUp space. It must be accessible in your Workspace. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateSpaceListFromTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.CreateListFromTemplate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "space_id_for_list_creation": { + "value": "1234abcd", + "type": "string", + "required": false + }, + "template_id": { + "value": "5678efgh", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New List from Template\",\"description\":\"This list is created from a selected template.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateNewClickupTask", + "qualifiedName": "ClickupApi.CreateNewClickupTask", + "fullyQualifiedName": "ClickupApi.CreateNewClickupTask@1.0.0", + "description": "Create a new task in ClickUp.\n\n This tool is used to create a new task in a specified list on ClickUp. It should be called when you need to add a task to your ClickUp project management system.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "target_list_id", + "type": "integer", + "required": false, + "description": "The ID of the list where the new task will be created. This should be an integer identifying the list in ClickUp. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.CreateNewClickupTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "target_list_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Task\", \"description\": \"This is a new task description.\", \"assignees\": [67890], \"priority\": 3}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSpaceInWorkspace", + "qualifiedName": "ClickupApi.CreateSpaceInWorkspace", + "fullyQualifiedName": "ClickupApi.CreateSpaceInWorkspace@1.0.0", + "description": "Add a new Space to a Workspace.\n\n Use this tool to create a new space within a specified workspace on ClickUp. It should be called when a user wants to organize tasks or projects under a new space in their team environment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "The ID of the workspace where the new space will be added. It should be an integer value. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateSpace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.CreateSpaceInWorkspace", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 123, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Space\", \"color\": \"#FF5733\", \"description\": \"A new space for organizing projects.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTaskFromTemplate", + "qualifiedName": "ClickupApi.CreateTaskFromTemplate", + "fullyQualifiedName": "ClickupApi.CreateTaskFromTemplate@1.0.0", + "description": "Create a task using an existing template.\n\nThis tool creates a new task in ClickUp using a specified task template from your workspace. Templates must be added to your Workspace before use. Ideal for automating the creation of standardized tasks.", + "parameters": [ + { + "name": "target_list_id", + "type": "integer", + "required": true, + "description": "The ID of the list where the task will be created. This should be an integer associated with the desired list in your workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "task_name", + "type": "string", + "required": true, + "description": "The name of the task to be created using the template.", + "enum": null, + "inferrable": true + }, + { + "name": "task_template_id", + "type": "string", + "required": true, + "description": "A string representing the ID of the task template to be used for task creation. Ensure the template is added to your workspace.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTaskFromTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.CreateTaskFromTemplate", + "parameters": { + "target_list_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "task_name": { + "value": "Implement user authentication", + "type": "string", + "required": true + }, + "task_template_id": { + "value": "template_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTeamView", + "qualifiedName": "ClickupApi.CreateTeamView", + "fullyQualifiedName": "ClickupApi.CreateTeamView@1.0.0", + "description": "Add various views to a workspace at the Everything Level.\n\n This tool allows you to add different types of views such as List, Board, Calendar, Table, Timeline, Workload, Activity, Map, Chat, or Gantt to a specified workspace within a team. Use this when you need to create or organize views for better workspace management.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the workspace where the view will be added. This corresponds to the team or workspace ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTeamView'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.CreateTeamView", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 123456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"view_type\": \"list\", \"name\": \"New List View\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateThreadedComment", + "qualifiedName": "ClickupApi.CreateThreadedComment", + "fullyQualifiedName": "ClickupApi.CreateThreadedComment@1.0.0", + "description": "Create a threaded comment in a ClickUp task.\n\n This tool is used to create a threaded comment as a reply to an existing comment in a ClickUp task. It is useful when you want to continue a discussion or provide additional information to a specific comment thread.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "parent_comment_id", + "type": "integer", + "required": false, + "description": "The ID of the parent comment to which the threaded reply will be attached. It should be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateThreadedComment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.CreateThreadedComment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "parent_comment_id": { + "value": 123456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"text\": \"This is a threaded comment reply.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTimeEntry", + "qualifiedName": "ClickupApi.CreateTimeEntry", + "fullyQualifiedName": "ClickupApi.CreateTimeEntry@1.0.0", + "description": "Create a new time entry for tracking work.\n\n Use this tool to log a new time entry for a specific team. If the duration is negative, it indicates that a timer is running for the user.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_id_numeric", + "type": "integer", + "required": false, + "description": "The numeric ID of the workspace. Required if referencing a task by custom task ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "Required if `custom_task_ids` is true. Provide the Workspace ID for the team. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task id. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'Createatimeentry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.CreateTimeEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_id_numeric": { + "value": 12345, + "type": "integer", + "required": false + }, + "workspace_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"task_id\":\"abcde12345\",\"duration\":3600,\"description\":\"Working on project\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateUserGroup", + "qualifiedName": "ClickupApi.CreateUserGroup", + "fullyQualifiedName": "ClickupApi.CreateUserGroup@1.0.0", + "description": "Create a user group within a ClickUp workspace.\n\nUse this tool to organize and manage users by creating a user group within a specific ClickUp workspace. Note that adding a guest with view-only permissions converts them to a paid guest, potentially incurring additional costs.", + "parameters": [ + { + "name": "group_name", + "type": "string", + "required": true, + "description": "The name of the user group to be created within the workspace. This should be a descriptive name to identify the group easily.", + "enum": null, + "inferrable": true + }, + { + "name": "user_group_members", + "type": "array", + "innerType": "integer", + "required": true, + "description": "List of user IDs to include in the user group. Each ID should be an integer representing a user within the workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The unique ID of the ClickUp workspace where the user group will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "group_handle", + "type": "string", + "required": false, + "description": "A unique string identifier for the user group to be created. This will be used as the group's handle within the workspace.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateUserGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.CreateUserGroup", + "parameters": { + "group_name": { + "value": "Marketing Team", + "type": "string", + "required": true + }, + "user_group_members": { + "value": [101, 102, 103], + "type": "array", + "required": true + }, + "workspace_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "group_handle": { + "value": "marketing_team_2023", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateWorkspaceGoal", + "qualifiedName": "ClickupApi.CreateWorkspaceGoal", + "fullyQualifiedName": "ClickupApi.CreateWorkspaceGoal@1.0.0", + "description": "Add a new goal to a specified workspace.\n\nThis tool allows you to create a new goal in a specific workspace by providing the necessary details. Use it to set objectives and track progress within teams.", + "parameters": [ + { + "name": "allow_multiple_owners", + "type": "boolean", + "required": true, + "description": "Set to true to allow a goal to have multiple owners, or false for a single owner.", + "enum": null, + "inferrable": true + }, + { + "name": "due_date_timestamp", + "type": "integer", + "required": true, + "description": "The due date for the goal as a Unix timestamp in milliseconds. Represents when the goal should be completed.", + "enum": null, + "inferrable": true + }, + { + "name": "goal_color", + "type": "string", + "required": true, + "description": "The color code for the goal. Expected to be a string representing a color, such as a hex code like '#FF5733'.", + "enum": null, + "inferrable": true + }, + { + "name": "goal_description", + "type": "string", + "required": true, + "description": "A brief explanation of the goal to be added, providing context and details.", + "enum": null, + "inferrable": true + }, + { + "name": "goal_name", + "type": "string", + "required": true, + "description": "The name or title of the goal to be added to the workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "goal_owners", + "type": "array", + "innerType": "integer", + "required": true, + "description": "Array of user IDs for those assigned to own the goal, allowing multiple owners.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the workspace where the goal will be added. This is a numeric value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateGoal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.CreateWorkspaceGoal", + "parameters": { + "allow_multiple_owners": { + "value": true, + "type": "boolean", + "required": true + }, + "due_date_timestamp": { + "value": 1698763200000, + "type": "integer", + "required": true + }, + "goal_color": { + "value": "#FF5733", + "type": "string", + "required": true + }, + "goal_description": { + "value": "Increase team productivity by implementing new strategies and tools.", + "type": "string", + "required": true + }, + "goal_name": { + "value": "Q4 Productivity Boost", + "type": "string", + "required": true + }, + "goal_owners": { + "value": [101, 202, 303], + "type": "array", + "required": true + }, + "workspace_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteChecklist", + "qualifiedName": "ClickupApi.DeleteChecklist", + "fullyQualifiedName": "ClickupApi.DeleteChecklist@1.0.0", + "description": "Deletes a checklist from a task in ClickUp.\n\nUse this tool to delete a specific checklist from a task in ClickUp by providing the checklist ID. Ideal for when you need to manage or reorganize task checklists.", + "parameters": [ + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "The unique identifier for the checklist to be deleted. It should be in UUID format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteChecklist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.DeleteChecklist", + "parameters": { + "checklist_id": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGoal", + "qualifiedName": "ClickupApi.DeleteGoal", + "fullyQualifiedName": "ClickupApi.DeleteGoal@1.0.0", + "description": "Deletes a goal from your workspace in ClickUp.\n\nUse this tool to remove a specified goal from your ClickUp workspace by providing the goal ID.", + "parameters": [ + { + "name": "content_type_header", + "type": "string", + "required": true, + "description": "Specify the Content-Type header. Typically set to 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "goal_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the goal to be deleted. It must be a valid UUID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteGoal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.DeleteGoal", + "parameters": { + "content_type_header": { + "value": "application/json", + "type": "string", + "required": true + }, + "goal_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGoalTarget", + "qualifiedName": "ClickupApi.DeleteGoalTarget", + "fullyQualifiedName": "ClickupApi.DeleteGoalTarget@1.0.0", + "description": "Delete a target from a goal in ClickUp.\n\nUse this tool to delete a key result (target) from a goal in ClickUp when a specific target needs to be removed.", + "parameters": [ + { + "name": "goal_target_id", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the key result to delete from the goal in ClickUp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteKeyResult'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.DeleteGoalTarget", + "parameters": { + "goal_target_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteSpaceTag", + "qualifiedName": "ClickupApi.DeleteSpaceTag", + "fullyQualifiedName": "ClickupApi.DeleteSpaceTag@1.0.0", + "description": "Delete a task tag from a space in ClickUp.\n\n Use this tool to delete a specific task tag from a designated space in ClickUp. Ideal for cleaning up or reorganizing tags within a space.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "space_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier of the space from which the tag will be deleted. This should be an integer value. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_name_to_delete", + "type": "string", + "required": false, + "description": "The name of the tag to be deleted from the specified space. Ensure this tag name exists in the target space. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteSpaceTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.DeleteSpaceTag", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "space_identifier": { + "value": 123456, + "type": "integer", + "required": false + }, + "tag_name_to_delete": { + "value": "urgent", + "type": "string", + "required": false + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTask", + "qualifiedName": "ClickupApi.DeleteTask", + "fullyQualifiedName": "ClickupApi.DeleteTask@1.0.0", + "description": "Delete a task from your ClickUp Workspace.\n\nUse this tool to delete a specific task from your ClickUp Workspace by providing the task ID. It should be called when you want to permanently remove a task.", + "parameters": [ + { + "name": "content_type", + "type": "string", + "required": true, + "description": "Specify the media type of the resource. Typically set as 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The ID of the task to be deleted. This is mandatory and should be a valid task identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true if referencing a task by custom task ID is required.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when referencing a task by its custom task ID. Required if `custom_task_ids` is true.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.DeleteTask", + "parameters": { + "content_type": { + "value": "application/json", + "type": "string", + "required": true + }, + "task_id": { + "value": "12345", + "type": "string", + "required": true + }, + "use_custom_task_ids": { + "value": false, + "type": "boolean", + "required": false + }, + "workspace_id": { + "value": 67890, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTaskChecklistItem", + "qualifiedName": "ClickupApi.DeleteTaskChecklistItem", + "fullyQualifiedName": "ClickupApi.DeleteTaskChecklistItem@1.0.0", + "description": "Delete an item from a task checklist in ClickUp.\n\nUse this tool to delete a specific line item from a checklist associated with a task. Ideal for managing and updating task checklists by removing unnecessary or completed items.", + "parameters": [ + { + "name": "checklist_identifier", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) for the checklist. Used to specify the checklist from which the item will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_item_uuid", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the checklist item to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteChecklistItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.DeleteTaskChecklistItem", + "parameters": { + "checklist_identifier": { + "value": "e7e6c4a7-9b45-4f08-b9f4-217bcae2d4c8", + "type": "string", + "required": true + }, + "checklist_item_uuid": { + "value": "1f479a0e-c79a-400f-8126-99c1f4a963f5", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTaskComment", + "qualifiedName": "ClickupApi.DeleteTaskComment", + "fullyQualifiedName": "ClickupApi.DeleteTaskComment@1.0.0", + "description": "Delete a comment from a task.\n\nUse this tool to delete a specific comment from a task. It should be called when you need to remove a comment based on its unique identifier.", + "parameters": [ + { + "name": "comment_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the comment to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteComment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.DeleteTaskComment", + "parameters": { + "comment_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTimeEntry", + "qualifiedName": "ClickupApi.DeleteTimeEntry", + "fullyQualifiedName": "ClickupApi.DeleteTimeEntry@1.0.0", + "description": "Deletes a time entry from a ClickUp workspace.\n\nUse this tool to delete a specific time entry from a ClickUp workspace. This should be called when you need to remove a recorded time entry by specifying the team and timer identifiers.", + "parameters": [ + { + "name": "content_type_header", + "type": "string", + "required": true, + "description": "Specify the content type of the request, usually 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "timer_ids_to_delete", + "type": "integer", + "required": true, + "description": "Comma-separated list of timer IDs to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the ClickUp workspace from which you want to delete the time entry.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteatimeEntry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.DeleteTimeEntry", + "parameters": { + "content_type_header": { + "value": "application/json", + "type": "string", + "required": true + }, + "timer_ids_to_delete": { + "value": 12345, + "type": "integer", + "required": true + }, + "workspace_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteUserGroup", + "qualifiedName": "ClickupApi.DeleteUserGroup", + "fullyQualifiedName": "ClickupApi.DeleteUserGroup@1.0.0", + "description": "Delete a user group from your ClickUp workspace.\n\nThis tool removes a user group from your ClickUp workspace based on the provided group ID.", + "parameters": [ + { + "name": "user_group_id", + "type": "string", + "required": true, + "description": "The identifier of the user group to be deleted from the workspace.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.DeleteUserGroup", + "parameters": { + "user_group_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteView", + "qualifiedName": "ClickupApi.DeleteView", + "fullyQualifiedName": "ClickupApi.DeleteView@1.0.0", + "description": "Delete a specified view from ClickUp.\n\nUse this tool to delete a specific view in ClickUp by providing the view ID. Useful for managing and organizing views by removing those that are no longer needed.", + "parameters": [ + { + "name": "view_id", + "type": "string", + "required": true, + "description": "The ID of the view to be deleted in ClickUp. Must be provided as a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteView'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.DeleteView", + "parameters": { + "view_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteWebhook", + "qualifiedName": "ClickupApi.DeleteWebhook", + "fullyQualifiedName": "ClickupApi.DeleteWebhook@1.0.0", + "description": "Delete a webhook to stop event monitoring.\n\nUse this tool to delete a webhook, which will stop monitoring events and locations associated with it. Useful for managing and updating your event tracking preferences.", + "parameters": [ + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The unique identifier for the webhook to be deleted. Must be in UUID format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.DeleteWebhook", + "parameters": { + "webhook_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteWorkspaceFolder", + "qualifiedName": "ClickupApi.DeleteWorkspaceFolder", + "fullyQualifiedName": "ClickupApi.DeleteWorkspaceFolder@1.0.0", + "description": "Delete a folder from your ClickUp workspace.\n\nUse this tool to permanently delete a specific folder from your ClickUp workspace. Ensure you have the correct folder ID before performing this action.", + "parameters": [ + { + "name": "folder_id", + "type": "integer", + "required": true, + "description": "The unique ID of the folder to be deleted from your ClickUp workspace. Ensure this ID is correct to avoid unintended deletions.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteFolder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.DeleteWorkspaceFolder", + "parameters": { + "folder_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteWorkspaceList", + "qualifiedName": "ClickupApi.DeleteWorkspaceList", + "fullyQualifiedName": "ClickupApi.DeleteWorkspaceList@1.0.0", + "description": "Delete a list from your ClickUp workspace.\n\nUse this tool to remove a specific list from your ClickUp workspace when it's no longer needed.", + "parameters": [ + { + "name": "content_type_header", + "type": "string", + "required": true, + "description": "Specifies the media type of the request. Typically set to 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_list_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the list to be deleted from the ClickUp workspace.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.DeleteWorkspaceList", + "parameters": { + "content_type_header": { + "value": "application/json", + "type": "string", + "required": true + }, + "workspace_list_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteWorkspaceSpace", + "qualifiedName": "ClickupApi.DeleteWorkspaceSpace", + "fullyQualifiedName": "ClickupApi.DeleteWorkspaceSpace@1.0.0", + "description": "Delete a space from your ClickUp workspace.\n\nUse this tool to delete a specific space in your ClickUp workspace by providing the space ID. It permanently removes the space and all associated data.", + "parameters": [ + { + "name": "workspace_space_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the space to delete in your ClickUp workspace. Provide the specific space ID to permanently remove the space and its data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteSpace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.DeleteWorkspaceSpace", + "parameters": { + "workspace_space_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EditChecklist", + "qualifiedName": "ClickupApi.EditChecklist", + "fullyQualifiedName": "ClickupApi.EditChecklist@1.0.0", + "description": "Rename or reorder a task checklist in ClickUp.\n\nUse this tool to rename a checklist or change its order within a task in ClickUp. It is suitable when you need to update the checklist name or adjust its position in relation to other checklists in a specific task.", + "parameters": [ + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the checklist to be edited or reordered.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_name", + "type": "string", + "required": false, + "description": "The new name for the checklist. Leave empty if you do not wish to rename.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_position", + "type": "integer", + "required": false, + "description": "Specify the order in which the checklist should appear on a task. Use 0 to place it at the top.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'EditChecklist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.EditChecklist", + "parameters": { + "checklist_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "checklist_name": { + "value": "Updated Checklist Name", + "type": "string", + "required": false + }, + "checklist_position": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EditLegacyTimeEntry", + "qualifiedName": "ClickupApi.EditLegacyTimeEntry", + "fullyQualifiedName": "ClickupApi.EditLegacyTimeEntry@1.0.0", + "description": "Edit a legacy time tracked entry for a task in ClickUp.\n\nUse this tool to modify an existing time entry on a specific task using the legacy endpoint in ClickUp. It's recommended to use newer APIs for time tracking, but this can be used for older integrations.", + "parameters": [ + { + "name": "end_time_epoch", + "type": "integer", + "required": true, + "description": "The end time of the tracked interval in Unix epoch format. It marks when the time entry should conclude.", + "enum": null, + "inferrable": true + }, + { + "name": "legacy_time_interval_id", + "type": "string", + "required": true, + "description": "The unique identifier for the time interval to be edited.", + "enum": null, + "inferrable": true + }, + { + "name": "start_timestamp", + "type": "integer", + "required": true, + "description": "The start time of the time entry as a Unix timestamp in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the task for which the legacy time entry is being edited. This is required to specify the task in ClickUp.", + "enum": null, + "inferrable": true + }, + { + "name": "time_duration_in_seconds", + "type": "integer", + "required": true, + "description": "The total time duration (in seconds) for the time entry to be updated. This modifies the tracked time for a specific task.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "The Workspace ID required when custom task IDs are used. This must be set if `custom_task_ids` is `true`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'Edittimetracked'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.EditLegacyTimeEntry", + "parameters": { + "end_time_epoch": { + "value": 1672531199, + "type": "integer", + "required": true + }, + "legacy_time_interval_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "start_timestamp": { + "value": 1672527600000, + "type": "integer", + "required": true + }, + "task_identifier": { + "value": "task_78910", + "type": "string", + "required": true + }, + "time_duration_in_seconds": { + "value": 3600, + "type": "integer", + "required": true + }, + "use_custom_task_ids": { + "value": false, + "type": "boolean", + "required": false + }, + "workspace_id": { + "value": null, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAuthorizedTeams", + "qualifiedName": "ClickupApi.GetAuthorizedTeams", + "fullyQualifiedName": "ClickupApi.GetAuthorizedTeams@1.0.0", + "description": "Retrieve the workspaces for the authenticated user.\n\nUse this tool to get a list of workspaces (teams) available to the user who is currently authenticated. It provides an overview of the user's accessible workspaces in ClickUp.", + "parameters": [], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAuthorizedTeams'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetAuthorizedTeams", + "parameters": {}, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetClickupAccessToken", + "qualifiedName": "ClickupApi.GetClickupAccessToken", + "fullyQualifiedName": "ClickupApi.GetClickupAccessToken@1.0.0", + "description": "Obtain an OAuth access token for ClickUp API authentication.\n\nUse this tool to obtain an OAuth access token for authenticating applications with the ClickUp API. This tool is not for personal API tokens and does not support the 'Try It' feature in browser-based API documentation.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAccessToken'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetClickupAccessToken", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"client_id\": \"abc123\", \"client_secret\": \"secretValue\", \"grant_type\": \"authorization_code\", \"code\": \"authCode123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetClickupUserDetails", + "qualifiedName": "ClickupApi.GetClickupUserDetails", + "fullyQualifiedName": "ClickupApi.GetClickupUserDetails@1.0.0", + "description": "Get details of the authenticated ClickUp user's account.", + "parameters": [], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAuthorizedUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetClickupUserDetails", + "parameters": {}, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCurrentRunningTimeEntry", + "qualifiedName": "ClickupApi.GetCurrentRunningTimeEntry", + "fullyQualifiedName": "ClickupApi.GetCurrentRunningTimeEntry@1.0.0", + "description": "Retrieve the current running time entry for the user.\n\nUse this tool to view the time entry that is currently tracking time for the authenticated user. It indicates which timer is actively running. A negative duration suggests an ongoing timer.", + "parameters": [ + { + "name": "content_type_header", + "type": "string", + "required": true, + "description": "The MIME type of the content, e.g., 'application/json'. Required for HTTP content negotiation.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the workspace to retrieve the running time entry for. It identifies the specific workspace within ClickUp.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_user_id", + "type": "number", + "required": false, + "description": "The user ID of the time entry assignee for whom the current running timer is being retrieved. This identifies which user's timer is actively running.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'Getrunningtimeentry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetCurrentRunningTimeEntry", + "parameters": { + "content_type_header": { + "value": "application/json", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "assignee_user_id": { + "value": 78910, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFilteredTeamTasks", + "qualifiedName": "ClickupApi.GetFilteredTeamTasks", + "fullyQualifiedName": "ClickupApi.GetFilteredTeamTasks@1.0.0", + "description": "Retrieve tasks from a workspace based on specified filters.\n\nThis tool retrieves tasks from a specified workspace that meet certain criteria. The response is limited to 100 tasks per page, and only tasks that the user has access to are returned. The tool is useful for viewing filtered task information from multiple lists, folders, or spaces.", + "parameters": [ + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the workspace to retrieve tasks from. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter tasks by assignee using their ClickUp user IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_task_type_filters", + "type": "array", + "innerType": "number", + "required": false, + "description": "Filter tasks by custom task types. Use `0` for tasks, `1` for Milestones, and other numbers for Workspace-defined types.", + "enum": null, + "inferrable": true + }, + { + "name": "display_tasks_in_reverse_order", + "type": "boolean", + "required": false, + "description": "Set to true to display tasks in reverse order.", + "enum": null, + "inferrable": true + }, + { + "name": "due_date_before", + "type": "integer", + "required": false, + "description": "Filter tasks with due dates earlier than the specified Unix timestamp in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "due_date_greater_than", + "type": "integer", + "required": false, + "description": "Filter tasks by a due date greater than the specified Unix time in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_custom_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Include tasks with specific values in Custom Fields. Provide an array of objects with field_id, operator, and value keys.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_date_created_before", + "type": "integer", + "required": false, + "description": "Filter tasks created before this date. Specify as Unix time in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_date_done_after", + "type": "integer", + "required": false, + "description": "Filter tasks by the completion date after the given Unix time in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_done_date_before", + "type": "integer", + "required": false, + "description": "Filter tasks completed before a specific date. Provide the date in Unix time (milliseconds).", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_list_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of list IDs to filter tasks by. Example: [\"1234\", \"6789\"].", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_project_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of folder IDs to filter tasks by specific folders. For example, ['1234', '6789'].", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_space_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of space IDs to filter tasks by. Example values: ['1234', '6789'].", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_tags", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter tasks by tags. Use `%20` for spaces within tags. Example: `urgent%20task`.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_update_date_before", + "type": "integer", + "required": false, + "description": "Filter tasks updated before a specific date, provided as Unix time in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_updated_date_greater_than", + "type": "integer", + "required": false, + "description": "Filter tasks by their updated date, greater than the specified Unix time in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_created_date_after", + "type": "integer", + "required": false, + "description": "Filter tasks by creation date greater than the specified Unix time in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "include_closed_tasks", + "type": "boolean", + "required": false, + "description": "Set to true to include closed tasks, false to exclude them. By default, closed tasks are excluded.", + "enum": null, + "inferrable": true + }, + { + "name": "include_markdown_description", + "type": "boolean", + "required": false, + "description": "Set to true to return task descriptions in Markdown format. Default is false.", + "enum": null, + "inferrable": true + }, + { + "name": "include_subtasks", + "type": "boolean", + "required": false, + "description": "Set to true to include subtasks, or false to exclude them. Defaults to false (exclude).", + "enum": null, + "inferrable": true + }, + { + "name": "order_tasks_by", + "type": "string", + "required": false, + "description": "Specify the field by which to order tasks. Options include: 'id', 'created', 'updated', 'due_date'. Defaults to 'created'.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_fetch", + "type": "integer", + "required": false, + "description": "Page number to fetch, starting at 0, in the paginated list of tasks.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_task_id", + "type": "string", + "required": false, + "description": "Include the parent task ID to return subtasks in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "status_filters", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter tasks by their statuses. Use '%20' for spaces. Example: ['to%20do', 'in%20progress'].", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetFilteredTeamTasks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetFilteredTeamTasks", + "parameters": { + "workspace_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "assignee_ids": { + "value": [101, 102], + "type": "array", + "required": false + }, + "custom_task_type_filters": { + "value": [0, 1], + "type": "array", + "required": false + }, + "display_tasks_in_reverse_order": { + "value": true, + "type": "boolean", + "required": false + }, + "due_date_before": { + "value": 1694049600000, + "type": "integer", + "required": false + }, + "due_date_greater_than": { + "value": 1693647600000, + "type": "integer", + "required": false + }, + "filter_by_custom_fields": { + "value": [ + { + "field_id": "field_1", + "operator": "equals", + "value": "High" + } + ], + "type": "array", + "required": false + }, + "filter_by_date_created_before": { + "value": 1693651200000, + "type": "integer", + "required": false + }, + "filter_by_date_done_after": { + "value": 1693545600000, + "type": "integer", + "required": false + }, + "filter_by_done_date_before": { + "value": 1693728000000, + "type": "integer", + "required": false + }, + "filter_by_list_ids": { + "value": ["list_1", "list_2"], + "type": "array", + "required": false + }, + "filter_by_project_ids": { + "value": ["project_1", "project_2"], + "type": "array", + "required": false + }, + "filter_by_space_ids": { + "value": ["space_1", "space_2"], + "type": "array", + "required": false + }, + "filter_by_tags": { + "value": ["urgent%20task", "review"], + "type": "array", + "required": false + }, + "filter_by_update_date_before": { + "value": 1694046000000, + "type": "integer", + "required": false + }, + "filter_by_updated_date_greater_than": { + "value": 1693959600000, + "type": "integer", + "required": false + }, + "filter_created_date_after": { + "value": 1693545600000, + "type": "integer", + "required": false + }, + "include_closed_tasks": { + "value": false, + "type": "boolean", + "required": false + }, + "include_markdown_description": { + "value": true, + "type": "boolean", + "required": false + }, + "include_subtasks": { + "value": true, + "type": "boolean", + "required": false + }, + "order_tasks_by": { + "value": "due_date", + "type": "string", + "required": false + }, + "page_number_to_fetch": { + "value": 1, + "type": "integer", + "required": false + }, + "parent_task_id": { + "value": "parent_1", + "type": "string", + "required": false + }, + "status_filters": { + "value": ["to%20do", "completed"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFolderCustomFields", + "qualifiedName": "ClickupApi.GetFolderCustomFields", + "fullyQualifiedName": "ClickupApi.GetFolderCustomFields@1.0.0", + "description": "Retrieve accessible custom fields from a folder in ClickUp.\n\nThis tool retrieves the custom fields that are accessible at the folder level in ClickUp. It's useful when you need to know what folder-level custom fields are available for a specific folder. Custom fields created at the list level aren't included.", + "parameters": [ + { + "name": "content_type", + "type": "string", + "required": true, + "description": "The MIME type of the content being sent. Typically, use 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the folder to retrieve custom fields from. Must be an integer corresponding to a specific folder in ClickUp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFolderAvailableFields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetFolderCustomFields", + "parameters": { + "content_type": { + "value": "application/json", + "type": "string", + "required": true + }, + "folder_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFolderlessLists", + "qualifiedName": "ClickupApi.GetFolderlessLists", + "fullyQualifiedName": "ClickupApi.GetFolderlessLists@1.0.0", + "description": "View Lists in a Space not located in a Folder.\n\nUse this tool to retrieve lists within a specified space that are not contained within any folder, providing an organized view of unassigned lists.", + "parameters": [ + { + "name": "space_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the space to retrieve the folderless lists from. It should be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_lists", + "type": "boolean", + "required": false, + "description": "Specify true to include archived lists, or false to exclude them.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetFolderlessLists'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetFolderlessLists", + "parameters": { + "space_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "include_archived_lists": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFolderViews", + "qualifiedName": "ClickupApi.GetFolderViews", + "fullyQualifiedName": "ClickupApi.GetFolderViews@1.0.0", + "description": "Retrieve available task and page views for a Folder in ClickUp.", + "parameters": [ + { + "name": "folder_id", + "type": "integer", + "required": true, + "description": "The ID of the folder to retrieve views for. This should be an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetFolderViews'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetFolderViews", + "parameters": { + "folder_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGoalDetails", + "qualifiedName": "ClickupApi.GetGoalDetails", + "fullyQualifiedName": "ClickupApi.GetGoalDetails@1.0.0", + "description": "Retrieve detailed information about a specific goal including its targets.", + "parameters": [ + { + "name": "goal_identifier", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) for the goal to retrieve details and targets.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetGoal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetGoalDetails", + "parameters": { + "goal_identifier": { + "value": "abcd1234-5678-90ef-ghij-klmnopqrstuv", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGuestInformation", + "qualifiedName": "ClickupApi.GetGuestInformation", + "fullyQualifiedName": "ClickupApi.GetGuestInformation@1.0.0", + "description": "Retrieve information about a guest in a workspace.\n\nThis tool is used to view details about a guest in a ClickUp workspace. It is available only for Workspaces on the Enterprise Plan. Use it when you need to obtain guest-related information, such as profile or access details.", + "parameters": [ + { + "name": "guest_identifier", + "type": "integer", + "required": true, + "description": "An integer representing the unique ID of the guest whose information is to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the ClickUp workspace. This is required for identifying the specific workspace where the guest information is being retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetGuest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetGuestInformation", + "parameters": { + "guest_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "workspace_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListComments", + "qualifiedName": "ClickupApi.GetListComments", + "fullyQualifiedName": "ClickupApi.GetListComments@1.0.0", + "description": "View comments from a specific ClickUp list.\n\nUse this tool to retrieve the most recent comments from a specified ClickUp list. It returns up to 25 comments by default. To fetch older comments, utilize the optional parameters `start` and `start_id`.", + "parameters": [ + { + "name": "list_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the ClickUp list for which comments are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "oldest_comment_id", + "type": "string", + "required": false, + "description": "ID of the oldest comment to start retrieving additional comments from.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_unix_millis", + "type": "integer", + "required": false, + "description": "Enter the date of a list info comment using Unix time in milliseconds to retrieve comments starting from this timestamp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetListComments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetListComments", + "parameters": { + "list_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "oldest_comment_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "start_date_unix_millis": { + "value": 1633024800000, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListMembers", + "qualifiedName": "ClickupApi.GetListMembers", + "fullyQualifiedName": "ClickupApi.GetListMembers@1.0.0", + "description": "Retrieve members with access to a specific list in ClickUp.\n\nUse this tool to get the members of a ClickUp workspace who have access to a specified list. It helps in managing and viewing user access to project resources.", + "parameters": [ + { + "name": "list_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the list in ClickUp. It is required to fetch the members with access to this list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetListMembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetListMembers", + "parameters": { + "list_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListTasks", + "qualifiedName": "ClickupApi.GetListTasks", + "fullyQualifiedName": "ClickupApi.GetListTasks@1.0.0", + "description": "Retrieve tasks from a specific list in ClickUp.\n\nThis tool retrieves tasks from a specified list in ClickUp, limited to 100 tasks per page. It includes tasks where the specified list is their home, while also allowing inclusion of tasks from multiple lists by using the `include_timl` parameter. It provides details accessible to the user, including time spent on tasks with time entries.", + "parameters": [ + { + "name": "list_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the list. Find it by copying the link and extracting the number following /li in the URL.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_task_type_filters", + "type": "array", + "innerType": "number", + "required": false, + "description": "An array of numbers to filter tasks by custom types. Use 0 for tasks, 1 for Milestones, and other numbers for custom types defined in your Workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "date_created_less_than", + "type": "integer", + "required": false, + "description": "Filter tasks created before the specified Unix timestamp in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "display_tasks_in_reverse_order", + "type": "boolean", + "required": false, + "description": "Set to true to display tasks in reverse order.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_assignees", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter tasks by assignee IDs. Provide an array of assignee IDs to filter tasks assigned to specific users.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_custom_field", + "type": "array", + "innerType": "string", + "required": false, + "description": "Include tasks with specific values in one Custom Field. This can be a Custom Relationship. Provide an array of strings representing the field values.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_custom_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Include tasks with specific values in one or more Custom Fields. Use a JSON array of objects, where each object includes 'field_id', 'operator', and 'value'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_date_done_before", + "type": "integer", + "required": false, + "description": "Filter tasks completed before a specified Unix time in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_statuses", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter tasks by their statuses. Use an array of status strings, such as ['to do', 'in progress'].", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_tags", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter tasks by a list of tags. Provide an array of strings representing the tags to filter by.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_watchers", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of watcher IDs to filter tasks by watchers. Each ID should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_date_created_after", + "type": "integer", + "required": false, + "description": "Filter tasks created after this Unix timestamp in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_date_done_after", + "type": "integer", + "required": false, + "description": "Filter tasks completed after a specified date in Unix time (milliseconds).", + "enum": null, + "inferrable": true + }, + { + "name": "filter_date_updated_after", + "type": "integer", + "required": false, + "description": "Filter tasks updated after the specified Unix timestamp in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_date_updated_less_than", + "type": "integer", + "required": false, + "description": "Filter tasks updated before a specific date, using Unix time in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_due_date_before", + "type": "integer", + "required": false, + "description": "Filter tasks with due dates earlier than the specified Unix time in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_due_date_greater_than", + "type": "integer", + "required": false, + "description": "Filter tasks by a due date greater than the provided Unix time in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_tasks", + "type": "boolean", + "required": false, + "description": "Set to true to include archived tasks in the results. By default, archived tasks are excluded.", + "enum": null, + "inferrable": true + }, + { + "name": "include_closed_tasks", + "type": "boolean", + "required": false, + "description": "Set to true to include closed tasks in the response. Defaults to false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "include_markdown_task_descriptions", + "type": "boolean", + "required": false, + "description": "Set to true to return task descriptions in Markdown format.", + "enum": null, + "inferrable": true + }, + { + "name": "include_subtasks", + "type": "boolean", + "required": false, + "description": "Set to true to include subtasks; false to exclude them. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "include_tasks_in_multiple_lists", + "type": "boolean", + "required": false, + "description": "Set to true to include tasks that exist in multiple lists. By default, these tasks are excluded.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by_field", + "type": "string", + "required": false, + "description": "Specify the field to order tasks by. Options: 'id', 'created', 'updated', 'due_date'. Defaults to 'created'.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_fetch", + "type": "integer", + "required": false, + "description": "Specify the page number to fetch tasks from, starting at 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTasks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetListTasks", + "parameters": { + "list_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "custom_task_type_filters": { + "value": [0, 1], + "type": "array", + "required": false + }, + "date_created_less_than": { + "value": 1672531199000, + "type": "integer", + "required": false + }, + "display_tasks_in_reverse_order": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_by_assignees": { + "value": [234567, 345678], + "type": "array", + "required": false + }, + "filter_by_custom_field": { + "value": ["ExampleFieldValue"], + "type": "array", + "required": false + }, + "filter_by_custom_fields": { + "value": [ + { + "field_id": "abc123", + "operator": "equals", + "value": "Completed" + } + ], + "type": "array", + "required": false + }, + "filter_by_date_done_before": { + "value": 1675123199000, + "type": "integer", + "required": false + }, + "filter_by_statuses": { + "value": ["to do", "in progress"], + "type": "array", + "required": false + }, + "filter_by_tags": { + "value": ["urgent", "review"], + "type": "array", + "required": false + }, + "filter_by_watchers": { + "value": ["456789", "567890"], + "type": "array", + "required": false + }, + "filter_date_created_after": { + "value": 1672444800000, + "type": "integer", + "required": false + }, + "filter_date_done_after": { + "value": 1672444800000, + "type": "integer", + "required": false + }, + "filter_date_updated_after": { + "value": 1672444800000, + "type": "integer", + "required": false + }, + "filter_date_updated_less_than": { + "value": 1675123199000, + "type": "integer", + "required": false + }, + "filter_due_date_before": { + "value": 1675200000000, + "type": "integer", + "required": false + }, + "filter_due_date_greater_than": { + "value": 1672531200000, + "type": "integer", + "required": false + }, + "include_archived_tasks": { + "value": true, + "type": "boolean", + "required": false + }, + "include_closed_tasks": { + "value": false, + "type": "boolean", + "required": false + }, + "include_markdown_task_descriptions": { + "value": true, + "type": "boolean", + "required": false + }, + "include_subtasks": { + "value": false, + "type": "boolean", + "required": false + }, + "include_tasks_in_multiple_lists": { + "value": false, + "type": "boolean", + "required": false + }, + "order_by_field": { + "value": "due_date", + "type": "string", + "required": false + }, + "page_number_to_fetch": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListViews", + "qualifiedName": "ClickupApi.GetListViews", + "fullyQualifiedName": "ClickupApi.GetListViews@1.0.0", + "description": "Retrieve available views for a specific list.\n\nUse this tool to view the task and page views available for a specific list in ClickUp. It retrieves both regular and required views.", + "parameters": [ + { + "name": "target_list_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the list to retrieve views from. This should be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetListViews'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetListViews", + "parameters": { + "target_list_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSpaceCustomFields", + "qualifiedName": "ClickupApi.GetSpaceCustomFields", + "fullyQualifiedName": "ClickupApi.GetSpaceCustomFields@1.0.0", + "description": "Retrieve custom fields accessible in a specific ClickUp space.\n\nThis tool retrieves the custom fields available to you in a specified ClickUp space. It returns only the custom fields created at the space level, excluding those at the folder and list levels.", + "parameters": [ + { + "name": "content_type_header", + "type": "string", + "required": true, + "description": "The MIME type for the request header, typically 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "space_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the ClickUp space from which to fetch available custom fields. It should be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSpaceAvailableFields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetSpaceCustomFields", + "parameters": { + "content_type_header": { + "value": "application/json", + "type": "string", + "required": true + }, + "space_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSpaceFolders", + "qualifiedName": "ClickupApi.GetSpaceFolders", + "fullyQualifiedName": "ClickupApi.GetSpaceFolders@1.0.0", + "description": "Retrieve a list of folders from a specified space.\n\nUse this tool to view folders within a specific space in ClickUp. It is useful when you need to access or manage the folders in a particular workspace.", + "parameters": [ + { + "name": "space_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the space from which to retrieve folders. This is required to specify which space's folders are being requested.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_folders", + "type": "boolean", + "required": false, + "description": "Set to true to include archived folders in the results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetFolders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetSpaceFolders", + "parameters": { + "space_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "include_archived_folders": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSpaceTags", + "qualifiedName": "ClickupApi.GetSpaceTags", + "fullyQualifiedName": "ClickupApi.GetSpaceTags@1.0.0", + "description": "Retrieve task tags for a specified space.\n\nUse this tool to view the task tags available within a specific space. It helps in identifying and managing tags associated with tasks.", + "parameters": [ + { + "name": "content_type_header", + "type": "string", + "required": true, + "description": "The MIME type of the request. Generally set to 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "space_identifier", + "type": "integer", + "required": true, + "description": "An integer representing the ID of the space for which to retrieve task tags. This ID is required to specify the space.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSpaceTags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetSpaceTags", + "parameters": { + "content_type_header": { + "value": "application/json", + "type": "string", + "required": true + }, + "space_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSpaceViews", + "qualifiedName": "ClickupApi.GetSpaceViews", + "fullyQualifiedName": "ClickupApi.GetSpaceViews@1.0.0", + "description": "Retrieve the task and page views for a specified Space.\n\nThis tool is used to obtain the task and page views available within a specific Space in ClickUp. It should be called when you need to explore or list the views associated with a given space by providing the space ID.", + "parameters": [ + { + "name": "space_identifier", + "type": "integer", + "required": true, + "description": "The unique integer ID of the space for which to retrieve task and page views.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSpaceViews'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetSpaceViews", + "parameters": { + "space_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaskComments", + "qualifiedName": "ClickupApi.GetTaskComments", + "fullyQualifiedName": "ClickupApi.GetTaskComments@1.0.0", + "description": "Retrieve comments from a specified task in ClickUp.\n\nUse this tool to view comments on a specific task within ClickUp. If no 'start' and 'start_id' parameters are provided, it will return the latest 25 comments. Provide 'start' and 'start_id' to paginate through older comments.", + "parameters": [ + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "Specify the unique identifier of the task whose comments you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_date_unix_time_ms", + "type": "integer", + "required": false, + "description": "Specify the date of a task comment using Unix time in milliseconds for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_start_id", + "type": "string", + "required": false, + "description": "The ID of the earliest comment to start retrieving from, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to `true` if you want to reference a task by its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_for_custom_task", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when using a custom task ID (requires `custom_task_ids` to be true).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTaskComments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetTaskComments", + "parameters": { + "task_identifier": { + "value": "abc123", + "type": "string", + "required": true + }, + "comment_date_unix_time_ms": { + "value": 1631270400000, + "type": "integer", + "required": false + }, + "comment_start_id": { + "value": "comment789", + "type": "string", + "required": false + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "workspace_id_for_custom_task": { + "value": 456, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaskMembers", + "qualifiedName": "ClickupApi.GetTaskMembers", + "fullyQualifiedName": "ClickupApi.GetTaskMembers@1.0.0", + "description": "Retrieve members with direct access to a task.\n\nUse this tool to view the people who have direct access to a specific task in ClickUp. It does not include members with inherited permissions through the hierarchy.", + "parameters": [ + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the task to retrieve members for. This ID is necessary to specify the task in question.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTaskMembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetTaskMembers", + "parameters": { + "task_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaskTimeInStatus", + "qualifiedName": "ClickupApi.GetTaskTimeInStatus", + "fullyQualifiedName": "ClickupApi.GetTaskTimeInStatus@1.0.0", + "description": "Retrieve duration of tasks in various statuses.\n\nUse this tool to find out how long multiple tasks have remained in each status. The Total Time in Status ClickApp must be enabled by the Workspace owner or an admin.", + "parameters": [ + { + "name": "content_type_header", + "type": "string", + "required": true, + "description": "The MIME type of the body of the request. Typically set to 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_ids_list", + "type": "string", + "required": true, + "description": "A list of up to 100 task IDs to check duration in status. Include each task ID separated by commas.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference tasks by custom task IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_for_custom_task_ids", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID if using custom task IDs. Required when `custom_task_ids` is `true`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBulkTasks'TimeinStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetTaskTimeInStatus", + "parameters": { + "content_type_header": { + "value": "application/json", + "type": "string", + "required": true + }, + "task_ids_list": { + "value": "123,456,789", + "type": "string", + "required": true + }, + "use_custom_task_ids": { + "value": false, + "type": "boolean", + "required": false + }, + "workspace_id_for_custom_task_ids": { + "value": null, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamViews", + "qualifiedName": "ClickupApi.GetTeamViews", + "fullyQualifiedName": "ClickupApi.GetTeamViews@1.0.0", + "description": "Retrieve task and page views at the workspace level.\n\nUse this tool to view the task and page views available at the Everything Level of a specified workspace in ClickUp.", + "parameters": [ + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the workspace to retrieve task and page views from in ClickUp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTeamViews'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetTeamViews", + "parameters": { + "workspace_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTimeEntriesInDateRange", + "qualifiedName": "ClickupApi.GetTimeEntriesInDateRange", + "fullyQualifiedName": "ClickupApi.GetTimeEntriesInDateRange@1.0.0", + "description": "Retrieve time entries within a specified date range.\n\nUse this tool to view time entries filtered by start and end dates. By default, it returns entries from the last 30 days for the authenticated user. To access entries for other users, use the 'assignee' parameter. You may apply location filters with 'space_id', 'folder_id', 'list_id', or 'task_id', but only one at a time. Note: Negative duration entries indicate a running timer.", + "parameters": [ + { + "name": "content_type", + "type": "string", + "required": true, + "description": "Specifies the format of the response content. Usually set to 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "Specify the Workspace ID for filtering time entries when using custom task IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_unix_milliseconds", + "type": "number", + "required": false, + "description": "Specify the end date in Unix time (milliseconds) to filter time entries up to this point.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_assignee", + "type": "number", + "required": false, + "description": "Filter by user IDs. Use commas to separate multiple IDs (e.g., '1234,9876'). Only accessible to Workspace Owners/Admins.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_id", + "type": "integer", + "required": false, + "description": "Include time entries for tasks in a specific folder by providing its ID. Only one location filter (space, folder, list, or task) can be used at a time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_approval_details", + "type": "boolean", + "required": false, + "description": "Include detailed approval information for each time entry, such as Approver ID, Approved Time, List of Approvers, and Approval Status.", + "enum": null, + "inferrable": true + }, + { + "name": "include_approval_history", + "type": "boolean", + "required": false, + "description": "Set to true to include the approval history for each time entry, with status changes, notes, and approvers.", + "enum": null, + "inferrable": true + }, + { + "name": "include_location_names", + "type": "boolean", + "required": false, + "description": "Include the names of the List, Folder, and Space in the response along with their IDs when set to true.", + "enum": null, + "inferrable": true + }, + { + "name": "include_only_billable_entries", + "type": "boolean", + "required": false, + "description": "Set to `true` to include only billable time entries, or `false` for non-billable entries.", + "enum": null, + "inferrable": true + }, + { + "name": "include_task_tags", + "type": "boolean", + "required": false, + "description": "Set to true to include task tags in the response for associated time entries.", + "enum": null, + "inferrable": true + }, + { + "name": "space_id", + "type": "integer", + "required": false, + "description": "Include time entries associated only with tasks in the specified Space using its ID.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_list_id", + "type": "integer", + "required": false, + "description": "Include only time entries associated with tasks in a specified List by providing the List ID.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_task_id", + "type": "string", + "required": false, + "description": "Include only time entries associated with the specified task.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_in_unix_milliseconds", + "type": "number", + "required": false, + "description": "The start date of the time entries in Unix time (milliseconds).", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference tasks by their custom task IDs. Requires specifying the team_id.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_for_custom_task_ids", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when referencing a task by its custom task ID, and `custom_task_ids` is set to true.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'Gettimeentrieswithinadaterange'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetTimeEntriesInDateRange", + "parameters": { + "content_type": { + "value": "application/json", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "end_date_unix_milliseconds": { + "value": 1691616000000, + "type": "integer", + "required": false + }, + "filter_by_assignee": { + "value": 67890, + "type": "integer", + "required": false + }, + "folder_id": { + "value": 54321, + "type": "integer", + "required": false + }, + "include_approval_details": { + "value": true, + "type": "boolean", + "required": false + }, + "include_approval_history": { + "value": false, + "type": "boolean", + "required": false + }, + "include_location_names": { + "value": true, + "type": "boolean", + "required": false + }, + "include_only_billable_entries": { + "value": true, + "type": "boolean", + "required": false + }, + "include_task_tags": { + "value": false, + "type": "boolean", + "required": false + }, + "space_id": { + "value": 98765, + "type": "integer", + "required": false + }, + "specific_list_id": { + "value": 13579, + "type": "integer", + "required": false + }, + "specific_task_id": { + "value": "task_123456", + "type": "string", + "required": false + }, + "start_date_in_unix_milliseconds": { + "value": 1691030400000, + "type": "integer", + "required": false + }, + "use_custom_task_ids": { + "value": false, + "type": "boolean", + "required": false + }, + "workspace_id_for_custom_task_ids": { + "value": null, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTimeEntryTags", + "qualifiedName": "ClickupApi.GetTimeEntryTags", + "fullyQualifiedName": "ClickupApi.GetTimeEntryTags@1.0.0", + "description": "Retrieve all tags from time entries in a workspace.\n\nUse this tool to view all labels that have been applied to time entries within a specified workspace.", + "parameters": [ + { + "name": "content_type_header", + "type": "string", + "required": true, + "description": "The media type of the resource, usually set to 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The unique ID of the workspace to retrieve tags from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'Getalltagsfromtimeentries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetTimeEntryTags", + "parameters": { + "content_type_header": { + "value": "application/json", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTrackedTimeForTask", + "qualifiedName": "ClickupApi.GetTrackedTimeForTask", + "fullyQualifiedName": "ClickupApi.GetTrackedTimeForTask@1.0.0", + "description": "Fetch tracked time for a specific task.\n\nUse this tool to get the tracked time recorded for a specific task in ClickUp. It's useful for retrieving time spent details on tasks, though it doesn't handle new time entries.", + "parameters": [ + { + "name": "set_content_type_header", + "type": "string", + "required": true, + "description": "Set the Content-Type header for the request, typically as 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier for the task whose tracked time you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference tasks by their custom task IDs instead of default IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "The ID of the Workspace to be provided when referencing a task by its custom task ID. Required if `custom_task_ids` is `true`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'Gettrackedtime'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetTrackedTimeForTask", + "parameters": { + "set_content_type_header": { + "value": "application/json", + "type": "string", + "required": true + }, + "task_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "workspace_id": { + "value": 456, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserGroupsInWorkspace", + "qualifiedName": "ClickupApi.GetUserGroupsInWorkspace", + "fullyQualifiedName": "ClickupApi.GetUserGroupsInWorkspace@1.0.0", + "description": "Retrieve user groups in a ClickUp workspace.\n\nUse this tool to view the user groups within a specific ClickUp workspace. It's useful for managing and organizing user permissions and roles within a team environment.", + "parameters": [ + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the ClickUp workspace to retrieve user groups from.", + "enum": null, + "inferrable": true + }, + { + "name": "user_group_ids", + "type": "string", + "required": false, + "description": "List one or more User Group IDs to retrieve details about specific user groups in the workspace.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTeams1'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetUserGroupsInWorkspace", + "parameters": { + "workspace_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "user_group_ids": { + "value": "group1,group2", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetVisibleTasksInView", + "qualifiedName": "ClickupApi.GetVisibleTasksInView", + "fullyQualifiedName": "ClickupApi.GetVisibleTasksInView@1.0.0", + "description": "Retrieve all visible tasks from a ClickUp view.\n\nUse this tool to obtain a list of all tasks that are visible in a specific view within ClickUp. It is useful for task management and organization within the platform.", + "parameters": [ + { + "name": "pagination_page_number", + "type": "integer", + "required": true, + "description": "The specific page number of tasks to retrieve. Used for pagination in task lists, starting at 1.", + "enum": null, + "inferrable": true + }, + { + "name": "view_identifier", + "type": "string", + "required": true, + "description": "The ID of the ClickUp view from which to retrieve visible tasks. Must be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetViewTasks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetVisibleTasksInView", + "parameters": { + "pagination_page_number": { + "value": 1, + "type": "integer", + "required": true + }, + "view_identifier": { + "value": "view_123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceCustomRoles", + "qualifiedName": "ClickupApi.GetWorkspaceCustomRoles", + "fullyQualifiedName": "ClickupApi.GetWorkspaceCustomRoles@1.0.0", + "description": "Retrieve custom roles from a specific workspace.\n\nThis tool is used to retrieve the custom roles available in a specified workspace on ClickUp. It should be called when you need to view or manage roles in a ClickUp workspace.", + "parameters": [ + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the workspace to retrieve custom roles from.", + "enum": null, + "inferrable": true + }, + { + "name": "include_members", + "type": "boolean", + "required": false, + "description": "Include member details in the response. Set to true to include, false to exclude.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomRoles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetWorkspaceCustomRoles", + "parameters": { + "workspace_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "include_members": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceCustomTaskTypes", + "qualifiedName": "ClickupApi.GetWorkspaceCustomTaskTypes", + "fullyQualifiedName": "ClickupApi.GetWorkspaceCustomTaskTypes@1.0.0", + "description": "Retrieve custom task types for a specific workspace.\n\nUse this tool to view the custom task types available in a specified workspace. Ideal for gaining insight into workspace-specific configurations and custom workflows.", + "parameters": [ + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the Workspace to retrieve custom task types for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetWorkspaceCustomTaskTypes", + "parameters": { + "workspace_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspacePlan", + "qualifiedName": "ClickupApi.GetWorkspacePlan", + "fullyQualifiedName": "ClickupApi.GetWorkspacePlan@1.0.0", + "description": "Retrieve the current subscription plan for a workspace.\n\nUse this tool to get details about the current subscription plan for a specified workspace in ClickUp. It should be called when you need to view the plan or pricing details associated with a workspace.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The unique ID for the workspace whose subscription plan you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetWorkspaceplan'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetWorkspacePlan", + "parameters": { + "workspace_id": { + "value": "12345-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceSeatDetails", + "qualifiedName": "ClickupApi.GetWorkspaceSeatDetails", + "fullyQualifiedName": "ClickupApi.GetWorkspaceSeatDetails@1.0.0", + "description": "Retrieve seat details for a workspace.\n\nUse this tool to view the used, total, and available member and guest seats for a specified workspace in ClickUp.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The unique ID of the workspace for which seat details are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetWorkspaceseats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetWorkspaceSeatDetails", + "parameters": { + "workspace_id": { + "value": "1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceSpaces", + "qualifiedName": "ClickupApi.GetWorkspaceSpaces", + "fullyQualifiedName": "ClickupApi.GetWorkspaceSpaces@1.0.0", + "description": "Retrieve available Spaces in a Workspace.\n\nUse this tool to get information about the Spaces available in a specific Workspace identified by its space ID.", + "parameters": [ + { + "name": "workspace_space_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the specific space in the workspace to retrieve details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSpace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetWorkspaceSpaces", + "parameters": { + "workspace_space_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceUserInfo", + "qualifiedName": "ClickupApi.GetWorkspaceUserInfo", + "fullyQualifiedName": "ClickupApi.GetWorkspaceUserInfo@1.0.0", + "description": "Retrieve user information from a specified workspace.\n\nCall this tool to get details about a user from a specific workspace on the ClickUp platform. This tool is applicable only to Workspaces that are on the Enterprise Plan.", + "parameters": [ + { + "name": "user_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the user to retrieve information for. This is required to specify which user's information is being accessed in the workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The unique ID of the Workspace. Used to specify which Workspace's user information is to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "show_shared_items", + "type": "boolean", + "required": false, + "description": "Set to `true` to include details of shared items; `false` excludes them by default.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetWorkspaceUserInfo", + "parameters": { + "user_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "workspace_id": { + "value": 67890, + "type": "integer", + "required": true + }, + "show_shared_items": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceWebhooks", + "qualifiedName": "ClickupApi.GetWorkspaceWebhooks", + "fullyQualifiedName": "ClickupApi.GetWorkspaceWebhooks@1.0.0", + "description": "Retrieve webhooks for a workspace.\n\nUse this tool to view the webhooks created via the API for a specific Workspace. It returns webhooks created by the authenticated user.", + "parameters": [ + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the Workspace to retrieve the webhooks for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetWebhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.GetWorkspaceWebhooks", + "parameters": { + "workspace_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "InviteGuestToWorkspace", + "qualifiedName": "ClickupApi.InviteGuestToWorkspace", + "fullyQualifiedName": "ClickupApi.InviteGuestToWorkspace@1.0.0", + "description": "Invite a guest to join a ClickUp workspace.\n\nThis tool is used to invite a guest to a ClickUp workspace on an Enterprise Plan. Ensure the guest has access to specific items in the workspace using additional endpoints.", + "parameters": [ + { + "name": "guest_email", + "type": "string", + "required": true, + "description": "The email address of the guest to be invited to the workspace. Ensure it is correctly formatted.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The integer ID of the Workspace to which the guest will be invited.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_guest_to_create_views", + "type": "boolean", + "required": false, + "description": "Indicates if the guest can create views in the workspace. Accepts a boolean value.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_tag_editing", + "type": "boolean", + "required": false, + "description": "Set to true if the guest should be allowed to edit tags in the workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_view_time_spent", + "type": "boolean", + "required": false, + "description": "Allow the guest to view time spent in the workspace. Accepts a boolean value: true to allow, false to deny.", + "enum": null, + "inferrable": true + }, + { + "name": "can_view_estimated_times", + "type": "boolean", + "required": false, + "description": "Set to true to allow the guest to view estimated times for tasks.", + "enum": null, + "inferrable": true + }, + { + "name": "can_view_points_estimated", + "type": "boolean", + "required": false, + "description": "Set to true to allow the guest to view estimated points for tasks.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_role_id", + "type": "integer", + "required": false, + "description": "The ID of the custom role to assign to the guest. Must be an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'InviteGuestToWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.InviteGuestToWorkspace", + "parameters": { + "guest_email": { + "value": "guest@example.com", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "allow_guest_to_create_views": { + "value": true, + "type": "boolean", + "required": false + }, + "allow_tag_editing": { + "value": false, + "type": "boolean", + "required": false + }, + "allow_view_time_spent": { + "value": true, + "type": "boolean", + "required": false + }, + "can_view_estimated_times": { + "value": true, + "type": "boolean", + "required": false + }, + "can_view_points_estimated": { + "value": false, + "type": "boolean", + "required": false + }, + "custom_role_id": { + "value": 789, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "InviteUserToWorkspace", + "qualifiedName": "ClickupApi.InviteUserToWorkspace", + "fullyQualifiedName": "ClickupApi.InviteUserToWorkspace@1.0.0", + "description": "Invite a user to your ClickUp Workspace as a member.\n\nUse this tool to invite someone to your ClickUp Workspace as a member. This is suitable for Workspaces on the Enterprise Plan. For inviting guests, use the appropriate tool instead.", + "parameters": [ + { + "name": "invite_as_admin", + "type": "boolean", + "required": true, + "description": "Indicate if the user should be invited as an admin. True for admin, False for regular member.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email", + "type": "string", + "required": true, + "description": "The email address of the user to be invited to the Workspace. Must be a valid email format.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The unique ID of the workspace to which the user is being invited.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_role_id", + "type": "integer", + "required": false, + "description": "The ID of the custom role to assign to the user in the Workspace. Must be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'InviteUserToWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.InviteUserToWorkspace", + "parameters": { + "invite_as_admin": { + "value": true, + "type": "boolean", + "required": true + }, + "user_email": { + "value": "example.user@example.com", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "custom_role_id": { + "value": 789, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "LinkTasksClickup", + "qualifiedName": "ClickupApi.LinkTasksClickup", + "fullyQualifiedName": "ClickupApi.LinkTasksClickup@1.0.0", + "description": "Link two ClickUp tasks together.\n\nThis tool allows you to link two tasks in ClickUp via the Task Links feature in the right-hand sidebar of a task. It should be called when you need to associate tasks directly, but does not support linking to other types of objects.", + "parameters": [ + { + "name": "source_task_id", + "type": "string", + "required": true, + "description": "The ID of the task from which the link will be initiated.", + "enum": null, + "inferrable": true + }, + { + "name": "task_to_link_to", + "type": "string", + "required": true, + "description": "The ID of the task to link to the initiating task.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_for_custom_task", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID if referencing a task by custom task id (when custom_task_ids is true).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AddTaskLink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.LinkTasksClickup", + "parameters": { + "source_task_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "task_to_link_to": { + "value": "def456", + "type": "string", + "required": true + }, + "use_custom_task_ids": { + "value": false, + "type": "boolean", + "required": false + }, + "workspace_id_for_custom_task": { + "value": 789, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MergeTasksInClickup", + "qualifiedName": "ClickupApi.MergeTasksInClickup", + "fullyQualifiedName": "ClickupApi.MergeTasksInClickup@1.0.0", + "description": "Merge multiple tasks into a target task in ClickUp.\n\nUse this tool to merge several tasks into a specified target task within ClickUp. The target task is identified by the task_id, with source tasks provided in the request. This is useful when consolidating tasks for better project management.", + "parameters": [ + { + "name": "source_task_ids_to_merge", + "type": "array", + "innerType": "string", + "required": true, + "description": "Array of task IDs to merge into the target task in ClickUp.", + "enum": null, + "inferrable": true + }, + { + "name": "target_task_id", + "type": "string", + "required": true, + "description": "ID of the target task into which other tasks will be merged.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'mergeTasks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.MergeTasksInClickup", + "parameters": { + "source_task_ids_to_merge": { + "value": ["abc123", "def456", "ghi789"], + "type": "array", + "required": true + }, + "target_task_id": { + "value": "xyz987", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveCustomFieldValue", + "qualifiedName": "ClickupApi.RemoveCustomFieldValue", + "fullyQualifiedName": "ClickupApi.RemoveCustomFieldValue@1.0.0", + "description": "Remove a custom field value from a ClickUp task.\n\nUse this tool to remove the data from a custom field on a ClickUp task without deleting the field option itself.", + "parameters": [ + { + "name": "custom_field_id", + "type": "string", + "required": true, + "description": "UUID of the custom field to be removed from the task. Example: b8a8-48d8-a0c6-b4200788a683", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the task from which you want to remove the custom field value.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when referencing a task by custom task id.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RemoveCustomFieldValue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RemoveCustomFieldValue", + "parameters": { + "custom_field_id": { + "value": "b8a8-48d8-a0c6-b4200788a683", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "1234-5678-unique-task-id", + "type": "string", + "required": true + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "workspace_id": { + "value": 56789, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveGuestFromFolder", + "qualifiedName": "ClickupApi.RemoveGuestFromFolder", + "fullyQualifiedName": "ClickupApi.RemoveGuestFromFolder@1.0.0", + "description": "Revoke a guest's access to a specified folder.\n\nUse this tool to remove a guest's access to a specific folder in ClickUp workspaces on the Enterprise Plan.", + "parameters": [ + { + "name": "folder_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the folder from which the guest's access should be revoked. This ID is essential to specify the exact folder within the ClickUp workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "guest_identifier", + "type": "integer", + "required": true, + "description": "The unique numeric ID of the guest to be removed from the folder. This is required to identify which guest's access is being revoked.", + "enum": null, + "inferrable": true + }, + { + "name": "include_shared_items", + "type": "boolean", + "required": false, + "description": "Set to true to include details of items shared with the guest. Defaults to true.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RemoveGuestFromFolder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RemoveGuestFromFolder", + "parameters": { + "folder_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "guest_identifier": { + "value": 7890, + "type": "integer", + "required": true + }, + "include_shared_items": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveGuestFromList", + "qualifiedName": "ClickupApi.RemoveGuestFromList", + "fullyQualifiedName": "ClickupApi.RemoveGuestFromList@1.0.0", + "description": "Revoke a guest's access to a specific list in ClickUp.\n\nThis tool removes a guest's access from a specified list within ClickUp. It is available only for Workspaces on the Enterprise Plan.", + "parameters": [ + { + "name": "guest_user_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the guest whose access is to be revoked from the list.", + "enum": null, + "inferrable": true + }, + { + "name": "list_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the list from which the guest's access will be revoked. This must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "include_shared_details", + "type": "boolean", + "required": false, + "description": "Set to `true` to include details of items shared with the guest. Default is `true`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RemoveGuestFromList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RemoveGuestFromList", + "parameters": { + "guest_user_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "list_identifier": { + "value": 67890, + "type": "integer", + "required": true + }, + "include_shared_details": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveGuestFromTask", + "qualifiedName": "ClickupApi.RemoveGuestFromTask", + "fullyQualifiedName": "ClickupApi.RemoveGuestFromTask@1.0.0", + "description": "Revoke a guest's access to a specific task in ClickUp.\n\nUse this tool to remove a guest from a task in ClickUp. This action is available only for Workspaces on the Enterprise Plan.", + "parameters": [ + { + "name": "guest_id", + "type": "integer", + "required": true, + "description": "The ID of the guest to remove from the task. This is a required integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier of the task from which the guest's access should be revoked. This is required to specify the task.", + "enum": null, + "inferrable": true + }, + { + "name": "include_shared_details", + "type": "boolean", + "required": false, + "description": "Set to `true` to include details of items shared with the guest. Default is `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_for_custom_task", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when referencing a task by its custom task ID. This is required if 'custom_task_ids' is set to 'true'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RemoveGuestFromTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RemoveGuestFromTask", + "parameters": { + "guest_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "task_id": { + "value": "abc-123-task", + "type": "string", + "required": true + }, + "include_shared_details": { + "value": true, + "type": "boolean", + "required": false + }, + "use_custom_task_ids": { + "value": false, + "type": "boolean", + "required": false + }, + "workspace_id_for_custom_task": { + "value": null, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveGuestFromWorkspace", + "qualifiedName": "ClickupApi.RemoveGuestFromWorkspace", + "fullyQualifiedName": "ClickupApi.RemoveGuestFromWorkspace@1.0.0", + "description": "Revoke a guest's access to a ClickUp workspace.\n\nRemove a guest from a ClickUp workspace. Available only for Workspaces on the Enterprise Plan.", + "parameters": [ + { + "name": "guest_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the guest to be removed from the workspace. This should be an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The unique ID of the ClickUp workspace from which the guest will be removed. This is an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RemoveGuestFromWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RemoveGuestFromWorkspace", + "parameters": { + "guest_id": { + "value": 1024, + "type": "integer", + "required": true + }, + "workspace_id": { + "value": 5123, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTagFromTask", + "qualifiedName": "ClickupApi.RemoveTagFromTask", + "fullyQualifiedName": "ClickupApi.RemoveTagFromTask@1.0.0", + "description": "Remove a tag from a specific task in ClickUp.\n\nUse this tool to remove a specified tag from a task in ClickUp without deleting the tag from the space.", + "parameters": [ + { + "name": "content_type_header", + "type": "string", + "required": true, + "description": "Specifies the media type of the request. Commonly set to 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_name_to_remove", + "type": "string", + "required": true, + "description": "The name of the tag to remove from the specified task.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier of the task from which the tag will be removed. Use the task's regular ID unless custom task IDs are enabled.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID, or false to use the standard ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_for_custom_task", + "type": "integer", + "required": false, + "description": "The Workspace ID required when referencing a task by its custom ID (if custom_task_ids is true).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RemoveTagFromTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RemoveTagFromTask", + "parameters": { + "content_type_header": { + "value": "application/json", + "type": "string", + "required": true + }, + "tag_name_to_remove": { + "value": "urgent", + "type": "string", + "required": true + }, + "task_id": { + "value": "12345", + "type": "string", + "required": true + }, + "use_custom_task_ids": { + "value": false, + "type": "boolean", + "required": false + }, + "workspace_id_for_custom_task": { + "value": null, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTagsFromTimeEntries", + "qualifiedName": "ClickupApi.RemoveTagsFromTimeEntries", + "fullyQualifiedName": "ClickupApi.RemoveTagsFromTimeEntries@1.0.0", + "description": "Remove labels from specific time entries.\n\n Use this tool to remove labels from time entries without affecting the labels in the Workspace.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "The unique ID of the Workspace from which to remove labels from time entries. Must be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'Removetagsfromtimeentries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RemoveTagsFromTimeEntries", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"time_entry_ids\": [67890, 123456], \"tag_ids\": [1111, 2222]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTaskDependency", + "qualifiedName": "ClickupApi.RemoveTaskDependency", + "fullyQualifiedName": "ClickupApi.RemoveTaskDependency@1.0.0", + "description": "Remove a dependency relationship between tasks.\n\nThis tool is used to remove the dependency relationship between two or more tasks in ClickUp. Call this when two tasks that are currently dependent on one another need to be independent.", + "parameters": [ + { + "name": "dependent_task_id", + "type": "string", + "required": true, + "description": "The task ID that is dependent on another. Provide a valid task ID as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "depends_on_task_id", + "type": "string", + "required": true, + "description": "The ID of the task that another task depends on. Provide a valid task ID to specify the dependent task.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id_to_remove_dependency", + "type": "string", + "required": true, + "description": "Specify the task ID from which the dependency is to be removed. This is required to identify the task involved in the dependency relationship.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true if referencing tasks by their custom task IDs is desired.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when using custom task IDs by setting `custom_task_ids` to `true`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteDependency'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RemoveTaskDependency", + "parameters": { + "dependent_task_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "depends_on_task_id": { + "value": "def456", + "type": "string", + "required": true + }, + "task_id_to_remove_dependency": { + "value": "ghi789", + "type": "string", + "required": true + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "workspace_id": { + "value": 42, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTaskFromAdditionalList", + "qualifiedName": "ClickupApi.RemoveTaskFromAdditionalList", + "fullyQualifiedName": "ClickupApi.RemoveTaskFromAdditionalList@1.0.0", + "description": "Remove a task from an additional list in ClickUp.\n\nUse this tool to remove a task from an additional list, not the task's home list. Requires the 'Tasks in Multiple Lists' feature to be enabled in ClickUp.", + "parameters": [ + { + "name": "additional_list_id", + "type": "integer", + "required": true, + "description": "The ID of the additional list from which the task should be removed. This is required for identifying the secondary list, not the task's home list.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the task to be removed from the additional list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RemoveTaskFromList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RemoveTaskFromAdditionalList", + "parameters": { + "additional_list_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "task_identifier": { + "value": "task_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTaskLink", + "qualifiedName": "ClickupApi.RemoveTaskLink", + "fullyQualifiedName": "ClickupApi.RemoveTaskLink@1.0.0", + "description": "Remove the link between two tasks.\n\nUse this tool to delete an existing link between two tasks in ClickUp. It is helpful when you need to unlink tasks that are no longer related.", + "parameters": [ + { + "name": "linked_task_id", + "type": "string", + "required": true, + "description": "The task ID of the task to which the original task is linked. This specifies the connection to be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_task_id", + "type": "string", + "required": true, + "description": "The ID of the primary task from which to remove the link. This is required to identify the task.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when `custom_task_ids` is set to `true`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTaskLink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RemoveTaskLink", + "parameters": { + "linked_task_id": { + "value": "link-12345", + "type": "string", + "required": true + }, + "primary_task_id": { + "value": "task-67890", + "type": "string", + "required": true + }, + "use_custom_task_ids": { + "value": false, + "type": "boolean", + "required": false + }, + "workspace_id": { + "value": 101, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTimeEntry", + "qualifiedName": "ClickupApi.RemoveTimeEntry", + "fullyQualifiedName": "ClickupApi.RemoveTimeEntry@1.0.0", + "description": "Delete a specific time entry from a task.\n\nUse this tool to delete a specific time tracking entry from a task. It's useful for managing or correcting time logs by removing unwanted entries.", + "parameters": [ + { + "name": "content_type_header", + "type": "string", + "required": true, + "description": "Specify the media type of the resource (usually 'application/json').", + "enum": null, + "inferrable": true + }, + { + "name": "interval_id_for_removal", + "type": "string", + "required": true, + "description": "The unique identifier of the time entry to delete from a task.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The identifier of the task from which to delete the time entry. This must match the task ID used in ClickUp.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when `use_custom_task_ids` is `true`. Required to identify the workspace in ClickUp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'Deletetimetracked'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RemoveTimeEntry", + "parameters": { + "content_type_header": { + "value": "application/json", + "type": "string", + "required": true + }, + "interval_id_for_removal": { + "value": "123456789", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "task_987654321", + "type": "string", + "required": true + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "workspace_id": { + "value": 42, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveUserFromWorkspace", + "qualifiedName": "ClickupApi.RemoveUserFromWorkspace", + "fullyQualifiedName": "ClickupApi.RemoveUserFromWorkspace@1.0.0", + "description": "Remove a user from a ClickUp workspace.\n\nUse this tool to deactivate a user from a ClickUp workspace, applicable for Workspaces on the Enterprise Plan.", + "parameters": [ + { + "name": "user_id", + "type": "integer", + "required": true, + "description": "The ID of the user to be deactivated from the workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the Workspace in ClickUp from which the user will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RemoveUserFromWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RemoveUserFromWorkspace", + "parameters": { + "user_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "workspace_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RenameClickupFolder", + "qualifiedName": "ClickupApi.RenameClickupFolder", + "fullyQualifiedName": "ClickupApi.RenameClickupFolder@1.0.0", + "description": "Rename a folder in ClickUp.\n\nUse this tool to update the name of a folder in ClickUp by specifying the folder ID and the new name.", + "parameters": [ + { + "name": "folder_id_clickup", + "type": "integer", + "required": true, + "description": "The unique identifier for the ClickUp folder you wish to rename.", + "enum": null, + "inferrable": true + }, + { + "name": "new_folder_name", + "type": "string", + "required": true, + "description": "Specify the new name for the folder. This is the name that the folder will be renamed to in ClickUp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateFolder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RenameClickupFolder", + "parameters": { + "folder_id_clickup": { + "value": 123456, + "type": "integer", + "required": true + }, + "new_folder_name": { + "value": "Updated Project Folder", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RenameTimeEntryLabel", + "qualifiedName": "ClickupApi.RenameTimeEntryLabel", + "fullyQualifiedName": "ClickupApi.RenameTimeEntryLabel@1.0.0", + "description": "Rename a time entry label in ClickUp.\n\nUse this tool to change the name of a label associated with time entries for a specific team in ClickUp.", + "parameters": [ + { + "name": "current_label_name", + "type": "string", + "required": true, + "description": "The current name of the time entry label that needs to be renamed.", + "enum": null, + "inferrable": true + }, + { + "name": "foreground_color_for_tag", + "type": "string", + "required": true, + "description": "Specify the hexadecimal foreground color for the tag (e.g., '#FFFFFF').", + "enum": null, + "inferrable": true + }, + { + "name": "label_background_color", + "type": "string", + "required": true, + "description": "Hex code for the new background color of the label (e.g., '#FFFFFF').", + "enum": null, + "inferrable": true + }, + { + "name": "new_label_name", + "type": "string", + "required": true, + "description": "The new name for the time entry label to be applied in ClickUp.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the workspace where the label is located. This is required to specify the team in ClickUp whose label you want to rename.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'Changetagnamesfromtimeentries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RenameTimeEntryLabel", + "parameters": { + "current_label_name": { + "value": "Development", + "type": "string", + "required": true + }, + "foreground_color_for_tag": { + "value": "#FF5733", + "type": "string", + "required": true + }, + "label_background_color": { + "value": "#C70039", + "type": "string", + "required": true + }, + "new_label_name": { + "value": "Dev Team", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAvailableSpaces", + "qualifiedName": "ClickupApi.RetrieveAvailableSpaces", + "fullyQualifiedName": "ClickupApi.RetrieveAvailableSpaces@1.0.0", + "description": "View available Spaces in a Workspace.\n\nThe tool retrieves the Spaces within a specified Workspace, providing member info for private Spaces if applicable.", + "parameters": [ + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the workspace to retrieve available spaces from.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_spaces", + "type": "boolean", + "required": false, + "description": "Set to true to include archived Spaces in the results. Otherwise, only active Spaces are returned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSpaces'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.RetrieveAvailableSpaces", + "parameters": { + "workspace_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "include_archived_spaces": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetTaskDependency", + "qualifiedName": "ClickupApi.SetTaskDependency", + "fullyQualifiedName": "ClickupApi.SetTaskDependency@1.0.0", + "description": "Set a task as waiting on or blocking another task.\n\nUse this tool to establish a dependency between tasks in ClickUp, either setting a task as waiting on another or as blocking one.", + "parameters": [ + { + "name": "task_id_of_dependency", + "type": "string", + "required": true, + "description": "The ID of the task that is waiting on or blocking another task.", + "enum": null, + "inferrable": true + }, + { + "name": "dependent_task_id", + "type": "string", + "required": false, + "description": "The ID of the task that the specified task depends on or is blocking. This establishes the task dependency relationship.", + "enum": null, + "inferrable": true + }, + { + "name": "depends_on_task_id", + "type": "string", + "required": false, + "description": "Specify the task ID that this task depends on or is blocked by. It should be a valid task ID in ClickUp.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when `custom_task_ids` is true. Necessary for task identification.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AddDependency'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.SetTaskDependency", + "parameters": { + "task_id_of_dependency": { + "value": "12345", + "type": "string", + "required": true + }, + "dependent_task_id": { + "value": "67890", + "type": "string", + "required": false + }, + "depends_on_task_id": { + "value": "54321", + "type": "string", + "required": false + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "workspace_id": { + "value": 101, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetupClickupWebhook", + "qualifiedName": "ClickupApi.SetupClickupWebhook", + "fullyQualifiedName": "ClickupApi.SetupClickupWebhook@1.0.0", + "description": "Set up a ClickUp webhook to monitor events.\n\nUse this tool to create a webhook in ClickUp, enabling monitoring of events for a specific team. Useful for triggering actions or notifications based on certain events within a ClickUp team.", + "parameters": [ + { + "name": "event_types", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of event types to subscribe to, or use `*` to subscribe to all events. Refer to ClickUp documentation for available options.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_url", + "type": "string", + "required": true, + "description": "The URL where the webhook will send POST requests. Must be reachable to receive event data.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the workspace where the webhook will be set up. Use this to specify the team context for monitoring.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_id", + "type": "integer", + "required": false, + "description": "Specify the folder ID in ClickUp for which the webhook is to be created. It should be an integer value representing the folder.", + "enum": null, + "inferrable": true + }, + { + "name": "space_identifier", + "type": "integer", + "required": false, + "description": "The numeric ID of the space within a ClickUp workspace for which the webhook is set up.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_task_id", + "type": "string", + "required": false, + "description": "Unique identifier for a specific task to monitor. Leave empty if not targeting a specific task.", + "enum": null, + "inferrable": true + }, + { + "name": "target_list_id", + "type": "integer", + "required": false, + "description": "The ID of the list in ClickUp for which you want to set up a webhook.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.SetupClickupWebhook", + "parameters": { + "event_types": { + "value": ["taskCreated", "taskUpdated", "taskDeleted"], + "type": "array", + "required": true + }, + "webhook_url": { + "value": "https://example.com/webhook", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "folder_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "space_identifier": { + "value": 24680, + "type": "integer", + "required": false + }, + "specific_task_id": { + "value": "task_abc123", + "type": "string", + "required": false + }, + "target_list_id": { + "value": 13579, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ShareTaskWithGuest", + "qualifiedName": "ClickupApi.ShareTaskWithGuest", + "fullyQualifiedName": "ClickupApi.ShareTaskWithGuest@1.0.0", + "description": "Share a task with a guest in the ClickUp Workspace.\n\nThis tool shares a specified task with a guest, available only on ClickUp's Enterprise Plan.", + "parameters": [ + { + "name": "guest_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the guest to share the task with.", + "enum": null, + "inferrable": true + }, + { + "name": "guest_permission_level", + "type": "string", + "required": true, + "description": "Defines the level of access for the guest. Options: 'read', 'comment', 'edit', 'create'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier for the task to share with the guest.", + "enum": null, + "inferrable": true + }, + { + "name": "include_shared_details", + "type": "boolean", + "required": false, + "description": "Set to `true` to include details of items shared with the guest. Defaults to `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_when_custom_task_ids_enabled", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when referencing tasks by custom task IDs. Required if `custom_task_ids` is `true`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AddGuestToTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ShareTaskWithGuest", + "parameters": { + "guest_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "guest_permission_level": { + "value": "edit", + "type": "string", + "required": true + }, + "task_id": { + "value": "abc-123-task", + "type": "string", + "required": true + }, + "include_shared_details": { + "value": true, + "type": "boolean", + "required": false + }, + "use_custom_task_ids": { + "value": false, + "type": "boolean", + "required": false + }, + "workspace_id_when_custom_task_ids_enabled": { + "value": null, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "StartTimerClickup", + "qualifiedName": "ClickupApi.StartTimerClickup", + "fullyQualifiedName": "ClickupApi.StartTimerClickup@1.0.0", + "description": "Start a timer for the authenticated ClickUp user.\n\n Use this tool to initiate a timer for the authenticated user in ClickUp. It is ideal for tracking time on specific tasks or projects.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "workspace_identifier", + "type": "integer", + "required": false, + "description": "The Workspace ID required when custom task IDs are used. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when `custom_task_ids` is `true`. Required for task referencing. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'StartatimeEntry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.StartTimerClickup", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "workspace_identifier": { + "value": 123456, + "type": "integer", + "required": false + }, + "workspace_id": { + "value": 78910, + "type": "integer", + "required": false + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"task_id\":\"custom-task-12345\",\"duration\":3600}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "StopTimerEntry", + "qualifiedName": "ClickupApi.StopTimerEntry", + "fullyQualifiedName": "ClickupApi.StopTimerEntry@1.0.0", + "description": "Stops a running timer for the authenticated user.\n\nUse this tool to stop a currently running timer for the authenticated user on ClickUp. This action is initiated for a specific team, requiring the team ID.", + "parameters": [ + { + "name": "content_type", + "type": "string", + "required": true, + "description": "Specifies the media type of the request. Usually 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the workspace where the timer is running. Required to stop the timer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'StopatimeEntry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.StopTimerEntry", + "parameters": { + "content_type": { + "value": "application/json", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TaskStatusDuration", + "qualifiedName": "ClickupApi.TaskStatusDuration", + "fullyQualifiedName": "ClickupApi.TaskStatusDuration@1.0.0", + "description": "Get the duration a task spends in each status.\n\nUse this tool to find out how long a task has been in each status. Ensure that the 'Total time in Status' ClickApp is enabled by the Workspace owner or admin before using this tool.", + "parameters": [ + { + "name": "content_type", + "type": "string", + "required": true, + "description": "Specify the content type for the API request, typically 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the task you want to query. Use this to specify which task's status duration you are interested in.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "The Workspace ID must be provided when referencing a task by its custom task ID and `custom_task_ids` is set to `true`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTask'sTimeinStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.TaskStatusDuration", + "parameters": { + "content_type": { + "value": "application/json", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "workspace_id": { + "value": 67890, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateChecklistItem", + "qualifiedName": "ClickupApi.UpdateChecklistItem", + "fullyQualifiedName": "ClickupApi.UpdateChecklistItem@1.0.0", + "description": "Modify or update a specific task checklist item.\n\nThis tool updates an individual line item in a task checklist. It can rename the item, set the assignee, mark it as resolved, or nest it under another item.", + "parameters": [ + { + "name": "checklist_item_uuid", + "type": "string", + "required": true, + "description": "The UUID for the specific checklist item to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_unique_identifier", + "type": "string", + "required": true, + "description": "The UUID of the checklist to update. Example: b8a8-48d8-a0c6-b4200788a683.", + "enum": null, + "inferrable": true + }, + { + "name": "assign_item_to_user", + "type": "string", + "required": false, + "description": "The user ID to which the checklist item will be assigned. This should be a string representing a valid user identifier in ClickUp.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_item_name", + "type": "string", + "required": false, + "description": "The new name for the checklist item. Provide a string to rename the item.", + "enum": null, + "inferrable": true + }, + { + "name": "mark_as_resolved", + "type": "boolean", + "required": false, + "description": "Boolean to mark the checklist item as resolved (true) or unresolved (false).", + "enum": null, + "inferrable": true + }, + { + "name": "parent_checklist_item_id", + "type": "string", + "required": false, + "description": "Include another item's `checklist_item_id` to nest this item under it.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'EditChecklistItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.UpdateChecklistItem", + "parameters": { + "checklist_item_uuid": { + "value": "f3e2a3e1-9f67-4c4b-80b8-f18d7b95d1f6", + "type": "string", + "required": true + }, + "checklist_unique_identifier": { + "value": "b8a8-48d8-a0c6-b4200788a683", + "type": "string", + "required": true + }, + "assign_item_to_user": { + "value": "user_12345", + "type": "string", + "required": false + }, + "checklist_item_name": { + "value": "Update Project Proposal", + "type": "string", + "required": false + }, + "mark_as_resolved": { + "value": true, + "type": "boolean", + "required": false + }, + "parent_checklist_item_id": { + "value": "parent_67890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateClickupList", + "qualifiedName": "ClickupApi.UpdateClickupList", + "fullyQualifiedName": "ClickupApi.UpdateClickupList@1.0.0", + "description": "Update the details of a ClickUp list.\n\nUse this tool to rename a ClickUp list, update its description, set a due date or time, change the priority, assign someone, or modify the list color.", + "parameters": [ + { + "name": "list_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the ClickUp list to update. This is a required string field.", + "enum": null, + "inferrable": true + }, + { + "name": "list_name", + "type": "string", + "required": true, + "description": "The new name for the ClickUp list. This should be a string value.", + "enum": null, + "inferrable": true + }, + { + "name": "formatted_list_description", + "type": "string", + "required": false, + "description": "Formatted description of the list using Markdown syntax instead of plain text.", + "enum": null, + "inferrable": true + }, + { + "name": "include_due_date_time", + "type": "boolean", + "required": false, + "description": "Set to true to include a specific time with the due date.", + "enum": null, + "inferrable": true + }, + { + "name": "list_assignee_id", + "type": "string", + "required": false, + "description": "The ID of the user to assign to the list. Provide a valid user ID string.", + "enum": null, + "inferrable": true + }, + { + "name": "list_color", + "type": "string", + "required": false, + "description": "Specify the color of the list. This refers to the List color rather than task statuses.", + "enum": null, + "inferrable": true + }, + { + "name": "list_description_content", + "type": "string", + "required": false, + "description": "The plain text description to update for the ClickUp list. Use this instead of markdown for simple text updates.", + "enum": null, + "inferrable": true + }, + { + "name": "list_due_date", + "type": "integer", + "required": false, + "description": "Set the list's due date as a Unix timestamp in milliseconds, representing the time the list is due.", + "enum": null, + "inferrable": true + }, + { + "name": "list_priority", + "type": "integer", + "required": false, + "description": "Set the list's priority as an integer. Usually, 1 is high, 2 is medium, and 3 is low priority.", + "enum": null, + "inferrable": true + }, + { + "name": "remove_list_color", + "type": "boolean", + "required": false, + "description": "Set to `true` to remove the List color; default is `false`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.UpdateClickupList", + "parameters": { + "list_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "list_name": { + "value": "Updated Project List", + "type": "string", + "required": true + }, + "formatted_list_description": { + "value": "This is the **updates** list with important items.", + "type": "string", + "required": false + }, + "include_due_date_time": { + "value": true, + "type": "boolean", + "required": false + }, + "list_assignee_id": { + "value": "user_789", + "type": "string", + "required": false + }, + "list_color": { + "value": "#FF5733", + "type": "string", + "required": false + }, + "list_description_content": { + "value": "This contains important updates.", + "type": "string", + "required": false + }, + "list_due_date": { + "value": 1698220800000, + "type": "integer", + "required": false + }, + "list_priority": { + "value": 1, + "type": "integer", + "required": false + }, + "remove_list_color": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateClickupSpace", + "qualifiedName": "ClickupApi.UpdateClickupSpace", + "fullyQualifiedName": "ClickupApi.UpdateClickupSpace@1.0.0", + "description": "Update space attributes in ClickUp.\n\n Use this tool to rename a ClickUp space, change its color, and enable or disable ClickApps for it. Call this when you need to modify the settings of an existing space.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "space_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier for the ClickUp space to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateSpace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.UpdateClickupSpace", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "space_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Space Name\",\"color\":\"#FF5733\",\"clickApps\":{\"timeTracking\":true,\"goals\":false}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateClickupWebhookEvents", + "qualifiedName": "ClickupApi.UpdateClickupWebhookEvents", + "fullyQualifiedName": "ClickupApi.UpdateClickupWebhookEvents@1.0.0", + "description": "Update a ClickUp webhook to modify monitored events.\n\nUse this tool to update the events a ClickUp webhook monitors, allowing for changes to event tracking as needed.", + "parameters": [ + { + "name": "monitored_events", + "type": "string", + "required": true, + "description": "A comma-separated list of events for the webhook to monitor. Use valid event names as per ClickUp webhook documentation.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_endpoint_url", + "type": "string", + "required": true, + "description": "The URL where the webhook should send POST requests for the events. Must be a valid and accessible URL.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the webhook to be updated, formatted as a UUID.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_status", + "type": "string", + "required": true, + "description": "Specify the new status of the webhook. Use 'active' to enable or 'inactive' to disable it.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.UpdateClickupWebhookEvents", + "parameters": { + "monitored_events": { + "value": "taskCreated,taskUpdated,taskDeleted", + "type": "string", + "required": true + }, + "webhook_endpoint_url": { + "value": "https://example.com/webhook", + "type": "string", + "required": true + }, + "webhook_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "webhook_status": { + "value": "active", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGoalDetails", + "qualifiedName": "ClickupApi.UpdateGoalDetails", + "fullyQualifiedName": "ClickupApi.UpdateGoalDetails@1.0.0", + "description": "Update goal details such as name, due date, and owners.\n\nUse this tool to rename a goal, set its due date, update its description, manage owners, or change its color in ClickUp.", + "parameters": [ + { + "name": "goal_color", + "type": "string", + "required": true, + "description": "Set the color of the goal. Accepts a string representing the color, such as a hex code.", + "enum": null, + "inferrable": true + }, + { + "name": "goal_description", + "type": "string", + "required": true, + "description": "The new description for the goal. This should provide an overview or details of the goal's purpose.", + "enum": null, + "inferrable": true + }, + { + "name": "goal_due_date", + "type": "integer", + "required": true, + "description": "An integer representing the new due date for the goal, usually in Unix timestamp format.", + "enum": null, + "inferrable": true + }, + { + "name": "goal_id", + "type": "string", + "required": true, + "description": "The unique identifier for the goal to be updated. This is a UUID.", + "enum": null, + "inferrable": true + }, + { + "name": "goal_name", + "type": "string", + "required": true, + "description": "The new name for the goal. This will replace the current goal name.", + "enum": null, + "inferrable": true + }, + { + "name": "new_owners_to_add", + "type": "array", + "innerType": "integer", + "required": true, + "description": "List of user IDs to add as new owners for the goal.", + "enum": null, + "inferrable": true + }, + { + "name": "remove_owners_user_ids", + "type": "array", + "innerType": "integer", + "required": true, + "description": "Array of user IDs to be removed as owners of the goal.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateGoal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.UpdateGoalDetails", + "parameters": { + "goal_color": { + "value": "#FF5733", + "type": "string", + "required": true + }, + "goal_description": { + "value": "This goal aims to enhance user engagement by 20% in Q4.", + "type": "string", + "required": true + }, + "goal_due_date": { + "value": 1696099200, + "type": "integer", + "required": true + }, + "goal_id": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": true + }, + "goal_name": { + "value": "Increase User Engagement", + "type": "string", + "required": true + }, + "new_owners_to_add": { + "value": ["user_123", "user_456"], + "type": "array", + "required": true + }, + "remove_owners_user_ids": { + "value": ["user_789"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateKeyResultTarget", + "qualifiedName": "ClickupApi.UpdateKeyResultTarget", + "fullyQualifiedName": "ClickupApi.UpdateKeyResultTarget@1.0.0", + "description": "Update the target of a specific key result.\n\nUse this tool to update the target value of a specified key result. It should be called when there's a need to modify the target associated with a key result in ClickUp.", + "parameters": [ + { + "name": "current_steps_value", + "type": "integer", + "required": true, + "description": "The current number of steps completed for the key result target. Provide an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "key_result_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the key result to be updated, provided as a UUID.", + "enum": null, + "inferrable": true + }, + { + "name": "note_update_description", + "type": "string", + "required": true, + "description": "Text for the note associated with the key result. Use to add or update content related to the key result.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'EditKeyResult'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.UpdateKeyResultTarget", + "parameters": { + "current_steps_value": { + "value": 75, + "type": "integer", + "required": true + }, + "key_result_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "note_update_description": { + "value": "Updated target to reflect progress made in Q3.", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTaskComment", + "qualifiedName": "ClickupApi.UpdateTaskComment", + "fullyQualifiedName": "ClickupApi.UpdateTaskComment@1.0.0", + "description": "Update a task comment in ClickUp.\n\nUse this tool to replace a task comment's content, assign it, or mark it as resolved in ClickUp.", + "parameters": [ + { + "name": "assignee_user_id", + "type": "integer", + "required": true, + "description": "The ID of the user to assign the comment to. This should be a numeric user ID in ClickUp.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the comment to update. It must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "mark_comment_as_resolved", + "type": "boolean", + "required": true, + "description": "Set to true to mark the comment as resolved; false to leave it unresolved. Accepts a boolean value.", + "enum": null, + "inferrable": true + }, + { + "name": "new_comment_content", + "type": "string", + "required": true, + "description": "The new content for the task comment. This will replace the existing comment text.", + "enum": null, + "inferrable": true + }, + { + "name": "assign_to_group", + "type": "integer", + "required": false, + "description": "Assign the comment to a group by providing the group's ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateComment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.UpdateTaskComment", + "parameters": { + "assignee_user_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "comment_identifier": { + "value": 78910, + "type": "integer", + "required": true + }, + "mark_comment_as_resolved": { + "value": true, + "type": "boolean", + "required": true + }, + "new_comment_content": { + "value": "This is the updated comment content.", + "type": "string", + "required": true + }, + "assign_to_group": { + "value": 98765, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTaskCustomField", + "qualifiedName": "ClickupApi.UpdateTaskCustomField", + "fullyQualifiedName": "ClickupApi.UpdateTaskCustomField@1.0.0", + "description": "Update a custom field value for a specific task in ClickUp.\n\n Use this tool to add data to a custom field on a task. Requires the `task_id` of the task and the `field_id` of the custom field. Retrieve `field_id` using the 'Get Accessible Custom Fields' or 'Get Task' endpoints.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "task_id", + "type": "string", + "required": false, + "description": "The ID of the task to be updated with new custom field data. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_field_uuid", + "type": "string", + "required": false, + "description": "The UUID of the custom field to update for a specific task. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when referencing a task by its Custom Task ID (`custom_task_ids` must be true). Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_id_reference", + "type": "boolean", + "required": false, + "description": "Set to `true` to reference a task using its Custom Task ID. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SetCustomFieldValue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.UpdateTaskCustomField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "task_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "custom_field_uuid": { + "value": "def456", + "type": "string", + "required": false + }, + "workspace_id": { + "value": 789, + "type": "integer", + "required": false + }, + "use_custom_task_id_reference": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"value\": \"New Value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTaskInClickup", + "qualifiedName": "ClickupApi.UpdateTaskInClickup", + "fullyQualifiedName": "ClickupApi.UpdateTaskInClickup@1.0.0", + "description": "Update task details in ClickUp.\n\n Use this tool to update specific fields of a task in ClickUp by providing the task ID and desired changes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": false, + "description": "The ID of the task to be updated. Provide either the standard task ID or a custom task ID if 'custom_task_ids' is true. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_for_custom_task", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when referencing a task by its custom task ID (requires `custom_task_ids` set to true). Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.UpdateTaskInClickup", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "workspace_id_for_custom_task": { + "value": 56789, + "type": "integer", + "required": false + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"status\":\"in progress\",\"name\":\"Updated Task Name\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTaskTag", + "qualifiedName": "ClickupApi.UpdateTaskTag", + "fullyQualifiedName": "ClickupApi.UpdateTaskTag@1.0.0", + "description": "Update a task tag in a ClickUp space.\n\nUse this tool to update the details of a task tag within a specified ClickUp space. It is helpful for managing and organizing tasks by modifying existing tags.", + "parameters": [ + { + "name": "background_color_of_tag", + "type": "string", + "required": true, + "description": "The background color for the task tag. It should be a valid hex color code (e.g., #FFFFFF).", + "enum": null, + "inferrable": true + }, + { + "name": "current_tag_name", + "type": "string", + "required": true, + "description": "The current name of the tag to be updated in the ClickUp space.", + "enum": null, + "inferrable": true + }, + { + "name": "new_tag_name", + "type": "string", + "required": true, + "description": "The new name for the task tag to be updated in the ClickUp space. It must be a string representing the desired tag name after the update.", + "enum": null, + "inferrable": true + }, + { + "name": "space_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the ClickUp space where the tag will be updated. This is required to specify which space's tag needs modification.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_foreground_color", + "type": "string", + "required": true, + "description": "The foreground (text) color of the tag in a valid color format (e.g., HEX).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'EditSpaceTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.UpdateTaskTag", + "parameters": { + "background_color_of_tag": { + "value": "#FF5733", + "type": "string", + "required": true + }, + "current_tag_name": { + "value": "In Progress", + "type": "string", + "required": true + }, + "new_tag_name": { + "value": "Ongoing", + "type": "string", + "required": true + }, + "space_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "tag_foreground_color": { + "value": "#FFFFFF", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTimeEntry", + "qualifiedName": "ClickupApi.UpdateTimeEntry", + "fullyQualifiedName": "ClickupApi.UpdateTimeEntry@1.0.0", + "description": "Update the details of a time entry.\n\n This tool updates specific details of a time entry in ClickUp. Use it when you need to modify data such as the duration, description, or other attributes of an existing time entry.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": false, + "description": "The Workspace ID is required when referencing a task by its custom task ID. Provide it if `custom_task_ids` is set to `true`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "integer", + "required": false, + "description": "The ID of the workspace (team) where the time entry is located. This is an integer value. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "timer_id", + "type": "integer", + "required": false, + "description": "The unique identifier of the time entry to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference tasks by custom task IDs instead of standard IDs. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateatimeEntry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.UpdateTimeEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "team_identifier": { + "value": 67890, + "type": "integer", + "required": false + }, + "timer_id": { + "value": 54321, + "type": "integer", + "required": false + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"duration\": 3600, \"description\": \"Updated time entry description\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateUserGroup", + "qualifiedName": "ClickupApi.UpdateUserGroup", + "fullyQualifiedName": "ClickupApi.UpdateUserGroup@1.0.0", + "description": "Update and manage user groups within a ClickUp Workspace.\n\nUse this tool to update user groups in your ClickUp Workspace. Useful for managing team membership, permissions, or configurations. Note that adding a guest with view-only permissions will incur additional charges as they convert to paid guests.", + "parameters": [ + { + "name": "user_group_id", + "type": "string", + "required": true, + "description": "The unique identifier of the User Group within the Workspace. This ID is required to specify which group to update.", + "enum": null, + "inferrable": true + }, + { + "name": "add_member_ids", + "type": "array", + "innerType": "integer", + "required": false, + "description": "An array of user IDs to add to the User Group. Each ID should be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "handle_identifier", + "type": "string", + "required": false, + "description": "A unique identifier or handle for the User Group. This is used to reference the group within ClickUp.", + "enum": null, + "inferrable": true + }, + { + "name": "remove_members_ids", + "type": "array", + "innerType": "integer", + "required": false, + "description": "An array of integer IDs representing the users to be removed from the User Group.", + "enum": null, + "inferrable": true + }, + { + "name": "user_group_name", + "type": "string", + "required": false, + "description": "The new name for the User Group within the ClickUp Workspace. This should be a string representing the desired name.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.UpdateUserGroup", + "parameters": { + "user_group_id": { + "value": "12345", + "type": "string", + "required": true + }, + "add_member_ids": { + "value": [101, 102, 103], + "type": "array", + "required": false + }, + "handle_identifier": { + "value": "design-team", + "type": "string", + "required": false + }, + "remove_members_ids": { + "value": [104, 105], + "type": "array", + "required": false + }, + "user_group_name": { + "value": "Design Team 2023", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateUserWorkspaceDetails", + "qualifiedName": "ClickupApi.UpdateUserWorkspaceDetails", + "fullyQualifiedName": "ClickupApi.UpdateUserWorkspaceDetails@1.0.0", + "description": "Update a user's name and role in a ClickUp workspace.\n\nThis tool updates a user's name and role within a specific ClickUp workspace. It's only available to Workspaces on the Enterprise Plan. Use it to change user details in a team.", + "parameters": [ + { + "name": "assign_admin_role", + "type": "boolean", + "required": true, + "description": "Set to true to assign the user as an admin in the workspace, otherwise false.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_role_id", + "type": "integer", + "required": true, + "description": "An integer representing the custom role ID to assign to the user in the workspace. This is required for users with specific roles.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the user within the workspace. This value is required to specify which user's details need updating.", + "enum": null, + "inferrable": true + }, + { + "name": "user_name", + "type": "string", + "required": true, + "description": "The new full name of the user to be updated in the ClickUp workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the ClickUp workspace where the user's details will be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'EditUserOnWorkspace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.UpdateUserWorkspaceDetails", + "parameters": { + "assign_admin_role": { + "value": true, + "type": "boolean", + "required": true + }, + "custom_role_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "user_identifier": { + "value": 67890, + "type": "integer", + "required": true + }, + "user_name": { + "value": "John Doe", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 54321, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateViewSettings", + "qualifiedName": "ClickupApi.UpdateViewSettings", + "fullyQualifiedName": "ClickupApi.UpdateViewSettings@1.0.0", + "description": "Update the settings and configuration of a view.\n\n Rename, regroup, sort, filter, and modify columns and settings of a view when needing to adjust its configuration.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "view_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the view to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateView'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.UpdateViewSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "view_identifier": { + "value": "view_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated View Name\", \"group_by\": [\"status\"], \"sort_by\": \"due_date\", \"filters\": {\"due_date\": {\"after\": \"2023-01-01\"}}, \"columns\": [\"name\", \"status\", \"due_date\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewChatComments", + "qualifiedName": "ClickupApi.ViewChatComments", + "fullyQualifiedName": "ClickupApi.ViewChatComments@1.0.0", + "description": "Retrieve the most recent comments from a Chat view.\n\nThis tool fetches comments from a Chat view in ClickUp. It returns the 25 most recent comments if no parameters are provided. To access older comments, use `start` and `start_id` parameters.", + "parameters": [ + { + "name": "chat_view_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Chat view to retrieve comments from. It should be a string, typically '105'.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_start_date_unix_ms", + "type": "integer", + "required": false, + "description": "The start date of a Chat view comment in Unix time (milliseconds) to fetch older comments.", + "enum": null, + "inferrable": true + }, + { + "name": "start_comment_id", + "type": "string", + "required": false, + "description": "The comment ID to start retrieving older comments from in the Chat view. Use this to fetch comments beyond the most recent 25.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetChatViewComments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ViewChatComments", + "parameters": { + "chat_view_id": { + "value": "105", + "type": "string", + "required": true + }, + "comment_start_date_unix_ms": { + "value": 1672531199000, + "type": "integer", + "required": false + }, + "start_comment_id": { + "value": "abcd1234", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewFolderLists", + "qualifiedName": "ClickupApi.ViewFolderLists", + "fullyQualifiedName": "ClickupApi.ViewFolderLists@1.0.0", + "description": "Retrieve lists contained in a specified folder.\n\nCall this tool to access all the lists that are organized under a specific folder in ClickUp by providing the folder ID.", + "parameters": [ + { + "name": "folder_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the folder whose lists you want to retrieve. This must be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetFolder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ViewFolderLists", + "parameters": { + "folder_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewListCustomFields", + "qualifiedName": "ClickupApi.ViewListCustomFields", + "fullyQualifiedName": "ClickupApi.ViewListCustomFields@1.0.0", + "description": "Retrieve accessible custom fields for a specific list.\n\nUse this tool to view the custom fields you have access to in a specific list. This is useful for understanding which custom fields are available for use or modification in your lists.", + "parameters": [ + { + "name": "content_type", + "type": "string", + "required": true, + "description": "The MIME type of the request body, typically set to 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "list_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the list to retrieve accessible custom fields for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAccessibleCustomFields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ViewListCustomFields", + "parameters": { + "content_type": { + "value": "application/json", + "type": "string", + "required": true + }, + "list_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewListDetails", + "qualifiedName": "ClickupApi.ViewListDetails", + "fullyQualifiedName": "ClickupApi.ViewListDetails@1.0.0", + "description": "Retrieve details of a specific list in ClickUp.\n\nUse this tool to get detailed information about a specific list in ClickUp by providing the list ID. It helps in obtaining metadata and current status of the list.", + "parameters": [ + { + "name": "list_id", + "type": "integer", + "required": true, + "description": "The unique ID of the list to view details. Right-click the list in your ClickUp sidebar, select 'Copy link', and paste the URL's last string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ViewListDetails", + "parameters": { + "list_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewListsInFolder", + "qualifiedName": "ClickupApi.ViewListsInFolder", + "fullyQualifiedName": "ClickupApi.ViewListsInFolder@1.0.0", + "description": "Retrieve lists from a specific folder.\n\nUse this tool to view all the lists contained within a specified folder by providing the folder ID. It should be called when you need to access or manage lists within a folder within ClickUp.", + "parameters": [ + { + "name": "folder_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the folder whose lists are to be retrieved. This is required to specify which folder's lists to view.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_lists", + "type": "boolean", + "required": false, + "description": "Specify whether to include archived lists. Set to true to include and false to exclude.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetLists'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ViewListsInFolder", + "parameters": { + "folder_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "include_archived_lists": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewSharedHierarchy", + "qualifiedName": "ClickupApi.ViewSharedHierarchy", + "fullyQualifiedName": "ClickupApi.ViewSharedHierarchy@1.0.0", + "description": "View shared tasks, lists, and folders.\n\nUse this tool to view tasks, lists, and folders shared with the authenticated user in a specified team.", + "parameters": [ + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The Workspace ID to view shared tasks, lists, and folders.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SharedHierarchy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ViewSharedHierarchy", + "parameters": { + "workspace_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewTaskDetails", + "qualifiedName": "ClickupApi.ViewTaskDetails", + "fullyQualifiedName": "ClickupApi.ViewTaskDetails@1.0.0", + "description": "Retrieve detailed information about a specific task.\n\nUse this tool to get detailed information on a task you have access to in ClickUp, including any attachments associated with the task.", + "parameters": [ + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the task you want to retrieve details for in ClickUp.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_custom_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Include tasks with specific values in one or more custom fields using the specified JSON format. Custom Relationships are supported.", + "enum": null, + "inferrable": true + }, + { + "name": "include_markdown_description", + "type": "boolean", + "required": false, + "description": "Set to true to return task descriptions in Markdown format.", + "enum": null, + "inferrable": true + }, + { + "name": "include_subtasks", + "type": "boolean", + "required": false, + "description": "Include subtasks in the task details if set to true. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference a task by its custom task ID.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_for_custom_task", + "type": "integer", + "required": false, + "description": "Provide the Workspace ID when referencing a task by its custom task ID. Required if `custom_task_ids` is true.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ViewTaskDetails", + "parameters": { + "task_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "filter_custom_fields": { + "value": [ + { + "field_id": "abcde", + "value": "Completed" + } + ], + "type": "array", + "required": false + }, + "include_markdown_description": { + "value": true, + "type": "boolean", + "required": false + }, + "include_subtasks": { + "value": true, + "type": "boolean", + "required": false + }, + "use_custom_task_ids": { + "value": false, + "type": "boolean", + "required": false + }, + "workspace_id_for_custom_task": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewTaskOrPageInfo", + "qualifiedName": "ClickupApi.ViewTaskOrPageInfo", + "fullyQualifiedName": "ClickupApi.ViewTaskOrPageInfo@1.0.0", + "description": "Retrieve details of a specific task or page view.\n\nUse this tool to get detailed information about a specific task or page view in ClickUp using the view ID.", + "parameters": [ + { + "name": "view_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the specific task or page view in ClickUp to be retrieved. This is required to obtain the relevant information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetView'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ViewTaskOrPageInfo", + "parameters": { + "view_identifier": { + "value": "view_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewTaskTemplates", + "qualifiedName": "ClickupApi.ViewTaskTemplates", + "fullyQualifiedName": "ClickupApi.ViewTaskTemplates@1.0.0", + "description": "View available task templates in a workspace.\n\nRetrieve a list of task templates available for a specified workspace in ClickUp. Use this tool to explore task templates and plan tasks efficiently.", + "parameters": [ + { + "name": "content_type_header", + "type": "string", + "required": true, + "description": "Sets the 'Content-Type' for the API request, typically 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": true, + "description": "The page number of results to retrieve. Used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the workspace for which to retrieve task templates. This is used to specify the target workspace in ClickUp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTaskTemplates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ViewTaskTemplates", + "parameters": { + "content_type_header": { + "value": "application/json", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": true + }, + "workspace_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewThreadedComments", + "qualifiedName": "ClickupApi.ViewThreadedComments", + "fullyQualifiedName": "ClickupApi.ViewThreadedComments@1.0.0", + "description": "Retrieve threaded replies to a comment.\n\nThis tool allows for the retrieval of threaded comments in a ClickUp task, excluding the parent comment. Use this tool to view discussions or replies linked to a specific comment by providing the comment ID.", + "parameters": [ + { + "name": "thread_comment_id", + "type": "integer", + "required": true, + "description": "The ID of the comment for which threaded replies are to be retrieved. This ID should be an integer and corresponds to the comment in a ClickUp task whose replies you want to view.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetThreadedComments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ViewThreadedComments", + "parameters": { + "thread_comment_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewTimeEntry", + "qualifiedName": "ClickupApi.ViewTimeEntry", + "fullyQualifiedName": "ClickupApi.ViewTimeEntry@1.0.0", + "description": "Retrieve details of a specific time entry.\n\nUse this tool to view information about a single time entry, including its duration. If the duration is negative, it indicates an active timer for the user.", + "parameters": [ + { + "name": "content_type", + "type": "string", + "required": true, + "description": "Specifies the format of the content being sent or received, such as 'application/json'.", + "enum": null, + "inferrable": true + }, + { + "name": "time_entry_id", + "type": "string", + "required": true, + "description": "The ID of a specific time entry, which can be found using the Get Time Entries Within a Date Range endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the workspace (team) to which the time entry belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "include_approval_details", + "type": "boolean", + "required": false, + "description": "Include the details of the approval for the time entry when true.", + "enum": null, + "inferrable": true + }, + { + "name": "include_approval_history", + "type": "boolean", + "required": false, + "description": "Include the approval history of the time entry in the response. Set to true to include.", + "enum": null, + "inferrable": true + }, + { + "name": "include_location_names", + "type": "boolean", + "required": false, + "description": "Include names of the List, Folder, and Space in the response along with their respective IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "include_task_tags", + "type": "boolean", + "required": false, + "description": "Set to true to include task tags in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'Getsingulartimeentry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ViewTimeEntry", + "parameters": { + "content_type": { + "value": "application/json", + "type": "string", + "required": true + }, + "time_entry_id": { + "value": "12345", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 6789, + "type": "integer", + "required": true + }, + "include_approval_details": { + "value": true, + "type": "boolean", + "required": false + }, + "include_approval_history": { + "value": false, + "type": "boolean", + "required": false + }, + "include_location_names": { + "value": true, + "type": "boolean", + "required": false + }, + "include_task_tags": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewTimeEntryChanges", + "qualifiedName": "ClickupApi.ViewTimeEntryChanges", + "fullyQualifiedName": "ClickupApi.ViewTimeEntryChanges@1.0.0", + "description": "View a list of changes made to a time entry.\n\nUse this tool to access the history of modifications for a specific time entry within a team in ClickUp. It provides insights into various changes made on the entry, such as updates or edits.", + "parameters": [ + { + "name": "content_type_header", + "type": "string", + "required": true, + "description": "The media type for the request, typically 'application/json'. Required for HTTP headers.", + "enum": null, + "inferrable": true + }, + { + "name": "time_entry_id", + "type": "string", + "required": true, + "description": "The ID of a time entry. This ID can be obtained using the Get Time Entries Within a Date Range endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the workspace (team) where the time entry resides.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'Gettimeentryhistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ViewTimeEntryChanges", + "parameters": { + "content_type_header": { + "value": "application/json", + "type": "string", + "required": true + }, + "time_entry_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 6789, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewWorkspaceCustomFields", + "qualifiedName": "ClickupApi.ViewWorkspaceCustomFields", + "fullyQualifiedName": "ClickupApi.ViewWorkspaceCustomFields@1.0.0", + "description": "Retrieve Workspace-level Custom Fields in ClickUp.\n\nUse this tool to view custom fields accessible at the workspace level in ClickUp. It doesn't include fields from Space, Folder, or List levels.", + "parameters": [ + { + "name": "content_type_header", + "type": "string", + "required": true, + "description": "The MIME type of the content. Typically set to 'application/json' for JSON data.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The ID of the Workspace to retrieve custom fields for. This identifies which Workspace's fields you want to view.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeamAvailableFields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ViewWorkspaceCustomFields", + "parameters": { + "content_type_header": { + "value": "application/json", + "type": "string", + "required": true + }, + "workspace_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewWorkspaceGoals", + "qualifiedName": "ClickupApi.ViewWorkspaceGoals", + "fullyQualifiedName": "ClickupApi.ViewWorkspaceGoals@1.0.0", + "description": "View the Goals available in a Workspace.\n\nThis tool retrieves the goals available in a specific workspace on ClickUp. It should be used when you need to access or display information about the goals associated with a given workspace.", + "parameters": [ + { + "name": "workspace_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the workspace to view its goals.", + "enum": null, + "inferrable": true + }, + { + "name": "include_completed_goals", + "type": "boolean", + "required": false, + "description": "Indicate whether to include completed goals in the results. Set to true to include completed goals, or false to exclude them.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetGoals'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ClickupApi.ViewWorkspaceGoals", + "parameters": { + "workspace_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "include_completed_goals": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The ClickupApi MCP Server uses the Auth Provider with id `arcade-clickup` to connect to users' ClickupApi accounts. In order to use the MCP Server, you will need to configure the `arcade-clickup` auth provider.\nFor detailed information on configuring the ClickUp OAuth provider with Arcade, see the [ClickUp Auth Provider documentation](/references/auth-providers/clickup).", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:28:31.966Z", + "summary": "Arcade's ClickupApi toolkit enables seamless interaction with the ClickUp API, allowing developers to manage tasks, views, checklists, and more within their ClickUp workspaces. **Capabilities**:\n- Create, update, and delete tasks, lists, and views.\n- Add comments and checklists to tasks for effective collaboration.\n- Retrieve and manage time entries, goals, and custom fields.\n- Organize tasks by using tags and dependencies for better workflow management.\n\n**OAuth**:\n- Provider: ClickUp; Scopes: None. \n\n**Secrets**: None." +} diff --git a/data/toolkits/codesandbox.json b/data/toolkits/codesandbox.json new file mode 100644 index 000000000..85305eeaa --- /dev/null +++ b/data/toolkits/codesandbox.json @@ -0,0 +1,119 @@ +{ + "id": "CodeSandbox", + "label": "Codesandbox", + "version": "2.0.1", + "description": "Arcade.dev LLM tools for running code in a sandbox", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/codesandbox.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/codesandbox", + "isComingSoon": true, + "isHidden": true + }, + "auth": null, + "tools": [ + { + "name": "CreateStaticMatplotlibChart", + "qualifiedName": "CodeSandbox.CreateStaticMatplotlibChart", + "fullyQualifiedName": "CodeSandbox.CreateStaticMatplotlibChart@2.0.1", + "description": "Run the provided Python code to generate a static matplotlib chart.\nThe resulting chart is returned as a base64 encoded image.", + "parameters": [ + { + "name": "code", + "type": "string", + "required": true, + "description": "The Python code to run", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["E2B_API_KEY"], + "secretsInfo": [ + { + "name": "E2B_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "A dictionary with the following keys: base64_image, logs, error" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CodeSandbox.CreateStaticMatplotlibChart", + "parameters": { + "code": { + "value": "import matplotlib.pyplot as plt\nimport numpy as np\n\nx = np.linspace(0, 10, 100)\ny = np.sin(x)\n\nplt.plot(x, y)\nplt.title('Sine Wave')\nplt.xlabel('X-axis')\nplt.ylabel('Y-axis')\nplt.grid()\nplt.savefig('/tmp/sine_wave.png')\nplt.show()", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RunCode", + "qualifiedName": "CodeSandbox.RunCode", + "fullyQualifiedName": "CodeSandbox.RunCode@2.0.1", + "description": "Run code in a sandbox and return the output.", + "parameters": [ + { + "name": "code", + "type": "string", + "required": true, + "description": "The code to run", + "enum": null, + "inferrable": true + }, + { + "name": "language", + "type": "string", + "required": false, + "description": "The language of the code", + "enum": ["python", "js", "r", "java", "bash"], + "inferrable": true + } + ], + "auth": null, + "secrets": ["E2B_API_KEY"], + "secretsInfo": [ + { + "name": "E2B_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "The sandbox execution as a JSON string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CodeSandbox.RunCode", + "parameters": { + "code": { + "value": "print('Hello, World!')", + "type": "string", + "required": true + }, + "language": { + "value": "Python", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:27:39.607Z", + "summary": "Arcade.dev provides a powerful toolkit for running code in a sandbox environment, enabling developers to seamlessly execute various code snippets. \n\n**Capabilities**\n- Generate static matplotlib charts from Python code.\n- Execute different programming languages and return outputs efficiently.\n\n**OAuth**\n- No OAuth authentication required. \n- API key is used for access: E2B_API_KEY.\n\n**Secrets**\n- Requires an API key for authentication, specifically the E2B_API_KEY to securely access and utilize the tools provided by CodeSandbox." +} diff --git a/data/toolkits/complextools.json b/data/toolkits/complextools.json new file mode 100644 index 000000000..bba5a14c4 --- /dev/null +++ b/data/toolkits/complextools.json @@ -0,0 +1,275 @@ +{ + "id": "ComplexTools", + "label": "ComplexTools", + "version": "0.1.0", + "description": "", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/complextools.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/complextools", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "CreateOrder", + "qualifiedName": "ComplexTools.CreateOrder", + "fullyQualifiedName": "ComplexTools.CreateOrder@0.1.0", + "description": "Create a new order in the e-commerce system.\n\nNote: Understanding the request schema is necessary to properly create the stringified\nJSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't already have it.\n Do NOT call repeatedly if you already received the schema.\n- EXECUTE: Creates the order with request body JSON, priority, and notification_email.\n Priority must be: 'low', 'normal', 'high', or 'urgent'.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual order creation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "priority", + "type": "string", + "required": true, + "description": "Order priority level. Required when mode is 'execute', ignored when mode is 'get_request_schema'. Valid values: 'low', 'normal', 'high', 'urgent'", + "enum": null, + "inferrable": true + }, + { + "name": "notification_email", + "type": "string", + "required": true, + "description": "Email address for order notifications. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the order creation request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + }, + { + "name": "gift_message", + "type": "string", + "required": false, + "description": "Optional gift message to include with the order. Only used when mode is 'execute'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ComplexTools.CreateOrder", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "priority": { + "value": "normal", + "type": "string", + "required": true + }, + "notification_email": { + "value": "customer@example.com", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"item_id\": \"12345\", \"quantity\": 2, \"shipping_address\": \"123 Main St, Anytown, USA\"}", + "type": "string", + "required": false + }, + "gift_message": { + "value": "Happy Birthday!", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateUser", + "qualifiedName": "ComplexTools.CreateUser", + "fullyQualifiedName": "ComplexTools.CreateUser@0.1.0", + "description": "Create a new user in the system.\n\nNote: Understanding the request schema is necessary to properly create the stringified\nJSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't already have it.\n Do NOT call repeatedly if you already received the schema.\n- EXECUTE: Creates the user with the provided request body JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual user creation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the user creation request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ComplexTools.CreateUser", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"username\":\"johndoe\",\"email\":\"johndoe@example.com\",\"password\":\"P@ssw0rd123\",\"first_name\":\"John\",\"last_name\":\"Doe\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAvailableProducts", + "qualifiedName": "ComplexTools.GetAvailableProducts", + "fullyQualifiedName": "ComplexTools.GetAvailableProducts@0.1.0", + "description": "Retrieve a list of available products with their IDs and details.\n\nThis tool returns static product data that can be used when creating orders.\nEach product includes its UUID, name, category, and available customizations.\nUse the product IDs from this response when building order request bodies.", + "parameters": [], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ComplexTools.GetAvailableProducts", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerInfo", + "qualifiedName": "ComplexTools.GetCustomerInfo", + "fullyQualifiedName": "ComplexTools.GetCustomerInfo@0.1.0", + "description": "Retrieve customer information by email address.\n\nThis tool returns customer details including their UUID, profile information,\nand preferences. The customer ID can be used when creating orders or users.\nThis is a simplified tool that returns static data for demonstration purposes.", + "parameters": [ + { + "name": "customer_email", + "type": "string", + "required": true, + "description": "Email address of the customer to look up", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ComplexTools.GetCustomerInfo", + "parameters": { + "customer_email": { + "value": "example.customer@mail.com", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDiscountCodes", + "qualifiedName": "ComplexTools.GetDiscountCodes", + "fullyQualifiedName": "ComplexTools.GetDiscountCodes@0.1.0", + "description": "Retrieve a list of currently active discount codes.\n\nThis tool returns available discount codes that can be applied to orders,\nincluding their codes, descriptions, and discount percentages.\nUse these codes in the order creation request body.", + "parameters": [], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ComplexTools.GetDiscountCodes", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetShippingRates", + "qualifiedName": "ComplexTools.GetShippingRates", + "fullyQualifiedName": "ComplexTools.GetShippingRates@0.1.0", + "description": "Get available shipping rates and estimated delivery times for a specific country.\n\nThis tool returns shipping options (standard, express, overnight, international)\nwith their costs and estimated delivery times based on the destination country.\nUse this information to choose an appropriate shipping method when creating orders.", + "parameters": [ + { + "name": "country_code", + "type": "string", + "required": true, + "description": "ISO 3166-1 alpha-2 country code (e.g., 'US', 'GB', 'CA')", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ComplexTools.GetShippingRates", + "parameters": { + "country_code": { + "value": "CA", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:27:46.761Z", + "summary": "ComplexTools provides an extensive toolkit for managing e-commerce operations, enabling seamless order creation, user management, and access to vital product information.\n\n### Capabilities\n- Create orders and manage user accounts efficiently.\n- Retrieve product data, customer information, active discount codes, and shipping rates.\n- Simple integration with static data for demonstration and development purposes.\n- Understand request schemas for effective API usage without redundancy.\n\n### Secrets\n- No secrets or sensitive information are utilized in this toolkit." +} diff --git a/data/toolkits/confluence.json b/data/toolkits/confluence.json new file mode 100644 index 000000000..3f6baf5b8 --- /dev/null +++ b/data/toolkits/confluence.json @@ -0,0 +1,1013 @@ +{ + "id": "Confluence", + "label": "Confluence", + "version": "2.2.2", + "description": "Arcade.dev LLM tools for Confluence", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/confluence.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/confluence", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "atlassian", + "allScopes": [ + "read:attachment:confluence", + "read:content-details:confluence", + "read:hierarchical-content:confluence", + "read:page:confluence", + "read:space:confluence", + "search:confluence", + "write:page:confluence" + ] + }, + "tools": [ + { + "name": "CreatePage", + "qualifiedName": "Confluence.CreatePage", + "fullyQualifiedName": "Confluence.CreatePage@2.2.2", + "description": "Create a new page at the root of the given space.", + "parameters": [ + { + "name": "space_identifier", + "type": "string", + "required": true, + "description": "The ID or title of the space to create the page in", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": true, + "description": "The title of the page", + "enum": null, + "inferrable": true + }, + { + "name": "content", + "type": "string", + "required": true, + "description": "The content of the page. Only plain text is supported", + "enum": null, + "inferrable": true + }, + { + "name": "parent_id", + "type": "string", + "required": false, + "description": "The ID of the parent. If not provided, the page will be created at the root of the space.", + "enum": null, + "inferrable": true + }, + { + "name": "is_private", + "type": "boolean", + "required": false, + "description": "If true, then only the user who creates this page will be able to see it. Defaults to False", + "enum": null, + "inferrable": true + }, + { + "name": "is_draft", + "type": "boolean", + "required": false, + "description": "If true, then the page will be created as a draft. Defaults to False", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:page:confluence", "write:page:confluence"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The page" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Confluence.CreatePage", + "parameters": { + "space_identifier": { + "value": "DOCS", + "type": "string", + "required": true + }, + "title": { + "value": "Getting Started with Confluence", + "type": "string", + "required": true + }, + "content": { + "value": "This page provides an overview of how to get started with Confluence.", + "type": "string", + "required": true + }, + "parent_id": { + "value": "12345", + "type": "string", + "required": false + }, + "is_private": { + "value": false, + "type": "boolean", + "required": false + }, + "is_draft": { + "value": true, + "type": "boolean", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud-identifier-456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAttachmentsForPage", + "qualifiedName": "Confluence.GetAttachmentsForPage", + "fullyQualifiedName": "Confluence.GetAttachmentsForPage@2.2.2", + "description": "Get attachments for a page by its ID or title.\n\nIf a page title is provided, then the first page with an exact matching title will be returned.", + "parameters": [ + { + "name": "page_identifier", + "type": "string", + "required": true, + "description": "The ID or title of the page to get attachments for", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of attachments to return. Defaults to 25. Max is 250", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to use for the next page of results", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:attachment:confluence", "read:page:confluence"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The attachments" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Confluence.GetAttachmentsForPage", + "parameters": { + "page_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "xyz123", + "type": "string", + "required": false + }, + "atlassian_cloud_id": { + "value": "abc-de-123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAvailableAtlassianClouds", + "qualifiedName": "Confluence.GetAvailableAtlassianClouds", + "fullyQualifiedName": "Confluence.GetAvailableAtlassianClouds@2.2.2", + "description": "Get available Atlassian Clouds.", + "parameters": [], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:page:confluence"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Available Atlassian Clouds" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Confluence.GetAvailableAtlassianClouds", + "parameters": {}, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPage", + "qualifiedName": "Confluence.GetPage", + "fullyQualifiedName": "Confluence.GetPage@2.2.2", + "description": "Retrieve a SINGLE page's content by its ID or title.\n\nIf a title is provided, then the first page with an exact matching title will be returned.\n\nIMPORTANT: For retrieving MULTIPLE pages, use `get_pages_by_id` instead\nfor a massive performance and efficiency boost. If you call this function multiple times\ninstead of using `get_pages_by_id`, then the universe will explode.", + "parameters": [ + { + "name": "page_identifier", + "type": "string", + "required": true, + "description": "Can be a page's ID or title. Numerical titles are NOT supported.", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:page:confluence"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The page" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Confluence.GetPage", + "parameters": { + "page_identifier": { + "value": "Introduction to JSON", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPagesById", + "qualifiedName": "Confluence.GetPagesById", + "fullyQualifiedName": "Confluence.GetPagesById@2.2.2", + "description": "Get the content of MULTIPLE pages by their ID in a single efficient request.\n\nIMPORTANT: Always use this function when you need to retrieve content from more than one page,\nrather than making multiple separate calls to get_page, because this function is significantly\nmore efficient than calling get_page multiple times.", + "parameters": [ + { + "name": "page_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "The IDs of the pages to get. IDs are numeric. Titles of pages are NOT supported. Maximum of 250 page ids supported.", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:page:confluence"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The pages" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Confluence.GetPagesById", + "parameters": { + "page_ids": { + "value": [101, 202, 303, 404, 505], + "type": "array", + "required": true + }, + "atlassian_cloud_id": { + "value": "cloud-12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSpace", + "qualifiedName": "Confluence.GetSpace", + "fullyQualifiedName": "Confluence.GetSpace@2.2.2", + "description": "Get the details of a space by its ID or key.", + "parameters": [ + { + "name": "space_identifier", + "type": "string", + "required": true, + "description": "Can be a space's ID or key. Numerical keys are NOT supported", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:space:confluence", "read:page:confluence"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The space" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Confluence.GetSpace", + "parameters": { + "space_identifier": { + "value": "DOCS", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSpaceHierarchy", + "qualifiedName": "Confluence.GetSpaceHierarchy", + "fullyQualifiedName": "Confluence.GetSpaceHierarchy@2.2.2", + "description": "Retrieve the full hierarchical structure of a Confluence space as a tree structure\n\nOnly structural metadata is returned (not content).\nThe response is akin to the sidebar in the Confluence UI.\n\nIncludes all pages, folders, whiteboards, databases,\nsmart links, etc. organized by parent-child relationships.", + "parameters": [ + { + "name": "space_identifier", + "type": "string", + "required": true, + "description": "Can be a space's ID or key. Numerical keys are NOT supported", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": [ + "read:page:confluence", + "read:space:confluence", + "read:hierarchical-content:confluence" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The space hierarchy" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Confluence.GetSpaceHierarchy", + "parameters": { + "space_identifier": { + "value": "DOCS", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAttachments", + "qualifiedName": "Confluence.ListAttachments", + "fullyQualifiedName": "Confluence.ListAttachments@2.2.2", + "description": "List attachments in a workspace", + "parameters": [ + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "The order of the attachments to sort by. Defaults to created-date-newest-to-oldest", + "enum": [ + "created-date-oldest-to-newest", + "created-date-newest-to-oldest", + "modified-date-oldest-to-newest", + "modified-date-newest-to-oldest" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of attachments to return. Defaults to 25. Max is 250", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to use for the next page of results", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:attachment:confluence", "read:page:confluence"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The attachments" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Confluence.ListAttachments", + "parameters": { + "sort_order": { + "value": "created-date-oldest-to-newest", + "type": "string", + "required": false + }, + "limit": { + "value": 100, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud-xyz-456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPages", + "qualifiedName": "Confluence.ListPages", + "fullyQualifiedName": "Confluence.ListPages@2.2.2", + "description": "Get the content of multiple pages by their ID", + "parameters": [ + { + "name": "space_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Restrict the response to only include pages in these spaces. Only space IDs are supported. Titles of spaces are NOT supported. If not provided, then no restriction is applied. Maximum of 100 space ids supported.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "The order of the pages to sort by. Defaults to created-date-newest-to-oldest", + "enum": [ + "id-ascending", + "id-descending", + "title-ascending", + "title-descending", + "created-date-oldest-to-newest", + "created-date-newest-to-oldest", + "modified-date-oldest-to-newest", + "modified-date-newest-to-oldest" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of pages to return. Defaults to 25. Max is 250", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to use for the next page of results", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:page:confluence"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The pages" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Confluence.ListPages", + "parameters": { + "space_ids": { + "value": ["SPACE1", "SPACE2"], + "type": "array", + "required": false + }, + "sort_by": { + "value": "created-date-ascending", + "type": "string", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSpaces", + "qualifiedName": "Confluence.ListSpaces", + "fullyQualifiedName": "Confluence.ListSpaces@2.2.2", + "description": "List all spaces sorted by name in ascending order.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of spaces to return. Defaults to 25. Max is 250", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to use for the next page of results", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:space:confluence", "read:page:confluence"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The spaces" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Confluence.ListSpaces", + "parameters": { + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RenamePage", + "qualifiedName": "Confluence.RenamePage", + "fullyQualifiedName": "Confluence.RenamePage@2.2.2", + "description": "Rename a page by changing its title.", + "parameters": [ + { + "name": "page_identifier", + "type": "string", + "required": true, + "description": "The ID or title of the page to rename. Numerical titles are NOT supported.", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": true, + "description": "The title of the page", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:page:confluence", "write:page:confluence"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The page" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Confluence.RenamePage", + "parameters": { + "page_identifier": { + "value": "Project Overview", + "type": "string", + "required": true + }, + "title": { + "value": "Updated Project Overview", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "1234567890abcdef", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchContent", + "qualifiedName": "Confluence.SearchContent", + "fullyQualifiedName": "Confluence.SearchContent@2.2.2", + "description": "Search for content in Confluence.\n\nThe search is performed across all content in the authenticated user's Confluence workspace.\nAll search terms in Confluence are case insensitive.\n\nYou can use the parameters in different ways:\n- must_contain_all: For AND logic - content must contain ALL of these\n- can_contain_any: For OR logic - content can contain ANY of these\n- Combine them: must_contain_all=['banana'] AND can_contain_any=['database', 'guide']", + "parameters": [ + { + "name": "must_contain_all", + "type": "array", + "innerType": "string", + "required": false, + "description": "Words/phrases that content MUST contain (AND logic). Each item can be:\n- Single word: 'banana' - content must contain this word\n- Multi-word phrase: 'How to' - content must contain all these words (in any order)\n- All items in this list must be present for content to match\n- Example: ['banana', 'apple'] finds content containing BOTH 'banana' AND 'apple'", + "enum": null, + "inferrable": true + }, + { + "name": "can_contain_any", + "type": "array", + "innerType": "string", + "required": false, + "description": "Words/phrases where content can contain ANY of these (OR logic). Each item can be:\n- Single word: 'project' - content containing this word will match\n- Multi-word phrase: 'pen & paper' - content containing all these words will match\n- Content matching ANY item in this list will be included\n- Example: ['project', 'documentation'] finds content with 'project' OR 'documentation'", + "enum": null, + "inferrable": true + }, + { + "name": "enable_fuzzy", + "type": "boolean", + "required": false, + "description": "Enable fuzzy matching to find similar terms (e.g. 'roam' will find 'foam'). Defaults to True", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of results to return (1-100). Defaults to 25", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["search:confluence", "read:page:confluence"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Search results containing content items matching the criteria" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Confluence.SearchContent", + "parameters": { + "must_contain_all": { + "value": ["banana", "apple"], + "type": "array", + "required": false + }, + "can_contain_any": { + "value": ["project", "documentation"], + "type": "array", + "required": false + }, + "enable_fuzzy": { + "value": true, + "type": "boolean", + "required": false + }, + "limit": { + "value": 30, + "type": "integer", + "required": false + }, + "atlassian_cloud_id": { + "value": "123456789", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePageContent", + "qualifiedName": "Confluence.UpdatePageContent", + "fullyQualifiedName": "Confluence.UpdatePageContent@2.2.2", + "description": "Update a page's content.", + "parameters": [ + { + "name": "page_identifier", + "type": "string", + "required": true, + "description": "The ID or title of the page to update. Numerical titles are NOT supported.", + "enum": null, + "inferrable": true + }, + { + "name": "content", + "type": "string", + "required": true, + "description": "The content of the page. Only plain text is supported", + "enum": null, + "inferrable": true + }, + { + "name": "update_mode", + "type": "string", + "required": false, + "description": "The mode of update. Defaults to 'append'.", + "enum": ["prepend", "append", "replace"], + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:page:confluence", "write:page:confluence"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The page" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Confluence.UpdatePageContent", + "parameters": { + "page_identifier": { + "value": "Marketing Strategy", + "type": "string", + "required": true + }, + "content": { + "value": "This quarter, we will focus on increasing our digital presence.", + "type": "string", + "required": true + }, + "update_mode": { + "value": "append", + "type": "string", + "required": false + }, + "atlassian_cloud_id": { + "value": "1234567890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "Confluence.WhoAmI", + "fullyQualifiedName": "Confluence.WhoAmI@2.2.2", + "description": "CALL THIS TOOL FIRST to establish user profile context.\n\nGet information about the currently logged-in user and their available Confluence clouds.", + "parameters": [], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:content-details:confluence", "read:page:confluence"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Dictionary containing the current user's information and their available Atlassian Clouds." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Confluence.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Confluence MCP Server uses the [Atlassian auth provider](/references/auth-providers/atlassian) to connect to users' Atlassian accounts.\n---", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:27:53.741Z", + "summary": "Arcade.dev provides a comprehensive toolkit for interacting with Confluence, empowering developers to create, manage, and search content efficiently within their Confluence spaces.\n\n**Capabilities**\n- Seamlessly create, update, and rename pages.\n- Efficiently retrieve single or multiple pages and their content.\n- List and manage attachments and spaces with a hierarchical view.\n- Perform powerful search queries across all Confluence content.\n\n**OAuth** \n- Provider: Atlassian \n- Scopes: read:attachment:confluence, read:content-details:confluence, read:hierarchical-content:confluence, read:page:confluence, read:space:confluence, search:confluence, write:page:confluence" +} diff --git a/data/toolkits/cursoragentsapi.json b/data/toolkits/cursoragentsapi.json new file mode 100644 index 000000000..2f10ad93d --- /dev/null +++ b/data/toolkits/cursoragentsapi.json @@ -0,0 +1,281 @@ +{ + "id": "CursorAgentsApi", + "label": "Cursor Agents API", + "version": "0.1.1", + "description": "Tools that enable LLMs to interact directly with the Cursor Background Agents API.", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/cursor.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/cursor-agents-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "DeleteBackgroundAgent", + "qualifiedName": "CursorAgentsApi.DeleteBackgroundAgent", + "fullyQualifiedName": "CursorAgentsApi.DeleteBackgroundAgent@0.1.1", + "description": "Permanently delete a background agent.\n\nThis tool is used to permanently delete a background agent. This action cannot be undone, so it should be called with caution when you need to remove an agent completely.", + "parameters": [ + { + "name": "background_agent_id", + "type": "string", + "required": true, + "description": "Unique identifier for the background agent to be deleted permanently.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CURSOR_AGENTS_API_KEY"], + "secretsInfo": [ + { + "name": "CURSOR_AGENTS_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAgent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CursorAgentsApi.DeleteBackgroundAgent", + "parameters": { + "background_agent_id": { + "value": "agent_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAgentConversationHistory", + "qualifiedName": "CursorAgentsApi.GetAgentConversationHistory", + "fullyQualifiedName": "CursorAgentsApi.GetAgentConversationHistory@0.1.1", + "description": "Retrieve the conversation history of a background agent.\n\nThis tool retrieves the full conversation history, including user prompts and assistant responses, for a specified background agent. It is useful for reviewing past interactions and understanding agent behavior.", + "parameters": [ + { + "name": "background_agent_id", + "type": "string", + "required": true, + "description": "Unique identifier for the background agent to retrieve conversation history.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CURSOR_AGENTS_API_KEY"], + "secretsInfo": [ + { + "name": "CURSOR_AGENTS_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAgentConversation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CursorAgentsApi.GetAgentConversationHistory", + "parameters": { + "background_agent_id": { + "value": "agent12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAgentStatus", + "qualifiedName": "CursorAgentsApi.GetAgentStatus", + "fullyQualifiedName": "CursorAgentsApi.GetAgentStatus@0.1.1", + "description": "Retrieve the current status and results of a background agent.\n\nCall this tool to get information about the status and results of a specific background agent by providing its ID.", + "parameters": [ + { + "name": "background_agent_id", + "type": "string", + "required": true, + "description": "A unique identifier required to retrieve the status and results of the specified background agent.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CURSOR_AGENTS_API_KEY"], + "secretsInfo": [ + { + "name": "CURSOR_AGENTS_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAgent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CursorAgentsApi.GetAgentStatus", + "parameters": { + "background_agent_id": { + "value": "agent_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListBackgroundAgents", + "qualifiedName": "CursorAgentsApi.ListBackgroundAgents", + "fullyQualifiedName": "CursorAgentsApi.ListBackgroundAgents@0.1.1", + "description": "List all background agents for the user.\n\nUse this tool to retrieve a list of all background agents associated with the authenticated user.", + "parameters": [ + { + "name": "agent_limit", + "type": "integer", + "required": false, + "description": "Number of background agents to return for the request.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Pagination cursor from the previous response to navigate pages.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CURSOR_AGENTS_API_KEY"], + "secretsInfo": [ + { + "name": "CURSOR_AGENTS_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAgents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CursorAgentsApi.ListBackgroundAgents", + "parameters": { + "agent_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListGithubRepositories", + "qualifiedName": "CursorAgentsApi.ListGithubRepositories", + "fullyQualifiedName": "CursorAgentsApi.ListGithubRepositories@0.1.1", + "description": "Retrieve accessible GitHub repositories for a user.\n\nUse this tool to get a list of GitHub repositories that the authenticated user can access. It pulls data from the user's GitHub account and returns the repositories they have permission to view or modify.", + "parameters": [], + "auth": null, + "secrets": ["CURSOR_AGENTS_API_KEY"], + "secretsInfo": [ + { + "name": "CURSOR_AGENTS_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listRepositories'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CursorAgentsApi.ListGithubRepositories", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListRecommendedModels", + "qualifiedName": "CursorAgentsApi.ListRecommendedModels", + "fullyQualifiedName": "CursorAgentsApi.ListRecommendedModels@0.1.1", + "description": "Retrieve recommended models for background agents.\n\nUse this tool to fetch a list of models recommended for use in background agent applications.", + "parameters": [], + "auth": null, + "secrets": ["CURSOR_AGENTS_API_KEY"], + "secretsInfo": [ + { + "name": "CURSOR_AGENTS_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listModels'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CursorAgentsApi.ListRecommendedModels", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveApiUserInfo", + "qualifiedName": "CursorAgentsApi.RetrieveApiUserInfo", + "fullyQualifiedName": "CursorAgentsApi.RetrieveApiUserInfo@0.1.1", + "description": "Retrieve information about the API key used for authentication.\n\nThis tool calls the endpoint to get details regarding the API key currently in use, including any relevant user information. It should be called when there is a need to verify or display details about the authentication being used.", + "parameters": [], + "auth": null, + "secrets": ["CURSOR_AGENTS_API_KEY"], + "secretsInfo": [ + { + "name": "CURSOR_AGENTS_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getMe'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CursorAgentsApi.RetrieveApiUserInfo", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:27:54.003Z", + "summary": "The CursorAgentsApi toolkit enables developers to interact with the Cursor Background Agents API, providing a structured way to manage and utilize background agents effectively.\n\n**Capabilities:**\n- Manage background agents with operations to create, delete, and retrieve their statuses.\n- Access conversation history for insights into agent interactions.\n- List all agents and their recommended models for tailored implementations.\n- Integrate with GitHub to access user repositories seamlessly.\n\n**OAuth:**\n- Authentication is done via an API key, specifically using the `CURSOR_AGENTS_API_KEY`.\n\n**Secrets:**\n- The toolkit uses secrets in the form of an API key, which grants access to features and capabilities of the CursorAgentsApi." +} diff --git a/data/toolkits/customerioapi.json b/data/toolkits/customerioapi.json new file mode 100644 index 000000000..396a8bff3 --- /dev/null +++ b/data/toolkits/customerioapi.json @@ -0,0 +1,7239 @@ +{ + "id": "CustomerioApi", + "label": "Customer.io API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the Customer.io App API", + "metadata": { + "category": "customer-support", + "iconUrl": "https://design-system.arcade.dev/icons/customerio.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/customer-support/customerio-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "CheckEmailSuppression", + "qualifiedName": "CustomerioApi.CheckEmailSuppression", + "fullyQualifiedName": "CustomerioApi.CheckEmailSuppression@1.0.0", + "description": "Retrieve suppression status and reason for an email.\n\nUse this tool to find out if an email address has been suppressed by the email service provider (ESP) and the reasons for its suppression.", + "parameters": [ + { + "name": "email_to_check_suppression", + "type": "string", + "required": true, + "description": "The email address to check for suppression status and reasons.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSuppression'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.CheckEmailSuppression", + "parameters": { + "email_to_check_suppression": { + "value": "example@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateManualSegment", + "qualifiedName": "CustomerioApi.CreateManualSegment", + "fullyQualifiedName": "CustomerioApi.CreateManualSegment@1.0.0", + "description": "Create a manual segment with name and description.\n\nUse this tool to create an empty manual segment by specifying its name and description. Ideal for organizing contacts or data into new categories.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createManSegment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.CreateManualSegment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"New Marketing Segment\", \"description\": \"A segment for targeted marketing campaigns.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewCollection", + "qualifiedName": "CustomerioApi.CreateNewCollection", + "fullyQualifiedName": "CustomerioApi.CreateNewCollection@1.0.0", + "description": "Create a new data collection in Customerio.\n\nUse this tool to create a new collection in Customerio by either providing direct data or a URL for downloading CSV or JSON data. Ensure the collection does not exceed 10 MB, and individual rows are under 10 KB.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addCollection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.CreateNewCollection", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"collection_name\": \"New Collection\", \"data\": [{\"field1\": \"value1\", \"field2\": \"value2\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWebhook", + "qualifiedName": "CustomerioApi.CreateWebhook", + "fullyQualifiedName": "CustomerioApi.CreateWebhook@1.0.0", + "description": "Create a new webhook configuration for reporting.\n\nUse this tool to set up a new webhook configuration within the Customerio service for reporting purposes.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.CreateWebhook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"url\": \"https://example.com/webhook\", \"events\": [\"user.created\", \"user.updated\"], \"enabled\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCollection", + "qualifiedName": "CustomerioApi.DeleteCollection", + "fullyQualifiedName": "CustomerioApi.DeleteCollection@1.0.0", + "description": "Delete a collection and its contents.\n\nUse this tool to remove a collection and all its contents from the system. Ensure the collection is not referenced in active campaign messages or broadcasts to avoid disrupting communication.", + "parameters": [ + { + "name": "collection_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the collection to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteCollection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.DeleteCollection", + "parameters": { + "collection_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteManualSegment", + "qualifiedName": "CustomerioApi.DeleteManualSegment", + "fullyQualifiedName": "CustomerioApi.DeleteManualSegment@1.0.0", + "description": "Delete a specified manual segment by ID.\n\nUse this tool to delete a specific manual segment in Customerio by providing the segment ID. It's useful for removing outdated or unwanted segments.", + "parameters": [ + { + "name": "segment_identifier", + "type": "integer", + "required": true, + "description": "The ID of the segment to delete, found under 'Usage' in the Segment page on the dashboard or via the App API.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteManSegment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.DeleteManualSegment", + "parameters": { + "segment_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteNewsletter", + "qualifiedName": "CustomerioApi.DeleteNewsletter", + "fullyQualifiedName": "CustomerioApi.DeleteNewsletter@1.0.0", + "description": "Delete an individual newsletter and its associated data.\n\nUse this tool to delete a specific newsletter, including its content, settings, and metrics. It will be removed from segments, and its templates will be erased from the Message Library. Additionally, any undelivered in-app messages will be canceled.", + "parameters": [ + { + "name": "newsletter_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the newsletter you want to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deletetNewsletters'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.DeleteNewsletter", + "parameters": { + "newsletter_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteReportingWebhook", + "qualifiedName": "CustomerioApi.DeleteReportingWebhook", + "fullyQualifiedName": "CustomerioApi.DeleteReportingWebhook@1.0.0", + "description": "Delete a reporting webhook's configuration.\n\nUse this tool to remove the configuration of a specific reporting webhook by its ID. Call this when a webhook is no longer needed and should be deleted from the setup.", + "parameters": [ + { + "name": "webhook_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the reporting webhook to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.DeleteReportingWebhook", + "parameters": { + "webhook_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DownloadExportSignedLink", + "qualifiedName": "CustomerioApi.DownloadExportSignedLink", + "fullyQualifiedName": "CustomerioApi.DownloadExportSignedLink@1.0.0", + "description": "Retrieve a temporary signed link to download an export.\n\nUse this tool to get a signed link for downloading an export from Customerio. The link is only valid for 15 minutes, so it should be used promptly.", + "parameters": [ + { + "name": "export_identifier", + "type": "integer", + "required": true, + "description": "The unique ID of the export you want to access and download. Must be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'downloadExport'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.DownloadExportSignedLink", + "parameters": { + "export_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ExportCustomerData", + "qualifiedName": "CustomerioApi.ExportCustomerData", + "fullyQualifiedName": "CustomerioApi.ExportCustomerData@1.0.0", + "description": "Export customer data based on specified filters.\n\nUse this tool to export customer data by providing filters and attributes. It returns metadata useful for initiating the data download process.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'exportPeopleData'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.ExportCustomerData", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filters\":{\"date_range\":{\"start\":\"2023-01-01\",\"end\":\"2023-12-31\"}},\"attributes\":[\"email\",\"first_name\",\"last_name\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ExportDeliveryData", + "qualifiedName": "CustomerioApi.ExportDeliveryData", + "fullyQualifiedName": "CustomerioApi.ExportDeliveryData@1.0.0", + "description": "Initiates export of delivery data for newsletters and campaigns.\n\nThis tool is used to start an export of delivery data for newsletters, campaigns, or actions based on given filters. Data spans a specified time range, with default and maximum limits. Use it to obtain delivery insights over a specified timeframe.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'exportDeliveriesData'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.ExportDeliveryData", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"time_range\":{\"start\":\"2023-01-01\",\"end\":\"2023-12-31\"},\"filters\":{\"campaign_id\":\"12345\",\"status\":\"delivered\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchMessageDeliveries", + "qualifiedName": "CustomerioApi.FetchMessageDeliveries", + "fullyQualifiedName": "CustomerioApi.FetchMessageDeliveries@1.0.0", + "description": "Retrieve a list of message deliveries and their metrics.\n\nThis tool retrieves a list of message deliveries, including metrics, within a specified time range in your workspace. Use it to analyze message performance over the most recent six months or a defined period. If no specific time range is provided, it defaults to the last six months.", + "parameters": [ + { + "name": "beginning_timestamp", + "type": "integer", + "required": false, + "description": "The beginning timestamp in Unix format for your query. Returns deliveries created after this time.", + "enum": null, + "inferrable": true + }, + { + "name": "desired_metrics", + "type": "string", + "required": false, + "description": "Specifies the metrics to retrieve. Options include: attempted, sent, delivered, opened, clicked, converted, bounced, spammed, unsubscribed, dropped, failed, undeliverable.", + "enum": null, + "inferrable": true + }, + { + "name": "ending_timestamp_for_query", + "type": "integer", + "required": false, + "description": "The ending timestamp for your query. If not specified, it defaults to the current time.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_action_id", + "type": "integer", + "required": false, + "description": "Specify the action ID to filter the message deliveries. This narrows the results to messages associated with the given action.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_campaign_id", + "type": "integer", + "required": false, + "description": "The ID of the campaign to filter message deliveries. Use this to retrieve data for a specific campaign only.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_newsletter_id", + "type": "integer", + "required": false, + "description": "An integer representing the ID of the newsletter to filter deliveries for.", + "enum": null, + "inferrable": true + }, + { + "name": "item_type_for_metrics", + "type": "string", + "required": false, + "description": "Specify the item type to return metrics for, such as 'email', 'webhook', 'twilio', 'slack', 'push', or 'in_app'. Leave empty for all types.", + "enum": null, + "inferrable": true + }, + { + "name": "page_token", + "type": "string", + "required": false, + "description": "The token to fetch the specified page of delivery results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of results to retrieve per page.", + "enum": null, + "inferrable": true + }, + { + "name": "return_drafts_only", + "type": "boolean", + "required": false, + "description": "Set to true to return drafts instead of active or sent messages.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listMessages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.FetchMessageDeliveries", + "parameters": { + "beginning_timestamp": { + "value": 1672531200, + "type": "integer", + "required": false + }, + "desired_metrics": { + "value": "sent, opened, clicked", + "type": "string", + "required": false + }, + "ending_timestamp_for_query": { + "value": 1680307200, + "type": "integer", + "required": false + }, + "filter_by_action_id": { + "value": 123456, + "type": "integer", + "required": false + }, + "filter_by_campaign_id": { + "value": 78910, + "type": "integer", + "required": false + }, + "filter_by_newsletter_id": { + "value": 112233, + "type": "integer", + "required": false + }, + "item_type_for_metrics": { + "value": "email", + "type": "string", + "required": false + }, + "page_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "return_drafts_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FilterPeopleInWorkspace", + "qualifiedName": "CustomerioApi.FilterPeopleInWorkspace", + "fullyQualifiedName": "CustomerioApi.FilterPeopleInWorkspace@1.0.0", + "description": "Filter and search for people in your workspace.\n\n Use this tool to filter people by segment ID and attribute values using complex filters such as `and`, `or`, and `not`. The tool returns arrays of `identifiers` with detailed information and `ids` with only ID values. Suitable for retrieving up to 1000 people per request.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "page_start_token", + "type": "string", + "required": false, + "description": "The token for the page of results to return. Use the 'next' property from responses as this value to access subsequent pages. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of people to retrieve per page. Limited to 1000. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPeopleFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.FilterPeopleInWorkspace", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "page_start_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page_limit": { + "value": 100, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"segment_id\":\"seg_001\",\"filters\":{\"attribute\":\"value\",\"operator\":\"equals\",\"type\":\"and\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FindSegmentDependencies", + "qualifiedName": "CustomerioApi.FindSegmentDependencies", + "fullyQualifiedName": "CustomerioApi.FindSegmentDependencies@1.0.0", + "description": "Identify campaigns and newsletters using a segment.\n\nThis tool identifies which campaigns and newsletters are utilizing a specified segment in Customerio. It should be called when you need to determine the dependencies of a segment within your marketing strategies.", + "parameters": [ + { + "name": "segment_identifier", + "type": "integer", + "required": true, + "description": "The ID for a segment, found on its dashboard page or via the App API.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSegmentDependencies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.FindSegmentDependencies", + "parameters": { + "segment_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FindSuppressedEmailAddresses", + "qualifiedName": "CustomerioApi.FindSuppressedEmailAddresses", + "fullyQualifiedName": "CustomerioApi.FindSuppressedEmailAddresses@1.0.0", + "description": "Retrieve email addresses suppressed for specific reasons.\n\nUse this tool to identify and retrieve email addresses suppressed by the Email Service Provider for reasons such as bounces, blocks, spam reports, or invalid addresses. Supports pagination for large datasets.", + "parameters": [ + { + "name": "suppression_reason", + "type": "string", + "required": true, + "description": "Specify the reason for email address suppression, such as bounces or spam reports.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of suppression records to retrieve per page, up to 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "skip_records", + "type": "integer", + "required": false, + "description": "The number of records to skip before retrieving results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSuppressionByType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.FindSuppressedEmailAddresses", + "parameters": { + "suppression_reason": { + "value": "bounces", + "type": "string", + "required": true + }, + "max_results_per_page": { + "value": 100, + "type": "integer", + "required": false + }, + "skip_records": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FindWorkspaceObjects", + "qualifiedName": "CustomerioApi.FindWorkspaceObjects", + "fullyQualifiedName": "CustomerioApi.FindWorkspaceObjects@1.0.0", + "description": "Find objects in your workspace using filter conditions.\n\n This tool is used to find and return a list of object IDs based on specified filter conditions in your Customerio workspace. It allows paging through results and setting limits on the number of objects returned. Useful for locating, creating, or modifying objects based on specific criteria.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "page_start_token", + "type": "string", + "required": false, + "description": "Token for the page of results to return. Use the `next` property from a prior response to continue paging. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to retrieve per page. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getObjectsFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.FindWorkspaceObjects", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "page_start_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "maximum_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"filter\": {\"status\": \"active\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAllowlistIps", + "qualifiedName": "CustomerioApi.GetAllowlistIps", + "fullyQualifiedName": "CustomerioApi.GetAllowlistIps@1.0.0", + "description": "Retrieve IP addresses to allowlist for secure access.\n\nUse this tool to obtain a list of IP addresses that should be allowlisted when configuring firewall settings or using a custom SMTP provider's IP management to deny unknown IPs. This is applicable to all message types and webhooks, except push notifications.", + "parameters": [], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCioAllowlist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetAllowlistIps", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAllSegments", + "qualifiedName": "CustomerioApi.GetAllSegments", + "fullyQualifiedName": "CustomerioApi.GetAllSegments@1.0.0", + "description": "Retrieve a list of all segments for your account.\n\nCall this tool to get a list of all segments associated with your Customerio account. Use it to fetch and review segment data.", + "parameters": [], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listSegments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetAllSegments", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetArchivedMessage", + "qualifiedName": "CustomerioApi.GetArchivedMessage", + "fullyQualifiedName": "CustomerioApi.GetArchivedMessage@1.0.0", + "description": "Retrieve an archived copy of a message delivery.\n\nFetches the archived version of a delivery from Customerio, providing details like the message body, recipient, and associated metrics. Limited to 100 requests per day.", + "parameters": [ + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The unique identifier for the message to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getArchivedMessage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetArchivedMessage", + "parameters": { + "message_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBroadcastActionInfo", + "qualifiedName": "CustomerioApi.GetBroadcastActionInfo", + "fullyQualifiedName": "CustomerioApi.GetBroadcastActionInfo@1.0.0", + "description": "Retrieve details of a specific broadcast action.\n\nCall this tool to obtain detailed information about a specific action within a broadcast by providing the broadcast and action IDs.", + "parameters": [ + { + "name": "action_id", + "type": "integer", + "required": true, + "description": "The ID of the action to look up or act on within a broadcast.", + "enum": null, + "inferrable": true + }, + { + "name": "broadcast_identifier", + "type": "integer", + "required": true, + "description": "The numeric identifier of the broadcast to retrieve action details from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBroadcastAction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetBroadcastActionInfo", + "parameters": { + "action_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "broadcast_identifier": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBroadcastActionLinkMetrics", + "qualifiedName": "CustomerioApi.GetBroadcastActionLinkMetrics", + "fullyQualifiedName": "CustomerioApi.GetBroadcastActionLinkMetrics@1.0.0", + "description": "Retrieve link click metrics for a specific broadcast action.\n\nThis tool retrieves link click metrics for an individual broadcast action. It provides data for a maximum of 45 days, unless specified otherwise. Use appropriate period and step parameters for custom data ranges.", + "parameters": [ + { + "name": "broadcast_action_id", + "type": "integer", + "required": true, + "description": "The ID of the action you want to look up or act on.", + "enum": null, + "inferrable": true + }, + { + "name": "broadcast_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the broadcast to retrieve metrics for. It should be an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "item_type", + "type": "string", + "required": false, + "description": "Specifies the type of item to return metrics for; options include email, webhook, twilio, slack, push, and in_app. Leave empty for all types.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_periods_to_return", + "type": "integer", + "required": false, + "description": "The number of time periods to return metrics for. Defaults to the maximum, or 12 if in months. Max: 24 hours, 45 days, 12 weeks, 121 months.", + "enum": null, + "inferrable": true + }, + { + "name": "time_period_unit", + "type": "string", + "required": false, + "description": "The unit of time for the report. Acceptable values are 'hours', 'days', 'weeks', or 'months'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'broadcastActionLinks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetBroadcastActionLinkMetrics", + "parameters": { + "broadcast_action_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "broadcast_identifier": { + "value": 67890, + "type": "integer", + "required": true + }, + "item_type": { + "value": "email", + "type": "string", + "required": false + }, + "number_of_periods_to_return": { + "value": 30, + "type": "integer", + "required": false + }, + "time_period_unit": { + "value": "days", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBroadcastActionMetrics", + "qualifiedName": "CustomerioApi.GetBroadcastActionMetrics", + "fullyQualifiedName": "CustomerioApi.GetBroadcastActionMetrics@1.0.0", + "description": "Retrieve metrics for a broadcast action over time steps.\n\nGet metrics for an individual broadcast action, both in total and divided by time steps like days or weeks, over a specified period.", + "parameters": [ + { + "name": "broadcast_identifier", + "type": "integer", + "required": true, + "description": "The ID of the broadcast you wish to retrieve metrics for.", + "enum": null, + "inferrable": true + }, + { + "name": "lookup_action_id", + "type": "integer", + "required": true, + "description": "The ID of the action you want to look up or act on. Provide an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "metrics_item_type", + "type": "string", + "required": false, + "description": "Specifies the type of item (e.g., email, webhook) to return metrics for. If not provided, metrics for all types are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "period_steps", + "type": "integer", + "required": false, + "description": "Specify the number of time periods to return metrics for. Defaults to the maximum allowed (24 hours, 45 days, 12 weeks, or 121 months) or `12` if the period is in months.", + "enum": null, + "inferrable": true + }, + { + "name": "time_unit_for_report", + "type": "string", + "required": false, + "description": "The unit of time for the report, such as hours, days, weeks, or months.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'broadcastActionMetrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetBroadcastActionMetrics", + "parameters": { + "broadcast_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "lookup_action_id": { + "value": 67890, + "type": "integer", + "required": true + }, + "metrics_item_type": { + "value": "email", + "type": "string", + "required": false + }, + "period_steps": { + "value": 12, + "type": "integer", + "required": false + }, + "time_unit_for_report": { + "value": "days", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBroadcastActions", + "qualifiedName": "CustomerioApi.GetBroadcastActions", + "fullyQualifiedName": "CustomerioApi.GetBroadcastActions@1.0.0", + "description": "Retrieve actions from a specific broadcast.\n\nUse this tool to get detailed actions that occur as part of a specific broadcast by providing the broadcast ID.", + "parameters": [ + { + "name": "broadcast_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the broadcast to retrieve its actions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'broadcastActions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetBroadcastActions", + "parameters": { + "broadcast_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBroadcastErrors", + "qualifiedName": "CustomerioApi.GetBroadcastErrors", + "fullyQualifiedName": "CustomerioApi.GetBroadcastErrors@1.0.0", + "description": "Retrieve details of broadcast validation errors.\n\nThis tool helps identify and understand validation errors in broadcast campaigns, focusing on issues within the broadcast audience and associated elements. Use it to diagnose and resolve broadcast errors.", + "parameters": [ + { + "name": "broadcast_id", + "type": "integer", + "required": true, + "description": "The ID of the broadcast to retrieve error information for. Use this to specify which broadcast's errors you want to investigate.", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_trigger_id", + "type": "integer", + "required": true, + "description": "The ID of the campaign trigger to return information for. Use this to focus on specific trigger details.", + "enum": null, + "inferrable": true + }, + { + "name": "page_start_token", + "type": "string", + "required": false, + "description": "Token to specify which page of results to return. Use the `next` value from responses to navigate pages.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to retrieve per page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'broadcastErrors'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetBroadcastErrors", + "parameters": { + "broadcast_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "campaign_trigger_id": { + "value": 67890, + "type": "integer", + "required": true + }, + "page_start_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBroadcastLinkMetrics", + "qualifiedName": "CustomerioApi.GetBroadcastLinkMetrics", + "fullyQualifiedName": "CustomerioApi.GetBroadcastLinkMetrics@1.0.0", + "description": "Retrieve metrics for link clicks in a broadcast.\n\nThis tool returns metrics for link clicks within a specified broadcast, providing both total counts and series data over defined periods such as days or weeks. Useful for analyzing broadcast performance.", + "parameters": [ + { + "name": "broadcast_identifier", + "type": "integer", + "required": true, + "description": "The numeric identifier of the broadcast for which link metrics are needed.", + "enum": null, + "inferrable": true + }, + { + "name": "period_steps", + "type": "integer", + "required": false, + "description": "Specify the number of time periods to return. Defaults to the maximum or 12 if the period is 'months'. Max: 24 hours, 45 days, 12 weeks, or 121 months.", + "enum": null, + "inferrable": true + }, + { + "name": "report_period", + "type": "string", + "required": false, + "description": "Defines the unit of time for the report. Options are 'hours', 'days', 'weeks', or 'months'.", + "enum": null, + "inferrable": true + }, + { + "name": "return_unique_customer_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only unique customer results, ensuring each customer is counted once regardless of clicks.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'broadcastLinks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetBroadcastLinkMetrics", + "parameters": { + "broadcast_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "period_steps": { + "value": 14, + "type": "integer", + "required": false + }, + "report_period": { + "value": "days", + "type": "string", + "required": false + }, + "return_unique_customer_results": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBroadcastMessageInfo", + "qualifiedName": "CustomerioApi.GetBroadcastMessageInfo", + "fullyQualifiedName": "CustomerioApi.GetBroadcastMessageInfo@1.0.0", + "description": "Retrieve details about broadcast message deliveries.\n\nThis tool returns information about message deliveries from an API-triggered broadcast. Use it to get insights on individual deliveries within a specific time range by providing `start_ts` and `end_ts`. If not specified, data for one month post-trigger is returned. The information reflects when the deliveries were created, with a possible delay to actual send time.", + "parameters": [ + { + "name": "broadcast_identifier", + "type": "integer", + "required": true, + "description": "The ID used to identify the specific broadcast to retrieve information about.", + "enum": null, + "inferrable": true + }, + { + "name": "beginning_timestamp", + "type": "integer", + "required": false, + "description": "The start timestamp for the query, defining the beginning of the time range for message retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "broadcast_state", + "type": "string", + "required": false, + "description": "Specifies the state of a broadcast message. Options are: 'failed', 'sent', 'drafted', or 'attempted'.", + "enum": null, + "inferrable": true + }, + { + "name": "ending_timestamp", + "type": "integer", + "required": false, + "description": "The endpoint of the time range for the query. It must be an integer representing a timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "item_type", + "type": "string", + "required": false, + "description": "Specify the type of item to return metrics for (e.g., email, webhook). Leave empty for all types.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of message deliveries to retrieve per page. Adjust to control the pagination size for results.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_type", + "type": "string", + "required": false, + "description": "Select the metric(s) to be returned. Options include: 'attempted', 'sent', 'delivered', 'opened', 'clicked', 'converted', 'bounced', 'spammed', 'unsubscribed', 'dropped', 'failed', 'undeliverable'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_token", + "type": "string", + "required": false, + "description": "Token for the page of results to return. Use the 'next' property from responses for this value to get the next page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'broadcastMessages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetBroadcastMessageInfo", + "parameters": { + "broadcast_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "beginning_timestamp": { + "value": 1690000000, + "type": "integer", + "required": false + }, + "broadcast_state": { + "value": "sent", + "type": "string", + "required": false + }, + "ending_timestamp": { + "value": 1690500000, + "type": "integer", + "required": false + }, + "item_type": { + "value": "email", + "type": "string", + "required": false + }, + "maximum_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "metric_type": { + "value": "opened", + "type": "string", + "required": false + }, + "pagination_start_token": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBroadcastMetadata", + "qualifiedName": "CustomerioApi.GetBroadcastMetadata", + "fullyQualifiedName": "CustomerioApi.GetBroadcastMetadata@1.0.0", + "description": "Retrieve metadata for a specific broadcast.\n\nUse this tool to get detailed metadata for an individual broadcast based on its unique identifier. Useful for tracking and analyzing individual broadcast details.", + "parameters": [ + { + "name": "broadcast_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for a specific broadcast. Use this to retrieve the corresponding metadata.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBroadcast'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetBroadcastMetadata", + "parameters": { + "broadcast_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBroadcastMetrics", + "qualifiedName": "CustomerioApi.GetBroadcastMetrics", + "fullyQualifiedName": "CustomerioApi.GetBroadcastMetrics@1.0.0", + "description": "Retrieve metrics for a specific broadcast over defined time steps.\n\nThis tool retrieves a list of performance metrics for an individual broadcast, broken down into specified time intervals (steps) such as days or weeks. It is useful for analyzing broadcast performance trends. The metrics are returned from the oldest to the newest period.", + "parameters": [ + { + "name": "broadcast_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier for a specific broadcast.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_type", + "type": "string", + "required": false, + "description": "Specify the type of item to return metrics for. Options include 'email', 'webhook', 'twilio', 'slack', 'push', and 'in_app'. Leave empty to get metrics for all types.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_time_periods", + "type": "integer", + "required": false, + "description": "The number of time periods to return metrics for. Follow the specific period limits: 24 for hours, 45 for days, 12 for weeks, or 121 for months. Defaults if not specified: to maximum available or 12 for monthly periods. Days start at 00:00 EST, weeks at 00:00 EST on Sunday, and months at 00:00 EST on the 1st.", + "enum": null, + "inferrable": true + }, + { + "name": "time_period_unit", + "type": "string", + "required": false, + "description": "Specifies the unit of time for the report, such as hours, days, weeks, or months.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'broadcastMetrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetBroadcastMetrics", + "parameters": { + "broadcast_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "metric_type": { + "value": "email", + "type": "string", + "required": false + }, + "number_of_time_periods": { + "value": 12, + "type": "integer", + "required": false + }, + "time_period_unit": { + "value": "months", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBroadcastStatus", + "qualifiedName": "CustomerioApi.GetBroadcastStatus", + "fullyQualifiedName": "CustomerioApi.GetBroadcastStatus@1.0.0", + "description": "Retrieve the status of a broadcast using its trigger ID.\n\nUse this tool to get the current status of a broadcast after it has been triggered. Requires the `broadcast_id` and `trigger_id` to fetch the specific status.", + "parameters": [ + { + "name": "broadcast_identifier", + "type": "integer", + "required": true, + "description": "The unique ID of the broadcast to retrieve information about. This should be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_trigger_id", + "type": "integer", + "required": true, + "description": "The ID of the specific campaign trigger whose status you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'broadcastStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetBroadcastStatus", + "parameters": { + "broadcast_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "campaign_trigger_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBroadcastTranslationInfo", + "qualifiedName": "CustomerioApi.GetBroadcastTranslationInfo", + "fullyQualifiedName": "CustomerioApi.GetBroadcastTranslationInfo@1.0.0", + "description": "Retrieve translation info for a broadcast message.\n\nUse this tool to get details about a specific translation of a message within a broadcast by providing the `action_id`. Useful for checking how a message is translated into a specific language.", + "parameters": [ + { + "name": "action_id", + "type": "integer", + "required": true, + "description": "The identifier for the action you want to lookup or act on. Used to retrieve specific translation details.", + "enum": null, + "inferrable": true + }, + { + "name": "broadcast_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for a broadcast. Integer type is expected.", + "enum": null, + "inferrable": true + }, + { + "name": "language_tag", + "type": "string", + "required": true, + "description": "The language tag for the translation. Use an empty string for the default language.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBroadcastActionLanguage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetBroadcastTranslationInfo", + "parameters": { + "action_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "broadcast_identifier": { + "value": 67890, + "type": "integer", + "required": true + }, + "language_tag": { + "value": "fr", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBroadcastTriggers", + "qualifiedName": "CustomerioApi.GetBroadcastTriggers", + "fullyQualifiedName": "CustomerioApi.GetBroadcastTriggers@1.0.0", + "description": "Retrieve triggers for a specific broadcast.\n\nUse this tool to get a list of triggers associated with a particular broadcast in the Customerio service. Useful for understanding the actions set for a broadcast.", + "parameters": [ + { + "name": "broadcast_identifier", + "type": "integer", + "required": true, + "description": "The identifier of a broadcast to retrieve its triggers. Must be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listBroadcastTriggers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetBroadcastTriggers", + "parameters": { + "broadcast_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCampaignActionInfo", + "qualifiedName": "CustomerioApi.GetCampaignActionInfo", + "fullyQualifiedName": "CustomerioApi.GetCampaignActionInfo@1.0.0", + "description": "Retrieve details for a specific action in a campaign.\n\nUse this tool to get detailed information about a specific action within a marketing campaign. It should be called when you need to understand the specifics of campaign actions such as type, status, or execution details.", + "parameters": [ + { + "name": "action_id", + "type": "integer", + "required": true, + "description": "The identifier for the campaign action you want to look up or act on. Provide the integer ID of the action.", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_identifier", + "type": "integer", + "required": true, + "description": "The unique ID of the campaign for retrieving specific action information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCampaignAction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetCampaignActionInfo", + "parameters": { + "action_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "campaign_identifier": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCampaignActionLinkMetrics", + "qualifiedName": "CustomerioApi.GetCampaignActionLinkMetrics", + "fullyQualifiedName": "CustomerioApi.GetCampaignActionLinkMetrics@1.0.0", + "description": "Retrieve link click metrics for a specific campaign action.\n\nThis tool retrieves link click metrics for an individual action within a specific campaign. It provides click data for up to 45 days unless specified otherwise and requires at least two steps for any period. Use this tool to analyze link engagement in marketing campaigns.", + "parameters": [ + { + "name": "action_identifier", + "type": "integer", + "required": true, + "description": "The identifier of the action to lookup or perform an operation on in the campaign. It is expected to be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_id", + "type": "integer", + "required": true, + "description": "The unique ID of the campaign to retrieve metrics for. Ensure this is a valid integer.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_item_type", + "type": "string", + "required": false, + "description": "Specify the type of item to return metrics for. Acceptable values are 'email', 'webhook', 'twilio', 'slack', 'push', 'in_app'. Leave empty for metrics of all types.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_periods_to_return", + "type": "integer", + "required": false, + "description": "Number of periods to return metrics for. Defaults to max available or 12 if in months. Max: 24 hours, 45 days, 12 weeks, 121 months.", + "enum": null, + "inferrable": true + }, + { + "name": "report_time_unit", + "type": "string", + "required": false, + "description": "The unit of time for the report. Options: hours, days, weeks, or months.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'campaignActionLinks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetCampaignActionLinkMetrics", + "parameters": { + "action_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "campaign_id": { + "value": 78910, + "type": "integer", + "required": true + }, + "metric_item_type": { + "value": "email", + "type": "string", + "required": false + }, + "number_of_periods_to_return": { + "value": 30, + "type": "integer", + "required": false + }, + "report_time_unit": { + "value": "days", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCampaignActionMetrics", + "qualifiedName": "CustomerioApi.GetCampaignActionMetrics", + "fullyQualifiedName": "CustomerioApi.GetCampaignActionMetrics@1.0.0", + "description": "Retrieve metrics for a specific campaign action.\n\nFetch detailed metrics for an individual action within a campaign. Utilizes version 2, allowing for flexible time ranges and resolution-based metrics. Essential for tracking the performance of campaign actions over time.", + "parameters": [ + { + "name": "action_identifier", + "type": "integer", + "required": true, + "description": "The ID of the specific action to retrieve metrics for within a campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_id", + "type": "integer", + "required": true, + "description": "The integer ID of the campaign to retrieve metrics for.", + "enum": null, + "inferrable": true + }, + { + "name": "metrics_api_version", + "type": "string", + "required": true, + "description": "Specify the version of the metrics API to use. Recommended to use version '2'.", + "enum": null, + "inferrable": true + }, + { + "name": "item_type_for_metrics", + "type": "string", + "required": false, + "description": "Specify the type of item to return metrics for, such as 'email', 'webhook', 'twilio', etc. Leaving it empty returns metrics for all types.", + "enum": null, + "inferrable": true + }, + { + "name": "metrics_end_timestamp", + "type": "integer", + "required": false, + "description": "The Unix timestamp marking the end of the metrics period. Applicable only for Version 2 and limited to 10 years from the start timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "metrics_resolution", + "type": "string", + "required": false, + "description": "Specifies the increment for metrics in version 2. Options are hourly, daily, weekly, or monthly.", + "enum": null, + "inferrable": true + }, + { + "name": "metrics_start_timestamp", + "type": "integer", + "required": false, + "description": "Unix timestamp for the start of metrics (Version 2 only).", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_steps", + "type": "integer", + "required": false, + "description": "For Version 1 only. Specifies the number of time periods to return. Defaults to the maximum, or `12` if in months. Maximums are 24 hours, 45 days, 12 weeks, or 120 months.", + "enum": null, + "inferrable": true + }, + { + "name": "timezone", + "type": "string", + "required": false, + "description": "The time zone in region format for the metrics. Default is EST if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "version_1_time_unit", + "type": "string", + "required": false, + "description": "Specifies the time unit for the report in Version 1 (e.g., hours, days, weeks, months).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'campaignActionMetrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetCampaignActionMetrics", + "parameters": { + "action_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "campaign_id": { + "value": 456, + "type": "integer", + "required": true + }, + "metrics_api_version": { + "value": "2", + "type": "string", + "required": true + }, + "item_type_for_metrics": { + "value": "email", + "type": "string", + "required": false + }, + "metrics_end_timestamp": { + "value": 1699996800, + "type": "integer", + "required": false + }, + "metrics_resolution": { + "value": "daily", + "type": "string", + "required": false + }, + "metrics_start_timestamp": { + "value": 1697270400, + "type": "integer", + "required": false + }, + "number_of_steps": { + "value": null, + "type": "integer", + "required": false + }, + "timezone": { + "value": "America/New_York", + "type": "string", + "required": false + }, + "version_1_time_unit": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCampaignJourneyMetrics", + "qualifiedName": "CustomerioApi.GetCampaignJourneyMetrics", + "fullyQualifiedName": "CustomerioApi.GetCampaignJourneyMetrics@1.0.0", + "description": "Retrieve journey metrics for a specific campaign.\n\nThis tool retrieves a list of journey metrics for a specified campaign. It provides insights into how many people triggered the campaign and other related metrics within a specified time period and resolution. Useful for campaign performance analysis.", + "parameters": [ + { + "name": "campaign_id", + "type": "integer", + "required": true, + "description": "The ID of the campaign to return journey metrics for.", + "enum": null, + "inferrable": true + }, + { + "name": "end_timestamp", + "type": "integer", + "required": true, + "description": "The Unix timestamp marking the end of the journey metrics report period.", + "enum": null, + "inferrable": true + }, + { + "name": "metrics_resolution", + "type": "string", + "required": true, + "description": "Determines the increment for metrics reporting: hourly, daily, weekly, or monthly.", + "enum": null, + "inferrable": true + }, + { + "name": "start_timestamp", + "type": "integer", + "required": true, + "description": "The UNIX timestamp marking the start of the journey metrics report period.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'campaignJourneyMetrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetCampaignJourneyMetrics", + "parameters": { + "campaign_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "end_timestamp": { + "value": 1699996800, + "type": "integer", + "required": true + }, + "metrics_resolution": { + "value": "daily", + "type": "string", + "required": true + }, + "start_timestamp": { + "value": 1697318400, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCampaignLinkMetrics", + "qualifiedName": "CustomerioApi.GetCampaignLinkMetrics", + "fullyQualifiedName": "CustomerioApi.GetCampaignLinkMetrics@1.0.0", + "description": "Get link click metrics for a campaign over specified periods.\n\nThis tool fetches metrics for link clicks within a specified campaign, providing both total and period-specific data (like days or weeks). It's useful for analyzing campaign performance over time.", + "parameters": [ + { + "name": "campaign_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the campaign you want metrics for. Use this ID to specify the target campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "count_unique_customers", + "type": "boolean", + "required": false, + "description": "Set to true to only include unique customer results. Set to false to count all clicks.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_periods", + "type": "integer", + "required": false, + "description": "The number of periods to return metrics for. Defaults to the maximum available, or 12 if the period is in months. Maximums are 24 hours, 45 days, 12 weeks, or 121 months.", + "enum": null, + "inferrable": true + }, + { + "name": "report_time_unit", + "type": "string", + "required": false, + "description": "The unit of time for the report. Options are: 'hours', 'days', 'weeks', 'months'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'campaignLinkMetrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetCampaignLinkMetrics", + "parameters": { + "campaign_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "count_unique_customers": { + "value": true, + "type": "boolean", + "required": false + }, + "number_of_periods": { + "value": 3, + "type": "integer", + "required": false + }, + "report_time_unit": { + "value": "days", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCampaignList", + "qualifiedName": "CustomerioApi.GetCampaignList", + "fullyQualifiedName": "CustomerioApi.GetCampaignList@1.0.0", + "description": "Retrieve a list of marketing campaigns.\n\nUse this tool to get a list of your marketing campaigns and their associated metadata. Ideal for reviewing, auditing, or managing your email campaigns.", + "parameters": [], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listCampaigns'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetCampaignList", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCampaignMessages", + "qualifiedName": "CustomerioApi.GetCampaignMessages", + "fullyQualifiedName": "CustomerioApi.GetCampaignMessages@1.0.0", + "description": "Retrieve message deliveries from a campaign.\n\nFetch information on individual message deliveries from a specific campaign over a specified time range. Use parameters like `start_ts` and `end_ts` to refine the data to a specific period.", + "parameters": [ + { + "name": "campaign_id", + "type": "integer", + "required": true, + "description": "The ID of the campaign to fetch message deliveries from.", + "enum": null, + "inferrable": true + }, + { + "name": "beginning_timestamp", + "type": "integer", + "required": false, + "description": "The starting timestamp for the query to filter messages from a specific time.", + "enum": null, + "inferrable": true + }, + { + "name": "end_timestamp", + "type": "integer", + "required": false, + "description": "The ending timestamp for your query to specify the end of the time range for retrieving message deliveries.", + "enum": null, + "inferrable": true + }, + { + "name": "message_type", + "type": "string", + "required": false, + "description": "Specify the type of item for metrics (e.g., email, webhook, slack, etc.). Defaults to all types if empty.", + "enum": null, + "inferrable": true + }, + { + "name": "metrics_to_return", + "type": "string", + "required": false, + "description": "Specify the metrics you want to retrieve, such as 'sent', 'opened', or 'clicked'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token indicating the starting point for the page of results to return. Use the `next` property from previous responses.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of results to retrieve per page. It determines the number of message deliveries returned in a single API response.", + "enum": null, + "inferrable": true + }, + { + "name": "return_drafts", + "type": "boolean", + "required": false, + "description": "Set to true to return drafts rather than active/sent messages.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCampaignMessages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetCampaignMessages", + "parameters": { + "campaign_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "beginning_timestamp": { + "value": 1672531200, + "type": "integer", + "required": false + }, + "end_timestamp": { + "value": 1672617600, + "type": "integer", + "required": false + }, + "message_type": { + "value": "email", + "type": "string", + "required": false + }, + "metrics_to_return": { + "value": "opened", + "type": "string", + "required": false + }, + "pagination_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "return_drafts": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCampaignMetadata", + "qualifiedName": "CustomerioApi.GetCampaignMetadata", + "fullyQualifiedName": "CustomerioApi.GetCampaignMetadata@1.0.0", + "description": "Retrieve metadata for a specific campaign.\n\nUse this tool to get detailed metadata about an individual campaign by specifying the campaign ID.", + "parameters": [ + { + "name": "campaign_id", + "type": "integer", + "required": true, + "description": "The ID of the campaign for which metadata is requested. Provide a valid integer.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCampaigns'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetCampaignMetadata", + "parameters": { + "campaign_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCampaignMetrics", + "qualifiedName": "CustomerioApi.GetCampaignMetrics", + "fullyQualifiedName": "CustomerioApi.GetCampaignMetrics@1.0.0", + "description": "Fetch metrics for an individual campaign.\n\nUse this tool to retrieve a list of metrics for a specific campaign. It supports flexible time-based metrics by utilizing parameters like resolution, time zone, start, and end times. The recommended version 2 provides greater flexibility with these options. This tool is ideal for analyzing campaign performance over time.", + "parameters": [ + { + "name": "campaign_id", + "type": "integer", + "required": true, + "description": "The unique ID of the campaign to retrieve metrics for.", + "enum": null, + "inferrable": true + }, + { + "name": "metrics_api_version", + "type": "string", + "required": true, + "description": "Specify the version of the metrics API to use. Recommended value is '2'.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time_unix", + "type": "integer", + "required": false, + "description": "Unix timestamp marking the end of the metrics period. Use only with version 2. Limited to 10 years from the start parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "metrics_item_type", + "type": "string", + "required": false, + "description": "Specify the type of item for metrics: email, webhook, twilio, slack, push, in_app. Leave empty for all types.", + "enum": null, + "inferrable": true + }, + { + "name": "metrics_start_timestamp", + "type": "integer", + "required": false, + "description": "Unix timestamp marking the start of the metrics period for version 2.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_steps", + "type": "integer", + "required": false, + "description": "(Version 1 only) The number of periods to return, with defaults and maximum limits based on the period unit (e.g., hours, days).", + "enum": null, + "inferrable": true + }, + { + "name": "resolution", + "type": "string", + "required": false, + "description": "Determines increment for metrics—hourly, daily, weekly, or monthly. Only for Version 2.", + "enum": null, + "inferrable": true + }, + { + "name": "timezone_for_metrics", + "type": "string", + "required": false, + "description": "For version 2 only. Specify the time zone for the metrics requested. Defaults to EST if not provided. Use the region format.", + "enum": null, + "inferrable": true + }, + { + "name": "version_1_time_unit", + "type": "string", + "required": false, + "description": "For Version 1 only, specify the time unit for the report. Options include hours, days, weeks, or months.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'campaignMetrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetCampaignMetrics", + "parameters": { + "campaign_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "metrics_api_version": { + "value": "2", + "type": "string", + "required": true + }, + "end_time_unix": { + "value": 1672531199, + "type": "integer", + "required": false + }, + "metrics_item_type": { + "value": "email", + "type": "string", + "required": false + }, + "metrics_start_timestamp": { + "value": 1672444800, + "type": "integer", + "required": false + }, + "number_of_steps": { + "value": null, + "type": "integer", + "required": false + }, + "resolution": { + "value": "daily", + "type": "string", + "required": false + }, + "timezone_for_metrics": { + "value": "America/New_York", + "type": "string", + "required": false + }, + "version_1_time_unit": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerActivities", + "qualifiedName": "CustomerioApi.GetCustomerActivities", + "fullyQualifiedName": "CustomerioApi.GetCustomerActivities@1.0.0", + "description": "Retrieve recent activities for a customer.\n\nThis tool returns a list of activities performed by or for a specified customer, such as attribute changes and message sends. It provides activity history from the past 30 days, with potential inclusion of older data.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer whose activities you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "activity_type_filter", + "type": "string", + "required": false, + "description": "Filter activities by specific type, such as 'add_relationship' or 'attribute_change'.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_id_type", + "type": "string", + "required": false, + "description": "Specify the type of `customer_id` used to reference a person (e.g., `id`, `email`, or `cio_id`). Defaults to `id` if unspecified.", + "enum": null, + "inferrable": true + }, + { + "name": "event_or_attribute_name", + "type": "string", + "required": false, + "description": "Specify the event or attribute name to search for within activities of type `event` or `attribute_update`.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of activity results to retrieve per page.", + "enum": null, + "inferrable": true + }, + { + "name": "start_token", + "type": "string", + "required": false, + "description": "Token to specify which page of results to return. Use the `next` property from a previous response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPersonActivities'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetCustomerActivities", + "parameters": { + "customer_id": { + "value": "12345", + "type": "string", + "required": true + }, + "activity_type_filter": { + "value": "attribute_change", + "type": "string", + "required": false + }, + "customer_id_type": { + "value": "email", + "type": "string", + "required": false + }, + "event_or_attribute_name": { + "value": "subscription_update", + "type": "string", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "start_token": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerInfo", + "qualifiedName": "CustomerioApi.GetCustomerInfo", + "fullyQualifiedName": "CustomerioApi.GetCustomerInfo@1.0.0", + "description": "Retrieve attributes and devices for specified customers by ID.\n\nUse this tool to get detailed attributes and devices information for up to 100 customers by their IDs. If a provided ID does not exist, it will be omitted in the response.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPeopleById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetCustomerInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"customer_ids\":[\"12345\",\"67890\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerProfileAttributes", + "qualifiedName": "CustomerioApi.GetCustomerProfileAttributes", + "fullyQualifiedName": "CustomerioApi.GetCustomerProfileAttributes@1.0.0", + "description": "Retrieve a customer's profile attributes.\n\nThis tool fetches a list of attributes for a specified customer profile. Useful for creating segments or using in message templates.", + "parameters": [ + { + "name": "customer_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the customer to fetch their profile attributes.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_id_type", + "type": "string", + "required": false, + "description": "Specifies the type of `customer_id` to reference a person. Options: 'id', 'email', 'cio_id'. Default is 'id' if not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPersonAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetCustomerProfileAttributes", + "parameters": { + "customer_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "customer_id_type": { + "value": "email", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerSegments", + "qualifiedName": "CustomerioApi.GetCustomerSegments", + "fullyQualifiedName": "CustomerioApi.GetCustomerSegments@1.0.0", + "description": "Retrieve segments of a specific customer from Customerio.\n\nUse this tool to get a list of segments that a specified customer profile is a part of. This can be useful for understanding customer categorization and targeting within the Customerio platform.", + "parameters": [ + { + "name": "customer_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the customer for segment retrieval in Customerio.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_id_type", + "type": "string", + "required": false, + "description": "Specifies the type of customer identifier to use ('id', 'email', or 'cio_id'). Default is 'id'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPersonSegments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetCustomerSegments", + "parameters": { + "customer_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "customer_id_type": { + "value": "email", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDeliveryMessageInfo", + "qualifiedName": "CustomerioApi.GetDeliveryMessageInfo", + "fullyQualifiedName": "CustomerioApi.GetDeliveryMessageInfo@1.0.0", + "description": "Retrieve metrics and details for a specific message delivery.\n\nCall this tool to get information and delivery metrics for a specific instance of a message intended for an individual recipient.", + "parameters": [ + { + "name": "message_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a specific message instance to retrieve its information and metrics.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getMessage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetDeliveryMessageInfo", + "parameters": { + "message_identifier": { + "value": "msg_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetExportInfo", + "qualifiedName": "CustomerioApi.GetExportInfo", + "fullyQualifiedName": "CustomerioApi.GetExportInfo@1.0.0", + "description": "Returns information about a specific export from Customerio.\n\nUse this tool to fetch details about a particular export by providing the export ID. It retrieves comprehensive information related to the specified export.", + "parameters": [ + { + "name": "export_id_to_access", + "type": "integer", + "required": true, + "description": "The unique ID of the export you want to access in Customerio.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getExport'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetExportInfo", + "parameters": { + "export_id_to_access": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetImportStatus", + "qualifiedName": "CustomerioApi.GetImportStatus", + "fullyQualifiedName": "CustomerioApi.GetImportStatus@1.0.0", + "description": "Retrieve the status of an import operation.\n\nUse this tool to get information on the status and results of a CSV file import operation, including the success of the row imports.", + "parameters": [ + { + "name": "import_id", + "type": "integer", + "required": true, + "description": "The ID of the import to lookup from a previously queued import operation.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getImport'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetImportStatus", + "parameters": { + "import_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetNewsletterLinkMetrics", + "qualifiedName": "CustomerioApi.GetNewsletterLinkMetrics", + "fullyQualifiedName": "CustomerioApi.GetNewsletterLinkMetrics@1.0.0", + "description": "Retrieve metrics for link clicks in a newsletter.\n\nThis tool fetches metrics for link clicks within a newsletter, providing both total counts and series data over specified periods (e.g., days, weeks). Useful for analyzing newsletter performance over time.", + "parameters": [ + { + "name": "newsletter_identifier", + "type": "integer", + "required": true, + "description": "The identifier of the newsletter to retrieve metrics for. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "include_unique_customers", + "type": "boolean", + "required": false, + "description": "If true, response includes only unique customer results (each customer counted once); if false, includes total click results.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_periods", + "type": "integer", + "required": false, + "description": "The number of periods to return metrics for. Defaults to maximum available, or 12 if in months. Maximums: 24 hours, 45 days, 12 weeks, or 121 months.", + "enum": null, + "inferrable": true + }, + { + "name": "time_unit_for_report", + "type": "string", + "required": false, + "description": "The unit of time for your report. Options are 'hours', 'days', 'weeks', or 'months'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getNewsletterLinks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetNewsletterLinkMetrics", + "parameters": { + "newsletter_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "include_unique_customers": { + "value": true, + "type": "boolean", + "required": false + }, + "number_of_periods": { + "value": 6, + "type": "integer", + "required": false + }, + "time_unit_for_report": { + "value": "weeks", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetNewsletterMessageMetadata", + "qualifiedName": "CustomerioApi.GetNewsletterMessageMetadata", + "fullyQualifiedName": "CustomerioApi.GetNewsletterMessageMetadata@1.0.0", + "description": "Retrieve delivery info for messages sent from a newsletter.\n\nUse this tool to get information about individual message deliveries from a specific newsletter. You can specify a time range using `start_ts` and `end_ts`, otherwise, it defaults to a 6-month period from the first delivery. For longer ranges, up to 12 months of data will be returned from the most recent delivery. Timestamps indicate delivery creation, not the actual send time.", + "parameters": [ + { + "name": "newsletter_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the newsletter to retrieve delivery information for.", + "enum": null, + "inferrable": true + }, + { + "name": "begin_query_timestamp", + "type": "integer", + "required": false, + "description": "The Unix timestamp marking the start of the time range for your query. Without this, data defaults to the earliest available from 6 months prior.", + "enum": null, + "inferrable": true + }, + { + "name": "ending_timestamp_for_query", + "type": "integer", + "required": false, + "description": "The ending timestamp for your query in Unix format. It specifies the end of the time range for retrieving message delivery data.", + "enum": null, + "inferrable": true + }, + { + "name": "metrics_to_return", + "type": "string", + "required": false, + "description": "Specify one or more metrics to return, such as 'attempted', 'sent', 'delivered', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_token", + "type": "string", + "required": false, + "description": "The token to specify the start of the result page to return. Use the `next` value from previous responses for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page_limit", + "type": "integer", + "required": false, + "description": "The maximum number of message delivery results to retrieve per page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getNewsletterMsgMeta'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetNewsletterMessageMetadata", + "parameters": { + "newsletter_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "begin_query_timestamp": { + "value": 1633046400, + "type": "integer", + "required": false + }, + "ending_timestamp_for_query": { + "value": 1635724800, + "type": "integer", + "required": false + }, + "metrics_to_return": { + "value": "sent,delivered", + "type": "string", + "required": false + }, + "pagination_start_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetNewsletterMetrics", + "qualifiedName": "CustomerioApi.GetNewsletterMetrics", + "fullyQualifiedName": "CustomerioApi.GetNewsletterMetrics@1.0.0", + "description": "Retrieve metrics for a specific newsletter over time.\n\nThis tool retrieves a list of metrics for an individual newsletter over specified time intervals, such as days or weeks, presented from oldest to newest. It is useful to analyze the performance of newsletters over time, requiring at least two time steps for valid data retrieval.", + "parameters": [ + { + "name": "newsletter_identifier", + "type": "integer", + "required": true, + "description": "The identifier for the specific newsletter to retrieve metrics for. Expected to be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "item_type_for_metrics", + "type": "string", + "required": false, + "description": "Specify the type of item to return metrics for, such as 'email', 'webhook', 'twilio', etc. If not provided, metrics for all types are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_time_periods", + "type": "integer", + "required": false, + "description": "The number of time periods to return metrics for. Minimum is 2. Defaults to max: 24 hours, 45 days, 12 weeks, 121 months. Use this to specify the time span for newsletter metrics.", + "enum": null, + "inferrable": true + }, + { + "name": "time_period_unit", + "type": "string", + "required": false, + "description": "The unit of time to report metrics (options: hours, days, weeks, months).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getNewsletterMetrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetNewsletterMetrics", + "parameters": { + "newsletter_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "item_type_for_metrics": { + "value": "email", + "type": "string", + "required": false + }, + "number_of_time_periods": { + "value": 4, + "type": "integer", + "required": false + }, + "time_period_unit": { + "value": "days", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetNewsletters", + "qualifiedName": "CustomerioApi.GetNewsletters", + "fullyQualifiedName": "CustomerioApi.GetNewsletters@1.0.0", + "description": "Retrieve a list of newsletters and their metadata.\n\nUse this tool to obtain a comprehensive list of newsletters along with detailed metadata. Ideal for managing or reviewing newsletter information.", + "parameters": [ + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of newsletters to retrieve per page, up to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the order to sort results: `asc` for chronological, `desc` for reverse.", + "enum": null, + "inferrable": true + }, + { + "name": "start_token", + "type": "string", + "required": false, + "description": "Token to retrieve a specific page of newsletter results. Use the `next` property from previous responses as this token.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listNewsletters'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetNewsletters", + "parameters": { + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "asc", + "type": "string", + "required": false + }, + "start_token": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetNewsletterTestGroups", + "qualifiedName": "CustomerioApi.GetNewsletterTestGroups", + "fullyQualifiedName": "CustomerioApi.GetNewsletterTestGroups@1.0.0", + "description": "Retrieve test group details for a specific newsletter.\n\nUse this tool to obtain information about each test group within a specific newsletter, including content IDs for each group. Ideal for analyzing or verifying test group configurations in newsletters.", + "parameters": [ + { + "name": "newsletter_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of a newsletter to retrieve its test group details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getNewsletterTestGroups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetNewsletterTestGroups", + "parameters": { + "newsletter_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetNewsletterVariantClickMetrics", + "qualifiedName": "CustomerioApi.GetNewsletterVariantClickMetrics", + "fullyQualifiedName": "CustomerioApi.GetNewsletterVariantClickMetrics@1.0.0", + "description": "Get link click metrics for a newsletter variant.\n\nRetrieve metrics related to link clicks for an individual newsletter variant, such as language variations or A/B test messages. By default, the data covers up to 45 days. Specify the period and steps to customize the data range.", + "parameters": [ + { + "name": "message_content_identifier", + "type": "integer", + "required": true, + "description": "The ID of a specific message within a newsletter, useful for A/B tests or multilingual newsletters. Retrieve from newsletter details.", + "enum": null, + "inferrable": true + }, + { + "name": "newsletter_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier of a specific newsletter to retrieve click metrics.", + "enum": null, + "inferrable": true + }, + { + "name": "item_type_for_metrics", + "type": "string", + "required": false, + "description": "The type of item to return metrics for. Options are: email, webhook, twilio, slack, push, in_app. When left empty, metrics for all types are included.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_periods", + "type": "integer", + "required": false, + "description": "Specify the number of time periods to retrieve data for. Defaults to the maximum if not specified, or 12 for months. Maximum limits: 24 hours, 45 days, 12 weeks, or 121 months.", + "enum": null, + "inferrable": true + }, + { + "name": "time_unit_for_report", + "type": "string", + "required": false, + "description": "The unit of time for generating the report. Options are: hours, days, weeks, months.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getVariantLinks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetNewsletterVariantClickMetrics", + "parameters": { + "message_content_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "newsletter_identifier": { + "value": 67890, + "type": "integer", + "required": true + }, + "item_type_for_metrics": { + "value": "email", + "type": "string", + "required": false + }, + "number_of_periods": { + "value": 6, + "type": "integer", + "required": false + }, + "time_unit_for_report": { + "value": "days", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetNewsletterVariantInfo", + "qualifiedName": "CustomerioApi.GetNewsletterVariantInfo", + "fullyQualifiedName": "CustomerioApi.GetNewsletterVariantInfo@1.0.0", + "description": "Retrieve variant details of a specific newsletter.\n\nUse this tool to obtain details about a specific variant of a newsletter, which could represent a language option or part of an A/B test.", + "parameters": [ + { + "name": "message_identifier_in_newsletter", + "type": "integer", + "required": true, + "description": "Identifier for a message within a newsletter, used for A/B tests or multi-language editions.", + "enum": null, + "inferrable": true + }, + { + "name": "newsletter_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for a newsletter. Required to retrieve specific variant information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getNewsletterVariant'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetNewsletterVariantInfo", + "parameters": { + "message_identifier_in_newsletter": { + "value": 123, + "type": "integer", + "required": true + }, + "newsletter_identifier": { + "value": 456, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetNewsletterVariantMetrics", + "qualifiedName": "CustomerioApi.GetNewsletterVariantMetrics", + "fullyQualifiedName": "CustomerioApi.GetNewsletterVariantMetrics@1.0.0", + "description": "Fetch metrics for a specific newsletter variant.\n\nThis tool retrieves metrics for an individual newsletter variant, such as a language variation or A/B test version. It provides total metrics and stepped metrics over a specified time period, which are arranged chronologically. It requires at least two steps to retrieve data.", + "parameters": [ + { + "name": "newsletter_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the newsletter to fetch metrics for.", + "enum": null, + "inferrable": true + }, + { + "name": "newsletter_message_id", + "type": "integer", + "required": true, + "description": "The ID of a message in a newsletter, used for identifying variants or languages within a newsletter. Useful for A/B tests or multilingual content.", + "enum": null, + "inferrable": true + }, + { + "name": "item_type_for_metrics", + "type": "string", + "required": false, + "description": "Specify the type of item to return metrics for (e.g., email, webhook, etc.). If left empty, metrics for all types are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_period_steps", + "type": "integer", + "required": false, + "description": "The number of time periods to return, requiring a minimum of 2 steps. Maximum limits apply based on the period type.", + "enum": null, + "inferrable": true + }, + { + "name": "reporting_period_unit", + "type": "string", + "required": false, + "description": "The time unit for the report, such as 'hours', 'days', 'weeks', or 'months'. Used to define the granularity of the metrics.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getVariantMetrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetNewsletterVariantMetrics", + "parameters": { + "newsletter_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "newsletter_message_id": { + "value": 789012, + "type": "integer", + "required": true + }, + "item_type_for_metrics": { + "value": "email", + "type": "string", + "required": false + }, + "number_of_period_steps": { + "value": 4, + "type": "integer", + "required": false + }, + "reporting_period_unit": { + "value": "days", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetNewsletterVariants", + "qualifiedName": "CustomerioApi.GetNewsletterVariants", + "fullyQualifiedName": "CustomerioApi.GetNewsletterVariants@1.0.0", + "description": "Fetch content variants for a specified newsletter.\n\nUse this tool to retrieve different content variants of a newsletter, useful for accessing multi-language versions or A/B test variations.", + "parameters": [ + { + "name": "newsletter_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier of a newsletter to fetch its content variants.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listNewsletterVariants'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetNewsletterVariants", + "parameters": { + "newsletter_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetNewsletterVariantTranslation", + "qualifiedName": "CustomerioApi.GetNewsletterVariantTranslation", + "fullyQualifiedName": "CustomerioApi.GetNewsletterVariantTranslation@1.0.0", + "description": "Get information on a newsletter's language variant.\n\nUse this tool to obtain details about a particular language variant of a newsletter. Ideal for retrieving specific translations of newsletter content.", + "parameters": [ + { + "name": "language_tag", + "type": "string", + "required": true, + "description": "The language tag of a newsletter variant. Leave empty for default language.", + "enum": null, + "inferrable": true + }, + { + "name": "newsletter_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of a newsletter to retrieve its specific language variant.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getNewsletterVariantTranslation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetNewsletterVariantTranslation", + "parameters": { + "language_tag": { + "value": "en-US", + "type": "string", + "required": true + }, + "newsletter_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetObjectAttributes", + "qualifiedName": "CustomerioApi.GetObjectAttributes", + "fullyQualifiedName": "CustomerioApi.GetObjectAttributes@1.0.0", + "description": "Retrieve a list of attributes for a specific object.\n\nUse this tool to get attributes of an object, such as account name, billing date, etc., by specifying the object type and ID.", + "parameters": [ + { + "name": "object_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the object, which can be either `object_id` or `cio_object_id`, depending on the id_type specified in query params.", + "enum": null, + "inferrable": true + }, + { + "name": "object_type_identifier", + "type": "integer", + "required": true, + "description": "The ID representing the object type, beginning at 1 for each new type, like 'Companies' or 'Accounts'.", + "enum": null, + "inferrable": true + }, + { + "name": "object_id_type", + "type": "string", + "required": false, + "description": "Specify the type of ID used for the object: 'object_id' or 'cio_object_id'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getObjectAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetObjectAttributes", + "parameters": { + "object_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "object_type_identifier": { + "value": 2, + "type": "integer", + "required": true + }, + "object_id_type": { + "value": "object_id", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetObjectTypes", + "qualifiedName": "CustomerioApi.GetObjectTypes", + "fullyQualifiedName": "CustomerioApi.GetObjectTypes@1.0.0", + "description": "Retrieve a list of object types and their IDs.\n\nUse this tool to obtain a list of all available object types in your system along with their incrementing IDs. This is useful when you need to query, create, or modify specific object types by their ID.", + "parameters": [], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getObjectTypes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetObjectTypes", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPeopleByEmail", + "qualifiedName": "CustomerioApi.GetPeopleByEmail", + "fullyQualifiedName": "CustomerioApi.GetPeopleByEmail@1.0.0", + "description": "Retrieve a list of people matching an email address.\n\nUse this tool to find people in your workspace based on their email address. It returns a list of individuals matching the specified email.", + "parameters": [ + { + "name": "search_email_address", + "type": "string", + "required": true, + "description": "The email address to find in the workspace. Returns a list of individuals matching this email.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPeopleEmail'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetPeopleByEmail", + "parameters": { + "search_email_address": { + "value": "example@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPersonRelationships", + "qualifiedName": "CustomerioApi.GetPersonRelationships", + "fullyQualifiedName": "CustomerioApi.GetPersonRelationships@1.0.0", + "description": "Retrieve a list of objects a person is related to.\n\nUse this tool to obtain a list of relationships associated with a specific person. It supports pagination for retrieving results in multiple pages. Note that duplicates may appear across pages.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer whose relationships you wish to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to retrieve per page.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_token", + "type": "string", + "required": false, + "description": "Token to specify the page of results to return. Use the `next` property's value from a previous response to get subsequent pages.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPersonRelationships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetPersonRelationships", + "parameters": { + "customer_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_start_token": { + "value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRelatedPeople", + "qualifiedName": "CustomerioApi.GetRelatedPeople", + "fullyQualifiedName": "CustomerioApi.GetRelatedPeople@1.0.0", + "description": "Retrieve people related to a specified object.\n\nUse this tool to get a list of people related to a specific object by providing the object type and object ID. Useful for exploring object relationships in Customerio.", + "parameters": [ + { + "name": "object_identifier", + "type": "string", + "required": true, + "description": "The ID of the object. This can be `object_id` or `cio_object_id` based on the `id_type` query parameter. Defaults to `object_id`.", + "enum": null, + "inferrable": true + }, + { + "name": "object_type_identifier", + "type": "integer", + "required": true, + "description": "The ID representing the object type, such as 'Companies' or 'Accounts'. Starts from 1 and increments for each new type.", + "enum": null, + "inferrable": true + }, + { + "name": "identification_type", + "type": "string", + "required": false, + "description": "Specifies whether the object identifier is an `object_id` or a `cio_object_id`. Choose between these two options.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to retrieve per page. Specify an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_token", + "type": "string", + "required": false, + "description": "Token for starting the page of results. Use the 'next' property from a response to paginate.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getObjectRelationships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetRelatedPeople", + "parameters": { + "object_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "object_type_identifier": { + "value": 2, + "type": "integer", + "required": true + }, + "identification_type": { + "value": "object_id", + "type": "string", + "required": false + }, + "maximum_results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_start_token": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSegmentCustomerCount", + "qualifiedName": "CustomerioApi.GetSegmentCustomerCount", + "fullyQualifiedName": "CustomerioApi.GetSegmentCustomerCount@1.0.0", + "description": "Retrieve the customer count for a specific segment.\n\nUse this tool to obtain the number of customers belonging to a particular segment identified by segment_id. This can help in analyzing segment size and its potential impact.", + "parameters": [ + { + "name": "segment_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the segment to retrieve the customer count. Find this ID on the segment's page or via the App API.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSegmentCount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetSegmentCustomerCount", + "parameters": { + "segment_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSegmentInfo", + "qualifiedName": "CustomerioApi.GetSegmentInfo", + "fullyQualifiedName": "CustomerioApi.GetSegmentInfo@1.0.0", + "description": "Retrieve information about a specific segment.\n\nThis tool retrieves detailed information about a specific segment using its segment ID. It should be called when segment information is needed for analysis or decision-making.", + "parameters": [ + { + "name": "segment_identifier", + "type": "integer", + "required": true, + "description": "The ID for a segment. Find this on its page in the dashboard or using the App API.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSegment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetSegmentInfo", + "parameters": { + "segment_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSegmentMembers", + "qualifiedName": "CustomerioApi.GetSegmentMembers", + "fullyQualifiedName": "CustomerioApi.GetSegmentMembers@1.0.0", + "description": "Retrieve customer details from a specific segment.\n\nUse this tool to get a list of customer identifiers in a specified segment. It returns identifiers for each person in the segment, providing more comprehensive information than just IDs. Useful for understanding customer segmentation.", + "parameters": [ + { + "name": "segment_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for a segment. Find this ID on the segment's page in the dashboard, under *Usage*.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of customer identifiers to retrieve per page.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token to specify the start of the page of results. Use the `next` value from a previous response to paginate.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSegmentMembership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetSegmentMembers", + "parameters": { + "segment_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "maximum_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "abcde12345", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSenderInfo", + "qualifiedName": "CustomerioApi.GetSenderInfo", + "fullyQualifiedName": "CustomerioApi.GetSenderInfo@1.0.0", + "description": "Retrieve information about a specific sender by ID.\n\nUse this tool to get detailed information for a specific sender using their ID, which is helpful for email management and verification processes.", + "parameters": [ + { + "name": "sender_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for a sender, required to fetch their information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSender'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetSenderInfo", + "parameters": { + "sender_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSenderList", + "qualifiedName": "CustomerioApi.GetSenderList", + "fullyQualifiedName": "CustomerioApi.GetSenderList@1.0.0", + "description": "Retrieve a list of senders from your workspace.\n\nThis tool retrieves a list of senders in your workspace, representing the identities from which messages are sent. Use this to manage or display sender information.", + "parameters": [ + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of sender results to retrieve per page. Specify an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token for the page of results to return. Use the `next` property from the response for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_sort_order", + "type": "string", + "required": false, + "description": "Sort results: 'asc' for chronological, 'desc' for reverse chronological order.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listSenders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetSenderList", + "parameters": { + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_sort_order": { + "value": "asc", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSenderUsage", + "qualifiedName": "CustomerioApi.GetSenderUsage", + "fullyQualifiedName": "CustomerioApi.GetSenderUsage@1.0.0", + "description": "Retrieve campaigns and newsletters using a specific sender.\n\nUse this tool to obtain lists of campaigns and newsletters that utilize a particular sender identity. It provides insights into where a sender is actively used, helping in managing and analyzing sender strategies.", + "parameters": [ + { + "name": "sender_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the sender to retrieve associated campaigns and newsletters.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSenderUsage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetSenderUsage", + "parameters": { + "sender_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSubscriptionPreferences", + "qualifiedName": "CustomerioApi.GetSubscriptionPreferences", + "fullyQualifiedName": "CustomerioApi.GetSubscriptionPreferences@1.0.0", + "description": "Retrieve a person's subscription preferences.\n\nReturns a list of a person's subscription preferences, including headers, topic names, and descriptions. The data is translated if a language is specified in the query.", + "parameters": [ + { + "name": "customer_identifier", + "type": "string", + "required": true, + "description": "The ID of the customer to retrieve subscription preferences for.", + "enum": null, + "inferrable": true + }, + { + "name": "accept_language", + "type": "string", + "required": false, + "description": "Language tag for translating content. If not specified, defaults to the subscription center's language.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_id_type", + "type": "string", + "required": false, + "description": "Type of customer_id used to reference a person, e.g., 'id', 'email', or 'cio_id'. Defaults to 'id'.", + "enum": null, + "inferrable": true + }, + { + "name": "translation_language", + "type": "string", + "required": false, + "description": "Specify the language tag for translating the subscription preferences content. If not provided, the default language is used.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPersonSubscriptionPreferences'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetSubscriptionPreferences", + "parameters": { + "customer_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "accept_language": { + "value": "en-US", + "type": "string", + "required": false + }, + "customer_id_type": { + "value": "email", + "type": "string", + "required": false + }, + "translation_language": { + "value": "fr", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSubscriptionTopics", + "qualifiedName": "CustomerioApi.GetSubscriptionTopics", + "fullyQualifiedName": "CustomerioApi.GetSubscriptionTopics@1.0.0", + "description": "Retrieve subscription topics from your workspace.\n\nUse this tool to get the list of all subscription topics available in your workspace. It will return an empty array if no topics exist.", + "parameters": [], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTopics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetSubscriptionTopics", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTransactionalLinkMetrics", + "qualifiedName": "CustomerioApi.GetTransactionalLinkMetrics", + "fullyQualifiedName": "CustomerioApi.GetTransactionalLinkMetrics@1.0.0", + "description": "Retrieve metrics for clicked links in transactional messages.\n\nThis tool returns metrics for links clicked from a transactional message, including totals and metrics over specified time periods. Useful for analyzing link engagement trends over days, weeks, etc. Cannot request fewer than two periods (e.g., days or weeks).", + "parameters": [ + { + "name": "transactional_message_id", + "type": "integer", + "required": true, + "description": "The identifier for the transactional message, found in the UI or URL (e.g., in `/transactional/3/templates/139`, the ID is 3).", + "enum": null, + "inferrable": true + }, + { + "name": "include_only_unique_customers", + "type": "boolean", + "required": false, + "description": "Return only unique customer results if true; false includes all click instances.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_periods", + "type": "integer", + "required": false, + "description": "Specify the number of periods to return metrics for. Cannot be fewer than 2 periods. Defaults to the maximum available, or 12 if the period is in months. Maximums: 24 hours, 45 days, 12 weeks, or 121 months.", + "enum": null, + "inferrable": true + }, + { + "name": "time_unit_for_report", + "type": "string", + "required": false, + "description": "The unit of time for the report. Options are: hours, days, weeks, or months.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'transactionalLinks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetTransactionalLinkMetrics", + "parameters": { + "transactional_message_id": { + "value": 3, + "type": "integer", + "required": true + }, + "include_only_unique_customers": { + "value": true, + "type": "boolean", + "required": false + }, + "number_of_periods": { + "value": 4, + "type": "integer", + "required": false + }, + "time_unit_for_report": { + "value": "days", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTransactionalMessage", + "qualifiedName": "CustomerioApi.GetTransactionalMessage", + "fullyQualifiedName": "CustomerioApi.GetTransactionalMessage@1.0.0", + "description": "Retrieve details of a transactional message.\n\nCall this tool to get information about an individual transactional message using its ID.", + "parameters": [ + { + "name": "transactional_message_id", + "type": "integer", + "required": true, + "description": "The ID of the transactional message, found in the UI or URL, e.g., `/transactional/3/templates/139` has an ID of 3.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTransactional'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetTransactionalMessage", + "parameters": { + "transactional_message_id": { + "value": 3, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTransactionalMessageDeliveries", + "qualifiedName": "CustomerioApi.GetTransactionalMessageDeliveries", + "fullyQualifiedName": "CustomerioApi.GetTransactionalMessageDeliveries@1.0.0", + "description": "Fetch delivery details for transactional messages.\n\nRetrieve information about individual message deliveries from a transactional message. Use optional parameters to specify a time range for the message data, otherwise, data from the last 6 months is returned by default.", + "parameters": [ + { + "name": "transactional_message_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the transactional message, found in the UI or URL, e.g., '/transactional/3/templates/139' where the ID is 3.", + "enum": null, + "inferrable": true + }, + { + "name": "beginning_timestamp", + "type": "integer", + "required": false, + "description": "The start time for the query, specified as a Unix timestamp. Limits the query to data starting from this time.", + "enum": null, + "inferrable": true + }, + { + "name": "broadcast_state", + "type": "string", + "required": false, + "description": "Specifies the state of the broadcast to filter results. Options are 'failed', 'sent', 'drafted', or 'attempted'.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to return per page, as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "page_token", + "type": "string", + "required": false, + "description": "Specify the token for the page of results you want to return. Use the `next` property from previous responses as the value to paginate.", + "enum": null, + "inferrable": true + }, + { + "name": "query_ending_timestamp", + "type": "integer", + "required": false, + "description": "The ending timestamp for the query, determining the end of the time range for message data retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "return_metrics", + "type": "string", + "required": false, + "description": "Specify one or more metrics to return, such as 'sent', 'delivered', or 'clicked'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'transactionalMessages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetTransactionalMessageDeliveries", + "parameters": { + "transactional_message_id": { + "value": 3, + "type": "integer", + "required": true + }, + "beginning_timestamp": { + "value": 1633046400, + "type": "integer", + "required": false + }, + "broadcast_state": { + "value": "sent", + "type": "string", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "page_token": { + "value": "next_page_token", + "type": "string", + "required": false + }, + "query_ending_timestamp": { + "value": 1635724800, + "type": "integer", + "required": false + }, + "return_metrics": { + "value": "sent, delivered", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTransactionalMessageMetrics", + "qualifiedName": "CustomerioApi.GetTransactionalMessageMetrics", + "fullyQualifiedName": "CustomerioApi.GetTransactionalMessageMetrics@1.0.0", + "description": "Retrieve metrics for a transactional message over time periods.\n\nThis tool retrieves metrics for a specified transactional message across defined time steps. It is useful for analyzing message performance over days, weeks, etc., from the oldest to the newest period.", + "parameters": [ + { + "name": "transactional_message_id", + "type": "integer", + "required": true, + "description": "The identifier of the transactional message. Found in the UI or URL, e.g., `/transactional/3/templates/139` means an ID of 3.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_periods", + "type": "integer", + "required": false, + "description": "The number of periods to retrieve metrics for. Defaults to the maximum available, or 12 if the period is in months. Maximums are 24 hours, 45 days, 12 weeks, or 121 months. Days start at 00:00 EST. Weeks start at 00:00 EST on Sunday. Months start at 00:00 EST on the 1st of the month.", + "enum": null, + "inferrable": true + }, + { + "name": "time_unit_for_report", + "type": "string", + "required": false, + "description": "Specify the unit of time for the report, such as 'hours', 'days', 'weeks', or 'months'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'transactionalMetrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetTransactionalMessageMetrics", + "parameters": { + "transactional_message_id": { + "value": 3, + "type": "integer", + "required": true + }, + "number_of_periods": { + "value": 12, + "type": "integer", + "required": false + }, + "time_unit_for_report": { + "value": "weeks", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTransactionalMessageVariants", + "qualifiedName": "CustomerioApi.GetTransactionalMessageVariants", + "fullyQualifiedName": "CustomerioApi.GetTransactionalMessageVariants@1.0.0", + "description": "Retrieve content variants of a transactional message.\n\nThis tool is used to obtain the different language variants of a transactional message's content. It should be called when you need to access the available language or format options for a specific message.", + "parameters": [ + { + "name": "transactional_message_id", + "type": "integer", + "required": true, + "description": "The ID of the transactional message, found in the UI or URL, e.g., `/transactional/3/templates/139` means ID is 3.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listTransactionalVariants'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetTransactionalMessageVariants", + "parameters": { + "transactional_message_id": { + "value": 3, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTransactionalVariant", + "qualifiedName": "CustomerioApi.GetTransactionalVariant", + "fullyQualifiedName": "CustomerioApi.GetTransactionalVariant@1.0.0", + "description": "Fetch translation details of a transactional message.\n\nUse this tool to obtain details about a translation of a specific transactional message, including its content. It's useful when you need to access different language variants of transactional messages.", + "parameters": [ + { + "name": "language_tag", + "type": "string", + "required": true, + "description": "Specify the language tag for the message variant. Use an empty string for the default language. If the variant does not exist, an error is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "transactional_message_id", + "type": "integer", + "required": true, + "description": "The identifier of the transactional message, found in the UI or URL, e.g., `/transactional/3/templates/139` has an ID of 3.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTransactionalVariant'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetTransactionalVariant", + "parameters": { + "language_tag": { + "value": "en-US", + "type": "string", + "required": true + }, + "transactional_message_id": { + "value": 3, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWebhookInfo", + "qualifiedName": "CustomerioApi.GetWebhookInfo", + "fullyQualifiedName": "CustomerioApi.GetWebhookInfo@1.0.0", + "description": "Get detailed information about a specific webhook.\n\nThis tool retrieves information about a specific reporting webhook from Customerio. It should be called when you need details about a particular webhook identified by its webhook ID.", + "parameters": [ + { + "name": "webhook_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the webhook you want to retrieve information for. This should be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.GetWebhookInfo", + "parameters": { + "webhook_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListBroadcasts", + "qualifiedName": "CustomerioApi.ListBroadcasts", + "fullyQualifiedName": "CustomerioApi.ListBroadcasts@1.0.0", + "description": "Retrieve a list of API-triggered broadcasts with metadata.\n\nUse this tool to get detailed information on all your API-triggered broadcasts, including their metadata. Ideal for keeping track of broadcast activities or managing campaigns.", + "parameters": [], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listBroadcasts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.ListBroadcasts", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCampaignActions", + "qualifiedName": "CustomerioApi.ListCampaignActions", + "fullyQualifiedName": "CustomerioApi.ListCampaignActions@1.0.0", + "description": "Retrieve operations in a campaign workflow.\n\nThis tool retrieves the actions or 'tiles' in a campaign workflow, returning up to 10 actions per call. If more pages of results are available, a 'next' string is included, which can be used to access subsequent pages. Ideal for analyzing or modifying campaign workflows.", + "parameters": [ + { + "name": "campaign_id", + "type": "integer", + "required": true, + "description": "The ID of the campaign to retrieve workflow information for. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "page_token", + "type": "string", + "required": false, + "description": "Token for the results page to return. Use 'next' from the response as this value for subsequent pages.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listCampaignActions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.ListCampaignActions", + "parameters": { + "campaign_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "page_token": { + "value": "abc123token", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCollections", + "qualifiedName": "CustomerioApi.ListCollections", + "fullyQualifiedName": "CustomerioApi.ListCollections@1.0.0", + "description": "Retrieve a list of all collections including names and schemas.\n\nUse this tool to obtain all existing collections, providing both their names and schemas. Useful for managing database structures or viewing collection configurations.", + "parameters": [], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCollections'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.ListCollections", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListExports", + "qualifiedName": "CustomerioApi.ListExports", + "fullyQualifiedName": "CustomerioApi.ListExports@1.0.0", + "description": "Retrieve a list of exports for people or campaign metrics.\n\nThis tool is used to obtain a list of exports, which are point-in-time records of people or campaign metrics. Call this tool when you need detailed information about exports from Customerio.", + "parameters": [], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listExports'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.ListExports", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListRecentActivities", + "qualifiedName": "CustomerioApi.ListRecentActivities", + "fullyQualifiedName": "CustomerioApi.ListRecentActivities@1.0.0", + "description": "Retrieve recent activity logs from the past 30 days.\n\nThis tool calls the Customerio API to obtain a list of recent activities for people. It returns activity history within the past 30 days, similar to workspace's Activity Logs, and might include older activities.", + "parameters": [ + { + "name": "activity_type", + "type": "string", + "required": false, + "description": "Specifies the type of activity to search for. Use specific activity types or patterns like `_o:` for objects and `_r:` for relationships.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_id_type", + "type": "string", + "required": false, + "description": "Specify the type of `customer_id` to reference a person. Options are `id`, `email`, or `cio_id`. Default is `id`.", + "enum": null, + "inferrable": true + }, + { + "name": "event_or_attribute_name", + "type": "string", + "required": false, + "description": "The name of the event or attribute to return in the activity logs.", + "enum": null, + "inferrable": true + }, + { + "name": "include_deleted_people", + "type": "boolean", + "required": false, + "description": "If true, return results for deleted people in the list of activities.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token to specify the page of results to return. Use the `next` property from the previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "person_identifier", + "type": "string", + "required": false, + "description": "The identifier for the person to look up, which can be their `id`, `email`, or `cio_id`. Prefix with `cio_` for `cio_id`.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of activity results to retrieve per page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listActivities'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.ListRecentActivities", + "parameters": { + "activity_type": { + "value": "_o:12345", + "type": "string", + "required": false + }, + "customer_id_type": { + "value": "email", + "type": "string", + "required": false + }, + "event_or_attribute_name": { + "value": "purchase", + "type": "string", + "required": false + }, + "include_deleted_people": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "person_identifier": { + "value": "cio_67890", + "type": "string", + "required": false + }, + "results_per_page_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListReportingWebhooks", + "qualifiedName": "CustomerioApi.ListReportingWebhooks", + "fullyQualifiedName": "CustomerioApi.ListReportingWebhooks@1.0.0", + "description": "Retrieve a list of reporting webhooks.\n\nUse this tool to get a list of all reporting webhooks configured in your Customerio account. It should be called when you need to access or manage existing reporting webhooks.", + "parameters": [], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listWebhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.ListReportingWebhooks", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSnippetsWorkspace", + "qualifiedName": "CustomerioApi.ListSnippetsWorkspace", + "fullyQualifiedName": "CustomerioApi.ListSnippetsWorkspace@1.0.0", + "description": "Retrieve a list of reusable content snippets from your workspace.\n\nUse this tool to obtain snippets, such as common footers, which are reusable content pieces in your workspace.", + "parameters": [], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listSnippets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.ListSnippetsWorkspace", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListTransactionalMessages", + "qualifiedName": "CustomerioApi.ListTransactionalMessages", + "fullyQualifiedName": "CustomerioApi.ListTransactionalMessages@1.0.0", + "description": "Retrieve your list of transactional message IDs.\n\nThis tool retrieves a list of your transactional message IDs used for triggering individual deliveries. It does not include delivery instances themselves.", + "parameters": [], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listTransactional'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.ListTransactionalMessages", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWorkspaces", + "qualifiedName": "CustomerioApi.ListWorkspaces", + "fullyQualifiedName": "CustomerioApi.ListWorkspaces@1.0.0", + "description": "Retrieve a list of workspaces in your account.\n\nUse this tool to get information about all workspaces available in your Customerio account. It provides a list that can be used to view or manage workspaces.", + "parameters": [], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listWorkspaces'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.ListWorkspaces", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveEmailSuppression", + "qualifiedName": "CustomerioApi.RemoveEmailSuppression", + "fullyQualifiedName": "CustomerioApi.RemoveEmailSuppression@1.0.0", + "description": "Remove an email address from the suppression list.\n\nUse this tool to remove a specific email address from the email service provider's suppression list, allowing future communications to be sent to it.", + "parameters": [ + { + "name": "email_address_to_remove", + "type": "string", + "required": true, + "description": "The email address to remove from the suppression list, allowing future communications.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_reason", + "type": "string", + "required": true, + "description": "The reason the email address was suppressed (e.g., 'bounces', 'spam_reports').", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteSuppression'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.RemoveEmailSuppression", + "parameters": { + "email_address_to_remove": { + "value": "example@example.com", + "type": "string", + "required": true + }, + "suppression_reason": { + "value": "bounces", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveUnusedSnippet", + "qualifiedName": "CustomerioApi.RemoveUnusedSnippet", + "fullyQualifiedName": "CustomerioApi.RemoveUnusedSnippet@1.0.0", + "description": "Removes an unused snippet from the system.\n\nThis tool removes a snippet that is not in use. If the snippet is currently in use, an error will be returned.", + "parameters": [ + { + "name": "snippet_name", + "type": "string", + "required": true, + "description": "The name of the snippet to be removed. Must be unused to avoid errors.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteSnippet'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.RemoveUnusedSnippet", + "parameters": { + "snippet_name": { + "value": "old_discount_code", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ReplaceCollectionContents", + "qualifiedName": "CustomerioApi.ReplaceCollectionContents", + "fullyQualifiedName": "CustomerioApi.ReplaceCollectionContents@1.0.0", + "description": "Replace the entire contents of a data collection.\n\n Use this tool to completely replace the existing contents of a data collection by specifying the new keys and values. Ideal for cases where a full update is required. Keep in mind the size limitations: collections must not exceed 10 MB and no single row more than 10 KB.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "collection_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier for the collection whose contents are being replaced. This is required for identifying the specific collection to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateCollectionContents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.ReplaceCollectionContents", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "collection_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"key1\":\"value1\",\"key2\":\"value2\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCollectionContents", + "qualifiedName": "CustomerioApi.RetrieveCollectionContents", + "fullyQualifiedName": "CustomerioApi.RetrieveCollectionContents@1.0.0", + "description": "Retrieve contents of a specified collection.\n\nUse this tool to fetch the data stored in a specific collection on the Customerio platform. It returns each row as a JSON object, ideal for accessing stored information quickly.", + "parameters": [ + { + "name": "collection_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the collection to retrieve contents from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCollectionContents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.RetrieveCollectionContents", + "parameters": { + "collection_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCollectionDetails", + "qualifiedName": "CustomerioApi.RetrieveCollectionDetails", + "fullyQualifiedName": "CustomerioApi.RetrieveCollectionDetails@1.0.0", + "description": "Retrieve details about a specific collection.\n\nThis tool retrieves information about a collection, including its schema and name, without including the content of the collection. It should be used when you need information about the structure and title of a collection.", + "parameters": [ + { + "name": "collection_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for a specific collection to retrieve its details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCollection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.RetrieveCollectionDetails", + "parameters": { + "collection_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCustomerMessages", + "qualifiedName": "CustomerioApi.RetrieveCustomerMessages", + "fullyQualifiedName": "CustomerioApi.RetrieveCustomerMessages@1.0.0", + "description": "Retrieve deliveries sent to a customer within a time range.\n\nUse parameters to specify the time range for the messages you want to retrieve. If no time range is provided, it defaults to the most recent 6 months. The tool returns data on when deliveries were created, which may differ from when they were sent.", + "parameters": [ + { + "name": "customer_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the customer whose message deliveries you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_id_type", + "type": "string", + "required": false, + "description": "Specifies the type of customer_id used to reference a person. Options: 'id', 'email', 'cio_id'. Defaults to 'id' if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to retrieve per page. This limits the number of messages returned in a single response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "Token for the page of results to return. Use the `next` property from previous responses to get the next page.", + "enum": null, + "inferrable": true + }, + { + "name": "query_end_timestamp", + "type": "integer", + "required": false, + "description": "The ending timestamp (in integer format) for the query to limit data retrieval to specific time ranges.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_timestamp", + "type": "integer", + "required": false, + "description": "The beginning timestamp for the query in integer format, used to filter messages by start date.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPersonMessages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.RetrieveCustomerMessages", + "parameters": { + "customer_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "customer_id_type": { + "value": "email", + "type": "string", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "query_end_timestamp": { + "value": 1691232000, + "type": "integer", + "required": false + }, + "starting_timestamp": { + "value": 1680307200, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveNewsletterLanguageVariant", + "qualifiedName": "CustomerioApi.RetrieveNewsletterLanguageVariant", + "fullyQualifiedName": "CustomerioApi.RetrieveNewsletterLanguageVariant@1.0.0", + "description": "Get info on a newsletter's language variant in A/B test.\n\nUse this tool to obtain details about a specific language variant of a newsletter that is part of an A/B test. It requires the newsletter ID, test group ID, and language code.", + "parameters": [ + { + "name": "ab_test_group_id", + "type": "string", + "required": true, + "description": "The unique ID of the A/B test group for retrieving the language variant.", + "enum": null, + "inferrable": true + }, + { + "name": "language_tag", + "type": "string", + "required": true, + "description": "Specify the language tag of the newsletter variant. Use an empty string to default to your primary language.", + "enum": null, + "inferrable": true + }, + { + "name": "newsletter_identifier", + "type": "integer", + "required": true, + "description": "Specify the unique identifier of the newsletter to retrieve its language variant details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getNewsletterVariantTranslationTest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.RetrieveNewsletterLanguageVariant", + "parameters": { + "ab_test_group_id": { + "value": "test-group-abc123", + "type": "string", + "required": true + }, + "language_tag": { + "value": "en-US", + "type": "string", + "required": true + }, + "newsletter_identifier": { + "value": 5678, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveNewsletterMetadata", + "qualifiedName": "CustomerioApi.RetrieveNewsletterMetadata", + "fullyQualifiedName": "CustomerioApi.RetrieveNewsletterMetadata@1.0.0", + "description": "Retrieve metadata for an individual newsletter.\n\nCall this tool to get detailed information about a specific newsletter using its ID.", + "parameters": [ + { + "name": "newsletter_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the newsletter to retrieve metadata.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getNewsletters'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.RetrieveNewsletterMetadata", + "parameters": { + "newsletter_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SendTransactionalEmail", + "qualifiedName": "CustomerioApi.SendTransactionalEmail", + "fullyQualifiedName": "CustomerioApi.SendTransactionalEmail@1.0.0", + "description": "Send a customizable transactional email.\n\nUse this tool to send a transactional email using Customerio. You can utilize a `transactional_message_id` to specify a template or customize the email by providing `body`, `subject`, and `from` values. If a metrics association is needed, include the `transactional_message_id`. It's designed for sending personalized messages while tracking delivery metrics effectively.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'sendEmail'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.SendTransactionalEmail", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"transactional_message_id\": \"12345\", \"recipient\": \"example@domain.com\", \"body\": \"Hello, this is a test email.\", \"subject\": \"Test Email\", \"from\": \"no-reply@domain.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SendTransactionalPushNotification", + "qualifiedName": "CustomerioApi.SendTransactionalPushNotification", + "fullyQualifiedName": "CustomerioApi.SendTransactionalPushNotification@1.0.0", + "description": "Send a customized transactional push notification.\n\nThis tool sends a transactional push notification using a specified message template from Customerio. You can override template values at send time using the `transactional_message_id`, which can be the numerical ID or the Trigger Name. Use this tool to send personalized push messages to users.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'sendPush'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.SendTransactionalPushNotification", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"transactional_message_id\":\"12345\",\"recipient\":\"user@example.com\",\"message\":\"Your order has been shipped!\",\"custom_data\":{\"tracking_number\":\"ABC123\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SendTransactionalSms", + "qualifiedName": "CustomerioApi.SendTransactionalSms", + "fullyQualifiedName": "CustomerioApi.SendTransactionalSms@1.0.0", + "description": "Send a transactional SMS message using a template.\n\nSend a transactional SMS by providing a `transactional_message_id`, which can be the numerical ID or *Trigger Name* of your message template. This allows you to automate SMS communications using predefined templates.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'sendSMS'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.SendTransactionalSms", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"transactional_message_id\": \"12345\", \"recipient\": \"+1234567890\", \"message_variables\": {\"name\": \"John\", \"order_id\": \"67890\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SuppressEmailAtEsp", + "qualifiedName": "CustomerioApi.SuppressEmailAtEsp", + "fullyQualifiedName": "CustomerioApi.SuppressEmailAtEsp@1.0.0", + "description": "Suppress an email address at the email service provider.\n\nUse this tool to suppress an email address at the email service provider (ESP). It ensures that the email address will no longer receive emails through the ESP, while allowing the contact to remain in your Customer.io workspace.", + "parameters": [ + { + "name": "email_address_to_suppress", + "type": "string", + "required": true, + "description": "The email address of the person you want to suppress at the ESP.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_reason", + "type": "string", + "required": true, + "description": "Specify the reason for suppressing the email address, such as 'bounces' or 'spam_reports'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postSuppression'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.SuppressEmailAtEsp", + "parameters": { + "email_address_to_suppress": { + "value": "example@example.com", + "type": "string", + "required": true + }, + "suppression_reason": { + "value": "spam_reports", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TranslateCampaignMessage", + "qualifiedName": "CustomerioApi.TranslateCampaignMessage", + "fullyQualifiedName": "CustomerioApi.TranslateCampaignMessage@1.0.0", + "description": "Fetches a translated message for a specific campaign action.\n\nReturns a translated version of a message in a campaign using the action ID and specified language. Use when a translated version of a campaign message is needed.", + "parameters": [ + { + "name": "campaign_action_id", + "type": "integer", + "required": true, + "description": "The ID of the action to look up or act on within the campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_id", + "type": "integer", + "required": true, + "description": "The numeric ID of the campaign to get information about or trigger.", + "enum": null, + "inferrable": true + }, + { + "name": "target_language", + "type": "string", + "required": true, + "description": "A language tag for the language variant to translate to. Defaults to the default language if empty. Returns an error if the variant doesn't exist.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCampaignActionTranslation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.TranslateCampaignMessage", + "parameters": { + "campaign_action_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "campaign_id": { + "value": 67890, + "type": "integer", + "required": true + }, + "target_language": { + "value": "es", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TriggerBroadcastMessage", + "qualifiedName": "CustomerioApi.TriggerBroadcastMessage", + "fullyQualifiedName": "CustomerioApi.TriggerBroadcastMessage@1.0.0", + "description": "Trigger a broadcast to a specific audience using Customerio.\n\n This tool triggers a broadcast campaign in Customerio, allowing for message personalization via provided data. It should be called when you need to send messages to an audience already in your workspace, specified by a segment, email list, customer ID list, user map, or data file. It's important to handle existing users only, as the tool won't add or identify new users. Set flags to skip over non-existent users if needed. Designed for large audience message dispatch rather than individual interactions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "broadcast_id", + "type": "integer", + "required": false, + "description": "The unique ID of the broadcast campaign you want to trigger in Customerio. This ID is required to specify which broadcast to activate. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'triggerBroadcast'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.TriggerBroadcastMessage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "broadcast_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"audience\":{\"segment\":\"active_users\"},\"message\":{\"subject\":\"Exciting Update!\",\"body\":\"Check out our new features!\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateBroadcastAction", + "qualifiedName": "CustomerioApi.UpdateBroadcastAction", + "fullyQualifiedName": "CustomerioApi.UpdateBroadcastAction@1.0.0", + "description": "Update the contents of a broadcast action.\n\n Use this tool to update the body of messages or HTTP requests in a broadcast action. It should be called when you need to modify the content associated with a specific broadcast action in Customerio.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "broadcast_id", + "type": "integer", + "required": false, + "description": "The identifier of a broadcast to update its contents. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "lookup_action_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the action to update or modify in the broadcast. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateBroadcastAction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UpdateBroadcastAction", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "broadcast_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "lookup_action_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"message\":\"Updated message content\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateBroadcastActionLanguage", + "qualifiedName": "CustomerioApi.UpdateBroadcastActionLanguage", + "fullyQualifiedName": "CustomerioApi.UpdateBroadcastActionLanguage@1.0.0", + "description": "Update the translation for a broadcast action.\n\n Use this tool to update the translation of a specific broadcast action, including message bodies or HTTP request content. This can be useful when you need to update translations for different languages in your broadcast actions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "broadcast_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier for the broadcast you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "action_id", + "type": "integer", + "required": false, + "description": "The ID of the broadcast action you wish to update or query. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "broadcast_action_language", + "type": "string", + "required": false, + "description": "Specify the language tag for the broadcast translation. Defaults to the default language if an empty string is provided. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateBroadcastActionLanguage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UpdateBroadcastActionLanguage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "broadcast_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "action_id": { + "value": 456, + "type": "integer", + "required": false + }, + "broadcast_action_language": { + "value": "fr", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"message\":\"Bonjour, ceci est un message de diffusion mis à jour.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCampaignAction", + "qualifiedName": "CustomerioApi.UpdateCampaignAction", + "fullyQualifiedName": "CustomerioApi.UpdateCampaignAction@1.0.0", + "description": "Update campaign action details and content.\n\n This tool updates the contents of a specific campaign action, allowing modifications to messages and HTTP requests. Use it to edit existing campaign steps.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "campaign_id", + "type": "integer", + "required": false, + "description": "The numeric ID of the specific campaign to update or retrieve information about. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "action_id", + "type": "integer", + "required": false, + "description": "The identifier for the specific action within a campaign to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateCampaignAction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UpdateCampaignAction", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "campaign_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "action_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"message\":\"Updated campaign action content\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCampaignActionTranslation", + "qualifiedName": "CustomerioApi.UpdateCampaignActionTranslation", + "fullyQualifiedName": "CustomerioApi.UpdateCampaignActionTranslation@1.0.0", + "description": "Update a language variant of a campaign action.\n\n Use this tool to update the contents of a language variant for a specific campaign action, including the message body and HTTP requests.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "campaign_id", + "type": "integer", + "required": false, + "description": "The ID of the campaign to update or retrieve information about. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "action_id", + "type": "integer", + "required": false, + "description": "The ID of the action to look up or act on for the campaign. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "language_tag", + "type": "string", + "required": false, + "description": "The language tag for the campaign action variant. Use an empty string for the default language. If the variant doesn't exist, an error is returned. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateCampaignActionTranslation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UpdateCampaignActionTranslation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "campaign_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "action_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "language_tag": { + "value": "en-US", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"message\":\"Hello, world!\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCollectionInfo", + "qualifiedName": "CustomerioApi.UpdateCollectionInfo", + "fullyQualifiedName": "CustomerioApi.UpdateCollectionInfo@1.0.0", + "description": "Update collection name or replace its contents in Customerio.\n\n Use this tool to update the name or fully replace the contents of a specific collection in Customerio. Be careful when changing the collection name if it's referenced in active campaigns, as it will cause the references to return an empty data set. Ensure the collection size is within 10 MB and individual rows are no more than 10 KB.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "collection_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier for the collection to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateCollection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UpdateCollectionInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "collection_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Collection Name\", \"data\": [{\"id\": 1, \"value\": \"New Value 1\"}, {\"id\": 2, \"value\": \"New Value 2\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCustomerAttributes", + "qualifiedName": "CustomerioApi.UpdateCustomerAttributes", + "fullyQualifiedName": "CustomerioApi.UpdateCustomerAttributes@1.0.0", + "description": "Add or update customer attribute metadata in your workspace.\n\nUse this tool to add new customer attributes or update existing ones. It helps in managing customer data like names and emails, enhancing data understanding for AI tools, and setting sensitivity levels for premium users.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateAttributeMetadata'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UpdateCustomerAttributes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"customer_id\":\"12345\",\"attributes\":{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"premium_user\":true}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEventMetadata", + "qualifiedName": "CustomerioApi.UpdateEventMetadata", + "fullyQualifiedName": "CustomerioApi.UpdateEventMetadata@1.0.0", + "description": "Update or add new events in the workspace.\n\nThis tool allows you to update existing events or add new ones in the Customerio workspace. It is useful for managing customer actions and integrating new events. Events must be associated with customers via Pipelines or Track APIs to appear in the Data Index.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateEventMetadata'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UpdateEventMetadata", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"event_name\": \"purchase_made\", \"customer_id\": \"12345\", \"timestamp\": \"2023-10-05T12:00:00Z\", \"properties\": {\"amount\": 99.99, \"currency\": \"USD\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateNewsletterContent", + "qualifiedName": "CustomerioApi.UpdateNewsletterContent", + "fullyQualifiedName": "CustomerioApi.UpdateNewsletterContent@1.0.0", + "description": "Update a newsletter variant's content.\n\n Use this tool to update the content of a specific newsletter variant, such as a version in a different language or part of an A/B test. Ideal for modifying the body or detail changes in a newsletter.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "newsletter_identifier", + "type": "integer", + "required": false, + "description": "The identifier of the newsletter you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "message_content_id", + "type": "integer", + "required": false, + "description": "The identifier for a message within a newsletter, used in A/B tests or multiple language variants. Retrieve IDs via getNewsletters. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateNewsletterVariant'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UpdateNewsletterContent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "newsletter_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "message_content_id": { + "value": 456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"title\": \"New Newsletter Title\", \"body\": \"This is the updated content for our newsletter.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateNewsletterTestTranslation", + "qualifiedName": "CustomerioApi.UpdateNewsletterTestTranslation", + "fullyQualifiedName": "CustomerioApi.UpdateNewsletterTestTranslation@1.0.0", + "description": "Update a newsletter's translation for A/B testing.\n\n This tool updates the translation of a specific newsletter variant within an A/B test. It's used when you need to modify the language content for different test groups in newsletter campaigns.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "newsletter_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier for the newsletter. Use this to specify which newsletter to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "ab_test_group_id", + "type": "string", + "required": false, + "description": "The identifier for the A/B test group to update the newsletter translation for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "newsletter_language_tag", + "type": "string", + "required": false, + "description": "Specify a language tag for the newsletter translation. Utilize an empty string to default to your system's language. Invalid tags result in an error. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateNewsletterTestTranslation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UpdateNewsletterTestTranslation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "newsletter_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "ab_test_group_id": { + "value": "group_1", + "type": "string", + "required": false + }, + "newsletter_language_tag": { + "value": "en-US", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"subject\":\"New Updates Available!\",\"body\":\"Check out our latest features.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateNewsletterVariantTranslation", + "qualifiedName": "CustomerioApi.UpdateNewsletterVariantTranslation", + "fullyQualifiedName": "CustomerioApi.UpdateNewsletterVariantTranslation@1.0.0", + "description": "Update a newsletter variant's translation.\n\n Use this tool to update the translation for a specific variant of a newsletter. This is applicable when your newsletter does not include A/B tests. For A/B tests, you should use a separate tool. Call this tool when you need to modify the language content of a newsletter variant for a given language.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "newsletter_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier for a newsletter that you want to update the translation for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "language_tag", + "type": "string", + "required": false, + "description": "A language tag for the newsletter variant. If omitted, defaults to the company's default language. An error is returned if the language variant doesn't exist. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateNewsletterVariantTranslation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UpdateNewsletterVariantTranslation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "newsletter_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "language_tag": { + "value": "es", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"subject\":\"Nuevo Boletín\",\"content\":\"Contenido actualizado para la variante de boletín.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOrCreateSnippet", + "qualifiedName": "CustomerioApi.UpdateOrCreateSnippet", + "fullyQualifiedName": "CustomerioApi.UpdateOrCreateSnippet@1.0.0", + "description": "Update or create a snippet with a unique name.\n\nUse this tool to update an existing snippet or create a new one. Pass a unique `name` and corresponding `value`. If the snippet already exists, its value will be updated; otherwise, a new snippet will be created.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateSnippets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UpdateOrCreateSnippet", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"welcome_message\", \"value\": \"Welcome to our platform!\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateReportingWebhook", + "qualifiedName": "CustomerioApi.UpdateReportingWebhook", + "fullyQualifiedName": "CustomerioApi.UpdateReportingWebhook@1.0.0", + "description": "Update the configuration of a reporting webhook.\n\n Use this tool to modify the settings of a reporting webhook, such as enabling or disabling events or changing the webhook URL.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "webhook_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier for the specific webhook to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UpdateReportingWebhook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "webhook_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"enabled\": true, \"url\": \"https://example.com/webhook\", \"events\": [\"eventA\", \"eventB\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTransactionalEmail", + "qualifiedName": "CustomerioApi.UpdateTransactionalEmail", + "fullyQualifiedName": "CustomerioApi.UpdateTransactionalEmail@1.0.0", + "description": "Overwrite a transactional email's body with new content.\n\n Use this tool to update and fully overwrite the body of an existing transactional email. Ensure the updated content is tested as it will affect all future transactional email requests.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "transactional_email_id", + "type": "integer", + "required": false, + "description": "The ID of your transactional email. Found in the UI or URL of the transactional message. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "content_variant_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the specific content version of your transactional email, found in the message URL. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTransactional'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UpdateTransactionalEmail", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "transactional_email_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "content_variant_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"subject\": \"Welcome to our service!\", \"body\": \"Thank you for signing up! Here's what you can expect...\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTransactionalMessageVariant", + "qualifiedName": "CustomerioApi.UpdateTransactionalMessageVariant", + "fullyQualifiedName": "CustomerioApi.UpdateTransactionalMessageVariant@1.0.0", + "description": "Fully update a language variant of a transactional message.\n\n Use this tool to overwrite the body and details of a specific language variant for an existing transactional message. This is useful for ensuring the message content is up-to-date and accurate across different languages.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "transactional_message_id", + "type": "integer", + "required": false, + "description": "The identifier of the transactional message. Found in the UI or URL of the message, e.g., `/transactional/3/templates/139` where the ID is 3. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "language_tag", + "type": "string", + "required": false, + "description": "Specify a language tag for a language variant. If not provided, default language is used. Errors if variant does not exist. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTransactionalVariant'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UpdateTransactionalMessageVariant", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "transactional_message_id": { + "value": 3, + "type": "integer", + "required": false + }, + "language_tag": { + "value": "en", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"subject\": \"Welcome to Our Service!\", \"body\": \"Thank you for joining us!\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UploadCsvToCustomerio", + "qualifiedName": "CustomerioApi.UploadCsvToCustomerio", + "fullyQualifiedName": "CustomerioApi.UploadCsvToCustomerio@1.0.0", + "description": "Upload a CSV file to Customerio for bulk data processing.\n\nUse this tool to upload a CSV file containing people, events, objects, or relationships to Customerio. The CSV must be hosted at a short-lived public URL, ideally expiring 2 hours after the upload. The endpoint performs basic validations and queues the import for processing, which occurs in multiple stages. You will receive a confirmation and a URL to check the import status. Any errors or warnings during the import can be accessed through downloadable CSV reports available via the export endpoints.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'import'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioApi.UploadCsvToCustomerio", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"csv_url\": \"https://example.com/short-lived-csv-url.csv\", \"description\": \"Bulk upload of customer data\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:28:50.574Z", + "summary": "**Customer.io API Toolkit** provides a set of tools that enable easy interaction with the Customer.io App API, enhancing marketing automation workflows.\n\n**Capabilities:**\n- Create, manage, and delete segments, collections, and newsletters.\n- Fetch detailed delivery and performance metrics for campaigns and transactional messages.\n- Manage customer data with CRUD operations on customer attributes and activities.\n- Retrieve insights on message performance, including link metrics and suppression statuses.\n\n**Secrets:**\n- Use the `CUSTOMERIO_API_KEY` to authenticate API requests, ensuring secure access to your Customer.io resources." +} diff --git a/data/toolkits/customeriopipelinesapi.json b/data/toolkits/customeriopipelinesapi.json new file mode 100644 index 000000000..c17cce4f1 --- /dev/null +++ b/data/toolkits/customeriopipelinesapi.json @@ -0,0 +1,495 @@ +{ + "id": "CustomerioPipelinesApi", + "label": "Customer.io Pipelines API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the Customer.io Track API", + "metadata": { + "category": "customer-support", + "iconUrl": "https://design-system.arcade.dev/icons/customerio.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/customer-support/customerio-pipelines-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "AddToGroup", + "qualifiedName": "CustomerioPipelinesApi.AddToGroup", + "fullyQualifiedName": "CustomerioPipelinesApi.AddToGroup@1.0.0", + "description": "Add a person to a specified group.\n\nThis tool adds a person to a specified group, such as companies or classes, using their user ID and group ID. It automates user grouping for Customer.io destinations.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enable_strict_validation", + "type": "string", + "required": false, + "description": "Set to '1' to enable strict validation, returning HTTP error codes for validation failures. Otherwise, the API operates in permissive mode. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_TRACK_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_TRACK_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioPipelinesApi.AddToGroup", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enable_strict_validation": { + "value": "1", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"user_id\":\"user_12345\",\"group_id\":\"group_67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AliasUserIdentity", + "qualifiedName": "CustomerioPipelinesApi.AliasUserIdentity", + "fullyQualifiedName": "CustomerioPipelinesApi.AliasUserIdentity@1.0.0", + "description": "Reconcile anonymous and identified user IDs for select destinations.\n\nThe tool is used to reconcile identifiers in systems that don't automatically handle identity changes, such as when transitioning from an anonymous to an identified user. It is typically used before identifying a user with a `userId`, particularly for destinations like Mixpanel that don't automatically associate data between anonymous and identified states.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enable_strict_validation", + "type": "string", + "required": false, + "description": "Set to 'True' to enable strict validation, returning HTTP error codes (400/401) for validation failures. Defaults to permissive mode if not set. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_TRACK_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_TRACK_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'alias'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioPipelinesApi.AliasUserIdentity", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enable_strict_validation": { + "value": "True", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"anonymous_user_id\":\"anon_12345\",\"identified_user_id\":\"user_67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "IdentifyPersonAndAssignTraits", + "qualifiedName": "CustomerioPipelinesApi.IdentifyPersonAndAssignTraits", + "fullyQualifiedName": "CustomerioPipelinesApi.IdentifyPersonAndAssignTraits@1.0.0", + "description": "Identify a person and assign traits using Customerio.\n\nUse this tool to identify a person by user ID, anonymous ID, or email (for Customer.io destinations), and assign traits to them. This is useful for tracking and personalizing user data.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enable_strict_validation", + "type": "string", + "required": false, + "description": "Set to `True` to enable strict HTTP error validation (400/401) for validation failures. Defaults to permissive mode when `False`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_TRACK_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_TRACK_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'identify'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioPipelinesApi.IdentifyPersonAndAssignTraits", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enable_strict_validation": { + "value": "True", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"id\":\"user_12345\",\"traits\":{\"email\":\"user@example.com\",\"first_name\":\"John\",\"last_name\":\"Doe\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SendBatchRequests", + "qualifiedName": "CustomerioPipelinesApi.SendBatchRequests", + "fullyQualifiedName": "CustomerioPipelinesApi.SendBatchRequests@1.0.0", + "description": "Send multiple requests in a single batch call.\n\nUse this tool to efficiently send arrays of `identify`, `group`, `track`, `page`, and/or `screen` requests in one API call. This increases performance by handling up to 500KB of data in a single submission, benefiting from a unified context and integration settings for all requests.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enable_strict_mode", + "type": "string", + "required": false, + "description": "Set to `True` to enable strict validation, returning HTTP error codes (400/401) for validation failures instead of HTTP 200. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_TRACK_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_TRACK_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioPipelinesApi.SendBatchRequests", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enable_strict_mode": { + "value": "True", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"requests\":[{\"type\":\"identify\",\"data\":{\"id\":\"user_123\",\"traits\":{\"email\":\"user@example.com\"}}},{\"type\":\"track\",\"data\":{\"event\":\"purchase\",\"userId\":\"user_123\",\"properties\":{\"productId\":\"prod_456\",\"revenue\":29.99}}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SendPageViewEvent", + "qualifiedName": "CustomerioPipelinesApi.SendPageViewEvent", + "fullyQualifiedName": "CustomerioPipelinesApi.SendPageViewEvent@1.0.0", + "description": "Sends a page view event for tracking user interactions.\n\nUse this tool to send page view events for tracking when users view a page. Typically used in single-page apps where route changes need explicit tracking.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enable_strict_mode", + "type": "string", + "required": false, + "description": "Set to '1' to enable strict validation, returning 400/401 for errors. Any other value uses permissive mode logging. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_TRACK_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_TRACK_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'page'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioPipelinesApi.SendPageViewEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enable_strict_mode": { + "value": "1", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"user_id\": \"12345\", \"page\": \"/home\", \"timestamp\": \"2023-10-01T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SendScreenViewEvent", + "qualifiedName": "CustomerioPipelinesApi.SendScreenViewEvent", + "fullyQualifiedName": "CustomerioPipelinesApi.SendScreenViewEvent@1.0.0", + "description": "Send a screen view event for app usage analytics.\n\nThis tool sends a screen view event to help understand app usage by tracking which screens users navigate to. It should be called whenever a user views a page in the app.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enable_strict_validation", + "type": "string", + "required": false, + "description": "Enable strict validation for returning proper HTTP error codes (400/401) for failures. Set to `1` to enable. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_TRACK_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_TRACK_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'screen'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioPipelinesApi.SendScreenViewEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enable_strict_validation": { + "value": "1", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"user_id\":\"12345\",\"screen_name\":\"Home\",\"timestamp\":\"2023-10-10T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TrackUserEvent", + "qualifiedName": "CustomerioPipelinesApi.TrackUserEvent", + "fullyQualifiedName": "CustomerioPipelinesApi.TrackUserEvent@1.0.0", + "description": "Record user events with properties for analysis.\n\nUse this tool to send and record events associated with user actions on your website or app. Provide an event name and properties like item details when someone performs an action, such as adding a product to their cart. This helps in understanding and analyzing user behavior.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "enable_strict_validation", + "type": "string", + "required": false, + "description": "Set to `True` to enable strict validation and return error codes (400/401) for validation failures. `False` for permissive mode. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_TRACK_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_TRACK_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'track'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioPipelinesApi.TrackUserEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "enable_strict_validation": { + "value": "True", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"event\":\"product_added\",\"properties\":{\"product_id\":\"12345\",\"category\":\"electronics\",\"price\":299.99}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:28:04.085Z", + "summary": "**CustomerioPipelinesApi** enables seamless interaction with the Customer.io Track API, allowing LLMs to manage user data efficiently. This toolkit excels in automating user grouping, event tracking, and identity reconciliation, all essential for effective marketing and analytics.\n\n**Capabilities:**\n- Automate user grouping based on specified criteria.\n- Reconcile anonymous and identified user IDs for accurate tracking.\n- Identify users and assign traits for personalized experiences.\n- Send batch requests for improved performance and reduced overhead.\n- Track user interactions through page and screen view events.\n\n**OAuth:** No OAuth configuration is required; however, API keys are needed for accessing the toolkit's functionality.\n\n**Secrets:** API key type secrets are used; for example, `CUSTOMERIO_TRACK_API_KEY` is required for authentication." +} diff --git a/data/toolkits/customeriotrackapi.json b/data/toolkits/customeriotrackapi.json new file mode 100644 index 000000000..45ca7a63e --- /dev/null +++ b/data/toolkits/customeriotrackapi.json @@ -0,0 +1,1049 @@ +{ + "id": "CustomerioTrackApi", + "label": "Customer.io Track API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the Customer.io Track API", + "metadata": { + "category": "customer-support", + "iconUrl": "https://design-system.arcade.dev/icons/customerio.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/customer-support/customerio-track-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "AddDeviceToCustomerProfile", + "qualifiedName": "CustomerioTrackApi.AddDeviceToCustomerProfile", + "fullyQualifiedName": "CustomerioTrackApi.AddDeviceToCustomerProfile@1.0.0", + "description": "Add or update a device for a customer profile.\n\n Use this tool to add or update iOS and Android devices linked to a customer's profile. Ideal for managing multiple devices associated with a customer.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "unique_person_identifier", + "type": "string", + "required": false, + "description": "A unique identifier for a person, such as `id`, `email`, or `cio_id` prefixed with `cio_`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "unknown" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'add_device'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.AddDeviceToCustomerProfile", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "unique_person_identifier": { + "value": "cio_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"device_id\":\"abc123\",\"platform\":\"iOS\",\"status\":\"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddPeopleToSegment", + "qualifiedName": "CustomerioTrackApi.AddPeopleToSegment", + "fullyQualifiedName": "CustomerioTrackApi.AddPeopleToSegment@1.0.0", + "description": "Add people to a manual segment by ID.\n\n This tool adds people to a pre-existing manual segment using customer identifiers. It supports up to 1000 customer IDs per request, using identifiers like `id`, `email`, or `cio_id` based on the `id_type` query parameter. Note that this is limited to manual segments, not data-driven ones.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "segment_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier for a manual segment. This can be found on its page in the dashboard or via the App API. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "identifier_type", + "type": "string", + "required": false, + "description": "Specifies the type of identifiers in the `ids` array, such as `id`, `email`, or `cio_id`. Defaults to `id`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "api_key" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'add_to_segment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.AddPeopleToSegment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "segment_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "identifier_type": { + "value": "email", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"ids\":[\"user1@example.com\",\"user2@example.com\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "BatchProcessRequests", + "qualifiedName": "CustomerioTrackApi.BatchProcessRequests", + "fullyQualifiedName": "CustomerioTrackApi.BatchProcessRequests@1.0.0", + "description": "Batch process requests for people and object entities.\n\nThis tool allows batching of multiple requests involving people and object entities into a single operation. Useful for applying changes to various entities simultaneously, such as associating objects with people. Ensure request size limits are observed.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "unknown" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.BatchProcessRequests", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"people\":[{\"id\":\"123\",\"attributes\":{\"email\":\"example@example.com\",\"first_name\":\"John\",\"last_name\":\"Doe\"}}],\"objects\":[{\"id\":\"abc\",\"type\":\"subscription\",\"attributes\":{\"status\":\"active\",\"start_date\":\"2023-01-01\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCustomer", + "qualifiedName": "CustomerioTrackApi.DeleteCustomer", + "fullyQualifiedName": "CustomerioTrackApi.DeleteCustomer@1.0.0", + "description": "Delete a customer and all associated information.\n\nThis tool deletes a customer and their information from Customer.io. It should be called when you want to completely remove a customer from the database. Note: After deletion, customers may be accidentally recreated if new data is sent through other means.", + "parameters": [ + { + "name": "customer_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a person, which can be an ID, email, or 'cio_id'. Use 'cio_' prefix for 'cio_id'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "unknown" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.DeleteCustomer", + "parameters": { + "customer_identifier": { + "value": "user@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrackApiRegion", + "qualifiedName": "CustomerioTrackApi.GetTrackApiRegion", + "fullyQualifiedName": "CustomerioTrackApi.GetTrackApiRegion@1.0.0", + "description": "Retrieve the region and URL for Track API credentials.\n\nUse this tool to find the appropriate region and URL necessary for Track API requests. It also provides the environment ID representing the workspace for which the credentials are valid. This is essential for setting up correct API calls.", + "parameters": [], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "unknown" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRegion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.GetTrackApiRegion", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GlobalUnsubscribeUser", + "qualifiedName": "CustomerioTrackApi.GlobalUnsubscribeUser", + "fullyQualifiedName": "CustomerioTrackApi.GlobalUnsubscribeUser@1.0.0", + "description": "Set a user's global unsubscribe status in Customer.io.\n\nUse this tool to set a person's global unsubscribe status to true in Customer.io, attributed to a specific email delivery. Ideal when managing unsubscribe actions outside the default subscription pathways. It helps in segmenting audiences based on unsubscribe actions. Note: For custom subscription centers, additional requests are needed to manage custom attributes.", + "parameters": [ + { + "name": "delivery_id_for_unsubscription", + "type": "string", + "required": true, + "description": "The unique identifier of the delivery associated with the unsubscription request. This links the unsubscribe action to a specific email or message delivery.", + "enum": null, + "inferrable": true + }, + { + "name": "set_unsubscribed_attribute", + "type": "boolean", + "required": false, + "description": "If true, sets a person's `unsubscribed` attribute to true, associated with a specific delivery.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "unknown" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'unsubscribe'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.GlobalUnsubscribeUser", + "parameters": { + "delivery_id_for_unsubscription": { + "value": "1234567890", + "type": "string", + "required": true + }, + "set_unsubscribed_attribute": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ManageEntity", + "qualifiedName": "CustomerioTrackApi.ManageEntity", + "fullyQualifiedName": "CustomerioTrackApi.ManageEntity@1.0.0", + "description": "Create, update, or delete entities and manage relationships.\n\nUse this tool to manage people or objects, including associating them with other entities. Useful for handling companies, courses, products, and more.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "unknown" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'entity'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.ManageEntity", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"entity_type\":\"person\",\"id\":\"12345\",\"attributes\":{\"email\":\"example@example.com\",\"first_name\":\"John\",\"last_name\":\"Doe\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MergeCustomerProfiles", + "qualifiedName": "CustomerioTrackApi.MergeCustomerProfiles", + "fullyQualifiedName": "CustomerioTrackApi.MergeCustomerProfiles@1.0.0", + "description": "Merge two customer profiles into one primary profile.\n\nUse this tool to merge two customer profiles. The primary profile remains and the secondary is deleted. Ensure the primary profile exists in Customer.io before calling this tool. The merge includes unfilled attributes, recent events, segments, and campaign journeys from the secondary to the primary.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "unknown" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'merge'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.MergeCustomerProfiles", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"primary_profile_id\": \"primary123\", \"secondary_profile_id\": \"secondary456\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveCustomerDevice", + "qualifiedName": "CustomerioTrackApi.RemoveCustomerDevice", + "fullyQualifiedName": "CustomerioTrackApi.RemoveCustomerDevice@1.0.0", + "description": "Remove a device from a customer's profile.\n\nThis tool removes a specified device from a customer's profile in Customer.io. It should be called when you need to ensure a device is detached from a customer's profile to prevent re-adding it accidentally.", + "parameters": [ + { + "name": "customer_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for a person in the system. Can be `id`, `email`, or `cio_id` (prefixed with `cio_`).", + "enum": null, + "inferrable": true + }, + { + "name": "device_unique_id", + "type": "string", + "required": true, + "description": "The ID representing the device to be removed from the customer's profile.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "unknown" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_device'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.RemoveCustomerDevice", + "parameters": { + "customer_identifier": { + "value": "email@example.com", + "type": "string", + "required": true + }, + "device_unique_id": { + "value": "device-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveUserFromSegment", + "qualifiedName": "CustomerioTrackApi.RemoveUserFromSegment", + "fullyQualifiedName": "CustomerioTrackApi.RemoveUserFromSegment@1.0.0", + "description": "Remove users from a manual segment by ID.\n\n Use this tool to remove users from a manual segment by specifying their IDs. Note that this functionality requires each user to have an 'id' attribute, and cannot be used for data-driven segments.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "segment_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier for the segment. Found on the segment's page in the dashboard under 'Usage'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "identification_type", + "type": "string", + "required": false, + "description": "The type of identifiers used for the users to be removed. Options are 'id', 'email', or 'cio_id'. Defaults to 'id' if not specified. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "unknown" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'remove_from_segment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.RemoveUserFromSegment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "segment_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "identification_type": { + "value": "email", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"user_ids\":[\"user@example.com\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ReportCustomMetrics", + "qualifiedName": "CustomerioTrackApi.ReportCustomMetrics", + "fullyQualifiedName": "CustomerioTrackApi.ReportCustomMetrics@1.0.0", + "description": "Report metrics from non-native Customer.io channels.\n\nUse this tool to report metrics from channels not supported natively by Customer.io or those not using their SDKs. It is useful for tracking user interactions like clicks or conversions using the CIO-Delivery-ID as a UTM parameter.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "unknown" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'metrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.ReportCustomMetrics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"event\":\"user_clicked\",\"properties\":{\"user_id\":\"12345\",\"utm_source\":\"newsletter\",\"utm_medium\":\"email\",\"utm_campaign\":\"spring_sale\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SendCustomerEvent", + "qualifiedName": "CustomerioTrackApi.SendCustomerEvent", + "fullyQualifiedName": "CustomerioTrackApi.SendCustomerEvent@1.0.0", + "description": "Send an event associated with a customer by identifier.\n\n This tool sends an event tied to a specific customer, identified by a unique identifier. Events can be page views, screen views, or custom events. Use this tool to track customer interactions on websites or apps, ensuring events are associated with the correct customer profile. Reserved properties can override campaign settings if included.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "customer_identifier", + "type": "string", + "required": false, + "description": "A unique identifier for a person, such as `id`, `email`, or `cio_id`, depending on workspace settings. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "unknown" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'track'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.SendCustomerEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "customer_identifier": { + "value": "customer@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"event\":\"page_view\",\"properties\":{\"url\":\"https://example.com\",\"title\":\"Example Page\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SubmitFormResponse", + "qualifiedName": "CustomerioTrackApi.SubmitFormResponse", + "fullyQualifiedName": "CustomerioTrackApi.SubmitFormResponse@1.0.0", + "description": "Submit and record form responses with Customer.io.\n\n Use this tool to submit form responses to Customer.io. It creates or updates a form connection if the `form_id` is unfamiliar. Ensure `data` includes identifiers like `id` or `email` to recognize the respondent. Additional data fields map directly to user attributes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "form_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the form. If unrecognized, a new form connection is created. Choose a meaningful or traceable value. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "unknown" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'submitForm'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.SubmitFormResponse", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "form_identifier": { + "value": "user_feedback_form", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"id\":\"12345\",\"email\":\"user@example.com\",\"feedback\":\"Great service!\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SuppressCustomerProfile", + "qualifiedName": "CustomerioTrackApi.SuppressCustomerProfile", + "fullyQualifiedName": "CustomerioTrackApi.SuppressCustomerProfile@1.0.0", + "description": "Permanently delete and suppress a customer profile.\n\nThis tool deletes a customer profile and suppresses the person's identifier(s) to prevent future re-addition. Use mainly for GDPR/CCPA compliance. Once suppressed, the profile cannot be recovered. If suppression is not necessary, consider other subscription preference attributes.", + "parameters": [ + { + "name": "unique_person_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a customer, which can be an ID, email, or 'cio_id' (prefixed with 'cio_').", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "api_key" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'suppress'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.SuppressCustomerProfile", + "parameters": { + "unique_person_identifier": { + "value": "cio_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TrackAnonymousEvent", + "qualifiedName": "CustomerioTrackApi.TrackAnonymousEvent", + "fullyQualifiedName": "CustomerioTrackApi.TrackAnonymousEvent@1.0.0", + "description": "Log anonymous events for unidentified users.\n\nUse this tool to log anonymous events for individuals who have not been identified yet. Events can be of type `page`, `screen`, or `event` and are useful for tracking website page views, app screen views, or other activities. Helps in associating events with users for triggering campaigns if merged later.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "unknown" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'trackAnonymous'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.TrackAnonymousEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"event\":\"page_view\",\"properties\":{\"url\":\"https://example.com/home\",\"title\":\"Home Page\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UnsuppressCustomerProfile", + "qualifiedName": "CustomerioTrackApi.UnsuppressCustomerProfile", + "fullyQualifiedName": "CustomerioTrackApi.UnsuppressCustomerProfile@1.0.0", + "description": "Unsuppress a customer profile in Customer.io.\n\nUse this tool to unsuppress a customer profile, making the identifier available again in Customer.io. This will not restore previous profile data, only make the identifier reusable.", + "parameters": [ + { + "name": "customer_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a customer, which can be an ID, email, or prefixed cio_id, based on workspace settings.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "api_key" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'unsuppress'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.UnsuppressCustomerProfile", + "parameters": { + "customer_identifier": { + "value": "user123@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOrAddPerson", + "qualifiedName": "CustomerioTrackApi.UpdateOrAddPerson", + "fullyQualifiedName": "CustomerioTrackApi.UpdateOrAddPerson@1.0.0", + "description": "Add or update a person's information in the database.\n\n Use this tool to add a new person or update existing person details based on identifiers. If no individual is found with the given identifiers, a new person is added. If existing identifiers match, the person's information is updated. For identifier updates, use `cio_id`. If identifiers conflict, the request may result in an Attribute Update Failure warning.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "person_identifier", + "type": "string", + "required": false, + "description": "The unique value used to identify a person, such as an ID, email, or `cio_id` (with `cio_` prefix for updates). Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["CUSTOMERIO_SITE_ID", "CUSTOMERIO_API_KEY"], + "secretsInfo": [ + { + "name": "CUSTOMERIO_SITE_ID", + "type": "api_key" + }, + { + "name": "CUSTOMERIO_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'identify'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "CustomerioTrackApi.UpdateOrAddPerson", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "person_identifier": { + "value": "cio_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"first_name\":\"John\",\"last_name\":\"Doe\",\"email\":\"john.doe@example.com\",\"attributes\":{\"age\":30,\"country\":\"USA\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:28:19.826Z", + "summary": "Arcade Toolkit provides comprehensive tools for integrating with the Customer.io Track API, enabling effective management of customer profiles and interactions. This toolkit facilitates operations such as updating profiles, segmenting users, and logging events.\n\n**Capabilities** \n- Manage customer profiles, including updates, merges, and deletions. \n- Add and remove devices linked to customer profiles. \n- Batch process multiple requests for efficiency. \n- Report custom metrics and log events for customer interactions. \n- Handle anonymous event logging for unidentified users. \n\n**Secrets** \nUtilize the following secrets for API interactions: \n- `CUSTOMERIO_SITE_ID`: Identifier for the Customer.io site. \n- `CUSTOMERIO_API_KEY`: Key for authenticating API requests." +} diff --git a/data/toolkits/datadogapi.json b/data/toolkits/datadogapi.json new file mode 100644 index 000000000..9171da8b5 --- /dev/null +++ b/data/toolkits/datadogapi.json @@ -0,0 +1,43729 @@ +{ + "id": "DatadogApi", + "label": "Datadog API", + "version": "2.0.0", + "description": "Tools that enable LLMs to interact directly with the Datadog API.", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/datadog.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/datadog-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "AcknowledgeOnCallPage", + "qualifiedName": "DatadogApi.AcknowledgeOnCallPage", + "fullyQualifiedName": "DatadogApi.AcknowledgeOnCallPage@2.0.0", + "description": "Acknowledge an On-Call Page alert in Datadog.\n\nUse this tool to acknowledge an On-Call Page alert for a specified page in Datadog. This can be used to indicate that an alert is being addressed.", + "parameters": [ + { + "name": "on_call_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the On-Call Page to acknowledge.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AcknowledgeOnCallPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AcknowledgeOnCallPage", + "parameters": { + "on_call_page_id": { + "value": "abc12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ActivateAwsScanOptions", + "qualifiedName": "DatadogApi.ActivateAwsScanOptions", + "fullyQualifiedName": "DatadogApi.ActivateAwsScanOptions@2.0.0", + "description": "Activate Agentless scan options for an AWS account.", + "parameters": [ + { + "name": "aws_account_id", + "type": "string", + "required": true, + "description": "The ID of the AWS account for which to activate scan options.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_container_vulnerability_scanning", + "type": "boolean", + "required": true, + "description": "Enable scanning for vulnerabilities in containers when set to true.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_lambda_function_scanning", + "type": "boolean", + "required": true, + "description": "Enable scanning of Lambda functions. Set to true to enable, false to disable.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_sensitive_data_scanning", + "type": "boolean", + "required": true, + "description": "Indicates if scanning for sensitive data is enabled for the AWS account.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_vulnerability_scan_host_os", + "type": "boolean", + "required": true, + "description": "Indicates if scanning for vulnerabilities in host operating systems is enabled.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type to activate. Must be 'aws_scan_options'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateAwsScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ActivateAwsScanOptions", + "parameters": { + "aws_account_id": { + "value": "123456789012", + "type": "string", + "required": true + }, + "enable_container_vulnerability_scanning": { + "value": true, + "type": "boolean", + "required": true + }, + "enable_lambda_function_scanning": { + "value": true, + "type": "boolean", + "required": true + }, + "enable_sensitive_data_scanning": { + "value": false, + "type": "boolean", + "required": true + }, + "enable_vulnerability_scan_host_os": { + "value": true, + "type": "boolean", + "required": true + }, + "resource_type": { + "value": "aws_scan_options", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ActivateAzureScanOptions", + "qualifiedName": "DatadogApi.ActivateAzureScanOptions", + "fullyQualifiedName": "DatadogApi.ActivateAzureScanOptions@2.0.0", + "description": "Activate Agentless scan options for Azure subscriptions.\n\nUse this tool to activate Agentless scan options for a specified Azure subscription. This is useful for enabling security scans without deploying agents.", + "parameters": [ + { + "name": "azure_subscription_id", + "type": "string", + "required": false, + "description": "The Azure subscription ID for which to activate the scan options.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_container_vulnerability_scan", + "type": "boolean", + "required": false, + "description": "Set to true to activate scanning for vulnerabilities in containers.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_vulnerability_scan_hosts", + "type": "boolean", + "required": false, + "description": "Indicate if scanning for vulnerabilities in Azure hosts is enabled. Set to true to activate.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type. Always use 'azure_scan_options'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateAzureScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ActivateAzureScanOptions", + "parameters": { + "azure_subscription_id": { + "value": "12345678-1234-1234-1234-123456789abc", + "type": "string", + "required": false + }, + "enable_container_vulnerability_scan": { + "value": true, + "type": "boolean", + "required": false + }, + "enable_vulnerability_scan_hosts": { + "value": false, + "type": "boolean", + "required": false + }, + "resource_type": { + "value": "azure_scan_options", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ActivateGcpScanOptions", + "qualifiedName": "DatadogApi.ActivateGcpScanOptions", + "fullyQualifiedName": "DatadogApi.ActivateGcpScanOptions@2.0.0", + "description": "Activate Agentless scan options for a GCP project.\n\nUse this tool to enable Agentless scanning for a Google Cloud Platform project. This is useful for setting up security scans without deploying agents.", + "parameters": [ + { + "name": "enable_container_vulnerability_scanning", + "type": "boolean", + "required": false, + "description": "Set to true to enable scanning for vulnerabilities in containers.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_vulnerability_host_scanning", + "type": "boolean", + "required": false, + "description": "Set to true to enable scanning for vulnerabilities in hosts in the GCP project.", + "enum": null, + "inferrable": true + }, + { + "name": "gcp_project_id", + "type": "string", + "required": false, + "description": "The Google Cloud Platform project ID for which to activate the scan options.", + "enum": null, + "inferrable": true + }, + { + "name": "gcp_scan_resource_type", + "type": "string", + "required": false, + "description": "The type of GCP scan options resource. This is typically 'gcp_scan_options'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateGcpScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ActivateGcpScanOptions", + "parameters": { + "enable_container_vulnerability_scanning": { + "value": true, + "type": "boolean", + "required": false + }, + "enable_vulnerability_host_scanning": { + "value": false, + "type": "boolean", + "required": false + }, + "gcp_project_id": { + "value": "my-gcp-project-123", + "type": "string", + "required": false + }, + "gcp_scan_resource_type": { + "value": "gcp_scan_options", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddCommentToCase", + "qualifiedName": "DatadogApi.AddCommentToCase", + "fullyQualifiedName": "DatadogApi.AddCommentToCase@2.0.0", + "description": "Add a comment to a specific case in Datadog.\n\nUse this tool to post a comment to a particular case within the Datadog system by providing the case ID.", + "parameters": [ + { + "name": "case_identifier", + "type": "string", + "required": true, + "description": "The unique identifier (UUID or key) for the case to which the comment will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_message", + "type": "string", + "required": true, + "description": "The message content to be added as a comment on the case.", + "enum": null, + "inferrable": true + }, + { + "name": "case_resource_type", + "type": "string", + "required": false, + "description": "Specify the type of resource, always set to 'case'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CommentCase'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AddCommentToCase", + "parameters": { + "case_identifier": { + "value": "e2d93b2f-7d29-4e0c-90a3-3d6c6d3f6223", + "type": "string", + "required": true + }, + "comment_message": { + "value": "This is an updated comment regarding the ongoing investigation.", + "type": "string", + "required": true + }, + "case_resource_type": { + "value": "case", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddDashboardsToList", + "qualifiedName": "DatadogApi.AddDashboardsToList", + "fullyQualifiedName": "DatadogApi.AddDashboardsToList@2.0.0", + "description": "Add dashboards to an existing list in Datadog.\n\n Use this tool to append dashboards to a specified existing dashboard list in Datadog. Ideal for organizing and managing dashboards effectively.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_list_identifier", + "type": "integer", + "required": false, + "description": "Specify the integer ID of the dashboard list where dashboards will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateDashboardListItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AddDashboardsToList", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_list_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"dashboards\":[{\"id\":\"dashboard-id-1\"},{\"id\":\"dashboard-id-2\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddMemberTeamToSuperTeam", + "qualifiedName": "DatadogApi.AddMemberTeamToSuperTeam", + "fullyQualifiedName": "DatadogApi.AddMemberTeamToSuperTeam@2.0.0", + "description": "Add a member team to a super team.\n\nUse this tool to add a specified team as a member of an existing super team by providing the super team's ID.", + "parameters": [ + { + "name": "member_team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the member team to be added to the super team.", + "enum": null, + "inferrable": true + }, + { + "name": "super_team_identifier", + "type": "string", + "required": true, + "description": "The ID of the super team to which the member team will be added. It is a string value.", + "enum": null, + "inferrable": true + }, + { + "name": "member_team_type", + "type": "string", + "required": false, + "description": "Specifies the type of member team to be added. Must be 'member_teams'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AddMemberTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AddMemberTeamToSuperTeam", + "parameters": { + "member_team_identifier": { + "value": "team-1234", + "type": "string", + "required": true + }, + "super_team_identifier": { + "value": "superteam-5678", + "type": "string", + "required": true + }, + "member_team_type": { + "value": "member_teams", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddPermissionToRole", + "qualifiedName": "DatadogApi.AddPermissionToRole", + "fullyQualifiedName": "DatadogApi.AddPermissionToRole@2.0.0", + "description": "Assigns a specific permission to a given role.\n\nUse this tool to add a permission to a specific role within Datadog. It should be called when you need to assign new permissions to a role to adjust user access and capabilities.", + "parameters": [ + { + "name": "role_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the role to which the permission will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "permission_id", + "type": "string", + "required": false, + "description": "ID of the permission to be added to the role.", + "enum": null, + "inferrable": true + }, + { + "name": "permissions_resource_type", + "type": "string", + "required": false, + "description": "The resource type for the permission, should be 'permissions'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AddPermissionToRole'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AddPermissionToRole", + "parameters": { + "role_identifier": { + "value": "admin_role_123", + "type": "string", + "required": true + }, + "permission_id": { + "value": "permission_view_456", + "type": "string", + "required": false + }, + "permissions_resource_type": { + "value": "permissions", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddReadRoleToArchive", + "qualifiedName": "DatadogApi.AddReadRoleToArchive", + "fullyQualifiedName": "DatadogApi.AddReadRoleToArchive@2.0.0", + "description": "Adds a read role to a specified archive.\n\nUse this tool to grant read access to a specific archive by adding a read role. Ideal for managing permissions and ensuring the right users or groups have access to log data archives.", + "parameters": [ + { + "name": "archive_id", + "type": "string", + "required": true, + "description": "The unique identifier for the archive to which a read role will be added. This is required to specify the target archive for access management.", + "enum": null, + "inferrable": true + }, + { + "name": "role_type", + "type": "string", + "required": false, + "description": "The type of role to be added. Must be 'roles'.", + "enum": null, + "inferrable": true + }, + { + "name": "role_unique_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the role to be added to the archive.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AddReadRoleToArchive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AddReadRoleToArchive", + "parameters": { + "archive_id": { + "value": "archive-123456", + "type": "string", + "required": true + }, + "role_type": { + "value": "roles", + "type": "string", + "required": false + }, + "role_unique_identifier": { + "value": "role-78910", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddRoleToRestrictionQuery", + "qualifiedName": "DatadogApi.AddRoleToRestrictionQuery", + "fullyQualifiedName": "DatadogApi.AddRoleToRestrictionQuery@2.0.0", + "description": "Adds a role to a restriction query for logs configuration.\n\nThis tool is used to add a specific role to an existing restriction query in Datadog's logs configuration. Call this tool when you need to update restriction queries by including additional roles.", + "parameters": [ + { + "name": "restriction_query_id", + "type": "string", + "required": true, + "description": "The ID of the restriction query to which a role will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "role_type", + "type": "string", + "required": false, + "description": "The type of the role, expected to be 'roles'.", + "enum": null, + "inferrable": true + }, + { + "name": "role_unique_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the role to be added to the restriction query.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AddRoleToRestrictionQuery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AddRoleToRestrictionQuery", + "parameters": { + "restriction_query_id": { + "value": "rq-1234567890abcdef", + "type": "string", + "required": true + }, + "role_type": { + "value": "roles", + "type": "string", + "required": false + }, + "role_unique_identifier": { + "value": "role-xyz-123456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddTeamLink", + "qualifiedName": "DatadogApi.AddTeamLink", + "fullyQualifiedName": "DatadogApi.AddTeamLink@2.0.0", + "description": "Add a new link to a Datadog team.\n\nUse this tool to add a new link to a specific team's page in Datadog. Suitable for enhancing team resources or documentation by linking additional references.", + "parameters": [ + { + "name": "link_label", + "type": "string", + "required": true, + "description": "The label for the link to be added to the team. This should be a descriptive text for the link.", + "enum": null, + "inferrable": true + }, + { + "name": "link_url", + "type": "string", + "required": true, + "description": "The URL to be added as a link for the team. This should be a valid web address.", + "enum": null, + "inferrable": true + }, + { + "name": "target_team_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team to which the link will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "link_position", + "type": "integer", + "required": false, + "description": "The position of the link in the team's list, used for sorting links.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_for_link", + "type": "string", + "required": false, + "description": "ID of the team the link is associated with. This should be a unique identifier for the specific team to which you want to add the link.", + "enum": null, + "inferrable": true + }, + { + "name": "team_link_type", + "type": "string", + "required": false, + "description": "Specify the type of team link. Must be 'team_links'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTeamLink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AddTeamLink", + "parameters": { + "link_label": { + "value": "Project Documentation", + "type": "string", + "required": true + }, + "link_url": { + "value": "https://docs.example.com/project", + "type": "string", + "required": true + }, + "target_team_id": { + "value": "team_456", + "type": "string", + "required": true + }, + "link_position": { + "value": 1, + "type": "integer", + "required": false + }, + "team_id_for_link": { + "value": "team_123", + "type": "string", + "required": false + }, + "team_link_type": { + "value": "team_links", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddUserToRole", + "qualifiedName": "DatadogApi.AddUserToRole", + "fullyQualifiedName": "DatadogApi.AddUserToRole@2.0.0", + "description": "Adds a user to a specific role in Datadog.\n\nUse this tool to add a user to a specific role in Datadog's system. It is called when you need to assign user permissions via roles.", + "parameters": [ + { + "name": "role_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the role you want to assign the user to.", + "enum": null, + "inferrable": true + }, + { + "name": "user_unique_identifier", + "type": "string", + "required": true, + "description": "A unique identifier representing the user to be added to the role.", + "enum": null, + "inferrable": true + }, + { + "name": "users_resource_type", + "type": "string", + "required": false, + "description": "Specifies the type of resource as 'users'. Always use 'users'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AddUserToRole'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AddUserToRole", + "parameters": { + "role_unique_identifier": { + "value": "admin_role_123", + "type": "string", + "required": true + }, + "user_unique_identifier": { + "value": "user_456", + "type": "string", + "required": true + }, + "users_resource_type": { + "value": "users", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddUserToTeam", + "qualifiedName": "DatadogApi.AddUserToTeam", + "fullyQualifiedName": "DatadogApi.AddUserToTeam@2.0.0", + "description": "Add a user to a team in Datadog.\n\nUse this tool to add a specified user to an existing team within Datadog by providing the team ID.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The ID of the team to which the user will be added. This is required to specify the target team.", + "enum": null, + "inferrable": true + }, + { + "name": "provisioned_user_or_service_account_id", + "type": "string", + "required": false, + "description": "UUID of the User or Service Account who provisioned the team membership, or null if done via SAML mapping.", + "enum": null, + "inferrable": true + }, + { + "name": "provisioning_mechanism", + "type": "string", + "required": false, + "description": "Mechanism responsible for provisioning the team relationship. Possible values: null for user-added, \"service_account\" for service account, \"saml_mapping\" for SAML mapping.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the team to which the user will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "team_membership_type", + "type": "string", + "required": false, + "description": "Specify the type of team membership. Use 'team_memberships'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": false, + "description": "The ID of the user to be added to the team in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "user_role_in_team", + "type": "string", + "required": false, + "description": "Specifies the user's role within the team. Currently, only 'admin' is supported as a role.", + "enum": null, + "inferrable": true + }, + { + "name": "user_team_type", + "type": "string", + "required": false, + "description": "Specifies the type for the team relationship, fixed as 'team'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_team_user_type", + "type": "string", + "required": false, + "description": "Set to 'users' as the type for the user in the team.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTeamMembership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AddUserToTeam", + "parameters": { + "team_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "provisioned_user_or_service_account_id": { + "value": "e6f8c42a-f12e-4b99-92f3-6f644e3ab123", + "type": "string", + "required": false + }, + "provisioning_mechanism": { + "value": "service_account", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-xyz", + "type": "string", + "required": false + }, + "team_membership_type": { + "value": "team_memberships", + "type": "string", + "required": false + }, + "user_id": { + "value": "user-456", + "type": "string", + "required": false + }, + "user_role_in_team": { + "value": "admin", + "type": "string", + "required": false + }, + "user_team_type": { + "value": "team", + "type": "string", + "required": false + }, + "user_team_user_type": { + "value": "users", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AggregateLogs", + "qualifiedName": "DatadogApi.AggregateLogs", + "fullyQualifiedName": "DatadogApi.AggregateLogs@2.0.0", + "description": "Aggregate logs to compute metrics and timeseries.\n\nThis tool aggregates log events into buckets to compute relevant metrics and timeseries. It's useful for analyzing large volumes of log data to extract meaningful insights.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AggregateLogs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AggregateLogs", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"query\":\"\", \"interval\":\"1h\", \"aggregations\":[{\"metric\":\"\", \"aggregation\":\"count\"}], \"filter\":{\"status\":\"error\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AggregatePipelineEvents", + "qualifiedName": "DatadogApi.AggregatePipelineEvents", + "fullyQualifiedName": "DatadogApi.AggregatePipelineEvents@2.0.0", + "description": "Aggregate CI pipeline event metrics and timeseries.\n\nThis tool aggregates CI Visibility pipeline events into buckets of computed metrics and timeseries. Use it when you need to analyze CI pipeline performances and trends.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AggregateCIAppPipelineEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AggregatePipelineEvents", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"pipeline_id\":\"12345\",\"metrics\":{\"duration\":30,\"status\":\"success\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AggregateRumEvents", + "qualifiedName": "DatadogApi.AggregateRumEvents", + "fullyQualifiedName": "DatadogApi.AggregateRumEvents@2.0.0", + "description": "Aggregate RUM events into computed metrics and timeseries.\n\nThis tool aggregates Real User Monitoring (RUM) events into buckets of computed metrics and timeseries. It is used when there is a need to analyze and visualize RUM data effectively.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AggregateRUMEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AggregateRumEvents", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"aggregation\":\"avg\",\"group_by\":[\"browser\",\"os_version\"],\"filters\":{\"date_range\":\"last_30_days\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AggregateSpansMetrics", + "qualifiedName": "DatadogApi.AggregateSpansMetrics", + "fullyQualifiedName": "DatadogApi.AggregateSpansMetrics@2.0.0", + "description": "Aggregate spans to compute metrics and timeseries.\n\nUse this tool to aggregate spans into buckets and compute metrics and timeseries data. This is useful for analyzing performance and trends in systems. Note: Limited to 300 requests per hour.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AggregateSpans'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AggregateSpansMetrics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"aggregate\": \"count\", \"timeframe\": \"last_1_hour\", \"filter\": {\"service\": \"my-service\", \"env\": \"production\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AggregateTestMetrics", + "qualifiedName": "DatadogApi.AggregateTestMetrics", + "fullyQualifiedName": "DatadogApi.AggregateTestMetrics@2.0.0", + "description": "Aggregate CI Visibility test events into metrics and timeseries.\n\nUse this tool to aggregate CI test events into buckets for computed metrics and timeseries insights.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AggregateCIAppTestEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AggregateTestMetrics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"aggregates\":{\"success_rate\":{\"type\":\"percentage\",\"window\":\"1h\"}},\"group_by\":[{\"field\":\"project_id\"},{\"field\":\"test_suite\"}]} ", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ArchiveAzureCostAccount", + "qualifiedName": "DatadogApi.ArchiveAzureCostAccount", + "fullyQualifiedName": "DatadogApi.ArchiveAzureCostAccount@2.0.0", + "description": "Archive an Azure Cloud Cost Management account in Datadog.\n\nUse this tool to archive a Cloud Cost Management account associated with Azure in Datadog. This action is irreversible and should be performed when you need to remove cost management configurations for a specific Azure account.", + "parameters": [ + { + "name": "azure_cloud_account_id", + "type": "integer", + "required": true, + "description": "The ID of the Azure Cloud Cost Management account to archive. This is necessary to identify which account's configurations will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCostAzureUCConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ArchiveAzureCostAccount", + "parameters": { + "azure_cloud_account_id": { + "value": 123456789, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ArchiveCase", + "qualifiedName": "DatadogApi.ArchiveCase", + "fullyQualifiedName": "DatadogApi.ArchiveCase@2.0.0", + "description": "Archive a specific case in Datadog.\n\nThis tool is used to archive a case in Datadog by specifying the case ID. Call this tool when you need to move a case to the archive for record-keeping or compliance.", + "parameters": [ + { + "name": "case_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier or key of the case to be archived in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "case_resource_type", + "type": "string", + "required": false, + "description": "Specify 'case' as the resource type to identify the case resource.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ArchiveCase'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ArchiveCase", + "parameters": { + "case_unique_id": { + "value": "123456", + "type": "string", + "required": true + }, + "case_resource_type": { + "value": "case", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ArchiveCloudCostAccount", + "qualifiedName": "DatadogApi.ArchiveCloudCostAccount", + "fullyQualifiedName": "DatadogApi.ArchiveCloudCostAccount@2.0.0", + "description": "Archive a Cloud Cost Management Account.\n\nUse this tool to archive a Cloud Cost Management Account in Datadog, specifically for AWS CUR configurations. Useful for managing or removing outdated or unnecessary cost configurations.", + "parameters": [ + { + "name": "cloud_account_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the Cloud Account to be archived in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCostAWSCURConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ArchiveCloudCostAccount", + "parameters": { + "cloud_account_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ArchiveGcpCostManagementAccount", + "qualifiedName": "DatadogApi.ArchiveGcpCostManagementAccount", + "fullyQualifiedName": "DatadogApi.ArchiveGcpCostManagementAccount@2.0.0", + "description": "Archive a Cloud Cost Management account.\n\nUse this tool to archive a Google Cloud Platform (GCP) cost management account in Datadog.", + "parameters": [ + { + "name": "cloud_account_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the GCP cloud account to be archived.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCostGCPUsageCostConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ArchiveGcpCostManagementAccount", + "parameters": { + "cloud_account_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AssignCaseToUser", + "qualifiedName": "DatadogApi.AssignCaseToUser", + "fullyQualifiedName": "DatadogApi.AssignCaseToUser@2.0.0", + "description": "Assign a case to a specific user.\n\nUse this tool to assign a case to a specific user by providing the case ID. It should be called when you need to allocate a case to an appropriate team member or user.", + "parameters": [ + { + "name": "assignee_user_id", + "type": "string", + "required": true, + "description": "The UUID of the user to whom the case will be assigned.", + "enum": null, + "inferrable": true + }, + { + "name": "case_id", + "type": "string", + "required": true, + "description": "The unique identifier (UUID or key) of the case to be assigned.", + "enum": null, + "inferrable": true + }, + { + "name": "case_resource_type", + "type": "string", + "required": false, + "description": "Specify the resource type. Must be set to 'case'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AssignCase'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.AssignCaseToUser", + "parameters": { + "assignee_user_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "case_id": { + "value": "987e6543-e21b-16d3-a456-426614174001", + "type": "string", + "required": true + }, + "case_resource_type": { + "value": "case", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "BulkDeleteDatastoreItems", + "qualifiedName": "DatadogApi.BulkDeleteDatastoreItems", + "fullyQualifiedName": "DatadogApi.BulkDeleteDatastoreItems@2.0.0", + "description": "Delete multiple items from a datastore at once.\n\nUse this tool to delete multiple items from a specified datastore by their keys in a single operation. It's ideal for efficiently removing batches of entries when managing datastore contents.", + "parameters": [ + { + "name": "datastore_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the datastore from which items will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "datastore_items_id", + "type": "string", + "required": false, + "description": "ID for the datastore of items you want to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "item_keys_to_delete", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of up to 100 primary keys identifying items to delete from the datastore.", + "enum": null, + "inferrable": true + }, + { + "name": "items_resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type of the items. Must be 'items'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkDeleteDatastoreItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.BulkDeleteDatastoreItems", + "parameters": { + "datastore_identifier": { + "value": "my_datastore_123", + "type": "string", + "required": true + }, + "datastore_items_id": { + "value": "item_set_456", + "type": "string", + "required": false + }, + "item_keys_to_delete": { + "value": ["key1", "key2", "key3"], + "type": "array", + "required": false + }, + "items_resource_type": { + "value": "items", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "BulkUpdateDatastoreItems", + "qualifiedName": "DatadogApi.BulkUpdateDatastoreItems", + "fullyQualifiedName": "DatadogApi.BulkUpdateDatastoreItems@2.0.0", + "description": "Perform bulk creation or replacement of datastore items.\n\n Use this tool to create or replace multiple items in a Datadog datastore in a single operation by specifying their keys.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "datastore_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the datastore where items will be updated or replaced. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkWriteDatastoreItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.BulkUpdateDatastoreItems", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "datastore_identifier": { + "value": "my_datastore_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"items\":[{\"key\":\"item1\",\"value\":\"value1\"},{\"key\":\"item2\",\"value\":\"value2\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelDowntime", + "qualifiedName": "DatadogApi.CancelDowntime", + "fullyQualifiedName": "DatadogApi.CancelDowntime@2.0.0", + "description": "Cancel an active downtime in Datadog.\n\nUse this tool to cancel an active downtime in Datadog. The downtime remains visible for about two days in search results until it is permanently removed.", + "parameters": [ + { + "name": "downtime_id", + "type": "string", + "required": true, + "description": "Provide the ID of the downtime you wish to cancel.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CancelDowntime'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CancelDowntime", + "parameters": { + "downtime_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelHistoricalJob", + "qualifiedName": "DatadogApi.CancelHistoricalJob", + "fullyQualifiedName": "DatadogApi.CancelHistoricalJob@2.0.0", + "description": "Cancel a historical job in Datadog.\n\nUse this tool to cancel an ongoing historical job in Datadog, identified by its job ID.", + "parameters": [ + { + "name": "job_id", + "type": "string", + "required": true, + "description": "The unique identifier of the historical job to be canceled in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CancelHistoricalJob'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CancelHistoricalJob", + "parameters": { + "job_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelWorkflowInstance", + "qualifiedName": "DatadogApi.CancelWorkflowInstance", + "fullyQualifiedName": "DatadogApi.CancelWorkflowInstance@2.0.0", + "description": "Cancel a specific execution of a workflow.\n\nUse this tool to cancel a specific execution of a given workflow in Datadog. Ensure you have the necessary application key or permissions configured to perform this action.", + "parameters": [ + { + "name": "workflow_id", + "type": "string", + "required": true, + "description": "The unique ID of the workflow to cancel. It must be a valid string as per the API specifications.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_instance_id", + "type": "string", + "required": true, + "description": "The unique identifier of the workflow instance to be canceled.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CancelWorkflowInstance'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CancelWorkflowInstance", + "parameters": { + "workflow_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "workflow_instance_id": { + "value": "instance-1234-5678-90ab-cdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ChangeSignalState", + "qualifiedName": "DatadogApi.ChangeSignalState", + "fullyQualifiedName": "DatadogApi.ChangeSignalState@2.0.0", + "description": "Change the triage state of a security signal.\n\nThis tool is used to modify the triage state of a specific security signal in Datadog's security monitoring system. It is useful for managing signal priorities and responses.", + "parameters": [ + { + "name": "new_triage_state", + "type": "string", + "required": true, + "description": "The new triage state of the signal. Valid options are 'open', 'archived', or 'under_review'.", + "enum": null, + "inferrable": true + }, + { + "name": "signal_id", + "type": "string", + "required": true, + "description": "The unique identifier of the security signal to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "archive_comment", + "type": "string", + "required": false, + "description": "Optional comment to display on archived signals. Useful for context or documentation.", + "enum": null, + "inferrable": true + }, + { + "name": "archive_reason", + "type": "string", + "required": false, + "description": "Reason for archiving the signal. Options include 'none', 'false_positive', 'testing_or_maintenance', 'investigated_case_opened', or 'other'.", + "enum": null, + "inferrable": true + }, + { + "name": "event_type", + "type": "string", + "required": false, + "description": "The type of event, must be 'signal_metadata'.", + "enum": null, + "inferrable": true + }, + { + "name": "security_signal_unique_id", + "type": "string", + "required": false, + "description": "The unique identifier for the security signal to be modified.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_signal_version", + "type": "integer", + "required": false, + "description": "The version number of the signal to update. The update is rejected if the server's version is higher.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'EditSecurityMonitoringSignalState'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ChangeSignalState", + "parameters": { + "new_triage_state": { + "value": "under_review", + "type": "string", + "required": true + }, + "signal_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "archive_comment": { + "value": "Review needed for potential false positive.", + "type": "string", + "required": false + }, + "archive_reason": { + "value": "false_positive", + "type": "string", + "required": false + }, + "event_type": { + "value": "signal_metadata", + "type": "string", + "required": false + }, + "security_signal_unique_id": { + "value": "unique-signal-456", + "type": "string", + "required": false + }, + "updated_signal_version": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CloneExistingRole", + "qualifiedName": "DatadogApi.CloneExistingRole", + "fullyQualifiedName": "DatadogApi.CloneExistingRole@2.0.0", + "description": "Clone an existing role based on role ID.\n\nThis tool allows cloning of an existing role by using its unique role ID. It should be called when you need to create a duplicate of an existing role with identical permissions.", + "parameters": [ + { + "name": "new_role_name", + "type": "string", + "required": true, + "description": "Name of the new role that is cloned from an existing role.", + "enum": null, + "inferrable": true + }, + { + "name": "role_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the role to be cloned.", + "enum": null, + "inferrable": true + }, + { + "name": "role_type", + "type": "string", + "required": false, + "description": "Specifies the type of role for the clone operation. Must be 'roles'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CloneRole'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CloneExistingRole", + "parameters": { + "new_role_name": { + "value": "Cloned Role for Team A", + "type": "string", + "required": true + }, + "role_unique_identifier": { + "value": "1234-5678-90ab-cdef", + "type": "string", + "required": true + }, + "role_type": { + "value": "roles", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ConfigureBulkTagsForMetrics", + "qualifiedName": "DatadogApi.ConfigureBulkTagsForMetrics", + "fullyQualifiedName": "DatadogApi.ConfigureBulkTagsForMetrics@2.0.0", + "description": "Configure bulk tags for specified metrics in Datadog.\n\nUse this tool to create and define queryable tag keys for existing count, gauge, rate, and distribution metrics in Datadog by specifying a metric name prefix. It manages tags configurations and sends results to account email addresses. Suitable for users with 'Manage Tags for Metrics' permission.", + "parameters": [ + { + "name": "metric_name_prefix", + "type": "string", + "required": true, + "description": "A text prefix used to match against metric names for bulk tags configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "actively_queried_tags_window_seconds", + "type": "number", + "required": false, + "description": "Time window in seconds for configuring actively queried tags for matching metrics. Minimum is 1 second, maximum is 7,776,000 seconds (90 days).", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_configured_tags", + "type": "boolean", + "required": false, + "description": "Set to true to exclude configured tags and include all other tags. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_bulk_configure_tags_resource", + "type": "string", + "required": false, + "description": "The resource identifier for configuring bulk tags for metrics. Must be set to 'metric_bulk_configure_tags'.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of account emails to notify when the configuration is applied.", + "enum": null, + "inferrable": true + }, + { + "name": "override_existing_configurations", + "type": "boolean", + "required": false, + "description": "Set to true to override any existing configurations for the metric with the new tags. Defaults to true.", + "enum": null, + "inferrable": true + }, + { + "name": "tags_to_apply", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of tag names to apply to the metric configuration in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateBulkTagsMetricsConfiguration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ConfigureBulkTagsForMetrics", + "parameters": { + "metric_name_prefix": { + "value": "app.perf", + "type": "string", + "required": true + }, + "actively_queried_tags_window_seconds": { + "value": 3600, + "type": "integer", + "required": false + }, + "exclude_configured_tags": { + "value": false, + "type": "boolean", + "required": false + }, + "metric_bulk_configure_tags_resource": { + "value": "metric_bulk_configure_tags", + "type": "string", + "required": false + }, + "notification_emails": { + "value": ["admin@example.com", "alerts@example.com"], + "type": "array", + "required": false + }, + "override_existing_configurations": { + "value": true, + "type": "boolean", + "required": false + }, + "tags_to_apply": { + "value": ["env:production", "version:1.2.3"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ConvertJobResultToSignal", + "qualifiedName": "DatadogApi.ConvertJobResultToSignal", + "fullyQualifiedName": "DatadogApi.ConvertJobResultToSignal@2.0.0", + "description": "Convert a job result to a signal for detection purposes.\n\nUse this tool to transform a job result into a signal, useful for detection and monitoring in Datadog.", + "parameters": [ + { + "name": "job_result_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of job result IDs to convert into signals.", + "enum": null, + "inferrable": true + }, + { + "name": "notifications_sent", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of notification types sent related to the signal.", + "enum": null, + "inferrable": true + }, + { + "name": "payload_type", + "type": "string", + "required": false, + "description": "Type of payload, must be 'historicalDetectionsJobResultSignalConversion'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_id", + "type": "string", + "required": false, + "description": "A unique identifier for the request that is used to convert the job result to a signal.", + "enum": null, + "inferrable": true + }, + { + "name": "signal_message", + "type": "string", + "required": false, + "description": "Message content of the generated signals to be converted.", + "enum": null, + "inferrable": true + }, + { + "name": "signal_severity", + "type": "string", + "required": false, + "description": "Severity level of the security signal. Accepts values: info, low, medium, high, critical.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ConvertJobResultToSignal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ConvertJobResultToSignal", + "parameters": { + "job_result_ids": { + "value": ["job123", "job456"], + "type": "array", + "required": false + }, + "notifications_sent": { + "value": ["email", "slack"], + "type": "array", + "required": false + }, + "payload_type": { + "value": "historicalDetectionsJobResultSignalConversion", + "type": "string", + "required": false + }, + "request_id": { + "value": "req789", + "type": "string", + "required": false + }, + "signal_message": { + "value": "Potential security issue detected.", + "type": "string", + "required": false + }, + "signal_severity": { + "value": "high", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ConvertRuleJsonToTerraform", + "qualifiedName": "DatadogApi.ConvertRuleJsonToTerraform", + "fullyQualifiedName": "DatadogApi.ConvertRuleJsonToTerraform@2.0.0", + "description": "Converts Datadog security rules from JSON to Terraform format.\n\nUse this tool to convert a Datadog security monitoring rule from JSON format to Terraform format. It is helpful when you need to transform security rules for infrastructure as code purposes.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ConvertSecurityMonitoringRuleFromJSONToTerraform'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ConvertRuleJsonToTerraform", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"type\":\"security_rules\",\"rules\":[{\"id\":\"rule1\",\"name\":\"Test Rule\",\"query\":\"source:aws and status:error\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ConvertSecurityRuleToTerraform", + "qualifiedName": "DatadogApi.ConvertSecurityRuleToTerraform", + "fullyQualifiedName": "DatadogApi.ConvertSecurityRuleToTerraform@2.0.0", + "description": "Convert existing security rule from JSON to Terraform.\n\nThis tool converts an existing Datadog security monitoring rule from its JSON format to a Terraform configuration. Use it to facilitate the integration and management of your rules using Terraform.", + "parameters": [ + { + "name": "rule_id", + "type": "string", + "required": true, + "description": "The ID of the Datadog security monitoring rule to convert.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ConvertExistingSecurityMonitoringRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ConvertSecurityRuleToTerraform", + "parameters": { + "rule_id": { + "value": "abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateActionConnection", + "qualifiedName": "DatadogApi.CreateActionConnection", + "fullyQualifiedName": "DatadogApi.CreateActionConnection@2.0.0", + "description": "Create a new action connection in Datadog.\n\nUse this tool to create a new action connection in Datadog. Ensure you have a registered application key before using this tool.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateActionConnection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateActionConnection", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"action_type\":\"alert\",\"name\":\"High CPU Usage Alert\",\"query\":\"avg(last_5m):avg:system.cpu.idle{*} < 20\",\"notify_list\":[\"team@company.com\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateApmRetentionFilter", + "qualifiedName": "DatadogApi.CreateApmRetentionFilter", + "fullyQualifiedName": "DatadogApi.CreateApmRetentionFilter@2.0.0", + "description": "Create a retention filter for indexing spans in Datadog.\n\nUse this tool to create a retention filter in Datadog that indexes spans within your organization. Note that default filters of types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be created. This tool returns the definition of the newly created retention filter.", + "parameters": [ + { + "name": "enable_retention_filter", + "type": "boolean", + "required": true, + "description": "Set to true to enable the retention filter or false to disable it.", + "enum": null, + "inferrable": true + }, + { + "name": "retention_filter_name", + "type": "string", + "required": true, + "description": "The name for the retention filter to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": true, + "description": "The search query using span search syntax to define criteria for retention.", + "enum": null, + "inferrable": true + }, + { + "name": "span_sample_rate", + "type": "number", + "required": true, + "description": "Sample rate for spans matching the query. A value of 1.0 processes all matching spans.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": false, + "description": "Specify the type of the resource, always use 'apm_retention_filter'.", + "enum": null, + "inferrable": true + }, + { + "name": "retention_filter_type", + "type": "string", + "required": false, + "description": "Set the type of retention filter. Must be 'spans-sampling-processor'.", + "enum": null, + "inferrable": true + }, + { + "name": "trace_sample_rate", + "type": "number", + "required": false, + "description": "Sample rate for traces with spans going through the filter. Use 1.0 to keep all matching traces.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateApmRetentionFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateApmRetentionFilter", + "parameters": { + "enable_retention_filter": { + "value": true, + "type": "boolean", + "required": true + }, + "retention_filter_name": { + "value": "example-retention-filter", + "type": "string", + "required": true + }, + "search_query": { + "value": "service:my-service AND environment:production", + "type": "string", + "required": true + }, + "span_sample_rate": { + "value": 0.5, + "type": "integer", + "required": true + }, + "resource_type": { + "value": "apm_retention_filter", + "type": "string", + "required": false + }, + "retention_filter_type": { + "value": "spans-sampling-processor", + "type": "string", + "required": false + }, + "trace_sample_rate": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateAuthnMapping", + "qualifiedName": "DatadogApi.CreateAuthnMapping", + "fullyQualifiedName": "DatadogApi.CreateAuthnMapping@2.0.0", + "description": "Creates a new AuthN Mapping in Datadog.\n\nThis tool calls the Datadog API to create a new AuthN Mapping. It should be used when you need to set up or configure authentication mappings in Datadog.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateAuthNMapping'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateAuthnMapping", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"authn_mapping\":{\"type\":\"saml\",\"name\":\"ExampleAuthnMapping\",\"attributes\":{\"email\":\"{{user.email}}\"}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateAwsAccountIntegration", + "qualifiedName": "DatadogApi.CreateAwsAccountIntegration", + "fullyQualifiedName": "DatadogApi.CreateAwsAccountIntegration@2.0.0", + "description": "Create a new AWS Account Integration Config in Datadog.\n\nThis tool should be called when you need to integrate an AWS account with Datadog. It will set up a new AWS account configuration for monitoring and managing AWS services through Datadog.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateAWSAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateAwsAccountIntegration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"account_id\":\"123456789012\",\"role_name\":\"DatadogAWSSiteMonitoringRole\",\"account_alias\":\"my-aws-account\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateAwsCurConfig", + "qualifiedName": "DatadogApi.CreateAwsCurConfig", + "fullyQualifiedName": "DatadogApi.CreateAwsCurConfig@2.0.0", + "description": "Create an AWS CUR config for Cloud Cost Management.\n\nUse this tool to create a Cloud Cost Management account for an AWS Cost and Usage Report (CUR) configuration.", + "parameters": [ + { + "name": "aws_account_id", + "type": "string", + "required": false, + "description": "The AWS account ID for which the CUR config is created. This is required to specify which AWS account the configuration applies to.", + "enum": null, + "inferrable": true + }, + { + "name": "aws_bucket_name_for_cur", + "type": "string", + "required": false, + "description": "The AWS bucket name used to store the Cost and Usage Report.", + "enum": null, + "inferrable": true + }, + { + "name": "aws_cur_config_type", + "type": "string", + "required": false, + "description": "Type of AWS CUR config post request. Choose from available options: 'aws_cur_config_post_request'.", + "enum": null, + "inferrable": true + }, + { + "name": "bucket_region", + "type": "string", + "required": false, + "description": "The AWS region where the bucket is located.", + "enum": null, + "inferrable": true + }, + { + "name": "excluded_aws_account_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of AWS account IDs to exclude from the billing dataset. Used when `include_new_accounts` is `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "include_new_member_accounts", + "type": "boolean", + "required": false, + "description": "Set to true to automatically include new member accounts by default in your billing dataset.", + "enum": null, + "inferrable": true + }, + { + "name": "included_aws_account_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of AWS account IDs to be included in the billing dataset, used when `include_new_accounts` is `false`.", + "enum": null, + "inferrable": true + }, + { + "name": "report_month", + "type": "integer", + "required": false, + "description": "Specify the month for the AWS Cost and Usage Report. Use an integer (1-12) to represent the month.", + "enum": null, + "inferrable": true + }, + { + "name": "report_name", + "type": "string", + "required": false, + "description": "The name of the Cost and Usage Report to create for AWS CUR configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "report_prefix", + "type": "string", + "required": false, + "description": "The prefix for the Cost and Usage Report (CUR).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCostAWSCURConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateAwsCurConfig", + "parameters": { + "aws_account_id": { + "value": "123456789012", + "type": "string", + "required": false + }, + "aws_bucket_name_for_cur": { + "value": "my-cost-reports-bucket", + "type": "string", + "required": false + }, + "aws_cur_config_type": { + "value": "aws_cur_config_post_request", + "type": "string", + "required": false + }, + "bucket_region": { + "value": "us-east-1", + "type": "string", + "required": false + }, + "excluded_aws_account_ids": { + "value": ["987654321098"], + "type": "array", + "required": false + }, + "include_new_member_accounts": { + "value": true, + "type": "boolean", + "required": false + }, + "included_aws_account_ids": { + "value": ["123456789013", "123456789014"], + "type": "array", + "required": false + }, + "report_month": { + "value": 10, + "type": "integer", + "required": false + }, + "report_name": { + "value": "MonthlyCostReport", + "type": "string", + "required": false + }, + "report_prefix": { + "value": "CostReport_", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateAzureCostManagementAccount", + "qualifiedName": "DatadogApi.CreateAzureCostManagementAccount", + "fullyQualifiedName": "DatadogApi.CreateAzureCostManagementAccount@2.0.0", + "description": "Create a Cloud Cost Management account for Azure.\n\nUse this tool to set up a Cloud Cost Management account for an Azure configuration using Datadog.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCostAzureUCConfigs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateAzureCostManagementAccount", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"account_name\": \"MyAzureAccount\", \"resource_group\": \"MyResourceGroup\", \"subscription_id\": \"12345-abcde-67890-fghij\", \"location\": \"East US\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCaseTypeInDatadog", + "qualifiedName": "DatadogApi.CreateCaseTypeInDatadog", + "fullyQualifiedName": "DatadogApi.CreateCaseTypeInDatadog@2.0.0", + "description": "Initiate the creation of a new case type in Datadog.\n\nUse this tool to create a new case type in Datadog, enabling structured classification and management of cases within the platform.", + "parameters": [ + { + "name": "case_type_name", + "type": "string", + "required": true, + "description": "Specify the name of the case type to be created in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "case_type_deleted_timestamp", + "type": "string", + "required": false, + "description": "Timestamp indicating when the case type was deleted. Format should be a valid ISO 8601 string.", + "enum": null, + "inferrable": true + }, + { + "name": "case_type_description", + "type": "string", + "required": false, + "description": "A brief textual description of the case type to be created in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "case_type_emoji", + "type": "string", + "required": false, + "description": "Emoji representing the case type. Use a short, descriptive Unicode emoji.", + "enum": null, + "inferrable": true + }, + { + "name": "case_type_resource_type", + "type": "string", + "required": false, + "description": "Specify the resource type for the case. Must be 'case_type'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCaseType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateCaseTypeInDatadog", + "parameters": { + "case_type_name": { + "value": "Incident", + "type": "string", + "required": true + }, + "case_type_deleted_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "case_type_description": { + "value": "Represents cases related to incidents affecting services.", + "type": "string", + "required": false + }, + "case_type_emoji": { + "value": "🚨", + "type": "string", + "required": false + }, + "case_type_resource_type": { + "value": "case_type", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCloudflareAccount", + "qualifiedName": "DatadogApi.CreateCloudflareAccount", + "fullyQualifiedName": "DatadogApi.CreateCloudflareAccount@2.0.0", + "description": "Create a Cloudflare account through Datadog integration.\n\nThis tool is used to create a Cloudflare account using Datadog's integration API. It should be called when you wish to initiate a new Cloudflare account while leveraging Datadog services.", + "parameters": [ + { + "name": "cloudflare_account_name", + "type": "string", + "required": true, + "description": "The name for the Cloudflare account to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "cloudflare_api_key", + "type": "string", + "required": true, + "description": "The API key or token for the Cloudflare account required to authenticate and connect with the Cloudflare service.", + "enum": null, + "inferrable": true + }, + { + "name": "cloudflare_account_email", + "type": "string", + "required": false, + "description": "The email associated with the Cloudflare account. Required if using an API key instead of a token.", + "enum": null, + "inferrable": true + }, + { + "name": "json_api_type", + "type": "string", + "required": false, + "description": "Specifies the JSON:API type, must be 'cloudflare-accounts'.", + "enum": null, + "inferrable": true + }, + { + "name": "resources_allowlist", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of resources such as 'web', 'dns', 'lb', or 'worker' to restrict metric pulling.", + "enum": null, + "inferrable": true + }, + { + "name": "zone_allowlist", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of zones for restricting metric data collection.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCloudflareAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateCloudflareAccount", + "parameters": { + "cloudflare_account_name": { + "value": "example-cf-account", + "type": "string", + "required": true + }, + "cloudflare_api_key": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "cloudflare_account_email": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "json_api_type": { + "value": "cloudflare-accounts", + "type": "string", + "required": false + }, + "resources_allowlist": { + "value": ["web", "dns"], + "type": "array", + "required": false + }, + "zone_allowlist": { + "value": ["example.com", "test.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCloudWorkloadSecurityAgentRule", + "qualifiedName": "DatadogApi.CreateCloudWorkloadSecurityAgentRule", + "fullyQualifiedName": "DatadogApi.CreateCloudWorkloadSecurityAgentRule@2.0.0", + "description": "Create a new cloud workload security agent rule.\n\nThis tool creates a new security agent rule for cloud workload monitoring. It should be called when there is a need to set up or update security rules specifically for the Government (US1-FED) site.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCloudWorkloadSecurityAgentRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateCloudWorkloadSecurityAgentRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"rule_name\": \"Protect Web Server\", \"description\": \"This rule monitors access to the web server for suspicious activity.\", \"enabled\": true, \"criteria\": {\"ip_sources\": [\"192.0.2.0/24\"], \"vulnerabilities\": [\"CVE-2021-34527\"]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateConfluentAccount", + "qualifiedName": "DatadogApi.CreateConfluentAccount", + "fullyQualifiedName": "DatadogApi.CreateConfluentAccount@2.0.0", + "description": "Create a Confluent account on Datadog.\n\nUse this tool to create a new Confluent account within the Datadog platform. Ideal for setting up new Confluent integrations.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateConfluentAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateConfluentAccount", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"account_name\": \"example_confluent_account\", \"region\": \"us-west-2\", \"plan\": \"developer\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateConfluentResource", + "qualifiedName": "DatadogApi.CreateConfluentResource", + "fullyQualifiedName": "DatadogApi.CreateConfluentResource@2.0.0", + "description": "Create a Confluent resource for a specified account.\n\nUse this tool to create a Confluent resource within a specific account using its ID. It's useful for managing Confluent resources in Datadog integrations.", + "parameters": [ + { + "name": "confluent_account_id", + "type": "string", + "required": true, + "description": "The ID of the Confluent account for which to create the resource.", + "enum": null, + "inferrable": true + }, + { + "name": "confluent_resource_id", + "type": "string", + "required": true, + "description": "The unique ID for the Confluent resource to be created or managed.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": true, + "description": "The type of Confluent resource to create: `kafka`, `connector`, `ksql`, or `schema_registry`.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_custom_metrics", + "type": "boolean", + "required": false, + "description": "Set to true to enable the `custom.consumer_lag_offset` metric with extra tags, false to disable.", + "enum": null, + "inferrable": true + }, + { + "name": "json_api_request_type", + "type": "string", + "required": false, + "description": "The JSON:API type for this request. Must be 'confluent-cloud-resources'.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_tags", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of tag strings for the Confluent resource. Use key-value pairs separated by colons or single keys.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateConfluentResource'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateConfluentResource", + "parameters": { + "confluent_account_id": { + "value": "123456", + "type": "string", + "required": true + }, + "confluent_resource_id": { + "value": "resource-7890", + "type": "string", + "required": true + }, + "resource_type": { + "value": "kafka", + "type": "string", + "required": true + }, + "enable_custom_metrics": { + "value": true, + "type": "boolean", + "required": false + }, + "json_api_request_type": { + "value": "confluent-cloud-resources", + "type": "string", + "required": false + }, + "resource_tags": { + "value": ["env:production", "team:devops"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCustomAllocationRule", + "qualifiedName": "DatadogApi.CreateCustomAllocationRule", + "fullyQualifiedName": "DatadogApi.CreateCustomAllocationRule@2.0.0", + "description": "Create a custom allocation rule in Datadog.\n\nUse this tool to create a custom allocation rule in Datadog with specified filters and allocation strategies. Useful for managing cost allocations with strategies like proportional, even, timeseries, or fixed percentage methods.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCustomAllocationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateCustomAllocationRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Custom Allocation Rule\",\"filters\":{\"service\":\"my-service\",\"env\":\"production\"},\"allocation_strategy\":\"proportional\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCustomAttributeConfig", + "qualifiedName": "DatadogApi.CreateCustomAttributeConfig", + "fullyQualifiedName": "DatadogApi.CreateCustomAttributeConfig@2.0.0", + "description": "Create a custom attribute configuration for a specific case type.\n\nUse this tool to create a custom attribute configuration in Datadog for a specified case type, enhancing data categorization and organization.", + "parameters": [ + { + "name": "allow_multiple_values", + "type": "boolean", + "required": true, + "description": "Indicates if multiple values can be set for the custom attribute.", + "enum": null, + "inferrable": true + }, + { + "name": "case_type_uuid", + "type": "string", + "required": true, + "description": "UUID of the case type for which the custom attribute config is to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_display_name", + "type": "string", + "required": true, + "description": "The display name for the custom attribute.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "A string key used to search for the custom attribute. This is the identifier for the attribute.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_type", + "type": "string", + "required": true, + "description": "Type of the custom attribute. Options: 'URL', 'TEXT', or 'NUMBER'.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_description", + "type": "string", + "required": false, + "description": "Detailed description for the custom attribute. This helps define the attribute's purpose and use.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attributes_config_type", + "type": "string", + "required": false, + "description": "Specifies the JSON:API resource type for the custom attributes configuration. Must be 'custom_attribute'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCustomAttributeConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateCustomAttributeConfig", + "parameters": { + "allow_multiple_values": { + "value": true, + "type": "boolean", + "required": true + }, + "case_type_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "custom_attribute_display_name": { + "value": "User Role", + "type": "string", + "required": true + }, + "custom_attribute_key": { + "value": "user_role", + "type": "string", + "required": true + }, + "custom_attribute_type": { + "value": "TEXT", + "type": "string", + "required": true + }, + "custom_attribute_description": { + "value": "Defines the role of the user within the application.", + "type": "string", + "required": false + }, + "custom_attributes_config_type": { + "value": "custom_attribute", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCustomLogDestination", + "qualifiedName": "DatadogApi.CreateCustomLogDestination", + "fullyQualifiedName": "DatadogApi.CreateCustomLogDestination@2.0.0", + "description": "Create a custom log destination in Datadog.\n\nThis tool creates a custom destination for logs in your Datadog organization. Use it to configure where your logs should be sent.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateLogsCustomDestination'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateCustomLogDestination", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"Custom Log Destination\", \"type\": \"http\", \"url\": \"https://example.com/logs\", \"service\": \"my-service\", \"tags\": [\"env:production\", \"role:frontend\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCustomSecurityFramework", + "qualifiedName": "DatadogApi.CreateCustomSecurityFramework", + "fullyQualifiedName": "DatadogApi.CreateCustomSecurityFramework@2.0.0", + "description": "Create a custom security framework in Datadog.\n\nThis tool is used to create a custom security framework in Datadog's cloud security management system. Call this tool when you need to define or customize security protocols and structures.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCustomFramework'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateCustomSecurityFramework", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"framework_name\":\"CustomSecurityFramework\",\"rules\":[{\"id\":\"rule1\",\"description\":\"Ensure all containers are scanned for vulnerabilities.\"},{\"id\":\"rule2\",\"description\":\"Monitor AWS S3 buckets for public access.\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDatadogApiKey", + "qualifiedName": "DatadogApi.CreateDatadogApiKey", + "fullyQualifiedName": "DatadogApi.CreateDatadogApiKey@2.0.0", + "description": "Creates a new API key in Datadog.\n\nUse this tool to generate a new API key in Datadog. Ideal for managing authentication and access to Datadog services.", + "parameters": [ + { + "name": "api_key_name", + "type": "string", + "required": true, + "description": "Name of the API key to be created in Datadog. This should be a descriptive and unique string identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "api_keys_resource_type", + "type": "string", + "required": false, + "description": "Specify the resource type as 'api_keys'.", + "enum": null, + "inferrable": true + }, + { + "name": "apikey_category", + "type": "string", + "required": false, + "description": "Specifies the category for the API key. This categorizes the key for organizational purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "remote_config_read_enabled", + "type": "boolean", + "required": false, + "description": "Indicates whether to enable read access to remote config for the new API key. Expects a boolean value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateAPIKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateDatadogApiKey", + "parameters": { + "api_key_name": { + "value": "example-api-key-123", + "type": "string", + "required": true + }, + "api_keys_resource_type": { + "value": "api_keys", + "type": "string", + "required": false + }, + "apikey_category": { + "value": "development", + "type": "string", + "required": false + }, + "remote_config_read_enabled": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDatadogGcpPrincipal", + "qualifiedName": "DatadogApi.CreateDatadogGcpPrincipal", + "fullyQualifiedName": "DatadogApi.CreateDatadogGcpPrincipal@2.0.0", + "description": "Create a Datadog GCP principal for integration.\n\nUse this tool to create a GCP principal in Datadog, enabling integration with Google Cloud Platform.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'MakeGCPSTSDelegate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateDatadogGcpPrincipal", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDatadogRestrictionQuery", + "qualifiedName": "DatadogApi.CreateDatadogRestrictionQuery", + "fullyQualifiedName": "DatadogApi.CreateDatadogRestrictionQuery@2.0.0", + "description": "Create a new restriction query in Datadog.\n\nThis tool creates a restriction query for your organization in Datadog. Use it to manage log access and configurations.", + "parameters": [ + { + "name": "restriction_query", + "type": "string", + "required": false, + "description": "A string representing the restriction query to manage log access and configurations.", + "enum": null, + "inferrable": true + }, + { + "name": "restriction_query_resource_type", + "type": "string", + "required": false, + "description": "Specifies the type of restriction query resource. Must be 'logs_restriction_queries'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateRestrictionQuery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateDatadogRestrictionQuery", + "parameters": { + "restriction_query": { + "value": "service:my_service AND status:error", + "type": "string", + "required": false + }, + "restriction_query_resource_type": { + "value": "logs_restriction_queries", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDatadogWorkflow", + "qualifiedName": "DatadogApi.CreateDatadogWorkflow", + "fullyQualifiedName": "DatadogApi.CreateDatadogWorkflow@2.0.0", + "description": "Creates a new workflow in Datadog and returns its ID.\n\nThis tool is used to create a new workflow in Datadog, returning the workflow ID. It requires having a registered application key or configured permissions in the UI. This can be useful for automating processes and managing workflows effectively within the Datadog platform.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateWorkflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateDatadogWorkflow", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"New Workflow\",\"description\":\"This workflow automates alert responses.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDataset", + "qualifiedName": "DatadogApi.CreateDataset", + "fullyQualifiedName": "DatadogApi.CreateDataset@2.0.0", + "description": "Create a dataset with specified configurations.\n\nUse this tool to create a new dataset on Datadog with the desired configurations provided in the request.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateDataset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateDataset", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Sample Dataset\",\"type\":\"metric\",\"tags\":[\"env:production\",\"team:analytics\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFastlyAccount", + "qualifiedName": "DatadogApi.CreateFastlyAccount", + "fullyQualifiedName": "DatadogApi.CreateFastlyAccount@2.0.0", + "description": "Create a new Fastly account through Datadog integration.\n\nUse this tool to create a new Fastly account using Datadog's integration service. Ideal for setting up Fastly accounts quickly and efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateFastlyAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateFastlyAccount", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"account_name\":\"example-account\",\"region\":\"us-west\",\"contact_email\":\"contact@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFastlyService", + "qualifiedName": "DatadogApi.CreateFastlyService", + "fullyQualifiedName": "DatadogApi.CreateFastlyService@2.0.0", + "description": "Create a Fastly service for a specific account in Datadog.\n\nUse this tool to create a Fastly service associated with a given account within Datadog. Ideal when setting up or expanding Fastly integrations.", + "parameters": [ + { + "name": "fastly_account_id", + "type": "string", + "required": true, + "description": "Provide the Fastly Account ID to create the service under.", + "enum": null, + "inferrable": true + }, + { + "name": "fastly_service_id", + "type": "string", + "required": true, + "description": "The ID of the Fastly service to create. Provide a valid Fastly service ID.", + "enum": null, + "inferrable": true + }, + { + "name": "fastly_service_tags", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of tags for the Fastly service to help categorize and organize the service.", + "enum": null, + "inferrable": true + }, + { + "name": "jsonapi_type_for_fastly_service", + "type": "string", + "required": false, + "description": "The JSON:API type, always set to 'fastly-services', for creating a Fastly service.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateFastlyService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateFastlyService", + "parameters": { + "fastly_account_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "fastly_service_id": { + "value": "service_987654321", + "type": "string", + "required": true + }, + "fastly_service_tags": { + "value": ["production", "webapp", "fastly-integration"], + "type": "array", + "required": false + }, + "jsonapi_type_for_fastly_service": { + "value": "fastly-services", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateGcpCostManagementAccount", + "qualifiedName": "DatadogApi.CreateGcpCostManagementAccount", + "fullyQualifiedName": "DatadogApi.CreateGcpCostManagementAccount@2.0.0", + "description": "Create a cost management account for Google Cloud usage.\n\nThis tool creates a Cloud Cost Management account specifically for Google Cloud Usage Cost configurations. It should be called when a user wants to set up or initiate tracking and managing costs related to their Google Cloud resources.", + "parameters": [ + { + "name": "gcp_bucket_name", + "type": "string", + "required": false, + "description": "The name of the Google Cloud bucket where the Usage Cost exports are stored.", + "enum": null, + "inferrable": true + }, + { + "name": "gcp_usage_cost_export_dataset_name", + "type": "string", + "required": false, + "description": "The dataset name used for exporting the Google Cloud Usage Cost report.", + "enum": null, + "inferrable": true + }, + { + "name": "gcp_usage_cost_report_name", + "type": "string", + "required": false, + "description": "The name of the Google Cloud Usage Cost report to be used for cost management.", + "enum": null, + "inferrable": true + }, + { + "name": "google_cloud_billing_account_id", + "type": "string", + "required": false, + "description": "The Google Cloud account ID for cost management.", + "enum": null, + "inferrable": true + }, + { + "name": "google_cloud_export_prefix", + "type": "string", + "required": false, + "description": "The export prefix for the Google Cloud Usage Cost report.", + "enum": null, + "inferrable": true + }, + { + "name": "google_cloud_service_account_email", + "type": "string", + "required": false, + "description": "The unique Google Cloud service account email required for the cost management setup.", + "enum": null, + "inferrable": true + }, + { + "name": "usage_cost_config_type", + "type": "string", + "required": false, + "description": "Specifies the type of Google Cloud Usage Cost configuration post request. Use \"gcp_uc_config_post_request\" to indicate this type.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCostGCPUsageCostConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateGcpCostManagementAccount", + "parameters": { + "gcp_bucket_name": { + "value": "my-gcp-cost-bucket", + "type": "string", + "required": false + }, + "gcp_usage_cost_export_dataset_name": { + "value": "usage_cost_exports", + "type": "string", + "required": false + }, + "gcp_usage_cost_report_name": { + "value": "monthly_usage_cost_report", + "type": "string", + "required": false + }, + "google_cloud_billing_account_id": { + "value": "billing-12345678", + "type": "string", + "required": false + }, + "google_cloud_export_prefix": { + "value": "gcp_usage_", + "type": "string", + "required": false + }, + "google_cloud_service_account_email": { + "value": "service-account@my-project.iam.gserviceaccount.com", + "type": "string", + "required": false + }, + "usage_cost_config_type": { + "value": "gcp_uc_config_post_request", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateGcpStsAccount", + "qualifiedName": "DatadogApi.CreateGcpStsAccount", + "fullyQualifiedName": "DatadogApi.CreateGcpStsAccount@2.0.0", + "description": "Create a new GCP STS account entry in Datadog.\n\nUse this tool to create a new entry within Datadog for your STS-enabled Google Cloud Platform service account.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateGCPSTSAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateGcpStsAccount", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"account_name\":\"example-gcp-account\",\"project_id\":\"my-gcp-project\",\"enable\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateIncident", + "qualifiedName": "DatadogApi.CreateIncident", + "fullyQualifiedName": "DatadogApi.CreateIncident@2.0.0", + "description": "Create a new incident in Datadog.\n\nThis tool is used to create a new incident within Datadog's incident management system. Trigger this tool when there is a need to report or manage an incident requiring attention.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateIncident'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateIncident", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\":\"Incident Title\",\"status\":\"open\",\"priority\":\"high\",\"type\":\"performance\",\"service\":\"my_service\",\"description\":\"Description of the incident\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateIncidentImpact", + "qualifiedName": "DatadogApi.CreateIncidentImpact", + "fullyQualifiedName": "DatadogApi.CreateIncidentImpact@2.0.0", + "description": "Create an impact for a specific incident.\n\n This tool is used to create an impact for a specified incident. It should be called when there is a need to log or document the impact details of an ongoing or past incident.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_uuid", + "type": "string", + "required": false, + "description": "The unique identifier (UUID) for the incident. This is required to log impact details for the specified incident. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "included_resources", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of related resources to include in the response, such as 'users' or 'details'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateIncidentImpact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateIncidentImpact", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "included_resources": { + "value": ["users", "details"], + "type": "array", + "required": false + }, + "request_body": { + "value": "{\"impactDetails\":\"Service disruption due to server overload.\",\"severity\":\"high\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateIncidentIntegration", + "qualifiedName": "DatadogApi.CreateIncidentIntegration", + "fullyQualifiedName": "DatadogApi.CreateIncidentIntegration@2.0.0", + "description": "Create incident integration metadata for an incident.\n\n Use this tool to create integration metadata related to a specific incident in Datadog. It facilitates linking external integrations to an incident for enhanced tracking and management.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_uuid", + "type": "string", + "required": false, + "description": "The unique identifier (UUID) of the incident to create integration metadata for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateIncidentIntegration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateIncidentIntegration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"integration_type\":\"slack\",\"url\":\"https://hooks.slack.com/services/XYZ/ABC/123\",\"name\":\"Slack Integration\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateIncidentNotificationRule", + "qualifiedName": "DatadogApi.CreateIncidentNotificationRule", + "fullyQualifiedName": "DatadogApi.CreateIncidentNotificationRule@2.0.0", + "description": "Creates a new incident notification rule in Datadog.\n\nUse this tool to create and manage notification rules for incidents in Datadog. It should be called when there is a need to set up a new notification rule for monitoring incident alerts.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateIncidentNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateIncidentNotificationRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"High CPU Usage Alert\", \"type\": \"email\", \"message\": \"CPU usage has exceeded 80%\", \"notify_on\": [\"status_change\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateIncidentNotificationTemplate", + "qualifiedName": "DatadogApi.CreateIncidentNotificationTemplate", + "fullyQualifiedName": "DatadogApi.CreateIncidentNotificationTemplate@2.0.0", + "description": "Creates a new incident notification template.\n\nUse this tool to create a new notification template for incidents. It should be called when there is a need to set up or customize notifications related to incident management.", + "parameters": [ + { + "name": "notification_content_body", + "type": "string", + "required": true, + "description": "The body content for the notification template, describing the detailed message of the notification.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_subject", + "type": "string", + "required": true, + "description": "The subject line for the notification template. This sets the subject of the template being created.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_template_category", + "type": "string", + "required": true, + "description": "The category of the notification template.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_template_name", + "type": "string", + "required": true, + "description": "The name for the notification template to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type_notification_template", + "type": "string", + "required": true, + "description": "Specify the resource type for notification templates, which should be 'notification_templates'.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_type_id", + "type": "string", + "required": false, + "description": "The ID of the incident type to associate with the notification template.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_type_resource_type", + "type": "string", + "required": false, + "description": "The resource type for the incident, which should be 'incident_types'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateIncidentNotificationTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateIncidentNotificationTemplate", + "parameters": { + "notification_content_body": { + "value": "An incident has occurred that requires your immediate attention. Please review the details below.", + "type": "string", + "required": true + }, + "notification_subject": { + "value": "Urgent: Incident Notification", + "type": "string", + "required": true + }, + "notification_template_category": { + "value": "Critical Alerts", + "type": "string", + "required": true + }, + "notification_template_name": { + "value": "High Priority Incident Alert", + "type": "string", + "required": true + }, + "resource_type_notification_template": { + "value": "notification_templates", + "type": "string", + "required": true + }, + "incident_type_id": { + "value": "incident123", + "type": "string", + "required": false + }, + "incident_type_resource_type": { + "value": "incident_types", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateIncidentTodo", + "qualifiedName": "DatadogApi.CreateIncidentTodo", + "fullyQualifiedName": "DatadogApi.CreateIncidentTodo@2.0.0", + "description": "Create a task within an incident in Datadog.\n\n This tool is used to add a to-do item to an incident in Datadog, helping manage and track tasks related to incident resolution.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_uuid", + "type": "string", + "required": false, + "description": "The UUID of the incident for which the to-do is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateIncidentTodo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateIncidentTodo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"todo_title\":\"Investigate service outage\",\"assigned_to\":\"team_member@example.com\",\"due_date\":\"2023-10-15T17:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateIncidentType", + "qualifiedName": "DatadogApi.CreateIncidentType", + "fullyQualifiedName": "DatadogApi.CreateIncidentType@2.0.0", + "description": "Create a new incident type in Datadog.\n\nThis tool is used to create a new incident type in Datadog, allowing users to define categories for managing incidents effectively.", + "parameters": [ + { + "name": "incident_type_name", + "type": "string", + "required": true, + "description": "The name of the incident type to be created in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "creator_user_id", + "type": "string", + "required": false, + "description": "A unique ID representing the user who created the incident type.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_creation_timestamp", + "type": "string", + "required": false, + "description": "Timestamp indicating when the incident type was created. Format should be ISO 8601.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_title_prefix", + "type": "string", + "required": false, + "description": "The string prepended to the incident title throughout the Datadog app.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_type_description", + "type": "string", + "required": false, + "description": "Text that describes the incident type. Provide a clear, concise explanation to aid in management and identification.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_type_resource_type", + "type": "string", + "required": false, + "description": "Specifies the incident type resource type. Must be 'incident_types'.", + "enum": null, + "inferrable": true + }, + { + "name": "last_modified_timestamp", + "type": "string", + "required": false, + "description": "Timestamp indicating when the incident type was last modified. Use ISO 8601 format, e.g., '2023-10-01T14:30:00Z'.", + "enum": null, + "inferrable": true + }, + { + "name": "last_modified_user_id", + "type": "string", + "required": false, + "description": "Unique identifier for the user who last modified the incident type.", + "enum": null, + "inferrable": true + }, + { + "name": "set_as_default_incident_type", + "type": "boolean", + "required": false, + "description": "Set to true to make this the default incident type if no type is specified during incident creation.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateIncidentType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateIncidentType", + "parameters": { + "incident_type_name": { + "value": "Network Outage", + "type": "string", + "required": true + }, + "creator_user_id": { + "value": "user_12345", + "type": "string", + "required": false + }, + "incident_creation_timestamp": { + "value": "2023-10-01T14:00:00Z", + "type": "string", + "required": false + }, + "incident_title_prefix": { + "value": "[URGENT]", + "type": "string", + "required": false + }, + "incident_type_description": { + "value": "This incident type is used for all network-related outages.", + "type": "string", + "required": false + }, + "incident_type_resource_type": { + "value": "incident_types", + "type": "string", + "required": false + }, + "last_modified_timestamp": { + "value": "2023-10-01T14:30:00Z", + "type": "string", + "required": false + }, + "last_modified_user_id": { + "value": "user_67890", + "type": "string", + "required": false + }, + "set_as_default_incident_type": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateLogBasedMetric", + "qualifiedName": "DatadogApi.CreateLogBasedMetric", + "fullyQualifiedName": "DatadogApi.CreateLogBasedMetric@2.0.0", + "description": "Create a metric from your ingested logs.\n\nUse this tool to create a metric based on the logs ingested in your Datadog organization. It returns the log-based metric object when the request is successful.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateLogsMetric'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateLogBasedMetric", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"error_rate_metric\", \"query\": \"status:error\", \"type\": \"count\", \"tags\": [\"env:production\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateLogsArchive", + "qualifiedName": "DatadogApi.CreateLogsArchive", + "fullyQualifiedName": "DatadogApi.CreateLogsArchive@2.0.0", + "description": "Create an archive of logs in your organization.\n\nUse this tool to create a new archive for logs within your organization through Datadog. This is useful for organizing and storing logs for compliance or analysis purposes.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateLogsArchive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateLogsArchive", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"archive_name\":\"logs_archive_2023\",\"source\":\"application_logs\",\"destination\":\"s3_bucket_name\",\"compression\":\"gzip\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateMetricTagConfiguration", + "qualifiedName": "DatadogApi.CreateMetricTagConfiguration", + "fullyQualifiedName": "DatadogApi.CreateMetricTagConfiguration@2.0.0", + "description": "Create queryable tag configurations for metrics.\n\n This tool is used to create and define a list of queryable tag keys for an existing metric in Datadog, such as count, gauge, rate, or distribution metrics. It allows for optional percentile aggregations on distribution metrics. By setting the 'exclude_tags_mode' to true, users can switch from an allow-list to a deny-list mode, where defined tags are not queryable. This tool requires the `Manage Tags for Metrics` permission.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "metric_name", + "type": "string", + "required": false, + "description": "The name of the existing metric for which the tag configuration is to be created. This is required to identify the specific metric in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTagConfiguration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateMetricTagConfiguration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "metric_name": { + "value": "system.cpu.utilization", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"tags\":[\"env:production\",\"role:database\"],\"exclude_tags_mode\":false}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateMonitorConfigPolicy", + "qualifiedName": "DatadogApi.CreateMonitorConfigPolicy", + "fullyQualifiedName": "DatadogApi.CreateMonitorConfigPolicy@2.0.0", + "description": "Create a new monitor configuration policy in Datadog.\n\nUse this tool to create monitor configuration policies within Datadog, specifying the desired configurations and parameters.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateMonitorConfigPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateMonitorConfigPolicy", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"CPU Usage High\", \"type\": \"metric alert\", \"query\": \"avg(last_5m):avg:system.cpu.user{*} > 75\", \"message\": \"CPU usage is too high!\", \"tags\": [\"environment:production\", \"role:database\"], \"options\": {\"notify_audit\": true, \"timeout\": 300, \"silenced\": {}, \"new_host_delay\": 300, \"require_full_window\": true}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateMonitorNotificationRule", + "qualifiedName": "DatadogApi.CreateMonitorNotificationRule", + "fullyQualifiedName": "DatadogApi.CreateMonitorNotificationRule@2.0.0", + "description": "Creates a monitor notification rule in Datadog.\n\nUse this tool to set up a notification rule for a specific monitor in Datadog. This allows for alerting based on monitor condition changes.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateMonitorNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateMonitorNotificationRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"monitor_id\": 12345, \"notification_type\": \"email\", \"message\": \"Monitor alert triggered!\", \"recipient\": \"alerts@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateMonitorUserTemplate", + "qualifiedName": "DatadogApi.CreateMonitorUserTemplate", + "fullyQualifiedName": "DatadogApi.CreateMonitorUserTemplate@2.0.0", + "description": "Create a new monitor user template in Datadog.\n\nThis tool should be called to create a new user template for monitoring within Datadog.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateMonitorUserTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateMonitorUserTemplate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"New User Template\",\"type\":\"custom\",\"notification_type\":\"email\",\"users\":[\"user@example.com\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewApp", + "qualifiedName": "DatadogApi.CreateNewApp", + "fullyQualifiedName": "DatadogApi.CreateNewApp@2.0.0", + "description": "Create a new app and return its ID using Datadog.\n\nUse this tool to create a new app in Datadog. Ensure you have a registered application key or configured permissions in the UI before calling this tool.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateApp'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateNewApp", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"My New App\",\"description\":\"This app is used for monitoring purposes.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewDatastore", + "qualifiedName": "DatadogApi.CreateNewDatastore", + "fullyQualifiedName": "DatadogApi.CreateNewDatastore@2.0.0", + "description": "Creates a new datastore in Datadog.\n\nUse this tool to create a new datastore within the Datadog platform. It should be called when a new storage resource needs to be initialized or added to the Datadog system.", + "parameters": [ + { + "name": "datastore_description", + "type": "string", + "required": false, + "description": "A human-readable description about the datastore.", + "enum": null, + "inferrable": true + }, + { + "name": "datastore_display_name", + "type": "string", + "required": false, + "description": "The display name for the new datastore. This should be a human-readable and descriptive name.", + "enum": null, + "inferrable": true + }, + { + "name": "datastore_id", + "type": "string", + "required": false, + "description": "Optional ID for the new datastore. If not provided, a default one will be generated automatically.", + "enum": null, + "inferrable": true + }, + { + "name": "datastore_resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type for the datastore. Valid value is 'datastores'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_access_level", + "type": "string", + "required": false, + "description": "The access level for the datastore within the organization. Options: 'contributor', 'viewer', or 'manager'.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_key_column_name", + "type": "string", + "required": false, + "description": "The name of the primary key column for this datastore. Must follow PostgreSQL naming conventions and not exceed 63 characters.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_key_generation_strategy", + "type": "string", + "required": false, + "description": "Set to `uuid` for automatic primary key generation when new items are added. Default is `none`, requiring manual key assignment.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateDatastore'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateNewDatastore", + "parameters": { + "datastore_description": { + "value": "This datastore is used for storing user data.", + "type": "string", + "required": false + }, + "datastore_display_name": { + "value": "User Data Store", + "type": "string", + "required": false + }, + "datastore_id": { + "value": "user_data_001", + "type": "string", + "required": false + }, + "datastore_resource_type": { + "value": "datastores", + "type": "string", + "required": false + }, + "organization_access_level": { + "value": "manager", + "type": "string", + "required": false + }, + "primary_key_column_name": { + "value": "user_id", + "type": "string", + "required": false + }, + "primary_key_generation_strategy": { + "value": "uuid", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewTeam", + "qualifiedName": "DatadogApi.CreateNewTeam", + "fullyQualifiedName": "DatadogApi.CreateNewTeam@2.0.0", + "description": "Create a new team and add specified members.\n\nThis tool creates a new team and adds specified user IDs to it. Use it when you need to establish a team and assign users to it in Datadog.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateNewTeam", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"team_name\":\"New Team\",\"members\":[\"user_id_1\",\"user_id_2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOktaAccount", + "qualifiedName": "DatadogApi.CreateOktaAccount", + "fullyQualifiedName": "DatadogApi.CreateOktaAccount@2.0.0", + "description": "Create an Okta account via Datadog integration.\n\nUse this tool to create a new Okta account through Datadog's API integration. This is useful when setting up user accounts for Okta within the Datadog platform.", + "parameters": [ + { + "name": "okta_account_domain", + "type": "string", + "required": true, + "description": "The domain of the Okta account to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "okta_account_name", + "type": "string", + "required": true, + "description": "The name of the Okta account to be created via Datadog API integration.", + "enum": null, + "inferrable": true + }, + { + "name": "okta_auth_method", + "type": "string", + "required": true, + "description": "Specify the authorization method for the Okta account.", + "enum": null, + "inferrable": true + }, + { + "name": "client_secret", + "type": "string", + "required": false, + "description": "The client secret associated with the Okta app integration. This is required for authentication.", + "enum": null, + "inferrable": true + }, + { + "name": "okta_account_id", + "type": "string", + "required": false, + "description": "The ID of the Okta account, which is a UUID hash of the account name.", + "enum": null, + "inferrable": true + }, + { + "name": "okta_account_type", + "type": "string", + "required": false, + "description": "Specifies the type of account for the Okta account. The value should be 'okta-accounts'.", + "enum": null, + "inferrable": true + }, + { + "name": "okta_api_key", + "type": "string", + "required": false, + "description": "The API key for the Okta account integration. This key is used for authenticating the account with Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "okta_client_id", + "type": "string", + "required": false, + "description": "The Client ID for the Okta app integration, necessary for the account setup.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateOktaAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateOktaAccount", + "parameters": { + "okta_account_domain": { + "value": "example.okta.com", + "type": "string", + "required": true + }, + "okta_account_name": { + "value": "Example Account", + "type": "string", + "required": true + }, + "okta_auth_method": { + "value": "OAuth2", + "type": "string", + "required": true + }, + "client_secret": { + "value": "your_client_secret_here", + "type": "string", + "required": false + }, + "okta_account_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "okta_account_type": { + "value": "okta-accounts", + "type": "string", + "required": false + }, + "okta_api_key": { + "value": "your_okta_api_key", + "type": "string", + "required": false + }, + "okta_client_id": { + "value": "your_client_id_here", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOnCallEscalationPolicy", + "qualifiedName": "DatadogApi.CreateOnCallEscalationPolicy", + "fullyQualifiedName": "DatadogApi.CreateOnCallEscalationPolicy@2.0.0", + "description": "Create a new On-Call escalation policy in Datadog.\n\n This tool is used to create a new On-Call escalation policy in Datadog. Call this tool when you need to set up or adjust escalation protocols within your team for handling alerts.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "include_relationships", + "type": "string", + "required": false, + "description": "Comma-separated list of included relationships to return. Allowed values: teams, steps, steps.targets. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateOnCallEscalationPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateOnCallEscalationPolicy", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "include_relationships": { + "value": "teams,steps", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Sample Escalation Policy\",\"type\":\"simple\",\"escalation_rules\":[{\"name\":\"First Level\",\"targets\":[{\"type\":\"team\",\"id\":\"team_id\"}]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOnCallSchedule", + "qualifiedName": "DatadogApi.CreateOnCallSchedule", + "fullyQualifiedName": "DatadogApi.CreateOnCallSchedule@2.0.0", + "description": "Create a new on-call schedule in Datadog.\n\n This tool is used to create a new on-call schedule in Datadog. It should be called when there is a need to set up a schedule for on-call duties, allowing teams to manage availability and response times. The tool returns a confirmation of the schedule created along with its details.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "include_relationships", + "type": "string", + "required": false, + "description": "Comma-separated list of relationships to return with the schedule. Options: `teams`, `layers`, `layers.members`, `layers.members.user`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateOnCallSchedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateOnCallSchedule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "include_relationships": { + "value": "teams,layers", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Support Schedule\",\"users\":[{\"id\":\"user1_id\",\"schedule_type\":\"weekly\"},{\"id\":\"user2_id\",\"schedule_type\":\"weekly\"}]} ", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOpsgenieService", + "qualifiedName": "DatadogApi.CreateOpsgenieService", + "fullyQualifiedName": "DatadogApi.CreateOpsgenieService@2.0.0", + "description": "Create a new Opsgenie service in Datadog integration.\n\nThis tool is used to create a new service object within the Opsgenie integration on Datadog. It should be called when you need to set up or add a new Opsgenie service to monitor and manage incidents or alerts.", + "parameters": [ + { + "name": "opsgenie_api_key", + "type": "string", + "required": true, + "description": "The API key required to authenticate your Opsgenie service within Datadog. This key must be a valid string associated with your Opsgenie account.", + "enum": null, + "inferrable": true + }, + { + "name": "opsgenie_service_name", + "type": "string", + "required": true, + "description": "The name for the Opsgenie service to be created in the Datadog integration.", + "enum": null, + "inferrable": true + }, + { + "name": "opsgenie_service_region", + "type": "string", + "required": true, + "description": "The region for the Opsgenie service. Choose from 'us', 'eu', or 'custom'.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_region_url", + "type": "string", + "required": false, + "description": "The custom URL for a specific Opsgenie region. Used to connect to a custom region.", + "enum": null, + "inferrable": true + }, + { + "name": "opsgenie_service_resource_type", + "type": "string", + "required": false, + "description": "Specify the Opsgenie service resource type, which must be 'opsgenie-service'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateOpsgenieService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateOpsgenieService", + "parameters": { + "opsgenie_api_key": { + "value": "abcd1234efgh5678ijklmnop", + "type": "string", + "required": true + }, + "opsgenie_service_name": { + "value": "Critical Alerts", + "type": "string", + "required": true + }, + "opsgenie_service_region": { + "value": "us", + "type": "string", + "required": true + }, + "custom_region_url": { + "value": "", + "type": "string", + "required": false + }, + "opsgenie_service_resource_type": { + "value": "opsgenie-service", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOrganizationUser", + "qualifiedName": "DatadogApi.CreateOrganizationUser", + "fullyQualifiedName": "DatadogApi.CreateOrganizationUser@2.0.0", + "description": "Create a user for your organization in Datadog.\n\nThis tool allows you to create a new user for your organization in Datadog. Use it when you need to add a team member to your Datadog account.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateOrganizationUser", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"email\":\"john.doe@example.com\",\"verification\":\"true\",\"role\":\"standard\",\"name\":\"John Doe\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOrgConnection", + "qualifiedName": "DatadogApi.CreateOrgConnection", + "fullyQualifiedName": "DatadogApi.CreateOrgConnection@2.0.0", + "description": "Creates a new organization connection in Datadog.\n\nUse this tool to create a connection between the current organization and a target organization within Datadog. Ideal for linking organizational resources and sharing data across teams.", + "parameters": [ + { + "name": "connection_types", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of connection types to establish between the organizations.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_connection_type", + "type": "string", + "required": true, + "description": "Specify the type of the organization connection. Must be 'org_connection'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_relationship_type", + "type": "string", + "required": false, + "description": "Specifies the type of the organization relationship. Must be 'orgs'.", + "enum": null, + "inferrable": true + }, + { + "name": "target_org_name", + "type": "string", + "required": false, + "description": "The name of the target organization to connect with.", + "enum": null, + "inferrable": true + }, + { + "name": "target_org_uuid", + "type": "string", + "required": false, + "description": "The UUID of the target organization to connect to.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateOrgConnections'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateOrgConnection", + "parameters": { + "connection_types": { + "value": ["data_sharing", "resource_linking"], + "type": "array", + "required": true + }, + "organization_connection_type": { + "value": "org_connection", + "type": "string", + "required": true + }, + "organization_relationship_type": { + "value": "orgs", + "type": "string", + "required": false + }, + "target_org_name": { + "value": "TargetOrganization", + "type": "string", + "required": false + }, + "target_org_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOrUpdateServiceDefinitions", + "qualifiedName": "DatadogApi.CreateOrUpdateServiceDefinitions", + "fullyQualifiedName": "DatadogApi.CreateOrUpdateServiceDefinitions@2.0.0", + "description": "Create or update service definitions in Datadog.\n\nUse this tool to create a new service definition or update an existing one in the Datadog Service Catalog. Call this when needing to manage service details within Datadog.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateOrUpdateServiceDefinitions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateOrUpdateServiceDefinitions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"service\": {\"name\": \"example-service\", \"description\": \"This is an example service definition.\", \"type\": \"web\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreatePipeline", + "qualifiedName": "DatadogApi.CreatePipeline", + "fullyQualifiedName": "DatadogApi.CreatePipeline@2.0.0", + "description": "Create a new pipeline in Datadog's system.\n\nUse this tool to create a new pipeline within the Datadog service. It should be called when a user needs to set up or initialize a new data pipeline in their Datadog environment.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreatePipeline'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreatePipeline", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"pipeline_name\":\"my_data_pipeline\",\"data_source\":\"api\",\"sink\":\"datastore\",\"transformations\":[{\"type\":\"filter\",\"criteria\":\"status:active\"},{\"type\":\"aggregate\",\"metric\":\"count\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreatePowerpack", + "qualifiedName": "DatadogApi.CreatePowerpack", + "fullyQualifiedName": "DatadogApi.CreatePowerpack@2.0.0", + "description": "Creates a new powerpack in Datadog.\n\nUse this tool to initiate a powerpack creation in Datadog when managing monitoring configurations is required.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreatePowerpack'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreatePowerpack", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"New Powerpack\",\"description\":\"A powerpack for enhanced monitoring\",\"tags\":[\"env:production\",\"team:devops\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateProject", + "qualifiedName": "DatadogApi.CreateProject", + "fullyQualifiedName": "DatadogApi.CreateProject@2.0.0", + "description": "Create a new project in the system.\n\nUse this tool to initiate and create a new project effectively. It communicates with the Datadog service to set up the project environment.", + "parameters": [ + { + "name": "project_key", + "type": "string", + "required": true, + "description": "The unique key for the project. Cannot use the value 'CASE'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_name", + "type": "string", + "required": true, + "description": "Specify the name of the project to be created. It should be a descriptive string.", + "enum": null, + "inferrable": true + }, + { + "name": "project_resource_type", + "type": "string", + "required": false, + "description": "Specifies the project resource type, which must be 'project'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateProject", + "parameters": { + "project_key": { + "value": "my_unique_project_123", + "type": "string", + "required": true + }, + "project_name": { + "value": "New Innovative Project", + "type": "string", + "required": true + }, + "project_resource_type": { + "value": "project", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateReferenceTable", + "qualifiedName": "DatadogApi.CreateReferenceTable", + "fullyQualifiedName": "DatadogApi.CreateReferenceTable@2.0.0", + "description": "Create a new reference table in Datadog.\n\nThis tool creates a new reference table in Datadog. It can be called by either uploading CSV data to get an upload ID or by providing cloud storage access details. Use this when you need to set up a reference table with data from CSV files.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateReferenceTable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateReferenceTable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"table_name\": \"example_table\", \"data\": [[\"id\", \"value\"], [1, \"example1\"], [2, \"example2\"]]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateReferenceTableUpload", + "qualifiedName": "DatadogApi.CreateReferenceTableUpload", + "fullyQualifiedName": "DatadogApi.CreateReferenceTableUpload@2.0.0", + "description": "Create a reference table upload for bulk data ingestion.\n\nUse this tool to initiate the creation of a reference table upload in Datadog, facilitating bulk data ingestion for analytics or monitoring purposes.", + "parameters": [ + { + "name": "file_upload_headers", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings representing the headers of the file to upload for the reference table.", + "enum": null, + "inferrable": true + }, + { + "name": "part_size_bytes", + "type": "integer", + "required": false, + "description": "The size of each part in the upload in bytes. For multipart uploads (part_count > 1), all parts except the last one must be at least 5,000,000 bytes. For single-part uploads, any size is allowed.", + "enum": null, + "inferrable": true + }, + { + "name": "reference_table_name", + "type": "string", + "required": false, + "description": "The name of the reference table for the upload.", + "enum": null, + "inferrable": true + }, + { + "name": "upload_id", + "type": "string", + "required": false, + "description": "The unique ID for the upload process in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "upload_part_count", + "type": "integer", + "required": false, + "description": "Specify the number of parts in the upload. Used for multipart uploads.", + "enum": null, + "inferrable": true + }, + { + "name": "upload_resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type for the upload. Must be set to 'upload'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateReferenceTableUpload'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateReferenceTableUpload", + "parameters": { + "file_upload_headers": { + "value": ["id", "name", "value"], + "type": "array", + "required": false + }, + "part_size_bytes": { + "value": 5000000, + "type": "integer", + "required": false + }, + "reference_table_name": { + "value": "example_reference_table", + "type": "string", + "required": false + }, + "upload_id": { + "value": "upload_123456789", + "type": "string", + "required": false + }, + "upload_part_count": { + "value": 3, + "type": "integer", + "required": false + }, + "upload_resource_type": { + "value": "upload", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateRole", + "qualifiedName": "DatadogApi.CreateRole", + "fullyQualifiedName": "DatadogApi.CreateRole@2.0.0", + "description": "Create a new role for your organization in Datadog.\n\nThis tool should be called when you need to create a new organizational role within the Datadog system. It returns details about the newly created role, helping to manage access and permissions for users.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateRole'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateRole", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"Admin Role\", \"permissions\": [\"manage_users\", \"monitor_metrics\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateRumApplication", + "qualifiedName": "DatadogApi.CreateRumApplication", + "fullyQualifiedName": "DatadogApi.CreateRumApplication@2.0.0", + "description": "Create a new RUM application within your organization.\n\nThis tool is used to create a new RUM (Real User Monitoring) application in your organization using Datadog's API.", + "parameters": [ + { + "name": "rum_application_name", + "type": "string", + "required": true, + "description": "The name of the RUM application to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "product_analytics_retention_state", + "type": "string", + "required": false, + "description": "Set the retention policy for Product Analytics data from RUM events. Options are 'MAX' or 'NONE'.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_application_creation_type", + "type": "string", + "required": false, + "description": "Specifies the type for creating a RUM application. Use `rum_application_create`.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_application_type", + "type": "string", + "required": false, + "description": "Specifies the type of the RUM application. Expected values: `browser`, `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, `kotlin-multiplatform`.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_event_processing_state", + "type": "string", + "required": false, + "description": "Configures which RUM events are processed and stored for the application. Accepted values are 'ALL', 'ERROR_FOCUSED_MODE', or 'NONE'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateRUMApplication'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateRumApplication", + "parameters": { + "rum_application_name": { + "value": "MyWebApp", + "type": "string", + "required": true + }, + "product_analytics_retention_state": { + "value": "MAX", + "type": "string", + "required": false + }, + "rum_application_creation_type": { + "value": "rum_application_create", + "type": "string", + "required": false + }, + "rum_application_type": { + "value": "browser", + "type": "string", + "required": false + }, + "rum_event_processing_state": { + "value": "ALL", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateRumMetric", + "qualifiedName": "DatadogApi.CreateRumMetric", + "fullyQualifiedName": "DatadogApi.CreateRumMetric@2.0.0", + "description": "Create a metric based on RUM data.\n\nUse this tool to create a metric using your organization's RUM data via Datadog. It returns the metric object if successful.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateRumMetric'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateRumMetric", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"example.metric\",\"type\":\"gauge\",\"description\":\"An example RUM metric created via API.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateRumRetentionFilter", + "qualifiedName": "DatadogApi.CreateRumRetentionFilter", + "fullyQualifiedName": "DatadogApi.CreateRumRetentionFilter@2.0.0", + "description": "Create a RUM retention filter for a RUM application.\n\nUse this tool to create a data retention filter for an RUM application, which controls the retention rules of your application's RUM data.", + "parameters": [ + { + "name": "rum_application_id", + "type": "string", + "required": true, + "description": "RUM application ID for which the retention filter is to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_event_type_filter", + "type": "string", + "required": true, + "description": "Specify the type of RUM events to filter. Options include: session, view, action, error, resource, long_task, vital.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_retention_filter_name", + "type": "string", + "required": true, + "description": "The name assigned to the RUM retention filter, used for identification.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_retention_filter_sample_rate", + "type": "integer", + "required": true, + "description": "The sample rate for a RUM retention filter, an integer between 0 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_retention_filter", + "type": "boolean", + "required": false, + "description": "Set true to enable the retention filter, false to disable it.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type_for_retention", + "type": "string", + "required": false, + "description": "Specifies the resource type as 'retention_filters'. This value should always be 'retention_filters'.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_retention_filter_query", + "type": "string", + "required": false, + "description": "The query string that defines the filtering criteria for the RUM retention filter.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateRetentionFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateRumRetentionFilter", + "parameters": { + "rum_application_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "rum_event_type_filter": { + "value": "view", + "type": "string", + "required": true + }, + "rum_retention_filter_name": { + "value": "UserSessionRetention", + "type": "string", + "required": true + }, + "rum_retention_filter_sample_rate": { + "value": 75, + "type": "integer", + "required": true + }, + "enable_retention_filter": { + "value": true, + "type": "boolean", + "required": false + }, + "resource_type_for_retention": { + "value": "retention_filters", + "type": "string", + "required": false + }, + "rum_retention_filter_query": { + "value": "status:success", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateScanningGroup", + "qualifiedName": "DatadogApi.CreateScanningGroup", + "fullyQualifiedName": "DatadogApi.CreateScanningGroup@2.0.0", + "description": "Create a new scanning group in Datadog.\n\nThis tool creates a new scanning group in the Datadog sensitive data scanner. It allows for the configuration relationship to be included but does not support creating rules simultaneously. The new group is added last in the configuration order.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateScanningGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateScanningGroup", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Example Scanning Group\",\"description\":\"This is an example scanning group for testing purposes.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateScanningRule", + "qualifiedName": "DatadogApi.CreateScanningRule", + "fullyQualifiedName": "DatadogApi.CreateScanningRule@2.0.0", + "description": "Create a scanning rule in a sensitive data group.\n\nUse this tool to create a new scanning rule within a sensitive data scanner group. The rule requires a group relationship and either a standard pattern or a regex attribute, but not both. If no attributes are specified, it will scan all except excluded ones.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateScanningRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateScanningRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"group_id\":\"sensitive_data_group_1\",\"pattern\":\"\\d{3}-\\d{2}-\\d{4}\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateScorecardRule", + "qualifiedName": "DatadogApi.CreateScorecardRule", + "fullyQualifiedName": "DatadogApi.CreateScorecardRule@2.0.0", + "description": "Create a new scorecard rule in Datadog.\n\nUse this tool to create a new scorecard rule in Datadog when you need to automate monitoring tasks or enforce policies. Ideal for setting up performance metrics or compliance checks.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateScorecardRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateScorecardRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"CPU Usage Alert\", \"query\": \"avg:system.cpu.idle{*} < 20\", \"thresholds\": {\"critical\": 20, \"warning\": 30}, \"message\": \"CPU usage is too high!\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSecurityFilter", + "qualifiedName": "DatadogApi.CreateSecurityFilter", + "fullyQualifiedName": "DatadogApi.CreateSecurityFilter@2.0.0", + "description": "Create a security filter using Datadog's API.\n\nUse this tool to create a security filter for monitoring purposes in Datadog. Ideal for setting up security monitoring based on predefined conditions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateSecurityFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateSecurityFilter", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filter_name\": \"example_filter\",\"filter_query\": \"source:aws service:ec2 status:error\",\"description\": \"Filter for EC2 error logs\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSecurityMonitoringRule", + "qualifiedName": "DatadogApi.CreateSecurityMonitoringRule", + "fullyQualifiedName": "DatadogApi.CreateSecurityMonitoringRule@2.0.0", + "description": "Create a detection rule for monitoring security events.\n\nThis tool is used to create a new detection rule for monitoring security events through Datadog. It involves setting up criteria and policies to trigger alerts for specific security-related incidents.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateSecurityMonitoringRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateSecurityMonitoringRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Failed Login Attempts Detection\",\"query\":\"avg(last_5m):count:login.failures{*} > 5\",\"type\":\"log\",\"message\":\"High number of failed login attempts detected.\",\"tags\":[\"security\",\"login\"],\"options\":{\"thresholds\":{\"critical\":5}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateServiceAccount", + "qualifiedName": "DatadogApi.CreateServiceAccount", + "fullyQualifiedName": "DatadogApi.CreateServiceAccount@2.0.0", + "description": "Create a service account for your organization.\n\n\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateServiceAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateServiceAccount", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"example-service-account\",\"permissions\":[\"read:metrics\",\"write:logs\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateServiceAccountAppKey", + "qualifiedName": "DatadogApi.CreateServiceAccountAppKey", + "fullyQualifiedName": "DatadogApi.CreateServiceAccountAppKey@2.0.0", + "description": "Create an application key for a service account.\n\nUse this tool to create a new application key for a specified service account on Datadog. It should be called when an application key is needed for service account integration or access.", + "parameters": [ + { + "name": "application_key_name", + "type": "string", + "required": true, + "description": "The name for the application key to be created for the service account.", + "enum": null, + "inferrable": true + }, + { + "name": "service_account_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the service account for which the application key will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "application_key_scopes", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of scopes to assign to the application key for specific permissions.", + "enum": null, + "inferrable": true + }, + { + "name": "application_keys_resource_type", + "type": "string", + "required": false, + "description": "Specify the resource type for the application key. This should always be 'application_keys'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateServiceAccountApplicationKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateServiceAccountAppKey", + "parameters": { + "application_key_name": { + "value": "MyServiceAccountAppKey", + "type": "string", + "required": true + }, + "service_account_identifier": { + "value": "service_account_12345", + "type": "string", + "required": true + }, + "application_key_scopes": { + "value": ["read:logs", "write:metrics"], + "type": "array", + "required": false + }, + "application_keys_resource_type": { + "value": "application_keys", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSloReportJob", + "qualifiedName": "DatadogApi.CreateSloReportJob", + "fullyQualifiedName": "DatadogApi.CreateSloReportJob@2.0.0", + "description": "Initiate the generation of an SLO report in Datadog.\n\nUse this tool to start an SLO report job in Datadog. Once created, the job processes asynchronously, and a CSV report becomes available for download. Utilize the returned `report_id` to check status and access the report.", + "parameters": [ + { + "name": "from_timestamp_epoch_seconds", + "type": "integer", + "required": true, + "description": "The starting timestamp for the SLO report in epoch seconds. Specifies when the report should begin.", + "enum": null, + "inferrable": true + }, + { + "name": "report_to_timestamp", + "type": "integer", + "required": true, + "description": "The epoch timestamp representing the end time for the SLO report.", + "enum": null, + "inferrable": true + }, + { + "name": "slo_query_filter", + "type": "string", + "required": true, + "description": "The query string to filter SLO results, e.g., 'service:' or 'slo-name'.", + "enum": null, + "inferrable": true + }, + { + "name": "report_generation_frequency", + "type": "string", + "required": false, + "description": "The frequency for generating report data. Options: daily, weekly, monthly.", + "enum": null, + "inferrable": true + }, + { + "name": "report_timezone", + "type": "string", + "required": false, + "description": "The timezone to determine the start and end of each interval for the SLO report. It affects how intervals such as weekly start at 12am on Sunday in the specified timezone.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateSLOReportJob'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateSloReportJob", + "parameters": { + "from_timestamp_epoch_seconds": { + "value": 1672537600, + "type": "integer", + "required": true + }, + "report_to_timestamp": { + "value": 1672624000, + "type": "integer", + "required": true + }, + "slo_query_filter": { + "value": "service:my-service", + "type": "string", + "required": true + }, + "report_generation_frequency": { + "value": "weekly", + "type": "string", + "required": false + }, + "report_timezone": { + "value": "UTC", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSpanMetric", + "qualifiedName": "DatadogApi.CreateSpanMetric", + "fullyQualifiedName": "DatadogApi.CreateSpanMetric@2.0.0", + "description": "Create a metric based on ingested spans in your organization.\n\nUse this tool to create a metric using your ingested spans. It will return the created span-based metric object if successful.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateSpansMetric'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateSpanMetric", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"metric_name\":\"custom.span.metric\",\"attributes\":{\"service\":\"my_service\",\"operation\":\"my_operation\",\"env\":\"production\"},\"type\":\"gauge\",\"tags\":[\"env:production\",\"service:my_service\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSupportCase", + "qualifiedName": "DatadogApi.CreateSupportCase", + "fullyQualifiedName": "DatadogApi.CreateSupportCase@2.0.0", + "description": "Create a new support case in Datadog.\n\nUse this tool to create a new support case in Datadog. Useful for reporting issues or requesting assistance.", + "parameters": [ + { + "name": "case_title", + "type": "string", + "required": true, + "description": "The title of the support case to be created. It should clearly summarize the issue or request.", + "enum": null, + "inferrable": true + }, + { + "name": "case_type_uuid", + "type": "string", + "required": true, + "description": "UUID representing the case type. Provide a valid UUID to specify the type of case being created.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_resource_type", + "type": "string", + "required": false, + "description": "The type of resource for the assignee, usually 'user'.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_user_id", + "type": "string", + "required": false, + "description": "A unique identifier for the user assigned to the case. Typically a UUID string.", + "enum": null, + "inferrable": true + }, + { + "name": "case_description", + "type": "string", + "required": false, + "description": "A detailed description of the support case. Include all relevant information about the issue or request.", + "enum": null, + "inferrable": true + }, + { + "name": "case_priority", + "type": "string", + "required": false, + "description": "The priority of the support case. Valid values are NOT_DEFINED, P1, P2, P3, P4, P5.", + "enum": null, + "inferrable": true + }, + { + "name": "case_resource_type", + "type": "string", + "required": false, + "description": "Specifies the type of resource being created. Always use \"case\" for this argument.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Provide the unique identifier of the project related to the support case.", + "enum": null, + "inferrable": true + }, + { + "name": "project_resource_type", + "type": "string", + "required": false, + "description": "Specifies the project resource type. Must be 'project'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCase'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateSupportCase", + "parameters": { + "case_title": { + "value": "Issue with Data Ingestion", + "type": "string", + "required": true + }, + "case_type_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "assignee_resource_type": { + "value": "user", + "type": "string", + "required": false + }, + "assignee_user_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "case_description": { + "value": "There is a significant delay in data ingestion for our logs, affecting analysis accuracy.", + "type": "string", + "required": false + }, + "case_priority": { + "value": "P2", + "type": "string", + "required": false + }, + "case_resource_type": { + "value": "case", + "type": "string", + "required": false + }, + "project_id": { + "value": "300e8400-e29b-41d4-a716-446655440001", + "type": "string", + "required": false + }, + "project_resource_type": { + "value": "project", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSuppressionRule", + "qualifiedName": "DatadogApi.CreateSuppressionRule", + "fullyQualifiedName": "DatadogApi.CreateSuppressionRule@2.0.0", + "description": "Create a new security monitoring suppression rule.\n\nUse this tool to create a new suppression rule in Datadog's security monitoring. It should be called when you need to suppress specific security alerts.", + "parameters": [ + { + "name": "enable_suppression_rule", + "type": "boolean", + "required": true, + "description": "Enable the suppression rule. Use true to enable, false to disable.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_query", + "type": "string", + "required": true, + "description": "The rule criteria for the suppression rule using detection rules syntax.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_name", + "type": "string", + "required": true, + "description": "The name of the suppression rule to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "data_exclusion_query", + "type": "string", + "required": false, + "description": "An exclusion query for input data to ignore events in suppression rules, applicable to logs, Agent events, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "expiration_date_unix_ms", + "type": "integer", + "required": false, + "description": "A Unix millisecond timestamp for rule expiration. After this date, the rule will not suppress signals.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": false, + "description": "The type of the resource, which should always be `suppressions`.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_timestamp", + "type": "integer", + "required": false, + "description": "A Unix millisecond timestamp indicating when the suppression rule begins to suppress signals.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_query", + "type": "string", + "required": false, + "description": "The query used to suppress signals in the security rule. Matches are not triggered.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_description", + "type": "string", + "required": false, + "description": "A description for the suppression rule. Provide a clear and concise explanation of the rule's purpose.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateSecurityMonitoringSuppression'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateSuppressionRule", + "parameters": { + "enable_suppression_rule": { + "value": true, + "type": "boolean", + "required": true + }, + "rule_query": { + "value": "security.alert.type: error AND security.alert.source: external", + "type": "string", + "required": true + }, + "suppression_rule_name": { + "value": "SuppressExternalErrorAlerts", + "type": "string", + "required": true + }, + "data_exclusion_query": { + "value": "resource.type: database", + "type": "string", + "required": false + }, + "expiration_date_unix_ms": { + "value": 1728000000000, + "type": "integer", + "required": false + }, + "resource_type": { + "value": "suppressions", + "type": "string", + "required": false + }, + "start_date_timestamp": { + "value": 1690000000000, + "type": "integer", + "required": false + }, + "suppression_query": { + "value": "security.alert.type: error AND NOT security.alert.source: internal", + "type": "string", + "required": false + }, + "suppression_rule_description": { + "value": "This rule suppresses external error alerts to reduce noise.", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTagPipelineRuleset", + "qualifiedName": "DatadogApi.CreateTagPipelineRuleset", + "fullyQualifiedName": "DatadogApi.CreateTagPipelineRuleset@2.0.0", + "description": "Create a tag pipeline ruleset with specified rules.\n\nThis tool creates a new tag pipeline ruleset using the specified rules and configurations in Datadog.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTagPipelinesRuleset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateTagPipelineRuleset", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"rules\":[{\"match\":{\"key\":\"env\",\"values\":[\"production\"]},\"tags\":{\"environment\":\"prod\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTenantBasedHandle", + "qualifiedName": "DatadogApi.CreateTenantBasedHandle", + "fullyQualifiedName": "DatadogApi.CreateTenantBasedHandle@2.0.0", + "description": "Create a tenant-based handle in Datadog for Teams.\n\nUse this tool to create a new tenant-based handle for the Microsoft Teams integration within Datadog. It should be called when you need to configure or add a handle specific to a tenant in Datadog's Microsoft Teams integration.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "ID of the Microsoft Teams channel to associate with the tenant-based handle.", + "enum": null, + "inferrable": true + }, + { + "name": "handle_name", + "type": "string", + "required": true, + "description": "The name for the tenant-based handle you wish to create in the Datadog Microsoft Teams integration.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The ID of the Microsoft Teams team to associate with the Datadog handle.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for the tenant in the Datadog Microsoft Teams integration.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type as 'tenant-based-handle'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTenantBasedHandle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateTenantBasedHandle", + "parameters": { + "channel_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "handle_name": { + "value": "TeamOperationsHandle", + "type": "string", + "required": true + }, + "team_id": { + "value": "9876543210", + "type": "string", + "required": true + }, + "tenant_id": { + "value": "tenant-abc-123", + "type": "string", + "required": true + }, + "resource_type": { + "value": "tenant-based-handle", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateUserApplicationKey", + "qualifiedName": "DatadogApi.CreateUserApplicationKey", + "fullyQualifiedName": "DatadogApi.CreateUserApplicationKey@2.0.0", + "description": "Create an application key for the current user in Datadog.\n\nUse this tool to generate a new application key for the current Datadog user. This is useful for accessing Datadog APIs that require authentication with user-specific credentials.", + "parameters": [ + { + "name": "application_key_name", + "type": "string", + "required": true, + "description": "The name of the application key to be created for the current user.", + "enum": null, + "inferrable": true + }, + { + "name": "application_key_resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type, should always be 'application_keys'.", + "enum": null, + "inferrable": true + }, + { + "name": "application_key_scopes", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of scopes to grant the application key for accessing specific resources.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCurrentUserApplicationKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateUserApplicationKey", + "parameters": { + "application_key_name": { + "value": "MyAppKey", + "type": "string", + "required": true + }, + "application_key_resource_type": { + "value": "application_keys", + "type": "string", + "required": false + }, + "application_key_scopes": { + "value": ["read:metrics", "write:events"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWafCustomRule", + "qualifiedName": "DatadogApi.CreateWafCustomRule", + "fullyQualifiedName": "DatadogApi.CreateWafCustomRule@2.0.0", + "description": "Create a new web application firewall custom rule.\n\nUse this tool to define a new custom rule for the web application firewall, enhancing security configurations.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateApplicationSecurityWafCustomRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateWafCustomRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Block SQL Injection\",\"type\":\"waf_rule\",\"enabled\":true,\"conditions\":[{\"field\":\"http.request.uri\",\"operator\":\"contains\",\"value\":\"SELECT\"},{\"field\":\"http.request.body\",\"operator\":\"matches\",\"value\":\"(.*)(UNION|INSERT|DELETE)(.*)\"}],\"action\":\"block\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWafExclusionFilter", + "qualifiedName": "DatadogApi.CreateWafExclusionFilter", + "fullyQualifiedName": "DatadogApi.CreateWafExclusionFilter@2.0.0", + "description": "Create a new WAF exclusion filter in Datadog.\n\nUse this tool to create a new Web Application Firewall (WAF) exclusion filter in Datadog. Exclusion filters help in preventing certain requests from being processed by the WAF, acting as passlist entries. Ideal for managing application security settings.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateApplicationSecurityWafExclusionFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateWafExclusionFilter", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filter_name\":\"example_exclusion_filter\",\"filter_type\":\"ip\",\"filter_value\":\"192.168.1.1\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWorkflowWebhookHandle", + "qualifiedName": "DatadogApi.CreateWorkflowWebhookHandle", + "fullyQualifiedName": "DatadogApi.CreateWorkflowWebhookHandle@2.0.0", + "description": "Create a webhook handle for Datadog Microsoft Teams integration.\n\nUse this tool to create a Workflows webhook handle within the Datadog Microsoft Teams integration. It is useful when setting up or managing integrations between Datadog workflows and Microsoft Teams for real-time alerts and notifications.", + "parameters": [ + { + "name": "webhook_handle_name", + "type": "string", + "required": true, + "description": "Name of the Workflows Webhook handle for Datadog Microsoft Teams integration.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_url", + "type": "string", + "required": true, + "description": "The URL for the Workflows Webhook in the Datadog Microsoft Teams integration.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_handle_resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type for the Workflows webhook handle. Must be 'workflows-webhook-handle'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateWorkflowsWebhookHandle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateWorkflowWebhookHandle", + "parameters": { + "webhook_handle_name": { + "value": "TeamsIntegrationWebhook", + "type": "string", + "required": true + }, + "webhook_url": { + "value": "https://outlook.office.com/webhook/your_webhook_url", + "type": "string", + "required": true + }, + "webhook_handle_resource_type": { + "value": "workflows-webhook-handle", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWorkloadProtectionRule", + "qualifiedName": "DatadogApi.CreateWorkloadProtectionRule", + "fullyQualifiedName": "DatadogApi.CreateWorkloadProtectionRule@2.0.0", + "description": "Create a new Workload Protection agent rule.\n\nUse this tool to create a new Workload Protection agent rule with specified parameters. Note that this endpoint is not available for the Government (US1-FED) site.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCSMThreatsAgentRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.CreateWorkloadProtectionRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"Sample Workload Protection Rule\", \"enabled\": true, \"conditions\": [{\"type\": \"process\", \"match\": {\"process\": {\"name\": \"nginx\"}}}], \"actions\": [{\"type\": \"alert\", \"level\": \"warning\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteActionConnection", + "qualifiedName": "DatadogApi.DeleteActionConnection", + "fullyQualifiedName": "DatadogApi.DeleteActionConnection@2.0.0", + "description": "Delete an existing action connection in Datadog.\n\nUse this tool to delete a specific action connection in Datadog. Appropriate permissions via a registered application key are required to perform this action.", + "parameters": [ + { + "name": "action_connection_id", + "type": "string", + "required": true, + "description": "The unique identifier for the action connection to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteActionConnection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteActionConnection", + "parameters": { + "action_connection_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteApmRetentionFilter", + "qualifiedName": "DatadogApi.DeleteApmRetentionFilter", + "fullyQualifiedName": "DatadogApi.DeleteApmRetentionFilter@2.0.0", + "description": "Delete a specific APM retention filter from your organization.\n\nUse this tool to delete a specific retention filter in Datadog's APM configuration. Note that default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be deleted.", + "parameters": [ + { + "name": "retention_filter_id", + "type": "string", + "required": true, + "description": "The ID of the retention filter to delete. Default filters cannot be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteApmRetentionFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteApmRetentionFilter", + "parameters": { + "retention_filter_id": { + "value": "abcdef123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteApp", + "qualifiedName": "DatadogApi.DeleteApp", + "fullyQualifiedName": "DatadogApi.DeleteApp@2.0.0", + "description": "Delete a specific app in Datadog.\n\nUse this tool to delete a specific app in Datadog. Ensure you have the necessary application key registered or permissions configured in the UI before attempting to delete.", + "parameters": [ + { + "name": "app_id", + "type": "string", + "required": true, + "description": "The ID of the app to delete in Datadog. Ensure this ID is accurate to avoid unintentional deletions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteApp'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteApp", + "parameters": { + "app_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAuthnMapping", + "qualifiedName": "DatadogApi.DeleteAuthnMapping", + "fullyQualifiedName": "DatadogApi.DeleteAuthnMapping@2.0.0", + "description": "Delete an AuthN Mapping using its UUID.\n\nUse this tool to delete a specific AuthN Mapping by providing its unique identifier (UUID).", + "parameters": [ + { + "name": "authn_mapping_uuid", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the AuthN Mapping to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteAuthNMapping'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteAuthnMapping", + "parameters": { + "authn_mapping_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAwsAccountConfig", + "qualifiedName": "DatadogApi.DeleteAwsAccountConfig", + "fullyQualifiedName": "DatadogApi.DeleteAwsAccountConfig@2.0.0", + "description": "Delete an AWS account integration by config ID.\n\nUse this tool to delete an AWS account integration configuration in Datadog by specifying the config ID.", + "parameters": [ + { + "name": "aws_account_configuration_id", + "type": "string", + "required": true, + "description": "Unique Datadog ID for the AWS Account Integration Config. Obtain this ID via the 'List all AWS integrations' Datadog endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteAWSAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteAwsAccountConfig", + "parameters": { + "aws_account_configuration_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAwsScanOptions", + "qualifiedName": "DatadogApi.DeleteAwsScanOptions", + "fullyQualifiedName": "DatadogApi.DeleteAwsScanOptions@2.0.0", + "description": "Delete Agentless scan options for an AWS account.\n\nUse this tool to delete Agentless scan options configured for a specific AWS account. Ideal for managing AWS account security settings through Datadog.", + "parameters": [ + { + "name": "aws_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the AWS account whose scan options you want to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteAwsScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteAwsScanOptions", + "parameters": { + "aws_account_id": { + "value": "123456789012", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAzureSubscriptionScanOptions", + "qualifiedName": "DatadogApi.DeleteAzureSubscriptionScanOptions", + "fullyQualifiedName": "DatadogApi.DeleteAzureSubscriptionScanOptions@2.0.0", + "description": "Delete scan options for an Azure subscription.\n\nUse this tool to delete agentless scan options for a specified Azure subscription. It should be called when there is a need to remove scan settings associated with Azure resources.", + "parameters": [ + { + "name": "azure_subscription_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Azure subscription whose scan options you want to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteAzureScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteAzureSubscriptionScanOptions", + "parameters": { + "azure_subscription_id": { + "value": "12345678-1234-1234-1234-123456789abc", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteBudget", + "qualifiedName": "DatadogApi.DeleteBudget", + "fullyQualifiedName": "DatadogApi.DeleteBudget@2.0.0", + "description": "Delete a specified budget.\n\nUse this tool to delete a budget by its ID. It should be called when you want to remove an existing budget from the system.", + "parameters": [ + { + "name": "budget_id", + "type": "string", + "required": true, + "description": "The unique identifier for the budget to be deleted. This ID is required to specify which budget to remove from the system.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteBudget'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteBudget", + "parameters": { + "budget_id": { + "value": "12345-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteBulkTagsMetrics", + "qualifiedName": "DatadogApi.DeleteBulkTagsMetrics", + "fullyQualifiedName": "DatadogApi.DeleteBulkTagsMetrics@2.0.0", + "description": "Delete custom lists of queryable tag keys for metrics.\n\nThis tool deletes all custom queryable tag keys for a given set of metrics identified by a name prefix. It is used with application keys that have 'Manage Tags for Metrics' permission and can notify specified account emails on completion.", + "parameters": [ + { + "name": "metric_name_prefix", + "type": "string", + "required": true, + "description": "A text prefix to match against metric names for tag deletion.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_bulk_configure_tags_resource", + "type": "string", + "required": false, + "description": "The identifier for the metric bulk configure tags resource, which should be 'metric_bulk_configure_tags'.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of account emails to notify when the configuration is applied.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteBulkTagsMetricsConfiguration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteBulkTagsMetrics", + "parameters": { + "metric_name_prefix": { + "value": "app.request.", + "type": "string", + "required": true + }, + "metric_bulk_configure_tags_resource": { + "value": "metric_bulk_configure_tags", + "type": "string", + "required": false + }, + "notification_emails": { + "value": ["admin@example.com", "devteam@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCaseComment", + "qualifiedName": "DatadogApi.DeleteCaseComment", + "fullyQualifiedName": "DatadogApi.DeleteCaseComment@2.0.0", + "description": "Deletes a specific comment from a case.\n\nUse this tool to delete a comment from a specified case by providing the case and comment identifiers. It is useful for managing and maintaining relevant information within cases by removing unnecessary or outdated comments.", + "parameters": [ + { + "name": "case_identifier", + "type": "string", + "required": true, + "description": "The unique identifier or key of the case for which the comment will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "timeline_cell_uuid", + "type": "string", + "required": true, + "description": "The UUID of the timeline cell containing the comment to be deleted. Required for specifying the exact comment.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCaseComment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteCaseComment", + "parameters": { + "case_identifier": { + "value": "case-12345", + "type": "string", + "required": true + }, + "timeline_cell_uuid": { + "value": "abc-def-ghi-jkl-mno", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCaseCustomAttribute", + "qualifiedName": "DatadogApi.DeleteCaseCustomAttribute", + "fullyQualifiedName": "DatadogApi.DeleteCaseCustomAttribute@2.0.0", + "description": "Removes a custom attribute from a specified case.\n\nThis tool is used to delete a custom attribute from a specific case in Datadog. It should be called when you need to remove a particular custom attribute key from a case.", + "parameters": [ + { + "name": "case_custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute to be removed from a case.", + "enum": null, + "inferrable": true + }, + { + "name": "case_identifier", + "type": "string", + "required": true, + "description": "The unique identifier or key of the case from which the custom attribute is to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCaseCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteCaseCustomAttribute", + "parameters": { + "case_custom_attribute_key": { + "value": "user_priority", + "type": "string", + "required": true + }, + "case_identifier": { + "value": "case-123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCaseType", + "qualifiedName": "DatadogApi.DeleteCaseType", + "fullyQualifiedName": "DatadogApi.DeleteCaseType@2.0.0", + "description": "Delete a specific case type in Datadog.\n\nUse this tool to delete a specific case type by providing the case type ID. This is useful for managing and organizing case types within Datadog.", + "parameters": [ + { + "name": "case_type_uuid", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the case type to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCaseType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteCaseType", + "parameters": { + "case_type_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCatalogEntity", + "qualifiedName": "DatadogApi.DeleteCatalogEntity", + "fullyQualifiedName": "DatadogApi.DeleteCatalogEntity@2.0.0", + "description": "Delete a single entity from the Software Catalog.\n\nThis tool deletes a specified entity in the Software Catalog using its entity ID. Call this tool when you need to remove an entity from the Datadog Software Catalog.", + "parameters": [ + { + "name": "catalog_entity_identifier", + "type": "string", + "required": true, + "description": "The UUID or Entity Reference for the entity to be deleted from the Software Catalog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCatalogEntity'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteCatalogEntity", + "parameters": { + "catalog_entity_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCatalogKind", + "qualifiedName": "DatadogApi.DeleteCatalogKind", + "fullyQualifiedName": "DatadogApi.DeleteCatalogKind@2.0.0", + "description": "Delete a kind from the Software Catalog.\n\nUse this tool to delete a specific kind from the Software Catalog using its identifier. This is useful for managing and organizing the catalog contents by removing obsolete or incorrect entries.", + "parameters": [ + { + "name": "catalog_kind_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the kind to delete from the Software Catalog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCatalogKind'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteCatalogKind", + "parameters": { + "catalog_kind_identifier": { + "value": "example_kind_123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCloudflareAccount", + "qualifiedName": "DatadogApi.DeleteCloudflareAccount", + "fullyQualifiedName": "DatadogApi.DeleteCloudflareAccount@2.0.0", + "description": "Delete a Cloudflare account via Datadog integration.\n\nUse this tool to delete a specified Cloudflare account from Datadog's integrations. Call this tool when you need to remove an account linked to Cloudflare within the Datadog platform.", + "parameters": [ + { + "name": "cloudflare_account_id", + "type": "string", + "required": true, + "description": "The ID of the Cloudflare account to delete from Datadog. This should be a string matching the account ID format.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCloudflareAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteCloudflareAccount", + "parameters": { + "cloudflare_account_id": { + "value": "cf_account_123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCloudWorkloadSecurityAgentRule", + "qualifiedName": "DatadogApi.DeleteCloudWorkloadSecurityAgentRule", + "fullyQualifiedName": "DatadogApi.DeleteCloudWorkloadSecurityAgentRule@2.0.0", + "description": "Delete a specific cloud workload security agent rule.\n\nThis tool deletes a specific cloud workload security agent rule in the Datadog system, applicable only for the Government (US1-FED) site.", + "parameters": [ + { + "name": "agent_rule_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the specific agent rule to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCloudWorkloadSecurityAgentRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteCloudWorkloadSecurityAgentRule", + "parameters": { + "agent_rule_identifier": { + "value": "rule-12345-abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteConfluentAccount", + "qualifiedName": "DatadogApi.DeleteConfluentAccount", + "fullyQualifiedName": "DatadogApi.DeleteConfluentAccount@2.0.0", + "description": "Delete a Confluent account using the account ID.\n\nThis tool deletes a specified Confluent account by account ID in Datadog's system. It should be used when a user wants to remove a Confluent Cloud integration account.", + "parameters": [ + { + "name": "confluent_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Confluent Account to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteConfluentAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteConfluentAccount", + "parameters": { + "confluent_account_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteConfluentResource", + "qualifiedName": "DatadogApi.DeleteConfluentResource", + "fullyQualifiedName": "DatadogApi.DeleteConfluentResource@2.0.0", + "description": "Deletes a specified Confluent resource in a Datadog account.\n\nUse this tool to delete a Confluent resource associated with a specific account in Datadog by providing the account ID and resource ID.", + "parameters": [ + { + "name": "confluent_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Confluent account linked to the resource to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "confluent_resource_id", + "type": "string", + "required": true, + "description": "A string representing the unique ID of the Confluent resource to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteConfluentResource'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteConfluentResource", + "parameters": { + "confluent_account_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "confluent_resource_id": { + "value": "abc-def-1234", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCustomAllocationRule", + "qualifiedName": "DatadogApi.DeleteCustomAllocationRule", + "fullyQualifiedName": "DatadogApi.DeleteCustomAllocationRule@2.0.0", + "description": "Delete an existing custom allocation rule by ID.\n\nCall this tool to delete an existing custom allocation rule using its ID in Datadog's cost management API.", + "parameters": [ + { + "name": "custom_allocation_rule_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the custom allocation rule to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCustomAllocationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteCustomAllocationRule", + "parameters": { + "custom_allocation_rule_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCustomAttributeConfig", + "qualifiedName": "DatadogApi.DeleteCustomAttributeConfig", + "fullyQualifiedName": "DatadogApi.DeleteCustomAttributeConfig@2.0.0", + "description": "Deletes a custom attribute configuration for a case type.\n\nUse this tool to delete a specified custom attribute configuration from a case type in Datadog. It should be called when you need to remove an attribute configuration identified by a specific `case_type_id` and `custom_attribute_id`. Returns a confirmation of the deletion.", + "parameters": [ + { + "name": "case_type_uuid", + "type": "string", + "required": true, + "description": "The UUID of the case type for which the custom attribute configuration should be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_uuid", + "type": "string", + "required": true, + "description": "The UUID of the case custom attribute to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCustomAttributeConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteCustomAttributeConfig", + "parameters": { + "case_type_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "custom_attribute_uuid": { + "value": "987e6543-e21b-45b6-a432-426614174111", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCustomCostFile", + "qualifiedName": "DatadogApi.DeleteCustomCostFile", + "fullyQualifiedName": "DatadogApi.DeleteCustomCostFile@2.0.0", + "description": "Delete a specified custom costs file in Datadog.\n\nUse this tool to delete a specific custom costs file by providing its file ID. It can be called when a user needs to manage their cost files by removing outdated or unnecessary custom cost entries in Datadog.", + "parameters": [ + { + "name": "custom_cost_file_id", + "type": "string", + "required": true, + "description": "The unique identifier of the custom costs file to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCustomCostsFile'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteCustomCostFile", + "parameters": { + "custom_cost_file_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCustomFramework", + "qualifiedName": "DatadogApi.DeleteCustomFramework", + "fullyQualifiedName": "DatadogApi.DeleteCustomFramework@2.0.0", + "description": "Delete a custom framework from Datadog.\n\nThis tool deletes a specified custom framework in Datadog's cloud security management system. Use it when you need to remove an existing custom security framework by its handle and version.", + "parameters": [ + { + "name": "framework_handle", + "type": "string", + "required": true, + "description": "The unique identifier for the custom framework to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "framework_version", + "type": "string", + "required": true, + "description": "Specify the version of the custom framework to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCustomFramework'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteCustomFramework", + "parameters": { + "framework_handle": { + "value": "my_custom_framework_123", + "type": "string", + "required": true + }, + "framework_version": { + "value": "1.0.0", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCustomLogDestination", + "qualifiedName": "DatadogApi.DeleteCustomLogDestination", + "fullyQualifiedName": "DatadogApi.DeleteCustomLogDestination@2.0.0", + "description": "Delete a specific custom log destination.\n\nCall this tool to delete a specific custom log destination within your organization on Datadog.", + "parameters": [ + { + "name": "custom_destination_id", + "type": "string", + "required": true, + "description": "The unique identifier for the custom log destination to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteLogsCustomDestination'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteCustomLogDestination", + "parameters": { + "custom_destination_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDashboardFromList", + "qualifiedName": "DatadogApi.DeleteDashboardFromList", + "fullyQualifiedName": "DatadogApi.DeleteDashboardFromList@2.0.0", + "description": "Remove dashboards from a specified list in Datadog.\n\n Use this tool to delete one or more dashboards from an existing dashboard list in Datadog by specifying the list ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_list_identifier", + "type": "integer", + "required": false, + "description": "The unique integer ID of the dashboard list from which dashboards will be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteDashboardListItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteDashboardFromList", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_list_identifier": { + "value": 123456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"dashboards\":[\"dashboard_id_1\", \"dashboard_id_2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDatadogApiKey", + "qualifiedName": "DatadogApi.DeleteDatadogApiKey", + "fullyQualifiedName": "DatadogApi.DeleteDatadogApiKey@2.0.0", + "description": "Delete an API key from Datadog.\n\nUse this tool to delete an existing API key in Datadog by providing the API key ID. Call this tool when you need to manage and remove unnecessary or compromised keys from your Datadog account.", + "parameters": [ + { + "name": "api_key_id", + "type": "string", + "required": true, + "description": "The unique identifier of the API key to delete in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteAPIKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteDatadogApiKey", + "parameters": { + "api_key_id": { + "value": "abc123def456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDatadogAppKey", + "qualifiedName": "DatadogApi.DeleteDatadogAppKey", + "fullyQualifiedName": "DatadogApi.DeleteDatadogAppKey@2.0.0", + "description": "Deletes an application key in Datadog.\n\nUse this tool to delete an existing application key in Datadog when it is no longer needed or if security requires its removal.", + "parameters": [ + { + "name": "application_key_id", + "type": "string", + "required": true, + "description": "The unique ID of the Datadog application key to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteApplicationKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteDatadogAppKey", + "parameters": { + "application_key_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDatadogDatastore", + "qualifiedName": "DatadogApi.DeleteDatadogDatastore", + "fullyQualifiedName": "DatadogApi.DeleteDatadogDatastore@2.0.0", + "description": "Delete a Datadog datastore using its unique ID.\n\nUse this tool to delete a specific datastore in Datadog by providing its unique identifier. Call this tool when a datastore is no longer needed and requires removal.", + "parameters": [ + { + "name": "datastore_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier of the datastore to delete in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteDatastore'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteDatadogDatastore", + "parameters": { + "datastore_unique_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDataPipeline", + "qualifiedName": "DatadogApi.DeleteDataPipeline", + "fullyQualifiedName": "DatadogApi.DeleteDataPipeline@2.0.0", + "description": "Deletes a data pipeline from the Datadog configuration.\n\nUse this tool to remove a specific data pipeline by its ID from the Datadog configuration. Useful for managing and maintaining pipeline configurations.", + "parameters": [ + { + "name": "pipeline_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the pipeline that you want to delete from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeletePipeline'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteDataPipeline", + "parameters": { + "pipeline_identifier": { + "value": "pipeline_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDataset", + "qualifiedName": "DatadogApi.DeleteDataset", + "fullyQualifiedName": "DatadogApi.DeleteDataset@2.0.0", + "description": "Deletes a dataset using its ID.\n\nUse this tool to delete a dataset by providing its ID. It should be called when you need to remove an existing dataset from the system.", + "parameters": [ + { + "name": "dataset_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the dataset to be deleted. Required for deletion.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteDataset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteDataset", + "parameters": { + "dataset_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDatastoreItem", + "qualifiedName": "DatadogApi.DeleteDatastoreItem", + "fullyQualifiedName": "DatadogApi.DeleteDatastoreItem@2.0.0", + "description": "Delete an item from a datastore by its key.\n\nUse this tool to delete a specific item from a datastore when you have the key and datastore ID.", + "parameters": [ + { + "name": "datastore_id", + "type": "string", + "required": true, + "description": "A string representing the unique identifier of the datastore from which the item will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "item_primary_key", + "type": "string", + "required": false, + "description": "The primary key value identifying the item to delete. Max length is 256 characters.", + "enum": null, + "inferrable": true + }, + { + "name": "item_unique_identifier", + "type": "string", + "required": false, + "description": "Optional unique identifier of the item to delete. Use if available for more precise deletion.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type_for_datastore_items", + "type": "string", + "required": false, + "description": "The resource type for datastore items. Must be 'items'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteDatastoreItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteDatastoreItem", + "parameters": { + "datastore_id": { + "value": "datastore_12345", + "type": "string", + "required": true + }, + "item_primary_key": { + "value": "item_67890", + "type": "string", + "required": false + }, + "item_unique_identifier": { + "value": "unique_item_abc", + "type": "string", + "required": false + }, + "resource_type_for_datastore_items": { + "value": "items", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEscalationPolicy", + "qualifiedName": "DatadogApi.DeleteEscalationPolicy", + "fullyQualifiedName": "DatadogApi.DeleteEscalationPolicy@2.0.0", + "description": "Delete an On-Call escalation policy.\n\nUse this tool to delete an existing On-Call escalation policy by providing its policy ID. This is useful for managing or updating your escalation policies within the Datadog platform.", + "parameters": [ + { + "name": "escalation_policy_id", + "type": "string", + "required": true, + "description": "The unique ID of the escalation policy to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteOnCallEscalationPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteEscalationPolicy", + "parameters": { + "escalation_policy_id": { + "value": "abc123-escalation-policy", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteFastlyAccount", + "qualifiedName": "DatadogApi.DeleteFastlyAccount", + "fullyQualifiedName": "DatadogApi.DeleteFastlyAccount@2.0.0", + "description": "Deletes a specified Fastly account integration.\n\nUse this tool to delete a Fastly account integration from Datadog. Ideal when an integration is no longer needed or requires removal.", + "parameters": [ + { + "name": "fastly_account_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Fastly account to delete. Required for the deletion process.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteFastlyAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteFastlyAccount", + "parameters": { + "fastly_account_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteFastlyService", + "qualifiedName": "DatadogApi.DeleteFastlyService", + "fullyQualifiedName": "DatadogApi.DeleteFastlyService@2.0.0", + "description": "Delete a Fastly service for an account.\n\nUse this tool to delete a specific Fastly service associated with an account in Datadog. Call this tool when you need to remove an existing service configured through the Fastly integration.", + "parameters": [ + { + "name": "fastly_account_id", + "type": "string", + "required": true, + "description": "The ID of the Fastly account associated with the service to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "fastly_service_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Fastly service to delete. Required to specify the exact service.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteFastlyService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteFastlyService", + "parameters": { + "fastly_account_id": { + "value": "123456", + "type": "string", + "required": true + }, + "fastly_service_id": { + "value": "abcde12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteGcpScanOptions", + "qualifiedName": "DatadogApi.DeleteGcpScanOptions", + "fullyQualifiedName": "DatadogApi.DeleteGcpScanOptions@2.0.0", + "description": "Delete Agentless scan options for a GCP project.\n\nUse this tool to remove the agentless scanning configuration for a specified GCP project. Ideal for managing and updating project scan settings.", + "parameters": [ + { + "name": "gcp_project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Google Cloud Platform (GCP) project whose scan options you wish to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteGcpScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteGcpScanOptions", + "parameters": { + "gcp_project_id": { + "value": "my-gcp-project-123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteGcpStsAccount", + "qualifiedName": "DatadogApi.DeleteGcpStsAccount", + "fullyQualifiedName": "DatadogApi.DeleteGcpStsAccount@2.0.0", + "description": "Delete an STS-enabled GCP account in Datadog.\n\nUse this tool to remove a specified STS-enabled Google Cloud Platform account from Datadog.", + "parameters": [ + { + "name": "gcp_sts_account_id", + "type": "string", + "required": true, + "description": "The unique ID of the GCP STS-enabled service account to delete from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteGCPSTSAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteGcpStsAccount", + "parameters": { + "gcp_sts_account_id": { + "value": "gcp-sts-account-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteHistoricalDetectionJob", + "qualifiedName": "DatadogApi.DeleteHistoricalDetectionJob", + "fullyQualifiedName": "DatadogApi.DeleteHistoricalDetectionJob@2.0.0", + "description": "Delete an existing historical detection job in Datadog.\n\nUse this tool to delete a specific historical detection job in Datadog's SIEM. This is helpful when you need to manage or clean up old detection jobs by specifying the job ID.", + "parameters": [ + { + "name": "job_id", + "type": "string", + "required": true, + "description": "The unique identifier for the historical job to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteHistoricalJob'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteHistoricalDetectionJob", + "parameters": { + "job_id": { + "value": "abc123-def456-ghi789-jkl012", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteIncident", + "qualifiedName": "DatadogApi.DeleteIncident", + "fullyQualifiedName": "DatadogApi.DeleteIncident@2.0.0", + "description": "Deletes an existing incident from the organization.\n\nUse this tool to remove an incident from your organization's records in Datadog.", + "parameters": [ + { + "name": "incident_uuid", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the incident to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteIncident'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteIncident", + "parameters": { + "incident_uuid": { + "value": "e9d1c77f-3c1e-4c5b-b4fd-ec6f09b72451", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteIncidentImpact", + "qualifiedName": "DatadogApi.DeleteIncidentImpact", + "fullyQualifiedName": "DatadogApi.DeleteIncidentImpact@2.0.0", + "description": "Delete a specific incident impact by ID.\n\nUse this tool to delete an impact associated with a specific incident using the incident and impact IDs. Suitable for managing and cleaning up incident data in Datadog.", + "parameters": [ + { + "name": "incident_id", + "type": "string", + "required": true, + "description": "The UUID of the incident to be deleted. Required for identifying the specific incident.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_impact_uuid", + "type": "string", + "required": true, + "description": "The UUID of the incident impact to be deleted. This is required to identify which specific impact to remove.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteIncidentImpact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteIncidentImpact", + "parameters": { + "incident_id": { + "value": "7e3d9bd4-cec0-4e88-bc79-7db535bde0bc", + "type": "string", + "required": true + }, + "incident_impact_uuid": { + "value": "d7a8b6c0-e817-4f74-b277-db6013d3a9fb", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteIncidentIntegrationMetadata", + "qualifiedName": "DatadogApi.DeleteIncidentIntegrationMetadata", + "fullyQualifiedName": "DatadogApi.DeleteIncidentIntegrationMetadata@2.0.0", + "description": "Remove an incident integration metadata entry.\n\nUse this tool to delete metadata associated with an incident integration. Call it when you need to remove specific integration details from an incident.", + "parameters": [ + { + "name": "incident_integration_metadata_uuid", + "type": "string", + "required": true, + "description": "The UUID of the incident integration metadata to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_uuid", + "type": "string", + "required": true, + "description": "The UUID of the incident you want to delete integration metadata for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteIncidentIntegration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteIncidentIntegrationMetadata", + "parameters": { + "incident_integration_metadata_uuid": { + "value": "d4eab123-4567-89ab-cdef-0123456789ab", + "type": "string", + "required": true + }, + "incident_uuid": { + "value": "a3b5cdef-6789-0123-4567-89abcdef01gh", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteIncidentNotificationRule", + "qualifiedName": "DatadogApi.DeleteIncidentNotificationRule", + "fullyQualifiedName": "DatadogApi.DeleteIncidentNotificationRule@2.0.0", + "description": "Delete an incident notification rule by its ID.\n\nUse this tool to delete a specific incident notification rule in Datadog by providing its ID.", + "parameters": [ + { + "name": "notification_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier of the notification rule to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "include_resources", + "type": "string", + "required": false, + "description": "Comma-separated list of resources to include, such as `created_by_user`, `last_modified_by_user`, `incident_type`, `notification_template`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteIncidentNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteIncidentNotificationRule", + "parameters": { + "notification_rule_id": { + "value": "123456", + "type": "string", + "required": true + }, + "include_resources": { + "value": "created_by_user,last_modified_by_user", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteIncidentNotificationTemplate", + "qualifiedName": "DatadogApi.DeleteIncidentNotificationTemplate", + "fullyQualifiedName": "DatadogApi.DeleteIncidentNotificationTemplate@2.0.0", + "description": "Deletes a notification template by its ID.\n\nUse this tool to delete a specific incident notification template by providing its ID. It should be called when a notification template is no longer needed or requires removal.", + "parameters": [ + { + "name": "notification_template_id", + "type": "string", + "required": true, + "description": "The unique ID of the incident notification template to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "relationships_to_include", + "type": "string", + "required": false, + "description": "Comma-separated list of relationships to include. Options: `created_by_user`, `last_modified_by_user`, `incident_type`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteIncidentNotificationTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteIncidentNotificationTemplate", + "parameters": { + "notification_template_id": { + "value": "abc-123-def-456", + "type": "string", + "required": true + }, + "relationships_to_include": { + "value": "created_by_user,last_modified_by_user", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteIncidentTodo", + "qualifiedName": "DatadogApi.DeleteIncidentTodo", + "fullyQualifiedName": "DatadogApi.DeleteIncidentTodo@2.0.0", + "description": "Delete a specified incident todo in Datadog.\n\nUse this tool to delete a specific todo item associated with an incident in Datadog. This is helpful for managing and updating incident tasks as needed.", + "parameters": [ + { + "name": "incident_todo_uuid", + "type": "string", + "required": true, + "description": "The unique UUID for the incident todo to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_uuid", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the incident to which the todo belongs. This is necessary to specify the incident context.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteIncidentTodo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteIncidentTodo", + "parameters": { + "incident_todo_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "incident_uuid": { + "value": "987f6543-e21b-45d6-b123-4567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteIncidentType", + "qualifiedName": "DatadogApi.DeleteIncidentType", + "fullyQualifiedName": "DatadogApi.DeleteIncidentType@2.0.0", + "description": "Deletes a specified incident type from Datadog configuration.\n\nUse this tool to remove an incident type from your Datadog configuration. It should be called when there is a need to delete a specific incident type identified by its ID.", + "parameters": [ + { + "name": "incident_type_uuid", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the incident type to be deleted in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteIncidentType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteIncidentType", + "parameters": { + "incident_type_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteLogMetric", + "qualifiedName": "DatadogApi.DeleteLogMetric", + "fullyQualifiedName": "DatadogApi.DeleteLogMetric@2.0.0", + "description": "Delete a specific log-based metric from your organization.\n\nCall this tool to remove a specific log-based metric from your Datadog organization by specifying the metric ID.", + "parameters": [ + { + "name": "log_metric_name", + "type": "string", + "required": true, + "description": "The name of the log-based metric you want to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteLogsMetric'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteLogMetric", + "parameters": { + "log_metric_name": { + "value": "example_log_metric_123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteLogsArchive", + "qualifiedName": "DatadogApi.DeleteLogsArchive", + "fullyQualifiedName": "DatadogApi.DeleteLogsArchive@2.0.0", + "description": "Delete a specific logs archive from your organization.\n\nUse this tool to permanently delete a specified logs archive in your Datadog organization. The tool should be called when you need to remove an unnecessary or outdated archive.", + "parameters": [ + { + "name": "archive_id", + "type": "string", + "required": true, + "description": "The unique identifier for the archive to be deleted from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteLogsArchive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteLogsArchive", + "parameters": { + "archive_id": { + "value": "archive-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteMetricTagConfiguration", + "qualifiedName": "DatadogApi.DeleteMetricTagConfiguration", + "fullyQualifiedName": "DatadogApi.DeleteMetricTagConfiguration@2.0.0", + "description": "Delete a metric's tag configuration.\n\nUse this tool to delete the tag configuration for a specific metric in Datadog. Ensure the application key has 'Manage Tags for Metrics' permission.", + "parameters": [ + { + "name": "metric_name", + "type": "string", + "required": true, + "description": "The name of the metric whose tag configuration is to be deleted. Ensure the application key has the necessary permissions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTagConfiguration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteMetricTagConfiguration", + "parameters": { + "metric_name": { + "value": "system.cpu.user", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteMonitorNotificationRule", + "qualifiedName": "DatadogApi.DeleteMonitorNotificationRule", + "fullyQualifiedName": "DatadogApi.DeleteMonitorNotificationRule@2.0.0", + "description": "Delete a monitor notification rule by ID.\n\nUse this tool to delete a specific monitor notification rule in Datadog by providing the rule ID. Useful for managing and cleaning up notification rules that are no longer needed.", + "parameters": [ + { + "name": "monitor_notification_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the monitor notification rule to delete in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteMonitorNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteMonitorNotificationRule", + "parameters": { + "monitor_notification_rule_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteMonitorPolicy", + "qualifiedName": "DatadogApi.DeleteMonitorPolicy", + "fullyQualifiedName": "DatadogApi.DeleteMonitorPolicy@2.0.0", + "description": "Deletes a specific monitor configuration policy.", + "parameters": [ + { + "name": "monitor_policy_id", + "type": "string", + "required": true, + "description": "ID of the monitor configuration policy to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteMonitorConfigPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteMonitorPolicy", + "parameters": { + "monitor_policy_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteMonitorUserTemplate", + "qualifiedName": "DatadogApi.DeleteMonitorUserTemplate", + "fullyQualifiedName": "DatadogApi.DeleteMonitorUserTemplate@2.0.0", + "description": "Deletes a monitor user template by its ID on Datadog.\n\nUse this tool to delete an existing monitor user template in Datadog by specifying the template's ID.", + "parameters": [ + { + "name": "monitor_user_template_id", + "type": "string", + "required": true, + "description": "ID of the monitor user template to be deleted in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteMonitorUserTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteMonitorUserTemplate", + "parameters": { + "monitor_user_template_id": { + "value": "1234-5678-9101", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteMsTeamsTenantHandle", + "qualifiedName": "DatadogApi.DeleteMsTeamsTenantHandle", + "fullyQualifiedName": "DatadogApi.DeleteMsTeamsTenantHandle@2.0.0", + "description": "Delete a tenant-based handle from Datadog's Microsoft Teams integration.\n\nUse this tool to remove a specific tenant-based handle from the Microsoft Teams integration in Datadog. This is useful for managing or updating integration settings.", + "parameters": [ + { + "name": "tenant_handle_id", + "type": "string", + "required": true, + "description": "The unique identifier for the tenant-based handle to be deleted from the Microsoft Teams integration.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTenantBasedHandle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteMsTeamsTenantHandle", + "parameters": { + "tenant_handle_id": { + "value": "abc123-tenant-handle-id", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteMultipleDatadogApps", + "qualifiedName": "DatadogApi.DeleteMultipleDatadogApps", + "fullyQualifiedName": "DatadogApi.DeleteMultipleDatadogApps@2.0.0", + "description": "Delete multiple apps in Datadog using app IDs.\n\nThis tool deletes multiple applications from Datadog in a single request using a list of app IDs. It requires a registered application key or configured UI permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteApps'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteMultipleDatadogApps", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"app_ids\":[\"app_id_1\",\"app_id_2\",\"app_id_3\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteOktaAccount", + "qualifiedName": "DatadogApi.DeleteOktaAccount", + "fullyQualifiedName": "DatadogApi.DeleteOktaAccount@2.0.0", + "description": "Delete an Okta account from Datadog integration.\n\nUse this tool to delete an Okta account integrated with Datadog. Call this tool when an Okta account needs to be removed from Datadog's integration platform.", + "parameters": [ + { + "name": "okta_account_id", + "type": "string", + "required": true, + "description": "A string representing the ID of the Okta account to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteOktaAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteOktaAccount", + "parameters": { + "okta_account_id": { + "value": "00u123456789abcdE0g2", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteOnCallSchedule", + "qualifiedName": "DatadogApi.DeleteOnCallSchedule", + "fullyQualifiedName": "DatadogApi.DeleteOnCallSchedule@2.0.0", + "description": "Delete an On-Call schedule in Datadog.\n\nUse this tool to delete a specific on-call schedule identified by its schedule ID in Datadog when managing schedules.", + "parameters": [ + { + "name": "schedule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the on-call schedule you wish to delete in Datadog. This is a required field.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteOnCallSchedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteOnCallSchedule", + "parameters": { + "schedule_id": { + "value": "abcd1234-efgh-5678-ijkl-mnopqrstuv", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteOpsgenieService", + "qualifiedName": "DatadogApi.DeleteOpsgenieService", + "fullyQualifiedName": "DatadogApi.DeleteOpsgenieService@2.0.0", + "description": "Delete a service in Datadog's Opsgenie integration.\n\nUse this tool to remove a specific service from the Datadog Opsgenie integration. Call this when you need to delete an Opsgenie service using its integration service ID.", + "parameters": [ + { + "name": "service_uuid", + "type": "string", + "required": true, + "description": "The UUID of the service to be deleted in the Datadog Opsgenie integration.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteOpsgenieService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteOpsgenieService", + "parameters": { + "service_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteOrgConnection", + "qualifiedName": "DatadogApi.DeleteOrgConnection", + "fullyQualifiedName": "DatadogApi.DeleteOrgConnection@2.0.0", + "description": "Delete an existing organization connection.\n\nCall this tool to delete a specified organization connection. Use it when you need to remove a link between organizations.", + "parameters": [ + { + "name": "connection_id", + "type": "string", + "required": true, + "description": "The unique identifier of the organization connection to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteOrgConnections'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteOrgConnection", + "parameters": { + "connection_id": { + "value": "org_conn_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeletePowerpack", + "qualifiedName": "DatadogApi.DeletePowerpack", + "fullyQualifiedName": "DatadogApi.DeletePowerpack@2.0.0", + "description": "Delete a specified powerpack from Datadog.\n\nThis tool deletes a powerpack in Datadog using the specified powerpack ID. Call this tool when you need to remove a powerpack from your Datadog account.", + "parameters": [ + { + "name": "powerpack_id", + "type": "string", + "required": true, + "description": "The unique identifier for the powerpack to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeletePowerpack'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeletePowerpack", + "parameters": { + "powerpack_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteReferenceTable", + "qualifiedName": "DatadogApi.DeleteReferenceTable", + "fullyQualifiedName": "DatadogApi.DeleteReferenceTable@2.0.0", + "description": "Delete a reference table by ID.\n\nUse this tool to delete a specific reference table by providing its ID. Useful for managing and cleaning up reference data in your Datadog environment.", + "parameters": [ + { + "name": "reference_table_id", + "type": "string", + "required": true, + "description": "The unique identifier of the reference table to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteReferenceTable", + "parameters": { + "reference_table_id": { + "value": "ref_table_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteRestrictionPolicy", + "qualifiedName": "DatadogApi.DeleteRestrictionPolicy", + "fullyQualifiedName": "DatadogApi.DeleteRestrictionPolicy@2.0.0", + "description": "Delete a restriction policy for a specified resource.\n\nUse this tool to delete the restriction policy associated with a specific resource by providing its ID. It should be called when a policy needs to be removed.", + "parameters": [ + { + "name": "resource_identifier", + "type": "string", + "required": true, + "description": "Identifier formatted as `type:id` for the resource. Supported types: `dashboard`, `integration-service`, `integration-webhook`, `notebook`, and more.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteRestrictionPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteRestrictionPolicy", + "parameters": { + "resource_identifier": { + "value": "dashboard:123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteRestrictionQuery", + "qualifiedName": "DatadogApi.DeleteRestrictionQuery", + "fullyQualifiedName": "DatadogApi.DeleteRestrictionQuery@2.0.0", + "description": "Deletes a restriction query from Datadog logs configuration.\n\nUse this tool to delete a specific restriction query within Datadog's logs configuration. It should be called when you need to remove a restriction query by its unique ID.", + "parameters": [ + { + "name": "restriction_query_id", + "type": "string", + "required": true, + "description": "The unique ID of the restriction query to be deleted from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteRestrictionQuery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteRestrictionQuery", + "parameters": { + "restriction_query_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteRumApplication", + "qualifiedName": "DatadogApi.DeleteRumApplication", + "fullyQualifiedName": "DatadogApi.DeleteRumApplication@2.0.0", + "description": "Deletes an existing RUM application in your organization.\n\nUse this tool to delete an existing Real User Monitoring (RUM) application. Called when you need to remove a RUM application from your Datadog organization.", + "parameters": [ + { + "name": "rum_application_id", + "type": "string", + "required": true, + "description": "The unique identifier for the RUM application you wish to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteRUMApplication'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteRumApplication", + "parameters": { + "rum_application_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteRumMetric", + "qualifiedName": "DatadogApi.DeleteRumMetric", + "fullyQualifiedName": "DatadogApi.DeleteRumMetric@2.0.0", + "description": "Delete a specific RUM-based metric from your organization.\n\nCall this tool to remove a specific RUM-based metric using its ID from your Datadog organization.", + "parameters": [ + { + "name": "rum_metric_id", + "type": "string", + "required": true, + "description": "The ID of the RUM-based metric to be deleted from your Datadog organization.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteRumMetric'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteRumMetric", + "parameters": { + "rum_metric_id": { + "value": "abc123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteRumRetentionFilter", + "qualifiedName": "DatadogApi.DeleteRumRetentionFilter", + "fullyQualifiedName": "DatadogApi.DeleteRumRetentionFilter@2.0.0", + "description": "Deletes a RUM retention filter for a specific application.\n\nThis tool deletes a specified RUM retention filter for a given application in Datadog. It should be called when you need to remove a retention filter from a RUM application to stop retaining specific types of data.", + "parameters": [ + { + "name": "retention_filter_id", + "type": "string", + "required": true, + "description": "The ID of the retention filter to delete from the RUM application.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_application_id", + "type": "string", + "required": true, + "description": "The ID of the RUM application from which to delete the retention filter.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteRetentionFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteRumRetentionFilter", + "parameters": { + "retention_filter_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "rum_application_id": { + "value": "app456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteScanningGroup", + "qualifiedName": "DatadogApi.DeleteScanningGroup", + "fullyQualifiedName": "DatadogApi.DeleteScanningGroup@2.0.0", + "description": "Delete a specified scanning group in Datadog.\n\nUse this tool to delete a specified scanning group in Datadog's sensitive data scanner configuration. It should be called when you need to remove an existing group by its ID.", + "parameters": [ + { + "name": "group_id", + "type": "string", + "required": true, + "description": "The ID of the scanning group to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "api_version", + "type": "integer", + "required": false, + "description": "Optional version number of the API to use for the request.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteScanningGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteScanningGroup", + "parameters": { + "group_id": { + "value": "abc-1234", + "type": "string", + "required": true + }, + "api_version": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteScanningRule", + "qualifiedName": "DatadogApi.DeleteScanningRule", + "fullyQualifiedName": "DatadogApi.DeleteScanningRule@2.0.0", + "description": "Delete a specific scanning rule by ID.\n\nUse this tool to remove a sensitive data scanning rule in Datadog by providing the rule's ID. It should be called when a specific scanning rule needs to be deleted.", + "parameters": [ + { + "name": "rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the scanning rule to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "api_version", + "type": "integer", + "required": false, + "description": "Specify the API version to use for the request (optional).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteScanningRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteScanningRule", + "parameters": { + "rule_id": { + "value": "12345", + "type": "string", + "required": true + }, + "api_version": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteScorecardRule", + "qualifiedName": "DatadogApi.DeleteScorecardRule", + "fullyQualifiedName": "DatadogApi.DeleteScorecardRule@2.0.0", + "description": "Deletes a scorecard rule by its ID.\n\nUse this tool to delete a specific rule in a scorecard by providing its ID. This is useful for managing and updating scorecard configurations by removing obsolete or incorrect rules.", + "parameters": [ + { + "name": "rule_id", + "type": "string", + "required": true, + "description": "The ID of the scorecard rule to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteScorecardRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteScorecardRule", + "parameters": { + "rule_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSecurityFilter", + "qualifiedName": "DatadogApi.DeleteSecurityFilter", + "fullyQualifiedName": "DatadogApi.DeleteSecurityFilter@2.0.0", + "description": "Delete a specific security filter in Datadog.\n\nUse this tool to delete a specified security filter by its ID in Datadog's security monitoring configuration.", + "parameters": [ + { + "name": "security_filter_id", + "type": "string", + "required": true, + "description": "The ID of the security filter to delete in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteSecurityFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteSecurityFilter", + "parameters": { + "security_filter_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSecurityMonitoringRule", + "qualifiedName": "DatadogApi.DeleteSecurityMonitoringRule", + "fullyQualifiedName": "DatadogApi.DeleteSecurityMonitoringRule@2.0.0", + "description": "Delete an existing security monitoring rule.\n\nUse this tool to delete a specified security monitoring rule in Datadog. Note that default rules cannot be deleted.", + "parameters": [ + { + "name": "security_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier of the security rule to be deleted. Default rules cannot be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteSecurityMonitoringRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteSecurityMonitoringRule", + "parameters": { + "security_rule_id": { + "value": "sec_rule_123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteServiceAccountAppKey", + "qualifiedName": "DatadogApi.DeleteServiceAccountAppKey", + "fullyQualifiedName": "DatadogApi.DeleteServiceAccountAppKey@2.0.0", + "description": "Delete an application key from a service account.\n\nCall this tool to remove an application key associated with a specific service account in Datadog. This tool is useful for managing access and maintaining security by ensuring unused or compromised keys are deleted.", + "parameters": [ + { + "name": "application_key_id", + "type": "string", + "required": true, + "description": "The unique identifier for the application key to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "service_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the service account from which the application key will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteServiceAccountApplicationKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteServiceAccountAppKey", + "parameters": { + "application_key_id": { + "value": "abc12345def", + "type": "string", + "required": true + }, + "service_account_id": { + "value": "svc67890xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteServiceDefinition", + "qualifiedName": "DatadogApi.DeleteServiceDefinition", + "fullyQualifiedName": "DatadogApi.DeleteServiceDefinition@2.0.0", + "description": "Deletes a service definition from Datadog.\n\nUse this tool to remove a specific service definition from the Datadog Service Catalog. Ideal for cleaning up or managing services that are no longer needed.", + "parameters": [ + { + "name": "service_name", + "type": "string", + "required": true, + "description": "The name of the service to delete from the Datadog Service Catalog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteServiceDefinition'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteServiceDefinition", + "parameters": { + "service_name": { + "value": "example-service", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSpanMetric", + "qualifiedName": "DatadogApi.DeleteSpanMetric", + "fullyQualifiedName": "DatadogApi.DeleteSpanMetric@2.0.0", + "description": "Delete a specific span-based metric from your organization.\n\nUse this tool to delete a span-based metric by specifying its metric ID. It helps manage and maintain the span metrics within your organization by removing unnecessary or obsolete data.", + "parameters": [ + { + "name": "metric_id", + "type": "string", + "required": true, + "description": "The unique identifier for the span-based metric to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteSpansMetric'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteSpanMetric", + "parameters": { + "metric_id": { + "value": "span.metric.abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSuppressionRule", + "qualifiedName": "DatadogApi.DeleteSuppressionRule", + "fullyQualifiedName": "DatadogApi.DeleteSuppressionRule@2.0.0", + "description": "Delete a specific suppression rule in Datadog.\n\nUse this tool to delete a specific suppression rule from Datadog's security monitoring configuration. Call it when you need to remove an existing suppression rule using its ID.", + "parameters": [ + { + "name": "suppression_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier of the suppression rule to be deleted in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteSecurityMonitoringSuppression'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteSuppressionRule", + "parameters": { + "suppression_rule_id": { + "value": "abc1234-def5678-ghijkl90", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTagPipelineRuleset", + "qualifiedName": "DatadogApi.DeleteTagPipelineRuleset", + "fullyQualifiedName": "DatadogApi.DeleteTagPipelineRuleset@2.0.0", + "description": "Delete an existing tag pipeline ruleset by ID.\n\nUse this tool to delete a specific tag pipeline ruleset in Datadog by providing its ID.", + "parameters": [ + { + "name": "ruleset_id", + "type": "string", + "required": true, + "description": "The unique identifier for the tag pipeline ruleset to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTagPipelinesRuleset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteTagPipelineRuleset", + "parameters": { + "ruleset_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTeam", + "qualifiedName": "DatadogApi.DeleteTeam", + "fullyQualifiedName": "DatadogApi.DeleteTeam@2.0.0", + "description": "Remove a team using its ID in Datadog.\n\nThis tool should be called to permanently delete a team in Datadog by specifying the team's unique ID. Use this when a team is no longer needed and should be removed from the system.", + "parameters": [ + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the team to be deleted in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteTeam", + "parameters": { + "team_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteUserApplicationKey", + "qualifiedName": "DatadogApi.DeleteUserApplicationKey", + "fullyQualifiedName": "DatadogApi.DeleteUserApplicationKey@2.0.0", + "description": "Delete an application key owned by the current user.\n\nThis tool deletes an application key associated with the current user in Datadog. It should be called when the user needs to remove access or invalidate an application key.", + "parameters": [ + { + "name": "application_key_id", + "type": "string", + "required": true, + "description": "The ID of the application key to be deleted. Required to identify which key to remove.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCurrentUserApplicationKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteUserApplicationKey", + "parameters": { + "application_key_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteWafCustomRule", + "qualifiedName": "DatadogApi.DeleteWafCustomRule", + "fullyQualifiedName": "DatadogApi.DeleteWafCustomRule@2.0.0", + "description": "Delete a specific WAF custom rule by ID.\n\nUse this tool to delete a WAF custom rule using its unique identifier. Applicable when managing application security or modifying WAF configurations.", + "parameters": [ + { + "name": "custom_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the WAF custom rule to be deleted. Required for identifying the specific rule.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteApplicationSecurityWafCustomRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteWafCustomRule", + "parameters": { + "custom_rule_id": { + "value": "waf_rule_123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteWafExclusionFilter", + "qualifiedName": "DatadogApi.DeleteWafExclusionFilter", + "fullyQualifiedName": "DatadogApi.DeleteWafExclusionFilter@2.0.0", + "description": "Delete a WAF exclusion filter using its ID.\n\nUse this tool to delete a specific Web Application Firewall (WAF) exclusion filter by providing its identifier. Call this tool when you need to remove an unnecessary or outdated exclusion filter from the configuration.", + "parameters": [ + { + "name": "waf_exclusion_filter_id", + "type": "string", + "required": true, + "description": "The unique identifier of the WAF exclusion filter to be deleted. Use this ID to specify which filter to remove.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteApplicationSecurityWafExclusionFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteWafExclusionFilter", + "parameters": { + "waf_exclusion_filter_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteWorkflow", + "qualifiedName": "DatadogApi.DeleteWorkflow", + "fullyQualifiedName": "DatadogApi.DeleteWorkflow@2.0.0", + "description": "Delete a specified workflow by its ID.\n\nUse this tool to delete an existing workflow by providing the workflow ID. Ensure you have the necessary permissions or a registered application key from Datadog before calling this tool.", + "parameters": [ + { + "name": "workflow_id", + "type": "string", + "required": true, + "description": "The ID of the workflow to be deleted. Ensure it is a valid and existing workflow ID in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteWorkflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteWorkflow", + "parameters": { + "workflow_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteWorkflowWebhookHandle", + "qualifiedName": "DatadogApi.DeleteWorkflowWebhookHandle", + "fullyQualifiedName": "DatadogApi.DeleteWorkflowWebhookHandle@2.0.0", + "description": "Delete a Workflows webhook handle in Datadog.\n\nUse this tool to delete a specific Workflows webhook handle from the Datadog Microsoft Teams integration. This should be called when you need to remove an existing webhook handle.", + "parameters": [ + { + "name": "webhook_handle_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Workflows webhook handle to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteWorkflowsWebhookHandle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteWorkflowWebhookHandle", + "parameters": { + "webhook_handle_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteWorkloadProtectionAgentRule", + "qualifiedName": "DatadogApi.DeleteWorkloadProtectionAgentRule", + "fullyQualifiedName": "DatadogApi.DeleteWorkloadProtectionAgentRule@2.0.0", + "description": "Delete a specific Workload Protection agent rule.\n\nThis tool deletes a specified Workload Protection agent rule in Datadog, excluding the Government (US1-FED) site. Use this when needing to remove an existing agent rule by its unique identifier.", + "parameters": [ + { + "name": "agent_rule_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Agent rule to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "agent_policy_id", + "type": "string", + "required": false, + "description": "The unique identifier of the Workload Protection agent policy to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCSMThreatsAgentRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteWorkloadProtectionAgentRule", + "parameters": { + "agent_rule_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "agent_policy_id": { + "value": "pol_98765", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteWorkloadProtectionPolicy", + "qualifiedName": "DatadogApi.DeleteWorkloadProtectionPolicy", + "fullyQualifiedName": "DatadogApi.DeleteWorkloadProtectionPolicy@2.0.0", + "description": "Delete a specific Workload Protection policy.\n\nUse this tool to remove a specified Workload Protection policy from Datadog. Note: Not available for the Government (US1-FED) site.", + "parameters": [ + { + "name": "agent_policy_id", + "type": "string", + "required": true, + "description": "The unique ID of the agent policy to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCSMThreatsAgentPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DeleteWorkloadProtectionPolicy", + "parameters": { + "agent_policy_id": { + "value": "policy-123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DisableRole", + "qualifiedName": "DatadogApi.DisableRole", + "fullyQualifiedName": "DatadogApi.DisableRole@2.0.0", + "description": "Disables a specified role within Datadog.\n\nCall this tool to disable a specific role in Datadog by providing its role ID.", + "parameters": [ + { + "name": "role_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the role to be disabled in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteRole'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DisableRole", + "parameters": { + "role_identifier": { + "value": "example-role-id-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DisableUser", + "qualifiedName": "DatadogApi.DisableUser", + "fullyQualifiedName": "DatadogApi.DisableUser@2.0.0", + "description": "Disable a specific user in the system.\n\nThis tool disables a user account and should be used by administrator users to manage user access. It indicates whether the operation was successful or not.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the user to be disabled.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DisableUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DisableUser", + "parameters": { + "user_identifier": { + "value": "user123@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DownloadCloudWorkloadPolicy", + "qualifiedName": "DatadogApi.DownloadCloudWorkloadPolicy", + "fullyQualifiedName": "DatadogApi.DownloadCloudWorkloadPolicy@2.0.0", + "description": "Downloads a Workload Protection policy file for agents.\n\nGenerates and downloads a Workload Protection policy file from active agent rules, specifically for the US1-FED site. This file is used to update the policy on your agents.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DownloadCloudWorkloadPolicyFile'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DownloadCloudWorkloadPolicy", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DownloadCsmThreatsPolicy", + "qualifiedName": "DatadogApi.DownloadCsmThreatsPolicy", + "fullyQualifiedName": "DatadogApi.DownloadCsmThreatsPolicy@2.0.0", + "description": "Generate and download Workload Protection policy file.\n\nThis tool generates a Workload Protection policy file based on active agent rules and downloads it as a `.policy` file. It is used to update the policy running in your environment. Note that this is not available for US1-FED site.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DownloadCSMThreatsPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DownloadCsmThreatsPolicy", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DownloadSloReport", + "qualifiedName": "DatadogApi.DownloadSloReport", + "fullyQualifiedName": "DatadogApi.DownloadSloReport@2.0.0", + "description": "Download a completed SLO report from Datadog.\n\nUse this tool to download an SLO report from Datadog after the report job has completed. It is recommended to download the report as soon as it becomes available, as reports may not be stored indefinitely.", + "parameters": [ + { + "name": "report_id", + "type": "string", + "required": true, + "description": "The unique identifier for the SLO report job to download.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSLOReport'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.DownloadSloReport", + "parameters": { + "report_id": { + "value": "slo-report-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditAuthnMapping", + "qualifiedName": "DatadogApi.EditAuthnMapping", + "fullyQualifiedName": "DatadogApi.EditAuthnMapping@2.0.0", + "description": "Edit an AuthN Mapping in Datadog.\n\n This tool allows editing an authentication mapping in Datadog. It should be called when modifications to an existing AuthN Mapping are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "authn_mapping_uuid", + "type": "string", + "required": false, + "description": "The UUID of the AuthN Mapping to edit. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateAuthNMapping'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.EditAuthnMapping", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "authn_mapping_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New AuthN Mapping\",\"type\":\"SAML\",\"enabled\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditDataset", + "qualifiedName": "DatadogApi.EditDataset", + "fullyQualifiedName": "DatadogApi.EditDataset@2.0.0", + "description": "Edit the dataset using the specified ID.\n\n Call this tool to edit the details of a dataset in Datadog using its ID. It updates the dataset's configuration or metadata.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dataset_id", + "type": "string", + "required": false, + "description": "The unique ID of the dataset to be edited in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateDataset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.EditDataset", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dataset_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Dataset\", \"description\": \"This is an updated dataset description.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditMonitorConfigPolicy", + "qualifiedName": "DatadogApi.EditMonitorConfigPolicy", + "fullyQualifiedName": "DatadogApi.EditMonitorConfigPolicy@2.0.0", + "description": "Edit an existing monitor configuration policy in Datadog.\n\n This tool allows you to update the configuration of an existing monitor policy in Datadog by specifying the policy ID. Use it when changes to monitor policies are required.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "monitor_policy_id", + "type": "string", + "required": false, + "description": "The ID of the monitor configuration policy to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateMonitorConfigPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.EditMonitorConfigPolicy", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "monitor_policy_id": { + "value": "policy-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Monitor Policy\",\"type\":\"metric alert\",\"query\":\"avg(last_5m):avg:system.cpu.user{host:host1} > 0.5\",\"message\":\"CPU usage is high!\",\"options\":{\"thresholds\":{\"warning\":0.6,\"critical\":0.8}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditRestrictionQuery", + "qualifiedName": "DatadogApi.EditRestrictionQuery", + "fullyQualifiedName": "DatadogApi.EditRestrictionQuery@2.0.0", + "description": "Edit an existing restriction query in Datadog.\n\nUse this tool to modify restriction queries in Datadog's log configuration. Call this when you need to update specific restriction parameters for log queries.", + "parameters": [ + { + "name": "restriction_query_id", + "type": "string", + "required": true, + "description": "The ID of the restriction query to be edited.", + "enum": null, + "inferrable": true + }, + { + "name": "restriction_query_resource_type", + "type": "string", + "required": false, + "description": "The type of restriction query resource. Must be 'logs_restriction_queries'.", + "enum": null, + "inferrable": true + }, + { + "name": "restriction_query_string", + "type": "string", + "required": false, + "description": "The restriction query string to update for the restriction query in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateRestrictionQuery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.EditRestrictionQuery", + "parameters": { + "restriction_query_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "restriction_query_resource_type": { + "value": "logs_restriction_queries", + "type": "string", + "required": false + }, + "restriction_query_string": { + "value": "service:my-service AND status:error", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditRole", + "qualifiedName": "DatadogApi.EditRole", + "fullyQualifiedName": "DatadogApi.EditRole@2.0.0", + "description": "Edit a role with administrator application keys.\n\n Use this tool to edit an existing role in Datadog. It's designed for administrators using application keys to make updates to specified roles.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "role_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the role to be edited. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateRole'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.EditRole", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "role_identifier": { + "value": "admin-role-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"permissions\": [\"read:all\", \"write:all\"], \"name\": \"Admin Role\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditSecuritySignalIncidents", + "qualifiedName": "DatadogApi.EditSecuritySignalIncidents", + "fullyQualifiedName": "DatadogApi.EditSecuritySignalIncidents@2.0.0", + "description": "Modify incidents linked to a security signal.\n\nThis tool allows for updating the incidents related to a specific security monitoring signal. Use it when you need to change how a security signal is associated with incidents.", + "parameters": [ + { + "name": "incident_ids", + "type": "array", + "innerType": "integer", + "required": true, + "description": "An array of incident IDs to associate with the security signal.", + "enum": null, + "inferrable": true + }, + { + "name": "signal_id", + "type": "string", + "required": true, + "description": "The unique identifier for the security signal to modify.", + "enum": null, + "inferrable": true + }, + { + "name": "signal_version", + "type": "integer", + "required": false, + "description": "Version of the updated signal. Ensure the client-side version is not lower than the server-side version to avoid rejection.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'EditSecurityMonitoringSignalIncidents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.EditSecuritySignalIncidents", + "parameters": { + "incident_ids": { + "value": ["inc-123456", "inc-654321"], + "type": "array", + "required": true + }, + "signal_id": { + "value": "sig-789012", + "type": "string", + "required": true + }, + "signal_version": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditServiceAccountKey", + "qualifiedName": "DatadogApi.EditServiceAccountKey", + "fullyQualifiedName": "DatadogApi.EditServiceAccountKey@2.0.0", + "description": "Edit an application key for a service account.\n\nUse this tool to modify the details of an existing application key owned by a specific service account. This can help in updating permissions or other key parameters as needed.", + "parameters": [ + { + "name": "app_key_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the application key to be edited.", + "enum": null, + "inferrable": true + }, + { + "name": "application_key_id", + "type": "string", + "required": true, + "description": "The unique identifier for the application key to be edited.", + "enum": null, + "inferrable": true + }, + { + "name": "service_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the service account.", + "enum": null, + "inferrable": true + }, + { + "name": "application_key_name", + "type": "string", + "required": false, + "description": "Name of the application key to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "application_key_resource_type", + "type": "string", + "required": false, + "description": "Specify the type of resource for the application key. Must be 'application_keys'.", + "enum": null, + "inferrable": true + }, + { + "name": "application_key_scopes", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of scopes to grant the application key. Each scope is a string representing a permission or capability.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateServiceAccountApplicationKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.EditServiceAccountKey", + "parameters": { + "app_key_identifier": { + "value": "abc123", + "type": "string", + "required": true + }, + "application_key_id": { + "value": "def456", + "type": "string", + "required": true + }, + "service_account_id": { + "value": "ghi789", + "type": "string", + "required": true + }, + "application_key_name": { + "value": "My Updated App Key", + "type": "string", + "required": false + }, + "application_key_resource_type": { + "value": "application_keys", + "type": "string", + "required": false + }, + "application_key_scopes": { + "value": ["read:metrics", "write:events"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditSignalAssignee", + "qualifiedName": "DatadogApi.EditSignalAssignee", + "fullyQualifiedName": "DatadogApi.EditSignalAssignee@2.0.0", + "description": "Modify the triage assignee of a security signal.\n\nUse this tool to change the person assigned to handle a security monitoring signal in Datadog. This is helpful when reassigning tasks to different team members for better workload distribution or expertise alignment.", + "parameters": [ + { + "name": "assignee_uuid", + "type": "string", + "required": true, + "description": "UUID assigned by Datadog to identify the user account for the signal's assignee.", + "enum": null, + "inferrable": true + }, + { + "name": "signal_id", + "type": "string", + "required": true, + "description": "The unique identifier for the security signal to modify its assignee.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_gravatar_icon", + "type": "string", + "required": false, + "description": "URL for the Gravatar icon associated with the user account.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_name", + "type": "string", + "required": false, + "description": "The name for the user account to be assigned the security signal.", + "enum": null, + "inferrable": true + }, + { + "name": "signal_version_number", + "type": "integer", + "required": false, + "description": "Integer representing the version of the updated signal. If the server-side version is higher, the update will be rejected.", + "enum": null, + "inferrable": true + }, + { + "name": "user_account_handle", + "type": "string", + "required": false, + "description": "The handle for the user account to be assigned the security signal.", + "enum": null, + "inferrable": true + }, + { + "name": "user_account_numerical_id", + "type": "integer", + "required": false, + "description": "Numerical ID assigned by Datadog to the user account. Required for identifying the assignee.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'EditSecurityMonitoringSignalAssignee'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.EditSignalAssignee", + "parameters": { + "assignee_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "signal_id": { + "value": "signal-1234", + "type": "string", + "required": true + }, + "assignee_gravatar_icon": { + "value": "https://www.gravatar.com/avatar/abc123", + "type": "string", + "required": false + }, + "assignee_name": { + "value": "Jane Doe", + "type": "string", + "required": false + }, + "signal_version_number": { + "value": 2, + "type": "integer", + "required": false + }, + "user_account_handle": { + "value": "jane.doe@example.com", + "type": "string", + "required": false + }, + "user_account_numerical_id": { + "value": 5678, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditUserAppKey", + "qualifiedName": "DatadogApi.EditUserAppKey", + "fullyQualifiedName": "DatadogApi.EditUserAppKey@2.0.0", + "description": "Edit an application key owned by the current user.\n\nUse this tool to modify an existing application key for the current user. This is useful when you need to update permissions or other details associated with your application keys.", + "parameters": [ + { + "name": "app_key_identifier", + "type": "string", + "required": true, + "description": "ID of the application key to be edited.", + "enum": null, + "inferrable": true + }, + { + "name": "application_key_id", + "type": "string", + "required": true, + "description": "The ID of the application key to be edited. Must be a valid string ID.", + "enum": null, + "inferrable": true + }, + { + "name": "application_key_name", + "type": "string", + "required": false, + "description": "New name for the application key.", + "enum": null, + "inferrable": true + }, + { + "name": "application_key_resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type for the application key. Use the value 'application_keys'.", + "enum": null, + "inferrable": true + }, + { + "name": "application_key_scopes", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of scopes to grant the application key. Each scope is a string defining permissions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCurrentUserApplicationKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.EditUserAppKey", + "parameters": { + "app_key_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "application_key_id": { + "value": "app-key-001", + "type": "string", + "required": true + }, + "application_key_name": { + "value": "Updated App Key Name", + "type": "string", + "required": false + }, + "application_key_resource_type": { + "value": "application_keys", + "type": "string", + "required": false + }, + "application_key_scopes": { + "value": ["read", "write", "monitor"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EscalateOnCallPage", + "qualifiedName": "DatadogApi.EscalateOnCallPage", + "fullyQualifiedName": "DatadogApi.EscalateOnCallPage@2.0.0", + "description": "Escalate an on-call page to notify the responsible team.\n\nUse this tool to escalate an on-call page when immediate attention is needed from the responsible team.", + "parameters": [ + { + "name": "on_call_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the on-call page to be escalated.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'EscalateOnCallPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.EscalateOnCallPage", + "parameters": { + "on_call_page_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EstimateMetricsOutput", + "qualifiedName": "DatadogApi.EstimateMetricsOutput", + "fullyQualifiedName": "DatadogApi.EstimateMetricsOutput@2.0.0", + "description": "Estimate cardinality of a metric with specific settings.\n\nUse this tool to get the estimated cardinality for a metric based on a specific tag, percentile, and number of aggregations configuration. This is useful for analyzing metric data within Datadog using Metrics without Limits™.", + "parameters": [ + { + "name": "metric_name", + "type": "string", + "required": true, + "description": "Specifies the name of the metric for which to estimate cardinality.", + "enum": null, + "inferrable": true + }, + { + "name": "filtered_tag_keys", + "type": "string", + "required": false, + "description": "Filtered tag keys that the metric is configured to query with, specified as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "ignore_num_aggregations", + "type": "integer", + "required": false, + "description": "This argument is deprecated and has no impact on volume estimation. It is ignored in the current tool implementation.", + "enum": null, + "inferrable": true + }, + { + "name": "include_percentile_aggregators", + "type": "boolean", + "required": false, + "description": "Boolean to estimate cardinality if distribution metrics have additional percentile aggregators.", + "enum": null, + "inferrable": true + }, + { + "name": "lookback_hours", + "type": "integer", + "required": false, + "description": "Specify the number of hours to look back from the current time to estimate cardinality. Defaults to 0 if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "lookback_timespan_hours", + "type": "integer", + "required": false, + "description": "A window, in hours, from the lookback to estimate cardinality. Minimum is 1 hour.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'EstimateMetricsOutputSeries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.EstimateMetricsOutput", + "parameters": { + "metric_name": { + "value": "system.cpu.idle", + "type": "string", + "required": true + }, + "filtered_tag_keys": { + "value": "host,env", + "type": "string", + "required": false + }, + "ignore_num_aggregations": { + "value": 0, + "type": "integer", + "required": false + }, + "include_percentile_aggregators": { + "value": true, + "type": "boolean", + "required": false + }, + "lookback_hours": { + "value": 24, + "type": "integer", + "required": false + }, + "lookback_timespan_hours": { + "value": 12, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ExecuteWorkflow", + "qualifiedName": "DatadogApi.ExecuteWorkflow", + "fullyQualifiedName": "DatadogApi.ExecuteWorkflow@2.0.0", + "description": "Execute a specified workflow in Datadog.\n\n Initiates the execution of a workflow in Datadog using the provided workflow ID. Ensure that a registered application key or appropriate UI configuration is used for authentication.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "workflow_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the Datadog workflow to be executed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateWorkflowInstance'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ExecuteWorkflow", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "workflow_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"param1\": \"value1\", \"param2\": \"value2\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchAllScorecardOutcomes", + "qualifiedName": "DatadogApi.FetchAllScorecardOutcomes", + "fullyQualifiedName": "DatadogApi.FetchAllScorecardOutcomes@2.0.0", + "description": "Retrieve all rule outcomes from scorecards.\n\nUse this tool to fetch all outcomes from scorecards in Datadog. It's useful for obtaining detailed results of applied rules.", + "parameters": [ + { + "name": "filter_by_rule_id", + "type": "string", + "required": false, + "description": "Filter outcomes based on specific rule ID.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_rule_name", + "type": "string", + "required": false, + "description": "Filter outcomes based on a specific rule name.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_outcomes_by_service_name", + "type": "string", + "required": false, + "description": "Filter outcomes based on a specific service name. Provide the service name as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_rule_enabled", + "type": "boolean", + "required": false, + "description": "Filter outcomes based on whether a rule is enabled (true) or disabled (false).", + "enum": null, + "inferrable": true + }, + { + "name": "include_rule_details", + "type": "string", + "required": false, + "description": "Specify if related rule details should be included in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "outcome_state_filter", + "type": "string", + "required": false, + "description": "Filter the scorecard outcomes by a specific state. Accepts a state value as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "page_offset", + "type": "integer", + "required": false, + "description": "Specific offset to use as the beginning of the returned page, represented as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "The number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_fields_to_return", + "type": "string", + "required": false, + "description": "Specify which fields to return in the included rule details.", + "enum": null, + "inferrable": true + }, + { + "name": "specified_outcome_values", + "type": "string", + "required": false, + "description": "Comma-separated list of specific outcome attributes to return. Limits the response to these attributes.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListScorecardOutcomes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.FetchAllScorecardOutcomes", + "parameters": { + "filter_by_rule_id": { + "value": "1234", + "type": "string", + "required": false + }, + "filter_by_rule_name": { + "value": "Service Availability", + "type": "string", + "required": false + }, + "filter_outcomes_by_service_name": { + "value": "web-service", + "type": "string", + "required": false + }, + "filter_rule_enabled": { + "value": true, + "type": "boolean", + "required": false + }, + "include_rule_details": { + "value": "true", + "type": "string", + "required": false + }, + "outcome_state_filter": { + "value": "success", + "type": "string", + "required": false + }, + "page_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "rule_fields_to_return": { + "value": "id,name,status", + "type": "string", + "required": false + }, + "specified_outcome_values": { + "value": "outcome1,outcome2", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchAwsIntegrationPermissions", + "qualifiedName": "DatadogApi.FetchAwsIntegrationPermissions", + "fullyQualifiedName": "DatadogApi.FetchAwsIntegrationPermissions@2.0.0", + "description": "Retrieve AWS IAM permissions for Datadog integration.\n\nCall this tool to obtain the list of AWS IAM permissions required for integrating AWS with Datadog.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAWSIntegrationIAMPermissions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.FetchAwsIntegrationPermissions", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchAwsScanSettings", + "qualifiedName": "DatadogApi.FetchAwsScanSettings", + "fullyQualifiedName": "DatadogApi.FetchAwsScanSettings@2.0.0", + "description": "Fetches Agentless scan options for AWS accounts.\n\nUse this tool to retrieve the configuration of Agentless scan options for a specified AWS account.", + "parameters": [ + { + "name": "aws_account_id", + "type": "string", + "required": true, + "description": "The unique ID of an AWS account for fetching scan options.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAwsScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.FetchAwsScanSettings", + "parameters": { + "aws_account_id": { + "value": "123456789012", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchAzureScanOptions", + "qualifiedName": "DatadogApi.FetchAzureScanOptions", + "fullyQualifiedName": "DatadogApi.FetchAzureScanOptions@2.0.0", + "description": "Fetches the scan options for Azure accounts from Datadog.\n\nCall this tool to retrieve the current scan options configured for Azure accounts in Datadog. It provides details about the configuration settings used in agentless scanning for these accounts.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListAzureScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.FetchAzureScanOptions", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchConfluentResource", + "qualifiedName": "DatadogApi.FetchConfluentResource", + "fullyQualifiedName": "DatadogApi.FetchConfluentResource@2.0.0", + "description": "Retrieve a Confluent resource using account and resource IDs.\n\nUse this tool to obtain information about a specific Confluent resource linked to a particular account by providing the account and resource IDs.", + "parameters": [ + { + "name": "confluent_account_id", + "type": "string", + "required": true, + "description": "The ID of the Confluent account to retrieve the resource for. This should be a string value representing the account identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "confluent_resource_id", + "type": "string", + "required": true, + "description": "The ID of the Confluent resource associated with the specified account. Provide this to retrieve the resource details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetConfluentResource'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.FetchConfluentResource", + "parameters": { + "confluent_account_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "confluent_resource_id": { + "value": "abc-def-123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchCustomCostsFile", + "qualifiedName": "DatadogApi.FetchCustomCostsFile", + "fullyQualifiedName": "DatadogApi.FetchCustomCostsFile@2.0.0", + "description": "Fetch a specified Custom Costs file by file ID from Datadog.\n\nUse this tool to retrieve a specific Custom Costs file from Datadog by providing the file ID.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the Custom Costs file to be retrieved from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomCostsFile'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.FetchCustomCostsFile", + "parameters": { + "file_identifier": { + "value": "custom_costs_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchDashboardListItems", + "qualifiedName": "DatadogApi.FetchDashboardListItems", + "fullyQualifiedName": "DatadogApi.FetchDashboardListItems@2.0.0", + "description": "Fetch details of dashboards in a list.\n\nUse this tool to retrieve the details of dashboards contained in a specific dashboard list by providing the list ID. It returns the dashboard definitions for that list.", + "parameters": [ + { + "name": "dashboard_list_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the dashboard list from which to retrieve dashboard definitions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetDashboardListItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.FetchDashboardListItems", + "parameters": { + "dashboard_list_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchGcpScanOptions", + "qualifiedName": "DatadogApi.FetchGcpScanOptions", + "fullyQualifiedName": "DatadogApi.FetchGcpScanOptions@2.0.0", + "description": "Fetch GCP project scan options.\n\nThis tool retrieves the scan options configured for all Google Cloud Platform (GCP) projects, facilitating the assessment of agentless scanning configurations.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListGcpScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.FetchGcpScanOptions", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchMonthlyCostAttribution", + "qualifiedName": "DatadogApi.FetchMonthlyCostAttribution", + "fullyQualifiedName": "DatadogApi.FetchMonthlyCostAttribution@2.0.0", + "description": "Retrieve monthly cost attribution data by tag.\n\nFetch detailed monthly cost attribution by tag for both multi-org and single root-org accounts. Use this to track and report cost allocations within an organization after the 19th of each month. Ensure to handle pagination if necessary to acquire all records.", + "parameters": [ + { + "name": "cost_types_fields", + "type": "string", + "required": true, + "description": "Comma-separated list specifying cost types and proportions. Use `*` to retrieve all fields. Example: `infra_host_on_demand_cost,infra_host_percentage_in_account`.", + "enum": null, + "inferrable": true + }, + { + "name": "start_month", + "type": "string", + "required": true, + "description": "Datetime in ISO-8601 format, UTC, precise to month `[YYYY-MM]`. Represents the start of the costing period.", + "enum": null, + "inferrable": true + }, + { + "name": "end_month", + "type": "string", + "required": false, + "description": "The final month for cost calculation. Use ISO-8601 format `[YYYY-MM]` to specify the month.", + "enum": null, + "inferrable": true + }, + { + "name": "include_child_organization_costs", + "type": "boolean", + "required": false, + "description": "Include child organization costs in the response. Defaults to true.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_next_record_id", + "type": "string", + "required": false, + "description": "Identifier for fetching the next set of results in a paginated response. Use the 'next_record_id' from the previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_billing_dimension", + "type": "string", + "required": false, + "description": "Billing dimension to sort by. Defaults to sorting by total cost. Example: 'infra_host'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_direction", + "type": "string", + "required": false, + "description": "Specifies the direction to sort cost attribution data. Use 'desc' for descending or 'asc' for ascending order.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_keys_for_cost_grouping", + "type": "string", + "required": false, + "description": "Comma-separated list of tag keys used to group costs. If empty, costs won't be grouped by tag. Check `tag_config_source` in the API response for available tags.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetMonthlyCostAttribution'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.FetchMonthlyCostAttribution", + "parameters": { + "cost_types_fields": { + "value": "infra_host_on_demand_cost,infra_host_percentage_in_account", + "type": "string", + "required": true + }, + "start_month": { + "value": "2023-01", + "type": "string", + "required": true + }, + "end_month": { + "value": "2023-01", + "type": "string", + "required": false + }, + "include_child_organization_costs": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_next_record_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "sort_by_billing_dimension": { + "value": "infra_host", + "type": "string", + "required": false + }, + "sort_by_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "tag_keys_for_cost_grouping": { + "value": "env,team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchRecentAwsOnDemandTasks", + "qualifiedName": "DatadogApi.FetchRecentAwsOnDemandTasks", + "fullyQualifiedName": "DatadogApi.FetchRecentAwsOnDemandTasks@2.0.0", + "description": "Retrieve the latest AWS on demand tasks.\n\nFetches the most recent 1000 AWS on demand tasks. Useful for monitoring or analyzing recent AWS activities managed by Datadog.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListAwsOnDemandTasks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.FetchRecentAwsOnDemandTasks", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchScorecardRules", + "qualifiedName": "DatadogApi.FetchScorecardRules", + "fullyQualifiedName": "DatadogApi.FetchScorecardRules@2.0.0", + "description": "Fetch all scorecard rules from Datadog.\n\nUse this tool to retrieve a list of all scorecard rules from Datadog's API. This is useful for managing and reviewing rules related to scorecards.", + "parameters": [ + { + "name": "filter_custom_rules_only", + "type": "boolean", + "required": false, + "description": "Set to true to include only custom rules in the results.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_for_enabled_rules", + "type": "boolean", + "required": false, + "description": "Set to true to filter for enabled rules only.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_rule_by_id", + "type": "string", + "required": false, + "description": "Filter the rules based on a specific rule ID.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_rule_description", + "type": "string", + "required": false, + "description": "Filter rules based on their description. Provide a string to match against the rule descriptions.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_rules_by_name", + "type": "string", + "required": false, + "description": "Specify a rule name to filter the scorecard rules.", + "enum": null, + "inferrable": true + }, + { + "name": "include_scorecard_details", + "type": "string", + "required": false, + "description": "Specify related scorecard details to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "page_offset", + "type": "integer", + "required": false, + "description": "Specific offset to use as the beginning of the returned page for fetching scorecard rules.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Number of rules to return per page. Maximum value is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_rule_fields", + "type": "string", + "required": false, + "description": "Specify which rule fields to include in the response. Provide a comma-separated list of field names.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_scorecard_fields", + "type": "string", + "required": false, + "description": "Specify which fields to include in the response for scorecard attributes. Use comma-separated values.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListScorecardRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.FetchScorecardRules", + "parameters": { + "filter_custom_rules_only": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_for_enabled_rules": { + "value": false, + "type": "boolean", + "required": false + }, + "filter_rule_by_id": { + "value": "12345", + "type": "string", + "required": false + }, + "filter_rule_description": { + "value": "CPU usage", + "type": "string", + "required": false + }, + "filter_rules_by_name": { + "value": "High CPU Alert", + "type": "string", + "required": false + }, + "include_scorecard_details": { + "value": "true", + "type": "string", + "required": false + }, + "page_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "specific_rule_fields": { + "value": "id,name,description", + "type": "string", + "required": false + }, + "specific_scorecard_fields": { + "value": "id,name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FindSecurityAlerts", + "qualifiedName": "DatadogApi.FindSecurityAlerts", + "fullyQualifiedName": "DatadogApi.FindSecurityAlerts@2.0.0", + "description": "Retrieve historical security monitoring signals from Datadog.\n\nThis tool is used to search and retrieve historical security monitoring signals in Datadog. Ideal for extracting past security incident data and analysis.", + "parameters": [ + { + "name": "max_security_signals", + "type": "integer", + "required": false, + "description": "Specify the maximum number of security signals to retrieve in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_timestamp_for_signals", + "type": "string", + "required": false, + "description": "The maximum timestamp for requested security signals, formatted as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_timestamp", + "type": "string", + "required": false, + "description": "The start timestamp for filtering requested security signals. Use ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "String used to fetch the next set of results based on a previous query's cursor.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query_for_security_signals", + "type": "string", + "required": false, + "description": "Search query to filter and list specific security signals. Use keywords and operators to refine results.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "The criteria for sorting security signals, either 'timestamp' or '-timestamp'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchSecurityMonitoringHistsignals'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.FindSecurityAlerts", + "parameters": { + "max_security_signals": { + "value": 100, + "type": "integer", + "required": false + }, + "maximum_timestamp_for_signals": { + "value": "2023-10-01T23:59:59Z", + "type": "string", + "required": false + }, + "minimum_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "search_query_for_security_signals": { + "value": "type:alert AND status:active", + "type": "string", + "required": false + }, + "sort_order": { + "value": "-timestamp", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GenerateAwsExternalId", + "qualifiedName": "DatadogApi.GenerateAwsExternalId", + "fullyQualifiedName": "DatadogApi.GenerateAwsExternalId@2.0.0", + "description": "Generate a new external ID for AWS authentication.\n\nThis tool is used to generate a new external ID for AWS role-based authentication through Datadog.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateNewAWSExternalID'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GenerateAwsExternalId", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetActionConnection", + "qualifiedName": "DatadogApi.GetActionConnection", + "fullyQualifiedName": "DatadogApi.GetActionConnection@2.0.0", + "description": "Retrieve an existing Action Connection from Datadog.\n\nUse this tool to get details about an existing Action Connection in Datadog. This requires a registered application key.", + "parameters": [ + { + "name": "action_connection_id", + "type": "string", + "required": true, + "description": "The ID of the action connection to retrieve. Required for fetching details of a specific connection.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetActionConnection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetActionConnection", + "parameters": { + "action_connection_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetActiveBillingDimensions", + "qualifiedName": "DatadogApi.GetActiveBillingDimensions", + "fullyQualifiedName": "DatadogApi.GetActiveBillingDimensions@2.0.0", + "description": "Retrieve active billing dimensions for cost attribution.\n\nCall this tool to get active billing dimensions used for attributing costs. Useful for understanding cost distribution across different dimensions. The data is available by the 19th of the following month.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetActiveBillingDimensions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetActiveBillingDimensions", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAgentlessScanOptions", + "qualifiedName": "DatadogApi.GetAgentlessScanOptions", + "fullyQualifiedName": "DatadogApi.GetAgentlessScanOptions@2.0.0", + "description": "Fetch Azure Agentless scan options for a subscription.\n\nUse this tool to retrieve the Agentless scan options for an activated Azure subscription. This is useful for understanding the scanning configurations applied to the subscription.", + "parameters": [ + { + "name": "azure_subscription_id", + "type": "string", + "required": true, + "description": "The Azure subscription ID to retrieve the Agentless scan options for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAzureScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAgentlessScanOptions", + "parameters": { + "azure_subscription_id": { + "value": "12345678-1234-1234-1234-123456789012", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAggregatedConnections", + "qualifiedName": "DatadogApi.GetAggregatedConnections", + "fullyQualifiedName": "DatadogApi.GetAggregatedConnections@2.0.0", + "description": "Retrieve all aggregated network connections from Datadog.\n\nThis tool is used to get a comprehensive view of all aggregated network connections. It's ideal for monitoring and analyzing network activity.", + "parameters": [ + { + "name": "connection_limit", + "type": "integer", + "required": false, + "description": "Set the number of connections to be returned, maximum 7500, default 100.", + "enum": null, + "inferrable": true + }, + { + "name": "end_query_window", + "type": "integer", + "required": false, + "description": "Unix timestamp for the end of the query window. Defaults to current time if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_tags", + "type": "string", + "required": false, + "description": "Comma-separated list of tags to filter connections by for more targeted querying.", + "enum": null, + "inferrable": true + }, + { + "name": "group_by_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to group connections by, with a maximum of 10 fields.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_unix_timestamp", + "type": "integer", + "required": false, + "description": "Unix timestamp for the start of the query window. Defaults to 15 minutes before `end_time_unix_timestamp` if not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAggregatedConnections'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAggregatedConnections", + "parameters": { + "connection_limit": { + "value": 200, + "type": "integer", + "required": false + }, + "end_query_window": { + "value": 1697059200, + "type": "integer", + "required": false + }, + "filter_by_tags": { + "value": "env:production,service:web", + "type": "string", + "required": false + }, + "group_by_fields": { + "value": "source_ip,destination_ip", + "type": "string", + "required": false + }, + "start_time_unix_timestamp": { + "value": 1697055600, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAggregatedDnsTraffic", + "qualifiedName": "DatadogApi.GetAggregatedDnsTraffic", + "fullyQualifiedName": "DatadogApi.GetAggregatedDnsTraffic@2.0.0", + "description": "Retrieve all aggregated DNS traffic data.\n\nThis tool fetches all the aggregated DNS traffic data using Datadog's API. It should be called when you need information about DNS traffic patterns or metrics.", + "parameters": [ + { + "name": "end_timestamp", + "type": "integer", + "required": false, + "description": "Unix timestamp (seconds since epoch) for the end of the query window. Defaults to current time if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_dns_traffic_by_tags", + "type": "string", + "required": false, + "description": "Comma-separated list of tags to filter the DNS traffic data within the query.", + "enum": null, + "inferrable": true + }, + { + "name": "group_dns_traffic_by_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to group DNS traffic by. Defaults to `network.dns_query` if unspecified. Use `server_ungrouped` to avoid grouping. Maximum of 10 fields.", + "enum": null, + "inferrable": true + }, + { + "name": "max_dns_entries", + "type": "integer", + "required": false, + "description": "Number of aggregated DNS entries to return, up to a maximum of 7500. Default is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "start_query_timestamp", + "type": "integer", + "required": false, + "description": "Unix timestamp for the query window start. Defaults to 15 min before `to` timestamp if not specified.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAggregatedDns'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAggregatedDnsTraffic", + "parameters": { + "end_timestamp": { + "value": 1697059200, + "type": "integer", + "required": false + }, + "filter_dns_traffic_by_tags": { + "value": "env:production,service:web", + "type": "string", + "required": false + }, + "group_dns_traffic_by_fields": { + "value": "network.dns_query,origin,service", + "type": "string", + "required": false + }, + "max_dns_entries": { + "value": 200, + "type": "integer", + "required": false + }, + "start_query_timestamp": { + "value": 1697055600, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAllCustomAttributes", + "qualifiedName": "DatadogApi.GetAllCustomAttributes", + "fullyQualifiedName": "DatadogApi.GetAllCustomAttributes@2.0.0", + "description": "Retrieve all custom attributes for cases in Datadog.\n\nUse this tool to fetch all the custom attributes associated with cases in Datadog. This can be useful for understanding the different custom data fields available for case management.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAllCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAllCustomAttributes", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAllDatasets", + "qualifiedName": "DatadogApi.GetAllDatasets", + "fullyQualifiedName": "DatadogApi.GetAllDatasets@2.0.0", + "description": "Retrieve all datasets configured for your organization.\n\nCall this tool to obtain a list of all datasets that have been configured for an organization, using the Datadog API.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAllDatasets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAllDatasets", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAllMonitorUserTemplates", + "qualifiedName": "DatadogApi.GetAllMonitorUserTemplates", + "fullyQualifiedName": "DatadogApi.GetAllMonitorUserTemplates@2.0.0", + "description": "Retrieve all monitor user templates from Datadog.\n\nUse this tool to get a list of all monitor user templates available in Datadog. It can help in managing and reviewing template configurations.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListMonitorUserTemplates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAllMonitorUserTemplates", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAllProjects", + "qualifiedName": "DatadogApi.GetAllProjects", + "fullyQualifiedName": "DatadogApi.GetAllProjects@2.0.0", + "description": "Retrieve a list of all projects from Datadog.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetProjects'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAllProjects", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAllTeamLinks", + "qualifiedName": "DatadogApi.GetAllTeamLinks", + "fullyQualifiedName": "DatadogApi.GetAllTeamLinks@2.0.0", + "description": "Retrieve all links for a specific team.\n\nUse this tool to obtain all the links associated with a given team in Datadog. It is helpful when you need to gather all relevant links for team collaboration or resource management.", + "parameters": [ + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the team whose links are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTeamLinks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAllTeamLinks", + "parameters": { + "team_identifier": { + "value": "team-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetApiKeyDetails", + "qualifiedName": "DatadogApi.GetApiKeyDetails", + "fullyQualifiedName": "DatadogApi.GetApiKeyDetails@2.0.0", + "description": "Retrieves details of a specific Datadog API key.\n\nUse this tool to obtain information about a specific API key from Datadog by providing the API key ID.", + "parameters": [ + { + "name": "api_key_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Datadog API key to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_resources", + "type": "string", + "required": false, + "description": "Comma-separated list of resource paths (`created_by`, `modified_by`) to include in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAPIKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetApiKeyDetails", + "parameters": { + "api_key_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "include_related_resources": { + "value": "created_by,modified_by", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetApmRetentionFilter", + "qualifiedName": "DatadogApi.GetApmRetentionFilter", + "fullyQualifiedName": "DatadogApi.GetApmRetentionFilter@2.0.0", + "description": "Retrieve details of a specific APM retention filter.\n\nUse this tool to get detailed information about an APM retention filter by specifying the filter ID. It helps in managing and understanding APM data retention configurations.", + "parameters": [ + { + "name": "retention_filter_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific APM retention filter to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetApmRetentionFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetApmRetentionFilter", + "parameters": { + "retention_filter_id": { + "value": "abc123-def456-ghi789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetApmRetentionFilters", + "qualifiedName": "DatadogApi.GetApmRetentionFilters", + "fullyQualifiedName": "DatadogApi.GetApmRetentionFilters@2.0.0", + "description": "Retrieve the list of APM retention filters from Datadog.\n\nThis tool is used to obtain a list of APM retention filters in Datadog. It should be called when there's a need to review or analyze the current retention filter settings in APM configurations.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListApmRetentionFilters'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetApmRetentionFilters", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAppDetails", + "qualifiedName": "DatadogApi.GetAppDetails", + "fullyQualifiedName": "DatadogApi.GetAppDetails@2.0.0", + "description": "Retrieve comprehensive details of a Datadog app.\n\nThis tool fetches the full definition of a specified app from Datadog. It's useful when you need detailed information about an app for monitoring or management purposes. Ensure you have a registered application key or configured permissions as required by Datadog.", + "parameters": [ + { + "name": "application_id", + "type": "string", + "required": true, + "description": "The unique ID of the Datadog app to retrieve details for. Required for fetching app information.", + "enum": null, + "inferrable": true + }, + { + "name": "app_version", + "type": "string", + "required": false, + "description": "Specify the app version to retrieve. Use a version number starting from 1, or special values `latest` and `deployed` for the latest or published version, respectively.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetApp'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAppDetails", + "parameters": { + "application_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "app_version": { + "value": "latest", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAppKeyRegistration", + "qualifiedName": "DatadogApi.GetAppKeyRegistration", + "fullyQualifiedName": "DatadogApi.GetAppKeyRegistration@2.0.0", + "description": "Retrieve details of an existing App Key Registration.\n\nThis tool retrieves information about a specific App Key Registration by its ID. Use it to obtain details of an app key currently registered in the Datadog system via its unique identifier.", + "parameters": [ + { + "name": "app_key_id", + "type": "string", + "required": true, + "description": "The unique ID of the app key to fetch its registration details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAppKeyRegistration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAppKeyRegistration", + "parameters": { + "app_key_id": { + "value": "12345-ABCDE", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetApplicationKey", + "qualifiedName": "DatadogApi.GetApplicationKey", + "fullyQualifiedName": "DatadogApi.GetApplicationKey@2.0.0", + "description": "Retrieve an application key for your organization from Datadog.\n\nUse this tool to obtain information about a specific application key in your Datadog account. This can be useful for managing and auditing access keys.", + "parameters": [ + { + "name": "application_key_id", + "type": "string", + "required": true, + "description": "The unique identifier for the application key to retrieve details from Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_resource", + "type": "string", + "required": false, + "description": "Resource path for related resources to include in the response. Currently, only `owned_by` is supported.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetApplicationKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetApplicationKey", + "parameters": { + "application_key_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "include_related_resource": { + "value": "owned_by", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetArchiveReadRoles", + "qualifiedName": "DatadogApi.GetArchiveReadRoles", + "fullyQualifiedName": "DatadogApi.GetArchiveReadRoles@2.0.0", + "description": "Retrieve roles with read access to a specific archive.\n\nUse this tool to obtain a list of all roles that have read access to a specified archive in Datadog. It helps manage and review access control for archive data.", + "parameters": [ + { + "name": "archive_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the archive to retrieve read access roles from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListArchiveReadRoles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetArchiveReadRoles", + "parameters": { + "archive_identifier": { + "value": "archive_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAuditLogs", + "qualifiedName": "DatadogApi.GetAuditLogs", + "fullyQualifiedName": "DatadogApi.GetAuditLogs@2.0.0", + "description": "Retrieve events matching an Audit Logs search query.\n\nThis tool calls the Datadog API to retrieve audit log events that match a specified search query. It provides the latest events with pagination support.", + "parameters": [ + { + "name": "audit_logs_search_query", + "type": "string", + "required": false, + "description": "Search query using Audit Logs syntax to filter events.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_for_following_results", + "type": "string", + "required": false, + "description": "Cursor to fetch subsequent pages of results. Use the cursor from the previous query's response.", + "enum": null, + "inferrable": true + }, + { + "name": "max_event_timestamp", + "type": "string", + "required": false, + "description": "Specify the maximum timestamp for requested events in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "max_events_per_response", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of events to return in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_of_events", + "type": "string", + "required": false, + "description": "Specify the order of events in the results. Use 'timestamp' for ascending and '-timestamp' for descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_filter", + "type": "string", + "required": false, + "description": "Specify the minimum timestamp for requested events in the format YYYY-MM-DDTHH:MM:SSZ.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListAuditLogs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAuditLogs", + "parameters": { + "audit_logs_search_query": { + "value": "status:success", + "type": "string", + "required": false + }, + "cursor_for_following_results": { + "value": "eyJ2IjoxLCJzIjoxfQ", + "type": "string", + "required": false + }, + "max_event_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "max_events_per_response": { + "value": 100, + "type": "integer", + "required": false + }, + "sort_order_of_events": { + "value": "-timestamp", + "type": "string", + "required": false + }, + "start_time_filter": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAuthnMapping", + "qualifiedName": "DatadogApi.GetAuthnMapping", + "fullyQualifiedName": "DatadogApi.GetAuthnMapping@2.0.0", + "description": "Retrieve an AuthN Mapping by its UUID.\n\nUse this tool to obtain details of a specific AuthN Mapping in Datadog by providing its UUID.", + "parameters": [ + { + "name": "authn_mapping_uuid", + "type": "string", + "required": true, + "description": "The UUID of the AuthN Mapping to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAuthNMapping'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAuthnMapping", + "parameters": { + "authn_mapping_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAwsAccountIntegrationConfig", + "qualifiedName": "DatadogApi.GetAwsAccountIntegrationConfig", + "fullyQualifiedName": "DatadogApi.GetAwsAccountIntegrationConfig@2.0.0", + "description": "Retrieve AWS Account Integration Config by ID.\n\nUse this tool to obtain detailed information about a specific AWS account integration configuration, identified by its config ID.", + "parameters": [ + { + "name": "aws_account_integration_config_id", + "type": "string", + "required": true, + "description": "Unique Datadog ID of the AWS Account Integration Config. Obtain it using the List all AWS integrations endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAWSAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAwsAccountIntegrationConfig", + "parameters": { + "aws_account_integration_config_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAwsCloudwatchNamespaces", + "qualifiedName": "DatadogApi.GetAwsCloudwatchNamespaces", + "fullyQualifiedName": "DatadogApi.GetAwsCloudwatchNamespaces@2.0.0", + "description": "Retrieve available AWS CloudWatch namespaces for Datadog integration.\n\nThis tool fetches a list of AWS CloudWatch namespaces that can send metrics to Datadog. It should be called when needing to understand which AWS services can integrate with Datadog for monitoring and analysis purposes.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListAWSNamespaces'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAwsCloudwatchNamespaces", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAwsCurConfig", + "qualifiedName": "DatadogApi.GetAwsCurConfig", + "fullyQualifiedName": "DatadogApi.GetAwsCurConfig@2.0.0", + "description": "Retrieve a specific AWS CUR configuration.\n\nThis tool is used to fetch the AWS Cost and Usage Report (CUR) configuration for a specific cloud account ID. It is ideal for users who need to check or audit AWS usage configurations.", + "parameters": [ + { + "name": "cloud_account_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the AWS cloud account for which to fetch the CUR configuration.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCostAWSCURConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAwsCurConfig", + "parameters": { + "cloud_account_id": { + "value": 123456789, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAwsIamPermissions", + "qualifiedName": "DatadogApi.GetAwsIamPermissions", + "fullyQualifiedName": "DatadogApi.GetAwsIamPermissions@2.0.0", + "description": "Get required AWS IAM permissions for resource collection.\n\nThis tool retrieves all necessary AWS IAM permissions for integrating with AWS. Use it to ensure that the integration has the required permissions.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAWSIntegrationIAMPermissionsResourceCollection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAwsIamPermissions", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAwsIntegrationIamPermissions", + "qualifiedName": "DatadogApi.GetAwsIntegrationIamPermissions", + "fullyQualifiedName": "DatadogApi.GetAwsIntegrationIamPermissions@2.0.0", + "description": "Fetch standard AWS IAM permissions for integration.\n\nRetrieve all standard AWS IAM permissions needed for setting up AWS integration.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAWSIntegrationIAMPermissionsStandard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAwsIntegrationIamPermissions", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAwsOnDemandTaskData", + "qualifiedName": "DatadogApi.GetAwsOnDemandTaskData", + "fullyQualifiedName": "DatadogApi.GetAwsOnDemandTaskData@2.0.0", + "description": "Fetch data of a specific AWS on-demand task in Datadog.\n\nUse this tool to retrieve information about a specific AWS on-demand task from Datadog's agentless scanning service. It should be called when detailed information about a task is needed, identified by its task ID.", + "parameters": [ + { + "name": "aws_task_uuid", + "type": "string", + "required": true, + "description": "The UUID of the AWS on-demand task to fetch data for. This is a unique identifier for the task.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAwsOnDemandTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAwsOnDemandTaskData", + "parameters": { + "aws_task_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAwsScanOptions", + "qualifiedName": "DatadogApi.GetAwsScanOptions", + "fullyQualifiedName": "DatadogApi.GetAwsScanOptions@2.0.0", + "description": "Fetch AWS scan options for configured accounts.\n\nUse this tool to retrieve the scan options that have been set up for AWS accounts in Datadog.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListAwsScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAwsScanOptions", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAzureConfig", + "qualifiedName": "DatadogApi.GetAzureConfig", + "fullyQualifiedName": "DatadogApi.GetAzureConfig@2.0.0", + "description": "Retrieve details of a specific Azure configuration.\n\nThis tool is used to get detailed information about a specific Azure configuration using the cloud account ID. It should be called when you need to access the configuration details for Azure within the Datadog service.", + "parameters": [ + { + "name": "azure_cloud_account_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the Azure cloud account to retrieve the configuration.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCostAzureUCConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetAzureConfig", + "parameters": { + "azure_cloud_account_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBillingDimensionMapping", + "qualifiedName": "DatadogApi.GetBillingDimensionMapping", + "fullyQualifiedName": "DatadogApi.GetBillingDimensionMapping@2.0.0", + "description": "Retrieve the mapping of billing dimensions to API keys.\n\nUse this tool to obtain the mapping of billing dimensions to corresponding keys for usage metering API endpoints. This information is updated monthly and accessible only to parent-level organizations.", + "parameters": [ + { + "name": "billing_dimension_view", + "type": "string", + "required": false, + "description": "Specify 'active' for current contract mappings or 'all' for all mappings. Defaults to 'active'.", + "enum": null, + "inferrable": true + }, + { + "name": "billing_month", + "type": "string", + "required": false, + "description": "Date in ISO-8601 format (UTC) for the starting month of mappings. Defaults to the current month.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBillingDimensionMapping'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetBillingDimensionMapping", + "parameters": { + "billing_dimension_view": { + "value": "active", + "type": "string", + "required": false + }, + "billing_month": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBudgetDetails", + "qualifiedName": "DatadogApi.GetBudgetDetails", + "fullyQualifiedName": "DatadogApi.GetBudgetDetails@2.0.0", + "description": "Retrieve detailed information about a specific budget.\n\nUse this tool to get detailed information about a budget by providing the budget ID. Ideal for tracking budget allocations and spending.", + "parameters": [ + { + "name": "budget_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the budget to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBudget'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetBudgetDetails", + "parameters": { + "budget_identifier": { + "value": "budget-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCaseDetails", + "qualifiedName": "DatadogApi.GetCaseDetails", + "fullyQualifiedName": "DatadogApi.GetCaseDetails@2.0.0", + "description": "Retrieve detailed information for a specific case.\n\nThis tool retrieves the details of a case using its unique identifier, `case_id`. It should be called when specific information about a case is needed, such as for review, analysis, or reporting.", + "parameters": [ + { + "name": "case_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the case, either a UUID or a specific key, required to retrieve case details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCase'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetCaseDetails", + "parameters": { + "case_identifier": { + "value": "e4f3e8a5-2d88-4c44-bcdb-946b1391cbd1", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCloudAccountsCoverageAnalysis", + "qualifiedName": "DatadogApi.GetCloudAccountsCoverageAnalysis", + "fullyQualifiedName": "DatadogApi.GetCloudAccountsCoverageAnalysis@2.0.0", + "description": "Retrieve CSM coverage analysis of your cloud accounts.\n\nRetrieve the CSM Coverage Analysis for cloud accounts to see how many are scanned for security issues.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCSMCloudAccountsCoverageAnalysis'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetCloudAccountsCoverageAnalysis", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCloudflareAccount", + "qualifiedName": "DatadogApi.GetCloudflareAccount", + "fullyQualifiedName": "DatadogApi.GetCloudflareAccount@2.0.0", + "description": "Retrieve details of a Cloudflare account via Datadog.\n\nCall this tool to get information about a specific Cloudflare account linked to Datadog. Use it when you need to access account details for management or monitoring purposes.", + "parameters": [ + { + "name": "cloudflare_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Cloudflare account to retrieve details from. This is required to access account-specific information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCloudflareAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetCloudflareAccount", + "parameters": { + "cloudflare_account_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCloudWorkloadSecurityAgentRuleDetails", + "qualifiedName": "DatadogApi.GetCloudWorkloadSecurityAgentRuleDetails", + "fullyQualifiedName": "DatadogApi.GetCloudWorkloadSecurityAgentRuleDetails@2.0.0", + "description": "Retrieve details of a cloud workload security agent rule.\n\nUse this tool to get information about a specific security agent rule in a cloud workload. It's specifically for the Datadog Government (US1-FED) site.", + "parameters": [ + { + "name": "agent_rule_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the cloud workload security agent rule to retrieve details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCloudWorkloadSecurityAgentRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetCloudWorkloadSecurityAgentRuleDetails", + "parameters": { + "agent_rule_identifier": { + "value": "sec-rule-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetConfluentAccountInfo", + "qualifiedName": "DatadogApi.GetConfluentAccountInfo", + "fullyQualifiedName": "DatadogApi.GetConfluentAccountInfo@2.0.0", + "description": "Retrieve Confluent account information by account ID.\n\nUse this tool to obtain details for a Confluent account using its account ID. Useful for accessing specific account configurations or status within Datadog's Confluent integrations.", + "parameters": [ + { + "name": "confluent_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Confluent account to retrieve details from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetConfluentAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetConfluentAccountInfo", + "parameters": { + "confluent_account_id": { + "value": "account-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetConfluentResource", + "qualifiedName": "DatadogApi.GetConfluentResource", + "fullyQualifiedName": "DatadogApi.GetConfluentResource@2.0.0", + "description": "Retrieve Confluent resource details for a specific account ID.\n\nUse this tool to get information about a Confluent resource linked to a specific account using the account ID.", + "parameters": [ + { + "name": "confluent_account_id", + "type": "string", + "required": true, + "description": "Enter the Confluent Account ID to retrieve the resource details linked to this account.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListConfluentResource'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetConfluentResource", + "parameters": { + "confluent_account_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCsmCoverageAnalysis", + "qualifiedName": "DatadogApi.GetCsmCoverageAnalysis", + "fullyQualifiedName": "DatadogApi.GetCsmCoverageAnalysis@2.0.0", + "description": "Retrieve CSM coverage analysis for hosts and containers.\n\nUse this tool to obtain the CSM Coverage Analysis for your hosts and containers based on active agents with CSM features enabled.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCSMHostsAndContainersCoverageAnalysis'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetCsmCoverageAnalysis", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCurrentArchiveOrder", + "qualifiedName": "DatadogApi.GetCurrentArchiveOrder", + "fullyQualifiedName": "DatadogApi.GetCurrentArchiveOrder@2.0.0", + "description": "Retrieve the current order of logs archives.\n\nThis tool retrieves the current order of your logs archives from Datadog. Use this tool when you need to understand how archives are currently organized.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetLogsArchiveOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetCurrentArchiveOrder", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomAllocationRule", + "qualifiedName": "DatadogApi.GetCustomAllocationRule", + "fullyQualifiedName": "DatadogApi.GetCustomAllocationRule@2.0.0", + "description": "Retrieve a custom allocation rule by its ID.\n\nCall this tool to get detailed information about a specific custom allocation rule using its unique ID. Useful for examining allocation settings in Datadog.", + "parameters": [ + { + "name": "custom_allocation_rule_id", + "type": "integer", + "required": true, + "description": "The unique identifier for retrieving a specific custom allocation rule in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomAllocationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetCustomAllocationRule", + "parameters": { + "custom_allocation_rule_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomAttributeConfigs", + "qualifiedName": "DatadogApi.GetCustomAttributeConfigs", + "fullyQualifiedName": "DatadogApi.GetCustomAttributeConfigs@2.0.0", + "description": "Retrieve all custom attribute configurations for a case type.\n\nUse this tool to fetch all custom attribute configurations associated with a specific case type. Ideal for understanding or managing attributes for various case types.", + "parameters": [ + { + "name": "case_type_uuid", + "type": "string", + "required": true, + "description": "UUID for the case type to retrieve its custom attribute configurations.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAllCustomAttributeConfigsByCaseType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetCustomAttributeConfigs", + "parameters": { + "case_type_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomDestination", + "qualifiedName": "DatadogApi.GetCustomDestination", + "fullyQualifiedName": "DatadogApi.GetCustomDestination@2.0.0", + "description": "Retrieve details of a specific custom log destination.\n\nUse this tool to get information about a specific custom destination for logs in your organization. Useful for managing and configuring log destinations effectively.", + "parameters": [ + { + "name": "custom_destination_id", + "type": "string", + "required": true, + "description": "The ID of the custom destination to retrieve details from your organization.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetLogsCustomDestination'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetCustomDestination", + "parameters": { + "custom_destination_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomFramework", + "qualifiedName": "DatadogApi.GetCustomFramework", + "fullyQualifiedName": "DatadogApi.GetCustomFramework@2.0.0", + "description": "Retrieve a specific custom framework by handle and version.\n\nUse this tool to get details of a specific custom framework in Datadog by providing its handle and version. This is useful for accessing specific configurations or settings within cloud security management frameworks.", + "parameters": [ + { + "name": "framework_handle", + "type": "string", + "required": true, + "description": "The unique identifier for the custom framework to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "framework_version", + "type": "string", + "required": true, + "description": "Specify the version of the framework to retrieve. Use the exact version number or identifier.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomFramework'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetCustomFramework", + "parameters": { + "framework_handle": { + "value": "custom_framework_123", + "type": "string", + "required": true + }, + "framework_version": { + "value": "v1.0.0", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDatadogChannelInfo", + "qualifiedName": "DatadogApi.GetDatadogChannelInfo", + "fullyQualifiedName": "DatadogApi.GetDatadogChannelInfo@2.0.0", + "description": "Retrieve channel ID details for Datadog MS Teams integration.\n\nUse this tool to obtain the tenant, team, and channel ID for a specific channel in the Datadog Microsoft Teams integration. Call this tool when you need to look up channel configuration details within a Datadog integration.", + "parameters": [ + { + "name": "datadog_channel_name", + "type": "string", + "required": true, + "description": "The name of the channel in the Datadog Microsoft Teams integration. Required to retrieve channel details.", + "enum": null, + "inferrable": true + }, + { + "name": "team_name", + "type": "string", + "required": true, + "description": "Specify the name of the team for which you want to retrieve channel ID details in the Datadog Microsoft Teams integration.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_name", + "type": "string", + "required": true, + "description": "The name of the tenant for which you want to get the channel information in Datadog's Microsoft Teams integration.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetChannelByName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetDatadogChannelInfo", + "parameters": { + "datadog_channel_name": { + "value": "alerts-channel", + "type": "string", + "required": true + }, + "team_name": { + "value": "dev-team", + "type": "string", + "required": true + }, + "tenant_name": { + "value": "tenant123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDatadogServiceAccountAppKey", + "qualifiedName": "DatadogApi.GetDatadogServiceAccountAppKey", + "fullyQualifiedName": "DatadogApi.GetDatadogServiceAccountAppKey@2.0.0", + "description": "Retrieve a specific application key for a Datadog service account.\n\nUse this tool to obtain details of an application key owned by a specific Datadog service account, identified by its service account ID and application key ID.", + "parameters": [ + { + "name": "application_key_id", + "type": "string", + "required": true, + "description": "The ID of the application key for the Datadog service account.", + "enum": null, + "inferrable": true + }, + { + "name": "service_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Datadog service account to retrieve the application key from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetServiceAccountApplicationKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetDatadogServiceAccountAppKey", + "parameters": { + "application_key_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "service_account_id": { + "value": "service-account-456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDeviceDetails", + "qualifiedName": "DatadogApi.GetDeviceDetails", + "fullyQualifiedName": "DatadogApi.GetDeviceDetails@2.0.0", + "description": "Retrieve specific device details.\n\nCall this tool to obtain detailed information about a specified device using its device ID.", + "parameters": [ + { + "name": "device_id", + "type": "string", + "required": true, + "description": "The unique identifier of the device to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetDevice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetDeviceDetails", + "parameters": { + "device_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDeviceInterfaces", + "qualifiedName": "DatadogApi.GetDeviceInterfaces", + "fullyQualifiedName": "DatadogApi.GetDeviceInterfaces@2.0.0", + "description": "Fetches the list of interfaces for a given device.\n\nUse this tool to obtain the list of interfaces associated with a particular device from Datadog.", + "parameters": [ + { + "name": "device_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the device to retrieve interfaces for. Expected to be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "include_ip_addresses", + "type": "boolean", + "required": false, + "description": "Specify true to include IP addresses of the interfaces, or false to exclude them.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetInterfaces'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetDeviceInterfaces", + "parameters": { + "device_identifier": { + "value": "device12345", + "type": "string", + "required": true + }, + "include_ip_addresses": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDeviceList", + "qualifiedName": "DatadogApi.GetDeviceList", + "fullyQualifiedName": "DatadogApi.GetDeviceList@2.0.0", + "description": "Retrieve a list of devices from Datadog.\n\nUse this tool to get a comprehensive list of all devices managed by the Datadog service. It retrieves data from the specified API endpoint and provides an overview of available devices.", + "parameters": [ + { + "name": "filter_by_tag", + "type": "string", + "required": false, + "description": "Filter devices by a specified tag.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specific page number to return when fetching the devices list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Specify the size for a given page, with a maximum allowed value of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_devices_by", + "type": "string", + "required": false, + "description": "Specify the field by which to sort the devices list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListDevices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetDeviceList", + "parameters": { + "filter_by_tag": { + "value": "environment:production", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_devices_by": { + "value": "name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDeviceUserTags", + "qualifiedName": "DatadogApi.GetDeviceUserTags", + "fullyQualifiedName": "DatadogApi.GetDeviceUserTags@2.0.0", + "description": "Retrieve the list of tags for a specific device.\n\nThis tool calls the Datadog API to fetch user tags for a given device, identified by its ID. Use this when you need to understand or manage tags associated with a device for tracking or organizational purposes.", + "parameters": [ + { + "name": "device_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the device to fetch tags for from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListDeviceUserTags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetDeviceUserTags", + "parameters": { + "device_identifier": { + "value": "device-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDomainAllowlist", + "qualifiedName": "DatadogApi.GetDomainAllowlist", + "fullyQualifiedName": "DatadogApi.GetDomainAllowlist@2.0.0", + "description": "Retrieve the domain allowlist for an organization.\n\nUse this tool to get the list of domains that are allowed within your organization's settings. It helps ensure authorized access and manage security policies.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetDomainAllowlist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetDomainAllowlist", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDowntimeDetails", + "qualifiedName": "DatadogApi.GetDowntimeDetails", + "fullyQualifiedName": "DatadogApi.GetDowntimeDetails@2.0.0", + "description": "Retrieve details of a specific downtime by ID.\n\nUse this tool to get detailed information about a specific downtime in Datadog using a downtime ID.", + "parameters": [ + { + "name": "downtime_id", + "type": "string", + "required": true, + "description": "The unique identifier for the downtime period to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_resources", + "type": "string", + "required": false, + "description": "Comma-separated list of resource paths to include in the response. Options: `created_by`, `monitor`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetDowntime'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetDowntimeDetails", + "parameters": { + "downtime_id": { + "value": "abc12345", + "type": "string", + "required": true + }, + "include_related_resources": { + "value": "created_by,monitor", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetErrorTrackingIssueDetails", + "qualifiedName": "DatadogApi.GetErrorTrackingIssueDetails", + "fullyQualifiedName": "DatadogApi.GetErrorTrackingIssueDetails@2.0.0", + "description": "Retrieve full details of a specific error tracking issue.\n\nUse this tool to obtain comprehensive details about an error tracking issue from Datadog, including its attributes and relationships. Ideal for understanding specific issues and investigating errors.", + "parameters": [ + { + "name": "issue_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the error tracking issue to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_relationship_objects", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of relationship objects to include in the response. Provide as an array of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetErrorTrackingIssueDetails", + "parameters": { + "issue_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "include_relationship_objects": { + "value": ["related_issues", "error_occurrences", "trace_sample"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEstimatedCostDatadog", + "qualifiedName": "DatadogApi.GetEstimatedCostDatadog", + "fullyQualifiedName": "DatadogApi.GetEstimatedCostDatadog@2.0.0", + "description": "Retrieve estimated cost data for multi-org Datadog accounts.\n\nThis tool retrieves the estimated cost for the current and previous month across multi-org and single root-org Datadog accounts. The data is only available for parent-level organizations and is delayed by up to 72 hours.", + "parameters": [ + { + "name": "cost_end_month", + "type": "string", + "required": false, + "description": "Specify the ending month for the estimated cost in ISO-8601 format, UTC (`[YYYY-MM]`).", + "enum": null, + "inferrable": true + }, + { + "name": "cost_view_level", + "type": "string", + "required": false, + "description": "Specify if cost is broken down at the parent-org level (summary) or sub-org level (sub-org). Defaults to summary.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date", + "type": "string", + "required": false, + "description": "Specify the end date for cost estimation in ISO-8601 format (YYYY-MM-DD). It marks the last day of the period for which you need cost data.", + "enum": null, + "inferrable": true + }, + { + "name": "include_connected_accounts", + "type": "boolean", + "required": false, + "description": "Include accounts connected as partner customers in Datadog's partner network program. Defaults to `false`.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_cost_month", + "type": "string", + "required": false, + "description": "ISO-8601 month format `[YYYY-MM]`, specifying the start month for cost data. Cannot be older than two months. Provide `end_month` for month-over-month cost.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_for_cost", + "type": "string", + "required": false, + "description": "Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` for cost beginning this day. Either specify `start_date_for_cost` or `start_month_for_cost`, but not both. The date cannot be more than two months in the past. Use with `end_date_for_cost` for cumulative day-over-day cost.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetEstimatedCostByOrg'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetEstimatedCostDatadog", + "parameters": { + "cost_end_month": { + "value": "2023-11", + "type": "string", + "required": false + }, + "cost_view_level": { + "value": "summary", + "type": "string", + "required": false + }, + "end_date": { + "value": "2023-11-30", + "type": "string", + "required": false + }, + "include_connected_accounts": { + "value": true, + "type": "boolean", + "required": false + }, + "initial_cost_month": { + "value": "2023-10", + "type": "string", + "required": false + }, + "start_date_for_cost": { + "value": "2023-11-01", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEventDetails", + "qualifiedName": "DatadogApi.GetEventDetails", + "fullyQualifiedName": "DatadogApi.GetEventDetails@2.0.0", + "description": "Retrieve detailed information about a specific event.\n\nUse this tool to get detailed information about an event by providing its unique event ID. It is useful for obtaining specifics about incidents or activities tracked in Datadog.", + "parameters": [ + { + "name": "event_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier of the event to retrieve details for. This should be a string representing the event's UID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetEvent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetEventDetails", + "parameters": { + "event_unique_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFastlyAccountInfo", + "qualifiedName": "DatadogApi.GetFastlyAccountInfo", + "fullyQualifiedName": "DatadogApi.GetFastlyAccountInfo@2.0.0", + "description": "Retrieves detailed information for a specific Fastly account.\n\nUse this tool to obtain details about a specific Fastly account integrated with Datadog.", + "parameters": [ + { + "name": "fastly_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Fastly account to retrieve information about.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetFastlyAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetFastlyAccountInfo", + "parameters": { + "fastly_account_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFastlyServiceInfo", + "qualifiedName": "DatadogApi.GetFastlyServiceInfo", + "fullyQualifiedName": "DatadogApi.GetFastlyServiceInfo@2.0.0", + "description": "Retrieve Fastly service details for a specific account.\n\nCall this tool to get information about a Fastly service linked to a Datadog account using the account ID and the service ID.", + "parameters": [ + { + "name": "fastly_account_id", + "type": "string", + "required": true, + "description": "The unique ID of the Fastly account for which to retrieve service details.", + "enum": null, + "inferrable": true + }, + { + "name": "fastly_service_id", + "type": "string", + "required": true, + "description": "The ID of the Fastly service to retrieve details for, linked to the specified account.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetFastlyService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetFastlyServiceInfo", + "parameters": { + "fastly_account_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "fastly_service_id": { + "value": "abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFutureRuleSuppressions", + "qualifiedName": "DatadogApi.GetFutureRuleSuppressions", + "fullyQualifiedName": "DatadogApi.GetFutureRuleSuppressions@2.0.0", + "description": "Retrieve suppressions affecting a future security rule.\n\nUse this tool to get a list of suppressions that would impact a specified security monitoring rule in the future.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSuppressionsAffectingFutureRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetFutureRuleSuppressions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"rule_id\":\"12345\",\"future_date\":\"2023-10-15\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetGcpStsDelegate", + "qualifiedName": "DatadogApi.GetGcpStsDelegate", + "fullyQualifiedName": "DatadogApi.GetGcpStsDelegate@2.0.0", + "description": "Retrieve the Datadog-GCP STS delegate account configuration.\n\nUse this tool to list the configured GCP STS delegate account in your Datadog account. It provides information about the integration between Datadog and Google Cloud Platform for security token service (STS) delegation.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetGCPSTSDelegate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetGcpStsDelegate", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetGcpUsageCostConfig", + "qualifiedName": "DatadogApi.GetGcpUsageCostConfig", + "fullyQualifiedName": "DatadogApi.GetGcpUsageCostConfig@2.0.0", + "description": "Retrieve specific Google Cloud Usage Cost configuration details.\n\nThe tool retrieves a specific Google Cloud Usage Cost configuration using the provided cloud account ID. It is useful for obtaining cost configurations related to Google Cloud usage in Datadog.", + "parameters": [ + { + "name": "cloud_account_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the Google Cloud account for which to retrieve the usage cost configuration.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCostGCPUsageCostConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetGcpUsageCostConfig", + "parameters": { + "cloud_account_identifier": { + "value": 123456789, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetHistoricalCostByOrg", + "qualifiedName": "DatadogApi.GetHistoricalCostByOrg", + "fullyQualifiedName": "DatadogApi.GetHistoricalCostByOrg@2.0.0", + "description": "Retrieve historical cost data across different organizations.\n\nThis tool retrieves historical cost data for multi-org and single root-org accounts from Datadog. The cost data for a given month becomes available by the 16th of the following month. Accessible only for parent-level organizations.", + "parameters": [ + { + "name": "start_month_utc", + "type": "string", + "required": true, + "description": "ISO-8601 date format `[YYYY-MM]`, UTC timezone, to specify the start month for cost calculation.", + "enum": null, + "inferrable": true + }, + { + "name": "cost_view_level", + "type": "string", + "required": false, + "description": "Specify cost breakdown level: 'summary' for parent-org or 'sub-org' for sub-org level. Defaults to 'summary'.", + "enum": null, + "inferrable": true + }, + { + "name": "end_month", + "type": "string", + "required": false, + "description": "Datetime in ISO-8601 format, UTC, precise to month `[YYYY-MM]` indicating the ending month for cost data.", + "enum": null, + "inferrable": true + }, + { + "name": "include_connected_accounts", + "type": "boolean", + "required": false, + "description": "Include accounts connected as partner customers in Datadog's network. Defaults to false.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetHistoricalCostByOrg'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetHistoricalCostByOrg", + "parameters": { + "start_month_utc": { + "value": "2023-01", + "type": "string", + "required": true + }, + "cost_view_level": { + "value": "summary", + "type": "string", + "required": false + }, + "end_month": { + "value": "2023-03", + "type": "string", + "required": false + }, + "include_connected_accounts": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetHistoricalJobDetails", + "qualifiedName": "DatadogApi.GetHistoricalJobDetails", + "fullyQualifiedName": "DatadogApi.GetHistoricalJobDetails@2.0.0", + "description": "Retrieve details of a specific historical job from Datadog.\n\nUse this tool to get the details of a specific historical job from Datadog's SIEM historical detections by providing the job ID.", + "parameters": [ + { + "name": "job_id", + "type": "string", + "required": true, + "description": "The unique identifier for the job whose details you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetHistoricalJob'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetHistoricalJobDetails", + "parameters": { + "job_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetHistoricalSecuritySignals", + "qualifiedName": "DatadogApi.GetHistoricalSecuritySignals", + "fullyQualifiedName": "DatadogApi.GetHistoricalSecuritySignals@2.0.0", + "description": "Retrieve historical security signals by job ID.\n\nUse this tool to obtain historical security signals associated with a specific job ID in the Datadog system.", + "parameters": [ + { + "name": "job_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the job whose historical security signals you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "max_security_signals", + "type": "integer", + "required": false, + "description": "The maximum number of security signals to retrieve in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "max_timestamp_for_signals", + "type": "string", + "required": false, + "description": "The latest timestamp for the requested security signals.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_timestamp", + "type": "string", + "required": false, + "description": "The earliest timestamp for retrieving security signals. Format should be ISO 8601 (e.g., '2023-10-01T00:00:00Z').", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Use the cursor from the previous query to paginate results.", + "enum": null, + "inferrable": true + }, + { + "name": "security_signal_search_query", + "type": "string", + "required": false, + "description": "The search query to filter security signals.", + "enum": null, + "inferrable": true + }, + { + "name": "signal_sort_order", + "type": "string", + "required": false, + "description": "Specify the sort order of the security signals, either 'timestamp' for ascending or '-timestamp' for descending.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSecurityMonitoringHistsignalsByJobId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetHistoricalSecuritySignals", + "parameters": { + "job_identifier": { + "value": "job-12345", + "type": "string", + "required": true + }, + "max_security_signals": { + "value": 100, + "type": "integer", + "required": false + }, + "max_timestamp_for_signals": { + "value": "2023-10-10T23:59:59Z", + "type": "string", + "required": false + }, + "minimum_timestamp": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor-abcdefg", + "type": "string", + "required": false + }, + "security_signal_search_query": { + "value": "source:cloudtrail", + "type": "string", + "required": false + }, + "signal_sort_order": { + "value": "-timestamp", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetHistSignalDetails", + "qualifiedName": "DatadogApi.GetHistSignalDetails", + "fullyQualifiedName": "DatadogApi.GetHistSignalDetails@2.0.0", + "description": "Retrieve details of a specific hist signal.\n\nThis tool fetches detailed information about a specified hist signal from Datadog's SIEM (Security Information and Event Management) service. It should be used when you need to access detailed data on a particular historical signal for security monitoring purposes.", + "parameters": [ + { + "name": "historical_signal_id", + "type": "string", + "required": true, + "description": "The ID of the historical signal to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSecurityMonitoringHistsignal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetHistSignalDetails", + "parameters": { + "historical_signal_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetHourlyUsageByProductFamily", + "qualifiedName": "DatadogApi.GetHourlyUsageByProductFamily", + "fullyQualifiedName": "DatadogApi.GetHourlyUsageByProductFamily@2.0.0", + "description": "Fetch hourly usage data by product family from Datadog.\n\nUse this tool to retrieve detailed hourly usage metrics categorized by product family from Datadog. Ideal for monitoring and analysis applications that require precise usage insights.", + "parameters": [ + { + "name": "product_families_to_retrieve", + "type": "string", + "required": true, + "description": "Comma-separated list of product families to retrieve usage data for. Available options include all, analyzed_logs, application_security, etc. Note: audit_logs is deprecated.", + "enum": null, + "inferrable": true + }, + { + "name": "start_timestamp", + "type": "string", + "required": true, + "description": "Datetime in ISO-8601 format, UTC, precise to hour. Specify the start of usage collection, e.g., '2023-10-05T14'.", + "enum": null, + "inferrable": true + }, + { + "name": "end_timestamp", + "type": "string", + "required": false, + "description": "Datetime in ISO-8601 format (UTC) for usage ending before this hour. Format: [YYYY-MM-DDThh].", + "enum": null, + "inferrable": true + }, + { + "name": "include_connected_accounts", + "type": "boolean", + "required": false, + "description": "Include accounts connected as partner customers in the response. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "include_descendants_usage", + "type": "boolean", + "required": false, + "description": "Include child organization usage in the response. Set to true to include, false to exclude.", + "enum": null, + "inferrable": true + }, + { + "name": "include_usage_breakdown", + "type": "boolean", + "required": false, + "description": "Boolean to include breakdown of usage by subcategories for product family logs. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_limit", + "type": "integer", + "required": false, + "description": "Set the maximum number of results to return per page, between 1 and 500. Defaults to 500.", + "enum": null, + "inferrable": true + }, + { + "name": "next_record_id", + "type": "string", + "required": false, + "description": "ID to continue listing results from the last query. Use the ID from previous queries to paginate through results.", + "enum": null, + "inferrable": true + }, + { + "name": "product_family_versions", + "type": "string", + "required": false, + "description": "Comma-separated list of product family versions in the format `product_family:version`. Defaults to latest if not specified.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetHourlyUsage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetHourlyUsageByProductFamily", + "parameters": { + "product_families_to_retrieve": { + "value": "all,analyzed_logs,application_security", + "type": "string", + "required": true + }, + "start_timestamp": { + "value": "2023-10-05T14", + "type": "string", + "required": true + }, + "end_timestamp": { + "value": "2023-10-06T14", + "type": "string", + "required": false + }, + "include_connected_accounts": { + "value": true, + "type": "boolean", + "required": false + }, + "include_descendants_usage": { + "value": false, + "type": "boolean", + "required": false + }, + "include_usage_breakdown": { + "value": true, + "type": "boolean", + "required": false + }, + "maximum_results_limit": { + "value": 100, + "type": "integer", + "required": false + }, + "next_record_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "product_family_versions": { + "value": "analyzed_logs:1,application_security:2", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIncidentAttachments", + "qualifiedName": "DatadogApi.GetIncidentAttachments", + "fullyQualifiedName": "DatadogApi.GetIncidentAttachments@2.0.0", + "description": "Retrieve all attachments for a specified incident.\n\nThis tool retrieves all files and documents attached to a particular incident. It should be called when details about the attachments associated with an incident are needed.", + "parameters": [ + { + "name": "incident_uuid", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the incident whose attachments are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_types_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the types of attachments to include in the response. Each type should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_objects", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of related object types to include in the response, such as 'user', 'tags'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListIncidentAttachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetIncidentAttachments", + "parameters": { + "incident_uuid": { + "value": "e8c8cc14-9ceb-4b9f-ae9b-6b0a2b58d0e2", + "type": "string", + "required": true + }, + "attachment_types_to_include": { + "value": ["screenshot", "log", "report"], + "type": "array", + "required": false + }, + "include_related_objects": { + "value": ["user", "tags"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIncidentDetails", + "qualifiedName": "DatadogApi.GetIncidentDetails", + "fullyQualifiedName": "DatadogApi.GetIncidentDetails@2.0.0", + "description": "Retrieve details of a specific incident using its ID.\n\nUse this tool to obtain detailed information about a specific incident by providing the incident ID. It retrieves all the necessary details from the Datadog service.", + "parameters": [ + { + "name": "incident_uuid", + "type": "string", + "required": true, + "description": "The UUID of the incident to retrieve its details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_objects", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify related object types to include in the response, such as users, logs, etc.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIncident'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetIncidentDetails", + "parameters": { + "incident_uuid": { + "value": "b8f212a9-3e75-4c3b-bb35-d12c1f80732b", + "type": "string", + "required": true + }, + "include_related_objects": { + "value": ["users", "logs"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIncidentImpacts", + "qualifiedName": "DatadogApi.GetIncidentImpacts", + "fullyQualifiedName": "DatadogApi.GetIncidentImpacts@2.0.0", + "description": "Retrieve all impacts for a specified incident.\n\nUse this tool to fetch all impact details associated with a particular incident, providing insight into the effects and scope of the incident.", + "parameters": [ + { + "name": "incident_uuid", + "type": "string", + "required": true, + "description": "The unique UUID of the incident to retrieve impacts for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_resources", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify which related resources to include in the response as an array of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListIncidentImpacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetIncidentImpacts", + "parameters": { + "incident_uuid": { + "value": "abc1234-5678-90de-fghij-klmnopqrstuv", + "type": "string", + "required": true + }, + "include_related_resources": { + "value": ["hosts", "services", "tags"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIncidentIntegrationDetails", + "qualifiedName": "DatadogApi.GetIncidentIntegrationDetails", + "fullyQualifiedName": "DatadogApi.GetIncidentIntegrationDetails@2.0.0", + "description": "Fetches details of incident integration metadata.\n\nUse this tool to obtain detailed metadata about a specific incident integration within Datadog, using the incident ID and integration metadata ID.", + "parameters": [ + { + "name": "incident_integration_metadata_uuid", + "type": "string", + "required": true, + "description": "The UUID of the incident integration metadata required to fetch its details.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_uuid", + "type": "string", + "required": true, + "description": "The UUID of the incident in Datadog for which to obtain integration metadata.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIncidentIntegration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetIncidentIntegrationDetails", + "parameters": { + "incident_integration_metadata_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "incident_uuid": { + "value": "987e6543-e21b-34c3-a789-426614174001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIncidentIntegrations", + "qualifiedName": "DatadogApi.GetIncidentIntegrations", + "fullyQualifiedName": "DatadogApi.GetIncidentIntegrations@2.0.0", + "description": "Retrieve integration metadata for a specific incident.\n\nUse this tool to get all the integration metadata associated with a particular incident. It helps in understanding how different integrations are linked to an incident.", + "parameters": [ + { + "name": "incident_uuid", + "type": "string", + "required": true, + "description": "The unique UUID of the incident to retrieve integration metadata.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListIncidentIntegrations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetIncidentIntegrations", + "parameters": { + "incident_uuid": { + "value": "b1c5b7e9-4f2e-4fd5-8d6d-e6c089cd0d6a", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIncidentNotificationRule", + "qualifiedName": "DatadogApi.GetIncidentNotificationRule", + "fullyQualifiedName": "DatadogApi.GetIncidentNotificationRule@2.0.0", + "description": "Retrieve details of a specific incident notification rule.\n\nThis tool retrieves a specific incident notification rule from Datadog by its ID. It should be called when there is a need to obtain detailed information about a particular notification rule used in incident management.", + "parameters": [ + { + "name": "notification_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the notification rule to retrieve details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_resources", + "type": "string", + "required": false, + "description": "Comma-separated list of resources to include in the response. Options: `created_by_user`, `last_modified_by_user`, `incident_type`, `notification_template`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIncidentNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetIncidentNotificationRule", + "parameters": { + "notification_rule_id": { + "value": "abc-123-def-456", + "type": "string", + "required": true + }, + "include_resources": { + "value": "created_by_user,last_modified_by_user", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIncidentNotificationTemplate", + "qualifiedName": "DatadogApi.GetIncidentNotificationTemplate", + "fullyQualifiedName": "DatadogApi.GetIncidentNotificationTemplate@2.0.0", + "description": "Retrieve a specific incident notification template by ID.\n\nUse this tool to get details of a specific incident notification template from Datadog by providing its ID.", + "parameters": [ + { + "name": "template_id", + "type": "string", + "required": true, + "description": "The ID of the notification template to retrieve from Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "include_relationships", + "type": "string", + "required": false, + "description": "Comma-separated list of relationships to include. Supported values: `created_by_user`, `last_modified_by_user`, `incident_type`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIncidentNotificationTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetIncidentNotificationTemplate", + "parameters": { + "template_id": { + "value": "123456", + "type": "string", + "required": true + }, + "include_relationships": { + "value": "created_by_user,last_modified_by_user", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIncidentTodoDetails", + "qualifiedName": "DatadogApi.GetIncidentTodoDetails", + "fullyQualifiedName": "DatadogApi.GetIncidentTodoDetails@2.0.0", + "description": "Retrieve details of an incident todo item from Datadog.\n\nUse this tool to obtain specific details about a todo item related to an incident in Datadog. It should be called when detailed information about an incident's todo component is needed.", + "parameters": [ + { + "name": "incident_todo_uuid", + "type": "string", + "required": true, + "description": "The UUID of the incident todo to fetch details for. This is essential for identifying the specific todo item linked to an incident.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_uuid", + "type": "string", + "required": true, + "description": "The UUID of the incident to get the todo details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIncidentTodo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetIncidentTodoDetails", + "parameters": { + "incident_todo_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "incident_uuid": { + "value": "987e6543-e21b-43d3-a456-426614174001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIncidentTypeDetails", + "qualifiedName": "DatadogApi.GetIncidentTypeDetails", + "fullyQualifiedName": "DatadogApi.GetIncidentTypeDetails@2.0.0", + "description": "Retrieve details of a specific incident type.\n\nUse this tool to obtain detailed information about a specific incident type from Datadog.", + "parameters": [ + { + "name": "incident_type_uuid", + "type": "string", + "required": true, + "description": "The UUID of the specific incident type to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIncidentType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetIncidentTypeDetails", + "parameters": { + "incident_type_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIncidentTypes", + "qualifiedName": "DatadogApi.GetIncidentTypes", + "fullyQualifiedName": "DatadogApi.GetIncidentTypes@2.0.0", + "description": "Retrieve all incident types from Datadog.\n\nThis tool calls the Datadog API to list all available incident types. Use it to get information about the types of incidents configured in the system.", + "parameters": [ + { + "name": "include_deleted", + "type": "boolean", + "required": false, + "description": "Include deleted incident types in the response when set to true.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListIncidentTypes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetIncidentTypes", + "parameters": { + "include_deleted": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIpAllowlist", + "qualifiedName": "DatadogApi.GetIpAllowlist", + "fullyQualifiedName": "DatadogApi.GetIpAllowlist@2.0.0", + "description": "Retrieve the IP allowlist and its status.\n\nUse this tool to obtain the current IP allowlist and check whether it is enabled or disabled.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIPAllowlist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetIpAllowlist", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetLogBasedMetric", + "qualifiedName": "DatadogApi.GetLogBasedMetric", + "fullyQualifiedName": "DatadogApi.GetLogBasedMetric@2.0.0", + "description": "Retrieve a specific log-based metric from Datadog.\n\nUse this tool to access detailed information about a specific log-based metric from your Datadog account. This is useful for monitoring and analyzing your organization's log metrics.", + "parameters": [ + { + "name": "log_based_metric_name", + "type": "string", + "required": true, + "description": "The name of the log-based metric to retrieve from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetLogsMetric'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetLogBasedMetric", + "parameters": { + "log_based_metric_name": { + "value": "webapp.errors.count", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetLogsMetricsList", + "qualifiedName": "DatadogApi.GetLogsMetricsList", + "fullyQualifiedName": "DatadogApi.GetLogsMetricsList@2.0.0", + "description": "Retrieve a list of log-based metrics and their definitions.\n\nUse this tool to obtain the list of configured log-based metrics from Datadog, along with their definitions. This can be helpful for monitoring and analyzing log data.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListLogsMetrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetLogsMetricsList", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMetricTagCardinality", + "qualifiedName": "DatadogApi.GetMetricTagCardinality", + "fullyQualifiedName": "DatadogApi.GetMetricTagCardinality@2.0.0", + "description": "Retrieve cardinality details of tags for a specific metric.\n\nThis tool is used to get the cardinality details of tags associated with a specific metric in Datadog. It's useful for understanding the distribution and uniqueness of tags related to the specified metric.", + "parameters": [ + { + "name": "metric_name", + "type": "string", + "required": true, + "description": "The name of the metric for which cardinality details of tags are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetMetricTagCardinalityDetails'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetMetricTagCardinality", + "parameters": { + "metric_name": { + "value": "system.cpu.usage", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMetricTagConfiguration", + "qualifiedName": "DatadogApi.GetMetricTagConfiguration", + "fullyQualifiedName": "DatadogApi.GetMetricTagConfiguration@2.0.0", + "description": "Retrieve the tag configuration for a specific metric.\n\nUse this tool to fetch the tag configuration associated with a specific metric name in Datadog. This is helpful for accessing detailed tagging information for metrics.", + "parameters": [ + { + "name": "metric_name", + "type": "string", + "required": true, + "description": "The name of the metric for which to retrieve the tag configuration in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListTagConfigurationByName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetMetricTagConfiguration", + "parameters": { + "metric_name": { + "value": "system.cpu.usage", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMonitorConfigurationPolicy", + "qualifiedName": "DatadogApi.GetMonitorConfigurationPolicy", + "fullyQualifiedName": "DatadogApi.GetMonitorConfigurationPolicy@2.0.0", + "description": "Retrieve a monitor's configuration policy using its ID.\n\nThis tool fetches detailed information about a specific monitor configuration policy from Datadog using the policy ID. It should be called when you need to access the configuration details of a monitor policy.", + "parameters": [ + { + "name": "monitor_policy_id", + "type": "string", + "required": true, + "description": "ID of the monitor configuration policy to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetMonitorConfigPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetMonitorConfigurationPolicy", + "parameters": { + "monitor_policy_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMonitorNotificationRule", + "qualifiedName": "DatadogApi.GetMonitorNotificationRule", + "fullyQualifiedName": "DatadogApi.GetMonitorNotificationRule@2.0.0", + "description": "Retrieve a monitor notification rule by its ID.\n\nUse this tool to fetch details of a specific monitor notification rule in Datadog by providing the rule ID. It can be useful for checking the configuration of alerting and notification rules.", + "parameters": [ + { + "name": "monitor_rule_id", + "type": "string", + "required": true, + "description": "ID of the monitor notification rule to fetch. This is required to retrieve specific rule details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_resources", + "type": "string", + "required": false, + "description": "Comma-separated list of related resource paths to include in the response, such as `created_by`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetMonitorNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetMonitorNotificationRule", + "parameters": { + "monitor_rule_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "include_related_resources": { + "value": "created_by,modified_by", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMonitorNotificationRules", + "qualifiedName": "DatadogApi.GetMonitorNotificationRules", + "fullyQualifiedName": "DatadogApi.GetMonitorNotificationRules@2.0.0", + "description": "Retrieve all monitor notification rules from Datadog.\n\nCall this tool to get a comprehensive list of all monitor notification rules configured in Datadog.", + "parameters": [ + { + "name": "filter_criteria", + "type": "string", + "required": false, + "description": "JSON string to filter rules by text, tags, or recipients. Use keys: `text`, `tags`, `recipients`.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_resources", + "type": "string", + "required": false, + "description": "Specify related resources to include in the response, such as `created_by`. Use a comma-separated list.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_rules_per_page", + "type": "integer", + "required": false, + "description": "The number of rules to return per page. Defaults to 100 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "String for sort order. Example: `name:asc`. Directions: `asc`, `desc`. Fields: `name`, `created_at`.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_page_number", + "type": "integer", + "required": false, + "description": "The page number to begin pagination. Defaults to the first page if not specified.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetMonitorNotificationRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetMonitorNotificationRules", + "parameters": { + "filter_criteria": { + "value": "{\"text\": \"error\", \"tags\": [\"production\"], \"recipients\": [\"team@example.com\"]}", + "type": "string", + "required": false + }, + "include_related_resources": { + "value": "created_by,updated_by", + "type": "string", + "required": false + }, + "number_of_rules_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "created_at:desc", + "type": "string", + "required": false + }, + "starting_page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMonitorUserTemplate", + "qualifiedName": "DatadogApi.GetMonitorUserTemplate", + "fullyQualifiedName": "DatadogApi.GetMonitorUserTemplate@2.0.0", + "description": "Retrieve a monitor user template by ID from Datadog.\n\nUse this tool to get detailed information about a specific monitor user template in Datadog by providing the template ID.", + "parameters": [ + { + "name": "template_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific monitor user template to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "include_all_versions", + "type": "boolean", + "required": false, + "description": "Include all versions of the template in the response if true.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetMonitorUserTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetMonitorUserTemplate", + "parameters": { + "template_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "include_all_versions": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMsTeamsWorkflowWebhookName", + "qualifiedName": "DatadogApi.GetMsTeamsWorkflowWebhookName", + "fullyQualifiedName": "DatadogApi.GetMsTeamsWorkflowWebhookName@2.0.0", + "description": "Retrieve the name of a MS Teams workflow webhook handle.\n\nUse this tool to get the name of a Microsoft Teams Workflows webhook handle using the Datadog integration. Useful for managing or verifying webhook configurations.", + "parameters": [ + { + "name": "workflow_webhook_handle_id", + "type": "string", + "required": true, + "description": "The ID of the Workflows webhook handle to retrieve the name for. This is specific to the Datadog Microsoft Teams integration.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetWorkflowsWebhookHandle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetMsTeamsWorkflowWebhookName", + "parameters": { + "workflow_webhook_handle_id": { + "value": "abc123def456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOktaAccountInfo", + "qualifiedName": "DatadogApi.GetOktaAccountInfo", + "fullyQualifiedName": "DatadogApi.GetOktaAccountInfo@2.0.0", + "description": "Retrieve detailed information about a specific Okta account.\n\nThis tool fetches details of an Okta account using the given account ID. It should be called when detailed information about an Okta account is required.", + "parameters": [ + { + "name": "okta_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Okta account to retrieve information for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetOktaAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetOktaAccountInfo", + "parameters": { + "okta_account_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOnCallEscalationPolicy", + "qualifiedName": "DatadogApi.GetOnCallEscalationPolicy", + "fullyQualifiedName": "DatadogApi.GetOnCallEscalationPolicy@2.0.0", + "description": "Retrieve details of an On-Call escalation policy.\n\nThis tool is used to retrieve information about a specific on-call escalation policy from Datadog. It should be called when there's a need to understand the configuration or details of an on-call policy by providing the policy ID.", + "parameters": [ + { + "name": "escalation_policy_id", + "type": "string", + "required": true, + "description": "The unique identifier for the on-call escalation policy to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "include_relationships", + "type": "string", + "required": false, + "description": "A comma-separated list of relationships to include in the response. Allowed values: `teams`, `steps`, `steps.targets`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetOnCallEscalationPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetOnCallEscalationPolicy", + "parameters": { + "escalation_policy_id": { + "value": "ep-12345", + "type": "string", + "required": true + }, + "include_relationships": { + "value": "teams,steps", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOnCallSchedule", + "qualifiedName": "DatadogApi.GetOnCallSchedule", + "fullyQualifiedName": "DatadogApi.GetOnCallSchedule@2.0.0", + "description": "Retrieve an On-Call schedule from Datadog.\n\nUse this tool to access detailed information regarding a specific On-Call schedule in Datadog by providing the schedule ID.", + "parameters": [ + { + "name": "schedule_id", + "type": "string", + "required": true, + "description": "The unique ID of the on-call schedule to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "include_relationships", + "type": "string", + "required": false, + "description": "Comma-separated list of relationships to include in the response. Options: `teams`, `layers`, `layers.members`, `layers.members.user`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetOnCallSchedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetOnCallSchedule", + "parameters": { + "schedule_id": { + "value": "12345abcdef", + "type": "string", + "required": true + }, + "include_relationships": { + "value": "teams,layers", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOnCallUser", + "qualifiedName": "DatadogApi.GetOnCallUser", + "fullyQualifiedName": "DatadogApi.GetOnCallUser@2.0.0", + "description": "Retrieve the current on-call user for a specific schedule.\n\nUse this tool to find out which user is currently on-call for a given schedule. It is helpful for monitoring and response teams to know who is available at any given moment.", + "parameters": [ + { + "name": "schedule_id", + "type": "string", + "required": true, + "description": "The unique ID of the schedule to retrieve the on-call user from.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_resources", + "type": "string", + "required": false, + "description": "Specifies related resources to include in the response. Use 'user' to include user details.", + "enum": null, + "inferrable": true + }, + { + "name": "timestamp_for_on_call_user", + "type": "string", + "required": false, + "description": "Retrieves the on-call user at the specified timestamp (ISO-8601). Defaults to current time if omitted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetScheduleOnCallUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetOnCallUser", + "parameters": { + "schedule_id": { + "value": "abc-12345", + "type": "string", + "required": true + }, + "include_related_resources": { + "value": "user", + "type": "string", + "required": false + }, + "timestamp_for_on_call_user": { + "value": "2023-10-04T12:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOnDemandConcurrencyCap", + "qualifiedName": "DatadogApi.GetOnDemandConcurrencyCap", + "fullyQualifiedName": "DatadogApi.GetOnDemandConcurrencyCap@2.0.0", + "description": "Retrieve the on-demand concurrency cap value from Datadog.\n\nUse this tool to get the current on-demand concurrency cap configured in Datadog's synthetics settings. This information can help monitor and manage concurrency limits effectively.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetOnDemandConcurrencyCap'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetOnDemandConcurrencyCap", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOpsgenieService", + "qualifiedName": "DatadogApi.GetOpsgenieService", + "fullyQualifiedName": "DatadogApi.GetOpsgenieService@2.0.0", + "description": "Retrieve a single Opsgenie service from Datadog.\n\nThis tool retrieves details about a specific service integrated with Datadog's Opsgenie. Use it to access information about service configurations or to manage operational alerts.", + "parameters": [ + { + "name": "service_uuid", + "type": "string", + "required": true, + "description": "The UUID of the Datadog Opsgenie service to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetOpsgenieService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetOpsgenieService", + "parameters": { + "service_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOrganizationConfigDetails", + "qualifiedName": "DatadogApi.GetOrganizationConfigDetails", + "fullyQualifiedName": "DatadogApi.GetOrganizationConfigDetails@2.0.0", + "description": "Retrieve organization configuration details by name.\n\nFetches the name, description, and value of a specific organization configuration from Datadog, identified by its name.", + "parameters": [ + { + "name": "organization_config_name", + "type": "string", + "required": true, + "description": "The name of the organization configuration to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetOrgConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetOrganizationConfigDetails", + "parameters": { + "organization_config_name": { + "value": "my_organization_config", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOrganizationRole", + "qualifiedName": "DatadogApi.GetOrganizationRole", + "fullyQualifiedName": "DatadogApi.GetOrganizationRole@2.0.0", + "description": "Retrieve details of a role using its role ID in the organization.\n\nThis tool gets details of a specific role within an organization by using the role's unique ID. It is useful for obtaining role-specific information needed for organizational management or role auditing.", + "parameters": [ + { + "name": "role_id", + "type": "string", + "required": true, + "description": "The unique identifier of the role in the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetRole'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetOrganizationRole", + "parameters": { + "role_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPowerpack", + "qualifiedName": "DatadogApi.GetPowerpack", + "fullyQualifiedName": "DatadogApi.GetPowerpack@2.0.0", + "description": "Retrieve details of a specific powerpack.\n\nThis tool should be called to obtain detailed information about a specific powerpack by providing its ID.", + "parameters": [ + { + "name": "powerpack_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the desired powerpack, used to retrieve its details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPowerpack'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetPowerpack", + "parameters": { + "powerpack_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectDetails", + "qualifiedName": "DatadogApi.GetProjectDetails", + "fullyQualifiedName": "DatadogApi.GetProjectDetails@2.0.0", + "description": "Retrieve details of a specific project using project ID.\n\nUse this tool to obtain comprehensive details about a particular project by providing the project's ID, utilizing the Datadog API.", + "parameters": [ + { + "name": "project_uuid", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the project for which details are required.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetProjectDetails", + "parameters": { + "project_uuid": { + "value": "e0b7cd77-9b8f-4de8-a7d4-4b2120c12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectedCost", + "qualifiedName": "DatadogApi.GetProjectedCost", + "fullyQualifiedName": "DatadogApi.GetProjectedCost@2.0.0", + "description": "Retrieve projected cost for multi-org and single root-org accounts.\n\nThis tool fetches projected cost data, available for the current month, for multi-org and single root-org accounts, becoming accessible around the 12th of the month. It's used for parent-level organizations.", + "parameters": [ + { + "name": "cost_view_level", + "type": "string", + "required": false, + "description": "Specify cost breakdown level: `summary` for parent-org or `sub-org` for sub-org level. Defaults to `summary`.", + "enum": null, + "inferrable": true + }, + { + "name": "include_connected_accounts", + "type": "boolean", + "required": false, + "description": "Include accounts connected as partner customers in the Datadog partner network. Defaults to `false`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetProjectedCost'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetProjectedCost", + "parameters": { + "cost_view_level": { + "value": "summary", + "type": "string", + "required": false + }, + "include_connected_accounts": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetReferenceTable", + "qualifiedName": "DatadogApi.GetReferenceTable", + "fullyQualifiedName": "DatadogApi.GetReferenceTable@2.0.0", + "description": "Retrieve details of a reference table by its ID.\n\nUse this tool to fetch information about a specific reference table in Datadog using its unique ID. This is helpful for accessing configuration or metadata details related to the table.", + "parameters": [ + { + "name": "reference_table_id", + "type": "string", + "required": true, + "description": "The unique ID of the reference table to retrieve details from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetReferenceTable", + "parameters": { + "reference_table_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRestrictionQuery", + "qualifiedName": "DatadogApi.GetRestrictionQuery", + "fullyQualifiedName": "DatadogApi.GetRestrictionQuery@2.0.0", + "description": "Retrieve a restriction query by its ID within Datadog.\n\nUse this tool to access the details of a specific restriction query in your Datadog organization by providing the `restriction_query_id`.", + "parameters": [ + { + "name": "restriction_query_id", + "type": "string", + "required": true, + "description": "The unique identifier for the restriction query to retrieve its details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetRestrictionQuery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetRestrictionQuery", + "parameters": { + "restriction_query_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRestrictionQueryRoles", + "qualifiedName": "DatadogApi.GetRestrictionQueryRoles", + "fullyQualifiedName": "DatadogApi.GetRestrictionQueryRoles@2.0.0", + "description": "Retrieve roles associated with a specific restriction query.\n\nThis tool fetches all roles that are linked to a specified restriction query within Datadog. Use this when you need to identify which roles have permissions based on a specific restriction query.", + "parameters": [ + { + "name": "restriction_query_id", + "type": "string", + "required": true, + "description": "The unique identifier of the restriction query to fetch associated roles.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number to return in the response. Use this to navigate through paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Specify the number of results per page. The maximum allowed value is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListRestrictionQueryRoles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetRestrictionQueryRoles", + "parameters": { + "restriction_query_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRoleRestrictionQuery", + "qualifiedName": "DatadogApi.GetRoleRestrictionQuery", + "fullyQualifiedName": "DatadogApi.GetRoleRestrictionQuery@2.0.0", + "description": "Retrieve the restriction query for a specific role.\n\nUse this tool to get the restriction query details associated with a specific role in Datadog. The tool fetches information relevant to access restrictions for the role identified.", + "parameters": [ + { + "name": "role_id", + "type": "string", + "required": true, + "description": "The unique identifier for the role whose restriction query you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetRoleRestrictionQuery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetRoleRestrictionQuery", + "parameters": { + "role_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRuleVersionHistory", + "qualifiedName": "DatadogApi.GetRuleVersionHistory", + "fullyQualifiedName": "DatadogApi.GetRuleVersionHistory@2.0.0", + "description": "Retrieve a rule's version history.\n\nUse this tool to obtain the version history of a specific security monitoring rule by its ID in Datadog.", + "parameters": [ + { + "name": "rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the rule. Required to fetch its version history in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number to return in the results.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Size for a given page, maximum value is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetRuleVersionHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetRuleVersionHistory", + "parameters": { + "rule_id": { + "value": "123456", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRumApplicationById", + "qualifiedName": "DatadogApi.GetRumApplicationById", + "fullyQualifiedName": "DatadogApi.GetRumApplicationById@2.0.0", + "description": "Retrieve RUM application details by ID.\n\nUse this tool to obtain details about a RUM application within your organization by specifying its ID.", + "parameters": [ + { + "name": "rum_application_id", + "type": "string", + "required": true, + "description": "The ID of the RUM application to retrieve details for. This is a required string value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetRUMApplication'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetRumApplicationById", + "parameters": { + "rum_application_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRumMetric", + "qualifiedName": "DatadogApi.GetRumMetric", + "fullyQualifiedName": "DatadogApi.GetRumMetric@2.0.0", + "description": "Retrieve a specific RUM-based metric for your organization.\n\nCall this tool to get detailed data about a specific Real User Monitoring (RUM) metric identified by its metric ID from your organization on Datadog.", + "parameters": [ + { + "name": "metric_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the RUM-based metric you want to retrieve from your organization.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetRumMetric'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetRumMetric", + "parameters": { + "metric_identifier": { + "value": "rum.user.sessions", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRumRetentionFilter", + "qualifiedName": "DatadogApi.GetRumRetentionFilter", + "fullyQualifiedName": "DatadogApi.GetRumRetentionFilter@2.0.0", + "description": "Retrieve a RUM retention filter for a RUM application.\n\nFetches details of a specific RUM retention filter for a given RUM application based on its ID.", + "parameters": [ + { + "name": "retention_filter_id", + "type": "string", + "required": true, + "description": "The ID of the retention filter to retrieve for a RUM application.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_application_id", + "type": "string", + "required": true, + "description": "The unique identifier for the RUM application. Required to fetch the retention filter.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetRetentionFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetRumRetentionFilter", + "parameters": { + "retention_filter_id": { + "value": "filter-12345", + "type": "string", + "required": true + }, + "rum_application_id": { + "value": "rum-app-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRumRetentionFilters", + "qualifiedName": "DatadogApi.GetRumRetentionFilters", + "fullyQualifiedName": "DatadogApi.GetRumRetentionFilters@2.0.0", + "description": "Retrieve RUM retention filters for a specific application.\n\nUse this tool to obtain the list of RUM retention filters for a given RUM application by specifying its application ID.", + "parameters": [ + { + "name": "rum_application_id", + "type": "string", + "required": true, + "description": "The unique identifier for the RUM application to retrieve retention filters.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListRetentionFilters'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetRumRetentionFilters", + "parameters": { + "rum_application_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSecurityFilterDetails", + "qualifiedName": "DatadogApi.GetSecurityFilterDetails", + "fullyQualifiedName": "DatadogApi.GetSecurityFilterDetails@2.0.0", + "description": "Retrieve the details of a specific security filter.\n\nUse this tool to get detailed information about a security filter in Datadog's security monitoring configuration. Ideal for understanding specific filter configurations and settings.", + "parameters": [ + { + "name": "security_filter_id", + "type": "string", + "required": true, + "description": "The unique identifier for the security filter to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSecurityFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetSecurityFilterDetails", + "parameters": { + "security_filter_id": { + "value": "filter-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSecurityFinding", + "qualifiedName": "DatadogApi.GetSecurityFinding", + "fullyQualifiedName": "DatadogApi.GetSecurityFinding@2.0.0", + "description": "Retrieve details of a specific security finding for analysis.\n\nThis tool retrieves the message and resource configuration details of a specified security finding, helping in security analysis and incident response.", + "parameters": [ + { + "name": "finding_id", + "type": "string", + "required": true, + "description": "The unique ID of the security finding to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "snapshot_unix_timestamp", + "type": "integer", + "required": false, + "description": "Return the finding for a specific snapshot in time, given in Unix milliseconds.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetFinding'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetSecurityFinding", + "parameters": { + "finding_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "snapshot_unix_timestamp": { + "value": 1691234567890, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSecurityMonitoringRuleDetails", + "qualifiedName": "DatadogApi.GetSecurityMonitoringRuleDetails", + "fullyQualifiedName": "DatadogApi.GetSecurityMonitoringRuleDetails@2.0.0", + "description": "Retrieve detailed information about a specific security rule.\n\nUse this tool to get comprehensive details about a security monitoring rule by specifying its ID.", + "parameters": [ + { + "name": "security_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the security monitoring rule you want to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSecurityMonitoringRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetSecurityMonitoringRuleDetails", + "parameters": { + "security_rule_id": { + "value": "rule-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSecuritySignalDetails", + "qualifiedName": "DatadogApi.GetSecuritySignalDetails", + "fullyQualifiedName": "DatadogApi.GetSecuritySignalDetails@2.0.0", + "description": "Retrieve details of a security monitoring signal.\n\nThis tool is used to obtain detailed information about a specific security monitoring signal in Datadog. It should be called when you need to understand the context or specifics of a particular signal identified by its unique signal ID.", + "parameters": [ + { + "name": "signal_id", + "type": "string", + "required": true, + "description": "The unique identifier for the security monitoring signal to retrieve details for. This ID is used to specify which signal's details to fetch.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSecurityMonitoringSignal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetSecuritySignalDetails", + "parameters": { + "signal_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetServerlessCoverageAnalysis", + "qualifiedName": "DatadogApi.GetServerlessCoverageAnalysis", + "fullyQualifiedName": "DatadogApi.GetServerlessCoverageAnalysis@2.0.0", + "description": "Retrieve CSM serverless coverage analysis data from Datadog.\n\nThis tool fetches the CSM Coverage Analysis for serverless resources in Datadog, determined by the number of agents with CSM features enabled.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCSMServerlessCoverageAnalysis'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetServerlessCoverageAnalysis", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetServiceDefinition", + "qualifiedName": "DatadogApi.GetServiceDefinition", + "fullyQualifiedName": "DatadogApi.GetServiceDefinition@2.0.0", + "description": "Retrieve a service definition from Datadog's Service Catalog.\n\nCall this tool to obtain specific details about a service defined in the Datadog Service Catalog. Useful for monitoring and managing services.", + "parameters": [ + { + "name": "service_name", + "type": "string", + "required": true, + "description": "The exact name of the service to retrieve from Datadog's Service Catalog.", + "enum": null, + "inferrable": true + }, + { + "name": "desired_schema_version", + "type": "string", + "required": false, + "description": "Specify the schema version for the response. Options: 'v1', 'v2', 'v2.1', 'v2.2'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetServiceDefinition'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetServiceDefinition", + "parameters": { + "service_name": { + "value": "example-service", + "type": "string", + "required": true + }, + "desired_schema_version": { + "value": "v2.1", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetServiceDefinitions", + "qualifiedName": "DatadogApi.GetServiceDefinitions", + "fullyQualifiedName": "DatadogApi.GetServiceDefinitions@2.0.0", + "description": "Retrieve all service definitions from the Datadog Service Catalog.\n\nUse this tool to get a comprehensive list of service definitions from Datadog's Service Catalog. Ideal for scenarios where service information retrieval is required.", + "parameters": [ + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number to retrieve from the service definitions list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Specify the number of items per page. The maximum allowed value is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "response_schema_version", + "type": "string", + "required": false, + "description": "Specifies the version of the schema to be returned in the response. Acceptable values are 'v1', 'v2', 'v2.1', or 'v2.2'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListServiceDefinitions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetServiceDefinitions", + "parameters": { + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "response_schema_version": { + "value": "v2.1", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSingleTeamInfo", + "qualifiedName": "DatadogApi.GetSingleTeamInfo", + "fullyQualifiedName": "DatadogApi.GetSingleTeamInfo@2.0.0", + "description": "Retrieve details of a team using its ID.\n\nUse this tool to obtain details about a specific team by providing the team's ID. Ideal for applications needing team-specific information.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team. Provide this to retrieve specific team details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetSingleTeamInfo", + "parameters": { + "team_id": { + "value": "team-123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSloReportStatus", + "qualifiedName": "DatadogApi.GetSloReportStatus", + "fullyQualifiedName": "DatadogApi.GetSloReportStatus@2.0.0", + "description": "Retrieve the status of a specific SLO report job.\n\nUse this tool to check the current status of a Service Level Objective (SLO) report job by providing the report ID.", + "parameters": [ + { + "name": "slo_report_id", + "type": "string", + "required": true, + "description": "The unique identifier of the SLO report job to check its current status.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSLOReportJobStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetSloReportStatus", + "parameters": { + "slo_report_id": { + "value": "abc123def456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSpanMetric", + "qualifiedName": "DatadogApi.GetSpanMetric", + "fullyQualifiedName": "DatadogApi.GetSpanMetric@2.0.0", + "description": "Retrieve a specific span-based metric from Datadog.\n\nUse this tool to get detailed information on a particular span-based metric from your Datadog organization. Ideal for accessing span metrics data by specifying the metric ID.", + "parameters": [ + { + "name": "metric_name", + "type": "string", + "required": true, + "description": "The name of the span-based metric to be retrieved from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSpansMetric'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetSpanMetric", + "parameters": { + "metric_name": { + "value": "web.request.duration", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSparkJobRecommendations", + "qualifiedName": "DatadogApi.GetSparkJobRecommendations", + "fullyQualifiedName": "DatadogApi.GetSparkJobRecommendations@2.0.0", + "description": "Retrieve resource recommendations for a Spark job.\n\nUse this tool to obtain structured recommendations for Spark job driver and executor resources, based on specified service name and shard identifier.", + "parameters": [ + { + "name": "spark_job_service_name", + "type": "string", + "required": true, + "description": "The service name for the Spark job to retrieve recommendations.", + "enum": null, + "inferrable": true + }, + { + "name": "spark_job_shard_identifier", + "type": "string", + "required": true, + "description": "The shard identifier for a Spark job, differentiating jobs within the same service with distinct resource requirements.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSPARecommendations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetSparkJobRecommendations", + "parameters": { + "spark_job_service_name": { + "value": "my-spark-service", + "type": "string", + "required": true + }, + "spark_job_shard_identifier": { + "value": "shard-001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSpecificLogsArchive", + "qualifiedName": "DatadogApi.GetSpecificLogsArchive", + "fullyQualifiedName": "DatadogApi.GetSpecificLogsArchive@2.0.0", + "description": "Retrieve a specific logs archive from Datadog.\n\nUse this tool to get a specific archive of logs from your Datadog organization by providing the archive ID.", + "parameters": [ + { + "name": "archive_id", + "type": "string", + "required": true, + "description": "The unique identifier for the logs archive to retrieve from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetLogsArchive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetSpecificLogsArchive", + "parameters": { + "archive_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSpecificPipelineById", + "qualifiedName": "DatadogApi.GetSpecificPipelineById", + "fullyQualifiedName": "DatadogApi.GetSpecificPipelineById@2.0.0", + "description": "Retrieve specific pipeline details by ID.\n\nUse this tool to get details of a specific pipeline by providing its ID. It fetches the configuration and status of the pipeline from Datadog.", + "parameters": [ + { + "name": "pipeline_id", + "type": "string", + "required": true, + "description": "The unique ID of the pipeline to retrieve from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPipeline'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetSpecificPipelineById", + "parameters": { + "pipeline_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSuppressionRuleDetails", + "qualifiedName": "DatadogApi.GetSuppressionRuleDetails", + "fullyQualifiedName": "DatadogApi.GetSuppressionRuleDetails@2.0.0", + "description": "Get details of a specific security suppression rule.\n\nFetch the details of a suppression rule by providing the suppression ID. Useful for understanding the configuration and parameters of a specific rule in the security monitoring system.", + "parameters": [ + { + "name": "suppression_rule_id", + "type": "string", + "required": true, + "description": "The unique ID of the suppression rule you wish to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSecurityMonitoringSuppression'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetSuppressionRuleDetails", + "parameters": { + "suppression_rule_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSuppressionsForRule", + "qualifiedName": "DatadogApi.GetSuppressionsForRule", + "fullyQualifiedName": "DatadogApi.GetSuppressionsForRule@2.0.0", + "description": "Retrieve suppressions affecting a specific rule by ID.", + "parameters": [ + { + "name": "rule_id", + "type": "string", + "required": true, + "description": "The unique identifier of the specific rule for which to retrieve suppressions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSuppressionsAffectingRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetSuppressionsForRule", + "parameters": { + "rule_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTableRowsById", + "qualifiedName": "DatadogApi.GetTableRowsById", + "fullyQualifiedName": "DatadogApi.GetTableRowsById@2.0.0", + "description": "Retrieve reference table rows using primary key values.\n\nCall this tool to access rows from a Datadog reference table by specifying their primary key values. It's useful for obtaining specific entries in the table.", + "parameters": [ + { + "name": "reference_table_id", + "type": "string", + "required": true, + "description": "The unique ID of the reference table to retrieve rows from.", + "enum": null, + "inferrable": true + }, + { + "name": "row_ids_to_retrieve", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of primary key values to specify which rows to retrieve from the reference table.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetRowsByID'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetTableRowsById", + "parameters": { + "reference_table_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "row_ids_to_retrieve": { + "value": ["row1", "row2", "row3"], + "type": "array", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTagPipelineRuleset", + "qualifiedName": "DatadogApi.GetTagPipelineRuleset", + "fullyQualifiedName": "DatadogApi.GetTagPipelineRuleset@2.0.0", + "description": "Retrieve a specific tag pipeline ruleset by its ID.\n\nUse this tool to get detailed information about a specific tag pipeline ruleset within Datadog by providing its ID.", + "parameters": [ + { + "name": "ruleset_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the tag pipeline ruleset to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTagPipelinesRuleset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetTagPipelineRuleset", + "parameters": { + "ruleset_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTeamLink", + "qualifiedName": "DatadogApi.GetTeamLink", + "fullyQualifiedName": "DatadogApi.GetTeamLink@2.0.0", + "description": "Retrieve a specific link for a team.\n\nUse this tool to get detailed information about a specific link associated with a team in Datadog.", + "parameters": [ + { + "name": "link_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific link you want to retrieve for a team in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team whose link you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTeamLink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetTeamLink", + "parameters": { + "link_id": { + "value": "link-12345", + "type": "string", + "required": true + }, + "team_id": { + "value": "team-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTeamMembers", + "qualifiedName": "DatadogApi.GetTeamMembers", + "fullyQualifiedName": "DatadogApi.GetTeamMembers@2.0.0", + "description": "Retrieve a list of team members.\n\nRetrieve a paginated list of members for a specified team using their team ID.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team whose members are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number to retrieve from the list of team members.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Specify the number of team members to return per page. Maximum is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "Search query for filtering members by user email or name.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the order of returned team memberships. Options include 'manager_name', '-manager_name', 'name', '-name', 'handle', '-handle', 'email', '-email'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTeamMemberships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetTeamMembers", + "parameters": { + "team_id": { + "value": "team-1234", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 100, + "type": "integer", + "required": false + }, + "search_query": { + "value": "john.doe@example.com", + "type": "string", + "required": false + }, + "sort_order": { + "value": "name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTeamOnCallRoutingRules", + "qualifiedName": "DatadogApi.GetTeamOnCallRoutingRules", + "fullyQualifiedName": "DatadogApi.GetTeamOnCallRoutingRules@2.0.0", + "description": "Retrieve a team's on-call routing rules from Datadog.\n\nUse this tool to obtain the on-call routing rules for a specific team in Datadog by providing the team ID.", + "parameters": [ + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the team whose on-call routing rules are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "include_relationships", + "type": "string", + "required": false, + "description": "Comma-separated list of relationships to return, such as `rules` or `rules.policy`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetOnCallTeamRoutingRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetTeamOnCallRoutingRules", + "parameters": { + "team_identifier": { + "value": "team-12345", + "type": "string", + "required": true + }, + "include_relationships": { + "value": "rules,rules.policy", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTeamOnCallUsers", + "qualifiedName": "DatadogApi.GetTeamOnCallUsers", + "fullyQualifiedName": "DatadogApi.GetTeamOnCallUsers@2.0.0", + "description": "Retrieve on-call users for a specific team.\n\nFetch the list of users who are on-call for a specified team at a given time using Datadog's API.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team whose on-call users are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "include_relationships", + "type": "string", + "required": false, + "description": "Comma-separated list of relationships to include in the response: `responders`, `escalations`, `escalations.responders`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTeamOnCallUsers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetTeamOnCallUsers", + "parameters": { + "team_id": { + "value": "team-12345", + "type": "string", + "required": true + }, + "include_relationships": { + "value": "responders,escalations", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTeamPermissionSettings", + "qualifiedName": "DatadogApi.GetTeamPermissionSettings", + "fullyQualifiedName": "DatadogApi.GetTeamPermissionSettings@2.0.0", + "description": "Retrieve permission settings for a specific team.\n\nCall this tool to obtain all permission settings associated with a specific team in Datadog. Ideal for checking or managing team permissions.", + "parameters": [ + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the team whose permission settings are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTeamPermissionSettings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetTeamPermissionSettings", + "parameters": { + "team_identifier": { + "value": "engineering-team-42", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTeamsIntegrationInfo", + "qualifiedName": "DatadogApi.GetTeamsIntegrationInfo", + "fullyQualifiedName": "DatadogApi.GetTeamsIntegrationInfo@2.0.0", + "description": "Retrieve tenant, team, and channel info for a handle.\n\nThis tool gets the tenant, team, and channel information for a specified tenant-based handle from the Datadog Microsoft Teams integration. It should be called to obtain detailed configuration data related to a specific integration handle.", + "parameters": [ + { + "name": "tenant_handle_id", + "type": "string", + "required": true, + "description": "The tenant-based handle ID for the Microsoft Teams integration used to retrieve tenant, team, and channel information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTenantBasedHandle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetTeamsIntegrationInfo", + "parameters": { + "tenant_handle_id": { + "value": "example-tenant-123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetThreatProtectionAgentRule", + "qualifiedName": "DatadogApi.GetThreatProtectionAgentRule", + "fullyQualifiedName": "DatadogApi.GetThreatProtectionAgentRule@2.0.0", + "description": "Retrieve details of a specific Workload Protection agent rule.\n\nUse this tool to get information about a particular Workload Protection agent rule in Datadog. Note: This functionality is unavailable for the US1-FED site.", + "parameters": [ + { + "name": "agent_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific Agent rule to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "agent_policy_id", + "type": "string", + "required": false, + "description": "The ID of the agent policy to retrieve the specific rule for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCSMThreatsAgentRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetThreatProtectionAgentRule", + "parameters": { + "agent_rule_id": { + "value": "rule-12345", + "type": "string", + "required": true + }, + "agent_policy_id": { + "value": "policy-67890", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUserApplicationKey", + "qualifiedName": "DatadogApi.GetUserApplicationKey", + "fullyQualifiedName": "DatadogApi.GetUserApplicationKey@2.0.0", + "description": "Retrieve an application key owned by the current user.\n\nUse this tool to obtain details about a specific application key that belongs to the currently authenticated Datadog user.", + "parameters": [ + { + "name": "application_key_id", + "type": "string", + "required": true, + "description": "The ID of the application key to retrieve, owned by the current user.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCurrentUserApplicationKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetUserApplicationKey", + "parameters": { + "application_key_id": { + "value": "12345abcd", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUserDetails", + "qualifiedName": "DatadogApi.GetUserDetails", + "fullyQualifiedName": "DatadogApi.GetUserDetails@2.0.0", + "description": "Retrieve details of a specific user by their user ID.\n\nUse this tool to access detailed information about a user in your organization by specifying their unique user ID.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier for the user whose details are being retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetUserDetails", + "parameters": { + "user_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUserInvitation", + "qualifiedName": "DatadogApi.GetUserInvitation", + "fullyQualifiedName": "DatadogApi.GetUserInvitation@2.0.0", + "description": "Retrieve a user invitation using its UUID.\n\nUse this tool to obtain details of a specific user invitation from Datadog by providing the unique identifier (UUID).", + "parameters": [ + { + "name": "user_invitation_uuid", + "type": "string", + "required": true, + "description": "The unique UUID of the user invitation required to retrieve its details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetInvitation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetUserInvitation", + "parameters": { + "user_invitation_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUserMemberships", + "qualifiedName": "DatadogApi.GetUserMemberships", + "fullyQualifiedName": "DatadogApi.GetUserMemberships@2.0.0", + "description": "Retrieve a user's memberships from Datadog.\n\nThis tool fetches a list of group memberships for a specified user using their UUID in Datadog's system.", + "parameters": [ + { + "name": "user_uuid", + "type": "string", + "required": true, + "description": "The unique identifier for the user whose memberships are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetUserMemberships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetUserMemberships", + "parameters": { + "user_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUserOrganizations", + "qualifiedName": "DatadogApi.GetUserOrganizations", + "fullyQualifiedName": "DatadogApi.GetUserOrganizations@2.0.0", + "description": "Retrieve a user's organizations and information.\n\nUse this tool to get information about a specific user and list all the organizations they have joined. Useful for understanding user affiliations within Datadog.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the user whose organizations and information are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListUserOrganizations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetUserOrganizations", + "parameters": { + "user_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUserPermissions", + "qualifiedName": "DatadogApi.GetUserPermissions", + "fullyQualifiedName": "DatadogApi.GetUserPermissions@2.0.0", + "description": "Retrieve a user's permissions from Datadog.\n\nThis tool fetches the permissions assigned to a user based on their roles in Datadog. It should be called when you need to know the specific access rights a user has.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Datadog user whose permissions you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListUserPermissions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetUserPermissions", + "parameters": { + "user_identifier": { + "value": "user@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUserRestrictionQueries", + "qualifiedName": "DatadogApi.GetUserRestrictionQueries", + "fullyQualifiedName": "DatadogApi.GetUserRestrictionQueries@2.0.0", + "description": "Retrieve restriction queries for a specific user.\n\nUse this tool to get all restriction queries associated with a specified user in Datadog.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the user for retrieving restriction queries.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListUserRestrictionQueries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetUserRestrictionQueries", + "parameters": { + "user_identifier": { + "value": "user_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWafCustomRuleById", + "qualifiedName": "DatadogApi.GetWafCustomRuleById", + "fullyQualifiedName": "DatadogApi.GetWafCustomRuleById@2.0.0", + "description": "Retrieve a WAF custom rule by ID from Datadog.\n\nUse this tool to obtain details of a specific Web Application Firewall (WAF) custom rule from Datadog by providing the rule's ID.", + "parameters": [ + { + "name": "custom_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the WAF custom rule to retrieve from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetApplicationSecurityWafCustomRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetWafCustomRuleById", + "parameters": { + "custom_rule_id": { + "value": "12345678-abcd-ef01-2345-6789abcdef01", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWafExclusionFilter", + "qualifiedName": "DatadogApi.GetWafExclusionFilter", + "fullyQualifiedName": "DatadogApi.GetWafExclusionFilter@2.0.0", + "description": "Retrieve a specific WAF exclusion filter by ID.\n\nUse this tool to obtain details about a specific Web Application Firewall (WAF) exclusion filter by providing its unique identifier.", + "parameters": [ + { + "name": "waf_exclusion_filter_id", + "type": "string", + "required": true, + "description": "The unique identifier of the WAF exclusion filter to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetApplicationSecurityWafExclusionFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetWafExclusionFilter", + "parameters": { + "waf_exclusion_filter_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWorkflowById", + "qualifiedName": "DatadogApi.GetWorkflowById", + "fullyQualifiedName": "DatadogApi.GetWorkflowById@2.0.0", + "description": "Retrieve workflow details using a unique ID.\n\nUse this tool to get detailed information about a specific workflow by providing its unique ID. This is useful for tracking and managing workflows within Datadog.", + "parameters": [ + { + "name": "workflow_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the workflow to retrieve details for within Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetWorkflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetWorkflowById", + "parameters": { + "workflow_identifier": { + "value": "wfl-1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWorkflowInstance", + "qualifiedName": "DatadogApi.GetWorkflowInstance", + "fullyQualifiedName": "DatadogApi.GetWorkflowInstance@2.0.0", + "description": "Retrieve a specific workflow execution instance.\n\nFetches details of a specific execution for a given Datadog workflow. Requires proper application key registration or permissions setup.", + "parameters": [ + { + "name": "workflow_id", + "type": "string", + "required": true, + "description": "The unique identifier of the workflow to retrieve its specific execution details.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_instance_id", + "type": "string", + "required": true, + "description": "The ID of the specific workflow instance to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetWorkflowInstance'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetWorkflowInstance", + "parameters": { + "workflow_id": { + "value": "workflow-12345", + "type": "string", + "required": true + }, + "workflow_instance_id": { + "value": "instance-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWorkloadProtectionPolicyDetails", + "qualifiedName": "DatadogApi.GetWorkloadProtectionPolicyDetails", + "fullyQualifiedName": "DatadogApi.GetWorkloadProtectionPolicyDetails@2.0.0", + "description": "Get details of a specific Workload Protection policy.\n\nFetches information about a specific Workload Protection policy from Datadog. Note that this endpoint is not available for the Government (US1-FED) site.", + "parameters": [ + { + "name": "agent_policy_id", + "type": "string", + "required": true, + "description": "The unique ID of the Workload Protection Agent policy to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCSMThreatsAgentPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.GetWorkloadProtectionPolicyDetails", + "parameters": { + "agent_policy_id": { + "value": "wp_policy_123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListActiveMetricConfigurations", + "qualifiedName": "DatadogApi.ListActiveMetricConfigurations", + "fullyQualifiedName": "DatadogApi.ListActiveMetricConfigurations@2.0.0", + "description": "Retrieve active metric tags and aggregations for a given metric name.\n\nUse this tool to get the currently active tags and aggregations for dashboards, monitors, and APIs associated with a specified metric name. It helps to understand how metrics are being actively used across various platforms.", + "parameters": [ + { + "name": "metric_name", + "type": "string", + "required": true, + "description": "Specify the name of the metric to retrieve active tags and aggregations for.", + "enum": null, + "inferrable": true + }, + { + "name": "lookback_seconds", + "type": "integer", + "required": false, + "description": "Number of seconds to look back from the current time. Defaults to 604800 seconds (1 week). Minimum is 7200 seconds (2 hours), and maximum is 2630000 seconds (1 month).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListActiveMetricConfigurations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListActiveMetricConfigurations", + "parameters": { + "metric_name": { + "value": "system.cpu.idle", + "type": "string", + "required": true + }, + "lookback_seconds": { + "value": 86400, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAllContainers", + "qualifiedName": "DatadogApi.ListAllContainers", + "fullyQualifiedName": "DatadogApi.ListAllContainers@2.0.0", + "description": "Retrieve all containers within your organization.\n\nUse this tool to get a comprehensive list of all containers managed by your organization in Datadog.", + "parameters": [ + { + "name": "container_sort_attribute", + "type": "string", + "required": false, + "description": "Specify the attribute to sort containers by. Common values include 'name', 'creation_date', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_tags", + "type": "string", + "required": false, + "description": "Comma-separated list of tags to filter containers by, narrowing down the results based on specified tags.", + "enum": null, + "inferrable": true + }, + { + "name": "group_containers_by_tags", + "type": "string", + "required": false, + "description": "Comma-separated list of tags to group containers by.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_returned", + "type": "integer", + "required": false, + "description": "Maximum number of container results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string to query the next page of container results, using the `meta.pagination.next_cursor` from the API response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListContainers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListAllContainers", + "parameters": { + "container_sort_attribute": { + "value": "creation_date", + "type": "string", + "required": false + }, + "filter_by_tags": { + "value": "env:production,team:frontend", + "type": "string", + "required": false + }, + "group_containers_by_tags": { + "value": "project:website", + "type": "string", + "required": false + }, + "maximum_results_returned": { + "value": 100, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "eyJwYWdlIjoxfQ", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAllCsmAgents", + "qualifiedName": "DatadogApi.ListAllCsmAgents", + "fullyQualifiedName": "DatadogApi.ListAllCsmAgents@2.0.0", + "description": "Retrieve all CSM Agents running on your infrastructure.\n\nUse this tool to get a comprehensive list of all Customer Service Management (CSM) Agents currently operational on your hosts and containers. This can be useful for monitoring and managing your service agents.", + "parameters": [ + { + "name": "filter_query", + "type": "string", + "required": false, + "description": "A search query string to filter results, e.g., `hostname:COMP-T2H4J27423`.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Specify the number of items to include in a single page for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_page_index", + "type": "integer", + "required": false, + "description": "The zero-based index of the page to retrieve for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_sort_direction", + "type": "string", + "required": false, + "description": "Sets sort order for results. Use 'asc' for ascending or 'desc' for descending.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListAllCSMAgents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListAllCsmAgents", + "parameters": { + "filter_query": { + "value": "hostname:COMP-T2H4J27423", + "type": "string", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_page_index": { + "value": 1, + "type": "integer", + "required": false + }, + "results_sort_direction": { + "value": "asc", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAllMemberTeams", + "qualifiedName": "DatadogApi.ListAllMemberTeams", + "fullyQualifiedName": "DatadogApi.ListAllMemberTeams@2.0.0", + "description": "Retrieve all member teams for a super team.\n\nUse this tool to get a comprehensive list of all member teams associated with a specific super team in Datadog. Call this tool when you need information on team memberships within a specified structure.", + "parameters": [ + { + "name": "super_team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the super team whose member teams you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_fetch", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of field names to be fetched for each team. Specify the fields you need details on.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specific page number to return in the list of teams.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Size for a given page. Must be an integer up to 100.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListMemberTeams'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListAllMemberTeams", + "parameters": { + "super_team_identifier": { + "value": "super_team_123", + "type": "string", + "required": true + }, + "fields_to_fetch": { + "value": ["name", "id", "members_count"], + "type": "array", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAllOrganizationProcesses", + "qualifiedName": "DatadogApi.ListAllOrganizationProcesses", + "fullyQualifiedName": "DatadogApi.ListAllOrganizationProcesses@2.0.0", + "description": "Retrieve all processes for your organization from Datadog.\n\nThis tool is used to fetch a list of all processes associated with your organization in Datadog. It should be called when you need detailed information about the processes running across your organization's systems.", + "parameters": [ + { + "name": "filter_by_tags", + "type": "string", + "required": false, + "description": "A comma-separated list of tags to filter the processes by. Use specific tags relevant to your organization's processes for targeted results.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Maximum number of process results to return in one page.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "String token to retrieve the next page of process results. Use the value from `meta.page.after` provided in the previous API response.", + "enum": null, + "inferrable": true + }, + { + "name": "query_window_end_timestamp", + "type": "integer", + "required": false, + "description": "Unix timestamp (seconds since epoch) marking the end of the query window. Defaults to 15 minutes after 'from' if not provided. If 'from' and 'to' are omitted, defaults to 15 minutes from current time.", + "enum": null, + "inferrable": true + }, + { + "name": "query_window_start_timestamp", + "type": "integer", + "required": false, + "description": "Unix timestamp marking the start of the query window. Defaults to 15 minutes before the end of the window if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "search_string_for_processes", + "type": "string", + "required": false, + "description": "String used to search and filter processes by specific criteria.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListProcesses'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListAllOrganizationProcesses", + "parameters": { + "filter_by_tags": { + "value": "env:production,service:api", + "type": "string", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "eyJwYWdlIjoxfQ==", + "type": "string", + "required": false + }, + "query_window_end_timestamp": { + "value": 1672531199, + "type": "integer", + "required": false + }, + "query_window_start_timestamp": { + "value": 1672527599, + "type": "integer", + "required": false + }, + "search_string_for_processes": { + "value": "webserver", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAllOrganizationUsers", + "qualifiedName": "DatadogApi.ListAllOrganizationUsers", + "fullyQualifiedName": "DatadogApi.ListAllOrganizationUsers@2.0.0", + "description": "Retrieve all users in the organization including inactive ones.\n\nUse this tool to get a complete list of users within the organization, covering active, deactivated, and unverified accounts.", + "parameters": [ + { + "name": "order_users_by", + "type": "string", + "required": false, + "description": "Specify the user attribute to order results by. Options include `name`, `modified_at`, and `user_count`. Use a negative sign for descending order, e.g., `-name`.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number of users to return. Use for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Specifies the number of users to be returned in a single page. The maximum value allowed is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Direction of sort for user listing. Options: 'asc' for ascending, 'desc' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "user_filter_string", + "type": "string", + "required": false, + "description": "String to filter users by. Defaults to no filtering if blank or omitted.", + "enum": null, + "inferrable": true + }, + { + "name": "user_status_filter", + "type": "string", + "required": false, + "description": "Filter users by status. Comma separated values: `Active`, `Pending`, `Disabled`. Defaults to no filtering.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListUsers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListAllOrganizationUsers", + "parameters": { + "order_users_by": { + "value": "name", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "user_filter_string": { + "value": "john", + "type": "string", + "required": false + }, + "user_status_filter": { + "value": "Active,Disabled", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListApiKeys", + "qualifiedName": "DatadogApi.ListApiKeys", + "fullyQualifiedName": "DatadogApi.ListApiKeys@2.0.0", + "description": "Retrieve all API keys for your Datadog account.\n\nUse this tool to fetch a list of all API keys associated with your Datadog account. It is useful for managing or auditing your API key usage.", + "parameters": [ + { + "name": "api_key_filter", + "type": "string", + "required": false, + "description": "String to filter API keys by specified criteria. Use it to narrow down the list based on specific string matches.", + "enum": null, + "inferrable": true + }, + { + "name": "created_after_date_filter", + "type": "string", + "required": false, + "description": "Include API keys created on or after this date. Expected format: YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_api_keys_by_category", + "type": "string", + "required": false, + "description": "Filter API keys by the specified category.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_remote_config_read_enabled", + "type": "boolean", + "required": false, + "description": "Set to true to filter API keys with remote config read enabled; false otherwise.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_created_before_date", + "type": "string", + "required": false, + "description": "Include only API keys created on or before this date in the format YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_resources", + "type": "string", + "required": false, + "description": "Comma-separated list of resource paths (`created_by`, `modified_by`) to include related data in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_after_date_filter", + "type": "string", + "required": false, + "description": "Specify a date to include API keys modified on or after this date. Use YYYY-MM-DD format.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_before_date", + "type": "string", + "required": false, + "description": "Include API keys modified on or before this specified date. Format should be YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Specifies the number of API keys returned in a single page; maximum value is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_attribute", + "type": "string", + "required": false, + "description": "Attribute to sort API keys by. Use a minus sign for descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_page_number_to_return", + "type": "integer", + "required": false, + "description": "The specific page number to return from the paginated list of API keys.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListAPIKeys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListApiKeys", + "parameters": { + "api_key_filter": { + "value": "test-key", + "type": "string", + "required": false + }, + "created_after_date_filter": { + "value": "2022-01-01", + "type": "string", + "required": false + }, + "filter_api_keys_by_category": { + "value": "production", + "type": "string", + "required": false + }, + "filter_by_remote_config_read_enabled": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_created_before_date": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "include_related_resources": { + "value": "created_by,modified_by", + "type": "string", + "required": false + }, + "modified_after_date_filter": { + "value": "2022-05-01", + "type": "string", + "required": false + }, + "modified_before_date": { + "value": "2023-05-01", + "type": "string", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_by_attribute": { + "value": "created_at", + "type": "string", + "required": false + }, + "specific_page_number_to_return": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAppKeyRegistrations", + "qualifiedName": "DatadogApi.ListAppKeyRegistrations", + "fullyQualifiedName": "DatadogApi.ListAppKeyRegistrations@2.0.0", + "description": "Retrieve a list of app key registrations from Datadog.\n\nUse this tool to get a detailed list of all app key registrations available in your Datadog account. Ideal for managing and auditing app key usage.", + "parameters": [ + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to return for paginating through app key registrations.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of App Key Registrations to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListAppKeyRegistrations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListAppKeyRegistrations", + "parameters": { + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListApplicationKeys", + "qualifiedName": "DatadogApi.ListApplicationKeys", + "fullyQualifiedName": "DatadogApi.ListApplicationKeys@2.0.0", + "description": "Retrieve all application keys for your organization.\n\nThis tool calls the Datadog API to list all application keys available for your organization, allowing you to view and manage your organization's credentials.", + "parameters": [ + { + "name": "created_after_date", + "type": "string", + "required": false, + "description": "Include application keys created on or after this date (YYYY-MM-DD).", + "enum": null, + "inferrable": true + }, + { + "name": "created_before_date", + "type": "string", + "required": false, + "description": "Filters application keys created on or before this date. Expected format is YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_application_keys", + "type": "string", + "required": false, + "description": "Filter the application keys based on a specified string to narrow down the results.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_resource", + "type": "string", + "required": false, + "description": "Specify 'owned_by' to include related resource information in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specify the page number to return in the results.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Specify the number of application keys to return per page. Maximum is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_keys_by_attribute", + "type": "string", + "required": false, + "description": "Sort application keys by attribute such as 'created_at', 'name', or 'last4'. Use a minus sign for descending order, e.g., '-name'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListApplicationKeys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListApplicationKeys", + "parameters": { + "created_after_date": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "created_before_date": { + "value": "2023-12-31", + "type": "string", + "required": false + }, + "filter_application_keys": { + "value": "test", + "type": "string", + "required": false + }, + "include_related_resource": { + "value": "owned_by", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_keys_by_attribute": { + "value": "-created_at", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListApps", + "qualifiedName": "DatadogApi.ListApps", + "fullyQualifiedName": "DatadogApi.ListApps@2.0.0", + "description": "Retrieve a list of all apps with optional filters and sorting.\n\nThis tool calls the Datadog API to list all registered apps. It supports filtering and sorting options and provides basic information such as app ID, name, and description. Useful for managing and viewing app information through automation.", + "parameters": [ + { + "name": "filter_by_app_name", + "type": "string", + "required": false, + "description": "Filter the list of apps by specifying the app name.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_creator_email", + "type": "string", + "required": false, + "description": "Filter apps by the creator's email address. This is used to narrow down apps created by a specific user.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_creator_uuid", + "type": "string", + "required": false, + "description": "Filter apps by the app creator's UUID. Provide the UUID of the user who created the app to narrow down the results.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_query", + "type": "string", + "required": false, + "description": "Filter apps by the app name or the app creator's name.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_tags", + "type": "string", + "required": false, + "description": "Filter apps by specifying tags. Separate multiple tags with commas.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_self_service_enabled", + "type": "boolean", + "required": false, + "description": "Filter apps by self-service enablement. True for enabled, false otherwise.", + "enum": null, + "inferrable": true + }, + { + "name": "include_published_apps", + "type": "boolean", + "required": false, + "description": "Set to true to include only published apps, false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to return for paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "The number of apps to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "show_only_favorite_apps", + "type": "boolean", + "required": false, + "description": "Set to true to filter and show only apps that you have marked as favorites.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_fields_and_directions", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array specifying the fields and directions (e.g., 'name:asc', 'created_at:desc') to sort apps by.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListApps'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListApps", + "parameters": { + "filter_by_app_name": { + "value": "ExampleApp", + "type": "string", + "required": false + }, + "filter_by_creator_email": { + "value": "creator@example.com", + "type": "string", + "required": false + }, + "filter_by_creator_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "filter_by_query": { + "value": "Example", + "type": "string", + "required": false + }, + "filter_by_tags": { + "value": "tag1,tag2", + "type": "string", + "required": false + }, + "filter_self_service_enabled": { + "value": true, + "type": "boolean", + "required": false + }, + "include_published_apps": { + "value": false, + "type": "boolean", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 20, + "type": "integer", + "required": false + }, + "show_only_favorite_apps": { + "value": false, + "type": "boolean", + "required": false + }, + "sort_fields_and_directions": { + "value": ["name:asc", "created_at:desc"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAuthnMappings", + "qualifiedName": "DatadogApi.ListAuthnMappings", + "fullyQualifiedName": "DatadogApi.ListAuthnMappings@2.0.0", + "description": "Retrieve all AuthN Mappings in the organization.\n\nUse this tool to obtain a comprehensive list of all authentication mappings within your organization using Datadog.", + "parameters": [ + { + "name": "filter_authn_mappings", + "type": "string", + "required": false, + "description": "Filter all authentication mappings using a specific string to refine the results.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_resource_type", + "type": "string", + "required": false, + "description": "Filter results by mapping resource type. Can be 'role' or 'team'. Defaults to 'role'.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number to return from the list of AuthN Mappings.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Number of results per page, with a maximum value of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_authn_mappings_by", + "type": "string", + "required": false, + "description": "Sort AuthN Mappings by the specified field. Options include fields like created_at, role_id, saml_assertion_attribute_id, etc. Prefix with '-' for descending order.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListAuthNMappings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListAuthnMappings", + "parameters": { + "filter_authn_mappings": { + "value": "example_filter", + "type": "string", + "required": false + }, + "filter_by_resource_type": { + "value": "role", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_authn_mappings_by": { + "value": "-created_at", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAwsAccounts", + "qualifiedName": "DatadogApi.ListAwsAccounts", + "fullyQualifiedName": "DatadogApi.ListAwsAccounts@2.0.0", + "description": "Retrieve AWS account integration configurations.\n\nGet a comprehensive list of AWS account integration configurations from Datadog. Useful for managing and reviewing AWS account integrations.", + "parameters": [ + { + "name": "filter_by_aws_account_id", + "type": "string", + "required": false, + "description": "Optional parameter to filter AWS accounts by their ID. Provide a specific AWS Account ID to get its integration config. If omitted, configurations for all accounts are returned.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListAWSAccounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListAwsAccounts", + "parameters": { + "filter_by_aws_account_id": { + "value": "123456789012", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAwsCurConfigs", + "qualifiedName": "DatadogApi.ListAwsCurConfigs", + "fullyQualifiedName": "DatadogApi.ListAwsCurConfigs@2.0.0", + "description": "Retrieve AWS CUR configuration list from Datadog.\n\nCall this tool to get a list of AWS Cost and Usage Report (CUR) configurations in Datadog when you need to examine or manage AWS cost data integrations.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCostAWSCURConfigs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListAwsCurConfigs", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAwsLogsServices", + "qualifiedName": "DatadogApi.ListAwsLogsServices", + "fullyQualifiedName": "DatadogApi.ListAwsLogsServices@2.0.0", + "description": "Retrieve AWS services for logging to Datadog.\n\nUse this tool to obtain a list of AWS services that have the capability to send log data to Datadog. This can help in configuring and troubleshooting integrations.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListAWSLogsServices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListAwsLogsServices", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAzureConfigs", + "qualifiedName": "DatadogApi.ListAzureConfigs", + "fullyQualifiedName": "DatadogApi.ListAzureConfigs@2.0.0", + "description": "Retrieve Azure configuration list from Datadog.\n\nUse this tool to obtain a list of Azure configs from Datadog. Useful for viewing or managing current Azure configurations.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCostAzureUCConfigs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListAzureConfigs", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListBudgets", + "qualifiedName": "DatadogApi.ListBudgets", + "fullyQualifiedName": "DatadogApi.ListBudgets@2.0.0", + "description": "Fetch a list of budgets from Datadog.\n\nUse this tool to retrieve the list of budgets set up in Datadog, including their details and configurations.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListBudgets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListBudgets", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCatalogEntityRelations", + "qualifiedName": "DatadogApi.ListCatalogEntityRelations", + "fullyQualifiedName": "DatadogApi.ListCatalogEntityRelations@2.0.0", + "description": "Retrieve entity relations from the software catalog.\n\nThis tool retrieves a list of entity relations from the Datadog Software Catalog. It's useful for understanding connections and dependencies between different software entities.", + "parameters": [ + { + "name": "filter_by_first_entity_reference", + "type": "string", + "required": false, + "description": "Filter relations by the reference of the first entity in the relation.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_relations_by_second_entity_reference", + "type": "string", + "required": false, + "description": "Filter relations by the reference of the second entity in the relation.", + "enum": null, + "inferrable": true + }, + { + "name": "include_relationship_data", + "type": "string", + "required": false, + "description": "Specify which relationship data to include: 'entity' or 'schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_relations_per_page", + "type": "integer", + "required": false, + "description": "Maximum number of relations to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "page_offset", + "type": "integer", + "required": false, + "description": "The starting offset for the returned page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "relation_type_filter", + "type": "string", + "required": false, + "description": "Filter relations by type using predefined relation types such as 'RelationTypeOwns', 'RelationTypeDependsOn', etc.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCatalogRelation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListCatalogEntityRelations", + "parameters": { + "filter_by_first_entity_reference": { + "value": "service:my-service", + "type": "string", + "required": false + }, + "filter_relations_by_second_entity_reference": { + "value": "service:your-service", + "type": "string", + "required": false + }, + "include_relationship_data": { + "value": "entity", + "type": "string", + "required": false + }, + "maximum_relations_per_page": { + "value": 100, + "type": "integer", + "required": false + }, + "page_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "relation_type_filter": { + "value": "RelationTypeDependsOn", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCatalogKinds", + "qualifiedName": "DatadogApi.ListCatalogKinds", + "fullyQualifiedName": "DatadogApi.ListCatalogKinds@2.0.0", + "description": "Retrieve entity kinds from the Software Catalog.\n\nThis tool calls the Datadog API to retrieve a list of entity kinds from the Software Catalog. It should be used when you need information about the types of entities available in the catalog.", + "parameters": [ + { + "name": "filter_entity_name", + "type": "string", + "required": false, + "description": "Filter entities in the Software Catalog by their name using a string value.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_uuid", + "type": "string", + "required": false, + "description": "Filter entities by their UUID in the catalog.", + "enum": null, + "inferrable": true + }, + { + "name": "max_kinds_in_response", + "type": "integer", + "required": false, + "description": "Specify the maximum number of entity kinds to be returned in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "page_offset", + "type": "integer", + "required": false, + "description": "Specific offset to use as the beginning of the returned page. It determines where the data will start from in the list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCatalogKind'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListCatalogKinds", + "parameters": { + "filter_entity_name": { + "value": "example-entity", + "type": "string", + "required": false + }, + "filter_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "max_kinds_in_response": { + "value": 10, + "type": "integer", + "required": false + }, + "page_offset": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCiPipelineEvents", + "qualifiedName": "DatadogApi.ListCiPipelineEvents", + "fullyQualifiedName": "DatadogApi.ListCiPipelineEvents@2.0.0", + "description": "Retrieve CI pipeline events based on a search query.\n\nUse this tool to get a list of continuous integration pipeline events from Datadog that match a specified search query. Results are paginated and similar to how logs are handled, providing insight into your latest pipeline activities.", + "parameters": [ + { + "name": "cursor_for_next_page", + "type": "string", + "required": false, + "description": "Cursor to paginate through results. Use the cursor from the previous query.", + "enum": null, + "inferrable": true + }, + { + "name": "event_order", + "type": "string", + "required": false, + "description": "Specifies the order of CI pipeline events in the results. Use 'timestamp' for ascending and '-timestamp' for descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "max_events_response", + "type": "integer", + "required": false, + "description": "Specify the maximum number of events to include in the response. Accepts an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_timestamp", + "type": "string", + "required": false, + "description": "Specify the maximum timestamp for the requested events. Format as an ISO 8601 string (e.g., 2023-10-01T00:00:00Z).", + "enum": null, + "inferrable": true + }, + { + "name": "min_timestamp", + "type": "string", + "required": false, + "description": "Specify the earliest time for the events you want to retrieve. Use a timestamp string.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "A search query using Datadog's log syntax to filter CI pipeline events. Specify criteria to refine results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCIAppPipelineEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListCiPipelineEvents", + "parameters": { + "cursor_for_next_page": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "event_order": { + "value": "-timestamp", + "type": "string", + "required": false + }, + "max_events_response": { + "value": 50, + "type": "integer", + "required": false + }, + "maximum_timestamp": { + "value": "2023-10-01T23:59:59Z", + "type": "string", + "required": false + }, + "min_timestamp": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "search_query": { + "value": "status:success AND pipeline:build", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCiTestEvents", + "qualifiedName": "DatadogApi.ListCiTestEvents", + "fullyQualifiedName": "DatadogApi.ListCiTestEvents@2.0.0", + "description": "Retrieve CI test events based on a search query.\n\nUse this tool to obtain CI Visibility test events from Datadog that match a specified search query. The results are paginated in a manner similar to logs. This can help in reviewing and analyzing the latest test events.", + "parameters": [ + { + "name": "max_events_in_response", + "type": "integer", + "required": false, + "description": "Specify the maximum number of CI test events to return in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "max_timestamp", + "type": "string", + "required": false, + "description": "Specify the maximum timestamp for the requested events.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_timestamp", + "type": "string", + "required": false, + "description": "The minimum timestamp to filter requested events. Format is typically ISO 8601.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for fetching the next set of paginated results, provided by the previous query.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "Search query using log syntax to filter CI Visibility test events.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the order of events by using 'timestamp' for ascending or '-timestamp' for descending.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCIAppTestEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListCiTestEvents", + "parameters": { + "max_events_in_response": { + "value": 100, + "type": "integer", + "required": false + }, + "max_timestamp": { + "value": "2023-10-01T15:00:00Z", + "type": "string", + "required": false + }, + "minimum_timestamp": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "eyJzY3JvbGUiOiJwbGF5bG9hZCJ9", + "type": "string", + "required": false + }, + "search_query": { + "value": "status:failed", + "type": "string", + "required": false + }, + "sort_order": { + "value": "-timestamp", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCloudflareAccounts", + "qualifiedName": "DatadogApi.ListCloudflareAccounts", + "fullyQualifiedName": "DatadogApi.ListCloudflareAccounts@2.0.0", + "description": "Retrieve a list of Cloudflare accounts from Datadog.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCloudflareAccounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListCloudflareAccounts", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCloudWorkloadSecurityAgentRules", + "qualifiedName": "DatadogApi.ListCloudWorkloadSecurityAgentRules", + "fullyQualifiedName": "DatadogApi.ListCloudWorkloadSecurityAgentRules@2.0.0", + "description": "Retrieve the list of cloud workload security agent rules.\n\nUse this tool to get a list of agent rules specifically for the Government (US1-FED) site.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCloudWorkloadSecurityAgentRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListCloudWorkloadSecurityAgentRules", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListConfluentAccounts", + "qualifiedName": "DatadogApi.ListConfluentAccounts", + "fullyQualifiedName": "DatadogApi.ListConfluentAccounts@2.0.0", + "description": "Retrieve a list of Confluent accounts.\n\nUse this tool to get a list of Confluent accounts that are integrated with Datadog. It helps in managing and monitoring Confluent Cloud integrations efficiently.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListConfluentAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListConfluentAccounts", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListContainerImages", + "qualifiedName": "DatadogApi.ListContainerImages", + "fullyQualifiedName": "DatadogApi.ListContainerImages@2.0.0", + "description": "Retrieve all container images for your organization.\n\nUse this tool to get a list of all container images associated with your organization. This is useful for monitoring and managing your containerized applications within Datadog.", + "parameters": [ + { + "name": "filter_tags", + "type": "string", + "required": false, + "description": "Comma-separated list of tags to filter container images by.", + "enum": null, + "inferrable": true + }, + { + "name": "group_container_images_by_tags", + "type": "string", + "required": false, + "description": "Comma-separated list of tags to group container images by. Helps in organizing images based on specified criteria.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of container image results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_cursor", + "type": "string", + "required": false, + "description": "String to query the next page of container image results. Obtain this from the `meta.pagination.next_cursor` in the API response.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_container_images_by", + "type": "string", + "required": false, + "description": "Attribute to sort Container Images by, such as 'name' or 'date'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListContainerImages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListContainerImages", + "parameters": { + "filter_tags": { + "value": "production,web,python", + "type": "string", + "required": false + }, + "group_container_images_by_tags": { + "value": "environment,version", + "type": "string", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "next_page_cursor": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "sort_container_images_by": { + "value": "date", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCustomAllocationRules", + "qualifiedName": "DatadogApi.ListCustomAllocationRules", + "fullyQualifiedName": "DatadogApi.ListCustomAllocationRules@2.0.0", + "description": "Retrieve all custom allocation rules for the organization.\n\nUse this tool to obtain a list of all custom allocation rules defined in the organization. It provides details about how costs are allocated according to custom rules in Datadog.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCustomAllocationRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListCustomAllocationRules", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCustomCostsFiles", + "qualifiedName": "DatadogApi.ListCustomCostsFiles", + "fullyQualifiedName": "DatadogApi.ListCustomCostsFiles@2.0.0", + "description": "Retrieve a list of custom costs files from Datadog.\n\nUse this tool to access and list custom costs files stored in Datadog. It is useful when you need to audit or analyze custom cost data.", + "parameters": [ + { + "name": "filter_by_file_status", + "type": "string", + "required": false, + "description": "Filter the custom costs files by their status. Accepts a string value representing the status to filter by, such as 'active', 'inactive', or 'pending'.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve for pagination in the list of custom costs files.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_page_size", + "type": "integer", + "required": false, + "description": "The number of custom cost files to return per page for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_key", + "type": "string", + "required": false, + "description": "Specify the key for sorting the list, with an optional '-' prefix for descending order.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCustomCostsFiles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListCustomCostsFiles", + "parameters": { + "filter_by_file_status": { + "value": "active", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "pagination_page_size": { + "value": 10, + "type": "integer", + "required": false + }, + "sort_key": { + "value": "-created_at", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCustomLogDestinations", + "qualifiedName": "DatadogApi.ListCustomLogDestinations", + "fullyQualifiedName": "DatadogApi.ListCustomLogDestinations@2.0.0", + "description": "Retrieve configured custom log destinations from Datadog.\n\nUse this tool to get a list of custom log destinations configured in your Datadog organization, including their definitions.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListLogsCustomDestinations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListCustomLogDestinations", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListDatadogDatastores", + "qualifiedName": "DatadogApi.ListDatadogDatastores", + "fullyQualifiedName": "DatadogApi.ListDatadogDatastores@2.0.0", + "description": "Retrieve a list of all Datadog datastores.\n\nUse this tool to obtain a complete list of datastores within your organization on Datadog. Ideal for inventory management and audit purposes.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListDatastores'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListDatadogDatastores", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListDatadogEvents", + "qualifiedName": "DatadogApi.ListDatadogEvents", + "fullyQualifiedName": "DatadogApi.ListDatadogEvents@2.0.0", + "description": "Retrieve events from Datadog based on a search query.\n\nUse this tool to list events from Datadog that match a specific search query. The results are paginated, similar to logs, and this tool is ideal for accessing the latest events.", + "parameters": [ + { + "name": "event_search_query", + "type": "string", + "required": false, + "description": "Search query following Datadog's events syntax to filter events.", + "enum": null, + "inferrable": true + }, + { + "name": "max_timestamp_milliseconds", + "type": "string", + "required": false, + "description": "Specify the maximum timestamp for requested events in milliseconds. Use this to limit the latest time of events retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_events_per_page", + "type": "integer", + "required": false, + "description": "Sets the maximum number of events to return in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_timestamp_millis", + "type": "string", + "required": false, + "description": "The minimum timestamp in milliseconds for filtering requested events.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for paginating through results, provided in the previous query response.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the order of events: 'timestamp' for ascending, '-timestamp' for descending.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListDatadogEvents", + "parameters": { + "event_search_query": { + "value": "status:warn OR status:error", + "type": "string", + "required": false + }, + "max_timestamp_milliseconds": { + "value": "1697040000000", + "type": "string", + "required": false + }, + "maximum_events_per_page": { + "value": 100, + "type": "integer", + "required": false + }, + "minimum_timestamp_millis": { + "value": "1696953600000", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor123", + "type": "string", + "required": false + }, + "sort_order": { + "value": "-timestamp", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListDatastoreItems", + "qualifiedName": "DatadogApi.ListDatastoreItems", + "fullyQualifiedName": "DatadogApi.ListDatastoreItems@2.0.0", + "description": "Retrieve items from a specified datastore.\n\nUse this tool to list items from a datastore. You can filter the results by using either an item key or a filter query parameter, but not both simultaneously. Supports server-side pagination for managing large datasets.", + "parameters": [ + { + "name": "datastore_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the datastore from which to fetch items.", + "enum": null, + "inferrable": true + }, + { + "name": "item_limit_per_page", + "type": "integer", + "required": false, + "description": "Limit the number of items to return per page for pagination. Maximum of 100 items per page.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Specifies the number of items to skip from the beginning of the result set for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_item_key", + "type": "string", + "required": false, + "description": "Primary key to retrieve a specific item. Cannot be used with the filter parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "search_filter", + "type": "string", + "required": false, + "description": "Query filter to search datastore items using the logs search syntax. Cannot be used with item_key.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Sort results by a specific field. Use '-' prefix for descending order (e.g., '-created_at').", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListDatastoreItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListDatastoreItems", + "parameters": { + "datastore_identifier": { + "value": "my_datastore_123", + "type": "string", + "required": true + }, + "item_limit_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "primary_item_key": { + "value": "item_456", + "type": "string", + "required": false + }, + "search_filter": { + "value": "status:error", + "type": "string", + "required": false + }, + "sort_order": { + "value": "-created_at", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListFastlyAccounts", + "qualifiedName": "DatadogApi.ListFastlyAccounts", + "fullyQualifiedName": "DatadogApi.ListFastlyAccounts@2.0.0", + "description": "Retrieve a list of Fastly accounts integrated with Datadog.\n\nCall this tool to obtain a list of Fastly accounts that are currently integrated with your Datadog instance. This can help in managing, auditing, or configuring integrations between Datadog and Fastly.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListFastlyAccounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListFastlyAccounts", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListFastlyServices", + "qualifiedName": "DatadogApi.ListFastlyServices", + "fullyQualifiedName": "DatadogApi.ListFastlyServices@2.0.0", + "description": "Retrieve Fastly services for a specific account.\n\nUse this tool to get a list of all Fastly services associated with a particular account in Datadog. Ideal for checking service configurations or integrations linked to your Fastly account.", + "parameters": [ + { + "name": "fastly_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for a Fastly account to retrieve its services.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListFastlyServices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListFastlyServices", + "parameters": { + "fastly_account_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListFindings", + "qualifiedName": "DatadogApi.ListFindings", + "fullyQualifiedName": "DatadogApi.ListFindings@2.0.0", + "description": "Retrieve a list of security findings from Datadog.\n\nUse this tool to obtain a list of security findings, including misconfigurations and identity risks from Datadog. You can apply filters to customize the search results and include additional details by specifying parameters. The response includes summary details of each finding along with pagination metadata.", + "parameters": [ + { + "name": "filter_by_evaluation_change_date", + "type": "string", + "required": false, + "description": "Specify a date (Unix ms) or date range (using comparison operators) to find results altered from pass to fail or vice versa.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_resource_id", + "type": "string", + "required": false, + "description": "Return only findings for the specified resource ID.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_resource_type", + "type": "string", + "required": false, + "description": "Return findings only for the specified resource type. Use to narrow down results to specific resource types, such as 'aws', 'gcp', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_rule_id", + "type": "string", + "required": false, + "description": "Provide a specific rule ID to filter findings related to that rule.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_rule_name", + "type": "string", + "required": false, + "description": "Specify the rule name to return findings associated with it. This filters findings based on the provided rule name.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_tags", + "type": "string", + "required": false, + "description": "Specify tags to filter findings. Use the format `tag_key:tag_value`. Supports multiple tags separated by commas.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_discovery_timestamp", + "type": "string", + "required": false, + "description": "Return findings discovered at a specific time (Unix ms) or within a date range using comparison operators (e.g., `>`, `<=`).", + "enum": null, + "inferrable": true + }, + { + "name": "filter_evaluation_status", + "type": "string", + "required": false, + "description": "Specify to return only findings that are either 'pass' or 'fail'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_detailed_findings", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve additional fields like external ID, description, and IP addresses for some findings.", + "enum": null, + "inferrable": true + }, + { + "name": "max_findings_limit", + "type": "integer", + "required": false, + "description": "Set the maximum number of findings to return, up to a limit of 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_cursor", + "type": "string", + "required": false, + "description": "Use this to return the next page of findings starting from this cursor's position.", + "enum": null, + "inferrable": true + }, + { + "name": "return_muted_findings", + "type": "boolean", + "required": false, + "description": "Set to `true` to return muted findings. Set to `false` to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "snapshot_timestamp", + "type": "integer", + "required": false, + "description": "Specify the Unix timestamp (in milliseconds) to get findings for a specific snapshot of time.", + "enum": null, + "inferrable": true + }, + { + "name": "status_filter", + "type": "string", + "required": false, + "description": "Specify the status of findings to return: critical, high, medium, low, or info.", + "enum": null, + "inferrable": true + }, + { + "name": "vulnerability_type_filters", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of strings to filter findings by matching vulnerability types. Repeatable for multiple types.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListFindings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListFindings", + "parameters": { + "filter_by_evaluation_change_date": { + "value": "1633072800000", + "type": "string", + "required": false + }, + "filter_by_resource_id": { + "value": "resource-12345", + "type": "string", + "required": false + }, + "filter_by_resource_type": { + "value": "aws", + "type": "string", + "required": false + }, + "filter_by_rule_id": { + "value": "rule-67890", + "type": "string", + "required": false + }, + "filter_by_rule_name": { + "value": "unhealthy-instance", + "type": "string", + "required": false + }, + "filter_by_tags": { + "value": "env:production,team:devops", + "type": "string", + "required": false + }, + "filter_discovery_timestamp": { + "value": ">1633072800000", + "type": "string", + "required": false + }, + "filter_evaluation_status": { + "value": "fail", + "type": "string", + "required": false + }, + "include_detailed_findings": { + "value": true, + "type": "boolean", + "required": false + }, + "max_findings_limit": { + "value": 100, + "type": "integer", + "required": false + }, + "next_page_cursor": { + "value": "cursor-abcde", + "type": "string", + "required": false + }, + "return_muted_findings": { + "value": false, + "type": "boolean", + "required": false + }, + "snapshot_timestamp": { + "value": 1633072800000, + "type": "integer", + "required": false + }, + "status_filter": { + "value": "critical", + "type": "string", + "required": false + }, + "vulnerability_type_filters": { + "value": ["sql_injection", "cross_site_scripting"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListGcpStsAccounts", + "qualifiedName": "DatadogApi.ListGcpStsAccounts", + "fullyQualifiedName": "DatadogApi.ListGcpStsAccounts@2.0.0", + "description": "Retrieve all GCP STS-enabled service accounts from Datadog.\n\nUse this tool to list all Google Cloud Platform (GCP) STS-enabled service accounts configured in your Datadog account. It should be called when you need to view or manage the integration of GCP accounts within Datadog.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListGCPSTSAccounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListGcpStsAccounts", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListGcpUsageCostConfigs", + "qualifiedName": "DatadogApi.ListGcpUsageCostConfigs", + "fullyQualifiedName": "DatadogApi.ListGcpUsageCostConfigs@2.0.0", + "description": "Retrieve Google Cloud Usage Cost configurations from Datadog.\n\nCall this tool to obtain a list of Google Cloud Usage Cost configurations in your Datadog account. Useful for monitoring and managing GCP cost settings.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCostGCPUsageCostConfigs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListGcpUsageCostConfigs", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListHistoricalJobs", + "qualifiedName": "DatadogApi.ListHistoricalJobs", + "fullyQualifiedName": "DatadogApi.ListHistoricalJobs@2.0.0", + "description": "Retrieve a list of historical SIEM detection jobs from Datadog.\n\nUse this tool to get a list of historical jobs related to SIEM detections in Datadog. This is useful for analyzing past job executions and reviewing detection history.", + "parameters": [ + { + "name": "filter_query", + "type": "string", + "required": false, + "description": "A query string to filter items in the list of historical jobs. Use to specify criteria for narrowing down the results.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number to return from the results.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Specifies the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specifies the order in which jobs are returned, such as ascending or descending.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListHistoricalJobs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListHistoricalJobs", + "parameters": { + "filter_query": { + "value": "status:success AND type:detection", + "type": "string", + "required": false + }, + "page_number": { + "value": 2, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "descending", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListIncidentNotificationRules", + "qualifiedName": "DatadogApi.ListIncidentNotificationRules", + "fullyQualifiedName": "DatadogApi.ListIncidentNotificationRules@2.0.0", + "description": "Retrieve all incident notification rules for the organization.\n\nFetches a list of notification rules for incidents within your organization, with optional filtering by incident type.", + "parameters": [ + { + "name": "resources_to_include", + "type": "string", + "required": false, + "description": "Comma-separated list of resources to include. Supported values: `created_by_user`, `last_modified_by_user`, `incident_type`, `notification_template`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListIncidentNotificationRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListIncidentNotificationRules", + "parameters": { + "resources_to_include": { + "value": "incident_type,notification_template", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListIncidentNotificationTemplates", + "qualifiedName": "DatadogApi.ListIncidentNotificationTemplates", + "fullyQualifiedName": "DatadogApi.ListIncidentNotificationTemplates@2.0.0", + "description": "Retrieve all incident notification templates.\n\nThis tool lists all the notification templates available for incidents in Datadog. It can optionally filter the templates by incident type.", + "parameters": [ + { + "name": "incident_type_id_filter", + "type": "string", + "required": false, + "description": "Optional ID to filter notification templates by incident type.", + "enum": null, + "inferrable": true + }, + { + "name": "include_relationships", + "type": "string", + "required": false, + "description": "Comma-separated list of relationships to include in the response. Supported values are `created_by_user`, `last_modified_by_user`, `incident_type`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListIncidentNotificationTemplates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListIncidentNotificationTemplates", + "parameters": { + "incident_type_id_filter": { + "value": "12345", + "type": "string", + "required": false + }, + "include_relationships": { + "value": "created_by_user,last_modified_by_user", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListIncidentTodos", + "qualifiedName": "DatadogApi.ListIncidentTodos", + "fullyQualifiedName": "DatadogApi.ListIncidentTodos@2.0.0", + "description": "Retrieve all todos for a specified incident.\n\nUse this tool to gather a list of todos associated with a specific incident in Datadog. It is useful for tracking tasks that need to be addressed within an incident context.", + "parameters": [ + { + "name": "incident_uuid", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the incident for which to retrieve todos.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListIncidentTodos'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListIncidentTodos", + "parameters": { + "incident_uuid": { + "value": "d123e456-7a89-0b12-c34d-5e67f89abc01", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListLatestSpans", + "qualifiedName": "DatadogApi.ListLatestSpans", + "fullyQualifiedName": "DatadogApi.ListLatestSpans@2.0.0", + "description": "Retrieve the latest spans based on a search query.\n\nThis tool retrieves spans from Datadog that match a specified search query. Use this to see your latest spans. Note that results are paginated, and the endpoint is rate limited to 300 requests per hour.", + "parameters": [ + { + "name": "max_spans_limit", + "type": "integer", + "required": false, + "description": "The maximum number of spans to return in the response. Specify an integer value to limit the results.", + "enum": null, + "inferrable": true + }, + { + "name": "max_timestamp_for_spans", + "type": "string", + "required": false, + "description": "Maximum timestamp for requested spans. Use ISO8601, date math, or millisecond timestamps.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_timestamp", + "type": "string", + "required": false, + "description": "Minimum timestamp for requested spans. Accepts ISO8601, date math, or timestamps in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for paginating results, provided by the previous query execution.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_of_spans", + "type": "string", + "required": false, + "description": "Specify the order of spans in the results. Use 'timestamp' for ascending and '-timestamp' for descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "span_search_query", + "type": "string", + "required": false, + "description": "A search query following the spans syntax to filter the spans you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListSpansGet'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListLatestSpans", + "parameters": { + "max_spans_limit": { + "value": 100, + "type": "integer", + "required": false + }, + "max_timestamp_for_spans": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "minimum_timestamp": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor123", + "type": "string", + "required": false + }, + "sort_order_of_spans": { + "value": "-timestamp", + "type": "string", + "required": false + }, + "span_search_query": { + "value": "service:web-app status:error", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListLogs", + "qualifiedName": "DatadogApi.ListLogs", + "fullyQualifiedName": "DatadogApi.ListLogs@2.0.0", + "description": "Retrieve logs based on a search query with pagination.\n\nUse this tool to search and filter logs according to specified criteria. Note that results are paginated. Consider Datadog's archive capabilities for organizational log archiving needs.", + "parameters": [ + { + "name": "indexes_to_search", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify the indexes to search. Defaults to ['*'] for all indexes.", + "enum": null, + "inferrable": true + }, + { + "name": "max_log_time", + "type": "string", + "required": false, + "description": "The maximum time for the requested logs. Supports date math and regular timestamps (milliseconds).", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_logs_in_response", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of logs to return in the response, allowing control over pagination size.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_time", + "type": "string", + "required": false, + "description": "The minimum time for the requested logs, supports date math and regular timestamps (milliseconds).", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for retrieving the next set of paginated log results from a previous query.", + "enum": null, + "inferrable": true + }, + { + "name": "query_timezone", + "type": "string", + "required": false, + "description": "Specify the timezone as GMT, UTC, an offset (e.g., UTC+1), or a Timezone Database ID (e.g., America/New_York).", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "The search query following Datadog's log search syntax to filter logs.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Defines how logs are sorted: 'timestamp' for ascending order and '-timestamp' for descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "storage_type", + "type": "string", + "required": false, + "description": "Specify the storage type: \"indexes\", \"online-archives\", or \"flex\".", + "enum": null, + "inferrable": true + }, + { + "name": "time_offset_seconds", + "type": "integer", + "required": false, + "description": "The time offset in seconds to apply to the log search query.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListLogs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListLogs", + "parameters": { + "indexes_to_search": { + "value": ["index1", "index2"], + "type": "array", + "required": false + }, + "max_log_time": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "maximum_logs_in_response": { + "value": 100, + "type": "integer", + "required": false + }, + "minimum_time": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor123", + "type": "string", + "required": false + }, + "query_timezone": { + "value": "UTC", + "type": "string", + "required": false + }, + "search_query": { + "value": "status:error", + "type": "string", + "required": false + }, + "sort_order": { + "value": "-timestamp", + "type": "string", + "required": false + }, + "storage_type": { + "value": "indexes", + "type": "string", + "required": false + }, + "time_offset_seconds": { + "value": 3600, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListLogsArchives", + "qualifiedName": "DatadogApi.ListLogsArchives", + "fullyQualifiedName": "DatadogApi.ListLogsArchives@2.0.0", + "description": "Get the list of configured logs archives.\n\nRetrieve the definitions of all logs archives configured in Datadog.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListLogsArchives'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListLogsArchives", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListLogsMatchingQuery", + "qualifiedName": "DatadogApi.ListLogsMatchingQuery", + "fullyQualifiedName": "DatadogApi.ListLogsMatchingQuery@2.0.0", + "description": "Retrieve logs that match a search query with pagination.\n\nUse this tool to search and filter logs in Datadog based on a specified query. It's ideal for retrieving specific log data for analysis or monitoring purposes. For extensive archiving, consider Datadog's archive features instead.", + "parameters": [ + { + "name": "max_timestamp_for_logs", + "type": "string", + "required": false, + "description": "Specify the maximum timestamp for the requested logs. This represents the latest time point for log retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_logs_in_response", + "type": "integer", + "required": false, + "description": "Maximum number of logs to include in the response. Specify an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_timestamp_for_logs", + "type": "string", + "required": false, + "description": "Specify the earliest timestamp for the logs to be retrieved. Use ISO 8601 format for the timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination to retrieve the next set of log results. Use the cursor from the previous query to continue fetching results.", + "enum": null, + "inferrable": true + }, + { + "name": "search_indexes", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify the indexes to search. Defaults to '*' for all indexes.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "Search query using logs syntax to filter specific logs from Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the order of logs in results: 'timestamp' for ascending or '-timestamp' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "storage_type", + "type": "string", + "required": false, + "description": "Specifies the storage type. Options are 'indexes', 'online-archives', or 'flex'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListLogsGet'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListLogsMatchingQuery", + "parameters": { + "max_timestamp_for_logs": { + "value": "2023-10-01T23:59:59Z", + "type": "string", + "required": false + }, + "maximum_logs_in_response": { + "value": 100, + "type": "integer", + "required": false + }, + "minimum_timestamp_for_logs": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "search_indexes": { + "value": ["index_1", "index_2"], + "type": "array", + "required": false + }, + "search_query": { + "value": "status:error AND service:my_service", + "type": "string", + "required": false + }, + "sort_order": { + "value": "-timestamp", + "type": "string", + "required": false + }, + "storage_type": { + "value": "indexes", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListMetricAssets", + "qualifiedName": "DatadogApi.ListMetricAssets", + "fullyQualifiedName": "DatadogApi.ListMetricAssets@2.0.0", + "description": "Retrieve assets associated with a specific metric.\n\nThis tool returns a list of dashboards, monitors, notebooks, and SLOs where a specific metric is used. Useful for tracking where a metric appears across Datadog's tools, updated every 24 hours.", + "parameters": [ + { + "name": "metric_name", + "type": "string", + "required": true, + "description": "The specific name of the metric to retrieve associated assets for. This is essential for querying the correct data.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListMetricAssets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListMetricAssets", + "parameters": { + "metric_name": { + "value": "system.cpu.user", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListMetricTagConfigurations", + "qualifiedName": "DatadogApi.ListMetricTagConfigurations", + "fullyQualifiedName": "DatadogApi.ListMetricTagConfigurations@2.0.0", + "description": "Retrieve all metrics configurable in Datadog's Metrics Summary.\n\nUse this tool to get a list of all metrics that can be configured on the Metrics Summary page or with Metrics without Limits™. It supports pagination through cursor-based navigation.", + "parameters": [ + { + "name": "filter_by_query_status", + "type": "boolean", + "required": false, + "description": "Filter custom metrics that have or have not been queried within the specified time window.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_metrics_by_tags", + "type": "string", + "required": false, + "description": "Filter metrics by tags using boolean/wildcard expressions; combine with queried filter only.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_metrics_used_in_assets", + "type": "boolean", + "required": false, + "description": "Boolean to filter metrics used in dashboards, monitors, notebooks, and SLOs.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_tag_configurations", + "type": "string", + "required": false, + "description": "Filter tag configurations by specified configured tags. Use string values representing specific criteria for filtering.", + "enum": null, + "inferrable": true + }, + { + "name": "include_metrics_with_configured_tags", + "type": "boolean", + "required": false, + "description": "Set to true to filter and include only custom metrics with configured tags.", + "enum": null, + "inferrable": true + }, + { + "name": "include_percentile_aggregations", + "type": "boolean", + "required": false, + "description": "Set to true to include distributions with additional percentile aggregations enabled. Set to false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "look_back_seconds", + "type": "integer", + "required": false, + "description": "The number of seconds to look back for applying a filter on tags or queried metrics. Defaults to 3600 seconds (1 hour) with a max of 2,592,000 seconds (30 days).", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Maximum number of metric configurations to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_type_filter", + "type": "string", + "required": false, + "description": "Filter metrics by type. Options are 'non_distribution' or 'distribution'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "String to query the next page of metric results. Use 'next_cursor' from the previous response. Null when all pages are retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListTagConfigurations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListMetricTagConfigurations", + "parameters": { + "filter_by_query_status": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_metrics_by_tags": { + "value": "env:production", + "type": "string", + "required": false + }, + "filter_metrics_used_in_assets": { + "value": false, + "type": "boolean", + "required": false + }, + "filter_tag_configurations": { + "value": "user:active", + "type": "string", + "required": false + }, + "include_metrics_with_configured_tags": { + "value": true, + "type": "boolean", + "required": false + }, + "include_percentile_aggregations": { + "value": false, + "type": "boolean", + "required": false + }, + "look_back_seconds": { + "value": 7200, + "type": "integer", + "required": false + }, + "max_results_per_page": { + "value": 100, + "type": "integer", + "required": false + }, + "metric_type_filter": { + "value": "distribution", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListMetricTags", + "qualifiedName": "DatadogApi.ListMetricTags", + "fullyQualifiedName": "DatadogApi.ListMetricTags@2.0.0", + "description": "Retrieve indexed tags for a metric over the last hour.\n\nUse this tool to get the indexed tag key-value pairs for a specific metric name within the past hour. Useful for analyzing and viewing metric-related tag data from Datadog.", + "parameters": [ + { + "name": "metric_name", + "type": "string", + "required": true, + "description": "The name of the metric to retrieve indexed tag key-value pairs from over the past hour.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListTagsByMetricName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListMetricTags", + "parameters": { + "metric_name": { + "value": "system.cpu.idle", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListMetricVolumes", + "qualifiedName": "DatadogApi.ListMetricVolumes", + "fullyQualifiedName": "DatadogApi.ListMetricVolumes@2.0.0", + "description": "Retrieve distinct metric volumes by name.\n\nUse this tool to view distinct volumes for a specified metric name. Note that custom metrics generated in-app may return `null` for ingested volumes.", + "parameters": [ + { + "name": "metric_name", + "type": "string", + "required": true, + "description": "The name of the metric to retrieve volumes for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListVolumesByMetricName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListMetricVolumes", + "parameters": { + "metric_name": { + "value": "system.cpu.user", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListMonitorConfigPolicies", + "qualifiedName": "DatadogApi.ListMonitorConfigPolicies", + "fullyQualifiedName": "DatadogApi.ListMonitorConfigPolicies@2.0.0", + "description": "Retrieve all monitor configuration policies.\n\nUse this tool to get a comprehensive list of monitor configuration policies from Datadog. This can be useful for managing and understanding monitoring setups.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListMonitorConfigPolicies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListMonitorConfigPolicies", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListMonitorDowntimes", + "qualifiedName": "DatadogApi.ListMonitorDowntimes", + "fullyQualifiedName": "DatadogApi.ListMonitorDowntimes@2.0.0", + "description": "Retrieve active downtimes for a specified monitor.\n\nUse this tool to get all active downtimes associated with a specific monitor ID in Datadog. It should be called when you need to check the downtime status of a monitor.", + "parameters": [ + { + "name": "monitor_id", + "type": "integer", + "required": true, + "description": "The ID of the monitor for which to retrieve active downtimes. This should be provided as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_downtime_count", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of downtime entries to return in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Specify the offset for the beginning of the returned page, to manage pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListMonitorDowntimes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListMonitorDowntimes", + "parameters": { + "monitor_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "maximum_downtime_count": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListMsTeamsWorkflowWebhooks", + "qualifiedName": "DatadogApi.ListMsTeamsWorkflowWebhooks", + "fullyQualifiedName": "DatadogApi.ListMsTeamsWorkflowWebhooks@2.0.0", + "description": "Retrieve all Microsoft Teams workflow webhook handles from Datadog.\n\nUse this tool to obtain a list of all workflow webhook handles associated with the Datadog Microsoft Teams integration. It helps in managing and monitoring webhook configurations efficiently.", + "parameters": [ + { + "name": "webhook_handle_name", + "type": "string", + "required": false, + "description": "Specifies the name of your Workflows webhook handle to filter the list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListWorkflowsWebhookHandles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListMsTeamsWorkflowWebhooks", + "parameters": { + "webhook_handle_name": { + "value": "example-webhook-handle", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListOktaAccounts", + "qualifiedName": "DatadogApi.ListOktaAccounts", + "fullyQualifiedName": "DatadogApi.ListOktaAccounts@2.0.0", + "description": "Retrieve a list of Okta accounts linked to Datadog.\n\nUse this tool to obtain information about Okta accounts that are integrated with Datadog, allowing for management and analysis of these linked accounts.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListOktaAccounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListOktaAccounts", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListOpsgenieServices", + "qualifiedName": "DatadogApi.ListOpsgenieServices", + "fullyQualifiedName": "DatadogApi.ListOpsgenieServices@2.0.0", + "description": "Retrieve all services from Datadog Opsgenie integration.\n\nCall this tool to get a comprehensive list of services integrated with Datadog's Opsgenie. Useful for managing or reviewing service integrations.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListOpsgenieServices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListOpsgenieServices", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListOrganizationIncidents", + "qualifiedName": "DatadogApi.ListOrganizationIncidents", + "fullyQualifiedName": "DatadogApi.ListOrganizationIncidents@2.0.0", + "description": "Retrieve all incidents for your organization.\n\nCall this tool to get a comprehensive list of all incidents associated with the user's organization in Datadog.", + "parameters": [ + { + "name": "include_related_objects", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of related object types to include in the response. Specify as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "page_offset", + "type": "integer", + "required": false, + "description": "Specific offset to start the returned page of incidents. Use this to paginate results.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Integer specifying the number of incidents per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListIncidents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListOrganizationIncidents", + "parameters": { + "include_related_objects": { + "value": ["alerts", "events"], + "type": "array", + "required": false + }, + "page_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "page_size": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListOrgConfigs", + "qualifiedName": "DatadogApi.ListOrgConfigs", + "fullyQualifiedName": "DatadogApi.ListOrgConfigs@2.0.0", + "description": "Retrieve all organization configurations.\n\nCall this tool to get a list of all organization configurations, providing details like name, description, and value.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListOrgConfigs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListOrgConfigs", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListOrgConnections", + "qualifiedName": "DatadogApi.ListOrgConnections", + "fullyQualifiedName": "DatadogApi.ListOrgConnections@2.0.0", + "description": "Retrieve a list of organization connections from Datadog.\n\nUse this tool to get a comprehensive list of all organization connections within Datadog. This can be useful for managing and analyzing connected organizations.", + "parameters": [ + { + "name": "entry_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of entries to return. Default is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "The pagination offset to start querying from, with a default of 0. Use this for paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "sink_organization_id", + "type": "string", + "required": false, + "description": "The organization ID of the sink org. It identifies the destination organization in the connections list.", + "enum": null, + "inferrable": true + }, + { + "name": "source_organization_id", + "type": "string", + "required": false, + "description": "The ID of the source organization to query connections from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListOrgConnections'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListOrgConnections", + "parameters": { + "entry_limit": { + "value": 500, + "type": "integer", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "sink_organization_id": { + "value": "123456", + "type": "string", + "required": false + }, + "source_organization_id": { + "value": "654321", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPermissions", + "qualifiedName": "DatadogApi.ListPermissions", + "fullyQualifiedName": "DatadogApi.ListPermissions@2.0.0", + "description": "Retrieve all permissions from Datadog.\n\nUse this tool to get a comprehensive list of all available permissions, including their names, descriptions, and IDs, from Datadog's system.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListPermissions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListPermissions", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPipelines", + "qualifiedName": "DatadogApi.ListPipelines", + "fullyQualifiedName": "DatadogApi.ListPipelines@2.0.0", + "description": "Retrieve a list of pipelines from Datadog.\n\nUse this tool to get a list of all pipelines available in the Datadog system. It should be called whenever you need information on existing pipelines.", + "parameters": [ + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of pipelines to retrieve. Use this to navigate through the pages of results returned by the API.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Number of pipelines to return per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListPipelines'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListPipelines", + "parameters": { + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPowerpacks", + "qualifiedName": "DatadogApi.ListPowerpacks", + "fullyQualifiedName": "DatadogApi.ListPowerpacks@2.0.0", + "description": "Retrieve a list of all powerpacks from Datadog.\n\nUse this tool to get the complete list of powerpacks available in Datadog. It should be called when you need to access or display all the powerpacks.", + "parameters": [ + { + "name": "max_powerpacks_limit", + "type": "integer", + "required": false, + "description": "Maximum number of powerpacks to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "page_offset", + "type": "integer", + "required": false, + "description": "The specific offset to start returning powerpacks from, allowing for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListPowerpacks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListPowerpacks", + "parameters": { + "max_powerpacks_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "page_offset": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListReferenceTables", + "qualifiedName": "DatadogApi.ListReferenceTables", + "fullyQualifiedName": "DatadogApi.ListReferenceTables@2.0.0", + "description": "Retrieve all reference tables in the organization.\n\nUse this tool to fetch a list of all reference tables available in the current organization. It provides an overview of the reference tables configured in Datadog.", + "parameters": [ + { + "name": "exact_table_name_filter", + "type": "string", + "required": false, + "description": "Filter by an exact table name match to retrieve specific reference tables.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_table_status", + "type": "string", + "required": false, + "description": "Filter tables by their status. Accepts status as a string, such as 'active', 'inactive', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_table_name_contains", + "type": "string", + "required": false, + "description": "Filter tables by name containing this substring.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_tables_to_return", + "type": "integer", + "required": false, + "description": "Specify the number of tables to return in the response. Use an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Number of tables to skip for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_field_and_direction", + "type": "string", + "required": false, + "description": "Specify the field to sort by and the direction. Use a field name for ascending, prefix with \"-\" for descending. Options include: updated_at, table_name, status, and their descending counterparts.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListTables'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListReferenceTables", + "parameters": { + "exact_table_name_filter": { + "value": "user_data", + "type": "string", + "required": false + }, + "filter_by_table_status": { + "value": "active", + "type": "string", + "required": false + }, + "filter_table_name_contains": { + "value": "log", + "type": "string", + "required": false + }, + "number_of_tables_to_return": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "sort_field_and_direction": { + "value": "updated_at", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListResourceFilters", + "qualifiedName": "DatadogApi.ListResourceFilters", + "fullyQualifiedName": "DatadogApi.ListResourceFilters@2.0.0", + "description": "Retrieve Datadog resource evaluation filters.\n\nCall this tool to obtain a list of resource evaluation filters for cloud security management in Datadog.", + "parameters": [ + { + "name": "cloud_provider_account_id", + "type": "string", + "required": false, + "description": "Filter resource filters by the cloud provider's account ID. This is valid only when a provider is specified.", + "enum": null, + "inferrable": true + }, + { + "name": "cloud_provider_filter", + "type": "string", + "required": false, + "description": "Specifies the cloud provider to filter resource filters, such as aws, gcp, or azure.", + "enum": null, + "inferrable": true + }, + { + "name": "skip_cache_for_resource_filters", + "type": "boolean", + "required": false, + "description": "Set to true to skip the cache when fetching resource filters. Useful when the latest resource data is needed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetResourceEvaluationFilters'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListResourceFilters", + "parameters": { + "cloud_provider_account_id": { + "value": "123456789012", + "type": "string", + "required": false + }, + "cloud_provider_filter": { + "value": "aws", + "type": "string", + "required": false + }, + "skip_cache_for_resource_filters": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListRestrictionQueries", + "qualifiedName": "DatadogApi.ListRestrictionQueries", + "fullyQualifiedName": "DatadogApi.ListRestrictionQueries@2.0.0", + "description": "Retrieve all restriction queries with their details.\n\nThis tool retrieves all restriction queries from Datadog, including their names and IDs. Use it when you need to review or manage restriction queries within your Datadog configuration.", + "parameters": [ + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number of results to return. Useful for paginating through result sets.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "The number of results to return per page. Maximum value is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListRestrictionQueries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListRestrictionQueries", + "parameters": { + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListRolePermissions", + "qualifiedName": "DatadogApi.ListRolePermissions", + "fullyQualifiedName": "DatadogApi.ListRolePermissions@2.0.0", + "description": "Retrieve all permissions for a specific role.\n\nCall this tool to get a list of all permissions associated with a particular role in Datadog.", + "parameters": [ + { + "name": "role_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the role whose permissions need to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListRolePermissions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListRolePermissions", + "parameters": { + "role_identifier": { + "value": "admin", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListRoleTemplates", + "qualifiedName": "DatadogApi.ListRoleTemplates", + "fullyQualifiedName": "DatadogApi.ListRoleTemplates@2.0.0", + "description": "Retrieve all role templates from Datadog.\n\nThis tool retrieves a list of all role templates from Datadog. It should be called when you need to access or review the role templates defined within Datadog's system.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListRoleTemplates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListRoleTemplates", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListRoleUsers", + "qualifiedName": "DatadogApi.ListRoleUsers", + "fullyQualifiedName": "DatadogApi.ListRoleUsers@2.0.0", + "description": "Retrieve all users belonging to a specific role.\n\nCall this tool to obtain a list of users assigned to a particular role in Datadog.", + "parameters": [ + { + "name": "role_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the role to list its associated users.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number to return in the list of users.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Size for a given page, with a maximum value of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "user_filter_string", + "type": "string", + "required": false, + "description": "Filter users by a specific string. Defaults to no filtering.", + "enum": null, + "inferrable": true + }, + { + "name": "user_sort_order", + "type": "string", + "required": false, + "description": "Attribute to sort users by. Prefix with '-' for descending. Options: 'name', 'email', 'status'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListRoleUsers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListRoleUsers", + "parameters": { + "role_identifier": { + "value": "admin_role_123", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "user_filter_string": { + "value": "john", + "type": "string", + "required": false + }, + "user_sort_order": { + "value": "name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListRumApplications", + "qualifiedName": "DatadogApi.ListRumApplications", + "fullyQualifiedName": "DatadogApi.ListRumApplications@2.0.0", + "description": "Retrieve all RUM applications within your organization from Datadog.\n\nThis tool is used to list all the Real User Monitoring (RUM) applications configured in your organization to help monitor and analyze user interactions.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetRUMApplications'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListRumApplications", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListRumEvents", + "qualifiedName": "DatadogApi.ListRumEvents", + "fullyQualifiedName": "DatadogApi.ListRumEvents@2.0.0", + "description": "Retrieve RUM events matching a search query.\n\nThis tool is used to list RUM (Real User Monitoring) events that match a specific search query. It's useful for retrieving your latest RUM events, and results are paginated to handle large datasets.", + "parameters": [ + { + "name": "event_sort_order", + "type": "string", + "required": false, + "description": "Specify the order of events: 'timestamp' for ascending or '-timestamp' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_event_count", + "type": "integer", + "required": false, + "description": "Specify the maximum number of events to retrieve in a single response.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_timestamp", + "type": "string", + "required": false, + "description": "Maximum timestamp for requested events in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_timestamp", + "type": "string", + "required": false, + "description": "The starting timestamp for the requested RUM events. Use a string format compatible with the API.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for fetching the next set of paginated results in the queried RUM events.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_search_query", + "type": "string", + "required": false, + "description": "Search query following RUM syntax for filtering events.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListRUMEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListRumEvents", + "parameters": { + "event_sort_order": { + "value": "-timestamp", + "type": "string", + "required": false + }, + "maximum_event_count": { + "value": 100, + "type": "integer", + "required": false + }, + "maximum_timestamp": { + "value": "2023-10-10T12:00:00Z", + "type": "string", + "required": false + }, + "minimum_timestamp": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_value_123", + "type": "string", + "required": false + }, + "rum_search_query": { + "value": "service:my-service status:error", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListRumMetrics", + "qualifiedName": "DatadogApi.ListRumMetrics", + "fullyQualifiedName": "DatadogApi.ListRumMetrics@2.0.0", + "description": "Retrieve configured RUM-based metrics and their definitions.\n\nUse this tool to obtain a detailed list of metrics related to real user monitoring (RUM), including their configurations and definitions.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListRumMetrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListRumMetrics", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListScanningGroups", + "qualifiedName": "DatadogApi.ListScanningGroups", + "fullyQualifiedName": "DatadogApi.ListScanningGroups@2.0.0", + "description": "Retrieve all scanning groups in your organization with Datadog's API.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListScanningGroups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListScanningGroups", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListScheduledDowntimes", + "qualifiedName": "DatadogApi.ListScheduledDowntimes", + "fullyQualifiedName": "DatadogApi.ListScheduledDowntimes@2.0.0", + "description": "Retrieve all scheduled downtimes from Datadog.\n\nUse this tool to get a list of all downtimes that are currently scheduled in Datadog. It should be called when you need information about planned downtime periods.", + "parameters": [ + { + "name": "include_resources_in_response", + "type": "string", + "required": false, + "description": "Comma-separated list of resource paths to include in the response, such as `created_by` and `monitor`.", + "enum": null, + "inferrable": true + }, + { + "name": "max_downtimes_in_response", + "type": "integer", + "required": false, + "description": "Maximum number of downtimes to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "page_offset", + "type": "integer", + "required": false, + "description": "The starting point for the list of returned scheduled downtimes, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "return_current_downtimes_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only downtimes active at the time of the request.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListDowntimes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListScheduledDowntimes", + "parameters": { + "include_resources_in_response": { + "value": "created_by,monitor", + "type": "string", + "required": false + }, + "max_downtimes_in_response": { + "value": 50, + "type": "integer", + "required": false + }, + "page_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "return_current_downtimes_only": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSecurityFilters", + "qualifiedName": "DatadogApi.ListSecurityFilters", + "fullyQualifiedName": "DatadogApi.ListSecurityFilters@2.0.0", + "description": "Retrieve configured security filters from Datadog.\n\nUse this tool to get a list of all configured security filters along with their definitions. It is useful for monitoring and managing security configurations.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListSecurityFilters'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListSecurityFilters", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSecurityMonitoringRules", + "qualifiedName": "DatadogApi.ListSecurityMonitoringRules", + "fullyQualifiedName": "DatadogApi.ListSecurityMonitoringRules@2.0.0", + "description": "Retrieve a list of security monitoring rules.\n\nUse this tool to get a list of security monitoring rules from Datadog. Call it when you need to view or manage security monitoring rules.", + "parameters": [ + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number to return when listing the security monitoring rules.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Size for a given page. The maximum allowed value is 100. Use an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListSecurityMonitoringRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListSecurityMonitoringRules", + "parameters": { + "page_number": { + "value": 2, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSecurityMonitoringSignals", + "qualifiedName": "DatadogApi.ListSecurityMonitoringSignals", + "fullyQualifiedName": "DatadogApi.ListSecurityMonitoringSignals@2.0.0", + "description": "Retrieve a list of security monitoring hist signals.\n\nThis tool calls the Datadog API to list historical security monitoring signals, providing insights into detected security events over time.", + "parameters": [ + { + "name": "max_security_signals", + "type": "integer", + "required": false, + "description": "The maximum number of security signals to return in the response. Specify an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_timestamp_for_signals", + "type": "string", + "required": false, + "description": "The latest timestamp to fetch security signals up to, formatted as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_timestamp", + "type": "string", + "required": false, + "description": "The minimum timestamp for requested security signals in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_cursor", + "type": "string", + "required": false, + "description": "Cursor for paginated results, using the cursor from the previous query.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "The search query to filter security signals. Use this to specify criteria for filtering the results.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Determine the order of security signals: 'timestamp' for ascending, '-timestamp' for descending.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListSecurityMonitoringHistsignals'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListSecurityMonitoringSignals", + "parameters": { + "max_security_signals": { + "value": 100, + "type": "integer", + "required": false + }, + "maximum_timestamp_for_signals": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "minimum_timestamp": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "results_page_cursor": { + "value": "eyJzY3JlZW5JZCI6IjEyMyIsInBhZ2VJZCI6MX0", + "type": "string", + "required": false + }, + "search_query": { + "value": "failed_login", + "type": "string", + "required": false + }, + "sort_order": { + "value": "-timestamp", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSecuritySignals", + "qualifiedName": "DatadogApi.ListSecuritySignals", + "fullyQualifiedName": "DatadogApi.ListSecuritySignals@2.0.0", + "description": "Retrieve security signals that match a search query.\n\nThis tool retrieves a list of security signals from Datadog based on a search query, using the GET method for the security monitoring signals endpoint.", + "parameters": [ + { + "name": "cursor_based_pagination", + "type": "string", + "required": false, + "description": "Cursor for pagination to continue retrieving results from a previous query.", + "enum": null, + "inferrable": true + }, + { + "name": "max_security_signals_response", + "type": "integer", + "required": false, + "description": "Specify the maximum number of security signals to return in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "max_timestamp_for_security_signals", + "type": "string", + "required": false, + "description": "Specify the maximum timestamp for retrieving security signals.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_timestamp", + "type": "string", + "required": false, + "description": "The minimum timestamp to filter security signals. Format: ISO 8601 string.", + "enum": null, + "inferrable": true + }, + { + "name": "result_sort_order", + "type": "string", + "required": false, + "description": "Specify the sort order for the security signals. Use 'timestamp' for ascending order, '-timestamp' for descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query_for_security_signals", + "type": "string", + "required": false, + "description": "The search query string used to filter security signals from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListSecurityMonitoringSignals'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListSecuritySignals", + "parameters": { + "cursor_based_pagination": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "max_security_signals_response": { + "value": 50, + "type": "integer", + "required": false + }, + "max_timestamp_for_security_signals": { + "value": "2023-09-30T23:59:59Z", + "type": "string", + "required": false + }, + "minimum_timestamp": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "result_sort_order": { + "value": "-timestamp", + "type": "string", + "required": false + }, + "search_query_for_security_signals": { + "value": "status:alert", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListServerlessAgents", + "qualifiedName": "DatadogApi.ListServerlessAgents", + "fullyQualifiedName": "DatadogApi.ListServerlessAgents@2.0.0", + "description": "Retrieve all running CSM Serverless Agents.\n\nUse this tool to get a list of all CSM Serverless Agents currently running on your hosts and containers. It's ideal for monitoring and managing your serverless agent deployments.", + "parameters": [ + { + "name": "filter_query", + "type": "string", + "required": false, + "description": "A search string to filter serverless agents, such as `hostname:COMP-T2H4J27423`.", + "enum": null, + "inferrable": true + }, + { + "name": "items_per_page", + "type": "integer", + "required": false, + "description": "The number of items to include in a single page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "page_index", + "type": "integer", + "required": false, + "description": "The zero-based page index for pagination when retrieving serverless agents.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The direction to sort results: 'asc' for ascending or 'desc' for descending order.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListAllCSMServerlessAgents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListServerlessAgents", + "parameters": { + "filter_query": { + "value": "hostname:COMP-T2H4J27423", + "type": "string", + "required": false + }, + "items_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "page_index": { + "value": 0, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "asc", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListServiceAccountAppKeys", + "qualifiedName": "DatadogApi.ListServiceAccountAppKeys", + "fullyQualifiedName": "DatadogApi.ListServiceAccountAppKeys@2.0.0", + "description": "Retrieve all app keys for a specific service account.\n\nUse this tool to list all application keys available for a specified service account in Datadog. It is useful when you need to manage or audit the application keys associated with a service account.", + "parameters": [ + { + "name": "service_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the service account whose application keys are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "created_at_start_filter", + "type": "string", + "required": false, + "description": "Include application keys created on or after this date. Use format YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "created_before_date", + "type": "string", + "required": false, + "description": "Include application keys created on or before this date.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_string_for_application_keys", + "type": "string", + "required": false, + "description": "Specify a string to filter the application keys by. Only keys containing the string will be shown.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specify the page number to be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Number of application keys to retrieve per page. The maximum allowed value is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_attribute", + "type": "string", + "required": false, + "description": "Attribute to sort application keys. Prefix with '-' for descending order. Options: created_at, last4, name.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListServiceAccountApplicationKeys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListServiceAccountAppKeys", + "parameters": { + "service_account_id": { + "value": "abc123-service-account", + "type": "string", + "required": true + }, + "created_at_start_filter": { + "value": "2022-01-01", + "type": "string", + "required": false + }, + "created_before_date": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "filter_string_for_application_keys": { + "value": "prod", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_order_attribute": { + "value": "-created_at", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSoftwareCatalogEntities", + "qualifiedName": "DatadogApi.ListSoftwareCatalogEntities", + "fullyQualifiedName": "DatadogApi.ListSoftwareCatalogEntities@2.0.0", + "description": "Retrieve entities from the software catalog.\n\nUse this tool to get a list of entities from the software catalog, ideal for managing or integrating software components.", + "parameters": [ + { + "name": "exclude_snapshotted_entities", + "type": "string", + "required": false, + "description": "Set to `true` to exclude entities that are snapshotted.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_kind", + "type": "string", + "required": false, + "description": "Filter entities by specifying the kind of entity, provided as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_name", + "type": "string", + "required": false, + "description": "Filter entities by specifying their name.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_owner", + "type": "string", + "required": false, + "description": "Filter the entities by their owner using a specific owner name or ID.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_reference", + "type": "string", + "required": false, + "description": "Filter entities by their specific reference string.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_relation_type", + "type": "string", + "required": false, + "description": "Specify the relation type to filter entities. Options include: 'RelationTypeOwns', 'RelationTypeOwnedBy', 'RelationTypeDependsOn', 'RelationTypeDependencyOf', 'RelationTypePartsOf', 'RelationTypeHasPart', 'RelationTypeOtherOwns', 'RelationTypeOtherOwnedBy', 'RelationTypeImplementedBy', 'RelationTypeImplements'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_uuid", + "type": "string", + "required": false, + "description": "Filter entities by their UUID. Provide the UUID as a string to retrieve specific entities.", + "enum": null, + "inferrable": true + }, + { + "name": "include_relationship_data", + "type": "string", + "required": false, + "description": "Specify which relationship data to include, such as 'schema', 'raw_schema', 'oncall', 'incident', or 'relation'.", + "enum": null, + "inferrable": true + }, + { + "name": "max_entities_per_page", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of entities to return per page in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "The starting point for pagination of the returned list of entities.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCatalogEntity'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListSoftwareCatalogEntities", + "parameters": { + "exclude_snapshotted_entities": { + "value": "true", + "type": "string", + "required": false + }, + "filter_by_kind": { + "value": "library", + "type": "string", + "required": false + }, + "filter_by_name": { + "value": "example-service", + "type": "string", + "required": false + }, + "filter_by_owner": { + "value": "team-alpha", + "type": "string", + "required": false + }, + "filter_by_reference": { + "value": "ref-12345", + "type": "string", + "required": false + }, + "filter_by_relation_type": { + "value": "RelationTypeDependsOn", + "type": "string", + "required": false + }, + "filter_by_uuid": { + "value": "d1f2918e-23c9-4d7a-965e-b317b50b2d99", + "type": "string", + "required": false + }, + "include_relationship_data": { + "value": "schema", + "type": "string", + "required": false + }, + "max_entities_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSpanMetrics", + "qualifiedName": "DatadogApi.ListSpanMetrics", + "fullyQualifiedName": "DatadogApi.ListSpanMetrics@2.0.0", + "description": "Retrieve configured span-based metrics from Datadog.\n\nGet the list of configured span-based metrics along with their definitions from Datadog's APM configuration.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListSpansMetrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListSpanMetrics", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSpans", + "qualifiedName": "DatadogApi.ListSpans", + "fullyQualifiedName": "DatadogApi.ListSpans@2.0.0", + "description": "Fetch spans based on a search query with pagination.\n\nThis tool retrieves spans from Datadog that match a specified search query. Use it to filter and search spans for analysis or monitoring. Note that the endpoint supports paginated results and is subject to rate limits of 300 requests per hour.", + "parameters": [ + { + "name": "end_time_filter", + "type": "string", + "required": false, + "description": "The maximum time for requested spans. Supports ISO8601, date math, or timestamps in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "max_number_of_spans", + "type": "integer", + "required": false, + "description": "Maximum number of spans to return in the response. Integer value expected.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_time_filter", + "type": "string", + "required": false, + "description": "The minimum time for the requested spans. Supports ISO8601, date math, and timestamps (milliseconds).", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string cursor to fetch the next set of results from the previous query.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": false, + "description": "The type of resource; must be set to 'search_request' for the query.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_for_spans", + "type": "string", + "required": false, + "description": "Set the sort order for querying spans. Use 'timestamp' for ascending or '-timestamp' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "span_search_query", + "type": "string", + "required": false, + "description": "The search query string following the span search syntax to filter spans.", + "enum": null, + "inferrable": true + }, + { + "name": "time_offset_seconds", + "type": "integer", + "required": false, + "description": "The time offset in seconds to apply to the query for adjusting the time frame.", + "enum": null, + "inferrable": true + }, + { + "name": "timezone_option", + "type": "string", + "required": false, + "description": "Specify the timezone using GMT, UTC, an offset (e.g., UTC+1), or a Timezone Database ID (e.g., America/New_York).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListSpans'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListSpans", + "parameters": { + "end_time_filter": { + "value": "2023-10-05T15:00:00Z", + "type": "string", + "required": false + }, + "max_number_of_spans": { + "value": 100, + "type": "integer", + "required": false + }, + "minimum_time_filter": { + "value": "2023-10-05T14:00:00Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "abcdef123456", + "type": "string", + "required": false + }, + "resource_type": { + "value": "search_request", + "type": "string", + "required": false + }, + "sort_order_for_spans": { + "value": "-timestamp", + "type": "string", + "required": false + }, + "span_search_query": { + "value": "service:my-service", + "type": "string", + "required": false + }, + "time_offset_seconds": { + "value": 60, + "type": "integer", + "required": false + }, + "timezone_option": { + "value": "UTC", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListStandardPatterns", + "qualifiedName": "DatadogApi.ListStandardPatterns", + "fullyQualifiedName": "DatadogApi.ListStandardPatterns@2.0.0", + "description": "Retrieve all standard patterns for sensitive data scanning.\n\nThis tool is used to fetch a list of all standard patterns available for sensitive data scanning with Datadog. Call this tool when you need access to predefined patterns used for identifying sensitive data.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListStandardPatterns'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListStandardPatterns", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSuppressionRules", + "qualifiedName": "DatadogApi.ListSuppressionRules", + "fullyQualifiedName": "DatadogApi.ListSuppressionRules@2.0.0", + "description": "Retrieve the list of security monitoring suppression rules.\n\nThis tool retrieves all the suppression rules configured in Datadog's security monitoring system. Use this tool to view the current set of rules that suppress certain alerts.", + "parameters": [ + { + "name": "suppression_query_string", + "type": "string", + "required": false, + "description": "A query string to filter suppression rules. Use to specify search criteria.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListSecurityMonitoringSuppressions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListSuppressionRules", + "parameters": { + "suppression_query_string": { + "value": "status:active AND severity:high", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListTagPipelineRulesets", + "qualifiedName": "DatadogApi.ListTagPipelineRulesets", + "fullyQualifiedName": "DatadogApi.ListTagPipelineRulesets@2.0.0", + "description": "Retrieve all tag pipeline rulesets for the organization.\n\nThis tool retrieves a comprehensive list of all tag pipeline rulesets associated with the organization. It should be called when you need to examine or manage these rulesets.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListTagPipelinesRulesets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListTagPipelineRulesets", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListTeams", + "qualifiedName": "DatadogApi.ListTeams", + "fullyQualifiedName": "DatadogApi.ListTeams@2.0.0", + "description": "Retrieve all teams with optional filters.\n\nFetches a list of all teams, allowing optional filters by keyword or user.", + "parameters": [ + { + "name": "fields_to_fetch", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to retrieve for each team.", + "enum": null, + "inferrable": true + }, + { + "name": "include_only_user_teams", + "type": "boolean", + "required": false, + "description": "When true, only teams the current user belongs to are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_resources", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify related resources to include. Options: `team_links`, `user_team_permissions`.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number to return for the list of teams.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Specify the number of teams to return per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query_for_teams", + "type": "string", + "required": false, + "description": "Search for teams by name, handle, or team member email.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Determines the order of the returned teams. Options: 'name', '-name', 'user_count', '-user_count'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListTeams'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListTeams", + "parameters": { + "fields_to_fetch": { + "value": ["name", "id", "user_count"], + "type": "array", + "required": false + }, + "include_only_user_teams": { + "value": true, + "type": "boolean", + "required": false + }, + "include_related_resources": { + "value": ["team_links", "user_team_permissions"], + "type": "array", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "search_query_for_teams": { + "value": "dev", + "type": "string", + "required": false + }, + "sort_order": { + "value": "name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListTenantBasedHandles", + "qualifiedName": "DatadogApi.ListTenantBasedHandles", + "fullyQualifiedName": "DatadogApi.ListTenantBasedHandles@2.0.0", + "description": "Retrieve Datadog's tenant-based handles for MS Teams integration.\n\nCall this tool to obtain a list of all tenant-based handles configured in the Datadog Microsoft Teams integration.", + "parameters": [ + { + "name": "tenant_handle_name", + "type": "string", + "required": false, + "description": "The name of your tenant-based handle in the Datadog Microsoft Teams integration.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": false, + "description": "The ID of your tenant in Datadog to retrieve handles for MS Teams integration.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListTenantBasedHandles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListTenantBasedHandles", + "parameters": { + "tenant_handle_name": { + "value": "example-tenant-handle", + "type": "string", + "required": false + }, + "tenant_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListUserAppKeys", + "qualifiedName": "DatadogApi.ListUserAppKeys", + "fullyQualifiedName": "DatadogApi.ListUserAppKeys@2.0.0", + "description": "Retrieve all application keys for the current user.\n\nThis tool retrieves a list of all application keys associated with the current user in Datadog. It should be called when there's a need to view or manage these application keys.", + "parameters": [ + { + "name": "created_after_date", + "type": "string", + "required": false, + "description": "Include application keys created on or after this date in the results.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_string", + "type": "string", + "required": false, + "description": "Filter application keys by the specified string to narrow down the results.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_created_at_end_date", + "type": "string", + "required": false, + "description": "Include only application keys created on or before this date. Format: YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_resources", + "type": "string", + "required": false, + "description": "Specify 'owned_by' to include related resources in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specify the page number to retrieve application keys from.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Specify the number of application keys per page. Maximum value is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_application_keys", + "type": "string", + "required": false, + "description": "Specify the attribute to sort the application keys. Use a minus sign for descending order.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCurrentUserApplicationKeys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListUserAppKeys", + "parameters": { + "created_after_date": { + "value": "2022-01-01", + "type": "string", + "required": false + }, + "filter_by_string": { + "value": "example_key", + "type": "string", + "required": false + }, + "filter_created_at_end_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "include_related_resources": { + "value": "owned_by", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_application_keys": { + "value": "-created_at", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListUserRoles", + "qualifiedName": "DatadogApi.ListUserRoles", + "fullyQualifiedName": "DatadogApi.ListUserRoles@2.0.0", + "description": "Retrieve all roles from Datadog.\n\nThis tool fetches all roles from Datadog, providing their names and unique identifiers. It should be called when there's a need to view or manage role information.", + "parameters": [ + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specific page number to return.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "The number of roles to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "role_filter_string", + "type": "string", + "required": false, + "description": "Filter roles using a specific string to match their details.", + "enum": null, + "inferrable": true + }, + { + "name": "role_id_filter", + "type": "string", + "required": false, + "description": "List of role IDs to filter roles by, supporting comma-separated values.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_roles_by", + "type": "string", + "required": false, + "description": "Sort roles based on a specified field. Use prefixes to set ascending or descending order, e.g., '-name' for descending by name.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListRoles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListUserRoles", + "parameters": { + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "role_filter_string": { + "value": "admin", + "type": "string", + "required": false + }, + "role_id_filter": { + "value": "123,456", + "type": "string", + "required": false + }, + "sort_roles_by": { + "value": "-name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWafCustomRules", + "qualifiedName": "DatadogApi.ListWafCustomRules", + "fullyQualifiedName": "DatadogApi.ListWafCustomRules@2.0.0", + "description": "Retrieve a list of WAF custom rules.\n\nUse this tool to get a list of custom rules for the Web Application Firewall (WAF) in Datadog. It's useful for monitoring and managing security configurations.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListApplicationSecurityWAFCustomRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListWafCustomRules", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWafExclusionFilters", + "qualifiedName": "DatadogApi.ListWafExclusionFilters", + "fullyQualifiedName": "DatadogApi.ListWafExclusionFilters@2.0.0", + "description": "Retrieve a list of WAF exclusion filters.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListApplicationSecurityWafExclusionFilters'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListWafExclusionFilters", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWorkflowInstances", + "qualifiedName": "DatadogApi.ListWorkflowInstances", + "fullyQualifiedName": "DatadogApi.ListWorkflowInstances@2.0.0", + "description": "Retrieve all instances of a specific workflow from Datadog.\n\nUse this tool to get a list of all instances for a specified workflow within Datadog. Ensure you have a registered application key or the necessary permissions configured in the UI.", + "parameters": [ + { + "name": "workflow_id", + "type": "string", + "required": true, + "description": "The ID of the workflow to retrieve instances for.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number to return when listing workflow instances.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Size for a given page. Must be an integer with a maximum value of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListWorkflowInstances'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListWorkflowInstances", + "parameters": { + "workflow_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWorkloadProtectionAgentRules", + "qualifiedName": "DatadogApi.ListWorkloadProtectionAgentRules", + "fullyQualifiedName": "DatadogApi.ListWorkloadProtectionAgentRules@2.0.0", + "description": "Retrieve the list of Workload Protection agent rules.\n\nUse this tool to get the current list of agent rules for workload protection from Datadog. This is not available for the Government (US1-FED) site.", + "parameters": [ + { + "name": "agent_policy_id", + "type": "string", + "required": false, + "description": "The ID of the Agent policy to retrieve the list of workload protection agent rules.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCSMThreatsAgentRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListWorkloadProtectionAgentRules", + "parameters": { + "agent_policy_id": { + "value": "policy-12345", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWorkloadProtectionPolicies", + "qualifiedName": "DatadogApi.ListWorkloadProtectionPolicies", + "fullyQualifiedName": "DatadogApi.ListWorkloadProtectionPolicies@2.0.0", + "description": "Retrieve a list of Workload Protection policies from Datadog.\n\nThis tool calls the Datadog API to retrieve a list of Workload Protection policies. It is used to obtain information about the configurations for workload security. Note: This endpoint is not available for the US1-FED site.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCSMThreatsAgentPolicies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ListWorkloadProtectionPolicies", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ManageBudget", + "qualifiedName": "DatadogApi.ManageBudget", + "fullyQualifiedName": "DatadogApi.ManageBudget@2.0.0", + "description": "Create or update a budget in Datadog.\n\nThis tool allows you to create a new budget or update an existing budget using the Datadog API.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpsertBudget'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ManageBudget", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"budget\":\"monthly\",\"amount\":1000,\"currency\":\"USD\",\"name\":\"Marketing Budget\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ManageIncidentAttachments", + "qualifiedName": "DatadogApi.ManageIncidentAttachments", + "fullyQualifiedName": "DatadogApi.ManageIncidentAttachments@2.0.0", + "description": "Manage attachments for a specific incident in bulk.\n\n Use this tool to create, update, or delete multiple attachments related to a specific incident. It is called when adjustments to the attachments of an incident are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_uuid", + "type": "string", + "required": false, + "description": "The UUID of the incident to manage its attachments. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "related_objects_inclusion", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of related object types to include in the response (e.g., comments, attachments). Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateIncidentAttachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ManageIncidentAttachments", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "related_objects_inclusion": { + "value": ["comments", "attachments"], + "type": "array", + "required": false + }, + "request_body": { + "value": "{\"attachment\": {\"url\":\"https://example.com/file.pdf\",\"type\":\"application/pdf\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ManageSoftwareCatalogEntity", + "qualifiedName": "DatadogApi.ManageSoftwareCatalogEntity", + "fullyQualifiedName": "DatadogApi.ManageSoftwareCatalogEntity@2.0.0", + "description": "Create or update entities in the Software Catalog.\n\nUse this tool to either create a new entity or update an existing one within the Software Catalog in Datadog.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpsertCatalogEntity'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ManageSoftwareCatalogEntity", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"My Software Entity\", \"version\": \"1.0.0\", \"type\": \"application\", \"tags\": [\"tag1\", \"tag2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "OrderRumRetentionFilters", + "qualifiedName": "DatadogApi.OrderRumRetentionFilters", + "fullyQualifiedName": "DatadogApi.OrderRumRetentionFilters@2.0.0", + "description": "Order RUM retention filters for a RUM application.\n\n Use this tool to reorder the RUM retention filters for a specified RUM application. It returns the updated RUM retention filter objects without attributes when successful.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "rum_application_id", + "type": "string", + "required": false, + "description": "The ID of the RUM application for which to order retention filters. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'OrderRetentionFilters'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.OrderRumRetentionFilters", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "rum_application_id": { + "value": "app-123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"filters\":[{\"id\":\"filter-1\",\"order\":1},{\"id\":\"filter-2\",\"order\":2}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "PublishAppOnDatadog", + "qualifiedName": "DatadogApi.PublishAppOnDatadog", + "fullyQualifiedName": "DatadogApi.PublishAppOnDatadog@2.0.0", + "description": "Publish an app for user access on Datadog.\n\nUse this tool to publish an app for use by other users on Datadog. Ensure a restriction policy is set for correct user access. A registered application key is required for this operation.", + "parameters": [ + { + "name": "app_id_of_app_to_publish", + "type": "string", + "required": true, + "description": "The unique identifier of the app you want to publish on Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'PublishApp'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.PublishAppOnDatadog", + "parameters": { + "app_id_of_app_to_publish": { + "value": "com.example.myapp", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "QueryScalarData", + "qualifiedName": "DatadogApi.QueryScalarData", + "fullyQualifiedName": "DatadogApi.QueryScalarData@2.0.0", + "description": "Query scalar values from diverse data sources.\n\nUse this tool to query scalar values from various data sources, with options to apply formulas and functions, ideal for insights in widgets like Query Value, Table, and Toplist.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'QueryScalarData'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.QueryScalarData", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"query\": \"avg:system.cpu.idle{*}\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "QueryTimeseriesData", + "qualifiedName": "DatadogApi.QueryTimeseriesData", + "fullyQualifiedName": "DatadogApi.QueryTimeseriesData@2.0.0", + "description": "Query and process timeseries data from multiple sources.\n\nThis tool queries timeseries data across various data sources and processes it by applying specified formulas and functions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'QueryTimeseriesData'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.QueryTimeseriesData", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"metric\":\"system.cpu.idle\",\"from\":\"2023-10-01T00:00:00Z\",\"to\":\"2023-10-01T01:00:00Z\",\"query\":\"avg:system.cpu.idle{host:my-host}\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RegisterDatadogAppKey", + "qualifiedName": "DatadogApi.RegisterDatadogAppKey", + "fullyQualifiedName": "DatadogApi.RegisterDatadogAppKey@2.0.0", + "description": "Register a new app key in Datadog.\n\nUse this tool to register a new application key with Datadog, enabling API access and integrations.", + "parameters": [ + { + "name": "app_key_id", + "type": "string", + "required": true, + "description": "The unique identifier for the app key to be registered with Datadog. It must be a valid string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RegisterAppKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RegisterDatadogAppKey", + "parameters": { + "app_key_id": { + "value": "my-app-key-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemovePermissionFromRole", + "qualifiedName": "DatadogApi.RemovePermissionFromRole", + "fullyQualifiedName": "DatadogApi.RemovePermissionFromRole@2.0.0", + "description": "Removes a permission from a specified role in Datadog.\n\nUse this tool to remove a specific permission from a role in Datadog's system. Ideal for managing role permissions and access control.", + "parameters": [ + { + "name": "role_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the role from which a permission will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "permission_id", + "type": "string", + "required": false, + "description": "ID of the permission to be removed from the specified role.", + "enum": null, + "inferrable": true + }, + { + "name": "permission_resource_type", + "type": "string", + "required": false, + "description": "This should be set to 'permissions' to specify the permissions resource type.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RemovePermissionFromRole'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RemovePermissionFromRole", + "parameters": { + "role_identifier": { + "value": "admin_role_123", + "type": "string", + "required": true + }, + "permission_id": { + "value": "perm_456", + "type": "string", + "required": false + }, + "permission_resource_type": { + "value": "permissions", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveProject", + "qualifiedName": "DatadogApi.RemoveProject", + "fullyQualifiedName": "DatadogApi.RemoveProject@2.0.0", + "description": "Remove a project using its ID.\n\nUse this tool to remove a project by providing the project's ID to ensure it is no longer available in the system.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the project to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RemoveProject", + "parameters": { + "project_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveRoleFromArchive", + "qualifiedName": "DatadogApi.RemoveRoleFromArchive", + "fullyQualifiedName": "DatadogApi.RemoveRoleFromArchive@2.0.0", + "description": "Removes a role from a specified archive in Datadog.\n\nThis tool should be called to remove a user role from a specific archive in Datadog. It helps revoke access permissions associated with that role for the archive.", + "parameters": [ + { + "name": "archive_id", + "type": "string", + "required": true, + "description": "The ID of the archive from which the role will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "role_type", + "type": "string", + "required": false, + "description": "The type of role to be removed, typically set to 'roles'.", + "enum": null, + "inferrable": true + }, + { + "name": "role_unique_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the role to be removed from the archive.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RemoveRoleFromArchive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RemoveRoleFromArchive", + "parameters": { + "archive_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "role_type": { + "value": "roles", + "type": "string", + "required": false + }, + "role_unique_identifier": { + "value": "role-123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveRoleFromRestrictionQuery", + "qualifiedName": "DatadogApi.RemoveRoleFromRestrictionQuery", + "fullyQualifiedName": "DatadogApi.RemoveRoleFromRestrictionQuery@2.0.0", + "description": "Removes a role from a Datadog restriction query.\n\nUse this tool to delete a specific role from a restriction query in Datadog. Appropriate for situations where you need to manage access by modifying restriction queries.", + "parameters": [ + { + "name": "restriction_query_id", + "type": "string", + "required": true, + "description": "The ID of the restriction query to remove the role from.", + "enum": null, + "inferrable": true + }, + { + "name": "role_type", + "type": "string", + "required": false, + "description": "The type of the role, must be 'roles'.", + "enum": null, + "inferrable": true + }, + { + "name": "role_unique_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the role to be removed from the restriction query.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RemoveRoleFromRestrictionQuery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RemoveRoleFromRestrictionQuery", + "parameters": { + "restriction_query_id": { + "value": "rq_123456789", + "type": "string", + "required": true + }, + "role_type": { + "value": "roles", + "type": "string", + "required": false + }, + "role_unique_identifier": { + "value": "role_xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveTeamLink", + "qualifiedName": "DatadogApi.RemoveTeamLink", + "fullyQualifiedName": "DatadogApi.RemoveTeamLink@2.0.0", + "description": "Remove a link from a team.\n\nUse this tool to remove a specific link from a team by providing the team and link identifiers. Useful for managing team associations and cleaning up unnecessary links.", + "parameters": [ + { + "name": "link_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the link to be removed from the team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team from which the link will be removed. Required for identifying the specific team.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTeamLink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RemoveTeamLink", + "parameters": { + "link_identifier": { + "value": "link-12345", + "type": "string", + "required": true + }, + "team_id": { + "value": "team-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveTeamMember", + "qualifiedName": "DatadogApi.RemoveTeamMember", + "fullyQualifiedName": "DatadogApi.RemoveTeamMember@2.0.0", + "description": "Removes a member team from a super team.\n\nUse this tool to remove a specific member team from a super team based on the provided member team ID.", + "parameters": [ + { + "name": "member_team_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the member team to be removed from the super team.", + "enum": null, + "inferrable": true + }, + { + "name": "super_team_id", + "type": "string", + "required": true, + "description": "The unique identifier for the super team from which a member team will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RemoveMemberTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RemoveTeamMember", + "parameters": { + "member_team_identifier": { + "value": "team-12345", + "type": "string", + "required": true + }, + "super_team_id": { + "value": "super-team-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveUserFromRole", + "qualifiedName": "DatadogApi.RemoveUserFromRole", + "fullyQualifiedName": "DatadogApi.RemoveUserFromRole@2.0.0", + "description": "Remove a user from a specified role in Datadog.\n\nUse this tool to remove a specified user from a role in Datadog when updating user permissions or cleaning up role assignments.", + "parameters": [ + { + "name": "role_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the role to remove the user from.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The unique identifier representing the user to be removed from the role.", + "enum": null, + "inferrable": true + }, + { + "name": "user_resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type, which should be set as 'users'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RemoveUserFromRole'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RemoveUserFromRole", + "parameters": { + "role_identifier": { + "value": "admin-role", + "type": "string", + "required": true + }, + "user_identifier": { + "value": "user-1234", + "type": "string", + "required": true + }, + "user_resource_type": { + "value": "users", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveUserFromTeam", + "qualifiedName": "DatadogApi.RemoveUserFromTeam", + "fullyQualifiedName": "DatadogApi.RemoveUserFromTeam@2.0.0", + "description": "Remove a user from a specified team.\n\nUse this tool when you need to remove a user's membership from a specific team in Datadog.", + "parameters": [ + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "A string representing the unique identifier of the team from which the user will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier_for_removal", + "type": "string", + "required": true, + "description": "The unique identifier of the user to be removed from the team.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTeamMembership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RemoveUserFromTeam", + "parameters": { + "team_identifier": { + "value": "dev-operations", + "type": "string", + "required": true + }, + "user_identifier_for_removal": { + "value": "user123@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ReorderApmRetentionFilters", + "qualifiedName": "DatadogApi.ReorderApmRetentionFilters", + "fullyQualifiedName": "DatadogApi.ReorderApmRetentionFilters@2.0.0", + "description": "Reorder execution order of APM retention filters.\n\nUse this tool to change the sequence in which APM retention filters are executed. This is useful for prioritizing certain filters over others in your Datadog configuration.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ReorderApmRetentionFilters'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ReorderApmRetentionFilters", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filters\": [{\"id\": \"filter1\", \"order\": 1}, {\"id\": \"filter2\", \"order\": 2}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ReorderCustomAllocationRules", + "qualifiedName": "DatadogApi.ReorderCustomAllocationRules", + "fullyQualifiedName": "DatadogApi.ReorderCustomAllocationRules@2.0.0", + "description": "Change execution order of custom allocation rules in Datadog.\n\nUse this tool to reorder custom allocation rules by specifying the complete list of rule IDs in the desired sequence. Lower indices are executed first, so arrange them according to priority.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ReorderCustomAllocationRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ReorderCustomAllocationRules", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"rules\":[\"rule_id_1\",\"rule_id_2\",\"rule_id_3\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ReorderScanningGroups", + "qualifiedName": "DatadogApi.ReorderScanningGroups", + "fullyQualifiedName": "DatadogApi.ReorderScanningGroups@2.0.0", + "description": "Reorder the list of scanning groups.\n\nThis tool is used to change the order of sensitive data scanning groups in Datadog. Call this tool when you need to reorder the existing groups.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ReorderScanningGroups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ReorderScanningGroups", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"group_ids\":[\"group1\",\"group2\",\"group3\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ReorderTagPipelineRulesets", + "qualifiedName": "DatadogApi.ReorderTagPipelineRulesets", + "fullyQualifiedName": "DatadogApi.ReorderTagPipelineRulesets@2.0.0", + "description": "Change the execution order of tag pipeline rulesets.\n\nUse this tool to modify the order in which tag pipeline rulesets are executed in Datadog.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ReorderTagPipelinesRulesets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ReorderTagPipelineRulesets", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"ruleset_ids\":[\"rule1\",\"rule2\",\"rule3\"],\"order\":[2,1,3]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ResolveOnCallPage", + "qualifiedName": "DatadogApi.ResolveOnCallPage", + "fullyQualifiedName": "DatadogApi.ResolveOnCallPage@2.0.0", + "description": "Resolves an On-Call Page in Datadog.\n\nThis tool resolves an open on-call page in Datadog, which is useful for indicating that an incident or issue has been addressed. Use it when you need to confirm the resolution of a specific on-call incident.", + "parameters": [ + { + "name": "on_call_page_id", + "type": "string", + "required": true, + "description": "The unique identifier of the on-call page to resolve in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ResolveOnCallPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ResolveOnCallPage", + "parameters": { + "on_call_page_id": { + "value": "123abc456def", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDatasetInfo", + "qualifiedName": "DatadogApi.RetrieveDatasetInfo", + "fullyQualifiedName": "DatadogApi.RetrieveDatasetInfo@2.0.0", + "description": "Retrieve detailed information about a specific dataset from Datadog.\n\nUse this tool to get information about a dataset using its unique ID. It retrieves comprehensive details related to the specified dataset from Datadog.", + "parameters": [ + { + "name": "dataset_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the dataset to retrieve from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetDataset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RetrieveDatasetInfo", + "parameters": { + "dataset_identifier": { + "value": "dataset-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDatastore", + "qualifiedName": "DatadogApi.RetrieveDatastore", + "fullyQualifiedName": "DatadogApi.RetrieveDatastore@2.0.0", + "description": "Retrieve datastore information by ID.\n\nUse this tool to access details of a specific datastore by providing its ID. It retrieves information from Datadog's datastore endpoint.", + "parameters": [ + { + "name": "datastore_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the datastore to be retrieved from Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetDatastore'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RetrieveDatastore", + "parameters": { + "datastore_identifier": { + "value": "datastore-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveGcpScanSettings", + "qualifiedName": "DatadogApi.RetrieveGcpScanSettings", + "fullyQualifiedName": "DatadogApi.RetrieveGcpScanSettings@2.0.0", + "description": "Retrieve GCP project agentless scan options.\n\nThis tool fetches the agentless scanning options for a specified activated GCP project from Datadog, helping to determine scan configurations and settings.", + "parameters": [ + { + "name": "gcp_project_id", + "type": "string", + "required": true, + "description": "The unique ID of the GCP project to retrieve scan options for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetGcpScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RetrieveGcpScanSettings", + "parameters": { + "gcp_project_id": { + "value": "my-gcp-project-123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveResourceRestrictionPolicy", + "qualifiedName": "DatadogApi.RetrieveResourceRestrictionPolicy", + "fullyQualifiedName": "DatadogApi.RetrieveResourceRestrictionPolicy@2.0.0", + "description": "Retrieve restriction policy for a specific resource.\n\nThis tool is used to obtain the restriction policy linked to a particular resource by providing the resource ID. It should be called when you need to understand access restrictions or permissions associated with the resource.", + "parameters": [ + { + "name": "resource_identifier", + "type": "string", + "required": true, + "description": "The ID of the resource, formatted as `type:id`. Supported types: `dashboard`, `integration-service`, `integration-webhook`, `notebook`, `reference-table`, `security-rule`, `slo`, `workflow`, `app-builder-app`, `connection`, `connection-group`, `rum-application`, `cross-org-connection`, `spreadsheet`, `on-call-schedule`, `on-call-escalation-policy`, `on-call-team-routing-rules`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetRestrictionPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RetrieveResourceRestrictionPolicy", + "parameters": { + "resource_identifier": { + "value": "dashboard:12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSupportCaseTypes", + "qualifiedName": "DatadogApi.RetrieveSupportCaseTypes", + "fullyQualifiedName": "DatadogApi.RetrieveSupportCaseTypes@2.0.0", + "description": "Retrieves all available support case types from Datadog.\n\nThis tool should be called to get a complete list of support case types available in Datadog. Useful for understanding the types of support cases that can be submitted.", + "parameters": [], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAllCaseTypes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RetrieveSupportCaseTypes", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RunHistoricalDetectionJob", + "qualifiedName": "DatadogApi.RunHistoricalDetectionJob", + "fullyQualifiedName": "DatadogApi.RunHistoricalDetectionJob@2.0.0", + "description": "Initiate a historical detection job in Datadog.\n\nUse this tool to start a historical detection job via Datadog's SIEM API. It is called when there's a need to analyze past data using historical detections.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RunHistoricalJob'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.RunHistoricalDetectionJob", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"query\": \"error code 500\", \"timeframe\": \"last_30_days\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ScheduleDowntime", + "qualifiedName": "DatadogApi.ScheduleDowntime", + "fullyQualifiedName": "DatadogApi.ScheduleDowntime@2.0.0", + "description": "Schedule downtime for services or systems through Datadog.\n\nUse this tool to schedule a downtime for services or systems using Datadog's API. It is useful for planning maintenance or handling expected outages by suppressing alerts during the specified period.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateDowntime'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ScheduleDowntime", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"scope\": \"service:my-service\",\"start\": 1672531200,\"end\": 1672534800,\"message\": \"Scheduled maintenance\",\"type\": \"service\",\"duration\": \"3600\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchAuditLogs", + "qualifiedName": "DatadogApi.SearchAuditLogs", + "fullyQualifiedName": "DatadogApi.SearchAuditLogs@2.0.0", + "description": "Retrieve audit logs events based on a search query.\n\nUse this tool to filter and search through Datadog audit logs events using complex queries. Results are paginated.", + "parameters": [ + { + "name": "audit_logs_search_query", + "type": "string", + "required": false, + "description": "A string representing the search query following the Audit Logs search syntax to filter the logs.", + "enum": null, + "inferrable": true + }, + { + "name": "max_events_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of events to include in the response, enabling efficient pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_time_for_requested_events", + "type": "string", + "required": false, + "description": "Maximum time for the requested events. Supports date, math, and regular timestamps (in milliseconds).", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_time", + "type": "string", + "required": false, + "description": "Minimum time for the requested events. Accepts date, math, or timestamps in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for retrieving subsequent pages of audit log results.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_parameter", + "type": "string", + "required": false, + "description": "Sort events by timestamp. Use 'timestamp' for ascending, '-timestamp' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "time_offset_seconds", + "type": "integer", + "required": false, + "description": "Time offset in seconds to apply to the query, adjusting the timeframe of the log search.", + "enum": null, + "inferrable": true + }, + { + "name": "timezone", + "type": "string", + "required": false, + "description": "Specify the timezone for the query, using GMT, UTC, an offset like UTC+1, or a Timezone Database identifier like America/New_York.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchAuditLogs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SearchAuditLogs", + "parameters": { + "audit_logs_search_query": { + "value": "source:aws status:success", + "type": "string", + "required": false + }, + "max_events_limit": { + "value": 100, + "type": "integer", + "required": false + }, + "maximum_time_for_requested_events": { + "value": "now", + "type": "string", + "required": false + }, + "minimum_time": { + "value": "1 day ago", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor123", + "type": "string", + "required": false + }, + "sort_parameter": { + "value": "-timestamp", + "type": "string", + "required": false + }, + "time_offset_seconds": { + "value": 3600, + "type": "integer", + "required": false + }, + "timezone": { + "value": "UTC", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchCases", + "qualifiedName": "DatadogApi.SearchCases", + "fullyQualifiedName": "DatadogApi.SearchCases@2.0.0", + "description": "Search and retrieve support cases from Datadog.\n\nUse this tool to search and retrieve support case information from Datadog. It is useful for accessing case details and statuses.", + "parameters": [ + { + "name": "order_ascending", + "type": "boolean", + "required": false, + "description": "Set to true for ascending order; false for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number to return in the search results.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "The number of results per page, with a maximum value of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "The search query to filter cases. Use keywords or phrases to specify your search criteria.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_field", + "type": "string", + "required": false, + "description": "Specify the field to sort by. Options are 'created_at', 'priority', or 'status'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchCases'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SearchCases", + "parameters": { + "order_ascending": { + "value": true, + "type": "boolean", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "search_query": { + "value": "network issue", + "type": "string", + "required": false + }, + "sort_by_field": { + "value": "created_at", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchCiPipelineEvents", + "qualifiedName": "DatadogApi.SearchCiPipelineEvents", + "fullyQualifiedName": "DatadogApi.SearchCiPipelineEvents@2.0.0", + "description": "Retrieve CI pipeline events matching a search query.\n\nUse this tool to obtain CI Visibility pipeline events that fit a specific search query. It's useful for filtering and searching through pipeline events using complex queries. The results are paginated.", + "parameters": [ + { + "name": "filter_to_time", + "type": "string", + "required": false, + "description": "The maximum time for requested events; supports date, math, and timestamps (in milliseconds).", + "enum": null, + "inferrable": true + }, + { + "name": "max_events_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of events to retrieve in a single response. This limits the number of events returned in one page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "min_time_for_events", + "type": "string", + "required": false, + "description": "Specify the minimum time for the requested events. Supports date, math expressions, and timestamps in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Use this to fetch the next set of results by providing the cursor value from the previous query response.", + "enum": null, + "inferrable": true + }, + { + "name": "query_time_offset_seconds", + "type": "integer", + "required": false, + "description": "The time offset in seconds to apply to the query for event retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "The search query using CI Visibility Explorer search syntax to filter pipeline events.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_events_by", + "type": "string", + "required": false, + "description": "Defines the order of CI pipeline events by timestamp. Use 'timestamp' for ascending order and '-timestamp' for descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "timezone", + "type": "string", + "required": false, + "description": "Specify the timezone as GMT, UTC, a UTC offset (like UTC+1), or a Timezone Database identifier (e.g., America/New_York).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchCIAppPipelineEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SearchCiPipelineEvents", + "parameters": { + "filter_to_time": { + "value": "2023-10-05T12:00:00Z", + "type": "string", + "required": false + }, + "max_events_per_page": { + "value": 100, + "type": "integer", + "required": false + }, + "min_time_for_events": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "eyJraWQiOiJzYW1wbGUifQ==", + "type": "string", + "required": false + }, + "query_time_offset_seconds": { + "value": 3600, + "type": "integer", + "required": false + }, + "search_query": { + "value": "status:success AND pipeline:build", + "type": "string", + "required": false + }, + "sort_events_by": { + "value": "-timestamp", + "type": "string", + "required": false + }, + "timezone": { + "value": "UTC", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchCiTestEvents", + "qualifiedName": "DatadogApi.SearchCiTestEvents", + "fullyQualifiedName": "DatadogApi.SearchCiTestEvents@2.0.0", + "description": "Retrieve CI Visibility test events with advanced search capabilities.\n\nUse this tool to obtain CI Visibility test events that match specific search criteria. Ideal for building complex event filtering and searching within Datadog's CI data.", + "parameters": [ + { + "name": "maximum_event_time", + "type": "string", + "required": false, + "description": "The maximum time for the requested events. Supports date strings, math expressions, or timestamps (in milliseconds).", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_events_in_response", + "type": "integer", + "required": false, + "description": "Specify the maximum number of events to be returned in the response. This limits the size of the result set.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for retrieving the next set of paginated results based on previous queries.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "The search query using CI Visibility Explorer syntax for filtering test events.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the sorting order for events. Use 'timestamp' for ascending or '-timestamp' for descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_filter", + "type": "string", + "required": false, + "description": "The minimum time for requested events; can be a date, mathematical expression, or timestamp in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "time_offset_seconds", + "type": "integer", + "required": false, + "description": "The time offset, in seconds, to apply to the query for adjusting the search time range.", + "enum": null, + "inferrable": true + }, + { + "name": "timezone", + "type": "string", + "required": false, + "description": "Specify the timezone as GMT, UTC, a UTC offset (e.g., UTC+1), or a Timezone Database identifier (e.g., America/New_York).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchCIAppTestEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SearchCiTestEvents", + "parameters": { + "maximum_event_time": { + "value": "2023-10-01T23:59:59Z", + "type": "string", + "required": false + }, + "maximum_events_in_response": { + "value": 100, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiJ9...", + "type": "string", + "required": false + }, + "search_query": { + "value": "status:test AND repository:my-repo", + "type": "string", + "required": false + }, + "sort_order": { + "value": "-timestamp", + "type": "string", + "required": false + }, + "start_time_filter": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "time_offset_seconds": { + "value": 3600, + "type": "integer", + "required": false + }, + "timezone": { + "value": "America/New_York", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchDatadogEvents", + "qualifiedName": "DatadogApi.SearchDatadogEvents", + "fullyQualifiedName": "DatadogApi.SearchDatadogEvents@2.0.0", + "description": "Search and filter events in Datadog.\n\nUse this tool to find and filter events in Datadog using complex search queries. It returns a paginated list of events that match the specified criteria.", + "parameters": [ + { + "name": "event_search_query", + "type": "string", + "required": false, + "description": "The search query using Datadog's event search syntax to filter events.", + "enum": null, + "inferrable": true + }, + { + "name": "max_event_time", + "type": "string", + "required": false, + "description": "Specify the maximum time for the events. Supports date math and timestamps in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_events_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of events returned per page in the response. This controls the pagination size.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor", + "type": "string", + "required": false, + "description": "The cursor for pagination to retrieve the next set of results.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify event sorting order: 'timestamp' for ascending, '-timestamp' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time", + "type": "string", + "required": false, + "description": "The earliest time for requested events, using date math or timestamps in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "time_offset_seconds", + "type": "integer", + "required": false, + "description": "The time offset to apply to the query in seconds. Use an integer to specify the shift in time for the search results.", + "enum": null, + "inferrable": true + }, + { + "name": "timezone", + "type": "string", + "required": false, + "description": "Specify the timezone for the query. It can be GMT, UTC, an offset (like UTC+1), or a Timezone Database identifier (like America/New_York).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SearchDatadogEvents", + "parameters": { + "event_search_query": { + "value": "status:error OR status:warning", + "type": "string", + "required": false + }, + "max_event_time": { + "value": "now", + "type": "string", + "required": false + }, + "maximum_events_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor": { + "value": "eyJ2IjoiMSIsInB...F...", + "type": "string", + "required": false + }, + "sort_order": { + "value": "-timestamp", + "type": "string", + "required": false + }, + "start_time": { + "value": "now-1h", + "type": "string", + "required": false + }, + "time_offset_seconds": { + "value": 300, + "type": "integer", + "required": false + }, + "timezone": { + "value": "UTC", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchDatadogIncidents", + "qualifiedName": "DatadogApi.SearchDatadogIncidents", + "fullyQualifiedName": "DatadogApi.SearchDatadogIncidents@2.0.0", + "description": "Search for incidents in Datadog by query.\n\nUse this tool to find incidents in Datadog that match a specific query. It helps in quickly retrieving relevant incident information based on search criteria.", + "parameters": [ + { + "name": "incident_query", + "type": "string", + "required": true, + "description": "Query to determine which incidents to return. Use facets joined by `AND` and multiple values by `OR`, e.g., `state:active AND severity:(SEV-2 OR SEV-1)`.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_objects", + "type": "string", + "required": false, + "description": "Specifies which types of related objects ('users', 'attachments') should be included in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "page_offset", + "type": "integer", + "required": false, + "description": "The starting position offset for returning incidents. Use an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Specify the number of incidents to return per page. The maximum allowed value is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Defines the order of returned incidents. Use 'created' for ascending and '-created' for descending.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchIncidents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SearchDatadogIncidents", + "parameters": { + "incident_query": { + "value": "state:active AND severity:(SEV-2 OR SEV-1)", + "type": "string", + "required": true + }, + "include_related_objects": { + "value": "users,attachments", + "type": "string", + "required": false + }, + "page_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "page_size": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "-created", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchDatadogIssues", + "qualifiedName": "DatadogApi.SearchDatadogIssues", + "fullyQualifiedName": "DatadogApi.SearchDatadogIssues@2.0.0", + "description": "Search and retrieve issues from Datadog using a query.\n\nUse this tool to programmatically search for issues in your organization via Datadog. It returns a list of issues that match a specified search query, up to 100 per request.", + "parameters": [ + { + "name": "end_date", + "type": "integer", + "required": true, + "description": "End date (exclusive) for the query in milliseconds since the Unix epoch. Determines up to when the issues are retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Specify the type of the object. The value must be 'search_request'.", + "enum": null, + "inferrable": true + }, + { + "name": "search_event_query", + "type": "string", + "required": true, + "description": "Search query using the event search syntax to find relevant issues.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_millis", + "type": "integer", + "required": true, + "description": "Start date (inclusive) of the query in milliseconds since the Unix epoch.", + "enum": null, + "inferrable": true + }, + { + "name": "event_track_to_query", + "type": "string", + "required": false, + "description": "Specify the track of events to query: 'trace', 'logs', or 'rum'. Either track or persona must be provided.", + "enum": null, + "inferrable": true + }, + { + "name": "include_relationship_objects", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of relationship objects to include in the response, specified as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "search_persona", + "type": "string", + "required": false, + "description": "Persona for the search. Choose from ALL, BROWSER, MOBILE, or BACKEND. Either track(s) or persona(s) must be specified.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_by", + "type": "string", + "required": false, + "description": "Attribute to sort the search results. Options: TOTAL_COUNT, FIRST_SEEN, IMPACTED_SESSIONS, PRIORITY.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchIssues'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SearchDatadogIssues", + "parameters": { + "end_date": { + "value": 1697030400000, + "type": "integer", + "required": true + }, + "object_type": { + "value": "search_request", + "type": "string", + "required": true + }, + "search_event_query": { + "value": "status:error", + "type": "string", + "required": true + }, + "start_date_millis": { + "value": 1696944000000, + "type": "integer", + "required": true + }, + "event_track_to_query": { + "value": "logs", + "type": "string", + "required": false + }, + "include_relationship_objects": { + "value": ["user", "service"], + "type": "array", + "required": false + }, + "search_persona": { + "value": "BACKEND", + "type": "string", + "required": false + }, + "sort_results_by": { + "value": "PRIORITY", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchFlakyTests", + "qualifiedName": "DatadogApi.SearchFlakyTests", + "fullyQualifiedName": "DatadogApi.SearchFlakyTests@2.0.0", + "description": "Retrieve a list of flaky tests with pagination support.\n\nUse this tool to fetch information about flaky tests from the Flaky Test Management system. Useful for identifying tests that frequently fail or are unreliable.", + "parameters": [ + { + "name": "filter_query", + "type": "string", + "required": false, + "description": "Search query for filtering flaky tests using log syntax. Keys include 'flaky_test_state', 'flaky_test_category', '@test.name', '@test.suite', '@test.module', '@test.service', '@git.repository.id_v2', '@git.branch', '@test.codeowners', 'env'.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_flaky_tests_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of flaky tests to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor from the previous request to fetch the following results.", + "enum": null, + "inferrable": true + }, + { + "name": "request_data_type", + "type": "string", + "required": false, + "description": "Defines the data structure type for the Flaky Tests Search request. Use 'search_flaky_tests_request'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_flaky_tests", + "type": "string", + "required": false, + "description": "Sort flaky test results by specified criteria: FQN, first or last flaked, failure rate, etc. Use prefixed '-' for descending order.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchFlakyTests'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SearchFlakyTests", + "parameters": { + "filter_query": { + "value": "@test.suite:integration AND flaky_test_state:\"open\"", + "type": "string", + "required": false + }, + "maximum_flaky_tests_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_data_type": { + "value": "search_flaky_tests_request", + "type": "string", + "required": false + }, + "sort_flaky_tests": { + "value": "-failure_rate", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchRumEvents", + "qualifiedName": "DatadogApi.SearchRumEvents", + "fullyQualifiedName": "DatadogApi.SearchRumEvents@2.0.0", + "description": "Search and filter RUM events based on a query.\n\nThis tool retrieves RUM events that match a specified search query. It's useful for building complex filtering and search operations on RUM events. Results are paginated for easy navigation.", + "parameters": [ + { + "name": "filter_max_time", + "type": "string", + "required": false, + "description": "Specify the maximum event time in ISO 8601 format, mathematical expressions, or milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_events_in_response", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of RUM events to return in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_event_time", + "type": "string", + "required": false, + "description": "The minimum time for events in ISO 8601 format, math expressions, or milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Provide the cursor to fetch the next set of results from a previous query.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_search_query", + "type": "string", + "required": false, + "description": "The search query following the RUM search syntax to filter events.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the sort order for events by timestamp. Use 'timestamp' for ascending order and '-timestamp' for descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "time_offset_seconds", + "type": "integer", + "required": false, + "description": "The time offset in seconds to apply to the query.", + "enum": null, + "inferrable": true + }, + { + "name": "timezone", + "type": "string", + "required": false, + "description": "Specify the timezone as GMT, UTC, an offset (like UTC+1), or a Timezone Database identifier (like America/New_York).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchRUMEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SearchRumEvents", + "parameters": { + "filter_max_time": { + "value": "2023-10-05T23:59:59Z", + "type": "string", + "required": false + }, + "maximum_events_in_response": { + "value": 100, + "type": "integer", + "required": false + }, + "minimum_event_time": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "eyJ2IjoiMSIsInMiOiIzNzJmOsd2Y2ZlMjY1YjA2ZjQzOTFmZiJ9", + "type": "string", + "required": false + }, + "rum_search_query": { + "value": "status:error OR status:warning", + "type": "string", + "required": false + }, + "sort_order": { + "value": "-timestamp", + "type": "string", + "required": false + }, + "time_offset_seconds": { + "value": 3600, + "type": "integer", + "required": false + }, + "timezone": { + "value": "America/New_York", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchSecuritySignals", + "qualifiedName": "DatadogApi.SearchSecuritySignals", + "fullyQualifiedName": "DatadogApi.SearchSecuritySignals@2.0.0", + "description": "Retrieve security signals based on a search query.\n\nUse this tool to find security signals that match specific search criteria. Ideal for monitoring security alerts and potential threats.", + "parameters": [ + { + "name": "maximum_signals_per_response", + "type": "integer", + "required": false, + "description": "The maximum number of security signals to return in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_timestamp_for_signals", + "type": "string", + "required": false, + "description": "The latest date and time for security signals to be included in the search results, formatted as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "minimum_timestamp", + "type": "string", + "required": false, + "description": "The minimum timestamp for requested security signals. Use ISO 8601 format, e.g., '2023-10-05T14:48:00Z'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor to continue listing results from the previous query. Use it for paginating results.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "A string used to search and filter the security signals based on specific criteria.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify how to sort the security signals. Use 'timestamp' for ascending and '-timestamp' for descending order.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchSecurityMonitoringSignals'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SearchSecuritySignals", + "parameters": { + "maximum_signals_per_response": { + "value": 100, + "type": "integer", + "required": false + }, + "maximum_timestamp_for_signals": { + "value": "2023-10-10T23:59:59Z", + "type": "string", + "required": false + }, + "minimum_timestamp": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "abcdef123456", + "type": "string", + "required": false + }, + "search_query": { + "value": "alert OR threat", + "type": "string", + "required": false + }, + "sort_order": { + "value": "-timestamp", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SendInvitations", + "qualifiedName": "DatadogApi.SendInvitations", + "fullyQualifiedName": "DatadogApi.SendInvitations@2.0.0", + "description": "Invite users to join the organization via email.\n\nThis tool sends invitation emails to specified users, asking them to join the organization. It should be used when you need to extend an invite to new members through email.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SendInvitations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SendInvitations", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"emails\":[\"user1@example.com\",\"user2@example.com\"],\"role\":\"standard\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SetOnCallTeamRoutingRules", + "qualifiedName": "DatadogApi.SetOnCallTeamRoutingRules", + "fullyQualifiedName": "DatadogApi.SetOnCallTeamRoutingRules@2.0.0", + "description": "Set or update a team's On-Call routing rules in Datadog.\n\n Use this tool to configure or modify the On-Call routing rules for a specific team in Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team whose routing rules are being set. It should be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_relationships", + "type": "string", + "required": false, + "description": "Comma-separated list of relationships to include in the response. Allowed: `rules`, `rules.policy`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SetOnCallTeamRoutingRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SetOnCallTeamRoutingRules", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "engineering_team_1", + "type": "string", + "required": false + }, + "include_relationships": { + "value": "rules,rules.policy", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"routing_rules\": [{\"name\": \"Primary Rotation\", \"schedule\": {\"time_zone\": \"UTC\", \"shifts\": [{\"start\": \"2023-10-01T09:00:00Z\", \"end\": \"2023-10-01T17:00:00Z\", \"user_ids\": [\"user123\", \"user456\"]}]} }]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SetOnDemandConcurrencyCap", + "qualifiedName": "DatadogApi.SetOnDemandConcurrencyCap", + "fullyQualifiedName": "DatadogApi.SetOnDemandConcurrencyCap@2.0.0", + "description": "Update the on-demand concurrency cap setting in Datadog.\n\nUse this tool to save a new value for the on-demand concurrency cap in the Datadog Synthetics settings. This updates the maximum number of on-demand tests that can run concurrently.", + "parameters": [ + { + "name": "on_demand_concurrency_cap_value", + "type": "number", + "required": false, + "description": "Specify the new value for the on-demand concurrency cap in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SetOnDemandConcurrencyCap'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SetOnDemandConcurrencyCap", + "parameters": { + "on_demand_concurrency_cap_value": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SetServiceRuleOutcomesBatch", + "qualifiedName": "DatadogApi.SetServiceRuleOutcomesBatch", + "fullyQualifiedName": "DatadogApi.SetServiceRuleOutcomesBatch@2.0.0", + "description": "Batch set multiple service-rule outcomes.\n\nThis tool is used to set multiple service-rule outcomes in a single batched request to Datadog, making it efficient for updating multiple outcomes simultaneously.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateScorecardOutcomesBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SetServiceRuleOutcomesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"rules\":[{\"service\":\"my-service\",\"outcome\":\"warn\"},{\"service\":\"another-service\",\"outcome\":\"success\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SyncDatadogTeamsWithGithub", + "qualifiedName": "DatadogApi.SyncDatadogTeamsWithGithub", + "fullyQualifiedName": "DatadogApi.SyncDatadogTeamsWithGithub@2.0.0", + "description": "Link existing Datadog teams with GitHub teams by name matching.\n\nSynchronizes Datadog teams with GitHub teams by name, evaluating all current teams without making modifications. Requires a connected GitHub organization and appropriate permissions.", + "parameters": [ + { + "name": "source_platform", + "type": "string", + "required": true, + "description": "Specify the external source platform for team synchronization. Only \"github\" is supported.", + "enum": null, + "inferrable": true + }, + { + "name": "synchronization_type", + "type": "string", + "required": true, + "description": "Type of synchronization operation. Only \"link\" is supported to match existing teams by name.", + "enum": null, + "inferrable": true + }, + { + "name": "team_sync_bulk_type", + "type": "string", + "required": true, + "description": "Specifies the type for bulk team synchronization. Use 'team_sync_bulk'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SyncTeams'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.SyncDatadogTeamsWithGithub", + "parameters": { + "source_platform": { + "value": "github", + "type": "string", + "required": true + }, + "synchronization_type": { + "value": "link", + "type": "string", + "required": true + }, + "team_sync_bulk_type": { + "value": "team_sync_bulk", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TestSecurityMonitoringRule", + "qualifiedName": "DatadogApi.TestSecurityMonitoringRule", + "fullyQualifiedName": "DatadogApi.TestSecurityMonitoringRule@2.0.0", + "description": "Test an existing security monitoring rule in Datadog.\n\n Use this tool to test an existing security monitoring rule in Datadog by specifying the rule ID. It will return the results of the test, helping to ensure the rule is functioning as expected.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "security_monitoring_rule_id", + "type": "string", + "required": false, + "description": "The ID of the existing security monitoring rule to test in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'TestExistingSecurityMonitoringRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.TestSecurityMonitoringRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "security_monitoring_rule_id": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"test\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TestSecurityRule", + "qualifiedName": "DatadogApi.TestSecurityRule", + "fullyQualifiedName": "DatadogApi.TestSecurityRule@2.0.0", + "description": "Test a security monitoring rule.\n\nUse this tool to test a security monitoring rule within Datadog's system. It should be called when you need to verify the effectiveness or functionality of a specific rule.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'TestSecurityMonitoringRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.TestSecurityRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"rule_id\": \"12345\", \"test_value\": \"malicious_activity\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TriggerAwsResourceScan", + "qualifiedName": "DatadogApi.TriggerAwsResourceScan", + "fullyQualifiedName": "DatadogApi.TriggerAwsResourceScan@2.0.0", + "description": "Trigger a high-priority scan of an AWS resource.\n\nUse this tool to initiate a high-priority scan of a specific AWS resource. Ensure agentless scanning is activated for the AWS account containing the resource you wish to scan.", + "parameters": [ + { + "name": "aws_resource_arn", + "type": "string", + "required": true, + "description": "The ARN of the AWS resource to scan, such as EC2, Lambda, AMI, ECR, RDS, or S3.", + "enum": null, + "inferrable": true + }, + { + "name": "task_type", + "type": "string", + "required": false, + "description": "The type of the on-demand task. This must always be set to 'aws_resource'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateAwsOnDemandTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.TriggerAwsResourceScan", + "parameters": { + "aws_resource_arn": { + "value": "arn:aws:ec2:us-west-2:123456789012:instance/i-0abcdef1234567890", + "type": "string", + "required": true + }, + "task_type": { + "value": "aws_resource", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TriggerOnCallPage", + "qualifiedName": "DatadogApi.TriggerOnCallPage", + "fullyQualifiedName": "DatadogApi.TriggerOnCallPage@2.0.0", + "description": "Triggers a new On-Call Page in Datadog.\n\nUse this tool to trigger a new On-Call Page in Datadog whenever immediate attention is required. Ideal for alerting on-call team members.", + "parameters": [ + { + "name": "issue_summary", + "type": "string", + "required": false, + "description": "A short summary of the issue or context for the On-Call Page.", + "enum": null, + "inferrable": true + }, + { + "name": "on_call_page_urgency_level", + "type": "string", + "required": false, + "description": "Specifies the urgency level of the On-Call Page. Accepts 'low' or 'high'.", + "enum": null, + "inferrable": true + }, + { + "name": "page_title", + "type": "string", + "required": false, + "description": "The title of the On-Call Page. Provide a concise and clear title to identify the issue or alert.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type_for_on_call", + "type": "string", + "required": false, + "description": "Specify the type of resource for creating an On-Call Page. Use `pages`.", + "enum": null, + "inferrable": true + }, + { + "name": "tags_for_categorization", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of tags for categorizing or filtering the On-Call page.", + "enum": null, + "inferrable": true + }, + { + "name": "target_identifier", + "type": "string", + "required": false, + "description": "Identifier for the target, such as a team handle or user ID, used to specify the intended recipient of the On-Call Page.", + "enum": null, + "inferrable": true + }, + { + "name": "target_type", + "type": "string", + "required": false, + "description": "Specify the kind of target: 'team_id', 'team_handle', or 'user_id'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "unknown" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateOnCallPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.TriggerOnCallPage", + "parameters": { + "issue_summary": { + "value": "Critical database connection failure.", + "type": "string", + "required": false + }, + "on_call_page_urgency_level": { + "value": "high", + "type": "string", + "required": false + }, + "page_title": { + "value": "DB Connection Issue Alert", + "type": "string", + "required": false + }, + "resource_type_for_on_call": { + "value": "pages", + "type": "string", + "required": false + }, + "tags_for_categorization": { + "value": ["database", "critical", "urgent"], + "type": "array", + "required": false + }, + "target_identifier": { + "value": "ops-team", + "type": "string", + "required": false + }, + "target_type": { + "value": "team_handle", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UnarchiveCase", + "qualifiedName": "DatadogApi.UnarchiveCase", + "fullyQualifiedName": "DatadogApi.UnarchiveCase@2.0.0", + "description": "Unarchive a specific support case in Datadog.\n\nUse this tool to restore a previously archived support case based on its ID. This is helpful when you need to reactivate or view the details of a case that was archived.", + "parameters": [ + { + "name": "case_identifier", + "type": "string", + "required": true, + "description": "The unique identifier (UUID or key) of the case to be unarchived.", + "enum": null, + "inferrable": true + }, + { + "name": "case_resource_type", + "type": "string", + "required": false, + "description": "The resource type of the case, must be 'case'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UnarchiveCase'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UnarchiveCase", + "parameters": { + "case_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "case_resource_type": { + "value": "case", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UnassignCase", + "qualifiedName": "DatadogApi.UnassignCase", + "fullyQualifiedName": "DatadogApi.UnassignCase@2.0.0", + "description": "Unassigns a case from its current assignee.\n\nUse this tool to unassign a specific case from its current assignee within Datadog. This is helpful when you want to reassign or close a support case.", + "parameters": [ + { + "name": "case_identifier", + "type": "string", + "required": true, + "description": "The unique UUID or key representing the case to be unassigned in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "case_resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type of the case. Must be set to 'case'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UnassignCase'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UnassignCase", + "parameters": { + "case_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "case_resource_type": { + "value": "case", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UnpublishApp", + "qualifiedName": "DatadogApi.UnpublishApp", + "fullyQualifiedName": "DatadogApi.UnpublishApp@2.0.0", + "description": "Unpublish an app to remove its live version.\n\nUse this tool to unpublish an app and remove its live version. The app can still be updated and republished in the future. Requires a registered application key.", + "parameters": [ + { + "name": "app_identifier", + "type": "string", + "required": true, + "description": "The ID of the app you want to unpublish, removing its live version.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UnpublishApp'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UnpublishApp", + "parameters": { + "app_identifier": { + "value": "my-app-123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UnregisterAppKey", + "qualifiedName": "DatadogApi.UnregisterAppKey", + "fullyQualifiedName": "DatadogApi.UnregisterAppKey@2.0.0", + "description": "Unregister an application key to revoke its access.\n\nUse this tool to revoke access by unregistering a specific application key from Datadog.", + "parameters": [ + { + "name": "app_key_id", + "type": "string", + "required": true, + "description": "The unique identifier of the application key to be unregistered.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UnregisterAppKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UnregisterAppKey", + "parameters": { + "app_key_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateActionConnection", + "qualifiedName": "DatadogApi.UpdateActionConnection", + "fullyQualifiedName": "DatadogApi.UpdateActionConnection@2.0.0", + "description": "Update an existing action connection in Datadog.\n\n This tool updates an action connection in Datadog using the provided connection ID. Ensure you have a registered application key before calling this tool.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "action_connection_id", + "type": "string", + "required": false, + "description": "The unique identifier for the action connection to be updated in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateActionConnection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateActionConnection", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "action_connection_id": { + "value": "conn_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Connection\",\"type\":\"webhook\",\"url\":\"https://example.com/api\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateApmRetentionFilter", + "qualifiedName": "DatadogApi.UpdateApmRetentionFilter", + "fullyQualifiedName": "DatadogApi.UpdateApmRetentionFilter@2.0.0", + "description": "Update an APM retention filter in your organization.\n\nUse this tool to update a retention filter for APM in your Datadog organization. Default filters cannot be renamed or removed.", + "parameters": [ + { + "name": "enable_retention_filter", + "type": "boolean", + "required": true, + "description": "Set to true to enable or false to disable the retention filter.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_id", + "type": "string", + "required": true, + "description": "The unique identifier for the retention filter that you want to update.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_query", + "type": "string", + "required": true, + "description": "The search query for the retention filter, following the span search syntax.", + "enum": null, + "inferrable": true + }, + { + "name": "retention_filter_id", + "type": "string", + "required": true, + "description": "The unique ID of the retention filter to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "retention_filter_name", + "type": "string", + "required": true, + "description": "Specify the name of the retention filter to update.", + "enum": null, + "inferrable": true + }, + { + "name": "span_sample_rate", + "type": "number", + "required": true, + "description": "Sample rate to apply to spans going through this retention filter. A value of 1.0 keeps all spans matching the query. Expected to be a number between 0 and 1.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": false, + "description": "Specifies the type of the APM retention filter resource, should be 'apm_retention_filter'.", + "enum": null, + "inferrable": true + }, + { + "name": "retention_filter_type", + "type": "string", + "required": false, + "description": "Specify the type of retention filter. Valid options are: 'spans-sampling-processor', 'spans-errors-sampling-processor', 'spans-appsec-sampling-processor'.", + "enum": null, + "inferrable": true + }, + { + "name": "trace_sample_rate", + "type": "number", + "required": false, + "description": "Sample rate for traces containing spans that pass through the retention filter. A value of 1.0 keeps all matching traces.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateApmRetentionFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateApmRetentionFilter", + "parameters": { + "enable_retention_filter": { + "value": true, + "type": "boolean", + "required": true + }, + "filter_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "filter_query": { + "value": "service:a-example-service", + "type": "string", + "required": true + }, + "retention_filter_id": { + "value": "filter567", + "type": "string", + "required": true + }, + "retention_filter_name": { + "value": "Example Retention Filter", + "type": "string", + "required": true + }, + "span_sample_rate": { + "value": 0.5, + "type": "integer", + "required": true + }, + "resource_type": { + "value": "apm_retention_filter", + "type": "string", + "required": false + }, + "retention_filter_type": { + "value": "spans-sampling-processor", + "type": "string", + "required": false + }, + "trace_sample_rate": { + "value": 0.8, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAppVersion", + "qualifiedName": "DatadogApi.UpdateAppVersion", + "fullyQualifiedName": "DatadogApi.UpdateAppVersion@2.0.0", + "description": "Update an app by creating a new version.\n\n Use this tool to update an existing app by creating a new version through Datadog's API. Ensure you have the necessary registered application key or have configured permissions in the UI before making this call.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "application_id", + "type": "string", + "required": false, + "description": "The unique ID of the app to update. Required for creating a new version. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateApp'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateAppVersion", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "application_id": { + "value": "app-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"version\":\"2.0\",\"features\":{\"newFeature\":true}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateArchiveConfiguration", + "qualifiedName": "DatadogApi.UpdateArchiveConfiguration", + "fullyQualifiedName": "DatadogApi.UpdateArchiveConfiguration@2.0.0", + "description": "Replace an existing archive configuration in Datadog.\n\n Use this tool to update an archive configuration by replacing the current settings with new ones for a specified archive in your Datadog organization.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "archive_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the archive you wish to update in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateLogsArchive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateArchiveConfiguration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "archive_identifier": { + "value": "archive-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"type\":\"s3\",\"bucket\":\"my-archive-bucket\",\"prefix\":\"archive/2023/\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAwsAccountIntegration", + "qualifiedName": "DatadogApi.UpdateAwsAccountIntegration", + "fullyQualifiedName": "DatadogApi.UpdateAwsAccountIntegration@2.0.0", + "description": "Update an AWS Account Integration configuration.\n\n Use this tool to update the configuration of an AWS Account Integration by specifying the configuration ID. Ideal for modifying existing AWS integration settings.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "aws_account_integration_config_id", + "type": "string", + "required": false, + "description": "Unique Datadog ID for the AWS Account Integration Config. Retrieve using the List all AWS integrations endpoint and query by AWS Account ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateAWSAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateAwsAccountIntegration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "aws_account_integration_config_id": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"enabled\": true, \"account_alias\": \"my-aws-account\", \"regions\": [\"us-east-1\", \"us-west-2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAwsCurConfigStatus", + "qualifiedName": "DatadogApi.UpdateAwsCurConfigStatus", + "fullyQualifiedName": "DatadogApi.UpdateAwsCurConfigStatus@2.0.0", + "description": "Updates status or configuration of an AWS CUR config.\n\nUse this tool to update the active/archived status or account filtering settings of an AWS Cost and Usage Report (CUR) configuration in Datadog for a specified cloud account.", + "parameters": [ + { + "name": "cloud_account_id", + "type": "integer", + "required": true, + "description": "The ID of the AWS cloud account to configure in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "automatic_inclusion_of_new_accounts", + "type": "boolean", + "required": false, + "description": "Set to true to automatically include new member accounts by default in your billing dataset.", + "enum": null, + "inferrable": true + }, + { + "name": "aws_cur_config_request_type", + "type": "string", + "required": false, + "description": "Specify the type of AWS CUR config Patch Request, usually 'aws_cur_config_patch_request'.", + "enum": null, + "inferrable": true + }, + { + "name": "excluded_aws_account_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of AWS account IDs to exclude from the billing dataset when \"include_new_accounts\" is true.", + "enum": null, + "inferrable": true + }, + { + "name": "included_aws_accounts", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of AWS account IDs to be included in the billing dataset when `include_new_accounts` is `false`.", + "enum": null, + "inferrable": true + }, + { + "name": "is_cost_management_enabled", + "type": "boolean", + "required": false, + "description": "Indicates whether the Cloud Cost Management account is enabled. Accepts a boolean value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCostAWSCURConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateAwsCurConfigStatus", + "parameters": { + "cloud_account_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "automatic_inclusion_of_new_accounts": { + "value": true, + "type": "boolean", + "required": false + }, + "aws_cur_config_request_type": { + "value": "aws_cur_config_patch_request", + "type": "string", + "required": false + }, + "excluded_aws_account_ids": { + "value": ["9876543210", "1234567890"], + "type": "array", + "required": false + }, + "included_aws_accounts": { + "value": ["1029384756", "5647382910"], + "type": "array", + "required": false + }, + "is_cost_management_enabled": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAwsScanOptions", + "qualifiedName": "DatadogApi.UpdateAwsScanOptions", + "fullyQualifiedName": "DatadogApi.UpdateAwsScanOptions@2.0.0", + "description": "Update Agentless scan options for an AWS account.\n\nThis tool updates the Agentless scan settings for a specified AWS account. It should be called when modifications to scan options are needed for security or compliance purposes.", + "parameters": [ + { + "name": "account_identifier", + "type": "string", + "required": true, + "description": "The ID of the AWS account that needs scan options updated.", + "enum": null, + "inferrable": true + }, + { + "name": "aws_account_id", + "type": "string", + "required": true, + "description": "The ID of the AWS account for which to update scan options.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_lambda_scanning", + "type": "boolean", + "required": false, + "description": "Set to true to enable scanning of AWS Lambda functions.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_sensitive_data_scanning", + "type": "boolean", + "required": false, + "description": "Enable scanning for sensitive data in the AWS account. Set to true to enable.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_vulnerability_scanning_for_containers", + "type": "boolean", + "required": false, + "description": "Set to true to enable scanning for container vulnerabilities.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_vulnerability_scanning_in_hosts", + "type": "boolean", + "required": false, + "description": "Enable scanning for vulnerabilities in hosts. Set to true to enable, false to disable.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type. Must be set to `aws_scan_options`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateAwsScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateAwsScanOptions", + "parameters": { + "account_identifier": { + "value": "123456789012", + "type": "string", + "required": true + }, + "aws_account_id": { + "value": "987654321098", + "type": "string", + "required": true + }, + "enable_lambda_scanning": { + "value": true, + "type": "boolean", + "required": false + }, + "enable_sensitive_data_scanning": { + "value": false, + "type": "boolean", + "required": false + }, + "enable_vulnerability_scanning_for_containers": { + "value": true, + "type": "boolean", + "required": false + }, + "enable_vulnerability_scanning_in_hosts": { + "value": true, + "type": "boolean", + "required": false + }, + "resource_type": { + "value": "aws_scan_options", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAzureConfigStatus", + "qualifiedName": "DatadogApi.UpdateAzureConfigStatus", + "fullyQualifiedName": "DatadogApi.UpdateAzureConfigStatus@2.0.0", + "description": "Update status of Azure config to active or archived.\n\nThis tool updates the status of a specified Azure configuration to either active or archived. It should be called when there is a need to change the operational state of an Azure config.", + "parameters": [ + { + "name": "cloud_account_id", + "type": "integer", + "required": true, + "description": "The identifier for the Azure Cloud account whose configuration status is being updated.", + "enum": null, + "inferrable": true + }, + { + "name": "azure_config_patch_request_type", + "type": "string", + "required": false, + "description": "Specify the type of Azure config Patch Request, typically 'azure_uc_config_patch_request'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_cloud_cost_management", + "type": "boolean", + "required": false, + "description": "Set to true to enable the Cloud Cost Management account, false to disable it.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCostAzureUCConfigs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateAzureConfigStatus", + "parameters": { + "cloud_account_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "azure_config_patch_request_type": { + "value": "azure_uc_config_patch_request", + "type": "string", + "required": false + }, + "enable_cloud_cost_management": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAzureScanOptions", + "qualifiedName": "DatadogApi.UpdateAzureScanOptions", + "fullyQualifiedName": "DatadogApi.UpdateAzureScanOptions@2.0.0", + "description": "Update Agentless scan options for an Azure subscription.\n\nUse this tool to update the Agentless scanning preferences for a specified Azure subscription in Datadog.", + "parameters": [ + { + "name": "azure_subscription_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Azure subscription to update scan options.", + "enum": null, + "inferrable": true + }, + { + "name": "azure_scan_options_resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type for Azure scan options, must be 'azure_scan_options'.", + "enum": null, + "inferrable": true + }, + { + "name": "azure_subscription_identifier", + "type": "string", + "required": false, + "description": "The Azure subscription ID for which to update scan options.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_container_vulnerability_scanning", + "type": "boolean", + "required": false, + "description": "Enable or disable container vulnerability scanning. Set to true to enable, false to disable.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_scanning_for_host_vulnerabilities", + "type": "boolean", + "required": false, + "description": "Enable or disable scanning for vulnerabilities in host operating systems.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateAzureScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateAzureScanOptions", + "parameters": { + "azure_subscription_id": { + "value": "12345678-1234-1234-1234-123456789abc", + "type": "string", + "required": true + }, + "azure_scan_options_resource_type": { + "value": "azure_scan_options", + "type": "string", + "required": false + }, + "azure_subscription_identifier": { + "value": "sub-12345678", + "type": "string", + "required": false + }, + "enable_container_vulnerability_scanning": { + "value": true, + "type": "boolean", + "required": false + }, + "enable_scanning_for_host_vulnerabilities": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCaseAttributes", + "qualifiedName": "DatadogApi.UpdateCaseAttributes", + "fullyQualifiedName": "DatadogApi.UpdateCaseAttributes@2.0.0", + "description": "Update attributes of a specific case.\n\n Use this tool to update the attributes of a specific case in Datadog by providing the case ID and new attribute values.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "case_identifier", + "type": "string", + "required": false, + "description": "The unique identifier or key for the case to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateCaseAttributes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "case_identifier": { + "value": "case_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"resolved\",\"priority\":\"high\",\"owner\":\"team@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCaseCustomAttribute", + "qualifiedName": "DatadogApi.UpdateCaseCustomAttribute", + "fullyQualifiedName": "DatadogApi.UpdateCaseCustomAttribute@2.0.0", + "description": "Update a custom attribute for a specific case in Datadog.\n\n Use this tool to update the custom attribute of a specific case by providing the case ID and the custom attribute key in Datadog. It should be called when you need to modify the properties of an existing case.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "case_identifier", + "type": "string", + "required": false, + "description": "The UUID or key of the case to be updated. This identifies the specific case in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_key", + "type": "string", + "required": false, + "description": "The key for the custom attribute of the case to be updated. Provide the exact key name to ensure accurate updates. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCaseCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateCaseCustomAttribute", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "case_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "custom_attribute_key": { + "value": "severity_level", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"value\":\"high\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCaseDescription", + "qualifiedName": "DatadogApi.UpdateCaseDescription", + "fullyQualifiedName": "DatadogApi.UpdateCaseDescription@2.0.0", + "description": "Update the description of a case in Datadog.\n\nUse this tool to modify the description of a specific case in Datadog by providing the case ID and new description details.", + "parameters": [ + { + "name": "case_uuid_or_key", + "type": "string", + "required": true, + "description": "The unique identifier (UUID or key) for the specific case you want to update in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "new_case_description", + "type": "string", + "required": true, + "description": "Provide the new description text for the case you wish to update. This replaces the current case description.", + "enum": null, + "inferrable": true + }, + { + "name": "case_resource_type", + "type": "string", + "required": false, + "description": "Specify the type of resource for the case. It must be 'case'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCaseDescription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateCaseDescription", + "parameters": { + "case_uuid_or_key": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "new_case_description": { + "value": "Updated description for case regarding performance issues.", + "type": "string", + "required": true + }, + "case_resource_type": { + "value": "case", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCasePriority", + "qualifiedName": "DatadogApi.UpdateCasePriority", + "fullyQualifiedName": "DatadogApi.UpdateCasePriority@2.0.0", + "description": "Update the priority of a specific case.\n\nThis tool updates the priority level of a given case in the system. It should be called when a change in priority is required for case management.", + "parameters": [ + { + "name": "case_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the case, either UUID or key.", + "enum": null, + "inferrable": true + }, + { + "name": "case_priority", + "type": "string", + "required": false, + "description": "Specify the priority level of the case. Valid options are: 'NOT_DEFINED', 'P1', 'P2', 'P3', 'P4', 'P5'.", + "enum": null, + "inferrable": true + }, + { + "name": "case_resource_type", + "type": "string", + "required": false, + "description": "Specifies the type of resource, should be set to 'case'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdatePriority'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateCasePriority", + "parameters": { + "case_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "case_priority": { + "value": "P2", + "type": "string", + "required": false + }, + "case_resource_type": { + "value": "case", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCaseStatus", + "qualifiedName": "DatadogApi.UpdateCaseStatus", + "fullyQualifiedName": "DatadogApi.UpdateCaseStatus@2.0.0", + "description": "Update the status of a specific case in Datadog.\n\nUse this tool to change the status of an existing case in Datadog. It should be called when you need to update a case's progress or condition to a new state.", + "parameters": [ + { + "name": "case_status", + "type": "string", + "required": true, + "description": "Specify the status of the case. Valid values are 'OPEN', 'IN_PROGRESS', 'CLOSED'.", + "enum": null, + "inferrable": true + }, + { + "name": "case_uuid_or_key", + "type": "string", + "required": true, + "description": "The unique identifier or key for the case to update its status in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "case_resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type of the case. Must be 'case'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateCaseStatus", + "parameters": { + "case_status": { + "value": "IN_PROGRESS", + "type": "string", + "required": true + }, + "case_uuid_or_key": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "case_resource_type": { + "value": "case", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCaseTitle", + "qualifiedName": "DatadogApi.UpdateCaseTitle", + "fullyQualifiedName": "DatadogApi.UpdateCaseTitle@2.0.0", + "description": "Update the title of a specific case by ID.\n\nUse this tool to change the title of a case in Datadog by providing the specific case ID.", + "parameters": [ + { + "name": "case_identifier", + "type": "string", + "required": true, + "description": "The unique identifier (UUID or key) of the case whose title you want to update.", + "enum": null, + "inferrable": true + }, + { + "name": "new_case_title", + "type": "string", + "required": true, + "description": "The new title for the case to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "case_resource_type", + "type": "string", + "required": false, + "description": "Specify the type of the case resource, which should be 'case'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCaseTitle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateCaseTitle", + "parameters": { + "case_identifier": { + "value": "b1e1a8e6-4fa3-4f6c-8bbc-1d7c5e8a1c92", + "type": "string", + "required": true + }, + "new_case_title": { + "value": "Urgent: System Outage Investigation", + "type": "string", + "required": true + }, + "case_resource_type": { + "value": "case", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCloudflareAccount", + "qualifiedName": "DatadogApi.UpdateCloudflareAccount", + "fullyQualifiedName": "DatadogApi.UpdateCloudflareAccount@2.0.0", + "description": "Update details of a Cloudflare account.\n\nUse this tool to update the information of an existing Cloudflare account linked with Datadog. It should be called whenever modifications to a Cloudflare account are required.", + "parameters": [ + { + "name": "cloudflare_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Cloudflare account to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "allowed_resource_types_for_metrics", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of resource types ('web', 'dns', 'lb', 'worker') to allow for metrics collection.", + "enum": null, + "inferrable": true + }, + { + "name": "cloudflare_account_email", + "type": "string", + "required": false, + "description": "The email associated with the Cloudflare account. Required if using an API key instead of a token.", + "enum": null, + "inferrable": true + }, + { + "name": "cloudflare_account_name", + "type": "string", + "required": false, + "description": "The name of the Cloudflare account to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "cloudflare_api_key", + "type": "string", + "required": false, + "description": "The API key for the Cloudflare account, required for authentication.", + "enum": null, + "inferrable": true + }, + { + "name": "json_api_type", + "type": "string", + "required": false, + "description": "The JSON:API type for this API. Always use `cloudflare-accounts`.", + "enum": null, + "inferrable": true + }, + { + "name": "zone_allowlist", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of zone identifiers to restrict which metrics can be pulled for Cloudflare.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCloudflareAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateCloudflareAccount", + "parameters": { + "cloudflare_account_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "allowed_resource_types_for_metrics": { + "value": ["web", "dns"], + "type": "array", + "required": false + }, + "cloudflare_account_email": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "cloudflare_account_name": { + "value": "My Cloudflare Account", + "type": "string", + "required": false + }, + "cloudflare_api_key": { + "value": "your_cloudflare_api_key", + "type": "string", + "required": false + }, + "json_api_type": { + "value": "cloudflare-accounts", + "type": "string", + "required": false + }, + "zone_allowlist": { + "value": ["zone1", "zone2"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCloudWorkloadSecurityAgentRule", + "qualifiedName": "DatadogApi.UpdateCloudWorkloadSecurityAgentRule", + "fullyQualifiedName": "DatadogApi.UpdateCloudWorkloadSecurityAgentRule@2.0.0", + "description": "Update a specific cloud workload security agent rule.\n\n Use this tool to update a particular security agent rule for cloud workloads. This should only be used for the Government (US1-FED) site and returns the updated agent rule object upon success.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "agent_rule_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the agent rule to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCloudWorkloadSecurityAgentRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateCloudWorkloadSecurityAgentRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "agent_rule_identifier": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Rule\", \"conditions\": [\"condition1\", \"condition2\"], \"actions\": [\"action1\", \"action2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateConfluentAccount", + "qualifiedName": "DatadogApi.UpdateConfluentAccount", + "fullyQualifiedName": "DatadogApi.UpdateConfluentAccount@2.0.0", + "description": "Updates the Confluent account details.\n\nUse this tool to update the details of a Confluent account by providing the account ID. It ensures the account information is current and accurately reflects any required changes.", + "parameters": [ + { + "name": "confluent_account_id", + "type": "string", + "required": true, + "description": "The unique ID of the Confluent account to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "confluent_api_key", + "type": "string", + "required": true, + "description": "Provide the API key associated with your Confluent account.", + "enum": null, + "inferrable": true + }, + { + "name": "confluent_api_secret", + "type": "string", + "required": true, + "description": "The API secret for the Confluent account. Required to authenticate and update the account details.", + "enum": null, + "inferrable": true + }, + { + "name": "api_type", + "type": "string", + "required": false, + "description": "Set this to `confluent-cloud-accounts` to specify the JSON:API type for the update request.", + "enum": null, + "inferrable": true + }, + { + "name": "tags_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of tag strings for the account. Use single keys or key-value pairs separated by a colon.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateConfluentAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateConfluentAccount", + "parameters": { + "confluent_account_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "confluent_api_key": { + "value": "myConfluentApiKey123", + "type": "string", + "required": true + }, + "confluent_api_secret": { + "value": "myConfluentApiSecret123", + "type": "string", + "required": true + }, + "api_type": { + "value": "confluent-cloud-accounts", + "type": "string", + "required": false + }, + "tags_list": { + "value": ["env:production", "team:devops"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateConfluentResource", + "qualifiedName": "DatadogApi.UpdateConfluentResource", + "fullyQualifiedName": "DatadogApi.UpdateConfluentResource@2.0.0", + "description": "Update a Confluent resource linked to a specified account.\n\nUse this tool to update a Confluent resource associated with a given account by specifying the resource and account IDs.", + "parameters": [ + { + "name": "confluent_account_id", + "type": "string", + "required": true, + "description": "The ID of the Confluent account associated with the resource to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "confluent_resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Confluent resource to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The ID of the Confluent account resource to update.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": true, + "description": "Specifies the resource type of the Confluent resource. Valid values are 'kafka', 'connector', 'ksql', or 'schema_registry'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_custom_metrics", + "type": "boolean", + "required": false, + "description": "Set to true to enable the `custom.consumer_lag_offset` metric which includes extra metric tags.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_data_type", + "type": "string", + "required": false, + "description": "The JSON:API type for this request. Must be 'confluent-cloud-resources'.", + "enum": null, + "inferrable": true + }, + { + "name": "tags_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of tags for the resource. Each tag can be a single key or a key-value pair separated by a colon.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateConfluentResource'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateConfluentResource", + "parameters": { + "confluent_account_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "confluent_resource_id": { + "value": "abc-123-def-456", + "type": "string", + "required": true + }, + "resource_id": { + "value": "res-7891011", + "type": "string", + "required": true + }, + "resource_type": { + "value": "kafka", + "type": "string", + "required": true + }, + "enable_custom_metrics": { + "value": true, + "type": "boolean", + "required": false + }, + "resource_data_type": { + "value": "confluent-cloud-resources", + "type": "string", + "required": false + }, + "tags_list": { + "value": ["env:production", "version:1.0"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCustomAllocationRule", + "qualifiedName": "DatadogApi.UpdateCustomAllocationRule", + "fullyQualifiedName": "DatadogApi.UpdateCustomAllocationRule@2.0.0", + "description": "Update custom allocation rules with new filters and strategies.\n\n This tool updates an existing custom allocation rule in Datadog by modifying filters and allocation strategies. It supports various allocation strategies like PROPORTIONAL, EVEN, TIMESERIES, PERCENT, and USAGE_METRIC. Users should specify strategy methods and filter conditions to redefine the allocation. Appropriate strategy fields and filter operators must be used according to the needs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "custom_allocation_rule_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the custom allocation rule to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCustomAllocationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateCustomAllocationRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "custom_allocation_rule_id": { + "value": 123456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"filters\": {\"tag\": \"env:production\"}, \"strategy\": \"PROPORTIONAL\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCustomFramework", + "qualifiedName": "DatadogApi.UpdateCustomFramework", + "fullyQualifiedName": "DatadogApi.UpdateCustomFramework@2.0.0", + "description": "Update an existing custom security management framework.\n\n Use this tool to make changes to an existing custom framework within Datadog's cloud security management. Invoke this when you need to update framework details identified by a specific handle and version.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "framework_handle", + "type": "string", + "required": false, + "description": "The unique identifier for the framework to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "framework_version", + "type": "string", + "required": false, + "description": "Specifies the version of the framework to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCustomFramework'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateCustomFramework", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "framework_handle": { + "value": "security_framework_123", + "type": "string", + "required": false + }, + "framework_version": { + "value": "v1.0", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Security Framework\",\"description\":\"Updated description of the framework.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDashboardListItems", + "qualifiedName": "DatadogApi.UpdateDashboardListItems", + "fullyQualifiedName": "DatadogApi.UpdateDashboardListItems@2.0.0", + "description": "Update dashboards in an existing dashboard list.\n\n Use this tool to update the dashboards contained in a specific dashboard list within Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_list_identifier", + "type": "integer", + "required": false, + "description": "ID of the dashboard list to update with new items. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateDashboardListItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateDashboardListItems", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_list_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"dashboards\": [\"dashboard_id_1\", \"dashboard_id_2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDatadogApiKey", + "qualifiedName": "DatadogApi.UpdateDatadogApiKey", + "fullyQualifiedName": "DatadogApi.UpdateDatadogApiKey@2.0.0", + "description": "Update an API key in Datadog.\n\nThis tool updates an existing API key in Datadog. It should be called when you need to modify the details of an API key for access permissions or other configurations within the Datadog platform.", + "parameters": [ + { + "name": "api_key_id", + "type": "string", + "required": true, + "description": "The unique identifier for the API key to be updated in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "api_key_name", + "type": "string", + "required": true, + "description": "The new name for the API key to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "key_id", + "type": "string", + "required": true, + "description": "ID of the API key to be updated in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "api_key_category", + "type": "string", + "required": false, + "description": "The category of the API key for the update operation.", + "enum": null, + "inferrable": true + }, + { + "name": "api_keys_resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type for API keys. Must be 'api_keys'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_remote_config_read", + "type": "boolean", + "required": false, + "description": "Enable remote config read for the API key. Use true to enable, false to disable.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateAPIKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateDatadogApiKey", + "parameters": { + "api_key_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "api_key_name": { + "value": "Updated API Key Name", + "type": "string", + "required": true + }, + "key_id": { + "value": "abcd1234efgh5678", + "type": "string", + "required": true + }, + "api_key_category": { + "value": "Development", + "type": "string", + "required": false + }, + "api_keys_resource_type": { + "value": "api_keys", + "type": "string", + "required": false + }, + "enable_remote_config_read": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDatadogAppKey", + "qualifiedName": "DatadogApi.UpdateDatadogAppKey", + "fullyQualifiedName": "DatadogApi.UpdateDatadogAppKey@2.0.0", + "description": "Edit a Datadog application key by ID.\n\nUse this tool to update details of a specific Datadog application key by providing its ID. Useful for modifying configurations or permissions of the application key.", + "parameters": [ + { + "name": "app_key_id", + "type": "string", + "required": true, + "description": "The unique ID of the Datadog application key to be edited.", + "enum": null, + "inferrable": true + }, + { + "name": "application_key_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Datadog application key that needs to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "application_key_name", + "type": "string", + "required": false, + "description": "Name of the application key to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "application_key_scopes", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of scopes to grant the application key. Each scope is a string specifying a permission level.", + "enum": null, + "inferrable": true + }, + { + "name": "application_keys_resource_type", + "type": "string", + "required": false, + "description": "Fixed value for the resource type, which should always be 'application_keys'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateApplicationKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateDatadogAppKey", + "parameters": { + "app_key_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "application_key_id": { + "value": "987654321", + "type": "string", + "required": true + }, + "application_key_name": { + "value": "NewApplicationKey", + "type": "string", + "required": false + }, + "application_key_scopes": { + "value": ["read", "write", "delete"], + "type": "array", + "required": false + }, + "application_keys_resource_type": { + "value": "application_keys", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDatadogUser", + "qualifiedName": "DatadogApi.UpdateDatadogUser", + "fullyQualifiedName": "DatadogApi.UpdateDatadogUser@2.0.0", + "description": "Update a user's information in Datadog.\n\nUse this tool to edit the details of a user in Datadog. It requires an admin user's application key. Ideal for managing user access or updating user profiles as needed.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier for the user to be updated in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the user to be updated in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "disable_user", + "type": "boolean", + "required": false, + "description": "Boolean value to set if the user is disabled (true) or enabled (false).", + "enum": null, + "inferrable": true + }, + { + "name": "user_email", + "type": "string", + "required": false, + "description": "The email address of the user to be updated in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "user_name", + "type": "string", + "required": false, + "description": "The name of the user to be updated in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "user_resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type for the user. Must be set to 'users'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateDatadogUser", + "parameters": { + "user_id": { + "value": "12345", + "type": "string", + "required": true + }, + "user_identifier": { + "value": "john.doe@example.com", + "type": "string", + "required": true + }, + "disable_user": { + "value": false, + "type": "boolean", + "required": false + }, + "user_email": { + "value": "john.doe@example.com", + "type": "string", + "required": false + }, + "user_name": { + "value": "John Doe", + "type": "string", + "required": false + }, + "user_resource_type": { + "value": "users", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDatastoreAttributes", + "qualifiedName": "DatadogApi.UpdateDatastoreAttributes", + "fullyQualifiedName": "DatadogApi.UpdateDatastoreAttributes@2.0.0", + "description": "Update attributes of an existing datastore in Datadog.\n\nUse this tool to update details of an existing datastore in Datadog by specifying its ID.", + "parameters": [ + { + "name": "datastore_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the datastore to update in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "datastore_description", + "type": "string", + "required": false, + "description": "A human-readable description for the datastore. Use this to provide additional information or context about the datastore.", + "enum": null, + "inferrable": true + }, + { + "name": "datastore_display_name", + "type": "string", + "required": false, + "description": "The display name of the datastore to be updated. Provide a concise, human-readable name.", + "enum": null, + "inferrable": true + }, + { + "name": "datastore_update_id", + "type": "string", + "required": false, + "description": "The unique identifier for the datastore that needs to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type_for_datastores", + "type": "string", + "required": false, + "description": "Specifies the resource type for datastores. Must be 'datastores'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateDatastore'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateDatastoreAttributes", + "parameters": { + "datastore_unique_identifier": { + "value": "ds-12345", + "type": "string", + "required": true + }, + "datastore_description": { + "value": "Primary customer data store", + "type": "string", + "required": false + }, + "datastore_display_name": { + "value": "CustomerDB", + "type": "string", + "required": false + }, + "datastore_update_id": { + "value": "update-67890", + "type": "string", + "required": false + }, + "resource_type_for_datastores": { + "value": "datastores", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDatastoreItem", + "qualifiedName": "DatadogApi.UpdateDatastoreItem", + "fullyQualifiedName": "DatadogApi.UpdateDatastoreItem@2.0.0", + "description": "Partially update an item in a datastore by its key.\n\n Use this tool to modify an existing item in a datastore by specifying its key. It's ideal for making incremental changes without altering the entire record, leveraging Datadog's API.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "datastore_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the datastore that contains the item to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateDatastoreItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateDatastoreItem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "datastore_identifier": { + "value": "my_datastore_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"updated_item_name\", \"value\": 42}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDeviceTags", + "qualifiedName": "DatadogApi.UpdateDeviceTags", + "fullyQualifiedName": "DatadogApi.UpdateDeviceTags@2.0.0", + "description": "Update the tags for a specified device.\n\nUse this tool to modify the tags associated with a device in Datadog. It's called when there's a need to update or change the tags for device management. The tool confirms the modifications made to the device tags.", + "parameters": [ + { + "name": "device_identifier", + "type": "string", + "required": true, + "description": "The ID of the device for which tags are being updated.", + "enum": null, + "inferrable": true + }, + { + "name": "device_id_for_tags", + "type": "string", + "required": false, + "description": "The ID of the device for which the tags will be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "device_tags", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of tags to update for the device. Each tag should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": false, + "description": "The type of resource, always set to 'tags'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateDeviceUserTags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateDeviceTags", + "parameters": { + "device_identifier": { + "value": "device12345", + "type": "string", + "required": true + }, + "device_id_for_tags": { + "value": "tagDevice56789", + "type": "string", + "required": false + }, + "device_tags": { + "value": ["env:production", "role:database", "team:backend"], + "type": "array", + "required": false + }, + "resource_type": { + "value": "tags", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDomainAllowlist", + "qualifiedName": "DatadogApi.UpdateDomainAllowlist", + "fullyQualifiedName": "DatadogApi.UpdateDomainAllowlist@2.0.0", + "description": "Update the organization's domain allowlist to control domain access.", + "parameters": [ + { + "name": "allowed_domains_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of domains to include in the organization's email domain allowlist.", + "enum": null, + "inferrable": true + }, + { + "name": "email_domain_allowlist_type", + "type": "string", + "required": false, + "description": "Type of email domain allowlist. Valid value: 'domain_allowlist'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_email_domain_allowlist", + "type": "boolean", + "required": false, + "description": "Set to true to enable the email domain allowlist for the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the organization to update the domain allowlist.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'PatchDomainAllowlist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateDomainAllowlist", + "parameters": { + "allowed_domains_list": { + "value": ["example.com", "sample.org"], + "type": "array", + "required": false + }, + "email_domain_allowlist_type": { + "value": "domain_allowlist", + "type": "string", + "required": false + }, + "enable_email_domain_allowlist": { + "value": true, + "type": "boolean", + "required": false + }, + "organization_identifier": { + "value": "org-123456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDowntime", + "qualifiedName": "DatadogApi.UpdateDowntime", + "fullyQualifiedName": "DatadogApi.UpdateDowntime@2.0.0", + "description": "Update downtime by its ID in Datadog.\n\n Use this tool to modify an existing downtime configuration in Datadog by providing the downtime ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "downtime_id", + "type": "string", + "required": false, + "description": "The unique identifier of the downtime to be updated in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateDowntime'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateDowntime", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "downtime_id": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"message\": \"Updated downtime message\", \"scope\": [\"env:production\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateFastlyAccount", + "qualifiedName": "DatadogApi.UpdateFastlyAccount", + "fullyQualifiedName": "DatadogApi.UpdateFastlyAccount@2.0.0", + "description": "Updates a Fastly account via Datadog integration.\n\nCall this tool to update details of a Fastly account through the Datadog API. Useful for managing Fastly integration settings.", + "parameters": [ + { + "name": "fastly_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Fastly account to update.", + "enum": null, + "inferrable": true + }, + { + "name": "fastly_account_name", + "type": "string", + "required": false, + "description": "The name of the Fastly account to update.", + "enum": null, + "inferrable": true + }, + { + "name": "fastly_api_key", + "type": "string", + "required": false, + "description": "The API key for the Fastly account to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "json_api_type", + "type": "string", + "required": false, + "description": "Specifies the type for the Fastly account API. Must be 'fastly-accounts'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateFastlyAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateFastlyAccount", + "parameters": { + "fastly_account_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "fastly_account_name": { + "value": "MyFastlyAccount", + "type": "string", + "required": false + }, + "fastly_api_key": { + "value": "abc123xyz456", + "type": "string", + "required": false + }, + "json_api_type": { + "value": "fastly-accounts", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateFastlyService", + "qualifiedName": "DatadogApi.UpdateFastlyService", + "fullyQualifiedName": "DatadogApi.UpdateFastlyService@2.0.0", + "description": "Update a Fastly service for an account in Datadog.\n\nUse this tool to update specific details of a Fastly service associated with an account in Datadog. Useful for modifying service configurations.", + "parameters": [ + { + "name": "fastly_account_id", + "type": "string", + "required": true, + "description": "The unique ID of the Fastly account to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "fastly_service_id", + "type": "string", + "required": true, + "description": "Provide the Fastly Service ID to specify which service to update.", + "enum": null, + "inferrable": true + }, + { + "name": "fastly_service_identifier", + "type": "string", + "required": true, + "description": "The ID of the Fastly service to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "fastly_service_json_api_type", + "type": "string", + "required": false, + "description": "The JSON:API type for this API, which should always be `fastly-services`.", + "enum": null, + "inferrable": true + }, + { + "name": "fastly_service_tags", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of tags to update the Fastly service with. Each tag should be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateFastlyService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateFastlyService", + "parameters": { + "fastly_account_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "fastly_service_id": { + "value": "def456", + "type": "string", + "required": true + }, + "fastly_service_identifier": { + "value": "ghi789", + "type": "string", + "required": true + }, + "fastly_service_json_api_type": { + "value": "fastly-services", + "type": "string", + "required": false + }, + "fastly_service_tags": { + "value": ["production", "cdn", "fastly"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateGcpScanOptions", + "qualifiedName": "DatadogApi.UpdateGcpScanOptions", + "fullyQualifiedName": "DatadogApi.UpdateGcpScanOptions@2.0.0", + "description": "Update scan options for a GCP project in Datadog.\n\nUse this tool to update the agentless scanning options for an activated Google Cloud Platform project in Datadog. It should be called when changes to the existing scan configuration are needed.", + "parameters": [ + { + "name": "gcp_project_id", + "type": "string", + "required": true, + "description": "The Google Cloud Platform project ID to update scan options for.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_container_vulnerability_scanning", + "type": "boolean", + "required": false, + "description": "Enable (True) or disable (False) scanning for vulnerabilities in containers.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_host_vulnerability_scanning", + "type": "boolean", + "required": false, + "description": "Indicate if scanning for vulnerabilities in host operating systems is enabled.", + "enum": null, + "inferrable": true + }, + { + "name": "gcp_scan_options_resource_type", + "type": "string", + "required": false, + "description": "Specifies the GCP scan options resource type, typically set to 'gcp_scan_options'.", + "enum": null, + "inferrable": true + }, + { + "name": "google_cloud_project_id", + "type": "string", + "required": false, + "description": "The ID of the GCP project to update scan options for, used as an identifier.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateGcpScanOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateGcpScanOptions", + "parameters": { + "gcp_project_id": { + "value": "my-gcp-project-123", + "type": "string", + "required": true + }, + "enable_container_vulnerability_scanning": { + "value": true, + "type": "boolean", + "required": false + }, + "enable_host_vulnerability_scanning": { + "value": false, + "type": "boolean", + "required": false + }, + "gcp_scan_options_resource_type": { + "value": "gcp_scan_options", + "type": "string", + "required": false + }, + "google_cloud_project_id": { + "value": "my-gcp-project-123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateGcpStsAccount", + "qualifiedName": "DatadogApi.UpdateGcpStsAccount", + "fullyQualifiedName": "DatadogApi.UpdateGcpStsAccount@2.0.0", + "description": "Update an STS-enabled GCP service account configuration.\n\n Call this tool to modify the configuration of an existing STS-enabled Google Cloud Platform service account in Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "service_account_id", + "type": "string", + "required": false, + "description": "Unique ID of your GCP STS-enabled service account to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateGCPSTSAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateGcpStsAccount", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "service_account_id": { + "value": "abc123-gcp-service-account", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"display_name\": \"Updated Service Account\", \"permissions\": [\"roles/storage.admin\", \"roles/pubsub.admin\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateGcpUsageCostStatus", + "qualifiedName": "DatadogApi.UpdateGcpUsageCostStatus", + "fullyQualifiedName": "DatadogApi.UpdateGcpUsageCostStatus@2.0.0", + "description": "Update the status of a GCP Usage Cost config.\n\nThis tool updates the status of a Google Cloud Platform Usage Cost configuration in Datadog, setting it as active or archived. It should be called when you need to change the operational status of a specific GCP cost configuration based on the cloud account ID.", + "parameters": [ + { + "name": "cloud_account_id", + "type": "integer", + "required": true, + "description": "The ID of the Google Cloud account for which the cost configuration status needs to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "cloud_cost_management_enabled", + "type": "boolean", + "required": true, + "description": "Set to 'true' to enable the Cloud Cost Management account or 'false' to disable it.", + "enum": null, + "inferrable": true + }, + { + "name": "gcp_usage_cost_config_request_type", + "type": "string", + "required": false, + "description": "Type of Google Cloud Usage Cost configuration patch request. Use 'gcp_uc_config_patch_request'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCostGCPUsageCostConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateGcpUsageCostStatus", + "parameters": { + "cloud_account_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "cloud_cost_management_enabled": { + "value": true, + "type": "boolean", + "required": true + }, + "gcp_usage_cost_config_request_type": { + "value": "gcp_uc_config_patch_request", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateIncident", + "qualifiedName": "DatadogApi.UpdateIncident", + "fullyQualifiedName": "DatadogApi.UpdateIncident@2.0.0", + "description": "Partially update an incident's details.\n\n Use this tool to update specific attributes of an existing incident in Datadog. Only the provided attributes will be modified.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_uuid", + "type": "string", + "required": false, + "description": "The unique identifier (UUID) for the incident to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_objects", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of related object types to include in the response, such as 'users', 'comments', etc. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateIncident'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateIncident", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "include_related_objects": { + "value": ["users", "comments"], + "type": "array", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Incident Title\", \"status\": \"resolved\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateIncidentIntegration", + "qualifiedName": "DatadogApi.UpdateIncidentIntegration", + "fullyQualifiedName": "DatadogApi.UpdateIncidentIntegration@2.0.0", + "description": "Update incident integration metadata in Datadog.\n\n Call this tool to update the metadata of an existing incident integration in Datadog. Useful for modifying integration details after an incident is created.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_uuid", + "type": "string", + "required": false, + "description": "The UUID of the incident. This is a unique identifier used to specify which incident to update the integration metadata for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "integration_metadata_uuid", + "type": "string", + "required": false, + "description": "The UUID of the incident integration metadata to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateIncidentIntegration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateIncidentIntegration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "integration_metadata_uuid": { + "value": "abc123-def456-ghi789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"resolved\",\"message\":\"Incident resolved successfully.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateIncidentNotificationRule", + "qualifiedName": "DatadogApi.UpdateIncidentNotificationRule", + "fullyQualifiedName": "DatadogApi.UpdateIncidentNotificationRule@2.0.0", + "description": "Update an incident notification rule in Datadog.\n\n This tool updates an existing incident notification rule in Datadog with a complete replacement. Use it when you need to modify the settings or parameters of an incident alert rule.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "notification_rule_id", + "type": "string", + "required": false, + "description": "The unique identifier for the notification rule to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_resources", + "type": "string", + "required": false, + "description": "Comma-separated list of resources to include: `created_by_user`, `last_modified_by_user`, `incident_type`, `notification_template`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateIncidentNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateIncidentNotificationRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "notification_rule_id": { + "value": "123456", + "type": "string", + "required": false + }, + "include_resources": { + "value": "created_by_user,last_modified_by_user", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"High CPU Usage Alert\",\"type\":\"metric\",\"query\":\"avg:system.cpu.idle{*} < 20\",\"message\":\"CPU usage is high!\",\"is_enabled\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateIncidentTodo", + "qualifiedName": "DatadogApi.UpdateIncidentTodo", + "fullyQualifiedName": "DatadogApi.UpdateIncidentTodo@2.0.0", + "description": "Update a specific incident todo in Datadog.\n\n Use this tool to update details of a specific todo associated with an incident in Datadog. This is useful when you need to modify tasks related to incident management.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_uuid", + "type": "string", + "required": false, + "description": "The unique identifier (UUID) of the incident to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_todo_uuid", + "type": "string", + "required": false, + "description": "The unique identifier (UUID) of the incident todo to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateIncidentTodo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateIncidentTodo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "incident_todo_uuid": { + "value": "987e6543-e21b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"in_progress\",\"assignee\":\"john.doe@example.com\",\"description\":\"Update required for analysis.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateIncidentType", + "qualifiedName": "DatadogApi.UpdateIncidentType", + "fullyQualifiedName": "DatadogApi.UpdateIncidentType@2.0.0", + "description": "Update the type of a specific incident in Datadog.\n\n Use this tool to modify an existing incident type in Datadog by specifying the incident type ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_type_uuid", + "type": "string", + "required": false, + "description": "The UUID representing the incident type to be updated in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateIncidentType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateIncidentType", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_type_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"type\":\"error\",\"attributes\":{\"name\":\"Critical Error\",\"description\":\"This incident type is for critical errors.\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateIpAllowlist", + "qualifiedName": "DatadogApi.UpdateIpAllowlist", + "fullyQualifiedName": "DatadogApi.UpdateIpAllowlist@2.0.0", + "description": "Edit and toggle the IP allowlist settings in Datadog.\n\nThis tool updates the entries in the Datadog IP allowlist, enabling or disabling it as needed.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateIPAllowlist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateIpAllowlist", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"allowlist\":[{\"ip\":\"192.168.1.1\",\"enabled\":true},{\"ip\":\"10.0.0.2\",\"enabled\":false}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateIssueAssignee", + "qualifiedName": "DatadogApi.UpdateIssueAssignee", + "fullyQualifiedName": "DatadogApi.UpdateIssueAssignee@2.0.0", + "description": "Update the assignee of an issue in Datadog.\n\nUse this tool to change the assignee of a specific issue in Datadog by providing the issue ID.", + "parameters": [ + { + "name": "issue_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the issue to update the assignee.", + "enum": null, + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Specifies the type of object being updated. For issue assignee, use 'assignee'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The identifier of the user to assign the issue to.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateIssueAssignee'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateIssueAssignee", + "parameters": { + "issue_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "object_type": { + "value": "assignee", + "type": "string", + "required": true + }, + "user_identifier": { + "value": "user_6789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateIssueState", + "qualifiedName": "DatadogApi.UpdateIssueState", + "fullyQualifiedName": "DatadogApi.UpdateIssueState@2.0.0", + "description": "Update the state of an issue in Datadog.\n\nThis tool updates the state of an issue identified by `issue_id` in Datadog, allowing transitions between states such as `OPEN`, `RESOLVED`, or `IGNORED`. It should be called when you need to change an issue's status.", + "parameters": [ + { + "name": "issue_id_value", + "type": "string", + "required": true, + "description": "The identifier for the issue to update the state of in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the issue to update its state in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_object_type", + "type": "string", + "required": true, + "description": "Specifies the type of the object. Accepted value is 'error_tracking_issue'.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_state", + "type": "string", + "required": true, + "description": "State of the issue, valid values are 'OPEN', 'ACKNOWLEDGED', 'RESOLVED', 'IGNORED', 'EXCLUDED'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateIssueState'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateIssueState", + "parameters": { + "issue_id_value": { + "value": "abcd1234", + "type": "string", + "required": true + }, + "issue_identifier": { + "value": "issue-5678", + "type": "string", + "required": true + }, + "issue_object_type": { + "value": "error_tracking_issue", + "type": "string", + "required": true + }, + "issue_state": { + "value": "RESOLVED", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateLogBasedMetric", + "qualifiedName": "DatadogApi.UpdateLogBasedMetric", + "fullyQualifiedName": "DatadogApi.UpdateLogBasedMetric@2.0.0", + "description": "Update a specific log-based metric in your organization.\n\n Call this tool to update a particular log-based metric within your organization using Datadog's API. Ideal for modifying metrics configurations to refine log analysis and monitoring.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "log_metric_name", + "type": "string", + "required": false, + "description": "The name of the log-based metric to be updated. It specifies which metric to modify in your organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateLogsMetric'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateLogBasedMetric", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "log_metric_name": { + "value": "error_rate", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"error_rate\",\"query\":\"status:error\",\"type\":\"gauge\",\"tags\":[\"env:production\",\"service:my_service\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateLogsArchiveOrder", + "qualifiedName": "DatadogApi.UpdateLogsArchiveOrder", + "fullyQualifiedName": "DatadogApi.UpdateLogsArchiveOrder@2.0.0", + "description": "Updates the order of log archives in Datadog.\n\nThis tool updates the sequence in which log archives are processed within Datadog. Reordering them may impact the structure and content of logs processed by other archives. Use this when you need to change how logs are archived.", + "parameters": [ + { + "name": "archive_ids_order", + "type": "array", + "innerType": "string", + "required": false, + "description": "An ordered list of `` strings to define the new archives order in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "archive_order_type", + "type": "string", + "required": false, + "description": "Specifies the type for the archive order definition. Must be 'archive_order'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateLogsArchiveOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateLogsArchiveOrder", + "parameters": { + "archive_ids_order": { + "value": ["archive_id_1", "archive_id_2", "archive_id_3"], + "type": "array", + "required": false + }, + "archive_order_type": { + "value": "archive_order", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateLogsCustomDestination", + "qualifiedName": "DatadogApi.UpdateLogsCustomDestination", + "fullyQualifiedName": "DatadogApi.UpdateLogsCustomDestination@2.0.0", + "description": "Update specific fields of a custom logs destination.\n\n Use this tool to update the selected fields of a specific custom logs destination within your organization. This is useful for modifying destination configurations in Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "custom_destination_id", + "type": "string", + "required": false, + "description": "The unique identifier for the custom logs destination to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateLogsCustomDestination'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateLogsCustomDestination", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "custom_destination_id": { + "value": "custom-destination-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"enabled\": true, \"name\": \"Updated Logs Destination\", \"type\": \"http\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateMetricTagConfiguration", + "qualifiedName": "DatadogApi.UpdateMetricTagConfiguration", + "fullyQualifiedName": "DatadogApi.UpdateMetricTagConfiguration@2.0.0", + "description": "Update the tag configuration of a metric in Datadog.\n\n This tool updates the tag configuration for a specific metric in Datadog. It supports updating percentile or custom aggregations, and changing tag exclusion modes. Use it when you need to manage or modify metric tags, especially to switch from an allow-list to a deny-list. Requires specific permissions and an existing configuration.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "metric_name", + "type": "string", + "required": false, + "description": "Specify the name of the metric whose tag configuration you wish to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTagConfiguration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateMetricTagConfiguration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "metric_name": { + "value": "system.cpu.user", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"tag_configuration\": {\"exclude\": [\"env:development\"], \"aggregations\": {\"percentiles\": [50, 90]}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateMonitorNotificationRule", + "qualifiedName": "DatadogApi.UpdateMonitorNotificationRule", + "fullyQualifiedName": "DatadogApi.UpdateMonitorNotificationRule@2.0.0", + "description": "Updates a Datadog monitor notification rule.\n\n Use this tool to update a notification rule for a monitor in Datadog by specifying the `rule_id`. It should be called when you need to change the settings or behavior of an existing monitor notification rule.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "monitor_notification_rule_id", + "type": "string", + "required": false, + "description": "ID of the monitor notification rule to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateMonitorNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateMonitorNotificationRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "monitor_notification_rule_id": { + "value": "abc-123-notification", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"notify\": true, \"recipient\": \"alerts@example.com\", \"message\": \"Monitor updated\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateMonitorUserTemplate", + "qualifiedName": "DatadogApi.UpdateMonitorUserTemplate", + "fullyQualifiedName": "DatadogApi.UpdateMonitorUserTemplate@2.0.0", + "description": "Creates a new version of a monitor user template in Datadog.\n\n Use this tool to create a new version of an existing monitor user template in Datadog when updates or changes are needed to a monitor's settings.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "monitor_user_template_id", + "type": "string", + "required": false, + "description": "ID of the monitor user template to update with a new version. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateMonitorUserTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateMonitorUserTemplate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "monitor_user_template_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Monitor Template\",\"description\":\"This is an updated version of the monitor template.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateMsTeamsTenantHandle", + "qualifiedName": "DatadogApi.UpdateMsTeamsTenantHandle", + "fullyQualifiedName": "DatadogApi.UpdateMsTeamsTenantHandle@2.0.0", + "description": "Update a Microsoft Teams tenant-based handle in Datadog.\n\nUse this tool to update a tenant-based handle for the Datadog Microsoft Teams integration. This is useful when you need to modify existing handle configurations for tenant-based integrations.", + "parameters": [ + { + "name": "tenant_handle_id", + "type": "string", + "required": true, + "description": "The unique ID of the tenant-based handle to update in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_id", + "type": "string", + "required": false, + "description": "The ID of the Microsoft Teams channel to update for the tenant-based handle.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The Microsoft Teams Team ID for the tenant-based handle. Required for updating handle configurations.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_handle_name", + "type": "string", + "required": false, + "description": "Tenant-based handle name for the Microsoft Teams integration in Datadog. This specifies the handle's identifier within the configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_handle_resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type for the tenant-based handle, usually 'tenant-based-handle'.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_id", + "type": "string", + "required": false, + "description": "The unique identifier for the tenant. Used to specify which tenant's handle is being updated.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTenantBasedHandle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateMsTeamsTenantHandle", + "parameters": { + "tenant_handle_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "channel_id": { + "value": "0987654321fedcba", + "type": "string", + "required": false + }, + "team_id": { + "value": "team-uid-123456", + "type": "string", + "required": false + }, + "tenant_handle_name": { + "value": "new-handle-name", + "type": "string", + "required": false + }, + "tenant_handle_resource_type": { + "value": "tenant-based-handle", + "type": "string", + "required": false + }, + "tenant_id": { + "value": "tenant-uid-abcdef123456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateNotificationTemplate", + "qualifiedName": "DatadogApi.UpdateNotificationTemplate", + "fullyQualifiedName": "DatadogApi.UpdateNotificationTemplate@2.0.0", + "description": "Update attributes of a notification template.\n\nUse this tool to update an existing notification template's attributes in Datadog's incident management system.", + "parameters": [ + { + "name": "notification_template_id", + "type": "string", + "required": true, + "description": "The unique identifier of the notification template to update.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_template_resource_type", + "type": "string", + "required": true, + "description": "Specifies the type of the notification template resource. Must be 'notification_templates'.", + "enum": null, + "inferrable": true + }, + { + "name": "template_id", + "type": "string", + "required": true, + "description": "The unique identifier of the notification template to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_template_category", + "type": "string", + "required": false, + "description": "The category of the notification template to update.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_template_content", + "type": "string", + "required": false, + "description": "The content body of the notification template to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_template_name", + "type": "string", + "required": false, + "description": "The name of the notification template to update in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_template_subject", + "type": "string", + "required": false, + "description": "The subject line of the notification template to be updated in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "relationships_to_include", + "type": "string", + "required": false, + "description": "Comma-separated list of relationships to include. Valid values: `created_by_user`, `last_modified_by_user`, `incident_type`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateIncidentNotificationTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateNotificationTemplate", + "parameters": { + "notification_template_id": { + "value": "12345", + "type": "string", + "required": true + }, + "notification_template_resource_type": { + "value": "notification_templates", + "type": "string", + "required": true + }, + "template_id": { + "value": "template_67890", + "type": "string", + "required": true + }, + "notification_template_category": { + "value": "alert", + "type": "string", + "required": false + }, + "notification_template_content": { + "value": "This is an updated alert notification template.", + "type": "string", + "required": false + }, + "notification_template_name": { + "value": "Updated Alert Notification", + "type": "string", + "required": false + }, + "notification_template_subject": { + "value": "Alert Notification Update", + "type": "string", + "required": false + }, + "relationships_to_include": { + "value": "created_by_user,last_modified_by_user", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOktaAccount", + "qualifiedName": "DatadogApi.UpdateOktaAccount", + "fullyQualifiedName": "DatadogApi.UpdateOktaAccount@2.0.0", + "description": "Update details of an existing Okta account.\n\nCall this tool to update information for a specific Okta account using its account ID.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Okta account to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "account_type", + "type": "string", + "required": false, + "description": "Specify the type of the Okta account. Must be 'okta-accounts'.", + "enum": null, + "inferrable": true + }, + { + "name": "authorization_method", + "type": "string", + "required": false, + "description": "Specify the authorization method for the Okta account. This is a required string value.", + "enum": null, + "inferrable": true + }, + { + "name": "okta_account_api_key", + "type": "string", + "required": false, + "description": "The API key for authenticating the Okta account.", + "enum": null, + "inferrable": true + }, + { + "name": "okta_client_id", + "type": "string", + "required": false, + "description": "The Client ID of the Okta app integration to update.", + "enum": null, + "inferrable": true + }, + { + "name": "okta_client_secret", + "type": "string", + "required": false, + "description": "The client secret for the Okta app integration to be updated. Ensure this is kept secure.", + "enum": null, + "inferrable": true + }, + { + "name": "okta_domain", + "type": "string", + "required": false, + "description": "The domain associated with the Okta account to update.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateOktaAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateOktaAccount", + "parameters": { + "account_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "account_type": { + "value": "okta-accounts", + "type": "string", + "required": false + }, + "authorization_method": { + "value": "OAuth2", + "type": "string", + "required": false + }, + "okta_account_api_key": { + "value": "abcd1234apikey", + "type": "string", + "required": false + }, + "okta_client_id": { + "value": "client_id_example", + "type": "string", + "required": false + }, + "okta_client_secret": { + "value": null, + "type": "string", + "required": false + }, + "okta_domain": { + "value": "example.okta.com", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOnCallEscalationPolicy", + "qualifiedName": "DatadogApi.UpdateOnCallEscalationPolicy", + "fullyQualifiedName": "DatadogApi.UpdateOnCallEscalationPolicy@2.0.0", + "description": "Update an On-Call escalation policy in Datadog.\n\n This tool allows updating an existing On-Call escalation policy in Datadog. Use it to modify the details of a specific policy by providing the necessary updates.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "escalation_policy_id", + "type": "string", + "required": false, + "description": "The unique identifier of the escalation policy to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_relationships", + "type": "string", + "required": false, + "description": "Comma-separated list of relationships to be returned. Options: `teams`, `steps`, `steps.targets`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateOnCallEscalationPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateOnCallEscalationPolicy", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "escalation_policy_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "include_relationships": { + "value": "teams,steps", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Policy\",\"enabled\":true,\"schedule\":{\"timeframe\":\"weekly\",\"week_days\":[\"mon\",\"tue\",\"wed\",\"thu\",\"fri\"]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOnCallSchedule", + "qualifiedName": "DatadogApi.UpdateOnCallSchedule", + "fullyQualifiedName": "DatadogApi.UpdateOnCallSchedule@2.0.0", + "description": "Update an existing on-call schedule in Datadog.\n\n Use this tool to update the details of an existing on-call schedule in Datadog. It should be called when there is a need to modify the configuration or timing of an on-call schedule.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "schedule_id", + "type": "string", + "required": false, + "description": "The unique identifier for the on-call schedule to update in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "relationships_to_include", + "type": "string", + "required": false, + "description": "Comma-separated relationships to return, e.g., `teams`, `layers`. Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateOnCallSchedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateOnCallSchedule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "schedule_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "relationships_to_include": { + "value": "teams,layers", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated On-Call Schedule\",\"description\":\"Updated schedule details.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOpsgenieService", + "qualifiedName": "DatadogApi.UpdateOpsgenieService", + "fullyQualifiedName": "DatadogApi.UpdateOpsgenieService@2.0.0", + "description": "Update a service in the Datadog Opsgenie integration.\n\nThis tool updates a specified service object within the Datadog Opsgenie integration. It should be called when you need to modify an existing Opsgenie service.", + "parameters": [ + { + "name": "opsgenie_service_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Opsgenie service to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "service_uuid", + "type": "string", + "required": true, + "description": "The UUID of the service to be updated in the Datadog Opsgenie integration.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_region_url", + "type": "string", + "required": false, + "description": "The custom URL for a specific Opsgenie region. Specify if using a custom region.", + "enum": null, + "inferrable": true + }, + { + "name": "opsgenie_api_key", + "type": "string", + "required": false, + "description": "The API key for your Opsgenie service, needed to authenticate the update request.", + "enum": null, + "inferrable": true + }, + { + "name": "opsgenie_service_name", + "type": "string", + "required": false, + "description": "The name for the Opsgenie service to update. It should uniquely identify the service within your Opsgenie account.", + "enum": null, + "inferrable": true + }, + { + "name": "opsgenie_service_region", + "type": "string", + "required": false, + "description": "Specify the region for the Opsgenie service. Allowed values are 'us', 'eu', or 'custom'.", + "enum": null, + "inferrable": true + }, + { + "name": "opsgenie_service_resource_type", + "type": "string", + "required": false, + "description": "Specify as 'opsgenie-service' to denote the Opsgenie service resource type.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateOpsgenieService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateOpsgenieService", + "parameters": { + "opsgenie_service_id": { + "value": "12345", + "type": "string", + "required": true + }, + "service_uuid": { + "value": "abcde-67890-fghij-klmno", + "type": "string", + "required": true + }, + "custom_region_url": { + "value": "https://custom.opsgenie.com", + "type": "string", + "required": false + }, + "opsgenie_api_key": { + "value": "API_KEY_123456", + "type": "string", + "required": false + }, + "opsgenie_service_name": { + "value": "My Updated Service", + "type": "string", + "required": false + }, + "opsgenie_service_region": { + "value": "us", + "type": "string", + "required": false + }, + "opsgenie_service_resource_type": { + "value": "opsgenie-service", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOrgConfig", + "qualifiedName": "DatadogApi.UpdateOrgConfig", + "fullyQualifiedName": "DatadogApi.UpdateOrgConfig@2.0.0", + "description": "Update a specified organization configuration in Datadog.\n\nUse this tool to update the value of a specific organization configuration in Datadog. Suitable for changing settings like feature toggles or other organizational configurations.", + "parameters": [ + { + "name": "org_config_data_type", + "type": "string", + "required": true, + "description": "The data type of the organization configuration, which should be 'org_configs'.", + "enum": null, + "inferrable": true + }, + { + "name": "org_config_value", + "type": "string", + "required": true, + "description": "The new value for the organization configuration. Provide the desired value to update the specific Org Config.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_configuration_name", + "type": "string", + "required": true, + "description": "The name of the organization configuration to update in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateOrgConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateOrgConfig", + "parameters": { + "org_config_data_type": { + "value": "org_configs", + "type": "string", + "required": true + }, + "org_config_value": { + "value": "new_value_123", + "type": "string", + "required": true + }, + "organization_configuration_name": { + "value": "sample_org_config", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOrgConnection", + "qualifiedName": "DatadogApi.UpdateOrgConnection", + "fullyQualifiedName": "DatadogApi.UpdateOrgConnection@2.0.0", + "description": "Update an existing organization connection in Datadog.\n\nUse this tool to update details of an existing organization connection in Datadog. Useful for modifying connection configurations or settings.", + "parameters": [ + { + "name": "org_connection_id", + "type": "string", + "required": true, + "description": "The unique identifier of the organization connection in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "org_connection_type", + "type": "string", + "required": true, + "description": "Specifies the type of organization connection. Must be 'org_connection'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_connection_id", + "type": "string", + "required": true, + "description": "The unique identifier of the organization connection to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_connection_types", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of updated connection types for the organization connection.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateOrgConnections'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateOrgConnection", + "parameters": { + "org_connection_id": { + "value": "org_conn_12345", + "type": "string", + "required": true + }, + "org_connection_type": { + "value": "org_connection", + "type": "string", + "required": true + }, + "organization_connection_id": { + "value": "org_conn_update_67890", + "type": "string", + "required": true + }, + "updated_connection_types": { + "value": ["sso", "api"], + "type": "array", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdatePipeline", + "qualifiedName": "DatadogApi.UpdatePipeline", + "fullyQualifiedName": "DatadogApi.UpdatePipeline@2.0.0", + "description": "Update a pipeline in Datadog's remote config.\n\n Use this tool to update specific pipelines in Datadog's remote configuration system using the pipeline ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "pipeline_id", + "type": "string", + "required": false, + "description": "The unique ID of the pipeline to update in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdatePipeline'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdatePipeline", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "pipeline_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Pipeline\", \"description\": \"This is an updated pipeline.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdatePowerpack", + "qualifiedName": "DatadogApi.UpdatePowerpack", + "fullyQualifiedName": "DatadogApi.UpdatePowerpack@2.0.0", + "description": "Update the details of a specific powerpack in Datadog.\n\n Use this tool to modify the properties of an existing powerpack in Datadog by providing the specific powerpack ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "powerpack_id", + "type": "string", + "required": false, + "description": "The unique identifier for the powerpack to update in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdatePowerpack'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdatePowerpack", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "powerpack_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Powerpack\",\"description\":\"This is an updated description for the powerpack.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateReferenceTable", + "qualifiedName": "DatadogApi.UpdateReferenceTable", + "fullyQualifiedName": "DatadogApi.UpdateReferenceTable@2.0.0", + "description": "Update data, description, and tags of a reference table.\n\n This tool updates a reference table by its ID, allowing changes to the data, description, or tags. It is useful when modifications are needed for existing reference tables, including those with different source types like LOCAL_FILE, S3, GCS, or AZURE.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "reference_table_id", + "type": "string", + "required": false, + "description": "The ID of the reference table that needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateReferenceTable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateReferenceTable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "reference_table_id": { + "value": "refTable123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"data\": {\"key1\": \"value1\", \"key2\": \"value2\"}, \"description\": \"Updated reference table\", \"tags\": [\"tag1\", \"tag2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateResourceFilters", + "qualifiedName": "DatadogApi.UpdateResourceFilters", + "fullyQualifiedName": "DatadogApi.UpdateResourceFilters@2.0.0", + "description": "Update resource filters in cloud security management.\n\nUse this tool to modify resource filters within Datadog's cloud security management. It should be called when you need to change which resources are included or excluded for evaluation.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateResourceEvaluationFilters'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateResourceFilters", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filter_type\":\"include\",\"resource_types\":[\"ec2\",\"rds\"],\"tags\":{\"environment\":\"production\",\"service\":\"web\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateRestrictionPolicy", + "qualifiedName": "DatadogApi.UpdateRestrictionPolicy", + "fullyQualifiedName": "DatadogApi.UpdateRestrictionPolicy@2.0.0", + "description": "Update the restriction policy for a Datadog resource.\n\n Use this tool to update the restriction policy associated with various Datadog resources, such as dashboards, integration services, notebooks, and more. You can specify the resource type and the new access permissions like viewer, editor, or others depending on the resource.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_identifier", + "type": "string", + "required": false, + "description": "Identifier of the resource, formatted as `type:id`. Includes supported types like `dashboard`, `integration-service`, `notebook`, and others. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_self_lockout", + "type": "boolean", + "required": false, + "description": "Set to true to allow admins to remove their own access from the resource. Default is false, preventing self-lockout. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateRestrictionPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateRestrictionPolicy", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_identifier": { + "value": "dashboard:123456", + "type": "string", + "required": false + }, + "allow_self_lockout": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"access\":\"editor\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateRumApplication", + "qualifiedName": "DatadogApi.UpdateRumApplication", + "fullyQualifiedName": "DatadogApi.UpdateRumApplication@2.0.0", + "description": "Update settings of a specific RUM application by ID.\n\nUse this tool to modify the configuration or details of a RUM (Real User Monitoring) application within your organization by providing its ID.", + "parameters": [ + { + "name": "rum_app_id", + "type": "string", + "required": true, + "description": "The unique ID of the RUM application to update.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_application_id", + "type": "string", + "required": true, + "description": "The ID of the RUM application to update.", + "enum": null, + "inferrable": true + }, + { + "name": "product_analytics_retention_state", + "type": "string", + "required": false, + "description": "Set the retention policy for Product Analytics data derived from RUM events. Accepted values: 'MAX', 'NONE'.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_application_name", + "type": "string", + "required": false, + "description": "The name of the RUM application to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_application_type", + "type": "string", + "required": false, + "description": "Specify the type of RUM application. Valid options: `browser`, `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, `kotlin-multiplatform`.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_application_update_type", + "type": "string", + "required": false, + "description": "Specifies the RUM application update type. Allowed value is 'rum_application_update'.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_event_processing_state", + "type": "string", + "required": false, + "description": "Configures which RUM events are processed and stored. Accepts 'ALL', 'ERROR_FOCUSED_MODE', or 'NONE'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateRUMApplication'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateRumApplication", + "parameters": { + "rum_app_id": { + "value": "12345", + "type": "string", + "required": true + }, + "rum_application_id": { + "value": "67890", + "type": "string", + "required": true + }, + "product_analytics_retention_state": { + "value": "MAX", + "type": "string", + "required": false + }, + "rum_application_name": { + "value": "ExampleApp", + "type": "string", + "required": false + }, + "rum_application_type": { + "value": "browser", + "type": "string", + "required": false + }, + "rum_application_update_type": { + "value": "rum_application_update", + "type": "string", + "required": false + }, + "rum_event_processing_state": { + "value": "ALL", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateRumMetric", + "qualifiedName": "DatadogApi.UpdateRumMetric", + "fullyQualifiedName": "DatadogApi.UpdateRumMetric@2.0.0", + "description": "Update a specific rum-based metric in your organization.\n\n Use this tool to update details of a specific rum-based metric within your organization's Datadog settings. Ideal for modifying existing metrics to adjust configurations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "metric_name", + "type": "string", + "required": false, + "description": "The name of the rum-based metric to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateRumMetric'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateRumMetric", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "metric_name": { + "value": "user.page_load_time", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"enabled\": true, \"tags\": [\"env:production\", \"team:frontend\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateRumRetentionFilter", + "qualifiedName": "DatadogApi.UpdateRumRetentionFilter", + "fullyQualifiedName": "DatadogApi.UpdateRumRetentionFilter@2.0.0", + "description": "Update a RUM retention filter for a RUM application.\n\nUse this tool to modify the retention filter settings of a RUM application. It returns the updated RUM retention filter details if the request succeeds.", + "parameters": [ + { + "name": "filter_id", + "type": "string", + "required": true, + "description": "UUID of the retention filter to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "retention_filter_id", + "type": "string", + "required": true, + "description": "The unique ID of the retention filter to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_application_id", + "type": "string", + "required": true, + "description": "The ID of the RUM application to update the retention filter. Required for identifying the application.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_retention_filter", + "type": "boolean", + "required": false, + "description": "Set to true to enable the retention filter. Set to false to disable it.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_name", + "type": "string", + "required": false, + "description": "The name of the RUM retention filter to update.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": false, + "description": "Specifies the resource type for the retention filter. Must be 'retention_filters'.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_event_type_filter", + "type": "string", + "required": false, + "description": "Specifies the type of RUM events to filter on, such as 'session', 'view', 'action', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "rum_retention_filter_query", + "type": "string", + "required": false, + "description": "The query string used to define criteria for the RUM retention filter.", + "enum": null, + "inferrable": true + }, + { + "name": "sample_rate", + "type": "integer", + "required": false, + "description": "The sample rate for a RUM retention filter, an integer between 0 and 100, specifying the percentage of data to sample.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateRetentionFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateRumRetentionFilter", + "parameters": { + "filter_id": { + "value": "f123e456-7d89-0abc-def1-234567890abc", + "type": "string", + "required": true + }, + "retention_filter_id": { + "value": "rf123e456-7d89-0abc-def1-234567890abc", + "type": "string", + "required": true + }, + "rum_application_id": { + "value": "app-12345", + "type": "string", + "required": true + }, + "enable_retention_filter": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_name": { + "value": "User Engagement Filter", + "type": "string", + "required": false + }, + "resource_type": { + "value": "retention_filters", + "type": "string", + "required": false + }, + "rum_event_type_filter": { + "value": "session", + "type": "string", + "required": false + }, + "rum_retention_filter_query": { + "value": "status:error", + "type": "string", + "required": false + }, + "sample_rate": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateScanningGroup", + "qualifiedName": "DatadogApi.UpdateScanningGroup", + "fullyQualifiedName": "DatadogApi.UpdateScanningGroup@2.0.0", + "description": "Update a scanning group's rule order in Datadog.\n\n Use this tool to update and reorder the rules within a specific scanning group in Datadog. Ensure all current rules are included in the update to maintain the group integrity.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "group_id", + "type": "string", + "required": false, + "description": "The ID of the scanning group whose rules are being updated. This is required to identify the group. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateScanningGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateScanningGroup", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "group_id": { + "value": "scanning-group-1234", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"rules\": [{\"id\": \"rule-1\", \"order\": 1}, {\"id\": \"rule-2\", \"order\": 2}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateScanningRule", + "qualifiedName": "DatadogApi.UpdateScanningRule", + "fullyQualifiedName": "DatadogApi.UpdateScanningRule@2.0.0", + "description": "Update a scanning rule in Datadog.\n\n Use this tool to update a scanning rule in Datadog's sensitive data scanner. It's important to note that the request must not attempt to edit the regex attribute of rules that include a standard_pattern relationship, as these are non-editable.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "rule_id", + "type": "string", + "required": false, + "description": "The unique identifier for the scanning rule to be updated. This value is required. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateScanningRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateScanningRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "rule_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Sensitive Data Rule\",\"pattern\":\"\\d{4}-\\d{2}-\\d{2}\",\"enabled\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateScorecardOutcomes", + "qualifiedName": "DatadogApi.UpdateScorecardOutcomes", + "fullyQualifiedName": "DatadogApi.UpdateScorecardOutcomes@2.0.0", + "description": "Update multiple scorecard rule outcomes in Datadog.\n\nUse this tool to update several scorecard rule outcomes in Datadog with a single request. Ideal for synchronizing or modifying multiple outcomes efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateScorecardOutcomesAsync'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateScorecardOutcomes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"scorecard_id\":\"12345\",\"outcomes\":[{\"result\":\"pass\",\"comment\":\"All checks passed.\"},{\"result\":\"fail\",\"comment\":\"Critical failures detected.\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateScorecardRule", + "qualifiedName": "DatadogApi.UpdateScorecardRule", + "fullyQualifiedName": "DatadogApi.UpdateScorecardRule@2.0.0", + "description": "Updates an existing scorecard rule in Datadog.\n\n Use this tool to modify an existing scorecard rule in the Datadog platform by specifying the rule ID and the new details for the rule.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "rule_id", + "type": "string", + "required": false, + "description": "A unique identifier for the scorecard rule to be updated in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateScorecardRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateScorecardRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "rule_id": { + "value": "scorecard_rule_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Scorecard Rule\",\"criteria\":{\"metric\":\"system.cpu.idle\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSecurityFilter", + "qualifiedName": "DatadogApi.UpdateSecurityFilter", + "fullyQualifiedName": "DatadogApi.UpdateSecurityFilter@2.0.0", + "description": "Update a specific security filter's configuration.\n\n Use this tool to update the configuration of a specific security filter in Datadog. It returns the updated security filter object when successful.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "security_filter_id", + "type": "string", + "required": false, + "description": "The ID of the specific security filter to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateSecurityFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateSecurityFilter", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "security_filter_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"filter_type\":\"ip\",\"query\":\"192.168.1.1\",\"name\":\"My Security Filter\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSecurityMonitoringRule", + "qualifiedName": "DatadogApi.UpdateSecurityMonitoringRule", + "fullyQualifiedName": "DatadogApi.UpdateSecurityMonitoringRule@2.0.0", + "description": "Update an existing Datadog security monitoring rule.\n\n Use this tool to update an existing security monitoring rule in Datadog. Ensure all 'cases', 'queries', and 'options' fields are included when making updates. Default rules can only have specific updates allowed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "security_rule_id", + "type": "string", + "required": false, + "description": "The ID of the security monitoring rule to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateSecurityMonitoringRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateSecurityMonitoringRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "security_rule_id": { + "value": "sec_rule_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"cases\":[{\"case_id\":\"case_1\",\"query\":\"avg(last_5m):avg:system.cpu.idle{*} < 20\"}],\"queries\":[{\"query\":\"avg(last_5m):avg:system.memory.used{*} > 5000000000\"}],\"options\":{\"enabled\":true}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSoftwareCatalogKind", + "qualifiedName": "DatadogApi.UpdateSoftwareCatalogKind", + "fullyQualifiedName": "DatadogApi.UpdateSoftwareCatalogKind@2.0.0", + "description": "Create or update kinds in the Software Catalog.\n\nUse this tool to add new kinds or update existing ones in the Datadog Software Catalog.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpsertCatalogKind'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateSoftwareCatalogKind", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"kind\": \"new_kind\", \"attributes\": {\"name\": \"New Kind\", \"description\": \"This is a new kind in the Software Catalog.\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSpanMetric", + "qualifiedName": "DatadogApi.UpdateSpanMetric", + "fullyQualifiedName": "DatadogApi.UpdateSpanMetric@2.0.0", + "description": "Update a specific span-based metric in Datadog.\n\n Use this tool to update a specific span-based metric in your Datadog organization. Call this tool when you need to modify the configuration of an existing span-based metric.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "span_metric_name", + "type": "string", + "required": false, + "description": "The name of the span-based metric to update in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateSpansMetric'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateSpanMetric", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "span_metric_name": { + "value": "my_span_metric", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"aggregation\":\"sum\",\"tags\":[\"env:production\",\"version:1.0\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSuppressionRule", + "qualifiedName": "DatadogApi.UpdateSuppressionRule", + "fullyQualifiedName": "DatadogApi.UpdateSuppressionRule@2.0.0", + "description": "Update a specific suppression rule in Datadog.\n\n Use this tool to modify an existing suppression rule within Datadog's security monitoring configuration. Call this when you need to change the settings of a particular suppression rule identified by its ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "suppression_rule_id", + "type": "string", + "required": false, + "description": "The unique identifier of the suppression rule to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateSecurityMonitoringSuppression'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateSuppressionRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "suppression_rule_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Suppression Rule\", \"condition\": \"event.source == 'api'\", \"status\": \"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTagPipelineRuleset", + "qualifiedName": "DatadogApi.UpdateTagPipelineRuleset", + "fullyQualifiedName": "DatadogApi.UpdateTagPipelineRuleset@2.0.0", + "description": "Update an existing tag pipeline ruleset with new rules.\n\n Use this tool to modify the rules and configuration of an existing tag pipeline ruleset in Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "ruleset_identifier", + "type": "string", + "required": false, + "description": "A unique string identifier for the tag pipeline ruleset to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTagPipelinesRuleset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateTagPipelineRuleset", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "ruleset_identifier": { + "value": "example_ruleset_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"rules\": [{\"tag\": \"env\", \"value\": \"production\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTeamInfo", + "qualifiedName": "DatadogApi.UpdateTeamInfo", + "fullyQualifiedName": "DatadogApi.UpdateTeamInfo@2.0.0", + "description": "Update and modify a team's configuration in Datadog.\n\n Use this tool to update a team in Datadog by modifying its configuration using the team's ID. You can adjust team links and other settings as needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to be updated. Must be a valid string representing the team's ID in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateTeamInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Team Name\",\"links\":{\"website\":\"https://example.com\",\"documentation\":\"https://docs.example.com\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTeamLink", + "qualifiedName": "DatadogApi.UpdateTeamLink", + "fullyQualifiedName": "DatadogApi.UpdateTeamLink@2.0.0", + "description": "Updates a team link in Datadog.\n\nUse this tool to update the details of a specific team link within the Datadog service. It's useful for modifying or adjusting link information associated with a team.", + "parameters": [ + { + "name": "link_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the link you want to update.", + "enum": null, + "inferrable": true + }, + { + "name": "link_label", + "type": "string", + "required": true, + "description": "Specify the label for the link. This is used to identify or name the link within the team's list of links.", + "enum": null, + "inferrable": true + }, + { + "name": "link_url", + "type": "string", + "required": true, + "description": "The URL for the team link. Provide a valid, well-formed URL.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique string identifier for the team related to the link.", + "enum": null, + "inferrable": true + }, + { + "name": "link_position", + "type": "integer", + "required": false, + "description": "The position of the link in the list, used to sort links for the team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_associated_with_link", + "type": "string", + "required": false, + "description": "The ID of the team associated with the link to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "team_link_type", + "type": "string", + "required": false, + "description": "Specifies the type of team link. Must be 'team_links'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTeamLink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateTeamLink", + "parameters": { + "link_identifier": { + "value": "link-12345", + "type": "string", + "required": true + }, + "link_label": { + "value": "Team Documentation", + "type": "string", + "required": true + }, + "link_url": { + "value": "https://docs.example.com", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-abc", + "type": "string", + "required": true + }, + "link_position": { + "value": 1, + "type": "integer", + "required": false + }, + "team_id_associated_with_link": { + "value": "team-id-67890", + "type": "string", + "required": false + }, + "team_link_type": { + "value": "team_links", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTeamPermission", + "qualifiedName": "DatadogApi.UpdateTeamPermission", + "fullyQualifiedName": "DatadogApi.UpdateTeamPermission@2.0.0", + "description": "Update a team's permission setting in Datadog.\n\nUse this tool to update the permission setting for a specific team in Datadog, allowing for customized access control adjustments.", + "parameters": [ + { + "name": "action_to_update", + "type": "string", + "required": true, + "description": "The specific action to update in the team's permission setting, specifying what can be performed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the team for which the permission setting will be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "allowed_user_type_for_action", + "type": "string", + "required": false, + "description": "Specify the user type permitted to perform the action. Options: admins, members, organization, user_access_manage, teams_manage.", + "enum": null, + "inferrable": true + }, + { + "name": "team_permission_setting_type", + "type": "string", + "required": false, + "description": "Specify the team permission setting type. Required value: 'team_permission_settings'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTeamPermissionSetting'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateTeamPermission", + "parameters": { + "action_to_update": { + "value": "add_monitor", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-12345", + "type": "string", + "required": true + }, + "allowed_user_type_for_action": { + "value": "members", + "type": "string", + "required": false + }, + "team_permission_setting_type": { + "value": "team_permission_settings", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateUserTeamMembership", + "qualifiedName": "DatadogApi.UpdateUserTeamMembership", + "fullyQualifiedName": "DatadogApi.UpdateUserTeamMembership@2.0.0", + "description": "Update a user's membership attributes on a team.\n\nUse this tool to update specific membership attributes for a user within a team's membership in Datadog. This can be useful when user roles or permissions need modification.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team to update the user's membership attributes.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the user whose membership is being updated. This is required to specify which user's attributes will be changed.", + "enum": null, + "inferrable": true + }, + { + "name": "provisioning_identifier", + "type": "string", + "required": false, + "description": "UUID of the User or Service Account who provisioned this team membership, or null if provisioned via SAML mapping.", + "enum": null, + "inferrable": true + }, + { + "name": "provisioning_mechanism", + "type": "string", + "required": false, + "description": "Specifies how the team relationship was provisioned. Options: null, \"service_account\", \"saml_mapping\".", + "enum": null, + "inferrable": true + }, + { + "name": "team_membership_type", + "type": "string", + "required": false, + "description": "Specify the type of team membership. The value must be 'team_memberships'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_role_in_team", + "type": "string", + "required": false, + "description": "Specify the user's role within the team. Accepts 'admin'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTeamMembership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateUserTeamMembership", + "parameters": { + "team_id": { + "value": "12345", + "type": "string", + "required": true + }, + "user_identifier": { + "value": "user@example.com", + "type": "string", + "required": true + }, + "provisioning_identifier": { + "value": null, + "type": "string", + "required": false + }, + "provisioning_mechanism": { + "value": "saml_mapping", + "type": "string", + "required": false + }, + "team_membership_type": { + "value": "team_memberships", + "type": "string", + "required": false + }, + "user_role_in_team": { + "value": "admin", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWafCustomRule", + "qualifiedName": "DatadogApi.UpdateWafCustomRule", + "fullyQualifiedName": "DatadogApi.UpdateWafCustomRule@2.0.0", + "description": "Update a specific WAF custom rule in Datadog.\n\n Use this tool to update a specific Web Application Firewall (WAF) custom rule in Datadog. It returns the updated custom rule object upon successful execution.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "custom_rule_id", + "type": "string", + "required": false, + "description": "Specify the ID of the custom WAF rule to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateApplicationSecurityWafCustomRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateWafCustomRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "custom_rule_id": { + "value": "waf_rule_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Rule\",\"enabled\":true,\"filter\":{\"type\":\"http-request\",\"conditions\":[{\"key\":\"http.request.uri.path\",\"operator\":\"contains\",\"value\":\"/sensitive-data\"}]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWafExclusionFilter", + "qualifiedName": "DatadogApi.UpdateWafExclusionFilter", + "fullyQualifiedName": "DatadogApi.UpdateWafExclusionFilter@2.0.0", + "description": "Updates a WAF exclusion filter by its identifier.\n\n Use this tool to update a specific Web Application Firewall (WAF) exclusion filter using its ID. It returns the updated exclusion filter object upon a successful request.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "waf_exclusion_filter_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the WAF exclusion filter to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateApplicationSecurityWafExclusionFilter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateWafExclusionFilter", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "waf_exclusion_filter_identifier": { + "value": "filter12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"filter_type\":\"ip_address\",\"value\":\"192.0.2.0\",\"comment\":\"Exclusion for internal testing\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWorkflowById", + "qualifiedName": "DatadogApi.UpdateWorkflowById", + "fullyQualifiedName": "DatadogApi.UpdateWorkflowById@2.0.0", + "description": "Update a specific workflow by its ID.\n\n Use this tool to update the details of a workflow in Datadog by providing its ID. Ensure required permissions via a registered application key or configure them in the UI.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "workflow_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the workflow you wish to update in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateWorkflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateWorkflowById", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "workflow_identifier": { + "value": "workflow-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Workflow\",\"description\":\"This is an updated workflow description.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWorkflowsWebhookHandle", + "qualifiedName": "DatadogApi.UpdateWorkflowsWebhookHandle", + "fullyQualifiedName": "DatadogApi.UpdateWorkflowsWebhookHandle@2.0.0", + "description": "Update a webhook handle in Datadog's Microsoft Teams integration.\n\nThis tool updates a Workflows webhook handle for the Datadog Microsoft Teams integration. Use it to modify existing webhook configurations.", + "parameters": [ + { + "name": "webhook_handle_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Workflows webhook handle to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_handle_name", + "type": "string", + "required": false, + "description": "The name of the Workflows Webhook handle to be updated. This should be a descriptive string identifying the webhook.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_handle_resource_type", + "type": "string", + "required": false, + "description": "Specifies the Workflows webhook handle resource type. Use 'workflows-webhook-handle'.", + "enum": null, + "inferrable": true + }, + { + "name": "workflows_webhook_url", + "type": "string", + "required": false, + "description": "The URL for the Workflows Webhook. Specify the endpoint to send requests to.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateWorkflowsWebhookHandle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateWorkflowsWebhookHandle", + "parameters": { + "webhook_handle_id": { + "value": "abc123-def456-ghi789", + "type": "string", + "required": true + }, + "webhook_handle_name": { + "value": "My Webhook Handle", + "type": "string", + "required": false + }, + "webhook_handle_resource_type": { + "value": "workflows-webhook-handle", + "type": "string", + "required": false + }, + "workflows_webhook_url": { + "value": "https://example.com/datadog-webhook", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWorkloadProtectionAgentRule", + "qualifiedName": "DatadogApi.UpdateWorkloadProtectionAgentRule", + "fullyQualifiedName": "DatadogApi.UpdateWorkloadProtectionAgentRule@2.0.0", + "description": "Update a specific Workload Protection Agent rule.\n\n Use this tool to update a specific Workload Protection Agent rule. This is helpful when you need to modify existing rules for workload protection. Please note that this endpoint is not available for the Government (US1-FED) site.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "agent_rule_id", + "type": "string", + "required": false, + "description": "The unique identifier of the specific Agent rule to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "agent_policy_id", + "type": "string", + "required": false, + "description": "The ID of the Agent policy to be updated in the Workload Protection Agent rule. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCSMThreatsAgentRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UpdateWorkloadProtectionAgentRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "agent_rule_id": { + "value": "1234-abcd-5678-efgh", + "type": "string", + "required": false + }, + "agent_policy_id": { + "value": "policy-5678", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\":\"allow\",\"description\":\"Updated rule for workload protection\",\"conditions\":{\"cpuUsage\":70}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UploadCustomCostsFile", + "qualifiedName": "DatadogApi.UploadCustomCostsFile", + "fullyQualifiedName": "DatadogApi.UploadCustomCostsFile@2.0.0", + "description": "Upload a custom costs file to Datadog.\n\nThis tool uploads a custom costs file to Datadog. Use it when you need to update or input new cost data into the system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UploadCustomCostsFile'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.UploadCustomCostsFile", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"cost_data\": [{\"service\": \"example_service\", \"cost\": 100.0, \"currency\": \"USD\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ValidateMonitorTemplate", + "qualifiedName": "DatadogApi.ValidateMonitorTemplate", + "fullyQualifiedName": "DatadogApi.ValidateMonitorTemplate@2.0.0", + "description": "Validate the structure and content of a monitor template update.\n\n This tool is used to validate the structure and content of an existing monitor user template being updated to a new version. It ensures that the changes align with the required format and content guidelines.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "monitor_template_id", + "type": "string", + "required": false, + "description": "ID of the monitor user template to be validated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "client_secret" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ValidateExistingMonitorUserTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ValidateMonitorTemplate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "monitor_template_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"CPU Usage Monitor\",\"type\":\"metric alert\",\"query\":\"avg(last_5m):avg:system.cpu.idle{*} < 20\",\"message\":\"CPU usage is too high!\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ValidateMonitorUserTemplate", + "qualifiedName": "DatadogApi.ValidateMonitorUserTemplate", + "fullyQualifiedName": "DatadogApi.ValidateMonitorUserTemplate@2.0.0", + "description": "Validate the structure and content of a monitor user template.\n\nUse this tool to ensure that a monitor user template in Datadog meets the required structural and content standards. This is essential for verifying templates before implementation.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ValidateMonitorUserTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ValidateMonitorUserTemplate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"template_name\":\"Example Monitor Template\",\"monitor_type\":\"metric alert\",\"query\":\"avg(last_5m):avg:system.cpu.idle{*} < 20\",\"message\":\"CPU usage is high!\",\"tags\":[\"env:production\",\"role:web\"],\"options\":{\"thresholds\":{\"critical\":20}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ValidatePipelineConfig", + "qualifiedName": "DatadogApi.ValidatePipelineConfig", + "fullyQualifiedName": "DatadogApi.ValidatePipelineConfig@2.0.0", + "description": "Validate a pipeline configuration without making changes.\n\nUse this tool to check the correctness of a pipeline configuration in Datadog. It helps identify any potential errors without altering existing resources.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ValidatePipeline'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ValidatePipelineConfig", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"pipeline_id\":\"12345\",\"config\":{\"type\":\"default\",\"name\":\"MyPipeline\",\"steps\":[{\"type\":\"process\",\"name\":\"Step1\",\"enabled\":true},{\"type\":\"output\",\"name\":\"Output1\",\"enabled\":true}]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ValidateSecurityMonitoringRule", + "qualifiedName": "DatadogApi.ValidateSecurityMonitoringRule", + "fullyQualifiedName": "DatadogApi.ValidateSecurityMonitoringRule@2.0.0", + "description": "Validate a detection rule in Datadog.\n\nUse this tool to validate the configuration of a detection rule in Datadog's security monitoring. It checks if the rule meets all necessary criteria and returns whether it is valid.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ValidateSecurityMonitoringRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ValidateSecurityMonitoringRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Example Detection Rule\",\"query\":\"security.geoip.client_ip:* AND security.http.method:GET\",\"type\":\"log\",\"enabled\":true,\"message\":\"Potential malicious GET request detected\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ValidateSuppressionRule", + "qualifiedName": "DatadogApi.ValidateSuppressionRule", + "fullyQualifiedName": "DatadogApi.ValidateSuppressionRule@2.0.0", + "description": "Validate a suppression rule in Datadog's monitoring system.\n\nThis tool validates suppression rules in Datadog's security monitoring configuration. Use it to ensure rules are correctly set up and functioning as intended.", + "parameters": [ + { + "name": "is_suppression_rule_enabled", + "type": "boolean", + "required": true, + "description": "Indicates whether the suppression rule is currently active.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_name", + "type": "string", + "required": true, + "description": "The name of the suppression rule to be validated.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_query", + "type": "string", + "required": true, + "description": "The rule query for the suppression rule, using detection rules search bar syntax.", + "enum": null, + "inferrable": true + }, + { + "name": "exclusion_query_on_input_data", + "type": "string", + "required": false, + "description": "An exclusion query for input data, such as logs or events. Events matching this are ignored by detection rules in the suppression rule.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": false, + "description": "Defines the type of the resource. Always set to `suppressions`.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_query", + "type": "string", + "required": false, + "description": "The query for the suppression rule. Signals matching this query are suppressed, using Signals Explorer syntax.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_description", + "type": "string", + "required": false, + "description": "A text description of the suppression rule, explaining its purpose and details.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_expiration_date", + "type": "integer", + "required": false, + "description": "A Unix millisecond timestamp for when the suppression rule expires and stops suppressing signals.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_start_date", + "type": "integer", + "required": false, + "description": "Unix millisecond timestamp for the start date of the suppression rule, when it begins suppressing signals.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "token" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ValidateSecurityMonitoringSuppression'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ValidateSuppressionRule", + "parameters": { + "is_suppression_rule_enabled": { + "value": true, + "type": "boolean", + "required": true + }, + "suppression_rule_name": { + "value": "suppress_high_cpu_usage", + "type": "string", + "required": true + }, + "suppression_rule_query": { + "value": "avg(last_5m):avg:system.cpu.user{*} > 80", + "type": "string", + "required": true + }, + "exclusion_query_on_input_data": { + "value": "source:logs NOT status:error", + "type": "string", + "required": false + }, + "resource_type": { + "value": "suppressions", + "type": "string", + "required": false + }, + "suppression_query": { + "value": "avg(last_5m):avg:system.cpu.user{*} > 90", + "type": "string", + "required": false + }, + "suppression_rule_description": { + "value": "Suppress alerts for high CPU usage above 80% for non-error logs", + "type": "string", + "required": false + }, + "suppression_rule_expiration_date": { + "value": 1700000000000, + "type": "integer", + "required": false + }, + "suppression_rule_start_date": { + "value": 1600000000000, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ValidateTagPipelineQuery", + "qualifiedName": "DatadogApi.ValidateTagPipelineQuery", + "fullyQualifiedName": "DatadogApi.ValidateTagPipelineQuery@2.0.0", + "description": "Validate the syntax and structure of a tag pipeline query.\n\nUse this tool to ensure that a tag pipeline query is correctly structured and free of syntax errors.", + "parameters": [ + { + "name": "query_attributes", + "type": "string", + "required": false, + "description": "The tag pipeline query to validate. Ensure it is correctly structured and free of syntax errors.", + "enum": null, + "inferrable": true + }, + { + "name": "query_request_data_id", + "type": "string", + "required": false, + "description": "The unique identifier for the RulesValidateQueryRequestData.", + "enum": null, + "inferrable": true + }, + { + "name": "query_resource_type", + "type": "string", + "required": false, + "description": "Specify the type of resource for query validation, always use 'validate_query'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [ + "DATADOG_API_KEY", + "DATADOG_APPLICATION_KEY", + "DATADOG_BASE_URL" + ], + "secretsInfo": [ + { + "name": "DATADOG_API_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_APPLICATION_KEY", + "type": "api_key" + }, + { + "name": "DATADOG_BASE_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ValidateQuery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "DatadogApi.ValidateTagPipelineQuery", + "parameters": { + "query_attributes": { + "value": "service:my-service AND status:error", + "type": "string", + "required": false + }, + "query_request_data_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + }, + "query_resource_type": { + "value": "validate_query", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "section", + "location": "before_available_tools", + "position": "after", + "content": "## Authentication\n\nThe Arcade Datadog API MCP Server requires three environment variables to authenticate with the [Datadog API](https://docs.datadoghq.com/api/latest/):\n\n- `DATADOG_API_KEY`\n- `DATADOG_APPLICATION_KEY`\n- `DATADOG_BASE_URL`\n\n**How to obtain your credentials:**\n\n1. Log in to your [Datadog dashboard](https://app.datadoghq.com/)\n2. Navigate to **Organization Settings** (click your profile icon in the bottom left)\n3. Go to **API Keys** → click **New Key** → provide a name and click **Create Key**\n4. Go to **Application Keys** → click **New Key** → provide a name and click **Create Key**\n5. Determine your **Base URL** based on your Datadog site (check the URL in your browser):\n - US1: `api.datadoghq.com`\n - US3: `api.us3.datadoghq.com`\n - US5: `api.us5.datadoghq.com`\n - EU1: `api.datadoghq.eu`\n - AP1: `api.ap1.datadoghq.com`\n - GOV: `api.ddog-gov.com`\n\nFor more details, see the [Datadog API and Application Keys documentation](https://docs.datadoghq.com/account_management/api-app-keys/).", + "header": "## Authentication" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:34:03.145Z", + "summary": "The Arcade toolkit for DatadogApi empowers developers to interact seamlessly with the Datadog API to manage monitoring, analytics, and incident responses. This toolkit enhances the ability to automate workflows, streamline operations, and effectively manage cloud resources.\n\n**Capabilities**:\n- Efficiently manage Datadog integrations, monitor resources, and handle alerts.\n- Automate operational workflows, including on-call management and incident response.\n- Support configuration management for AWS, Azure, and GCP services.\n- Streamline security monitoring and logging capabilities.\n- Facilitate role and permissions management across teams.\n\n**Secrets**:\n- Configuration includes various secrets like `DATADOG_API_KEY`, `DATADOG_APPLICATION_KEY`, and others essential for API access." +} diff --git a/data/toolkits/deepwiki.json b/data/toolkits/deepwiki.json new file mode 100644 index 000000000..2bac06bc1 --- /dev/null +++ b/data/toolkits/deepwiki.json @@ -0,0 +1,145 @@ +{ + "id": "Deepwiki", + "label": "Deepwiki", + "version": "0.0.1", + "description": "", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/deepwiki.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/deepwiki", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "ask_question", + "qualifiedName": "Deepwiki.ask_question", + "fullyQualifiedName": "Deepwiki.ask_question@0.0.1", + "description": "Ask any question about a GitHub repository", + "parameters": [ + { + "name": "question", + "type": "string", + "required": true, + "description": "The question to ask about the repository", + "enum": null, + "inferrable": true + }, + { + "name": "repoName", + "type": "string", + "required": true, + "description": "GitHub repository: owner/repo (e.g. \"facebook/react\")", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": null + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Deepwiki.ask_question", + "parameters": { + "question": { + "value": "What is the main purpose of this repository?", + "type": "string", + "required": true + }, + "repoName": { + "value": "facebook/react", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "read_wiki_contents", + "qualifiedName": "Deepwiki.read_wiki_contents", + "fullyQualifiedName": "Deepwiki.read_wiki_contents@0.0.1", + "description": "View documentation about a GitHub repository", + "parameters": [ + { + "name": "repoName", + "type": "string", + "required": true, + "description": "GitHub repository: owner/repo (e.g. \"facebook/react\")", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": null + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Deepwiki.read_wiki_contents", + "parameters": { + "repoName": { + "value": "facebook/react", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "read_wiki_structure", + "qualifiedName": "Deepwiki.read_wiki_structure", + "fullyQualifiedName": "Deepwiki.read_wiki_structure@0.0.1", + "description": "Get a list of documentation topics for a GitHub repository", + "parameters": [ + { + "name": "repoName", + "type": "string", + "required": true, + "description": "GitHub repository: owner/repo (e.g. \"facebook/react\")", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": null + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Deepwiki.read_wiki_structure", + "parameters": { + "repoName": { + "value": "facebook/react", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:28:39.914Z", + "summary": "Deepwiki offers a toolkit designed for seamless interaction with GitHub repositories, enabling developers to efficiently access and query documentation as well as repository details. \\n\\n**Capabilities**:\\n- Perform effective queries about GitHub repositories using natural language.\\n- Retrieve comprehensive documentation and wiki content.\\n- Explore the structure of documentation topics within a repository for streamlined navigation.\\n\\n**Secrets**:\\n- No secret types are utilized in this toolkit, enhancing accessibility without requiring sensitive information." +} diff --git a/data/toolkits/dropbox.json b/data/toolkits/dropbox.json new file mode 100644 index 000000000..7653caec6 --- /dev/null +++ b/data/toolkits/dropbox.json @@ -0,0 +1,261 @@ +{ + "id": "Dropbox", + "label": "Dropbox", + "version": "1.0.1", + "description": "Arcade tools designed for LLMs to interact with Dropbox", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/dropbox.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/dropbox", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "dropbox", + "allScopes": ["files.content.read", "files.metadata.read"] + }, + "tools": [ + { + "name": "DownloadFile", + "qualifiedName": "Dropbox.DownloadFile", + "fullyQualifiedName": "Dropbox.DownloadFile@1.0.1", + "description": "Downloads the specified file.\n\nNote: either one of `file_path` or `file_id` must be provided.", + "parameters": [ + { + "name": "file_path", + "type": "string", + "required": false, + "description": "The path of the file to download. E.g. '/AcmeInc/Reports/Q1_2025.txt'. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "file_id", + "type": "string", + "required": false, + "description": "The ID of the file to download. E.g. 'id:a4ayc_80_OEAAAAAAAAAYa'. Defaults to None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "dropbox", + "providerType": "oauth2", + "scopes": ["files.content.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Contents of the specified file" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Dropbox.DownloadFile", + "parameters": { + "file_path": { + "value": "/AcmeInc/Reports/Q1_2025.txt", + "type": "string", + "required": false + }, + "file_id": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "dropbox", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListItemsInFolder", + "qualifiedName": "Dropbox.ListItemsInFolder", + "fullyQualifiedName": "Dropbox.ListItemsInFolder@1.0.1", + "description": "Provides a dictionary containing the list of items in the specified folder path.\n\nNote 1: when paginating, it is not necessary to provide any other argument besides the cursor.\nNote 2: when paginating, any given item (file or folder) may be returned in multiple pages.", + "parameters": [ + { + "name": "folder_path", + "type": "string", + "required": false, + "description": "The path to the folder to list the contents of. E.g. '/AcmeInc/Reports'. Defaults to an empty string (list items in the Dropbox root folder).", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of items to return. Defaults to 100. Maximum allowed is 2000.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor", + "type": "string", + "required": false, + "description": "The cursor token for the next page of results. Defaults to None (returns the first page of results).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "dropbox", + "providerType": "oauth2", + "scopes": ["files.metadata.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Dictionary containing the list of files and folders in the specified folder path" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Dropbox.ListItemsInFolder", + "parameters": { + "folder_path": { + "value": "/AcmeInc/Reports", + "type": "string", + "required": false + }, + "limit": { + "value": 150, + "type": "integer", + "required": false + }, + "cursor": { + "value": "cursor_token_example", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "dropbox", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchFilesAndFolders", + "qualifiedName": "Dropbox.SearchFilesAndFolders", + "fullyQualifiedName": "Dropbox.SearchFilesAndFolders@1.0.1", + "description": "Returns a list of items in the specified folder path matching the search criteria.\n\nNote 1: the Dropbox API will return up to 10,000 (ten thousand) items cumulatively across\nmultiple pagination requests using the cursor token.\nNote 2: when paginating, it is not necessary to provide any other argument besides the cursor.\nNote 3: when paginating, any given item (file or folder) may be returned in multiple pages.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "The keywords to search for. E.g. 'quarterly report'. Maximum length allowed by the Dropbox API is 1000 characters. ", + "enum": null, + "inferrable": true + }, + { + "name": "search_in_folder_path", + "type": "string", + "required": false, + "description": "Restricts the search to the specified folder path. E.g. '/AcmeInc/Reports'. Defaults to None (search in the entire Dropbox).", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_category", + "type": "array", + "innerType": "string", + "required": false, + "description": "Restricts the search to the specified category(ies) of items. Provide None, one or multiple, if needed. Defaults to None (returns all categories).", + "enum": [ + "image", + "document", + "pdf", + "spreadsheet", + "presentation", + "audio", + "video", + "folder", + "paper" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of items to return. Defaults to 100. Maximum allowed is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor", + "type": "string", + "required": false, + "description": "The cursor token for the next page of results. Defaults to None (first page of results).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "dropbox", + "providerType": "oauth2", + "scopes": ["files.metadata.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List of items in the specified folder path matching the search criteria" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Dropbox.SearchFilesAndFolders", + "parameters": { + "keywords": { + "value": "financial report Q3 2023", + "type": "string", + "required": true + }, + "search_in_folder_path": { + "value": "/AcmeInc/Reports/Finance", + "type": "string", + "required": false + }, + "filter_by_category": { + "value": ["pdf", "xlsx"], + "type": "array", + "required": false + }, + "limit": { + "value": 100, + "type": "integer", + "required": false + }, + "cursor": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "dropbox", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Dropbox MCP Server uses the [Dropbox auth provider](/references/auth-providers/dropbox) to connect to users' Dropbox accounts.", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:28:45.961Z", + "summary": "Arcade provides a toolkit for integrating with Dropbox, enabling seamless interactions with files stored in the cloud. Developers can leverage these tools for various file management capabilities.\n\n**Capabilities**\n- Download files directly from Dropbox.\n- List items in specified folders with efficient pagination.\n- Search for files and folders using customized criteria, while utilizing pagination to manage large result sets.\n\n**OAuth**\n- **Provider**: Dropbox \n- **Scopes**: files.content.read, files.metadata.read \n\nNo secret types are required for using this toolkit. Users simply need OAuth tokens for authentication." +} diff --git a/data/toolkits/e2b.json b/data/toolkits/e2b.json new file mode 100644 index 000000000..04b9100ef --- /dev/null +++ b/data/toolkits/e2b.json @@ -0,0 +1,127 @@ +{ + "id": "E2b", + "label": "E2B", + "version": "3.0.1", + "description": "Arcade.dev LLM tools for running code in a sandbox using E2B", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/e2b.svg", + "isBYOC": true, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/e2b", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "CreateStaticMatplotlibChart", + "qualifiedName": "E2b.CreateStaticMatplotlibChart", + "fullyQualifiedName": "E2b.CreateStaticMatplotlibChart@3.0.1", + "description": "Run the provided Python code to generate a static matplotlib chart.\nThe resulting chart is returned as a base64 encoded image.", + "parameters": [ + { + "name": "code", + "type": "string", + "required": true, + "description": "The Python code to run", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["E2B_API_KEY"], + "secretsInfo": [ + { + "name": "E2B_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "A dictionary with the following keys: base64_image, logs, error" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "E2b.CreateStaticMatplotlibChart", + "parameters": { + "code": { + "value": "import matplotlib.pyplot as plt\nimport numpy as np\nx = np.linspace(0, 10, 100)\ny = np.sin(x)\nplt.plot(x, y)\nplt.title('Sine Wave')\nplt.xlabel('X-axis')\nplt.ylabel('Y-axis')\nplt.savefig('/tmp/sine_wave.png')", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RunCode", + "qualifiedName": "E2b.RunCode", + "fullyQualifiedName": "E2b.RunCode@3.0.1", + "description": "Run code in a sandbox and return the output.", + "parameters": [ + { + "name": "code", + "type": "string", + "required": true, + "description": "The code to run", + "enum": null, + "inferrable": true + }, + { + "name": "language", + "type": "string", + "required": false, + "description": "The language of the code", + "enum": ["python", "js", "r", "java", "bash"], + "inferrable": true + } + ], + "auth": null, + "secrets": ["E2B_API_KEY"], + "secretsInfo": [ + { + "name": "E2B_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "The sandbox execution as a JSON string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "E2b.RunCode", + "parameters": { + "code": { + "value": "print('Hello, World!')", + "type": "string", + "required": true + }, + "language": { + "value": "python", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade E2B MCP Server uses [E2B](https://e2b.dev/) to run code in a sandboxed environment.\n**Global Environment Variables:**\n- `E2B_API_KEY`: Your [E2B](https://e2b.dev/) API key.", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:28:52.862Z", + "summary": "Arcade.dev provides the E2b toolkit, enabling developers to run Python code in a secure sandbox environment. This toolkit is ideal for generating visualizations and executing code snippets safely.\n\n**Capabilities** \n- Execute Python code in a controlled environment \n- Generate static matplotlib charts \n- Return outputs as base64 encoded images or direct results \n\n**OAuth** \n- No OAuth authentication required. Use API keys for access.\n\n**Secrets** \n- Manage API keys, such as the E2B_API_KEY, to authenticate and access the toolkit functionalities securely." +} diff --git a/data/toolkits/exaapi.json b/data/toolkits/exaapi.json new file mode 100644 index 000000000..30522857c --- /dev/null +++ b/data/toolkits/exaapi.json @@ -0,0 +1,2253 @@ +{ + "id": "ExaApi", + "label": "Exa API", + "version": "2.0.0", + "description": "Tools that enable LLMs to interact directly with the Exa.ai Search API.", + "metadata": { + "category": "search", + "iconUrl": "https://design-system.arcade.dev/icons/exa.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/search/exa-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "CancelEnrichmentProcess", + "qualifiedName": "ExaApi.CancelEnrichmentProcess", + "fullyQualifiedName": "ExaApi.CancelEnrichmentProcess@2.0.0", + "description": "Cancel a running enrichment process.\n\nUse this tool to cancel any currently running enrichment process. Once canceled, the process cannot be resumed.", + "parameters": [ + { + "name": "enrichment_id", + "type": "string", + "required": true, + "description": "The unique identifier of the enrichment process to be canceled.", + "enum": null, + "inferrable": true + }, + { + "name": "webset_id", + "type": "string", + "required": true, + "description": "The ID or external ID of the Webset to identify which enrichment process to cancel.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-enrichments-cancel'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.CancelEnrichmentProcess", + "parameters": { + "enrichment_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "webset_id": { + "value": "webset-101", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelRunningSearch", + "qualifiedName": "ExaApi.CancelRunningSearch", + "fullyQualifiedName": "ExaApi.CancelRunningSearch@2.0.0", + "description": "Cancels a currently running search operation.\n\nThis tool cancels an ongoing search by using the specified webset and search ID. Useful when you need to stop a search that is still in progress.", + "parameters": [ + { + "name": "search_id", + "type": "string", + "required": true, + "description": "The ID of the search to cancel. Provide the unique string identifier for the targeted search operation.", + "enum": null, + "inferrable": true + }, + { + "name": "webset_id", + "type": "string", + "required": true, + "description": "The ID of the Webset where the search is executing. Use this to specify the Webset to be canceled.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-searches-cancel'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.CancelRunningSearch", + "parameters": { + "search_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "webset_id": { + "value": "webset456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelWebsetOperations", + "qualifiedName": "ExaApi.CancelWebsetOperations", + "fullyQualifiedName": "ExaApi.CancelWebsetOperations@2.0.0", + "description": "Cancel all operations on a specified Webset.\n\nUse this tool to stop any ongoing enrichment or search processes on a Webset, marking it as 'idle'.", + "parameters": [ + { + "name": "webset_identifier", + "type": "string", + "required": true, + "description": "The ID or external ID of the Webset to cancel operations on.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-cancel'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.CancelWebsetOperations", + "parameters": { + "webset_identifier": { + "value": "webset-123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDataImport", + "qualifiedName": "ExaApi.CreateDataImport", + "fullyQualifiedName": "ExaApi.CreateDataImport@2.0.0", + "description": "Create a new import for data upload and enhancement.\n\nUse this tool to initialize a new import process to upload data into Websets. This import can then be used to enrich, search, or exclude data using Websets' features. It provides an upload URL and a deadline for uploading the data.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'imports-create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.CreateDataImport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"data\":{\"type\":\"import\",\"attributes\":{\"name\":\"Sample Import\",\"description\":\"Import for enhancing customer data\",\"upload_url\":\"https://example.com/upload\",\"deadline\":\"2023-12-31T23:59:59Z\"}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateMonitorForWebsets", + "qualifiedName": "ExaApi.CreateMonitorForWebsets", + "fullyQualifiedName": "ExaApi.CreateMonitorForWebsets@2.0.0", + "description": "Automatically create and schedule a monitor for Websets.\n\nThis tool creates a new Monitor to keep Websets updated with fresh data. It automatically executes search and refresh operations based on defined schedules to ensure the content is current. You can configure cron expressions and timezones for precise control.", + "parameters": [], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'monitors-create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.CreateMonitorForWebsets", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateResearchRequest", + "qualifiedName": "ExaApi.CreateResearchRequest", + "fullyQualifiedName": "ExaApi.CreateResearchRequest@2.0.0", + "description": "Create a new research request through Exa API.\n\nThis tool initiates a new research request by calling the specified endpoint of the Exa API. It should be used when there is a need to start or submit a new research inquiry.", + "parameters": [], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ResearchController_createResearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.CreateResearchRequest", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWebhookForNotifications", + "qualifiedName": "ExaApi.CreateWebhookForNotifications", + "fullyQualifiedName": "ExaApi.CreateWebhookForNotifications@2.0.0", + "description": "Create webhooks for event notifications from Exa.\n\nUse this tool to set up webhooks that notify you of specific events in your Websets. Choose event types and specify the URL to receive notifications. Begins receiving notifications instantly and provides a secret key for signature verification.", + "parameters": [], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'webhooks-create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.CreateWebhookForNotifications", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWebset", + "qualifiedName": "ExaApi.CreateWebset", + "fullyQualifiedName": "ExaApi.CreateWebset@2.0.0", + "description": "Create a new Webset with optional configurations.\n\nThis tool allows you to create a new Webset with optional search, import, and enrichment configurations. Specify an `externalId` for easier integration. The Webset begins processing automatically upon creation.", + "parameters": [], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.CreateWebset", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWebsetEnrichment", + "qualifiedName": "ExaApi.CreateWebsetEnrichment", + "fullyQualifiedName": "ExaApi.CreateWebsetEnrichment@2.0.0", + "description": "Create an enrichment for a specified webset.\n\nThis tool is used to create an enrichment for a specified webset. It's suitable for when you need to enhance a webset with additional data.", + "parameters": [ + { + "name": "webset_identifier", + "type": "string", + "required": true, + "description": "The ID or external ID of the webset for which the enrichment is to be created.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-enrichments-create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.CreateWebsetEnrichment", + "parameters": { + "webset_identifier": { + "value": "webset-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWebsetSearch", + "qualifiedName": "ExaApi.CreateWebsetSearch", + "fullyQualifiedName": "ExaApi.CreateWebsetSearch@2.0.0", + "description": "Create a new search for a specified webset.\n\nThis tool is used to create a new search within a specified webset, reusing previous search results and evaluating them against new criteria. Useful for updating or refining search parameters.", + "parameters": [ + { + "name": "webset_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Webset to create a search within.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-searches-create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.CreateWebsetSearch", + "parameters": { + "webset_id": { + "value": "webset_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEnrichment", + "qualifiedName": "ExaApi.DeleteEnrichment", + "fullyQualifiedName": "ExaApi.DeleteEnrichment@2.0.0", + "description": "Delete an enrichment and cancel running processes.\n\nUse this tool to delete an enrichment, cancel any running processes, and remove all generated enrichment results.", + "parameters": [ + { + "name": "enrichment_id", + "type": "string", + "required": true, + "description": "The unique identifier of the enrichment to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "webset_id", + "type": "string", + "required": true, + "description": "The ID or external ID of the Webset to identify which enrichment to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-enrichments-delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.DeleteEnrichment", + "parameters": { + "enrichment_id": { + "value": "enrichment_123456", + "type": "string", + "required": true + }, + "webset_id": { + "value": "webset_abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteImport", + "qualifiedName": "ExaApi.DeleteImport", + "fullyQualifiedName": "ExaApi.DeleteImport@2.0.0", + "description": "Delete an import by its ID.\n\nUse this tool to delete an import record when you have the import ID.", + "parameters": [ + { + "name": "import_id", + "type": "string", + "required": true, + "description": "The unique identifier of the import to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'imports-delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.DeleteImport", + "parameters": { + "import_id": { + "value": "import_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteMonitor", + "qualifiedName": "ExaApi.DeleteMonitor", + "fullyQualifiedName": "ExaApi.DeleteMonitor@2.0.0", + "description": "Deletes a specified monitor using its ID.\n\nUse this tool to delete a monitor by providing its ID. It should be called when you need to remove a monitor from the system.", + "parameters": [ + { + "name": "monitor_id", + "type": "string", + "required": true, + "description": "The unique identifier for the monitor to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'monitors-delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.DeleteMonitor", + "parameters": { + "monitor_id": { + "value": "12345-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteWebset", + "qualifiedName": "ExaApi.DeleteWebset", + "fullyQualifiedName": "ExaApi.DeleteWebset@2.0.0", + "description": "Deletes a Webset and its associated items.\n\nUse this tool to permanently delete a Webset and all its associated items. Once deleted, it cannot be recovered.", + "parameters": [ + { + "name": "webset_identifier", + "type": "string", + "required": true, + "description": "The unique identifier or external ID of the Webset to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.DeleteWebset", + "parameters": { + "webset_identifier": { + "value": "webset-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteWebsetItem", + "qualifiedName": "ExaApi.DeleteWebsetItem", + "fullyQualifiedName": "ExaApi.DeleteWebsetItem@2.0.0", + "description": "Delete an item from a webset and cancel its enrichment process.\n\nUse this tool to remove an item from the specified webset. This will also cancel any ongoing enrichment process associated with the item.", + "parameters": [ + { + "name": "webset_identifier", + "type": "string", + "required": true, + "description": "The ID or external ID of the Webset from which the item will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "webset_item_id", + "type": "string", + "required": true, + "description": "The unique identifier of the item to be deleted from the webset.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-items-delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.DeleteWebsetItem", + "parameters": { + "webset_identifier": { + "value": "webset_12345", + "type": "string", + "required": true + }, + "webset_item_id": { + "value": "item_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FindSimilarLinks", + "qualifiedName": "ExaApi.FindSimilarLinks", + "fullyQualifiedName": "ExaApi.FindSimilarLinks@2.0.0", + "description": "Find similar links to a given link.\n\nThis tool finds links similar to the provided link and can optionally retrieve their contents. It should be called when a user needs to discover related web pages or resources.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'findSimilar'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.FindSimilarLinks", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"link\": \"https://example.com/article\", \"retrieve_contents\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GenerateAnswerSummary", + "qualifiedName": "ExaApi.GenerateAnswerSummary", + "fullyQualifiedName": "ExaApi.GenerateAnswerSummary@2.0.0", + "description": "Retrieve direct answers or detailed summaries with citations.\n\nUse this tool to perform a search based on a query. It generates either a direct answer or a detailed summary with citations, depending on the nature of the query.", + "parameters": [ + { + "name": "search_query", + "type": "string", + "required": true, + "description": "The question or query to be answered or summarized.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_streaming_response", + "type": "boolean", + "required": false, + "description": "Return the response as a server-sent events (SSE) stream if set to true.", + "enum": null, + "inferrable": true + }, + { + "name": "include_full_text", + "type": "boolean", + "required": false, + "description": "If true, the response includes full text content in the search results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'answer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.GenerateAnswerSummary", + "parameters": { + "search_query": { + "value": "What are the health benefits of green tea?", + "type": "string", + "required": true + }, + "enable_streaming_response": { + "value": true, + "type": "boolean", + "required": false + }, + "include_full_text": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetContentDetails", + "qualifiedName": "ExaApi.GetContentDetails", + "fullyQualifiedName": "ExaApi.GetContentDetails@2.0.0", + "description": "Retrieve details about specific content.\n\nUse this tool to retrieve detailed information about specific content from the EXA service. It should be called when content details are needed for further processing or display.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getContents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.GetContentDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"content_id\":\"123456\",\"include_related\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnrichmentDetails", + "qualifiedName": "ExaApi.GetEnrichmentDetails", + "fullyQualifiedName": "ExaApi.GetEnrichmentDetails@2.0.0", + "description": "Retrieve detailed information about a specific enrichment.\n\nUse this tool to get detailed information about a specific enrichment in a webset by providing the webset and enrichment IDs.", + "parameters": [ + { + "name": "enrichment_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific enrichment you want to retrieve within the webset.", + "enum": null, + "inferrable": true + }, + { + "name": "webset_identifier", + "type": "string", + "required": true, + "description": "The ID or external ID of the webset to retrieve enrichment details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-enrichments-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.GetEnrichmentDetails", + "parameters": { + "enrichment_id": { + "value": "enrich12345", + "type": "string", + "required": true + }, + "webset_identifier": { + "value": "webset98765", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEventById", + "qualifiedName": "ExaApi.GetEventById", + "fullyQualifiedName": "ExaApi.GetEventById@2.0.0", + "description": "Retrieve details of an event using its ID.\n\nUse this tool to obtain information about a specific event by providing its unique identifier.", + "parameters": [ + { + "name": "event_id", + "type": "string", + "required": true, + "description": "The unique identifier of the event to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'events-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.GetEventById", + "parameters": { + "event_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetResearchById", + "qualifiedName": "ExaApi.GetResearchById", + "fullyQualifiedName": "ExaApi.GetResearchById@2.0.0", + "description": "Retrieve research information using a specific ID.\n\nUse this tool to obtain detailed research information by providing a specific research ID. Supports real-time updates with streaming.", + "parameters": [ + { + "name": "enable_streaming", + "type": "string", + "required": true, + "description": "Set to 'true' to receive real-time streaming updates of the research information.", + "enum": null, + "inferrable": true + }, + { + "name": "event_filter", + "type": "string", + "required": true, + "description": "Specify the events to filter for in the research retrieval. Accepts a comma-separated list of event types.", + "enum": null, + "inferrable": true + }, + { + "name": "research_id", + "type": "string", + "required": true, + "description": "A string representing the unique identifier of the research to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ResearchController_getResearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.GetResearchById", + "parameters": { + "enable_streaming": { + "value": "true", + "type": "string", + "required": true + }, + "event_filter": { + "value": "publication,update,retraction", + "type": "string", + "required": true + }, + "research_id": { + "value": "research_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSearchById", + "qualifiedName": "ExaApi.GetSearchById", + "fullyQualifiedName": "ExaApi.GetSearchById@2.0.0", + "description": "Retrieve a search by its ID.\n\nUse this tool to get detailed information about a specific search by providing its ID.", + "parameters": [ + { + "name": "search_id", + "type": "string", + "required": true, + "description": "The ID of the search to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "webset_id", + "type": "string", + "required": true, + "description": "The ID of the Webset to retrieve the specific search.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-searches-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.GetSearchById", + "parameters": { + "search_id": { + "value": "12345", + "type": "string", + "required": true + }, + "webset_id": { + "value": "webset_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSpecificImport", + "qualifiedName": "ExaApi.GetSpecificImport", + "fullyQualifiedName": "ExaApi.GetSpecificImport@2.0.0", + "description": "Retrieve details of a specific import.\n\nUse this tool to get detailed information about a particular import by providing its ID.", + "parameters": [ + { + "name": "import_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific import to retrieve details about.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'imports-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.GetSpecificImport", + "parameters": { + "import_id": { + "value": "import_123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSpecificMonitor", + "qualifiedName": "ExaApi.GetSpecificMonitor", + "fullyQualifiedName": "ExaApi.GetSpecificMonitor@2.0.0", + "description": "Retrieve details of a specific monitor using its ID.\n\nThis tool is used to obtain information about a particular monitor by providing its unique ID. Call this tool when you need to get specific details about a monitor.", + "parameters": [ + { + "name": "monitor_id", + "type": "string", + "required": true, + "description": "The unique identifier of the monitor to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'monitors-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.GetSpecificMonitor", + "parameters": { + "monitor_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSpecificMonitorRun", + "qualifiedName": "ExaApi.GetSpecificMonitorRun", + "fullyQualifiedName": "ExaApi.GetSpecificMonitorRun@2.0.0", + "description": "Retrieve details of a specific monitor run.\n\nThis tool retrieves details of a specific monitor run by using the monitor ID and run ID. It should be called when you need to access information about a particular monitor run.", + "parameters": [ + { + "name": "monitor_id", + "type": "string", + "required": true, + "description": "The unique identifier of the monitor to retrieve the run for.", + "enum": null, + "inferrable": true + }, + { + "name": "run_id", + "type": "string", + "required": true, + "description": "The unique identifier of the specific run to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'monitors-runs-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.GetSpecificMonitorRun", + "parameters": { + "monitor_id": { + "value": "123456", + "type": "string", + "required": true + }, + "run_id": { + "value": "7890abc", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWebhookInfo", + "qualifiedName": "ExaApi.GetWebhookInfo", + "fullyQualifiedName": "ExaApi.GetWebhookInfo@2.0.0", + "description": "Retrieve details of a webhook using its ID.\n\nThis tool is used to get details about a specific webhook by providing its ID. It should be called when you need to access information about a particular webhook. The secret associated with the webhook is not included for security reasons.", + "parameters": [ + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The unique identifier for the webhook you want details about.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'webhooks-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.GetWebhookInfo", + "parameters": { + "webhook_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWebhooksList", + "qualifiedName": "ExaApi.GetWebhooksList", + "fullyQualifiedName": "ExaApi.GetWebhooksList@2.0.0", + "description": "Retrieve a paginated list of all webhooks in your account.\n\nUse this tool to get all the webhooks associated with your account, with options to paginate through results using limit and cursor parameters.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor used to navigate through pages of results for webhooks.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "number", + "required": false, + "description": "The number of webhooks to return per page, up to a maximum of 200.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'webhooks-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.GetWebhooksList", + "parameters": { + "pagination_cursor": { + "value": "cursor_12345", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWebsetDetails", + "qualifiedName": "ExaApi.GetWebsetDetails", + "fullyQualifiedName": "ExaApi.GetWebsetDetails@2.0.0", + "description": "Retrieve detailed information about a specific webset.\n\nThis tool is used to obtain the details of a specific webset using its unique identifier. Call this when you need information related to a particular webset.", + "parameters": [ + { + "name": "webset_identifier", + "type": "string", + "required": true, + "description": "The unique identifier or external ID for the Webset to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "resources_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of resources to include in the response for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.GetWebsetDetails", + "parameters": { + "webset_identifier": { + "value": "webset-12345", + "type": "string", + "required": true + }, + "resources_to_expand": { + "value": ["details", "resources", "settings"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWebsetItem", + "qualifiedName": "ExaApi.GetWebsetItem", + "fullyQualifiedName": "ExaApi.GetWebsetItem@2.0.0", + "description": "Retrieve a specific Webset Item by ID.\n\nThis tool is used to retrieve information about a specific Webset Item using its ID. It should be called when you need detailed information about a particular item associated with a Webset.", + "parameters": [ + { + "name": "webset_identifier", + "type": "string", + "required": true, + "description": "The ID or external ID of the Webset to identify the desired Webset from which the item is to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "webset_item_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Webset item to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-items-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.GetWebsetItem", + "parameters": { + "webset_identifier": { + "value": "webset_12345", + "type": "string", + "required": true + }, + "webset_item_id": { + "value": "item_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListImports", + "qualifiedName": "ExaApi.ListImports", + "fullyQualifiedName": "ExaApi.ListImports@2.0.0", + "description": "Retrieve all import entries for the Webset.\n\nUse this tool to get a comprehensive list of all imports associated with the Webset, useful for tracking or auditing purposes.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "String used for paginating through results. Pass it to retrieve the next set of results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit", + "type": "number", + "required": false, + "description": "Specify the maximum number of import results to return.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'imports-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.ListImports", + "parameters": { + "pagination_cursor": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "results_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListMonitorRuns", + "qualifiedName": "ExaApi.ListMonitorRuns", + "fullyQualifiedName": "ExaApi.ListMonitorRuns@2.0.0", + "description": "Lists all runs for a given monitor.\n\nUse this tool to retrieve a list of all runs associated with a specific monitor. It's helpful for tracking and analyzing past monitor activities.", + "parameters": [ + { + "name": "monitor_id", + "type": "string", + "required": true, + "description": "The ID of the monitor to list all associated runs.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'monitors-runs-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.ListMonitorRuns", + "parameters": { + "monitor_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListResearchRequests", + "qualifiedName": "ExaApi.ListResearchRequests", + "fullyQualifiedName": "ExaApi.ListResearchRequests@2.0.0", + "description": "Retrieve a paginated list of research requests.\n\nUse this tool to obtain a paginated list of all research requests. Ideal for reviewing or analyzing current research queries.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string representing the position in the paginated results to continue retrieving data from.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit", + "type": "number", + "required": false, + "description": "Specifies the number of research requests to return in the response. Helps manage pagination effectively.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ResearchController_listResearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.ListResearchRequests", + "parameters": { + "pagination_cursor": { + "value": "abc123xyza", + "type": "string", + "required": false + }, + "results_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSystemEvents", + "qualifiedName": "ExaApi.ListSystemEvents", + "fullyQualifiedName": "ExaApi.ListSystemEvents@2.0.0", + "description": "Retrieve a list of all system events.\n\nCall this tool to get a detailed list of events that have occurred within the system. Useful for auditing, monitoring, or reviewing activities. Supports pagination through a cursor parameter.", + "parameters": [ + { + "name": "created_after", + "type": "string", + "required": false, + "description": "Filter events created after or at this timestamp. Use a valid ISO 8601 datetime string in UTC.", + "enum": null, + "inferrable": true + }, + { + "name": "event_types_filter", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter events by specifying an array of event type names.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_created_before", + "type": "string", + "required": false, + "description": "Filter events created before or at this timestamp (inclusive). Provide a valid ISO 8601 datetime string in UTC.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for paginating through event results. Use it to navigate through pages of events.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit", + "type": "number", + "required": false, + "description": "Specify the number of event results to return. This controls the size of the result set for a single request.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'events-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.ListSystemEvents", + "parameters": { + "created_after": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "event_types_filter": { + "value": ["user_login", "data_export", "system_alert"], + "type": "array", + "required": false + }, + "filter_created_before": { + "value": "2023-12-31T23:59:59Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "results_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWebhookAttempts", + "qualifiedName": "ExaApi.ListWebhookAttempts", + "fullyQualifiedName": "ExaApi.ListWebhookAttempts@2.0.0", + "description": "Retrieve and list all webhook attempt records.\n\nThis tool retrieves all attempts made by a specific webhook, ordered in descending order. It is useful for monitoring webhook activity and diagnosing issues.", + "parameters": [ + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The unique identifier for the webhook to retrieve attempt records for.", + "enum": null, + "inferrable": true + }, + { + "name": "event_type_filter", + "type": "string", + "required": false, + "description": "Filter webhook attempts by specifying the type of event, such as 'webset.created' or 'monitor.run.completed'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_successful_attempts", + "type": "boolean", + "required": false, + "description": "Use 'true' to filter for successful webhook attempts and 'false' for unsuccessful ones.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string used to paginate through the webhook attempt results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit", + "type": "number", + "required": false, + "description": "Specify the maximum number of webhook attempt records to return.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'webhooks-attempts-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.ListWebhookAttempts", + "parameters": { + "webhook_id": { + "value": "webhook_12345", + "type": "string", + "required": true + }, + "event_type_filter": { + "value": "webset.created", + "type": "string", + "required": false + }, + "filter_by_successful_attempts": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc123", + "type": "string", + "required": false + }, + "results_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWebsetItems", + "qualifiedName": "ExaApi.ListWebsetItems", + "fullyQualifiedName": "ExaApi.ListWebsetItems@2.0.0", + "description": "Retrieve a list of items from a specific webset.\n\nThis tool fetches items from a designated webset, allowing pagination with the 'cursor' parameter if needed.", + "parameters": [ + { + "name": "webset_identifier", + "type": "string", + "required": true, + "description": "The ID or external ID of the Webset to retrieve items from.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string used to paginate through the results. Pass this to retrieve the next set of items in the webset.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "number", + "required": false, + "description": "Specify the number of results to return. This controls the size of the page in a paginated response.", + "enum": null, + "inferrable": true + }, + { + "name": "source_id", + "type": "string", + "required": false, + "description": "The unique identifier for the source from which to retrieve items.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-items-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.ListWebsetItems", + "parameters": { + "webset_identifier": { + "value": "webset_12345", + "type": "string", + "required": true + }, + "pagination_cursor": { + "value": "cursor_67890", + "type": "string", + "required": false + }, + "result_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "source_id": { + "value": "source_xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWebsets", + "qualifiedName": "ExaApi.ListWebsets", + "fullyQualifiedName": "ExaApi.ListWebsets@2.0.0", + "description": "Retrieve a list of available websets.\n\nUse this tool to obtain a list of websets. You can paginate through results using a cursor.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string used to paginate through the list of Websets.", + "enum": null, + "inferrable": true + }, + { + "name": "websets_return_limit", + "type": "number", + "required": false, + "description": "Specify the maximum number of Websets to return in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.ListWebsets", + "parameters": { + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "websets_return_limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWebsiteMonitors", + "qualifiedName": "ExaApi.ListWebsiteMonitors", + "fullyQualifiedName": "ExaApi.ListWebsiteMonitors@2.0.0", + "description": "Fetch all monitors associated with a website.\n\nUse this tool to retrieve a comprehensive list of all monitoring services set up for a specific website. This is helpful for maintenance, auditing, or upgrading processes.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor for paginating through the monitor results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit", + "type": "number", + "required": false, + "description": "Specifies the maximum number of monitor results to return. Use for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "webset_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Webset to retrieve monitors for. This is required to specify which website's monitors you want to list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'monitors-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.ListWebsiteMonitors", + "parameters": { + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "webset_id": { + "value": "webset_456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "PerformSearch", + "qualifiedName": "ExaApi.PerformSearch", + "fullyQualifiedName": "ExaApi.PerformSearch@2.0.0", + "description": "Perform a search and retrieve relevant results.\n\nUse this tool to execute a search with a prompt-engineered query via Exa and obtain relevant results. Optionally, retrieve the contents of the results.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.PerformSearch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"query\":\"example search query\",\"results_limit\":10}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "PreviewSearchQueryAnalysis", + "qualifiedName": "ExaApi.PreviewSearchQueryAnalysis", + "fullyQualifiedName": "ExaApi.PreviewSearchQueryAnalysis@2.0.0", + "description": "Preview how a search query will be decomposed into a webset.\n\nUse this tool to preview the decomposition and analysis of a search query before committing to webset creation, helping users understand the detected entity type, generated search criteria, and available enrichment options.", + "parameters": [], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-preview'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.PreviewSearchQueryAnalysis", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveWebhook", + "qualifiedName": "ExaApi.RemoveWebhook", + "fullyQualifiedName": "ExaApi.RemoveWebhook@2.0.0", + "description": "Remove a webhook from your account.\n\nUse this tool to delete a webhook. Once deleted, it stops receiving notifications immediately and cannot be restored. You'll need to create a new webhook if you wish to reinstate it. Use when you need to stop a webhook permanently.", + "parameters": [ + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The unique identifier of the webhook to remove. This is necessary for specifying which webhook to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'webhooks-delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.RemoveWebhook", + "parameters": { + "webhook_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateImportConfiguration", + "qualifiedName": "ExaApi.UpdateImportConfiguration", + "fullyQualifiedName": "ExaApi.UpdateImportConfiguration@2.0.0", + "description": "Update an import configuration with specified parameters.\n\nCall this tool to modify the settings of an existing import configuration using its ID.", + "parameters": [ + { + "name": "import_id", + "type": "string", + "required": true, + "description": "The unique ID of the import configuration to update.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'imports-update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.UpdateImportConfiguration", + "parameters": { + "import_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateMonitorConfiguration", + "qualifiedName": "ExaApi.UpdateMonitorConfiguration", + "fullyQualifiedName": "ExaApi.UpdateMonitorConfiguration@2.0.0", + "description": "Update a monitor configuration in Exa.\n\nUse this tool to update the configuration of a specified monitor in the Exa system. This is useful for modifying settings such as thresholds, alerts, and other configurations.", + "parameters": [ + { + "name": "monitor_id", + "type": "string", + "required": true, + "description": "The unique identifier for the monitor to update.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'monitors-update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.UpdateMonitorConfiguration", + "parameters": { + "monitor_id": { + "value": "abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWebhookSettings", + "qualifiedName": "ExaApi.UpdateWebhookSettings", + "fullyQualifiedName": "ExaApi.UpdateWebhookSettings@2.0.0", + "description": "Update webhook settings such as events, URL, or metadata.\n\nThis tool lets you modify a webhook's configuration instantly. Use it to add or remove event notifications, update the notification URL, or change metadata. The current status of the webhook remains unchanged during updates.", + "parameters": [ + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The unique identifier for the webhook to update.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'webhooks-update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.UpdateWebhookSettings", + "parameters": { + "webhook_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWebsetEnrichment", + "qualifiedName": "ExaApi.UpdateWebsetEnrichment", + "fullyQualifiedName": "ExaApi.UpdateWebsetEnrichment@2.0.0", + "description": "Update an enrichment configuration for a webset.\n\nUse this tool to modify the existing enrichment configuration of a specified webset. Call this tool when you need to apply new settings or changes to an enrichment setup.", + "parameters": [ + { + "name": "enrichment_configuration_id", + "type": "string", + "required": true, + "description": "The unique identifier of the enrichment configuration to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "webset_identifier", + "type": "string", + "required": true, + "description": "The unique identifier or name of the webset to update. This is required to target the correct webset for enrichment modification.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-enrichments-update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.UpdateWebsetEnrichment", + "parameters": { + "enrichment_configuration_id": { + "value": "abc123-xyz456", + "type": "string", + "required": true + }, + "webset_identifier": { + "value": "myWebset", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWebsetExa", + "qualifiedName": "ExaApi.UpdateWebsetExa", + "fullyQualifiedName": "ExaApi.UpdateWebsetExa@2.0.0", + "description": "Update an existing webset on Exa platform.\n\nUse this tool to update the details of an existing webset on the Exa platform. Invoke it when modifications to a webset are needed, such as changing its properties or configurations.", + "parameters": [ + { + "name": "webset_identifier", + "type": "string", + "required": true, + "description": "The unique identifier (id or externalId) of the Webset to update.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["EXA_API_KEY"], + "secretsInfo": [ + { + "name": "EXA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'websets-update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "ExaApi.UpdateWebsetExa", + "parameters": { + "webset_identifier": { + "value": "webset_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:29:15.585Z", + "summary": "ExaApi provides a toolkit that enables LLMs to interact directly with the Exa.ai Search API, facilitating advanced data handling and search operations. \n\n**Capabilities** \n- Create, update, and delete various components such as Websets and enrichments. \n- Execute and manage search processes with options to cancel ongoing operations. \n- Set up automatic monitoring and notifications to keep data current. \n- Retrieve detailed information about websets, enrichments, and research requests. \n- Perform direct searches and fetch relevant content or summaries.\n\n**Secrets** \n- API key: EXA_API_KEY, used for authentication and API access." +} diff --git a/data/toolkits/figma.json b/data/toolkits/figma.json new file mode 100644 index 000000000..11d97eaf5 --- /dev/null +++ b/data/toolkits/figma.json @@ -0,0 +1,933 @@ +{ + "id": "Figma", + "label": "Figma", + "version": "0.1.0", + "description": "Arcade tools designed for LLMs to interact with Figma", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/figma.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/figma", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "figma", + "allScopes": [ + "current_user:read", + "file_comments:read", + "file_comments:write", + "file_content:read", + "library_assets:read", + "library_content:read", + "projects:read", + "team_library_content:read" + ] + }, + "tools": [ + { + "name": "AddCommentOrReply", + "qualifiedName": "Figma.AddCommentOrReply", + "fullyQualifiedName": "Figma.AddCommentOrReply@0.1.0", + "description": "Add a comment to a Figma file or reply to an existing comment.\n\nIf parent_comment_id is provided, creates a reply to that comment.\nOtherwise creates a new comment (optionally attached to a node).", + "parameters": [ + { + "name": "file_key", + "type": "string", + "required": true, + "description": "File key. Can be found in Figma URL: https://www.figma.com/file/{FILE_KEY}/...", + "enum": null, + "inferrable": true + }, + { + "name": "message", + "type": "string", + "required": true, + "description": "The comment or reply text.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_comment_id", + "type": "string", + "required": false, + "description": "Parent comment ID to reply to. If provided, creates a reply. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "node_id", + "type": "string", + "required": false, + "description": "Node ID to attach the comment to. Ignored for replies. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "x", + "type": "number", + "required": false, + "description": "X position offset on the node. Only used with node_id. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "y", + "type": "number", + "required": false, + "description": "Y position offset on the node. Only used with node_id. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_comments:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Created comment or reply details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.AddCommentOrReply", + "parameters": { + "file_key": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "message": { + "value": "This is a test comment.", + "type": "string", + "required": true + }, + "parent_comment_id": { + "value": "comment789", + "type": "string", + "required": false + }, + "node_id": { + "value": "node321", + "type": "string", + "required": false + }, + "x": { + "value": 150, + "type": "integer", + "required": false + }, + "y": { + "value": 200, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ExportImage", + "qualifiedName": "Figma.ExportImage", + "fullyQualifiedName": "Figma.ExportImage@0.1.0", + "description": "Export Figma frames/nodes as images.\n\nReturns temporary URLs to download images. URLs valid for approximately 14 days.", + "parameters": [ + { + "name": "file_key", + "type": "string", + "required": true, + "description": "File key. Can be found in Figma URL: https://www.figma.com/file/{FILE_KEY}/...", + "enum": null, + "inferrable": true + }, + { + "name": "node_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of node IDs to export as images.", + "enum": null, + "inferrable": true + }, + { + "name": "image_format", + "type": "string", + "required": false, + "description": "Image format. Default is png.", + "enum": ["png", "svg", "pdf", "jpg"], + "inferrable": true + }, + { + "name": "scale", + "type": "number", + "required": false, + "description": "Scale factor (0.01 to 4.0). Only applies to PNG/JPG. Default is 1.0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Exported image URLs (temporary, ~14 days)" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.ExportImage", + "parameters": { + "file_key": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "node_ids": { + "value": ["node1", "node2", "node3"], + "type": "array", + "required": true + }, + "image_format": { + "value": "jpg", + "type": "string", + "required": false + }, + "scale": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetComments", + "qualifiedName": "Figma.GetComments", + "fullyQualifiedName": "Figma.GetComments@0.1.0", + "description": "Get comments on a Figma file.\n\nReturns comments with pagination support.", + "parameters": [ + { + "name": "file_key", + "type": "string", + "required": true, + "description": "File key. Can be found in Figma URL: https://www.figma.com/file/{FILE_KEY}/...", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Starting offset for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items", + "type": "integer", + "required": false, + "description": "Maximum number of comments to return (1-50). Default is 10.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_comments:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Comments on the file" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.GetComments", + "parameters": { + "file_key": { + "value": "3KJGvUdTm2ZgX3L9jH8wFQ", + "type": "string", + "required": true + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "max_items": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetComponent", + "qualifiedName": "Figma.GetComponent", + "fullyQualifiedName": "Figma.GetComponent@0.1.0", + "description": "Get metadata for a specific component by its key.", + "parameters": [ + { + "name": "component_key", + "type": "string", + "required": true, + "description": "The unique component key.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_assets:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Component metadata" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.GetComponent", + "parameters": { + "component_key": { + "value": "abc123xyz456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetComponents", + "qualifiedName": "Figma.GetComponents", + "fullyQualifiedName": "Figma.GetComponents@0.1.0", + "description": "Get published components from a file or team library.\n\nFor file: Returns all published components in the file.\nFor team: Returns paginated list of components across team library.", + "parameters": [ + { + "name": "source", + "type": "string", + "required": true, + "description": "Source type: 'file' for a specific file, 'team' for team library.", + "enum": ["file", "team"], + "inferrable": true + }, + { + "name": "source_id", + "type": "string", + "required": true, + "description": "File key (if source='file') or team ID (if source='team').", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Number of items per page (team mode only, 1-50). Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "after_cursor", + "type": "integer", + "required": false, + "description": "Cursor for next page (team mode only). Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_content:read", "team_library_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Published components from file or team library" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.GetComponents", + "parameters": { + "source": { + "value": "team", + "type": "string", + "required": true + }, + "source_id": { + "value": "12345-team-id", + "type": "string", + "required": true + }, + "page_size": { + "value": 10, + "type": "integer", + "required": false + }, + "after_cursor": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetComponentSet", + "qualifiedName": "Figma.GetComponentSet", + "fullyQualifiedName": "Figma.GetComponentSet@0.1.0", + "description": "Get metadata for a specific component set by its key.\n\nA component set is a group of related component variants.", + "parameters": [ + { + "name": "component_set_key", + "type": "string", + "required": true, + "description": "The unique component set key.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_assets:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Component set metadata" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.GetComponentSet", + "parameters": { + "component_set_key": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetComponentSets", + "qualifiedName": "Figma.GetComponentSets", + "fullyQualifiedName": "Figma.GetComponentSets@0.1.0", + "description": "Get published component sets (groups of component variants) from a file or team library.\n\nComponent sets are groups of related component variants, like a Button\nwith states: default, hover, pressed, disabled.\n\nFor file: Returns all published component sets in the file.\nFor team: Returns paginated list of component sets across team library.", + "parameters": [ + { + "name": "source", + "type": "string", + "required": true, + "description": "Source type: 'file' for a specific file, 'team' for team library.", + "enum": ["file", "team"], + "inferrable": true + }, + { + "name": "source_id", + "type": "string", + "required": true, + "description": "File key (if source='file') or team ID (if source='team').", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Number of items per page (team mode only, 1-50). Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "after_cursor", + "type": "integer", + "required": false, + "description": "Cursor for next page (team mode only). Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_content:read", "team_library_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Published component sets from file or team library" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.GetComponentSets", + "parameters": { + "source": { + "value": "file", + "type": "string", + "required": true + }, + "source_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "page_size": { + "value": 10, + "type": "integer", + "required": false + }, + "after_cursor": { + "value": null, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFile", + "qualifiedName": "Figma.GetFile", + "fullyQualifiedName": "Figma.GetFile@0.1.0", + "description": "Get a Figma file's structure including pages and metadata.\n\nReturns the file name, version, thumbnail, and list of pages.\nUse depth parameter to limit how much of the tree is returned for large files.", + "parameters": [ + { + "name": "file_key", + "type": "string", + "required": true, + "description": "File key. Can be found in Figma URL: https://www.figma.com/file/{FILE_KEY}/...", + "enum": null, + "inferrable": true + }, + { + "name": "depth", + "type": "integer", + "required": false, + "description": "How deep to traverse the node tree. Default traverses full depth. Use 1 for pages only, 2 for pages and top-level frames", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "File structure with pages and metadata" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.GetFile", + "parameters": { + "file_key": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "depth": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileNodes", + "qualifiedName": "Figma.GetFileNodes", + "fullyQualifiedName": "Figma.GetFileNodes@0.1.0", + "description": "Get specific nodes from a Figma file by their IDs.\n\nReturns the requested nodes with their properties and optionally their children.\nUse this to fetch specific parts of a file without loading the entire document.", + "parameters": [ + { + "name": "file_key", + "type": "string", + "required": true, + "description": "File key. Can be found in Figma URL: https://www.figma.com/file/{FILE_KEY}/...", + "enum": null, + "inferrable": true + }, + { + "name": "node_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of node IDs to retrieve. Node IDs can be found in Figma URL after ?node-id= parameter (URL encoded, e.g., '0:1' or '1-2').", + "enum": null, + "inferrable": true + }, + { + "name": "depth", + "type": "integer", + "required": false, + "description": "How deep to traverse from each node. Use 1 for direct children only. Default returns all descendants.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Requested nodes with their data" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.GetFileNodes", + "parameters": { + "file_key": { + "value": "1234abcd5678efgh", + "type": "string", + "required": true + }, + "node_ids": { + "value": ["0:1", "1-2"], + "type": "array", + "required": true + }, + "depth": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPages", + "qualifiedName": "Figma.GetPages", + "fullyQualifiedName": "Figma.GetPages@0.1.0", + "description": "Get a list of pages in a Figma file.\n\nReturns page IDs and names without the full node tree.", + "parameters": [ + { + "name": "file_key", + "type": "string", + "required": true, + "description": "File key. Can be found in Figma URL: https://www.figma.com/file/{FILE_KEY}/...", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List of pages in the file" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.GetPages", + "parameters": { + "file_key": { + "value": "abc123xyz456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectFiles", + "qualifiedName": "Figma.GetProjectFiles", + "fullyQualifiedName": "Figma.GetProjectFiles@0.1.0", + "description": "Get all files in a Figma project.\n\nFiles are Figma design documents containing pages and frames.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID. Can be obtained from get_team_projects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["projects:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Files in the specified project" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.GetProjectFiles", + "parameters": { + "project_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStyle", + "qualifiedName": "Figma.GetStyle", + "fullyQualifiedName": "Figma.GetStyle@0.1.0", + "description": "Get metadata for a specific style by its key.", + "parameters": [ + { + "name": "style_key", + "type": "string", + "required": true, + "description": "The unique style key.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_assets:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Style metadata" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.GetStyle", + "parameters": { + "style_key": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStyles", + "qualifiedName": "Figma.GetStyles", + "fullyQualifiedName": "Figma.GetStyles@0.1.0", + "description": "Get published styles from a file or team library.\n\nFor file: Returns all published styles in the file.\nFor team: Returns paginated list of styles across team library.", + "parameters": [ + { + "name": "source", + "type": "string", + "required": true, + "description": "Source type: 'file' for a specific file, 'team' for team library.", + "enum": ["file", "team"], + "inferrable": true + }, + { + "name": "source_id", + "type": "string", + "required": true, + "description": "File key (if source='file') or team ID (if source='team').", + "enum": null, + "inferrable": true + }, + { + "name": "page_size", + "type": "integer", + "required": false, + "description": "Number of items per page (team mode only, 1-50). Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "after_cursor", + "type": "integer", + "required": false, + "description": "Cursor for next page (team mode only). Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_content:read", "team_library_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Published styles from file or team library" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.GetStyles", + "parameters": { + "source": { + "value": "file", + "type": "string", + "required": true + }, + "source_id": { + "value": "12345ABC", + "type": "string", + "required": true + }, + "page_size": { + "value": 10, + "type": "integer", + "required": false + }, + "after_cursor": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamProjects", + "qualifiedName": "Figma.GetTeamProjects", + "fullyQualifiedName": "Figma.GetTeamProjects@0.1.0", + "description": "Get all projects in a Figma team.\n\nProjects are containers within a team that group related design files.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "Team ID. Can be found in Figma URL: https://www.figma.com/files/team/{TEAM_ID}/...", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["projects:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Projects in the specified team" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.GetTeamProjects", + "parameters": { + "team_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "Figma.WhoAmI", + "fullyQualifiedName": "Figma.WhoAmI@0.1.0", + "description": "Get the authenticated user's profile.", + "parameters": [], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["current_user:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Authenticated user's profile." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Figma.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "\nThe `projects:read` scope is **ONLY available in private Figma OAuth apps**. This scope is required for the navigation tools (`GetTeamProjects` and `GetProjectFiles`). \nIf you need these navigation tools, you must create a private OAuth app through your Figma organization settings. All other tools work with public OAuth apps.\n", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:29:03.977Z", + "summary": "Arcade provides a toolkit for LLMs to seamlessly interact with Figma, enabling users to automate design tasks and extract valuable data from Figma files. \n\n**Capabilities** \n- Interact with Figma files, including reading content and comments. \n- Export images and retrieve component metadata efficiently. \n- Manage and fetch styles, components, and team projects in an organized manner. \n- Access user profiles and detailed file structures for enhanced design workflows.\n\n**OAuth** \n- Provider: Figma \n- Scopes: current_user:read, file_comments:read, file_comments:write, file_content:read, library_assets:read, library_content:read, projects:read, team_library_content:read \n\n**Secrets** \n- None." +} diff --git a/data/toolkits/figmaapi.json b/data/toolkits/figmaapi.json new file mode 100644 index 000000000..48728c418 --- /dev/null +++ b/data/toolkits/figmaapi.json @@ -0,0 +1,2771 @@ +{ + "id": "FigmaApi", + "label": "Figma API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the figma API.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/figma.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/figma-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "figma", + "allScopes": [ + "current_user:read", + "file_comments:read", + "file_comments:write", + "file_content:read", + "file_dev_resources:read", + "file_dev_resources:write", + "file_metadata:read", + "file_variables:read", + "file_variables:write", + "file_versions:read", + "library_analytics:read", + "library_assets:read", + "library_content:read", + "projects:read", + "team_library_content:read", + "webhooks:read", + "webhooks:write" + ] + }, + "tools": [ + { + "name": "AddCommentToFigmaFile", + "qualifiedName": "FigmaApi.AddCommentToFigmaFile", + "fullyQualifiedName": "FigmaApi.AddCommentToFigmaFile@1.0.0", + "description": "Posts a new comment on a Figma file.\n\n Use this tool to post a new comment on a specified file in Figma, identified by file_key.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "figma_file_key", + "type": "string", + "required": false, + "description": "File or branch key for the Figma file where the comment will be added. Retrieve this using `GET /v1/files/:key` with the `branch_data` query param for branch keys. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_comments:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postComment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.AddCommentToFigmaFile", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "figma_file_key": { + "value": "abc123def456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"message\":\"This is a test comment.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddFigmaCommentReaction", + "qualifiedName": "FigmaApi.AddFigmaCommentReaction", + "fullyQualifiedName": "FigmaApi.AddFigmaCommentReaction@1.0.0", + "description": "Add a reaction to a comment on a Figma file.\n\n Use this tool to post a new reaction to an existing comment on a Figma file. It should be called when you want to react to a specific comment in a Figma project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "file_or_branch_key", + "type": "string", + "required": false, + "description": "Key of the file or branch where the comment reaction should be posted. Can be obtained via the Figma API. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_id", + "type": "string", + "required": false, + "description": "The unique identifier of the comment you want to react to in a Figma file. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_comments:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postCommentReaction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.AddFigmaCommentReaction", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "file_or_branch_key": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "comment_id": { + "value": "comment_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"reaction\":\"👍\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkUpdateFigmaDevResources", + "qualifiedName": "FigmaApi.BulkUpdateFigmaDevResources", + "fullyQualifiedName": "FigmaApi.BulkUpdateFigmaDevResources@1.0.0", + "description": "Update multiple Figma dev resources in bulk.\n\nThis tool updates developer resources across multiple Figma files. It should be called when you need to apply changes to several resources at once. The response will include arrays indicating which resources were successfully updated and which encountered errors.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_dev_resources:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'putDevResources'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.BulkUpdateFigmaDevResources", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"resources\":[{\"id\":\"resource1\",\"updates\":{\"name\":\"Updated Resource 1\"}},{\"id\":\"resource2\",\"updates\":{\"name\":\"Updated Resource 2\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBulkDevResources", + "qualifiedName": "FigmaApi.CreateBulkDevResources", + "fullyQualifiedName": "FigmaApi.CreateBulkDevResources@1.0.0", + "description": "Bulk create developer resources in multiple Figma files.\n\nUse this tool to create multiple developer resources across different Figma files. Successfully created resources will be listed in the response, while any errors will also be provided, indicating issues such as non-existent file keys or duplicate URLs.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_dev_resources:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postDevResources'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.CreateBulkDevResources", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"files\":[{\"file_key\":\"abc123\",\"resource_name\":\"User Guide\",\"url\":\"https://example.com/resource1\"},{\"file_key\":\"def456\",\"resource_name\":\"API Documentation\",\"url\":\"https://example.com/resource2\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateFigmaWebhook", + "qualifiedName": "FigmaApi.CreateFigmaWebhook", + "fullyQualifiedName": "FigmaApi.CreateFigmaWebhook@1.0.0", + "description": "Create a new webhook for Figma events.\n\nThis tool creates a webhook in Figma that triggers an event to a specified endpoint. It sends a PING event by default, unless set to PAUSED, and can be reactivated later.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["webhooks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.CreateFigmaWebhook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"endpoint\":\"https://example.com/webhook\",\"events\":[\"PULSE\",\"PAUSE\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteDevResource", + "qualifiedName": "FigmaApi.DeleteDevResource", + "fullyQualifiedName": "FigmaApi.DeleteDevResource@1.0.0", + "description": "Delete a dev resource from a Figma file.\n\nCall this tool to delete a specific developer resource from a Figma file using the file key and resource ID.", + "parameters": [ + { + "name": "target_file_key", + "type": "string", + "required": true, + "description": "The main file key from which to delete the dev resource. Must not be a branch key.", + "enum": null, + "inferrable": true + }, + { + "name": "dev_resource_id", + "type": "string", + "required": true, + "description": "The ID of the developer resource to delete from the Figma file.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_dev_resources:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteDevResource'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.DeleteDevResource", + "parameters": { + "target_file_key": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "dev_resource_id": { + "value": "res789xyz012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteFigmaComment", + "qualifiedName": "FigmaApi.DeleteFigmaComment", + "fullyQualifiedName": "FigmaApi.DeleteFigmaComment@1.0.0", + "description": "Delete your comment from a Figma file.\n\nUse this tool to delete a specific comment you made on a Figma file. Only the original commenter can delete their comments.", + "parameters": [ + { + "name": "figma_file_key", + "type": "string", + "required": true, + "description": "The file or branch key from which to delete the comment. Use `GET /v1/files/:key` with `branch_data` to obtain the branch key.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_identifier", + "type": "string", + "required": true, + "description": "The ID of the comment you wish to delete from the Figma file. Only the original commenter can perform this action.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_comments:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteComment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.DeleteFigmaComment", + "parameters": { + "figma_file_key": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "comment_identifier": { + "value": "comment_456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteFigmaWebhook", + "qualifiedName": "FigmaApi.DeleteFigmaWebhook", + "fullyQualifiedName": "FigmaApi.DeleteFigmaWebhook@1.0.0", + "description": "Delete a specified webhook in Figma.\n\nUse this tool to delete a specified webhook in Figma. This action is irreversible and should be called when a webhook is no longer needed.", + "parameters": [ + { + "name": "webhook_id_to_delete", + "type": "string", + "required": true, + "description": "The unique identifier of the webhook you wish to delete. This ID is required for the deletion operation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["webhooks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.DeleteFigmaWebhook", + "parameters": { + "webhook_id_to_delete": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMyCommentReaction", + "qualifiedName": "FigmaApi.DeleteMyCommentReaction", + "fullyQualifiedName": "FigmaApi.DeleteMyCommentReaction@1.0.0", + "description": "Deletes your specific comment reaction in Figma.\n\nThis tool allows users to delete a reaction they added to a comment in a Figma file. It can only be used if the reaction was made by the person attempting to delete it.", + "parameters": [ + { + "name": "reaction_emoji", + "type": "string", + "required": true, + "description": "The emoji associated with the reaction to be deleted. Only the emoji used for the reaction you added can be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "file_or_branch_key", + "type": "string", + "required": true, + "description": "Key of the Figma file or branch where the reaction should be deleted. Use `GET /v1/files/:key` with the `branch_data` query param to obtain the branch key if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_id", + "type": "string", + "required": true, + "description": "The ID of the comment from which you want to delete your reaction.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_comments:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteCommentReaction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.DeleteMyCommentReaction", + "parameters": { + "reaction_emoji": { + "value": "👍", + "type": "string", + "required": true + }, + "file_or_branch_key": { + "value": "abc123def456ghi789", + "type": "string", + "required": true + }, + "comment_id": { + "value": "comment_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchCommentReactions", + "qualifiedName": "FigmaApi.FetchCommentReactions", + "fullyQualifiedName": "FigmaApi.FetchCommentReactions@1.0.0", + "description": "Retrieve reactions from a specific comment in Figma.\n\nUse this tool to obtain a list of reactions left on a specific comment in a Figma file. This can help track engagement or feedback on comments.", + "parameters": [ + { + "name": "file_or_branch_key", + "type": "string", + "required": true, + "description": "The key for the file or branch to retrieve the comment reactions from in Figma.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_id", + "type": "string", + "required": true, + "description": "ID of the comment from which to retrieve reactions.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination. Use the cursor from the previous call's response to retrieve the next set of reactions.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_comments:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCommentReactions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.FetchCommentReactions", + "parameters": { + "file_or_branch_key": { + "value": "ABC12345XYZ", + "type": "string", + "required": true + }, + "comment_id": { + "value": "comment_67890", + "type": "string", + "required": true + }, + "pagination_cursor": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchComponentUsageData", + "qualifiedName": "FigmaApi.FetchComponentUsageData", + "fullyQualifiedName": "FigmaApi.FetchComponentUsageData@1.0.0", + "description": "Fetch library analytics component usage data by dimension.\n\nThis tool retrieves a list of library analytics component usage data, providing insights into how components are used, broken down by the specified dimension.", + "parameters": [ + { + "name": "group_by_dimension", + "type": "string", + "required": true, + "description": "A dimension to group the returned analytics data. Choose between 'component' or 'file'.", + "enum": null, + "inferrable": true + }, + { + "name": "library_file_key", + "type": "string", + "required": true, + "description": "The file key of the library to fetch analytics data for. Required for specifying the target library.", + "enum": null, + "inferrable": true + }, + { + "name": "data_page_cursor", + "type": "string", + "required": false, + "description": "Cursor indicating which page of data to fetch, obtained from a prior API call.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_analytics:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getLibraryAnalyticsComponentUsages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.FetchComponentUsageData", + "parameters": { + "group_by_dimension": { + "value": "component", + "type": "string", + "required": true + }, + "library_file_key": { + "value": "abc123def456ghi789", + "type": "string", + "required": true + }, + "data_page_cursor": { + "value": "xyz987", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchFigmaFile", + "qualifiedName": "FigmaApi.FetchFigmaFile", + "fullyQualifiedName": "FigmaApi.FetchFigmaFile@1.0.0", + "description": "Retrieve a Figma file as a JSON object using its file key.\n\nUse this tool to fetch a Figma document as JSON, identified by a file key. The returned data includes the document structure and metadata about components.", + "parameters": [ + { + "name": "file_key", + "type": "string", + "required": true, + "description": "The unique key of the Figma file or branch to retrieve as JSON.", + "enum": null, + "inferrable": true + }, + { + "name": "version_id", + "type": "string", + "required": false, + "description": "Specify the version ID to retrieve a specific version of the file. Default is the current version.", + "enum": null, + "inferrable": true + }, + { + "name": "node_ids_of_interest", + "type": "string", + "required": false, + "description": "Comma-separated list of node IDs to retrieve specific parts of the Figma document.", + "enum": null, + "inferrable": true + }, + { + "name": "traversal_depth", + "type": "number", + "required": false, + "description": "Positive integer indicating the depth in the document tree to retrieve. For example, 1 returns only Pages; 2 returns Pages and top-level objects.", + "enum": null, + "inferrable": true + }, + { + "name": "export_vector_data", + "type": "string", + "required": false, + "description": "Set to \"paths\" to include vector data in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_plugin_data", + "type": "string", + "required": false, + "description": "Comma separated list of plugin IDs and/or 'shared'. Includes plugin data in the result.", + "enum": null, + "inferrable": true + }, + { + "name": "include_branch_metadata", + "type": "boolean", + "required": false, + "description": "Set to true to include metadata about branches related to the file. If false, branch information will not be returned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFile'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.FetchFigmaFile", + "parameters": { + "file_key": { + "value": "d4gS8kj3F5hPz9hBaiBassd", + "type": "string", + "required": true + }, + "version_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "node_ids_of_interest": { + "value": "0:1,0:2", + "type": "string", + "required": false + }, + "traversal_depth": { + "value": 2, + "type": "integer", + "required": false + }, + "export_vector_data": { + "value": "paths", + "type": "string", + "required": false + }, + "include_plugin_data": { + "value": "plugin_1,plugin_2", + "type": "string", + "required": false + }, + "include_branch_metadata": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchFileVersionHistory", + "qualifiedName": "FigmaApi.FetchFileVersionHistory", + "fullyQualifiedName": "FigmaApi.FetchFileVersionHistory@1.0.0", + "description": "Fetch the version history of a Figma file.\n\nUse this tool to obtain the version history of a specific Figma file, enabling the analysis of its changes over time. This can be useful for reviewing past edits or rendering specific versions.", + "parameters": [ + { + "name": "target_file_key", + "type": "string", + "required": true, + "description": "The key of the file or branch to fetch version history for. Use this to specify the Figma file whose version history you need.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_items_per_page", + "type": "number", + "required": false, + "description": "Specify the number of items to return per page. Defaults to 30 if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "get_versions_before_id", + "type": "number", + "required": false, + "description": "A version ID to get versions before it in the history. Used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "after_version_id", + "type": "number", + "required": false, + "description": "Version ID to fetch subsequent versions. Used for pagination. Omit if not paginating.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_versions:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFileVersions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.FetchFileVersionHistory", + "parameters": { + "target_file_key": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "number_of_items_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "get_versions_before_id": { + "value": 5, + "type": "integer", + "required": false + }, + "after_version_id": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchImageFillLinks", + "qualifiedName": "FigmaApi.FetchImageFillLinks", + "fullyQualifiedName": "FigmaApi.FetchImageFillLinks@1.0.0", + "description": "Retrieve download links for images in a Figma document.\n\nUse this tool to get download links for all images present in the image fills of a Figma document. These links allow access to images users have added to their design files. The URLs will expire after about 14 days and can be found using image references.", + "parameters": [ + { + "name": "file_or_branch_key", + "type": "string", + "required": true, + "description": "The file or branch key from which to retrieve image URLs. Use `GET /v1/files/:key` to get the branch key if needed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getImageFills'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.FetchImageFillLinks", + "parameters": { + "file_or_branch_key": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchLibraryAnalyticsVariableActions", + "qualifiedName": "FigmaApi.FetchLibraryAnalyticsVariableActions", + "fullyQualifiedName": "FigmaApi.FetchLibraryAnalyticsVariableActions@1.0.0", + "description": "Retrieve library analytics variable actions data from Figma.\n\nCall this tool to obtain a breakdown of library analytics variable actions data from Figma based on a specific dimension.", + "parameters": [ + { + "name": "group_by_dimension", + "type": "string", + "required": true, + "description": "A dimension to group the returned analytics data by. Options: 'variable', 'team'.", + "enum": null, + "inferrable": true + }, + { + "name": "library_file_key", + "type": "string", + "required": true, + "description": "The file key of the library for which to fetch analytics data.", + "enum": null, + "inferrable": true + }, + { + "name": "page_cursor", + "type": "string", + "required": false, + "description": "Cursor to indicate which page of data to fetch, obtained from a previous API call.", + "enum": null, + "inferrable": true + }, + { + "name": "earliest_week_start_date", + "type": "string", + "required": false, + "description": "ISO 8601 date string (YYYY-MM-DD) representing the earliest week to include. Rounded back to the nearest week's start. Defaults to one year prior.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date", + "type": "string", + "required": false, + "description": "ISO 8601 date string (YYYY-MM-DD) for the latest week to include. Defaults to the latest computed week.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_analytics:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getLibraryAnalyticsVariableActions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.FetchLibraryAnalyticsVariableActions", + "parameters": { + "group_by_dimension": { + "value": "variable", + "type": "string", + "required": true + }, + "library_file_key": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + }, + "page_cursor": { + "value": "cursor_12345", + "type": "string", + "required": false + }, + "earliest_week_start_date": { + "value": "2022-10-01", + "type": "string", + "required": false + }, + "end_date": { + "value": "2023-10-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FigmaGetTeamProjects", + "qualifiedName": "FigmaApi.FigmaGetTeamProjects", + "fullyQualifiedName": "FigmaApi.FigmaGetTeamProjects@1.0.0", + "description": "Fetch all projects within a specified Figma team.\n\nThis tool retrieves a list of projects for a specified team in Figma, visible to the authenticated user.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique ID of the Figma team to list projects from. This is required to specify which team's projects to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["projects:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeamProjects'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.FigmaGetTeamProjects", + "parameters": { + "team_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDevResources", + "qualifiedName": "FigmaApi.GetDevResources", + "fullyQualifiedName": "FigmaApi.GetDevResources@1.0.0", + "description": "Retrieve development resources from a Figma file.\n\nUse this tool to gather development resources from a specific Figma file using the file key.", + "parameters": [ + { + "name": "file_key", + "type": "string", + "required": true, + "description": "The main file key for fetching development resources from a Figma file. Ensure it is not a branch key.", + "enum": null, + "inferrable": true + }, + { + "name": "target_node_ids", + "type": "string", + "required": false, + "description": "Comma separated list of node IDs to filter dev resources. If left blank, returns resources for all nodes.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_dev_resources:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDevResources'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetDevResources", + "parameters": { + "file_key": { + "value": "123abc456def", + "type": "string", + "required": true + }, + "target_node_ids": { + "value": "node1,node2,node3", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFigmaComponentMetadata", + "qualifiedName": "FigmaApi.GetFigmaComponentMetadata", + "fullyQualifiedName": "FigmaApi.GetFigmaComponentMetadata@1.0.0", + "description": "Retrieve metadata for a Figma component by key.\n\nUse this tool to obtain detailed metadata about a specific Figma component using its key.", + "parameters": [ + { + "name": "component_key", + "type": "string", + "required": true, + "description": "The unique identifier of the Figma component to retrieve metadata for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_assets:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getComponent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetFigmaComponentMetadata", + "parameters": { + "component_key": { + "value": "abc1234xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFigmaComponentSet", + "qualifiedName": "FigmaApi.GetFigmaComponentSet", + "fullyQualifiedName": "FigmaApi.GetFigmaComponentSet@1.0.0", + "description": "Retrieve metadata for a Figma component set using its key.\n\nUse this tool to obtain detailed metadata about a published component set in Figma by providing its unique key identifier.", + "parameters": [ + { + "name": "component_set_key", + "type": "string", + "required": true, + "description": "The unique key identifier for the Figma component set to retrieve metadata.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_assets:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getComponentSet'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetFigmaComponentSet", + "parameters": { + "component_set_key": { + "value": "123:abcde45678fghi91011jklmnop", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFigmaFileComments", + "qualifiedName": "FigmaApi.GetFigmaFileComments", + "fullyQualifiedName": "FigmaApi.GetFigmaFileComments@1.0.0", + "description": "Retrieve comments from a Figma file.\n\nUse this tool to get a list of comments left on a specific Figma file. It is useful for accessing feedback or discussions related to file elements.", + "parameters": [ + { + "name": "figma_file_or_branch_key", + "type": "string", + "required": true, + "description": "Specify the file or branch key to retrieve comments from. Use the `GET /v1/files/:key` endpoint with `branch_data` query param for branch keys.", + "enum": null, + "inferrable": true + }, + { + "name": "return_comments_as_markdown", + "type": "boolean", + "required": false, + "description": "Set to true to return comments as markdown equivalents when applicable.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_comments:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getComments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetFigmaFileComments", + "parameters": { + "figma_file_or_branch_key": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "return_comments_as_markdown": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFigmaFileComponents", + "qualifiedName": "FigmaApi.GetFigmaFileComponents", + "fullyQualifiedName": "FigmaApi.GetFigmaFileComponents@1.0.0", + "description": "Retrieve published components from a Figma file library.\n\nUse this tool to obtain a list of all published components within a specific Figma file, allowing for design asset management or analysis.", + "parameters": [ + { + "name": "file_key", + "type": "string", + "required": true, + "description": "Main file key to list components from. Must not be a branch key.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFileComponents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetFigmaFileComponents", + "parameters": { + "file_key": { + "value": "123abc456def", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFigmaFileNodes", + "qualifiedName": "FigmaApi.GetFigmaFileNodes", + "fullyQualifiedName": "FigmaApi.GetFigmaFileNodes@1.0.0", + "description": "Retrieve nodes and metadata from a Figma file.\n\nUse this tool to get detailed information about specific nodes in a Figma file, including metadata like name, last modified date, thumbnail URL, editor type, version, and link access permissions. Also retrieves document structure, component mappings, and styles. Useful for accessing and analyzing Figma design elements.", + "parameters": [ + { + "name": "node_ids_to_retrieve", + "type": "string", + "required": true, + "description": "A comma-separated list of Figma node IDs to retrieve as JSON.", + "enum": null, + "inferrable": true + }, + { + "name": "figma_file_key", + "type": "string", + "required": true, + "description": "The file or branch key from which to export JSON data in Figma.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_version_id", + "type": "string", + "required": false, + "description": "Specify a version ID to retrieve a particular version of the Figma file. If omitted, the current version is retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "node_tree_depth", + "type": "number", + "required": false, + "description": "Positive integer indicating how deep into the node tree to traverse from the starting node. A value of 1 returns only immediate children. Leaving it unset returns all nodes.", + "enum": null, + "inferrable": true + }, + { + "name": "export_vector_data", + "type": "string", + "required": false, + "description": "Set to \"paths\" to include vector data in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_plugin_data", + "type": "string", + "required": false, + "description": "Comma-separated plugin IDs and/or 'shared' to include plugin-related data in results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFileNodes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetFigmaFileNodes", + "parameters": { + "node_ids_to_retrieve": { + "value": "12345,67890", + "type": "string", + "required": true + }, + "figma_file_key": { + "value": "abcde12345", + "type": "string", + "required": true + }, + "specific_version_id": { + "value": "v1.0.0", + "type": "string", + "required": false + }, + "node_tree_depth": { + "value": 2, + "type": "integer", + "required": false + }, + "export_vector_data": { + "value": "paths", + "type": "string", + "required": false + }, + "include_plugin_data": { + "value": "plugin1,plugin2", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFigmaProjectFiles", + "qualifiedName": "FigmaApi.GetFigmaProjectFiles", + "fullyQualifiedName": "FigmaApi.GetFigmaProjectFiles@1.0.0", + "description": "Retrieve all files from a specific Figma project.\n\nThis tool fetches a list of all files within the specified Figma project. Use it when you need to access or manage project files stored in Figma.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique string ID of the Figma project from which to list files.", + "enum": null, + "inferrable": true + }, + { + "name": "include_branch_metadata", + "type": "boolean", + "required": false, + "description": "Include branch metadata for each main file with a branch in the project. Set to true to receive this data, otherwise false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["projects:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectFiles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetFigmaProjectFiles", + "parameters": { + "project_identifier": { + "value": "1234abcd5678efgh", + "type": "string", + "required": true + }, + "include_branch_metadata": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFigmaWebhook", + "qualifiedName": "FigmaApi.GetFigmaWebhook", + "fullyQualifiedName": "FigmaApi.GetFigmaWebhook@1.0.0", + "description": "Retrieve a Figma webhook by its ID.\n\nUse this tool to obtain detailed information about a specific Figma webhook by providing its unique ID.", + "parameters": [ + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "Unique identifier of the Figma webhook to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["webhooks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetFigmaWebhook", + "parameters": { + "webhook_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFigmaWebhooks", + "qualifiedName": "FigmaApi.GetFigmaWebhooks", + "fullyQualifiedName": "FigmaApi.GetFigmaWebhooks@1.0.0", + "description": "Retrieve a list of webhooks from Figma.\n\nCall this tool to get a list of webhooks available in your Figma context or plan. This can be used to manage and view all the webhooks you have access to, with results provided in a paginated format.", + "parameters": [ + { + "name": "webhook_context", + "type": "string", + "required": false, + "description": "Specify the context for the webhooks. Accepts 'team', 'project', or 'file'.", + "enum": null, + "inferrable": true + }, + { + "name": "context_identifier", + "type": "string", + "required": false, + "description": "The ID of the context to fetch attached webhooks. Cannot be used with plan_api_id.", + "enum": null, + "inferrable": true + }, + { + "name": "plan_id_for_webhooks", + "type": "string", + "required": false, + "description": "The ID of your plan for retrieving webhooks across all accessible contexts. Cannot be used with context or context_id.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination when using plan_api_id. Provide next_page or prev_page from previous response to navigate pages.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["webhooks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWebhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetFigmaWebhooks", + "parameters": { + "webhook_context": { + "value": "project", + "type": "string", + "required": false + }, + "context_identifier": { + "value": "123456789", + "type": "string", + "required": false + }, + "plan_id_for_webhooks": { + "value": "plan_987654321", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "next_page", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileMetadata", + "qualifiedName": "FigmaApi.GetFileMetadata", + "fullyQualifiedName": "FigmaApi.GetFileMetadata@1.0.0", + "description": "Retrieve metadata for a specified Figma file.\n\nThis tool is used to obtain metadata information from a specific Figma file by providing the file key. It can be called when users need to access details about a Figma file, such as its name, creator, and other properties.", + "parameters": [ + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "File or branch key to get metadata for. Use the `branch_data` query param to get the branch key.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_metadata:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFileMeta'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetFileMetadata", + "parameters": { + "file_identifier": { + "value": "123ABC456DEF", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLibraryAnalyticsComponentActions", + "qualifiedName": "FigmaApi.GetLibraryAnalyticsComponentActions", + "fullyQualifiedName": "FigmaApi.GetLibraryAnalyticsComponentActions@1.0.0", + "description": "Get analytics for library component actions.\n\nRetrieve detailed data on library component actions in Figma, broken down by the specified dimension. This tool is used to gain insights into how components in a Figma library are being utilized.", + "parameters": [ + { + "name": "group_by_dimension", + "type": "string", + "required": true, + "description": "Specify the dimension to group the analytics data by. Options are 'component' or 'team'.", + "enum": null, + "inferrable": true + }, + { + "name": "library_file_key", + "type": "string", + "required": true, + "description": "The unique file key for the Figma library to retrieve analytics data from.", + "enum": null, + "inferrable": true + }, + { + "name": "data_page_cursor", + "type": "string", + "required": false, + "description": "Cursor indicating the specific page of data to fetch, obtained from a previous API call.", + "enum": null, + "inferrable": true + }, + { + "name": "earliest_start_date", + "type": "string", + "required": false, + "description": "ISO 8601 date string (YYYY-MM-DD) for the earliest week to include. Rounded back to the start of a week. Defaults to one year prior.", + "enum": null, + "inferrable": true + }, + { + "name": "latest_inclusion_date", + "type": "string", + "required": false, + "description": "ISO 8601 date string (YYYY-MM-DD) of the latest week to include, rounded forward to the nearest week's end. Defaults to the latest computed week.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_analytics:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getLibraryAnalyticsComponentActions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetLibraryAnalyticsComponentActions", + "parameters": { + "group_by_dimension": { + "value": "component", + "type": "string", + "required": true + }, + "library_file_key": { + "value": "abc123def456ghi789", + "type": "string", + "required": true + }, + "data_page_cursor": { + "value": "cursor_123456", + "type": "string", + "required": false + }, + "earliest_start_date": { + "value": "2022-10-01", + "type": "string", + "required": false + }, + "latest_inclusion_date": { + "value": "2023-10-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLibraryAnalyticsVariableUsages", + "qualifiedName": "FigmaApi.GetLibraryAnalyticsVariableUsages", + "fullyQualifiedName": "FigmaApi.GetLibraryAnalyticsVariableUsages@1.0.0", + "description": "Retrieve analytics on library variable usage.\n\nFetches a breakdown of library analytics variable usage data by the specified dimension.", + "parameters": [ + { + "name": "group_by_dimension", + "type": "string", + "required": true, + "description": "Specifies the dimension ('variable' or 'file') for grouping library analytics data.", + "enum": null, + "inferrable": true + }, + { + "name": "library_file_key", + "type": "string", + "required": true, + "description": "The unique key of the library to fetch analytics data from.", + "enum": null, + "inferrable": true + }, + { + "name": "page_cursor", + "type": "string", + "required": false, + "description": "A token to fetch the specific page of results, received from a previous API call.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_analytics:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getLibraryAnalyticsVariableUsages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetLibraryAnalyticsVariableUsages", + "parameters": { + "group_by_dimension": { + "value": "variable", + "type": "string", + "required": true + }, + "library_file_key": { + "value": "1234abcd5678efgh", + "type": "string", + "required": true + }, + "page_cursor": { + "value": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpobnIiLCJpYXQiOjEyMjY3MTY4NTh9.6Kt7Lk9GAmv2T35jZmgN17a3z-f91NvAcUzLd1xykbk", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLibraryStyleActions", + "qualifiedName": "FigmaApi.GetLibraryStyleActions", + "fullyQualifiedName": "FigmaApi.GetLibraryStyleActions@1.0.0", + "description": "Retrieve library style analytics actions data by dimension.\n\nUse this tool to obtain detailed actions data for styles in a Figma library, categorized by the specified dimension. Ideal for analyzing how styles are used or modified.", + "parameters": [ + { + "name": "group_by_dimension", + "type": "string", + "required": true, + "description": "Specify the dimension ('style' or 'team') to group the returned analytics data by.", + "enum": null, + "inferrable": true + }, + { + "name": "library_file_key", + "type": "string", + "required": true, + "description": "The unique file key of the Figma library to retrieve analytics data for.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor to indicate which page of data to fetch. Obtain this from a prior API call.", + "enum": null, + "inferrable": true + }, + { + "name": "earliest_week_start_date", + "type": "string", + "required": false, + "description": "ISO 8601 date string (YYYY-MM-DD) for the earliest week to include. Dates round back to the nearest week start. Defaults to one year prior.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date", + "type": "string", + "required": false, + "description": "ISO 8601 date string (YYYY-MM-DD) for the latest week to include, rounded to the week's end. Defaults to the latest computed week if not specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_analytics:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getLibraryAnalyticsStyleActions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetLibraryStyleActions", + "parameters": { + "group_by_dimension": { + "value": "style", + "type": "string", + "required": true + }, + "library_file_key": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "pagination_cursor": { + "value": "cursor123", + "type": "string", + "required": false + }, + "earliest_week_start_date": { + "value": "2022-10-01", + "type": "string", + "required": false + }, + "end_date": { + "value": "2023-10-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLibraryStyleUsageData", + "qualifiedName": "FigmaApi.GetLibraryStyleUsageData", + "fullyQualifiedName": "FigmaApi.GetLibraryStyleUsageData@1.0.0", + "description": "Retrieve style usage data from Figma library analytics.\n\nThis tool returns library analytics style usage data from Figma, broken down by the requested dimension. It should be used to analyze style usage within a specific Figma library file.", + "parameters": [ + { + "name": "group_by_dimension", + "type": "string", + "required": true, + "description": "Dimension to group the returned analytics data by. Options are 'style' or 'file'.", + "enum": null, + "inferrable": true + }, + { + "name": "library_file_key", + "type": "string", + "required": true, + "description": "The file key of the Figma library to fetch analytics data for. This is required to specify the source library.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor indicating which page of data to fetch, obtained from a previous API call.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_analytics:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getLibraryAnalyticsStyleUsages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetLibraryStyleUsageData", + "parameters": { + "group_by_dimension": { + "value": "style", + "type": "string", + "required": true + }, + "library_file_key": { + "value": "abcd1234efgh5678ijkl9012", + "type": "string", + "required": true + }, + "pagination_cursor": { + "value": "xyz987", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPublishedComponentSets", + "qualifiedName": "FigmaApi.GetPublishedComponentSets", + "fullyQualifiedName": "FigmaApi.GetPublishedComponentSets@1.0.0", + "description": "Retrieve published component sets from a Figma file.\n\nCall this tool to get a list of published component sets within a specified Figma file library. Useful for accessing design components efficiently.", + "parameters": [ + { + "name": "main_file_key", + "type": "string", + "required": true, + "description": "The main file key of the Figma file to list component sets from. Must not be a branch key.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFileComponentSets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetPublishedComponentSets", + "parameters": { + "main_file_key": { + "value": "abc123xyz456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPublishedStylesFromFile", + "qualifiedName": "FigmaApi.GetPublishedStylesFromFile", + "fullyQualifiedName": "FigmaApi.GetPublishedStylesFromFile@1.0.0", + "description": "Retrieve published styles from a Figma file library.\n\nUse this tool to get a list of published styles within a specific Figma file library. Useful when you need to analyze or display the styles used in a Figma file.", + "parameters": [ + { + "name": "main_file_key", + "type": "string", + "required": true, + "description": "Main file key to list styles from. Must not be a branch key.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFileStyles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetPublishedStylesFromFile", + "parameters": { + "main_file_key": { + "value": "1234abcd5678efgh", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPublishedVariables", + "qualifiedName": "FigmaApi.GetPublishedVariables", + "fullyQualifiedName": "FigmaApi.GetPublishedVariables@1.0.0", + "description": "Retrieve published variables from a Figma file.\n\nCall this tool to get a list of variables that are published from a specified Figma file. The response includes variable and collection details along with `subscribed_id`. Ideal for users needing information on published variables from a file within an Enterprise organization.", + "parameters": [ + { + "name": "main_file_key", + "type": "string", + "required": true, + "description": "The key of the Figma file to retrieve published variables from. Only use the main file key, not a branch key.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_variables:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPublishedVariables'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetPublishedVariables", + "parameters": { + "main_file_key": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRecentWebhookRequests", + "qualifiedName": "FigmaApi.GetRecentWebhookRequests", + "fullyQualifiedName": "FigmaApi.GetRecentWebhookRequests@1.0.0", + "description": "Retrieve recent webhook requests from the last week.\n\nUse this tool to gather webhook requests sent within the last week for debugging purposes.", + "parameters": [ + { + "name": "webhook_subscription_id", + "type": "string", + "required": true, + "description": "The ID of the webhook subscription for which to retrieve recent events.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["webhooks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWebhookRequests'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetRecentWebhookRequests", + "parameters": { + "webhook_subscription_id": { + "value": "sub_1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStyleMetadata", + "qualifiedName": "FigmaApi.GetStyleMetadata", + "fullyQualifiedName": "FigmaApi.GetStyleMetadata@1.0.0", + "description": "Retrieve Figma style metadata by key.\n\nUse this tool to get detailed metadata about a specific style in Figma using its unique key. Useful for accessing style information for design analysis or integration.", + "parameters": [ + { + "name": "style_key", + "type": "string", + "required": true, + "description": "The unique identifier of the Figma style to retrieve metadata for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["library_assets:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStyle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetStyleMetadata", + "parameters": { + "style_key": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamComponents", + "qualifiedName": "FigmaApi.GetTeamComponents", + "fullyQualifiedName": "FigmaApi.GetTeamComponents@1.0.0", + "description": "Retrieve published components from a team's Figma library.\n\nUse this tool to get a list of components that have been published within a specified team's library in Figma.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team whose components you want to retrieve. This ID is necessary to specify the source team library in Figma.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_items_per_page", + "type": "number", + "required": false, + "description": "Specify the number of components to return in one page. Defaults to 30, maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_after_id", + "type": "number", + "required": false, + "description": "Cursor indicating which ID to start retrieving components after. Cannot be used with 'before'.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_before", + "type": "number", + "required": false, + "description": "Cursor to retrieve components starting before a specific id. Exclusive with 'cursor_after'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["team_library_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeamComponents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetTeamComponents", + "parameters": { + "team_id": { + "value": "team_123456", + "type": "string", + "required": true + }, + "number_of_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "cursor_after_id": { + "value": 10, + "type": "integer", + "required": false + }, + "cursor_before": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamComponentSets", + "qualifiedName": "FigmaApi.GetTeamComponentSets", + "fullyQualifiedName": "FigmaApi.GetTeamComponentSets@1.0.0", + "description": "Fetch published component sets from a Figma team library.\n\nThis tool retrieves a paginated list of component sets that have been published within a specified team library in Figma. It should be used when you need to access or explore available component sets in a particular Figma team.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team from which to list component sets.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_items_per_page", + "type": "number", + "required": false, + "description": "Specify the number of items to return per page in the results. Defaults to 30.", + "enum": null, + "inferrable": true + }, + { + "name": "start_after_cursor", + "type": "number", + "required": false, + "description": "Cursor indicating the starting point for retrieving component sets, exclusive with `end_before_cursor`. This cursor is an internally tracked integer not corresponding to any IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_before_id", + "type": "number", + "required": false, + "description": "Cursor ID indicating the point before which to retrieve component sets. It must be exclusive with the 'after' cursor.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["team_library_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeamComponentSets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetTeamComponentSets", + "parameters": { + "team_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "number_of_items_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "start_after_cursor": { + "value": 5, + "type": "integer", + "required": false + }, + "cursor_before_id": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamStyles", + "qualifiedName": "FigmaApi.GetTeamStyles", + "fullyQualifiedName": "FigmaApi.GetTeamStyles@1.0.0", + "description": "Retrieve a list of published styles from a team's library in Figma.\n\nThis tool retrieves a paginated list of styles that have been published within a specified team's library in Figma. It should be called when you need access to design styles, such as colors or text styles, that a team has made available in their library.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team from which to retrieve published styles.", + "enum": null, + "inferrable": true + }, + { + "name": "items_per_page", + "type": "number", + "required": false, + "description": "Specify the number of styles to return per page. Defaults to 30 if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "start_after_cursor", + "type": "number", + "required": false, + "description": "Cursor to start retrieving styles after a specific ID. Cannot be used with before. Internally tracked integer.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_before_id", + "type": "number", + "required": false, + "description": "Cursor for retrieving styles before a specific ID. Use this to paginate backwards. Exclusive with after.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["team_library_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeamStyles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetTeamStyles", + "parameters": { + "team_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "items_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "start_after_cursor": { + "value": 5, + "type": "integer", + "required": false + }, + "cursor_before_id": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserInformation", + "qualifiedName": "FigmaApi.GetUserInformation", + "fullyQualifiedName": "FigmaApi.GetUserInformation@1.0.0", + "description": "Retrieve information for the authenticated Figma user.\n\nUse this tool to obtain the profile information of the user currently authenticated in the Figma service.", + "parameters": [], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["current_user:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getMe'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.GetUserInformation", + "parameters": {}, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageFigmaVariables", + "qualifiedName": "FigmaApi.ManageFigmaVariables", + "fullyQualifiedName": "FigmaApi.ManageFigmaVariables@1.0.0", + "description": "Manage and organize Figma variable collections in bulk.\n\n This tool allows you to create, update, and delete variable collections, modes, and variables within Figma files for Enterprise members with Editor seats. Use it to handle variable operations in bulk, including setting mode values and managing temporary IDs. Ideal for organizing complex Figma projects efficiently.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "file_identifier", + "type": "string", + "required": false, + "description": "Specifies the Figma file or branch key to modify variables. Retrieve branch key using `GET /v1/files/:key` with `branch_data` parameter. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_variables:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postVariables'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.ManageFigmaVariables", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "file_identifier": { + "value": "12345abcde", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"variables\":[{\"name\":\"primaryColor\",\"value\":\"#FF5733\"},{\"name\":\"fontSize\",\"value\":\"16px\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RenderFigmaImages", + "qualifiedName": "FigmaApi.RenderFigmaImages", + "fullyQualifiedName": "FigmaApi.RenderFigmaImages@1.0.0", + "description": "Fetch rendered images from Figma files by node IDs.\n\nUse this tool to render and retrieve images from a Figma file by specifying node IDs. The tool returns a mapping of node IDs to URLs of the rendered images. Note: Some entries may be null if rendering fails for certain nodes. Images expire after 30 days.", + "parameters": [ + { + "name": "node_ids_to_render", + "type": "string", + "required": true, + "description": "A comma-separated list of node IDs for images to be rendered.", + "enum": null, + "inferrable": true + }, + { + "name": "figma_file_key", + "type": "string", + "required": true, + "description": "The key for the Figma file or branch to export images from. Use with the `branch_data` query parameter to obtain branch key if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "version_id", + "type": "string", + "required": false, + "description": "Specify a version ID to retrieve a particular version of a Figma file. If omitted, will use the current version.", + "enum": null, + "inferrable": true + }, + { + "name": "image_scale_factor", + "type": "number", + "required": false, + "description": "A number between 0.01 and 4, representing the image scaling factor for rendering.", + "enum": null, + "inferrable": true + }, + { + "name": "image_output_format", + "type": "string", + "required": false, + "description": "Specify the image format for the output. Options are 'jpg', 'png', 'svg', or 'pdf'.", + "enum": null, + "inferrable": true + }, + { + "name": "render_text_as_outlines", + "type": "boolean", + "required": false, + "description": "Determines if text elements are rendered as outlines in SVGs. Set `true` for visual consistency; `false` for selectable text.", + "enum": null, + "inferrable": true + }, + { + "name": "include_svg_id_attributes", + "type": "boolean", + "required": false, + "description": "Include id attributes for all SVG elements. Adds the layer name to the 'id' attribute.", + "enum": null, + "inferrable": true + }, + { + "name": "include_node_id_in_svg_elements", + "type": "boolean", + "required": false, + "description": "Set to true to include node ID attributes for all SVG elements, adding the node ID to a `data-node-id` attribute.", + "enum": null, + "inferrable": true + }, + { + "name": "svg_stroke_simplification_enabled", + "type": "boolean", + "required": false, + "description": "Set to true to simplify inside/outside strokes in SVG using stroke attributes instead of ``.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_overlapping_content", + "type": "boolean", + "required": false, + "description": "Set to true to exclude overlapping content from rendering. Set to false to include overlaps, which may increase processing time.", + "enum": null, + "inferrable": true + }, + { + "name": "use_full_dimensions_without_cropping", + "type": "boolean", + "required": false, + "description": "Export using full node dimensions, ignoring cropping and empty space. Ensures text nodes are fully visible.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_content:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getImages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.RenderFigmaImages", + "parameters": { + "node_ids_to_render": { + "value": "123,456,789", + "type": "string", + "required": true + }, + "figma_file_key": { + "value": "abc123def456ghi789", + "type": "string", + "required": true + }, + "version_id": { + "value": "v1.0.0", + "type": "string", + "required": false + }, + "image_scale_factor": { + "value": 2, + "type": "integer", + "required": false + }, + "image_output_format": { + "value": "png", + "type": "string", + "required": false + }, + "render_text_as_outlines": { + "value": true, + "type": "boolean", + "required": false + }, + "include_svg_id_attributes": { + "value": false, + "type": "boolean", + "required": false + }, + "include_node_id_in_svg_elements": { + "value": true, + "type": "boolean", + "required": false + }, + "svg_stroke_simplification_enabled": { + "value": false, + "type": "boolean", + "required": false + }, + "exclude_overlapping_content": { + "value": true, + "type": "boolean", + "required": false + }, + "use_full_dimensions_without_cropping": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFigmaLocalVariables", + "qualifiedName": "FigmaApi.RetrieveFigmaLocalVariables", + "fullyQualifiedName": "FigmaApi.RetrieveFigmaLocalVariables@1.0.0", + "description": "Retrieve local and remote variables from a Figma file.\n\nUse this tool to get a list of local variables created in a Figma file and any remote variables utilized, identified by their `subscribed_id`. This tool is available to full members of Enterprise organizations. It's useful for examining mode values and understanding variable usage within a file.", + "parameters": [ + { + "name": "file_or_branch_key", + "type": "string", + "required": true, + "description": "The key for the file or branch to retrieve variables from in Figma. If a branch, use `GET /v1/files/:key` with the `branch_data` query param to get the branch key.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["file_variables:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getLocalVariables'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.RetrieveFigmaLocalVariables", + "parameters": { + "file_or_branch_key": { + "value": "123abc456def", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateFigmaWebhook", + "qualifiedName": "FigmaApi.UpdateFigmaWebhook", + "fullyQualifiedName": "FigmaApi.UpdateFigmaWebhook@1.0.0", + "description": "Update a Figma webhook by its ID.\n\n Use this tool to update the settings or parameters of an existing webhook in Figma by specifying the webhook ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "webhook_id_to_update", + "type": "string", + "required": false, + "description": "Provide the ID of the Figma webhook you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "figma", + "providerType": "oauth2", + "scopes": ["webhooks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'putWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FigmaApi.UpdateFigmaWebhook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "webhook_id_to_update": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"url\": \"https://example.com/webhook\", \"events\": [\"FILE_COMMENT\", \"FILE_UPDATE\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "figma", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:29:26.813Z", + "summary": "Arcade Toolkit for Figma API empowers LLMs to seamlessly interact with Figma projects. This toolkit provides a robust set of capabilities for managing design assets, comments, and webhooks within Figma. \n\n**Capabilities** \n- Manage comments, including adding, deleting, and reacting to them. \n- Create, update, and delete developer resources in bulk across multiple Figma files. \n- Access and manipulate Figma components, styles, and variables for efficient asset management. \n- Fetch analytics data and version histories to analyze design changes and usage trends. \n- Integrate webhooks for real-time updates on design changes and events. \n\n**OAuth** \n- Provider: Figma \n- Scopes: current_user:read, file_comments:read, file_comments:write, file_content:read, file_dev_resources:read, file_dev_resources:write, file_metadata:read, file_variables:read, file_variables:write, file_versions:read, library_analytics:read, library_assets:read, library_content:read, projects:read, team_library_content:read, webhooks:read, webhooks:write " +} diff --git a/data/toolkits/firecrawl.json b/data/toolkits/firecrawl.json new file mode 100644 index 000000000..46b13b352 --- /dev/null +++ b/data/toolkits/firecrawl.json @@ -0,0 +1,537 @@ +{ + "id": "Firecrawl", + "label": "Firecrawl", + "version": "3.0.1", + "description": "Arcade.dev LLM tools for web scraping related tasks via Firecrawl", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/firecrawl.svg", + "isBYOC": true, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/firecrawl", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "CancelCrawl", + "qualifiedName": "Firecrawl.CancelCrawl", + "fullyQualifiedName": "Firecrawl.CancelCrawl@3.0.1", + "description": "Cancel an asynchronous crawl job that is in progress using the Firecrawl API.", + "parameters": [ + { + "name": "crawl_id", + "type": "string", + "required": true, + "description": "The ID of the asynchronous crawl job to cancel", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FIRECRAWL_API_KEY"], + "secretsInfo": [ + { + "name": "FIRECRAWL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Cancellation status information" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Firecrawl.CancelCrawl", + "parameters": { + "crawl_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CrawlWebsite", + "qualifiedName": "Firecrawl.CrawlWebsite", + "fullyQualifiedName": "Firecrawl.CrawlWebsite@3.0.1", + "description": "Crawl a website using Firecrawl. If the crawl is asynchronous, then returns the crawl ID.\nIf the crawl is synchronous, then returns the crawl data.", + "parameters": [ + { + "name": "url", + "type": "string", + "required": true, + "description": "URL to crawl", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_paths", + "type": "array", + "innerType": "string", + "required": false, + "description": "URL patterns to exclude from the crawl", + "enum": null, + "inferrable": true + }, + { + "name": "include_paths", + "type": "array", + "innerType": "string", + "required": false, + "description": "URL patterns to include in the crawl", + "enum": null, + "inferrable": true + }, + { + "name": "max_depth", + "type": "integer", + "required": false, + "description": "Maximum depth to crawl relative to the entered URL", + "enum": null, + "inferrable": true + }, + { + "name": "ignore_sitemap", + "type": "boolean", + "required": false, + "description": "Ignore the website sitemap when crawling", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Limit the number of pages to crawl", + "enum": null, + "inferrable": true + }, + { + "name": "allow_backward_links", + "type": "boolean", + "required": false, + "description": "Enable navigation to previously linked pages and enable crawling sublinks that are not children of the 'url' input parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_external_links", + "type": "boolean", + "required": false, + "description": "Allow following links to external websites", + "enum": null, + "inferrable": true + }, + { + "name": "webhook", + "type": "string", + "required": false, + "description": "The URL to send a POST request to when the crawl is started, updated and completed.", + "enum": null, + "inferrable": true + }, + { + "name": "async_crawl", + "type": "boolean", + "required": false, + "description": "Run the crawl asynchronously", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FIRECRAWL_API_KEY"], + "secretsInfo": [ + { + "name": "FIRECRAWL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Crawl status and data" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Firecrawl.CrawlWebsite", + "parameters": { + "url": { + "value": "https://example.com", + "type": "string", + "required": true + }, + "exclude_paths": { + "value": ["/login", "/private/*"], + "type": "array", + "required": false + }, + "include_paths": { + "value": ["/public/*", "/about"], + "type": "array", + "required": false + }, + "max_depth": { + "value": 3, + "type": "integer", + "required": false + }, + "ignore_sitemap": { + "value": false, + "type": "boolean", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "allow_backward_links": { + "value": true, + "type": "boolean", + "required": false + }, + "allow_external_links": { + "value": false, + "type": "boolean", + "required": false + }, + "webhook": { + "value": "https://mywebhook.com/crawl-update", + "type": "string", + "required": false + }, + "async_crawl": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCrawlData", + "qualifiedName": "Firecrawl.GetCrawlData", + "fullyQualifiedName": "Firecrawl.GetCrawlData@3.0.1", + "description": "Get the data of a Firecrawl 'crawl' that is either in progress or recently completed.", + "parameters": [ + { + "name": "crawl_id", + "type": "string", + "required": true, + "description": "The ID of the crawl job", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FIRECRAWL_API_KEY"], + "secretsInfo": [ + { + "name": "FIRECRAWL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Crawl data information" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Firecrawl.GetCrawlData", + "parameters": { + "crawl_id": { + "value": "abc12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCrawlStatus", + "qualifiedName": "Firecrawl.GetCrawlStatus", + "fullyQualifiedName": "Firecrawl.GetCrawlStatus@3.0.1", + "description": "Get the status of a Firecrawl 'crawl' that is either in progress or recently completed.", + "parameters": [ + { + "name": "crawl_id", + "type": "string", + "required": true, + "description": "The ID of the crawl job", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FIRECRAWL_API_KEY"], + "secretsInfo": [ + { + "name": "FIRECRAWL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Crawl status information" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Firecrawl.GetCrawlStatus", + "parameters": { + "crawl_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MapWebsite", + "qualifiedName": "Firecrawl.MapWebsite", + "fullyQualifiedName": "Firecrawl.MapWebsite@3.0.1", + "description": "Map a website from a single URL to a map of the entire website.", + "parameters": [ + { + "name": "url", + "type": "string", + "required": true, + "description": "The base URL to start crawling from", + "enum": null, + "inferrable": true + }, + { + "name": "search", + "type": "string", + "required": false, + "description": "Search query to use for mapping", + "enum": null, + "inferrable": true + }, + { + "name": "ignore_sitemap", + "type": "boolean", + "required": false, + "description": "Ignore the website sitemap when crawling", + "enum": null, + "inferrable": true + }, + { + "name": "include_subdomains", + "type": "boolean", + "required": false, + "description": "Include subdomains of the website", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of links to return", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FIRECRAWL_API_KEY"], + "secretsInfo": [ + { + "name": "FIRECRAWL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Website map data" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Firecrawl.MapWebsite", + "parameters": { + "url": { + "value": "https://example.com", + "type": "string", + "required": true + }, + "search": { + "value": "contact", + "type": "string", + "required": false + }, + "ignore_sitemap": { + "value": false, + "type": "boolean", + "required": false + }, + "include_subdomains": { + "value": true, + "type": "boolean", + "required": false + }, + "limit": { + "value": 100, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ScrapeUrl", + "qualifiedName": "Firecrawl.ScrapeUrl", + "fullyQualifiedName": "Firecrawl.ScrapeUrl@3.0.1", + "description": "Scrape a URL using Firecrawl and return the data in specified formats.", + "parameters": [ + { + "name": "url", + "type": "string", + "required": true, + "description": "URL to scrape", + "enum": null, + "inferrable": true + }, + { + "name": "formats", + "type": "array", + "innerType": "string", + "required": false, + "description": "Formats to retrieve. Defaults to ['markdown'].", + "enum": [ + "markdown", + "html", + "rawHtml", + "links", + "screenshot", + "screenshot@fullPage" + ], + "inferrable": true + }, + { + "name": "only_main_content", + "type": "boolean", + "required": false, + "description": "Only return the main content of the page excluding headers, navs, footers, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "include_tags", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of tags to include in the output", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_tags", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of tags to exclude from the output", + "enum": null, + "inferrable": true + }, + { + "name": "wait_for", + "type": "integer", + "required": false, + "description": "Specify a delay in milliseconds before fetching the content, allowing the page sufficient time to load.", + "enum": null, + "inferrable": true + }, + { + "name": "timeout", + "type": "integer", + "required": false, + "description": "Timeout in milliseconds for the request", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FIRECRAWL_API_KEY"], + "secretsInfo": [ + { + "name": "FIRECRAWL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Scraped data in specified formats" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Firecrawl.ScrapeUrl", + "parameters": { + "url": { + "value": "https://example.com", + "type": "string", + "required": true + }, + "formats": { + "value": ["markdown", "html"], + "type": "array", + "required": false + }, + "only_main_content": { + "value": true, + "type": "boolean", + "required": false + }, + "include_tags": { + "value": ["h1", "p"], + "type": "array", + "required": false + }, + "exclude_tags": { + "value": ["script", "style"], + "type": "array", + "required": false + }, + "wait_for": { + "value": 2000, + "type": "integer", + "required": false + }, + "timeout": { + "value": 5000, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Firecrawl MCP Server uses [Firecrawl](https://www.firecrawl.dev/) to scrape, crawl, and map websites.\n**Global Environment Variables:**\n- `FIRECRAWL_API_KEY`: Your [Firecrawl](https://www.firecrawl.dev/) API key.", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:29:24.632Z", + "summary": "Firecrawl is an Arcade.dev toolkit designed for efficient web scraping tasks. It leverages the Firecrawl API to perform various operations, enabling developers to streamline their data extraction processes.\n\n**Capabilities** \n- Perform asynchronous and synchronous website crawls \n- Retrieve crawl status and data for ongoing or recent tasks \n- Map an entire website from a single URL \n- Scrape specific URLs and return data in various formats \n- Cancel ongoing crawl jobs seamlessly \n\n**OAuth** \nNo OAuth authentication is required. An API key is utilized for accessing the Firecrawl API. \n\n**Secrets** \n- API Key: FIRECRAWL_API_KEY, used for authenticating requests to the Firecrawl API." +} diff --git a/data/toolkits/freshserviceapi.json b/data/toolkits/freshserviceapi.json new file mode 100644 index 000000000..ad516e177 --- /dev/null +++ b/data/toolkits/freshserviceapi.json @@ -0,0 +1,13887 @@ +{ + "id": "FreshserviceApi", + "label": "Freshservice API", + "version": "3.0.0", + "description": "Tools that enable LLMs to interact directly with the Freshservice API.", + "metadata": { + "category": "customer-support", + "iconUrl": "https://design-system.arcade.dev/icons/freshservice.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/customer-support/freshservice-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "ActivateCsatSurvey", + "qualifiedName": "FreshserviceApi.ActivateCsatSurvey", + "fullyQualifiedName": "FreshserviceApi.ActivateCsatSurvey@3.0.0", + "description": "Activates a CSAT Survey by its ID in Freshservice.\n\nUse this tool to activate a Customer Satisfaction (CSAT) Survey in Freshservice by providing the survey's ID.", + "parameters": [ + { + "name": "csat_survey_id", + "type": "integer", + "required": true, + "description": "The integer ID of the CSAT survey to activate in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activate-survey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ActivateCsatSurvey", + "parameters": { + "csat_survey_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddAssetComponent", + "qualifiedName": "FreshserviceApi.AddAssetComponent", + "fullyQualifiedName": "FreshserviceApi.AddAssetComponent@3.0.0", + "description": "Add a new component to an existing asset.\n\nUse this tool to add a new component for a specific asset in Freshservice. It should be called when you need to track additional components associated with an asset.", + "parameters": [ + { + "name": "asset_display_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the asset to which the new component will be added. This should be an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-asset-component'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.AddAssetComponent", + "parameters": { + "asset_display_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddNoteToProblem", + "qualifiedName": "FreshserviceApi.AddNoteToProblem", + "fullyQualifiedName": "FreshserviceApi.AddNoteToProblem@3.0.0", + "description": "Add a new note to a problem in Freshservice.\n\nUse this tool to create and add a new note to an existing problem in Freshservice, helping track updates or relevant information.", + "parameters": [ + { + "name": "note_html_body", + "type": "string", + "required": true, + "description": "The HTML formatted content of the note to be added to the problem.", + "enum": null, + "inferrable": true + }, + { + "name": "problem_id", + "type": "integer", + "required": true, + "description": "The ID of the problem to which the note will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "note_body_text", + "type": "string", + "required": false, + "description": "The content of the note in plain text format to be added to the problem in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "note_creation_datetime", + "type": "string", + "required": false, + "description": "The date and time when the note was created, formatted as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "note_creator_user_id", + "type": "integer", + "required": false, + "description": "The unique ID of the user creating the note. This identifies who is responsible for the note addition.", + "enum": null, + "inferrable": true + }, + { + "name": "note_unique_id", + "type": "integer", + "required": false, + "description": "The unique ID to be assigned to the note, ensuring it is distinct within Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "note_updated_datetime", + "type": "string", + "required": false, + "description": "The date and time when the note was last updated. Use the format 'YYYY-MM-DDTHH:MM:SSZ'.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_email_addresses", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of email addresses to notify about the note. Each address should be in string format.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-problem-note'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.AddNoteToProblem", + "parameters": { + "note_html_body": { + "value": "

This is a new note added to track progress on the problem.

", + "type": "string", + "required": true + }, + "problem_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "note_body_text": { + "value": "Note: Progress is being made on the issue.", + "type": "string", + "required": false + }, + "note_creation_datetime": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "note_creator_user_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "note_unique_id": { + "value": 54321, + "type": "integer", + "required": false + }, + "note_updated_datetime": { + "value": "2023-10-01T12:30:00Z", + "type": "string", + "required": false + }, + "notification_email_addresses": { + "value": ["example1@example.com", "example2@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddReleaseNote", + "qualifiedName": "FreshserviceApi.AddReleaseNote", + "fullyQualifiedName": "FreshserviceApi.AddReleaseNote@3.0.0", + "description": "Create a new note on a release in Freshservice.\n\nUse this tool to add a note to a specific release in Freshservice. It should be called when you need to document or update information about a release.", + "parameters": [ + { + "name": "release_id", + "type": "integer", + "required": true, + "description": "The unique ID of the release to which the note will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "note_body_html", + "type": "string", + "required": false, + "description": "Provide the note content in HTML format for the release.", + "enum": null, + "inferrable": true + }, + { + "name": "note_body_plain_text", + "type": "string", + "required": false, + "description": "The body of the release note in plain text format. Use this for non-HTML content.", + "enum": null, + "inferrable": true + }, + { + "name": "note_creation_datetime", + "type": "string", + "required": false, + "description": "Specify the date and time when the note was created. Format: YYYY-MM-DDTHH:MM:SSZ (ISO 8601 standard).", + "enum": null, + "inferrable": true + }, + { + "name": "note_creator_user_id", + "type": "integer", + "required": false, + "description": "Unique ID of the user who created the note. This ID should correspond to the user in Freshservice responsible for the note's content.", + "enum": null, + "inferrable": true + }, + { + "name": "note_unique_id", + "type": "integer", + "required": false, + "description": "Integer representing the unique ID of the note to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "note_updated_at", + "type": "string", + "required": false, + "description": "The date and time when the note was last updated, in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_email_addresses", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of email addresses to notify about the note.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-release-note'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.AddReleaseNote", + "parameters": { + "release_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "note_body_html": { + "value": "

This is an update regarding the release.

", + "type": "string", + "required": false + }, + "note_body_plain_text": { + "value": "This is an update regarding the release.", + "type": "string", + "required": false + }, + "note_creation_datetime": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "note_creator_user_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "note_unique_id": { + "value": 1, + "type": "integer", + "required": false + }, + "note_updated_at": { + "value": "2023-10-01T12:05:00Z", + "type": "string", + "required": false + }, + "notification_email_addresses": { + "value": ["example1@example.com", "example2@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddReleaseTimeEntry", + "qualifiedName": "FreshserviceApi.AddReleaseTimeEntry", + "fullyQualifiedName": "FreshserviceApi.AddReleaseTimeEntry@3.0.0", + "description": "Log a new time entry for a specific release in Freshservice.\n\n This tool is used to create a new time entry on a release within the Freshservice platform. It should be called when there's a need to record the time spent on a release.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "release_id", + "type": "integer", + "required": false, + "description": "The ID of the release for which a new time entry is to be created. This should be an integer value. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-release-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.AddReleaseTimeEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "release_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"time_spent\":\"2 hours\",\"description\":\"Development work on feature X\",\"user_id\":67890}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddTicketNote", + "qualifiedName": "FreshserviceApi.AddTicketNote", + "fullyQualifiedName": "FreshserviceApi.AddTicketNote@3.0.0", + "description": "Add a new note to a Freshservice ticket.\n\n Use this tool to post a new note on a specific Freshservice ticket by providing the ticket ID. This is useful for updating ticket information, providing status updates, or adding additional details related to the ticket.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "ticket_id_to_add_note", + "type": "integer", + "required": false, + "description": "The ID of the Freshservice ticket to which the note will be added. This ID is required to specify the particular ticket to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-ticket-note'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.AddTicketNote", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "ticket_id_to_add_note": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"note\": \"This is a test note for the ticket.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ArchiveProject", + "qualifiedName": "FreshserviceApi.ArchiveProject", + "fullyQualifiedName": "FreshserviceApi.ArchiveProject@3.0.0", + "description": "Archive an existing project in Freshservice.\n\nUse this tool to archive a project within Freshservice. This is useful for organizing and managing completed or inactive projects.", + "parameters": [ + { + "name": "project_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the project to archive in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'archive-project'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ArchiveProject", + "parameters": { + "project_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ConvertAgentToRequester", + "qualifiedName": "FreshserviceApi.ConvertAgentToRequester", + "fullyQualifiedName": "FreshserviceApi.ConvertAgentToRequester@3.0.0", + "description": "Convert an agent to a requester in Freshservice.\n\nUse this tool to convert an agent, identified by their ID, into a requester in Freshservice. This action is typically used when an agent no longer needs agent-level access.", + "parameters": [ + { + "name": "agent_id_to_convert", + "type": "integer", + "required": true, + "description": "The unique ID of the agent to convert to a requester.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-agent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ConvertAgentToRequester", + "parameters": { + "agent_id_to_convert": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ConvertRequesterToAgent", + "qualifiedName": "FreshserviceApi.ConvertRequesterToAgent", + "fullyQualifiedName": "FreshserviceApi.ConvertRequesterToAgent@3.0.0", + "description": "Convert a requester to an agent in Freshservice.\n\nUse this tool to convert a Freshservice requester into an occasional agent with the SD Agent role. This action removes any existing group memberships from the requester.", + "parameters": [ + { + "name": "requester_id_to_convert", + "type": "integer", + "required": true, + "description": "The numeric ID of the requester to be converted into an agent.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'convert-requester-to-agent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ConvertRequesterToAgent", + "parameters": { + "requester_id_to_convert": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateAgentGroupFreshservice", + "qualifiedName": "FreshserviceApi.CreateAgentGroupFreshservice", + "fullyQualifiedName": "FreshserviceApi.CreateAgentGroupFreshservice@3.0.0", + "description": "Create a new Agent Group in Freshservice.\n\nThis tool allows you to create a new Agent Group in Freshservice. Use it to organize and manage agents within your Freshservice account.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-agent-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateAgentGroupFreshservice", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"Support Team\", \"description\": \"Handles all support queries\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateAnnouncement", + "qualifiedName": "FreshserviceApi.CreateAnnouncement", + "fullyQualifiedName": "FreshserviceApi.CreateAnnouncement@3.0.0", + "description": "Create a new announcement in Freshservice.\n\nUse this tool to create a new announcement in Freshservice, ideal for disseminating information or updates within your service platform.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-announcement'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateAnnouncement", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\": \"System Maintenance Alert\", \"description\": \"Scheduled maintenance will occur on Saturday, October 14th from 2 AM to 4 AM. Please save your work and log off beforehand.\", \"priority\": \"high\", \"status\": \"published\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateAssetType", + "qualifiedName": "FreshserviceApi.CreateAssetType", + "fullyQualifiedName": "FreshserviceApi.CreateAssetType@3.0.0", + "description": "Create a new asset type in Freshservice.\n\nUse this tool to create a new asset type in Freshservice when setting up or managing assets. It automates the process of defining asset categories in the system.", + "parameters": [ + { + "name": "asset_type_name", + "type": "string", + "required": true, + "description": "The name of the asset type to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "asset_description_html", + "type": "string", + "required": false, + "description": "Provide a short description of the asset type in HTML format for styling.", + "enum": null, + "inferrable": true + }, + { + "name": "asset_type_id", + "type": "integer", + "required": false, + "description": "Unique identifier for the asset type to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "asset_type_plain_text_description", + "type": "string", + "required": false, + "description": "Short description of the asset type in plain text format without HTML tags.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_asset_type_identifier", + "type": "integer", + "required": false, + "description": "Unique identifier of the parent asset type. Use this to specify a hierarchy when creating a new asset type.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-asset-type'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateAssetType", + "parameters": { + "asset_type_name": { + "value": "Laptop", + "type": "string", + "required": true + }, + "asset_description_html": { + "value": "

A portable computer used for various tasks.

", + "type": "string", + "required": false + }, + "asset_type_id": { + "value": 101, + "type": "integer", + "required": false + }, + "asset_type_plain_text_description": { + "value": "Portable computer for work and gaming.", + "type": "string", + "required": false + }, + "parent_asset_type_identifier": { + "value": 100, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCannedResponseFolder", + "qualifiedName": "FreshserviceApi.CreateCannedResponseFolder", + "fullyQualifiedName": "FreshserviceApi.CreateCannedResponseFolder@3.0.0", + "description": "Create a new canned response folder in Freshservice.\n\nThis tool creates a new canned response folder in Freshservice. Use it when you need to organize canned responses into a new folder within the Freshservice platform.", + "parameters": [ + { + "name": "folder_name", + "type": "string", + "required": true, + "description": "The name of the new canned response folder to be created in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "canned_response_folder_id", + "type": "integer", + "required": false, + "description": "Unique identifier for the canned response folder. It must be an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_created_at", + "type": "string", + "required": false, + "description": "The timestamp indicating when the folder was created, formatted as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_type", + "type": "string", + "required": false, + "description": "Specifies the type of the canned response folder, indicating its purpose or categorization.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_responses_count", + "type": "integer", + "required": false, + "description": "Specify the initial number of responses in the new canned response folder, typically starting at 0.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_at_timestamp", + "type": "string", + "required": false, + "description": "The timestamp of the last update to the folder in ISO 8601 format.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-canned-response-folder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateCannedResponseFolder", + "parameters": { + "folder_name": { + "value": "Customer Support", + "type": "string", + "required": true + }, + "canned_response_folder_id": { + "value": 123, + "type": "integer", + "required": false + }, + "folder_created_at": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "folder_type": { + "value": "Support", + "type": "string", + "required": false + }, + "initial_responses_count": { + "value": 0, + "type": "integer", + "required": false + }, + "updated_at_timestamp": { + "value": "2023-10-05T12:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateChangeNote", + "qualifiedName": "FreshserviceApi.CreateChangeNote", + "fullyQualifiedName": "FreshserviceApi.CreateChangeNote@3.0.0", + "description": "Create a new note on a change request in Freshservice.\n\nThis tool creates a new note attached to a specific change request in Freshservice. It should be called when there's a need to append additional information or updates related to an ongoing change request.", + "parameters": [ + { + "name": "change_request_id", + "type": "integer", + "required": true, + "description": "ID of the change request to which the new note will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "note_body_html", + "type": "string", + "required": true, + "description": "The body of the note in HTML format. Use this to format the note with HTML tags for styling.", + "enum": null, + "inferrable": true + }, + { + "name": "note_body_plain_text", + "type": "string", + "required": false, + "description": "The content of the change note in plain text format.", + "enum": null, + "inferrable": true + }, + { + "name": "note_creation_datetime", + "type": "string", + "required": false, + "description": "The date and time when the note was created, in ISO 8601 format (e.g., '2023-01-01T12:00:00Z').", + "enum": null, + "inferrable": true + }, + { + "name": "note_last_updated", + "type": "string", + "required": false, + "description": "Date and time when the note was last updated, in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "note_unique_id", + "type": "integer", + "required": false, + "description": "Unique identifier for the note being created. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_email_addresses", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of email addresses to notify about the change note.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier_for_note_creator", + "type": "integer", + "required": false, + "description": "Unique ID of the user who created the note in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-change-note'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateChangeNote", + "parameters": { + "change_request_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "note_body_html": { + "value": "

This is a new note regarding the change request.

", + "type": "string", + "required": true + }, + "note_body_plain_text": { + "value": "This is a new note regarding the change request.", + "type": "string", + "required": false + }, + "note_creation_datetime": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "note_last_updated": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "note_unique_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "notification_email_addresses": { + "value": ["example1@example.com", "example2@example.com"], + "type": "array", + "required": false + }, + "user_identifier_for_note_creator": { + "value": 54321, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateChangeTask", + "qualifiedName": "FreshserviceApi.CreateChangeTask", + "fullyQualifiedName": "FreshserviceApi.CreateChangeTask@3.0.0", + "description": "Create a task on a change request in Freshservice.\n\n This tool creates a new task on a specified change request within Freshservice. It should be called when you need to add tasks to an ongoing change request to track specific actions or activities.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "change_request_id", + "type": "integer", + "required": false, + "description": "ID of the change request to add a task to. It should be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-change-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateChangeTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "change_request_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"task_name\": \"Review implementation plan\", \"assignee_id\": 67890, \"due_by\": \"2023-10-15T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateChildTicket", + "qualifiedName": "FreshserviceApi.CreateChildTicket", + "fullyQualifiedName": "FreshserviceApi.CreateChildTicket@3.0.0", + "description": "Create a new child ticket on a Freshservice ticket.\n\n Use this tool to add a child ticket to an existing ticket in Freshservice. It is useful for managing ticket hierarchies and organizing support tasks.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "parent_ticket_id", + "type": "integer", + "required": false, + "description": "ID of the main ticket for which a child ticket will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-child-ticket'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateChildTicket", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "parent_ticket_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"subject\":\"Child Ticket Example\",\"description\":\"This is a child ticket related to the main ticket.\",\"priority\":2,\"status\":1}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCsatSurvey", + "qualifiedName": "FreshserviceApi.CreateCsatSurvey", + "fullyQualifiedName": "FreshserviceApi.CreateCsatSurvey@3.0.0", + "description": "Create a new CSAT survey in Freshservice.\n\nThis tool is used to create a new Customer Satisfaction (CSAT) survey in Freshservice. Call this tool when you need to set up a survey to gather customer feedback.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-survey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateCsatSurvey", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"survey_title\": \"Customer Satisfaction Survey\", \"questions\": [{\"type\": \"rating\", \"text\": \"How would you rate your overall satisfaction?\", \"options\": [1, 2, 3, 4, 5]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCustomTicketSource", + "qualifiedName": "FreshserviceApi.CreateCustomTicketSource", + "fullyQualifiedName": "FreshserviceApi.CreateCustomTicketSource@3.0.0", + "description": "Create a custom ticket source in Freshservice.\n\nUse this tool to create a custom ticket source within the Freshservice platform. Ideal for when you need to define new ticket origin types beyond the defaults provided.", + "parameters": [ + { + "name": "source_name", + "type": "string", + "required": true, + "description": "Specify the name for the custom ticket source in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "created_timestamp", + "type": "string", + "required": false, + "description": "The timestamp when the source was created in Freshservice. Format: YYYY-MM-DDTHH:MM:SSZ.", + "enum": null, + "inferrable": true + }, + { + "name": "is_visible_for_selection", + "type": "boolean", + "required": false, + "description": "True if the source value is visible for selection in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "last_modified_timestamp", + "type": "string", + "required": false, + "description": "The timestamp indicating when the custom ticket source was last modified. Expected in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "source_id", + "type": "integer", + "required": false, + "description": "Unique identifier for the custom ticket source.", + "enum": null, + "inferrable": true + }, + { + "name": "source_position_in_list", + "type": "integer", + "required": false, + "description": "The position of the custom ticket source in the source list. It determines where this source appears in the list of sources.", + "enum": null, + "inferrable": true + }, + { + "name": "source_present_by_default", + "type": "boolean", + "required": false, + "description": "Set to true if the source value is present by default in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-ticket-field-source'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateCustomTicketSource", + "parameters": { + "source_name": { + "value": "Webhook Integration", + "type": "string", + "required": true + }, + "created_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "is_visible_for_selection": { + "value": true, + "type": "boolean", + "required": false + }, + "last_modified_timestamp": { + "value": "2023-10-10T12:00:00Z", + "type": "string", + "required": false + }, + "source_id": { + "value": 101, + "type": "integer", + "required": false + }, + "source_position_in_list": { + "value": 5, + "type": "integer", + "required": false + }, + "source_present_by_default": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFreshserviceAgent", + "qualifiedName": "FreshserviceApi.CreateFreshserviceAgent", + "fullyQualifiedName": "FreshserviceApi.CreateFreshserviceAgent@3.0.0", + "description": "Create a new agent in Freshservice.\n\nThis tool allows you to create a new agent in Freshservice. Use it when you need to add a team member to your Freshservice account.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-agent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateFreshserviceAgent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"agent\":{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"role\":\"agent\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFreshserviceCannedResponse", + "qualifiedName": "FreshserviceApi.CreateFreshserviceCannedResponse", + "fullyQualifiedName": "FreshserviceApi.CreateFreshserviceCannedResponse@3.0.0", + "description": "Create a new canned response in Freshservice.\n\nUse this tool to create a new canned response in a Freshservice account. It should be called when there is a need to automate the creation of standard replies to frequent inquiries.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-canned-response'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateFreshserviceCannedResponse", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\": \"Password Reset Instructions\", \"content\": \"To reset your password, please follow these steps: 1. Go to the login page. 2. Click on 'Forgot Password?'. 3. Enter your email address. 4. Check your email for the reset link. 5. Follow the instructions in the email to reset your password.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFreshserviceChangeRequest", + "qualifiedName": "FreshserviceApi.CreateFreshserviceChangeRequest", + "fullyQualifiedName": "FreshserviceApi.CreateFreshserviceChangeRequest@3.0.0", + "description": "Create a new Change request in Freshservice.\n\nUse this tool to initiate a new Change request within the Freshservice platform. This is typically called when a user wants to propose a change that needs to be tracked and managed through Freshservice.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-change'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateFreshserviceChangeRequest", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"change\":{\"name\":\"Network Upgrade\",\"description\":\"Upgrading the network infrastructure to improve performance.\",\"change_type\":\"Normal\",\"status\":\"Approved\",\"priority\":\"High\",\"impact\":\"Low\",\"risk\":\"Medium\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFreshserviceChangeTimeEntry", + "qualifiedName": "FreshserviceApi.CreateFreshserviceChangeTimeEntry", + "fullyQualifiedName": "FreshserviceApi.CreateFreshserviceChangeTimeEntry@3.0.0", + "description": "Create a time entry for a change request in Freshservice.\n\n Use this tool to log a new time entry associated with a specific change request in Freshservice.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "change_request_id", + "type": "integer", + "required": false, + "description": "The unique identifier of the change request for which you want to create a time entry. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-change-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateFreshserviceChangeTimeEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "change_request_id": { + "value": 123456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"time_entry\": {\"duration\": 60, \"description\": \"Worked on initial setup.\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFreshserviceProblemTask", + "qualifiedName": "FreshserviceApi.CreateFreshserviceProblemTask", + "fullyQualifiedName": "FreshserviceApi.CreateFreshserviceProblemTask@3.0.0", + "description": "Create a new task on a problem in Freshservice.\n\n This tool creates a new task associated with a specific problem in the Freshservice system. Use it when you need to assign tasks to a problem for better issue management.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "problem_identifier", + "type": "integer", + "required": false, + "description": "ID of the problem for which a new task will be created. It must be an integer representing the specific problem in Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "private_key" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-problem-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateFreshserviceProblemTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "problem_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"task_name\": \"Investigate Server Issue\", \"assigned_to\": \"john.doe@example.com\", \"due_date\": \"2023-10-10\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFreshserviceProject", + "qualifiedName": "FreshserviceApi.CreateFreshserviceProject", + "fullyQualifiedName": "FreshserviceApi.CreateFreshserviceProject@3.0.0", + "description": "Create a new project in Freshservice.\n\nUse this tool to create a new project within the Freshservice platform. This is useful for managing tasks, timelines, and resources efficiently in Freshservice.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-project'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateFreshserviceProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"New Project\",\"description\": \"This is a project for customer onboarding\",\"status\": \"active\",\"start_date\": \"2023-10-01\",\"end_date\": \"2023-12-31\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFreshserviceTicket", + "qualifiedName": "FreshserviceApi.CreateFreshserviceTicket", + "fullyQualifiedName": "FreshserviceApi.CreateFreshserviceTicket@3.0.0", + "description": "Create a new support ticket in Freshservice.\n\nUse this tool to generate a new support ticket in Freshservice, which is useful for tracking and managing customer support issues.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-ticket'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateFreshserviceTicket", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"ticket\": {\"subject\": \"Issue with product\", \"description\": \"The product is not functioning as expected.\", \"email\": \"customer@example.com\", \"priority\": 2, \"status\": 1}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewAsset", + "qualifiedName": "FreshserviceApi.CreateNewAsset", + "fullyQualifiedName": "FreshserviceApi.CreateNewAsset@3.0.0", + "description": "Create a new asset in Freshservice.\n\nUse this tool to add a new asset to the Freshservice system. Ideal for tracking and managing assets efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-asset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateNewAsset", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"Laptop\",\"type\": \"Hardware\",\"description\": \"Dell XPS 13\",\"status\": \"Active\",\"purchase_date\": \"2023-10-01\",\"vendor\": \"Dell\",\"warranty_expiration\": \"2025-10-01\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewLocation", + "qualifiedName": "FreshserviceApi.CreateNewLocation", + "fullyQualifiedName": "FreshserviceApi.CreateNewLocation@3.0.0", + "description": "Create a new location in Freshservice.\n\nUse this tool to create a new location within the Freshservice platform. It should be called when there is a need to add a new geographical or organizational location to the service database.", + "parameters": [ + { + "name": "location_name", + "type": "string", + "required": true, + "description": "Provide the name of the new location to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "address_line_2", + "type": "string", + "required": false, + "description": "The second line of the address, typically for additional location details or suite numbers.", + "enum": null, + "inferrable": true + }, + { + "name": "address_street_line_one", + "type": "string", + "required": false, + "description": "First line of the street address for the new location in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "city_name", + "type": "string", + "required": false, + "description": "The name of the city where the location is situated.", + "enum": null, + "inferrable": true + }, + { + "name": "location_country", + "type": "string", + "required": false, + "description": "Specify the country for the new location. This should be a valid country name.", + "enum": null, + "inferrable": true + }, + { + "name": "location_unique_id", + "type": "integer", + "required": false, + "description": "An integer representing the unique ID of the location to be created in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "location_zip_code", + "type": "string", + "required": false, + "description": "Provide the Zip Code for the location to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_location_id", + "type": "integer", + "required": false, + "description": "The unique identifier of the parent location if applicable. Use this to nest the new location under an existing one.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_contact_unique_id", + "type": "integer", + "required": false, + "description": "Unique ID of the primary contact. This contact is a requester, and their details will be referenced for name, email, and phone number.", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "The state or region of the location. This should be a string value representing the official name of the state.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-location'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateNewLocation", + "parameters": { + "location_name": { + "value": "New York Office", + "type": "string", + "required": true + }, + "address_line_2": { + "value": "Suite 500", + "type": "string", + "required": false + }, + "address_street_line_one": { + "value": "123 Main St", + "type": "string", + "required": false + }, + "city_name": { + "value": "New York", + "type": "string", + "required": false + }, + "location_country": { + "value": "United States", + "type": "string", + "required": false + }, + "location_unique_id": { + "value": 101, + "type": "integer", + "required": false + }, + "location_zip_code": { + "value": "10001", + "type": "string", + "required": false + }, + "parent_location_id": { + "value": 1, + "type": "integer", + "required": false + }, + "primary_contact_unique_id": { + "value": 2001, + "type": "integer", + "required": false + }, + "state": { + "value": "New York", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewProblem", + "qualifiedName": "FreshserviceApi.CreateNewProblem", + "fullyQualifiedName": "FreshserviceApi.CreateNewProblem@3.0.0", + "description": "Create a new problem in Freshservice.\n\nUse this tool to create a new problem in Freshservice when you need to log an issue or fault that may require investigation and resolution.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-problem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateNewProblem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\":\"New Network Issue\",\"description\":\"There is a connectivity problem in the main office network.\",\"priority\":2,\"status\":\"open\",\"group_id\":1,\"source\":\"email\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewProduct", + "qualifiedName": "FreshserviceApi.CreateNewProduct", + "fullyQualifiedName": "FreshserviceApi.CreateNewProduct@3.0.0", + "description": "Create a new product in the Freshservice catalog.\n\nUse this tool to add a new product to the Freshservice Product Catalog. It is called when a new product entry is needed in the inventory or catalog database.", + "parameters": [ + { + "name": "product_asset_type_id", + "type": "integer", + "required": true, + "description": "Identifier for the asset type of the product, expected as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "product_name", + "type": "string", + "required": true, + "description": "Name of the Product to be added to the catalog.", + "enum": null, + "inferrable": true + }, + { + "name": "depreciation_type_id", + "type": "integer", + "required": false, + "description": "Unique identifier for the type of depreciation used for the product. This should be an integer value corresponding to the desired depreciation method.", + "enum": null, + "inferrable": true + }, + { + "name": "depreciation_type_identifier", + "type": "string", + "required": false, + "description": "Unique identifier for the depreciation type used for the product.", + "enum": null, + "inferrable": true + }, + { + "name": "manufacturer_name", + "type": "string", + "required": false, + "description": "The name of the product's manufacturer. It accepts free text input.", + "enum": null, + "inferrable": true + }, + { + "name": "procurement_mode", + "type": "integer", + "required": false, + "description": "Mode of procurement for the product. Use `1` for Buy, `2` for Lease, `3` for Both.", + "enum": null, + "inferrable": true + }, + { + "name": "product_status_id", + "type": "integer", + "required": false, + "description": "The status of the product: `1` - In Production, `2` - In Pipeline, `3` - Retired.", + "enum": null, + "inferrable": true + }, + { + "name": "product_unique_id", + "type": "integer", + "required": false, + "description": "Unique identifier for the product in the catalog. It must be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "api_key" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-product'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateNewProduct", + "parameters": { + "product_asset_type_id": { + "value": 1001, + "type": "integer", + "required": true + }, + "product_name": { + "value": "UltraBook Pro 15", + "type": "string", + "required": true + }, + "depreciation_type_id": { + "value": 2, + "type": "integer", + "required": false + }, + "depreciation_type_identifier": { + "value": "Straight Line", + "type": "string", + "required": false + }, + "manufacturer_name": { + "value": "TechBrand", + "type": "string", + "required": false + }, + "procurement_mode": { + "value": 1, + "type": "integer", + "required": false + }, + "product_status_id": { + "value": 1, + "type": "integer", + "required": false + }, + "product_unique_id": { + "value": 50123, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewRequester", + "qualifiedName": "FreshserviceApi.CreateNewRequester", + "fullyQualifiedName": "FreshserviceApi.CreateNewRequester@3.0.0", + "description": "Create a new requester in Freshservice.\n\nUse this tool to add a new requester to Freshservice whenever you need to register someone in the system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-requester'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateNewRequester", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"phone\":\"123-456-7890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewVendor", + "qualifiedName": "FreshserviceApi.CreateNewVendor", + "fullyQualifiedName": "FreshserviceApi.CreateNewVendor@3.0.0", + "description": "Creates a new vendor in the Freshservice system.\n\nUse this tool to create a new vendor in Freshservice. Call this tool when you need to add a vendor to your vendor list, providing necessary details to complete the registration.", + "parameters": [ + { + "name": "address_line_1", + "type": "string", + "required": false, + "description": "The first line of the vendor's address, such as street name and number.", + "enum": null, + "inferrable": true + }, + { + "name": "address_line_2", + "type": "string", + "required": false, + "description": "The second line of the vendor's address, typically used for apartment or suite numbers.", + "enum": null, + "inferrable": true + }, + { + "name": "country", + "type": "string", + "required": false, + "description": "The country where the vendor is located. Provide the full name of the country.", + "enum": null, + "inferrable": true + }, + { + "name": "location_zip_code", + "type": "string", + "required": false, + "description": "Zip Code of the vendor's location.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_contact_id", + "type": "integer", + "required": false, + "description": "Unique ID of the primary contact for the vendor. This contact is a requester whose details (name, email, phone, mobile) are referenced from the requester database.", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "The state or province where the vendor is located. Use a string value to specify the state.", + "enum": null, + "inferrable": true + }, + { + "name": "vendor_city", + "type": "string", + "required": false, + "description": "The city where the vendor is located.", + "enum": null, + "inferrable": true + }, + { + "name": "vendor_description", + "type": "string", + "required": false, + "description": "Detailed description of the vendor, including any specific information or notes relevant to the vendor.", + "enum": null, + "inferrable": true + }, + { + "name": "vendor_name", + "type": "string", + "required": false, + "description": "The name of the vendor to be created. It should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "vendor_unique_id", + "type": "integer", + "required": false, + "description": "Unique integer ID of the vendor to be created in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-vendor'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateNewVendor", + "parameters": { + "address_line_1": { + "value": "123 Main St", + "type": "string", + "required": false + }, + "address_line_2": { + "value": "Apt 4B", + "type": "string", + "required": false + }, + "country": { + "value": "United States", + "type": "string", + "required": false + }, + "location_zip_code": { + "value": "12345", + "type": "string", + "required": false + }, + "primary_contact_id": { + "value": 101, + "type": "integer", + "required": false + }, + "state": { + "value": "California", + "type": "string", + "required": false + }, + "vendor_city": { + "value": "Los Angeles", + "type": "string", + "required": false + }, + "vendor_description": { + "value": "A leading supplier of office furniture and supplies.", + "type": "string", + "required": false + }, + "vendor_name": { + "value": "Office Supplies Co.", + "type": "string", + "required": false + }, + "vendor_unique_id": { + "value": 2023, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOnboardingRequest", + "qualifiedName": "FreshserviceApi.CreateOnboardingRequest", + "fullyQualifiedName": "FreshserviceApi.CreateOnboardingRequest@3.0.0", + "description": "Create a new onboarding request in Freshservice.\n\nUse this tool to initiate a new employee onboarding process in Freshservice. It should be called when a new hire needs to be onboarded, capturing all necessary details and confirming the creation of the request.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-onboarding-request'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateOnboardingRequest", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"employee_name\":\"John Doe\",\"start_date\":\"2023-11-01\",\"role\":\"Software Engineer\",\"department\":\"Engineering\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateProblemTimeEntry", + "qualifiedName": "FreshserviceApi.CreateProblemTimeEntry", + "fullyQualifiedName": "FreshserviceApi.CreateProblemTimeEntry@3.0.0", + "description": "Create a new time entry for a problem in Freshservice.\n\n This tool creates a new time entry on a specified problem in Freshservice. It should be called when you need to log time spent on a problem within the service.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "problem_id", + "type": "integer", + "required": false, + "description": "The ID of the problem for which the time entry is to be created. Must be an integer value. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-problem-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateProblemTimeEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "problem_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"description\":\"Worked on issue resolution\",\"duration\":120,\"entry_type\":\"billable\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateProjectTask", + "qualifiedName": "FreshserviceApi.CreateProjectTask", + "fullyQualifiedName": "FreshserviceApi.CreateProjectTask@3.0.0", + "description": "Create a new project task in Freshservice.\n\n Use this tool to create a new project task within Freshservice. It should be called when you need to add a task to an existing project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": false, + "description": "ID of the project to which the task will be added. This must be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-project-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateProjectTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Task\", \"description\": \"Task description here\", \"assigned_to\": \"user@example.com\", \"status\": \"open\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreatePurchaseOrder", + "qualifiedName": "FreshserviceApi.CreatePurchaseOrder", + "fullyQualifiedName": "FreshserviceApi.CreatePurchaseOrder@3.0.0", + "description": "Create a new Purchase Order in Freshservice.\n\nThis tool is used to create a new Purchase Order in Freshservice. It should be called when a new order needs to be generated and recorded within the Freshservice system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-purchase-order-post'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreatePurchaseOrder", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"order_number\": \"PO12345\", \"vendor\": \"ABC Supplies\", \"items\": [{\"name\": \"Laptop\", \"quantity\": 2, \"price\": 1200.50}, {\"name\": \"Mouse\", \"quantity\": 5, \"price\": 25.00}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateReleaseRequest", + "qualifiedName": "FreshserviceApi.CreateReleaseRequest", + "fullyQualifiedName": "FreshserviceApi.CreateReleaseRequest@3.0.0", + "description": "Initiate a new release request in Freshservice.\n\nThis tool is used to create a new release request in Freshservice. It should be called when a user wants to start tracking or managing a release process within the Freshservice platform.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-release'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateReleaseRequest", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\":\"New Release Request\",\"description\":\"This is a test release request.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateReleaseTask", + "qualifiedName": "FreshserviceApi.CreateReleaseTask", + "fullyQualifiedName": "FreshserviceApi.CreateReleaseTask@3.0.0", + "description": "Create a new task on a Freshservice release.\n\n Use this tool to add a new task to a specific release in Freshservice, enabling detailed release management and tracking.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "release_id", + "type": "integer", + "required": false, + "description": "ID of the release to add a new task. It specifies the release context for task creation. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-release-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateReleaseTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "release_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"task\":{\"name\":\"Deploy Feature X\",\"description\":\"Task to deploy feature X to production\",\"status\":\"pending\",\"assigned_to\":\"user@example.com\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSolutionArticle", + "qualifiedName": "FreshserviceApi.CreateSolutionArticle", + "fullyQualifiedName": "FreshserviceApi.CreateSolutionArticle@3.0.0", + "description": "Create a new solution article in Freshservice.\n\nUse this tool to add a new solution article to Freshservice. Call this tool when you need to document solutions or FAQs within the Freshservice platform.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-solution-article'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateSolutionArticle", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\":\"How to reset your password?\",\"description\":\"Follow these steps to reset your password in Freshservice.\",\"category\":\"Password Management\",\"tags\":[\"password\",\"help\"],\"status\":\"published\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSolutionCategory", + "qualifiedName": "FreshserviceApi.CreateSolutionCategory", + "fullyQualifiedName": "FreshserviceApi.CreateSolutionCategory@3.0.0", + "description": "Create a new solution category in Freshservice.\n\nThis tool is used to create a new solution category in Freshservice. It should be called when you need to organize solutions by adding a new category in the Freshservice platform.", + "parameters": [ + { + "name": "solution_category_name", + "type": "string", + "required": true, + "description": "The desired name for the new solution category to be created in Freshservice. It should be descriptive and unique.", + "enum": null, + "inferrable": true + }, + { + "name": "is_default_category", + "type": "boolean", + "required": false, + "description": "Set to true if the category is a default one shipped with the product; such categories cannot have folders added or be renamed or deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "solution_category_description", + "type": "string", + "required": false, + "description": "Provide a description for the solution category.", + "enum": null, + "inferrable": true + }, + { + "name": "solution_category_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the solution category to be created in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "solution_category_position", + "type": "integer", + "required": false, + "description": "The position to display the solution category in Freshservice's category listing.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "private_key" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-solution-category'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateSolutionCategory", + "parameters": { + "solution_category_name": { + "value": "IT Support", + "type": "string", + "required": true + }, + "is_default_category": { + "value": false, + "type": "boolean", + "required": false + }, + "solution_category_description": { + "value": "Category for all IT-related support solutions.", + "type": "string", + "required": false + }, + "solution_category_id": { + "value": 101, + "type": "integer", + "required": false + }, + "solution_category_position": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSolutionFolder", + "qualifiedName": "FreshserviceApi.CreateSolutionFolder", + "fullyQualifiedName": "FreshserviceApi.CreateSolutionFolder@3.0.0", + "description": "Create a new solution folder in Freshservice.\n\nUse this tool to create a new solution folder in Freshservice, helping organize solutions efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-solution-folder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateSolutionFolder", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"folder_name\": \"New Solutions Folder\", \"description\": \"This folder contains solutions related to service requests.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTicketTask", + "qualifiedName": "FreshserviceApi.CreateTicketTask", + "fullyQualifiedName": "FreshserviceApi.CreateTicketTask@3.0.0", + "description": "Create a new task for a ticket in Freshservice.\n\n Use this tool to add a new task to an existing ticket in Freshservice. It should be called when a new task needs to be organized or managed within a specific ticket.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "ticket_id_for_task_creation", + "type": "integer", + "required": false, + "description": "Integer ID of the ticket request for which a new task is to be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-ticket-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateTicketTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "ticket_id_for_task_creation": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Task\", \"description\": \"Description of the new task\", \"status\": \"Open\", \"assignee_id\": 67890}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTicketTimeEntry", + "qualifiedName": "FreshserviceApi.CreateTicketTimeEntry", + "fullyQualifiedName": "FreshserviceApi.CreateTicketTimeEntry@3.0.0", + "description": "Create a new time entry on a Freshservice ticket.\n\n Use this tool to log a new time entry for a specific ticket in Freshservice. Useful for tracking time spent on ticket resolution or management.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "ticket_id", + "type": "integer", + "required": false, + "description": "The ID of the ticket request for which the time entry will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-ticket-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.CreateTicketTimeEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "ticket_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"time_entry\":{\"hours\":2,\"minutes\":30,\"description\":\"Resolved user issue\",\"billable\":true}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeactivateFreshserviceSurvey", + "qualifiedName": "FreshserviceApi.DeactivateFreshserviceSurvey", + "fullyQualifiedName": "FreshserviceApi.DeactivateFreshserviceSurvey@3.0.0", + "description": "Deactivate a CSAT survey in Freshservice using its ID.\n\nUse this tool to deactivate a Customer Satisfaction (CSAT) survey in Freshservice by providing the survey's ID. This is helpful when a survey is no longer needed or should not be sent to customers.", + "parameters": [ + { + "name": "survey_id", + "type": "integer", + "required": true, + "description": "The integer ID of the CSAT survey to deactivate in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deactivate-survey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeactivateFreshserviceSurvey", + "parameters": { + "survey_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAgentAndTickets", + "qualifiedName": "FreshserviceApi.DeleteAgentAndTickets", + "fullyQualifiedName": "FreshserviceApi.DeleteAgentAndTickets@3.0.0", + "description": "Permanently delete an agent and their requested tickets.\n\nUse this tool to permanently delete an agent from the system along with any tickets they have requested.", + "parameters": [ + { + "name": "agent_id_to_delete", + "type": "integer", + "required": true, + "description": "The ID of the agent to permanently delete along with their tickets.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'forget-agent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteAgentAndTickets", + "parameters": { + "agent_id_to_delete": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAgentGroup", + "qualifiedName": "FreshserviceApi.DeleteAgentGroup", + "fullyQualifiedName": "FreshserviceApi.DeleteAgentGroup@3.0.0", + "description": "Deletes an Agent Group in Freshservice by ID.\n\nUse this tool to delete an existing agent group in Freshservice by providing its ID. This is useful when you need to manage or reorganize agent groups by removing those that are no longer required.", + "parameters": [ + { + "name": "agent_group_id_to_delete", + "type": "integer", + "required": true, + "description": "The ID of the agent group you want to delete in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-agent-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteAgentGroup", + "parameters": { + "agent_group_id_to_delete": { + "value": 1234, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAssetComponent", + "qualifiedName": "FreshserviceApi.DeleteAssetComponent", + "fullyQualifiedName": "FreshserviceApi.DeleteAssetComponent@3.0.0", + "description": "Delete a specific component from an asset in Freshservice.\n\nUse this tool to delete a specific component from an asset using Freshservice. It requires the asset's display ID and the component ID to successfully process the deletion request.", + "parameters": [ + { + "name": "asset_display_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the asset from which the component will be deleted. This must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "component_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the component to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-asset-component'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteAssetComponent", + "parameters": { + "asset_display_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "component_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAssetType", + "qualifiedName": "FreshserviceApi.DeleteAssetType", + "fullyQualifiedName": "FreshserviceApi.DeleteAssetType@3.0.0", + "description": "Delete an existing asset type from Freshservice.\n\nThis tool is used to delete an asset type in Freshservice. It should be called when an asset type is no longer needed and needs to be removed from the system.", + "parameters": [ + { + "name": "asset_type_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the asset type to be deleted. It should be an integer matching an existing asset type in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-asset-type'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteAssetType", + "parameters": { + "asset_type_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCannedResponse", + "qualifiedName": "FreshserviceApi.DeleteCannedResponse", + "fullyQualifiedName": "FreshserviceApi.DeleteCannedResponse@3.0.0", + "description": "Delete a Canned Response from Freshservice.\n\nUse this tool to delete a specific Canned Response in Freshservice by providing its ID. Ideal for managing and cleaning up unused or outdated responses.", + "parameters": [ + { + "name": "canned_response_id", + "type": "integer", + "required": true, + "description": "The unique ID of the canned response you want to delete from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-canned-response'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteCannedResponse", + "parameters": { + "canned_response_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCannedResponseFolder", + "qualifiedName": "FreshserviceApi.DeleteCannedResponseFolder", + "fullyQualifiedName": "FreshserviceApi.DeleteCannedResponseFolder@3.0.0", + "description": "Deletes a specified Canned Response Folder in Freshservice.\n\nThis tool deletes a Canned Response Folder from Freshservice using the provided folder ID. Use it when you need to remove a specific folder.", + "parameters": [ + { + "name": "canned_response_folder_id", + "type": "integer", + "required": true, + "description": "The unique ID of the Canned Response Folder to delete in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "password" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-caned-response-folder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteCannedResponseFolder", + "parameters": { + "canned_response_folder_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteChangeNote", + "qualifiedName": "FreshserviceApi.DeleteChangeNote", + "fullyQualifiedName": "FreshserviceApi.DeleteChangeNote@3.0.0", + "description": "Delete a note from a Change request by ID in Freshservice.\n\nUse this tool to delete a specific note from a Change request in Freshservice by providing the change ID and note ID.", + "parameters": [ + { + "name": "change_request_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the Change request from which the note is to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "note_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the note to be deleted from the Change request in Freshservice. This is an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-change-note'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteChangeNote", + "parameters": { + "change_request_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "note_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteChangeRequest", + "qualifiedName": "FreshserviceApi.DeleteChangeRequest", + "fullyQualifiedName": "FreshserviceApi.DeleteChangeRequest@3.0.0", + "description": "Delete a change request by ID from Freshservice.\n\nUse this tool to delete a specific change request from Freshservice by providing the change ID. It confirms the deletion of the request.", + "parameters": [ + { + "name": "change_request_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the change request to delete from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-change'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteChangeRequest", + "parameters": { + "change_request_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteChangeRequestTask", + "qualifiedName": "FreshserviceApi.DeleteChangeRequestTask", + "fullyQualifiedName": "FreshserviceApi.DeleteChangeRequestTask@3.0.0", + "description": "Delete a task from a Freshservice change request.\n\nThis tool deletes a specified task from a change request in Freshservice using the change and task IDs.", + "parameters": [ + { + "name": "change_request_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the change request from which the task will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "integer", + "required": true, + "description": "The ID of the task to be deleted from the change request in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-change-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteChangeRequestTask", + "parameters": { + "change_request_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "task_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteChangeTimeEntry", + "qualifiedName": "FreshserviceApi.DeleteChangeTimeEntry", + "fullyQualifiedName": "FreshserviceApi.DeleteChangeTimeEntry@3.0.0", + "description": "Deletes a specific time entry from a change request in Freshservice.\n\nUse this tool to delete a time entry associated with a specific change request in Freshservice. It requires the IDs of the change request and the time entry to process the deletion.", + "parameters": [ + { + "name": "change_request_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the change request from which the time entry will be deleted. This is required to specify the change for the deletion process.", + "enum": null, + "inferrable": true + }, + { + "name": "time_entry_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the time entry to be deleted from a change request.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-change-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteChangeTimeEntry", + "parameters": { + "change_request_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "time_entry_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDepartmentFreshservice", + "qualifiedName": "FreshserviceApi.DeleteDepartmentFreshservice", + "fullyQualifiedName": "FreshserviceApi.DeleteDepartmentFreshservice@3.0.0", + "description": "Delete a department or company in Freshservice by ID.\n\nUse this tool to delete a specific department or company (in MSP Mode) from Freshservice by providing the department ID. It should be called when needing to remove a department permanently.", + "parameters": [ + { + "name": "department_id_to_delete", + "type": "integer", + "required": true, + "description": "Specify the ID of the department or company to be deleted from Freshservice. This ID is required to identify which department to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-department'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteDepartmentFreshservice", + "parameters": { + "department_id_to_delete": { + "value": 123, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteFreshserviceAnnouncement", + "qualifiedName": "FreshserviceApi.DeleteFreshserviceAnnouncement", + "fullyQualifiedName": "FreshserviceApi.DeleteFreshserviceAnnouncement@3.0.0", + "description": "Delete an announcement from Freshservice by ID.\n\nUse this tool to delete a specific announcement in Freshservice by providing the announcement ID. It confirms the successful deletion of the announcement.", + "parameters": [ + { + "name": "announcement_id_to_delete", + "type": "integer", + "required": true, + "description": "ID of the announcement to delete from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-announcement'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteFreshserviceAnnouncement", + "parameters": { + "announcement_id_to_delete": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteFreshserviceProblem", + "qualifiedName": "FreshserviceApi.DeleteFreshserviceProblem", + "fullyQualifiedName": "FreshserviceApi.DeleteFreshserviceProblem@3.0.0", + "description": "Delete a problem by ID from Freshservice.\n\nUse this tool to delete a specific problem from Freshservice using its ID. This operation is useful when you need to remove a resolved or irrelevant problem from the system.", + "parameters": [ + { + "name": "problem_id_to_delete", + "type": "integer", + "required": true, + "description": "Enter the ID of the problem you want to delete from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "api_key" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-problem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteFreshserviceProblem", + "parameters": { + "problem_id_to_delete": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteFreshserviceProblemNote", + "qualifiedName": "FreshserviceApi.DeleteFreshserviceProblemNote", + "fullyQualifiedName": "FreshserviceApi.DeleteFreshserviceProblemNote@3.0.0", + "description": "Delete a specific note from a problem in Freshservice.\n\nUse this tool to delete a specific note from a problem in Freshservice by providing the problem ID and note ID.", + "parameters": [ + { + "name": "note_id", + "type": "integer", + "required": true, + "description": "The unique ID of the note to be deleted from a problem in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "problem_id", + "type": "integer", + "required": true, + "description": "The unique ID of the problem from which you want to delete a note. This ID is required to specify the target problem in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-problem-note'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteFreshserviceProblemNote", + "parameters": { + "note_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "problem_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteFreshserviceProblemTimeEntry", + "qualifiedName": "FreshserviceApi.DeleteFreshserviceProblemTimeEntry", + "fullyQualifiedName": "FreshserviceApi.DeleteFreshserviceProblemTimeEntry@3.0.0", + "description": "Delete a specific time entry from a Freshservice problem.\n\nUse this tool to delete a specific time entry associated with a problem in Freshservice by providing the problem and time entry IDs.", + "parameters": [ + { + "name": "problem_id", + "type": "integer", + "required": true, + "description": "ID of the problem from which the time entry will be deleted. This should be an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "time_entry_id", + "type": "integer", + "required": true, + "description": "The numeric ID of the time entry to be deleted. This is required to identify which time entry to remove from the specified Freshservice problem.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-problem-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteFreshserviceProblemTimeEntry", + "parameters": { + "problem_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "time_entry_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteFreshserviceProject", + "qualifiedName": "FreshserviceApi.DeleteFreshserviceProject", + "fullyQualifiedName": "FreshserviceApi.DeleteFreshserviceProject@3.0.0", + "description": "Delete an existing project in Freshservice.\n\nUse this tool to delete a specified project by its ID in the Freshservice platform. Ideal for managing and removing outdated or unnecessary projects.", + "parameters": [ + { + "name": "project_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the project to be deleted in Freshservice. This should be a numeric value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-project'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteFreshserviceProject", + "parameters": { + "project_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteFreshserviceRelease", + "qualifiedName": "FreshserviceApi.DeleteFreshserviceRelease", + "fullyQualifiedName": "FreshserviceApi.DeleteFreshserviceRelease@3.0.0", + "description": "Delete a release from Freshservice by its ID.\n\nUse this tool to delete a specific release in Freshservice when you have the release ID available. This is useful for managing and cleaning up outdated or erroneous releases in the system.", + "parameters": [ + { + "name": "release_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the release to delete in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-release'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteFreshserviceRelease", + "parameters": { + "release_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteLocation", + "qualifiedName": "FreshserviceApi.DeleteLocation", + "fullyQualifiedName": "FreshserviceApi.DeleteLocation@3.0.0", + "description": "Deletes an existing location by ID.\n\nUse this tool to delete a specified location by providing its ID in the Freshservice system.", + "parameters": [ + { + "name": "location_id", + "type": "integer", + "required": true, + "description": "The unique ID of the location to be deleted in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-location'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteLocation", + "parameters": { + "location_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteProblemTask", + "qualifiedName": "FreshserviceApi.DeleteProblemTask", + "fullyQualifiedName": "FreshserviceApi.DeleteProblemTask@3.0.0", + "description": "Delete a specific task from a problem in Freshservice.\n\nUse this tool to delete a task associated with a specific problem in Freshservice by providing the problem and task IDs.", + "parameters": [ + { + "name": "problem_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the problem from which the task will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the task to be deleted from the specified problem.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-problem-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteProblemTask", + "parameters": { + "problem_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "task_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteProductCatalogItem", + "qualifiedName": "FreshserviceApi.DeleteProductCatalogItem", + "fullyQualifiedName": "FreshserviceApi.DeleteProductCatalogItem@3.0.0", + "description": "Delete a product from the catalog.\n\nUse this tool to remove an existing product from the Freshservice Product Catalog. Useful for managing inventory or updating product listings by deleting outdated or irrelevant entries.", + "parameters": [ + { + "name": "product_id_to_delete", + "type": "integer", + "required": true, + "description": "The ID of the product to delete from the catalog. It should be an integer representing the unique identifier of the product.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-product'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteProductCatalogItem", + "parameters": { + "product_id_to_delete": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteProjectTask", + "qualifiedName": "FreshserviceApi.DeleteProjectTask", + "fullyQualifiedName": "FreshserviceApi.DeleteProjectTask@3.0.0", + "description": "Delete a project task in Freshservice.\n\nThis tool deletes an existing project task in Freshservice. Use it when you need to remove a specific task from a project by providing the project and task identifiers.", + "parameters": [ + { + "name": "project_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the project from which the task should be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id_to_delete", + "type": "integer", + "required": true, + "description": "ID of the task to be deleted in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-project-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteProjectTask", + "parameters": { + "project_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "task_id_to_delete": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeletePurchaseOrder", + "qualifiedName": "FreshserviceApi.DeletePurchaseOrder", + "fullyQualifiedName": "FreshserviceApi.DeletePurchaseOrder@3.0.0", + "description": "Delete a purchase order in Freshservice by ID.\n\nUse this tool to delete a specific purchase order from Freshservice by providing its ID. This is useful when a purchase order needs to be permanently removed from the system.", + "parameters": [ + { + "name": "purchase_order_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the purchase order to delete from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-purchase-order'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeletePurchaseOrder", + "parameters": { + "purchase_order_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteReleaseNote", + "qualifiedName": "FreshserviceApi.DeleteReleaseNote", + "fullyQualifiedName": "FreshserviceApi.DeleteReleaseNote@3.0.0", + "description": "Deletes a specific release note in Freshservice.\n\nUse this tool to delete a note associated with a release in Freshservice by specifying the release and note IDs.", + "parameters": [ + { + "name": "note_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the release note to be deleted in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "release_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the release in Freshservice whose note is to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-release-note'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteReleaseNote", + "parameters": { + "note_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "release_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteReleaseTask", + "qualifiedName": "FreshserviceApi.DeleteReleaseTask", + "fullyQualifiedName": "FreshserviceApi.DeleteReleaseTask@3.0.0", + "description": "Delete a specific task from a release in Freshservice.\n\nUse this tool to delete a task from a specific release in Freshservice by providing the release ID and task ID.", + "parameters": [ + { + "name": "release_id", + "type": "integer", + "required": true, + "description": "The unique ID of the release from which the task should be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the task within a release to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-release-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteReleaseTask", + "parameters": { + "release_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "task_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteReleaseTimeEntry", + "qualifiedName": "FreshserviceApi.DeleteReleaseTimeEntry", + "fullyQualifiedName": "FreshserviceApi.DeleteReleaseTimeEntry@3.0.0", + "description": "Delete a specific time entry from a release in Freshservice.\n\nUse this tool to delete a specific time entry associated with a release in Freshservice by providing the release ID and time entry ID.", + "parameters": [ + { + "name": "release_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the release from which the time entry will be deleted. This ID is required to specify the release in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "time_entry_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the time entry to be deleted from a release in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-release-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteReleaseTimeEntry", + "parameters": { + "release_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "time_entry_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteRequester", + "qualifiedName": "FreshserviceApi.DeleteRequester", + "fullyQualifiedName": "FreshserviceApi.DeleteRequester@3.0.0", + "description": "Delete a requester from Freshservice by ID.\n\nUse this tool to remove a requester from Freshservice using their unique ID. It should be called when a requester needs to be permanently deleted from the system.", + "parameters": [ + { + "name": "requester_id", + "type": "integer", + "required": true, + "description": "The unique ID of the requester to be deleted from Freshservice. This ID should be an integer and is required to identify which requester needs to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-requester'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteRequester", + "parameters": { + "requester_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteRequesterAndTickets", + "qualifiedName": "FreshserviceApi.DeleteRequesterAndTickets", + "fullyQualifiedName": "FreshserviceApi.DeleteRequesterAndTickets@3.0.0", + "description": "Permanently delete a requester and their tickets in Freshservice.\n\nThis tool is used to permanently remove a requester and all of their associated tickets from Freshservice. It should be called when you need to completely erase a requester's data, including all their ticket history.", + "parameters": [ + { + "name": "requester_id_to_delete", + "type": "integer", + "required": true, + "description": "The ID of the requester to permanently delete along with their tickets.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'forget-requester'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteRequesterAndTickets", + "parameters": { + "requester_id_to_delete": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSolutionArticle", + "qualifiedName": "FreshserviceApi.DeleteSolutionArticle", + "fullyQualifiedName": "FreshserviceApi.DeleteSolutionArticle@3.0.0", + "description": "Delete a specific solution article from Freshservice.\n\nUse this tool to delete a solution article in Freshservice by providing its ID. This can be useful for managing outdated or incorrect articles within the service.", + "parameters": [ + { + "name": "solution_article_id", + "type": "integer", + "required": true, + "description": "ID of the solution article to delete from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-solution-article'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteSolutionArticle", + "parameters": { + "solution_article_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSolutionCategory", + "qualifiedName": "FreshserviceApi.DeleteSolutionCategory", + "fullyQualifiedName": "FreshserviceApi.DeleteSolutionCategory@3.0.0", + "description": "Delete a solution category in Freshservice by ID.\n\nUse this tool to delete a specific solution category from Freshservice using the category ID. This is useful when you need to remove outdated or incorrect categories from your knowledge base.", + "parameters": [ + { + "name": "solution_category_id", + "type": "integer", + "required": true, + "description": "ID of the solution category to delete from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-solution-category'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteSolutionCategory", + "parameters": { + "solution_category_id": { + "value": 123, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSolutionFolder", + "qualifiedName": "FreshserviceApi.DeleteSolutionFolder", + "fullyQualifiedName": "FreshserviceApi.DeleteSolutionFolder@3.0.0", + "description": "Delete a solution folder from Freshservice.\n\nUse this tool to delete a solution folder by its ID in Freshservice when cleanup or reorganization is needed.", + "parameters": [ + { + "name": "solution_folder_id", + "type": "integer", + "required": true, + "description": "ID of the solution folder to delete from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-solution-folder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteSolutionFolder", + "parameters": { + "solution_folder_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSurvey", + "qualifiedName": "FreshserviceApi.DeleteSurvey", + "fullyQualifiedName": "FreshserviceApi.DeleteSurvey@3.0.0", + "description": "Delete a survey and its responses from Freshservice.\n\nUse this tool to delete a specific survey from Freshservice by providing the survey ID. This action will remove the survey along with all its underlying responses.", + "parameters": [ + { + "name": "survey_id_to_delete", + "type": "integer", + "required": true, + "description": "The ID of the survey you wish to delete from Freshservice, including all underlying responses.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-survey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteSurvey", + "parameters": { + "survey_id_to_delete": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTicketTask", + "qualifiedName": "FreshserviceApi.DeleteTicketTask", + "fullyQualifiedName": "FreshserviceApi.DeleteTicketTask@3.0.0", + "description": "Deletes a task from a Freshservice ticket.\n\nThis tool deletes a specific task associated with a ticket in Freshservice, identified by the ticket and task ID. Use this to manage and update tasks on tickets efficiently.", + "parameters": [ + { + "name": "task_id", + "type": "integer", + "required": true, + "description": "The unique ID of the task to delete from a Freshservice ticket.", + "enum": null, + "inferrable": true + }, + { + "name": "ticket_identifier", + "type": "integer", + "required": true, + "description": "The unique integer ID of the ticket containing the task to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-ticket-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteTicketTask", + "parameters": { + "task_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "ticket_identifier": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTicketTimeEntry", + "qualifiedName": "FreshserviceApi.DeleteTicketTimeEntry", + "fullyQualifiedName": "FreshserviceApi.DeleteTicketTimeEntry@3.0.0", + "description": "Delete a time entry from a Freshservice ticket.\n\nUse this tool to delete a specific time entry from a ticket in Freshservice when it is no longer needed or was added incorrectly.", + "parameters": [ + { + "name": "ticket_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the ticket from which the time entry will be deleted. Provide a valid ticket ID.", + "enum": null, + "inferrable": true + }, + { + "name": "time_entry_id", + "type": "integer", + "required": true, + "description": "The ID of the time entry to be deleted from the ticket.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-ticket-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteTicketTimeEntry", + "parameters": { + "ticket_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "time_entry_id": { + "value": 789012, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteVendor", + "qualifiedName": "FreshserviceApi.DeleteVendor", + "fullyQualifiedName": "FreshserviceApi.DeleteVendor@3.0.0", + "description": "Delete an existing vendor in Freshservice.\n\nThis tool deletes a specified vendor in Freshservice. It should be called when a user needs to remove a vendor from the system using the vendor's unique ID.", + "parameters": [ + { + "name": "vendor_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the vendor to be deleted in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-vendor'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.DeleteVendor", + "parameters": { + "vendor_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditFreshserviceTicket", + "qualifiedName": "FreshserviceApi.EditFreshserviceTicket", + "fullyQualifiedName": "FreshserviceApi.EditFreshserviceTicket@3.0.0", + "description": "Edit a Freshservice ticket efficiently.\n\n This tool is used to update the details of an existing ticket in Freshservice. It should be called when modifications or updates to a ticket's information are needed, such as changing the status, priority, or other relevant ticket details.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "ticket_id", + "type": "integer", + "required": false, + "description": "The ID of the Freshservice ticket to update. Must be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-ticket'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.EditFreshserviceTicket", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "ticket_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"status\":\"resolved\",\"priority\":\"high\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditTicketConversation", + "qualifiedName": "FreshserviceApi.EditTicketConversation", + "fullyQualifiedName": "FreshserviceApi.EditTicketConversation@3.0.0", + "description": "Edit a conversation in a Freshservice ticket.\n\n Use this tool to edit the conversation on an existing Freshservice ticket. It is useful for updating information, correcting errors, or adding new details to a specific conversation within a ticket.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "ticket_identifier", + "type": "integer", + "required": false, + "description": "Integer representing the ID of the ticket whose conversation needs editing. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "conversation_id", + "type": "integer", + "required": false, + "description": "ID of the reply or note that needs to be updated in the Freshservice ticket. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-ticket-conversation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.EditTicketConversation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "ticket_identifier": { + "value": 123456, + "type": "integer", + "required": false + }, + "conversation_id": { + "value": 78910, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"message\": \"Updated information regarding the ticket.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchAgentFields", + "qualifiedName": "FreshserviceApi.FetchAgentFields", + "fullyQualifiedName": "FreshserviceApi.FetchAgentFields@3.0.0", + "description": "Retrieve all agent fields in Freshservice.\n\nUse this tool to get a complete list of agent fields from Freshservice. This could be useful for understanding the available fields when managing agents.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of entries to retrieve per page in the paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "The page number to retrieve in the list of agent fields.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-agent-fields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.FetchAgentFields", + "parameters": { + "entries_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchOnboardingRequest", + "qualifiedName": "FreshserviceApi.FetchOnboardingRequest", + "fullyQualifiedName": "FreshserviceApi.FetchOnboardingRequest@3.0.0", + "description": "Retrieve a specific onboarding request by ID.\n\nUse this tool to get details about a specific onboarding request from Freshservice by providing the request ID.", + "parameters": [ + { + "name": "onboarding_request_id", + "type": "integer", + "required": true, + "description": "The ID number representing the specific onboarding request to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-onboarding-request'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.FetchOnboardingRequest", + "parameters": { + "onboarding_request_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchOnboardingTickets", + "qualifiedName": "FreshserviceApi.FetchOnboardingTickets", + "fullyQualifiedName": "FreshserviceApi.FetchOnboardingTickets@3.0.0", + "description": "Retrieve tickets for specific onboarding requests.\n\nThis tool fetches details of FreshService Tickets linked to a particular Onboarding Request. Use it to access related ticket information based on the onboarding request ID.", + "parameters": [], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-onboarding-request-tickets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.FetchOnboardingTickets", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchRequesterInfo", + "qualifiedName": "FreshserviceApi.FetchRequesterInfo", + "fullyQualifiedName": "FreshserviceApi.FetchRequesterInfo@3.0.0", + "description": "Retrieve requester details using their ID from Freshservice.\n\nUse this tool to get detailed information about a requester by providing their ID through Freshservice's API.", + "parameters": [ + { + "name": "requester_id", + "type": "integer", + "required": true, + "description": "Integer representing the ID of the requester to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-requester'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.FetchRequesterInfo", + "parameters": { + "requester_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchTicketLocation", + "qualifiedName": "FreshserviceApi.FetchTicketLocation", + "fullyQualifiedName": "FreshserviceApi.FetchTicketLocation@3.0.0", + "description": "Retrieve details of a specific location by ID.\n\nThis tool retrieves detailed information about a specific location using its ID. It should be used when needing to fetch data related to a particular location in Freshservice.", + "parameters": [ + { + "name": "location_id", + "type": "integer", + "required": true, + "description": "The ID of the location to retrieve. This should be an integer representing the specific location's unique identifier in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-location'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.FetchTicketLocation", + "parameters": { + "location_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchTicketTimeEntry", + "qualifiedName": "FreshserviceApi.FetchTicketTimeEntry", + "fullyQualifiedName": "FreshserviceApi.FetchTicketTimeEntry@3.0.0", + "description": "Retrieve a specific time entry for a ticket in Freshservice.\n\nThis tool is used to fetch details of a specific time entry associated with a ticket in Freshservice by providing the ticket and time entry IDs.", + "parameters": [ + { + "name": "ticket_request_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the ticket request for which the time entry details are needed.", + "enum": null, + "inferrable": true + }, + { + "name": "time_entry_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the time entry you want to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-ticket-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.FetchTicketTimeEntry", + "parameters": { + "ticket_request_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "time_entry_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAgentGroups", + "qualifiedName": "FreshserviceApi.GetAgentGroups", + "fullyQualifiedName": "FreshserviceApi.GetAgentGroups@3.0.0", + "description": "Retrieve a list of all agent groups from Freshservice.\n\nUse this tool to obtain a list of all the agent groups configured in your Freshservice account. It is useful for managing groups and understanding team structures within the system.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "The number of entries to retrieve per page for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve for pagination in the list of agent groups.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-agent-groups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetAgentGroups", + "parameters": { + "entries_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAllRequesters", + "qualifiedName": "FreshserviceApi.GetAllRequesters", + "fullyQualifiedName": "FreshserviceApi.GetAllRequesters@3.0.0", + "description": "Retrieve a list of all requesters in Freshservice.\n\nCall this tool to get a comprehensive list of all requesters from the Freshservice platform.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "The number of requesters to retrieve per page in the list.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_mobile_phone_number", + "type": "string", + "required": false, + "description": "The mobile phone number to filter and list corresponding requesters.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_work_phone_number", + "type": "string", + "required": false, + "description": "The work phone number to filter requesters by. Returns requesters matching the specified work phone number.", + "enum": null, + "inferrable": true + }, + { + "name": "list_active_user_accounts", + "type": "boolean", + "required": false, + "description": "Set to true to list only active user accounts. If false or not set, both active and deactivated accounts are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "requester_email", + "type": "string", + "required": false, + "description": "The email address to list the corresponding requester. Use this to filter results to a specific requester by email.", + "enum": null, + "inferrable": true + }, + { + "name": "requester_filter_query", + "type": "string", + "required": false, + "description": "A URL-encoded string to filter the list of requesters. Use parameters like first_name, job_title, etc. Example: \"job_title:'HR Manager' AND created_at:>'2018-08-10'\".", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number to retrieve in the list of requesters.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-requesters'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetAllRequesters", + "parameters": { + "entries_per_page": { + "value": 30, + "type": "integer", + "required": false + }, + "filter_by_mobile_phone_number": { + "value": "+1234567890", + "type": "string", + "required": false + }, + "filter_by_work_phone_number": { + "value": "+0987654321", + "type": "string", + "required": false + }, + "list_active_user_accounts": { + "value": true, + "type": "boolean", + "required": false + }, + "requester_email": { + "value": "example@domain.com", + "type": "string", + "required": false + }, + "requester_filter_query": { + "value": "first_name:'John' AND job_title:'Developer'", + "type": "string", + "required": false + }, + "retrieve_page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetApplicationLicenses", + "qualifiedName": "FreshserviceApi.GetApplicationLicenses", + "fullyQualifiedName": "FreshserviceApi.GetApplicationLicenses@3.0.0", + "description": "Retrieve licenses for a specified software application.\n\nUse this tool to get a list of all licenses linked to a particular software application within Freshservice.", + "parameters": [ + { + "name": "application_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the software application to retrieve associated licenses.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-application-licenses'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetApplicationLicenses", + "parameters": { + "application_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAssetContracts", + "qualifiedName": "FreshserviceApi.GetAssetContracts", + "fullyQualifiedName": "FreshserviceApi.GetAssetContracts@3.0.0", + "description": "Retrieve contracts linked to a specific asset.\n\nUse this tool to obtain all contracts associated with a particular asset identified by its display ID. Ideal for managing asset-related agreements and tracking contract details.", + "parameters": [ + { + "name": "asset_display_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the asset to retrieve associated contracts for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-asset-contracts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetAssetContracts", + "parameters": { + "asset_display_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAssetRequests", + "qualifiedName": "FreshserviceApi.GetAssetRequests", + "fullyQualifiedName": "FreshserviceApi.GetAssetRequests@3.0.0", + "description": "Retrieve requests linked to a specific asset.\n\nUse this tool to get a list of all requests associated with a specific asset by its display ID.", + "parameters": [ + { + "name": "asset_display_id", + "type": "integer", + "required": true, + "description": "The unique display ID of the asset for which to retrieve requests. This should be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-asset-requests'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetAssetRequests", + "parameters": { + "asset_display_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAssetTypeFields", + "qualifiedName": "FreshserviceApi.GetAssetTypeFields", + "fullyQualifiedName": "FreshserviceApi.GetAssetTypeFields@3.0.0", + "description": "Retrieve asset fields from Freshservice.\n\nFetches asset fields for a specific asset type from Freshservice, including default and specific fields, in their UI display order.", + "parameters": [ + { + "name": "asset_type_identifier", + "type": "integer", + "required": true, + "description": "The unique integer ID representing the specific asset type whose fields need to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-asset-type-fields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetAssetTypeFields", + "parameters": { + "asset_type_identifier": { + "value": 123, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBusinessHoursConfig", + "qualifiedName": "FreshserviceApi.GetBusinessHoursConfig", + "fullyQualifiedName": "FreshserviceApi.GetBusinessHoursConfig@3.0.0", + "description": "Retrieve the Business Hours configuration from Freshservice.\n\nThis tool retrieves the Business Hours configuration using the provided ID from Freshservice. It should be called when detailed information about specific business hours settings is required.", + "parameters": [ + { + "name": "business_hours_configuration_id", + "type": "integer", + "required": true, + "description": "The unique ID of the Business Hours configuration to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-business-hours-config'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetBusinessHoursConfig", + "parameters": { + "business_hours_configuration_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBusinessHoursConfigs", + "qualifiedName": "FreshserviceApi.GetBusinessHoursConfigs", + "fullyQualifiedName": "FreshserviceApi.GetBusinessHoursConfigs@3.0.0", + "description": "Retrieve all business hours configurations from Freshservice.\n\nThis tool retrieves the entire list of business hours configurations from Freshservice. It should be called when you need to understand or display the business hours settings configured in the Freshservice system.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "The number of business hours configurations to retrieve per page in the paginated result.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number of business hours configurations to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-business-hours-configs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetBusinessHoursConfigs", + "parameters": { + "entries_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCannedResponse", + "qualifiedName": "FreshserviceApi.GetCannedResponse", + "fullyQualifiedName": "FreshserviceApi.GetCannedResponse@3.0.0", + "description": "Retrieve details of a Freshservice canned response by ID.\n\nUse this tool to obtain the details of a specific canned response from Freshservice, given its unique ID.", + "parameters": [ + { + "name": "canned_response_id", + "type": "integer", + "required": true, + "description": "The unique ID of the canned response to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-canned-response'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetCannedResponse", + "parameters": { + "canned_response_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCannedResponseFolder", + "qualifiedName": "FreshserviceApi.GetCannedResponseFolder", + "fullyQualifiedName": "FreshserviceApi.GetCannedResponseFolder@3.0.0", + "description": "Retrieve a specific canned response folder from Freshservice.\n\nUse this tool to fetch the details of a specific canned response folder by its ID from Freshservice. It is helpful for accessing pre-defined response templates for customer support or information retrieval.", + "parameters": [ + { + "name": "canned_response_folder_id", + "type": "integer", + "required": true, + "description": "ID of the canned response folder to be retrieved from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "password" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-canned-response-folder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetCannedResponseFolder", + "parameters": { + "canned_response_folder_id": { + "value": 123, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCannedResponseFolders", + "qualifiedName": "FreshserviceApi.GetCannedResponseFolders", + "fullyQualifiedName": "FreshserviceApi.GetCannedResponseFolders@3.0.0", + "description": "Retrieve all canned response folders from Freshservice.\n\nThis tool retrieves a list of all canned response folders available in Freshservice. It should be called when you need to access or manage pre-written responses for different scenarios or queries in Freshservice.", + "parameters": [], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-canned-response-folders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetCannedResponseFolders", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetChangeFormFields", + "qualifiedName": "FreshserviceApi.GetChangeFormFields", + "fullyQualifiedName": "FreshserviceApi.GetChangeFormFields@3.0.0", + "description": "Retrieve fields for the Change Object in Freshservice.\n\nUse this tool to obtain a list of all fields that make up the Change Object in Freshservice. Ideal for understanding the structure or schema of change forms.", + "parameters": [], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-change-form-fields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetChangeFormFields", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetChangeRequest", + "qualifiedName": "FreshserviceApi.GetChangeRequest", + "fullyQualifiedName": "FreshserviceApi.GetChangeRequest@3.0.0", + "description": "Retrieve a specific change request by ID from Freshservice.\n\nUse this tool to access information about a specific change request in Freshservice by providing its unique ID.", + "parameters": [ + { + "name": "change_request_id", + "type": "integer", + "required": true, + "description": "ID of the change request to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-change'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetChangeRequest", + "parameters": { + "change_request_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetChangeRequestNotes", + "qualifiedName": "FreshserviceApi.GetChangeRequestNotes", + "fullyQualifiedName": "FreshserviceApi.GetChangeRequestNotes@3.0.0", + "description": "Retrieve notes from a Freshservice change request.\n\nUse this tool to get all notes associated with a specific change request ID in Freshservice.", + "parameters": [ + { + "name": "change_request_id", + "type": "integer", + "required": true, + "description": "The unique ID of the change request to retrieve notes for, required to access specific change request data.", + "enum": null, + "inferrable": true + }, + { + "name": "notes_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of notes to retrieve per page for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve for paginated notes.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-change-notes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetChangeRequestNotes", + "parameters": { + "change_request_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "notes_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetChangeRequestTasks", + "qualifiedName": "FreshserviceApi.GetChangeRequestTasks", + "fullyQualifiedName": "FreshserviceApi.GetChangeRequestTasks@3.0.0", + "description": "Retrieve tasks for a specific Change request from Freshservice.\n\nUse this tool to get all tasks associated with a specific Change request using its ID in Freshservice. Ideal for managing or reviewing change tasks.", + "parameters": [ + { + "name": "change_request_id", + "type": "integer", + "required": true, + "description": "ID of the Change request to retrieve tasks for in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "The specific page number of tasks to be retrieved for a Change request.", + "enum": null, + "inferrable": true + }, + { + "name": "tasks_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of tasks to retrieve per page in a paginated response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-change-tasks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetChangeRequestTasks", + "parameters": { + "change_request_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + }, + "tasks_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetChangeRequestTimeEntries", + "qualifiedName": "FreshserviceApi.GetChangeRequestTimeEntries", + "fullyQualifiedName": "FreshserviceApi.GetChangeRequestTimeEntries@3.0.0", + "description": "Retrieve time entries for a specific Change request.\n\nUse this tool to get all time entries associated with a specific Change request in Freshservice by providing the Change ID.", + "parameters": [ + { + "name": "change_request_id", + "type": "integer", + "required": true, + "description": "The ID of the Change request to retrieve time entries for in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "Number of time entries to retrieve per page in the paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "Specify the page number of the time entries to retrieve for paginated results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-change-time-entries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetChangeRequestTimeEntries", + "parameters": { + "change_request_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "entries_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCsatSurveys", + "qualifiedName": "FreshserviceApi.GetCsatSurveys", + "fullyQualifiedName": "FreshserviceApi.GetCsatSurveys@3.0.0", + "description": "Retrieve a list of all CSAT Surveys in Freshservice.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "The number of survey entries to retrieve per page in a paginated response.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_active_surveys", + "type": "integer", + "required": false, + "description": "Set to 1 to list active surveys or 0 for inactive surveys.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "Specify the page number of the CSAT surveys to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-surveys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetCsatSurveys", + "parameters": { + "entries_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "filter_active_surveys": { + "value": 1, + "type": "integer", + "required": false + }, + "page_number_to_retrieve": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDepartmentFields", + "qualifiedName": "FreshserviceApi.GetDepartmentFields", + "fullyQualifiedName": "FreshserviceApi.GetDepartmentFields@3.0.0", + "description": "Retrieve department fields from Freshservice.\n\nUse this tool to get the Department Fields or Company Fields (in MSP Mode) from Freshservice, displayed in the order found on the UI.", + "parameters": [], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "private_key" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-department-fields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetDepartmentFields", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDepartmentInfo", + "qualifiedName": "FreshserviceApi.GetDepartmentInfo", + "fullyQualifiedName": "FreshserviceApi.GetDepartmentInfo@3.0.0", + "description": "Retrieve department details from Freshservice using an ID.\n\nUse this tool to obtain detailed information about a department or company (in MSP Mode) from Freshservice by providing the specific department ID.", + "parameters": [ + { + "name": "department_id", + "type": "integer", + "required": true, + "description": "The ID of the department to retrieve details for from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-department'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetDepartmentInfo", + "parameters": { + "department_id": { + "value": 42, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDeviceComponents", + "qualifiedName": "FreshserviceApi.GetDeviceComponents", + "fullyQualifiedName": "FreshserviceApi.GetDeviceComponents@3.0.0", + "description": "Retrieve all components of a specific device.\n\nThis tool retrieves a list of all components associated with a specified device by its display ID. Use this to gain detailed insights into the individual parts of a device.", + "parameters": [ + { + "name": "device_display_id", + "type": "integer", + "required": true, + "description": "The unique display ID of the device whose components are to be listed. It must be an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-asset-components'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetDeviceComponents", + "parameters": { + "device_display_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFreshserviceAgentInfo", + "qualifiedName": "FreshserviceApi.GetFreshserviceAgentInfo", + "fullyQualifiedName": "FreshserviceApi.GetFreshserviceAgentInfo@3.0.0", + "description": "Retrieve details of a Freshservice agent by ID.\n\nUse this tool to obtain information about a specific agent in Freshservice by providing the agent's ID. It can be called when detailed agent information is needed for administration or support purposes.", + "parameters": [ + { + "name": "agent_identifier", + "type": "integer", + "required": true, + "description": "The unique ID of the agent to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-agent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetFreshserviceAgentInfo", + "parameters": { + "agent_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFreshserviceAnnouncement", + "qualifiedName": "FreshserviceApi.GetFreshserviceAnnouncement", + "fullyQualifiedName": "FreshserviceApi.GetFreshserviceAnnouncement@3.0.0", + "description": "Retrieve a specific announcement from Freshservice.\n\nCall this tool to get details of an announcement using its ID from Freshservice.", + "parameters": [ + { + "name": "announcement_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the announcement to be retrieved from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-announcement'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetFreshserviceAnnouncement", + "parameters": { + "announcement_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFreshserviceAnnouncements", + "qualifiedName": "FreshserviceApi.GetFreshserviceAnnouncements", + "fullyQualifiedName": "FreshserviceApi.GetFreshserviceAnnouncements@3.0.0", + "description": "Retrieve a list of all announcements from Freshservice.\n\nUse this tool to get all current announcements in Freshservice. Call this when you need to display or access information about company or service announcements.", + "parameters": [ + { + "name": "announcement_state", + "type": "string", + "required": false, + "description": "Filter announcements by their state: archived, active, scheduled, or unread.", + "enum": null, + "inferrable": true + }, + { + "name": "announcements_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of announcements to retrieve per page for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve for paginated results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-announcement'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetFreshserviceAnnouncements", + "parameters": { + "announcement_state": { + "value": "active", + "type": "string", + "required": false + }, + "announcements_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFreshserviceChangeList", + "qualifiedName": "FreshserviceApi.GetFreshserviceChangeList", + "fullyQualifiedName": "FreshserviceApi.GetFreshserviceChangeList@3.0.0", + "description": "Retrieve a list of all changes in Freshservice.\n\nUse this tool to get a comprehensive list of changes in Freshservice. It can be called when you need to access or review all changes recorded in the Freshservice system.", + "parameters": [ + { + "name": "changes_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of changes to retrieve per page in a paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_updated_since", + "type": "string", + "required": false, + "description": "Retrieve changes updated since a specific date (in ISO 8601 format).", + "enum": null, + "inferrable": true + }, + { + "name": "filter_name_for_change_retrieval", + "type": "string", + "required": false, + "description": "Specify the filter to retrieve changes, such as 'my_open', 'unassigned', or 'closed'.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number of the change list to retrieve from Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "requester_email", + "type": "string", + "required": false, + "description": "The email address of the requester to filter changes by their email.", + "enum": null, + "inferrable": true + }, + { + "name": "requester_id", + "type": "string", + "required": false, + "description": "Specify the requester ID to filter changes associated with this ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-changes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetFreshserviceChangeList", + "parameters": { + "changes_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "filter_by_updated_since": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "filter_name_for_change_retrieval": { + "value": "my_open", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "requester_email": { + "value": "example@example.com", + "type": "string", + "required": false + }, + "requester_id": { + "value": "12345", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFreshserviceDepartments", + "qualifiedName": "FreshserviceApi.GetFreshserviceDepartments", + "fullyQualifiedName": "FreshserviceApi.GetFreshserviceDepartments@3.0.0", + "description": "Retrieve a list of departments from Freshservice.\n\nUse this tool to get a list of all departments or companies (in MSP Mode) available in Freshservice.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "The number of departments to retrieve in each page of a paginated list. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "The page number of results to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-departments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetFreshserviceDepartments", + "parameters": { + "entries_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFreshserviceProblems", + "qualifiedName": "FreshserviceApi.GetFreshserviceProblems", + "fullyQualifiedName": "FreshserviceApi.GetFreshserviceProblems@3.0.0", + "description": "Retrieve all problems from Freshservice.\n\nThis tool fetches a list of all problems recorded in Freshservice. It should be called when there is a need to access or review issues tracked in the system.", + "parameters": [ + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "Specify the page number to retrieve from the paginated list of problems.", + "enum": null, + "inferrable": true + }, + { + "name": "problems_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of problems to retrieve per page in a paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_problems_updated_since", + "type": "string", + "required": false, + "description": "Retrieve problems updated since the specified date (in ISO 8601 format).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-problems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetFreshserviceProblems", + "parameters": { + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + }, + "problems_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "retrieve_problems_updated_since": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFreshserviceRelease", + "qualifiedName": "FreshserviceApi.GetFreshserviceRelease", + "fullyQualifiedName": "FreshserviceApi.GetFreshserviceRelease@3.0.0", + "description": "Retrieve release details from Freshservice by ID.\n\nCall this tool to obtain specific release details from Freshservice using a provided release ID.", + "parameters": [ + { + "name": "release_id", + "type": "integer", + "required": true, + "description": "ID of the release to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-release'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetFreshserviceRelease", + "parameters": { + "release_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFreshserviceReleases", + "qualifiedName": "FreshserviceApi.GetFreshserviceReleases", + "fullyQualifiedName": "FreshserviceApi.GetFreshserviceReleases@3.0.0", + "description": "Retrieve a list of all Releases in Freshservice.\n\nUse this tool to obtain a complete list of all Releases within the Freshservice platform. Useful for tracking, managing, and reviewing release information.", + "parameters": [ + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Indicates which page of the release list to retrieve in a paginated response.", + "enum": null, + "inferrable": true + }, + { + "name": "release_updated_since", + "type": "string", + "required": false, + "description": "Retrieve releases updated after the specified date (in YYYY-MM-DD format).", + "enum": null, + "inferrable": true + }, + { + "name": "releases_per_page", + "type": "integer", + "required": false, + "description": "The number of releases to retrieve per page in the paginated list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-releases'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetFreshserviceReleases", + "parameters": { + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "release_updated_since": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "releases_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFreshserviceReleaseTask", + "qualifiedName": "FreshserviceApi.GetFreshserviceReleaseTask", + "fullyQualifiedName": "FreshserviceApi.GetFreshserviceReleaseTask@3.0.0", + "description": "Retrieve a specific task for a release in Freshservice.\n\nCall this tool to get information about a specific task within a release in Freshservice using the release and task IDs.", + "parameters": [ + { + "name": "release_identifier", + "type": "integer", + "required": true, + "description": "The numeric ID of the release to retrieve the task from.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the task to retrieve within a release in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-release-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetFreshserviceReleaseTask", + "parameters": { + "release_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "task_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFreshserviceTicketDetails", + "qualifiedName": "FreshserviceApi.GetFreshserviceTicketDetails", + "fullyQualifiedName": "FreshserviceApi.GetFreshserviceTicketDetails@3.0.0", + "description": "Retrieve details of a FreshService ticket by ID.\n\nUse this tool to obtain detailed information about a specific ticket in Freshservice when given a ticket ID.", + "parameters": [ + { + "name": "ticket_id", + "type": "integer", + "required": true, + "description": "The unique ID of the FreshService ticket to fetch details for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_ticket_fields", + "type": "string", + "required": false, + "description": "Specify fields to include in the ticket response, like 'stats' or 'requester'. Supported options are conversations, requester, problem, stats, assets, change, related_tickets.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-ticket'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetFreshserviceTicketDetails", + "parameters": { + "ticket_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "include_additional_ticket_fields": { + "value": "requester", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetInstalledSoftwareList", + "qualifiedName": "FreshserviceApi.GetInstalledSoftwareList", + "fullyQualifiedName": "FreshserviceApi.GetInstalledSoftwareList@3.0.0", + "description": "Retrieve all software installed on a specific device.\n\nUse this tool to obtain a comprehensive list of software applications installed on a particular device by its display ID.", + "parameters": [ + { + "name": "device_display_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier for the device to fetch the software list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-asset-applications'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetInstalledSoftwareList", + "parameters": { + "device_display_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetLocations", + "qualifiedName": "FreshserviceApi.GetLocations", + "fullyQualifiedName": "FreshserviceApi.GetLocations@3.0.0", + "description": "Retrieve a list of all locations in Freshservice.\n\nCall this tool to obtain a comprehensive list of all locations configured in the Freshservice system. Useful for management and administrative tasks requiring location data.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "The number of location entries to retrieve per page in the paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "The page number of the locations list you want to retrieve. Useful for navigating through paginated results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-locations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetLocations", + "parameters": { + "entries_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOnboardingRequestForm", + "qualifiedName": "FreshserviceApi.GetOnboardingRequestForm", + "fullyQualifiedName": "FreshserviceApi.GetOnboardingRequestForm@3.0.0", + "description": "Retrieve all fields in the onboarding request form.\n\nThis tool retrieves a list of all fields in the initiator onboarding request form from Freshservice, which can be used to understand the data structure required for the onboarding process.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-onboarding-request-form'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetOnboardingRequestForm", + "parameters": { + "mode": { + "value": "get_request_schema", + "type": "string", + "required": true + }, + "request_body": { + "value": "", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProblemTasks", + "qualifiedName": "FreshserviceApi.GetProblemTasks", + "fullyQualifiedName": "FreshserviceApi.GetProblemTasks@3.0.0", + "description": "Retrieve tasks associated with a specific problem ID.\n\nUse this tool to get the list of tasks related to a particular problem in Freshservice by providing the problem ID.", + "parameters": [ + { + "name": "problem_id", + "type": "integer", + "required": true, + "description": "The ID of the problem for which tasks need to be retrieved. This identifies the specific problem in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number of the task list to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "tasks_per_page", + "type": "integer", + "required": false, + "description": "The number of tasks to retrieve per page in the paginated list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-problem-tasks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetProblemTasks", + "parameters": { + "problem_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "tasks_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProblemTimeEntries", + "qualifiedName": "FreshserviceApi.GetProblemTimeEntries", + "fullyQualifiedName": "FreshserviceApi.GetProblemTimeEntries@3.0.0", + "description": "Retrieve time entries for a specific Freshservice problem.\n\nUse this tool to get all time entries associated with a particular problem in Freshservice by providing the problem ID.", + "parameters": [ + { + "name": "problem_id", + "type": "integer", + "required": true, + "description": "The unique ID of the Freshservice problem to retrieve time entries for.", + "enum": null, + "inferrable": true + }, + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "The number of time entries to retrieve in each page of a paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "The page number to retrieve from the paginated list of time entries for the specified problem.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-problem-time-entries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetProblemTimeEntries", + "parameters": { + "problem_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "entries_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProductInfo", + "qualifiedName": "FreshserviceApi.GetProductInfo", + "fullyQualifiedName": "FreshserviceApi.GetProductInfo@3.0.0", + "description": "Retrieve a specific Product from the Product Catalog.\n\nUse this tool to get detailed information about a specific product using its ID from the Freshservice Product Catalog.", + "parameters": [ + { + "name": "product_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the product to retrieve from the catalog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-product'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetProductInfo", + "parameters": { + "product_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectDetails", + "qualifiedName": "FreshserviceApi.GetProjectDetails", + "fullyQualifiedName": "FreshserviceApi.GetProjectDetails@3.0.0", + "description": "Retrieve detailed information about a specific project.\n\nUse this tool to obtain comprehensive data for a project by specifying the project ID. It accesses the Freshservice API to fetch and return details, helping in managing and understanding ongoing projects.", + "parameters": [ + { + "name": "project_id", + "type": "integer", + "required": true, + "description": "The integer ID of the project to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-project'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetProjectDetails", + "parameters": { + "project_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectTasks", + "qualifiedName": "FreshserviceApi.GetProjectTasks", + "fullyQualifiedName": "FreshserviceApi.GetProjectTasks@3.0.0", + "description": "Retrieve a list of project tasks from Freshservice.\n\nUse this tool to get a list of all tasks within a specific project in Freshservice. It should be called when you need detailed task information for project management or tracking purposes.", + "parameters": [ + { + "name": "project_id", + "type": "integer", + "required": true, + "description": "The ID of the project whose tasks are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of entries to retrieve per page in a paginated task list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "The page number of the project tasks list to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "task_filter", + "type": "string", + "required": false, + "description": "Filter tasks by status: all, open, in_progress, completed, overdue, unassigned.", + "enum": null, + "inferrable": true + }, + { + "name": "task_parent_id", + "type": "integer", + "required": false, + "description": "Filter tasks by their parent task ID. Useful for narrowing down tasks under specific parent tasks.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-project-tasks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetProjectTasks", + "parameters": { + "project_id": { + "value": 123, + "type": "integer", + "required": true + }, + "entries_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + }, + "task_filter": { + "value": "open", + "type": "string", + "required": false + }, + "task_parent_id": { + "value": 456, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPurchaseOrders", + "qualifiedName": "FreshserviceApi.GetPurchaseOrders", + "fullyQualifiedName": "FreshserviceApi.GetPurchaseOrders@3.0.0", + "description": "Retrieve all purchase orders from Freshservice.\n\nUse this tool to get a comprehensive list of all purchase orders recorded in the Freshservice system. It's useful for tasks that require an overview of procurement activities.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of entries to retrieve per page in a paginated list. This helps manage and control the pagination results.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number to retrieve from the paginated list of purchase orders.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-purchase-orders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetPurchaseOrders", + "parameters": { + "entries_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetReleaseFormFields", + "qualifiedName": "FreshserviceApi.GetReleaseFormFields", + "fullyQualifiedName": "FreshserviceApi.GetReleaseFormFields@3.0.0", + "description": "Retrieve fields of the Release Object in Freshservice.\n\nUse this tool to obtain all fields that make up the Release Object in Freshservice. This is useful when needing to understand or display the structure of a release form.", + "parameters": [], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-release-form-fields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetReleaseFormFields", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetReleaseNote", + "qualifiedName": "FreshserviceApi.GetReleaseNote", + "fullyQualifiedName": "FreshserviceApi.GetReleaseNote@3.0.0", + "description": "Retrieve a note from a specific release in Freshservice.\n\nThis tool retrieves a specific note associated with a given release ID from Freshservice. It is useful for accessing detailed notes or updates related to particular releases.", + "parameters": [ + { + "name": "note_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the note to be retrieved from the release.", + "enum": null, + "inferrable": true + }, + { + "name": "release_id", + "type": "integer", + "required": true, + "description": "The unique identifier for a specific release to retrieve the note from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-release-note'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetReleaseNote", + "parameters": { + "note_id": { + "value": 123, + "type": "integer", + "required": true + }, + "release_id": { + "value": 456, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetReleaseNotes", + "qualifiedName": "FreshserviceApi.GetReleaseNotes", + "fullyQualifiedName": "FreshserviceApi.GetReleaseNotes@3.0.0", + "description": "Retrieve notes for a specified release in Freshservice.\n\nUse this tool to get detailed notes on a release by providing the release ID. It is useful for obtaining updates and information documented in a particular release within Freshservice.", + "parameters": [ + { + "name": "release_identifier", + "type": "integer", + "required": true, + "description": "The ID representing the release for which notes are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "notes_per_page", + "type": "integer", + "required": false, + "description": "The number of notes to retrieve per page in the paginated result.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "Indicates which page of notes to retrieve for the specified release.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-release-note'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetReleaseNotes", + "parameters": { + "release_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "notes_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetReleaseTasks", + "qualifiedName": "FreshserviceApi.GetReleaseTasks", + "fullyQualifiedName": "FreshserviceApi.GetReleaseTasks@3.0.0", + "description": "Retrieve all tasks for a specified release in Freshservice.\n\nThis tool is used to obtain a list of tasks associated with a specific release ID from Freshservice. It is useful when you need detailed information about tasks related to a release.", + "parameters": [ + { + "name": "release_id", + "type": "integer", + "required": true, + "description": "The unique ID of the release for which tasks are to be retrieved from Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "Specify the page number of tasks to retrieve for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "tasks_per_page", + "type": "integer", + "required": false, + "description": "The number of tasks to retrieve per page in a paginated list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-release-tasks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetReleaseTasks", + "parameters": { + "release_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + }, + "tasks_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetReleaseTimeEntries", + "qualifiedName": "FreshserviceApi.GetReleaseTimeEntries", + "fullyQualifiedName": "FreshserviceApi.GetReleaseTimeEntries@3.0.0", + "description": "Retrieve time entries for a specified release.\n\nThis tool retrieves the time entries associated with a given Release ID from Freshservice. It should be called when there's a need to review or analyze time tracking data for a specific release in Freshservice.", + "parameters": [ + { + "name": "release_id", + "type": "integer", + "required": true, + "description": "The ID of the release for which time entries are to be retrieved from Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "The number of time entries to retrieve per page in a paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "Specify the page number of the time entries to retrieve for the given release.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-release-time-entries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetReleaseTimeEntries", + "parameters": { + "release_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "entries_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetServiceItemFields", + "qualifiedName": "FreshserviceApi.GetServiceItemFields", + "fullyQualifiedName": "FreshserviceApi.GetServiceItemFields@3.0.0", + "description": "Retrieve all fields of a specified service item in Freshservice.\n\nThis tool retrieves detailed information about all the fields of a specified service item from Freshservice, using the service item's ID.", + "parameters": [ + { + "name": "service_item_id", + "type": "integer", + "required": true, + "description": "The integer ID of the service item to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-catalog-item-fields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetServiceItemFields", + "parameters": { + "service_item_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetServiceItems", + "qualifiedName": "FreshserviceApi.GetServiceItems", + "fullyQualifiedName": "FreshserviceApi.GetServiceItems@3.0.0", + "description": "Retrieve a list of all service items in Freshservice.\n\nUse this tool to get a complete list of service items available in your Freshservice account. It should be called when you need detailed information about the service items.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of entries to retrieve in each page of the service items list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve from the list of service items.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-service-items'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetServiceItems", + "parameters": { + "entries_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSolutionArticles", + "qualifiedName": "FreshserviceApi.GetSolutionArticles", + "fullyQualifiedName": "FreshserviceApi.GetSolutionArticles@3.0.0", + "description": "Retrieve all Solution articles from Freshservice.\n\nThis tool is used to gather a complete list of Solution articles available in Freshservice. It should be called when you need to access or display the entire collection of articles.", + "parameters": [ + { + "name": "category_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier for the category whose solution articles need to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "The number of solution articles to retrieve per page for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_id", + "type": "integer", + "required": false, + "description": "The ID of the folder whose solution articles need to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number of the solution articles to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-solution-article'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetSolutionArticles", + "parameters": { + "category_identifier": { + "value": 3, + "type": "integer", + "required": false + }, + "entries_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "folder_id": { + "value": 5, + "type": "integer", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSolutionCategories", + "qualifiedName": "FreshserviceApi.GetSolutionCategories", + "fullyQualifiedName": "FreshserviceApi.GetSolutionCategories@3.0.0", + "description": "Retrieve a list of all solution categories in Freshservice.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of entries to retrieve per page in a paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "The page number of solution categories to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-solution-category'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetSolutionCategories", + "parameters": { + "entries_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTicketConversations", + "qualifiedName": "FreshserviceApi.GetTicketConversations", + "fullyQualifiedName": "FreshserviceApi.GetTicketConversations@3.0.0", + "description": "Fetches all conversations from a specified Freshservice ticket.\n\nUse this tool to retrieve a list of all conversations associated with a specific ticket in Freshservice. This can be helpful for reviewing past interactions and understanding communication history related to the ticket.", + "parameters": [ + { + "name": "ticket_id", + "type": "integer", + "required": true, + "description": "ID of the ticket from Freshservice for fetching conversations.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-ticket-conversations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetTicketConversations", + "parameters": { + "ticket_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTicketTimeEntries", + "qualifiedName": "FreshserviceApi.GetTicketTimeEntries", + "fullyQualifiedName": "FreshserviceApi.GetTicketTimeEntries@3.0.0", + "description": "Retrieve time entries for a specific ticket in Freshservice.\n\nUse this tool to get all time entries associated with a specific ticket ID from Freshservice. Ideal for tracking time spent and managing ticket details.", + "parameters": [ + { + "name": "ticket_request_id", + "type": "integer", + "required": true, + "description": "The ID of the ticket request for which the time entries need to be retrieved. This should be an integer value identifying a specific ticket in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "Number of time entries to retrieve per page in a paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number of time entries to retrieve for the given ticket ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-ticket-time-entries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetTicketTimeEntries", + "parameters": { + "ticket_request_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "entries_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUserOnboardingRequests", + "qualifiedName": "FreshserviceApi.GetUserOnboardingRequests", + "fullyQualifiedName": "FreshserviceApi.GetUserOnboardingRequests@3.0.0", + "description": "Retrieve all onboarding requests for a specific user.\n\nUse this tool to obtain all onboarding requests associated with a particular user, aiding in user management and tracking.", + "parameters": [], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-onboarding-requests'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetUserOnboardingRequests", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetVendorList", + "qualifiedName": "FreshserviceApi.GetVendorList", + "fullyQualifiedName": "FreshserviceApi.GetVendorList@3.0.0", + "description": "Retrieve a list of all vendors from Freshservice.\n\nUse this tool to get a complete list of vendors stored in the Freshservice system. It's useful for acquiring vendor information when managing resources or contracts.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of vendor entries to retrieve in each page of a paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specifies which page number of vendor entries to retrieve. Useful for navigating paginated results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-vendors'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.GetVendorList", + "parameters": { + "entries_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAllProducts", + "qualifiedName": "FreshserviceApi.ListAllProducts", + "fullyQualifiedName": "FreshserviceApi.ListAllProducts@3.0.0", + "description": "Retrieve all products from Freshservice.\n\nUse this tool to get a comprehensive list of all the products available in the Freshservice system. This helps in managing and reviewing product inventories effectively.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "The number of entries to retrieve in each page of a paginated list. This controls the page size.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_fetch", + "type": "integer", + "required": false, + "description": "The specific page number to retrieve from the list of products.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-products'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ListAllProducts", + "parameters": { + "entries_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "page_number_to_fetch": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListApplicationInstallations", + "qualifiedName": "FreshserviceApi.ListApplicationInstallations", + "fullyQualifiedName": "FreshserviceApi.ListApplicationInstallations@3.0.0", + "description": "Retrieve all devices with a specific software installed.\n\nThis tool fetches a list of devices where a specified software application is installed. It should be called when you need to determine which devices have a certain software application installed by providing the application ID.", + "parameters": [ + { + "name": "software_application_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the software application to get installation details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-application-installations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ListApplicationInstallations", + "parameters": { + "software_application_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAssets", + "qualifiedName": "FreshserviceApi.ListAssets", + "fullyQualifiedName": "FreshserviceApi.ListAssets@3.0.0", + "description": "Retrieve a list of all assets in Freshservice.\n\nThis tool is used to get a complete list of all assets available in the Freshservice platform. It can be called to fetch detailed inventory information, aiding in asset management tasks.", + "parameters": [ + { + "name": "asset_filter_query", + "type": "string", + "required": false, + "description": "A URL-encoded query string to filter the asset list. Supports parameters like asset_type_id, department_id, location_id, and more.", + "enum": null, + "inferrable": true + }, + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of asset entries to retrieve per page in a paginated list. Not applicable when a search or filter is used.", + "enum": null, + "inferrable": true + }, + { + "name": "include_asset_type_fields", + "type": "string", + "required": false, + "description": "Specify asset type fields to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "list_trashed_assets_only", + "type": "boolean", + "required": false, + "description": "Set to true to list only assets in the trash.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve from the list of assets.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "A simple query to search for an asset. Supports 'name', 'asset_tag', and 'serial_number'. Example: \"name:'dell monitor'\".", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-assets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ListAssets", + "parameters": { + "asset_filter_query": { + "value": "asset_type_id:1 AND department_id:2", + "type": "string", + "required": false + }, + "entries_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "include_asset_type_fields": { + "value": "true", + "type": "string", + "required": false + }, + "list_trashed_assets_only": { + "value": false, + "type": "boolean", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "search_query": { + "value": "name:'laptop'", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAssetTypes", + "qualifiedName": "FreshserviceApi.ListAssetTypes", + "fullyQualifiedName": "FreshserviceApi.ListAssetTypes@3.0.0", + "description": "Fetch a list of all asset types from Freshservice.\n\nUse this to get an overview of all asset types defined within Freshservice. Useful for managing assets or integrating asset data with other systems.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "The number of asset types to retrieve per page in the list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve for paginated results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-asset-types'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ListAssetTypes", + "parameters": { + "entries_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCannedResponses", + "qualifiedName": "FreshserviceApi.ListCannedResponses", + "fullyQualifiedName": "FreshserviceApi.ListCannedResponses@3.0.0", + "description": "Retrieve canned responses from a specified folder in Freshservice.\n\nCall this tool to obtain a list of all canned responses within a specified canned response folder in Freshservice. It's useful for accessing predefined replies saved in a particular folder.", + "parameters": [ + { + "name": "canned_response_folder_id", + "type": "integer", + "required": true, + "description": "The ID of the canned response folder to retrieve responses from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-canned-response-folders-canned-responses'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ListCannedResponses", + "parameters": { + "canned_response_folder_id": { + "value": 123, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListComponentTypes", + "qualifiedName": "FreshserviceApi.ListComponentTypes", + "fullyQualifiedName": "FreshserviceApi.ListComponentTypes@3.0.0", + "description": "Retrieve all Freshservice component types and their fields.\n\nUse this tool to obtain a list of all component types available in Freshservice. It provides details about each component type and their specific fields, which can be useful for understanding how components are organized.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of component type entries to retrieve in each page.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve in a paginated list of component types.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-component-types'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ListComponentTypes", + "parameters": { + "entries_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListFreshserviceAgents", + "qualifiedName": "FreshserviceApi.ListFreshserviceAgents", + "fullyQualifiedName": "FreshserviceApi.ListFreshserviceAgents@3.0.0", + "description": "Retrieve a list of all agents from Freshservice.\n\nCall this tool to get a comprehensive list of all agents present in your Freshservice account. It will return the agent details necessary for managing or reviewing team configurations.", + "parameters": [ + { + "name": "agent_employment_status", + "type": "string", + "required": false, + "description": "Specifies if the list should include full-time or occasional agents. Use 'fulltime' or 'occasional'.", + "enum": null, + "inferrable": true + }, + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of entries to retrieve per page in the result set.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_mobile_phone_number", + "type": "string", + "required": false, + "description": "Filter agents by the given mobile phone number.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_work_phone_number", + "type": "string", + "required": false, + "description": "Filter agents by their work phone number to retrieve corresponding requesters.", + "enum": null, + "inferrable": true + }, + { + "name": "list_active_accounts", + "type": "boolean", + "required": false, + "description": "List only active user accounts. Use true for active accounts, false for deactivated ones.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "The specific page number to retrieve in the list of Freshservice agents.", + "enum": null, + "inferrable": true + }, + { + "name": "query_filter", + "type": "string", + "required": false, + "description": "A URL-encoded query string to filter agents based on parameters like first_name, job_title, etc. Example: \"job_title:'HR Manager' AND created_at:>'2018-08-10'\".", + "enum": null, + "inferrable": true + }, + { + "name": "requester_email", + "type": "string", + "required": false, + "description": "The email address to find the corresponding requester agent in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-agents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ListFreshserviceAgents", + "parameters": { + "agent_employment_status": { + "value": "fulltime", + "type": "string", + "required": false + }, + "entries_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "filter_by_mobile_phone_number": { + "value": "+1234567890", + "type": "string", + "required": false + }, + "filter_by_work_phone_number": { + "value": "+0987654321", + "type": "string", + "required": false + }, + "list_active_accounts": { + "value": true, + "type": "boolean", + "required": false + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + }, + "query_filter": { + "value": "job_title:'Support Agent' AND created_at:>'2020-01-01'", + "type": "string", + "required": false + }, + "requester_email": { + "value": "example@domain.com", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListFreshserviceProjects", + "qualifiedName": "FreshserviceApi.ListFreshserviceProjects", + "fullyQualifiedName": "FreshserviceApi.ListFreshserviceProjects@3.0.0", + "description": "Retrieve all projects from Freshservice.\n\nUse this tool to obtain a comprehensive list of projects stored in the Freshservice platform. Ideal for users needing to access or review project details managed within Freshservice.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "The number of projects to retrieve per page in a paginated result set from Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_archived_projects", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve archived projects, false for active projects.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_project_status", + "type": "string", + "required": false, + "description": "Filter projects based on their status: all, open, in_progress, or completed.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number of projects to retrieve for paginated results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-projects'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ListFreshserviceProjects", + "parameters": { + "entries_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "filter_archived_projects": { + "value": false, + "type": "boolean", + "required": false + }, + "filter_project_status": { + "value": "open", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListFreshserviceTickets", + "qualifiedName": "FreshserviceApi.ListFreshserviceTickets", + "fullyQualifiedName": "FreshserviceApi.ListFreshserviceTickets@3.0.0", + "description": "Fetch a list of tickets from Freshservice.\n\nUse this tool to retrieve all tickets currently in Freshservice. Ideal for viewing open or closed tickets and managing support inquiries.", + "parameters": [ + { + "name": "filter_by_requester_email", + "type": "string", + "required": false, + "description": "Filter tickets by the requester's email address.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields_in_response", + "type": "string", + "required": false, + "description": "Specify certain fields to include in the response. Examples: 'stats' for ticket's closed and resolved times, 'requester' for requester's details.", + "enum": null, + "inferrable": true + }, + { + "name": "requester_id_filter", + "type": "integer", + "required": false, + "description": "Filter tickets by the ID of the requester to view those created by a specific user.", + "enum": null, + "inferrable": true + }, + { + "name": "ticket_filter", + "type": "string", + "required": false, + "description": "Apply a pre-defined filter to fetch specific types of tickets. Options are: new_and_my_open, watching, spam, deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "ticket_sort_order", + "type": "string", + "required": false, + "description": "Sort the list of tickets in ascending ('asc') or descending ('desc') order. Default is 'desc'.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_since", + "type": "string", + "required": false, + "description": "Filter tickets based on their update timestamp. Use ISO 8601 format, e.g., '2015-01-19T02:00:00Z'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-tickets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ListFreshserviceTickets", + "parameters": { + "filter_by_requester_email": { + "value": "example@example.com", + "type": "string", + "required": false + }, + "include_fields_in_response": { + "value": "stats,requester", + "type": "string", + "required": false + }, + "requester_id_filter": { + "value": 12345, + "type": "integer", + "required": false + }, + "ticket_filter": { + "value": "new_and_my_open", + "type": "string", + "required": false + }, + "ticket_sort_order": { + "value": "asc", + "type": "string", + "required": false + }, + "updated_since": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListRequesterFields", + "qualifiedName": "FreshserviceApi.ListRequesterFields", + "fullyQualifiedName": "FreshserviceApi.ListRequesterFields@3.0.0", + "description": "Retrieve a list of all requester fields in Freshservice.\n\nUse this tool to obtain a complete list of requester fields in your Freshservice instance.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "Number of requester fields to retrieve per page in the paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve in a paginated list of requester fields.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-requester-fields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ListRequesterFields", + "parameters": { + "entries_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSoftwareApplications", + "qualifiedName": "FreshserviceApi.ListSoftwareApplications", + "fullyQualifiedName": "FreshserviceApi.ListSoftwareApplications@3.0.0", + "description": "Retrieve a list of software applications from Freshservice.\n\nUse this tool to get a comprehensive list of all software applications available in Freshservice. This can be helpful for inventory management or IT support inquiries.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of software application entries to retrieve per page.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "The specific page number of the software list to retrieve from Freshservice. Useful for navigating large lists.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-applications'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ListSoftwareApplications", + "parameters": { + "entries_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MergeSecondaryRequesters", + "qualifiedName": "FreshserviceApi.MergeSecondaryRequesters", + "fullyQualifiedName": "FreshserviceApi.MergeSecondaryRequesters@3.0.0", + "description": "Merge secondary requesters into a primary requester.\n\nUse this tool to combine one or more secondary requester profiles into a primary requester profile, consolidating their information into a single account.", + "parameters": [ + { + "name": "primary_requester_id", + "type": "integer", + "required": true, + "description": "The ID of the primary requester to merge other requesters into.", + "enum": null, + "inferrable": true + }, + { + "name": "secondary_requester_ids", + "type": "array", + "innerType": "integer", + "required": true, + "description": "List of IDs of secondary requesters to be merged into the primary requester.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'merge-requester'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.MergeSecondaryRequesters", + "parameters": { + "primary_requester_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "secondary_requester_ids": { + "value": [67890, 23456, 78901], + "type": "array", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "PostTicketReply", + "qualifiedName": "FreshserviceApi.PostTicketReply", + "fullyQualifiedName": "FreshserviceApi.PostTicketReply@3.0.0", + "description": "Add a reply to a Freshservice ticket.\n\n This tool allows you to post a new reply to a specified ticket in Freshservice. Use it when you need to update a ticket with additional information or respond to queries.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "ticket_id", + "type": "integer", + "required": false, + "description": "ID of the ticket to which the reply will be added. This must be an integer representing the unique identifier of the ticket. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-ticket-reply'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.PostTicketReply", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "ticket_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"body\":\"Thank you for your patience. Please let me know if you have any further questions.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveAssetType", + "qualifiedName": "FreshserviceApi.RemoveAssetType", + "fullyQualifiedName": "FreshserviceApi.RemoveAssetType@3.0.0", + "description": "Delete an existing asset type in Freshservice.\n\nUse this tool to delete an asset type by providing its display ID. Call this tool when you need to remove an asset from the Freshservice system.", + "parameters": [ + { + "name": "asset_display_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the asset type to be deleted in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-asset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RemoveAssetType", + "parameters": { + "asset_display_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveFreshserviceTicket", + "qualifiedName": "FreshserviceApi.RemoveFreshserviceTicket", + "fullyQualifiedName": "FreshserviceApi.RemoveFreshserviceTicket@3.0.0", + "description": "Remove a ticket from Freshservice.\n\nUse this tool to delete a ticket in Freshservice by providing the ticket ID. It should be called when a ticket needs to be removed from the system.", + "parameters": [ + { + "name": "ticket_id", + "type": "integer", + "required": true, + "description": "The unique ID of the Freshservice ticket to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-ticket'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RemoveFreshserviceTicket", + "parameters": { + "ticket_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveTicketConversation", + "qualifiedName": "FreshserviceApi.RemoveTicketConversation", + "fullyQualifiedName": "FreshserviceApi.RemoveTicketConversation@3.0.0", + "description": "Remove a conversation from a Freshservice ticket.\n\nUse this tool to delete a specific conversation from a Freshservice ticket. Ideal for managing ticket discussions by removing unnecessary or old conversations.", + "parameters": [ + { + "name": "conversation_id", + "type": "integer", + "required": true, + "description": "ID of the reply or note that needs to be deleted from a Freshservice ticket.", + "enum": null, + "inferrable": true + }, + { + "name": "ticket_id_for_removal", + "type": "integer", + "required": true, + "description": "The ID of the Freshservice ticket from which the conversation should be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-ticket-conversation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RemoveTicketConversation", + "parameters": { + "conversation_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "ticket_id_for_removal": { + "value": 789012, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RestoreArchivedProject", + "qualifiedName": "FreshserviceApi.RestoreArchivedProject", + "fullyQualifiedName": "FreshserviceApi.RestoreArchivedProject@3.0.0", + "description": "Restore an archived project in Freshservice.\n\nUse this tool to restore a previously archived project within the Freshservice platform. It is useful when you need to reactivate a project for continued work or review.", + "parameters": [ + { + "name": "project_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the archived project to restore in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'restore-project'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RestoreArchivedProject", + "parameters": { + "project_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RestoreDeletedTicket", + "qualifiedName": "FreshserviceApi.RestoreDeletedTicket", + "fullyQualifiedName": "FreshserviceApi.RestoreDeletedTicket@3.0.0", + "description": "Restore a deleted ticket in Freshservice.\n\nUse this tool to restore a deleted ticket in Freshservice by specifying the ticket ID. Call this when you need to recover a ticket that was previously deleted.", + "parameters": [ + { + "name": "ticket_id", + "type": "integer", + "required": true, + "description": "Provide the integer ID of the ticket you want to restore in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'restore-ticket'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RestoreDeletedTicket", + "parameters": { + "ticket_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveAgentGroupById", + "qualifiedName": "FreshserviceApi.RetrieveAgentGroupById", + "fullyQualifiedName": "FreshserviceApi.RetrieveAgentGroupById@3.0.0", + "description": "Retrieve details of a specific agent group by ID.\n\nUse this tool to get information about an agent group from Freshservice using its unique ID.", + "parameters": [ + { + "name": "agent_group_id", + "type": "integer", + "required": true, + "description": "The unique ID of the agent group to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-agent-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveAgentGroupById", + "parameters": { + "agent_group_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveAssetInformation", + "qualifiedName": "FreshserviceApi.RetrieveAssetInformation", + "fullyQualifiedName": "FreshserviceApi.RetrieveAssetInformation@3.0.0", + "description": "Retrieve detailed information about a specific asset.\n\nUse this tool to get detailed information about a specific asset in the Freshservice system using its display ID.", + "parameters": [ + { + "name": "asset_display_id", + "type": "integer", + "required": true, + "description": "The unique display ID of the asset you want to retrieve information for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-asset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveAssetInformation", + "parameters": { + "asset_display_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveAssetType", + "qualifiedName": "FreshserviceApi.RetrieveAssetType", + "fullyQualifiedName": "FreshserviceApi.RetrieveAssetType@3.0.0", + "description": "Retrieve details of a specific asset type from Freshservice.\n\nUse this tool to obtain information about a specific asset type identified by its asset type ID within the Freshservice system.", + "parameters": [ + { + "name": "asset_type_id", + "type": "integer", + "required": true, + "description": "The unique ID of the asset type to retrieve. Must be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-asset-type'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveAssetType", + "parameters": { + "asset_type_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCannedResponses", + "qualifiedName": "FreshserviceApi.RetrieveCannedResponses", + "fullyQualifiedName": "FreshserviceApi.RetrieveCannedResponses@3.0.0", + "description": "Retrieve a list of all Canned Responses in Freshservice.", + "parameters": [], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-canned-responses'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveCannedResponses", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveChangeNote", + "qualifiedName": "FreshserviceApi.RetrieveChangeNote", + "fullyQualifiedName": "FreshserviceApi.RetrieveChangeNote@3.0.0", + "description": "Retrieve a note on a Change request from Freshservice.\n\nUse this tool to get details of a specific note associated with a Change request by providing the change and note IDs.", + "parameters": [ + { + "name": "change_request_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the change request. Provide this to retrieve the specific note associated with it.", + "enum": null, + "inferrable": true + }, + { + "name": "note_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the note you want to retrieve from a Change request.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-change-note'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveChangeNote", + "parameters": { + "change_request_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "note_id": { + "value": 6789, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveChangeTimeEntry", + "qualifiedName": "FreshserviceApi.RetrieveChangeTimeEntry", + "fullyQualifiedName": "FreshserviceApi.RetrieveChangeTimeEntry@3.0.0", + "description": "Retrieve a time entry on a Change request by ID.\n\nUse this tool to obtain details about a specific time entry associated with a Change request in Freshservice, identified by its Change ID.", + "parameters": [ + { + "name": "change_request_id", + "type": "integer", + "required": true, + "description": "ID of the change request to retrieve the specific time entry.", + "enum": null, + "inferrable": true + }, + { + "name": "time_entry_id", + "type": "integer", + "required": true, + "description": "The unique ID of the specific time entry to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-change-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveChangeTimeEntry", + "parameters": { + "change_request_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "time_entry_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCsatSurvey", + "qualifiedName": "FreshserviceApi.RetrieveCsatSurvey", + "fullyQualifiedName": "FreshserviceApi.RetrieveCsatSurvey@3.0.0", + "description": "Retrieve a CSAT survey by ID from Freshservice.\n\nUse this tool to fetch detailed information about a Customer Satisfaction (CSAT) survey from Freshservice by providing the survey ID. Ideal for accessing survey feedback and metrics.", + "parameters": [ + { + "name": "csat_survey_id", + "type": "integer", + "required": true, + "description": "ID of the CSAT survey to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-survey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveCsatSurvey", + "parameters": { + "csat_survey_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveFreshserviceChangeTask", + "qualifiedName": "FreshserviceApi.RetrieveFreshserviceChangeTask", + "fullyQualifiedName": "FreshserviceApi.RetrieveFreshserviceChangeTask@3.0.0", + "description": "Retrieve a task from a Freshservice Change request by ID.\n\nUse this tool to fetch details of a specific task associated with a Change request in Freshservice, identified by its task and change IDs.", + "parameters": [ + { + "name": "change_request_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the change request to retrieve the task from.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the task to be retrieved from a Change request in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-change-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveFreshserviceChangeTask", + "parameters": { + "change_request_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "task_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProblemDetails", + "qualifiedName": "FreshserviceApi.RetrieveProblemDetails", + "fullyQualifiedName": "FreshserviceApi.RetrieveProblemDetails@3.0.0", + "description": "Retrieve details of a specific problem by ID.\n\nUse this tool to get detailed information about a problem in Freshservice by specifying its ID. Useful for retrieving specific problem data for analysis or reporting.", + "parameters": [ + { + "name": "problem_id", + "type": "integer", + "required": true, + "description": "ID of the problem to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-problem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveProblemDetails", + "parameters": { + "problem_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProblemNote", + "qualifiedName": "FreshserviceApi.RetrieveProblemNote", + "fullyQualifiedName": "FreshserviceApi.RetrieveProblemNote@3.0.0", + "description": "Retrieve a note on a Freshservice problem using IDs.\n\nUse this tool to get detailed information about a specific note associated with a problem in Freshservice by providing the problem and note IDs.", + "parameters": [ + { + "name": "note_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the note to be retrieved on the Freshservice problem.", + "enum": null, + "inferrable": true + }, + { + "name": "problem_id", + "type": "integer", + "required": true, + "description": "The ID of the problem for which the note is being retrieved. It should be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-problem-note'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveProblemNote", + "parameters": { + "note_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "problem_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProblemNotes", + "qualifiedName": "FreshserviceApi.RetrieveProblemNotes", + "fullyQualifiedName": "FreshserviceApi.RetrieveProblemNotes@3.0.0", + "description": "Retrieve notes from a specific problem in Freshservice.\n\nUse this tool to get all notes associated with a specific problem in Freshservice by providing the problem's ID.", + "parameters": [ + { + "name": "problem_id", + "type": "integer", + "required": true, + "description": "The integer ID of the problem for which notes will be retrieved from Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "notes_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of notes to retrieve per page in the paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "The page number of notes to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-problem-notes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveProblemNotes", + "parameters": { + "problem_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "notes_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProblemTask", + "qualifiedName": "FreshserviceApi.RetrieveProblemTask", + "fullyQualifiedName": "FreshserviceApi.RetrieveProblemTask@3.0.0", + "description": "Retrieve a specific task from a problem in Freshservice.\n\nThis tool retrieves the details of a task associated with a specific problem in Freshservice, using the problem and task IDs provided.", + "parameters": [ + { + "name": "problem_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the problem used to retrieve the task details from Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "integer", + "required": true, + "description": "ID of the task to be retrieved from the specified problem, expected as an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-problem-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveProblemTask", + "parameters": { + "problem_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "task_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProblemTimeEntry", + "qualifiedName": "FreshserviceApi.RetrieveProblemTimeEntry", + "fullyQualifiedName": "FreshserviceApi.RetrieveProblemTimeEntry@3.0.0", + "description": "Retrieve a time entry for a specific problem in Freshservice.\n\nUse this tool to get detailed information about a time entry associated with a specific problem in Freshservice when provided with the problem ID and time entry ID.", + "parameters": [ + { + "name": "problem_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the problem to retrieve the associated time entry.", + "enum": null, + "inferrable": true + }, + { + "name": "time_entry_id", + "type": "integer", + "required": true, + "description": "An integer representing the ID of the specific time entry to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-problem-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveProblemTimeEntry", + "parameters": { + "problem_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "time_entry_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePurchaseOrder", + "qualifiedName": "FreshserviceApi.RetrievePurchaseOrder", + "fullyQualifiedName": "FreshserviceApi.RetrievePurchaseOrder@3.0.0", + "description": "Retrieve an existing purchase order by ID.\n\nFetch the details of an existing purchase order using its unique identifier. This tool should be called when purchase order information is needed.", + "parameters": [ + { + "name": "purchase_order_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the purchase order to retrieve. This must be an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-purchase-order'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrievePurchaseOrder", + "parameters": { + "purchase_order_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveReleaseTimeEntry", + "qualifiedName": "FreshserviceApi.RetrieveReleaseTimeEntry", + "fullyQualifiedName": "FreshserviceApi.RetrieveReleaseTimeEntry@3.0.0", + "description": "Retrieve a specific time entry from a release.\n\nUse this tool to obtain details about a specific time entry associated with a release in Freshservice, using the release and time entry IDs.", + "parameters": [ + { + "name": "release_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the release for which you want to retrieve the time entry. Ensure it corresponds to an existing release in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "time_entry_id", + "type": "integer", + "required": true, + "description": "The unique ID of the time entry to be retrieved from a specific release.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-release-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveReleaseTimeEntry", + "parameters": { + "release_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "time_entry_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSolutionFolders", + "qualifiedName": "FreshserviceApi.RetrieveSolutionFolders", + "fullyQualifiedName": "FreshserviceApi.RetrieveSolutionFolders@3.0.0", + "description": "Retrieve all solution folders from Freshservice.\n\nUse this tool to get a list of all solution folders available in Freshservice. Useful for organizing or managing solution articles.", + "parameters": [ + { + "name": "entries_per_page", + "type": "integer", + "required": false, + "description": "The number of solution folder entries to retrieve per page.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number to retrieve in a paginated list of solution folders.", + "enum": null, + "inferrable": true + }, + { + "name": "solution_category_id", + "type": "integer", + "required": false, + "description": "ID of the solution category where the folders reside. This specifies which category's folders to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-solution-folders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveSolutionFolders", + "parameters": { + "entries_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "solution_category_id": { + "value": 123, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSpecificSoftware", + "qualifiedName": "FreshserviceApi.RetrieveSpecificSoftware", + "fullyQualifiedName": "FreshserviceApi.RetrieveSpecificSoftware@3.0.0", + "description": "Fetch details of a specific software application from Freshservice.", + "parameters": [ + { + "name": "software_application_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier for the software application in Freshservice that you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-application'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveSpecificSoftware", + "parameters": { + "software_application_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTicketTask", + "qualifiedName": "FreshserviceApi.RetrieveTicketTask", + "fullyQualifiedName": "FreshserviceApi.RetrieveTicketTask@3.0.0", + "description": "Retrieve a specific task from a ticket request.\n\nUse this tool to get information about a task associated with a specific ticket in Freshservice by providing the ticket and task IDs.", + "parameters": [ + { + "name": "task_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the task to retrieve from the ticket request.", + "enum": null, + "inferrable": true + }, + { + "name": "ticket_request_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the ticket request in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-ticket-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveTicketTask", + "parameters": { + "task_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "ticket_request_id": { + "value": 789012, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTicketTasks", + "qualifiedName": "FreshserviceApi.RetrieveTicketTasks", + "fullyQualifiedName": "FreshserviceApi.RetrieveTicketTasks@3.0.0", + "description": "Retrieve tasks for a specific ticket ID.\n\nThis tool is used to fetch the list of tasks associated with a specific ticket request from Freshservice, using the ticket ID.", + "parameters": [ + { + "name": "ticket_request_id", + "type": "integer", + "required": true, + "description": "The unique ID of the ticket request to retrieve associated tasks from Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_retrieve", + "type": "integer", + "required": false, + "description": "The page number of tasks to retrieve from the paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "tasks_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of tasks to retrieve per page in a paginated response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list-ticket-tasks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveTicketTasks", + "parameters": { + "ticket_request_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "page_number_to_retrieve": { + "value": 1, + "type": "integer", + "required": false + }, + "tasks_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveVendorDetails", + "qualifiedName": "FreshserviceApi.RetrieveVendorDetails", + "fullyQualifiedName": "FreshserviceApi.RetrieveVendorDetails@3.0.0", + "description": "Retrieve details of a specific vendor by ID.\n\nThis tool fetches detailed information about a specific vendor using their vendor ID. It should be called when you need to access vendor information stored in Freshservice.", + "parameters": [ + { + "name": "vendor_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the vendor to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-vendor'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.RetrieveVendorDetails", + "parameters": { + "vendor_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAgentGroup", + "qualifiedName": "FreshserviceApi.UpdateAgentGroup", + "fullyQualifiedName": "FreshserviceApi.UpdateAgentGroup@3.0.0", + "description": "Update an existing Agent Group in Freshservice.\n\n This tool updates an existing agent group in Freshservice. It should be called when modifications to group details are required.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "agent_group_id", + "type": "integer", + "required": false, + "description": "The unique identifier of the agent group to update. This should be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-agent-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateAgentGroup", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "agent_group_id": { + "value": 123, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Support Team\", \"description\": \"Handles support queries\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAssetComponent", + "qualifiedName": "FreshserviceApi.UpdateAssetComponent", + "fullyQualifiedName": "FreshserviceApi.UpdateAssetComponent@3.0.0", + "description": "Update a specific component within an asset.\n\nThis tool updates a specified component within an asset in Freshservice. Use it to modify details of an existing component in an asset by providing the asset's display ID and the component's ID.", + "parameters": [ + { + "name": "asset_display_id", + "type": "integer", + "required": true, + "description": "The unique display ID of the asset where the component is being updated. This is required to identify the specific asset in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "component_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the component to update within the asset. This should be an integer representing the component's ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-asset-component'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateAssetComponent", + "parameters": { + "asset_display_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "component_id": { + "value": 7890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAssetType", + "qualifiedName": "FreshserviceApi.UpdateAssetType", + "fullyQualifiedName": "FreshserviceApi.UpdateAssetType@3.0.0", + "description": "Update an existing asset type in Freshservice.\n\nUse this tool to update information about an existing asset type within the Freshservice platform. The asset type to be updated is identified by its asset_type_id.", + "parameters": [ + { + "name": "asset_type_id", + "type": "integer", + "required": true, + "description": "Unique identifier of the asset type to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "asset_id", + "type": "integer", + "required": false, + "description": "Unique identifier of the asset type to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "asset_type_description_html", + "type": "string", + "required": false, + "description": "Provide a short HTML-formatted description of the asset type.", + "enum": null, + "inferrable": true + }, + { + "name": "asset_type_name", + "type": "string", + "required": false, + "description": "The new name for the asset type to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_asset_type_id", + "type": "integer", + "required": false, + "description": "Unique identifier for the parent asset type to establish hierarchy.", + "enum": null, + "inferrable": true + }, + { + "name": "plain_text_description", + "type": "string", + "required": false, + "description": "Provide a short plain text description of the asset type. Avoid using HTML or special formatting.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-asset-type'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateAssetType", + "parameters": { + "asset_type_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "asset_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "asset_type_description_html": { + "value": "

This is a high-performance laptop.

", + "type": "string", + "required": false + }, + "asset_type_name": { + "value": "High-Performance Laptop", + "type": "string", + "required": false + }, + "parent_asset_type_id": { + "value": 54321, + "type": "integer", + "required": false + }, + "plain_text_description": { + "value": "A high-performance laptop suitable for gaming and professional use.", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCannedResponse", + "qualifiedName": "FreshserviceApi.UpdateCannedResponse", + "fullyQualifiedName": "FreshserviceApi.UpdateCannedResponse@3.0.0", + "description": "Update a canned response in Freshservice.\n\n Use this tool to update an existing canned response in Freshservice. It modifies the details of a specific canned response identified by its ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "canned_response_id", + "type": "integer", + "required": false, + "description": "The ID of the canned response you wish to update. This should be an integer value that uniquely identifies the response within Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-canned-response'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateCannedResponse", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "canned_response_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Canned Response Title\",\"content\":\"This is the updated content for the canned response.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCannedResponseFolder", + "qualifiedName": "FreshserviceApi.UpdateCannedResponseFolder", + "fullyQualifiedName": "FreshserviceApi.UpdateCannedResponseFolder@3.0.0", + "description": "Update an existing Canned Response Folder in Freshservice.\n\nUse this tool to modify details of a specific canned response folder in Freshservice by providing the folder ID and required updates.", + "parameters": [ + { + "name": "canned_response_folder_id", + "type": "integer", + "required": true, + "description": "The ID of the canned response folder to update in Freshservice. This is required to identify which folder needs modification.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_creation_date", + "type": "string", + "required": false, + "description": "The date and time the canned response folder was originally created. Expected format is ISO 8601 (e.g., '2023-10-12T10:20:30Z').", + "enum": null, + "inferrable": true + }, + { + "name": "folder_name", + "type": "string", + "required": false, + "description": "The new name for the canned response folder. This will replace the current name.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_responses_count", + "type": "integer", + "required": false, + "description": "Specifies the number of responses in the canned response folder to update.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_type", + "type": "string", + "required": false, + "description": "Specify the type of the canned response folder. This may relate to its category or purpose.", + "enum": null, + "inferrable": true + }, + { + "name": "last_updated_timestamp", + "type": "string", + "required": false, + "description": "The timestamp of when the folder was last updated. Expected in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "new_folder_id", + "type": "integer", + "required": false, + "description": "The new ID to assign to the canned response folder. This should be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-canned-response-folder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateCannedResponseFolder", + "parameters": { + "canned_response_folder_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "folder_creation_date": { + "value": "2023-01-15T08:00:00Z", + "type": "string", + "required": false + }, + "folder_name": { + "value": "Updated Folder Name", + "type": "string", + "required": false + }, + "folder_responses_count": { + "value": 10, + "type": "integer", + "required": false + }, + "folder_type": { + "value": "Customer Support", + "type": "string", + "required": false + }, + "last_updated_timestamp": { + "value": "2023-10-10T12:30:00Z", + "type": "string", + "required": false + }, + "new_folder_id": { + "value": 54321, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateChangeNote", + "qualifiedName": "FreshserviceApi.UpdateChangeNote", + "fullyQualifiedName": "FreshserviceApi.UpdateChangeNote@3.0.0", + "description": "Update an existing note on a Freshservice change request.\n\nUse this tool to modify an existing note on a specific change request in Freshservice by providing the change and note IDs.", + "parameters": [ + { + "name": "change_request_id", + "type": "integer", + "required": true, + "description": "Unique identifier for the change request to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "note_id", + "type": "integer", + "required": true, + "description": "The ID of the existing note to be updated. Provide the unique integer identifier for the note.", + "enum": null, + "inferrable": true + }, + { + "name": "note_body_html", + "type": "string", + "required": false, + "description": "The body of the note in HTML format. Use HTML tags to style the content appropriately.", + "enum": null, + "inferrable": true + }, + { + "name": "note_body_text", + "type": "string", + "required": false, + "description": "The content of the note in plain text format to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "note_creation_time", + "type": "string", + "required": false, + "description": "Date and time when the note was created; format should follow ISO 8601 standard.", + "enum": null, + "inferrable": true + }, + { + "name": "note_unique_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the specific note to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "note_updated_datetime", + "type": "string", + "required": false, + "description": "The date and time when the note was last updated. Use ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_email_addresses", + "type": "array", + "innerType": "string", + "required": false, + "description": "Email addresses to notify about the updated note. Provide as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id_of_note_creator", + "type": "integer", + "required": false, + "description": "Unique ID of the user who originally created the note. Used to identify the note's author.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-change-note'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateChangeNote", + "parameters": { + "change_request_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "note_id": { + "value": 67890, + "type": "integer", + "required": true + }, + "note_body_html": { + "value": "

This is an updated note body with HTML formatting.

", + "type": "string", + "required": false + }, + "note_body_text": { + "value": "This is an updated note body in plain text.", + "type": "string", + "required": false + }, + "note_creation_time": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "note_unique_id": { + "value": 54321, + "type": "integer", + "required": false + }, + "note_updated_datetime": { + "value": "2023-10-02T12:00:00Z", + "type": "string", + "required": false + }, + "notification_email_addresses": { + "value": ["user1@example.com", "user2@example.com"], + "type": "array", + "required": false + }, + "user_id_of_note_creator": { + "value": 98765, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateChangeRequest", + "qualifiedName": "FreshserviceApi.UpdateChangeRequest", + "fullyQualifiedName": "FreshserviceApi.UpdateChangeRequest@3.0.0", + "description": "Update an existing Change request in Freshservice.\n\n Use this tool to modify the details of an existing Change request in Freshservice. Useful for updating information or status of Change requests.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "change_request_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the Change request to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-change'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateChangeRequest", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "change_request_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"status\":\"completed\",\"description\":\"Updated change request details.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCsatSurvey", + "qualifiedName": "FreshserviceApi.UpdateCsatSurvey", + "fullyQualifiedName": "FreshserviceApi.UpdateCsatSurvey@3.0.0", + "description": "Update an existing CSAT Survey in Freshservice.\n\n Use this tool to modify and update the content or settings of an existing CSAT Survey in Freshservice.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "survey_id", + "type": "integer", + "required": false, + "description": "The unique ID of the CSAT Survey to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-survey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateCsatSurvey", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "survey_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"question\":\"How satisfied are you with our service?\",\"options\":[{\"label\":\"Very Satisfied\",\"value\":5},{\"label\":\"Satisfied\",\"value\":4},{\"label\":\"Neutral\",\"value\":3},{\"label\":\"Dissatisfied\",\"value\":2},{\"label\":\"Very Dissatisfied\",\"value\":1}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateExistingAgent", + "qualifiedName": "FreshserviceApi.UpdateExistingAgent", + "fullyQualifiedName": "FreshserviceApi.UpdateExistingAgent@3.0.0", + "description": "Update an existing agent in Freshservice.\n\n Use this tool to modify details of an existing agent in the Freshservice platform. It's suitable when you need to change agent information such as name, email, or role.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "agent_identifier", + "type": "integer", + "required": false, + "description": "ID of the agent to be updated in Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-agent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateExistingAgent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "agent_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"role\":\"agent\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateExistingAsset", + "qualifiedName": "FreshserviceApi.UpdateExistingAsset", + "fullyQualifiedName": "FreshserviceApi.UpdateExistingAsset@3.0.0", + "description": "Update the details of an existing asset in Freshservice.\n\n Use this tool to modify the information of an existing asset by its display ID in Freshservice.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "asset_display_id", + "type": "integer", + "required": false, + "description": "The unique display ID of the asset to be updated in Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-asset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateExistingAsset", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "asset_display_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Asset Name\", \"status\": \"Active\", \"category\": \"Hardware\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateExistingChangeTask", + "qualifiedName": "FreshserviceApi.UpdateExistingChangeTask", + "fullyQualifiedName": "FreshserviceApi.UpdateExistingChangeTask@3.0.0", + "description": "Update a task within a Freshservice Change request.\n\n Use this tool to update an existing task on a Change request in Freshservice. It should be called when a task associated with a change needs to be modified, such as changing its status, description, or other attributes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "change_request_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the Change request to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "integer", + "required": false, + "description": "The unique ID of the task to be updated in the Freshservice Change request. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-change-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateExistingChangeTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "change_request_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "task_identifier": { + "value": 67890, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"status\":\"In Progress\", \"description\":\"Updated task description\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateFreshserviceAnnouncement", + "qualifiedName": "FreshserviceApi.UpdateFreshserviceAnnouncement", + "fullyQualifiedName": "FreshserviceApi.UpdateFreshserviceAnnouncement@3.0.0", + "description": "Update an existing Freshservice announcement.\n\n Use this tool to modify an existing announcement in Freshservice. This is useful for updating content, title, or any other property of an announcement identified by its ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "announcement_id", + "type": "integer", + "required": false, + "description": "The unique ID of the announcement to update in Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-announcement'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateFreshserviceAnnouncement", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "announcement_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Announcement Title\", \"content\": \"This is the updated content of the announcement.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateFreshserviceChangeTimeEntry", + "qualifiedName": "FreshserviceApi.UpdateFreshserviceChangeTimeEntry", + "fullyQualifiedName": "FreshserviceApi.UpdateFreshserviceChangeTimeEntry@3.0.0", + "description": "Update a time entry on a Freshservice Change request.\n\n Use this tool to modify an existing time entry for a Change request in Freshservice, specifying the Change ID and the Time Entry ID to update.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "change_request_id", + "type": "integer", + "required": false, + "description": "ID of the change request to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "time_entry_identifier", + "type": "integer", + "required": false, + "description": "Provide the integer ID of the time entry to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-change-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateFreshserviceChangeTimeEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "change_request_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "time_entry_identifier": { + "value": 67890, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"hours\": 2, \"minutes\": 30, \"description\": \"Updated time entry for change request.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateFreshserviceProblemTimeEntry", + "qualifiedName": "FreshserviceApi.UpdateFreshserviceProblemTimeEntry", + "fullyQualifiedName": "FreshserviceApi.UpdateFreshserviceProblemTimeEntry@3.0.0", + "description": "Update an existing time entry on a Freshservice problem.\n\n Use this tool to modify details of a time entry recorded on a specific problem within Freshservice. This is helpful for correcting or adjusting recorded time related to problem management.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "problem_id", + "type": "integer", + "required": false, + "description": "ID of the problem whose time entry needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "time_entry_id", + "type": "integer", + "required": false, + "description": "The unique integer ID of the time entry to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-problem-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateFreshserviceProblemTimeEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "problem_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "time_entry_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"hours\": 2, \"minutes\": 30, \"description\": \"Updated time entry for problem resolution.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateFreshserviceRelease", + "qualifiedName": "FreshserviceApi.UpdateFreshserviceRelease", + "fullyQualifiedName": "FreshserviceApi.UpdateFreshserviceRelease@3.0.0", + "description": "Update an existing Release in Freshservice.\n\n Use this tool to modify details of an existing release in Freshservice. This is useful for updating information such as release dates, descriptions, or status.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "release_id", + "type": "integer", + "required": false, + "description": "The unique ID of the release to update in Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-release'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateFreshserviceRelease", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "release_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Release Name\", \"description\": \"Updated description\", \"status\": \"In Progress\", \"release_date\": \"2023-10-10\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateFreshserviceTicketTask", + "qualifiedName": "FreshserviceApi.UpdateFreshserviceTicketTask", + "fullyQualifiedName": "FreshserviceApi.UpdateFreshserviceTicketTask@3.0.0", + "description": "Update a task on a Freshservice ticket.\n\n Use this tool to update an existing task on a ticket in Freshservice. This is helpful for modifying task details such as status, description, or other properties associated with a ticket's task.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "ticket_id", + "type": "integer", + "required": false, + "description": "The ID of the ticket request to identify the specific ticket in Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "integer", + "required": false, + "description": "The unique ID of the task to be updated in Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-ticket-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateFreshserviceTicketTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "ticket_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "task_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"status\":\"completed\",\"description\":\"Task updated successfully\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateLocationInfo", + "qualifiedName": "FreshserviceApi.UpdateLocationInfo", + "fullyQualifiedName": "FreshserviceApi.UpdateLocationInfo@3.0.0", + "description": "Update an existing location's information in Freshservice.\n\n Use this tool to modify the details of an existing location in Freshservice. It should be called whenever there is a need to change location information, such as address or contact details.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "location_identifier", + "type": "integer", + "required": false, + "description": "The unique integer ID of the location to update in Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-location'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateLocationInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "location_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Location Name\",\"address\":\"1234 New Address St, City, State, ZIP\",\"contact_number\":\"123-456-7890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProblemNote", + "qualifiedName": "FreshserviceApi.UpdateProblemNote", + "fullyQualifiedName": "FreshserviceApi.UpdateProblemNote@3.0.0", + "description": "Update a note on an existing problem in Freshservice.\n\nThis tool updates an existing note on a specified problem in Freshservice. Use this when you need to modify details or correct information in a note associated with a problem.", + "parameters": [ + { + "name": "note_id", + "type": "integer", + "required": true, + "description": "ID of the note to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "problem_id", + "type": "integer", + "required": true, + "description": "The unique ID of the problem to update the note for.", + "enum": null, + "inferrable": true + }, + { + "name": "creator_user_id", + "type": "integer", + "required": false, + "description": "Unique ID of the user who originally created the note. This is necessary for update operations to ensure the note's authorship is correctly handled.", + "enum": null, + "inferrable": true + }, + { + "name": "note_body_html", + "type": "string", + "required": false, + "description": "The body of the note in HTML format for updating an existing note.", + "enum": null, + "inferrable": true + }, + { + "name": "note_body_text", + "type": "string", + "required": false, + "description": "The content of the note in plain text format for the problem note update.", + "enum": null, + "inferrable": true + }, + { + "name": "note_created_datetime", + "type": "string", + "required": false, + "description": "The datetime when the note was initially created in ISO 8601 format (e.g., '2023-03-10T10:00:00Z').", + "enum": null, + "inferrable": true + }, + { + "name": "note_unique_id", + "type": "integer", + "required": false, + "description": "The unique ID of the note to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "note_update_datetime", + "type": "string", + "required": false, + "description": "The date and time at which the note was updated, in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_email_addresses", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of email addresses to notify about the note update.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-problem-note'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateProblemNote", + "parameters": { + "note_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "problem_id": { + "value": 67890, + "type": "integer", + "required": true + }, + "creator_user_id": { + "value": 54321, + "type": "integer", + "required": false + }, + "note_body_html": { + "value": "

This is an updated HTML note.

", + "type": "string", + "required": false + }, + "note_body_text": { + "value": "This is the updated plain text for the note.", + "type": "string", + "required": false + }, + "note_created_datetime": { + "value": "2023-01-15T08:30:00Z", + "type": "string", + "required": false + }, + "note_unique_id": { + "value": 98765, + "type": "integer", + "required": false + }, + "note_update_datetime": { + "value": "2023-10-02T12:00:00Z", + "type": "string", + "required": false + }, + "notification_email_addresses": { + "value": ["example1@example.com", "example2@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProblemTask", + "qualifiedName": "FreshserviceApi.UpdateProblemTask", + "fullyQualifiedName": "FreshserviceApi.UpdateProblemTask@3.0.0", + "description": "Update an existing task on a Freshservice problem.\n\n This tool updates a specific task linked to an existing problem in Freshservice. Use it to modify details of a task within a problem context.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "problem_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the problem to which the task is linked. This is an integer value. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "integer", + "required": false, + "description": "Unique integer identifier for the specific task to update within a problem in Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "password" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-problem-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateProblemTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "problem_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "task_identifier": { + "value": 67890, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"status\": \"open\", \"priority\": \"high\", \"description\": \"Updated task details.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProductInCatalog", + "qualifiedName": "FreshserviceApi.UpdateProductInCatalog", + "fullyQualifiedName": "FreshserviceApi.UpdateProductInCatalog@3.0.0", + "description": "Update an existing product in the catalog.\n\nUse this tool to modify details of a product in the product catalog. Call this when a product's information needs to be updated.", + "parameters": [ + { + "name": "product_unique_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier for the product to be updated in the catalog.", + "enum": null, + "inferrable": true + }, + { + "name": "asset_type_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the asset type of the product. It should be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "depreciation_type_description", + "type": "string", + "required": false, + "description": "A description of the depreciation type used for the product. Accepts textual information detailing the depreciation category or specifics.", + "enum": null, + "inferrable": true + }, + { + "name": "depreciation_type_identifier", + "type": "integer", + "required": false, + "description": "Unique identifier for the type of depreciation used for the product.", + "enum": null, + "inferrable": true + }, + { + "name": "procurement_mode", + "type": "integer", + "required": false, + "description": "Specifies the mode of procurement: 1 for Buy, 2 for Lease, 3 for Both.", + "enum": null, + "inferrable": true + }, + { + "name": "product_id_number", + "type": "integer", + "required": false, + "description": "Unique ID of the product to be updated in the catalog.", + "enum": null, + "inferrable": true + }, + { + "name": "product_manufacturer_name", + "type": "string", + "required": false, + "description": "The name of the product's manufacturer. Provide as free text.", + "enum": null, + "inferrable": true + }, + { + "name": "product_name", + "type": "string", + "required": false, + "description": "The name of the product to be updated in the catalog.", + "enum": null, + "inferrable": true + }, + { + "name": "product_status", + "type": "integer", + "required": false, + "description": "Specify the status of the product: `1` for In Production, `2` for In Pipeline, `3` for Retired.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-product'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateProductInCatalog", + "parameters": { + "product_unique_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "asset_type_id": { + "value": 678, + "type": "integer", + "required": false + }, + "depreciation_type_description": { + "value": "Straight-Line Depreciation", + "type": "string", + "required": false + }, + "depreciation_type_identifier": { + "value": 2, + "type": "integer", + "required": false + }, + "procurement_mode": { + "value": 1, + "type": "integer", + "required": false + }, + "product_id_number": { + "value": 987654321, + "type": "integer", + "required": false + }, + "product_manufacturer_name": { + "value": "TechCorp", + "type": "string", + "required": false + }, + "product_name": { + "value": "UltraWidget 3000", + "type": "string", + "required": false + }, + "product_status": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProject", + "qualifiedName": "FreshserviceApi.UpdateProject", + "fullyQualifiedName": "FreshserviceApi.UpdateProject@3.0.0", + "description": "Update an existing project in Freshservice.\n\n Use this tool to modify details of an existing project in Freshservice. Ideal for changes or updates to project information.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": false, + "description": "The unique identifier of the project to update. Must be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-project'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Project Name\",\"status\":\"active\",\"description\":\"This is an updated description for the project.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProjectTask", + "qualifiedName": "FreshserviceApi.UpdateProjectTask", + "fullyQualifiedName": "FreshserviceApi.UpdateProjectTask@3.0.0", + "description": "Update an existing project task in Freshservice.\n\n This tool updates an existing project task in Freshservice. It should be called when modifications to task details are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "integer", + "required": false, + "description": "The unique ID of the project containing the task to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "integer", + "required": false, + "description": "The ID of the task to be updated in Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-project-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateProjectTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "task_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"status\":\"in_progress\",\"assignee_id\":101,\"description\":\"Updated task description.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdatePurchaseOrder", + "qualifiedName": "FreshserviceApi.UpdatePurchaseOrder", + "fullyQualifiedName": "FreshserviceApi.UpdatePurchaseOrder@3.0.0", + "description": "Update details of an existing purchase order.\n\n This tool updates an existing purchase order with new information. Call this tool when you need to modify purchase order details in the Freshservice system.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "purchase_order_id", + "type": "integer", + "required": false, + "description": "The ID of the purchase order to update. It identifies which purchase order will be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-purchase-order'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdatePurchaseOrder", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "purchase_order_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"status\":\"closed\",\"total_amount\":2500}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateReleaseNote", + "qualifiedName": "FreshserviceApi.UpdateReleaseNote", + "fullyQualifiedName": "FreshserviceApi.UpdateReleaseNote@3.0.0", + "description": "Update an existing release note in Freshservice.\n\nThis tool updates an existing note on a specified release in Freshservice. Call this when you need to modify the content of a release note within the platform.", + "parameters": [ + { + "name": "note_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the note to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "release_identifier", + "type": "integer", + "required": true, + "description": "The unique integer ID of the release to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "note_body_plain_text", + "type": "string", + "required": false, + "description": "The content of the release note in plain text format, without any HTML tags.", + "enum": null, + "inferrable": true + }, + { + "name": "note_created_datetime", + "type": "string", + "required": false, + "description": "The date and time when the note was initially created, in ISO 8601 format (e.g., YYYY-MM-DDTHH:MM:SSZ).", + "enum": null, + "inferrable": true + }, + { + "name": "note_html_body", + "type": "string", + "required": false, + "description": "The HTML content of the note to be updated. Use valid HTML format.", + "enum": null, + "inferrable": true + }, + { + "name": "note_unique_id", + "type": "integer", + "required": false, + "description": "The unique ID of the note to update.", + "enum": null, + "inferrable": true + }, + { + "name": "note_updated_at", + "type": "string", + "required": false, + "description": "Date and time when the note was updated, in ISO 8601 format (e.g., '2023-03-27T14:00:00Z').", + "enum": null, + "inferrable": true + }, + { + "name": "notification_email_addresses", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of email addresses to notify about the updated release note.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id_of_note_creator", + "type": "integer", + "required": false, + "description": "Unique ID of the user who created the note.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-release-note'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateReleaseNote", + "parameters": { + "note_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "release_identifier": { + "value": 67890, + "type": "integer", + "required": true + }, + "note_body_plain_text": { + "value": "Updated content of the release note.", + "type": "string", + "required": false + }, + "note_created_datetime": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "note_html_body": { + "value": "

Updated content of the release note with HTML formatting.

", + "type": "string", + "required": false + }, + "note_unique_id": { + "value": 54321, + "type": "integer", + "required": false + }, + "note_updated_at": { + "value": "2023-10-05T10:00:00Z", + "type": "string", + "required": false + }, + "notification_email_addresses": { + "value": ["example1@example.com", "example2@example.com"], + "type": "array", + "required": false + }, + "user_id_of_note_creator": { + "value": 9876, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateReleaseTask", + "qualifiedName": "FreshserviceApi.UpdateReleaseTask", + "fullyQualifiedName": "FreshserviceApi.UpdateReleaseTask@3.0.0", + "description": "Update a specific task within a release in Freshservice.\n\n Use this tool to modify details of a specific task associated with an existing release in Freshservice. This is useful when changes are needed in task descriptions, assignments, dates, or statuses within a release.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "release_id", + "type": "integer", + "required": false, + "description": "The numeric ID of the release containing the task to update. This ID is mandatory to locate the specific release. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "integer", + "required": false, + "description": "The numeric ID of the task to be updated in the release. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-release-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateReleaseTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "release_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "task_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"description\": \"Update task description\", \"assigned_to\": \"user@example.com\", \"status\": \"in_progress\", \"due_date\": \"2023-12-31\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateReleaseTimeEntry", + "qualifiedName": "FreshserviceApi.UpdateReleaseTimeEntry", + "fullyQualifiedName": "FreshserviceApi.UpdateReleaseTimeEntry@3.0.0", + "description": "Update a time entry on a release in Freshservice.\n\n Use this tool to update an existing time entry associated with a specific release in Freshservice. It should be called when you need to modify details of a time entry for an already existing release.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "release_id", + "type": "integer", + "required": false, + "description": "ID of the release to be updated. Must be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "time_entry_id", + "type": "integer", + "required": false, + "description": "ID of the time entry to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-release-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateReleaseTimeEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "release_id": { + "value": 123, + "type": "integer", + "required": false + }, + "time_entry_id": { + "value": 456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"duration\": 120, \"description\": \"Updated time entry\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateRequesterInFreshservice", + "qualifiedName": "FreshserviceApi.UpdateRequesterInFreshservice", + "fullyQualifiedName": "FreshserviceApi.UpdateRequesterInFreshservice@3.0.0", + "description": "Update an existing requester in Freshservice.\n\n Use this tool to modify details of an existing requester in Freshservice by specifying their unique ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "requester_id_to_update", + "type": "integer", + "required": false, + "description": "The unique integer ID of the requester to update in Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-requester'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateRequesterInFreshservice", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "requester_id_to_update": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"phone\":\"123-456-7890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateServiceProblem", + "qualifiedName": "FreshserviceApi.UpdateServiceProblem", + "fullyQualifiedName": "FreshserviceApi.UpdateServiceProblem@3.0.0", + "description": "Update details of an existing problem in Freshservice.\n\n Use this tool to update information for a specific problem within the Freshservice platform by providing the necessary problem ID and details to modify.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "problem_id", + "type": "integer", + "required": false, + "description": "The integer ID of the problem to update in Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-problem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateServiceProblem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "problem_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"status\":\"resolved\",\"description\":\"Updated issue details.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateServiceRequest", + "qualifiedName": "FreshserviceApi.UpdateServiceRequest", + "fullyQualifiedName": "FreshserviceApi.UpdateServiceRequest@3.0.0", + "description": "Update an existing service request in Freshservice.\n\n Use this tool to update details of an existing service request in Freshservice when changes are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "service_request_id", + "type": "integer", + "required": false, + "description": "The unique integer ID of the service request that needs to be updated in Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-service-request'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateServiceRequest", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "service_request_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"status\":\"resolved\",\"description\":\"Issue has been resolved successfully.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSolutionArticle", + "qualifiedName": "FreshserviceApi.UpdateSolutionArticle", + "fullyQualifiedName": "FreshserviceApi.UpdateSolutionArticle@3.0.0", + "description": "Update a Freshservice solution article by ID.\n\n This tool updates a solution article in Freshservice using the provided article ID. It should be called when you need to modify the details of an existing solution article.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "solution_article_id", + "type": "integer", + "required": false, + "description": "The ID of the Freshservice solution article to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "password" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-solution-article'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateSolutionArticle", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "solution_article_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Article Title\",\"description\":\"Updated description of the article\",\"status\":\"published\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSolutionCategory", + "qualifiedName": "FreshserviceApi.UpdateSolutionCategory", + "fullyQualifiedName": "FreshserviceApi.UpdateSolutionCategory@3.0.0", + "description": "Update a solution category in Freshservice by ID.\n\nUse this tool to update a specific solution category in Freshservice by providing the category ID.", + "parameters": [ + { + "name": "solution_category_id", + "type": "integer", + "required": true, + "description": "The ID of the solution category to be updated in Freshservice.", + "enum": null, + "inferrable": true + }, + { + "name": "category_unique_id", + "type": "integer", + "required": false, + "description": "Unique identifier of the solution category to update. It must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "is_default_category", + "type": "boolean", + "required": false, + "description": "Indicates if the solution category is a default one, which restricts modifications like adding folders, deletion, or renaming.", + "enum": null, + "inferrable": true + }, + { + "name": "solution_category_description", + "type": "string", + "required": false, + "description": "Provide a description for the solution category being updated. This should be a brief textual summary.", + "enum": null, + "inferrable": true + }, + { + "name": "solution_category_name", + "type": "string", + "required": false, + "description": "The new name for the solution category to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "solution_category_position", + "type": "integer", + "required": false, + "description": "The position of the solution category in the category listing. Determines the order when there are multiple categories.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-solution-category'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateSolutionCategory", + "parameters": { + "solution_category_id": { + "value": 123, + "type": "integer", + "required": true + }, + "category_unique_id": { + "value": 456, + "type": "integer", + "required": false + }, + "is_default_category": { + "value": true, + "type": "boolean", + "required": false + }, + "solution_category_description": { + "value": "Updated description for the solution category.", + "type": "string", + "required": false + }, + "solution_category_name": { + "value": "New Solution Category Name", + "type": "string", + "required": false + }, + "solution_category_position": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSolutionFolder", + "qualifiedName": "FreshserviceApi.UpdateSolutionFolder", + "fullyQualifiedName": "FreshserviceApi.UpdateSolutionFolder@3.0.0", + "description": "Update a solution folder in Freshservice by ID.\n\n Use this tool to update a specific solution folder in Freshservice by providing the folder ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "solution_folder_id", + "type": "integer", + "required": false, + "description": "ID of the solution folder to update in Freshservice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-solution-folder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateSolutionFolder", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "solution_folder_id": { + "value": 123, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Folder Name\",\"description\":\"This is the updated description for the folder.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTicketTimeEntry", + "qualifiedName": "FreshserviceApi.UpdateTicketTimeEntry", + "fullyQualifiedName": "FreshserviceApi.UpdateTicketTimeEntry@3.0.0", + "description": "Update time entry for a ticket in Freshservice.\n\n Use this tool to update an existing time entry on a ticket in Freshservice. It's suitable for modifying the details of time tracked on support tickets to ensure accurate record-keeping.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "ticket_request_id", + "type": "integer", + "required": false, + "description": "The unique integer ID of the ticket request to update the time entry for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "time_entry_id", + "type": "integer", + "required": false, + "description": "The unique integer ID of the time entry to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-ticket-time-entry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateTicketTimeEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "ticket_request_id": { + "value": 123456, + "type": "integer", + "required": false + }, + "time_entry_id": { + "value": 7890, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"duration\": \"2 hours\", \"note\": \"Updated time entry\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateVendorInfo", + "qualifiedName": "FreshserviceApi.UpdateVendorInfo", + "fullyQualifiedName": "FreshserviceApi.UpdateVendorInfo@3.0.0", + "description": "Update details of an existing vendor.\n\n Use this tool to update information for an existing vendor in the Freshservice system, using the vendor ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "vendor_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier for the vendor to be updated. It must be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-vendor'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.UpdateVendorInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "vendor_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Vendor Name\", \"contact_email\": \"contact@vendor.com\", \"address\": \"123 Vendor St, City, Country\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ViewProjectTaskDetails", + "qualifiedName": "FreshserviceApi.ViewProjectTaskDetails", + "fullyQualifiedName": "FreshserviceApi.ViewProjectTaskDetails@3.0.0", + "description": "Retrieve details of a specific project task.\n\nUse this tool to view detailed information about a task within a specified project on Freshservice. Ideal for retrieving task status, assignees, or due dates.", + "parameters": [ + { + "name": "project_id_for_task", + "type": "integer", + "required": true, + "description": "The unique identifier of the project to which the task belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the task you want to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-project-task'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ViewProjectTaskDetails", + "parameters": { + "project_id_for_task": { + "value": 12345, + "type": "integer", + "required": true + }, + "task_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ViewServiceItem", + "qualifiedName": "FreshserviceApi.ViewServiceItem", + "fullyQualifiedName": "FreshserviceApi.ViewServiceItem@3.0.0", + "description": "View a service item's details using its ID.\n\nUse this tool to retrieve and view details of a specific service item by providing its ID. Call this tool when you need information about a service item from Freshservice.", + "parameters": [ + { + "name": "service_item_identifier", + "type": "integer", + "required": true, + "description": "The ID of the service item you want to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-service-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ViewServiceItem", + "parameters": { + "service_item_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ViewSolutionArticle", + "qualifiedName": "FreshserviceApi.ViewSolutionArticle", + "fullyQualifiedName": "FreshserviceApi.ViewSolutionArticle@3.0.0", + "description": "Retrieve details of a solution article by ID in Freshservice.\n\nUse this tool to view detailed information of a specific solution article in Freshservice. Provide the article ID to retrieve the content and metadata of the article.", + "parameters": [ + { + "name": "solution_article_id", + "type": "integer", + "required": true, + "description": "The unique ID of the solution article to retrieve from Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-solution-article'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ViewSolutionArticle", + "parameters": { + "solution_article_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ViewSolutionCategory", + "qualifiedName": "FreshserviceApi.ViewSolutionCategory", + "fullyQualifiedName": "FreshserviceApi.ViewSolutionCategory@3.0.0", + "description": "Retrieve details of a specific solution category.\n\nUse this tool to view and retrieve details about a specific solution category using its ID.", + "parameters": [ + { + "name": "solution_category_id", + "type": "integer", + "required": true, + "description": "The unique ID of the solution category to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-solution-category'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ViewSolutionCategory", + "parameters": { + "solution_category_id": { + "value": 123, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ViewSolutionFolder", + "qualifiedName": "FreshserviceApi.ViewSolutionFolder", + "fullyQualifiedName": "FreshserviceApi.ViewSolutionFolder@3.0.0", + "description": "Retrieve details of a specific solution folder in Freshservice.\n\nUse this tool to obtain information about a specific solution folder within Freshservice by providing the folder ID. It returns detailed data about the folder, which can be useful for managing and organizing IT solutions.", + "parameters": [ + { + "name": "solution_folder_id", + "type": "integer", + "required": true, + "description": "Provide the integer ID of the solution folder you wish to view in Freshservice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FRESHSERVICE_SUBDOMAIN", "FRESHSERVICE_API_KEY"], + "secretsInfo": [ + { + "name": "FRESHSERVICE_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "FRESHSERVICE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-solution-folder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "FreshserviceApi.ViewSolutionFolder", + "parameters": { + "solution_folder_id": { + "value": 123, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:31:14.309Z", + "summary": "FreshserviceApi provides a toolkit that enables seamless interaction with the Freshservice API, facilitating various operations for managing IT service requests. This toolkit empowers developers to automate and streamline service desk actions effectively.\n\n**Capabilities**\n- Activate and manage Customer Satisfaction (CSAT) surveys.\n- Add, update, and delete tasks, notes, and details for tickets, projects, changes, and problems.\n- Retrieve comprehensive details for assets, vendors, agents, and requests.\n- Manage organizational structures by creating or deleting departments, agent groups, and solutions.\n- Effortlessly handle asset and project management with detailed tracking features.\n\n**Secrets**\n- Securely manage API keys, tokens, and private keys, e.g., FRESHSERVICE_API_KEY, enhancing the integrity of API calls." +} diff --git a/data/toolkits/github.json b/data/toolkits/github.json new file mode 100644 index 000000000..f4487f23b --- /dev/null +++ b/data/toolkits/github.json @@ -0,0 +1,4930 @@ +{ + "id": "Github", + "label": "GitHub", + "version": "2.0.1", + "description": "Arcade.dev LLM tools for Github", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/github.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/github", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "github", + "allScopes": [] + }, + "tools": [ + { + "name": "AssignPullRequestUser", + "qualifiedName": "Github.AssignPullRequestUser", + "fullyQualifiedName": "Github.AssignPullRequestUser@2.0.1", + "description": "Assign a user to a pull request with intelligent search and fuzzy matching.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The number that identifies the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_identifier", + "type": "string", + "required": true, + "description": "The user identifier: username, email, name, or ID.", + "enum": null, + "inferrable": true + }, + { + "name": "search_mode", + "type": "string", + "required": true, + "description": "How to interpret the assignee_identifier.", + "enum": ["username", "email", "name", "id"], + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 0.9 confidence. Default is False", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Assignment result with user details or suggestions" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.AssignPullRequestUser", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "assignee_identifier": { + "value": "john.doe@example.com", + "type": "string", + "required": true + }, + "search_mode": { + "value": "email", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckPullRequestMergeStatus", + "qualifiedName": "Github.CheckPullRequestMergeStatus", + "fullyQualifiedName": "Github.CheckPullRequestMergeStatus@2.0.1", + "description": "Check if a pull request is ready to merge without attempting the merge.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The number that identifies the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "include_check_details", + "type": "boolean", + "required": false, + "description": "Include individual check run details in the response. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Comprehensive merge readiness status" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.CheckPullRequestMergeStatus", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "include_check_details": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CountStargazers", + "qualifiedName": "Github.CountStargazers", + "fullyQualifiedName": "Github.CountStargazers@2.0.1", + "description": "Count the number of stargazers (stars) for a GitHub repository.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The owner of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "name", + "type": "string", + "required": true, + "description": "The name of the repository", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "integer", + "description": "The number of stargazers (stars) for the specified repository" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.CountStargazers", + "parameters": { + "owner": { + "value": "octocat", + "type": "string", + "required": true + }, + "name": { + "value": "Hello-World", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBranch", + "qualifiedName": "Github.CreateBranch", + "fullyQualifiedName": "Github.CreateBranch@2.0.1", + "description": "Create a new branch in a repository.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension.", + "enum": null, + "inferrable": true + }, + { + "name": "branch", + "type": "string", + "required": true, + "description": "The name of the new branch.", + "enum": null, + "inferrable": true + }, + { + "name": "from_branch", + "type": "string", + "required": false, + "description": "The name of the branch to branch off of. Default: repository default branch.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Created branch details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.CreateBranch", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "branch": { + "value": "feature/new-branch", + "type": "string", + "required": true + }, + "from_branch": { + "value": "main", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateFile", + "qualifiedName": "Github.CreateFile", + "fullyQualifiedName": "Github.CreateFile@2.0.1", + "description": "Create a new file or overwrite an existing file in a repository.\n\nThe explicit mode parameter reduces accidental data loss: the default CREATE mode refuses to\ntouch existing files, while OVERWRITE must be chosen intentionally.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension.", + "enum": null, + "inferrable": true + }, + { + "name": "path", + "type": "string", + "required": true, + "description": "The content path.", + "enum": null, + "inferrable": true + }, + { + "name": "content", + "type": "string", + "required": true, + "description": "The content of the file.", + "enum": null, + "inferrable": true + }, + { + "name": "message", + "type": "string", + "required": true, + "description": "The commit message.", + "enum": null, + "inferrable": true + }, + { + "name": "branch", + "type": "string", + "required": true, + "description": "The branch name.", + "enum": null, + "inferrable": true + }, + { + "name": "mode", + "type": "string", + "required": false, + "description": "How to handle existing files. Default is FileMode.CREATE", + "enum": ["create", "overwrite"], + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "File creation/update result" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.CreateFile", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "path": { + "value": "folder/exampleFile.txt", + "type": "string", + "required": true + }, + "content": { + "value": "This is an example content for the file.", + "type": "string", + "required": true + }, + "message": { + "value": "Add new exampleFile.txt", + "type": "string", + "required": true + }, + "branch": { + "value": "main", + "type": "string", + "required": true + }, + "mode": { + "value": "OVERWRITE", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateIssue", + "qualifiedName": "Github.CreateIssue", + "fullyQualifiedName": "Github.CreateIssue@2.0.1", + "description": "Create an issue in a GitHub repository.\n\nOptionally add the created issue to a project by specifying add_to_project_number\nand add_to_project_scope.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": true, + "description": "The title of the issue.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "The contents of the issue.", + "enum": null, + "inferrable": true + }, + { + "name": "assignees", + "type": "array", + "innerType": "string", + "required": false, + "description": "Logins for Users to assign to this issue.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone", + "type": "integer", + "required": false, + "description": "The number of the milestone to associate this issue with.", + "enum": null, + "inferrable": true + }, + { + "name": "labels", + "type": "array", + "innerType": "string", + "required": false, + "description": "Labels to associate with this issue.", + "enum": null, + "inferrable": true + }, + { + "name": "add_to_project_number", + "type": "integer", + "required": false, + "description": "Project number to add this issue to", + "enum": null, + "inferrable": true + }, + { + "name": "add_to_project_scope", + "type": "string", + "required": false, + "description": "Project scope", + "enum": ["all", "organization", "user"], + "inferrable": true + }, + { + "name": "add_to_project_owner", + "type": "string", + "required": false, + "description": "Project owner (defaults to issue owner if not specified)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Created issue details with optional project link status" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.CreateIssue", + "parameters": { + "owner": { + "value": "exampleOwner", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "title": { + "value": "Example Issue Title", + "type": "string", + "required": true + }, + "body": { + "value": "This is a description of the issue.", + "type": "string", + "required": false + }, + "assignees": { + "value": ["user1", "user2"], + "type": "array", + "required": false + }, + "milestone": { + "value": 1, + "type": "integer", + "required": false + }, + "labels": { + "value": ["bug", "urgent"], + "type": "array", + "required": false + }, + "add_to_project_number": { + "value": 123, + "type": "integer", + "required": false + }, + "add_to_project_scope": { + "value": "org", + "type": "string", + "required": false + }, + "add_to_project_owner": { + "value": "exampleOwner", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateIssueComment", + "qualifiedName": "Github.CreateIssueComment", + "fullyQualifiedName": "Github.CreateIssueComment@2.0.1", + "description": "Create a comment on an issue in a GitHub repository.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_number", + "type": "integer", + "required": true, + "description": "The number that identifies the issue.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The contents of the comment.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Created comment details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.CreateIssueComment", + "parameters": { + "owner": { + "value": "exampleOwner", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "issue_number": { + "value": 42, + "type": "integer", + "required": true + }, + "body": { + "value": "This is a sample comment on the issue.", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePullRequest", + "qualifiedName": "Github.CreatePullRequest", + "fullyQualifiedName": "Github.CreatePullRequest@2.0.1", + "description": "Create a pull request in a GitHub repository.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension.", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": true, + "description": "The title of the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "head", + "type": "string", + "required": true, + "description": "The name of the branch where your changes are implemented. For cross-repository PRs, use format: username:branch.", + "enum": null, + "inferrable": true + }, + { + "name": "base", + "type": "string", + "required": true, + "description": "The name of the branch you want the changes pulled into.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "The contents/description of the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "draft", + "type": "boolean", + "required": false, + "description": "Create as a draft pull request. Default is False.", + "enum": null, + "inferrable": true + }, + { + "name": "maintainer_can_modify", + "type": "boolean", + "required": false, + "description": "Allow repository maintainers to modify the pull request branch. Default is True.", + "enum": null, + "inferrable": true + }, + { + "name": "issue", + "type": "integer", + "required": false, + "description": "Issue number to auto-link. Will prepend 'Closes #{issue}' to the PR body.", + "enum": null, + "inferrable": true + }, + { + "name": "reviewers", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of user logins to request reviews from.", + "enum": null, + "inferrable": true + }, + { + "name": "team_reviewers", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of team slugs to request reviews from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Created pull request details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.CreatePullRequest", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "title": { + "value": "Add new feature", + "type": "string", + "required": true + }, + "head": { + "value": "feature/new-feature-branch", + "type": "string", + "required": true + }, + "base": { + "value": "main", + "type": "string", + "required": true + }, + "body": { + "value": "This pull request adds a new feature that improves functionality.", + "type": "string", + "required": false + }, + "draft": { + "value": false, + "type": "boolean", + "required": false + }, + "maintainer_can_modify": { + "value": true, + "type": "boolean", + "required": false + }, + "issue": { + "value": 42, + "type": "integer", + "required": false + }, + "reviewers": { + "value": ["user1", "user2"], + "type": "array", + "required": false + }, + "team_reviewers": { + "value": ["dev-team"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateReplyForReviewComment", + "qualifiedName": "Github.CreateReplyForReviewComment", + "fullyQualifiedName": "Github.CreateReplyForReviewComment@2.0.1", + "description": "Create a reply to a review comment for a pull request.\n\nOptionally resolve the conversation thread after replying by setting resolve_thread=True\nand providing the thread_id (GraphQL Node ID).", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_number", + "type": "integer", + "required": true, + "description": "The number that identifies the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the comment.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The text of the review comment.", + "enum": null, + "inferrable": true + }, + { + "name": "thread_id", + "type": "string", + "required": false, + "description": "Optional GraphQL Node ID of the review thread to resolve after replying.", + "enum": null, + "inferrable": true + }, + { + "name": "resolve_thread", + "type": "boolean", + "required": false, + "description": "Whether to resolve the thread after replying. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Created reply comment details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.CreateReplyForReviewComment", + "parameters": { + "owner": { + "value": "exampleOwner", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "pull_number": { + "value": 42, + "type": "integer", + "required": true + }, + "comment_id": { + "value": 101, + "type": "integer", + "required": true + }, + "body": { + "value": "Thanks for your feedback! I've made the suggested changes.", + "type": "string", + "required": true + }, + "thread_id": { + "value": "MDExOkNvbW1lbnQxMDE=", + "type": "string", + "required": false + }, + "resolve_thread": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateReviewComment", + "qualifiedName": "Github.CreateReviewComment", + "fullyQualifiedName": "Github.CreateReviewComment@2.0.1", + "description": "Create a review comment for a pull request in a GitHub repository.\n\nIMPORTANT: Line numbers must be part of the diff (changed lines only).\nGitHub's API requires line numbers that exist in the pull request diff, not just any line\nin the file. If the line wasn't changed in the PR, the comment will fail with 422 error.\n\nIf the subject_type is not 'file', then the start_line and end_line parameters are required.\nIf the subject_type is 'file', then the start_line and end_line parameters are ignored.\nIf the commit_id is not provided, the latest commit SHA from the PR will be used.\n\nTIP: Use subject_type='file' to comment on the entire file if unsure about line positions.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_number", + "type": "integer", + "required": true, + "description": "The number that identifies the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The text of the review comment.", + "enum": null, + "inferrable": true + }, + { + "name": "path", + "type": "string", + "required": true, + "description": "The relative path to the file that necessitates a comment.", + "enum": null, + "inferrable": true + }, + { + "name": "commit_id", + "type": "string", + "required": false, + "description": "The SHA of the commit needing a comment. If not provided, the latest commit SHA from the PR will be used.", + "enum": null, + "inferrable": true + }, + { + "name": "start_line", + "type": "integer", + "required": false, + "description": "The start line of the range of lines in the pull request diff that the comment applies to. Required unless 'subject_type' is 'file'.", + "enum": null, + "inferrable": true + }, + { + "name": "end_line", + "type": "integer", + "required": false, + "description": "The end line of the range of lines in the pull request diff that the comment applies to. Required unless 'subject_type' is 'file'.", + "enum": null, + "inferrable": true + }, + { + "name": "side", + "type": "string", + "required": false, + "description": "The side of the diff that the pull request's changes appear on. Use LEFT for deletions that appear in red. Use RIGHT for additions that appear in green or unchanged lines that appear in white and are shown for context. Default is RIGHT.", + "enum": ["LEFT", "RIGHT"], + "inferrable": true + }, + { + "name": "start_side", + "type": "string", + "required": false, + "description": "The starting side of the diff that the comment applies to.", + "enum": null, + "inferrable": true + }, + { + "name": "subject_type", + "type": "string", + "required": false, + "description": "The type of subject that the comment applies to. Default is file.", + "enum": ["file", "line"], + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Created review comment details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.CreateReviewComment", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "pull_number": { + "value": 42, + "type": "integer", + "required": true + }, + "body": { + "value": "This change looks good, but please revise the variable naming for clarity.", + "type": "string", + "required": true + }, + "path": { + "value": "src/exampleFile.js", + "type": "string", + "required": true + }, + "commit_id": { + "value": "abc123def456ghi789jkl012mno345pq", + "type": "string", + "required": false + }, + "start_line": { + "value": 10, + "type": "integer", + "required": false + }, + "end_line": { + "value": 15, + "type": "integer", + "required": false + }, + "side": { + "value": "RIGHT", + "type": "string", + "required": false + }, + "start_side": { + "value": "RIGHT", + "type": "string", + "required": false + }, + "subject_type": { + "value": "file", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileContents", + "qualifiedName": "Github.GetFileContents", + "fullyQualifiedName": "Github.GetFileContents@2.0.1", + "description": "Get the contents of a file in a repository.\n\nReturns the decoded content (if text) along with metadata like SHA, size, and line count.\nFor large files, use start_line and end_line to retrieve specific line ranges.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension.", + "enum": null, + "inferrable": true + }, + { + "name": "path", + "type": "string", + "required": true, + "description": "Path within the repository relative to its root; omit owner/repo prefixes.", + "enum": null, + "inferrable": true + }, + { + "name": "ref", + "type": "string", + "required": false, + "description": "The name of the commit/branch/tag. Default: the repository's default branch.", + "enum": null, + "inferrable": true + }, + { + "name": "start_line", + "type": "integer", + "required": false, + "description": "First line to retrieve (1-indexed). Default: None (entire file).", + "enum": null, + "inferrable": true + }, + { + "name": "end_line", + "type": "integer", + "required": false, + "description": "Last line to retrieve (1-indexed, inclusive). Default: None (entire file).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "File content and metadata" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.GetFileContents", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "path": { + "value": "src/config.yaml", + "type": "string", + "required": true + }, + "ref": { + "value": "main", + "type": "string", + "required": false + }, + "start_line": { + "value": 1, + "type": "integer", + "required": false + }, + "end_line": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIssue", + "qualifiedName": "Github.GetIssue", + "fullyQualifiedName": "Github.GetIssue@2.0.1", + "description": "Get a specific issue from a GitHub repository.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_number", + "type": "integer", + "required": true, + "description": "The number that identifies the issue.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Issue details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.GetIssue", + "parameters": { + "owner": { + "value": "octocat", + "type": "string", + "required": true + }, + "repo": { + "value": "hello-world", + "type": "string", + "required": true + }, + "issue_number": { + "value": 42, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetNotificationSummary", + "qualifiedName": "Github.GetNotificationSummary", + "fullyQualifiedName": "Github.GetNotificationSummary@2.0.1", + "description": "Get a summary of GitHub notifications.\n\nReturns counts grouped by reason, repository, and type without full notification details.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL", "GITHUB_CLASSIC_PERSONAL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + }, + { + "name": "GITHUB_CLASSIC_PERSONAL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Summary of user notifications" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.GetNotificationSummary", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPullRequest", + "qualifiedName": "Github.GetPullRequest", + "fullyQualifiedName": "Github.GetPullRequest@2.0.1", + "description": "Get details of a pull request in a GitHub repository.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_number", + "type": "integer", + "required": true, + "description": "The number that identifies the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "include_diff_content", + "type": "boolean", + "required": false, + "description": "If true, return the diff content of the pull request. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Pull request details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.GetPullRequest", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "pull_number": { + "value": 42, + "type": "integer", + "required": true + }, + "include_diff_content": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepository", + "qualifiedName": "Github.GetRepository", + "fullyQualifiedName": "Github.GetRepository@2.0.1", + "description": "Get a repository.\n\nRetrieves detailed information about a repository using the GitHub API.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Repository details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.GetRepository", + "parameters": { + "owner": { + "value": "octocat", + "type": "string", + "required": true + }, + "repo": { + "value": "Hello-World", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetReviewWorkload", + "qualifiedName": "Github.GetReviewWorkload", + "fullyQualifiedName": "Github.GetReviewWorkload@2.0.1", + "description": "Get pull requests awaiting review by the authenticated user.\n\nReturns PRs where user is requested as reviewer and PRs user has recently reviewed.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "PR review workload information" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.GetReviewWorkload", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserOpenItems", + "qualifiedName": "Github.GetUserOpenItems", + "fullyQualifiedName": "Github.GetUserOpenItems@2.0.1", + "description": "Get user's currently open pull requests and issues across all repositories.\n\nReturns open PRs and issues authored by the authenticated user.", + "parameters": [ + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "Number of items per category (PRs and issues). Default is 30, max 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "User's currently open pull requests and issues" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.GetUserOpenItems", + "parameters": { + "per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserRecentActivity", + "qualifiedName": "Github.GetUserRecentActivity", + "fullyQualifiedName": "Github.GetUserRecentActivity@2.0.1", + "description": "Get the authenticated user's recent pull requests, reviews, issues, and commits.\n\nReturns PRs they authored, merged PRs, PRs they reviewed, issues they opened, and commits pushed", + "parameters": [ + { + "name": "days", + "type": "integer", + "required": false, + "description": "Number of days to look back. Default is 30.", + "enum": null, + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "Number of items per category (PRs and issues). Default is 10, max 50.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Recent pull requests, reviews, issues, and commits" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.GetUserRecentActivity", + "parameters": { + "days": { + "value": 14, + "type": "integer", + "required": false + }, + "per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIssues", + "qualifiedName": "Github.ListIssues", + "fullyQualifiedName": "Github.ListIssues@2.0.1", + "description": "List issues in a GitHub repository.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "Indicates the state of the issues to return. Default: open", + "enum": ["open", "closed", "all"], + "inferrable": true + }, + { + "name": "labels", + "type": "string", + "required": false, + "description": "A list of comma separated label names. Example: bug,ui,@high", + "enum": null, + "inferrable": true + }, + { + "name": "sort", + "type": "string", + "required": false, + "description": "What to sort results by. Default: created", + "enum": ["created", "updated", "comments"], + "inferrable": true + }, + { + "name": "direction", + "type": "string", + "required": false, + "description": "The direction to sort the results by. Default: desc", + "enum": ["asc", "desc"], + "inferrable": true + }, + { + "name": "since", + "type": "string", + "required": false, + "description": "Only show notifications updated after the given time. This is a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.", + "enum": null, + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "The number of results per page (max 100). Default: 30", + "enum": null, + "inferrable": true + }, + { + "name": "page", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch. Default: 1", + "enum": null, + "inferrable": true + }, + { + "name": "search_org_wide", + "type": "boolean", + "required": false, + "description": "Search across all organization repositories instead of just one repository. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "List of issues in the repository" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ListIssues", + "parameters": { + "owner": { + "value": "octocat", + "type": "string", + "required": true + }, + "repo": { + "value": "Hello-World", + "type": "string", + "required": true + }, + "state": { + "value": "open", + "type": "string", + "required": false + }, + "labels": { + "value": "bug,ui", + "type": "string", + "required": false + }, + "sort": { + "value": "created", + "type": "string", + "required": false + }, + "direction": { + "value": "asc", + "type": "string", + "required": false + }, + "since": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "page": { + "value": 2, + "type": "integer", + "required": false + }, + "search_org_wide": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListNotifications", + "qualifiedName": "Github.ListNotifications", + "fullyQualifiedName": "Github.ListNotifications@2.0.1", + "description": "List GitHub notifications with pagination.\n\nReturns notifications sorted chronologically by most recent first.", + "parameters": [ + { + "name": "page", + "type": "integer", + "required": false, + "description": "Page number to fetch. Default is 1.", + "enum": null, + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "Number of notifications per page (max 100). Default is 30.", + "enum": null, + "inferrable": true + }, + { + "name": "all_notifications", + "type": "boolean", + "required": false, + "description": "Include read notifications. Default is False.", + "enum": null, + "inferrable": true + }, + { + "name": "participating", + "type": "boolean", + "required": false, + "description": "Only show notifications user is participating in. Default is False.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_full_name", + "type": "string", + "required": false, + "description": "Filter notifications to owner/name repository. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "subject_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of notification subject types to include. Default is None (all types).", + "enum": ["Issue", "PullRequest", "Release", "Commit", "Discussion"], + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL", "GITHUB_CLASSIC_PERSONAL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + }, + { + "name": "GITHUB_CLASSIC_PERSONAL_ACCESS_TOKEN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Paginated list of notifications" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ListNotifications", + "parameters": { + "page": { + "value": 2, + "type": "integer", + "required": false + }, + "per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "all_notifications": { + "value": true, + "type": "boolean", + "required": false + }, + "participating": { + "value": false, + "type": "boolean", + "required": false + }, + "repository_full_name": { + "value": "owner/repo-name", + "type": "string", + "required": false + }, + "subject_types": { + "value": ["Issue", "PullRequest"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrgRepositories", + "qualifiedName": "Github.ListOrgRepositories", + "fullyQualifiedName": "Github.ListOrgRepositories@2.0.1", + "description": "List repositories for the specified organization.", + "parameters": [ + { + "name": "org", + "type": "string", + "required": true, + "description": "The organization name. The name is not case sensitive", + "enum": null, + "inferrable": true + }, + { + "name": "repo_type", + "type": "string", + "required": false, + "description": "The types of repositories you want returned. Default is all repositories.", + "enum": ["all", "public", "private", "forks", "sources", "member"], + "inferrable": true + }, + { + "name": "sort", + "type": "string", + "required": false, + "description": "The property to sort the results by. Default is created.", + "enum": ["created", "updated", "pushed", "full_name"], + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The order to sort by. Default is asc.", + "enum": ["asc", "desc"], + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "The number of results per page. Default is 30.", + "enum": null, + "inferrable": true + }, + { + "name": "page", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch. Default is 1.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "List of organization repositories" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ListOrgRepositories", + "parameters": { + "org": { + "value": "example-org", + "type": "string", + "required": true + }, + "repo_type": { + "value": "public", + "type": "string", + "required": false + }, + "sort": { + "value": "updated", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "page": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListProjectFields", + "qualifiedName": "Github.ListProjectFields", + "fullyQualifiedName": "Github.ListProjectFields@2.0.1", + "description": "List fields for a Projects V2 project.\n\nReturns all custom fields configured for the project, including field types\nand available options for select/iteration fields.", + "parameters": [ + { + "name": "project_search_mode", + "type": "string", + "required": true, + "description": "Select project lookup by number or name", + "enum": ["number", "name"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project number or title", + "enum": null, + "inferrable": true + }, + { + "name": "scope_target", + "type": "string", + "required": true, + "description": "Where the project lives", + "enum": ["all", "organization", "user"], + "inferrable": true + }, + { + "name": "scope_identifier", + "type": "string", + "required": true, + "description": "Owner reference", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 0.9 confidence. Default is False", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Project fields with options" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ListProjectFields", + "parameters": { + "project_search_mode": { + "value": "name", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "My Project", + "type": "string", + "required": true + }, + "scope_target": { + "value": "organization", + "type": "string", + "required": true + }, + "scope_identifier": { + "value": "my-org", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListProjectItems", + "qualifiedName": "Github.ListProjectItems", + "fullyQualifiedName": "Github.ListProjectItems@2.0.1", + "description": "List items for a Projects V2 project with optional filtering.", + "parameters": [ + { + "name": "project_search_mode", + "type": "string", + "required": true, + "description": "Select project lookup by number or name", + "enum": ["number", "name"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project number or title", + "enum": null, + "inferrable": true + }, + { + "name": "scope_target", + "type": "string", + "required": true, + "description": "Where the project lives", + "enum": ["all", "organization", "user"], + "inferrable": true + }, + { + "name": "scope_identifier", + "type": "string", + "required": true, + "description": "Owner reference", + "enum": null, + "inferrable": true + }, + { + "name": "filter_assignee", + "type": "string", + "required": false, + "description": "Filter by assignee ('@me' or username)", + "enum": null, + "inferrable": true + }, + { + "name": "filter_status", + "type": "string", + "required": false, + "description": "Filter by status field value", + "enum": null, + "inferrable": true + }, + { + "name": "filter_labels", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by labels", + "enum": null, + "inferrable": true + }, + { + "name": "filter_is_open", + "type": "boolean", + "required": false, + "description": "Filter by open/closed state", + "enum": null, + "inferrable": true + }, + { + "name": "advanced_query", + "type": "string", + "required": false, + "description": "Advanced query (overrides filters)", + "enum": null, + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "Items per page (max 100). Default is 30.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor", + "type": "string", + "required": false, + "description": "Cursor for next page", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 0.9 confidence. Default is False", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Project items with summary and pagination" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ListProjectItems", + "parameters": { + "project_search_mode": { + "value": "name", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "Project Alpha", + "type": "string", + "required": true + }, + "scope_target": { + "value": "organization", + "type": "string", + "required": true + }, + "scope_identifier": { + "value": "my-org", + "type": "string", + "required": true + }, + "filter_assignee": { + "value": "@me", + "type": "string", + "required": false + }, + "filter_status": { + "value": "in_progress", + "type": "string", + "required": false + }, + "filter_labels": { + "value": ["bug", "feature"], + "type": "array", + "required": false + }, + "filter_is_open": { + "value": true, + "type": "boolean", + "required": false + }, + "advanced_query": { + "value": "created:>2023-01-01", + "type": "string", + "required": false + }, + "per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "auto_accept_matches": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListProjects", + "qualifiedName": "Github.ListProjects", + "fullyQualifiedName": "Github.ListProjects@2.0.1", + "description": "List Projects V2 across organization or user scopes.", + "parameters": [ + { + "name": "search_mode", + "type": "string", + "required": true, + "description": "Select search by number or name", + "enum": ["number", "name"], + "inferrable": true + }, + { + "name": "scope_target", + "type": "string", + "required": true, + "description": "Where the project lives", + "enum": ["all", "organization", "user"], + "inferrable": true + }, + { + "name": "scope_identifier", + "type": "string", + "required": true, + "description": "Owner reference (org name or username)", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project number or title", + "enum": null, + "inferrable": true + }, + { + "name": "query_filter", + "type": "string", + "required": false, + "description": "Filter projects (e.g., 'template')", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "Project state filter", + "enum": ["open", "closed", "all"], + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "Items per page (max 100). Default is 30.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor", + "type": "string", + "required": false, + "description": "Cursor for next page", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 0.9 confidence. Default is False", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Projects with summary and pagination" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ListProjects", + "parameters": { + "search_mode": { + "value": "name", + "type": "string", + "required": true + }, + "scope_target": { + "value": "org", + "type": "string", + "required": true + }, + "scope_identifier": { + "value": "example-org", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "Project Alpha", + "type": "string", + "required": false + }, + "query_filter": { + "value": "template", + "type": "string", + "required": false + }, + "state": { + "value": "open", + "type": "string", + "required": false + }, + "per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPullRequestCommits", + "qualifiedName": "Github.ListPullRequestCommits", + "fullyQualifiedName": "Github.ListPullRequestCommits@2.0.1", + "description": "List commits (from oldest to newest) on a pull request in a GitHub repository.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_number", + "type": "integer", + "required": true, + "description": "The number that identifies the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "The number of results per page (max 100). Default is 30.", + "enum": null, + "inferrable": true + }, + { + "name": "page", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch. Default is 1.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "List of commits on the pull request" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ListPullRequestCommits", + "parameters": { + "owner": { + "value": "exampleOwner", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "pull_number": { + "value": 42, + "type": "integer", + "required": true + }, + "per_page": { + "value": 30, + "type": "integer", + "required": false + }, + "page": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPullRequests", + "qualifiedName": "Github.ListPullRequests", + "fullyQualifiedName": "Github.ListPullRequests@2.0.1", + "description": "List pull requests in a GitHub repository.\n\nBy default returns newest pull requests first (direction=DESC).", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "The state of the pull requests to return. Default is open.", + "enum": ["open", "closed", "all"], + "inferrable": true + }, + { + "name": "head", + "type": "string", + "required": false, + "description": "Filter pulls by head user or head organization and branch name in the format of user:ref-name or organization:ref-name.", + "enum": null, + "inferrable": true + }, + { + "name": "base", + "type": "string", + "required": false, + "description": "Filter pulls by base branch name. Default is main.", + "enum": null, + "inferrable": true + }, + { + "name": "sort", + "type": "string", + "required": false, + "description": "The property to sort the results by.", + "enum": ["created", "updated", "popularity", "long-running"], + "inferrable": true + }, + { + "name": "direction", + "type": "string", + "required": false, + "description": "The direction of the sort.", + "enum": ["asc", "desc"], + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "The number of results per page (max 100). Default is 30.", + "enum": null, + "inferrable": true + }, + { + "name": "page", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch. Default is 1.", + "enum": null, + "inferrable": true + }, + { + "name": "search_org_wide", + "type": "boolean", + "required": false, + "description": "Search across all organization repositories instead of just one repository. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "List of pull requests" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ListPullRequests", + "parameters": { + "owner": { + "value": "octocat", + "type": "string", + "required": true + }, + "repo": { + "value": "Hello-World", + "type": "string", + "required": true + }, + "state": { + "value": "open", + "type": "string", + "required": false + }, + "head": { + "value": "octocat:feature-branch", + "type": "string", + "required": false + }, + "base": { + "value": "main", + "type": "string", + "required": false + }, + "sort": { + "value": "created", + "type": "string", + "required": false + }, + "direction": { + "value": "DESC", + "type": "string", + "required": false + }, + "per_page": { + "value": 30, + "type": "integer", + "required": false + }, + "page": { + "value": 1, + "type": "integer", + "required": false + }, + "search_org_wide": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepositoryActivities", + "qualifiedName": "Github.ListRepositoryActivities", + "fullyQualifiedName": "Github.ListRepositoryActivities@2.0.1", + "description": "List repository activities.\n\nRetrieves a detailed history of changes to a repository, such as pushes, merges,\nforce pushes, and branch changes, and associates these changes with commits and users.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "direction", + "type": "string", + "required": false, + "description": "The direction to sort the results by. Default is desc.", + "enum": ["asc", "desc"], + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "The number of results per page (max 100). Default is 30.", + "enum": null, + "inferrable": true + }, + { + "name": "before", + "type": "string", + "required": false, + "description": "A cursor (unique ID, e.g., a SHA of a commit) to search for results before this cursor.", + "enum": null, + "inferrable": true + }, + { + "name": "after", + "type": "string", + "required": false, + "description": "A cursor (unique ID, e.g., a SHA of a commit) to search for results after this cursor.", + "enum": null, + "inferrable": true + }, + { + "name": "ref", + "type": "string", + "required": false, + "description": "The Git reference for the activities you want to list. The ref for a branch can be formatted either as refs/heads/BRANCH_NAME or BRANCH_NAME, where BRANCH_NAME is the name of your branch.", + "enum": null, + "inferrable": true + }, + { + "name": "actor", + "type": "string", + "required": false, + "description": "The GitHub username to filter by the actor who performed the activity.", + "enum": null, + "inferrable": true + }, + { + "name": "time_period", + "type": "string", + "required": false, + "description": "The time period to filter by.", + "enum": ["day", "week", "month", "quarter", "year"], + "inferrable": true + }, + { + "name": "activity_type", + "type": "string", + "required": false, + "description": "The activity type to filter by.", + "enum": [ + "push", + "force_push", + "branch_creation", + "branch_deletion", + "pr_merge", + "merge_queue_merge" + ], + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "List of repository activities" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ListRepositoryActivities", + "parameters": { + "owner": { + "value": "exampleOwner", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "direction": { + "value": "asc", + "type": "string", + "required": false + }, + "per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "before": { + "value": "abc123", + "type": "string", + "required": false + }, + "after": { + "value": "def456", + "type": "string", + "required": false + }, + "ref": { + "value": "refs/heads/main", + "type": "string", + "required": false + }, + "actor": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "time_period": { + "value": "last_month", + "type": "string", + "required": false + }, + "activity_type": { + "value": "push", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepositoryCollaborators", + "qualifiedName": "Github.ListRepositoryCollaborators", + "fullyQualifiedName": "Github.ListRepositoryCollaborators@2.0.1", + "description": "List collaborators for a repository.\n\nReturns users who have access to the repository and can be requested as reviewers\nfor pull requests. Useful for discovering who can review your PR.\n\nDetail levels:\n- basic: Only explicit collaborators (fast, minimal API calls)\n- include_org_members: Add all org members (default, moderate API calls)\n- full_profiles: Add org members + enrich with names/emails (slow, many API calls)", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension.", + "enum": null, + "inferrable": true + }, + { + "name": "affiliation", + "type": "string", + "required": false, + "description": "Filter by affiliation type. Default is all.", + "enum": ["outside", "direct", "all"], + "inferrable": true + }, + { + "name": "permission", + "type": "string", + "required": false, + "description": "Filter by permission level. Default returns all permission levels.", + "enum": ["pull", "triage", "push", "maintain", "admin"], + "inferrable": true + }, + { + "name": "detail_level", + "type": "string", + "required": false, + "description": "Detail level to include when listing collaborators. Default is include_org_members.", + "enum": ["basic", "include_org_members", "full_profiles"], + "inferrable": true + }, + { + "name": "include_teams", + "type": "boolean", + "required": false, + "description": "Include teams that have access to the repository. Teams can be requested as reviewers using their slug. Default is True.", + "enum": null, + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "Number of collaborators per page (max 100). Default is 30.", + "enum": null, + "inferrable": true + }, + { + "name": "page", + "type": "integer", + "required": false, + "description": "Page number of results to fetch. Default is 1.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "List of repository collaborators and teams who can review PRs" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ListRepositoryCollaborators", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "affiliation": { + "value": "all", + "type": "string", + "required": false + }, + "permission": { + "value": "write", + "type": "string", + "required": false + }, + "detail_level": { + "value": "basic", + "type": "string", + "required": false + }, + "include_teams": { + "value": true, + "type": "boolean", + "required": false + }, + "per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "page": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepositoryLabels", + "qualifiedName": "Github.ListRepositoryLabels", + "fullyQualifiedName": "Github.ListRepositoryLabels@2.0.1", + "description": "List all labels defined in a repository.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "The number of results per page (max 100). Default is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "page", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch. Default is 1.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "List of repository labels" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ListRepositoryLabels", + "parameters": { + "owner": { + "value": "exampleOwner", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "page": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListReviewCommentsInARepository", + "qualifiedName": "Github.ListReviewCommentsInARepository", + "fullyQualifiedName": "Github.ListReviewCommentsInARepository@2.0.1", + "description": "List review comments in a GitHub repository.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "sort", + "type": "string", + "required": false, + "description": "The property to sort the results by. Default is created.", + "enum": ["created", "updated"], + "inferrable": true + }, + { + "name": "direction", + "type": "string", + "required": false, + "description": "The direction to sort results. Ignored without sort parameter. Default is desc.", + "enum": ["asc", "desc"], + "inferrable": true + }, + { + "name": "since", + "type": "string", + "required": false, + "description": "Only show results updated after this time. Supports: relative dates ('today', 'yesterday', 'last_week', 'last_30_days'), ISO 8601 ('2025-11-10T00:00:00Z'), or simple dates ('2025-11-10').", + "enum": null, + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "The number of results per page (max 100). Default is 30.", + "enum": null, + "inferrable": true + }, + { + "name": "page", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch. Default is 1.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "List of review comments in the repository" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ListReviewCommentsInARepository", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "sort": { + "value": "created", + "type": "string", + "required": false + }, + "direction": { + "value": "asc", + "type": "string", + "required": false + }, + "since": { + "value": "last_week", + "type": "string", + "required": false + }, + "per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "page": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListReviewCommentsOnPullRequest", + "qualifiedName": "Github.ListReviewCommentsOnPullRequest", + "fullyQualifiedName": "Github.ListReviewCommentsOnPullRequest@2.0.1", + "description": "List review comments on a pull request in a GitHub repository.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_number", + "type": "integer", + "required": true, + "description": "The number that identifies the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "sort", + "type": "string", + "required": false, + "description": "The property to sort the results by. Default is created.", + "enum": ["created", "updated"], + "inferrable": true + }, + { + "name": "direction", + "type": "string", + "required": false, + "description": "The direction to sort results. Default is desc.", + "enum": ["asc", "desc"], + "inferrable": true + }, + { + "name": "since", + "type": "string", + "required": false, + "description": "Only show results updated after this time. Supports: relative dates ('today', 'yesterday', 'last_week', 'last_30_days'), ISO 8601 ('2025-11-10T00:00:00Z'), or simple dates ('2025-11-10').", + "enum": null, + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "The number of results per page (max 100). Default is 30.", + "enum": null, + "inferrable": true + }, + { + "name": "page", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch. Default is 1.", + "enum": null, + "inferrable": true + }, + { + "name": "show_resolved", + "type": "boolean", + "required": false, + "description": "Filter by resolution status. True=resolved only, False=unresolved only, None=all. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "List of review comments on the pull request" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ListReviewCommentsOnPullRequest", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "pull_number": { + "value": 42, + "type": "integer", + "required": true + }, + "sort": { + "value": "created", + "type": "string", + "required": false + }, + "direction": { + "value": "desc", + "type": "string", + "required": false + }, + "since": { + "value": "last_30_days", + "type": "string", + "required": false + }, + "per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "page": { + "value": 2, + "type": "integer", + "required": false + }, + "show_resolved": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListStargazers", + "qualifiedName": "Github.ListStargazers", + "fullyQualifiedName": "Github.ListStargazers@2.0.1", + "description": "List the stargazers for a GitHub repository.\n\nReturns stargazers in chronological order (oldest first).", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The owner of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "page", + "type": "integer", + "required": false, + "description": "The page number of the stargazers to fetch. Default is 1.", + "enum": null, + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "The number of stargazers per page (max 100). Default is 30.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "List of stargazers for the repository" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ListStargazers", + "parameters": { + "owner": { + "value": "octocat", + "type": "string", + "required": true + }, + "repo": { + "value": "Hello-World", + "type": "string", + "required": true + }, + "page": { + "value": 1, + "type": "integer", + "required": false + }, + "per_page": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageLabels", + "qualifiedName": "Github.ManageLabels", + "fullyQualifiedName": "Github.ManageLabels@2.0.1", + "description": "Add or remove labels from an issue or pull request.\n\nSupports fuzzy matching for typo tolerance. Both issues and pull requests\nsupport labels through the same API. You can add and remove labels in a\nsingle operation.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension.", + "enum": null, + "inferrable": true + }, + { + "name": "number", + "type": "integer", + "required": true, + "description": "The number that identifies the issue or pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "entity_type", + "type": "string", + "required": true, + "description": "The type of entity (issue or pull_request).", + "enum": ["issue", "pull_request"], + "inferrable": true + }, + { + "name": "add_labels", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of label names to add. Supports fuzzy matching for typo tolerance.", + "enum": null, + "inferrable": true + }, + { + "name": "remove_labels", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of label names to remove. Supports fuzzy matching for typo tolerance.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 0.9 confidence. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Label management operation result" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ManageLabels", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "number": { + "value": 42, + "type": "integer", + "required": true + }, + "entity_type": { + "value": "issue", + "type": "string", + "required": true + }, + "add_labels": { + "value": ["bug", "enhancement"], + "type": "array", + "required": false + }, + "remove_labels": { + "value": ["wip"], + "type": "array", + "required": false + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManagePullRequestReviewers", + "qualifiedName": "Github.ManagePullRequestReviewers", + "fullyQualifiedName": "Github.ManagePullRequestReviewers@2.0.1", + "description": "Manage reviewers for a pull request.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The number that identifies the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "add_reviewers", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of user logins to add as reviewers.", + "enum": null, + "inferrable": true + }, + { + "name": "add_team_reviewers", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of team slugs to add as reviewers.", + "enum": null, + "inferrable": true + }, + { + "name": "remove_reviewers", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of user logins to remove as reviewers.", + "enum": null, + "inferrable": true + }, + { + "name": "remove_team_reviewers", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of team slugs to remove as reviewers.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Updated reviewers information" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ManagePullRequestReviewers", + "parameters": { + "owner": { + "value": "exampleOwner", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "add_reviewers": { + "value": ["user1", "user2"], + "type": "array", + "required": false + }, + "add_team_reviewers": { + "value": ["teamA"], + "type": "array", + "required": false + }, + "remove_reviewers": { + "value": ["user3"], + "type": "array", + "required": false + }, + "remove_team_reviewers": { + "value": ["teamB"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MergePullRequest", + "qualifiedName": "Github.MergePullRequest", + "fullyQualifiedName": "Github.MergePullRequest@2.0.1", + "description": "Merge a pull request in a GitHub repository.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The number that identifies the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "merge_method", + "type": "string", + "required": false, + "description": "The merge method to use. Default is merge.", + "enum": ["merge", "squash", "rebase"], + "inferrable": true + }, + { + "name": "commit_title", + "type": "string", + "required": false, + "description": "Title for the merge commit.", + "enum": null, + "inferrable": true + }, + { + "name": "commit_message", + "type": "string", + "required": false, + "description": "Extra detail for the merge commit message.", + "enum": null, + "inferrable": true + }, + { + "name": "sha", + "type": "string", + "required": false, + "description": "Expected head SHA to ensure merge safety. Merge fails if SHA doesn't match.", + "enum": null, + "inferrable": true + }, + { + "name": "delete_branch", + "type": "boolean", + "required": false, + "description": "Delete the head branch after successful merge. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Merge operation status and details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.MergePullRequest", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "example-repo", + "type": "string", + "required": true + }, + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "merge_method": { + "value": "squash", + "type": "string", + "required": false + }, + "commit_title": { + "value": "Merge pull request #42", + "type": "string", + "required": false + }, + "commit_message": { + "value": "This merge includes changes from feature branch.", + "type": "string", + "required": false + }, + "sha": { + "value": "abc123def456ghi789jkl", + "type": "string", + "required": false + }, + "delete_branch": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResolveReviewThread", + "qualifiedName": "Github.ResolveReviewThread", + "fullyQualifiedName": "Github.ResolveReviewThread@2.0.1", + "description": "Resolve or unresolve a pull request review conversation thread.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "thread_id", + "type": "string", + "required": true, + "description": "The GraphQL Node ID of the review thread.", + "enum": null, + "inferrable": true + }, + { + "name": "resolved", + "type": "boolean", + "required": false, + "description": "Whether to resolve or unresolve the thread. Default is True.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Thread resolution result" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.ResolveReviewThread", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "thread_id": { + "value": "MDU6UmVmcm93VGhyZWFkMTUyMzY3ODU6UkVTRU5U", + "type": "string", + "required": true + }, + "resolved": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchMyRepos", + "qualifiedName": "Github.SearchMyRepos", + "fullyQualifiedName": "Github.SearchMyRepos@2.0.1", + "description": "Search repositories accessible to the authenticated user with fuzzy matching.", + "parameters": [ + { + "name": "repo_name", + "type": "string", + "required": true, + "description": "Repository name or partial name to search for", + "enum": null, + "inferrable": true + }, + { + "name": "scope", + "type": "string", + "required": false, + "description": "Where to search. Default is all.", + "enum": ["all", "personal", "organization"], + "inferrable": true + }, + { + "name": "organization", + "type": "string", + "required": false, + "description": "Organization name when scope is 'organization'. If omitted, searches all of your organizations.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 0.9 confidence. Default is False", + "enum": null, + "inferrable": true + }, + { + "name": "include_recent_branches", + "type": "integer", + "required": false, + "description": "Include up to this many recent branches per repository (0 disables, default 10, max 30).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Fuzzy repository search results" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.SearchMyRepos", + "parameters": { + "repo_name": { + "value": "my-awesome-repo", + "type": "string", + "required": true + }, + "scope": { + "value": "all", + "type": "string", + "required": false + }, + "organization": { + "value": "my-org", + "type": "string", + "required": false + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + }, + "include_recent_branches": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchProjectItem", + "qualifiedName": "Github.SearchProjectItem", + "fullyQualifiedName": "Github.SearchProjectItem@2.0.1", + "description": "Search for a specific item in a Projects V2 project.", + "parameters": [ + { + "name": "project_search_mode", + "type": "string", + "required": true, + "description": "Select project lookup by number or name", + "enum": ["number", "name"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project number or title", + "enum": null, + "inferrable": true + }, + { + "name": "item_search_mode", + "type": "string", + "required": true, + "description": "Select item lookup by ID or title", + "enum": ["id", "title"], + "inferrable": true + }, + { + "name": "item_identifier", + "type": "string", + "required": true, + "description": "Item ID or title", + "enum": null, + "inferrable": true + }, + { + "name": "scope_target", + "type": "string", + "required": true, + "description": "Where the project lives", + "enum": ["all", "organization", "user"], + "inferrable": true + }, + { + "name": "scope_identifier", + "type": "string", + "required": true, + "description": "Owner reference", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 0.9 confidence. Default is False", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Single item or suggestions" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.SearchProjectItem", + "parameters": { + "project_search_mode": { + "value": "name", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "Project Alpha", + "type": "string", + "required": true + }, + "item_search_mode": { + "value": "ID", + "type": "string", + "required": true + }, + "item_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "scope_target": { + "value": "repository", + "type": "string", + "required": true + }, + "scope_identifier": { + "value": "owner/repo", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetStarred", + "qualifiedName": "Github.SetStarred", + "fullyQualifiedName": "Github.SetStarred@2.0.1", + "description": "Star or un-star a GitHub repository.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The owner of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "name", + "type": "string", + "required": true, + "description": "The name of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "starred", + "type": "boolean", + "required": false, + "description": "Whether to star the repository or not. Default is True.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Result of starring/unstarring operation" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.SetStarred", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "name": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "starred": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SubmitPullRequestReview", + "qualifiedName": "Github.SubmitPullRequestReview", + "fullyQualifiedName": "Github.SubmitPullRequestReview@2.0.1", + "description": "Submit a review for a pull request.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The number that identifies the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "event", + "type": "string", + "required": true, + "description": "The review action to perform.", + "enum": ["APPROVE", "REQUEST_CHANGES", "COMMENT"], + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "The body text of the review. Required when event is REQUEST_CHANGES or COMMENT.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Submitted review details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.SubmitPullRequestReview", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "event": { + "value": "APPROVE", + "type": "string", + "required": true + }, + "body": { + "value": "Looks good to me!", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateFileLines", + "qualifiedName": "Github.UpdateFileLines", + "fullyQualifiedName": "Github.UpdateFileLines@2.0.1", + "description": "Replace a block of lines within a file (1-indexed, inclusive). Set mode=FileUpdateMode.APPEND\nto add new content to the end of the file.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension.", + "enum": null, + "inferrable": true + }, + { + "name": "path", + "type": "string", + "required": true, + "description": "The content path.", + "enum": null, + "inferrable": true + }, + { + "name": "branch", + "type": "string", + "required": true, + "description": "The branch to update.", + "enum": null, + "inferrable": true + }, + { + "name": "new_content", + "type": "string", + "required": true, + "description": "The replacement lines (no need to include trailing newline).", + "enum": null, + "inferrable": true + }, + { + "name": "message", + "type": "string", + "required": true, + "description": "The commit message describing the change.", + "enum": null, + "inferrable": true + }, + { + "name": "start_line", + "type": "integer", + "required": false, + "description": "First line to replace (1-indexed). Required when mode is FileUpdateMode.REPLACE; ignored when mode is FileUpdateMode.APPEND.", + "enum": null, + "inferrable": true + }, + { + "name": "end_line", + "type": "integer", + "required": false, + "description": "Last line to replace (1-indexed, inclusive). Required when mode is FileUpdateMode.REPLACE; ignored when mode is FileUpdateMode.APPEND.", + "enum": null, + "inferrable": true + }, + { + "name": "mode", + "type": "string", + "required": false, + "description": "How to apply the change. Default is FileUpdateMode.REPLACE", + "enum": ["replace", "append"], + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Partial file update result" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.UpdateFileLines", + "parameters": { + "owner": { + "value": "exampleOwner", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "path": { + "value": "path/to/file.txt", + "type": "string", + "required": true + }, + "branch": { + "value": "main", + "type": "string", + "required": true + }, + "new_content": { + "value": "This is the new content to append.", + "type": "string", + "required": true + }, + "message": { + "value": "Update file to append new content.", + "type": "string", + "required": true + }, + "start_line": { + "value": null, + "type": "integer", + "required": false + }, + "end_line": { + "value": null, + "type": "integer", + "required": false + }, + "mode": { + "value": "FileUpdateMode.APPEND", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateIssue", + "qualifiedName": "Github.UpdateIssue", + "fullyQualifiedName": "Github.UpdateIssue@2.0.1", + "description": "Update an issue in a GitHub repository.\n\nParameters that are not provided (None) will not be updated or cleared.\nUpdates apply to the issue in the repository. If the issue is in a project,\nthe project item will automatically reflect these changes.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "issue_number", + "type": "integer", + "required": true, + "description": "The number that identifies the issue", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": false, + "description": "The new title. Not provided = unchanged.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "The new contents. Not provided = unchanged.", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "State of the issue. Not provided = unchanged.", + "enum": ["open", "closed", "all"], + "inferrable": true + }, + { + "name": "labels", + "type": "array", + "innerType": "string", + "required": false, + "description": "Labels to set (replaces existing). Not provided = unchanged.", + "enum": null, + "inferrable": true + }, + { + "name": "assignees", + "type": "array", + "innerType": "string", + "required": false, + "description": "Assignees to set (replaces existing). Not provided = unchanged.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone", + "type": "integer", + "required": false, + "description": "Milestone number. Not provided = unchanged.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Updated issue details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.UpdateIssue", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "issue_number": { + "value": 42, + "type": "integer", + "required": true + }, + "title": { + "value": "Updated Issue Title", + "type": "string", + "required": false + }, + "body": { + "value": "This is the updated description of the issue.", + "type": "string", + "required": false + }, + "state": { + "value": "open", + "type": "string", + "required": false + }, + "labels": { + "value": ["bug", "urgent"], + "type": "array", + "required": false + }, + "assignees": { + "value": ["username1", "username2"], + "type": "array", + "required": false + }, + "milestone": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePullRequest", + "qualifiedName": "Github.UpdatePullRequest", + "fullyQualifiedName": "Github.UpdatePullRequest@2.0.1", + "description": "Update a pull request in a GitHub repository.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository without the .git extension. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_number", + "type": "integer", + "required": true, + "description": "The number that identifies the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": false, + "description": "The title of the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "The contents of the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "append_body", + "type": "boolean", + "required": false, + "description": "If True, append to existing body instead of replacing it. Default is False.", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "State of this Pull Request.", + "enum": ["open", "closed", "all"], + "inferrable": true + }, + { + "name": "base", + "type": "string", + "required": false, + "description": "The name of the branch you want your changes pulled into.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Updated pull request details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.UpdatePullRequest", + "parameters": { + "owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "repo": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "pull_number": { + "value": 42, + "type": "integer", + "required": true + }, + "title": { + "value": "Update for Feature X", + "type": "string", + "required": false + }, + "body": { + "value": "This pull request addresses the implementation of Feature X.", + "type": "string", + "required": false + }, + "append_body": { + "value": false, + "type": "boolean", + "required": false + }, + "state": { + "value": "open", + "type": "string", + "required": false + }, + "base": { + "value": "main", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "Github.WhoAmI", + "fullyQualifiedName": "Github.WhoAmI@2.0.1", + "description": "Get information about the authenticated GitHub user.\n\nReturns profile, organizations, and teams.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GITHUB_SERVER_URL"], + "secretsInfo": [ + { + "name": "GITHUB_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "User profile with organizations and teams" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "warning", + "location": "description", + "position": "after", + "content": "\n **Critical**: This MCP Server is built for **GitHub Apps**, not OAuth Apps.\n \n You **must** create a GitHub App (not an OAuth App) to use this server properly. \n \n 👉 [Complete GitHub App Setup Guide](/references/auth-providers/github)\n" + }, + { + "type": "info", + "location": "description", + "position": "after", + "content": "\n **Configuration Required**: All tools require secrets to be configured in Arcade Dashboard. See [Secrets Setup](#secrets-setup) below.\n" + }, + { + "type": "info", + "location": "before_available_tools", + "position": "after", + "content": "## GitHub Enterprise Support\n\n\n This MCP Server fully supports **GitHub Enterprise Server 2.22+**\n\n\n**Default Configuration:**\n- If no `GITHUB_SERVER_URL` is configured, the default is `https://api.github.com` (GitHub.com)\n- All tools work with GitHub.com out of the box\n\n**For GitHub Enterprise Server:**\n\n1. Create your GitHub App on your Enterprise instance (not github.com)\n2. Configure the `GITHUB_SERVER_URL` secret in Arcade Dashboard (see [Secrets Setup](#secrets-setup) below)\n3. Use your Enterprise server's API endpoint\n\n**Example Enterprise Server URLs:**\n- `https://github.yourcompany.com/api/v3`\n- `https://enterprise.yourorg.com/api/v3`\n- `https://git.company.internal/api/v3`\n\n\n **Note**: GitHub Enterprise Server uses the `/api/v3` path after the hostname. GitHub.com uses `https://api.github.com` (no `/api/v3` suffix).\n\n\n---", + "header": "## GitHub Enterprise Support" + }, + { + "type": "section", + "location": "before_available_tools", + "position": "after", + "content": "## GitHub App Permissions Summary\n\nWhen creating your GitHub App, you'll need to grant specific permissions. Here's a quick reference of which tools require which permissions:\n\n### Repository Permissions\n\n| Permission | Level | Required For |\n|------------|-------|--------------|\n| **Contents** | Read | All repository and pull request tools, getting file contents |\n| **Contents** | Write | Creating/updating files, creating branches, merging PRs |\n| **Issues** | Read & Write | Issue management, PR assignments, managing labels (Issues) |\n| **Pull requests** | Read & Write | Pull request management, reviews, managing labels (PRs) |\n| **Metadata** | Read | All tools (automatically granted) |\n| **Statuses** | Read | `CheckPullRequestMergeStatus` |\n\n### Organization Permissions\n\n| Permission | Level | Required For |\n|------------|-------|--------------|\n| **Members** | Read | Projects, collaborators, org repos, user search |\n| **Projects** | Read & Write | All Projects V2 tools |\n\n### User Permissions\n\n| Permission | Level | Required For |\n|------------|-------|--------------|\n| **Read user profile** | Read | User context tools, review workload |\n| **Act on behalf of user** | Enabled | `SetStarred` (starring repositories) |\n\n### Tools by Permission Requirements\n\n
\nBasic Repository Access (Contents Read + Metadata)\n\n- `GetRepository`\n- `CountStargazers`\n- `ListStargazers`\n- `ListRepositoryActivities`\n- `GetFileContents`\n\n
\n\n
\nRepository Write (Contents Write + Metadata)\n\n- `CreateBranch`\n- `CreateOrUpdateFile`\n- `UpdateFileLines`\n\n
\n\n
\nIssue Management (Contents Read + Issues + Metadata)\n\n- `CreateIssue`\n- `UpdateIssue`\n- `GetIssue`\n- `ListIssues`\n- `CreateIssueComment`\n- `ListRepositoryLabels`\n- `ManageLabels` (for issues)\n\n
\n\n
\nPull Request Read (Contents + Pull requests Read + Metadata)\n\n- `ListPullRequests`\n- `GetPullRequest`\n- `ListPullRequestCommits`\n- `ListReviewCommentsOnPullRequest`\n- `CheckPullRequestMergeStatus` (+ Statuses)\n\n
\n\n
\nPull Request Write (Contents Read + Pull requests Write + Metadata)\n\n- `UpdatePullRequest`\n- `CreatePullRequest`\n- `SubmitPullRequestReview`\n- `ManagePullRequest`\n- `ManagePullRequestReviewers`\n- `CreateReviewComment`\n- `CreateReplyForReviewComment`\n- `ResolveReviewThread`\n- `ManageLabels` (for pull requests)\n- `MergePullRequest` (+ Contents Write)\n\n
\n\n
\nOrganization Tools (Contents + Metadata + Members)\n\n- `ListOrgRepositories`\n- `SearchMyRepos`\n- `ListRepositoryCollaborators`\n- `AssignPullRequestUser` (+ Issues Write)\n\n
\n\n
\nProjects V2 (Contents + Metadata + Projects + Members)\n\n- `ListProjects`\n- `ListProjectItems`\n- `SearchProjectItem`\n- `ListProjectFields`\n- `UpdateProjectItem` (Projects Write)\n\n
\n\n
\nUser Context (Contents + Metadata + Read user profile)\n\n- `WhoAmI` (+ Members)\n- `GetUserRecentActivity`\n- `GetUserOpenItems`\n- `GetReviewWorkload` (+ Pull requests Read)\n\n
\n\n
\n⚠️ Special: Notifications (Requires Classic PAT)\n\n- `GetNotificationSummary`\n- `ListNotifications`\n\n**Note**: GitHub Apps cannot access notifications API. Requires classic Personal Access Token with `notifications` scope.\n\n
\n\n---", + "header": "## GitHub App Permissions Summary" + }, + { + "type": "warning", + "location": "custom_section", + "position": "after", + "content": "## Configuration & Setup\n\n### Authentication\n\n\n **Critical**: This MCP Server uses **GitHub Apps** authentication, not OAuth Apps.\n \n You **must** create a GitHub App to use this server. OAuth Apps are not supported.\n\n\nThe Arcade GitHub MCP Server uses the [GitHub auth provider](/references/auth-providers/github) to connect to users' GitHub accounts.\n\n**For Arcade Cloud:**\n- No configuration needed\n- Your users will see `Arcade` as the requesting application\n- All tools work out of the box\n\n**For Self-Hosted:**\n- You must [create your own GitHub App](/references/auth-providers/github#creating-a-github-app)\n- [Configure the GitHub auth provider](/references/auth-providers/github#configuring-github-auth-in-arcade) with your app credentials\n- Your users will see your application name\n\n\n **New to GitHub Apps?** Read [Why Arcade Uses GitHub Apps](/references/auth-providers/github#why-arcade-uses-github-apps-not-oauth-apps) \n to understand the security and compliance benefits.\n\n\n### Secrets Setup\n\nAll tools require secrets to be configured in Arcade Dashboard.\n\n**Steps:**\n\n1. Go to [Arcade Dashboard](https://api.arcade.dev/dashboard)\n2. Navigate to **Secrets** in the left sidebar\n3. Click **Add Secret**\n4. Add the following secrets:\n\n| Secret Name | Value | Required For |\n|-------------|-------|--------------|\n| `GITHUB_SERVER_URL` | `https://api.github.com` (default for GitHub.com) | All tools |\n| `GITHUB_CLASSIC_PERSONAL_ACCESS_TOKEN` | Classic PAT with `notifications` scope | Notifications tools only |\n\n\n **Default**: If `GITHUB_SERVER_URL` is not configured, it defaults to `https://api.github.com` (GitHub.com)\n \n **GitHub Enterprise Users**: Set `GITHUB_SERVER_URL` to your Enterprise server's API endpoint (e.g., `https://github.yourcompany.com/api/v3`). Note that Enterprise uses `/api/v3` path. See [GitHub Enterprise Support](#github-enterprise-support) for details.\n\n\n\n **For Notifications Tools**: Create a classic Personal Access Token at [github.com/settings/tokens](https://github.com/settings/tokens) with only the `notifications` scope checked. GitHub Apps cannot access the notifications API.\n\n\n---", + "header": "## Configuration & Setup" + } + ], + "customImports": ["import { Callout, Tabs } from \"nextra/components\";"], + "subPages": [], + "generatedAt": "2026-01-26T17:29:58.407Z", + "summary": "# Arcade Toolkit for GitHub\n\nThe Arcade Toolkit provides a suite of LLM tools designed to streamline interaction with GitHub, enabling developers to automate and enhance their workflows effectively.\n\n## Capabilities\n- Automate pull request and issue management, enabling seamless collaboration.\n- Create, update, and delete files and branches within repositories.\n- Retrieve detailed information about repositories, pull requests, and issues.\n- Efficiently search and manage collaborators and labels across repositories.\n\n## OAuth\n- **Provider**: GitHub\n- **Scopes**: None required.\n\n## Secrets\n- **Types**: webhook_secret, api_key, token.\n- **Examples**: GITHUB_SERVER_URL, GITHUB_CLASSIC_PERSONAL_ACCESS_TOKEN." +} diff --git a/data/toolkits/githubapi.json b/data/toolkits/githubapi.json new file mode 100644 index 000000000..c9f746fe5 --- /dev/null +++ b/data/toolkits/githubapi.json @@ -0,0 +1,63127 @@ +{ + "id": "GithubApi", + "label": "GitHub API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the GitHub API.", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/github.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/github-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "github", + "allScopes": [] + }, + "tools": [ + { + "name": "AcceptGithubRepoInvitation", + "qualifiedName": "GithubApi.AcceptGithubRepoInvitation", + "fullyQualifiedName": "GithubApi.AcceptGithubRepoInvitation@1.0.0", + "description": "Accept a GitHub repository invitation.\n\nThis tool accepts an invitation to join a GitHub repository for the authenticated user. Use it when you need to confirm participation in a repo after receiving an invitation.", + "parameters": [ + { + "name": "invitation_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub invitation to be accepted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/accept-invitation-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AcceptGithubRepoInvitation", + "parameters": { + "invitation_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddAppAccessRestrictions", + "qualifiedName": "GithubApi.AddAppAccessRestrictions", + "fullyQualifiedName": "GithubApi.AddAppAccessRestrictions@1.0.0", + "description": "Grant specified apps push access to a protected branch.\n\n Use this tool to grant specific GitHub Apps push access to protected branches in repositories. Apps must have 'write' access to 'contents' to be authorized.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The repository account owner. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository. This is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The name of the branch to grant push access. Cannot contain wildcard characters. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/add-app-access-restrictions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddAppAccessRestrictions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"app_ids\":[\"123\",\"456\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddCustomLabelsToRunner", + "qualifiedName": "GithubApi.AddCustomLabelsToRunner", + "fullyQualifiedName": "GithubApi.AddCustomLabelsToRunner@1.0.0", + "description": "Add custom labels to a self-hosted runner in an enterprise.\n\nUse this tool to attach custom labels to a self-hosted runner within an enterprise on GitHub. Requires authentication with a token that has the `manage_runners:enterprise` scope.", + "parameters": [ + { + "name": "custom_labels", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of names for the custom labels to add to the self-hosted runner.", + "enum": null, + "inferrable": true + }, + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise for the self-hosted runner. It identifies the enterprise name or ID in GitHub.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_unique_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier for the self-hosted runner.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/add-custom-labels-to-self-hosted-runner-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddCustomLabelsToRunner", + "parameters": { + "custom_labels": { + "value": ["linux", "high-memory", "gpu"], + "type": "array", + "required": true + }, + "enterprise_identifier": { + "value": "my_enterprise", + "type": "string", + "required": true + }, + "runner_unique_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddEmailToGithubAccount", + "qualifiedName": "GithubApi.AddEmailToGithubAccount", + "fullyQualifiedName": "GithubApi.AddEmailToGithubAccount@1.0.0", + "description": "Add a new email to the authenticated GitHub user's account.\n\nUse this tool to add an email address to the authenticated GitHub account of the user. This action requires user scope authentication.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/add-email-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddEmailToGithubAccount", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"email\":\"newemail@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddGithubAuthorizedSshKey", + "qualifiedName": "GithubApi.AddGithubAuthorizedSshKey", + "fullyQualifiedName": "GithubApi.AddGithubAuthorizedSshKey@1.0.0", + "description": "Add an authorized SSH key to GitHub Enterprise.\n\nThis tool adds an authorized SSH key to a GitHub Enterprise account. It is useful when you want to securely access your GitHub repositories using SSH. Make sure to provide the SSH key in the required format.", + "parameters": [ + { + "name": "public_ssh_key", + "type": "string", + "required": true, + "description": "The public SSH key to add to GitHub Enterprise. Ensure it is in the correct format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/add-authorized-ssh-key'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddGithubAuthorizedSshKey", + "parameters": { + "public_ssh_key": { + "value": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEArD6h... user@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddGithubReleaseReaction", + "qualifiedName": "GithubApi.AddGithubReleaseReaction", + "fullyQualifiedName": "GithubApi.AddGithubReleaseReaction@1.0.0", + "description": "Add a reaction to a GitHub release.\n\nUse this tool to create a reaction to a specific release on GitHub. If a reaction already exists, it will return a confirmation with status 200 OK.", + "parameters": [ + { + "name": "reaction_type", + "type": "string", + "required": true, + "description": "The reaction type for the release, e.g., '+1', 'laugh', 'heart'. Choose from '+1', 'laugh', 'heart', 'hooray', 'rocket', 'eyes'.", + "enum": null, + "inferrable": true + }, + { + "name": "release_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub release to which the reaction will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository on GitHub. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/create-for-release'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddGithubReleaseReaction", + "parameters": { + "reaction_type": { + "value": "heart", + "type": "string", + "required": true + }, + "release_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddGpgKeyToGithub", + "qualifiedName": "GithubApi.AddGpgKeyToGithub", + "fullyQualifiedName": "GithubApi.AddGpgKeyToGithub@1.0.0", + "description": "Add a GPG key to your authenticated GitHub account.\n\nThis tool allows you to add a GPG key to your GitHub account after authenticating via Basic Auth or OAuth with the appropriate scope. Use it to enhance security by managing GPG keys on GitHub.", + "parameters": [ + { + "name": "gpg_key_ascii_armored_format", + "type": "string", + "required": true, + "description": "A GPG key in ASCII-armored format to be added to your GitHub account.", + "enum": null, + "inferrable": true + }, + { + "name": "new_gpg_key_name", + "type": "string", + "required": false, + "description": "A descriptive name for the new GPG key to be added to your GitHub account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/create-gpg-key-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddGpgKeyToGithub", + "parameters": { + "gpg_key_ascii_armored_format": { + "value": "-----BEGIN PGP PUBLIC KEY BLOCK-----\nVersion: OpenPGP.js v4.10.10\n\nmQENBFwH+IIOAwCAy2bypA3x...XYZ\n-----END PGP PUBLIC KEY BLOCK-----", + "type": "string", + "required": true + }, + "new_gpg_key_name": { + "value": "Personal GPG Key for GitHub", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddLabelsToGithubIssue", + "qualifiedName": "GithubApi.AddLabelsToGithubIssue", + "fullyQualifiedName": "GithubApi.AddLabelsToGithubIssue@1.0.0", + "description": "Add labels to a GitHub issue to categorize it.\n\n Use this tool to apply one or more labels to a specific issue in a GitHub repository. It helps in categorizing and organizing issues for better project management.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The GitHub account owner of the repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository where the issue exists. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_number", + "type": "integer", + "required": false, + "description": "The numeric identifier of the issue to which labels will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/add-labels'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddLabelsToGithubIssue", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleOwner", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "issue_number": { + "value": 123, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"labels\": [\"bug\", \"urgent\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddLabelsToRunner", + "qualifiedName": "GithubApi.AddLabelsToRunner", + "fullyQualifiedName": "GithubApi.AddLabelsToRunner@1.0.0", + "description": "Add custom labels to a self-hosted runner in an organization.\n\nThis tool adds custom labels to a self-hosted GitHub Actions runner configured in an organization. Use this tool when you need to organize or categorize runners with specific labels. Requires authentication with an access token having the `admin:org` scope.", + "parameters": [ + { + "name": "custom_labels_to_add", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of strings representing the custom labels to add to the self-hosted runner. Each label is a string.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_id", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner to which labels are added.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/add-custom-labels-to-self-hosted-runner-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddLabelsToRunner", + "parameters": { + "custom_labels_to_add": { + "value": ["frontend", "production", "ubuntu"], + "type": "array", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "runner_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddOrgAccessToRunnerGroup", + "qualifiedName": "GithubApi.AddOrgAccessToRunnerGroup", + "fullyQualifiedName": "GithubApi.AddOrgAccessToRunnerGroup@1.0.0", + "description": "Add organization access to a self-hosted runner group in an enterprise.\n\nUse this tool to add an organization to a selected list that can access a self-hosted runner group. The runner group's visibility must be set to 'selected'. Requires an access token with 'manage_runners:enterprise' scope.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise. Use either the enterprise name slug or its ID.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the organization to add access to the self-hosted runner group.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_id", + "type": "integer", + "required": true, + "description": "Unique identifier for the self-hosted runner group. Required for adding organization access to it.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/add-org-access-to-self-hosted-runner-group-in-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddOrgAccessToRunnerGroup", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "organization_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "runner_group_id": { + "value": 7890, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddOrUpdateGithubCollaborator", + "qualifiedName": "GithubApi.AddOrUpdateGithubCollaborator", + "fullyQualifiedName": "GithubApi.AddOrUpdateGithubCollaborator@1.0.0", + "description": "Add or update a collaborator on a GitHub repository.\n\nUse this tool to add a new collaborator or update the permission level of an existing collaborator on a GitHub repository. The invitee will receive a notification, and changes are instantly applied. Be aware of rate limits and permissions restrictions.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user handle for the collaborator to be added or updated.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username of the account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "permission_level_for_github_collaborator", + "type": "string", + "required": false, + "description": "Specify the permission to grant or update for a collaborator on an organization-owned GitHub repository. Only valid for such repositories.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/add-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddOrUpdateGithubCollaborator", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "repository_name": { + "value": "SampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "ownerUser", + "type": "string", + "required": true + }, + "permission_level_for_github_collaborator": { + "value": "write", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddOrUpdateGithubTeamProjectPermissions", + "qualifiedName": "GithubApi.AddOrUpdateGithubTeamProjectPermissions", + "fullyQualifiedName": "GithubApi.AddOrUpdateGithubTeamProjectPermissions@1.0.0", + "description": "Add or update a GitHub team's permissions on an organization project.\n\nUse this tool to add a project to a GitHub team or update a team's permissions on a project within the same organization. The user must have admin permissions for the project.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the project to update or add to the team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug representation of the GitHub team's name within the organization. This is used to identify the team in the request.", + "enum": null, + "inferrable": true + }, + { + "name": "project_permission_level", + "type": "string", + "required": false, + "description": "Permission level to grant the team for the project. Options: 'read', 'write', 'admin'. Default uses the team's current level.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/add-or-update-project-permissions-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddOrUpdateGithubTeamProjectPermissions", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "project_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + }, + "project_permission_level": { + "value": "write", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddProjectCollaborator", + "qualifiedName": "GithubApi.AddProjectCollaborator", + "fullyQualifiedName": "GithubApi.AddProjectCollaborator@1.0.0", + "description": "Add a collaborator to an organization project.\n\nThis tool adds a collaborator to a specified organization project and assigns a permission level. It requires the user to be an organization owner or a project admin.", + "parameters": [ + { + "name": "collaborator_username", + "type": "string", + "required": true, + "description": "The GitHub username of the collaborator to be added to the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the project to which a collaborator is being added. This ID is required to specify the exact project for collaboration.", + "enum": null, + "inferrable": true + }, + { + "name": "collaborator_permission_level", + "type": "string", + "required": false, + "description": "The permission level to assign to the collaborator. Options are: 'read', 'write', or 'admin'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/add-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddProjectCollaborator", + "parameters": { + "collaborator_username": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "project_id": { + "value": 456, + "type": "integer", + "required": true + }, + "collaborator_permission_level": { + "value": "write", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddReactionToCommitComment", + "qualifiedName": "GithubApi.AddReactionToCommitComment", + "fullyQualifiedName": "GithubApi.AddReactionToCommitComment@1.0.0", + "description": "Add a reaction to a GitHub commit comment.\n\nUse this tool to add a reaction (like, love, etc.) to a comment on a GitHub commit. It confirms if the reaction was already added with an HTTP `200` status.", + "parameters": [ + { + "name": "comment_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub commit comment to which the reaction will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_type", + "type": "string", + "required": true, + "description": "The type of reaction to add to the commit comment, e.g., '+1', 'heart', 'laugh'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username of the repository owner. This value is case-insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/create-for-commit-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddReactionToCommitComment", + "parameters": { + "comment_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "reaction_type": { + "value": "heart", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddReactionToGithubComment", + "qualifiedName": "GithubApi.AddReactionToGithubComment", + "fullyQualifiedName": "GithubApi.AddReactionToGithubComment@1.0.0", + "description": "Add a reaction to a GitHub issue comment.\n\nUse this tool to add a specific reaction to a comment on a GitHub issue. It checks if the reaction type has already been added, returning an HTTP `200` status in that case.", + "parameters": [ + { + "name": "comment_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub comment to which a reaction is being added.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_type", + "type": "string", + "required": true, + "description": "The type of reaction to add to the issue comment. Valid options: '+1', '-1', 'laugh', 'confused', 'heart', 'hooray', 'rocket', 'eyes'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/create-for-issue-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddReactionToGithubComment", + "parameters": { + "comment_unique_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "reaction_type": { + "value": "heart", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddReactionToGithubIssue", + "qualifiedName": "GithubApi.AddReactionToGithubIssue", + "fullyQualifiedName": "GithubApi.AddReactionToGithubIssue@1.0.0", + "description": "Add a reaction to a GitHub issue.\n\nUse this tool to add a specific reaction to a GitHub issue. If a reaction has already been added by the user, a response with HTTP status 200 will confirm this. Suitable for managing issue reactions on GitHub repositories.", + "parameters": [ + { + "name": "github_issue_number", + "type": "integer", + "required": true, + "description": "The number that uniquely identifies the issue on GitHub.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_type_to_add", + "type": "string", + "required": true, + "description": "The reaction type to add to the issue. Options include '+1', '-1', 'laugh', 'confused', 'heart', 'hooray', 'rocket', 'eyes'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/create-for-issue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddReactionToGithubIssue", + "parameters": { + "github_issue_number": { + "value": 42, + "type": "integer", + "required": true + }, + "reaction_type_to_add": { + "value": "heart", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddReactionToGithubTeamDiscussion", + "qualifiedName": "GithubApi.AddReactionToGithubTeamDiscussion", + "fullyQualifiedName": "GithubApi.AddReactionToGithubTeamDiscussion@1.0.0", + "description": "Add a reaction to a GitHub team discussion.\n\nUse this tool to add a specific reaction emoji to a team discussion in a GitHub organization. It requires OAuth access tokens with the `write:discussion` scope. This is useful for engaging with team discussions directly through the API.", + "parameters": [ + { + "name": "discussion_id", + "type": "integer", + "required": true, + "description": "The unique identifier number for the team discussion.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_type", + "type": "string", + "required": true, + "description": "The reaction type to add to the team discussion. Valid options include: '+1', '-1', 'laugh', 'confused', 'heart', 'hooray', 'rocket', 'eyes'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The URL-friendly version of the team's name.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/create-for-team-discussion-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddReactionToGithubTeamDiscussion", + "parameters": { + "discussion_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "reaction_type": { + "value": "heart", + "type": "string", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddReactionToPrComment", + "qualifiedName": "GithubApi.AddReactionToPrComment", + "fullyQualifiedName": "GithubApi.AddReactionToPrComment@1.0.0", + "description": "Adds a reaction to a pull request review comment on GitHub.\n\nUse this tool to add a reaction to a specific pull request review comment on GitHub. This can be helpful for acknowledging comments or expressing opinions quickly. A successful addition results in an HTTP `200` status.", + "parameters": [ + { + "name": "comment_unique_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the pull request review comment.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_type_for_pr_comment", + "type": "string", + "required": true, + "description": "Specifies the type of reaction to add to the pull request review comment. Valid options are '+1', '-1', 'laugh', 'confused', 'heart', 'hooray', 'rocket', 'eyes'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository where the comment is located. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/create-for-pull-request-review-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddReactionToPrComment", + "parameters": { + "comment_unique_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "reaction_type_for_pr_comment": { + "value": "+1", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddReactionToTeamDiscussionComment", + "qualifiedName": "GithubApi.AddReactionToTeamDiscussionComment", + "fullyQualifiedName": "GithubApi.AddReactionToTeamDiscussionComment@1.0.0", + "description": "Add a reaction to a GitHub team discussion comment.\n\nUse this tool to add a reaction emoji to a specific GitHub team discussion comment within an organization. Useful for engaging with team discussions or acknowledging comments. Requires appropriate OAuth scope.", + "parameters": [ + { + "name": "comment_identifier", + "type": "integer", + "required": true, + "description": "The unique number identifying the team discussion comment to react to.", + "enum": null, + "inferrable": true + }, + { + "name": "discussion_identifier", + "type": "integer", + "required": true, + "description": "The number identifying the discussion within the team.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_type", + "type": "string", + "required": true, + "description": "The type of reaction emoji to add to the team discussion comment. Accepted values are: '+1', '-1', 'laugh', 'confused', 'heart', 'hooray', 'rocket', 'eyes'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name within the organization, used to identify the team.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/create-for-team-discussion-comment-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddReactionToTeamDiscussionComment", + "parameters": { + "comment_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "discussion_identifier": { + "value": 67890, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "reaction_type": { + "value": "heart", + "type": "string", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddRepoAccessToRunnerGroup", + "qualifiedName": "GithubApi.AddRepoAccessToRunnerGroup", + "fullyQualifiedName": "GithubApi.AddRepoAccessToRunnerGroup@1.0.0", + "description": "Add repository access to a self-hosted runner group.\n\nThis tool is used to add a repository to the list of selected repositories that can access a self-hosted runner group within an organization. It should be called when you need to manage repository access for a self-hosted runner group with `selected` visibility. Requires authentication with an `admin:org` scoped access token.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_unique_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the repository to add access for.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_identifier", + "type": "integer", + "required": true, + "description": "Provide the unique integer identifier for the self-hosted runner group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/add-repo-access-to-self-hosted-runner-group-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddRepoAccessToRunnerGroup", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_unique_id": { + "value": 12345678, + "type": "integer", + "required": true + }, + "runner_group_identifier": { + "value": 87654321, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddRepositoryToGithubInstallation", + "qualifiedName": "GithubApi.AddRepositoryToGithubInstallation", + "fullyQualifiedName": "GithubApi.AddRepositoryToGithubInstallation@1.0.0", + "description": "Add a repository to a GitHub installation for the authenticated user.\n\nUse this tool to add a specific repository to a GitHub installation. The authenticated user must have admin access to the repository. A personal access token is required to authenticate the user.", + "parameters": [ + { + "name": "installation_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub installation.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "Provide the unique integer identifier of the repository to add to the installation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/add-repo-to-installation-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddRepositoryToGithubInstallation", + "parameters": { + "installation_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_id": { + "value": 789012, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddRepositoryToSecret", + "qualifiedName": "GithubApi.AddRepositoryToSecret", + "fullyQualifiedName": "GithubApi.AddRepositoryToSecret@1.0.0", + "description": "Add a repository to a GitHub organization secret.\n\nUse this tool to add a repository to an organization's secret in GitHub when the `visibility` is set to `selected`. Requires an access token with `admin:org` scope or a GitHub App with `dependabot_secrets` permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id_for_org_secret", + "type": "integer", + "required": true, + "description": "The ID of the repository to be added to the organization secret. This ID should be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the organization secret to which a repository will be added. This is case-insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/add-selected-repo-to-org-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddRepositoryToSecret", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "repository_id_for_org_secret": { + "value": 123456, + "type": "integer", + "required": true + }, + "secret_name": { + "value": "ExampleSecret", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddRepoToOrgSecret", + "qualifiedName": "GithubApi.AddRepoToOrgSecret", + "fullyQualifiedName": "GithubApi.AddRepoToOrgSecret@1.0.0", + "description": "Add a repository to an organization's secret.\n\nThis tool adds a specified repository to an organization secret with 'selected' visibility. It requires authentication with an access token having 'admin:org' scope. GitHub Apps need 'secrets' organization permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization's name. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the repository to be added to the organization secret. This ID specifies which repository you want to include.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the organization secret to which the repository will be added.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/add-selected-repo-to-org-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddRepoToOrgSecret", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "secret_name": { + "value": "MY_SECRET", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddRepoToOrgVariable", + "qualifiedName": "GithubApi.AddRepoToOrgVariable", + "fullyQualifiedName": "GithubApi.AddRepoToOrgVariable@1.0.0", + "description": "Add a repository to an organization's selected variables.\n\nUse this tool to add a repository to a specific organization variable that is available to selected repositories on GitHub. This requires an access token with `admin:org` scope or GitHub App permission `organization_actions_variables:write`. The repository and organization must have the `visibility` field set to `selected`.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "The integer ID of the repository to be added to the organization variable. This is a required field.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": true, + "description": "The name of the organization variable to which the repository will be added.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/add-selected-repo-to-org-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddRepoToOrgVariable", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_id": { + "value": 12345678, + "type": "integer", + "required": true + }, + "variable_name": { + "value": "MY_VARIABLE", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddRepoToRequiredWorkflow", + "qualifiedName": "GithubApi.AddRepoToRequiredWorkflow", + "fullyQualifiedName": "GithubApi.AddRepoToRequiredWorkflow@1.0.0", + "description": "Adds a repository to a GitHub required workflow.\n\nUse this tool to add a repository to a GitHub required workflow. Ensure the workflow is set to run on selected repositories. Authentication with an access token having `admin:org` scope is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization name for GitHub. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub repository to be added to the required workflow.", + "enum": null, + "inferrable": true + }, + { + "name": "required_workflow_identifier", + "type": "integer", + "required": true, + "description": "The unique integer ID of the required workflow to which the repository will be added.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/add-selected-repo-to-required-workflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddRepoToRequiredWorkflow", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "required_workflow_identifier": { + "value": 789012, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddRunnerToGroup", + "qualifiedName": "GithubApi.AddRunnerToGroup", + "fullyQualifiedName": "GithubApi.AddRunnerToGroup@1.0.0", + "description": "Add a self-hosted runner to an organization's runner group.\n\nUse this tool to add a self-hosted runner to a specific runner group within an organization on GitHub. Ensure you authenticate with an access token that has the `admin:org` scope to perform this operation.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the self-hosted runner group to which the runner will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_identifier", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner to be added to the group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/add-self-hosted-runner-to-group-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddRunnerToGroup", + "parameters": { + "organization_name": { + "value": "exampleOrg", + "type": "string", + "required": true + }, + "runner_group_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "runner_identifier": { + "value": 456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddSecurityManagerTeam", + "qualifiedName": "GithubApi.AddSecurityManagerTeam", + "fullyQualifiedName": "GithubApi.AddSecurityManagerTeam@1.0.0", + "description": "Add a team as a security manager for an organization.\n\nUse this tool to designate a specific team as the security manager for a GitHub organization. Requires organization admin rights and a token with `write:org` scope. Useful for managing security roles within an organization.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. This is not case sensitive. Required for adding a team as a security manager.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name to be added as a security manager. This is case-insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/add-security-manager-team'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddSecurityManagerTeam", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "SecurityTeam", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddSelfHostedRunnerToGroup", + "qualifiedName": "GithubApi.AddSelfHostedRunnerToGroup", + "fullyQualifiedName": "GithubApi.AddSelfHostedRunnerToGroup@1.0.0", + "description": "Add a self-hosted runner to an enterprise group in GitHub.\n\nUse this tool to add a self-hosted runner to a specified runner group within an enterprise on GitHub. Authentication with an access token having the 'manage_runners:enterprise' scope is required.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "Slug version or ID of the enterprise for adding the runner.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_identifier", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner group.", + "enum": null, + "inferrable": true + }, + { + "name": "self_hosted_runner_id", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner to be added to the group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/add-self-hosted-runner-to-group-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddSelfHostedRunnerToGroup", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise-slug", + "type": "string", + "required": true + }, + "runner_group_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "self_hosted_runner_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddSshKeyToGithubAccount", + "qualifiedName": "GithubApi.AddSshKeyToGithubAccount", + "fullyQualifiedName": "GithubApi.AddSshKeyToGithubAccount@1.0.0", + "description": "Add a public SSH key to your GitHub account.\n\nUse this tool to add a public SSH key to the authenticated user's GitHub account, enabling SSH access. Authentication is required via Basic Auth or OAuth with the appropriate scope.", + "parameters": [ + { + "name": "public_ssh_key", + "type": "string", + "required": true, + "description": "The public SSH key content to add to your GitHub account. Ensure it is in the correct format.", + "enum": null, + "inferrable": true + }, + { + "name": "ssh_key_title", + "type": "string", + "required": false, + "description": "A descriptive name for the new SSH key added to the GitHub account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/create-public-ssh-key-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddSshKeyToGithubAccount", + "parameters": { + "public_ssh_key": { + "value": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD3m...", + "type": "string", + "required": true + }, + "ssh_key_title": { + "value": "My Personal Laptop Key", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddStatusCheckContextsToBranch", + "qualifiedName": "GithubApi.AddStatusCheckContextsToBranch", + "fullyQualifiedName": "GithubApi.AddStatusCheckContextsToBranch@1.0.0", + "description": "Add status check contexts to a protected branch.\n\n This tool allows users to add status check contexts to a specified protected branch in a GitHub repository. It should be called when managing branch protection rules and ensuring specific contexts are required for status checks.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository to add status check contexts to. This is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The name of the branch to add status check contexts to. Cannot contain wildcard characters. Use GraphQL API for wildcards. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/add-status-check-contexts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddStatusCheckContextsToBranch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"contexts\": [\"continuous-integration/travis-ci\", \"codecov\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddTeamAccessToBranch", + "qualifiedName": "GithubApi.AddTeamAccessToBranch", + "fullyQualifiedName": "GithubApi.AddTeamAccessToBranch@1.0.0", + "description": "Grant push access to teams for a specific branch.\n\n Use this tool to grant specified teams push access to a protected branch within a repository. Applicable to repositories on GitHub Free, Pro, Team, and Enterprise plans.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "Specify the branch name to grant team access. Wildcard characters are not allowed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/add-team-access-restrictions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddTeamAccessToBranch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleOwner", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"team_ids\":[123, 456],\"permission\":\"push\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddUpdateGithubTeamMembership", + "qualifiedName": "GithubApi.AddUpdateGithubTeamMembership", + "fullyQualifiedName": "GithubApi.AddUpdateGithubTeamMembership@1.0.0", + "description": "Add or update a user's membership in a GitHub team.\n\nThis tool adds a member to a GitHub organization's team or updates their role if they are already a member. It is used by authenticated organization owners or team maintainers. If the person isn't part of the organization, an invitation is sent, and their membership will be pending until accepted.", + "parameters": [ + { + "name": "github_team_slug", + "type": "string", + "required": true, + "description": "The slug identifier of the team's name within the organization. This is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user account handle to add or update in the organization team.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization (case insensitive) to which the team belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "user_team_role", + "type": "string", + "required": false, + "description": "Specifies the role for the user in the team, either 'member' or 'maintainer'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/add-or-update-membership-for-user-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AddUpdateGithubTeamMembership", + "parameters": { + "github_team_slug": { + "value": "dev-team", + "type": "string", + "required": true + }, + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "organization_name": { + "value": "TechCorp", + "type": "string", + "required": true + }, + "user_team_role": { + "value": "member", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ApproveOrRejectPendingDeployments", + "qualifiedName": "GithubApi.ApproveOrRejectPendingDeployments", + "fullyQualifiedName": "GithubApi.ApproveOrRejectPendingDeployments@1.0.0", + "description": "Approve or reject pending deployments for a workflow run.\n\nThis tool approves or rejects pending deployments that are awaiting a required reviewer's decision. It requires access to repository contents and deployments, and authentication using a token with `repo` scope.", + "parameters": [ + { + "name": "deployment_review_comment", + "type": "string", + "required": true, + "description": "A comment to accompany the approval or rejection of the deployment review.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_review_state", + "type": "string", + "required": true, + "description": "Specify 'approved' to approve or 'rejected' to reject deployments to the environments.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_ids", + "type": "array", + "innerType": "integer", + "required": true, + "description": "List of environment IDs to approve or reject. Each ID must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This value is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the workflow run to be approved or rejected.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/review-pending-deployments-for-run'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ApproveOrRejectPendingDeployments", + "parameters": { + "deployment_review_comment": { + "value": "Deployment approved after successful tests.", + "type": "string", + "required": true + }, + "deployment_review_state": { + "value": "approved", + "type": "string", + "required": true + }, + "environment_ids": { + "value": [1, 2, 3], + "type": "array", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "workflow_run_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AssignGithubIssue", + "qualifiedName": "GithubApi.AssignGithubIssue", + "fullyQualifiedName": "GithubApi.AssignGithubIssue@1.0.0", + "description": "Assign users to a GitHub issue.\n\nUse this tool to assign up to 10 users to a GitHub issue without replacing existing assignees.", + "parameters": [ + { + "name": "issue_number", + "type": "integer", + "required": true, + "description": "The number that identifies the GitHub issue to which assignees will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This field is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_usernames", + "type": "array", + "innerType": "string", + "required": false, + "description": "Usernames of people to assign to the issue. Only users with push access can be assigned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/add-assignees'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.AssignGithubIssue", + "parameters": { + "issue_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "ExampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "ExampleOwner", + "type": "string", + "required": true + }, + "assignee_usernames": { + "value": ["user1", "user2", "user3"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelGithubWorkflowRun", + "qualifiedName": "GithubApi.CancelGithubWorkflowRun", + "fullyQualifiedName": "GithubApi.CancelGithubWorkflowRun@1.0.0", + "description": "Cancels a GitHub workflow run using its ID.\n\nUse this tool to cancel an ongoing GitHub Actions workflow run. Authentication with an access token having `repo` scope is required. Useful for stopping workflows that may be executing erroneously or need interruption.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is not case sensitive and should match the repository where the workflow run is located.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub workflow run to be canceled. This should be an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/cancel-workflow-run'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CancelGithubWorkflowRun", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "workflow_run_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckBranchCommitSignatureStatus", + "qualifiedName": "GithubApi.CheckBranchCommitSignatureStatus", + "fullyQualifiedName": "GithubApi.CheckBranchCommitSignatureStatus@1.0.0", + "description": "Check if a branch requires signed commits for protection.\n\nUse this tool to determine if a branch in a GitHub repository requires signed commits. This is relevant for repositories with branch protection enabled. Appropriate permissions are needed to access this information.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The name of the branch to check. It cannot contain wildcard characters.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The username of the repository owner. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-commit-signature-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckBranchCommitSignatureStatus", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckCommitSignatureVerification", + "qualifiedName": "GithubApi.CheckCommitSignatureVerification", + "fullyQualifiedName": "GithubApi.CheckCommitSignatureVerification@1.0.0", + "description": "Fetches verification status of a commit's signature on GitHub.\n\nUse this tool to check whether a commit's signature in a GitHub repository is verified. It provides details about the verification status, including whether it's verified, the reason for the status, and details about the signature and payload. Call this tool when you need to verify the authenticity of a commit.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to verify the commit signature. Not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "commit_author_filter", + "type": "string", + "required": false, + "description": "GitHub login or email address to filter commits by author.", + "enum": null, + "inferrable": true + }, + { + "name": "commit_file_path_filter", + "type": "string", + "required": false, + "description": "Specify a file path to filter commits that only include changes to this path.", + "enum": null, + "inferrable": true + }, + { + "name": "only_commits_before_date", + "type": "string", + "required": false, + "description": "Filter commits to only include those before this date, formatted as `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of commits to return per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "start_commit_sha_or_branch", + "type": "string", + "required": false, + "description": "SHA or branch to start listing commits from. Defaults to the repository's default branch, usually 'main'.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_after_timestamp", + "type": "string", + "required": false, + "description": "Timestamp in ISO 8601 format to filter notifications updated after this time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-commits'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckCommitSignatureVerification", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "commit_author_filter": { + "value": "author@example.com", + "type": "string", + "required": false + }, + "commit_file_path_filter": { + "value": "src/main.js", + "type": "string", + "required": false + }, + "only_commits_before_date": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "start_commit_sha_or_branch": { + "value": "main", + "type": "string", + "required": false + }, + "updated_after_timestamp": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckConfigStatus", + "qualifiedName": "GithubApi.CheckConfigStatus", + "fullyQualifiedName": "GithubApi.CheckConfigStatus@1.0.0", + "description": "Check the status of the most recent configuration process.\n\nUse this tool to determine whether the latest configuration process is pending, configuring, done, or failed. It may take several seconds after starting the process to check its status.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-configuration-status'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckConfigStatus", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckGithubOrgMembership", + "qualifiedName": "GithubApi.CheckGithubOrgMembership", + "fullyQualifiedName": "GithubApi.CheckGithubOrgMembership@1.0.0", + "description": "Checks if a user is a public member of a GitHub organization.\n\nUse this tool to determine if a specific user is publicly a member of a particular GitHub organization. This can be useful for confirming a user's affiliation with an organization.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user account handle to check for public organization membership.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the GitHub organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/check-public-membership-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckGithubOrgMembership", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "organization_name": { + "value": "OpenSourceOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckGithubRepoCollaborator", + "qualifiedName": "GithubApi.CheckGithubRepoCollaborator", + "fullyQualifiedName": "GithubApi.CheckGithubRepoCollaborator@1.0.0", + "description": "Check if a user is a collaborator on a GitHub repository.\n\nThis tool checks if a specific user is a collaborator on a GitHub repository, including outside collaborators, organization members with direct or team access, and organization owners. It requires authentication with appropriate permissions.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub username to check collaboration status for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository, not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/check-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckGithubRepoCollaborator", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "repository_name": { + "value": "my-awesome-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "awesomeOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckGithubTokenValidity", + "qualifiedName": "GithubApi.CheckGithubTokenValidity", + "fullyQualifiedName": "GithubApi.CheckGithubTokenValidity@1.0.0", + "description": "Check GitHub OAuth token validity with reduced rate limits.", + "parameters": [ + { + "name": "github_app_client_id", + "type": "string", + "required": true, + "description": "The unique client ID of the GitHub application for OAuth authentication.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_access_token", + "type": "string", + "required": true, + "description": "The OAuth access token to verify its validity with the GitHub API.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/check-token'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckGithubTokenValidity", + "parameters": { + "github_app_client_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + }, + "oauth_access_token": { + "value": "gho_abc1234567890xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckIfGistIsStarred", + "qualifiedName": "GithubApi.CheckIfGistIsStarred", + "fullyQualifiedName": "GithubApi.CheckIfGistIsStarred@1.0.0", + "description": "Determine if a specific gist is starred on GitHub.\n\nThis tool checks the starred status of a specific GitHub gist using its gist ID.", + "parameters": [ + { + "name": "gist_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the gist to check if it is starred.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/check-is-starred'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckIfGistIsStarred", + "parameters": { + "gist_identifier": { + "value": "abc123def456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckIfUserIsFollowed", + "qualifiedName": "GithubApi.CheckIfUserIsFollowed", + "fullyQualifiedName": "GithubApi.CheckIfUserIsFollowed@1.0.0", + "description": "Check if a user is followed by the authenticated GitHub user.\n\nUse this tool to verify if the authenticated GitHub user is following another specified user. It determines the follow status between the authenticated user and the target user.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The handle for the GitHub user account to check if they are followed by the authenticated user.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/check-person-is-followed-by-authenticated'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckIfUserIsFollowed", + "parameters": { + "github_user_handle": { + "value": "example_user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckMaintenanceStatus", + "qualifiedName": "GithubApi.CheckMaintenanceStatus", + "fullyQualifiedName": "GithubApi.CheckMaintenanceStatus@1.0.0", + "description": "Retrieve the maintenance status of your GitHub installation.\n\nUse this tool to check the maintenance status of your GitHub installation. It's useful for determining if the installation is currently under maintenance.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-maintenance-status'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckMaintenanceStatus", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckOrgMigrationStatus", + "qualifiedName": "GithubApi.CheckOrgMigrationStatus", + "fullyQualifiedName": "GithubApi.CheckOrgMigrationStatus@1.0.0", + "description": "Fetches the status of an organization's migration.\n\nThis tool retrieves the current status of a specific migration for an organization on GitHub. The migration status can be 'pending', 'exporting', 'exported', or 'failed'. Use this tool to monitor migration progress or verify completion.", + "parameters": [ + { + "name": "migration_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the migration. Expected as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization, not case sensitive, for which to fetch migration status.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of attribute names to exclude from the API response for improved performance.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'migrations/get-status-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckOrgMigrationStatus", + "parameters": { + "migration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "exclude_attributes": { + "value": ["attribute1", "attribute2"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckPrMergeStatus", + "qualifiedName": "GithubApi.CheckPrMergeStatus", + "fullyQualifiedName": "GithubApi.CheckPrMergeStatus@1.0.0", + "description": "Check if a pull request has been merged.\n\nUse this tool to determine if a specific pull request in a GitHub repository has been merged. This is useful for tracking development progress and managing project contributions.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the specific pull request to check.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. Input is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This value is not case sensitive. It specifies which user's or organization's repository contains the pull request.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/check-if-merged'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckPrMergeStatus", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckRepoCollaboratorPermission", + "qualifiedName": "GithubApi.CheckRepoCollaboratorPermission", + "fullyQualifiedName": "GithubApi.CheckRepoCollaboratorPermission@1.0.0", + "description": "Check a collaborator's permission level in a GitHub repo.\n\nUse this tool to find out if a collaborator has `admin`, `write`, `read`, or `none` permissions in a specific GitHub repository.", + "parameters": [ + { + "name": "collaborator_username", + "type": "string", + "required": true, + "description": "The GitHub user account handle to check permissions for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository (case insensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository (not case sensitive).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-collaborator-permission-level'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckRepoCollaboratorPermission", + "parameters": { + "collaborator_username": { + "value": "johnDoe", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleOwner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckRepoStarredByUser", + "qualifiedName": "GithubApi.CheckRepoStarredByUser", + "fullyQualifiedName": "GithubApi.CheckRepoStarredByUser@1.0.0", + "description": "Check if a repository is starred by the authenticated user.\n\nThis tool verifies whether the authenticated user has starred a specific GitHub repository, identified by its owner and repository name.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to check. This is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner_account", + "type": "string", + "required": true, + "description": "The account owner of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/check-repo-is-starred-by-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckRepoStarredByUser", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner_account": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckTeamProjectPermissions", + "qualifiedName": "GithubApi.CheckTeamProjectPermissions", + "fullyQualifiedName": "GithubApi.CheckTeamProjectPermissions@1.0.0", + "description": "Check team's permissions for an organization's project.\n\nUse this tool to determine if a team has `read`, `write`, or `admin` permissions for a specific project within an organization. This includes projects inherited from a parent team.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "project_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique integer ID of the project to check permissions for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name used to identify the team within the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/check-permissions-for-project-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckTeamProjectPermissions", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "project_unique_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckTeamRepoPermissions", + "qualifiedName": "GithubApi.CheckTeamRepoPermissions", + "fullyQualifiedName": "GithubApi.CheckTeamRepoPermissions@1.0.0", + "description": "Check a team's permissions for a specific repository within an organization.\n\nThis tool verifies whether a team has specific permissions (admin, push, maintain, triage, or pull) for a given repository within an organization on GitHub. It can be used to ensure access rights are correctly configured. If the team lacks permissions, a 404 response indicates no access.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization name on GitHub. It is not case sensitive. Required to check team permissions.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository for which you want to check permissions. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name. Used to identify the team whose permissions you are checking.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/check-permissions-for-repo-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckTeamRepoPermissions", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_name": { + "value": "ExampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "ExampleOwner", + "type": "string", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckThreadSubscription", + "qualifiedName": "GithubApi.CheckThreadSubscription", + "fullyQualifiedName": "GithubApi.CheckThreadSubscription@1.0.0", + "description": "Check if the authenticated user is subscribed to a thread.\n\nThis tool determines if the current user is subscribed to a specific thread on GitHub. Subscriptions are present if the user is participating in the conversation, such as replying, being @mentioned, or manually subscribing to the thread.", + "parameters": [ + { + "name": "notification_thread_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the notification thread, retrieved from notification data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/get-thread-subscription-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckThreadSubscription", + "parameters": { + "notification_thread_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckUserAssignmentPermission", + "qualifiedName": "GithubApi.CheckUserAssignmentPermission", + "fullyQualifiedName": "GithubApi.CheckUserAssignmentPermission@1.0.0", + "description": "Check if a user can be assigned to a GitHub issue.\n\nThis tool checks if a specified user has permission to be assigned to an issue within a given GitHub repository. It should be called when you need to verify a user's eligibility to be an assignee for issues in a repository.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. Input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "user_assignee", + "type": "string", + "required": true, + "description": "The username of the GitHub user to check for issue assignment permissions.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/check-user-can-be-assigned'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckUserAssignmentPermission", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "user_assignee": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckUserAssignPermission", + "qualifiedName": "GithubApi.CheckUserAssignPermission", + "fullyQualifiedName": "GithubApi.CheckUserAssignPermission@1.0.0", + "description": "Check if a user can be assigned to a GitHub issue.\n\nUse this tool to verify if a specific user can be assigned as an assignee to a particular issue in a GitHub repository. A 204 status indicates permission, while a 404 indicates the user cannot be assigned.", + "parameters": [ + { + "name": "assignee_username", + "type": "string", + "required": true, + "description": "The GitHub username of the person to check for assignment permission.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_identifier", + "type": "integer", + "required": true, + "description": "The number that identifies the specific issue in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository, not case sensitive, where the issue is located.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/check-user-can-be-assigned-to-issue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckUserAssignPermission", + "parameters": { + "assignee_username": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "issue_identifier": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "JaneSmith", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckUserFollowingStatus", + "qualifiedName": "GithubApi.CheckUserFollowingStatus", + "fullyQualifiedName": "GithubApi.CheckUserFollowingStatus@1.0.0", + "description": "Verify if a user follows another GitHub user.\n\nThis tool checks if one GitHub user follows another. Use it to determine follow relationships between two users on GitHub.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The handle for the GitHub user account initiating the following request.", + "enum": null, + "inferrable": true + }, + { + "name": "target_username", + "type": "string", + "required": true, + "description": "The username of the GitHub account you want to check if the main user follows.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/check-following-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckUserFollowingStatus", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "target_username": { + "value": "janeSmith456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckUserMembershipInOrg", + "qualifiedName": "GithubApi.CheckUserMembershipInOrg", + "fullyQualifiedName": "GithubApi.CheckUserMembershipInOrg@1.0.0", + "description": "Checks if a user is a member of a GitHub organization.\n\nThis tool determines whether a specified user is a member of a specified GitHub organization, either publicly or privately. Use this tool to verify membership status in organizational repositories or workflows.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The username or handle for the GitHub user account being checked for organization membership.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the GitHub organization to check membership against.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/check-membership-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CheckUserMembershipInOrg", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "organization_name": { + "value": "OpenAI", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CompareDependencyChanges", + "qualifiedName": "GithubApi.CompareDependencyChanges", + "fullyQualifiedName": "GithubApi.CompareDependencyChanges@1.0.0", + "description": "Get dependency changes between two commits of a repository.\n\nUse this tool to retrieve a diff of dependency changes based on updates to dependency manifests between two specified commits in a GitHub repository. It is useful for understanding what dependencies have been added, removed, or updated.", + "parameters": [ + { + "name": "base_and_head_commit_specification", + "type": "string", + "required": true, + "description": "Specify the base and head commits in the format `{base}...{head}` for comparison.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to compare. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner_name", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "dependency_manifest_file_path", + "type": "string", + "required": false, + "description": "The full path, relative to the repository root, of the dependency manifest file.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependency-graph/diff-range'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CompareDependencyChanges", + "parameters": { + "base_and_head_commit_specification": { + "value": "abc123...def456", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner_name": { + "value": "example-owner", + "type": "string", + "required": true + }, + "dependency_manifest_file_path": { + "value": "path/to/manifest.json", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CompareGithubCommits", + "qualifiedName": "GithubApi.CompareGithubCommits", + "fullyQualifiedName": "GithubApi.CompareGithubCommits@1.0.0", + "description": "Compares two commits in a GitHub repository.\n\nUse this tool to compare two commits in a GitHub repository, including those in different branches or forks. Returns details about file changes, commit order, and signature verification status. Useful for understanding code changes and repository history.", + "parameters": [ + { + "name": "base_and_head_branch_comparison", + "type": "string", + "required": true, + "description": "Specify branches/base and head in the format `BASE...HEAD` or `USERNAME:BASE...USERNAME:HEAD` to compare them.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to compare commits in. This input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The username of the account that owns the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch. Used for pagination to navigate through commit comparisons.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of commit results returned per page. Maximum allowed is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/compare-commits'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CompareGithubCommits", + "parameters": { + "base_and_head_branch_comparison": { + "value": "main...feature-branch", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CompleteGithubAppHandshake", + "qualifiedName": "GithubApi.CompleteGithubAppHandshake", + "fullyQualifiedName": "GithubApi.CompleteGithubAppHandshake@1.0.0", + "description": "Complete the GitHub App Manifest handshake to retrieve app details.\n\nUse this tool to finalize the creation of a GitHub App via the manifest flow, retrieving the app's id, pem (private key), and webhook_secret using a temporary code.", + "parameters": [ + { + "name": "temporary_code_for_github_app", + "type": "string", + "required": true, + "description": "The temporary code provided during the GitHub App Manifest flow to retrieve the app's id, pem, and webhook_secret.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/create-from-manifest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CompleteGithubAppHandshake", + "parameters": { + "temporary_code_for_github_app": { + "value": "abcde12345xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ConfigureGithubActionsCache", + "qualifiedName": "GithubApi.ConfigureGithubActionsCache", + "fullyQualifiedName": "GithubApi.ConfigureGithubActionsCache@1.0.0", + "description": "Set GitHub Actions cache usage policy for a repository.\n\nUse this tool to configure the cache usage policy for GitHub Actions in a repository. Authentication with an access token with 'repo' scope is required, or GitHub Apps need 'actions:write' permission.", + "parameters": [ + { + "name": "repository_cache_size_limit_gb", + "type": "integer", + "required": true, + "description": "Specify the size limit for all GitHub Actions caches in the repository, in gigabytes.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This field is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is the GitHub username or organization name and is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-actions-cache-usage-policy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ConfigureGithubActionsCache", + "parameters": { + "repository_cache_size_limit_gb": { + "value": 10, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ConfigureGithubActionsPermissions", + "qualifiedName": "GithubApi.ConfigureGithubActionsPermissions", + "fullyQualifiedName": "GithubApi.ConfigureGithubActionsPermissions@1.0.0", + "description": "Configure GitHub Actions permissions for an organization.\n\nUse this tool to set the GitHub Actions permissions policy for repositories and allowed actions within an organization. Note that enterprise-level restrictions cannot be overridden. Requires authentication with an 'admin:org' token or 'administration' organization permission for GitHub Apps.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_execution_policy", + "type": "string", + "required": true, + "description": "Specifies which repositories in the organization are allowed to run GitHub Actions. Options: 'all', 'none', 'selected'.", + "enum": null, + "inferrable": true + }, + { + "name": "allowed_actions_policy", + "type": "string", + "required": false, + "description": "Specifies the permissions policy for actions: 'all', 'local_only', or 'selected'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-github-actions-permissions-organization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ConfigureGithubActionsPermissions", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "repository_execution_policy": { + "value": "selected", + "type": "string", + "required": true + }, + "allowed_actions_policy": { + "value": "local_only", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ConfigureGithubPagesSite", + "qualifiedName": "GithubApi.ConfigureGithubPagesSite", + "fullyQualifiedName": "GithubApi.ConfigureGithubPagesSite@1.0.0", + "description": "Configures a GitHub Pages site for a repository.\n\n This tool is used to configure a Pages site for a GitHub repository on an Enterprise Server. It requires administrative permissions on the repository and a token with appropriate scopes. Use this when you need to set up or manage a GitHub Pages site.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. This is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository to configure. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-pages-site'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ConfigureGithubPagesSite", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"theme\": \"minimal\", \"custom_domain\": \"www.example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ConfigureGithubTokenPermissions", + "qualifiedName": "GithubApi.ConfigureGithubTokenPermissions", + "fullyQualifiedName": "GithubApi.ConfigureGithubTokenPermissions@1.0.0", + "description": "Set default workflow permissions for a repository's GitHub Actions.\n\nThis tool updates the default permissions granted to the `GITHUB_TOKEN` when workflows run in a GitHub repository. It also configures GitHub Actions' ability to submit approving pull request reviews. Authentication with a token having `repo` scope is required, or GitHub Apps must have `administration` permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "default_workflow_permissions", + "type": "string", + "required": false, + "description": "Specify the default permissions ('read' or 'write') for the GITHUB_TOKEN when running workflows.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pull_request_approval", + "type": "boolean", + "required": false, + "description": "Set to true to allow GitHub Actions to approve pull requests. Enabling this may pose a security risk.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-github-actions-default-workflow-permissions-repository'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ConfigureGithubTokenPermissions", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "default_workflow_permissions": { + "value": "write", + "type": "string", + "required": false + }, + "enable_pull_request_approval": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ConvertMemberToOutsideCollaborator", + "qualifiedName": "GithubApi.ConvertMemberToOutsideCollaborator", + "fullyQualifiedName": "GithubApi.ConvertMemberToOutsideCollaborator@1.0.0", + "description": "Convert GitHub org member to outside collaborator.\n\nUse this tool to convert an organization member into an outside collaborator on GitHub. The member will lose their organization membership and retain access only to repositories allowed by their team memberships. This action might be restricted by enterprise policies.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user handle to be converted to an outside collaborator.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "perform_asynchronously", + "type": "boolean", + "required": false, + "description": "Set to true to perform the request asynchronously, queuing the job with a 202 status code.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/convert-member-to-outside-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ConvertMemberToOutsideCollaborator", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "organization_name": { + "value": "exampleOrg", + "type": "string", + "required": true + }, + "perform_asynchronously": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateEnterpriseScimGroup", + "qualifiedName": "GithubApi.CreateEnterpriseScimGroup", + "fullyQualifiedName": "GithubApi.CreateEnterpriseScimGroup@1.0.0", + "description": "Create a SCIM group for a GitHub enterprise account.\n\nFacilitates the creation of a SCIM group within a GitHub enterprise. This tool should be used when you need to establish a new group with optional member inclusion. Any specified members will be added as external group members, and it's important to maintain mapping of their identifiers.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/provision-enterprise-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateEnterpriseScimGroup", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"groupName\":\"example-group\",\"members\":[{\"userId\":\"user123\",\"externalId\":\"ext-user123\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateEnterpriseUser", + "qualifiedName": "GithubApi.CreateEnterpriseUser", + "fullyQualifiedName": "GithubApi.CreateEnterpriseUser@1.0.0", + "description": "Creates a new user in GitHub enterprise with external authentication.\n\nThis tool should be called to create a new user in GitHub Enterprise when using external authentication mechanisms like LDAP. It ensures the login name is normalized and manages existing account conflicts.", + "parameters": [ + { + "name": "user_username", + "type": "string", + "required": true, + "description": "The user's username for the GitHub enterprise account. It will be normalized to contain only alphanumeric characters or single hyphens.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email", + "type": "string", + "required": false, + "description": "The email address of the user. Required for built-in authentication but optional for CAS, LDAP, or SAML auth methods.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/create-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateEnterpriseUser", + "parameters": { + "user_username": { + "value": "john-doe", + "type": "string", + "required": true + }, + "user_email": { + "value": "john.doe@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGist", + "qualifiedName": "GithubApi.CreateGist", + "fullyQualifiedName": "GithubApi.CreateGist@1.0.0", + "description": "Create a new gist with one or more files on GitHub.\n\nUse this tool to add a new gist containing one or more code files on GitHub. Avoid naming files with the 'gistfile' format followed by a number, as it may conflict with GitHub's internal naming scheme.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGist", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"description\":\"Sample Gist\",\"public\":true,\"files\":{\"example.txt\":{\"content\":\"This is an example content.\"}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGistComment", + "qualifiedName": "GithubApi.CreateGistComment", + "fullyQualifiedName": "GithubApi.CreateGistComment@1.0.0", + "description": "Create a comment on a GitHub gist.\n\nThis tool is used to add a comment to a specific GitHub gist by providing the necessary gist ID and comment content.", + "parameters": [ + { + "name": "comment_text", + "type": "string", + "required": true, + "description": "The text content of the comment to be added to the gist.", + "enum": null, + "inferrable": true + }, + { + "name": "gist_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the gist to comment on.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/create-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGistComment", + "parameters": { + "comment_text": { + "value": "This is a comment added to the gist.", + "type": "string", + "required": true + }, + "gist_unique_identifier": { + "value": "1234567890abcdef1234567890abcdef12345678", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGitCommit", + "qualifiedName": "GithubApi.CreateGitCommit", + "fullyQualifiedName": "GithubApi.CreateGitCommit@1.0.0", + "description": "Create a new Git commit on a GitHub repository.\n\n This tool creates a new Git commit on a specified GitHub repository and verifies the commit's signature. It returns information about the verification status, including whether it's verified and the reason, if applicable.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. This name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository (case insensitive). Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'git/create-commit'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGitCommit", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"message\": \"Initial commit\", \"author\": {\"name\": \"John Doe\", \"email\": \"john.doe@example.com\"}, \"tree\": \"abcd1234\", \"parents\": [\"defg5678\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubAppInstallationToken", + "qualifiedName": "GithubApi.CreateGithubAppInstallationToken", + "fullyQualifiedName": "GithubApi.CreateGithubAppInstallationToken@1.0.0", + "description": "Create an installation access token for a GitHub App.\n\n Use this tool to generate an installation access token for a GitHub App, allowing it to make authenticated API requests for its installation on an organization or individual account. Tokens expire in one hour and can be restricted to specific repositories by providing `repository_ids`. Requires JWT authentication.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "installation_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the GitHub App installation. Required to create the access token. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/create-installation-access-token'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubAppInstallationToken", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "installation_id": { + "value": 123456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"repository_ids\":[\"repo_id_1\",\"repo_id_2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubBlob", + "qualifiedName": "GithubApi.CreateGithubBlob", + "fullyQualifiedName": "GithubApi.CreateGithubBlob@1.0.0", + "description": "Create a new blob in a GitHub repository.\n\nThis tool creates a new blob object in a specified GitHub repository. It is useful when you need to add or modify a blob within the repository, typically for storing binary data or files.", + "parameters": [ + { + "name": "blob_content", + "type": "string", + "required": true, + "description": "The content for the new GitHub blob. Accepts text or encoded binary data.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "content_encoding", + "type": "string", + "required": false, + "description": "Specify the encoding for the blob content. Supported values are 'utf-8' and 'base64'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'git/create-blob'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubBlob", + "parameters": { + "blob_content": { + "value": "This is an example blob content.", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "content_encoding": { + "value": "utf-8", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubCheckRun", + "qualifiedName": "GithubApi.CreateGithubCheckRun", + "fullyQualifiedName": "GithubApi.CreateGithubCheckRun@1.0.0", + "description": "Create a new check run for a GitHub repository commit.\n\n This tool creates a new check run associated with a specific commit in a GitHub repository. It requires the 'checks:write' permission in the GitHub App. Note that this tool is sensitive to the branch it's applied to, as it only processes pushes in the repository where it's created, not in forked repositories.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'checks/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubCheckRun", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"example_check\", \"head_sha\": \"abc123\", \"status\": \"in_progress\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubCheckSuite", + "qualifiedName": "GithubApi.CreateGithubCheckSuite", + "fullyQualifiedName": "GithubApi.CreateGithubCheckSuite@1.0.0", + "description": "Manually create a check suite on GitHub.\n\nUse this tool to manually create a check suite in a GitHub repository when automatic creation is disabled. Ensure your GitHub App has the `checks:write` permission before using this endpoint.", + "parameters": [ + { + "name": "head_commit_sha", + "type": "string", + "required": true, + "description": "The SHA of the head commit for the check suite. Ensure it's a valid commit SHA.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository where the check suite will be created. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner_account", + "type": "string", + "required": true, + "description": "Specify the account owner of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'checks/create-suite'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubCheckSuite", + "parameters": { + "head_commit_sha": { + "value": "a1b2c3d4e5f6192837465abcd1234567890abcdef", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner_account": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubCommitComment", + "qualifiedName": "GithubApi.CreateGithubCommitComment", + "fullyQualifiedName": "GithubApi.CreateGithubCommitComment@1.0.0", + "description": "Create a comment on a specific GitHub commit.\n\nUse this tool to add a comment to a specific commit on a GitHub repository using the commit's SHA identifier. Useful for discussing changes directly within the commit history. Be mindful of rate limiting when using this endpoint.", + "parameters": [ + { + "name": "comment_content", + "type": "string", + "required": true, + "description": "The text of the comment to be added to the commit. It should be a clear and concise message.", + "enum": null, + "inferrable": true + }, + { + "name": "commit_sha", + "type": "string", + "required": true, + "description": "The SHA identifier of the commit to comment on. It uniquely identifies the commit within the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository where the commit resides. It's not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. Name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "deprecated_line_number", + "type": "integer", + "required": false, + "description": "Line number in the file to comment on. **Deprecated**. Use the `position_in_diff` instead.", + "enum": null, + "inferrable": true + }, + { + "name": "line_index_in_diff", + "type": "integer", + "required": false, + "description": "Line index in the diff to comment on.", + "enum": null, + "inferrable": true + }, + { + "name": "relative_file_path", + "type": "string", + "required": false, + "description": "Relative path of the file to comment on within the repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-commit-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubCommitComment", + "parameters": { + "comment_content": { + "value": "Great work on this commit! Let's ensure to test this change thoroughly.", + "type": "string", + "required": true + }, + "commit_sha": { + "value": "a1b2c3d4e5f6g7h8i9j0k", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "deprecated_line_number": { + "value": null, + "type": "integer", + "required": false + }, + "line_index_in_diff": { + "value": 5, + "type": "integer", + "required": false + }, + "relative_file_path": { + "value": "src/main.js", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubCommitStatus", + "qualifiedName": "GithubApi.CreateGithubCommitStatus", + "fullyQualifiedName": "GithubApi.CreateGithubCommitStatus@1.0.0", + "description": "Create a commit status for a specific SHA on GitHub.\n\nUse this tool to set a commit status for a specific SHA in a GitHub repository if you have push access. Useful for marking build status, testing results, or other commit contexts. Be mindful of the 1000 status limit per SHA and context.", + "parameters": [ + { + "name": "commit_sha", + "type": "string", + "required": true, + "description": "The SHA hash of the commit to set the status for. This uniquely identifies the commit in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Enter the owner's username (not case sensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "status_state", + "type": "string", + "required": true, + "description": "The state of the status for the commit. Possible values are 'error', 'failure', 'pending', or 'success'.", + "enum": null, + "inferrable": true + }, + { + "name": "commit_status_target_url", + "type": "string", + "required": false, + "description": "The URL associated with the status for easy navigation in GitHub. Example: a deep link to CI build output.", + "enum": null, + "inferrable": true + }, + { + "name": "status_description", + "type": "string", + "required": false, + "description": "A short description of the commit status, providing context or details about the status.", + "enum": null, + "inferrable": true + }, + { + "name": "status_label", + "type": "string", + "required": false, + "description": "A case-insensitive string label to differentiate this status from other systems.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-commit-status'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubCommitStatus", + "parameters": { + "commit_sha": { + "value": "a1b2c3d4e5f607g8h9i0j", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleuser", + "type": "string", + "required": true + }, + "status_state": { + "value": "success", + "type": "string", + "required": true + }, + "commit_status_target_url": { + "value": "https://ci.example.com/build/12345", + "type": "string", + "required": false + }, + "status_description": { + "value": "Build completed successfully.", + "type": "string", + "required": false + }, + "status_label": { + "value": "CI Build", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubDeployKey", + "qualifiedName": "GithubApi.CreateGithubDeployKey", + "fullyQualifiedName": "GithubApi.CreateGithubDeployKey@1.0.0", + "description": "Create a read-only deploy key for a GitHub repository.\n\nUse this tool to generate a read-only deploy key for a specified GitHub repository. Ideal for automating and securing repository access.", + "parameters": [ + { + "name": "deploy_key_contents", + "type": "string", + "required": true, + "description": "The public key contents to be added as a deploy key.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. Name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "key_title", + "type": "string", + "required": false, + "description": "A name for the deploy key for identification purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "read_only_access", + "type": "boolean", + "required": false, + "description": "Set to `true` for read-only access. `False` allows both read and write access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-deploy-key'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubDeployKey", + "parameters": { + "deploy_key_contents": { + "value": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC4exampleKey1234", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "key_title": { + "value": "My Deploy Key", + "type": "string", + "required": false + }, + "read_only_access": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubDeployment", + "qualifiedName": "GithubApi.CreateGithubDeployment", + "fullyQualifiedName": "GithubApi.CreateGithubDeployment@1.0.0", + "description": "Create a GitHub deployment for a specified repository ref.\n\n Use this tool to create deployments for a specific branch, tag, or SHA in a GitHub repository. Configure parameters like environment, auto-merge, and required contexts. Suitable for deploying to production, staging, or testing environments.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. This input is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository to deploy. Not case-sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-deployment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubDeployment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"environment\":\"production\",\"auto_merge\":true,\"required_contexts\":[\"ci\",\"code_review\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubDeploymentBranchPolicy", + "qualifiedName": "GithubApi.CreateGithubDeploymentBranchPolicy", + "fullyQualifiedName": "GithubApi.CreateGithubDeploymentBranchPolicy@1.0.0", + "description": "Creates a deployment branch policy for a GitHub environment.\n\nThis tool is used to create a deployment branch policy within a specified environment on GitHub. It requires authentication with a valid access token with the 'repo' scope or a GitHub App with 'administration:write' permission for the repository.", + "parameters": [ + { + "name": "branch_name_pattern", + "type": "string", + "required": true, + "description": "A pattern that branches must match to deploy to the environment. Wildcard characters won't match '/'.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "The name of the environment for which to create a deployment branch policy.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-deployment-branch-policy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubDeploymentBranchPolicy", + "parameters": { + "branch_name_pattern": { + "value": "release/*", + "type": "string", + "required": true + }, + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubDeploymentStatus", + "qualifiedName": "GithubApi.CreateGithubDeploymentStatus", + "fullyQualifiedName": "GithubApi.CreateGithubDeploymentStatus@1.0.0", + "description": "Create deployment statuses for a GitHub deployment.\n\nThis tool allows users with appropriate permissions to create deployment statuses on GitHub for a specific deployment. It requires push access for users, and specific access scopes for GitHub and OAuth Apps. Use this tool to update the status of your deployments directly within GitHub repositories.", + "parameters": [ + { + "name": "deployment_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the deployment. This integer value specifies which deployment the status will be associated with.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_status_state", + "type": "string", + "required": true, + "description": "The desired state of the deployment status. Options include: 'error', 'failure', 'inactive', 'in_progress', 'queued', 'pending', 'success'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "add_inactive_status_to_previous_deployments", + "type": "boolean", + "required": false, + "description": "Specifies if an 'inactive' status should be added to prior non-transient, non-production deployments with the same repository and environment. Defaults to true.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_environment", + "type": "string", + "required": false, + "description": "Specifies the target deployment environment, such as `production`, `staging`, or `qa`.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_environment_url", + "type": "string", + "required": false, + "description": "Sets the URL for accessing your deployment environment. Defaults to an empty string if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_output_url", + "type": "string", + "required": false, + "description": "The full URL of the deployment's output. It replaces `target_url` and automatically sets `target_url` to the same value. Recommended for output logs.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_status_target_url", + "type": "string", + "required": false, + "description": "Specify the URL containing output related to the deployment status. Note that it's recommended to use `log_url` instead, which replaces this parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "status_description", + "type": "string", + "required": false, + "description": "A brief description of the deployment status, up to 140 characters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-deployment-status'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubDeploymentStatus", + "parameters": { + "deployment_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "deployment_status_state": { + "value": "success", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "add_inactive_status_to_previous_deployments": { + "value": true, + "type": "boolean", + "required": false + }, + "deployment_environment": { + "value": "production", + "type": "string", + "required": false + }, + "deployment_environment_url": { + "value": "https://example.com", + "type": "string", + "required": false + }, + "deployment_output_url": { + "value": "https://example.com/output", + "type": "string", + "required": false + }, + "deployment_status_target_url": { + "value": "https://example.com/status", + "type": "string", + "required": false + }, + "status_description": { + "value": "Deployment completed successfully.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubEnterpriseRegistrationToken", + "qualifiedName": "GithubApi.CreateGithubEnterpriseRegistrationToken", + "fullyQualifiedName": "GithubApi.CreateGithubEnterpriseRegistrationToken@1.0.0", + "description": "Generate a registration token for GitHub Enterprise runners.\n\nUse this tool to obtain a registration token for configuring self-hosted GitHub Enterprise runners. The token expires after one hour and requires authentication with a token having the `manage_runners:enterprise` scope.", + "parameters": [ + { + "name": "enterprise_slug_or_id", + "type": "string", + "required": true, + "description": "The slug version of the enterprise name or the enterprise ID for GitHub Enterprise.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/create-registration-token-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubEnterpriseRegistrationToken", + "parameters": { + "enterprise_slug_or_id": { + "value": "my-enterprise", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubEnvVariable", + "qualifiedName": "GithubApi.CreateGithubEnvVariable", + "fullyQualifiedName": "GithubApi.CreateGithubEnvVariable@1.0.0", + "description": "Create an environment variable for GitHub Actions workflows.\n\nThis tool creates an environment variable that can be referenced in a GitHub Actions workflow. Authentication with an access token and appropriate permissions is required.", + "parameters": [ + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "Specify the name of the environment where the variable will be created. This is required for defining the scope within GitHub Actions workflows.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the repository for which the environment variable is being created.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": true, + "description": "The name of the environment variable to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_value", + "type": "string", + "required": true, + "description": "The value assigned to the environment variable. Must be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/create-environment-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubEnvVariable", + "parameters": { + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_identifier": { + "value": 123456789, + "type": "integer", + "required": true + }, + "variable_name": { + "value": "API_ENDPOINT", + "type": "string", + "required": true + }, + "variable_value": { + "value": "https://api.example.com/v1", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubFork", + "qualifiedName": "GithubApi.CreateGithubFork", + "fullyQualifiedName": "GithubApi.CreateGithubFork@1.0.0", + "description": "Create a fork of a GitHub repository for the user.\n\nCreate a fork of a GitHub repository for the authenticated user. Note that the forking process happens asynchronously and might take some time. Contact GitHub support if it takes longer than 5 minutes.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to fork. It's not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. This name is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "fork_default_branch_only", + "type": "boolean", + "required": false, + "description": "Set to true to fork only the default branch of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "new_fork_name", + "type": "string", + "required": false, + "description": "Specify a new name for the forked repository when forking an existing repository.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": false, + "description": "Optional. Specify the organization name to fork into. If not provided, the fork will default to the user's account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-fork'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubFork", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "fork_default_branch_only": { + "value": true, + "type": "boolean", + "required": false + }, + "new_fork_name": { + "value": "my-forked-repo", + "type": "string", + "required": false + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubIssue", + "qualifiedName": "GithubApi.CreateGithubIssue", + "fullyQualifiedName": "GithubApi.CreateGithubIssue@1.0.0", + "description": "Create a new issue in a GitHub repository.\n\n Use this tool to create a new issue in a specific GitHub repository. This can be done by any user with pull access to the repository. Note that if issues are disabled for the repository, a 410 status will be returned. Be cautious of triggering secondary rate limits by creating content too quickly.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the GitHub repository. Provide the username or organization name, case insensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository. Case insensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubIssue", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"New Issue\", \"body\": \"Description of the issue.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubLabel", + "qualifiedName": "GithubApi.CreateGithubLabel", + "fullyQualifiedName": "GithubApi.CreateGithubLabel@1.0.0", + "description": "Creates a label in a specified GitHub repository.\n\nUse this tool to add a new label to a GitHub repository, which can help categorize and manage issues effectively.", + "parameters": [ + { + "name": "label_name", + "type": "string", + "required": true, + "description": "The name of the label, supporting emojis using either native emoji or colon-style markup.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "label_color_hex", + "type": "string", + "required": false, + "description": "The hexadecimal color code for the label, without the leading '#'.", + "enum": null, + "inferrable": true + }, + { + "name": "label_description", + "type": "string", + "required": false, + "description": "A short description of the label, with a maximum of 100 characters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/create-label'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubLabel", + "parameters": { + "label_name": { + "value": "bug 🐛", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "label_color_hex": { + "value": "f00", + "type": "string", + "required": false + }, + "label_description": { + "value": "Indicates a bug in the project", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubMilestone", + "qualifiedName": "GithubApi.CreateGithubMilestone", + "fullyQualifiedName": "GithubApi.CreateGithubMilestone@1.0.0", + "description": "Create a milestone in a GitHub repository.\n\nUse this tool to create a new milestone in a specified GitHub repository, useful for project management and tracking.", + "parameters": [ + { + "name": "milestone_title", + "type": "string", + "required": true, + "description": "The title of the milestone to be created in the GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username or organization name that owns the repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone_description", + "type": "string", + "required": false, + "description": "A text description of the milestone to be created in the GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone_due_date", + "type": "string", + "required": false, + "description": "The due date for the milestone in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone_state", + "type": "string", + "required": false, + "description": "State of the milestone, either 'open' or 'closed'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/create-milestone'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubMilestone", + "parameters": { + "milestone_title": { + "value": "Release v1.0", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example_user", + "type": "string", + "required": true + }, + "milestone_description": { + "value": "Milestone for the first major release.", + "type": "string", + "required": false + }, + "milestone_due_date": { + "value": "2023-12-31T23:59:59Z", + "type": "string", + "required": false + }, + "milestone_state": { + "value": "open", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubOrganization", + "qualifiedName": "GithubApi.CreateGithubOrganization", + "fullyQualifiedName": "GithubApi.CreateGithubOrganization@1.0.0", + "description": "Create a new organization on GitHub.\n\nThis tool is used to create a new organization on GitHub Enterprise. Call it when you need to set up a new organization within a GitHub Enterprise setup.", + "parameters": [ + { + "name": "admin_user_login", + "type": "string", + "required": true, + "description": "The login username of the user designated to manage the new GitHub organization.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_username", + "type": "string", + "required": true, + "description": "The username for the organization in GitHub.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_display_name", + "type": "string", + "required": false, + "description": "The display name for the organization to be created on GitHub.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/create-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubOrganization", + "parameters": { + "admin_user_login": { + "value": "john_doe_92", + "type": "string", + "required": true + }, + "organization_username": { + "value": "tech_innovators", + "type": "string", + "required": true + }, + "organization_display_name": { + "value": "Tech Innovators Inc.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubOrganizationRepo", + "qualifiedName": "GithubApi.CreateGithubOrganizationRepo", + "fullyQualifiedName": "GithubApi.CreateGithubOrganizationRepo@1.0.0", + "description": "Create a new repository in a GitHub organization.\n\n Use this tool to create a new repository within a specified GitHub organization. The user must have appropriate OAuth scopes and be a member of the organization.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": false, + "description": "The name of the GitHub organization where the repository will be created. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubOrganizationRepo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"new-repo\", \"description\": \"A new repository\", \"private\": false}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubOrgVariable", + "qualifiedName": "GithubApi.CreateGithubOrgVariable", + "fullyQualifiedName": "GithubApi.CreateGithubOrgVariable@1.0.0", + "description": "Create an organization variable for GitHub Actions workflows.\n\nCreates an organization variable in GitHub that can be referenced in Actions workflows. Requires an access token with `admin:org` scope or `organization_actions_variables:write` permission for GitHub Apps.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_access_visibility", + "type": "string", + "required": true, + "description": "Type of repositories in the organization that can access the variable: 'all', 'private', or 'selected'.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": true, + "description": "The name of the organization variable to be created. This name will be used to reference the variable in workflows.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_value", + "type": "string", + "required": true, + "description": "The value assigned to the organization variable in GitHub.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_ids_with_variable_access", + "type": "array", + "innerType": "integer", + "required": false, + "description": "List of repository IDs allowed to access the organization variable. Required when 'visibility' is 'selected'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/create-org-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubOrgVariable", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "repository_access_visibility": { + "value": "selected", + "type": "string", + "required": true + }, + "variable_name": { + "value": "MY_SECRET_VAR", + "type": "string", + "required": true + }, + "variable_value": { + "value": "supersecretvalue123", + "type": "string", + "required": true + }, + "repository_ids_with_variable_access": { + "value": [1234567, 2345678], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubOrgWebhook", + "qualifiedName": "GithubApi.CreateGithubOrgWebhook", + "fullyQualifiedName": "GithubApi.CreateGithubOrgWebhook@1.0.0", + "description": "Create a webhook for a GitHub organization.\n\n This tool is used to set up a webhook for a GitHub organization to post payloads in JSON format. Call this tool when you need to automate notifications or integrate with other services based on GitHub events.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": false, + "description": "The name of the GitHub organization. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/create-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubOrgWebhook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"url\":\"https://example.com/webhook\",\"events\":[\"push\",\"pull_request\"],\"active\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubPagesDeployment", + "qualifiedName": "GithubApi.CreateGithubPagesDeployment", + "fullyQualifiedName": "GithubApi.CreateGithubPagesDeployment@1.0.0", + "description": "Create a GitHub Pages deployment for a repository.\n\nUse this tool to deploy a GitHub Pages site for a repository. Requires write permissions or `pages:write` permission for GitHub Apps.", + "parameters": [ + { + "name": "artifact_url", + "type": "string", + "required": true, + "description": "URL of the artifact (.zip or .tar) with static assets for deployment. Must belong to the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "oidc_token_for_deployment", + "type": "string", + "required": true, + "description": "The OIDC token from GitHub Actions used to certify the deployment origin.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "build_version_identifier", + "type": "string", + "required": false, + "description": "A unique string representing the version of the deployment build.", + "enum": null, + "inferrable": true + }, + { + "name": "target_environment_for_deployment", + "type": "string", + "required": false, + "description": "Specify the target environment for the GitHub Pages deployment (e.g., 'production', 'staging').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-pages-deployment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubPagesDeployment", + "parameters": { + "artifact_url": { + "value": "https://github.com/example/repo/releases/download/v1.0.0/assets.zip", + "type": "string", + "required": true + }, + "oidc_token_for_deployment": { + "value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example_owner", + "type": "string", + "required": true + }, + "build_version_identifier": { + "value": "v1.0.0-build123", + "type": "string", + "required": false + }, + "target_environment_for_deployment": { + "value": "production", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubProjectBoard", + "qualifiedName": "GithubApi.CreateGithubProjectBoard", + "fullyQualifiedName": "GithubApi.CreateGithubProjectBoard@1.0.0", + "description": "Create a project board for a GitHub repository.\n\nThis tool creates a project board for a specified GitHub repository. It's useful when you want to organize tasks or issues in the form of a project board within a repository. It returns information about the creation status and any errors due to disabled projects or insufficient privileges.", + "parameters": [ + { + "name": "project_name", + "type": "string", + "required": true, + "description": "The name of the project board to be created in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The username of the account that owns the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "project_description", + "type": "string", + "required": false, + "description": "Provide a descriptive text for the project board to help clarify its purpose and content.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/create-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubProjectBoard", + "parameters": { + "project_name": { + "value": "New Feature Development", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "project_description": { + "value": "This project board is for tracking the development of new features for the upcoming release.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubProjectCard", + "qualifiedName": "GithubApi.CreateGithubProjectCard", + "fullyQualifiedName": "GithubApi.CreateGithubProjectCard@1.0.0", + "description": "Create a project card in a specified GitHub column.\n\n Use this tool to create a new project card in a specified column within a GitHub project. It helps organize tasks or notes in a project on GitHub.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "column_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier of the GitHub project column where the card will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/create-card'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubProjectCard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "column_identifier": { + "value": 1234, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"note\":\"This is a new project card.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubPullRequest", + "qualifiedName": "GithubApi.CreateGithubPullRequest", + "fullyQualifiedName": "GithubApi.CreateGithubPullRequest@1.0.0", + "description": "Create a draft pull request on GitHub repositories.\n\nUse this tool to create a draft pull request on a specified GitHub repository. Requires write access to the head or source branch. Suitable for users with appropriate permissions on public, private or organization-owned repositories.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository for the pull request. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. Case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "source_branch", + "type": "string", + "required": true, + "description": "The name of the branch where your changes are implemented. Use `username:branch` format for cross-repository cases.", + "enum": null, + "inferrable": true + }, + { + "name": "target_branch", + "type": "string", + "required": true, + "description": "The branch name where changes are to be merged. Must be an existing branch in the current repository.", + "enum": null, + "inferrable": true + }, + { + "name": "is_draft", + "type": "boolean", + "required": false, + "description": "Set to true to create the pull request as a draft. See GitHub documentation for more on draft pull requests.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_number_for_conversion", + "type": "integer", + "required": false, + "description": "Specify the issue number in the repository to convert into a pull request. Required unless a title is provided.", + "enum": null, + "inferrable": true + }, + { + "name": "maintainers_can_modify", + "type": "boolean", + "required": false, + "description": "Indicates if maintainers can modify the pull request. Set to true to allow modifications.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_content", + "type": "string", + "required": false, + "description": "The descriptive content or message for the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_title", + "type": "string", + "required": false, + "description": "The title of the new pull request. This is required unless an `issue` is specified.", + "enum": null, + "inferrable": true + }, + { + "name": "source_repository_name", + "type": "string", + "required": false, + "description": "Name of the repository where changes in the pull request were made. Required for cross-repository pull requests within the same organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubPullRequest", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "source_branch": { + "value": "feature-branch", + "type": "string", + "required": true + }, + "target_branch": { + "value": "main", + "type": "string", + "required": true + }, + "is_draft": { + "value": true, + "type": "boolean", + "required": false + }, + "issue_number_for_conversion": { + "value": 42, + "type": "integer", + "required": false + }, + "maintainers_can_modify": { + "value": true, + "type": "boolean", + "required": false + }, + "pull_request_content": { + "value": "This is a draft pull request for review.", + "type": "string", + "required": false + }, + "pull_request_title": { + "value": "Draft: Add new feature", + "type": "string", + "required": false + }, + "source_repository_name": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubPullRequestReview", + "qualifiedName": "GithubApi.CreateGithubPullRequestReview", + "fullyQualifiedName": "GithubApi.CreateGithubPullRequestReview@1.0.0", + "description": "Create a review for a GitHub pull request.\n\n Use this tool to create a review for a specific pull request on GitHub, either in the 'PENDING' state or by submitting it. Ideal for adding comments or feedback on code changes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository (case-insensitive). Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository where the pull request exists, not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_number", + "type": "integer", + "required": false, + "description": "The number that uniquely identifies the pull request for which the review is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/create-review'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubPullRequestReview", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "pull_request_number": { + "value": 42, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"state\":\"approved\",\"comments\":[{\"body\":\"Looks great!\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubRelease", + "qualifiedName": "GithubApi.CreateGithubRelease", + "fullyQualifiedName": "GithubApi.CreateGithubRelease@1.0.0", + "description": "Creates a new release in a specified GitHub repository.\n\nThis tool allows users with push access to create a release in a specified GitHub repository. It triggers notifications and may be subject to rate limiting. Use this tool when you need to publish a new version or release of your software on GitHub.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository on GitHub. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_name_for_release", + "type": "string", + "required": true, + "description": "The name of the tag for the release. This is used to label the GitHub release.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_generate_release_notes", + "type": "boolean", + "required": false, + "description": "Automatically generate the name and body for the release. If 'name' is provided, it is used; otherwise, a name is auto-generated. 'Body' is prepended to generated notes if specified.", + "enum": null, + "inferrable": true + }, + { + "name": "commit_reference", + "type": "string", + "required": false, + "description": "The branch or commit SHA from which the Git tag is created. Defaults to the repo's default branch.", + "enum": null, + "inferrable": true + }, + { + "name": "draft", + "type": "boolean", + "required": false, + "description": "Set to `true` for a draft (unpublished) release, or `false` for a published one.", + "enum": null, + "inferrable": true + }, + { + "name": "mark_as_prerelease", + "type": "boolean", + "required": false, + "description": "Set to `true` for a prerelease, `false` for a full release.", + "enum": null, + "inferrable": true + }, + { + "name": "release_body_text", + "type": "string", + "required": false, + "description": "Text describing the contents of the tag. This is the message or notes for the release, providing context or details about changes.", + "enum": null, + "inferrable": true + }, + { + "name": "release_name", + "type": "string", + "required": false, + "description": "The name of the release. This identifies the release and can be a version or descriptive text.", + "enum": null, + "inferrable": true + }, + { + "name": "set_latest_release", + "type": "boolean", + "required": false, + "description": "Set whether this release should be the latest. Use 'true', 'false', or 'legacy'. Drafts and prereleases cannot be set as latest.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-release'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubRelease", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "tag_name_for_release": { + "value": "v1.0.0", + "type": "string", + "required": true + }, + "auto_generate_release_notes": { + "value": true, + "type": "boolean", + "required": false + }, + "commit_reference": { + "value": "main", + "type": "string", + "required": false + }, + "draft": { + "value": false, + "type": "boolean", + "required": false + }, + "mark_as_prerelease": { + "value": false, + "type": "boolean", + "required": false + }, + "release_body_text": { + "value": "Initial stable release.", + "type": "string", + "required": false + }, + "release_name": { + "value": "Version 1.0", + "type": "string", + "required": false + }, + "set_latest_release": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubRepoForUser", + "qualifiedName": "GithubApi.CreateGithubRepoForUser", + "fullyQualifiedName": "GithubApi.CreateGithubRepoForUser@1.0.0", + "description": "Create a new GitHub repository for the authenticated user.\n\nThis tool creates a new repository for the authenticated user. It requires appropriate OAuth scopes: `public_repo` or `repo` for public repositories, and `repo` for private repositories.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubRepoForUser", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"my-new-repo\",\"description\":\"A new repository for testing\",\"private\":false}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubRepoVariable", + "qualifiedName": "GithubApi.CreateGithubRepoVariable", + "fullyQualifiedName": "GithubApi.CreateGithubRepoVariable@1.0.0", + "description": "Create a variable for a GitHub repository to use in Actions workflows.\n\nUse this tool to create a repository variable that can be referenced in a GitHub Actions workflow. Ensure that you authenticate with a token having the 'repo' scope, or ensure GitHub Apps have 'actions_variables:write' permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": true, + "description": "The name of the repository variable to create.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_value", + "type": "string", + "required": true, + "description": "The content or data for the repository variable.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/create-repo-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubRepoVariable", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "variable_name": { + "value": "MY_SECRET_VARIABLE", + "type": "string", + "required": true + }, + "variable_value": { + "value": "super_secret_value", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubRepoWebhook", + "qualifiedName": "GithubApi.CreateGithubRepoWebhook", + "fullyQualifiedName": "GithubApi.CreateGithubRepoWebhook@1.0.0", + "description": "Create a webhook for a GitHub repository.\n\n This tool sets up a webhook for a specified GitHub repository, allowing integrations to receive events. Use this when you want to trigger actions in response to repository events.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the GitHub repository. It is case insensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubRepoWebhook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleOwner", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"url\":\"https://example.com/webhook\",\"events\":[\"push\",\"pull_request\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubRequiredWorkflow", + "qualifiedName": "GithubApi.CreateGithubRequiredWorkflow", + "fullyQualifiedName": "GithubApi.CreateGithubRequiredWorkflow@1.0.0", + "description": "Create a required workflow in a GitHub organization.\n\nThis tool creates a required workflow within a specified GitHub organization. It requires an access token with 'admin:org' scope for authentication. Use this tool when setting up or enforcing organizational workflow standards on GitHub.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_identifier", + "type": "string", + "required": true, + "description": "The ID of the repository that contains the workflow file. Use this to specify which repository's workflow file should be used.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_file_path", + "type": "string", + "required": true, + "description": "Path of the workflow file to set as required for the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_ids_for_selected_scope", + "type": "array", + "innerType": "integer", + "required": false, + "description": "List of repository IDs to enable the workflow when `scope` is 'selected'.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_scope", + "type": "string", + "required": false, + "description": "Specify whether to enable the required workflow for all repositories or only selected ones within the organization. Use 'all' for all repositories and 'selected' when specifying particular repositories.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/create-required-workflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubRequiredWorkflow", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "repository_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "workflow_file_path": { + "value": ".github/workflows/ci.yml", + "type": "string", + "required": true + }, + "repository_ids_for_selected_scope": { + "value": [123456, 789012], + "type": "array", + "required": false + }, + "workflow_scope": { + "value": "selected", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubScopedToken", + "qualifiedName": "GithubApi.CreateGithubScopedToken", + "fullyQualifiedName": "GithubApi.CreateGithubScopedToken@1.0.0", + "description": "Create a GitHub repository and permission scoped token.\n\n This tool generates a repository and/or permission scoped user-to-server access token for GitHub. It requires a non-scoped token and the client's Basic Authentication details. Use this when specific repository access or permission is needed for an app.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "github_client_id", + "type": "string", + "required": false, + "description": "The client ID of your GitHub app used for authentication. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/scope-token'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubScopedToken", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "github_client_id": { + "value": "1234567890abcdef", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"my-repo\", \"private\": true, \"permissions\": {\"issues\": \"write\", \"pull_requests\": \"read\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubTeam", + "qualifiedName": "GithubApi.CreateGithubTeam", + "fullyQualifiedName": "GithubApi.CreateGithubTeam@1.0.0", + "description": "Create a new team in a GitHub organization.\n\nUse this tool to create a new team within a specified GitHub organization. The authenticated user must be a member or owner of the organization. Upon creation, the user becomes a team maintainer by default.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the GitHub organization where the team will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "team_name", + "type": "string", + "required": true, + "description": "The name of the team to be created. It should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "deprecated_repository_permission", + "type": "string", + "required": false, + "description": "Specifies the permission for new repositories, though it is deprecated. Options are `pull` or `push`.", + "enum": null, + "inferrable": true + }, + { + "name": "ldap_distinguished_name", + "type": "string", + "required": false, + "description": "The distinguished name (DN) of the LDAP entry to map to a team. Ensure LDAP synchronization is enabled.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_team_id", + "type": "integer", + "required": false, + "description": "The numerical ID of the team to assign as the parent for the new team.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_names_to_add_to_team", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of full repository names (e.g., \"organization-name/repository-name\") to associate with the team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_description", + "type": "string", + "required": false, + "description": "A brief description of the team being created. This helps specify the team's purpose or role within the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "team_maintainers_github_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of GitHub IDs for organization members who will become team maintainers.", + "enum": null, + "inferrable": true + }, + { + "name": "team_privacy_level", + "type": "string", + "required": false, + "description": "Specifies if the team is 'secret' or 'closed'. Defaults: 'secret' for non-nested teams, 'closed' for parent/child teams.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubTeam", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "team_name": { + "value": "development-team", + "type": "string", + "required": true + }, + "deprecated_repository_permission": { + "value": "pull", + "type": "string", + "required": false + }, + "ldap_distinguished_name": { + "value": "cn=development,ou=teams,dc=example,dc=com", + "type": "string", + "required": false + }, + "parent_team_id": { + "value": 123, + "type": "integer", + "required": false + }, + "repository_names_to_add_to_team": { + "value": ["example-org/repo1", "example-org/repo2"], + "type": "array", + "required": false + }, + "team_description": { + "value": "This team is responsible for development tasks.", + "type": "string", + "required": false + }, + "team_maintainers_github_ids": { + "value": [456, 789], + "type": "array", + "required": false + }, + "team_privacy_level": { + "value": "closed", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGithubUserProjectBoard", + "qualifiedName": "GithubApi.CreateGithubUserProjectBoard", + "fullyQualifiedName": "GithubApi.CreateGithubUserProjectBoard@1.0.0", + "description": "Create a project board for a GitHub user.\n\nThis tool creates a project board for an authenticated GitHub user. It returns a `410 Gone` status if the user does not have existing classic projects, or `401 Unauthorized` if privileges are insufficient.", + "parameters": [ + { + "name": "project_name", + "type": "string", + "required": true, + "description": "The name for the GitHub project board to be created. It should be a string representing the desired name.", + "enum": null, + "inferrable": true + }, + { + "name": "project_body", + "type": "string", + "required": false, + "description": "The content or description of the GitHub project board. It should be a concise string summarizing the project's purpose or details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/create-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGithubUserProjectBoard", + "parameters": { + "project_name": { + "value": "My Awesome Project Board", + "type": "string", + "required": true + }, + "project_body": { + "value": "This project board is dedicated to tracking the development of my awesome project.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGitReference", + "qualifiedName": "GithubApi.CreateGitReference", + "fullyQualifiedName": "GithubApi.CreateGitReference@1.0.0", + "description": "Create a new reference in a GitHub repository.\n\nUse this tool to create a new reference in a GitHub repository, such as a branch or a tag. Ensure the repository is not empty and contains at least one branch.", + "parameters": [ + { + "name": "full_reference_name", + "type": "string", + "required": true, + "description": "The fully qualified reference name (e.g., 'refs/heads/master'). Must start with 'refs' and include at least two slashes.", + "enum": null, + "inferrable": true + }, + { + "name": "reference_sha", + "type": "string", + "required": true, + "description": "The SHA-1 value for the reference. Required for creating a new reference in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the GitHub repository to create a reference in.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "authentication_token", + "type": "string", + "required": false, + "description": "The GitHub authentication token required to authorize the API request.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'git/create-ref'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGitReference", + "parameters": { + "full_reference_name": { + "value": "refs/heads/feature/new-feature", + "type": "string", + "required": true + }, + "reference_sha": { + "value": "c9c8d4029f89b17a2fc4e9f473e7e3c1b5ac25ee", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "authentication_token": { + "value": "ghp_abcdEFGHijklmnopQRSTuvwxYZ", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGitTag", + "qualifiedName": "GithubApi.CreateGitTag", + "fullyQualifiedName": "GithubApi.CreateGitTag@1.0.0", + "description": "Create a Git tag object on GitHub.\n\nUse this tool to create a Git tag object on GitHub. Note that this does not automatically create the reference to make a tag in the repository; an additional call is required to create the reference. The response includes a verification object with details on the commit's signature verification, providing insights into if and why a signature was verified, or any issues that occurred.", + "parameters": [ + { + "name": "git_object_sha", + "type": "string", + "required": true, + "description": "The SHA of the Git object to tag, typically a commit, tree, or blob.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_message", + "type": "string", + "required": true, + "description": "The message or description for the tag, providing context or details about it.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_name", + "type": "string", + "required": true, + "description": "The name of the tag, typically a version (e.g., 'v0.0.1').", + "enum": null, + "inferrable": true + }, + { + "name": "tag_object_type", + "type": "string", + "required": true, + "description": "Specifies the type of the object being tagged. Acceptable values are 'commit', 'tree', or 'blob'.", + "enum": null, + "inferrable": true + }, + { + "name": "author_of_tag_name", + "type": "string", + "required": false, + "description": "The name of the author of the tag. It should be a string providing the full name.", + "enum": null, + "inferrable": true + }, + { + "name": "tagger_email", + "type": "string", + "required": false, + "description": "The email address of the tag author. This should be in a valid email format.", + "enum": null, + "inferrable": true + }, + { + "name": "tagging_date", + "type": "string", + "required": false, + "description": "The date and time when the object was tagged, in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'git/create-tag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGitTag", + "parameters": { + "git_object_sha": { + "value": "abcd1234efgh5678ijkl9101mnopqrs2tuv3wxyz", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "tag_message": { + "value": "Release version 1.0.0", + "type": "string", + "required": true + }, + "tag_name": { + "value": "v1.0.0", + "type": "string", + "required": true + }, + "tag_object_type": { + "value": "commit", + "type": "string", + "required": true + }, + "author_of_tag_name": { + "value": "John Doe", + "type": "string", + "required": false + }, + "tagger_email": { + "value": "johndoe@example.com", + "type": "string", + "required": false + }, + "tagging_date": { + "value": "2023-10-05T14:30:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGitTree", + "qualifiedName": "GithubApi.CreateGitTree", + "fullyQualifiedName": "GithubApi.CreateGitTree@1.0.0", + "description": "Create or modify a git tree in a GitHub repository.\n\n Use this tool to create or modify a tree structure in a specified GitHub repository. It is useful for organizing files and directories within a repository's tree. Note that after creating or modifying a tree, you must commit the changes and update the branch reference.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The GitHub account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'git/create-tree'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGitTree", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"tree\":[{\"path\":\"file.txt\",\"mode\":\"blob\",\"content\":\"Hello, World!\"}],\"base_tree\":null}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGlobalWebhook", + "qualifiedName": "GithubApi.CreateGlobalWebhook", + "fullyQualifiedName": "GithubApi.CreateGlobalWebhook@1.0.0", + "description": "Create a global webhook in GitHub Enterprise Admin.\n\nUse this tool to create a global webhook for GitHub Enterprise. It should be called when you need to set up notifications for all repositories across the organization.", + "parameters": [ + { + "name": "payload_delivery_url", + "type": "string", + "required": true, + "description": "The destination URL where the webhook payloads will be delivered. Ensure this URL is accessible and properly configured to handle incoming requests.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_type", + "type": "string", + "required": true, + "description": "Specifies the type of webhook. Must be set to \"web\".", + "enum": null, + "inferrable": true + }, + { + "name": "hmac_key_for_signature", + "type": "string", + "required": false, + "description": "The key for generating the HMAC hex digest in the X-Hub-Signature header. Optional.", + "enum": null, + "inferrable": true + }, + { + "name": "payload_content_type", + "type": "string", + "required": false, + "description": "Specifies the media type for payload serialization. Options: 'json', 'form'. Default is 'form'.", + "enum": null, + "inferrable": true + }, + { + "name": "send_notifications", + "type": "boolean", + "required": false, + "description": "Set to `true` to send notifications when the webhook is triggered.", + "enum": null, + "inferrable": true + }, + { + "name": "ssl_verification", + "type": "string", + "required": false, + "description": "Set '0' to verify SSL certificate of the host for the URL; '1' to skip verification. Default is '0'. Avoid setting to '1' to prevent security risks.", + "enum": null, + "inferrable": true + }, + { + "name": "trigger_events", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of events that trigger the webhook. Default events are `user` and `organization`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/create-global-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateGlobalWebhook", + "parameters": { + "payload_delivery_url": { + "value": "https://example.com/webhook-handler", + "type": "string", + "required": true + }, + "webhook_type": { + "value": "web", + "type": "string", + "required": true + }, + "hmac_key_for_signature": { + "value": "abcd1234efgh5678", + "type": "string", + "required": false + }, + "payload_content_type": { + "value": "json", + "type": "string", + "required": false + }, + "send_notifications": { + "value": true, + "type": "boolean", + "required": false + }, + "ssl_verification": { + "value": "0", + "type": "string", + "required": false + }, + "trigger_events": { + "value": ["push", "pull_request"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateImpersonationOauthToken", + "qualifiedName": "GithubApi.CreateImpersonationOauthToken", + "fullyQualifiedName": "GithubApi.CreateImpersonationOauthToken@1.0.0", + "description": "Create an impersonation OAuth token for a GitHub user.\n\nThis tool is used to generate an impersonation OAuth token for a specified GitHub user, typically for enterprise administration purposes. It should be called when there is a need to access a user's resources on their behalf in an enterprise GitHub environment.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user account handle for which to create the impersonation OAuth token.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_scopes_list", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of scopes defining the permissions for the OAuth token. Each scope is a string representing a specific set of access rights. Refer to [scopes documentation](https://docs.github.com/enterprise-server@3.8/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/) for valid options.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/create-impersonation-o-auth-token'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateImpersonationOauthToken", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "oauth_scopes_list": { + "value": ["repo", "read:org", "workflow"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOrgProjectGithub", + "qualifiedName": "GithubApi.CreateOrgProjectGithub", + "fullyQualifiedName": "GithubApi.CreateOrgProjectGithub@1.0.0", + "description": "Create a project board for a GitHub organization.\n\nThis tool creates a project board within a specified GitHub organization. It should be called when you need to set up a new project board for organizational tasks. It returns details about the created project or errors if projects are disabled, insufficient privileges are available, or the organization lacks classic projects.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "project_name", + "type": "string", + "required": true, + "description": "The name of the project board to be created. It will serve as the identifier for the project within the organization. Must be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "project_description", + "type": "string", + "required": false, + "description": "The description of the project to be created for the GitHub organization. This should be a clear and concise explanation of the project's purpose.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/create-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateOrgProjectGithub", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "project_name": { + "value": "New Project Board", + "type": "string", + "required": true + }, + "project_description": { + "value": "This project board is designed for tracking organizational tasks and progress.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOrgRunnerRegistrationToken", + "qualifiedName": "GithubApi.CreateOrgRunnerRegistrationToken", + "fullyQualifiedName": "GithubApi.CreateOrgRunnerRegistrationToken@1.0.0", + "description": "Generate a registration token for GitHub organization runners.\n\nUse this tool to obtain a registration token for configuring a self-hosted runner in a GitHub organization. The token is valid for one hour and requires authentication with an access token having the 'admin:org' scope.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. This is not case-sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/create-registration-token-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateOrgRunnerRegistrationToken", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOrUpdateGithubRepoSecret", + "qualifiedName": "GithubApi.CreateOrUpdateGithubRepoSecret", + "fullyQualifiedName": "GithubApi.CreateOrUpdateGithubRepoSecret@1.0.0", + "description": "Create or update a GitHub repository secret with an encrypted value.\n\nUse this tool to create or update a secret in a GitHub repository by providing an encrypted value. Requires authentication with a token having the `repo` scope or GitHub App permissions. Useful for managing sensitive information in repositories.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the secret to create or update in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "encrypted_secret_value", + "type": "string", + "required": false, + "description": "The secret's value encrypted with LibSodium using a repository's public key.", + "enum": null, + "inferrable": true + }, + { + "name": "encryption_key_id", + "type": "string", + "required": false, + "description": "Provide the ID of the key used to encrypt the secret.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/create-or-update-repo-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateOrUpdateGithubRepoSecret", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "secret_name": { + "value": "MY_SECRET_KEY", + "type": "string", + "required": true + }, + "encrypted_secret_value": { + "value": "gAAAAABgEVZj3VHcZ...", + "type": "string", + "required": false + }, + "encryption_key_id": { + "value": "1234567890abcdef", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOrUpdateOrgSecret", + "qualifiedName": "GithubApi.CreateOrUpdateOrgSecret", + "fullyQualifiedName": "GithubApi.CreateOrUpdateOrgSecret@1.0.0", + "description": "Create or update an organization's secret on GitHub.\n\nUse this tool to create or update a secret within a GitHub organization using an encrypted value. The secret must be encrypted with LibSodium, and authentication requires a token with 'admin:org' scope. GitHub Apps need 'secrets' organization permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_visibility", + "type": "string", + "required": true, + "description": "Specifies which type of organization repositories have access to the organization secret. Choices are 'all', 'private', or 'selected'.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the secret. It's used to identify the secret within the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "encrypted_secret_value", + "type": "string", + "required": false, + "description": "The secret's encrypted value using LibSodium and a GitHub org public key.", + "enum": null, + "inferrable": true + }, + { + "name": "encryption_key_id", + "type": "string", + "required": false, + "description": "The ID of the public key used to encrypt the secret. This must match the key used during encryption.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_ids_for_secret_access", + "type": "array", + "innerType": "integer", + "required": false, + "description": "Array of repository ids allowed access to the secret. Provide only when `visibility` is `selected`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/create-or-update-org-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateOrUpdateOrgSecret", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "repository_visibility": { + "value": "selected", + "type": "string", + "required": true + }, + "secret_name": { + "value": "GIT_SERVER_URL", + "type": "string", + "required": true + }, + "encrypted_secret_value": { + "value": "someEncryptedValue123", + "type": "string", + "required": false + }, + "encryption_key_id": { + "value": "keyId12345", + "type": "string", + "required": false + }, + "repository_ids_for_secret_access": { + "value": [123456, 789012], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePreReceiveEnvironment", + "qualifiedName": "GithubApi.CreatePreReceiveEnvironment", + "fullyQualifiedName": "GithubApi.CreatePreReceiveEnvironment@1.0.0", + "description": "Create a new pre-receive environment on GitHub Enterprise.\n\nThis tool is used to create a pre-receive environment in GitHub Enterprise. It should be called when you need to set up an environment for pre-receive hooks.", + "parameters": [ + { + "name": "pre_receive_environment_name", + "type": "string", + "required": true, + "description": "The name of the new pre-receive environment to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "tarball_download_url", + "type": "string", + "required": true, + "description": "URL to download the tarball for the pre-receive environment setup.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/create-pre-receive-environment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreatePreReceiveEnvironment", + "parameters": { + "pre_receive_environment_name": { + "value": "my-pre-receive-env", + "type": "string", + "required": true + }, + "tarball_download_url": { + "value": "https://example.com/downloads/pre-receive-env.tar.gz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePreReceiveHook", + "qualifiedName": "GithubApi.CreatePreReceiveHook", + "fullyQualifiedName": "GithubApi.CreatePreReceiveHook@1.0.0", + "description": "Create a pre-receive hook for GitHub enterprise administration.\n\nUse this tool when you need to create a pre-receive hook for managing GitHub enterprise repositories. It's crucial for setting up checks before code is accepted.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/create-pre-receive-hook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreatePreReceiveHook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"hook\":\"pre-receive\",\"url\":\"https://example.com/hook\",\"events\":[\"push\"],\"config\":{\"key\":\"value\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateProjectColumn", + "qualifiedName": "GithubApi.CreateProjectColumn", + "fullyQualifiedName": "GithubApi.CreateProjectColumn@1.0.0", + "description": "Create a new column in a GitHub project.\n\nThis tool creates a new column in a specified GitHub project board. Useful for organizing tasks or issues within project management workflows.", + "parameters": [ + { + "name": "column_name", + "type": "string", + "required": true, + "description": "The name of the column to be created in the GitHub project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier for the GitHub project where the column will be created.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/create-column'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateProjectColumn", + "parameters": { + "column_name": { + "value": "To Do", + "type": "string", + "required": true + }, + "project_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePullRequestReviewComment", + "qualifiedName": "GithubApi.CreatePullRequestReviewComment", + "fullyQualifiedName": "GithubApi.CreatePullRequestReviewComment@1.0.0", + "description": "Create a review comment on a GitHub pull request.\n\n This tool is used to create a review comment in the diff of a GitHub pull request. It uses parameters like `line`, `side`, `start_line`, and `start_side` for precise placement of comments in the pull request diff to provide feedback or suggestions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The GitHub username or organization name of the repository owner. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository where the pull request exists. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_number", + "type": "integer", + "required": false, + "description": "The unique number that identifies the pull request within the repository. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/create-review-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreatePullRequestReviewComment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "pull_request_number": { + "value": 42, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"body\": \"Great job on this PR! I have a couple of suggestions.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateReplyToReviewComment", + "qualifiedName": "GithubApi.CreateReplyToReviewComment", + "fullyQualifiedName": "GithubApi.CreateReplyToReviewComment@1.0.0", + "description": "Create a reply to a top-level review comment on a pull request.\n\nThis tool creates a reply to a top-level review comment on a pull request. Users can utilize this tool when they need to respond to review comments made on their pull requests, ensuring proper communication and collaboration. Note that replies to replies are not supported. Creating content too quickly may trigger secondary rate limits.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The number identifying the pull request to reply to.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This name is not case sensitive and identifies the repository where the reply will be posted.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "review_comment_text", + "type": "string", + "required": true, + "description": "The content of the reply to the top-level review comment. This should be a string containing the reply text.", + "enum": null, + "inferrable": true + }, + { + "name": "review_comment_unique_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the top-level review comment you are replying to. Replies to replies are not supported.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/create-reply-for-review-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateReplyToReviewComment", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "review_comment_text": { + "value": "Thank you for your feedback! I'll make the changes you suggested.", + "type": "string", + "required": true + }, + "review_comment_unique_id": { + "value": 1001, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateRepoDependencySnapshot", + "qualifiedName": "GithubApi.CreateRepoDependencySnapshot", + "fullyQualifiedName": "GithubApi.CreateRepoDependencySnapshot@1.0.0", + "description": "Create a snapshot of a repository's dependencies.\n\n This tool creates a new snapshot of a GitHub repository's dependencies. It requires authentication with an access token that has the `repo` scope. Use this tool to capture the current state of a repository's dependencies for analysis or auditing.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the GitHub repository. This name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository to create a dependency snapshot for. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependency-graph/create-repository-snapshot'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateRepoDependencySnapshot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"snapshotId\": \"12345\", \"dependencies\": [{\"name\": \"packageA\", \"version\": \"1.0.0\"}, {\"name\": \"packageB\", \"version\": \"2.3.1\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateRepoFromTemplate", + "qualifiedName": "GithubApi.CreateRepoFromTemplate", + "fullyQualifiedName": "GithubApi.CreateRepoFromTemplate@1.0.0", + "description": "Create a new repository from a template.\n\nUse this tool to create a new GitHub repository using an existing repository template. Specify the template by providing the template owner's and repository's names. Ensure the template is accessible and the necessary OAuth scopes are authorized. This tool is useful when needing to quickly start a new project with predefined settings and structure.", + "parameters": [ + { + "name": "new_repository_name", + "type": "string", + "required": true, + "description": "The name of the new repository to be created using the template.", + "enum": null, + "inferrable": true + }, + { + "name": "template_repository_name", + "type": "string", + "required": true, + "description": "The name of the repository template to use for creating the new repository.", + "enum": null, + "inferrable": true + }, + { + "name": "template_repository_owner", + "type": "string", + "required": true, + "description": "Username or organization name that owns the template repository.", + "enum": null, + "inferrable": true + }, + { + "name": "create_private_repository", + "type": "boolean", + "required": false, + "description": "Set to true to create a private repository, or false to create a public one.", + "enum": null, + "inferrable": true + }, + { + "name": "include_all_branches_from_template", + "type": "boolean", + "required": false, + "description": "Set to true to include files from all branches in the template repository, not just the default branch. Default: false.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_description", + "type": "string", + "required": false, + "description": "A short description of the new GitHub repository to be created from the template.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The organization or user that will own the new repository. Must be a valid organization member if creating under an organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-using-template'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateRepoFromTemplate", + "parameters": { + "new_repository_name": { + "value": "my-new-repo", + "type": "string", + "required": true + }, + "template_repository_name": { + "value": "project-template", + "type": "string", + "required": true + }, + "template_repository_owner": { + "value": "template-user", + "type": "string", + "required": true + }, + "create_private_repository": { + "value": true, + "type": "boolean", + "required": false + }, + "include_all_branches_from_template": { + "value": false, + "type": "boolean", + "required": false + }, + "repository_description": { + "value": "This is a new repository created from a template.", + "type": "string", + "required": false + }, + "repository_owner": { + "value": "my-org", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateRepoRegistrationToken", + "qualifiedName": "GithubApi.CreateRepoRegistrationToken", + "fullyQualifiedName": "GithubApi.CreateRepoRegistrationToken@1.0.0", + "description": "Obtain a registration token for GitHub repository actions.\n\nUse this tool to get a token needed to configure a self-hosted runner for a GitHub repository. The token expires after one hour and requires authentication with a `repo`-scoped token.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Provide the GitHub username or organization name. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/create-registration-token-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateRepoRegistrationToken", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateRepositoryAutolink", + "qualifiedName": "GithubApi.CreateRepositoryAutolink", + "fullyQualifiedName": "GithubApi.CreateRepositoryAutolink@1.0.0", + "description": "Create an autolink reference in a GitHub repository.\n\nUse this tool to create an autolink reference in a GitHub repository, provided you have admin access. It's helpful for linking external resources or references directly from issues and pull requests.", + "parameters": [ + { + "name": "autolink_key_prefix", + "type": "string", + "required": true, + "description": "The prefix that triggers link creation when found in issues, pull requests, or commits.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner_account", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "url_template_for_autolink", + "type": "string", + "required": true, + "description": "URL containing `` for reference. It should match the characters based on `is_alphanumeric` value.", + "enum": null, + "inferrable": true + }, + { + "name": "match_alphanumeric_characters", + "type": "boolean", + "required": false, + "description": "Determines if the autolink reference matches alphanumeric characters. True includes A-Z, 0-9, '-', false matches only numeric characters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-autolink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateRepositoryAutolink", + "parameters": { + "autolink_key_prefix": { + "value": "ISSUE-", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner_account": { + "value": "example-owner", + "type": "string", + "required": true + }, + "url_template_for_autolink": { + "value": "https://external-service.com/issues/", + "type": "string", + "required": true + }, + "match_alphanumeric_characters": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateRepositoryTagProtection", + "qualifiedName": "GithubApi.CreateRepositoryTagProtection", + "fullyQualifiedName": "GithubApi.CreateRepositoryTagProtection@1.0.0", + "description": "Create tag protection for a GitHub repository.\n\nThis tool creates a tag protection state for a repository on GitHub, available only to repository administrators.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_protection_pattern", + "type": "string", + "required": true, + "description": "An optional glob pattern for matching when enforcing tag protection.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-tag-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateRepositoryTagProtection", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "tag_protection_pattern": { + "value": "v[0-9]*", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateRunnerGroupForOrg", + "qualifiedName": "GithubApi.CreateRunnerGroupForOrg", + "fullyQualifiedName": "GithubApi.CreateRunnerGroupForOrg@1.0.0", + "description": "Create a self-hosted runner group for an organization.\n\nThis tool creates a new self-hosted runner group for an organization on GitHub. Requires authentication with an access token having the `admin:org` scope.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_name", + "type": "string", + "required": true, + "description": "Name of the self-hosted runner group to be created. This should be a descriptive and distinct name within your organization.", + "enum": null, + "inferrable": true + }, + { + "name": "accessible_repository_ids", + "type": "array", + "innerType": "integer", + "required": false, + "description": "List of repository IDs that can access the runner group.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_public_repositories", + "type": "boolean", + "required": false, + "description": "Set to true to allow the runner group to be used by public repositories.", + "enum": null, + "inferrable": true + }, + { + "name": "allowed_workflows", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of workflows names the runner group is permitted to run. Considered only if 'restricted_to_workflows' is true.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_selected_workflows", + "type": "boolean", + "required": false, + "description": "Set to true to restrict the runner group to run only the workflows in the selected_workflows array.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_visibility", + "type": "string", + "required": false, + "description": "Specify the visibility of the runner group: 'selected' for individual repositories, 'all' for all repositories, or 'private' for private repositories only.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_ids_to_add", + "type": "array", + "innerType": "integer", + "required": false, + "description": "List of runner IDs to include in the newly created runner group for the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/create-self-hosted-runner-group-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateRunnerGroupForOrg", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "runner_group_name": { + "value": "CI-Runners", + "type": "string", + "required": true + }, + "accessible_repository_ids": { + "value": [12345, 67890], + "type": "array", + "required": false + }, + "allow_public_repositories": { + "value": true, + "type": "boolean", + "required": false + }, + "allowed_workflows": { + "value": ["build", "test"], + "type": "array", + "required": false + }, + "restrict_to_selected_workflows": { + "value": false, + "type": "boolean", + "required": false + }, + "runner_group_visibility": { + "value": "all", + "type": "string", + "required": false + }, + "runner_ids_to_add": { + "value": [101, 202], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSelfHostedRunnerGroup", + "qualifiedName": "GithubApi.CreateSelfHostedRunnerGroup", + "fullyQualifiedName": "GithubApi.CreateSelfHostedRunnerGroup@1.0.0", + "description": "Create a self-hosted runner group for an enterprise.\n\nUse this tool to create a new self-hosted runner group for an enterprise on GitHub. Requires authentication with an access token having the `manage_runners:enterprise` scope.", + "parameters": [ + { + "name": "enterprise_name_or_id", + "type": "string", + "required": true, + "description": "The slug version of the enterprise name or the enterprise ID to identify the enterprise.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_name", + "type": "string", + "required": true, + "description": "Name of the runner group to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_public_repository_use", + "type": "boolean", + "required": false, + "description": "Set to true to allow the runner group to be used by public repositories.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_ids_for_access", + "type": "array", + "innerType": "integer", + "required": false, + "description": "List of IDs for organizations allowed to access the runner group.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_selected_workflows", + "type": "boolean", + "required": false, + "description": "Set to true to restrict the runner group to only the workflows in 'selected_workflows'.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_visibility", + "type": "string", + "required": false, + "description": "Specifies the visibility of the runner group: 'selected' for individual organizations or 'all' for all organizations.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_ids", + "type": "array", + "innerType": "integer", + "required": false, + "description": "List of runner IDs to be added to the new runner group.", + "enum": null, + "inferrable": true + }, + { + "name": "workflows_allowed_for_runner_group", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of workflows the runner group can run. Ignored unless `restricted_to_workflows` is `true`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/create-self-hosted-runner-group-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateSelfHostedRunnerGroup", + "parameters": { + "enterprise_name_or_id": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "runner_group_name": { + "value": "my-runner-group", + "type": "string", + "required": true + }, + "allow_public_repository_use": { + "value": true, + "type": "boolean", + "required": false + }, + "organization_ids_for_access": { + "value": [123, 456], + "type": "array", + "required": false + }, + "restrict_to_selected_workflows": { + "value": false, + "type": "boolean", + "required": false + }, + "runner_group_visibility": { + "value": "selected", + "type": "string", + "required": false + }, + "runner_ids": { + "value": [789, 1011], + "type": "array", + "required": false + }, + "workflows_allowed_for_runner_group": { + "value": ["workflow_1", "workflow_2"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSshSigningKeyGithub", + "qualifiedName": "GithubApi.CreateSshSigningKeyGithub", + "fullyQualifiedName": "GithubApi.CreateSshSigningKeyGithub@1.0.0", + "description": "Create an SSH signing key for your GitHub account.\n\nThis tool allows authenticated users to create an SSH signing key for their GitHub account. Authentication is required via Basic Authentication or OAuth with the `write:ssh_signing_key` scope. It should be used when you need to add SSH signing keys to your GitHub profile.", + "parameters": [ + { + "name": "public_ssh_key", + "type": "string", + "required": true, + "description": "The public SSH key to add to your GitHub account. Check for existing SSH keys before adding.", + "enum": null, + "inferrable": true + }, + { + "name": "ssh_key_title", + "type": "string", + "required": false, + "description": "A descriptive name for the new SSH signing key.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/create-ssh-signing-key-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateSshSigningKeyGithub", + "parameters": { + "public_ssh_key": { + "value": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCyXzZJdWx3qYI9r7MRwPMN45NmhzjC2IQ5mF5dk3bA5f3P6ENSKGHV/UTZ2c7usydb2jFItL0pzZobgO+2BCSCZ8h1ZKAdl1v3xRFnV7mhmtH8zT9MJ2B9x4FlP7gVQ1fPpKr+l3W3YablGpt4Fj077VQ7jdv6fGuZB4unA54Uj3uMdhV9D8ThHsDakn2v2vdT2+E6H5xl0HjFAKpM88KKZVtPxycDu9tVoRtQsb8F_pl6KPzHl658VCf5z4xkrbsyxmUVYA8bc64f1U58tV2Gl+3g7qW+6x5RyXn8x/PqF9g+Zw4dM3+b2DH3cRjE0F82IrsTx5HS0px+MzJ1DcKkCRRRtC5tCGauMOok3jmLqG8hL3GycbYXVUpGbwEPIls1", + "type": "string", + "required": true + }, + "ssh_key_title": { + "value": "My SSH Signing Key", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTeamDiscussionComment", + "qualifiedName": "GithubApi.CreateTeamDiscussionComment", + "fullyQualifiedName": "GithubApi.CreateTeamDiscussionComment@1.0.0", + "description": "Create a new comment on a team discussion in an organization.\n\nUse this tool to add a comment to an existing team discussion in a GitHub organization. This action requires appropriate permissions and will generate notifications. Be mindful of rate limits when using this tool.", + "parameters": [ + { + "name": "comment_body_text", + "type": "string", + "required": true, + "description": "The text content of the comment to be added to the team discussion.", + "enum": null, + "inferrable": true + }, + { + "name": "discussion_number", + "type": "integer", + "required": true, + "description": "The number that identifies the specific discussion within the team to which you want to add a comment.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization where the team discussion is located. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug identifier for the team name within the organization, used to specify which team's discussion to comment on.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/create-discussion-comment-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateTeamDiscussionComment", + "parameters": { + "comment_body_text": { + "value": "This is a comment on the team discussion.", + "type": "string", + "required": true + }, + "discussion_number": { + "value": 42, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "MyOrg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTeamDiscussionGithub", + "qualifiedName": "GithubApi.CreateTeamDiscussionGithub", + "fullyQualifiedName": "GithubApi.CreateTeamDiscussionGithub@1.0.0", + "description": "Create a discussion post on a GitHub team's page.\n\nUse this tool to create a new discussion post on a specified team's page within an organization on GitHub. This requires appropriate OAuth access tokens with the `write:discussion` scope. Be aware that creating content too quickly can lead to rate limiting. This action will trigger notifications associated with the created discussion.", + "parameters": [ + { + "name": "discussion_body_text", + "type": "string", + "required": true, + "description": "The content of the discussion post. Provide detailed text for the discussion body.", + "enum": null, + "inferrable": true + }, + { + "name": "discussion_post_title", + "type": "string", + "required": true, + "description": "The title for the discussion post on the team's page.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization name, not case-sensitive, for which the team discussion will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The unique slug of the team name. This is required to specify which team's page the discussion will be posted on.", + "enum": null, + "inferrable": true + }, + { + "name": "create_private_post", + "type": "boolean", + "required": false, + "description": "Set to `true` to create a private post visible only to team members and maintainers, or `false` for a public post visible to all organization members.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/create-discussion-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.CreateTeamDiscussionGithub", + "parameters": { + "discussion_body_text": { + "value": "This is a detailed discussion about the upcoming changes in our project roadmap. We need everyone's input on the new features and potential challenges we might face.", + "type": "string", + "required": true + }, + "discussion_post_title": { + "value": "Upcoming Project Roadmap Discussion", + "type": "string", + "required": true + }, + "organization_name": { + "value": "OpenAI", + "type": "string", + "required": true + }, + "team_slug": { + "value": "engineering", + "type": "string", + "required": true + }, + "create_private_post": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeclineRepoInvitation", + "qualifiedName": "GithubApi.DeclineRepoInvitation", + "fullyQualifiedName": "GithubApi.DeclineRepoInvitation@1.0.0", + "description": "Decline an invitation to join a GitHub repository.\n\nUse this tool to decline an invitation for an authenticated user to join a specific GitHub repository. It should be called when a user decides not to accept a repository invitation.", + "parameters": [ + { + "name": "invitation_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub repository invitation to decline.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/decline-invitation-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeclineRepoInvitation", + "parameters": { + "invitation_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAdminBranchProtection", + "qualifiedName": "GithubApi.DeleteAdminBranchProtection", + "fullyQualifiedName": "GithubApi.DeleteAdminBranchProtection@1.0.0", + "description": "Remove admin enforcement on a protected branch.\n\nThis tool removes admin enforcement from a protected branch on GitHub. It requires admin or owner permissions for the repository and that branch protection is enabled. Use when you need to disable admin restrictions on a branch.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The exact name of the branch for which admin enforcement will be removed. Wildcards are not allowed.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive and should not include any special characters.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-admin-branch-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteAdminBranchProtection", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBranchProtection", + "qualifiedName": "GithubApi.DeleteBranchProtection", + "fullyQualifiedName": "GithubApi.DeleteBranchProtection@1.0.0", + "description": "Remove protection from a specified GitHub branch.\n\nUse this tool to remove protection from a specific branch in a GitHub repository. Applicable for public repositories under GitHub Free and in both public and private repositories under GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. Ideal for scenarios where branch updates are needed.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The name of the branch to remove protection from. Cannot contain wildcard characters.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-branch-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteBranchProtection", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "username123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCodeScanningAnalysis", + "qualifiedName": "GithubApi.DeleteCodeScanningAnalysis", + "fullyQualifiedName": "GithubApi.DeleteCodeScanningAnalysis@1.0.0", + "description": "Delete a specific code scanning analysis from a GitHub repository.\n\nUse this tool to delete a specific code scanning analysis from a repository on GitHub. Ensure you have the correct access token with the required scope. This tool should be called when you want to remove analyses, particularly in cases where the analysis is marked as deletable. It provides URLs for further deletions, allowing you to manage and maintain analyses effectively.", + "parameters": [ + { + "name": "analysis_id", + "type": "integer", + "required": true, + "description": "The ID of the analysis to delete, obtained from the `GET /repos/{owner}/{repo}/code-scanning/analyses` endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_final_analysis_deletion", + "type": "string", + "required": false, + "description": "Set to 'true' to allow deletion if the analysis is the last in a set, preventing a 400 error.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'code-scanning/delete-analysis'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteCodeScanningAnalysis", + "parameters": { + "analysis_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "allow_final_analysis_deletion": { + "value": "true", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCommitCommentReaction", + "qualifiedName": "GithubApi.DeleteCommitCommentReaction", + "fullyQualifiedName": "GithubApi.DeleteCommitCommentReaction@1.0.0", + "description": "Delete a reaction from a commit comment on GitHub.\n\nUse this tool to delete a specific reaction from a commit comment in a GitHub repository. This is useful when you need to manage or clean up reactions on comments.", + "parameters": [ + { + "name": "comment_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the specific commit comment you want to target.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the reaction to be deleted from a commit comment.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/delete-for-commit-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteCommitCommentReaction", + "parameters": { + "comment_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "reaction_unique_identifier": { + "value": 789012, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCustomRunnerLabel", + "qualifiedName": "GithubApi.DeleteCustomRunnerLabel", + "fullyQualifiedName": "GithubApi.DeleteCustomRunnerLabel@1.0.0", + "description": "Remove a custom label from a self-hosted runner in an organization.\n\nRemoves a specified custom label from a self-hosted runner within an organization and returns the updated list of labels on the runner. Requires authentication with an access token having the `admin:org` scope. If the label is not found, a `404 Not Found` status is returned.", + "parameters": [ + { + "name": "custom_label_name", + "type": "string", + "required": true, + "description": "The name of the custom label to remove from the self-hosted runner.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_identifier", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner. Must be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/remove-custom-label-from-self-hosted-runner-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteCustomRunnerLabel", + "parameters": { + "custom_label_name": { + "value": "high-performance", + "type": "string", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "runner_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteDeploymentBranchPolicy", + "qualifiedName": "GithubApi.DeleteDeploymentBranchPolicy", + "fullyQualifiedName": "GithubApi.DeleteDeploymentBranchPolicy@1.0.0", + "description": "Delete a deployment branch policy for a GitHub environment.\n\nUse this tool to delete a deployment branch policy in a specified environment on GitHub. Authentication with a token having `repo` scope is required, or GitHub Apps must have `administration:write` permission.", + "parameters": [ + { + "name": "branch_policy_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the branch policy to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "The name of the GitHub environment for which the deployment branch policy will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-deployment-branch-policy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteDeploymentBranchPolicy", + "parameters": { + "branch_policy_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGistComment", + "qualifiedName": "GithubApi.DeleteGistComment", + "fullyQualifiedName": "GithubApi.DeleteGistComment@1.0.0", + "description": "Delete a comment from a GitHub gist.\n\nThis tool deletes a specific comment from a GitHub gist when provided with the gist and comment IDs. It should be called when a user needs to remove an undesired or outdated comment.", + "parameters": [ + { + "name": "comment_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the comment to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "gist_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the specific GitHub gist from which the comment is to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/delete-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGistComment", + "parameters": { + "comment_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "gist_identifier": { + "value": "abcde12345fghij67890klmnop", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubActionsCache", + "qualifiedName": "GithubApi.DeleteGithubActionsCache", + "fullyQualifiedName": "GithubApi.DeleteGithubActionsCache@1.0.0", + "description": "Delete a GitHub Actions cache by ID for a repository.\n\nUse this tool to delete a specific GitHub Actions cache from a repository using its cache ID. Requires authentication with a token having `repo` scope. Useful for managing and cleaning up repository caches.", + "parameters": [ + { + "name": "github_actions_cache_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub Actions cache to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-actions-cache-by-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubActionsCache", + "parameters": { + "github_actions_cache_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubArtifact", + "qualifiedName": "GithubApi.DeleteGithubArtifact", + "fullyQualifiedName": "GithubApi.DeleteGithubArtifact@1.0.0", + "description": "Deletes a specified GitHub artifact.\n\nUse this tool to delete an artifact from a GitHub workflow run. Authentication with an access token having the `repo` scope is required, or a GitHub App must have `actions:write` permission.", + "parameters": [ + { + "name": "artifact_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the artifact to be deleted. Must be an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository where the artifact resides. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, case-insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-artifact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubArtifact", + "parameters": { + "artifact_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "ExampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "ExampleOwner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubCommitComment", + "qualifiedName": "GithubApi.DeleteGithubCommitComment", + "fullyQualifiedName": "GithubApi.DeleteGithubCommitComment@1.0.0", + "description": "Deletes a specific commit comment on GitHub.\n\nUse this tool to remove a comment from a commit on a GitHub repository by specifying the owner, repository, and comment ID.", + "parameters": [ + { + "name": "comment_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the commit comment to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-commit-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubCommitComment", + "parameters": { + "comment_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubDeployKey", + "qualifiedName": "GithubApi.DeleteGithubDeployKey", + "fullyQualifiedName": "GithubApi.DeleteGithubDeployKey@1.0.0", + "description": "Delete a deploy key from a GitHub repository.\n\nUse this tool to delete an SSH deploy key from a specified GitHub repository. This is useful when you need to remove access provided by the key or when updating it (as keys are immutable on GitHub).", + "parameters": [ + { + "name": "deploy_key_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the deploy key to be deleted from the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-deploy-key'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubDeployKey", + "parameters": { + "deploy_key_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubDeployment", + "qualifiedName": "GithubApi.DeleteGithubDeployment", + "fullyQualifiedName": "GithubApi.DeleteGithubDeployment@1.0.0", + "description": "Delete a GitHub repository deployment.\n\nDeletes a deployment from a GitHub repository. If there's only one deployment, it can be deleted regardless of status. If multiple deployments exist, only inactive ones can be deleted. Ideal for users with `repo` or `repo_deployment` scopes managing deployments.", + "parameters": [ + { + "name": "deployment_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub deployment to be deleted. This should be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-deployment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubDeployment", + "parameters": { + "deployment_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubEnterpriseUser", + "qualifiedName": "GithubApi.DeleteGithubEnterpriseUser", + "fullyQualifiedName": "GithubApi.DeleteGithubEnterpriseUser@1.0.0", + "description": "Delete a GitHub Enterprise user and their data.\n\nUse this tool to permanently delete a user on GitHub Enterprise, including all their data such as repositories and personal settings. Consider if suspending the user would be a better option before using this tool.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The handle for the GitHub user account to be deleted. Ensure it's the correct user, as this action is irreversible.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/delete-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubEnterpriseUser", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubEnvironmentSecret", + "qualifiedName": "GithubApi.DeleteGithubEnvironmentSecret", + "fullyQualifiedName": "GithubApi.DeleteGithubEnvironmentSecret@1.0.0", + "description": "Delete a GitHub environment secret by name.\n\nThis tool deletes a specific secret from an environment in a GitHub repository. It requires authentication with an access token having the `repo` scope or a GitHub App with `secrets` repository permission. Use this tool to securely manage and remove secrets from your environments.", + "parameters": [ + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "Specify the name of the GitHub environment from which the secret will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the repository to delete the secret from.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name_to_delete", + "type": "string", + "required": true, + "description": "The name of the secret to be deleted from the environment.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-environment-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubEnvironmentSecret", + "parameters": { + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_id": { + "value": 123456789, + "type": "integer", + "required": true + }, + "secret_name_to_delete": { + "value": "DATABASE_PASSWORD", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubEnvVariable", + "qualifiedName": "GithubApi.DeleteGithubEnvVariable", + "fullyQualifiedName": "GithubApi.DeleteGithubEnvVariable@1.0.0", + "description": "Deletes an environment variable in a GitHub repository environment.\n\nThis tool is used to delete an environment variable from a specific environment in a GitHub repository. Authentication with an access token having the `repo` scope is required. GitHub Apps need the `environment:write` permission.", + "parameters": [ + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "The name of the environment from which the variable will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub repository where the environment variable will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": true, + "description": "The name of the environment variable to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-environment-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubEnvVariable", + "parameters": { + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_id": { + "value": 123456789, + "type": "integer", + "required": true + }, + "variable_name": { + "value": "API_KEY", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubFile", + "qualifiedName": "GithubApi.DeleteGithubFile", + "fullyQualifiedName": "GithubApi.DeleteGithubFile@1.0.0", + "description": "Delete a file from a GitHub repository.\n\nThis tool deletes a specified file from a GitHub repository. It should be called when you need to remove a file, ensuring that either committer or author details such as name and email are provided. This action cannot be done concurrently with file creation or updates.", + "parameters": [ + { + "name": "commit_message", + "type": "string", + "required": true, + "description": "The commit message explaining why the file is being deleted. This information is mandatory.", + "enum": null, + "inferrable": true + }, + { + "name": "file_path", + "type": "string", + "required": true, + "description": "The file path in the repository to be deleted. This path is case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "file_sha_to_delete", + "type": "string", + "required": true, + "description": "The SHA of the file to be deleted. This is required to identify the specific file version in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository from which the file will be deleted. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository in a case-insensitive format.", + "enum": null, + "inferrable": true + }, + { + "name": "author_email", + "type": "string", + "required": false, + "description": "Email of the author or committer for the commit. Required if using author or committer details.", + "enum": null, + "inferrable": true + }, + { + "name": "author_name", + "type": "string", + "required": false, + "description": "The name of the author or committer of the commit. Required if 'author' is used.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The name of the branch from which to delete the file. Defaults to the repository's default branch (usually 'master').", + "enum": null, + "inferrable": true + }, + { + "name": "committer_email", + "type": "string", + "required": false, + "description": "The email of the committer for the commit. This is required for deleting a file.", + "enum": null, + "inferrable": true + }, + { + "name": "committer_name", + "type": "string", + "required": false, + "description": "The name of the committer or author of the commit for deleting the file.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-file'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubFile", + "parameters": { + "commit_message": { + "value": "Remove outdated configuration file", + "type": "string", + "required": true + }, + "file_path": { + "value": "config/old_config.yml", + "type": "string", + "required": true + }, + "file_sha_to_delete": { + "value": "abc123def456ghi789jkl012mno345pqrs", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "author_email": { + "value": "author@example.com", + "type": "string", + "required": false + }, + "author_name": { + "value": "John Doe", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "committer_email": { + "value": "committer@example.com", + "type": "string", + "required": false + }, + "committer_name": { + "value": "Jane Smith", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubGist", + "qualifiedName": "GithubApi.DeleteGithubGist", + "fullyQualifiedName": "GithubApi.DeleteGithubGist@1.0.0", + "description": "Delete a GitHub gist by its ID.\n\nUse this tool to delete a specific GitHub gist by providing its gist ID. Useful for managing personal gists on GitHub.", + "parameters": [ + { + "name": "gist_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the GitHub gist to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubGist", + "parameters": { + "gist_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubIssueComment", + "qualifiedName": "GithubApi.DeleteGithubIssueComment", + "fullyQualifiedName": "GithubApi.DeleteGithubIssueComment@1.0.0", + "description": "Delete a specific comment from a GitHub issue.\n\nUse this tool to delete a specific comment from an issue in a GitHub repository. Specify the comment ID, along with the owner and repository names, to remove the comment.", + "parameters": [ + { + "name": "issue_comment_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the comment to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive. Provide the username or organization name.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/delete-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubIssueComment", + "parameters": { + "issue_comment_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubIssueCommentReaction", + "qualifiedName": "GithubApi.DeleteGithubIssueCommentReaction", + "fullyQualifiedName": "GithubApi.DeleteGithubIssueCommentReaction@1.0.0", + "description": "Deletes a reaction from a GitHub issue comment.\n\nUse this tool to remove a specific reaction from an issue comment on GitHub. Provide the necessary repository and comment identifiers to successfully delete the reaction.", + "parameters": [ + { + "name": "issue_comment_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the issue comment from which the reaction will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the reaction to be deleted from the issue comment.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/delete-for-issue-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubIssueCommentReaction", + "parameters": { + "issue_comment_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "reaction_identifier": { + "value": 78910, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubIssueReaction", + "qualifiedName": "GithubApi.DeleteGithubIssueReaction", + "fullyQualifiedName": "GithubApi.DeleteGithubIssueReaction@1.0.0", + "description": "Deletes a reaction from a GitHub issue.\n\nUse this tool to delete a specific reaction on an issue in a GitHub repository. This is useful for managing feedback and maintaining issues without unnecessary reactions.", + "parameters": [ + { + "name": "issue_number", + "type": "integer", + "required": true, + "description": "The number identifying the issue in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the reaction to be deleted from a GitHub issue.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This value is not case sensitive. It identifies which repository the issue belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/delete-for-issue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubIssueReaction", + "parameters": { + "issue_number": { + "value": 123, + "type": "integer", + "required": true + }, + "reaction_identifier": { + "value": 456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubLabel", + "qualifiedName": "GithubApi.DeleteGithubLabel", + "fullyQualifiedName": "GithubApi.DeleteGithubLabel@1.0.0", + "description": "Delete a label from a GitHub repository.\n\nUse this tool to delete a specific label from a GitHub repository. It should be called when you need to remove a label identified by its name from a particular repository, specified by the owner and repository name.", + "parameters": [ + { + "name": "label_name", + "type": "string", + "required": true, + "description": "The name of the label to delete from the repository. It should match the label exactly.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository from which to delete the label. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/delete-label'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubLabel", + "parameters": { + "label_name": { + "value": "bug", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubMilestone", + "qualifiedName": "GithubApi.DeleteGithubMilestone", + "fullyQualifiedName": "GithubApi.DeleteGithubMilestone@1.0.0", + "description": "Delete a milestone from a GitHub repository.\n\nUse this tool to delete a specific milestone from a GitHub repository by providing the repository owner, name, and milestone number.", + "parameters": [ + { + "name": "milestone_identifier", + "type": "integer", + "required": true, + "description": "The unique number that identifies the milestone to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The repository name on GitHub, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. This should match the GitHub username or organization name. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/delete-milestone'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubMilestone", + "parameters": { + "milestone_identifier": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubOrgMigrationArchive", + "qualifiedName": "GithubApi.DeleteGithubOrgMigrationArchive", + "fullyQualifiedName": "GithubApi.DeleteGithubOrgMigrationArchive@1.0.0", + "description": "Delete a previous GitHub organization migration archive.\n\nUse this tool to delete a migration archive for a GitHub organization. Migration archives are automatically deleted after seven days, but you might need to delete them sooner for organizational purposes.", + "parameters": [ + { + "name": "migration_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the migration archive to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'migrations/delete-archive-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubOrgMigrationArchive", + "parameters": { + "migration_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubOrgSecret", + "qualifiedName": "GithubApi.DeleteGithubOrgSecret", + "fullyQualifiedName": "GithubApi.DeleteGithubOrgSecret@1.0.0", + "description": "Deletes a secret from a GitHub organization.\n\nUse this tool to delete a specific secret from a GitHub organization by its name. Requires authentication with an access token with `admin:org` scope or a GitHub App with `secrets` permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the secret to be deleted from the GitHub organization. Ensure the name is correct and case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-org-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubOrgSecret", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "secret_name": { + "value": "ExampleSecret", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubOrgVariable", + "qualifiedName": "GithubApi.DeleteGithubOrgVariable", + "fullyQualifiedName": "GithubApi.DeleteGithubOrgVariable@1.0.0", + "description": "Delete an organization's variable on GitHub.\n\nDeletes a specified variable from an organization on GitHub. Requires authentication with an access token with the `admin:org` scope, or GitHub App with `organization_actions_variables:write` permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": true, + "description": "The name of the organization variable to delete. It should be a string matching the variable's identifier.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-org-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubOrgVariable", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "variable_name": { + "value": "EXAMPLE_VARIABLE", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubPagesSite", + "qualifiedName": "GithubApi.DeleteGithubPagesSite", + "fullyQualifiedName": "GithubApi.DeleteGithubPagesSite@1.0.0", + "description": "Delete a GitHub Pages site from a repository.\n\nUse this tool to delete a GitHub Pages site from a specified repository. Requires repository admin or maintainer permissions with appropriate GitHub token scopes.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository from which to delete the GitHub Pages site. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. Case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-pages-site'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubPagesSite", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubPersonalAccessToken", + "qualifiedName": "GithubApi.DeleteGithubPersonalAccessToken", + "fullyQualifiedName": "GithubApi.DeleteGithubPersonalAccessToken@1.0.0", + "description": "Delete a GitHub personal access token.\n\nDeletes a specified GitHub personal access token. Use when you need to remove a token. If the token is in use, such as being accessed by the token itself, a '403 - Forbidden' status will be returned.", + "parameters": [ + { + "name": "github_token_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub personal access token to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/delete-personal-access-token'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubPersonalAccessToken", + "parameters": { + "github_token_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubProjectColumn", + "qualifiedName": "GithubApi.DeleteGithubProjectColumn", + "fullyQualifiedName": "GithubApi.DeleteGithubProjectColumn@1.0.0", + "description": "Deletes a specific project column on GitHub.\n\nThis tool deletes a specified column from a project on GitHub. It should be called when a user wants to remove a column from their project setup.", + "parameters": [ + { + "name": "project_column_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the GitHub project column to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/delete-column'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubProjectColumn", + "parameters": { + "project_column_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubPublicKey", + "qualifiedName": "GithubApi.DeleteGithubPublicKey", + "fullyQualifiedName": "GithubApi.DeleteGithubPublicKey@1.0.0", + "description": "Delete a public key from GitHub Enterprise.\n\nUse this tool to delete a specific public key from a GitHub Enterprise account. This should be called when an obsolete or compromised key needs to be removed.", + "parameters": [ + { + "name": "public_key_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the public key to delete from GitHub Enterprise.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/delete-public-key'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubPublicKey", + "parameters": { + "public_key_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubPullRequestPendingReview", + "qualifiedName": "GithubApi.DeleteGithubPullRequestPendingReview", + "fullyQualifiedName": "GithubApi.DeleteGithubPullRequestPendingReview@1.0.0", + "description": "Delete a pending review for a GitHub pull request.\n\nUse this tool to delete a pending review from a specified pull request on GitHub.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The number identifying the specific pull request to delete the pending review from.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner_name", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_review_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the pending GitHub review to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/delete-pending-review'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubPullRequestPendingReview", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner_name": { + "value": "example-user", + "type": "string", + "required": true + }, + "unique_review_identifier": { + "value": 7, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubRelease", + "qualifiedName": "GithubApi.DeleteGithubRelease", + "fullyQualifiedName": "GithubApi.DeleteGithubRelease@1.0.0", + "description": "Delete a GitHub release with push access permissions.\n\nCall this tool to delete a release from a GitHub repository if you have push access. It removes the specified release identified by its release ID in the given repository.", + "parameters": [ + { + "name": "release_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub release to delete. This is an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It's not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-release'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubRelease", + "parameters": { + "release_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubRepoAutolink", + "qualifiedName": "GithubApi.DeleteGithubRepoAutolink", + "fullyQualifiedName": "GithubApi.DeleteGithubRepoAutolink@1.0.0", + "description": "Delete an autolink reference from a GitHub repository.\n\nUse this tool to delete a specific autolink reference from a GitHub repository by providing the repository owner, repository name, and autolink ID. This action is restricted to repository administrators.", + "parameters": [ + { + "name": "autolink_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the autolink to be deleted from the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-autolink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubRepoAutolink", + "parameters": { + "autolink_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubRepoSecret", + "qualifiedName": "GithubApi.DeleteGithubRepoSecret", + "fullyQualifiedName": "GithubApi.DeleteGithubRepoSecret@1.0.0", + "description": "Deletes a secret from a GitHub repository.\n\nUse this tool to remove a specific secret from a GitHub repository by providing the secret's name. Authentication with a `repo`-scoped access token is required. GitHub Apps need the `secrets` permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The specific name of the secret to delete from the repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-repo-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubRepoSecret", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "secret_name": { + "value": "my_secret", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubRepository", + "qualifiedName": "GithubApi.DeleteGithubRepository", + "fullyQualifiedName": "GithubApi.DeleteGithubRepository@1.0.0", + "description": "Deletes a specified GitHub repository.\n\nUse this tool to delete a GitHub repository when you have admin access and the necessary permissions. Ensure that OAuth is used with the 'delete_repo' scope if required. Be aware of organization-level restrictions that might prohibit deletion.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository you want to delete. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner_name", + "type": "string", + "required": true, + "description": "The account owner of the repository; not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubRepository", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner_name": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubRepoVariable", + "qualifiedName": "GithubApi.DeleteGithubRepoVariable", + "fullyQualifiedName": "GithubApi.DeleteGithubRepoVariable@1.0.0", + "description": "Delete a repository variable on GitHub using its name.\n\nThis tool deletes a specified variable from a GitHub repository. It requires authentication with an access token that has the 'repo' scope. Suitable for use in managing repository configurations or cleanup tasks.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to delete the variable from. It is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": true, + "description": "The name of the variable to delete from the repository. It should match exactly as stored.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-repo-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubRepoVariable", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "variable_name": { + "value": "API_KEY", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubRequiredWorkflow", + "qualifiedName": "GithubApi.DeleteGithubRequiredWorkflow", + "fullyQualifiedName": "GithubApi.DeleteGithubRequiredWorkflow@1.0.0", + "description": "Deletes a required workflow in a GitHub organization.\n\nUse this tool to delete a specific required workflow configured in a GitHub organization. Requires authentication with an `admin:org` scope access token.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. This is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the required workflow to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-required-workflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubRequiredWorkflow", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "workflow_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubReviewComment", + "qualifiedName": "GithubApi.DeleteGithubReviewComment", + "fullyQualifiedName": "GithubApi.DeleteGithubReviewComment@1.0.0", + "description": "Delete a review comment on a GitHub pull request.\n\nUse this tool to delete a specific review comment on a GitHub pull request. It should be called when you need to remove an unnecessary or incorrect comment. Requires the repository owner, repository name, and the comment ID.", + "parameters": [ + { + "name": "comment_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the review comment to delete. This must be an integer and corresponds to the specific comment you intend to remove from the GitHub pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository, case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/delete-review-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubReviewComment", + "parameters": { + "comment_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubSshSigningKey", + "qualifiedName": "GithubApi.DeleteGithubSshSigningKey", + "fullyQualifiedName": "GithubApi.DeleteGithubSshSigningKey@1.0.0", + "description": "Delete an SSH signing key from your GitHub account.\n\nCall this tool to remove an SSH signing key from the authenticated user's GitHub account. Authentication is required via Basic Authentication or OAuth with the `admin:ssh_signing_key` scope.", + "parameters": [ + { + "name": "ssh_signing_key_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the SSH signing key to delete. It must be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/delete-ssh-signing-key-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubSshSigningKey", + "parameters": { + "ssh_signing_key_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubTeamDiscussionReaction", + "qualifiedName": "GithubApi.DeleteGithubTeamDiscussionReaction", + "fullyQualifiedName": "GithubApi.DeleteGithubTeamDiscussionReaction@1.0.0", + "description": "Delete a reaction from a GitHub team discussion.\n\nUse this tool to delete a reaction from a specific team discussion on GitHub. Requires appropriate OAuth scope: `write:discussion`.", + "parameters": [ + { + "name": "discussion_number", + "type": "integer", + "required": true, + "description": "The number that identifies the GitHub team discussion to delete a reaction from. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization name. This value is not case sensitive and identifies the GitHub organization.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the specific reaction to be deleted from the discussion.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug (URL-friendly version) of the team name in GitHub, used to identify a team within an organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/delete-for-team-discussion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubTeamDiscussionReaction", + "parameters": { + "discussion_number": { + "value": 42, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "reaction_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubWorkflowRun", + "qualifiedName": "GithubApi.DeleteGithubWorkflowRun", + "fullyQualifiedName": "GithubApi.DeleteGithubWorkflowRun@1.0.0", + "description": "Delete a specific GitHub workflow run.\n\nUse this tool to delete a specific workflow run in a GitHub repository. Requires write access to the repository. For private repositories, an access token with `repo` scope is necessary. GitHub Apps need `actions:write` permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub workflow run to be deleted. This should be an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-workflow-run'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubWorkflowRun", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "workflow_run_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGithubWorkflowRunLogs", + "qualifiedName": "GithubApi.DeleteGithubWorkflowRunLogs", + "fullyQualifiedName": "GithubApi.DeleteGithubWorkflowRunLogs@1.0.0", + "description": "Deletes all logs for a specified workflow run on GitHub.\n\nUse this tool to delete all logs associated with a specific workflow run in a GitHub repository. Authentication with a token having `repo` scope is necessary, and GitHub Apps need `actions:write` permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner_name", + "type": "string", + "required": true, + "description": "The account owner of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the workflow run to delete logs for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-workflow-run-logs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGithubWorkflowRunLogs", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner_name": { + "value": "example-owner", + "type": "string", + "required": true + }, + "workflow_run_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGitReference", + "qualifiedName": "GithubApi.DeleteGitReference", + "fullyQualifiedName": "GithubApi.DeleteGitReference@1.0.0", + "description": "Deletes a specified Git reference in a repository.\n\nUse this tool to delete a specific Git reference from a repository on GitHub. It is useful for managing and cleaning up branches, tags, or other references in a repository.", + "parameters": [ + { + "name": "git_reference_to_delete", + "type": "string", + "required": true, + "description": "The Git reference to delete, such as a branch or tag name. This should match the exact format used in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to delete the reference from. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username of the repository owner. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'git/delete-ref'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGitReference", + "parameters": { + "git_reference_to_delete": { + "value": "feature/awesome-feature", + "type": "string", + "required": true + }, + "repository_name": { + "value": "my-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "my-username", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGlobalWebhook", + "qualifiedName": "GithubApi.DeleteGlobalWebhook", + "fullyQualifiedName": "GithubApi.DeleteGlobalWebhook@1.0.0", + "description": "Delete a global webhook in GitHub Enterprise.\n\nUse this tool to delete a global webhook in a GitHub Enterprise setup. It should be called when there's a need to remove a webhook that is no longer required.", + "parameters": [ + { + "name": "webhook_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the global webhook to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/delete-global-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteGlobalWebhook", + "parameters": { + "webhook_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteImpersonationOauthToken", + "qualifiedName": "GithubApi.DeleteImpersonationOauthToken", + "fullyQualifiedName": "GithubApi.DeleteImpersonationOauthToken@1.0.0", + "description": "Deletes an impersonation OAuth token for a user in GitHub Enterprise Admin.\n\nUse this tool to remove an OAuth token for a specific user's impersonation in GitHub Enterprise Admin. This is useful for security and access management in organization environments.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user account handle for which the impersonation OAuth token will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/delete-impersonation-o-auth-token'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteImpersonationOauthToken", + "parameters": { + "github_user_handle": { + "value": "john_doe_123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteOrgWebhook", + "qualifiedName": "GithubApi.DeleteOrgWebhook", + "fullyQualifiedName": "GithubApi.DeleteOrgWebhook@1.0.0", + "description": "Delete a webhook from a GitHub organization.\n\nUse this tool to delete a specific webhook from a GitHub organization by specifying the organization and webhook ID.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the webhook to be deleted. It should be provided as an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/delete-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteOrgWebhook", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "webhook_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeletePreReceiveEnvironment", + "qualifiedName": "GithubApi.DeletePreReceiveEnvironment", + "fullyQualifiedName": "GithubApi.DeletePreReceiveEnvironment@1.0.0", + "description": "Delete a specified pre-receive environment in GitHub Enterprise.\n\nThis tool deletes a specified pre-receive environment by its ID in GitHub Enterprise. If the environment cannot be deleted, a `422 Unprocessable Entity` response is returned with potential error messages indicating that the default environment cannot be modified or deleted, hooks are present, or a download is in progress.", + "parameters": [ + { + "name": "pre_receive_environment_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the pre-receive environment to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/delete-pre-receive-environment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeletePreReceiveEnvironment", + "parameters": { + "pre_receive_environment_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeletePreReceiveHook", + "qualifiedName": "GithubApi.DeletePreReceiveHook", + "fullyQualifiedName": "GithubApi.DeletePreReceiveHook@1.0.0", + "description": "Delete a pre-receive hook from GitHub Enterprise Admin.\n\nThis tool deletes a pre-receive hook from a GitHub Enterprise Server instance. Use it when you need to remove a specific pre-receive hook, identified by its ID, from the administrative settings.", + "parameters": [ + { + "name": "pre_receive_hook_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the pre-receive hook to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/delete-pre-receive-hook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeletePreReceiveHook", + "parameters": { + "pre_receive_hook_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteProjectBoard", + "qualifiedName": "GithubApi.DeleteProjectBoard", + "fullyQualifiedName": "GithubApi.DeleteProjectBoard@1.0.0", + "description": "Deletes a specified project board on GitHub.\n\nUse this tool to delete a GitHub project board with a given project ID. It is useful for managing and cleaning up project boards. If projects are disabled, a `404 Not Found` status will be returned.", + "parameters": [ + { + "name": "project_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub project board to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteProjectBoard", + "parameters": { + "project_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteProjectCard", + "qualifiedName": "GithubApi.DeleteProjectCard", + "fullyQualifiedName": "GithubApi.DeleteProjectCard@1.0.0", + "description": "Delete a project card from GitHub projects.\n\nCall this tool when you need to delete a specific project card from a GitHub project board by providing the card ID.", + "parameters": [ + { + "name": "card_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the project card to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/delete-card'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteProjectCard", + "parameters": { + "card_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeletePullRequestCommentReaction", + "qualifiedName": "GithubApi.DeletePullRequestCommentReaction", + "fullyQualifiedName": "GithubApi.DeletePullRequestCommentReaction@1.0.0", + "description": "Delete a reaction from a pull request comment.\n\nUse this tool to delete a specific reaction from a pull request review comment on GitHub. Ideal for managing or retracting reactions erroneously added.", + "parameters": [ + { + "name": "comment_unique_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the pull request comment to delete a reaction from.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the reaction to delete from the pull request comment.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/delete-for-pull-request-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeletePullRequestCommentReaction", + "parameters": { + "comment_unique_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "reaction_unique_identifier": { + "value": 654321, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "ExampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "ExampleOwner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteReleaseAsset", + "qualifiedName": "GithubApi.DeleteReleaseAsset", + "fullyQualifiedName": "GithubApi.DeleteReleaseAsset@1.0.0", + "description": "Deletes a specific release asset on GitHub.\n\nUse this tool to delete a specified release asset from a GitHub repository. Provide the owner, repository name, and asset ID to perform the deletion.", + "parameters": [ + { + "name": "asset_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub release asset to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-release-asset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteReleaseAsset", + "parameters": { + "asset_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteReleaseReaction", + "qualifiedName": "GithubApi.DeleteReleaseReaction", + "fullyQualifiedName": "GithubApi.DeleteReleaseReaction@1.0.0", + "description": "Delete a reaction from a GitHub release.\n\nUse this tool to delete a specific reaction from a GitHub release by providing the repository owner, repo, release ID, and reaction ID. It should be called when you need to manage reactions on releases.", + "parameters": [ + { + "name": "reaction_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the reaction to be deleted from a release.", + "enum": null, + "inferrable": true + }, + { + "name": "release_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub release. Use this to specify which release's reaction you wish to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This field is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/delete-for-release'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteReleaseReaction", + "parameters": { + "reaction_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "release_id": { + "value": 78910, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteRepoEnvironment", + "qualifiedName": "GithubApi.DeleteRepoEnvironment", + "fullyQualifiedName": "GithubApi.DeleteRepoEnvironment@1.0.0", + "description": "Deletes a specific environment in a GitHub repository.\n\nUse this tool to delete an environment from a repository on GitHub. Authentication with a valid access token is required. Suitable when you need to remove obsolete or unused environments.", + "parameters": [ + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository environment to delete. This field is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This value is not case sensitive. Specify the GitHub username or organization handle that owns the repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-an-environment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteRepoEnvironment", + "parameters": { + "environment_name": { + "value": "staging", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteRepoFromOrgSecret", + "qualifiedName": "GithubApi.DeleteRepoFromOrgSecret", + "fullyQualifiedName": "GithubApi.DeleteRepoFromOrgSecret@1.0.0", + "description": "Remove a repository from a GitHub organization secret.\n\nUse this tool to remove a specific repository from an organization secret in GitHub. This is applicable when the repository access visibility is set to 'selected'. Ensure authentication with an access token that has the 'admin:org' scope. GitHub Apps require 'dependabot_secrets' permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the repository to be removed from the organization secret.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization secret to remove the repository from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/remove-selected-repo-from-org-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteRepoFromOrgSecret", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "repository_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "secret_name": { + "value": "github-actions", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteRepoInvitation", + "qualifiedName": "GithubApi.DeleteRepoInvitation", + "fullyQualifiedName": "GithubApi.DeleteRepoInvitation@1.0.0", + "description": "Delete a repository invitation on GitHub.\n\nUse this tool to delete a specific invitation to collaborate on a GitHub repository. It requires the owner, repository name, and invitation ID to perform the deletion.", + "parameters": [ + { + "name": "invitation_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the repository invitation to be deleted. It must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to delete the invitation from. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-invitation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteRepoInvitation", + "parameters": { + "invitation_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteRepositoryTagProtection", + "qualifiedName": "GithubApi.DeleteRepositoryTagProtection", + "fullyQualifiedName": "GithubApi.DeleteRepositoryTagProtection@1.0.0", + "description": "Deletes a tag protection from a GitHub repository.\n\nThis tool is used to delete a tag protection state within a specified GitHub repository. It is only accessible to repository administrators.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This field is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_protection_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the tag protection to be deleted. Required for identifying which tag protection state to remove.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-tag-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteRepositoryTagProtection", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "tag_protection_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteRepoWebhook", + "qualifiedName": "GithubApi.DeleteRepoWebhook", + "fullyQualifiedName": "GithubApi.DeleteRepoWebhook@1.0.0", + "description": "Delete a webhook from a GitHub repository.\n\nUse this tool to remove a specific webhook from a GitHub repository by providing the repository owner, name, and hook ID. It is helpful for managing webhooks that are no longer needed or require updating.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This name is not case sensitive. Provide the GitHub username or organization name.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the webhook to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteRepoWebhook", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "webhook_identifier": { + "value": 123456789, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteRunnerGroupFromOrganization", + "qualifiedName": "GithubApi.DeleteRunnerGroupFromOrganization", + "fullyQualifiedName": "GithubApi.DeleteRunnerGroupFromOrganization@1.0.0", + "description": "Delete a self-hosted runner group from an organization.\n\nUse this tool to delete a self-hosted runner group from a specified organization on GitHub. Requires authentication with an access token with `admin:org` scope.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization on GitHub. This is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the self-hosted runner group to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-self-hosted-runner-group-from-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteRunnerGroupFromOrganization", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "runner_group_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteScimGroupFromEnterprise", + "qualifiedName": "GithubApi.DeleteScimGroupFromEnterprise", + "fullyQualifiedName": "GithubApi.DeleteScimGroupFromEnterprise@1.0.0", + "description": "Delete a SCIM group from an enterprise.\n\nUse this tool to delete a SCIM group from an enterprise using the GitHub API. Ideal for managing user groups within enterprise accounts.", + "parameters": [ + { + "name": "scim_group_id", + "type": "string", + "required": true, + "description": "The unique identifier of the SCIM group to delete from an enterprise.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/delete-scim-group-from-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteScimGroupFromEnterprise", + "parameters": { + "scim_group_id": { + "value": "grp_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteSelfHostedRunnerGroup", + "qualifiedName": "GithubApi.DeleteSelfHostedRunnerGroup", + "fullyQualifiedName": "GithubApi.DeleteSelfHostedRunnerGroup@1.0.0", + "description": "Delete a self-hosted runner group for an enterprise.\n\nUse this tool to delete a self-hosted runner group from an enterprise. It requires authentication with an access token that has the `manage_runners:enterprise` scope. Call this tool when you need to manage enterprise runner groups on GitHub.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug version of the enterprise name or the enterprise ID to identify which enterprise the runner group belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_id", + "type": "integer", + "required": true, + "description": "Unique identifier for the self-hosted runner group to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/delete-self-hosted-runner-group-from-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteSelfHostedRunnerGroup", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise-name", + "type": "string", + "required": true + }, + "runner_group_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTeamDiscussion", + "qualifiedName": "GithubApi.DeleteTeamDiscussion", + "fullyQualifiedName": "GithubApi.DeleteTeamDiscussion@1.0.0", + "description": "Delete a discussion from a team's page on GitHub.\n\nThis tool deletes a specified discussion from a team's page within an organization on GitHub. It requires an OAuth access token with `write:discussion` scope. Use this tool when you need to remove a discussion from a team's page.", + "parameters": [ + { + "name": "discussion_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the discussion to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization name on GitHub. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug identifier of the team name on GitHub. This is required to specify which team's discussion is to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/delete-discussion-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteTeamDiscussion", + "parameters": { + "discussion_number": { + "value": 123, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTeamDiscussionComment", + "qualifiedName": "GithubApi.DeleteTeamDiscussionComment", + "fullyQualifiedName": "GithubApi.DeleteTeamDiscussionComment@1.0.0", + "description": "Deletes a comment on a team discussion in an organization.\n\nUse this tool to delete a specific comment from a team discussion within a GitHub organization. Ideal for managing discussions and removing unwanted comments. Requires `write:discussion` OAuth scope.", + "parameters": [ + { + "name": "comment_identifier", + "type": "integer", + "required": true, + "description": "The unique number identifying the comment to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "discussion_identifier", + "type": "integer", + "required": true, + "description": "The unique number identifying the discussion for the comment to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name in the organization. Case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/delete-discussion-comment-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteTeamDiscussionComment", + "parameters": { + "comment_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "discussion_identifier": { + "value": 67890, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTeamDiscussionCommentReaction", + "qualifiedName": "GithubApi.DeleteTeamDiscussionCommentReaction", + "fullyQualifiedName": "GithubApi.DeleteTeamDiscussionCommentReaction@1.0.0", + "description": "Delete a reaction from a team discussion comment on GitHub.\n\nUse this tool to delete a reaction from a specific comment in a team discussion on GitHub. You need appropriate OAuth access tokens with `write:discussion` scope. Specify team, organization, discussion, comment, and reaction details to execute.", + "parameters": [ + { + "name": "comment_identifier", + "type": "integer", + "required": true, + "description": "The number that identifies the comment in the team discussion.", + "enum": null, + "inferrable": true + }, + { + "name": "discussion_identifier", + "type": "integer", + "required": true, + "description": "The number identifying the specific discussion in the team.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization name on GitHub. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the reaction to be deleted. This should be an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name, used to identify the team in the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/delete-for-team-discussion-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteTeamDiscussionCommentReaction", + "parameters": { + "comment_identifier": { + "value": 42, + "type": "integer", + "required": true + }, + "discussion_identifier": { + "value": 10, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "exampleOrg", + "type": "string", + "required": true + }, + "reaction_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "team_slug": { + "value": "dev-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTeamInOrg", + "qualifiedName": "GithubApi.DeleteTeamInOrg", + "fullyQualifiedName": "GithubApi.DeleteTeamInOrg@1.0.0", + "description": "Delete a team in a GitHub organization.\n\nUse this tool to delete a team within a GitHub organization. The action requires the user to be an organization owner or team maintainer. Deleting a parent team will also delete its child teams.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the GitHub organization containing the team to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The unique slug identifier of the team within the organization to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/delete-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteTeamInOrg", + "parameters": { + "organization_name": { + "value": "exampleOrg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "dev-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteUserEmail", + "qualifiedName": "GithubApi.DeleteUserEmail", + "fullyQualifiedName": "GithubApi.DeleteUserEmail@1.0.0", + "description": "Delete an email for the authenticated GitHub user.\n\nUse this tool to delete an email address associated with the authenticated user's GitHub account. This action requires user authentication and appropriate permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/delete-email-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteUserEmail", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"email\": \"user@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteUserFromEnterprise", + "qualifiedName": "GithubApi.DeleteUserFromEnterprise", + "fullyQualifiedName": "GithubApi.DeleteUserFromEnterprise@1.0.0", + "description": "Permanently delete a SCIM user from an enterprise account.\n\nThis tool permanently deletes a SCIM user from a GitHub enterprise account. It removes all user data, obfuscates personal information, and deletes associated credentials. This action is irreversible and should be used with caution.", + "parameters": [ + { + "name": "scim_user_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the SCIM user to be permanently deleted from the enterprise.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/delete-user-from-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DeleteUserFromEnterprise", + "parameters": { + "scim_user_identifier": { + "value": "user-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DemoteGithubSiteAdministrator", + "qualifiedName": "GithubApi.DemoteGithubSiteAdministrator", + "fullyQualifiedName": "GithubApi.DemoteGithubSiteAdministrator@1.0.0", + "description": "Demote a GitHub site administrator.\n\nThis tool is used to demote a GitHub site administrator account. It cannot be used to demote your own account. Call this tool when you need to reduce the administrative privileges of a user on GitHub Enterprise.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user account handle to be demoted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/demote-site-administrator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DemoteGithubSiteAdministrator", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DisableCommitSignatureProtection", + "qualifiedName": "GithubApi.DisableCommitSignatureProtection", + "fullyQualifiedName": "GithubApi.DisableCommitSignatureProtection@1.0.0", + "description": "Disable required signed commits on a branch.\n\nThis tool disables required signed commits on a specified branch in a GitHub repository. It requires admin or owner permissions and is applicable when branch protection is enabled.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The name of the branch where you want to disable commit signature protection. Wildcards are not allowed.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-commit-signature-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DisableCommitSignatureProtection", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DisableGithubActionsRepo", + "qualifiedName": "GithubApi.DisableGithubActionsRepo", + "fullyQualifiedName": "GithubApi.DisableGithubActionsRepo@1.0.0", + "description": "Disable GitHub Actions for a specific repo in an organization.\n\nUse this tool to remove a repository from the selected list of repositories enabled for GitHub Actions within an organization. This is applicable when the organization's repository permission policy is set to 'selected'. Authentication with an access token having 'admin:org' scope is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_unique_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the repository to be disabled for GitHub Actions.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/disable-selected-repository-github-actions-organization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DisableGithubActionsRepo", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "repository_unique_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DisableLfsForGithubRepo", + "qualifiedName": "GithubApi.DisableLfsForGithubRepo", + "fullyQualifiedName": "GithubApi.DisableLfsForGithubRepo@1.0.0", + "description": "Disable Git LFS for a specified GitHub repository.\n\nUse this tool to disable Git Large File Storage (LFS) for a specific GitHub repository. Requires admin access.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to disable LFS for. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/disable-lfs-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DisableLfsForGithubRepo", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DisableOrgGithubActions", + "qualifiedName": "GithubApi.DisableOrgGithubActions", + "fullyQualifiedName": "GithubApi.DisableOrgGithubActions@1.0.0", + "description": "Disable GitHub Actions for an organization in an enterprise.\n\nThis tool removes a specified organization from the list enabled for GitHub Actions within an enterprise. It requires the enterprise permission policy for `enabled_organizations` to be set to `selected`, and an access token with `admin:enterprise` scope is needed for authentication. Use this when you need to disable GitHub Actions for an organization in your enterprise.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug version of the enterprise name or the enterprise ID to identify it for the operation.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the organization to disable GitHub Actions for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/disable-selected-organization-github-actions-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DisableOrgGithubActions", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "organization_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DismissPullRequestReview", + "qualifiedName": "GithubApi.DismissPullRequestReview", + "fullyQualifiedName": "GithubApi.DismissPullRequestReview@1.0.0", + "description": "Dismiss a pull request review on GitHub.\n\nThis tool allows you to dismiss a review on a pull request within a GitHub repository. It requires repository administrator privileges or permissions to dismiss reviews on protected branches.", + "parameters": [ + { + "name": "dismissal_message", + "type": "string", + "required": true, + "description": "The message explaining the reason for dismissing the pull request review.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the pull request to dismiss the review for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The username of the repository owner. This is not case sensitive and refers to the account that owns the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "review_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the pull request review to be dismissed.", + "enum": null, + "inferrable": true + }, + { + "name": "dismissal_event", + "type": "string", + "required": false, + "description": "This is a required event type for dismissing a pull request review. Use 'DISMISS' to perform the dismissal action.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/dismiss-review'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DismissPullRequestReview", + "parameters": { + "dismissal_message": { + "value": "This review has been dismissed due to requested changes being implemented.", + "type": "string", + "required": true + }, + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "review_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "dismissal_event": { + "value": "DISMISS", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DownloadGithubMigrationArchive", + "qualifiedName": "GithubApi.DownloadGithubMigrationArchive", + "fullyQualifiedName": "GithubApi.DownloadGithubMigrationArchive@1.0.0", + "description": "Fetch the URL to download a GitHub migration archive.\n\nUse this tool to obtain the URL for downloading a GitHub migration archive as a `tar.gz` file. It includes various repository data and attachments, useful for backing up or migrating GitHub data.", + "parameters": [ + { + "name": "migration_unique_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub migration. This ID is required to fetch the migration archive URL.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'migrations/get-archive-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DownloadGithubMigrationArchive", + "parameters": { + "migration_unique_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DownloadGithubReleaseAsset", + "qualifiedName": "GithubApi.DownloadGithubReleaseAsset", + "fullyQualifiedName": "GithubApi.DownloadGithubReleaseAsset@1.0.0", + "description": "Download binary content of a GitHub release asset.\n\nThis tool downloads the binary content of a specific asset from a GitHub release. It should be called when you need to obtain the asset file from a GitHub repository release. The endpoint returns binary data, and clients must handle 200 or 302 HTTP responses.", + "parameters": [ + { + "name": "asset_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the asset to download from a GitHub release. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-release-asset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DownloadGithubReleaseAsset", + "parameters": { + "asset_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DownloadGithubRepoTarball", + "qualifiedName": "GithubApi.DownloadGithubRepoTarball", + "fullyQualifiedName": "GithubApi.DownloadGithubRepoTarball@1.0.0", + "description": "Retrieve a URL to download a GitHub repository tarball.\n\nThis tool provides a redirect URL for downloading a tar archive of a GitHub repository. If the `:ref` is omitted, it defaults to the repository’s main branch. Note that for private repositories, the link expires after five minutes. Ensure your HTTP framework can follow redirects, or use the 'Location' header for a second GET request.", + "parameters": [ + { + "name": "branch_or_commit_ref", + "type": "string", + "required": true, + "description": "Specify the branch name or commit SHA for the repository. If omitted, the default branch is used.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This input is not case sensitive. Specify the repository whose tarball you want to download.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/download-tarball-archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DownloadGithubRepoTarball", + "parameters": { + "branch_or_commit_ref": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DownloadGithubRepoZip", + "qualifiedName": "GithubApi.DownloadGithubRepoZip", + "fullyQualifiedName": "GithubApi.DownloadGithubRepoZip@1.0.0", + "description": "Retrieve a URL to download a GitHub repository as a zip file.\n\nThis tool retrieves a redirect URL for downloading a zip archive of a specified GitHub repository. If no branch is specified, the repository's default branch will be used. Note that for private repositories, the links expire after five minutes, and empty repositories will return a 404 error.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_reference", + "type": "string", + "required": true, + "description": "Specify the branch, tag, or commit SHA to retrieve the zip archive from. Defaults to the repository's default branch if omitted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/download-zipball-archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DownloadGithubRepoZip", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "repository_reference": { + "value": "main", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DownloadGithubWorkflowJobLogs", + "qualifiedName": "GithubApi.DownloadGithubWorkflowJobLogs", + "fullyQualifiedName": "GithubApi.DownloadGithubWorkflowJobLogs@1.0.0", + "description": "Retrieve a URL to download GitHub workflow job logs.\n\nUse this tool to get a link for downloading logs of a specific GitHub workflow job. The link is a plain text file URL and expires in 1 minute. Users must have read access to the repository. For private repositories, an access token with 'repo' scope is required, or 'actions:read' permission for GitHub Apps.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository (case insensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. Provide the name in a non-case sensitive format.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_job_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub workflow job to download logs for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/download-job-logs-for-workflow-run'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DownloadGithubWorkflowJobLogs", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "workflow_job_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DownloadWorkflowRunLogs", + "qualifiedName": "GithubApi.DownloadWorkflowRunLogs", + "fullyQualifiedName": "GithubApi.DownloadWorkflowRunLogs@1.0.0", + "description": "Get a redirect URL to download workflow run log files.\n\nThis tool retrieves a URL for downloading an archive of log files from a specific GitHub repository workflow run. The link expires after one minute. Use this tool when you need access to the logs for analysis or debugging, ensuring you have the necessary read access or appropriate access token if the repository is private.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This field is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the workflow run to download logs for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/download-workflow-run-logs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.DownloadWorkflowRunLogs", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "workflow_run_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EditGithubReleaseAsset", + "qualifiedName": "GithubApi.EditGithubReleaseAsset", + "fullyQualifiedName": "GithubApi.EditGithubReleaseAsset@1.0.0", + "description": "Edit a GitHub release asset with push access.\n\nThis tool allows users with push access to a GitHub repository to edit details of a release asset, such as its name or description. It should be called when there is a need to update release asset information.", + "parameters": [ + { + "name": "release_asset_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the release asset to update.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "alternate_asset_description", + "type": "string", + "required": false, + "description": "Provide an alternate short description of the release asset, used instead of the filename.", + "enum": null, + "inferrable": true + }, + { + "name": "file_name_of_asset", + "type": "string", + "required": false, + "description": "The file name of the asset. This is used to uniquely identify the asset file for the release.", + "enum": null, + "inferrable": true + }, + { + "name": "release_asset_state", + "type": "string", + "required": false, + "description": "Specifies the state of the release asset. Possible values might include 'uploaded', 'deleted', etc. (API documentation does not explicitly define options).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/update-release-asset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.EditGithubReleaseAsset", + "parameters": { + "release_asset_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "alternate_asset_description": { + "value": "Updated asset description", + "type": "string", + "required": false + }, + "file_name_of_asset": { + "value": "updated_asset.zip", + "type": "string", + "required": false + }, + "release_asset_state": { + "value": "uploaded", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EditGithubReviewComment", + "qualifiedName": "GithubApi.EditGithubReviewComment", + "fullyQualifiedName": "GithubApi.EditGithubReviewComment@1.0.0", + "description": "Edit a review comment on a GitHub pull request.", + "parameters": [ + { + "name": "comment_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub review comment to be edited.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_text", + "type": "string", + "required": true, + "description": "The content of the updated review comment.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/update-review-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.EditGithubReviewComment", + "parameters": { + "comment_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "comment_text": { + "value": "This is the updated review comment.", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EnableGithubActionsForOrg", + "qualifiedName": "GithubApi.EnableGithubActionsForOrg", + "fullyQualifiedName": "GithubApi.EnableGithubActionsForOrg@1.0.0", + "description": "Enable GitHub Actions for a selected organization in an enterprise.\n\nThis tool adds an organization to the list enabled for GitHub Actions within an enterprise. The enterprise's permissions must allow 'selected' organizations. Requires an access token with 'admin:enterprise' scope.", + "parameters": [ + { + "name": "enterprise_slug_or_id", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise to identify it for GitHub Actions enablement. Accepts slug version or enterprise ID.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the organization to enable GitHub Actions. Must be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/enable-selected-organization-github-actions-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.EnableGithubActionsForOrg", + "parameters": { + "enterprise_slug_or_id": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "organization_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EnableGithubActionsForRepo", + "qualifiedName": "GithubApi.EnableGithubActionsForRepo", + "fullyQualifiedName": "GithubApi.EnableGithubActionsForRepo@1.0.0", + "description": "Enable a repository for GitHub Actions in an organization.\n\nAdds a repository to the list of selected repositories enabled for GitHub Actions within an organization. Requires organization permission policy for `enabled_repositories` set to `selected`. Authentication with `admin:org` scope is necessary.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization to enable GitHub Actions for, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the repository to enable for GitHub Actions.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/enable-selected-repository-github-actions-organization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.EnableGithubActionsForRepo", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EnableGitLfs", + "qualifiedName": "GithubApi.EnableGitLfs", + "fullyQualifiedName": "GithubApi.EnableGitLfs@1.0.0", + "description": "Enables Git LFS for a specified repository.\n\nUse this tool to activate Git Large File Storage (LFS) for a given repository. The access token must have the `admin:enterprise` scope.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/enable-lfs-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.EnableGitLfs", + "parameters": { + "repository_name": { + "value": "my-awesome-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "my-github-username", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchCommitInfo", + "qualifiedName": "GithubApi.FetchCommitInfo", + "fullyQualifiedName": "GithubApi.FetchCommitInfo@1.0.0", + "description": "Retrieve details and signature verification for a Git commit.\n\nUse this tool to fetch a Git commit object, including detailed information about the commit and its signature verification status. It's ideal for checking commit integrity and authenticity in a GitHub repository.", + "parameters": [ + { + "name": "commit_sha", + "type": "string", + "required": true, + "description": "The SHA hash of the commit to retrieve details and verification status for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to query. This input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'git/get-commit'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.FetchCommitInfo", + "parameters": { + "commit_sha": { + "value": "3f9e12a4d4a4e82b4dbf87ca339e5b2855de8d9a", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchDeploymentStatusGithub", + "qualifiedName": "GithubApi.FetchDeploymentStatusGithub", + "fullyQualifiedName": "GithubApi.FetchDeploymentStatusGithub@1.0.0", + "description": "Retrieve a deployment status from a GitHub repository.\n\nUsed to view detailed information about a specific deployment status for a deployment in a GitHub repository. Suitable for users with pull access.", + "parameters": [ + { + "name": "deployment_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the deployment to retrieve the status for. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_status_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier for the deployment status in the GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository (case-insensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-deployment-status'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.FetchDeploymentStatusGithub", + "parameters": { + "deployment_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "deployment_status_id": { + "value": 67890, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchGithubActionsCachePolicy", + "qualifiedName": "GithubApi.FetchGithubActionsCachePolicy", + "fullyQualifiedName": "GithubApi.FetchGithubActionsCachePolicy@1.0.0", + "description": "Retrieve the cache usage policy for GitHub Actions in a repository.\n\nThis tool retrieves the GitHub Actions cache usage policy for a specified repository. It requires authentication with an access token that has the `repo` scope. GitHub Apps need the `actions:read` permission to access this endpoint.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-actions-cache-usage-policy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.FetchGithubActionsCachePolicy", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchGithubActionsPerms", + "qualifiedName": "GithubApi.FetchGithubActionsPerms", + "fullyQualifiedName": "GithubApi.FetchGithubActionsPerms@1.0.0", + "description": "Retrieve GitHub Actions permissions for a repository.\n\nUse this tool to get information on whether GitHub Actions is enabled for a repository and what actions are permitted. Requires authentication with a token with `repo` scope or a GitHub App with `administration` repository permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-github-actions-permissions-repository'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.FetchGithubActionsPerms", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchGithubIssueEvent", + "qualifiedName": "GithubApi.FetchGithubIssueEvent", + "fullyQualifiedName": "GithubApi.FetchGithubIssueEvent@1.0.0", + "description": "Retrieve details of a specific GitHub issue event.\n\nUse this tool to fetch information about a specific event related to an issue in a GitHub repository. Provide the owner, repository, and event ID to get detailed event information.", + "parameters": [ + { + "name": "event_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub issue event to retrieve details for. It must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive. Provide the GitHub username or organization name.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/get-event'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.FetchGithubIssueEvent", + "parameters": { + "event_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchGitignoreTemplate", + "qualifiedName": "GithubApi.FetchGitignoreTemplate", + "fullyQualifiedName": "GithubApi.FetchGitignoreTemplate@1.0.0", + "description": "Fetches the raw .gitignore template by name.\n\nUse this tool to retrieve the raw source of a specified .gitignore template from GitHub. It is useful when you need to include or reference specific ignore rules for different development environments.", + "parameters": [ + { + "name": "gitignore_template_name", + "type": "string", + "required": true, + "description": "The name of the .gitignore template to fetch from GitHub. This is required to specify which template's raw content to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gitignore/get-template'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.FetchGitignoreTemplate", + "parameters": { + "gitignore_template_name": { + "value": "Python", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchOpenRepoInvitations", + "qualifiedName": "GithubApi.FetchOpenRepoInvitations", + "fullyQualifiedName": "GithubApi.FetchOpenRepoInvitations@1.0.0", + "description": "List open repository invitations for the authenticated user.\n\nThis tool retrieves all open repository invitations for the currently authenticated GitHub user. It's useful for checking pending repository collaborations.", + "parameters": [ + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to retrieve for open repository invitations.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to display per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-invitations-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.FetchOpenRepoInvitations", + "parameters": { + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchOrgActionsCacheUsage", + "qualifiedName": "GithubApi.FetchOrgActionsCacheUsage", + "fullyQualifiedName": "GithubApi.FetchOrgActionsCacheUsage@1.0.0", + "description": "Fetches GitHub Actions cache usage for a specified organization.\n\nThis tool retrieves the total cache usage of GitHub Actions for a specified organization. The data is updated every 5 minutes. Authentication with the 'read:org' scope is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It should not be case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-actions-cache-usage-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.FetchOrgActionsCacheUsage", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchOrgMigrationArchiveUrl", + "qualifiedName": "GithubApi.FetchOrgMigrationArchiveUrl", + "fullyQualifiedName": "GithubApi.FetchOrgMigrationArchiveUrl@1.0.0", + "description": "Fetches the URL to download an organization's migration archive.\n\nUse this tool to obtain the URL for downloading an archive of a migration for a specific organization on GitHub.", + "parameters": [ + { + "name": "migration_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the specific migration. This should be an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. This value is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'migrations/download-archive-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.FetchOrgMigrationArchiveUrl", + "parameters": { + "migration_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchRepoReadme", + "qualifiedName": "GithubApi.FetchRepoReadme", + "fullyQualifiedName": "GithubApi.FetchRepoReadme@1.0.0", + "description": "Retrieve the README from a specific repository directory.\n\nThis tool retrieves the README file from a specified directory within a GitHub repository. It supports retrieving the content in various formats, including raw text and rendered HTML.", + "parameters": [ + { + "name": "readme_directory_path", + "type": "string", + "required": true, + "description": "The path within the repository to search for the README file. Default is repository root if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This input is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "commit_branch_or_tag_name", + "type": "string", + "required": false, + "description": "The name of the commit, branch, or tag. Defaults to the repository's default branch (usually 'master').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-readme-in-directory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.FetchRepoReadme", + "parameters": { + "readme_directory_path": { + "value": "docs/", + "type": "string", + "required": true + }, + "repository_name": { + "value": "ExampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "commit_branch_or_tag_name": { + "value": "main", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FindGithubLabels", + "qualifiedName": "GithubApi.FindGithubLabels", + "fullyQualifiedName": "GithubApi.FindGithubLabels@1.0.0", + "description": "Search for labels in a GitHub repository by keywords.\n\nUse this tool to find labels in a specific GitHub repository whose names or descriptions match provided search keywords. Ideal for locating labels like 'bug' or 'enhancement' quickly. Returns up to 100 results per page, with optional text match metadata for enhanced search insights.", + "parameters": [ + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "The ID of the repository where labels will be searched.", + "enum": null, + "inferrable": true + }, + { + "name": "search_keywords", + "type": "string", + "required": true, + "description": "Keywords to search for in label names or descriptions. Excludes qualifiers.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number of the search results to fetch. Useful for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of label results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_labels_by", + "type": "string", + "required": false, + "description": "Specifies how to sort the query results by the timestamp fields 'created' or 'updated'. Defaults to 'best match'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Determines if the highest ('desc') or lowest ('asc') matches appear first. Requires 'sort' to be set.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'search/labels'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.FindGithubLabels", + "parameters": { + "repository_id": { + "value": 12345678, + "type": "integer", + "required": true + }, + "search_keywords": { + "value": "bug enhancement", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_labels_by": { + "value": "updated", + "type": "string", + "required": false + }, + "sort_order": { + "value": "desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FollowGithubUser", + "qualifiedName": "GithubApi.FollowGithubUser", + "fullyQualifiedName": "GithubApi.FollowGithubUser@1.0.0", + "description": "Follow a specified user on GitHub.\n\nThis tool allows you to follow a GitHub user. Ensure you are authenticated with the necessary permissions ('user:follow' scope) to execute this action. Useful when you want to keep up with updates from specific users on GitHub.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub username of the account you want to follow. Ensure it is a valid GitHub user handle.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/follow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.FollowGithubUser", + "parameters": { + "github_user_handle": { + "value": "octocat", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ForkGist", + "qualifiedName": "GithubApi.ForkGist", + "fullyQualifiedName": "GithubApi.ForkGist@1.0.0", + "description": "Fork a GitHub gist to your account.\n\nUse this tool to create a fork of an existing GitHub gist into your account. This can be useful for modifying or duplicating code snippets while keeping track of the original version.", + "parameters": [ + { + "name": "gist_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the GitHub gist to be forked. This is required to specify which gist to duplicate.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/fork'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ForkGist", + "parameters": { + "gist_unique_identifier": { + "value": "abc123def456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GenerateGithubReleaseNotes", + "qualifiedName": "GithubApi.GenerateGithubReleaseNotes", + "fullyQualifiedName": "GithubApi.GenerateGithubReleaseNotes@1.0.0", + "description": "Generate release notes for a GitHub repository.\n\nThis tool generates a markdown-formatted name and body for release notes, detailing changes since the last release and contributor information. It's useful when preparing to create a new release but does not save the notes.", + "parameters": [ + { + "name": "release_tag_name", + "type": "string", + "required": true, + "description": "Specify the tag name for the release. Can be an existing tag or a new one.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "previous_tag_name", + "type": "string", + "required": false, + "description": "The name of the previous tag to use as the starting point for the release notes. It specifies the range of changes for this release.", + "enum": null, + "inferrable": true + }, + { + "name": "release_configuration_file_path", + "type": "string", + "required": false, + "description": "Path to the configuration file in the repository for generating release notes. Defaults to '.github/release.yml' or '.github/release.yaml' if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "target_commit", + "type": "string", + "required": false, + "description": "The commitish value that will target the release's tag. Required if tag_name doesn't reference an existing tag. Otherwise, it's ignored.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/generate-release-notes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GenerateGithubReleaseNotes", + "parameters": { + "release_tag_name": { + "value": "v1.2.0", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "previous_tag_name": { + "value": "v1.1.0", + "type": "string", + "required": false + }, + "release_configuration_file_path": { + "value": ".github/release.yml", + "type": "string", + "required": false + }, + "target_commit": { + "value": "abc123def456gh789ij012klmno", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GenerateGithubRunnerRemoveToken", + "qualifiedName": "GithubApi.GenerateGithubRunnerRemoveToken", + "fullyQualifiedName": "GithubApi.GenerateGithubRunnerRemoveToken@1.0.0", + "description": "Generate a token to remove a GitHub self-hosted runner.\n\nThis tool generates a token needed to remove a self-hosted runner from a GitHub repository. The token is valid for one hour. Ensure authentication using an access token with the 'repo' scope before calling this tool.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This should match exactly as it appears on GitHub but is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/create-remove-token-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GenerateGithubRunnerRemoveToken", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAdminBranchProtectionStatus", + "qualifiedName": "GithubApi.GetAdminBranchProtectionStatus", + "fullyQualifiedName": "GithubApi.GetAdminBranchProtectionStatus@1.0.0", + "description": "Get admin branch protection status on GitHub.\n\nUse this tool to fetch the admin branch protection status for a specific branch within a GitHub repository. This is applicable to both public and private repositories across various GitHub plans.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The exact name of the branch. Wildcards are not allowed; use GraphQL API for wildcards.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-admin-branch-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetAdminBranchProtectionStatus", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAdvancedSecurityCommitters", + "qualifiedName": "GithubApi.GetAdvancedSecurityCommitters", + "fullyQualifiedName": "GithubApi.GetAdvancedSecurityCommitters@1.0.0", + "description": "Retrieve GitHub Advanced Security committers for an organization.\n\nUse this tool to obtain details about active committers using GitHub Advanced Security across repositories within a specified organization. This includes the total count of unique committers and repository-level details.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization name for which to retrieve security committers. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch. Useful for paginating through large sets of results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'billing/get-github-advanced-security-billing-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetAdvancedSecurityCommitters", + "parameters": { + "organization_name": { + "value": "example-organization", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllAuthorizedSshKeys", + "qualifiedName": "GithubApi.GetAllAuthorizedSshKeys", + "fullyQualifiedName": "GithubApi.GetAllAuthorizedSshKeys@1.0.0", + "description": "Retrieve all authorized SSH keys for enterprise admin.\n\nUse this tool to fetch a comprehensive list of all SSH keys authorized within an enterprise GitHub environment. Useful for administrators managing access and security.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-all-authorized-ssh-keys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetAllAuthorizedSshKeys", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllGithubCodesOfConduct", + "qualifiedName": "GithubApi.GetAllGithubCodesOfConduct", + "fullyQualifiedName": "GithubApi.GetAllGithubCodesOfConduct@1.0.0", + "description": "Retrieve all GitHub codes of conduct.\n\nCall this tool to get a list of all codes of conduct available on GitHub. Useful for reviewing or selecting a code of conduct for a project.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'codes-of-conduct/get-all-codes-of-conduct'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetAllGithubCodesOfConduct", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllowedActionsForEnterprise", + "qualifiedName": "GithubApi.GetAllowedActionsForEnterprise", + "fullyQualifiedName": "GithubApi.GetAllowedActionsForEnterprise@1.0.0", + "description": "Retrieve the actions allowed in a GitHub enterprise.\n\nThis tool gets the selected actions permitted in a specified enterprise. The enterprise's permission policy must be configured to allow selected actions. Authentication with an access token having the `admin:enterprise` scope is required.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug version or ID of the enterprise to fetch allowed actions for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-allowed-actions-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetAllowedActionsForEnterprise", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllowedActionsForOrganization", + "qualifiedName": "GithubApi.GetAllowedActionsForOrganization", + "fullyQualifiedName": "GithubApi.GetAllowedActionsForOrganization@1.0.0", + "description": "Retrieve the allowed GitHub Actions for an organization.\n\nCall this tool to get the list of selected GitHub Actions permitted for an organization, provided the organization policy is set to allow selected actions only. Requires an authenticated access token with `admin:org` scope or GitHub App with `administration` permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-allowed-actions-organization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetAllowedActionsForOrganization", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllowedActionsForRepo", + "qualifiedName": "GithubApi.GetAllowedActionsForRepo", + "fullyQualifiedName": "GithubApi.GetAllowedActionsForRepo@1.0.0", + "description": "Retrieve allowed GitHub Actions settings for a repository.\n\nUse this tool to fetch the settings for actions that are allowed in a GitHub repository. This is applicable when the repository's policy is set to `selected` for `allowed_actions`. Requires authentication with a token having `repo` scope or GitHub Apps with `administration` permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The username or organization name of the repository owner. Case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-allowed-actions-repository'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetAllowedActionsForRepo", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAppsWithBranchAccess", + "qualifiedName": "GithubApi.GetAppsWithBranchAccess", + "fullyQualifiedName": "GithubApi.GetAppsWithBranchAccess@1.0.0", + "description": "Retrieve GitHub Apps with access to a protected branch.\n\nThis tool lists the GitHub Apps that have push access to a specific protected branch. It should be called when you need to identify which installed GitHub Apps are authorized to interact with a branch under protection.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The name of the branch. Wildcard characters are not allowed; use exact names only.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-apps-with-access-to-protected-branch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetAppsWithBranchAccess", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBranchAccessRestrictions", + "qualifiedName": "GithubApi.GetBranchAccessRestrictions", + "fullyQualifiedName": "GithubApi.GetBranchAccessRestrictions@1.0.0", + "description": "Retrieve access information for a protected branch.\n\nUse this tool to list users, apps, and teams with access to a specified protected branch within an organization-owned repository on GitHub. It provides details about who has permissions to interact with the branch.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The exact name of the branch to retrieve access information for. Wildcard characters are not allowed.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-access-restrictions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetBranchAccessRestrictions", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBranchProtectionStatusChecks", + "qualifiedName": "GithubApi.GetBranchProtectionStatusChecks", + "fullyQualifiedName": "GithubApi.GetBranchProtectionStatusChecks@1.0.0", + "description": "Retrieve status check protections for a GitHub branch.\n\nUse this tool to get information on the status check protections for a specific branch in a GitHub repository. It is useful for ensuring that a branch has the required checks before merging.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The name of the branch. It must not contain wildcard characters.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to check. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-status-checks-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetBranchProtectionStatusChecks", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCodeOfConduct", + "qualifiedName": "GithubApi.GetCodeOfConduct", + "fullyQualifiedName": "GithubApi.GetCodeOfConduct@1.0.0", + "description": "Retrieve a specific code of conduct from GitHub.\n\nThis tool retrieves the details of a specific code of conduct using its unique key from GitHub. It should be called when you need information about a particular community guideline.", + "parameters": [ + { + "name": "conduct_code_key", + "type": "string", + "required": true, + "description": "The unique identifier for the specific code of conduct you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'codes-of-conduct/get-conduct-code'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetCodeOfConduct", + "parameters": { + "conduct_code_key": { + "value": "community-guidelines-2023", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCodeScanningAlert", + "qualifiedName": "GithubApi.GetCodeScanningAlert", + "fullyQualifiedName": "GithubApi.GetCodeScanningAlert@1.0.0", + "description": "Retrieve a single code scanning alert from a GitHub repo.\n\nUse this tool to get detailed information about a specific code scanning alert in a GitHub repository. An access token with appropriate scopes is required for private repositories, and GitHub Apps need read permission for security events.", + "parameters": [ + { + "name": "alert_number", + "type": "integer", + "required": true, + "description": "The unique number identifying a specific code scanning alert on GitHub. Found at the end of the URL for an alert or in the `number` field from the `GET /repos/{owner}/{repo}/code-scanning/alerts` response.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This parameter is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'code-scanning/get-alert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetCodeScanningAlert", + "parameters": { + "alert_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCodeScanningAnalysis", + "qualifiedName": "GithubApi.GetCodeScanningAnalysis", + "fullyQualifiedName": "GithubApi.GetCodeScanningAnalysis@1.0.0", + "description": "Retrieve detailed code scanning analysis for a GitHub repository.\n\nUse this tool to access a specific code scanning analysis for a GitHub repository, including information such as the Git reference, commit SHA, analysis datetime, code scanning tool name, and the number of alerts. It requires appropriate permissions for both private and public repositories.", + "parameters": [ + { + "name": "analysis_id", + "type": "integer", + "required": true, + "description": "The ID number of the code scanning analysis to retrieve for the repository. This ID is obtained from the `GET /repos/{owner}/{repo}/code-scanning/analyses` operation.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "Specify the account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'code-scanning/get-analysis'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetCodeScanningAnalysis", + "parameters": { + "analysis_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCombinedCommitStatus", + "qualifiedName": "GithubApi.GetCombinedCommitStatus", + "fullyQualifiedName": "GithubApi.GetCombinedCommitStatus@1.0.0", + "description": "Retrieve the combined status of a commit for a given reference.\n\nThis tool provides a combined view of commit statuses for a specified reference (SHA, branch, or tag) in a GitHub repository. It is useful for users with pull access who need to verify the overall status of a commit, including whether it is in a 'failure', 'pending', or 'success' state.", + "parameters": [ + { + "name": "reference_specifier", + "type": "string", + "required": true, + "description": "The ref parameter specifying the SHA, branch name, or tag name for the commit status.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is a case-insensitive string.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of commit status results to fetch. Useful for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to include per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-combined-status-for-ref'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetCombinedCommitStatus", + "parameters": { + "reference_specifier": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCommentStatistics", + "qualifiedName": "GithubApi.GetCommentStatistics", + "fullyQualifiedName": "GithubApi.GetCommentStatistics@1.0.0", + "description": "Retrieve comment statistics from GitHub Enterprise.\n\nUse this tool to get detailed statistics about comments in a GitHub Enterprise instance. Useful for analyzing comment activity and engagement across repositories.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-comment-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetCommentStatistics", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCommitActivity", + "qualifiedName": "GithubApi.GetCommitActivity", + "fullyQualifiedName": "GithubApi.GetCommitActivity@1.0.0", + "description": "Fetch yearly commit activity grouped by week.\n\nUse this tool to obtain commit activity statistics for a GitHub repository over the past year, categorized by week. Useful for analyzing commit trends and activity levels.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-commit-activity-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetCommitActivity", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCommitActivityByHour", + "qualifiedName": "GithubApi.GetCommitActivityByHour", + "fullyQualifiedName": "GithubApi.GetCommitActivityByHour@1.0.0", + "description": "Retrieve commit activity per hour for a GitHub repository.\n\nProvides an array with commit activity stats showing the day of the week, hour of the day, and the number of commits for each hour in a specific GitHub repository. Useful for analyzing commit patterns and identifying peak development times.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to analyze. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository; this is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-punch-card-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetCommitActivityByHour", + "parameters": { + "repository_name": { + "value": "sample-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "sample-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCommitDetails", + "qualifiedName": "GithubApi.GetCommitDetails", + "fullyQualifiedName": "GithubApi.GetCommitDetails@1.0.0", + "description": "Retrieve details of a single commit reference.\n\nFetches full details of a specific commit from a repository, including verification status, file diffs, and commit metadata. Useful for checking commit history, signature verification, and differences. Accessing this information requires 'read' access to the repository.", + "parameters": [ + { + "name": "commit_reference", + "type": "string", + "required": true, + "description": "The reference string (branch name, tag, or commit SHA) for the commit to fetch details about.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is not case sensitive and required to identify the repository from which to fetch commit details.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the commit results to fetch from the API. Use for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-commit'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetCommitDetails", + "parameters": { + "commit_reference": { + "value": "abc1234def5678ghi9012jkl", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCommitStatuses", + "qualifiedName": "GithubApi.GetCommitStatuses", + "fullyQualifiedName": "GithubApi.GetCommitStatuses@1.0.0", + "description": "Retrieve commit statuses for a specific ref in a repository.\n\nCall this tool to get the statuses of commits for a specific ref (SHA, branch, or tag) in a GitHub repository. Useful for checking build or test statuses and integrations that provide feedback on commits.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username or organization name that owns the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_reference", + "type": "string", + "required": true, + "description": "The reference for the commit, which can be a SHA, branch name, or tag name. It specifies the ref to fetch statuses for in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number to fetch the results from, useful for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-commit-statuses-for-ref'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetCommitStatuses", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "repository_reference": { + "value": "main", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCommonlyUsedLicenses", + "qualifiedName": "GithubApi.GetCommonlyUsedLicenses", + "fullyQualifiedName": "GithubApi.GetCommonlyUsedLicenses@1.0.0", + "description": "Fetch a list of commonly used software licenses.\n\nRetrieves a collection of the most commonly used open-source software licenses from GitHub.", + "parameters": [ + { + "name": "only_featured_licenses", + "type": "boolean", + "required": false, + "description": "Set to true to return only featured licenses.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch. Use to navigate through pages of results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of licenses to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'licenses/get-all-commonly-used'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetCommonlyUsedLicenses", + "parameters": { + "only_featured_licenses": { + "value": true, + "type": "boolean", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDefaultGithubActionsPermissions", + "qualifiedName": "GithubApi.GetDefaultGithubActionsPermissions", + "fullyQualifiedName": "GithubApi.GetDefaultGithubActionsPermissions@1.0.0", + "description": "Retrieve default GitHub Actions workflow permissions for a repository.\n\nThis tool retrieves the default workflow permissions associated with the `GITHUB_TOKEN` in a specific GitHub repository. It also checks if GitHub Actions can submit approving pull request reviews for that repository. Authentication with an access token having the `repo` scope is required.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository, which is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-github-actions-default-workflow-permissions-repository'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetDefaultGithubActionsPermissions", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDefaultGithubActionsWorkflowPermissions", + "qualifiedName": "GithubApi.GetDefaultGithubActionsWorkflowPermissions", + "fullyQualifiedName": "GithubApi.GetDefaultGithubActionsWorkflowPermissions@1.0.0", + "description": "Fetches default workflow permissions for an organization's GitHub Actions.\n\nThis tool retrieves the default workflow permissions granted to the GITHUB_TOKEN for running workflows in a specified organization, and checks if GitHub Actions can submit approving pull request reviews. Requires authentication with an access token having 'admin:org' scope or 'administration' permission for GitHub Apps.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization name for which to fetch the workflow permissions. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-github-actions-default-workflow-permissions-organization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetDefaultGithubActionsWorkflowPermissions", + "parameters": { + "organization_name": { + "value": "exampleOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDependabotAlert", + "qualifiedName": "GithubApi.GetDependabotAlert", + "fullyQualifiedName": "GithubApi.GetDependabotAlert@1.0.0", + "description": "Retrieve details of a specific Dependabot alert.\n\nUse this tool to get information about a specific Dependabot alert in a GitHub repository. Applicable for both private and public repositories, depending on token scope.", + "parameters": [ + { + "name": "dependabot_alert_number", + "type": "integer", + "required": true, + "description": "The identifier number for the Dependabot alert in the repository. Obtainable from the alert URL or response from `GET /repos/{owner}/{repo}/dependabot/alerts`.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/get-alert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetDependabotAlert", + "parameters": { + "dependabot_alert_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDeploymentBranchPolicy", + "qualifiedName": "GithubApi.GetDeploymentBranchPolicy", + "fullyQualifiedName": "GithubApi.GetDeploymentBranchPolicy@1.0.0", + "description": "Retrieve deployment branch policy for a specific environment.\n\nUse this tool to get the deployment branch policy for a specific environment in a GitHub repository. Requires read access to the repository. For private repositories, an access token with the `repo` scope is needed. GitHub Apps need `actions:read` permission.", + "parameters": [ + { + "name": "branch_policy_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the branch policy in the environment. Should be an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "The name of the environment for which the deployment branch policy is being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. This is case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-deployment-branch-policy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetDeploymentBranchPolicy", + "parameters": { + "branch_policy_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEnterpriseAnnouncementBanner", + "qualifiedName": "GithubApi.GetEnterpriseAnnouncementBanner", + "fullyQualifiedName": "GithubApi.GetEnterpriseAnnouncementBanner@1.0.0", + "description": "Retrieve the global announcement banner for your enterprise.\n\nThis tool fetches the current message and expiration date of the global announcement banner in your enterprise on GitHub. It is useful for administrators who need to check or display the announcement details.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-announcement'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetEnterpriseAnnouncementBanner", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEnterpriseAuditLog", + "qualifiedName": "GithubApi.GetEnterpriseAuditLog", + "fullyQualifiedName": "GithubApi.GetEnterpriseAuditLog@1.0.0", + "description": "Retrieve the audit log for a specified enterprise.\n\nThis tool fetches the audit log for an enterprise on GitHub. It is intended for use by enterprise admins with proper access rights. The audit log provides insights into various activities and changes within the enterprise.", + "parameters": [ + { + "name": "enterprise_slug_or_id", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise to fetch the audit log for. Either the slug version of the enterprise name or the enterprise ID can be used.", + "enum": null, + "inferrable": true + }, + { + "name": "after_cursor", + "type": "string", + "required": false, + "description": "A cursor from the Link header to search for events after this point.", + "enum": null, + "inferrable": true + }, + { + "name": "audit_log_event_order", + "type": "string", + "required": false, + "description": "Specify 'desc' for newest events first or 'asc' for oldest events first. Default is 'desc'.", + "enum": null, + "inferrable": true + }, + { + "name": "event_types_to_include", + "type": "string", + "required": false, + "description": "Specify event types to include: 'web' for web events, 'git' for Git events, or 'all' for both. Defaults to 'web'.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "The page number of audit log results to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to display per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "search_events_before_cursor", + "type": "string", + "required": false, + "description": "A cursor to filter events occurring before the specified position in the audit log.", + "enum": null, + "inferrable": true + }, + { + "name": "search_phrase", + "type": "string", + "required": false, + "description": "A search phrase to filter audit log entries. Refer to [GitHub Docs](https://docs.github.com/enterprise-server@3.8/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/searching-the-audit-log-for-your-enterprise#searching-the-audit-log) for more details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-audit-log'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetEnterpriseAuditLog", + "parameters": { + "enterprise_slug_or_id": { + "value": "my-enterprise-123", + "type": "string", + "required": true + }, + "after_cursor": { + "value": "cursor12345", + "type": "string", + "required": false + }, + "audit_log_event_order": { + "value": "desc", + "type": "string", + "required": false + }, + "event_types_to_include": { + "value": "all", + "type": "string", + "required": false + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "search_events_before_cursor": { + "value": "cursor54321", + "type": "string", + "required": false + }, + "search_phrase": { + "value": "user_login", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEnvironmentSecretInfo", + "qualifiedName": "GithubApi.GetEnvironmentSecretInfo", + "fullyQualifiedName": "GithubApi.GetEnvironmentSecretInfo@1.0.0", + "description": "Retrieve details of an environment secret on GitHub.\n\nFetches metadata about a specific GitHub environment secret. This tool is useful for getting information like the name and existence of a secret without revealing its encrypted value. Authentication with a token having `repo` scope or `secrets` permission is required.", + "parameters": [ + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "The name of the environment to access the secret from. Required to specify which environment's secret details to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the environment secret to retrieve information about.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-environment-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetEnvironmentSecretInfo", + "parameters": { + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_id": { + "value": 123456789, + "type": "integer", + "required": true + }, + "secret_name": { + "value": "MY_SECRET_TOKEN", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGistComment", + "qualifiedName": "GithubApi.GetGistComment", + "fullyQualifiedName": "GithubApi.GetGistComment@1.0.0", + "description": "Retrieve a specific comment from a GitHub gist.\n\nUse this tool to obtain details about a specific comment on a GitHub gist using the gist and comment IDs.", + "parameters": [ + { + "name": "comment_id", + "type": "integer", + "required": true, + "description": "Unique identifier for the gist comment to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "gist_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the gist needed to retrieve a specific comment.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/get-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGistComment", + "parameters": { + "comment_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "gist_unique_id": { + "value": "abcdef1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGistRevision", + "qualifiedName": "GithubApi.GetGistRevision", + "fullyQualifiedName": "GithubApi.GetGistRevision@1.0.0", + "description": "Retrieve a specific revision of a GitHub gist.\n\nUse this tool to get details about a specific revision of a GitHub gist using the gist ID and SHA.", + "parameters": [ + { + "name": "gist_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the GitHub gist to retrieve a specific revision.", + "enum": null, + "inferrable": true + }, + { + "name": "revision_sha", + "type": "string", + "required": true, + "description": "The SHA hash of the specific gist revision to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/get-revision'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGistRevision", + "parameters": { + "gist_identifier": { + "value": "1234567890abcdef1234567890abcdef", + "type": "string", + "required": true + }, + "revision_sha": { + "value": "abcdef1234567890abcdef1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGitGistStatistics", + "qualifiedName": "GithubApi.GetGitGistStatistics", + "fullyQualifiedName": "GithubApi.GetGitGistStatistics@1.0.0", + "description": "Retrieve gist statistics from GitHub Enterprise.\n\nUse this tool to obtain statistics for gists from GitHub Enterprise. It should be called when you need detailed data about gists usage and distribution.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-gist-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGitGistStatistics", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubActionsCachePolicy", + "qualifiedName": "GithubApi.GetGithubActionsCachePolicy", + "fullyQualifiedName": "GithubApi.GetGithubActionsCachePolicy@1.0.0", + "description": "Retrieve the GitHub Actions cache usage policy for an enterprise.\n\nFetches the cache usage policy for GitHub Actions associated with a specific enterprise. Requires authentication with an access token that has the `admin:enterprise` scope or a GitHub App with the `enterprise_administration:write` permission.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug version or ID of the enterprise for GitHub Actions cache policy retrieval.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-actions-cache-usage-policy-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubActionsCachePolicy", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise-slug", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubActionsCacheUsage", + "qualifiedName": "GithubApi.GetGithubActionsCacheUsage", + "fullyQualifiedName": "GithubApi.GetGithubActionsCacheUsage@1.0.0", + "description": "Fetch GitHub Actions cache usage for a repository.\n\nUse this tool to get the current cache usage for GitHub Actions in a specific repository. Cache data is updated approximately every 5 minutes. Requires read access to the repository and appropriate permissions for private repositories.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Case insensitive name.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-actions-cache-usage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubActionsCacheUsage", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubActionsCacheUsageForEnterprise", + "qualifiedName": "GithubApi.GetGithubActionsCacheUsageForEnterprise", + "fullyQualifiedName": "GithubApi.GetGithubActionsCacheUsageForEnterprise@1.0.0", + "description": "Retrieve GitHub Actions cache usage for an enterprise.\n\nFetches the total cache usage for GitHub Actions in a specified enterprise. Useful for monitoring and managing enterprise-level actions resources. The data is refreshed every 5 minutes and requires an access token with the 'admin:enterprise' scope for authentication.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise. Can be either the enterprise name in slug format or the enterprise ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-actions-cache-usage-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubActionsCacheUsageForEnterprise", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubActionsCacheUsageForOrg", + "qualifiedName": "GithubApi.GetGithubActionsCacheUsageForOrg", + "fullyQualifiedName": "GithubApi.GetGithubActionsCacheUsageForOrg@1.0.0", + "description": "Retrieve GitHub Actions cache usage for an organization's repositories.\n\nUse this tool to get a list of repositories and their GitHub Actions cache usage for a specified organization. The data is refreshed every 5 minutes. Requires authentication with an access token with the `read:org` scope or a GitHub App with `organization_administration:read` permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization to retrieve cache usage for. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to fetch. This is useful for paginated data retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, with a maximum of 100 entries.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-actions-cache-usage-by-repo-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubActionsCacheUsageForOrg", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubActionsPermissions", + "qualifiedName": "GithubApi.GetGithubActionsPermissions", + "fullyQualifiedName": "GithubApi.GetGithubActionsPermissions@1.0.0", + "description": "Get GitHub Actions permissions for an enterprise.\n\nRetrieve the GitHub Actions permissions policy and allowed actions for organizations within a specified enterprise. Requires authentication with an access token that has the `admin:enterprise` scope.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "Identifier for the enterprise, either as a slug version of the name or the enterprise ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-github-actions-permissions-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubActionsPermissions", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise-slug", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubActionsPermissionsForOrganization", + "qualifiedName": "GithubApi.GetGithubActionsPermissionsForOrganization", + "fullyQualifiedName": "GithubApi.GetGithubActionsPermissionsForOrganization@1.0.0", + "description": "Retrieve GitHub Actions permissions for an organization.\n\nFetches the GitHub Actions permissions policy for repositories and allowed actions within a specified organization. Requires authentication with an access token having the `admin:org` scope or a GitHub App with `administration` organization permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization name for which to retrieve GitHub Actions permissions. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-github-actions-permissions-organization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubActionsPermissionsForOrganization", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubActionsRunReviews", + "qualifiedName": "GithubApi.GetGithubActionsRunReviews", + "fullyQualifiedName": "GithubApi.GetGithubActionsRunReviews@1.0.0", + "description": "Retrieve reviews for a GitHub Actions run.\n\nCall this tool to get reviews and approval details for a specific GitHub Actions run in a repository. It requires an access token with `repo` scope for private repositories or `actions:read` permission for GitHub Apps.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub Actions workflow run. This integer is required to fetch the reviews.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-reviews-for-run'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubActionsRunReviews", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "workflow_run_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubAppDetailsBySlug", + "qualifiedName": "GithubApi.GetGithubAppDetailsBySlug", + "fullyQualifiedName": "GithubApi.GetGithubAppDetailsBySlug@1.0.0", + "description": "Retrieve GitHub App details using its slug.\n\nUse this tool to obtain details about a GitHub App by providing its URL-friendly slug. This can be accessed without authentication for public apps, but requires authentication for private ones using a personal or installation access token.", + "parameters": [ + { + "name": "github_app_slug", + "type": "string", + "required": true, + "description": "The URL-friendly name of the GitHub App to retrieve details for. Found on the GitHub App settings page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/get-by-slug'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubAppDetailsBySlug", + "parameters": { + "github_app_slug": { + "value": "my-awesome-github-app", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubAppInfo", + "qualifiedName": "GithubApi.GetGithubAppInfo", + "fullyQualifiedName": "GithubApi.GetGithubAppInfo@1.0.0", + "description": "Retrieve details about the authenticated GitHub App.\n\nThis tool returns information about the GitHub App associated with the authentication credentials. It provides details such as the number of installations linked to the app. It's useful to check app configuration and installation status.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/get-authenticated'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubAppInfo", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubAppInstallationInfo", + "qualifiedName": "GithubApi.GetGithubAppInstallationInfo", + "fullyQualifiedName": "GithubApi.GetGithubAppInstallationInfo@1.0.0", + "description": "Fetch information of a GitHub App installation by ID.\n\nUse this tool to retrieve detailed information about a specific GitHub App installation using its installation ID. Useful for scenarios where you need to know the configuration or settings of a particular installation.", + "parameters": [ + { + "name": "installation_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub App installation to fetch information for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/get-installation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubAppInstallationInfo", + "parameters": { + "installation_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubAppInstallations", + "qualifiedName": "GithubApi.GetGithubAppInstallations", + "fullyQualifiedName": "GithubApi.GetGithubAppInstallations@1.0.0", + "description": "Retrieve GitHub App installations for the authenticated user.\n\nLists GitHub App installations that the authenticated user can access with permissions such as `:read`, `:write`, or `:admin`. This requires a user-to-server OAuth access token, valid for a user who authorized the app. Useful for accessing repositories owned, collaborated on, or accessible through organization membership.", + "parameters": [ + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch for GitHub App installations.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/list-installations-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubAppInstallations", + "parameters": { + "results_page_number": { + "value": 2, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubAppRepoInstallation", + "qualifiedName": "GithubApi.GetGithubAppRepoInstallation", + "fullyQualifiedName": "GithubApi.GetGithubAppRepoInstallation@1.0.0", + "description": "Fetches GitHub App installation info for a repository.\n\nUse this tool to get the installation information of a GitHub App for a specific repository. The installation can belong to an organization or user account, depending on the repository's owner.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive and identifies the specific repository for which to retrieve GitHub App installation information.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner's name for the repository, not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/get-repo-installation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubAppRepoInstallation", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubAppWebhookConfig", + "qualifiedName": "GithubApi.GetGithubAppWebhookConfig", + "fullyQualifiedName": "GithubApi.GetGithubAppWebhookConfig@1.0.0", + "description": "Fetches the webhook configuration for a GitHub App.\n\nThis tool retrieves the webhook configuration details for a specific GitHub App. It should be called when you need to review or manage the webhook settings of your GitHub App. Note that access requires authentication using a JWT.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/get-webhook-config-for-app'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubAppWebhookConfig", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubAppWebhookDelivery", + "qualifiedName": "GithubApi.GetGithubAppWebhookDelivery", + "fullyQualifiedName": "GithubApi.GetGithubAppWebhookDelivery@1.0.0", + "description": "Retrieve delivery details for a GitHub App webhook.\n\nFetches the delivery information for a specific webhook configured in a GitHub App. This tool should be called when you need to obtain details about a specific delivery event linked to a webhook. Ensure you are authenticated with a JWT to access this information.", + "parameters": [ + { + "name": "webhook_delivery_id", + "type": "integer", + "required": true, + "description": "The ID of the webhook delivery to retrieve. Must be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/get-webhook-delivery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubAppWebhookDelivery", + "parameters": { + "webhook_delivery_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubArtifactDownloadUrl", + "qualifiedName": "GithubApi.GetGithubArtifactDownloadUrl", + "fullyQualifiedName": "GithubApi.GetGithubArtifactDownloadUrl@1.0.0", + "description": "Retrieve a URL to download a GitHub artifact zip file.\n\nUse this tool to get a redirect URL for downloading an artifact zip file from a GitHub repository. The URL is valid for 1 minute and requires read access to the repository. For private repositories, an access token with the 'repo' scope is needed. This tool is useful for automating the retrieval of artifact files from GitHub Actions.", + "parameters": [ + { + "name": "archive_format_zip", + "type": "string", + "required": true, + "description": "Specify the archive format as 'zip'. This is required for the download link.", + "enum": null, + "inferrable": true + }, + { + "name": "artifact_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the artifact to be downloaded.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository (not case sensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/download-artifact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubArtifactDownloadUrl", + "parameters": { + "archive_format_zip": { + "value": "zip", + "type": "string", + "required": true + }, + "artifact_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubBlobContent", + "qualifiedName": "GithubApi.GetGithubBlobContent", + "fullyQualifiedName": "GithubApi.GetGithubBlobContent@1.0.0", + "description": "Retrieve Base64 encoded content of a GitHub blob.\n\nUse this tool to fetch the content of a blob from a GitHub repository. It is useful for accessing file contents stored in GitHub in a Base64 encoded format. This tool supports blobs up to 100 megabytes.", + "parameters": [ + { + "name": "file_sha_identifier", + "type": "string", + "required": true, + "description": "The SHA identifier for the blob. This is used to access the specific file blob from the GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'git/get-blob'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubBlobContent", + "parameters": { + "file_sha_identifier": { + "value": "94ae0b2b59d6a91d1b58e82bb8c0734a804c1d95", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubBranchProtection", + "qualifiedName": "GithubApi.GetGithubBranchProtection", + "fullyQualifiedName": "GithubApi.GetGithubBranchProtection@1.0.0", + "description": "Retrieve protection settings for a GitHub branch.\n\nUse this tool to obtain protection settings for a specific branch in a GitHub repository. This is useful for understanding the rules and restrictions applied to the branch, including who can push changes or enforce specific merge rules.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The specific name of the GitHub branch to retrieve protection settings for. Must not contain wildcard characters.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-branch-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubBranchProtection", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubCheckRun", + "qualifiedName": "GithubApi.GetGithubCheckRun", + "fullyQualifiedName": "GithubApi.GetGithubCheckRun@1.0.0", + "description": "Retrieve a specific GitHub check run by its ID.\n\nUse this tool to get details of a single check run from a GitHub repository using its ID. This is applicable for both private and public repositories, with necessary permissions.", + "parameters": [ + { + "name": "check_run_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub check run to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'checks/get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubCheckRun", + "parameters": { + "check_run_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "ExampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubCheckSuite", + "qualifiedName": "GithubApi.GetGithubCheckSuite", + "fullyQualifiedName": "GithubApi.GetGithubCheckSuite@1.0.0", + "description": "Retrieve a GitHub check suite by ID.\n\nUse this tool to get information about a specific check suite in a GitHub repository using its ID. Suitable for users with appropriate permissions on private or public repositories.", + "parameters": [ + { + "name": "check_suite_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub check suite to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'checks/get-suite'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubCheckSuite", + "parameters": { + "check_suite_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubCommitComment", + "qualifiedName": "GithubApi.GetGithubCommitComment", + "fullyQualifiedName": "GithubApi.GetGithubCommitComment@1.0.0", + "description": "Retrieve details of a specific commit comment on GitHub.\n\nUse this tool to get detailed information about a specific commit comment in a GitHub repository, identified by the owner, repository name, and comment ID.", + "parameters": [ + { + "name": "comment_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub commit comment to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-commit-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubCommitComment", + "parameters": { + "comment_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubContributorStats", + "qualifiedName": "GithubApi.GetGithubContributorStats", + "fullyQualifiedName": "GithubApi.GetGithubContributorStats@1.0.0", + "description": "Retrieve GitHub repository contributor statistics.\n\nFetches the total number of commits made by each contributor to a GitHub repository. It also provides a weekly breakdown of additions, deletions, and commits.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-contributors-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubContributorStats", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubDeployKey", + "qualifiedName": "GithubApi.GetGithubDeployKey", + "fullyQualifiedName": "GithubApi.GetGithubDeployKey@1.0.0", + "description": "Retrieve a deploy key from a GitHub repository.\n\nThis tool retrieves the details of a specific deploy key associated with a GitHub repository. It should be used when you need to access information about a deploy key for a specified repository and key ID.", + "parameters": [ + { + "name": "deploy_key_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the deploy key to retrieve from the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-deploy-key'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubDeployKey", + "parameters": { + "deploy_key_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubDeploymentStatus", + "qualifiedName": "GithubApi.GetGithubDeploymentStatus", + "fullyQualifiedName": "GithubApi.GetGithubDeploymentStatus@1.0.0", + "description": "Retrieve details of a specific GitHub deployment.\n\nCall this tool to get information about a particular deployment in a GitHub repository, including its status and other related details.", + "parameters": [ + { + "name": "deployment_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the deployment to retrieve details about.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-deployment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubDeploymentStatus", + "parameters": { + "deployment_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubEnterpriseMetaInfo", + "qualifiedName": "GithubApi.GetGithubEnterpriseMetaInfo", + "fullyQualifiedName": "GithubApi.GetGithubEnterpriseMetaInfo@1.0.0", + "description": "Retrieve GitHub Enterprise Server meta information.\n\nThis tool is used to obtain meta information about a GitHub Enterprise Server. It should be called when details about the server's configuration and capabilities are needed.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'meta/get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubEnterpriseMetaInfo", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubEnterpriseSettings", + "qualifiedName": "GithubApi.GetGithubEnterpriseSettings", + "fullyQualifiedName": "GithubApi.GetGithubEnterpriseSettings@1.0.0", + "description": "Retrieve the current settings of your GitHub Enterprise instance.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-settings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubEnterpriseSettings", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubEnterpriseStats", + "qualifiedName": "GithubApi.GetGithubEnterpriseStats", + "fullyQualifiedName": "GithubApi.GetGithubEnterpriseStats@1.0.0", + "description": "Retrieve all statistics for GitHub Enterprise.\n\nThis tool fetches comprehensive statistics related to GitHub Enterprise. It should be used when you need detailed operational insights into the GitHub Enterprise environment.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-all-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubEnterpriseStats", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubEnvironmentPublicKey", + "qualifiedName": "GithubApi.GetGithubEnvironmentPublicKey", + "fullyQualifiedName": "GithubApi.GetGithubEnvironmentPublicKey@1.0.0", + "description": "Fetch the public key for a GitHub environment.\n\nThis tool retrieves the public key needed to encrypt environment secrets for a specified GitHub repository and environment. Use it when you need to secure secrets before creating or updating them. Requires appropriate access permissions.", + "parameters": [ + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "The name of the GitHub environment for which to retrieve the public key.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub repository. It must be an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-environment-public-key'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubEnvironmentPublicKey", + "parameters": { + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_id": { + "value": 123456789, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubEnvVariable", + "qualifiedName": "GithubApi.GetGithubEnvVariable", + "fullyQualifiedName": "GithubApi.GetGithubEnvVariable@1.0.0", + "description": "Retrieve specific environment variable details from GitHub.\n\nCall this tool to get information about a specific environment variable within a specified environment of a GitHub repository. Requires authentication with an access token having 'repo' scope or GitHub App permissions.", + "parameters": [ + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "The name of the environment to retrieve the variable from. Required for identifying the specific environment.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": true, + "description": "The name of the environment variable to retrieve from the GitHub repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-environment-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubEnvVariable", + "parameters": { + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_id": { + "value": 12345678, + "type": "integer", + "required": true + }, + "variable_name": { + "value": "API_KEY", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubExternalGroupInfo", + "qualifiedName": "GithubApi.GetGithubExternalGroupInfo", + "fullyQualifiedName": "GithubApi.GetGithubExternalGroupInfo@1.0.0", + "description": "Retrieve information about a GitHub external group's usage.\n\nThis tool displays information about a specific external group's usage within a GitHub organization. It provides details on the group's external members and the teams connected to this group. Useful for managing team membership through identity providers using Enterprise Managed Users for GitHub Enterprise Cloud.", + "parameters": [ + { + "name": "group_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the group. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/external-idp-group-info-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubExternalGroupInfo", + "parameters": { + "group_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubFeeds", + "qualifiedName": "GithubApi.GetGithubFeeds", + "fullyQualifiedName": "GithubApi.GetGithubFeeds@1.0.0", + "description": "Retrieve available GitHub feeds for an authenticated user.\n\nThis tool retrieves a list of timeline resources available on GitHub Enterprise Server in Atom format. It includes global public timelines, public and private timelines for users, private timelines for user activities and organizations, and security advisories. Private feeds require Basic Auth for retrieval.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/get-feeds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubFeeds", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubGist", + "qualifiedName": "GithubApi.GetGithubGist", + "fullyQualifiedName": "GithubApi.GetGithubGist@1.0.0", + "description": "Retrieve details of a specific GitHub gist using its ID.\n\nUse this tool to obtain information about a particular GitHub gist by providing the gist ID. It is helpful when you need to access the content, description, or other metadata of a GitHub gist.", + "parameters": [ + { + "name": "gist_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the GitHub gist you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubGist", + "parameters": { + "gist_identifier": { + "value": "abc12345def67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubGlobalWebhook", + "qualifiedName": "GithubApi.GetGithubGlobalWebhook", + "fullyQualifiedName": "GithubApi.GetGithubGlobalWebhook@1.0.0", + "description": "Retrieve details of a specific global webhook in GitHub Enterprise.\n\nUse this tool to obtain detailed information about a specific global webhook in a GitHub Enterprise setup by providing the hook ID.", + "parameters": [ + { + "name": "global_webhook_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the global webhook in GitHub Enterprise. Provide this ID to retrieve specific webhook details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-global-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubGlobalWebhook", + "parameters": { + "global_webhook_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubIssueComment", + "qualifiedName": "GithubApi.GetGithubIssueComment", + "fullyQualifiedName": "GithubApi.GetGithubIssueComment@1.0.0", + "description": "Retrieve a comment from a GitHub issue.\n\nUse this tool to obtain detailed information about a specific comment on an issue within a GitHub repository. It requires specifying the repository owner, repository name, and comment ID.", + "parameters": [ + { + "name": "comment_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier for the GitHub issue comment.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive and is required to identify the repository within an account.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository on GitHub. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/get-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubIssueComment", + "parameters": { + "comment_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubIssueDetails", + "qualifiedName": "GithubApi.GetGithubIssueDetails", + "fullyQualifiedName": "GithubApi.GetGithubIssueDetails@1.0.0", + "description": "Fetch details of a specific issue or pull request on GitHub.\n\nUse this tool to retrieve information about a particular issue or pull request from a GitHub repository. This tool returns a 301 status if the issue was transferred, 404 if inaccessible or deleted, and 410 if deleted but accessible. Pull requests are also considered issues and can be identified by the 'pull_request' key in the response.", + "parameters": [ + { + "name": "issue_identifier", + "type": "integer", + "required": true, + "description": "The unique number that identifies the issue or pull request on GitHub.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username of the repository owner. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubIssueDetails", + "parameters": { + "issue_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubIssueStatistics", + "qualifiedName": "GithubApi.GetGithubIssueStatistics", + "fullyQualifiedName": "GithubApi.GetGithubIssueStatistics@1.0.0", + "description": "Retrieve statistics on GitHub issues for an enterprise.\n\nThis tool fetches statistical data related to issues in a GitHub enterprise account. It should be called when you need insights on issue counts, trends, or other related metrics.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-issue-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubIssueStatistics", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubLabel", + "qualifiedName": "GithubApi.GetGithubLabel", + "fullyQualifiedName": "GithubApi.GetGithubLabel@1.0.0", + "description": "Retrieve details of a GitHub repository label.\n\nCall this tool to get information about a specific label from a GitHub repository, including its details and specifications.", + "parameters": [ + { + "name": "label_name", + "type": "string", + "required": true, + "description": "The specific name of the label to retrieve from the GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. Not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/get-label'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubLabel", + "parameters": { + "label_name": { + "value": "bug", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubLicense", + "qualifiedName": "GithubApi.GetGithubLicense", + "fullyQualifiedName": "GithubApi.GetGithubLicense@1.0.0", + "description": "Retrieve a specific GitHub license by its key.\n\nUse this tool to get details about a specific license on GitHub by specifying its key. Useful when you need information about license terms and conditions for a repository.", + "parameters": [ + { + "name": "license_key", + "type": "string", + "required": true, + "description": "The key of the GitHub license to retrieve information about.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'licenses/get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubLicense", + "parameters": { + "license_key": { + "value": "mit", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubMilestone", + "qualifiedName": "GithubApi.GetGithubMilestone", + "fullyQualifiedName": "GithubApi.GetGithubMilestone@1.0.0", + "description": "Retrieve details of a GitHub milestone for a repository.\n\nThis tool is used to obtain information about a specific milestone in a GitHub repository. It should be called when you need to access details such as the milestone's due date, description, or state.", + "parameters": [ + { + "name": "milestone_id", + "type": "integer", + "required": true, + "description": "The unique number identifying the milestone to retrieve details from a GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository for which the milestone information is needed. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/get-milestone'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubMilestone", + "parameters": { + "milestone_id": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubNotificationThread", + "qualifiedName": "GithubApi.GetGithubNotificationThread", + "fullyQualifiedName": "GithubApi.GetGithubNotificationThread@1.0.0", + "description": "Retrieve information about a GitHub notification thread.\n\nUse this tool to get detailed information about a specific notification thread on GitHub. It's helpful for users who need to track updates or manage their notifications.", + "parameters": [ + { + "name": "notification_thread_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the notification thread, returned in the `id` field when retrieving notifications.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/get-thread'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubNotificationThread", + "parameters": { + "notification_thread_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubOrgInfo", + "qualifiedName": "GithubApi.GetGithubOrgInfo", + "fullyQualifiedName": "GithubApi.GetGithubOrgInfo@1.0.0", + "description": "Retrieve detailed information about a GitHub organization.\n\nThis tool retrieves information about a specific GitHub organization, such as its plan and two-factor authentication requirements. It requires authentication as an organization owner or a GitHub App with the appropriate permissions.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization to retrieve information for. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubOrgInfo", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubOrgInstallationInfo", + "qualifiedName": "GithubApi.GetGithubOrgInstallationInfo", + "fullyQualifiedName": "GithubApi.GetGithubOrgInstallationInfo@1.0.0", + "description": "Retrieve GitHub organization's installation information.\n\nUse this tool to find installation details for an organization using an authenticated GitHub App. It requires a JWT for access.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. It is not case-sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/get-org-installation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubOrgInstallationInfo", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubOrgSecret", + "qualifiedName": "GithubApi.GetGithubOrgSecret", + "fullyQualifiedName": "GithubApi.GetGithubOrgSecret@1.0.0", + "description": "Retrieve details of a GitHub organization secret.\n\nUse this tool to get the details of a GitHub organization secret without exposing its encrypted value. Authentication with an access token with `admin:org` scope or GitHub App with `secrets` permission is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the secret within the GitHub organization. It identifies which secret's details to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-org-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubOrgSecret", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "secret_name": { + "value": "my_secret", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubOrgStats", + "qualifiedName": "GithubApi.GetGithubOrgStats", + "fullyQualifiedName": "GithubApi.GetGithubOrgStats@1.0.0", + "description": "Retrieve organization statistics from GitHub Enterprise.\n\nUse this tool to get detailed statistics about organizations in a GitHub Enterprise setup. It's useful for monitoring and analyzing organizational data.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-org-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubOrgStats", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubPagesBuild", + "qualifiedName": "GithubApi.GetGithubPagesBuild", + "fullyQualifiedName": "GithubApi.GetGithubPagesBuild@1.0.0", + "description": "Retrieve details of a GitHub Pages build for a repository.\n\nUse this tool to get information about a specific GitHub Pages build in a repository on GitHub Enterprise Server. It requires the repository owner, repository name, and build ID to fetch the details.", + "parameters": [ + { + "name": "build_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub Pages build.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This field is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-pages-build'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubPagesBuild", + "parameters": { + "build_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubPagesSite", + "qualifiedName": "GithubApi.GetGithubPagesSite", + "fullyQualifiedName": "GithubApi.GetGithubPagesSite@1.0.0", + "description": "Retrieve details of a GitHub Pages site for a repository.\n\nThis tool is used to get information about a GitHub Pages site for a specified repository on GitHub Enterprise Server. It should be called when you need details about the Pages site configuration or status for a given repository.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-pages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubPagesSite", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubPagesStats", + "qualifiedName": "GithubApi.GetGithubPagesStats", + "fullyQualifiedName": "GithubApi.GetGithubPagesStats@1.0.0", + "description": "Retrieve statistics for GitHub Pages in an enterprise account.\n\nUse this tool to obtain detailed statistics about GitHub Pages usage and performance within an enterprise account.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-pages-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubPagesStats", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubPreReceiveEnvironment", + "qualifiedName": "GithubApi.GetGithubPreReceiveEnvironment", + "fullyQualifiedName": "GithubApi.GetGithubPreReceiveEnvironment@1.0.0", + "description": "Retrieve a GitHub pre-receive environment by ID.\n\nUse this tool to get detailed information about a specific pre-receive environment in GitHub for enterprise administration purposes.", + "parameters": [ + { + "name": "pre_receive_environment_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub pre-receive environment.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-pre-receive-environment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubPreReceiveEnvironment", + "parameters": { + "pre_receive_environment_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubProjectById", + "qualifiedName": "GithubApi.GetGithubProjectById", + "fullyQualifiedName": "GithubApi.GetGithubProjectById@1.0.0", + "description": "Retrieve details of a GitHub project by its ID.\n\nCall this tool to obtain information about a specific GitHub project using its ID. It provides project details if accessible or returns an appropriate error status if there are issues like insufficient privileges or if projects are disabled.", + "parameters": [ + { + "name": "project_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub project to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubProjectById", + "parameters": { + "project_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubProjectColumn", + "qualifiedName": "GithubApi.GetGithubProjectColumn", + "fullyQualifiedName": "GithubApi.GetGithubProjectColumn@1.0.0", + "description": "Retrieve details of a GitHub project column using its ID.\n\nUse this tool to obtain information about a specific column in a GitHub project. It should be called when you need to access the details of a project column using its column ID.", + "parameters": [ + { + "name": "project_column_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the project column to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/get-column'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubProjectColumn", + "parameters": { + "project_column_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubRateLimit", + "qualifiedName": "GithubApi.GetGithubRateLimit", + "fullyQualifiedName": "GithubApi.GetGithubRateLimit@1.0.0", + "description": "Retrieve current GitHub API rate limit status.\n\nUse this tool to check the current API rate limit status on GitHub. It provides information on the remaining requests allowed in the current rate limit window without affecting your API usage.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'rate-limit/get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubRateLimit", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubReleaseByTag", + "qualifiedName": "GithubApi.GetGithubReleaseByTag", + "fullyQualifiedName": "GithubApi.GetGithubReleaseByTag@1.0.0", + "description": "Retrieve GitHub release details by tag.\n\nUse this tool to get details of a published GitHub release using the specified repository owner, repository name, and release tag.", + "parameters": [ + { + "name": "release_tag", + "type": "string", + "required": true, + "description": "The specific tag of the release to retrieve. This is used to identify and fetch details of the published release.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "Specify the name of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive. Provide the GitHub username or organization name.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-release-by-tag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubReleaseByTag", + "parameters": { + "release_tag": { + "value": "v1.0.0", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubReleaseDetails", + "qualifiedName": "GithubApi.GetGithubReleaseDetails", + "fullyQualifiedName": "GithubApi.GetGithubReleaseDetails@1.0.0", + "description": "Retrieve details of a specific GitHub release.\n\nUse this tool to obtain details about a specific release from a GitHub repository. This includes the upload URL for release assets, which is a hypermedia resource.", + "parameters": [ + { + "name": "release_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the specific GitHub release being queried.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-release'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubReleaseDetails", + "parameters": { + "release_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubReleases", + "qualifiedName": "GithubApi.GetGithubReleases", + "fullyQualifiedName": "GithubApi.GetGithubReleases@1.0.0", + "description": "Retrieve a list of releases for a GitHub repository.\n\nUse this tool to get a list of releases from a specific GitHub repository. Note that this list will only include releases, not regular Git tags. Draft releases will be listed only if the user has push access to the repository. This tool is useful for accessing information about software releases available on GitHub.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The specific page number of releases to fetch from a repository.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of release results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-releases'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubReleases", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubRepoBranch", + "qualifiedName": "GithubApi.GetGithubRepoBranch", + "fullyQualifiedName": "GithubApi.GetGithubRepoBranch@1.0.0", + "description": "Retrieve details of a specific branch from a GitHub repository.\n\nUse this tool to obtain information about a particular branch within a specified GitHub repository. Provide the owner, repository name, and branch name to get the branch details.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The name of the GitHub branch. Avoid using wildcard characters. For wildcard support, refer to the GitHub GraphQL API.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository (case-insensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-branch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubRepoBranch", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubRepoContent", + "qualifiedName": "GithubApi.GetGithubRepoContent", + "fullyQualifiedName": "GithubApi.GetGithubRepoContent@1.0.0", + "description": "Retrieve file or directory contents from a GitHub repository.\n\nUse this tool to get the contents of a specified file or directory in a GitHub repository. By specifying the file path or directory, you can fetch the required information. If no path is specified, the root directory contents are retrieved. It supports custom media types for raw or HTML content. Note that files larger than 100 MB are not supported.", + "parameters": [ + { + "name": "file_or_directory_path", + "type": "string", + "required": true, + "description": "The file or directory path within the repository. If omitted, the root directory is accessed.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "commit_branch_or_tag", + "type": "string", + "required": false, + "description": "The name of the commit, branch, or tag to retrieve content from. Defaults to the repository's default branch, usually 'master'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-content'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubRepoContent", + "parameters": { + "file_or_directory_path": { + "value": "src/components", + "type": "string", + "required": true + }, + "repository_name": { + "value": "SampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "SampleUser", + "type": "string", + "required": true + }, + "commit_branch_or_tag": { + "value": "main", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubRepoEnvironmentDetails", + "qualifiedName": "GithubApi.GetGithubRepoEnvironmentDetails", + "fullyQualifiedName": "GithubApi.GetGithubRepoEnvironmentDetails@1.0.0", + "description": "Retrieve details about a GitHub repository environment.\n\nUse this tool to get information on a specified environment within a GitHub repository. This can be used by anyone with read access to the repository. Access tokens with the 'repo' scope are required for private repositories, and GitHub Apps need 'actions:read' permission.", + "parameters": [ + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "The name of the environment to retrieve details for. It is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository (not case sensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner_account_name", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-environment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubRepoEnvironmentDetails", + "parameters": { + "environment_name": { + "value": "Production", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner_account_name": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubRepoPublicKey", + "qualifiedName": "GithubApi.GetGithubRepoPublicKey", + "fullyQualifiedName": "GithubApi.GetGithubRepoPublicKey@1.0.0", + "description": "Retrieve the public key for encrypting repository secrets.\n\nUse this tool to obtain the public key needed for encrypting secrets before creating or updating them in a GitHub repository. It can be accessed by anyone with read access to the repository. For private repositories, an access token with the `repo` scope is required. GitHub Apps need the `dependabot_secrets` repository permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/get-repo-public-key'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubRepoPublicKey", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubRepoRequiredWorkflow", + "qualifiedName": "GithubApi.GetGithubRepoRequiredWorkflow", + "fullyQualifiedName": "GithubApi.GetGithubRepoRequiredWorkflow@1.0.0", + "description": "Retrieve a specific required workflow from a GitHub repository.\n\nThis tool fetches details of a required workflow from a specified GitHub repository. It can be used by anyone with read access to the repository. For private repositories, an access token with the 'repo' scope is needed. Useful for managing and auditing workflows in GitHub repositories.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "required_workflow_id", + "type": "integer", + "required": true, + "description": "The unique ID of the required workflow that has executed at least once in the repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-repo-required-workflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubRepoRequiredWorkflow", + "parameters": { + "organization_name": { + "value": "exampleOrg", + "type": "string", + "required": true + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": true + }, + "required_workflow_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubRepositoryDetails", + "qualifiedName": "GithubApi.GetGithubRepositoryDetails", + "fullyQualifiedName": "GithubApi.GetGithubRepositoryDetails@1.0.0", + "description": "Retrieve detailed information about a GitHub repository.\n\nThis tool retrieves detailed information about a specified GitHub repository. It provides details such as the parent and source repositories if the repository is a fork. Admin or owner permissions might be required to access certain security details.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "Specify the account owner of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubRepositoryDetails", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubRepoVariable", + "qualifiedName": "GithubApi.GetGithubRepoVariable", + "fullyQualifiedName": "GithubApi.GetGithubRepoVariable@1.0.0", + "description": "Retrieve a specific variable from a GitHub repository.\n\nThis tool retrieves information about a specific variable within a GitHub repository. It's useful when you need to access configuration or environment variables stored in a repository. Authentication with an access token having the `repo` scope is required, or GitHub Apps must have the `actions_variables:read` permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": true, + "description": "The name of the variable to retrieve from the repository. This is case-sensitive and must match the variable's exact name.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-repo-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubRepoVariable", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "variable_name": { + "value": "MY_CONFIG_VAR", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubReview", + "qualifiedName": "GithubApi.GetGithubReview", + "fullyQualifiedName": "GithubApi.GetGithubReview@1.0.0", + "description": "Retrieve details of a specific pull request review from GitHub.\n\nUse this tool to obtain a review for a specific pull request by providing the repository owner, repository name, pull request number, and review ID.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the pull request on GitHub.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This field is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "review_id", + "type": "integer", + "required": true, + "description": "The unique numeric identifier for the specific review of the pull request.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/get-review'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubReview", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "review_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubReviewCommentDetails", + "qualifiedName": "GithubApi.GetGithubReviewCommentDetails", + "fullyQualifiedName": "GithubApi.GetGithubReviewCommentDetails@1.0.0", + "description": "Get details for a specific GitHub review comment.\n\nCall this tool to obtain detailed information about a specific review comment on a GitHub pull request, such as the content, author, and creation time.", + "parameters": [ + { + "name": "comment_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub review comment you want to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/get-review-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubReviewCommentDetails", + "parameters": { + "comment_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubRootLinks", + "qualifiedName": "GithubApi.GetGithubRootLinks", + "fullyQualifiedName": "GithubApi.GetGithubRootLinks@1.0.0", + "description": "Retrieve Hypermedia links to GitHub's REST API resources.\n\nCall this tool to obtain Hypermedia links that provide access to various resources in GitHub's REST API. Useful for navigating the capabilities and endpoints available in GitHub's API.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'meta/root'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubRootLinks", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubSecretScanningAlert", + "qualifiedName": "GithubApi.GetGithubSecretScanningAlert", + "fullyQualifiedName": "GithubApi.GetGithubSecretScanningAlert@1.0.0", + "description": "Retrieve a specific secret scanning alert from a GitHub repository.\n\nUse this tool to obtain details of a secret scanning alert detected in a GitHub repository. This requires administrative access to the repository or organization, and an appropriate personal access token. It also supports GitHub Apps with specific read permissions.", + "parameters": [ + { + "name": "alert_identifier", + "type": "integer", + "required": true, + "description": "The unique integer number identifying a GitHub secret scanning alert. This is found at the URL's end for the alert or in the `number` field of the alert response.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the repository from which to retrieve the secret scanning alert.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The username of the account owner for the repository. Case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'secret-scanning/get-alert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubSecretScanningAlert", + "parameters": { + "alert_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubSecurityBillingInfo", + "qualifiedName": "GithubApi.GetGithubSecurityBillingInfo", + "fullyQualifiedName": "GithubApi.GetGithubSecurityBillingInfo@1.0.0", + "description": "Retrieve GitHub Advanced Security billing details for an enterprise.\n\nThis tool retrieves data on active committers using GitHub Advanced Security for an enterprise, listed per repository. It provides information on the number of distinct user logins and the total repositories with committer information.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID representing the enterprise name for security billing info.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to fetch. Use to navigate through paginated data.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results per page to return. Maximum is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'billing/get-github-advanced-security-billing-ghe'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubSecurityBillingInfo", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise-slug", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubStatusCheckContexts", + "qualifiedName": "GithubApi.GetGithubStatusCheckContexts", + "fullyQualifiedName": "GithubApi.GetGithubStatusCheckContexts@1.0.0", + "description": "Retrieve status check contexts for a protected GitHub branch.\n\nThis tool fetches all status check contexts for a specific protected branch in a GitHub repository. Useful for understanding the checks required for branch protections. Suitable for repositories with branch protection enabled.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The name of the branch. Cannot include wildcard characters.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-all-status-check-contexts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubStatusCheckContexts", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubTeamDiscussionComment", + "qualifiedName": "GithubApi.GetGithubTeamDiscussionComment", + "fullyQualifiedName": "GithubApi.GetGithubTeamDiscussionComment@1.0.0", + "description": "Retrieve a specific comment from a GitHub team discussion.\n\nUse this tool to get details of a specific comment within a team discussion on GitHub. This is useful for accessing detailed information about comments in organizational discussions. Ensure OAuth tokens have the `read:discussion` scope.", + "parameters": [ + { + "name": "comment_identifier", + "type": "integer", + "required": true, + "description": "The specific number identifying the comment in the discussion.", + "enum": null, + "inferrable": true + }, + { + "name": "discussion_id", + "type": "integer", + "required": true, + "description": "The unique number identifying the specific discussion on GitHub.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug (URL-friendly version) of the GitHub team's name. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/get-discussion-comment-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubTeamDiscussionComment", + "parameters": { + "comment_identifier": { + "value": 42, + "type": "integer", + "required": true + }, + "discussion_id": { + "value": 1001, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubTokenWorkflowPermissions", + "qualifiedName": "GithubApi.GetGithubTokenWorkflowPermissions", + "fullyQualifiedName": "GithubApi.GetGithubTokenWorkflowPermissions@1.0.0", + "description": "Retrieve GitHub Actions default workflow permissions for an enterprise.\n\nThis tool retrieves the default permissions for the `GITHUB_TOKEN` in workflows within a specified enterprise, including settings for pull request review approvals. Use this tool to understand and manage workflow access within your GitHub enterprise.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug version of the enterprise name or the enterprise ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-github-actions-default-workflow-permissions-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubTokenWorkflowPermissions", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubUserHovercardInfo", + "qualifiedName": "GithubApi.GetGithubUserHovercardInfo", + "fullyQualifiedName": "GithubApi.GetGithubUserHovercardInfo@1.0.0", + "description": "Retrieve detailed hovercard info for a GitHub user.\n\nFetches hovercard information about a specified GitHub user, offering insights related to their pull requests, issues, repositories, and organizations. Requires authentication through basic auth or OAuth with the `repo` scope. Enhanced details can be obtained by specifying `subject_type` and `subject_id` parameters.", + "parameters": [ + { + "name": "github_username", + "type": "string", + "required": true, + "description": "The GitHub username for which to retrieve hovercard information.", + "enum": null, + "inferrable": true + }, + { + "name": "additional_info_type", + "type": "string", + "required": false, + "description": "Specifies the type of related information for the user's hovercard. Options: `organization`, `repository`, `issue`, `pull_request`. Required with `subject_id`.", + "enum": null, + "inferrable": true + }, + { + "name": "subject_identifier", + "type": "string", + "required": false, + "description": "The ID corresponding to the specified `subject_type` (e.g., organization, repository). Required if `subject_type` is used.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/get-context-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubUserHovercardInfo", + "parameters": { + "github_username": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "additional_info_type": { + "value": "repository", + "type": "string", + "required": false + }, + "subject_identifier": { + "value": "123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubUserInfo", + "qualifiedName": "GithubApi.GetGithubUserInfo", + "fullyQualifiedName": "GithubApi.GetGithubUserInfo@1.0.0", + "description": "Fetch public details of a GitHub user using their username.\n\nThis tool retrieves publicly available information about a GitHub user's account. It is useful for obtaining details such as username, profile information, and publicly visible email addresses if set by the user. Ideal for applications needing GitHub user data.", + "parameters": [ + { + "name": "github_username", + "type": "string", + "required": true, + "description": "The GitHub user's handle. Used to fetch their public profile information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/get-by-username'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubUserInfo", + "parameters": { + "github_username": { + "value": "johnDoe123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubUserInstallation", + "qualifiedName": "GithubApi.GetGithubUserInstallation", + "fullyQualifiedName": "GithubApi.GetGithubUserInstallation@1.0.0", + "description": "Retrieve a user's GitHub App installation information.\n\nUse to find installation details for a user authenticated with a GitHub App using a JWT.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The handle (username) of the GitHub user account to retrieve installation details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/get-user-installation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubUserInstallation", + "parameters": { + "github_user_handle": { + "value": "johndoe123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubUserProfile", + "qualifiedName": "GithubApi.GetGithubUserProfile", + "fullyQualifiedName": "GithubApi.GetGithubUserProfile@1.0.0", + "description": "Retrieve authenticated user's GitHub profile information.\n\nFetches public and private profile information for the authenticated GitHub user if authenticated with the `user` scope. Returns only public information otherwise.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/get-authenticated'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubUserProfile", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubUserStats", + "qualifiedName": "GithubApi.GetGithubUserStats", + "fullyQualifiedName": "GithubApi.GetGithubUserStats@1.0.0", + "description": "Retrieve user statistics from GitHub Enterprise.\n\nThis tool retrieves user statistics from a GitHub Enterprise instance. It should be called when needing detailed user data to analyze usage and activity metrics.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-user-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubUserStats", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubWebhookDelivery", + "qualifiedName": "GithubApi.GetGithubWebhookDelivery", + "fullyQualifiedName": "GithubApi.GetGithubWebhookDelivery@1.0.0", + "description": "Retrieve a webhook delivery for a GitHub organization.\n\nThis tool is used to obtain details about a specific delivery of a webhook configured in a GitHub organization. It provides information about the delivery for a given organization, hook, and delivery identifier.", + "parameters": [ + { + "name": "hook_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the webhook hook. This is an integer value used to specify which webhook's delivery details to retrieve for the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_delivery_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the specific delivery to be retrieved. This should be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/get-webhook-delivery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubWebhookDelivery", + "parameters": { + "hook_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "webhook_delivery_id": { + "value": 7890, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubWorkflowJob", + "qualifiedName": "GithubApi.GetGithubWorkflowJob", + "fullyQualifiedName": "GithubApi.GetGithubWorkflowJob@1.0.0", + "description": "Retrieve a specific job from a GitHub workflow run.\n\nUse this tool to get details of a specific job from a GitHub workflow run. Requires read access to the repository. For private repositories, an access token with 'repo' scope is needed. GitHub Apps need 'actions:read' permission.", + "parameters": [ + { + "name": "job_identifier", + "type": "integer", + "required": true, + "description": "Unique integer identifier of the workflow job to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-job-for-workflow-run'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubWorkflowJob", + "parameters": { + "job_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubWorkflowRun", + "qualifiedName": "GithubApi.GetGithubWorkflowRun", + "fullyQualifiedName": "GithubApi.GetGithubWorkflowRun@1.0.0", + "description": "Retrieve details of a specific GitHub workflow run.\n\nUse this tool to get information about a specific workflow run on GitHub. It requires read access to the repository; for private repositories, an access token with `repo` scope is needed. Ideal for tracking and reviewing the status and details of a workflow run.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive and is used to identify the repo for the workflow run.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub workflow run. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "omit_pull_requests", + "type": "boolean", + "required": false, + "description": "If true, omits pull requests from the response, resulting in an empty array.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-workflow-run'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubWorkflowRun", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "workflow_run_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "omit_pull_requests": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGithubWorkflowRunAttempt", + "qualifiedName": "GithubApi.GetGithubWorkflowRunAttempt", + "fullyQualifiedName": "GithubApi.GetGithubWorkflowRunAttempt@1.0.0", + "description": "Retrieve details of a specific GitHub workflow run attempt.\n\nUse this tool to access detailed information about a specific workflow run attempt in a GitHub repository. Accessible with repository read permissions. Requires an access token for private repositories.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_attempt_number", + "type": "integer", + "required": true, + "description": "The numeric identifier for the specific attempt of the workflow run to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub workflow run. This integer specifies the exact run to retrieve information for.", + "enum": null, + "inferrable": true + }, + { + "name": "omit_pull_requests", + "type": "boolean", + "required": false, + "description": "Set to true to omit pull requests from the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-workflow-run-attempt'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGithubWorkflowRunAttempt", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "workflow_attempt_number": { + "value": 3, + "type": "integer", + "required": true + }, + "workflow_run_id": { + "value": 42, + "type": "integer", + "required": true + }, + "omit_pull_requests": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGitReference", + "qualifiedName": "GithubApi.GetGitReference", + "fullyQualifiedName": "GithubApi.GetGitReference@1.0.0", + "description": "Fetch a specific Git reference from a repository.\n\nUse this tool to retrieve a branch or tag reference from a Git repository on GitHub. Input the specific branch or tag name formatted correctly to obtain the reference. Returns a 404 if the reference does not exist.", + "parameters": [ + { + "name": "git_reference", + "type": "string", + "required": true, + "description": "The reference to the Git branch or tag, formatted as `heads/` or `tags/`.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'git/get-ref'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGitReference", + "parameters": { + "git_reference": { + "value": "heads/main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGitTagSignatureVerification", + "qualifiedName": "GithubApi.GetGitTagSignatureVerification", + "fullyQualifiedName": "GithubApi.GetGitTagSignatureVerification@1.0.0", + "description": "Retrieve verification details of a git tag signature.\n\nThis tool is used to get the verification details of a git tag's signature from a GitHub repository. It provides information about whether the signature is verified and the reason for the verification status.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_sha", + "type": "string", + "required": true, + "description": "The SHA hash identifier of the git tag to be verified. This should be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'git/get-tag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGitTagSignatureVerification", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "tag_sha": { + "value": "abcd1234efgh5678ijkl9012mnop3456qrstuvwx", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGitTree", + "qualifiedName": "GithubApi.GetGitTree", + "fullyQualifiedName": "GithubApi.GetGitTree@1.0.0", + "description": "Fetch a git tree by its SHA1 value from a GitHub repo.\n\nUse this tool to retrieve a single tree structure from a GitHub repository using its SHA1 value. If the response indicates `truncated`, the tree array exceeds the maximum limit, requiring non-recursive methods for complete retrieval. This is useful for accessing specific parts of a repository's file structure.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "tree_sha", + "type": "string", + "required": true, + "description": "The SHA1 value of the tree to fetch. This identifier is necessary to specify which tree structure should be retrieved from the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_recursive_retrieval", + "type": "string", + "required": false, + "description": "If set, returns objects/subtrees referenced by the provided tree SHA. Use values: '0', '1', 'true', 'false'. Omit to disable recursion.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'git/get-tree'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetGitTree", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "tree_sha": { + "value": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0", + "type": "string", + "required": true + }, + "enable_recursive_retrieval": { + "value": "true", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetHooksStatistics", + "qualifiedName": "GithubApi.GetHooksStatistics", + "fullyQualifiedName": "GithubApi.GetHooksStatistics@1.0.0", + "description": "Retrieves statistics about enterprise webhooks on GitHub.\n\nUse this tool to obtain detailed statistics on webhook usage and performance within a GitHub Enterprise environment. It helps administrators monitor and analyze webhook activity.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-hooks-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetHooksStatistics", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIssueTimelineEvents", + "qualifiedName": "GithubApi.GetIssueTimelineEvents", + "fullyQualifiedName": "GithubApi.GetIssueTimelineEvents@1.0.0", + "description": "Retrieve timeline events for a GitHub issue.\n\nUse this tool to fetch and list all timeline events for a specific issue in a GitHub repository. It should be called when detailed event information about an issue's timeline is needed.", + "parameters": [ + { + "name": "issue_identifier", + "type": "integer", + "required": true, + "description": "The unique number identifying the GitHub issue.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository in GitHub. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of results to fetch, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of timeline events to retrieve per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/list-events-for-timeline'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetIssueTimelineEvents", + "parameters": { + "issue_identifier": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLatestGithubPagesBuild", + "qualifiedName": "GithubApi.GetLatestGithubPagesBuild", + "fullyQualifiedName": "GithubApi.GetLatestGithubPagesBuild@1.0.0", + "description": "Retrieve the latest GitHub Pages build information.\n\nThis tool fetches the latest build information for GitHub Pages of a specified repository. It should be called when the user wants to know the most recent build status or details for a GitHub Pages site.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Enter the name without considering case sensitivity.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-latest-pages-build'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetLatestGithubPagesBuild", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLatestGithubRelease", + "qualifiedName": "GithubApi.GetLatestGithubRelease", + "fullyQualifiedName": "GithubApi.GetLatestGithubRelease@1.0.0", + "description": "Retrieve the latest full release from a GitHub repository.\n\nThis tool fetches the most recent full release from a specified GitHub repository, excluding prerelease and draft releases. It is useful for monitoring updates and obtaining the latest stable release information.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to retrieve the latest release from. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-latest-release'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetLatestGithubRelease", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLicenseInformation", + "qualifiedName": "GithubApi.GetLicenseInformation", + "fullyQualifiedName": "GithubApi.GetLicenseInformation@1.0.0", + "description": "Retrieve GitHub Enterprise license information.\n\nUse this tool to fetch information about your GitHub Enterprise license settings. It is helpful for administrators who need to manage license details.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-license-information'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetLicenseInformation", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMilestoneStatistics", + "qualifiedName": "GithubApi.GetMilestoneStatistics", + "fullyQualifiedName": "GithubApi.GetMilestoneStatistics@1.0.0", + "description": "Retrieve GitHub enterprise milestone statistics.\n\nUse this tool to get statistics about milestones in a GitHub enterprise environment. It is useful for understanding project progress and tracking milestones.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-milestone-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetMilestoneStatistics", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOctocatAsciiArt", + "qualifiedName": "GithubApi.GetOctocatAsciiArt", + "fullyQualifiedName": "GithubApi.GetOctocatAsciiArt@1.0.0", + "description": "Retrieve the octocat as ASCII art.\n\nUse this tool to get the octocat character depicted in ASCII art from GitHub.", + "parameters": [ + { + "name": "speech_bubble_text", + "type": "string", + "required": false, + "description": "Text to display in Octocat's speech bubble. Provide a string with the desired message.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'meta/get-octocat'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOctocatAsciiArt", + "parameters": { + "speech_bubble_text": { + "value": "Hello, GitHub!", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOidcCustomSubTemplateForOrg", + "qualifiedName": "GithubApi.GetOidcCustomSubTemplateForOrg", + "fullyQualifiedName": "GithubApi.GetOidcCustomSubTemplateForOrg@1.0.0", + "description": "Retrieves the OIDC subject claim customization template for an organization.\n\nUse this tool to get the customization template for an OpenID Connect (OIDC) subject claim for a specific organization. This requires authentication with a GitHub access token with `read:org` scope or a GitHub App with `organization_administration:write` permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization for which you want to retrieve the OIDC customization template. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'oidc/get-oidc-custom-sub-template-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOidcCustomSubTemplateForOrg", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOidcSubjectClaimTemplate", + "qualifiedName": "GithubApi.GetOidcSubjectClaimTemplate", + "fullyQualifiedName": "GithubApi.GetOidcSubjectClaimTemplate@1.0.0", + "description": "Retrieve the OIDC subject claim customization template for a repository.\n\nUse this tool to get the customization template for an OpenID Connect (OIDC) subject claim for a specific GitHub repository. Requires authentication with a token having `repo` scope, or `organization_administration:read` permission for GitHub Apps.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-custom-oidc-sub-claim-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOidcSubjectClaimTemplate", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrganizationPublicKey", + "qualifiedName": "GithubApi.GetOrganizationPublicKey", + "fullyQualifiedName": "GithubApi.GetOrganizationPublicKey@1.0.0", + "description": "Retrieve the public key for GitHub organization secrets encryption.\n\nUse this tool to obtain the public key necessary for encrypting secrets before creation or update within a GitHub organization. This requires authentication with an access token that has the `admin:org` scope. Suitable for use when managing organization secrets securely.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-org-public-key'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOrganizationPublicKey", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrganizationVariable", + "qualifiedName": "GithubApi.GetOrganizationVariable", + "fullyQualifiedName": "GithubApi.GetOrganizationVariable@1.0.0", + "description": "Retrieve a specific variable from a GitHub organization.\n\nUse this tool to access a particular variable within a GitHub organization. Requires authentication with an access token with the 'admin:org' scope or a GitHub App with 'organization_actions_variables:read' permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": true, + "description": "The exact name of the specific variable to retrieve from the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-org-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOrganizationVariable", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "variable_name": { + "value": "MY_SECRET_ENV_VAR", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrgAnnouncementBanner", + "qualifiedName": "GithubApi.GetOrgAnnouncementBanner", + "fullyQualifiedName": "GithubApi.GetOrgAnnouncementBanner@1.0.0", + "description": "Retrieve the announcement banner for a specific organization.\n\nFetches the current announcement banner set at the organization level. Does not include enterprise-level banners.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'announcement-banners/get-announcement-banner-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOrgAnnouncementBanner", + "parameters": { + "organization_name": { + "value": "OpenAI", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrgAuditLog", + "qualifiedName": "GithubApi.GetOrgAuditLog", + "fullyQualifiedName": "GithubApi.GetOrgAuditLog@1.0.0", + "description": "Retrieve the audit log for a GitHub organization.\n\nThis tool retrieves the audit log for a specified GitHub organization. It is used to monitor and review up to 30 events from the past three months by default. Organization owners or GitHub Apps with appropriate permissions can filter, paginate, and analyze audit events using this tool. Useful for tracking organization activities and security events.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "event_order", + "type": "string", + "required": false, + "description": "Specify the order of audit log events. Use 'desc' for newest first or 'asc' for oldest first. Default is 'desc'.", + "enum": null, + "inferrable": true + }, + { + "name": "event_types_to_include", + "type": "string", + "required": false, + "description": "Specify the event types to include: 'web' for web events, 'git' for Git events, or 'all' for both. Default is 'web'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to fetch. Useful for navigating through paginated audit log entries.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Defines the number of audit log events returned per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "search_events_after_cursor", + "type": "string", + "required": false, + "description": "Cursor for searching events after a specific point, as given in the Link header.", + "enum": null, + "inferrable": true + }, + { + "name": "search_events_before_cursor", + "type": "string", + "required": false, + "description": "A cursor to search for events before this point. Use to limit results to events occurring before a specific reference.", + "enum": null, + "inferrable": true + }, + { + "name": "search_phrase", + "type": "string", + "required": false, + "description": "A string to filter audit log events based on specific criteria. This can help in retrieving older events. Refer to the GitHub documentation for more details on searching the audit log.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/get-audit-log'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOrgAuditLog", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "event_order": { + "value": "desc", + "type": "string", + "required": false + }, + "event_types_to_include": { + "value": "all", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "search_events_after_cursor": { + "value": "XYZ123", + "type": "string", + "required": false + }, + "search_events_before_cursor": { + "value": "ABC456", + "type": "string", + "required": false + }, + "search_phrase": { + "value": "security", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrgMembershipStatus", + "qualifiedName": "GithubApi.GetOrgMembershipStatus", + "fullyQualifiedName": "GithubApi.GetOrgMembershipStatus@1.0.0", + "description": "Retrieve the user's organization membership status.\n\nUse this tool to get the membership details of an authenticated user within a specified organization on GitHub. It is useful for checking the user's roles and permissions in the organization.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive and should be provided as a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/get-membership-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOrgMembershipStatus", + "parameters": { + "organization_name": { + "value": "OpenAI", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrgPreReceiveHook", + "qualifiedName": "GithubApi.GetOrgPreReceiveHook", + "fullyQualifiedName": "GithubApi.GetOrgPreReceiveHook@1.0.0", + "description": "Retrieve a pre-receive hook for an organization.\n\nFetches details of a specific pre-receive hook associated with a GitHub organization using the organization's name and the hook ID.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization; case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "pre_receive_hook_unique_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the pre-receive hook. Must be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-pre-receive-hook-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOrgPreReceiveHook", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "pre_receive_hook_unique_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrgPublicKey", + "qualifiedName": "GithubApi.GetOrgPublicKey", + "fullyQualifiedName": "GithubApi.GetOrgPublicKey@1.0.0", + "description": "Retrieve the public key for encrypting GitHub Dependabot secrets.\n\nUse this tool to get your GitHub organization's public key, which is necessary for encrypting secrets before creating or updating them in Dependabot. Ensure authentication with an access token with the `admin:org` scope or GitHub App permissions for `dependabot_secrets`.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name, not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/get-org-public-key'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOrgPublicKey", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrgRunnerRemovalToken", + "qualifiedName": "GithubApi.GetOrgRunnerRemovalToken", + "fullyQualifiedName": "GithubApi.GetOrgRunnerRemovalToken@1.0.0", + "description": "Get a token to remove a self-hosted runner from an organization.\n\nUse this tool to obtain a token for removing a self-hosted runner from a GitHub organization. The token expires after one hour and requires an access token with the `admin:org` scope for authentication.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/create-remove-token-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOrgRunnerRemovalToken", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrgSecretInfo", + "qualifiedName": "GithubApi.GetOrgSecretInfo", + "fullyQualifiedName": "GithubApi.GetOrgSecretInfo@1.0.0", + "description": "Retrieve details of an organization's secret without revealing the encrypted value.\n\nThis tool fetches a single organization secret's details from GitHub without disclosing the encrypted value. Use it when you need information about a secret within an organization. Authentication with an access token with `admin:org` scope is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_secret_name", + "type": "string", + "required": true, + "description": "The name of the secret for the organization. It is required to identify the specific secret without revealing its encrypted value. This name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/get-org-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOrgSecretInfo", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "organization_secret_name": { + "value": "MySecret", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrgSelfHostedRunner", + "qualifiedName": "GithubApi.GetOrgSelfHostedRunner", + "fullyQualifiedName": "GithubApi.GetOrgSelfHostedRunner@1.0.0", + "description": "Get details of a self-hosted runner for an organization.\n\nFetches information about a specific self-hosted runner configured in a GitHub organization. Authentication with an access token having the `admin:org` scope is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name (not case sensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "runner_id", + "type": "integer", + "required": true, + "description": "Unique integer identifier of the self-hosted runner within the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-self-hosted-runner-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOrgSelfHostedRunner", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "runner_id": { + "value": 123, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrgWebhookConfiguration", + "qualifiedName": "GithubApi.GetOrgWebhookConfiguration", + "fullyQualifiedName": "GithubApi.GetOrgWebhookConfiguration@1.0.0", + "description": "Retrieve webhook configuration for a GitHub organization.\n\nCall this tool to get the webhook configuration for a specified organization on GitHub. Useful for checking the webhook's setup details. Requires appropriate access tokens or GitHub App permissions.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The non-case-sensitive name of the GitHub organization.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_hook_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the organization's webhook, provided as an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/get-webhook-config-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOrgWebhookConfiguration", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "webhook_hook_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrgWebhookDetails", + "qualifiedName": "GithubApi.GetOrgWebhookDetails", + "fullyQualifiedName": "GithubApi.GetOrgWebhookDetails@1.0.0", + "description": "Retrieve details of a specific organization webhook.\n\nUse this tool to obtain detailed information about a webhook configured in a GitHub organization, including its properties and settings.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the organization's webhook. This is an integer value used to specify which webhook details to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/get-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetOrgWebhookDetails", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "webhook_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPendingDeploymentsForRun", + "qualifiedName": "GithubApi.GetPendingDeploymentsForRun", + "fullyQualifiedName": "GithubApi.GetPendingDeploymentsForRun@1.0.0", + "description": "Retrieve pending deployments for a GitHub workflow run.\n\nUse this tool to obtain all deployment environments for a specific GitHub workflow run that are awaiting protection rules to pass. Accessible to users with read access to the repository; requires `repo` scope for private repos or `actions:read` permission for GitHub Apps.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the workflow run to fetch pending deployments for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-pending-deployments-for-run'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetPendingDeploymentsForRun", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "workflow_run_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPreReceiveEnvDownloadStatus", + "qualifiedName": "GithubApi.GetPreReceiveEnvDownloadStatus", + "fullyQualifiedName": "GithubApi.GetPreReceiveEnvDownloadStatus@1.0.0", + "description": "Retrieve the latest download status for a pre-receive environment.\n\nUse this tool to check the most recent download status for a pre-receive environment within GitHub Enterprise Administration. It's useful for monitoring or verifying the status separately from other environment data.", + "parameters": [ + { + "name": "pre_receive_environment_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the pre-receive environment to retrieve its download status.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-download-status-for-pre-receive-environment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetPreReceiveEnvDownloadStatus", + "parameters": { + "pre_receive_environment_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPreReceiveHook", + "qualifiedName": "GithubApi.GetPreReceiveHook", + "fullyQualifiedName": "GithubApi.GetPreReceiveHook@1.0.0", + "description": "Retrieve details of a specific pre-receive hook in GitHub Enterprise Admin.\n\nThis tool is used to get information about a specific pre-receive hook by its ID in GitHub Enterprise. It is helpful for administrators managing repositories who need to view hook configurations.", + "parameters": [ + { + "name": "pre_receive_hook_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the pre-receive hook to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-pre-receive-hook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetPreReceiveHook", + "parameters": { + "pre_receive_hook_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPreReceiveHookForRepo", + "qualifiedName": "GithubApi.GetPreReceiveHookForRepo", + "fullyQualifiedName": "GithubApi.GetPreReceiveHookForRepo@1.0.0", + "description": "Retrieve a pre-receive hook for a specific repository.\n\nUse this tool to obtain the details of a specific pre-receive hook associated with a GitHub repository. Ideal for administrators managing repository hooks.", + "parameters": [ + { + "name": "pre_receive_hook_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the pre-receive hook for the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-pre-receive-hook-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetPreReceiveHookForRepo", + "parameters": { + "pre_receive_hook_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectCard", + "qualifiedName": "GithubApi.GetProjectCard", + "fullyQualifiedName": "GithubApi.GetProjectCard@1.0.0", + "description": "Retrieve details of a specific project card in GitHub.\n\nUse this tool to get information about a project card in a GitHub project by specifying the card ID. Useful for retrieving details such as card content, column association, and other metadata.", + "parameters": [ + { + "name": "project_card_id", + "type": "integer", + "required": true, + "description": "The unique ID of the GitHub project card to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/get-card'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetProjectCard", + "parameters": { + "project_card_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPublicSshKeyDetails", + "qualifiedName": "GithubApi.GetPublicSshKeyDetails", + "fullyQualifiedName": "GithubApi.GetPublicSshKeyDetails@1.0.0", + "description": "Retrieve details for a specified public SSH key.\n\nThis tool fetches extended details for a single public SSH key of the authenticated user. It requires authentication via Basic Auth or OAuth with 'read:public_key' scope.", + "parameters": [ + { + "name": "ssh_key_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the public SSH key to retrieve details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/get-public-ssh-key-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetPublicSshKeyDetails", + "parameters": { + "ssh_key_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPublicSshKeys", + "qualifiedName": "GithubApi.GetPublicSshKeys", + "fullyQualifiedName": "GithubApi.GetPublicSshKeys@1.0.0", + "description": "Retrieve verified public SSH keys for a specified GitHub user.\n\nUse this tool to access the verified public SSH keys associated with a GitHub user's account. This information is publicly accessible and can help in identifying trusted keys for secure connections.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user's handle to retrieve their verified public SSH keys.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to retrieve for pagination purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum allowed value of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/list-public-keys-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetPublicSshKeys", + "parameters": { + "github_user_handle": { + "value": "octocat", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPullRequestDetails", + "qualifiedName": "GithubApi.GetPullRequestDetails", + "fullyQualifiedName": "GithubApi.GetPullRequestDetails@1.0.0", + "description": "Retrieve details of a specific GitHub pull request.\n\nUse this tool to obtain comprehensive information about a specified pull request in a GitHub repository, including its mergeability status and commit details.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the pull request to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "Specifies the account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetPullRequestDetails", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPullRequestReviewProtection", + "qualifiedName": "GithubApi.GetPullRequestReviewProtection", + "fullyQualifiedName": "GithubApi.GetPullRequestReviewProtection@1.0.0", + "description": "Get pull request review protection details for a branch.\n\nFetches details about the required pull request review protection for a specific branch in a GitHub repository. Useful for understanding branch protection rules in repositories.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The name of the branch. Cannot contain wildcard characters. For wildcard usage, refer to the GraphQL API.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to retrieve pull request review protection details for. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. It is not case sensitive and identifies who owns the repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-pull-request-review-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetPullRequestReviewProtection", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPullRequestStatistics", + "qualifiedName": "GithubApi.GetPullRequestStatistics", + "fullyQualifiedName": "GithubApi.GetPullRequestStatistics@1.0.0", + "description": "Retrieve pull request statistics from GitHub Enterprise.\n\nUse this tool to obtain statistics related to pull requests from a GitHub Enterprise instance.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-pull-request-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetPullRequestStatistics", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRandomGithubZen", + "qualifiedName": "GithubApi.GetRandomGithubZen", + "fullyQualifiedName": "GithubApi.GetRandomGithubZen@1.0.0", + "description": "Fetch a random Zen of GitHub sentence.\n\nRetrieves a random inspirational sentence from GitHub's Zen collection, useful for inspiration or fun.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'meta/get-zen'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRandomGithubZen", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRemoveTokenForEnterpriseRunner", + "qualifiedName": "GithubApi.GetRemoveTokenForEnterpriseRunner", + "fullyQualifiedName": "GithubApi.GetRemoveTokenForEnterpriseRunner@1.0.0", + "description": "Generates a token to remove a self-hosted runner from an enterprise.\n\nUse this tool to obtain a token for removing a self-hosted runner from an enterprise on GitHub. The token is valid for one hour and requires authentication with an access token having the 'manage_runners:enterprise' scope.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise. Use this to specify the enterprise for which you want to generate a removal token.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/create-remove-token-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRemoveTokenForEnterpriseRunner", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise-id", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepoAutolinks", + "qualifiedName": "GithubApi.GetRepoAutolinks", + "fullyQualifiedName": "GithubApi.GetRepoAutolinks@1.0.0", + "description": "Retrieve autolinks for a specific GitHub repository.\n\nUse this tool to obtain information about all autolinks configured in a specified GitHub repository. It is only accessible to repository administrators.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number to retrieve results from when fetching autolinks for a repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-autolinks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepoAutolinks", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepoCodeFrequency", + "qualifiedName": "GithubApi.GetRepoCodeFrequency", + "fullyQualifiedName": "GithubApi.GetRepoCodeFrequency@1.0.0", + "description": "Get weekly code frequency stats for a GitHub repository.\n\nFetches a weekly summary of code additions and deletions for a specified GitHub repository, providing insights into development activity.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The GitHub username is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-code-frequency-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepoCodeFrequency", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepoCommitParticipation", + "qualifiedName": "GithubApi.GetRepoCommitParticipation", + "fullyQualifiedName": "GithubApi.GetRepoCommitParticipation@1.0.0", + "description": "Retrieve weekly commit participation stats for a GitHub repo.\n\nThis tool fetches the total commit counts for a repository's owner and overall contributors over the last 52 weeks. It helps in understanding the contribution patterns and can determine non-owner contributions by subtracting owner counts from total counts.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, which is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The repository account owner on GitHub. Case-insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-participation-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepoCommitParticipation", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "ExampleOwner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepoLicense", + "qualifiedName": "GithubApi.GetRepoLicense", + "fullyQualifiedName": "GithubApi.GetRepoLicense@1.0.0", + "description": "Fetch the license file of a GitHub repository.\n\nThis tool retrieves the contents of a repository's license file from GitHub if one is detected. It can handle both raw license content and rendered HTML. Use this tool to understand the licensing terms associated with any given repository.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'licenses/get-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepoLicense", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepoNotifications", + "qualifiedName": "GithubApi.GetRepoNotifications", + "fullyQualifiedName": "GithubApi.GetRepoNotifications@1.0.0", + "description": "Retrieve notifications for the user in a specific repository.\n\nThis tool lists all notifications for the authenticated user in a specified GitHub repository. Use it to keep track of issues, pull requests, and other updates relevant to the user.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "include_read_notifications", + "type": "boolean", + "required": false, + "description": "If `true`, include notifications that have been marked as read.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to fetch. Useful for paginating through notifications.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of notifications to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "show_only_participation_notifications", + "type": "boolean", + "required": false, + "description": "If `true`, only show notifications where the user is directly participating or mentioned.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_after_timestamp", + "type": "string", + "required": false, + "description": "Show notifications updated after this timestamp. Use ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_before", + "type": "string", + "required": false, + "description": "Display notifications updated before this time in ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-repo-notifications-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepoNotifications", + "parameters": { + "repository_name": { + "value": "octocat/Hello-World", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "octocat", + "type": "string", + "required": true + }, + "include_read_notifications": { + "value": true, + "type": "boolean", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "show_only_participation_notifications": { + "value": false, + "type": "boolean", + "required": false + }, + "updated_after_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "updated_before": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepoPublicKey", + "qualifiedName": "GithubApi.GetRepoPublicKey", + "fullyQualifiedName": "GithubApi.GetRepoPublicKey@1.0.0", + "description": "Retrieve the public key for encrypting repository secrets.\n\nUse this tool to get the public key necessary for encrypting secrets in a GitHub repository. This is a prerequisite step before creating or updating secrets. Ensure you have the necessary access rights: read access for public repositories, or an access token with the `repo` scope for private ones. GitHub Apps require `secrets` permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This value is not case sensitive. Provide the repository name for which you want to retrieve the public key.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Enter a case-insensitive string specifying the owner's account name.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-repo-public-key'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepoPublicKey", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepoSecretInfo", + "qualifiedName": "GithubApi.GetRepoSecretInfo", + "fullyQualifiedName": "GithubApi.GetRepoSecretInfo@1.0.0", + "description": "Retrieve metadata of a repository secret from GitHub.\n\nFetches information about a specific repository secret using GitHub's Dependabot API. It provides metadata without revealing the secret's encrypted value. Requires an authenticated access token with proper permissions.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository, case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the secret to retrieve metadata for. Case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/get-repo-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepoSecretInfo", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "secret_name": { + "value": "deploy-key", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepositoryAutolink", + "qualifiedName": "GithubApi.GetRepositoryAutolink", + "fullyQualifiedName": "GithubApi.GetRepositoryAutolink@1.0.0", + "description": "Retrieve a specific GitHub repository autolink by ID.\n\nUse this tool to obtain details of a specific autolink reference configured in a GitHub repository. This is accessible only to repository administrators.", + "parameters": [ + { + "name": "autolink_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the autolink configured in the GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-autolink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepositoryAutolink", + "parameters": { + "autolink_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepositoryReadme", + "qualifiedName": "GithubApi.GetRepositoryReadme", + "fullyQualifiedName": "GithubApi.GetRepositoryReadme@1.0.0", + "description": "Retrieve the preferred README for a GitHub repository.\n\nUse this tool to fetch the preferred README of a GitHub repository. It can retrieve the raw content or rendered HTML based on custom media types.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "commit_branch_tag_name", + "type": "string", + "required": false, + "description": "Specify the commit, branch, or tag name. Defaults to the repository's default branch if not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-readme'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepositoryReadme", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "commit_branch_tag_name": { + "value": "main", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepositorySecretInfo", + "qualifiedName": "GithubApi.GetRepositorySecretInfo", + "fullyQualifiedName": "GithubApi.GetRepositorySecretInfo@1.0.0", + "description": "Retrieve metadata for a specific GitHub repository secret.\n\nThis tool retrieves the metadata of a specified secret from a GitHub repository without exposing its encrypted value. It requires authentication with an access token that has the `repo` scope, or GitHub Apps with `secrets` repository permissions.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the secret to retrieve metadata for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-repo-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepositorySecretInfo", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "secret_name": { + "value": "MY_SECRET", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepositoryStatistics", + "qualifiedName": "GithubApi.GetRepositoryStatistics", + "fullyQualifiedName": "GithubApi.GetRepositoryStatistics@1.0.0", + "description": "Retrieve statistics for GitHub repositories.\n\nThis tool is used to get statistical information about repositories in a GitHub enterprise setting. It should be called when detailed repository stats are needed.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-repo-stats'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepositoryStatistics", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepositoryTagProtectionStates", + "qualifiedName": "GithubApi.GetRepositoryTagProtectionStates", + "fullyQualifiedName": "GithubApi.GetRepositoryTagProtectionStates@1.0.0", + "description": "Fetch the tag protection states of a GitHub repository.\n\nCall this tool to retrieve the tag protection settings for a specific GitHub repository. This information is available only to repository administrators, providing insights into how tags are protected within the repository.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username of the account owner for the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-tag-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepositoryTagProtectionStates", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleuser", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepoSubscription", + "qualifiedName": "GithubApi.GetRepoSubscription", + "fullyQualifiedName": "GithubApi.GetRepoSubscription@1.0.0", + "description": "Retrieve subscription status for a GitHub repository.\n\nUse this tool to check if you are subscribed to a specific GitHub repository and receive notifications about its activity. It provides the subscription status and additional details.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username of the repository owner. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/get-repo-subscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepoSubscription", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepoTopics", + "qualifiedName": "GithubApi.GetRepoTopics", + "fullyQualifiedName": "GithubApi.GetRepoTopics@1.0.0", + "description": "Retrieve all topics for a specific GitHub repository.\n\nCall this tool to get a list of topics associated with a specific repository on GitHub. It can help understand the themes or categories the repository covers.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number of results to fetch. Useful for paginating through large data sets.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to fetch per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-all-topics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepoTopics", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepoWebhook", + "qualifiedName": "GithubApi.GetRepoWebhook", + "fullyQualifiedName": "GithubApi.GetRepoWebhook@1.0.0", + "description": "Retrieve the webhook configuration for a specific repository.\n\nThis tool is used to get the details of a webhook configured in a specific GitHub repository. It can be called when you need information about a webhook associated with a given repository, such as its settings and properties.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the webhook to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepoWebhook", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "webhook_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepoWebhookConfig", + "qualifiedName": "GithubApi.GetRepoWebhookConfig", + "fullyQualifiedName": "GithubApi.GetRepoWebhookConfig@1.0.0", + "description": "Get the webhook configuration for a GitHub repository.\n\nUse this tool to retrieve the webhook configuration settings for a specific GitHub repository. It requires a valid access token with `read:repo_hook` or `repo` scope, or a GitHub App with `repository_hooks:read` permission.", + "parameters": [ + { + "name": "hook_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the webhook. This is required to retrieve the specific webhook configuration for a repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Provide a non-case sensitive username.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-webhook-config-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRepoWebhookConfig", + "parameters": { + "hook_identifier": { + "value": 123456789, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRequestedReviewersForPr", + "qualifiedName": "GithubApi.GetRequestedReviewersForPr", + "fullyQualifiedName": "GithubApi.GetRequestedReviewersForPr@1.0.0", + "description": "Retrieve users or teams requested for a pull request review.\n\nUse this tool to get the list of users or teams who have been requested to review a specific pull request in a GitHub repository. This is useful for checking pending review tasks.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The unique identifier for the pull request in a GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/list-requested-reviewers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRequestedReviewersForPr", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRequiredWorkflow", + "qualifiedName": "GithubApi.GetRequiredWorkflow", + "fullyQualifiedName": "GithubApi.GetRequiredWorkflow@1.0.0", + "description": "Retrieve a required workflow for a GitHub organization.\n\nThis tool retrieves information about a required workflow configured in a GitHub organization. It requires authentication with a token having the `read:org` scope.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the workflow to retrieve for the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-required-workflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetRequiredWorkflow", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "workflow_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetReviewComments", + "qualifiedName": "GithubApi.GetReviewComments", + "fullyQualifiedName": "GithubApi.GetReviewComments@1.0.0", + "description": "Retrieve comments for a specific pull request review.\n\nUse this tool to obtain comments associated with a specific pull request review in a GitHub repository. Ideal for tracking review discussions and understanding feedback provided by reviewers.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The number that identifies the pull request to fetch comments from.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "review_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the review for which comments are being fetched.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to fetch. Used to navigate paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/list-comments-for-review'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetReviewComments", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "review_id": { + "value": 123, + "type": "integer", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSarifAnalysisInfo", + "qualifiedName": "GithubApi.GetSarifAnalysisInfo", + "fullyQualifiedName": "GithubApi.GetSarifAnalysisInfo@1.0.0", + "description": "Retrieve SARIF upload status and analysis URL.\n\nUse this tool to get information about a SARIF upload, including its status and the URL for detailed analysis. Useful for tracking code scanning results in GitHub repositories. Requires appropriate access tokens or permissions.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This input is case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. This input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "sarif_id", + "type": "string", + "required": true, + "description": "The SARIF ID obtained after uploading. It is used to retrieve analysis details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'code-scanning/get-sarif'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetSarifAnalysisInfo", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "sarif_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetScimGroupInfo", + "qualifiedName": "GithubApi.GetScimGroupInfo", + "fullyQualifiedName": "GithubApi.GetScimGroupInfo@1.0.0", + "description": "Retrieve provisioning information for a SCIM group in an enterprise.\n\nUse this tool to get detailed provisioning information of a specific SCIM group within an enterprise account. This can be essential for managing and auditing group memberships and access within an organization.", + "parameters": [ + { + "name": "scim_group_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the SCIM group to retrieve its provisioning information.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_attributes", + "type": "string", + "required": false, + "description": "Specify attributes to exclude from the response to speed up retrieval.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-provisioning-information-for-enterprise-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetScimGroupInfo", + "parameters": { + "scim_group_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "exclude_attributes": { + "value": "userType,meta,lastModified", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetScimUserInfo", + "qualifiedName": "GithubApi.GetScimUserInfo", + "fullyQualifiedName": "GithubApi.GetScimUserInfo@1.0.0", + "description": "Fetch SCIM user provisioning information.\n\nRetrieves information about a SCIM user in an enterprise account. Suitable for obtaining detailed provisioning data of a user within the GitHub enterprise environment.", + "parameters": [ + { + "name": "scim_user_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the SCIM user in the GitHub enterprise environment.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-provisioning-information-for-enterprise-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetScimUserInfo", + "parameters": { + "scim_user_identifier": { + "value": "user1234@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSecurityAnalysisSettings", + "qualifiedName": "GithubApi.GetSecurityAnalysisSettings", + "fullyQualifiedName": "GithubApi.GetSecurityAnalysisSettings@1.0.0", + "description": "Get security analysis settings for an enterprise.\n\nRetrieve code security and analysis settings for a specified enterprise. Requires admin access to the enterprise and an access token with the `admin:enterprise` scope.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug version or ID of the enterprise. Use the enterprise's slug name or its ID to specify it.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'secret-scanning/get-security-analysis-settings-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetSecurityAnalysisSettings", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise-slug", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSelfHostedRunnerGroup", + "qualifiedName": "GithubApi.GetSelfHostedRunnerGroup", + "fullyQualifiedName": "GithubApi.GetSelfHostedRunnerGroup@1.0.0", + "description": "Retrieve a specific self-hosted runner group for an enterprise.\n\nUse this tool to get details of a particular self-hosted runner group within an enterprise. Authentication with an access token is required, including the `manage_runners:enterprise` scope.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug of the enterprise name or substitute with the enterprise ID.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_identifier", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner group, required to retrieve specific group details within an enterprise.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-self-hosted-runner-group-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetSelfHostedRunnerGroup", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "runner_group_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSelfHostedRunnerGroupForOrg", + "qualifiedName": "GithubApi.GetSelfHostedRunnerGroupForOrg", + "fullyQualifiedName": "GithubApi.GetSelfHostedRunnerGroupForOrg@1.0.0", + "description": "Retrieve a specific self-hosted runner group for an organization.\n\nUse this tool to obtain details about a particular self-hosted runner group within an organization on GitHub. Requires authentication with an access token having 'admin:org' scope.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization name on GitHub. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_identifier", + "type": "integer", + "required": true, + "description": "Unique identifier for the self-hosted runner group. It should be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-self-hosted-runner-group-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetSelfHostedRunnerGroupForOrg", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "runner_group_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSelfHostedRunnerInfo", + "qualifiedName": "GithubApi.GetSelfHostedRunnerInfo", + "fullyQualifiedName": "GithubApi.GetSelfHostedRunnerInfo@1.0.0", + "description": "Retrieve details of a self-hosted runner in an enterprise.\n\nFetches information about a specific self-hosted runner configured within an enterprise on GitHub. Requires authentication with an access token having `manage_runners:enterprise` scope.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug version of the enterprise name or the enterprise ID.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the self-hosted runner to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/get-self-hosted-runner-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetSelfHostedRunnerInfo", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "runner_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSshSigningKeyDetails", + "qualifiedName": "GithubApi.GetSshSigningKeyDetails", + "fullyQualifiedName": "GithubApi.GetSshSigningKeyDetails@1.0.0", + "description": "Retrieve extended details for an SSH signing key.\n\nUse this tool to get detailed information of an SSH signing key for an authenticated GitHub user. Requires authentication with either Basic Authentication or OAuth with `read:ssh_signing_key` scope.", + "parameters": [ + { + "name": "ssh_signing_key_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the SSH signing key to retrieve details for the authenticated user.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/get-ssh-signing-key-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetSshSigningKeyDetails", + "parameters": { + "ssh_signing_key_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamBySlug", + "qualifiedName": "GithubApi.GetTeamBySlug", + "fullyQualifiedName": "GithubApi.GetTeamBySlug@1.0.0", + "description": "Retrieve team details using organization and team slug.\n\nUse this tool to get detailed information about a specific team in a GitHub organization by providing the organization's name and the team's slug. The slug is a modified version of the team's name, formatted by GitHub.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name. This is a URL-friendly version, typically all lowercase with special characters and spaces replaced by hyphens.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/get-by-name'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetTeamBySlug", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "team_slug": { + "value": "development-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamDiscussion", + "qualifiedName": "GithubApi.GetTeamDiscussion", + "fullyQualifiedName": "GithubApi.GetTeamDiscussion@1.0.0", + "description": "Retrieve a specific team discussion from GitHub.\n\nCall this tool to get details of a specific discussion on a GitHub team's page. This is useful when you need information about a particular topic discussed within a team. Ensure OAuth access tokens with `read:discussion` scope are used.", + "parameters": [ + { + "name": "discussion_identifier_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the discussion to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the GitHub team name, used to specify the team.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/get-discussion-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetTeamDiscussion", + "parameters": { + "discussion_identifier_number": { + "value": 123, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamDiscussionReactions", + "qualifiedName": "GithubApi.GetTeamDiscussionReactions", + "fullyQualifiedName": "GithubApi.GetTeamDiscussionReactions@1.0.0", + "description": "Retrieve reactions to a specific team discussion in a GitHub organization.\n\nUse this tool to obtain the reactions to a team discussion within a GitHub organization. It requires an OAuth token with the `read:discussion` scope. Useful for analyzing feedback or participation in team discussions.", + "parameters": [ + { + "name": "discussion_identifier", + "type": "integer", + "required": true, + "description": "The number identifying the team discussion to retrieve reactions for.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team's name in the specified GitHub organization. It identifies the team for which reactions are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_type", + "type": "string", + "required": false, + "description": "Specify the type of reaction to retrieve (e.g., '+1', '-1', 'laugh'). Omit to retrieve all reactions.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch. Use to navigate through paginated responses.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/list-for-team-discussion-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetTeamDiscussionReactions", + "parameters": { + "discussion_identifier": { + "value": 42, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "dev-team", + "type": "string", + "required": true + }, + "reaction_type": { + "value": "laugh", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 100, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamsWithPushAccessToBranch", + "qualifiedName": "GithubApi.GetTeamsWithPushAccessToBranch", + "fullyQualifiedName": "GithubApi.GetTeamsWithPushAccessToBranch@1.0.0", + "description": "Retrieve teams with push access to a protected branch.\n\nCall this tool to get a list of teams that have push access to a specified protected branch in a GitHub repository. Useful for managing and reviewing team permissions.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The name of the branch to retrieve teams with push access. Wildcard characters are not allowed.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username or organization name that owns the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-teams-with-access-to-protected-branch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetTeamsWithPushAccessToBranch", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserGists", + "qualifiedName": "GithubApi.GetUserGists", + "fullyQualifiedName": "GithubApi.GetUserGists@1.0.0", + "description": "Retrieve a user's public gists from GitHub.\n\nThis tool is used to list all public gists for a specified GitHub user. It should be called when you want to retrieve code snippets or files shared publicly by the user.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub username whose public gists you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Page number of the gist results to fetch. Used for paginating results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of gists to display per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_after_timestamp", + "type": "string", + "required": false, + "description": "Show notifications updated after the specified timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/list-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetUserGists", + "parameters": { + "github_user_handle": { + "value": "exampleuser", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 30, + "type": "integer", + "required": false + }, + "updated_after_timestamp": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserGpgKeyDetails", + "qualifiedName": "GithubApi.GetUserGpgKeyDetails", + "fullyQualifiedName": "GithubApi.GetUserGpgKeyDetails@1.0.0", + "description": "Retrieve extended details for a user's GPG key.\n\nUse this tool to fetch detailed information about a specific GPG key for an authenticated user. Requires authentication via Basic Auth or OAuth with 'read:gpg_key' scope.", + "parameters": [ + { + "name": "gpg_key_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the GPG key to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/get-gpg-key-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetUserGpgKeyDetails", + "parameters": { + "gpg_key_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserOrgEvents", + "qualifiedName": "GithubApi.GetUserOrgEvents", + "fullyQualifiedName": "GithubApi.GetUserOrgEvents@1.0.0", + "description": "Retrieve organization events for an authenticated GitHub user.\n\nUse this tool to get the events related to a user's organization activities on GitHub. It requires authentication as the user to access the details of the organization dashboard.", + "parameters": [ + { + "name": "github_username", + "type": "string", + "required": true, + "description": "The GitHub handle of the user account for whom events are being retrieved. Authentication is required to access user-specific details.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. This parameter is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The specific page of results to retrieve. Provides pagination for fetching events.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-org-events-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetUserOrgEvents", + "parameters": { + "github_username": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "organization_name": { + "value": "OpenSourceOrg", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserOrgMembershipStatus", + "qualifiedName": "GithubApi.GetUserOrgMembershipStatus", + "fullyQualifiedName": "GithubApi.GetUserOrgMembershipStatus@1.0.0", + "description": "Get a user's membership status in an organization.\n\nCall this tool to retrieve the membership status of a user within a specified GitHub organization. Requires the authenticated user to be an organization member.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The handle for the GitHub user account to check membership status.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/get-membership-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetUserOrgMembershipStatus", + "parameters": { + "github_user_handle": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserProjectPermission", + "qualifiedName": "GithubApi.GetUserProjectPermission", + "fullyQualifiedName": "GithubApi.GetUserProjectPermission@1.0.0", + "description": "Retrieve a user's permission level for an organization project.\n\nUse this tool to find out what level of access a specific user has to an organization project on GitHub. This is useful for organization owners or project admins to verify permissions.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub username of the user whose project permission level is being queried.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub project for which to fetch the user's permission.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/get-permission-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetUserProjectPermission", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "project_id": { + "value": 45678, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserReceivedGithubEvents", + "qualifiedName": "GithubApi.GetUserReceivedGithubEvents", + "fullyQualifiedName": "GithubApi.GetUserReceivedGithubEvents@1.0.0", + "description": "Retrieve events received by a GitHub user.\n\nFetches events that a specified user has received on GitHub by watching repositories and following users. Access includes private events if authenticated as the user, or public events otherwise.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The handle of the GitHub user account for which to retrieve events.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number of results to retrieve from the GitHub events list.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-received-events-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetUserReceivedGithubEvents", + "parameters": { + "github_user_handle": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserRepos", + "qualifiedName": "GithubApi.GetUserRepos", + "fullyQualifiedName": "GithubApi.GetUserRepos@1.0.0", + "description": "Retrieve public repositories of a GitHub user.\n\nThis tool retrieves a list of public repositories for a specified GitHub user. It can also list internal repositories for GitHub AE. Use this tool to explore the projects a user has made publicly available on GitHub.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The handle for the GitHub user whose repositories you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number of results to fetch, starting from 1.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_type", + "type": "string", + "required": false, + "description": "Limit results to repositories of the specified type: 'all', 'owner', or 'member'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of repository results to be returned per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specifies the order to sort the repositories. Use 'asc' for ascending and 'desc' for descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_by", + "type": "string", + "required": false, + "description": "Specify the property to sort the repository results by. Options: 'created', 'updated', 'pushed', or 'full_name'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetUserRepos", + "parameters": { + "github_user_handle": { + "value": "johndoe", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "repository_type": { + "value": "all", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 30, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "desc", + "type": "string", + "required": false + }, + "sort_results_by": { + "value": "created", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserTeamMembershipInOrg", + "qualifiedName": "GithubApi.GetUserTeamMembershipInOrg", + "fullyQualifiedName": "GithubApi.GetUserTeamMembershipInOrg@1.0.0", + "description": "Retrieve a user's team membership status in an organization.\n\nFetches the membership state and role of a specified user within a specific team in an organization on GitHub. Useful for determining if a user is a member of a team, including the role they hold.", + "parameters": [ + { + "name": "github_username", + "type": "string", + "required": true, + "description": "The GitHub username of the account whose team membership status is being retrieved. This username is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the GitHub organization.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name. It uniquely identifies the team within the organization. Case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/get-membership-for-user-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetUserTeamMembershipInOrg", + "parameters": { + "github_username": { + "value": "johndoe", + "type": "string", + "required": true + }, + "organization_name": { + "value": "exampleorg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "dev-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWebhookDelivery", + "qualifiedName": "GithubApi.GetWebhookDelivery", + "fullyQualifiedName": "GithubApi.GetWebhookDelivery@1.0.0", + "description": "Retrieve a specific webhook delivery from a repository.\n\nThis tool retrieves details of a webhook delivery for a specified repository. Use it when you need to examine the delivery status or contents of a webhook event.", + "parameters": [ + { + "name": "hook_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the webhook within a repository. It is an integer value required to specify which webhook's delivery information to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_delivery_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the specific webhook delivery to retrieve details for. This is an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-webhook-delivery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetWebhookDelivery", + "parameters": { + "hook_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "webhook_delivery_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWebhookEventDeliveries", + "qualifiedName": "GithubApi.GetWebhookEventDeliveries", + "fullyQualifiedName": "GithubApi.GetWebhookEventDeliveries@1.0.0", + "description": "Retrieve webhook deliveries for an organization.\n\nCall this tool to get a list of webhook deliveries for a specific webhook configured in a GitHub organization. It is useful for monitoring and debugging webhook events.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_hook_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the webhook in the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "include_redeliveries", + "type": "boolean", + "required": false, + "description": "Indicate whether to include repeated webhook deliveries in the results. Set to true to include.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_cursor", + "type": "string", + "required": false, + "description": "A cursor to indicate the starting delivery for fetching the page of deliveries. Useful for pagination purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of webhook deliveries to be returned per page (maximum 100).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/list-webhook-deliveries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetWebhookEventDeliveries", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "webhook_hook_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "include_redeliveries": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_start_cursor": { + "value": "cursor123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkflowAccessLevel", + "qualifiedName": "GithubApi.GetWorkflowAccessLevel", + "fullyQualifiedName": "GithubApi.GetWorkflowAccessLevel@1.0.0", + "description": "Determine external workflow access level for a repository.\n\nUtilize this tool to find out what level of access workflows outside of a specified internal or private repository have to its actions and reusable workflows. This tool is applicable only to internal and private repositories and requires appropriate authentication.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository (case insensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-workflow-access-to-repository'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetWorkflowAccessLevel", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "ExampleUser", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkflowArtifact", + "qualifiedName": "GithubApi.GetWorkflowArtifact", + "fullyQualifiedName": "GithubApi.GetWorkflowArtifact@1.0.0", + "description": "Retrieve a specific artifact from a GitHub workflow run.\n\nUse this tool to access a specific artifact from a GitHub repository's workflow run. Requires appropriate permissions and access token for private repositories.", + "parameters": [ + { + "name": "artifact_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the artifact to retrieve from a workflow run.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-artifact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetWorkflowArtifact", + "parameters": { + "artifact_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkflowRunAttemptLogsUrl", + "qualifiedName": "GithubApi.GetWorkflowRunAttemptLogsUrl", + "fullyQualifiedName": "GithubApi.GetWorkflowRunAttemptLogsUrl@1.0.0", + "description": "Retrieve a URL to download workflow run attempt logs.\n\nReturns a redirect URL to download log files for a specific workflow run attempt. This URL expires in 1 minute and requires appropriate repository access permissions.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive and identifies the repository for which to retrieve logs.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_attempt_number", + "type": "integer", + "required": true, + "description": "The specific attempt number of the workflow run to fetch logs for.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the workflow run. Used to specify which workflow's logs to download.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/download-workflow-run-attempt-logs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GetWorkflowRunAttemptLogsUrl", + "parameters": { + "repository_name": { + "value": "my-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "username", + "type": "string", + "required": true + }, + "workflow_attempt_number": { + "value": 2, + "type": "integer", + "required": true + }, + "workflow_run_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GithubCreateIssueComment", + "qualifiedName": "GithubApi.GithubCreateIssueComment", + "fullyQualifiedName": "GithubApi.GithubCreateIssueComment@1.0.0", + "description": "Create a comment on a GitHub issue.\n\nUse this tool to add a comment to a specific issue in a GitHub repository. Ensure you manage content creation speed to avoid secondary rate limiting.", + "parameters": [ + { + "name": "comment_content", + "type": "string", + "required": true, + "description": "The text content of the comment to be added to the issue.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_identifier", + "type": "integer", + "required": true, + "description": "The unique number identifying the GitHub issue.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository where the issue is located. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/create-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GithubCreateIssueComment", + "parameters": { + "comment_content": { + "value": "This is a great issue! I believe it can be resolved with a simple fix.", + "type": "string", + "required": true + }, + "issue_identifier": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GithubManageEnvironment", + "qualifiedName": "GithubApi.GithubManageEnvironment", + "fullyQualifiedName": "GithubApi.GithubManageEnvironment@1.0.0", + "description": "Create or update a GitHub environment with protection rules.\n\n Use this tool to create or update a GitHub environment, applying protection rules like required reviewers. Ensure you authenticate with an access token with the `repo` scope. GitHub Apps need `administration:write` permission for the repository.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_name", + "type": "string", + "required": false, + "description": "The name of the GitHub environment to create or update. This should be a string that accurately identifies the environment within the repository. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-or-update-environment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GithubManageEnvironment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": false + }, + "environment_name": { + "value": "production", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"deployment_branch_policy\": {\"protected_branches\": true, \"custom_branch_policies\": false}, \"reviewers\": [{\"team_slug\": \"team-a\"}, {\"user_id\": 12345}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GithubRerunWorkflowJob", + "qualifiedName": "GithubApi.GithubRerunWorkflowJob", + "fullyQualifiedName": "GithubApi.GithubRerunWorkflowJob@1.0.0", + "description": "Re-run a job in a GitHub workflow.\n\nThis tool re-runs a specific job and its dependent jobs within a GitHub workflow run. Use it when you need to restart a job that has failed or requires re-execution. Requires authentication with an access token having `repo` scope or `actions:write` permission for GitHub Apps.", + "parameters": [ + { + "name": "job_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the job to be re-run. This is required to specify which job in the workflow needs to be restarted.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_debug_logging", + "type": "boolean", + "required": false, + "description": "Set to true to enable debug logging for the re-run.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/re-run-job-for-workflow-run'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GithubRerunWorkflowJob", + "parameters": { + "job_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "enable_debug_logging": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GithubSearchUsers", + "qualifiedName": "GithubApi.GithubSearchUsers", + "fullyQualifiedName": "GithubApi.GithubSearchUsers@1.0.0", + "description": "Search for GitHub users based on specific criteria.\n\nThis tool allows you to find GitHub users by using various search parameters like login, email, name, repositories, and followers count. It can return up to 100 users per page and includes options for retrieving text match metadata for highlighted results.", + "parameters": [ + { + "name": "search_query", + "type": "string", + "required": true, + "description": "Contains search keywords and qualifiers to find GitHub users. Supports multiple qualifiers to narrow the search. See GitHub's query format documentation for details.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Page number to fetch results, used for accessing subsequent pages of search results. Maximum supported is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of GitHub user results returned per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_criterion", + "type": "string", + "required": false, + "description": "Sort the search results by 'followers', 'repositories', or 'joined'. Defaults to best match if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specifies the order of search results: 'desc' for highest matches or 'asc' for lowest. Requires 'sort'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'search/users'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GithubSearchUsers", + "parameters": { + "search_query": { + "value": "location:San Francisco followers:>200", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_by_criterion": { + "value": "followers", + "type": "string", + "required": false + }, + "sort_order": { + "value": "desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GrantPushAccessGithubBranch", + "qualifiedName": "GithubApi.GrantPushAccessGithubBranch", + "fullyQualifiedName": "GithubApi.GrantPushAccessGithubBranch@1.0.0", + "description": "Grant push access to specified users for a GitHub branch.\n\n This tool is used to grant push access to specific users for a protected branch in a GitHub repository. It is applicable in scenarios involving public repositories with GitHub Free and GitHub Free for organizations, as well as public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The name of the branch to grant push access. Cannot contain wildcard characters. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/add-user-access-restrictions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.GrantPushAccessGithubBranch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"users\":[\"user1\",\"user2\"],\"permission\":\"push\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "InitiateUserMigration", + "qualifiedName": "GithubApi.InitiateUserMigration", + "fullyQualifiedName": "GithubApi.InitiateUserMigration@1.0.0", + "description": "Begin the creation of a user migration archive.\n\nThis tool is used to initiate the generation of a migration archive for an authenticated GitHub user. Call this when you want to start the process of exporting your data for transfer or backup purposes.", + "parameters": [ + { + "name": "repository_list", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of repository names to be included in the migration. Expect an array of strings representing repository names.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_attachments", + "type": "boolean", + "required": false, + "description": "Set to true to exclude attachments from the migration.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of attributes to exclude from the API response for better performance.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_metadata", + "type": "boolean", + "required": false, + "description": "Set to true to exclude metadata and include only git source in the migration.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_owner_projects", + "type": "boolean", + "required": false, + "description": "Set to true to exclude projects owned by the organization or users from the migration process.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_releases", + "type": "boolean", + "required": false, + "description": "Set to true to exclude releases from the migration process.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_repository_git_data", + "type": "boolean", + "required": false, + "description": "Set to true to exclude repository git data from the migration.", + "enum": null, + "inferrable": true + }, + { + "name": "lock_repositories", + "type": "boolean", + "required": false, + "description": "Set to true to lock the repositories at the start of the migration.", + "enum": null, + "inferrable": true + }, + { + "name": "org_metadata_only", + "type": "boolean", + "required": false, + "description": "Set to true to include only organization metadata. Repositories array will be empty and other flags are ignored.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "private_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'migrations/start-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.InitiateUserMigration", + "parameters": { + "repository_list": { + "value": ["repo1", "repo2", "repo3"], + "type": "array", + "required": true + }, + "exclude_attachments": { + "value": false, + "type": "boolean", + "required": false + }, + "exclude_attributes": { + "value": ["lambda_function", "trigger"], + "type": "array", + "required": false + }, + "exclude_metadata": { + "value": true, + "type": "boolean", + "required": false + }, + "exclude_owner_projects": { + "value": false, + "type": "boolean", + "required": false + }, + "exclude_releases": { + "value": true, + "type": "boolean", + "required": false + }, + "exclude_repository_git_data": { + "value": false, + "type": "boolean", + "required": false + }, + "lock_repositories": { + "value": true, + "type": "boolean", + "required": false + }, + "org_metadata_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "LabelRunnerForRepo", + "qualifiedName": "GithubApi.LabelRunnerForRepo", + "fullyQualifiedName": "GithubApi.LabelRunnerForRepo@1.0.0", + "description": "Add custom labels to a repository's self-hosted runner.\n\nUse this tool to add custom labels to a self-hosted runner in a specified GitHub repository. Authentication with an access token with the `repo` scope is required.", + "parameters": [ + { + "name": "custom_labels_to_add", + "type": "array", + "innerType": "string", + "required": true, + "description": "The names of the custom labels to add to the self-hosted runner. Provide as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_id", + "type": "integer", + "required": true, + "description": "Unique identifier for the self-hosted runner in the repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/add-custom-labels-to-self-hosted-runner-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.LabelRunnerForRepo", + "parameters": { + "custom_labels_to_add": { + "value": ["label1", "label2", "bugfix", "enhancement"], + "type": "array", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "runner_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "LinkExternalGroupToTeam", + "qualifiedName": "GithubApi.LinkExternalGroupToTeam", + "fullyQualifiedName": "GithubApi.LinkExternalGroupToTeam@1.0.0", + "description": "Link an external IDP group to a GitHub team.\n\nCreates a connection between a GitHub team and an external identity provider group. Use this tool when you need to manage team membership through your identity provider using GitHub Enterprise Managed Users.", + "parameters": [ + { + "name": "external_group_id", + "type": "integer", + "required": true, + "description": "The ID of the external group to be linked with the GitHub team.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name to connect with an external group. It is case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/link-external-idp-group-to-team-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.LinkExternalGroupToTeam", + "parameters": { + "external_group_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "dev-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListActionsEnabledOrgsEnterprise", + "qualifiedName": "GithubApi.ListActionsEnabledOrgsEnterprise", + "fullyQualifiedName": "GithubApi.ListActionsEnabledOrgsEnterprise@1.0.0", + "description": "List organizations with GitHub Actions enabled in an enterprise.\n\nThis tool lists organizations selected to have GitHub Actions enabled within a specified enterprise. It requires the enterprise permission policy for `enabled_organizations` to be set to `selected`. Authentication with an access token with the `admin:enterprise` scope is necessary.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise to identify it for listing organizations with GitHub Actions enabled.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies which page of results to retrieve, helpful for navigating through multiple pages.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-selected-organizations-enabled-github-actions-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListActionsEnabledOrgsEnterprise", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 2, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListActionsEnabledRepos", + "qualifiedName": "GithubApi.ListActionsEnabledRepos", + "fullyQualifiedName": "GithubApi.ListActionsEnabledRepos@1.0.0", + "description": "Retrieve repositories enabled for GitHub Actions in an organization.\n\nUse this tool to list all repositories where GitHub Actions are enabled within a specific organization. Ensure the organization permission policy for `enabled_repositories` is set to `selected`. Authentication with a token having `admin:org` scope or a GitHub App with `administration` permission is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization for which to list GitHub Actions-enabled repositories. This field is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch. Use for paginating through results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of repositories to return per page (max 100).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-selected-repositories-enabled-github-actions-organization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListActionsEnabledRepos", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListBranchesForCommit", + "qualifiedName": "GithubApi.ListBranchesForCommit", + "fullyQualifiedName": "GithubApi.ListBranchesForCommit@1.0.0", + "description": "Retrieve branches for a specific commit in a GitHub repository.\n\nCall this tool to find all branches where the given commit SHA is the HEAD or the latest commit for the branch in a GitHub repository. Useful for tracking branch status in different GitHub plans.", + "parameters": [ + { + "name": "commit_sha", + "type": "string", + "required": true, + "description": "The SHA hash of the commit used to identify specific branches where this commit is the HEAD in a GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-branches-for-head-commit'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListBranchesForCommit", + "parameters": { + "commit_sha": { + "value": "a1b2c3d4e5f6g7h8i9j0k", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCheckRunAnnotations", + "qualifiedName": "GithubApi.ListCheckRunAnnotations", + "fullyQualifiedName": "GithubApi.ListCheckRunAnnotations@1.0.0", + "description": "Retrieve annotations for a GitHub check run.\n\nUse this tool to fetch a list of annotations associated with a specific check run in a GitHub repository. Requires appropriate permissions on private repositories.", + "parameters": [ + { + "name": "check_run_identifier", + "type": "integer", + "required": true, + "description": "The ID of the check run to retrieve annotations for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository (case insensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number to fetch annotations from. Used for paginating results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results per page to return, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'checks/list-annotations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListCheckRunAnnotations", + "parameters": { + "check_run_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCheckRunsForCommitRef", + "qualifiedName": "GithubApi.ListCheckRunsForCommitRef", + "fullyQualifiedName": "GithubApi.ListCheckRunsForCommitRef@1.0.0", + "description": "Lists check runs for a given commit reference.\n\nFetches check runs associated with a specific commit reference (SHA, branch, or tag) in a repository. Requires appropriate permissions: 'checks:read' for private repositories and 'repo' scope for OAuth Apps on private repositories.", + "parameters": [ + { + "name": "commit_reference", + "type": "string", + "required": true, + "description": "The commit reference, which can be a SHA, branch name, or tag name, to list check runs for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. Input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive and refers to the GitHub username or organization name.", + "enum": null, + "inferrable": true + }, + { + "name": "application_id", + "type": "integer", + "required": false, + "description": "Optional integer identifier for a GitHub App to filter check runs created by that app.", + "enum": null, + "inferrable": true + }, + { + "name": "check_run_name", + "type": "string", + "required": false, + "description": "Specify a name to filter check runs by their name.", + "enum": null, + "inferrable": true + }, + { + "name": "check_run_status", + "type": "string", + "required": false, + "description": "Filter check runs by specifying the status ('queued', 'in_progress', 'completed').", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_completion_timestamp", + "type": "string", + "required": false, + "description": "Specify 'latest' to return the most recent check runs or 'all' to include all completed check runs.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The specific page number of results to retrieve, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'checks/list-for-ref'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListCheckRunsForCommitRef", + "parameters": { + "commit_reference": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "application_id": { + "value": 123456, + "type": "integer", + "required": false + }, + "check_run_name": { + "value": "Continuous Integration", + "type": "string", + "required": false + }, + "check_run_status": { + "value": "completed", + "type": "string", + "required": false + }, + "filter_by_completion_timestamp": { + "value": "latest", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCheckSuitesForRef", + "qualifiedName": "GithubApi.ListCheckSuitesForRef", + "fullyQualifiedName": "GithubApi.ListCheckSuitesForRef@1.0.0", + "description": "List check suites for a specific commit reference.\n\nRetrieve a list of check suites for a given commit reference (SHA, branch, or tag name). Ensure the appropriate permissions are in place for accessing private or public repositories. This tool is useful for checking the status of checks related to a specific commit.", + "parameters": [ + { + "name": "commit_reference", + "type": "string", + "required": true, + "description": "The commit ref, which can be a SHA, branch name, or tag name. Used to list check suites.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to query. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "github_app_id_filter", + "type": "integer", + "required": false, + "description": "Filter check suites by the GitHub App ID to narrow results to relevant checks associated with a specific application.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies which page of results to fetch. Useful for paginating through a list of check suites.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page. The maximum is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_check_name", + "type": "string", + "required": false, + "description": "Specify the name of the check run to filter the results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'checks/list-suites-for-ref'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListCheckSuitesForRef", + "parameters": { + "commit_reference": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "github_app_id_filter": { + "value": 123456, + "type": "integer", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "specific_check_name": { + "value": "example-check", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListChildTeams", + "qualifiedName": "GithubApi.ListChildTeams", + "fullyQualifiedName": "GithubApi.ListChildTeams@1.0.0", + "description": "Retrieves child teams of a specified team in an organization.\n\nUse this tool to get a list of child teams under a specific team within an organization on GitHub. It requires specifying the team by its slug and the organization name.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization's name. It's case insensitive and used to specify which organization's team structure to query.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier_slug", + "type": "string", + "required": true, + "description": "The slug of the team name for which to list child teams. This is used to uniquely identify the team within the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve in the list of child teams. Use to paginate the results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/list-child-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListChildTeams", + "parameters": { + "organization_name": { + "value": "exampleOrg", + "type": "string", + "required": true + }, + "team_identifier_slug": { + "value": "parent-team", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCodeownersErrors", + "qualifiedName": "GithubApi.ListCodeownersErrors", + "fullyQualifiedName": "GithubApi.ListCodeownersErrors@1.0.0", + "description": "Identify syntax errors in a repository's CODEOWNERS file.\n\nThis tool checks a repository's CODEOWNERS file for any syntax errors. It's useful for ensuring that the file is correctly formatted and functioning as intended. Use this tool to diagnose issues with the CODEOWNERS file when configuring repository access controls.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "version_reference", + "type": "string", + "required": false, + "description": "Specify the branch, tag, or commit name to select the CODEOWNERS file version. Defaults to the repository's default branch if not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/codeowners-errors'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListCodeownersErrors", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "version_reference": { + "value": "main", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCodeScanningAlertInstances", + "qualifiedName": "GithubApi.ListCodeScanningAlertInstances", + "fullyQualifiedName": "GithubApi.ListCodeScanningAlertInstances@1.0.0", + "description": "Retrieve instances of a specific code scanning alert.\n\nUse this tool to list all instances of a given code scanning alert in a GitHub repository. This is useful for monitoring or analyzing alert occurrences. Requires appropriate access tokens with `security_events` or `public_repo` scope.", + "parameters": [ + { + "name": "alert_identifier", + "type": "integer", + "required": true, + "description": "The unique number identifying the code scanning alert. Find this number at the end of the alert URL in GitHub or in the `GET /repos/{owner}/{repo}/code-scanning/alerts` response.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "git_reference", + "type": "string", + "required": false, + "description": "The Git reference for the results you want to list. Format as `refs/heads/` or `` for branches, and `refs/pull//merge` for pull requests.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch. Use for navigating large sets of alert instances.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page (maximum 100).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'code-scanning/list-alert-instances'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListCodeScanningAlertInstances", + "parameters": { + "alert_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "git_reference": { + "value": "refs/heads/main", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCodeScanningAlerts", + "qualifiedName": "GithubApi.ListCodeScanningAlerts", + "fullyQualifiedName": "GithubApi.ListCodeScanningAlerts@1.0.0", + "description": "Retrieve code scanning alerts for a repository.\n\nRetrieve a list of code scanning alerts for a specific GitHub repository, using an access token with the necessary permissions. Useful for monitoring code security issues in a repository.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository for which to list code scanning alerts. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_state_filter", + "type": "string", + "required": false, + "description": "Filter code scanning alerts by state. Valid options are 'open', 'closed', 'dismissed', and 'fixed'.", + "enum": null, + "inferrable": true + }, + { + "name": "code_scanning_tool_guid", + "type": "string", + "required": false, + "description": "The GUID of a code scanning tool to filter alerts by this tool only. This can't be used with 'tool_name'.", + "enum": null, + "inferrable": true + }, + { + "name": "code_scanning_tool_name", + "type": "string", + "required": false, + "description": "Specify the name of the code scanning tool to filter alerts by this tool only. Use either `tool_name` or `tool_guid`, but not both.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_severity", + "type": "string", + "required": false, + "description": "Specify the severity of code scanning alerts to filter, using values like 'critical', 'high', 'medium', 'low', 'warning', 'note', or 'error'.", + "enum": null, + "inferrable": true + }, + { + "name": "git_reference_for_scan_results", + "type": "string", + "required": false, + "description": "The Git reference for listing results. Use `refs/heads/` or `` for branches, `refs/pull//merge` for pull requests.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number to fetch results from. Use this to navigate through paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_property", + "type": "string", + "required": false, + "description": "Property to sort the results by, either 'created' or 'updated'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The direction to sort the results. Choose 'asc' for ascending or 'desc' for descending order.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'code-scanning/list-alerts-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListCodeScanningAlerts", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "alert_state_filter": { + "value": "open", + "type": "string", + "required": false + }, + "code_scanning_tool_guid": { + "value": "12345678-1234-1234-1234-123456789abc", + "type": "string", + "required": false + }, + "code_scanning_tool_name": { + "value": "example-tool", + "type": "string", + "required": false + }, + "filter_by_severity": { + "value": "high", + "type": "string", + "required": false + }, + "git_reference_for_scan_results": { + "value": "refs/heads/main", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_by_property": { + "value": "created", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCommitCommentReactions", + "qualifiedName": "GithubApi.ListCommitCommentReactions", + "fullyQualifiedName": "GithubApi.ListCommitCommentReactions@1.0.0", + "description": "Retrieve reactions for a GitHub commit comment.\n\nThis tool fetches the list of reactions associated with a specific commit comment on GitHub. It should be called when you need to view reactions to a particular commit comment within a repository.", + "parameters": [ + { + "name": "comment_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the commit comment you want to retrieve reactions for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive and identifies the repository within the specified owner's account.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_type", + "type": "string", + "required": false, + "description": "Filter results to show only a specific reaction type. Omit to list all reactions.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/list-for-commit-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListCommitCommentReactions", + "parameters": { + "comment_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "reaction_type": { + "value": "heart", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCommitComments", + "qualifiedName": "GithubApi.ListCommitComments", + "fullyQualifiedName": "GithubApi.ListCommitComments@1.0.0", + "description": "Retrieve comments for a specific commit in a GitHub repo.\n\nThis tool fetches all comments associated with a specific commit in a given GitHub repository. It should be called when you need to view discussions or feedback on a specific code change identified by its commit SHA.", + "parameters": [ + { + "name": "commit_sha", + "type": "string", + "required": true, + "description": "The SHA string representing the specific commit to retrieve comments for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive and identifies the GitHub user or organization that owns the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of results to fetch for commit comments. Useful for paginating through large sets of comments.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of comments to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-comments-for-commit'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListCommitComments", + "parameters": { + "commit_sha": { + "value": "abc123def456ghi789jkl012mno345pqrs678tuv", + "type": "string", + "required": true + }, + "repository_name": { + "value": "ExampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "ExampleUser", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListDependabotAlertsForOrganization", + "qualifiedName": "GithubApi.ListDependabotAlertsForOrganization", + "fullyQualifiedName": "GithubApi.ListDependabotAlertsForOrganization@1.0.0", + "description": "Lists Dependabot alerts for an organization.\n\nThis tool lists Dependabot alerts for a specified organization. It requires you to be an organization owner or security manager with an appropriate access token. GitHub Apps need **Dependabot alerts** read permission. Use for monitoring security alerts related to dependencies.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization name for which to list Dependabot alerts. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_severity_filter", + "type": "string", + "required": false, + "description": "Comma-separated severities to filter alerts. Options: `low`, `medium`, `high`, `critical`.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_states", + "type": "string", + "required": false, + "description": "Comma-separated list of alert states to filter by. Options: `dismissed`, `fixed`, `open`.", + "enum": null, + "inferrable": true + }, + { + "name": "deprecated_first_results_page_size", + "type": "integer", + "required": false, + "description": "**Deprecated**. Use `per_page` with `after` instead. Specifies the number of results per page, up to 100, starting from the first matching result. Avoid using with `last`.", + "enum": null, + "inferrable": true + }, + { + "name": "deprecated_last_results_per_page", + "type": "integer", + "required": false, + "description": "**Deprecated**. Use this to specify the number of results per page (max 100) from the last matching result. Cannot be used with 'first'.", + "enum": null, + "inferrable": true + }, + { + "name": "ecosystem_list", + "type": "string", + "required": false, + "description": "Comma-separated ecosystems to filter alerts. Options: composer, go, maven, npm, nuget, pip, pub, rubygems, rust.", + "enum": null, + "inferrable": true + }, + { + "name": "package_names", + "type": "string", + "required": false, + "description": "A comma-separated list of package names. Only alerts for these specified packages will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "paginate_after_cursor", + "type": "string", + "required": false, + "description": "A cursor indicating the point to continue the listing from, based on the Link header.", + "enum": null, + "inferrable": true + }, + { + "name": "results_before_cursor", + "type": "string", + "required": false, + "description": "A cursor indicating to search for Dependabot alerts before this position.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of Dependabot alerts to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_property", + "type": "string", + "required": false, + "description": "Sort results by `created` (alert creation) or `updated` (state change).", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The order to sort the results, either ascending ('asc') or descending ('desc').", + "enum": null, + "inferrable": true + }, + { + "name": "vulnerable_dependency_scope", + "type": "string", + "required": false, + "description": "Specify the scope of the vulnerable dependency as either 'development' or 'runtime'. Only alerts with this scope will be returned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/list-alerts-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListDependabotAlertsForOrganization", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "alert_severity_filter": { + "value": "high,critical", + "type": "string", + "required": false + }, + "alert_states": { + "value": "open", + "type": "string", + "required": false + }, + "deprecated_first_results_page_size": { + "value": null, + "type": "integer", + "required": false + }, + "deprecated_last_results_per_page": { + "value": null, + "type": "integer", + "required": false + }, + "ecosystem_list": { + "value": "npm,rubygems", + "type": "string", + "required": false + }, + "package_names": { + "value": "express,rails", + "type": "string", + "required": false + }, + "paginate_after_cursor": { + "value": null, + "type": "string", + "required": false + }, + "results_before_cursor": { + "value": null, + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_by_property": { + "value": "created", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "vulnerable_dependency_scope": { + "value": "runtime", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListDependabotAlertsForRepo", + "qualifiedName": "GithubApi.ListDependabotAlertsForRepo", + "fullyQualifiedName": "GithubApi.ListDependabotAlertsForRepo@1.0.0", + "description": "Retrieve Dependabot alerts for a specific repository.\n\nUse this tool to get a list of Dependabot alerts for a given GitHub repository. It requires an access token with `security_events` scope for private repositories or `public_repo` scope for public repositories. Ideal for monitoring security vulnerabilities in repositories.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_states_filter", + "type": "string", + "required": false, + "description": "A comma-separated list of alert states to filter results by. Options: `dismissed`, `fixed`, `open`.", + "enum": null, + "inferrable": true + }, + { + "name": "before_cursor", + "type": "string", + "required": false, + "description": "Cursor indicating the position to fetch results before this point.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_after", + "type": "string", + "required": false, + "description": "A cursor to fetch results after a specified point. Helps in pagination by retrieving alerts following the given cursor position.", + "enum": null, + "inferrable": true + }, + { + "name": "deprecated_page_number", + "type": "integer", + "required": false, + "description": "**Deprecated**. Use to specify the page number of results to fetch. Prefer using `before` or `after` cursors.", + "enum": null, + "inferrable": true + }, + { + "name": "ecosystem_filter", + "type": "string", + "required": false, + "description": "Comma-separated list of ecosystems to filter alerts by: composer, go, maven, npm, nuget, pip, pub, rubygems, rust.", + "enum": null, + "inferrable": true + }, + { + "name": "fetch_deprecated_first_page_results", + "type": "integer", + "required": false, + "description": "**Deprecated**. Number of results per page (max 100), starting from the first result. Avoid using with `last`. Use `per_page` and `after` instead.", + "enum": null, + "inferrable": true + }, + { + "name": "fetch_last_page_results", + "type": "integer", + "required": false, + "description": "**Deprecated**: Use `per_page` with `before` instead. Fetch results per page from the last result (max 100).", + "enum": null, + "inferrable": true + }, + { + "name": "manifest_paths", + "type": "string", + "required": false, + "description": "Comma-separated list of full manifest paths to filter alerts by those manifests.", + "enum": null, + "inferrable": true + }, + { + "name": "package_names", + "type": "string", + "required": false, + "description": "A comma-separated list of package names. Only alerts for these packages will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to be returned per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "severity_filter", + "type": "string", + "required": false, + "description": "Provide a comma-separated list of severities: `low`, `medium`, `high`, `critical`. Filters alerts by these severities.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "Sort alerts by `created` or `updated` date. `Created` means when the alert was created, `updated` means when the alert's state last changed.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_direction", + "type": "string", + "required": false, + "description": "Specify the order to sort the results: `asc` for ascending or `desc` for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "vulnerable_dependency_scope", + "type": "string", + "required": false, + "description": "Specifies the scope of the vulnerable dependency to filter alerts. Options: 'development' or 'runtime'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/list-alerts-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListDependabotAlertsForRepo", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "alert_states_filter": { + "value": "open, dismissed", + "type": "string", + "required": false + }, + "before_cursor": { + "value": "cursor123", + "type": "string", + "required": false + }, + "cursor_after": { + "value": "cursor456", + "type": "string", + "required": false + }, + "deprecated_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "ecosystem_filter": { + "value": "npm, pip", + "type": "string", + "required": false + }, + "fetch_deprecated_first_page_results": { + "value": null, + "type": "integer", + "required": false + }, + "fetch_last_page_results": { + "value": null, + "type": "integer", + "required": false + }, + "manifest_paths": { + "value": "/path/to/manifest1,/path/to/manifest2", + "type": "string", + "required": false + }, + "package_names": { + "value": "example-package1,example-package2", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "severity_filter": { + "value": "high, critical", + "type": "string", + "required": false + }, + "sort_by": { + "value": "created", + "type": "string", + "required": false + }, + "sort_results_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "vulnerable_dependency_scope": { + "value": "runtime", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListDeploymentBranchPolicies", + "qualifiedName": "GithubApi.ListDeploymentBranchPolicies", + "fullyQualifiedName": "GithubApi.ListDeploymentBranchPolicies@1.0.0", + "description": "Lists deployment branch policies for a GitHub environment.\n\nUse this tool to retrieve the branch policies associated with a specific environment in a GitHub repository. Accessible with read access; requires 'repo' scope for private repos.", + "parameters": [ + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "The name of the environment for which to list branch policies. This should match an existing environment in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to retrieve. Use this to navigate through paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-deployment-branch-policies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListDeploymentBranchPolicies", + "parameters": { + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEnterpriseCodeScanningAlerts", + "qualifiedName": "GithubApi.ListEnterpriseCodeScanningAlerts", + "fullyQualifiedName": "GithubApi.ListEnterpriseCodeScanningAlerts@1.0.0", + "description": "Retrieve code scanning alerts for enterprise repositories.\n\nThis tool is used to list code scanning alerts for the default branch of all eligible repositories within an enterprise. It requires the user to be a member of the enterprise and have an access token with the necessary scopes (`repo` or `security_events`). Use this tool to monitor security alerts across repositories owned by organizations you manage as a security manager.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug version or ID of the enterprise. Used to specify which enterprise's alerts to list.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_state_filter", + "type": "string", + "required": false, + "description": "Filter code scanning alerts by their state. Valid values are 'open', 'closed', 'dismissed', 'fixed'.", + "enum": null, + "inferrable": true + }, + { + "name": "code_scanning_tool_guid", + "type": "string", + "required": false, + "description": "The GUID of a code scanning tool to filter alerts. Use either `code_scanning_tool_guid` or `code_scanning_tool_name`, but not both.", + "enum": null, + "inferrable": true + }, + { + "name": "code_scanning_tool_name", + "type": "string", + "required": false, + "description": "The name of a code scanning tool to filter results. Use either this or `tool_guid`, but not both.", + "enum": null, + "inferrable": true + }, + { + "name": "query_results_before_cursor", + "type": "string", + "required": false, + "description": "The cursor from the Link header to search for alerts before this point.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number to fetch results from. Used for pagination of code scanning alerts.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of alerts to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specifies the sorting order of the results, either ascending ('asc') or descending ('desc').", + "enum": null, + "inferrable": true + }, + { + "name": "sort_property", + "type": "string", + "required": false, + "description": "Specify the property to sort the results by. Valid values are 'created' or 'updated'.", + "enum": null, + "inferrable": true + }, + { + "name": "start_after_cursor", + "type": "string", + "required": false, + "description": "Specifies the cursor to return results after this point. Utilize the cursor from the Link header.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'code-scanning/list-alerts-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListEnterpriseCodeScanningAlerts", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "alert_state_filter": { + "value": "open", + "type": "string", + "required": false + }, + "code_scanning_tool_guid": { + "value": "1234-5678-90ab-cdef", + "type": "string", + "required": false + }, + "code_scanning_tool_name": { + "value": "SonarQube", + "type": "string", + "required": false + }, + "query_results_before_cursor": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "sort_property": { + "value": "created", + "type": "string", + "required": false + }, + "start_after_cursor": { + "value": "xyz9876", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEnterpriseDependabotAlerts", + "qualifiedName": "GithubApi.ListEnterpriseDependabotAlerts", + "fullyQualifiedName": "GithubApi.ListEnterpriseDependabotAlerts@1.0.0", + "description": "Get Dependabot alerts for enterprise-owned repositories.\n\nThis tool retrieves a list of Dependabot alerts for repositories owned by a specified enterprise on GitHub. It is used by members of the enterprise with appropriate access tokens. Alerts are restricted to organizations where the user is an owner or security manager.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise. This identifies the enterprise for which alerts are listed.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_severities", + "type": "string", + "required": false, + "description": "A comma-separated list of alert severities to filter results. Options: `low`, `medium`, `high`, `critical`.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_state_filter", + "type": "string", + "required": false, + "description": "Comma-separated list of alert states to filter by: `dismissed`, `fixed`, `open`. Only alerts with these states will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "before_cursor", + "type": "string", + "required": false, + "description": "Specify a cursor to fetch results before this point. Use the format provided in the Link header.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_after", + "type": "string", + "required": false, + "description": "A cursor to return results after a specific point. Use as given in the Link header for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "ecosystem_list", + "type": "string", + "required": false, + "description": "A comma-separated list of ecosystems to filter alerts. Options include: `composer`, `go`, `maven`, `npm`, `nuget`, `pip`, `pub`, `rubygems`, `rust`.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_results_per_page_starting_first", + "type": "integer", + "required": false, + "description": "**Deprecated**. Specifies the number of results per page (maximum 100), beginning with the first matching result. Avoid using with `number_of_results_per_page_starting_last`. Use `results_per_page` with `paging_after_cursor` instead.", + "enum": null, + "inferrable": true + }, + { + "name": "package_filter", + "type": "string", + "required": false, + "description": "A comma-separated list of package names. Specify to filter alerts by these packages.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page_starting_from_last", + "type": "integer", + "required": false, + "description": "**Deprecated**. Number of results per page (max 100), starting from the last matching result. Avoid using with 'results_per_page_starting_from_first'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specifies the sorting order of the results, either ascending ('asc') or descending ('desc').", + "enum": null, + "inferrable": true + }, + { + "name": "sort_property_for_alerts", + "type": "string", + "required": false, + "description": "Specifies the property to sort Dependabot alerts by. Options are 'created' (when the alert was created) or 'updated' (when the alert's state last changed).", + "enum": null, + "inferrable": true + }, + { + "name": "vulnerable_dependency_scope", + "type": "string", + "required": false, + "description": "The scope of the vulnerable dependency to filter alerts by. Options: 'development', 'runtime'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/list-alerts-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListEnterpriseDependabotAlerts", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "alert_severities": { + "value": "high,critical", + "type": "string", + "required": false + }, + "alert_state_filter": { + "value": "open,dismissed", + "type": "string", + "required": false + }, + "before_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "cursor_after": { + "value": "xyz789", + "type": "string", + "required": false + }, + "ecosystem_list": { + "value": "npm,python", + "type": "string", + "required": false + }, + "number_of_results_per_page_starting_first": { + "value": null, + "type": "integer", + "required": false + }, + "package_filter": { + "value": "express,requests", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "results_per_page_starting_from_last": { + "value": null, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "sort_property_for_alerts": { + "value": "created", + "type": "string", + "required": false + }, + "vulnerable_dependency_scope": { + "value": "runtime", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListExternalGroupsForOrg", + "qualifiedName": "GithubApi.ListExternalGroupsForOrg", + "fullyQualifiedName": "GithubApi.ListExternalGroupsForOrg@1.0.0", + "description": "Retrieve external groups available in a GitHub organization.\n\nFetches a list of external groups for a specified organization. Use the `display_name` parameter to filter groups by name, and `per_page` for pagination.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "group_name_filter", + "type": "string", + "required": false, + "description": "Filter results to include only groups with names containing this text.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "integer", + "required": false, + "description": "Token to specify the starting point for the next set of results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum value of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/list-external-idp-groups-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListExternalGroupsForOrg", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "group_name_filter": { + "value": "dev", + "type": "string", + "required": false + }, + "pagination_token": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListFollowedUsers", + "qualifiedName": "GithubApi.ListFollowedUsers", + "fullyQualifiedName": "GithubApi.ListFollowedUsers@1.0.0", + "description": "Lists the people the authenticated user follows.", + "parameters": [ + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results you want to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/list-followed-by-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListFollowedUsers", + "parameters": { + "results_page_number": { + "value": 2, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListFollowers", + "qualifiedName": "GithubApi.ListFollowers", + "fullyQualifiedName": "GithubApi.ListFollowers@1.0.0", + "description": "Retrieve followers of the authenticated user on GitHub.\n\nThis tool retrieves a list of people who are following the authenticated GitHub user. Use it to access follower information for engagement or insights.", + "parameters": [ + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies which page of followers to fetch. Used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of followers to list per page (maximum 100).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/list-followers-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListFollowers", + "parameters": { + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGistComments", + "qualifiedName": "GithubApi.ListGistComments", + "fullyQualifiedName": "GithubApi.ListGistComments@1.0.0", + "description": "Retrieve comments for a specific GitHub gist.\n\nThis tool is used to fetch comments associated with a specified GitHub gist, identified by its gist ID.", + "parameters": [ + { + "name": "gist_identifier", + "type": "string", + "required": true, + "description": "Provide the unique identifier of the gist for which comments are to be listed.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number to fetch from the list of gist comments.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of comments to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/list-comments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGistComments", + "parameters": { + "gist_identifier": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGistCommits", + "qualifiedName": "GithubApi.ListGistCommits", + "fullyQualifiedName": "GithubApi.ListGistCommits@1.0.0", + "description": "Retrieve the commit history of a specified GitHub gist.\n\nUse this tool to obtain a list of all commits associated with a specific gist on GitHub. Ideal for tracking changes and updates made to the gist content over time.", + "parameters": [ + { + "name": "gist_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the gist for which to list commits.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to fetch for pagination. Useful for accessing more than the default result set.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/list-commits'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGistCommits", + "parameters": { + "gist_identifier": { + "value": "a1b2c3d4e5f6g7h8i9j0", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGistForks", + "qualifiedName": "GithubApi.ListGistForks", + "fullyQualifiedName": "GithubApi.ListGistForks@1.0.0", + "description": "Retrieve a list of forks for a specific gist.\n\nUse this tool to get information about the forks of a specific gist on GitHub by providing the gist ID.", + "parameters": [ + { + "name": "gist_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the gist to retrieve forks information from.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results you want to fetch. Used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100 allowed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/list-forks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGistForks", + "parameters": { + "gist_unique_identifier": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubActionsCaches", + "qualifiedName": "GithubApi.ListGithubActionsCaches", + "fullyQualifiedName": "GithubApi.ListGithubActionsCaches@1.0.0", + "description": "Retrieve the list of GitHub Actions caches for a repository.\n\nThis tool fetches the list of GitHub Actions caches for a specified repository. It requires authentication with an access token having the 'repo' scope, or GitHub Apps must have the 'actions:read' permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "cache_key_or_prefix", + "type": "string", + "required": false, + "description": "Explicit key or prefix to identify the cache. Use this to filter caches by specific keys or prefixes.", + "enum": null, + "inferrable": true + }, + { + "name": "git_reference", + "type": "string", + "required": false, + "description": "Specify the Git reference for the results to list. Use `refs/heads/` for branches or `refs/pull//merge` for pull requests.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_property", + "type": "string", + "required": false, + "description": "The property to sort results by. Options are 'created_at', 'last_accessed_at', or 'size_in_bytes'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specify 'asc' for ascending or 'desc' for descending order of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-actions-cache-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubActionsCaches", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "cache_key_or_prefix": { + "value": "my-cache-prefix", + "type": "string", + "required": false + }, + "git_reference": { + "value": "refs/heads/main", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_by_property": { + "value": "last_accessed_at", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubAppAccessibleRepos", + "qualifiedName": "GithubApi.ListGithubAppAccessibleRepos", + "fullyQualifiedName": "GithubApi.ListGithubAppAccessibleRepos@1.0.0", + "description": "List repositories accessible to a GitHub app installation.\n\nUse this tool to retrieve a list of repositories that a GitHub app installation can access. Requires an installation access token for authentication.", + "parameters": [ + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of repositories to include on each page of results. Maximum is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/list-repos-accessible-to-installation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubAppAccessibleRepos", + "parameters": { + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubAppInstallations", + "qualifiedName": "GithubApi.ListGithubAppInstallations", + "fullyQualifiedName": "GithubApi.ListGithubAppInstallations@1.0.0", + "description": "Retrieve installations of a GitHub app using a JWT.\n\nUse this tool to get a list of all installations for a GitHub app. The response includes details about the permissions granted to each installation. This is useful for managing and auditing app installations.", + "parameters": [ + { + "name": "include_outdated", + "type": "string", + "required": false, + "description": "Include or exclude outdated installations in the results. Pass 'true' to include them.", + "enum": null, + "inferrable": true + }, + { + "name": "notifications_updated_since", + "type": "string", + "required": false, + "description": "Specify a timestamp in ISO 8601 format to filter installations updated after this time. Format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results you want to retrieve, allowing pagination through the results. Useful for fetching specific subsets of data.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page. Maximum is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/list-installations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubAppInstallations", + "parameters": { + "include_outdated": { + "value": "true", + "type": "string", + "required": false + }, + "notifications_updated_since": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubCheckRunsForSuite", + "qualifiedName": "GithubApi.ListGithubCheckRunsForSuite", + "fullyQualifiedName": "GithubApi.ListGithubCheckRunsForSuite@1.0.0", + "description": "List check runs for a GitHub check suite using its ID.\n\nThis tool retrieves a list of check runs for a specified check suite in a GitHub repository. It requires appropriate permissions or scopes depending on the repository type.", + "parameters": [ + { + "name": "check_suite_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the check suite to list its check runs.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to query. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner's username of the repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "check_run_name", + "type": "string", + "required": false, + "description": "Returns check runs with the specified name.", + "enum": null, + "inferrable": true + }, + { + "name": "check_run_status", + "type": "string", + "required": false, + "description": "Specify the status of the check runs to be returned. Options: 'queued', 'in_progress', 'completed'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_completion_time", + "type": "string", + "required": false, + "description": "Filters check runs by their `completed_at` timestamp. Use 'latest' for the most recent runs or 'all' for all runs.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Specifies which page of the results to fetch, for paginated data.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Sets the number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'checks/list-for-suite'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubCheckRunsForSuite", + "parameters": { + "check_suite_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "check_run_name": { + "value": "CI Build", + "type": "string", + "required": false + }, + "check_run_status": { + "value": "completed", + "type": "string", + "required": false + }, + "filter_by_completion_time": { + "value": "latest", + "type": "string", + "required": false + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubCustomRoles", + "qualifiedName": "GithubApi.ListGithubCustomRoles", + "fullyQualifiedName": "GithubApi.ListGithubCustomRoles@1.0.0", + "description": "Retrieve custom repository roles for a GitHub organization.\n\nRetrieve a list of available custom repository roles in a GitHub organization if authenticated as an organization owner or administrator with the appropriate permissions.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier of the GitHub organization to list custom roles for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/list-custom-roles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubCustomRoles", + "parameters": { + "organization_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubDeployKeys", + "qualifiedName": "GithubApi.ListGithubDeployKeys", + "fullyQualifiedName": "GithubApi.ListGithubDeployKeys@1.0.0", + "description": "Retrieve deploy keys for a specific GitHub repository.\n\nThis tool is used to retrieve the list of deploy keys associated with a specified GitHub repository, identified by its owner and repository name. It's useful for managing access controls and integrations.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive and identifies which repository's deploy keys are listed.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the deploy keys results to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-deploy-keys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubDeployKeys", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubDeployments", + "qualifiedName": "GithubApi.ListGithubDeployments", + "fullyQualifiedName": "GithubApi.ListGithubDeployments@1.0.0", + "description": "Retrieve deployments from a GitHub repository.\n\nUse this tool to retrieve a list of deployments for a specific GitHub repository, with filtering options available through query parameters.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "commit_sha", + "type": "string", + "required": false, + "description": "The commit SHA recorded at deployment creation time for filtering deployments.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_environment", + "type": "string", + "required": false, + "description": "Specify the environment that was deployed to, such as 'staging' or 'production'.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_task_name", + "type": "string", + "required": false, + "description": "The specific task name for the deployment, like `deploy` or `deploy:migrations`.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_ref", + "type": "string", + "required": false, + "description": "The name of the ref. This can be a branch, tag, or SHA to filter deployments by.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies which page of deployment results to fetch. Used for pagination to navigate through multiple pages of results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-deployments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubDeployments", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "commit_sha": { + "value": "a1b2c3d4e5f6g7h8i9j0", + "type": "string", + "required": false + }, + "deployment_environment": { + "value": "production", + "type": "string", + "required": false + }, + "deployment_task_name": { + "value": "deploy", + "type": "string", + "required": false + }, + "repository_ref": { + "value": "main", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubDeploymentStatuses", + "qualifiedName": "GithubApi.ListGithubDeploymentStatuses", + "fullyQualifiedName": "GithubApi.ListGithubDeploymentStatuses@1.0.0", + "description": "Retrieve deployment statuses for a specified GitHub deployment.\n\nThis tool is used to access and list the deployment statuses for a specific deployment on GitHub. It should be called when there is a need to review the status updates related to a deployment, and is accessible to users with pull access on the repository.", + "parameters": [ + { + "name": "deployment_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the deployment to retrieve statuses for. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username or organization that owns the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The specific page number of deployment statuses to fetch. Used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-deployment-statuses'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubDeploymentStatuses", + "parameters": { + "deployment_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubEmojis", + "qualifiedName": "GithubApi.ListGithubEmojis", + "fullyQualifiedName": "GithubApi.ListGithubEmojis@1.0.0", + "description": "Lists all available GitHub emojis.\n\nUse this tool to retrieve a list of all emojis that can be used on GitHub Enterprise Server.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'emojis/get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubEmojis", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubEnvironmentSecrets", + "qualifiedName": "GithubApi.ListGithubEnvironmentSecrets", + "fullyQualifiedName": "GithubApi.ListGithubEnvironmentSecrets@1.0.0", + "description": "Retrieve secrets for a GitHub environment.\n\nUse this tool to list all secrets in a specific GitHub environment without revealing their encrypted values. Authentication with a token having `repo` scope is required. Best used for managing or auditing environment secrets.", + "parameters": [ + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "The name of the environment whose secrets are to be listed. This is necessary to identify the specific environment in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the repository. Required to fetch the environment secrets.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum allowable value of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-environment-secrets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubEnvironmentSecrets", + "parameters": { + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubEnvironmentVariables", + "qualifiedName": "GithubApi.ListGithubEnvironmentVariables", + "fullyQualifiedName": "GithubApi.ListGithubEnvironmentVariables@1.0.0", + "description": "Retrieve environment variables from a GitHub repository's environment.\n\nUse this tool to list all environment variables for a specific environment within a GitHub repository. Requires authentication with a token having 'repo' scope or as a GitHub App with 'environments:read' permission.", + "parameters": [ + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "Specify the environment name to retrieve its variables within a GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub repository to retrieve environment variables from.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number to retrieve results from. Use for paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of environment variables to return per page, with a maximum allowed value of 30.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-environment-variables'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubEnvironmentVariables", + "parameters": { + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_id": { + "value": 12345678, + "type": "integer", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubIssueAssignees", + "qualifiedName": "GithubApi.ListGithubIssueAssignees", + "fullyQualifiedName": "GithubApi.ListGithubIssueAssignees@1.0.0", + "description": "Retrieve available assignees for GitHub issues.\n\nThis tool is used to list the available assignees for issues in a specified GitHub repository. Call this tool when you need to know who can be assigned to issues in a repository.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The owner of the repository. Input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch. Use to paginate through results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/list-assignees'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubIssueAssignees", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubIssueComments", + "qualifiedName": "GithubApi.ListGithubIssueComments", + "fullyQualifiedName": "GithubApi.ListGithubIssueComments@1.0.0", + "description": "Retrieve comments for a specific GitHub issue.\n\nUse this tool to get all comments for a specific issue in a GitHub repository. It’s useful when you need to review discussions or updates on a particular issue.", + "parameters": [ + { + "name": "issue_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the GitHub issue to retrieve comments for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository (case insensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Provide the username as a case-insensitive string.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to fetch when listing comments for pagination purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of comments to retrieve per page, maximum 100.", + "enum": null, + "inferrable": true + }, + { + "name": "since_timestamp", + "type": "string", + "required": false, + "description": "Show notifications updated after this time in ISO 8601 format (`YYYY-MM-DDTHH:MM:SSZ`).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/list-comments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubIssueComments", + "parameters": { + "issue_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "johnDoe", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "since_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubIssueEvents", + "qualifiedName": "GithubApi.ListGithubIssueEvents", + "fullyQualifiedName": "GithubApi.ListGithubIssueEvents@1.0.0", + "description": "Retrieve events for a specific GitHub issue.\n\nThis tool fetches a list of events related to a particular issue in a specified GitHub repository. It is useful for tracking changes, updates, and interactions associated with an issue.", + "parameters": [ + { + "name": "issue_number", + "type": "integer", + "required": true, + "description": "The number that identifies the issue within the repository. This is required to fetch the related events.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. This input is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number to fetch results from when listing issue events.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of issue events to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/list-events'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubIssueEvents", + "parameters": { + "issue_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubIssues", + "qualifiedName": "GithubApi.ListGithubIssues", + "fullyQualifiedName": "GithubApi.ListGithubIssues@1.0.0", + "description": "Get issues assigned to you across all GitHub repositories.\n\nThis tool retrieves a list of issues that are assigned to the authenticated user from all visible repositories on GitHub, including owned, member, and organization repositories. It can be used to monitor workload and track tasks across projects. Note that the results may include pull requests as well, identified by a `pull_request` key.", + "parameters": [ + { + "name": "include_collaborative_repositories", + "type": "boolean", + "required": false, + "description": "Include issues from collaborative repositories. Set to true to filter issues where you have collaborative access.", + "enum": null, + "inferrable": true + }, + { + "name": "include_owned_repositories", + "type": "boolean", + "required": false, + "description": "Set to true to include issues from repositories owned by the authenticated user.", + "enum": null, + "inferrable": true + }, + { + "name": "include_pull_requests", + "type": "boolean", + "required": false, + "description": "Set to true to include pull requests in the issues list.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_filter_type", + "type": "string", + "required": false, + "description": "Specifies the type of issues to return: assigned, created, mentioned, subscribed, repos, or all.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_labels", + "type": "string", + "required": false, + "description": "Comma-separated list of label names to filter issues. Example: 'bug,ui,@high'.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_state", + "type": "string", + "required": false, + "description": "Specifies the state of issues to retrieve: `open`, `closed`, or `all`.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_repositories", + "type": "boolean", + "required": false, + "description": "Include issues from organization repositories when set to true. If false, include issues from all repositories.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page of results to fetch. Use this for pagination to navigate through large list of issues.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results per page, maximum is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specifies the order of sorting for the results. Use 'asc' for ascending and 'desc' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_issues_by", + "type": "string", + "required": false, + "description": "Specify the criteria to sort issues by: 'created', 'updated', or 'comments'.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_since_timestamp", + "type": "string", + "required": false, + "description": "Show issues updated after this timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubIssues", + "parameters": { + "include_collaborative_repositories": { + "value": true, + "type": "boolean", + "required": false + }, + "include_owned_repositories": { + "value": true, + "type": "boolean", + "required": false + }, + "include_pull_requests": { + "value": false, + "type": "boolean", + "required": false + }, + "issue_filter_type": { + "value": "assigned", + "type": "string", + "required": false + }, + "issue_labels": { + "value": "bug,ui,@high", + "type": "string", + "required": false + }, + "issue_state": { + "value": "open", + "type": "string", + "required": false + }, + "organization_repositories": { + "value": true, + "type": "boolean", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "sort_issues_by": { + "value": "created", + "type": "string", + "required": false + }, + "updated_since_timestamp": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubIssuesForRepo", + "qualifiedName": "GithubApi.ListGithubIssuesForRepo", + "fullyQualifiedName": "GithubApi.ListGithubIssuesForRepo@1.0.0", + "description": "Retrieve open issues from a GitHub repository.\n\nThis tool lists open issues and pull requests in a specified GitHub repository. It is useful for tracking unresolved issues and ongoing work. The response includes both issues and pull requests.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to fetch issues from. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_filter", + "type": "string", + "required": false, + "description": "Filter issues by assignee. Use a username, `none` for unassigned, or `*` for any assignee.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_creator", + "type": "string", + "required": false, + "description": "The GitHub username of the person who created the issue.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_labels", + "type": "string", + "required": false, + "description": "Comma separated list of label names to filter issues, e.g., 'bug,ui,@high'.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_state", + "type": "string", + "required": false, + "description": "Indicates the state of issues to retrieve: 'open', 'closed', or 'all'.", + "enum": null, + "inferrable": true + }, + { + "name": "mentioned_user", + "type": "string", + "required": false, + "description": "A GitHub username to filter issues where this user is mentioned.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone_identifier", + "type": "string", + "required": false, + "description": "Filter issues by milestone. Use an integer for a specific milestone, \"*\" for any milestone, or \"none\" for no milestones.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies which page of results to fetch. Use an integer value to navigate through paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The direction to sort the results by. Use 'asc' for ascending and 'desc' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_issues_by", + "type": "string", + "required": false, + "description": "Specify sorting criteria for issues: 'created', 'updated', or 'comments'.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_since_timestamp", + "type": "string", + "required": false, + "description": "Only show issues or pull requests updated after this timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/list-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubIssuesForRepo", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "assignee_filter": { + "value": "none", + "type": "string", + "required": false + }, + "issue_creator": { + "value": "creator-user", + "type": "string", + "required": false + }, + "issue_labels": { + "value": "bug,ui,@high", + "type": "string", + "required": false + }, + "issue_state": { + "value": "open", + "type": "string", + "required": false + }, + "mentioned_user": { + "value": "mentioned-user", + "type": "string", + "required": false + }, + "milestone_identifier": { + "value": "1", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "sort_issues_by": { + "value": "created", + "type": "string", + "required": false + }, + "updated_since_timestamp": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubMilestones", + "qualifiedName": "GithubApi.ListGithubMilestones", + "fullyQualifiedName": "GithubApi.ListGithubMilestones@1.0.0", + "description": "Retrieve milestones from a GitHub repository.\n\nUse this tool to list all milestones for a specified GitHub repository. Ideal for managing project timelines and tracking progress.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone_state", + "type": "string", + "required": false, + "description": "Denotes the state of milestones to fetch: 'open', 'closed', or 'all'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of milestones results to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page (maximum 100).", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The direction for sorting milestones: 'asc' for ascending or 'desc' for descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_milestones", + "type": "string", + "required": false, + "description": "Criteria to sort milestones by. Options include `due_on` for due date or `completeness` for progress.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/list-milestones'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubMilestones", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "milestone_state": { + "value": "open", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "sort_milestones": { + "value": "due_on", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubOrganizations", + "qualifiedName": "GithubApi.ListGithubOrganizations", + "fullyQualifiedName": "GithubApi.ListGithubOrganizations@1.0.0", + "description": "Retrieve a list of GitHub organizations.\n\nFetches all organizations from GitHub Enterprise Server in the order they were created. Supports pagination using the 'since' parameter.", + "parameters": [ + { + "name": "organization_id_since", + "type": "integer", + "required": false, + "description": "Only return organizations with an ID greater than this value to paginate results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page, with a maximum value of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubOrganizations", + "parameters": { + "organization_id_since": { + "value": 123456, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubOrgSecrets", + "qualifiedName": "GithubApi.ListGithubOrgSecrets", + "fullyQualifiedName": "GithubApi.ListGithubOrgSecrets@1.0.0", + "description": "Retrieve Dependabot organization secrets from GitHub.\n\nUse this tool to list all Dependabot secrets of a GitHub organization without revealing their encrypted values. Requires authentication with an `admin:org` scope token or a GitHub App with `dependabot_secrets` permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number to fetch results from in the paginated list of organization secrets.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of secrets to list per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/list-org-secrets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubOrgSecrets", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubPagesBuilds", + "qualifiedName": "GithubApi.ListGithubPagesBuilds", + "fullyQualifiedName": "GithubApi.ListGithubPagesBuilds@1.0.0", + "description": "Retrieve GitHub Pages build statuses for a repository.\n\nCall this tool to get a list of GitHub Pages build statuses for a specific repository on GitHub Enterprise Server. Useful for tracking build history and status.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to fetch the Pages build statuses for. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch. Use this to navigate through paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results per page, with a maximum of 100 allowed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-pages-builds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubPagesBuilds", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubProjectColumns", + "qualifiedName": "GithubApi.ListGithubProjectColumns", + "fullyQualifiedName": "GithubApi.ListGithubProjectColumns@1.0.0", + "description": "Retrieve columns of a specific GitHub project.\n\nUse this tool to get a list of columns for a specified GitHub project. It's useful when you need to know the structure or organization of a GitHub project board.", + "parameters": [ + { + "name": "project_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub project to list columns for.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number of the results to fetch from the GitHub project columns list.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/list-columns'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubProjectColumns", + "parameters": { + "project_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubPublicEmails", + "qualifiedName": "GithubApi.ListGithubPublicEmails", + "fullyQualifiedName": "GithubApi.ListGithubPublicEmails@1.0.0", + "description": "Retrieve publicly visible GitHub emails for the authenticated user.\n\nThis tool retrieves the publicly visible email addresses for the authenticated GitHub user. It's useful for applications needing to display or verify public contact details. Requires the `user:email` scope.", + "parameters": [ + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of email results to retrieve. Use this to navigate through paginated email results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of email results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/list-public-emails-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubPublicEmails", + "parameters": { + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubPublicKeys", + "qualifiedName": "GithubApi.ListGithubPublicKeys", + "fullyQualifiedName": "GithubApi.ListGithubPublicKeys@1.0.0", + "description": "Retrieve GitHub Enterprise Admin public keys.\n\nUse this tool to obtain a list of public keys available for GitHub Enterprise Admin. Ideal for administrators needing to access or audit public keys.", + "parameters": [ + { + "name": "filter_keys_accessed_since", + "type": "string", + "required": false, + "description": "Specify a timestamp to only list public keys accessed after this time. Use ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_fetch", + "type": "integer", + "required": false, + "description": "The specific page number of results to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page. Maximum allowed is 100. Use to limit the amount of data retrieved per call.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The direction to sort the results: 'asc' for ascending or 'desc' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Criteria for sorting results. Options: 'created', 'updated', 'accessed'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-public-keys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubPublicKeys", + "parameters": { + "filter_keys_accessed_since": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "page_number_to_fetch": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "sort_order": { + "value": "created", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubPullRequestFiles", + "qualifiedName": "GithubApi.ListGithubPullRequestFiles", + "fullyQualifiedName": "GithubApi.ListGithubPullRequestFiles@1.0.0", + "description": "Retrieve files changed in a GitHub pull request.\n\nUse this tool to list up to 3000 files altered in a specific pull request on GitHub. Useful for reviewing code changes or analyzing file modifications in a repository.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username of the repository owner. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of files to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/list-files'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubPullRequestFiles", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 100, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubPullRequestReviews", + "qualifiedName": "GithubApi.ListGithubPullRequestReviews", + "fullyQualifiedName": "GithubApi.ListGithubPullRequestReviews@1.0.0", + "description": "Retrieve reviews for a specific GitHub pull request.\n\nUse this tool to fetch a chronological list of reviews for a specified pull request within a GitHub repository. This can help in understanding the review history and comments made on the pull request.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The unique identifier for the specific pull request to retrieve reviews for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username or organization name of the repository owner. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the pull request reviews to fetch. Used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of reviews per page (maximum 100). Specify an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/list-reviews'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubPullRequestReviews", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubReleaseAssets", + "qualifiedName": "GithubApi.ListGithubReleaseAssets", + "fullyQualifiedName": "GithubApi.ListGithubReleaseAssets@1.0.0", + "description": "Retrieve a list of assets for a GitHub release.\n\nThis tool fetches and returns a list of assets associated with a specific release in a GitHub repository. It should be called when you need to access the files or resources attached to a particular release of a GitHub project.", + "parameters": [ + { + "name": "release_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub release to fetch assets from.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page number to fetch from the list of release assets. Useful for navigation in paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum value of 100. This controls pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-release-assets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubReleaseAssets", + "parameters": { + "release_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubReleaseReactions", + "qualifiedName": "GithubApi.ListGithubReleaseReactions", + "fullyQualifiedName": "GithubApi.ListGithubReleaseReactions@1.0.0", + "description": "Retrieve reactions for a GitHub release.\n\nCall this tool to get a list of all reactions to a specific release on GitHub. Useful for analyzing user feedback or engagement with a particular release.", + "parameters": [ + { + "name": "release_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the GitHub release.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. Case sensitivity is not required.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_type_filter", + "type": "string", + "required": false, + "description": "Specify a reaction type to filter results. Options are '+1', 'laugh', 'heart', 'hooray', 'rocket', 'eyes'. Leave empty to get all reactions.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch for paginated reactions.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/list-for-release'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubReleaseReactions", + "parameters": { + "release_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "ExampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleowner", + "type": "string", + "required": true + }, + "reaction_type_filter": { + "value": "heart", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubRepoArtifacts", + "qualifiedName": "GithubApi.ListGithubRepoArtifacts", + "fullyQualifiedName": "GithubApi.ListGithubRepoArtifacts@1.0.0", + "description": "Retrieve all artifacts for a GitHub repository.\n\nUse this tool to get a list of all artifacts for a specific GitHub repository. It requires read access to the repository, and if private, an access token with the `repo` scope is needed. GitHub Apps require `actions:read` permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to retrieve artifacts from. This input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The username or organization name of the repository owner. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_artifacts_by_name", + "type": "string", + "required": false, + "description": "Filters artifacts by providing an exact match for the artifact name. Use a string to specify the artifact name.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to fetch for paginated artifact listings.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of artifacts to return per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-artifacts-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubRepoArtifacts", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "filter_artifacts_by_name": { + "value": "artifact-name", + "type": "string", + "required": false + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubRepoBranches", + "qualifiedName": "GithubApi.ListGithubRepoBranches", + "fullyQualifiedName": "GithubApi.ListGithubRepoBranches@1.0.0", + "description": "Retrieve branches from a specific GitHub repository.\n\nUse this tool to get a list of all branches in a specified GitHub repository. It requires specifying the repository owner and name.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch from the list of branches.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of branch results per page (maximum 100).", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_protected_branches", + "type": "boolean", + "required": false, + "description": "Set to `true` to return only protected branches, `false` for only unprotected, or omit to return all branches.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-branches'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubRepoBranches", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "return_only_protected_branches": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubRepoCollaborators", + "qualifiedName": "GithubApi.ListGithubRepoCollaborators", + "fullyQualifiedName": "GithubApi.ListGithubRepoCollaborators@1.0.0", + "description": "Retrieve collaborators of a GitHub repository.\n\nUse this tool to get the list of collaborators for a GitHub repository, including organization members and outside collaborators. Useful for understanding who has access and their roles. Requires specific authentication permissions.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_affiliation", + "type": "string", + "required": false, + "description": "Filter collaborators by affiliation: 'outside', 'direct', or 'all'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_permission", + "type": "string", + "required": false, + "description": "Specify the permission level ('pull', 'triage', 'push', 'maintain', 'admin') to filter the repository collaborators. Returns all collaborators if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of results to retrieve when querying the list of collaborators.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results per page to return, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-collaborators'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubRepoCollaborators", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "filter_by_affiliation": { + "value": "all", + "type": "string", + "required": false + }, + "filter_by_permission": { + "value": "push", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubRepoContributors", + "qualifiedName": "GithubApi.ListGithubRepoContributors", + "fullyQualifiedName": "GithubApi.ListGithubRepoContributors@1.0.0", + "description": "Retrieve contributors for a specific GitHub repository.\n\nThis tool lists contributors to a specified GitHub repository, sorted by the number of commits in descending order. It captures contributions by GitHub user, including associated email addresses, but may include anonymous contributors without GitHub user details due to performance optimization limits.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "include_anonymous_contributors", + "type": "string", + "required": false, + "description": "Set to `1` or `true` to include anonymous contributors in the results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number of contributors to fetch. Use this to navigate through paginated results. Each page contains a subset of contributors, with 'per_page' controlling the number of contributors per page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-contributors'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubRepoContributors", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "include_anonymous_contributors": { + "value": "true", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubRepoEvents", + "qualifiedName": "GithubApi.ListGithubRepoEvents", + "fullyQualifiedName": "GithubApi.ListGithubRepoEvents@1.0.0", + "description": "Retrieve GitHub repository events.\n\nUse this tool to list events from a specific GitHub repository. It helps track recent activities such as pushes, issues, and other event types.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner_name", + "type": "string", + "required": true, + "description": "The username of the account owner of the repository, case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the repository events to fetch. Useful for paginating results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-repo-events'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubRepoEvents", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner_name": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubRepoForks", + "qualifiedName": "GithubApi.ListGithubRepoForks", + "fullyQualifiedName": "GithubApi.ListGithubRepoForks@1.0.0", + "description": "Fetches the list of forks for a specified GitHub repository.\n\nThis tool retrieves a list of forks for a given GitHub repository, identified by its owner and name. It should be called when you need to obtain information about the forks of a particular repository.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive and specifies whose repository to list forks from.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number for paginated results when listing forks.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "The order to sort the forks. Options: 'newest', 'oldest', 'stargazers', or 'watchers'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-forks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubRepoForks", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "newest", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubRepoIssueEvents", + "qualifiedName": "GithubApi.ListGithubRepoIssueEvents", + "fullyQualifiedName": "GithubApi.ListGithubRepoIssueEvents@1.0.0", + "description": "Retrieve events for issues in a GitHub repository.\n\nUse this tool to get a list of events related to issues for a specific GitHub repository. It's useful for tracking changes and actions performed on issues.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "Specify the account owner of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number of the issue events results to fetch from the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/list-events-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubRepoIssueEvents", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubRepoSecretAlerts", + "qualifiedName": "GithubApi.ListGithubRepoSecretAlerts", + "fullyQualifiedName": "GithubApi.ListGithubRepoSecretAlerts@1.0.0", + "description": "Retrieve secret scanning alerts for a GitHub repository.\n\nCall this tool to get a list of secret scanning alerts for a specified GitHub repository. It requires administrator access and a personal access token with proper scopes (repo or security_events). Suitable for monitoring sensitive data exposure in repositories.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "alerts_state_filter", + "type": "string", + "required": false, + "description": "Filter alerts by their state: `open` or `resolved`. Specify to list only alerts in a specific state.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_before_event", + "type": "string", + "required": false, + "description": "Search for events only before this cursor. Leave empty to get the initial cursor.", + "enum": null, + "inferrable": true + }, + { + "name": "events_after_cursor", + "type": "string", + "required": false, + "description": "A cursor for paginated results to fetch events occurring after this point. Use an empty value to receive the initial cursor.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_secret_type", + "type": "string", + "required": false, + "description": "Comma-separated list of secret types to return. By default, all secret types are included.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number of the secret scanning alerts to retrieve. Use this to paginate results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of secret scanning alerts to return per page, with a maximum of 100 items.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_alert_resolutions_filter", + "type": "string", + "required": false, + "description": "Comma-separated resolutions to filter alerts. Valid values: `false_positive`, `wont_fix`, `revoked`, `pattern_edited`, `pattern_deleted`, `used_in_tests`.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specifies the direction to sort the results ('asc' for ascending, 'desc' for descending).", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_by_property", + "type": "string", + "required": false, + "description": "Specifies the property to sort alerts: use 'created' for creation date, or 'updated' for last update or resolution date.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'secret-scanning/list-alerts-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubRepoSecretAlerts", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "alerts_state_filter": { + "value": "open", + "type": "string", + "required": false + }, + "cursor_before_event": { + "value": "0", + "type": "string", + "required": false + }, + "events_after_cursor": { + "value": "", + "type": "string", + "required": false + }, + "filter_by_secret_type": { + "value": "api_key,token", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "secret_alert_resolutions_filter": { + "value": "false_positive,revoked", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "sort_results_by_property": { + "value": "created", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubRepoTags", + "qualifiedName": "GithubApi.ListGithubRepoTags", + "fullyQualifiedName": "GithubApi.ListGithubRepoTags@1.0.0", + "description": "Retrieve tags for a specified GitHub repository.\n\nUse this tool to get a list of all tags for a particular GitHub repository. It's helpful when you need to see available versions or releases in the repository.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to retrieve tags from. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username or organization that owns the repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to fetch the results from for the list of repository tags.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-tags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubRepoTags", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubRepoVariables", + "qualifiedName": "GithubApi.ListGithubRepoVariables", + "fullyQualifiedName": "GithubApi.ListGithubRepoVariables@1.0.0", + "description": "Retrieve all variables for a specified GitHub repository.\n\nUse this tool to list all variables associated with a specific GitHub repository. Requires authentication with an access token having the 'repo' scope or a GitHub App with 'actions_variables:read' permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Page number to fetch in the list of repository variables. Use for paginating results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page, with a maximum of 30.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-repo-variables'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubRepoVariables", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubRepoWorkflows", + "qualifiedName": "GithubApi.ListGithubRepoWorkflows", + "fullyQualifiedName": "GithubApi.ListGithubRepoWorkflows@1.0.0", + "description": "Retrieve GitHub workflows in a repository.\n\nThis tool retrieves the list of workflows for a specified GitHub repository. It requires read access to the repository. For private repositories, an access token with the `repo` scope is needed, and GitHub Apps must have `actions:read` permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This field is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number for pagination, used to fetch specific sets of results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of workflow results to display per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-repo-workflows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubRepoWorkflows", + "parameters": { + "repository_name": { + "value": "ExampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "ExampleOwner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubRunnerBinariesForOrg", + "qualifiedName": "GithubApi.ListGithubRunnerBinariesForOrg", + "fullyQualifiedName": "GithubApi.ListGithubRunnerBinariesForOrg@1.0.0", + "description": "Retrieve downloadable binaries for GitHub runner application.\n\nThis tool lists the binaries for the GitHub runner application that can be downloaded and run for a specified organization. Authentication with an access token having the `admin:org` scope is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. The organization name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-runner-applications-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubRunnerBinariesForOrg", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubUserPublicEvents", + "qualifiedName": "GithubApi.ListGithubUserPublicEvents", + "fullyQualifiedName": "GithubApi.ListGithubUserPublicEvents@1.0.0", + "description": "Retrieve a GitHub user's public events.\n\nThis tool retrieves the list of public events for a specified GitHub user. Use it to check user activity on GitHub, such as recent contributions and interactions.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user's handle to retrieve public events for.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to retrieve. Use to navigate through paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-public-events-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubUserPublicEvents", + "parameters": { + "github_user_handle": { + "value": "octocat", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubUsers", + "qualifiedName": "GithubApi.ListGithubUsers", + "fullyQualifiedName": "GithubApi.ListGithubUsers@1.0.0", + "description": "Retrieve a list of all GitHub users by signup order.\n\nThis tool retrieves a list of all users from GitHub Enterprise Server, including both personal and organization accounts, sorted by their signup date. Pagination is controlled using the 'since' parameter.", + "parameters": [ + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, with a maximum of 100 allowed.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id_threshold", + "type": "integer", + "required": false, + "description": "A user ID. Only return users with an ID greater than this number.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubUsers", + "parameters": { + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "user_id_threshold": { + "value": 1000, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubWebhookDeliveries", + "qualifiedName": "GithubApi.ListGithubWebhookDeliveries", + "fullyQualifiedName": "GithubApi.ListGithubWebhookDeliveries@1.0.0", + "description": "Fetch webhook delivery events for a specific GitHub repository.\n\nUse this tool to retrieve a list of webhook deliveries for a specific webhook configured in a GitHub repository. It is useful for monitoring and debugging webhook events.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository (case insensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_hook_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the webhook. This is necessary to fetch the specific webhook deliveries for the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "include_redelivered_events", + "type": "boolean", + "required": false, + "description": "Include redelivered webhook events in the results if set to true.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_cursor", + "type": "string", + "required": false, + "description": "The starting point for fetching the page of deliveries. Use the `link` header for next/previous page cursors.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of webhook delivery results to fetch per page, up to 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-webhook-deliveries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubWebhookDeliveries", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "webhook_hook_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "include_redelivered_events": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_start_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubWorkflowJobs", + "qualifiedName": "GithubApi.ListGithubWorkflowJobs", + "fullyQualifiedName": "GithubApi.ListGithubWorkflowJobs@1.0.0", + "description": "Fetches jobs for a specific GitHub workflow run.\n\nUse this tool to retrieve jobs associated with a GitHub workflow run. Requires read access to the repository. For private repositories, an access token with the `repo` scope is needed. GitHub Apps must have the `actions:read` permission. Parameters can be used to filter results.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. It is not case sensitive and identifies whose account owns the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub workflow run to fetch jobs for.", + "enum": null, + "inferrable": true + }, + { + "name": "job_filter_by_completion_time", + "type": "string", + "required": false, + "description": "Filter jobs by their `completed_at` timestamp. Use 'latest' for the most recent execution or 'all' for all executions.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number for paginated results to fetch from the workflow jobs list.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of job results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-jobs-for-workflow-run'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubWorkflowJobs", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "workflow_run_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "job_filter_by_completion_time": { + "value": "latest", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGithubWorkflowRuns", + "qualifiedName": "GithubApi.ListGithubWorkflowRuns", + "fullyQualifiedName": "GithubApi.ListGithubWorkflowRuns@1.0.0", + "description": "Retrieve all workflow runs for a GitHub repository.\n\nThis tool retrieves a list of all workflow runs for a specified GitHub repository. It can be used to track the status and history of workflows in the repository. Works with repositories you have read access to. For private repositories, an access token with the 'repo' scope is needed.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository (case insensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username or organization name that owns the repository. It is case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "actor_username", + "type": "string", + "required": false, + "description": "Specify the username of the user whose workflow runs you want to retrieve. Use the login of the user who initiated the run.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "Specify the branch name to filter workflow runs associated with that branch.", + "enum": null, + "inferrable": true + }, + { + "name": "check_suite_id", + "type": "integer", + "required": false, + "description": "Returns workflow runs with the specified check suite ID.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_head_sha", + "type": "string", + "required": false, + "description": "Only returns workflow runs associated with the specified commit SHA (head_sha).", + "enum": null, + "inferrable": true + }, + { + "name": "omit_pull_requests", + "type": "boolean", + "required": false, + "description": "If true, pull requests are excluded from the workflow runs response.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch, used for paginating results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "triggering_event", + "type": "string", + "required": false, + "description": "Specify the event that triggers the workflow run, such as 'push', 'pull_request', or 'issue'.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_created_date_range", + "type": "string", + "required": false, + "description": "Specify a date-time range to filter workflow runs by creation date. Use GitHub's specific date syntax for format.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_status", + "type": "string", + "required": false, + "description": "Specifies the desired status or conclusion of the workflow runs to retrieve, such as 'success', 'in_progress', etc.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-workflow-runs-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGithubWorkflowRuns", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "actor_username": { + "value": "actor123", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "check_suite_id": { + "value": 123456, + "type": "integer", + "required": false + }, + "filter_by_head_sha": { + "value": "abc123def456", + "type": "string", + "required": false + }, + "omit_pull_requests": { + "value": true, + "type": "boolean", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "triggering_event": { + "value": "push", + "type": "string", + "required": false + }, + "workflow_created_date_range": { + "value": "2023-01-01T00:00:00Z..2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "workflow_run_status": { + "value": "success", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGitignoreTemplates", + "qualifiedName": "GithubApi.ListGitignoreTemplates", + "fullyQualifiedName": "GithubApi.ListGitignoreTemplates@1.0.0", + "description": "Retrieve all available .gitignore templates from GitHub.\n\nUse this tool to obtain a list of all .gitignore templates that can be used when creating a new repository on GitHub. This can help in setting up repositories with the appropriate exclusions.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gitignore/get-all-templates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGitignoreTemplates", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGitMatchingRefs", + "qualifiedName": "GithubApi.ListGitMatchingRefs", + "fullyQualifiedName": "GithubApi.ListGitMatchingRefs@1.0.0", + "description": "Retrieve Git references matching a specific name pattern.\n\nThis tool returns an array of Git references from a repository that match a specified name. It supports branches and tags, and can return refs that start with the given pattern if no exact match is found. It includes all references, such as notes and stashes, when no specific ref is provided.", + "parameters": [ + { + "name": "reference_pattern", + "type": "string", + "required": true, + "description": "The pattern to match against Git references (e.g., heads/branch or tags/tag). Leave empty to retrieve all references.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to search for references. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive. Specify the username or organization name that owns the repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'git/list-matching-refs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGitMatchingRefs", + "parameters": { + "reference_pattern": { + "value": "refs/heads/", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGitRepoSecrets", + "qualifiedName": "GithubApi.ListGitRepoSecrets", + "fullyQualifiedName": "GithubApi.ListGitRepoSecrets@1.0.0", + "description": "Retrieve a list of secrets in a GitHub repository.\n\nThis tool lists all secrets available in a specified GitHub repository without revealing their encrypted values. It requires authentication with an access token with the 'repo' scope or GitHub Apps permission 'dependabot_secrets'.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number of results to retrieve from the repository secrets list.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of secret results to display per page, maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/list-repo-secrets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGitRepoSecrets", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGlobalWebhooks", + "qualifiedName": "GithubApi.ListGlobalWebhooks", + "fullyQualifiedName": "GithubApi.ListGlobalWebhooks@1.0.0", + "description": "Retrieve a list of global webhooks from GitHub Enterprise.\n\nUse this tool to obtain a list of all global webhooks configured in a GitHub Enterprise environment. Ideal for administrators managing hooks across the entire enterprise.", + "parameters": [ + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to fetch. This is used to navigate through paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to include in each page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-global-webhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGlobalWebhooks", + "parameters": { + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGpgKeysForUser", + "qualifiedName": "GithubApi.ListGpgKeysForUser", + "fullyQualifiedName": "GithubApi.ListGpgKeysForUser@1.0.0", + "description": "Retrieve public GPG keys for a GitHub user.\n\nUse this tool to list the public GPG keys associated with a GitHub user. This information is publicly accessible and can be used to verify the integrity of a user's signed content.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub username of the account to retrieve GPG keys for.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch. Used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/list-gpg-keys-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListGpgKeysForUser", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIssueCommentReactions", + "qualifiedName": "GithubApi.ListIssueCommentReactions", + "fullyQualifiedName": "GithubApi.ListIssueCommentReactions@1.0.0", + "description": "Retrieve reactions for a GitHub issue comment.\n\nThis tool retrieves the list of reactions for a specific comment on an issue in a GitHub repository. It should be called when you need to know how users have reacted to a particular issue comment.", + "parameters": [ + { + "name": "comment_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the specific issue comment whose reactions are to be listed.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_type", + "type": "string", + "required": false, + "description": "Specify a single reaction type to filter results. Use values like '+1', '-1', 'laugh', etc. Omit to list all reactions.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of results to fetch from the reactions list.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of reactions to retrieve per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/list-for-issue-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListIssueCommentReactions", + "parameters": { + "comment_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "reaction_type": { + "value": "+1", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIssueComments", + "qualifiedName": "GithubApi.ListIssueComments", + "fullyQualifiedName": "GithubApi.ListIssueComments@1.0.0", + "description": "Fetch comments for all issues in a repository.\n\nUse this tool to retrieve all comments from issues in a specified GitHub repository. Comments are ordered by ascending ID.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of results to fetch for issue comments in a repository.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to display per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Sets the sorting order, `asc` for ascending or `desc` for descending, used with `sort`.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_property", + "type": "string", + "required": false, + "description": "The property to sort the issue comments by. Use 'created' for when the repo was starred or 'updated' for last push.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_after_timestamp", + "type": "string", + "required": false, + "description": "Filter comments updated after this timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/list-comments-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListIssueComments", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "sort_property": { + "value": "created", + "type": "string", + "required": false + }, + "updated_after_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIssueReactions", + "qualifiedName": "GithubApi.ListIssueReactions", + "fullyQualifiedName": "GithubApi.ListIssueReactions@1.0.0", + "description": "Retrieve reactions from a GitHub issue.\n\nThis tool retrieves the list of reactions for a specified issue in a GitHub repository. It should be called when you need to understand the community's reactions to a particular issue.", + "parameters": [ + { + "name": "issue_number", + "type": "integer", + "required": true, + "description": "The number that identifies the issue in the GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_type_to_filter", + "type": "string", + "required": false, + "description": "Filter reactions by a specific type (e.g., '+1', 'heart'). Omit to list all reactions.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to fetch. Useful for pagination through large result sets.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/list-for-issue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListIssueReactions", + "parameters": { + "issue_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "reaction_type_to_filter": { + "value": "heart", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListLabelsForMilestone", + "qualifiedName": "GithubApi.ListLabelsForMilestone", + "fullyQualifiedName": "GithubApi.ListLabelsForMilestone@1.0.0", + "description": "Retrieve labels for issues in a specific milestone on GitHub.\n\nUse this tool to get a list of labels applied to issues within a specific milestone in a GitHub repository. Ideal for tracking or categorizing issues based on milestone labels.", + "parameters": [ + { + "name": "milestone_number", + "type": "integer", + "required": true, + "description": "The number that uniquely identifies the milestone in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository for which to list milestone labels. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to fetch for listing milestone labels.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/list-labels-for-milestone'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListLabelsForMilestone", + "parameters": { + "milestone_number": { + "value": 1, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListLabelsForRunner", + "qualifiedName": "GithubApi.ListLabelsForRunner", + "fullyQualifiedName": "GithubApi.ListLabelsForRunner@1.0.0", + "description": "Retrieve all labels for a self-hosted runner in an enterprise.\n\nUse this tool to get a list of all labels associated with a specific self-hosted runner within an enterprise on GitHub. Authentication with an access token having `manage_runners:enterprise` scope is required.", + "parameters": [ + { + "name": "enterprise_slug_or_id", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise for identifying self-hosted runner.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_id", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner for which to list labels.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-labels-for-self-hosted-runner-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListLabelsForRunner", + "parameters": { + "enterprise_slug_or_id": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "runner_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListLabelsOnGithubIssue", + "qualifiedName": "GithubApi.ListLabelsOnGithubIssue", + "fullyQualifiedName": "GithubApi.ListLabelsOnGithubIssue@1.0.0", + "description": "Retrieve all labels associated with a GitHub issue.\n\nUse this tool to get all labels on a specific GitHub issue by providing the repository owner, repository name, and issue number.", + "parameters": [ + { + "name": "issue_number", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub issue you wish to retrieve labels for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive and identifies where the issue is located.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Provide a non-case-sensitive string.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of results to fetch from the GitHub API for an issue's labels.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of labels to retrieve per page, maximum is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/list-labels-on-issue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListLabelsOnGithubIssue", + "parameters": { + "issue_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListLinkedExternalGroups", + "qualifiedName": "GithubApi.ListLinkedExternalGroups", + "fullyQualifiedName": "GithubApi.ListLinkedExternalGroups@1.0.0", + "description": "Retrieve connections between a GitHub team and external groups.\n\nUse this tool to list connections between a specific GitHub team and external identity provider groups within an organization. Ideal for managing team membership using Enterprise Managed Users for GitHub Enterprise Cloud.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "Slug of the team name to identify the specific GitHub team.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/list-linked-external-idp-groups-to-team-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListLinkedExternalGroups", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrgAccessRunnerGroup", + "qualifiedName": "GithubApi.ListOrgAccessRunnerGroup", + "fullyQualifiedName": "GithubApi.ListOrgAccessRunnerGroup@1.0.0", + "description": "List organizations with access to a self-hosted runner group.\n\nRetrieves a list of organizations that have access to a specific self-hosted runner group in an enterprise. Requires authentication with a token that has 'manage_runners:enterprise' scope.", + "parameters": [ + { + "name": "enterprise_slug_or_id", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise. Used to identify the specific enterprise context for the runner group.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_id", + "type": "integer", + "required": true, + "description": "Unique identifier for the self-hosted runner group.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to fetch. Useful for pagination in large datasets.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-org-access-to-self-hosted-runner-group-in-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrgAccessRunnerGroup", + "parameters": { + "enterprise_slug_or_id": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "runner_group_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrganizationIssuesForUser", + "qualifiedName": "GithubApi.ListOrganizationIssuesForUser", + "fullyQualifiedName": "GithubApi.ListOrganizationIssuesForUser@1.0.0", + "description": "Retrieve issues and pull requests for a user in an organization.\n\nCall this tool to list all issues and pull requests assigned to the authenticated user within a specific organization on GitHub. This tool returns both issues and pull requests, identifiable by the `pull_request` key. It is useful for tracking user-specific tasks within an organization.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_filter", + "type": "string", + "required": false, + "description": "Specifies the type of issues to return: 'assigned', 'created', 'mentioned', 'subscribed', 'all', or 'repos'.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_labels", + "type": "string", + "required": false, + "description": "Comma-separated list of label names to filter issues. Example: `bug,ui,@high`.", + "enum": null, + "inferrable": true + }, + { + "name": "issues_state", + "type": "string", + "required": false, + "description": "Specify the state of issues to return: 'open', 'closed', or 'all'.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Page number of results to fetch, used for pagination. Starts from 1.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page (maximum 100).", + "enum": null, + "inferrable": true + }, + { + "name": "sort_criteria", + "type": "string", + "required": false, + "description": "Defines the attribute to sort the issues by. Options are 'created', 'updated', or 'comments'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The direction to sort the results by. Accepted values are 'asc' for ascending and 'desc' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_since", + "type": "string", + "required": false, + "description": "Filter to show notifications updated after this timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/list-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrganizationIssuesForUser", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "issue_filter": { + "value": "assigned", + "type": "string", + "required": false + }, + "issue_labels": { + "value": "bug,ui", + "type": "string", + "required": false + }, + "issues_state": { + "value": "open", + "type": "string", + "required": false + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_criteria": { + "value": "created", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "updated_since": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrganizationMemberships", + "qualifiedName": "GithubApi.ListOrganizationMemberships", + "fullyQualifiedName": "GithubApi.ListOrganizationMemberships@1.0.0", + "description": "Retrieve organization memberships for the authenticated user.\n\nThis tool retrieves a list of organization memberships for the authenticated user on GitHub, detailing their involvement in various organizations.", + "parameters": [ + { + "name": "membership_state", + "type": "string", + "required": false, + "description": "Filter memberships by state: 'active' or 'pending'. Returns both if unspecified.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to fetch, for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results per page. Maximum allowed is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/list-memberships-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrganizationMemberships", + "parameters": { + "membership_state": { + "value": "active", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrganizationProjects", + "qualifiedName": "GithubApi.ListOrganizationProjects", + "fullyQualifiedName": "GithubApi.ListOrganizationProjects@1.0.0", + "description": "Retrieve a list of projects for a given organization on GitHub.\n\nUse this tool to obtain a list of projects within a specified GitHub organization. It returns an error if projects are disabled or if access is unauthorized.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the GitHub organization for which to list projects.", + "enum": null, + "inferrable": true + }, + { + "name": "project_state", + "type": "string", + "required": false, + "description": "Specifies the state of projects to return: 'open', 'closed', or 'all'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number of the results to fetch for organization projects.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of project results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/list-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrganizationProjects", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "project_state": { + "value": "all", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrganizationRepositories", + "qualifiedName": "GithubApi.ListOrganizationRepositories", + "fullyQualifiedName": "GithubApi.ListOrganizationRepositories@1.0.0", + "description": "Retrieve repositories for a specific organization on GitHub.\n\nFetches a list of repositories belonging to a specified organization on GitHub. Admin permissions or ownership may be required to access certain repository details.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_type", + "type": "string", + "required": false, + "description": "Specify the type of repositories to return, such as 'all', 'public', 'private', etc. Note: 'internal' is unsupported with an installation access token.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of repository results to display per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specifies the sorting order of the results. Use 'asc' for ascending or 'desc' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_property", + "type": "string", + "required": false, + "description": "Specifies the property to sort the repository results by, such as created, updated, pushed, or full_name.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrganizationRepositories", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "repository_type": { + "value": "public", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 30, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "desc", + "type": "string", + "required": false + }, + "sort_property": { + "value": "updated", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrganizationSecrets", + "qualifiedName": "GithubApi.ListOrganizationSecrets", + "fullyQualifiedName": "GithubApi.ListOrganizationSecrets@1.0.0", + "description": "Retrieve all organization secrets without values.\n\nThis tool fetches a list of all secrets available in a GitHub organization without revealing their encrypted values. It requires authentication with an access token possessing the `admin:org` scope. Ideal for managing and reviewing organization secrets.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name to list secrets for. This name is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch for pagination purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of secrets to list per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-org-secrets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrganizationSecrets", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrganizationTeams", + "qualifiedName": "GithubApi.ListOrganizationTeams", + "fullyQualifiedName": "GithubApi.ListOrganizationTeams@1.0.0", + "description": "Retrieve teams visible to the user in a GitHub organization.\n\nUse this tool to list all teams within a specified GitHub organization that the authenticated user can see.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch from the list of teams.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrganizationTeams", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrganizationWebhooks", + "qualifiedName": "GithubApi.ListOrganizationWebhooks", + "fullyQualifiedName": "GithubApi.ListOrganizationWebhooks@1.0.0", + "description": "Retrieve the webhooks for a specific organization on GitHub.\n\nCall this tool to get a list of configured webhooks for a specified GitHub organization. Useful for checking webhook integrations and statuses.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. This parameter is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "The specific page number of results to retrieve from the list of organization webhooks.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of webhook results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/list-webhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrganizationWebhooks", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrgCodeScanningAlerts", + "qualifiedName": "GithubApi.ListOrgCodeScanningAlerts", + "fullyQualifiedName": "GithubApi.ListOrgCodeScanningAlerts@1.0.0", + "description": "Retrieve code scanning alerts for an organization's repositories.\n\nThis tool lists code scanning alerts for the default branch of all eligible repositories within a specified organization. It requires the user to be an owner or security manager of the organization, and access tokens with the necessary scopes (`repo`, `security_events`, or `public_repo` for public repositories).", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. This field is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_severity", + "type": "string", + "required": false, + "description": "Specifies the severity of code scanning alerts to be returned. Acceptable values include 'critical', 'high', 'medium', 'low', 'warning', 'note', and 'error'.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_state", + "type": "string", + "required": false, + "description": "Filter code scanning alerts by their state: 'open', 'closed', 'dismissed', or 'fixed'.", + "enum": null, + "inferrable": true + }, + { + "name": "code_scanning_tool_guid", + "type": "string", + "required": false, + "description": "The GUID of a specific code scanning tool. Use this to filter alerts by the tool. Must not use with `tool_name`.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_before", + "type": "string", + "required": false, + "description": "A cursor used to fetch results occurring before this point in the data timeline.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_tool_name", + "type": "string", + "required": false, + "description": "Specify the name of a code scanning tool to filter results. Only alerts from this tool will be listed. Ensure not to use `tool_guid` if this is specified.", + "enum": null, + "inferrable": true + }, + { + "name": "results_after_cursor", + "type": "string", + "required": false, + "description": "A cursor indicating the point after which to retrieve results. Used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch from the list of code scanning alerts.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specifies the sort order of the results. Use 'asc' for ascending or 'desc' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_by", + "type": "string", + "required": false, + "description": "Specifies the property by which to sort the results. Options are 'created' or 'updated'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'code-scanning/list-alerts-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrgCodeScanningAlerts", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "alert_severity": { + "value": "high", + "type": "string", + "required": false + }, + "alert_state": { + "value": "open", + "type": "string", + "required": false + }, + "code_scanning_tool_guid": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + }, + "cursor_before": { + "value": null, + "type": "string", + "required": false + }, + "filter_by_tool_name": { + "value": "SonarQube", + "type": "string", + "required": false + }, + "results_after_cursor": { + "value": "cursorValue123", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "sort_results_by": { + "value": "created", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrgMembers", + "qualifiedName": "GithubApi.ListOrgMembers", + "fullyQualifiedName": "GithubApi.ListOrgMembers@1.0.0", + "description": "Retrieve members of a GitHub organization.\n\nUse this tool to list all users who are members of a specified GitHub organization, including both concealed and public members if authenticated.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization to list members from. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_members", + "type": "string", + "required": false, + "description": "Filter the list of members. Use '2fa_disabled' to list members without two-factor authentication.", + "enum": null, + "inferrable": true + }, + { + "name": "member_role_filter", + "type": "string", + "required": false, + "description": "Filter members by their role in the organization ('all', 'admin', 'member').", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch. Use this to navigate through paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/list-members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrgMembers", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "filter_members": { + "value": "2fa_disabled", + "type": "string", + "required": false + }, + "member_role_filter": { + "value": "member", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrgOutsideCollaborators", + "qualifiedName": "GithubApi.ListOrgOutsideCollaborators", + "fullyQualifiedName": "GithubApi.ListOrgOutsideCollaborators@1.0.0", + "description": "Retrieve outside collaborators for a GitHub organization.\n\nUse this tool to fetch a list of users who are outside collaborators for a specified GitHub organization.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_outside_collaborators", + "type": "string", + "required": false, + "description": "Specify '2fa_disabled' to filter for collaborators without two-factor authentication, or 'all' for all collaborators.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number to fetch results from the list of outside collaborators.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/list-outside-collaborators'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrgOutsideCollaborators", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "filter_outside_collaborators": { + "value": "2fa_disabled", + "type": "string", + "required": false + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrgPreReceiveHooks", + "qualifiedName": "GithubApi.ListOrgPreReceiveHooks", + "fullyQualifiedName": "GithubApi.ListOrgPreReceiveHooks@1.0.0", + "description": "Retrieve pre-receive hooks for a GitHub organization.\n\nUse this tool to list all pre-receive hooks that are enabled, testing, or configurable at an organization level in GitHub. It excludes globally disabled hooks with no downstream configuration options.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch. Use this to navigate through paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page. The maximum allowed is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The direction to sort the results by. Accepts 'asc' or 'desc'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the sort order for the response: options are 'created', 'updated', or 'name'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-pre-receive-hooks-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrgPreReceiveHooks", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "sort_order": { + "value": "created", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrgRunnerGroupRunners", + "qualifiedName": "GithubApi.ListOrgRunnerGroupRunners", + "fullyQualifiedName": "GithubApi.ListOrgRunnerGroupRunners@1.0.0", + "description": "List self-hosted runners in an organization group.\n\nRetrieves self-hosted runners in a specified group within an organization. Requires an access token with 'admin:org' scope.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_id", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner group to fetch runners for.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number of results to be fetched. Used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-self-hosted-runners-in-group-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrgRunnerGroupRunners", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "runner_group_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrgSecretScanningAlerts", + "qualifiedName": "GithubApi.ListOrgSecretScanningAlerts", + "fullyQualifiedName": "GithubApi.ListOrgSecretScanningAlerts@1.0.0", + "description": "Retrieve secret scanning alerts for an organization's repositories.\n\nThis tool provides a list of secret scanning alerts from eligible repositories within an organization, sorted from newest to oldest. It should be called by users who are administrators or security managers of the organization, using an appropriate access token. GitHub Apps with `secret_scanning_alerts` read permission can also utilize this endpoint.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization for which secret scanning alerts are to be listed. This value is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_resolution_filter", + "type": "string", + "required": false, + "description": "A comma-separated list of resolutions to filter secret scanning alerts. Valid options are `false_positive`, `wont_fix`, `revoked`, `pattern_edited`, `pattern_deleted`, and `used_in_tests`.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_state", + "type": "string", + "required": false, + "description": "Specify 'open' or 'resolved' to filter secret scanning alerts by their state.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of results to retrieve, starting from 1. Determines which subset of results will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "search_after_cursor", + "type": "string", + "required": false, + "description": "A cursor for paginating results, provided in the Link header. Use an empty string for the initial request to receive a starting cursor.", + "enum": null, + "inferrable": true + }, + { + "name": "search_before_cursor", + "type": "string", + "required": false, + "description": "A cursor indicating that the query should only look for events before this point. Use an empty string to get an initial cursor.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_types", + "type": "string", + "required": false, + "description": "Comma-separated list of secret types to return. Defaults to all secret types. Refer to the GitHub documentation for details on secret types.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_property", + "type": "string", + "required": false, + "description": "Choose 'created' to sort by alert creation date or 'updated' to sort by last update or resolution.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specifies the order to sort the results: ascending ('asc') or descending ('desc').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'secret-scanning/list-alerts-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrgSecretScanningAlerts", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "alert_resolution_filter": { + "value": "false_positive,wont_fix", + "type": "string", + "required": false + }, + "alert_state": { + "value": "open", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "search_after_cursor": { + "value": "cursor123", + "type": "string", + "required": false + }, + "search_before_cursor": { + "value": "", + "type": "string", + "required": false + }, + "secret_types": { + "value": "API_KEY, PASSWORD", + "type": "string", + "required": false + }, + "sort_by_property": { + "value": "created", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrgSelfHostedRunners", + "qualifiedName": "GithubApi.ListOrgSelfHostedRunners", + "fullyQualifiedName": "GithubApi.ListOrgSelfHostedRunners@1.0.0", + "description": "Retrieve self-hosted runners for a GitHub organization.\n\nThis tool fetches all self-hosted runners configured for a specified GitHub organization. Authentication with an admin-level token is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization's name. This is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to fetch. For paginated data retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-self-hosted-runners-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrgSelfHostedRunners", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 2, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrgVariables", + "qualifiedName": "GithubApi.ListOrgVariables", + "fullyQualifiedName": "GithubApi.ListOrgVariables@1.0.0", + "description": "Retrieve all variables for a GitHub organization.\n\nUse this tool to list all variables configured in a GitHub organization. Authentication with an access token having the `admin:org` scope or a GitHub App with `organization_actions_variables:read` permission is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the organization variables to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, up to a maximum of 30.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-org-variables'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListOrgVariables", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPersonalAccessTokens", + "qualifiedName": "GithubApi.ListPersonalAccessTokens", + "fullyQualifiedName": "GithubApi.ListPersonalAccessTokens@1.0.0", + "description": "Retrieve personal access tokens for all users including admins.\n\nThis tool calls the GitHub API to list personal access tokens for all users in an enterprise, including admin users. It's useful for administrators wanting to audit or manage user access tokens.", + "parameters": [ + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page. Maximum value is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-personal-access-tokens'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListPersonalAccessTokens", + "parameters": { + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPreReceiveEnvironments", + "qualifiedName": "GithubApi.ListPreReceiveEnvironments", + "fullyQualifiedName": "GithubApi.ListPreReceiveEnvironments@1.0.0", + "description": "Retrieve a list of pre-receive environments for GitHub Enterprise.\n\nThis tool is used to fetch and list all pre-receive environments in a GitHub Enterprise instance. It should be called when you need to inspect or manage pre-receive environments.", + "parameters": [ + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number of results to fetch. Use this to navigate through paginated data.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort", + "type": "string", + "required": false, + "description": "Criteria to sort the results: 'created', 'updated', or 'name'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specifies the order to sort results: 'asc' for ascending or 'desc' for descending.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-pre-receive-environments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListPreReceiveEnvironments", + "parameters": { + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort": { + "value": "name", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "asc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPreReceiveHooks", + "qualifiedName": "GithubApi.ListPreReceiveHooks", + "fullyQualifiedName": "GithubApi.ListPreReceiveHooks@1.0.0", + "description": "Retrieve the list of pre-receive hooks in GitHub Enterprise.\n\nUse this tool to get a list of all the pre-receive hooks configured in the GitHub Enterprise admin settings.", + "parameters": [ + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The specific page number of results to retrieve, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The direction to sort the results by. Options are 'asc' for ascending or 'desc' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_by", + "type": "string", + "required": false, + "description": "Specify the property to sort the results by. Options are 'created', 'updated', or 'name'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-pre-receive-hooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListPreReceiveHooks", + "parameters": { + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "sort_results_by": { + "value": "created", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListProjectCards", + "qualifiedName": "GithubApi.ListProjectCards", + "fullyQualifiedName": "GithubApi.ListProjectCards@1.0.0", + "description": "Retrieve project cards for a specific column on GitHub projects.\n\nUse this tool to obtain a list of project cards within a specified column in GitHub projects. It is useful for managing tasks and tracking project progress by accessing detailed card information in a particular column.", + "parameters": [ + { + "name": "column_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the specified project column, used to list its cards.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_archived_state", + "type": "string", + "required": false, + "description": "Filters project cards by their archived state. Options are 'all', 'archived', or 'not_archived'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number of the project cards results to fetch. Useful for navigating through paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of project cards returned per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/list-cards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListProjectCards", + "parameters": { + "column_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "filter_by_archived_state": { + "value": "not_archived", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListProjectCollaborators", + "qualifiedName": "GithubApi.ListProjectCollaborators", + "fullyQualifiedName": "GithubApi.ListProjectCollaborators@1.0.0", + "description": "Retrieve collaborators for a GitHub organization project.\n\nUse this tool to obtain a list of all collaborators for a specified GitHub organization project, including outside collaborators and organization members with various access levels. Requires organization owner or project admin permissions.", + "parameters": [ + { + "name": "project_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub organization project to retrieve collaborators for.", + "enum": null, + "inferrable": true + }, + { + "name": "collaborator_affiliation_filter", + "type": "string", + "required": false, + "description": "Specifies how to filter collaborators: `outside`, `direct`, or `all`.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve from the list of collaborators.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/list-collaborators'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListProjectCollaborators", + "parameters": { + "project_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "collaborator_affiliation_filter": { + "value": "all", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListProvisionedGroupsForEnterprise", + "qualifiedName": "GithubApi.ListProvisionedGroupsForEnterprise", + "fullyQualifiedName": "GithubApi.ListProvisionedGroupsForEnterprise@1.0.0", + "description": "Retrieve provisioned SCIM groups for an enterprise.\n\nThis tool retrieves a list of provisioned SCIM groups within an enterprise account on GitHub. It is useful for administrators who need to manage or audit group provisions. For optimized performance, exclude 'members' from the response using the 'excludedAttributes' query parameter.", + "parameters": [ + { + "name": "exclude_attribute_from_results", + "type": "string", + "required": false, + "description": "Specify an attribute to exclude from the results to speed up response time.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_attribute", + "type": "string", + "required": false, + "description": "Filter results by a specific attribute. Supported filters: `externalId`, `id`, `displayName`. Example: `externalId eq '9138790-10932-109120392-12321'`.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of SCIM group results to return per page for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index", + "type": "integer", + "required": false, + "description": "The starting index for pagination; specifies where to begin returning results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-provisioned-groups-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListProvisionedGroupsForEnterprise", + "parameters": { + "exclude_attribute_from_results": { + "value": "members", + "type": "string", + "required": false + }, + "filter_by_attribute": { + "value": "externalId eq '9138790-10932-109120392-12321'", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "start_index": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPublicGithubRepositories", + "qualifiedName": "GithubApi.ListPublicGithubRepositories", + "fullyQualifiedName": "GithubApi.ListPublicGithubRepositories@1.0.0", + "description": "Retrieve all public GitHub repositories.\n\nThis tool lists all public repositories on GitHub, ordered by creation date. It uses pagination via the 'since' parameter and provides the Link header for navigating pages.", + "parameters": [ + { + "name": "repository_visibility", + "type": "string", + "required": false, + "description": "Specify types of repositories to return, such as 'all' or 'public'.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_repository_id", + "type": "integer", + "required": false, + "description": "Specify a repository ID to list only repositories with an ID greater than this value for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-public'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListPublicGithubRepositories", + "parameters": { + "repository_visibility": { + "value": "public", + "type": "string", + "required": false + }, + "starting_repository_id": { + "value": 100, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPublicOrgEvents", + "qualifiedName": "GithubApi.ListPublicOrgEvents", + "fullyQualifiedName": "GithubApi.ListPublicOrgEvents@1.0.0", + "description": "List public events for a GitHub organization.\n\nThis tool retrieves and lists all public events for a specified organization on GitHub. It is useful for monitoring recent activities within an organization.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch. Determines which set of results to return.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-public-org-events'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListPublicOrgEvents", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPublicOrgMembers", + "qualifiedName": "GithubApi.ListPublicOrgMembers", + "fullyQualifiedName": "GithubApi.ListPublicOrgMembers@1.0.0", + "description": "Retrieve public members of a GitHub organization.\n\nUse this tool to obtain a list of members who have publicized their membership in a specified GitHub organization.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/list-public-members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListPublicOrgMembers", + "parameters": { + "organization_name": { + "value": "OpenAI", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPublicOrgsForUser", + "qualifiedName": "GithubApi.ListPublicOrgsForUser", + "fullyQualifiedName": "GithubApi.ListPublicOrgsForUser@1.0.0", + "description": "Retrieve public organization memberships for a GitHub user.\n\nUse this tool to obtain a list of public organization memberships for a specified GitHub user. It does not require authentication and only retrieves public memberships. For private memberships, use an authenticated method.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user account handle to retrieve public organization memberships for.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to fetch, for paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/list-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListPublicOrgsForUser", + "parameters": { + "github_user_handle": { + "value": "octocat", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPublicSshKeys", + "qualifiedName": "GithubApi.ListPublicSshKeys", + "fullyQualifiedName": "GithubApi.ListPublicSshKeys@1.0.0", + "description": "Retrieve public SSH keys for the authenticated GitHub user.\n\nCall this tool to get a list of public SSH keys associated with the authenticated user's GitHub account. Requires authentication with `read:public_key` scope.", + "parameters": [ + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Specifies which page of results to fetch, starting from 1.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of SSH key results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/list-public-ssh-keys-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListPublicSshKeys", + "parameters": { + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPullRequestCommentReactions", + "qualifiedName": "GithubApi.ListPullRequestCommentReactions", + "fullyQualifiedName": "GithubApi.ListPullRequestCommentReactions@1.0.0", + "description": "Retrieve reactions for a pull request review comment.\n\nUse this tool to list all reactions associated with a specific pull request review comment in a GitHub repository. It helps in understanding community engagement on specific comments.", + "parameters": [ + { + "name": "comment_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the pull request review comment.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_reaction_type", + "type": "string", + "required": false, + "description": "Specify a single reaction type to filter results. Leave blank to return all reactions.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to fetch for reactions to a pull request review comment.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of reactions to return per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/list-for-pull-request-review-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListPullRequestCommentReactions", + "parameters": { + "comment_unique_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "filter_reaction_type": { + "value": "thumbs_up", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPullRequestCommits", + "qualifiedName": "GithubApi.ListPullRequestCommits", + "fullyQualifiedName": "GithubApi.ListPullRequestCommits@1.0.0", + "description": "Retrieve up to 250 commits for a specific pull request.\n\nUse this tool to get a list of commits associated with a particular pull request. This is useful when you want to review changes or keep track of modifications made in a pull request. For a complete list with more than 250 commits, consider using the List commits endpoint.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the pull request within the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive and should be given as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of commit results to fetch. Useful for paginating through commit lists.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of commit results to return per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/list-commits'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListPullRequestCommits", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 100, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPullRequestReviewComments", + "qualifiedName": "GithubApi.ListPullRequestReviewComments", + "fullyQualifiedName": "GithubApi.ListPullRequestReviewComments@1.0.0", + "description": "Retrieve all review comments for a pull request.\n\nThis tool fetches all review comments associated with a specified pull request in a GitHub repository. It returns the comments sorted in ascending order by ID.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the pull request within the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "notifications_since_timestamp", + "type": "string", + "required": false, + "description": "Filter review comments updated after this timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_fetch", + "type": "integer", + "required": false, + "description": "The specific results page number to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specifies the direction to sort results. Use 'asc' for ascending or 'desc' for descending. Ignored without the 'sort' parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_by", + "type": "string", + "required": false, + "description": "Property to sort comments: 'created' or 'updated'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/list-review-comments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListPullRequestReviewComments", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "notifications_since_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "page_number_to_fetch": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "sort_results_by": { + "value": "created", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPullRequests", + "qualifiedName": "GithubApi.ListPullRequests", + "fullyQualifiedName": "GithubApi.ListPullRequests@1.0.0", + "description": "Retrieve pull requests from a GitHub repository.\n\nThis tool retrieves a list of pull requests from a specified GitHub repository, including both open and draft requests, for users with appropriate GitHub plans.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository from which to retrieve pull requests. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "base_branch_name", + "type": "string", + "required": false, + "description": "Specify the base branch name to filter pull requests. Example: 'gh-pages'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_head", + "type": "string", + "required": false, + "description": "Filter pull requests by head user/organization and branch in `user:ref-name` format.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_state", + "type": "string", + "required": false, + "description": "Filter pull requests by state: `open`, `closed`, or `all`.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch from the list of pull requests.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of pull requests to retrieve per page, with a maximum of 100 results allowed.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The direction of the sorting for pull requests. Use 'asc' for ascending or 'desc' for descending order. Defaults to 'desc' when 'sort' is 'created' or not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_pull_request_results_by", + "type": "string", + "required": false, + "description": "Specify the criterion for sorting pull request results. Options are 'created', 'updated', 'popularity', or 'long-running'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListPullRequests", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "base_branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "filter_by_head": { + "value": "user:feature-branch", + "type": "string", + "required": false + }, + "filter_by_state": { + "value": "open", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "sort_pull_request_results_by": { + "value": "created", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPullRequestsForCommit", + "qualifiedName": "GithubApi.ListPullRequestsForCommit", + "fullyQualifiedName": "GithubApi.ListPullRequestsForCommit@1.0.0", + "description": "Retrieve pull requests linked to a specific commit.\n\nFetches pull requests associated with a specific commit in a GitHub repository. Returns merged pull requests if the commit is in the default branch; otherwise, only open pull requests are returned.", + "parameters": [ + { + "name": "commit_sha", + "type": "string", + "required": true, + "description": "The SHA identifier of the commit to fetch associated pull requests.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository (not case sensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch from the list of pull requests associated with the commit.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-pull-requests-associated-with-commit'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListPullRequestsForCommit", + "parameters": { + "commit_sha": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "repository_name": { + "value": "ExampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "ExampleOwner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRecentCodeScanningAnalyses", + "qualifiedName": "GithubApi.ListRecentCodeScanningAnalyses", + "fullyQualifiedName": "GithubApi.ListRecentCodeScanningAnalyses@1.0.0", + "description": "Retrieve recent code scanning analyses for a repository.\n\nUse this tool to list the details of recent code scanning analyses for a GitHub repository. It retrieves a paginated list starting with the most recent analyses. Useful for understanding security events and code quality checks. Requires proper access tokens or GitHub App permissions for private repositories.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive, and it should match the GitHub account owning the target repository.", + "enum": null, + "inferrable": true + }, + { + "name": "code_scanning_tool_guid", + "type": "string", + "required": false, + "description": "The GUID of the code scanning tool to filter results. Specify either this or 'tool_name', not both.", + "enum": null, + "inferrable": true + }, + { + "name": "code_scanning_tool_name", + "type": "string", + "required": false, + "description": "Specify the name of a code scanning tool to list results by this tool only. Cannot be used with `tool_guid`.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_sarif_id", + "type": "string", + "required": false, + "description": "Filter analyses that belong to a specific SARIF upload by providing the SARIF ID.", + "enum": null, + "inferrable": true + }, + { + "name": "git_reference_for_analyses", + "type": "string", + "required": false, + "description": "The Git reference for analyses; format as `refs/heads/` for branches or `refs/pull//merge` for pull requests.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch. Used for paginating through the list of analyses.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_property", + "type": "string", + "required": false, + "description": "Specify the property for sorting the results. Available option: 'created'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The order to sort results, either ascending ('asc') or descending ('desc').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'code-scanning/list-recent-analyses'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRecentCodeScanningAnalyses", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "code_scanning_tool_guid": { + "value": "12345678-1234-1234-1234-1234567890ab", + "type": "string", + "required": false + }, + "code_scanning_tool_name": { + "value": null, + "type": "string", + "required": false + }, + "filter_by_sarif_id": { + "value": "sarif-abcdef123456", + "type": "string", + "required": false + }, + "git_reference_for_analyses": { + "value": "refs/heads/main", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_by_property": { + "value": "created", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRecentGithubEvents", + "qualifiedName": "GithubApi.ListRecentGithubEvents", + "fullyQualifiedName": "GithubApi.ListRecentGithubEvents@1.0.0", + "description": "Retrieve recent public events from GitHub.\n\nObtain the most recent public events from GitHub, with events delayed by at least five minutes.", + "parameters": [ + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number of the GitHub public event results to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-public-events'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRecentGithubEvents", + "parameters": { + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRecentGithubMigrations", + "qualifiedName": "GithubApi.ListRecentGithubMigrations", + "fullyQualifiedName": "GithubApi.ListRecentGithubMigrations@1.0.0", + "description": "Retrieve the latest GitHub migrations for an organization.\n\nUse this tool to list recent migrations for a specified GitHub organization, including export and import activities. The list includes `repositories` only for export migrations.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. This value is not case sensitive. Use to specify which organization's migrations to list.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_attributes", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of attributes to exclude from the API response to enhance performance.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number to fetch specific results from the list of migrations.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum value of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'migrations/list-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRecentGithubMigrations", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "exclude_attributes": { + "value": ["repositories", "timestamps"], + "type": "array", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRecentPublicGists", + "qualifiedName": "GithubApi.ListRecentPublicGists", + "fullyQualifiedName": "GithubApi.ListRecentPublicGists@1.0.0", + "description": "Retrieve the most recently updated public gists.\n\nCall this tool to get a list of public gists on GitHub sorted by the most recent updates. Useful for accessing the latest shared code snippets or projects made publicly available on GitHub.", + "parameters": [ + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Page number to fetch the results from. Use for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of gists to display per page. Maximum allowed is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_since", + "type": "string", + "required": false, + "description": "A timestamp in ISO 8601 format to filter gists updated after this time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/list-public'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRecentPublicGists", + "parameters": { + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "updated_since": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepoCacheStatus", + "qualifiedName": "GithubApi.ListRepoCacheStatus", + "fullyQualifiedName": "GithubApi.ListRepoCacheStatus@1.0.0", + "description": "Lists the status of each repository cache replica.\n\nUse this tool to get information about the status of cache replicas for a specific GitHub repository. Ideal for monitoring or troubleshooting cache issues.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive and should clearly identify the GitHub repository of interest.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username of the repository owner. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "The page number of results to fetch, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results per page (maximum 100).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-cache-info'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRepoCacheStatus", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleOwner", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepoCommitComments", + "qualifiedName": "GithubApi.ListRepoCommitComments", + "fullyQualifiedName": "GithubApi.ListRepoCommitComments@1.0.0", + "description": "Retrieve commit comments for a GitHub repository.\n\nThis tool retrieves commit comments for a specified GitHub repository. It's useful when you want to analyze or display comments made on commits in a project. Call this tool when you need to access the comments sorted by ascending ID.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of commit comments to fetch from the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of commit comments to retrieve per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-commit-comments-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRepoCommitComments", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepoInvitations", + "qualifiedName": "GithubApi.ListRepoInvitations", + "fullyQualifiedName": "GithubApi.ListRepoInvitations@1.0.0", + "description": "List open invitations for a GitHub repository.\n\nUse this tool to retrieve all currently open invitations for a specified GitHub repository, requiring admin rights for access.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It's not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number to fetch results from, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of invitations to display per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-invitations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRepoInvitations", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepoLanguages", + "qualifiedName": "GithubApi.ListRepoLanguages", + "fullyQualifiedName": "GithubApi.ListRepoLanguages@1.0.0", + "description": "List programming languages used in a GitHub repository.\n\nThis tool retrieves the languages used in a specified GitHub repository, along with the number of bytes of code written in each language. It should be called when you need to find out which programming languages are utilized in a repository on GitHub.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. Case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-languages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRepoLanguages", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepoNetworkPublicEvents", + "qualifiedName": "GithubApi.ListRepoNetworkPublicEvents", + "fullyQualifiedName": "GithubApi.ListRepoNetworkPublicEvents@1.0.0", + "description": "Retrieve public events for a network of repositories.\n\nUse this tool to get the latest public events associated with a network of repositories on GitHub. It is useful for monitoring activity across multiple related repositories.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to retrieve. Use this to navigate through paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-public-events-for-repo-network'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRepoNetworkPublicEvents", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepoPreReceiveHooks", + "qualifiedName": "GithubApi.ListRepoPreReceiveHooks", + "fullyQualifiedName": "GithubApi.ListRepoPreReceiveHooks@1.0.0", + "description": "List pre-receive hooks for a GitHub repository.\n\nFetch all enabled, testing, and allowed disabled pre-receive hooks for a specific GitHub repository. This includes hooks that can be enabled at the repository level, excluding those disabled at higher levels and not configurable.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "The number of the results page to fetch, starting from 1.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, maximum 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specify 'asc' for ascending or 'desc' for descending sorting of results.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_hooks_by", + "type": "string", + "required": false, + "description": "Specifies the attribute to sort the pre-receive hooks by. Possible values are 'created', 'updated', or 'name'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-pre-receive-hooks-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRepoPreReceiveHooks", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "sort_hooks_by": { + "value": "name", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepoRequiredWorkflows", + "qualifiedName": "GithubApi.ListRepoRequiredWorkflows", + "fullyQualifiedName": "GithubApi.ListRepoRequiredWorkflows@1.0.0", + "description": "Retrieve required workflows in a GitHub repository.\n\nUse this tool to list required workflows in a GitHub repository. This is accessible to anyone with read access. For private repositories, an access token with the `repo` scope is necessary. GitHub Apps need `actions:read` permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository you want to query. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The specific page of workflow results to retrieve. Use this for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-repo-required-workflows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRepoRequiredWorkflows", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepoSecrets", + "qualifiedName": "GithubApi.ListRepoSecrets", + "fullyQualifiedName": "GithubApi.ListRepoSecrets@1.0.0", + "description": "Retrieve all repository secrets without values.\n\nThis tool retrieves all the secrets available in a specified GitHub repository without revealing their encrypted values. Authentication is required using an access token with `repo` scope. GitHub Apps need `secrets` repository permission to access this endpoint.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number of the secrets list to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-repo-secrets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRepoSecrets", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListReposForOrgMigration", + "qualifiedName": "GithubApi.ListReposForOrgMigration", + "fullyQualifiedName": "GithubApi.ListReposForOrgMigration@1.0.0", + "description": "List all repositories for an organization's migration.\n\nUse this tool to retrieve a list of all repositories associated with a specific organization migration on GitHub. It's useful for tracking migration progress or fetching details about repositories being moved.", + "parameters": [ + { + "name": "migration_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the organization migration in GitHub.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. This name is not case sensitive and identifies the GitHub organization for which the migration repositories will be listed.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'migrations/list-repos-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListReposForOrgMigration", + "parameters": { + "migration_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepositoryEnvironments", + "qualifiedName": "GithubApi.ListRepositoryEnvironments", + "fullyQualifiedName": "GithubApi.ListRepositoryEnvironments@1.0.0", + "description": "Retrieve environments for a GitHub repository.\n\nUse this tool to list all environments associated with a specific GitHub repository. It requires read access to the repository. If the repository is private, ensure to use an access token with the necessary `repo` scope. This endpoint is also accessible to GitHub Apps with `actions:read` permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to retrieve environments for. This name is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username of the repository owner. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The number of the page to retrieve for paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to retrieve per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-all-environments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRepositoryEnvironments", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepositoryLabels", + "qualifiedName": "GithubApi.ListRepositoryLabels", + "fullyQualifiedName": "GithubApi.ListRepositoryLabels@1.0.0", + "description": "Retrieve labels for a GitHub repository.\n\nUse this tool to obtain the list of labels associated with a specified repository on GitHub. It helps in identifying the categories or tags used for organizing issues within the repository.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username of the repository owner. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "The specific page number of results to fetch. Use this to navigate through paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/list-labels-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRepositoryLabels", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepositoryProjects", + "qualifiedName": "GithubApi.ListRepositoryProjects", + "fullyQualifiedName": "GithubApi.ListRepositoryProjects@1.0.0", + "description": "Retrieve projects from a specific GitHub repository.\n\nUse this tool to list all the projects of a specified GitHub repository. It should be called when you need to view available projects. Note that a 404 status is returned if projects are disabled, and a 401 or 410 status if there are insufficient privileges.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "project_state", + "type": "string", + "required": false, + "description": "Specify which state of projects to return: 'open', 'closed', or 'all'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies which page of the results to fetch. Useful for paginated responses.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page. Maximum is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/list-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRepositoryProjects", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "project_state": { + "value": "open", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepositoryTeams", + "qualifiedName": "GithubApi.ListRepositoryTeams", + "fullyQualifiedName": "GithubApi.ListRepositoryTeams@1.0.0", + "description": "Retrieve a list of teams for a specified GitHub repository.\n\nUse this tool to get all the teams associated with a specific GitHub repository by providing the repository owner and name.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "The page number to fetch from the results. Use this to iterate through paginated data.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to include per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-teams'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRepositoryTeams", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleOwner", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepositoryWebhooks", + "qualifiedName": "GithubApi.ListRepositoryWebhooks", + "fullyQualifiedName": "GithubApi.ListRepositoryWebhooks@1.0.0", + "description": "Retrieve webhooks for a specified GitHub repository.\n\nUse this tool to list all webhooks configured for a specific GitHub repository. Helpful for managing and reviewing webhook configurations.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "The page number of webhooks results to fetch from the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of webhooks to list per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-webhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRepositoryWebhooks", + "parameters": { + "repository_name": { + "value": "my-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "my-username", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRepoStargazers", + "qualifiedName": "GithubApi.ListRepoStargazers", + "fullyQualifiedName": "GithubApi.ListRepoStargazers@1.0.0", + "description": "Retrieve users who starred a specific GitHub repository.\n\nThis tool provides a list of users that have starred a specified GitHub repository, along with the timestamps of when the stars were added. It's useful for understanding the popularity and engagement of a repository.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The username of the repository's account owner. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number for results pagination to retrieve a specific set of stargazers.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of stargazer results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-stargazers-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRepoStargazers", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "ExampleUser", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListReposWithOrgSecret", + "qualifiedName": "GithubApi.ListReposWithOrgSecret", + "fullyQualifiedName": "GithubApi.ListReposWithOrgSecret@1.0.0", + "description": "Retrieve repositories with access to a specific organization secret.\n\nThis tool lists all repositories that have been given access to a specific organization secret with `selected` visibility. It requires authentication with an access token featuring the `admin:org` scope, or a GitHub App with `secrets` organization permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the secret for which to list selected repositories. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of repositories to return per page, with a maximum of 100 allowed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-selected-repos-for-org-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListReposWithOrgSecret", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "secret_name": { + "value": "MySecret", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListReposWithOrgVariableAccess", + "qualifiedName": "GithubApi.ListReposWithOrgVariableAccess", + "fullyQualifiedName": "GithubApi.ListReposWithOrgVariableAccess@1.0.0", + "description": "Retrieve repos accessing an organization's variable.\n\nThis tool lists all repositories that have access to a specified organization variable. Authentication with an access token having the `admin:org` scope is required. GitHub Apps must have the `organization_actions_variables:read` permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": true, + "description": "The name of the organization variable to check for repository access.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "The page number of repository results to retrieve. Use this to navigate through results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-selected-repos-for-org-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListReposWithOrgVariableAccess", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "variable_name": { + "value": "API_KEY", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListReposWithRunnerGroupAccess", + "qualifiedName": "GithubApi.ListReposWithRunnerGroupAccess", + "fullyQualifiedName": "GithubApi.ListReposWithRunnerGroupAccess@1.0.0", + "description": "Retrieve repositories with access to a runner group in an organization.\n\nThis tool lists the repositories that have access to a specified self-hosted runner group in an organization. It requires authentication with an access token having `admin:org` scope.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_id", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner group to fetch repository access details.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to retrieve per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-repo-access-to-self-hosted-runner-group-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListReposWithRunnerGroupAccess", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "runner_group_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRequiredWorkflowRepositories", + "qualifiedName": "GithubApi.ListRequiredWorkflowRepositories", + "fullyQualifiedName": "GithubApi.ListRequiredWorkflowRepositories@1.0.0", + "description": "List repositories configured for a required workflow.\n\nThis tool retrieves a list of repositories that are configured to use a specific required workflow within an organization. It should be called when you need to know which repositories are set up to run a required workflow. Authentication with an access token having `read:org` scope or a GitHub App with `administration` permission is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive and identifies the organization within GitHub.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the required workflow for which the repositories are to be listed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-selected-repositories-required-workflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRequiredWorkflowRepositories", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "workflow_unique_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRequiredWorkflowRuns", + "qualifiedName": "GithubApi.ListRequiredWorkflowRuns", + "fullyQualifiedName": "GithubApi.ListRequiredWorkflowRuns@1.0.0", + "description": "Retrieve all workflow runs for a required workflow.\n\nUse this tool to list all workflow runs associated with a specific required workflow in a GitHub repository. It is useful for monitoring and analyzing the execution of required workflows. Requires repository read access, and for private repositories, an access token with the `repo` scope is needed.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. Case sensitivity is ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "required_workflow_id", + "type": "integer", + "required": true, + "description": "The ID of the required workflow that has run at least once in a repository.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "Specify the branch name to filter workflow runs associated with it. Use the name of the branch from the `push`.", + "enum": null, + "inferrable": true + }, + { + "name": "check_suite_identifier", + "type": "integer", + "required": false, + "description": "Specify the Check Suite ID to filter workflow runs associated with this specific ID.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_pull_requests", + "type": "boolean", + "required": false, + "description": "If true, pull requests are omitted from the response.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch, used for pagination of the workflow runs.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of workflow run results to display per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sha_for_head_commit", + "type": "string", + "required": false, + "description": "Returns workflow runs associated with the specified head SHA (commit identifier).", + "enum": null, + "inferrable": true + }, + { + "name": "trigger_event", + "type": "string", + "required": false, + "description": "Specify the event type that triggers the workflow run, such as `push`, `pull_request`, or `issue`.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_actor_username", + "type": "string", + "required": false, + "description": "Specify the username of the actor whose workflow runs you want to retrieve. Use the GitHub login for the user who initiated the push.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_status", + "type": "string", + "required": false, + "description": "Specify the workflow run status or conclusion to filter results. Options include 'completed', 'in_progress', 'success', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_runs_created_date_range", + "type": "string", + "required": false, + "description": "Specify the date-time range to filter workflow runs based on their creation date. Use GitHub's date search syntax for formatting.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-required-workflow-runs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRequiredWorkflowRuns", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "required_workflow_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "check_suite_identifier": { + "value": 7891011, + "type": "integer", + "required": false + }, + "exclude_pull_requests": { + "value": true, + "type": "boolean", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sha_for_head_commit": { + "value": "abc123def456ghi789jkl", + "type": "string", + "required": false + }, + "trigger_event": { + "value": "push", + "type": "string", + "required": false + }, + "workflow_actor_username": { + "value": "example-user", + "type": "string", + "required": false + }, + "workflow_run_status": { + "value": "success", + "type": "string", + "required": false + }, + "workflow_runs_created_date_range": { + "value": "2023-01-01..2023-10-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRequiredWorkflows", + "qualifiedName": "GithubApi.ListRequiredWorkflows", + "fullyQualifiedName": "GithubApi.ListRequiredWorkflows@1.0.0", + "description": "Retrieve all required workflows in a GitHub organization.\n\nUse this tool to get a list of all workflows that are required within a specific GitHub organization. Authentication with an access token having the `read:org` scope is necessary.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. Note: The name is not case sensitive. This identifies which organization's workflows to list.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The specific page number of required workflow results to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-required-workflows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRequiredWorkflows", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListReviewCommentsForRepo", + "qualifiedName": "GithubApi.ListReviewCommentsForRepo", + "fullyQualifiedName": "GithubApi.ListReviewCommentsForRepo@1.0.0", + "description": "Retrieve review comments for all pull requests in a repository.\n\nUse this tool to obtain a list of review comments for all pull requests within a specified repository. This is useful for tracking feedback and discussions associated with pull requests.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to fetch review comments from. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive. Specify the username or organization name.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to retrieve from the API. Used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of review comments to retrieve per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specifies the order to sort the review comments. Options are 'asc' for ascending and 'desc' for descending. Note: This is ignored if no 'sort' parameter is set.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_reviews", + "type": "string", + "required": false, + "description": "Determines the order of review comments based on 'created', 'updated', or 'created_at'.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_after", + "type": "string", + "required": false, + "description": "Timestamp to filter notifications updated after this time in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/list-review-comments-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListReviewCommentsForRepo", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "sort_reviews": { + "value": "created_at", + "type": "string", + "required": false + }, + "updated_after": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRunnerAppsForRepo", + "qualifiedName": "GithubApi.ListRunnerAppsForRepo", + "fullyQualifiedName": "GithubApi.ListRunnerAppsForRepo@1.0.0", + "description": "Retrieve runner application binaries for a GitHub repository.\n\nUse this tool to list binaries for GitHub runner applications that can be downloaded and run. Requires authentication with a token that has 'repo' scope.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository on GitHub. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-runner-applications-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRunnerAppsForRepo", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRunnerBinariesForEnterprise", + "qualifiedName": "GithubApi.ListRunnerBinariesForEnterprise", + "fullyQualifiedName": "GithubApi.ListRunnerBinariesForEnterprise@1.0.0", + "description": "Retrieve download links for runner application binaries.\n\nUse this tool to list available binaries for GitHub runner applications that can be downloaded and run for a specified enterprise. Authentication with an access token having the `manage_runners:enterprise` scope is required.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID for the enterprise to obtain runner binaries.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-runner-applications-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRunnerBinariesForEnterprise", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRunnerGroupsForOrg", + "qualifiedName": "GithubApi.ListRunnerGroupsForOrg", + "fullyQualifiedName": "GithubApi.ListRunnerGroupsForOrg@1.0.0", + "description": "Retrieve self-hosted runner groups for a GitHub organization.\n\nThis tool lists all self-hosted runner groups configured in a specified GitHub organization, including those inherited from an enterprise. Authentication with an access token having the `admin:org` scope is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization's name. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_visibility_filter", + "type": "string", + "required": false, + "description": "Specify the repository to filter runner groups that they are allowed to be used by.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to fetch. Use an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-self-hosted-runner-groups-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRunnerGroupsForOrg", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "repository_visibility_filter": { + "value": "private", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRunnerLabels", + "qualifiedName": "GithubApi.ListRunnerLabels", + "fullyQualifiedName": "GithubApi.ListRunnerLabels@1.0.0", + "description": "Retrieve all labels for a self-hosted runner in a GitHub repo.\n\nUse this tool to get all labels for a specific self-hosted runner configured in a GitHub repository. Authentication with a token that has the `repo` scope is required.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "self_hosted_runner_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the self-hosted runner in the repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-labels-for-self-hosted-runner-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRunnerLabels", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "self_hosted_runner_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRunnerLabelsForOrg", + "qualifiedName": "GithubApi.ListRunnerLabelsForOrg", + "fullyQualifiedName": "GithubApi.ListRunnerLabelsForOrg@1.0.0", + "description": "Retrieve labels for a self-hosted runner in an organization.\n\nThis tool is used to list all labels for a specified self-hosted runner within an organization. Authentication with an access token having the `admin:org` scope is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. This parameter is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_unique_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the self-hosted runner. It must be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-labels-for-self-hosted-runner-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListRunnerLabelsForOrg", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "runner_unique_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListScimEnterpriseMembers", + "qualifiedName": "GithubApi.ListScimEnterpriseMembers", + "fullyQualifiedName": "GithubApi.ListScimEnterpriseMembers@1.0.0", + "description": "Lists provisioned SCIM enterprise members for GitHub enterprises.\n\nThis tool retrieves a list of provisioned SCIM enterprise members associated with a GitHub enterprise account. It is useful for managing enterprise users and understanding membership status. The tool allows you to exclude certain attributes to improve query performance.", + "parameters": [ + { + "name": "exclude_attributes", + "type": "string", + "required": false, + "description": "Specify attributes to exclude from the results to improve query performance. Commonly used values are 'groups'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_criteria", + "type": "string", + "required": false, + "description": "Filter results by `userName`, `externalId`, `id`, or `displayName`. Only one filter is supported. E.g., \"externalId eq '9138790-10932-109120392-12321'\".", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_index", + "type": "integer", + "required": false, + "description": "The starting index of the first result to return for paginated responses.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of SCIM enterprise members to return per page for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-provisioned-identities-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListScimEnterpriseMembers", + "parameters": { + "exclude_attributes": { + "value": "groups", + "type": "string", + "required": false + }, + "filter_criteria": { + "value": "userName eq 'johndoe'", + "type": "string", + "required": false + }, + "pagination_start_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSecretScanningAlertLocations", + "qualifiedName": "GithubApi.ListSecretScanningAlertLocations", + "fullyQualifiedName": "GithubApi.ListSecretScanningAlertLocations@1.0.0", + "description": "Retrieve locations for a secret scanning alert in a repository.\n\nThis tool retrieves all locations associated with a specific secret scanning alert within an eligible GitHub repository. It requires administrator access and a personal access token with appropriate scopes. Suitable for checking where a secret may have been exposed in repository files or areas.", + "parameters": [ + { + "name": "alert_number", + "type": "integer", + "required": true, + "description": "The unique identifier number for a secret scanning alert. This can be found at the end of the URL for a code scanning alert on GitHub, or in the `number` field of the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` API call.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository, case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch for the secret scanning alert locations.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page (maximum 100).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'secret-scanning/list-locations-for-alert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListSecretScanningAlertLocations", + "parameters": { + "alert_number": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSecretScanningAlertsForEnterprise", + "qualifiedName": "GithubApi.ListSecretScanningAlertsForEnterprise", + "fullyQualifiedName": "GithubApi.ListSecretScanningAlertsForEnterprise@1.0.0", + "description": "Retrieve secret scanning alerts for enterprise repositories.\n\nThis tool fetches secret scanning alerts for eligible repositories within an enterprise, presented from newest to oldest. Users must be members of the enterprise and possess the appropriate access token with `repo` or `security_events` scope. Alerts are only available for organizations where the user has ownership or security management permissions.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise. This identifies the specific enterprise to list alerts for.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_resolution_filters", + "type": "string", + "required": false, + "description": "Comma-separated list of alert resolutions to filter by: false_positive, wont_fix, revoked, pattern_edited, pattern_deleted, used_in_tests.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_state_filter", + "type": "string", + "required": false, + "description": "Specify if only 'open' or 'resolved' secret scanning alerts should be listed.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_after", + "type": "string", + "required": false, + "description": "A cursor for retrieving results after this point, as specified in the Link header.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_before", + "type": "string", + "required": false, + "description": "A cursor to fetch results before this point, as specified by the link header.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results per page. Maximum is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_types_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of secret types to return. By default, all secret types are returned. Refer to GitHub's secret scanning patterns documentation for supported types.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "Specify 'created' to sort by alert creation date or 'updated' to sort by the last update or resolution date.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specify the direction ('asc' or 'desc') to sort the secret scanning alerts results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'secret-scanning/list-alerts-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListSecretScanningAlertsForEnterprise", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "alert_resolution_filters": { + "value": "false_positive,wont_fix", + "type": "string", + "required": false + }, + "alert_state_filter": { + "value": "open", + "type": "string", + "required": false + }, + "cursor_after": { + "value": "abc123", + "type": "string", + "required": false + }, + "cursor_before": { + "value": "xyz789", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "secret_types_to_return": { + "value": "api_key,token", + "type": "string", + "required": false + }, + "sort_by": { + "value": "created", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSecurityManagerTeams", + "qualifiedName": "GithubApi.ListSecurityManagerTeams", + "fullyQualifiedName": "GithubApi.ListSecurityManagerTeams@1.0.0", + "description": "Retrieve teams that are security managers in an organization.\n\nThis tool retrieves a list of teams designated as security managers for a specified organization on GitHub. It should be used when you need to identify teams responsible for security within an organization. Requires appropriate access rights, like being an administrator or security manager with a token having the `read:org` scope.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization's name. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/list-security-manager-teams'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListSecurityManagerTeams", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSelectedRepositoriesForSecret", + "qualifiedName": "GithubApi.ListSelectedRepositoriesForSecret", + "fullyQualifiedName": "GithubApi.ListSelectedRepositoriesForSecret@1.0.0", + "description": "Retrieve repositories with selected access for an org secret.\n\nThis tool lists all repositories that have been granted access to a secret in a GitHub organization, where the access visibility is set to 'selected'. Use it when you need to determine which repositories can access a particular secret. Requires an access token with 'admin:org' scope or 'dependabot_secrets' permission for GitHub Apps.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. This is not case sensitive. Required to identify the organization whose secret's repository access is being queried.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the secret for which you wish to list selected repositories. It is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/list-selected-repos-for-org-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListSelectedRepositoriesForSecret", + "parameters": { + "organization_name": { + "value": "MyOrg", + "type": "string", + "required": true + }, + "secret_name": { + "value": "ProdDatabasePassword", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSelfHostedRunnerGroups", + "qualifiedName": "GithubApi.ListSelfHostedRunnerGroups", + "fullyQualifiedName": "GithubApi.ListSelfHostedRunnerGroups@1.0.0", + "description": "Retrieve all self-hosted runner groups for an enterprise.\n\nFetches a list of all self-hosted runner groups for a specified enterprise. Requires authentication with an access token having the 'manage_runners:enterprise' scope.", + "parameters": [ + { + "name": "enterprise_slug", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise for which to list self-hosted runner groups. This identifies the enterprise by name or numeric ID.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_filter", + "type": "string", + "required": false, + "description": "Filter results to show runner groups usable by the specified organization.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies which page of the self-hosted runner groups results to retrieve. Useful for paginating through large sets of data.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to return per page, up to 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-self-hosted-runner-groups-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListSelfHostedRunnerGroups", + "parameters": { + "enterprise_slug": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "organization_filter": { + "value": "my-org", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSelfHostedRunners", + "qualifiedName": "GithubApi.ListSelfHostedRunners", + "fullyQualifiedName": "GithubApi.ListSelfHostedRunners@1.0.0", + "description": "Retrieve self-hosted runners for a GitHub repository.\n\nUse this tool to list all self-hosted runners configured in a specific GitHub repository. Authentication with an access token having the `repo` scope is required.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository (case-insensitive) for which to list self-hosted runners.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch for listing self-hosted runners.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-self-hosted-runners-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListSelfHostedRunners", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSelfHostedRunnersForEnterprise", + "qualifiedName": "GithubApi.ListSelfHostedRunnersForEnterprise", + "fullyQualifiedName": "GithubApi.ListSelfHostedRunnersForEnterprise@1.0.0", + "description": "Retrieve all self-hosted runners for a GitHub enterprise.\n\nUse this tool to obtain a list of all self-hosted runners configured for a specified GitHub enterprise. Authentication with an access token having the `manage_runners:enterprise` scope is required.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise for which to list self-hosted runners.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to fetch for pagination purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-self-hosted-runners-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListSelfHostedRunnersForEnterprise", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSelfHostedRunnersInGroup", + "qualifiedName": "GithubApi.ListSelfHostedRunnersInGroup", + "fullyQualifiedName": "GithubApi.ListSelfHostedRunnersInGroup@1.0.0", + "description": "Retrieve self-hosted runners in an enterprise group.\n\nUse this tool to list the self-hosted runners associated with a specific group in an enterprise on GitHub. Authentication with an access token that has the 'manage_runners:enterprise' scope is required.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise. Use the slug version of the enterprise name or substitute with the enterprise ID.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the self-hosted runner group within the enterprise.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page (maximum 100).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/list-self-hosted-runners-in-group-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListSelfHostedRunnersInGroup", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "runner_group_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSshSigningKeys", + "qualifiedName": "GithubApi.ListSshSigningKeys", + "fullyQualifiedName": "GithubApi.ListSshSigningKeys@1.0.0", + "description": "Retrieve SSH signing keys for the authenticated GitHub user.\n\nThis tool lists the SSH signing keys associated with the authenticated GitHub user's account. It requires authentication via Basic Auth or OAuth with `read:ssh_signing_key` scope.", + "parameters": [ + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch. Use this to navigate through paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of SSH signing key results to display per page. The maximum allowed is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/list-ssh-signing-keys-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListSshSigningKeys", + "parameters": { + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSshSigningKeysForUser", + "qualifiedName": "GithubApi.ListSshSigningKeysForUser", + "fullyQualifiedName": "GithubApi.ListSshSigningKeysForUser@1.0.0", + "description": "Retrieve SSH signing keys for a specific GitHub user.\n\nUse this tool to obtain the SSH signing keys associated with a given GitHub username. This operation can be performed by anyone.", + "parameters": [ + { + "name": "github_username", + "type": "string", + "required": true, + "description": "The GitHub username whose SSH signing keys you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch when listing SSH signing keys.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/list-ssh-signing-keys-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListSshSigningKeysForUser", + "parameters": { + "github_username": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListStarredGists", + "qualifiedName": "GithubApi.ListStarredGists", + "fullyQualifiedName": "GithubApi.ListStarredGists@1.0.0", + "description": "Retrieve the authenticated user's starred gists.\n\nCall this tool to get the authenticated user's starred gists on GitHub. Useful for accessing gists that the user has marked as starred.", + "parameters": [ + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specifies which page of results to fetch for the user's starred gists.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page. Maximum allowed is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_since_time", + "type": "string", + "required": false, + "description": "Only show gists updated after this time. Use ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/list-starred'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListStarredGists", + "parameters": { + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "updated_since_time": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListStarredRepos", + "qualifiedName": "GithubApi.ListStarredRepos", + "fullyQualifiedName": "GithubApi.ListStarredRepos@1.0.0", + "description": "Retrieve repositories starred by a user on GitHub.\n\nUse this tool to get a list of repositories that a specified GitHub user has starred, including the option to find out when stars were created.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user's handle (username) to retrieve starred repositories for.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch, useful for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of repository results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specify the direction to sort the results: 'asc' for ascending or 'desc' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_repositories_by", + "type": "string", + "required": false, + "description": "Property to sort the repositories by: 'created' for star date or 'updated' for last push date.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-repos-starred-by-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListStarredRepos", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "sort_repositories_by": { + "value": "created", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListStarredRepositories", + "qualifiedName": "GithubApi.ListStarredRepositories", + "fullyQualifiedName": "GithubApi.ListStarredRepositories@1.0.0", + "description": "Retrieve repositories starred by the authenticated user.\n\nThis tool fetches a list of repositories that the authenticated user has starred on GitHub. It can also provide information on when the stars were created if desired.", + "parameters": [ + { + "name": "page_number_to_fetch", + "type": "integer", + "required": false, + "description": "Specify the page number of results to retrieve. Use for pagination of starred repositories.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of repositories to return per page, maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "The property to sort the results by. Use 'created' for sorting by the star creation date or 'updated' for the last push date.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "The direction to sort the results by. Use 'asc' for ascending or 'desc' for descending.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-repos-starred-by-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListStarredRepositories", + "parameters": { + "page_number_to_fetch": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_by": { + "value": "created", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeamDiscussionCommentReactions", + "qualifiedName": "GithubApi.ListTeamDiscussionCommentReactions", + "fullyQualifiedName": "GithubApi.ListTeamDiscussionCommentReactions@1.0.0", + "description": "Retrieve reactions for a team discussion comment in an organization.\n\nThis tool retrieves the list of reactions for a specific comment in a team discussion within an organization on GitHub. It requires OAuth access tokens with the `read:discussion` scope. Use this when you need to analyze or display reactions to a particular discussion comment.", + "parameters": [ + { + "name": "comment_identifier", + "type": "integer", + "required": true, + "description": "The unique number identifying the discussion comment.", + "enum": null, + "inferrable": true + }, + { + "name": "discussion_number", + "type": "integer", + "required": true, + "description": "The number identifying the specific discussion in the team.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name, case-insensitive, used to identify the team in the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_reaction_type", + "type": "string", + "required": false, + "description": "Specify a single reaction type to filter results. Options: '+1', '-1', 'laugh', 'confused', 'heart', 'hooray', 'rocket', 'eyes'. Omit to list all reactions.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the comments reactions to fetch from the results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results per page to return (maximum 100).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions/list-for-team-discussion-comment-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListTeamDiscussionCommentReactions", + "parameters": { + "comment_identifier": { + "value": 42, + "type": "integer", + "required": true + }, + "discussion_number": { + "value": 7, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + }, + "filter_by_reaction_type": { + "value": "heart", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeamDiscussionComments", + "qualifiedName": "GithubApi.ListTeamDiscussionComments", + "fullyQualifiedName": "GithubApi.ListTeamDiscussionComments@1.0.0", + "description": "Retrieve comments from a team discussion in an organization.\n\nThis tool lists all comments on a specified team discussion within an organization on GitHub. It requires an OAuth token with the `read:discussion` scope and can be used when you need to see all comments made in a particular team discussion.", + "parameters": [ + { + "name": "discussion_id", + "type": "integer", + "required": true, + "description": "The unique number identifying the discussion to retrieve comments from.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The identifier for the team, typically a URL-friendly version of the team name.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The specific page of discussion comments to retrieve, starting with 1 for the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of discussion comments to return per page, maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specify the sort order for results: 'asc' for ascending or 'desc' for descending.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/list-discussion-comments-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListTeamDiscussionComments", + "parameters": { + "discussion_id": { + "value": 123, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeamDiscussions", + "qualifiedName": "GithubApi.ListTeamDiscussions", + "fullyQualifiedName": "GithubApi.ListTeamDiscussions@1.0.0", + "description": "Retrieve all discussions from a team's page in an organization.\n\nUse this tool to get a list of discussions on a specified team's page within a GitHub organization. Requires OAuth access tokens with the `read:discussion` scope.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the GitHub organization.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team's name to identify which team's discussions to retrieve in the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "pinned_discussions_only", + "type": "string", + "required": false, + "description": "Filter to retrieve only pinned discussions. Use 'true' for pinned only, 'false' for all.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The specific page number of discussion results to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specify the sorting direction for the results. Use 'asc' for ascending or 'desc' for descending order.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/list-discussions-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListTeamDiscussions", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "dev-team", + "type": "string", + "required": true + }, + "pinned_discussions_only": { + "value": "true", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeamMembersInOrg", + "qualifiedName": "GithubApi.ListTeamMembersInOrg", + "fullyQualifiedName": "GithubApi.ListTeamMembersInOrg@1.0.0", + "description": "Retrieve team members in a specified organization.\n\nCall this tool to get a list of members in a specific team within an organization on GitHub. It includes members from child teams, provided that the authenticated user has visibility of the team.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name within the organization. Used to identify the specific team.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_role", + "type": "string", + "required": false, + "description": "Filters team members by their role: 'member', 'maintainer', or 'all'.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "The page number of results to fetch. Use this for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of team members to return per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/list-members-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListTeamMembersInOrg", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "dev-team", + "type": "string", + "required": true + }, + "filter_by_role": { + "value": "member", + "type": "string", + "required": false + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeamProjectsInOrg", + "qualifiedName": "GithubApi.ListTeamProjectsInOrg", + "fullyQualifiedName": "GithubApi.ListTeamProjectsInOrg@1.0.0", + "description": "Retrieve a list of projects for a team in an organization.\n\nUse this tool to get a list of organization projects associated with a specific team based on the organization name and team slug. Ideal for fetching project details for managerial or planning purposes.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the organization for which to list team projects.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The team's unique slug identifier. This is used to specify which team's projects to list.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number for the results you wish to retrieve. Used for paginating through results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/list-projects-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListTeamProjectsInOrg", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "team_slug": { + "value": "dev-team", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeamRepositories", + "qualifiedName": "GithubApi.ListTeamRepositories", + "fullyQualifiedName": "GithubApi.ListTeamRepositories@1.0.0", + "description": "Retrieve a list of repositories for a specified team.\n\nThis tool lists repositories associated with a specified team within an organization, visible to the authenticated user. Ideal for obtaining an overview of team-managed projects.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization name. Case insensitivity applies.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name (case-insensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/list-repos-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListTeamRepositories", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "team_slug": { + "value": "dev-team", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserAccessibleRepos", + "qualifiedName": "GithubApi.ListUserAccessibleRepos", + "fullyQualifiedName": "GithubApi.ListUserAccessibleRepos@1.0.0", + "description": "List repositories accessible to the authenticated user.\n\nRetrieve a list of repositories that the authenticated user can access with specific permissions for a GitHub app installation. Useful for determining the user's access level to various repositories.", + "parameters": [ + { + "name": "installation_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub app installation required to list the repositories.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to fetch, starting from 1.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of repository results to return per page (maximum 100).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/list-installation-repos-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserAccessibleRepos", + "parameters": { + "installation_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserEmailAddresses", + "qualifiedName": "GithubApi.ListUserEmailAddresses", + "fullyQualifiedName": "GithubApi.ListUserEmailAddresses@1.0.0", + "description": "Retrieve all email addresses of the authenticated user.\n\nFetches all email addresses associated with the authenticated GitHub user, indicating which are public. Useful for managing email visibility or account settings. Requires `user:email` scope.", + "parameters": [ + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number to fetch results for user email addresses.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of email results to retrieve per page, maximum is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/list-emails-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserEmailAddresses", + "parameters": { + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserFollowers", + "qualifiedName": "GithubApi.ListUserFollowers", + "fullyQualifiedName": "GithubApi.ListUserFollowers@1.0.0", + "description": "Retrieve a list of followers for a specific GitHub user.\n\nUse this tool to get the list of people following a specified GitHub user. It should be called when you need information about who is following a particular user.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user handle to list followers for.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to retrieve followers for the specified user. Use this to paginate through results if there are many followers.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of follower results to display per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/list-followers-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserFollowers", + "parameters": { + "github_user_handle": { + "value": "octocat", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserGists", + "qualifiedName": "GithubApi.ListUserGists", + "fullyQualifiedName": "GithubApi.ListUserGists@1.0.0", + "description": "Lists a user's gists or public gists if unauthenticated.\n\nThis tool retrieves the list of gists for the authenticated user. If no authentication is provided, it returns all public gists. Useful for gathering a user's code snippets or public contributions.", + "parameters": [ + { + "name": "page_number_to_fetch", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of gists to return per page. Maximum is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "show_gists_since", + "type": "string", + "required": false, + "description": "Show gists updated after the specified time in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserGists", + "parameters": { + "page_number_to_fetch": { + "value": 2, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "show_gists_since": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserGithubEvents", + "qualifiedName": "GithubApi.ListUserGithubEvents", + "fullyQualifiedName": "GithubApi.ListUserGithubEvents@1.0.0", + "description": "Retrieve a user's GitHub events, including private if authenticated.\n\nThis tool retrieves GitHub events for a specified user. If authenticated, it includes private events; otherwise, only public events are shown.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub username for which to retrieve events. Use the handle of the user account.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number of results to fetch for the user's GitHub events.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-events-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserGithubEvents", + "parameters": { + "github_user_handle": { + "value": "exampleUser123", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserGithubTeams", + "qualifiedName": "GithubApi.ListUserGithubTeams", + "fullyQualifiedName": "GithubApi.ListUserGithubTeams@1.0.0", + "description": "Retrieve teams the authenticated GitHub user belongs to.\n\nThis tool lists all teams across organizations that the authenticated user is a part of on GitHub. Requires appropriate OAuth scope.", + "parameters": [ + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number to specify which set of results to fetch. Useful for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to display per page, maximum value is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/list-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserGithubTeams", + "parameters": { + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserGpgKeys", + "qualifiedName": "GithubApi.ListUserGpgKeys", + "fullyQualifiedName": "GithubApi.ListUserGpgKeys@1.0.0", + "description": "Retrieve authenticated user's GPG keys from GitHub.\n\nUse this tool to obtain a list of the authenticated user's GPG keys on GitHub. Authentication via Basic Auth or OAuth with 'read:gpg_key' scope is required. This tool is useful for managing or verifying keys associated with a GitHub account.", + "parameters": [ + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specifies which page of results to retrieve for the GPG keys list. Use integers starting from 1.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/list-gpg-keys-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserGpgKeys", + "parameters": { + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserIssues", + "qualifiedName": "GithubApi.ListUserIssues", + "fullyQualifiedName": "GithubApi.ListUserIssues@1.0.0", + "description": "Fetch issues and pull requests assigned to you.\n\nLists issues and pull requests across owned and member repositories assigned to the authenticated GitHub user. Useful for tracking tasks assigned to you. Includes both issues and pull requests, distinguishable by the `pull_request` key.", + "parameters": [ + { + "name": "issue_filter_type", + "type": "string", + "required": false, + "description": "Specifies the type of issues to return. Options: 'assigned', 'created', 'mentioned', 'subscribed', 'all'.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_state", + "type": "string", + "required": false, + "description": "Specifies whether to return open, closed, or all issues.", + "enum": null, + "inferrable": true + }, + { + "name": "label_filter", + "type": "string", + "required": false, + "description": "Comma-separated list of label names to filter issues by. Example: 'bug,ui,@high'.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Specifies the page number of the results to fetch. Use for paginating through result sets.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of issues or pull requests to return per page. The maximum allowed value is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "Choose sorting method for results: 'created', 'updated', or 'comments'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specifies the sorting direction of the results, either ascending (`asc`) or descending (`desc`).", + "enum": null, + "inferrable": true + }, + { + "name": "updated_since", + "type": "string", + "required": false, + "description": "Show issues updated after this timestamp. Use ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/list-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserIssues", + "parameters": { + "issue_filter_type": { + "value": "assigned", + "type": "string", + "required": false + }, + "issue_state": { + "value": "open", + "type": "string", + "required": false + }, + "label_filter": { + "value": "bug,ui", + "type": "string", + "required": false + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_by": { + "value": "updated", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "updated_since": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserMigrationRepos", + "qualifiedName": "GithubApi.ListUserMigrationRepos", + "fullyQualifiedName": "GithubApi.ListUserMigrationRepos@1.0.0", + "description": "Retrieve repositories for a user's migration.\n\nThis tool lists all the repositories associated with a user's migration on GitHub. Use it when you need to access the repositories involved in a specific migration.", + "parameters": [ + { + "name": "migration_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the user migration to retrieve repositories.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to retrieve. Use this to paginate through multiple pages of repository data.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of repository results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'migrations/list-repos-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserMigrationRepos", + "parameters": { + "migration_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserMigrations", + "qualifiedName": "GithubApi.ListUserMigrations", + "fullyQualifiedName": "GithubApi.ListUserMigrations@1.0.0", + "description": "Lists all migrations a user has started.\n\nUse this tool to retrieve a list of all the migrations initiated by an authenticated user on GitHub.", + "parameters": [ + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The specific page of migration results to retrieve, starting from 1.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of migration results per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'migrations/list-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserMigrations", + "parameters": { + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserNotifications", + "qualifiedName": "GithubApi.ListUserNotifications", + "fullyQualifiedName": "GithubApi.ListUserNotifications@1.0.0", + "description": "Retrieve notifications for the authenticated GitHub user.\n\nThis tool retrieves all notifications for the authenticated GitHub user, sorted by most recently updated. It should be called when the user wants to check their latest notifications.", + "parameters": [ + { + "name": "filter_notifications_before_date", + "type": "string", + "required": false, + "description": "Only show notifications updated before the specified ISO 8601 timestamp (`YYYY-MM-DDTHH:MM:SSZ`).", + "enum": null, + "inferrable": true + }, + { + "name": "include_read_notifications", + "type": "boolean", + "required": false, + "description": "Set to `true` to include notifications marked as read in the results.", + "enum": null, + "inferrable": true + }, + { + "name": "notifications_since_timestamp", + "type": "string", + "required": false, + "description": "Return notifications updated after this timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.", + "enum": null, + "inferrable": true + }, + { + "name": "only_show_participating_notifications", + "type": "boolean", + "required": false, + "description": "If true, only shows notifications where the user is directly participating or mentioned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the notification results to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of notifications to display per page, with a maximum limit of 50.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-notifications-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserNotifications", + "parameters": { + "filter_notifications_before_date": { + "value": "2023-09-30T12:00:00Z", + "type": "string", + "required": false + }, + "include_read_notifications": { + "value": true, + "type": "boolean", + "required": false + }, + "notifications_since_timestamp": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "only_show_participating_notifications": { + "value": false, + "type": "boolean", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserOrganizations", + "qualifiedName": "GithubApi.ListUserOrganizations", + "fullyQualifiedName": "GithubApi.ListUserOrganizations@1.0.0", + "description": "List organizations for the authenticated GitHub user.\n\nThis tool retrieves a list of organizations that the authenticated user can interact with on GitHub. It requires OAuth scope such as `user` or `read:org` to access this information. Use this tool to find out which organizations a user is part of and can manage.", + "parameters": [ + { + "name": "page_number_to_fetch", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch for user organizations.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of organizations listed per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/list-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserOrganizations", + "parameters": { + "page_number_to_fetch": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserProjects", + "qualifiedName": "GithubApi.ListUserProjects", + "fullyQualifiedName": "GithubApi.ListUserProjects@1.0.0", + "description": "Retrieve a list of GitHub projects for a specific user.\n\nCall this tool to get the projects associated with a specified GitHub username.", + "parameters": [ + { + "name": "github_username", + "type": "string", + "required": true, + "description": "The GitHub username of the account whose projects are to be listed.", + "enum": null, + "inferrable": true + }, + { + "name": "project_state", + "type": "string", + "required": false, + "description": "Specify the state of projects to return. Options are 'open', 'closed', or 'all'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to fetch when listing user projects.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of projects to display per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/list-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserProjects", + "parameters": { + "github_username": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "project_state": { + "value": "all", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserReceivedPublicEvents", + "qualifiedName": "GithubApi.ListUserReceivedPublicEvents", + "fullyQualifiedName": "GithubApi.ListUserReceivedPublicEvents@1.0.0", + "description": "Retrieve public events received by a GitHub user.\n\nThis tool fetches a list of public events received by a specified GitHub user. It should be called when there is a need to understand the public activities involving the user.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub handle for the user account whose public events are to be listed.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results you wish to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-received-public-events-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserReceivedPublicEvents", + "parameters": { + "github_user_handle": { + "value": "johndoe", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserRepositories", + "qualifiedName": "GithubApi.ListUserRepositories", + "fullyQualifiedName": "GithubApi.ListUserRepositories@1.0.0", + "description": "Retrieve repositories accessible to the authenticated user.\n\nThis tool lists repositories that the authenticated user can access with explicit permissions like `:read`, `:write`, or `:admin`. It includes repositories owned by the user, those where they are collaborators, and those accessible through organization membership.", + "parameters": [ + { + "name": "filter_repositories_before_timestamp", + "type": "string", + "required": false, + "description": "Only show repositories updated before the specified timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_affiliation_filter", + "type": "string", + "required": false, + "description": "Specify affiliations for repositories to list. Options: `owner`, `collaborator`, `organization_member`. Provide as a comma-separated string.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_type", + "type": "string", + "required": false, + "description": "Limit results to repositories of the specified type: 'all', 'owner', 'public', 'private', or 'member'. Avoid using with 'visibility' or 'affiliation'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_visibility", + "type": "string", + "required": false, + "description": "Limit results to repositories with the specified visibility: 'all', 'public', or 'private'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of repositories to display per page. Accepts an integer up to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the order to sort repositories. Use 'asc' for ascending or 'desc' for descending. Default is 'asc' for 'full_name' sort and 'desc' otherwise.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_property", + "type": "string", + "required": false, + "description": "Property by which to sort repositories, such as `created`, `updated`, `pushed`, or `full_name`.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_after_timestamp", + "type": "string", + "required": false, + "description": "Filter repositories updated after the specified ISO 8601 timestamp (YYYY-MM-DDTHH:MM:SSZ).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/list-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUserRepositories", + "parameters": { + "filter_repositories_before_timestamp": { + "value": "2023-09-30T12:00:00Z", + "type": "string", + "required": false + }, + "repository_affiliation_filter": { + "value": "owner,collaborator", + "type": "string", + "required": false + }, + "repository_type": { + "value": "all", + "type": "string", + "required": false + }, + "repository_visibility": { + "value": "public", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "desc", + "type": "string", + "required": false + }, + "sort_property": { + "value": "updated", + "type": "string", + "required": false + }, + "updated_after_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUsersWithBranchAccess", + "qualifiedName": "GithubApi.ListUsersWithBranchAccess", + "fullyQualifiedName": "GithubApi.ListUsersWithBranchAccess@1.0.0", + "description": "Retrieve users with push access to a protected branch on GitHub.\n\nThis tool should be called to obtain a list of users who have push access to a specific protected branch in a GitHub repository. It is applicable to both public and private repositories under various GitHub plans, including Free, Pro, Team, and Enterprise. Use this when you need to manage or review user permissions for branch access.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The exact name of the branch to check for push access. Wildcard characters are not allowed.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/get-users-with-access-to-protected-branch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListUsersWithBranchAccess", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWatchedRepos", + "qualifiedName": "GithubApi.ListWatchedRepos", + "fullyQualifiedName": "GithubApi.ListWatchedRepos@1.0.0", + "description": "Retrieve a list of repositories a user watches on GitHub.\n\nUse this tool to obtain the repositories that a specified GitHub user is watching.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub handle of the user whose watched repositories are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch for the user's watched repositories.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of repository results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-repos-watched-by-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListWatchedRepos", + "parameters": { + "github_user_handle": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWatchedRepositories", + "qualifiedName": "GithubApi.ListWatchedRepositories", + "fullyQualifiedName": "GithubApi.ListWatchedRepositories@1.0.0", + "description": "Retrieve repositories watched by the authenticated user.\n\nUse this tool to obtain a list of repositories that the authenticated GitHub user is currently watching. It's useful for managing or displaying watched repositories.", + "parameters": [ + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to fetch. Used for pagination of results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of repository results displayed per page (maximum 100).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-watched-repos-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListWatchedRepositories", + "parameters": { + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWatchersForRepo", + "qualifiedName": "GithubApi.ListWatchersForRepo", + "fullyQualifiedName": "GithubApi.ListWatchersForRepo@1.0.0", + "description": "Retrieve the list of users watching a GitHub repository.\n\nUse this tool to get a list of all users who are watching a specific GitHub repository. It provides the necessary information about the watchers for a given repository by its owner and repo name.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to list watchers for. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. It's case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch. Helps in paginating through results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/list-watchers-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListWatchersForRepo", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWebhookDeliveries", + "qualifiedName": "GithubApi.ListWebhookDeliveries", + "fullyQualifiedName": "GithubApi.ListWebhookDeliveries@1.0.0", + "description": "Retrieve webhook deliveries for a GitHub App.\n\nUse this tool to obtain a list of webhook deliveries associated with a GitHub App. Authentication requires a JWT.", + "parameters": [ + { + "name": "only_redeliveries", + "type": "boolean", + "required": false, + "description": "Set to true to include only redeliveries in the results.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Starting point for pagination to fetch a page of deliveries. Use the `link` header to find next and previous page cursors.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of webhook deliveries to return per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/list-webhook-deliveries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListWebhookDeliveries", + "parameters": { + "only_redeliveries": { + "value": false, + "type": "boolean", + "required": false + }, + "pagination_cursor": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWorkflowArtifacts", + "qualifiedName": "GithubApi.ListWorkflowArtifacts", + "fullyQualifiedName": "GithubApi.ListWorkflowArtifacts@1.0.0", + "description": "Retrieve artifacts from a GitHub workflow run.\n\nUse this tool to list artifacts associated with a specific GitHub workflow run. It requires read access to the repository and appropriate permissions if the repository is private.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the specific workflow run to retrieve artifacts from.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_fetch", + "type": "integer", + "required": false, + "description": "The page number of the artifacts results to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-workflow-run-artifacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListWorkflowArtifacts", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "workflow_run_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "page_number_to_fetch": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWorkflowRunJobs", + "qualifiedName": "GithubApi.ListWorkflowRunJobs", + "fullyQualifiedName": "GithubApi.ListWorkflowRunJobs@1.0.0", + "description": "Retrieve jobs from a specific GitHub workflow run attempt.\n\nThis tool retrieves jobs for a specific workflow run attempt on GitHub. It is useful for users who need to monitor or analyze job details of a workflow run. Access to the repository is required, and permissions depend on whether the repository is public or private.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to fetch jobs from. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_attempt_number", + "type": "integer", + "required": true, + "description": "The attempt number of the specific workflow run to retrieve jobs for. This is typically used to distinguish between multiple attempts of the same run.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the workflow run to list jobs for.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to fetch, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of job results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/list-jobs-for-workflow-run-attempt'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ListWorkflowRunJobs", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "workflow_run_attempt_number": { + "value": 1, + "type": "integer", + "required": true + }, + "workflow_run_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "results_page_number": { + "value": 2, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "LockGithubIssue", + "qualifiedName": "GithubApi.LockGithubIssue", + "fullyQualifiedName": "GithubApi.LockGithubIssue@1.0.0", + "description": "Lock a GitHub issue or pull request conversation.\n\nUse this tool to prevent further interactions with a specific GitHub issue or pull request by locking its conversation. It requires push access to the repository.", + "parameters": [ + { + "name": "issue_number", + "type": "integer", + "required": true, + "description": "The number that identifies the GitHub issue to lock.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository in which the issue or pull request exists. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_lock_reason", + "type": "string", + "required": false, + "description": "The reason for locking the conversation. Acceptable values: 'off-topic', 'too heated', 'resolved', 'spam'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/lock'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.LockGithubIssue", + "parameters": { + "issue_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "issue_lock_reason": { + "value": "spam", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageEnterpriseSecurityFeature", + "qualifiedName": "GithubApi.ManageEnterpriseSecurityFeature", + "fullyQualifiedName": "GithubApi.ManageEnterpriseSecurityFeature@1.0.0", + "description": "Enable or disable a security feature for an enterprise.\n\nUse this tool to enable or disable a specified security feature across all repositories within an enterprise. Requires administrative access and an access token with the `admin:enterprise` scope.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug version of the enterprise name or the enterprise ID.", + "enum": null, + "inferrable": true + }, + { + "name": "security_feature", + "type": "string", + "required": true, + "description": "Specify the security feature to enable or disable. Options: 'advanced_security', 'secret_scanning', 'secret_scanning_push_protection'.", + "enum": null, + "inferrable": true + }, + { + "name": "set_enablement_status", + "type": "string", + "required": true, + "description": "Specify 'enable_all' to activate or 'disable_all' to deactivate the security feature for all repositories in the enterprise.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'secret-scanning/post-security-product-enablement-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ManageEnterpriseSecurityFeature", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise-identity", + "type": "string", + "required": true + }, + "security_feature": { + "value": "advanced_security", + "type": "string", + "required": true + }, + "set_enablement_status": { + "value": "enable_all", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageGithubEnvironmentSecret", + "qualifiedName": "GithubApi.ManageGithubEnvironmentSecret", + "fullyQualifiedName": "GithubApi.ManageGithubEnvironmentSecret@1.0.0", + "description": "Create or update an encrypted environment secret on GitHub.\n\nThis tool allows you to create or update an environment secret in a GitHub repository. It requires encryption of the secret value using LibSodium and authentication with a token that has the 'repo' scope. Ideal for automating secret management in deployment environments.", + "parameters": [ + { + "name": "encrypted_secret_value", + "type": "string", + "required": true, + "description": "The secret value encrypted with LibSodium using a public key. Retrieve the key from the 'Get an environment public key' endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "encryption_key_id", + "type": "string", + "required": true, + "description": "The identifier for the encryption key used to encrypt the secret. This is required to ensure the correct decryption of the secret on GitHub.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "The name of the environment in the GitHub repository where the secret will be created or updated.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_unique_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub repository where the secret will be managed.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the secret to be created or updated in the GitHub environment.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/create-or-update-environment-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ManageGithubEnvironmentSecret", + "parameters": { + "encrypted_secret_value": { + "value": "b1FytNF4gBbZlfUPU3uG5Z5hjRiIjA1aumPmT6ZvzzI=", + "type": "string", + "required": true + }, + "encryption_key_id": { + "value": "abc123456789", + "type": "string", + "required": true + }, + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_unique_id": { + "value": 123456789, + "type": "integer", + "required": true + }, + "secret_name": { + "value": "MY_SUPER_SECRET", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageGithubRepoSecret", + "qualifiedName": "GithubApi.ManageGithubRepoSecret", + "fullyQualifiedName": "GithubApi.ManageGithubRepoSecret@1.0.0", + "description": "Create or update an encrypted GitHub repository secret.\n\nUse this tool to create or update an encrypted secret for a GitHub repository. Authentication requires a token with the `repo` scope or `dependabot_secrets` permission. The secret must be encrypted using LibSodium.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive. Specify the GitHub username or organization name.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the repository secret to create or update. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "encrypted_secret_value", + "type": "string", + "required": false, + "description": "The secret's value encrypted using LibSodium and a public key from the repository's public key endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "encryption_key_id", + "type": "string", + "required": false, + "description": "The ID of the key used to encrypt the secret. This key is retrieved from GitHub's repository public key endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/create-or-update-repo-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ManageGithubRepoSecret", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "secret_name": { + "value": "MY_SECRET", + "type": "string", + "required": true + }, + "encrypted_secret_value": { + "value": "gAAAAABgEJH8JyQTXeKOxTn1QvvmgxBOh_Md3GNH1VZ7WgS8PCE3qFn9FoDPQpRxyygw-2YEDWh2ARvxZ3M4TMRM3J8uD-NTG3w==", + "type": "string", + "required": false + }, + "encryption_key_id": { + "value": "key_123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageGithubThreadNotifications", + "qualifiedName": "GithubApi.ManageGithubThreadNotifications", + "fullyQualifiedName": "GithubApi.ManageGithubThreadNotifications@1.0.0", + "description": "Manage GitHub notifications for specific threads.\n\nUse this tool to ignore future notifications for GitHub threads, or to subscribe to threads you aren't receiving notifications for. Ideal for managing notifications on watched repositories by ignoring or subscribing to specific threads.", + "parameters": [ + { + "name": "notification_thread_id", + "type": "integer", + "required": true, + "description": "The unique ID of the notification thread, as retrieved from the GitHub notifications API.", + "enum": null, + "inferrable": true + }, + { + "name": "ignore_thread_notifications", + "type": "boolean", + "required": false, + "description": "Set to true to block all notifications from a thread. Use false to allow notifications.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/set-thread-subscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ManageGithubThreadNotifications", + "parameters": { + "notification_thread_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "ignore_thread_notifications": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageOrgSecurityFeatures", + "qualifiedName": "GithubApi.ManageOrgSecurityFeatures", + "fullyQualifiedName": "GithubApi.ManageOrgSecurityFeatures@1.0.0", + "description": "Toggle security features for all repositories in an organization.\n\nThis tool is used to enable or disable a specified security feature across all repositories in a GitHub organization. It requires organization owner access or a security manager role, and a token with 'write:org' scope. GitHub Apps must have the 'organization_administration:write' permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "security_feature", + "type": "string", + "required": true, + "description": "Specifies the security feature to enable or disable. Options include: dependency_graph, dependabot_alerts, dependabot_security_updates, advanced_security, secret_scanning, secret_scanning_push_protection.", + "enum": null, + "inferrable": true + }, + { + "name": "security_feature_action", + "type": "string", + "required": true, + "description": "Specifies whether to enable or disable the security feature for all organization repositories. Use 'enable_all' to activate and 'disable_all' to deactivate.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/enable-or-disable-security-product-on-all-org-repos'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ManageOrgSecurityFeatures", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "security_feature": { + "value": "dependabot_alerts", + "type": "string", + "required": true + }, + "security_feature_action": { + "value": "enable_all", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MarkGithubNotificationsAsRead", + "qualifiedName": "GithubApi.MarkGithubNotificationsAsRead", + "fullyQualifiedName": "GithubApi.MarkGithubNotificationsAsRead@1.0.0", + "description": "Mark all GitHub notifications as read for the current user.\n\nUse this tool to mark all notifications as 'read' in GitHub for the authenticated user. If there are too many notifications, the process may run asynchronously, and any remaining 'unread' notifications can be checked using a separate endpoint.", + "parameters": [ + { + "name": "mark_notifications_as_read", + "type": "boolean", + "required": false, + "description": "A boolean flag to set notifications as read. True marks notifications as read.", + "enum": null, + "inferrable": true + }, + { + "name": "notifications_last_read_timestamp", + "type": "string", + "required": false, + "description": "A timestamp marking the last time notifications were checked. Notifications updated since this time won't be marked as read. Use ISO 8601 format `YYYY-MM-DDTHH:MM:SSZ`. Leave empty to mark all as read.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/mark-notifications-as-read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.MarkGithubNotificationsAsRead", + "parameters": { + "mark_notifications_as_read": { + "value": true, + "type": "boolean", + "required": false + }, + "notifications_last_read_timestamp": { + "value": "2023-10-01T12:30:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MarkGithubThreadAsRead", + "qualifiedName": "GithubApi.MarkGithubThreadAsRead", + "fullyQualifiedName": "GithubApi.MarkGithubThreadAsRead@1.0.0", + "description": "Mark a GitHub thread notification as read.\n\nUse this tool to mark a GitHub notification thread as read. It mirrors the action of clicking a notification in the GitHub notification inbox.", + "parameters": [ + { + "name": "notification_thread_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub notification thread to be marked as read. Obtain this from the `id` field when retrieving notifications.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/mark-thread-as-read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.MarkGithubThreadAsRead", + "parameters": { + "notification_thread_id": { + "value": 123456789, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MarkRepoNotificationsAsRead", + "qualifiedName": "GithubApi.MarkRepoNotificationsAsRead", + "fullyQualifiedName": "GithubApi.MarkRepoNotificationsAsRead@1.0.0", + "description": "Mark all repository notifications as read for the user.\n\nUse this tool to mark all notifications in a specified repository as read for the authenticated user. If there are too many notifications, the process may be completed asynchronously.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "last_checked_timestamp", + "type": "string", + "required": false, + "description": "Timestamp for last notification check in ISO 8601 format. Omitting marks all as read. Defaults to current time if omitted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/mark-repo-notifications-as-read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.MarkRepoNotificationsAsRead", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "last_checked_timestamp": { + "value": "2023-10-01T12:34:56Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MergeGithubBranch", + "qualifiedName": "GithubApi.MergeGithubBranch", + "fullyQualifiedName": "GithubApi.MergeGithubBranch@1.0.0", + "description": "Merge a branch into a GitHub repository.\n\nUse this tool when you need to merge one branch into another in a GitHub repository. It facilitates branch management by integrating changes from different branches.", + "parameters": [ + { + "name": "base_branch_name", + "type": "string", + "required": true, + "description": "The name of the base branch that the head will be merged into. This is the branch you want to merge changes into.", + "enum": null, + "inferrable": true + }, + { + "name": "head_branch_or_commit_sha", + "type": "string", + "required": true, + "description": "The branch name or commit SHA1 to be merged into the base branch.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "merge_commit_message", + "type": "string", + "required": false, + "description": "Custom commit message for the merge. Defaults to a standard message if not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/merge'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.MergeGithubBranch", + "parameters": { + "base_branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "head_branch_or_commit_sha": { + "value": "feature-branch", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "merge_commit_message": { + "value": "Merging feature branch into main", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MergeGithubPullRequest", + "qualifiedName": "GithubApi.MergeGithubPullRequest", + "fullyQualifiedName": "GithubApi.MergeGithubPullRequest@1.0.0", + "description": "Merge a pull request on GitHub.\n\nThis tool merges a specified pull request on GitHub for a given repository. It should be called when a user wants to merge changes from a pull request into the main branch. Notifications will be triggered, and users should be mindful of secondary rate limits.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the pull request to be merged.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "commit_title", + "type": "string", + "required": false, + "description": "Title for the automatic commit message after merging the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "extra_commit_message", + "type": "string", + "required": false, + "description": "Extra detail to append to the automatic commit message for the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "merge_method", + "type": "string", + "required": false, + "description": "Specifies the method to merge the pull request. Options include 'merge', 'squash', or 'rebase'.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_head_sha", + "type": "string", + "required": false, + "description": "SHA of the pull request head that must match for the merge to proceed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/merge'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.MergeGithubPullRequest", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "commit_title": { + "value": "Merge pull request #42", + "type": "string", + "required": false + }, + "extra_commit_message": { + "value": "Merged changes from contributor.", + "type": "string", + "required": false + }, + "merge_method": { + "value": "squash", + "type": "string", + "required": false + }, + "pull_request_head_sha": { + "value": "abc123def456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MoveGithubProjectColumn", + "qualifiedName": "GithubApi.MoveGithubProjectColumn", + "fullyQualifiedName": "GithubApi.MoveGithubProjectColumn@1.0.0", + "description": "Move a column within a GitHub project board.\n\nUse this tool to change the position of a project column in a GitHub project board to better organize tasks or workflow.", + "parameters": [ + { + "name": "column_position", + "type": "string", + "required": true, + "description": "Specifies where to move the project column. Use `first`, `last`, or `after:` to position after a specific column.", + "enum": null, + "inferrable": true + }, + { + "name": "project_column_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the column to be moved in the GitHub project.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/move-column'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.MoveGithubProjectColumn", + "parameters": { + "column_position": { + "value": "after:123456", + "type": "string", + "required": true + }, + "project_column_id": { + "value": 789012, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MoveProjectCard", + "qualifiedName": "GithubApi.MoveProjectCard", + "fullyQualifiedName": "GithubApi.MoveProjectCard@1.0.0", + "description": "Move a project card to a different position.\n\nUse this tool to move a card in a GitHub project to a different position within a column. This is helpful when reorganizing tasks or priorities in project management.", + "parameters": [ + { + "name": "card_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the card to be moved within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "card_position", + "type": "string", + "required": true, + "description": "Specify where to place the card within the column: 'top', 'bottom', or 'after:'.", + "enum": null, + "inferrable": true + }, + { + "name": "destination_column_id", + "type": "integer", + "required": false, + "description": "The unique identifier of the column to which the card should be moved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/move-card'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.MoveProjectCard", + "parameters": { + "card_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "card_position": { + "value": "after:67890", + "type": "string", + "required": true + }, + "destination_column_id": { + "value": 54321, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MuteGithubThreadNotifications", + "qualifiedName": "GithubApi.MuteGithubThreadNotifications", + "fullyQualifiedName": "GithubApi.MuteGithubThreadNotifications@1.0.0", + "description": "Mute all future notifications for a GitHub thread.\n\nUse this tool to mute notifications for a specific GitHub conversation thread. Notifications will be silenced until you comment on the thread or receive an @mention. This tool is helpful if you want to focus on relevant updates without distractions.", + "parameters": [ + { + "name": "notification_thread_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the specific GitHub notification thread to mute. Obtain from the `id` field of fetched notifications.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/delete-thread-subscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.MuteGithubThreadNotifications", + "parameters": { + "notification_thread_id": { + "value": 123456789, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "OrganizationAppInstallations", + "qualifiedName": "GithubApi.OrganizationAppInstallations", + "fullyQualifiedName": "GithubApi.OrganizationAppInstallations@1.0.0", + "description": "Retrieve GitHub App installations for an organization.\n\nUse this tool to list all GitHub Apps installed within a specified organization. Requires organization owner status with `admin:read` scope.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number_to_fetch", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch. Used for pagination in retrieving GitHub App installations.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of GitHub App installations to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/list-app-installations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.OrganizationAppInstallations", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "page_number_to_fetch": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PromoteUserToSiteAdmin", + "qualifiedName": "GithubApi.PromoteUserToSiteAdmin", + "fullyQualifiedName": "GithubApi.PromoteUserToSiteAdmin@1.0.0", + "description": "Promote a user to site administrator on GitHub Enterprise.\n\nUse this tool to elevate a user's role to site administrator within a GitHub Enterprise instance. Ensure the 'Content-Length' is set to zero when invoking this endpoint.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The handle for the GitHub user account to be promoted to site administrator.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/promote-user-to-be-site-administrator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.PromoteUserToSiteAdmin", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ProvisionEnterpriseUser", + "qualifiedName": "GithubApi.ProvisionEnterpriseUser", + "fullyQualifiedName": "GithubApi.ProvisionEnterpriseUser@1.0.0", + "description": "Create a new SCIM enterprise user identity.\n\nThis tool creates an external identity for a new SCIM enterprise user. It's used for provisioning users in enterprises using SCIM before they can sign in through SAML. When converting an existing enterprise to use SCIM, the SCIM `userName` is utilized to match new users to existing enterprise users.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/provision-enterprise-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ProvisionEnterpriseUser", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"userName\":\"john.doe@example.com\",\"name\":{\"given\":\"John\",\"family\":\"Doe\"},\"emails\":[{\"value\":\"john.doe@example.com\",\"primary\":true}],\"active\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "QueueLdapSyncForTeam", + "qualifiedName": "GithubApi.QueueLdapSyncForTeam", + "fullyQualifiedName": "GithubApi.QueueLdapSyncForTeam@1.0.0", + "description": "Queue an LDAP sync job for a specified team.\n\nThis tool is used to queue an LDAP sync job for a specific GitHub team. It should be called when you want to sync LDAP mappings for a team. A successful response indicates the job has been queued, not that it has been completed.", + "parameters": [ + { + "name": "team_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub team for which the LDAP sync job should be queued.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/sync-ldap-mapping-for-team'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.QueueLdapSyncForTeam", + "parameters": { + "team_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RedeliverGithubWebhook", + "qualifiedName": "GithubApi.RedeliverGithubWebhook", + "fullyQualifiedName": "GithubApi.RedeliverGithubWebhook@1.0.0", + "description": "Redelivers a webhook delivery for a GitHub repository.\n\nUse this tool to redeliver a previously attempted webhook delivery for a specific webhook configured in a GitHub repository. It can be called when a webhook delivery has failed and needs to be retried.", + "parameters": [ + { + "name": "hook_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub webhook hook. This ID is required to specify which webhook to redeliver.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The repository's account owner. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_delivery_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the webhook delivery attempt to be redelivered.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/redeliver-webhook-delivery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RedeliverGithubWebhook", + "parameters": { + "hook_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "webhook_delivery_id": { + "value": 987654, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RedeliverGithubWebhookDelivery", + "qualifiedName": "GithubApi.RedeliverGithubWebhookDelivery", + "fullyQualifiedName": "GithubApi.RedeliverGithubWebhookDelivery@1.0.0", + "description": "Redeliver a GitHub App webhook delivery.\n\nUse this tool to redeliver a webhook delivery for a GitHub App. Authentication with a JWT is required for access.", + "parameters": [ + { + "name": "webhook_delivery_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the webhook delivery to be redelivered.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/redeliver-webhook-delivery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RedeliverGithubWebhookDelivery", + "parameters": { + "webhook_delivery_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RedeliverWebhookDelivery", + "qualifiedName": "GithubApi.RedeliverWebhookDelivery", + "fullyQualifiedName": "GithubApi.RedeliverWebhookDelivery@1.0.0", + "description": "Redeliver an organization's webhook delivery attempt.\n\nUse this tool to redeliver a delivery for a webhook configured in an organization. It is useful when a webhook delivery initially failed or needs to be tested again.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_delivery_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the webhook delivery to be redelivered.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_hook_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the webhook hook. Provide an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/redeliver-webhook-delivery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RedeliverWebhookDelivery", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "webhook_delivery_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "webhook_hook_id": { + "value": 654321, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveActionsCacheKey", + "qualifiedName": "GithubApi.RemoveActionsCacheKey", + "fullyQualifiedName": "GithubApi.RemoveActionsCacheKey@1.0.0", + "description": "Delete GitHub Actions caches by key for a repository.\n\nUse this tool to delete one or more GitHub Actions caches for a repository by specifying a complete cache key. Optionally, provide a Git ref to restrict deletions. Requires an access token with `repo` scope or `actions:write` permission for GitHub Apps.", + "parameters": [ + { + "name": "cache_key", + "type": "string", + "required": true, + "description": "The key used to identify and delete a specific GitHub Actions cache.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "git_reference_for_cache_deletion", + "type": "string", + "required": false, + "description": "Specify the Git reference to restrict cache deletion. Use `refs/heads/` for branches or `refs/pull//merge` for pull requests.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-actions-cache-by-key'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveActionsCacheKey", + "parameters": { + "cache_key": { + "value": "my-cache-key-123", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "git_reference_for_cache_deletion": { + "value": "refs/heads/main", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveAllCustomLabelsRunnerOrg", + "qualifiedName": "GithubApi.RemoveAllCustomLabelsRunnerOrg", + "fullyQualifiedName": "GithubApi.RemoveAllCustomLabelsRunnerOrg@1.0.0", + "description": "Remove all custom labels from an organization's self-hosted runner.\n\nUse this tool to remove all custom labels from a specific self-hosted runner in a GitHub organization. Requires authentication with an access token having `admin:org` scope. Returns the runner's remaining read-only labels.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the self-hosted runner. This is required to target the specific runner for label removal in an organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/remove-all-custom-labels-from-self-hosted-runner-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveAllCustomLabelsRunnerOrg", + "parameters": { + "organization_name": { + "value": "exampleOrg", + "type": "string", + "required": true + }, + "runner_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveAllLabelsFromGithubIssue", + "qualifiedName": "GithubApi.RemoveAllLabelsFromGithubIssue", + "fullyQualifiedName": "GithubApi.RemoveAllLabelsFromGithubIssue@1.0.0", + "description": "Remove all labels from a GitHub issue.\n\nUse this tool to remove all labels from a specific issue in a GitHub repository. It should be called when you need to clear labels from an issue efficiently.", + "parameters": [ + { + "name": "github_issue_number", + "type": "integer", + "required": true, + "description": "The identifier number for the GitHub issue from which all labels should be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive and must be provided as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository, case-insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/remove-all-labels'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveAllLabelsFromGithubIssue", + "parameters": { + "github_issue_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveAuthorizedSshKey", + "qualifiedName": "GithubApi.RemoveAuthorizedSshKey", + "fullyQualifiedName": "GithubApi.RemoveAuthorizedSshKey@1.0.0", + "description": "Remove an authorized SSH key from GitHub Enterprise.\n\nUse this tool to remove an authorized SSH key from the GitHub Enterprise server. Useful for revoking access when a key is compromised or no longer needed.", + "parameters": [ + { + "name": "public_ssh_key", + "type": "string", + "required": true, + "description": "The public SSH key to be removed from GitHub Enterprise.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/remove-authorized-ssh-key'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveAuthorizedSshKey", + "parameters": { + "public_ssh_key": { + "value": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEArB9tA4q4Zm5qJ7FTQ1/n1OLX8lk5k3Fz4+eNOZ8EY4hpFDO1P/zcF9St8L6R8BGltJSZfHl3y8P5MeJtyZyyT5hEsllB5wmoLhV8xPqPbStc3P9N4KkclA8ReFn0Y+5gT8Wou2wD3Tnft3F9sX1JkUam3gyYYq1bDxi8AXKAvRC5F/dcPzTzODfK9J+FT8j6cVhIE3/4rA== user@hostname", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveBranchAccessRestriction", + "qualifiedName": "GithubApi.RemoveBranchAccessRestriction", + "fullyQualifiedName": "GithubApi.RemoveBranchAccessRestriction@1.0.0", + "description": "Remove access restrictions from a GitHub branch.\n\nThis tool is used to remove restrictions on who can push to a protected branch in a GitHub repository. It's applicable for both public and private repositories under various GitHub plans. Call this tool when you need to allow all collaborators to push to a specific branch.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The name of the branch to remove access restrictions from. Cannot contain wildcard characters.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. The value is not case-sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-access-restrictions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveBranchAccessRestriction", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveBranchStatusCheckContexts", + "qualifiedName": "GithubApi.RemoveBranchStatusCheckContexts", + "fullyQualifiedName": "GithubApi.RemoveBranchStatusCheckContexts@1.0.0", + "description": "Remove status check contexts from a protected branch.\n\n Use this tool to delete status check contexts from a protected branch in a GitHub repository. This applies to various GitHub plans, allowing for flexible management of branch protections.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. Enter a GitHub username, which is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository, case insensitive, to target for status check context removal. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The name of the branch from which to remove status check contexts. Cannot contain wildcard characters. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/remove-status-check-contexts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveBranchStatusCheckContexts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"contexts\":[\"continuous-integration/travis-ci\",\"codecov\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveCustomLabelFromRunner", + "qualifiedName": "GithubApi.RemoveCustomLabelFromRunner", + "fullyQualifiedName": "GithubApi.RemoveCustomLabelFromRunner@1.0.0", + "description": "Remove a custom label from a self-hosted runner in an enterprise.\n\nThis tool removes a specified custom label from a self-hosted runner configured in an enterprise and returns the remaining labels. It should be called when you need to update runner labels, and requires authentication with an access token having 'manage_runners:enterprise' scope.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "Slug or ID of the enterprise. Use the slug version of the enterprise name or the enterprise ID as an alternative.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_custom_label_name", + "type": "string", + "required": true, + "description": "The name of the custom label to be removed from the self-hosted runner.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_identifier", + "type": "integer", + "required": true, + "description": "Unique identifier for the self-hosted runner.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/remove-custom-label-from-self-hosted-runner-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveCustomLabelFromRunner", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "runner_custom_label_name": { + "value": "custom-label-123", + "type": "string", + "required": true + }, + "runner_identifier": { + "value": 456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveCustomLabelsFromRunner", + "qualifiedName": "GithubApi.RemoveCustomLabelsFromRunner", + "fullyQualifiedName": "GithubApi.RemoveCustomLabelsFromRunner@1.0.0", + "description": "Remove all custom labels from an enterprise's self-hosted runner.\n\nThis tool removes all custom labels from a self-hosted runner configured in an enterprise using GitHub's API. It is used when you need to reset or clear custom labels from a runner, and it returns the runner’s remaining read-only labels. Authentication with a token that has `manage_runners:enterprise` scope is required.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug version of the enterprise name or the enterprise ID for identifying the enterprise.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the self-hosted runner from which to remove custom labels.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/remove-all-custom-labels-from-self-hosted-runner-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveCustomLabelsFromRunner", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "runner_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveCustomLabelsRunnerRepo", + "qualifiedName": "GithubApi.RemoveCustomLabelsRunnerRepo", + "fullyQualifiedName": "GithubApi.RemoveCustomLabelsRunnerRepo@1.0.0", + "description": "Remove all custom labels from a self-hosted runner in a repository.\n\nThis tool removes all custom labels from a specified self-hosted runner configured in a repository, returning the remaining read-only labels. Authentication using an access token with the `repo` scope is required.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_unique_identifier", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner to remove custom labels from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/remove-all-custom-labels-from-self-hosted-runner-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveCustomLabelsRunnerRepo", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "runner_unique_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveEnterpriseAnnouncement", + "qualifiedName": "GithubApi.RemoveEnterpriseAnnouncement", + "fullyQualifiedName": "GithubApi.RemoveEnterpriseAnnouncement@1.0.0", + "description": "Removes the global announcement banner in your enterprise.\n\nThis tool removes the global announcement banner in a GitHub enterprise setup. Use it to clear announcements when they are no longer needed.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/remove-announcement'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveEnterpriseAnnouncement", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveGithubAppBranchAccess", + "qualifiedName": "GithubApi.RemoveGithubAppBranchAccess", + "fullyQualifiedName": "GithubApi.RemoveGithubAppBranchAccess@1.0.0", + "description": "Remove an app's access to a protected GitHub branch.\n\n Use this tool to remove the ability of a GitHub app to push to a protected branch. Applicable for branches in public and private repositories under various GitHub plans. Only apps with 'write' access to 'contents' permission can be removed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner_account", + "type": "string", + "required": false, + "description": "The account owner of the repository, case insensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository, not case-sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The name of the branch to remove app access from. Wildcards are not allowed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/remove-app-access-restrictions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveGithubAppBranchAccess", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner_account": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"app_id\":\"123456\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveGithubAppSuspension", + "qualifiedName": "GithubApi.RemoveGithubAppSuspension", + "fullyQualifiedName": "GithubApi.RemoveGithubAppSuspension@1.0.0", + "description": "Unsuspend a GitHub App installation.\n\nThis tool removes the suspension of a GitHub App installation. Use this when you need to reactivate an app on GitHub that has been suspended. Requires authentication with a JSON Web Token (JWT) as a GitHub App.", + "parameters": [ + { + "name": "installation_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub App installation to be unsuspended.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/unsuspend-installation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveGithubAppSuspension", + "parameters": { + "installation_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveGithubOrgSecret", + "qualifiedName": "GithubApi.RemoveGithubOrgSecret", + "fullyQualifiedName": "GithubApi.RemoveGithubOrgSecret@1.0.0", + "description": "Delete a secret from a GitHub organization.\n\nUse this tool to delete a Dependabot secret from a specific GitHub organization by providing the secret name. Authentication with an access token with the `admin:org` scope is required. This tool is suitable when you need to manage organization secrets programmatically.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name_to_delete", + "type": "string", + "required": true, + "description": "The name of the secret to delete from the GitHub organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/delete-org-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveGithubOrgSecret", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "secret_name_to_delete": { + "value": "DependabotSecret123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveGithubRepoSecret", + "qualifiedName": "GithubApi.RemoveGithubRepoSecret", + "fullyQualifiedName": "GithubApi.RemoveGithubRepoSecret@1.0.0", + "description": "Delete a secret from a GitHub repository.\n\nUse this tool to delete a specific secret from a GitHub repository's dependabot configuration. Requires authentication with an access token with the 'repo' scope, or GitHub Apps with 'dependabot_secrets' repository permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the secret to be deleted from the repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/delete-repo-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveGithubRepoSecret", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "secret_name": { + "value": "MY_SECRET", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveGithubSshKey", + "qualifiedName": "GithubApi.RemoveGithubSshKey", + "fullyQualifiedName": "GithubApi.RemoveGithubSshKey@1.0.0", + "description": "Removes a public SSH key from your GitHub account.\n\nUse this tool to remove a public SSH key from the authenticated user's GitHub account. Authentication must be done via Basic Auth or OAuth with the `admin:public_key` scope.", + "parameters": [ + { + "name": "ssh_key_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the SSH key to be removed from the GitHub account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/delete-public-ssh-key-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveGithubSshKey", + "parameters": { + "ssh_key_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveGpgKey", + "qualifiedName": "GithubApi.RemoveGpgKey", + "fullyQualifiedName": "GithubApi.RemoveGpgKey@1.0.0", + "description": "Remove a GPG key from your GitHub account.\n\nUse this tool to delete a GPG key associated with your authenticated GitHub account. Ensure you have the required authentication with `admin:gpg_key` scope.", + "parameters": [ + { + "name": "gpg_key_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the GPG key to be removed from the authenticated user's account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/delete-gpg-key-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveGpgKey", + "parameters": { + "gpg_key_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveIssueAssignees", + "qualifiedName": "GithubApi.RemoveIssueAssignees", + "fullyQualifiedName": "GithubApi.RemoveIssueAssignees@1.0.0", + "description": "Remove assignees from a GitHub issue.\n\nThis tool removes one or more assignees from a specified issue in a GitHub repository. Use it when you need to update issue responsibilities and assign different collaborators.", + "parameters": [ + { + "name": "issue_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the GitHub issue to modify.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is case-insensitive and used to identify the specific repository affected.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "assignees_to_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of usernames to remove as assignees from the issue. Only users with push access will see changes.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/remove-assignees'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveIssueAssignees", + "parameters": { + "issue_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "SampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "SampleOwner", + "type": "string", + "required": true + }, + "assignees_to_remove": { + "value": ["user1", "user2"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveIssueLabel", + "qualifiedName": "GithubApi.RemoveIssueLabel", + "fullyQualifiedName": "GithubApi.RemoveIssueLabel@1.0.0", + "description": "Remove a specified label from a GitHub issue.\n\nUse this tool to remove a specific label from a GitHub issue and retrieve the remaining labels on that issue. It returns an error if the label does not exist.", + "parameters": [ + { + "name": "issue_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the issue in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "label_name", + "type": "string", + "required": true, + "description": "Specifies the label to be removed from the GitHub issue. The label name is case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository where the issue resides. It is case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/remove-label'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveIssueLabel", + "parameters": { + "issue_number": { + "value": 42, + "type": "integer", + "required": true + }, + "label_name": { + "value": "bug", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveOrgAccessRunnerGroup", + "qualifiedName": "GithubApi.RemoveOrgAccessRunnerGroup", + "fullyQualifiedName": "GithubApi.RemoveOrgAccessRunnerGroup@1.0.0", + "description": "Removes an organization's access to a self-hosted runner group.\n\nUse this tool to remove an organization from accessing a specific self-hosted runner group in an enterprise. Requires authentication with a token having `manage_runners:enterprise` scope.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise to identify it for the runner group operation.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the organization to be removed from the self-hosted runner group.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_id", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner group to modify access for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/remove-org-access-to-self-hosted-runner-group-in-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveOrgAccessRunnerGroup", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "organization_id": { + "value": 1234, + "type": "integer", + "required": true + }, + "runner_group_id": { + "value": 5678, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveOrganizationMember", + "qualifiedName": "GithubApi.RemoveOrganizationMember", + "fullyQualifiedName": "GithubApi.RemoveOrganizationMember@1.0.0", + "description": "Remove a user from an organization's access list.\n\nUse this tool to remove a user from all teams in a GitHub organization, revoking their access to the organization's repositories. Call this when you need to manage access permissions for organization members.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user's handle to be removed from the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/remove-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveOrganizationMember", + "parameters": { + "github_user_handle": { + "value": "johndoe", + "type": "string", + "required": true + }, + "organization_name": { + "value": "exampleOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveOrgAnnouncementBanner", + "qualifiedName": "GithubApi.RemoveOrgAnnouncementBanner", + "fullyQualifiedName": "GithubApi.RemoveOrgAnnouncementBanner@1.0.0", + "description": "Remove the announcement banner for a GitHub organization.\n\nUse this tool to delete the announcement banner that is currently set for a specific GitHub organization. Ideal for managing organizational announcements.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization's name. This is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'announcement-banners/remove-announcement-banner-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveOrgAnnouncementBanner", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveOrgMember", + "qualifiedName": "GithubApi.RemoveOrgMember", + "fullyQualifiedName": "GithubApi.RemoveOrgMember@1.0.0", + "description": "Remove a user's membership from a GitHub organization.\n\nInvoke this tool to remove a user from an organization's membership on GitHub. If the user is a member, they'll be removed; if invited, the invitation will be canceled. The user will be notified via email.", + "parameters": [ + { + "name": "github_username", + "type": "string", + "required": true, + "description": "The GitHub username to remove from the organization; it is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the GitHub organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/remove-membership-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveOrgMember", + "parameters": { + "github_username": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "organization_name": { + "value": "OpenSourceOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveOrgOutsideCollaborator", + "qualifiedName": "GithubApi.RemoveOrgOutsideCollaborator", + "fullyQualifiedName": "GithubApi.RemoveOrgOutsideCollaborator@1.0.0", + "description": "Remove a user from all organization repositories.\n\nUse this tool to remove a user from all repositories in a specified organization by removing them from the outside collaborators list.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user account handle to remove from the organization's repositories.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization from which to remove the user. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/remove-outside-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveOrgOutsideCollaborator", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveOrgPreReceiveHook", + "qualifiedName": "GithubApi.RemoveOrgPreReceiveHook", + "fullyQualifiedName": "GithubApi.RemoveOrgPreReceiveHook@1.0.0", + "description": "Removes pre-receive hook enforcement overrides for an organization.\n\nUse this tool to remove any pre-receive hook enforcement overrides at the organization level. This action is applicable when you need to revert to the default hook settings set at a higher level than the organization.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization where the pre-receive hook enforcement override will be removed. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "pre_receive_hook_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the pre-receive hook to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/remove-pre-receive-hook-enforcement-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveOrgPreReceiveHook", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "pre_receive_hook_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveProjectCollaborator", + "qualifiedName": "GithubApi.RemoveProjectCollaborator", + "fullyQualifiedName": "GithubApi.RemoveProjectCollaborator@1.0.0", + "description": "Remove a collaborator from a GitHub organization project.\n\nCall this tool to remove a collaborator from a specified GitHub organization project. The user must be an organization owner or a project admin to perform this operation.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user's handle to be removed as a collaborator.", + "enum": null, + "inferrable": true + }, + { + "name": "project_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique numeric identifier of the GitHub organization project.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/remove-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveProjectCollaborator", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "project_unique_identifier": { + "value": 456789, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveProjectFromTeam", + "qualifiedName": "GithubApi.RemoveProjectFromTeam", + "fullyQualifiedName": "GithubApi.RemoveProjectFromTeam@1.0.0", + "description": "Remove a project from a team in a GitHub organization.\n\nUse this tool to remove an organization project from a specific team within GitHub. It requires appropriate permissions: `read` access to both the team and project, or `admin` access to either. The operation only removes the project from the team and does not delete the project itself.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "project_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the project to be removed from the team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug identifier for the team name in the organization. Case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/remove-project-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveProjectFromTeam", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "project_unique_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemovePublicOrgMembership", + "qualifiedName": "GithubApi.RemovePublicOrgMembership", + "fullyQualifiedName": "GithubApi.RemovePublicOrgMembership@1.0.0", + "description": "Remove public organization membership for the user.\n\nThis tool removes the public membership of the authenticated user from a specified GitHub organization. Call this tool when a user wants to revoke their public membership from an organization.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user account handle for which to remove public organization membership.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. This name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/remove-public-membership-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemovePublicOrgMembership", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "organization_name": { + "value": "OpenSourceOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemovePullRequestReviewers", + "qualifiedName": "GithubApi.RemovePullRequestReviewers", + "fullyQualifiedName": "GithubApi.RemovePullRequestReviewers@1.0.0", + "description": "Remove requested reviewers from a GitHub pull request.\n\nUse this tool to remove specific requested reviewers from a pull request on GitHub. This is helpful when you need to update the list of reviewers on an active pull request.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The unique identifier number for the pull request you want to modify.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository from which to remove reviewers. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "user_logins_to_remove", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of user logins to be removed from the pull request as reviewers.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slugs_to_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of team slugs that should be removed as reviewers from the pull request. Each slug corresponds to a team associated with the repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/remove-requested-reviewers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemovePullRequestReviewers", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "user_logins_to_remove": { + "value": ["user1", "user2"], + "type": "array", + "required": true + }, + "team_slugs_to_remove": { + "value": ["team-a", "team-b"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemovePullRequestReviewProtection", + "qualifiedName": "GithubApi.RemovePullRequestReviewProtection", + "fullyQualifiedName": "GithubApi.RemovePullRequestReviewProtection@1.0.0", + "description": "Remove pull request review protection from a branch.\n\nUse this tool to remove the requirement for pull request reviews on a protected branch in a GitHub repository. This is useful for adjusting branch protection rules in repositories. Applies to various GitHub plans as outlined in GitHub documentation.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The specific name of the branch to remove pull request review protection from. Wildcard characters are not allowed.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the repository from which to remove pull request review protection.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. It's not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/delete-pull-request-review-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemovePullRequestReviewProtection", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveRepoAccessFromRunnerGroup", + "qualifiedName": "GithubApi.RemoveRepoAccessFromRunnerGroup", + "fullyQualifiedName": "GithubApi.RemoveRepoAccessFromRunnerGroup@1.0.0", + "description": "Remove repository access from a self-hosted runner group.\n\nUse this tool to remove a repository's access from a specified self-hosted runner group within an organization. The runner group must have its visibility set to 'selected'. Authentication with an 'admin:org' scope access token is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. This input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_unique_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the repository to remove access from the runner group. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_unique_id", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner group. This is required to specify which runner group's access will be modified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/remove-repo-access-to-self-hosted-runner-group-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveRepoAccessFromRunnerGroup", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_unique_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "runner_group_unique_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveRepoCollaborator", + "qualifiedName": "GithubApi.RemoveRepoCollaborator", + "fullyQualifiedName": "GithubApi.RemoveRepoCollaborator@1.0.0", + "description": "Remove a collaborator from a GitHub repository.\n\nUse this tool to remove a specified user as a collaborator from a GitHub repository. Call this when you need to revoke someone's access to a repository.", + "parameters": [ + { + "name": "collaborator_username", + "type": "string", + "required": true, + "description": "The GitHub user handle for the collaborator to be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository, case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner_name", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/remove-collaborator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveRepoCollaborator", + "parameters": { + "collaborator_username": { + "value": "john_doe", + "type": "string", + "required": true + }, + "repository_name": { + "value": "project-repo", + "type": "string", + "required": true + }, + "repository_owner_name": { + "value": "owner_account", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveRepoFromInstallation", + "qualifiedName": "GithubApi.RemoveRepoFromInstallation", + "fullyQualifiedName": "GithubApi.RemoveRepoFromInstallation@1.0.0", + "description": "Remove a repository from a GitHub app installation.\n\nThis tool removes a single repository from a GitHub app installation. The user must have admin access and be authenticated via a personal access token.", + "parameters": [ + { + "name": "installation_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the installation, needed to specify which installation to modify.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the repository to be removed from the installation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/remove-repo-from-installation-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveRepoFromInstallation", + "parameters": { + "installation_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_id": { + "value": 789012, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveRepoFromOrgSecret", + "qualifiedName": "GithubApi.RemoveRepoFromOrgSecret", + "fullyQualifiedName": "GithubApi.RemoveRepoFromOrgSecret@1.0.0", + "description": "Remove a repository from an organization's secret access.\n\nUse this tool to remove a specified repository from accessing an organization's secret when the visibility is set to 'selected'. Authentication with an access token with 'admin:org' scope is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization name. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "The unique ID of the repository to be removed from the organization's secret.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the organization secret to remove the repository from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/remove-selected-repo-from-org-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveRepoFromOrgSecret", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "secret_name": { + "value": "MY_SECRET", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveRepoFromOrgVariable", + "qualifiedName": "GithubApi.RemoveRepoFromOrgVariable", + "fullyQualifiedName": "GithubApi.RemoveRepoFromOrgVariable@1.0.0", + "description": "Remove a repository from a GitHub organization variable.\n\nThis tool removes a specified repository from an organization's variable that is available to selected repositories. Useful when managing organization-level variable access. Requires authentication with an admin token or necessary permissions for GitHub Apps.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "The ID of the repository to be removed from the organization variable. This should be an integer value identifying the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": true, + "description": "The name of the organization variable to remove the repository from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/remove-selected-repo-from-org-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveRepoFromOrgVariable", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "variable_name": { + "value": "ExampleVariable", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveRepoFromRequiredWorkflow", + "qualifiedName": "GithubApi.RemoveRepoFromRequiredWorkflow", + "fullyQualifiedName": "GithubApi.RemoveRepoFromRequiredWorkflow@1.0.0", + "description": "Removes a repository from a GitHub required workflow.\n\nUse this tool to remove a repository from a GitHub required workflow. Ensure the workflow is set for selected repositories and authenticate with an 'admin:org' scoped token.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the repository to be removed from the required workflow.", + "enum": null, + "inferrable": true + }, + { + "name": "required_workflow_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the required workflow to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/remove-selected-repo-from-required-workflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveRepoFromRequiredWorkflow", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "required_workflow_identifier": { + "value": 78910, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveRepoFromTeam", + "qualifiedName": "GithubApi.RemoveRepoFromTeam", + "fullyQualifiedName": "GithubApi.RemoveRepoFromTeam@1.0.0", + "description": "Remove a repository from a GitHub team within an organization.\n\nCall this tool to remove a repository from a specific team in a GitHub organization. The user needs to be an organization owner, team maintainer, or have admin access to the repository. This action will only unlink the repository from the team, not delete it.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to remove from the team. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name to identify which team's repository link should be removed. This is required and case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/remove-repo-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveRepoFromTeam", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_name": { + "value": "ExampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "RepoOwner", + "type": "string", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveRepoHookEnforcement", + "qualifiedName": "GithubApi.RemoveRepoHookEnforcement", + "fullyQualifiedName": "GithubApi.RemoveRepoHookEnforcement@1.0.0", + "description": "Remove overridden pre-receive hook enforcement for a repository.\n\nThis tool deletes any overridden pre-receive hook enforcement on a specified repository. It responds with the effective hook enforcement values inherited from the owner or global level. Use it when you need to revert to default hook settings.", + "parameters": [ + { + "name": "pre_receive_hook_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the pre-receive hook for the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the repository from which to remove the hook enforcement.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/remove-pre-receive-hook-enforcement-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveRepoHookEnforcement", + "parameters": { + "pre_receive_hook_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveRunnerFromEnterpriseGroup", + "qualifiedName": "GithubApi.RemoveRunnerFromEnterpriseGroup", + "fullyQualifiedName": "GithubApi.RemoveRunnerFromEnterpriseGroup@1.0.0", + "description": "Remove a self-hosted runner from an enterprise group.\n\nThis tool removes a self-hosted runner from a specified group in an enterprise and returns it to the default group. It requires authentication using an access token with the `manage_runners:enterprise` scope.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise. Use either the slug version of the enterprise name or the enterprise ID.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_id", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner group to remove a runner from.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the self-hosted runner to be removed from the enterprise group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/remove-self-hosted-runner-from-group-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveRunnerFromEnterpriseGroup", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "runner_group_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "runner_identifier": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveRunnerFromGroup", + "qualifiedName": "GithubApi.RemoveRunnerFromGroup", + "fullyQualifiedName": "GithubApi.RemoveRunnerFromGroup@1.0.0", + "description": "Remove a self-hosted runner from an organization's group.\n\nThis tool removes a self-hosted runner from a specific group within an organization on GitHub. The runner is moved back to the default group. Requires authentication with an access token having `admin:org` scope.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_identifier", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner group for removal action.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_id", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner to remove from the group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/remove-self-hosted-runner-from-group-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveRunnerFromGroup", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "runner_group_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "runner_id": { + "value": 456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveRunnerLabel", + "qualifiedName": "GithubApi.RemoveRunnerLabel", + "fullyQualifiedName": "GithubApi.RemoveRunnerLabel@1.0.0", + "description": "Remove a custom label from a self-hosted runner in a repository.\n\nUse this tool to remove a custom label from a self-hosted runner configured in a GitHub repository. It returns the remaining labels for the runner. Ensure to authenticate with a token with `repo` scope. A `404 Not Found` status is returned if the label is not found.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_custom_label_name", + "type": "string", + "required": true, + "description": "The name of the custom label on the self-hosted runner to be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique ID number of the self-hosted runner to identify which runner to remove the label from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/remove-custom-label-from-self-hosted-runner-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveRunnerLabel", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "runner_custom_label_name": { + "value": "custom-label", + "type": "string", + "required": true + }, + "runner_unique_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveSecurityManagerRole", + "qualifiedName": "GithubApi.RemoveSecurityManagerRole", + "fullyQualifiedName": "GithubApi.RemoveSecurityManagerRole@1.0.0", + "description": "Remove security manager role from a team in an organization.\n\nUse this tool to remove the security manager role from a specific team within an organization on GitHub. This requires the user to be an organization administrator with an access token having the 'admin:org' scope, or for GitHub Apps, the 'administration' organization read-write permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization's name. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique slug identifying the team by name. This is required to specify the team whose security manager role is to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/remove-security-manager-team'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveSecurityManagerRole", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "dev-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveSelfHostedRunner", + "qualifiedName": "GithubApi.RemoveSelfHostedRunner", + "fullyQualifiedName": "GithubApi.RemoveSelfHostedRunner@1.0.0", + "description": "Removes a self-hosted runner from a GitHub repository.\n\nUse this tool to forcibly remove a self-hosted runner from a GitHub repository when the machine no longer exists. Requires authentication with a token that has the `repo` scope.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_unique_identifier", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-self-hosted-runner-from-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveSelfHostedRunner", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "runner_unique_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveSelfHostedRunnerFromEnterprise", + "qualifiedName": "GithubApi.RemoveSelfHostedRunnerFromEnterprise", + "fullyQualifiedName": "GithubApi.RemoveSelfHostedRunnerFromEnterprise@1.0.0", + "description": "Remove a self-hosted runner from an enterprise.\n\nUse this tool to forcefully remove a self-hosted runner from an enterprise when the machine no longer exists. Authentication with an access token having the `manage_runners:enterprise` scope is required.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise. Use the slug version of the name or the enterprise ID for identification.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_id", + "type": "integer", + "required": true, + "description": "Unique identifier for the self-hosted runner to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/delete-self-hosted-runner-from-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveSelfHostedRunnerFromEnterprise", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "runner_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveSelfHostedRunnerFromOrg", + "qualifiedName": "GithubApi.RemoveSelfHostedRunnerFromOrg", + "fullyQualifiedName": "GithubApi.RemoveSelfHostedRunnerFromOrg@1.0.0", + "description": "Forcefully remove a self-hosted runner from an organization.\n\nUse this tool to completely remove a self-hosted GitHub Actions runner from an organization when the associated machine no longer exists. Requires an access token with the `admin:org` scope.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization's name. This input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_id", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted GitHub runner to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/delete-self-hosted-runner-from-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveSelfHostedRunnerFromOrg", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "runner_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveStatusCheckProtection", + "qualifiedName": "GithubApi.RemoveStatusCheckProtection", + "fullyQualifiedName": "GithubApi.RemoveStatusCheckProtection@1.0.0", + "description": "Remove status check protection from a GitHub branch.\n\nThis tool removes the required status check protection from a specified branch in a GitHub repository. It should be called when you want to lift status check requirements from a protected branch.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The name of the branch from which you want to remove status check protection. Wildcard characters are not allowed. Use the GraphQL API for wildcard support.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username or organization name that owns the repository, case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/remove-status-check-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveStatusCheckProtection", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTeamAccessFromBranch", + "qualifiedName": "GithubApi.RemoveTeamAccessFromBranch", + "fullyQualifiedName": "GithubApi.RemoveTeamAccessFromBranch@1.0.0", + "description": "Remove a team's push access to a protected GitHub branch.\n\n This tool removes the ability of a specified team to push to a protected branch in a GitHub repository. It should be called when you need to revoke push access for a team, including child teams, on a specific branch.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository. This is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The exact name of the branch from which to remove team access. Wildcard characters are not allowed. For wildcard usage, employ the GraphQL API. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/remove-team-access-restrictions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveTeamAccessFromBranch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleOrg", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"team_id\": 12345}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTeamMembership", + "qualifiedName": "GithubApi.RemoveTeamMembership", + "fullyQualifiedName": "GithubApi.RemoveTeamMembership@1.0.0", + "description": "Remove a user's membership from a GitHub team.\n\nUse this tool to remove a user's membership from a specific GitHub team within an organization. Ensure the authenticated user has 'admin' permissions or is an owner of the organization. Note that team synchronization settings may affect API changes.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The handle for the GitHub user account to be removed from the team.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. This input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug identifier for the GitHub team's name. This is used to specify the team you want to modify.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/remove-membership-for-user-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveTeamMembership", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "organization_name": { + "value": "OpenSourceOrg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "backend-devs", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveUserAccessFromBranch", + "qualifiedName": "GithubApi.RemoveUserAccessFromBranch", + "fullyQualifiedName": "GithubApi.RemoveUserAccessFromBranch@1.0.0", + "description": "Remove users' push access from a GitHub branch.\n\n This tool is used to remove the ability of specified users to push to a protected branch in a GitHub repository. It supports repositories with GitHub Free, Pro, Team, Enterprise Cloud, and Server plans. Use this tool to manage access restrictions on your protected branches.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The name of the branch to remove user access from. It must not contain wildcard characters. For using wildcards, refer to the GitHub GraphQL API. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/remove-user-access-restrictions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RemoveUserAccessFromBranch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleOrg", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"users\":[\"user1\", \"user2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RenameGithubBranch", + "qualifiedName": "GithubApi.RenameGithubBranch", + "fullyQualifiedName": "GithubApi.RenameGithubBranch@1.0.0", + "description": "Rename a branch in a GitHub repository.\n\nUse this tool to rename a branch in a specific GitHub repository. Requires appropriate permissions based on whether the branch is default or not. Note that pushing to the old branch name is prohibited during the rename process.", + "parameters": [ + { + "name": "current_branch_name", + "type": "string", + "required": true, + "description": "The current name of the branch to be renamed. Cannot include wildcard characters.", + "enum": null, + "inferrable": true + }, + { + "name": "new_branch_name", + "type": "string", + "required": true, + "description": "The new name for the branch. Ensure it doesn’t contain wildcard characters.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository, not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/rename-branch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RenameGithubBranch", + "parameters": { + "current_branch_name": { + "value": "feature/old-branch-name", + "type": "string", + "required": true + }, + "new_branch_name": { + "value": "feature/new-branch-name", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleOwner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RenderMarkdown", + "qualifiedName": "GithubApi.RenderMarkdown", + "fullyQualifiedName": "GithubApi.RenderMarkdown@1.0.0", + "description": "Convert Markdown content to HTML rendering.\n\nUse this tool to convert Markdown text into HTML format, suitable for displaying on web pages or applications.", + "parameters": [ + { + "name": "markdown_text", + "type": "string", + "required": true, + "description": "The Markdown text to convert into HTML format.", + "enum": null, + "inferrable": true + }, + { + "name": "rendering_mode", + "type": "string", + "required": false, + "description": "Specifies the rendering mode: 'markdown' for plain Markdown or 'gfm' for GitHub Flavored Markdown.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_context", + "type": "string", + "required": false, + "description": "The repository context for linking references in `gfm` mode (e.g., 'octo-org/octo-repo').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'markdown/render'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RenderMarkdown", + "parameters": { + "markdown_text": { + "value": "# Hello World\nThis is a *Markdown* example.", + "type": "string", + "required": true + }, + "rendering_mode": { + "value": "gfm", + "type": "string", + "required": false + }, + "repository_context": { + "value": "octo-org/octo-repo", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RenderMarkdownPlain", + "qualifiedName": "GithubApi.RenderMarkdownPlain", + "fullyQualifiedName": "GithubApi.RenderMarkdownPlain@1.0.0", + "description": "Convert Markdown text to rendered plain text format.\n\nUse this tool to convert Markdown text to a plain-text format without GitHub Flavored Markdown support. Ideal for rendering Markdown as it appears in README.md files. The content size must be 400 KB or less.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'markdown/render-raw'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RenderMarkdownPlain", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RequestGithubPagesBuild", + "qualifiedName": "GithubApi.RequestGithubPagesBuild", + "fullyQualifiedName": "GithubApi.RequestGithubPagesBuild@1.0.0", + "description": "Request a build for your GitHub Pages site.\n\nUse this tool to manually trigger a GitHub Pages build from the latest revision on the default branch. This is useful for diagnosing build warnings and failures without making additional commits. Only one build can be in progress per repository at a time.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. Case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner_name", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. Case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/request-pages-build'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RequestGithubPagesBuild", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner_name": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RequestGithubPullRequestReviewers", + "qualifiedName": "GithubApi.RequestGithubPullRequestReviewers", + "fullyQualifiedName": "GithubApi.RequestGithubPullRequestReviewers@1.0.0", + "description": "Request reviewers for a GitHub pull request.\n\n Use this tool to request specific reviewers for a pull request on GitHub. The tool triggers notifications to the selected reviewers. Beware of secondary rate limiting when calling this endpoint too frequently.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. It should be a case-insensitive string. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository. This input is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_number", + "type": "integer", + "required": false, + "description": "The number identifying the GitHub pull request for which reviewers will be requested. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/request-reviewers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RequestGithubPullRequestReviewers", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleOwner", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "pull_request_number": { + "value": 42, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"reviewers\": [\"reviewer1\", \"reviewer2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RequireSignedCommitsOnBranch", + "qualifiedName": "GithubApi.RequireSignedCommitsOnBranch", + "fullyQualifiedName": "GithubApi.RequireSignedCommitsOnBranch@1.0.0", + "description": "Enable signed commit requirement on a GitHub branch.\n\nThis tool requires signed commits on a specified branch of a GitHub repository. It is used when you have admin or owner permissions and have enabled branch protection on the target branch.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The name of the branch for which to require signed commits. It cannot contain wildcard characters. For using wildcards, refer to the GitHub GraphQL API.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. Name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-commit-signature-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RequireSignedCommitsOnBranch", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RerequestGithubCheckSuite", + "qualifiedName": "GithubApi.RerequestGithubCheckSuite", + "fullyQualifiedName": "GithubApi.RerequestGithubCheckSuite@1.0.0", + "description": "Rerequest a check suite on GitHub without code changes.\n\nUse this tool to trigger GitHub to rerequest an existing check suite, resetting its status to 'queued' and clearing its conclusion. This is useful for re-running checks without pushing new code. Ensure your GitHub App has the necessary permissions to perform this action.", + "parameters": [ + { + "name": "check_suite_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub check suite to be rerequested.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive. Specify the repository whose check suite you want to rerequest.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository (case insensitive).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'checks/rerequest-suite'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RerequestGithubCheckSuite", + "parameters": { + "check_suite_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RerunFailedGithubWorkflowJobs", + "qualifiedName": "GithubApi.RerunFailedGithubWorkflowJobs", + "fullyQualifiedName": "GithubApi.RerunFailedGithubWorkflowJobs@1.0.0", + "description": "Re-run failed jobs in a GitHub workflow run.\n\nThis tool re-runs all failed jobs and their dependents in a specified GitHub workflow run. Use this when a workflow has failed jobs you want to attempt again. Authentication with a token having `repo` scope is required.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub workflow run to re-run failed jobs for.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_debug_logging", + "type": "boolean", + "required": false, + "description": "Enable debug logging for the re-run of failed workflow jobs.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/re-run-workflow-failed-jobs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RerunFailedGithubWorkflowJobs", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "workflow_run_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "enable_debug_logging": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RerunGithubWorkflow", + "qualifiedName": "GithubApi.RerunGithubWorkflow", + "fullyQualifiedName": "GithubApi.RerunGithubWorkflow@1.0.0", + "description": "Initiates the rerun of a specific GitHub workflow.\n\nUse this tool to re-run a GitHub workflow run by providing its ID. Requires authentication with a token having 'repo' scope, or 'actions:write' permission for GitHub Apps.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_run_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the workflow run to be re-run.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_debug_logging", + "type": "boolean", + "required": false, + "description": "Enable debug logging for the workflow re-run by setting to true.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/re-run-workflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RerunGithubWorkflow", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "workflow_run_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "enable_debug_logging": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResetGithubOauthToken", + "qualifiedName": "GithubApi.ResetGithubOauthToken", + "fullyQualifiedName": "GithubApi.ResetGithubOauthToken@1.0.0", + "description": "Reset an OAuth token for a GitHub application.\n\nUse this tool to reset a valid OAuth token for a GitHub application using Basic Authentication with the application's client_id and client_secret. This operation invalidates the previous token immediately. A 404 error indicates the token was invalid.", + "parameters": [ + { + "name": "github_app_client_id", + "type": "string", + "required": true, + "description": "The client ID of the GitHub application required for resetting the OAuth token.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_access_token", + "type": "string", + "required": true, + "description": "The access token of the OAuth application to be reset.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/reset-token'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ResetGithubOauthToken", + "parameters": { + "github_app_client_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "oauth_access_token": { + "value": "gho_ABC123def456GHIjkl789mno", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveRunnerDetails", + "qualifiedName": "GithubApi.RetrieveRunnerDetails", + "fullyQualifiedName": "GithubApi.RetrieveRunnerDetails@1.0.0", + "description": "Retrieve information about a self-hosted runner in a GitHub repo.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This corresponds to the GitHub repository name and is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_identifier", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner. Required to fetch specific runner details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/get-self-hosted-runner-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RetrieveRunnerDetails", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "runner_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RevokeGithubInstallationToken", + "qualifiedName": "GithubApi.RevokeGithubInstallationToken", + "fullyQualifiedName": "GithubApi.RevokeGithubInstallationToken@1.0.0", + "description": "Revoke your GitHub installation access token.\n\nThis tool revokes the GitHub installation token currently being used for authentication. Once revoked, the token becomes invalid and cannot be used for further authentication. This is useful when you need to invalidate an access token immediately.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/revoke-installation-access-token'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RevokeGithubInstallationToken", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RevokeGithubOauthGrant", + "qualifiedName": "GithubApi.RevokeGithubOauthGrant", + "fullyQualifiedName": "GithubApi.RevokeGithubOauthGrant@1.0.0", + "description": "Revoke OAuth grant for a GitHub application and user.\n\nThis tool is used to revoke a grant for a specified user's OAuth application on GitHub. It requires Basic Authentication using the application's client_id and client_secret, along with the user's access_token. Once executed, it deletes all OAuth tokens for the user associated with the application, removing the application's access to the user's GitHub account.", + "parameters": [ + { + "name": "github_app_client_id", + "type": "string", + "required": true, + "description": "The unique client ID for the GitHub app, used for Basic Authentication.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_access_token", + "type": "string", + "required": true, + "description": "The OAuth access token for authenticating the GitHub API and revoking the grant.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/delete-authorization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RevokeGithubOauthGrant", + "parameters": { + "github_app_client_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + }, + "oauth_access_token": { + "value": "gho_abcdEFGHijklmnopqrstUVWXyz1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RevokeGithubOauthToken", + "qualifiedName": "GithubApi.RevokeGithubOauthToken", + "fullyQualifiedName": "GithubApi.RevokeGithubOauthToken@1.0.0", + "description": "Revoke a GitHub OAuth application's token.\n\nUse this tool to revoke a single token for a GitHub OAuth application. Requires basic authentication with the application's client ID and client secret.", + "parameters": [ + { + "name": "github_app_client_id", + "type": "string", + "required": true, + "description": "The client ID of the GitHub OAuth application to identify the app during token revocation.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_access_token", + "type": "string", + "required": true, + "description": "The OAuth access token used to authenticate to the GitHub API. Required for token revocation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/delete-token'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.RevokeGithubOauthToken", + "parameters": { + "github_app_client_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "oauth_access_token": { + "value": "gho_12345ABCDE", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchCodeInGithub", + "qualifiedName": "GithubApi.SearchCodeInGithub", + "fullyQualifiedName": "GithubApi.SearchCodeInGithub@1.0.0", + "description": "Search for code in GitHub repositories.\n\nUse this tool to search for specific terms within files in GitHub repositories. It supports queries by file content, language, and repository, returning highlighted matches when requested. Call this tool when you need to locate code definitions or usage across GitHub's repositories, limited to the default branch and files smaller than 384 KB.", + "parameters": [ + { + "name": "search_query", + "type": "string", + "required": true, + "description": "A string containing search keywords and qualifiers to limit the search scope on GitHub. For more details, see the GitHub search query documentation.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The page number of the results to fetch. Use this to navigate through search results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_recent_index", + "type": "string", + "required": false, + "description": "Sort the search results by most recently indexed files. The only valid value is `indexed`.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Determines whether the first search result returned is the highest number of matches (`desc`) or lowest number of matches (`asc`). Ignored unless `sort` is provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'search/code'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SearchCodeInGithub", + "parameters": { + "search_query": { + "value": "function:myFunction language:JavaScript repository:user/repo", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_by_recent_index": { + "value": "indexed", + "type": "string", + "required": false + }, + "sort_order": { + "value": "desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchGithubCommits", + "qualifiedName": "GithubApi.SearchGithubCommits", + "fullyQualifiedName": "GithubApi.SearchGithubCommits@1.0.0", + "description": "Search for GitHub commits using various criteria.\n\nUse this tool to find specific commits in a GitHub repository's default branch based on search criteria. It's useful for retrieving commits by keywords, repository, or other parameters. The tool returns commit information, including text match metadata for messages.", + "parameters": [ + { + "name": "commit_search_query", + "type": "string", + "required": true, + "description": "A string containing search keywords and qualifiers to find specific commits. Use qualifiers to narrow the search to specific areas of GitHub. See the API documentation for constructing queries with qualifiers.", + "enum": null, + "inferrable": true + }, + { + "name": "result_order", + "type": "string", + "required": false, + "description": "Determines whether the first search result returned has the highest number of matches ('desc') or the lowest ('asc'). Used only with 'sort'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Page number of the results to fetch. Determines which set of results to retrieve in paginated requests.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_by", + "type": "string", + "required": false, + "description": "Sort results by `author-date` or `committer-date`. Defaults to best match if not specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'search/commits'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SearchGithubCommits", + "parameters": { + "commit_search_query": { + "value": "fix bug in authentication flow repo:myorg/myrepo", + "type": "string", + "required": true + }, + "result_order": { + "value": "desc", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_results_by": { + "value": "author-date", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchGithubIssuesAndPrs", + "qualifiedName": "GithubApi.SearchGithubIssuesAndPrs", + "fullyQualifiedName": "GithubApi.SearchGithubIssuesAndPrs@1.0.0", + "description": "Search GitHub issues and pull requests by state and keyword.\n\nUtilize this tool to find specific GitHub issues or pull requests using keywords and state filters. Ideal for investigating issues labeled as bugs, enhancing workflows by finding unresolved issues, or sorting issues by creation date. The tool supports searching using various qualifiers like language or labels, and can return up to 100 items per request. Note: To search both issues and pull requests, separate queries are required.", + "parameters": [ + { + "name": "search_query", + "type": "string", + "required": true, + "description": "A string containing search keywords and qualifiers to limit search to specific areas. Supports various qualifiers for refined search.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of results to fetch (starting from 1).", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page, with a maximum limit of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "Specifies the sorting criteria for the results, such as by comments, reactions, or date created. Defaults to best match if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Determines whether the first search result returned is the highest number of matches (desc) or lowest number of matches (asc). This parameter is ignored unless you provide a sort value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'search/issues-and-pull-requests'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SearchGithubIssuesAndPrs", + "parameters": { + "search_query": { + "value": "state:open is:issue label:bug language:python", + "type": "string", + "required": true + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "sort_by": { + "value": "comments", + "type": "string", + "required": false + }, + "sort_order": { + "value": "desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchGithubRepositories", + "qualifiedName": "GithubApi.SearchGithubRepositories", + "fullyQualifiedName": "GithubApi.SearchGithubRepositories@1.0.0", + "description": "Search GitHub repositories using various criteria.\n\nThis tool finds GitHub repositories based on specific criteria such as keywords, language, and sort order. It can return up to 100 results per page and provides options for text match metadata to highlight search results in the name and description fields.", + "parameters": [ + { + "name": "search_query", + "type": "string", + "required": true, + "description": "A string containing search keywords and qualifiers to find specific repositories. Supports qualifiers and keywords for targeted searches. Refer to GitHub's documentation for query construction details: https://docs.github.com/enterprise-server@3.8/articles/searching-for-repositories/.", + "enum": null, + "inferrable": true + }, + { + "name": "result_order", + "type": "string", + "required": false, + "description": "Set to 'desc' for highest matches first or 'asc' for lowest matches first in search results. Ignored if 'sort' is not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "Specify the page number of the results to fetch in the search query. Useful for navigating through paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of repository results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "Sort results by `stars`, `forks`, `help-wanted-issues`, or `updated`. Default is best match.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'search/repos'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SearchGithubRepositories", + "parameters": { + "search_query": { + "value": "machine learning language:python", + "type": "string", + "required": true + }, + "result_order": { + "value": "desc", + "type": "string", + "required": false + }, + "results_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_by": { + "value": "stars", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchGithubTopics", + "qualifiedName": "GithubApi.SearchGithubTopics", + "fullyQualifiedName": "GithubApi.SearchGithubTopics@1.0.0", + "description": "Search and retrieve topics from GitHub using specific criteria.\n\nThis tool allows you to search for GitHub topics using various criteria, providing results sorted by best match. It can return up to 100 results per page and supports text match metadata for enhanced search capabilities. Use it to find topics related to specific keywords or qualifiers.", + "parameters": [ + { + "name": "search_query", + "type": "string", + "required": true, + "description": "Search query containing keywords and qualifiers to filter GitHub topics. Supports the same qualifiers as GitHub's web interface.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "The page number to fetch in the search results. Maximum is 100 results per page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of search results to return per page, with a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'search/topics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SearchGithubTopics", + "parameters": { + "search_query": { + "value": "machine learning language:python", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendGithubHookPing", + "qualifiedName": "GithubApi.SendGithubHookPing", + "fullyQualifiedName": "GithubApi.SendGithubHookPing@1.0.0", + "description": "Triggers a ping event on a GitHub organization webhook.\n\nUse this tool to send a ping event to a specified webhook in a GitHub organization. This can be used to verify the connection or test the webhook's configuration.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_hook_id", + "type": "integer", + "required": true, + "description": "The unique integer ID of the GitHub organization webhook to ping.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/ping-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SendGithubHookPing", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "webhook_hook_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendPingEventToWebhook", + "qualifiedName": "GithubApi.SendPingEventToWebhook", + "fullyQualifiedName": "GithubApi.SendPingEventToWebhook@1.0.0", + "description": "Triggers a ping event to a GitHub webhook.\n\nUse this tool to trigger a ping event to be sent to a specified GitHub webhook. It is useful for testing and verifying webhook configurations.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. This name is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub webhook to send the ping event to. Must be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/ping-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SendPingEventToWebhook", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "webhook_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetAdminBranchProtection", + "qualifiedName": "GithubApi.SetAdminBranchProtection", + "fullyQualifiedName": "GithubApi.SetAdminBranchProtection@1.0.0", + "description": "Set admin branch protection in a GitHub repository.\n\nUse this tool to enforce admin branch protection on a specified branch in a GitHub repository. Requires admin or owner permissions, and branch protection must be enabled.", + "parameters": [ + { + "name": "branch_name", + "type": "string", + "required": true, + "description": "The exact name of the branch to set admin protection. Wildcards not supported.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The case-insensitive name of the repository to set admin branch protection for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/set-admin-branch-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetAdminBranchProtection", + "parameters": { + "branch_name": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetAllowedActionsEnterprise", + "qualifiedName": "GithubApi.SetAllowedActionsEnterprise", + "fullyQualifiedName": "GithubApi.SetAllowedActionsEnterprise@1.0.0", + "description": "Configure allowed GitHub Actions for an enterprise.\n\nThis tool sets the allowed GitHub Actions for a given enterprise. It is used when the enterprise's permission policy for `allowed_actions` is set to `selected`. Requires authentication with an `admin:enterprise` scope token.", + "parameters": [ + { + "name": "allow_github_owned_actions", + "type": "boolean", + "required": true, + "description": "Set to true to allow GitHub-owned actions in the enterprise, such as those in the 'actions' organization.", + "enum": null, + "inferrable": true + }, + { + "name": "allowed_action_patterns", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of patterns to match specific GitHub Actions to allow. Use wildcards, tags, and SHAs for specification.", + "enum": null, + "inferrable": true + }, + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug version of the enterprise name or the enterprise ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/set-allowed-actions-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetAllowedActionsEnterprise", + "parameters": { + "allow_github_owned_actions": { + "value": true, + "type": "boolean", + "required": true + }, + "allowed_action_patterns": { + "value": ["actions/*", "my-org/my-action@*", "my-org/*-action@v1"], + "type": "array", + "required": true + }, + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetAllowedActionsForOrganization", + "qualifiedName": "GithubApi.SetAllowedActionsForOrganization", + "fullyQualifiedName": "GithubApi.SetAllowedActionsForOrganization@1.0.0", + "description": "Set allowed GitHub Actions for an organization.\n\n This tool sets which GitHub Actions are permitted in an organization, given the organization's permission policy is configured to 'selected'. It requires an access token with the 'admin:org' scope or GitHub App permissions for 'administration'. Use it when you need to update allowed actions based on organization or enterprise policies.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": false, + "description": "The name of the GitHub organization. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-allowed-actions-organization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetAllowedActionsForOrganization", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"allowed_actions\": [\"actions/checkout@v2\", \"actions/setup-node@v1\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetBranchAppAccessRestrictions", + "qualifiedName": "GithubApi.SetBranchAppAccessRestrictions", + "fullyQualifiedName": "GithubApi.SetBranchAppAccessRestrictions@1.0.0", + "description": "Replace apps with push access on a protected branch.\n\n Use this tool to specify which GitHub Apps have push access to a protected branch, replacing any previous app list. It is applicable to public repositories with various GitHub plans and private repositories with higher-tier plans. Only GitHub Apps with write access to the contents permission can be authorized.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The exact name of the branch to update app access restrictions for. Wildcard characters are not allowed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/set-app-access-restrictions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetBranchAppAccessRestrictions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleOwner", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"app_ids\":[1,2,3]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetBranchStatusCheckContexts", + "qualifiedName": "GithubApi.SetBranchStatusCheckContexts", + "fullyQualifiedName": "GithubApi.SetBranchStatusCheckContexts@1.0.0", + "description": "Set status check contexts for a protected branch.\n\n Utilize this tool to configure the required status check contexts for a protected branch in a GitHub repository. This tool is relevant for managing branch protections in public repositories with GitHub Free, and both public and private repositories with GitHub Pro, Team, Enterprise Cloud, and Server.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The name of the branch. It cannot contain wildcard characters. Use the GraphQL API for wildcard support. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/set-status-check-contexts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetBranchStatusCheckContexts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"context\": \"continuous-integration/travis-ci\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetBranchUserAccessRestrictions", + "qualifiedName": "GithubApi.SetBranchUserAccessRestrictions", + "fullyQualifiedName": "GithubApi.SetBranchUserAccessRestrictions@1.0.0", + "description": "Set user access restrictions for a GitHub branch.\n\n This tool replaces the list of users with push access to a specified GitHub branch, removing previous users and granting access to the new list. Useful for managing who can perform actions on protected branches.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository. Note that it is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The name of the branch for which to set user access restrictions. Cannot contain wildcard characters. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/set-user-access-restrictions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetBranchUserAccessRestrictions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"users\":[\"user1\",\"user2\",\"user3\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetCheckSuitePreferences", + "qualifiedName": "GithubApi.SetCheckSuitePreferences", + "fullyQualifiedName": "GithubApi.SetCheckSuitePreferences@1.0.0", + "description": "Set preferences for check suite creation in a repository.\n\n Changes the default automatic flow for creating check suites in a GitHub repository. Use this tool to enable or disable the automatic creation of check suites when code is pushed. Requires admin permissions in the repository.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'checks/set-suites-preferences'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetCheckSuitePreferences", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"auto_create\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetCustomLabelsForSelfHostedRunner", + "qualifiedName": "GithubApi.SetCustomLabelsForSelfHostedRunner", + "fullyQualifiedName": "GithubApi.SetCustomLabelsForSelfHostedRunner@1.0.0", + "description": "Set custom labels for a self-hosted runner in an enterprise.\n\nThis tool updates the custom labels for a specific self-hosted runner in a GitHub enterprise, removing all previous labels. Requires an access token with `manage_runners:enterprise` scope.", + "parameters": [ + { + "name": "custom_labels", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of new custom labels for the runner. Use an empty list to remove all labels.", + "enum": null, + "inferrable": true + }, + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise where the runner is configured. Use the slug version of the enterprise name or the enterprise ID.", + "enum": null, + "inferrable": true + }, + { + "name": "self_hosted_runner_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the self-hosted runner to update labels for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/set-custom-labels-for-self-hosted-runner-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetCustomLabelsForSelfHostedRunner", + "parameters": { + "custom_labels": { + "value": ["linux", "backend", "ci-cd"], + "type": "array", + "required": true + }, + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "self_hosted_runner_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetCustomLabelsRunnerOrg", + "qualifiedName": "GithubApi.SetCustomLabelsRunnerOrg", + "fullyQualifiedName": "GithubApi.SetCustomLabelsRunnerOrg@1.0.0", + "description": "Set custom labels for a self-hosted runner in an organization.\n\nUpdates custom labels for a specified self-hosted runner in an organization, removing any previous labels. Requires authentication with an access token having `admin:org` scope.", + "parameters": [ + { + "name": "custom_labels", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of custom label names to assign to the runner. Pass an empty array to remove all labels.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_identifier", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner to set custom labels.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-custom-labels-for-self-hosted-runner-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetCustomLabelsRunnerOrg", + "parameters": { + "custom_labels": { + "value": ["linux", "CI", "testing"], + "type": "array", + "required": true + }, + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "runner_identifier": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetDefaultGithubActionsPermissions", + "qualifiedName": "GithubApi.SetDefaultGithubActionsPermissions", + "fullyQualifiedName": "GithubApi.SetDefaultGithubActionsPermissions@1.0.0", + "description": "Configure default GitHub Actions permissions for an organization.\n\nThis tool sets the default workflow permissions for the `GITHUB_TOKEN` in an organization and determines if GitHub Actions can submit approving pull request reviews. It's essential to authenticate using an access token with `admin:org` scope, or GitHub Apps must have the `administration` permission. Use it to manage organizational GitHub Actions settings.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_actions_to_approve_pull_requests", + "type": "boolean", + "required": false, + "description": "Allow GitHub Actions to approve pull requests. Enabling this may pose a security risk.", + "enum": null, + "inferrable": true + }, + { + "name": "default_github_token_permissions", + "type": "string", + "required": false, + "description": "The default permissions granted to the GITHUB_TOKEN when running workflows. Options are 'read' or 'write'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-github-actions-default-workflow-permissions-organization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetDefaultGithubActionsPermissions", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "allow_actions_to_approve_pull_requests": { + "value": true, + "type": "boolean", + "required": false + }, + "default_github_token_permissions": { + "value": "write", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetEnterpriseWorkflowPermissions", + "qualifiedName": "GithubApi.SetEnterpriseWorkflowPermissions", + "fullyQualifiedName": "GithubApi.SetEnterpriseWorkflowPermissions@1.0.0", + "description": "Set default GitHub Actions permissions for an enterprise.\n\nUse this tool to set the default workflow permissions for the `GITHUB_TOKEN` in GitHub enterprise workflows, and determine if GitHub Actions can approve pull request reviews. Authentication with an `admin:enterprise` scoped token is required.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise. Use the slug version of the enterprise name or the enterprise ID.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_approve_pull_request_reviews", + "type": "boolean", + "required": false, + "description": "Indicate if GitHub Actions can approve pull requests. Enabling this may pose a security risk.", + "enum": null, + "inferrable": true + }, + { + "name": "default_workflow_permissions", + "type": "string", + "required": false, + "description": "Specify 'read' or 'write' to set the permissions for the GITHUB_TOKEN when running workflows.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-github-actions-default-workflow-permissions-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetEnterpriseWorkflowPermissions", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "allow_approve_pull_request_reviews": { + "value": true, + "type": "boolean", + "required": false + }, + "default_workflow_permissions": { + "value": "write", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetGhOrgAccessToRunnerGroup", + "qualifiedName": "GithubApi.SetGhOrgAccessToRunnerGroup", + "fullyQualifiedName": "GithubApi.SetGhOrgAccessToRunnerGroup@1.0.0", + "description": "Update organization access for a GitHub runner group.\n\nThis tool allows updating which organizations have access to a self-hosted runner group within a GitHub enterprise. It requires authentication with a token that has the 'manage_runners:enterprise' scope.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise. Specify either for identifying the enterprise.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_ids_for_runner_access", + "type": "array", + "innerType": "integer", + "required": true, + "description": "List of organization IDs permitted to access the self-hosted runner group.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_identifier", + "type": "integer", + "required": true, + "description": "Unique integer identifier of the self-hosted runner group within the enterprise.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/set-org-access-to-self-hosted-runner-group-in-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetGhOrgAccessToRunnerGroup", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "organization_ids_for_runner_access": { + "value": [101, 102, 103], + "type": "array", + "required": true + }, + "runner_group_identifier": { + "value": 42, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetGithubActionsAllowedInRepo", + "qualifiedName": "GithubApi.SetGithubActionsAllowedInRepo", + "fullyQualifiedName": "GithubApi.SetGithubActionsAllowedInRepo@1.0.0", + "description": "Set allowed GitHub Actions in a repository.\n\n Configure which GitHub Actions are permitted in a specific repository. Requires repository permission policy to be set to 'selected' and appropriate authentication. Cannot override organization-level settings.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository. This is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-allowed-actions-repository'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetGithubActionsAllowedInRepo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"actions\": [\"action1\", \"action2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetGithubActionsCachePolicy", + "qualifiedName": "GithubApi.SetGithubActionsCachePolicy", + "fullyQualifiedName": "GithubApi.SetGithubActionsCachePolicy@1.0.0", + "description": "Set GitHub Actions cache usage policy for an enterprise.\n\nThis tool sets the cache usage policy for GitHub Actions within a specific enterprise. Requires authentication with an access token having `admin:enterprise` scope or an appropriate GitHub App permission.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise for which to set the cache policy.", + "enum": null, + "inferrable": true + }, + { + "name": "default_repo_cache_size_limit_gb", + "type": "integer", + "required": false, + "description": "Default size limit for all caches in a repository, specified in gigabytes.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_repository_cache_size_limit_in_gb", + "type": "integer", + "required": false, + "description": "Maximum cache size limit for all repository caches in an enterprise, in gigabytes.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-actions-cache-usage-policy-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetGithubActionsCachePolicy", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise-slug", + "type": "string", + "required": true + }, + "default_repo_cache_size_limit_gb": { + "value": 5, + "type": "integer", + "required": false + }, + "maximum_repository_cache_size_limit_in_gb": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetGithubActionsEnabledOrgs", + "qualifiedName": "GithubApi.SetGithubActionsEnabledOrgs", + "fullyQualifiedName": "GithubApi.SetGithubActionsEnabledOrgs@1.0.0", + "description": "Replace organizations enabled for GitHub Actions in an enterprise.\n\nUse this tool to update the list of organizations enabled for GitHub Actions within a specific enterprise. It requires the enterprise's permission policy to be set to 'selected'. Ensure authentication with an access token having the 'admin:enterprise' scope.", + "parameters": [ + { + "name": "enterprise_slug_or_id", + "type": "string", + "required": true, + "description": "The slug version or ID of the enterprise for which to update enabled GitHub Actions organizations.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_ids_for_github_actions", + "type": "array", + "innerType": "integer", + "required": true, + "description": "An array of organization IDs to enable GitHub Actions for specific organizations in the enterprise.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/set-selected-organizations-enabled-github-actions-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetGithubActionsEnabledOrgs", + "parameters": { + "enterprise_slug_or_id": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "organization_ids_for_github_actions": { + "value": [12345, 67890, 23456], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetGithubActionsPermissions", + "qualifiedName": "GithubApi.SetGithubActionsPermissions", + "fullyQualifiedName": "GithubApi.SetGithubActionsPermissions@1.0.0", + "description": "Set GitHub Actions permissions for an enterprise.\n\nSet the permissions policy for GitHub Actions within an enterprise. Requires admin authentication with the `admin:enterprise` scope.", + "parameters": [ + { + "name": "enabled_organizations_policy", + "type": "string", + "required": true, + "description": "Specifies which organizations can run GitHub Actions: 'all', 'none', or 'selected'.", + "enum": null, + "inferrable": true + }, + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise for setting GitHub Actions permissions.", + "enum": null, + "inferrable": true + }, + { + "name": "actions_permission_policy", + "type": "string", + "required": false, + "description": "Specifies the actions allowed to run in the enterprise. Possible values: 'all', 'local_only', 'selected'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/set-github-actions-permissions-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetGithubActionsPermissions", + "parameters": { + "enabled_organizations_policy": { + "value": "selected", + "type": "string", + "required": true + }, + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "actions_permission_policy": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetGithubActionsReposForOrg", + "qualifiedName": "GithubApi.SetGithubActionsReposForOrg", + "fullyQualifiedName": "GithubApi.SetGithubActionsReposForOrg@1.0.0", + "description": "Configure selected repositories for GitHub Actions in an organization.\n\nThis tool replaces the list of repositories with GitHub Actions enabled in a specified organization. Use it when you need to manage which repositories have access to GitHub Actions, provided the organization policy allows it. Requires authentication with an access token granting `admin:org` scope or a GitHub App with `administration` permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_ids_for_github_actions", + "type": "array", + "innerType": "integer", + "required": true, + "description": "An array of repository IDs to enable for GitHub Actions within the organization. Each ID should be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-selected-repositories-enabled-github-actions-organization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetGithubActionsReposForOrg", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_ids_for_github_actions": { + "value": [101, 102, 103], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetGithubAnnouncement", + "qualifiedName": "GithubApi.SetGithubAnnouncement", + "fullyQualifiedName": "GithubApi.SetGithubAnnouncement@1.0.0", + "description": "Set the announcement banner message and expiration in GitHub Enterprise.\n\nUse this tool to configure the global announcement banner message and expiration time in your GitHub Enterprise. This is useful for communicating important messages to all users in the enterprise.", + "parameters": [ + { + "name": "announcement_text_gfm", + "type": "string", + "required": true, + "description": "The announcement text in GitHub Flavored Markdown. Use for global messages in GitHub Enterprise.", + "enum": null, + "inferrable": true + }, + { + "name": "announcement_expiration_time", + "type": "string", + "required": false, + "description": "Timestamp for when the announcement expires in ISO 8601 format. Use `null` or an empty string for no expiration.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/set-announcement'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetGithubAnnouncement", + "parameters": { + "announcement_text_gfm": { + "value": "### Important Update\nPlease be aware of the upcoming maintenance on April 15th. Ensure that your work is saved before then.", + "type": "string", + "required": true + }, + "announcement_expiration_time": { + "value": "2023-04-16T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetGithubBranchTeamAccess", + "qualifiedName": "GithubApi.SetGithubBranchTeamAccess", + "fullyQualifiedName": "GithubApi.SetGithubBranchTeamAccess@1.0.0", + "description": "Update the team access restrictions on a GitHub branch.\n\n This tool replaces the current list of teams with push access to a specified branch in a GitHub repository. It removes all previous teams and sets the new list, including any child teams, for team access control.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The name of the branch. It cannot contain wildcard characters. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/set-team-access-restrictions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetGithubBranchTeamAccess", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"teams\": [\"teamA\", \"teamB\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetGithubEnterpriseSettings", + "qualifiedName": "GithubApi.SetGithubEnterpriseSettings", + "fullyQualifiedName": "GithubApi.SetGithubEnterpriseSettings@1.0.0", + "description": "Apply configuration settings to GitHub Enterprise instance.\n\nThis tool applies a set of customizable settings to a GitHub Enterprise instance. It should be called when there is a need to update configuration parameters. Refer to the documentation for a list of settings that can be changed through this tool.", + "parameters": [ + { + "name": "new_settings_json_string", + "type": "string", + "required": true, + "description": "A JSON string specifying new settings to apply to the GitHub Enterprise instance. Only include settings you wish to change.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/set-settings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetGithubEnterpriseSettings", + "parameters": { + "new_settings_json_string": { + "value": "{\"issues_enabled\": true, \"wiki_enabled\": false, \"projects_enabled\": true}", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetGithubIssueLabels", + "qualifiedName": "GithubApi.SetGithubIssueLabels", + "fullyQualifiedName": "GithubApi.SetGithubIssueLabels@1.0.0", + "description": "Set new labels for a GitHub issue.\n\n Use this tool to remove all existing labels and apply new labels to a specified issue in a GitHub repository. Ideal for organizing and categorizing issues effectively.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The GitHub username or organization name of the repository owner. Not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository. This is not case sensitive and identifies the repository within which the issue resides. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_number", + "type": "integer", + "required": false, + "description": "The unique identifier number for the GitHub issue to update labels. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/set-labels'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetGithubIssueLabels", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "johndoe", + "type": "string", + "required": false + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": false + }, + "issue_number": { + "value": 42, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"labels\":[\"bug\",\"urgent\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetGithubOidcSubjectClaim", + "qualifiedName": "GithubApi.SetGithubOidcSubjectClaim", + "fullyQualifiedName": "GithubApi.SetGithubOidcSubjectClaim@1.0.0", + "description": "Customize OIDC subject claim for a GitHub repository.\n\nThis tool is used to set the customization template and opt-in or opt-out flag for an OpenID Connect (OIDC) subject claim in a GitHub repository. It requires authentication with a token having `repo` scope or GitHub App permissions with `actions:write`.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This value is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "use_default_template", + "type": "boolean", + "required": true, + "description": "Set to true to use the default template, which ignores `include_claim_keys`.", + "enum": null, + "inferrable": true + }, + { + "name": "claim_keys_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of unique strings for claim keys, containing only alphanumeric characters and underscores.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-custom-oidc-sub-claim-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetGithubOidcSubjectClaim", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "use_default_template": { + "value": false, + "type": "boolean", + "required": true + }, + "claim_keys_to_include": { + "value": ["user_id", "email", "username"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetGithubReposForRequiredWorkflow", + "qualifiedName": "GithubApi.SetGithubReposForRequiredWorkflow", + "fullyQualifiedName": "GithubApi.SetGithubReposForRequiredWorkflow@1.0.0", + "description": "Set repositories for a GitHub required workflow.\n\nThis tool sets the repositories associated with a GitHub required workflow. Use it when you need to configure or update which repositories are subject to a required workflow. Authentication with an access token and the `admin:org` scope is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name. Input is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_ids_for_required_workflow", + "type": "array", + "innerType": "integer", + "required": true, + "description": "An array of repository IDs for which the workflow is required. Provide each repository's ID as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "required_workflow_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the required workflow you want to set for the repositories.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-selected-repos-to-required-workflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetGithubReposForRequiredWorkflow", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_ids_for_required_workflow": { + "value": [123456, 789012, 345678], + "type": "array", + "required": true + }, + "required_workflow_identifier": { + "value": 987654, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetGithubRunnerGroupRepoAccess", + "qualifiedName": "GithubApi.SetGithubRunnerGroupRepoAccess", + "fullyQualifiedName": "GithubApi.SetGithubRunnerGroupRepoAccess@1.0.0", + "description": "Update repository access for a GitHub runner group.\n\nReplaces the list of repositories that can access a self-hosted runner group in a GitHub organization. Requires authentication with an access token having the `admin:org` scope.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_ids_for_access", + "type": "array", + "innerType": "integer", + "required": true, + "description": "List of repository IDs allowed to access the self-hosted runner group.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_id", + "type": "integer", + "required": true, + "description": "Unique identifier for the self-hosted runner group in the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-repo-access-to-self-hosted-runner-group-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetGithubRunnerGroupRepoAccess", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_ids_for_access": { + "value": [123456, 789012, 345678], + "type": "array", + "required": true + }, + "runner_group_id": { + "value": 101112, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetOrgAnnouncementBanner", + "qualifiedName": "GithubApi.SetOrgAnnouncementBanner", + "fullyQualifiedName": "GithubApi.SetOrgAnnouncementBanner@1.0.0", + "description": "Sets the announcement banner for a GitHub organization.\n\nUse this tool to update the announcement banner displayed for a specified GitHub organization.", + "parameters": [ + { + "name": "announcement_text", + "type": "string", + "required": true, + "description": "The announcement text formatted in GitHub Flavored Markdown. See GitHub's basic writing syntax for details.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "announcement_expiry_time", + "type": "string", + "required": false, + "description": "The expiry time for the announcement, in ISO 8601 format. Use `null` or empty for no expiry.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'announcement-banners/set-announcement-banner-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetOrgAnnouncementBanner", + "parameters": { + "announcement_text": { + "value": "We are excited to announce our new coding guidelines! Please check them out in the repository.", + "type": "string", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "announcement_expiry_time": { + "value": "2023-12-31T23:59:59Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetOrgVariableRepos", + "qualifiedName": "GithubApi.SetOrgVariableRepos", + "fullyQualifiedName": "GithubApi.SetOrgVariableRepos@1.0.0", + "description": "Replace repositories for an organization's variable.\n\nThis tool replaces all repositories associated with an organization variable that is set to selected visibility. Use it to update the repositories list where an org variable is available. Requires appropriate authentication and permissions.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_ids_for_access", + "type": "array", + "innerType": "integer", + "required": true, + "description": "An array of integers representing the repository IDs that can access the organization variable. Ensure the IDs are valid and accessible.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": true, + "description": "The name of the organization variable to be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-selected-repos-for-org-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetOrgVariableRepos", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_ids_for_access": { + "value": [101, 202, 303], + "type": "array", + "required": true + }, + "variable_name": { + "value": "API_KEY", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetOwnGithubPublicMembership", + "qualifiedName": "GithubApi.SetOwnGithubPublicMembership", + "fullyQualifiedName": "GithubApi.SetOwnGithubPublicMembership@1.0.0", + "description": "Publicize your GitHub organization membership.\n\nUse this tool to make your GitHub organization membership public. It can only be used for your own membership, not for others.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user account handle to publicize the membership for.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name to make membership public. Case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/set-public-membership-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetOwnGithubPublicMembership", + "parameters": { + "github_user_handle": { + "value": "johndoe", + "type": "string", + "required": true + }, + "organization_name": { + "value": "OpenSourceOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetReposForOrgSecret", + "qualifiedName": "GithubApi.SetReposForOrgSecret", + "fullyQualifiedName": "GithubApi.SetReposForOrgSecret@1.0.0", + "description": "Update selected repos for an organization's Dependabot secret.\n\nThis tool updates the list of repositories associated with a Dependabot secret for an organization, when the visibility is set to 'selected'. It requires authentication with an access token with 'admin:org' scope or a GitHub App with 'dependabot_secrets' permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the organization secret to update the repository access for. This should match the name of an existing Dependabot secret.", + "enum": null, + "inferrable": true + }, + { + "name": "selected_repository_ids", + "type": "array", + "innerType": "integer", + "required": true, + "description": "List of repository IDs that can access the org secret. Use only when visibility is 'selected'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/set-selected-repos-for-org-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetReposForOrgSecret", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "secret_name": { + "value": "MyDependabotSecret", + "type": "string", + "required": true + }, + "selected_repository_ids": { + "value": [123456, 789012, 345678], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetRepoSubscription", + "qualifiedName": "GithubApi.SetRepoSubscription", + "fullyQualifiedName": "GithubApi.SetRepoSubscription@1.0.0", + "description": "Manage your GitHub repository subscription settings.\n\nUse this tool to subscribe to or ignore notifications for a GitHub repository. Set `subscribed` to `true` to watch the repository, or set `ignored` to `true` to ignore notifications. This tool does not delete subscriptions; use a different endpoint for that.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "Specify the name of the GitHub repository to manage subscriptions. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The username of the repository owner. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "block_notifications", + "type": "boolean", + "required": false, + "description": "Set to true to block all notifications from this repository.", + "enum": null, + "inferrable": true + }, + { + "name": "receive_notifications", + "type": "boolean", + "required": false, + "description": "Set to `true` to receive notifications from the repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/set-repo-subscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetRepoSubscription", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "block_notifications": { + "value": false, + "type": "boolean", + "required": false + }, + "receive_notifications": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetRunnerLabels", + "qualifiedName": "GithubApi.SetRunnerLabels", + "fullyQualifiedName": "GithubApi.SetRunnerLabels@1.0.0", + "description": "Update custom labels for a self-hosted runner in a GitHub repo.\n\nThis tool removes existing custom labels and sets new ones for a specific self-hosted runner in a GitHub repository. It requires authentication with an access token that has the 'repo' scope.", + "parameters": [ + { + "name": "custom_labels_for_runner", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of custom labels to set for the self-hosted runner. Pass an empty array to clear all labels.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_id", + "type": "integer", + "required": true, + "description": "The unique integer identifier of the self-hosted runner to update labels for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-custom-labels-for-self-hosted-runner-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetRunnerLabels", + "parameters": { + "custom_labels_for_runner": { + "value": ["linux", "build", "test"], + "type": "array", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "runner_id": { + "value": 123, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetWorkflowAccess", + "qualifiedName": "GithubApi.SetWorkflowAccess", + "fullyQualifiedName": "GithubApi.SetWorkflowAccess@1.0.0", + "description": "Set the access level for workflows in a repository.\n\nAdjusts the access level for workflows and reusable workflows in internal or private GitHub repositories. Requires authentication with a token that has the `repo` scope or a GitHub App with `administration` permissions.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username or organization name that owns the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_access_level", + "type": "string", + "required": true, + "description": "Specifies access level for workflows outside the repository: 'none', 'user', or 'organization'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-workflow-access-to-repository'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SetWorkflowAccess", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-org", + "type": "string", + "required": true + }, + "workflow_access_level": { + "value": "user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "StarGithubGist", + "qualifiedName": "GithubApi.StarGithubGist", + "fullyQualifiedName": "GithubApi.StarGithubGist@1.0.0", + "description": "Star a gist on GitHub using its gist ID.\n\nUse this tool to star a specific gist on GitHub by providing its gist ID. This action marks the gist as starred for the authenticated user.", + "parameters": [ + { + "name": "gist_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier of the gist to be starred on GitHub.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/star'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.StarGithubGist", + "parameters": { + "gist_unique_id": { + "value": "abc123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "StarGithubRepository", + "qualifiedName": "GithubApi.StarGithubRepository", + "fullyQualifiedName": "GithubApi.StarGithubRepository@1.0.0", + "description": "Star a GitHub repository for the authenticated user.\n\nUse this tool to star a specific GitHub repository on behalf of the authenticated user. This action can be used to bookmark important repositories or show appreciation for the work. Ensure the `Content-Length` is set to zero when making the request.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to star. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository, case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/star-repo-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.StarGithubRepository", + "parameters": { + "repository_name": { + "value": "octo-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "octocat", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "StartGithubConfiguration", + "qualifiedName": "GithubApi.StartGithubConfiguration", + "fullyQualifiedName": "GithubApi.StartGithubConfiguration@1.0.0", + "description": "Initiate the GitHub configuration process.\n\nUse this tool to start the configuration process for updated GitHub Enterprise settings. It should be called when you need changes to your GitHub settings to take effect.", + "parameters": [], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/start-configuration-process'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.StartGithubConfiguration", + "parameters": {}, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "StartOrgMigration", + "qualifiedName": "GithubApi.StartOrgMigration", + "fullyQualifiedName": "GithubApi.StartOrgMigration@1.0.0", + "description": "Initiates a migration archive for a GitHub organization.\n\nUse this tool to start the process of generating a migration archive for a specified GitHub organization. This is useful for moving or backing up repositories and data from an organization.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repositories_to_migrate", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of repository names to be included in the migration process.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_attachments", + "type": "boolean", + "required": false, + "description": "Set to true to exclude attachments from the migration, reducing archive file size.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_git_data", + "type": "boolean", + "required": false, + "description": "Set to true to exclude repository git data from the migration, reducing archive size. Useful for metadata-only migrations.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_items", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify related items to exclude from the response for performance optimization, e.g., [\"repositories\"].", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_metadata", + "type": "boolean", + "required": false, + "description": "Set to true to exclude metadata, including only git source. Useful for reducing file complexity.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_owner_projects", + "type": "boolean", + "required": false, + "description": "Indicate whether projects owned by the organization or users should be excluded from the migration.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_releases", + "type": "boolean", + "required": false, + "description": "Set to true to exclude releases from the migration archive, reducing file size.", + "enum": null, + "inferrable": true + }, + { + "name": "lock_repositories", + "type": "boolean", + "required": false, + "description": "Set to true to lock repositories during migration, preventing changes.", + "enum": null, + "inferrable": true + }, + { + "name": "only_include_org_metadata", + "type": "boolean", + "required": false, + "description": "Specify whether only organization metadata is included, keeping the repositories array empty and ignoring other flags.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'migrations/start-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.StartOrgMigration", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repositories_to_migrate": { + "value": ["repo1", "repo2", "repo3"], + "type": "array", + "required": true + }, + "exclude_attachments": { + "value": false, + "type": "boolean", + "required": false + }, + "exclude_git_data": { + "value": true, + "type": "boolean", + "required": false + }, + "exclude_items": { + "value": ["issues"], + "type": "array", + "required": false + }, + "exclude_metadata": { + "value": false, + "type": "boolean", + "required": false + }, + "exclude_owner_projects": { + "value": true, + "type": "boolean", + "required": false + }, + "exclude_releases": { + "value": false, + "type": "boolean", + "required": false + }, + "lock_repositories": { + "value": true, + "type": "boolean", + "required": false + }, + "only_include_org_metadata": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SubmitPullRequestReview", + "qualifiedName": "GithubApi.SubmitPullRequestReview", + "fullyQualifiedName": "GithubApi.SubmitPullRequestReview@1.0.0", + "description": "Submit a review for a pull request on GitHub.\n\nUse this tool to submit a pending review for a specific pull request on GitHub. It can be used to approve, reject, or comment on changes in a pull request after a review has been created.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The identifier number of the pull request to be reviewed.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Input is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "review_action", + "type": "string", + "required": true, + "description": "Specify the review action: `APPROVE`, `REQUEST_CHANGES`, or `COMMENT`. Leaving this empty sets the review to `PENDING`.", + "enum": null, + "inferrable": true + }, + { + "name": "review_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the pull request review to be submitted.", + "enum": null, + "inferrable": true + }, + { + "name": "review_body_text", + "type": "string", + "required": false, + "description": "The body text of the pull request review. Provide detailed feedback or comments for the review.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/submit-review'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SubmitPullRequestReview", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "ExampleUser", + "type": "string", + "required": true + }, + "review_action": { + "value": "APPROVE", + "type": "string", + "required": true + }, + "review_identifier": { + "value": 1001, + "type": "integer", + "required": true + }, + "review_body_text": { + "value": "Great work on this pull request! Everything looks awesome.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SuspendGithubAppInstallation", + "qualifiedName": "GithubApi.SuspendGithubAppInstallation", + "fullyQualifiedName": "GithubApi.SuspendGithubAppInstallation@1.0.0", + "description": "Suspend a GitHub App's installation for specified accounts.\n\nUse this tool to suspend a GitHub App on a user, organization, or business account. This blocks the app from accessing the account's resources via the GitHub Enterprise Server API or webhook events. Note: A JWT is required for authentication.", + "parameters": [ + { + "name": "installation_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub App installation to suspend.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/suspend-installation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SuspendGithubAppInstallation", + "parameters": { + "installation_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SuspendGithubUser", + "qualifiedName": "GithubApi.SuspendGithubUser", + "fullyQualifiedName": "GithubApi.SuspendGithubUser@1.0.0", + "description": "Suspend a user on a GitHub Enterprise instance.\n\nUse this tool to suspend a non-Active Directory LDAP-authenticated user on a GitHub Enterprise instance. Ensure the user is not authenticated via Active Directory LDAP as the API will not support it and will return a 403 response. This action cannot be performed on your own account.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub username to suspend, excluding Active Directory LDAP-authenticated users.", + "enum": null, + "inferrable": true + }, + { + "name": "suspension_reason", + "type": "string", + "required": false, + "description": "A string detailing why the user is being suspended, which will be logged in the audit log. If omitted, a default message is used.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/suspend-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SuspendGithubUser", + "parameters": { + "github_user_handle": { + "value": "exampleUser123", + "type": "string", + "required": true + }, + "suspension_reason": { + "value": "Violation of community guidelines.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SyncForkWithUpstream", + "qualifiedName": "GithubApi.SyncForkWithUpstream", + "fullyQualifiedName": "GithubApi.SyncForkWithUpstream@1.0.0", + "description": "Sync a forked repository's branch with the upstream repo.\n\nUse this tool to update a branch of a forked GitHub repository, ensuring it is up-to-date with changes from the upstream repository.", + "parameters": [ + { + "name": "branch_name_to_sync", + "type": "string", + "required": true, + "description": "The name of the branch in the forked repository to update with upstream changes.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to update. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/merge-upstream'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SyncForkWithUpstream", + "parameters": { + "branch_name_to_sync": { + "value": "main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SyncGithubLdapUserMapping", + "qualifiedName": "GithubApi.SyncGithubLdapUserMapping", + "fullyQualifiedName": "GithubApi.SyncGithubLdapUserMapping@1.0.0", + "description": "Queue a sync job for LDAP mapping of a GitHub user.\n\nUse this tool to queue a job to sync LDAP mapping for a specific GitHub user. This does not initiate immediate synchronization but queues it for when the instance is ready. A response of `201` indicates successful queuing.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user account handle to queue LDAP sync for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/sync-ldap-mapping-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.SyncGithubLdapUserMapping", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ToggleMaintenanceMode", + "qualifiedName": "GithubApi.ToggleMaintenanceMode", + "fullyQualifiedName": "GithubApi.ToggleMaintenanceMode@1.0.0", + "description": "Toggle GitHub Enterprise maintenance mode.\n\nThis tool enables or disables maintenance mode for a GitHub Enterprise instance. It should be called when you want to toggle the maintenance mode setting. The response indicates whether the operation was successful.", + "parameters": [ + { + "name": "maintenance_mode_settings", + "type": "string", + "required": true, + "description": "A JSON string defining `enabled` (true/false) and `when` (e.g., 'now' or a chronic-parseable date) to set maintenance mode status and timing.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/enable-or-disable-maintenance-mode'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.ToggleMaintenanceMode", + "parameters": { + "maintenance_mode_settings": { + "value": "{\"enabled\": true, \"when\": \"now\"}", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TransferGithubRepository", + "qualifiedName": "GithubApi.TransferGithubRepository", + "fullyQualifiedName": "GithubApi.TransferGithubRepository@1.0.0", + "description": "Initiate the transfer of a GitHub repository to a new owner.\n\nThis tool starts the process of transferring a GitHub repository to another user. The new owner must accept the transfer when moving a personal repository. The response provides information about the original owner and continues the transfer asynchronously. For more details, refer to GitHub's documentation on repository transfers.", + "parameters": [ + { + "name": "new_owner_username_or_org", + "type": "string", + "required": true, + "description": "The username or organization name to which the repository will be transferred.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to be transferred. Case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "new_repository_name", + "type": "string", + "required": false, + "description": "The new name to be given to the repository. It should be a valid GitHub repository name.", + "enum": null, + "inferrable": true + }, + { + "name": "team_ids_to_add", + "type": "array", + "innerType": "integer", + "required": false, + "description": "List of team IDs to add to the repository. Applicable only for organization-owned repositories.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/transfer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.TransferGithubRepository", + "parameters": { + "new_owner_username_or_org": { + "value": "new-owner-org", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "current-owner", + "type": "string", + "required": true + }, + "new_repository_name": { + "value": "new-example-repo", + "type": "string", + "required": false + }, + "team_ids_to_add": { + "value": [123, 456], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TriggerEnvironmentDownload", + "qualifiedName": "GithubApi.TriggerEnvironmentDownload", + "fullyQualifiedName": "GithubApi.TriggerEnvironmentDownload@1.0.0", + "description": "Start a new download of the environment tarball.\n\nThis tool triggers a new download of the environment tarball based on the specified `image_url`. Once completed, the downloaded tarball replaces the existing environment. It should be called when a new version of the environment is needed. If a download cannot be started due to constraints like ongoing downloads or protected environments, an error will be provided.", + "parameters": [ + { + "name": "pre_receive_environment_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the pre-receive environment to trigger the download for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/start-pre-receive-environment-download'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.TriggerEnvironmentDownload", + "parameters": { + "pre_receive_environment_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TriggerGithubCheckRerequest", + "qualifiedName": "GithubApi.TriggerGithubCheckRerequest", + "fullyQualifiedName": "GithubApi.TriggerGithubCheckRerequest@1.0.0", + "description": "Triggers a rerequest for an existing GitHub check run.\n\nThis tool triggers GitHub to rerequest an existing check run without needing to push new code. Ideal for resetting the status of check runs to 'queued' and clearing the conclusion. It requires the `checks:read` permission for private repositories or pull access for public ones.", + "parameters": [ + { + "name": "check_run_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub check run to be rerequested.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner_account", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'checks/rerequest-run'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.TriggerGithubCheckRerequest", + "parameters": { + "check_run_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner_account": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TriggerGithubDispatchEvent", + "qualifiedName": "GithubApi.TriggerGithubDispatchEvent", + "fullyQualifiedName": "GithubApi.TriggerGithubDispatchEvent@1.0.0", + "description": "Triggers a GitHub repository dispatch event.\n\n Use this tool to activate a webhook event called `repository_dispatch` to trigger a GitHub Actions workflow or GitHub App webhook. It requires write access to the repository via personal access tokens or GitHub App permissions. You can include additional data using `client_payload` to pass on extra information needed by your workflow.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "Specify the GitHub username or organization name that owns the repository. This is not case-sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository. This is not case sensitive and determines which repository's dispatch event will be triggered. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-dispatch-event'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.TriggerGithubDispatchEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"client_payload\": {\"key1\": \"value1\", \"key2\": \"value2\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TriggerGithubWebhookPing", + "qualifiedName": "GithubApi.TriggerGithubWebhookPing", + "fullyQualifiedName": "GithubApi.TriggerGithubWebhookPing@1.0.0", + "description": "Trigger a ping event to a GitHub webhook.\n\nThis tool sends a ping event to the specified GitHub webhook to test connectivity or configuration. It should be called when it's necessary to verify if the webhook setup is correct.", + "parameters": [ + { + "name": "webhook_hook_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub webhook to ping.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/ping-global-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.TriggerGithubWebhookPing", + "parameters": { + "webhook_hook_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TriggerGithubWebhookTest", + "qualifiedName": "GithubApi.TriggerGithubWebhookTest", + "fullyQualifiedName": "GithubApi.TriggerGithubWebhookTest@1.0.0", + "description": "Trigger a GitHub webhook test with the latest push event.\n\nThis tool triggers a GitHub webhook for push events on the specified repository. It should be called when you need to test if a webhook is configured correctly and subscribed to `push` events. If successful, the tool will confirm the test was triggered; otherwise, it will indicate a lack of subscription.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. This parameter is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the webhook to be tested. This integer value specifies which webhook to trigger in the repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/test-push-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.TriggerGithubWebhookTest", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "webhook_identifier": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnfollowGithubUser", + "qualifiedName": "GithubApi.UnfollowGithubUser", + "fullyQualifiedName": "GithubApi.UnfollowGithubUser@1.0.0", + "description": "Unfollow a user on GitHub.\n\nUse this tool to unfollow a user on GitHub. Ensure the user is authenticated with basic auth or OAuth with the `user:follow` scope.", + "parameters": [ + { + "name": "github_user_handle_to_unfollow", + "type": "string", + "required": true, + "description": "The GitHub user's handle you want to unfollow. The user must be logged in and authenticated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/unfollow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UnfollowGithubUser", + "parameters": { + "github_user_handle_to_unfollow": { + "value": "exampleuser", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UninstallGithubApp", + "qualifiedName": "GithubApi.UninstallGithubApp", + "fullyQualifiedName": "GithubApi.UninstallGithubApp@1.0.0", + "description": "Uninstall a GitHub App from an account.\n\nThis tool is used to uninstall a GitHub App from a user, organization, or business account. It should be called when you want to permanently remove an app's access. For temporary suspension, consider using the suspend endpoint instead. Authentication requires a JWT.", + "parameters": [ + { + "name": "installation_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub App installation to uninstall.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/delete-installation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UninstallGithubApp", + "parameters": { + "installation_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnlinkExternalIdpGroupFromTeam", + "qualifiedName": "GithubApi.UnlinkExternalIdpGroupFromTeam", + "fullyQualifiedName": "GithubApi.UnlinkExternalIdpGroupFromTeam@1.0.0", + "description": "Unlink an external IdP group from a GitHub team.\n\nThis tool is used to remove a connection between a GitHub team and an external identity provider group. It is useful when managing team membership through an IdP in GitHub Enterprise Cloud.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team's name. It identifies the team within the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/unlink-external-idp-group-from-team-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UnlinkExternalIdpGroupFromTeam", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnlockGithubIssue", + "qualifiedName": "GithubApi.UnlockGithubIssue", + "fullyQualifiedName": "GithubApi.UnlockGithubIssue@1.0.0", + "description": "Unlock a locked GitHub issue conversation.\n\nUse this tool to unlock a previously locked conversation on a GitHub issue if you have push access to the repository. This action is useful when you need to re-enable discussion on an issue.", + "parameters": [ + { + "name": "issue_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the GitHub issue to be unlocked.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/unlock'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UnlockGithubIssue", + "parameters": { + "issue_id": { + "value": 1024, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnlockGithubRepoForOrgMigration", + "qualifiedName": "GithubApi.UnlockGithubRepoForOrgMigration", + "fullyQualifiedName": "GithubApi.UnlockGithubRepoForOrgMigration@1.0.0", + "description": "Unlock a locked repository after migration for an organization.\n\nUse this tool to unlock a repository that was locked for a migration within an organization on GitHub. This is necessary after completing a migration to access the repository again. Once unlocked, consider deleting the repository if you no longer need the source data.", + "parameters": [ + { + "name": "migration_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the migration process.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization name, which is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to be unlocked. This is required and should match the exact repository name used during the migration. Case sensitivity does not matter.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'migrations/unlock-repo-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UnlockGithubRepoForOrgMigration", + "parameters": { + "migration_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnstarGithubGist", + "qualifiedName": "GithubApi.UnstarGithubGist", + "fullyQualifiedName": "GithubApi.UnstarGithubGist@1.0.0", + "description": "Unstar a GitHub gist by its ID.\n\nThis tool is used to remove a star from a specific GitHub gist identified by its ID. Call this tool when you need to unstar a gist to update its starred status. It confirms the action has been completed.", + "parameters": [ + { + "name": "gist_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the GitHub gist to be unstarred.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/unstar'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UnstarGithubGist", + "parameters": { + "gist_identifier": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnstarGithubRepo", + "qualifiedName": "GithubApi.UnstarGithubRepo", + "fullyQualifiedName": "GithubApi.UnstarGithubRepo@1.0.0", + "description": "Unstar a GitHub repository for the authenticated user.\n\nUse this tool to remove a star from a repository on GitHub for the currently authenticated user. This action is useful when a user wants to unmark a repository as a favorite or remove it from a list of starred repositories.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to unstar, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/unstar-repo-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UnstarGithubRepo", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnsubscribeFromRepo", + "qualifiedName": "GithubApi.UnsubscribeFromRepo", + "fullyQualifiedName": "GithubApi.UnsubscribeFromRepo@1.0.0", + "description": "Stop receiving notifications for a repository.\n\nUse this tool to stop watching a GitHub repository and cease receiving notifications from it. This action will unsubscribe you from updates related to the specified repository.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to unsubscribe from. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity/delete-repo-subscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UnsubscribeFromRepo", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnsuspendGithubUser", + "qualifiedName": "GithubApi.UnsuspendGithubUser", + "fullyQualifiedName": "GithubApi.UnsuspendGithubUser@1.0.0", + "description": "Unsuspend a user on GitHub Enterprise.\n\nThis tool unsuspends a user on a GitHub Enterprise instance. It is disabled if the GitHub instance uses LDAP Sync with Active Directory LDAP servers, in which case it returns a `403` response. It should be called to restore access to a suspended user.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub user handle to identify the user account to unsuspend.", + "enum": null, + "inferrable": true + }, + { + "name": "unsuspension_reason", + "type": "string", + "required": false, + "description": "The reason for unsuspending the user, logged in the audit log. Defaults to \"Unsuspended via API by _SITE_ADMINISTRATOR_\" if not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/unsuspend-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UnsuspendGithubUser", + "parameters": { + "github_user_handle": { + "value": "john_doe", + "type": "string", + "required": true + }, + "unsuspension_reason": { + "value": "Reinstated after review", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBranchProtection", + "qualifiedName": "GithubApi.UpdateBranchProtection", + "fullyQualifiedName": "GithubApi.UpdateBranchProtection@1.0.0", + "description": "Update GitHub repository branch protection settings.\n\n Use this tool to update the protection settings of a branch in a GitHub repository. It requires admin or owner permissions. Note that specifying new arrays for users and teams will replace their previous values, and there is a limit of 100 items for users, apps, and teams combined.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository on GitHub. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository, which is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The name of the branch to update protection settings for. It cannot contain wildcard characters. For wildcard support, use the GraphQL API. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/update-branch-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateBranchProtection", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleOwner", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"required_status_checks\": {\"strict\": true, \"contexts\": [\"ci/test\"]}, \"enforce_admins\": true, \"required_pull_request_reviews\": {\"dismiss_stale_reviews\": true, \"require_code_owner_reviews\": true}, \"restrictions\": {\"users\": [\"user1\", \"user2\"], \"teams\": [\"team1\"]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBranchStatusCheckProtection", + "qualifiedName": "GithubApi.UpdateBranchStatusCheckProtection", + "fullyQualifiedName": "GithubApi.UpdateBranchStatusCheckProtection@1.0.0", + "description": "Update status check protection for a GitHub branch.\n\n Use this tool to update the required status checks for a protected branch in a GitHub repository. Requires admin or owner permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The name of the branch for which to update status check protection. Wildcard characters are not allowed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/update-status-check-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateBranchStatusCheckProtection", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleOwner", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"required_status_checks\":{\"strict\":true,\"contexts\":[\"ci-tests\",\"code-coverage\"]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCheckRunStatus", + "qualifiedName": "GithubApi.UpdateCheckRunStatus", + "fullyQualifiedName": "GithubApi.UpdateCheckRunStatus@1.0.0", + "description": "Update a check run for a specific commit in a repository.\n\n This tool updates a check run for a specific commit within a repository. It is useful when you need to modify the status or details of check runs created by a GitHub App. Ensure the app has the 'checks:write' permission to perform this action.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. This is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository to update the check run. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "check_run_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier of the check run to update. This should be an integer value. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'checks/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateCheckRunStatus", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": false + }, + "check_run_identifier": { + "value": 123456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"status\": \"in_progress\", \"conclusion\": null, \"output\": {\"title\": \"Check Run Title\", \"summary\": \"Check run summary\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCommitComment", + "qualifiedName": "GithubApi.UpdateCommitComment", + "fullyQualifiedName": "GithubApi.UpdateCommitComment@1.0.0", + "description": "Update a comment on a GitHub commit.\n\nUse this tool to modify the text of an existing comment on a commit in a GitHub repository. Ideal for refining or correcting comments after they have been posted.", + "parameters": [ + { + "name": "comment_contents", + "type": "string", + "required": true, + "description": "The updated text of the commit comment. Enter the new content you wish to save.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_unique_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the commit comment being updated. It is an integer value that specifies the comment to be edited within the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is not case sensitive. Provide the repository's exact name as it appears on GitHub.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/update-commit-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateCommitComment", + "parameters": { + "comment_contents": { + "value": "Updated comment: This change improves performance.", + "type": "string", + "required": true + }, + "comment_unique_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateDeploymentBranchPolicy", + "qualifiedName": "GithubApi.UpdateDeploymentBranchPolicy", + "fullyQualifiedName": "GithubApi.UpdateDeploymentBranchPolicy@1.0.0", + "description": "Update a deployment branch policy for a GitHub environment.\n\nThis tool updates a deployment branch policy for a specified environment in a GitHub repository. It requires authentication with an access token that has the `repo` scope, or for GitHub Apps, the `administration:write` permission.", + "parameters": [ + { + "name": "branch_name_pattern", + "type": "string", + "required": true, + "description": "Pattern that branches must match to deploy to the environment. Wildcards won't match '/'. See Ruby File.fnmatch for syntax.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_policy_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the branch policy to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "The name of the environment for which the deployment branch policy is being updated.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username or organization name of the repository owner. It is case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/update-deployment-branch-policy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateDeploymentBranchPolicy", + "parameters": { + "branch_name_pattern": { + "value": "feature/*", + "type": "string", + "required": true + }, + "branch_policy_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_name": { + "value": "my-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "my-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEnterpriseGroupAttributes", + "qualifiedName": "GithubApi.UpdateEnterpriseGroupAttributes", + "fullyQualifiedName": "GithubApi.UpdateEnterpriseGroupAttributes@1.0.0", + "description": "Update attributes for a provisioned enterprise group.\n\n This tool updates individual attributes of a provisioned group in an enterprise account using the SCIM API. Users can perform add, remove, or replace operations on group attributes or memberships. Useful for updating group values or managing memberships efficiently.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "scim_group_identifier", + "type": "string", + "required": false, + "description": "A unique identifier for the SCIM group to be updated. This is required to specify which group's attributes or memberships are being modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/update-attribute-for-enterprise-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateEnterpriseGroupAttributes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "scim_group_identifier": { + "value": "group_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"attributes\":[{\"op\":\"replace\",\"value\":\"new_value\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEnterpriseGroupInfo", + "qualifiedName": "GithubApi.UpdateEnterpriseGroupInfo", + "fullyQualifiedName": "GithubApi.UpdateEnterpriseGroupInfo@1.0.0", + "description": "Replace all information for a provisioned enterprise group.\n\n Use this tool to replace an existing provisioned group's information entirely. All details must be provided anew, as any missing information will result in its removal, including membership. For partial updates, a different endpoint should be used.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "scim_group_identifier", + "type": "string", + "required": false, + "description": "A unique identifier for the SCIM group to update. This is necessary for identifying the specific group to replace its information. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/set-information-for-provisioned-enterprise-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateEnterpriseGroupInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "scim_group_identifier": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"displayName\": \"Developers\", \"members\": [{\"value\": \"user1@example.com\"}, {\"value\": \"user2@example.com\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEnterpriseUserAttribute", + "qualifiedName": "GithubApi.UpdateEnterpriseUserAttribute", + "fullyQualifiedName": "GithubApi.UpdateEnterpriseUserAttribute@1.0.0", + "description": "Update individual attributes for a provisioned enterprise user.\n\n Use this tool to modify attributes of a provisioned user in an enterprise setting using SCIM API operations. It allows adding, removing, or replacing user attributes. Note that complex path selectors and some operations like suspending a user may have specific caveats. Refer to the SCIM specification for operation format guidance.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "scim_user_id", + "type": "string", + "required": false, + "description": "The unique identifier for the SCIM user whose attributes you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/update-attribute-for-enterprise-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateEnterpriseUserAttribute", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "scim_user_id": { + "value": "user-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"schemas\":[\"urn:ietf:params:scim:schemas:core:2.0:User\"],\"id\":\"user-12345\",\"name\":{\"givenName\":\"John\",\"familyName\":\"Doe\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGistComment", + "qualifiedName": "GithubApi.UpdateGistComment", + "fullyQualifiedName": "GithubApi.UpdateGistComment@1.0.0", + "description": "Update an existing comment on a GitHub gist.\n\nUse this tool to update a comment on a specific GitHub gist. Ideal for modifying content of a gist comment when changes are necessary.", + "parameters": [ + { + "name": "comment_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the comment to update.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_text", + "type": "string", + "required": true, + "description": "The text content of the gist comment to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "gist_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the GitHub gist you want to update a comment on.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/update-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGistComment", + "parameters": { + "comment_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "comment_text": { + "value": "Updated comment content for the gist.", + "type": "string", + "required": true + }, + "gist_identifier": { + "value": "abcdef123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubActionsEnvVar", + "qualifiedName": "GithubApi.UpdateGithubActionsEnvVar", + "fullyQualifiedName": "GithubApi.UpdateGithubActionsEnvVar@1.0.0", + "description": "Update an environment variable in GitHub Actions workflow.\n\nUse this tool to update an environment variable within a specified GitHub Actions workflow environment. Requires authentication with a `repo` scope token or GitHub App with `environment:write` permissions.", + "parameters": [ + { + "name": "environment_name", + "type": "string", + "required": true, + "description": "The name of the GitHub Actions workflow environment to update.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the repository to update the environment variable in.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_variable_value", + "type": "string", + "required": false, + "description": "The new value for the GitHub Actions environment variable.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_identifier", + "type": "string", + "required": false, + "description": "The name of the environment variable to update.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": false, + "description": "The name of the environment variable to update in the GitHub Actions workflow.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/update-environment-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubActionsEnvVar", + "parameters": { + "environment_name": { + "value": "production", + "type": "string", + "required": true + }, + "repository_id": { + "value": 123456789, + "type": "integer", + "required": true + }, + "environment_variable_value": { + "value": "new_secret_value", + "type": "string", + "required": false + }, + "variable_identifier": { + "value": "MY_ENV_VAR", + "type": "string", + "required": false + }, + "variable_name": { + "value": "MY_ENV_VAR", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubAppWebhookConfig", + "qualifiedName": "GithubApi.UpdateGithubAppWebhookConfig", + "fullyQualifiedName": "GithubApi.UpdateGithubAppWebhookConfig@1.0.0", + "description": "Update the webhook configuration for a GitHub App.\n\nUse this tool to update the webhook configuration settings for a GitHub App. This requires authentication with a JSON Web Token (JWT).\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'apps/update-webhook-config-for-app'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubAppWebhookConfig", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"url\":\"https://example.com/webhook\",\"content_type\":\"json\",\"secret\":\"mysecret\",\"insecure_ssl\":\"0\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubCodeScanningAlert", + "qualifiedName": "GithubApi.UpdateGithubCodeScanningAlert", + "fullyQualifiedName": "GithubApi.UpdateGithubCodeScanningAlert@1.0.0", + "description": "Update the status of a GitHub code scanning alert.\n\nThis tool updates the status of a code scanning alert on a GitHub repository. It's useful when you need to manage alert statuses for security reasons. Requires appropriate access token scopes.", + "parameters": [ + { + "name": "alert_identifier_number", + "type": "integer", + "required": true, + "description": "The unique number identifying a GitHub code scanning alert, found at the end of the alert URL or in the response of the alerts list.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_state", + "type": "string", + "required": true, + "description": "Specifies the new state of the code scanning alert. Use 'open' or 'dismissed'. Provide `dismissed_reason` if 'dismissed'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This is case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "dismissal_comment", + "type": "string", + "required": false, + "description": "The comment explaining the reason for dismissing the code scanning alert.", + "enum": null, + "inferrable": true + }, + { + "name": "dismissed_reason_for_alert", + "type": "string", + "required": false, + "description": "Required if the alert state is dismissed. Specify the reason using one of: 'None', 'false positive', 'won't fix', 'used in tests'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'code-scanning/update-alert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubCodeScanningAlert", + "parameters": { + "alert_identifier_number": { + "value": 12345, + "type": "integer", + "required": true + }, + "alert_state": { + "value": "dismissed", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "dismissal_comment": { + "value": "This alert is a false positive.", + "type": "string", + "required": false + }, + "dismissed_reason_for_alert": { + "value": "false positive", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubDependabotAlert", + "qualifiedName": "GithubApi.UpdateGithubDependabotAlert", + "fullyQualifiedName": "GithubApi.UpdateGithubDependabotAlert@1.0.0", + "description": "Update a GitHub Dependabot alert.\n\nUse this tool to update a Dependabot alert in a GitHub repository. Requires an access token with `security_events` scope for private repositories or `public_repo` scope for public repositories. GitHub Apps need **Dependabot alerts** write permission.", + "parameters": [ + { + "name": "alert_identifier", + "type": "integer", + "required": true, + "description": "The unique number identifying a Dependabot alert in the repository. Find this at the end of the alert URL or in `number` fields from the `GET /repos/{owner}/{repo}/dependabot/alerts` response.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_state", + "type": "string", + "required": true, + "description": "Specifies the state of the Dependabot alert. Use 'dismissed' to dismiss an alert and 'open' to keep it open. A 'dismissed_reason' is required when setting to 'dismissed'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository to update. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the GitHub repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "dismissed_alert_comment", + "type": "string", + "required": false, + "description": "An optional comment to provide context when dismissing the alert.", + "enum": null, + "inferrable": true + }, + { + "name": "dismissed_reason_for_alert", + "type": "string", + "required": false, + "description": "Reason for dismissing the alert. Required if `state` is set to `dismissed`. Allowed values: 'fix_started', 'inaccurate', 'no_bandwidth', 'not_used', 'tolerable_risk'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/update-alert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubDependabotAlert", + "parameters": { + "alert_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "alert_state": { + "value": "dismissed", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "dismissed_alert_comment": { + "value": "This alert is dismissed due to an inaccurate detection.", + "type": "string", + "required": false + }, + "dismissed_reason_for_alert": { + "value": "inaccurate", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubDiscussionComment", + "qualifiedName": "GithubApi.UpdateGithubDiscussionComment", + "fullyQualifiedName": "GithubApi.UpdateGithubDiscussionComment@1.0.0", + "description": "Updates a GitHub discussion comment's text.\n\nThis tool edits the body text of a discussion comment in a GitHub organization team. Use it when you need to update the content of a comment in a team discussion. Requires OAuth access tokens with `write:discussion` scope.", + "parameters": [ + { + "name": "comment_identifier", + "type": "integer", + "required": true, + "description": "A unique integer identifying the comment to be updated in the discussion.", + "enum": null, + "inferrable": true + }, + { + "name": "discussion_comment_body", + "type": "string", + "required": true, + "description": "The new text for the discussion comment to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "discussion_id", + "type": "integer", + "required": true, + "description": "The unique number identifying the GitHub discussion to update the comment in.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name. This is used to specify the team in the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/update-discussion-comment-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubDiscussionComment", + "parameters": { + "comment_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "discussion_comment_body": { + "value": "Updated comment text to reflect recent changes.", + "type": "string", + "required": true + }, + "discussion_id": { + "value": 67890, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubGist", + "qualifiedName": "GithubApi.UpdateGithubGist", + "fullyQualifiedName": "GithubApi.UpdateGithubGist@1.0.0", + "description": "Update a GitHub gist's description and files.\n\n Use this tool to change the description, update, delete, or rename files in an existing GitHub gist. Unchanged files remain the same.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "gist_unique_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the GitHub gist to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'gists/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubGist", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "gist_unique_identifier": { + "value": "12345abcde67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"description\":\"Updated Gist Description\",\"files\":{\"file1.txt\":{\"content\":\"New content for file 1.\"}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubIssue", + "qualifiedName": "GithubApi.UpdateGithubIssue", + "fullyQualifiedName": "GithubApi.UpdateGithubIssue@1.0.0", + "description": "Update details of a GitHub issue.\n\n Use this tool when you need to update the information of an existing GitHub issue. Suitable for issue owners or users with push access.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the GitHub repository, case insensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository to update the issue in. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_identifier", + "type": "integer", + "required": false, + "description": "The unique number identifying the GitHub issue to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubIssue", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "issue_identifier": { + "value": 42, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Issue Title\", \"body\": \"This issue has been updated with new details.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubIssueComment", + "qualifiedName": "GithubApi.UpdateGithubIssueComment", + "fullyQualifiedName": "GithubApi.UpdateGithubIssueComment@1.0.0", + "description": "Update a comment on a GitHub issue.\n\nThis tool updates a specific comment on a GitHub issue. It should be called when an existing comment needs to be edited or corrected.", + "parameters": [ + { + "name": "comment_contents", + "type": "string", + "required": true, + "description": "The new text for the GitHub issue comment. This will replace the current contents of the comment.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_identifier", + "type": "integer", + "required": true, + "description": "The unique numerical identifier of the GitHub issue comment to update.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/update-comment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubIssueComment", + "parameters": { + "comment_contents": { + "value": "This is the updated comment for the issue.", + "type": "string", + "required": true + }, + "comment_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "MyRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "myusername", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubLabel", + "qualifiedName": "GithubApi.UpdateGithubLabel", + "fullyQualifiedName": "GithubApi.UpdateGithubLabel@1.0.0", + "description": "Update a label on a GitHub repository.\n\nUse this tool to update a label in a specified GitHub repository. It is useful when label details need modification, such as changing the name or color.", + "parameters": [ + { + "name": "current_label_name", + "type": "string", + "required": true, + "description": "The current name of the label to be updated. It should match exactly the label's existing name.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to update the label in. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "label_color_hex_code", + "type": "string", + "required": false, + "description": "The hexadecimal color code for the label, excluding the leading `#`.", + "enum": null, + "inferrable": true + }, + { + "name": "label_description", + "type": "string", + "required": false, + "description": "A short description of the label, limited to 100 characters or fewer.", + "enum": null, + "inferrable": true + }, + { + "name": "new_label_name", + "type": "string", + "required": false, + "description": "The updated label name for the GitHub label. Emojis can be embedded using native or colon-style markup (e.g., :strawberry:). For available emojis, refer to the Emoji cheat sheet.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/update-label'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubLabel", + "parameters": { + "current_label_name": { + "value": "bug", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "label_color_hex_code": { + "value": "ff5722", + "type": "string", + "required": false + }, + "label_description": { + "value": "Indicates a bug in the code", + "type": "string", + "required": false + }, + "new_label_name": { + "value": "bug :beetle:", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubMilestone", + "qualifiedName": "GithubApi.UpdateGithubMilestone", + "fullyQualifiedName": "GithubApi.UpdateGithubMilestone@1.0.0", + "description": "Update a GitHub repository milestone.\n\nUse to modify an existing milestone in a GitHub repository, such as changing due dates, titles, or descriptions.", + "parameters": [ + { + "name": "milestone_id", + "type": "integer", + "required": true, + "description": "The unique number identifying the milestone to update.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone_description", + "type": "string", + "required": false, + "description": "A brief description of the milestone to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone_due_date", + "type": "string", + "required": false, + "description": "The due date for the milestone in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone_state", + "type": "string", + "required": false, + "description": "The state of the milestone. Accepted values are 'open' or 'closed'.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone_title", + "type": "string", + "required": false, + "description": "The title of the milestone to be updated in the GitHub repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issues/update-milestone'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubMilestone", + "parameters": { + "milestone_id": { + "value": 1, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "milestone_description": { + "value": "Update the project plan", + "type": "string", + "required": false + }, + "milestone_due_date": { + "value": "2023-12-31T23:59:59Z", + "type": "string", + "required": false + }, + "milestone_state": { + "value": "open", + "type": "string", + "required": false + }, + "milestone_title": { + "value": "Final Phase", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubOidcTemplate", + "qualifiedName": "GithubApi.UpdateGithubOidcTemplate", + "fullyQualifiedName": "GithubApi.UpdateGithubOidcTemplate@1.0.0", + "description": "Update OIDC custom subject claim template for GitHub organization.\n\nThis tool updates or creates the customization template for an OpenID Connect (OIDC) subject claim for a GitHub organization. Requires an access token with the `write:org` scope or GitHub Apps with `admin:org` permission.", + "parameters": [ + { + "name": "include_claim_keys", + "type": "array", + "innerType": "string", + "required": true, + "description": "Array of unique strings for OIDC claim keys with alphanumeric characters and underscores.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. Case insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'oidc/update-oidc-custom-sub-template-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubOidcTemplate", + "parameters": { + "include_claim_keys": { + "value": ["user_id", "email", "roles"], + "type": "array", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubOrgActionVariable", + "qualifiedName": "GithubApi.UpdateGithubOrgActionVariable", + "fullyQualifiedName": "GithubApi.UpdateGithubOrgActionVariable@1.0.0", + "description": "Update an organization variable in GitHub Actions.\n\nThis tool updates a specified variable for an organization in GitHub Actions workflows. Authentication with an access token having `admin:org` scope or GitHub App with `organization_actions_variables:write` permission is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The GitHub organization's name. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_ids_for_selected_visibility", + "type": "array", + "innerType": "integer", + "required": false, + "description": "An array of repository IDs that can access the organization variable. Only provide when `visibility` is set to `selected`.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_visibility_type", + "type": "string", + "required": false, + "description": "Specifies which repositories in the organization can access the variable. Options: `all`, `private`, `selected`.", + "enum": null, + "inferrable": true + }, + { + "name": "var_name", + "type": "string", + "required": false, + "description": "Specify the name of the GitHub organization variable to update.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": false, + "description": "The name of the organization variable to update. This is case-insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_value", + "type": "string", + "required": false, + "description": "The new value to assign to the organization variable. It must be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/update-org-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubOrgActionVariable", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "repository_ids_for_selected_visibility": { + "value": [123456, 789012], + "type": "array", + "required": false + }, + "repository_visibility_type": { + "value": "selected", + "type": "string", + "required": false + }, + "var_name": { + "value": "MY_VARIABLE", + "type": "string", + "required": false + }, + "variable_name": { + "value": "My_Variable", + "type": "string", + "required": false + }, + "variable_value": { + "value": "new_value", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubOrganization", + "qualifiedName": "GithubApi.UpdateGithubOrganization", + "fullyQualifiedName": "GithubApi.UpdateGithubOrganization@1.0.0", + "description": "Update a GitHub organization's profile and member privileges.\n\n Allows an authenticated organization owner to update the organization's profile and set member privileges using the `admin:org` scope. New parameters enable more granular permissions for repository creation.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": false, + "description": "The GitHub organization name. This is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubOrganization", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"description\": \"An example organization for demonstration purposes.\", \"default_repo_permission\": \"admin\", \"members_can_create_repositories\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubOrgMembership", + "qualifiedName": "GithubApi.UpdateGithubOrgMembership", + "fullyQualifiedName": "GithubApi.UpdateGithubOrgMembership@1.0.0", + "description": "Update your GitHub organization membership settings.\n\nThis tool updates the membership status for the authenticated user in a specified GitHub organization. It is useful for changing your role or settings within an organization.", + "parameters": [ + { + "name": "membership_state", + "type": "string", + "required": true, + "description": "Set the state of the membership. Only accepts \"active\".", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. This should not be case sensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/update-membership-for-authenticated-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubOrgMembership", + "parameters": { + "membership_state": { + "value": "active", + "type": "string", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubOrgName", + "qualifiedName": "GithubApi.UpdateGithubOrgName", + "fullyQualifiedName": "GithubApi.UpdateGithubOrgName@1.0.0", + "description": "Updates the organization name on GitHub Enterprise.\n\nUse this tool to update the name of an organization in GitHub Enterprise Administration. Ideal for managing organizational details in GitHub Enterprise settings.", + "parameters": [ + { + "name": "current_organization_name", + "type": "string", + "required": true, + "description": "The current name of the organization to be updated. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "new_organization_name", + "type": "string", + "required": true, + "description": "The new name for the organization on GitHub Enterprise. This will be the name you want to update to.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/update-org-name'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubOrgName", + "parameters": { + "current_organization_name": { + "value": "OldOrganizationName", + "type": "string", + "required": true + }, + "new_organization_name": { + "value": "NewOrganizationName", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubOrgSecret", + "qualifiedName": "GithubApi.UpdateGithubOrgSecret", + "fullyQualifiedName": "GithubApi.UpdateGithubOrgSecret@1.0.0", + "description": "Create or update a GitHub organization secret.\n\nUse this tool to create or update an organization's secret on GitHub, encrypted with LibSodium. Requires an access token with `admin:org` scope or a GitHub App with `dependabot_secrets` organization permission.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_access_type", + "type": "string", + "required": true, + "description": "Determines which organization repositories can access the secret: 'all', 'private', or 'selected' (which requires specifying `selected_repository_ids`).", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the secret to create or update. This should be a unique identifier for the secret within the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "encrypted_secret_value", + "type": "string", + "required": false, + "description": "The secret value encrypted using LibSodium with the organization public key.", + "enum": null, + "inferrable": true + }, + { + "name": "encryption_key_id", + "type": "string", + "required": false, + "description": "The ID of the key used to encrypt the organization secret, required for security verification.", + "enum": null, + "inferrable": true + }, + { + "name": "selected_repository_ids_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of repository IDs allowed to access the secret. Used when visibility is set to 'selected'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dependabot/create-or-update-org-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubOrgSecret", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "repository_access_type": { + "value": "selected", + "type": "string", + "required": true + }, + "secret_name": { + "value": "MY_SECRET_KEY", + "type": "string", + "required": true + }, + "encrypted_secret_value": { + "value": "gAAAAABgGJc...", + "type": "string", + "required": false + }, + "encryption_key_id": { + "value": "123456", + "type": "string", + "required": false + }, + "selected_repository_ids_to_include": { + "value": [101, 102, 103], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubOrgWebhook", + "qualifiedName": "GithubApi.UpdateGithubOrgWebhook", + "fullyQualifiedName": "GithubApi.UpdateGithubOrgWebhook@1.0.0", + "description": "Update a webhook configured in a GitHub organization.\n\n Use this tool to update a webhook in a GitHub organization. When updating, ensure to provide the current or new secret if one was previously set to avoid its removal.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": false, + "description": "The name of the GitHub organization; not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier of the webhook to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/update-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubOrgWebhook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": false + }, + "webhook_identifier": { + "value": 123456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"url\": \"https://example.com/webhook\", \"content_type\": \"json\", \"insecure_ssl\": \"0\", \"secret\": \"new_secret_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubPagesInfo", + "qualifiedName": "GithubApi.UpdateGithubPagesInfo", + "fullyQualifiedName": "GithubApi.UpdateGithubPagesInfo@1.0.0", + "description": "Update information for a GitHub Pages site.\n\n Use this tool to update settings or information for a GitHub Pages site on a repository. The user must have appropriate permissions, such as repository administrator, maintainer, or 'manage GitHub Pages settings' permission. Requires a token with 'repo' scope or Pages write permission. GitHub Apps need 'administration:write' and 'pages:write' permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/update-information-about-pages-site'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubPagesInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"theme\":\"dark\", \"custom_domain\":\"www.example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubPreReceiveEnvironment", + "qualifiedName": "GithubApi.UpdateGithubPreReceiveEnvironment", + "fullyQualifiedName": "GithubApi.UpdateGithubPreReceiveEnvironment@1.0.0", + "description": "Update a pre-receive environment in GitHub Enterprise.\n\nUse this tool to update a specific pre-receive environment in a GitHub Enterprise setup. Note that the default environment cannot be modified.", + "parameters": [ + { + "name": "pre_receive_environment_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the pre-receive environment to update.", + "enum": null, + "inferrable": true + }, + { + "name": "new_environment_name", + "type": "string", + "required": false, + "description": "The new name for the pre-receive environment.", + "enum": null, + "inferrable": true + }, + { + "name": "tarball_download_url", + "type": "string", + "required": false, + "description": "The URL to download the tarball for the environment update.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/update-pre-receive-environment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubPreReceiveEnvironment", + "parameters": { + "pre_receive_environment_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "new_environment_name": { + "value": "Updated Environment", + "type": "string", + "required": false + }, + "tarball_download_url": { + "value": "https://example.com/tarball/download", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubPreReceiveHook", + "qualifiedName": "GithubApi.UpdateGithubPreReceiveHook", + "fullyQualifiedName": "GithubApi.UpdateGithubPreReceiveHook@1.0.0", + "description": "Update a GitHub enterprise pre-receive hook.\n\n Use this tool to update details of a pre-receive hook in a GitHub enterprise environment. This is useful for modifying hook settings or configurations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "pre_receive_hook_id", + "type": "integer", + "required": false, + "description": "The unique identifier of the pre-receive hook in the GitHub enterprise environment. This is required for updating hook details. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/update-pre-receive-hook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubPreReceiveHook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "pre_receive_hook_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"enabled\": true, \"config\": {\"url\": \"https://example.com/hook\", \"content_type\": \"json\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubProfile", + "qualifiedName": "GithubApi.UpdateGithubProfile", + "fullyQualifiedName": "GithubApi.UpdateGithubProfile@1.0.0", + "description": "Update your authenticated GitHub user profile.\n\nUse this tool to update the profile information of your authenticated GitHub account. Note that if your email is private and included in the update, it will remain hidden according to your privacy settings.", + "parameters": [ + { + "name": "is_hireable", + "type": "boolean", + "required": false, + "description": "Set to true if the user is available for hire, false otherwise.", + "enum": null, + "inferrable": true + }, + { + "name": "new_blog_url", + "type": "string", + "required": false, + "description": "The new blog URL to update on your GitHub profile.", + "enum": null, + "inferrable": true + }, + { + "name": "new_company_name", + "type": "string", + "required": false, + "description": "The new company name to update on the GitHub profile.", + "enum": null, + "inferrable": true + }, + { + "name": "new_location", + "type": "string", + "required": false, + "description": "The location to update in the user’s GitHub profile.", + "enum": null, + "inferrable": true + }, + { + "name": "new_twitter_username", + "type": "string", + "required": false, + "description": "The new Twitter username for the user to update in their GitHub profile.", + "enum": null, + "inferrable": true + }, + { + "name": "new_user_biography", + "type": "string", + "required": false, + "description": "The new short biography of the user for the GitHub profile update.", + "enum": null, + "inferrable": true + }, + { + "name": "new_user_name", + "type": "string", + "required": false, + "description": "The new name to update on the user's GitHub profile.", + "enum": null, + "inferrable": true + }, + { + "name": "public_visible_email_address", + "type": "string", + "required": false, + "description": "The email address you want to be publicly visible on your GitHub profile. If your privacy settings hide your email, it will remain hidden.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/update-authenticated'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubProfile", + "parameters": { + "is_hireable": { + "value": true, + "type": "boolean", + "required": false + }, + "new_blog_url": { + "value": "https://myblog.com", + "type": "string", + "required": false + }, + "new_company_name": { + "value": "Tech Innovations Inc.", + "type": "string", + "required": false + }, + "new_location": { + "value": "San Francisco, CA", + "type": "string", + "required": false + }, + "new_twitter_username": { + "value": "mytwitterhandle", + "type": "string", + "required": false + }, + "new_user_biography": { + "value": "Passionate developer and open-source enthusiast.", + "type": "string", + "required": false + }, + "new_user_name": { + "value": "Jane Doe", + "type": "string", + "required": false + }, + "public_visible_email_address": { + "value": "jane.doe@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubProjectCard", + "qualifiedName": "GithubApi.UpdateGithubProjectCard", + "fullyQualifiedName": "GithubApi.UpdateGithubProjectCard@1.0.0", + "description": "Update an existing project card on GitHub.\n\nUse this tool to modify the details of a project card in a GitHub project. Ideal for updating card information such as changing the note or moving it between columns.", + "parameters": [ + { + "name": "card_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub project card to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "card_note", + "type": "string", + "required": false, + "description": "The text note associated with the project card. It can include details or remarks.", + "enum": null, + "inferrable": true + }, + { + "name": "set_card_archived_status", + "type": "boolean", + "required": false, + "description": "Specify true to archive the card or false to unarchive it.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/update-card'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubProjectCard", + "parameters": { + "card_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "card_note": { + "value": "Updated note with additional context.", + "type": "string", + "required": false + }, + "set_card_archived_status": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubRelease", + "qualifiedName": "GithubApi.UpdateGithubRelease", + "fullyQualifiedName": "GithubApi.UpdateGithubRelease@1.0.0", + "description": "Edit a GitHub release with push access.\n\nUse this tool when you need to modify an existing release on a GitHub repository for which you have push access. It allows updating release information such as the title, description, and other metadata.", + "parameters": [ + { + "name": "release_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier for the GitHub release to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This field is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "commitish_value", + "type": "string", + "required": false, + "description": "Determines the source for the Git tag; can be a branch or commit SHA. Defaults to the repo's default branch if the tag exists.", + "enum": null, + "inferrable": true + }, + { + "name": "is_draft", + "type": "boolean", + "required": false, + "description": "Set to `true` to make the release a draft, `false` to publish it.", + "enum": null, + "inferrable": true + }, + { + "name": "mark_as_prerelease", + "type": "boolean", + "required": false, + "description": "Set `true` to mark the release as a prerelease, or `false` to identify as a full release.", + "enum": null, + "inferrable": true + }, + { + "name": "release_description", + "type": "string", + "required": false, + "description": "Text describing the contents and details of the release tag.", + "enum": null, + "inferrable": true + }, + { + "name": "release_name", + "type": "string", + "required": false, + "description": "The name of the release to be updated in the repository. This is a user-friendly name for the release.", + "enum": null, + "inferrable": true + }, + { + "name": "release_tag_name", + "type": "string", + "required": false, + "description": "The name of the tag for the GitHub release. Used to identify the release version.", + "enum": null, + "inferrable": true + }, + { + "name": "set_as_latest_release", + "type": "boolean", + "required": false, + "description": "Specifies if this release should be the latest. Use 'true', 'false', or 'legacy'. Drafts/prereleases aren't eligible.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/update-release'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubRelease", + "parameters": { + "release_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "commitish_value": { + "value": "main", + "type": "string", + "required": false + }, + "is_draft": { + "value": false, + "type": "boolean", + "required": false + }, + "mark_as_prerelease": { + "value": true, + "type": "boolean", + "required": false + }, + "release_description": { + "value": "This is an example release description.", + "type": "string", + "required": false + }, + "release_name": { + "value": "Example Release v1.2.3", + "type": "string", + "required": false + }, + "release_tag_name": { + "value": "v1.2.3", + "type": "string", + "required": false + }, + "set_as_latest_release": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubRepository", + "qualifiedName": "GithubApi.UpdateGithubRepository", + "fullyQualifiedName": "GithubApi.UpdateGithubRepository@1.0.0", + "description": "Update repository details on GitHub.\n\n This tool updates the details of a specified GitHub repository. Note: To modify a repository's topics, a different endpoint should be used.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository to update, not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubRepository", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"description\": \"Updated repository description\", \"homepage\": \"https://example.com\", \"private\": false}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubRepoTopics", + "qualifiedName": "GithubApi.UpdateGithubRepoTopics", + "fullyQualifiedName": "GithubApi.UpdateGithubRepoTopics@1.0.0", + "description": "Replace topics for a specific GitHub repository.\n\nUse this tool to replace all topics for a specified GitHub repository, allowing easy management and categorization of projects.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the GitHub repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_topic_names", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of topics to replace existing repository topics. To clear all topics, send an empty array. Topics must be lowercase.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/replace-all-topics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubRepoTopics", + "parameters": { + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "repository_topic_names": { + "value": ["javascript", "api", "web-development"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubRepoVariable", + "qualifiedName": "GithubApi.UpdateGithubRepoVariable", + "fullyQualifiedName": "GithubApi.UpdateGithubRepoVariable@1.0.0", + "description": "Update a variable in a GitHub repository for actions workflows.\n\nUse this tool to update a specific variable in a GitHub repository that is used in GitHub Actions workflows. Authentication is required with an access token having `repo` scope or for GitHub Apps with `actions_variables:write` permission.", + "parameters": [ + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "env_variable_name", + "type": "string", + "required": false, + "description": "The name of the variable to update in the GitHub repository.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_variable_value", + "type": "string", + "required": false, + "description": "The new value for the specified repository variable.", + "enum": null, + "inferrable": true + }, + { + "name": "variable_name", + "type": "string", + "required": false, + "description": "The name of the variable in the repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/update-repo-variable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubRepoVariable", + "parameters": { + "repository_name": { + "value": "MyRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "MyUsername", + "type": "string", + "required": true + }, + "env_variable_name": { + "value": "MY_ENV_VAR", + "type": "string", + "required": false + }, + "repository_variable_value": { + "value": "new_value_123", + "type": "string", + "required": false + }, + "variable_name": { + "value": "MY_VARIABLE", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubRepoWebhook", + "qualifiedName": "GithubApi.UpdateGithubRepoWebhook", + "fullyQualifiedName": "GithubApi.UpdateGithubRepoWebhook@1.0.0", + "description": "Update a webhook for a GitHub repository.\n\n This tool updates an existing webhook configured in a GitHub repository. It requires specifying the owner, repository, and hook ID. It is useful for changing webhook configurations or updating secrets.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the GitHub repository to update. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_unique_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier of the webhook to be updated. It must be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/update-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubRepoWebhook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "webhook_unique_identifier": { + "value": 123456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"url\":\"https://example.com/webhook\",\"active\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubRequiredWorkflow", + "qualifiedName": "GithubApi.UpdateGithubRequiredWorkflow", + "fullyQualifiedName": "GithubApi.UpdateGithubRequiredWorkflow@1.0.0", + "description": "Update a required workflow in a GitHub organization.\n\nThis tool updates a specified required workflow within a GitHub organization. It requires an access token with `admin:org` scope for authentication.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "required_workflow_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the required workflow to update in the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_id_for_workflow", + "type": "string", + "required": false, + "description": "The ID of the repository containing the workflow file to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_ids_for_workflow", + "type": "array", + "innerType": "integer", + "required": false, + "description": "List of repository IDs to enable the required workflow. Applicable only if `scope` is `selected`.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_file_path", + "type": "string", + "required": false, + "description": "Path to the workflow file to be set as a required workflow in the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_scope", + "type": "string", + "required": false, + "description": "Specify the repository scope for enabling the workflow: 'all' for all repositories or 'selected' for specific ones within the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/update-required-workflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubRequiredWorkflow", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "required_workflow_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_id_for_workflow": { + "value": "repo-67890", + "type": "string", + "required": false + }, + "repository_ids_for_workflow": { + "value": ["repo-11111", "repo-22222"], + "type": "array", + "required": false + }, + "workflow_file_path": { + "value": ".github/workflows/ci.yml", + "type": "string", + "required": false + }, + "workflow_scope": { + "value": "selected", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubTeam", + "qualifiedName": "GithubApi.UpdateGithubTeam", + "fullyQualifiedName": "GithubApi.UpdateGithubTeam@1.0.0", + "description": "Update a team's details within a GitHub organization.\n\nThis tool allows modifying the details of a specific team within a GitHub organization. The authenticated user must be an organization owner or team maintainer to perform this action. It's intended for updating team information such as name or permissions.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug of the team name, used to uniquely identify the team within the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_team_id", + "type": "integer", + "required": false, + "description": "The ID of the team to set as the parent team for nesting purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "team_description", + "type": "string", + "required": false, + "description": "The description of the team. Provide a concise summary or details for team identification.", + "enum": null, + "inferrable": true + }, + { + "name": "team_name", + "type": "string", + "required": false, + "description": "The new name for the GitHub team within the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "team_privacy_level", + "type": "string", + "required": false, + "description": "Specifies the team's privacy level. Options: 'secret' (visible only to owners and team members) or 'closed' (visible to all organization members). Parent teams cannot be 'secret'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_repository_permission", + "type": "string", + "required": false, + "description": "**Deprecated**. Specifies the default permission for newly added repositories. Options: 'pull', 'push', 'admin'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/update-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubTeam", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "team_slug": { + "value": "dev-team", + "type": "string", + "required": true + }, + "parent_team_id": { + "value": 123456, + "type": "integer", + "required": false + }, + "team_description": { + "value": "This team focuses on software development.", + "type": "string", + "required": false + }, + "team_name": { + "value": "Development Team", + "type": "string", + "required": false + }, + "team_privacy_level": { + "value": "closed", + "type": "string", + "required": false + }, + "team_repository_permission": { + "value": "pull", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGithubUsername", + "qualifiedName": "GithubApi.UpdateGithubUsername", + "fullyQualifiedName": "GithubApi.UpdateGithubUsername@1.0.0", + "description": "Update a GitHub user's username.\n\nUse this tool to change the username for a user in a GitHub enterprise environment.", + "parameters": [ + { + "name": "current_github_username", + "type": "string", + "required": true, + "description": "The current handle of the GitHub user account to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "new_github_username", + "type": "string", + "required": true, + "description": "The new username for the GitHub user account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/update-username-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGithubUsername", + "parameters": { + "current_github_username": { + "value": "john_doe", + "type": "string", + "required": true + }, + "new_github_username": { + "value": "john_doe_updated", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGitReference", + "qualifiedName": "GithubApi.UpdateGitReference", + "fullyQualifiedName": "GithubApi.UpdateGitReference@1.0.0", + "description": "Update a Git reference in a GitHub repository.\n\nUse this tool to update a specific Git reference (e.g., a branch or tag) in a GitHub repository. Call this when you need to modify the target of a reference in a repo.", + "parameters": [ + { + "name": "fully_qualified_reference_name", + "type": "string", + "required": true, + "description": "The fully qualified reference to update, e.g., `refs/heads/master`. Must start with `refs` and include at least two slashes.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository in GitHub. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username or organization name that owns the repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "target_sha1_value", + "type": "string", + "required": true, + "description": "The SHA1 value to set the Git reference to. This should be a valid commit SHA in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "force_update", + "type": "boolean", + "required": false, + "description": "Set to true to force the update and allow overwriting. False ensures a fast-forward update, preventing overwriting.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'git/update-ref'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGitReference", + "parameters": { + "fully_qualified_reference_name": { + "value": "refs/heads/feature-branch", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-user", + "type": "string", + "required": true + }, + "target_sha1_value": { + "value": "abc123def4567890abcdef1234567890abcdef12", + "type": "string", + "required": true + }, + "force_update": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGlobalWebhook", + "qualifiedName": "GithubApi.UpdateGlobalWebhook", + "fullyQualifiedName": "GithubApi.UpdateGlobalWebhook@1.0.0", + "description": "Update a GitHub enterprise global webhook.\n\nUse this tool to modify settings of a global webhook in GitHub Enterprise. Parameters not provided will default or be removed if no default exists.", + "parameters": [ + { + "name": "webhook_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier for the webhook that needs to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "hmac_secret_key", + "type": "string", + "required": false, + "description": "Secret key for generating HMAC hex digest value in `X-Hub-Signature` header.", + "enum": null, + "inferrable": true + }, + { + "name": "payload_delivery_url", + "type": "string", + "required": false, + "description": "The URL where webhook payloads will be delivered for processing.", + "enum": null, + "inferrable": true + }, + { + "name": "payload_media_type", + "type": "string", + "required": false, + "description": "The media type for payload serialization. Supported values: `json`, `form`. Default is `form`.", + "enum": null, + "inferrable": true + }, + { + "name": "send_notifications_on_trigger", + "type": "boolean", + "required": false, + "description": "Set to `true` to send notifications when the webhook is triggered.", + "enum": null, + "inferrable": true + }, + { + "name": "verify_ssl_certificate", + "type": "string", + "required": false, + "description": "Determines SSL certificate verification for payload delivery. Use '0' for verification and '1' to skip (not recommended). Default is '0'.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_trigger_events", + "type": "array", + "innerType": "string", + "required": false, + "description": "The events that trigger the global webhook. Can include 'user', 'organization'. Defaults to both if not specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/update-global-webhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateGlobalWebhook", + "parameters": { + "webhook_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "hmac_secret_key": { + "value": "myHMACSecretKey123", + "type": "string", + "required": false + }, + "payload_delivery_url": { + "value": "https://my-hook-endpoint.com/callback", + "type": "string", + "required": false + }, + "payload_media_type": { + "value": "json", + "type": "string", + "required": false + }, + "send_notifications_on_trigger": { + "value": true, + "type": "boolean", + "required": false + }, + "verify_ssl_certificate": { + "value": "0", + "type": "string", + "required": false + }, + "webhook_trigger_events": { + "value": ["user", "organization"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHookEnforcementForRepo", + "qualifiedName": "GithubApi.UpdateHookEnforcementForRepo", + "fullyQualifiedName": "GithubApi.UpdateHookEnforcementForRepo@1.0.0", + "description": "Update pre-receive hook enforcement for a GitHub repository.\n\nUse this tool to update the enforcement settings of a pre-receive hook configured at the repository level in GitHub. This tool allows adjusting the `enforcement` settings for specific repositories.", + "parameters": [ + { + "name": "pre_receive_hook_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the pre-receive hook to update enforcement settings for.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. This is case insensitive and identifies which repository's hook enforcement settings to update.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "hook_enforcement_state", + "type": "string", + "required": false, + "description": "The desired state of enforcement for the hook on this repository. Options: 'enabled', 'disabled', 'testing'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/update-pre-receive-hook-enforcement-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateHookEnforcementForRepo", + "parameters": { + "pre_receive_hook_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "ExampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "ExampleOwner", + "type": "string", + "required": true + }, + "hook_enforcement_state": { + "value": "enabled", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateLdapMappingForTeam", + "qualifiedName": "GithubApi.UpdateLdapMappingForTeam", + "fullyQualifiedName": "GithubApi.UpdateLdapMappingForTeam@1.0.0", + "description": "Update the LDAP mapping for a GitHub team.\n\nUse this tool to update the distinguished name (DN) of an LDAP entry mapped to a GitHub team. LDAP synchronization must be enabled for this operation.", + "parameters": [ + { + "name": "ldap_distinguished_name", + "type": "string", + "required": true, + "description": "The distinguished name (DN) of the LDAP entry to map to a team. This should be a string following the LDAP DN format.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub team to update LDAP mapping for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/update-ldap-mapping-for-team'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateLdapMappingForTeam", + "parameters": { + "ldap_distinguished_name": { + "value": "cn=example-team,ou=Teams,dc=example,dc=com", + "type": "string", + "required": true + }, + "team_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateLdapMappingForUser", + "qualifiedName": "GithubApi.UpdateLdapMappingForUser", + "fullyQualifiedName": "GithubApi.UpdateLdapMappingForUser@1.0.0", + "description": "Update LDAP mapping for a user in GitHub Enterprise Admin.\n\nThis tool is used to update the LDAP mapping for a specific user in the GitHub Enterprise environment. It should be called when there's a need to modify or correct the LDAP information associated with a user's account.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The handle for the GitHub user account to update the LDAP mapping for.", + "enum": null, + "inferrable": true + }, + { + "name": "ldap_distinguished_name", + "type": "string", + "required": true, + "description": "The distinguished name (DN) of the LDAP entry to map to a team. It should be in a string format as specified [here](https://www.ldap.com/ldap-dns-and-rdns).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/update-ldap-mapping-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateLdapMappingForUser", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "ldap_distinguished_name": { + "value": "cn=John Doe,ou=Users,dc=example,dc=com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateOrCreateGithubFile", + "qualifiedName": "GithubApi.UpdateOrCreateGithubFile", + "fullyQualifiedName": "GithubApi.UpdateOrCreateGithubFile@1.0.0", + "description": "Create or update a file in a GitHub repository.\n\n This tool creates a new file or updates an existing one in a GitHub repository. It requires authentication with an access token having the `workflow` scope. Avoid using this tool concurrently with file deletion to prevent conflicts.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the GitHub repository, not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository. It is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "file_path_in_repository", + "type": "string", + "required": false, + "description": "The file path within the repository where the file will be created or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/create-or-update-file-contents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateOrCreateGithubFile", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "file_path_in_repository": { + "value": "path/to/file.txt", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"content\": \"Hello, World!\", \"commit_message\": \"Add hello world file\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateOrgMembership", + "qualifiedName": "GithubApi.UpdateOrgMembership", + "fullyQualifiedName": "GithubApi.UpdateOrgMembership@1.0.0", + "description": "Manage user membership for a GitHub organization.\n\nThis tool allows authenticated organization owners on GitHub to add members to an organization or update their roles. It sends invitations to new members or modifies the roles of existing ones. Use this tool to manage user roles, either by inviting them or updating their status within the organization.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The handle for the GitHub user account to be added or updated in the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "user_role_in_organization", + "type": "string", + "required": false, + "description": "Specify the user's role in the organization. Options are 'admin' for organization owner, or 'member' for non-owner.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/set-membership-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateOrgMembership", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "organization_name": { + "value": "OpenSourceOrg", + "type": "string", + "required": true + }, + "user_role_in_organization": { + "value": "member", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateOrgSecretRepos", + "qualifiedName": "GithubApi.UpdateOrgSecretRepos", + "fullyQualifiedName": "GithubApi.UpdateOrgSecretRepos@1.0.0", + "description": "Update repositories for an organization secret.\n\nUse this tool to replace all repositories associated with an organization secret when the repository access visibility is set to 'selected'. Authentication with an access token having the 'admin:org' scope or a GitHub App with the 'secrets' organization permission is required.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The organization's name for the secret. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_ids_for_access", + "type": "array", + "innerType": "integer", + "required": true, + "description": "An array of repository IDs allowed to access the organization secret when visibility is set to 'selected'.", + "enum": null, + "inferrable": true + }, + { + "name": "secret_name", + "type": "string", + "required": true, + "description": "The name of the organization secret to update repositories for. This value is case-insensitive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-selected-repos-for-org-secret'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateOrgSecretRepos", + "parameters": { + "organization_name": { + "value": "MyOrg", + "type": "string", + "required": true + }, + "repository_ids_for_access": { + "value": [12345, 67890, 112233], + "type": "array", + "required": true + }, + "secret_name": { + "value": "mySecret", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateOrgWebhookConfig", + "qualifiedName": "GithubApi.UpdateOrgWebhookConfig", + "fullyQualifiedName": "GithubApi.UpdateOrgWebhookConfig@1.0.0", + "description": "Update webhook configuration for a GitHub organization.\n\n This tool updates the webhook configuration for a specific organization on GitHub. It should be called when you need to modify the webhook's settings, excluding \"active\" state and events. Requires `admin:org_hook` scope for tokens or `organization_hooks:write` permission for GitHub Apps.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": false, + "description": "The name of the GitHub organization to update. Case insensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier of the webhook to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'orgs/update-webhook-config-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateOrgWebhookConfig", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_name": { + "value": "example-org", + "type": "string", + "required": false + }, + "webhook_identifier": { + "value": 123456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"config\": {\"url\": \"https://example.com/webhook\", \"content_type\": \"json\"}, \"insecure_ssl\": \"0\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePreReceiveHookEnforcement", + "qualifiedName": "GithubApi.UpdatePreReceiveHookEnforcement", + "fullyQualifiedName": "GithubApi.UpdatePreReceiveHookEnforcement@1.0.0", + "description": "Update pre-receive hook enforcement for a GitHub organization.\n\nThis tool updates the enforcement settings and downstream configuration for pre-receive hooks at the organization level on GitHub. Call this tool to modify enforcement and downstream configuration for a specific pre-receive hook within an organization.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the GitHub organization. It's not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "pre_receive_hook_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the pre-receive hook to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_downstream_configuration", + "type": "boolean", + "required": false, + "description": "Boolean indicating whether repositories can override the enforcement settings of the pre-receive hook.", + "enum": null, + "inferrable": true + }, + { + "name": "enforcement_state", + "type": "string", + "required": false, + "description": "Specify the state of enforcement for the hook on this repository. Possible values may include 'enabled', 'disabled', etc.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/update-pre-receive-hook-enforcement-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdatePreReceiveHookEnforcement", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "pre_receive_hook_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "allow_downstream_configuration": { + "value": true, + "type": "boolean", + "required": false + }, + "enforcement_state": { + "value": "enabled", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateProjectBoard", + "qualifiedName": "GithubApi.UpdateProjectBoard", + "fullyQualifiedName": "GithubApi.UpdateProjectBoard@1.0.0", + "description": "Update a project board's information on GitHub.\n\nThis tool updates the details of a specified project board on GitHub. It should be called when there is a need to modify the information of a project board. Note that a `404` error indicates projects are disabled, while a `401` or `410` error indicates insufficient privileges.", + "parameters": [ + { + "name": "project_unique_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the GitHub project board to update.", + "enum": null, + "inferrable": true + }, + { + "name": "is_private", + "type": "boolean", + "required": false, + "description": "A boolean indicating if the project is private. Set to true for private (not visible to everyone) and false for public.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_permission_level", + "type": "string", + "required": false, + "description": "Sets the baseline permission for all organization members on this project. Options are 'read', 'write', 'admin', or 'none'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_description", + "type": "string", + "required": false, + "description": "A detailed description or content of the project board.", + "enum": null, + "inferrable": true + }, + { + "name": "project_name", + "type": "string", + "required": false, + "description": "The new name for the project board. Must be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "project_state", + "type": "string", + "required": false, + "description": "Specify the state of the project; use 'open' or 'closed'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateProjectBoard", + "parameters": { + "project_unique_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "is_private": { + "value": true, + "type": "boolean", + "required": false + }, + "organization_permission_level": { + "value": "admin", + "type": "string", + "required": false + }, + "project_description": { + "value": "This project board is dedicated to tracking the development of our new app.", + "type": "string", + "required": false + }, + "project_name": { + "value": "New App Development", + "type": "string", + "required": false + }, + "project_state": { + "value": "open", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateProjectColumn", + "qualifiedName": "GithubApi.UpdateProjectColumn", + "fullyQualifiedName": "GithubApi.UpdateProjectColumn@1.0.0", + "description": "Update an existing project column on GitHub.\n\nUse this tool to update details of an existing project column on GitHub. It's applicable when modifications to the project's column are needed, such as changing its name or settings.", + "parameters": [ + { + "name": "column_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier of the project column to update.", + "enum": null, + "inferrable": true + }, + { + "name": "project_column_name", + "type": "string", + "required": true, + "description": "The new name for the project column on GitHub.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'projects/update-column'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateProjectColumn", + "parameters": { + "column_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_column_name": { + "value": "In Progress", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateProvisionedEnterpriseUserInfo", + "qualifiedName": "GithubApi.UpdateProvisionedEnterpriseUserInfo", + "fullyQualifiedName": "GithubApi.UpdateProvisionedEnterpriseUserInfo@1.0.0", + "description": "Update all information for a provisioned enterprise user.\n\n This tool updates the information of an existing provisioned user in an enterprise account using the SCIM API. It requires all user information to be provided as if provisioning the user for the first time. Existing information not included will be removed. Use this for comprehensive updates, and not for partial attribute changes. Note: Setting 'active: false' will suspend the user.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "scim_user_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the SCIM user for updating their information. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/set-information-for-provisioned-enterprise-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateProvisionedEnterpriseUserInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "scim_user_identifier": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"schemas\":[\"urn:ietf:params:scim:schemas:core:2.0:User\"],\"userName\":\"jdoe\",\"name\":{\"familyName\":\"Doe\",\"givenName\":\"John\"},\"emails\":[{\"value\":\"jdoe@example.com\",\"primary\":true}],\"active\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePullRequest", + "qualifiedName": "GithubApi.UpdatePullRequest", + "fullyQualifiedName": "GithubApi.UpdatePullRequest@1.0.0", + "description": "Update an existing pull request on GitHub.\n\nUse this tool to update an existing pull request in a GitHub repository. This can be used when you need to modify the details of a pull request, such as its title, body, or state. Requires write access to the source branch or membership in the owning organization.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to update the pull request in. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. This name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "maintainers_can_modify", + "type": "boolean", + "required": false, + "description": "Boolean value indicating whether maintainers can modify the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_body", + "type": "string", + "required": false, + "description": "Provide the updated content or description for the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_state", + "type": "string", + "required": false, + "description": "Specifies whether the pull request should be 'open' or 'closed'.", + "enum": null, + "inferrable": true + }, + { + "name": "pull_request_title", + "type": "string", + "required": false, + "description": "The new title for the pull request. Use this to update the PR title.", + "enum": null, + "inferrable": true + }, + { + "name": "target_base_branch", + "type": "string", + "required": false, + "description": "The name of the branch where changes should be pulled into. Must be an existing branch on the current repository.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdatePullRequest", + "parameters": { + "pull_request_number": { + "value": 123, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "maintainers_can_modify": { + "value": true, + "type": "boolean", + "required": false + }, + "pull_request_body": { + "value": "Updated description for the pull request.", + "type": "string", + "required": false + }, + "pull_request_state": { + "value": "open", + "type": "string", + "required": false + }, + "pull_request_title": { + "value": "Updated PR title", + "type": "string", + "required": false + }, + "target_base_branch": { + "value": "main", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePullRequestBranch", + "qualifiedName": "GithubApi.UpdatePullRequestBranch", + "fullyQualifiedName": "GithubApi.UpdatePullRequestBranch@1.0.0", + "description": "Update a pull request branch with latest upstream changes.\n\nUse this tool to merge the latest changes from the base branch into a pull request branch, ensuring it is up-to-date with upstream changes.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The unique number that identifies the pull request to update.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "expected_head_sha", + "type": "string", + "required": false, + "description": "The most recent commit SHA of the pull request's HEAD. Must match the pull request's current HEAD to avoid a 422 error.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/update-branch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdatePullRequestBranch", + "parameters": { + "pull_request_number": { + "value": 42, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "expected_head_sha": { + "value": "abc123def456ghi789jkl", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePullRequestReview", + "qualifiedName": "GithubApi.UpdatePullRequestReview", + "fullyQualifiedName": "GithubApi.UpdatePullRequestReview@1.0.0", + "description": "Update the review summary comment on a pull request.\n\nUse this tool to change the content of a review summary comment for a specific pull request on GitHub. This is useful for revising feedback or updating information provided in the review.", + "parameters": [ + { + "name": "pull_request_number", + "type": "integer", + "required": true, + "description": "The unique number that identifies the pull request.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to update the review on. Case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub account owner of the repository, case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "review_body_text", + "type": "string", + "required": true, + "description": "The updated body text for the pull request review.", + "enum": null, + "inferrable": true + }, + { + "name": "review_identifier", + "type": "integer", + "required": true, + "description": "The unique integer ID of the review to be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pulls/update-review'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdatePullRequestReview", + "parameters": { + "pull_request_number": { + "value": 123, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "ExampleRepo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example_owner", + "type": "string", + "required": true + }, + "review_body_text": { + "value": "Updated feedback on the pull request. Please consider the changes suggested.", + "type": "string", + "required": true + }, + "review_identifier": { + "value": 456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePullRequestReviewProtection", + "qualifiedName": "GithubApi.UpdatePullRequestReviewProtection", + "fullyQualifiedName": "GithubApi.UpdatePullRequestReviewProtection@1.0.0", + "description": "Update pull request review protection settings for a branch.\n\n This tool allows updating the pull request review enforcement settings on a protected branch, requiring admin or owner permissions. It applies to branches in both public and private repositories with enabled branch protection settings.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner_name", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository. This value is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name", + "type": "string", + "required": false, + "description": "The name of the branch to update. It must not contain wildcard characters. For wildcard support, use the GraphQL API. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/update-pull-request-review-protection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdatePullRequestReviewProtection", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner_name": { + "value": "exampleOwner", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "branch_name": { + "value": "main", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"require_approving_reviews\": true, \"approving_review_count\": 2}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateRepoActionsPermissions", + "qualifiedName": "GithubApi.UpdateRepoActionsPermissions", + "fullyQualifiedName": "GithubApi.UpdateRepoActionsPermissions@1.0.0", + "description": "Sets GitHub Actions permissions for a repository.\n\nUse this tool to set the GitHub Actions permissions policy for a specific repository. Ideal when you need to enable or restrict actions in a repository under certain conditions. Ensure to authenticate with a token having the `repo` scope or a GitHub App with `administration` permissions.", + "parameters": [ + { + "name": "enable_github_actions", + "type": "boolean", + "required": true, + "description": "Boolean flag indicating if GitHub Actions should be enabled on the repository. `True` enables, `False` disables.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "actions_permission_policy", + "type": "string", + "required": false, + "description": "Defines the policy for actions allowed to run: 'all', 'local_only', or 'selected'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-github-actions-permissions-repository'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateRepoActionsPermissions", + "parameters": { + "enable_github_actions": { + "value": true, + "type": "boolean", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "actions_permission_policy": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateRepoInvitation", + "qualifiedName": "GithubApi.UpdateRepoInvitation", + "fullyQualifiedName": "GithubApi.UpdateRepoInvitation@1.0.0", + "description": "Update a repository invitation on GitHub.\n\nThis tool updates the details of a repository invitation on GitHub. It should be called when you need to change the status or details of an invitation sent to a collaborator for a specific repository.", + "parameters": [ + { + "name": "invitation_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the invitation to be updated. It must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to update the invitation for. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username of the account owner of the repository. It's not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "user_permissions", + "type": "string", + "required": false, + "description": "Specify the permission level for the user on the repository. Valid values are `read`, `write`, `maintain`, `triage`, and `admin`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/update-invitation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateRepoInvitation", + "parameters": { + "invitation_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": true + }, + "user_permissions": { + "value": "write", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateRepoWebhookConfig", + "qualifiedName": "GithubApi.UpdateRepoWebhookConfig", + "fullyQualifiedName": "GithubApi.UpdateRepoWebhookConfig@1.0.0", + "description": "Update GitHub repository webhook configuration settings.\n\n This tool updates the webhook configuration for a specific GitHub repository. It is useful when you need to modify settings such as the payload URL, content type, or secret key of a webhook. Ensure you have appropriate permissions, such as the `write:repo_hook` or `repo` scope for access tokens, or `repository_hooks:write` for GitHub Apps.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": false, + "description": "The account owner of the repository. The name is not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": false, + "description": "The name of the repository. Not case sensitive. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_hook_id", + "type": "integer", + "required": false, + "description": "The unique identifier of the webhook to update in the repository. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'repos/update-webhook-config-for-repo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateRepoWebhookConfig", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "exampleUser", + "type": "string", + "required": false + }, + "repository_name": { + "value": "exampleRepo", + "type": "string", + "required": false + }, + "webhook_hook_id": { + "value": 123456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"url\": \"https://example.com/webhook\", \"content_type\": \"json\", \"secret\": \"secretKey123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateRunnerGroupEnterprise", + "qualifiedName": "GithubApi.UpdateRunnerGroupEnterprise", + "fullyQualifiedName": "GithubApi.UpdateRunnerGroupEnterprise@1.0.0", + "description": "Update the name and visibility of a self-hosted runner group in an enterprise.\n\nUse this tool to update the name and visibility settings of a self-hosted runner group within a GitHub enterprise. This requires authentication with a token that has the 'manage_runners:enterprise' scope.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise to identify which enterprise the runner group belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_id", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner group to update.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_public_repositories", + "type": "boolean", + "required": false, + "description": "Set to true if the runner group can be used by public repositories.", + "enum": null, + "inferrable": true + }, + { + "name": "allowable_workflow_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of workflow names the runner group is allowed to run. Ignored unless `restricted_to_workflows` is set to `true`.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_workflows", + "type": "boolean", + "required": false, + "description": "Set to true to restrict the runner group to only the workflows in the selected_workflows array.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_name", + "type": "string", + "required": false, + "description": "Name of the self-hosted runner group to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_visibility", + "type": "string", + "required": false, + "description": "Specifies whether the runner group is visible to all organizations or only selected ones. Valid values are 'selected' or 'all'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/update-self-hosted-runner-group-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateRunnerGroupEnterprise", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "runner_group_id": { + "value": 1234, + "type": "integer", + "required": true + }, + "allow_public_repositories": { + "value": true, + "type": "boolean", + "required": false + }, + "allowable_workflow_list": { + "value": ["build", "test", "deploy"], + "type": "array", + "required": false + }, + "restrict_to_workflows": { + "value": true, + "type": "boolean", + "required": false + }, + "runner_group_name": { + "value": "new-runner-group-name", + "type": "string", + "required": false + }, + "runner_group_visibility": { + "value": "selected", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateRunnerGroupSettings", + "qualifiedName": "GithubApi.UpdateRunnerGroupSettings", + "fullyQualifiedName": "GithubApi.UpdateRunnerGroupSettings@1.0.0", + "description": "Update name and visibility of a runner group in an organization.\n\nCall this tool to change the name or visibility of a self-hosted runner group within a GitHub organization. Requires authentication with an access token that has the `admin:org` scope.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_id", + "type": "integer", + "required": true, + "description": "Unique identifier of the self-hosted runner group being updated.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_name", + "type": "string", + "required": true, + "description": "The new name for the self-hosted runner group in the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_public_repository_usage", + "type": "boolean", + "required": false, + "description": "Set to `true` to allow the runner group to be used by public repositories.", + "enum": null, + "inferrable": true + }, + { + "name": "allowed_workflow_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of workflows the runner group can run. Ignored unless workflows are restricted.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_runner_group_to_workflows", + "type": "boolean", + "required": false, + "description": "Set to `true` to restrict the runner group to running only the workflows specified in `selected_workflows`.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_visibility", + "type": "string", + "required": false, + "description": "Specifies the visibility of the runner group. Options: 'selected' for individual repositories, 'all' for all repositories, 'private' for all private repositories.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/update-self-hosted-runner-group-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateRunnerGroupSettings", + "parameters": { + "organization_name": { + "value": "example-org", + "type": "string", + "required": true + }, + "runner_group_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "runner_group_name": { + "value": "New Runner Group Name", + "type": "string", + "required": true + }, + "allow_public_repository_usage": { + "value": true, + "type": "boolean", + "required": false + }, + "allowed_workflow_list": { + "value": ["workflow1.yml", "workflow2.yml"], + "type": "array", + "required": false + }, + "restrict_runner_group_to_workflows": { + "value": false, + "type": "boolean", + "required": false + }, + "runner_group_visibility": { + "value": "selected", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSecretScanningAlertStatus", + "qualifiedName": "GithubApi.UpdateSecretScanningAlertStatus", + "fullyQualifiedName": "GithubApi.UpdateSecretScanningAlertStatus@1.0.0", + "description": "Update the status of a secret scanning alert on GitHub.\n\nUse this tool to update the status of a secret scanning alert in a GitHub repository. Requires admin access and a personal access token with the `repo`, `security_events`, or `public_repo` scopes, or a GitHub App with `secret_scanning_alerts` write permission.", + "parameters": [ + { + "name": "alert_identifier", + "type": "integer", + "required": true, + "description": "The unique number identifying the secret scanning alert. Found in the alert URL or the response of `GET /repos/{owner}/{repo}/code-scanning/alerts`.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_state", + "type": "string", + "required": true, + "description": "Set the state of the secret scanning alert to 'open' or 'resolved'. 'Resolution' is required if set to 'resolved'.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. Not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The GitHub username or organization name that owns the repository. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_resolution_comment", + "type": "string", + "required": false, + "description": "An optional comment when closing an alert. Set to `null` if changing the alert state to `open`. Cannot be updated or deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "resolution_reason_for_secret_scanning_alert", + "type": "string", + "required": false, + "description": "Specifies the reason for resolving the alert when the state is set to 'resolved'. Possible values: 'None', 'false_positive', 'wont_fix', 'revoked', 'used_in_tests'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'secret-scanning/update-alert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateSecretScanningAlertStatus", + "parameters": { + "alert_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "alert_state": { + "value": "resolved", + "type": "string", + "required": true + }, + "repository_name": { + "value": "example-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "example-owner", + "type": "string", + "required": true + }, + "alert_resolution_comment": { + "value": "Resolved as a false positive.", + "type": "string", + "required": false + }, + "resolution_reason_for_secret_scanning_alert": { + "value": "false_positive", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSecuritySettingsEnterprise", + "qualifiedName": "GithubApi.UpdateSecuritySettingsEnterprise", + "fullyQualifiedName": "GithubApi.UpdateSecuritySettingsEnterprise@1.0.0", + "description": "Update security and scanning settings for enterprise repositories.\n\nUse this tool to update the advanced security, secret scanning, and push protection settings for new repositories within an enterprise. Ensure you have admin access to the enterprise and an access token with the `admin:enterprise` scope.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug or ID of the enterprise. Accepts the enterprise's slug name or ID for identification.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_dependabot_alerts_for_new_repositories", + "type": "boolean", + "required": false, + "description": "Set to true to automatically enable Dependabot alerts for new repositories.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'secret-scanning/patch-security-analysis-settings-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateSecuritySettingsEnterprise", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise", + "type": "string", + "required": true + }, + "enable_dependabot_alerts_for_new_repositories": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSelfHostedRunnersForOrgGroup", + "qualifiedName": "GithubApi.UpdateSelfHostedRunnersForOrgGroup", + "fullyQualifiedName": "GithubApi.UpdateSelfHostedRunnersForOrgGroup@1.0.0", + "description": "Update self-hosted runners in an organization's runner group.\n\nThis tool allows you to replace the list of self-hosted runners in a specified organization runner group. It requires an access token with the 'admin:org' scope. Use this when you need to manage or update the runners assigned to a runner group in your organization.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_id", + "type": "integer", + "required": true, + "description": "Unique identifier for the self-hosted runner group to update.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_ids_to_add", + "type": "array", + "innerType": "integer", + "required": true, + "description": "Array of integer IDs representing the runners to be added to the organization runner group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions/set-self-hosted-runners-in-group-for-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateSelfHostedRunnersForOrgGroup", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "runner_group_id": { + "value": 1234, + "type": "integer", + "required": true + }, + "runner_ids_to_add": { + "value": [5678, 91011, 1213], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSelfHostedRunnersInGroup", + "qualifiedName": "GithubApi.UpdateSelfHostedRunnersInGroup", + "fullyQualifiedName": "GithubApi.UpdateSelfHostedRunnersInGroup@1.0.0", + "description": "Update self-hosted runners in an enterprise group.\n\nThis tool replaces the list of self-hosted runners in a specified enterprise runner group. It requires authentication with an access token having the `manage_runners:enterprise` scope.", + "parameters": [ + { + "name": "enterprise_identifier", + "type": "string", + "required": true, + "description": "The slug version of the enterprise name or the enterprise ID.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_group_identifier", + "type": "integer", + "required": true, + "description": "Unique identifier for the self-hosted runner group. This integer ID specifies which group to update.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_ids_to_add", + "type": "array", + "innerType": "integer", + "required": true, + "description": "Array of runner IDs to be added to the specified runner group in the enterprise. Each runner ID should be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-admin/set-self-hosted-runners-in-group-for-enterprise'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateSelfHostedRunnersInGroup", + "parameters": { + "enterprise_identifier": { + "value": "my-enterprise-123", + "type": "string", + "required": true + }, + "runner_group_identifier": { + "value": 456, + "type": "integer", + "required": true + }, + "runner_ids_to_add": { + "value": [101, 102, 103], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTeamDiscussion", + "qualifiedName": "GithubApi.UpdateTeamDiscussion", + "fullyQualifiedName": "GithubApi.UpdateTeamDiscussion@1.0.0", + "description": "Edits the title and body of a team discussion post.\n\nUse this tool to update the title and content of a discussion in a GitHub team within an organization. Only the specified fields will be changed. Requires OAuth tokens with `write:discussion` scope.", + "parameters": [ + { + "name": "discussion_id", + "type": "integer", + "required": true, + "description": "The unique number identifying the discussion to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. It is not case sensitive and uniquely identifies the organization on GitHub.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "Provide the slug (URL-friendly version) of the team's name. Case sensitivity is ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "discussion_body_text", + "type": "string", + "required": false, + "description": "The updated body text of the discussion post. Provide the new content you want for the discussion.", + "enum": null, + "inferrable": true + }, + { + "name": "discussion_title", + "type": "string", + "required": false, + "description": "The new title for the discussion post. Only the provided title will be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/update-discussion-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateTeamDiscussion", + "parameters": { + "discussion_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "organization_name": { + "value": "OpenAI", + "type": "string", + "required": true + }, + "team_slug": { + "value": "developers", + "type": "string", + "required": true + }, + "discussion_body_text": { + "value": "This is the updated content for our team discussion.", + "type": "string", + "required": false + }, + "discussion_title": { + "value": "Updated Team Discussion Title", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTeamRepoPermissions", + "qualifiedName": "GithubApi.UpdateTeamRepoPermissions", + "fullyQualifiedName": "GithubApi.UpdateTeamRepoPermissions@1.0.0", + "description": "Manage team repository access and permissions.\n\nUse this tool to add a repository to a team or update a team's permission on a repository within an organization. The caller must have admin access and visibility of the team. The repository should be owned by the organization. Returns a confirmation of the action taken.", + "parameters": [ + { + "name": "organization_name", + "type": "string", + "required": true, + "description": "The name of the organization. This parameter is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository to be managed. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner_account", + "type": "string", + "required": true, + "description": "The account owner of the repository. The name is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug identifier of the team within the organization. It is not case-sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "team_repo_permission", + "type": "string", + "required": false, + "description": "Permission to grant the team on this repository. Options: `pull`, `triage`, `push`, `maintain`, `admin`, or a custom role name defined by the organization. Defaults to team's current permission if unspecified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'teams/add-or-update-repo-permissions-in-org'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UpdateTeamRepoPermissions", + "parameters": { + "organization_name": { + "value": "ExampleOrg", + "type": "string", + "required": true + }, + "repository_name": { + "value": "ExampleRepo", + "type": "string", + "required": true + }, + "repository_owner_account": { + "value": "ExampleOwner", + "type": "string", + "required": true + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": true + }, + "team_repo_permission": { + "value": "maintain", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UploadSarifCodeScanningResults", + "qualifiedName": "GithubApi.UploadSarifCodeScanningResults", + "fullyQualifiedName": "GithubApi.UploadSarifCodeScanningResults@1.0.0", + "description": "Upload SARIF data to GitHub for code scanning results.\n\nThis tool uploads SARIF data from a code scanning analysis to a GitHub repository. Use appropriate access tokens for private or public repositories. Uploaded results appear in pull requests or the repository's security tab, depending on the reference used. SARIF data must be compressed and encoded before uploading.", + "parameters": [ + { + "name": "base64_compressed_sarif_data", + "type": "string", + "required": true, + "description": "A Base64-encoded string of the SARIF file compressed using gzip. Ensure proper encoding before upload.", + "enum": null, + "inferrable": true + }, + { + "name": "commit_sha", + "type": "string", + "required": true, + "description": "The SHA of the commit associated with the uploaded analysis. This links the SARIF data to a specific point in the repository's history.", + "enum": null, + "inferrable": true + }, + { + "name": "git_reference", + "type": "string", + "required": true, + "description": "The full Git reference. Format: `refs/heads/`, `refs/pull//merge`, or `refs/pull//head`.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_name", + "type": "string", + "required": true, + "description": "The name of the repository. It is not case sensitive and identifies where the SARIF data will be uploaded.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_owner", + "type": "string", + "required": true, + "description": "The account owner of the repository on GitHub, not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "analysis_start_time", + "type": "string", + "required": false, + "description": "The timestamp when the analysis run began, in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "enum": null, + "inferrable": true + }, + { + "name": "base_directory_for_analysis", + "type": "string", + "required": false, + "description": "The base directory used in the analysis as it appears in the SARIF file to map file paths correctly.", + "enum": null, + "inferrable": true + }, + { + "name": "tool_name", + "type": "string", + "required": false, + "description": "Specifies the tool name used for generating the code scanning analysis. Defaults to 'API' if not provided. Supports filtering by tool GUID in alerts operations.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'code-scanning/upload-sarif'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UploadSarifCodeScanningResults", + "parameters": { + "base64_compressed_sarif_data": { + "value": "H4sIAAAAAAAA/8xIzcnJz8tLzS1S0Uo1d5Fzj1FtY4qJ1E2ka0Gchb03eP7w8M5z8K8YuwqL6+X5Q==", + "type": "string", + "required": true + }, + "commit_sha": { + "value": "d4f5a6e4c8f287c6c4e5c6f7fee8c3ec8fe0b6ef", + "type": "string", + "required": true + }, + "git_reference": { + "value": "refs/heads/main", + "type": "string", + "required": true + }, + "repository_name": { + "value": "my-repo", + "type": "string", + "required": true + }, + "repository_owner": { + "value": "my-username", + "type": "string", + "required": true + }, + "analysis_start_time": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "base_directory_for_analysis": { + "value": "/src", + "type": "string", + "required": false + }, + "tool_name": { + "value": "CodeQL", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UserFollowingList", + "qualifiedName": "GithubApi.UserFollowingList", + "fullyQualifiedName": "GithubApi.UserFollowingList@1.0.0", + "description": "Retrieve users followed by a specified GitHub user.\n\nCall this tool to get a list of users that a specific GitHub user is following. It is useful for analyzing social connections or activity on GitHub.", + "parameters": [ + { + "name": "github_user_handle", + "type": "string", + "required": true, + "description": "The GitHub username of the account whose followings you want to list.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "The page number of the result set to retrieve. Use this to paginate results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to display per page. Maximum is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["GIT_SERVER_URL"], + "secretsInfo": [ + { + "name": "GIT_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users/list-following-for-user'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GithubApi.UserFollowingList", + "parameters": { + "github_user_handle": { + "value": "johnDoe123", + "type": "string", + "required": true + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## Secrets\n\nAll tools in this toolset require the following secret: `GIT_SERVER_URL` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))\n\nThe `GIT_SERVER_URL` secret specifies the GitHub server URL. Use `https://api.github.com` for regular GitHub.com accounts, or your GitHub Enterprise server URL (e.g., `https://github.your-company.com/api/v3`) for GitHub Enterprise deployments.", + "header": "## Secrets" + }, + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The GithubApi MCP Server uses the Auth Provider with id `arcade-github` to connect to users' GithubApi accounts. In order to use the MCP Server, you will need to configure the `arcade-github` auth provider.\nFor detailed information on configuring the GitHub OAuth provider with Arcade, see the [GitHub Auth Provider documentation](/references/auth-providers/github).", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:36:06.789Z", + "summary": "Arcade Toolkit enables seamless interaction between LLMs and the GitHub API, allowing for efficient management and development of GitHub repositories. It provides developers with tools for automation, collaboration, and project management.\n\n### Capabilities\n- Automate GitHub actions and workflows for repositories.\n- Manage branches, access permissions, and team collaborations.\n- Handle repository secrets, issues, pull requests, and releases.\n- Perform analytics on contributions, notifications, and security alerts.\n- Integrate GitHub Apps and customize environment settings.\n\n### OAuth\n**Provider:** Github \n**Scopes:** None\n\n### Secrets\nThe toolkit supports several types of secrets such as GitHub tokens, webhooks, and environment variables. For example, it allows the management of `GIT_SERVER_URL` securely." +} diff --git a/data/toolkits/gmail.json b/data/toolkits/gmail.json new file mode 100644 index 000000000..ab4b887cd --- /dev/null +++ b/data/toolkits/gmail.json @@ -0,0 +1,1318 @@ +{ + "id": "Gmail", + "label": "Gmail", + "version": "4.1.0", + "description": "Arcade.dev LLM tools for Gmail", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/gmail.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/gmail", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "google", + "allScopes": [ + "https://www.googleapis.com/auth/gmail.compose", + "https://www.googleapis.com/auth/gmail.labels", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.send", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + }, + "tools": [ + { + "name": "ChangeEmailLabels", + "qualifiedName": "Gmail.ChangeEmailLabels", + "fullyQualifiedName": "Gmail.ChangeEmailLabels@4.1.0", + "description": "Add and remove labels from an email using the Gmail API.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The ID of the email to modify labels for", + "enum": null, + "inferrable": true + }, + { + "name": "labels_to_add", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of label names to add", + "enum": null, + "inferrable": true + }, + { + "name": "labels_to_remove", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of label names to remove", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.modify"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Confirmation with labels that were added and removed" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.ChangeEmailLabels", + "parameters": { + "email_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "labels_to_add": { + "value": ["Important", "Work"], + "type": "array", + "required": true + }, + "labels_to_remove": { + "value": ["Spam", "Old"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateLabel", + "qualifiedName": "Gmail.CreateLabel", + "fullyQualifiedName": "Gmail.CreateLabel@4.1.0", + "description": "Create a new label in the user's mailbox.", + "parameters": [ + { + "name": "label_name", + "type": "string", + "required": true, + "description": "The name of the label to create", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.labels"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The created label wrapped in label key" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.CreateLabel", + "parameters": { + "label_name": { + "value": "Important", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteDraftEmail", + "qualifiedName": "Gmail.DeleteDraftEmail", + "fullyQualifiedName": "Gmail.DeleteDraftEmail@4.1.0", + "description": "Delete a draft email using the Gmail API.", + "parameters": [ + { + "name": "draft_email_id", + "type": "string", + "required": true, + "description": "The ID of the draft email to delete", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.compose"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "A confirmation message indicating successful deletion" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.DeleteDraftEmail", + "parameters": { + "draft_email_id": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetThread", + "qualifiedName": "Gmail.GetThread", + "fullyQualifiedName": "Gmail.GetThread@4.1.0", + "description": "Get the specified thread by ID.", + "parameters": [ + { + "name": "thread_id", + "type": "string", + "required": true, + "description": "The ID of the thread to retrieve", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the thread details with dates in descriptive UTC format" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.GetThread", + "parameters": { + "thread_id": { + "value": "16d4ddc3a5c1b2345fxyz7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListDraftEmails", + "qualifiedName": "Gmail.ListDraftEmails", + "fullyQualifiedName": "Gmail.ListDraftEmails@4.1.0", + "description": "Lists draft emails in the user's draft mailbox using the Gmail API.", + "parameters": [ + { + "name": "n_drafts", + "type": "integer", + "required": false, + "description": "Number of draft emails to read (Min 1, Max 100)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of draft email details with dates in descriptive UTC format" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.ListDraftEmails", + "parameters": { + "n_drafts": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEmails", + "qualifiedName": "Gmail.ListEmails", + "fullyQualifiedName": "Gmail.ListEmails@4.1.0", + "description": "Read emails from a Gmail account and extract plain text content.", + "parameters": [ + { + "name": "n_emails", + "type": "integer", + "required": false, + "description": "Number of emails to read (Min 1, Max 100)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of email details with dates in descriptive UTC format" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.ListEmails", + "parameters": { + "n_emails": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEmailsByHeader", + "qualifiedName": "Gmail.ListEmailsByHeader", + "fullyQualifiedName": "Gmail.ListEmailsByHeader@4.1.0", + "description": "Search for emails by header using the Gmail API.", + "parameters": [ + { + "name": "sender", + "type": "string", + "required": false, + "description": "The name or email address of the sender of the email", + "enum": null, + "inferrable": true + }, + { + "name": "recipient", + "type": "string", + "required": false, + "description": "The name or email address of the recipient", + "enum": null, + "inferrable": true + }, + { + "name": "subject", + "type": "string", + "required": false, + "description": "Words to find in the subject of the email", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "Words to find in the body of the email", + "enum": null, + "inferrable": true + }, + { + "name": "date_range", + "type": "string", + "required": false, + "description": "The date range of the email", + "enum": [ + "today", + "yesterday", + "last_7_days", + "last_30_days", + "this_month", + "last_month", + "this_year" + ], + "inferrable": true + }, + { + "name": "label", + "type": "string", + "required": false, + "description": "The label name to filter by", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "The maximum number of emails to return (Min 1, Max 100", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of email details with dates in descriptive UTC format" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.ListEmailsByHeader", + "parameters": { + "sender": { + "value": "example@example.com", + "type": "string", + "required": false + }, + "recipient": { + "value": "recipient@example.com", + "type": "string", + "required": false + }, + "subject": { + "value": "Meeting Reminder", + "type": "string", + "required": false + }, + "body": { + "value": "Project updates", + "type": "string", + "required": false + }, + "date_range": { + "value": "2023/01/01 - 2023/12/31", + "type": "string", + "required": false + }, + "label": { + "value": "Important", + "type": "string", + "required": false + }, + "max_results": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListLabels", + "qualifiedName": "Gmail.ListLabels", + "fullyQualifiedName": "Gmail.ListLabels@4.1.0", + "description": "List all the labels in the user's mailbox.", + "parameters": [], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of label details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.ListLabels", + "parameters": {}, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListThreads", + "qualifiedName": "Gmail.ListThreads", + "fullyQualifiedName": "Gmail.ListThreads@4.1.0", + "description": "List threads in the user's mailbox.", + "parameters": [ + { + "name": "page_token", + "type": "string", + "required": false, + "description": "Page token to retrieve a specific page of results in the list", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "The maximum number of threads to return (Min {MIN_RESULTS}, Max {MAX_RESULTS})", + "enum": null, + "inferrable": true + }, + { + "name": "include_spam_trash", + "type": "boolean", + "required": false, + "description": "Whether to include spam and trash in the results", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of thread details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.ListThreads", + "parameters": { + "page_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "max_results": { + "value": 50, + "type": "integer", + "required": false + }, + "include_spam_trash": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplyToEmail", + "qualifiedName": "Gmail.ReplyToEmail", + "fullyQualifiedName": "Gmail.ReplyToEmail@4.1.0", + "description": "Send a reply to an email message.", + "parameters": [ + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the email", + "enum": null, + "inferrable": true + }, + { + "name": "reply_to_message_id", + "type": "string", + "required": true, + "description": "The ID of the message to reply to", + "enum": null, + "inferrable": true + }, + { + "name": "reply_to_whom", + "type": "string", + "required": false, + "description": "Whether to reply to every recipient (including cc) or only to the original sender. Defaults to 'GmailReplyToWhom.ONLY_THE_SENDER'.", + "enum": ["every_recipient", "only_the_sender"], + "inferrable": true + }, + { + "name": "bcc", + "type": "array", + "innerType": "string", + "required": false, + "description": "BCC recipients of the email", + "enum": null, + "inferrable": true + }, + { + "name": "content_type", + "type": "string", + "required": false, + "description": "The content type of the email body. Defaults to 'plain'", + "enum": ["plain", "html"], + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.send"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the sent email details with date in descriptive UTC format" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.ReplyToEmail", + "parameters": { + "body": { + "value": "Thank you for your email. I appreciate your feedback and will get back to you soon.", + "type": "string", + "required": true + }, + "reply_to_message_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "reply_to_whom": { + "value": "GmailReplyToWhom.REPLY_ALL", + "type": "string", + "required": false + }, + "bcc": { + "value": ["example1@example.com", "example2@example.com"], + "type": "array", + "required": false + }, + "content_type": { + "value": "html", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchThreads", + "qualifiedName": "Gmail.SearchThreads", + "fullyQualifiedName": "Gmail.SearchThreads@4.1.0", + "description": "Search for threads in the user's mailbox", + "parameters": [ + { + "name": "page_token", + "type": "string", + "required": false, + "description": "Page token to retrieve a specific page of results in the list", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "The maximum number of threads to return (Min {MIN_RESULTS}, Max {MAX_RESULTS})", + "enum": null, + "inferrable": true + }, + { + "name": "include_spam_trash", + "type": "boolean", + "required": false, + "description": "Whether to include spam and trash in the results", + "enum": null, + "inferrable": true + }, + { + "name": "label_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of labels to filter by", + "enum": null, + "inferrable": true + }, + { + "name": "sender", + "type": "string", + "required": false, + "description": "The name or email address of the sender of the email", + "enum": null, + "inferrable": true + }, + { + "name": "recipient", + "type": "string", + "required": false, + "description": "The name or email address of the recipient", + "enum": null, + "inferrable": true + }, + { + "name": "subject", + "type": "string", + "required": false, + "description": "Words to find in the subject of the email", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "Words to find in the body of the email", + "enum": null, + "inferrable": true + }, + { + "name": "date_range", + "type": "string", + "required": false, + "description": "The date range of the email", + "enum": [ + "today", + "yesterday", + "last_7_days", + "last_30_days", + "this_month", + "last_month", + "this_year" + ], + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of thread details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.SearchThreads", + "parameters": { + "page_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "max_results": { + "value": 50, + "type": "integer", + "required": false + }, + "include_spam_trash": { + "value": false, + "type": "boolean", + "required": false + }, + "label_ids": { + "value": ["INBOX", "IMPORTANT"], + "type": "array", + "required": false + }, + "sender": { + "value": "example@example.com", + "type": "string", + "required": false + }, + "recipient": { + "value": "recipient@example.com", + "type": "string", + "required": false + }, + "subject": { + "value": "Project Update", + "type": "string", + "required": false + }, + "body": { + "value": "meeting notes", + "type": "string", + "required": false + }, + "date_range": { + "value": "2023-01-01 to 2023-01-31", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendDraftEmail", + "qualifiedName": "Gmail.SendDraftEmail", + "fullyQualifiedName": "Gmail.SendDraftEmail@4.1.0", + "description": "Send a draft email using the Gmail API.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The ID of the draft to send", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.send"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the sent email details with date in descriptive UTC format" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.SendDraftEmail", + "parameters": { + "email_id": { + "value": "abc123xyz789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendEmail", + "qualifiedName": "Gmail.SendEmail", + "fullyQualifiedName": "Gmail.SendEmail@4.1.0", + "description": "Send an email using the Gmail API.", + "parameters": [ + { + "name": "subject", + "type": "string", + "required": true, + "description": "The subject of the email", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the email", + "enum": null, + "inferrable": true + }, + { + "name": "recipient", + "type": "string", + "required": true, + "description": "The recipient of the email", + "enum": null, + "inferrable": true + }, + { + "name": "cc", + "type": "array", + "innerType": "string", + "required": false, + "description": "CC recipients of the email", + "enum": null, + "inferrable": true + }, + { + "name": "bcc", + "type": "array", + "innerType": "string", + "required": false, + "description": "BCC recipients of the email", + "enum": null, + "inferrable": true + }, + { + "name": "content_type", + "type": "string", + "required": false, + "description": "The content type of the email body. Defaults to 'plain'", + "enum": ["plain", "html"], + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.send"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the sent email details with date in descriptive UTC format" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.SendEmail", + "parameters": { + "subject": { + "value": "Meeting Reminder", + "type": "string", + "required": true + }, + "body": { + "value": "Don't forget our meeting tomorrow at 10 AM.", + "type": "string", + "required": true + }, + "recipient": { + "value": "example@example.com", + "type": "string", + "required": true + }, + "cc": { + "value": ["manager@example.com", "assistant@example.com"], + "type": "array", + "required": false + }, + "bcc": { + "value": ["sensitive@example.com"], + "type": "array", + "required": false + }, + "content_type": { + "value": "plain", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TrashEmail", + "qualifiedName": "Gmail.TrashEmail", + "fullyQualifiedName": "Gmail.TrashEmail@4.1.0", + "description": "Move an email to the trash folder using the Gmail API.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The ID of the email to trash", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.modify"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Details of the trashed email with URL to view in Gmail trash folder" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.TrashEmail", + "parameters": { + "email_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateDraftEmail", + "qualifiedName": "Gmail.UpdateDraftEmail", + "fullyQualifiedName": "Gmail.UpdateDraftEmail@4.1.0", + "description": "Update an existing email draft using the Gmail API.", + "parameters": [ + { + "name": "draft_email_id", + "type": "string", + "required": true, + "description": "The ID of the draft email to update.", + "enum": null, + "inferrable": true + }, + { + "name": "subject", + "type": "string", + "required": true, + "description": "The subject of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "recipient", + "type": "string", + "required": true, + "description": "The recipient of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "cc", + "type": "array", + "innerType": "string", + "required": false, + "description": "CC recipients of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "bcc", + "type": "array", + "innerType": "string", + "required": false, + "description": "BCC recipients of the draft email", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.compose"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the updated draft email details with date in descriptive UTC format" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.UpdateDraftEmail", + "parameters": { + "draft_email_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "subject": { + "value": "Meeting Reminder", + "type": "string", + "required": true + }, + "body": { + "value": "Don't forget about our meeting tomorrow at 10 AM.", + "type": "string", + "required": true + }, + "recipient": { + "value": "recipient@example.com", + "type": "string", + "required": true + }, + "cc": { + "value": ["cc1@example.com", "cc2@example.com"], + "type": "array", + "required": false + }, + "bcc": { + "value": ["bcc@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "Gmail.WhoAmI", + "fullyQualifiedName": "Gmail.WhoAmI@4.1.0", + "description": "Get comprehensive user profile and Gmail account information.\n\nThis tool provides detailed information about the authenticated user including\ntheir name, email, profile picture, Gmail account statistics, and other\nimportant profile details from Google services.", + "parameters": [], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [ + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/userinfo.profile", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get comprehensive user profile and Gmail account information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WriteDraftEmail", + "qualifiedName": "Gmail.WriteDraftEmail", + "fullyQualifiedName": "Gmail.WriteDraftEmail@4.1.0", + "description": "Compose a new email draft using the Gmail API.", + "parameters": [ + { + "name": "subject", + "type": "string", + "required": true, + "description": "The subject of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "recipient", + "type": "string", + "required": true, + "description": "The recipient of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "cc", + "type": "array", + "innerType": "string", + "required": false, + "description": "CC recipients of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "bcc", + "type": "array", + "innerType": "string", + "required": false, + "description": "BCC recipients of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "content_type", + "type": "string", + "required": false, + "description": "The content type of the email body. Defaults to 'plain'", + "enum": ["plain", "html"], + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.compose"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the created draft email details with date in descriptive UTC format" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.WriteDraftEmail", + "parameters": { + "subject": { + "value": "Meeting Reminder", + "type": "string", + "required": true + }, + "body": { + "value": "This is a reminder for our meeting scheduled for tomorrow at 10 AM.", + "type": "string", + "required": true + }, + "recipient": { + "value": "john.doe@example.com", + "type": "string", + "required": true + }, + "cc": { + "value": ["jane.smith@example.com"], + "type": "array", + "required": false + }, + "bcc": { + "value": ["manager@example.com"], + "type": "array", + "required": false + }, + "content_type": { + "value": "plain", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WriteDraftReplyEmail", + "qualifiedName": "Gmail.WriteDraftReplyEmail", + "fullyQualifiedName": "Gmail.WriteDraftReplyEmail@4.1.0", + "description": "Compose a draft reply to an email message.", + "parameters": [ + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the draft reply email", + "enum": null, + "inferrable": true + }, + { + "name": "reply_to_message_id", + "type": "string", + "required": true, + "description": "The Gmail message ID of the message to draft a reply to", + "enum": null, + "inferrable": true + }, + { + "name": "reply_to_whom", + "type": "string", + "required": false, + "description": "Whether to reply to every recipient (including cc) or only to the original sender. Defaults to 'GmailReplyToWhom.ONLY_THE_SENDER'.", + "enum": ["every_recipient", "only_the_sender"], + "inferrable": true + }, + { + "name": "bcc", + "type": "array", + "innerType": "string", + "required": false, + "description": "BCC recipients of the draft reply email", + "enum": null, + "inferrable": true + }, + { + "name": "content_type", + "type": "string", + "required": false, + "description": "The content type of the email body. Defaults to 'plain'", + "enum": ["plain", "html"], + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.compose"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing draft reply email details with dates in descriptive UTC format" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Gmail.WriteDraftReplyEmail", + "parameters": { + "body": { + "value": "Thank you for your email. I appreciate your insights and will get back to you soon.", + "type": "string", + "required": true + }, + "reply_to_message_id": { + "value": "1685748392020", + "type": "string", + "required": true + }, + "reply_to_whom": { + "value": "GmailReplyToWhom.REPLY_ALL", + "type": "string", + "required": false + }, + "bcc": { + "value": ["examplebcc@example.com", "anotherbcc@example.com"], + "type": "array", + "required": false + }, + "content_type": { + "value": "html", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Gmail MCP Server uses the [Google auth provider](/references/auth-providers/google) to connect to users' Google accounts.\n---", + "header": "## Auth" + } + ], + "customImports": [ + "import ScopePicker from \"@/app/_components/scope-picker\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:31:27.246Z", + "summary": "Arcade.dev's Gmail toolkit enables seamless integration with the Gmail API, allowing developers to manage emails and labels effectively within their applications.\n\n**Capabilities**\n- Manage email threads and labels.\n- Compose, send, and manage drafts.\n- Retrieve detailed user profile information.\n- Support for email searching and filtering.\n- Efficiently handle email status changes such as trashing.\n\n**OAuth**\n- **Provider**: Google\n- **Scopes**: Access to read, compose, modify, and send Gmail emails, alongside user profile information.\n\n**Secrets**\n- No secret types required for toolkit operation." +} diff --git a/data/toolkits/google.json b/data/toolkits/google.json new file mode 100644 index 000000000..afa1e2871 --- /dev/null +++ b/data/toolkits/google.json @@ -0,0 +1,2894 @@ +{ + "id": "Google", + "label": "Google", + "version": "2.0.2", + "description": "Arcade.dev LLM tools for Google Workspace", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/google.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/google", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "google", + "allScopes": [ + "https://www.googleapis.com/auth/calendar.events", + "https://www.googleapis.com/auth/calendar.readonly", + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/gmail.compose", + "https://www.googleapis.com/auth/gmail.labels", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.send" + ] + }, + "tools": [ + { + "name": "ChangeEmailLabels", + "qualifiedName": "Google.ChangeEmailLabels", + "fullyQualifiedName": "Google.ChangeEmailLabels@2.0.2", + "description": "Add and remove labels from an email using the Gmail API.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The ID of the email to modify labels for", + "enum": null, + "inferrable": true + }, + { + "name": "labels_to_add", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of label names to add", + "enum": null, + "inferrable": true + }, + { + "name": "labels_to_remove", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of label names to remove", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.modify"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List of labels that were added, removed, and not found" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.ChangeEmailLabels", + "parameters": { + "email_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "labels_to_add": { + "value": ["Work", "Important"], + "type": "array", + "required": true + }, + "labels_to_remove": { + "value": ["Spam", "Old"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBlankDocument", + "qualifiedName": "Google.CreateBlankDocument", + "fullyQualifiedName": "Google.CreateBlankDocument@2.0.2", + "description": "Create a blank Google Docs document with the specified title.", + "parameters": [ + { + "name": "title", + "type": "string", + "required": true, + "description": "The title of the blank document to create", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The created document's title, documentId, and documentUrl in a dictionary" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.CreateBlankDocument", + "parameters": { + "title": { + "value": "My New Document", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateContact", + "qualifiedName": "Google.CreateContact", + "fullyQualifiedName": "Google.CreateContact@2.0.2", + "description": "Create a new contact record in Google Contacts.\n\nExamples:\n```\ncreate_contact(given_name=\"Alice\")\ncreate_contact(given_name=\"Alice\", family_name=\"Smith\")\ncreate_contact(given_name=\"Alice\", email=\"alice@example.com\")\n```", + "parameters": [ + { + "name": "given_name", + "type": "string", + "required": true, + "description": "The given name of the contact", + "enum": null, + "inferrable": true + }, + { + "name": "family_name", + "type": "string", + "required": false, + "description": "The optional family name of the contact", + "enum": null, + "inferrable": true + }, + { + "name": "email", + "type": "string", + "required": false, + "description": "The optional email address of the contact", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/contacts"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the details of the created contact" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.CreateContact", + "parameters": { + "given_name": { + "value": "Alice", + "type": "string", + "required": true + }, + "family_name": { + "value": "Smith", + "type": "string", + "required": false + }, + "email": { + "value": "alice@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateDocumentFromText", + "qualifiedName": "Google.CreateDocumentFromText", + "fullyQualifiedName": "Google.CreateDocumentFromText@2.0.2", + "description": "Create a Google Docs document with the specified title and text content.", + "parameters": [ + { + "name": "title", + "type": "string", + "required": true, + "description": "The title of the document to create", + "enum": null, + "inferrable": true + }, + { + "name": "text_content", + "type": "string", + "required": true, + "description": "The text content to insert into the document", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The created document's title, documentId, and documentUrl in a dictionary" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.CreateDocumentFromText", + "parameters": { + "title": { + "value": "Sample Document Title", + "type": "string", + "required": true + }, + "text_content": { + "value": "This is an example of the text content for the Google Document.", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateEvent", + "qualifiedName": "Google.CreateEvent", + "fullyQualifiedName": "Google.CreateEvent@2.0.2", + "description": "Create a new event/meeting/sync/meetup in the specified calendar.", + "parameters": [ + { + "name": "summary", + "type": "string", + "required": true, + "description": "The title of the event", + "enum": null, + "inferrable": true + }, + { + "name": "start_datetime", + "type": "string", + "required": true, + "description": "The datetime when the event starts in ISO 8601 format, e.g., '2024-12-31T15:30:00'.", + "enum": null, + "inferrable": true + }, + { + "name": "end_datetime", + "type": "string", + "required": true, + "description": "The datetime when the event ends in ISO 8601 format, e.g., '2024-12-31T17:30:00'.", + "enum": null, + "inferrable": true + }, + { + "name": "calendar_id", + "type": "string", + "required": false, + "description": "The ID of the calendar to create the event in, usually 'primary'.", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "The description of the event", + "enum": null, + "inferrable": true + }, + { + "name": "location", + "type": "string", + "required": false, + "description": "The location of the event", + "enum": null, + "inferrable": true + }, + { + "name": "visibility", + "type": "string", + "required": false, + "description": "The visibility of the event", + "enum": ["default", "public", "private", "confidential"], + "inferrable": true + }, + { + "name": "attendee_emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "The list of attendee emails. Must be valid email addresses e.g., username@domain.com.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [ + "https://www.googleapis.com/auth/calendar.readonly", + "https://www.googleapis.com/auth/calendar.events" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the created event details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.CreateEvent", + "parameters": { + "summary": { + "value": "Project Kickoff Meeting", + "type": "string", + "required": true + }, + "start_datetime": { + "value": "2024-10-15T10:00:00", + "type": "string", + "required": true + }, + "end_datetime": { + "value": "2024-10-15T11:00:00", + "type": "string", + "required": true + }, + "calendar_id": { + "value": "primary", + "type": "string", + "required": false + }, + "description": { + "value": "A meeting to kick off the new project and discuss objectives.", + "type": "string", + "required": false + }, + "location": { + "value": "Conference Room B", + "type": "string", + "required": false + }, + "visibility": { + "value": "public", + "type": "string", + "required": false + }, + "attendee_emails": { + "value": [ + "alice@example.com", + "bob@example.com", + "charlie@example.com" + ], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateLabel", + "qualifiedName": "Google.CreateLabel", + "fullyQualifiedName": "Google.CreateLabel@2.0.2", + "description": "Create a new label in the user's mailbox.", + "parameters": [ + { + "name": "label_name", + "type": "string", + "required": true, + "description": "The name of the label to create", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.labels"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The details of the created label" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.CreateLabel", + "parameters": { + "label_name": { + "value": "Important Documents", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSpreadsheet", + "qualifiedName": "Google.CreateSpreadsheet", + "fullyQualifiedName": "Google.CreateSpreadsheet@2.0.2", + "description": "Create a new spreadsheet with the provided title and data in its first sheet\n\nReturns the newly created spreadsheet's id and title", + "parameters": [ + { + "name": "title", + "type": "string", + "required": false, + "description": "The title of the new spreadsheet", + "enum": null, + "inferrable": true + }, + { + "name": "data", + "type": "string", + "required": false, + "description": "The data to write to the spreadsheet. A JSON string (property names enclosed in double quotes) representing a dictionary that maps row numbers to dictionaries that map column letters to cell values. For example, data[23]['C'] would be the value of the cell in row 23, column C. Type hint: dict[int, dict[str, Union[int, float, str, bool]]]", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The created spreadsheet's id and title" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.CreateSpreadsheet", + "parameters": { + "title": { + "value": "Quarterly Sales Data", + "type": "string", + "required": false + }, + "data": { + "value": "{\"1\": {\"A\": \"Product\", \"B\": \"Sales\", \"C\": \"Region\"}, \"2\": {\"A\": \"Gadgets\", \"B\": 15000, \"C\": \"North\"}, \"3\": {\"A\": \"Widgets\", \"B\": 12000, \"C\": \"South\"}, \"4\": {\"A\": \"Doodads\", \"B\": 8000, \"C\": \"East\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteDraftEmail", + "qualifiedName": "Google.DeleteDraftEmail", + "fullyQualifiedName": "Google.DeleteDraftEmail@2.0.2", + "description": "Delete a draft email using the Gmail API.", + "parameters": [ + { + "name": "draft_email_id", + "type": "string", + "required": true, + "description": "The ID of the draft email to delete", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.compose"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "A confirmation message indicating successful deletion" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.DeleteDraftEmail", + "parameters": { + "draft_email_id": { + "value": "abc123def456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteEvent", + "qualifiedName": "Google.DeleteEvent", + "fullyQualifiedName": "Google.DeleteEvent@2.0.2", + "description": "Delete an event from Google Calendar.", + "parameters": [ + { + "name": "event_id", + "type": "string", + "required": true, + "description": "The ID of the event to delete", + "enum": null, + "inferrable": true + }, + { + "name": "calendar_id", + "type": "string", + "required": false, + "description": "The ID of the calendar containing the event", + "enum": null, + "inferrable": true + }, + { + "name": "send_updates", + "type": "string", + "required": false, + "description": "Specifies which attendees to notify about the deletion", + "enum": ["none", "all", "externalOnly"], + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/calendar.events"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "A string containing the deletion confirmation message" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.DeleteEvent", + "parameters": { + "event_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "calendar_id": { + "value": "primary", + "type": "string", + "required": false + }, + "send_updates": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FindTimeSlotsWhenEveryoneIsFree", + "qualifiedName": "Google.FindTimeSlotsWhenEveryoneIsFree", + "fullyQualifiedName": "Google.FindTimeSlotsWhenEveryoneIsFree@2.0.2", + "description": "Provides time slots when everyone is free within a given date range and time boundaries.", + "parameters": [ + { + "name": "email_addresses", + "type": "array", + "innerType": "string", + "required": false, + "description": "The list of email addresses from people in the same organization domain (apart from the currently logged in user) to search for free time slots. Defaults to None, which will return free time slots for the current user only.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "The start date to search for time slots in the format 'YYYY-MM-DD'. Defaults to today's date. It will search starting from this date at the time 00:00:00.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date", + "type": "string", + "required": false, + "description": "The end date to search for time slots in the format 'YYYY-MM-DD'. Defaults to seven days from the start date. It will search until this date at the time 23:59:59.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_boundary", + "type": "string", + "required": false, + "description": "Will return free slots in any given day starting from this time in the format 'HH:MM'. Defaults to '08:00', which is a usual business hour start time.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time_boundary", + "type": "string", + "required": false, + "description": "Will return free slots in any given day until this time in the format 'HH:MM'. Defaults to '18:00', which is a usual business hour end time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/calendar.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary with the free slots and the timezone in which time slots are represented." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.FindTimeSlotsWhenEveryoneIsFree", + "parameters": { + "email_addresses": { + "value": ["alice@example.com", "bob@example.com"], + "type": "array", + "required": false + }, + "start_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "end_date": { + "value": "2023-10-07", + "type": "string", + "required": false + }, + "start_time_boundary": { + "value": "09:00", + "type": "string", + "required": false + }, + "end_time_boundary": { + "value": "17:00", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GenerateGoogleFilePickerUrl", + "qualifiedName": "Google.GenerateGoogleFilePickerUrl", + "fullyQualifiedName": "Google.GenerateGoogleFilePickerUrl@2.0.2", + "description": "Generate a Google File Picker URL for user-driven file selection and authorization.\n\nThis tool generates a URL that directs the end-user to a Google File Picker interface where\nwhere they can select or upload Google Drive files. Users can grant permission to access their\nDrive files, providing a secure and authorized way to interact with their files.\n\nThis is particularly useful when prior tools (e.g., those accessing or modifying\nGoogle Docs, Google Sheets, etc.) encountered failures due to file non-existence\n(Requested entity was not found) or permission errors. Once the user completes the file\npicker flow, the prior tool can be retried.", + "parameters": [], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Google File Picker URL for user file selection and permission granting" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.GenerateGoogleFilePickerUrl", + "parameters": {}, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDocumentById", + "qualifiedName": "Google.GetDocumentById", + "fullyQualifiedName": "Google.GetDocumentById@2.0.2", + "description": "Get the latest version of the specified Google Docs document.", + "parameters": [ + { + "name": "document_id", + "type": "string", + "required": true, + "description": "The ID of the document to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The document contents as a dictionary" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.GetDocumentById", + "parameters": { + "document_id": { + "value": "1A2B3C4D5E6F7G8H9I0J", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileTreeStructure", + "qualifiedName": "Google.GetFileTreeStructure", + "fullyQualifiedName": "Google.GetFileTreeStructure@2.0.2", + "description": "Get the file/folder tree structure of the user's Google Drive.", + "parameters": [ + { + "name": "include_shared_drives", + "type": "boolean", + "required": false, + "description": "Whether to include shared drives in the file tree structure. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_shared_drive_id", + "type": "string", + "required": false, + "description": "If provided, only include files from this shared drive in the file tree structure. Defaults to None, which will include files and folders from all drives.", + "enum": null, + "inferrable": true + }, + { + "name": "include_organization_domain_documents", + "type": "boolean", + "required": false, + "description": "Whether to include documents from the organization's domain. This is applicable to admin users who have permissions to view organization-wide documents in a Google Workspace account. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "array", + "innerType": "string", + "required": false, + "description": "Sort order. Defaults to listing the most recently modified documents first", + "enum": [ + "createdTime", + "createdTime desc", + "folder", + "folder desc", + "modifiedByMeTime", + "modifiedByMeTime desc", + "modifiedTime", + "modifiedTime desc", + "name", + "name desc", + "name_natural", + "name_natural desc", + "quotaBytesUsed", + "quotaBytesUsed desc", + "recency", + "recency desc", + "sharedWithMeTime", + "sharedWithMeTime desc", + "starred", + "starred desc", + "viewedByMeTime", + "viewedByMeTime desc" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of files and folders to list. Defaults to None, which will list all files and folders.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the file/folder tree structure in the user's Google Drive" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.GetFileTreeStructure", + "parameters": { + "include_shared_drives": { + "value": true, + "type": "boolean", + "required": false + }, + "restrict_to_shared_drive_id": { + "value": "12345abcde", + "type": "string", + "required": false + }, + "include_organization_domain_documents": { + "value": false, + "type": "boolean", + "required": false + }, + "order_by": { + "value": ["name", "lastModifiedTime"], + "type": "array", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSpreadsheet", + "qualifiedName": "Google.GetSpreadsheet", + "fullyQualifiedName": "Google.GetSpreadsheet@2.0.2", + "description": "Get the user entered values and formatted values for all cells in all sheets in the spreadsheet\nalong with the spreadsheet's properties", + "parameters": [ + { + "name": "spreadsheet_id", + "type": "string", + "required": true, + "description": "The id of the spreadsheet to get", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The spreadsheet properties and data for all sheets in the spreadsheet" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.GetSpreadsheet", + "parameters": { + "spreadsheet_id": { + "value": "1aBcD3EfGhI456jKlMnOpQrStUvWxYz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetThread", + "qualifiedName": "Google.GetThread", + "fullyQualifiedName": "Google.GetThread@2.0.2", + "description": "Get the specified thread by ID.", + "parameters": [ + { + "name": "thread_id", + "type": "string", + "required": true, + "description": "The ID of the thread to retrieve", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the thread details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.GetThread", + "parameters": { + "thread_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "InsertTextAtEndOfDocument", + "qualifiedName": "Google.InsertTextAtEndOfDocument", + "fullyQualifiedName": "Google.InsertTextAtEndOfDocument@2.0.2", + "description": "Updates an existing Google Docs document using the batchUpdate API endpoint.", + "parameters": [ + { + "name": "document_id", + "type": "string", + "required": true, + "description": "The ID of the document to update.", + "enum": null, + "inferrable": true + }, + { + "name": "text_content", + "type": "string", + "required": true, + "description": "The text content to insert into the document", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The response from the batchUpdate API as a dict." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.InsertTextAtEndOfDocument", + "parameters": { + "document_id": { + "value": "1A2B3C4D5E6F7G8H9I0J", + "type": "string", + "required": true + }, + "text_content": { + "value": "This is the text to be added to the end of the document.", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCalendars", + "qualifiedName": "Google.ListCalendars", + "fullyQualifiedName": "Google.ListCalendars@2.0.2", + "description": "List all calendars accessible by the user.", + "parameters": [ + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "The maximum number of calendars to return. Up to 250 calendars, defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "show_deleted", + "type": "boolean", + "required": false, + "description": "Whether to show deleted calendars. Defaults to False", + "enum": null, + "inferrable": true + }, + { + "name": "show_hidden", + "type": "boolean", + "required": false, + "description": "Whether to show hidden calendars. Defaults to False", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to retrieve the next page of calendars. Optional.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [ + "https://www.googleapis.com/auth/calendar.readonly", + "https://www.googleapis.com/auth/calendar.events" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the calendars accessible by the end user" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.ListCalendars", + "parameters": { + "max_results": { + "value": 20, + "type": "integer", + "required": false + }, + "show_deleted": { + "value": false, + "type": "boolean", + "required": false + }, + "show_hidden": { + "value": true, + "type": "boolean", + "required": false + }, + "next_page_token": { + "value": "abc123token", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListDraftEmails", + "qualifiedName": "Google.ListDraftEmails", + "fullyQualifiedName": "Google.ListDraftEmails@2.0.2", + "description": "Lists draft emails in the user's draft mailbox using the Gmail API.", + "parameters": [ + { + "name": "n_drafts", + "type": "integer", + "required": false, + "description": "Number of draft emails to read", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of draft email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.ListDraftEmails", + "parameters": { + "n_drafts": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEmails", + "qualifiedName": "Google.ListEmails", + "fullyQualifiedName": "Google.ListEmails@2.0.2", + "description": "Read emails from a Gmail account and extract plain text content.", + "parameters": [ + { + "name": "n_emails", + "type": "integer", + "required": false, + "description": "Number of emails to read", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.ListEmails", + "parameters": { + "n_emails": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEmailsByHeader", + "qualifiedName": "Google.ListEmailsByHeader", + "fullyQualifiedName": "Google.ListEmailsByHeader@2.0.2", + "description": "Search for emails by header using the Gmail API.\n\nAt least one of the following parameters MUST be provided: sender, recipient,\nsubject, date_range, label, or body.", + "parameters": [ + { + "name": "sender", + "type": "string", + "required": false, + "description": "The name or email address of the sender of the email", + "enum": null, + "inferrable": true + }, + { + "name": "recipient", + "type": "string", + "required": false, + "description": "The name or email address of the recipient", + "enum": null, + "inferrable": true + }, + { + "name": "subject", + "type": "string", + "required": false, + "description": "Words to find in the subject of the email", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "Words to find in the body of the email", + "enum": null, + "inferrable": true + }, + { + "name": "date_range", + "type": "string", + "required": false, + "description": "The date range of the email", + "enum": [ + "today", + "yesterday", + "last_7_days", + "last_30_days", + "this_month", + "last_month", + "this_year" + ], + "inferrable": true + }, + { + "name": "label", + "type": "string", + "required": false, + "description": "The label name to filter by", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "The maximum number of emails to return", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of email details matching the search criteria" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.ListEmailsByHeader", + "parameters": { + "sender": { + "value": "example@example.com", + "type": "string", + "required": false + }, + "recipient": { + "value": "user@domain.com", + "type": "string", + "required": false + }, + "subject": { + "value": "Project Update", + "type": "string", + "required": false + }, + "body": { + "value": "Urgent meeting", + "type": "string", + "required": false + }, + "date_range": { + "value": "2023-01-01 to 2023-12-31", + "type": "string", + "required": false + }, + "label": { + "value": "Important", + "type": "string", + "required": false + }, + "max_results": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEvents", + "qualifiedName": "Google.ListEvents", + "fullyQualifiedName": "Google.ListEvents@2.0.2", + "description": "List events from the specified calendar within the given datetime range.\n\nmin_end_datetime serves as the lower bound (exclusive) for an event's end time.\nmax_start_datetime serves as the upper bound (exclusive) for an event's start time.\n\nFor example:\nIf min_end_datetime is set to 2024-09-15T09:00:00 and max_start_datetime\nis set to 2024-09-16T17:00:00, the function will return events that:\n1. End after 09:00 on September 15, 2024 (exclusive)\n2. Start before 17:00 on September 16, 2024 (exclusive)\nThis means an event starting at 08:00 on September 15 and\nending at 10:00 on September 15 would be included, but an\nevent starting at 17:00 on September 16 would not be included.", + "parameters": [ + { + "name": "min_end_datetime", + "type": "string", + "required": true, + "description": "Filter by events that end on or after this datetime in ISO 8601 format, e.g., '2024-09-15T09:00:00'.", + "enum": null, + "inferrable": true + }, + { + "name": "max_start_datetime", + "type": "string", + "required": true, + "description": "Filter by events that start before this datetime in ISO 8601 format, e.g., '2024-09-16T17:00:00'.", + "enum": null, + "inferrable": true + }, + { + "name": "calendar_id", + "type": "string", + "required": false, + "description": "The ID of the calendar to list events from", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "The maximum number of events to return", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [ + "https://www.googleapis.com/auth/calendar.readonly", + "https://www.googleapis.com/auth/calendar.events" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the list of events" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.ListEvents", + "parameters": { + "min_end_datetime": { + "value": "2024-09-15T09:00:00", + "type": "string", + "required": true + }, + "max_start_datetime": { + "value": "2024-09-16T17:00:00", + "type": "string", + "required": true + }, + "calendar_id": { + "value": "primary", + "type": "string", + "required": false + }, + "max_results": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListLabels", + "qualifiedName": "Google.ListLabels", + "fullyQualifiedName": "Google.ListLabels@2.0.2", + "description": "List all the labels in the user's mailbox.", + "parameters": [], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of label details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.ListLabels", + "parameters": {}, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListThreads", + "qualifiedName": "Google.ListThreads", + "fullyQualifiedName": "Google.ListThreads@2.0.2", + "description": "List threads in the user's mailbox.", + "parameters": [ + { + "name": "page_token", + "type": "string", + "required": false, + "description": "Page token to retrieve a specific page of results in the list", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "The maximum number of threads to return", + "enum": null, + "inferrable": true + }, + { + "name": "include_spam_trash", + "type": "boolean", + "required": false, + "description": "Whether to include spam and trash in the results", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of thread details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.ListThreads", + "parameters": { + "page_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "max_results": { + "value": 20, + "type": "integer", + "required": false + }, + "include_spam_trash": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplyToEmail", + "qualifiedName": "Google.ReplyToEmail", + "fullyQualifiedName": "Google.ReplyToEmail@2.0.2", + "description": "Send a reply to an email message.", + "parameters": [ + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the email", + "enum": null, + "inferrable": true + }, + { + "name": "reply_to_message_id", + "type": "string", + "required": true, + "description": "The ID of the message to reply to", + "enum": null, + "inferrable": true + }, + { + "name": "reply_to_whom", + "type": "string", + "required": false, + "description": "Whether to reply to every recipient (including cc) or only to the original sender. Defaults to 'GmailReplyToWhom.ONLY_THE_SENDER'.", + "enum": ["every_recipient", "only_the_sender"], + "inferrable": true + }, + { + "name": "bcc", + "type": "array", + "innerType": "string", + "required": false, + "description": "BCC recipients of the email", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.send"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the sent email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.ReplyToEmail", + "parameters": { + "body": { + "value": "Thank you for your message. I will get back to you soon.", + "type": "string", + "required": true + }, + "reply_to_message_id": { + "value": "12345abcdef", + "type": "string", + "required": true + }, + "reply_to_whom": { + "value": "GmailReplyToWhom.ONLY_THE_SENDER", + "type": "string", + "required": false + }, + "bcc": { + "value": ["example1@example.com", "example2@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchAndRetrieveDocuments", + "qualifiedName": "Google.SearchAndRetrieveDocuments", + "fullyQualifiedName": "Google.SearchAndRetrieveDocuments@2.0.2", + "description": "Searches for documents in the user's Google Drive and returns a list of documents (with text\ncontent) matching the search criteria. Excludes documents that are in the trash.\n\nNote: use this tool only when the user prompt requires the documents' content. If the user only\nneeds a list of documents, use the `search_documents` tool instead.", + "parameters": [ + { + "name": "return_format", + "type": "string", + "required": false, + "description": "The format of the document to return. Defaults to Markdown.", + "enum": ["markdown", "html", "google_api_json"], + "inferrable": true + }, + { + "name": "document_contains", + "type": "array", + "innerType": "string", + "required": false, + "description": "Keywords or phrases that must be in the document title or body. Provide a list of keywords or phrases if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "document_not_contains", + "type": "array", + "innerType": "string", + "required": false, + "description": "Keywords or phrases that must NOT be in the document title or body. Provide a list of keywords or phrases if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "search_only_in_shared_drive_id", + "type": "string", + "required": false, + "description": "The ID of the shared drive to restrict the search to. If provided, the search will only return documents from this drive. Defaults to None, which searches across all drives.", + "enum": null, + "inferrable": true + }, + { + "name": "include_shared_drives", + "type": "boolean", + "required": false, + "description": "Whether to include documents from shared drives. Defaults to False (searches only in the user's 'My Drive').", + "enum": null, + "inferrable": true + }, + { + "name": "include_organization_domain_documents", + "type": "boolean", + "required": false, + "description": "Whether to include documents from the organization's domain. This is applicable to admin users who have permissions to view organization-wide documents in a Google Workspace account. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "array", + "innerType": "string", + "required": false, + "description": "Sort order. Defaults to listing the most recently modified documents first", + "enum": [ + "createdTime", + "createdTime desc", + "folder", + "folder desc", + "modifiedByMeTime", + "modifiedByMeTime desc", + "modifiedTime", + "modifiedTime desc", + "name", + "name desc", + "name_natural", + "name_natural desc", + "quotaBytesUsed", + "quotaBytesUsed desc", + "recency", + "recency desc", + "sharedWithMeTime", + "sharedWithMeTime desc", + "starred", + "starred desc", + "viewedByMeTime", + "viewedByMeTime desc" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of documents to list", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to continue a previous request", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing 'documents_count' (number of documents returned) and 'documents' (a list of documents with their content)." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.SearchAndRetrieveDocuments", + "parameters": { + "return_format": { + "value": "Markdown", + "type": "string", + "required": false + }, + "document_contains": { + "value": ["project report", "Q2 analysis"], + "type": "array", + "required": false + }, + "document_not_contains": { + "value": ["draft", "confidential"], + "type": "array", + "required": false + }, + "search_only_in_shared_drive_id": { + "value": "abc123sharedDriveID", + "type": "string", + "required": false + }, + "include_shared_drives": { + "value": true, + "type": "boolean", + "required": false + }, + "include_organization_domain_documents": { + "value": false, + "type": "boolean", + "required": false + }, + "order_by": { + "value": ["modifiedTime desc", "name asc"], + "type": "array", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "token123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchContactsByEmail", + "qualifiedName": "Google.SearchContactsByEmail", + "fullyQualifiedName": "Google.SearchContactsByEmail@2.0.2", + "description": "Search the user's contacts in Google Contacts by email address.", + "parameters": [ + { + "name": "email", + "type": "string", + "required": true, + "description": "The email address to search for", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of contacts to return (30 is the max allowed by Google API)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/contacts.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the list of matching contacts" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.SearchContactsByEmail", + "parameters": { + "email": { + "value": "example@example.com", + "type": "string", + "required": true + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchContactsByName", + "qualifiedName": "Google.SearchContactsByName", + "fullyQualifiedName": "Google.SearchContactsByName@2.0.2", + "description": "Search the user's contacts in Google Contacts by name.", + "parameters": [ + { + "name": "name", + "type": "string", + "required": true, + "description": "The full name to search for", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of contacts to return (30 is the max allowed by Google API)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/contacts.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the list of matching contacts" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.SearchContactsByName", + "parameters": { + "name": { + "value": "John Doe", + "type": "string", + "required": true + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchDocuments", + "qualifiedName": "Google.SearchDocuments", + "fullyQualifiedName": "Google.SearchDocuments@2.0.2", + "description": "Searches for documents in the user's Google Drive. Excludes documents that are in the trash.", + "parameters": [ + { + "name": "document_contains", + "type": "array", + "innerType": "string", + "required": false, + "description": "Keywords or phrases that must be in the document title or body. Provide a list of keywords or phrases if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "document_not_contains", + "type": "array", + "innerType": "string", + "required": false, + "description": "Keywords or phrases that must NOT be in the document title or body. Provide a list of keywords or phrases if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "search_only_in_shared_drive_id", + "type": "string", + "required": false, + "description": "The ID of the shared drive to restrict the search to. If provided, the search will only return documents from this drive. Defaults to None, which searches across all drives.", + "enum": null, + "inferrable": true + }, + { + "name": "include_shared_drives", + "type": "boolean", + "required": false, + "description": "Whether to include documents from shared drives. Defaults to False (searches only in the user's 'My Drive').", + "enum": null, + "inferrable": true + }, + { + "name": "include_organization_domain_documents", + "type": "boolean", + "required": false, + "description": "Whether to include documents from the organization's domain. This is applicable to admin users who have permissions to view organization-wide documents in a Google Workspace account. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "array", + "innerType": "string", + "required": false, + "description": "Sort order. Defaults to listing the most recently modified documents first", + "enum": [ + "createdTime", + "createdTime desc", + "folder", + "folder desc", + "modifiedByMeTime", + "modifiedByMeTime desc", + "modifiedTime", + "modifiedTime desc", + "name", + "name desc", + "name_natural", + "name_natural desc", + "quotaBytesUsed", + "quotaBytesUsed desc", + "recency", + "recency desc", + "sharedWithMeTime", + "sharedWithMeTime desc", + "starred", + "starred desc", + "viewedByMeTime", + "viewedByMeTime desc" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of documents to list", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to continue a previous request", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing 'documents_count' (number of documents returned) and 'documents' (a list of document details including 'kind', 'mimeType', 'id', and 'name' for each document)" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.SearchDocuments", + "parameters": { + "document_contains": { + "value": ["report", "2023", "budget"], + "type": "array", + "required": false + }, + "document_not_contains": { + "value": ["draft", "confidential"], + "type": "array", + "required": false + }, + "search_only_in_shared_drive_id": { + "value": "abcdef12345", + "type": "string", + "required": false + }, + "include_shared_drives": { + "value": true, + "type": "boolean", + "required": false + }, + "include_organization_domain_documents": { + "value": false, + "type": "boolean", + "required": false + }, + "order_by": { + "value": ["modifiedTime desc", "name asc"], + "type": "array", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "xyz789", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchThreads", + "qualifiedName": "Google.SearchThreads", + "fullyQualifiedName": "Google.SearchThreads@2.0.2", + "description": "Search for threads in the user's mailbox", + "parameters": [ + { + "name": "page_token", + "type": "string", + "required": false, + "description": "Page token to retrieve a specific page of results in the list", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "The maximum number of threads to return", + "enum": null, + "inferrable": true + }, + { + "name": "include_spam_trash", + "type": "boolean", + "required": false, + "description": "Whether to include spam and trash in the results", + "enum": null, + "inferrable": true + }, + { + "name": "label_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of labels to filter by", + "enum": null, + "inferrable": true + }, + { + "name": "sender", + "type": "string", + "required": false, + "description": "The name or email address of the sender of the email", + "enum": null, + "inferrable": true + }, + { + "name": "recipient", + "type": "string", + "required": false, + "description": "The name or email address of the recipient", + "enum": null, + "inferrable": true + }, + { + "name": "subject", + "type": "string", + "required": false, + "description": "Words to find in the subject of the email", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "Words to find in the body of the email", + "enum": null, + "inferrable": true + }, + { + "name": "date_range", + "type": "string", + "required": false, + "description": "The date range of the email", + "enum": [ + "today", + "yesterday", + "last_7_days", + "last_30_days", + "this_month", + "last_month", + "this_year" + ], + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of thread details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.SearchThreads", + "parameters": { + "page_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "max_results": { + "value": 30, + "type": "integer", + "required": false + }, + "include_spam_trash": { + "value": true, + "type": "boolean", + "required": false + }, + "label_ids": { + "value": ["inbox", "important"], + "type": "array", + "required": false + }, + "sender": { + "value": "example@example.com", + "type": "string", + "required": false + }, + "recipient": { + "value": "recipient@example.com", + "type": "string", + "required": false + }, + "subject": { + "value": "Meeting", + "type": "string", + "required": false + }, + "body": { + "value": "Project update", + "type": "string", + "required": false + }, + "date_range": { + "value": "2023-01-01 to 2023-10-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendDraftEmail", + "qualifiedName": "Google.SendDraftEmail", + "fullyQualifiedName": "Google.SendDraftEmail@2.0.2", + "description": "Send a draft email using the Gmail API.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The ID of the draft to send", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.send"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the sent email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.SendDraftEmail", + "parameters": { + "email_id": { + "value": "abc123def456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendEmail", + "qualifiedName": "Google.SendEmail", + "fullyQualifiedName": "Google.SendEmail@2.0.2", + "description": "Send an email using the Gmail API.", + "parameters": [ + { + "name": "subject", + "type": "string", + "required": true, + "description": "The subject of the email", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the email", + "enum": null, + "inferrable": true + }, + { + "name": "recipient", + "type": "string", + "required": true, + "description": "The recipient of the email", + "enum": null, + "inferrable": true + }, + { + "name": "cc", + "type": "array", + "innerType": "string", + "required": false, + "description": "CC recipients of the email", + "enum": null, + "inferrable": true + }, + { + "name": "bcc", + "type": "array", + "innerType": "string", + "required": false, + "description": "BCC recipients of the email", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.send"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the sent email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.SendEmail", + "parameters": { + "subject": { + "value": "Meeting Reminder", + "type": "string", + "required": true + }, + "body": { + "value": "This is a reminder for our meeting scheduled for tomorrow at 10 AM.", + "type": "string", + "required": true + }, + "recipient": { + "value": "john.doe@example.com", + "type": "string", + "required": true + }, + "cc": { + "value": ["jane.smith@example.com"], + "type": "array", + "required": false + }, + "bcc": { + "value": ["manager@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TrashEmail", + "qualifiedName": "Google.TrashEmail", + "fullyQualifiedName": "Google.TrashEmail@2.0.2", + "description": "Move an email to the trash folder using the Gmail API.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The ID of the email to trash", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.modify"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the trashed email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.TrashEmail", + "parameters": { + "email_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateDraftEmail", + "qualifiedName": "Google.UpdateDraftEmail", + "fullyQualifiedName": "Google.UpdateDraftEmail@2.0.2", + "description": "Update an existing email draft using the Gmail API.", + "parameters": [ + { + "name": "draft_email_id", + "type": "string", + "required": true, + "description": "The ID of the draft email to update.", + "enum": null, + "inferrable": true + }, + { + "name": "subject", + "type": "string", + "required": true, + "description": "The subject of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "recipient", + "type": "string", + "required": true, + "description": "The recipient of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "cc", + "type": "array", + "innerType": "string", + "required": false, + "description": "CC recipients of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "bcc", + "type": "array", + "innerType": "string", + "required": false, + "description": "BCC recipients of the draft email", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.compose"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the updated draft email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.UpdateDraftEmail", + "parameters": { + "draft_email_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "subject": { + "value": "Project Update", + "type": "string", + "required": true + }, + "body": { + "value": "Hi team,\n\nHere are the latest updates on the project.\n\nBest,\nJohn", + "type": "string", + "required": true + }, + "recipient": { + "value": "team@example.com", + "type": "string", + "required": true + }, + "cc": { + "value": ["manager@example.com", "admin@example.com"], + "type": "array", + "required": false + }, + "bcc": { + "value": ["confidential@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEvent", + "qualifiedName": "Google.UpdateEvent", + "fullyQualifiedName": "Google.UpdateEvent@2.0.2", + "description": "Update an existing event in the specified calendar with the provided details.\nOnly the provided fields will be updated; others will remain unchanged.\n\n`updated_start_datetime` and `updated_end_datetime` are\nindependent and can be provided separately.", + "parameters": [ + { + "name": "event_id", + "type": "string", + "required": true, + "description": "The ID of the event to update", + "enum": null, + "inferrable": true + }, + { + "name": "updated_start_datetime", + "type": "string", + "required": false, + "description": "The updated datetime that the event starts in ISO 8601 format, e.g., '2024-12-31T15:30:00'.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_end_datetime", + "type": "string", + "required": false, + "description": "The updated datetime that the event ends in ISO 8601 format, e.g., '2024-12-31T17:30:00'.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_calendar_id", + "type": "string", + "required": false, + "description": "The updated ID of the calendar containing the event.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_summary", + "type": "string", + "required": false, + "description": "The updated title of the event", + "enum": null, + "inferrable": true + }, + { + "name": "updated_description", + "type": "string", + "required": false, + "description": "The updated description of the event", + "enum": null, + "inferrable": true + }, + { + "name": "updated_location", + "type": "string", + "required": false, + "description": "The updated location of the event", + "enum": null, + "inferrable": true + }, + { + "name": "updated_visibility", + "type": "string", + "required": false, + "description": "The visibility of the event", + "enum": ["default", "public", "private", "confidential"], + "inferrable": true + }, + { + "name": "attendee_emails_to_add", + "type": "array", + "innerType": "string", + "required": false, + "description": "The list of attendee emails to add. Must be valid email addresses e.g., username@domain.com.", + "enum": null, + "inferrable": true + }, + { + "name": "attendee_emails_to_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "The list of attendee emails to remove. Must be valid email addresses e.g., username@domain.com.", + "enum": null, + "inferrable": true + }, + { + "name": "send_updates", + "type": "string", + "required": false, + "description": "Should attendees be notified of the update? (none, all, external_only)", + "enum": ["none", "all", "externalOnly"], + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/calendar.events"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "A string containing the updated event details, including the event ID, update timestamp, and a link to view the updated event." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.UpdateEvent", + "parameters": { + "event_id": { + "value": "12345", + "type": "string", + "required": true + }, + "updated_start_datetime": { + "value": "2024-12-31T15:30:00", + "type": "string", + "required": false + }, + "updated_end_datetime": { + "value": "2024-12-31T17:30:00", + "type": "string", + "required": false + }, + "updated_calendar_id": { + "value": "abcde12345", + "type": "string", + "required": false + }, + "updated_summary": { + "value": "New Year Celebration", + "type": "string", + "required": false + }, + "updated_description": { + "value": "Celebrate the New Year with friends and family!", + "type": "string", + "required": false + }, + "updated_location": { + "value": "123 Celebration St, Party City, NY", + "type": "string", + "required": false + }, + "updated_visibility": { + "value": "public", + "type": "string", + "required": false + }, + "attendee_emails_to_add": { + "value": ["friend@example.com", "family@example.com"], + "type": "array", + "required": false + }, + "attendee_emails_to_remove": { + "value": ["old_friend@example.com"], + "type": "array", + "required": false + }, + "send_updates": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WriteDraftEmail", + "qualifiedName": "Google.WriteDraftEmail", + "fullyQualifiedName": "Google.WriteDraftEmail@2.0.2", + "description": "Compose a new email draft using the Gmail API.", + "parameters": [ + { + "name": "subject", + "type": "string", + "required": true, + "description": "The subject of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "recipient", + "type": "string", + "required": true, + "description": "The recipient of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "cc", + "type": "array", + "innerType": "string", + "required": false, + "description": "CC recipients of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "bcc", + "type": "array", + "innerType": "string", + "required": false, + "description": "BCC recipients of the draft email", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.compose"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the created draft email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.WriteDraftEmail", + "parameters": { + "subject": { + "value": "Meeting Confirmation", + "type": "string", + "required": true + }, + "body": { + "value": "Hi team,\n\nJust a reminder about our meeting scheduled for tomorrow at 10 AM. Please be prepared with your updates.\n\nBest,\nJohn", + "type": "string", + "required": true + }, + "recipient": { + "value": "team@example.com", + "type": "string", + "required": true + }, + "cc": { + "value": ["manager@example.com"], + "type": "array", + "required": false + }, + "bcc": { + "value": ["admin@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WriteDraftReplyEmail", + "qualifiedName": "Google.WriteDraftReplyEmail", + "fullyQualifiedName": "Google.WriteDraftReplyEmail@2.0.2", + "description": "Compose a draft reply to an email message.", + "parameters": [ + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the draft reply email", + "enum": null, + "inferrable": true + }, + { + "name": "reply_to_message_id", + "type": "string", + "required": true, + "description": "The Gmail message ID of the message to draft a reply to", + "enum": null, + "inferrable": true + }, + { + "name": "reply_to_whom", + "type": "string", + "required": false, + "description": "Whether to reply to every recipient (including cc) or only to the original sender. Defaults to 'GmailReplyToWhom.ONLY_THE_SENDER'.", + "enum": ["every_recipient", "only_the_sender"], + "inferrable": true + }, + { + "name": "bcc", + "type": "array", + "innerType": "string", + "required": false, + "description": "BCC recipients of the draft reply email", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/gmail.compose"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the created draft reply email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.WriteDraftReplyEmail", + "parameters": { + "body": { + "value": "Thank you for your email. I appreciate your insights and will get back to you shortly.", + "type": "string", + "required": true + }, + "reply_to_message_id": { + "value": "1627384950123", + "type": "string", + "required": true + }, + "reply_to_whom": { + "value": "GmailReplyToWhom.REPLY_ALL", + "type": "string", + "required": false + }, + "bcc": { + "value": ["example1@example.com", "example2@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WriteToCell", + "qualifiedName": "Google.WriteToCell", + "fullyQualifiedName": "Google.WriteToCell@2.0.2", + "description": "Write a value to a single cell in a spreadsheet.", + "parameters": [ + { + "name": "spreadsheet_id", + "type": "string", + "required": true, + "description": "The id of the spreadsheet to write to", + "enum": null, + "inferrable": true + }, + { + "name": "column", + "type": "string", + "required": true, + "description": "The column string to write to. For example, 'A', 'F', or 'AZ'", + "enum": null, + "inferrable": true + }, + { + "name": "row", + "type": "integer", + "required": true, + "description": "The row number to write to", + "enum": null, + "inferrable": true + }, + { + "name": "value", + "type": "string", + "required": true, + "description": "The value to write to the cell", + "enum": null, + "inferrable": true + }, + { + "name": "sheet_name", + "type": "string", + "required": false, + "description": "The name of the sheet to write to. Defaults to 'Sheet1'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The status of the operation" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Google.WriteToCell", + "parameters": { + "spreadsheet_id": { + "value": "1A2B3C4D5E6F7G8H9I0J", + "type": "string", + "required": true + }, + "column": { + "value": "B", + "type": "string", + "required": true + }, + "row": { + "value": 5, + "type": "integer", + "required": true + }, + "value": { + "value": "Hello, World!", + "type": "string", + "required": true + }, + "sheet_name": { + "value": "Sheet1", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:31:47.092Z", + "summary": "Arcade.dev provides tools for integrating with Google Workspace, enabling developers to automate tasks and enhance productivity through access to various Google services.\n\n### Capabilities\n- Manage calendar events, including creation, deletion, and updates.\n- Access and manipulate Gmail functionalities, such as sending emails and organizing threads and labels.\n- Interact with Google Drive for file management, including document creation and retrieval.\n- Create and manage contacts within Google Contacts seamlessly.\n\n### OAuth\nUses Google OAuth 2.0 for authentication, requiring the following scopes: \n- `https://www.googleapis.com/auth/calendar.events` \n- `https://www.googleapis.com/auth/contacts` \n- `https://www.googleapis.com/auth/gmail.*`\n\n### Secrets\nNo secrets are utilized in this toolkit." +} diff --git a/data/toolkits/googlecalendar.json b/data/toolkits/googlecalendar.json new file mode 100644 index 000000000..8e100ea35 --- /dev/null +++ b/data/toolkits/googlecalendar.json @@ -0,0 +1,755 @@ +{ + "id": "GoogleCalendar", + "label": "Google Calendar", + "version": "3.2.2", + "description": "Arcade.dev LLM tools for Google Calendar", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/google-calendar.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/google-calendar", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "google", + "allScopes": [ + "https://www.googleapis.com/auth/calendar.events", + "https://www.googleapis.com/auth/calendar.readonly", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + }, + "tools": [ + { + "name": "CreateEvent", + "qualifiedName": "GoogleCalendar.CreateEvent", + "fullyQualifiedName": "GoogleCalendar.CreateEvent@3.2.2", + "description": "Create a new event/meeting/sync/meetup in the specified calendar.", + "parameters": [ + { + "name": "summary", + "type": "string", + "required": true, + "description": "The title of the event", + "enum": null, + "inferrable": true + }, + { + "name": "start_datetime", + "type": "string", + "required": true, + "description": "The datetime when the event starts in ISO 8601 format, e.g., '2024-12-31T15:30:00'.", + "enum": null, + "inferrable": true + }, + { + "name": "end_datetime", + "type": "string", + "required": true, + "description": "The datetime when the event ends in ISO 8601 format, e.g., '2024-12-31T17:30:00'.", + "enum": null, + "inferrable": true + }, + { + "name": "calendar_id", + "type": "string", + "required": false, + "description": "The ID of the calendar to create the event in, usually 'primary'.", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "The description of the event", + "enum": null, + "inferrable": true + }, + { + "name": "location", + "type": "string", + "required": false, + "description": "The location of the event", + "enum": null, + "inferrable": true + }, + { + "name": "visibility", + "type": "string", + "required": false, + "description": "The visibility of the event", + "enum": ["default", "public", "private", "confidential"], + "inferrable": true + }, + { + "name": "attendee_emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "The list of attendee emails. Must be valid email addresses e.g., username@domain.com.", + "enum": null, + "inferrable": true + }, + { + "name": "send_notifications_to_attendees", + "type": "string", + "required": false, + "description": "Should attendees be notified by email of the invitation? (none, all, external_only)", + "enum": ["none", "all", "externalOnly"], + "inferrable": true + }, + { + "name": "add_google_meet", + "type": "boolean", + "required": false, + "description": "Whether to add a Google Meet link to the event. Defaults to False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [ + "https://www.googleapis.com/auth/calendar.readonly", + "https://www.googleapis.com/auth/calendar.events" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the created event details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleCalendar.CreateEvent", + "parameters": { + "summary": { + "value": "Project Kickoff Meeting", + "type": "string", + "required": true + }, + "start_datetime": { + "value": "2024-05-15T10:00:00", + "type": "string", + "required": true + }, + "end_datetime": { + "value": "2024-05-15T11:00:00", + "type": "string", + "required": true + }, + "calendar_id": { + "value": "primary", + "type": "string", + "required": false + }, + "description": { + "value": "Kickoff meeting for the new project to discuss goals and deadlines.", + "type": "string", + "required": false + }, + "location": { + "value": "Conference Room A", + "type": "string", + "required": false + }, + "visibility": { + "value": "default", + "type": "string", + "required": false + }, + "attendee_emails": { + "value": ["alice@example.com", "bob@example.com"], + "type": "array", + "required": false + }, + "send_notifications_to_attendees": { + "value": "all", + "type": "string", + "required": false + }, + "add_google_meet": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteEvent", + "qualifiedName": "GoogleCalendar.DeleteEvent", + "fullyQualifiedName": "GoogleCalendar.DeleteEvent@3.2.2", + "description": "Delete an event from Google Calendar.", + "parameters": [ + { + "name": "event_id", + "type": "string", + "required": true, + "description": "The ID of the event to delete", + "enum": null, + "inferrable": true + }, + { + "name": "calendar_id", + "type": "string", + "required": false, + "description": "The ID of the calendar containing the event", + "enum": null, + "inferrable": true + }, + { + "name": "send_updates", + "type": "string", + "required": false, + "description": "Specifies which attendees to notify about the deletion", + "enum": ["none", "all", "externalOnly"], + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/calendar.events"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "A string containing the deletion confirmation message" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleCalendar.DeleteEvent", + "parameters": { + "event_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "calendar_id": { + "value": "primary", + "type": "string", + "required": false + }, + "send_updates": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FindTimeSlotsWhenEveryoneIsFree", + "qualifiedName": "GoogleCalendar.FindTimeSlotsWhenEveryoneIsFree", + "fullyQualifiedName": "GoogleCalendar.FindTimeSlotsWhenEveryoneIsFree@3.2.2", + "description": "Provides time slots when everyone is free within a given date range and time boundaries.", + "parameters": [ + { + "name": "email_addresses", + "type": "array", + "innerType": "string", + "required": false, + "description": "The list of email addresses from people in the same organization domain (apart from the currently logged in user) to search for free time slots. Defaults to None, which will return free time slots for the current user only.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "The start date to search for time slots in the format 'YYYY-MM-DD'. Defaults to today's date. It will search starting from this date at the time 00:00:00.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date", + "type": "string", + "required": false, + "description": "The end date to search for time slots in the format 'YYYY-MM-DD'. Defaults to seven days from the start date. It will search until this date at the time 23:59:59.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_boundary", + "type": "string", + "required": false, + "description": "Will return free slots in any given day starting from this time in the format 'HH:MM'. Defaults to '08:00', which is a usual business hour start time.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time_boundary", + "type": "string", + "required": false, + "description": "Will return free slots in any given day until this time in the format 'HH:MM'. Defaults to '18:00', which is a usual business hour end time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/calendar.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary with the free slots and the timezone in which time slots are represented." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleCalendar.FindTimeSlotsWhenEveryoneIsFree", + "parameters": { + "email_addresses": { + "value": ["jane.doe@example.com", "john.smith@example.com"], + "type": "array", + "required": false + }, + "start_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "end_date": { + "value": "2023-10-07", + "type": "string", + "required": false + }, + "start_time_boundary": { + "value": "09:00", + "type": "string", + "required": false + }, + "end_time_boundary": { + "value": "17:00", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCalendars", + "qualifiedName": "GoogleCalendar.ListCalendars", + "fullyQualifiedName": "GoogleCalendar.ListCalendars@3.2.2", + "description": "List all calendars accessible by the user.", + "parameters": [ + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "The maximum number of calendars to return. Up to 250 calendars, defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "show_deleted", + "type": "boolean", + "required": false, + "description": "Whether to show deleted calendars. Defaults to False", + "enum": null, + "inferrable": true + }, + { + "name": "show_hidden", + "type": "boolean", + "required": false, + "description": "Whether to show hidden calendars. Defaults to False", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to retrieve the next page of calendars. Optional.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [ + "https://www.googleapis.com/auth/calendar.readonly", + "https://www.googleapis.com/auth/calendar.events" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the calendars accessible by the end user" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleCalendar.ListCalendars", + "parameters": { + "max_results": { + "value": 15, + "type": "integer", + "required": false + }, + "show_deleted": { + "value": false, + "type": "boolean", + "required": false + }, + "show_hidden": { + "value": true, + "type": "boolean", + "required": false + }, + "next_page_token": { + "value": "token1234", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEvents", + "qualifiedName": "GoogleCalendar.ListEvents", + "fullyQualifiedName": "GoogleCalendar.ListEvents@3.2.2", + "description": "List events from the specified calendar within the given datetime range.\n\nmin_end_datetime serves as the lower bound (exclusive) for an event's end time.\nmax_start_datetime serves as the upper bound (exclusive) for an event's start time.\n\nFor example:\nIf min_end_datetime is set to 2024-09-15T09:00:00 and max_start_datetime\nis set to 2024-09-16T17:00:00, the function will return events that:\n1. End after 09:00 on September 15, 2024 (exclusive)\n2. Start before 17:00 on September 16, 2024 (exclusive)\nThis means an event starting at 08:00 on September 15 and\nending at 10:00 on September 15 would be included, but an\nevent starting at 17:00 on September 16 would not be included.", + "parameters": [ + { + "name": "min_end_datetime", + "type": "string", + "required": true, + "description": "Filter by events that end on or after this datetime in ISO 8601 format, e.g., '2024-09-15T09:00:00'.", + "enum": null, + "inferrable": true + }, + { + "name": "max_start_datetime", + "type": "string", + "required": true, + "description": "Filter by events that start before this datetime in ISO 8601 format, e.g., '2024-09-16T17:00:00'.", + "enum": null, + "inferrable": true + }, + { + "name": "calendar_id", + "type": "string", + "required": false, + "description": "The ID of the calendar to list events from", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "The maximum number of events to return", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [ + "https://www.googleapis.com/auth/calendar.readonly", + "https://www.googleapis.com/auth/calendar.events" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the list of events" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleCalendar.ListEvents", + "parameters": { + "min_end_datetime": { + "value": "2024-09-15T09:00:00", + "type": "string", + "required": true + }, + "max_start_datetime": { + "value": "2024-09-16T17:00:00", + "type": "string", + "required": true + }, + "calendar_id": { + "value": "primary", + "type": "string", + "required": false + }, + "max_results": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEvent", + "qualifiedName": "GoogleCalendar.UpdateEvent", + "fullyQualifiedName": "GoogleCalendar.UpdateEvent@3.2.2", + "description": "Update an existing event in the specified calendar with the provided details.\nOnly the provided fields will be updated; others will remain unchanged.\n\n`updated_start_datetime` and `updated_end_datetime` are\nindependent and can be provided separately.", + "parameters": [ + { + "name": "event_id", + "type": "string", + "required": true, + "description": "The ID of the event to update", + "enum": null, + "inferrable": true + }, + { + "name": "updated_start_datetime", + "type": "string", + "required": false, + "description": "The updated datetime that the event starts in ISO 8601 format, e.g., '2024-12-31T15:30:00'.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_end_datetime", + "type": "string", + "required": false, + "description": "The updated datetime that the event ends in ISO 8601 format, e.g., '2024-12-31T17:30:00'.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_calendar_id", + "type": "string", + "required": false, + "description": "The updated ID of the calendar containing the event.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_summary", + "type": "string", + "required": false, + "description": "The updated title of the event", + "enum": null, + "inferrable": true + }, + { + "name": "updated_description", + "type": "string", + "required": false, + "description": "The updated description of the event", + "enum": null, + "inferrable": true + }, + { + "name": "updated_location", + "type": "string", + "required": false, + "description": "The updated location of the event", + "enum": null, + "inferrable": true + }, + { + "name": "updated_visibility", + "type": "string", + "required": false, + "description": "The visibility of the event", + "enum": ["default", "public", "private", "confidential"], + "inferrable": true + }, + { + "name": "attendee_emails_to_add", + "type": "array", + "innerType": "string", + "required": false, + "description": "The list of attendee emails to add. Must be valid email addresses e.g., username@domain.com.", + "enum": null, + "inferrable": true + }, + { + "name": "attendee_emails_to_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "The list of attendee emails to remove. Must be valid email addresses e.g., username@domain.com.", + "enum": null, + "inferrable": true + }, + { + "name": "send_notifications_to_attendees", + "type": "string", + "required": false, + "description": "Should attendees be notified of the update? (none, all, external_only)", + "enum": ["none", "all", "externalOnly"], + "inferrable": true + }, + { + "name": "updated_google_meet", + "type": "string", + "required": false, + "description": "Whether to update the Google Meet link to the event. (none, add, remove)", + "enum": ["none", "add", "remove"], + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/calendar.events"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "A string containing the updated event details, including the event ID, update timestamp, and a link to view the updated event." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleCalendar.UpdateEvent", + "parameters": { + "event_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "updated_start_datetime": { + "value": "2024-12-31T15:30:00", + "type": "string", + "required": false + }, + "updated_end_datetime": { + "value": "2024-12-31T17:30:00", + "type": "string", + "required": false + }, + "updated_calendar_id": { + "value": "calendar_12345", + "type": "string", + "required": false + }, + "updated_summary": { + "value": "New Year Celebration", + "type": "string", + "required": false + }, + "updated_description": { + "value": "Celebrating the New Year with friends and family.", + "type": "string", + "required": false + }, + "updated_location": { + "value": "123 Celebration St, Party Town, NY", + "type": "string", + "required": false + }, + "updated_visibility": { + "value": "public", + "type": "string", + "required": false + }, + "attendee_emails_to_add": { + "value": ["friend1@example.com", "friend2@example.com"], + "type": "array", + "required": false + }, + "attendee_emails_to_remove": { + "value": ["oldfriend@example.com"], + "type": "array", + "required": false + }, + "send_notifications_to_attendees": { + "value": "all", + "type": "string", + "required": false + }, + "updated_google_meet": { + "value": "add", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "GoogleCalendar.WhoAmI", + "fullyQualifiedName": "GoogleCalendar.WhoAmI@3.2.2", + "description": "Get comprehensive user profile and Google Calendar environment information.\n\nThis tool provides detailed information about the authenticated user including\ntheir name, email, profile picture, Google Calendar access permissions, and other\nimportant profile details from Google services.", + "parameters": [], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [ + "https://www.googleapis.com/auth/calendar.readonly", + "https://www.googleapis.com/auth/userinfo.profile", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get comprehensive user profile and Google Calendar environment information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleCalendar.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Google Calendar MCP Server uses the [Google auth provider](/references/auth-providers/google) to connect to users' Google accounts.\n---", + "header": "## Auth" + }, + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## UpdateGoogleMeetOptions\n\n- **`NONE`**: No action is taken.\n- **`ADD`**: Add the Google Meet link to the event.\n- **`REMOVE`**: Remove the Google Meet link from the event.\n\n", + "header": "## UpdateGoogleMeetOptions" + } + ], + "customImports": [ + "import ScopePicker from \"@/app/_components/scope-picker\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:31:57.612Z", + "summary": "Arcade.dev offers a toolkit for Google Calendar that streamlines event management and calendar interaction through powerful APIs. This toolkit enables developers to effectively create, update, and manage calendar events while accessing user calendars.\n\n**Capabilities:**\n- Create and delete events seamlessly.\n- Fetch user calendars and events within specified date ranges.\n- Identify time slots when all participants are available.\n- Retrieve user profile information from Google services.\n\n**OAuth:**\n- Provider: Google\n- Scopes: `https://www.googleapis.com/auth/calendar.events`, `https://www.googleapis.com/auth/calendar.readonly`, `https://www.googleapis.com/auth/userinfo.email`, `https://www.googleapis.com/auth/userinfo.profile`." +} diff --git a/data/toolkits/googlecontacts.json b/data/toolkits/googlecontacts.json new file mode 100644 index 000000000..c06a75242 --- /dev/null +++ b/data/toolkits/googlecontacts.json @@ -0,0 +1,315 @@ +{ + "id": "GoogleContacts", + "label": "Google Contacts", + "version": "3.4.0", + "description": "Arcade.dev LLM tools for Google Contacts", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/google-contacts.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/google-contacts", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "google", + "allScopes": [ + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + }, + "tools": [ + { + "name": "CreateContact", + "qualifiedName": "GoogleContacts.CreateContact", + "fullyQualifiedName": "GoogleContacts.CreateContact@3.4.0", + "description": "Create a new contact record in Google Contacts.\n\nExamples:\n```\ncreate_contact(given_name=\"Alice\")\ncreate_contact(given_name=\"Alice\", family_name=\"Smith\")\ncreate_contact(given_name=\"Alice\", email=\"alice@example.com\")\ncreate_contact(given_name=\"Alice\", phone_number=\"+1234567890\")\ncreate_contact(\n given_name=\"Alice\",\n family_name=\"Smith\",\n email=\"alice@example.com\",\n phone_number=\"+1234567890\"\n)\n```", + "parameters": [ + { + "name": "given_name", + "type": "string", + "required": true, + "description": "The given name of the contact", + "enum": null, + "inferrable": true + }, + { + "name": "family_name", + "type": "string", + "required": false, + "description": "The optional family name of the contact", + "enum": null, + "inferrable": true + }, + { + "name": "email", + "type": "string", + "required": false, + "description": "The optional email address of the contact", + "enum": null, + "inferrable": true + }, + { + "name": "phone_number", + "type": "string", + "required": false, + "description": "The optional phone number of the contact", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/contacts"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the details of the created contact" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleContacts.CreateContact", + "parameters": { + "given_name": { + "value": "Alice", + "type": "string", + "required": true + }, + "family_name": { + "value": "Smith", + "type": "string", + "required": false + }, + "email": { + "value": "alice@example.com", + "type": "string", + "required": false + }, + "phone_number": { + "value": "+1234567890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchContactsByEmail", + "qualifiedName": "GoogleContacts.SearchContactsByEmail", + "fullyQualifiedName": "GoogleContacts.SearchContactsByEmail@3.4.0", + "description": "Search the user's contacts in Google Contacts by email address.", + "parameters": [ + { + "name": "email", + "type": "string", + "required": true, + "description": "The email address to search for", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of contacts to return (30 is the max allowed by Google API)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/contacts.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the list of matching contacts" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleContacts.SearchContactsByEmail", + "parameters": { + "email": { + "value": "example@example.com", + "type": "string", + "required": true + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchContactsByName", + "qualifiedName": "GoogleContacts.SearchContactsByName", + "fullyQualifiedName": "GoogleContacts.SearchContactsByName@3.4.0", + "description": "Search the user's contacts in Google Contacts by name.", + "parameters": [ + { + "name": "name", + "type": "string", + "required": true, + "description": "The full name to search for", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of contacts to return (30 is the max allowed by Google API)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/contacts.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the list of matching contacts" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleContacts.SearchContactsByName", + "parameters": { + "name": { + "value": "John Doe", + "type": "string", + "required": true + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchContactsByPhoneNumber", + "qualifiedName": "GoogleContacts.SearchContactsByPhoneNumber", + "fullyQualifiedName": "GoogleContacts.SearchContactsByPhoneNumber@3.4.0", + "description": "Search the user's contacts in Google Contacts by phone number.", + "parameters": [ + { + "name": "phone_number", + "type": "string", + "required": true, + "description": "The phone number to search for", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of contacts to return (30 is the max allowed by Google API)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/contacts.readonly"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the list of matching contacts" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleContacts.SearchContactsByPhoneNumber", + "parameters": { + "phone_number": { + "value": "+15555551234", + "type": "string", + "required": true + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "GoogleContacts.WhoAmI", + "fullyQualifiedName": "GoogleContacts.WhoAmI@3.4.0", + "description": "Get comprehensive user profile and Google Contacts environment information.\n\nThis tool provides detailed information about the authenticated user including\ntheir name, email, profile picture, Google Contacts access permissions, and other\nimportant profile details from Google services.", + "parameters": [], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [ + "https://www.googleapis.com/auth/contacts.readonly", + "https://www.googleapis.com/auth/userinfo.profile", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get comprehensive user profile and Google Contacts environment information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleContacts.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Google Contacts MCP Server uses the [Google auth provider](/references/auth-providers/google) to connect to users' Google accounts.", + "header": "## Auth" + } + ], + "customImports": [ + "import ScopePicker from \"@/app/_components/scope-picker\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:32:04.534Z", + "summary": "This toolkit enables developers to integrate Google Contacts functionality into their applications. Through the Arcade.dev platform, users can manage and retrieve contact information seamlessly.\n\n**Capabilities** \n- Create or update contact records in Google Contacts. \n- Search for contacts using email, name, or phone number. \n- Retrieve user profile and access permissions directly from Google services. \n\n**OAuth** \n- Provider: Google \n- Scopes: \n - https://www.googleapis.com/auth/contacts \n - https://www.googleapis.com/auth/contacts.readonly \n - https://www.googleapis.com/auth/userinfo.email \n - https://www.googleapis.com/auth/userinfo.profile \n\nNo secret types required for this toolkit." +} diff --git a/data/toolkits/googledocs.json b/data/toolkits/googledocs.json new file mode 100644 index 000000000..0b67d8d49 --- /dev/null +++ b/data/toolkits/googledocs.json @@ -0,0 +1,910 @@ +{ + "id": "GoogleDocs", + "label": "Google Docs", + "version": "5.0.1", + "description": "Arcade.dev LLM tools for Google Docs", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/google-docs.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/google-docs", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "google", + "allScopes": [ + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + }, + "tools": [ + { + "name": "CommentOnDocument", + "qualifiedName": "GoogleDocs.CommentOnDocument", + "fullyQualifiedName": "GoogleDocs.CommentOnDocument@5.0.1", + "description": "Comment on a specific document by its ID.", + "parameters": [ + { + "name": "document_id", + "type": "string", + "required": true, + "description": "The ID of the document to comment on", + "enum": null, + "inferrable": true + }, + { + "name": "comment_text", + "type": "string", + "required": true, + "description": "The comment to add to the document", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The comment's ID, documentId, and documentUrl in a dictionary" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDocs.CommentOnDocument", + "parameters": { + "document_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "comment_text": { + "value": "Great work on this section!", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBlankDocument", + "qualifiedName": "GoogleDocs.CreateBlankDocument", + "fullyQualifiedName": "GoogleDocs.CreateBlankDocument@5.0.1", + "description": "Create a blank Google Docs document with the specified title.", + "parameters": [ + { + "name": "title", + "type": "string", + "required": true, + "description": "The title of the blank document to create", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The created document's title, documentId, and documentUrl in a dictionary" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDocs.CreateBlankDocument", + "parameters": { + "title": { + "value": "Meeting Notes - September 2023", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateDocumentFromText", + "qualifiedName": "GoogleDocs.CreateDocumentFromText", + "fullyQualifiedName": "GoogleDocs.CreateDocumentFromText@5.0.1", + "description": "Create a Google Docs document with the specified title and text content.", + "parameters": [ + { + "name": "title", + "type": "string", + "required": true, + "description": "The title of the document to create", + "enum": null, + "inferrable": true + }, + { + "name": "text_content", + "type": "string", + "required": true, + "description": "The text content to insert into the document", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The created document's title, documentId, and documentUrl in a dictionary" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDocs.CreateDocumentFromText", + "parameters": { + "title": { + "value": "Meeting Notes - October 2023", + "type": "string", + "required": true + }, + "text_content": { + "value": "These are the notes from the meeting held on October 10, 2023. Discussed project timelines, deliverables, and assigned tasks.", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EditDocument", + "qualifiedName": "GoogleDocs.EditDocument", + "fullyQualifiedName": "GoogleDocs.EditDocument@5.0.1", + "description": "Edit a Google Docs document with the specified edit request.\n\nThis tool does not have context about previous edits because it is stateless. If your edit\nrequest depends on knowledge about previous edits, then you should provide that context in\nthe edit requests.", + "parameters": [ + { + "name": "document_id", + "type": "string", + "required": true, + "description": "The ID of the document to edit", + "enum": null, + "inferrable": true + }, + { + "name": "edit_requests", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of natural language descriptions of the desired change(s) to the document. Each entry should be a single, self-contained edit request that can be fully understood independently. Note: Each request may result in zero, one, or multiple actual edits depending on what changes are needed (e.g., a request might be ignored if the change already exists in the document).", + "enum": null, + "inferrable": true + }, + { + "name": "reasoning_effort", + "type": "string", + "required": false, + "description": "The effort to put into reasoning about the edit(s). Defaults to medium", + "enum": ["minimal", "low", "medium", "high"], + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": ["OPENAI_API_KEY"], + "secretsInfo": [ + { + "name": "OPENAI_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "The edited document's title, documentId, and documentUrl in a dictionary" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDocs.EditDocument", + "parameters": { + "document_id": { + "value": "1A2B3C4D5E6F7G8H9I0J", + "type": "string", + "required": true + }, + "edit_requests": { + "value": [ + "Change the title of the document to 'Quarterly Financial Report'", + "Add a new section discussing the effects of the market downturn", + "Correct the spelling of 'recieve' to 'receive' throughout the document" + ], + "type": "array", + "required": true + }, + "reasoning_effort": { + "value": "high", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GenerateGoogleFilePickerUrl", + "qualifiedName": "GoogleDocs.GenerateGoogleFilePickerUrl", + "fullyQualifiedName": "GoogleDocs.GenerateGoogleFilePickerUrl@5.0.1", + "description": "Generate a Google File Picker URL for user-driven file selection and authorization.\n\nThis tool generates a URL that directs the end-user to a Google File Picker interface where\nwhere they can select or upload Google Drive files. Users can grant permission to access their\nDrive files, providing a secure and authorized way to interact with their files.\n\nThis is particularly useful when prior tools (e.g., those accessing or modifying\nGoogle Docs, Google Sheets, etc.) encountered failures due to file non-existence\n(Requested entity was not found) or permission errors. Once the user completes the file\npicker flow, the prior tool can be retried.\n\nSuggest this tool to users when they are surprised or confused that the file they are\nsearching for or attempting to access cannot be found.", + "parameters": [], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Google File Picker URL for user file selection and permission granting" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDocs.GenerateGoogleFilePickerUrl", + "parameters": {}, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDocumentAsDocmd", + "qualifiedName": "GoogleDocs.GetDocumentAsDocmd", + "fullyQualifiedName": "GoogleDocs.GetDocumentAsDocmd@5.0.1", + "description": "Get the latest version of the specified Google Docs document as DocMD.\nThe DocMD output will include tags that can be used to annotate the document with location\ninformation, the type of block, block IDs, and other metadata. If the document has tabs,\nall tabs are included in sequential order unless a specific tab_id is provided.", + "parameters": [ + { + "name": "document_id", + "type": "string", + "required": true, + "description": "The ID of the document to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "tab_id", + "type": "string", + "required": false, + "description": "The ID of a specific tab to retrieve. If provided, returns only content from that tab. If omitted, returns all tabs in sequential depth-first order.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The document contents as DocMD" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDocs.GetDocumentAsDocmd", + "parameters": { + "document_id": { + "value": "1A2B3C4D5E6F", + "type": "string", + "required": true + }, + "tab_id": { + "value": "tab1", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDocumentById", + "qualifiedName": "GoogleDocs.GetDocumentById", + "fullyQualifiedName": "GoogleDocs.GetDocumentById@5.0.1", + "description": "DEPRECATED DO NOT USE THIS TOOL\nGet the latest version of the specified Google Docs document.", + "parameters": [ + { + "name": "document_id", + "type": "string", + "required": true, + "description": "The ID of the document to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The document contents as a dictionary" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDocs.GetDocumentById", + "parameters": { + "document_id": { + "value": "1A2B3C4D5E6F7G8H9I0J", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDocumentMetadata", + "qualifiedName": "GoogleDocs.GetDocumentMetadata", + "fullyQualifiedName": "GoogleDocs.GetDocumentMetadata@5.0.1", + "description": "Get metadata for a Google Docs document including hierarchical tab structure.\nReturns document title, ID, URL, total character count, and nested tab information\nwith character counts for each tab.", + "parameters": [ + { + "name": "document_id", + "type": "string", + "required": true, + "description": "The ID of the document to get metadata for", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Document metadata including hierarchical tab structure" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDocs.GetDocumentMetadata", + "parameters": { + "document_id": { + "value": "1A2B3C4D5E6F7G8H9I0J", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "InsertTextAtEndOfDocument", + "qualifiedName": "GoogleDocs.InsertTextAtEndOfDocument", + "fullyQualifiedName": "GoogleDocs.InsertTextAtEndOfDocument@5.0.1", + "description": "Updates an existing Google Docs document using the batchUpdate API endpoint.", + "parameters": [ + { + "name": "document_id", + "type": "string", + "required": true, + "description": "The ID of the document to update.", + "enum": null, + "inferrable": true + }, + { + "name": "text_content", + "type": "string", + "required": true, + "description": "The text content to insert into the document", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The response from the batchUpdate API as a dict." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDocs.InsertTextAtEndOfDocument", + "parameters": { + "document_id": { + "value": "1A2B3C4D5E6F7G8H9I0J", + "type": "string", + "required": true + }, + "text_content": { + "value": "This text was added at the end of the document.", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListDocumentComments", + "qualifiedName": "GoogleDocs.ListDocumentComments", + "fullyQualifiedName": "GoogleDocs.ListDocumentComments@5.0.1", + "description": "List all comments on the specified Google Docs document.", + "parameters": [ + { + "name": "document_id", + "type": "string", + "required": true, + "description": "The ID of the document to list comments for", + "enum": null, + "inferrable": true + }, + { + "name": "include_deleted", + "type": "boolean", + "required": false, + "description": "Whether to include deleted comments in the results. Defaults to False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the comments" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDocs.ListDocumentComments", + "parameters": { + "document_id": { + "value": "1a2b3c4d5e6f7g8h9i0j", + "type": "string", + "required": true + }, + "include_deleted": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchAndRetrieveDocuments", + "qualifiedName": "GoogleDocs.SearchAndRetrieveDocuments", + "fullyQualifiedName": "GoogleDocs.SearchAndRetrieveDocuments@5.0.1", + "description": "Searches for documents in the user's Google Drive and returns documents with their main body\ncontent and tab metadata. Excludes documents that are in the trash.\n\nReturns main body content only with metadata about tabs. Use get_document_as_docmd() to retrieve\nfull tab content for specific documents. Use search_documents() for metadata-only searches.", + "parameters": [ + { + "name": "return_format", + "type": "string", + "required": false, + "description": "The format of the document to return. Defaults to Markdown.", + "enum": ["docmd", "markdown", "html", "google_api_json"], + "inferrable": true + }, + { + "name": "document_contains", + "type": "array", + "innerType": "string", + "required": false, + "description": "Keywords or phrases that must be in the document title or body. Provide a list of keywords or phrases if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "document_not_contains", + "type": "array", + "innerType": "string", + "required": false, + "description": "Keywords or phrases that must NOT be in the document title or body. Provide a list of keywords or phrases if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "search_only_in_shared_drive_id", + "type": "string", + "required": false, + "description": "The ID of the shared drive to restrict the search to. If provided, the search will only return documents from this drive. Defaults to None, which searches across all drives.", + "enum": null, + "inferrable": true + }, + { + "name": "include_shared_drives", + "type": "boolean", + "required": false, + "description": "Whether to include documents from shared drives. Defaults to False (searches only in the user's 'My Drive').", + "enum": null, + "inferrable": true + }, + { + "name": "include_organization_domain_documents", + "type": "boolean", + "required": false, + "description": "Whether to include documents from the organization's domain. This is applicable to admin users who have permissions to view organization-wide documents in a Google Workspace account. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "array", + "innerType": "string", + "required": false, + "description": "Sort order. Defaults to listing the most recently modified documents first", + "enum": [ + "createdTime", + "createdTime desc", + "folder", + "folder desc", + "modifiedByMeTime", + "modifiedByMeTime desc", + "modifiedTime", + "modifiedTime desc", + "name", + "name desc", + "name_natural", + "name_natural desc", + "quotaBytesUsed", + "quotaBytesUsed desc", + "recency", + "recency desc", + "sharedWithMeTime", + "sharedWithMeTime desc", + "starred", + "starred desc", + "viewedByMeTime", + "viewedByMeTime desc" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of documents to list", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to continue a previous request", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing document count, list of documents with content and metadata, pagination token, and has_more flag" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDocs.SearchAndRetrieveDocuments", + "parameters": { + "return_format": { + "value": "Markdown", + "type": "string", + "required": false + }, + "document_contains": { + "value": ["project", "meeting", "report"], + "type": "array", + "required": false + }, + "document_not_contains": { + "value": ["draft", "confidential"], + "type": "array", + "required": false + }, + "search_only_in_shared_drive_id": { + "value": "abc123456", + "type": "string", + "required": false + }, + "include_shared_drives": { + "value": true, + "type": "boolean", + "required": false + }, + "include_organization_domain_documents": { + "value": false, + "type": "boolean", + "required": false + }, + "order_by": { + "value": ["modifiedTime desc", "name asc"], + "type": "array", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "xyz987654", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchDocuments", + "qualifiedName": "GoogleDocs.SearchDocuments", + "fullyQualifiedName": "GoogleDocs.SearchDocuments@5.0.1", + "description": "Searches for documents in the user's Google Drive. Excludes documents in trash.\nReturns metadata only. Use get_document_metadata or get_document_as_docmd for content.", + "parameters": [ + { + "name": "document_contains", + "type": "array", + "innerType": "string", + "required": false, + "description": "Keywords or phrases that must be in the document title or body. Provide a list of keywords or phrases if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "document_not_contains", + "type": "array", + "innerType": "string", + "required": false, + "description": "Keywords or phrases that must NOT be in the document title or body. Provide a list of keywords or phrases if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "search_only_in_shared_drive_id", + "type": "string", + "required": false, + "description": "The ID of the shared drive to restrict the search to. If provided, the search will only return documents from this drive. Defaults to None, which searches across all drives.", + "enum": null, + "inferrable": true + }, + { + "name": "include_shared_drives", + "type": "boolean", + "required": false, + "description": "Whether to include documents from shared drives. Defaults to False (searches only in the user's 'My Drive').", + "enum": null, + "inferrable": true + }, + { + "name": "include_organization_domain_documents", + "type": "boolean", + "required": false, + "description": "Whether to include documents from the organization's domain. This is applicable to admin users who have permissions to view organization-wide documents in a Google Workspace account. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "array", + "innerType": "string", + "required": false, + "description": "Sort order. Defaults to listing the most recently modified documents first. If document_contains or document_not_contains is provided, then the order_by will be ignored.", + "enum": [ + "createdTime", + "createdTime desc", + "folder", + "folder desc", + "modifiedByMeTime", + "modifiedByMeTime desc", + "modifiedTime", + "modifiedTime desc", + "name", + "name desc", + "name_natural", + "name_natural desc", + "quotaBytesUsed", + "quotaBytesUsed desc", + "recency", + "recency desc", + "sharedWithMeTime", + "sharedWithMeTime desc", + "starred", + "starred desc", + "viewedByMeTime", + "viewedByMeTime desc" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of documents to list", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to continue a previous request", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Document count, list of documents, pagination token, and has_more flag" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDocs.SearchDocuments", + "parameters": { + "document_contains": { + "value": ["project", "report", "meeting notes"], + "type": "array", + "required": false + }, + "document_not_contains": { + "value": ["draft", "old", "deprecated"], + "type": "array", + "required": false + }, + "search_only_in_shared_drive_id": { + "value": "abc123sharedDriveId", + "type": "string", + "required": false + }, + "include_shared_drives": { + "value": true, + "type": "boolean", + "required": false + }, + "include_organization_domain_documents": { + "value": false, + "type": "boolean", + "required": false + }, + "order_by": { + "value": ["createdTime", "name"], + "type": "array", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "nextPageToken", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "GoogleDocs.WhoAmI", + "fullyQualifiedName": "GoogleDocs.WhoAmI@5.0.1", + "description": "Get comprehensive user profile and Google Docs environment information.\n\nThis tool provides detailed information about the authenticated user including\ntheir name, email, profile picture, Google Docs access permissions, and other\nimportant profile details from Google services.", + "parameters": [], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [ + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/userinfo.profile", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get comprehensive user profile and Google Docs environment information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDocs.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "warning", + "location": "description", + "position": "after", + "content": "\n This Toolkit is not available in Arcade Cloud. You can use these tools with a\n [self-hosted](/guides/deployment-hosting/configure-engine) instance of Arcade.\n" + }, + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## Tab Support\n\nGoogle Docs supports hierarchical tabs within documents. The Google Docs tools provide comprehensive support for working with tabs:\n\n- **Tab Metadata**: `GetDocumentMetadata` returns hierarchical tab structures with approximate character and word counts for each tab\n- **Tab Content**: `GetDocumentAsDocMD` and `SearchAndRetrieveDocuments` include all tab content in their output\n- **Tab Filtering**: `GetDocumentAsDocMD` supports filtering to retrieve content from a specific tab using the `tab_id` parameter\n\nTabs are represented with the following structure:\n- Each tab has a unique `tabId`, `title`, `index`, and `nestingLevel`\n- Tabs can be nested up to 3 levels deep (parent → child → grandchild)\n- Tab metadata includes approximate character and word counts for each tab's content\n\n---", + "header": "## Tab Support" + }, + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Google Docs MCP Server uses the [Google auth provider](/references/auth-providers/google) to connect to users' Google accounts.\n---", + "header": "## Auth" + } + ], + "customImports": [ + "import ScopePicker from \"@/app/_components/scope-picker\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:32:15.847Z", + "summary": "Arcade.dev offers a toolkit for Google Docs that facilitates seamless interaction with Google Drive and document management. This toolkit enables developers to create, edit, and manage documents through a variety of functions in a secure environment.\n\n**Capabilities**\n- Create, edit, and comment on Google Docs seamlessly.\n- Retrieve document metadata and manage file permissions securely.\n- Generate user-friendly file picker URLs for easy file access.\n- List and manage comments within documents.\n\n**OAuth**\nProvider: Google\nScopes: https://www.googleapis.com/auth/drive.file, https://www.googleapis.com/auth/userinfo.email, https://www.googleapis.com/auth/userinfo.profile\n\n**Secrets**\nSecret Type: API Key\nExample: OPENAI_API_KEY." +} diff --git a/data/toolkits/googledrive.json b/data/toolkits/googledrive.json new file mode 100644 index 000000000..3b08c3c8d --- /dev/null +++ b/data/toolkits/googledrive.json @@ -0,0 +1,940 @@ +{ + "id": "GoogleDrive", + "label": "Google Drive", + "version": "5.1.0", + "description": "Arcade.dev LLM tools for Google Drive", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/google-drive.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/google-drive", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "google", + "allScopes": [ + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + }, + "tools": [ + { + "name": "CreateFolder", + "qualifiedName": "GoogleDrive.CreateFolder", + "fullyQualifiedName": "GoogleDrive.CreateFolder@5.1.0", + "description": "Create a new folder in Google Drive.\n\nBy default, parent folder paths are resolved in My Drive. For shared drives, use folder IDs\nor provide shared_drive_id.", + "parameters": [ + { + "name": "folder_name", + "type": "string", + "required": true, + "description": "The name of the new folder to create", + "enum": null, + "inferrable": true + }, + { + "name": "parent_folder_path_or_id", + "type": "string", + "required": false, + "description": "The parent folder path like folder/subfolder or folder ID where to create. If None, creates at the root of My Drive. If providing a path, it will be resolved within My Drive by default. Do not include the folder to create in this path. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "shared_drive_id", + "type": "string", + "required": false, + "description": "If creating in a shared drive and using a parent folder path, provide the shared drive ID. Not needed when using folder IDs or creating in My Drive. Defaults to None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Created folder information including ID, name, web view link, and location path" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDrive.CreateFolder", + "parameters": { + "folder_name": { + "value": "ProjectDocumentation", + "type": "string", + "required": true + }, + "parent_folder_path_or_id": { + "value": "Projects/2023", + "type": "string", + "required": false + }, + "shared_drive_id": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DownloadFile", + "qualifiedName": "GoogleDrive.DownloadFile", + "fullyQualifiedName": "GoogleDrive.DownloadFile@5.1.0", + "description": "Download a blob file (non-workspace file) from Google Drive as base64 encoded content.\n\nFor small files (under ~5MB raw), returns the file content directly in the response as base64.\nFor large files, returns metadata with requires_chunked_download=True - use download_file_chunk\nto retrieve the file in parts.\n\nBy default, paths are resolved in My Drive. For shared drives, use file IDs or provide\nshared_drive_id.", + "parameters": [ + { + "name": "file_path_or_id", + "type": "string", + "required": true, + "description": "The file path like folder/subfolder/filename or the file ID of the file to download Folders NOT supported. If providing a path, it will be resolved within 'My Drive' by default.", + "enum": null, + "inferrable": true + }, + { + "name": "shared_drive_id", + "type": "string", + "required": false, + "description": "If the file is in a shared drive and using a path, provide the shared drive ID. Not needed when using file IDs. Defaults to None (uses 'My Drive').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "For small files (<5MB): file content (base64 encoded) and metadata. For large files: metadata with requires_chunked_download=True and instructions." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDrive.DownloadFile", + "parameters": { + "file_path_or_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "shared_drive_id": { + "value": "shared-drive-unique-id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DownloadFileChunk", + "qualifiedName": "GoogleDrive.DownloadFileChunk", + "fullyQualifiedName": "GoogleDrive.DownloadFileChunk@5.1.0", + "description": "Download a specific byte range of a file from Google Drive.\n\nUse this for large files that require chunked download (when download_file returns\nrequires_chunked_download=True). Call repeatedly with increasing start_byte values\nto retrieve the complete file.\n\nReturns the chunk content as base64, along with progress information including\nwhether this is the final chunk.", + "parameters": [ + { + "name": "file_path_or_id", + "type": "string", + "required": true, + "description": "The file path like folder/subfolder/filename or the file ID to download a chunk from. If providing a path, it will be resolved within 'My Drive' by default.", + "enum": null, + "inferrable": true + }, + { + "name": "start_byte", + "type": "integer", + "required": true, + "description": "The starting byte position for this chunk (0-indexed).", + "enum": null, + "inferrable": true + }, + { + "name": "chunk_size", + "type": "integer", + "required": false, + "description": "The size of the chunk to download in bytes. Max 5MB (5242880). Defaults to 5MB (5242880).", + "enum": null, + "inferrable": true + }, + { + "name": "shared_drive_id", + "type": "string", + "required": false, + "description": "If the file is in a shared drive and using a path, provide the shared drive ID. Not needed when using file IDs. Defaults to None (uses 'My Drive').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Chunk content (base64 encoded), byte range info, and progress details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDrive.DownloadFileChunk", + "parameters": { + "file_path_or_id": { + "value": "1A2B3C4D5E6F7G8H9I0J", + "type": "string", + "required": true + }, + "start_byte": { + "value": 0, + "type": "integer", + "required": true + }, + "chunk_size": { + "value": 5242880, + "type": "integer", + "required": false + }, + "shared_drive_id": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GenerateGoogleFilePickerUrl", + "qualifiedName": "GoogleDrive.GenerateGoogleFilePickerUrl", + "fullyQualifiedName": "GoogleDrive.GenerateGoogleFilePickerUrl@5.1.0", + "description": "Generate a Google File Picker URL for user-driven file selection and authorization.\n\nThis tool generates a URL that directs the end-user to a Google File Picker interface where\nwhere they can select or upload Google Drive files. Users can grant permission to access their\nDrive files, providing a secure and authorized way to interact with their files.\n\nThis is particularly useful when prior tools (e.g., those accessing or modifying\nGoogle Docs, Google Sheets, etc.) encountered failures due to file non-existence\n(Requested entity was not found) or permission errors. Once the user completes the file\npicker flow, the prior tool can be retried.\n\nSuggest this tool to users when they are surprised or confused that the file they are\nsearching for or attempting to access cannot be found.", + "parameters": [], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Google File Picker URL for user file selection and permission granting" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDrive.GenerateGoogleFilePickerUrl", + "parameters": {}, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileTreeStructure", + "qualifiedName": "GoogleDrive.GetFileTreeStructure", + "fullyQualifiedName": "GoogleDrive.GetFileTreeStructure@5.1.0", + "description": "Get the file/folder tree structure of the user's entire Google Drive.\nVery inefficient for large drives. Use with caution.", + "parameters": [ + { + "name": "include_shared_drives", + "type": "boolean", + "required": false, + "description": "Whether to include shared drives in the file tree structure. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_shared_drive_id", + "type": "string", + "required": false, + "description": "If provided, only include files from this shared drive in the file tree structure. Defaults to None, which will include files and folders from all drives.", + "enum": null, + "inferrable": true + }, + { + "name": "include_organization_domain_documents", + "type": "boolean", + "required": false, + "description": "Whether to include documents from the organization's domain. This is applicable to admin users who have permissions to view organization-wide documents in a Google Workspace account. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "array", + "innerType": "string", + "required": false, + "description": "Sort order. Defaults to listing the most recently modified documents first", + "enum": [ + "createdTime", + "createdTime desc", + "folder", + "folder desc", + "modifiedByMeTime", + "modifiedByMeTime desc", + "modifiedTime", + "modifiedTime desc", + "name", + "name desc", + "name_natural", + "name_natural desc", + "quotaBytesUsed", + "quotaBytesUsed desc", + "recency", + "recency desc", + "sharedWithMeTime", + "sharedWithMeTime desc", + "starred", + "starred desc", + "viewedByMeTime", + "viewedByMeTime desc" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of files and folders to list. Defaults to None, which will list all files and folders.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the file/folder tree structure in the user's Google Drive" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDrive.GetFileTreeStructure", + "parameters": { + "include_shared_drives": { + "value": true, + "type": "boolean", + "required": false + }, + "restrict_to_shared_drive_id": { + "value": "123abc456def", + "type": "string", + "required": false + }, + "include_organization_domain_documents": { + "value": false, + "type": "boolean", + "required": false + }, + "order_by": { + "value": ["name", "modifiedTime"], + "type": "array", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MoveFile", + "qualifiedName": "GoogleDrive.MoveFile", + "fullyQualifiedName": "GoogleDrive.MoveFile@5.1.0", + "description": "Move a file or folder to a different folder within the same Google Drive.\n\nCan move to a folder (keeping name), or move and rename in one operation. By default, paths\nare resolved in My Drive. For shared drives, use file IDs or provide shared_drive_id.", + "parameters": [ + { + "name": "source_file_path_or_id", + "type": "string", + "required": true, + "description": "The source file path like folder/subfolder/filename or the file ID of the file to move. If providing a path, it will be resolved within 'My Drive' by default.", + "enum": null, + "inferrable": true + }, + { + "name": "destination_folder_path_or_id", + "type": "string", + "required": false, + "description": "The path to the file's parent folder (exclude the file to be moved) or parent folder ID to move the file into. If None, moves to the root of the drive. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "new_filename", + "type": "string", + "required": false, + "description": "Optional new name for the file after moving. If None, keeps the original name. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "shared_drive_id", + "type": "string", + "required": false, + "description": "If working with paths in a shared drive, provide the shared drive ID. Not needed when using IDs. Defaults to None (uses My Drive).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Confirmation with the file's ID, name, and new location" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDrive.MoveFile", + "parameters": { + "source_file_path_or_id": { + "value": "folder1/subfolder1/document.txt", + "type": "string", + "required": true + }, + "destination_folder_path_or_id": { + "value": "folder2/subfolder2", + "type": "string", + "required": false + }, + "new_filename": { + "value": "new_document.txt", + "type": "string", + "required": false + }, + "shared_drive_id": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RenameFile", + "qualifiedName": "GoogleDrive.RenameFile", + "fullyQualifiedName": "GoogleDrive.RenameFile@5.1.0", + "description": "Rename a file or folder in Google Drive.\n\nBy default, paths are resolved in My Drive. For files in shared drives, either use the file ID\ndirectly or provide the shared_drive_id parameter.", + "parameters": [ + { + "name": "file_path_or_id", + "type": "string", + "required": true, + "description": "The path like folder/subfolder/filename or the file ID to rename. If providing a path, it will be resolved within 'My Drive' by default.", + "enum": null, + "inferrable": true + }, + { + "name": "new_filename", + "type": "string", + "required": true, + "description": "The new name for the file", + "enum": null, + "inferrable": true + }, + { + "name": "shared_drive_id", + "type": "string", + "required": false, + "description": "If the file is in a shared drive and you're using a path (not ID), provide the shared drive ID to resolve the path within that drive. Not needed when using file IDs. Defaults to None (searches 'My Drive').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Confirmation with the file's new name, ID, and web view link" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDrive.RenameFile", + "parameters": { + "file_path_or_id": { + "value": "folder/subfolder/old_filename.txt", + "type": "string", + "required": true + }, + "new_filename": { + "value": "new_filename.txt", + "type": "string", + "required": true + }, + "shared_drive_id": { + "value": "12345abcd", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchFiles", + "qualifiedName": "GoogleDrive.SearchFiles", + "fullyQualifiedName": "GoogleDrive.SearchFiles@5.1.0", + "description": "Search for files in Google Drive.\n\nThe provided 'query' should only contain the search terms.\nThe tool will construct the full search query for you.", + "parameters": [ + { + "name": "query", + "type": "string", + "required": true, + "description": "The exact search query to send to the Google Drive API to find files in Google Drive. The tool will construct the query for you. Will search for filenames and file contents that match the provided query.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_path_or_id", + "type": "string", + "required": false, + "description": "Search only within this specific folder. Provide either a path like folder/subfolder or a folder ID. If None, searches across all accessible locations. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "shared_drive_id", + "type": "string", + "required": false, + "description": "If provided, search only within this shared drive. Defaults to None (searches My Drive and optionally all shared drives).", + "enum": null, + "inferrable": true + }, + { + "name": "include_shared_drives", + "type": "boolean", + "required": false, + "description": "If True and shared_drive_id is not set, include all shared drives in search. Defaults to False (My Drive only).", + "enum": null, + "inferrable": true + }, + { + "name": "include_organization_domain_documents", + "type": "boolean", + "required": false, + "description": "Whether to include documents from the organization's domain. This is applicable to admin users who have permissions to view organization-wide documents in a Google Workspace account. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "array", + "innerType": "string", + "required": false, + "description": "Sort order for search results. Defaults to listing the most recently modified documents first. If the query contains 'fullText', then the order_by will be ignored.", + "enum": [ + "createdTime", + "createdTime desc", + "folder", + "folder desc", + "modifiedByMeTime", + "modifiedByMeTime desc", + "modifiedTime", + "modifiedTime desc", + "name", + "name desc", + "name_natural", + "name_natural desc", + "quotaBytesUsed", + "quotaBytesUsed desc", + "recency", + "recency desc", + "sharedWithMeTime", + "sharedWithMeTime desc", + "starred", + "starred desc", + "viewedByMeTime", + "viewedByMeTime desc" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of search results to return. Defaults to 50.", + "enum": null, + "inferrable": true + }, + { + "name": "file_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by specific file types. Defaults to None, which includes all file types.", + "enum": [ + "spreadsheet", + "slides", + "document", + "drawing", + "form", + "folder", + "image", + "video", + "audio", + "script", + "sites", + "pdf" + ], + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Search results containing matching files from Google Drive with metadata and file information" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDrive.SearchFiles", + "parameters": { + "query": { + "value": "project plan", + "type": "string", + "required": true + }, + "folder_path_or_id": { + "value": "2023/ProjectX", + "type": "string", + "required": false + }, + "shared_drive_id": { + "value": "0B12abcDEfgHIJklMNO", + "type": "string", + "required": false + }, + "include_shared_drives": { + "value": true, + "type": "boolean", + "required": false + }, + "include_organization_domain_documents": { + "value": false, + "type": "boolean", + "required": false + }, + "order_by": { + "value": ["modifiedTime desc"], + "type": "array", + "required": false + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "file_types": { + "value": [ + "application/vnd.google-apps.document", + "application/pdf" + ], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ShareFile", + "qualifiedName": "GoogleDrive.ShareFile", + "fullyQualifiedName": "GoogleDrive.ShareFile@5.1.0", + "description": "Share a file or folder in Google Drive with specific people by granting them permissions.\n\nIf a user already has permission on the file, their role will be updated to the new role.\nBy default, paths are resolved in My Drive. For shared drives, use file IDs or provide\nshared_drive_id.", + "parameters": [ + { + "name": "file_path_or_id", + "type": "string", + "required": true, + "description": "The file path like folder/subfolder/filename or the file ID to share. If providing a path, it will be resolved within My Drive by default.", + "enum": null, + "inferrable": true + }, + { + "name": "email_addresses", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of email addresses like user@domain.com to share with", + "enum": null, + "inferrable": true + }, + { + "name": "role", + "type": "string", + "required": false, + "description": "The permission role to grant. Defaults to reader (view-only).", + "enum": ["reader", "commenter", "writer", "owner"], + "inferrable": true + }, + { + "name": "send_notification_email", + "type": "boolean", + "required": false, + "description": "Whether to send an email notification to the recipients. Defaults to True.", + "enum": null, + "inferrable": true + }, + { + "name": "message", + "type": "string", + "required": false, + "description": "Optional message to include in the notification email. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "shared_drive_id", + "type": "string", + "required": false, + "description": "If the file is in a shared drive and using a path, provide the shared drive ID. Not needed when using file IDs. Defaults to None (uses My Drive).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Sharing confirmation with list of granted permissions including recipient emails and roles" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDrive.ShareFile", + "parameters": { + "file_path_or_id": { + "value": "folder1/subfolder1/file1.pdf", + "type": "string", + "required": true + }, + "email_addresses": { + "value": ["user1@example.com", "user2@example.com"], + "type": "array", + "required": true + }, + "role": { + "value": "editor", + "type": "string", + "required": false + }, + "send_notification_email": { + "value": true, + "type": "boolean", + "required": false + }, + "message": { + "value": "Please find the file attached.", + "type": "string", + "required": false + }, + "shared_drive_id": { + "value": "abc123def456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UploadFile", + "qualifiedName": "GoogleDrive.UploadFile", + "fullyQualifiedName": "GoogleDrive.UploadFile@5.1.0", + "description": "Upload a file to Google Drive from a URL.\n\nFetches the file content from the provided URL and uploads it to Google Drive.\nSupports files of any size - uses resumable upload internally for large files.\n\nCANNOT upload Google Workspace files (Google Docs, Sheets, Slides)\nCANNOT upload files larger than 25MB", + "parameters": [ + { + "name": "file_name", + "type": "string", + "required": true, + "description": "The name for the uploaded file", + "enum": null, + "inferrable": true + }, + { + "name": "source_url", + "type": "string", + "required": true, + "description": "The public download URL to fetch the file content from. The tool will download from this URL and upload to Google Drive", + "enum": null, + "inferrable": true + }, + { + "name": "mime_type", + "type": "string", + "required": false, + "description": "The file type. If not provided, will be inferred from the URL or Content-Type header. Supported: text (txt, csv, json, html, md), pdf, images (png, jpeg, gif). Defaults to None (auto-detect).", + "enum": [ + "text/plain", + "text/csv", + "application/json", + "text/html", + "text/markdown", + "application/pdf", + "image/png", + "image/jpeg", + "image/gif", + "image/webp", + "image/svg+xml" + ], + "inferrable": true + }, + { + "name": "destination_folder_path_or_id", + "type": "string", + "required": false, + "description": "The folder path like folder/subfolder or folder ID where to upload. If None, uploads to the root of 'My Drive'. If providing a path, it will be resolved within 'My Drive' by default. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "shared_drive_id", + "type": "string", + "required": false, + "description": "If uploading to a folder in a shared drive using a path, provide the shared drive ID. Not needed when using folder IDs or uploading to My Drive. Defaults to None ('My Drive')", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Uploaded file information including ID, name, web view link, and location" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDrive.UploadFile", + "parameters": { + "file_name": { + "value": "example_document.pdf", + "type": "string", + "required": true + }, + "source_url": { + "value": "https://example.com/files/example_document.pdf", + "type": "string", + "required": true + }, + "mime_type": { + "value": "application/pdf", + "type": "string", + "required": false + }, + "destination_folder_path_or_id": { + "value": "Invoices/2023", + "type": "string", + "required": false + }, + "shared_drive_id": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "GoogleDrive.WhoAmI", + "fullyQualifiedName": "GoogleDrive.WhoAmI@5.1.0", + "description": "Get comprehensive user profile and Google Drive environment information.\n\nThis tool provides detailed information about the authenticated user including\ntheir name, email, profile picture, Google Drive storage information, the shared\ndrives (and their IDs) the user has access to, and other\nimportant profile details from Google services.", + "parameters": [], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [ + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/userinfo.profile", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get comprehensive user profile and Google Drive environment information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleDrive.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import ScopePicker from \"@/app/_components/scope-picker\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:32:25.869Z", + "summary": "Arcade.dev provides a toolkit for integrating with Google Drive, enabling seamless file management and user authentication. This toolkit allows developers to efficiently manage and interact with files and folders in Google Drive through a variety of LLM tools that streamline operations.\n\n**Capabilities**\n- Create, move, rename, and manage files and folders in Google Drive.\n- Upload, download, and share files securely with granular permissions.\n- Search for files and retrieve the complete file tree structure.\n- Generate a Google File Picker URL for user-driven file selection.\n\n**OAuth**\nProvider: Google\nScopes: https://www.googleapis.com/auth/drive.file, https://www.googleapis.com/auth/userinfo.email, https://www.googleapis.com/auth/userinfo.profile" +} diff --git a/data/toolkits/googlefinance.json b/data/toolkits/googlefinance.json new file mode 100644 index 000000000..90da0f7ef --- /dev/null +++ b/data/toolkits/googlefinance.json @@ -0,0 +1,160 @@ +{ + "id": "GoogleFinance", + "label": "Google Finance", + "version": "3.1.2", + "description": "Arcade.dev LLM tools for getting financial data via Google Finance", + "metadata": { + "category": "search", + "iconUrl": "https://design-system.arcade.dev/icons/google-finance.svg", + "isBYOC": true, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/search/google_finance", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "GetStockHistoricalData", + "qualifiedName": "GoogleFinance.GetStockHistoricalData", + "fullyQualifiedName": "GoogleFinance.GetStockHistoricalData@3.1.2", + "description": "Fetch historical stock price data over a specified time window\n\nReturns a stock's price and volume data over a specified time window", + "parameters": [ + { + "name": "ticker_symbol", + "type": "string", + "required": true, + "description": "The stock ticker to get summary for. For example, 'GOOG' is the ticker symbol for Google", + "enum": null, + "inferrable": true + }, + { + "name": "exchange_identifier", + "type": "string", + "required": true, + "description": "The exchange identifier. This part indicates the market where the stock is traded. For example, 'NASDAQ', 'NYSE', 'TSE', 'LSE', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "window", + "type": "string", + "required": false, + "description": "Time window for the graph data. Defaults to 1 month", + "enum": ["1D", "5D", "1M", "6M", "YTD", "1Y", "5Y", "MAX"], + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "A stock's price and volume data at a specific time interval over a specified time window" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleFinance.GetStockHistoricalData", + "parameters": { + "ticker_symbol": { + "value": "AAPL", + "type": "string", + "required": true + }, + "exchange_identifier": { + "value": "NASDAQ", + "type": "string", + "required": true + }, + "window": { + "value": "6 months", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetStockSummary", + "qualifiedName": "GoogleFinance.GetStockSummary", + "fullyQualifiedName": "GoogleFinance.GetStockSummary@3.1.2", + "description": "Retrieve the summary information for a given stock ticker using the Google Finance API.\n\nGets the stock's current price as well as price movement from the most recent trading day.", + "parameters": [ + { + "name": "ticker_symbol", + "type": "string", + "required": true, + "description": "The stock ticker to get summary for. For example, 'GOOG' is the ticker symbol for Google", + "enum": null, + "inferrable": true + }, + { + "name": "exchange_identifier", + "type": "string", + "required": true, + "description": "The exchange identifier. This part indicates the market where the stock is traded. For example, 'NASDAQ', 'NYSE', 'TSE', 'LSE', etc.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Summary of the stock's recent performance" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleFinance.GetStockSummary", + "parameters": { + "ticker_symbol": { + "value": "AAPL", + "type": "string", + "required": true + }, + "exchange_identifier": { + "value": "NASDAQ", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Google Finance MCP Server uses the [SerpAPI](https://serpapi.com/) to get stock data from Google Finance.\n- **Secret:**\n - `SERP_API_KEY`: Your SerpAPI API key.\n \n Setting the `SERP_API_KEY` secret is only required if you are\n [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're\n using Arcade Cloud, the secret is already set for you. To manage your\n secrets, go to the [Secrets\n page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade\n Dashboard.\n \n---", + "header": "## Auth" + }, + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## GoogleFinanceWindow\n\nDefines the time window for fetching stock data from Google Finance.\n\n- **`ONE_DAY`**: Represents a 1-day time window.\n- **`FIVE_DAYS`**: Represents a 5-day time window.\n- **`ONE_MONTH`**: Represents a 1-month time window.\n- **`SIX_MONTHS`**: Represents a 6-month time window.\n- **`YEAR_TO_DATE`**: Represents the time from the start of the year to the current date.\n- **`ONE_YEAR`**: Represents a 1-year time window.\n- **`FIVE_YEARS`**: Represents a 5-year time window.\n- **`MAX`**: Represents the maximum available time window.\n\n", + "header": "## GoogleFinanceWindow" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:32:32.156Z", + "summary": "GoogleFinance is a toolkit provided by Arcade.dev for accessing financial data through the Google Finance API. It enables developers to retrieve and analyze comprehensive stock information efficiently.\n\n**Capabilities** \n- Fetch historical stock price data over customizable time windows. \n- Retrieve current stock summaries, including price and recent trading movement. \n- Utilize API keys for secure access to financial data.\n\n**OAuth** \n- This toolkit uses an API key (SERP_API_KEY) for authentication. No OAuth2 scopes are required.\n\n**Secrets** \n- The toolkit requires an API key (SERP_API_KEY) for secure access to the financial data services." +} diff --git a/data/toolkits/googleflights.json b/data/toolkits/googleflights.json new file mode 100644 index 000000000..7d77ba191 --- /dev/null +++ b/data/toolkits/googleflights.json @@ -0,0 +1,205 @@ +{ + "id": "GoogleFlights", + "label": "Google Flights", + "version": "3.1.2", + "description": "Arcade.dev LLM tools for getting flights via Google Flights", + "metadata": { + "category": "search", + "iconUrl": "https://design-system.arcade.dev/icons/google-flights.svg", + "isBYOC": true, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/search/google_flights", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "SearchOneWayFlights", + "qualifiedName": "GoogleFlights.SearchOneWayFlights", + "fullyQualifiedName": "GoogleFlights.SearchOneWayFlights@3.1.2", + "description": "Retrieve flight search results for a one-way flight using Google Flights", + "parameters": [ + { + "name": "departure_airport_code", + "type": "string", + "required": true, + "description": "The departure airport code. An uppercase 3-letter code", + "enum": null, + "inferrable": true + }, + { + "name": "arrival_airport_code", + "type": "string", + "required": true, + "description": "The arrival airport code. An uppercase 3-letter code", + "enum": null, + "inferrable": true + }, + { + "name": "outbound_date", + "type": "string", + "required": true, + "description": "Flight departure date in YYYY-MM-DD format", + "enum": null, + "inferrable": true + }, + { + "name": "currency_code", + "type": "string", + "required": false, + "description": "Currency of the returned prices. Defaults to 'USD'", + "enum": null, + "inferrable": true + }, + { + "name": "travel_class", + "type": "string", + "required": false, + "description": "Travel class of the flight. Defaults to 'ECONOMY'", + "enum": ["ECONOMY", "PREMIUM_ECONOMY", "BUSINESS", "FIRST"], + "inferrable": true + }, + { + "name": "num_adults", + "type": "integer", + "required": false, + "description": "Number of adult passengers. Defaults to 1", + "enum": null, + "inferrable": true + }, + { + "name": "num_children", + "type": "integer", + "required": false, + "description": "Number of child passengers. Defaults to 0", + "enum": null, + "inferrable": true + }, + { + "name": "max_stops", + "type": "string", + "required": false, + "description": "Maximum number of stops (layovers) for the flight. Defaults to any number of stops", + "enum": ["ANY", "NONSTOP", "ONE", "TWO"], + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "The sorting order of the results. Defaults to TOP_FLIGHTS.", + "enum": [ + "TOP_FLIGHTS", + "PRICE", + "DEPARTURE_TIME", + "ARRIVAL_TIME", + "DURATION", + "EMISSIONS" + ], + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Flight search results from the Google Flights API" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleFlights.SearchOneWayFlights", + "parameters": { + "departure_airport_code": { + "value": "LAX", + "type": "string", + "required": true + }, + "arrival_airport_code": { + "value": "JFK", + "type": "string", + "required": true + }, + "outbound_date": { + "value": "2023-12-15", + "type": "string", + "required": true + }, + "currency_code": { + "value": "USD", + "type": "string", + "required": false + }, + "travel_class": { + "value": "ECONOMY", + "type": "string", + "required": false + }, + "num_adults": { + "value": 1, + "type": "integer", + "required": false + }, + "num_children": { + "value": 0, + "type": "integer", + "required": false + }, + "max_stops": { + "value": "1", + "type": "string", + "required": false + }, + "sort_by": { + "value": "TOP_FLIGHTS", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Google Flights MCP Server uses the [SerpAPI](https://serpapi.com/) to search for flights from Google Flights.\n- **Secret:**\n - `SERP_API_KEY`: Your SerpAPI API key.\n\n Setting the `SERP_API_KEY` secret is only required if you are\n [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're\n using Arcade Cloud, the secret is already set for you. To manage your secrets,\n go to the [Secrets page](https://api.arcade.dev/dashboard/auth/secrets) in the\n Arcade Dashboard.\n\n---", + "header": "## Auth" + }, + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## GoogleFlightsMaxStops\n\nDefines the maximum number of stops for flights.\n\n- **`ANY`**: Any number of stops is allowed.\n- **`NONSTOP`**: Only nonstop flights are allowed.\n- **`ONE`**: Only flights with one stop are allowed.\n- **`TWO`**: Only flights with two stops are allowed.", + "header": "## GoogleFlightsMaxStops" + }, + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## GoogleFlightsSortBy\n\nDefines the sorting options for flight search results.\n\n- **`TOP_FLIGHTS`**: Sort by the best available flights.\n- **`PRICE`**: Sort by the lowest price.\n- **`DEPARTURE_TIME`**: Sort by the earliest departure time.\n- **`ARRIVAL_TIME`**: Sort by the earliest arrival time.\n- **`DURATION`**: Sort by the shortest flight duration.\n- **`EMISSIONS`**: Sort by the lowest carbon emissions.", + "header": "## GoogleFlightsSortBy" + }, + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## GoogleFlightsTravelClass\n\nDefines the travel class options for flights.\n\n- **`ECONOMY`**: Economy class.\n- **`PREMIUM_ECONOMY`**: Premium economy class.\n- **`BUSINESS`**: Business class.\n- **`FIRST`**: First class.\n\n", + "header": "## GoogleFlightsTravelClass" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:32:39.012Z", + "summary": "The Arcade toolkit for Google Flights empowers developers to seamlessly integrate flight search capabilities into their applications, allowing for efficient retrieval of flight information. \n\n**Capabilities** \n- Access comprehensive one-way flight search results from Google Flights. \n- Easily integrate with existing applications for enhanced user experience. \n- Streamlined queries for fast and relevant flight data. \n\n**OAuth** \n- No OAuth requirements; utilize API key for access. \n\n**Secrets** \n- Secret type: API key. \n- Example: SERP_API_KEY is necessary for utilizing the flight search tool. " +} diff --git a/data/toolkits/googlehotels.json b/data/toolkits/googlehotels.json new file mode 100644 index 000000000..2611896a6 --- /dev/null +++ b/data/toolkits/googlehotels.json @@ -0,0 +1,215 @@ +{ + "id": "GoogleHotels", + "label": "Google Hotels", + "version": "3.1.2", + "description": "Arcade.dev LLM tools for getting Hotel information via Google Hotels", + "metadata": { + "category": "search", + "iconUrl": "https://design-system.arcade.dev/icons/google-hotels.svg", + "isBYOC": true, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/search/google_hotels", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "SearchHotels", + "qualifiedName": "GoogleHotels.SearchHotels", + "fullyQualifiedName": "GoogleHotels.SearchHotels@3.1.2", + "description": "Retrieve hotel search results using the Google Hotels API.", + "parameters": [ + { + "name": "location", + "type": "string", + "required": true, + "description": "Location to search for hotels, e.g., a city name, a state, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "check_in_date", + "type": "string", + "required": true, + "description": "Check-in date in YYYY-MM-DD format", + "enum": null, + "inferrable": true + }, + { + "name": "check_out_date", + "type": "string", + "required": true, + "description": "Check-out date in YYYY-MM-DD format", + "enum": null, + "inferrable": true + }, + { + "name": "query", + "type": "string", + "required": false, + "description": "Anything that would be used in a regular Google Hotels search", + "enum": null, + "inferrable": true + }, + { + "name": "currency", + "type": "string", + "required": false, + "description": "Currency code for prices. Defaults to 'USD'", + "enum": null, + "inferrable": true + }, + { + "name": "min_price", + "type": "integer", + "required": false, + "description": "Minimum price per night. Defaults to no minimum", + "enum": null, + "inferrable": true + }, + { + "name": "max_price", + "type": "integer", + "required": false, + "description": "Maximum price per night. Defaults to no maximum", + "enum": null, + "inferrable": true + }, + { + "name": "num_adults", + "type": "integer", + "required": false, + "description": "Number of adults per room. Defaults to 2", + "enum": null, + "inferrable": true + }, + { + "name": "num_children", + "type": "integer", + "required": false, + "description": "Number of children per room. Defaults to 0", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "The sorting order of the results. Defaults to RELEVANCE", + "enum": [ + "RELEVANCE", + "LOWEST_PRICE", + "HIGHEST_RATING", + "MOST_REVIEWED" + ], + "inferrable": true + }, + { + "name": "num_results", + "type": "integer", + "required": false, + "description": "Maximum number of results to return. Defaults to 5. Max 20", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Hotel search results from the Google Hotels API" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleHotels.SearchHotels", + "parameters": { + "location": { + "value": "New York City", + "type": "string", + "required": true + }, + "check_in_date": { + "value": "2023-10-15", + "type": "string", + "required": true + }, + "check_out_date": { + "value": "2023-10-20", + "type": "string", + "required": true + }, + "query": { + "value": "luxury hotels", + "type": "string", + "required": false + }, + "currency": { + "value": "USD", + "type": "string", + "required": false + }, + "min_price": { + "value": 200, + "type": "integer", + "required": false + }, + "max_price": { + "value": 500, + "type": "integer", + "required": false + }, + "num_adults": { + "value": 2, + "type": "integer", + "required": false + }, + "num_children": { + "value": 1, + "type": "integer", + "required": false + }, + "sort_by": { + "value": "PRICE", + "type": "string", + "required": false + }, + "num_results": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Google Hotels MCP Server uses the [SerpAPI](https://serpapi.com/) to search for hotels from Google Hotels.\n- **Secret:**\n - `SERP_API_KEY`: Your SerpAPI API key.\n\n Setting the `SERP_API_KEY` secret is only required if you are\n [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're\n using Arcade Cloud, the secret is already set for you. To manage your secrets,\n go to the [Secrets page](https://api.arcade.dev/dashboard/auth/secrets) in the\n Arcade Dashboard.\n", + "header": "## Auth" + }, + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## GoogleHotelsSortBy\n\nDefines the sorting options for hotel search results.\n\n- **`RELEVANCE`**: Sort by the most relevant results.\n- **`LOWEST_PRICE`**: Sort by the lowest price available.\n- **`HIGHEST_RATING`**: Sort by the highest customer ratings.\n- **`MOST_REVIEWED`**: Sort by the most reviewed hotels.\n\n", + "header": "## GoogleHotelsSortBy" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:32:46.374Z", + "summary": "Arcade.dev provides the GoogleHotels toolkit, enabling developers to efficiently retrieve hotel information through the Google Hotels API. This toolkit facilitates hotel searches, offering a streamlined method to access comprehensive hotel data.\n\n**Capabilities:** \n- Effortlessly search for hotels based on various parameters. \n- Retrieve detailed hotel information including availability and pricing. \n- Integrate smoothly with existing applications for enhanced user experience. \n\n**OAuth:** \n- No OAuth authentication required.\n\n**Secrets:** \n- API Key: Use the `SERP_API_KEY` for API access and secure interactions with the Google Hotels service." +} diff --git a/data/toolkits/googlejobs.json b/data/toolkits/googlejobs.json new file mode 100644 index 000000000..09a5c27f4 --- /dev/null +++ b/data/toolkits/googlejobs.json @@ -0,0 +1,139 @@ +{ + "id": "GoogleJobs", + "label": "Google Jobs", + "version": "3.1.2", + "description": "Arcade.dev LLM tools for getting job postings via Google Jobs", + "metadata": { + "category": "search", + "iconUrl": "https://design-system.arcade.dev/icons/google-jobs.svg", + "isBYOC": true, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/search/google_jobs", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "SearchJobs", + "qualifiedName": "GoogleJobs.SearchJobs", + "fullyQualifiedName": "GoogleJobs.SearchJobs@3.1.2", + "description": "Search Google Jobs using SerpAPI.", + "parameters": [ + { + "name": "query", + "type": "string", + "required": true, + "description": "Search query. Provide a job title, company name, and/or any keywords in general representing what kind of jobs the user is looking for. E.g. 'software engineer' or 'data analyst at Apple'.", + "enum": null, + "inferrable": true + }, + { + "name": "location", + "type": "string", + "required": false, + "description": "Location to search for jobs. E.g. 'United States' or 'New York, NY'. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "language", + "type": "string", + "required": false, + "description": "2-character language code to use in the Google Jobs search. E.g. 'en' for English. Defaults to 'en'.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of results to retrieve. Defaults to 10 (max supported by the API).", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "Next page token to paginate results. Defaults to None (start from the first page).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Google Jobs results" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleJobs.SearchJobs", + "parameters": { + "query": { + "value": "software engineer", + "type": "string", + "required": true + }, + "location": { + "value": "San Francisco, CA", + "type": "string", + "required": false + }, + "language": { + "value": "en", + "type": "string", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Google Jobs MCP Server uses the [SerpAPI](https://serpapi.com/) to get job data from Google Jobs.\n- **Secret:**\n - `SERP_API_KEY`: Your SerpAPI API key.\n \n Setting the `SERP_API_KEY` secret is only required if you are\n [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're\n using Arcade Cloud, the secret is already set for you. To manage your\n secrets, go to the [Secrets\n page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade\n Dashboard.\n ", + "header": "## Auth" + }, + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## Default parameters\n\nLanguage is configurable through environment variables. When set, they will be used as default for Google Jobs tools.\n\nProviding a different value as `language` argument in a tool call will override the default value.\n\n**Language**\n\nThe language code is a 2-character code that determines the language in which the API will search and return news articles. There are two environment variables:\n\n- `ARCADE_GOOGLE_LANGUAGE`: a default value for all Google search tools. If not set, defaults to 'en' (English).\n- `ARCADE_GOOGLE_JOBS_LANGUAGE`: a default value for the jobs search tools. If not set, defaults to `ARCADE_GOOGLE_LANGUAGE`.\n\nA list of supported language codes can be found [here](#languagecodes).", + "header": "## Default parameters" + }, + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## LanguageCodes\n\n- **`ar`**: Arabic\n- **`bn`**: Bengali\n- **`da`**: Danish\n- **`de`**: German\n- **`el`**: Greek\n- **`en`**: English\n- **`es`**: Spanish\n- **`fi`**: Finnish\n- **`fr`**: French\n- **`hi`**: Hindi\n- **`hu`**: Hungarian\n- **`id`**: Indonesian\n- **`it`**: Italian\n- **`ja`**: Japanese\n- **`ko`**: Korean\n- **`ms`**: Malay\n- **`nl`**: Dutch\n- **`no`**: Norwegian\n- **`pcm`**: Nigerian Pidgin\n- **`pl`**: Polish\n- **`pt`**: Portuguese\n- **`pt-br`**: Portuguese (Brazil)\n- **`pt-pt`**: Portuguese (Portugal)\n- **`ru`**: Russian\n- **`sv`**: Swedish\n- **`tl`**: Filipino\n- **`tr`**: Turkish\n- **`uk`**: Ukrainian\n- **`zh`**: Chinese\n- **`zh-cn`**: Chinese (Simplified)\n- **`zh-tw`**: Chinese (Traditional)\n\n", + "header": "## LanguageCodes" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:32:52.433Z", + "summary": "Arcade.dev provides the GoogleJobs toolkit, enabling developers to access job postings directly from Google Jobs through SerpAPI. This toolkit streamlines job searches, making it efficient and effective to find relevant job listings.\n\n**Capabilities** \n- Seamless integration with Google Jobs for job postings retrieval. \n- Comprehensive search capabilities tailored to various job criteria. \n- Easy access to job data through a user-friendly API.\n\n**OAuth** \n- This toolkit does not require OAuth authentication but uses an API key for access.\n\n**Secrets** \n- Contains secrets in the form of API keys, such as the SERP_API_KEY for authenticating requests." +} diff --git a/data/toolkits/googlemaps.json b/data/toolkits/googlemaps.json new file mode 100644 index 000000000..806d32f92 --- /dev/null +++ b/data/toolkits/googlemaps.json @@ -0,0 +1,293 @@ +{ + "id": "GoogleMaps", + "label": "Google Maps", + "version": "3.1.2", + "description": "Arcade.dev LLM tools for getting directions via Google Maps", + "metadata": { + "category": "search", + "iconUrl": "https://design-system.arcade.dev/icons/google-maps.svg", + "isBYOC": true, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/search/google_maps", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "GetDirectionsBetweenAddresses", + "qualifiedName": "GoogleMaps.GetDirectionsBetweenAddresses", + "fullyQualifiedName": "GoogleMaps.GetDirectionsBetweenAddresses@3.1.2", + "description": "Get directions from Google Maps.", + "parameters": [ + { + "name": "origin_address", + "type": "string", + "required": true, + "description": "The origin address. Example: '123 Main St, New York, NY 10001'", + "enum": null, + "inferrable": true + }, + { + "name": "destination_address", + "type": "string", + "required": true, + "description": "The destination address. Example: '456 Main St, New York, NY 10001'", + "enum": null, + "inferrable": true + }, + { + "name": "language", + "type": "string", + "required": false, + "description": "2-character language code to use in the Google Maps search. Defaults to 'en'.", + "enum": null, + "inferrable": true + }, + { + "name": "country", + "type": "string", + "required": false, + "description": "2-character country code to use in the Google Maps search. Defaults to 'None'.", + "enum": null, + "inferrable": true + }, + { + "name": "distance_unit", + "type": "string", + "required": false, + "description": "Distance unit to use in the Google Maps search. Defaults to 'GoogleMapsDistanceUnit.KM'.", + "enum": ["km", "mi"], + "inferrable": true + }, + { + "name": "travel_mode", + "type": "string", + "required": false, + "description": "Travel mode to use in the Google Maps search. Defaults to 'GoogleMapsTravelMode.BEST'.", + "enum": [ + "best", + "driving", + "motorcycle", + "public_transportation", + "walking", + "bicycle", + "flight" + ], + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "The directions from Google Maps" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleMaps.GetDirectionsBetweenAddresses", + "parameters": { + "origin_address": { + "value": "123 Main St, New York, NY 10001", + "type": "string", + "required": true + }, + "destination_address": { + "value": "456 Main St, New York, NY 10001", + "type": "string", + "required": true + }, + "language": { + "value": "en", + "type": "string", + "required": false + }, + "country": { + "value": "US", + "type": "string", + "required": false + }, + "distance_unit": { + "value": "GoogleMapsDistanceUnit.KM", + "type": "string", + "required": false + }, + "travel_mode": { + "value": "GoogleMapsTravelMode.DRIVING", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDirectionsBetweenCoordinates", + "qualifiedName": "GoogleMaps.GetDirectionsBetweenCoordinates", + "fullyQualifiedName": "GoogleMaps.GetDirectionsBetweenCoordinates@3.1.2", + "description": "Get directions from Google Maps.", + "parameters": [ + { + "name": "origin_latitude", + "type": "string", + "required": true, + "description": "The origin latitude. E.g. '40.7128'", + "enum": null, + "inferrable": true + }, + { + "name": "origin_longitude", + "type": "string", + "required": true, + "description": "The origin longitude. E.g. '-74.0060'", + "enum": null, + "inferrable": true + }, + { + "name": "destination_latitude", + "type": "string", + "required": true, + "description": "The destination latitude. E.g. '40.7128'", + "enum": null, + "inferrable": true + }, + { + "name": "destination_longitude", + "type": "string", + "required": true, + "description": "The destination longitude. E.g. '-74.0060'", + "enum": null, + "inferrable": true + }, + { + "name": "language", + "type": "string", + "required": false, + "description": "2-letter language code to use in the Google Maps search. Defaults to 'en'.", + "enum": null, + "inferrable": true + }, + { + "name": "country", + "type": "string", + "required": false, + "description": "2-letter country code to use in the Google Maps search. Defaults to 'None'.", + "enum": null, + "inferrable": true + }, + { + "name": "distance_unit", + "type": "string", + "required": false, + "description": "Distance unit to use in the Google Maps search. Defaults to 'GoogleMapsDistanceUnit.KM'.", + "enum": ["km", "mi"], + "inferrable": true + }, + { + "name": "travel_mode", + "type": "string", + "required": false, + "description": "Travel mode to use in the Google Maps search. Defaults to 'GoogleMapsTravelMode.BEST'.", + "enum": [ + "best", + "driving", + "motorcycle", + "public_transportation", + "walking", + "bicycle", + "flight" + ], + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "The directions from Google Maps" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleMaps.GetDirectionsBetweenCoordinates", + "parameters": { + "origin_latitude": { + "value": "34.0522", + "type": "string", + "required": true + }, + "origin_longitude": { + "value": "-118.2437", + "type": "string", + "required": true + }, + "destination_latitude": { + "value": "34.0522", + "type": "string", + "required": true + }, + "destination_longitude": { + "value": "-118.2437", + "type": "string", + "required": true + }, + "language": { + "value": "en", + "type": "string", + "required": false + }, + "country": { + "value": "US", + "type": "string", + "required": false + }, + "distance_unit": { + "value": "GoogleMapsDistanceUnit.KM", + "type": "string", + "required": false + }, + "travel_mode": { + "value": "GoogleMapsTravelMode.BEST", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Google Maps MCP Server uses the [SerpAPI](https://serpapi.com/) to get directions.\n- **Secret:**\n - `SERP_API_KEY`: Your SerpAPI API key.\n \n Setting the `SERP_API_KEY` secret is only required if you are\n [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're\n using Arcade Cloud, the secret is already set for you. To manage your\n secrets, go to the [Secrets\n page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade\n Dashboard.\n ", + "header": "## Auth" + }, + { + "type": "info", + "location": "custom_section", + "position": "after", + "content": "## Default parameters\n\nLanguage, Country, Distance Unit, and Travel Mode are configurable through environment variables. When set, they will be used as default for Google Maps tools.\n\nProviding a different value as `language`, `country`, `distance_unit`, or `travel_mode` argument in a tool call will override the default value.\n\n**Language**\n\nThe language code is a 2-character code that determines the language in which the API will search and return directions. There are two environment variables:\n\n- `ARCADE_GOOGLE_LANGUAGE`: a default value for all Google tools. If not set, defaults to 'en' (English).\n- `ARCADE_GOOGLE_MAPS_LANGUAGE`: a default value for the Google Maps tools. If not set, defaults to `ARCADE_GOOGLE_LANGUAGE`.\n\nA list of supported language codes can be found [here](#languagecodes).\n\n**Country**\n\nThe country code is a 2-character code that determines the country in which the API will search for directions:\n\n- `ARCADE_GOOGLE_MAPS_COUNTRY`: a default value for the Google Maps tools. If not set, defaults to `None`.\n\nA list of supported country codes can be found [here](#countrycodes).\n\n**Distance Unit**\n\nThe distance unit is a string that determines the unit of distance to use in the Google Maps search:\n\n- `ARCADE_GOOGLE_MAPS_DISTANCE_UNIT`: a default value for the Google Maps tools. If not set, defaults to `GoogleMapsDistanceUnit.KM`.\n\nA list of supported distance units can be found [here](#googlemapsdistanceunit).\n\n**Travel Mode**\n\nThe travel mode is a string that determines the mode of travel to use in the Google Maps search:\n\n- `ARCADE_GOOGLE_MAPS_TRAVEL_MODE`: a default value for the Google Maps tools. If not set, defaults to `GoogleMapsTravelMode.BEST`.\n\nA list of supported travel modes can be found [here](#googlemapstravelmode).\n\n- **Secret:**\n - `SERP_API_KEY`: Your SerpAPI API key.\n \n Setting the `SERP_API_KEY` secret is only required if you are\n [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're\n using Arcade Cloud, the secret is already set for you. To manage your\n secrets, go to the [Secrets\n page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade\n Dashboard.\n \n\n---", + "header": "## Default parameters" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:33:00.774Z", + "summary": "Arcade.dev provides a toolkit for integrating Google Maps functionalities, enabling developers to obtain directions seamlessly. This toolkit simplifies the process of accessing vital navigation data through an easy-to-use API.\n\n**Capabilities** \n- Retrieve directions between addresses or coordinates \n- Access detailed route information including estimated travel time and distance \n- Integrate with existing applications to enhance location-based services \n\n**OAuth** \n- This toolkit does not require OAuth authorization; however, it uses an API key for access.\n\n**Secrets** \n- **Secret Type:** API Key \n **Example:** SERP_API_KEY \n Developers must securely store the API key to authenticate their requests." +} diff --git a/data/toolkits/googlenews.json b/data/toolkits/googlenews.json new file mode 100644 index 000000000..17ee253c2 --- /dev/null +++ b/data/toolkits/googlenews.json @@ -0,0 +1,133 @@ +{ + "id": "GoogleNews", + "label": "Google News", + "version": "3.1.2", + "description": "Arcade.dev LLM tools for getting new via Google News", + "metadata": { + "category": "search", + "iconUrl": "https://design-system.arcade.dev/icons/google-news.svg", + "isBYOC": true, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/search/google_news", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "SearchNewsStories", + "qualifiedName": "GoogleNews.SearchNewsStories", + "fullyQualifiedName": "GoogleNews.SearchNewsStories@3.1.2", + "description": "Search for news articles related to a given query.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "Keywords to search for news articles. E.g. 'Apple launches new iPhone'.", + "enum": null, + "inferrable": true + }, + { + "name": "country_code", + "type": "string", + "required": false, + "description": "2-character country code to search for news articles. E.g. 'us' (United States). Defaults to 'None'.", + "enum": null, + "inferrable": true + }, + { + "name": "language_code", + "type": "string", + "required": false, + "description": "2-character language code to search for news articles. E.g. 'en' (English). Defaults to 'en'.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of news articles to return. Defaults to None (returns all results found by the API).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "News search results with article details." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleNews.SearchNewsStories", + "parameters": { + "keywords": { + "value": "Apple launches new iPhone", + "type": "string", + "required": true + }, + "country_code": { + "value": "us", + "type": "string", + "required": false + }, + "language_code": { + "value": "en", + "type": "string", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Google News MCP Server uses the [SerpAPI](https://serpapi.com/) to get news data from Google News.\n- **Secret:**\n - `SERP_API_KEY`: Your SerpAPI API key.\n \n Setting the `SERP_API_KEY` secret is only required if you are\n [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're\n using Arcade Cloud, the secret is already set for you. To manage your\n secrets, go to the [Secrets\n page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade\n Dashboard.\n ", + "header": "## Auth" + }, + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## Default parameters\n\nLanguage and Country are configurable through environment variables. When set, they will be used as default for Google News tools.\n\nProviding a different value as `language_code` or `country_code` argument in the tool call will override the default value.\n\n**Language**\n\nThe language code is a 2-character code that determines the language in which the API will search and return news articles. There are two environment variables:\n\n- `ARCADE_GOOGLE_LANGUAGE`: a default value for all Google search tools. If not set, defaults to 'en' (English).\n- `ARCADE_GOOGLE_NEWS_LANGUAGE`: a default value for the news search tools. If not set, defaults to `ARCADE_GOOGLE_LANGUAGE`.\n\nA list of supported language codes can be found [here](#languagecodes).\n\n**Country**\n\nThe country code is a 2-character code that determines the country in which the API will search for news articles. There are two environment variables:\n\n- `ARCADE_GOOGLE_NEWS_COUNTRY`: a default value for the `SearchNews` tool. If not set, defaults to `None` (search news globally).\n\nA list of supported country codes can be found [here](#countrycodes).\n\n---", + "header": "## Default parameters" + }, + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## LanguageCodes\n\n- **`ar`**: Arabic\n- **`bn`**: Bengali\n- **`da`**: Danish\n- **`de`**: German\n- **`el`**: Greek\n- **`en`**: English\n- **`es`**: Spanish\n- **`fi`**: Finnish\n- **`fr`**: French\n- **`hi`**: Hindi\n- **`hu`**: Hungarian\n- **`id`**: Indonesian\n- **`it`**: Italian\n- **`ja`**: Japanese\n- **`ko`**: Korean\n- **`ms`**: Malay\n- **`nl`**: Dutch\n- **`no`**: Norwegian\n- **`pcm`**: Nigerian Pidgin\n- **`pl`**: Polish\n- **`pt`**: Portuguese\n- **`pt-br`**: Portuguese (Brazil)\n- **`pt-pt`**: Portuguese (Portugal)\n- **`ru`**: Russian\n- **`sv`**: Swedish\n- **`tl`**: Filipino\n- **`tr`**: Turkish\n- **`uk`**: Ukrainian\n- **`zh`**: Chinese\n- **`zh-cn`**: Chinese (Simplified)\n- **`zh-tw`**: Chinese (Traditional)", + "header": "## LanguageCodes" + }, + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## CountryCodes\n\n- **`af`**: Afghanistan\n- **`al`**: Albania\n- **`dz`**: Algeria\n- **`as`**: American Samoa\n- **`ad`**: Andorra\n- **`ao`**: Angola\n- **`ai`**: Anguilla\n- **`aq`**: Antarctica\n- **`ag`**: Antigua and Barbuda\n- **`ar`**: Argentina\n- **`am`**: Armenia\n- **`aw`**: Aruba\n- **`au`**: Australia\n- **`at`**: Austria\n- **`az`**: Azerbaijan\n- **`bs`**: Bahamas\n- **`bh`**: Bahrain\n- **`bd`**: Bangladesh\n- **`bb`**: Barbados\n- **`by`**: Belarus\n- **`be`**: Belgium\n- **`bz`**: Belize\n- **`bj`**: Benin\n- **`bm`**: Bermuda\n- **`bt`**: Bhutan\n- **`bo`**: Bolivia\n- **`ba`**: Bosnia and Herzegovina\n- **`bw`**: Botswana\n- **`bv`**: Bouvet Island\n- **`br`**: Brazil\n- **`io`**: British Indian Ocean Territory\n- **`bn`**: Brunei Darussalam\n- **`bg`**: Bulgaria\n- **`bf`**: Burkina Faso\n- **`bi`**: Burundi\n- **`kh`**: Cambodia\n- **`cm`**: Cameroon\n- **`ca`**: Canada\n- **`cv`**: Cape Verde\n- **`ky`**: Cayman Islands\n- **`cf`**: Central African Republic\n- **`td`**: Chad\n- **`cl`**: Chile\n- **`cn`**: China\n- **`cx`**: Christmas Island\n- **`cc`**: Cocos (Keeling) Islands\n- **`co`**: Colombia\n- **`km`**: Comoros\n- **`cg`**: Congo\n- **`cd`**: Congo, the Democratic Republic of the\n- **`ck`**: Cook Islands\n- **`cr`**: Costa Rica\n- **`ci`**: Cote D'ivoire\n- **`hr`**: Croatia\n- **`cu`**: Cuba\n- **`cy`**: Cyprus\n- **`cz`**: Czech Republic\n- **`dk`**: Denmark\n- **`dj`**: Djibouti\n- **`dm`**: Dominica\n- **`do`**: Dominican Republic\n- **`ec`**: Ecuador\n- **`eg`**: Egypt\n- **`sv`**: El Salvador\n- **`gq`**: Equatorial Guinea\n- **`er`**: Eritrea\n- **`ee`**: Estonia\n- **`et`**: Ethiopia\n- **`fk`**: Falkland Islands (Malvinas)\n- **`fo`**: Faroe Islands\n- **`fj`**: Fiji\n- **`fi`**: Finland\n- **`fr`**: France\n- **`gf`**: French Guiana\n- **`pf`**: French Polynesia\n- **`tf`**: French Southern Territories\n- **`ga`**: Gabon\n- **`gm`**: Gambia\n- **`ge`**: Georgia\n- **`de`**: Germany\n- **`gh`**: Ghana\n- **`gi`**: Gibraltar\n- **`gr`**: Greece\n- **`gl`**: Greenland\n- **`gd`**: Grenada\n- **`gp`**: Guadeloupe\n- **`gu`**: Guam\n- **`gt`**: Guatemala\n- **`gg`**: Guernsey\n- **`gn`**: Guinea\n- **`gw`**: Guinea-Bissau\n- **`gy`**: Guyana\n- **`ht`**: Haiti\n- **`hm`**: Heard Island and Mcdonald Islands\n- **`va`**: Holy See (Vatican City State)\n- **`hn`**: Honduras\n- **`hk`**: Hong Kong\n- **`hu`**: Hungary\n- **`is`**: Iceland\n- **`in`**: India\n- **`id`**: Indonesia\n- **`ir`**: Iran, Islamic Republic of\n- **`iq`**: Iraq\n- **`ie`**: Ireland\n- **`im`**: Isle of Man\n- **`il`**: Israel\n- **`it`**: Italy\n- **`je`**: Jersey\n- **`jm`**: Jamaica\n- **`jp`**: Japan\n- **`jo`**: Jordan\n- **`kz`**: Kazakhstan\n- **`ke`**: Kenya\n- **`ki`**: Kiribati\n- **`kp`**: Korea, Democratic People's Republic of\n- **`kr`**: Korea, Republic of\n- **`kw`**: Kuwait\n- **`kg`**: Kyrgyzstan\n- **`la`**: Lao People's Democratic Republic\n- **`lv`**: Latvia\n- **`lb`**: Lebanon\n- **`ls`**: Lesotho\n- **`lr`**: Liberia\n- **`ly`**: Libyan Arab Jamahiriya\n- **`li`**: Liechtenstein\n- **`lt`**: Lithuania\n- **`lu`**: Luxembourg\n- **`mo`**: Macao\n- **`mk`**: Macedonia, the Former Yugosalv Republic of\n- **`mg`**: Madagascar\n- **`mw`**: Malawi\n- **`my`**: Malaysia\n- **`mv`**: Maldives\n- **`ml`**: Mali\n- **`mt`**: Malta\n- **`mh`**: Marshall Islands\n- **`mq`**: Martinique\n- **`mr`**: Mauritania\n- **`mu`**: Mauritius\n- **`yt`**: Mayotte\n- **`mx`**: Mexico\n- **`fm`**: Micronesia, Federated States of\n- **`md`**: Moldova, Republic of\n- **`mc`**: Monaco\n- **`mn`**: Mongolia\n- **`me`**: Montenegro\n- **`ms`**: Montserrat\n- **`ma`**: Morocco\n- **`mz`**: Mozambique\n- **`mm`**: Myanmar\n- **`na`**: Namibia\n- **`nr`**: Nauru\n- **`np`**: Nepal\n- **`nl`**: Netherlands\n- **`an`**: Netherlands Antilles\n- **`nc`**: New Caledonia\n- **`nz`**: New Zealand\n- **`ni`**: Nicaragua\n- **`ne`**: Niger\n- **`ng`**: Nigeria\n- **`nu`**: Niue\n- **`nf`**: Norfolk Island\n- **`mp`**: Northern Mariana Islands\n- **`no`**: Norway\n- **`om`**: Oman\n- **`pk`**: Pakistan\n- **`pw`**: Palau\n- **`ps`**: Palestinian Territory, Occupied\n- **`pa`**: Panama\n- **`pg`**: Papua New Guinea\n- **`py`**: Paraguay\n- **`pe`**: Peru\n- **`ph`**: Philippines\n- **`pn`**: Pitcairn\n- **`pl`**: Poland\n- **`pt`**: Portugal\n- **`pr`**: Puerto Rico\n- **`qa`**: Qatar\n- **`re`**: Reunion\n- **`ro`**: Romania\n- **`ru`**: Russian Federation\n- **`rw`**: Rwanda\n- **`sh`**: Saint Helena\n- **`kn`**: Saint Kitts and Nevis\n- **`lc`**: Saint Lucia\n- **`pm`**: Saint Pierre and Miquelon\n- **`vc`**: Saint Vincent and the Grenadines\n- **`ws`**: Samoa\n- **`sm`**: San Marino\n- **`st`**: Sao Tome and Principe\n- **`sa`**: Saudi Arabia\n- **`sn`**: Senegal\n- **`rs`**: Serbia\n- **`sc`**: Seychelles\n- **`sl`**: Sierra Leone\n- **`sg`**: Singapore\n- **`sk`**: Slovakia\n- **`si`**: Slovenia\n- **`sb`**: Solomon Islands\n- **`so`**: Somalia\n- **`za`**: South Africa\n- **`gs`**: South Georgia and the South Sandwich Islands\n- **`es`**: Spain\n- **`lk`**: Sri Lanka\n- **`sd`**: Sudan\n- **`sr`**: Suriname\n- **`sj`**: Svalbard and Jan Mayen\n- **`sz`**: Swaziland\n- **`se`**: Sweden\n- **`ch`**: Switzerland\n- **`sy`**: Syrian Arab Republic\n- **`tw`**: Taiwan, Province of China\n- **`tj`**: Tajikistan\n- **`tz`**: Tanzania, United Republic of\n- **`th`**: Thailand\n- **`tl`**: Timor-Leste\n- **`tg`**: Togo\n- **`tk`**: Tokelau\n- **`to`**: Tonga\n- **`tt`**: Trinidad and Tobago\n- **`tn`**: Tunisia\n- **`tr`**: Turkiye\n- **`tm`**: Turkmenistan\n- **`tc`**: Turks and Caicos Islands\n- **`tv`**: Tuvalu\n- **`ug`**: Uganda\n- **`ua`**: Ukraine\n- **`ae`**: United Arab Emirates\n- **`uk`**: United Kingdom\n- **`gb`**: United Kingdom\n- **`us`**: United States\n- **`um`**: United States Minor Outlying Islands\n- **`uy`**: Uruguay\n- **`uz`**: Uzbekistan\n- **`vu`**: Vanuatu\n- **`ve`**: Venezuela\n- **`vn`**: Viet Nam\n- **`vg`**: Virgin Islands, British\n- **`vi`**: Virgin Islands, U.S.\n- **`wf`**: Wallis and Futuna\n- **`eh`**: Western Sahara\n- **`ye`**: Yemen\n- **`zm`**: Zambia\n- **`zw`**: Zimbabwe\n\n", + "header": "## CountryCodes" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:33:06.757Z", + "summary": "The Arcade toolkit for GoogleNews enables developers to retrieve the latest news articles through a seamless integration with Google News. This toolkit provides efficient access to current stories based on queries, ensuring users stay informed.\n\n### Capabilities\n- Access to real-time news articles from Google News.\n- Query-based searching for specific topics or events.\n- Easy integration into applications for timely updates.\n\n### OAuth \nNo OAuth authentication is required, but API key usage is necessary for accessing the service.\n\n### Secrets \nDevelopers must use the following secret type for accessing the API: \n- **API Key**: SERP_API_KEY, required for API access." +} diff --git a/data/toolkits/googlesearch.json b/data/toolkits/googlesearch.json new file mode 100644 index 000000000..39b9f3770 --- /dev/null +++ b/data/toolkits/googlesearch.json @@ -0,0 +1,86 @@ +{ + "id": "GoogleSearch", + "label": "Google Search", + "version": "3.1.2", + "description": "Arcade.dev LLM tools for searching via Google", + "metadata": { + "category": "search", + "iconUrl": "https://design-system.arcade.dev/icons/google-search.svg", + "isBYOC": true, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/search/google_search", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "Search", + "qualifiedName": "GoogleSearch.Search", + "fullyQualifiedName": "GoogleSearch.Search@3.1.2", + "description": "Search Google using SerpAPI and return organic search results.", + "parameters": [ + { + "name": "query", + "type": "string", + "required": true, + "description": "Search query", + "enum": null, + "inferrable": true + }, + { + "name": "n_results", + "type": "integer", + "required": false, + "description": "Number of results to retrieve", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSearch.Search", + "parameters": { + "query": { + "value": "best coffee shops in New York", + "type": "string", + "required": true + }, + "n_results": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Google Search MCP Server uses the [SerpAPI](https://serpapi.com/) to get results from a Google search.\n- **Secret:**\n - `SERP_API_KEY`: Your SerpAPI API key.\n \n Setting the `SERP_API_KEY` secret is only required if you are\n [self-hosting](/guides/deployment-hosting/configure-engine) Arcade. If you're\n using Arcade Cloud, the secret is already set for you. To manage your\n secrets, go to the [Secrets\n page](https://api.arcade.dev/dashboard/auth/secrets) in the Arcade\n Dashboard.\n ", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:33:12.272Z", + "summary": "Arcade.dev provides a toolkit for integrating Google search functionalities using its GoogleSearch tool. This enables developers to seamlessly fetch and utilize organic search results in their applications.\n\n**Capabilities**\n- Perform Google searches and retrieve organic results efficiently.\n- Integrate easily with existing applications and workflows.\n- Utilize powerful search algorithms to enhance user experiences.\n\n**OAuth**\n- No OAuth required; however, an API key is needed for access.\n\n**Secrets**\n- **api_key**: Use the `SERP_API_KEY` to authenticate and authorize your search requests. Make sure to store it securely.'}" +} diff --git a/data/toolkits/googlesheets.json b/data/toolkits/googlesheets.json new file mode 100644 index 000000000..76509a3c2 --- /dev/null +++ b/data/toolkits/googlesheets.json @@ -0,0 +1,741 @@ +{ + "id": "GoogleSheets", + "label": "Google Sheets", + "version": "5.1.0", + "description": "Arcade.dev LLM tools for Google Sheets.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/google-sheets.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/google-sheets", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "google", + "allScopes": [ + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + }, + "tools": [ + { + "name": "AddNoteToCell", + "qualifiedName": "GoogleSheets.AddNoteToCell", + "fullyQualifiedName": "GoogleSheets.AddNoteToCell@5.1.0", + "description": "Add a note to a specific cell in a spreadsheet. A note is a small\npiece of text attached to a cell (shown with a black triangle) that\nappears when you hover over the cell.\n\nsheet_id_or_name takes precedence over sheet_position. If a sheet is not mentioned,\nthen always assume the default sheet_position is sufficient.", + "parameters": [ + { + "name": "spreadsheet_id", + "type": "string", + "required": true, + "description": "The id of the spreadsheet to add a comment to", + "enum": null, + "inferrable": true + }, + { + "name": "column", + "type": "string", + "required": true, + "description": "The column string to add a note to. For example, 'A', 'F', or 'AZ'", + "enum": null, + "inferrable": true + }, + { + "name": "row", + "type": "integer", + "required": true, + "description": "The row number to add a note to", + "enum": null, + "inferrable": true + }, + { + "name": "note_text", + "type": "string", + "required": true, + "description": "The text for the note to add", + "enum": null, + "inferrable": true + }, + { + "name": "sheet_position", + "type": "integer", + "required": false, + "description": "The position/tab of the sheet in the spreadsheet to write to. A value of 1 represents the first (leftmost/Sheet1) sheet. Defaults to 1.", + "enum": null, + "inferrable": true + }, + { + "name": "sheet_id_or_name", + "type": "string", + "required": false, + "description": "The id or name of the sheet to write to. If provided, takes precedence over sheet_position.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The status of the operation" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSheets.AddNoteToCell", + "parameters": { + "spreadsheet_id": { + "value": "1A2B3C4D5E6F7G8H9I0J", + "type": "string", + "required": true + }, + "column": { + "value": "B", + "type": "string", + "required": true + }, + "row": { + "value": 5, + "type": "integer", + "required": true + }, + "note_text": { + "value": "This is a note regarding the data in this cell.", + "type": "string", + "required": true + }, + "sheet_position": { + "value": 2, + "type": "integer", + "required": false + }, + "sheet_id_or_name": { + "value": "Monthly Report", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSpreadsheet", + "qualifiedName": "GoogleSheets.CreateSpreadsheet", + "fullyQualifiedName": "GoogleSheets.CreateSpreadsheet@5.1.0", + "description": "Create a new spreadsheet with the provided title and data in its first sheet\n\nReturns the newly created spreadsheet's id and title", + "parameters": [ + { + "name": "title", + "type": "string", + "required": false, + "description": "The title of the new spreadsheet", + "enum": null, + "inferrable": true + }, + { + "name": "data", + "type": "string", + "required": false, + "description": "The data to write to the spreadsheet. A JSON string (property names enclosed in double quotes) representing a dictionary that maps row numbers to dictionaries that map column letters to cell values. For example, data[23]['C'] would be the value of the cell in row 23, column C. Type hint: dict[int, dict[str, Union[int, float, str, bool]]]", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The created spreadsheet's id and title" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSheets.CreateSpreadsheet", + "parameters": { + "title": { + "value": "Monthly Budget Report", + "type": "string", + "required": false + }, + "data": { + "value": "{\"1\":{\"A\":\"Item\",\"B\":\"Amount\",\"C\":\"Category\"},\"2\":{\"A\":\"Rent\",\"B\":1200,\"C\":\"Housing\"},\"3\":{\"A\":\"Groceries\",\"B\":400,\"C\":\"Food\"},\"4\":{\"A\":\"Utilities\",\"B\":150,\"C\":\"Housing\"},\"5\":{\"A\":\"Internet\",\"B\":60,\"C\":\"Utilities\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GenerateGoogleFilePickerUrl", + "qualifiedName": "GoogleSheets.GenerateGoogleFilePickerUrl", + "fullyQualifiedName": "GoogleSheets.GenerateGoogleFilePickerUrl@5.1.0", + "description": "Generate a Google File Picker URL for user-driven file selection and authorization.\n\nThis tool generates a URL that directs the end-user to a Google File Picker interface where\nwhere they can select or upload Google Drive files. Users can grant permission to access their\nDrive files, providing a secure and authorized way to interact with their files.\n\nThis is particularly useful when prior tools (e.g., those accessing or modifying\nGoogle Docs, Google Sheets, etc.) encountered failures due to file non-existence\n(Requested entity was not found) or permission errors. Once the user completes the file\npicker flow, the prior tool can be retried.\n\nSuggest this tool to users when they are surprised or confused that the file they are\nsearching for or attempting to access cannot be found.", + "parameters": [], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Google File Picker URL for user file selection and permission granting" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSheets.GenerateGoogleFilePickerUrl", + "parameters": {}, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSpreadsheet", + "qualifiedName": "GoogleSheets.GetSpreadsheet", + "fullyQualifiedName": "GoogleSheets.GetSpreadsheet@5.1.0", + "description": "Gets the specified range of cells from a single sheet in the spreadsheet.\n\nsheet_id_or_name takes precedence over sheet_position. If a sheet is not mentioned,\nthen always assume the default sheet_position is sufficient.", + "parameters": [ + { + "name": "spreadsheet_id", + "type": "string", + "required": true, + "description": "The id of the spreadsheet to get", + "enum": null, + "inferrable": true + }, + { + "name": "sheet_position", + "type": "integer", + "required": false, + "description": "The position/tab of the sheet in the spreadsheet to get. A value of 1 represents the first (leftmost/Sheet1) sheet . Defaults to 1.", + "enum": null, + "inferrable": true + }, + { + "name": "sheet_id_or_name", + "type": "string", + "required": false, + "description": "The id or name of the sheet to get. Defaults to None, which means sheet_position will be used instead.", + "enum": null, + "inferrable": true + }, + { + "name": "start_row", + "type": "integer", + "required": false, + "description": "Starting row number (1-indexed, defaults to 1)", + "enum": null, + "inferrable": true + }, + { + "name": "start_col", + "type": "string", + "required": false, + "description": "Starting column letter(s) or 1-based column number (defaults to 'A')", + "enum": null, + "inferrable": true + }, + { + "name": "max_rows", + "type": "integer", + "required": false, + "description": "Maximum number of rows to fetch for each sheet in the spreadsheet. Must be between 1 and 1000. Defaults to 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "max_cols", + "type": "integer", + "required": false, + "description": "Maximum number of columns to fetch for each sheet in the spreadsheet. Must be between 1 and 100. Defaults to 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The spreadsheet properties and data for the specified sheet in the spreadsheet" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSheets.GetSpreadsheet", + "parameters": { + "spreadsheet_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "sheet_position": { + "value": 1, + "type": "integer", + "required": false + }, + "sheet_id_or_name": { + "value": "SalesData", + "type": "string", + "required": false + }, + "start_row": { + "value": 2, + "type": "integer", + "required": false + }, + "start_col": { + "value": "B", + "type": "string", + "required": false + }, + "max_rows": { + "value": 50, + "type": "integer", + "required": false + }, + "max_cols": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSpreadsheetMetadata", + "qualifiedName": "GoogleSheets.GetSpreadsheetMetadata", + "fullyQualifiedName": "GoogleSheets.GetSpreadsheetMetadata@5.1.0", + "description": "Gets the metadata for a spreadsheet including the metadata for the sheets in the spreadsheet.\n\nUse this tool to get the name, position, ID, and URL of all sheets in a spreadsheet as well as\nthe number of rows and columns in each sheet.\n\nDoes not return the content/data of the sheets in the spreadsheet - only the metadata.\nExcludes spreadsheets that are in the trash.", + "parameters": [ + { + "name": "spreadsheet_id", + "type": "string", + "required": true, + "description": "The id of the spreadsheet to get metadata for", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The spreadsheet metadata for the specified spreadsheet" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSheets.GetSpreadsheetMetadata", + "parameters": { + "spreadsheet_id": { + "value": "1BxiMVs0x8gXj8lQySYqE3g5bQs8D_rPG6lXErnKPZsg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchSpreadsheets", + "qualifiedName": "GoogleSheets.SearchSpreadsheets", + "fullyQualifiedName": "GoogleSheets.SearchSpreadsheets@5.1.0", + "description": "Searches for spreadsheets in the user's Google Drive based on the titles and content and\nreturns the title, ID, and URL for each matching spreadsheet.\n\nDoes not return the content/data of the sheets in the spreadsheets - only the metadata.\nExcludes spreadsheets that are in the trash.", + "parameters": [ + { + "name": "spreadsheet_contains", + "type": "array", + "innerType": "string", + "required": false, + "description": "Keywords or phrases that must be in the spreadsheet title. Provide a list of keywords or phrases if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "spreadsheet_not_contains", + "type": "array", + "innerType": "string", + "required": false, + "description": "Keywords or phrases that must NOT be in the spreadsheet title. Provide a list of keywords or phrases if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "search_only_in_shared_drive_id", + "type": "string", + "required": false, + "description": "The ID of the shared drive to restrict the search to. If provided, the search will only return spreadsheets from this drive. Defaults to None, which searches across all drives.", + "enum": null, + "inferrable": true + }, + { + "name": "include_shared_drives", + "type": "boolean", + "required": false, + "description": "Whether to include spreadsheets from shared drives. Defaults to False (searches only in the user's 'My Drive').", + "enum": null, + "inferrable": true + }, + { + "name": "include_organization_domain_spreadsheets", + "type": "boolean", + "required": false, + "description": "Whether to include spreadsheets from the organization's domain. This is applicable to admin users who have permissions to view organization-wide spreadsheets in a Google Workspace account. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "array", + "innerType": "string", + "required": false, + "description": "Sort order. Defaults to listing the most recently modified spreadsheets first. If spreadsheet_contains or spreadsheet_not_contains is provided, then the order_by will be ignored.", + "enum": [ + "createdTime", + "createdTime desc", + "folder", + "folder desc", + "modifiedByMeTime", + "modifiedByMeTime desc", + "modifiedTime", + "modifiedTime desc", + "name", + "name desc", + "name_natural", + "name_natural desc", + "quotaBytesUsed", + "quotaBytesUsed desc", + "recency", + "recency desc", + "sharedWithMeTime", + "sharedWithMeTime desc", + "starred", + "starred desc", + "viewedByMeTime", + "viewedByMeTime desc" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of spreadsheets to list. Defaults to 10. Max is 50", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to continue a previous request", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the title, ID, and URL for each matching spreadsheet. Also contains a pagination token if there are more spreadsheets to list." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSheets.SearchSpreadsheets", + "parameters": { + "spreadsheet_contains": { + "value": ["financial", "budget"], + "type": "array", + "required": false + }, + "spreadsheet_not_contains": { + "value": ["draft", "old"], + "type": "array", + "required": false + }, + "search_only_in_shared_drive_id": { + "value": "1A2B3C4D5E", + "type": "string", + "required": false + }, + "include_shared_drives": { + "value": true, + "type": "boolean", + "required": false + }, + "include_organization_domain_spreadsheets": { + "value": false, + "type": "boolean", + "required": false + }, + "order_by": { + "value": ["lastModifiedTime"], + "type": "array", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "abcd1234", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCells", + "qualifiedName": "GoogleSheets.UpdateCells", + "fullyQualifiedName": "GoogleSheets.UpdateCells@5.1.0", + "description": "Write values to a Google Sheet using a flexible data format.\n\nsheet_id_or_name takes precedence over sheet_position. If a sheet is not mentioned,\nthen always assume the default sheet_position is sufficient.", + "parameters": [ + { + "name": "spreadsheet_id", + "type": "string", + "required": true, + "description": "The id of the spreadsheet to write to", + "enum": null, + "inferrable": true + }, + { + "name": "data", + "type": "string", + "required": true, + "description": "The data to write. A JSON string (property names enclosed in double quotes) representing a dictionary that maps row numbers to dictionaries that map column letters to cell values. For example, data[23]['C'] is the value for cell C23. This is the same format accepted by create_spreadsheet. Type hint: dict[int, dict[str, int | float | str | bool]]", + "enum": null, + "inferrable": true + }, + { + "name": "sheet_position", + "type": "integer", + "required": false, + "description": "The position/tab of the sheet in the spreadsheet to write to. A value of 1 represents the first (leftmost/Sheet1) sheet. Defaults to 1.", + "enum": null, + "inferrable": true + }, + { + "name": "sheet_id_or_name", + "type": "string", + "required": false, + "description": "The id or name of the sheet to write to. If provided, takes precedence over sheet_position.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The status of the operation, including updated ranges and counts" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSheets.UpdateCells", + "parameters": { + "spreadsheet_id": { + "value": "1A2B3C4D5E6F7G8H9I0J", + "type": "string", + "required": true + }, + "data": { + "value": "{\"23\":{\"A\":\"Value1\",\"B\":123,\"C\":45.67,\"D\":true}}", + "type": "string", + "required": true + }, + "sheet_position": { + "value": 1, + "type": "integer", + "required": false + }, + "sheet_id_or_name": { + "value": "SalesData", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "GoogleSheets.WhoAmI", + "fullyQualifiedName": "GoogleSheets.WhoAmI@5.1.0", + "description": "Get comprehensive user profile and Google Sheets environment information.\n\nThis tool provides detailed information about the authenticated user including\ntheir name, email, profile picture, Google Sheets access permissions, and other\nimportant profile details from Google services.", + "parameters": [], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [ + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/userinfo.profile", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get comprehensive user profile and Google Sheets environment information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSheets.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WriteToCell", + "qualifiedName": "GoogleSheets.WriteToCell", + "fullyQualifiedName": "GoogleSheets.WriteToCell@5.1.0", + "description": "Write a value to a single cell in a spreadsheet.", + "parameters": [ + { + "name": "spreadsheet_id", + "type": "string", + "required": true, + "description": "The id of the spreadsheet to write to", + "enum": null, + "inferrable": true + }, + { + "name": "column", + "type": "string", + "required": true, + "description": "The column string to write to. For example, 'A', 'F', or 'AZ'", + "enum": null, + "inferrable": true + }, + { + "name": "row", + "type": "integer", + "required": true, + "description": "The row number to write to", + "enum": null, + "inferrable": true + }, + { + "name": "value", + "type": "string", + "required": true, + "description": "The value to write to the cell", + "enum": null, + "inferrable": true + }, + { + "name": "sheet_name", + "type": "string", + "required": false, + "description": "The name of the sheet to write to. Defaults to 'Sheet1'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The status of the operation" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSheets.WriteToCell", + "parameters": { + "spreadsheet_id": { + "value": "1aBcD2EfGhIjKlMnOqRsTuVwXyZ", + "type": "string", + "required": true + }, + "column": { + "value": "B", + "type": "string", + "required": true + }, + "row": { + "value": 10, + "type": "integer", + "required": true + }, + "value": { + "value": "Hello, World!", + "type": "string", + "required": true + }, + "sheet_name": { + "value": "Data", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import ScopePicker from \"@/app/_components/scope-picker\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:33:21.516Z", + "summary": "Arcade.dev provides LLM tools for Google Sheets, enabling seamless interactions with spreadsheet data through API integration. This toolkit allows developers to automate tasks, manage files, and enhance user experience in Google Sheets.\n\n### Capabilities\n- Create and manage spreadsheets with flexible data formats.\n- Retrieve and update cell contents efficiently.\n- Access user profile information and permissions.\n- Generate file picker URLs for user-driven file selection and authorization.\n\n### OAuth\n- **Provider**: Google \n- **Scopes**: \n - `https://www.googleapis.com/auth/drive.file` \n - `https://www.googleapis.com/auth/userinfo.email` \n - `https://www.googleapis.com/auth/userinfo.profile`\n\n### Secrets\n- No secret types or names are specified." +} diff --git a/data/toolkits/googleshopping.json b/data/toolkits/googleshopping.json new file mode 100644 index 000000000..83679646a --- /dev/null +++ b/data/toolkits/googleshopping.json @@ -0,0 +1,91 @@ +{ + "id": "GoogleShopping", + "label": "Google Shopping", + "version": "3.1.2", + "description": "Arcade.dev LLM tools for shopping via Google Shopping", + "metadata": { + "category": "search", + "iconUrl": "https://design-system.arcade.dev/icons/google-shopping.svg", + "isBYOC": true, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/search/google_shopping", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "SearchProducts", + "qualifiedName": "GoogleShopping.SearchProducts", + "fullyQualifiedName": "GoogleShopping.SearchProducts@3.1.2", + "description": "Search for products on Google Shopping related to a given query.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "Keywords to search for products in Google Shopping. E.g. 'Apple iPhone'.", + "enum": null, + "inferrable": true + }, + { + "name": "country_code", + "type": "string", + "required": false, + "description": "2-character country code to search for products in Google Shopping. E.g. 'us' (United States). Defaults to 'us'.", + "enum": null, + "inferrable": true + }, + { + "name": "language_code", + "type": "string", + "required": false, + "description": "2-character language code to search for products on Google Shopping. E.g. 'en' (English). Defaults to 'en'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Products on Google Shopping." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleShopping.SearchProducts", + "parameters": { + "keywords": { + "value": "wireless headphones", + "type": "string", + "required": true + }, + "country_code": { + "value": "us", + "type": "string", + "required": false + }, + "language_code": { + "value": "en", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:33:27.400Z", + "summary": "Arcade.dev offers a powerful toolkit for shopping via Google Shopping, enabling developers to seamlessly integrate product search functionality into their applications. This toolkit provides essential capabilities to enhance shopping experiences for users.\n\n**Capabilities**\n- Search for a variety of products on Google Shopping.\n- Seamlessly integrate product search into applications.\n- Enhance user engagement through relevant product displays.\n\n**OAuth**\n- No OAuth is required for this toolkit, but API key usage is available.\n\n**Secrets**\n- Store and manage secrets like the API key (e.g., SERP_API_KEY) securely for accessing Google Shopping services." +} diff --git a/data/toolkits/googleslides.json b/data/toolkits/googleslides.json new file mode 100644 index 000000000..e42898e69 --- /dev/null +++ b/data/toolkits/googleslides.json @@ -0,0 +1,526 @@ +{ + "id": "GoogleSlides", + "label": "Google Slides", + "version": "1.3.2", + "description": "Arcade.dev LLM tools for Google Slides", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/google-slides.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/google-slides", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "google", + "allScopes": [ + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ] + }, + "tools": [ + { + "name": "CommentOnPresentation", + "qualifiedName": "GoogleSlides.CommentOnPresentation", + "fullyQualifiedName": "GoogleSlides.CommentOnPresentation@1.3.2", + "description": "Comment on a specific slide by its index in a Google Slides presentation.", + "parameters": [ + { + "name": "presentation_id", + "type": "string", + "required": true, + "description": "The ID of the presentation to comment on", + "enum": null, + "inferrable": true + }, + { + "name": "comment_text", + "type": "string", + "required": true, + "description": "The comment to add to the slide", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The comment's ID, presentationId, and slideNumber in a dictionary" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSlides.CommentOnPresentation", + "parameters": { + "presentation_id": { + "value": "1A2B3C4D5E6F7G8H9I0J", + "type": "string", + "required": true + }, + "comment_text": { + "value": "Great job on this slide! Very informative.", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePresentation", + "qualifiedName": "GoogleSlides.CreatePresentation", + "fullyQualifiedName": "GoogleSlides.CreatePresentation@1.3.2", + "description": "Create a new Google Slides presentation\nThe first slide will be populated with the specified title and subtitle.", + "parameters": [ + { + "name": "title", + "type": "string", + "required": true, + "description": "The title of the presentation to create", + "enum": null, + "inferrable": true + }, + { + "name": "subtitle", + "type": "string", + "required": false, + "description": "The subtitle of the presentation to create", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The created presentation's title, presentationId, and presentationUrl" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSlides.CreatePresentation", + "parameters": { + "title": { + "value": "Annual Sales Report", + "type": "string", + "required": true + }, + "subtitle": { + "value": "Q1 Performance Analysis", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSlide", + "qualifiedName": "GoogleSlides.CreateSlide", + "fullyQualifiedName": "GoogleSlides.CreateSlide@1.3.2", + "description": "Create a new slide at the end of the specified presentation", + "parameters": [ + { + "name": "presentation_id", + "type": "string", + "required": true, + "description": "The ID of the presentation to create the slide in", + "enum": null, + "inferrable": true + }, + { + "name": "slide_title", + "type": "string", + "required": true, + "description": "The title of the slide to create", + "enum": null, + "inferrable": true + }, + { + "name": "slide_body", + "type": "string", + "required": true, + "description": "The body (text) of the slide to create", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A URL to the created slide" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSlides.CreateSlide", + "parameters": { + "presentation_id": { + "value": "1A2B3C4D5E6F7G8H9I0J", + "type": "string", + "required": true + }, + "slide_title": { + "value": "Introduction to JSON", + "type": "string", + "required": true + }, + "slide_body": { + "value": "This slide provides an overview of JSON format and its uses.", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GenerateGoogleFilePickerUrl", + "qualifiedName": "GoogleSlides.GenerateGoogleFilePickerUrl", + "fullyQualifiedName": "GoogleSlides.GenerateGoogleFilePickerUrl@1.3.2", + "description": "Generate a Google File Picker URL for user-driven file selection and authorization.\n\nThis tool generates a URL that directs the end-user to a Google File Picker interface where\nwhere they can select or upload Google Drive files. Users can grant permission to access their\nDrive files, providing a secure and authorized way to interact with their files.\n\nThis is particularly useful when prior tools (e.g., those accessing or modifying\nGoogle Docs, Google Sheets, etc.) encountered failures due to file non-existence\n(Requested entity was not found) or permission errors. Once the user completes the file\npicker flow, the prior tool can be retried.\n\nSuggest this tool to users when they are surprised or confused that the file they are\nsearching for or attempting to access cannot be found.", + "parameters": [], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Google File Picker URL for user file selection and permission granting" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSlides.GenerateGoogleFilePickerUrl", + "parameters": {}, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPresentationAsMarkdown", + "qualifiedName": "GoogleSlides.GetPresentationAsMarkdown", + "fullyQualifiedName": "GoogleSlides.GetPresentationAsMarkdown@1.3.2", + "description": "Get the specified Google Slides presentation and convert it to markdown.\n\nOnly retrieves the text content of the presentation and formats it as markdown.", + "parameters": [ + { + "name": "presentation_id", + "type": "string", + "required": true, + "description": "The ID of the presentation to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The presentation textual content as markdown" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSlides.GetPresentationAsMarkdown", + "parameters": { + "presentation_id": { + "value": "1a2B3cD4E5fG6H7I8J9K0", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPresentationComments", + "qualifiedName": "GoogleSlides.ListPresentationComments", + "fullyQualifiedName": "GoogleSlides.ListPresentationComments@1.3.2", + "description": "List all comments on the specified Google Slides presentation.", + "parameters": [ + { + "name": "presentation_id", + "type": "string", + "required": true, + "description": "The ID of the presentation to list comments for", + "enum": null, + "inferrable": true + }, + { + "name": "include_deleted", + "type": "boolean", + "required": false, + "description": "Whether to include deleted comments in the results. Defaults to False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the comments" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSlides.ListPresentationComments", + "parameters": { + "presentation_id": { + "value": "1A2B3C4D5E6F7G8H9I0J", + "type": "string", + "required": true + }, + "include_deleted": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchPresentations", + "qualifiedName": "GoogleSlides.SearchPresentations", + "fullyQualifiedName": "GoogleSlides.SearchPresentations@1.3.2", + "description": "Searches for presentations in the user's Google Drive.\nExcludes presentations that are in the trash.", + "parameters": [ + { + "name": "presentation_contains", + "type": "array", + "innerType": "string", + "required": false, + "description": "Keywords or phrases that must be in the presentation title or content. Provide a list of keywords or phrases if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "presentation_not_contains", + "type": "array", + "innerType": "string", + "required": false, + "description": "Keywords or phrases that must NOT be in the presentation title or content. Provide a list of keywords or phrases if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "search_only_in_shared_drive_id", + "type": "string", + "required": false, + "description": "The ID of the shared drive to restrict the search to. If provided, the search will only return presentations from this drive. Defaults to None, which searches across all drives.", + "enum": null, + "inferrable": true + }, + { + "name": "include_shared_drives", + "type": "boolean", + "required": false, + "description": "Whether to include presentations from shared drives. Defaults to False (searches only in the user's 'My Drive').", + "enum": null, + "inferrable": true + }, + { + "name": "include_organization_domain_presentations", + "type": "boolean", + "required": false, + "description": "Whether to include presentations from the organization's domain. This is applicable to admin users who have permissions to view organization-wide presentations in a Google Workspace account. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "array", + "innerType": "string", + "required": false, + "description": "Sort order. Defaults to listing the most recently modified presentations first. If presentation_contains or presentation_not_contains is provided, then the order_by will be ignored.", + "enum": [ + "createdTime", + "createdTime desc", + "folder", + "folder desc", + "modifiedByMeTime", + "modifiedByMeTime desc", + "modifiedTime", + "modifiedTime desc", + "name", + "name desc", + "name_natural", + "name_natural desc", + "quotaBytesUsed", + "quotaBytesUsed desc", + "recency", + "recency desc", + "sharedWithMeTime", + "sharedWithMeTime desc", + "starred", + "starred desc", + "viewedByMeTime", + "viewedByMeTime desc" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of presentations to list", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to continue a previous request", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": ["https://www.googleapis.com/auth/drive.file"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing 'presentations_count' (number of presentations returned) and 'presentations' (a list of presentation details including 'kind', 'mimeType', 'id', and 'name' for each presentation)" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSlides.SearchPresentations", + "parameters": { + "presentation_contains": { + "value": ["marketing", "2023", "presentation"], + "type": "array", + "required": false + }, + "presentation_not_contains": { + "value": ["draft", "internal"], + "type": "array", + "required": false + }, + "search_only_in_shared_drive_id": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "include_shared_drives": { + "value": true, + "type": "boolean", + "required": false + }, + "include_organization_domain_presentations": { + "value": false, + "type": "boolean", + "required": false + }, + "order_by": { + "value": ["modifiedTime desc"], + "type": "array", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "token123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "GoogleSlides.WhoAmI", + "fullyQualifiedName": "GoogleSlides.WhoAmI@1.3.2", + "description": "Get comprehensive user profile and Google Slides environment information.\n\nThis tool provides detailed information about the authenticated user including\ntheir name, email, profile picture, Google Slides access permissions, and other\nimportant profile details from Google services.", + "parameters": [], + "auth": { + "providerId": "google", + "providerType": "oauth2", + "scopes": [ + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/userinfo.profile", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get comprehensive user profile and Google Slides environment information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "GoogleSlides.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "google", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## GoogleSlides Reference\n\nBelow is a reference of enumerations used by some tools in the GoogleSlides MCP Server:\n\n### OrderBy\n\n- **CREATED_TIME**: `createdTime`\n- **CREATED_TIME_DESC**: `createdTime desc`\n- **FOLDER**: `folder`\n- **FOLDER_DESC**: `folder desc`\n- **MODIFIED_BY_ME_TIME**: `modifiedByMeTime`\n- **MODIFIED_BY_ME_TIME_DESC**: `modifiedByMeTime desc`\n- **MODIFIED_TIME**: `modifiedTime`\n- **MODIFIED_TIME_DESC**: `modifiedTime desc`\n- **NAME**: `name`\n- **NAME_DESC**: `name desc`\n- **NAME_NATURAL**: `name_natural`\n- **NAME_NATURAL_DESC**: `name_natural desc`\n- **QUOTA_BYTES_USED**: `quotaBytesUsed`\n- **QUOTA_BYTES_USED_DESC**: `quotaBytesUsed desc`\n- **RECENCY**: `recency`\n- **RECENCY_DESC**: `recency desc`\n- **SHARED_WITH_ME_TIME**: `sharedWithMeTime`\n- **SHARED_WITH_ME_TIME_DESC**: `sharedWithMeTime desc`\n- **STARRED**: `starred`\n- **STARRED_DESC**: `starred desc`\n- **VIEWED_BY_ME_TIME**: `viewedByMeTime`\n- **VIEWED_BY_ME_TIME_DESC**: `viewedByMeTime desc`\n\n", + "header": "## GoogleSlides Reference" + } + ], + "customImports": [ + "import ScopePicker from \"@/app/_components/scope-picker\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:33:35.118Z", + "summary": "Arcade.dev provides a powerful toolkit for Google Slides, enabling seamless integration and manipulation of presentations within Google Drive. This toolkit allows developers to automate various tasks related to presentation management, enhancing productivity and collaboration.\n\n**Capabilities**\n- Generate, modify, and comment on slides within presentations.\n- Create new Google Slides presentations with specified content.\n- Retrieve presentations and convert them to markdown format.\n- Search for and list presentations in the user's Google Drive.\n- Access comprehensive user profile information and permissions.\n\n**OAuth**\n- Provider: Google\n- Scopes: [https://www.googleapis.com/auth/drive.file, https://www.googleapis.com/auth/userinfo.email, https://www.googleapis.com/auth/userinfo.profile]" +} diff --git a/data/toolkits/hubspot.json b/data/toolkits/hubspot.json new file mode 100644 index 000000000..bff510c65 --- /dev/null +++ b/data/toolkits/hubspot.json @@ -0,0 +1,4085 @@ +{ + "id": "Hubspot", + "label": "HubSpot", + "version": "3.0.0", + "description": "Arcade tools designed for LLMs to interact with Hubspot", + "metadata": { + "category": "sales", + "iconUrl": "https://design-system.arcade.dev/icons/hubspot.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/sales/hubspot", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": [ + "crm.objects.companies.read", + "crm.objects.companies.write", + "crm.objects.contacts.read", + "crm.objects.contacts.write", + "crm.objects.deals.read", + "crm.objects.deals.write", + "crm.objects.owners.read", + "oauth", + "sales-email-read" + ] + }, + "tools": [ + { + "name": "AssociateActivityToDeal", + "qualifiedName": "Hubspot.AssociateActivityToDeal", + "fullyQualifiedName": "Hubspot.AssociateActivityToDeal@3.0.0", + "description": "Associate a single activity object to a deal using HubSpot standard association type.", + "parameters": [ + { + "name": "activity_type", + "type": "string", + "required": true, + "description": "Engagement activity type.", + "enum": ["note", "call", "email", "meeting", "task", "communication"], + "inferrable": true + }, + { + "name": "activity_id", + "type": "integer", + "required": true, + "description": "The activity object ID", + "enum": null, + "inferrable": true + }, + { + "name": "deal_id", + "type": "integer", + "required": true, + "description": "The deal ID to associate to", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.write", + "crm.objects.deals.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Associate an activity to a deal" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.AssociateActivityToDeal", + "parameters": { + "activity_type": { + "value": "EMAIL", + "type": "string", + "required": true + }, + "activity_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "deal_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AssociateContactToDeal", + "qualifiedName": "Hubspot.AssociateContactToDeal", + "fullyQualifiedName": "Hubspot.AssociateContactToDeal@3.0.0", + "description": "Associate a contact with an existing deal in HubSpot.", + "parameters": [ + { + "name": "deal_id", + "type": "integer", + "required": true, + "description": "The ID of the deal to associate the contact with", + "enum": null, + "inferrable": true + }, + { + "name": "contact_id", + "type": "integer", + "required": true, + "description": "The ID of the contact to associate with the deal", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.deals.write", + "crm.objects.deals.read", + "crm.objects.contacts.write", + "crm.objects.contacts.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Dictionary containing the association result" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.AssociateContactToDeal", + "parameters": { + "deal_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "contact_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCallActivity", + "qualifiedName": "Hubspot.CreateCallActivity", + "fullyQualifiedName": "Hubspot.CreateCallActivity@3.0.0", + "description": "Create a call engagement activity with required owner and associations.\nMust be associated with at least one of: contact, company, or deal.\nAssign to the current user if not specified otherwise.", + "parameters": [ + { + "name": "title", + "type": "string", + "required": true, + "description": "Short title for the call.", + "enum": null, + "inferrable": true + }, + { + "name": "when_occurred", + "type": "string", + "required": true, + "description": "When the call occurred (ISO date format: YYYY-MM-DDTHH:MM:SS).", + "enum": null, + "inferrable": true + }, + { + "name": "direction", + "type": "string", + "required": false, + "description": "Call direction (INBOUND or OUTBOUND).", + "enum": ["INBOUND", "OUTBOUND"], + "inferrable": true + }, + { + "name": "summary", + "type": "string", + "required": false, + "description": "Short summary/notes of the call.", + "enum": null, + "inferrable": true + }, + { + "name": "duration", + "type": "integer", + "required": false, + "description": "Call duration in seconds.", + "enum": null, + "inferrable": true + }, + { + "name": "to_number", + "type": "string", + "required": false, + "description": "Phone number called to.", + "enum": null, + "inferrable": true + }, + { + "name": "from_number", + "type": "string", + "required": false, + "description": "Phone number called from.", + "enum": null, + "inferrable": true + }, + { + "name": "associate_to_contact_id", + "type": "integer", + "required": false, + "description": "Contact ID to associate this call with.", + "enum": null, + "inferrable": true + }, + { + "name": "associate_to_company_id", + "type": "integer", + "required": false, + "description": "Company ID to associate this call with.", + "enum": null, + "inferrable": true + }, + { + "name": "associate_to_deal_id", + "type": "integer", + "required": false, + "description": "Deal ID to associate this call with.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth", "crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Details of the call engagement activity created." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.CreateCallActivity", + "parameters": { + "title": { + "value": "Follow-up Call", + "type": "string", + "required": true + }, + "when_occurred": { + "value": "2023-10-01T14:30:00", + "type": "string", + "required": true + }, + "direction": { + "value": "OUTBOUND", + "type": "string", + "required": false + }, + "summary": { + "value": "Discussed project updates and next steps.", + "type": "string", + "required": false + }, + "duration": { + "value": 300, + "type": "integer", + "required": false + }, + "to_number": { + "value": "+1234567890", + "type": "string", + "required": false + }, + "from_number": { + "value": "+0987654321", + "type": "string", + "required": false + }, + "associate_to_contact_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "associate_to_company_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "associate_to_deal_id": { + "value": 112233, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCommunicationActivity", + "qualifiedName": "Hubspot.CreateCommunicationActivity", + "fullyQualifiedName": "Hubspot.CreateCommunicationActivity@3.0.0", + "description": "Create a communication activity for logging communications that are not done via\nemail, call, or meeting.\n\nThis includes SMS, WhatsApp, LinkedIn messages, physical mail, and custom channel\nconversations.\nMust be associated with at least one of: contact, company, or deal.\nThe communication will be assigned to the current user.", + "parameters": [ + { + "name": "channel", + "type": "string", + "required": true, + "description": "Communication channel type.", + "enum": [ + "SMS", + "WHATS_APP", + "LINKEDIN_MESSAGE", + "PHYSICAL_MAIL", + "CUSTOM_CHANNEL_CONVERSATION" + ], + "inferrable": true + }, + { + "name": "when_occurred", + "type": "string", + "required": true, + "description": "When the communication occurred (ISO date format: YYYY-MM-DDTHH:MM:SS).", + "enum": null, + "inferrable": true + }, + { + "name": "body_text", + "type": "string", + "required": false, + "description": "Full message content.", + "enum": null, + "inferrable": true + }, + { + "name": "associate_to_contact_id", + "type": "integer", + "required": false, + "description": "Contact ID to associate this communication with.", + "enum": null, + "inferrable": true + }, + { + "name": "associate_to_company_id", + "type": "integer", + "required": false, + "description": "Company ID to associate this communication with.", + "enum": null, + "inferrable": true + }, + { + "name": "associate_to_deal_id", + "type": "integer", + "required": false, + "description": "Deal ID to associate this communication with.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth", "crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Details of the communication engagement activity created." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.CreateCommunicationActivity", + "parameters": { + "channel": { + "value": "SMS", + "type": "string", + "required": true + }, + "when_occurred": { + "value": "2023-10-01T14:30:00", + "type": "string", + "required": true + }, + "body_text": { + "value": "Just following up on our previous conversation.", + "type": "string", + "required": false + }, + "associate_to_contact_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "associate_to_company_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "associate_to_deal_id": { + "value": 11122, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCompany", + "qualifiedName": "Hubspot.CreateCompany", + "fullyQualifiedName": "Hubspot.CreateCompany@3.0.0", + "description": "Create a new company in HubSpot.\n\nBefore calling this tool, use Hubspot.GetAvailableIndustryTypes to see valid values.", + "parameters": [ + { + "name": "company_name", + "type": "string", + "required": true, + "description": "The company name (required)", + "enum": null, + "inferrable": true + }, + { + "name": "web_domain", + "type": "string", + "required": false, + "description": "The company web domain (e.g., example.com)", + "enum": null, + "inferrable": true + }, + { + "name": "industry_type", + "type": "string", + "required": false, + "description": "The company industry type (case-insensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "company_city", + "type": "string", + "required": false, + "description": "The company city location", + "enum": null, + "inferrable": true + }, + { + "name": "company_state", + "type": "string", + "required": false, + "description": "The company state or province", + "enum": null, + "inferrable": true + }, + { + "name": "company_country", + "type": "string", + "required": false, + "description": "The company country", + "enum": null, + "inferrable": true + }, + { + "name": "phone_number", + "type": "string", + "required": false, + "description": "The company main phone number", + "enum": null, + "inferrable": true + }, + { + "name": "website_url", + "type": "string", + "required": false, + "description": "The company website URL", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth", "crm.objects.companies.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Dictionary containing the created company information" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.CreateCompany", + "parameters": { + "company_name": { + "value": "Tech Innovations LLC", + "type": "string", + "required": true + }, + "web_domain": { + "value": "techinnovations.com", + "type": "string", + "required": false + }, + "industry_type": { + "value": "Information Technology", + "type": "string", + "required": false + }, + "company_city": { + "value": "San Francisco", + "type": "string", + "required": false + }, + "company_state": { + "value": "California", + "type": "string", + "required": false + }, + "company_country": { + "value": "United States", + "type": "string", + "required": false + }, + "phone_number": { + "value": "+1-415-555-0123", + "type": "string", + "required": false + }, + "website_url": { + "value": "https://www.techinnovations.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateContact", + "qualifiedName": "Hubspot.CreateContact", + "fullyQualifiedName": "Hubspot.CreateContact@3.0.0", + "description": "Create a contact associated with a company.", + "parameters": [ + { + "name": "company_id", + "type": "integer", + "required": true, + "description": "The ID of the company to create the contact for.", + "enum": null, + "inferrable": true + }, + { + "name": "first_name", + "type": "string", + "required": true, + "description": "The first name of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "last_name", + "type": "string", + "required": false, + "description": "The last name of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "email", + "type": "string", + "required": false, + "description": "The email address of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "phone", + "type": "string", + "required": false, + "description": "The phone number of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "mobile_phone", + "type": "string", + "required": false, + "description": "The mobile phone number of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "job_title", + "type": "string", + "required": false, + "description": "The job title of the contact.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth", "crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Create a contact associated with a company." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.CreateContact", + "parameters": { + "company_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "first_name": { + "value": "John", + "type": "string", + "required": true + }, + "last_name": { + "value": "Doe", + "type": "string", + "required": false + }, + "email": { + "value": "john.doe@example.com", + "type": "string", + "required": false + }, + "phone": { + "value": "+1234567890", + "type": "string", + "required": false + }, + "mobile_phone": { + "value": "+1987654321", + "type": "string", + "required": false + }, + "job_title": { + "value": "Software Engineer", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateDeal", + "qualifiedName": "Hubspot.CreateDeal", + "fullyQualifiedName": "Hubspot.CreateDeal@3.0.0", + "description": "Create a new deal in HubSpot.\n\nIf pipeline_id is not provided, the default pipeline will be used.\n\nFor custom pipelines, deal_stage must be a valid stage ID within\nthe selected pipeline. If deal_stage is not specified,\nthe first stage in the pipeline will be used automatically.\n\nIt is recommended have already pipeline data available when\nplanning to call this tool.", + "parameters": [ + { + "name": "deal_name", + "type": "string", + "required": true, + "description": "The deal name (required)", + "enum": null, + "inferrable": true + }, + { + "name": "deal_amount", + "type": "number", + "required": false, + "description": "The deal amount/value", + "enum": null, + "inferrable": true + }, + { + "name": "deal_stage", + "type": "string", + "required": false, + "description": "The deal stage", + "enum": null, + "inferrable": true + }, + { + "name": "deal_type", + "type": "string", + "required": false, + "description": "The deal type.", + "enum": ["newbusiness", "existingbusiness"], + "inferrable": true + }, + { + "name": "expected_close_date", + "type": "string", + "required": false, + "description": "Expected close date in YYYY-MM-DD format", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_id", + "type": "string", + "required": false, + "description": "Pipeline id. Use 'default' for default pipeline or pass a pipeline id (integer)", + "enum": null, + "inferrable": true + }, + { + "name": "deal_owner", + "type": "string", + "required": false, + "description": "The deal owner user ID", + "enum": null, + "inferrable": true + }, + { + "name": "priority_level", + "type": "string", + "required": false, + "description": "Priority level.", + "enum": ["low", "medium", "high"], + "inferrable": true + }, + { + "name": "deal_description", + "type": "string", + "required": false, + "description": "The deal description", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth", "crm.objects.deals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Dictionary containing the created deal information" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.CreateDeal", + "parameters": { + "deal_name": { + "value": "New Website Development Project", + "type": "string", + "required": true + }, + "deal_amount": { + "value": 15000, + "type": "integer", + "required": false + }, + "deal_stage": { + "value": "initial_consultation", + "type": "string", + "required": false + }, + "deal_type": { + "value": "service", + "type": "string", + "required": false + }, + "expected_close_date": { + "value": "2023-12-01", + "type": "string", + "required": false + }, + "pipeline_id": { + "value": "default", + "type": "string", + "required": false + }, + "deal_owner": { + "value": "12345", + "type": "string", + "required": false + }, + "priority_level": { + "value": "high", + "type": "string", + "required": false + }, + "deal_description": { + "value": "This deal involves the development of a new website for the client.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateEmailActivity", + "qualifiedName": "Hubspot.CreateEmailActivity", + "fullyQualifiedName": "Hubspot.CreateEmailActivity@3.0.0", + "description": "Create a logged email engagement activity with essential fields including email headers.\nMust be associated with at least one of: contact, company, or deal.\nThe email will be assigned to the current user.", + "parameters": [ + { + "name": "subject", + "type": "string", + "required": true, + "description": "Email subject.", + "enum": null, + "inferrable": true + }, + { + "name": "when_occurred", + "type": "string", + "required": true, + "description": "When the email occurred (ISO date format: YYYY-MM-DDTHH:MM:SS).", + "enum": null, + "inferrable": true + }, + { + "name": "from_email", + "type": "string", + "required": true, + "description": "Sender email address.", + "enum": null, + "inferrable": true + }, + { + "name": "to_email", + "type": "string", + "required": true, + "description": "Primary recipient email address.", + "enum": null, + "inferrable": true + }, + { + "name": "body_text", + "type": "string", + "required": false, + "description": "Email body in plain text.", + "enum": null, + "inferrable": true + }, + { + "name": "body_html", + "type": "string", + "required": false, + "description": "Email body in HTML format.", + "enum": null, + "inferrable": true + }, + { + "name": "from_first_name", + "type": "string", + "required": false, + "description": "Sender first name.", + "enum": null, + "inferrable": true + }, + { + "name": "from_last_name", + "type": "string", + "required": false, + "description": "Sender last name.", + "enum": null, + "inferrable": true + }, + { + "name": "to_first_name", + "type": "string", + "required": false, + "description": "Primary recipient first name.", + "enum": null, + "inferrable": true + }, + { + "name": "to_last_name", + "type": "string", + "required": false, + "description": "Primary recipient last name.", + "enum": null, + "inferrable": true + }, + { + "name": "cc_emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "CC recipient email addresses.", + "enum": null, + "inferrable": true + }, + { + "name": "bcc_emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "BCC recipient email addresses.", + "enum": null, + "inferrable": true + }, + { + "name": "direction", + "type": "string", + "required": false, + "description": "Direction the email was sent (EMAIL, INCOMING_EMAIL, FORWARDED_EMAIL).", + "enum": ["EMAIL", "INCOMING_EMAIL", "FORWARDED_EMAIL"], + "inferrable": true + }, + { + "name": "status", + "type": "string", + "required": false, + "description": "Email status indicating the state of the email.", + "enum": ["BOUNCED", "FAILED", "SCHEDULED", "SENDING", "SENT"], + "inferrable": true + }, + { + "name": "associate_to_contact_id", + "type": "integer", + "required": false, + "description": "Contact ID to associate this email with.", + "enum": null, + "inferrable": true + }, + { + "name": "associate_to_company_id", + "type": "integer", + "required": false, + "description": "Company ID to associate this email with.", + "enum": null, + "inferrable": true + }, + { + "name": "associate_to_deal_id", + "type": "integer", + "required": false, + "description": "Deal ID to associate this email with.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth", "crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Details of the email engagement activity created." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.CreateEmailActivity", + "parameters": { + "subject": { + "value": "Quarterly Business Review", + "type": "string", + "required": true + }, + "when_occurred": { + "value": "2023-10-01T14:30:00", + "type": "string", + "required": true + }, + "from_email": { + "value": "sender@example.com", + "type": "string", + "required": true + }, + "to_email": { + "value": "recipient@example.com", + "type": "string", + "required": true + }, + "body_text": { + "value": "Dear Recipient,\n\nI hope this email finds you well. Looking forward to our meeting.\nBest,\nSender", + "type": "string", + "required": false + }, + "body_html": { + "value": "

Dear Recipient,

I hope this email finds you well. Looking forward to our meeting.

Best,
Sender

", + "type": "string", + "required": false + }, + "from_first_name": { + "value": "Sender", + "type": "string", + "required": false + }, + "from_last_name": { + "value": "Name", + "type": "string", + "required": false + }, + "to_first_name": { + "value": "Recipient", + "type": "string", + "required": false + }, + "to_last_name": { + "value": "Name", + "type": "string", + "required": false + }, + "cc_emails": { + "value": ["cc1@example.com", "cc2@example.com"], + "type": "array", + "required": false + }, + "bcc_emails": { + "value": ["bcc1@example.com"], + "type": "array", + "required": false + }, + "direction": { + "value": "EMAIL", + "type": "string", + "required": false + }, + "status": { + "value": "SENT", + "type": "string", + "required": false + }, + "associate_to_contact_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "associate_to_company_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "associate_to_deal_id": { + "value": 111213, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMeetingActivity", + "qualifiedName": "Hubspot.CreateMeetingActivity", + "fullyQualifiedName": "Hubspot.CreateMeetingActivity@3.0.0", + "description": "Create a meeting with essential fields including separate date and time.\n\nThe start_date and start_time are combined to create the meeting timestamp.\nDuration can be specified in HH:MM format.\nMust be associated with at least one of: contact, company, or deal.\nThe meeting will be assigned to the current user.", + "parameters": [ + { + "name": "title", + "type": "string", + "required": true, + "description": "Meeting title.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": true, + "description": "Start date (YYYY-MM-DD format).", + "enum": null, + "inferrable": true + }, + { + "name": "start_time", + "type": "string", + "required": true, + "description": "Start time (HH:MM or HH:MM:SS format).", + "enum": null, + "inferrable": true + }, + { + "name": "duration", + "type": "string", + "required": false, + "description": "Meeting duration in HH:MM format (e.g., 1:30 for 1 hour 30 minutes).", + "enum": null, + "inferrable": true + }, + { + "name": "location", + "type": "string", + "required": false, + "description": "Meeting location.", + "enum": null, + "inferrable": true + }, + { + "name": "outcome", + "type": "string", + "required": false, + "description": "Meeting outcome.", + "enum": [ + "SCHEDULED", + "COMPLETED", + "RESCHEDULED", + "NO_SHOW", + "CANCELED" + ], + "inferrable": true + }, + { + "name": "associate_to_contact_id", + "type": "integer", + "required": false, + "description": "Contact ID to associate this meeting with.", + "enum": null, + "inferrable": true + }, + { + "name": "associate_to_company_id", + "type": "integer", + "required": false, + "description": "Company ID to associate this meeting with.", + "enum": null, + "inferrable": true + }, + { + "name": "associate_to_deal_id", + "type": "integer", + "required": false, + "description": "Deal ID to associate this meeting with.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth", "crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Details of the meeting engagement activity created." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.CreateMeetingActivity", + "parameters": { + "title": { + "value": "Project Kickoff", + "type": "string", + "required": true + }, + "start_date": { + "value": "2023-10-15", + "type": "string", + "required": true + }, + "start_time": { + "value": "14:00", + "type": "string", + "required": true + }, + "duration": { + "value": "1:00", + "type": "string", + "required": false + }, + "location": { + "value": "Conference Room A", + "type": "string", + "required": false + }, + "outcome": { + "value": "Successful kickoff meeting", + "type": "string", + "required": false + }, + "associate_to_contact_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "associate_to_company_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "associate_to_deal_id": { + "value": 54321, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateNoteActivity", + "qualifiedName": "Hubspot.CreateNoteActivity", + "fullyQualifiedName": "Hubspot.CreateNoteActivity@3.0.0", + "description": "Create a note engagement activity with required owner and associations.\nMust be associated with at least one of: contact, company, or deal.\nAssign to the current user if not specified otherwise.", + "parameters": [ + { + "name": "body", + "type": "string", + "required": true, + "description": "The note content/body.", + "enum": null, + "inferrable": true + }, + { + "name": "when_occurred", + "type": "string", + "required": true, + "description": "When the note was created (ISO date format: YYYY-MM-DDTHH:MM:SS).", + "enum": null, + "inferrable": true + }, + { + "name": "associate_to_contact_id", + "type": "integer", + "required": false, + "description": "Contact ID to associate this note with.", + "enum": null, + "inferrable": true + }, + { + "name": "associate_to_company_id", + "type": "integer", + "required": false, + "description": "Company ID to associate this note with.", + "enum": null, + "inferrable": true + }, + { + "name": "associate_to_deal_id", + "type": "integer", + "required": false, + "description": "Deal ID to associate this note with.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth", "crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Details of the note engagement activity created." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.CreateNoteActivity", + "parameters": { + "body": { + "value": "This is a sample note about the recent meeting.", + "type": "string", + "required": true + }, + "when_occurred": { + "value": "2023-10-10T14:30:00", + "type": "string", + "required": true + }, + "associate_to_contact_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "associate_to_company_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "associate_to_deal_id": { + "value": 112233, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllUsers", + "qualifiedName": "Hubspot.GetAllUsers", + "fullyQualifiedName": "Hubspot.GetAllUsers@3.0.0", + "description": "Get all users/owners in the HubSpot portal.\n\nThis tool retrieves a list of all users (owners) in your HubSpot portal,\nUseful for user management and assignment operations.\n\nUse this tool when needing information about ALL users in the HubSpot portal.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth", "crm.objects.owners.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get all users/owners in the HubSpot portal with their names, emails, IDs, and status." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetAllUsers", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAvailableIndustryTypes", + "qualifiedName": "Hubspot.GetAvailableIndustryTypes", + "fullyQualifiedName": "Hubspot.GetAvailableIndustryTypes@3.0.0", + "description": "Get all available industry types for HubSpot companies.\n\nReturns a sorted list of valid industry type values that can be used\nwhen creating companies.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "array", + "description": "List of all available industry types for HubSpot companies." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetAvailableIndustryTypes", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCallDataByKeywords", + "qualifiedName": "Hubspot.GetCallDataByKeywords", + "fullyQualifiedName": "Hubspot.GetCallDataByKeywords@3.0.0", + "description": "Search for call activities with associated contacts, companies, and deals.", + "parameters": [ + { + "name": "search_terms", + "type": "string", + "required": true, + "description": "Search phrase or terms to find in CALL properties.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of calls to return. Defaults to 10. Max is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "truncate_big_strings", + "type": "boolean", + "required": false, + "description": "Whether to truncate string properties longer than 100 characters. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to get the next page of results. Defaults to None (returns first page of results)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.read", + "crm.objects.companies.read", + "crm.objects.deals.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Retrieve call activity data with associated contacts, companies, and deals." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetCallDataByKeywords", + "parameters": { + "search_terms": { + "value": "customer support issues", + "type": "string", + "required": true + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "associations_limit": { + "value": 5, + "type": "integer", + "required": false + }, + "truncate_big_strings": { + "value": true, + "type": "boolean", + "required": false + }, + "next_page_token": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCommunicationDataByKeywords", + "qualifiedName": "Hubspot.GetCommunicationDataByKeywords", + "fullyQualifiedName": "Hubspot.GetCommunicationDataByKeywords@3.0.0", + "description": "Search for communication activities with associated contacts, companies, and deals.", + "parameters": [ + { + "name": "search_terms", + "type": "string", + "required": true, + "description": "Search phrase or terms to find in COMMUNICATION properties.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of communications to return. Defaults to 10. Max is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "truncate_big_strings", + "type": "boolean", + "required": false, + "description": "Whether to truncate string properties longer than 100 characters. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to get the next page of results. Defaults to None (returns first page of results)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.read", + "crm.objects.companies.read", + "crm.objects.deals.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Retrieve communication activity data with associated contacts, companies, and deals." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetCommunicationDataByKeywords", + "parameters": { + "search_terms": { + "value": "customer feedback", + "type": "string", + "required": true + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "associations_limit": { + "value": 5, + "type": "integer", + "required": false + }, + "truncate_big_strings": { + "value": true, + "type": "boolean", + "required": false + }, + "next_page_token": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCompanyDataByKeywords", + "qualifiedName": "Hubspot.GetCompanyDataByKeywords", + "fullyQualifiedName": "Hubspot.GetCompanyDataByKeywords@3.0.0", + "description": "Retrieve company data with associated contacts, deals, calls, emails,\nmeetings, notes, and tasks.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "The keywords to search for companies. It will match against the company name, phone, and website.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of companies to return. Defaults to 10. Max is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to get the next page of results. Defaults to None (returns first page of results)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.companies.read", + "crm.objects.contacts.read", + "crm.objects.deals.read", + "sales-email-read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Retrieve company data with associated contacts, deals, calls, emails, meetings, notes, and tasks." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetCompanyDataByKeywords", + "parameters": { + "keywords": { + "value": "tech startups", + "type": "string", + "required": true + }, + "limit": { + "value": 5, + "type": "integer", + "required": false + }, + "associations_limit": { + "value": 8, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetContactDataByKeywords", + "qualifiedName": "Hubspot.GetContactDataByKeywords", + "fullyQualifiedName": "Hubspot.GetContactDataByKeywords@3.0.0", + "description": "Retrieve contact data with associated companies, deals, calls, emails,\nmeetings, notes, and tasks.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "The keywords to search for contacts. It will match against the contact's first and last name, email addresses, phone numbers, and company name.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of contacts to return. Defaults to 10. Max is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to get the next page of results. Defaults to None (returns first page of results)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.read", + "crm.objects.companies.read", + "crm.objects.deals.read", + "sales-email-read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Retrieve contact data with associated companies, deals, calls, emails, meetings, notes, and tasks." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetContactDataByKeywords", + "parameters": { + "keywords": { + "value": "John Doe", + "type": "string", + "required": true + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "associations_limit": { + "value": 5, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDealById", + "qualifiedName": "Hubspot.GetDealById", + "fullyQualifiedName": "Hubspot.GetDealById@3.0.0", + "description": "Retrieve a specific deal by its ID with associated contacts, companies, calls, emails,\nmeetings, notes, and tasks.", + "parameters": [ + { + "name": "deal_id", + "type": "integer", + "required": true, + "description": "The ID of the deal to retrieve", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.deals.read", + "crm.objects.contacts.read", + "crm.objects.companies.read", + "sales-email-read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Deal information with associated entities" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetDealById", + "parameters": { + "deal_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "associations_limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDealDataByKeywords", + "qualifiedName": "Hubspot.GetDealDataByKeywords", + "fullyQualifiedName": "Hubspot.GetDealDataByKeywords@3.0.0", + "description": "Retrieve deal data with associated contacts, companies, calls, emails,\nmeetings, notes, and tasks.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "The keywords to search for deals. It will match against the deal name and description.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of deals to return. Defaults to 10. Max is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to get the next page of results. Defaults to None (returns first page of results)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.deals.read", + "crm.objects.contacts.read", + "crm.objects.companies.read", + "sales-email-read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Retrieve deal data with associated contacts, companies, calls, emails, meetings, notes, and tasks." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetDealDataByKeywords", + "parameters": { + "keywords": { + "value": "Q3 2023 Revenue", + "type": "string", + "required": true + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "associations_limit": { + "value": 5, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDealPipelines", + "qualifiedName": "Hubspot.GetDealPipelines", + "fullyQualifiedName": "Hubspot.GetDealPipelines@3.0.0", + "description": "List HubSpot deal pipelines with their stages, optionally filtered by a search string.\n\nRecommended to be used before creating a new deal.\n\nFor example updating the stage of a deal without changing the pipeline.", + "parameters": [ + { + "name": "search", + "type": "string", + "required": false, + "description": "Optional case-insensitive search string to filter pipelines by id or label", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth", "crm.objects.deals.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List up to 30 deal pipelines with their stages" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetDealPipelines", + "parameters": { + "search": { + "value": "Sales", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDealPipelineStages", + "qualifiedName": "Hubspot.GetDealPipelineStages", + "fullyQualifiedName": "Hubspot.GetDealPipelineStages@3.0.0", + "description": "List stages for a specific HubSpot deal pipeline.\n\nUseful to get the stage IDs for a specific pipeline.", + "parameters": [ + { + "name": "pipeline_id", + "type": "string", + "required": true, + "description": "The pipeline id (e.g., 'default' or a pipeline GUID)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth", "crm.objects.deals.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List stages for a specific deal pipeline" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetDealPipelineStages", + "parameters": { + "pipeline_id": { + "value": "default", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEmailDataByKeywords", + "qualifiedName": "Hubspot.GetEmailDataByKeywords", + "fullyQualifiedName": "Hubspot.GetEmailDataByKeywords@3.0.0", + "description": "Search for email activities with associated contacts, companies, and deals.", + "parameters": [ + { + "name": "search_terms", + "type": "string", + "required": true, + "description": "Search phrase or terms to find in EMAIL properties.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of emails to return. Defaults to 10. Max is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "truncate_big_strings", + "type": "boolean", + "required": false, + "description": "Whether to truncate string properties longer than 100 characters. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to get the next page of results. Defaults to None (returns first page of results)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.read", + "crm.objects.companies.read", + "crm.objects.deals.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Retrieve email activity data with associated contacts, companies, and deals." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetEmailDataByKeywords", + "parameters": { + "search_terms": { + "value": "Meeting Follow-Up", + "type": "string", + "required": true + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "associations_limit": { + "value": 5, + "type": "integer", + "required": false + }, + "truncate_big_strings": { + "value": true, + "type": "boolean", + "required": false + }, + "next_page_token": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMeetingDataByKeywords", + "qualifiedName": "Hubspot.GetMeetingDataByKeywords", + "fullyQualifiedName": "Hubspot.GetMeetingDataByKeywords@3.0.0", + "description": "Search for meeting activities with associated contacts, companies, and deals.", + "parameters": [ + { + "name": "search_terms", + "type": "string", + "required": true, + "description": "Search phrase or terms to find in MEETING properties.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of meetings to return. Defaults to 10. Max is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "truncate_big_strings", + "type": "boolean", + "required": false, + "description": "Whether to truncate string properties longer than 100 characters. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to get the next page of results. Defaults to None (returns first page of results)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.read", + "crm.objects.companies.read", + "crm.objects.deals.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Retrieve meeting activity data with associated contacts, companies, and deals." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetMeetingDataByKeywords", + "parameters": { + "search_terms": { + "value": "quarterly review", + "type": "string", + "required": true + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "associations_limit": { + "value": 5, + "type": "integer", + "required": false + }, + "truncate_big_strings": { + "value": true, + "type": "boolean", + "required": false + }, + "next_page_token": { + "value": "abc123token", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetNoteDataByKeywords", + "qualifiedName": "Hubspot.GetNoteDataByKeywords", + "fullyQualifiedName": "Hubspot.GetNoteDataByKeywords@3.0.0", + "description": "Search for note activities with associated contacts, companies, and deals.", + "parameters": [ + { + "name": "search_terms", + "type": "string", + "required": true, + "description": "Search phrase or terms to find in NOTE properties.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of notes to return. Defaults to 10. Max is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "truncate_big_strings", + "type": "boolean", + "required": false, + "description": "Whether to truncate string properties longer than 100 characters. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to get the next page of results. Defaults to None (returns first page of results)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.read", + "crm.objects.companies.read", + "crm.objects.deals.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Retrieve note activity data with associated contacts, companies, and deals." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetNoteDataByKeywords", + "parameters": { + "search_terms": { + "value": "meeting notes", + "type": "string", + "required": true + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "associations_limit": { + "value": 5, + "type": "integer", + "required": false + }, + "truncate_big_strings": { + "value": true, + "type": "boolean", + "required": false + }, + "next_page_token": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaskDataByKeywords", + "qualifiedName": "Hubspot.GetTaskDataByKeywords", + "fullyQualifiedName": "Hubspot.GetTaskDataByKeywords@3.0.0", + "description": "Search for task activities with associated contacts, companies, and deals.", + "parameters": [ + { + "name": "search_terms", + "type": "string", + "required": true, + "description": "Search phrase or terms to find in TASK properties.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of tasks to return. Defaults to 10. Max is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "truncate_big_strings", + "type": "boolean", + "required": false, + "description": "Whether to truncate string properties longer than 100 characters. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to get the next page of results. Defaults to None (returns first page of results)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.read", + "crm.objects.companies.read", + "crm.objects.deals.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Retrieve task activity data with associated contacts, companies, and deals." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetTaskDataByKeywords", + "parameters": { + "search_terms": { + "value": "meeting", + "type": "string", + "required": true + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "associations_limit": { + "value": 5, + "type": "integer", + "required": false + }, + "truncate_big_strings": { + "value": true, + "type": "boolean", + "required": false + }, + "next_page_token": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserById", + "qualifiedName": "Hubspot.GetUserById", + "fullyQualifiedName": "Hubspot.GetUserById@3.0.0", + "description": "Get detailed information about a specific user/owner by their ID.\n\nThis tool retrieves comprehensive information about a specific user\nin your HubSpot portal using their owner ID.", + "parameters": [ + { + "name": "owner_id", + "type": "integer", + "required": true, + "description": "The HubSpot owner/user ID to retrieve", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth", "crm.objects.owners.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get detailed information about a specific user/owner by their ID." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.GetUserById", + "parameters": { + "owner_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCompanies", + "qualifiedName": "Hubspot.ListCompanies", + "fullyQualifiedName": "Hubspot.ListCompanies@3.0.0", + "description": "List companies with associated contacts, deals, calls, emails, meetings, notes, and tasks.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of companies to return. Defaults to 10. Max is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Sort order for results. Defaults to LATEST_MODIFIED.", + "enum": ["LATEST_MODIFIED", "OLDEST_MODIFIED", "ALPHABETICAL"], + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to get the next page of results. Defaults to None (returns first page of results)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.companies.read", + "crm.objects.contacts.read", + "crm.objects.deals.read", + "sales-email-read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List companies with associated contacts, deals, calls, emails, meetings, notes, and tasks." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.ListCompanies", + "parameters": { + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "associations_limit": { + "value": 5, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "ASCENDING", + "type": "string", + "required": false + }, + "next_page_token": { + "value": "abc123token", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListContacts", + "qualifiedName": "Hubspot.ListContacts", + "fullyQualifiedName": "Hubspot.ListContacts@3.0.0", + "description": "List contacts with associated companies, deals, calls, emails, meetings, notes, and tasks.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of contacts to return. Defaults to 10. Max is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "company_id", + "type": "integer", + "required": false, + "description": "Filter contacts by company ID. Defaults to None (no filtering).", + "enum": null, + "inferrable": true + }, + { + "name": "deal_id", + "type": "integer", + "required": false, + "description": "Filter contacts by deal ID. Defaults to None (no filtering).", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Sort order for results. Defaults to LATEST_MODIFIED.", + "enum": ["LATEST_MODIFIED", "OLDEST_MODIFIED", "ALPHABETICAL"], + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to get the next page of results. Defaults to None (returns first page of results)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.read", + "crm.objects.companies.read", + "crm.objects.deals.read", + "sales-email-read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List contacts with associated companies, deals, calls, emails, meetings, notes, and tasks." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.ListContacts", + "parameters": { + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "associations_limit": { + "value": 15, + "type": "integer", + "required": false + }, + "company_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "deal_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "OLDEST_MODIFIED", + "type": "string", + "required": false + }, + "next_page_token": { + "value": "abc123token", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListDeals", + "qualifiedName": "Hubspot.ListDeals", + "fullyQualifiedName": "Hubspot.ListDeals@3.0.0", + "description": "List deals with associated contacts, companies, calls, emails, meetings, notes, and tasks.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of deals to return. Defaults to 10. Max is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_id", + "type": "integer", + "required": false, + "description": "Filter deals by contact ID. Defaults to None (no filtering).", + "enum": null, + "inferrable": true + }, + { + "name": "company_id", + "type": "integer", + "required": false, + "description": "Filter deals by company ID. Defaults to None (no filtering).", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Sort order for results. Defaults to LATEST_MODIFIED.", + "enum": ["LATEST_MODIFIED", "OLDEST_MODIFIED", "ALPHABETICAL"], + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to get the next page of results. Defaults to None (returns first page of results)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.deals.read", + "crm.objects.contacts.read", + "crm.objects.companies.read", + "sales-email-read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List deals with associated contacts, companies, calls, emails, meetings, notes, and tasks." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.ListDeals", + "parameters": { + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "associations_limit": { + "value": 5, + "type": "integer", + "required": false + }, + "contact_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "company_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "OLDEST_MODIFIED", + "type": "string", + "required": false + }, + "next_page_token": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ToolkitEnviromentGuidance", + "qualifiedName": "Hubspot.ToolkitEnviromentGuidance", + "fullyQualifiedName": "Hubspot.ToolkitEnviromentGuidance@3.0.0", + "description": "Get guidance and considerations for using the HubSpot toolkit effectively.\n\nThis tool provides important context and best practices for working with HubSpot tools.\nBased on all available HubSpot toolkit tools, some suggestions may apply to tools that are not\navailable in the current agent's configuration.", + "parameters": [], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List of guidance." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.ToolkitEnviromentGuidance", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCallActivity", + "qualifiedName": "Hubspot.UpdateCallActivity", + "fullyQualifiedName": "Hubspot.UpdateCallActivity@3.0.0", + "description": "Update a call activity directly by ID or surface matches when searching by keywords.", + "parameters": [ + { + "name": "call_id", + "type": "integer", + "required": false, + "description": "The call activity ID to update.", + "enum": null, + "inferrable": true + }, + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Keywords to search for call summaries or titles. Provide when call_id is not known.", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": false, + "description": "Updated call title.", + "enum": null, + "inferrable": true + }, + { + "name": "direction", + "type": "string", + "required": false, + "description": "Updated call direction.", + "enum": ["INBOUND", "OUTBOUND"], + "inferrable": true + }, + { + "name": "summary", + "type": "string", + "required": false, + "description": "Updated call summary.", + "enum": null, + "inferrable": true + }, + { + "name": "duration", + "type": "integer", + "required": false, + "description": "Updated call duration in seconds.", + "enum": null, + "inferrable": true + }, + { + "name": "to_number", + "type": "string", + "required": false, + "description": "Updated number called to.", + "enum": null, + "inferrable": true + }, + { + "name": "from_number", + "type": "string", + "required": false, + "description": "Updated number called from.", + "enum": null, + "inferrable": true + }, + { + "name": "when_occurred", + "type": "string", + "required": false, + "description": "Updated call timestamp (ISO format: YYYY-MM-DDTHH:MM:SS).", + "enum": null, + "inferrable": true + }, + { + "name": "matches_limit", + "type": "integer", + "required": false, + "description": "Maximum number of calls to return when searching by keywords. Defaults to 5. Max is 20.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.read", + "crm.objects.contacts.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Update a call by ID or list matching calls when searching by keywords." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.UpdateCallActivity", + "parameters": { + "call_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "keywords": { + "value": "client follow-up", + "type": "string", + "required": false + }, + "title": { + "value": "Follow-up with Client A", + "type": "string", + "required": false + }, + "direction": { + "value": "outgoing", + "type": "string", + "required": false + }, + "summary": { + "value": "Discussed project updates and next steps.", + "type": "string", + "required": false + }, + "duration": { + "value": 300, + "type": "integer", + "required": false + }, + "to_number": { + "value": "+1234567890", + "type": "string", + "required": false + }, + "from_number": { + "value": "+0987654321", + "type": "string", + "required": false + }, + "when_occurred": { + "value": "2023-10-01T14:30:00", + "type": "string", + "required": false + }, + "matches_limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCommunicationActivity", + "qualifiedName": "Hubspot.UpdateCommunicationActivity", + "fullyQualifiedName": "Hubspot.UpdateCommunicationActivity@3.0.0", + "description": "Update a communication activity by ID or return matches for keyword searches.", + "parameters": [ + { + "name": "communication_id", + "type": "integer", + "required": false, + "description": "The communication activity ID to update.", + "enum": null, + "inferrable": true + }, + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Keywords to search for communication body text. Provide when communication_id is not known.", + "enum": null, + "inferrable": true + }, + { + "name": "channel", + "type": "string", + "required": false, + "description": "Updated communication channel.", + "enum": [ + "SMS", + "WHATS_APP", + "LINKEDIN_MESSAGE", + "PHYSICAL_MAIL", + "CUSTOM_CHANNEL_CONVERSATION" + ], + "inferrable": true + }, + { + "name": "body_text", + "type": "string", + "required": false, + "description": "Updated message body.", + "enum": null, + "inferrable": true + }, + { + "name": "when_occurred", + "type": "string", + "required": false, + "description": "Updated timestamp (ISO format: YYYY-MM-DDTHH:MM:SS).", + "enum": null, + "inferrable": true + }, + { + "name": "matches_limit", + "type": "integer", + "required": false, + "description": "Maximum number of communications to return when searching by keywords. Defaults to 5. Max is 20.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.read", + "crm.objects.contacts.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Update a communication activity by ID or list matching communications when searching by keywords." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.UpdateCommunicationActivity", + "parameters": { + "communication_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "keywords": { + "value": "meeting follow-up", + "type": "string", + "required": false + }, + "channel": { + "value": "email", + "type": "string", + "required": false + }, + "body_text": { + "value": "Looking forward to our next steps after the meeting.", + "type": "string", + "required": false + }, + "when_occurred": { + "value": "2023-10-05T14:30:00", + "type": "string", + "required": false + }, + "matches_limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCompany", + "qualifiedName": "Hubspot.UpdateCompany", + "fullyQualifiedName": "Hubspot.UpdateCompany@3.0.0", + "description": "Update a company directly by ID or surface matches when searching by keywords.", + "parameters": [ + { + "name": "company_id", + "type": "integer", + "required": false, + "description": "The ID of the company to update.", + "enum": null, + "inferrable": true + }, + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Keywords to search for the company (name, domain, website). Provide when company_id is not known.", + "enum": null, + "inferrable": true + }, + { + "name": "company_name", + "type": "string", + "required": false, + "description": "The company name.", + "enum": null, + "inferrable": true + }, + { + "name": "web_domain", + "type": "string", + "required": false, + "description": "The company web domain (e.g., example.com).", + "enum": null, + "inferrable": true + }, + { + "name": "industry_type", + "type": "string", + "required": false, + "description": "The company industry type (case-insensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "company_city", + "type": "string", + "required": false, + "description": "The company city location.", + "enum": null, + "inferrable": true + }, + { + "name": "company_state", + "type": "string", + "required": false, + "description": "The company state or province.", + "enum": null, + "inferrable": true + }, + { + "name": "company_country", + "type": "string", + "required": false, + "description": "The company country.", + "enum": null, + "inferrable": true + }, + { + "name": "phone_number", + "type": "string", + "required": false, + "description": "The company main phone number.", + "enum": null, + "inferrable": true + }, + { + "name": "website_url", + "type": "string", + "required": false, + "description": "The company website URL.", + "enum": null, + "inferrable": true + }, + { + "name": "matches_limit", + "type": "integer", + "required": false, + "description": "The maximum number of companies to return when searching by keywords. Defaults to 5. Max is 20.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.companies.read", + "crm.objects.companies.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Update a company by ID or list matching companies when searching by keywords." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.UpdateCompany", + "parameters": { + "company_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "keywords": { + "value": "Tech Innovations", + "type": "string", + "required": false + }, + "company_name": { + "value": "Tech Innovations LLC", + "type": "string", + "required": false + }, + "web_domain": { + "value": "techinnovations.com", + "type": "string", + "required": false + }, + "industry_type": { + "value": "Technology", + "type": "string", + "required": false + }, + "company_city": { + "value": "San Francisco", + "type": "string", + "required": false + }, + "company_state": { + "value": "CA", + "type": "string", + "required": false + }, + "company_country": { + "value": "USA", + "type": "string", + "required": false + }, + "phone_number": { + "value": "+14155552671", + "type": "string", + "required": false + }, + "website_url": { + "value": "http://www.techinnovations.com", + "type": "string", + "required": false + }, + "matches_limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateContact", + "qualifiedName": "Hubspot.UpdateContact", + "fullyQualifiedName": "Hubspot.UpdateContact@3.0.0", + "description": "Update a contact directly by ID or list possible matches when searching by keywords.", + "parameters": [ + { + "name": "contact_id", + "type": "integer", + "required": false, + "description": "The ID of the contact to update.", + "enum": null, + "inferrable": true + }, + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Keywords to search for the contact (name, email, phone). Provide when contact_id is not known.", + "enum": null, + "inferrable": true + }, + { + "name": "first_name", + "type": "string", + "required": false, + "description": "The first name of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "last_name", + "type": "string", + "required": false, + "description": "The last name of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "email", + "type": "string", + "required": false, + "description": "The email address of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "phone", + "type": "string", + "required": false, + "description": "The phone number of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "mobile_phone", + "type": "string", + "required": false, + "description": "The mobile phone number of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "job_title", + "type": "string", + "required": false, + "description": "The job title of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "matches_limit", + "type": "integer", + "required": false, + "description": "The maximum number of contacts to return when searching by keywords. Defaults to 5. Max is 20.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.read", + "crm.objects.contacts.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Update a contact by ID or list matching contacts when searching by keywords." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.UpdateContact", + "parameters": { + "contact_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "keywords": { + "value": "John Doe", + "type": "string", + "required": false + }, + "first_name": { + "value": "John", + "type": "string", + "required": false + }, + "last_name": { + "value": "Doe", + "type": "string", + "required": false + }, + "email": { + "value": "john.doe@example.com", + "type": "string", + "required": false + }, + "phone": { + "value": "+1234567890", + "type": "string", + "required": false + }, + "mobile_phone": { + "value": "+0987654321", + "type": "string", + "required": false + }, + "job_title": { + "value": "Software Engineer", + "type": "string", + "required": false + }, + "matches_limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateDeal", + "qualifiedName": "Hubspot.UpdateDeal", + "fullyQualifiedName": "Hubspot.UpdateDeal@3.0.0", + "description": "Update a deal directly by ID or surface matches when searching by keywords.", + "parameters": [ + { + "name": "deal_id", + "type": "integer", + "required": false, + "description": "The ID of the deal to update.", + "enum": null, + "inferrable": true + }, + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Keywords to search for the deal (name, description). Provide when deal_id is not known.", + "enum": null, + "inferrable": true + }, + { + "name": "deal_name", + "type": "string", + "required": false, + "description": "The deal name.", + "enum": null, + "inferrable": true + }, + { + "name": "deal_amount", + "type": "number", + "required": false, + "description": "The deal amount/value.", + "enum": null, + "inferrable": true + }, + { + "name": "deal_stage", + "type": "string", + "required": false, + "description": "The deal stage ID.", + "enum": null, + "inferrable": true + }, + { + "name": "deal_type", + "type": "string", + "required": false, + "description": "The deal type. Accepts enum values as strings (e.g., 'newbusiness', 'existingbusiness').", + "enum": null, + "inferrable": true + }, + { + "name": "expected_close_date", + "type": "string", + "required": false, + "description": "Expected close date in YYYY-MM-DD format.", + "enum": null, + "inferrable": true + }, + { + "name": "deal_owner", + "type": "string", + "required": false, + "description": "The deal owner user ID.", + "enum": null, + "inferrable": true + }, + { + "name": "priority_level", + "type": "string", + "required": false, + "description": "Priority level. Accepts enum values as strings (e.g., 'low', 'medium', 'high').", + "enum": null, + "inferrable": true + }, + { + "name": "deal_description", + "type": "string", + "required": false, + "description": "The deal description.", + "enum": null, + "inferrable": true + }, + { + "name": "matches_limit", + "type": "integer", + "required": false, + "description": "The maximum number of deals to return when searching by keywords. Defaults to 5. Max is 20.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth", "crm.objects.deals.read", "crm.objects.deals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Update a deal by ID or list matching deals when searching by keywords." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.UpdateDeal", + "parameters": { + "deal_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "keywords": { + "value": "Project Upgrade", + "type": "string", + "required": false + }, + "deal_name": { + "value": "Project Alpha", + "type": "string", + "required": false + }, + "deal_amount": { + "value": 15000.75, + "type": "integer", + "required": false + }, + "deal_stage": { + "value": "negotiation", + "type": "string", + "required": false + }, + "deal_type": { + "value": "newbusiness", + "type": "string", + "required": false + }, + "expected_close_date": { + "value": "2023-12-31", + "type": "string", + "required": false + }, + "deal_owner": { + "value": "user-6789", + "type": "string", + "required": false + }, + "priority_level": { + "value": "high", + "type": "string", + "required": false + }, + "deal_description": { + "value": "This deal involves upgrading the project scope and deliverables.", + "type": "string", + "required": false + }, + "matches_limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateDealCloseDate", + "qualifiedName": "Hubspot.UpdateDealCloseDate", + "fullyQualifiedName": "Hubspot.UpdateDealCloseDate@3.0.0", + "description": "Update the expected close date of an existing deal with associated contacts, companies,\ncalls, emails, meetings, notes, and tasks.", + "parameters": [ + { + "name": "deal_id", + "type": "integer", + "required": true, + "description": "The ID of the deal to update", + "enum": null, + "inferrable": true + }, + { + "name": "expected_close_date", + "type": "string", + "required": true, + "description": "New expected close date in YYYY-MM-DD format", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.deals.write", + "crm.objects.deals.read", + "crm.objects.contacts.read", + "crm.objects.companies.read", + "sales-email-read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Updated deal information with associated entities" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.UpdateDealCloseDate", + "parameters": { + "deal_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "expected_close_date": { + "value": "2023-12-31", + "type": "string", + "required": true + }, + "associations_limit": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateDealStage", + "qualifiedName": "Hubspot.UpdateDealStage", + "fullyQualifiedName": "Hubspot.UpdateDealStage@3.0.0", + "description": "Updates a deal's stage with associated contacts, companies, calls, emails,\nmeetings, notes, and tasks.\n\nSend current_pipeline_id to skip fetching the deal.\nIf pipeline changes are allowed, updates the stage and HubSpot\nmay move the deal to another pipeline.\n\nIt is recommended have already pipeline data available when\nplanning to call this tool.", + "parameters": [ + { + "name": "deal_id", + "type": "integer", + "required": true, + "description": "The ID of the deal to update", + "enum": null, + "inferrable": true + }, + { + "name": "deal_stage", + "type": "string", + "required": true, + "description": "New deal stage ID", + "enum": null, + "inferrable": true + }, + { + "name": "associations_limit", + "type": "integer", + "required": false, + "description": "The maximum number of each associated object type to return. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "current_pipeline_id", + "type": "string", + "required": false, + "description": "Current pipeline id for this deal, if already known (skips fetching the deal)", + "enum": null, + "inferrable": true + }, + { + "name": "allow_pipeline_change", + "type": "boolean", + "required": false, + "description": "If true, allows changing the deal's pipeline when the stage belongs to another pipeline", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.deals.write", + "crm.objects.deals.read", + "crm.objects.contacts.read", + "crm.objects.companies.read", + "sales-email-read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Updated deal information with associated entities" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.UpdateDealStage", + "parameters": { + "deal_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "deal_stage": { + "value": "qualified_to_buy", + "type": "string", + "required": true + }, + "associations_limit": { + "value": 5, + "type": "integer", + "required": false + }, + "current_pipeline_id": { + "value": "pipeline_67890", + "type": "string", + "required": false + }, + "allow_pipeline_change": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEmailActivity", + "qualifiedName": "Hubspot.UpdateEmailActivity", + "fullyQualifiedName": "Hubspot.UpdateEmailActivity@3.0.0", + "description": "Update an email activity directly by ID or surface matches when searching by keywords.", + "parameters": [ + { + "name": "email_id", + "type": "integer", + "required": false, + "description": "The email activity ID to update.", + "enum": null, + "inferrable": true + }, + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Keywords to search for email subjects or body text. Provide when email_id is not known.", + "enum": null, + "inferrable": true + }, + { + "name": "subject", + "type": "string", + "required": false, + "description": "Updated email subject.", + "enum": null, + "inferrable": true + }, + { + "name": "direction", + "type": "string", + "required": false, + "description": "Updated email direction.", + "enum": ["EMAIL", "INCOMING_EMAIL", "FORWARDED_EMAIL"], + "inferrable": true + }, + { + "name": "status", + "type": "string", + "required": false, + "description": "Updated email status.", + "enum": ["BOUNCED", "FAILED", "SCHEDULED", "SENDING", "SENT"], + "inferrable": true + }, + { + "name": "body_text", + "type": "string", + "required": false, + "description": "Updated plain-text body.", + "enum": null, + "inferrable": true + }, + { + "name": "body_html", + "type": "string", + "required": false, + "description": "Updated HTML body.", + "enum": null, + "inferrable": true + }, + { + "name": "when_occurred", + "type": "string", + "required": false, + "description": "Updated email timestamp (ISO format: YYYY-MM-DDTHH:MM:SS).", + "enum": null, + "inferrable": true + }, + { + "name": "matches_limit", + "type": "integer", + "required": false, + "description": "Maximum number of emails to return when searching by keywords. Defaults to 5. Max is 20.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.read", + "crm.objects.contacts.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Update an email activity by ID or list matching emails when searching by keywords." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.UpdateEmailActivity", + "parameters": { + "email_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "keywords": { + "value": "newsletter", + "type": "string", + "required": false + }, + "subject": { + "value": "Monthly Newsletter Update", + "type": "string", + "required": false + }, + "direction": { + "value": "outbound", + "type": "string", + "required": false + }, + "status": { + "value": "sent", + "type": "string", + "required": false + }, + "body_text": { + "value": "Hello, this is the update for our monthly newsletter.", + "type": "string", + "required": false + }, + "body_html": { + "value": "

Hello, this is the update for our monthly newsletter.

", + "type": "string", + "required": false + }, + "when_occurred": { + "value": "2023-10-01T12:30:00", + "type": "string", + "required": false + }, + "matches_limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMeetingActivity", + "qualifiedName": "Hubspot.UpdateMeetingActivity", + "fullyQualifiedName": "Hubspot.UpdateMeetingActivity@3.0.0", + "description": "Update a meeting activity directly by ID or surface matches when searching by keywords.", + "parameters": [ + { + "name": "meeting_id", + "type": "integer", + "required": false, + "description": "The meeting activity ID to update.", + "enum": null, + "inferrable": true + }, + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Keywords to search for meeting titles. Provide when meeting_id is not known.", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": false, + "description": "Updated meeting title.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "Updated start date (YYYY-MM-DD).", + "enum": null, + "inferrable": true + }, + { + "name": "start_time", + "type": "string", + "required": false, + "description": "Updated start time (HH:MM or HH:MM:SS).", + "enum": null, + "inferrable": true + }, + { + "name": "duration", + "type": "string", + "required": false, + "description": "Updated duration in HH:MM format.", + "enum": null, + "inferrable": true + }, + { + "name": "location", + "type": "string", + "required": false, + "description": "Updated meeting location.", + "enum": null, + "inferrable": true + }, + { + "name": "outcome", + "type": "string", + "required": false, + "description": "Updated meeting outcome.", + "enum": [ + "SCHEDULED", + "COMPLETED", + "RESCHEDULED", + "NO_SHOW", + "CANCELED" + ], + "inferrable": true + }, + { + "name": "matches_limit", + "type": "integer", + "required": false, + "description": "Maximum number of meetings to return when searching by keywords. Defaults to 5. Max is 20.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.read", + "crm.objects.contacts.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Update a meeting activity by ID or list matching meetings when searching by keywords." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.UpdateMeetingActivity", + "parameters": { + "meeting_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "keywords": { + "value": "team update", + "type": "string", + "required": false + }, + "title": { + "value": "Weekly Team Update", + "type": "string", + "required": false + }, + "start_date": { + "value": "2023-11-01", + "type": "string", + "required": false + }, + "start_time": { + "value": "14:30", + "type": "string", + "required": false + }, + "duration": { + "value": "01:00", + "type": "string", + "required": false + }, + "location": { + "value": "Conference Room A", + "type": "string", + "required": false + }, + "outcome": { + "value": "Follow up on project status", + "type": "string", + "required": false + }, + "matches_limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateNoteActivity", + "qualifiedName": "Hubspot.UpdateNoteActivity", + "fullyQualifiedName": "Hubspot.UpdateNoteActivity@3.0.0", + "description": "Update a note directly by ID or surface matches when searching by keywords.", + "parameters": [ + { + "name": "note_id", + "type": "integer", + "required": false, + "description": "The note ID to update.", + "enum": null, + "inferrable": true + }, + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Keywords to search for the note content. Provide when note_id is not known.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "Updated note content.", + "enum": null, + "inferrable": true + }, + { + "name": "when_occurred", + "type": "string", + "required": false, + "description": "Updated creation timestamp (ISO format: YYYY-MM-DDTHH:MM:SS).", + "enum": null, + "inferrable": true + }, + { + "name": "matches_limit", + "type": "integer", + "required": false, + "description": "Maximum number of notes to return when searching by keywords. Defaults to 5. Max is 20.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "oauth", + "crm.objects.contacts.read", + "crm.objects.contacts.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Update a note by ID or list matching notes when searching by keywords." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.UpdateNoteActivity", + "parameters": { + "note_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "keywords": { + "value": "meeting notes", + "type": "string", + "required": false + }, + "body": { + "value": "Updated content of the meeting notes with action items.", + "type": "string", + "required": false + }, + "when_occurred": { + "value": "2023-10-01T14:30:00", + "type": "string", + "required": false + }, + "matches_limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "Hubspot.WhoAmI", + "fullyQualifiedName": "Hubspot.WhoAmI@3.0.0", + "description": "Get current user information from HubSpot.\n\nThis is typically the first tool called to understand the current user context.\n\nUse this tool when needing information about the current user basic HubSpot information.\nand the associated HubSpot portal.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth", "crm.objects.owners.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get current user information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Hubspot.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Cloud Platform offers a default [Hubspot auth provider](/references/auth-providers/hubspot). If you use it, there's nothing to configure. Your users will see `Arcade` as the name of the application requesting permission.", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:33:59.461Z", + "summary": "Arcade Toolkit for HubSpot enables seamless integration and interaction with HubSpot's CRM functionalities, allowing developers to leverage various activities and data management tools for enhanced customer relationship management.\n\n**Capabilities**\n- Create, update, and manage companies, contacts, and deals within HubSpot.\n- Log and associate various engagement activities such as calls, emails, meetings, and more.\n- Retrieve detailed information about users, deals, and associated data effectively.\n- Access industry types and manage user assignments efficiently.\n\n**OAuth**\n- Provider: Unknown\n- Scopes: crm.objects.companies.read, crm.objects.contacts.write, crm.objects.deals.read, oauth, sales-email-read\n\n**Secrets**\n- No existing secrets." +} diff --git a/data/toolkits/hubspotautomationapi.json b/data/toolkits/hubspotautomationapi.json new file mode 100644 index 000000000..29736d5bb --- /dev/null +++ b/data/toolkits/hubspotautomationapi.json @@ -0,0 +1,531 @@ +{ + "id": "HubspotAutomationApi", + "label": "HubSpot Automation API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the HubSpot Automation API.", + "metadata": { + "category": "sales", + "iconUrl": "https://design-system.arcade.dev/icons/hubspot.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/sales/hubspot-automation-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": [ + "automation", + "automation.sequences.enrollments.write", + "automation.sequences.read" + ] + }, + "tools": [ + { + "name": "CheckContactEnrollmentStatus", + "qualifiedName": "HubspotAutomationApi.CheckContactEnrollmentStatus", + "fullyQualifiedName": "HubspotAutomationApi.CheckContactEnrollmentStatus@1.0.0", + "description": "Retrieve the sequence enrollment status of a contact by ID.\n\nUse this tool to find out if a contact is enrolled in any sequences, using their contact ID to get the status information.", + "parameters": [ + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "The unique ID of the contact to check their sequence enrollment status.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["automation.sequences.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/automation/v4/sequences/enrollments/contact/{contactId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotAutomationApi.CheckContactEnrollmentStatus", + "parameters": { + "contact_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CompleteActionExecution", + "qualifiedName": "HubspotAutomationApi.CompleteActionExecution", + "fullyQualifiedName": "HubspotAutomationApi.CompleteActionExecution@1.0.0", + "description": "Complete a specific blocked action execution by ID.\n\n Call this tool to complete an action in an automation workflow that is currently blocked by its ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "action_execution_id", + "type": "string", + "required": false, + "description": "The unique identifier of the action execution to be completed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["automation"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/automation/v4/actions/callbacks/{callbackId}/complete_complete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotAutomationApi.CompleteActionExecution", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "action_execution_id": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"completed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CompleteBatchActionExecutions", + "qualifiedName": "HubspotAutomationApi.CompleteBatchActionExecutions", + "fullyQualifiedName": "HubspotAutomationApi.CompleteBatchActionExecutions@1.0.0", + "description": "Complete a batch of blocked action executions.\n\nUse this tool to mark a batch of previously blocked action executions as complete. Ideal for situations where action executions need to be finalized as part of an automated workflow.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["automation"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/automation/v4/actions/callbacks/complete_completeBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotAutomationApi.CompleteBatchActionExecutions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"action_ids\":[\"action_1\",\"action_2\"],\"status\":\"completed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EnrollContactInSequence", + "qualifiedName": "HubspotAutomationApi.EnrollContactInSequence", + "fullyQualifiedName": "HubspotAutomationApi.EnrollContactInSequence@1.0.0", + "description": "Enroll a contact into a sequence with user ID and details.\n\nThis tool enrolls a specified contact into an automation sequence using the provided user ID and sequence details, facilitating automated follow-up actions.", + "parameters": [ + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "The unique identifier of the contact to be enrolled in the sequence.", + "enum": null, + "inferrable": true + }, + { + "name": "sender_email", + "type": "string", + "required": true, + "description": "The email address of the sender enrolling the contact. This should be a valid email associated with the sender's HubSpot user account.", + "enum": null, + "inferrable": true + }, + { + "name": "sequence_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the sequence to enroll the contact into. It should be a valid string matching the sequence available in the system.", + "enum": null, + "inferrable": true + }, + { + "name": "sender_alias_address", + "type": "string", + "required": false, + "description": "Email alias for the sender addressing the sequence. This is used instead of the default email address.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["automation.sequences.enrollments.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/automation/v4/sequences/enrollments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotAutomationApi.EnrollContactInSequence", + "parameters": { + "contact_id": { + "value": "12345", + "type": "string", + "required": true + }, + "sender_email": { + "value": "sender@example.com", + "type": "string", + "required": true + }, + "sequence_identifier": { + "value": "sequence_001", + "type": "string", + "required": true + }, + "sender_alias_address": { + "value": "alias@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchEmailCampaigns", + "qualifiedName": "HubspotAutomationApi.FetchEmailCampaigns", + "fullyQualifiedName": "HubspotAutomationApi.FetchEmailCampaigns@1.0.0", + "description": "Fetch email campaigns from HubSpot Automation.\n\nUse this tool to retrieve information about email campaigns managed within HubSpot's automation platform. It can be called to get an overview of current or past email marketing activities.", + "parameters": [ + { + "name": "email_campaign_flow_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of flow IDs to specify which email campaigns to retrieve. Each ID should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_filter", + "type": "string", + "required": false, + "description": "A timestamp filter to get campaigns before a specific date (in YYYY-MM-DD format).", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of email campaign entries to retrieve. Should be an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "Specify the start date for fetching email campaigns. This should be in the format YYYY-MM-DD to filter results starting after this date.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["automation"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/automation/v4/flows/email-campaigns'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotAutomationApi.FetchEmailCampaigns", + "parameters": { + "email_campaign_flow_ids": { + "value": ["flow_id_123", "flow_id_456"], + "type": "array", + "required": false + }, + "end_date_filter": { + "value": "2023-09-30", + "type": "string", + "required": false + }, + "max_results": { + "value": 50, + "type": "integer", + "required": false + }, + "start_date": { + "value": "2023-01-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSequenceDetails", + "qualifiedName": "HubspotAutomationApi.GetSequenceDetails", + "fullyQualifiedName": "HubspotAutomationApi.GetSequenceDetails@1.0.0", + "description": "Retrieve details of a specific sequence by its ID.\n\nThis tool retrieves information about a specific sequence using its ID. It should be called when you need details about a sequence within HubSpot Automation.", + "parameters": [ + { + "name": "sequence_id", + "type": "string", + "required": true, + "description": "The unique ID of the sequence to retrieve details for. This ID identifies which sequence's information will be returned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["automation.sequences.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/automation/v4/sequences/{sequenceId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotAutomationApi.GetSequenceDetails", + "parameters": { + "sequence_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserSequences", + "qualifiedName": "HubspotAutomationApi.GetUserSequences", + "fullyQualifiedName": "HubspotAutomationApi.GetUserSequences@1.0.0", + "description": "Retrieve a list of sequences for a specific user.\n\nUse this tool to get sequences associated with a user in HubSpot. Useful for tracking user-specific automated processes.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["automation.sequences.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/automation/v4/sequences/'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotAutomationApi.GetUserSequences", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkflowIdMappings", + "qualifiedName": "HubspotAutomationApi.GetWorkflowIdMappings", + "fullyQualifiedName": "HubspotAutomationApi.GetWorkflowIdMappings@1.0.0", + "description": "Retrieve HubSpot workflow ID mappings in batch.\n\nCall this tool to obtain mappings for HubSpot workflow IDs in batch. Useful for integrating workflows and managing automation processes.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["automation"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/automation/v4/workflow-id-mappings/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotAutomationApi.GetWorkflowIdMappings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"workflowIds\": [12345, 67890]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkflows", + "qualifiedName": "HubspotAutomationApi.GetWorkflows", + "fullyQualifiedName": "HubspotAutomationApi.GetWorkflows@1.0.0", + "description": "Retrieve details of HubSpot workflows.\n\nThis tool allows you to fetch information about workflows in HubSpot. Use it when you need to access or manage workflow details for automation purposes.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["automation"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/automation/v4/flows/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotAutomationApi.GetWorkflows", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"workflowId\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The HubspotAutomationApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotAutomationApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider.", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:34:06.653Z", + "summary": "Arcade's HubSpot Automation API toolkit empowers developers to integrate LLMs with HubSpot's automation capabilities, facilitating seamless interaction with various automation workflows and sequences.\n\n**Capabilities**\n- Enroll contacts in sequences and fetch campaign details via automation tools.\n- Retrieve sequence statuses and details efficiently using contact IDs.\n- Manage batch actions and workflow ID mappings to optimize automation processes.\n- Access user-specific sequences to track individual automated tasks.\n\n**OAuth**\nProvider: Unknown\nScopes: automation, automation.sequences.enrollments.write, automation.sequences.read\n\n**Secrets**\nNo secrets required for this toolkit." +} diff --git a/data/toolkits/hubspotcmsapi.json b/data/toolkits/hubspotcmsapi.json new file mode 100644 index 000000000..58cd4c1de --- /dev/null +++ b/data/toolkits/hubspotcmsapi.json @@ -0,0 +1,12012 @@ +{ + "id": "HubspotCmsApi", + "label": "HubSpot CMS API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the HubSpot CMS API.", + "metadata": { + "category": "sales", + "iconUrl": "https://design-system.arcade.dev/icons/hubspot.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/sales/hubspot-cms-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": [ + "cms.domains.read", + "cms.domains.write", + "cms.knowledge_base.settings.read", + "cms.knowledge_base.settings.write", + "content", + "hubdb", + "media_bridge.write" + ] + }, + "tools": [ + { + "name": "AddHubdbTableRow", + "qualifiedName": "HubspotCmsApi.AddHubdbTableRow", + "fullyQualifiedName": "HubspotCmsApi.AddHubdbTableRow@1.0.0", + "description": "Add a new row to a HubDB draft table.\n\n Use this tool to add a new row to the draft version of a HubDB table. To make these changes live, publish the table afterwards.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "target_table_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the target HubDB table to add the row to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/rows_createTableRow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.AddHubdbTableRow", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "target_table_id_or_name": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"column1\":\"value1\", \"column2\":\"value2\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveBlogTags", + "qualifiedName": "HubspotCmsApi.ArchiveBlogTags", + "fullyQualifiedName": "HubspotCmsApi.ArchiveBlogTags@1.0.0", + "description": "Archive multiple blog tags in HubSpot CMS.\n\nUse this tool to delete multiple blog tag objects in HubSpot CMS by providing their identifiers. Suitable for cleaning up unused or obsolete tags in batches.", + "parameters": [ + { + "name": "blog_tag_identifiers", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of strings representing the blog tag identifiers to be archived.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/tags/batch/archive_archiveBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ArchiveBlogTags", + "parameters": { + "blog_tag_identifiers": { + "value": ["tag123", "tag456", "tag789"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveHubdbTable", + "qualifiedName": "HubspotCmsApi.ArchiveHubdbTable", + "fullyQualifiedName": "HubspotCmsApi.ArchiveHubdbTable@1.0.0", + "description": "Archive a HubDB table in HubSpot CMS.\n\nUse this tool to archive (soft delete) an existing HubDB table in HubSpot CMS, affecting both published and draft versions.", + "parameters": [ + { + "name": "hubdb_table_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the HubDB table to archive. Provides the reference needed to identify the table within the system.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/cms/v3/hubdb/tables/{tableIdOrName}_archiveTable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ArchiveHubdbTable", + "parameters": { + "hubdb_table_identifier": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AttachAuthorToMultilangGroup", + "qualifiedName": "HubspotCmsApi.AttachAuthorToMultilangGroup", + "fullyQualifiedName": "HubspotCmsApi.AttachAuthorToMultilangGroup@1.0.0", + "description": "Attach a Blog Author to a multi-language group.\n\nUse this tool to link a specific blog author with a multi-language group in HubSpot CMS. This action helps manage authors across different language variations of your blog.", + "parameters": [ + { + "name": "author_object_id", + "type": "string", + "required": true, + "description": "ID of the blog author to add to a multi-language group in HubSpot CMS.", + "enum": null, + "inferrable": true + }, + { + "name": "designated_language", + "type": "string", + "required": true, + "description": "The language code of the blog author to be added to a multi-language group, e.g., 'en' for English.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_language_object_id", + "type": "string", + "required": true, + "description": "ID of the primary language object in the multi-language group.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_language", + "type": "string", + "required": false, + "description": "Specify the primary language of the multi-language group to which the author will be attached.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/authors/multi-language/attach-to-lang-group_attachToLangGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.AttachAuthorToMultilangGroup", + "parameters": { + "author_object_id": { + "value": "12345", + "type": "string", + "required": true + }, + "designated_language": { + "value": "fr", + "type": "string", + "required": true + }, + "primary_language_object_id": { + "value": "67890", + "type": "string", + "required": true + }, + "primary_language": { + "value": "en", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AttachBlogPostToLanguageGroup", + "qualifiedName": "HubspotCmsApi.AttachBlogPostToLanguageGroup", + "fullyQualifiedName": "HubspotCmsApi.AttachBlogPostToLanguageGroup@1.0.0", + "description": "Attach a blog post to a multi-language group in HubSpot CMS.\n\nUse this tool to attach a specific blog post to a multi-language group in HubSpot CMS, enabling content localization and management.", + "parameters": [ + { + "name": "designated_language", + "type": "string", + "required": true, + "description": "Specify the language code (e.g., 'en', 'fr', 'es') for the blog post to be added to the multi-language group.", + "enum": null, + "inferrable": true + }, + { + "name": "object_id", + "type": "string", + "required": true, + "description": "The ID of the blog post to attach to a multi-language group.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_language_object_id", + "type": "string", + "required": true, + "description": "ID of the primary language object in the multi-language group.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_language", + "type": "string", + "required": false, + "description": "Primary language of the multi-language group. Specify in ISO language code format (e.g., 'en', 'fr').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/multi-language/attach-to-lang-group_attachToLangGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.AttachBlogPostToLanguageGroup", + "parameters": { + "designated_language": { + "value": "fr", + "type": "string", + "required": true + }, + "object_id": { + "value": "12345", + "type": "string", + "required": true + }, + "primary_language_object_id": { + "value": "67890", + "type": "string", + "required": true + }, + "primary_language": { + "value": "en", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AttachBlogToLanguageGroup", + "qualifiedName": "HubspotCmsApi.AttachBlogToLanguageGroup", + "fullyQualifiedName": "HubspotCmsApi.AttachBlogToLanguageGroup@1.0.0", + "description": "Attach a blog to a multi-language group in HubSpot CMS.\n\nUse this tool to attach a blog to a specified multi-language group within HubSpot CMS. It is helpful when managing blogs in different languages and ensuring they are correctly grouped.", + "parameters": [ + { + "name": "designated_language", + "type": "string", + "required": true, + "description": "The language code of the blog to add to a multi-language group. Use standard language codes like 'en', 'fr', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "object_id_to_add", + "type": "string", + "required": true, + "description": "ID of the blog object to be added to a multi-language group in HubSpot CMS.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_language_object_id", + "type": "string", + "required": true, + "description": "ID of the primary language object in the multi-language group to which the blog will be attached.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_language", + "type": "string", + "required": false, + "description": "Primary language code for the multi-language group to which the blog should be attached (e.g., 'en', 'fr').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blog-settings/settings/multi-language/attach-to-lang-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.AttachBlogToLanguageGroup", + "parameters": { + "designated_language": { + "value": "fr", + "type": "string", + "required": true + }, + "object_id_to_add": { + "value": "123456789", + "type": "string", + "required": true + }, + "primary_language_object_id": { + "value": "987654321", + "type": "string", + "required": true + }, + "primary_language": { + "value": "en", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AttachLandingPageToLanguageGroup", + "qualifiedName": "HubspotCmsApi.AttachLandingPageToLanguageGroup", + "fullyQualifiedName": "HubspotCmsApi.AttachLandingPageToLanguageGroup@1.0.0", + "description": "Attach a landing page to a multi-language group.\n\nUse this tool to associate a landing page with an existing multi-language group, enabling better management of language variations within HubSpot CMS.", + "parameters": [ + { + "name": "designated_language_to_add", + "type": "string", + "required": true, + "description": "The language of the landing page to add to a multi-language group. Expect a language code.", + "enum": null, + "inferrable": true + }, + { + "name": "object_id_for_language_group", + "type": "string", + "required": true, + "description": "ID of the landing page to add to the multi-language group.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_language_object_id", + "type": "string", + "required": true, + "description": "Provide the ID of the primary language object in the multi-language group to which the landing page will be attached.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_language", + "type": "string", + "required": false, + "description": "Specifies the primary language of the multi-language group to which the landing page will be attached.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/multi-language/attach-to-lang-group_attachToLangGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.AttachLandingPageToLanguageGroup", + "parameters": { + "designated_language_to_add": { + "value": "fr", + "type": "string", + "required": true + }, + "object_id_for_language_group": { + "value": "12345", + "type": "string", + "required": true + }, + "primary_language_object_id": { + "value": "67890", + "type": "string", + "required": true + }, + "primary_language": { + "value": "en", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AttachPageToLanguageGroup", + "qualifiedName": "HubspotCmsApi.AttachPageToLanguageGroup", + "fullyQualifiedName": "HubspotCmsApi.AttachPageToLanguageGroup@1.0.0", + "description": "Attach a site page to a multi-language group.\n\nUse this tool to attach a specific site page to an existing multi-language group, enabling multi-language support for that page.", + "parameters": [ + { + "name": "object_id_to_add_to_language_group", + "type": "string", + "required": true, + "description": "ID of the site page object to add to a multi-language group.", + "enum": null, + "inferrable": true + }, + { + "name": "page_language", + "type": "string", + "required": true, + "description": "Designated language code (e.g., 'en', 'fr') of the page to add to a multi-language group.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_language_object_id", + "type": "string", + "required": true, + "description": "ID of the primary language object in the multi-language group to which the page will be attached.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_language_of_group", + "type": "string", + "required": false, + "description": "Specify the primary language for the multi-language group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/multi-language/attach-to-lang-group_attachToLangGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.AttachPageToLanguageGroup", + "parameters": { + "object_id_to_add_to_language_group": { + "value": "12345", + "type": "string", + "required": true + }, + "page_language": { + "value": "fr", + "type": "string", + "required": true + }, + "primary_language_object_id": { + "value": "54321", + "type": "string", + "required": true + }, + "primary_language_of_group": { + "value": "en", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AttachTagToLanguageGroup", + "qualifiedName": "HubspotCmsApi.AttachTagToLanguageGroup", + "fullyQualifiedName": "HubspotCmsApi.AttachTagToLanguageGroup@1.0.0", + "description": "Attach a blog tag to a multi-language group.\n\nUse this tool to connect a specific blog tag to a designated multi-language group within HubSpot CMS. This is useful for managing tags across different language versions of a blog.", + "parameters": [ + { + "name": "designated_language", + "type": "string", + "required": true, + "description": "Specify the language of the blog tag to add to a multi-language group. Use a language code like 'en' for English.", + "enum": null, + "inferrable": true + }, + { + "name": "object_id_for_multilanguage_group", + "type": "string", + "required": true, + "description": "ID of the blog tag to add to the multi-language group.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_language_object_id", + "type": "string", + "required": true, + "description": "ID of the primary language object in the multi-language group.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_language", + "type": "string", + "required": false, + "description": "Specifies the primary language of the multi-language group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/tags/multi-language/attach-to-lang-group_attachToLangGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.AttachTagToLanguageGroup", + "parameters": { + "designated_language": { + "value": "es", + "type": "string", + "required": true + }, + "object_id_for_multilanguage_group": { + "value": "12345", + "type": "string", + "required": true + }, + "primary_language_object_id": { + "value": "67890", + "type": "string", + "required": true + }, + "primary_language": { + "value": "en", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BatchUpdateTableRowsHubspot", + "qualifiedName": "HubspotCmsApi.BatchUpdateTableRowsHubspot", + "fullyQualifiedName": "HubspotCmsApi.BatchUpdateTableRowsHubspot@1.0.0", + "description": "Update multiple draft table rows in HubSpot CMS.\n\n This tool updates up to 100 rows in the draft version of a specified HubSpot CMS table. Use it when you need to apply changes to several rows at once in a draft table.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the table to update rows in the draft version. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/rows/draft/batch/update_updateDraftTableRows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.BatchUpdateTableRowsHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "table_id_or_name": { + "value": "draft_table_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"rows\":[{\"id\":\"row_1\",\"data\":{\"column_1\":\"value_1\",\"column_2\":\"value_2\"}},{\"id\":\"row_2\",\"data\":{\"column_1\":\"value_3\",\"column_2\":\"value_4\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckExtractionStatus", + "qualifiedName": "HubspotCmsApi.CheckExtractionStatus", + "fullyQualifiedName": "HubspotCmsApi.CheckExtractionStatus@1.0.0", + "description": "Retrieve the current status of a source-code extraction task.\n\nUse this tool to check the status of a specific source-code extraction by providing the `taskId`. It's useful for tracking the progress of an extraction after initiating it with the `extract/async` request.", + "parameters": [ + { + "name": "extraction_task_id", + "type": "integer", + "required": true, + "description": "The unique ID of the extraction task, obtained from the initial `extract/async` request. This ID is required to check the status of the extraction.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/source-code/extract/async/tasks/{taskId}/status_getAsyncStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CheckExtractionStatus", + "parameters": { + "extraction_task_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CloneBlogPost", + "qualifiedName": "HubspotCmsApi.CloneBlogPost", + "fullyQualifiedName": "HubspotCmsApi.CloneBlogPost@1.0.0", + "description": "Creates a copy of an existing blog post.\n\nThis tool clones an existing blog post, creating a new copy with the same content. It should be used when you want to duplicate a post for editing or reuse.", + "parameters": [ + { + "name": "blog_post_id", + "type": "string", + "required": true, + "description": "ID of the blog post to be cloned. This identifies the specific blog post you want to duplicate.", + "enum": null, + "inferrable": true + }, + { + "name": "cloned_blog_post_name", + "type": "string", + "required": false, + "description": "The name for the newly cloned blog post. This is how the cloned post will be titled or identified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/clone_clone'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CloneBlogPost", + "parameters": { + "blog_post_id": { + "value": "12345", + "type": "string", + "required": true + }, + "cloned_blog_post_name": { + "value": "My Cloned Blog Post", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CloneDraftTableRowsHubspot", + "qualifiedName": "HubspotCmsApi.CloneDraftTableRowsHubspot", + "fullyQualifiedName": "HubspotCmsApi.CloneDraftTableRowsHubspot@1.0.0", + "description": "Clone rows in a draft HubDB table by row IDs.\n\n Use this tool to clone specific rows in the draft version of a HubDB table by providing up to 100 row IDs. Useful for duplicating data entries during content management in HubSpot's CMS.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "hubdb_table_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the HubDB table to clone rows from. Specify either the unique table ID or its name. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/rows/draft/batch/clone_cloneDraftTableRows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CloneDraftTableRowsHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "hubdb_table_id_or_name": { + "value": "my_hubdb_table", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"row_ids\":[\"12345\",\"67890\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CloneHubdbDraftRow", + "qualifiedName": "HubspotCmsApi.CloneHubdbDraftRow", + "fullyQualifiedName": "HubspotCmsApi.CloneHubdbDraftRow@1.0.0", + "description": "Clone a single row in a HubDB draft table.\n\nUse this tool to clone a specific row in the draft version of a HubDB table within HubSpot CMS. This is helpful for duplicating draft content before finalizing changes.", + "parameters": [ + { + "name": "row_id_to_clone", + "type": "string", + "required": true, + "description": "The ID of the row to be cloned in the draft table.", + "enum": null, + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the table to be cloned.", + "enum": null, + "inferrable": true + }, + { + "name": "new_row_name", + "type": "string", + "required": false, + "description": "The name for the cloned row. Specify a new name if required.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/rows/{rowId}/draft/clone_cloneDraftTableRow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CloneHubdbDraftRow", + "parameters": { + "row_id_to_clone": { + "value": "123456", + "type": "string", + "required": true + }, + "table_id_or_name": { + "value": "my_hubdb_table", + "type": "string", + "required": true + }, + "new_row_name": { + "value": "Cloned Row Name", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CloneHubdbTable", + "qualifiedName": "HubspotCmsApi.CloneHubdbTable", + "fullyQualifiedName": "HubspotCmsApi.CloneHubdbTable@1.0.0", + "description": "Clone an existing HubDB table as a draft.\n\nUse this tool to create a draft clone of an existing HubDB table. The new table's name and label can be specified.", + "parameters": [ + { + "name": "copy_rows", + "type": "boolean", + "required": true, + "description": "Boolean indicating whether to copy the rows during the cloning process.", + "enum": null, + "inferrable": true + }, + { + "name": "is_hubspot_defined", + "type": "boolean", + "required": true, + "description": "Indicate if the table is defined by HubSpot. This is a boolean value where true means the table is HubSpot-defined.", + "enum": null, + "inferrable": true + }, + { + "name": "source_table_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the HubDB table to clone.", + "enum": null, + "inferrable": true + }, + { + "name": "new_table_label", + "type": "string", + "required": false, + "description": "The label for the new cloned table. Specify a descriptive label for identification.", + "enum": null, + "inferrable": true + }, + { + "name": "new_table_name", + "type": "string", + "required": false, + "description": "The desired new name for the cloned HubDB table draft.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/draft/clone_cloneDraftTable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CloneHubdbTable", + "parameters": { + "copy_rows": { + "value": true, + "type": "boolean", + "required": true + }, + "is_hubspot_defined": { + "value": false, + "type": "boolean", + "required": true + }, + "source_table_id_or_name": { + "value": "123456", + "type": "string", + "required": true + }, + "new_table_label": { + "value": "Draft Clone of Existing Table", + "type": "string", + "required": false + }, + "new_table_name": { + "value": "Cloned_Table_123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CloneLandingPageHubspot", + "qualifiedName": "HubspotCmsApi.CloneLandingPageHubspot", + "fullyQualifiedName": "HubspotCmsApi.CloneLandingPageHubspot@1.0.0", + "description": "Clone a landing page in HubSpot CMS.\n\nThis tool duplicates an existing landing page within HubSpot's CMS. It should be used when you need an exact replica of a landing page for further customization or testing.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "ID of the landing page to be cloned. Required for identifying the source page.", + "enum": null, + "inferrable": true + }, + { + "name": "cloned_landing_page_name", + "type": "string", + "required": false, + "description": "The name to assign to the newly cloned landing page in HubSpot CMS.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/clone_clone'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CloneLandingPageHubspot", + "parameters": { + "landing_page_id": { + "value": "12345", + "type": "string", + "required": true + }, + "cloned_landing_page_name": { + "value": "Clone of Landing Page 12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CloneSitePage", + "qualifiedName": "HubspotCmsApi.CloneSitePage", + "fullyQualifiedName": "HubspotCmsApi.CloneSitePage@1.0.0", + "description": "Clone an existing site page in HubSpot CMS.\n\nThis tool is used to clone an existing site page within the HubSpot CMS. It is useful when duplicating pages for updates or creating similar content quickly.", + "parameters": [ + { + "name": "object_id_to_clone", + "type": "string", + "required": true, + "description": "ID of the site page to be cloned in HubSpot CMS.", + "enum": null, + "inferrable": true + }, + { + "name": "clone_name", + "type": "string", + "required": false, + "description": "The desired name for the cloned site page object.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/clone_clone'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CloneSitePage", + "parameters": { + "object_id_to_clone": { + "value": "123456", + "type": "string", + "required": true + }, + "clone_name": { + "value": "Cloned Page - Fall Promotion", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAbTestVariation", + "qualifiedName": "HubspotCmsApi.CreateAbTestVariation", + "fullyQualifiedName": "HubspotCmsApi.CreateAbTestVariation@1.0.0", + "description": "Create a new A/B test variation in HubSpot CMS.\n\nThis tool allows you to create a new A/B test variation for a landing page using HubSpot CMS. It should be called when you need to perform A/B testing by generating different page variations to assess their performance.", + "parameters": [ + { + "name": "ab_test_variation_name", + "type": "string", + "required": true, + "description": "The name of the A/B test variation to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "object_test_id", + "type": "string", + "required": true, + "description": "The ID of the object to be tested in the A/B test variation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/ab-test/create-variation_createABTestVariation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateAbTestVariation", + "parameters": { + "ab_test_variation_name": { + "value": "Landing Page Variant A", + "type": "string", + "required": true + }, + "object_test_id": { + "value": "12345-abtest", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAttentionSpanEvent", + "qualifiedName": "HubspotCmsApi.CreateAttentionSpanEvent", + "fullyQualifiedName": "HubspotCmsApi.CreateAttentionSpanEvent@1.0.0", + "description": "Log viewer's attention span details for media events.\n\nThis tool creates an event recording viewer attention span details for media, which helps in tracking engagement and interaction levels.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["media_bridge.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/media-bridge/v1/events/attention-span'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateAttentionSpanEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"viewerId\": \"12345\", \"mediaId\": \"abcde\", \"attentionSpan\": 35, \"eventTimestamp\": \"2023-10-01T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchBlogPosts", + "qualifiedName": "HubspotCmsApi.CreateBatchBlogPosts", + "fullyQualifiedName": "HubspotCmsApi.CreateBatchBlogPosts@1.0.0", + "description": "Create multiple blog posts in a single request.\n\nThis tool is used to create a batch of blog posts by specifying their content in the request body. It should be called when you need to publish multiple blog posts at once.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateBatchBlogPosts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"blog_posts\":[{\"title\":\"First Blog Post\",\"content\":\"This is the content for the first blog post.\",\"status\":\"published\"},{\"title\":\"Second Blog Post\",\"content\":\"This is the content for the second blog post.\",\"status\":\"draft\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBlogAuthor", + "qualifiedName": "HubspotCmsApi.CreateBlogAuthor", + "fullyQualifiedName": "HubspotCmsApi.CreateBlogAuthor@1.0.0", + "description": "Create a new Blog Author in HubSpot CMS.\n\nUse this tool to create a new blog author within the HubSpot CMS. It should be called when you need to add an author to your blog system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/authors_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateBlogAuthor", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"John Doe\", \"email\": \"john.doe@example.com\", \"bio\": \"Tech enthusiast and blogger\", \"social_links\": {\"twitter\": \"https://twitter.com/johndoe\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBlogAuthorLanguageVariation", + "qualifiedName": "HubspotCmsApi.CreateBlogAuthorLanguageVariation", + "fullyQualifiedName": "HubspotCmsApi.CreateBlogAuthorLanguageVariation@1.0.0", + "description": "Create a language variation for a blog author.\n\nThis tool creates a new language variation from an existing blog author in HubSpot CMS, allowing for multilingual content management.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/authors/multi-language/create-language-variation_createLangVariation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateBlogAuthorLanguageVariation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"author_id\": 12345, \"language\": \"fr\", \"content\": \"Texte d'exemple pour un auteur de blog.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBlogAuthorsBatch", + "qualifiedName": "HubspotCmsApi.CreateBlogAuthorsBatch", + "fullyQualifiedName": "HubspotCmsApi.CreateBlogAuthorsBatch@1.0.0", + "description": "Create multiple blog authors in a single batch request.\n\nThis tool creates multiple Blog Author objects based on the provided request details. It's useful for adding several blog authors at once to the HubSpot CMS.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/authors/batch/create_createBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateBlogAuthorsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"authors\":[{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"bio\":\"Tech blogger and enthusiast.\"},{\"name\":\"Jane Smith\",\"email\":\"jane.smith@example.com\",\"bio\":\"Lifestyle blogger and content creator.\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBlogLanguageVariation", + "qualifiedName": "HubspotCmsApi.CreateBlogLanguageVariation", + "fullyQualifiedName": "HubspotCmsApi.CreateBlogLanguageVariation@1.0.0", + "description": "Create a language variation for a blog in HubSpot CMS.\n\nThis tool allows you to create a new language variation for an existing blog using HubSpot CMS's multi-language settings. Use it when you need to support multiple languages for a blog.", + "parameters": [ + { + "name": "blog_id", + "type": "string", + "required": true, + "description": "ID of the blog to clone for creating a language variation.", + "enum": null, + "inferrable": true + }, + { + "name": "blog_slug", + "type": "string", + "required": false, + "description": "Path to the blog. Used to specify the location of the language variation within the CMS.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_language", + "type": "string", + "required": false, + "description": "Specify the language of the primary blog to clone. This determines the source content for the new language variation.", + "enum": null, + "inferrable": true + }, + { + "name": "target_language_for_blog_variant", + "type": "string", + "required": false, + "description": "The language code for the new blog variant, specifying the target language for translation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blog-settings/settings/multi-language/create-language-variation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateBlogLanguageVariation", + "parameters": { + "blog_id": { + "value": "12345", + "type": "string", + "required": true + }, + "blog_slug": { + "value": "mi-blog", + "type": "string", + "required": false + }, + "primary_language": { + "value": "en", + "type": "string", + "required": false + }, + "target_language_for_blog_variant": { + "value": "es", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBlogPost", + "qualifiedName": "HubspotCmsApi.CreateBlogPost", + "fullyQualifiedName": "HubspotCmsApi.CreateBlogPost@1.0.0", + "description": "Create a new blog post with specified content.\n\nUse this tool to create a new blog post by specifying its content in the request. Ideal for automating blog publishing processes.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateBlogPost", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\":\"The Future of AI\",\"content\":\"Artificial Intelligence is constantly evolving...\",\"tags\":[\"AI\",\"Technology\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBlogTag", + "qualifiedName": "HubspotCmsApi.CreateBlogTag", + "fullyQualifiedName": "HubspotCmsApi.CreateBlogTag@1.0.0", + "description": "Create a new blog tag in HubSpot CMS.\n\nThis tool creates a new tag for a blog in the HubSpot CMS. It should be called when there's a need to categorize or organize content within the blog by creating new tags.", + "parameters": [ + { + "name": "blog_tag_unique_id", + "type": "string", + "required": true, + "description": "The unique ID assigned to the Blog Tag.", + "enum": null, + "inferrable": true + }, + { + "name": "creation_timestamp", + "type": "string", + "required": true, + "description": "The timestamp (ISO8601 format) when this Blog Tag was created. Leave empty if not applicable.", + "enum": null, + "inferrable": true + }, + { + "name": "deletion_timestamp", + "type": "string", + "required": true, + "description": "The ISO8601 timestamp marking when the blog tag was deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "language_code", + "type": "string", + "required": true, + "description": "The explicit ISO 639 language code for the tag, such as 'en' for English or 'es' for Spanish.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_tag_translation_id", + "type": "integer", + "required": true, + "description": "Specify the ID of the primary tag that this tag was translated from.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_name", + "type": "string", + "required": true, + "description": "The name for the new blog tag to be created in HubSpot CMS.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_timestamp", + "type": "string", + "required": true, + "description": "The timestamp (ISO8601 format) when the Blog Tag was last updated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/tags_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateBlogTag", + "parameters": { + "blog_tag_unique_id": { + "value": "tag-12345", + "type": "string", + "required": true + }, + "creation_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": true + }, + "deletion_timestamp": { + "value": "2023-10-31T12:00:00Z", + "type": "string", + "required": true + }, + "language_code": { + "value": "en", + "type": "string", + "required": true + }, + "primary_tag_translation_id": { + "value": 987, + "type": "integer", + "required": true + }, + "tag_name": { + "value": "New Features", + "type": "string", + "required": true + }, + "updated_timestamp": { + "value": "2023-10-15T12:00:00Z", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBlogTagLanguageVariation", + "qualifiedName": "HubspotCmsApi.CreateBlogTagLanguageVariation", + "fullyQualifiedName": "HubspotCmsApi.CreateBlogTagLanguageVariation@1.0.0", + "description": "Create a new language variation from an existing blog tag.\n\nUse this tool to create a language variation for an existing blog tag on HubSpot CMS. Call this tool when you need to support multiple languages for blog tags.", + "parameters": [ + { + "name": "blog_tag_id", + "type": "string", + "required": true, + "description": "ID of the existing blog tag to be cloned for creating a language variation.", + "enum": null, + "inferrable": true + }, + { + "name": "new_blog_tag_name", + "type": "string", + "required": true, + "description": "The name for the newly cloned blog tag language variation.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_blog_tag_language", + "type": "string", + "required": false, + "description": "Specify the language code of the primary blog tag to be cloned, such as 'en', 'fr', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "target_language_for_blog_tag_variation", + "type": "string", + "required": false, + "description": "Specifies the target language for the new blog tag variant.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/tags/multi-language/create-language-variation_createLangVariation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateBlogTagLanguageVariation", + "parameters": { + "blog_tag_id": { + "value": "12345", + "type": "string", + "required": true + }, + "new_blog_tag_name": { + "value": "Travel Tips - Español", + "type": "string", + "required": true + }, + "primary_blog_tag_language": { + "value": "en", + "type": "string", + "required": false + }, + "target_language_for_blog_tag_variation": { + "value": "es", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBlogTagsBatch", + "qualifiedName": "HubspotCmsApi.CreateBlogTagsBatch", + "fullyQualifiedName": "HubspotCmsApi.CreateBlogTagsBatch@1.0.0", + "description": "Create multiple blog tags in a single request.\n\nThis tool is used to create multiple blog tag objects as specified in the request body. Call this tool when you need to add several blog tags at once to a HubSpot CMS blog.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/tags/batch/create_createBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateBlogTagsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"tags\":[{\"name\":\"Travel\"},{\"name\":\"Food\"},{\"name\":\"Technology\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateDraftTableRows", + "qualifiedName": "HubspotCmsApi.CreateDraftTableRows", + "fullyQualifiedName": "HubspotCmsApi.CreateDraftTableRows@1.0.0", + "description": "Create draft rows in a specified HubSpot table.\n\n This tool is used to add multiple rows to the draft version of a specified HubSpot CMS table. It allows for up to 100 rows to be created in one call. Useful for updating content drafts before publication.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the HubSpot table to which the draft rows are being added. This is required to specify which table you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/rows/draft/batch/create_createDraftTableRows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateDraftTableRows", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "table_id_or_name": { + "value": "blog_post_table", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"rows\":[{\"title\":\"New Blog Post 1\",\"content\":\"Content for the first blog post.\"},{\"title\":\"New Blog Post 2\",\"content\":\"Content for the second blog post.\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubdbTable", + "qualifiedName": "HubspotCmsApi.CreateHubdbTable", + "fullyQualifiedName": "HubspotCmsApi.CreateHubdbTable@1.0.0", + "description": "Create a new draft HubDB table with a unique name and label.\n\nThis tool creates a new draft HubDB table using a provided JSON schema. It requires that the table name and label be unique within each account.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables_createTable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateHubdbTable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"unique_hubdb_table_name\",\"label\":\"Unique HubDB Table Label\",\"columns\":[{\"name\":\"column1\",\"type\":\"single_line_text\"},{\"name\":\"column2\",\"type\":\"number\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateLandingPage", + "qualifiedName": "HubspotCmsApi.CreateLandingPage", + "fullyQualifiedName": "HubspotCmsApi.CreateLandingPage@1.0.0", + "description": "Create a new landing page in HubSpot.\n\nUse this tool to create a new landing page on HubSpot. Suitable for automating marketing or content management tasks.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateLandingPage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\":\"Spring Sale Landing Page\",\"content\":\"Welcome to our Spring Sale! Enjoy exclusive discounts on our new collection.\",\"url\":\"/spring-sale\",\"template_id\":\"12345\",\"meta\":{\"description\":\"Spring Sale Landing Page for promotions.\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateLandingPageFolder", + "qualifiedName": "HubspotCmsApi.CreateLandingPageFolder", + "fullyQualifiedName": "HubspotCmsApi.CreateLandingPageFolder@1.0.0", + "description": "Create a new folder in HubSpot CMS for landing pages.\n\nThis tool is used to create a new folder within the landing pages section of HubSpot CMS. Call this tool when you need to organize landing pages into a new folder structure.", + "parameters": [ + { + "name": "deletion_timestamp", + "type": "string", + "required": true, + "description": "The ISO8601 timestamp indicating when the folder was deleted. Leave this empty if the folder is active.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_category", + "type": "integer", + "required": true, + "description": "The type of object this folder applies to. Must be set to LANDING_PAGE.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_creation_date", + "type": "string", + "required": true, + "description": "The ISO8601 timestamp when this folder was created.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_name", + "type": "string", + "required": true, + "description": "The name of the folder to display in the app dashboard.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the content folder. This is a string that serves as the primary key for the folder.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_folder_id", + "type": "integer", + "required": true, + "description": "The ID of the parent content folder under which the new folder will be nested.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_timestamp", + "type": "string", + "required": true, + "description": "The timestamp in ISO8601 format indicating when the folder was last updated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/folders_createFolder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateLandingPageFolder", + "parameters": { + "deletion_timestamp": { + "value": "", + "type": "string", + "required": true + }, + "folder_category": { + "value": 1, + "type": "integer", + "required": true + }, + "folder_creation_date": { + "value": "2023-10-04T12:00:00Z", + "type": "string", + "required": true + }, + "folder_name": { + "value": "Spring Campaigns", + "type": "string", + "required": true + }, + "folder_unique_id": { + "value": "folder_12345", + "type": "string", + "required": true + }, + "parent_folder_id": { + "value": 0, + "type": "integer", + "required": true + }, + "updated_timestamp": { + "value": "2023-10-04T12:00:00Z", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateLandingPageFolders", + "qualifiedName": "HubspotCmsApi.CreateLandingPageFolders", + "fullyQualifiedName": "HubspotCmsApi.CreateLandingPageFolders@1.0.0", + "description": "Create multiple landing page folders in HubSpot CMS.\n\nUse this tool to create multiple folder objects for landing pages in HubSpot CMS as specified in the request details.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/folders/batch/create_createFolders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateLandingPageFolders", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"folders\":[{\"name\":\"Marketing\",\"description\":\"Folder for all marketing related landing pages\"},{\"name\":\"Product Launch\",\"description\":\"Folder for product launch campaigns\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateLandingPages", + "qualifiedName": "HubspotCmsApi.CreateLandingPages", + "fullyQualifiedName": "HubspotCmsApi.CreateLandingPages@1.0.0", + "description": "Create multiple landing pages in HubSpot CMS.\n\nUse this tool to create a batch of new landing pages in HubSpot CMS by providing the necessary details in the request body.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/batch/create_createBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateLandingPages", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{ \"landingPages\": [{ \"name\": \"Landing Page 1\", \"slug\": \"landing-page-1\", \"content\": \"Welcome to our landing page!\" }, { \"name\": \"Landing Page 2\", \"slug\": \"landing-page-2\", \"content\": \"Discover our offers here!\" }] }", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateLanguageVariation", + "qualifiedName": "HubspotCmsApi.CreateLanguageVariation", + "fullyQualifiedName": "HubspotCmsApi.CreateLanguageVariation@1.0.0", + "description": "Create a new language variation for a site page.\n\nUse this tool to create a new language variation from an existing site page in HubSpot CMS. It helps in managing multilingual content efficiently by generating a language-specific page version.", + "parameters": [ + { + "name": "content_id_to_clone", + "type": "string", + "required": true, + "description": "ID of the site page content to clone for creating a language variation.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_content_language", + "type": "string", + "required": false, + "description": "Specify the language of the primary content to clone for creating the variation.", + "enum": null, + "inferrable": true + }, + { + "name": "target_language", + "type": "string", + "required": false, + "description": "Target language code for the new site page variant, e.g., 'fr' for French.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/multi-language/create-language-variation_createLangVariation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateLanguageVariation", + "parameters": { + "content_id_to_clone": { + "value": "123456", + "type": "string", + "required": true + }, + "primary_content_language": { + "value": "en", + "type": "string", + "required": false + }, + "target_language": { + "value": "fr", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMediaPlayedEvent", + "qualifiedName": "HubspotCmsApi.CreateMediaPlayedEvent", + "fullyQualifiedName": "HubspotCmsApi.CreateMediaPlayedEvent@1.0.0", + "description": "Log an event when media playback starts.\n\nCall this tool when you need to create an event for when a user begins playing a piece of media. It helps track media interactions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["media_bridge.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/media-bridge/v1/events/media-played'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateMediaPlayedEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"user_id\":\"12345\",\"media_id\":\"media_6789\",\"timestamp\":\"2023-10-01T12:34:56Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMultilanguageLandingPage", + "qualifiedName": "HubspotCmsApi.CreateMultilanguageLandingPage", + "fullyQualifiedName": "HubspotCmsApi.CreateMultilanguageLandingPage@1.0.0", + "description": "Create a new language variation for a landing page.\n\nThis tool creates a new language variation from an existing landing page in HubSpot CMS. Use it to generate multilingual versions of your landing pages.", + "parameters": [ + { + "name": "content_id_to_clone", + "type": "string", + "required": true, + "description": "The ID of the landing page content to be cloned for creating a new language variation.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_language_of_content", + "type": "string", + "required": false, + "description": "Language code of the primary content to be cloned for creating the new language variation.", + "enum": null, + "inferrable": true + }, + { + "name": "target_language", + "type": "string", + "required": false, + "description": "Specify the target language for the new landing page variant.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/multi-language/create-language-variation_createLangVariation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateMultilanguageLandingPage", + "parameters": { + "content_id_to_clone": { + "value": "12345", + "type": "string", + "required": true + }, + "primary_language_of_content": { + "value": "en", + "type": "string", + "required": false + }, + "target_language": { + "value": "fr", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSitePage", + "qualifiedName": "HubspotCmsApi.CreateSitePage", + "fullyQualifiedName": "HubspotCmsApi.CreateSitePage@1.0.0", + "description": "Create a new site page in HubSpot CMS.\n\nThis tool is used to create a new site page in HubSpot CMS. It should be called when a user wants to add a new page to their website using the HubSpot platform.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateSitePage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\": \"New Page Title\", \"slug\": \"new-page-title\", \"template\": \"page-template\", \"content\": \"

This is the content of the new page.

\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSitePagesBatch", + "qualifiedName": "HubspotCmsApi.CreateSitePagesBatch", + "fullyQualifiedName": "HubspotCmsApi.CreateSitePagesBatch@1.0.0", + "description": "Create multiple site page objects in batch.\n\nUse this tool to create multiple site page objects at once based on the details provided in the request body.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/batch/create_createBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateSitePagesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"pages\":[{\"title\":\"Homepage\",\"slug\":\"homepage\",\"template\":\"default\"},{\"title\":\"About Us\",\"slug\":\"about-us\",\"template\":\"default\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateUrlRedirect", + "qualifiedName": "HubspotCmsApi.CreateUrlRedirect", + "fullyQualifiedName": "HubspotCmsApi.CreateUrlRedirect@1.0.0", + "description": "Creates and configures a new URL redirect in HubSpot CMS.\n\nUse this tool to create and set up a new URL redirect within the HubSpot CMS. Ideal for managing website redirects effectively.", + "parameters": [ + { + "name": "redirect_destination_url", + "type": "string", + "required": true, + "description": "The target URL to which the redirect will point. This should be a valid and complete URL.", + "enum": null, + "inferrable": true + }, + { + "name": "redirect_style", + "type": "integer", + "required": true, + "description": "Integer indicating the style of the redirect. Defines the behavior and type of the redirect, such as permanent (301) or temporary (302).", + "enum": null, + "inferrable": true + }, + { + "name": "route_prefix", + "type": "string", + "required": true, + "description": "Defines the prefix for the URL route to be redirected. Provide the specific path without the domain, e.g., '/example-path'.", + "enum": null, + "inferrable": true + }, + { + "name": "apply_only_after_not_found", + "type": "boolean", + "required": false, + "description": "Applies the redirect only after a 404 Not Found response if true.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_pattern_matching", + "type": "boolean", + "required": false, + "description": "Set to true to enable URL pattern matching for the redirect. False matches exact URLs only.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_protocol_agnostic", + "type": "boolean", + "required": false, + "description": "Set to true to ignore the protocol (HTTP/HTTPS) when matching URLs. Enables protocol-agnostic redirects.", + "enum": null, + "inferrable": true + }, + { + "name": "ignore_trailing_slash", + "type": "boolean", + "required": false, + "description": "Set to true to ignore trailing slashes, allowing flexibility in URL matches.", + "enum": null, + "inferrable": true + }, + { + "name": "match_full_url", + "type": "boolean", + "required": false, + "description": "Set to true to match the entire URL exactly. False applies partial matching.", + "enum": null, + "inferrable": true + }, + { + "name": "match_query_string", + "type": "boolean", + "required": false, + "description": "Indicates whether the redirect should match the query string. Set to true to match, false to ignore.", + "enum": null, + "inferrable": true + }, + { + "name": "redirect_precedence", + "type": "integer", + "required": false, + "description": "An integer indicating the priority of the redirect if multiple rules match. Higher numbers take precedence.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/url-redirects/_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.CreateUrlRedirect", + "parameters": { + "redirect_destination_url": { + "value": "https://www.example.com/new-url", + "type": "string", + "required": true + }, + "redirect_style": { + "value": 301, + "type": "integer", + "required": true + }, + "route_prefix": { + "value": "/old-url", + "type": "string", + "required": true + }, + "apply_only_after_not_found": { + "value": false, + "type": "boolean", + "required": false + }, + "enable_pattern_matching": { + "value": true, + "type": "boolean", + "required": false + }, + "enable_protocol_agnostic": { + "value": false, + "type": "boolean", + "required": false + }, + "ignore_trailing_slash": { + "value": true, + "type": "boolean", + "required": false + }, + "match_full_url": { + "value": false, + "type": "boolean", + "required": false + }, + "match_query_string": { + "value": true, + "type": "boolean", + "required": false + }, + "redirect_precedence": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBlogAuthor", + "qualifiedName": "HubspotCmsApi.DeleteBlogAuthor", + "fullyQualifiedName": "HubspotCmsApi.DeleteBlogAuthor@1.0.0", + "description": "Delete a specific blog author by ID.\n\nUse this tool to delete a blog author from the HubSpot CMS by providing their ID. It should be called when you need to remove an author from the system.", + "parameters": [ + { + "name": "blog_author_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Blog Author to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived blog authors. Use for fetching deleted or inactive authors.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/cms/v3/blogs/authors/{objectId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DeleteBlogAuthor", + "parameters": { + "blog_author_id": { + "value": "12345", + "type": "string", + "required": true + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBlogAuthors", + "qualifiedName": "HubspotCmsApi.DeleteBlogAuthors", + "fullyQualifiedName": "HubspotCmsApi.DeleteBlogAuthors@1.0.0", + "description": "Delete specified blog authors in HubSpot CMS.\n\nUse this tool to delete the Blog Author objects identified in the request body from HubSpot CMS.", + "parameters": [ + { + "name": "blog_author_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of blog author IDs to delete from HubSpot CMS.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/authors/batch/archive_archiveBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DeleteBlogAuthors", + "parameters": { + "blog_author_ids": { + "value": ["12345", "67890", "54321"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBlogPost", + "qualifiedName": "HubspotCmsApi.DeleteBlogPost", + "fullyQualifiedName": "HubspotCmsApi.DeleteBlogPost@1.0.0", + "description": "Delete a blog post by its unique ID.\n\nUse this tool to delete a blog post using its ID. Note that this action permanently removes the post, unlike the in-app archive function. For dashboard archiving, use an update with `archivedInDashboard` set to `true`.", + "parameters": [ + { + "name": "blog_post_ids_to_delete", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of blog post IDs to delete. Each ID should be a string representing a unique blog post.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DeleteBlogPost", + "parameters": { + "blog_post_ids_to_delete": { + "value": ["12345", "67890", "abcde"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBlogTag", + "qualifiedName": "HubspotCmsApi.DeleteBlogTag", + "fullyQualifiedName": "HubspotCmsApi.DeleteBlogTag@1.0.0", + "description": "Delete a specified Blog Tag in HubSpot CMS.\n\nUse this tool to delete a specific Blog Tag in the HubSpot CMS by providing the object's ID. This is useful for managing and organizing blog content within the CMS.", + "parameters": [ + { + "name": "blog_tag_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Blog Tag to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only blog tags that have been archived.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/cms/v3/blogs/tags/{objectId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DeleteBlogTag", + "parameters": { + "blog_tag_id": { + "value": "12345", + "type": "string", + "required": true + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCmsSitePages", + "qualifiedName": "HubspotCmsApi.DeleteCmsSitePages", + "fullyQualifiedName": "HubspotCmsApi.DeleteCmsSitePages@1.0.0", + "description": "Delete specified Site Page objects in the CMS.\n\nThis tool deletes the Site Page objects specified in the request body on the HubSpot CMS. It is used when you need to remove multiple site pages at once. This operation is different from archiving in the dashboard.", + "parameters": [ + { + "name": "page_ids_to_delete", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of strings representing the IDs of the Site Page objects to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/batch/archive_archiveBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DeleteCmsSitePages", + "parameters": { + "page_ids_to_delete": { + "value": ["12345", "67890", "abcdef"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteDraftTableRowHubspot", + "qualifiedName": "HubspotCmsApi.DeleteDraftTableRowHubspot", + "fullyQualifiedName": "HubspotCmsApi.DeleteDraftTableRowHubspot@1.0.0", + "description": "Permanently delete a row from a HubDB draft table.\n\nUse this tool to permanently delete a specified row from the draft version of a HubDB table in HubSpot CMS. Call this tool when you need to remove a row that is no longer needed in the draft.", + "parameters": [ + { + "name": "row_id", + "type": "string", + "required": true, + "description": "The unique ID of the row to be permanently deleted from the draft version of the HubDB table.", + "enum": null, + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the HubDB table from which the draft row will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/cms/v3/hubdb/tables/{tableIdOrName}/rows/{rowId}/draft_purgeDraftTableRow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DeleteDraftTableRowHubspot", + "parameters": { + "row_id": { + "value": "12345", + "type": "string", + "required": true + }, + "table_id_or_name": { + "value": "blog_posts", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteFileInCmsEnvironment", + "qualifiedName": "HubspotCmsApi.DeleteFileInCmsEnvironment", + "fullyQualifiedName": "HubspotCmsApi.DeleteFileInCmsEnvironment@1.0.0", + "description": "Deletes a file in a specified CMS environment.\n\nUse this tool to delete a file located at a specific path within a designated CMS environment. It's useful for managing and organizing source code by removing unnecessary or outdated files.", + "parameters": [ + { + "name": "file_environment", + "type": "string", + "required": true, + "description": "Specify the environment of the file to delete. Valid values are \"draft\" or \"published\".", + "enum": null, + "inferrable": true + }, + { + "name": "file_system_location", + "type": "string", + "required": true, + "description": "The file system location of the file to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/cms/v3/source-code/{environment}/content/{path}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DeleteFileInCmsEnvironment", + "parameters": { + "file_environment": { + "value": "published", + "type": "string", + "required": true + }, + "file_system_location": { + "value": "/assets/images/old_logo.png", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteLandingPage", + "qualifiedName": "HubspotCmsApi.DeleteLandingPage", + "fullyQualifiedName": "HubspotCmsApi.DeleteLandingPage@1.0.0", + "description": "Delete a specified landing page by its ID.\n\nUse this tool to delete a landing page in HubSpot CMS by providing the landing page's ID.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The unique identifier of the landing page to delete in HubSpot CMS.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_results_only", + "type": "boolean", + "required": false, + "description": "Set to true to only return results that have been archived.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/cms/v3/pages/landing-pages/{objectId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DeleteLandingPage", + "parameters": { + "landing_page_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "return_archived_results_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteLandingPageFolder", + "qualifiedName": "HubspotCmsApi.DeleteLandingPageFolder", + "fullyQualifiedName": "HubspotCmsApi.DeleteLandingPageFolder@1.0.0", + "description": "Deletes a CMS landing page folder by ID.\n\nUse this tool to delete a specific CMS landing page folder by providing its object ID. The tool sends a DELETE request to remove the folder.", + "parameters": [ + { + "name": "folder_id", + "type": "string", + "required": true, + "description": "The ID of the folder to be deleted. Provide the specific ID of the CMS landing page folder you wish to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/cms/v3/pages/landing-pages/folders/{objectId}_archiveFolder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DeleteLandingPageFolder", + "parameters": { + "folder_id": { + "value": "12345", + "type": "string", + "required": true + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteLandingPageFolders", + "qualifiedName": "HubspotCmsApi.DeleteLandingPageFolders", + "fullyQualifiedName": "HubspotCmsApi.DeleteLandingPageFolders@1.0.0", + "description": "Delete specified landing page folders in HubSpot CMS.\n\nUse this tool to delete landing page folders in the HubSpot CMS as specified in the request. It should be called when you need to remove these folders from the CMS.", + "parameters": [ + { + "name": "folder_identifiers", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of strings representing the identifiers of the folders to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/folders/batch/archive_archiveFolders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DeleteLandingPageFolders", + "parameters": { + "folder_identifiers": { + "value": ["folder_123", "folder_456", "folder_789"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteLandingPages", + "qualifiedName": "HubspotCmsApi.DeleteLandingPages", + "fullyQualifiedName": "HubspotCmsApi.DeleteLandingPages@1.0.0", + "description": "Deletes specified HubSpot landing pages permanently.\n\nUse this tool to permanently delete landing page objects in HubSpot CMS. It's different from archiving pages via the dashboard. Ensure you provide the specific page identifiers in the request body.", + "parameters": [ + { + "name": "landing_page_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of strings representing the IDs of landing pages to delete permanently.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/batch/archive_archiveBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DeleteLandingPages", + "parameters": { + "landing_page_ids": { + "value": ["12345", "67890", "54321"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteSitePage", + "qualifiedName": "HubspotCmsApi.DeleteSitePage", + "fullyQualifiedName": "HubspotCmsApi.DeleteSitePage@1.0.0", + "description": "Delete a specified site page in HubSpot CMS.\n\nUse this tool to delete a specific site page in HubSpot CMS by providing the page's object ID. This should be called when a page needs to be archived or removed permanently.", + "parameters": [ + { + "name": "site_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the site page to be deleted in HubSpot CMS.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only the pages that have been archived.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/cms/v3/pages/site-pages/{objectId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DeleteSitePage", + "parameters": { + "site_page_id": { + "value": "12345", + "type": "string", + "required": true + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTableVersion", + "qualifiedName": "HubspotCmsApi.DeleteTableVersion", + "fullyQualifiedName": "HubspotCmsApi.DeleteTableVersion@1.0.0", + "description": "Delete a specific version of a HubDB table.\n\nThis tool deletes a specified version of a table in HubSpot CMS HubDB. It should be called when you need to remove an obsolete or incorrect version of a table. Make sure to specify the correct table and version identifiers.", + "parameters": [ + { + "name": "table_identifier", + "type": "string", + "required": true, + "description": "The unique ID or name of the HubDB table whose version you want to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "table_version_id", + "type": "integer", + "required": true, + "description": "Specify the ID of the table version to delete. This should be an integer value that identifies a specific version in HubDB.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/cms/v3/hubdb/tables/{tableIdOrName}/versions/{versionId}_removeTableVersion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DeleteTableVersion", + "parameters": { + "table_identifier": { + "value": "products_table", + "type": "string", + "required": true + }, + "table_version_id": { + "value": 42, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteUrlRedirect", + "qualifiedName": "HubspotCmsApi.DeleteUrlRedirect", + "fullyQualifiedName": "HubspotCmsApi.DeleteUrlRedirect@1.0.0", + "description": "Deletes an existing URL redirect in HubSpot CMS.\n\nUtilize this tool to delete a specific URL redirect within the HubSpot CMS system. This should be called when you need to remove a redirect mapping from the system.", + "parameters": [ + { + "name": "url_redirect_id", + "type": "string", + "required": true, + "description": "The unique identifier of the URL redirect to be deleted within the HubSpot CMS.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/cms/v3/url-redirects/{urlRedirectId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DeleteUrlRedirect", + "parameters": { + "url_redirect_id": { + "value": "redirect-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DetachBlogAuthorFromLangGroup", + "qualifiedName": "HubspotCmsApi.DetachBlogAuthorFromLangGroup", + "fullyQualifiedName": "HubspotCmsApi.DetachBlogAuthorFromLangGroup@1.0.0", + "description": "Detach a Blog Author from a multi-language group.\n\nUse this tool to remove a blog author from an existing multi-language group in HubSpot CMS. Call this when authors need to be unlinked from specific language variations.", + "parameters": [ + { + "name": "author_id_to_detach", + "type": "string", + "required": true, + "description": "ID of the blog author to remove from a multi-language group in HubSpot CMS.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/authors/multi-language/detach-from-lang-group_detachFromLangGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DetachBlogAuthorFromLangGroup", + "parameters": { + "author_id_to_detach": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DetachBlogFromLanguageGroup", + "qualifiedName": "HubspotCmsApi.DetachBlogFromLanguageGroup", + "fullyQualifiedName": "HubspotCmsApi.DetachBlogFromLanguageGroup@1.0.0", + "description": "Detach a blog from its multi-language group.\n\nUse this tool to separate a blog from its associated multi-language group settings in HubSpot CMS.", + "parameters": [ + { + "name": "object_id_to_detach", + "type": "string", + "required": true, + "description": "ID of the blog to remove from its multi-language group in HubSpot CMS.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blog-settings/settings/multi-language/detach-from-lang-group'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DetachBlogFromLanguageGroup", + "parameters": { + "object_id_to_detach": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DetachBlogPostLanguageGroup", + "qualifiedName": "HubspotCmsApi.DetachBlogPostLanguageGroup", + "fullyQualifiedName": "HubspotCmsApi.DetachBlogPostLanguageGroup@1.0.0", + "description": "Detach a blog post from a multi-language group.\n\nUse this tool to detach a specific blog post from its associated multi-language group in HubSpot CMS. Useful when you need to separately manage or remove language-specific versions of a post.", + "parameters": [ + { + "name": "object_id_to_detach_from_language_group", + "type": "string", + "required": true, + "description": "ID of the blog post to be removed from the multi-language group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/multi-language/detach-from-lang-group_detachFromLangGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DetachBlogPostLanguageGroup", + "parameters": { + "object_id_to_detach_from_language_group": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DetachBlogTagFromLanguageGroup", + "qualifiedName": "HubspotCmsApi.DetachBlogTagFromLanguageGroup", + "fullyQualifiedName": "HubspotCmsApi.DetachBlogTagFromLanguageGroup@1.0.0", + "description": "Detach a Blog Tag from a multi-language group.\n\nUse this tool to remove a blog tag from its association with a multi-language group in HubSpot CMS. This can be useful when restructuring tags or changing their multi-language settings.", + "parameters": [ + { + "name": "blog_tag_id", + "type": "string", + "required": true, + "description": "ID of the blog tag to remove from a multi-language group in HubSpot CMS.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/tags/multi-language/detach-from-lang-group_detachFromLangGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DetachBlogTagFromLanguageGroup", + "parameters": { + "blog_tag_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DetachLandingPageFromLanguageGroup", + "qualifiedName": "HubspotCmsApi.DetachLandingPageFromLanguageGroup", + "fullyQualifiedName": "HubspotCmsApi.DetachLandingPageFromLanguageGroup@1.0.0", + "description": "Detach a landing page from a multi-language group.\n\nCall this tool to detach a specific landing page from its multi-language group in HubSpot CMS. Useful for managing language-specific versions of pages individually.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The ID of the landing page to detach from the multi-language group in HubSpot CMS.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/multi-language/detach-from-lang-group_detachFromLangGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DetachLandingPageFromLanguageGroup", + "parameters": { + "landing_page_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DetachSitePageFromLanguageGroup", + "qualifiedName": "HubspotCmsApi.DetachSitePageFromLanguageGroup", + "fullyQualifiedName": "HubspotCmsApi.DetachSitePageFromLanguageGroup@1.0.0", + "description": "Detach a site page from a multi-language group.\n\nUse this tool to detach a site page from its current multi-language group when language-specific customization is needed.", + "parameters": [ + { + "name": "object_id_to_detach", + "type": "string", + "required": true, + "description": "The ID of the site page to detach from the multi-language group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/multi-language/detach-from-lang-group_detachFromLangGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DetachSitePageFromLanguageGroup", + "parameters": { + "object_id_to_detach": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DownloadFileFromHubspotCms", + "qualifiedName": "HubspotCmsApi.DownloadFileFromHubspotCms", + "fullyQualifiedName": "HubspotCmsApi.DownloadFileFromHubspotCms@1.0.0", + "description": "Download file content from HubSpot CMS by path and environment.\n\nUse this tool to download the byte contents of a file stored in HubSpot CMS. Specify the environment and path to retrieve the desired file content.", + "parameters": [ + { + "name": "file_environment", + "type": "string", + "required": true, + "description": "Specify the environment of the file. Options are 'draft' or 'published'.", + "enum": null, + "inferrable": true + }, + { + "name": "file_system_path", + "type": "string", + "required": true, + "description": "The file system path to the file within HubSpot CMS to be downloaded.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/source-code/{environment}/content/{path}_download'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.DownloadFileFromHubspotCms", + "parameters": { + "file_environment": { + "value": "published", + "type": "string", + "required": true + }, + "file_system_path": { + "value": "/assets/images/logo.png", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EndAbTestSelectWinner", + "qualifiedName": "HubspotCmsApi.EndAbTestSelectWinner", + "fullyQualifiedName": "HubspotCmsApi.EndAbTestSelectWinner@1.0.0", + "description": "End an active A/B test and designate a winner.\n\nUse this tool to end an ongoing A/B test for landing pages and select the winning variant. Ideal for finalizing tests and applying successful strategies.", + "parameters": [ + { + "name": "test_id_to_end", + "type": "string", + "required": true, + "description": "ID of the A/B test to be ended.", + "enum": null, + "inferrable": true + }, + { + "name": "winner_object_id", + "type": "string", + "required": true, + "description": "ID of the landing page variant to designate as the winner of the A/B test.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/ab-test/end_endActiveABTest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.EndAbTestSelectWinner", + "parameters": { + "test_id_to_end": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "winner_object_id": { + "value": "variant-xyz-98765", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EndActiveAbTest", + "qualifiedName": "HubspotCmsApi.EndActiveAbTest", + "fullyQualifiedName": "HubspotCmsApi.EndActiveAbTest@1.0.0", + "description": "End an active A/B test and designate a winner.\n\nUse this tool to conclude an ongoing A/B test and specify the winning variant on the HubSpot CMS.", + "parameters": [ + { + "name": "test_id_to_end", + "type": "string", + "required": true, + "description": "The unique identifier of the A/B test that you want to conclude in the HubSpot CMS.", + "enum": null, + "inferrable": true + }, + { + "name": "winner_id", + "type": "string", + "required": true, + "description": "The ID of the object to designate as the winner of the A/B test. This should match the ID used in the CMS to identify the specific variant.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/ab-test/end_endActiveABTest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.EndActiveAbTest", + "parameters": { + "test_id_to_end": { + "value": "ab_test_12345", + "type": "string", + "required": true + }, + "winner_id": { + "value": "variant_a_54321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ExportHubdbDraftTable", + "qualifiedName": "HubspotCmsApi.ExportHubdbDraftTable", + "fullyQualifiedName": "HubspotCmsApi.ExportHubdbDraftTable@1.0.0", + "description": "Export HubDB draft table to CSV or Excel format.\n\nUse this tool to export the draft version of a HubDB table in HubSpot CMS to a CSV or Excel file. Call this tool when you need to download table data for review or offline use.", + "parameters": [ + { + "name": "table_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the table to export. Use this to specify the exact table you want to download.", + "enum": null, + "inferrable": true + }, + { + "name": "export_file_format", + "type": "string", + "required": false, + "description": "The file format for exporting the draft table. Choose from `CSV`, `XLSX`, or `XLS`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables/{tableIdOrName}/draft/export_exportDraftTable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ExportHubdbDraftTable", + "parameters": { + "table_id_or_name": { + "value": "my_draft_table_123", + "type": "string", + "required": true + }, + "export_file_format": { + "value": "XLSX", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ExportTableFromHubdb", + "qualifiedName": "HubspotCmsApi.ExportTableFromHubdb", + "fullyQualifiedName": "HubspotCmsApi.ExportTableFromHubdb@1.0.0", + "description": "Exports a HubDB table in the desired format.\n\nUse this tool to export the published version of a HubDB table by specifying the table ID or name. It allows exporting in various formats.", + "parameters": [ + { + "name": "hubdb_table_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the HubDB table to export.", + "enum": null, + "inferrable": true + }, + { + "name": "file_format_to_export", + "type": "string", + "required": false, + "description": "The file format for exporting the table. Options are `CSV`, `XLSX`, and `XLS`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables/{tableIdOrName}/export_exportTable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ExportTableFromHubdb", + "parameters": { + "hubdb_table_id_or_name": { + "value": "my_table_id", + "type": "string", + "required": true + }, + "file_format_to_export": { + "value": "CSV", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ExtractZipFileAsync", + "qualifiedName": "HubspotCmsApi.ExtractZipFileAsync", + "fullyQualifiedName": "HubspotCmsApi.ExtractZipFileAsync@1.0.0", + "description": "Initiate asynchronous extraction of a zip file on HubSpot CMS.\n\nThis tool initiates the extraction of a zip file in the developer file system asynchronously. This is useful for handling large files or files that need processing without blocking operations. Use this tool when you need to start a zip file extraction and check its status later through the appropriate status endpoint.", + "parameters": [ + { + "name": "zip_file_path", + "type": "string", + "required": true, + "description": "The path to the zip file in the developer file system that needs extraction.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/source-code/extract/async_doAsync'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ExtractZipFileAsync", + "parameters": { + "zip_file_path": { + "value": "/files/uploads/sample_zip_file.zip", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchHubdbTableRows", + "qualifiedName": "HubspotCmsApi.FetchHubdbTableRows", + "fullyQualifiedName": "HubspotCmsApi.FetchHubdbTableRows@1.0.0", + "description": "Fetch rows from a HubDB table using filters and sorting.\n\nUse this tool to fetch rows from a specific HubDB table. You can apply filters and sorting by using query parameters, allowing retrieval of customized data sets. No authentication is needed if the table allows public access.", + "parameters": [ + { + "name": "table_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the HubDB table to query for fetching row data.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_rows", + "type": "boolean", + "required": false, + "description": "Set to true to include archived rows in the results; false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of results to return. The default value is 1000, which can be adjusted to retrieve fewer entries.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_token", + "type": "string", + "required": false, + "description": "Cursor token to fetch the next set of results. Obtainable from the `paging.next.after` of a paged response.", + "enum": null, + "inferrable": true + }, + { + "name": "requested_columns", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify column names to retrieve only the required columns' data, excluding others.", + "enum": null, + "inferrable": true + }, + { + "name": "row_offset", + "type": "integer", + "required": false, + "description": "The starting point for fetching a subset of rows, useful for pagination. It's similar to specifying which row to start fetching from.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_columns", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of column names to sort the results by. Each entry is a string representing a column. Prefix with '-' for descending order.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables/{tableIdOrName}/rows_getTableRows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.FetchHubdbTableRows", + "parameters": { + "table_identifier": { + "value": "products_table", + "type": "string", + "required": true + }, + "include_archived_rows": { + "value": false, + "type": "boolean", + "required": false + }, + "maximum_results_limit": { + "value": 500, + "type": "integer", + "required": false + }, + "pagination_cursor_token": { + "value": "abcdef123456", + "type": "string", + "required": false + }, + "requested_columns": { + "value": ["name", "price", "category"], + "type": "array", + "required": false + }, + "row_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "sort_columns": { + "value": ["-price", "name"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchUrlRedirects", + "qualifiedName": "HubspotCmsApi.FetchUrlRedirects", + "fullyQualifiedName": "HubspotCmsApi.FetchUrlRedirects@1.0.0", + "description": "Retrieve all URL redirects with optional filters.\n\nUse this tool to access a list of all existing URL redirects in the HubSpot CMS. You can apply filters based on creation or updated date to narrow down the results.", + "parameters": [ + { + "name": "created_after_date", + "type": "string", + "required": false, + "description": "Return redirects created after this date (format: YYYY-MM-DD).", + "enum": null, + "inferrable": true + }, + { + "name": "created_at", + "type": "string", + "required": false, + "description": "Return redirects created exactly on this date. Format: YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_exact_update_date", + "type": "string", + "required": false, + "description": "Return redirects last updated on this exact date. Use a valid date format (e.g., YYYY-MM-DD).", + "enum": null, + "inferrable": true + }, + { + "name": "filter_created_before_date", + "type": "string", + "required": false, + "description": "Return redirects created before this date. Expected format: YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_updated_after", + "type": "string", + "required": false, + "description": "Only include redirects updated after this specified date (ISO 8601 format).", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "Token for the last read resource to fetch additional results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page_limit", + "type": "integer", + "required": false, + "description": "Maximum number of URL redirects to return per page. Use to control pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived URL redirects, false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_criteria", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify fields to sort the URL redirects by. Can include multiple fields such as 'createdAt' or 'updatedAt'.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_before_date", + "type": "string", + "required": false, + "description": "Only return redirects last updated before this date (in YYYY-MM-DD format).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/url-redirects/_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.FetchUrlRedirects", + "parameters": { + "created_after_date": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "created_at": { + "value": "2023-05-15", + "type": "string", + "required": false + }, + "filter_by_exact_update_date": { + "value": "2023-09-01", + "type": "string", + "required": false + }, + "filter_created_before_date": { + "value": "2023-08-30", + "type": "string", + "required": false + }, + "filter_updated_after": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "paging_cursor_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "results_per_page_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "sort_criteria": { + "value": ["createdAt", "updatedAt"], + "type": "array", + "required": false + }, + "updated_before_date": { + "value": "2023-09-15", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllDraftTablesDetails", + "qualifiedName": "HubspotCmsApi.GetAllDraftTablesDetails", + "fullyQualifiedName": "HubspotCmsApi.GetAllDraftTablesDetails@1.0.0", + "description": "Retrieve details of all draft HubDB tables.\n\nReturns information on all draft tables in a specified HubSpot account, including column definitions.", + "parameters": [ + { + "name": "content_type", + "type": "string", + "required": false, + "description": "Specify the content type filter for retrieving draft tables. Leave empty for no filter.", + "enum": null, + "inferrable": true + }, + { + "name": "created_after_date", + "type": "string", + "required": false, + "description": "Return tables created after the specified date and time. Format: YYYY-MM-DDTHH:MM:SSZ.", + "enum": null, + "inferrable": true + }, + { + "name": "created_at_exact_time", + "type": "string", + "required": false, + "description": "Return tables created at the specified exact time (ISO 8601 format).", + "enum": null, + "inferrable": true + }, + { + "name": "created_before_date", + "type": "string", + "required": false, + "description": "Return tables created before this specified time.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_updated_before_date", + "type": "string", + "required": false, + "description": "Return tables last updated before this specified time in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_tables", + "type": "boolean", + "required": false, + "description": "Set to true to include archived tables in the results, false by default.", + "enum": null, + "inferrable": true + }, + { + "name": "include_localized_schema", + "type": "boolean", + "required": false, + "description": "Indicates whether to include localized schema information for draft tables. Accepts a boolean value.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of draft table results to return, with a default of 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_token", + "type": "string", + "required": false, + "description": "Cursor token to fetch the next set of results from a paginated response.", + "enum": null, + "inferrable": true + }, + { + "name": "return_tables_updated_after", + "type": "string", + "required": false, + "description": "Only return tables that were last updated after the specified timestamp (ISO 8601 format).", + "enum": null, + "inferrable": true + }, + { + "name": "sort_fields_for_results", + "type": "array", + "innerType": "string", + "required": false, + "description": "Fields to sort the results by. Valid fields are `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Defaults to `createdAt`.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_at_specific_time", + "type": "string", + "required": false, + "description": "Return tables last updated at the specified exact time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables/draft_getAllDraftTables'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetAllDraftTablesDetails", + "parameters": { + "content_type": { + "value": "blog_post", + "type": "string", + "required": false + }, + "created_after_date": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "created_at_exact_time": { + "value": "2023-05-10T14:30:00Z", + "type": "string", + "required": false + }, + "created_before_date": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "filter_by_updated_before_date": { + "value": "2023-09-15T00:00:00Z", + "type": "string", + "required": false + }, + "include_archived_tables": { + "value": true, + "type": "boolean", + "required": false + }, + "include_localized_schema": { + "value": false, + "type": "boolean", + "required": false + }, + "maximum_results_limit": { + "value": 500, + "type": "integer", + "required": false + }, + "pagination_cursor_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "return_tables_updated_after": { + "value": "2023-08-01T00:00:00Z", + "type": "string", + "required": false + }, + "sort_fields_for_results": { + "value": ["name", "updatedAt"], + "type": "array", + "required": false + }, + "updated_at_specific_time": { + "value": "2023-09-10T10:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllHubdbTables", + "qualifiedName": "HubspotCmsApi.GetAllHubdbTables", + "fullyQualifiedName": "HubspotCmsApi.GetAllHubdbTables@1.0.0", + "description": "Retrieve details of all published HubDB tables.\n\nThis tool returns the details and column definitions for all published HubDB tables in a HubSpot account. It is useful when you need an overview of the schema and data of all tables within your CMS environment.", + "parameters": [ + { + "name": "content_type_filter", + "type": "string", + "required": false, + "description": "Filter tables by the specified content type to return only those matching it.", + "enum": null, + "inferrable": true + }, + { + "name": "created_after", + "type": "string", + "required": false, + "description": "Return tables created after the specified time in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "created_before_timestamp", + "type": "string", + "required": false, + "description": "Return tables created before this timestamp. Format should be in ISO 8601.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_token_for_next_results", + "type": "string", + "required": false, + "description": "The cursor token to retrieve the next set of results. Obtain this from the `paging.next.after` in a paged response.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_creation_time", + "type": "string", + "required": false, + "description": "Return tables created at the specified time. Format: ISO 8601.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_tables", + "type": "boolean", + "required": false, + "description": "Specifies whether to include archived tables in the results. Defaults to `false`.", + "enum": null, + "inferrable": true + }, + { + "name": "include_localized_schema", + "type": "boolean", + "required": false, + "description": "Include localized schema details in the response if true.", + "enum": null, + "inferrable": true + }, + { + "name": "last_updated_exact_time", + "type": "string", + "required": false, + "description": "Only return tables last updated at exactly the specified time, formatted as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "max_table_results", + "type": "integer", + "required": false, + "description": "Maximum number of HubDB table results to return. Default is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify fields for sorting results: `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Defaults to `createdAt`.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_after_timestamp", + "type": "string", + "required": false, + "description": "Return tables last updated after this timestamp. Format: 'YYYY-MM-DDTHH:MM:SSZ'.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_before_time", + "type": "string", + "required": false, + "description": "Return tables updated before this specific time.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables_getAllTables'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetAllHubdbTables", + "parameters": { + "content_type_filter": { + "value": "blog_post", + "type": "string", + "required": false + }, + "created_after": { + "value": "2022-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "created_before_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "cursor_token_for_next_results": { + "value": "abc123token", + "type": "string", + "required": false + }, + "filter_by_creation_time": { + "value": "2022-06-15T00:00:00Z", + "type": "string", + "required": false + }, + "include_archived_tables": { + "value": true, + "type": "boolean", + "required": false + }, + "include_localized_schema": { + "value": false, + "type": "boolean", + "required": false + }, + "last_updated_exact_time": { + "value": "2023-08-01T12:00:00Z", + "type": "string", + "required": false + }, + "max_table_results": { + "value": 500, + "type": "integer", + "required": false + }, + "sort_fields": { + "value": ["name", "updatedAt"], + "type": "array", + "required": false + }, + "updated_after_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "updated_before_time": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBlogAuthorById", + "qualifiedName": "HubspotCmsApi.GetBlogAuthorById", + "fullyQualifiedName": "HubspotCmsApi.GetBlogAuthorById@1.0.0", + "description": "Retrieve blog author details using an object ID.\n\nThis tool fetches details of a blog author from HubSpot CMS using the specified object ID. It should be called when specific information about a blog author is needed.", + "parameters": [ + { + "name": "blog_author_id", + "type": "string", + "required": true, + "description": "The unique identifier for the blog author to retrieve their details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_deleted_blog_authors", + "type": "boolean", + "required": false, + "description": "Set to true to include deleted blog authors in the results. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_author_property", + "type": "string", + "required": false, + "description": "Specify a property to retrieve specific details about the blog author, such as a specific attribute or field.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/blogs/authors/{objectId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetBlogAuthorById", + "parameters": { + "blog_author_id": { + "value": "12345", + "type": "string", + "required": true + }, + "include_deleted_blog_authors": { + "value": false, + "type": "boolean", + "required": false + }, + "specific_author_property": { + "value": "email", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBlogAuthors", + "qualifiedName": "HubspotCmsApi.GetBlogAuthors", + "fullyQualifiedName": "HubspotCmsApi.GetBlogAuthors@1.0.0", + "description": "Retrieve the list of blog authors.\n\nUse this tool to get a list of blog authors for integration, with support for paging and filtering. Useful for examining authors to suggest edits via external services.", + "parameters": [ + { + "name": "created_after", + "type": "string", + "required": false, + "description": "Return only blog authors created after this specified timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "created_at_exact_time", + "type": "string", + "required": false, + "description": "Return blog authors created at exactly the specified time. Use ISO 8601 format for timestamps.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_creation_before_date", + "type": "string", + "required": false, + "description": "Return Blog Authors created before the specified date and time in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_last_updated_before", + "type": "string", + "required": false, + "description": "Only return blog authors last updated before the specified timestamp. Format: YYYY-MM-DDTHH:MM:SSZ.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_updated_after", + "type": "string", + "required": false, + "description": "Return Blog Authors updated after a specific time. Use an ISO 8601 datetime string, e.g., '2023-01-01T00:00:00Z'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_authors", + "type": "boolean", + "required": false, + "description": "Specify `true` to include archived (deleted) blog authors in the results. Defaults to `false`.", + "enum": null, + "inferrable": true + }, + { + "name": "included_properties", + "type": "string", + "required": false, + "description": "Comma-separated list of specific properties to include in the response for each author. If empty, all properties will be fetched by default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_token", + "type": "string", + "required": false, + "description": "The cursor token from `paging.next.after` to fetch the next set of results.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Maximum number of blog authors to return. Default is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Fields for sorting results. Choose from: `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Default is `createdAt`.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_at_timestamp", + "type": "string", + "required": false, + "description": "Return blog authors last updated at the specified exact time (ISO 8601 format).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/blogs/authors_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetBlogAuthors", + "parameters": { + "created_after": { + "value": "2022-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "created_at_exact_time": { + "value": "2022-06-15T08:30:00Z", + "type": "string", + "required": false + }, + "filter_by_creation_before_date": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "filter_by_last_updated_before": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "filter_by_updated_after": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "include_archived_authors": { + "value": true, + "type": "boolean", + "required": false + }, + "included_properties": { + "value": "name,email,createdAt", + "type": "string", + "required": false + }, + "pagination_cursor_token": { + "value": "cursor_12345", + "type": "string", + "required": false + }, + "result_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_fields": { + "value": ["name", "updatedAt"], + "type": "array", + "required": false + }, + "updated_at_timestamp": { + "value": "2023-09-15T10:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBlogPostDraft", + "qualifiedName": "HubspotCmsApi.GetBlogPostDraft", + "fullyQualifiedName": "HubspotCmsApi.GetBlogPostDraft@1.0.0", + "description": "Retrieve the full draft version of a blog post.\n\nUse this tool to get the draft version of a specific blog post by providing the post's object ID.", + "parameters": [ + { + "name": "blog_post_id", + "type": "string", + "required": true, + "description": "The ID of the blog post to retrieve the draft version.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/blogs/posts/{objectId}/draft_getDraftById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetBlogPostDraft", + "parameters": { + "blog_post_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBlogRevisionHistory", + "qualifiedName": "HubspotCmsApi.GetBlogRevisionHistory", + "fullyQualifiedName": "HubspotCmsApi.GetBlogRevisionHistory@1.0.0", + "description": "Retrieve the revision history of blog settings.\n\nThis tool retrieves the historical revisions for the settings of a specified blog, providing insights into past configurations.", + "parameters": [ + { + "name": "blog_id", + "type": "string", + "required": true, + "description": "The unique identifier for the blog whose settings history is being retrieved. This is required for querying specific blog settings.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_revisions_before_timestamp", + "type": "string", + "required": false, + "description": "Retrieve revisions before this timestamp in milliseconds since Unix Epoch.", + "enum": null, + "inferrable": true + }, + { + "name": "revision_limit", + "type": "integer", + "required": false, + "description": "The maximum number of blog setting revisions to retrieve. Provide an integer value to restrict the number of results.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_for_revisions", + "type": "string", + "required": false, + "description": "Specify a date to filter revisions that occurred after this date. Format: YYYY-MM-DD.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/blog-settings/settings/{blogId}/revisions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetBlogRevisionHistory", + "parameters": { + "blog_id": { + "value": "12345", + "type": "string", + "required": true + }, + "retrieve_revisions_before_timestamp": { + "value": "1633036800000", + "type": "string", + "required": false + }, + "revision_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "start_date_for_revisions": { + "value": "2023-01-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBlogSettings", + "qualifiedName": "HubspotCmsApi.GetBlogSettings", + "fullyQualifiedName": "HubspotCmsApi.GetBlogSettings@1.0.0", + "description": "Fetch blog settings using a blog ID.\n\nThis tool retrieves the settings for a blog identified by the provided blog ID from the HubSpot CMS. It should be called when specific details or configurations of a blog are needed.", + "parameters": [ + { + "name": "blog_id", + "type": "string", + "required": true, + "description": "The unique identifier of the blog for which you want to fetch the settings. This is required to specify which blog's details to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/blog-settings/settings/{blogId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetBlogSettings", + "parameters": { + "blog_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBlogTags", + "qualifiedName": "HubspotCmsApi.GetBlogTags", + "fullyQualifiedName": "HubspotCmsApi.GetBlogTags@1.0.0", + "description": "Retrieve a list of blog tags with paging and filtering options.\n\nThis tool fetches the list of blog tags, supporting paging and filtering. It is useful for integrations that need to access blog tags for analysis or editing suggestions.", + "parameters": [ + { + "name": "additional_properties", + "type": "string", + "required": false, + "description": "Include additional fields in the response. Specify the properties you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "created_after_time", + "type": "string", + "required": false, + "description": "Only return Blog Tags created after the specified time. Provide the time in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_creation_time", + "type": "string", + "required": false, + "description": "Filter blog tags to return only those created at the specified exact time. Use ISO 8601 format for the date-time.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_tags_created_before", + "type": "string", + "required": false, + "description": "Only return blog tags created before the specified date and time in UTC, formatted as an ISO 8601 string.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_tags", + "type": "boolean", + "required": false, + "description": "Specify whether to return deleted blog tags. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "last_updated_before", + "type": "string", + "required": false, + "description": "Return blog tags updated before this date and time (in ISO 8601 format).", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_to_return", + "type": "integer", + "required": false, + "description": "Specify the maximum number of blog tags to return. Default is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_token", + "type": "string", + "required": false, + "description": "The token to retrieve the next set of results from a paginated response. Obtain this from the `paging.next.after` property in the previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_fields_for_results", + "type": "array", + "innerType": "string", + "required": false, + "description": "Fields to sort results by. Options: `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Default is `createdAt`.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_after", + "type": "string", + "required": false, + "description": "Return Blog Tags last updated after the specified date and time. Provide in ISO 8601 format, e.g., '2023-10-21T15:30:00Z'.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_at_exact", + "type": "string", + "required": false, + "description": "Return blog tags last updated at the specified exact time (ISO 8601 format).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/blogs/tags_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetBlogTags", + "parameters": { + "additional_properties": { + "value": "description,slug", + "type": "string", + "required": false + }, + "created_after_time": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "filter_by_creation_time": { + "value": "2023-05-01T12:00:00Z", + "type": "string", + "required": false + }, + "filter_tags_created_before": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "include_archived_tags": { + "value": false, + "type": "boolean", + "required": false + }, + "last_updated_before": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "maximum_results_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "sort_fields_for_results": { + "value": ["name", "createdAt"], + "type": "array", + "required": false + }, + "updated_after": { + "value": "2023-08-01T00:00:00Z", + "type": "string", + "required": false + }, + "updated_at_exact": { + "value": "2023-09-10T15:30:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDomainById", + "qualifiedName": "HubspotCmsApi.GetDomainById", + "fullyQualifiedName": "HubspotCmsApi.GetDomainById@1.0.0", + "description": "Retrieve domain details by ID from HubSpot CMS.\n\nThis tool retrieves detailed information about a specific domain using the provided domain ID from the HubSpot CMS.", + "parameters": [ + { + "name": "domain_id", + "type": "string", + "required": true, + "description": "The unique ID of the domain to retrieve details for from HubSpot CMS.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "cms.knowledge_base.settings.read", + "cms.domains.read", + "cms.knowledge_base.settings.write", + "content", + "cms.domains.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/domains/{domainId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetDomainById", + "parameters": { + "domain_id": { + "value": "12345-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDraftHubdbTableRows", + "qualifiedName": "HubspotCmsApi.GetDraftHubdbTableRows", + "fullyQualifiedName": "HubspotCmsApi.GetDraftHubdbTableRows@1.0.0", + "description": "Retrieve rows from a draft HubDB table with optional filtering.\n\nThis tool fetches rows from the draft version of a specified HubDB table. It allows for filtering and sorting rows based on query parameters, helping to access only relevant data.", + "parameters": [ + { + "name": "table_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the HubDB table to query for draft rows.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_rows", + "type": "boolean", + "required": false, + "description": "Specify whether to include archived rows in the results. Use `true` to include archived rows, `false` to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of results to return from the draft table. Default is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_cursor", + "type": "string", + "required": false, + "description": "Cursor token to retrieve the next set of results, from `paging.next.after` in a paged response.", + "enum": null, + "inferrable": true + }, + { + "name": "result_offset", + "type": "integer", + "required": false, + "description": "The number of rows to skip before starting to collect the result set from the draft version of a table.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_columns", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of column names to sort the results by. Use format like ['column1', '-column2'] to specify ascending or descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "specified_columns", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify the column names to return only these columns in the result, instead of all columns.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables/{tableIdOrName}/rows/draft_readDraftTableRows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetDraftHubdbTableRows", + "parameters": { + "table_id_or_name": { + "value": "blog_posts", + "type": "string", + "required": true + }, + "include_archived_rows": { + "value": false, + "type": "boolean", + "required": false + }, + "maximum_results_limit": { + "value": 500, + "type": "integer", + "required": false + }, + "next_page_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "result_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "sort_columns": { + "value": ["publish_date", "-title"], + "type": "array", + "required": false + }, + "specified_columns": { + "value": ["title", "author", "publish_date"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDraftTableDetails", + "qualifiedName": "HubspotCmsApi.GetDraftTableDetails", + "fullyQualifiedName": "HubspotCmsApi.GetDraftTableDetails@1.0.0", + "description": "Retrieve details of a draft HubDB table by ID or name.\n\nUse this tool to get information about the draft version of a specific HubDB table, including column definitions and row count.", + "parameters": [ + { + "name": "table_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the HubDB table to retrieve draft details for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_foreign_ids", + "type": "boolean", + "required": false, + "description": "Set this to `true` to populate foreign ID values in the result.", + "enum": null, + "inferrable": true + }, + { + "name": "include_localized_schema", + "type": "boolean", + "required": false, + "description": "Set to true to include the localized schema in the result.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_table", + "type": "boolean", + "required": false, + "description": "Set to `true` to return an archived table. Defaults to `false`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables/{tableIdOrName}/draft_getDraftTableDetailsById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetDraftTableDetails", + "parameters": { + "table_id_or_name": { + "value": "example_table_123", + "type": "string", + "required": true + }, + "include_foreign_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "include_localized_schema": { + "value": false, + "type": "boolean", + "required": false + }, + "return_archived_table": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDraftTableRowById", + "qualifiedName": "HubspotCmsApi.GetDraftTableRowById", + "fullyQualifiedName": "HubspotCmsApi.GetDraftTableRowById@1.0.0", + "description": "Retrieve a single draft row by ID from a HubDB table.\n\nThis tool fetches a specific row's draft version from a HubDB table using the row ID. It should be called when a user needs to access draft data for a specific table row by ID or name.", + "parameters": [ + { + "name": "row_id", + "type": "string", + "required": true, + "description": "The ID of the row in the table's draft version to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "table_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the HubDB table to fetch the draft row from.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived", + "type": "boolean", + "required": false, + "description": "Set to true to include archived rows in the search result. Defaults to false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables/{tableIdOrName}/rows/{rowId}/draft_getDraftTableRowById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetDraftTableRowById", + "parameters": { + "row_id": { + "value": "12345", + "type": "string", + "required": true + }, + "table_identifier": { + "value": "my_hubdb_table", + "type": "string", + "required": true + }, + "include_archived": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetExistingDomains", + "qualifiedName": "HubspotCmsApi.GetExistingDomains", + "fullyQualifiedName": "HubspotCmsApi.GetExistingDomains@1.0.0", + "description": "Retrieve all existing domains in the CMS.\n\nFetches a list of all domains that have been created in the CMS, with optional filters by creation or update date.", + "parameters": [ + { + "name": "created_at_date_filter", + "type": "string", + "required": false, + "description": "Specify a date to return only domains created on this exact date. Format: YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "created_before_date", + "type": "string", + "required": false, + "description": "Filter to return only domains created before the specified date. Format: YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_update_date", + "type": "string", + "required": false, + "description": "Only return domains updated on this specific date. Use 'YYYY-MM-DD' format.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_domains_updated_after", + "type": "string", + "required": false, + "description": "Return domains updated after this specified date. Use ISO 8601 format (YYYY-MM-DD).", + "enum": null, + "inferrable": true + }, + { + "name": "filter_updated_before_date", + "type": "string", + "required": false, + "description": "Return only domains updated before this date in ISO 8601 format (e.g., '2023-10-05T00:00:00Z').", + "enum": null, + "inferrable": true + }, + { + "name": "get_domains_created_after_date", + "type": "string", + "required": false, + "description": "Only return domains created after the specified date (in YYYY-MM-DD format).", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of domain results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The paging cursor token of the last successfully read resource, used for paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived", + "type": "boolean", + "required": false, + "description": "Return only archived domains if true. Return unarchived if false.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_criteria", + "type": "array", + "innerType": "string", + "required": false, + "description": "Defines the order of the domain results. Provide an array of strings specifying fields to sort by, such as ['createdAt', 'updatedAt'].", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "cms.knowledge_base.settings.read", + "cms.domains.read", + "cms.knowledge_base.settings.write", + "content", + "cms.domains.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/domains/_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetExistingDomains", + "parameters": { + "created_at_date_filter": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "created_before_date": { + "value": "2023-09-30", + "type": "string", + "required": false + }, + "filter_by_update_date": { + "value": "2023-10-02", + "type": "string", + "required": false + }, + "filter_domains_updated_after": { + "value": "2023-09-01", + "type": "string", + "required": false + }, + "filter_updated_before_date": { + "value": "2023-10-05T00:00:00Z", + "type": "string", + "required": false + }, + "get_domains_created_after_date": { + "value": "2023-08-01", + "type": "string", + "required": false + }, + "maximum_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "return_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "sort_criteria": { + "value": ["createdAt", "updatedAt"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileMetadata", + "qualifiedName": "HubspotCmsApi.GetFileMetadata", + "fullyQualifiedName": "HubspotCmsApi.GetFileMetadata@1.0.0", + "description": "Retrieve metadata for a file in a specified environment.\n\nUse this tool to obtain the metadata object for a file located at a specified path within a designated environment in the HubSpot CMS.", + "parameters": [ + { + "name": "file_environment", + "type": "string", + "required": true, + "description": "Specify the environment of the file, either 'draft' or 'published'.", + "enum": null, + "inferrable": true + }, + { + "name": "file_path", + "type": "string", + "required": true, + "description": "The file system location of the file to retrieve metadata for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_properties", + "type": "string", + "required": false, + "description": "Comma-separated list of additional properties to include in the metadata response, if applicable.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/source-code/{environment}/metadata/{path}_get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetFileMetadata", + "parameters": { + "file_environment": { + "value": "published", + "type": "string", + "required": true + }, + "file_path": { + "value": "/images/sample-image.jpg", + "type": "string", + "required": true + }, + "include_properties": { + "value": "size,type", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetHubdbDraftRows", + "qualifiedName": "HubspotCmsApi.GetHubdbDraftRows", + "fullyQualifiedName": "HubspotCmsApi.GetHubdbDraftRows@1.0.0", + "description": "Fetch draft rows from a specified HubDB table.\n\nUse this tool to retrieve rows from the draft version of a specified HubDB table using a set of row IDs.", + "parameters": [ + { + "name": "row_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of row IDs to retrieve draft rows from the specified HubDB table.", + "enum": null, + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": true, + "description": "ID or name of the HubDB table to retrieve draft rows from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/rows/draft/batch/read_readDraftTableRows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetHubdbDraftRows", + "parameters": { + "row_ids": { + "value": [101, 102, 103], + "type": "array", + "required": true + }, + "table_id_or_name": { + "value": "my_hubdb_table", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetHubdbTableDetails", + "qualifiedName": "HubspotCmsApi.GetHubdbTableDetails", + "fullyQualifiedName": "HubspotCmsApi.GetHubdbTableDetails@1.0.0", + "description": "Get details of a HubDB table, including columns and row count.\n\nUse this tool to obtain comprehensive details about a specific HubDB table. It returns column definitions and the number of rows for the published version of the table. Accessible without authentication if the table is publicly available; requires HubSpot account ID in `portalId` query parameter.", + "parameters": [ + { + "name": "table_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the HubDB table to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "get_localized_schema", + "type": "boolean", + "required": false, + "description": "Set to `true` to return the localized schema for the table. If `false`, returns the default schema.", + "enum": null, + "inferrable": true + }, + { + "name": "include_foreign_id_values", + "type": "boolean", + "required": false, + "description": "Set this to true to populate foreign ID values in the result.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_table_details", + "type": "boolean", + "required": false, + "description": "Set to true to return details for an archived table. Defaults to false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables/{tableIdOrName}_getTableDetails'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetHubdbTableDetails", + "parameters": { + "table_id_or_name": { + "value": "example_table_123", + "type": "string", + "required": true + }, + "get_localized_schema": { + "value": true, + "type": "boolean", + "required": false + }, + "include_foreign_id_values": { + "value": false, + "type": "boolean", + "required": false + }, + "return_archived_table_details": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLandingPageById", + "qualifiedName": "HubspotCmsApi.GetLandingPageById", + "fullyQualifiedName": "HubspotCmsApi.GetLandingPageById@1.0.0", + "description": "Retrieve details of a specific landing page by ID.\n\nUse this tool to fetch the details of a landing page from HubSpot CMS by providing the landing page's unique ID.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The unique identifier of the landing page to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived", + "type": "boolean", + "required": false, + "description": "Include deleted landing pages in the response if set to true. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "landing_page_property", + "type": "string", + "required": false, + "description": "Specify which properties of the landing page to retrieve, such as 'title' or 'url'. Leave blank to fetch all.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/pages/landing-pages/{objectId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetLandingPageById", + "parameters": { + "landing_page_id": { + "value": "123456", + "type": "string", + "required": true + }, + "include_archived": { + "value": true, + "type": "boolean", + "required": false + }, + "landing_page_property": { + "value": "title", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLandingPageDraft", + "qualifiedName": "HubspotCmsApi.GetLandingPageDraft", + "fullyQualifiedName": "HubspotCmsApi.GetLandingPageDraft@1.0.0", + "description": "Retrieve the full draft version of a landing page.\n\nUse this tool to get the complete draft version of a landing page by providing its object ID. Ideal for viewing or editing drafts before publishing.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Landing Page draft to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/pages/landing-pages/{objectId}/draft_getDraftById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetLandingPageDraft", + "parameters": { + "landing_page_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLandingPageFolderById", + "qualifiedName": "HubspotCmsApi.GetLandingPageFolderById", + "fullyQualifiedName": "HubspotCmsApi.GetLandingPageFolderById@1.0.0", + "description": "Retrieve details of a landing page folder by its ID.\n\nUse this tool to get information about a specific landing page folder in HubSpot CMS by providing its unique ID.", + "parameters": [ + { + "name": "folder_id", + "type": "string", + "required": true, + "description": "The unique identifier for the landing page folder to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_property", + "type": "string", + "required": false, + "description": "Specify properties to include in the response for the folder object. Leave empty to fetch all properties.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_folders", + "type": "boolean", + "required": false, + "description": "Specifies whether to include deleted folders in the response. Use 'true' to include them; defaults to 'false'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/pages/landing-pages/folders/{objectId}_getFolderById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetLandingPageFolderById", + "parameters": { + "folder_id": { + "value": "12345", + "type": "string", + "required": true + }, + "filter_by_property": { + "value": "name,created_at,updated_at", + "type": "string", + "required": false + }, + "include_archived_folders": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLandingPageFolders", + "qualifiedName": "HubspotCmsApi.GetLandingPageFolders", + "fullyQualifiedName": "HubspotCmsApi.GetLandingPageFolders@1.0.0", + "description": "Retrieve the list of landing page folders from HubSpot CMS.\n\nThis tool fetches the list of landing page folders in HubSpot CMS, supporting paging and filtering. Useful for integrations needing to analyze these models or suggest edits via external services.", + "parameters": [ + { + "name": "created_after", + "type": "string", + "required": false, + "description": "Return folders created after this specified ISO 8601 timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "created_before_time", + "type": "string", + "required": false, + "description": "Return folders created before this specific time.", + "enum": null, + "inferrable": true + }, + { + "name": "exact_update_time", + "type": "string", + "required": false, + "description": "Return folders last updated at exactly the specified time. Use a string format for the timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_folders_created_at", + "type": "string", + "required": false, + "description": "Return folders created at an exact specified time. Use ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_property", + "type": "string", + "required": false, + "description": "Specify properties to include in the response for each folder. Leave empty for all properties.", + "enum": null, + "inferrable": true + }, + { + "name": "include_deleted_folders", + "type": "boolean", + "required": false, + "description": "Include deleted folders in the results when set to true. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_limit", + "type": "integer", + "required": false, + "description": "The maximum number of folder results to return. Default is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_cursor", + "type": "string", + "required": false, + "description": "The cursor token to retrieve the next set of results from a paged response.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_criteria", + "type": "array", + "innerType": "string", + "required": false, + "description": "Fields to use for sorting results. Valid options: `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Default: `createdAt`.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_after_date", + "type": "string", + "required": false, + "description": "Only return folders last updated after the specified time. Use ISO 8601 format for the date and time.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_before_timestamp", + "type": "string", + "required": false, + "description": "Return folders last updated before this specified timestamp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/pages/landing-pages/folders_getFoldersPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetLandingPageFolders", + "parameters": { + "created_after": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "created_before_time": { + "value": "2023-12-31T23:59:59Z", + "type": "string", + "required": false + }, + "exact_update_time": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "filter_folders_created_at": { + "value": "2023-07-01T00:00:00Z", + "type": "string", + "required": false + }, + "folder_property": { + "value": "name,createdAt,updatedAt", + "type": "string", + "required": false + }, + "include_deleted_folders": { + "value": true, + "type": "boolean", + "required": false + }, + "max_results_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "next_page_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "sort_criteria": { + "value": ["name", "createdAt"], + "type": "array", + "required": false + }, + "updated_after_date": { + "value": "2023-05-01T00:00:00Z", + "type": "string", + "required": false + }, + "updated_before_timestamp": { + "value": "2023-10-10T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLandingPagePreviousVersions", + "qualifiedName": "HubspotCmsApi.GetLandingPagePreviousVersions", + "fullyQualifiedName": "HubspotCmsApi.GetLandingPagePreviousVersions@1.0.0", + "description": "Retrieve previous versions of a Landing Page for review.\n\nUse this tool to obtain all previous versions of a specified Landing Page, allowing you to track changes or restore versions if needed.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The ID of the Landing Page to retrieve previous versions for.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_token_for_next_set", + "type": "string", + "required": false, + "description": "The cursor token for retrieving the next set of results, from the `paging.next.after` JSON property.", + "enum": null, + "inferrable": true + }, + { + "name": "limit_page_fetching_before_cursor", + "type": "string", + "required": false, + "description": "A token used for fetching results before a specific cursor position in paged results. Typically used in pagination to navigate backwards.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "The maximum number of previous landing page versions to return. Default is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/pages/landing-pages/{objectId}/revisions_getPreviousVersions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetLandingPagePreviousVersions", + "parameters": { + "landing_page_id": { + "value": "123456", + "type": "string", + "required": true + }, + "cursor_token_for_next_set": { + "value": "abcde12345", + "type": "string", + "required": false + }, + "limit_page_fetching_before_cursor": { + "value": "xyz7890", + "type": "string", + "required": false + }, + "max_results": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLandingPages", + "qualifiedName": "HubspotCmsApi.GetLandingPages", + "fullyQualifiedName": "HubspotCmsApi.GetLandingPages@1.0.0", + "description": "Retrieve a list of HubSpot CMS landing pages.\n\nThis tool retrieves a list of landing pages from HubSpot CMS, supporting paging and filtering. Ideal for integrations that analyze page models and suggest edits.", + "parameters": [ + { + "name": "created_after", + "type": "string", + "required": false, + "description": "Return landing pages created after this specified timestamp (ISO 8601 format).", + "enum": null, + "inferrable": true + }, + { + "name": "created_at_timestamp", + "type": "string", + "required": false, + "description": "Return landing pages created at the specified exact timestamp. Format: ISO 8601.", + "enum": null, + "inferrable": true + }, + { + "name": "created_before_timestamp", + "type": "string", + "required": false, + "description": "Only return landing pages created before the specified ISO 8601 timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_after_token", + "type": "string", + "required": false, + "description": "The token to get the next set of results. Obtainable from `paging.next.after` in a paged response.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_property", + "type": "string", + "required": false, + "description": "Specify a property to filter the landing pages by.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_pages", + "type": "boolean", + "required": false, + "description": "Specify whether to include deleted landing pages in the results. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "last_updated_before", + "type": "string", + "required": false, + "description": "Return landing pages updated before this specified datetime (ISO format).", + "enum": null, + "inferrable": true + }, + { + "name": "last_updated_exact_time", + "type": "string", + "required": false, + "description": "Return Landing Pages last updated at exactly this time. Use ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "Specify the maximum number of landing pages to return. Default is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_fields_for_results", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specifies fields for sorting results. Valid options: `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Default is `createdAt`.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_after_datetime", + "type": "string", + "required": false, + "description": "Return landing pages updated after this datetime in ISO 8601 format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/pages/landing-pages_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetLandingPages", + "parameters": { + "created_after": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "created_at_timestamp": { + "value": "2023-01-15T12:00:00Z", + "type": "string", + "required": false + }, + "created_before_timestamp": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "cursor_after_token": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "filter_by_property": { + "value": "status", + "type": "string", + "required": false + }, + "include_archived_pages": { + "value": true, + "type": "boolean", + "required": false + }, + "last_updated_before": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "last_updated_exact_time": { + "value": "2023-08-15T15:30:00Z", + "type": "string", + "required": false + }, + "max_results": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_fields_for_results": { + "value": ["name", "createdAt"], + "type": "array", + "required": false + }, + "updated_after_datetime": { + "value": "2023-02-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPreviousBlogPostVersions", + "qualifiedName": "HubspotCmsApi.GetPreviousBlogPostVersions", + "fullyQualifiedName": "HubspotCmsApi.GetPreviousBlogPostVersions@1.0.0", + "description": "Retrieve all previous versions of a blog post in HubSpot.\n\nCall this tool to access historical versions of a specific blog post using its 'objectId' in HubSpot CMS.", + "parameters": [ + { + "name": "blog_post_id", + "type": "string", + "required": true, + "description": "The unique ID of the blog post for retrieving its previous versions in HubSpot CMS.", + "enum": null, + "inferrable": true + }, + { + "name": "before_timestamp", + "type": "string", + "required": false, + "description": "The timestamp to retrieve versions updated before this time.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_limit", + "type": "integer", + "required": false, + "description": "The maximum number of blog post versions to return. Default is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_cursor", + "type": "string", + "required": false, + "description": "The cursor token to retrieve the next set of blog post versions, obtained from `paging.next.after`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/blogs/posts/{objectId}/revisions_getPreviousVersions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetPreviousBlogPostVersions", + "parameters": { + "blog_post_id": { + "value": "12345", + "type": "string", + "required": true + }, + "before_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "maximum_results_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "next_page_cursor": { + "value": "cursorToken123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPreviousFolderVersions", + "qualifiedName": "HubspotCmsApi.GetPreviousFolderVersions", + "fullyQualifiedName": "HubspotCmsApi.GetPreviousFolderVersions@1.0.0", + "description": "Retrieve previous versions of a CMS folder.\n\nThis tool retrieves all previous versions of a specified folder from the CMS. It should be called when there's a need to access or analyze the revision history of a folder.", + "parameters": [ + { + "name": "folder_id", + "type": "string", + "required": true, + "description": "The unique ID of the folder to retrieve its previous versions.", + "enum": null, + "inferrable": true + }, + { + "name": "before_token", + "type": "string", + "required": false, + "description": "A cursor token to fetch items before a certain point in the result set, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of folder versions to retrieve. Default is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_after", + "type": "string", + "required": false, + "description": "The cursor token to retrieve the next set of results from the `paging.next.after` property in a paged response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/pages/landing-pages/folders/{objectId}/revisions_getFolderPreviousVersions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetPreviousFolderVersions", + "parameters": { + "folder_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "before_token": { + "value": "token123", + "type": "string", + "required": false + }, + "max_results": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor_after": { + "value": "cursor789", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPreviousSitePageVersions", + "qualifiedName": "HubspotCmsApi.GetPreviousSitePageVersions", + "fullyQualifiedName": "HubspotCmsApi.GetPreviousSitePageVersions@1.0.0", + "description": "Retrieve previous versions of a site page.\n\nUse this tool to access all previous versions of a specific site page in HubSpot's CMS. It's helpful for tracking changes or restoring an older version.", + "parameters": [ + { + "name": "site_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Site Page to retrieve its previous versions.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_limit", + "type": "integer", + "required": false, + "description": "The maximum number of previous versions to retrieve. Defaults to 100 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "next_results_cursor", + "type": "string", + "required": false, + "description": "The cursor token to fetch the next set of site page versions. Obtain this from `paging.next.after` in the response of a previous request.", + "enum": null, + "inferrable": true + }, + { + "name": "page_version_cursor_before", + "type": "string", + "required": false, + "description": "The cursor token to get the set of results before a specific point. Useful for backward paging through results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/pages/site-pages/{objectId}/revisions_getPreviousVersions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetPreviousSitePageVersions", + "parameters": { + "site_page_id": { + "value": "abc123-def456-ghi789-jkl012", + "type": "string", + "required": true + }, + "max_results_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "next_results_cursor": { + "value": "xyz987", + "type": "string", + "required": false + }, + "page_version_cursor_before": { + "value": "pqr654", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSitePageDraft", + "qualifiedName": "HubspotCmsApi.GetSitePageDraft", + "fullyQualifiedName": "HubspotCmsApi.GetSitePageDraft@1.0.0", + "description": "Retrieve the full draft version of the Site Page.\n\nUse this tool to get the complete draft version of a specific site page by providing the page's object ID. It should be called when you need to access or review the draft content of a site page in HubSpot CMS.", + "parameters": [ + { + "name": "site_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the site page to retrieve its draft version.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/pages/site-pages/{objectId}/draft_getDraftById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetSitePageDraft", + "parameters": { + "site_page_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSitePagesList", + "qualifiedName": "HubspotCmsApi.GetSitePagesList", + "fullyQualifiedName": "HubspotCmsApi.GetSitePagesList@1.0.0", + "description": "Retrieve a list of site pages with filtering options.\n\nUse this tool to get a list of site pages, supporting both paging and filtering. Ideal for integrations that need to examine pages or use external services to suggest edits.", + "parameters": [ + { + "name": "created_at_time_filter", + "type": "string", + "required": false, + "description": "Return Site Pages created at exactly the specified time. Accepts an exact timestamp in string format.", + "enum": null, + "inferrable": true + }, + { + "name": "created_before_date_time", + "type": "string", + "required": false, + "description": "Return Site Pages created before this date-time. Use ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_created_after", + "type": "string", + "required": false, + "description": "Return Site Pages created after the specified time. Use an ISO 8601 timestamp format.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_updated_after", + "type": "string", + "required": false, + "description": "Return site pages updated after this specific time. Use ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "include_deleted_site_pages", + "type": "boolean", + "required": false, + "description": "Set to true to include deleted Site Pages in the results. Defaults to false if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "include_property_details", + "type": "string", + "required": false, + "description": "Specify the properties to include in the Site Pages results. Leave empty to include all properties.", + "enum": null, + "inferrable": true + }, + { + "name": "last_updated_before", + "type": "string", + "required": false, + "description": "Return site pages last updated before this datetime. Format: ISO 8601 string.", + "enum": null, + "inferrable": true + }, + { + "name": "last_updated_exact_time", + "type": "string", + "required": false, + "description": "Return site pages last updated at exactly the specified time in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results", + "type": "integer", + "required": false, + "description": "The maximum number of site pages to return. Default is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_cursor", + "type": "string", + "required": false, + "description": "Cursor token for paged results; use `paging.next.after` for the next set.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_fields_for_results", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify fields for sorting site pages. Options: `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Default is `createdAt`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/pages/site-pages_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetSitePagesList", + "parameters": { + "created_at_time_filter": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "created_before_date_time": { + "value": "2023-10-10T12:00:00Z", + "type": "string", + "required": false + }, + "filter_created_after": { + "value": "2023-09-01T12:00:00Z", + "type": "string", + "required": false + }, + "filter_updated_after": { + "value": "2023-09-15T12:00:00Z", + "type": "string", + "required": false + }, + "include_deleted_site_pages": { + "value": true, + "type": "boolean", + "required": false + }, + "include_property_details": { + "value": "name,createdAt,updatedAt", + "type": "string", + "required": false + }, + "last_updated_before": { + "value": "2023-10-05T12:00:00Z", + "type": "string", + "required": false + }, + "last_updated_exact_time": { + "value": "2023-10-02T12:00:00Z", + "type": "string", + "required": false + }, + "maximum_results": { + "value": 50, + "type": "integer", + "required": false + }, + "next_page_cursor": { + "value": "eyJwYWdlIjoxLCJzaXplIjowfQ==", + "type": "string", + "required": false + }, + "sort_fields_for_results": { + "value": ["updatedAt", "createdBy"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTableRow", + "qualifiedName": "HubspotCmsApi.GetTableRow", + "fullyQualifiedName": "HubspotCmsApi.GetTableRow@1.0.0", + "description": "Get a single row from a HubSpot CMS table by ID.\n\nUse this tool to retrieve a specific row from the published version of a HubSpot CMS table by providing the table ID or name and the row ID. This can be done without authentication if the table allows public access.", + "parameters": [ + { + "name": "row_id", + "type": "string", + "required": true, + "description": "The ID of the row to retrieve from the table.", + "enum": null, + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the HubSpot CMS table to retrieve the row from.", + "enum": null, + "inferrable": true + }, + { + "name": "archived", + "type": "boolean", + "required": false, + "description": "A boolean to retrieve archived rows. Set to True to include archived rows, or False to exclude them.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables/{tableIdOrName}/rows/{rowId}_getTableRow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetTableRow", + "parameters": { + "row_id": { + "value": "12345", + "type": "string", + "required": true + }, + "table_id_or_name": { + "value": "example_table", + "type": "string", + "required": true + }, + "archived": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUrlRedirectDetailsById", + "qualifiedName": "HubspotCmsApi.GetUrlRedirectDetailsById", + "fullyQualifiedName": "HubspotCmsApi.GetUrlRedirectDetailsById@1.0.0", + "description": "Retrieve details of a URL redirect by ID.\n\nUse this tool to obtain the details of a specific URL redirect by providing its ID. Ideal for managing URL redirects within HubSpot CMS.", + "parameters": [ + { + "name": "url_redirect_id", + "type": "string", + "required": true, + "description": "The ID of the target URL redirect to fetch details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/url-redirects/{urlRedirectId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.GetUrlRedirectDetailsById", + "parameters": { + "url_redirect_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "NewAbTestVariation", + "qualifiedName": "HubspotCmsApi.NewAbTestVariation", + "fullyQualifiedName": "HubspotCmsApi.NewAbTestVariation@1.0.0", + "description": "Create a new A/B test variation in HubSpot CMS.\n\nThis tool creates a new A/B test variation for a site page in HubSpot CMS using the provided details.", + "parameters": [ + { + "name": "ab_test_variation_name", + "type": "string", + "required": true, + "description": "The name for the new A/B test variation to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "object_id_to_test", + "type": "string", + "required": true, + "description": "ID of the object to be tested in the A/B test variation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/ab-test/create-variation_createABTestVariation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.NewAbTestVariation", + "parameters": { + "ab_test_variation_name": { + "value": "Landing Page Variation A", + "type": "string", + "required": true + }, + "object_id_to_test": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "NewLanguageBlogVariation", + "qualifiedName": "HubspotCmsApi.NewLanguageBlogVariation", + "fullyQualifiedName": "HubspotCmsApi.NewLanguageBlogVariation@1.0.0", + "description": "Create a new language variation from an existing blog post.\n\nUse this tool to generate a new language version of an existing blog post on HubSpot CMS. It's useful for expanding the reach of content to different language audiences.", + "parameters": [ + { + "name": "blog_post_id", + "type": "string", + "required": true, + "description": "The ID of the blog post you want to clone into a new language variation.", + "enum": null, + "inferrable": true + }, + { + "name": "target_language", + "type": "string", + "required": false, + "description": "The language code for the target language of the new blog post variation (e.g., 'fr' for French).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/multi-language/create-language-variation_createLangVariation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.NewLanguageBlogVariation", + "parameters": { + "blog_post_id": { + "value": "123456", + "type": "string", + "required": true + }, + "target_language": { + "value": "fr", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PermanentlyDeleteHubdbDraftRows", + "qualifiedName": "HubspotCmsApi.PermanentlyDeleteHubdbDraftRows", + "fullyQualifiedName": "HubspotCmsApi.PermanentlyDeleteHubdbDraftRows@1.0.0", + "description": "Permanently delete draft rows from a HubDB table.\n\nUse this tool to permanently delete rows from the draft version of a HubDB table. A maximum of 100 row IDs can be deleted per call.", + "parameters": [ + { + "name": "row_ids_to_delete", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of up to 100 row IDs to permanently delete from the draft version of the table.", + "enum": null, + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the HubDB table to target for deleting draft rows.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/rows/draft/batch/purge_purgeDraftTableRows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.PermanentlyDeleteHubdbDraftRows", + "parameters": { + "row_ids_to_delete": { + "value": ["123", "456", "789"], + "type": "array", + "required": true + }, + "table_id_or_name": { + "value": "my_hubdb_table", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PublishBlogPost", + "qualifiedName": "HubspotCmsApi.PublishBlogPost", + "fullyQualifiedName": "HubspotCmsApi.PublishBlogPost@1.0.0", + "description": "Publish a draft blog post to make it live.\n\nUse this tool to publish the draft version of a blog post, sending its content to the live page.", + "parameters": [ + { + "name": "blog_post_id", + "type": "string", + "required": true, + "description": "The unique identifier of the blog post to be published live.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/{objectId}/draft/push-live_pushLive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.PublishBlogPost", + "parameters": { + "blog_post_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PublishLandingPageDraft", + "qualifiedName": "HubspotCmsApi.PublishLandingPageDraft", + "fullyQualifiedName": "HubspotCmsApi.PublishLandingPageDraft@1.0.0", + "description": "Publish changes from a landing page draft to live.\n\nUse this tool to apply any updates made in the draft version of a HubSpot CMS landing page to its live version. Ideal for finalizing and publishing edits.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The ID of the landing page whose draft will be pushed live.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/{objectId}/draft/push-live_pushLive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.PublishLandingPageDraft", + "parameters": { + "landing_page_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PublishSitePage", + "qualifiedName": "HubspotCmsApi.PublishSitePage", + "fullyQualifiedName": "HubspotCmsApi.PublishSitePage@1.0.0", + "description": "Publish draft changes to live site page.\n\nUse this tool to apply draft changes of a site page to its live version. It should be called when you want to make the draft content public on the HubSpot CMS.", + "parameters": [ + { + "name": "site_page_id", + "type": "string", + "required": true, + "description": "The ID of the Site Page whose draft will be published live. Ensure it corresponds to the correct page in HubSpot CMS.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/{objectId}/draft/push-live_pushLive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.PublishSitePage", + "parameters": { + "site_page_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PublishTableDraft", + "qualifiedName": "HubspotCmsApi.PublishTableDraft", + "fullyQualifiedName": "HubspotCmsApi.PublishTableDraft@1.0.0", + "description": "Publish draft table to update website pages.\n\nThis tool publishes a HubSpot CMS table by copying data and schema changes from the draft to the published version. Use it to ensure that any website pages using the table are updated with the latest draft content.", + "parameters": [ + { + "name": "table_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the HubSpot CMS table to publish. This identifies which draft table's data and schema should be copied to the published version.", + "enum": null, + "inferrable": true + }, + { + "name": "include_foreign_id_values", + "type": "boolean", + "required": false, + "description": "Set to `true` to populate foreign ID values in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/draft/publish_publishDraftTable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.PublishTableDraft", + "parameters": { + "table_identifier": { + "value": "blog_posts_v1", + "type": "string", + "required": true + }, + "include_foreign_id_values": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReadHubdbTableRows", + "qualifiedName": "HubspotCmsApi.ReadHubdbTableRows", + "fullyQualifiedName": "HubspotCmsApi.ReadHubdbTableRows@1.0.0", + "description": "Retrieve rows from a published HubDB table.\n\nThis tool fetches rows from a specified HubDB table using row IDs. It can be used when the table allows public access, so no authentication is needed.", + "parameters": [ + { + "name": "hubdb_table_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the HubDB table to query. Use this to specify which table's rows to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "row_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of strings representing the row IDs to retrieve from the specified HubDB table.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/rows/batch/read_readTableRows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ReadHubdbTableRows", + "parameters": { + "hubdb_table_id_or_name": { + "value": "products_table", + "type": "string", + "required": true + }, + "row_ids": { + "value": ["row_1", "row_2", "row_3"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveBlogPost", + "qualifiedName": "HubspotCmsApi.RemoveBlogPost", + "fullyQualifiedName": "HubspotCmsApi.RemoveBlogPost@1.0.0", + "description": "Delete a blog post by its ID.\n\nThis tool removes a specific blog post using its unique ID. Use it if you need to delete content from the blog.", + "parameters": [ + { + "name": "blog_post_id", + "type": "string", + "required": true, + "description": "The unique ID of the blog post to delete. This ID identifies which specific post will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only deleted (archived) blog posts.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/cms/v3/blogs/posts/{objectId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RemoveBlogPost", + "parameters": { + "blog_post_id": { + "value": "12345-abcde-67890", + "type": "string", + "required": true + }, + "only_archived_results": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplaceDraftTableRow", + "qualifiedName": "HubspotCmsApi.ReplaceDraftTableRow", + "fullyQualifiedName": "HubspotCmsApi.ReplaceDraftTableRow@1.0.0", + "description": "Replace a row in the draft version of a HubDB table.\n\n This tool replaces a single row in the draft version of a specified HubDB table. All column values must be provided. Omitted columns will be deleted from the row.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the HubDB table to replace the row in. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "row_id", + "type": "string", + "required": false, + "description": "The unique identifier of the row to be replaced in the draft table. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/cms/v3/hubdb/tables/{tableIdOrName}/rows/{rowId}/draft_replaceDraftTableRow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ReplaceDraftTableRow", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "table_id_or_name": { + "value": "12345", + "type": "string", + "required": false + }, + "row_id": { + "value": "67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"column1\":\"value1\", \"column2\":\"value2\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplaceDraftTableRows", + "qualifiedName": "HubspotCmsApi.ReplaceDraftTableRows", + "fullyQualifiedName": "HubspotCmsApi.ReplaceDraftTableRows@1.0.0", + "description": "Batch replace rows in HubSpot CMS draft tables.\n\n This tool replaces multiple rows in the draft version of a HubSpot CMS table, allowing up to 100 rows per call. Useful for updating entries en masse in preparation for publication.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "table_identifier", + "type": "string", + "required": false, + "description": "The ID or name of the table in which you want to replace draft rows. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/rows/draft/batch/replace_replaceDraftTableRows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ReplaceDraftTableRows", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "table_identifier": { + "value": "example_table_id", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"rows\":[{\"id\":\"row1\",\"data\":{\"column1\":\"value1\",\"column2\":\"value2\"}},{\"id\":\"row2\",\"data\":{\"column1\":\"value3\",\"column2\":\"value4\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RerunPreviousAbTest", + "qualifiedName": "HubspotCmsApi.RerunPreviousAbTest", + "fullyQualifiedName": "HubspotCmsApi.RerunPreviousAbTest@1.0.0", + "description": "Rerun a previous A/B test on a landing page.\n\nInitiate the rerun of a previous A/B test for a landing page in HubSpot CMS. Use this tool when you need to repeat an A/B test to validate or compare results.", + "parameters": [ + { + "name": "test_id_to_rerun", + "type": "string", + "required": true, + "description": "Provide the ID of the test you want to rerun on the landing page.", + "enum": null, + "inferrable": true + }, + { + "name": "variation_id", + "type": "string", + "required": true, + "description": "Provide the ID of the object you wish to reactivate as a test variation. This ID is necessary to specify which variation of the landing page you intend to rerun in the A/B test.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/ab-test/rerun_rerunPreviousABTest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RerunPreviousAbTest", + "parameters": { + "test_id_to_rerun": { + "value": "12345", + "type": "string", + "required": true + }, + "variation_id": { + "value": "abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResetBlogPostDraft", + "qualifiedName": "HubspotCmsApi.ResetBlogPostDraft", + "fullyQualifiedName": "HubspotCmsApi.ResetBlogPostDraft@1.0.0", + "description": "Resets a blog post draft to the currently published content.\n\nUse this tool to discard all changes in a blog post draft and return the draft to its last published state. This can be useful when you want to undo all edits made in draft since the last publication.", + "parameters": [ + { + "name": "blog_post_id", + "type": "string", + "required": true, + "description": "The unique ID of the blog post draft that you want to reset to the published version.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/{objectId}/draft/reset_resetDraft'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ResetBlogPostDraft", + "parameters": { + "blog_post_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResetHubdbDraftToPublished", + "qualifiedName": "HubspotCmsApi.ResetHubdbDraftToPublished", + "fullyQualifiedName": "HubspotCmsApi.ResetHubdbDraftToPublished@1.0.0", + "description": "Reset HubDB draft table to match the published version.\n\nReplaces the draft version of a HubDB table with its published version, discarding any unpublished changes.", + "parameters": [ + { + "name": "table_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the HubDB table to reset to the published version.", + "enum": null, + "inferrable": true + }, + { + "name": "include_foreign_ids", + "type": "boolean", + "required": false, + "description": "Set to true to populate foreign ID values in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/draft/reset_resetDraftTable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ResetHubdbDraftToPublished", + "parameters": { + "table_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "include_foreign_ids": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResetHubspotPageDraft", + "qualifiedName": "HubspotCmsApi.ResetHubspotPageDraft", + "fullyQualifiedName": "HubspotCmsApi.ResetHubspotPageDraft@1.0.0", + "description": "Resets HubSpot CMS draft to the live version.\n\nThis tool discards any edits made to a HubSpot CMS page draft and reverts it to the last published live version. Use it to undo changes that you no longer wish to keep.", + "parameters": [ + { + "name": "site_page_id", + "type": "string", + "required": true, + "description": "The ID of the HubSpot Site Page whose draft will be reset to the live version.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/{objectId}/draft/reset_resetDraft'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ResetHubspotPageDraft", + "parameters": { + "site_page_id": { + "value": "12345-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResetLandingPageDraft", + "qualifiedName": "HubspotCmsApi.ResetLandingPageDraft", + "fullyQualifiedName": "HubspotCmsApi.ResetLandingPageDraft@1.0.0", + "description": "Reset a landing page draft to its live version.\n\nUse this tool to discard any edits made to a landing page draft and reset it to match the current live version, ensuring no changes made in the draft are preserved.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The ID of the Landing Page whose draft will be reset to the live version.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/{objectId}/draft/reset_resetDraft'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ResetLandingPageDraft", + "parameters": { + "landing_page_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RestartAbTest", + "qualifiedName": "HubspotCmsApi.RestartAbTest", + "fullyQualifiedName": "HubspotCmsApi.RestartAbTest@1.0.0", + "description": "Rerun a previous A/B test to gain new insights.\n\nUse this tool to rerun an A/B test on your HubSpot CMS site pages. It should be called when you want to repeat a previous test for additional insights or validation of results.", + "parameters": [ + { + "name": "ab_test_id", + "type": "string", + "required": true, + "description": "The unique ID of the A/B test you wish to rerun on your HubSpot CMS site pages.", + "enum": null, + "inferrable": true + }, + { + "name": "test_variation_id", + "type": "string", + "required": true, + "description": "ID of the object to reactivate as a test variation for the A/B test.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/ab-test/rerun_rerunPreviousABTest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RestartAbTest", + "parameters": { + "ab_test_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "test_variation_id": { + "value": "var-001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RestoreBlogPostToDraft", + "qualifiedName": "HubspotCmsApi.RestoreBlogPostToDraft", + "fullyQualifiedName": "HubspotCmsApi.RestoreBlogPostToDraft@1.0.0", + "description": "Restore a previous blog post version to draft.\n\nUse this tool to revert a specified version of a blog post to the draft state in HubSpot CMS. This is useful for undoing changes or reverting to a previous version of content.", + "parameters": [ + { + "name": "blog_post_id", + "type": "string", + "required": true, + "description": "The unique identifier for the blog post to be restored to a draft version. This is the same as the blog post's current ID in the HubSpot CMS.", + "enum": null, + "inferrable": true + }, + { + "name": "version_to_restore_id", + "type": "integer", + "required": true, + "description": "The ID of the blog post version to revert to the draft state.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/{objectId}/revisions/{revisionId}/restore-to-draft_restorePreviousVersionToDraft'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RestoreBlogPostToDraft", + "parameters": { + "blog_post_id": { + "value": "12345", + "type": "string", + "required": true + }, + "version_to_restore_id": { + "value": 3, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RestoreBlogPostVersion", + "qualifiedName": "HubspotCmsApi.RestoreBlogPostVersion", + "fullyQualifiedName": "HubspotCmsApi.RestoreBlogPostVersion@1.0.0", + "description": "Restore a blog post to a previous version.\n\nUse this tool to revert a blog post to an earlier saved version by providing the specific object ID and revision ID.", + "parameters": [ + { + "name": "blog_post_id", + "type": "string", + "required": true, + "description": "The ID of the blog post to be restored to a previous version.", + "enum": null, + "inferrable": true + }, + { + "name": "version_to_restore_id", + "type": "string", + "required": true, + "description": "The unique identifier of the blog post version to which you want to revert.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/{objectId}/revisions/{revisionId}/restore_restorePreviousVersion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RestoreBlogPostVersion", + "parameters": { + "blog_post_id": { + "value": "12345", + "type": "string", + "required": true + }, + "version_to_restore_id": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RestoreFolderVersion", + "qualifiedName": "HubspotCmsApi.RestoreFolderVersion", + "fullyQualifiedName": "HubspotCmsApi.RestoreFolderVersion@1.0.0", + "description": "Restore a specific version of a folder in HubSpot CMS.\n\nCall this tool to restore a folder to a specified previous version using its object and revision IDs in HubSpot CMS.", + "parameters": [ + { + "name": "folder_id", + "type": "string", + "required": true, + "description": "The unique identifier for the folder you want to restore in HubSpot CMS.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_version_id_to_restore", + "type": "string", + "required": true, + "description": "The ID of the folder version to be restored in HubSpot CMS.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/folders/{objectId}/revisions/{revisionId}/restore_restoreFolderPreviousVersion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RestoreFolderVersion", + "parameters": { + "folder_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "folder_version_id_to_restore": { + "value": "version-20231001-001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RestoreLandingPageDraft", + "qualifiedName": "HubspotCmsApi.RestoreLandingPageDraft", + "fullyQualifiedName": "HubspotCmsApi.RestoreLandingPageDraft@1.0.0", + "description": "Restore a specified landing page version to draft.\n\nThis tool restores a specified version of a landing page as the new draft version. Use it when you need to revert changes on a landing page and set a previous version as the current draft.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The ID of the landing page to restore a specific version to draft.", + "enum": null, + "inferrable": true + }, + { + "name": "landing_page_version_id_to_restore", + "type": "integer", + "required": true, + "description": "The ID of the landing page version you want to restore as the new draft.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/{objectId}/revisions/{revisionId}/restore-to-draft_restorePreviousVersionToDraft'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RestoreLandingPageDraft", + "parameters": { + "landing_page_id": { + "value": "12345", + "type": "string", + "required": true + }, + "landing_page_version_id_to_restore": { + "value": 3, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RestoreLandingPageVersion", + "qualifiedName": "HubspotCmsApi.RestoreLandingPageVersion", + "fullyQualifiedName": "HubspotCmsApi.RestoreLandingPageVersion@1.0.0", + "description": "Restore a specific version of a HubSpot landing page.\n\nThis tool restores a specified version of a landing page in HubSpot CMS. Use this when you need to revert a page to a previous version, providing the necessary identifiers.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the landing page you want to restore.", + "enum": null, + "inferrable": true + }, + { + "name": "landing_page_version_id", + "type": "string", + "required": true, + "description": "The ID of the Landing Page version to be restored.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/{objectId}/revisions/{revisionId}/restore_restorePreviousVersion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RestoreLandingPageVersion", + "parameters": { + "landing_page_id": { + "value": "123456", + "type": "string", + "required": true + }, + "landing_page_version_id": { + "value": "v1.2.3", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RestorePageVersion", + "qualifiedName": "HubspotCmsApi.RestorePageVersion", + "fullyQualifiedName": "HubspotCmsApi.RestorePageVersion@1.0.0", + "description": "Restore a specific version of a HubSpot site page.\n\nUse this tool to restore a specified version of a HubSpot site page. Ideal for undoing changes or reverting to a previous design or content state.", + "parameters": [ + { + "name": "page_version_to_restore", + "type": "string", + "required": true, + "description": "The ID of the site page version to restore. Use this to revert to a previous version.", + "enum": null, + "inferrable": true + }, + { + "name": "site_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Site Page to be restored.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/{objectId}/revisions/{revisionId}/restore_restorePreviousVersion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RestorePageVersion", + "parameters": { + "page_version_to_restore": { + "value": "123456", + "type": "string", + "required": true + }, + "site_page_id": { + "value": "abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RestoreSitePageToDraft", + "qualifiedName": "HubspotCmsApi.RestoreSitePageToDraft", + "fullyQualifiedName": "HubspotCmsApi.RestoreSitePageToDraft@1.0.0", + "description": "Restore a specific site page version to draft.\n\nUse this tool to take a specified version of a HubSpot CMS site page and set it as the new draft version. This is useful when you need to revert a page to a previously saved version.", + "parameters": [ + { + "name": "site_page_id", + "type": "string", + "required": true, + "description": "The ID of the Site Page to be restored to draft.", + "enum": null, + "inferrable": true + }, + { + "name": "site_page_version_id_to_restore", + "type": "integer", + "required": true, + "description": "The ID of the Site Page version to restore as the new draft.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/{objectId}/revisions/{revisionId}/restore-to-draft_restorePreviousVersionToDraft'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RestoreSitePageToDraft", + "parameters": { + "site_page_id": { + "value": "12345", + "type": "string", + "required": true + }, + "site_page_version_id_to_restore": { + "value": 3, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAuditLogs", + "qualifiedName": "HubspotCmsApi.RetrieveAuditLogs", + "fullyQualifiedName": "HubspotCmsApi.RetrieveAuditLogs@1.0.0", + "description": "Retrieve audit logs based on specified filters.\n\nUse this tool to obtain audit logs from HubSpot CMS, filtered according to specific criteria. This is useful for tracking changes, monitoring activity, or performing security audits.", + "parameters": [ + { + "name": "event_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of event types to filter by, such as CREATED, UPDATED, PUBLISHED, DELETED, UNPUBLISHED.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_object_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object IDs to filter the audit logs by.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_object_type", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the object types to filter audit logs by, such as BLOG, LANDING_PAGE, DOMAIN, etc. Use a comma-separated format.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_logs_to_return", + "type": "integer", + "required": false, + "description": "Specifies the number of audit logs to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify the sort direction for audit logs by timestamp, e.g., 'asc' or 'desc'.", + "enum": null, + "inferrable": true + }, + { + "name": "timestamp_after", + "type": "string", + "required": false, + "description": "Timestamp (in ISO 8601 format) after which audit logs will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "timestamp_before", + "type": "string", + "required": false, + "description": "A timestamp to filter audit logs before the specified date and time.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids_to_filter", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of user IDs to filter the audit logs by. Provide as a list of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/audit-logs/_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrieveAuditLogs", + "parameters": { + "event_types": { + "value": ["CREATED", "UPDATED"], + "type": "array", + "required": false + }, + "filter_by_object_ids": { + "value": ["12345", "67890"], + "type": "array", + "required": false + }, + "filter_by_object_type": { + "value": ["BLOG", "LANDING_PAGE"], + "type": "array", + "required": false + }, + "number_of_logs_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_direction": { + "value": ["desc"], + "type": "array", + "required": false + }, + "timestamp_after": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "timestamp_before": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "user_ids_to_filter": { + "value": ["user_1", "user_2"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBlogAuthors", + "qualifiedName": "HubspotCmsApi.RetrieveBlogAuthors", + "fullyQualifiedName": "HubspotCmsApi.RetrieveBlogAuthors@1.0.0", + "description": "Retrieve specified Blog Author objects from the CMS.\n\nUse this tool to obtain detailed information about blog authors by specifying their identifiers. This is useful for accessing author details in the HubSpot CMS.", + "parameters": [ + { + "name": "author_identifiers", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of strings representing the identifiers for the blog authors to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "include_deleted_authors", + "type": "boolean", + "required": false, + "description": "Specifies whether to include deleted Blog Authors in the results. Set to true to include them.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/authors/batch/read_readBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrieveBlogAuthors", + "parameters": { + "author_identifiers": { + "value": ["author123", "author456", "author789"], + "type": "array", + "required": true + }, + "include_deleted_authors": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBlogPostById", + "qualifiedName": "HubspotCmsApi.RetrieveBlogPostById", + "fullyQualifiedName": "HubspotCmsApi.RetrieveBlogPostById@1.0.0", + "description": "Retrieve a blog post by its ID from HubSpot CMS.\n\nThis tool retrieves the details of a specific blog post using its ID from the HubSpot CMS, ideal for accessing individual post content.", + "parameters": [ + { + "name": "blog_post_id", + "type": "string", + "required": true, + "description": "The unique identifier of the blog post to retrieve from HubSpot CMS.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_posts", + "type": "boolean", + "required": false, + "description": "If true, includes deleted (archived) blog posts in the retrieval. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "return_specific_properties", + "type": "string", + "required": false, + "description": "Comma-separated list of specific properties to retrieve from the blog post.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/blogs/posts/{objectId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrieveBlogPostById", + "parameters": { + "blog_post_id": { + "value": "12345", + "type": "string", + "required": true + }, + "include_archived_posts": { + "value": false, + "type": "boolean", + "required": false + }, + "return_specific_properties": { + "value": "title,content,author", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBlogPosts", + "qualifiedName": "HubspotCmsApi.RetrieveBlogPosts", + "fullyQualifiedName": "HubspotCmsApi.RetrieveBlogPosts@1.0.0", + "description": "Retrieve all blog posts with optional paging and filtering.\n\nUse this tool to access and browse all blog posts available, with additional options for paging and filtering. Ideal for integrating services that need to ingest blog content and suggest edits.", + "parameters": [ + { + "name": "created_after", + "type": "string", + "required": false, + "description": "Return blog posts created after the specified time. Use ISO 8601 format for the date-time.", + "enum": null, + "inferrable": true + }, + { + "name": "created_before", + "type": "string", + "required": false, + "description": "Only return blog posts created before the specified time in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_creation_time", + "type": "string", + "required": false, + "description": "Return only blog posts created at the specified time in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_update_after", + "type": "string", + "required": false, + "description": "Only return blog posts last updated after the specified timestamp. Use a format such as ISO 8601 for date and time.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_posts", + "type": "boolean", + "required": false, + "description": "Specify true to include archived (deleted) blog posts in the results. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "The maximum number of blog post results to return. Default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_token", + "type": "string", + "required": false, + "description": "The cursor token to retrieve the next set of blog post results. Obtain from `paging.next.after` in a previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "return_specific_properties", + "type": "string", + "required": false, + "description": "Comma-separated list of specific fields to return for each blog post (e.g., 'title,author,date'). Leave empty to return all fields.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_fields_for_results", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array specifying fields to sort blog posts. Use fields like `createdAt`, `name`, `updatedAt`, `createdBy`, `updatedBy`.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_at_exact", + "type": "string", + "required": false, + "description": "Return blog posts last updated at the exact specified time in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_before_date", + "type": "string", + "required": false, + "description": "Return blog posts last updated before this date. Use ISO 8601 format (e.g., '2023-09-04T15:00:00Z').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/blogs/posts_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrieveBlogPosts", + "parameters": { + "created_after": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "created_before": { + "value": "2023-12-31T23:59:59Z", + "type": "string", + "required": false + }, + "filter_by_creation_time": { + "value": "2023-06-15T00:00:00Z", + "type": "string", + "required": false + }, + "filter_by_update_after": { + "value": "2023-07-01T00:00:00Z", + "type": "string", + "required": false + }, + "include_archived_posts": { + "value": true, + "type": "boolean", + "required": false + }, + "max_results": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_cursor_token": { + "value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9", + "type": "string", + "required": false + }, + "return_specific_properties": { + "value": "title,author,date", + "type": "string", + "required": false + }, + "sort_fields_for_results": { + "value": ["createdAt", "updatedAt"], + "type": "array", + "required": false + }, + "updated_at_exact": { + "value": "2023-08-01T12:00:00Z", + "type": "string", + "required": false + }, + "updated_before_date": { + "value": "2023-09-30T23:59:59Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBlogPostsById", + "qualifiedName": "HubspotCmsApi.RetrieveBlogPostsById", + "fullyQualifiedName": "HubspotCmsApi.RetrieveBlogPostsById@1.0.0", + "description": "Retrieve a batch of blog posts by their IDs.\n\nThis tool fetches multiple blog posts from HubSpot CMS based on the IDs provided in the request body. Use it when you need to access specific blog posts using their identifiers.", + "parameters": [ + { + "name": "blog_post_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of blog post IDs to retrieve. Each ID should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_posts", + "type": "boolean", + "required": false, + "description": "Include deleted blog posts if true. Defaults to `false`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrieveBlogPostsById", + "parameters": { + "blog_post_ids": { + "value": ["12345", "67890", "54321"], + "type": "array", + "required": true + }, + "include_archived_posts": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBlogRevisionDetails", + "qualifiedName": "HubspotCmsApi.RetrieveBlogRevisionDetails", + "fullyQualifiedName": "HubspotCmsApi.RetrieveBlogRevisionDetails@1.0.0", + "description": "Retrieve specific blog revision details by ID.\n\nFetches details of a specific blog revision using the blog and revision IDs. Useful for obtaining historical settings or changes of a blog post.", + "parameters": [ + { + "name": "blog_id", + "type": "string", + "required": true, + "description": "The unique identifier for the blog post. It is required to fetch the specific revision details.", + "enum": null, + "inferrable": true + }, + { + "name": "revision_id", + "type": "string", + "required": true, + "description": "A unique string identifier for a specific blog revision to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/blog-settings/settings/{blogId}/revisions/{revisionId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrieveBlogRevisionDetails", + "parameters": { + "blog_id": { + "value": "12345", + "type": "string", + "required": true + }, + "revision_id": { + "value": "rev_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBlogSettings", + "qualifiedName": "HubspotCmsApi.RetrieveBlogSettings", + "fullyQualifiedName": "HubspotCmsApi.RetrieveBlogSettings@1.0.0", + "description": "Retrieve current blog settings from the HubSpot CMS.\n\nUse this tool to fetch and return the current configuration and settings of blogs within the HubSpot CMS.", + "parameters": [ + { + "name": "created_before", + "type": "string", + "required": false, + "description": "Retrieve blog settings created before this date. Format as 'YYYY-MM-DD'.", + "enum": null, + "inferrable": true + }, + { + "name": "created_timestamp", + "type": "string", + "required": false, + "description": "The exact timestamp when the blog settings were created, formatted as an ISO 8601 string.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_created_after_date", + "type": "string", + "required": false, + "description": "Filter settings to only include blogs created after the specified date (ISO 8601 format).", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived", + "type": "boolean", + "required": false, + "description": "Set to true to include archived blog settings and false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "max_number_of_results", + "type": "integer", + "required": false, + "description": "The maximum number of blog settings to retrieve. The value should be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A token to retrieve the next set of blog settings after the current page. Use this for paginating results.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_options", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array specifying fields to sort by, in order of priority (e.g., ['createdAt', '-updatedAt'] for ascending and descending).", + "enum": null, + "inferrable": true + }, + { + "name": "updated_after_timestamp", + "type": "string", + "required": false, + "description": "Fetch settings for blogs updated after this date and time. Use ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_at_exact_timestamp", + "type": "string", + "required": false, + "description": "Fetch blogs with this exact update timestamp. Use ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ).", + "enum": null, + "inferrable": true + }, + { + "name": "updated_before_date", + "type": "string", + "required": false, + "description": "The latest date (inclusive) to filter blog updates. Provide in 'YYYY-MM-DD' format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/blog-settings/settings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrieveBlogSettings", + "parameters": { + "created_before": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "created_timestamp": { + "value": "2022-12-25T10:00:00Z", + "type": "string", + "required": false + }, + "filter_created_after_date": { + "value": "2022-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "include_archived": { + "value": true, + "type": "boolean", + "required": false + }, + "max_number_of_results": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123token", + "type": "string", + "required": false + }, + "sort_options": { + "value": ["createdAt", "-updatedAt"], + "type": "array", + "required": false + }, + "updated_after_timestamp": { + "value": "2022-11-01T00:00:00Z", + "type": "string", + "required": false + }, + "updated_at_exact_timestamp": { + "value": "2022-12-30T14:30:00Z", + "type": "string", + "required": false + }, + "updated_before_date": { + "value": "2023-02-28", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBlogTagById", + "qualifiedName": "HubspotCmsApi.RetrieveBlogTagById", + "fullyQualifiedName": "HubspotCmsApi.RetrieveBlogTagById@1.0.0", + "description": "Retrieve blog tag details using its ID.\n\nUse this tool to get information about a blog tag by providing its unique ID. Call this tool when you need details about a specific blog tag in the HubSpot CMS.", + "parameters": [ + { + "name": "blog_tag_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Blog Tag to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_blog_tags", + "type": "boolean", + "required": false, + "description": "Specify whether to include archived blog tags in the response. Defaults to `false`.", + "enum": null, + "inferrable": true + }, + { + "name": "property_name", + "type": "string", + "required": false, + "description": "Specify a property of the blog tag to retrieve. Leave blank to get all details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/blogs/tags/{objectId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrieveBlogTagById", + "parameters": { + "blog_tag_id": { + "value": "12345", + "type": "string", + "required": true + }, + "include_archived_blog_tags": { + "value": true, + "type": "boolean", + "required": false + }, + "property_name": { + "value": "name", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBlogTags", + "qualifiedName": "HubspotCmsApi.RetrieveBlogTags", + "fullyQualifiedName": "HubspotCmsApi.RetrieveBlogTags@1.0.0", + "description": "Retrieve Blog Tag objects based on specified IDs.\n\nThis tool retrieves detailed information about specific Blog Tag objects in HubSpot CMS, identified by the IDs provided in the request.", + "parameters": [ + { + "name": "blog_tag_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of strings representing the IDs of the Blog Tag objects to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "include_deleted_tags", + "type": "boolean", + "required": false, + "description": "Boolean indicating if deleted Blog Tags should be included in the response. If true, deleted tags are returned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/tags/batch/read_readBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrieveBlogTags", + "parameters": { + "blog_tag_ids": { + "value": ["12345", "67890", "23456"], + "type": "array", + "required": true + }, + "include_deleted_tags": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFolderPreviousVersion", + "qualifiedName": "HubspotCmsApi.RetrieveFolderPreviousVersion", + "fullyQualifiedName": "HubspotCmsApi.RetrieveFolderPreviousVersion@1.0.0", + "description": "Retrieve a previous version of a folder in HubSpot CMS.\n\nUse this tool to obtain information about a specific previous version of a folder within HubSpot's CMS. Call this tool when you need to access historical data of a folder's version for reference or comparison.", + "parameters": [ + { + "name": "folder_id", + "type": "string", + "required": true, + "description": "The unique identifier for the folder whose previous version you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_version_id", + "type": "string", + "required": true, + "description": "The unique identifier for the folder version to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/pages/landing-pages/folders/{objectId}/revisions/{revisionId}_getFolderPreviousVersion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrieveFolderPreviousVersion", + "parameters": { + "folder_id": { + "value": "12345", + "type": "string", + "required": true + }, + "folder_version_id": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveIndexedDataByContentId", + "qualifiedName": "HubspotCmsApi.RetrieveIndexedDataByContentId", + "fullyQualifiedName": "HubspotCmsApi.RetrieveIndexedDataByContentId@1.0.0", + "description": "Retrieve all indexed data for a specific document by ID.\n\nUse this tool to obtain indexed data for a specific document in the HubSpot CMS, such as a page, blog post, or HubDB row, for debugging purposes.", + "parameters": [ + { + "name": "document_id", + "type": "string", + "required": true, + "description": "ID of the target document when searching for indexed properties in HubSpot CMS.", + "enum": null, + "inferrable": true + }, + { + "name": "document_type", + "type": "string", + "required": false, + "description": "Specify the document type, such as `SITE_PAGE`, `BLOG_POST`, or `KNOWLEDGE_ARTICLE`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/site-search/indexed-data/{contentId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrieveIndexedDataByContentId", + "parameters": { + "document_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "document_type": { + "value": "BLOG_POST", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLandingPages", + "qualifiedName": "HubspotCmsApi.RetrieveLandingPages", + "fullyQualifiedName": "HubspotCmsApi.RetrieveLandingPages@1.0.0", + "description": "Retrieve specified Landing Page objects from HubSpot CMS.\n\nUse this tool to obtain details of specific Landing Page objects identified by their IDs from the HubSpot CMS. Ideal for fetching batch data on landing pages for content management or analysis.", + "parameters": [ + { + "name": "landing_page_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "Array of strings, each representing a Landing Page ID to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_landing_pages", + "type": "boolean", + "required": false, + "description": "Specify whether to return deleted Landing Pages. Defaults to `false`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/batch/read_readBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrieveLandingPages", + "parameters": { + "landing_page_ids": { + "value": ["12345", "67890", "abcde"], + "type": "array", + "required": true + }, + "return_archived_landing_pages": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePreviousBlogVersion", + "qualifiedName": "HubspotCmsApi.RetrievePreviousBlogVersion", + "fullyQualifiedName": "HubspotCmsApi.RetrievePreviousBlogVersion@1.0.0", + "description": "Retrieve a previous version of a blog post.\n\nThis tool retrieves details of a specific previous version of a blog post. It is useful for accessing and reviewing earlier versions of content.", + "parameters": [ + { + "name": "blog_post_id", + "type": "string", + "required": true, + "description": "The unique identifier for the blog post whose previous version is to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "version_id", + "type": "string", + "required": true, + "description": "The ID of the specific blog post version to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/blogs/posts/{objectId}/revisions/{revisionId}_getPreviousVersion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrievePreviousBlogVersion", + "parameters": { + "blog_post_id": { + "value": "123456", + "type": "string", + "required": true + }, + "version_id": { + "value": "v1.2.3", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePreviousLandingPageVersion", + "qualifiedName": "HubspotCmsApi.RetrievePreviousLandingPageVersion", + "fullyQualifiedName": "HubspotCmsApi.RetrievePreviousLandingPageVersion@1.0.0", + "description": "Retrieve a previous version of a Landing Page.\n\nUse this tool to obtain a prior version of a landing page from HubSpot's CMS using specific object and revision IDs.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the landing page.", + "enum": null, + "inferrable": true + }, + { + "name": "landing_page_version_id", + "type": "string", + "required": true, + "description": "The ID of the landing page version to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/pages/landing-pages/{objectId}/revisions/{revisionId}_getPreviousVersion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrievePreviousLandingPageVersion", + "parameters": { + "landing_page_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "landing_page_version_id": { + "value": "version-1-98765", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePreviousSitePageVersion", + "qualifiedName": "HubspotCmsApi.RetrievePreviousSitePageVersion", + "fullyQualifiedName": "HubspotCmsApi.RetrievePreviousSitePageVersion@1.0.0", + "description": "Retrieve a previous version of a site page.\n\nUse this tool to access details of a previous revision of a site page by specifying the object and revision IDs.", + "parameters": [ + { + "name": "site_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the site page whose previous version is to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "site_page_revision_id", + "type": "string", + "required": true, + "description": "The ID of the specific revision of the site page to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/pages/site-pages/{objectId}/revisions/{revisionId}_getPreviousVersion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrievePreviousSitePageVersion", + "parameters": { + "site_page_id": { + "value": "12345", + "type": "string", + "required": true + }, + "site_page_revision_id": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSitePageById", + "qualifiedName": "HubspotCmsApi.RetrieveSitePageById", + "fullyQualifiedName": "HubspotCmsApi.RetrieveSitePageById@1.0.0", + "description": "Retrieve Site Page details by ID.\n\nThis tool retrieves the details of a Site Page object identified by its ID. It should be called when you need information about a specific Site Page.", + "parameters": [ + { + "name": "site_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Site Page to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_site_pages", + "type": "boolean", + "required": false, + "description": "Boolean indicating whether to return deleted Site Pages. Defaults to 'false'.", + "enum": null, + "inferrable": true + }, + { + "name": "site_page_property", + "type": "string", + "required": false, + "description": "Specify the property of the Site Page to return. Leave empty to retrieve all properties.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/pages/site-pages/{objectId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrieveSitePageById", + "parameters": { + "site_page_id": { + "value": "12345", + "type": "string", + "required": true + }, + "return_archived_site_pages": { + "value": false, + "type": "boolean", + "required": false + }, + "site_page_property": { + "value": "title", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSitePages", + "qualifiedName": "HubspotCmsApi.RetrieveSitePages", + "fullyQualifiedName": "HubspotCmsApi.RetrieveSitePages@1.0.0", + "description": "Retrieve Site Page objects from HubSpot CMS.\n\nUse this tool to retrieve specific Site Page objects from HubSpot CMS based on identifiers provided in the request. This is useful for accessing detailed information about multiple site pages in a batch.", + "parameters": [ + { + "name": "page_identifiers", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of strings, each representing an identifier for a Site Page to be retrieved. Use these IDs to specify which Site Pages to access.", + "enum": null, + "inferrable": true + }, + { + "name": "return_deleted_site_pages", + "type": "boolean", + "required": false, + "description": "Set to true to return deleted Site Pages; false to exclude them.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/batch/read_readBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.RetrieveSitePages", + "parameters": { + "page_identifiers": { + "value": ["page-123", "page-456", "page-789"], + "type": "array", + "required": true + }, + "return_deleted_site_pages": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ScheduleBlogPost", + "qualifiedName": "HubspotCmsApi.ScheduleBlogPost", + "fullyQualifiedName": "HubspotCmsApi.ScheduleBlogPost@1.0.0", + "description": "Schedule a blog post for future publication.\n\nThis tool is used to schedule a HubSpot CMS blog post to be published at a specific time. It should be called when you want to set a future publication date for a blog post.", + "parameters": [ + { + "name": "blog_post_id", + "type": "string", + "required": true, + "description": "The ID of the blog post to be scheduled for future publication.", + "enum": null, + "inferrable": true + }, + { + "name": "scheduled_publish_date", + "type": "string", + "required": true, + "description": "The date and time when the blog post should be published, formatted as a string (e.g., '2023-12-31T23:59:59').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/schedule_schedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ScheduleBlogPost", + "parameters": { + "blog_post_id": { + "value": "12345", + "type": "string", + "required": true + }, + "scheduled_publish_date": { + "value": "2023-12-31T23:59:59", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ScheduleLandingPage", + "qualifiedName": "HubspotCmsApi.ScheduleLandingPage", + "fullyQualifiedName": "HubspotCmsApi.ScheduleLandingPage@1.0.0", + "description": "Schedule a landing page for publication.\n\nThis tool schedules a landing page to be published, using HubSpot CMS. It is used when you need to set a specific time for your landing page to go live.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the landing page to be scheduled for publication.", + "enum": null, + "inferrable": true + }, + { + "name": "publication_date", + "type": "string", + "required": true, + "description": "The date when the landing page should be published. Use the format YYYY-MM-DD.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/schedule_schedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ScheduleLandingPage", + "parameters": { + "landing_page_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "publication_date": { + "value": "2023-12-01", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ScheduleSitePagePublication", + "qualifiedName": "HubspotCmsApi.ScheduleSitePagePublication", + "fullyQualifiedName": "HubspotCmsApi.ScheduleSitePagePublication@1.0.0", + "description": "Schedule a site page for publication at a specified time.\n\nUse this tool to set a future publication date for a site page within the HubSpot CMS. It can be used to automate the release time of new content on your website.", + "parameters": [ + { + "name": "object_id_to_schedule", + "type": "string", + "required": true, + "description": "The ID of the site page to be scheduled for publication.", + "enum": null, + "inferrable": true + }, + { + "name": "publication_date", + "type": "string", + "required": true, + "description": "The date and time when the site page should be published. Use ISO 8601 format (e.g., '2023-12-31T23:59:00Z').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/schedule_schedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.ScheduleSitePagePublication", + "parameters": { + "object_id_to_schedule": { + "value": "123456", + "type": "string", + "required": true + }, + "publication_date": { + "value": "2023-12-31T23:59:00Z", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchWebsiteContent", + "qualifiedName": "HubspotCmsApi.SearchWebsiteContent", + "fullyQualifiedName": "HubspotCmsApi.SearchWebsiteContent@1.0.0", + "description": "Search for website content on a HubSpot account.\n\nUse this tool to retrieve website content that matches specified search criteria within a HubSpot account. Filters can include content type, domain, or URL path.", + "parameters": [ + { + "name": "blog_ids_to_search", + "type": "array", + "innerType": "integer", + "required": false, + "description": "List of blog IDs to search within. Allows searching multiple blogs by their IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "boost_recent_time_window", + "type": "string", + "required": false, + "description": "A relative time window to boost scores of documents published within this period. Use '10d' for 10 days. Supported units: ms, s, m, h, d. Applicable to blog posts only.", + "enum": null, + "inferrable": true + }, + { + "name": "content_language_code", + "type": "string", + "required": false, + "description": "Specifies the language of content to be searched using a valid ISO 639-1 code (e.g. 'es' for Spanish).", + "enum": null, + "inferrable": true + }, + { + "name": "content_type_filters", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of content types to search, such as SITE_PAGE, LANDING_PAGE, BLOG_POST, LISTING_PAGE, and KNOWLEDGE_ARTICLE.", + "enum": null, + "inferrable": true + }, + { + "name": "hubdb_query_filter", + "type": "string", + "required": false, + "description": "Specify a HubDB query to filter search results in the specified table.", + "enum": null, + "inferrable": true + }, + { + "name": "hubdb_table_id", + "type": "integer", + "required": false, + "description": "Specifies a specific HubDB table to search. Only results from this table are returned. Can be combined with 'hubdb_query' for further filtering.", + "enum": null, + "inferrable": true + }, + { + "name": "invert_path_prefix_filter", + "type": "boolean", + "required": false, + "description": "Set to 'false' to apply the normal behavior of the pathPrefix filter; 'true' to invert it.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_boost_limit", + "type": "number", + "required": false, + "description": "Specifies the maximum amount a result will be boosted based on its view count. Defaults to 5.0.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Integer used to page through results. Use the offset from the previous request to access the next set of results.", + "enum": null, + "inferrable": true + }, + { + "name": "path_prefixes", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings to filter search results by URL path prefix. Only returns results with paths starting with specified prefixes.", + "enum": null, + "inferrable": true + }, + { + "name": "popularity_boost", + "type": "number", + "required": false, + "description": "Specify the boost factor for a result based on its view count. Defaults to 1.0.", + "enum": null, + "inferrable": true + }, + { + "name": "result_length", + "type": "string", + "required": false, + "description": "Specifies whether search results should be detailed (LONG) or brief (SHORT).", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit", + "type": "integer", + "required": false, + "description": "The number of search results to return. Defaults to 10 and has a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "search_domains", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of domains to match search results for. Multiple domains can be included by separating them with '&'.", + "enum": null, + "inferrable": true + }, + { + "name": "search_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to include in the search. Options: `title`, `description`, `html`. By default, all properties are searched.", + "enum": null, + "inferrable": true + }, + { + "name": "search_term", + "type": "string", + "required": false, + "description": "The term to search for in the HubSpot website content.", + "enum": null, + "inferrable": true + }, + { + "name": "show_autocomplete", + "type": "boolean", + "required": false, + "description": "Specify whether autocomplete results should be shown. Defaults to false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/cms/v3/site-search/search_search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.SearchWebsiteContent", + "parameters": { + "blog_ids_to_search": { + "value": ["12345", "67890"], + "type": "array", + "required": false + }, + "boost_recent_time_window": { + "value": "7d", + "type": "string", + "required": false + }, + "content_language_code": { + "value": "en", + "type": "string", + "required": false + }, + "content_type_filters": { + "value": ["BLOG_POST", "SITE_PAGE"], + "type": "array", + "required": false + }, + "hubdb_query_filter": { + "value": "status='published'", + "type": "string", + "required": false + }, + "hubdb_table_id": { + "value": 456, + "type": "integer", + "required": false + }, + "invert_path_prefix_filter": { + "value": false, + "type": "boolean", + "required": false + }, + "maximum_boost_limit": { + "value": 3, + "type": "integer", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "path_prefixes": { + "value": ["/blog", "/articles"], + "type": "array", + "required": false + }, + "popularity_boost": { + "value": 2, + "type": "integer", + "required": false + }, + "result_length": { + "value": "LONG", + "type": "string", + "required": false + }, + "results_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "search_domains": { + "value": ["example.com", "example.org"], + "type": "array", + "required": false + }, + "search_properties": { + "value": ["title", "description"], + "type": "array", + "required": false + }, + "search_term": { + "value": "marketing strategy", + "type": "string", + "required": false + }, + "show_autocomplete": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetBlogTagPrimaryLanguage", + "qualifiedName": "HubspotCmsApi.SetBlogTagPrimaryLanguage", + "fullyQualifiedName": "HubspotCmsApi.SetBlogTagPrimaryLanguage@1.0.0", + "description": "Set a blog tag as the primary language in a multi-language group.\n\nThis tool updates a blog tag to be the primary language within a multi-language group, ensuring content consistency across different languages.", + "parameters": [ + { + "name": "primary_language_tag_id", + "type": "string", + "required": true, + "description": "ID of the blog tag to set as the primary language in a multi-language group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/cms/v3/blogs/tags/multi-language/set-new-lang-primary_setLangPrimary'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.SetBlogTagPrimaryLanguage", + "parameters": { + "primary_language_tag_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetNewBlogPrimaryLanguage", + "qualifiedName": "HubspotCmsApi.SetNewBlogPrimaryLanguage", + "fullyQualifiedName": "HubspotCmsApi.SetNewBlogPrimaryLanguage@1.0.0", + "description": "Set a new primary language for blogs.\n\nThis tool is used to update the primary language for multi-language blog settings in HubSpot CMS. It should be called when there is a need to change the default language for blogs.", + "parameters": [ + { + "name": "primary_language_object_id", + "type": "string", + "required": true, + "description": "ID of the blog object to set as primary in the multi-language group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/cms/v3/blog-settings/settings/multi-language/set-new-lang-primary'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.SetNewBlogPrimaryLanguage", + "parameters": { + "primary_language_object_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetPrimaryLandingPageLanguage", + "qualifiedName": "HubspotCmsApi.SetPrimaryLandingPageLanguage", + "fullyQualifiedName": "HubspotCmsApi.SetPrimaryLandingPageLanguage@1.0.0", + "description": "Set a landing page as the primary language for a group.\n\nUse this tool to set a specific landing page as the primary language of a multi-language group in the HubSpot CMS.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The ID of the landing page to set as primary in the multi-language group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/cms/v3/pages/landing-pages/multi-language/set-new-lang-primary_setLangPrimary'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.SetPrimaryLandingPageLanguage", + "parameters": { + "landing_page_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetPrimaryLanguageBlogAuthor", + "qualifiedName": "HubspotCmsApi.SetPrimaryLanguageBlogAuthor", + "fullyQualifiedName": "HubspotCmsApi.SetPrimaryLanguageBlogAuthor@1.0.0", + "description": "Set a blog author as the primary language in a multilingual group.\n\nUse this tool to designate a specific blog author as the primary language author in a multi-language group within the HubSpot CMS.", + "parameters": [ + { + "name": "primary_language_author_id", + "type": "string", + "required": true, + "description": "The ID of the blog author to be set as the primary in a multi-language group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/cms/v3/blogs/authors/multi-language/set-new-lang-primary_setLangPrimary'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.SetPrimaryLanguageBlogAuthor", + "parameters": { + "primary_language_author_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetPrimaryLanguageBlogPost", + "qualifiedName": "HubspotCmsApi.SetPrimaryLanguageBlogPost", + "fullyQualifiedName": "HubspotCmsApi.SetPrimaryLanguageBlogPost@1.0.0", + "description": "Set the primary language of a blog post in a multi-language group.\n\nThis tool updates the primary language of a multi-language group to match the language of the specified blog post by its ID. It is useful when managing multilingual content on HubSpot CMS blogs.", + "parameters": [ + { + "name": "blog_post_id", + "type": "string", + "required": true, + "description": "The ID of the blog post to set as primary in its multi-language group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/cms/v3/blogs/posts/multi-language/set-new-lang-primary_setLangPrimary'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.SetPrimaryLanguageBlogPost", + "parameters": { + "blog_post_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetPrimaryLanguageForSitePage", + "qualifiedName": "HubspotCmsApi.SetPrimaryLanguageForSitePage", + "fullyQualifiedName": "HubspotCmsApi.SetPrimaryLanguageForSitePage@1.0.0", + "description": "Set a site page as the primary language of its group.\n\nThis tool is used to designate a site page as the primary language page in a multi-language group within HubSpot CMS. It should be called when a user needs to configure language settings for site pages.", + "parameters": [ + { + "name": "page_id_to_set_primary", + "type": "string", + "required": true, + "description": "The ID of the site page to set as the primary language in the multi-language group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/cms/v3/pages/site-pages/multi-language/set-new-lang-primary_setLangPrimary'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.SetPrimaryLanguageForSitePage", + "parameters": { + "page_id_to_set_primary": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TrackMediaMilestones", + "qualifiedName": "HubspotCmsApi.TrackMediaMilestones", + "fullyQualifiedName": "HubspotCmsApi.TrackMediaMilestones@1.0.0", + "description": "Log user progress milestones in media content viewing.\n\nThis tool creates an event to track when a user reaches quarterly viewing milestones in a piece of media. It should be called whenever it's necessary to log this progress for analytics or tracking purposes.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["media_bridge.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/media-bridge/v1/events/media-played-percent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.TrackMediaMilestones", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"userId\":\"12345\",\"mediaId\":\"67890\",\"milestone\":\"quarterly\",\"timestamp\":\"2023-10-01T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnpublishHubdbTable", + "qualifiedName": "HubspotCmsApi.UnpublishHubdbTable", + "fullyQualifiedName": "HubspotCmsApi.UnpublishHubdbTable@1.0.0", + "description": "Unpublish a HubDB table to stop rendering data on website pages.\n\nUse this tool to unpublish a HubDB table. This action will prevent any website pages from rendering data associated with the table.", + "parameters": [ + { + "name": "table_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the HubDB table to unpublish.", + "enum": null, + "inferrable": true + }, + { + "name": "include_foreign_ids", + "type": "boolean", + "required": false, + "description": "Set this to true to populate foreign ID values in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/unpublish_unpublishTable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UnpublishHubdbTable", + "parameters": { + "table_identifier": { + "value": "example_table_id", + "type": "string", + "required": true + }, + "include_foreign_ids": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBlogAuthor", + "qualifiedName": "HubspotCmsApi.UpdateBlogAuthor", + "fullyQualifiedName": "HubspotCmsApi.UpdateBlogAuthor@1.0.0", + "description": "Update specific details of a blog author.\n\n This tool updates specific details of a blog author using their unique ID. It should be called when you need to modify existing author information without changing all attributes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "blog_author_id", + "type": "string", + "required": false, + "description": "The unique ID of the blog author to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "update_deleted_blog_authors", + "type": "boolean", + "required": false, + "description": "Set to `true` to update deleted Blog Authors. Defaults to `false`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/cms/v3/blogs/authors/{objectId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateBlogAuthor", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "blog_author_id": { + "value": "123456", + "type": "string", + "required": false + }, + "update_deleted_blog_authors": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\": \"John Doe\", \"email\": \"john.doe@example.com\", \"bio\": \"Tech enthusiast and writer.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBlogAuthorLanguages", + "qualifiedName": "HubspotCmsApi.UpdateBlogAuthorLanguages", + "fullyQualifiedName": "HubspotCmsApi.UpdateBlogAuthorLanguages@1.0.0", + "description": "Set new languages for each blog author in a group.\n\nUse this tool to explicitly update the languages associated with each blog author in a multi-language group.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/authors/multi-language/update-languages_updateLangs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateBlogAuthorLanguages", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"authors\":[{\"id\":\"author1\",\"languages\":[\"en\",\"fr\"]},{\"id\":\"author2\",\"languages\":[\"es\",\"de\"]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBlogAuthorsBatch", + "qualifiedName": "HubspotCmsApi.UpdateBlogAuthorsBatch", + "fullyQualifiedName": "HubspotCmsApi.UpdateBlogAuthorsBatch@1.0.0", + "description": "Update multiple blog author objects at once.\n\n Use this tool to update multiple blog author objects in HubSpot CMS based on identifiers provided in the request.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "update_deleted_blog_authors", + "type": "boolean", + "required": false, + "description": "Set to true to update deleted Blog Authors. Defaults to false. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/authors/batch/update_updateBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateBlogAuthorsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "update_deleted_blog_authors": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"authors\":[{\"id\":\"1\",\"name\":\"Jane Doe\",\"email\":\"janedoe@example.com\"},{\"id\":\"2\",\"name\":\"John Smith\",\"email\":\"johnsmith@example.com\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBlogLanguages", + "qualifiedName": "HubspotCmsApi.UpdateBlogLanguages", + "fullyQualifiedName": "HubspotCmsApi.UpdateBlogLanguages@1.0.0", + "description": "Update the languages for blog settings.\n\nUse this tool to update the multi-language settings for blogs in HubSpot CMS. Call this tool when you need to modify the languages available for a blog.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blog-settings/settings/multi-language/update-languages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateBlogLanguages", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"languages\":[{\"lang\":\"en\",\"country\":\"US\"},{\"lang\":\"es\",\"country\":\"ES\"}]}\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBlogPost", + "qualifiedName": "HubspotCmsApi.UpdateBlogPost", + "fullyQualifiedName": "HubspotCmsApi.UpdateBlogPost@1.0.0", + "description": "Update specific fields of a blog post by ID.\n\n This tool updates specific fields of a blog post using its ID, requiring only the values that need to be changed. Ideal for making partial updates to existing blog content.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "blog_post_id", + "type": "string", + "required": false, + "description": "The unique identifier of the blog post to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "update_archived_posts", + "type": "boolean", + "required": false, + "description": "Set to true to update deleted (archived) blog posts. Defaults to false. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/cms/v3/blogs/posts/{objectId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateBlogPost", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "blog_post_id": { + "value": "12345", + "type": "string", + "required": false + }, + "update_archived_posts": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Blog Post Title\",\"content\":\"This is the updated content of the blog post.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBlogPostDraft", + "qualifiedName": "HubspotCmsApi.UpdateBlogPostDraft", + "fullyQualifiedName": "HubspotCmsApi.UpdateBlogPostDraft@1.0.0", + "description": "Update specific fields of a blog post draft.\n\n Use this tool to partially update the draft version of a blog post by specifying the blog post ID and the fields you wish to update.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "blog_post_id", + "type": "string", + "required": false, + "description": "The ID of the blog post draft to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/cms/v3/blogs/posts/{objectId}/draft_updateDraft'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateBlogPostDraft", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "blog_post_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Blog Post Title\", \"content\": \"This is the updated content of the blog post.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBlogPostLanguages", + "qualifiedName": "HubspotCmsApi.UpdateBlogPostLanguages", + "fullyQualifiedName": "HubspotCmsApi.UpdateBlogPostLanguages@1.0.0", + "description": "Set new languages for multi-language blog posts.\n\nUse this tool to explicitly set or update the languages for each post in a multi-language group within HubSpot's CMS. Ideal for managing content across different languages.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/multi-language/update-languages_updateLangs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateBlogPostLanguages", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"blog_post_id\": 12345, \"languages\": [\"en\", \"fr\", \"es\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBlogPostsBatch", + "qualifiedName": "HubspotCmsApi.UpdateBlogPostsBatch", + "fullyQualifiedName": "HubspotCmsApi.UpdateBlogPostsBatch@1.0.0", + "description": "Update a batch of blog posts in the CMS.\n\n Use this tool to update multiple blog posts simultaneously in the HubSpot CMS. Ideal for making bulk edits to post content or metadata.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "update_archived_posts", + "type": "boolean", + "required": false, + "description": "Indicates whether to update deleted blog posts. Defaults to `false`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateBlogPostsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "update_archived_posts": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"posts\":[{\"id\":\"123\",\"title\":\"New Title\",\"content\":\"Updated content here.\"},{\"id\":\"456\",\"title\":\"Another Title\",\"content\":\"Some more updated content.\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBlogTag", + "qualifiedName": "HubspotCmsApi.UpdateBlogTag", + "fullyQualifiedName": "HubspotCmsApi.UpdateBlogTag@1.0.0", + "description": "Update specific fields of a blog tag by its ID.\n\nThis tool updates specific fields of a single blog tag identified by its object ID. It enables partial updates, allowing changes to only the specified fields.", + "parameters": [ + { + "name": "blog_tag_id", + "type": "string", + "required": true, + "description": "The unique identifier for the blog tag to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "blog_tag_unique_id", + "type": "string", + "required": true, + "description": "The unique ID of the Blog Tag to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "created_timestamp", + "type": "string", + "required": true, + "description": "The timestamp (ISO8601 format) when the blog tag was created. This field is optional and can be used if the creation time needs to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "deleted_timestamp", + "type": "string", + "required": true, + "description": "The ISO8601 timestamp indicating when the blog tag was deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "language", + "type": "string", + "required": true, + "description": "The ISO 639 language code for the tag. Select from the available options.", + "enum": null, + "inferrable": true + }, + { + "name": "last_updated_timestamp", + "type": "string", + "required": true, + "description": "The ISO8601 timestamp when the blog tag was last updated.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_tag_translated_from_id", + "type": "integer", + "required": true, + "description": "ID of the primary tag from which this tag was translated.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_name", + "type": "string", + "required": true, + "description": "The new name for the blog tag to be updated. This is a required field when changing the tag's name.", + "enum": null, + "inferrable": true + }, + { + "name": "update_deleted_blog_tags", + "type": "boolean", + "required": false, + "description": "Set to `true` to update deleted Blog Tags. Defaults to `false`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/cms/v3/blogs/tags/{objectId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateBlogTag", + "parameters": { + "blog_tag_id": { + "value": "12345", + "type": "string", + "required": true + }, + "blog_tag_unique_id": { + "value": "unique-67890", + "type": "string", + "required": true + }, + "created_timestamp": { + "value": "2022-01-15T10:30:00Z", + "type": "string", + "required": true + }, + "deleted_timestamp": { + "value": "2023-01-15T10:30:00Z", + "type": "string", + "required": true + }, + "language": { + "value": "en", + "type": "string", + "required": true + }, + "last_updated_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": true + }, + "primary_tag_translated_from_id": { + "value": 101, + "type": "integer", + "required": true + }, + "tag_name": { + "value": "Updated Tag Name", + "type": "string", + "required": true + }, + "update_deleted_blog_tags": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBlogTagLanguages", + "qualifiedName": "HubspotCmsApi.UpdateBlogTagLanguages", + "fullyQualifiedName": "HubspotCmsApi.UpdateBlogTagLanguages@1.0.0", + "description": "Update languages for blog tags in a multi-language group.\n\nUse this tool to set new languages for each blog tag within a multi-language group in the HubSpot CMS.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/tags/multi-language/update-languages_updateLangs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateBlogTagLanguages", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"blog_tags\":[{\"id\":\"12345\",\"languages\":[{\"language\":\"en\",\"name\":\"Technology\"},{\"language\":\"es\",\"name\":\"Tecnología\"}]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBlogTags", + "qualifiedName": "HubspotCmsApi.UpdateBlogTags", + "fullyQualifiedName": "HubspotCmsApi.UpdateBlogTags@1.0.0", + "description": "Update multiple blog tags in HubSpot CMS.\n\n Use this tool to update blog tag objects identified in the request body within the HubSpot CMS. It is useful for bulk modifications of blog tags.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "update_deleted_blog_tags", + "type": "boolean", + "required": false, + "description": "Specifies whether to update deleted blog tags. Defaults to false. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/blogs/tags/batch/update_updateBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateBlogTags", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "update_deleted_blog_tags": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"tags\":[{\"id\":\"12345\",\"name\":\"New Tag 1\"},{\"id\":\"67890\",\"name\":\"New Tag 2\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateFolderObjects", + "qualifiedName": "HubspotCmsApi.UpdateFolderObjects", + "fullyQualifiedName": "HubspotCmsApi.UpdateFolderObjects@1.0.0", + "description": "Update specified folder objects in HubSpot CMS.\n\nUse this tool to update the folder objects identified in the request body within the HubSpot CMS platform. Useful for batch modifications of landing page folder metadata.", + "parameters": [ + { + "name": "folder_identifiers", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of strings identifying folder objects to update in HubSpot CMS.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_folders", + "type": "boolean", + "required": false, + "description": "Indicate whether to include archived folders in the results. Defaults to `false`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/folders/batch/read_readFolders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateFolderObjects", + "parameters": { + "folder_identifiers": { + "value": ["folder_123", "folder_456", "folder_789"], + "type": "array", + "required": true + }, + "include_archived_folders": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubdbDraftTable", + "qualifiedName": "HubspotCmsApi.UpdateHubdbDraftTable", + "fullyQualifiedName": "HubspotCmsApi.UpdateHubdbDraftTable@1.0.0", + "description": "Update or modify a HubDB table draft in HubSpot CMS.\n\n Use this tool to update an existing HubDB table by adding or removing columns, or restoring an archived table. Changes apply only to the draft version until published. Ensure all columns are included in the request to avoid deletion.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "table_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the HubDB table to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_tables", + "type": "boolean", + "required": false, + "description": "Set to true to return archived tables. Defaults to false. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "populate_foreign_ids", + "type": "boolean", + "required": false, + "description": "Set to true to populate foreign ID values in the table result. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_localized_schema", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve the localized schema of the HubDB table, if available. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/cms/v3/hubdb/tables/{tableIdOrName}/draft_updateDraftTable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateHubdbDraftTable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "table_id_or_name": { + "value": "example_table_123", + "type": "string", + "required": false + }, + "return_archived_tables": { + "value": false, + "type": "boolean", + "required": false + }, + "populate_foreign_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "retrieve_localized_schema": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"columns\":[{\"name\":\"title\",\"type\":\"text\"},{\"name\":\"description\",\"type\":\"rich_text\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubdbRowDraft", + "qualifiedName": "HubspotCmsApi.UpdateHubdbRowDraft", + "fullyQualifiedName": "HubspotCmsApi.UpdateHubdbRowDraft@1.0.0", + "description": "Update specific fields in a HubDB table's draft row.\n\n This tool updates specific fields in a HubDB table's draft row. It should be called when you need to modify only certain columns of a row in the draft version of a HubDB table. You don't have to specify all fields, only those you intend to update.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "table_identifier", + "type": "string", + "required": false, + "description": "The ID or name of the HubDB table to update the draft row in. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "row_id", + "type": "string", + "required": false, + "description": "The unique ID of the row to be updated in the draft table. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["hubdb"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/cms/v3/hubdb/tables/{tableIdOrName}/rows/{rowId}/draft_updateDraftTableRow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateHubdbRowDraft", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "table_identifier": { + "value": "123456", + "type": "string", + "required": false + }, + "row_id": { + "value": "row_7890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"column_1\": \"new value\", \"column_2\": \"another value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateLandingPage", + "qualifiedName": "HubspotCmsApi.UpdateLandingPage", + "fullyQualifiedName": "HubspotCmsApi.UpdateLandingPage@1.0.0", + "description": "Update specific fields of a landing page by ID.\n\n This tool updates a landing page in HubSpot CMS by specifying only the fields you wish to modify, identified by the page's ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "landing_page_id", + "type": "string", + "required": false, + "description": "The unique ID of the landing page to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "update_archived_pages", + "type": "boolean", + "required": false, + "description": "Set to true to update archived (deleted) Landing Pages. Defaults to false. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/cms/v3/pages/landing-pages/{objectId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateLandingPage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "landing_page_id": { + "value": "12345", + "type": "string", + "required": false + }, + "update_archived_pages": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"title\":\"New Landing Page Title\",\"content\":\"Updated content for the landing page.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateLandingPageDraft", + "qualifiedName": "HubspotCmsApi.UpdateLandingPageDraft", + "fullyQualifiedName": "HubspotCmsApi.UpdateLandingPageDraft@1.0.0", + "description": "Update draft of a specific landing page by ID.\n\n This tool updates the draft version of a landing page in HubSpot CMS. Use it when you need to make changes to an existing draft. Only the fields specified will be updated, based on the landing page ID provided.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "landing_page_id", + "type": "string", + "required": false, + "description": "The ID of the landing page to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/cms/v3/pages/landing-pages/{objectId}/draft_updateDraft'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateLandingPageDraft", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "landing_page_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Title\", \"content\": \"This is the updated content for the landing page.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateLandingPageFolder", + "qualifiedName": "HubspotCmsApi.UpdateLandingPageFolder", + "fullyQualifiedName": "HubspotCmsApi.UpdateLandingPageFolder@1.0.0", + "description": "Update specific attributes of a landing page folder.\n\nUse this tool to update specific attributes of a HubSpot CMS landing page folder, identified by its object ID. Only the column values that need modification should be specified.", + "parameters": [ + { + "name": "content_folder_unique_id", + "type": "string", + "required": true, + "description": "The unique ID of the landing page content folder to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "creation_timestamp", + "type": "string", + "required": true, + "description": "The creation timestamp of the folder in ISO8601 format. Used for reference only, typically not updated.", + "enum": null, + "inferrable": true + }, + { + "name": "deletion_timestamp_iso8601", + "type": "string", + "required": true, + "description": "The timestamp in ISO8601 format indicating when the content folder was deleted. Required for specifying deletion time.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_category", + "type": "integer", + "required": true, + "description": "Specify the object type for the folder. Must be LANDING_PAGE.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_id", + "type": "string", + "required": true, + "description": "The unique ID of the landing page folder to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_name", + "type": "string", + "required": true, + "description": "Specify the new name of the landing page folder to display in the app dashboard.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_folder_id", + "type": "integer", + "required": true, + "description": "The ID of the content folder this folder is nested under. Specify this to set a new parent folder.", + "enum": null, + "inferrable": true + }, + { + "name": "update_timestamp", + "type": "string", + "required": true, + "description": "The timestamp when the folder was last updated, in ISO8601 format. This indicates when changes were made.", + "enum": null, + "inferrable": true + }, + { + "name": "update_deleted_folders", + "type": "boolean", + "required": false, + "description": "Set to true to update folders marked as deleted. Defaults to false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/cms/v3/pages/landing-pages/folders/{objectId}_updateFolder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateLandingPageFolder", + "parameters": { + "content_folder_unique_id": { + "value": "folder-12345", + "type": "string", + "required": true + }, + "creation_timestamp": { + "value": "2023-01-01T12:00:00Z", + "type": "string", + "required": true + }, + "deletion_timestamp_iso8601": { + "value": "2023-11-01T12:00:00Z", + "type": "string", + "required": true + }, + "folder_category": { + "value": 1, + "type": "integer", + "required": true + }, + "folder_id": { + "value": "landing-folder-67890", + "type": "string", + "required": true + }, + "folder_name": { + "value": "Updated Landing Page Folder", + "type": "string", + "required": true + }, + "parent_folder_id": { + "value": 123, + "type": "integer", + "required": true + }, + "update_timestamp": { + "value": "2023-10-15T09:00:00Z", + "type": "string", + "required": true + }, + "update_deleted_folders": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateLandingPageFolders", + "qualifiedName": "HubspotCmsApi.UpdateLandingPageFolders", + "fullyQualifiedName": "HubspotCmsApi.UpdateLandingPageFolders@1.0.0", + "description": "Update multiple HubSpot CMS landing page folders.\n\n Use this tool to update the Folder objects for landing pages in HubSpot CMS as identified in the request body.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "only_include_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived folder results; false to return all folders. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/folders/batch/update_updateFolders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateLandingPageFolders", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "only_include_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"folders\":[{\"id\":\"12345\",\"name\":\"New Folder\",\"archived\":false},{\"id\":\"67890\",\"name\":\"Archived Folder\",\"archived\":true}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateLandingPageLanguages", + "qualifiedName": "HubspotCmsApi.UpdateLandingPageLanguages", + "fullyQualifiedName": "HubspotCmsApi.UpdateLandingPageLanguages@1.0.0", + "description": "Update languages for landing pages in a multi-language group.\n\nThis tool explicitly sets new languages for each landing page within a specified multi-language group. Use it when you need to modify the language settings of your HubSpot CMS landing pages.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/multi-language/update-languages_updateLangs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateLandingPageLanguages", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"multi_language_group_id\":\"12345\",\"languages\":[\"en\",\"es\",\"fr\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateLandingPagesBatch", + "qualifiedName": "HubspotCmsApi.UpdateLandingPagesBatch", + "fullyQualifiedName": "HubspotCmsApi.UpdateLandingPagesBatch@1.0.0", + "description": "Batch update landing pages in HubSpot CMS.\n\n Use this tool to update multiple landing page objects in HubSpot CMS by providing their identifiers and new data in the request body.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "update_deleted_landing_pages", + "type": "boolean", + "required": false, + "description": "Set to true to update deleted (archived) Landing Pages. Defaults to false. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/batch/update_updateBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateLandingPagesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "update_deleted_landing_pages": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"landing_pages\":[{\"id\":\"12345\",\"title\":\"New Title\",\"content\":\"Updated content here\"},{\"id\":\"67890\",\"title\":\"Another Title\",\"content\":\"More updated content\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSitePage", + "qualifiedName": "HubspotCmsApi.UpdateSitePage", + "fullyQualifiedName": "HubspotCmsApi.UpdateSitePage@1.0.0", + "description": "Update specific fields of a HubSpot site page.\n\n This tool performs a sparse update on a single site page in HubSpot CMS, modifying only the specified fields of the page identified by its ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "site_page_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Site Page to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "update_deleted_site_pages", + "type": "boolean", + "required": false, + "description": "Boolean to specify whether to update deleted Site Pages. Defaults to `false`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/cms/v3/pages/site-pages/{objectId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateSitePage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "site_page_id": { + "value": "12345", + "type": "string", + "required": false + }, + "update_deleted_site_pages": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Title\", \"content\": \"Updated content for the page.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSitePageDraft", + "qualifiedName": "HubspotCmsApi.UpdateSitePageDraft", + "fullyQualifiedName": "HubspotCmsApi.UpdateSitePageDraft@1.0.0", + "description": "Update the draft version of a specific site page.\n\n This tool updates the draft version of a single Site Page object in HubSpot CMS. Use it to modify specific fields of the draft by providing the new values. It is called when there's a need to edit an existing draft page based on its unique identifier.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "site_page_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Site Page to update the draft. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/cms/v3/pages/site-pages/{objectId}/draft_updateDraft'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateSitePageDraft", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "site_page_id": { + "value": "page-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Page Title\",\"content\":\"This is the updated content of the page.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSitePageLanguages", + "qualifiedName": "HubspotCmsApi.UpdateSitePageLanguages", + "fullyQualifiedName": "HubspotCmsApi.UpdateSitePageLanguages@1.0.0", + "description": "Set new languages for site pages in a multi-language group.\n\nUse this tool to explicitly set new languages for each site page within a multi-language group. Ideal for updating or managing different language versions of your website's pages.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/multi-language/update-languages_updateLangs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateSitePageLanguages", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"languages\":[{\"pageId\":\"12345\",\"language\":\"fr\"},{\"pageId\":\"67890\",\"language\":\"de\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSitePagesBatch", + "qualifiedName": "HubspotCmsApi.UpdateSitePagesBatch", + "fullyQualifiedName": "HubspotCmsApi.UpdateSitePagesBatch@1.0.0", + "description": "Batch update specified site pages in HubSpot CMS.\n\n Use this tool to update multiple site pages in HubSpot CMS based on identifiers provided in the request body. It should be called when you need to make bulk updates to site page objects.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "update_deleted_site_pages", + "type": "boolean", + "required": false, + "description": "Specify true to update deleted Site Pages. Defaults to false. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/batch/update_updateBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateSitePagesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "update_deleted_site_pages": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"pages\":[{\"id\":\"12345\",\"title\":\"Updated Page Title\",\"content\":\"New content for the page\",\"status\":\"publish\"},{\"id\":\"67890\",\"title\":\"Another Page Title\",\"content\":\"More new content here\",\"status\":\"draft\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateUrlRedirectSettings", + "qualifiedName": "HubspotCmsApi.UpdateUrlRedirectSettings", + "fullyQualifiedName": "HubspotCmsApi.UpdateUrlRedirectSettings@1.0.0", + "description": "Update settings for an existing URL redirect in HubSpot CMS.\n\n This tool updates the configuration of a specified URL redirect in HubSpot CMS. Use it when you need to change the destination or other settings of an existing URL redirect.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "url_redirect_id", + "type": "string", + "required": false, + "description": "The unique identifier for the URL redirect to be updated. This ID specifies which redirect's settings will be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/cms/v3/url-redirects/{urlRedirectId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCmsApi.UpdateUrlRedirectSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "url_redirect_id": { + "value": "redirect-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"newDestination\":\"https://new-destination.com\",\"status\":\"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The HubspotCmsApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotCmsApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider.", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:35:21.816Z", + "summary": "The HubspotCmsApi toolkit enables developers to integrate and manage content on the HubSpot CMS through a comprehensive set of API tools. It provides powerful functionalities ranging from creating and managing blog posts, pages, and database rows to handling multi-language content effortlessly. \n\n**Capabilities**:\n- Efficiently create, update, and delete blog posts, tags, and pages.\n- Manage HubDB tables and their drafts with bulk operations.\n- Support multi-language content management across various CMS objects.\n\n**OAuth**:\n- Provider: Unknown\n- Scopes: cms.domains.read, cms.domains.write, cms.knowledge_base.settings.read, cms.knowledge_base.settings.write, content, hubdb, media_bridge.write" +} diff --git a/data/toolkits/hubspotconversationsapi.json b/data/toolkits/hubspotconversationsapi.json new file mode 100644 index 000000000..1fb161f7e --- /dev/null +++ b/data/toolkits/hubspotconversationsapi.json @@ -0,0 +1,1284 @@ +{ + "id": "HubspotConversationsApi", + "label": "HubSpot Conversations API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the Hubspot Conversations API", + "metadata": { + "category": "sales", + "iconUrl": "https://design-system.arcade.dev/icons/hubspot.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/sales/hubspot-conversations-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": [ + "conversations.custom_channels.read", + "conversations.custom_channels.write", + "conversations.read", + "conversations.write" + ] + }, + "tools": [ + { + "name": "ArchiveConversationThread", + "qualifiedName": "HubspotConversationsApi.ArchiveConversationThread", + "fullyQualifiedName": "HubspotConversationsApi.ArchiveConversationThread@1.0.0", + "description": "Archives a conversation thread, marking it for deletion.\n\nUse this tool to archive a conversation thread, which will then be permanently deleted after 30 days. Ideal for managing conversational data efficiently by removing unnecessary threads.", + "parameters": [ + { + "name": "thread_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the conversation thread to archive. This is a required field and should match the specific thread you wish to archive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/conversations/v3/conversations/threads/{threadId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.ArchiveConversationThread", + "parameters": { + "thread_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateChannelAccount", + "qualifiedName": "HubspotConversationsApi.CreateChannelAccount", + "fullyQualifiedName": "HubspotConversationsApi.CreateChannelAccount@1.0.0", + "description": "Create a new account for a specified communication channel.\n\nThis tool is used to create a new account within a specific communication channel using Hubspot. It enables multiple accounts to communicate over a single channel with different delivery identifiers.", + "parameters": [ + { + "name": "account_name", + "type": "string", + "required": true, + "description": "The name of the account to be created for the channel. It identifies the account within the specified communication channel.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "The unique identifier for the communication channel where the account will be created. This should be a string value.", + "enum": null, + "inferrable": true + }, + { + "name": "inbox_id", + "type": "string", + "required": true, + "description": "The unique identifier for the inbox where the channel account will be created. This should be a string that corresponds to an existing inbox in Hubspot.", + "enum": null, + "inferrable": true + }, + { + "name": "is_authorized", + "type": "boolean", + "required": true, + "description": "Boolean to indicate if the account should be authorized. Set to true for authorized accounts, false otherwise.", + "enum": null, + "inferrable": true + }, + { + "name": "delivery_identifier_type", + "type": "string", + "required": false, + "description": "Type of identifier: HS_EMAIL_ADDRESS, HS_PHONE_NUMBER, or CHANNEL_SPECIFIC_OPAQUE_ID.", + "enum": null, + "inferrable": true + }, + { + "name": "delivery_identifier_value", + "type": "string", + "required": false, + "description": "A string representation of the delivery identifier. Can be an E.164 phone number, an email address, or a channel-specific identifier.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "conversations.custom_channels.write", + "conversations.custom_channels.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/conversations/v3/custom-channels/{channelId}/channel-accounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.CreateChannelAccount", + "parameters": { + "account_name": { + "value": "Customer Support Account", + "type": "string", + "required": true + }, + "channel_id": { + "value": "channel-12345", + "type": "string", + "required": true + }, + "inbox_id": { + "value": "inbox-67890", + "type": "string", + "required": true + }, + "is_authorized": { + "value": true, + "type": "boolean", + "required": true + }, + "delivery_identifier_type": { + "value": "HS_EMAIL_ADDRESS", + "type": "string", + "required": false + }, + "delivery_identifier_value": { + "value": "support@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetChannelAccountDetails", + "qualifiedName": "HubspotConversationsApi.GetChannelAccountDetails", + "fullyQualifiedName": "HubspotConversationsApi.GetChannelAccountDetails@1.0.0", + "description": "Retrieve details of a HubSpot channel account by ID.\n\nFetches detailed information about a specific HubSpot channel account using the channel account ID. Use this tool to obtain information about a channel account, such as its status and configuration.", + "parameters": [ + { + "name": "channel_account_id", + "type": "string", + "required": true, + "description": "The unique ID of the HubSpot channel account to retrieve details for. This ID is required to fetch the channel account's information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/conversations/channel-accounts/{channelAccountId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.GetChannelAccountDetails", + "parameters": { + "channel_account_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomChannelAccounts", + "qualifiedName": "HubspotConversationsApi.GetCustomChannelAccounts", + "fullyQualifiedName": "HubspotConversationsApi.GetCustomChannelAccounts@1.0.0", + "description": "Retrieve accounts for a specified custom channel.\n\nThis tool is used to fetch a list of accounts associated with a specific custom channel in Hubspot Conversations, identified by the channel ID.", + "parameters": [ + { + "name": "custom_channel_id", + "type": "string", + "required": true, + "description": "The unique identifier of the custom channel to retrieve accounts for. Must be a valid string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "conversations.custom_channels.write", + "conversations.custom_channels.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/custom-channels/{channelId}/channel-accounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.GetCustomChannelAccounts", + "parameters": { + "custom_channel_id": { + "value": "abc123-custom-channel", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomChannelMessageDetails", + "qualifiedName": "HubspotConversationsApi.GetCustomChannelMessageDetails", + "fullyQualifiedName": "HubspotConversationsApi.GetCustomChannelMessageDetails@1.0.0", + "description": "Retrieve details for a specific message in a custom channel.\n\nUse this tool to get the details of a specific message sent through a custom channel in Hubspot Conversations. Ideal for obtaining message content, sender information, and timestamps.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "The unique identifier for the custom channel from which the message was sent. Required to fetch specific message details.", + "enum": null, + "inferrable": true + }, + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The unique identifier of the message to retrieve details for. This ID is used to specify the exact message in the custom channel.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.custom_channels.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/custom-channels/{channelId}/messages/{messageId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.GetCustomChannelMessageDetails", + "parameters": { + "channel_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "message_id": { + "value": "0987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetInboxDetails", + "qualifiedName": "HubspotConversationsApi.GetInboxDetails", + "fullyQualifiedName": "HubspotConversationsApi.GetInboxDetails@1.0.0", + "description": "Retrieve details of a conversation inbox by ID.\n\nUse this tool to obtain detailed information about a specific conversation inbox by providing the inbox ID.", + "parameters": [ + { + "name": "inbox_id", + "type": "string", + "required": true, + "description": "The unique identifier for the conversation inbox you wish to retrieve details for. It should be a string representing the inbox ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/conversations/inboxes/{inboxId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.GetInboxDetails", + "parameters": { + "inbox_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMessageHistoryForThread", + "qualifiedName": "HubspotConversationsApi.GetMessageHistoryForThread", + "fullyQualifiedName": "HubspotConversationsApi.GetMessageHistoryForThread@1.0.0", + "description": "Retrieve the message history for a specific thread.\n\nThis tool retrieves the message history for a given conversation thread by its ID. It should be used when you need to access past messages of a thread in Hubspot Conversations.", + "parameters": [ + { + "name": "thread_id", + "type": "string", + "required": true, + "description": "The unique identifier for the conversation thread whose message history is to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/conversations/threads/{threadId}/messages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.GetMessageHistoryForThread", + "parameters": { + "thread_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListConversationChannels", + "qualifiedName": "HubspotConversationsApi.ListConversationChannels", + "fullyQualifiedName": "HubspotConversationsApi.ListConversationChannels@1.0.0", + "description": "Retrieve a list of conversation channels from Hubspot.\n\nUse this tool to get a list of conversation channels from Hubspot, applying optional filters and sorting if needed.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/conversations/channels'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.ListConversationChannels", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListConversationInboxes", + "qualifiedName": "HubspotConversationsApi.ListConversationInboxes", + "fullyQualifiedName": "HubspotConversationsApi.ListConversationInboxes@1.0.0", + "description": "Retrieve a list of conversation inboxes.\n\nThis tool fetches a list of conversation inboxes, allowing for optional filters and sorting to customize the results.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/conversations/inboxes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.ListConversationInboxes", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PublishCustomChannelMessage", + "qualifiedName": "HubspotConversationsApi.PublishCustomChannelMessage", + "fullyQualifiedName": "HubspotConversationsApi.PublishCustomChannelMessage@1.0.0", + "description": "Publish a message to a custom channel on HubSpot.\n\n This tool sends a message over a specified custom channel in HubSpot Conversations. Use this tool to communicate via custom-integrated messaging channels.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "custom_channel_id", + "type": "string", + "required": false, + "description": "The unique ID of the custom channel where the message will be published. Must be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.custom_channels.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/conversations/v3/custom-channels/{channelId}/messages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.PublishCustomChannelMessage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "custom_channel_id": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"message\":\"Hello, this is a test message!\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResolveConversationActors", + "qualifiedName": "HubspotConversationsApi.ResolveConversationActors", + "fullyQualifiedName": "HubspotConversationsApi.ResolveConversationActors@1.0.0", + "description": "Resolve ActorIds to conversation participants.\n\nUse this tool to retrieve detailed information about participants in a conversation given their ActorIds. Typically called when there's a need to understand who the participants in a conversation are by resolving their IDs.", + "parameters": [ + { + "name": "actor_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of Actor IDs to resolve into detailed participant information. Each entry should be a string representing an Actor ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/conversations/v3/conversations/actors/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.ResolveConversationActors", + "parameters": { + "actor_ids": { + "value": ["actor_12345", "actor_67890", "actor_54321"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveActorDetails", + "qualifiedName": "HubspotConversationsApi.RetrieveActorDetails", + "fullyQualifiedName": "HubspotConversationsApi.RetrieveActorDetails@1.0.0", + "description": "Retrieve details of a specific actor by actor ID.\n\nUse this tool to get information about a specific actor within Hubspot Conversations by providing their actor ID. It should be called when actor-specific details are needed.", + "parameters": [ + { + "name": "actor_id", + "type": "string", + "required": true, + "description": "The unique identifier for the actor whose details are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/conversations/actors/{actorId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.RetrieveActorDetails", + "parameters": { + "actor_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveChannelAccountDetails", + "qualifiedName": "HubspotConversationsApi.RetrieveChannelAccountDetails", + "fullyQualifiedName": "HubspotConversationsApi.RetrieveChannelAccountDetails@1.0.0", + "description": "Retrieve details for a specific channel account.\n\nUse this tool to get detailed metadata about a channel account, including its channel, inbox ID, and delivery identifiers. Ideal for understanding the configuration and associations of a channel account in Hubspot.", + "parameters": [ + { + "name": "channel_account_id", + "type": "string", + "required": true, + "description": "Unique identifier for the specific channel account to retrieve details about. Provided as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the channel. Used to specify which channel's account details to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "conversations.custom_channels.write", + "conversations.custom_channels.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/custom-channels/{channelId}/channel-accounts/{channelAccountId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.RetrieveChannelAccountDetails", + "parameters": { + "channel_account_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "channel_identifier": { + "value": "email_channel", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveChannelAccounts", + "qualifiedName": "HubspotConversationsApi.RetrieveChannelAccounts", + "fullyQualifiedName": "HubspotConversationsApi.RetrieveChannelAccounts@1.0.0", + "description": "Retrieve a list of channel accounts from Hubspot.\n\nThis tool calls the Hubspot Conversations API to retrieve a list of channel accounts. It supports optional filters and sorting to refine the results.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/conversations/channel-accounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.RetrieveChannelAccounts", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveChannelDetails", + "qualifiedName": "HubspotConversationsApi.RetrieveChannelDetails", + "fullyQualifiedName": "HubspotConversationsApi.RetrieveChannelDetails@1.0.0", + "description": "Retrieve details of a channel using its ID.\n\nUse this tool to get comprehensive details about a specific channel in Hubspot Conversations by providing the channel ID.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "The unique ID of the channel to retrieve details for in Hubspot Conversations.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/conversations/channels/{channelId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.RetrieveChannelDetails", + "parameters": { + "channel_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveConversationThreads", + "qualifiedName": "HubspotConversationsApi.RetrieveConversationThreads", + "fullyQualifiedName": "HubspotConversationsApi.RetrieveConversationThreads@1.0.0", + "description": "Retrieve conversation threads from Hubspot Conversations.\n\nUse this tool to fetch a list of conversation threads from Hubspot Conversations. You can apply optional filters and sorting to tailor the results.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/conversations/threads'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.RetrieveConversationThreads", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFullMessageContent", + "qualifiedName": "HubspotConversationsApi.RetrieveFullMessageContent", + "fullyQualifiedName": "HubspotConversationsApi.RetrieveFullMessageContent@1.0.0", + "description": "Retrieve the original text and rich text of a HubSpot message.\n\nUse this tool to access the full original content of a message within a conversation on HubSpot. Ideal for retrieving untruncated message details when the truncation status indicates it might be truncated.", + "parameters": [ + { + "name": "conversation_thread_id", + "type": "string", + "required": true, + "description": "The unique identifier for the conversation thread containing the message.", + "enum": null, + "inferrable": true + }, + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The unique identifier for the message. Used to retrieve the message's full original content.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/conversations/threads/{threadId}/messages/{messageId}/original-content'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.RetrieveFullMessageContent", + "parameters": { + "conversation_thread_id": { + "value": "abc12345", + "type": "string", + "required": true + }, + "message_id": { + "value": "msg98765", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveThreadById", + "qualifiedName": "HubspotConversationsApi.RetrieveThreadById", + "fullyQualifiedName": "HubspotConversationsApi.RetrieveThreadById@1.0.0", + "description": "Retrieve detailed information about a conversation thread by ID.\n\nUse this to access specific conversation threads and their details for a given thread ID.", + "parameters": [ + { + "name": "conversation_thread_id", + "type": "string", + "required": true, + "description": "The unique identifier for the conversation thread you wish to retrieve. Provide the specific thread ID to access its details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/conversations/threads/{threadId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.RetrieveThreadById", + "parameters": { + "conversation_thread_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveThreadMessage", + "qualifiedName": "HubspotConversationsApi.RetrieveThreadMessage", + "fullyQualifiedName": "HubspotConversationsApi.RetrieveThreadMessage@1.0.0", + "description": "Retrieve a single message from a conversation thread.\n\nCall this tool to get the details of a specific message within a conversation thread using the message ID. Useful for accessing conversation content for review or processing.", + "parameters": [ + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific message within a thread. Used to retrieve message details.", + "enum": null, + "inferrable": true + }, + { + "name": "thread_id", + "type": "string", + "required": true, + "description": "The unique identifier of the conversation thread from which to retrieve the message.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/conversations/v3/conversations/threads/{threadId}/messages/{messageId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.RetrieveThreadMessage", + "parameters": { + "message_id": { + "value": "12345abcd", + "type": "string", + "required": true + }, + "thread_id": { + "value": "thread-67890xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendConversationMessage", + "qualifiedName": "HubspotConversationsApi.SendConversationMessage", + "fullyQualifiedName": "HubspotConversationsApi.SendConversationMessage@1.0.0", + "description": "Send a new message in a conversation thread.\n\n Use this tool to send a new message on an existing conversation thread. Ideal for continuing discussions or replying within a thread.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "thread_id", + "type": "string", + "required": false, + "description": "The unique identifier for the conversation thread where the message will be sent. It should be a string that corresponds to the existing thread ID in Hubspot. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/conversations/v3/conversations/threads/{threadId}/messages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.SendConversationMessage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "thread_id": { + "value": "abc12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"message\":\"Hello, how can I assist you today?\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateChannelAccountInfo", + "qualifiedName": "HubspotConversationsApi.UpdateChannelAccountInfo", + "fullyQualifiedName": "HubspotConversationsApi.UpdateChannelAccountInfo@1.0.0", + "description": "Update channel account name and authorization status.\n\nUse this tool to modify the name and authorization status of a channel account in Hubspot Conversations. This is useful for managing channel accounts, including disabling them by setting the isAuthorized flag to False.", + "parameters": [ + { + "name": "channel_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the channel account to be updated. It is required for specifying which channel account to modify.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "The unique identifier for the channel in Hubspot Conversations. Required to specify which channel account to update.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_account_name", + "type": "string", + "required": false, + "description": "The new name for the channel account. This updates the display name associated with the account.", + "enum": null, + "inferrable": true + }, + { + "name": "set_authorization_status", + "type": "boolean", + "required": false, + "description": "Boolean value to update the channel account's authorization. Set to False to disable the account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "conversations.custom_channels.write", + "conversations.custom_channels.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/conversations/v3/custom-channels/{channelId}/channel-accounts/{channelAccountId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.UpdateChannelAccountInfo", + "parameters": { + "channel_account_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "channel_id": { + "value": "987654321", + "type": "string", + "required": true + }, + "channel_account_name": { + "value": "Customer Support Channel", + "type": "string", + "required": false + }, + "set_authorization_status": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateChannelAccountStaging", + "qualifiedName": "HubspotConversationsApi.UpdateChannelAccountStaging", + "fullyQualifiedName": "HubspotConversationsApi.UpdateChannelAccountStaging@1.0.0", + "description": "Update channel account staging token details for public apps.\n\nThis tool updates the account name and delivery identifier of a channel account staging token in Hubspot Conversations. Use it when you need to modify these details for a specific channel account created from a staging token.", + "parameters": [ + { + "name": "account_name", + "type": "string", + "required": true, + "description": "The name of the account to be updated for the channel account staging token.", + "enum": null, + "inferrable": true + }, + { + "name": "account_token", + "type": "string", + "required": true, + "description": "The unique token identifying the specific channel account staging. Required for updating account details.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "The unique identifier for the channel to update. This is necessary to specify which channel's staging token details are being modified.", + "enum": null, + "inferrable": true + }, + { + "name": "delivery_identifier_type", + "type": "string", + "required": true, + "description": "Type of delivery identifier: HS_EMAIL_ADDRESS, HS_PHONE_NUMBER, or CHANNEL_SPECIFIC_OPAQUE_ID.", + "enum": null, + "inferrable": true + }, + { + "name": "delivery_identifier_value", + "type": "string", + "required": true, + "description": "The PublicDeliveryIdentifier in string format, such as an E.164 phone number, an email address, or a channel-specific identifier.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "conversations.custom_channels.write", + "conversations.custom_channels.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/conversations/v3/custom-channels/{channelId}/channel-account-staging-tokens/{accountToken}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.UpdateChannelAccountStaging", + "parameters": { + "account_name": { + "value": "Example Account Inc.", + "type": "string", + "required": true + }, + "account_token": { + "value": "abc123xyz456token", + "type": "string", + "required": true + }, + "channel_id": { + "value": "channel_7890", + "type": "string", + "required": true + }, + "delivery_identifier_type": { + "value": "HS_EMAIL_ADDRESS", + "type": "string", + "required": true + }, + "delivery_identifier_value": { + "value": "contact@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateConversationThread", + "qualifiedName": "HubspotConversationsApi.UpdateConversationThread", + "fullyQualifiedName": "HubspotConversationsApi.UpdateConversationThread@1.0.0", + "description": "Update the status or restore a conversation thread.\n\nThis tool updates a single thread's status or restores it within Hubspot Conversations. Use it to change the status or restore a thread based on the thread ID provided.", + "parameters": [ + { + "name": "thread_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the conversation thread to update or restore.", + "enum": null, + "inferrable": true + }, + { + "name": "is_thread_archived", + "type": "boolean", + "required": false, + "description": "Set to true to archive or false to restore the thread. Determines if the thread is currently archived.", + "enum": null, + "inferrable": true + }, + { + "name": "thread_status", + "type": "string", + "required": false, + "description": "Set the thread's status to `OPEN` or `CLOSED`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/conversations/v3/conversations/threads/{threadId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.UpdateConversationThread", + "parameters": { + "thread_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "is_thread_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "thread_status": { + "value": "OPEN", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMessageStatus", + "qualifiedName": "HubspotConversationsApi.UpdateMessageStatus", + "fullyQualifiedName": "HubspotConversationsApi.UpdateMessageStatus@1.0.0", + "description": "Update the status of a conversation message.\n\nUse this tool to update the status of a message within a custom channel on Hubspot Conversations. It indicates whether a message was successfully sent, failed, or read. Additionally, for failed messages, you can include an error message for clarification.", + "parameters": [ + { + "name": "channel_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the custom channel where the message is located. It is required to specify which channel the message belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "message_id", + "type": "string", + "required": true, + "description": "Unique identifier of the message to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "message_status", + "type": "string", + "required": true, + "description": "Specifies the status of the message. Valid values are SENT, FAILED, and READ.", + "enum": null, + "inferrable": true + }, + { + "name": "error_message_for_failed_status", + "type": "string", + "required": false, + "description": "Provide an error message when the status is FAILED to clarify the reason for failure. Only use this when 'statusType' is 'FAILED'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["conversations.custom_channels.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/conversations/v3/custom-channels/{channelId}/messages/{messageId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotConversationsApi.UpdateMessageStatus", + "parameters": { + "channel_identifier": { + "value": "custom_channel_123", + "type": "string", + "required": true + }, + "message_id": { + "value": "msg_456", + "type": "string", + "required": true + }, + "message_status": { + "value": "FAILED", + "type": "string", + "required": true + }, + "error_message_for_failed_status": { + "value": "Network timeout on send", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The HubspotConversationsApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotConversationsApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider.", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:34:19.945Z", + "summary": "HubspotConversationsApi enables seamless interactions with HubSpot's Conversations API, allowing for efficient management of conversation data. Developers can leverage this toolkit to execute various functionalities within HubSpot Conversations directly.\n\n**Capabilities**\n- Archive and manage conversation threads for data efficiency.\n- Create and retrieve details about channel accounts and inboxes.\n- Publish and manage custom channel messages.\n- Access detailed message history and conversation participants.\n- Update statuses and configurations for conversation threads and messages.\n\n**OAuth**\n- **Provider:** Unknown \n- **Scopes:** conversations.custom_channels.read, conversations.custom_channels.write, conversations.read, conversations.write.\n\n**Secrets**\n- No secrets exist for this toolkit." +} diff --git a/data/toolkits/hubspotcrmapi.json b/data/toolkits/hubspotcrmapi.json new file mode 100644 index 000000000..c4dc175ae --- /dev/null +++ b/data/toolkits/hubspotcrmapi.json @@ -0,0 +1,34700 @@ +{ + "id": "HubspotCrmApi", + "label": "HubSpot CRM API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the Hubspot CRM API.", + "metadata": { + "category": "sales", + "iconUrl": "https://design-system.arcade.dev/icons/hubspot.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/sales/hubspot-crm-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": [ + "automation", + "cms.membership.access_groups.write", + "crm.dealsplits.read_write", + "crm.extensions_calling_transcripts.read", + "crm.extensions_calling_transcripts.write", + "crm.lists.read", + "crm.lists.write", + "crm.objects.appointments.read", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.carts.read", + "crm.objects.carts.write", + "crm.objects.commercepayments.read", + "crm.objects.commercepayments.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.companies.write", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.contacts.read", + "crm.objects.contacts.sensitive.read.v2", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.custom.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.custom.write", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.read", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.feedback_submissions.read", + "crm.objects.goals.read", + "crm.objects.goals.write", + "crm.objects.invoices.read", + "crm.objects.invoices.write", + "crm.objects.leads.read", + "crm.objects.leads.write", + "crm.objects.line_items.read", + "crm.objects.line_items.write", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.marketing_events.read", + "crm.objects.marketing_events.write", + "crm.objects.orders.read", + "crm.objects.orders.write", + "crm.objects.owners.read", + "crm.objects.partner-clients.read", + "crm.objects.partner-clients.write", + "crm.objects.partner-services.read", + "crm.objects.partner-services.write", + "crm.objects.products.read", + "crm.objects.products.write", + "crm.objects.quotes.read", + "crm.objects.quotes.write", + "crm.objects.services.read", + "crm.objects.services.write", + "crm.objects.subscriptions.read", + "crm.objects.subscriptions.write", + "crm.objects.users.read", + "crm.objects.users.write", + "crm.pipelines.orders.read", + "crm.pipelines.orders.write", + "crm.schemas.appointments.read", + "crm.schemas.appointments.write", + "crm.schemas.carts.read", + "crm.schemas.carts.write", + "crm.schemas.commercepayments.read", + "crm.schemas.commercepayments.write", + "crm.schemas.companies.read", + "crm.schemas.companies.write", + "crm.schemas.contacts.read", + "crm.schemas.contacts.write", + "crm.schemas.courses.read", + "crm.schemas.courses.write", + "crm.schemas.custom.read", + "crm.schemas.custom.write", + "crm.schemas.deals.read", + "crm.schemas.deals.write", + "crm.schemas.invoices.read", + "crm.schemas.invoices.write", + "crm.schemas.line_items.read", + "crm.schemas.listings.read", + "crm.schemas.listings.write", + "crm.schemas.orders.read", + "crm.schemas.orders.write", + "crm.schemas.quotes.read", + "crm.schemas.services.read", + "crm.schemas.services.write", + "crm.schemas.subscriptions.read", + "crm.schemas.subscriptions.write", + "e-commerce", + "media_bridge.read", + "oauth", + "tickets", + "tickets.highly_sensitive.v2", + "tickets.sensitive.v2", + "timeline" + ] + }, + "tools": [ + { + "name": "AddAllFromSourceListToDestinationList", + "qualifiedName": "HubspotCrmApi.AddAllFromSourceListToDestinationList", + "fullyQualifiedName": "HubspotCrmApi.AddAllFromSourceListToDestinationList@1.0.0", + "description": "Add records from a source list to a destination list in HubSpot.\n\nThis tool transfers all records from a specified source list to a destination list in HubSpot CRM, ignoring duplicates. Suitable for destination lists with manual or snapshot processing and source lists with fewer than 100,000 memberships.", + "parameters": [ + { + "name": "destination_list_id", + "type": "string", + "required": true, + "description": "The ILS ID of the MANUAL or SNAPSHOT destination list to which the source list records are added.", + "enum": null, + "inferrable": true + }, + { + "name": "source_list_id", + "type": "string", + "required": true, + "description": "The ILS ID of the source list from which records are added to the destination list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/v3/lists/{listId}/memberships/add-from/{sourceListId}_addAllFromList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.AddAllFromSourceListToDestinationList", + "parameters": { + "destination_list_id": { + "value": "DL123456", + "type": "string", + "required": true + }, + "source_list_id": { + "value": "SL987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddToHubspotCrmList", + "qualifiedName": "HubspotCrmApi.AddToHubspotCrmList", + "fullyQualifiedName": "HubspotCrmApi.AddToHubspotCrmList@1.0.0", + "description": "Add records to a specified HubSpot CRM list.\n\nUse this tool to add records to a specific HubSpot CRM list. Only works for lists with a processing type of MANUAL or SNAPSHOT. Records that don't exist or are already members will be ignored.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The ILS ID of the MANUAL or SNAPSHOT list to add records.", + "enum": null, + "inferrable": true + }, + { + "name": "record_ids_to_add", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of strings representing the IDs of the records to add to the list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/v3/lists/{listId}/memberships/add_add'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.AddToHubspotCrmList", + "parameters": { + "list_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "record_ids_to_add": { + "value": ["record1", "record2", "record3"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveCallInHubspot", + "qualifiedName": "HubspotCrmApi.ArchiveCallInHubspot", + "fullyQualifiedName": "HubspotCrmApi.ArchiveCallInHubspot@1.0.0", + "description": "Archive a call in HubSpot CRM by moving it to the recycle bin.\n\nUse this tool to move a specific call, identified by its `callId`, to the recycling bin in HubSpot CRM.", + "parameters": [ + { + "name": "call_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the call to be archived in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/calls/{callId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveCallInHubspot", + "parameters": { + "call_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveCallsBatch", + "qualifiedName": "HubspotCrmApi.ArchiveCallsBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveCallsBatch@1.0.0", + "description": "Archive a batch of calls by their IDs.\n\nUse this tool to archive multiple calls in HubSpot CRM by providing their IDs. Archived calls can be restored within 90 days, but call recordings are permanently deleted. Refer to HubSpot's documentation for more details on restoring activities.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/calls/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveCallsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"call_ids\":[\"12345\",\"67890\",\"54321\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveCartsBatch", + "qualifiedName": "HubspotCrmApi.ArchiveCartsBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveCartsBatch@1.0.0", + "description": "Archive multiple carts by ID in a batch operation.\n\nUse this tool to archive a batch of shopping carts by their IDs in HubSpot CRM. This is useful for managing and organizing outdated or completed carts.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.carts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/carts/batch/archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveCartsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"cart_ids\":[\"12345\",\"67890\",\"abcdef\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveCommercePaymentsBatch", + "qualifiedName": "HubspotCrmApi.ArchiveCommercePaymentsBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveCommercePaymentsBatch@1.0.0", + "description": "Archive a batch of commerce payments by ID.\n\nUse this tool to archive multiple commerce payments at once by their IDs. Ideal for managing and organizing payment data efficiently by removing outdated or unnecessary records in batches.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.commercepayments.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/commerce_payments/batch/archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveCommercePaymentsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"payment_ids\":[\"12345\",\"67890\",\"abcde\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveCommunication", + "qualifiedName": "HubspotCrmApi.ArchiveCommunication", + "fullyQualifiedName": "HubspotCrmApi.ArchiveCommunication@1.0.0", + "description": "Archive a communication by its ID.\n\nUse this tool to move a communication object to the recycling bin by specifying its ID.", + "parameters": [ + { + "name": "communication_id", + "type": "string", + "required": true, + "description": "The unique identifier for the communication object to be archived. It must be a valid string representing an existing communication ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/communications/{communicationId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveCommunication", + "parameters": { + "communication_id": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveContactsBatch", + "qualifiedName": "HubspotCrmApi.ArchiveContactsBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveContactsBatch@1.0.0", + "description": "Archive a batch of contacts by ID in HubSpot CRM.\n\nUse this tool to archive multiple contacts simultaneously in HubSpot CRM by providing their IDs. This can be useful for managing or cleaning up contact lists efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/contacts/batch/archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveContactsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"ids\":[\"12345\",\"67890\",\"112233\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveCoursesBatch", + "qualifiedName": "HubspotCrmApi.ArchiveCoursesBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveCoursesBatch@1.0.0", + "description": "Archive a batch of courses by ID.\n\nUse this tool to archive multiple courses at once by providing their IDs. This simplifies the management of courses by automating the archiving process.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.courses.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-410/batch/archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveCoursesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"course_ids\":[\"course123\",\"course456\",\"course789\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveCrmProperties", + "qualifiedName": "HubspotCrmApi.ArchiveCrmProperties", + "fullyQualifiedName": "HubspotCrmApi.ArchiveCrmProperties@1.0.0", + "description": "Archive a list of properties in HubSpot CRM.\n\n Use this tool to archive a provided list of properties within a specified object type in HubSpot CRM. It returns a confirmation of successful archiving, regardless of the properties' initial state.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "crm_object_type", + "type": "string", + "required": false, + "description": "Specify the type of CRM object (e.g., 'contacts', 'companies') for which the properties should be archived. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/properties/{objectType}/batch/archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveCrmProperties", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "crm_object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"properties\":[\"property1\",\"property2\",\"property3\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveDealInHubspot", + "qualifiedName": "HubspotCrmApi.ArchiveDealInHubspot", + "fullyQualifiedName": "HubspotCrmApi.ArchiveDealInHubspot@1.0.0", + "description": "Archives a specific deal in HubSpot CRM.\n\nUse this tool to move a deal identified by `dealId` to the recycling bin in HubSpot CRM, effectively archiving it.", + "parameters": [ + { + "name": "deal_id", + "type": "string", + "required": true, + "description": "The unique identifier of the deal to be archived in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.deals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/0-3/{dealId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveDealInHubspot", + "parameters": { + "deal_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveDiscountsBatch", + "qualifiedName": "HubspotCrmApi.ArchiveDiscountsBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveDiscountsBatch@1.0.0", + "description": "Archive a batch of discounts by their IDs in HubSpot CRM.\n\nThis tool is used to archive multiple discount objects in HubSpot CRM by providing their IDs. It should be called when there's a need to remove or deactivate several discounts at once for organizational or business purposes.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/discounts/batch/archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveDiscountsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"discount_ids\":[\"12345\",\"67890\",\"abcde\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveEmailsBatch", + "qualifiedName": "HubspotCrmApi.ArchiveEmailsBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveEmailsBatch@1.0.0", + "description": "Archive a batch of emails by their IDs.\n\nUse this tool to archive multiple emails in the HubSpot CRM by providing their unique IDs. Useful for organizing or cleaning up email records.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/emails/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveEmailsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"email_ids\":[\"12345\",\"67890\",\"24680\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveFeesBatch", + "qualifiedName": "HubspotCrmApi.ArchiveFeesBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveFeesBatch@1.0.0", + "description": "Archives a batch of fees by their IDs in HubSpot CRM.\n\nUse this tool to archive multiple fee records in HubSpot CRM by providing their IDs. Ideal for managing outdated or unnecessary fee entries efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/fees/batch/archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveFeesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"feeIds\":[\"12345\",\"67890\",\"54321\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveGoalTargetsBatch", + "qualifiedName": "HubspotCrmApi.ArchiveGoalTargetsBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveGoalTargetsBatch@1.0.0", + "description": "Archive multiple goal targets using their IDs in one batch.\n\nThis tool allows users to archive multiple goal targets in HubSpot CRM by providing their IDs. It's useful for efficiently managing goal targets that are no longer needed.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.goals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/goal_targets/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveGoalTargetsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"goal_target_ids\":[\"1234\",\"5678\",\"91011\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveHubspotLead", + "qualifiedName": "HubspotCrmApi.ArchiveHubspotLead", + "fullyQualifiedName": "HubspotCrmApi.ArchiveHubspotLead@1.0.0", + "description": "Archive a HubSpot CRM lead by identifier.\n\nUse this tool to move a HubSpot CRM lead, identified by `leadsId`, to the recycling bin. Ideal for managing and removing leads from active status.", + "parameters": [ + { + "name": "lead_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the lead to be archived in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.leads.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/leads/{leadsId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveHubspotLead", + "parameters": { + "lead_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveHubspotObjectsBatch", + "qualifiedName": "HubspotCrmApi.ArchiveHubspotObjectsBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveHubspotObjectsBatch@1.0.0", + "description": "Archive a batch of HubSpot CRM objects by ID.\n\n Use this tool to archive multiple objects in HubSpot CRM by specifying their IDs and object type, such as 'contacts' or 'companies'.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "hubspot_object_type", + "type": "string", + "required": false, + "description": "Specifies the type of HubSpot CRM objects to archive (e.g., 'contacts', 'companies'). Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/{objectType}/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveHubspotObjectsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "hubspot_object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"ids\": [123, 456, 789]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveHubspotTasks", + "qualifiedName": "HubspotCrmApi.ArchiveHubspotTasks", + "fullyQualifiedName": "HubspotCrmApi.ArchiveHubspotTasks@1.0.0", + "description": "Archive multiple HubSpot tasks by their IDs.\n\nUse this tool to archive a batch of tasks in HubSpot CRM by specifying their IDs. It should be called when you need to update the status of tasks to archived.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tasks/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveHubspotTasks", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"task_ids\":[\"123\",\"456\",\"789\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveInvoicesBatch", + "qualifiedName": "HubspotCrmApi.ArchiveInvoicesBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveInvoicesBatch@1.0.0", + "description": "Archive a batch of invoices by their IDs.\n\nUse this tool to archive multiple invoices at once by providing their IDs. It should be called when there is a need to organize or hide invoices that are no longer active or needed.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.invoices.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/invoices/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveInvoicesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"invoice_ids\":[\"inv_001\",\"inv_002\",\"inv_003\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveLeadsBatch", + "qualifiedName": "HubspotCrmApi.ArchiveLeadsBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveLeadsBatch@1.0.0", + "description": "Archive a batch of leads by ID in HubSpot CRM.\n\nUse this tool to archive multiple leads in HubSpot CRM by providing their IDs. Useful for managing large numbers of leads efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.leads.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/leads/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveLeadsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"lead_ids\": [\"12345\", \"67890\", \"ABCDE\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveLineItemsBatch", + "qualifiedName": "HubspotCrmApi.ArchiveLineItemsBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveLineItemsBatch@1.0.0", + "description": "Archive a batch of line items in HubSpot CRM.\n\nUse this tool to archive multiple line items at once by their IDs within HubSpot CRM. Ideal for managing and organizing CRM data efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/line_items/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveLineItemsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"line_item_ids\":[\"12345\",\"67890\",\"11223\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveMeetingsBatch", + "qualifiedName": "HubspotCrmApi.ArchiveMeetingsBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveMeetingsBatch@1.0.0", + "description": "Archive multiple meetings by IDs in batch.\n\nUse this tool to archive a batch of meetings by their IDs in HubSpot CRM. It is suitable for managing and cleaning up old or unnecessary meeting data efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/meetings/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveMeetingsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"meeting_ids\":[\"123\",\"456\",\"789\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveMultipleAppointments", + "qualifiedName": "HubspotCrmApi.ArchiveMultipleAppointments", + "fullyQualifiedName": "HubspotCrmApi.ArchiveMultipleAppointments@1.0.0", + "description": "Archive multiple appointments using their IDs.\n\n\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "appointment_object_type", + "type": "string", + "required": false, + "description": "The type of object to be archived, typically 'appointments' for this endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/objects/v3/{objectType}/batch/archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveMultipleAppointments", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "appointment_object_type": { + "value": "appointments", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"appointment_ids\":[\"12345\",\"67890\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveMultipleDeals", + "qualifiedName": "HubspotCrmApi.ArchiveMultipleDeals", + "fullyQualifiedName": "HubspotCrmApi.ArchiveMultipleDeals@1.0.0", + "description": "Archive multiple deals using their IDs in HubSpot CRM.\n\nThis tool is used to archive multiple deals in HubSpot CRM by providing their IDs. It should be called when there is a need to batch archive deals efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.deals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-3/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveMultipleDeals", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"deal_ids\": [\"12345\", \"67890\", \"54321\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveMultipleListings", + "qualifiedName": "HubspotCrmApi.ArchiveMultipleListings", + "fullyQualifiedName": "HubspotCrmApi.ArchiveMultipleListings@1.0.0", + "description": "Archive multiple listings using their IDs.\n\nThis tool archives multiple listings in HubSpot CRM by providing their IDs. It should be called when you need to bulk archive specific listings efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.listings.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-420/batch/archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveMultipleListings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"listingIds\":[\"12345\",\"67890\",\"54321\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveNotesBatch", + "qualifiedName": "HubspotCrmApi.ArchiveNotesBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveNotesBatch@1.0.0", + "description": "Archive a batch of notes by their IDs.\n\nUse this tool to archive multiple notes in HubSpot CRM by providing their IDs. Ideal for managing large numbers of notes that need to be archived simultaneously.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/notes/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveNotesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"noteIds\":[\"12345\",\"67890\",\"54321\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveOrdersBatch", + "qualifiedName": "HubspotCrmApi.ArchiveOrdersBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveOrdersBatch@1.0.0", + "description": "Archive a batch of orders by ID in HubSpot CRM.\n\n\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.orders.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/orders/batch/archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveOrdersBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"order_ids\":[\"12345\",\"67890\",\"abcde\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchivePostalMail", + "qualifiedName": "HubspotCrmApi.ArchivePostalMail", + "fullyQualifiedName": "HubspotCrmApi.ArchivePostalMail@1.0.0", + "description": "Archive a postal mail object in HubSpot CRM.\n\nThis tool moves a postal mail object, specified by its ID, to the recycling bin in HubSpot CRM. Use this tool when you need to archive a specific postal mail entry.", + "parameters": [ + { + "name": "postal_mail_id", + "type": "string", + "required": true, + "description": "The unique identifier of the postal mail object to be archived.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/postal_mail/{postalMailId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchivePostalMail", + "parameters": { + "postal_mail_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchivePostalMailBatch", + "qualifiedName": "HubspotCrmApi.ArchivePostalMailBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchivePostalMailBatch@1.0.0", + "description": "Archive a batch of postal mail objects using their IDs.\n\nUse this tool to archive multiple postal mail objects in HubSpot CRM by providing their IDs. This is useful for managing large volumes of mailing data efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/postal_mail/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchivePostalMailBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"postal_mail_ids\":[\"id1\",\"id2\",\"id3\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveProductsBatch", + "qualifiedName": "HubspotCrmApi.ArchiveProductsBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveProductsBatch@1.0.0", + "description": "Archive a batch of products by ID in HubSpot CRM.\n\nUse this tool to archive multiple products in HubSpot CRM by providing their IDs. It should be called when you need to bulk remove products from the CRM database.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.products.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/products/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveProductsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"product_ids\": [\"123\", \"456\", \"789\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveQuote", + "qualifiedName": "HubspotCrmApi.ArchiveQuote", + "fullyQualifiedName": "HubspotCrmApi.ArchiveQuote@1.0.0", + "description": "Archive a quote by moving it to the recycling bin.\n\nThis tool archives a quote in HubSpot CRM, identified by its `quoteId`, by moving it to the recycling bin. Use this tool when you need to delete a quote temporarily.", + "parameters": [ + { + "name": "quote_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the quote to be archived in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.quotes.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/quotes/{quoteId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveQuote", + "parameters": { + "quote_identifier": { + "value": "Q-2023-4567", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveQuotesBatch", + "qualifiedName": "HubspotCrmApi.ArchiveQuotesBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveQuotesBatch@1.0.0", + "description": "Archive a batch of quotes in HubSpot CRM.\n\nUse this tool to archive multiple quotes in HubSpot CRM by providing their IDs. It should be called when there's a need to bulk archive quotes to manage CRM records efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.quotes.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/quotes/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveQuotesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"quote_ids\":[\"12345\",\"67890\",\"54321\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveServicesBatch", + "qualifiedName": "HubspotCrmApi.ArchiveServicesBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveServicesBatch@1.0.0", + "description": "Archive multiple services using their IDs in bulk.\n\nUse this tool to archive a batch of services in the CRM by providing their IDs. This is useful for managing large sets of records efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.services.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-162/batch/archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveServicesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"service_ids\":[\"12345\",\"67890\",\"abcde\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveSubscriptionsBatch", + "qualifiedName": "HubspotCrmApi.ArchiveSubscriptionsBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveSubscriptionsBatch@1.0.0", + "description": "Archive a batch of subscriptions by ID in HubSpot CRM.\n\nUse this tool to archive multiple subscriptions at once by providing their IDs. This is useful for managing bulk subscription updates in HubSpot CRM.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/subscriptions/batch/archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveSubscriptionsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"subscriptionIds\":[\"123\", \"456\", \"789\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveTaxBatch", + "qualifiedName": "HubspotCrmApi.ArchiveTaxBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveTaxBatch@1.0.0", + "description": "Archive a batch of taxes by their IDs.\n\nThis tool archives a batch of taxes in the HubSpot CRM by their IDs. It should be called when you need to remove or deactivate multiple tax records at once.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/taxes/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveTaxBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"tax_ids\":[\"tax_001\",\"tax_002\",\"tax_003\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveUsersBatch", + "qualifiedName": "HubspotCrmApi.ArchiveUsersBatch", + "fullyQualifiedName": "HubspotCrmApi.ArchiveUsersBatch@1.0.0", + "description": "Archives a batch of users by their IDs in HubSpot CRM.\n\nUse this tool to archive multiple users at once by providing their IDs to the HubSpot CRM system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/users/batch/archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ArchiveUsersBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"user_ids\":[\"12345\",\"67890\",\"11223\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AssociatePartnerClientWithObject", + "qualifiedName": "HubspotCrmApi.AssociatePartnerClientWithObject", + "fullyQualifiedName": "HubspotCrmApi.AssociatePartnerClientWithObject@1.0.0", + "description": "Associate a partner client with another CRM object.\n\nUse this tool to create an association between a partner client and another object in the CRM system, such as a contact, company, or deal. This can help in linking related entities for better data management and relationship tracking.", + "parameters": [ + { + "name": "association_type", + "type": "string", + "required": true, + "description": "Specifies the type of association (e.g., contact, company, deal) between the partner client and the object.", + "enum": null, + "inferrable": true + }, + { + "name": "partner_client_id", + "type": "string", + "required": true, + "description": "The unique identifier for the partner client you wish to associate with another object. This should be a string representing the partner client's ID in the CRM system.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_id", + "type": "string", + "required": true, + "description": "The unique identifier of the CRM object you are associating with the partner client. This could be any valid object ID such as that of a contact, company, or deal.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_type", + "type": "string", + "required": true, + "description": "The type of the object to associate with the partner client (e.g., contact, company, deal).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-clients.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/v3/objects/partner_clients/{partnerClientId}/associations/{toObjectType}/{toObjectId}/{associationType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.AssociatePartnerClientWithObject", + "parameters": { + "association_type": { + "value": "contact", + "type": "string", + "required": true + }, + "partner_client_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "target_object_id": { + "value": "54321-zyxwv-09876-tsrqp", + "type": "string", + "required": true + }, + "target_object_type": { + "value": "company", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AssociatePartnerService", + "qualifiedName": "HubspotCrmApi.AssociatePartnerService", + "fullyQualifiedName": "HubspotCrmApi.AssociatePartnerService@1.0.0", + "description": "Associate a partner service with another CRM object.\n\nUse this tool to associate a partner service with another CRM object in HubSpot, such as contacts, companies, or deals. This is useful when you want to establish connections between different objects in your CRM.", + "parameters": [ + { + "name": "association_type", + "type": "string", + "required": true, + "description": "Specifies the type of association to create between the partner service and another object (e.g., \"owner\", \"affiliate\").", + "enum": null, + "inferrable": true + }, + { + "name": "partner_service_id", + "type": "string", + "required": true, + "description": "The identifier for the partner service to associate with another object. This should be a valid string representing the unique ID of the partner service in the CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_id", + "type": "string", + "required": true, + "description": "The ID of the target object you want to associate with the partner service. This should be a valid object ID in HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_type", + "type": "string", + "required": true, + "description": "The type of CRM object to associate with the partner service, e.g., 'contacts', 'companies', or 'deals'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-services.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/v3/objects/partner_services/{partnerServiceId}/associations/{toObjectType}/{toObjectId}/{associationType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.AssociatePartnerService", + "parameters": { + "association_type": { + "value": "owner", + "type": "string", + "required": true + }, + "partner_service_id": { + "value": "ps-12345", + "type": "string", + "required": true + }, + "target_object_id": { + "value": "obj-67890", + "type": "string", + "required": true + }, + "target_object_type": { + "value": "contacts", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BatchCreateTimelineEvents", + "qualifiedName": "HubspotCrmApi.BatchCreateTimelineEvents", + "fullyQualifiedName": "HubspotCrmApi.BatchCreateTimelineEvents@1.0.0", + "description": "Batch create multiple timeline event instances.\n\nBatch create multiple timeline events using an event template. Created events are immutable and can trigger updates to object properties if configured in the template.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.deals.write", + "crm.objects.contacts.write", + "crm.objects.companies.highly_sensitive.write.v2", + "tickets.sensitive.v2", + "tickets.highly_sensitive.v2", + "crm.schemas.companies.write", + "crm.objects.companies.write", + "tickets", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.schemas.contacts.write", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.contacts.highly_sensitive.write.v2", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/integrators/timeline/v3/events/batch/create_createBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.BatchCreateTimelineEvents", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"events\":[{\"eventType\":\"contact_creation\",\"properties\":{\"contactId\":\"123456\",\"timestamp\":\"2023-10-10T10:00:00Z\",\"details\":\"New contact created\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BatchReadAssociations", + "qualifiedName": "HubspotCrmApi.BatchReadAssociations", + "fullyQualifiedName": "HubspotCrmApi.BatchReadAssociations@1.0.0", + "description": "Retrieve batch associations between CRM object types in HubSpot.\n\n This tool retrieves a batch of association data between specified CRM object types in HubSpot, such as contacts to companies. Use it to efficiently access multiple associations at once.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "source_object_type", + "type": "string", + "required": false, + "description": "The CRM object type from which the associations originate, such as 'contacts' or 'deals'. Specify a valid CRM object type. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "destination_object_type", + "type": "string", + "required": false, + "description": "Specify the CRM object type to associate with, such as 'contacts' or 'companies'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/associations/{fromObjectType}/{toObjectType}/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.BatchReadAssociations", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "source_object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "destination_object_type": { + "value": "companies", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"ids\":[1,2,3]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BatchReadContacts", + "qualifiedName": "HubspotCrmApi.BatchReadContacts", + "fullyQualifiedName": "HubspotCrmApi.BatchReadContacts@1.0.0", + "description": "Retrieve multiple contacts using internal IDs or unique properties.\n\n Use this tool to read a batch of contacts from HubSpot CRM by providing their internal IDs or unique property values. Ideal for situations where multiple contact details are needed simultaneously.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to True to return only archived contacts. False excludes them. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/contacts/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.BatchReadContacts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"internal_ids\":[\"12345\",\"67890\"],\"unique_properties\":[{\"property\":\"email\",\"value\":\"example1@example.com\"},{\"property\":\"phone\",\"value\":\"123-456-7890\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BatchReadPartnerClients", + "qualifiedName": "HubspotCrmApi.BatchReadPartnerClients", + "fullyQualifiedName": "HubspotCrmApi.BatchReadPartnerClients@1.0.0", + "description": "Fetch batch details of partner clients in HubSpot CRM.\n\n Use this tool to retrieve information for multiple partner clients at once from HubSpot CRM. Ideal for scenarios where bulk data about partner clients is needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "include_archived", + "type": "boolean", + "required": false, + "description": "Set to true to include archived partner clients in the batch results. Default is false. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-clients.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/partner_clients/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.BatchReadPartnerClients", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "include_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"client_ids\":[\"12345\",\"67890\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BatchRetrieveHubspotRecords", + "qualifiedName": "HubspotCrmApi.BatchRetrieveHubspotRecords", + "fullyQualifiedName": "HubspotCrmApi.BatchRetrieveHubspotRecords@1.0.0", + "description": "Retrieve HubSpot CRM records using batch read.\n\n This tool retrieves records from HubSpot CRM by record ID or custom unique property in a batch. Use it when you need to access multiple entities by their specific identifiers.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "crm_object_type", + "type": "string", + "required": false, + "description": "Specify the type of CRM object to retrieve, such as 'contact', 'deal', or 'company'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. Use false to include active records. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/{objectType}/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.BatchRetrieveHubspotRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "crm_object_type": { + "value": "contact", + "type": "string", + "required": false + }, + "return_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"ids\":[\"12345\",\"67890\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BatchUpdateNotes", + "qualifiedName": "HubspotCrmApi.BatchUpdateNotes", + "fullyQualifiedName": "HubspotCrmApi.BatchUpdateNotes@1.0.0", + "description": "Update multiple notes in HubSpot CRM by ID or property.\n\nUse this tool to update a batch of notes in HubSpot CRM by their internal IDs or unique property values. Ideal for situations where multiple notes need simultaneous modifications.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/notes/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.BatchUpdateNotes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"notes\":[{\"id\":\"12345\",\"content\":\"Updated note 1\"},{\"id\":\"67890\",\"content\":\"Updated note 2\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BatchUpsertRecords", + "qualifiedName": "HubspotCrmApi.BatchUpsertRecords", + "fullyQualifiedName": "HubspotCrmApi.BatchUpsertRecords@1.0.0", + "description": "Create or update HubSpot CRM records via unique identifier.\n\nThis tool creates or updates HubSpot CRM records based on a unique property identifier specified by the `idProperty` parameter. It is useful for ensuring records are maintained accurately in the CRM.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.courses.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-410/batch/upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.BatchUpsertRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"records\":[{\"id\":\"123\",\"properties\":{\"firstname\":\"John\",\"lastname\":\"Doe\",\"email\":\"john.doe@example.com\"}},{\"id\":\"456\",\"properties\":{\"firstname\":\"Jane\",\"lastname\":\"Smith\",\"email\":\"jane.smith@example.com\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchAppointments", + "qualifiedName": "HubspotCrmApi.CreateBatchAppointments", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchAppointments@1.0.0", + "description": "Create multiple appointments in one request.\n\n This tool facilitates the creation of multiple appointments in a single API call. Use it when you need to schedule several appointments efficiently without making multiple requests.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "appointment_object_type", + "type": "string", + "required": false, + "description": "Specify the type of CRM object for the appointments, typically 'appointments'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/objects/v3/{objectType}/batch/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchAppointments", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "appointment_object_type": { + "value": "appointments", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"appointments\":[{\"start_time\":\"2023-10-01T10:00:00Z\",\"end_time\":\"2023-10-01T11:00:00Z\",\"subject\":\"Meeting with Client A\"},{\"start_time\":\"2023-10-01T12:00:00Z\",\"end_time\":\"2023-10-01T13:00:00Z\",\"subject\":\"Strategy Session\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchAssociationsHubspot", + "qualifiedName": "HubspotCrmApi.CreateBatchAssociationsHubspot", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchAssociationsHubspot@1.0.0", + "description": "Batch create associations between object types in HubSpot CRM.\n\n This tool is used to batch create associations between two specified object types in HubSpot CRM, such as associating multiple contacts with companies in one request.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "from_object_type", + "type": "string", + "required": false, + "description": "The type of the source object for the association (e.g., 'contact', 'company'). Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_type", + "type": "string", + "required": false, + "description": "The type of the object that the associations will point to (e.g., 'contacts', 'companies'). Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/associations/{fromObjectType}/{toObjectType}/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchAssociationsHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "from_object_type": { + "value": "contact", + "type": "string", + "required": false + }, + "target_object_type": { + "value": "company", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"associations\":[{\"fromId\":\"123\",\"toId\":\"456\"},{\"fromId\":\"789\",\"toId\":\"101\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchCommercePayments", + "qualifiedName": "HubspotCrmApi.CreateBatchCommercePayments", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchCommercePayments@1.0.0", + "description": "Create a batch of commerce payments in HubSpot CRM.\n\nThis tool is used to create a batch of commerce payments in the HubSpot CRM system. It should be called when there's a need to process multiple payment entries at once.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.commercepayments.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/commerce_payments/batch/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchCommercePayments", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"payments\":[{\"amount\":100,\"currency\":\"USD\",\"payment_method\":\"credit_card\",\"transaction_id\":\"txn123\"},{\"amount\":200,\"currency\":\"USD\",\"payment_method\":\"paypal\",\"transaction_id\":\"txn124\"}]}\"", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchContacts", + "qualifiedName": "HubspotCrmApi.CreateBatchContacts", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchContacts@1.0.0", + "description": "Create a batch of contacts in HubSpot CRM.\n\nUse this tool to create multiple contacts in HubSpot CRM at once. Ideal for bulk uploading contact information.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/contacts/batch/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchContacts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"contacts\":[{\"email\":\"example1@example.com\",\"firstName\":\"John\",\"lastName\":\"Doe\"},{\"email\":\"example2@example.com\",\"firstName\":\"Jane\",\"lastName\":\"Smith\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchDiscountsHubspot", + "qualifiedName": "HubspotCrmApi.CreateBatchDiscountsHubspot", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchDiscountsHubspot@1.0.0", + "description": "Create a batch of discounts in HubSpot.\n\nUse this tool to create multiple discounts simultaneously in HubSpot CRM. It should be called when batch creation of discounts is needed, providing an efficient way to manage discount entries.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/discounts/batch/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchDiscountsHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"discounts\":[{\"name\":\"Spring Sale\",\"amount\":10,\"currency\":\"USD\",\"valid_until\":\"2023-12-31\"},{\"name\":\"Summer Blowout\",\"amount\":15,\"currency\":\"USD\",\"valid_until\":\"2023-08-31\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchFees", + "qualifiedName": "HubspotCrmApi.CreateBatchFees", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchFees@1.0.0", + "description": "Create a batch of fees in HubSpot CRM.\n\nThis tool allows the creation of multiple fees in a single batch within HubSpot CRM. It should be called when there is a need to add a set of new fees to the CRM system efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/fees/batch/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchFees", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"fees\":[{\"name\":\"Monthly Subscription\",\"amount\":100,\"currency\":\"USD\"},{\"name\":\"Setup Fee\",\"amount\":50,\"currency\":\"USD\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchMeetings", + "qualifiedName": "HubspotCrmApi.CreateBatchMeetings", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchMeetings@1.0.0", + "description": "Create a batch of meetings in HubSpot CRM.\n\nUse this tool to efficiently create multiple meetings at once in HubSpot CRM. Ideal for scheduling large numbers of meetings in a single operation.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/meetings/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchMeetings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"meetings\":[{\"title\":\"Team Sync\",\"startTime\":\"2023-10-03T10:00:00Z\",\"endTime\":\"2023-10-03T11:00:00Z\",\"attendees\":[\"attendee1@example.com\",\"attendee2@example.com\"]},{\"title\":\"Client Check-in\",\"startTime\":\"2023-10-04T14:00:00Z\",\"endTime\":\"2023-10-04T15:00:00Z\",\"attendees\":[\"client@example.com\"]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchOfCalls", + "qualifiedName": "HubspotCrmApi.CreateBatchOfCalls", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchOfCalls@1.0.0", + "description": "Create a batch of calls with specified properties and associations.\n\nThis tool is used to create multiple calls at once in HubSpot CRM, specifying properties for each call and defining associations with other CRM records as needed.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/calls/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchOfCalls", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"calls\":[{\"duration\":3600,\"direction\":\"OUTBOUND\",\"to\":\"1234567890\",\"from\":\"0987654321\",\"status\":\"COMPLETED\",\"timestamp\":\"2023-09-15T09:00:00Z\"},{\"duration\":1800,\"direction\":\"INBOUND\",\"to\":\"1112223333\",\"from\":\"4445556666\",\"status\":\"COMPLETED\",\"timestamp\":\"2023-09-15T10:00:00Z\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchOfCarts", + "qualifiedName": "HubspotCrmApi.CreateBatchOfCarts", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchOfCarts@1.0.0", + "description": "Create a batch of carts efficiently in HubSpot CRM.\n\nUse this tool to create multiple shopping carts at once within HubSpot CRM. Ideal for managing cart data in bulk efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.carts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/carts/batch/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchOfCarts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"carts\":[{\"id\":\"cart1\",\"items\":[{\"productId\":\"prod1\",\"quantity\":2},{\"productId\":\"prod2\",\"quantity\":1}]},{\"id\":\"cart2\",\"items\":[{\"productId\":\"prod3\",\"quantity\":1},{\"productId\":\"prod4\",\"quantity\":3}]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchOfCompanies", + "qualifiedName": "HubspotCrmApi.CreateBatchOfCompanies", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchOfCompanies@1.0.0", + "description": "Create a batch of companies with properties and associations.\n\nThis tool allows you to create multiple companies in one request. Each company can have specific property values and can be associated with other CRM records. Use this when needing to add several companies at once along with their details and relationships.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.companies.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/companies/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchOfCompanies", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"companies\":[{\"name\":\"Company A\",\"domain\":\"companya.com\",\"properties\":{\"property1\":\"value1\",\"property2\":\"value2\"}},{\"name\":\"Company B\",\"domain\":\"companyb.com\",\"properties\":{\"property1\":\"value3\",\"property2\":\"value4\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchOfCourses", + "qualifiedName": "HubspotCrmApi.CreateBatchOfCourses", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchOfCourses@1.0.0", + "description": "Create a batch of courses in CRM.\n\nUse this tool to add multiple courses at once to HubSpot CRM. Ideal for instances where you need to create several course entries simultaneously.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.courses.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-410/batch/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchOfCourses", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"courses\":[{\"name\":\"Course A\",\"description\":\"Description A\",\"duration\":30},{\"name\":\"Course B\",\"description\":\"Description B\",\"duration\":45}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchOfEmails", + "qualifiedName": "HubspotCrmApi.CreateBatchOfEmails", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchOfEmails@1.0.0", + "description": "Create a batch of emails with specified properties.\n\nThis tool is used to create multiple emails at once in a batch, using specified properties, and returns the details of the created email objects. Ideal for situations where several emails need to be generated and saved in the CRM system at once.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/emails/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchOfEmails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"emails\":[{\"to\":\"example1@example.com\",\"subject\":\"Hello World 1\",\"body\":\"This is the body of the first email.\"},{\"to\":\"example2@example.com\",\"subject\":\"Hello World 2\",\"body\":\"This is the body of the second email.\"},{\"to\":\"example3@example.com\",\"subject\":\"Hello World 3\",\"body\":\"This is the body of the third email.\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchOfInvoices", + "qualifiedName": "HubspotCrmApi.CreateBatchOfInvoices", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchOfInvoices@1.0.0", + "description": "Create a batch of invoices swiftly.\n\nUse this tool to create multiple invoices at once in HubSpot CRM when bulk billing is required.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.invoices.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/invoices/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchOfInvoices", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"invoices\":[{\"invoice_number\":\"INV001\",\"amount\":150.75,\"currency\":\"USD\",\"customer_id\":\"CUST123\"},{\"invoice_number\":\"INV002\",\"amount\":250.50,\"currency\":\"USD\",\"customer_id\":\"CUST124\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchOfNotes", + "qualifiedName": "HubspotCrmApi.CreateBatchOfNotes", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchOfNotes@1.0.0", + "description": "Create multiple notes in a CRM batch operation.\n\nUse this tool to create a batch of notes in HubSpot CRM. Ideal for adding multiple notes efficiently in a single operation.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/notes/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchOfNotes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"notes\":[{\"content\":\"Meeting notes from client discussion\",\"associatedObjectId\":12345},{\"content\":\"Follow-up tasks for project XYZ\",\"associatedObjectId\":67890}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchOfProducts", + "qualifiedName": "HubspotCrmApi.CreateBatchOfProducts", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchOfProducts@1.0.0", + "description": "Create a batch of products in HubSpot CRM.\n\nUse this tool to add multiple products to the HubSpot CRM in a single batch. Ideal for updating product catalogs efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.products.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/products/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchOfProducts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"products\":[{\"name\":\"Product A\",\"price\":29.99,\"quantity\":100},{\"name\":\"Product B\",\"price\":49.99,\"quantity\":200}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchOfQuotes", + "qualifiedName": "HubspotCrmApi.CreateBatchOfQuotes", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchOfQuotes@1.0.0", + "description": "Creates a batch of quotes in HubSpot CRM.\n\nThis tool is used to create multiple quotes at once using HubSpot CRM's batch creation endpoint. Ideal for automating the quote generation process for multiple clients or deals.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.quotes.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/quotes/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchOfQuotes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"quotes\":[{\"client\":\"Client A\",\"amount\":1000,\"currency\":\"USD\",\"description\":\"Quote for Client A\"},{\"client\":\"Client B\",\"amount\":1500,\"currency\":\"USD\",\"description\":\"Quote for Client B\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchOfServices", + "qualifiedName": "HubspotCrmApi.CreateBatchOfServices", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchOfServices@1.0.0", + "description": "Create a batch of services in HubSpot CRM.\n\nUse this tool to create multiple service entries at once within HubSpot CRM. This is useful for efficiently managing and organizing service-related data.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.services.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-162/batch/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchOfServices", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"services\":[{\"name\":\"Consulting\",\"description\":\"Business consulting services\",\"price\":100},{\"name\":\"Training\",\"description\":\"Training services for teams\",\"price\":200}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchOrders", + "qualifiedName": "HubspotCrmApi.CreateBatchOrders", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchOrders@1.0.0", + "description": "Create a batch of orders in HubSpot CRM.\n\nUse this tool to create multiple orders at once in HubSpot CRM. It is suitable when you need to efficiently process and record several orders simultaneously.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.orders.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/orders/batch/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchOrders", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"orders\":[{\"order_id\":\"12345\",\"customer_id\":\"67890\",\"amount\":250.75},{\"order_id\":\"12346\",\"customer_id\":\"67891\",\"amount\":175.50}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchProperties", + "qualifiedName": "HubspotCrmApi.CreateBatchProperties", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchProperties@1.0.0", + "description": "Create a batch of properties for a specified object type in HubSpot.\n\n This tool facilitates the creation of multiple properties at once for any specified object type in HubSpot CRM, using the standard rules applied to individual property creation.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": false, + "description": "Specifies the type of CRM object for which to create properties (e.g., contacts, deals, companies). Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/properties/{objectType}/batch/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchProperties", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"properties\":[{\"name\":\"email\",\"label\":\"Email Address\",\"type\":\"string\",\"fieldType\":\"text\",\"groupName\":\"contactinformation\",\"formField\":true},{\"name\":\"phone\",\"label\":\"Phone Number\",\"type\":\"string\",\"fieldType\":\"text\",\"groupName\":\"contactinformation\",\"formField\":true}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchSubscriptions", + "qualifiedName": "HubspotCrmApi.CreateBatchSubscriptions", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchSubscriptions@1.0.0", + "description": "Create a batch of subscriptions in HubSpot CRM.\n\nThis tool is used to create multiple subscriptions at once in HubSpot CRM. Call this tool when you need to add several subscriptions simultaneously.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/subscriptions/batch/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchSubscriptions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"subscriptions\":[{\"email\":\"user1@example.com\",\"listId\":\"12345\"},{\"email\":\"user2@example.com\",\"listId\":\"12346\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchTasks", + "qualifiedName": "HubspotCrmApi.CreateBatchTasks", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchTasks@1.0.0", + "description": "Create a batch of tasks in HubSpot CRM.\n\nThis tool is used to create multiple tasks at once in HubSpot CRM, streamlining task management processes.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tasks/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchTasks", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"tasks\":[{\"title\":\"Follow up with lead\",\"due_date\":\"2023-10-15T10:00:00Z\",\"owner_id\":12345},{\"title\":\"Send proposal\",\"due_date\":\"2023-10-16T11:00:00Z\",\"owner_id\":67890}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchTickets", + "qualifiedName": "HubspotCrmApi.CreateBatchTickets", + "fullyQualifiedName": "HubspotCrmApi.CreateBatchTickets@1.0.0", + "description": "Create a batch of tickets in HubSpot CRM.\n\nUse this tool to create multiple tickets in HubSpot CRM at once. You can specify property values for each ticket and define associations with other CRM records.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tickets"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tickets/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateBatchTickets", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"tickets\":[{\"subject\":\"Issue with product\",\"description\":\"Customer reported an issue with the product.\",\"status\":\"open\"},{\"subject\":\"Billing Inquiry\",\"description\":\"Customer has a question about their bill.\",\"status\":\"pending\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCartHubspotCrm", + "qualifiedName": "HubspotCrmApi.CreateCartHubspotCrm", + "fullyQualifiedName": "HubspotCrmApi.CreateCartHubspotCrm@1.0.0", + "description": "Create a cart and retrieve its details including ID.\n\nUse this tool to create a new cart in HubSpot CRM with specified properties. It returns a detailed cart object including its unique ID. Ideal for setting up new customer carts.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.carts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/carts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateCartHubspotCrm", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"customer_id\": \"12345\", \"items\": [{\"product_id\": \"abc\", \"quantity\": 2}, {\"product_id\": \"def\", \"quantity\": 1}], \"currency\": \"USD\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCommercePayment", + "qualifiedName": "HubspotCrmApi.CreateCommercePayment", + "fullyQualifiedName": "HubspotCrmApi.CreateCommercePayment@1.0.0", + "description": "Create a commerce payment and return its details.\n\nUse this tool to create a new commerce payment in the HubSpot CRM. It returns the details of the payment, including the unique ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.commercepayments.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/commerce_payments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateCommercePayment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"amount\": 100.0, \"currency\": \"USD\", \"payment_method\": \"credit_card\", \"description\": \"Payment for services\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCompanyHubspot", + "qualifiedName": "HubspotCrmApi.CreateCompanyHubspot", + "fullyQualifiedName": "HubspotCrmApi.CreateCompanyHubspot@1.0.0", + "description": "Create a new company in HubSpot CRM.\n\nUse this tool to create a single company in HubSpot CRM. It allows you to define property values for the company and specify associations with other CRM records. Ideal for organizing and managing company information efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.companies.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/companies_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateCompanyHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Acme Corporation\",\"domain\":\"acmecorp.com\",\"properties\":{\"industry\":\"Technology\",\"annual_revenue\":1000000}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCrmAppointment", + "qualifiedName": "HubspotCrmApi.CreateCrmAppointment", + "fullyQualifiedName": "HubspotCrmApi.CreateCrmAppointment@1.0.0", + "description": "Create an appointment in the CRM with specified properties.\n\n Use this tool to schedule a new appointment within the CRM system. It requires the necessary properties for the appointment and returns the created appointment object along with its ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "appointment_object_type", + "type": "string", + "required": false, + "description": "Specifies the type of CRM object to create. For appointments, this should be 'appointment'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/objects/v3/{objectType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateCrmAppointment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "appointment_object_type": { + "value": "appointment", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Team Meeting\",\"start_time\":\"2023-10-15T10:00:00Z\",\"duration\":\"60\",\"attendees\":[{\"email\":\"example@example.com\"}],\"notes\":\"Discuss project updates and next steps.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCrmObject", + "qualifiedName": "HubspotCrmApi.CreateCrmObject", + "fullyQualifiedName": "HubspotCrmApi.CreateCrmObject@1.0.0", + "description": "Create a CRM object and retrieve its details.\n\n This tool creates a new CRM object in HubSpot with specified properties and returns the object, including its ID. Use it to add contacts, companies, deals, etc., to your HubSpot CRM.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "crm_object_type", + "type": "string", + "required": false, + "description": "Specify the type of CRM object to create, such as 'contact', 'company', or 'deal'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/{objectType}_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateCrmObject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "crm_object_type": { + "value": "contact", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"properties\":{\"email\":\"example@example.com\",\"firstName\":\"John\",\"lastName\":\"Doe\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCrmObjectAssociation", + "qualifiedName": "HubspotCrmApi.CreateCrmObjectAssociation", + "fullyQualifiedName": "HubspotCrmApi.CreateCrmObjectAssociation@1.0.0", + "description": "Create an association between HubSpot CRM objects.\n\nThis tool creates an association between specified HubSpot CRM objects. Use it when you need to link different CRM objects (like contacts and companies) within the HubSpot platform.", + "parameters": [ + { + "name": "crm_object_type_schema", + "type": "string", + "required": true, + "description": "Fully qualified name or object type ID of your CRM object schema to create the association.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_object_type_id", + "type": "string", + "required": true, + "description": "ID of the primary object type to link from in the CRM system.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_type_id", + "type": "string", + "required": true, + "description": "ID of the target object type to link to in the CRM association.", + "enum": null, + "inferrable": true + }, + { + "name": "association_name", + "type": "string", + "required": false, + "description": "A unique name for the association between CRM objects. This helps identify the link.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.schemas.custom.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm-object-schemas/v3/schemas/{objectType}/associations_createAssociation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateCrmObjectAssociation", + "parameters": { + "crm_object_type_schema": { + "value": "contacts", + "type": "string", + "required": true + }, + "primary_object_type_id": { + "value": "12345", + "type": "string", + "required": true + }, + "target_object_type_id": { + "value": "67890", + "type": "string", + "required": true + }, + "association_name": { + "value": "Contact to Company Association", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCrmObjectSchema", + "qualifiedName": "HubspotCrmApi.CreateCrmObjectSchema", + "fullyQualifiedName": "HubspotCrmApi.CreateCrmObjectSchema@1.0.0", + "description": "Create a new CRM object schema in HubSpot.\n\nUse this tool to create a new object schema in HubSpot's CRM. This is useful when you need to define a new structure for CRM objects tailored to specific business needs.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.schemas.custom.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm-object-schemas/v3/schemas_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateCrmObjectSchema", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"CustomObject\", \"properties\": [{\"name\": \"property1\", \"label\": \"Property 1\", \"type\": \"string\"}, {\"name\": \"property2\", \"label\": \"Property 2\", \"type\": \"number\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCrmPipeline", + "qualifiedName": "HubspotCrmApi.CreateCrmPipeline", + "fullyQualifiedName": "HubspotCrmApi.CreateCrmPipeline@1.0.0", + "description": "Create a new CRM pipeline in HubSpot.\n\n Use this tool to create a new pipeline in HubSpot CRM with given property values. It returns the entire pipeline object, including its unique ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "pipeline_object_type", + "type": "string", + "required": false, + "description": "Specify the type of CRM object for the pipeline, such as 'deals' or 'tickets'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/pipelines/{objectType}_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateCrmPipeline", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "pipeline_object_type": { + "value": "deals", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Sales Pipeline\",\"stages\":[{\"label\":\"Initial Contact\",\"probability\":0},{\"label\":\"Negotiation\",\"probability\":50},{\"label\":\"Closed Won\",\"probability\":100}]}\"", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCrmUser", + "qualifiedName": "HubspotCrmApi.CreateCrmUser", + "fullyQualifiedName": "HubspotCrmApi.CreateCrmUser@1.0.0", + "description": "Create a new user in the CRM and retrieve their ID.\n\nUse this tool to create a new user in the HubSpot CRM system. The tool will return a detailed user object, including the newly assigned ID. This is useful for adding new users to your CRM database.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/users'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateCrmUser", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"email\": \"newuser@example.com\", \"first_name\": \"John\", \"last_name\": \"Doe\", \"user_type\": \"standard\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateDiscount", + "qualifiedName": "HubspotCrmApi.CreateDiscount", + "fullyQualifiedName": "HubspotCrmApi.CreateDiscount@1.0.0", + "description": "Creates a discount and returns its details.\n\nUse this tool to create a new discount with specified properties in HubSpot CRM. It returns the created discount object along with its ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/discounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateDiscount", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"discount_name\":\"New Year Discount\",\"amount_off\":20,\"currency\":\"USD\",\"start_date\":\"2023-12-01\",\"end_date\":\"2024-01-01\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateFeeInCrm", + "qualifiedName": "HubspotCrmApi.CreateFeeInCrm", + "fullyQualifiedName": "HubspotCrmApi.CreateFeeInCrm@1.0.0", + "description": "Create a fee in the CRM and receive the object's details.\n\nCall this tool to add a new fee in the CRM system using specified properties. It returns the newly created fee object along with its ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/fees'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateFeeInCrm", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"amount\": 250.0, \"currency\": \"USD\", \"description\": \"Service Fee\", \"client_id\": \"123456\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateFolderHubspotCrm", + "qualifiedName": "HubspotCrmApi.CreateFolderHubspotCrm", + "fullyQualifiedName": "HubspotCrmApi.CreateFolderHubspotCrm@1.0.0", + "description": "Creates a folder in HubSpot CRM with specified details.\n\nUse this tool to create a new folder in HubSpot CRM by providing the necessary information for the folder you want to create.", + "parameters": [ + { + "name": "folder_name", + "type": "string", + "required": true, + "description": "The name of the folder to be created in HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_folder_id", + "type": "string", + "required": false, + "description": "The ID of the folder where the new folder will be created. Defaults to root folder (ID: 0) if not specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/lists/folders_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateFolderHubspotCrm", + "parameters": { + "folder_name": { + "value": "Sales Documents", + "type": "string", + "required": true + }, + "parent_folder_id": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGoalTarget", + "qualifiedName": "HubspotCrmApi.CreateGoalTarget", + "fullyQualifiedName": "HubspotCrmApi.CreateGoalTarget@1.0.0", + "description": "Create a goal target in HubSpot CRM.\n\nUse this tool to create a new goal target in the HubSpot CRM system. It takes the properties for the goal target and returns a copy of the created object along with its ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.goals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/goal_targets_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateGoalTarget", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"goalName\": \"Quarterly Sales Target\", \"targetAmount\": 50000, \"timeFrame\": \"Q4 2023\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGoalTargetsBatch", + "qualifiedName": "HubspotCrmApi.CreateGoalTargetsBatch", + "fullyQualifiedName": "HubspotCrmApi.CreateGoalTargetsBatch@1.0.0", + "description": "Batch create multiple goal targets in HubSpot CRM.\n\nUse this tool to create multiple goal targets at once in HubSpot CRM. It is suited for managing and setting up several targets simultaneously, aiding in efficient CRM organization.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.goals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/goal_targets/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateGoalTargetsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"goals\":[{\"name\":\"Quarterly Sales Target\",\"target\":100000,\"timeframe\":\"Q1\"},{\"name\":\"Monthly Engagement Goal\",\"target\":5000,\"timeframe\":\"January\"}]}\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotCall", + "qualifiedName": "HubspotCrmApi.CreateHubspotCall", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotCall@1.0.0", + "description": "Create a call in HubSpot with specified properties.\n\nUse this tool to create a call in HubSpot CRM with specified properties. It returns the newly created call details, including its ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/calls_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotCall", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"subject\":\"Follow-up Call\",\"durationInMinutes\":30,\"callType\":\"OUTGOING\",\"status\":\"COMPLETED\",\"contactId\":\"12345\",\"notes\":\"Discussed product features and next steps.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotCommunication", + "qualifiedName": "HubspotCrmApi.CreateHubspotCommunication", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotCommunication@1.0.0", + "description": "Create a new communication entry in HubSpot CRM.\n\nThis tool creates a communication in HubSpot CRM with specified properties and returns the created object, including its ID. Use this when you need to log or track communications within the CRM.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/communications_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotCommunication", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"communication_type\": \"email\", \"subject\": \"Meeting Follow-up\", \"notes\": \"Following up on our discussion about the project timeline.\", \"contact_id\": \"12345\", \"timestamp\": \"2023-10-10T10:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotContact", + "qualifiedName": "HubspotCrmApi.CreateHubspotContact", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotContact@1.0.0", + "description": "Create a contact in HubSpot CRM and retrieve its details.\n\nUse this tool to add a new contact to HubSpot CRM by specifying the desired properties. It returns a copy of the contact, including its unique ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/contacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotContact", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"properties\":{\"email\":\"john.doe@example.com\",\"firstname\":\"John\",\"lastname\":\"Doe\",\"phones\":[\"123-456-7890\"],\"website\":\"https://johndoe.com\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotCourse", + "qualifiedName": "HubspotCrmApi.CreateHubspotCourse", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotCourse@1.0.0", + "description": "Create a course in HubSpot CRM and return its details.\n\nUse this tool to create a new course in HubSpot CRM with specified properties. It returns the course details, including the generated ID, upon successful creation.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.courses.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-410'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotCourse", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\":\"Introduction to Marketing\",\"description\":\"A comprehensive overview of marketing strategies and techniques.\",\"duration\":\"4 weeks\",\"level\":\"Beginner\",\"tags\":[\"marketing\",\"beginner\",\"course\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotCrmProperty", + "qualifiedName": "HubspotCrmApi.CreateHubspotCrmProperty", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotCrmProperty@1.0.0", + "description": "Create a new property for a specified object type in HubSpot CRM.\n\n This tool creates and returns a new property for the specified object type in HubSpot CRM. It should be used when you need to add a custom property to an object such as a contact, company, or deal in HubSpot.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": false, + "description": "Specify the object type to which the new property will be added, such as contact, company, or deal. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/properties/{objectType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotCrmProperty", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "object_type": { + "value": "contact", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"custom_property\",\"label\":\"Custom Property\",\"type\":\"string\",\"fieldType\":\"text\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotDeal", + "qualifiedName": "HubspotCrmApi.CreateHubspotDeal", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotDeal@1.0.0", + "description": "Create a new deal in HubSpot CRM.\n\nUse this tool to create a new deal in HubSpot CRM by specifying the necessary properties. It returns the created deal object along with its unique ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.deals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-3_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotDeal", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"dealName\":\"New Customer Deal\",\"amount\":5000,\"stage\":\"Negotiation\",\"pipeline\":\"default\",\"closeDate\":\"2023-12-31T00:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotEmail", + "qualifiedName": "HubspotCrmApi.CreateHubspotEmail", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotEmail@1.0.0", + "description": "Create an email in HubSpot CRM and retrieve its details.\n\nUse this tool to create a new email in HubSpot CRM by specifying certain properties. It returns the created email object along with its ID, facilitating the organization and tracking of email records within the CRM.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/emails_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotEmail", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"subject\":\"Monthly Newsletter\",\"body\":\"Welcome to our monthly newsletter...\",\"recipients\":[\"example@example.com\"],\"sender\":\"noreply@yourcompany.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotInvoice", + "qualifiedName": "HubspotCrmApi.CreateHubspotInvoice", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotInvoice@1.0.0", + "description": "Create an invoice in HubSpot CRM and retrieve its details.\n\nThis tool creates a new invoice in HubSpot CRM using the provided properties and returns the created invoice's details, including its ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.invoices.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/invoices_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotInvoice", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"customer_id\":\"12345\",\"total\":\"150.00\",\"currency\":\"USD\",\"line_items\":[{\"description\":\"Consulting Service\",\"quantity\":1,\"unit_price\":\"150.00\"}]}\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotLineItem", + "qualifiedName": "HubspotCrmApi.CreateHubspotLineItem", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotLineItem@1.0.0", + "description": "Create a new line item in HubSpot CRM.\n\nThis tool creates a line item in HubSpot CRM with specified properties and returns the complete object, including its ID. Use this when you need to add a line item to HubSpot.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/line_items_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotLineItem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Sample Line Item\",\"description\":\"This is a test line item\",\"amount\":100.00,\"quantity\":1}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotListing", + "qualifiedName": "HubspotCrmApi.CreateHubspotListing", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotListing@1.0.0", + "description": "Create a HubSpot CRM listing and get the object details.\n\nUse this tool to create a listing in HubSpot CRM with specified properties. It returns the newly created object's details, including its ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.listings.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-420'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotListing", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"Sample Listing\", \"description\": \"This is a sample description for the listing.\", \"price\": 100.00, \"category\": \"Real Estate\", \"status\": \"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotMeeting", + "qualifiedName": "HubspotCrmApi.CreateHubspotMeeting", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotMeeting@1.0.0", + "description": "Create a meeting in HubSpot and get its details.\n\nThis tool is used to create a meeting in HubSpot CRM with specific properties. It returns the details of the created meeting, including the unique ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/meetings_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotMeeting", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"meeting_title\":\"Project Kickoff\",\"meeting_time\":\"2023-10-15T10:00:00Z\",\"participants\":[{\"email\":\"john.doe@example.com\"},{\"email\":\"jane.smith@example.com\"}]}\"", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotMessagesBatch", + "qualifiedName": "HubspotCrmApi.CreateHubspotMessagesBatch", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotMessagesBatch@1.0.0", + "description": "Create a batch of messages in HubSpot CRM.\n\nUse this tool to create multiple messages in HubSpot CRM simultaneously. Ideal for handling bulk message creation with optional properties and associations with other CRM records.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/communications/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotMessagesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"messages\":[{\"subject\":\"Welcome to our service!\",\"body\":\"Thank you for joining us.\",\"recipient\":{\"email\":\"customer@example.com\"}},{\"subject\":\"Your invoice is ready\",\"body\":\"Please find your invoice attached.\",\"recipient\":{\"email\":\"billing@example.com\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotObjectsBatch", + "qualifiedName": "HubspotCrmApi.CreateHubspotObjectsBatch", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotObjectsBatch@1.0.0", + "description": "Create a batch of objects in HubSpot CRM.\n\n Use this tool to create multiple objects at once in HubSpot CRM. Suitable for handling bulk operations where several objects need to be created simultaneously.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "hubspot_object_type", + "type": "string", + "required": false, + "description": "Specifies the type of object to create in HubSpot, such as 'contacts', 'deals', or 'companies'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/{objectType}/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotObjectsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "hubspot_object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"inputs\":[{\"properties\":{\"firstname\":\"John\",\"lastname\":\"Doe\",\"email\":\"john.doe@example.com\"}},{\"properties\":{\"firstname\":\"Jane\",\"lastname\":\"Smith\",\"email\":\"jane.smith@example.com\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotOrder", + "qualifiedName": "HubspotCrmApi.CreateHubspotOrder", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotOrder@1.0.0", + "description": "Create a new order in HubSpot CRM with specified properties.\n\nUse this tool to create a new order in the HubSpot CRM system. It returns the details and ID of the created order, allowing further tracking and management.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.orders.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/orders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotOrder", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"order_id\":\"12345\",\"customer_id\":\"67890\",\"line_items\":[{\"product_id\":\"abc123\",\"quantity\":2,\"price\":19.99}],\"status\":\"pending\",\"total\":39.98}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotQuote", + "qualifiedName": "HubspotCrmApi.CreateHubspotQuote", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotQuote@1.0.0", + "description": "Create a new quote in HubSpot CRM.\n\nUse this tool to create a new quote in HubSpot CRM with specified properties. It returns the created quote, including its ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.quotes.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/quotes_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotQuote", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"quote_name\": \"Sample Quote\", \"amount\": 1500, \"currency\": \"USD\", \"expiration_date\": \"2023-12-31\", \"associated_contact_id\": \"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHubspotTax", + "qualifiedName": "HubspotCrmApi.CreateHubspotTax", + "fullyQualifiedName": "HubspotCrmApi.CreateHubspotTax@1.0.0", + "description": "Create a tax in HubSpot CRM and retrieve its details.\n\nThis tool creates a tax with specified properties in HubSpot CRM and returns a detailed object including the newly assigned ID. Use this for adding new tax records to your CRM system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/taxes_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateHubspotTax", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Sales Tax\",\"rate\":0.07,\"apply_to_all\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateLeadHubspot", + "qualifiedName": "HubspotCrmApi.CreateLeadHubspot", + "fullyQualifiedName": "HubspotCrmApi.CreateLeadHubspot@1.0.0", + "description": "Create a new lead in HubSpot CRM.\n\nUse this tool to create a new lead in HubSpot CRM by providing the necessary properties. It returns a copy of the lead object, including the ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.leads.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/leads_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateLeadHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{ \"firstName\": \"John\", \"lastName\": \"Doe\", \"email\": \"johndoe@example.com\", \"phone\": \"123-456-7890\", \"company\": \"Example Corp\" }", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateLeadsBatch", + "qualifiedName": "HubspotCrmApi.CreateLeadsBatch", + "fullyQualifiedName": "HubspotCrmApi.CreateLeadsBatch@1.0.0", + "description": "Create a batch of new leads in HubSpot CRM.\n\nUse this tool to add multiple new leads to your HubSpot CRM account in one operation. Ideal for onboarding new leads efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.leads.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/leads/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateLeadsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"leads\": [{\"email\": \"john.doe@example.com\", \"first_name\": \"John\", \"last_name\": \"Doe\"}, {\"email\": \"jane.smith@example.com\", \"first_name\": \"Jane\", \"last_name\": \"Smith\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateLineItemsBatch", + "qualifiedName": "HubspotCrmApi.CreateLineItemsBatch", + "fullyQualifiedName": "HubspotCrmApi.CreateLineItemsBatch@1.0.0", + "description": "Create a batch of line items in HubSpot CRM.\n\nUse this tool to create multiple line items at once in HubSpot CRM. Ideal for bulk operations where several line items need to be added simultaneously to the system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/line_items/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateLineItemsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"line_items\":[{\"name\":\"Line Item 1\",\"quantity\":2,\"price\":100},{\"name\":\"Line Item 2\",\"quantity\":1,\"price\":200}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMultipleDeals", + "qualifiedName": "HubspotCrmApi.CreateMultipleDeals", + "fullyQualifiedName": "HubspotCrmApi.CreateMultipleDeals@1.0.0", + "description": "Create multiple deals in HubSpot CRM in one request.\n\nUse this tool to batch create multiple deals in HubSpot CRM efficiently. It should be called when you need to add several deals at once, reducing the number of individual requests.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.deals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-3/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateMultipleDeals", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"deals\":[{\"name\":\"Deal 1\",\"amount\":1000,\"stage\":\"prospecting\"},{\"name\":\"Deal 2\",\"amount\":2000,\"stage\":\"negotiation\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMultipleListings", + "qualifiedName": "HubspotCrmApi.CreateMultipleListings", + "fullyQualifiedName": "HubspotCrmApi.CreateMultipleListings@1.0.0", + "description": "Create multiple listings in a single request.\n\nUse this tool to add several listings to the CRM in one operation. Ideal for bulk uploads or extensive data entry tasks.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.listings.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-420/batch/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateMultipleListings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"listings\":[{\"title\":\"Listing One\",\"description\":\"Description for listing one\",\"price\":250000},{\"title\":\"Listing Two\",\"description\":\"Description for listing two\",\"price\":300000}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateNoteInHubspot", + "qualifiedName": "HubspotCrmApi.CreateNoteInHubspot", + "fullyQualifiedName": "HubspotCrmApi.CreateNoteInHubspot@1.0.0", + "description": "Create a note in HubSpot CRM and return its details.\n\nUse this tool to create a note in HubSpot CRM with specified properties. It returns a copy of the created note object, including its ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/notes_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateNoteInHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\":\"Meeting Notes\",\"content\":\"Discussion on project updates and next steps.\",\"associatedEntityId\":\"12345\",\"associations\":{\"contacts\":[\"67890\"],\"companies\":[\"54321\"]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateObjectAssociation", + "qualifiedName": "HubspotCrmApi.CreateObjectAssociation", + "fullyQualifiedName": "HubspotCrmApi.CreateObjectAssociation@1.0.0", + "description": "Create an association between two CRM objects in HubSpot.\n\nUse this tool to link two objects in HubSpot CRM by specifying their types, IDs, and the type of association. This is useful for connecting related records, such as associating a contact with a specific company or deal.", + "parameters": [ + { + "name": "association_type", + "type": "string", + "required": true, + "description": "Specifies the type of association to create between the objects, such as 'contact_to_company'.", + "enum": null, + "inferrable": true + }, + { + "name": "source_object_id", + "type": "string", + "required": true, + "description": "The ID of the primary object to associate in HubSpot. This should be a valid string representing the CRM object's unique identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "source_object_type", + "type": "string", + "required": true, + "description": "Type of the source object. Specify the CRM object type, such as 'contact', 'company', or 'deal'.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_id", + "type": "string", + "required": true, + "description": "The ID of the target object to associate with. This is the object you want to link to the main object in HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_type", + "type": "string", + "required": true, + "description": "The type of the target object to associate. Examples include 'contact', 'company', or 'deal'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/objects/v3/{objectType}/{objectId}/associations/{toObjectType}/{toObjectId}/{associationType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateObjectAssociation", + "parameters": { + "association_type": { + "value": "contact_to_company", + "type": "string", + "required": true + }, + "source_object_id": { + "value": "12345", + "type": "string", + "required": true + }, + "source_object_type": { + "value": "contact", + "type": "string", + "required": true + }, + "target_object_id": { + "value": "67890", + "type": "string", + "required": true + }, + "target_object_type": { + "value": "company", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOrUpdateBatchRecords", + "qualifiedName": "HubspotCrmApi.CreateOrUpdateBatchRecords", + "fullyQualifiedName": "HubspotCrmApi.CreateOrUpdateBatchRecords@1.0.0", + "description": "Create or update CRM records in batches.\n\nUse this tool to create or update records in the CRM identified by a unique property value. It allows handling multiple records in a single batch operation, specified by the `idProperty`.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.listings.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-420/batch/upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateOrUpdateBatchRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"records\":[{\"id\":\"123\",\"properties\":{\"firstname\":\"John\",\"lastname\":\"Doe\",\"email\":\"john.doe@example.com\"}},{\"id\":\"456\",\"properties\":{\"firstname\":\"Jane\",\"lastname\":\"Smith\",\"email\":\"jane.smith@example.com\"}}],\"idProperty\":\"id\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOrUpdateCompanies", + "qualifiedName": "HubspotCrmApi.CreateOrUpdateCompanies", + "fullyQualifiedName": "HubspotCrmApi.CreateOrUpdateCompanies@1.0.0", + "description": "Create or update companies in HubSpot CRM using a unique identifier.\n\nThis tool creates or updates companies in the HubSpot CRM based on a unique identifier property. It should be called when you need to batch upsert company records identified by a unique property.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.companies.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/companies/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateOrUpdateCompanies", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"uniqueIdentifier\":\"12345\",\"properties\":{\"name\":\"Example Company\",\"domain\":\"example.com\",\"city\":\"Example City\",\"country\":\"Example Country\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOrUpdateHubspotEmails", + "qualifiedName": "HubspotCrmApi.CreateOrUpdateHubspotEmails", + "fullyQualifiedName": "HubspotCrmApi.CreateOrUpdateHubspotEmails@1.0.0", + "description": "Create or update HubSpot email records in batch.\n\nThis tool allows you to create or update email records in HubSpot's CRM by using a unique property value to identify the records. It's useful when you need to manage email data efficiently by ensuring existing records are updated and new ones are created where needed.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/emails/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateOrUpdateHubspotEmails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"emails\":[{\"email\":\"example1@test.com\",\"firstName\":\"John\",\"lastName\":\"Doe\"},{\"email\":\"example2@test.com\",\"firstName\":\"Jane\",\"lastName\":\"Doe\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOrUpdateHubspotRecords", + "qualifiedName": "HubspotCrmApi.CreateOrUpdateHubspotRecords", + "fullyQualifiedName": "HubspotCrmApi.CreateOrUpdateHubspotRecords@1.0.0", + "description": "Create or update HubSpot CRM records using unique properties.\n\nThis tool is used to create or update HubSpot CRM records by leveraging unique property values for identification. It ensures that records are upserted based on the provided unique identifier.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.deals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-3/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateOrUpdateHubspotRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"unique_id\":\"12345\",\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"company\":\"Example Corp\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOrUpdateQuotes", + "qualifiedName": "HubspotCrmApi.CreateOrUpdateQuotes", + "fullyQualifiedName": "HubspotCrmApi.CreateOrUpdateQuotes@1.0.0", + "description": "Create or update quote records in HubSpot CRM.\n\nThis tool is used to create or update quote records in HubSpot CRM based on a unique property value specified by `idProperty`. Use it when you need to ensure quotes are updated or added to the CRM system efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.quotes.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/quotes/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateOrUpdateQuotes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"idProperty\":\"quoteId\",\"properties\":{\"amount\":5000,\"customerName\":\"Acme Corp\",\"status\":\"approved\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOrUpdateTaxRecords", + "qualifiedName": "HubspotCrmApi.CreateOrUpdateTaxRecords", + "fullyQualifiedName": "HubspotCrmApi.CreateOrUpdateTaxRecords@1.0.0", + "description": "Create or update tax records based on unique properties.\n\nThis tool creates or updates tax records in HubSpot CRM by using unique property values specified by the `idProperty` parameter. It should be called when you need to ensure tax records are correctly up-to-date by leveraging existing unique identifiers.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/taxes/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateOrUpdateTaxRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"idProperty\":\"tax_id\",\"taxRate\":0.07,\"description\":\"Sales Tax\",\"effectiveDate\":\"2023-10-01\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePipelineStage", + "qualifiedName": "HubspotCrmApi.CreatePipelineStage", + "fullyQualifiedName": "HubspotCrmApi.CreatePipelineStage@1.0.0", + "description": "Create a stage in a specified pipeline.\n\n This tool creates a new stage within a specified pipeline in the HubSpot CRM. Use it when you need to add a new stage to an existing pipeline, specifying the object type and pipeline ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "crm_object_type", + "type": "string", + "required": false, + "description": "Specify the CRM object type, such as deals or tickets, for the pipeline. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_id", + "type": "string", + "required": false, + "description": "The unique identifier of the pipeline where the new stage will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/pipelines/{objectType}/{pipelineId}/stages_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreatePipelineStage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "crm_object_type": { + "value": "deals", + "type": "string", + "required": false + }, + "pipeline_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"stageName\": \"New Stage\", \"stageId\": \"54321\", \"probability\": 75}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePostalMailBatch", + "qualifiedName": "HubspotCrmApi.CreatePostalMailBatch", + "fullyQualifiedName": "HubspotCrmApi.CreatePostalMailBatch@1.0.0", + "description": "Create a batch of postal mail objects in HubSpot CRM.\n\nUse this tool to create multiple postal mail records within the HubSpot CRM system. Ideal for handling bulk postal mail operations efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/postal_mail/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreatePostalMailBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"postalMails\":[{\"recipientName\":\"John Doe\",\"recipientAddress\":\"123 Main St, Anytown, USA\",\"templateId\":\"template_001\"},{\"recipientName\":\"Jane Smith\",\"recipientAddress\":\"456 Elm St, Othertown, USA\",\"templateId\":\"template_002\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePostalMailObject", + "qualifiedName": "HubspotCrmApi.CreatePostalMailObject", + "fullyQualifiedName": "HubspotCrmApi.CreatePostalMailObject@1.0.0", + "description": "Create a postal mail object in HubSpot CRM.\n\nThis tool is used to create a postal mail object in the HubSpot CRM with the provided properties. It returns a copy of the created object, including its unique identifier. Use this tool to record postal mail interactions in your CRM.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/postal_mail_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreatePostalMailObject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"mailType\":\"letter\",\"recipient\":{\"name\":\"John Doe\",\"address\":\"123 Main St, Springfield, USA\"},\"sender\":{\"name\":\"Jane Smith\",\"address\":\"456 Elm St, Springfield, USA\"},\"subject\":\"Hello from HubSpot!\",\"body\":\"This is a test postal mail object created using HubSpot CRM API.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateProductInHubspot", + "qualifiedName": "HubspotCrmApi.CreateProductInHubspot", + "fullyQualifiedName": "HubspotCrmApi.CreateProductInHubspot@1.0.0", + "description": "Create a new product in HubSpot CRM.\n\nUse this tool to create a product in HubSpot CRM with specified properties. It returns the created product details, including the ID, which can be used for further referencing or operations.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.products.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/products_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateProductInHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Example Product\",\"description\":\"This is an example product description.\",\"price\":199.99,\"sku\":\"EX-12345\",\"category\":\"Example Category\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePropertyGroup", + "qualifiedName": "HubspotCrmApi.CreatePropertyGroup", + "fullyQualifiedName": "HubspotCrmApi.CreatePropertyGroup@1.0.0", + "description": "Create a new property group in HubSpot CRM.\n\nThis tool creates and returns a new property group for a specified object type in HubSpot CRM. Use it when you need to organize CRM properties into groups.", + "parameters": [ + { + "name": "internal_property_group_name", + "type": "string", + "required": true, + "description": "The unique name used internally to reference the property group via the API.", + "enum": null, + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Specifies the CRM object type for the property group (e.g., contacts, companies).", + "enum": null, + "inferrable": true + }, + { + "name": "property_group_label", + "type": "string", + "required": true, + "description": "A human-readable label for the property group, displayed in HubSpot.", + "enum": null, + "inferrable": true + }, + { + "name": "property_group_display_order", + "type": "integer", + "required": false, + "description": "Defines the display order of the property group, with lowest positive integers displayed first. Use -1 to display after positive values.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/properties/{objectType}/groups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreatePropertyGroup", + "parameters": { + "internal_property_group_name": { + "value": "custom_properties_2023", + "type": "string", + "required": true + }, + "object_type": { + "value": "contacts", + "type": "string", + "required": true + }, + "property_group_label": { + "value": "Custom Contact Properties", + "type": "string", + "required": true + }, + "property_group_display_order": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateServiceRecord", + "qualifiedName": "HubspotCrmApi.CreateServiceRecord", + "fullyQualifiedName": "HubspotCrmApi.CreateServiceRecord@1.0.0", + "description": "Create a service record in HubSpot CRM.\n\nThis tool creates a new service object in HubSpot CRM with the specified properties and returns the created object, including its ID. It's useful for adding new service records to the CRM system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.services.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-162'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateServiceRecord", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"New Service Record\",\"description\":\"Description of the new service record\",\"status\":\"active\",\"customer_id\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSubscription", + "qualifiedName": "HubspotCrmApi.CreateSubscription", + "fullyQualifiedName": "HubspotCrmApi.CreateSubscription@1.0.0", + "description": "Create a new subscription in HubSpot CRM.\n\nThis tool creates a subscription in HubSpot CRM using specified properties and returns a copy of the object with its ID included. Use it to add new subscriptions to the CRM system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/subscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateSubscription", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"subscription_name\": \"Monthly Newsletter\", \"status\": \"active\", \"contact_id\": \"12345\", \"properties\": {\"preferences\": {\"email\": true, \"sms\": false}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTaskInCrm", + "qualifiedName": "HubspotCrmApi.CreateTaskInCrm", + "fullyQualifiedName": "HubspotCrmApi.CreateTaskInCrm@1.0.0", + "description": "Create a task in HubSpot CRM and return task details.\n\nThis tool creates a task in HubSpot CRM with specified properties and returns the task details, including the ID. It should be called when you need to add a new task to the CRM system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tasks_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateTaskInCrm", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"taskName\": \"Follow up with client\", \"dueDate\": \"2023-10-15T09:00:00Z\", \"priority\": \"HIGH\", \"status\": \"NOT_STARTED\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTaxBatch", + "qualifiedName": "HubspotCrmApi.CreateTaxBatch", + "fullyQualifiedName": "HubspotCrmApi.CreateTaxBatch@1.0.0", + "description": "Create a batch of taxes in HubSpot CRM.\n\nUse this tool to create multiple tax records at once in HubSpot CRM. Ideal for situations where bulk tax data entry is required.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/taxes/batch/create_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateTaxBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"taxes\":[{\"name\":\"Sales Tax\",\"rate\":0.07},{\"name\":\"Service Tax\",\"rate\":0.05}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTicket", + "qualifiedName": "HubspotCrmApi.CreateTicket", + "fullyQualifiedName": "HubspotCrmApi.CreateTicket@1.0.0", + "description": "Create a support ticket in HubSpot CRM.\n\nUse this tool to create a new support ticket with specified properties in HubSpot CRM and receive a copy of the ticket object along with its ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tickets"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tickets_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateTicket", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"subject\":\"Issue with product\",\"description\":\"Customer is facing an issue with product X. Immediate attention required.\",\"priority\":\"High\",\"status\":\"Open\",\"customer_id\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateUsersBatch", + "qualifiedName": "HubspotCrmApi.CreateUsersBatch", + "fullyQualifiedName": "HubspotCrmApi.CreateUsersBatch@1.0.0", + "description": "Create a batch of users in the CRM system.\n\nUse this tool to create multiple users at once in the HubSpot CRM. It should be called when there is a need to add multiple users efficiently through a single command.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/users/batch/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.CreateUsersBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"users\":[{\"email\":\"user1@example.com\",\"firstName\":\"John\",\"lastName\":\"Doe\"},{\"email\":\"user2@example.com\",\"firstName\":\"Jane\",\"lastName\":\"Smith\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBatchMessages", + "qualifiedName": "HubspotCrmApi.DeleteBatchMessages", + "fullyQualifiedName": "HubspotCrmApi.DeleteBatchMessages@1.0.0", + "description": "Delete a batch of messages by ID with restoration option.\n\nDelete multiple messages by their IDs. Deleted messages can be restored within 90 days.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/communications/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteBatchMessages", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"message_ids\":[\"12345\",\"67890\"],\"restore\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCallTranscript", + "qualifiedName": "HubspotCrmApi.DeleteCallTranscript", + "fullyQualifiedName": "HubspotCrmApi.DeleteCallTranscript@1.0.0", + "description": "Delete a call transcript by transcript ID.\n\nRemoves a call transcript identified by transcript ID from the HubSpot CRM.", + "parameters": [ + { + "name": "transcript_id", + "type": "string", + "required": true, + "description": "The unique identifier for the call transcript you want to delete from the HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.extensions_calling_transcripts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/extensions/calling/transcripts/{transcriptId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteCallTranscript", + "parameters": { + "transcript_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCommercePayment", + "qualifiedName": "HubspotCrmApi.DeleteCommercePayment", + "fullyQualifiedName": "HubspotCrmApi.DeleteCommercePayment@1.0.0", + "description": "Delete a commerce payment from the CRM system.\n\nUse this tool to move a specified commerce payment to the recycling bin by providing the payment ID.", + "parameters": [ + { + "name": "commerce_payment_id", + "type": "string", + "required": true, + "description": "The unique identifier for the commerce payment to be moved to the recycling bin.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.commercepayments.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/commerce_payments/{commercePaymentId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteCommercePayment", + "parameters": { + "commerce_payment_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCompaniesBatch", + "qualifiedName": "HubspotCrmApi.DeleteCompaniesBatch", + "fullyQualifiedName": "HubspotCrmApi.DeleteCompaniesBatch@1.0.0", + "description": "Delete a batch of companies by ID in HubSpot CRM.\n\nThis tool deletes a batch of companies in HubSpot CRM using their IDs. Deleted companies can be restored within 90 days.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.companies.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/companies/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteCompaniesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"ids\":[\"123\",\"456\",\"789\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCompany", + "qualifiedName": "HubspotCrmApi.DeleteCompany", + "fullyQualifiedName": "HubspotCrmApi.DeleteCompany@1.0.0", + "description": "Delete a company by ID in HubSpot CRM.\n\nUse this tool to delete a company by its ID in HubSpot CRM. Deleted companies can be restored within 90 days if needed.", + "parameters": [ + { + "name": "company_id", + "type": "string", + "required": true, + "description": "The unique identifier of the company to be deleted in HubSpot CRM. This ID is required to specify the company.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.companies.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/companies/{companyId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteCompany", + "parameters": { + "company_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteContact", + "qualifiedName": "HubspotCrmApi.DeleteContact", + "fullyQualifiedName": "HubspotCrmApi.DeleteContact@1.0.0", + "description": "Delete a contact and move it to the recycling bin.\n\nUse this tool to delete a contact in HubSpot CRM, identified by `contactId`, moving it to the recycling bin.", + "parameters": [ + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "The unique identifier of the contact to be deleted and moved to the recycling bin.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/contacts/{contactId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteContact", + "parameters": { + "contact_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCourse", + "qualifiedName": "HubspotCrmApi.DeleteCourse", + "fullyQualifiedName": "HubspotCrmApi.DeleteCourse@1.0.0", + "description": "Delete a course by moving it to the recycling bin.\n\nThis tool deletes a specific course in the CRM by moving it to the recycling bin, identified by the provided `courseId`. Use this when you need to remove a course from the CRM records.", + "parameters": [ + { + "name": "course_id", + "type": "string", + "required": true, + "description": "The unique identifier for the course to be deleted. This identifier is used to locate the specific course in the CRM system.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.courses.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/0-410/{courseId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteCourse", + "parameters": { + "course_id": { + "value": "12345-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCrmAssociation", + "qualifiedName": "HubspotCrmApi.DeleteCrmAssociation", + "fullyQualifiedName": "HubspotCrmApi.DeleteCrmAssociation@1.0.0", + "description": "Remove an association between CRM object schemas.\n\nThis tool is used to delete an association between specified CRM object schemas in HubSpot. It should be called when there is a need to remove or archive a link between two object types.", + "parameters": [ + { + "name": "association_id", + "type": "string", + "required": true, + "description": "Unique ID of the association to be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "schema_object_type", + "type": "string", + "required": true, + "description": "The fully qualified name or object type ID of your schema to identify which CRM object to target.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.schemas.custom.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm-object-schemas/v3/schemas/{objectType}/associations/{associationIdentifier}_archiveAssociation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteCrmAssociation", + "parameters": { + "association_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "schema_object_type": { + "value": "contacts", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCrmFolder", + "qualifiedName": "HubspotCrmApi.DeleteCrmFolder", + "fullyQualifiedName": "HubspotCrmApi.DeleteCrmFolder@1.0.0", + "description": "Deletes a specified CRM folder by ID.\n\nUse this tool to delete a folder in HubSpot CRM by providing the folder ID. It should be called when a specific folder needs to be permanently removed from the CRM system.", + "parameters": [ + { + "name": "folder_id_to_delete", + "type": "string", + "required": true, + "description": "The ID of the folder to be deleted in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/lists/folders/{folderId}_remove'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteCrmFolder", + "parameters": { + "folder_id_to_delete": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCrmObject", + "qualifiedName": "HubspotCrmApi.DeleteCrmObject", + "fullyQualifiedName": "HubspotCrmApi.DeleteCrmObject@1.0.0", + "description": "Delete a CRM object and move it to the recycling bin.\n\nUse this tool to delete an object in HubSpot CRM by specifying the object type and ID. The object will be moved to the recycling bin.", + "parameters": [ + { + "name": "crm_object_id", + "type": "string", + "required": true, + "description": "The unique identifier for the CRM object to be deleted. This ID specifies which object will be moved to the recycling bin.", + "enum": null, + "inferrable": true + }, + { + "name": "crm_object_type", + "type": "string", + "required": true, + "description": "Specify the type of CRM object to delete, such as 'contact', 'deal', or 'company'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/objects/v3/{objectType}/{objectId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteCrmObject", + "parameters": { + "crm_object_id": { + "value": "12345", + "type": "string", + "required": true + }, + "crm_object_type": { + "value": "contact", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCrmObjectSchema", + "qualifiedName": "HubspotCrmApi.DeleteCrmObjectSchema", + "fullyQualifiedName": "HubspotCrmApi.DeleteCrmObjectSchema@1.0.0", + "description": "Delete a CRM object schema in HubSpot.\n\nThis tool deletes a specified CRM object schema in HubSpot. Use it when you need to remove an existing schema, ensuring it's no longer accessible or in use.", + "parameters": [ + { + "name": "object_type_identifier", + "type": "string", + "required": true, + "description": "The fully qualified name or object type ID of the schema to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to True to return only archived results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.schemas.custom.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm-object-schemas/v3/schemas/{objectType}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteCrmObjectSchema", + "parameters": { + "object_type_identifier": { + "value": "custom_object_v1", + "type": "string", + "required": true + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteDiscount", + "qualifiedName": "HubspotCrmApi.DeleteDiscount", + "fullyQualifiedName": "HubspotCrmApi.DeleteDiscount@1.0.0", + "description": "Delete a discount and move it to the recycling bin.\n\nUse this tool to delete a discount object in HubSpot CRM by moving it to the recycling bin. Call it when you need to remove discounts identified by a specific discount ID.", + "parameters": [ + { + "name": "discount_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the discount object to delete and move to the recycling bin.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/discounts/{discountId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteDiscount", + "parameters": { + "discount_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteEmail", + "qualifiedName": "HubspotCrmApi.DeleteEmail", + "fullyQualifiedName": "HubspotCrmApi.DeleteEmail@1.0.0", + "description": "Move an email to the recycling bin using its ID.\n\nThis tool moves an email identified by `emailId` to the recycling bin in HubSpot CRM. It should be used when an email needs to be archived or deleted from active view.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The unique identifier of the email to be archived in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/emails/{emailId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteEmail", + "parameters": { + "email_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteFeeObject", + "qualifiedName": "HubspotCrmApi.DeleteFeeObject", + "fullyQualifiedName": "HubspotCrmApi.DeleteFeeObject@1.0.0", + "description": "Move a fee object to the recycling bin using its fee ID.\n\nCall this tool to delete a fee object in HubSpot CRM. Useful for removing unwanted or outdated fee records by providing the specific fee ID.", + "parameters": [ + { + "name": "fee_id_to_delete", + "type": "string", + "required": true, + "description": "The unique identifier of the fee object to be deleted in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/fees/{feeId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteFeeObject", + "parameters": { + "fee_id_to_delete": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteGoalTarget", + "qualifiedName": "HubspotCrmApi.DeleteGoalTarget", + "fullyQualifiedName": "HubspotCrmApi.DeleteGoalTarget@1.0.0", + "description": "Deletes a goal target by its ID to the recycling bin.\n\nUse this tool to delete a specific goal target by providing its unique ID. This action will move the target to the recycling bin, allowing for potential recovery.", + "parameters": [ + { + "name": "goal_target_id", + "type": "string", + "required": true, + "description": "The unique identifier for the goal target to be deleted. Required to specify which target to move to the recycling bin.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.goals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/goal_targets/{goalTargetId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteGoalTarget", + "parameters": { + "goal_target_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteHubspotTicketsBatch", + "qualifiedName": "HubspotCrmApi.DeleteHubspotTicketsBatch", + "fullyQualifiedName": "HubspotCrmApi.DeleteHubspotTicketsBatch@1.0.0", + "description": "Delete a batch of tickets in HubSpot CRM.\n\nUse this tool to delete multiple tickets by ID in HubSpot CRM. Deleted tickets can be restored within 90 days.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tickets"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tickets/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteHubspotTicketsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"ticketIds\":[\"12345\",\"67890\",\"abcde\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteInvoice", + "qualifiedName": "HubspotCrmApi.DeleteInvoice", + "fullyQualifiedName": "HubspotCrmApi.DeleteInvoice@1.0.0", + "description": "Archive an invoice by moving it to the recycling bin.\n\nUse this tool to archive an invoice in HubSpot CRM by moving it to the recycling bin. It is identified by the `{invoiceId}` parameter.", + "parameters": [ + { + "name": "invoice_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the invoice to be archived in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.invoices.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/invoices/{invoiceId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteInvoice", + "parameters": { + "invoice_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteLineItem", + "qualifiedName": "HubspotCrmApi.DeleteLineItem", + "fullyQualifiedName": "HubspotCrmApi.DeleteLineItem@1.0.0", + "description": "Moves a specified line item to the recycling bin.\n\nThis tool is used to delete or archive a line item in HubSpot CRM by moving it to the recycling bin. It should be called when a user wants to remove a line item identified by its `lineItemId`.", + "parameters": [ + { + "name": "line_item_id", + "type": "string", + "required": true, + "description": "The unique identifier of the line item to be archived or deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/line_items/{lineItemId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteLineItem", + "parameters": { + "line_item_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteList", + "qualifiedName": "HubspotCrmApi.DeleteList", + "fullyQualifiedName": "HubspotCrmApi.DeleteList@1.0.0", + "description": "Delete a specified CRM list by its ID.\n\nUse this tool to delete a CRM list using its ID. Deleted lists can be restored within 90 days, after which they'll be permanently removed.", + "parameters": [ + { + "name": "list_id_to_delete", + "type": "string", + "required": true, + "description": "The ILS ID of the CRM list to delete. Ensure the ID is correct to avoid unintentional deletion.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/lists/{listId}_remove'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteList", + "parameters": { + "list_id_to_delete": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMeeting", + "qualifiedName": "HubspotCrmApi.DeleteMeeting", + "fullyQualifiedName": "HubspotCrmApi.DeleteMeeting@1.0.0", + "description": "Move a meeting to the recycling bin using its ID.\n\nThis tool is used to move a meeting, identified by its meeting ID, to the recycling bin in the HubSpot CRM. It is useful when you need to archive or remove a meeting from active records.", + "parameters": [ + { + "name": "meeting_id", + "type": "string", + "required": true, + "description": "The unique ID of the meeting to be moved to the recycling bin. This is required to identify the specific meeting.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/meetings/{meetingId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteMeeting", + "parameters": { + "meeting_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteNoteHubspot", + "qualifiedName": "HubspotCrmApi.DeleteNoteHubspot", + "fullyQualifiedName": "HubspotCrmApi.DeleteNoteHubspot@1.0.0", + "description": "Move a HubSpot note to the recycling bin.\n\nUse this tool to move a note identified by `noteId` in HubSpot CRM to the recycling bin. This is useful for soft-deleting notes when they are no longer needed in the immediate CRM workspace.", + "parameters": [ + { + "name": "note_id", + "type": "string", + "required": true, + "description": "The unique identifier of the note to be archived in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/notes/{noteId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteNoteHubspot", + "parameters": { + "note_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteObjectHubspot", + "qualifiedName": "HubspotCrmApi.DeleteObjectHubspot", + "fullyQualifiedName": "HubspotCrmApi.DeleteObjectHubspot@1.0.0", + "description": "Move an object to the recycling bin in HubSpot CRM.\n\nUse this tool to delete an object identified by `serviceId` within the HubSpot CRM, moving it to the recycling bin.", + "parameters": [ + { + "name": "object_service_id", + "type": "string", + "required": true, + "description": "The unique identifier for the object to be moved to the recycling bin in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.services.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/0-162/{serviceId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteObjectHubspot", + "parameters": { + "object_service_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteOrderById", + "qualifiedName": "HubspotCrmApi.DeleteOrderById", + "fullyQualifiedName": "HubspotCrmApi.DeleteOrderById@1.0.0", + "description": "Deletes an order by its ID from the CRM.\n\nUse this tool to delete an order from the CRM system by providing its unique ID. The order will be moved to the recycling bin, allowing for potential recovery later if needed.", + "parameters": [ + { + "name": "order_id", + "type": "string", + "required": true, + "description": "The unique ID of the order to delete, moving it to the recycling bin.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.orders.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/orders/{orderId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteOrderById", + "parameters": { + "order_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeletePipeline", + "qualifiedName": "HubspotCrmApi.DeletePipeline", + "fullyQualifiedName": "HubspotCrmApi.DeletePipeline@1.0.0", + "description": "Delete a specific pipeline in the CRM.\n\nThis tool is used to delete a specific pipeline in HubSpot CRM by providing the object type and pipeline ID. Call this tool when a pipeline needs to be removed.", + "parameters": [ + { + "name": "pipeline_id", + "type": "string", + "required": true, + "description": "The unique identifier of the pipeline to be deleted. Required for specifying which pipeline to remove.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_object_type", + "type": "string", + "required": true, + "description": "Specify the type of object for the pipeline, such as 'deals' or 'tickets'.", + "enum": null, + "inferrable": true + }, + { + "name": "validate_deal_stage_usages_before_deletion", + "type": "boolean", + "required": false, + "description": "Set to true to validate deal stage usages before deleting a pipeline, preventing deletion if usages are found.", + "enum": null, + "inferrable": true + }, + { + "name": "validate_references_before_delete", + "type": "boolean", + "required": false, + "description": "Set to true to validate references before deleting the pipeline. This prevents accidental deletion when references are present.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/pipelines/{objectType}/{pipelineId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeletePipeline", + "parameters": { + "pipeline_id": { + "value": "12345", + "type": "string", + "required": true + }, + "pipeline_object_type": { + "value": "deals", + "type": "string", + "required": true + }, + "validate_deal_stage_usages_before_deletion": { + "value": true, + "type": "boolean", + "required": false + }, + "validate_references_before_delete": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeletePipelineStage", + "qualifiedName": "HubspotCrmApi.DeletePipelineStage", + "fullyQualifiedName": "HubspotCrmApi.DeletePipelineStage@1.0.0", + "description": "Deletes a pipeline stage from HubSpot CRM.\n\nUse to remove a specific stage from a pipeline in HubSpot CRM by specifying the object type, pipeline ID, and stage ID.", + "parameters": [ + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Specify the type of CRM object (e.g., deals, tickets) for which the pipeline stage is being deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_id", + "type": "string", + "required": true, + "description": "The unique ID of the pipeline containing the stage to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "stage_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the pipeline stage to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/pipelines/{objectType}/{pipelineId}/stages/{stageId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeletePipelineStage", + "parameters": { + "object_type": { + "value": "deals", + "type": "string", + "required": true + }, + "pipeline_id": { + "value": "123456", + "type": "string", + "required": true + }, + "stage_identifier": { + "value": "stage_7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeletePropertyGroup", + "qualifiedName": "HubspotCrmApi.DeletePropertyGroup", + "fullyQualifiedName": "HubspotCrmApi.DeletePropertyGroup@1.0.0", + "description": "Delete a property group and move it to recycling bin.\n\nUse this tool to move a specified property group to the recycling bin in HubSpot CRM. Ideal when a property group is no longer needed and should be removed.", + "parameters": [ + { + "name": "crm_object_type", + "type": "string", + "required": true, + "description": "Specify the type of CRM object, such as 'contacts', 'companies', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "property_group_name", + "type": "string", + "required": true, + "description": "The name of the property group to delete. This identifies which group to move to the recycling bin in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/properties/{objectType}/groups/{groupName}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeletePropertyGroup", + "parameters": { + "crm_object_type": { + "value": "contacts", + "type": "string", + "required": true + }, + "property_group_name": { + "value": "User Information", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeletePropertyHubspotCrm", + "qualifiedName": "HubspotCrmApi.DeletePropertyHubspotCrm", + "fullyQualifiedName": "HubspotCrmApi.DeletePropertyHubspotCrm@1.0.0", + "description": "Delete a property in HubSpot CRM and move it to the recycling bin.\n\nUse this tool to delete a specific property from the HubSpot CRM by specifying the object type and property name. This action moves the property to the recycling bin.", + "parameters": [ + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Specify the type of object in HubSpot CRM (e.g., 'contacts', 'companies').", + "enum": null, + "inferrable": true + }, + { + "name": "property_name", + "type": "string", + "required": true, + "description": "The name of the property to delete, identified by its unique name within the object type.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/properties/{objectType}/{propertyName}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeletePropertyHubspotCrm", + "parameters": { + "object_type": { + "value": "contacts", + "type": "string", + "required": true + }, + "property_name": { + "value": "last_contacted", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteScheduledConversion", + "qualifiedName": "HubspotCrmApi.DeleteScheduledConversion", + "fullyQualifiedName": "HubspotCrmApi.DeleteScheduledConversion@1.0.0", + "description": "Delete a scheduled conversion for a specific list.\n\nThis tool deletes an existing scheduled conversion for a specified list in the HubSpot CRM. It should be called when you need to cancel a conversion schedule, and it returns a confirmation of the deletion.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The ID of the list for which you want to cancel the scheduled conversion.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/lists/{listId}/schedule-conversion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteScheduledConversion", + "parameters": { + "list_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteShoppingCart", + "qualifiedName": "HubspotCrmApi.DeleteShoppingCart", + "fullyQualifiedName": "HubspotCrmApi.DeleteShoppingCart@1.0.0", + "description": "Delete a shopping cart from HubSpot CRM.\n\nUse this tool to move a shopping cart, identified by its `cartId`, to the recycling bin in HubSpot CRM.", + "parameters": [ + { + "name": "cart_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the shopping cart to delete from HubSpot CRM. It should be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.carts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/carts/{cartId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteShoppingCart", + "parameters": { + "cart_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteSubscription", + "qualifiedName": "HubspotCrmApi.DeleteSubscription", + "fullyQualifiedName": "HubspotCrmApi.DeleteSubscription@1.0.0", + "description": "Delete a specific subscription from HubSpot CRM.\n\nThis tool deletes a subscription identified by `subscriptionId` from HubSpot CRM, moving it to the recycling bin. Use this when you need to remove a subscription object from the system.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The unique identifier of the subscription to be deleted. This moves the subscription to the recycling bin in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/subscriptions/{subscriptionId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteSubscription", + "parameters": { + "subscription_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTaskInHubspot", + "qualifiedName": "HubspotCrmApi.DeleteTaskInHubspot", + "fullyQualifiedName": "HubspotCrmApi.DeleteTaskInHubspot@1.0.0", + "description": "Delete a task in HubSpot by task ID.\n\nUse this tool to move a specific task in HubSpot CRM to the recycling bin by providing the task ID.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier of the task to be deleted from HubSpot CRM. Required to move the task to the recycling bin.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/tasks/{taskId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteTaskInHubspot", + "parameters": { + "task_id": { + "value": "12345-abcd-67890-efgh", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTaxEntry", + "qualifiedName": "HubspotCrmApi.DeleteTaxEntry", + "fullyQualifiedName": "HubspotCrmApi.DeleteTaxEntry@1.0.0", + "description": "Archive a tax entry in HubSpot CRM.\n\nUse this tool to move a tax object identified by `taxId` to the recycling bin in HubSpot CRM.", + "parameters": [ + { + "name": "tax_entry_id", + "type": "string", + "required": true, + "description": "The unique identifier for the tax entry you want to archive in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/taxes/{taxId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteTaxEntry", + "parameters": { + "tax_entry_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTicket", + "qualifiedName": "HubspotCrmApi.DeleteTicket", + "fullyQualifiedName": "HubspotCrmApi.DeleteTicket@1.0.0", + "description": "Move a ticket to the recycling bin by ticket ID.\n\nUse this tool to delete a CRM ticket by moving it to the recycling bin using its unique ticket ID.", + "parameters": [ + { + "name": "ticket_id", + "type": "string", + "required": true, + "description": "The unique ID of the ticket to move to the recycling bin. Must be a valid string representing the ticket identifier.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tickets"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/tickets/{ticketId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteTicket", + "parameters": { + "ticket_id": { + "value": "12345-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteUser", + "qualifiedName": "HubspotCrmApi.DeleteUser", + "fullyQualifiedName": "HubspotCrmApi.DeleteUser@1.0.0", + "description": "Delete a user and move to recycling bin.", + "parameters": [ + { + "name": "user_id_to_delete", + "type": "string", + "required": true, + "description": "The unique identifier of the user to delete and move to the recycling bin.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/users/{userId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.DeleteUser", + "parameters": { + "user_id_to_delete": { + "value": "12345-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EditHubspotObject", + "qualifiedName": "HubspotCrmApi.EditHubspotObject", + "fullyQualifiedName": "HubspotCrmApi.EditHubspotObject@1.0.0", + "description": "Partially update a HubSpot CRM object with specified properties.\n\n This tool performs a partial update on a HubSpot CRM object identified by the `serviceId` or a unique property value using the `idProperty` query parameter. It overwrites provided properties while ensuring read-only or non-existent properties result in errors. Properties can be cleared with an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "object_identifier", + "type": "string", + "required": false, + "description": "The unique identifier or `{serviceId}` for the object to be updated. This can be an internal object ID or a unique property value when used with `idProperty`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a unique property for the object, used instead of the internal ID if specified. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.services.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/0-162/{serviceId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.EditHubspotObject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "object_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "email", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"property1\":\"value1\",\"property2\":\"value2\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EnableObjectTypeInHubspot", + "qualifiedName": "HubspotCrmApi.EnableObjectTypeInHubspot", + "fullyQualifiedName": "HubspotCrmApi.EnableObjectTypeInHubspot@1.0.0", + "description": "Enable an object type in HubSpot CRM via its ID.\n\nThis tool is used to enable a specific object type in HubSpot's CRM system using the object's unique ID. It should be called when there is a need to activate or verify the activation status of a specific object category in HubSpot.", + "parameters": [ + { + "name": "object_type_id", + "type": "string", + "required": true, + "description": "The unique identifier for the object type in HubSpot CRM that needs to be enabled.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/object-library/enablement/{objectTypeId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.EnableObjectTypeInHubspot", + "parameters": { + "object_type_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchAssociationLimitObjects", + "qualifiedName": "HubspotCrmApi.FetchAssociationLimitObjects", + "fullyQualifiedName": "HubspotCrmApi.FetchAssociationLimitObjects@1.0.0", + "description": "Fetch objects approaching association limits for a specified type.\n\nUse this tool to retrieve objects where the specified 'from' object type has records that are nearing or have reached their association limits in HubSpot CRM.", + "parameters": [ + { + "name": "from_object_type_id", + "type": "string", + "required": true, + "description": "Identifier for the 'from' object type whose records' association limits are being queried.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/limits/associations/records/{fromObjectTypeId}/to'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.FetchAssociationLimitObjects", + "parameters": { + "from_object_type_id": { + "value": "contacts", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchEnablementData", + "qualifiedName": "HubspotCrmApi.FetchEnablementData", + "fullyQualifiedName": "HubspotCrmApi.FetchEnablementData@1.0.0", + "description": "Fetch enablement data from HubSpot CRM.\n\nUse this tool to obtain enablement information from the HubSpot CRM. It should be called when detailed enablement data is required for CRM-related operations or analyses.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/object-library/enablement'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.FetchEnablementData", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchHubspotListById", + "qualifiedName": "HubspotCrmApi.FetchHubspotListById", + "fullyQualifiedName": "HubspotCrmApi.FetchHubspotListById@1.0.0", + "description": "Fetch a single HubSpot CRM list using its ILS list ID.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The ILS ID of the HubSpot CRM list to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "include_filter_definitions", + "type": "boolean", + "required": false, + "description": "Include filter branch definitions in the response. Defaults to false, meaning filter definitions are not included.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.lists.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/lists/{listId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.FetchHubspotListById", + "parameters": { + "list_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "include_filter_definitions": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchHubspotListMemberships", + "qualifiedName": "HubspotCrmApi.FetchHubspotListMemberships", + "fullyQualifiedName": "HubspotCrmApi.FetchHubspotListMemberships@1.0.0", + "description": "Retrieve memberships of a HubSpot list by order of record ID.\n\nUse this tool to fetch the memberships of a specific list in HubSpot CRM, sorted by `recordId`. The results can be ordered in ascending or descending order based on the presence of an `after` or `before` offset.", + "parameters": [ + { + "name": "list_identifier", + "type": "string", + "required": true, + "description": "The ILS ID of the HubSpot list to retrieve memberships for.", + "enum": null, + "inferrable": true + }, + { + "name": "before_offset_token", + "type": "string", + "required": false, + "description": "The paging offset token for the page before the previously requested records, used to sort records in descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "integer", + "required": false, + "description": "Defines how many records to retrieve in the response, with a maximum value of 250.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_offset_after_token", + "type": "string", + "required": false, + "description": "The paging offset token for the page that comes after the previously requested records. If provided, records will follow this offset, sorted in ascending order. Takes precedence over the before offset.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.lists.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/lists/{listId}/memberships_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.FetchHubspotListMemberships", + "parameters": { + "list_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "before_offset_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_offset_after_token": { + "value": "def456uvw", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchHubspotObjectById", + "qualifiedName": "HubspotCrmApi.FetchHubspotObjectById", + "fullyQualifiedName": "HubspotCrmApi.FetchHubspotObjectById@1.0.0", + "description": "Retrieve a HubSpot CRM object using its unique ID.\n\nUse this tool to fetch the details of a HubSpot CRM object by its unique ID. Specify the object type and optional parameters to control the returned data.", + "parameters": [ + { + "name": "object_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the HubSpot CRM object to retrieve. This can be the internal object ID or another unique property value if specified by the `id_property` parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": true, + "description": "The type of the HubSpot CRM object you want to retrieve. Examples include 'contact', 'company', and 'deal'.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify object types to retrieve associated IDs for, separated by commas. Non-existing associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to return along with their historical values. Ignored if properties are not present.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. Set to false to include all results.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return for the object. Ignored if not present on the object.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the property name that uniquely identifies the object.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/{objectType}/{objectId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.FetchHubspotObjectById", + "parameters": { + "object_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "object_type": { + "value": "contact", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["company", "deal"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["email", "last_contacted"], + "type": "array", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "return_properties": { + "value": ["firstName", "lastName", "email"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "email", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchHubspotObjectRecords", + "qualifiedName": "HubspotCrmApi.FetchHubspotObjectRecords", + "fullyQualifiedName": "HubspotCrmApi.FetchHubspotObjectRecords@1.0.0", + "description": "Retrieve HubSpot CRM records by ID or custom property.\n\n Use this tool to retrieve HubSpot CRM records by specifying record IDs or by using a custom unique value property with the `idProperty` parameter.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Indicate if only archived records should be returned when retrieving HubSpot CRM data. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.services.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-162/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.FetchHubspotObjectRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"properties\":[\"name\",\"email\"],\"idProperty\":\"custom_id\",\"idValues\":[\"1234\",\"5678\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchHubspotRecords", + "qualifiedName": "HubspotCrmApi.FetchHubspotRecords", + "fullyQualifiedName": "HubspotCrmApi.FetchHubspotRecords@1.0.0", + "description": "Retrieve HubSpot CRM records by ID or custom property.\n\n This tool retrieves records from HubSpot CRM using either a record ID or a custom unique value property. It should be called when you need to access specific CRM records based on these identifiers.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_records_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only HubSpot CRM records that have been archived. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.listings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-420/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.FetchHubspotRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_records_only": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"id\":\"12345\",\"properties\":{\"name\":\"Test Record\",\"email\":\"test@example.com\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchListByName", + "qualifiedName": "HubspotCrmApi.FetchListByName", + "fullyQualifiedName": "HubspotCrmApi.FetchListByName@1.0.0", + "description": "Fetch details of a list by its name and object type.\n\nUse this tool to obtain the information of a specific list in HubSpot CRM by providing the list name and object type ID.", + "parameters": [ + { + "name": "list_name", + "type": "string", + "required": true, + "description": "The name of the list to fetch. This is not case sensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "object_type_id", + "type": "string", + "required": true, + "description": "The object type ID for the list. Example: `0-1` for `CONTACT`.", + "enum": null, + "inferrable": true + }, + { + "name": "include_filters", + "type": "boolean", + "required": false, + "description": "Set to true to include filter branch definitions in the response. By default, filters are not included.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.lists.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/lists/object-type-id/{objectTypeId}/name/{listName}_getByName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.FetchListByName", + "parameters": { + "list_name": { + "value": "Marketing Leads", + "type": "string", + "required": true + }, + "object_type_id": { + "value": "0-1", + "type": "string", + "required": true + }, + "include_filters": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchListMembershipsOrdered", + "qualifiedName": "HubspotCrmApi.FetchListMembershipsOrdered", + "fullyQualifiedName": "HubspotCrmApi.FetchListMembershipsOrdered@1.0.0", + "description": "Fetch list memberships ordered by addition date.\n\nFetch the memberships of a HubSpot CRM list, ordered by the date they were added. Useful for retrieving member records in an ascending order based on addition time, or in descending order if a 'before' offset is used.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique ILS ID of the list to retrieve memberships from.", + "enum": null, + "inferrable": true + }, + { + "name": "after_paging_offset_token", + "type": "string", + "required": false, + "description": "The token for the page that comes after the previously requested records, sorted in ascending order. Takes precedence over 'before'.", + "enum": null, + "inferrable": true + }, + { + "name": "before_offset_token", + "type": "string", + "required": false, + "description": "The paging offset token to retrieve records preceding the specified page, sorted in descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "record_limit", + "type": "integer", + "required": false, + "description": "Specify the number of records to return, with a maximum limit of 250.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.lists.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/lists/{listId}/memberships/join-order_getPageOrderedByAddedToListDate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.FetchListMembershipsOrdered", + "parameters": { + "list_id": { + "value": "12345-abcde", + "type": "string", + "required": true + }, + "after_paging_offset_token": { + "value": "token123", + "type": "string", + "required": false + }, + "before_offset_token": { + "value": "token456", + "type": "string", + "required": false + }, + "record_limit": { + "value": 100, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchPropertyValidation", + "qualifiedName": "HubspotCrmApi.FetchPropertyValidation", + "fullyQualifiedName": "HubspotCrmApi.FetchPropertyValidation@1.0.0", + "description": "Retrieve validation rules for a specific property in HubSpot CRM.\n\nThis tool is used to read the validation rules of a property identified by {propertyName} within a specified object type in HubSpot CRM. It helps to understand the constraints and validations applied to a property.", + "parameters": [ + { + "name": "object_type_id", + "type": "string", + "required": true, + "description": "The unique identifier for the object type in HubSpot CRM, such as \"contacts\" or \"deals\".", + "enum": null, + "inferrable": true + }, + { + "name": "property_name", + "type": "string", + "required": true, + "description": "The name of the property whose validation rules you want to retrieve in HubSpot CRM. It must match exactly to identify the property correctly.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.subscriptions.write", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.pipelines.orders.read", + "automation", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.marketing_events.read", + "crm.objects.appointments.read", + "crm.schemas.appointments.read", + "crm.objects.subscriptions.read", + "crm.schemas.deals.read", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.contacts.sensitive.read.v2", + "crm.schemas.line_items.read", + "crm.objects.goals.read", + "media_bridge.read", + "crm.objects.products.write", + "crm.schemas.listings.read", + "crm.objects.contacts.write", + "crm.objects.goals.write", + "crm.schemas.custom.read", + "crm.objects.marketing_events.write", + "crm.objects.leads.read", + "crm.schemas.orders.read", + "crm.objects.feedback_submissions.read", + "crm.objects.custom.sensitive.write.v2", + "crm.schemas.quotes.read", + "tickets", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.schemas.commercepayments.read", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.leads.write", + "crm.objects.commercepayments.write", + "crm.objects.orders.read", + "crm.schemas.carts.read", + "tickets.sensitive.v2", + "crm.schemas.invoices.read", + "crm.objects.contacts.sensitive.write.v2", + "e-commerce", + "crm.objects.owners.read", + "crm.objects.quotes.write", + "crm.objects.line_items.write", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.schemas.services.read", + "crm.objects.courses.write", + "crm.schemas.contacts.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.services.write", + "crm.objects.courses.read", + "crm.schemas.courses.read", + "crm.objects.custom.read", + "crm.schemas.subscriptions.read", + "crm.schemas.companies.read", + "tickets.highly_sensitive.v2", + "crm.objects.companies.write", + "crm.objects.quotes.read", + "crm.objects.companies.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.invoices.read", + "crm.objects.listings.write", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/property-validations/{objectTypeId}/{propertyName}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.FetchPropertyValidation", + "parameters": { + "object_type_id": { + "value": "contacts", + "type": "string", + "required": true + }, + "property_name": { + "value": "email", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchTicketsPage", + "qualifiedName": "HubspotCrmApi.FetchTicketsPage", + "fullyQualifiedName": "HubspotCrmApi.FetchTicketsPage@1.0.0", + "description": "Retrieve a page of tickets from HubSpot CRM.\n\nUse this tool to read a page of tickets from HubSpot CRM. You can control the returned data using the `properties` query parameter.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types (e.g. 'contacts', 'companies') to retrieve associated IDs for tickets. Ignore if they don't exist.", + "enum": null, + "inferrable": true + }, + { + "name": "include_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to return for each ticket. Specify as strings; unlisted properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token for the last read resource to continue paging results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to return with their historical values. Reduces the number of tickets retrievable per request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to display per page. Must be a positive integer.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived", + "type": "boolean", + "required": false, + "description": "Return only archived tickets if set to 'True'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tickets"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/tickets_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.FetchTicketsPage", + "parameters": { + "associated_object_types": { + "value": ["contacts", "companies"], + "type": "array", + "required": false + }, + "include_properties": { + "value": ["subject", "status", "created_at"], + "type": "array", + "required": false + }, + "paging_cursor_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["status"], + "type": "array", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "return_only_archived": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GdprDeleteContact", + "qualifiedName": "HubspotCrmApi.GdprDeleteContact", + "fullyQualifiedName": "HubspotCrmApi.GdprDeleteContact@1.0.0", + "description": "Permanently delete a contact for GDPR compliance.\n\nUse this tool to permanently delete a contact and all associated content to comply with GDPR. You can identify the contact by email address using the 'idProperty'. If the email isn't found, it will be added to a blocklist to avoid future use.", + "parameters": [ + { + "name": "contact_identifier", + "type": "string", + "required": true, + "description": "The unique ID or email used to identify the contact for deletion. Use 'email' in conjunction with 'id_property' if identifying by email.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_identifier_property", + "type": "string", + "required": false, + "description": "Specify 'email' to identify the contact by email address. If not using email, specify another unique identifier property.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/contacts/gdpr-delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GdprDeleteContact", + "parameters": { + "contact_identifier": { + "value": "john.doe@example.com", + "type": "string", + "required": true + }, + "contact_identifier_property": { + "value": "email", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GdprDeleteObject", + "qualifiedName": "HubspotCrmApi.GdprDeleteObject", + "fullyQualifiedName": "HubspotCrmApi.GdprDeleteObject@1.0.0", + "description": "Delete CRM objects in compliance with GDPR.\n\nThis tool removes specified CRM objects in accordance with GDPR regulations. It's used when you need to ensure data is deleted to comply with GDPR requests.", + "parameters": [ + { + "name": "object_id", + "type": "string", + "required": true, + "description": "The unique identifier for the CRM object to be deleted under GDPR compliance.", + "enum": null, + "inferrable": true + }, + { + "name": "object_type_for_gdpr_deletion", + "type": "string", + "required": true, + "description": "Specify the type of CRM object to delete (e.g., contacts, companies) for GDPR compliance.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify a unique property name for the object to be deleted under GDPR.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/objects/v3/{objectType}/gdpr-delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GdprDeleteObject", + "parameters": { + "object_id": { + "value": "123456", + "type": "string", + "required": true + }, + "object_type_for_gdpr_deletion": { + "value": "contacts", + "type": "string", + "required": true + }, + "unique_property_name": { + "value": "email", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllPipelines", + "qualifiedName": "HubspotCrmApi.GetAllPipelines", + "fullyQualifiedName": "HubspotCrmApi.GetAllPipelines@1.0.0", + "description": "Retrieve all pipelines for a specified object type.\n\nUse this tool to fetch all pipelines related to a specific object type in HubSpot CRM. This is useful for obtaining pipeline information for various CRM entities such as contacts, deals, etc.", + "parameters": [ + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Specify the CRM object type (e.g., contacts, deals) to retrieve pipelines for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.subscriptions.write", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.pipelines.orders.read", + "automation", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.marketing_events.read", + "crm.objects.appointments.read", + "crm.schemas.appointments.read", + "crm.objects.subscriptions.read", + "crm.schemas.deals.read", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.contacts.sensitive.read.v2", + "crm.schemas.line_items.read", + "crm.objects.goals.read", + "media_bridge.read", + "crm.objects.products.write", + "crm.schemas.listings.read", + "crm.objects.contacts.write", + "crm.objects.goals.write", + "crm.schemas.custom.read", + "crm.objects.marketing_events.write", + "crm.objects.leads.read", + "crm.schemas.orders.read", + "crm.objects.feedback_submissions.read", + "crm.objects.custom.sensitive.write.v2", + "crm.schemas.quotes.read", + "tickets", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.schemas.commercepayments.read", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.leads.write", + "crm.objects.commercepayments.write", + "crm.objects.orders.read", + "crm.schemas.carts.read", + "tickets.sensitive.v2", + "crm.schemas.invoices.read", + "crm.objects.contacts.sensitive.write.v2", + "e-commerce", + "crm.objects.owners.read", + "crm.objects.quotes.write", + "crm.objects.line_items.write", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.schemas.services.read", + "crm.objects.courses.write", + "crm.schemas.contacts.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.services.write", + "crm.objects.courses.read", + "crm.schemas.courses.read", + "crm.objects.custom.read", + "crm.schemas.subscriptions.read", + "crm.schemas.companies.read", + "tickets.highly_sensitive.v2", + "crm.objects.companies.write", + "crm.objects.quotes.read", + "crm.objects.companies.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.invoices.read", + "crm.objects.listings.write", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/pipelines/{objectType}_getAll'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetAllPipelines", + "parameters": { + "object_type": { + "value": "deals", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAppointmentsData", + "qualifiedName": "HubspotCrmApi.GetAppointmentsData", + "fullyQualifiedName": "HubspotCrmApi.GetAppointmentsData@1.0.0", + "description": "Retrieve a page of appointments from HubSpot CRM.\n\nFetches appointment details using the specified properties to control the data returned. Useful for accessing and managing CRM appointment information.", + "parameters": [ + { + "name": "appointment_object_type", + "type": "string", + "required": true, + "description": "The type of HubSpot object to be queried, specifically for appointments.", + "enum": null, + "inferrable": true + }, + { + "name": "appointment_properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to include in the response. Properties not present on the requested objects are ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only results that have been archived.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "Token indicating the last successfully read resource to continue pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List properties to return with their history of values. Reduces max results per request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. If specified associations don't exist, they will be ignored.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/objects/v3/{objectType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetAppointmentsData", + "parameters": { + "appointment_object_type": { + "value": "meeting", + "type": "string", + "required": true + }, + "appointment_properties_to_return": { + "value": ["subject", "start_time", "end_time"], + "type": "array", + "required": false + }, + "only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "paging_cursor_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["status"], + "type": "array", + "required": false + }, + "results_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "retrieve_associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAssociationLimitRecords", + "qualifiedName": "HubspotCrmApi.GetAssociationLimitRecords", + "fullyQualifiedName": "HubspotCrmApi.GetAssociationLimitRecords@1.0.0", + "description": "Fetch records near association limits between two objects.\n\nUse this tool to retrieve records that are close to or have reached the association limits between specified objects in HubSpot CRM. This is useful for monitoring and managing object relationships within the CRM system.", + "parameters": [ + { + "name": "source_object_type_id", + "type": "string", + "required": true, + "description": "Specifies the ID of the source object type to check association limits from.", + "enum": null, + "inferrable": true + }, + { + "name": "to_object_type_id", + "type": "string", + "required": true, + "description": "The ID of the target object type for the association limit query.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/limits/associations/records/{fromObjectTypeId}/{toObjectTypeId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetAssociationLimitRecords", + "parameters": { + "source_object_type_id": { + "value": "12345", + "type": "string", + "required": true + }, + "to_object_type_id": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAssociationsInHubspot", + "qualifiedName": "HubspotCrmApi.GetAssociationsInHubspot", + "fullyQualifiedName": "HubspotCrmApi.GetAssociationsInHubspot@1.0.0", + "description": "Retrieve associations between HubSpot CRM objects.\n\nThis tool is used to get the associations between specified HubSpot CRM objects. Useful for identifying relationships between different objects in the CRM, such as contacts, deals, or companies.", + "parameters": [ + { + "name": "hubspot_object_id", + "type": "string", + "required": true, + "description": "The unique identifier for the HubSpot CRM object whose associations are being requested.", + "enum": null, + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Specifies the type of HubSpot CRM object (e.g., contact, deal, company) whose associations you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_type", + "type": "string", + "required": true, + "description": "The type of the target object to which the association is being found. Specify the object type like 'contact', 'deal', 'company', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "include_full_associations", + "type": "boolean", + "required": false, + "description": "Set to true to include full associations in the response, otherwise only basic associations will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of associations to return. Provide an integer value to limit the results.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_offset_after", + "type": "string", + "required": false, + "description": "A string used for pagination to get the next set of results after the specified cursor. Leave empty or omit for the first set of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/objects/v3/{objectType}/{objectId}/associations/{toObjectType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetAssociationsInHubspot", + "parameters": { + "hubspot_object_id": { + "value": "12345", + "type": "string", + "required": true + }, + "object_type": { + "value": "contact", + "type": "string", + "required": true + }, + "target_object_type": { + "value": "deal", + "type": "string", + "required": true + }, + "include_full_associations": { + "value": true, + "type": "boolean", + "required": false + }, + "max_results": { + "value": 10, + "type": "integer", + "required": false + }, + "paging_offset_after": { + "value": "", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAssociationTypes", + "qualifiedName": "HubspotCrmApi.GetAssociationTypes", + "fullyQualifiedName": "HubspotCrmApi.GetAssociationTypes@1.0.0", + "description": "Get association types between two object types in HubSpot CRM.\n\nUse this tool to retrieve all association types between specified object types in HubSpot CRM. This is useful when needing to understand the relationships between different entities in the CRM system.", + "parameters": [ + { + "name": "source_object_type", + "type": "string", + "required": true, + "description": "Specifies the source object type in HubSpot CRM from which associations are retrieved (e.g., 'contact', 'deal').", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_type", + "type": "string", + "required": true, + "description": "Specify the type of the destination object to retrieve association types for. These are the related entities in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/associations/{fromObjectType}/{toObjectType}/types_getAll'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetAssociationTypes", + "parameters": { + "source_object_type": { + "value": "contact", + "type": "string", + "required": true + }, + "target_object_type": { + "value": "deal", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCalculatedPropertiesLimits", + "qualifiedName": "HubspotCrmApi.GetCalculatedPropertiesLimits", + "fullyQualifiedName": "HubspotCrmApi.GetCalculatedPropertiesLimits@1.0.0", + "description": "Get limits and usage for calculated properties in HubSpot CRM.\n\nCall this tool to retrieve overall limits and per object usage for calculated properties in HubSpot CRM.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/limits/calculated-properties'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetCalculatedPropertiesLimits", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCallDetails", + "qualifiedName": "HubspotCrmApi.GetCallDetails", + "fullyQualifiedName": "HubspotCrmApi.GetCallDetails@1.0.0", + "description": "Retrieve details of a call using its ID in HubSpot CRM.\n\nThis tool fetches the details of a call object in HubSpot CRM using the call ID. It allows optional control over which properties of the call are returned. Use this tool to retrieve specific information on call objects by their unique identification.", + "parameters": [ + { + "name": "call_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the call. This can be an internal object ID or a unique property value as specified.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify object types to retrieve associated IDs for. Use comma-separated values.", + "enum": null, + "inferrable": true + }, + { + "name": "only_archived_results", + "type": "boolean", + "required": false, + "description": "Specify `True` to return only archived results, otherwise `False`.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to return with history. Ignores non-existent properties.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to return in the response. Ignored if not present on requested object.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Unique property name used to identify the call object in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/calls/{callId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetCallDetails", + "parameters": { + "call_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "properties_with_history": { + "value": ["duration", "status"], + "type": "array", + "required": false + }, + "return_properties": { + "value": ["subject", "notes", "timestamp"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "custom_call_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCallsPage", + "qualifiedName": "HubspotCrmApi.GetCallsPage", + "fullyQualifiedName": "HubspotCrmApi.GetCallsPage@1.0.0", + "description": "Retrieve a page of call records from HubSpot CRM.\n\nThis tool is used to retrieve a page of call records from the HubSpot CRM. The response can be customized by specifying the desired call properties through the `properties` query parameter.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify object types to retrieve associated IDs for. Comma-separated list. Non-existing associations are ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "call_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to include in the response, such as call date, duration, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The paging cursor token from the last successfully read resource for retrieving the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to return with historical values. Note: Reduces max calls per request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of call records to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived call records. False will include non-archived records.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/calls_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetCallsPage", + "parameters": { + "associated_object_types": { + "value": "contact,company", + "type": "array", + "required": false + }, + "call_properties": { + "value": "call_date,duration,recording_url", + "type": "array", + "required": false + }, + "paging_cursor_token": { + "value": "abcdef123456", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": "call_date,duration", + "type": "array", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCartDetails", + "qualifiedName": "HubspotCrmApi.GetCartDetails", + "fullyQualifiedName": "HubspotCrmApi.GetCartDetails@1.0.0", + "description": "Retrieve detailed information of a cart by ID.\n\nUse this tool to get detailed information about a specific cart in the HubSpot CRM by providing the cart ID. It allows for optional specification of unique property values and controlled return data.", + "parameters": [ + { + "name": "cart_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the cart. This can be the internal ID or a unique property value specified by the `idProperty` parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for, such as 'deals' or 'contacts'.", + "enum": null, + "inferrable": true + }, + { + "name": "only_return_archived_results", + "type": "boolean", + "required": false, + "description": "Set to `true` to return only archived results; `false` includes all.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify properties to retrieve alongside their history of previous values, separated by commas.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of specific properties to retrieve for the cart. Ignored if properties don't exist.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify a property name with unique values for the cart object, if not using the default internal ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.carts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/carts/{cartId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetCartDetails", + "parameters": { + "cart_identifier": { + "value": "12345-abcde", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["deals", "contacts"], + "type": "array", + "required": false + }, + "only_return_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "properties_with_history": { + "value": ["status", "total_amount"], + "type": "array", + "required": false + }, + "return_properties": { + "value": ["cart_name", "created_date"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "cart_code", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCommercePayments", + "qualifiedName": "HubspotCrmApi.GetCommercePayments", + "fullyQualifiedName": "HubspotCrmApi.GetCommercePayments@1.0.0", + "description": "Retrieve a page of commerce payments from HubSpot CRM.\n\nThis tool allows you to retrieve a page of commerce payments from HubSpot CRM, with customizable properties.", + "parameters": [ + { + "name": "associations_to_retrieve", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object types to retrieve associated IDs for. Non-existing associations are ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The paging cursor token from the last successfully read resource. Used for paginating through results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to be returned with their historical values. Reduces the maximum payments per request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "returned_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the properties to return in the response. Non-present properties are ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "show_only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.commercepayments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/commerce_payments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetCommercePayments", + "parameters": { + "associations_to_retrieve": { + "value": ["contact", "deal"], + "type": "array", + "required": false + }, + "paging_cursor_token": { + "value": "cursor123", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["amount", "created_at"], + "type": "array", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "returned_properties": { + "value": ["id", "status", "amount", "currency"], + "type": "array", + "required": false + }, + "show_only_archived": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCommunicationById", + "qualifiedName": "HubspotCrmApi.GetCommunicationById", + "fullyQualifiedName": "HubspotCrmApi.GetCommunicationById@1.0.0", + "description": "Retrieve details of a communication by its ID.\n\nUse this tool to obtain the details of a communication object by specifying its unique ID. The ID can be the internal object ID or any unique property value. You can control the returned data using query parameters.", + "parameters": [ + { + "name": "communication_identifier", + "type": "string", + "required": true, + "description": "Specify the unique ID or property value for the communication object to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include in the response. Missing properties are ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the properties whose history of values should be returned. Comma-separated values are expected.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types for retrieving associated IDs. Non-existing associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only results that have been archived. Defaults to false to include non-archived results.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The property name used to uniquely identify the communication object. Allows retrieval by non-default identifiers.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/communications/{communicationId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetCommunicationById", + "parameters": { + "communication_identifier": { + "value": "12345-abcde", + "type": "string", + "required": true + }, + "properties_to_return": { + "value": ["subject", "body", "date"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["status"], + "type": "array", + "required": false + }, + "retrieve_associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "return_only_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "unique_property_name": { + "value": "email_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetContactDetails", + "qualifiedName": "HubspotCrmApi.GetContactDetails", + "fullyQualifiedName": "HubspotCrmApi.GetContactDetails@1.0.0", + "description": "Retrieve detailed information about a specific contact.\n\nThis tool fetches detailed information about a contact from HubSpot CRM, identified by `contactId`. It provides an option to specify which properties to return using query parameters. Use this tool when you need to access in-depth details about a contact, such as their internal object ID or any unique property value.", + "parameters": [ + { + "name": "contact_identifier", + "type": "string", + "required": true, + "description": "The ID or unique property value used to identify the contact in HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. Ignored if associations do not exist.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to return with their history of previous values. Ignored if properties are not present.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only results that have been archived.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to include in the response for the contact. If absent on the object, they will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The property name with unique values for the contact type, used to identify the object.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/contacts/{contactId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetContactDetails", + "parameters": { + "contact_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["deal", "ticket"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["email", "phone"], + "type": "array", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "return_properties": { + "value": ["firstname", "lastname", "company"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "email", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetContacts", + "qualifiedName": "HubspotCrmApi.GetContacts", + "fullyQualifiedName": "HubspotCrmApi.GetContacts@1.0.0", + "description": "Retrieve a page of contacts from HubSpot CRM.\n\nThis tool retrieves a page of contacts from the HubSpot CRM. You can specify which properties you want to be returned by controlling the `properties` query parameter.", + "parameters": [ + { + "name": "contact_properties_to_retrieve", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to include in the response. Non-existent properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of contact results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token indicating the last read resource, used for pagination to retrieve more results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify properties to return with their history of previous values, reducing the max number of objects per request.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associated_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. If associations do not exist, they will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Whether to return only results that have been archived. Use 'true' for archived only.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/contacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetContacts", + "parameters": { + "contact_properties_to_retrieve": { + "value": ["email", "firstname", "lastname", "phone"], + "type": "array", + "required": false + }, + "max_results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["email", "lastname"], + "type": "array", + "required": false + }, + "retrieve_associated_ids": { + "value": ["deals", "tickets"], + "type": "array", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCourseDetails", + "qualifiedName": "HubspotCrmApi.GetCourseDetails", + "fullyQualifiedName": "HubspotCrmApi.GetCourseDetails@1.0.0", + "description": "Fetch details of a course using the course ID.\n\nUse this tool to retrieve detailed information about a course identified by its ID. The tool provides access to all course-related data, leveraging the course ID or any unique property value specified.", + "parameters": [ + { + "name": "course_id", + "type": "string", + "required": true, + "description": "The unique identifier for the course. Use this to specify which course details to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "include_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to include in the response. Any missing properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "include_properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify properties to retrieve with their history of changes. Input as a list, each entry being a property name.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types for retrieving associated IDs. Non-existent associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only results that have been archived.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the name of a unique property for the course object.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.courses.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/0-410/{courseId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetCourseDetails", + "parameters": { + "course_id": { + "value": "C123456", + "type": "string", + "required": true + }, + "include_properties": { + "value": ["title", "description", "duration"], + "type": "array", + "required": false + }, + "include_properties_with_history": { + "value": ["enrollment_count", "last_updated"], + "type": "array", + "required": false + }, + "retrieve_associated_object_types": { + "value": ["student", "instructor"], + "type": "array", + "required": false + }, + "return_only_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "unique_property_name": { + "value": "course_code", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCourses", + "qualifiedName": "HubspotCrmApi.GetCourses", + "fullyQualifiedName": "HubspotCrmApi.GetCourses@1.0.0", + "description": "Fetch a page of courses from HubSpot CRM.\n\nUse this tool to read and retrieve information about a page of courses from HubSpot CRM. The response can be tailored using the `properties` query parameter to control what specific data is returned.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of object types to retrieve associated IDs for; ignored if non-existent.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of courses to display in a single page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The paging cursor token of the last successfully read resource, used to fetch the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma separated list of properties to include in the response. Ignored if not present on requested objects.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return with their history. This can reduce the number of courses per request.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. False includes non-archived results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.courses.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/0-410'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetCourses", + "parameters": { + "associated_object_types": { + "value": "contact,deal", + "type": "array", + "required": false + }, + "maximum_results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "properties_to_return": { + "value": "name,description,duration", + "type": "array", + "required": false + }, + "properties_with_history": { + "value": "name", + "type": "array", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCrmFees", + "qualifiedName": "HubspotCrmApi.GetCrmFees", + "fullyQualifiedName": "HubspotCrmApi.GetCrmFees@1.0.0", + "description": "Fetch a list of fees from the CRM.\n\nRetrieve a page of fee objects from the CRM, allowing control over returned properties through query parameters.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of object types to retrieve associated IDs for. Ignored if associations don't exist.", + "enum": null, + "inferrable": true + }, + { + "name": "fee_properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to be returned in the response. If a property is not present, it will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of fees to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token used to retrieve the next page of results. Use the token returned in `paging.next.after` from a previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return with their history. Reduces max number of fees per request.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only results that have been archived.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/fees'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetCrmFees", + "parameters": { + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "fee_properties_to_return": { + "value": ["amount", "currency", "description"], + "type": "array", + "required": false + }, + "maximum_results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["amount", "currency"], + "type": "array", + "required": false + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCrmObjectSchema", + "qualifiedName": "HubspotCrmApi.GetCrmObjectSchema", + "fullyQualifiedName": "HubspotCrmApi.GetCrmObjectSchema@1.0.0", + "description": "Retrieve a CRM object schema by its type.\n\nUse this tool to get detailed information about a specific CRM object schema by providing the object type. This helps in understanding the structure and properties of the CRM object within HubSpot.", + "parameters": [ + { + "name": "object_type", + "type": "string", + "required": true, + "description": "The fully qualified name or object type ID of the CRM schema to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.custom.sensitive.read.v2", + "crm.schemas.custom.read", + "crm.objects.custom.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm-object-schemas/v3/schemas/{objectType}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetCrmObjectSchema", + "parameters": { + "object_type": { + "value": "contacts", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomAssociationLabelsLimits", + "qualifiedName": "HubspotCrmApi.GetCustomAssociationLabelsLimits", + "fullyQualifiedName": "HubspotCrmApi.GetCustomAssociationLabelsLimits@1.0.0", + "description": "Get limits and usage for custom association labels in HubSpot CRM.\n\nThis tool retrieves limits and current usage information for custom association labels within the HubSpot CRM environment. It should be called when you need to understand the constraints or current utilization of these labels.", + "parameters": [ + { + "name": "source_object_type_id", + "type": "string", + "required": false, + "description": "The unique identifier for the source object type. It specifies which object type the association is coming from in the CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_type_id", + "type": "string", + "required": false, + "description": "The ID of the target object type to which the association label applies. Specify the target entity in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/limits/associations/labels'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetCustomAssociationLabelsLimits", + "parameters": { + "source_object_type_id": { + "value": "contact", + "type": "string", + "required": false + }, + "target_object_type_id": { + "value": "deal", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomObjectLimits", + "qualifiedName": "HubspotCrmApi.GetCustomObjectLimits", + "fullyQualifiedName": "HubspotCrmApi.GetCustomObjectLimits@1.0.0", + "description": "Retrieve limits and usage for HubSpot custom object schemas.\n\nThis tool is used to get the limits and usage data for custom object schemas in HubSpot CRM. It's useful for monitoring and managing custom object types and understanding their current usage.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.custom.sensitive.write.v2", + "crm.schemas.custom.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.custom.read", + "crm.schemas.custom.read", + "crm.objects.custom.write", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.custom.sensitive.read.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/limits/custom-object-types'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetCustomObjectLimits", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomPropertyLimits", + "qualifiedName": "HubspotCrmApi.GetCustomPropertyLimits", + "fullyQualifiedName": "HubspotCrmApi.GetCustomPropertyLimits@1.0.0", + "description": "Retrieve limits and usage for custom properties per object.\n\nUse this tool to access the limits and usage statistics for custom properties categorized by object in HubSpot CRM.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/limits/custom-properties'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetCustomPropertyLimits", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDealsPage", + "qualifiedName": "HubspotCrmApi.GetDealsPage", + "fullyQualifiedName": "HubspotCrmApi.GetDealsPage@1.0.0", + "description": "Read a page of deals from the CRM system.\n\nUse this tool to retrieve a page of deals from HubSpot CRM. You can control the information returned by specifying desired properties through query parameters.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object types to retrieve associated IDs for, separated by commas. If associations don't exist, they're ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "deal_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the properties to include in the response as a comma-separated string. Ignored if not present.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token for the paging cursor to retrieve the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of deal properties for which historical values are returned. Usage reduces max results per request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of deals to display per page, as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results; false to include active results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.deals.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/0-3_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetDealsPage", + "parameters": { + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "deal_properties": { + "value": ["dealname", "amount", "stage"], + "type": "array", + "required": false + }, + "paging_cursor_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["amount", "stage"], + "type": "array", + "required": false + }, + "results_limit_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFeedbackSubmissionById", + "qualifiedName": "HubspotCrmApi.GetFeedbackSubmissionById", + "fullyQualifiedName": "HubspotCrmApi.GetFeedbackSubmissionById@1.0.0", + "description": "Retrieve feedback submission details by ID.\n\nUse this tool to obtain details of a feedback submission using its ID. You can specify additional properties to control the details returned.", + "parameters": [ + { + "name": "feedback_submission_id", + "type": "string", + "required": true, + "description": "The ID of the feedback submission to retrieve details for. This can be the internal object ID or a unique property value specified by `idProperty`.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. If nonexistent, they will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to return with their history of previous values. Ignored if not present on the object.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results, false for active ones.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return in the response. Non-existent properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a property whose values are unique for the feedback submission object.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.contacts.read", + "crm.objects.feedback_submissions.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/feedback_submissions/{feedbackSubmissionId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetFeedbackSubmissionById", + "parameters": { + "feedback_submission_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["status", "rating"], + "type": "array", + "required": false + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "return_properties": { + "value": ["feedback_text", "submitted_at"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "submission_uuid", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFeedbackSubmissions", + "qualifiedName": "HubspotCrmApi.GetFeedbackSubmissions", + "fullyQualifiedName": "HubspotCrmApi.GetFeedbackSubmissions@1.0.0", + "description": "Retrieve a page of feedback submissions from the CRM.\n\nThis tool retrieves a page of feedback submissions from HubSpot CRM. It allows control over the returned data using the 'properties' query parameter.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma separated list of object types to retrieve associated IDs for, like 'contacts' or 'companies'. Ignored if nonexistent.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token of the last read resource for fetching the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return for each feedback submission. Comma separated. Ignores non-existing properties.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names whose history of values should be returned. Properties not present will be ignored. Reduces the maximum number of submissions per request.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived feedback submissions; false to include both archived and active submissions.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.contacts.read", + "crm.objects.feedback_submissions.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/feedback_submissions_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetFeedbackSubmissions", + "parameters": { + "associated_object_types": { + "value": ["contacts", "companies"], + "type": "array", + "required": false + }, + "max_results_per_page": { + "value": 100, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "properties_to_return": { + "value": ["submission_date", "feedback_score", "comments"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["feedback_score"], + "type": "array", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFeeDetails", + "qualifiedName": "HubspotCrmApi.GetFeeDetails", + "fullyQualifiedName": "HubspotCrmApi.GetFeeDetails@1.0.0", + "description": "Retrieve information about a specific fee by ID.\n\nThis tool is used to get detailed information about a fee object in HubSpot CRM using the fee's unique identifier. It can control the returned data with optional query parameters.", + "parameters": [ + { + "name": "fee_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the fee object to retrieve. It can be the internal object ID or a value from a unique property specified by the `idProperty` parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. Non-existent associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "only_return_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve only archived results. False for non-archived.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return with their history of previous values, specified as strings. Non-existent properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to return for the fee object. Any non-existent properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the property name with unique values for the fee object.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/fees/{feeId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetFeeDetails", + "parameters": { + "fee_identifier": { + "value": "FEE123456", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "only_return_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "properties_with_history": { + "value": ["amount", "status"], + "type": "array", + "required": false + }, + "return_properties": { + "value": ["name", "description", "amount"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "custom_fee_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGoalTargetById", + "qualifiedName": "HubspotCrmApi.GetGoalTargetById", + "fullyQualifiedName": "HubspotCrmApi.GetGoalTargetById@1.0.0", + "description": "Retrieve goal target object details using its ID.\n\nThis tool retrieves details of a goal target object identified by `goalTargetId`. It can use either the default internal object ID or any unique property value specified by the `idProperty` query parameter. The `properties` query parameter can control what information is returned.", + "parameters": [ + { + "name": "goal_target_id", + "type": "string", + "required": true, + "description": "The unique identifier for the goal target object. Can be the internal object ID or a unique property value specified by `idProperty`.", + "enum": null, + "inferrable": true + }, + { + "name": "archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. Default is false.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify object types to retrieve associated IDs. If not present, they will be ignored. Use commas to separate multiple types.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated properties to return with their value histories. Ignored if properties are absent on the object.", + "enum": null, + "inferrable": true + }, + { + "name": "returned_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return. Ignored if not present on the object.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The property name used as a unique identifier for the goal target object.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.goals.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/goal_targets/{goalTargetId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetGoalTargetById", + "parameters": { + "goal_target_id": { + "value": "gt-12345", + "type": "string", + "required": true + }, + "archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "associated_object_types": { + "value": ["contact", "deal"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["target_value", "completion_date"], + "type": "array", + "required": false + }, + "returned_properties": { + "value": ["name", "status", "owner"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "custom_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGoalTargets", + "qualifiedName": "HubspotCrmApi.GetGoalTargets", + "fullyQualifiedName": "HubspotCrmApi.GetGoalTargets@1.0.0", + "description": "Retrieve a page of goal targets from HubSpot CRM.\n\nUse this tool to access a specific page of goal targets within HubSpot CRM. You can control the data returned by specifying the `properties` query parameter.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object types to retrieve associated IDs for, ignored if non-existent.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "Token of the last successfully read item. Use it for fetching the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated properties to return with their history of previous values. Reduces the max number of goals retrievable in one request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only results that have been archived.", + "enum": null, + "inferrable": true + }, + { + "name": "returned_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to return in the response. Ignored if absent on requested objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.goals.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/goal_targets_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetGoalTargets", + "parameters": { + "associated_object_types": { + "value": ["CONTACT", "DEAL"], + "type": "array", + "required": false + }, + "paging_cursor_token": { + "value": "abc123def456", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["goal_name", "target_value"], + "type": "array", + "required": false + }, + "results_per_page_limit": { + "value": 25, + "type": "integer", + "required": false + }, + "return_only_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "returned_properties": { + "value": ["id", "goal_name", "status"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetHubspotCrmLimitsRecords", + "qualifiedName": "HubspotCrmApi.GetHubspotCrmLimitsRecords", + "fullyQualifiedName": "HubspotCrmApi.GetHubspotCrmLimitsRecords@1.0.0", + "description": "Retrieve limits and usage for records in HubSpot CRM.\n\nUse this tool to obtain detailed information about the limits and current usage of various objects within the HubSpot CRM records.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/limits/records'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetHubspotCrmLimitsRecords", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetHubspotCrmObjectSchemas", + "qualifiedName": "HubspotCrmApi.GetHubspotCrmObjectSchemas", + "fullyQualifiedName": "HubspotCrmApi.GetHubspotCrmObjectSchemas@1.0.0", + "description": "Retrieve HubSpot CRM object schemas.\n\nCall this tool to fetch all object schemas from the HubSpot CRM, which can help understand data structure within the CRM.", + "parameters": [ + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to True to return only results that have been archived.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.custom.sensitive.read.v2", + "crm.schemas.custom.read", + "crm.objects.custom.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm-object-schemas/v3/schemas_getAll'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetHubspotCrmObjectSchemas", + "parameters": { + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetHubspotDealById", + "qualifiedName": "HubspotCrmApi.GetHubspotDealById", + "fullyQualifiedName": "HubspotCrmApi.GetHubspotDealById@1.0.0", + "description": "Retrieve HubSpot CRM deal information by Deal ID.\n\nUse this tool to fetch detailed information about a specific deal in HubSpot CRM using the deal's unique ID. The response includes properties specified by the user.", + "parameters": [ + { + "name": "deal_id", + "type": "string", + "required": true, + "description": "The unique identifier of the deal to retrieve from HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object types to retrieve associated IDs for. Ignored if associations do not exist.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify properties to return with their history of values. Use a comma-separated list.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only results that have been archived.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to be returned in the response. Ignored if not present on the object.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the unique property name used to identify the deal. It defaults to an internal object ID if not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.deals.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/0-3/{dealId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetHubspotDealById", + "parameters": { + "deal_id": { + "value": "12345", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["amount", "stage"], + "type": "array", + "required": false + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "return_properties": { + "value": ["dealname", "amount", "closedate"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "custom_deal_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetHubspotDiscounts", + "qualifiedName": "HubspotCrmApi.GetHubspotDiscounts", + "fullyQualifiedName": "HubspotCrmApi.GetHubspotDiscounts@1.0.0", + "description": "Retrieve a page of discounts from HubSpot CRM.\n\nUse this tool to read a page of discounts from HubSpot CRM. You can control the returned data using the `properties` query parameter.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. Unknown associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The cursor token for pagination. Use the token from the last successfully read resource to fetch the next page.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return with their history; reduces number of discounts returned per request.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived discounts, false to include all.", + "enum": null, + "inferrable": true + }, + { + "name": "returned_discount_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to include in the response. Comma-separated, ignored if not present.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/discounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetHubspotDiscounts", + "parameters": { + "associated_object_types": { + "value": ["contact", "deal"], + "type": "array", + "required": false + }, + "maximum_results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["amount", "expiration_date"], + "type": "array", + "required": false + }, + "return_only_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "returned_discount_properties": { + "value": ["discount_code", "discount_value"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetHubspotLeadsPage", + "qualifiedName": "HubspotCrmApi.GetHubspotLeadsPage", + "fullyQualifiedName": "HubspotCrmApi.GetHubspotLeadsPage@1.0.0", + "description": "Retrieve a page of leads from HubSpot CRM.\n\nThis tool fetches a page of leads from the HubSpot CRM. It allows you to control the properties returned for the leads through query parameters.", + "parameters": [ + { + "name": "archived_leads_only", + "type": "boolean", + "required": false, + "description": "Return only leads that have been archived. Set to true to include only archived leads, false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of object types to retrieve associated IDs for; ignored if non-existent.", + "enum": null, + "inferrable": true + }, + { + "name": "lead_properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of the property names to include in the lead details response. Unavailable properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The cursor token to continue retrieving leads from where the last page ended.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties whose historical values will be returned. Reduce max leads per request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit_per_page", + "type": "integer", + "required": false, + "description": "Defines the maximum number of leads to display per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.leads.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/leads_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetHubspotLeadsPage", + "parameters": { + "archived_leads_only": { + "value": false, + "type": "boolean", + "required": false + }, + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "lead_properties_to_return": { + "value": ["firstname", "lastname", "email"], + "type": "array", + "required": false + }, + "paging_cursor_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["status", "lifecyclestage"], + "type": "array", + "required": false + }, + "results_limit_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetHubspotObjectById", + "qualifiedName": "HubspotCrmApi.GetHubspotObjectById", + "fullyQualifiedName": "HubspotCrmApi.GetHubspotObjectById@1.0.0", + "description": "Retrieve a HubSpot CRM object using its service ID.\n\nThis tool is used to read a specific HubSpot CRM object identified by its `serviceId`. It can optionally use any unique property value by specifying the `idProperty`. The returned data can be customized with the `properties` query parameter.", + "parameters": [ + { + "name": "hubspot_crm_service_id", + "type": "string", + "required": true, + "description": "The unique identifier (service ID) of the HubSpot CRM object to retrieve. This can be the internal object ID or any unique property defined by the `idProperty`.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types whose associated IDs should be retrieved. Non-existent associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to return along with their history for a HubSpot CRM object. Properties should be specified as strings in the list.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. False returns non-archived results.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to be returned in the response. Non-existing properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the name of a property with unique values for the object.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.services.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/0-162/{serviceId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetHubspotObjectById", + "parameters": { + "hubspot_crm_service_id": { + "value": "123456", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["status", "notes"], + "type": "array", + "required": false + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "return_properties_list": { + "value": ["email", "name"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "external_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetHubspotObjectsPage", + "qualifiedName": "HubspotCrmApi.GetHubspotObjectsPage", + "fullyQualifiedName": "HubspotCrmApi.GetHubspotObjectsPage@1.0.0", + "description": "Retrieve a page of HubSpot CRM objects.\n\nUse this tool to read a page of objects from HubSpot CRM. Specify the desired properties through the `properties` query parameter to control the returned data.", + "parameters": [ + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Specify the type of CRM object to retrieve, such as 'contacts', 'companies', or 'deals'.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated object types to retrieve associated IDs for. Ignored if associations do not exist.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token used to retrieve the next page of results. Obtained from the `paging.next.after` property of a previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the properties to return with their historical values in the CRM objects.", + "enum": null, + "inferrable": true + }, + { + "name": "requested_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to include in the response. Ignored if not present on the object(s).", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_results_only", + "type": "boolean", + "required": false, + "description": "Return only the archived results if set to true.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/{objectType}_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetHubspotObjectsPage", + "parameters": { + "object_type": { + "value": "contacts", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["companies", "deals"], + "type": "array", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["email", "phone"], + "type": "array", + "required": false + }, + "requested_properties": { + "value": ["firstname", "lastname", "createdate"], + "type": "array", + "required": false + }, + "return_archived_results_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetInvoiceById", + "qualifiedName": "HubspotCrmApi.GetInvoiceById", + "fullyQualifiedName": "HubspotCrmApi.GetInvoiceById@1.0.0", + "description": "Retrieve invoice details by ID.\n\nFetch invoice information using the unique identifier, `{invoiceId}`. This can include internal object ID or any unique property value specified by the `idProperty` parameter.", + "parameters": [ + { + "name": "invoice_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the invoice. This can be the internal object ID or any unique property value as specified by the `id_property`.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object types to retrieve associated IDs for, separated by commas. Ignored if associations don't exist.", + "enum": null, + "inferrable": true + }, + { + "name": "historical_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to return along with their history of previous values.", + "enum": null, + "inferrable": true + }, + { + "name": "requested_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to be returned in the response for the specified invoice. Properties not present on the object will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Specify `True` to return only archived results. `False` returns both archived and non-archived results.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_identifier_property", + "type": "string", + "required": false, + "description": "The name of a property whose values uniquely identify the invoice object. Specify this to use a unique property other than the internal object ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.invoices.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/invoices/{invoiceId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetInvoiceById", + "parameters": { + "invoice_identifier": { + "value": "INV-2023-001234", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["customer", "payment"], + "type": "array", + "required": false + }, + "historical_properties": { + "value": ["status", "amount"], + "type": "array", + "required": false + }, + "requested_properties": { + "value": ["amount", "due_date", "status"], + "type": "array", + "required": false + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "unique_identifier_property": { + "value": "invoice_number", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLeadById", + "qualifiedName": "HubspotCrmApi.GetLeadById", + "fullyQualifiedName": "HubspotCrmApi.GetLeadById@1.0.0", + "description": "Retrieve a lead by its unique identifier.\n\nThis tool retrieves detailed information about a lead from HubSpot CRM using a unique identifier. It allows filtering of returned data using optional query parameters such as `idProperty` for specifying unique properties and `properties` for controlling which data is returned.", + "parameters": [ + { + "name": "lead_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the lead. Typically the internal ID, or a unique property value if specified by `idProperty`.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of object types to retrieve associated IDs for, with non-existent associations ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to return with their history of previous values. Comma-separated values should be used. Ignored if properties are not present.", + "enum": null, + "inferrable": true + }, + { + "name": "returned_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to be returned in the response. Only specified properties present on the lead will be included.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specifies a unique property name to identify the lead. Overrides default ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.leads.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/leads/{leadsId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetLeadById", + "parameters": { + "lead_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "return_properties_with_history": { + "value": ["email", "phone"], + "type": "array", + "required": false + }, + "returned_properties": { + "value": ["first_name", "last_name", "email"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "custom_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLineItemDetails", + "qualifiedName": "HubspotCrmApi.GetLineItemDetails", + "fullyQualifiedName": "HubspotCrmApi.GetLineItemDetails@1.0.0", + "description": "Retrieve details of a line item by its ID.\n\nThis tool fetches details of a specific line item from HubSpot CRM using its internal ID or any unique property value. Use this tool to access information about a particular line item, specifying any desired properties to control the response.", + "parameters": [ + { + "name": "line_item_id", + "type": "string", + "required": true, + "description": "The unique ID or property value of the line item to retrieve. This identifies the specific line item in HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma separated list of object types to retrieve associated IDs for. Non-existent associations are ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "only_return_archived", + "type": "boolean", + "required": false, + "description": "Set to True to return only archived results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to return with their value history. Ignored if not present on the object.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to return. Ignored if not present on the object.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_identifier_property", + "type": "string", + "required": false, + "description": "Specifies a unique property name to identify the line item in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/line_items/{lineItemId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetLineItemDetails", + "parameters": { + "line_item_id": { + "value": "12345", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["deal", "contact"], + "type": "array", + "required": false + }, + "only_return_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "properties_with_history": { + "value": ["amount", "quantity"], + "type": "array", + "required": false + }, + "return_properties": { + "value": ["name", "description", "status"], + "type": "array", + "required": false + }, + "unique_identifier_property": { + "value": "custom_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListingDetails", + "qualifiedName": "HubspotCrmApi.GetListingDetails", + "fullyQualifiedName": "HubspotCrmApi.GetListingDetails@1.0.0", + "description": "Retrieve details of a listing by its ID.\n\nRetrieve information about a listing in HubSpot CRM using a unique listing ID or any specified unique property. Allows control of returned details via query parameters.", + "parameters": [ + { + "name": "unique_listing_id", + "type": "string", + "required": true, + "description": "The unique identifier for the listing to be retrieved in HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to be included in the response. Non-existent properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of property names to return along with their historical values.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object types to retrieve associated IDs for. Comma separated. Non-existent associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. Use false to include non-archived as well.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a property with unique values to identify the object in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.listings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/0-420/{listingId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetListingDetails", + "parameters": { + "unique_listing_id": { + "value": "12345-abcde", + "type": "string", + "required": true + }, + "properties_to_return": { + "value": ["title", "description", "price"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["price"], + "type": "array", + "required": false + }, + "retrieve_associated_object_types": { + "value": ["contacts", "tasks"], + "type": "array", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "unique_property_name": { + "value": "listingCode", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMeetingDetailsById", + "qualifiedName": "HubspotCrmApi.GetMeetingDetailsById", + "fullyQualifiedName": "HubspotCrmApi.GetMeetingDetailsById@1.0.0", + "description": "Retrieve detailed information about a specific meeting.\n\nUse this tool to get information about a meeting using its unique ID. You can specify properties to control what details are returned.", + "parameters": [ + { + "name": "meeting_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the meeting you want to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived meeting results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma separated list of properties to return with history of values. Ignored if not present on the object.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associated_object_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object types to fetch associated IDs for. Nonexistent associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to be returned in the response. If any specified properties are not present, they will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The property name whose values uniquely identify the meeting object.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/meetings/{meetingId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetMeetingDetailsById", + "parameters": { + "meeting_identifier": { + "value": "12345-abcde", + "type": "string", + "required": true + }, + "only_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "properties_with_history": { + "value": ["date", "attendees"], + "type": "array", + "required": false + }, + "retrieve_associated_object_ids": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "return_properties": { + "value": ["subject", "duration"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "meeting_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMeetingsPage", + "qualifiedName": "HubspotCrmApi.GetMeetingsPage", + "fullyQualifiedName": "HubspotCrmApi.GetMeetingsPage@1.0.0", + "description": "Retrieve a page of meetings data from HubSpot CRM.\n\nUse this tool to read a page of meetings from HubSpot CRM. You can specify which properties to return using query parameters.", + "parameters": [ + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of meeting results to display per page. Specify an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token indicating the last successfully read resource, used for paging through results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to return in the response. If any are not present, they will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to retrieve with their change history. Reduces max meetings returned per request.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associated_object_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List object types to retrieve associated IDs for; ignored if associations don't exist.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results; false to include active results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/meetings_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetMeetingsPage", + "parameters": { + "maximum_results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "properties": { + "value": ["subject", "date", "duration"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["subject", "duration"], + "type": "array", + "required": false + }, + "retrieve_associated_object_ids": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "return_archived_results": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMultiplePostalMailObjects", + "qualifiedName": "HubspotCrmApi.GetMultiplePostalMailObjects", + "fullyQualifiedName": "HubspotCrmApi.GetMultiplePostalMailObjects@1.0.0", + "description": "Retrieve multiple postal mail objects by IDs or unique values.\n\n This tool retrieves multiple postal mail objects from HubSpot CRM using their internal IDs or unique property values. It is useful when you need to access detailed information on several postal mail entries at once.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "include_archived", + "type": "boolean", + "required": false, + "description": "Set to true to include archived postal mail objects in the results. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/postal_mail/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetMultiplePostalMailObjects", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "include_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"ids\":[\"12345\",\"67890\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetNoteDetails", + "qualifiedName": "HubspotCrmApi.GetNoteDetails", + "fullyQualifiedName": "HubspotCrmApi.GetNoteDetails@1.0.0", + "description": "Retrieve details of a note by its unique ID.\n\nUse this tool to get details of a note from HubSpot CRM using its unique ID. You can specify additional properties to control the returned data.", + "parameters": [ + { + "name": "note_id", + "type": "string", + "required": true, + "description": "The unique identifier of the note to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the object types to retrieve associated IDs for, separated by commas. Invalid types are ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to return for the note. Non-existing properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_results_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived notes.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List properties to return with their history of previous values. Ignored if not present on the object.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the unique property name to identify the object in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/notes/{noteId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetNoteDetails", + "parameters": { + "note_id": { + "value": "12345", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "properties_to_return": { + "value": ["content", "createdAt"], + "type": "array", + "required": false + }, + "return_archived_results_only": { + "value": false, + "type": "boolean", + "required": false + }, + "return_properties_with_history": { + "value": ["content"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "note_title", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrderDetails", + "qualifiedName": "HubspotCrmApi.GetOrderDetails", + "fullyQualifiedName": "HubspotCrmApi.GetOrderDetails@1.0.0", + "description": "Retrieve details of an order using its ID.\n\nCall this tool to get detailed information about a specific order from the HubSpot CRM by using the order's ID. You can control which properties of the order are returned by specifying them in the `properties` query parameter.", + "parameters": [ + { + "name": "order_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the order. This can be the internal object ID or a unique property value specified by the idProperty.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma separated list of object types to retrieve associated IDs. Non-existent associations are ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to return with their history of previous values. If specified properties are not present, they will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results for the specified order.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the properties to retrieve for the order. Any nonexistent properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the name of a unique property to identify the order. Overrides the default ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.orders.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/orders/{orderId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetOrderDetails", + "parameters": { + "order_identifier": { + "value": "ORD123456", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["status", "totalAmount"], + "type": "array", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "return_properties": { + "value": ["orderDate", "shippingAddress", "items"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "customOrderID", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrdersPage", + "qualifiedName": "HubspotCrmApi.GetOrdersPage", + "fullyQualifiedName": "HubspotCrmApi.GetOrdersPage@1.0.0", + "description": "Retrieve a page of orders from CRM.\n\nThis tool fetches a page of orders from the CRM. You can specify which properties to include in the results using the query parameters. Use this tool to list orders when needed.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for; ignored if not existing.", + "enum": null, + "inferrable": true + }, + { + "name": "only_return_archived_orders", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived orders. False returns both archived and unarchived orders.", + "enum": null, + "inferrable": true + }, + { + "name": "order_properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to be included in the order response. Specify as a comma-separated string. Ignored if not present on the objects.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "Token for pagination, representing the last successfully read resource for fetching the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of order properties to return with their history of previous values. Reduces maximum results per request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of orders to display per page. This controls the pagination size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.orders.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/orders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetOrdersPage", + "parameters": { + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "only_return_archived_orders": { + "value": false, + "type": "boolean", + "required": false + }, + "order_properties_to_return": { + "value": ["order_id", "total_amount", "status"], + "type": "array", + "required": false + }, + "paging_cursor_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["status"], + "type": "array", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPartnerClientInfo", + "qualifiedName": "HubspotCrmApi.GetPartnerClientInfo", + "fullyQualifiedName": "HubspotCrmApi.GetPartnerClientInfo@1.0.0", + "description": "Retrieve information for a specific partner client.\n\nCall this tool to obtain details about a specific partner client using their unique identifier within the HubSpot CRM.", + "parameters": [ + { + "name": "partner_client_id", + "type": "string", + "required": true, + "description": "The unique identifier for the partner client to retrieve details from HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_objects", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of associated object types to include, such as 'contacts' or 'deals'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_data", + "type": "boolean", + "required": false, + "description": "Boolean to specify if archived partner client data should be included in the response. Set to true to include archived data.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of specific properties to retrieve for the partner client. Leave empty to obtain all available properties.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify the list of properties to retrieve, including their historical values.", + "enum": null, + "inferrable": true + }, + { + "name": "property_id", + "type": "string", + "required": false, + "description": "Specify which property should be used as the primary identifier for the partner client. Useful for custom identification schemes.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-clients.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/partner_clients/{partnerClientId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetPartnerClientInfo", + "parameters": { + "partner_client_id": { + "value": "123456", + "type": "string", + "required": true + }, + "associated_objects": { + "value": ["contacts", "deals"], + "type": "array", + "required": false + }, + "include_archived_data": { + "value": true, + "type": "boolean", + "required": false + }, + "optional_properties": { + "value": ["name", "email"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["status"], + "type": "array", + "required": false + }, + "property_id": { + "value": "custom_property_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPartnerClients", + "qualifiedName": "HubspotCrmApi.GetPartnerClients", + "fullyQualifiedName": "HubspotCrmApi.GetPartnerClients@1.0.0", + "description": "Retrieve partner clients from HubSpot CRM.\n\nThis tool retrieves a list of partner clients from the HubSpot CRM. It should be called when users need to access details about their partner clients stored in HubSpot's CRM.", + "parameters": [ + { + "name": "client_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of specific client properties to retrieve, such as 'name', 'email', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived", + "type": "boolean", + "required": false, + "description": "Set to true to include archived partner clients, false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "include_associations", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of associations to include in the response. Specify names of associations as strings.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string token to retrieve the next page of partner clients, obtained from a previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List property names to retrieve along with their historical versions. Each property should be specified as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieval_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of partner clients to retrieve from the HubSpot CRM in a single call.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-clients.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/partner_clients'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetPartnerClients", + "parameters": { + "client_properties": { + "value": ["name", "email", "phone"], + "type": "array", + "required": false + }, + "include_archived": { + "value": true, + "type": "boolean", + "required": false + }, + "include_associations": { + "value": ["deals", "tickets"], + "type": "array", + "required": false + }, + "pagination_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["last_contacted", "last_modified"], + "type": "array", + "required": false + }, + "retrieval_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPartnerServiceDetails", + "qualifiedName": "HubspotCrmApi.GetPartnerServiceDetails", + "fullyQualifiedName": "HubspotCrmApi.GetPartnerServiceDetails@1.0.0", + "description": "Retrieve details of a partner service by ID.\n\nUse this tool to get information about a specific partner service object using its ID. You can specify which properties to return or use the default settings to retrieve comprehensive details.", + "parameters": [ + { + "name": "partner_service_id", + "type": "string", + "required": true, + "description": "The unique ID of the partner service object to retrieve. This can be the internal object ID or a unique property value as specified by the `idProperty`.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to return for the partner service. Any missing properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties whose historical values should be returned for the partner service object.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associated_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of object types to retrieve associated IDs. Non-existent associations are ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results, false otherwise.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a unique property to identify the object.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-services.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/partner_services/{partnerServiceId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetPartnerServiceDetails", + "parameters": { + "partner_service_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "properties_to_return": { + "value": ["name", "status", "created_date"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["status"], + "type": "array", + "required": false + }, + "retrieve_associated_ids": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "unique_property_name": { + "value": "service_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPartnerServices", + "qualifiedName": "HubspotCrmApi.GetPartnerServices", + "fullyQualifiedName": "HubspotCrmApi.GetPartnerServices@1.0.0", + "description": "Retrieve a page of partner services.\n\nFetch a list of partner services from the HubSpot CRM. The returned data can be customized using the `properties` query parameter.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. Ignored if associations do not exist.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to display per page. Must be an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_after", + "type": "string", + "required": false, + "description": "The cursor token to retrieve the next page of results in a paged response.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of property names to fetch with their history. Reduces max number of results per request.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only results that have been archived.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return in the response. Ignored if not present on requested objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-services.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/partner_services'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetPartnerServices", + "parameters": { + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "maximum_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor_after": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["service_name", "service_type"], + "type": "array", + "required": false + }, + "return_only_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "return_properties": { + "value": ["id", "name", "status"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPaymentDetails", + "qualifiedName": "HubspotCrmApi.GetPaymentDetails", + "fullyQualifiedName": "HubspotCrmApi.GetPaymentDetails@1.0.0", + "description": "Retrieve details of a payment object by ID.\n\nUse this tool to obtain information about a specific payment object in the CRM by providing its ID. The ID can be the internal object ID or another unique property value. You can control the properties returned using the `properties` query parameter.", + "parameters": [ + { + "name": "payment_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the payment object. This can be the internal object ID or a unique property value.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return with their historical values. Unavailable properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "requested_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to return in the response. Non-existent properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associated_object_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for this payment. Non-existent associations are ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a property uniquely identifying the payment object type. Used to specify a unique property other than the internal ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/payments/{paymentsId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetPaymentDetails", + "parameters": { + "payment_identifier": { + "value": "12345-abcde", + "type": "string", + "required": true + }, + "properties_with_history": { + "value": ["amount", "status", "date"], + "type": "array", + "required": false + }, + "requested_properties": { + "value": ["amount", "currency", "payment_method"], + "type": "array", + "required": false + }, + "retrieve_associated_object_ids": { + "value": ["invoices", "deals"], + "type": "array", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "unique_property_name": { + "value": "transaction_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPaymentRecords", + "qualifiedName": "HubspotCrmApi.GetPaymentRecords", + "fullyQualifiedName": "HubspotCrmApi.GetPaymentRecords@1.0.0", + "description": "Retrieve a page of payment records from HubSpot CRM.\n\nUse this tool to get a list of payment records from the HubSpot CRM. You can specify which properties to include in the results by using query parameters.", + "parameters": [ + { + "name": "archived_results_only", + "type": "boolean", + "required": false, + "description": "Indicate if only archived payment records should be returned. Set to true to filter for archived records only.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. If specified associations do not exist, they will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_token_after", + "type": "string", + "required": false, + "description": "The cursor token from the last read resource to fetch the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "payment_properties_to_include", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to include in the response. Specified properties not present on the requested objects will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to return with their historical values. Ignored if not present on objects.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page_limit", + "type": "integer", + "required": false, + "description": "Maximum number of payment records to display per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/payments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetPaymentRecords", + "parameters": { + "archived_results_only": { + "value": false, + "type": "boolean", + "required": false + }, + "associated_object_types": { + "value": ["CONTACT", "COMPANY"], + "type": "array", + "required": false + }, + "paging_token_after": { + "value": "abc123token", + "type": "string", + "required": false + }, + "payment_properties_to_include": { + "value": ["amount", "currency", "payment_date"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["amount", "currency"], + "type": "array", + "required": false + }, + "results_per_page_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPipelineAuditLog", + "qualifiedName": "HubspotCrmApi.GetPipelineAuditLog", + "fullyQualifiedName": "HubspotCrmApi.GetPipelineAuditLog@1.0.0", + "description": "Retrieves the audit log for a specified CRM pipeline.\n\nCall this tool to obtain a list of all changes made to a specified pipeline in HubSpot CRM, in reverse chronological order.", + "parameters": [ + { + "name": "object_type", + "type": "string", + "required": true, + "description": "The type of CRM object for which audit logs are being retrieved, such as 'deals' or 'contacts'.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_id", + "type": "string", + "required": true, + "description": "The unique identifier for the pipeline to fetch the audit log from. This ID is used to target a specific pipeline within HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.subscriptions.write", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.pipelines.orders.read", + "automation", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.marketing_events.read", + "crm.objects.appointments.read", + "crm.schemas.appointments.read", + "crm.objects.subscriptions.read", + "crm.schemas.deals.read", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.contacts.sensitive.read.v2", + "crm.schemas.line_items.read", + "crm.objects.goals.read", + "media_bridge.read", + "crm.objects.products.write", + "crm.schemas.listings.read", + "crm.objects.contacts.write", + "crm.objects.goals.write", + "crm.schemas.custom.read", + "crm.objects.marketing_events.write", + "crm.objects.leads.read", + "crm.schemas.orders.read", + "crm.objects.feedback_submissions.read", + "crm.objects.custom.sensitive.write.v2", + "crm.schemas.quotes.read", + "tickets", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.schemas.commercepayments.read", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.leads.write", + "crm.objects.commercepayments.write", + "crm.objects.orders.read", + "crm.schemas.carts.read", + "tickets.sensitive.v2", + "crm.schemas.invoices.read", + "crm.objects.contacts.sensitive.write.v2", + "e-commerce", + "crm.objects.owners.read", + "crm.objects.quotes.write", + "crm.objects.line_items.write", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.schemas.services.read", + "crm.objects.courses.write", + "crm.schemas.contacts.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.services.write", + "crm.objects.courses.read", + "crm.schemas.courses.read", + "crm.objects.custom.read", + "crm.schemas.subscriptions.read", + "crm.schemas.companies.read", + "tickets.highly_sensitive.v2", + "crm.objects.companies.write", + "crm.objects.quotes.read", + "crm.objects.companies.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.invoices.read", + "crm.objects.listings.write", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/pipelines/{objectType}/{pipelineId}/audit_getAudit'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetPipelineAuditLog", + "parameters": { + "object_type": { + "value": "deals", + "type": "string", + "required": true + }, + "pipeline_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPipelineById", + "qualifiedName": "HubspotCrmApi.GetPipelineById", + "fullyQualifiedName": "HubspotCrmApi.GetPipelineById@1.0.0", + "description": "Retrieve a single CRM pipeline by its unique ID.\n\nUse this tool to get detailed information about a specific pipeline in the HubSpot CRM by providing its unique identifier and object type.", + "parameters": [ + { + "name": "object_type_in_crm", + "type": "string", + "required": true, + "description": "Specify the type of CRM object, such as 'deals' or 'tickets', whose pipeline you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the CRM pipeline to retrieve details. This value is required to fetch the specific pipeline information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.subscriptions.write", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.pipelines.orders.read", + "automation", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.marketing_events.read", + "crm.objects.appointments.read", + "crm.schemas.appointments.read", + "crm.objects.subscriptions.read", + "crm.schemas.deals.read", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.contacts.sensitive.read.v2", + "crm.schemas.line_items.read", + "crm.objects.goals.read", + "media_bridge.read", + "crm.objects.products.write", + "crm.schemas.listings.read", + "crm.objects.contacts.write", + "crm.objects.goals.write", + "crm.schemas.custom.read", + "crm.objects.marketing_events.write", + "crm.objects.leads.read", + "crm.schemas.orders.read", + "crm.objects.feedback_submissions.read", + "crm.objects.custom.sensitive.write.v2", + "crm.schemas.quotes.read", + "tickets", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.schemas.commercepayments.read", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.leads.write", + "crm.objects.commercepayments.write", + "crm.objects.orders.read", + "crm.schemas.carts.read", + "tickets.sensitive.v2", + "crm.schemas.invoices.read", + "crm.objects.contacts.sensitive.write.v2", + "e-commerce", + "crm.objects.owners.read", + "crm.objects.quotes.write", + "crm.objects.line_items.write", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.schemas.services.read", + "crm.objects.courses.write", + "crm.schemas.contacts.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.services.write", + "crm.objects.courses.read", + "crm.schemas.courses.read", + "crm.objects.custom.read", + "crm.schemas.subscriptions.read", + "crm.schemas.companies.read", + "tickets.highly_sensitive.v2", + "crm.objects.companies.write", + "crm.objects.quotes.read", + "crm.objects.companies.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.invoices.read", + "crm.objects.listings.write", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/pipelines/{objectType}/{pipelineId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetPipelineById", + "parameters": { + "object_type_in_crm": { + "value": "deals", + "type": "string", + "required": true + }, + "pipeline_unique_id": { + "value": "12345-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPipelineStageAudit", + "qualifiedName": "HubspotCrmApi.GetPipelineStageAudit", + "fullyQualifiedName": "HubspotCrmApi.GetPipelineStageAudit@1.0.0", + "description": "Retrieve audit logs for a specific pipeline stage.\n\nThis tool retrieves a reverse chronological list of all mutations that have occurred on a specified pipeline stage within HubSpot CRM. It should be called when you need to audit changes or track the history of a pipeline stage.", + "parameters": [ + { + "name": "object_type", + "type": "string", + "required": true, + "description": "The CRM object type to query for the pipeline stage, such as 'deals', 'tickets', or 'contacts'.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_id", + "type": "string", + "required": true, + "description": "The unique identifier for the pipeline to retrieve stage audit logs from.", + "enum": null, + "inferrable": true + }, + { + "name": "stage_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the pipeline stage to audit. Use this to specify which stage's mutations you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.subscriptions.write", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.pipelines.orders.read", + "automation", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.marketing_events.read", + "crm.objects.appointments.read", + "crm.schemas.appointments.read", + "crm.objects.subscriptions.read", + "crm.schemas.deals.read", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.contacts.sensitive.read.v2", + "crm.schemas.line_items.read", + "crm.objects.goals.read", + "media_bridge.read", + "crm.objects.products.write", + "crm.schemas.listings.read", + "crm.objects.contacts.write", + "crm.objects.goals.write", + "crm.schemas.custom.read", + "crm.objects.marketing_events.write", + "crm.objects.leads.read", + "crm.schemas.orders.read", + "crm.objects.feedback_submissions.read", + "crm.objects.custom.sensitive.write.v2", + "crm.schemas.quotes.read", + "tickets", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.schemas.commercepayments.read", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.leads.write", + "crm.objects.commercepayments.write", + "crm.objects.orders.read", + "crm.schemas.carts.read", + "tickets.sensitive.v2", + "crm.schemas.invoices.read", + "crm.objects.contacts.sensitive.write.v2", + "e-commerce", + "crm.objects.owners.read", + "crm.objects.quotes.write", + "crm.objects.line_items.write", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.schemas.services.read", + "crm.objects.courses.write", + "crm.schemas.contacts.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.services.write", + "crm.objects.courses.read", + "crm.schemas.courses.read", + "crm.objects.custom.read", + "crm.schemas.subscriptions.read", + "crm.schemas.companies.read", + "tickets.highly_sensitive.v2", + "crm.objects.companies.write", + "crm.objects.quotes.read", + "crm.objects.companies.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.invoices.read", + "crm.objects.listings.write", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/pipelines/{objectType}/{pipelineId}/stages/{stageId}/audit_getAudit'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetPipelineStageAudit", + "parameters": { + "object_type": { + "value": "deals", + "type": "string", + "required": true + }, + "pipeline_id": { + "value": "123456", + "type": "string", + "required": true + }, + "stage_identifier": { + "value": "stage_01", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPipelineStageById", + "qualifiedName": "HubspotCrmApi.GetPipelineStageById", + "fullyQualifiedName": "HubspotCrmApi.GetPipelineStageById@1.0.0", + "description": "Retrieve a specific pipeline stage by its ID.\n\nUse this tool to get details of a particular stage within a pipeline in HubSpot CRM, identified by its unique stage ID.", + "parameters": [ + { + "name": "object_type", + "type": "string", + "required": true, + "description": "The type of CRM object, such as 'deals' or 'tickets', to access the pipeline stage for.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_id", + "type": "string", + "required": true, + "description": "The unique identifier for the pipeline in HubSpot CRM. Use this ID to specify which pipeline the stage belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "stage_id", + "type": "string", + "required": true, + "description": "Unique ID of the pipeline stage to retrieve details from HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.subscriptions.write", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.pipelines.orders.read", + "automation", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.marketing_events.read", + "crm.objects.appointments.read", + "crm.schemas.appointments.read", + "crm.objects.subscriptions.read", + "crm.schemas.deals.read", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.contacts.sensitive.read.v2", + "crm.schemas.line_items.read", + "crm.objects.goals.read", + "media_bridge.read", + "crm.objects.products.write", + "crm.schemas.listings.read", + "crm.objects.contacts.write", + "crm.objects.goals.write", + "crm.schemas.custom.read", + "crm.objects.marketing_events.write", + "crm.objects.leads.read", + "crm.schemas.orders.read", + "crm.objects.feedback_submissions.read", + "crm.objects.custom.sensitive.write.v2", + "crm.schemas.quotes.read", + "tickets", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.schemas.commercepayments.read", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.leads.write", + "crm.objects.commercepayments.write", + "crm.objects.orders.read", + "crm.schemas.carts.read", + "tickets.sensitive.v2", + "crm.schemas.invoices.read", + "crm.objects.contacts.sensitive.write.v2", + "e-commerce", + "crm.objects.owners.read", + "crm.objects.quotes.write", + "crm.objects.line_items.write", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.schemas.services.read", + "crm.objects.courses.write", + "crm.schemas.contacts.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.services.write", + "crm.objects.courses.read", + "crm.schemas.courses.read", + "crm.objects.custom.read", + "crm.schemas.subscriptions.read", + "crm.schemas.companies.read", + "tickets.highly_sensitive.v2", + "crm.objects.companies.write", + "crm.objects.quotes.read", + "crm.objects.companies.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.invoices.read", + "crm.objects.listings.write", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/pipelines/{objectType}/{pipelineId}/stages/{stageId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetPipelineStageById", + "parameters": { + "object_type": { + "value": "deals", + "type": "string", + "required": true + }, + "pipeline_id": { + "value": "12345", + "type": "string", + "required": true + }, + "stage_id": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPipelineStages", + "qualifiedName": "HubspotCrmApi.GetPipelineStages", + "fullyQualifiedName": "HubspotCrmApi.GetPipelineStages@1.0.0", + "description": "Retrieve all stages of a specified pipeline.\n\nUse this tool to get all the stages associated with a specific pipeline in HubSpot CRM. It requires specifying the pipeline through its ID and object type.", + "parameters": [ + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Specify the type of CRM object, such as deals or tickets, associated with the pipeline.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_id", + "type": "string", + "required": true, + "description": "The ID of the pipeline to retrieve stages for. Must be a valid pipeline ID in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.subscriptions.write", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.pipelines.orders.read", + "automation", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.marketing_events.read", + "crm.objects.appointments.read", + "crm.schemas.appointments.read", + "crm.objects.subscriptions.read", + "crm.schemas.deals.read", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.contacts.sensitive.read.v2", + "crm.schemas.line_items.read", + "crm.objects.goals.read", + "media_bridge.read", + "crm.objects.products.write", + "crm.schemas.listings.read", + "crm.objects.contacts.write", + "crm.objects.goals.write", + "crm.schemas.custom.read", + "crm.objects.marketing_events.write", + "crm.objects.leads.read", + "crm.schemas.orders.read", + "crm.objects.feedback_submissions.read", + "crm.objects.custom.sensitive.write.v2", + "crm.schemas.quotes.read", + "tickets", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.schemas.commercepayments.read", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.leads.write", + "crm.objects.commercepayments.write", + "crm.objects.orders.read", + "crm.schemas.carts.read", + "tickets.sensitive.v2", + "crm.schemas.invoices.read", + "crm.objects.contacts.sensitive.write.v2", + "e-commerce", + "crm.objects.owners.read", + "crm.objects.quotes.write", + "crm.objects.line_items.write", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.schemas.services.read", + "crm.objects.courses.write", + "crm.schemas.contacts.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.services.write", + "crm.objects.courses.read", + "crm.schemas.courses.read", + "crm.objects.custom.read", + "crm.schemas.subscriptions.read", + "crm.schemas.companies.read", + "tickets.highly_sensitive.v2", + "crm.objects.companies.write", + "crm.objects.quotes.read", + "crm.objects.companies.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.invoices.read", + "crm.objects.listings.write", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/pipelines/{objectType}/{pipelineId}/stages_getAll'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetPipelineStages", + "parameters": { + "object_type": { + "value": "deals", + "type": "string", + "required": true + }, + "pipeline_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPostalMailById", + "qualifiedName": "HubspotCrmApi.GetPostalMailById", + "fullyQualifiedName": "HubspotCrmApi.GetPostalMailById@1.0.0", + "description": "Retrieve details of a postal mail record by ID from HubSpot CRM.\n\nUse this tool to get detailed information about a specific postal mail record in HubSpot CRM by providing the postal mail ID.", + "parameters": [ + { + "name": "postal_mail_id", + "type": "string", + "required": true, + "description": "The unique identifier for the postal mail record to retrieve details from HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "identify_by_id_property", + "type": "string", + "required": false, + "description": "Specifies which property will be used as the primary identifier. Accepts a string that represents the property within the postal mail object that should be used to identify and retrieve details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived", + "type": "boolean", + "required": false, + "description": "Set to true to include archived postal mail records in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names for which history should be returned. Accepts an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "related_objects_associations", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of string identifiers representing related objects to retrieve alongside the postal mail record.", + "enum": null, + "inferrable": true + }, + { + "name": "specified_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of specific postal mail properties to retrieve. Leave empty to get all properties.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/postal_mail/{postalMailId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetPostalMailById", + "parameters": { + "postal_mail_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "identify_by_id_property": { + "value": "mail_id", + "type": "string", + "required": false + }, + "include_archived": { + "value": true, + "type": "boolean", + "required": false + }, + "properties_with_history": { + "value": ["status", "delivery_date"], + "type": "array", + "required": false + }, + "related_objects_associations": { + "value": ["contact_id_1", "company_id_2"], + "type": "array", + "required": false + }, + "specified_properties": { + "value": ["subject", "recipient_address"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPostalMailRecords", + "qualifiedName": "HubspotCrmApi.GetPostalMailRecords", + "fullyQualifiedName": "HubspotCrmApi.GetPostalMailRecords@1.0.0", + "description": "Retrieve postal mail records from the CRM.\n\nUse this tool to access postal mail records from the CRM. It is helpful for obtaining stored postal mail information.", + "parameters": [ + { + "name": "associated_objects", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associations for, such as contacts or companies.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_records", + "type": "boolean", + "required": false, + "description": "Include archived postal mail records if true; exclude them if false.", + "enum": null, + "inferrable": true + }, + { + "name": "include_properties_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify property names to include their history in the records. Use an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "max_records", + "type": "integer", + "required": false, + "description": "The maximum number of postal mail records to return. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_after", + "type": "string", + "required": false, + "description": "A cursor for pagination. Use it to retrieve the next set of postal mail records after a specific point.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_specific_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of specific properties to include in the response. Provide property names as strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/postal_mail_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetPostalMailRecords", + "parameters": { + "associated_objects": { + "value": ["contacts", "companies"], + "type": "array", + "required": false + }, + "include_archived_records": { + "value": true, + "type": "boolean", + "required": false + }, + "include_properties_history": { + "value": ["delivery_status", "sent_date"], + "type": "array", + "required": false + }, + "max_records": { + "value": 100, + "type": "integer", + "required": false + }, + "pagination_cursor_after": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "retrieve_specific_properties": { + "value": ["recipient_name", "postal_address"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProductDetailsById", + "qualifiedName": "HubspotCrmApi.GetProductDetailsById", + "fullyQualifiedName": "HubspotCrmApi.GetProductDetailsById@1.0.0", + "description": "Retrieve product details using a product ID.\n\nThis tool retrieves the details of a product in HubSpot CRM using its product ID. It can also use any unique property specified by the `idProperty` query parameter. Use this tool to obtain specific product information from HubSpot CRM.", + "parameters": [ + { + "name": "product_id", + "type": "string", + "required": true, + "description": "A unique identifier for the product. Can be the internal ID or any unique property as specified by `idProperty`.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of product properties to include in the response. Any missing properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List properties to return with their history of past values, separated by commas. Ignored if not present in object.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associated_object_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. Any non-existent associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. If false, only non-archived results are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the property name with unique values for the product object, instead of default productId.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.products.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/products/{productId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetProductDetailsById", + "parameters": { + "product_id": { + "value": "12345", + "type": "string", + "required": true + }, + "properties_to_return": { + "value": ["name", "price", "description"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["price"], + "type": "array", + "required": false + }, + "retrieve_associated_object_ids": { + "value": ["category", "manufacturer"], + "type": "array", + "required": false + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "unique_property_name": { + "value": "SKU", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProductsPage", + "qualifiedName": "HubspotCrmApi.GetProductsPage", + "fullyQualifiedName": "HubspotCrmApi.GetProductsPage@1.0.0", + "description": "Fetch a page of products from HubSpot CRM.\n\nUse this tool to retrieve a page of products from the HubSpot CRM. You can control the returned product details using the `properties` query parameter.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Provide a comma-separated list of object types to retrieve associated IDs for. Ignored if not existing.", + "enum": null, + "inferrable": true + }, + { + "name": "include_properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma separated list of product properties to include along with their history. Reduces maximum results per request if used.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The cursor token for the last read resource, used for paged responses.", + "enum": null, + "inferrable": true + }, + { + "name": "product_properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated properties to include in the response. Any non-existent properties for the requested objects will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only results that have been archived.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.products.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/products_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetProductsPage", + "parameters": { + "associated_object_types": { + "value": "contacts,companies", + "type": "array", + "required": false + }, + "include_properties_with_history": { + "value": "name,price", + "type": "array", + "required": false + }, + "maximum_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "product_properties_to_return": { + "value": "id,name,description", + "type": "array", + "required": false + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPropertyValidationRules", + "qualifiedName": "HubspotCrmApi.GetPropertyValidationRules", + "fullyQualifiedName": "HubspotCrmApi.GetPropertyValidationRules@1.0.0", + "description": "Retrieve validation rules for properties of a given object in HubSpot CRM.\n\nUse this tool to get detailed validation rules for all properties associated with a specified object type ID in HubSpot CRM. This can be helpful for understanding constraints and rules applied to object properties.", + "parameters": [ + { + "name": "object_type_id", + "type": "string", + "required": true, + "description": "The unique identifier for the object type in HubSpot CRM whose property validation rules you want to retrieve. This is a string value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.subscriptions.write", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.pipelines.orders.read", + "automation", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.marketing_events.read", + "crm.objects.appointments.read", + "crm.schemas.appointments.read", + "crm.objects.subscriptions.read", + "crm.schemas.deals.read", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.contacts.sensitive.read.v2", + "crm.schemas.line_items.read", + "crm.objects.goals.read", + "media_bridge.read", + "crm.objects.products.write", + "crm.schemas.listings.read", + "crm.objects.contacts.write", + "crm.objects.goals.write", + "crm.schemas.custom.read", + "crm.objects.marketing_events.write", + "crm.objects.leads.read", + "crm.schemas.orders.read", + "crm.objects.feedback_submissions.read", + "crm.objects.custom.sensitive.write.v2", + "crm.schemas.quotes.read", + "tickets", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.schemas.commercepayments.read", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.leads.write", + "crm.objects.commercepayments.write", + "crm.objects.orders.read", + "crm.schemas.carts.read", + "tickets.sensitive.v2", + "crm.schemas.invoices.read", + "crm.objects.contacts.sensitive.write.v2", + "e-commerce", + "crm.objects.owners.read", + "crm.objects.quotes.write", + "crm.objects.line_items.write", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.schemas.services.read", + "crm.objects.courses.write", + "crm.schemas.contacts.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.services.write", + "crm.objects.courses.read", + "crm.schemas.courses.read", + "crm.objects.custom.read", + "crm.schemas.subscriptions.read", + "crm.schemas.companies.read", + "tickets.highly_sensitive.v2", + "crm.objects.companies.write", + "crm.objects.quotes.read", + "crm.objects.companies.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.invoices.read", + "crm.objects.listings.write", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/property-validations/{objectTypeId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetPropertyValidationRules", + "parameters": { + "object_type_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetQuoteById", + "qualifiedName": "HubspotCrmApi.GetQuoteById", + "fullyQualifiedName": "HubspotCrmApi.GetQuoteById@1.0.0", + "description": "Retrieve details of a quote by its ID.\n\nFetches a quote from HubSpot CRM using its ID or a unique property value. Allows control over returned properties.", + "parameters": [ + { + "name": "quote_id", + "type": "string", + "required": true, + "description": "The ID or unique property value of the quote to be retrieved. This identifies the specific quote in HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "included_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to be returned in the response. If a property is not present, it will be ignored. Input should be an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "only_return_archived", + "type": "boolean", + "required": false, + "description": "Set to true to only return results that have been archived for the quote.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to return with their value history. Ignored if not present.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object types to retrieve associated IDs for; ignored if non-existent.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The property name with unique values for the quote object, used in the retrieval process.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.quotes.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/quotes/{quoteId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetQuoteById", + "parameters": { + "quote_id": { + "value": "12345-abcde", + "type": "string", + "required": true + }, + "included_properties": { + "value": ["amount", "status", "created_date"], + "type": "array", + "required": false + }, + "only_return_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "properties_with_history": { + "value": ["status"], + "type": "array", + "required": false + }, + "retrieve_associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "quote_number", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetQuotesPage", + "qualifiedName": "HubspotCrmApi.GetQuotesPage", + "fullyQualifiedName": "HubspotCrmApi.GetQuotesPage@1.0.0", + "description": "Retrieve a page of quotes with specified properties.\n\nUse this tool to read a page of quotes from HubSpot CRM. You can control the details returned by specifying properties through query parameters.", + "parameters": [ + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token to identify the last read resource for pagination. Use it to get the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return with their history. Reduces max quotes per request.", + "enum": null, + "inferrable": true + }, + { + "name": "quote_properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the properties to retrieve for each quote. Only present properties will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit", + "type": "integer", + "required": false, + "description": "The maximum number of quote results to display per page. Accepts an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associated_ids_for_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. Non-existing associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. False to include active results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.quotes.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/quotes_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetQuotesPage", + "parameters": { + "paging_cursor_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["amount", "status"], + "type": "array", + "required": false + }, + "quote_properties_to_return": { + "value": ["id", "amount", "status", "created_at"], + "type": "array", + "required": false + }, + "results_limit": { + "value": 25, + "type": "integer", + "required": false + }, + "retrieve_associated_ids_for_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRecordListMemberships", + "qualifiedName": "HubspotCrmApi.GetRecordListMemberships", + "fullyQualifiedName": "HubspotCrmApi.GetRecordListMemberships@1.0.0", + "description": "Retrieve lists a CRM record is a member of.\n\nThis tool retrieves the lists that a specified CRM record is a member of, helping track its association with different lists.", + "parameters": [ + { + "name": "object_type_id", + "type": "string", + "required": true, + "description": "Specify the object type ID of the record to retrieve its list memberships.", + "enum": null, + "inferrable": true + }, + { + "name": "record_id", + "type": "string", + "required": true, + "description": "The unique identifier of the CRM record whose list memberships you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.lists.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/lists/records/{objectTypeId}/{recordId}/memberships_getLists'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetRecordListMemberships", + "parameters": { + "object_type_id": { + "value": "contact", + "type": "string", + "required": true + }, + "record_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSubscriptionData", + "qualifiedName": "HubspotCrmApi.GetSubscriptionData", + "fullyQualifiedName": "HubspotCrmApi.GetSubscriptionData@1.0.0", + "description": "Fetch a page of subscription data from HubSpot CRM.\n\nThis tool retrieves a page of subscription data from HubSpot CRM. Use this tool to access subscription information, with options to control the returned data via query parameters.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object types to retrieve associated IDs for. Ignored if not existing.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of subscription results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token indicating the last successfully read resource, used for pagination in subsequent requests.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of property names for retrieving their values and history. Reduces max subscriptions per request.", + "enum": null, + "inferrable": true + }, + { + "name": "requested_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to be included in the response. If a specified property is not present in the requested objects, it will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. Set to false to include active results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.subscriptions.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/subscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetSubscriptionData", + "parameters": { + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["subscription_start_date", "subscription_end_date"], + "type": "array", + "required": false + }, + "requested_properties": { + "value": ["email", "subscription_status"], + "type": "array", + "required": false + }, + "return_only_archived": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSubscriptionDetails", + "qualifiedName": "HubspotCrmApi.GetSubscriptionDetails", + "fullyQualifiedName": "HubspotCrmApi.GetSubscriptionDetails@1.0.0", + "description": "Retrieve details of a specific subscription by ID.\n\nThis tool is used to fetch the details of a subscription object identified by its subscription ID. It allows control over what is returned using query parameters.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The unique identifier for the subscription object to be retrieved. This can be the internal object ID or a unique property value specified by the idProperty query param.", + "enum": null, + "inferrable": true + }, + { + "name": "association_types_to_retrieve", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. Non-existing associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived items, false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names whose values and history are to be retrieved for the subscription. Properties not present on the object will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "requested_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return in the response. Properties not present in the object will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The property name used to uniquely identify the subscription object instead of the default ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.subscriptions.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/subscriptions/{subscriptionId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetSubscriptionDetails", + "parameters": { + "subscription_id": { + "value": "sub_123456", + "type": "string", + "required": true + }, + "association_types_to_retrieve": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "properties_with_history": { + "value": ["status", "plan_type"], + "type": "array", + "required": false + }, + "requested_properties": { + "value": ["name", "created_date", "status"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "subscription_code", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaskDetails", + "qualifiedName": "HubspotCrmApi.GetTaskDetails", + "fullyQualifiedName": "HubspotCrmApi.GetTaskDetails@1.0.0", + "description": "Retrieve HubSpot CRM task details using task ID.\n\nCall this tool to get detailed information about a specific task in HubSpot CRM by providing the task ID. Modify the returned data using query parameters if needed.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier for the HubSpot CRM task. Retrieve specific task details using this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object types to retrieve associated IDs for. Returns IDs of related objects.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return with their previous values. Comma-separated and ignored if not present.", + "enum": null, + "inferrable": true + }, + { + "name": "requested_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return for the task. Only available properties will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the name of the property with unique values to identify the task.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/tasks/{taskId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetTaskDetails", + "parameters": { + "task_id": { + "value": "123456", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["EMAIL", "NOTE"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["status", "due_date"], + "type": "array", + "required": false + }, + "requested_properties": { + "value": ["title", "description", "created_at"], + "type": "array", + "required": false + }, + "return_only_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "unique_property_name": { + "value": "custom_task_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTasksList", + "qualifiedName": "HubspotCrmApi.GetTasksList", + "fullyQualifiedName": "HubspotCrmApi.GetTasksList@1.0.0", + "description": "Retrieve a page of tasks from HubSpot CRM.\n\nUse this tool to read a page of tasks from HubSpot CRM. Specify which properties to return using the 'properties' query parameter.", + "parameters": [ + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of task results to retrieve per page.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token indicating the last resource read, used for pagination to continue from the next page.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify properties to return along with their full change history. Note: This reduces the number of tasks per request.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associated_object_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. If specified associations do not exist, they will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived tasks; false for active tasks.", + "enum": null, + "inferrable": true + }, + { + "name": "task_properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to include in the response. Ignored if not present on the tasks.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/tasks_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetTasksList", + "parameters": { + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["due_date", "status"], + "type": "array", + "required": false + }, + "retrieve_associated_object_ids": { + "value": ["contacts", "deals"], + "type": "array", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "task_properties_to_return": { + "value": ["subject", "description", "owner"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaxDetailsById", + "qualifiedName": "HubspotCrmApi.GetTaxDetailsById", + "fullyQualifiedName": "HubspotCrmApi.GetTaxDetailsById@1.0.0", + "description": "Retrieve tax details using a specific tax ID.\n\nThis tool retrieves tax object details from HubSpot CRM by specifying a tax ID. The ID can be the internal object ID or any unique property value as set by the `idProperty` query parameter. Useful for accessing specific tax information within HubSpot.", + "parameters": [ + { + "name": "tax_id", + "type": "string", + "required": true, + "description": "The unique ID or property value for the tax object. Default is the internal object ID.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. Non-existent associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List properties to return with their historical values. Use a comma-separated format.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. False returns non-archived records.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to be included in the response. Non-existing properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a property whose values are unique for the tax object. Use this to specify an alternative ID property instead of the default internal ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/taxes/{taxId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetTaxDetailsById", + "parameters": { + "tax_id": { + "value": "12345", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["invoice", "payment"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["tax_rate", "calculation_method"], + "type": "array", + "required": false + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "return_properties": { + "value": ["tax_name", "description"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "custom_tax_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaxesPage", + "qualifiedName": "HubspotCrmApi.GetTaxesPage", + "fullyQualifiedName": "HubspotCrmApi.GetTaxesPage@1.0.0", + "description": "Retrieve a page of tax details from HubSpot CRM.\n\nUse this tool to read a specific page of tax details from the HubSpot CRM. You can control which properties are returned by specifying them in the query parameters.", + "parameters": [ + { + "name": "archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived tax results.", + "enum": null, + "inferrable": true + }, + { + "name": "included_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the properties to be returned for each tax. Specify as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of tax results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token for the paging cursor from the last read resource for fetching the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify properties to return with their history. Reduces max number of taxes per request.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associated_object_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of object types to retrieve associated IDs for. Non-existent associations will be ignored.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/taxes_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetTaxesPage", + "parameters": { + "archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "included_properties": { + "value": ["name", "rate", "description"], + "type": "array", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["rate"], + "type": "array", + "required": false + }, + "retrieve_associated_object_ids": { + "value": ["contacts", "companies"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTicketDetails", + "qualifiedName": "HubspotCrmApi.GetTicketDetails", + "fullyQualifiedName": "HubspotCrmApi.GetTicketDetails@1.0.0", + "description": "Retrieve details of a ticket by ID from HubSpot CRM.\n\nThis tool retrieves detailed information about a specific ticket in HubSpot CRM identified by `ticketId`. It's useful for obtaining comprehensive ticket data.", + "parameters": [ + { + "name": "ticket_id", + "type": "string", + "required": true, + "description": "The ID of the ticket to retrieve from HubSpot CRM. This can be the internal object ID or a unique property value based on the `idProperty`.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object types for retrieving associated IDs. Non-existent associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "only_return_archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to include in the response. Properties not present will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties with their history to be returned. If properties are missing, they'll be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_identifier_property", + "type": "string", + "required": false, + "description": "Specifies the property name with unique values for identifying the ticket.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tickets"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/tickets/{ticketId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetTicketDetails", + "parameters": { + "ticket_id": { + "value": "123456", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["CONTACT", "COMPANY"], + "type": "array", + "required": false + }, + "only_return_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "properties_to_return": { + "value": ["subject", "status", "priority"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["status", "priority"], + "type": "array", + "required": false + }, + "unique_identifier_property": { + "value": "ticket_number", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTranscriptById", + "qualifiedName": "HubspotCrmApi.GetTranscriptById", + "fullyQualifiedName": "HubspotCrmApi.GetTranscriptById@1.0.0", + "description": "Retrieve call transcript details by transcript ID.\n\nThis tool retrieves details of a call transcript for a given transcript ID in the HubSpot CRM. Use it to access specific call records and transcript data.", + "parameters": [ + { + "name": "transcript_id", + "type": "string", + "required": true, + "description": "The unique identifier of the call transcript to retrieve from HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.extensions_calling_transcripts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/extensions/calling/transcripts/{transcriptId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetTranscriptById", + "parameters": { + "transcript_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserInfo", + "qualifiedName": "HubspotCrmApi.GetUserInfo", + "fullyQualifiedName": "HubspotCrmApi.GetUserInfo@1.0.0", + "description": "Retrieves user information from HubSpot CRM using user ID.\n\nUse this tool to fetch detailed information about a user in HubSpot CRM by specifying the user's unique ID. You can control the returned data by using specific query parameters.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the user. This can be the internal object ID or a property value specified by `idProperty`.", + "enum": null, + "inferrable": true + }, + { + "name": "object_associations", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma separated list of object types to retrieve associated IDs for in the user info response.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of user properties to return in the response. If any specified properties are not present, they will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of property names to return with their value history for the user.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. Set to false to exclude archived items from results.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a property with unique values to identify the object.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/users/{userId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetUserInfo", + "parameters": { + "user_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "object_associations": { + "value": ["contacts", "deals"], + "type": "array", + "required": false + }, + "properties_to_return": { + "value": ["firstname", "lastname", "email"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["email"], + "type": "array", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "unique_property_name": { + "value": "user_email", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUsersPage", + "qualifiedName": "HubspotCrmApi.GetUsersPage", + "fullyQualifiedName": "HubspotCrmApi.GetUsersPage@1.0.0", + "description": "Fetch a page of users from the CRM.\n\nUse this tool to read a page of users from the HubSpot CRM. You can control which user properties are returned by using the appropriate query parameters.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types for which associated IDs should be retrieved. If specified associations do not exist, they will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The paging cursor token from the last read resource, used to fetch next set of results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return with their history. Reduces the maximum number of users per request.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only results that have been archived.", + "enum": null, + "inferrable": true + }, + { + "name": "user_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of user property names to include in the response. Any non-existent properties will be ignored.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/users'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.GetUsersPage", + "parameters": { + "associated_object_types": { + "value": ["CONTACT", "COMPANY"], + "type": "array", + "required": false + }, + "max_results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["email", "name"], + "type": "array", + "required": false + }, + "return_only_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "user_properties": { + "value": ["id", "email", "role"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "HubspotBatchArchiveAssociations", + "qualifiedName": "HubspotCrmApi.HubspotBatchArchiveAssociations", + "fullyQualifiedName": "HubspotCrmApi.HubspotBatchArchiveAssociations@1.0.0", + "description": "Batch archive associations in HubSpot CRM.\n\n This tool is used to archive multiple associations between specified object types in HubSpot CRM in a single batch operation. Call this tool when you need to efficiently remove associations between records, such as contacts and companies, or deals and tickets, in bulk.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "source_object_type", + "type": "string", + "required": false, + "description": "The type of the source object for the associations to be archived (e.g., 'contacts', 'companies'). Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_type", + "type": "string", + "required": false, + "description": "Specify the type of the object to which the association is directed, e.g., 'company', 'deal'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/associations/{fromObjectType}/{toObjectType}/batch/archive_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.HubspotBatchArchiveAssociations", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "source_object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "target_object_type": { + "value": "companies", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"associations\":[{\"sourceId\":\"123\",\"targetId\":\"456\"},{\"sourceId\":\"789\",\"targetId\":\"012\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "HubspotCrmSearchObjects", + "qualifiedName": "HubspotCrmApi.HubspotCrmSearchObjects", + "fullyQualifiedName": "HubspotCrmApi.HubspotCrmSearchObjects@1.0.0", + "description": "Search and retrieve objects from HubSpot CRM.\n\nUse this tool to perform a search for specific objects within the HubSpot CRM. It should be called when you need to find and retrieve detailed information about CRM objects based on search criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.courses.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-410/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.HubspotCrmSearchObjects", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filter\":{\"propertyName\":\"lastname\",\"operator\":\"EQ\",\"value\":\"Smith\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "HubspotCrmUpsertRecords", + "qualifiedName": "HubspotCrmApi.HubspotCrmUpsertRecords", + "fullyQualifiedName": "HubspotCrmApi.HubspotCrmUpsertRecords@1.0.0", + "description": "Create or update unique records in HubSpot CRM.\n\nThis tool allows for the creation or update of CRM records in HubSpot, identified by a unique property. Use it when you need to batch upload or modify records based on a unique identifier.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.services.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-162/batch/upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.HubspotCrmUpsertRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"records\":[{\"email\":\"john.doe@example.com\",\"firstname\":\"John\",\"lastname\":\"Doe\"},{\"email\":\"jane.smith@example.com\",\"firstname\":\"Jane\",\"lastname\":\"Smith\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "HubspotSearchCustomObjects", + "qualifiedName": "HubspotCrmApi.HubspotSearchCustomObjects", + "fullyQualifiedName": "HubspotCrmApi.HubspotSearchCustomObjects@1.0.0", + "description": "Search for custom objects in HubSpot CRM.\n\nUse this tool to search for custom objects within the HubSpot CRM. It should be called when you need to retrieve specific custom object data based on certain criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.services.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-162/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.HubspotSearchCustomObjects", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"criteria\":{\"property\":\"status\",\"value\":\"active\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "HubspotUpdateListing", + "qualifiedName": "HubspotCrmApi.HubspotUpdateListing", + "fullyQualifiedName": "HubspotCrmApi.HubspotUpdateListing@1.0.0", + "description": "Update specific details of a HubSpot listing.\n\n This tool performs a partial update of a HubSpot listing identified by `listingId` or a unique property specified by `idProperty`. It overwrites provided property values, with errors for read-only or non-existent properties. Clear values by passing an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "listing_id", + "type": "string", + "required": false, + "description": "The unique identifier of the listing to update in HubSpot. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a unique property for this object, used for identification. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.listings.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/0-420/{listingId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.HubspotUpdateListing", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "listing_id": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "listing_code", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Listing Title\",\"description\":\"Updated description of the listing.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCrmEntries", + "qualifiedName": "HubspotCrmApi.ListCrmEntries", + "fullyQualifiedName": "HubspotCrmApi.ListCrmEntries@1.0.0", + "description": "Retrieve a page of CRM listings with specified properties.\n\nThis tool fetches a page of CRM listings from HubSpot, allowing the user to control which properties are returned via query parameters. Use this to obtain customer records and details from the CRM.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for, such as 'contacts' or 'deals'. Ignored if not existent.", + "enum": null, + "inferrable": true + }, + { + "name": "include_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. False to exclude archived entries.", + "enum": null, + "inferrable": true + }, + { + "name": "include_properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the properties whose values along with their history should be returned. Reduces the number of listings per request.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of CRM listing results to display per page. This controls pagination size.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The cursor token for fetching the next page of CRM listings.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include in the response. Non-existent properties will be ignored.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.listings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/0-420'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ListCrmEntries", + "parameters": { + "associated_object_types": { + "value": ["contacts", "deals"], + "type": "array", + "required": false + }, + "include_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "include_properties_with_history": { + "value": ["email", "phone"], + "type": "array", + "required": false + }, + "maximum_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "properties_to_return": { + "value": ["firstname", "lastname", "email"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPartnerClientAssociations", + "qualifiedName": "HubspotCrmApi.ListPartnerClientAssociations", + "fullyQualifiedName": "HubspotCrmApi.ListPartnerClientAssociations@1.0.0", + "description": "Retrieve associations of a partner client by type.\n\nUse this tool to list associations for a specific partner client in HubSpot CRM. It helps in retrieving related objects based on the specified type.", + "parameters": [ + { + "name": "partner_client_id", + "type": "string", + "required": true, + "description": "The unique identifier for the partner client whose associations are to be retrieved. It is required and must be a valid string.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_type", + "type": "string", + "required": true, + "description": "The type of object to which the partner client is associated. Specify using a string value representing the object type, such as 'contact' or 'deal'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_family_associations", + "type": "boolean", + "required": false, + "description": "Indicate whether to include family associations in the response. Set to true to include them.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of results to display per page. Use an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token used for pagination to fetch the next set of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-clients.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/partner_clients/{partnerClientId}/associations/{toObjectType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ListPartnerClientAssociations", + "parameters": { + "partner_client_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "target_object_type": { + "value": "contact", + "type": "string", + "required": true + }, + "include_family_associations": { + "value": true, + "type": "boolean", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abcdef123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPartnerServiceAssociations", + "qualifiedName": "HubspotCrmApi.ListPartnerServiceAssociations", + "fullyQualifiedName": "HubspotCrmApi.ListPartnerServiceAssociations@1.0.0", + "description": "Retrieve associations of a partner service by type.\n\nThis tool retrieves a list of associations for a specified partner service in HubSpot CRM based on the provided type. It should be called when you need to explore relationships connected to a partner service, filtering by specific object types.", + "parameters": [ + { + "name": "partner_service_id", + "type": "string", + "required": true, + "description": "The unique identifier of the partner service to retrieve associations for. This ID is required.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_type", + "type": "string", + "required": true, + "description": "The type of object to filter associations by, such as contacts, companies, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "include_associated_fields", + "type": "boolean", + "required": false, + "description": "Set to true to include associated fields in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of results to display per page. This determines the page size for the response.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token to continue paginated results from the last read resource.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-services.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/partner_services/{partnerServiceId}/associations/{toObjectType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ListPartnerServiceAssociations", + "parameters": { + "partner_service_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "target_object_type": { + "value": "contacts", + "type": "string", + "required": true + }, + "include_associated_fields": { + "value": true, + "type": "boolean", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "some_token_value", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageDealSplits", + "qualifiedName": "HubspotCrmApi.ManageDealSplits", + "fullyQualifiedName": "HubspotCrmApi.ManageDealSplits@1.0.0", + "description": "Create or replace deal splits for specific deals.\n\nThis tool is used to create or update deal splits for the specified deal IDs. The deal split percentages must add up to 100% and can have up to 8 decimal places. It is useful for managing deal contributions among different stakeholders.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.dealsplits.read_write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/deals/splits/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ManageDealSplits", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"dealId\":\"12345\",\"splits\":[{\"userId\":\"67890\",\"percentage\":50.0},{\"userId\":\"23456\",\"percentage\":50.0}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MergeCompanyRecords", + "qualifiedName": "HubspotCrmApi.MergeCompanyRecords", + "fullyQualifiedName": "HubspotCrmApi.MergeCompanyRecords@1.0.0", + "description": "Merge two company records in HubSpot CRM.\n\nUse this tool to merge two company records into a single record in HubSpot CRM, ensuring data consistency.", + "parameters": [ + { + "name": "company_id_to_merge", + "type": "string", + "required": true, + "description": "The ID of the company to merge into the primary company.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_company_id", + "type": "string", + "required": true, + "description": "The ID of the primary company into which the other company will be merged.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.companies.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/companies/merge_merge'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.MergeCompanyRecords", + "parameters": { + "company_id_to_merge": { + "value": "12345", + "type": "string", + "required": true + }, + "primary_company_id": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MergeContacts", + "qualifiedName": "HubspotCrmApi.MergeContacts", + "fullyQualifiedName": "HubspotCrmApi.MergeContacts@1.0.0", + "description": "Merges two contacts into one in HubSpot CRM.\n\nUse this tool to merge two existing contacts within HubSpot CRM. It consolidates contact information, ensuring that no duplicate entries exist for the same individual.", + "parameters": [ + { + "name": "contact_id_to_merge", + "type": "string", + "required": true, + "description": "The ID of the contact object that will be merged into the primary contact.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_contact_id", + "type": "string", + "required": true, + "description": "The unique identifier of the primary contact that will remain after merging. This contact's information will be retained.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/contacts/merge'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.MergeContacts", + "parameters": { + "contact_id_to_merge": { + "value": "12345", + "type": "string", + "required": true + }, + "primary_contact_id": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MergeDeals", + "qualifiedName": "HubspotCrmApi.MergeDeals", + "fullyQualifiedName": "HubspotCrmApi.MergeDeals@1.0.0", + "description": "Combine two deals into a single unified deal in HubSpot CRM.\n\nUse this tool to merge two deals of the same type into one within HubSpot CRM. It is useful when consolidating duplicate or related deals into a single entry.", + "parameters": [ + { + "name": "deal_id_to_merge", + "type": "string", + "required": true, + "description": "The ID of the deal to be merged into the primary deal.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_deal_id", + "type": "string", + "required": true, + "description": "The ID of the primary deal that will remain after merging.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.deals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-3/merge_merge'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.MergeDeals", + "parameters": { + "deal_id_to_merge": { + "value": "12345", + "type": "string", + "required": true + }, + "primary_deal_id": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MergeHubspotCrmObjects", + "qualifiedName": "HubspotCrmApi.MergeHubspotCrmObjects", + "fullyQualifiedName": "HubspotCrmApi.MergeHubspotCrmObjects@1.0.0", + "description": "Merge two HubSpot CRM objects into a single entity.\n\nUse this tool to merge two CRM objects of a specified type within HubSpot. It combines duplicate records into a single object, streamlining the data management process.", + "parameters": [ + { + "name": "hubspot_object_type", + "type": "string", + "required": true, + "description": "Specify the type of HubSpot CRM object to merge, such as contact, company, or deal.", + "enum": null, + "inferrable": true + }, + { + "name": "object_id_to_merge", + "type": "string", + "required": true, + "description": "The ID of the HubSpot CRM object to be merged into the primary object. This should be a string identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_object_id", + "type": "string", + "required": true, + "description": "The ID of the primary HubSpot CRM object to retain post-merge.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/objects/v3/{objectType}/merge'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.MergeHubspotCrmObjects", + "parameters": { + "hubspot_object_type": { + "value": "contact", + "type": "string", + "required": true + }, + "object_id_to_merge": { + "value": "12345", + "type": "string", + "required": true + }, + "primary_object_id": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MergeHubspotObjects", + "qualifiedName": "HubspotCrmApi.MergeHubspotObjects", + "fullyQualifiedName": "HubspotCrmApi.MergeHubspotObjects@1.0.0", + "description": "Merge two HubSpot CRM objects of the same type.\n\nUse this tool to merge two objects within HubSpot CRM that have the same object type, such as contacts or companies. It is useful for consolidating duplicate records into a single, unified entry.", + "parameters": [ + { + "name": "object_id_to_merge", + "type": "string", + "required": true, + "description": "The ID of the object to be merged into the primary object. It must be of the same type as the primary object.", + "enum": null, + "inferrable": true + }, + { + "name": "object_type_to_merge", + "type": "string", + "required": true, + "description": "The type of HubSpot CRM object to merge, such as 'contacts' or 'companies'.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_object_id", + "type": "string", + "required": true, + "description": "The ID of the object that will remain after the merge. Provide as a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/{objectType}/merge_merge'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.MergeHubspotObjects", + "parameters": { + "object_id_to_merge": { + "value": "12345", + "type": "string", + "required": true + }, + "object_type_to_merge": { + "value": "contacts", + "type": "string", + "required": true + }, + "primary_object_id": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MergeSupportTickets", + "qualifiedName": "HubspotCrmApi.MergeSupportTickets", + "fullyQualifiedName": "HubspotCrmApi.MergeSupportTickets@1.0.0", + "description": "Merge two support tickets into one unified record.\n\nThis tool merges two separate support tickets into a single ticket record, combining all the relevant information. It should be used when consolidating duplicate or related tickets is necessary to streamline customer support operations.", + "parameters": [ + { + "name": "primary_ticket_id", + "type": "string", + "required": true, + "description": "The ID of the ticket designated as the primary record in the merge operation. After merging, this ticket will contain all combined information.", + "enum": null, + "inferrable": true + }, + { + "name": "secondary_ticket_id", + "type": "string", + "required": true, + "description": "The ID of the support ticket to be merged into the primary ticket. It specifies which ticket will be combined with the primary ticket record.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tickets"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tickets/merge_merge'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.MergeSupportTickets", + "parameters": { + "primary_ticket_id": { + "value": "12345", + "type": "string", + "required": true + }, + "secondary_ticket_id": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ModifyHubspotObject", + "qualifiedName": "HubspotCrmApi.ModifyHubspotObject", + "fullyQualifiedName": "HubspotCrmApi.ModifyHubspotObject@1.0.0", + "description": "Update specific properties of a HubSpot CRM object.\n\n Use this tool to perform partial updates on HubSpot CRM objects by specifying the object type and ID. You can update properties by providing new values, but ensure they aren't read-only or non-existent. Clear properties by passing an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "hubspot_object_type", + "type": "string", + "required": false, + "description": "Specify the type of HubSpot CRM object (e.g., 'contacts', 'companies', 'deals'). Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "object_identifier", + "type": "string", + "required": false, + "description": "The internal ID of the HubSpot object to update. Use a string format. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a unique property for identifying the object. Use when the default object ID isn't used. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/{objectType}/{objectId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ModifyHubspotObject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "hubspot_object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "object_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "email", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"properties\":{\"firstname\":\"John\",\"lastname\":\"Doe\",\"email\":\"john.doe@example.com\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MoveFolderInHubspot", + "qualifiedName": "HubspotCrmApi.MoveFolderInHubspot", + "fullyQualifiedName": "HubspotCrmApi.MoveFolderInHubspot@1.0.0", + "description": "Move a folder to a new parent in HubSpot CRM.\n\nThis tool moves a folder to a new parent location in HubSpot CRM, updating the folder's parent ID to the specified new ID. Use this when you need to reorganize folder structures within the CRM.", + "parameters": [ + { + "name": "folder_id_to_move", + "type": "string", + "required": true, + "description": "The ID of the folder you want to move to a new location in HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "target_parent_folder_id", + "type": "string", + "required": true, + "description": "The ID of the target parent folder to which the current folder will be moved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/v3/lists/folders/{folderId}/move/{newParentFolderId}_move'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.MoveFolderInHubspot", + "parameters": { + "folder_id_to_move": { + "value": "12345", + "type": "string", + "required": true + }, + "target_parent_folder_id": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MoveListingToRecycleBin", + "qualifiedName": "HubspotCrmApi.MoveListingToRecycleBin", + "fullyQualifiedName": "HubspotCrmApi.MoveListingToRecycleBin@1.0.0", + "description": "Move a listing to the recycling bin by ID.\n\nUse this tool to move a specific listing identified by its ID to the recycling bin in HubSpot CRM.", + "parameters": [ + { + "name": "listing_id", + "type": "string", + "required": true, + "description": "The unique identifier of the listing to be moved to the recycling bin in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.listings.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/0-420/{listingId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.MoveListingToRecycleBin", + "parameters": { + "listing_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MoveListToFolder", + "qualifiedName": "HubspotCrmApi.MoveListToFolder", + "fullyQualifiedName": "HubspotCrmApi.MoveListToFolder@1.0.0", + "description": "Move a CRM list to a specified folder.\n\nUse this tool to move a specific list within HubSpot CRM to a desired folder, organizing lists efficiently.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The ID of the list you want to move. It should be a valid string representing the list in HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "target_folder_id", + "type": "string", + "required": true, + "description": "The ID of the folder to move the list to. Use '0' for the root folder.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/v3/lists/folders/move-list_moveList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.MoveListToFolder", + "parameters": { + "list_id": { + "value": "12345-abcde", + "type": "string", + "required": true + }, + "target_folder_id": { + "value": "67890-xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MoveObjectToRecycleBin", + "qualifiedName": "HubspotCrmApi.MoveObjectToRecycleBin", + "fullyQualifiedName": "HubspotCrmApi.MoveObjectToRecycleBin@1.0.0", + "description": "Move a CRM object to the recycling bin.\n\nUse this tool to move a specified CRM object to the recycling bin using its object type and ID. This is useful for archiving or removing unnecessary data in HubSpot CRM.", + "parameters": [ + { + "name": "object_id", + "type": "string", + "required": true, + "description": "The unique identifier for the CRM object to be moved to the recycling bin. This ID specifies which object within the CRM will be affected.", + "enum": null, + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Type of the CRM object to be moved, such as 'contacts', 'companies', etc.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/{objectType}/{objectId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.MoveObjectToRecycleBin", + "parameters": { + "object_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "object_type": { + "value": "contacts", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PipelineLimitsUsage", + "qualifiedName": "HubspotCrmApi.PipelineLimitsUsage", + "fullyQualifiedName": "HubspotCrmApi.PipelineLimitsUsage@1.0.0", + "description": "Retrieve limits and usage for HubSpot CRM pipelines.\n\nCall this tool to obtain information about the limits and current usage of pipelines in HubSpot CRM. Useful for understanding capacity and utilization of your CRM pipelines.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/limits/pipelines'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.PipelineLimitsUsage", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReadBatchDealSplits", + "qualifiedName": "HubspotCrmApi.ReadBatchDealSplits", + "fullyQualifiedName": "HubspotCrmApi.ReadBatchDealSplits@1.0.0", + "description": "Fetch a batch of deal split objects by deal ID.\n\nThis tool reads a batch of deal split objects using their associated deal object internal IDs, allowing access to multiple deal splits in one request.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.dealsplits.read_write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/deals/splits/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ReadBatchDealSplits", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"dealIds\":[\"12345\",\"67890\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReadBatchPayments", + "qualifiedName": "HubspotCrmApi.ReadBatchPayments", + "fullyQualifiedName": "HubspotCrmApi.ReadBatchPayments@1.0.0", + "description": "Retrieve a batch of payments from CRM by IDs or unique properties.\n\n Use this tool to get details of multiple payments from the CRM system based on internal IDs or unique property values.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "only_return_archived_results", + "type": "boolean", + "required": false, + "description": "Return only archived results if set to true. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/payments/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ReadBatchPayments", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "only_return_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"payment_ids\": [\"12345\", \"67890\"], \"unique_property\": \"property_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReadBatchProperties", + "qualifiedName": "HubspotCrmApi.ReadBatchProperties", + "fullyQualifiedName": "HubspotCrmApi.ReadBatchProperties@1.0.0", + "description": "Fetches a batch of properties for a specified CRM object type.\n\n Use this tool to retrieve a list of properties for a given object type in the CRM. This can be useful when you need detailed information about multiple properties at once.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "crm_object_type", + "type": "string", + "required": false, + "description": "The type of CRM object for which properties are being read (e.g., contacts, deals). Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.subscriptions.write", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.pipelines.orders.read", + "automation", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.marketing_events.read", + "crm.objects.appointments.read", + "crm.schemas.appointments.read", + "crm.objects.subscriptions.read", + "crm.schemas.deals.read", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.contacts.sensitive.read.v2", + "crm.schemas.line_items.read", + "crm.objects.goals.read", + "media_bridge.read", + "crm.objects.products.write", + "crm.schemas.listings.read", + "crm.objects.contacts.write", + "crm.objects.goals.write", + "crm.schemas.custom.read", + "crm.objects.marketing_events.write", + "crm.objects.leads.read", + "crm.schemas.orders.read", + "crm.objects.feedback_submissions.read", + "crm.objects.custom.sensitive.write.v2", + "crm.schemas.quotes.read", + "tickets", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.schemas.commercepayments.read", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.leads.write", + "crm.objects.commercepayments.write", + "crm.objects.orders.read", + "crm.schemas.carts.read", + "tickets.sensitive.v2", + "crm.schemas.invoices.read", + "crm.objects.contacts.sensitive.write.v2", + "e-commerce", + "crm.objects.owners.read", + "crm.objects.quotes.write", + "crm.objects.line_items.write", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.schemas.services.read", + "crm.objects.courses.write", + "crm.schemas.contacts.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.services.write", + "crm.objects.courses.read", + "crm.schemas.courses.read", + "crm.objects.custom.read", + "crm.schemas.subscriptions.read", + "crm.schemas.companies.read", + "tickets.highly_sensitive.v2", + "crm.objects.companies.write", + "crm.objects.quotes.read", + "crm.objects.companies.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.invoices.read", + "crm.objects.listings.write", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/properties/{objectType}/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ReadBatchProperties", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "crm_object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"properties\":[\"firstname\",\"lastname\",\"email\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReadCommunicationsPage", + "qualifiedName": "HubspotCrmApi.ReadCommunicationsPage", + "fullyQualifiedName": "HubspotCrmApi.ReadCommunicationsPage@1.0.0", + "description": "Retrieve a page of communications from HubSpot CRM.\n\nUse this tool to read a page of communications. You can control the information returned using query parameters for specific properties.", + "parameters": [ + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The paging cursor token for the next set of results to read from the previous request's `paging.next.after` JSON property.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to return with their history. Reduces the maximum number of communications per request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_associations", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of object types to get associated IDs for. Ignored if the association doesn't exist.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. False includes all results.", + "enum": null, + "inferrable": true + }, + { + "name": "specified_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of communication properties to return in the response. Properties not present will be ignored.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/communications_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ReadCommunicationsPage", + "parameters": { + "paging_cursor_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["email_subject", "call_duration"], + "type": "array", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "retrieve_associations": { + "value": ["contact", "deal"], + "type": "array", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "specified_properties": { + "value": ["email_body", "call_time"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReadProperty", + "qualifiedName": "HubspotCrmApi.ReadProperty", + "fullyQualifiedName": "HubspotCrmApi.ReadProperty@1.0.0", + "description": "Retrieve CRM property details by name and type.\n\nThis tool fetches details of a specific property from HubSpot CRM by providing the property name and object type. Use this tool to access property information when dealing with HubSpot CRM data.", + "parameters": [ + { + "name": "crm_object_type", + "type": "string", + "required": true, + "description": "Specify the CRM object type, such as 'contact' or 'company', to retrieve the property for.", + "enum": null, + "inferrable": true + }, + { + "name": "property_name", + "type": "string", + "required": true, + "description": "The unique name of the property to retrieve. This should match the property name in HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "property_specifications", + "type": "string", + "required": false, + "description": "Specify the details or attributes of the property to retrieve. Use a comma-separated list for multiple specifications.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to True to return only archived property results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.subscriptions.write", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.pipelines.orders.read", + "automation", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.marketing_events.read", + "crm.objects.appointments.read", + "crm.schemas.appointments.read", + "crm.objects.subscriptions.read", + "crm.schemas.deals.read", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.contacts.sensitive.read.v2", + "crm.schemas.line_items.read", + "crm.objects.goals.read", + "media_bridge.read", + "crm.objects.products.write", + "crm.schemas.listings.read", + "crm.objects.contacts.write", + "crm.objects.goals.write", + "crm.schemas.custom.read", + "crm.objects.marketing_events.write", + "crm.objects.leads.read", + "crm.schemas.orders.read", + "crm.objects.feedback_submissions.read", + "crm.objects.custom.sensitive.write.v2", + "crm.schemas.quotes.read", + "tickets", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.schemas.commercepayments.read", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.leads.write", + "crm.objects.commercepayments.write", + "crm.objects.orders.read", + "crm.schemas.carts.read", + "tickets.sensitive.v2", + "crm.schemas.invoices.read", + "crm.objects.contacts.sensitive.write.v2", + "e-commerce", + "crm.objects.owners.read", + "crm.objects.quotes.write", + "crm.objects.line_items.write", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.schemas.services.read", + "crm.objects.courses.write", + "crm.schemas.contacts.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.services.write", + "crm.objects.courses.read", + "crm.schemas.courses.read", + "crm.objects.custom.read", + "crm.schemas.subscriptions.read", + "crm.schemas.companies.read", + "tickets.highly_sensitive.v2", + "crm.objects.companies.write", + "crm.objects.quotes.read", + "crm.objects.companies.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.invoices.read", + "crm.objects.listings.write", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/properties/{objectType}/{propertyName}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ReadProperty", + "parameters": { + "crm_object_type": { + "value": "contact", + "type": "string", + "required": true + }, + "property_name": { + "value": "email", + "type": "string", + "required": true + }, + "property_specifications": { + "value": "label, type, group", + "type": "string", + "required": false + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReadPropertyGroup", + "qualifiedName": "HubspotCrmApi.ReadPropertyGroup", + "fullyQualifiedName": "HubspotCrmApi.ReadPropertyGroup@1.0.0", + "description": "Retrieve details of a property group by its name.\n\nUse this tool to get detailed information about a property group identified by {groupName} within a specified object type in HubSpot CRM.", + "parameters": [ + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Specify the type of CRM object, such as 'contacts' or 'deals'.", + "enum": null, + "inferrable": true + }, + { + "name": "property_group_name", + "type": "string", + "required": true, + "description": "The name of the property group to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.subscriptions.write", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.pipelines.orders.read", + "automation", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.marketing_events.read", + "crm.objects.appointments.read", + "crm.schemas.appointments.read", + "crm.objects.subscriptions.read", + "crm.schemas.deals.read", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.contacts.sensitive.read.v2", + "crm.schemas.line_items.read", + "crm.objects.goals.read", + "media_bridge.read", + "crm.objects.products.write", + "crm.schemas.listings.read", + "crm.objects.contacts.write", + "crm.objects.goals.write", + "crm.schemas.custom.read", + "crm.objects.marketing_events.write", + "crm.objects.leads.read", + "crm.schemas.orders.read", + "crm.objects.feedback_submissions.read", + "crm.objects.custom.sensitive.write.v2", + "crm.schemas.quotes.read", + "tickets", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.schemas.commercepayments.read", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.leads.write", + "crm.objects.commercepayments.write", + "crm.objects.orders.read", + "crm.schemas.carts.read", + "tickets.sensitive.v2", + "crm.schemas.invoices.read", + "crm.objects.contacts.sensitive.write.v2", + "e-commerce", + "crm.objects.owners.read", + "crm.objects.quotes.write", + "crm.objects.line_items.write", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.schemas.services.read", + "crm.objects.courses.write", + "crm.schemas.contacts.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.services.write", + "crm.objects.courses.read", + "crm.schemas.courses.read", + "crm.objects.custom.read", + "crm.schemas.subscriptions.read", + "crm.schemas.companies.read", + "tickets.highly_sensitive.v2", + "crm.objects.companies.write", + "crm.objects.quotes.read", + "crm.objects.companies.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.invoices.read", + "crm.objects.listings.write", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/properties/{objectType}/groups/{groupName}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ReadPropertyGroup", + "parameters": { + "object_type": { + "value": "contacts", + "type": "string", + "required": true + }, + "property_group_name": { + "value": "contact_info", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReadServicesPage", + "qualifiedName": "HubspotCrmApi.ReadServicesPage", + "fullyQualifiedName": "HubspotCrmApi.ReadServicesPage@1.0.0", + "description": "Retrieve a page of services with customizable properties.\n\nThis tool retrieves a page of services from the HubSpot CRM API, allowing customization of returned data via the `properties` query parameter. Use this tool to access service information efficiently.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for each service. Ignored if associations do not exist.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The cursor token from the last read to retrieve the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to return with their history of values. If absent, properties are ignored. Reduces max services per request.", + "enum": null, + "inferrable": true + }, + { + "name": "requested_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to include in the response. Non-existent properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results; false to include non-archived results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.services.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/0-162'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ReadServicesPage", + "parameters": { + "associated_object_types": { + "value": ["contacts", "deals"], + "type": "array", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["price", "status"], + "type": "array", + "required": false + }, + "requested_properties": { + "value": ["id", "name", "description", "price"], + "type": "array", + "required": false + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveAllListMemberships", + "qualifiedName": "HubspotCrmApi.RemoveAllListMemberships", + "fullyQualifiedName": "HubspotCrmApi.RemoveAllListMemberships@1.0.0", + "description": "Remove all records from a CRM list without deleting the list.\n\nUse this tool to remove all memberships from a HubSpot CRM list that has a processing type of MANUAL or SNAPSHOT. Suitable for lists with fewer than 100,000 memberships.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The ILS ID of a MANUAL or SNAPSHOT list in HubSpot CRM. Required for removing all memberships.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/lists/{listId}/memberships_removeAll'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RemoveAllListMemberships", + "parameters": { + "list_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveCrmAssociation", + "qualifiedName": "HubspotCrmApi.RemoveCrmAssociation", + "fullyQualifiedName": "HubspotCrmApi.RemoveCrmAssociation@1.0.0", + "description": "Remove associations between CRM objects.\n\nThis tool removes the association between two CRM objects based on specified types and IDs. Use it when you need to delete a relationship or link between specific CRM entities.", + "parameters": [ + { + "name": "association_type", + "type": "string", + "required": true, + "description": "The type of association between the CRM objects to be removed. Specify the nature of the relationship, such as 'contact-to-company'.", + "enum": null, + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Specifies the type of the primary CRM object (e.g., 'contact', 'company').", + "enum": null, + "inferrable": true + }, + { + "name": "source_object_id", + "type": "string", + "required": true, + "description": "The unique identifier of the source object whose association is to be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_id", + "type": "string", + "required": true, + "description": "The ID of the target object to unlink from the source object. This must be a string representing the unique identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_type", + "type": "string", + "required": true, + "description": "Specifies the type of the target CRM object to unlink. Examples include 'contact', 'company', etc.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/objects/v3/{objectType}/{objectId}/associations/{toObjectType}/{toObjectId}/{associationType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RemoveCrmAssociation", + "parameters": { + "association_type": { + "value": "contact-to-company", + "type": "string", + "required": true + }, + "object_type": { + "value": "contact", + "type": "string", + "required": true + }, + "source_object_id": { + "value": "12345", + "type": "string", + "required": true + }, + "target_object_id": { + "value": "67890", + "type": "string", + "required": true + }, + "target_object_type": { + "value": "company", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemovePartnerClientAssociation", + "qualifiedName": "HubspotCrmApi.RemovePartnerClientAssociation", + "fullyQualifiedName": "HubspotCrmApi.RemovePartnerClientAssociation@1.0.0", + "description": "Remove an association between two partner clients in HubSpot CRM.\n\nThis tool removes an existing association between two partner clients in the HubSpot CRM system. It should be called when you need to disassociate a partner client from another object, identified by specific IDs and association type.", + "parameters": [ + { + "name": "association_type", + "type": "string", + "required": true, + "description": "The type of association to be removed between the partner client and the object. This defines the nature of their relationship.", + "enum": null, + "inferrable": true + }, + { + "name": "partner_client_id", + "type": "string", + "required": true, + "description": "The unique identifier for the partner client to be disassociated. This should be a string that identifies the specific partner client in the HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_id", + "type": "string", + "required": true, + "description": "The unique identifier of the object associated with the target partner client.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_type", + "type": "string", + "required": true, + "description": "Specify the type of the object you are dissociating from the partner client, such as 'contacts' or 'companies'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-clients.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/partner_clients/{partnerClientId}/associations/{toObjectType}/{toObjectId}/{associationType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RemovePartnerClientAssociation", + "parameters": { + "association_type": { + "value": "partner_of", + "type": "string", + "required": true + }, + "partner_client_id": { + "value": "12345-abcd-67890", + "type": "string", + "required": true + }, + "target_object_id": { + "value": "54321-efgh-09876", + "type": "string", + "required": true + }, + "target_object_type": { + "value": "contacts", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemovePartnerServiceAssociation", + "qualifiedName": "HubspotCrmApi.RemovePartnerServiceAssociation", + "fullyQualifiedName": "HubspotCrmApi.RemovePartnerServiceAssociation@1.0.0", + "description": "Remove an association between two partner services.\n\nThis tool removes the specified association between partner services in HubSpot CRM. Use it when you need to disassociate two services linked by a specific relationship.", + "parameters": [ + { + "name": "association_type", + "type": "string", + "required": true, + "description": "Specifies the type of association to remove between the partner services. This is a string value that defines how the services are linked.", + "enum": null, + "inferrable": true + }, + { + "name": "partner_service_id", + "type": "string", + "required": true, + "description": "The unique identifier for the partner service. It specifies which partner service's association is to be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_id", + "type": "string", + "required": true, + "description": "The unique identifier of the object to be disassociated from the partner service. This is required to specify which object is being unlinked.", + "enum": null, + "inferrable": true + }, + { + "name": "target_object_type", + "type": "string", + "required": true, + "description": "The type of the object to which the partner service is associated. Specify the object category, such as 'contact', 'company', etc.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-services.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/partner_services/{partnerServiceId}/associations/{toObjectType}/{toObjectId}/{associationType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RemovePartnerServiceAssociation", + "parameters": { + "association_type": { + "value": "service_link", + "type": "string", + "required": true + }, + "partner_service_id": { + "value": "12345", + "type": "string", + "required": true + }, + "target_object_id": { + "value": "67890", + "type": "string", + "required": true + }, + "target_object_type": { + "value": "contact", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveProduct", + "qualifiedName": "HubspotCrmApi.RemoveProduct", + "fullyQualifiedName": "HubspotCrmApi.RemoveProduct@1.0.0", + "description": "Archive a product by moving it to the recycling bin.\n\nUse this tool to move a product, identified by its productId, to the recycling bin in HubSpot CRM.", + "parameters": [ + { + "name": "product_id", + "type": "string", + "required": true, + "description": "The unique identifier of the product to be archived in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.products.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/crm/v3/objects/products/{productId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RemoveProduct", + "parameters": { + "product_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveRecordsFromList", + "qualifiedName": "HubspotCrmApi.RemoveRecordsFromList", + "fullyQualifiedName": "HubspotCrmApi.RemoveRecordsFromList@1.0.0", + "description": "Remove specified records from a HubSpot CRM list.\n\nUse this tool to remove records from a HubSpot CRM list with `processingType` of `MANUAL` or `SNAPSHOT`. Records not in the list will be ignored.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The ILS ID of the MANUAL or SNAPSHOT list from which records will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "record_ids_to_remove", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of record IDs to remove from the HubSpot CRM list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/v3/lists/{listId}/memberships/remove_remove'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RemoveRecordsFromList", + "parameters": { + "list_id": { + "value": "12345", + "type": "string", + "required": true + }, + "record_ids_to_remove": { + "value": ["67890", "23456", "34567"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RenameCrmFolder", + "qualifiedName": "HubspotCrmApi.RenameCrmFolder", + "fullyQualifiedName": "HubspotCrmApi.RenameCrmFolder@1.0.0", + "description": "Rename a folder in HubSpot CRM by its folder ID.\n\nUse this tool to rename a specific folder in HubSpot CRM using its folder ID. Useful for organizing or updating folder names within your CRM system.", + "parameters": [ + { + "name": "folder_id", + "type": "string", + "required": true, + "description": "The ID of the folder you want to rename in HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "new_folder_name", + "type": "string", + "required": false, + "description": "The new name to assign to the folder. It should be a string representing the desired folder name in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/v3/lists/folders/{folderId}/rename_rename'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RenameCrmFolder", + "parameters": { + "folder_id": { + "value": "12345", + "type": "string", + "required": true + }, + "new_folder_name": { + "value": "Updated Sales Documents", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplacePipelineHubspot", + "qualifiedName": "HubspotCrmApi.ReplacePipelineHubspot", + "fullyQualifiedName": "HubspotCrmApi.ReplacePipelineHubspot@1.0.0", + "description": "Replace a specific pipeline in HubSpot CRM.\n\n Use this tool to replace a specific pipeline in HubSpot CRM when you need to update or modify the pipeline's entire structure or data.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": false, + "description": "Specify the object type for the pipeline, such as 'deals' or 'tickets'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the pipeline to replace in HubSpot CRM. This is required to specify which pipeline is being modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "validate_references_before_deletion", + "type": "boolean", + "required": false, + "description": "Set to true to validate all references before deleting the pipeline. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "validate_deal_stage_usages_before_delete", + "type": "boolean", + "required": false, + "description": "Set to true to validate deal stage usages before deleting a pipeline; false to proceed without validation. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/v3/pipelines/{objectType}/{pipelineId}_replace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ReplacePipelineHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "object_type": { + "value": "deals", + "type": "string", + "required": false + }, + "pipeline_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "validate_references_before_deletion": { + "value": true, + "type": "boolean", + "required": false + }, + "validate_deal_stage_usages_before_delete": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Sales Pipeline\",\"stages\":[{\"stageId\":\"1\",\"label\":\"Prospecting\"},{\"stageId\":\"2\",\"label\":\"Negotiation\"},{\"stageId\":\"3\",\"label\":\"Closed Won\"},{\"stageId\":\"4\",\"label\":\"Closed Lost\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplacePipelineStageProperties", + "qualifiedName": "HubspotCrmApi.ReplacePipelineStageProperties", + "fullyQualifiedName": "HubspotCrmApi.ReplacePipelineStageProperties@1.0.0", + "description": "Replace and update a pipeline stage in HubSpot CRM.\n\n Use this tool to replace all properties of an existing pipeline stage in HubSpot CRM with the provided values. The modified stage's details are returned in the response.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "crm_object_type", + "type": "string", + "required": false, + "description": "Specifies the CRM object type like 'deals' or 'contacts' to identify the pipeline stage being replaced. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_id", + "type": "string", + "required": false, + "description": "The unique identifier for the pipeline whose stage properties are to be replaced. This must match the ID used in HubSpot CRM. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_stage_id", + "type": "string", + "required": false, + "description": "The unique identifier for the pipeline stage to be replaced. This is required to specify which stage's properties will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/v3/pipelines/{objectType}/{pipelineId}/stages/{stageId}_replace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ReplacePipelineStageProperties", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "crm_object_type": { + "value": "deals", + "type": "string", + "required": false + }, + "pipeline_id": { + "value": "123456", + "type": "string", + "required": false + }, + "pipeline_stage_id": { + "value": "78910", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Stage Name\",\"probability\":50,\"displayOrder\":2}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RestoreDeletedList", + "qualifiedName": "HubspotCrmApi.RestoreDeletedList", + "fullyQualifiedName": "HubspotCrmApi.RestoreDeletedList@1.0.0", + "description": "Restore a previously deleted HubSpot CRM list.\n\nThis tool restores a previously deleted list in HubSpot CRM using the list ID. Lists can be restored up to 90 days after deletion. Use this when you need to recover a list that was mistakenly deleted.", + "parameters": [ + { + "name": "list_id_to_restore", + "type": "string", + "required": true, + "description": "The ILS ID of the list to restore. Use this to specify which deleted list to recover.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/v3/lists/{listId}/restore_restore'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RestoreDeletedList", + "parameters": { + "list_id_to_restore": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAllCompanies", + "qualifiedName": "HubspotCrmApi.RetrieveAllCompanies", + "fullyQualifiedName": "HubspotCrmApi.RetrieveAllCompanies@1.0.0", + "description": "Retrieve all companies from HubSpot CRM.\n\nThis tool retrieves all companies from the HubSpot CRM. It uses query parameters to control the information that gets returned, such as filtering or specifying fields. Useful for getting a comprehensive list of companies stored in the CRM.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. Non-existent associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The cursor token to fetch the next set of results in a paginated response.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to include in the response. Ignore if not present on the object.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to return with their history of previous values. This reduces max companies per request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page_limit", + "type": "integer", + "required": false, + "description": "The maximum number of results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.companies.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/companies_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveAllCompanies", + "parameters": { + "associated_object_types": { + "value": ["contact", "deal"], + "type": "array", + "required": false + }, + "paging_cursor_token": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "properties_to_return": { + "value": ["name", "industry", "size"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["name", "size"], + "type": "array", + "required": false + }, + "results_per_page_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBatchCommunications", + "qualifiedName": "HubspotCrmApi.RetrieveBatchCommunications", + "fullyQualifiedName": "HubspotCrmApi.RetrieveBatchCommunications@1.0.0", + "description": "Retrieve a batch of communication messages by ID.\n\n This tool retrieves a batch of communication messages from the HubSpot CRM using either the message ID or a unique property value. It should be called when you need to access multiple messages simultaneously.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to True to return only archived results. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/communications/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveBatchCommunications", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"message_ids\": [\"12345\", \"67890\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBatchCompaniesHubspot", + "qualifiedName": "HubspotCrmApi.RetrieveBatchCompaniesHubspot", + "fullyQualifiedName": "HubspotCrmApi.RetrieveBatchCompaniesHubspot@1.0.0", + "description": "Retrieve a batch of company records from HubSpot CRM.\n\n Use this tool to retrieve multiple companies from HubSpot CRM by specifying their IDs or unique properties. You can customize the returned data using the `properties` query parameter.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived companies in the results. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.companies.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/companies/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveBatchCompaniesHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"ids\": [\"1234\", \"5678\"], \"properties\": [\"name\", \"industry\", \"website\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBatchLineItems", + "qualifiedName": "HubspotCrmApi.RetrieveBatchLineItems", + "fullyQualifiedName": "HubspotCrmApi.RetrieveBatchLineItems@1.0.0", + "description": "Retrieve batch line item records by ID or custom property.\n\n Use this tool to retrieve multiple line item records from HubSpot CRM using their IDs or a custom unique property. This is helpful for accessing specific sets of records without manually querying each one individually.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "retrieve_only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve only archived line items. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/line_items/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveBatchLineItems", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "retrieve_only_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"ids\": [\"123\", \"456\", \"789\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCallsBatch", + "qualifiedName": "HubspotCrmApi.RetrieveCallsBatch", + "fullyQualifiedName": "HubspotCrmApi.RetrieveCallsBatch@1.0.0", + "description": "Retrieve a batch of calls by ID from HubSpot CRM.\n\n Use this tool to fetch details of multiple calls from HubSpot CRM by providing their IDs. It returns information about each call in the batch.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_only_archived", + "type": "boolean", + "required": false, + "description": "Set to 'true' to return only archived calls, 'false' to exclude them. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/calls/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveCallsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_only_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"call_ids\": [\"12345\", \"67890\", \"ABCDE\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCartDetails", + "qualifiedName": "HubspotCrmApi.RetrieveCartDetails", + "fullyQualifiedName": "HubspotCrmApi.RetrieveCartDetails@1.0.0", + "description": "Retrieve detailed information about shopping carts.\n\nUse this tool to get information about shopping carts, with options to specify which details to retrieve via query parameters.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List object types to retrieve associated IDs for. Ignored if associations don't exist.", + "enum": null, + "inferrable": true + }, + { + "name": "cart_properties_to_return", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to include in the response for each cart. Ignored if missing on objects.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Maximum number of results to display per page when retrieving cart details.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The paging cursor token for retrieving the next set of results. Use the `paging.next.after` from the previous response for more results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return with their history in the response. Reduces max number of carts per request.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.carts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/carts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveCartDetails", + "parameters": { + "associated_object_types": { + "value": ["contact", "order"], + "type": "array", + "required": false + }, + "cart_properties_to_return": { + "value": ["id", "total_price", "currency"], + "type": "array", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", + "type": "string", + "required": false + }, + "properties_with_history_list": { + "value": ["total_price", "updated_at"], + "type": "array", + "required": false + }, + "return_only_archived": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCartRecords", + "qualifiedName": "HubspotCrmApi.RetrieveCartRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveCartRecords@1.0.0", + "description": "Retrieve cart records by record ID or custom property.\n\n Use this tool to fetch cart records from HubSpot CRM by specifying record IDs or using a custom unique value property. Ideal for accessing detailed cart information.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. Default is false. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.carts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/carts/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveCartRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"recordId\":\"12345\",\"customProperty\":\"uniqueValue\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCommercePaymentDetails", + "qualifiedName": "HubspotCrmApi.RetrieveCommercePaymentDetails", + "fullyQualifiedName": "HubspotCrmApi.RetrieveCommercePaymentDetails@1.0.0", + "description": "Retrieve details of a specific commerce payment using its ID.\n\nUse this tool to obtain detailed information about a commerce payment by specifying its unique ID. This can include any details specified by the `properties` query parameter, if required.", + "parameters": [ + { + "name": "commerce_payment_id", + "type": "string", + "required": true, + "description": "The unique identifier for the commerce payment to retrieve details for. It corresponds to the internal object ID by default.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object types to retrieve associated IDs for. If any specified associations do not exist, they are ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "only_return_archived_results", + "type": "boolean", + "required": false, + "description": "Specify `true` to return only archived results. Default is `false`.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to retrieve along with their historical values. Specify as comma-separated values.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to be included in the response. Irrelevant properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The property name used as a unique identifier for the commerce payment object.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.commercepayments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/commerce_payments/{commercePaymentId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveCommercePaymentDetails", + "parameters": { + "commerce_payment_id": { + "value": "C123456789", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["order", "customer"], + "type": "array", + "required": false + }, + "only_return_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "properties_with_history": { + "value": ["status", "amount"], + "type": "array", + "required": false + }, + "return_properties": { + "value": ["transaction_id", "payment_method"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "transaction_id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCommercePaymentRecords", + "qualifiedName": "HubspotCrmApi.RetrieveCommercePaymentRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveCommercePaymentRecords@1.0.0", + "description": "Retrieve commerce payment records by ID or unique property.\n\n This tool is used to fetch commerce payment records from HubSpot CRM by specifying record IDs or using a custom unique property for retrieval.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_results_only", + "type": "boolean", + "required": false, + "description": "Return only archived commerce payment records if set to true. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.commercepayments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/commerce_payments/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveCommercePaymentRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_results_only": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"paymentId\": \"12345\", \"customerEmail\": \"customer@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCompanyById", + "qualifiedName": "HubspotCrmApi.RetrieveCompanyById", + "fullyQualifiedName": "HubspotCrmApi.RetrieveCompanyById@1.0.0", + "description": "Retrieve detailed company information using its ID.\n\nUse this tool to get detailed information about a company by providing its ID or a unique property. You can specify which properties to retrieve.", + "parameters": [ + { + "name": "company_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the company, such as its ID or a unique property name, used to retrieve its details.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. Ignores non-existent associations.", + "enum": null, + "inferrable": true + }, + { + "name": "company_properties_to_retrieve", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the specific company properties to retrieve, separated by commas. Ignored if properties are unavailable.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return with their history of previous values. Ignored if properties aren't present.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. If false, non-archived results will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a unique property to identify the company. Used instead of company ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.companies.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/companies/{companyId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveCompanyById", + "parameters": { + "company_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["contact", "deal"], + "type": "array", + "required": false + }, + "company_properties_to_retrieve": { + "value": ["name", "industry", "size"], + "type": "array", + "required": false + }, + "retrieve_properties_with_history": { + "value": ["name", "industry"], + "type": "array", + "required": false + }, + "return_only_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "unique_property_name": { + "value": "business_email", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveConversionDetails", + "qualifiedName": "HubspotCrmApi.RetrieveConversionDetails", + "fullyQualifiedName": "HubspotCrmApi.RetrieveConversionDetails@1.0.0", + "description": "Retrieve conversion details for a specific list in HubSpot CRM.\n\nUse this tool to check for upcoming conversions or to get details of past conversions for a list.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The ID of the list for which you want to retrieve conversion details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.lists.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/lists/{listId}/schedule-conversion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveConversionDetails", + "parameters": { + "list_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCrmObject", + "qualifiedName": "HubspotCrmApi.RetrieveCrmObject", + "fullyQualifiedName": "HubspotCrmApi.RetrieveCrmObject@1.0.0", + "description": "Fetch CRM object details by ID or unique property.\n\nUse this tool to retrieve details of a CRM object by specifying the object type and ID. You can control the properties returned using query parameters.", + "parameters": [ + { + "name": "object_id", + "type": "string", + "required": true, + "description": "The ID of the CRM object to retrieve. This can be the internal object ID or a unique property value specified by the id_property.", + "enum": null, + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Specifies the type of CRM object to retrieve, such as \"contacts\", \"companies\", or \"deals\".", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of object types to retrieve associated IDs for. Missing associations are ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of property names to be returned in the response. If any specified properties are not present, they will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List properties to be returned with their historical values. If a property doesn't exist, it'll be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the name of a property with unique values for this object to identify it instead of the default ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/objects/v3/{objectType}/{objectId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveCrmObject", + "parameters": { + "object_id": { + "value": "12345", + "type": "string", + "required": true + }, + "object_type": { + "value": "contacts", + "type": "string", + "required": true + }, + "associated_object_types": { + "value": ["companies", "deals"], + "type": "array", + "required": false + }, + "properties_list": { + "value": ["firstname", "lastname", "email"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["email"], + "type": "array", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "unique_property_name": { + "value": "email", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCrmRecords", + "qualifiedName": "HubspotCrmApi.RetrieveCrmRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveCrmRecords@1.0.0", + "description": "Retrieve CRM records by ID or custom unique property.\n\n This tool retrieves CRM records using either their record ID or a custom unique value property specified by the `idProperty` parameter. It is useful for accessing detailed information about specific records stored in the CRM system.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "retrieve_only_archived_records", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve only archived CRM records. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.deals.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-3/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveCrmRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "retrieve_only_archived_records": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"id\": \"12345\", \"idProperty\": \"customId\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveDiscountDetails", + "qualifiedName": "HubspotCrmApi.RetrieveDiscountDetails", + "fullyQualifiedName": "HubspotCrmApi.RetrieveDiscountDetails@1.0.0", + "description": "Retrieve details of a discount by its ID.\n\nUse this tool to get detailed information about a specific discount object by providing its ID. The tool allows customization of returned properties through query parameters.", + "parameters": [ + { + "name": "discount_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the discount object to retrieve. This can either be the internal ID or a value of a unique property specified by `idProperty`.", + "enum": null, + "inferrable": true + }, + { + "name": "archived_results_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only results that have been archived.", + "enum": null, + "inferrable": true + }, + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of object types to retrieve associated IDs for. Non-existent associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to retrieve along with their value history. Ignored if properties are missing.", + "enum": null, + "inferrable": true + }, + { + "name": "return_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to return in response. Ignored if not present on the object.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The property name for uniquely identifying the discount object. Use when the property value is not the default ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/discounts/{discountId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveDiscountDetails", + "parameters": { + "discount_identifier": { + "value": "DISCOUNT_12345", + "type": "string", + "required": true + }, + "archived_results_only": { + "value": false, + "type": "boolean", + "required": false + }, + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["amount", "expiration_date"], + "type": "array", + "required": false + }, + "return_properties": { + "value": ["name", "amount", "status"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "code", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveDiscountRecords", + "qualifiedName": "HubspotCrmApi.RetrieveDiscountRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveDiscountRecords@1.0.0", + "description": "Retrieve discount records by ID or custom property.\n\n This tool retrieves discount records from HubSpot CRM by specifying record IDs or a unique custom property. Use it to fetch detailed information about discounts in a batch.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/discounts/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveDiscountRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "archived": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"ids\":[\"12345\",\"67890\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveEmailById", + "qualifiedName": "HubspotCrmApi.RetrieveEmailById", + "fullyQualifiedName": "HubspotCrmApi.RetrieveEmailById@1.0.0", + "description": "Retrieve email object details using its ID.\n\nUse this tool to get detailed information about an email object in HubSpot CRM using its unique ID. You can control the output via query parameters.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The unique ID or property value of the email object to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "object_types_for_associated_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the object types to retrieve associated IDs. If no associations exist, they will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated property names to include their history of previous values in the response. Non-existent properties will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. Set to false to return active results.", + "enum": null, + "inferrable": true + }, + { + "name": "returned_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to return for the email object. Properties not present on the object will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the property name that holds unique values for the email object to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/emails/{emailId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveEmailById", + "parameters": { + "email_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "object_types_for_associated_ids": { + "value": ["CONTACT", "COMPANY"], + "type": "array", + "required": false + }, + "properties_with_history": { + "value": ["subject", "body"], + "type": "array", + "required": false + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "returned_properties": { + "value": ["id", "subject", "from", "to"], + "type": "array", + "required": false + }, + "unique_property_name": { + "value": "email_address", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveEmailRecords", + "qualifiedName": "HubspotCrmApi.RetrieveEmailRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveEmailRecords@1.0.0", + "description": "Retrieve email records by ID or custom property.\n\n This tool retrieves email records from HubSpot CRM by providing record IDs or using a custom unique value property. It should be called when you need details about specific email records stored within HubSpot.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "only_archived_records", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived email records from HubSpot CRM. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/emails/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveEmailRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "only_archived_records": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"id\":\"12345\",\"custom_property\":\"unique_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveEmailsPage", + "qualifiedName": "HubspotCrmApi.RetrieveEmailsPage", + "fullyQualifiedName": "HubspotCrmApi.RetrieveEmailsPage@1.0.0", + "description": "Retrieve a page of emails from HubSpot CRM.\n\nThis tool reads a page of emails from HubSpot CRM. You can control which email properties are returned by using the `properties` query parameter.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types to retrieve associated IDs for. If any specified associations don't exist, they will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of email results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token for the next page of results, from the `paging.next.after` field of the previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return with their history of previous values. Reduces maximum emails per request.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve only archived emails.", + "enum": null, + "inferrable": true + }, + { + "name": "returned_email_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the email properties to be included in the response. Specify as an array of strings representing the desired properties.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/emails_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveEmailsPage", + "parameters": { + "associated_object_types": { + "value": ["contact", "company"], + "type": "array", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["subject", "to"], + "type": "array", + "required": false + }, + "return_only_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "returned_email_properties": { + "value": ["id", "subject", "from", "to", "date"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveEventDetails", + "qualifiedName": "HubspotCrmApi.RetrieveEventDetails", + "fullyQualifiedName": "HubspotCrmApi.RetrieveEventDetails@1.0.0", + "description": "Retrieve detailed information for a specific HubSpot event.\n\nUse this tool to get detailed information about a specific event in HubSpot CRM, identified by its template ID and event ID.", + "parameters": [ + { + "name": "event_id", + "type": "string", + "required": true, + "description": "Specify the event ID to retrieve detailed information for a specific event in HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "event_template_id", + "type": "string", + "required": true, + "description": "The ID of the event template used to identify and retrieve specific event details in HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.companies.highly_sensitive.read.v2", + "crm.schemas.companies.read", + "tickets.sensitive.v2", + "crm.schemas.contacts.read", + "tickets.highly_sensitive.v2", + "crm.objects.contacts.read", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.schemas.deals.read", + "crm.objects.deals.read", + "tickets", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.contacts.sensitive.read.v2", + "crm.objects.companies.read", + "timeline" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/integrators/timeline/v3/events/{eventTemplateId}/{eventId}/detail_getDetailById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveEventDetails", + "parameters": { + "event_id": { + "value": "12345", + "type": "string", + "required": true + }, + "event_template_id": { + "value": "template_98765", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveEventInstance", + "qualifiedName": "HubspotCrmApi.RetrieveEventInstance", + "fullyQualifiedName": "HubspotCrmApi.RetrieveEventInstance@1.0.0", + "description": "Retrieve an event instance using template and event ID.\n\nUse this tool to access detailed information about a specific event instance by providing the event template ID and event ID.", + "parameters": [ + { + "name": "event_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific event you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "event_template_id", + "type": "string", + "required": true, + "description": "The unique ID of the event template required to retrieve the event instance.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.companies.highly_sensitive.read.v2", + "crm.schemas.companies.read", + "tickets.sensitive.v2", + "crm.schemas.contacts.read", + "tickets.highly_sensitive.v2", + "crm.objects.contacts.read", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.schemas.deals.read", + "crm.objects.deals.read", + "tickets", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.contacts.sensitive.read.v2", + "crm.objects.companies.read", + "timeline" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/integrators/timeline/v3/events/{eventTemplateId}/{eventId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveEventInstance", + "parameters": { + "event_id": { + "value": "12345-abcde", + "type": "string", + "required": true + }, + "event_template_id": { + "value": "template-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFeedbackRecords", + "qualifiedName": "HubspotCrmApi.RetrieveFeedbackRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveFeedbackRecords@1.0.0", + "description": "Retrieve feedback submission records by ID or custom properties.\n\n Use this tool to fetch feedback submission records from HubSpot CRM using either a record ID or a custom unique value property (`idProperty`).\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived feedback submission records. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.contacts.read", + "crm.objects.feedback_submissions.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/feedback_submissions/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveFeedbackRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"idProperty\": \"custom_id\", \"feedbackId\": \"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFeeRecords", + "qualifiedName": "HubspotCrmApi.RetrieveFeeRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveFeeRecords@1.0.0", + "description": "Retrieve fee records by ID or custom property.\n\n Use this tool to retrieve fee records from HubSpot CRM by specifying record IDs or using a custom unique value property. Useful for accessing detailed record information in batch.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived fee records. False to return active records. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/fees/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveFeeRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"record_ids\":[\"12345\", \"67890\"], \"custom_property\":\"unique_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFoldersWithChildNodes", + "qualifiedName": "HubspotCrmApi.RetrieveFoldersWithChildNodes", + "fullyQualifiedName": "HubspotCrmApi.RetrieveFoldersWithChildNodes@1.0.0", + "description": "Retrieve folders and include all child folders recursively.\n\nThis tool is used to retrieve a folder from HubSpot CRM and recursively include all child folders via the childNodes attribute, while child lists in these nodes will be empty. Only the retrieved folder will include its child lists.", + "parameters": [ + { + "name": "target_folder_id", + "type": "string", + "required": false, + "description": "The ID of the folder to retrieve and include all child nodes recursively from HubSpot CRM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.lists.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/lists/folders_getAll'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveFoldersWithChildNodes", + "parameters": { + "target_folder_id": { + "value": "12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveGoalTargets", + "qualifiedName": "HubspotCrmApi.RetrieveGoalTargets", + "fullyQualifiedName": "HubspotCrmApi.RetrieveGoalTargets@1.0.0", + "description": "Retrieve goal target records using record ID or custom value.\n\n Use this tool to retrieve goal target records from HubSpot CRM by providing either the record ID or a custom unique value property.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to return only the archived records. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.goals.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/goal_targets/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveGoalTargets", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"recordId\":\"12345\",\"customValue\":\"custom_abc\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveHubspotCrmRecords", + "qualifiedName": "HubspotCrmApi.RetrieveHubspotCrmRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveHubspotCrmRecords@1.0.0", + "description": "Retrieve HubSpot CRM records by ID or unique property.\n\n Use this tool to fetch HubSpot CRM records by specifying a record ID or a custom unique value property using the `idProperty` parameter.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "crm_object_type", + "type": "string", + "required": false, + "description": "The type of CRM object to retrieve (e.g., contacts, companies). Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_records", + "type": "boolean", + "required": false, + "description": "Set true to return only archived records; false to return unarchived records. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/objects/v3/{objectType}/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveHubspotCrmRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "crm_object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "return_only_archived_records": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"idProperty\": \"email\", \"idValue\": \"example@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveHubspotOrders", + "qualifiedName": "HubspotCrmApi.RetrieveHubspotOrders", + "fullyQualifiedName": "HubspotCrmApi.RetrieveHubspotOrders@1.0.0", + "description": "Retrieve order records from HubSpot CRM by ID or custom property.\n\n Use this tool to fetch order records from HubSpot CRM by providing record IDs or a custom unique value property. Ideal for accessing specific order details stored in your HubSpot account.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_only_archived_orders", + "type": "boolean", + "required": false, + "description": "Set to True to return only archived order records from HubSpot CRM. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.orders.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/orders/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveHubspotOrders", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_only_archived_orders": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"orderId\":\"12345\",\"customProperty\":\"customValue\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveHubspotProductRecords", + "qualifiedName": "HubspotCrmApi.RetrieveHubspotProductRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveHubspotProductRecords@1.0.0", + "description": "Retrieve HubSpot product records by ID or unique property.\n\n This tool retrieves HubSpot CRM product records using a record ID or a custom unique value property (`idProperty`). It is useful for accessing detailed product data stored in HubSpot CRM based on specific identifiers.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve only archived product records. False returns unarchived records. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.products.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/products/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveHubspotProductRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "only_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"id\": \"12345\", \"unique_property\": \"example_product\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveHubspotProperties", + "qualifiedName": "HubspotCrmApi.RetrieveHubspotProperties", + "fullyQualifiedName": "HubspotCrmApi.RetrieveHubspotProperties@1.0.0", + "description": "Retrieve all properties for a HubSpot object type.\n\nUse this tool to read all existing properties for a specified object type in HubSpot CRM. It provides property details relevant to the chosen object type within a HubSpot account.", + "parameters": [ + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Specifies the HubSpot object type (e.g., contact, deal) to retrieve properties for.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only results that have been archived. Otherwise, return all properties.", + "enum": null, + "inferrable": true + }, + { + "name": "selected_properties", + "type": "string", + "required": false, + "description": "A comma-separated list of specific properties to retrieve for the object type. Leave empty to retrieve all properties.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.subscriptions.write", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.pipelines.orders.read", + "automation", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.marketing_events.read", + "crm.objects.appointments.read", + "crm.schemas.appointments.read", + "crm.objects.subscriptions.read", + "crm.schemas.deals.read", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.contacts.sensitive.read.v2", + "crm.schemas.line_items.read", + "crm.objects.goals.read", + "media_bridge.read", + "crm.objects.products.write", + "crm.schemas.listings.read", + "crm.objects.contacts.write", + "crm.objects.goals.write", + "crm.schemas.custom.read", + "crm.objects.marketing_events.write", + "crm.objects.leads.read", + "crm.schemas.orders.read", + "crm.objects.feedback_submissions.read", + "crm.objects.custom.sensitive.write.v2", + "crm.schemas.quotes.read", + "tickets", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.schemas.commercepayments.read", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.leads.write", + "crm.objects.commercepayments.write", + "crm.objects.orders.read", + "crm.schemas.carts.read", + "tickets.sensitive.v2", + "crm.schemas.invoices.read", + "crm.objects.contacts.sensitive.write.v2", + "e-commerce", + "crm.objects.owners.read", + "crm.objects.quotes.write", + "crm.objects.line_items.write", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.schemas.services.read", + "crm.objects.courses.write", + "crm.schemas.contacts.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.services.write", + "crm.objects.courses.read", + "crm.schemas.courses.read", + "crm.objects.custom.read", + "crm.schemas.subscriptions.read", + "crm.schemas.companies.read", + "tickets.highly_sensitive.v2", + "crm.objects.companies.write", + "crm.objects.quotes.read", + "crm.objects.companies.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.invoices.read", + "crm.objects.listings.write", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/properties/{objectType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveHubspotProperties", + "parameters": { + "object_type": { + "value": "contact", + "type": "string", + "required": true + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "selected_properties": { + "value": "firstname,lastname,email", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveHubspotPropertyGroups", + "qualifiedName": "HubspotCrmApi.RetrieveHubspotPropertyGroups", + "fullyQualifiedName": "HubspotCrmApi.RetrieveHubspotPropertyGroups@1.0.0", + "description": "Retrieve HubSpot CRM property groups for a specified object type.\n\nThis tool retrieves all existing property groups for a specified object type within a HubSpot account. Use it to access property group information for organizing and managing CRM data effectively.", + "parameters": [ + { + "name": "hubspot_object_type", + "type": "string", + "required": true, + "description": "Specify the HubSpot object type to retrieve property groups, such as 'contacts', 'companies', or 'deals'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.subscriptions.write", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.pipelines.orders.read", + "automation", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.marketing_events.read", + "crm.objects.appointments.read", + "crm.schemas.appointments.read", + "crm.objects.subscriptions.read", + "crm.schemas.deals.read", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.contacts.sensitive.read.v2", + "crm.schemas.line_items.read", + "crm.objects.goals.read", + "media_bridge.read", + "crm.objects.products.write", + "crm.schemas.listings.read", + "crm.objects.contacts.write", + "crm.objects.goals.write", + "crm.schemas.custom.read", + "crm.objects.marketing_events.write", + "crm.objects.leads.read", + "crm.schemas.orders.read", + "crm.objects.feedback_submissions.read", + "crm.objects.custom.sensitive.write.v2", + "crm.schemas.quotes.read", + "tickets", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.schemas.commercepayments.read", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.leads.write", + "crm.objects.commercepayments.write", + "crm.objects.orders.read", + "crm.schemas.carts.read", + "tickets.sensitive.v2", + "crm.schemas.invoices.read", + "crm.objects.contacts.sensitive.write.v2", + "e-commerce", + "crm.objects.owners.read", + "crm.objects.quotes.write", + "crm.objects.line_items.write", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.schemas.services.read", + "crm.objects.courses.write", + "crm.schemas.contacts.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.services.write", + "crm.objects.courses.read", + "crm.schemas.courses.read", + "crm.objects.custom.read", + "crm.schemas.subscriptions.read", + "crm.schemas.companies.read", + "tickets.highly_sensitive.v2", + "crm.objects.companies.write", + "crm.objects.quotes.read", + "crm.objects.companies.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.invoices.read", + "crm.objects.listings.write", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/properties/{objectType}/groups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveHubspotPropertyGroups", + "parameters": { + "hubspot_object_type": { + "value": "contacts", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveHubspotRecords", + "qualifiedName": "HubspotCrmApi.RetrieveHubspotRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveHubspotRecords@1.0.0", + "description": "Retrieve HubSpot CRM records by ID or unique property.\n\n This tool retrieves HubSpot CRM records using either the record ID or a custom unique value property specified by the `idProperty`. It's useful for accessing multiple records within the CRM at once.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_records", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived records; false to exclude archived records in HubSpot CRM. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.courses.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-410/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveHubspotRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_records": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"idProperty\":\"email\",\"ids\":[\"example@example.com\",\"sample@domain.com\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveHubspotTasks", + "qualifiedName": "HubspotCrmApi.RetrieveHubspotTasks", + "fullyQualifiedName": "HubspotCrmApi.RetrieveHubspotTasks@1.0.0", + "description": "Retrieve HubSpot task records by ID or custom property.\n\n Use this tool to fetch task records from HubSpot CRM by specifying record IDs or a custom unique value property via the `idProperty` parameter.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived records from HubSpot. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tasks/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveHubspotTasks", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"idProperty\":\"custom_id\",\"ids\":[\"task_12345\",\"task_67890\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveHubspotUserRecords", + "qualifiedName": "HubspotCrmApi.RetrieveHubspotUserRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveHubspotUserRecords@1.0.0", + "description": "Retrieve HubSpot user records by ID or unique property.\n\n Use this tool to fetch HubSpot CRM user records by providing a record ID or specifying a custom unique value property with the `idProperty` parameter.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Specify True to return only results that have been archived. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/users/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveHubspotUserRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_only_archived_results": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"id\": \"12345\", \"properties\": [\"email\", \"first_name\", \"last_name\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveInvoiceRecords", + "qualifiedName": "HubspotCrmApi.RetrieveInvoiceRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveInvoiceRecords@1.0.0", + "description": "Retrieve invoice records by ID or custom property.\n\n Use this tool to obtain invoice records by specifying the record ID or using a custom unique value property. Ideal for accessing specific invoice data within the HubSpot CRM.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only results that have been archived from HubSpot CRM. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.invoices.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/invoices/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveInvoiceRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"invoiceId\": \"12345\", \"customerName\": \"John Doe\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveInvoices", + "qualifiedName": "HubspotCrmApi.RetrieveInvoices", + "fullyQualifiedName": "HubspotCrmApi.RetrieveInvoices@1.0.0", + "description": "Retrieve a page of invoices from HubSpot CRM.\n\nUse this tool to read a page of invoices from HubSpot CRM. You can control the return data by specifying desired properties through the query parameters.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of object types whose associated IDs should be retrieved. Ignored if associations do not exist.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of invoice results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token for the last successfully read resource to retrieve the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List properties to return with their historical values. Reduced invoice limit per request.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived invoices; false for all invoices.", + "enum": null, + "inferrable": true + }, + { + "name": "specified_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of invoice property names to return. Ignored if properties are not present on the objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.invoices.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/invoices_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveInvoices", + "parameters": { + "associated_object_types": { + "value": ["CONTACT", "COMPANY"], + "type": "array", + "required": false + }, + "maximum_results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "paging_cursor_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["amount", "status"], + "type": "array", + "required": false + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "specified_properties": { + "value": ["invoice_id", "due_date", "total"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLeadRecords", + "qualifiedName": "HubspotCrmApi.RetrieveLeadRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveLeadRecords@1.0.0", + "description": "Retrieve lead records by ID or custom unique property.\n\n This tool fetches lead records from HubSpot CRM using specified record IDs or a custom unique value property if provided. It is useful for obtaining detailed information on leads based on specific identifiers.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Return only results that have been archived. Set to 'true' to filter by archived records. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.leads.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/leads/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveLeadRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"lead_id\": \"12345\", \"custom_property\": \"custom_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLimitApproachingRecords", + "qualifiedName": "HubspotCrmApi.RetrieveLimitApproachingRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveLimitApproachingRecords@1.0.0", + "description": "Retrieve objects nearing or at HubSpot CRM association limits.\n\nThis tool is called to get objects from HubSpot CRM that have records close to or at their association limits. It helps in monitoring and managing association constraints.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/limits/associations/records/from'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveLimitApproachingRecords", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLineItemsPage", + "qualifiedName": "HubspotCrmApi.RetrieveLineItemsPage", + "fullyQualifiedName": "HubspotCrmApi.RetrieveLineItemsPage@1.0.0", + "description": "Retrieve a page of line items from HubSpot CRM.\n\nUse this tool to read a specific page of line items from HubSpot CRM. You can control the details returned using the `properties` query parameter to tailor the response to your needs.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object types to retrieve associated IDs. Nonexistent associations are ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "include_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the properties to include in the response, separated by commas. Ignored if not present.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Sets the maximum number of line items to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_after", + "type": "string", + "required": false, + "description": "The cursor token from the last page to retrieve the next set of results.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of property names to return with their value history. This reduces the max line items per request.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. False returns non-archived results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/line_items_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveLineItemsPage", + "parameters": { + "associated_object_types": { + "value": ["deal", "contact"], + "type": "array", + "required": false + }, + "include_properties": { + "value": ["name", "price", "quantity"], + "type": "array", + "required": false + }, + "max_results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_cursor_after": { + "value": "cursor_token_12345", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["price", "quantity"], + "type": "array", + "required": false + }, + "return_only_archived": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveMeetingRecords", + "qualifiedName": "HubspotCrmApi.RetrieveMeetingRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveMeetingRecords@1.0.0", + "description": "Retrieve meeting records by ID or unique property.\n\n Use this tool to retrieve HubSpot CRM meeting records by specifying record IDs or a custom unique value property. It helps in accessing specific meeting details efficiently.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_only_archived_results", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve only archived meeting records. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/meetings/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveMeetingRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_only_archived_results": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"meetingId\":\"12345\",\"properties\":{\"title\":\"Project Kickoff\",\"date\":\"2023-10-15T10:00:00Z\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveNotesPage", + "qualifiedName": "HubspotCrmApi.RetrieveNotesPage", + "fullyQualifiedName": "HubspotCrmApi.RetrieveNotesPage@1.0.0", + "description": "Retrieve a page of notes from HubSpot CRM.\n\nUse this tool to read a page of notes from HubSpot CRM. You can control the properties returned via query parameters.", + "parameters": [ + { + "name": "associated_object_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of object types to retrieve associated IDs for. Non-existent associations will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "Token for paging to retrieve the next set of notes. Use the token from `paging.next.after` in the previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_with_history", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of properties to return with their historical values. Reduces the maximum number of notes per request.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of note results to display per page. Specify an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_notes", + "type": "boolean", + "required": false, + "description": "Set to True to return only archived notes; otherwise, non-archived notes are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "returned_properties_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of note properties to include in the response. Specify as an array of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/objects/notes_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveNotesPage", + "parameters": { + "associated_object_types": { + "value": ["CONTACT", "DEAL"], + "type": "array", + "required": false + }, + "paging_cursor_token": { + "value": "abcdef123456", + "type": "string", + "required": false + }, + "properties_with_history": { + "value": ["content", "createdAt"], + "type": "array", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "return_only_archived_notes": { + "value": false, + "type": "boolean", + "required": false + }, + "returned_properties_list": { + "value": ["id", "content", "authorId"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveNotesRecords", + "qualifiedName": "HubspotCrmApi.RetrieveNotesRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveNotesRecords@1.0.0", + "description": "Retrieve notes records by ID or custom property.\n\n This tool retrieves records from HubSpot CRM using either record IDs or a custom unique value property specified by the `idProperty` parameter.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived records. Use false to include non-archived records. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/notes/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveNotesRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"notesIds\": [\"123\", \"456\"], \"idProperty\": \"customId\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveOwnerDetails", + "qualifiedName": "HubspotCrmApi.RetrieveOwnerDetails", + "fullyQualifiedName": "HubspotCrmApi.RetrieveOwnerDetails@1.0.0", + "description": "Retrieve details of a specific CRM owner by ID.\n\nThis tool retrieves details of a specific owner in the HubSpot CRM using either their 'id' or 'userId'. Use it when you need comprehensive information about a particular CRM owner.", + "parameters": [ + { + "name": "owner_id", + "type": "integer", + "required": true, + "description": "The unique ID of the CRM owner. Use this to retrieve the owner's details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived", + "type": "boolean", + "required": false, + "description": "Set to true to include archived owners in the retrieved details.", + "enum": null, + "inferrable": true + }, + { + "name": "owner_id_type", + "type": "string", + "required": false, + "description": "Specify whether the 'ownerId' refers to an 'id' or 'userId'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.owners.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/owners/{ownerId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveOwnerDetails", + "parameters": { + "owner_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "include_archived": { + "value": true, + "type": "boolean", + "required": false + }, + "owner_id_type": { + "value": "id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveOwnersList", + "qualifiedName": "HubspotCrmApi.RetrieveOwnersList", + "fullyQualifiedName": "HubspotCrmApi.RetrieveOwnersList@1.0.0", + "description": "Retrieve a list of owners from the HubSpot CRM account.\n\nUse this tool to obtain a paginated list of all owners available in a HubSpot CRM account. This can be useful for managing owner-related data or assignments.", + "parameters": [ + { + "name": "filter_by_email", + "type": "string", + "required": false, + "description": "Specify an email address to filter the list of owners returned. Only the owner with this exact email will be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived", + "type": "boolean", + "required": false, + "description": "Set to true to include archived owners in the retrieved list.", + "enum": null, + "inferrable": true + }, + { + "name": "owners_list_limit", + "type": "integer", + "required": false, + "description": "The maximum number of owners to return per page. Provide an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_after", + "type": "string", + "required": false, + "description": "A cursor to get the next page of results, indicating the last result shown from the previous request.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.owners.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/owners/'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveOwnersList", + "parameters": { + "filter_by_email": { + "value": "owner@example.com", + "type": "string", + "required": false + }, + "include_archived": { + "value": true, + "type": "boolean", + "required": false + }, + "owners_list_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor_after": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePartnerServicesRecords", + "qualifiedName": "HubspotCrmApi.RetrievePartnerServicesRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrievePartnerServicesRecords@1.0.0", + "description": "Retrieve partner services records by ID or unique property.\n\n This tool retrieves records for partner services using either a record ID or a custom unique value property. It is ideal for accessing specific partner service data within the HubSpot CRM.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_only_archived_records", + "type": "boolean", + "required": false, + "description": "Set to true to return only the archived records. False will include non-archived records. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-services.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/partner_services/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrievePartnerServicesRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_only_archived_records": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"id\":\"12345\",\"property\":\"custom_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveQuotesBatch", + "qualifiedName": "HubspotCrmApi.RetrieveQuotesBatch", + "fullyQualifiedName": "HubspotCrmApi.RetrieveQuotesBatch@1.0.0", + "description": "Retrieve multiple quotes by ID or custom property.\n\n This tool retrieves multiple quote records by their IDs or a custom unique value property. It should be called when you need to access specific quotes in batch format from the HubSpot CRM.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "archived_results_only", + "type": "boolean", + "required": false, + "description": "Specify `true` to return only archived results; `false` to include non-archived results. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.quotes.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/quotes/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveQuotesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "archived_results_only": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"quote_ids\": [\"12345\", \"67890\", \"54321\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSubscriptionRecords", + "qualifiedName": "HubspotCrmApi.RetrieveSubscriptionRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveSubscriptionRecords@1.0.0", + "description": "Retrieve subscription records by ID or unique property.\n\n Use this tool to fetch subscription records from HubSpot CRM by providing record IDs or a custom unique value property. Ideal for accessing specific subscription details quickly.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "only_archived_records", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived results. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.subscriptions.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/subscriptions/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveSubscriptionRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "only_archived_records": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"id\":\"12345\",\"unique_property\":\"subscription_name\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTaxRecords", + "qualifiedName": "HubspotCrmApi.RetrieveTaxRecords", + "fullyQualifiedName": "HubspotCrmApi.RetrieveTaxRecords@1.0.0", + "description": "Retrieve tax records by ID or custom property.\n\n Use this tool to retrieve tax records by specifying record IDs or using a custom unique value property. It's useful when you need detailed tax information for specific records.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve only archived records, false to exclude them. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/taxes/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveTaxRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_only": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"recordId\":\"12345\",\"customProperty\":\"tax_2023\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTicketBatch", + "qualifiedName": "HubspotCrmApi.RetrieveTicketBatch", + "fullyQualifiedName": "HubspotCrmApi.RetrieveTicketBatch@1.0.0", + "description": "Retrieve a batch of tickets by ID or property value.\n\n Use this tool to fetch a batch of CRM tickets by providing their IDs or a specific unique property value. Ideal for obtaining detailed information about multiple tickets simultaneously.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "return_archived_tickets_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived tickets. If false, include non-archived tickets as well. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tickets/batch/read_read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.RetrieveTicketBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "return_archived_tickets_only": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"ticket_ids\":[\"12345\",\"67890\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ScheduleListConversion", + "qualifiedName": "HubspotCrmApi.ScheduleListConversion", + "fullyQualifiedName": "HubspotCrmApi.ScheduleListConversion@1.0.0", + "description": "Schedule or update the conversion of an active list to static.\n\n Use this tool to schedule the conversion of an active list into a static list, or to update an already scheduled conversion. This can be scheduled for a specific date or based on activity in HubSpot CRM.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "list_id", + "type": "string", + "required": false, + "description": "The ID of the list you want to schedule the conversion for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/v3/lists/{listId}/schedule-conversion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.ScheduleListConversion", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "list_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"scheduled_date\":\"2023-12-01T10:00:00Z\",\"conversion_type\":\"static\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchAppointments", + "qualifiedName": "HubspotCrmApi.SearchAppointments", + "fullyQualifiedName": "HubspotCrmApi.SearchAppointments@1.0.0", + "description": "Search for appointments based on specified criteria.\n\n Use this tool to search for appointments in the CRM by specifying various criteria. It is useful for finding specific appointments or lists based on search conditions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "appointment_search_criteria_type", + "type": "string", + "required": false, + "description": "Specify the type of object for the appointment search, such as 'appointments'. This determines the domain within the CRM to be searched. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/objects/v3/{objectType}/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchAppointments", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "appointment_search_criteria_type": { + "value": "appointments", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"date_range\": {\"start\": \"2023-01-01\", \"end\": \"2023-12-31\"}, \"status\": \"confirmed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchCallsHubspot", + "qualifiedName": "HubspotCrmApi.SearchCallsHubspot", + "fullyQualifiedName": "HubspotCrmApi.SearchCallsHubspot@1.0.0", + "description": "Search and filter call records in HubSpot CRM.\n\nUse this tool to search for calls in HubSpot CRM by applying filters on properties, searching through associations, and sorting the results. Ideal for retrieving specific call records from your HubSpot CRM.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/calls/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchCallsHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filters\":{\"contactId\":\"12345\",\"dateRange\":{\"start\":\"2023-01-01\",\"end\":\"2023-12-31\"}},\"sort\":{\"property\":\"date\",\"direction\":\"DESC\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchCommercePayments", + "qualifiedName": "HubspotCrmApi.SearchCommercePayments", + "fullyQualifiedName": "HubspotCrmApi.SearchCommercePayments@1.0.0", + "description": "Search for commerce payments in HubSpot CRM.\n\nUse this tool to search for commerce payments within the HubSpot CRM. It should be called when you need to retrieve payment information from the CRM database.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.commercepayments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/commerce_payments/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchCommercePayments", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"customer_id\":\"12345\",\"status\":\"completed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchCompaniesInHubspot", + "qualifiedName": "HubspotCrmApi.SearchCompaniesInHubspot", + "fullyQualifiedName": "HubspotCrmApi.SearchCompaniesInHubspot@1.0.0", + "description": "Search for companies in HubSpot CRM using filters and sorting.\n\nThis tool allows you to search for companies in HubSpot CRM by applying filters, associating searches, and sorting the results. It is useful for retrieving company information based on specific criteria quickly.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.companies.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/companies/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchCompaniesInHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filters\": {\"industry\": \"Software\", \"location\": \"San Francisco\"}, \"sort\": {\"property\": \"name\", \"direction\": \"ASC\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchContacts", + "qualifiedName": "HubspotCrmApi.SearchContacts", + "fullyQualifiedName": "HubspotCrmApi.SearchContacts@1.0.0", + "description": "Search contacts in HubSpot CRM.\n\nUse this tool to search for contacts within the HubSpot CRM. It is useful for retrieving contact information based on search criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/contacts/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchContacts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filterGroup\":{\"filters\":[{\"propertyName\":\"email\",\"operator\":\"CONTAINS\",\"value\":\"example@example.com\"}]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchCrmLeads", + "qualifiedName": "HubspotCrmApi.SearchCrmLeads", + "fullyQualifiedName": "HubspotCrmApi.SearchCrmLeads@1.0.0", + "description": "Search for leads in HubSpot CRM.\n\nThis tool searches for leads in the HubSpot CRM. Use it when you want to query and retrieve lead information based on specific criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.leads.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/leads/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchCrmLeads", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filters\":[{\"property\":\"email\",\"operator\":\"NEQ\",\"value\":\"\"},{\"property\":\"status\",\"operator\":\"EQ\",\"value\":\"new\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchCrmMessages", + "qualifiedName": "HubspotCrmApi.SearchCrmMessages", + "fullyQualifiedName": "HubspotCrmApi.SearchCrmMessages@1.0.0", + "description": "Search and filter CRM messages based on various criteria.\n\nUse this tool to search for messages in the CRM by applying filters on properties, checking associations, and sorting the results. Ideal for retrieving specific communications data within the HubSpot CRM.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/communications/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchCrmMessages", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filters\":{\"status\":\"sent\",\"date\":\"2023-10-01\"},\"associations\":{\"contact_id\":\"12345\"},\"sort\":{\"property\":\"date\",\"order\":\"desc\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchCrmUsers", + "qualifiedName": "HubspotCrmApi.SearchCrmUsers", + "fullyQualifiedName": "HubspotCrmApi.SearchCrmUsers@1.0.0", + "description": "Perform a user search in the CRM database.\n\nUse this tool to search for users within the HubSpot CRM. It should be called when you need to retrieve user information based on specific criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/users/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchCrmUsers", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"query\":\"active\",\"limit\":10}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchDeals", + "qualifiedName": "HubspotCrmApi.SearchDeals", + "fullyQualifiedName": "HubspotCrmApi.SearchDeals@1.0.0", + "description": "Search for deals using specified criteria and filters.\n\nThis tool searches for deals in the HubSpot CRM using the provided criteria and filters. It should be called when there's a need to find deals that match specific conditions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.deals.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-3/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchDeals", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filter\": {\"status\": \"closed-won\"}, \"properties\": [\"dealname\", \"amount\", \"pipeline\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchDiscounts", + "qualifiedName": "HubspotCrmApi.SearchDiscounts", + "fullyQualifiedName": "HubspotCrmApi.SearchDiscounts@1.0.0", + "description": "Search for discounts in the HubSpot CRM.\n\nUse this tool to search for discount records in the HubSpot CRM. It is useful when you need to find specific discounts based on certain criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/discounts/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchDiscounts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"criteria\":{\"discount_type\":\"percentage\",\"amount\":10}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchEmails", + "qualifiedName": "HubspotCrmApi.SearchEmails", + "fullyQualifiedName": "HubspotCrmApi.SearchEmails@1.0.0", + "description": "Search for emails based on specified query parameters.\n\nUse this tool to perform a search for emails in the CRM system, returning results that match the given criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/emails/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchEmails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"query\":\"customer support\",\"date_range\":{\"start\":\"2023-01-01\",\"end\":\"2023-12-31\"},\"template_id\":12345}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchFeedbackSubmissions", + "qualifiedName": "HubspotCrmApi.SearchFeedbackSubmissions", + "fullyQualifiedName": "HubspotCrmApi.SearchFeedbackSubmissions@1.0.0", + "description": "Search for feedback submissions in HubSpot CRM.\n\nThis tool allows you to search for feedback submissions within the HubSpot CRM, helping you find specific feedback entries based on your search criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.contacts.read", + "crm.objects.feedback_submissions.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/feedback_submissions/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchFeedbackSubmissions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"submissionId\":\"12345\",\"status\":\"completed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchFeesInCrm", + "qualifiedName": "HubspotCrmApi.SearchFeesInCrm", + "fullyQualifiedName": "HubspotCrmApi.SearchFeesInCrm@1.0.0", + "description": "Search for fees in HubSpot CRM.\n\nUse this tool to search for fees in the HubSpot CRM database. It should be called when you need to find specific fee records based on search criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/fees/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchFeesInCrm", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"searchCriteria\": {\"feeType\": \"monthly\", \"status\": \"active\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchGoalTargets", + "qualifiedName": "HubspotCrmApi.SearchGoalTargets", + "fullyQualifiedName": "HubspotCrmApi.SearchGoalTargets@1.0.0", + "description": "Search for goal targets using specified criteria.\n\nThis tool allows searching for goal targets within the HubSpot CRM based on specified criteria. Call this tool when you need to locate specific goal targets or retrieve a list based on certain parameters.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.goals.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/goal_targets/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchGoalTargets", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"criteria\":{\"goalId\":\"12345\",\"status\":\"active\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchHubspotCarts", + "qualifiedName": "HubspotCrmApi.SearchHubspotCarts", + "fullyQualifiedName": "HubspotCrmApi.SearchHubspotCarts@1.0.0", + "description": "Search for carts in HubSpot CRM.\n\nThis tool performs a search query to retrieve cart information from HubSpot CRM. It can be used to find specific carts using various search parameters.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.carts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/carts/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchHubspotCarts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"search_criteria\": {\"status\": \"active\", \"customer_id\": \"12345\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchHubspotListings", + "qualifiedName": "HubspotCrmApi.SearchHubspotListings", + "fullyQualifiedName": "HubspotCrmApi.SearchHubspotListings@1.0.0", + "description": "Search listings in HubSpot CRM using filters and properties.\n\nUse this tool to execute a search query in HubSpot CRM to find listings. You can specify various filters and properties to refine your search results.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.listings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-420/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchHubspotListings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filter\": {\"status\": \"active\"}, \"fields\": [\"id\", \"name\", \"price\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchHubspotLists", + "qualifiedName": "HubspotCrmApi.SearchHubspotLists", + "fullyQualifiedName": "HubspotCrmApi.SearchHubspotLists@1.0.0", + "description": "Search HubSpot CRM lists by name or page through all lists.\n\nThis tool allows searching for specific lists within the HubSpot CRM by list name. Alternatively, you can page through all lists by providing an empty query. It's useful for retrieving specific list data or browsing all available lists.", + "parameters": [ + { + "name": "filter_by_list_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of list IDs to filter search results. If not provided or empty, no filter is applied.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_processing_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of processing types to filter results. Valid values: 'MANUAL', 'SNAPSHOT', 'DYNAMIC'. If omitted, no filtering by processing type is applied.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_list_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify additional list properties to include in the response. Defaults fetch standard properties like `hs_list_size` and others.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_lists_to_return", + "type": "integer", + "required": false, + "description": "The number of lists to include in the response. Defaults to 20 if not provided, with a maximum of 500.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "The term to search for lists by name. Returns all lists if empty.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the order in which the lists should be sorted. Acceptable values could be 'asc' for ascending or 'desc' for descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "start_offset", + "type": "integer", + "required": false, + "description": "The starting point for pagination of list results. Defaults to `0` if not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.lists.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/lists/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchHubspotLists", + "parameters": { + "filter_by_list_ids": { + "value": ["123", "456", "789"], + "type": "array", + "required": false + }, + "filter_by_processing_types": { + "value": ["MANUAL", "DYNAMIC"], + "type": "array", + "required": false + }, + "include_additional_list_properties": { + "value": ["hs_list_size", "last_updated"], + "type": "array", + "required": false + }, + "number_of_lists_to_return": { + "value": 30, + "type": "integer", + "required": false + }, + "search_query": { + "value": "customer engagement", + "type": "string", + "required": false + }, + "sort_order": { + "value": "asc", + "type": "string", + "required": false + }, + "start_offset": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchHubspotMeetings", + "qualifiedName": "HubspotCrmApi.SearchHubspotMeetings", + "fullyQualifiedName": "HubspotCrmApi.SearchHubspotMeetings@1.0.0", + "description": "Search for meetings in HubSpot CRM.\n\nUse this tool to search for meetings stored in the HubSpot CRM. It should be called whenever there is a need to locate meetings based on specific criteria within the HubSpot platform.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/meetings/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchHubspotMeetings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filter\":{\"date_range\":{\"start\":\"2023-01-01\",\"end\":\"2023-12-31\"},\"status\":\"scheduled\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchHubspotNotes", + "qualifiedName": "HubspotCrmApi.SearchHubspotNotes", + "fullyQualifiedName": "HubspotCrmApi.SearchHubspotNotes@1.0.0", + "description": "Search for notes in HubSpot CRM.\n\nUse this tool to search for specific notes within HubSpot CRM. It should be called when you need to find and retrieve notes based on particular search criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/notes/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchHubspotNotes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"criteria\": {\"note_title\": \"Meeting Summary\", \"created_after\": \"2023-01-01\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchHubspotObjects", + "qualifiedName": "HubspotCrmApi.SearchHubspotObjects", + "fullyQualifiedName": "HubspotCrmApi.SearchHubspotObjects@1.0.0", + "description": "Perform a search on HubSpot CRM objects by type.\n\n Use this tool to search for objects in HubSpot CRM by specifying the object type. It helps in locating contacts, companies, deals, and other entities based on defined criteria.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": false, + "description": "Specify the type of object to search for in HubSpot, such as contacts, companies, or deals. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/{objectType}/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchHubspotObjects", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"filters\":[{\"property\":\"email\",\"operator\":\"EQ\",\"value\":\"example@example.com\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchHubspotPayments", + "qualifiedName": "HubspotCrmApi.SearchHubspotPayments", + "fullyQualifiedName": "HubspotCrmApi.SearchHubspotPayments@1.0.0", + "description": "Search for payments in HubSpot CRM.\n\nUse this tool to search for specific payments within the HubSpot CRM. It should be called when you need to locate payments based on specific criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/payments/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchHubspotPayments", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"criteria\": {\"amount\": {\"gte\": 100}, \"status\": \"completed\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchHubspotProducts", + "qualifiedName": "HubspotCrmApi.SearchHubspotProducts", + "fullyQualifiedName": "HubspotCrmApi.SearchHubspotProducts@1.0.0", + "description": "Search for products in HubSpot CRM.\n\nUse this tool to search for and retrieve product information from HubSpot CRM. It calls the endpoint designed to query products based on specified criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.products.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/products/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchHubspotProducts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filter\":{\"property\":\"name\",\"operator\":\"LIKE\",\"value\":\"example_product\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchHubspotSubscriptions", + "qualifiedName": "HubspotCrmApi.SearchHubspotSubscriptions", + "fullyQualifiedName": "HubspotCrmApi.SearchHubspotSubscriptions@1.0.0", + "description": "Search for subscriptions in HubSpot CRM.\n\nUse this tool to search and retrieve details of specific subscriptions from HubSpot CRM based on given criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.subscriptions.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/subscriptions/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchHubspotSubscriptions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"criteria\":{\"status\":\"active\",\"subscription_type\":\"premium\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchHubspotTasks", + "qualifiedName": "HubspotCrmApi.SearchHubspotTasks", + "fullyQualifiedName": "HubspotCrmApi.SearchHubspotTasks@1.0.0", + "description": "Search for tasks in HubSpot CRM.\n\nUse this tool to search for tasks within HubSpot CRM. It should be called when you need to find specific tasks based on certain search criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tasks/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchHubspotTasks", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"searchCriteria\":{\"taskId\":\"12345\",\"status\":\"completed\",\"dueDate\":\"2023-10-01\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchInvoices", + "qualifiedName": "HubspotCrmApi.SearchInvoices", + "fullyQualifiedName": "HubspotCrmApi.SearchInvoices@1.0.0", + "description": "Find invoices in the HubSpot CRM.\n\nUse this tool to search and retrieve invoices from the HubSpot CRM based on specific criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.invoices.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/invoices/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchInvoices", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filter\": {\"status\": \"paid\"}, \"sort\": [{\"property\": \"date\", \"direction\": \"DESC\"}], \"limit\": 10}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchLineItems", + "qualifiedName": "HubspotCrmApi.SearchLineItems", + "fullyQualifiedName": "HubspotCrmApi.SearchLineItems@1.0.0", + "description": "Search for line items in HubSpot CRM.\n\nUse this tool to search for line items within HubSpot CRM. It should be called when you need to retrieve specific line items based on search criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/line_items/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchLineItems", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"searchCriteria\": {\"lineItemName\": \"Sample Item\", \"status\": \"active\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchOrderRecords", + "qualifiedName": "HubspotCrmApi.SearchOrderRecords", + "fullyQualifiedName": "HubspotCrmApi.SearchOrderRecords@1.0.0", + "description": "Search for order records in HubSpot CRM.\n\nThis tool searches order records in HubSpot CRM based on specified criteria. It should be called when you need to find specific order details or filter orders according to certain conditions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.orders.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/orders/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchOrderRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"criteria\":{\"status\":\"completed\",\"date\":{\"from\":\"2023-01-01\",\"to\":\"2023-12-31\"}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchPartnerClients", + "qualifiedName": "HubspotCrmApi.SearchPartnerClients", + "fullyQualifiedName": "HubspotCrmApi.SearchPartnerClients@1.0.0", + "description": "Perform a search for partner clients in CRM.\n\nUse this tool to search for partner clients within the HubSpot CRM system. It should be called when you need to find specific partner client information or records based on search criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-clients.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/partner_clients/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchPartnerClients", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"searchCriteria\": {\"clientName\": \"Acme Corp\", \"status\": \"active\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchPartnerServicesHubspot", + "qualifiedName": "HubspotCrmApi.SearchPartnerServicesHubspot", + "fullyQualifiedName": "HubspotCrmApi.SearchPartnerServicesHubspot@1.0.0", + "description": "Search for partner services in HubSpot CRM.\n\nUse this tool to perform a search for partner services within the HubSpot CRM. It can be called when you need to find specific partner services based on given criteria or parameters.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-services.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/partner_services/search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchPartnerServicesHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"criteria\":{\"search_term\":\"digital marketing\",\"location\":\"USA\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchPostalMailHubspot", + "qualifiedName": "HubspotCrmApi.SearchPostalMailHubspot", + "fullyQualifiedName": "HubspotCrmApi.SearchPostalMailHubspot@1.0.0", + "description": "Search for postal mail objects in HubSpot CRM.\n\nUse this tool to search for postal mail records in HubSpot CRM based on specific criteria. This is useful when you need to retrieve details about postal interactions stored within the CRM.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/postal_mail/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchPostalMailHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filters\":[{\"property\":\"status\",\"operator\":\"equals\",\"value\":\"sent\"},{\"property\":\"mail_type\",\"operator\":\"equals\",\"value\":\"newsletter\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchQuotesInHubspot", + "qualifiedName": "HubspotCrmApi.SearchQuotesInHubspot", + "fullyQualifiedName": "HubspotCrmApi.SearchQuotesInHubspot@1.0.0", + "description": "Search for quotes in HubSpot CRM.\n\nUse this tool to perform a search for quotes stored in HubSpot CRM. Useful for retrieving information about sales quotes based on specific criteria or parameters.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.quotes.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/quotes/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchQuotesInHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filter\": {\"status\": \"active\"}, \"properties\": [\"quote_number\", \"amount\", \"expiration_date\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchTaxes", + "qualifiedName": "HubspotCrmApi.SearchTaxes", + "fullyQualifiedName": "HubspotCrmApi.SearchTaxes@1.0.0", + "description": "Search for tax entries within HubSpot CRM.\n\nUse this tool to find specific tax records in HubSpot CRM based on search criteria. It returns relevant tax entries from the CRM database.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/taxes/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchTaxes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"criteria\":{\"taxType\":\"Sales Tax\",\"region\":\"California\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchTickets", + "qualifiedName": "HubspotCrmApi.SearchTickets", + "fullyQualifiedName": "HubspotCrmApi.SearchTickets@1.0.0", + "description": "Search and filter CRM tickets based on properties and associations.\n\nUtilize this tool to search for tickets within the CRM by applying specific filters on properties, examining associations, and sorting the results. Ideal for retrieving detailed ticket information based on particular criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tickets"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tickets/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SearchTickets", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filters\":[{\"property\":\"status\",\"value\":\"open\"}],\"sorts\":[{\"property\":\"createdAt\",\"direction\":\"DESC\"}],\"limit\":10}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendEventToHubspot", + "qualifiedName": "HubspotCrmApi.SendEventToHubspot", + "fullyQualifiedName": "HubspotCrmApi.SendEventToHubspot@1.0.0", + "description": "Send event data to a specified HubSpot event type.\n\nThis tool is used to send a single instance of event data to a specified event type in HubSpot CRM. It should be called when there's a need to submit event data to HubSpot for tracking or analysis.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.deals.write", + "crm.objects.contacts.write", + "crm.objects.companies.highly_sensitive.write.v2", + "tickets.sensitive.v2", + "tickets.highly_sensitive.v2", + "crm.schemas.companies.write", + "crm.objects.companies.write", + "tickets", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.schemas.contacts.write", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.contacts.highly_sensitive.write.v2", + "timeline", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.deals.sensitive.write.v2" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/integrators/timeline/v3/events_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.SendEventToHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"eventType\":\"page_view\",\"properties\":{\"url\":\"https://example.com\",\"referrer\":\"https://referrer.com\",\"timestamp\":\"2023-10-01T12:00:00Z\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TranslateLegacyListIdsBatch", + "qualifiedName": "HubspotCrmApi.TranslateLegacyListIdsBatch", + "fullyQualifiedName": "HubspotCrmApi.TranslateLegacyListIdsBatch@1.0.0", + "description": "Translate legacy list IDs to new list IDs in batch.\n\nUse this tool to convert a large number (up to 10,000) of legacy list IDs to the current list ID format. This tool is essential for data migration purposes and is available until May 30th, 2025.", + "parameters": [ + { + "name": "legacy_list_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of legacy list IDs to be translated to new IDs, supporting up to 10,000 strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.lists.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/lists/idmapping_translateLegacyListIdToListIdBatch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.TranslateLegacyListIdsBatch", + "parameters": { + "legacy_list_ids": { + "value": [ + "12345", + "67890", + "54321", + "98765", + "11223", + "44556", + "77889", + "99001", + "23456", + "78901" + ], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TranslateLegacyToNewListId", + "qualifiedName": "HubspotCrmApi.TranslateLegacyToNewListId", + "fullyQualifiedName": "HubspotCrmApi.TranslateLegacyToNewListId@1.0.0", + "description": "Translate legacy list ID to the new list ID format.\n\nThis tool translates a legacy list ID to the new list ID format using HubSpot CRM's temporary API. It is useful for mapping old list IDs to new ones before the API expires on May 30th, 2025.", + "parameters": [ + { + "name": "legacy_list_id", + "type": "string", + "required": false, + "description": "The legacy list ID from the lists v1 API to be translated to the new format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.lists.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/crm/v3/lists/idmapping_translateLegacyListIdToListId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.TranslateLegacyToNewListId", + "parameters": { + "legacy_list_id": { + "value": "123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBatchCalls", + "qualifiedName": "HubspotCrmApi.UpdateBatchCalls", + "fullyQualifiedName": "HubspotCrmApi.UpdateBatchCalls@1.0.0", + "description": "Update multiple calls in HubSpot CRM by ID.\n\nThis tool updates a batch of call records in HubSpot CRM using their IDs. Use it to modify details of multiple calls efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/calls/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateBatchCalls", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"calls\":[{\"id\":\"12345\",\"duration\":180,\"note\":\"Follow-up required\"},{\"id\":\"67890\",\"duration\":240,\"note\":\"Left a voicemail\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBatchContacts", + "qualifiedName": "HubspotCrmApi.UpdateBatchContacts", + "fullyQualifiedName": "HubspotCrmApi.UpdateBatchContacts@1.0.0", + "description": "Update a batch of contacts in HubSpot CRM.\n\nUse this tool to update multiple contacts simultaneously in HubSpot CRM. It is helpful when you need to make changes to several contact records at once.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/contacts/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateBatchContacts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"contacts\":[{\"id\":\"12345\",\"properties\":{\"firstname\":\"John\",\"lastname\":\"Doe\",\"email\":\"john.doe@example.com\"}},{\"id\":\"67890\",\"properties\":{\"firstname\":\"Jane\",\"lastname\":\"Smith\",\"email\":\"jane.smith@example.com\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBatchEmails", + "qualifiedName": "HubspotCrmApi.UpdateBatchEmails", + "fullyQualifiedName": "HubspotCrmApi.UpdateBatchEmails@1.0.0", + "description": "Update a batch of emails by their IDs or unique properties.\n\nUse this tool to update multiple emails in bulk using their internal IDs or unique property values in HubSpot CRM.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/emails/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateBatchEmails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"emails\":[{\"id\":\"email1\",\"status\":\"updated\"},{\"id\":\"email2\",\"status\":\"draft\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBatchFees", + "qualifiedName": "HubspotCrmApi.UpdateBatchFees", + "fullyQualifiedName": "HubspotCrmApi.UpdateBatchFees@1.0.0", + "description": "Update multiple fees by internal ID or unique properties.\n\nUse this tool to update a batch of fees in HubSpot CRM by specifying internal IDs or unique property values. Call this tool when you need to make bulk updates to fee records.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/fees/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateBatchFees", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"fees\":[{\"internal_id\":\"1234\",\"amount\":150.00},{\"internal_id\":\"5678\",\"amount\":200.00}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBatchGoalTargets", + "qualifiedName": "HubspotCrmApi.UpdateBatchGoalTargets", + "fullyQualifiedName": "HubspotCrmApi.UpdateBatchGoalTargets@1.0.0", + "description": "Update multiple goal targets in HubSpot CRM.\n\nUse this tool to update several goal targets simultaneously in HubSpot CRM using their internal IDs or unique property values.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.goals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/goal_targets/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateBatchGoalTargets", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"goal_targets\":[{\"id\":\"12345\",\"target_value\":100},{\"id\":\"67890\",\"target_value\":200}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBatchOfCompanies", + "qualifiedName": "HubspotCrmApi.UpdateBatchOfCompanies", + "fullyQualifiedName": "HubspotCrmApi.UpdateBatchOfCompanies@1.0.0", + "description": "Update multiple company records in HubSpot by ID.\n\nThis tool allows batch updating of company records in the HubSpot CRM. It should be called when there is a need to update information for multiple companies at once, using their unique IDs.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.companies.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/companies/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateBatchOfCompanies", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"companies\": [{\"id\": \"12345\", \"properties\": {\"name\": \"Company A\", \"industry\": \"Technology\"}}, {\"id\": \"67890\", \"properties\": {\"name\": \"Company B\", \"industry\": \"Finance\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBatchTasks", + "qualifiedName": "HubspotCrmApi.UpdateBatchTasks", + "fullyQualifiedName": "HubspotCrmApi.UpdateBatchTasks@1.0.0", + "description": "Update a batch of tasks in HubSpot CRM.\n\nUse this tool to update multiple tasks in HubSpot CRM by their internal ID or unique property values. It should be called when you need to modify several tasks at once, such as changing task details or status across multiple entries.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tasks/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateBatchTasks", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"tasks\":[{\"id\":\"12345\",\"status\":\"completed\",\"details\":\"Follow up with the client.\"},{\"id\":\"67890\",\"status\":\"pending\",\"details\":\"Review marketing materials.\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBatchTaxes", + "qualifiedName": "HubspotCrmApi.UpdateBatchTaxes", + "fullyQualifiedName": "HubspotCrmApi.UpdateBatchTaxes@1.0.0", + "description": "Update taxes in batch using IDs or unique values.\n\nCall this tool to update multiple tax records at once in HubSpot CRM using either internal IDs or unique property values.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/taxes/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateBatchTaxes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"taxes\": [{\"id\": \"tax1\", \"rate\": 0.07}, {\"id\": \"tax2\", \"rate\": 0.05}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCallInfo", + "qualifiedName": "HubspotCrmApi.UpdateCallInfo", + "fullyQualifiedName": "HubspotCrmApi.UpdateCallInfo@1.0.0", + "description": "Update details of a specific call record in the CRM.\n\n Use this tool to perform a partial update of a call object in the HubSpot CRM using its `{callId}` or a unique property. Only provided properties will be updated. Read-only and non-existent properties will cause errors.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "call_identifier", + "type": "string", + "required": false, + "description": "The identifier for the call object you wish to update. This can be the internal call ID or a unique value defined by the `idProperty`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a unique property for identifying the call object, other than the default ID. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/calls/{callId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateCallInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "call_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "externalId", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"duration\": 300, \"outcome\": \"successful\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCartProperties", + "qualifiedName": "HubspotCrmApi.UpdateCartProperties", + "fullyQualifiedName": "HubspotCrmApi.UpdateCartProperties@1.0.0", + "description": "Update specific properties of a cart in HubSpot CRM.\n\n This tool updates specified properties of a cart identified by `cartId` within HubSpot CRM. It's used to perform partial updates, where provided property values are overwritten, and any attempt to modify read-only or non-existent properties will result in an error. Properties can be cleared by passing an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "cart_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the cart to be updated. This is required to specify which cart's properties will be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_identifier_property", + "type": "string", + "required": false, + "description": "The name of the property with unique values for this cart object to identify it. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.carts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/carts/{cartId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateCartProperties", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "cart_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_identifier_property": { + "value": "externalCartId", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"property_name\":\"value\",\"another_property\":\"another_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCartsBatch", + "qualifiedName": "HubspotCrmApi.UpdateCartsBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateCartsBatch@1.0.0", + "description": "Update a batch of carts by internal ID or unique properties.\n\nUse this tool to update multiple carts in HubSpot CRM by their internal IDs or unique property values. Useful for synchronizing cart information in bulk.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.carts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/carts/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateCartsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"carts\":[{\"id\":\"cart_12345\",\"items\":[{\"product_id\":\"prod_1\",\"quantity\":2},{\"product_id\":\"prod_2\",\"quantity\":1}]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCommercePayment", + "qualifiedName": "HubspotCrmApi.UpdateCommercePayment", + "fullyQualifiedName": "HubspotCrmApi.UpdateCommercePayment@1.0.0", + "description": "Partially update a commerce payment by ID or unique property.\n\n Use this tool to perform a partial update of a commerce payment object identified by its internal ID or a unique property specified by `idProperty`. Ensure provided property values exist and are not read-only; this will overwrite them. To clear a value, pass an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "commerce_payment_id", + "type": "string", + "required": false, + "description": "The internal ID of the commerce payment to update. This ID identifies the specific payment object within the system. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a unique property for identifying the object. Use this if not using the default internal ID. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.commercepayments.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/commerce_payments/{commercePaymentId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateCommercePayment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "commerce_payment_id": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "invoice_number", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"amount\": \"100.00\", \"status\": \"completed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCommercePaymentsBatch", + "qualifiedName": "HubspotCrmApi.UpdateCommercePaymentsBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateCommercePaymentsBatch@1.0.0", + "description": "Update a batch of commerce payments by internal ID or unique values.\n\nUse this tool to update multiple commerce payments in HubSpot CRM by providing their internal IDs or unique property values, allowing for efficient bulk modifications.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.commercepayments.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/commerce_payments/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateCommercePaymentsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"payments\":[{\"id\":\"payment_1\",\"amount\":100,\"currency\":\"USD\"},{\"id\":\"payment_2\",\"amount\":200,\"currency\":\"USD\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCommunicationDetails", + "qualifiedName": "HubspotCrmApi.UpdateCommunicationDetails", + "fullyQualifiedName": "HubspotCrmApi.UpdateCommunicationDetails@1.0.0", + "description": "Update communication object details in HubSpot CRM.\n\n Perform a partial update of a HubSpot CRM communication object using its `communicationId` or a unique property value. This tool overwrites provided property values, with errors for read-only or non-existent properties.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "communication_id", + "type": "string", + "required": false, + "description": "The internal object ID of the communication. Used to identify which communication object to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The unique property name used to identify the communication object if not using `communicationId`. It must refer to a property with unique values for the object. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/communications/{communicationId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateCommunicationDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "communication_id": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "email", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"completed\",\"notes\":\"Follow up needed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateContactInformation", + "qualifiedName": "HubspotCrmApi.UpdateContactInformation", + "fullyQualifiedName": "HubspotCrmApi.UpdateContactInformation@1.0.0", + "description": "Update specific fields of a contact in HubSpot CRM.\n\n Use this tool to perform a partial update of a contact's information in HubSpot CRM. Identify the contact by `{contactId}` and specify fields to update. Properties not intended for update are ignored. Pass an empty string to clear values.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "contact_id", + "type": "string", + "required": false, + "description": "The unique ID or property value used to identify the contact for the update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the property name with unique values for identifying the contact, such as email or phone number. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/contacts/{contactId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateContactInformation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "contact_id": { + "value": "123456", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "email", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"properties\": {\"firstname\": \"John\", \"lastname\": \"Doe\", \"phone\": \"123-456-7890\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCoursesBatch", + "qualifiedName": "HubspotCrmApi.UpdateCoursesBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateCoursesBatch@1.0.0", + "description": "Update multiple courses in a batch by ID or unique properties.\n\nUse this tool to update a batch of courses in the CRM system by specifying their internal IDs or unique property values. This is useful for making bulk updates efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.courses.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-410/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateCoursesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"courses\":[{\"id\":\"course_1\",\"name\":\"Updated Course 1\",\"description\":\"An updated description for Course 1.\"},{\"id\":\"course_2\",\"name\":\"Updated Course 2\",\"description\":\"An updated description for Course 2.\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCrmObjectSchema", + "qualifiedName": "HubspotCrmApi.UpdateCrmObjectSchema", + "fullyQualifiedName": "HubspotCrmApi.UpdateCrmObjectSchema@1.0.0", + "description": "Update a CRM object's schema in HubSpot.\n\nThis tool updates the schema of a specified CRM object type in HubSpot. Call this tool when you need to modify the structure or attributes of an existing CRM object schema.", + "parameters": [ + { + "name": "object_type_identifier", + "type": "string", + "required": true, + "description": "Fully qualified name or object type ID of your CRM schema for updates.", + "enum": null, + "inferrable": true + }, + { + "name": "clear_description", + "type": "boolean", + "required": false, + "description": "Set to true to clear the description field for the object type schema.", + "enum": null, + "inferrable": true + }, + { + "name": "object_description", + "type": "string", + "required": false, + "description": "A description for the CRM object schema, providing details about its purpose or usage in HubSpot.", + "enum": null, + "inferrable": true + }, + { + "name": "object_singular_name", + "type": "string", + "required": false, + "description": "The word representing a single object. This cannot be changed later.", + "enum": null, + "inferrable": true + }, + { + "name": "plural_labels", + "type": "string", + "required": false, + "description": "Specify the word representing multiple instances of the object type. This value is permanent and cannot be changed after setting.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_display_property", + "type": "string", + "required": false, + "description": "The primary property's name for this object, displayed prominently on the HubSpot record page.", + "enum": null, + "inferrable": true + }, + { + "name": "required_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of property names that must be provided when creating an object of this type in HubSpot.", + "enum": null, + "inferrable": true + }, + { + "name": "restorable", + "type": "boolean", + "required": false, + "description": "Indicates if the object can be restored after deletion. Accepts a boolean value.", + "enum": null, + "inferrable": true + }, + { + "name": "searchable_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of property names to be indexed for HubSpot's product search, enhancing searchability of the CRM object type.", + "enum": null, + "inferrable": true + }, + { + "name": "secondary_display_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Names of secondary properties displayed on the HubSpot record page for this object type.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.schemas.custom.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm-object-schemas/v3/schemas/{objectType}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateCrmObjectSchema", + "parameters": { + "object_type_identifier": { + "value": "custom_object_v1", + "type": "string", + "required": true + }, + "clear_description": { + "value": false, + "type": "boolean", + "required": false + }, + "object_description": { + "value": "A custom object for tracking project details.", + "type": "string", + "required": false + }, + "object_singular_name": { + "value": "Project", + "type": "string", + "required": false + }, + "plural_labels": { + "value": "Projects", + "type": "string", + "required": false + }, + "primary_display_property": { + "value": "project_name", + "type": "string", + "required": false + }, + "required_properties": { + "value": ["project_id", "start_date", "end_date"], + "type": "array", + "required": false + }, + "restorable": { + "value": true, + "type": "boolean", + "required": false + }, + "searchable_properties": { + "value": ["project_name", "client_name"], + "type": "array", + "required": false + }, + "secondary_display_properties": { + "value": ["status", "budget"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateDiscountDetails", + "qualifiedName": "HubspotCrmApi.UpdateDiscountDetails", + "fullyQualifiedName": "HubspotCrmApi.UpdateDiscountDetails@1.0.0", + "description": "Update specific properties of a discount in HubSpot CRM.\n\n Use this tool to perform a partial update on a discount object in HubSpot CRM. Specify the discount using its internal ID or by a unique property using `idProperty`. Only overwrite existing properties. Errors occur with read-only or non-existent properties. Clear properties by passing an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "discount_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the discount object. This can be the internal ID or a unique property specified by `idProperty`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a unique property to identify the discount object. Use this instead of the internal discount ID if needed. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/discounts/{discountId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateDiscountDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "discount_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "discount_code", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"amount\": 20.0, \"description\": \"Spring Sale Discount\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateDiscountsBatch", + "qualifiedName": "HubspotCrmApi.UpdateDiscountsBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateDiscountsBatch@1.0.0", + "description": "Update multiple discounts by ID or unique properties.\n\nUse this tool to update a batch of discounts in HubSpot CRM by specifying internal IDs or unique property values. It is suitable for scenarios where multiple discount records need to be updated simultaneously.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/discounts/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateDiscountsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"discounts\":[{\"id\":\"123\",\"amount\":15.00,\"description\":\"Seasonal Discount\"},{\"id\":\"456\",\"amount\":10.00,\"description\":\"New Customer Discount\"}]}\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEmailInHubspotCrm", + "qualifiedName": "HubspotCrmApi.UpdateEmailInHubspotCrm", + "fullyQualifiedName": "HubspotCrmApi.UpdateEmailInHubspotCrm@1.0.0", + "description": "Updates an email object in HubSpot CRM with new property values.\n\n This tool updates properties of an email object in HubSpot CRM, identified by the internal ID or a unique property. Read-only or nonexistent properties will cause errors, and properties can be cleared by passing an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "email_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the email object, either the internal ID or a unique property value. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Name of a unique property for identifying the email object, used instead of default ID. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/emails/{emailId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateEmailInHubspotCrm", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "email_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "email_unique_prop", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"subject\":\"Updated Subject\",\"body\":\"This is the updated email body.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateFeeDetails", + "qualifiedName": "HubspotCrmApi.UpdateFeeDetails", + "fullyQualifiedName": "HubspotCrmApi.UpdateFeeDetails@1.0.0", + "description": "Update specific details of a fee in the CRM.\n\n This tool performs a partial update of a fee record identified by its internal ID or another unique property. Use it to overwrite existing property values or clear them by passing an empty string. Be aware that read-only or non-existent properties will cause an error.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "fee_identifier", + "type": "string", + "required": false, + "description": "The ID or unique property value that identifies the fee object to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the unique property name to identify the object instead of the default ID. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/fees/{feeId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateFeeDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "fee_identifier": { + "value": "fee_12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "invoice_number", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"amount\": 150.00, \"description\": \"Updated service fee\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateGoalTarget", + "qualifiedName": "HubspotCrmApi.UpdateGoalTarget", + "fullyQualifiedName": "HubspotCrmApi.UpdateGoalTarget@1.0.0", + "description": "Update properties of a HubSpot goal target.\n\n Use this tool to perform a partial update on a HubSpot goal target object using its ID or a unique property. This is useful for editing specific properties of a goal target. Ensure only modifiable properties are included, as read-only or non-existent properties will cause errors. Clear properties by passing an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "goal_target_id", + "type": "string", + "required": false, + "description": "The internal ID of the goal target to update. Use this to specify which goal target object to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a unique property for the goal target object used for identification or update. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.goals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/goal_targets/{goalTargetId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateGoalTarget", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "goal_target_id": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "monthly_revenue_target", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"targetValue\": 100000, \"currentValue\": 75000}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubspotCompany", + "qualifiedName": "HubspotCrmApi.UpdateHubspotCompany", + "fullyQualifiedName": "HubspotCrmApi.UpdateHubspotCompany@1.0.0", + "description": "Update a company's details in HubSpot CRM using its ID.\n\n Use this tool to update a company's information in HubSpot CRM by specifying the `companyId` or a unique property. Only existing and writable properties can be updated. Properties can be cleared by passing an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "company_unique_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the company to be updated, either the companyId or a unique property value. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the name of the unique property used to identify the company. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.companies.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/companies/{companyId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateHubspotCompany", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "company_unique_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "domain", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Company Name\",\"address\":\"123 New St\",\"city\":\"New City\",\"state\":\"NC\",\"zip\":\"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubspotCourse", + "qualifiedName": "HubspotCrmApi.UpdateHubspotCourse", + "fullyQualifiedName": "HubspotCrmApi.UpdateHubspotCourse@1.0.0", + "description": "Update specific properties of a HubSpot course object.\n\n Use this tool to perform a partial update on a course object in HubSpot CRM. Update is identified by either the `{courseId}` or a unique property via `idProperty`. Only properties provided will be changed, while read-only or non-existent properties will cause an error. Properties can be cleared by providing an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "course_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the HubSpot course. It can be the internal course ID or a unique property value specified by `idProperty`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The property name with unique values for identifying the object to update. Use it if not using `courseId`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.courses.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/0-410/{courseId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateHubspotCourse", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "course_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "course_code", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Course Title\",\"description\":\"Updated course description.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubspotDeal", + "qualifiedName": "HubspotCrmApi.UpdateHubspotDeal", + "fullyQualifiedName": "HubspotCrmApi.UpdateHubspotDeal@1.0.0", + "description": "Update a specific deal in HubSpot CRM.\n\n Use this tool to perform a partial update on a deal in HubSpot CRM by specifying the deal's internal ID or a unique property value. Only existing properties can be updated, and read-only properties will not be accepted.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "deal_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the deal to be updated in HubSpot CRM. Can be internal ID or unique property value. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a unique property to identify the deal instead of `dealId`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.deals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/0-3/{dealId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateHubspotDeal", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "deal_identifier": { + "value": "123456", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "custom_deal_id", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"properties\":{\"amount\":1500,\"stage\":\"closed-won\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubspotMeeting", + "qualifiedName": "HubspotCrmApi.UpdateHubspotMeeting", + "fullyQualifiedName": "HubspotCrmApi.UpdateHubspotMeeting@1.0.0", + "description": "Update specific properties of a HubSpot meeting.\n\n Use this tool to perform a partial update on a HubSpot CRM meeting object. Identify the meeting using `{meetingId}` or a unique property with `idProperty`. Overwrite specified property values, but note that read-only or non-existent properties will cause an error. Properties can be cleared by sending an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "meeting_id", + "type": "string", + "required": false, + "description": "The internal ID of the meeting or a property name with unique values for identification. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of the unique property for identifying the meeting. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/meetings/{meetingId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateHubspotMeeting", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "meeting_id": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "meetingTitle", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Meeting Title\",\"date\":\"2023-11-01T10:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubspotNote", + "qualifiedName": "HubspotCrmApi.UpdateHubspotNote", + "fullyQualifiedName": "HubspotCrmApi.UpdateHubspotNote@1.0.0", + "description": "Update a HubSpot note with new property values.\n\n Use this tool to update specific properties of a HubSpot CRM note. Identify the note by its ID or a unique property value and provide new values for properties you wish to change. Read-only and non-existent properties cannot be updated. Clear properties by passing an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "note_identifier", + "type": "string", + "required": false, + "description": "The ID or unique property value of the note to update. Use `noteId` for internal ID or specify a unique property via `idProperty`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a property with unique values for this object, used to identify the note. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/notes/{noteId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateHubspotNote", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "note_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "title", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"content\":\"Updated note content\",\"properties\":{\"priority\":\"high\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubspotObject", + "qualifiedName": "HubspotCrmApi.UpdateHubspotObject", + "fullyQualifiedName": "HubspotCrmApi.UpdateHubspotObject@1.0.0", + "description": "Update specific properties of a HubSpot CRM object.\n\n This tool performs a partial update of an object in HubSpot CRM, identified by the internal object ID or a unique property value. It overwrites provided property values, errors out on read-only or non-existent properties, and allows clearing values by passing an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": false, + "description": "The type of CRM object to update (e.g., contacts, companies). Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "object_identifier", + "type": "string", + "required": false, + "description": "A string representing the internal object ID or unique property value used to identify the HubSpot CRM object for updating. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a property whose values are unique for the object, used to identify the object for the update. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/objects/v3/{objectType}/{objectId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateHubspotObject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "object_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "email", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"properties\":{\"firstname\":\"John\",\"lastname\":\"Doe\",\"phone\":\"123-456-7890\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubspotObjectsBatch", + "qualifiedName": "HubspotCrmApi.UpdateHubspotObjectsBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateHubspotObjectsBatch@1.0.0", + "description": "Update multiple HubSpot CRM objects in a batch.\n\n Use this tool to update a batch of objects in HubSpot CRM using internal IDs or unique property values. Useful for synchronizing or modifying multiple CRM records at once.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": false, + "description": "The type of HubSpot CRM object to update, such as 'contacts', 'companies', 'deals', or 'tickets'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/{objectType}/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateHubspotObjectsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"update\": [{\"id\": \"12345\", \"properties\": {\"firstname\": \"John\", \"lastname\": \"Doe\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubspotOrdersBatch", + "qualifiedName": "HubspotCrmApi.UpdateHubspotOrdersBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateHubspotOrdersBatch@1.0.0", + "description": "Update multiple HubSpot CRM orders in a batch.\n\nUse this tool to update a batch of orders in HubSpot CRM by their internal ID or unique property values. Useful for modifying multiple order records at once.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.orders.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/orders/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateHubspotOrdersBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"orders\":[{\"id\":\"123\",\"status\":\"shipped\"},{\"id\":\"456\",\"status\":\"pending\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubspotProductsBatch", + "qualifiedName": "HubspotCrmApi.UpdateHubspotProductsBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateHubspotProductsBatch@1.0.0", + "description": "Update a batch of HubSpot products by ID or unique properties.\n\nUse this tool to update multiple products in HubSpot CRM with new details by internal IDs or unique property values.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.products.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/products/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateHubspotProductsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"products\":[{\"id\":\"123\",\"name\":\"Updated Product 1\",\"price\":29.99},{\"id\":\"456\",\"name\":\"Updated Product 2\",\"price\":39.99}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubspotTask", + "qualifiedName": "HubspotCrmApi.UpdateHubspotTask", + "fullyQualifiedName": "HubspotCrmApi.UpdateHubspotTask@1.0.0", + "description": "Update properties of a HubSpot task using its ID.\n\n This tool allows partial updates to a task in HubSpot CRM by specifying a `{taskId}` or a unique property defined by `idProperty`. It overwrites specified properties, with read-only and non-existent properties triggering errors. To clear a property, pass an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": false, + "description": "The internal ID or unique property name of the task to update. Defaults to internal ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the name of the property with unique values. Used for identifying the object instead of `taskId`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/tasks/{taskId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateHubspotTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "task_title", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"completed\",\"priority\":\"high\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubspotUser", + "qualifiedName": "HubspotCrmApi.UpdateHubspotUser", + "fullyQualifiedName": "HubspotCrmApi.UpdateHubspotUser@1.0.0", + "description": "Update user details in HubSpot CRM.\n\n This tool updates specific user information in HubSpot CRM for a given user ID or a unique property value if specified. Use this tool when you need to modify or clear user property values, bearing in mind read-only and non-existent properties will cause errors.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": false, + "description": "The internal user ID or unique property value to identify the user for updating. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specifies the name of a property with unique values for identifying the user object. Use this if not using userId. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/users/{userId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateHubspotUser", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_id": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "email", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"firstName\":\"John\",\"lastName\":\"Doe\",\"email\":\"john.doe@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateInvoiceDetails", + "qualifiedName": "HubspotCrmApi.UpdateInvoiceDetails", + "fullyQualifiedName": "HubspotCrmApi.UpdateInvoiceDetails@1.0.0", + "description": "Update invoice details in HubSpot CRM.\n\n Use this tool to perform a partial update of an invoice in HubSpot CRM. The invoice can be identified by its internal ID or a unique property. Only existing properties with provided values will be updated, and any read-only or non-existent properties will cause an error.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "invoice_identifier", + "type": "string", + "required": false, + "description": "Unique identifier for the invoice, either the internal ID or specified unique property value, to update in HubSpot CRM. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Name of the unique property for identifying the invoice object. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.invoices.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/invoices/{invoiceId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateInvoiceDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "invoice_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "invoice_number", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"amount\": 1500, \"status\": \"paid\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateInvoicesBatch", + "qualifiedName": "HubspotCrmApi.UpdateInvoicesBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateInvoicesBatch@1.0.0", + "description": "Updates multiple invoices in the HubSpot CRM.\n\nThis tool updates a batch of invoices in HubSpot CRM using either internal IDs or unique property values. It should be called when you need to modify multiple invoice records simultaneously.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.invoices.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/invoices/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateInvoicesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"invoices\":[{\"id\":\"12345\",\"amount\":2500.00,\"status\":\"paid\"},{\"id\":\"67890\",\"amount\":1500.00,\"status\":\"pending\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateLeadDetails", + "qualifiedName": "HubspotCrmApi.UpdateLeadDetails", + "fullyQualifiedName": "HubspotCrmApi.UpdateLeadDetails@1.0.0", + "description": "Update details of a specific lead in HubSpot CRM.\n\n Use this tool to perform a partial update to the details of a specific lead in the HubSpot CRM. You can specify the lead using their internal object ID or a unique property value. Only provided properties will be updated. This tool should be called when you need to update certain fields of a lead without altering others. Ensure that read-only and non-existent properties are not included, as these will result in an error.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "lead_identifier", + "type": "string", + "required": false, + "description": "The internal object ID or unique property value used to identify the lead in HubSpot CRM. Required for updating the lead details. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the name of a unique property to identify the lead, instead of using the internal ID. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.leads.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/leads/{leadsId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateLeadDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "lead_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "email", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"firstname\":\"John\",\"lastname\":\"Doe\",\"company\":\"Example Inc.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateLeadsBatch", + "qualifiedName": "HubspotCrmApi.UpdateLeadsBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateLeadsBatch@1.0.0", + "description": "Update multiple leads in a batch by ID or unique properties.\n\nUse this tool to update a set of leads in HubSpot CRM using their internal IDs or unique property values. This is useful for making bulk changes efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.leads.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/leads/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateLeadsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"leads\":[{\"id\":\"12345\",\"properties\":{\"email\":\"example1@example.com\",\"status\":\"active\"}},{\"id\":\"67890\",\"properties\":{\"email\":\"example2@example.com\",\"status\":\"inactive\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateLineItem", + "qualifiedName": "HubspotCrmApi.UpdateLineItem", + "fullyQualifiedName": "HubspotCrmApi.UpdateLineItem@1.0.0", + "description": "Update properties of a CRM line item using its ID.\n\n Use this tool to perform a partial update of a CRM line item identified by its internal ID or a unique property value. Only provided properties will be updated, and passing an empty string can clear property values. Make sure not to include read-only or non-existent properties as they will result in errors.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "line_item_id", + "type": "string", + "required": false, + "description": "The internal ID of the line item to update. This ID identifies the object to be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify a property with unique values to identify the line item instead of using the internal ID. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/line_items/{lineItemId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateLineItem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "line_item_id": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Line Item Name\", \"quantity\": 10}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateLineItemsBatch", + "qualifiedName": "HubspotCrmApi.UpdateLineItemsBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateLineItemsBatch@1.0.0", + "description": "Update multiple line items in CRM using internal IDs or unique properties.\n\nThis tool updates a batch of line items in HubSpot CRM. It's useful when needing to modify multiple line items at once using their internal IDs or unique property values.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/line_items/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateLineItemsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"line_items\": [{\"id\": \"12345\", \"properties\": {\"quantity\": 10, \"price\": 20.99}}, {\"id\": \"67890\", \"properties\": {\"quantity\": 5, \"price\": 15.49}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateListMemberships", + "qualifiedName": "HubspotCrmApi.UpdateListMemberships", + "fullyQualifiedName": "HubspotCrmApi.UpdateListMemberships@1.0.0", + "description": "Add or remove records from a manual or snapshot list.\n\nThis tool is used to add and/or remove records from a manual or snapshot list in the HubSpot CRM. It facilitates managing list memberships by updating existing records according to specified changes.", + "parameters": [ + { + "name": "list_identifier", + "type": "string", + "required": true, + "description": "The unique ILS ID of the MANUAL or SNAPSHOT list to update.", + "enum": null, + "inferrable": true + }, + { + "name": "record_ids_to_add", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of record IDs to be added to the specified list. Ensure these records are already created in the system.", + "enum": null, + "inferrable": true + }, + { + "name": "record_ids_to_remove", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of record IDs to remove from the list. Each ID should be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/v3/lists/{listId}/memberships/add-and-remove_addAndRemove'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateListMemberships", + "parameters": { + "list_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "record_ids_to_add": { + "value": ["record_001", "record_002"], + "type": "array", + "required": true + }, + "record_ids_to_remove": { + "value": ["record_003", "record_004"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateListName", + "qualifiedName": "HubspotCrmApi.UpdateListName", + "fullyQualifiedName": "HubspotCrmApi.UpdateListName@1.0.0", + "description": "Update the name of a CRM list in HubSpot.\n\nCall this tool to update the name of a CRM list in HubSpot, ensuring the new name is globally unique.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique ILS ID of the list to update.", + "enum": null, + "inferrable": true + }, + { + "name": "include_filter_branch_definition", + "type": "boolean", + "required": false, + "description": "Set to true to include filter branch definitions in the response list definition, or false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "new_list_name", + "type": "string", + "required": false, + "description": "The new name for the CRM list. It must be globally unique relative to other public lists.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.lists.write", + "cms.membership.access_groups.write", + "crm.lists.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/crm/v3/lists/{listId}/update-list-name_updateName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateListName", + "parameters": { + "list_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "include_filter_branch_definition": { + "value": true, + "type": "boolean", + "required": false + }, + "new_list_name": { + "value": "Unique CRM List Name 2023", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMeetingsBatch", + "qualifiedName": "HubspotCrmApi.UpdateMeetingsBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateMeetingsBatch@1.0.0", + "description": "Update a batch of meetings in HubSpot CRM.\n\nThis tool updates multiple meetings in HubSpot CRM using internal IDs or unique property values. It should be called when you need to modify details for several meetings at once.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/meetings/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateMeetingsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"meetings\":[{\"id\":\"123\",\"subject\":\"Project Sync\",\"startTime\":\"2023-10-15T10:00:00Z\",\"endTime\":\"2023-10-15T11:00:00Z\",\"attendees\":[{\"email\":\"attendee1@example.com\"},{\"email\":\"attendee2@example.com\"}]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMessagesBatch", + "qualifiedName": "HubspotCrmApi.UpdateMessagesBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateMessagesBatch@1.0.0", + "description": "Update a batch of messages in HubSpot CRM.\n\nUse this tool to update multiple messages at once in HubSpot CRM by specifying either the communication ID or a unique property value. Only provided property values will be updated, and non-existent properties or read-only fields will cause errors. Include empty strings to clear properties.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/communications/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateMessagesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"messages\":[{\"communicationId\":\"12345\",\"property\":\"status\",\"value\":\"resolved\"},{\"communicationId\":\"67890\",\"property\":\"content\",\"value\":\"\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMultipleCrmListings", + "qualifiedName": "HubspotCrmApi.UpdateMultipleCrmListings", + "fullyQualifiedName": "HubspotCrmApi.UpdateMultipleCrmListings@1.0.0", + "description": "Update multiple CRM listings using internal IDs or unique properties.\n\nThis tool updates multiple listings in the CRM using their internal IDs or unique property values. It should be called when there is a need to modify several records in bulk within the CRM system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.listings.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-420/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateMultipleCrmListings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"listings\":[{\"id\":\"123\",\"properties\":{\"status\":\"active\",\"name\":\"Updated Listing 1\"}},{\"id\":\"456\",\"properties\":{\"status\":\"inactive\",\"name\":\"Updated Listing 2\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMultipleDeals", + "qualifiedName": "HubspotCrmApi.UpdateMultipleDeals", + "fullyQualifiedName": "HubspotCrmApi.UpdateMultipleDeals@1.0.0", + "description": "Update multiple deals in the CRM system.\n\nThis tool updates multiple deals using their internal IDs or unique property values in the CRM. It should be called when you need to modify several deals at once within the HubSpot CRM.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.deals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-3/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateMultipleDeals", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"deals\":[{\"id\":\"1234\",\"properties\":{\"amount\":5000,\"stage\":\"closedwon\"}},{\"id\":\"5678\",\"properties\":{\"amount\":7500,\"stage\":\"closedlost\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMultipleHubspotAppointments", + "qualifiedName": "HubspotCrmApi.UpdateMultipleHubspotAppointments", + "fullyQualifiedName": "HubspotCrmApi.UpdateMultipleHubspotAppointments@1.0.0", + "description": "Update multiple appointments in HubSpot CRM.\n\n Use this tool to update multiple appointments by their internal IDs or unique property values within HubSpot CRM.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "hubspot_object_type", + "type": "string", + "required": false, + "description": "Specify the type of HubSpot CRM object to update, e.g., 'appointments'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/objects/v3/{objectType}/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateMultipleHubspotAppointments", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "hubspot_object_type": { + "value": "appointments", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"appointments\":[{\"id\":\"12345\",\"properties\":{\"title\":\"Updated Meeting\",\"date\":\"2023-10-01T10:00:00Z\"}},{\"id\":\"67890\",\"properties\":{\"title\":\"Follow-up Call\",\"date\":\"2023-10-02T15:00:00Z\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMultiplePostalMails", + "qualifiedName": "HubspotCrmApi.UpdateMultiplePostalMails", + "fullyQualifiedName": "HubspotCrmApi.UpdateMultiplePostalMails@1.0.0", + "description": "Update multiple postal mail records at once in HubSpot CRM.\n\nUse this tool to update several postal mail objects within HubSpot CRM in a single request, streamlining batch modifications.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/postal_mail/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateMultiplePostalMails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"postalMails\":[{\"id\":\"123\",\"status\":\"sent\",\"recipient\":\"john.doe@example.com\",\"dateSent\":\"2023-10-01\",\"message\":\"Hello John!\"},{\"id\":\"456\",\"status\":\"pending\",\"recipient\":\"jane.doe@example.com\",\"dateSent\":\"2023-10-02\",\"message\":\"Hi Jane!\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMultipleUsers", + "qualifiedName": "HubspotCrmApi.UpdateMultipleUsers", + "fullyQualifiedName": "HubspotCrmApi.UpdateMultipleUsers@1.0.0", + "description": "Update multiple users in HubSpot CRM by internal ID or unique properties.\n\nThis tool updates a batch of users in HubSpot CRM using either their internal IDs or unique property values. Use this tool to efficiently update information for multiple users at once.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/users/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateMultipleUsers", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"users\": [{\"id\": \"1\", \"email\": \"user1@example.com\", \"properties\": {\"firstName\": \"John\", \"lastName\": \"Doe\"}}, {\"id\": \"2\", \"email\": \"user2@example.com\", \"properties\": {\"firstName\": \"Jane\", \"lastName\": \"Smith\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateOrCreateHubspotRecords", + "qualifiedName": "HubspotCrmApi.UpdateOrCreateHubspotRecords", + "fullyQualifiedName": "HubspotCrmApi.UpdateOrCreateHubspotRecords@1.0.0", + "description": "Create or update HubSpot CRM records in bulk.\n\n This tool is used to batch upsert records in HubSpot CRM based on a unique identifier. It's ideal for managing large datasets where records may need to be created or updated if they already exist.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "crm_object_type", + "type": "string", + "required": false, + "description": "Specifies the type of CRM object to act upon, such as 'contacts', 'companies', etc. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/{objectType}/batch/upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateOrCreateHubspotRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "crm_object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"records\":[{\"id\":\"1\",\"properties\":{\"firstname\":\"John\",\"lastname\":\"Doe\",\"email\":\"john.doe@example.com\"}}, {\"id\":\"2\",\"properties\":{\"firstname\":\"Jane\",\"lastname\":\"Smith\",\"email\":\"jane.smith@example.com\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateOrderDetails", + "qualifiedName": "HubspotCrmApi.UpdateOrderDetails", + "fullyQualifiedName": "HubspotCrmApi.UpdateOrderDetails@1.0.0", + "description": "Update specific details of an order using its ID.\n\n This tool performs a partial update of an order in HubSpot CRM, identified by the order's internal ID or a unique property value. Use it to modify existing order properties; read-only or non-existent properties cannot be updated and will cause errors. Properties can be cleared by providing empty values.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "order_id", + "type": "string", + "required": false, + "description": "The internal ID of the order to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the name of a unique property to identify the order object instead of using the order ID. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.orders.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/orders/{orderId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateOrderDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "order_id": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "order_number", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"shipped\",\"tracking_number\":\"ABC123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePartnerClient", + "qualifiedName": "HubspotCrmApi.UpdatePartnerClient", + "fullyQualifiedName": "HubspotCrmApi.UpdatePartnerClient@1.0.0", + "description": "Update details of a partner client in HubSpot CRM.\n\n This tool is used to modify the information of a specified partner client in HubSpot CRM. It should be called when there is a need to update or change details related to a partner client using their unique ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "partner_client_id", + "type": "string", + "required": false, + "description": "The unique identifier for the partner client to be updated in HubSpot CRM. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "identifier_property", + "type": "string", + "required": false, + "description": "Specify the property name used to identify the partner client for update operations. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-clients.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/partner_clients/{partnerClientId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdatePartnerClient", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "partner_client_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + }, + "identifier_property": { + "value": "email", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Partner Name\",\"status\":\"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePartnerClientsBatch", + "qualifiedName": "HubspotCrmApi.UpdatePartnerClientsBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdatePartnerClientsBatch@1.0.0", + "description": "Update multiple partner clients in a batch.\n\nUse this tool to update information for multiple partner clients simultaneously in HubSpot CRM. It should be called when you need to make bulk updates to partner client records.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-clients.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/partner_clients/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdatePartnerClientsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"client_updates\":[{\"client_id\":\"12345\",\"name\":\"Client A\",\"status\":\"active\"},{\"client_id\":\"67890\",\"name\":\"Client B\",\"status\":\"inactive\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePartnerService", + "qualifiedName": "HubspotCrmApi.UpdatePartnerService", + "fullyQualifiedName": "HubspotCrmApi.UpdatePartnerService@1.0.0", + "description": "Partially update a partner service object in HubSpot CRM.\n\n Use this tool to update specific properties of a partner service object identified by `partnerServiceId` in HubSpot CRM. You can also use a unique property value specified by `idProperty`. Only existing, non-read-only properties can be updated. To clear a property, pass an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "partner_service_id", + "type": "string", + "required": false, + "description": "The internal object ID of the partner service to update. Use this to specify the object you want to partially update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "Specify the name of a unique property for the partner service object to identify it. This is used instead of the default internal ID. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-services.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/partner_services/{partnerServiceId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdatePartnerService", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "partner_service_id": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "serviceName", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Service Name\",\"status\":\"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePartnerServicesBatch", + "qualifiedName": "HubspotCrmApi.UpdatePartnerServicesBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdatePartnerServicesBatch@1.0.0", + "description": "Update multiple partner services in CRM by ID or unique properties.\n\nUse this tool to update a batch of partner services in the HubSpot CRM using internal IDs or unique property values.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.partner-services.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/partner_services/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdatePartnerServicesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"services\":[{\"id\":\"12345\",\"name\":\"Service One\",\"status\":\"active\"},{\"id\":\"67890\",\"name\":\"Service Two\",\"status\":\"inactive\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePipelineInCrm", + "qualifiedName": "HubspotCrmApi.UpdatePipelineInCrm", + "fullyQualifiedName": "HubspotCrmApi.UpdatePipelineInCrm@1.0.0", + "description": "Partially update a pipeline in the CRM.\n\nUse this tool to perform a partial update of a pipeline identified by its pipeline ID within a specified object type in the CRM. The tool will return the updated pipeline details.", + "parameters": [ + { + "name": "crm_object_type", + "type": "string", + "required": true, + "description": "Specify the type of CRM object (e.g., deals, tickets) to update the pipeline for.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the pipeline to be updated. This is required to specify which pipeline to modify.", + "enum": null, + "inferrable": true + }, + { + "name": "is_pipeline_archived", + "type": "boolean", + "required": false, + "description": "Set to true if the pipeline is currently archived and you intend to restore it. Use only for restoration calls.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_display_order", + "type": "integer", + "required": false, + "description": "The display order number to determine the position of the pipeline in the CRM. Pipelines with the same display order are sorted alphabetically by label.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_label", + "type": "string", + "required": false, + "description": "A unique label to organize and identify the pipeline within HubSpot's UI.", + "enum": null, + "inferrable": true + }, + { + "name": "validate_deal_stage_usages_before_delete", + "type": "boolean", + "required": false, + "description": "Indicate if deal stage usages should be validated before deletion. A boolean value is expected.", + "enum": null, + "inferrable": true + }, + { + "name": "validate_references_before_deletion", + "type": "boolean", + "required": false, + "description": "Set to true to validate references before deletion.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/pipelines/{objectType}/{pipelineId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdatePipelineInCrm", + "parameters": { + "crm_object_type": { + "value": "deals", + "type": "string", + "required": true + }, + "pipeline_identifier": { + "value": "pipeline_12345", + "type": "string", + "required": true + }, + "is_pipeline_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "pipeline_display_order": { + "value": 1, + "type": "integer", + "required": false + }, + "pipeline_label": { + "value": "Sales Pipeline", + "type": "string", + "required": false + }, + "validate_deal_stage_usages_before_delete": { + "value": true, + "type": "boolean", + "required": false + }, + "validate_references_before_deletion": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePipelineStage", + "qualifiedName": "HubspotCrmApi.UpdatePipelineStage", + "fullyQualifiedName": "HubspotCrmApi.UpdatePipelineStage@1.0.0", + "description": "Update a stage in a CRM pipeline.\n\n Use this tool to update the details of a specific stage within a CRM pipeline. It is useful when you need to modify the attributes of a pipeline stage, such as its name or order, to reflect changes in the sales or business process.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "pipeline_object_type", + "type": "string", + "required": false, + "description": "The type of CRM object in the pipeline, such as 'deals' or 'tickets'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "pipeline_id", + "type": "string", + "required": false, + "description": "A unique identifier for the pipeline to be updated. This is necessary to specify which pipeline contains the stage you want to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "stage_id", + "type": "string", + "required": false, + "description": "The unique identifier of the stage to be updated within the pipeline. This is required to specify which stage's details need modification. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/pipelines/{objectType}/{pipelineId}/stages/{stageId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdatePipelineStage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "pipeline_object_type": { + "value": "deals", + "type": "string", + "required": false + }, + "pipeline_id": { + "value": "12345", + "type": "string", + "required": false + }, + "stage_id": { + "value": "67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Stage Name\", \"order\":2, \"description\":\"Updated stage description\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePostalMailRecord", + "qualifiedName": "HubspotCrmApi.UpdatePostalMailRecord", + "fullyQualifiedName": "HubspotCrmApi.UpdatePostalMailRecord@1.0.0", + "description": "Update a postal mail record in HubSpot CRM.\n\n Use this tool to update an existing postal mail record in HubSpot CRM by specifying the postalMailId of the record to be updated.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "postal_mail_id", + "type": "string", + "required": false, + "description": "A unique identifier for the postal mail record to be updated in HubSpot CRM. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "property_identifier", + "type": "string", + "required": false, + "description": "Specify the property key of the postal mail record to identify which field to update. This is typically the name of the field in the CRM record. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/postal_mail/{postalMailId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdatePostalMailRecord", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "postal_mail_id": { + "value": "12345-abcde", + "type": "string", + "required": false + }, + "property_identifier": { + "value": "status", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"sent\",\"tracking_number\":\"987654321\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateProductInfo", + "qualifiedName": "HubspotCrmApi.UpdateProductInfo", + "fullyQualifiedName": "HubspotCrmApi.UpdateProductInfo@1.0.0", + "description": "Partially update product information in HubSpot CRM.\n\n This tool updates specific properties of a product identified by `productId` in HubSpot CRM. It will override existing property values, and returning errors for read-only or non-existent properties. Use when you need to modify product attributes such as name, price, or description.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "product_id", + "type": "string", + "required": false, + "description": "The internal object ID of the product to be updated. This identifies the specific product in HubSpot CRM for the update operation. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The unique property name used to identify the product. It should be a string representing a property with unique values. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.products.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/products/{productId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateProductInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "product_id": { + "value": "123456", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "sku", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Product Name\",\"price\":19.99,\"description\":\"Updated product description.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePropertyGroup", + "qualifiedName": "HubspotCrmApi.UpdatePropertyGroup", + "fullyQualifiedName": "HubspotCrmApi.UpdatePropertyGroup@1.0.0", + "description": "Update fields in a specified property group.\n\nThis tool performs a partial update on a property group identified by {groupName} in HubSpot CRM. It overwrites the provided fields in the property group. Useful for modifying specific attributes within a property group without altering the entire group.", + "parameters": [ + { + "name": "object_type", + "type": "string", + "required": true, + "description": "Specifies the type of object in HubSpot CRM (e.g., contacts, companies).", + "enum": null, + "inferrable": true + }, + { + "name": "property_group_name", + "type": "string", + "required": true, + "description": "The unique name of the property group to be updated in HubSpot CRM.", + "enum": null, + "inferrable": true + }, + { + "name": "property_group_display_order", + "type": "integer", + "required": false, + "description": "Set the display order of the property group. Use positive integers for ordering, or -1 to display after positive values.", + "enum": null, + "inferrable": true + }, + { + "name": "property_group_label", + "type": "string", + "required": false, + "description": "A human-readable label for the property group in HubSpot.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/properties/{objectType}/groups/{groupName}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdatePropertyGroup", + "parameters": { + "object_type": { + "value": "contacts", + "type": "string", + "required": true + }, + "property_group_name": { + "value": "customer_information", + "type": "string", + "required": true + }, + "property_group_display_order": { + "value": 2, + "type": "integer", + "required": false + }, + "property_group_label": { + "value": "Customer Info", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePropertyValue", + "qualifiedName": "HubspotCrmApi.UpdatePropertyValue", + "fullyQualifiedName": "HubspotCrmApi.UpdatePropertyValue@1.0.0", + "description": "Update specific fields of a CRM property partially.\n\n Use this tool to partially update specific fields of a CRM property identified by its name. Only the specified fields will be overwritten.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "crm_object_type", + "type": "string", + "required": false, + "description": "Specify the type of CRM object (e.g., 'contacts', 'deals') to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "property_identifier", + "type": "string", + "required": false, + "description": "The unique name of the CRM property to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.schemas.carts.write", + "crm.schemas.invoices.write", + "tickets.sensitive.v2", + "crm.schemas.contacts.write", + "crm.schemas.services.write", + "e-commerce", + "crm.objects.orders.write", + "crm.schemas.deals.write", + "tickets.highly_sensitive.v2", + "tickets", + "crm.objects.carts.write", + "crm.schemas.courses.write", + "crm.schemas.custom.write", + "crm.schemas.commercepayments.write", + "crm.objects.users.write", + "crm.schemas.companies.write", + "crm.schemas.orders.write", + "crm.schemas.appointments.write", + "crm.pipelines.orders.write", + "crm.schemas.subscriptions.write", + "crm.schemas.listings.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/properties/{objectType}/{propertyName}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdatePropertyValue", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "crm_object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "property_identifier": { + "value": "email", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"value\":\"updated_email@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateQuoteBatch", + "qualifiedName": "HubspotCrmApi.UpdateQuoteBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateQuoteBatch@1.0.0", + "description": "Update a batch of quotes using internal ID or property values.\n\nUse this tool to update multiple quotes at once in the CRM. It should be called when you need to modify details of several quotes by their internal IDs or unique property values.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.quotes.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/quotes/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateQuoteBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"quotes\": [{\"id\": \"12345\", \"status\": \"approved\", \"amount\": 500.0}, {\"id\": \"67890\", \"status\": \"pending\", \"amount\": 250.0}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateQuoteInformation", + "qualifiedName": "HubspotCrmApi.UpdateQuoteInformation", + "fullyQualifiedName": "HubspotCrmApi.UpdateQuoteInformation@1.0.0", + "description": "Update a quote's details in HubSpot CRM.\n\n Use this tool to perform a partial update of a quote in HubSpot CRM identified by `quoteId` or a unique property value. It allows overwriting specific property values, but read-only or invalid properties will cause an error. Properties can be cleared by passing an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "quote_identifier", + "type": "string", + "required": false, + "description": "The identifier of the quote to be updated. This can be the internal ID or a unique property value specified by `idProperty`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a property with unique values for identifying the quote object. Used instead of `quoteId`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.quotes.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/quotes/{quoteId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateQuoteInformation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "quote_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "quoteNumber", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"amount\": 2500, \"status\": \"approved\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateServicesBatch", + "qualifiedName": "HubspotCrmApi.UpdateServicesBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateServicesBatch@1.0.0", + "description": "Update multiple service records in HubSpot CRM.\n\nUse this tool to update a batch of service records in the HubSpot CRM by their internal IDs or unique property values. Suitable for synchronizing or modifying multiple records efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.services.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/0-162/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateServicesBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"services\":[{\"id\":\"1\",\"name\":\"Service A\",\"description\":\"Updated description for Service A\"},{\"id\":\"2\",\"name\":\"Service B\",\"description\":\"Updated description for Service B\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSubscription", + "qualifiedName": "HubspotCrmApi.UpdateSubscription", + "fullyQualifiedName": "HubspotCrmApi.UpdateSubscription@1.0.0", + "description": "Update subscription details using provided property values.\n\n Use this tool to perform a partial update of a subscription object in HubSpot CRM. Identify the object by its internal ID or a unique property value using the `idProperty` query parameter. Overwrite properties by providing new values; clear them by passing an empty string. Errors occur for read-only or non-existent properties.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "subscription_id", + "type": "string", + "required": false, + "description": "The identifier for the subscription to update, typically the internal object ID. Specify this to target the right subscription. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a unique property to identify the subscription object for updating. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/subscriptions/{subscriptionId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateSubscription", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "subscription_id": { + "value": "sub_123456", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "email", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"property_name\":\"new_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSubscriptionBatch", + "qualifiedName": "HubspotCrmApi.UpdateSubscriptionBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateSubscriptionBatch@1.0.0", + "description": "Update multiple subscriptions by ID or property values.\n\nThis tool updates a batch of subscriptions using their internal IDs or unique property values in HubSpot CRM. Use it when you need to modify details for multiple subscriptions simultaneously.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/subscriptions/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateSubscriptionBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"subscriptions\":[{\"id\":\"12345\",\"property_values\":{\"status\":\"active\",\"renewal_date\":\"2023-12-31\"}},{\"id\":\"67890\",\"property_values\":{\"status\":\"inactive\",\"renewal_date\":\"2024-06-30\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTaxObject", + "qualifiedName": "HubspotCrmApi.UpdateTaxObject", + "fullyQualifiedName": "HubspotCrmApi.UpdateTaxObject@1.0.0", + "description": "Update properties of a tax object in HubSpot CRM.\n\n This tool updates specified properties of a tax object in HubSpot CRM using its ID or a unique property value. It's used to perform partial updates where only certain fields need modification. Fields to be updated are specified in the request, and read-only or non-existent fields will cause errors. To clear a property, pass an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "tax_object_identifier", + "type": "string", + "required": false, + "description": "The identifier for the tax object. Use the internal `taxId` by default or provide a unique property value specified by the `idProperty`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a property uniquely identifying this tax object. Used instead of `taxId` if specified. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/taxes/{taxId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateTaxObject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "tax_object_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "custom_unique_id", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"property1\": \"value1\", \"property2\": \"value2\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTicketBatch", + "qualifiedName": "HubspotCrmApi.UpdateTicketBatch", + "fullyQualifiedName": "HubspotCrmApi.UpdateTicketBatch@1.0.0", + "description": "Update multiple tickets in HubSpot CRM by ID or property.\n\nThis tool updates a batch of tickets in the HubSpot CRM using their IDs or a unique property value. Use it when you need to modify several tickets at once. Properties that are read-only or non-existent will cause an error, and providing an empty string will clear a property value.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tickets"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tickets/batch/update_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateTicketBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"tickets\":[{\"id\":\"123\",\"properties\":{\"status\":\"closed\",\"priority\":\"high\"}},{\"id\":\"456\",\"properties\":{\"status\":\"open\",\"priority\":\"medium\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTicketInfo", + "qualifiedName": "HubspotCrmApi.UpdateTicketInfo", + "fullyQualifiedName": "HubspotCrmApi.UpdateTicketInfo@1.0.0", + "description": "Partially update ticket details in HubSpot CRM.\n\n Use this tool to perform a partial update on a ticket identified by its `{ticketId}` or a unique property value specified by `idProperty` in HubSpot CRM. Read-only and non-existent properties will cause errors. Clear property values by passing an empty string.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "ticket_id", + "type": "string", + "required": false, + "description": "The internal ID of the ticket to be updated. This is used to identify the specific ticket in HubSpot CRM. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_property_name", + "type": "string", + "required": false, + "description": "The name of a property whose values are unique for the ticket object. Specify if not using the default ticket ID. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tickets"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/crm/v3/objects/tickets/{ticketId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpdateTicketInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "ticket_id": { + "value": "123456", + "type": "string", + "required": false + }, + "unique_property_name": { + "value": "ticket_number", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\": \"In Progress\", \"priority\": \"High\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UploadCallTranscripts", + "qualifiedName": "HubspotCrmApi.UploadCallTranscripts", + "fullyQualifiedName": "HubspotCrmApi.UploadCallTranscripts@1.0.0", + "description": "Upload call transcripts to HubSpot CRM.\n\nUse this tool to upload call transcripts to HubSpot CRM. It should be called when you need to store transcripts for CRM purposes.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.extensions_calling_transcripts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/extensions/calling/transcripts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UploadCallTranscripts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"transcript\":\"Call transcript content here.\",\"call_id\":\"12345\",\"contact_id\":\"67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertCallRecords", + "qualifiedName": "HubspotCrmApi.UpsertCallRecords", + "fullyQualifiedName": "HubspotCrmApi.UpsertCallRecords@1.0.0", + "description": "Create or update call records in HubSpot CRM.\n\nThis tool allows you to create or update call records in HubSpot CRM. It uses a unique property value specified by the `idProperty` query parameter to identify records that need to be updated or created. Use this tool when you need to batch upsert call records.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/calls/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertCallRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"idProperty\":\"call_id\",\"records\":[{\"call_id\":\"12345\",\"duration\":300,\"contactId\":\"67890\",\"timestamp\":\"2023-10-15T12:00:00Z\",\"notes\":\"Follow-up call\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertCartRecords", + "qualifiedName": "HubspotCrmApi.UpsertCartRecords", + "fullyQualifiedName": "HubspotCrmApi.UpsertCartRecords@1.0.0", + "description": "Create or update cart records in HubSpot CRM.\n\nUse this tool to create or update cart records based on a unique property value specified by the `idProperty`. Ideal for managing cart data in bulk within the HubSpot CRM.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.carts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/carts/batch/upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertCartRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"cartRecords\":[{\"id\":\"abc123\",\"items\":[{\"productId\":\"prod567\",\"quantity\":2}],\"customerId\":\"cust890\"}]}\"", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertCommercePayments", + "qualifiedName": "HubspotCrmApi.UpsertCommercePayments", + "fullyQualifiedName": "HubspotCrmApi.UpsertCommercePayments@1.0.0", + "description": "Create or update unique commerce payment records in HubSpot.\n\nUse this tool to create new commerce payment records or update existing ones in HubSpot CRM. The tool identifies records by a unique property value specified by the `idProperty` query parameter.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.commercepayments.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/commerce_payments/batch/upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertCommercePayments", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"idProperty\":\"paymentId\",\"amount\":150.00,\"currency\":\"USD\",\"paymentStatus\":\"completed\",\"transactionId\":\"txn_1234567890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertCommunicationsRecords", + "qualifiedName": "HubspotCrmApi.UpsertCommunicationsRecords", + "fullyQualifiedName": "HubspotCrmApi.UpsertCommunicationsRecords@1.0.0", + "description": "Create or update communication records in bulk.\n\nThis tool allows you to batch create or update communication records in HubSpot CRM based on a unique property value. Utilize this tool when you need to synchronize communication data and ensure records are accurately up-to-date.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/communications/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertCommunicationsRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"communications\":[{\"id\":\"123\",\"type\":\"email\",\"timestamp\":\"2023-10-01T12:00:00Z\",\"content\":\"Hello, this is a test email.\"},{\"id\":\"124\",\"type\":\"call\",\"timestamp\":\"2023-10-01T14:00:00Z\",\"content\":\"Had a great call with the client.\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertContactBatch", + "qualifiedName": "HubspotCrmApi.UpsertContactBatch", + "fullyQualifiedName": "HubspotCrmApi.UpsertContactBatch@1.0.0", + "description": "Upsert a batch of contacts in HubSpot CRM.\n\nThis tool is used to upsert a batch of contacts in HubSpot CRM. It allows you to define property values for each contact record, making it ideal for updating or creating multiple contacts at once.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/contacts/batch/upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertContactBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"contacts\":[{\"email\":\"john.doe@example.com\",\"firstName\":\"John\",\"lastName\":\"Doe\"},{\"email\":\"jane.smith@example.com\",\"firstName\":\"Jane\",\"lastName\":\"Smith\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertCrmTickets", + "qualifiedName": "HubspotCrmApi.UpsertCrmTickets", + "fullyQualifiedName": "HubspotCrmApi.UpsertCrmTickets@1.0.0", + "description": "Create or update CRM tickets in bulk using unique identifiers.\n\nThis tool allows you to create or update ticket records in HubSpot CRM by using a unique identifier specified through the `idProperty` query parameter. This is useful for ensuring ticket data is up-to-date or for adding new ticket entries in bulk.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tickets"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tickets/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertCrmTickets", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"tickets\":[{\"id\":\"ticket-123\",\"properties\":{\"subject\":\"Issue with product\",\"status\":\"open\",\"priority\":\"high\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertDiscountRecords", + "qualifiedName": "HubspotCrmApi.UpsertDiscountRecords", + "fullyQualifiedName": "HubspotCrmApi.UpsertDiscountRecords@1.0.0", + "description": "Create or update discount records in HubSpot CRM.\n\nThis tool allows the creation or update of discount records in HubSpot CRM using unique property values specified by the `idProperty` query parameter. It is useful for ensuring that discount data is up-to-date and accurately maintained.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/discounts/batch/upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertDiscountRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"idProperty\":\"discountId\",\"discountAmount\":20.5,\"currency\":\"USD\",\"validFrom\":\"2023-10-01\",\"validTo\":\"2023-12-31\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertGoalTargets", + "qualifiedName": "HubspotCrmApi.UpsertGoalTargets", + "fullyQualifiedName": "HubspotCrmApi.UpsertGoalTargets@1.0.0", + "description": "Create or update goal target records in HubSpot CRM.\n\nThis tool allows creation or updating of goal target records in HubSpot CRM using a unique property for identification. Use it to ensure goal targets are up-to-date.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.goals.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/goal_targets/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertGoalTargets", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"goalId\":\"12345\",\"targetValue\":1000,\"comparisonValue\":800,\"timeframe\":\"2023-Q4\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertHubspotFees", + "qualifiedName": "HubspotCrmApi.UpsertHubspotFees", + "fullyQualifiedName": "HubspotCrmApi.UpsertHubspotFees@1.0.0", + "description": "Create or update fee records in HubSpot CRM.\n\nThis tool should be called to create new fee records or update existing ones in HubSpot CRM. It uses a unique property value specified by the `idProperty` query parameter to identify records. Ideal for batch processing of fee information.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/fees/batch/upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertHubspotFees", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"idProperty\":\"feeId\",\"fees\":[{\"amount\":100,\"description\":\"Monthly Subscription Fee\",\"currency\":\"USD\"},{\"amount\":150,\"description\":\"Annual Subscription Fee\",\"currency\":\"USD\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertHubspotInvoices", + "qualifiedName": "HubspotCrmApi.UpsertHubspotInvoices", + "fullyQualifiedName": "HubspotCrmApi.UpsertHubspotInvoices@1.0.0", + "description": "Create or update HubSpot invoice records in batch.\n\nThis tool creates or updates HubSpot invoice records using a unique property identifier specified by the `idProperty` parameter. It should be called when you need to ensure invoice records are accurately reflected in HubSpot CRM.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.invoices.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/invoices/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertHubspotInvoices", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"invoices\":[{\"id\":\"12345\",\"amount\":250.00,\"currency\":\"USD\",\"status\":\"paid\"},{\"id\":\"67890\",\"amount\":150.00,\"currency\":\"USD\",\"status\":\"pending\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertHubspotProductsBatch", + "qualifiedName": "HubspotCrmApi.UpsertHubspotProductsBatch", + "fullyQualifiedName": "HubspotCrmApi.UpsertHubspotProductsBatch@1.0.0", + "description": "Batch create or update HubSpot product records.\n\nThis tool is used to create or update HubSpot product records in bulk, identified by a unique property value specified by the `idProperty`. It should be called when there's a need to synchronize or modify multiple product entries in the HubSpot CRM.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.products.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/products/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertHubspotProductsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"products\":[{\"id\":\"1\",\"name\":\"Product A\",\"description\":\"Description for Product A\",\"price\":100.0},{\"id\":\"2\",\"name\":\"Product B\",\"description\":\"Description for Product B\",\"price\":150.0}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertHubspotRecords", + "qualifiedName": "HubspotCrmApi.UpsertHubspotRecords", + "fullyQualifiedName": "HubspotCrmApi.UpsertHubspotRecords@1.0.0", + "description": "Create or update HubSpot CRM records in batch mode.\n\n Use this tool to create or update records in HubSpot CRM by specifying a unique property value. The `idProperty` parameter helps identify records uniquely for batch operations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": false, + "description": "The type of object in HubSpot CRM (e.g., contacts, companies) to create or update. Specify the object type relevant to your operation. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/objects/v3/{objectType}/batch/upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertHubspotRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "object_type": { + "value": "contacts", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"idProperty\": \"email\", \"records\": [{\"email\": \"johndoe@example.com\", \"firstname\": \"John\", \"lastname\": \"Doe\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertHubspotTasks", + "qualifiedName": "HubspotCrmApi.UpsertHubspotTasks", + "fullyQualifiedName": "HubspotCrmApi.UpsertHubspotTasks@1.0.0", + "description": "Create or update tasks in HubSpot using a unique property.\n\nThis tool creates or updates HubSpot CRM tasks identified by a unique property value specified by the `idProperty` query parameter. Use this tool when you need to batch upsert tasks based on unique identifiers.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/tasks/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertHubspotTasks", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"idProperty\":\"taskId123\",\"taskName\":\"Follow up with client\",\"dueDate\":\"2023-10-31\",\"status\":\"pending\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertHubspotUsers", + "qualifiedName": "HubspotCrmApi.UpsertHubspotUsers", + "fullyQualifiedName": "HubspotCrmApi.UpsertHubspotUsers@1.0.0", + "description": "Create or update user records in HubSpot CRM.\n\nThis tool is used to create or update user records in HubSpot CRM by specifying a unique property value through the `idProperty` query parameter. It is helpful for maintaining and synchronizing user data in HubSpot.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/users/batch/upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertHubspotUsers", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"idProperty\": \"email\", \"properties\": {\"email\": \"user@example.com\", \"firstName\": \"John\", \"lastName\": \"Doe\", \"role\": \"admin\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertLineItemsBatch", + "qualifiedName": "HubspotCrmApi.UpsertLineItemsBatch", + "fullyQualifiedName": "HubspotCrmApi.UpsertLineItemsBatch@1.0.0", + "description": "Batch create or update line items by unique ID.\n\nThis tool creates or updates line item records in batches using a unique property to identify each item, as specified by the `idProperty` query parameter.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.line_items.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/line_items/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertLineItemsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"lineItems\":[{\"id\":\"item_123\",\"properties\":{\"name\":\"Line Item 1\",\"quantity\":10,\"price\":100.0}},{\"id\":\"item_456\",\"properties\":{\"name\":\"Line Item 2\",\"quantity\":5,\"price\":50.0}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertMeetings", + "qualifiedName": "HubspotCrmApi.UpsertMeetings", + "fullyQualifiedName": "HubspotCrmApi.UpsertMeetings@1.0.0", + "description": "Create or update meeting records in HubSpot CRM.\n\nUse this tool to create new meetings or update existing ones in HubSpot CRM by specifying a unique identifier for each record.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/meetings/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertMeetings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"meetingId\":\"12345\",\"subject\":\"Project Update\",\"startTime\":\"2023-10-12T14:00:00Z\",\"endTime\":\"2023-10-12T15:00:00Z\",\"participants\":[{\"email\":\"participant1@example.com\"},{\"email\":\"participant2@example.com\"}],\"location\":\"Zoom\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertNotesHubspot", + "qualifiedName": "HubspotCrmApi.UpsertNotesHubspot", + "fullyQualifiedName": "HubspotCrmApi.UpsertNotesHubspot@1.0.0", + "description": "Create or update notes in HubSpot CRM by unique property.\n\nThis tool is used to create or update multiple notes in HubSpot CRM in a single request. It identifies records using a unique property value specified by the `idProperty` query parameter.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/notes/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertNotesHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"notes\":[{\"idProperty\":\"email\",\"note\":\"Follow up with client regarding project update\",\"timestamp\":\"2023-10-05T12:00:00Z\"},{\"idProperty\":\"phone_number\",\"note\":\"Discuss feedback on the recent survey\",\"timestamp\":\"2023-10-05T12:30:00Z\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertOrdersInHubspot", + "qualifiedName": "HubspotCrmApi.UpsertOrdersInHubspot", + "fullyQualifiedName": "HubspotCrmApi.UpsertOrdersInHubspot@1.0.0", + "description": "Create or update orders in HubSpot CRM.\n\nThis tool calls the HubSpot CRM API to create or update multiple order records based on a unique property value. Use it when you need to batch insert or update orders by specifying a unique identifier for each order.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.orders.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/orders/batch/upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertOrdersInHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"orders\":[{\"unique_id\":\"order123\",\"total_amount\":150.00,\"currency\":\"USD\",\"customer_id\":\"cust456\"},{\"unique_id\":\"order789\",\"total_amount\":200.00,\"currency\":\"USD\",\"customer_id\":\"cust123\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertPostalMailInHubspot", + "qualifiedName": "HubspotCrmApi.UpsertPostalMailInHubspot", + "fullyQualifiedName": "HubspotCrmApi.UpsertPostalMailInHubspot@1.0.0", + "description": "Create or update postal mail records in HubSpot CRM.\n\nThis tool creates or updates postal mail records in HubSpot CRM based on a unique property value specified by the `idProperty` query parameter. Use it to ensure postal mail records are up-to-date and accurately maintained.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.contacts.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/postal_mail/batch/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertPostalMailInHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"idProperty\":\"12345\",\"postalMailData\":{\"recipientName\":\"John Doe\",\"recipientAddress\":\"123 Main St, Springfield, IL 62701\",\"mailType\":\"letter\",\"sendingDate\":\"2023-10-01\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertSubscriptionsInHubspotCrm", + "qualifiedName": "HubspotCrmApi.UpsertSubscriptionsInHubspotCrm", + "fullyQualifiedName": "HubspotCrmApi.UpsertSubscriptionsInHubspotCrm@1.0.0", + "description": "Batch create or update subscription records in HubSpot CRM.\n\nUse this tool to create or update subscription records based on a unique property value in HubSpot CRM. It's ideal for ensuring your subscription data is up-to-date by specifying an `idProperty` for uniquely identifying existing records.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.carts.read", + "crm.objects.services.write", + "tickets.sensitive.v2", + "crm.objects.contacts.write", + "crm.objects.courses.read", + "crm.objects.goals.write", + "crm.objects.custom.read", + "crm.objects.deals.read", + "crm.objects.custom.write", + "crm.objects.commercepayments.read", + "crm.objects.contacts.highly_sensitive.read.v2", + "crm.objects.leads.read", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.partner-services.write", + "e-commerce", + "crm.objects.products.read", + "crm.objects.custom.sensitive.write.v2", + "crm.objects.orders.write", + "crm.objects.subscriptions.write", + "tickets.highly_sensitive.v2", + "crm.objects.deals.highly_sensitive.read.v2", + "crm.objects.companies.write", + "crm.objects.partner-services.read", + "tickets", + "crm.objects.quotes.read", + "oauth", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.companies.read", + "crm.objects.custom.highly_sensitive.read.v2", + "crm.objects.carts.write", + "crm.objects.quotes.write", + "crm.objects.companies.highly_sensitive.read.v2", + "crm.objects.users.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.users.read", + "crm.objects.contacts.read", + "crm.objects.appointments.write", + "crm.objects.partner-clients.write", + "crm.objects.line_items.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.services.read", + "crm.objects.custom.sensitive.read.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.appointments.read", + "crm.objects.invoices.read", + "crm.objects.partner-clients.read", + "crm.objects.courses.write", + "crm.objects.custom.highly_sensitive.write.v2", + "crm.objects.listings.read", + "crm.objects.listings.write", + "crm.objects.subscriptions.read", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.invoices.write", + "crm.objects.line_items.read", + "crm.objects.companies.sensitive.read.v2", + "crm.objects.appointments.sensitive.read.v2", + "crm.objects.commercepayments.write", + "crm.objects.leads.write", + "crm.objects.deals.sensitive.read.v2", + "crm.objects.goals.read", + "crm.objects.orders.read", + "crm.objects.contacts.sensitive.read.v2", + "media_bridge.read", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.products.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/crm/v3/objects/subscriptions/batch/upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotCrmApi.UpsertSubscriptionsInHubspotCrm", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"subscriptions\":[{\"idProperty\":\"email\",\"email\":\"example@example.com\",\"status\":\"active\"},{\"idProperty\":\"email\",\"email\":\"another@example.com\",\"status\":\"inactive\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The HubspotCrmApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotCrmApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider.", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:37:34.769Z", + "summary": "# HubSpot CRM API Toolkit\n\nThe HubSpot CRM API Toolkit enables seamless interactions with the HubSpot CRM system, providing tools that harness the extensive capabilities of the CRM ecosystem.\n\n## Capabilities\n- Manage and automate CRM objects such as contacts, companies, deals, and more.\n- Perform batch operations for creating, updating, and retrieving records efficiently.\n- Facilitate associations between various CRM objects and manage their relationships.\n- Access detailed control over property management and object schemas.\n- Implement GDPR compliance for data management and retrieval.\n\n## OAuth\n**Provider**: Unknown \n**Scopes**: automation, crm.dealsplits.read_write, crm.contacts.read/write, etc.\n\n## Secrets\nNone." +} diff --git a/data/toolkits/hubspoteventsapi.json b/data/toolkits/hubspoteventsapi.json new file mode 100644 index 000000000..721bce113 --- /dev/null +++ b/data/toolkits/hubspoteventsapi.json @@ -0,0 +1,354 @@ +{ + "id": "HubspotEventsApi", + "label": "HubSpot Events API", + "version": "2.0.0", + "description": "Tools that enable LLMs to interact directly with the Hubspot Events API", + "metadata": { + "category": "sales", + "iconUrl": "https://design-system.arcade.dev/icons/hubspot.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/sales/hubspot-events-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": ["behavioral_events.event_definitions.read_write", "oauth"] + }, + "tools": [ + { + "name": "DeleteCustomEventDefinition", + "qualifiedName": "HubspotEventsApi.DeleteCustomEventDefinition", + "fullyQualifiedName": "HubspotEventsApi.DeleteCustomEventDefinition@2.0.0", + "description": "Delete a custom event definition by name.\n\nUse this tool to delete a specified custom event definition in HubSpot by providing the event name. It is useful for managing and organizing event definitions that are no longer needed.", + "parameters": [ + { + "name": "event_name", + "type": "string", + "required": true, + "description": "The name of the custom event definition to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["behavioral_events.event_definitions.read_write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/events/v3/event-definitions/{eventName}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotEventsApi.DeleteCustomEventDefinition", + "parameters": { + "event_name": { + "value": "UserSignupEvent", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCustomEventProperty", + "qualifiedName": "HubspotEventsApi.DeleteCustomEventProperty", + "fullyQualifiedName": "HubspotEventsApi.DeleteCustomEventProperty@2.0.0", + "description": "Delete a property from a custom event definition.\n\nUse this tool to remove an existing property from a specific custom event definition in Hubspot.", + "parameters": [ + { + "name": "custom_event_internal_name", + "type": "string", + "required": true, + "description": "The internal name of the custom event from which the property will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "property_internal_name", + "type": "string", + "required": true, + "description": "The internal name of the property to delete from the custom event.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["behavioral_events.event_definitions.read_write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/events/v3/event-definitions/{eventName}/property/{propertyName}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotEventsApi.DeleteCustomEventProperty", + "parameters": { + "custom_event_internal_name": { + "value": "customer_signup", + "type": "string", + "required": true + }, + "property_internal_name": { + "value": "signup_source", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchEventDefinitionByName", + "qualifiedName": "HubspotEventsApi.FetchEventDefinitionByName", + "fullyQualifiedName": "HubspotEventsApi.FetchEventDefinitionByName@2.0.0", + "description": "Fetch details of a custom event definition by name.\n\nUse this tool to retrieve the definition and details of a specific custom event by providing its name.", + "parameters": [ + { + "name": "event_name", + "type": "string", + "required": true, + "description": "The internal name of the custom event to fetch its definition.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["behavioral_events.event_definitions.read_write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/events/v3/event-definitions/{eventName}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotEventsApi.FetchEventDefinitionByName", + "parameters": { + "event_name": { + "value": "user_signup", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEventTypes", + "qualifiedName": "HubspotEventsApi.ListEventTypes", + "fullyQualifiedName": "HubspotEventsApi.ListEventTypes@2.0.0", + "description": "Retrieve a list of visible event type names.\n\nThis tool retrieves a list of event type names that are visible to the user, which can be used to query specific event instances.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["oauth"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/events/v3/events/event-types_getTypes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotEventsApi.ListEventTypes", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCustomEventDefinitions", + "qualifiedName": "HubspotEventsApi.RetrieveCustomEventDefinitions", + "fullyQualifiedName": "HubspotEventsApi.RetrieveCustomEventDefinitions@2.0.0", + "description": "Retrieve existing custom event definitions from Hubspot.\n\nUse this tool to obtain the current list of custom event definitions stored in Hubspot. It helps in understanding or displaying existing events configured within your system.", + "parameters": [ + { + "name": "event_name_search_string", + "type": "string", + "required": false, + "description": "String of characters to search for in event names. This is a simple 'contains' search without fuzzy matching.", + "enum": null, + "inferrable": true + }, + { + "name": "include_event_properties", + "type": "boolean", + "required": false, + "description": "Include event properties in the response. Set to true to include all properties.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token indicating the position after the last successfully read resource for continued paged results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page_limit", + "type": "integer", + "required": false, + "description": "The maximum number of event definitions to retrieve per page.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the order to sort results. Use 'ASC' for ascending or 'DESC' for descending.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["behavioral_events.event_definitions.read_write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/events/v3/event-definitions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotEventsApi.RetrieveCustomEventDefinitions", + "parameters": { + "event_name_search_string": { + "value": "purchase", + "type": "string", + "required": false + }, + "include_event_properties": { + "value": true, + "type": "boolean", + "required": false + }, + "paging_cursor_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "results_per_page_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "ASC", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCustomEventDefinition", + "qualifiedName": "HubspotEventsApi.UpdateCustomEventDefinition", + "fullyQualifiedName": "HubspotEventsApi.UpdateCustomEventDefinition@2.0.0", + "description": "Update a specific custom event definition by name.\n\nUse this tool to update the definition of a specific custom event in Hubspot by specifying the event name.", + "parameters": [ + { + "name": "internal_event_name", + "type": "string", + "required": true, + "description": "The internal name of the custom event to be updated in Hubspot.", + "enum": null, + "inferrable": true + }, + { + "name": "event_description", + "type": "string", + "required": false, + "description": "Provide a description for the custom event to be displayed as help text in HubSpot.", + "enum": null, + "inferrable": true + }, + { + "name": "event_label", + "type": "string", + "required": false, + "description": "The human-readable label for the event, used in the HubSpot UI.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["behavioral_events.event_definitions.read_write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/events/v3/event-definitions/{eventName}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotEventsApi.UpdateCustomEventDefinition", + "parameters": { + "internal_event_name": { + "value": "user_signup", + "type": "string", + "required": true + }, + "event_description": { + "value": "Event triggered when a user signs up for an account.", + "type": "string", + "required": false + }, + "event_label": { + "value": "User Signup", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The HubspotEventsApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotEventsApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider.", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:35:29.882Z", + "summary": "Arcade's HubspotEventsApi toolkit enables LLMs to interact seamlessly with the Hubspot Events API, streamlining event management for developers. It provides the necessary tools for creating, updating, retrieving, and deleting custom event definitions.\n\n### Capabilities\n- Manage custom event definitions in Hubspot efficiently.\n- Access and update event properties with ease.\n- Retrieve information on existing events and their types.\n- Facilitate the cleanup of unnecessary event definitions.\n\n### OAuth\n- **Provider:** Unknown\n- **Scopes:** behavioral_events.event_definitions.read_write, oauth\n\n### Secrets\n- No secrets are required for authentication." +} diff --git a/data/toolkits/hubspotmarketingapi.json b/data/toolkits/hubspotmarketingapi.json new file mode 100644 index 000000000..2f8e80acf --- /dev/null +++ b/data/toolkits/hubspotmarketingapi.json @@ -0,0 +1,5492 @@ +{ + "id": "HubspotMarketingApi", + "label": "HubSpot Marketing API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the Hubspot Marketing API.", + "metadata": { + "category": "sales", + "iconUrl": "https://design-system.arcade.dev/icons/hubspot.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/sales/hubspot-marketing-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": [ + "content", + "crm.objects.marketing_events.read", + "crm.objects.marketing_events.write", + "forms", + "marketing-email", + "marketing.campaigns.read", + "marketing.campaigns.revenue.read", + "marketing.campaigns.write", + "transactional-email" + ] + }, + "tools": [ + { + "name": "AddCampaignBudgetItem", + "qualifiedName": "HubspotMarketingApi.AddCampaignBudgetItem", + "fullyQualifiedName": "HubspotMarketingApi.AddCampaignBudgetItem@1.0.0", + "description": "Add a new budget item to a marketing campaign.\n\nUse this tool to add a budget item to an existing campaign in HubSpot Marketing. Ideal for updating campaign financials.", + "parameters": [ + { + "name": "budget_amount", + "type": "number", + "required": true, + "description": "The monetary amount for the budget item. It should be a numeric value denoting the budget amount to add to the campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "budget_item_name", + "type": "string", + "required": true, + "description": "Name of the budget item to be added to the campaign. It should be descriptive and concise.", + "enum": null, + "inferrable": true + }, + { + "name": "budget_item_order", + "type": "integer", + "required": true, + "description": "The position or priority of the budget item in the list. Provide as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_id", + "type": "string", + "required": true, + "description": "Unique identifier for the campaign in HubSpot Marketing.", + "enum": null, + "inferrable": true + }, + { + "name": "budget_item_description", + "type": "string", + "required": false, + "description": "A brief description of the budget item being added to the campaign. This can include details about what the budget will be used for and any other relevant information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/campaigns/{campaignGuid}/budget'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.AddCampaignBudgetItem", + "parameters": { + "budget_amount": { + "value": 1500, + "type": "integer", + "required": true + }, + "budget_item_name": { + "value": "Social Media Advertising", + "type": "string", + "required": true + }, + "budget_item_order": { + "value": 1, + "type": "integer", + "required": true + }, + "campaign_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "budget_item_description": { + "value": "Funds allocated for social media ads targeting our new product launch.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveCampaignsBatch", + "qualifiedName": "HubspotMarketingApi.ArchiveCampaignsBatch", + "fullyQualifiedName": "HubspotMarketingApi.ArchiveCampaignsBatch@1.0.0", + "description": "Delete a batch of marketing campaigns.\n\nUse this tool to delete multiple marketing campaigns in a single batch request (up to 50\ncampaigns). The response will indicate if the request was processed, but it won't specify the\nsuccess of individual deletions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/campaigns/batch/archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.ArchiveCampaignsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"campaign_ids\":[\"12345\",\"67890\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveMarketingForm", + "qualifiedName": "HubspotMarketingApi.ArchiveMarketingForm", + "fullyQualifiedName": "HubspotMarketingApi.ArchiveMarketingForm@1.0.0", + "description": "Archive a marketing form in HubSpot.\n\nUse this tool to archive a form in HubSpot Marketing, preventing new submissions. The form will be permanently deleted after 3 months.", + "parameters": [ + { + "name": "form_id", + "type": "string", + "required": true, + "description": "The ID of the form to archive in HubSpot. This is required to process the archive request.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["forms"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/marketing/v3/forms/{formId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.ArchiveMarketingForm", + "parameters": { + "form_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AssociateAssetWithCampaign", + "qualifiedName": "HubspotMarketingApi.AssociateAssetWithCampaign", + "fullyQualifiedName": "HubspotMarketingApi.AssociateAssetWithCampaign@1.0.0", + "description": "Associate a specified asset with a HubSpot campaign.\n\nThis tool is used to link various asset types such as forms, lists, or emails with a specific HubSpot campaign. It's useful for managing and organizing marketing efforts across different platforms.", + "parameters": [ + { + "name": "asset_id", + "type": "string", + "required": true, + "description": "The unique identifier for the asset to be associated with a campaign. This should be provided as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "asset_type", + "type": "string", + "required": true, + "description": "Specify the asset type to associate with the campaign. Allowed values are FORM, OBJECT_LIST, and EXTERNAL_WEB_URL.", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the campaign, formatted as a UUID. Essential for associating an asset with the correct campaign.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/marketing/v3/campaigns/{campaignGuid}/assets/{assetType}/{assetId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.AssociateAssetWithCampaign", + "parameters": { + "asset_id": { + "value": "12345", + "type": "string", + "required": true + }, + "asset_type": { + "value": "FORM", + "type": "string", + "required": true + }, + "campaign_unique_identifier": { + "value": "abcde123-4567-890f-ghij-klmnopqrstuv", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AssociateListWithMarketingEvent", + "qualifiedName": "HubspotMarketingApi.AssociateListWithMarketingEvent", + "fullyQualifiedName": "HubspotMarketingApi.AssociateListWithMarketingEvent@1.0.0", + "description": "Associate a list with a marketing event by their IDs.\n\nThis tool associates a specific list with a marketing event using the marketing event ID and the list ID. It is used when you need to connect a list of contacts to a marketing event for tracking and management purposes.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The ILS ID of the list to associate with the marketing event.", + "enum": null, + "inferrable": true + }, + { + "name": "marketing_event_id", + "type": "string", + "required": true, + "description": "The internal ID of the marketing event in HubSpot for association.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/marketing/v3/marketing-events/associations/{marketingEventId}/lists/{listId}_associateByMarketingEventId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.AssociateListWithMarketingEvent", + "parameters": { + "list_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "marketing_event_id": { + "value": "event-2023-001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelMarketingEvent", + "qualifiedName": "HubspotMarketingApi.CancelMarketingEvent", + "fullyQualifiedName": "HubspotMarketingApi.CancelMarketingEvent@1.0.0", + "description": "Cancel a HubSpot marketing event.\n\nUse this tool to mark a specific HubSpot marketing event as cancelled by providing the external event ID.", + "parameters": [ + { + "name": "external_account_id", + "type": "string", + "required": true, + "description": "The account ID associated with the marketing event in the external event application.", + "enum": null, + "inferrable": true + }, + { + "name": "external_event_id", + "type": "string", + "required": true, + "description": "The ID of the marketing event in the external event application. Required to identify the event to be cancelled.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/marketing-events/events/{externalEventId}/cancel_cancel'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.CancelMarketingEvent", + "parameters": { + "external_account_id": { + "value": "12345", + "type": "string", + "required": true + }, + "external_event_id": { + "value": "event-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CloneHubspotEmail", + "qualifiedName": "HubspotMarketingApi.CloneHubspotEmail", + "fullyQualifiedName": "HubspotMarketingApi.CloneHubspotEmail@1.0.0", + "description": "Clone an existing HubSpot marketing email.\n\nUse this tool to create a copy of an existing email in HubSpot's marketing platform. Ideal for reusing email templates and maintaining consistency in marketing campaigns.", + "parameters": [ + { + "name": "original_email_id", + "type": "string", + "required": true, + "description": "The unique identifier of the email you wish to clone in HubSpot.", + "enum": null, + "inferrable": true + }, + { + "name": "cloned_email_name", + "type": "string", + "required": false, + "description": "The new name for the cloned email. This should be a descriptive string to identify the copy.", + "enum": null, + "inferrable": true + }, + { + "name": "email_language", + "type": "string", + "required": false, + "description": "Specify the language for the cloned email, e.g., 'en' for English, 'fr' for French.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/emails/clone'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.CloneHubspotEmail", + "parameters": { + "original_email_id": { + "value": "12345", + "type": "string", + "required": true + }, + "cloned_email_name": { + "value": "Spring Promotion Email", + "type": "string", + "required": false + }, + "email_language": { + "value": "en", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAbTestEmailVariation", + "qualifiedName": "HubspotMarketingApi.CreateAbTestEmailVariation", + "fullyQualifiedName": "HubspotMarketingApi.CreateAbTestEmailVariation@1.0.0", + "description": "Create a new variation for an email A/B test.\n\nUse this tool to generate a new variation of an existing email for conducting A/B tests in your marketing campaigns. This is useful for testing different email content to optimize engagement and performance.", + "parameters": [ + { + "name": "email_content_id", + "type": "string", + "required": true, + "description": "ID of the email content to create a variation for A/B testing.", + "enum": null, + "inferrable": true + }, + { + "name": "variation_name", + "type": "string", + "required": true, + "description": "The name of the new email variation for the A/B test. Provide a descriptive name to easily identify this variation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/emails/ab-test/create-variation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.CreateAbTestEmailVariation", + "parameters": { + "email_content_id": { + "value": "12345", + "type": "string", + "required": true + }, + "variation_name": { + "value": "Subject Line Test - Variant A", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCampaignSpend", + "qualifiedName": "HubspotMarketingApi.CreateCampaignSpend", + "fullyQualifiedName": "HubspotMarketingApi.CreateCampaignSpend@1.0.0", + "description": "Create a new campaign spend item for a marketing campaign.\n\nThis tool creates a new spend item for a specified marketing campaign. It should be called when you need to add or track expenditures related to a specific campaign.", + "parameters": [ + { + "name": "campaign_id", + "type": "string", + "required": true, + "description": "Unique identifier for the marketing campaign to add the spend item to.", + "enum": null, + "inferrable": true + }, + { + "name": "spend_amount", + "type": "number", + "required": true, + "description": "The monetary value of the spend item to be added to the campaign. This should be a numerical value representing the amount in the currency used by the campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "spend_item_name", + "type": "string", + "required": true, + "description": "The name of the spend item to be created for the campaign. This should be a descriptive title or label for the expenditure.", + "enum": null, + "inferrable": true + }, + { + "name": "spend_item_order", + "type": "integer", + "required": true, + "description": "The order of the spend item in the campaign. Use an integer to specify the sequence.", + "enum": null, + "inferrable": true + }, + { + "name": "spend_description", + "type": "string", + "required": false, + "description": "A brief description of the campaign spend item, detailing the nature or purpose of the expenditure.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/campaigns/{campaignGuid}/spend'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.CreateCampaignSpend", + "parameters": { + "campaign_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "spend_amount": { + "value": 1500.75, + "type": "integer", + "required": true + }, + "spend_item_name": { + "value": "Social Media Ads", + "type": "string", + "required": true + }, + "spend_item_order": { + "value": 1, + "type": "integer", + "required": true + }, + "spend_description": { + "value": "Expenditure for Facebook and Instagram advertising.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMarketingCampaign", + "qualifiedName": "HubspotMarketingApi.CreateMarketingCampaign", + "fullyQualifiedName": "HubspotMarketingApi.CreateMarketingCampaign@1.0.0", + "description": "Create a marketing campaign and retrieve its details.\n\nThis tool creates a marketing campaign using provided properties and returns the campaign\nobject, including essential details like campaignGuid and created properties.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/campaigns/'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.CreateMarketingCampaign", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Spring Sale Campaign\",\"objective\":\"Increase Sales\",\"startDate\":\"2023-03-01\",\"endDate\":\"2023-03-31\",\"targetAudience\":\"Email Subscribers\",\"budget\":1000}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMarketingCampaignBatch", + "qualifiedName": "HubspotMarketingApi.CreateMarketingCampaignBatch", + "fullyQualifiedName": "HubspotMarketingApi.CreateMarketingCampaignBatch@1.0.0", + "description": "Create a batch of marketing campaigns in HubSpot.\n\nThis tool is used to batch create up to 50 marketing campaigns in HubSpot Marketing. The\ncampaigns in the response may not be in the same order as they were submitted in the request.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/campaigns/batch/create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.CreateMarketingCampaignBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"campaigns\":[{\"name\":\"Spring Sale\",\"description\":\"Promote our spring collection.\",\"start_date\":\"2023-03-01T00:00:00Z\",\"end_date\":\"2023-03-31T23:59:59Z\"},{\"name\":\"Summer Fest\",\"description\":\"Annual summer sale event.\",\"start_date\":\"2023-06-01T00:00:00Z\",\"end_date\":\"2023-06-30T23:59:59Z\"},{\"name\":\"Fall Discounts\",\"description\":\"Discounted prices for fall products.\",\"start_date\":\"2023-09-01T00:00:00Z\",\"end_date\":\"2023-09-30T23:59:59Z\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMarketingEmail", + "qualifiedName": "HubspotMarketingApi.CreateMarketingEmail", + "fullyQualifiedName": "HubspotMarketingApi.CreateMarketingEmail@1.0.0", + "description": "Create a new marketing email in HubSpot.\n\nUse this tool to create a new marketing email through HubSpot's marketing platform, allowing for\neffective email campaigns.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/emails/'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.CreateMarketingEmail", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"subject\":\"Spring Sale Announcement\",\"fromEmail\":\"promotions@example.com\",\"toEmails\":[\"customer1@example.com\", \"customer2@example.com\"],\"htmlContent\":\"

Don't miss our Spring Sale!

Get up to 50% off on selected items.

\",\"sendAt\":\"2023-10-01T10:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMarketingEvent", + "qualifiedName": "HubspotMarketingApi.CreateMarketingEvent", + "fullyQualifiedName": "HubspotMarketingApi.CreateMarketingEvent@1.0.0", + "description": "Create a new marketing event in HubSpot.\n\nThis tool is used to create a new marketing event within the HubSpot platform. It should be\ncalled when a new event needs to be added to HubSpot's marketing event system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/marketing-events/events_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.CreateMarketingEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"event_name\":\"Fall Webinar\",\"event_date\":\"2023-09-15T14:00:00Z\",\"location\":\"Online\",\"description\":\"An informative webinar about autumn trends in marketing.\",\"capacity\":100}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMarketingForm", + "qualifiedName": "HubspotMarketingApi.CreateMarketingForm", + "fullyQualifiedName": "HubspotMarketingApi.CreateMarketingForm@1.0.0", + "description": "Create a new marketing form in HubSpot.\n\nThis tool is used to add a new form to HubSpot's marketing systems. It should be called whenever\nyou need to create a new form for collecting marketing data.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["forms"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/forms/_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.CreateMarketingForm", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"Contact Form\", \"fields\": [{\"label\": \"Email\", \"type\": \"email\", \"required\": true}, {\"label\": \"Name\", \"type\": \"text\", \"required\": true}], \"submitText\": \"Submit\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSmtpApiToken", + "qualifiedName": "HubspotMarketingApi.CreateSmtpApiToken", + "fullyQualifiedName": "HubspotMarketingApi.CreateSmtpApiToken@1.0.0", + "description": "Creates a SMTP API token for transaction emails.\n\nThis tool is used to create a new SMTP API token for sending transactional emails through HubSpot's marketing service. It should be called when a new token is needed for email operations.", + "parameters": [ + { + "name": "campaign_name", + "type": "string", + "required": true, + "description": "The name of the campaign associated with the SMTP API token.", + "enum": null, + "inferrable": true + }, + { + "name": "create_contact_for_recipients", + "type": "boolean", + "required": true, + "description": "Indicates whether a contact should be created for email recipients. Set to true to create a contact.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["transactional-email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/transactional/smtp-tokens_createToken'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.CreateSmtpApiToken", + "parameters": { + "campaign_name": { + "value": "Spring Promotion 2023", + "type": "string", + "required": true + }, + "create_contact_for_recipients": { + "value": true, + "type": "boolean", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCampaignBudgetItem", + "qualifiedName": "HubspotMarketingApi.DeleteCampaignBudgetItem", + "fullyQualifiedName": "HubspotMarketingApi.DeleteCampaignBudgetItem@1.0.0", + "description": "Delete a specific campaign budget item by ID.\n\nUse this tool to delete a specific budget item from a campaign using the campaignGuid and budgetId. Useful for managing or updating campaign budgets.", + "parameters": [ + { + "name": "budget_item_id", + "type": "integer", + "required": true, + "description": "Unique identifier for the budget item to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_guid", + "type": "string", + "required": true, + "description": "Unique identifier for the campaign to delete the budget item from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/marketing/v3/campaigns/{campaignGuid}/budget/{budgetId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.DeleteCampaignBudgetItem", + "parameters": { + "budget_item_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "campaign_guid": { + "value": "abc-defg-hijk-lmnop", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMarketingCampaign", + "qualifiedName": "HubspotMarketingApi.DeleteMarketingCampaign", + "fullyQualifiedName": "HubspotMarketingApi.DeleteMarketingCampaign@1.0.0", + "description": "Delete a specified marketing campaign.\n\nUse this tool to delete a marketing campaign from the system by providing the campaign's GUID. A 204 No Content response is returned, indicating the request was processed, regardless of whether the campaign existed.", + "parameters": [ + { + "name": "campaign_guid", + "type": "string", + "required": true, + "description": "Unique identifier for the campaign, formatted as a UUID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/marketing/v3/campaigns/{campaignGuid}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.DeleteMarketingCampaign", + "parameters": { + "campaign_guid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMarketingEmail", + "qualifiedName": "HubspotMarketingApi.DeleteMarketingEmail", + "fullyQualifiedName": "HubspotMarketingApi.DeleteMarketingEmail@1.0.0", + "description": "Delete an existing marketing email by ID.\n\nUse this tool to remove a specific marketing email from the HubSpot system by providing its unique email ID. This is useful for managing email lists and ensuring outdated or incorrect emails are removed.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The unique ID of the marketing email to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/marketing/v3/emails/{emailId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.DeleteMarketingEmail", + "parameters": { + "email_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMarketingEvent", + "qualifiedName": "HubspotMarketingApi.DeleteMarketingEvent", + "fullyQualifiedName": "HubspotMarketingApi.DeleteMarketingEvent@1.0.0", + "description": "Deletes a specified HubSpot marketing event.\n\nUse this tool to delete an existing marketing event in HubSpot by specifying the externalEventId. The event must have been created by the same app requesting the deletion.", + "parameters": [ + { + "name": "external_account_id", + "type": "string", + "required": true, + "description": "The account ID associated with the marketing event to be deleted in the external event application.", + "enum": null, + "inferrable": true + }, + { + "name": "marketing_event_id", + "type": "string", + "required": true, + "description": "The ID of the marketing event in the external event application to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/marketing/v3/marketing-events/events/{externalEventId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.DeleteMarketingEvent", + "parameters": { + "external_account_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "marketing_event_id": { + "value": "987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMarketingEvents", + "qualifiedName": "HubspotMarketingApi.DeleteMarketingEvents", + "fullyQualifiedName": "HubspotMarketingApi.DeleteMarketingEvents@1.0.0", + "description": "Delete multiple marketing events by object ID.\n\nThis tool deletes specified marketing events based on their object IDs. Use it to clean up\nevents from the portal. It returns a status indicating whether all or only some events were\nsuccessfully deleted.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/marketing-events/batch/archive_archiveByObjectId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.DeleteMarketingEvents", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"object_ids\":[\"12345\",\"67890\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteSmtpToken", + "qualifiedName": "HubspotMarketingApi.DeleteSmtpToken", + "fullyQualifiedName": "HubspotMarketingApi.DeleteSmtpToken@1.0.0", + "description": "Delete an SMTP token by ID in HubSpot Marketing.\n\nUse this tool to delete a specific SMTP token from HubSpot Marketing by providing the token ID.\nThis is useful for managing and revoking access tokens when they are no longer needed or for\nsecurity reasons.", + "parameters": [ + { + "name": "smtp_token_id", + "type": "string", + "required": true, + "description": "The unique identifier of the SMTP token to be deleted, provided during token creation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["transactional-email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/marketing/v3/transactional/smtp-tokens/{tokenId}_archiveToken'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.DeleteSmtpToken", + "parameters": { + "smtp_token_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DisassociateCampaignAsset", + "qualifiedName": "HubspotMarketingApi.DisassociateCampaignAsset", + "fullyQualifiedName": "HubspotMarketingApi.DisassociateCampaignAsset@1.0.0", + "description": "Disassociate an asset from a HubSpot marketing campaign.\n\nUse this tool to remove a specified asset from a marketing campaign. Supported asset types include Forms, Static lists, and External website pages.", + "parameters": [ + { + "name": "asset_id", + "type": "string", + "required": true, + "description": "Unique identifier for the asset to be disassociated from the campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "asset_type", + "type": "string", + "required": true, + "description": "Specify the type of asset to disassociate, limited to FORM, OBJECT_LIST, or EXTERNAL_WEB_URL.", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the campaign, formatted as a UUID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/marketing/v3/campaigns/{campaignGuid}/assets/{assetType}/{assetId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.DisassociateCampaignAsset", + "parameters": { + "asset_id": { + "value": "12345", + "type": "string", + "required": true + }, + "asset_type": { + "value": "FORM", + "type": "string", + "required": true + }, + "campaign_unique_identifier": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DisassociateListFromMarketingEvent", + "qualifiedName": "HubspotMarketingApi.DisassociateListFromMarketingEvent", + "fullyQualifiedName": "HubspotMarketingApi.DisassociateListFromMarketingEvent@1.0.0", + "description": "Disassociate a list from a marketing event using event and list IDs.\n\nUse this tool to remove the association between a specific list and a marketing event by providing the marketing event ID and the list ID. It ensures that the list is no longer linked to the specified marketing event.", + "parameters": [ + { + "name": "list_identifier", + "type": "string", + "required": true, + "description": "The ILS ID of the list to be disassociated from the marketing event.", + "enum": null, + "inferrable": true + }, + { + "name": "marketing_event_id", + "type": "string", + "required": true, + "description": "The internal ID of the marketing event in HubSpot to disassociate the list from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/marketing/v3/marketing-events/associations/{marketingEventId}/lists/{listId}_disassociateByMarketingEventId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.DisassociateListFromMarketingEvent", + "parameters": { + "list_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "marketing_event_id": { + "value": "event-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DisassociateMarketingEventList", + "qualifiedName": "HubspotMarketingApi.DisassociateMarketingEventList", + "fullyQualifiedName": "HubspotMarketingApi.DisassociateMarketingEventList@1.0.0", + "description": "Disassociate a list from a HubSpot marketing event using IDs.\n\nUse this tool to disassociate a list from a specific marketing event in HubSpot by providing the external account ID, external event ID, and list ID. This action is useful when you need to update or manage your marketing event associations.", + "parameters": [ + { + "name": "external_account_id", + "type": "string", + "required": true, + "description": "The account ID linked to the marketing event in the external application.", + "enum": null, + "inferrable": true + }, + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The ILS ID of the list to be disassociated from the marketing event.", + "enum": null, + "inferrable": true + }, + { + "name": "marketing_event_id", + "type": "string", + "required": true, + "description": "ID of the marketing event in the external application to be disassociated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/marketing/v3/marketing-events/associations/{externalAccountId}/{externalEventId}/lists/{listId}_disassociateByExternalAccountAndEventIds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.DisassociateMarketingEventList", + "parameters": { + "external_account_id": { + "value": "12345", + "type": "string", + "required": true + }, + "list_id": { + "value": "67890", + "type": "string", + "required": true + }, + "marketing_event_id": { + "value": "event-abc-123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchCampaignContactIds", + "qualifiedName": "HubspotMarketingApi.FetchCampaignContactIds", + "fullyQualifiedName": "HubspotMarketingApi.FetchCampaignContactIds@1.0.0", + "description": "Fetch contact IDs for a specific campaign and contact type.\n\nUse this tool to obtain the contact IDs associated with a particular marketing campaign and specified contact type in HubSpot. It is useful for analyzing campaign reach and engagement with specific contact demographics.", + "parameters": [ + { + "name": "campaign_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the campaign formatted as a UUID.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_type_filter", + "type": "string", + "required": true, + "description": "Specifies the type of metric for filtering contacts. Options: contactFirstTouch, contactLastTouch, influencedContacts.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_fetch_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of contact IDs to retrieve, with a default of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string cursor for pagination to start results after the given point. Example: NTI1Cg%3D%3D", + "enum": null, + "inferrable": true + }, + { + "name": "report_end_date", + "type": "string", + "required": false, + "description": "The end date for the report data in YYYY-MM-DD format. Defaults to the current date if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "The start date for the report data in YYYY-MM-DD format. Default is 2006-01-01.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/campaigns/{campaignGuid}/reports/contacts/{contactType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.FetchCampaignContactIds", + "parameters": { + "campaign_identifier": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + }, + "contact_type_filter": { + "value": "contactFirstTouch", + "type": "string", + "required": true + }, + "contact_fetch_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "NTI1Cg%3D%3D", + "type": "string", + "required": false + }, + "report_end_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "start_date": { + "value": "2023-01-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchEmailStatistics", + "qualifiedName": "HubspotMarketingApi.FetchEmailStatistics", + "fullyQualifiedName": "HubspotMarketingApi.FetchEmailStatistics@1.0.0", + "description": "Fetch aggregated email statistics in specified intervals.\n\nThis tool retrieves aggregated email statistics over specified time intervals, providing insights into email performance during each period.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/emails/statistics/histogram'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.FetchEmailStatistics", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchEventDetails", + "qualifiedName": "HubspotMarketingApi.FetchEventDetails", + "fullyQualifiedName": "HubspotMarketingApi.FetchEventDetails@1.0.0", + "description": "Fetch details of a marketing event by its object ID.\n\nUse this tool to retrieve detailed information about a specific marketing event by providing its object ID. This can be useful for gaining insights into the event's specifics and managing marketing activities.", + "parameters": [ + { + "name": "marketing_event_object_id", + "type": "string", + "required": true, + "description": "The internal ID of the marketing event in HubSpot. Used to fetch specific event details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/marketing-events/{objectId}_getByObjectId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.FetchEventDetails", + "parameters": { + "marketing_event_object_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchMarketingCampaignBatches", + "qualifiedName": "HubspotMarketingApi.FetchMarketingCampaignBatches", + "fullyQualifiedName": "HubspotMarketingApi.FetchMarketingCampaignBatches@1.0.0", + "description": "Retrieve a batch of HubSpot marketing campaigns and assets.\n\n Use this tool to read a batch of marketing campaigns from HubSpot, along with their associated\n assets. The tool allows for processing up to 50 campaigns per request. Note that the campaigns\n returned may not be in the order requested, and duplicate campaign IDs will be handled by\n returning only unique entries.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "fetch_start_date", + "type": "string", + "required": false, + "description": "Start date to fetch asset metrics, formatted as YYYY-MM-DD. Determines the period for asset metrics. Optional. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_for_asset_metrics", + "type": "string", + "required": false, + "description": "End date to fetch asset metrics, formatted as YYYY-MM-DD. If not provided, no asset metrics will be fetched. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "requested_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of properties to return in the response. Ignored if values are empty, resulting in an empty properties map if not specified. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/campaigns/batch/read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.FetchMarketingCampaignBatches", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "fetch_start_date": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "end_date_for_asset_metrics": { + "value": "2023-01-31", + "type": "string", + "required": false + }, + "requested_properties": { + "value": "name,status,type,assets", + "type": "array", + "required": false + }, + "request_body": { + "value": "{\"campaign_ids\": [\"101\", \"102\", \"103\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FindHubspotMarketingEvents", + "qualifiedName": "HubspotMarketingApi.FindHubspotMarketingEvents", + "fullyQualifiedName": "HubspotMarketingApi.FindHubspotMarketingEvents@1.0.0", + "description": "Fetch HubSpot marketing events by externalEventId.\n\nUse this tool to retrieve marketing events from HubSpot where the externalEventId matches the given request parameter. It only returns events created by the app making the request, excluding those made by other apps.", + "parameters": [ + { + "name": "external_event_id", + "type": "string", + "required": true, + "description": "The ID of the marketing event in the external application (externalEventId) to search for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/marketing-events/events/search_doSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.FindHubspotMarketingEvents", + "parameters": { + "external_event_id": { + "value": "event-123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllMarketingEvents", + "qualifiedName": "HubspotMarketingApi.GetAllMarketingEvents", + "fullyQualifiedName": "HubspotMarketingApi.GetAllMarketingEvents@1.0.0", + "description": "Retrieve all marketing events from the portal.\n\nThis tool fetches all available marketing events, including manually created ones and those generated through the application. The events are sorted by objectId.", + "parameters": [ + { + "name": "cursor_position_after", + "type": "string", + "required": false, + "description": "The cursor indicating the position of the last retrieved item for pagination purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "response_limit", + "type": "integer", + "required": false, + "description": "Sets the maximum number of marketing events to retrieve, between 10 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/marketing-events/_getAll'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetAllMarketingEvents", + "parameters": { + "cursor_position_after": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "response_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignAttributionMetrics", + "qualifiedName": "HubspotMarketingApi.GetCampaignAttributionMetrics", + "fullyQualifiedName": "HubspotMarketingApi.GetCampaignAttributionMetrics@1.0.0", + "description": "Retrieve attribution metrics for a specific campaign.\n\nRetrieves key attribution metrics for a specified campaign, including sessions, new contacts, and influenced contacts. Use this tool to analyze campaign performance.", + "parameters": [ + { + "name": "campaign_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the campaign, formatted as a UUID. Required to retrieve specific campaign metrics.", + "enum": null, + "inferrable": true + }, + { + "name": "report_end_date", + "type": "string", + "required": false, + "description": "Set the end date for the report data in YYYY-MM-DD format. Defaults to the current date if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_for_report", + "type": "string", + "required": false, + "description": "The start date for the report data, formatted as YYYY-MM-DD. Default is 2006-01-01.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/campaigns/{campaignGuid}/reports/metrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetCampaignAttributionMetrics", + "parameters": { + "campaign_unique_identifier": { + "value": "c1a6f70e-4b2e-4c3e-8e43-3c7af3d9e4f9", + "type": "string", + "required": true + }, + "report_end_date": { + "value": "2023-10-15", + "type": "string", + "required": false + }, + "start_date_for_report": { + "value": "2023-01-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignBudget", + "qualifiedName": "HubspotMarketingApi.GetCampaignBudget", + "fullyQualifiedName": "HubspotMarketingApi.GetCampaignBudget@1.0.0", + "description": "Retrieve details of a specific marketing campaign budget item.\n\nThis tool is used to obtain information about a specific budget item within a marketing campaign by providing the campaign GUID and budget ID. Use this tool to access detailed budget data for analysis or reporting purposes.", + "parameters": [ + { + "name": "budget_item_id", + "type": "integer", + "required": true, + "description": "Unique identifier for the budget item to retrieve details.", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_guid", + "type": "string", + "required": true, + "description": "The unique identifier for the marketing campaign to access its budget details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/campaigns/{campaignGuid}/budget/{budgetId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetCampaignBudget", + "parameters": { + "budget_item_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "campaign_guid": { + "value": "uuid-1234-abcd-5678-efgh", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignBudgetDetails", + "qualifiedName": "HubspotMarketingApi.GetCampaignBudgetDetails", + "fullyQualifiedName": "HubspotMarketingApi.GetCampaignBudgetDetails@1.0.0", + "description": "Retrieve detailed budget and spend details for a campaign.\n\nThis tool retrieves detailed information regarding the budget and spending for a specific marketing campaign, including total budget, total spend, and remaining budget. It's useful for understanding financial aspects of a campaign.", + "parameters": [ + { + "name": "campaign_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the campaign, formatted as a UUID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/campaigns/{campaignGuid}/budget/totals'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetCampaignBudgetDetails", + "parameters": { + "campaign_unique_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignDetails", + "qualifiedName": "HubspotMarketingApi.GetCampaignDetails", + "fullyQualifiedName": "HubspotMarketingApi.GetCampaignDetails@1.0.0", + "description": "Retrieve details and metrics for a specific marketing campaign.\n\nUse this tool to get detailed information about a marketing campaign using its campaignGuid. It also provides information about associated assets, and if start and end dates are given, metrics for those assets.", + "parameters": [ + { + "name": "campaign_guid", + "type": "string", + "required": true, + "description": "Unique identifier for the campaign, formatted as a UUID.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_for_asset_metrics", + "type": "string", + "required": false, + "description": "End date to fetch asset metrics, formatted as YYYY-MM-DD. If omitted, no metrics will be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "metrics_start_date", + "type": "string", + "required": false, + "description": "Start date for fetching asset metrics. Format as YYYY-MM-DD. Metrics are only retrieved if both start and end dates are provided.", + "enum": null, + "inferrable": true + }, + { + "name": "properties_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "List specific properties to return in the response. Leave empty for an empty properties map.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/campaigns/{campaignGuid}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetCampaignDetails", + "parameters": { + "campaign_guid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "end_date_for_asset_metrics": { + "value": "2023-09-30", + "type": "string", + "required": false + }, + "metrics_start_date": { + "value": "2023-09-01", + "type": "string", + "required": false + }, + "properties_list": { + "value": ["name", "status", "created_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignRevenueReport", + "qualifiedName": "HubspotMarketingApi.GetCampaignRevenueReport", + "fullyQualifiedName": "HubspotMarketingApi.GetCampaignRevenueReport@1.0.0", + "description": "Fetch revenue attribution report for a specific campaign.\n\nThis tool retrieves the revenue attribution report data for a specified marketing campaign using its unique campaign GUID.", + "parameters": [ + { + "name": "campaign_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the campaign, formatted as a UUID.", + "enum": null, + "inferrable": true + }, + { + "name": "attribution_model", + "type": "string", + "required": false, + "description": "The revenue attribution model to be used. Allowed values: LINEAR, FIRST_INTERACTION, LAST_INTERACTION, FULL_PATH, U_SHAPED, W_SHAPED, TIME_DECAY, J_SHAPED, INVERSE_J_SHAPED. Defaults to LINEAR.", + "enum": null, + "inferrable": true + }, + { + "name": "report_end_date", + "type": "string", + "required": false, + "description": "End date for the report data in YYYY-MM-DD format. Defaults to the current date.", + "enum": null, + "inferrable": true + }, + { + "name": "report_start_date", + "type": "string", + "required": false, + "description": "The start date for the report data in the format YYYY-MM-DD. Default is 2006-01-01.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.revenue.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/campaigns/{campaignGuid}/reports/revenue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetCampaignRevenueReport", + "parameters": { + "campaign_unique_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "attribution_model": { + "value": "FIRST_INTERACTION", + "type": "string", + "required": false + }, + "report_end_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "report_start_date": { + "value": "2023-01-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignSpendItem", + "qualifiedName": "HubspotMarketingApi.GetCampaignSpendItem", + "fullyQualifiedName": "HubspotMarketingApi.GetCampaignSpendItem@1.0.0", + "description": "Retrieve details of a specific campaign spend item.\n\nUse this tool to get information about a campaign spend item by providing its spendId and campaignGuid.", + "parameters": [ + { + "name": "campaign_guid", + "type": "string", + "required": true, + "description": "Unique identifier for the marketing campaign to retrieve the spend item from.", + "enum": null, + "inferrable": true + }, + { + "name": "spend_item_identifier", + "type": "integer", + "required": true, + "description": "Unique identifier for the spend item in the campaign.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/campaigns/{campaignGuid}/spend/{spendId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetCampaignSpendItem", + "parameters": { + "campaign_guid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "spend_item_identifier": { + "value": 456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetContactParticipationsBreakdown", + "qualifiedName": "HubspotMarketingApi.GetContactParticipationsBreakdown", + "fullyQualifiedName": "HubspotMarketingApi.GetContactParticipationsBreakdown@1.0.0", + "description": "Retrieve a contact's event participation details by ID or email.\n\nThis tool retrieves participation details for a specific contact in marketing events using their email or internal ID. It is useful for analyzing a contact's engagement in various events.", + "parameters": [ + { + "name": "contact_identifier", + "type": "string", + "required": true, + "description": "The identifier of the contact, which can be either an email or an internal ID.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for the last retrieved item to manage pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "participation_state", + "type": "string", + "required": false, + "description": "The participation state for the contact. Options: REGISTERED, CANCELLED, ATTENDED, NO_SHOW.", + "enum": null, + "inferrable": true + }, + { + "name": "response_size_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of participation records to return. The default is 10, and the maximum is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/marketing-events/participations/contacts/{contactIdentifier}/breakdown_getParticipationsBreakdownByContactId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetContactParticipationsBreakdown", + "parameters": { + "contact_identifier": { + "value": "john.doe@example.com", + "type": "string", + "required": true + }, + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "participation_state": { + "value": "ATTENDED", + "type": "string", + "required": false + }, + "response_size_limit": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEmailAbTestVariation", + "qualifiedName": "HubspotMarketingApi.GetEmailAbTestVariation", + "fullyQualifiedName": "HubspotMarketingApi.GetEmailAbTestVariation@1.0.0", + "description": "Retrieve the variation of an A/B test marketing email.\n\nUse this tool to get the opposite variation of a specified A/B marketing email. Ideal for determining the alternative version presented in a marketing email campaign.", + "parameters": [ + { + "name": "email_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the marketing email to obtain its A/B test variation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/emails/{emailId}/ab-test/get-variation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetEmailAbTestVariation", + "parameters": { + "email_identifier": { + "value": "ab_test_email_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEmailRevisions", + "qualifiedName": "HubspotMarketingApi.GetEmailRevisions", + "fullyQualifiedName": "HubspotMarketingApi.GetEmailRevisions@1.0.0", + "description": "Retrieve all versions of a marketing email.\n\nUse this tool to get a comprehensive list of all versions of a specified marketing email, each containing the full state of that version.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The unique identifier of the marketing email to retrieve revisions for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/emails/{emailId}/revisions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetEmailRevisions", + "parameters": { + "email_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEmailStatistics", + "qualifiedName": "HubspotMarketingApi.GetEmailStatistics", + "fullyQualifiedName": "HubspotMarketingApi.GetEmailStatistics@1.0.0", + "description": "Get aggregated email statistics in a specified time span.\n\nUse this tool to obtain aggregated statistics for emails sent within a specific time period. It also provides a list of all emails sent during that period.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/emails/statistics/list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetEmailStatistics", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEventParticipationCounters", + "qualifiedName": "HubspotMarketingApi.GetEventParticipationCounters", + "fullyQualifiedName": "HubspotMarketingApi.GetEventParticipationCounters@1.0.0", + "description": "Retrieve participation counters for a specific marketing event.\n\nThis tool fetches participation metrics for a marketing event using the externalAccountId and externalEventId. It should be called when you need detailed participation statistics for a specific event in HubSpot's marketing platform.", + "parameters": [ + { + "name": "event_id", + "type": "string", + "required": true, + "description": "The unique identifier for the marketing event in the external application. Required to retrieve participation data.", + "enum": null, + "inferrable": true + }, + { + "name": "external_account_id", + "type": "string", + "required": true, + "description": "The account ID associated with the marketing event in the external application.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/marketing-events/participations/{externalAccountId}/{externalEventId}_getParticipationsCountersByEventExternalId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetEventParticipationCounters", + "parameters": { + "event_id": { + "value": "evt_1234567890", + "type": "string", + "required": true + }, + "external_account_id": { + "value": "acc_9876543210", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFormById", + "qualifiedName": "HubspotMarketingApi.GetFormById", + "fullyQualifiedName": "HubspotMarketingApi.GetFormById@1.0.0", + "description": "Retrieve a marketing form by its ID.\n\nUse this tool to get detailed information about a specific marketing form by providing its unique form ID.", + "parameters": [ + { + "name": "form_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific marketing form to retrieve. This ID is required to fetch the form details.", + "enum": null, + "inferrable": true + }, + { + "name": "return_archived_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived forms.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["forms"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/forms/{formId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetFormById", + "parameters": { + "form_id": { + "value": "12345-abcde", + "type": "string", + "required": true + }, + "return_archived_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMarketingCampaigns", + "qualifiedName": "HubspotMarketingApi.GetMarketingCampaigns", + "fullyQualifiedName": "HubspotMarketingApi.GetMarketingCampaigns@1.0.0", + "description": "Retrieve a page of marketing campaigns with optional filters.\n\nThis tool allows retrieval of a page of marketing campaigns based on query parameters such as name filtering, sorting, and pagination. You can also control the properties included in the response.", + "parameters": [ + { + "name": "campaign_name_filter", + "type": "string", + "required": false, + "description": "A substring to filter campaigns by name. Returns campaigns containing this substring. Optional: returns all if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_limit", + "type": "integer", + "required": false, + "description": "Maximum number of campaigns to return (1-100). Default is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor for pagination. If provided, results start after the given cursor. Example: NTI1Cg%3D%3D", + "enum": null, + "inferrable": true + }, + { + "name": "requested_properties", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of properties to be included in the response. Comma-separate values are required. If any specified property is empty, it will be ignored.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "Specify the field to sort results by. Use '-' to denote descending order. Options are hs_name, createdAt, updatedAt. Default is hs_name.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/campaigns/'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetMarketingCampaigns", + "parameters": { + "campaign_name_filter": { + "value": "summer sale", + "type": "string", + "required": false + }, + "max_results_limit": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "NTI1Cg%3D%3D", + "type": "string", + "required": false + }, + "requested_properties": { + "value": ["id", "name", "status"], + "type": "array", + "required": false + }, + "sort_by": { + "value": "-createdAt", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMarketingEmailDetails", + "qualifiedName": "HubspotMarketingApi.GetMarketingEmailDetails", + "fullyQualifiedName": "HubspotMarketingApi.GetMarketingEmailDetails@1.0.0", + "description": "Retrieve details for a specific marketing email.\n\nUse this tool to get comprehensive information about a marketing email by specifying its email ID.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific marketing email. Required to retrieve email details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/emails/{emailId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetMarketingEmailDetails", + "parameters": { + "email_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMarketingEmailRevision", + "qualifiedName": "HubspotMarketingApi.GetMarketingEmailRevision", + "fullyQualifiedName": "HubspotMarketingApi.GetMarketingEmailRevision@1.0.0", + "description": "Retrieve a specific revision of a marketing email.\n\nUse this tool to get details about a specific revision of a marketing email by providing the email and revision IDs.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The unique identifier for the marketing email. This ID is required to specify which email's revision details to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "email_revision_id", + "type": "string", + "required": true, + "description": "The unique ID of the specific email revision to retrieve. Provide the revisionId for accessing the exact version.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/emails/{emailId}/revisions/{revisionId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetMarketingEmailRevision", + "parameters": { + "email_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "email_revision_id": { + "value": "rev-001-xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMarketingEventAssociatedLists", + "qualifiedName": "HubspotMarketingApi.GetMarketingEventAssociatedLists", + "fullyQualifiedName": "HubspotMarketingApi.GetMarketingEventAssociatedLists@1.0.0", + "description": "Retrieve lists associated with a specific marketing event.\n\nCall this tool to get lists associated with a marketing event using external account and event IDs. Useful for accessing participant or attendee lists linked to specific marketing events.", + "parameters": [ + { + "name": "external_account_id", + "type": "string", + "required": true, + "description": "The account ID associated with the marketing event in the external application.", + "enum": null, + "inferrable": true + }, + { + "name": "external_event_id", + "type": "string", + "required": true, + "description": "The ID of the marketing event from the external event application.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/marketing-events/associations/{externalAccountId}/{externalEventId}/lists_getAllByExternalAccountAndEventIds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetMarketingEventAssociatedLists", + "parameters": { + "external_account_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "external_event_id": { + "value": "event456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMarketingEventDetails", + "qualifiedName": "HubspotMarketingApi.GetMarketingEventDetails", + "fullyQualifiedName": "HubspotMarketingApi.GetMarketingEventDetails@1.0.0", + "description": "Retrieve details of a specific marketing event.\n\nFetches details of a marketing event using its externalEventId. Only events created by the requesting app can be accessed.", + "parameters": [ + { + "name": "external_account_id", + "type": "string", + "required": true, + "description": "The accountId associated with this marketing event in the external event application.", + "enum": null, + "inferrable": true + }, + { + "name": "marketing_event_id", + "type": "string", + "required": true, + "description": "The unique identifier of the marketing event in the external application.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/marketing-events/events/{externalEventId}_getDetails'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetMarketingEventDetails", + "parameters": { + "external_account_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "marketing_event_id": { + "value": "event-2023-001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMarketingEventLists", + "qualifiedName": "HubspotMarketingApi.GetMarketingEventLists", + "fullyQualifiedName": "HubspotMarketingApi.GetMarketingEventLists@1.0.0", + "description": "Retrieve lists associated with a specific marketing event.\n\nThis tool fetches all lists associated with a given marketing event using the marketing event ID. It should be called when you need to obtain lists connected to a particular marketing event for analysis or reporting purposes.", + "parameters": [ + { + "name": "marketing_event_id", + "type": "string", + "required": true, + "description": "The internal ID of the marketing event in HubSpot to retrieve associated lists.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/marketing-events/associations/{marketingEventId}/lists_getAllByMarketingEventId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetMarketingEventLists", + "parameters": { + "marketing_event_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMarketingEventParticipationBreakdown", + "qualifiedName": "HubspotMarketingApi.GetMarketingEventParticipationBreakdown", + "fullyQualifiedName": "HubspotMarketingApi.GetMarketingEventParticipationBreakdown@1.0.0", + "description": "Retrieve the participation breakdown for a marketing event.\n\nThis tool fetches the participation breakdown for a specified marketing event, filtered by externalAccountId and externalEventId. It provides detailed insights on event participation metrics.", + "parameters": [ + { + "name": "external_account_id", + "type": "string", + "required": true, + "description": "The ID associated with the marketing event's account in the external application.", + "enum": null, + "inferrable": true + }, + { + "name": "external_event_id", + "type": "string", + "required": true, + "description": "The ID of the marketing event in the external event application.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the contact, such as an email or internal ID.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor indicating the position of the last retrieved item, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "participation_state_filter", + "type": "string", + "required": false, + "description": "The participation state to filter results. Possible values: REGISTERED, CANCELLED, ATTENDED, NO_SHOW.", + "enum": null, + "inferrable": true + }, + { + "name": "response_size_limit", + "type": "integer", + "required": false, + "description": "Maximum number of participations to retrieve. Default is 10, maximum is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/marketing-events/participations/{externalAccountId}/{externalEventId}/breakdown_getParticipationsBreakdownByExternalEventId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetMarketingEventParticipationBreakdown", + "parameters": { + "external_account_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "external_event_id": { + "value": "event_987654321", + "type": "string", + "required": true + }, + "contact_identifier": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc123", + "type": "string", + "required": false + }, + "participation_state_filter": { + "value": "ATTENDED", + "type": "string", + "required": false + }, + "response_size_limit": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMarketingEventParticipationCounters", + "qualifiedName": "HubspotMarketingApi.GetMarketingEventParticipationCounters", + "fullyQualifiedName": "HubspotMarketingApi.GetMarketingEventParticipationCounters@1.0.0", + "description": "Retrieve participation counters for a marketing event.\n\nThis tool fetches the participation statistics for a specified marketing event using its internal identifier.", + "parameters": [ + { + "name": "marketing_event_id", + "type": "integer", + "required": true, + "description": "The internal ID of the marketing event in HubSpot, required to fetch participation counters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/marketing-events/participations/{marketingEventId}_getParticipationsCountersByMarketingEventId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetMarketingEventParticipationCounters", + "parameters": { + "marketing_event_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMarketingEventParticipationsBreakdown", + "qualifiedName": "HubspotMarketingApi.GetMarketingEventParticipationsBreakdown", + "fullyQualifiedName": "HubspotMarketingApi.GetMarketingEventParticipationsBreakdown@1.0.0", + "description": "Retrieve participations breakdown for a specific marketing event.\n\nThis tool fetches a detailed breakdown of participations for a specific marketing event identified by marketingEventId. It can be used to analyze participation metrics and insights for a given event.", + "parameters": [ + { + "name": "marketing_event_id", + "type": "integer", + "required": true, + "description": "The internal id of the marketing event in HubSpot.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_identifier", + "type": "string", + "required": false, + "description": "The identifier of the Contact. It can be an email or internal ID.", + "enum": null, + "inferrable": true + }, + { + "name": "last_retrieved_position_cursor", + "type": "string", + "required": false, + "description": "The cursor indicating the position of the last retrieved item for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "participation_state", + "type": "string", + "required": false, + "description": "The participation state filter, which can be REGISTERED, CANCELLED, ATTENDED, or NO_SHOW.", + "enum": null, + "inferrable": true + }, + { + "name": "response_size_limit", + "type": "integer", + "required": false, + "description": "Set the maximum number of records to return. Default is 10, maximum is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/marketing-events/participations/{marketingEventId}/breakdown_getParticipationsBreakdownByMarketingEventId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetMarketingEventParticipationsBreakdown", + "parameters": { + "marketing_event_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "contact_identifier": { + "value": "johndoe@example.com", + "type": "string", + "required": false + }, + "last_retrieved_position_cursor": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "participation_state": { + "value": "ATTENDED", + "type": "string", + "required": false + }, + "response_size_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSmtpTokenById", + "qualifiedName": "HubspotMarketingApi.GetSmtpTokenById", + "fullyQualifiedName": "HubspotMarketingApi.GetSmtpTokenById@1.0.0", + "description": "Retrieve details of an SMTP token using its ID.\n\nThis tool is used to query a specific SMTP token by its ID within the HubSpot Marketing platform.\nCall this tool when you need to access detailed information about a particular SMTP transactional token.", + "parameters": [ + { + "name": "smtp_token_id", + "type": "string", + "required": true, + "description": "The unique identifier of the SMTP token to be queried.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["transactional-email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/transactional/smtp-tokens/{tokenId}_getTokenById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.GetSmtpTokenById", + "parameters": { + "smtp_token_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "HubspotMarketingEmailFilter", + "qualifiedName": "HubspotMarketingApi.HubspotMarketingEmailFilter", + "fullyQualifiedName": "HubspotMarketingApi.HubspotMarketingEmailFilter@1.0.0", + "description": "Retrieve and filter HubSpot marketing emails.\n\nUse this tool to retrieve and filter marketing emails from HubSpot. It allows you to apply various filters to find specific sets of emails based on your criteria.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/emails/'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.HubspotMarketingEmailFilter", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "LinkListToEvent", + "qualifiedName": "HubspotMarketingApi.LinkListToEvent", + "fullyQualifiedName": "HubspotMarketingApi.LinkListToEvent@1.0.0", + "description": "Associates a marketing list with an event in HubSpot.\n\nThis tool associates a list with a marketing event using the external account ID, external event ID, and ILS list ID. It should be called when you need to link a specific list to a marketing event for tracking or organizational purposes.", + "parameters": [ + { + "name": "external_account_id", + "type": "string", + "required": true, + "description": "The account ID associated with the marketing event in the external event application.", + "enum": null, + "inferrable": true + }, + { + "name": "external_event_id", + "type": "string", + "required": true, + "description": "The ID of the marketing event in the external event application. Used to specify which event to associate with the list.", + "enum": null, + "inferrable": true + }, + { + "name": "ils_list_id", + "type": "string", + "required": true, + "description": "The ILS ID of the list to associate with the marketing event.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/marketing/v3/marketing-events/associations/{externalAccountId}/{externalEventId}/lists/{listId}_associateByExternalAccountAndEventIds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.LinkListToEvent", + "parameters": { + "external_account_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "external_event_id": { + "value": "event_987654321", + "type": "string", + "required": true + }, + "ils_list_id": { + "value": "ils_list_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCampaignAssets", + "qualifiedName": "HubspotMarketingApi.ListCampaignAssets", + "fullyQualifiedName": "HubspotMarketingApi.ListCampaignAssets@1.0.0", + "description": "Retrieve all assets of a specified type for a campaign.\n\nThis tool lists all assets of a particular type within a specified marketing campaign. It can also fetch asset metrics if start and end dates are provided, allowing for detailed analysis of campaign performance.", + "parameters": [ + { + "name": "asset_type", + "type": "string", + "required": true, + "description": "The type of asset to fetch for the campaign, e.g., 'email', 'webpage'.", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the campaign in UUID format.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_for_asset_metrics", + "type": "string", + "required": false, + "description": "End date to fetch asset metrics, formatted as YYYY-MM-DD. Used for fetching metrics of assets within a specified period. Optional parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_limit", + "type": "string", + "required": false, + "description": "The maximum number of asset results to return. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "metrics_start_date", + "type": "string", + "required": false, + "description": "Start date to fetch asset metrics, formatted as YYYY-MM-DD. Used to fetch metrics for a specified period. If not provided, no metrics will be fetched.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor for pagination. If provided, results start after this cursor. Example: NTI1Cg%3D%3D", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/campaigns/{campaignGuid}/assets/{assetType}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.ListCampaignAssets", + "parameters": { + "asset_type": { + "value": "email", + "type": "string", + "required": true + }, + "campaign_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "end_date_for_asset_metrics": { + "value": "2023-10-31", + "type": "string", + "required": false + }, + "maximum_results_limit": { + "value": "10", + "type": "string", + "required": false + }, + "metrics_start_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "NTI1Cg%3D%3D", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListHubspotForms", + "qualifiedName": "HubspotMarketingApi.ListHubspotForms", + "fullyQualifiedName": "HubspotMarketingApi.ListHubspotForms@1.0.0", + "description": "Retrieve a list of HubSpot marketing forms.\n\nCall this tool to obtain a list of marketing forms from HubSpot. It applies search filters if provided, otherwise returns the first 20 forms by default.", + "parameters": [ + { + "name": "included_form_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of form types to include in results, e.g., 'hubspot', 'workflow', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor_token", + "type": "string", + "required": false, + "description": "The token indicating the cursor position for paginated results. Use `paging.next.after` from the previous response to fetch more results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of forms to retrieve per page.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_archived_forms", + "type": "boolean", + "required": false, + "description": "Set to true to return only archived forms in the results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["forms"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/forms/_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.ListHubspotForms", + "parameters": { + "included_form_types": { + "value": ["hubspot", "workflow"], + "type": "array", + "required": false + }, + "paging_cursor_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "return_only_archived_forms": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MarkMarketingEventCompleted", + "qualifiedName": "HubspotMarketingApi.MarkMarketingEventCompleted", + "fullyQualifiedName": "HubspotMarketingApi.MarkMarketingEventCompleted@1.0.0", + "description": "Mark a marketing event as completed in HubSpot.\n\nUse this tool to mark a marketing event as completed in HubSpot, identified by its externalEventId. This confirms that the specified event has been finalized.", + "parameters": [ + { + "name": "event_end_datetime", + "type": "string", + "required": true, + "description": "The date and time when the marketing event ended. Expected in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "event_start_date_time", + "type": "string", + "required": true, + "description": "The start date and time of the marketing event, formatted as an ISO 8601 string.", + "enum": null, + "inferrable": true + }, + { + "name": "external_account_id", + "type": "string", + "required": true, + "description": "The account ID associated with the marketing event in the external application.", + "enum": null, + "inferrable": true + }, + { + "name": "marketing_event_id", + "type": "string", + "required": true, + "description": "The unique ID of the marketing event in the external event application.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/marketing-events/events/{externalEventId}/complete_complete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.MarkMarketingEventCompleted", + "parameters": { + "event_end_datetime": { + "value": "2023-10-10T15:00:00Z", + "type": "string", + "required": true + }, + "event_start_date_time": { + "value": "2023-10-10T14:00:00Z", + "type": "string", + "required": true + }, + "external_account_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "marketing_event_id": { + "value": "event_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ModifyEventInformation", + "qualifiedName": "HubspotMarketingApi.ModifyEventInformation", + "fullyQualifiedName": "HubspotMarketingApi.ModifyEventInformation@1.0.0", + "description": "Update details of a specific marketing event.\n\n Use this tool to update the details of an existing marketing event by providing the object's ID.\n It confirms whether the update was successful.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "event_internal_id", + "type": "string", + "required": false, + "description": "The internal ID of the marketing event in HubSpot to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/marketing/v3/marketing-events/{objectId}_updateByObjectId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.ModifyEventInformation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "event_internal_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Event Name\",\"date\":\"2023-10-15\",\"location\":\"Updated Location\",\"description\":\"Updated description for the marketing event.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PublishHubspotEmail", + "qualifiedName": "HubspotMarketingApi.PublishHubspotEmail", + "fullyQualifiedName": "HubspotMarketingApi.PublishHubspotEmail@1.0.0", + "description": "Publish a HubSpot marketing email.\n\nUse this tool to publish a marketing email in HubSpot by specifying the email ID. This should be called when you need to make an email live as part of a marketing campaign.", + "parameters": [ + { + "name": "hubspot_email_id", + "type": "string", + "required": true, + "description": "The unique identifier for the HubSpot marketing email to publish.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing-email", "transactional-email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/emails/{emailId}/publish'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.PublishHubspotEmail", + "parameters": { + "hubspot_email_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "QuerySmtpTokens", + "qualifiedName": "HubspotMarketingApi.QuerySmtpTokens", + "fullyQualifiedName": "HubspotMarketingApi.QuerySmtpTokens@1.0.0", + "description": "Retrieve SMTP API tokens by campaign name or emailCampaignId.\n\nUse this tool to query multiple SMTP API tokens associated with a campaign by its name, or to retrieve a single token using an emailCampaignId. This is useful for managing email campaigns and accessing specific token information.", + "parameters": [ + { + "name": "campaign_name", + "type": "string", + "required": false, + "description": "Name of the campaign tied to the SMTP API token to query tokens.", + "enum": null, + "inferrable": true + }, + { + "name": "email_campaign_id", + "type": "string", + "required": false, + "description": "Identifier assigned to the campaign provided during the token creation. Used to retrieve a specific SMTP API token.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_tokens_to_return", + "type": "integer", + "required": false, + "description": "Specify the maximum number of SMTP API tokens to return in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "result_pagination_start", + "type": "string", + "required": false, + "description": "Specify a starting point for retrieving the next set of results. Use this for paginating through results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["transactional-email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/transactional/smtp-tokens_getTokensPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.QuerySmtpTokens", + "parameters": { + "campaign_name": { + "value": "Holiday Sale", + "type": "string", + "required": false + }, + "email_campaign_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + }, + "maximum_tokens_to_return": { + "value": 5, + "type": "integer", + "required": false + }, + "result_pagination_start": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RecordEventAttendance", + "qualifiedName": "HubspotMarketingApi.RecordEventAttendance", + "fullyQualifiedName": "HubspotMarketingApi.RecordEventAttendance@1.0.0", + "description": "Record participation of HubSpot contacts in a marketing event.\n\n Use this tool to record the attendance of multiple HubSpot contacts at a marketing event using\n their HubSpot contact IDs. This also adds a timeline event to each contact's record. The tool is\n applicable for the \"attend\" state with optional properties like \"joinedAt\" and \"leftAt\".\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "marketing_event_id", + "type": "string", + "required": false, + "description": "The internal ID of the marketing event in HubSpot for which attendance is being recorded. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "attendance_state", + "type": "string", + "required": false, + "description": "Specifies the attendance state of the contact: 'register', 'attend', or 'cancel'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/marketing-events/{objectId}/attendance/{subscriberState}/create_recordByContactId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.RecordEventAttendance", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "marketing_event_id": { + "value": "123456", + "type": "string", + "required": false + }, + "attendance_state": { + "value": "attend", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"contactIds\":[\"101\", \"102\"], \"joinedAt\":\"2023-10-01T10:00:00Z\", \"leftAt\":\"2023-10-01T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RecordEventParticipationHubspot", + "qualifiedName": "HubspotMarketingApi.RecordEventParticipationHubspot", + "fullyQualifiedName": "HubspotMarketingApi.RecordEventParticipationHubspot@1.0.0", + "description": "Record participation of contacts in a HubSpot marketing event.\n\n Use this tool to record the attendance of HubSpot contacts in a marketing event using their\n email addresses. It can automatically create contacts if they do not exist and adds a timeline\n event for them. This is particularly useful for logging who attended or participated in specific\n marketing events.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "external_event_id", + "type": "string", + "required": false, + "description": "The ID of the marketing event in the external event application. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_state", + "type": "string", + "required": false, + "description": "The new subscriber state for HubSpot contacts in the specified event. Options: 'register', 'attend', 'cancel'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "external_account_id", + "type": "string", + "required": false, + "description": "The account ID linked to the marketing event in the external event application. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/marketing-events/attendance/{externalEventId}/{subscriberState}/email-create_recordByContactEmails'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.RecordEventParticipationHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "external_event_id": { + "value": "evt_12345", + "type": "string", + "required": false + }, + "subscriber_state": { + "value": "attend", + "type": "string", + "required": false + }, + "external_account_id": { + "value": "acc_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"emails\":[\"contact@example.com\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RecordHubspotSubscriberState", + "qualifiedName": "HubspotMarketingApi.RecordHubspotSubscriberState", + "fullyQualifiedName": "HubspotMarketingApi.RecordHubspotSubscriberState@1.0.0", + "description": "Record subscriber state for HubSpot contacts and events.\n\n Record a subscriber state between multiple HubSpot contacts and a marketing event using HubSpot\n contact IDs. Note: Contacts must already exist in HubSpot.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "external_account_id", + "type": "string", + "required": false, + "description": "The account ID associated with this marketing event in the external event application. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "event_id_in_external_app", + "type": "string", + "required": false, + "description": "The ID of the marketing event in the external application. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_state", + "type": "string", + "required": false, + "description": "The new subscriber state for the HubSpot contacts and the specified marketing event, such as 'register', 'attend', or 'cancel'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/marketing-events/events/{externalEventId}/{subscriberState}/upsert_upsertByContactId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.RecordHubspotSubscriberState", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "external_account_id": { + "value": "12345", + "type": "string", + "required": false + }, + "event_id_in_external_app": { + "value": "67890", + "type": "string", + "required": false + }, + "subscriber_state": { + "value": "attend", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"contacts\": [\"contact_id_1\", \"contact_id_2\"], \"event\": \"event_name\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RecordMarketingEventAttendance", + "qualifiedName": "HubspotMarketingApi.RecordMarketingEventAttendance", + "fullyQualifiedName": "HubspotMarketingApi.RecordMarketingEventAttendance@1.0.0", + "description": "Record participation of HubSpot contacts in a Marketing Event.\n\n Use this tool to mark multiple HubSpot contacts as having participated in a specific marketing\n event. It is useful for updating contact records and timelines when contacts attend an event.\n The tool supports additional properties like 'joinedAt' and 'leftAt' for the 'attend' state.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "external_event_id", + "type": "string", + "required": false, + "description": "The identifier for the marketing event in the external event application. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "new_subscriber_state", + "type": "string", + "required": false, + "description": "Specifies the new state of the contact in relation to the marketing event, such as 'register', 'attend', or 'cancel'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "external_account_id", + "type": "string", + "required": false, + "description": "The ID identifying the account associated with the marketing event in the external application. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/marketing-events/attendance/{externalEventId}/{subscriberState}/create_recordByContactIds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.RecordMarketingEventAttendance", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "external_event_id": { + "value": "event_12345", + "type": "string", + "required": false + }, + "new_subscriber_state": { + "value": "attend", + "type": "string", + "required": false + }, + "external_account_id": { + "value": "account_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"contacts\":[{\"id\":\"contact_1\"},{\"id\":\"contact_2\"}],\"joinedAt\":\"2023-10-01T10:00:00Z\",\"leftAt\":\"2023-10-01T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RecordSubscriberState", + "qualifiedName": "HubspotMarketingApi.RecordSubscriberState", + "fullyQualifiedName": "HubspotMarketingApi.RecordSubscriberState@1.0.0", + "description": "Record a subscriber's state for a marketing event using email.\n\n This tool records the subscriber state of a HubSpot contact in relation to a specific marketing\n event using the contact's email. Note: the contact must already exist in HubSpot.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "external_account_id", + "type": "string", + "required": false, + "description": "The account ID linked to the marketing event in the external application, required for identifying events. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "marketing_event_id", + "type": "string", + "required": false, + "description": "The unique identifier for the marketing event in the external application. Required to record subscriber state. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_state", + "type": "string", + "required": false, + "description": "The new subscriber state for a HubSpot contact in the specified marketing event. Options include 'register', 'attend', or 'cancel'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/marketing-events/events/{externalEventId}/{subscriberState}/email-upsert_upsertByContactEmail'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.RecordSubscriberState", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "external_account_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "marketing_event_id": { + "value": "event-001", + "type": "string", + "required": false + }, + "subscriber_state": { + "value": "attend", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\": \"example@example.com\", \"status\": \"attending\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RegisterEventParticipation", + "qualifiedName": "HubspotMarketingApi.RegisterEventParticipation", + "fullyQualifiedName": "HubspotMarketingApi.RegisterEventParticipation@1.0.0", + "description": "Logs event participation for contacts using email addresses.\n\n Records participation of HubSpot contacts in a marketing event using emails. Automatically\n creates non-existing contacts and logs the event on their timeline. Applicable for 'attend'\n state, with optional 'joinedAt' and 'leftAt' properties.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "marketing_event_id", + "type": "string", + "required": false, + "description": "The internal ID of the marketing event in HubSpot. It is required to log participation for contacts. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "attendance_state", + "type": "string", + "required": false, + "description": "The attendance state for the contact in the event. Options: 'register', 'attend', or 'cancel'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/marketing-events/{objectId}/attendance/{subscriberState}/email-create_recordByEmail'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.RegisterEventParticipation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "marketing_event_id": { + "value": "12345", + "type": "string", + "required": false + }, + "attendance_state": { + "value": "attend", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\":\"example@example.com\",\"joinedAt\":\"2023-10-01T10:00:00Z\",\"leftAt\":\"2023-10-01T11:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveCampaignSpendItem", + "qualifiedName": "HubspotMarketingApi.RemoveCampaignSpendItem", + "fullyQualifiedName": "HubspotMarketingApi.RemoveCampaignSpendItem@1.0.0", + "description": "Deletes a specific campaign spend item by ID.\n\nUse this tool to delete a specific spend item from a marketing campaign using its ID. This is useful for managing and updating campaign expenses in HubSpot Marketing.", + "parameters": [ + { + "name": "campaign_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the specific marketing campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "spend_item_id", + "type": "integer", + "required": true, + "description": "Unique identifier for the specific spend item to be deleted from the campaign.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/marketing/v3/campaigns/{campaignGuid}/spend/{spendId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.RemoveCampaignSpendItem", + "parameters": { + "campaign_identifier": { + "value": "12345-abcd-67890-efgh", + "type": "string", + "required": true + }, + "spend_item_id": { + "value": 987654321, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveMarketingEvent", + "qualifiedName": "HubspotMarketingApi.RemoveMarketingEvent", + "fullyQualifiedName": "HubspotMarketingApi.RemoveMarketingEvent@1.0.0", + "description": "Deletes a specified marketing event by objectId.\n\nUse this tool to delete an existing marketing event in HubSpot Marketing using its objectId. Call this tool when you need to remove a marketing event from the system.", + "parameters": [ + { + "name": "marketing_event_id", + "type": "string", + "required": true, + "description": "The internal ID of the marketing event to be deleted in HubSpot.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/marketing/v3/marketing-events/{objectId}_archiveByObjectId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.RemoveMarketingEvent", + "parameters": { + "marketing_event_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveMarketingEvents", + "qualifiedName": "HubspotMarketingApi.RemoveMarketingEvents", + "fullyQualifiedName": "HubspotMarketingApi.RemoveMarketingEvents@1.0.0", + "description": "Delete multiple HubSpot marketing events by specific IDs.\n\nThis tool deletes multiple HubSpot marketing events based on provided external account, event,\nand app IDs. It is used to remove events created by the calling app, ensuring events from other\napps remain unaffected.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/marketing-events/events/delete_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.RemoveMarketingEvents", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"external_account\":\"12345\",\"event_ids\":[\"event1\",\"event2\",\"event3\"],\"app_id\":\"app123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResetEmailDraftToLive", + "qualifiedName": "HubspotMarketingApi.ResetEmailDraftToLive", + "fullyQualifiedName": "HubspotMarketingApi.ResetEmailDraftToLive@1.0.0", + "description": "Reset an email draft to match the live version.\n\nUse this tool to reset an email draft to a copy of its currently live version in HubSpot Marketing. This is useful when you want to discard changes made to a draft and revert to the original published version.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The unique identifier for the email draft to be reset. This is a string value used to specify which draft to revert.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/emails/{emailId}/draft/reset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.ResetEmailDraftToLive", + "parameters": { + "email_id": { + "value": "1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResetPasswordForToken", + "qualifiedName": "HubspotMarketingApi.ResetPasswordForToken", + "fullyQualifiedName": "HubspotMarketingApi.ResetPasswordForToken@1.0.0", + "description": "Resets the password for a specified token.\n\nThis tool allows you to create a new password for a specified token, invalidating the old password. Use it when you need to reset the password associated with a specific SMTP token in HubSpot's marketing system.", + "parameters": [ + { + "name": "token_identifier", + "type": "string", + "required": true, + "description": "The unique string identifier for the token, used to reset its password.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["transactional-email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/transactional/smtp-tokens/{tokenId}/password-reset_resetPassword'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.ResetPasswordForToken", + "parameters": { + "token_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RestoreEmailRevision", + "qualifiedName": "HubspotMarketingApi.RestoreEmailRevision", + "fullyQualifiedName": "HubspotMarketingApi.RestoreEmailRevision@1.0.0", + "description": "Restore a previous revision of a marketing email.\n\nUse this tool to revert a marketing email to a specified previous revision. The current version is archived, and the restored revision is assigned a new version number.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The unique identifier for the marketing email you want to restore. This ID is required to specify which email's revision needs restoration.", + "enum": null, + "inferrable": true + }, + { + "name": "revision_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific revision of the email to be restored.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/emails/{emailId}/revisions/{revisionId}/restore'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.RestoreEmailRevision", + "parameters": { + "email_id": { + "value": "12345-67890", + "type": "string", + "required": true + }, + "revision_id": { + "value": "rev-09876", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RestoreEmailRevisionToDraft", + "qualifiedName": "HubspotMarketingApi.RestoreEmailRevisionToDraft", + "fullyQualifiedName": "HubspotMarketingApi.RestoreEmailRevisionToDraft@1.0.0", + "description": "Restore a previous email revision to draft state.\n\nUse this tool to revert a marketing email back to a previous revision, setting it to DRAFT. This will overwrite any current content in the draft for that email.", + "parameters": [ + { + "name": "email_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the marketing email whose revision is to be restored to draft. This should match the specific email ID format used by HubSpot.", + "enum": null, + "inferrable": true + }, + { + "name": "revision_id", + "type": "string", + "required": true, + "description": "The unique identifier of the email revision to be restored to draft state.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/emails/{emailId}/revisions/{revisionId}/restore-to-draft'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.RestoreEmailRevisionToDraft", + "parameters": { + "email_identifier": { + "value": "abc123-email-id", + "type": "string", + "required": true + }, + "revision_id": { + "value": "rev456-id", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveEmailDraft", + "qualifiedName": "HubspotMarketingApi.RetrieveEmailDraft", + "fullyQualifiedName": "HubspotMarketingApi.RetrieveEmailDraft@1.0.0", + "description": "Retrieve the draft version of a specified email.\n\nThis tool retrieves the draft version of a specified email by its ID from HubSpot Marketing. If no draft exists, the published version is returned instead. It should be used when you need to access the current draft or latest version of an email.", + "parameters": [ + { + "name": "email_id", + "type": "string", + "required": true, + "description": "The unique identifier of the email to retrieve the draft for. This ID is used to specify which email's draft or published version should be accessed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/emails/{emailId}/draft'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.RetrieveEmailDraft", + "parameters": { + "email_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchMarketingEventsByExternalId", + "qualifiedName": "HubspotMarketingApi.SearchMarketingEventsByExternalId", + "fullyQualifiedName": "HubspotMarketingApi.SearchMarketingEventsByExternalId@1.0.0", + "description": "Search for marketing events by external ID.\n\nThis tool retrieves all marketing events whose externalEventId matches the provided value. It returns object IDs and additional details for each matching event. Useful for finding all marketing events linked to a specific external ID after creation.", + "parameters": [ + { + "name": "external_event_id", + "type": "string", + "required": true, + "description": "The ID of the marketing event in the external event application used to search for matching events.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/marketing/v3/marketing-events/{externalEventId}/identifiers_searchPortalEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.SearchMarketingEventsByExternalId", + "parameters": { + "external_event_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendMarketingEmail", + "qualifiedName": "HubspotMarketingApi.SendMarketingEmail", + "fullyQualifiedName": "HubspotMarketingApi.SendMarketingEmail@1.0.0", + "description": "Send a template email to a specific recipient.\n\nThis tool sends a marketing email using a predefined template to a specified recipient via\nHubSpot. It's useful for automating email campaigns and reaching target audiences efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing-email", "transactional-email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v4/email/single-send'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.SendMarketingEmail", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"email_template_id\": \"12345\", \"recipient\": {\"email\": \"example@example.com\", \"name\": \"John Doe\"}, \"subject\": \"Welcome to our service!\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendTransactionalEmail", + "qualifiedName": "HubspotMarketingApi.SendTransactionalEmail", + "fullyQualifiedName": "HubspotMarketingApi.SendTransactionalEmail@1.0.0", + "description": "Send a transactional email asynchronously.\n\nUse this tool to send a transactional email asynchronously and obtain the status of the email\nsend with a statusId, which can be queried further using the Email Send Status API.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["transactional-email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/transactional/single-email/send_sendEmail'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.SendTransactionalEmail", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"email\":\"example@example.com\",\"subject\":\"Welcome to Our Service!\",\"body\":\"Thank you for signing up!\",\"recipient\":\"user@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnpublishMarketingEmail", + "qualifiedName": "HubspotMarketingApi.UnpublishMarketingEmail", + "fullyQualifiedName": "HubspotMarketingApi.UnpublishMarketingEmail@1.0.0", + "description": "Unpublish a HubSpot marketing email.\n\nThis tool is used to unpublish a specific email in HubSpot Marketing. It should be called when you want to deactivate or withdraw an email from being publicly available.", + "parameters": [ + { + "name": "email_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the email you wish to unpublish in HubSpot Marketing.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing-email", "transactional-email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/emails/{emailId}/unpublish'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.UnpublishMarketingEmail", + "parameters": { + "email_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCampaignBatch", + "qualifiedName": "HubspotMarketingApi.UpdateCampaignBatch", + "fullyQualifiedName": "HubspotMarketingApi.UpdateCampaignBatch@1.0.0", + "description": "Update a batch of marketing campaigns efficiently.\n\nUse this tool to update multiple marketing campaigns in a single request. The tool handles up to\n50 campaigns per request, and can reset property values when an empty string is provided.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/campaigns/batch/update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.UpdateCampaignBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"campaigns\":[{\"id\":\"12345\",\"name\":\"Campaign 1\",\"status\":\"ACTIVE\"},{\"id\":\"67890\",\"name\":\"Campaign 2\",\"status\":\"PAUSED\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCampaignBudget", + "qualifiedName": "HubspotMarketingApi.UpdateCampaignBudget", + "fullyQualifiedName": "HubspotMarketingApi.UpdateCampaignBudget@1.0.0", + "description": "Update a specific campaign budget item by ID.\n\nUse this tool to update a particular budget item in a marketing campaign by providing the campaign GUID and the budget ID.", + "parameters": [ + { + "name": "budget_amount", + "type": "number", + "required": true, + "description": "The amount to set for the budget item. This is a numerical value representing the budget in the specified currency.", + "enum": null, + "inferrable": true + }, + { + "name": "budget_id", + "type": "integer", + "required": true, + "description": "Unique identifier for the budget item to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "budget_item_name", + "type": "string", + "required": true, + "description": "The new name for the budget item. It should be a descriptive label that clearly identifies the budget item within the campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_guid", + "type": "string", + "required": true, + "description": "A unique identifier for the campaign. Use this to specify which campaign's budget item to update.", + "enum": null, + "inferrable": true + }, + { + "name": "priority_order", + "type": "integer", + "required": true, + "description": "Specify the order in which the budget item appears. Accepted values are integers.", + "enum": null, + "inferrable": true + }, + { + "name": "budget_item_description", + "type": "string", + "required": false, + "description": "A string to describe the budget item. Provide a brief explanation of what this budget is for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/marketing/v3/campaigns/{campaignGuid}/budget/{budgetId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.UpdateCampaignBudget", + "parameters": { + "budget_amount": { + "value": 15000, + "type": "integer", + "required": true + }, + "budget_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "budget_item_name": { + "value": "Q4 Marketing Campaign", + "type": "string", + "required": true + }, + "campaign_guid": { + "value": "abc123-def456-gh789-ijkl012", + "type": "string", + "required": true + }, + "priority_order": { + "value": 1, + "type": "integer", + "required": true + }, + "budget_item_description": { + "value": "Budget allocated for Q4 digital advertising.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCampaignProperties", + "qualifiedName": "HubspotMarketingApi.UpdateCampaignProperties", + "fullyQualifiedName": "HubspotMarketingApi.UpdateCampaignProperties@1.0.0", + "description": "Update properties of a HubSpot marketing campaign.\n\n Use this tool to perform a partial update of a marketing campaign in HubSpot by providing the\n campaignGuid and the new property values. Note that only existing, mutable properties can be\n updated; read-only and non-existent properties will cause an error. Passing an empty string will\n reset a property's value.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "campaign_uuid", + "type": "string", + "required": false, + "description": "Unique identifier for the campaign, formatted as a UUID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/marketing/v3/campaigns/{campaignGuid}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.UpdateCampaignProperties", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "campaign_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Campaign Name\", \"status\":\"ACTIVE\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCampaignSpend", + "qualifiedName": "HubspotMarketingApi.UpdateCampaignSpend", + "fullyQualifiedName": "HubspotMarketingApi.UpdateCampaignSpend@1.0.0", + "description": "Update a specific campaign spend item by ID.\n\nUse this tool to modify the details of a particular spend item in a marketing campaign by providing the campaign and spend identifiers.", + "parameters": [ + { + "name": "campaign_guid", + "type": "string", + "required": true, + "description": "Unique identifier for the campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "spend_amount", + "type": "number", + "required": true, + "description": "The new amount value for the campaign spend. Specify this as a number representing the monetary value.", + "enum": null, + "inferrable": true + }, + { + "name": "spend_identifier", + "type": "integer", + "required": true, + "description": "Unique identifier for the spend item in the campaign to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "spend_item_name", + "type": "string", + "required": true, + "description": "The new name for the campaign spend item. This should be a descriptive string defining the spend item.", + "enum": null, + "inferrable": true + }, + { + "name": "spend_order", + "type": "integer", + "required": true, + "description": "The order or sequence number of the spend item within the campaign. It determines the priority or arrangement of the spend items.", + "enum": null, + "inferrable": true + }, + { + "name": "spend_item_description", + "type": "string", + "required": false, + "description": "Details or notes about the campaign spend item.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["marketing.campaigns.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/marketing/v3/campaigns/{campaignGuid}/spend/{spendId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.UpdateCampaignSpend", + "parameters": { + "campaign_guid": { + "value": "abc-123-def-456", + "type": "string", + "required": true + }, + "spend_amount": { + "value": 2500.75, + "type": "integer", + "required": true + }, + "spend_identifier": { + "value": 987654, + "type": "integer", + "required": true + }, + "spend_item_name": { + "value": "Social Media Ads", + "type": "string", + "required": true + }, + "spend_order": { + "value": 1, + "type": "integer", + "required": true + }, + "spend_item_description": { + "value": "Budget allocated for social media advertising.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEmailDraft", + "qualifiedName": "HubspotMarketingApi.UpdateEmailDraft", + "fullyQualifiedName": "HubspotMarketingApi.UpdateEmailDraft@1.0.0", + "description": "Create or update the draft version of a marketing email.\n\n This tool creates or updates the draft version of a marketing email. If no draft exists, it\n creates a draft from the current live email and applies changes. Use this tool to modify email\n drafts before finalizing them.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "email_id", + "type": "string", + "required": false, + "description": "The unique identifier of the marketing email to update or create a draft for. This is required to specify which email draft you are modifying. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/marketing/v3/emails/{emailId}/draft'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.UpdateEmailDraft", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "email_id": { + "value": "12345abcde", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"subject\":\"New Offer Available!\",\"content\":\"Check out our amazing new offers that you won't want to miss!\",\"recipients\":[\"example@example.com\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubspotForm", + "qualifiedName": "HubspotMarketingApi.UpdateHubspotForm", + "fullyQualifiedName": "HubspotMarketingApi.UpdateHubspotForm@1.0.0", + "description": "Update all fields of a HubSpot form.\n\n Use this tool to update every field in a specified HubSpot form by replacing the current form\n definition.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "hubspot_form_id", + "type": "string", + "required": false, + "description": "The unique identifier for the HubSpot form to update. This ID specifies which form's fields will be replaced. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["forms"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/marketing/v3/forms/{formId}_replace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.UpdateHubspotForm", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "hubspot_form_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"fields\":[{\"name\":\"email\",\"label\":\"Email Address\",\"required\":true},{\"name\":\"first_name\",\"label\":\"First Name\",\"required\":false},{\"name\":\"last_name\",\"label\":\"Last Name\",\"required\":false}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubspotMarketingForm", + "qualifiedName": "HubspotMarketingApi.UpdateHubspotMarketingForm", + "fullyQualifiedName": "HubspotMarketingApi.UpdateHubspotMarketingForm@1.0.0", + "description": "Update components of a HubSpot marketing form.\n\n Use this tool to modify specific components of an existing marketing form in HubSpot by\n providing the form ID. Ideal for updating form details without creating a new form.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "form_id", + "type": "string", + "required": false, + "description": "The unique identifier for the form to update. Must be provided to specify which form's components to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["forms"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/marketing/v3/forms/{formId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.UpdateHubspotMarketingForm", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "form_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"fields\":[{\"name\":\"email\",\"label\":\"Email Address\",\"required\":true},{\"name\":\"first_name\",\"label\":\"First Name\",\"required\":false}]} ", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMarketingEmailProperties", + "qualifiedName": "HubspotMarketingApi.UpdateMarketingEmailProperties", + "fullyQualifiedName": "HubspotMarketingApi.UpdateMarketingEmailProperties@1.0.0", + "description": "Change properties of a marketing email.\n\n Use this tool to update properties of an existing marketing email by specifying the email ID. It\n helps in modifying content or settings of your marketing campaigns.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "email_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the marketing email to be updated. Required to specify which email's properties are being changed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["content"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/marketing/v3/emails/{emailId}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.UpdateMarketingEmailProperties", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "email_identifier": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"subject\":\"New Subject Line\",\"body\":\"Updated email content here.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMarketingEventDetails", + "qualifiedName": "HubspotMarketingApi.UpdateMarketingEventDetails", + "fullyQualifiedName": "HubspotMarketingApi.UpdateMarketingEventDetails@1.0.0", + "description": "Update details of an existing marketing event.\n\n Use this tool to update the details of an existing marketing event identified by its external\n event ID. It is applicable only for events created by the same app.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "external_account_id", + "type": "string", + "required": false, + "description": "The account ID associated with this marketing event in the external event application. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "external_event_id", + "type": "string", + "required": false, + "description": "The unique identifier of the marketing event in the external event application. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patch-/marketing/v3/marketing-events/events/{externalEventId}_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.UpdateMarketingEventDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "external_account_id": { + "value": "12345", + "type": "string", + "required": false + }, + "external_event_id": { + "value": "event-67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"event_name\": \"Updated Marketing Event\", \"event_date\": \"2023-10-15\", \"location\": \"Online\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMarketingEventsBatch", + "qualifiedName": "HubspotMarketingApi.UpdateMarketingEventsBatch", + "fullyQualifiedName": "HubspotMarketingApi.UpdateMarketingEventsBatch@1.0.0", + "description": "Update multiple marketing events by objectId.\n\nThis tool updates multiple marketing events in the HubSpot portal based on their objectId, if\nthey exist. It should be called when you need to batch update event details efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/marketing-events/batch/update_updateByObjectId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.UpdateMarketingEventsBatch", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"events\":[{\"objectId\":\"12345\",\"name\":\"Updated Event 1\",\"date\":\"2023-10-01\",\"location\":\"New Venue 1\"},{\"objectId\":\"67890\",\"name\":\"Updated Event 2\",\"date\":\"2023-10-02\",\"location\":\"New Venue 2\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertMarketingEvent", + "qualifiedName": "HubspotMarketingApi.UpsertMarketingEvent", + "fullyQualifiedName": "HubspotMarketingApi.UpsertMarketingEvent@1.0.0", + "description": "Upsert a marketing event in HubSpot.\n\n Upserts a marketing event using the provided external event ID. If an event with that ID exists,\n it updates the event; otherwise, it creates a new one.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path\n parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "external_event_id", + "type": "string", + "required": false, + "description": "The ID of the marketing event in the external application. Used to upsert the event in HubSpot. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/marketing/v3/marketing-events/events/{externalEventId}_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.UpsertMarketingEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "external_event_id": { + "value": "event_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Product Launch\",\"date\":\"2023-10-15T10:00:00Z\",\"location\":\"Online\",\"description\":\"Launch event for new product line.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertMarketingEvents", + "qualifiedName": "HubspotMarketingApi.UpsertMarketingEvents", + "fullyQualifiedName": "HubspotMarketingApi.UpsertMarketingEvents@1.0.0", + "description": "Upsert multiple marketing events in HubSpot.\n\nUpserts multiple marketing events. Updates existing events with the same ID or creates new ones\nif they don't exist. Only events created by the same app can be updated.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.marketing_events.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/marketing/v3/marketing-events/events/upsert_upsert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMarketingApi.UpsertMarketingEvents", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"events\":[{\"id\":\"event_001\",\"name\":\"Launch Campaign\",\"date\":\"2023-10-01\",\"details\":\"Details about the launch campaign.\"},{\"id\":\"event_002\",\"name\":\"Webinar\",\"date\":\"2023-10-10\",\"details\":\"Details about the webinar.\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The HubspotMarketingApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotMarketingApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider.", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:36:10.385Z", + "summary": "This documentation describes the HubspotMarketingApi toolkit, which allows LLMs to directly interact with the HubSpot Marketing API to manage and analyze marketing campaigns effectively. \n\n**Capabilities**\n- Create, update, and delete marketing campaigns, forms, emails, and events.\n- Manage budget items associated with campaigns.\n- Record and analyze event participation and contact interactions.\n- Retrieve detailed metrics and statistics for marketing activities.\n\n**OAuth**\n- Provider: Unknown\n- Scopes: content, crm.objects.marketing_events.read, crm.objects.marketing_events.write, forms, marketing-email, marketing.campaigns.read, marketing.campaigns.revenue.read, marketing.campaigns.write, transactional-email." +} diff --git a/data/toolkits/hubspotmeetingsapi.json b/data/toolkits/hubspotmeetingsapi.json new file mode 100644 index 000000000..a15d579c2 --- /dev/null +++ b/data/toolkits/hubspotmeetingsapi.json @@ -0,0 +1,316 @@ +{ + "id": "HubspotMeetingsApi", + "label": "HubSpot Meetings API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the Hubspot Meetings API", + "metadata": { + "category": "sales", + "iconUrl": "https://design-system.arcade.dev/icons/hubspot.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/sales/hubspot-meetings-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": [ + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.commercepayments.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.companies.write", + "crm.objects.contacts.highly_sensitive.write.v2", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.contacts.write", + "crm.objects.courses.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.goals.write", + "crm.objects.line_items.write", + "crm.objects.listings.write", + "crm.objects.products.write", + "crm.objects.services.write", + "scheduler.meetings.meeting-link.read", + "tickets", + "tickets.highly_sensitive.v2", + "tickets.sensitive.v2" + ] + }, + "tools": [ + { + "name": "BookHubspotMeeting", + "qualifiedName": "HubspotMeetingsApi.BookHubspotMeeting", + "fullyQualifiedName": "HubspotMeetingsApi.BookHubspotMeeting@1.0.0", + "description": "Book a meeting using Hubspot's scheduling feature.\n\nUse this tool to book a meeting for a specified meeting page through Hubspot. It is ideal for scheduling meetings directly through Hubspot's platform.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.listings.write", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.goals.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.courses.write", + "crm.objects.products.write", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.commercepayments.write", + "crm.objects.services.write", + "crm.objects.contacts.highly_sensitive.write.v2", + "tickets", + "tickets.sensitive.v2", + "tickets.highly_sensitive.v2", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.companies.write", + "crm.objects.contacts.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.line_items.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/scheduler/v3/meetings/meeting-links/book'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMeetingsApi.BookHubspotMeeting", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"meetingPageId\": \"123456\", \"startTime\": \"2023-10-15T10:00:00Z\", \"endTime\": \"2023-10-15T11:00:00Z\", \"attendees\": [{\"email\": \"example@domain.com\"}], \"topic\": \"Project Discussion\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMeetingSchedulerDetails", + "qualifiedName": "HubspotMeetingsApi.GetMeetingSchedulerDetails", + "fullyQualifiedName": "HubspotMeetingsApi.GetMeetingSchedulerDetails@1.0.0", + "description": "Get necessary details for setting up a meeting scheduler.\n\nUse this tool to obtain the essential information required to set up a meeting scheduler via Hubspot. It retrieves the initial data needed to schedule meetings.", + "parameters": [ + { + "name": "meeting_slug", + "type": "string", + "required": true, + "description": "A unique identifier for the meeting link, used to retrieve specific scheduler details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["scheduler.meetings.meeting-link.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/scheduler/v3/meetings/meeting-links/book/{slug}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMeetingsApi.GetMeetingSchedulerDetails", + "parameters": { + "meeting_slug": { + "value": "team-sync-2023", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetNextMeetingAvailability", + "qualifiedName": "HubspotMeetingsApi.GetNextMeetingAvailability", + "fullyQualifiedName": "HubspotMeetingsApi.GetNextMeetingAvailability@1.0.0", + "description": "Fetch the next availability times for a meeting page.\n\nThis tool retrieves the upcoming available time slots for booking a meeting on a specified page using a given slug. It should be called when a user wants to check or display free time slots for a meeting.", + "parameters": [ + { + "name": "availability_page_slug", + "type": "string", + "required": true, + "description": "The unique slug identifier for the meeting page to check available time slots.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["scheduler.meetings.meeting-link.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/scheduler/v3/meetings/meeting-links/book/availability-page/{slug}'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMeetingsApi.GetNextMeetingAvailability", + "parameters": { + "availability_page_slug": { + "value": "next-available-meeting", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListMeetingSchedulingPages", + "qualifiedName": "HubspotMeetingsApi.ListMeetingSchedulingPages", + "fullyQualifiedName": "HubspotMeetingsApi.ListMeetingSchedulingPages@1.0.0", + "description": "Retrieve a paged list of meeting scheduling links.\n\nUse this tool to get a paged list of meeting scheduling pages from Hubspot. It is useful when you need to see or manage the scheduling links available.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["scheduler.meetings.meeting-link.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/scheduler/v3/meetings/meeting-links'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMeetingsApi.ListMeetingSchedulingPages", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ScheduleMeetingHubspot", + "qualifiedName": "HubspotMeetingsApi.ScheduleMeetingHubspot", + "fullyQualifiedName": "HubspotMeetingsApi.ScheduleMeetingHubspot@1.0.0", + "description": "Schedule a meeting using Hubspot's calendar integration.\n\nThis tool allows you to schedule meetings through Hubspot's external calendar integration, streamlining event creation and ensuring synchronization with Hubspot's scheduling system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "crm.objects.listings.write", + "crm.objects.companies.sensitive.write.v2", + "crm.objects.deals.write", + "crm.objects.deals.sensitive.write.v2", + "crm.objects.goals.write", + "crm.objects.companies.highly_sensitive.write.v2", + "crm.objects.appointments.write", + "crm.objects.courses.write", + "crm.objects.products.write", + "crm.objects.appointments.sensitive.write.v2", + "crm.objects.commercepayments.write", + "crm.objects.services.write", + "crm.objects.contacts.highly_sensitive.write.v2", + "tickets", + "tickets.sensitive.v2", + "tickets.highly_sensitive.v2", + "crm.objects.contacts.sensitive.write.v2", + "crm.objects.companies.write", + "crm.objects.contacts.write", + "crm.objects.deals.highly_sensitive.write.v2", + "crm.objects.line_items.write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/scheduler/v3/meetings/calendar'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotMeetingsApi.ScheduleMeetingHubspot", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"meeting_title\": \"Team Sync\", \"start_time\": \"2023-10-10T10:00:00Z\", \"end_time\": \"2023-10-10T11:00:00Z\", \"participants\": [{\"email\": \"example@example.com\"}], \"location\": \"Zoom\", \"agenda\": \"Discuss project updates\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The HubspotMeetingsApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotMeetingsApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider.", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:36:16.205Z", + "summary": "Arcade Toolkit for HubSpot Meetings API enables seamless interaction with HubSpot's scheduling features, allowing developers to automate meeting management directly through the platform.\n\n**Capabilities** \n- Schedule and manage meetings with calendar integration \n- Retrieve upcoming availability for booking \n- Get details for setting up meeting schedulers \n- List available meeting scheduling pages \n- Book meetings using HubSpot's APIs \n\n**OAuth** \n- Provider: Unknown \n- Scopes: Multiple CRM-related appointment and sensitive data scopes \n\n**Secrets** \n- No secrets or API keys are required for this toolkit." +} diff --git a/data/toolkits/hubspotusersapi.json b/data/toolkits/hubspotusersapi.json new file mode 100644 index 000000000..34647e283 --- /dev/null +++ b/data/toolkits/hubspotusersapi.json @@ -0,0 +1,491 @@ +{ + "id": "HubspotUsersApi", + "label": "HubSpot Users API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the Hubspot Users API", + "metadata": { + "category": "sales", + "iconUrl": "https://design-system.arcade.dev/icons/hubspot.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/sales/hubspot-users-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": [ + "crm.objects.users.read", + "crm.objects.users.write", + "settings.users.read", + "settings.users.teams.read", + "settings.users.write" + ] + }, + "tools": [ + { + "name": "CreateHubspotUser", + "qualifiedName": "HubspotUsersApi.CreateHubspotUser", + "fullyQualifiedName": "HubspotUsersApi.CreateHubspotUser@1.0.0", + "description": "Create a new user in HubSpot with basic permissions.\n\nThis tool creates a new user in HubSpot with minimal permissions (contacts-base). The user will receive a welcome email to set a password and log in.", + "parameters": [ + { + "name": "user_email", + "type": "string", + "required": true, + "description": "The email address of the user to be created in HubSpot.", + "enum": null, + "inferrable": true + }, + { + "name": "additional_team_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of IDs representing the user's additional teams.", + "enum": null, + "inferrable": true + }, + { + "name": "last_name", + "type": "string", + "required": false, + "description": "The last name of the user to be created in HubSpot.", + "enum": null, + "inferrable": true + }, + { + "name": "primary_team_id", + "type": "string", + "required": false, + "description": "The identifier for the user's primary team in HubSpot.", + "enum": null, + "inferrable": true + }, + { + "name": "send_welcome_email", + "type": "boolean", + "required": false, + "description": "Set to true to send a welcome email prompting the user to set a password and log in.", + "enum": null, + "inferrable": true + }, + { + "name": "user_first_name", + "type": "string", + "required": false, + "description": "The first name of the user to be created in HubSpot.", + "enum": null, + "inferrable": true + }, + { + "name": "user_role_id", + "type": "string", + "required": false, + "description": "A string representing the new user's role within HubSpot.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.write", "settings.users.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-/settings/v3/users/_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotUsersApi.CreateHubspotUser", + "parameters": { + "user_email": { + "value": "john.doe@example.com", + "type": "string", + "required": true + }, + "additional_team_ids": { + "value": ["team_1", "team_2"], + "type": "array", + "required": false + }, + "last_name": { + "value": "Doe", + "type": "string", + "required": false + }, + "primary_team_id": { + "value": "team_1", + "type": "string", + "required": false + }, + "send_welcome_email": { + "value": true, + "type": "boolean", + "required": false + }, + "user_first_name": { + "value": "John", + "type": "string", + "required": false + }, + "user_role_id": { + "value": "role_1", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchHubspotUsersList", + "qualifiedName": "HubspotUsersApi.FetchHubspotUsersList", + "fullyQualifiedName": "HubspotUsersApi.FetchHubspotUsersList@1.0.0", + "description": "Retrieve a list of users from a HubSpot account.\n\nUse this tool to get a list of users associated with a specific HubSpot account. It is useful for managing or viewing user information within the account.", + "parameters": [ + { + "name": "page_cursor_after", + "type": "string", + "required": false, + "description": "A string token used to retrieve the next page of users, if more than 100 users are available.", + "enum": null, + "inferrable": true + }, + { + "name": "user_retrieval_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of users to retrieve from the HubSpot account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.read", "settings.users.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/settings/v3/users/_getPage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotUsersApi.FetchHubspotUsersList", + "parameters": { + "page_cursor_after": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "user_retrieval_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAccountRoles", + "qualifiedName": "HubspotUsersApi.GetAccountRoles", + "fullyQualifiedName": "HubspotUsersApi.GetAccountRoles@1.0.0", + "description": "Retrieve all user roles from an account.\n\nThis tool is called to fetch and list all the roles available on a specific account from Hubspot.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.read", "settings.users.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/settings/v3/users/roles_getAll'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotUsersApi.GetAccountRoles", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveUserHubspot", + "qualifiedName": "HubspotUsersApi.RemoveUserHubspot", + "fullyQualifiedName": "HubspotUsersApi.RemoveUserHubspot@1.0.0", + "description": "Remove a user from HubSpot using their ID or email.\n\nThis tool removes a user from HubSpot, identified by either their user ID or email. It should be called when a user needs to be permanently deleted or archived from the HubSpot system.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "Identifier of the user to remove from HubSpot. It can be a user ID or an email address.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier_property", + "type": "string", + "required": false, + "description": "Specify whether to use `USER_ID` or `EMAIL` to identify the user.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.write", "settings.users.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-/settings/v3/users/{userId}_archive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotUsersApi.RemoveUserHubspot", + "parameters": { + "user_identifier": { + "value": "jane.doe@example.com", + "type": "string", + "required": true + }, + "user_identifier_property": { + "value": "EMAIL", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveHubspotUserById", + "qualifiedName": "HubspotUsersApi.RetrieveHubspotUserById", + "fullyQualifiedName": "HubspotUsersApi.RetrieveHubspotUserById@1.0.0", + "description": "Retrieve Hubspot user details using user ID or email.\n\nCall this tool to retrieve detailed information about a Hubspot user identified by their user ID or optionally by email.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "Identifier of the Hubspot user to retrieve. It can be the user ID or email based on the `id_property`.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier_property", + "type": "string", + "required": false, + "description": "Specifies the property to identify the user: `USER_ID` (default) or `EMAIL`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.read", "settings.users.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/settings/v3/users/{userId}_getById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotUsersApi.RetrieveHubspotUserById", + "parameters": { + "user_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "user_identifier_property": { + "value": "USER_ID", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHubspotUserInfo", + "qualifiedName": "HubspotUsersApi.UpdateHubspotUserInfo", + "fullyQualifiedName": "HubspotUsersApi.UpdateHubspotUserInfo@1.0.0", + "description": "Update information for a specified Hubspot user.\n\nThis tool modifies the information of a Hubspot user identified by `userId`. It can be called when you need to update user data using their ID or email.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the user. Can be the user's ID or email, based on the `id_property`.", + "enum": null, + "inferrable": true + }, + { + "name": "additional_teams_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings representing the IDs of the user's additional teams.", + "enum": null, + "inferrable": true + }, + { + "name": "first_name", + "type": "string", + "required": false, + "description": "The first name of the user to update. This should be a string value.", + "enum": null, + "inferrable": true + }, + { + "name": "last_name", + "type": "string", + "required": false, + "description": "The last name of the user to be modified. This is the new value of the user's last name.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier_property", + "type": "string", + "required": false, + "description": "Specifies if the user is identified by 'USER_ID' or 'EMAIL'. Default is 'USER_ID'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_primary_team_id", + "type": "string", + "required": false, + "description": "The unique ID for the user's primary team.", + "enum": null, + "inferrable": true + }, + { + "name": "user_role_id", + "type": "string", + "required": false, + "description": "The ID representing the user's role. Used to assign the user a specific role within the system.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["crm.objects.users.write", "settings.users.write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-/settings/v3/users/{userId}_replace'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotUsersApi.UpdateHubspotUserInfo", + "parameters": { + "user_identifier": { + "value": "user123@example.com", + "type": "string", + "required": true + }, + "additional_teams_ids": { + "value": ["team1", "team2"], + "type": "array", + "required": false + }, + "first_name": { + "value": "John", + "type": "string", + "required": false + }, + "last_name": { + "value": "Doe", + "type": "string", + "required": false + }, + "user_identifier_property": { + "value": "EMAIL", + "type": "string", + "required": false + }, + "user_primary_team_id": { + "value": "primary_team", + "type": "string", + "required": false + }, + "user_role_id": { + "value": "admin", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ViewAccountTeams", + "qualifiedName": "HubspotUsersApi.ViewAccountTeams", + "fullyQualifiedName": "HubspotUsersApi.ViewAccountTeams@1.0.0", + "description": "Retrieve all teams for the account.\n\nCall this tool to view all teams associated with a specific account in Hubspot. Useful for managing or reviewing team structures.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["settings.users.teams.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-/settings/v3/users/teams_getAll'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "HubspotUsersApi.ViewAccountTeams", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The HubspotUsersApi MCP Server uses the Auth Provider with id `arcade-hubspot` to connect to users' HubspotUsersApi accounts. In order to use the MCP Server, you will need to configure the `arcade-hubspot` auth provider.", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:36:18.543Z", + "summary": "Arcade's HubspotUsersApi toolkit allows developers to interact seamlessly with the HubSpot Users API, enabling efficient management of user data and roles within HubSpot accounts.\n\n**Capabilities** \n- Create, retrieve, update, and remove users in HubSpot. \n- Fetch user roles and teams associated with specific accounts. \n- Manage user permissions effectively through targeted API calls.\n\n**OAuth** \n- This toolkit utilizes OAuth2 for authentication, requiring the following scopes: crm.objects.users.read, crm.objects.users.write, settings.users.read, settings.users.teams.read, settings.users.write." +} diff --git a/data/toolkits/imgflip.json b/data/toolkits/imgflip.json new file mode 100644 index 000000000..92307d6bd --- /dev/null +++ b/data/toolkits/imgflip.json @@ -0,0 +1,263 @@ +{ + "id": "Imgflip", + "label": "Imgflip", + "version": "1.0.1", + "description": "Arcade tools designed for LLMs to interact with Imgflip", + "metadata": { + "category": "entertainment", + "iconUrl": "https://design-system.arcade.dev/icons/imgflip.svg", + "isBYOC": true, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/entertainment/imgflip", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "CreateMeme", + "qualifiedName": "Imgflip.CreateMeme", + "fullyQualifiedName": "Imgflip.CreateMeme@1.0.1", + "description": "Create a custom meme using an Imgflip template\n\nThis tool creates a custom meme by adding your text to an existing\nmeme template. You can specify top and bottom text, choose fonts,\nand control text sizing.", + "parameters": [ + { + "name": "template_id", + "type": "string", + "required": true, + "description": "The meme template ID to use for creation. You can get this from get_popular_memes.", + "enum": null, + "inferrable": true + }, + { + "name": "top_text", + "type": "string", + "required": false, + "description": "Text to display at the top of the meme. Leave empty if not needed.", + "enum": null, + "inferrable": true + }, + { + "name": "bottom_text", + "type": "string", + "required": false, + "description": "Text to display at the bottom of the meme. Leave empty if not needed.", + "enum": null, + "inferrable": true + }, + { + "name": "font", + "type": "string", + "required": false, + "description": "Font family to use for the text", + "enum": [ + "impact", + "arial", + "roboto", + "open-sans", + "lato", + "montserrat", + "source-sans-pro", + "ubuntu", + "nunito", + "poppins", + "inter", + "work-sans" + ], + "inferrable": true + }, + { + "name": "max_font_size", + "type": "integer", + "required": false, + "description": "Maximum font size for the text. Defaults to 50.", + "enum": null, + "inferrable": true + }, + { + "name": "no_watermark", + "type": "boolean", + "required": false, + "description": "Remove the Imgflip watermark. Defaults to False.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["IMGFLIP_USERNAME", "IMGFLIP_PASSWORD"], + "secretsInfo": [ + { + "name": "IMGFLIP_USERNAME", + "type": "unknown" + }, + { + "name": "IMGFLIP_PASSWORD", + "type": "password" + } + ], + "output": { + "type": "json", + "description": "Created meme information with URLs" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Imgflip.CreateMeme", + "parameters": { + "template_id": { + "value": "123456", + "type": "string", + "required": true + }, + "top_text": { + "value": "When you realize", + "type": "string", + "required": false + }, + "bottom_text": { + "value": "it's Monday again", + "type": "string", + "required": false + }, + "font": { + "value": "impact", + "type": "string", + "required": false + }, + "max_font_size": { + "value": 45, + "type": "integer", + "required": false + }, + "no_watermark": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPopularMemes", + "qualifiedName": "Imgflip.GetPopularMemes", + "fullyQualifiedName": "Imgflip.GetPopularMemes@1.0.1", + "description": "Get popular meme templates from Imgflip\n\nThis tool retrieves a list of popular meme templates that can be used\nto create custom memes. These templates are ordered by popularity\nbased on how many times they've been captioned.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of meme templates to return. Defaults to 20.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["IMGFLIP_USERNAME", "IMGFLIP_PASSWORD"], + "secretsInfo": [ + { + "name": "IMGFLIP_USERNAME", + "type": "unknown" + }, + { + "name": "IMGFLIP_PASSWORD", + "type": "password" + } + ], + "output": { + "type": "json", + "description": "List of popular meme templates" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Imgflip.GetPopularMemes", + "parameters": { + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchMemes", + "qualifiedName": "Imgflip.SearchMemes", + "fullyQualifiedName": "Imgflip.SearchMemes@1.0.1", + "description": "Search for meme templates by query\n\nThis tool searches through Imgflip's database of over 1 million meme templates\nto find ones that match your search query.\n\nWhat this tool provides:\n- Search results matching your query\n- Template information including IDs, names, and URLs\n- Caption count to show popularity\n- Ready-to-use template IDs for meme creation\n\nWhen to use this tool:\n- When you're looking for specific meme types or themes\n- When you want to find memes related to particular topics\n- When you need a specific meme format that's not in popular memes\n- When you want to discover niche or specialized meme templates\n\nWhen NOT to use this tool:\n- Do NOT use this if you just want popular memes (use get_popular_memes instead)\n- Do NOT use this if you want to create a meme (use create_meme instead)", + "parameters": [ + { + "name": "query", + "type": "string", + "required": true, + "description": "Search query to find meme templates. Be specific for better results.", + "enum": null, + "inferrable": true + }, + { + "name": "include_nsfw", + "type": "boolean", + "required": false, + "description": "Include not-safe-for-work memes in search results. Defaults to False.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of meme templates to return. Defaults to 20.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["IMGFLIP_USERNAME", "IMGFLIP_PASSWORD"], + "secretsInfo": [ + { + "name": "IMGFLIP_USERNAME", + "type": "unknown" + }, + { + "name": "IMGFLIP_PASSWORD", + "type": "password" + } + ], + "output": { + "type": "json", + "description": "Search results for meme templates" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Imgflip.SearchMemes", + "parameters": { + "query": { + "value": "cats", + "type": "string", + "required": true + }, + "include_nsfw": { + "value": false, + "type": "boolean", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:36:22.738Z", + "summary": "Arcade provides a toolkit for seamless interaction with Imgflip, empowering developers to create and manage custom memes efficiently. Users can leverage powerful tools to search, retrieve, and create memes from a vast database.\n\n**Capabilities**\n- Create personalized memes using various templates.\n- Retrieve a list of trending meme templates.\n- Search over 1 million templates based on specific queries.\n- Access detailed template information including popularity metrics.\n\n**Secrets**\n- Use IMGFLIP_USERNAME and IMGFLIP_PASSWORD for authentication needs, allowing secure access to the Imgflip platform." +} diff --git a/data/toolkits/index.json b/data/toolkits/index.json new file mode 100644 index 000000000..b1c92f3dc --- /dev/null +++ b/data/toolkits/index.json @@ -0,0 +1,856 @@ +{ + "generatedAt": "2026-01-26T19:59:55.801Z", + "version": "1.0.0", + "toolkits": [ + { + "id": "AirtableApi", + "label": "Airtable API", + "version": "4.0.0", + "category": "productivity", + "toolCount": 96, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "ArcadeEngineApi", + "label": "Arcade Engine API", + "version": "1.0.0", + "category": "development", + "toolCount": 29, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "Asana", + "label": "Asana", + "version": "1.1.1", + "category": "productivity", + "toolCount": 19, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "AsanaApi", + "label": "Asana API", + "version": "1.0.0", + "category": "productivity", + "toolCount": 199, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "AshbyApi", + "label": "Ashby API", + "version": "2.0.0", + "category": "productivity", + "toolCount": 141, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "BoxApi", + "label": "Box API", + "version": "1.0.0", + "category": "productivity", + "toolCount": 188, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "Brightdata", + "label": "Bright Data", + "version": "0.2.0", + "category": "development", + "toolCount": 3, + "authType": "none", + "type": "community" + }, + { + "id": "CalendlyApi", + "label": "Calendly API", + "version": "3.0.0", + "category": "productivity", + "toolCount": 51, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "Clickup", + "label": "ClickUp", + "version": "1.1.1", + "category": "productivity", + "toolCount": 24, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "ClickupApi", + "label": "ClickUp API", + "version": "1.0.0", + "category": "productivity", + "toolCount": 134, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "CodeSandbox", + "label": "Codesandbox", + "version": "2.0.1", + "category": "development", + "toolCount": 2, + "authType": "none", + "type": "arcade" + }, + { + "id": "ComplexTools", + "label": "ComplexTools", + "version": "0.1.0", + "category": "development", + "toolCount": 6, + "authType": "none" + }, + { + "id": "Confluence", + "label": "Confluence", + "version": "2.2.2", + "category": "productivity", + "toolCount": 14, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "CursorAgentsApi", + "label": "Cursor Agents API", + "version": "0.1.1", + "category": "development", + "toolCount": 7, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "CustomerioApi", + "label": "Customer.io API", + "version": "1.0.0", + "category": "customer-support", + "toolCount": 115, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "CustomerioPipelinesApi", + "label": "Customer.io Pipelines API", + "version": "1.0.0", + "category": "customer-support", + "toolCount": 7, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "CustomerioTrackApi", + "label": "Customer.io Track API", + "version": "1.0.0", + "category": "customer-support", + "toolCount": 17, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "DatadogApi", + "label": "Datadog API", + "version": "2.0.0", + "category": "development", + "toolCount": 588, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "Deepwiki", + "label": "Deepwiki", + "version": "0.0.1", + "category": "development", + "toolCount": 3, + "authType": "none" + }, + { + "id": "Dropbox", + "label": "Dropbox", + "version": "1.0.1", + "category": "productivity", + "toolCount": 3, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "E2b", + "label": "E2B", + "version": "3.0.1", + "category": "development", + "toolCount": 2, + "authType": "none", + "type": "arcade" + }, + { + "id": "ExaApi", + "label": "Exa API", + "version": "2.0.0", + "category": "search", + "toolCount": 45, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "Figma", + "label": "Figma", + "version": "0.1.0", + "category": "development", + "toolCount": 15, + "authType": "oauth2" + }, + { + "id": "FigmaApi", + "label": "Figma API", + "version": "1.0.0", + "category": "productivity", + "toolCount": 43, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "Firecrawl", + "label": "Firecrawl", + "version": "3.0.1", + "category": "development", + "toolCount": 6, + "authType": "none", + "type": "arcade" + }, + { + "id": "FreshserviceApi", + "label": "Freshservice API", + "version": "3.0.0", + "category": "customer-support", + "toolCount": 214, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "Github", + "label": "GitHub", + "version": "2.0.1", + "category": "development", + "toolCount": 44, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "GithubApi", + "label": "GitHub API", + "version": "1.0.0", + "category": "development", + "toolCount": 818, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "Gmail", + "label": "Gmail", + "version": "4.1.0", + "category": "productivity", + "toolCount": 18, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "Google", + "label": "Google", + "version": "2.0.2", + "category": "development", + "toolCount": 37, + "authType": "oauth2" + }, + { + "id": "GoogleCalendar", + "label": "Google Calendar", + "version": "3.2.2", + "category": "productivity", + "toolCount": 7, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "GoogleContacts", + "label": "Google Contacts", + "version": "3.4.0", + "category": "productivity", + "toolCount": 5, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "GoogleDocs", + "label": "Google Docs", + "version": "5.0.1", + "category": "productivity", + "toolCount": 13, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "GoogleDrive", + "label": "Google Drive", + "version": "5.1.0", + "category": "productivity", + "toolCount": 11, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "GoogleFinance", + "label": "Google Finance", + "version": "3.1.2", + "category": "search", + "toolCount": 2, + "authType": "none", + "type": "arcade" + }, + { + "id": "GoogleFlights", + "label": "Google Flights", + "version": "3.1.2", + "category": "search", + "toolCount": 1, + "authType": "none", + "type": "arcade" + }, + { + "id": "GoogleHotels", + "label": "Google Hotels", + "version": "3.1.2", + "category": "search", + "toolCount": 1, + "authType": "none", + "type": "arcade" + }, + { + "id": "GoogleJobs", + "label": "Google Jobs", + "version": "3.1.2", + "category": "search", + "toolCount": 1, + "authType": "none", + "type": "arcade" + }, + { + "id": "GoogleMaps", + "label": "Google Maps", + "version": "3.1.2", + "category": "search", + "toolCount": 2, + "authType": "none", + "type": "arcade" + }, + { + "id": "GoogleNews", + "label": "Google News", + "version": "3.1.2", + "category": "search", + "toolCount": 1, + "authType": "none", + "type": "arcade" + }, + { + "id": "GoogleSearch", + "label": "Google Search", + "version": "3.1.2", + "category": "search", + "toolCount": 1, + "authType": "none", + "type": "arcade" + }, + { + "id": "GoogleSheets", + "label": "Google Sheets", + "version": "5.1.0", + "category": "productivity", + "toolCount": 9, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "GoogleShopping", + "label": "Google Shopping", + "version": "3.1.2", + "category": "search", + "toolCount": 1, + "authType": "none", + "type": "arcade" + }, + { + "id": "GoogleSlides", + "label": "Google Slides", + "version": "1.3.2", + "category": "productivity", + "toolCount": 8, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "Hubspot", + "label": "HubSpot", + "version": "3.0.0", + "category": "sales", + "toolCount": 40, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "HubspotAutomationApi", + "label": "HubSpot Automation API", + "version": "1.0.0", + "category": "sales", + "toolCount": 9, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "HubspotCmsApi", + "label": "HubSpot CMS API", + "version": "1.0.0", + "category": "sales", + "toolCount": 175, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "HubspotConversationsApi", + "label": "HubSpot Conversations API", + "version": "1.0.0", + "category": "sales", + "toolCount": 24, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "HubspotCrmApi", + "label": "HubSpot CRM API", + "version": "1.0.0", + "category": "sales", + "toolCount": 453, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "HubspotEventsApi", + "label": "HubSpot Events API", + "version": "2.0.0", + "category": "sales", + "toolCount": 6, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "HubspotMarketingApi", + "label": "HubSpot Marketing API", + "version": "1.0.0", + "category": "sales", + "toolCount": 90, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "HubspotMeetingsApi", + "label": "HubSpot Meetings API", + "version": "1.0.0", + "category": "sales", + "toolCount": 5, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "HubspotUsersApi", + "label": "HubSpot Users API", + "version": "1.0.0", + "category": "sales", + "toolCount": 7, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "Imgflip", + "label": "Imgflip", + "version": "1.0.1", + "category": "entertainment", + "toolCount": 3, + "authType": "none", + "type": "arcade" + }, + { + "id": "IntercomApi", + "label": "Intercom API", + "version": "1.0.0", + "category": "customer-support", + "toolCount": 107, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "Jira", + "label": "Jira", + "version": "3.0.2", + "category": "productivity", + "toolCount": 43, + "authType": "oauth2", + "type": "auth" + }, + { + "id": "Linear", + "label": "Linear", + "version": "3.2.0", + "category": "productivity", + "toolCount": 39, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "Linkedin", + "label": "LinkedIn", + "version": "0.1.14", + "category": "social", + "toolCount": 1, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "LumaApi", + "label": "Luma API", + "version": "1.0.0", + "category": "productivity", + "toolCount": 37, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "MailchimpMarketingApi", + "label": "MailchimpMarketingApi", + "version": "1.0.0", + "category": "development", + "toolCount": 278, + "authType": "oauth2" + }, + { + "id": "Math", + "label": "Math", + "version": "1.0.5", + "category": "development", + "toolCount": 23, + "authType": "none" + }, + { + "id": "Microsoft", + "label": "Microsoft", + "version": "1.1.1", + "category": "development", + "toolCount": 11, + "authType": "oauth2" + }, + { + "id": "MicrosoftTeams", + "label": "Microsoft Teams", + "version": "0.4.1", + "category": "social", + "toolCount": 25, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "MiroApi", + "label": "Miro API", + "version": "3.0.0", + "category": "productivity", + "toolCount": 139, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "NotionToolkit", + "label": "Notion", + "version": "1.2.1", + "category": "productivity", + "toolCount": 8, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "OutlookCalendar", + "label": "Outlook Calendar", + "version": "2.2.1", + "category": "productivity", + "toolCount": 4, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "OutlookMail", + "label": "Outlook Mail", + "version": "2.3.0", + "category": "productivity", + "toolCount": 9, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "Pagerduty", + "label": "Pagerduty", + "version": "0.2.0", + "category": "development", + "toolCount": 14, + "authType": "oauth2" + }, + { + "id": "PagerdutyApi", + "label": "PagerDuty API", + "version": "4.0.0", + "category": "development", + "toolCount": 374, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "PosthogApi", + "label": "PostHog API", + "version": "2.0.0", + "category": "development", + "toolCount": 766, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "Pylon", + "label": "Pylon", + "version": "0.2.0", + "category": "development", + "toolCount": 13, + "authType": "none" + }, + { + "id": "PylonApi", + "label": "PylonApi", + "version": "1.0.0", + "category": "development", + "toolCount": 82, + "authType": "none" + }, + { + "id": "Reddit", + "label": "Reddit", + "version": "1.1.1", + "category": "social", + "toolCount": 11, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "Salesforce", + "label": "Salesforce", + "version": "2.0.1", + "category": "sales", + "toolCount": 3, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "Search", + "label": "Search", + "version": "2.0.1", + "category": "development", + "toolCount": 15, + "authType": "none" + }, + { + "id": "Sharepoint", + "label": "Microsoft SharePoint", + "version": "0.4.1", + "category": "productivity", + "toolCount": 12, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "Slack", + "label": "Slack", + "version": "2.0.0", + "category": "social", + "toolCount": 8, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "SlackApi", + "label": "Slack API", + "version": "1.0.0", + "category": "social", + "toolCount": 73, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "Spotify", + "label": "Spotify", + "version": "1.0.2", + "category": "entertainment", + "toolCount": 13, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "SquareupApi", + "label": "SquareUp API", + "version": "4.0.0", + "category": "productivity", + "toolCount": 286, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "Stripe", + "label": "Stripe", + "version": "1.0.1", + "category": "payments", + "toolCount": 15, + "authType": "none", + "type": "arcade" + }, + { + "id": "StripeApi", + "label": "Stripe API", + "version": "1.0.0", + "category": "payments", + "toolCount": 220, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "Test2", + "label": "Test2", + "version": "0.1.0", + "category": "development", + "toolCount": 6, + "authType": "none" + }, + { + "id": "TicktickApi", + "label": "TickTick API", + "version": "1.0.0", + "category": "productivity", + "toolCount": 11, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "TrelloApi", + "label": "Trello API", + "version": "3.0.0", + "category": "productivity", + "toolCount": 246, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "UpclickApi", + "label": "UpclickApi", + "version": "0.1.0", + "category": "development", + "toolCount": 7, + "authType": "oauth2" + }, + { + "id": "VercelApi", + "label": "Vercel API", + "version": "1.0.0", + "category": "development", + "toolCount": 194, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "Walmart", + "label": "Walmart", + "version": "3.0.1", + "category": "search", + "toolCount": 2, + "authType": "none", + "type": "arcade" + }, + { + "id": "WeaviateApi", + "label": "Weaviate API", + "version": "2.0.0", + "category": "development", + "toolCount": 81, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "Web", + "label": "Web", + "version": "2.0.1", + "category": "development", + "toolCount": 6, + "authType": "none" + }, + { + "id": "X", + "label": "X", + "version": "1.1.1", + "category": "social", + "toolCount": 7, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "XeroApi", + "label": "Xero API", + "version": "2.0.0", + "category": "productivity", + "toolCount": 153, + "authType": "oauth2", + "type": "arcade_starter" + }, + { + "id": "Youtube", + "label": "Youtube", + "version": "3.1.2", + "category": "search", + "toolCount": 2, + "authType": "none", + "type": "arcade" + }, + { + "id": "Zendesk", + "label": "Zendesk", + "version": "0.3.1", + "category": "customer-support", + "toolCount": 6, + "authType": "oauth2", + "type": "arcade" + }, + { + "id": "ZohoBooksApi", + "label": "Zoho Books API", + "version": "0.0.0", + "category": "payments", + "toolCount": 0, + "authType": "none", + "type": "arcade_starter" + }, + { + "id": "Zoom", + "label": "Zoom", + "version": "1.0.1", + "category": "social", + "toolCount": 2, + "authType": "oauth2", + "type": "arcade" + } + ] +} diff --git a/data/toolkits/intercomapi.json b/data/toolkits/intercomapi.json new file mode 100644 index 000000000..0214afcd2 --- /dev/null +++ b/data/toolkits/intercomapi.json @@ -0,0 +1,5918 @@ +{ + "id": "IntercomApi", + "label": "Intercom API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the Intercom API", + "metadata": { + "category": "customer-support", + "iconUrl": "https://design-system.arcade.dev/icons/intercom.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/customer-support/intercom-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": [] + }, + "tools": [ + { + "name": "AddNoteToContact", + "qualifiedName": "IntercomApi.AddNoteToContact", + "fullyQualifiedName": "IntercomApi.AddNoteToContact@1.0.0", + "description": "Add a note to a contact in Intercom.\n\n Use this tool to add a note to a specific contact in Intercom by specifying the contact's ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "contact_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the contact to whom the note will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "webhook_secret" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createNote'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.AddNoteToContact", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "contact_id": { + "value": 123456, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"note\":\"This is a sample note for the contact.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveContact", + "qualifiedName": "IntercomApi.ArchiveContact", + "fullyQualifiedName": "IntercomApi.ArchiveContact@1.0.0", + "description": "Archive a single contact in Intercom.\n\nUse this tool to archive a contact in Intercom by providing the contact's ID. This is helpful when managing contact lists and decluttering inactive contacts.", + "parameters": [ + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "The unique identifier of the contact to be archived in Intercom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ArchiveContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ArchiveContact", + "parameters": { + "contact_id": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AttachCompanyToContact", + "qualifiedName": "IntercomApi.AttachCompanyToContact", + "fullyQualifiedName": "IntercomApi.AttachCompanyToContact@1.0.0", + "description": "Attach a company to a single contact in Intercom.\n\n Use this tool to associate a specific company with a contact in the Intercom platform. It should be called when you need to link a contact to a company, enabling better organization and tracking within the system.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "contact_unique_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the contact as provided by Intercom. This is required to attach a company to the specified contact. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'attachContactToACompany'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.AttachCompanyToContact", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "contact_unique_identifier": { + "value": "contact_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"company_id\":\"company_987654\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AttachContactToConversation", + "qualifiedName": "IntercomApi.AttachContactToConversation", + "fullyQualifiedName": "IntercomApi.AttachContactToConversation@1.0.0", + "description": "Attach a contact to a conversation in Intercom.\n\n Use this tool to add a contact as a participant to an Intercom conversation. If a contact is added via email and does not exist, a new contact with the role of 'lead' will be created. This is useful for managing participants in ongoing discussions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "conversation_id", + "type": "string", + "required": false, + "description": "The unique identifier for the conversation in Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'attachContactToConversation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.AttachContactToConversation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "conversation_id": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"contact\": {\"email\": \"example@domain.com\", \"role\": \"lead\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AutoAssignIntercomConversation", + "qualifiedName": "IntercomApi.AutoAssignIntercomConversation", + "fullyQualifiedName": "IntercomApi.AutoAssignIntercomConversation@1.0.0", + "description": "Auto-assign a conversation in Intercom.\n\nUse this tool to automatically assign a conversation based on assignment rules in Intercom. Note that this functionality is deprecated in version 2.12 and later, and will be removed by December 31, 2026. This tool should not be used with Workflows.", + "parameters": [ + { + "name": "conversation_id", + "type": "string", + "required": true, + "description": "The unique identifier for the conversation provided by Intercom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'autoAssignConversation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.AutoAssignIntercomConversation", + "parameters": { + "conversation_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelDataExportJob", + "qualifiedName": "IntercomApi.CancelDataExportJob", + "fullyQualifiedName": "IntercomApi.CancelDataExportJob@1.0.0", + "description": "Cancels an active data export job on Intercom.\n\nUse this tool to cancel an ongoing data export job on Intercom by providing the job identifier.", + "parameters": [ + { + "name": "job_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the data export job to be canceled. This is required to specify which job to stop.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cancelDataExport'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CancelDataExportJob", + "parameters": { + "job_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckExportJobStatus", + "qualifiedName": "IntercomApi.CheckExportJobStatus", + "fullyQualifiedName": "IntercomApi.CheckExportJobStatus@1.0.0", + "description": "Check the status of your Intercom data export job.\n\nUse this tool to view the status of an export job in Intercom. It retrieves details about whether the job is still processing or completed, and notes the expiry of completed jobs, which is two days after completion.", + "parameters": [ + { + "name": "job_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the export job you want to check. This ID is provided when the export job is created.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDataExport'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CheckExportJobStatus", + "parameters": { + "job_identifier": { + "value": "export_job_123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ConvertVisitorToUser", + "qualifiedName": "IntercomApi.ConvertVisitorToUser", + "fullyQualifiedName": "IntercomApi.ConvertVisitorToUser@1.0.0", + "description": "Convert a Visitor into a User or merge with an existing User.\n\nUse this tool to convert a Visitor to a Contact of role type `lead` or `user`. If the User already exists, the Visitor will be merged into it and the User details will be returned. If the User does not exist, the Visitor will become a User, with their identifiers updated.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'convertVisitor'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ConvertVisitorToUser", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"email\": \"example@example.com\", \"name\": \"John Doe\", \"role\": \"user\", \"custom_attributes\": {\"source\": \"website\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAdminInitiatedMessage", + "qualifiedName": "IntercomApi.CreateAdminInitiatedMessage", + "fullyQualifiedName": "IntercomApi.CreateAdminInitiatedMessage@1.0.0", + "description": "Create a message initiated by an admin via Intercom.\n\nThis tool allows you to create a message initiated by an admin, either as an in-app message or an email, using Intercom. Note that there might be a delay before a new contact can be messaged. The created message model is returned.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createMessage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CreateAdminInitiatedMessage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"message_type\":\"in_app\",\"body\":\"Hello! This is an admin-initiated message.\",\"user_id\":\"12345\",\"subject\":\"Admin Message\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateContactConversation", + "qualifiedName": "IntercomApi.CreateContactConversation", + "fullyQualifiedName": "IntercomApi.CreateContactConversation@1.0.0", + "description": "Create a conversation initiated by a contact.\n\nThis tool creates a conversation that has been initiated by a contact, which can be a user or a lead. It supports in-app messages and can handle visitors by converting them to contacts with a lead role. Use this tool to initiate communication with contacts effectively.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createConversation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CreateContactConversation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"contact_id\":\"123456\",\"message\":\"Hello, how can I assist you today?\",\"metadata\":{\"source\":\"web\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateDataAttribute", + "qualifiedName": "IntercomApi.CreateDataAttribute", + "fullyQualifiedName": "IntercomApi.CreateDataAttribute@1.0.0", + "description": "Create a data attribute for a contact or company.\n\nThis tool allows you to create a data attribute for a contact or company using the Intercom API. Use this when you need to add a new attribute to store additional information.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createDataAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CreateDataAttribute", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"custom_attribute\",\"type\":\"string\",\"description\":\"A custom attribute for user segmentation.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateEventSummaries", + "qualifiedName": "IntercomApi.CreateEventSummaries", + "fullyQualifiedName": "IntercomApi.CreateEventSummaries@1.0.0", + "description": "Create event summaries for tracking user events.\n\nThis tool creates event summaries for a user, tracking the number of times an event has occurred along with the first and last occurrence.", + "parameters": [ + { + "name": "event_last_occurrence", + "type": "integer", + "required": false, + "description": "The timestamp representing the last occurrence of the event.", + "enum": null, + "inferrable": true + }, + { + "name": "event_name_for_summaries", + "type": "string", + "required": false, + "description": "The name of the event, typically a past-tense verb-noun combination like 'updated-plan'.", + "enum": null, + "inferrable": true + }, + { + "name": "event_occurrence_count", + "type": "integer", + "required": false, + "description": "The number of times the event occurred for the specified user.", + "enum": null, + "inferrable": true + }, + { + "name": "first_event_timestamp", + "type": "integer", + "required": false, + "description": "Timestamp for when the event first occurred. Use an integer representing Unix time.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the user to create event summaries for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dataEventSummaries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CreateEventSummaries", + "parameters": { + "event_last_occurrence": { + "value": 1685563200, + "type": "integer", + "required": false + }, + "event_name_for_summaries": { + "value": "updated-plan", + "type": "string", + "required": false + }, + "event_occurrence_count": { + "value": 5, + "type": "integer", + "required": false + }, + "first_event_timestamp": { + "value": 1685560000, + "type": "integer", + "required": false + }, + "user_identifier": { + "value": "user_12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHelpCenterCollection", + "qualifiedName": "IntercomApi.CreateHelpCenterCollection", + "fullyQualifiedName": "IntercomApi.CreateHelpCenterCollection@1.0.0", + "description": "Create a new collection in the Intercom Help Center.\n\nThis tool allows you to create a new collection in the Intercom Help Center by sending a POST request. Use it when you need to organize content into a new collection.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createCollection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CreateHelpCenterCollection", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"New Help Center Collection\",\"description\":\"This collection contains articles about product features and tutorials.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHelpCenterSection", + "qualifiedName": "IntercomApi.CreateHelpCenterSection", + "fullyQualifiedName": "IntercomApi.CreateHelpCenterSection@1.0.0", + "description": "Create a new section in the help center.\n\nThis tool calls the Intercom API to create a new section in the help center by making a POST request. Use this when you need to organize help center content into a new section.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createSection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CreateHelpCenterSection", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\": \"New Help Center Section\", \"description\": \"This section covers topics related to the new features.\", \"position\": \"1\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateIntercomArticle", + "qualifiedName": "IntercomApi.CreateIntercomArticle", + "fullyQualifiedName": "IntercomApi.CreateIntercomArticle@1.0.0", + "description": "Create a new article in Intercom.\n\nUse this tool to create a new article within the Intercom platform. It should be called when a new knowledge base article is needed.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createArticle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CreateIntercomArticle", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\": \"How to use Intercom API\",\"content\": \"This article explains how to integrate with the Intercom API effectively.\", \"author\": \"John Doe\", \"published\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateIntercomTicket", + "qualifiedName": "IntercomApi.CreateIntercomTicket", + "fullyQualifiedName": "IntercomApi.CreateIntercomTicket@1.0.0", + "description": "Create a new support ticket in Intercom.\n\nUse this tool to generate a new support ticket via Intercom. Ideal for handling customer queries or issues by automatically logging them into the ticketing system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTicket'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CreateIntercomTicket", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"customer_id\": \"12345\", \"subject\": \"Issue with product\", \"description\": \"The product is not functioning as expected.\", \"priority\": \"high\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMessageDataExport", + "qualifiedName": "IntercomApi.CreateMessageDataExport", + "fullyQualifiedName": "IntercomApi.CreateMessageDataExport@1.0.0", + "description": "Create a data export job for Intercom messages.\n\nThis tool creates a data export job for message content within specified date ranges in Intercom. Only one active export job is permitted per workspace. Dates include all data from the specified start to end dates.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createDataExport'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CreateMessageDataExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"start_date\":\"2023-01-01\",\"end_date\":\"2023-01-31\",\"message_type\":\"all\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateNewContact", + "qualifiedName": "IntercomApi.CreateNewContact", + "fullyQualifiedName": "IntercomApi.CreateNewContact@1.0.0", + "description": "Create a new contact in the Intercom system.\n\nUse this tool to add a new contact, either a user or a lead, to the Intercom database.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CreateNewContact", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"email\":\"john.doe@example.com\",\"name\":\"John Doe\",\"phone\":\"+1234567890\",\"signed_up_at\":1609459200}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateNewsItem", + "qualifiedName": "IntercomApi.CreateNewsItem", + "fullyQualifiedName": "IntercomApi.CreateNewsItem@1.0.0", + "description": "Create a news item using Intercom.\n\nThis tool allows the creation of a news item via Intercom's API. Use it when you need to publish or distribute a new piece of news.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createNewsItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CreateNewsItem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\": \"New Feature Launch\", \"body\": \"We are excited to announce the launch of our new feature!\", \"published_at\": \"2023-10-01T10:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOrUpdateCompany", + "qualifiedName": "IntercomApi.CreateOrUpdateCompany", + "fullyQualifiedName": "IntercomApi.CreateOrUpdateCompany@1.0.0", + "description": "Create or update a company in Intercom.\n\nThis tool is used to create or update a company in Intercom. The company is identified by a unique `company_id`. If a company with the given `company_id` exists, it will be updated; otherwise, a new company will be created. Note that a company will only be visible when associated with at least one user.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createOrUpdateCompany'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CreateOrUpdateCompany", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"company_id\": \"12345\", \"name\": \"Example Corp\", \"custom_attributes\": {\"industry\": \"Software\", \"employee_count\": 150}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTicketAttribute", + "qualifiedName": "IntercomApi.CreateTicketAttribute", + "fullyQualifiedName": "IntercomApi.CreateTicketAttribute@1.0.0", + "description": "Create a new attribute for a ticket type.\n\n Use this tool to add a custom attribute to a specified ticket type within the Intercom service. Ideal for augmenting ticket types with additional metadata.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "ticket_type_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the ticket type provided by Intercom, required to specify which ticket type the new attribute will be added to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTicketTypeAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CreateTicketAttribute", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "ticket_type_identifier": { + "value": "support_ticket", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"attribute_name\": \"priority\", \"attribute_type\": \"string\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTicketType", + "qualifiedName": "IntercomApi.CreateTicketType", + "fullyQualifiedName": "IntercomApi.CreateTicketType@1.0.0", + "description": "Create a new ticket type with default attributes.\n\nThis tool allows creating a new ticket type in Intercom, including default title and description attributes. An emoji icon can be added using the Twemoji Cheatsheet.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTicketType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.CreateTicketType", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\": \"New Issue\", \"description\": \"This is a description of the new issue.\", \"emoji\": \"😀\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeflectPhoneCallsToMessenger", + "qualifiedName": "IntercomApi.DeflectPhoneCallsToMessenger", + "fullyQualifiedName": "IntercomApi.DeflectPhoneCallsToMessenger@1.0.0", + "description": "Deflect phone calls to Intercom Messenger via SMS link.\n\nUse this tool to send an SMS with a link to the Intercom Messenger, redirecting phone calls to the Messenger. If custom attributes are provided, they will be added to the user or lead's custom data.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createPhoneSwitch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.DeflectPhoneCallsToMessenger", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"user_id\":\"12345\",\"message\":\"Redirecting your call, please use this link to continue in Messenger: https://intercom.link/chat\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCollection", + "qualifiedName": "IntercomApi.DeleteCollection", + "fullyQualifiedName": "IntercomApi.DeleteCollection@1.0.0", + "description": "Delete a specified collection in Intercom.\n\nUse this tool to delete a specific collection from Intercom by providing the collection ID. This action is irreversible, so ensure you want to permanently remove the collection.", + "parameters": [ + { + "name": "collection_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the collection provided by Intercom, required to delete it.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteCollection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.DeleteCollection", + "parameters": { + "collection_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCompany", + "qualifiedName": "IntercomApi.DeleteCompany", + "fullyQualifiedName": "IntercomApi.DeleteCompany@1.0.0", + "description": "Deletes a single company by its ID.\n\nUse this tool to remove a company from the Intercom system. It should be called when you need to delete a company identified by a specific ID.", + "parameters": [ + { + "name": "company_id", + "type": "string", + "required": true, + "description": "The unique identifier for the company to be deleted in Intercom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteCompany'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.DeleteCompany", + "parameters": { + "company_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteContact", + "qualifiedName": "IntercomApi.DeleteContact", + "fullyQualifiedName": "IntercomApi.DeleteContact@1.0.0", + "description": "Deletes a specified contact from the system.\n\nUse this tool to permanently delete a contact when you no longer need their information.", + "parameters": [ + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "The unique identifier of the contact to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.DeleteContact", + "parameters": { + "contact_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteIntercomArticle", + "qualifiedName": "IntercomApi.DeleteIntercomArticle", + "fullyQualifiedName": "IntercomApi.DeleteIntercomArticle@1.0.0", + "description": "Deletes a specified article in Intercom.\n\nUse this tool to delete an article by providing its unique ID on Intercom. It's useful for managing and removing outdated or incorrect articles from the Intercom system.", + "parameters": [ + { + "name": "article_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the article to be deleted, provided by Intercom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteArticle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.DeleteIntercomArticle", + "parameters": { + "article_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteIntercomSection", + "qualifiedName": "IntercomApi.DeleteIntercomSection", + "fullyQualifiedName": "IntercomApi.DeleteIntercomSection@1.0.0", + "description": "Delete a section from Intercom Help Center.\n\nUse this tool to delete a specific section from the Intercom Help Center by providing the section ID. It is helpful when managing help center content and removing sections that are no longer needed.", + "parameters": [ + { + "name": "section_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the section to be deleted from Intercom. Provided by Intercom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteSection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.DeleteIntercomSection", + "parameters": { + "section_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteNewsItem", + "qualifiedName": "IntercomApi.DeleteNewsItem", + "fullyQualifiedName": "IntercomApi.DeleteNewsItem@1.0.0", + "description": "Delete a specific news item from the platform.\n\nUse this tool to delete a specific news item by its ID. This helps in managing content by removing outdated or incorrect news items.", + "parameters": [ + { + "name": "news_item_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the news item to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteNewsItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.DeleteNewsItem", + "parameters": { + "news_item_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DetachCompanyFromContact", + "qualifiedName": "IntercomApi.DetachCompanyFromContact", + "fullyQualifiedName": "IntercomApi.DetachCompanyFromContact@1.0.0", + "description": "Detach a company from a specified contact in Intercom.\n\nThis tool is used to remove the association between a contact and a company within the Intercom platform. Call this tool when a contact needs to be unlinked from a company.", + "parameters": [ + { + "name": "company_id", + "type": "string", + "required": true, + "description": "The unique identifier for the company provided by Intercom.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the contact provided by Intercom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'detachContactFromACompany'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.DetachCompanyFromContact", + "parameters": { + "company_id": { + "value": "12345", + "type": "string", + "required": true + }, + "contact_identifier": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DetachContactFromConversation", + "qualifiedName": "IntercomApi.DetachContactFromConversation", + "fullyQualifiedName": "IntercomApi.DetachContactFromConversation@1.0.0", + "description": "Detach a contact from a conversation in Intercom.\n\nUse this tool to remove a participant who is a contact from a specific conversation within Intercom. The tool should be called when you need to unlink contacts from conversations on Intercom, using their conversation and contact IDs.", + "parameters": [ + { + "name": "contact_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the contact provided by Intercom. Use this to specify which contact to detach from the conversation.", + "enum": null, + "inferrable": true + }, + { + "name": "conversation_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the conversation in Intercom. This is required to detach the contact from the specified conversation.", + "enum": null, + "inferrable": true + }, + { + "name": "admin_id", + "type": "json", + "required": false, + "description": "The ID of the admin performing the detachment action.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'detachContactFromConversation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.DetachContactFromConversation", + "parameters": { + "contact_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "conversation_identifier": { + "value": "abc-987654", + "type": "string", + "required": true + }, + "admin_id": { + "value": "{\"id\":\"admin-001\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DownloadIntercomDataExport", + "qualifiedName": "IntercomApi.DownloadIntercomDataExport", + "fullyQualifiedName": "IntercomApi.DownloadIntercomDataExport@1.0.0", + "description": "Download completed data exports from Intercom.\n\nThis tool downloads your exported message data from Intercom when the export job is complete and a download URL is available. The data is returned in a gzipped CSV format.", + "parameters": [ + { + "name": "job_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the completed data export job. Required to download the data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'downloadDataExport'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.DownloadIntercomDataExport", + "parameters": { + "job_identifier": { + "value": "export_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchAllContacts", + "qualifiedName": "IntercomApi.FetchAllContacts", + "fullyQualifiedName": "IntercomApi.FetchAllContacts@1.0.0", + "description": "Fetch a list of all contacts in your workspace.\n\nThis tool retrieves a list of all contacts, including users or leads, in your Intercom workspace. It supports pagination to manage large datasets, defaulting to 50 results per page.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListContacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchAllContacts", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchAllNewsfeeds", + "qualifiedName": "IntercomApi.FetchAllNewsfeeds", + "fullyQualifiedName": "IntercomApi.FetchAllNewsfeeds@1.0.0", + "description": "Fetch a list of all available newsfeeds.\n\nUse this tool to retrieve a complete list of newsfeeds from the service.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listNewsfeeds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchAllNewsfeeds", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchCompanyContacts", + "qualifiedName": "IntercomApi.FetchCompanyContacts", + "fullyQualifiedName": "IntercomApi.FetchCompanyContacts@1.0.0", + "description": "Fetch a list of contacts for a specific company.\n\nCall this tool to retrieve all contacts associated with a specific company using the company ID.", + "parameters": [ + { + "name": "company_id", + "type": "string", + "required": true, + "description": "The unique identifier for the company, provided by Intercom, to fetch associated contacts.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListAttachedContacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchCompanyContacts", + "parameters": { + "company_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchCompanyDetails", + "qualifiedName": "IntercomApi.FetchCompanyDetails", + "fullyQualifiedName": "IntercomApi.FetchCompanyDetails@1.0.0", + "description": "Fetch detailed information about a single company.\n\nUse this tool to retrieve information about a company by providing its `company_id` or `name`. Additionally, it can fetch all companies filtered by `segment_id` or `tag_id`. Ideal for obtaining comprehensive company data.", + "parameters": [ + { + "name": "company_id", + "type": "string", + "required": false, + "description": "The unique identifier for the company to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "company_name", + "type": "string", + "required": false, + "description": "The exact name of the company to filter and retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "company_segment_id", + "type": "string", + "required": false, + "description": "The segment ID to filter companies by. Use this to retrieve companies associated with a specific segment.", + "enum": null, + "inferrable": true + }, + { + "name": "company_tag_id", + "type": "string", + "required": false, + "description": "The tag ID used to filter and retrieve specific companies by their associated tag.", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "integer", + "required": false, + "description": "The page number of results to fetch. Defaults to the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to display per page. Defaults to 15.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieveCompany'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchCompanyDetails", + "parameters": { + "company_id": { + "value": "12345", + "type": "string", + "required": false + }, + "company_name": { + "value": "Acme Corporation", + "type": "string", + "required": false + }, + "company_segment_id": { + "value": "segment_001", + "type": "string", + "required": false + }, + "company_tag_id": { + "value": "tag_123", + "type": "string", + "required": false + }, + "result_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchContactCompanies", + "qualifiedName": "IntercomApi.FetchContactCompanies", + "fullyQualifiedName": "IntercomApi.FetchContactCompanies@1.0.0", + "description": "Fetches a list of companies associated with a contact.\n\nUse this tool to retrieve a list of companies linked to a specific contact. It's useful for understanding the companies that a particular contact is associated with.", + "parameters": [ + { + "name": "contact_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the contact provided by Intercom, required to fetch associated companies.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listCompaniesForAContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchContactCompanies", + "parameters": { + "contact_identifier": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchContactDetails", + "qualifiedName": "IntercomApi.FetchContactDetails", + "fullyQualifiedName": "IntercomApi.FetchContactDetails@1.0.0", + "description": "Fetch the details of a specific contact.\n\nUse this tool to obtain detailed information about a contact by providing their unique ID.", + "parameters": [ + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "The unique identifier of the contact you want to fetch details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ShowContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchContactDetails", + "parameters": { + "contact_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchContactNotes", + "qualifiedName": "IntercomApi.FetchContactNotes", + "fullyQualifiedName": "IntercomApi.FetchContactNotes@1.0.0", + "description": "Fetches notes associated with a specific contact.\n\nUse this tool to retrieve all notes linked to a particular contact identified by their ID. It is useful for accessing and reviewing notes related to specific contacts.", + "parameters": [ + { + "name": "contact_id", + "type": "integer", + "required": true, + "description": "The unique ID of the contact whose notes you want to fetch.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listNotes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchContactNotes", + "parameters": { + "contact_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchConversationList", + "qualifiedName": "IntercomApi.FetchConversationList", + "fullyQualifiedName": "IntercomApi.FetchConversationList@1.0.0", + "description": "Retrieve a list of conversations with optional pagination options.\n\nUse this tool to fetch a list of all conversations. It supports optional pagination by allowing you to specify the page size and a starting cursor.", + "parameters": [ + { + "name": "pagination_starting_cursor", + "type": "string", + "required": false, + "description": "Cursor string to fetch the next page of conversations for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of conversation results to display per page. Default is 20 if not specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listConversations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchConversationList", + "parameters": { + "pagination_starting_cursor": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchIntercomArticle", + "qualifiedName": "IntercomApi.FetchIntercomArticle", + "fullyQualifiedName": "IntercomApi.FetchIntercomArticle@1.0.0", + "description": "Fetch details of a specific Intercom article by ID.\n\nUse this tool to retrieve information about a single article from Intercom by providing the article ID.", + "parameters": [ + { + "name": "article_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the article provided by Intercom. Use this to fetch article details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieveArticle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchIntercomArticle", + "parameters": { + "article_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchIntercomCollectionDetails", + "qualifiedName": "IntercomApi.FetchIntercomCollectionDetails", + "fullyQualifiedName": "IntercomApi.FetchIntercomCollectionDetails@1.0.0", + "description": "Fetches details of a specific Intercom collection.\n\nUse this tool to fetch and retrieve details about a specific collection from Intercom by providing the collection ID.", + "parameters": [ + { + "name": "collection_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the collection provided by Intercom. It is required to fetch a specific collection's details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieveCollection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchIntercomCollectionDetails", + "parameters": { + "collection_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchLiveNewsfeedItems", + "qualifiedName": "IntercomApi.FetchLiveNewsfeedItems", + "fullyQualifiedName": "IntercomApi.FetchLiveNewsfeedItems@1.0.0", + "description": "Retrieve all live news items from a specific newsfeed.\n\nThis tool fetches a list of all current live news items from a specified newsfeed using the newsfeed's unique ID.", + "parameters": [ + { + "name": "newsfeed_id", + "type": "string", + "required": true, + "description": "The unique identifier for the newsfeed, provided by Intercom, to retrieve live news items.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listLiveNewsfeedItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchLiveNewsfeedItems", + "parameters": { + "newsfeed_id": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchNewsfeedDetails", + "qualifiedName": "IntercomApi.FetchNewsfeedDetails", + "fullyQualifiedName": "IntercomApi.FetchNewsfeedDetails@1.0.0", + "description": "Fetch details of a specific newsfeed using its ID.\n\nUse this tool to retrieve comprehensive details about a particular newsfeed by providing its unique ID. This can be called when you need to access information about a single newsfeed item.", + "parameters": [ + { + "name": "newsfeed_id", + "type": "string", + "required": true, + "description": "The unique identifier for the newsfeed item provided by Intercom. Use this to retrieve specific newsfeed details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieveNewsfeed'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchNewsfeedDetails", + "parameters": { + "newsfeed_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchNewsItems", + "qualifiedName": "IntercomApi.FetchNewsItems", + "fullyQualifiedName": "IntercomApi.FetchNewsItems@1.0.0", + "description": "Retrieve a list of news items from Intercom.\n\nUse this tool to fetch the latest news articles available through the Intercom service.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listNewsItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchNewsItems", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchNoteDetails", + "qualifiedName": "IntercomApi.FetchNoteDetails", + "fullyQualifiedName": "IntercomApi.FetchNoteDetails@1.0.0", + "description": "Fetches details of a specific note.\n\nUse this tool to retrieve the details of a single note based on its ID. It should be called when detailed information about a specific note is needed.", + "parameters": [ + { + "name": "note_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the note you want to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieveNote'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchNoteDetails", + "parameters": { + "note_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchTagDetails", + "qualifiedName": "IntercomApi.FetchTagDetails", + "fullyQualifiedName": "IntercomApi.FetchTagDetails@1.0.0", + "description": "Fetch details of a tag using its ID from the workspace.\n\nUse this tool to obtain information about specific tags in your workspace by providing the tag ID. It retrieves a tag object with relevant details.", + "parameters": [ + { + "name": "tag_id", + "type": "string", + "required": true, + "description": "The unique identifier for a specific tag to fetch its details from the workspace.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'findTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchTagDetails", + "parameters": { + "tag_id": { + "value": "tag_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchTicketDetails", + "qualifiedName": "IntercomApi.FetchTicketDetails", + "fullyQualifiedName": "IntercomApi.FetchTicketDetails@1.0.0", + "description": "Fetch details of a specific ticket from Intercom.\n\nUse this tool to retrieve comprehensive information about a specific Intercom ticket by providing its ID.", + "parameters": [ + { + "name": "ticket_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the ticket, as provided by Intercom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTicket'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchTicketDetails", + "parameters": { + "ticket_identifier": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchTicketTypeDetails", + "qualifiedName": "IntercomApi.FetchTicketTypeDetails", + "fullyQualifiedName": "IntercomApi.FetchTicketTypeDetails@1.0.0", + "description": "Fetches details of a specific ticket type in Intercom.\n\nUse this tool to retrieve information about a particular ticket type by its ID from the Intercom service.", + "parameters": [ + { + "name": "ticket_type_id", + "type": "string", + "required": true, + "description": "The unique identifier for the ticket type assigned by Intercom. Used to fetch specific ticket type details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTicketType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchTicketTypeDetails", + "parameters": { + "ticket_type_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchVisitorDetails", + "qualifiedName": "IntercomApi.FetchVisitorDetails", + "fullyQualifiedName": "IntercomApi.FetchVisitorDetails@1.0.0", + "description": "Fetch details of a single visitor using their user ID.\n\nUse this tool to retrieve information about a visitor based on their user ID from Intercom.", + "parameters": [ + { + "name": "visitor_user_id", + "type": "string", + "required": true, + "description": "The user ID of the visitor you want to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieveVisitorWithUserId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchVisitorDetails", + "parameters": { + "visitor_user_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchWorkspaceAdmins", + "qualifiedName": "IntercomApi.FetchWorkspaceAdmins", + "fullyQualifiedName": "IntercomApi.FetchWorkspaceAdmins@1.0.0", + "description": "Retrieve a list of admins in a workspace.\n\nUse this tool to fetch and list all administrators associated with a specific workspace.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAdmins'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchWorkspaceAdmins", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchWorkspaceTags", + "qualifiedName": "IntercomApi.FetchWorkspaceTags", + "fullyQualifiedName": "IntercomApi.FetchWorkspaceTags@1.0.0", + "description": "Retrieve all tags from a workspace in Intercom.\n\nThis tool fetches a list of all tags associated with a given workspace in Intercom. Use it to manage or organize content by accessing the available tags.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listTags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.FetchWorkspaceTags", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAdminActivityLogs", + "qualifiedName": "IntercomApi.GetAdminActivityLogs", + "fullyQualifiedName": "IntercomApi.GetAdminActivityLogs@1.0.0", + "description": "Retrieve a log of activities by all admins in an app.\n\nUse this tool to get detailed logs of all activities performed by admins within the application. It provides insights into the actions and events conducted by administrative users.", + "parameters": [ + { + "name": "start_date_unix_timestamp", + "type": "string", + "required": true, + "description": "The start date for requested data, formatted as a UNIX timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_unix_timestamp", + "type": "string", + "required": false, + "description": "The end date for data retrieval in UNIX timestamp format. Determines the latest logs to include.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listActivityLogs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.GetAdminActivityLogs", + "parameters": { + "start_date_unix_timestamp": { + "value": "1672531200", + "type": "string", + "required": true + }, + "end_date_unix_timestamp": { + "value": "1672617600", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllSegments", + "qualifiedName": "IntercomApi.GetAllSegments", + "fullyQualifiedName": "IntercomApi.GetAllSegments@1.0.0", + "description": "Retrieve a list of all segments.\n\nUse this tool to fetch and display all segments in Intercom, allowing you to view and manage customer groupings efficiently.", + "parameters": [ + { + "name": "include_contact_count", + "type": "boolean", + "required": false, + "description": "Set to true to include the number of contacts in each segment.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listSegments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.GetAllSegments", + "parameters": { + "include_contact_count": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCompanyDetails", + "qualifiedName": "IntercomApi.GetCompanyDetails", + "fullyQualifiedName": "IntercomApi.GetCompanyDetails@1.0.0", + "description": "Retrieve detailed information about a specific company.\n\nThis tool fetches details for a single company using its unique ID. Use it to obtain comprehensive information about a specific company, including any related data available.", + "parameters": [ + { + "name": "company_id", + "type": "string", + "required": true, + "description": "The unique identifier for the company provided by Intercom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveACompanyById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.GetCompanyDetails", + "parameters": { + "company_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetContactSegments", + "qualifiedName": "IntercomApi.GetContactSegments", + "fullyQualifiedName": "IntercomApi.GetContactSegments@1.0.0", + "description": "Fetch segments associated with a contact.\n\nUse this tool to retrieve a list of segments linked to a specific contact in Intercom. Call this when you need to understand segment associations for a given contact ID.", + "parameters": [ + { + "name": "contact_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the contact provided by Intercom. This is required to fetch associated segments.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listSegmentsForAContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.GetContactSegments", + "parameters": { + "contact_unique_identifier": { + "value": "user_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetContactTags", + "qualifiedName": "IntercomApi.GetContactTags", + "fullyQualifiedName": "IntercomApi.GetContactTags@1.0.0", + "description": "Fetches tags attached to a specific contact.\n\nUse this tool to retrieve a list of all tags associated with a given contact in the Intercom system.", + "parameters": [ + { + "name": "contact_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the contact, provided by Intercom, used to fetch associated tags.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listTagsForAContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.GetContactTags", + "parameters": { + "contact_unique_identifier": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetConversationDetails", + "qualifiedName": "IntercomApi.GetConversationDetails", + "fullyQualifiedName": "IntercomApi.GetConversationDetails@1.0.0", + "description": "Fetch details of a specific conversation from Intercom.\n\nUse this tool to retrieve detailed information about a single conversation on Intercom, including up to 500 recent parts. Suitable for accessing conversation metadata, especially when the AI agent is enabled in your workspace.", + "parameters": [ + { + "name": "conversation_id", + "type": "integer", + "required": true, + "description": "The ID of the conversation to retrieve details for. This is required to fetch the specific conversation data.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_plaintext_conversation", + "type": "string", + "required": false, + "description": "Set to 'plaintext' to retrieve conversation messages in plain text format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieveConversation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.GetConversationDetails", + "parameters": { + "conversation_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "retrieve_plaintext_conversation": { + "value": "plaintext", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCurrentAdminInfo", + "qualifiedName": "IntercomApi.GetCurrentAdminInfo", + "fullyQualifiedName": "IntercomApi.GetCurrentAdminInfo@1.0.0", + "description": "Retrieve details of the currently authorized Intercom admin.\n\nCall this tool to obtain information about the currently authorized admin along with the workspace details. Useful for understanding who is logged in and their associated workspace. Ensure email addresses of users in custom SSO flows are verified to avoid impersonation risks.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'identifyAdmin'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.GetCurrentAdminInfo", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetHelpCenterDetails", + "qualifiedName": "IntercomApi.GetHelpCenterDetails", + "fullyQualifiedName": "IntercomApi.GetHelpCenterDetails@1.0.0", + "description": "Retrieve detailed information about a specific Help Center.\n\nThis tool fetches details of a single Help Center using its ID, making it useful for obtaining specific information about the Help Center structure and contents.", + "parameters": [ + { + "name": "help_center_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the Help Center collection provided by Intercom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieveHelpCenter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.GetHelpCenterDetails", + "parameters": { + "help_center_id": { + "value": 123456, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetNewsItemDetails", + "qualifiedName": "IntercomApi.GetNewsItemDetails", + "fullyQualifiedName": "IntercomApi.GetNewsItemDetails@1.0.0", + "description": "Fetches details of a specific news item.\n\nUse this tool to retrieve full information about a particular news item using its unique identifier.", + "parameters": [ + { + "name": "news_item_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the news item provided by Intercom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieveNewsItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.GetNewsItemDetails", + "parameters": { + "news_item_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRecentHelpCenterSections", + "qualifiedName": "IntercomApi.GetRecentHelpCenterSections", + "fullyQualifiedName": "IntercomApi.GetRecentHelpCenterSections@1.0.0", + "description": "Fetches a list of all help center sections sorted by recent updates.\n\nThis tool retrieves all help center sections from Intercom, sorted in descending order by their last update. It is useful for accessing the most recently updated sections first.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAllSections'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.GetRecentHelpCenterSections", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSectionDetails", + "qualifiedName": "IntercomApi.GetSectionDetails", + "fullyQualifiedName": "IntercomApi.GetSectionDetails@1.0.0", + "description": "Fetch details of a specific help center section by ID.\n\nUse this tool to obtain information about a particular section within the help center. Provide the specific section ID to retrieve its details.", + "parameters": [ + { + "name": "section_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the help center section provided by Intercom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieveSection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.GetSectionDetails", + "parameters": { + "section_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSegmentDetails", + "qualifiedName": "IntercomApi.GetSegmentDetails", + "fullyQualifiedName": "IntercomApi.GetSegmentDetails@1.0.0", + "description": "Fetch details of a single segment from Intercom.\n\nThis tool retrieves detailed information about a specific segment in Intercom. It should be called when you need to access or display segment details. Useful for understanding user groups within Intercom.", + "parameters": [ + { + "name": "segment_id", + "type": "string", + "required": true, + "description": "The unique identifier of a specific segment to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieveSegment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.GetSegmentDetails", + "parameters": { + "segment_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamDetails", + "qualifiedName": "IntercomApi.GetTeamDetails", + "fullyQualifiedName": "IntercomApi.GetTeamDetails@1.0.0", + "description": "Fetch details of a team and its admins.\n\nUse this tool to fetch comprehensive details about a specific team, including the list of admins associated with it. It's useful for scenarios where you need to understand the team composition within Intercom.", + "parameters": [ + { + "name": "team_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of a specific team to retrieve details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieveTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.GetTeamDetails", + "parameters": { + "team_unique_identifier": { + "value": "team_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTicketTypes", + "qualifiedName": "IntercomApi.GetTicketTypes", + "fullyQualifiedName": "IntercomApi.GetTicketTypes@1.0.0", + "description": "Retrieve a list of all ticket types for a workspace.\n\nThis tool fetches a list of all available ticket types within a workspace, useful for understanding support categories.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listTicketTypes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.GetTicketTypes", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAppTeams", + "qualifiedName": "IntercomApi.ListAppTeams", + "fullyQualifiedName": "IntercomApi.ListAppTeams@1.0.0", + "description": "Retrieve a list of teams for the application.\n\nThis tool is used to fetch all team objects associated with the application. It should be called when you need detailed information about the teams configured in the app.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listTeams'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ListAppTeams", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCollections", + "qualifiedName": "IntercomApi.ListCollections", + "fullyQualifiedName": "IntercomApi.ListCollections@1.0.0", + "description": "Retrieve a list of all collections sorted by update date.\n\nFetches all collections from Intercom's help center, ordered by the most recent update. Useful for accessing the latest changes.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAllCollections'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ListCollections", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCompaniesIntercom", + "qualifiedName": "IntercomApi.ListCompaniesIntercom", + "fullyQualifiedName": "IntercomApi.ListCompaniesIntercom@1.0.0", + "description": "Retrieve a sorted list of companies from Intercom.\n\nThis tool retrieves a list of companies from Intercom, sorted by the most recent request date. Use this to access companies associated with users. Supports pagination for result control.", + "parameters": [ + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number of results to retrieve, starting from the first page by default.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page. The default is 15.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify 'asc' for ascending or 'desc' for descending order when listing companies. Defaults to 'desc'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAllCompanies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ListCompaniesIntercom", + "parameters": { + "page_number": { + "value": 2, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "asc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCompanySegments", + "qualifiedName": "IntercomApi.ListCompanySegments", + "fullyQualifiedName": "IntercomApi.ListCompanySegments@1.0.0", + "description": "Fetch segments belonging to a specific company.\n\nUse this tool to retrieve a list of all segments attached to a specific company in Intercom. This is useful for understanding how a company is categorized or segmented within Intercom.", + "parameters": [ + { + "name": "company_id", + "type": "string", + "required": true, + "description": "The unique identifier for the company provided by Intercom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListAttachedSegmentsForCompanies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ListCompanySegments", + "parameters": { + "company_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListContactSubscriptions", + "qualifiedName": "IntercomApi.ListContactSubscriptions", + "fullyQualifiedName": "IntercomApi.ListContactSubscriptions@1.0.0", + "description": "Retrieve subscription types associated with a contact.\n\nFetch a list of subscription types associated with a contact, including both opt-in and opt-out types.", + "parameters": [ + { + "name": "contact_identifier", + "type": "string", + "required": true, + "description": "The unique identifier provided by Intercom for the contact.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listSubscriptionsForAContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ListContactSubscriptions", + "parameters": { + "contact_identifier": { + "value": "user_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListHelpCenters", + "qualifiedName": "IntercomApi.ListHelpCenters", + "fullyQualifiedName": "IntercomApi.ListHelpCenters@1.0.0", + "description": "Retrieve a list of all Help Centers from Intercom.\n\nUse this tool to access and retrieve all available Help Centers from Intercom's API. This can be useful for users needing to manage or review the Help Centers associated with their Intercom account.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listHelpCenters'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ListHelpCenters", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRecentArticles", + "qualifiedName": "IntercomApi.ListRecentArticles", + "fullyQualifiedName": "IntercomApi.ListRecentArticles@1.0.0", + "description": "Fetches a list of all articles from Intercom.\n\nUse this tool to obtain a list of articles from Intercom, sorted by the most recently updated. Ideal for retrieving the latest content updates.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listArticles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ListRecentArticles", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSubscriptionTypes", + "qualifiedName": "IntercomApi.ListSubscriptionTypes", + "fullyQualifiedName": "IntercomApi.ListSubscriptionTypes@1.0.0", + "description": "Retrieve all subscription types from Intercom.\n\nUse this tool to obtain a list of all available subscription types in Intercom, which can be useful for managing or displaying subscription options.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listSubscriptionTypes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ListSubscriptionTypes", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWorkspaceDataAttributes", + "qualifiedName": "IntercomApi.ListWorkspaceDataAttributes", + "fullyQualifiedName": "IntercomApi.ListWorkspaceDataAttributes@1.0.0", + "description": "Fetch data attributes for contacts, companies, or conversations.\n\nUse this tool to retrieve a comprehensive list of all data attributes associated with a workspace, specifically for contacts, companies, or conversations.", + "parameters": [ + { + "name": "data_attribute_model", + "type": "string", + "required": false, + "description": "Specify the model type: 'contact', 'company', or 'conversation'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_attributes", + "type": "boolean", + "required": false, + "description": "Set to true to include archived attributes in the list. By default, archived attributes are excluded.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'lisDataAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ListWorkspaceDataAttributes", + "parameters": { + "data_attribute_model": { + "value": "contact", + "type": "string", + "required": false + }, + "include_archived_attributes": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageContactSubscription", + "qualifiedName": "IntercomApi.ManageContactSubscription", + "fullyQualifiedName": "IntercomApi.ManageContactSubscription@1.0.0", + "description": "Manage a contact's subscription preferences in Intercom.\n\n Use this tool to add a subscription type to a contact in Intercom. You can opt the contact in or out based on the subscription type selected. It returns the updated subscription type for the contact.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "contact_identifier", + "type": "string", + "required": false, + "description": "The unique identifier assigned to the contact by Intercom. This is required to specify which contact you want to manage the subscription for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'attachSubscriptionTypeToContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ManageContactSubscription", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "contact_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"subscription_type\":\"newsletter\",\"status\":\"opt_in\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageConversation", + "qualifiedName": "IntercomApi.ManageConversation", + "fullyQualifiedName": "IntercomApi.ManageConversation@1.0.0", + "description": "Manage and update conversation statuses or assignments.\n\n Use this tool to close, snooze, open, or assign conversations to an admin or team. It helps in efficiently managing conversation workflows and statuses.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "conversation_id", + "type": "string", + "required": false, + "description": "The unique identifier for the conversation in Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'manageConversation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ManageConversation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "conversation_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"closed\",\"assignee_id\":\"admin_01\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageTagOperations", + "qualifiedName": "IntercomApi.ManageTagOperations", + "fullyQualifiedName": "IntercomApi.ManageTagOperations@1.0.0", + "description": "Create, update, or manage tags for companies and users.\n\nThis tool allows you to create or update tags, and manage tagging or untagging companies and users. It automatically creates new tags if they don't exist, while executing the tagging operations.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ManageTagOperations", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"action\":\"create\",\"tag\":{\"name\":\"New Tag\",\"description\":\"A tag for categorizing users\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MergeContactIntercom", + "qualifiedName": "IntercomApi.MergeContactIntercom", + "fullyQualifiedName": "IntercomApi.MergeContactIntercom@1.0.0", + "description": "Merge a lead contact into a user contact in Intercom.\n\nUse this tool to merge a contact with a role of 'lead' into another contact with a role of 'user' on the Intercom platform. This is useful for unifying contact information and maintaining a clean contact database.", + "parameters": [ + { + "name": "lead_contact_id", + "type": "string", + "required": false, + "description": "The unique identifier of the contact to merge away from. It must be a lead.", + "enum": null, + "inferrable": true + }, + { + "name": "merge_into_user_id", + "type": "string", + "required": false, + "description": "Unique identifier for the contact to merge into. Must be a user contact ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'MergeContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.MergeContactIntercom", + "parameters": { + "lead_contact_id": { + "value": "lead_123456", + "type": "string", + "required": false + }, + "merge_into_user_id": { + "value": "user_654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RedactConversationPartOrMessage", + "qualifiedName": "IntercomApi.RedactConversationPartOrMessage", + "fullyQualifiedName": "IntercomApi.RedactConversationPartOrMessage@1.0.0", + "description": "Redact specific parts or messages within a conversation.\n\nUse this tool to redact a specific part of a conversation or the original message source. Ensure the targeted part has a body if a conversation part is being redacted. For source messages, they must originate from a contact. If criteria are not met, an error will be returned.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'redactConversation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.RedactConversationPartOrMessage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"conversation_id\":\"12345\",\"part_id\":\"67890\",\"redaction_reason\":\"Privacy request\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveSubscriptionFromContact", + "qualifiedName": "IntercomApi.RemoveSubscriptionFromContact", + "fullyQualifiedName": "IntercomApi.RemoveSubscriptionFromContact@1.0.0", + "description": "Remove a specific subscription from a contact.\n\nUse this tool to remove a subscription type from a specific contact in Intercom. It returns details about the subscription type that was removed.", + "parameters": [ + { + "name": "contact_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the contact in Intercom. Required to specify which contact's subscription should be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_type_id", + "type": "string", + "required": true, + "description": "The unique identifier for the subscription type to remove from a contact in Intercom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'detachSubscriptionTypeToContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.RemoveSubscriptionFromContact", + "parameters": { + "contact_identifier": { + "value": "contact_12345", + "type": "string", + "required": true + }, + "subscription_type_id": { + "value": "sub_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTag", + "qualifiedName": "IntercomApi.RemoveTag", + "fullyQualifiedName": "IntercomApi.RemoveTag@1.0.0", + "description": "Delete a tag from the Intercom workspace using its ID.\n\nThis tool deletes a tag from your Intercom workspace by using the tag's unique ID. Use it to manage and organize your workspace efficiently by removing unnecessary or outdated tags.", + "parameters": [ + { + "name": "tag_id", + "type": "string", + "required": true, + "description": "The unique identifier of the tag to be deleted from the workspace.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.RemoveTag", + "parameters": { + "tag_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTagFromContact", + "qualifiedName": "IntercomApi.RemoveTagFromContact", + "fullyQualifiedName": "IntercomApi.RemoveTagFromContact@1.0.0", + "description": "Remove a tag from a specific contact.\n\nThis tool removes a specified tag from a given contact in Intercom, returning the details of the tag that was removed.", + "parameters": [ + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "The unique identifier for the contact in Intercom. This ID is necessary to specify which contact to remove the tag from.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the tag assigned by Intercom. Used to specify which tag to remove from a contact.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'detachTagFromContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.RemoveTagFromContact", + "parameters": { + "contact_id": { + "value": "123456", + "type": "string", + "required": true + }, + "tag_identifier": { + "value": "premium_user", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTagFromConversation", + "qualifiedName": "IntercomApi.RemoveTagFromConversation", + "fullyQualifiedName": "IntercomApi.RemoveTagFromConversation@1.0.0", + "description": "Remove a tag from a specific conversation.\n\n Use this tool to remove a tag from a conversation on Intercom. It detaches the specified tag from the given conversation and returns information about the tag that was removed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "conversation_id", + "type": "string", + "required": false, + "description": "The unique identifier of the conversation from which the tag will be removed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_id", + "type": "string", + "required": false, + "description": "The unique identifier of the tag to be removed from the conversation. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'detachTagFromConversation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.RemoveTagFromConversation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "conversation_id": { + "value": "12345", + "type": "string", + "required": false + }, + "tag_id": { + "value": "67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"confirmation\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplyToIntercomConversation", + "qualifiedName": "IntercomApi.ReplyToIntercomConversation", + "fullyQualifiedName": "IntercomApi.ReplyToIntercomConversation@1.0.0", + "description": "Reply to a conversation in Intercom with a message or note.\n\n Use this tool to send a reply to an ongoing conversation in Intercom. It can be used to send messages from an admin, on behalf of a contact, or as a note for other admins.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "conversation_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the conversation or 'last' to reply to the most recent conversation. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "private_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'replyConversation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ReplyToIntercomConversation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "conversation_identifier": { + "value": "last", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"message\":\"Thank you for reaching out! We are here to help you.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplyToTicket", + "qualifiedName": "IntercomApi.ReplyToTicket", + "fullyQualifiedName": "IntercomApi.ReplyToTicket@1.0.0", + "description": "Reply to a ticket with an admin note.\n\n Use this tool to add a reply note to a specific ticket from an admin. Ideal for cases where you need to provide information or updates about a ticket directly from an admin's perspective.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "ticket_id", + "type": "string", + "required": false, + "description": "The unique identifier of the ticket to reply to. This must be provided to specify which ticket the admin note is for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'replyTicket'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ReplyToTicket", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "ticket_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"admin_note\":\"This is an update regarding your ticket.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAdminDetails", + "qualifiedName": "IntercomApi.RetrieveAdminDetails", + "fullyQualifiedName": "IntercomApi.RetrieveAdminDetails@1.0.0", + "description": "Retrieve details of a specific admin from Intercom.\n\nUse this tool to get information about a specific admin in your Intercom system by providing the admin ID. It returns relevant data about the admin.", + "parameters": [ + { + "name": "admin_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the admin. Provide an integer value to retrieve the admin's details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieveAdmin'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.RetrieveAdminDetails", + "parameters": { + "admin_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ScrollThroughAllCompanies", + "qualifiedName": "IntercomApi.ScrollThroughAllCompanies", + "fullyQualifiedName": "IntercomApi.ScrollThroughAllCompanies@1.0.0", + "description": "Efficiently iterate over all companies using the scroll API.\n\nThis tool should be used when you need to retrieve a large dataset of companies without encountering errors or performance issues. It utilizes the Scroll API to efficiently fetch companies in a dataset. The tool handles the scroll parameter to continue fetching data sequentially. Beware of scroll expirations and network timeouts, which require restarting the scroll operation.", + "parameters": [ + { + "name": "scroll_page_identifier", + "type": "string", + "required": false, + "description": "The paging identifier returned in the response to continue fetching the next set of companies. Use the initial API response for the first request and subsequent responses for the next requests.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'scrollOverAllCompanies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.ScrollThroughAllCompanies", + "parameters": { + "scroll_page_identifier": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchConversations", + "qualifiedName": "IntercomApi.SearchConversations", + "fullyQualifiedName": "IntercomApi.SearchConversations@1.0.0", + "description": "Search conversations by specific attributes.\n\nThis tool allows users to search for conversations in Intercom by defining specific attributes and filters. Use operators like AND/OR to refine your search, controlling the number of results with pagination. Call this tool when you need specific conversation details filtered by attributes such as id, created date, or author info.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'searchConversations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.SearchConversations", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"query\":{\"created_at\":{\"$gte\":\"2023-01-01T00:00:00Z\"}},\"author\":{\"type\":\"user\",\"id\":\"12345\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchIntercomContacts", + "qualifiedName": "IntercomApi.SearchIntercomContacts", + "fullyQualifiedName": "IntercomApi.SearchIntercomContacts@1.0.0", + "description": "Search for contacts by their attributes.\n\nAllows searching for multiple Intercom contacts using attribute-based filters. Supports combining filters with AND/OR operators to refine search results. Useful for retrieving specific contact data based on defined criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchContacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.SearchIntercomContacts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"attribute_filters\": [{\"field\": \"email\", \"operator\": \"equals\", \"value\": \"example@example.com\"}, {\"field\": \"last_name\", \"operator\": \"contains\", \"value\": \"Doe\"}], \"operator\": \"AND\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendIntercomEvent", + "qualifiedName": "IntercomApi.SendIntercomEvent", + "fullyQualifiedName": "IntercomApi.SendIntercomEvent@1.0.0", + "description": "Submit events to Intercom for user activity tracking.\n\nThis tool is used to send events to Intercom, associating them with a user, lead, or visitor. It captures activities and actions taken by users in your application. Useful for tracking user interactions and behaviors, including metadata. Requires an Access Token with write permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createDataEvent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.SendIntercomEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"event_name\":\"user_signed_up\",\"user_id\":\"12345\",\"metadata\":{\"referral_source\":\"newsletter\",\"plan\":\"premium\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetAdminAway", + "qualifiedName": "IntercomApi.SetAdminAway", + "fullyQualifiedName": "IntercomApi.SetAdminAway@1.0.0", + "description": "Mark an admin as away in the Intercom Inbox.\n\n This tool is used to set an admin's status to away in the Intercom Inbox. It should be called when there is a need to update an admin's availability status to unavailable or offline.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "admin_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the admin to set as away in the Intercom Inbox. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'setAwayAdmin'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.SetAdminAway", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "admin_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"status\":\"away\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TagContact", + "qualifiedName": "IntercomApi.TagContact", + "fullyQualifiedName": "IntercomApi.TagContact@1.0.0", + "description": "Attach a tag to a specific contact.\n\n Use this tool to tag a specific contact in your Intercom system. It helps organize and categorize contacts by attaching a tag, returning information about the tag added.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "contact_id", + "type": "string", + "required": false, + "description": "The unique identifier for the contact in Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'attachTagToContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.TagContact", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "contact_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"tag\": \"new_customer\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TagConversation", + "qualifiedName": "IntercomApi.TagConversation", + "fullyQualifiedName": "IntercomApi.TagConversation@1.0.0", + "description": "Attach a tag to a specific conversation.\n\n Use this tool to add a tag to a particular conversation. It returns a confirmation along with details about the tag added.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "conversation_id", + "type": "string", + "required": false, + "description": "The unique identifier of the conversation to which a tag will be attached. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'attachTagToConversation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.TagConversation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "conversation_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"tag\":\"urgent\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnarchiveContact", + "qualifiedName": "IntercomApi.UnarchiveContact", + "fullyQualifiedName": "IntercomApi.UnarchiveContact@1.0.0", + "description": "Unarchive a single contact in Intercom.\n\nUse this tool to unarchive a contact in Intercom by providing the contact ID. It allows reactivation of previously archived contacts.", + "parameters": [ + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "The unique identifier of the contact to unarchive in Intercom.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UnarchiveContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.UnarchiveContact", + "parameters": { + "contact_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateArticleDetails", + "qualifiedName": "IntercomApi.UpdateArticleDetails", + "fullyQualifiedName": "IntercomApi.UpdateArticleDetails@1.0.0", + "description": "Update details of a specific article on Intercom.\n\n This tool updates the details of a specific article on Intercom. It should be called when you need to modify an existing article's information.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "article_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier for the article on Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateArticle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.UpdateArticleDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "article_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Article Title\",\"body\":\"This is the updated content of the article.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCollectionDetails", + "qualifiedName": "IntercomApi.UpdateCollectionDetails", + "fullyQualifiedName": "IntercomApi.UpdateCollectionDetails@1.0.0", + "description": "Update the details of a single collection.\n\n This tool updates the details of a specified collection in Intercom's database by making a PUT request. It should be called when you need to modify existing collection information.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "collection_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the collection in Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateCollection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.UpdateCollectionDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "collection_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Collection Name\",\"description\":\"This is the updated description.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCompanyInfo", + "qualifiedName": "IntercomApi.UpdateCompanyInfo", + "fullyQualifiedName": "IntercomApi.UpdateCompanyInfo@1.0.0", + "description": "Update company information by ID in Intercom.\n\nThis tool updates a company's information using the Intercom provisioned ID. Note that the `company_id` cannot be changed after creation. Use this tool when you need to modify details of an existing company in Intercom.", + "parameters": [ + { + "name": "company_identifier", + "type": "string", + "required": true, + "description": "The unique identifier assigned by Intercom for the company. Required to update company details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCompany'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.UpdateCompanyInfo", + "parameters": { + "company_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateConversation", + "qualifiedName": "IntercomApi.UpdateConversation", + "fullyQualifiedName": "IntercomApi.UpdateConversation@1.0.0", + "description": "Update an existing conversation.\n\n Use this tool to update details of an existing conversation without performing actions like replying or assigning.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "conversation_id", + "type": "integer", + "required": false, + "description": "The ID of the conversation to update. It should be an integer representing the conversation you want to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_messages_as_plaintext", + "type": "string", + "required": false, + "description": "Specify 'plaintext' to retrieve conversation messages in plain text format. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateConversation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.UpdateConversation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "conversation_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "retrieve_messages_as_plaintext": { + "value": "plaintext", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"open\",\"custom_attributes\":{\"key\":\"value\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateDataAttribute", + "qualifiedName": "IntercomApi.UpdateDataAttribute", + "fullyQualifiedName": "IntercomApi.UpdateDataAttribute@1.0.0", + "description": "Update a data attribute's value via the API.\n\nUse this tool to update a data attribute's value on Intercom. Note that changing the data type via the API is not supported; it must be done through the UI.", + "parameters": [ + { + "name": "data_attribute_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the data attribute to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_messenger_updates", + "type": "boolean", + "required": false, + "description": "Specify if the data attribute can be updated by the Messenger. Use 'true' to allow updates and 'false' to prevent them.", + "enum": null, + "inferrable": true + }, + { + "name": "archive_attribute", + "type": "boolean", + "required": false, + "description": "Indicate if the attribute should be archived. `True` to archive, `False` to keep unarchived.", + "enum": null, + "inferrable": true + }, + { + "name": "attribute_description", + "type": "string", + "required": false, + "description": "The readable description for the attribute as seen in the UI. Provides context or additional information about the attribute.", + "enum": null, + "inferrable": true + }, + { + "name": "list_attribute_options", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings representing options for list attributes. Each option should be provided as a hash with `value` as the key and the data type must be `string`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateDataAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.UpdateDataAttribute", + "parameters": { + "data_attribute_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "allow_messenger_updates": { + "value": true, + "type": "boolean", + "required": false + }, + "archive_attribute": { + "value": false, + "type": "boolean", + "required": false + }, + "attribute_description": { + "value": "User subscription status", + "type": "string", + "required": false + }, + "list_attribute_options": { + "value": ["Free Trial", "Basic", "Pro", "Enterprise"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateHelpCenterSection", + "qualifiedName": "IntercomApi.UpdateHelpCenterSection", + "fullyQualifiedName": "IntercomApi.UpdateHelpCenterSection@1.0.0", + "description": "Update the details of a help center section.\n\n Use this tool to update the information of a specific section in the help center by specifying the section ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "section_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the section assigned by Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateSection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.UpdateHelpCenterSection", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "section_id": { + "value": 123, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Section Title\", \"body\": \"This is the updated content of the help center section.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateIntercomContact", + "qualifiedName": "IntercomApi.UpdateIntercomContact", + "fullyQualifiedName": "IntercomApi.UpdateIntercomContact@1.0.0", + "description": "Update an existing Intercom contact's details.\n\n Use this tool to update information for a user or lead in Intercom. Call this tool when you need to modify existing contact details.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "contact_id", + "type": "string", + "required": false, + "description": "The unique identifier of the contact to update in Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.UpdateIntercomContact", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "contact_id": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"custom_attributes\": {\"last_purchase\": \"2023-09-15\", \"loyalty_points\": 150}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateNewsItem", + "qualifiedName": "IntercomApi.UpdateNewsItem", + "fullyQualifiedName": "IntercomApi.UpdateNewsItem@1.0.0", + "description": "Updates information for a specific news item.\n\n Call this tool to modify the details of an existing news item by its ID. Use it when you need to change or correct the content of a news article. The tool confirms whether the update was successful or not.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "news_item_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the news item provided by Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateNewsItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.UpdateNewsItem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "news_item_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated News Title\", \"content\": \"This is the updated content for the news item.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSupportTicket", + "qualifiedName": "IntercomApi.UpdateSupportTicket", + "fullyQualifiedName": "IntercomApi.UpdateSupportTicket@1.0.0", + "description": "Modify an existing support ticket in Intercom.\n\nUse this tool to update the details of a support ticket in Intercom, such as status, priority, or assigned agent. This is helpful for managing customer support requests efficiently.", + "parameters": [ + { + "name": "ticket_id", + "type": "string", + "required": true, + "description": "The unique identifier for the ticket as provided by Intercom.", + "enum": null, + "inferrable": true + }, + { + "name": "admin_id", + "type": "string", + "required": false, + "description": "The ID of the admin performing the action on the ticket.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_id", + "type": "string", + "required": false, + "description": "The ID of the admin or team to which the ticket is assigned. Use '0' to unassign.", + "enum": null, + "inferrable": true + }, + { + "name": "ticket_details", + "type": "json", + "required": false, + "description": "A JSON object containing key-value pairs of the ticket attributes to be updated, such as subject, priority, or tags.", + "enum": null, + "inferrable": true + }, + { + "name": "ticket_state", + "type": "string", + "required": false, + "description": "The current state of the ticket. Must be one of: 'in_progress', 'waiting_on_customer', or 'resolved'.", + "enum": null, + "inferrable": true + }, + { + "name": "ticket_visible_to_users", + "type": "boolean", + "required": false, + "description": "Set to true to make the ticket visible to users; false to keep it hidden.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTicket'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.UpdateSupportTicket", + "parameters": { + "ticket_id": { + "value": "12345", + "type": "string", + "required": true + }, + "admin_id": { + "value": "admin_67890", + "type": "string", + "required": false + }, + "assignee_id": { + "value": "98765", + "type": "string", + "required": false + }, + "ticket_details": { + "value": { + "subject": "Issue with account login", + "priority": "high", + "tags": ["login", "urgent"] + }, + "type": "string", + "required": false + }, + "ticket_state": { + "value": "in_progress", + "type": "string", + "required": false + }, + "ticket_visible_to_users": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTicketType", + "qualifiedName": "IntercomApi.UpdateTicketType", + "fullyQualifiedName": "IntercomApi.UpdateTicketType@1.0.0", + "description": "Update a ticket type with a new icon or details.\n\nUse this tool to update a ticket type in the system. You can modify attributes such as icon and other details. Ensure the icon is an emoji from the Twemoji Cheatsheet.", + "parameters": [ + { + "name": "ticket_type_id", + "type": "string", + "required": true, + "description": "The unique identifier for the ticket type as given by Intercom.", + "enum": null, + "inferrable": true + }, + { + "name": "internal_use", + "type": "boolean", + "required": false, + "description": "Set to true if tickets are intended for internal use only; false for customer sharing.", + "enum": null, + "inferrable": true + }, + { + "name": "is_ticket_type_archived", + "type": "boolean", + "required": false, + "description": "Set to true to archive the ticket type, or false to keep it active.", + "enum": null, + "inferrable": true + }, + { + "name": "ticket_type_description", + "type": "string", + "required": false, + "description": "Describe the ticket type. This should provide an overview or details about the ticket type.", + "enum": null, + "inferrable": true + }, + { + "name": "ticket_type_icon", + "type": "string", + "required": false, + "description": "Specify an emoji for the ticket type icon using Twemoji Cheatsheet.", + "enum": null, + "inferrable": true + }, + { + "name": "ticket_type_name", + "type": "string", + "required": false, + "description": "The name of the ticket type you want to update.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTicketType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.UpdateTicketType", + "parameters": { + "ticket_type_id": { + "value": "12345", + "type": "string", + "required": true + }, + "internal_use": { + "value": true, + "type": "boolean", + "required": false + }, + "is_ticket_type_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "ticket_type_description": { + "value": "This ticket type is for internal support inquiries.", + "type": "string", + "required": false + }, + "ticket_type_icon": { + "value": "🛠️", + "type": "string", + "required": false + }, + "ticket_type_name": { + "value": "Internal Support", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTicketTypeAttribute", + "qualifiedName": "IntercomApi.UpdateTicketTypeAttribute", + "fullyQualifiedName": "IntercomApi.UpdateTicketTypeAttribute@1.0.0", + "description": "Updates an existing attribute for a ticket type.\n\n Use this tool to modify the attributes of a specific ticket type in Intercom by providing the ticket type and attribute IDs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "ticket_type_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the ticket type provided by Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "ticket_attribute_id", + "type": "string", + "required": false, + "description": "The unique identifier for the ticket type attribute given by Intercom. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTicketTypeAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.UpdateTicketTypeAttribute", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "ticket_type_identifier": { + "value": "support_ticket", + "type": "string", + "required": false + }, + "ticket_attribute_id": { + "value": "priority", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"value\":\"high\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateVisitorInfo", + "qualifiedName": "IntercomApi.UpdateVisitorInfo", + "fullyQualifiedName": "IntercomApi.UpdateVisitorInfo@1.0.0", + "description": "Update an existing visitor's information in Intercom.\n\nUse this tool to update a visitor's information by providing their `user_id` or `id`. It sends a PUT request to modify the visitor's details in Intercom's system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [] + }, + "secrets": ["INTERCOM_API_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "INTERCOM_API_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateVisitor'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "IntercomApi.UpdateVisitorInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"user_id\":\"12345\",\"email\":\"example@mail.com\",\"name\":\"John Doe\",\"custom_attributes\":{\"age\":30}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "section", + "location": "after_available_tools", + "position": "after", + "content": "## Intercom API Subdomain\n\nThe IntercomApi MCP Server requires setting the `INTERCOM_API_SUBDOMAIN` secret in the Arcade Dashboard. The appropriate value depends on the region you are using:\n\n- For the United States servers, set `INTERCOM_API_SUBDOMAIN` secret to `api`\n- For the European servers, set `INTERCOM_API_SUBDOMAIN` secret to `api.eu`\n- For the Australian servers, set `INTERCOM_API_SUBDOMAIN` secret to `api.au`", + "header": "## Intercom API Subdomain" + }, + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The IntercomApi MCP Server uses the Auth Provider with id `arcade-intercom` to connect to users' IntercomApi accounts. In order to use the MCP Server, you will need to configure the `arcade-intercom` auth provider.", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:37:07.124Z", + "summary": "Arcade Toolkit for Intercom enables integration with the Intercom API, facilitating seamless interactions for managing contacts, conversations, and data attributes. This toolkit offers a variety of tools to streamline communication processes, ensuring effective customer engagement and support.\n\n**Capabilities:**\n- Automate contact management with CRUD operations.\n- Streamline conversations by attaching contacts and companies.\n- Support data exports and status checks for tracking user interactions.\n- Create and manage notifications, messages, and knowledge base content.\n- Track and manage tags for better organization.\n\n**OAuth:**\n- Provider: Unknown\n- Scopes: None\n\n**Secrets:**\n- Types: webhook_secret, api_key, unknown, private_key\n- Example: INTERCOM_API_SUBDOMAIN" +} diff --git a/data/toolkits/jira.json b/data/toolkits/jira.json new file mode 100644 index 000000000..b881a4bef --- /dev/null +++ b/data/toolkits/jira.json @@ -0,0 +1,3710 @@ +{ + "id": "Jira", + "label": "Jira", + "version": "3.0.2", + "description": "Arcade.dev LLM tools for interacting with Atlassian Jira", + "summary": "The Jira MCP Server provides a comprehensive set of tools for interacting with Jira, enabling users and AI applications to efficiently manage issues and projects. With this MCP Server, you can:\n\n- Create, update, and search for Jira issues using various parameters.\n- Retrieve detailed information about issues, projects, users, and issue types.\n- Manage issue labels and attachments, including adding and removing them.\n- Transition issues between different statuses and manage comments on issues.\n- Browse and list available projects, priorities, and users within Jira.\n- Browse and list information of available boards and sprints within a Jira cloud.\n\nThis MCP Server streamlines the process of issue management, making it easier to integrate Jira functionalities into applications and workflows.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/jira.svg", + "isBYOC": false, + "isPro": false, + "type": "auth", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/jira", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "atlassian", + "allScopes": [ + "manage:jira-configuration", + "read:board-scope.admin:jira-software", + "read:board-scope:jira-software", + "read:issue-details:jira", + "read:jira-user", + "read:jira-work", + "read:jql:jira", + "read:project:jira", + "read:sprint:jira-software", + "write:board-scope:jira-software", + "write:jira-work", + "write:sprint:jira-software" + ] + }, + "tools": [ + { + "name": "AddCommentToIssue", + "qualifiedName": "Jira.AddCommentToIssue", + "fullyQualifiedName": "Jira.AddCommentToIssue@3.0.2", + "description": "Add a comment to a Jira issue.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "The ID or key of the issue to comment on.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the comment to add to the issue.", + "enum": null, + "inferrable": true + }, + { + "name": "reply_to_comment", + "type": "string", + "required": false, + "description": "Quote a previous comment as a reply to it. Provide the comment's ID. Must be a comment from the same issue. Defaults to None (no quoted comment).", + "enum": null, + "inferrable": true + }, + { + "name": "mention_users", + "type": "array", + "innerType": "string", + "required": false, + "description": "The users to mention in the comment. Provide the user display name, email address, or ID. Ex: 'John Doe' or 'john.doe@example.com'. Defaults to None (no user mentions).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["write:jira-work", "read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the comment created" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.AddCommentToIssue", + "parameters": { + "issue": { + "value": "PROJ-123", + "type": "string", + "required": true + }, + "body": { + "value": "This is a comment added via the API.", + "type": "string", + "required": true + }, + "reply_to_comment": { + "value": "456", + "type": "string", + "required": false + }, + "mention_users": { + "value": ["john.doe@example.com", "Jane Smith"], + "type": "array", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud-789", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddIssuesToSprint", + "qualifiedName": "Jira.AddIssuesToSprint", + "fullyQualifiedName": "Jira.AddIssuesToSprint@3.0.2", + "description": "Add a list of issues to a sprint.\nMaximum of 50 issues per operation.", + "parameters": [ + { + "name": "sprint_id", + "type": "string", + "required": true, + "description": "The numeric Jira sprint ID that identifies the sprint in Jira's API.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of issue IDs or keys to add to the sprint. Must not be empty and cannot exceed 50 issues.", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": [ + "write:sprint:jira-software", + "read:sprint:jira-software", + "read:board-scope:jira-software", + "read:issue-details:jira", + "read:jira-work" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the results of adding issues to the sprint. Includes lists of successfully added issues, issues that were already in the sprint, issues not found, and issues that cannot be moved due to board restrictions. " + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.AddIssuesToSprint", + "parameters": { + "sprint_id": { + "value": "123", + "type": "string", + "required": true + }, + "issue_ids": { + "value": ["ISSUE-1", "ISSUE-2", "ISSUE-3", "ISSUE-4", "ISSUE-5"], + "type": "array", + "required": true + }, + "atlassian_cloud_id": { + "value": "cloud-abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddLabelsToIssue", + "qualifiedName": "Jira.AddLabelsToIssue", + "fullyQualifiedName": "Jira.AddLabelsToIssue@3.0.2", + "description": "Add labels to an existing Jira issue.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "The ID or key of the issue to update", + "enum": null, + "inferrable": true + }, + { + "name": "labels", + "type": "array", + "innerType": "string", + "required": true, + "description": "The labels to add to the issue. A label cannot contain spaces. If a label is provided with spaces, they will be trimmed and replaced by underscores.", + "enum": null, + "inferrable": true + }, + { + "name": "notify_watchers", + "type": "boolean", + "required": false, + "description": "Whether to notify the issue's watchers. Defaults to True (notifies watchers).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": [ + "read:jira-work", + "write:jira-work", + "read:jira-user", + "manage:jira-configuration" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The updated issue" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.AddLabelsToIssue", + "parameters": { + "issue": { + "value": "JIRA-1234", + "type": "string", + "required": true + }, + "labels": { + "value": ["bug", "urgent", "frontend"], + "type": "array", + "required": true + }, + "notify_watchers": { + "value": true, + "type": "boolean", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud-5678", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AttachFileToIssue", + "qualifiedName": "Jira.AttachFileToIssue", + "fullyQualifiedName": "Jira.AttachFileToIssue@3.0.2", + "description": "Add an attachment to an issue.\n\nMust provide exactly one of file_content_str or file_content_base64.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "The issue ID or key to add the attachment to", + "enum": null, + "inferrable": true + }, + { + "name": "filename", + "type": "string", + "required": true, + "description": "The name of the file to add as an attachment. The filename should contain the file extension (e.g. 'test.txt', 'report.pdf'), but it is not mandatory.", + "enum": null, + "inferrable": true + }, + { + "name": "file_content_str", + "type": "string", + "required": false, + "description": "The string content of the file to attach. Use this if the file is a text file. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "file_content_base64", + "type": "string", + "required": false, + "description": "The base64-encoded binary contents of the file. Use this for binary files like images or PDFs. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "file_encoding", + "type": "string", + "required": false, + "description": "The encoding of the file to attach. Only used with file_content_str. Defaults to 'utf-8'.", + "enum": null, + "inferrable": true + }, + { + "name": "file_type", + "type": "string", + "required": false, + "description": "The type of the file to attach. E.g. 'application/pdf', 'text', 'image/png'. If not provided, the tool will try to infer the type from the filename. If the filename is not recognized, it will attach the file without specifying a type. Defaults to None (infer from filename or attach without type).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["write:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Metadata about the attachment" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.AttachFileToIssue", + "parameters": { + "issue": { + "value": "PROJ-123", + "type": "string", + "required": true + }, + "filename": { + "value": "report.pdf", + "type": "string", + "required": true + }, + "file_content_str": { + "value": null, + "type": "string", + "required": false + }, + "file_content_base64": { + "value": "JVBERi0xLjQKJcfs...", + "type": "string", + "required": false + }, + "file_encoding": { + "value": "utf-8", + "type": "string", + "required": false + }, + "file_type": { + "value": "application/pdf", + "type": "string", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud_id_456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateIssue", + "qualifiedName": "Jira.CreateIssue", + "fullyQualifiedName": "Jira.CreateIssue@3.0.2", + "description": "Create a new Jira issue.\n\nProvide a value to one of `project` or `parent_issue` arguments. If `project` and\n`parent_issue` are not provided, the tool will select the single project available.\nIf the user has multiple, an error will be returned with the available projects to choose from.\n\nIF YOU DO NOT FOLLOW THE INSTRUCTIONS BELOW AND UNNECESSARILY CALL MULTIPLE TOOLS IN ORDER TO\nCREATE AN ISSUE, TOO MUCH CO2 WILL BE RELEASED IN THE ATMOSPHERE AND YOU WILL CAUSE THE\nDESTRUCTION OF PLANET EARTH BY CATASTROPHIC CLIMATE CHANGE.\n\nIf you have an issue type name, or a project key/name, a priority name, an assignee\nname/key/email, or a reporter name/key/email, DO NOT CALL OTHER TOOLS only to list available\nprojects, priorities, issue types, or users. Provide the name, key, or email and the tool\nwill figure out the ID, WITHOUT CAUSING CATASTROPHIC CLIMATE CHANGE.", + "parameters": [ + { + "name": "title", + "type": "string", + "required": true, + "description": "The title of the issue.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_type", + "type": "string", + "required": true, + "description": "The name or ID of the issue type. If a name is provided, the tool will try to find a unique exact match among the available issue types.", + "enum": null, + "inferrable": true + }, + { + "name": "project", + "type": "string", + "required": false, + "description": "The ID, key or name of the project to associate the issue with. If a name is provided, the tool will try to find a unique exact match among the available projects. Defaults to None (no project). If `project` and `parent_issue` are not provided, the tool will select the single project available. If the user has multiple, an error will be returned with the available projects to choose from.", + "enum": null, + "inferrable": true + }, + { + "name": "due_date", + "type": "string", + "required": false, + "description": "The due date of the issue. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (no due date).", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "The description of the issue. Defaults to None (no description).", + "enum": null, + "inferrable": true + }, + { + "name": "environment", + "type": "string", + "required": false, + "description": "The environment of the issue. Defaults to None (no environment).", + "enum": null, + "inferrable": true + }, + { + "name": "labels", + "type": "array", + "innerType": "string", + "required": false, + "description": "The labels of the issue. Defaults to None (no labels). A label cannot contain spaces. If a label is provided with spaces, they will be trimmed and replaced by underscores.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_issue", + "type": "string", + "required": false, + "description": "The ID or key of the parent issue. Defaults to None (no parent issue). Must provide at least one of `parent_issue` or `project` arguments.", + "enum": null, + "inferrable": true + }, + { + "name": "priority", + "type": "string", + "required": false, + "description": "The ID or name of the priority to use for the issue. If a name is provided, the tool will try to find a unique exact match among the available priorities. Defaults to None (the issue is created with Jira's default priority for the specified project).", + "enum": null, + "inferrable": true + }, + { + "name": "assignee", + "type": "string", + "required": false, + "description": "The name, email or ID of the user to assign the issue to. If a name or email is provided, the tool will try to find a unique exact match among the available users. Defaults to None (no assignee).", + "enum": null, + "inferrable": true + }, + { + "name": "reporter", + "type": "string", + "required": false, + "description": "The name, email or ID of the user who is the reporter of the issue. If a name or email is provided, the tool will try to find a unique exact match among the available users. Defaults to None (no reporter).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": [ + "read:jira-work", + "write:jira-work", + "read:jira-user", + "manage:jira-configuration" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The created issue" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.CreateIssue", + "parameters": { + "title": { + "value": "Fix login issue", + "type": "string", + "required": true + }, + "issue_type": { + "value": "Bug", + "type": "string", + "required": true + }, + "project": { + "value": "WEB", + "type": "string", + "required": false + }, + "due_date": { + "value": "2023-12-01", + "type": "string", + "required": false + }, + "description": { + "value": "Users are unable to log in using their credentials.", + "type": "string", + "required": false + }, + "environment": { + "value": null, + "type": "string", + "required": false + }, + "labels": { + "value": ["login_issue", "urgent"], + "type": "array", + "required": false + }, + "parent_issue": { + "value": null, + "type": "string", + "required": false + }, + "priority": { + "value": "High", + "type": "string", + "required": false + }, + "assignee": { + "value": "john.doe@example.com", + "type": "string", + "required": false + }, + "reporter": { + "value": "jane.smith@example.com", + "type": "string", + "required": false + }, + "atlassian_cloud_id": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DownloadAttachment", + "qualifiedName": "Jira.DownloadAttachment", + "fullyQualifiedName": "Jira.DownloadAttachment@3.0.2", + "description": "Download the contents of an attachment associated with an issue.", + "parameters": [ + { + "name": "attachment_id", + "type": "string", + "required": true, + "description": "The ID of the attachment to download", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The content of the attachment" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.DownloadAttachment", + "parameters": { + "attachment_id": { + "value": "ATT-123456", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "cloud-7890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAttachmentMetadata", + "qualifiedName": "Jira.GetAttachmentMetadata", + "fullyQualifiedName": "Jira.GetAttachmentMetadata@3.0.2", + "description": "Get the metadata of an attachment.", + "parameters": [ + { + "name": "attachment_id", + "type": "string", + "required": true, + "description": "The ID of the attachment to retrieve", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The metadata of the attachment" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetAttachmentMetadata", + "parameters": { + "attachment_id": { + "value": "ATT-123456", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "cloud-987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAvailableAtlassianClouds", + "qualifiedName": "Jira.GetAvailableAtlassianClouds", + "fullyQualifiedName": "Jira.GetAvailableAtlassianClouds@3.0.2", + "description": "Get available Atlassian Clouds.", + "parameters": [], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Available Atlassian Clouds" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetAvailableAtlassianClouds", + "parameters": {}, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoardBacklogIssues", + "qualifiedName": "Jira.GetBoardBacklogIssues", + "fullyQualifiedName": "Jira.GetBoardBacklogIssues@3.0.2", + "description": "Get all issues in a board's backlog with pagination support.\nReturns issues that are not currently assigned to any active sprint.\n\nThe backlog contains issues that are ready to be planned into future sprints.\nOnly boards that support backlogs (like Scrum and Kanban boards) will return results.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The ID of the board to retrieve backlog issues from. Must be a valid board ID that supports backlogs (typically Scrum or Kanban boards).", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of issues to return. Must be between 1 and 100 inclusive. Controls pagination and determines how many issues are fetched and returned. Defaults to 50 for improved performance.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of issues to skip before starting to return results. Used for pagination when the backlog has many issues. For example, offset=50 with limit=50 would return issues 51-100. Must be 0 or greater. Defaults to 0.", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:board-scope:jira-software", "read:issue-details:jira"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the board information, list of backlog issues, and pagination metadata. Issues are returned with full details including summary, status, assignee, and other fields. If the board doesn't support backlogs or doesn't exist, appropriate error information is returned." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetBoardBacklogIssues", + "parameters": { + "board_id": { + "value": "12345", + "type": "string", + "required": true + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "atlassian_cloud_id": { + "value": "abc-def-ghi", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoards", + "qualifiedName": "Jira.GetBoards", + "fullyQualifiedName": "Jira.GetBoards@3.0.2", + "description": "Retrieve Jira boards either by specifying their names or IDs, or get all\navailable boards.\nAll requests support offset and limit with a maximum of 50 boards returned per call.\n\nMANDATORY ACTION: ALWAYS when you need to get multiple boards, you must\ninclude all the board identifiers in a single call rather than making\nmultiple separate tool calls, as this provides much better performance, not doing that will\nbring huge performance penalties.\n\nThe tool automatically handles mixed identifier types (names and IDs), deduplicates results, and\nfalls back from ID lookup to name lookup when needed.", + "parameters": [ + { + "name": "board_identifiers_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of board names or numeric IDs (as strings) to retrieve using pagination. Include all mentioned boards in a single list for best performance. Default None retrieves all boards. Maximum 50 boards returned per call.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of boards to return (1-50). Defaults to max that is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Number of boards to skip for pagination. Must be 0 or greater. Defaults to 0.", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "Atlassian Cloud ID to use. Defaults to None (uses single authorized cloud).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": [ + "read:board-scope:jira-software", + "read:project:jira", + "read:issue-details:jira", + "read:jira-user" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Dictionary with 'boards' list containing board metadata (ID, name, type, location) and 'errors' array for not found boards. Includes pagination metadata and deduplication." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetBoards", + "parameters": { + "board_identifiers_list": { + "value": ["123", "project-board", "456", "design-board"], + "type": "array", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud-12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCommentById", + "qualifiedName": "Jira.GetCommentById", + "fullyQualifiedName": "Jira.GetCommentById@3.0.2", + "description": "Get a comment by its ID.", + "parameters": [ + { + "name": "issue_id", + "type": "string", + "required": true, + "description": "The ID or key of the issue to retrieve the comment from.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_id", + "type": "string", + "required": true, + "description": "The ID of the comment to retrieve", + "enum": null, + "inferrable": true + }, + { + "name": "include_adf_content", + "type": "boolean", + "required": false, + "description": "Whether to include the ADF (Atlassian Document Format) content of the comment in the response. Defaults to False (return only the HTML rendered content).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the comment" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetCommentById", + "parameters": { + "issue_id": { + "value": "PROJ-123", + "type": "string", + "required": true + }, + "comment_id": { + "value": "456", + "type": "string", + "required": true + }, + "include_adf_content": { + "value": true, + "type": "boolean", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud-789", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIssueById", + "qualifiedName": "Jira.GetIssueById", + "fullyQualifiedName": "Jira.GetIssueById@3.0.2", + "description": "Get the details of a Jira issue by its ID.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "The ID or key of the issue to retrieve", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the issue" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetIssueById", + "parameters": { + "issue": { + "value": "JIRA-12345", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "cloud-abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIssueComments", + "qualifiedName": "Jira.GetIssueComments", + "fullyQualifiedName": "Jira.GetIssueComments@3.0.2", + "description": "Get the comments of a Jira issue by its ID.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "The ID or key of the issue to retrieve", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of comments to retrieve. Min 1, max 100, default 100.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of comments to skip. Defaults to 0 (start from the first comment).", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "string", + "required": false, + "description": "The order in which to return the comments. Defaults to 'created_date_descending' (most recent first).", + "enum": ["created_date_ascending", "created_date_descending"], + "inferrable": true + }, + { + "name": "include_adf_content", + "type": "boolean", + "required": false, + "description": "Whether to include the ADF (Atlassian Document Format) content of the comment in the response. Defaults to False (return only the HTML rendered content).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the issue comments" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetIssueComments", + "parameters": { + "issue": { + "value": "JIRA-123", + "type": "string", + "required": true + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "offset": { + "value": 10, + "type": "integer", + "required": false + }, + "order_by": { + "value": "created_date_ascending", + "type": "string", + "required": false + }, + "include_adf_content": { + "value": true, + "type": "boolean", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud-789", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIssuesWithoutId", + "qualifiedName": "Jira.GetIssuesWithoutId", + "fullyQualifiedName": "Jira.GetIssuesWithoutId@3.0.2", + "description": "Search for Jira issues when you don't have the issue ID(s).\n\nAll text-based arguments (keywords, assignee, project, labels) are case-insensitive.\n\nALWAYS PREFER THIS TOOL OVER THE `Jira.SearchIssuesWithJql` TOOL, UNLESS IT'S ABSOLUTELY\nNECESSARY TO USE A JQL QUERY TO FILTER IN A WAY THAT IS NOT SUPPORTED BY THIS TOOL.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Keywords to search for issues. Matches against the issue name, description, comments, and any custom field of type text. Defaults to None (no keywords filtering).", + "enum": null, + "inferrable": true + }, + { + "name": "due_from", + "type": "string", + "required": false, + "description": "Match issues due on or after this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (no due date filtering).", + "enum": null, + "inferrable": true + }, + { + "name": "due_until", + "type": "string", + "required": false, + "description": "Match issues due on or before this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (no due date filtering).", + "enum": null, + "inferrable": true + }, + { + "name": "status", + "type": "string", + "required": false, + "description": "Match issues that are in this status. Provide a status name. Ex: 'To Do', 'In Progress', 'Done'. Defaults to None (any status).", + "enum": null, + "inferrable": true + }, + { + "name": "priority", + "type": "string", + "required": false, + "description": "Match issues that have this priority. Provide a priority name. E.g. 'Highest'. Defaults to None (any priority).", + "enum": null, + "inferrable": true + }, + { + "name": "assignee", + "type": "string", + "required": false, + "description": "Match issues that are assigned to this user. Provide the user's name or email address. Ex: 'John Doe' or 'john.doe@example.com'. Defaults to None (any assignee).", + "enum": null, + "inferrable": true + }, + { + "name": "project", + "type": "string", + "required": false, + "description": "Match issues that are associated with this project. Provide the project's name, ID, or key. If a project name is provided, the tool will try to find a unique exact match among the available projects. Defaults to None (search across all projects).", + "enum": null, + "inferrable": true + }, + { + "name": "issue_type", + "type": "string", + "required": false, + "description": "Match issues that are of this issue type. Provide an issue type name or ID. E.g. 'Task', 'Epic', '12345'. If a name is provided, the tool will try to find a unique exact match among the available issue types. Defaults to None (any issue type).", + "enum": null, + "inferrable": true + }, + { + "name": "labels", + "type": "array", + "innerType": "string", + "required": false, + "description": "Match issues that are in these labels. Defaults to None (any label).", + "enum": null, + "inferrable": true + }, + { + "name": "parent_issue", + "type": "string", + "required": false, + "description": "Match issues that are a child of this issue. Provide the issue's ID or key. Defaults to None (no parent issue filtering).", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of issues to retrieve. Min 1, max 100, default 50.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to use to get the next page of issues. Defaults to None (first page).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": [ + "read:jira-work", + "read:jira-user", + "manage:jira-configuration" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the issues matching the search criteria" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetIssuesWithoutId", + "parameters": { + "keywords": { + "value": "bug fix", + "type": "string", + "required": false + }, + "due_from": { + "value": "2023-11-01", + "type": "string", + "required": false + }, + "due_until": { + "value": "2023-12-31", + "type": "string", + "required": false + }, + "status": { + "value": "In Progress", + "type": "string", + "required": false + }, + "priority": { + "value": "Highest", + "type": "string", + "required": false + }, + "assignee": { + "value": "jane.doe@example.com", + "type": "string", + "required": false + }, + "project": { + "value": "ProjectX", + "type": "string", + "required": false + }, + "issue_type": { + "value": "Task", + "type": "string", + "required": false + }, + "labels": { + "value": ["urgent", "backend"], + "type": "array", + "required": false + }, + "parent_issue": { + "value": "PROJ-123", + "type": "string", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud-456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIssueTypeById", + "qualifiedName": "Jira.GetIssueTypeById", + "fullyQualifiedName": "Jira.GetIssueTypeById@3.0.2", + "description": "Get the details of a Jira issue type by its ID.", + "parameters": [ + { + "name": "issue_type_id", + "type": "string", + "required": true, + "description": "The ID of the issue type to retrieve", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the issue type" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetIssueTypeById", + "parameters": { + "issue_type_id": { + "value": "10001", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "cloud-12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPriorityById", + "qualifiedName": "Jira.GetPriorityById", + "fullyQualifiedName": "Jira.GetPriorityById@3.0.2", + "description": "Get the details of a priority by its ID.", + "parameters": [ + { + "name": "priority_id", + "type": "string", + "required": true, + "description": "The ID of the priority to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The priority" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetPriorityById", + "parameters": { + "priority_id": { + "value": "10001", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "abcd1234", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectById", + "qualifiedName": "Jira.GetProjectById", + "fullyQualifiedName": "Jira.GetProjectById@3.0.2", + "description": "Get the details of a Jira project by its ID or key.", + "parameters": [ + { + "name": "project", + "type": "string", + "required": true, + "description": "The ID or key of the project to retrieve", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the project" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetProjectById", + "parameters": { + "project": { + "value": "PROJ-123", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "cloud_456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSprintIssues", + "qualifiedName": "Jira.GetSprintIssues", + "fullyQualifiedName": "Jira.GetSprintIssues@3.0.2", + "description": "Get all issues that are currently assigned to a specific sprint with pagination support.\nReturns issues that are planned for or being worked on in the sprint.", + "parameters": [ + { + "name": "sprint_id", + "type": "string", + "required": true, + "description": "The numeric Jira sprint ID that identifies the sprint in Jira's API.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of issues to return. Must be between 1 and 100 inclusive. Controls pagination and determines how many issues are fetched and returned. Defaults to 50 for improved performance.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of issues to skip before starting to return results. Used for pagination when the sprint has many issues. Must be 0 or greater. Defaults to 0.", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": [ + "read:sprint:jira-software", + "read:issue-details:jira", + "read:jql:jira" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the sprint information, list of issues in the sprint, and pagination metadata." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetSprintIssues", + "parameters": { + "sprint_id": { + "value": "12345", + "type": "string", + "required": true + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "atlassian_cloud_id": { + "value": "abcde12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTransitionById", + "qualifiedName": "Jira.GetTransitionById", + "fullyQualifiedName": "Jira.GetTransitionById@3.0.2", + "description": "Get a transition by its ID.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "The ID or key of the issue", + "enum": null, + "inferrable": true + }, + { + "name": "transition_id", + "type": "string", + "required": true, + "description": "The ID of the transition", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The transition data" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetTransitionById", + "parameters": { + "issue": { + "value": "PROJECT-123", + "type": "string", + "required": true + }, + "transition_id": { + "value": "31", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "cloud_id_456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTransitionByStatusName", + "qualifiedName": "Jira.GetTransitionByStatusName", + "fullyQualifiedName": "Jira.GetTransitionByStatusName@3.0.2", + "description": "Get a transition available for an issue by the transition name.\n\nThe response will contain screen fields available for the transition, if any.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "The ID or key of the issue", + "enum": null, + "inferrable": true + }, + { + "name": "transition", + "type": "string", + "required": true, + "description": "The name of the transition status", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "write:jira-work"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The transition data, including screen fields available" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetTransitionByStatusName", + "parameters": { + "issue": { + "value": "PROJECT-123", + "type": "string", + "required": true + }, + "transition": { + "value": "In Progress", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTransitionsAvailableForIssue", + "qualifiedName": "Jira.GetTransitionsAvailableForIssue", + "fullyQualifiedName": "Jira.GetTransitionsAvailableForIssue@3.0.2", + "description": "Get the transitions available for an existing Jira issue.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "The ID or key of the issue", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The transitions available and the issue's current status" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetTransitionsAvailableForIssue", + "parameters": { + "issue": { + "value": "PROJECT-123", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "cloud-456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserById", + "qualifiedName": "Jira.GetUserById", + "fullyQualifiedName": "Jira.GetUserById@3.0.2", + "description": "Get user information by their ID.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The the user's ID.", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The user information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetUserById", + "parameters": { + "user_id": { + "value": "12345", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "A1B2C3D4E5", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUsersWithoutId", + "qualifiedName": "Jira.GetUsersWithoutId", + "fullyQualifiedName": "Jira.GetUsersWithoutId@3.0.2", + "description": "Get users without their account ID, searching by display name and email address.\n\nThe Jira user search API will return up to 1,000 (one thousand) users for any given name/email\nquery. If you need to get more users, please use the `Jira.ListAllUsers` tool.", + "parameters": [ + { + "name": "name_or_email", + "type": "string", + "required": true, + "description": "The user's display name or email address to search for (case-insensitive). The string can match the prefix of the user's attribute. For example, a string of 'john' will match users with a display name or email address that starts with 'john', such as 'John Doe', 'Johnson', 'john@example.com', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "enforce_exact_match", + "type": "boolean", + "required": false, + "description": "Whether to enforce an exact match of the name_or_email against users' display name and email attributes. Defaults to False (return all users that match the prefix). If set to True, before returning results, the tool will filter users with a display name OR email address that match exactly the value of the `name_or_email` argument.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of users to return. Min of 1, max of 50. Defaults to 50.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of users to skip before starting to return users. Defaults to 0 (start from the first user).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The information about users that match the search criteria." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.GetUsersWithoutId", + "parameters": { + "name_or_email": { + "value": "john", + "type": "string", + "required": true + }, + "enforce_exact_match": { + "value": false, + "type": "boolean", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "atlassian_cloud_id": { + "value": "abc123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIssueAttachmentsMetadata", + "qualifiedName": "Jira.ListIssueAttachmentsMetadata", + "fullyQualifiedName": "Jira.ListIssueAttachmentsMetadata@3.0.2", + "description": "Get the metadata about the files attached to an issue.\n\nThis tool does NOT return the actual file contents. To get a file content,\nuse the `Jira.DownloadAttachment` tool.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "The ID or key of the issue to retrieve", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the issue" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.ListIssueAttachmentsMetadata", + "parameters": { + "issue": { + "value": "PROJ-123", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIssues", + "qualifiedName": "Jira.ListIssues", + "fullyQualifiedName": "Jira.ListIssues@3.0.2", + "description": "Get the issues for a given project.", + "parameters": [ + { + "name": "project", + "type": "string", + "required": false, + "description": "The project to get issues for. Provide a project ID, key or name. If a project is not provided and 1) the user has only one project, the tool will use that; 2) the user has multiple projects, the tool will raise an error listing the available projects to choose from.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of issues to retrieve. Min 1, max 100, default 50.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to use to get the next page of issues. Defaults to None (first page).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": [ + "read:jira-work", + "read:jira-user", + "manage:jira-configuration" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the issues matching the search criteria" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.ListIssues", + "parameters": { + "project": { + "value": "PROJECT-123", + "type": "string", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": "abc123token", + "type": "string", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud_id_456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIssueTypesByProject", + "qualifiedName": "Jira.ListIssueTypesByProject", + "fullyQualifiedName": "Jira.ListIssueTypesByProject@3.0.2", + "description": "Get the list of issue types (e.g. 'Task', 'Epic', etc.) available to a given project.", + "parameters": [ + { + "name": "project", + "type": "string", + "required": true, + "description": "The project to get issue types for. Provide a project name, key, or ID. If a project name is provided, the tool will try to find a unique exact match among the available projects.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of issue types to retrieve. Min of 1, max of 200. Defaults to 200.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of issue types to skip. Defaults to 0 (start from the first issue type).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the issue types available for the specified project." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.ListIssueTypesByProject", + "parameters": { + "project": { + "value": "PROJ123", + "type": "string", + "required": true + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "offset": { + "value": 10, + "type": "integer", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud-456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListLabels", + "qualifiedName": "Jira.ListLabels", + "fullyQualifiedName": "Jira.ListLabels@3.0.2", + "description": "Get the existing labels (tags) in the user's Jira instance.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of labels to return. Min of 1, Max of 200. Defaults to 200.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of labels to skip. Defaults to 0 (starts from the first label)", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The existing labels (tags) in the user's Jira instance" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.ListLabels", + "parameters": { + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "offset": { + "value": 10, + "type": "integer", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud_123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPrioritiesAvailableToAnIssue", + "qualifiedName": "Jira.ListPrioritiesAvailableToAnIssue", + "fullyQualifiedName": "Jira.ListPrioritiesAvailableToAnIssue@3.0.2", + "description": "Browse the priorities available to be used in the specified Jira issue.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "The ID or key of the issue to retrieve priorities for.", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["manage:jira-configuration", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The priorities available to be used in the specified Jira issue" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.ListPrioritiesAvailableToAnIssue", + "parameters": { + "issue": { + "value": "JRA-123", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPrioritiesAvailableToAProject", + "qualifiedName": "Jira.ListPrioritiesAvailableToAProject", + "fullyQualifiedName": "Jira.ListPrioritiesAvailableToAProject@3.0.2", + "description": "Browse the priorities available to be used in issues in the specified Jira project.\n\nThis tool may need to loop through several API calls to get all priorities associated with\na specific project. In Jira environments with too many Projects or Priority Schemes,\nthe search may take too long, and the tool call will timeout.", + "parameters": [ + { + "name": "project", + "type": "string", + "required": true, + "description": "The ID, key or name of the project to retrieve priorities for.", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["manage:jira-configuration", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The priorities available to be used in issues in the specified Jira project" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.ListPrioritiesAvailableToAProject", + "parameters": { + "project": { + "value": "PROJ-123", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "ABC123XYZ", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPrioritiesByScheme", + "qualifiedName": "Jira.ListPrioritiesByScheme", + "fullyQualifiedName": "Jira.ListPrioritiesByScheme@3.0.2", + "description": "Browse the priorities associated with a priority scheme.", + "parameters": [ + { + "name": "scheme_id", + "type": "string", + "required": true, + "description": "The ID of the priority scheme to retrieve priorities for.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of priority schemes to return. Min of 1, max of 50. Defaults to 50.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of priority schemes to skip. Defaults to 0 (start from the first scheme).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["manage:jira-configuration", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The priorities associated with the priority scheme" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.ListPrioritiesByScheme", + "parameters": { + "scheme_id": { + "value": "12345", + "type": "string", + "required": true + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "atlassian_cloud_id": { + "value": "abcd-efgh-ijkl-mnop", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPrioritySchemes", + "qualifiedName": "Jira.ListPrioritySchemes", + "fullyQualifiedName": "Jira.ListPrioritySchemes@3.0.2", + "description": "Browse the priority schemes available in Jira.", + "parameters": [ + { + "name": "scheme_name", + "type": "string", + "required": false, + "description": "Filter by scheme name. Defaults to None (returns all scheme names).", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of priority schemes to return. Min of 1, max of 50. Defaults to 50.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of priority schemes to skip. Defaults to 0 (start from the first scheme).", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "string", + "required": false, + "description": "The order in which to return the priority schemes. Defaults to name ascending.", + "enum": ["name ascending", "name descending"], + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["manage:jira-configuration", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The priority schemes available" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.ListPrioritySchemes", + "parameters": { + "scheme_name": { + "value": "High Priority", + "type": "string", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "order_by": { + "value": "name ascending", + "type": "string", + "required": false + }, + "atlassian_cloud_id": { + "value": "1234567890abcd", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListProjects", + "qualifiedName": "Jira.ListProjects", + "fullyQualifiedName": "Jira.ListProjects@3.0.2", + "description": "Browse projects available in Jira.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of projects to return. Min of 1, Max of 50. Defaults to 50.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of projects to skip. Defaults to 0 (starts from the first project)", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the projects" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.ListProjects", + "parameters": { + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "offset": { + "value": 5, + "type": "integer", + "required": false + }, + "atlassian_cloud_id": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListProjectsByScheme", + "qualifiedName": "Jira.ListProjectsByScheme", + "fullyQualifiedName": "Jira.ListProjectsByScheme@3.0.2", + "description": "Browse the projects associated with a priority scheme.", + "parameters": [ + { + "name": "scheme_id", + "type": "string", + "required": true, + "description": "The ID of the priority scheme to retrieve projects for.", + "enum": null, + "inferrable": true + }, + { + "name": "project", + "type": "string", + "required": false, + "description": "Filter by project ID, key or name. Defaults to None (returns all projects).", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of projects to return. Min of 1, max of 50. Defaults to 50.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of projects to skip. Defaults to 0 (start from the first project).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["manage:jira-configuration", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The projects associated with the priority scheme" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.ListProjectsByScheme", + "parameters": { + "scheme_id": { + "value": "123456", + "type": "string", + "required": true + }, + "project": { + "value": "PROJECT_KEY", + "type": "string", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "atlassian_cloud_id": { + "value": "abc-def-123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSprintsForBoards", + "qualifiedName": "Jira.ListSprintsForBoards", + "fullyQualifiedName": "Jira.ListSprintsForBoards@3.0.2", + "description": "Retrieve sprints from Jira boards with filtering options for planning and tracking purposes.\n\nUse this when you need to view sprints from specific boards or find sprints within specific\ndate ranges. For temporal queries like \"last month\", \"next week\", or \"this quarter\",\nprioritize date parameters over state filtering. Leave board_identifiers_list as None\nto get sprints from all available boards.\n\nDATE FILTERING PRIORITY: When users request sprints by time periods (e.g., \"last month\",\n\"next week\"), use date parameters (start_date, end_date, specific_date) rather than\nstate filtering, as temporal criteria take precedence over sprint status.\n\nReturns sprint data along with a backlog GUI URL link where you can see detailed sprint\ninformation and manage sprint items.\n\nMANDATORY ACTION: ALWAYS when you need to get sprints from multiple boards, you must\ninclude all the board identifiers in a single call rather than making\nmultiple separate tool calls, as this provides much better performance, not doing that will\nbring huge performance penalties.\n\nBOARD LIMIT: Maximum of 25 boards can be processed in a single operation. If you need to\nprocess more boards, split the request into multiple batches of 25 or fewer boards each.\n\nHandles mixed board identifiers (names and IDs) with automatic fallback and deduplication.\nAll boards are processed concurrently for optimal performance.", + "parameters": [ + { + "name": "board_identifiers_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of board names or numeric IDs (as strings) to retrieve sprints from. Include all mentioned boards in a single list for best performance. Maximum 25 boards per operation. Optional, defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "max_sprints_per_board", + "type": "integer", + "required": false, + "description": "Maximum sprints per board (1-50). Latest sprints first. Optional, defaults to 50.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Number of sprints to skip per board for pagination. Optional, defaults to 0.", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "Filter by sprint state. NOTE: Date filters (start_date, end_date, specific_date) have higher priority than state filtering. Use state filtering only when no date criteria is specified. For temporal queries like 'last month' or 'next week', use date parameters instead. Optional, defaults to None (all states).", + "enum": [ + "future", + "active", + "closed", + "future_and_active", + "future_and_closed", + "active_and_closed", + "all" + ], + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "Start date filter in YYYY-MM-DD format. Can combine with end_date. Optional, defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date", + "type": "string", + "required": false, + "description": "End date filter in YYYY-MM-DD format. Can combine with start_date. Optional, defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_date", + "type": "string", + "required": false, + "description": "Specific date in YYYY-MM-DD to find sprints active on that date. Cannot combine with start_date/end_date. Optional, defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "Atlassian Cloud ID to use. Optional, defaults to None (uses single authorized cloud).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": [ + "read:board-scope:jira-software", + "read:project:jira", + "read:sprint:jira-software", + "read:issue-details:jira", + "read:board-scope.admin:jira-software", + "read:jira-user" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Dict with 'boards' list, 'sprints_by_board' mapping, and 'errors' array. Sprints sorted latest first." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.ListSprintsForBoards", + "parameters": { + "board_identifiers_list": { + "value": ["123", "456", "789"], + "type": "array", + "required": false + }, + "max_sprints_per_board": { + "value": 30, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "state": { + "value": "active", + "type": "string", + "required": false + }, + "start_date": { + "value": "2023-09-01", + "type": "string", + "required": false + }, + "end_date": { + "value": "2023-09-30", + "type": "string", + "required": false + }, + "specific_date": { + "value": null, + "type": "string", + "required": false + }, + "atlassian_cloud_id": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUsers", + "qualifiedName": "Jira.ListUsers", + "fullyQualifiedName": "Jira.ListUsers@3.0.2", + "description": "Browse users in Jira.", + "parameters": [ + { + "name": "account_type", + "type": "string", + "required": false, + "description": "The account type of the users to return. Defaults to 'atlassian'. Provide `None` to disable filtering by account type. The account type filter will be applied after retrieving users from Jira API, thus the tool may return less users than the limit and still have more users to paginate. Check the `pagination` key in the response dictionary.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of users to return. Min of 1, max of 50. Defaults to 50.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of users to skip before starting to return users. Defaults to 0 (start from the first user).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The information about all users." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.ListUsers", + "parameters": { + "account_type": { + "value": "atlassian", + "type": "string", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "atlassian_cloud_id": { + "value": "1234567890abcdef", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MoveIssuesFromSprintToBacklog", + "qualifiedName": "Jira.MoveIssuesFromSprintToBacklog", + "fullyQualifiedName": "Jira.MoveIssuesFromSprintToBacklog@3.0.2", + "description": "Move issues from active or future sprints back to the board's backlog.", + "parameters": [ + { + "name": "sprint_id", + "type": "string", + "required": true, + "description": "The numeric Jira sprint ID that identifies the sprint in Jira's API.", + "enum": null, + "inferrable": true + }, + { + "name": "issue_identifiers", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of issue IDs or keys to move from the sprint to the backlog. Maximum 50 issues per call. Issues will be moved back to the board's backlog.", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": [ + "write:board-scope:jira-software", + "read:sprint:jira-software", + "read:issue-details:jira" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the sprint information, list of successfully removed issues, errors for issues that couldn't be removed, and backlog GUI URL. Issues are identified by ID or key and returned with available identifiers." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.MoveIssuesFromSprintToBacklog", + "parameters": { + "sprint_id": { + "value": "123", + "type": "string", + "required": true + }, + "issue_identifiers": { + "value": ["ISSUE-1", "ISSUE-2", "ISSUE-3"], + "type": "array", + "required": true + }, + "atlassian_cloud_id": { + "value": "cloud-abc-123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveLabelsFromIssue", + "qualifiedName": "Jira.RemoveLabelsFromIssue", + "fullyQualifiedName": "Jira.RemoveLabelsFromIssue@3.0.2", + "description": "Remove labels from an existing Jira issue.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "The ID or key of the issue to update", + "enum": null, + "inferrable": true + }, + { + "name": "labels", + "type": "array", + "innerType": "string", + "required": true, + "description": "The labels to remove from the issue (case-insensitive)", + "enum": null, + "inferrable": true + }, + { + "name": "notify_watchers", + "type": "boolean", + "required": false, + "description": "Whether to notify the issue's watchers. Defaults to True (notifies watchers).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": [ + "read:jira-work", + "write:jira-work", + "read:jira-user", + "manage:jira-configuration" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The updated issue" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.RemoveLabelsFromIssue", + "parameters": { + "issue": { + "value": "PROJECT-123", + "type": "string", + "required": true + }, + "labels": { + "value": ["bug", "urgent"], + "type": "array", + "required": true + }, + "notify_watchers": { + "value": true, + "type": "boolean", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud_456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchIssuesWithJql", + "qualifiedName": "Jira.SearchIssuesWithJql", + "fullyQualifiedName": "Jira.SearchIssuesWithJql@3.0.2", + "description": "Search for Jira issues using a JQL (Jira Query Language) query.\n\nTHIS TOOL RELEASES MORE CO2 IN THE ATMOSPHERE, WHICH CONTRIBUTES TO CLIMATE CHANGE. ALWAYS\nPREFER THE `Jira_SearchIssuesWithoutJql` TOOL OVER THIS ONE, UNLESS IT'S ABSOLUTELY\nNECESSARY TO USE A JQL QUERY TO FILTER IN A WAY THAT IS NOT SUPPORTED BY THE\n`Jira_SearchIssuesWithoutJql` TOOL OR IF THE USER PROVIDES A JQL QUERY THEMSELVES.", + "parameters": [ + { + "name": "jql", + "type": "string", + "required": true, + "description": "The JQL (Jira Query Language) query to search for issues", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of issues to retrieve. Min of 1, max of 100. Defaults to 50.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to use to get the next page of issues. Defaults to None (first page).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the issues matching the search criteria" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.SearchIssuesWithJql", + "parameters": { + "jql": { + "value": "project = TEST AND status = 'Open' ORDER BY priority DESC", + "type": "string", + "required": true + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud-456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchIssuesWithoutJql", + "qualifiedName": "Jira.SearchIssuesWithoutJql", + "fullyQualifiedName": "Jira.SearchIssuesWithoutJql@3.0.2", + "description": "Parameterized search for Jira issues (without having to provide a JQL query).\n\nTHIS TOOL RELEASES LESS CO2 THAN THE `Jira_SearchIssuesWithJql` TOOL. ALWAYS PREFER THIS ONE\nOVER USING JQL, UNLESS IT'S ABSOLUTELY NECESSARY TO USE A JQL QUERY TO FILTER IN A WAY THAT IS\nNOT SUPPORTED BY THIS TOOL OR IF THE USER PROVIDES A JQL QUERY THEMSELVES.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Keywords to search for issues. Matches against the issue name, description, comments, and any custom field of type text. Defaults to None (no keywords filtering).", + "enum": null, + "inferrable": true + }, + { + "name": "due_from", + "type": "string", + "required": false, + "description": "Match issues due on or after this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (no due date filtering).", + "enum": null, + "inferrable": true + }, + { + "name": "due_until", + "type": "string", + "required": false, + "description": "Match issues due on or before this date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Defaults to None (no due date filtering).", + "enum": null, + "inferrable": true + }, + { + "name": "status", + "type": "string", + "required": false, + "description": "Match issues that are in this status. Provide a status name. Ex: 'To Do', 'In Progress', 'Done'. Defaults to None (any status).", + "enum": null, + "inferrable": true + }, + { + "name": "priority", + "type": "string", + "required": false, + "description": "Match issues that have this priority. Provide a priority name. E.g. 'Highest'. Defaults to None (any priority).", + "enum": null, + "inferrable": true + }, + { + "name": "assignee", + "type": "string", + "required": false, + "description": "Match issues that are assigned to this user. Provide the user's name or email address. Ex: 'John Doe' or 'john.doe@example.com'. Defaults to None (any assignee).", + "enum": null, + "inferrable": true + }, + { + "name": "project", + "type": "string", + "required": false, + "description": "Match issues that are associated with this project. Provide the project's name, ID, or key. If a project name is provided, the tool will try to find a unique exact match among the available projects. Defaults to None (search across all projects).", + "enum": null, + "inferrable": true + }, + { + "name": "issue_type", + "type": "string", + "required": false, + "description": "Match issues that are of this issue type. Provide an issue type name or ID. E.g. 'Task', 'Epic', '12345'. If a name is provided, the tool will try to find a unique exact match among the available issue types. Defaults to None (any issue type).", + "enum": null, + "inferrable": true + }, + { + "name": "labels", + "type": "array", + "innerType": "string", + "required": false, + "description": "Match issues that are in these labels. Defaults to None (any label).", + "enum": null, + "inferrable": true + }, + { + "name": "parent_issue", + "type": "string", + "required": false, + "description": "Match issues that are a child of this issue. Provide the issue's ID or key. Defaults to None (no parent issue filtering).", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of issues to retrieve. Min 1, max 100, default 50.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to use to get the next page of issues. Defaults to None (first page).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": [ + "read:jira-work", + "read:jira-user", + "manage:jira-configuration" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the issues matching the search criteria" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.SearchIssuesWithoutJql", + "parameters": { + "keywords": { + "value": "bug fix", + "type": "string", + "required": false + }, + "due_from": { + "value": "2024-01-01", + "type": "string", + "required": false + }, + "due_until": { + "value": "2024-12-31", + "type": "string", + "required": false + }, + "status": { + "value": "In Progress", + "type": "string", + "required": false + }, + "priority": { + "value": "Highest", + "type": "string", + "required": false + }, + "assignee": { + "value": "jane.doe@example.com", + "type": "string", + "required": false + }, + "project": { + "value": "ProjectX", + "type": "string", + "required": false + }, + "issue_type": { + "value": "Task", + "type": "string", + "required": false + }, + "labels": { + "value": ["urgent", "backend"], + "type": "array", + "required": false + }, + "parent_issue": { + "value": "PROJ-123", + "type": "string", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": "abc123", + "type": "string", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud-456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchProjects", + "qualifiedName": "Jira.SearchProjects", + "fullyQualifiedName": "Jira.SearchProjects@3.0.2", + "description": "Get the details of all Jira projects.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": false, + "description": "The keywords to search for projects. Matches against project name and key (case insensitive). Defaults to None (no keywords filter).", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of projects to return. Min of 1, Max of 50. Defaults to 50.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of projects to skip. Defaults to 0 (starts from the first project)", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the projects" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.SearchProjects", + "parameters": { + "keywords": { + "value": "development", + "type": "string", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "atlassian_cloud_id": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TransitionIssueToNewStatus", + "qualifiedName": "Jira.TransitionIssueToNewStatus", + "fullyQualifiedName": "Jira.TransitionIssueToNewStatus@3.0.2", + "description": "Transition a Jira issue to a new status.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "The ID or key of the issue", + "enum": null, + "inferrable": true + }, + { + "name": "transition", + "type": "string", + "required": true, + "description": "The transition to perform. Provide the transition ID or its name (case insensitive).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-work", "write:jira-work", "read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The updated issue" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.TransitionIssueToNewStatus", + "parameters": { + "issue": { + "value": "PROJ-123", + "type": "string", + "required": true + }, + "transition": { + "value": "In Progress", + "type": "string", + "required": true + }, + "atlassian_cloud_id": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateIssue", + "qualifiedName": "Jira.UpdateIssue", + "fullyQualifiedName": "Jira.UpdateIssue@3.0.2", + "description": "Update an existing Jira issue.\n\nIF YOU DO NOT FOLLOW THE INSTRUCTIONS BELOW AND UNNECESSARILY CALL MULTIPLE TOOLS IN ORDER TO\nUPDATE AN ISSUE, TOO MUCH CO2 WILL BE RELEASED IN THE ATMOSPHERE AND YOU WILL CAUSE THE\nDESTRUCTION OF PLANET EARTH BY CATASTROPHIC CLIMATE CHANGE.\n\nIf you have a priority name, an assignee name/key/email, or a reporter name/key/email,\nDO NOT CALL OTHER TOOLS only to list available priorities, issue types, or users.\nProvide the name, key, or email and the tool will figure out the ID.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "The key or ID of the issue to update", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": false, + "description": "The new issue title. Provide an empty string to clear the title. Defaults to None (does not change the title).", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "The new issue description. Provide an empty string to clear the description. Defaults to None (does not change the description).", + "enum": null, + "inferrable": true + }, + { + "name": "environment", + "type": "string", + "required": false, + "description": "The new issue environment. Provide an empty string to clear the environment. Defaults to None (does not change the environment).", + "enum": null, + "inferrable": true + }, + { + "name": "due_date", + "type": "string", + "required": false, + "description": "The new issue due date. Format: YYYY-MM-DD. Ex: '2025-01-01'. Provide an empty string to clear the due date. Defaults to None (does not change the due date).", + "enum": null, + "inferrable": true + }, + { + "name": "issue_type", + "type": "string", + "required": false, + "description": "The new issue type name or ID. If a name is provided, the tool will try to find a unique exact match among the available issue types. Defaults to None (does not change the issue type).", + "enum": null, + "inferrable": true + }, + { + "name": "priority", + "type": "string", + "required": false, + "description": "The name or ID of the new issue priority. If a name is provided, the tool will try to find a unique exact match among the available priorities. Defaults to None (does not change the priority).", + "enum": null, + "inferrable": true + }, + { + "name": "parent_issue", + "type": "string", + "required": false, + "description": "The ID or key of the parent issue. A parent cannot be removed by providing an empty string. It is possible to change the parent issue by providing a new issue ID or key, or to leave it unchanged. Defaults to None (does not change the parent issue).", + "enum": null, + "inferrable": true + }, + { + "name": "assignee", + "type": "string", + "required": false, + "description": "The new issue assignee name, email, or ID. If a name or email is provided, the tool will try to find a unique exact match among the available users. Provide an empty string to remove the assignee. Defaults to None (does not change the assignee).", + "enum": null, + "inferrable": true + }, + { + "name": "reporter", + "type": "string", + "required": false, + "description": "The new issue reporter name, email, or ID. If a name or email is provided, the tool will try to find a unique exact match among the available users. Provide an empty string to remove the reporter. Defaults to None (does not change the reporter).", + "enum": null, + "inferrable": true + }, + { + "name": "labels", + "type": "array", + "innerType": "string", + "required": false, + "description": "The new issue labels. This argument will replace all labels with the new list. Providing an empty list will remove all labels. To add or remove a subset of labels, use the `Jira.AddLabelsToIssue` or the `Jira.RemoveLabelsFromIssue` tools. Defaults to None (does not change the labels). A label cannot contain spaces. If a label is provided with spaces, they will be trimmed and replaced by underscores.", + "enum": null, + "inferrable": true + }, + { + "name": "notify_watchers", + "type": "boolean", + "required": false, + "description": "Whether to notify the issue's watchers. Defaults to True (notifies watchers).", + "enum": null, + "inferrable": true + }, + { + "name": "atlassian_cloud_id", + "type": "string", + "required": false, + "description": "The ID of the Atlassian Cloud to use (defaults to None). If not provided and the user has a single cloud authorized, the tool will use that. Otherwise, an error will be raised.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": [ + "read:jira-work", + "write:jira-work", + "read:jira-user", + "manage:jira-configuration" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The updated issue" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.UpdateIssue", + "parameters": { + "issue": { + "value": "PROJ-123", + "type": "string", + "required": true + }, + "title": { + "value": "Updated Issue Title", + "type": "string", + "required": false + }, + "description": { + "value": "This is an updated description for the issue.", + "type": "string", + "required": false + }, + "environment": { + "value": "Production", + "type": "string", + "required": false + }, + "due_date": { + "value": "2025-01-01", + "type": "string", + "required": false + }, + "issue_type": { + "value": "Bug", + "type": "string", + "required": false + }, + "priority": { + "value": "High", + "type": "string", + "required": false + }, + "parent_issue": { + "value": "PROJ-120", + "type": "string", + "required": false + }, + "assignee": { + "value": "johndoe@example.com", + "type": "string", + "required": false + }, + "reporter": { + "value": "janedoe@example.com", + "type": "string", + "required": false + }, + "labels": { + "value": ["update", "bugfix"], + "type": "array", + "required": false + }, + "notify_watchers": { + "value": true, + "type": "boolean", + "required": false + }, + "atlassian_cloud_id": { + "value": "cloud_123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "Jira.WhoAmI", + "fullyQualifiedName": "Jira.WhoAmI@3.0.2", + "description": "CALL THIS TOOL FIRST to establish user profile context.\n\nGet information about the currently logged-in user and their available Jira clouds/clients.", + "parameters": [], + "auth": { + "providerId": "atlassian", + "providerType": "oauth2", + "scopes": ["read:jira-user"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Dictionary containing the current user's information and their available Atlassian Clouds." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Jira.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "atlassian", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "warning", + "location": "description", + "position": "after", + "content": "\n\n

\n Handling multiple Atlassian Clouds\n

\n\nA Jira user may have multiple Atlassian Clouds authorized via the same OAuth grant. In such cases, the Jira tools must be called with the `atlassian_cloud_id` argument. The [`Jira.GetAvailableAtlassianClouds`](/resources/integrations/productivity/jira#jiragetavailableatlassianclouds) tool can be used to get the available Atlassian Clouds and their IDs.\n\nWhen a tool call does not receive a value for `atlassian_cloud_id` and the user only has a single Atlassian Cloud authorized, the tool will use that. Otherwise, an error will be raised. The error will contain an additional content listing the available Atlassian Clouds and their IDs.\n\nYour AI Agent or AI-powered chat application can use the tool referenced above (or the exception's additional content) to guide the user into selecting the correct Atlassian Cloud.\n\nWhen the user selects an Atlassian Cloud, it may be appropriate to keep this information in the LLM's context window for subsequent tool calls, avoiding the need to ask the user multiple times.\n\n**_It is the job of the AI Agent or chat application to:_**\n\n1. Make it clear to the chat's end user which Atlassian Cloud is being used at any moment, to avoid, for example, having a Jira Issue being created in the wrong Atlassian Cloud;\n1. Appropriately instruct the LLM and keep the relevant information in its context window, enabling it to correctly call the Jira tools, **especially in multi-turn conversations**.\n\n
" + } + ], + "customImports": [], + "subPages": [ + { + "type": "environment-variables", + "content": "import { Callout } from \"nextra/components\";\n\n# Jira Environment Variables\n\n### `JIRA_MAX_CONCURRENT_REQUESTS`\n\nArcade uses asynchronous calls to request Jira API endpoints. In some tools, multiple concurrent HTTP requests may be made to speed up execution. This environment variable controls the maximum number of concurrent requests to Jira API in any tool execution.\n\nThe value must be a numeric string with an integer greater than or equal to 1.\n\n**Default:** `3`\n\n\n### `JIRA_API_REQUEST_TIMEOUT`\n\nControls the maximum number of seconds to wait for a response from the Jira API. This is also applied, in some cases, as a global max timeout for multiple requests that are made in a single tool execution. For instance, when a tool needs to paginate results from a given endpoint, this timeout may apply to the entire pagination process in total, not only to the individual requests.\n\nThe value must be a numeric string with an integer greater than or equal to 1.\n\n**Default:** `30`\n\n\n### `JIRA_CACHE_MAX_ITEMS`\n\n\n The caching strategy does not involve caching Jira API responses that go into tool output, but only internal values.\n\n\nThe Arcade Jira MCP Server will cache some values that are repeatedly used in tool execution to enable better performance. This environment variable controls the maximum number of items to hold in each cache.\n\nThe value must be a numeric string with an integer greater than or equal to 1.\n\n**Default:** `5000`\n", + "relativePath": "environment-variables/page.mdx" + } + ], + "generatedAt": "2026-01-26T17:36:46.116Z" +} diff --git a/data/toolkits/linear.json b/data/toolkits/linear.json new file mode 100644 index 000000000..0e2e58baf --- /dev/null +++ b/data/toolkits/linear.json @@ -0,0 +1,3357 @@ +{ + "id": "Linear", + "label": "Linear", + "version": "3.2.0", + "description": "Arcade tools designed for LLMs to interact with Linear", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/linear.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/linear", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "linear", + "allScopes": ["comments:create", "issues:create", "read", "write"] + }, + "tools": [ + { + "name": "AddComment", + "qualifiedName": "Linear.AddComment", + "fullyQualifiedName": "Linear.AddComment@3.2.0", + "description": "Add a comment to an issue.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "Issue ID or identifier to comment on.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "Comment body in Markdown format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["comments:create"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Created comment details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.AddComment", + "parameters": { + "issue": { + "value": "ISSUE-123", + "type": "string", + "required": true + }, + "body": { + "value": "This is a comment on the issue. **Important:** Please review this.", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddProjectComment", + "qualifiedName": "Linear.AddProjectComment", + "fullyQualifiedName": "Linear.AddProjectComment@3.2.0", + "description": "Add a comment to a project's document content.\n\nIMPORTANT: Due to Linear API limitations, comments created via the API will NOT\nappear visually anchored inline in the document (no yellow highlight on text).\nThe comment will be stored and can be retrieved via list_project_comments, but\nit will appear in the comments panel rather than inline in the document.\n\nFor true inline comments that are visually anchored to text, users should create\nthem directly in the Linear UI by selecting text and adding a comment.\n\nThe quoted_text parameter stores metadata about what text the comment references,\nwhich is useful for context even though the comment won't be visually anchored.", + "parameters": [ + { + "name": "project", + "type": "string", + "required": true, + "description": "Project ID, slug_id, or name. Prefer project ID for better performance.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "Comment body in Markdown format.", + "enum": null, + "inferrable": true + }, + { + "name": "quoted_text", + "type": "string", + "required": false, + "description": "Text from the project document to reference. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["comments:create"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Created comment details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.AddProjectComment", + "parameters": { + "project": { + "value": "proj-12345", + "type": "string", + "required": true + }, + "body": { + "value": "This is a comment about the project.", + "type": "string", + "required": true + }, + "quoted_text": { + "value": "Project milestones must be met by Q3.", + "type": "string", + "required": false + }, + "auto_accept_matches": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddProjectToInitiative", + "qualifiedName": "Linear.AddProjectToInitiative", + "fullyQualifiedName": "Linear.AddProjectToInitiative@3.2.0", + "description": "Link a project to an initiative.\n\nBoth initiative and project can be specified by ID or name.\nIf a name is provided, fuzzy matching is used to resolve it.", + "parameters": [ + { + "name": "initiative", + "type": "string", + "required": true, + "description": "Initiative ID or name to link the project to.", + "enum": null, + "inferrable": true + }, + { + "name": "project", + "type": "string", + "required": true, + "description": "Project ID or name to link.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Confirmation of project-initiative link" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.AddProjectToInitiative", + "parameters": { + "initiative": { + "value": "Initiative Alpha", + "type": "string", + "required": true + }, + "project": { + "value": "Project Beta", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveInitiative", + "qualifiedName": "Linear.ArchiveInitiative", + "fullyQualifiedName": "Linear.ArchiveInitiative@3.2.0", + "description": "Archive an initiative.\n\nArchived initiatives are hidden from default views but can be restored.", + "parameters": [ + { + "name": "initiative", + "type": "string", + "required": true, + "description": "Initiative ID or name to archive.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Archive operation result" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ArchiveInitiative", + "parameters": { + "initiative": { + "value": "2023_Q3_Marketing_Plan", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveIssue", + "qualifiedName": "Linear.ArchiveIssue", + "fullyQualifiedName": "Linear.ArchiveIssue@3.2.0", + "description": "Archive an issue.\n\nArchived issues are hidden from default views but can be restored.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "Issue ID or identifier to archive.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Archive operation result" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ArchiveIssue", + "parameters": { + "issue": { + "value": "ISSUE-123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveProject", + "qualifiedName": "Linear.ArchiveProject", + "fullyQualifiedName": "Linear.ArchiveProject@3.2.0", + "description": "Archive a project.\n\nArchived projects are hidden from default views but can be restored.", + "parameters": [ + { + "name": "project", + "type": "string", + "required": true, + "description": "Project ID, slug_id, or name to archive.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Archive operation result" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ArchiveProject", + "parameters": { + "project": { + "value": "example-project-123", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateInitiative", + "qualifiedName": "Linear.CreateInitiative", + "fullyQualifiedName": "Linear.CreateInitiative@3.2.0", + "description": "Create a new Linear initiative.\n\nInitiatives are high-level strategic goals that group related projects.", + "parameters": [ + { + "name": "name", + "type": "string", + "required": true, + "description": "Initiative name. Required.", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "Initiative description in Markdown format. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "status", + "type": "string", + "required": false, + "description": "Initial initiative status. Default is None (uses Linear default).", + "enum": [ + "Backlog", + "Planned", + "Active", + "Paused", + "Completed", + "Canceled" + ], + "inferrable": true + }, + { + "name": "target_date", + "type": "string", + "required": false, + "description": "Target completion date in YYYY-MM-DD format. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Created initiative details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.CreateInitiative", + "parameters": { + "name": { + "value": "Expand Market Presence", + "type": "string", + "required": true + }, + "description": { + "value": "### Goal\nIncrease our market penetration in the following regions:\n- North America\n- Europe\n\n### Expected Outcomes\n- 20% increase in sales\n- Improved brand recognition", + "type": "string", + "required": false + }, + "status": { + "value": "in progress", + "type": "string", + "required": false + }, + "target_date": { + "value": "2024-12-31", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateIssue", + "qualifiedName": "Linear.CreateIssue", + "fullyQualifiedName": "Linear.CreateIssue@3.2.0", + "description": "Create a new Linear issue with validation.\n\nWhen assignee is None or '@me', the issue is assigned to the authenticated user.\nAll entity references (team, assignee, labels, state, project, cycle, parent)\nare validated before creation. If an entity is not found, suggestions are\nreturned to help correct the input.", + "parameters": [ + { + "name": "team", + "type": "string", + "required": true, + "description": "Team name, key, or ID. Required.", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": true, + "description": "Issue title. Required.", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "Issue description in Markdown format. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee", + "type": "string", + "required": false, + "description": "Assignee name or email. Use '@me' for current user. Must be a team member. Default is '@me' (assigns to current user).", + "enum": null, + "inferrable": true + }, + { + "name": "labels_to_add", + "type": "array", + "innerType": "string", + "required": false, + "description": "Labels to add by name or ID. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "priority", + "type": "string", + "required": false, + "description": "Issue priority. Default is None (no priority).", + "enum": ["none", "urgent", "high", "medium", "low"], + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "Initial workflow state name. Default is team's default state.", + "enum": null, + "inferrable": true + }, + { + "name": "project", + "type": "string", + "required": false, + "description": "Project name, slug, or ID to link. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "cycle", + "type": "string", + "required": false, + "description": "Cycle name or number to link. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_issue", + "type": "string", + "required": false, + "description": "Parent issue identifier to make this a sub-issue. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "estimate", + "type": "integer", + "required": false, + "description": "Effort estimate in points. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "due_date", + "type": "string", + "required": false, + "description": "Due date in YYYY-MM-DD format. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_url", + "type": "string", + "required": false, + "description": "URL to attach to the issue. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_title", + "type": "string", + "required": false, + "description": "Title for the attached URL. Default is None (URL used as title).", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["issues:create"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Created issue details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.CreateIssue", + "parameters": { + "team": { + "value": "Engineering", + "type": "string", + "required": true + }, + "title": { + "value": "Fix login bug", + "type": "string", + "required": true + }, + "description": { + "value": "There is an issue with the login functionality that needs to be addressed. Please check the backend logs for more details.", + "type": "string", + "required": false + }, + "assignee": { + "value": "@me", + "type": "string", + "required": false + }, + "labels_to_add": { + "value": ["bug", " urgent"], + "type": "array", + "required": false + }, + "priority": { + "value": "high", + "type": "string", + "required": false + }, + "state": { + "value": "In Progress", + "type": "string", + "required": false + }, + "project": { + "value": "User Authentication", + "type": "string", + "required": false + }, + "cycle": { + "value": "Q4-2023", + "type": "string", + "required": false + }, + "parent_issue": { + "value": null, + "type": "string", + "required": false + }, + "estimate": { + "value": 5, + "type": "integer", + "required": false + }, + "due_date": { + "value": "2023-11-01", + "type": "string", + "required": false + }, + "attachment_url": { + "value": "https://example.com/screenshot.png", + "type": "string", + "required": false + }, + "attachment_title": { + "value": "Login Bug Screenshot", + "type": "string", + "required": false + }, + "auto_accept_matches": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateIssueRelation", + "qualifiedName": "Linear.CreateIssueRelation", + "fullyQualifiedName": "Linear.CreateIssueRelation@3.2.0", + "description": "Create a relation between two issues.\n\nRelation types define the relationship from the source issue's perspective:\n- blocks: Source issue blocks the related issue\n- blockedBy: Source issue is blocked by the related issue\n- duplicate: Source issue is a duplicate of the related issue\n- related: Issues are related (bidirectional)", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "Source issue ID or identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "related_issue", + "type": "string", + "required": true, + "description": "Related issue ID or identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "relation_type", + "type": "string", + "required": true, + "description": "Type of relation to create.", + "enum": ["blocks", "blockedBy", "duplicate", "related"], + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Created relation details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.CreateIssueRelation", + "parameters": { + "issue": { + "value": "ISSUE-123", + "type": "string", + "required": true + }, + "related_issue": { + "value": "ISSUE-456", + "type": "string", + "required": true + }, + "relation_type": { + "value": "blocks", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateProject", + "qualifiedName": "Linear.CreateProject", + "fullyQualifiedName": "Linear.CreateProject@3.2.0", + "description": "Create a new Linear project.\n\nTeam is validated before creation. If team is not found, suggestions are\nreturned to help correct the input. Lead is validated if provided.", + "parameters": [ + { + "name": "name", + "type": "string", + "required": true, + "description": "Project name. Required.", + "enum": null, + "inferrable": true + }, + { + "name": "team", + "type": "string", + "required": true, + "description": "Team name, key, or ID to associate the project with. Required.", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "Project summary (255 char limit). Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "content", + "type": "string", + "required": false, + "description": "Project document/spec content in Markdown (unlimited). Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "Initial project state. Default is None (uses Linear default).", + "enum": [ + "backlog", + "planned", + "started", + "paused", + "completed", + "canceled" + ], + "inferrable": true + }, + { + "name": "lead", + "type": "string", + "required": false, + "description": "Project lead name or email. Must be a workspace member. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "Project start date in YYYY-MM-DD format. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "target_date", + "type": "string", + "required": false, + "description": "Target completion date in YYYY-MM-DD format. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Created project details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.CreateProject", + "parameters": { + "name": { + "value": "New Product Launch", + "type": "string", + "required": true + }, + "team": { + "value": "Marketing", + "type": "string", + "required": true + }, + "description": { + "value": "This project focuses on the launch of our new product line.", + "type": "string", + "required": false + }, + "content": { + "value": "# Project Overview\nThis document outlines the strategy and timeline for the product launch.", + "type": "string", + "required": false + }, + "state": { + "value": "active", + "type": "string", + "required": false + }, + "lead": { + "value": "jane.doe@example.com", + "type": "string", + "required": false + }, + "start_date": { + "value": "2023-11-01", + "type": "string", + "required": false + }, + "target_date": { + "value": "2024-01-15", + "type": "string", + "required": false + }, + "auto_accept_matches": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateProjectUpdate", + "qualifiedName": "Linear.CreateProjectUpdate", + "fullyQualifiedName": "Linear.CreateProjectUpdate@3.2.0", + "description": "Create a project status update.\n\nProject updates are posts that communicate progress, blockers, or status\nchanges to stakeholders. They appear in the project's Updates tab and\ncan include a health status indicator.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The project ID to create an update for.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The update content in Markdown format.", + "enum": null, + "inferrable": true + }, + { + "name": "health", + "type": "string", + "required": false, + "description": "Project health status. Default is None (no change).", + "enum": ["onTrack", "atRisk", "offTrack"], + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Created project update details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.CreateProjectUpdate", + "parameters": { + "project_id": { + "value": "proj_123456", + "type": "string", + "required": true + }, + "body": { + "value": "## Update on Project Progress\n\nWe have made significant progress this week. The new features are nearing completion and we are on track for the launch. \n\n**Blockers:** \n- Awaiting feedback from the design team on UI components.\n\n**Next Steps:** \n- Finalize testing by end of the week.", + "type": "string", + "required": true + }, + "health": { + "value": "On Track", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCycle", + "qualifiedName": "Linear.GetCycle", + "fullyQualifiedName": "Linear.GetCycle@3.2.0", + "description": "Get detailed information about a specific Linear cycle.", + "parameters": [ + { + "name": "cycle_id", + "type": "string", + "required": true, + "description": "The cycle ID. Required.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Cycle details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.GetCycle", + "parameters": { + "cycle_id": { + "value": "abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetInitiative", + "qualifiedName": "Linear.GetInitiative", + "fullyQualifiedName": "Linear.GetInitiative@3.2.0", + "description": "Get detailed information about a specific Linear initiative.\n\nSupports lookup by ID or name (with fuzzy matching for name).", + "parameters": [ + { + "name": "value", + "type": "string", + "required": true, + "description": "The value to look up (ID or name depending on lookup_by).", + "enum": null, + "inferrable": true + }, + { + "name": "lookup_by", + "type": "string", + "required": false, + "description": "How to look up the initiative. Default is id.", + "enum": ["id", "name"], + "inferrable": true + }, + { + "name": "include_projects", + "type": "boolean", + "required": false, + "description": "Include linked projects in the response. Default is True.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Only used when lookup_by is name. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Complete initiative details with linked projects" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.GetInitiative", + "parameters": { + "value": { + "value": "12345", + "type": "string", + "required": true + }, + "lookup_by": { + "value": "id", + "type": "string", + "required": false + }, + "include_projects": { + "value": true, + "type": "boolean", + "required": false + }, + "auto_accept_matches": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetInitiativeDescription", + "qualifiedName": "Linear.GetInitiativeDescription", + "fullyQualifiedName": "Linear.GetInitiativeDescription@3.2.0", + "description": "Get an initiative's full description with pagination support.\n\nUse this tool when you need the complete description of an initiative that\nwas truncated in the get_initiative response. Supports chunked reading for\nvery large descriptions.", + "parameters": [ + { + "name": "initiative_id", + "type": "string", + "required": true, + "description": "The initiative ID.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Character offset to start reading from. Default is 0 (start).", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum characters to return. Default is 2000.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Initiative description chunk with pagination info" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.GetInitiativeDescription", + "parameters": { + "initiative_id": { + "value": "12345", + "type": "string", + "required": true + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "limit": { + "value": 1500, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIssue", + "qualifiedName": "Linear.GetIssue", + "fullyQualifiedName": "Linear.GetIssue@3.2.0", + "description": "Get detailed information about a specific Linear issue.\n\nAccepts either the issue UUID or the human-readable identifier (like TOO-123).", + "parameters": [ + { + "name": "issue_id", + "type": "string", + "required": true, + "description": "The Linear issue ID or identifier (like TOO-123).", + "enum": null, + "inferrable": true + }, + { + "name": "include_comments", + "type": "boolean", + "required": false, + "description": "Include comments in the response. Default is True.", + "enum": null, + "inferrable": true + }, + { + "name": "include_attachments", + "type": "boolean", + "required": false, + "description": "Include attachments in the response. Default is True.", + "enum": null, + "inferrable": true + }, + { + "name": "include_relations", + "type": "boolean", + "required": false, + "description": "Include issue relations (blocks, dependencies). Default is True.", + "enum": null, + "inferrable": true + }, + { + "name": "include_children", + "type": "boolean", + "required": false, + "description": "Include sub-issues in the response. Default is True.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Complete issue details with related data" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.GetIssue", + "parameters": { + "issue_id": { + "value": "TOO-123", + "type": "string", + "required": true + }, + "include_comments": { + "value": true, + "type": "boolean", + "required": false + }, + "include_attachments": { + "value": true, + "type": "boolean", + "required": false + }, + "include_relations": { + "value": true, + "type": "boolean", + "required": false + }, + "include_children": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetNotifications", + "qualifiedName": "Linear.GetNotifications", + "fullyQualifiedName": "Linear.GetNotifications@3.2.0", + "description": "Get the authenticated user's notifications.\n\nReturns notifications including issue mentions, comments, assignments,\nand state changes.", + "parameters": [ + { + "name": "unread_only", + "type": "boolean", + "required": false, + "description": "Only return unread notifications. Default is False.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of notifications to return. Min 1, max 50. Default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "end_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination. Use 'end_cursor' from previous response. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "User's notifications with pagination" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.GetNotifications", + "parameters": { + "unread_only": { + "value": true, + "type": "boolean", + "required": false + }, + "limit": { + "value": 15, + "type": "integer", + "required": false + }, + "end_cursor": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProject", + "qualifiedName": "Linear.GetProject", + "fullyQualifiedName": "Linear.GetProject@3.2.0", + "description": "Get detailed information about a specific Linear project.\n\nSupports lookup by ID, slug_id, or name (with fuzzy matching for name).", + "parameters": [ + { + "name": "value", + "type": "string", + "required": true, + "description": "The value to look up (ID, slug_id, or name depending on lookup_by).", + "enum": null, + "inferrable": true + }, + { + "name": "lookup_by", + "type": "string", + "required": false, + "description": "How to look up the project. Default is id.", + "enum": ["id", "slug_id", "name"], + "inferrable": true + }, + { + "name": "include_issues", + "type": "boolean", + "required": false, + "description": "Include latest 10 issues (by updated_at) in the response. Default is True.", + "enum": null, + "inferrable": true + }, + { + "name": "include_comments", + "type": "boolean", + "required": false, + "description": "Include inline comments (comments with quoted_text) in the response. Comments include their replies. Default is False.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Only used when lookup_by is name. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Complete project details with teams and issues" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.GetProject", + "parameters": { + "value": { + "value": "proj-1234", + "type": "string", + "required": true + }, + "lookup_by": { + "value": "id", + "type": "string", + "required": false + }, + "include_issues": { + "value": true, + "type": "boolean", + "required": false + }, + "include_comments": { + "value": false, + "type": "boolean", + "required": false + }, + "auto_accept_matches": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectDescription", + "qualifiedName": "Linear.GetProjectDescription", + "fullyQualifiedName": "Linear.GetProjectDescription@3.2.0", + "description": "Get a project's full description with pagination support.\n\nUse this tool when you need the complete description of a project that\nwas truncated in the get_project response. Supports chunked reading for\nvery large descriptions.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The project ID or slug_id.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Character offset to start reading from. Default is 0 (start).", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum characters to return. Default is 2000.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Project description chunk with pagination info" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.GetProjectDescription", + "parameters": { + "project_id": { + "value": "proj-1234", + "type": "string", + "required": true + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "limit": { + "value": 2000, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRecentActivity", + "qualifiedName": "Linear.GetRecentActivity", + "fullyQualifiedName": "Linear.GetRecentActivity@3.2.0", + "description": "Get the authenticated user's recent issue activity.\n\nReturns issues the user has recently created or been assigned to\nwithin the specified time period.", + "parameters": [ + { + "name": "days", + "type": "integer", + "required": false, + "description": "Number of days to look back for activity. Min 1, max 90. Default is 30.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of activities to return. Min 1, max 50. Default is 20.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "User's recent issue activity" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.GetRecentActivity", + "parameters": { + "days": { + "value": 15, + "type": "integer", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeam", + "qualifiedName": "Linear.GetTeam", + "fullyQualifiedName": "Linear.GetTeam@3.2.0", + "description": "Get detailed information about a specific Linear team.\n\nSupports lookup by ID, key (like TOO, ENG), or name (with fuzzy matching).", + "parameters": [ + { + "name": "value", + "type": "string", + "required": true, + "description": "The value to look up (ID, key, or name depending on lookup_by).", + "enum": null, + "inferrable": true + }, + { + "name": "lookup_by", + "type": "string", + "required": false, + "description": "How to look up the team. Default is id.", + "enum": ["id", "key", "name"], + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Only used when lookup_by is name. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Team details with member information" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.GetTeam", + "parameters": { + "value": { + "value": "ENG", + "type": "string", + "required": true + }, + "lookup_by": { + "value": "key", + "type": "string", + "required": false + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "LinkGithubToIssue", + "qualifiedName": "Linear.LinkGithubToIssue", + "fullyQualifiedName": "Linear.LinkGithubToIssue@3.2.0", + "description": "Link a GitHub PR, commit, or issue to a Linear issue.\n\nAutomatically detects the artifact type from the URL and generates\nan appropriate title if not provided.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "Issue ID or identifier to link to.", + "enum": null, + "inferrable": true + }, + { + "name": "github_url", + "type": "string", + "required": true, + "description": "GitHub URL to link (PR, commit, or issue).", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": false, + "description": "Custom title for the link. If not provided, auto-generated from URL.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Link result with attachment details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.LinkGithubToIssue", + "parameters": { + "issue": { + "value": "PROJECT-123", + "type": "string", + "required": true + }, + "github_url": { + "value": "https://github.com/user/repo/pull/456", + "type": "string", + "required": true + }, + "title": { + "value": "Linking PR to Linear Issue", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListComments", + "qualifiedName": "Linear.ListComments", + "fullyQualifiedName": "Linear.ListComments@3.2.0", + "description": "List comments on an issue.\n\nReturns comments with user info, timestamps, and reply threading info.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "Issue ID or identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of comments to return. Min 1, max 50. Default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "end_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination. Use 'end_cursor' from previous response. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Comments on the issue with pagination" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ListComments", + "parameters": { + "issue": { + "value": "ISSUE-12345", + "type": "string", + "required": true + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "end_cursor": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCycles", + "qualifiedName": "Linear.ListCycles", + "fullyQualifiedName": "Linear.ListCycles@3.2.0", + "description": "List Linear cycles, optionally filtered by team and status.\n\nCycles are time-boxed iterations (like sprints) for organizing work.", + "parameters": [ + { + "name": "team", + "type": "string", + "required": false, + "description": "Filter by team ID or key. Default is None (all teams).", + "enum": null, + "inferrable": true + }, + { + "name": "active_only", + "type": "boolean", + "required": false, + "description": "Only return currently active cycles. Default is False.", + "enum": null, + "inferrable": true + }, + { + "name": "include_completed", + "type": "boolean", + "required": false, + "description": "Include completed cycles. Default is True.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of cycles to return. Min 1, max 50. Default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "end_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination. Use 'end_cursor' from previous response. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Cycles matching the filters" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ListCycles", + "parameters": { + "team": { + "value": "team_123", + "type": "string", + "required": false + }, + "active_only": { + "value": true, + "type": "boolean", + "required": false + }, + "include_completed": { + "value": false, + "type": "boolean", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "end_cursor": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListInitiatives", + "qualifiedName": "Linear.ListInitiatives", + "fullyQualifiedName": "Linear.ListInitiatives@3.2.0", + "description": "List Linear initiatives, optionally filtered by keywords and other criteria.\n\nReturns all initiatives when no filters provided, or filtered results when\nkeywords or other filters are specified.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Search keywords to match in initiative names. Default is None (all initiatives).", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "Filter by initiative state. Default is None (all states).", + "enum": [ + "Backlog", + "Planned", + "Active", + "Paused", + "Completed", + "Canceled" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of initiatives to return. Min 1, max 50. Default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "end_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination. Use 'end_cursor' from previous response. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Initiatives matching the filters" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ListInitiatives", + "parameters": { + "keywords": { + "value": "development", + "type": "string", + "required": false + }, + "state": { + "value": "active", + "type": "string", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "end_cursor": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIssues", + "qualifiedName": "Linear.ListIssues", + "fullyQualifiedName": "Linear.ListIssues@3.2.0", + "description": "List Linear issues, optionally filtered by keywords and other criteria.\n\nReturns all issues when no filters provided, or filtered results when\nkeywords or other filters are specified.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Search keywords to match in issue titles and descriptions. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "team", + "type": "string", + "required": false, + "description": "Filter by team name or key. Default is None (all teams).", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "Filter by workflow state name. Default is None (all states).", + "enum": null, + "inferrable": true + }, + { + "name": "assignee", + "type": "string", + "required": false, + "description": "Filter by assignee. Use '@me' for current user. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "priority", + "type": "string", + "required": false, + "description": "Filter by priority level. Default is None.", + "enum": ["none", "urgent", "high", "medium", "low"], + "inferrable": true + }, + { + "name": "label", + "type": "string", + "required": false, + "description": "Filter by label name. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "project", + "type": "string", + "required": false, + "description": "Filter by project name. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "created_after", + "type": "string", + "required": false, + "description": "Filter issues created after this date in ISO format (YYYY-MM-DD). Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of issues to return. Min 1, max 50. Default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "end_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination. Use 'end_cursor' from previous response. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Issues matching the filters" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ListIssues", + "parameters": { + "keywords": { + "value": "bug fix", + "type": "string", + "required": false + }, + "team": { + "value": "development", + "type": "string", + "required": false + }, + "state": { + "value": "in progress", + "type": "string", + "required": false + }, + "assignee": { + "value": "@me", + "type": "string", + "required": false + }, + "priority": { + "value": "high", + "type": "string", + "required": false + }, + "label": { + "value": "urgent", + "type": "string", + "required": false + }, + "project": { + "value": "website redesign", + "type": "string", + "required": false + }, + "created_after": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "end_cursor": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListLabels", + "qualifiedName": "Linear.ListLabels", + "fullyQualifiedName": "Linear.ListLabels@3.2.0", + "description": "List available issue labels in the workspace.\n\nReturns labels that can be applied to issues. Use label IDs or names\nwhen creating or updating issues.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of labels to return. Min 1, max 100. Default is 50.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Available issue labels" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ListLabels", + "parameters": { + "limit": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListProjectComments", + "qualifiedName": "Linear.ListProjectComments", + "fullyQualifiedName": "Linear.ListProjectComments@3.2.0", + "description": "List comments on a project's document content.\n\nReturns comments with user info, timestamps, quoted text for inline comments,\nand reply threading info. Replies are nested under their parent comments.\n\nUse comment_filter to control which comments are returned:\n- only_quoted (default): Only comments attached to a quote in the text\n- only_unquoted: Only comments not attached to a particular quote\n- all: All comments regardless of being attached to a quote or not", + "parameters": [ + { + "name": "project", + "type": "string", + "required": true, + "description": "Project ID, slug_id, or name. Prefer project ID for better performance.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_filter", + "type": "string", + "required": false, + "description": "Filter which comments to return. Default is only_quoted.", + "enum": ["only_quoted", "only_unquoted", "all"], + "inferrable": true + }, + { + "name": "include_resolved", + "type": "boolean", + "required": false, + "description": "Include resolved comments in the response. Default is True.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of comments to return. Min 1, max 50. Default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "end_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination. Use 'end_cursor' from previous response. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Comments on the project document" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ListProjectComments", + "parameters": { + "project": { + "value": "12345", + "type": "string", + "required": true + }, + "comment_filter": { + "value": "only_unquoted", + "type": "string", + "required": false + }, + "include_resolved": { + "value": true, + "type": "boolean", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "end_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "auto_accept_matches": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListProjects", + "qualifiedName": "Linear.ListProjects", + "fullyQualifiedName": "Linear.ListProjects@3.2.0", + "description": "List Linear projects, optionally filtered by keywords and other criteria.\n\nReturns all projects when no filters provided, or filtered results when\nkeywords or other filters are specified.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Search keywords to match in project names. Default is None (all projects).", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "Filter by project state. Default is None (all states).", + "enum": null, + "inferrable": true + }, + { + "name": "team", + "type": "string", + "required": false, + "description": "Filter by team name. Default is None (all teams).", + "enum": null, + "inferrable": true + }, + { + "name": "created_after", + "type": "string", + "required": false, + "description": "Filter projects created after this date in ISO format (YYYY-MM-DD). Default is None (all time).", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of projects to return. Min 1, max 50. Default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "end_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination. Use 'end_cursor' from previous response. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Projects matching the filters" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ListProjects", + "parameters": { + "keywords": { + "value": "development", + "type": "string", + "required": false + }, + "state": { + "value": "active", + "type": "string", + "required": false + }, + "team": { + "value": "engineering", + "type": "string", + "required": false + }, + "created_after": { + "value": "2022-01-01", + "type": "string", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "end_cursor": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeams", + "qualifiedName": "Linear.ListTeams", + "fullyQualifiedName": "Linear.ListTeams@3.2.0", + "description": "List Linear teams, optionally filtered by keywords and other criteria.\n\nReturns all teams when no filters provided, or filtered results when\nkeywords or other filters are specified.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": false, + "description": "Search keywords to match in team names. Default is None (all teams).", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived", + "type": "boolean", + "required": false, + "description": "Include archived teams in results. Default is False.", + "enum": null, + "inferrable": true + }, + { + "name": "created_after", + "type": "string", + "required": false, + "description": "Filter teams created after this date in ISO format (YYYY-MM-DD). Default is None (all time).", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of teams to return. Min 1, max 50. Default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "end_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination. Use 'end_cursor' from previous response. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Teams matching the filters" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ListTeams", + "parameters": { + "keywords": { + "value": "development", + "type": "string", + "required": false + }, + "include_archived": { + "value": true, + "type": "boolean", + "required": false + }, + "created_after": { + "value": "2022-01-01", + "type": "string", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "end_cursor": { + "value": "cursor_value_123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWorkflowStates", + "qualifiedName": "Linear.ListWorkflowStates", + "fullyQualifiedName": "Linear.ListWorkflowStates@3.2.0", + "description": "List available workflow states in the workspace.\n\nReturns workflow states that can be used for issue transitions.\nStates are team-specific and have different types.", + "parameters": [ + { + "name": "team", + "type": "string", + "required": false, + "description": "Filter by team name or key. Default is None (all teams).", + "enum": null, + "inferrable": true + }, + { + "name": "state_type", + "type": "string", + "required": false, + "description": "Filter by state type. Default is None (all types).", + "enum": [ + "triage", + "backlog", + "unstarted", + "started", + "completed", + "canceled" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of states to return. Min 1, max 100. Default is 50.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Available workflow states" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ListWorkflowStates", + "parameters": { + "team": { + "value": "development", + "type": "string", + "required": false + }, + "state_type": { + "value": "in_progress", + "type": "string", + "required": false + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageIssueSubscription", + "qualifiedName": "Linear.ManageIssueSubscription", + "fullyQualifiedName": "Linear.ManageIssueSubscription@3.2.0", + "description": "Subscribe to or unsubscribe from an issue's notifications.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "Issue ID or identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "subscribe", + "type": "boolean", + "required": true, + "description": "True to subscribe, False to unsubscribe.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["issues:create"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Subscription action result" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ManageIssueSubscription", + "parameters": { + "issue": { + "value": "ISSUE-1234", + "type": "string", + "required": true + }, + "subscribe": { + "value": true, + "type": "boolean", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplyToComment", + "qualifiedName": "Linear.ReplyToComment", + "fullyQualifiedName": "Linear.ReplyToComment@3.2.0", + "description": "Reply to an existing comment on an issue.\n\nCreates a threaded reply to the specified parent comment.", + "parameters": [ + { + "name": "issue", + "type": "string", + "required": true, + "description": "Issue ID or identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_comment_id", + "type": "string", + "required": true, + "description": "ID of the comment to reply to.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "Reply body in Markdown format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["comments:create"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Created reply details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ReplyToComment", + "parameters": { + "issue": { + "value": "ISSUE-1234", + "type": "string", + "required": true + }, + "parent_comment_id": { + "value": "COMMENT-5678", + "type": "string", + "required": true + }, + "body": { + "value": "Thanks for your feedback! I appreciate your insights.", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplyToProjectComment", + "qualifiedName": "Linear.ReplyToProjectComment", + "fullyQualifiedName": "Linear.ReplyToProjectComment@3.2.0", + "description": "Reply to an existing comment on a project document.\n\nCreates a threaded reply to the specified parent comment.", + "parameters": [ + { + "name": "project", + "type": "string", + "required": true, + "description": "Project ID, slug_id, or name.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_comment_id", + "type": "string", + "required": true, + "description": "ID of the comment to reply to.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "Reply body in Markdown format.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["comments:create"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Created reply details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.ReplyToProjectComment", + "parameters": { + "project": { + "value": "project-123", + "type": "string", + "required": true + }, + "parent_comment_id": { + "value": "comment-456", + "type": "string", + "required": true + }, + "body": { + "value": "Thanks for your feedback! Here's my response in Markdown: **bold text** and *italic text*.", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TransitionIssueState", + "qualifiedName": "Linear.TransitionIssueState", + "fullyQualifiedName": "Linear.TransitionIssueState@3.2.0", + "description": "Transition a Linear issue to a new workflow state.\n\nThe target state is validated against the team's available states.", + "parameters": [ + { + "name": "issue_id", + "type": "string", + "required": true, + "description": "Issue ID or identifier (like TOO-123). Required.", + "enum": null, + "inferrable": true + }, + { + "name": "target_state", + "type": "string", + "required": true, + "description": "Target workflow state name. Required.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Transition result with previous and new state" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.TransitionIssueState", + "parameters": { + "issue_id": { + "value": "TOO-123", + "type": "string", + "required": true + }, + "target_state": { + "value": "In Progress", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateComment", + "qualifiedName": "Linear.UpdateComment", + "fullyQualifiedName": "Linear.UpdateComment@3.2.0", + "description": "Update an existing comment.", + "parameters": [ + { + "name": "comment_id", + "type": "string", + "required": true, + "description": "Comment ID to update.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "New comment body in Markdown format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Updated comment details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.UpdateComment", + "parameters": { + "comment_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "body": { + "value": "This is an updated comment with **Markdown** formatting.", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateInitiative", + "qualifiedName": "Linear.UpdateInitiative", + "fullyQualifiedName": "Linear.UpdateInitiative@3.2.0", + "description": "Update a Linear initiative with partial updates.\n\nOnly fields that are explicitly provided will be updated.", + "parameters": [ + { + "name": "initiative_id", + "type": "string", + "required": true, + "description": "Initiative ID. Required.", + "enum": null, + "inferrable": true + }, + { + "name": "name", + "type": "string", + "required": false, + "description": "New initiative name. Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "New initiative description in Markdown format. Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "status", + "type": "string", + "required": false, + "description": "New initiative status. Only updated if provided.", + "enum": [ + "Backlog", + "Planned", + "Active", + "Paused", + "Completed", + "Canceled" + ], + "inferrable": true + }, + { + "name": "target_date", + "type": "string", + "required": false, + "description": "New target date in YYYY-MM-DD format. Only updated if provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Updated initiative details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.UpdateInitiative", + "parameters": { + "initiative_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "name": { + "value": "Revamp User Interface", + "type": "string", + "required": false + }, + "description": { + "value": "### Major overhaul of the current UI\n- Improve accessibility\n- Modernize design", + "type": "string", + "required": false + }, + "status": { + "value": "In Progress", + "type": "string", + "required": false + }, + "target_date": { + "value": "2023-12-15", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateIssue", + "qualifiedName": "Linear.UpdateIssue", + "fullyQualifiedName": "Linear.UpdateIssue@3.2.0", + "description": "Update a Linear issue with partial updates.\n\nOnly fields that are explicitly provided will be updated. All entity\nreferences are validated before update.", + "parameters": [ + { + "name": "issue_id", + "type": "string", + "required": true, + "description": "Issue ID or identifier (like TOO-123). Required.", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": false, + "description": "New issue title. Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "New description in Markdown. Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee", + "type": "string", + "required": false, + "description": "New assignee name or email. Use '@me' for current user. Must be a team member. Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "labels_to_add", + "type": "array", + "innerType": "string", + "required": false, + "description": "Labels to add by name or ID. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "labels_to_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "Labels to remove by name or ID. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "priority", + "type": "string", + "required": false, + "description": "New priority. Only updated if provided.", + "enum": ["none", "urgent", "high", "medium", "low"], + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "New workflow state name. Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "project", + "type": "string", + "required": false, + "description": "Project to link (name, slug, or ID). Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "cycle", + "type": "string", + "required": false, + "description": "Cycle to link (name or number). Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "estimate", + "type": "integer", + "required": false, + "description": "New effort estimate in points. Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "due_date", + "type": "string", + "required": false, + "description": "New due date in YYYY-MM-DD format. Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_url", + "type": "string", + "required": false, + "description": "URL to attach to the issue. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_title", + "type": "string", + "required": false, + "description": "Title for the attached URL. Default is None (URL used as title).", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["issues:create"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Updated issue details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.UpdateIssue", + "parameters": { + "issue_id": { + "value": "TOO-123", + "type": "string", + "required": true + }, + "title": { + "value": "Update API Documentation", + "type": "string", + "required": false + }, + "description": { + "value": "Please ensure that all endpoints are documented thoroughly. **Markdown** formatting should be used.", + "type": "string", + "required": false + }, + "assignee": { + "value": "@me", + "type": "string", + "required": false + }, + "labels_to_add": { + "value": ["documentation", "api"], + "type": "array", + "required": false + }, + "labels_to_remove": { + "value": ["needs review"], + "type": "array", + "required": false + }, + "priority": { + "value": "high", + "type": "string", + "required": false + }, + "state": { + "value": "in progress", + "type": "string", + "required": false + }, + "project": { + "value": "API Docs", + "type": "string", + "required": false + }, + "cycle": { + "value": "2023-Q4", + "type": "string", + "required": false + }, + "estimate": { + "value": 5, + "type": "integer", + "required": false + }, + "due_date": { + "value": "2023-12-01", + "type": "string", + "required": false + }, + "attachment_url": { + "value": "https://example.com/documents/api-overview.pdf", + "type": "string", + "required": false + }, + "attachment_title": { + "value": "API Overview Document", + "type": "string", + "required": false + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateProject", + "qualifiedName": "Linear.UpdateProject", + "fullyQualifiedName": "Linear.UpdateProject@3.2.0", + "description": "Update a Linear project with partial updates.\n\nOnly fields that are explicitly provided will be updated. All entity\nreferences are validated before update.\n\nIMPORTANT: Updating the 'content' field will break any existing inline\ncomment anchoring. The comments will still exist and be retrievable via\nlist_project_comments, but they will no longer appear visually anchored\nto text in the Linear UI. The 'description' field can be safely updated\nwithout affecting inline comments.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID or slug_id. Required.", + "enum": null, + "inferrable": true + }, + { + "name": "name", + "type": "string", + "required": false, + "description": "New project name. Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "New project summary (255 char limit). Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "content", + "type": "string", + "required": false, + "description": "New project document/spec content in Markdown (unlimited). Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "New project state. Only updated if provided.", + "enum": [ + "backlog", + "planned", + "started", + "paused", + "completed", + "canceled" + ], + "inferrable": true + }, + { + "name": "lead", + "type": "string", + "required": false, + "description": "New project lead name or email. Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "New start date in YYYY-MM-DD format. Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "target_date", + "type": "string", + "required": false, + "description": "New target date in YYYY-MM-DD format. Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "teams_to_add", + "type": "array", + "innerType": "string", + "required": false, + "description": "Team names, keys, or IDs to add to the project. Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "teams_to_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "Team names, keys, or IDs to remove from the project. Only updated if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Updated project details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.UpdateProject", + "parameters": { + "project_id": { + "value": "proj-12345", + "type": "string", + "required": true + }, + "name": { + "value": "New Project Name", + "type": "string", + "required": false + }, + "description": { + "value": "This is a summary of the new project.", + "type": "string", + "required": false + }, + "content": { + "value": "# Project Document\n\nThis is the content of the project document.", + "type": "string", + "required": false + }, + "state": { + "value": "active", + "type": "string", + "required": false + }, + "lead": { + "value": "lead@example.com", + "type": "string", + "required": false + }, + "start_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "target_date": { + "value": "2023-12-01", + "type": "string", + "required": false + }, + "teams_to_add": { + "value": ["team1", "team2"], + "type": "array", + "required": false + }, + "teams_to_remove": { + "value": ["team3"], + "type": "array", + "required": false + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "Linear.WhoAmI", + "fullyQualifiedName": "Linear.WhoAmI@3.2.0", + "description": "Get the authenticated user's profile and team memberships.\n\nReturns the current user's information including their name, email,\norganization, and the teams they belong to.", + "parameters": [], + "auth": { + "providerId": "linear", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Authenticated user's profile and teams" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linear.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "linear", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "custom_section", + "position": "after", + "header": "## Auth", + "content": "## Auth\n\nThe Arcade Linear MCP Server uses the [Linear auth provider](/references/auth-providers/linear) to connect to users' Linear accounts. Please refer to the [Linear auth provider](/references/auth-providers/linear) documentation to learn how to configure auth." + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:37:08.616Z", + "summary": "The Linear MCP Server provides a comprehensive set of tools for interacting with Linear's issue tracking, project management, and team collaboration features. With this MCP Server, you can:\n\n- **Issues**: Create, update, search, and manage issues with full support for labels, priorities, assignments, and workflow states\n- **Projects**: Create and manage projects, track milestones, and post status updates\n- **Initiatives**: Manage high-level strategic goals and link projects to initiatives\n- **Teams**: Access team information and member details\n- **Cycles**: Work with time-boxed iterations (sprints) for organizing work\n- **Comments**: Add, update, and reply to comments on issues\n- **GitHub Integration**: Link GitHub PRs, commits, and issues to Linear issues\n- **User Context**: Access notifications, recent activity, and authenticated user information" +} diff --git a/data/toolkits/linkedin.json b/data/toolkits/linkedin.json new file mode 100644 index 000000000..5f56a5be8 --- /dev/null +++ b/data/toolkits/linkedin.json @@ -0,0 +1,77 @@ +{ + "id": "Linkedin", + "label": "LinkedIn", + "version": "0.1.14", + "description": "Arcade.dev LLM tools for LinkedIn", + "metadata": { + "category": "social", + "iconUrl": "https://design-system.arcade.dev/icons/linkedin.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/social-communication/linkedin", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "linkedin", + "allScopes": ["w_member_social"] + }, + "tools": [ + { + "name": "CreateTextPost", + "qualifiedName": "Linkedin.CreateTextPost", + "fullyQualifiedName": "Linkedin.CreateTextPost@0.1.14", + "description": "Share a new text post to LinkedIn.", + "parameters": [ + { + "name": "text", + "type": "string", + "required": true, + "description": "The text content of the post", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "linkedin", + "providerType": "oauth2", + "scopes": ["w_member_social"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "URL of the shared post" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Linkedin.CreateTextPost", + "parameters": { + "text": { + "value": "Excited to share my thoughts on the importance of continuous learning in the tech industry!", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "linkedin", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade LinkedIn MCP Server uses the [LinkedIn auth provider](/references/auth-providers/linkedin) to connect to users' LinkedIn accounts.", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:37:12.626Z", + "summary": "Arcade.dev provides a toolkit for integrating with LinkedIn, enabling developers to streamline interactions with the platform's API. This toolkit allows for the creation of content directly on LinkedIn, enhancing user engagement and social sharing capabilities.\n\n**Capabilities** \n- Seamless integration with LinkedIn's API for enhanced social interactions. \n- Efficiently share content such as text posts to drive engagement. \n- Simplified authentication process through OAuth2, ensuring secure access to user data. \n\n**OAuth** \n- Provider: LinkedIn \n- Scopes: w_member_social \n\n**Secrets** \n- No secrets required for use with this toolkit." +} diff --git a/data/toolkits/lumaapi.json b/data/toolkits/lumaapi.json new file mode 100644 index 000000000..f180fe5a5 --- /dev/null +++ b/data/toolkits/lumaapi.json @@ -0,0 +1,2346 @@ +{ + "id": "LumaApi", + "label": "Luma API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the Luma API.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/luma.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/luma-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "AddEventGuests", + "qualifiedName": "LumaApi.AddEventGuests", + "fullyQualifiedName": "LumaApi.AddEventGuests@1.0.0", + "description": "Add guests to an event with default or custom tickets.\n\nAdd guests to an event with the status \"Going.\" By default, each guest receives one ticket of the default type. Specify custom ticket assignments if needed.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.AddEventGuests", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"event_id\":\"12345\",\"guests\":[{\"name\":\"John Doe\",\"email\":\"johndoe@example.com\",\"ticket_type\":\"VIP\"},{\"name\":\"Jane Smith\",\"email\":\"janesmith@example.com\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddEventHost", + "qualifiedName": "LumaApi.AddEventHost", + "fullyQualifiedName": "LumaApi.AddEventHost@1.0.0", + "description": "Add a host to an event in Luma.\n\nUse this tool to add a host to an event in Luma. If the host already has a Luma profile, it will automatically be recognized and added.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.AddEventHost", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"event_id\":\"12345\",\"host_id\":\"67890\",\"role\":\"speaker\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddEventToLumaCalendar", + "qualifiedName": "LumaApi.AddEventToLumaCalendar", + "fullyQualifiedName": "LumaApi.AddEventToLumaCalendar@1.0.0", + "description": "Add an existing event to the Luma calendar.\n\nUse this tool to add an existing event from Luma or another platform to the Luma calendar without managing it there. Useful for integrating events across platforms.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.AddEventToLumaCalendar", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"eventId\":\"12345\",\"calendarId\":\"67890\",\"userId\":\"abcde\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddUserToMembershipTier", + "qualifiedName": "LumaApi.AddUserToMembershipTier", + "fullyQualifiedName": "LumaApi.AddUserToMembershipTier@1.0.0", + "description": "Add a user to a specified free membership tier.\n\nThis tool adds a user to a free membership tier. It should be called whenever there is a need to enroll a user in a free membership program. Note that paid membership tiers are not supported by this tool, as they require a web payment flow.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.AddUserToMembershipTier", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"user_id\":\"12345\",\"membership_tier\":\"free\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ApplyTagToCalendarMembers", + "qualifiedName": "LumaApi.ApplyTagToCalendarMembers", + "fullyQualifiedName": "LumaApi.ApplyTagToCalendarMembers@1.0.0", + "description": "Apply a tag to existing calendar members.\n\nUse this tool to assign a specific tag to already existing members of a calendar. It does not create new members but merely updates the tagging for current members.", + "parameters": [ + { + "name": "tag_identifier", + "type": "string", + "required": true, + "description": "The Tag API ID (e.g., 'tag-123') or tag name to be applied to calendar members.", + "enum": null, + "inferrable": true + }, + { + "name": "email_addresses", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of email addresses to apply the tag to existing calendar members.", + "enum": null, + "inferrable": true + }, + { + "name": "user_api_ids_to_tag", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of user API IDs to apply the tag to. Each ID corresponds to a calendar member.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.ApplyTagToCalendarMembers", + "parameters": { + "tag_identifier": { + "value": "tag-456", + "type": "string", + "required": true + }, + "email_addresses": { + "value": ["user1@example.com", "user2@example.com"], + "type": "array", + "required": false + }, + "user_api_ids_to_tag": { + "value": ["api_id_1", "api_id_2"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckEventExistence", + "qualifiedName": "LumaApi.CheckEventExistence", + "fullyQualifiedName": "LumaApi.CheckEventExistence@1.0.0", + "description": "Determine if an event exists on the calendar.\n\nUse this tool to find out if an event is already listed on the calendar before deciding to add it.", + "parameters": [ + { + "name": "calendar_platform_type", + "type": "string", + "required": false, + "description": "Specifies the source platform of the event, either 'external' or 'luma'.", + "enum": null, + "inferrable": true + }, + { + "name": "event_details_url", + "type": "string", + "required": false, + "description": "The URL of the event page to check if it exists in the calendar.", + "enum": null, + "inferrable": true + }, + { + "name": "event_identifier", + "type": "string", + "required": false, + "description": "A unique string identifier for the event to check its existence on the calendar.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.CheckEventExistence", + "parameters": { + "calendar_platform_type": { + "value": "external", + "type": "string", + "required": false + }, + "event_details_url": { + "value": "https://example.com/event123", + "type": "string", + "required": false + }, + "event_identifier": { + "value": "event-001", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEvent", + "qualifiedName": "LumaApi.CreateEvent", + "fullyQualifiedName": "LumaApi.CreateEvent@1.0.0", + "description": "Creates and schedules a new event.\n\nThis tool allows users to create and schedule a new event using the Luma service. Call this tool when you need to set up a new event with specific details.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.CreateEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"event_name\":\"Team Meeting\",\"event_date\":\"2023-10-15T10:00:00Z\",\"location\":\"Conference Room A\",\"description\":\"Monthly team sync up.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEventCoupon", + "qualifiedName": "LumaApi.CreateEventCoupon", + "fullyQualifiedName": "LumaApi.CreateEventCoupon@1.0.0", + "description": "Create a non-editable coupon for event registration.\n\nUse this tool to create a coupon for guests registering for an event. Once created, the terms of the coupon cannot be edited.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.CreateEventCoupon", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"coupon_code\":\"SPRING2023\",\"discount\":10,\"event_id\":\"1234\",\"expiration_date\":\"2023-12-31\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEventTicketType", + "qualifiedName": "LumaApi.CreateEventTicketType", + "fullyQualifiedName": "LumaApi.CreateEventTicketType@1.0.0", + "description": "Create a new ticket type for an event.\n\nUse this tool to create a new ticket type for an event. Call this when you need to specify different ticket categories for an event.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.CreateEventTicketType", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"eventId\":\"12345\",\"ticketTypeName\":\"VIP Ticket\",\"price\":99.99,\"quantityAvailable\":100,\"description\":\"Access to VIP area with complimentary drinks.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreatePersonTag", + "qualifiedName": "LumaApi.CreatePersonTag", + "fullyQualifiedName": "LumaApi.CreatePersonTag@1.0.0", + "description": "Create a new person tag in the calendar system.\n\nThis tool is used to create a new person tag within the calendar system, allowing for the organization and tagging of individuals.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.CreatePersonTag", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"tagName\":\"Project Manager\",\"description\":\"Tags for project managers in the calendar system.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeletePersonTag", + "qualifiedName": "LumaApi.DeletePersonTag", + "fullyQualifiedName": "LumaApi.DeletePersonTag@1.0.0", + "description": "Deletes a person tag from the calendar.\n\nUse this tool to delete a person tag from a calendar entry when modifications are needed. It confirms the successful removal of the tag.", + "parameters": [ + { + "name": "tag_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the person tag to be deleted. It should match the tag's API ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.DeletePersonTag", + "parameters": { + "tag_identifier": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GenerateEventCoupon", + "qualifiedName": "LumaApi.GenerateEventCoupon", + "fullyQualifiedName": "LumaApi.GenerateEventCoupon@1.0.0", + "description": "Create a coupon for calendar-managed events.\n\nThis tool generates a coupon applicable to any event managed by the calendar. Ensure the coupon code is unique to avoid conflicts between specific events and the calendar.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.GenerateEventCoupon", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"event_id\":\"12345\",\"coupon_code\":\"SUMMER2023\",\"discount_amount\":15,\"expiration_date\":\"2023-12-31\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GenerateUploadUrl", + "qualifiedName": "LumaApi.GenerateUploadUrl", + "fullyQualifiedName": "LumaApi.GenerateUploadUrl@1.0.0", + "description": "Generates a URL for image upload.\n\nUse this tool to generate a URL where images can be uploaded. This is useful when you need to upload images to the Luma service.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.GenerateUploadUrl", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"image_type\":\"jpeg\",\"max_file_size\":10485760}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEventAdminInfo", + "qualifiedName": "LumaApi.GetEventAdminInfo", + "fullyQualifiedName": "LumaApi.GetEventAdminInfo@1.0.0", + "description": "Retrieve admin information for an accessible event.\n\nThis tool is used to get administrative details about an event for which the user has management access. It should be called when detailed event information is required by an admin.", + "parameters": [ + { + "name": "event_api_id", + "type": "string", + "required": false, + "description": "Event API ID, starting with 'evt-', used to identify the event.", + "enum": null, + "inferrable": true + }, + { + "name": "event_id", + "type": "string", + "required": false, + "description": "The unique identifier for the event, usually starts with 'evt-'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.GetEventAdminInfo", + "parameters": { + "event_api_id": { + "value": "evt-123456", + "type": "string", + "required": false + }, + "event_id": { + "value": "evt-654321", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEventGuest", + "qualifiedName": "LumaApi.GetEventGuest", + "fullyQualifiedName": "LumaApi.GetEventGuest@1.0.0", + "description": "Retrieve event guest details using their ID.\n\nUse this tool to get details of an event guest by specifying their ID. It facilitates looking up guests through various parameters.", + "parameters": [ + { + "name": "event_api_id", + "type": "string", + "required": false, + "description": "Provide the unique API ID for the event to retrieve guest details.", + "enum": null, + "inferrable": true + }, + { + "name": "event_identifier", + "type": "string", + "required": false, + "description": "The ID of the event, typically starting with 'evt-'. Used to identify the specific event.", + "enum": null, + "inferrable": true + }, + { + "name": "guest_api_id", + "type": "string", + "required": false, + "description": "The unique API ID of the guest, distinct from the user ID. This is used for identifying the guest within the system.", + "enum": null, + "inferrable": true + }, + { + "name": "guest_email", + "type": "string", + "required": false, + "description": "The email address of the event guest to look up.", + "enum": null, + "inferrable": true + }, + { + "name": "guest_identifier", + "type": "string", + "required": false, + "description": "Identifier for looking up the guest, such as guest ID (gst-), ticket key, guest key (g-), or the user's email.", + "enum": null, + "inferrable": true + }, + { + "name": "proxy_key", + "type": "string", + "required": false, + "description": "Value of the `pk` parameter from the check-in QR code used to identify the guest.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.GetEventGuest", + "parameters": { + "event_api_id": { + "value": "123456", + "type": "string", + "required": false + }, + "event_identifier": { + "value": "evt-7890", + "type": "string", + "required": false + }, + "guest_api_id": { + "value": "guest-5432", + "type": "string", + "required": false + }, + "guest_email": { + "value": "johndoe@example.com", + "type": "string", + "required": false + }, + "guest_identifier": { + "value": "gst-9876", + "type": "string", + "required": false + }, + "proxy_key": { + "value": "pk-112233", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEventGuests", + "qualifiedName": "LumaApi.GetEventGuests", + "fullyQualifiedName": "LumaApi.GetEventGuests@1.0.0", + "description": "Retrieve registered or invited guests for an event.\n\nUse this tool to obtain a list of guests who have registered or been invited to a specific event.", + "parameters": [ + { + "name": "event_api_id", + "type": "string", + "required": false, + "description": "The unique ID of the event, typically starting with 'evt-'.", + "enum": null, + "inferrable": true + }, + { + "name": "event_id", + "type": "string", + "required": false, + "description": "The unique identifier for the event, usually starts with 'evt-'.", + "enum": null, + "inferrable": true + }, + { + "name": "guest_approval_status", + "type": "string", + "required": false, + "description": "Filter guests by their approval status. Options: 'approved', 'session', 'pending_approval', 'invited', 'declined', 'waitlist'.", + "enum": null, + "inferrable": true + }, + { + "name": "guest_sort_column", + "type": "string", + "required": false, + "description": "The column to sort the guest list by. Options are 'name', 'email', 'created_at', 'registered_at', or 'checked_in_at'.", + "enum": null, + "inferrable": true + }, + { + "name": "items_to_return", + "type": "number", + "required": false, + "description": "Specify the number of guest entries to return. The server enforces a maximum limit.", + "enum": null, + "inferrable": true + }, + { + "name": "next_cursor_value", + "type": "string", + "required": false, + "description": "Value of `next_cursor` from a previous request to paginate through results.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the order for sorting the list of guests. Acceptable values are 'asc', 'desc', 'asc nulls last', or 'desc nulls last'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.GetEventGuests", + "parameters": { + "event_api_id": { + "value": "evt-123456", + "type": "string", + "required": false + }, + "event_id": { + "value": "evt-7891011", + "type": "string", + "required": false + }, + "guest_approval_status": { + "value": "approved", + "type": "string", + "required": false + }, + "guest_sort_column": { + "value": "name", + "type": "string", + "required": false + }, + "items_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "next_cursor_value": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "sort_order": { + "value": "asc", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTicketTypeById", + "qualifiedName": "LumaApi.GetTicketTypeById", + "fullyQualifiedName": "LumaApi.GetTicketTypeById@1.0.0", + "description": "Retrieve event ticket type details by ID.\n\nUse this tool to get detailed information about a specific ticket type by providing its ID. Ideal for fetching ticket-related details for events.", + "parameters": [ + { + "name": "event_ticket_type_api_id", + "type": "string", + "required": false, + "description": "The unique API ID for the event ticket type. It must be provided to retrieve ticket information.", + "enum": null, + "inferrable": true + }, + { + "name": "ticket_type_id", + "type": "string", + "required": false, + "description": "The ID of the ticket type to retrieve, typically starts with 'ett-'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.GetTicketTypeById", + "parameters": { + "event_ticket_type_api_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "ticket_type_id": { + "value": "ett-456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUserInfo", + "qualifiedName": "LumaApi.GetUserInfo", + "fullyQualifiedName": "LumaApi.GetUserInfo@1.0.0", + "description": "Retrieve the user's personal information and profile details.\n\nThis tool is used to fetch the current user's personal details, including profile information. It can be called when an application needs to access the user's data for personalization or account management purposes.", + "parameters": [], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.GetUserInfo", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ImportPeopleToCalendar", + "qualifiedName": "LumaApi.ImportPeopleToCalendar", + "fullyQualifiedName": "LumaApi.ImportPeopleToCalendar@1.0.0", + "description": "Import people to your calendar from contact lists.\n\nThis tool is used to import individuals from contact lists into your calendar, making it simple to invite them to events and send newsletters. Use this when you need to manage and communicate with attendees efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.ImportPeopleToCalendar", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"contacts\":[{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"},{\"name\":\"Jane Smith\",\"email\":\"jane.smith@example.com\"}]}\"", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCalendarCoupons", + "qualifiedName": "LumaApi.ListCalendarCoupons", + "fullyQualifiedName": "LumaApi.ListCalendarCoupons@1.0.0", + "description": "Retrieve all coupons for a calendar.\n\nUse this tool to obtain a comprehensive list of all coupons that have been created for a specific calendar.", + "parameters": [ + { + "name": "items_to_return", + "type": "number", + "required": false, + "description": "The number of coupon items to retrieve. The server enforces a maximum limit.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Provide the `next_cursor` value obtained from a prior request to paginate through results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.ListCalendarCoupons", + "parameters": { + "items_to_return": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123def456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEventCoupons", + "qualifiedName": "LumaApi.ListEventCoupons", + "fullyQualifiedName": "LumaApi.ListEventCoupons@1.0.0", + "description": "Retrieve all coupons created for an event.\n\nUse this tool to obtain a list of all coupons that have been generated for a specific event. This tool is useful for managing and analyzing promotional strategies linked to events.", + "parameters": [ + { + "name": "event_api_id", + "type": "string", + "required": false, + "description": "The unique identifier for the event, typically starting with 'evt-'. Required to list coupons for the specified event.", + "enum": null, + "inferrable": true + }, + { + "name": "event_identifier", + "type": "string", + "required": false, + "description": "Event ID, typically starting with 'evt-'. It identifies the specific event for which to list coupons.", + "enum": null, + "inferrable": true + }, + { + "name": "item_return_limit", + "type": "number", + "required": false, + "description": "Specifies the number of items to return in the response, up to the server's maximum allowed.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Value of `next_cursor` from a previous request to continue pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.ListEventCoupons", + "parameters": { + "event_api_id": { + "value": "evt-12345", + "type": "string", + "required": false + }, + "event_identifier": { + "value": "evt-67890", + "type": "string", + "required": false + }, + "item_return_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEventTicketTypes", + "qualifiedName": "LumaApi.ListEventTicketTypes", + "fullyQualifiedName": "LumaApi.ListEventTicketTypes@1.0.0", + "description": "Retrieve a list of all ticket types for an event.\n\nUse this tool to get a detailed list of available ticket types for a specific event. It is useful for understanding ticket options and pricing for attendees.", + "parameters": [ + { + "name": "event_id", + "type": "string", + "required": false, + "description": "The unique identifier for an event, typically starting with 'evt-'.", + "enum": null, + "inferrable": true + }, + { + "name": "event_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the event, usually starting with evt-.", + "enum": null, + "inferrable": true + }, + { + "name": "include_hidden_ticket_types", + "type": "string", + "required": false, + "description": "Set to true to include hidden ticket types in the response list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.ListEventTicketTypes", + "parameters": { + "event_id": { + "value": "evt-123456", + "type": "string", + "required": false + }, + "event_identifier": { + "value": "evt-abcdef", + "type": "string", + "required": false + }, + "include_hidden_ticket_types": { + "value": "true", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListLumaCalendarEvents", + "qualifiedName": "LumaApi.ListLumaCalendarEvents", + "fullyQualifiedName": "LumaApi.ListLumaCalendarEvents@1.0.0", + "description": "Retrieve all events managed by your Luma Calendar.\n\nUse this tool to list all events managed by your Luma Calendar. It does not include events that are listed but not managed by the Calendar.", + "parameters": [ + { + "name": "event_sort_direction", + "type": "string", + "required": false, + "description": "Defines the order of events. Use 'asc' or 'desc' for ascending or descending. Options 'asc nulls last' and 'desc nulls last' place nulls at the end.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_events_before", + "type": "string", + "required": false, + "description": "Filter events to show only those happening before this ISO 8601 Datetime. Example: 2022-10-19T03:27:13.673Z", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_items_to_return", + "type": "number", + "required": false, + "description": "The number of events to return. The server enforces a maximum limit.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Use the `next_cursor` value from a previous request to continue listing events.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_column", + "type": "string", + "required": false, + "description": "Specify the column to sort events by. For now, 'start_at' is the available option.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_after", + "type": "string", + "required": false, + "description": "Specify the starting datetime to filter events after this timestamp in ISO 8601 format (e.g., 2022-10-19T03:27:13.673Z).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.ListLumaCalendarEvents", + "parameters": { + "event_sort_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "filter_events_before": { + "value": "2023-12-31T23:59:59.999Z", + "type": "string", + "required": false + }, + "number_of_items_to_return": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "eyJ2IjoiNCIsInAiOiJwYWdlIn0", + "type": "string", + "required": false + }, + "sort_by_column": { + "value": "start_at", + "type": "string", + "required": false + }, + "start_date_after": { + "value": "2023-01-01T00:00:00.000Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListMembershipTiers", + "qualifiedName": "LumaApi.ListMembershipTiers", + "fullyQualifiedName": "LumaApi.ListMembershipTiers@1.0.0", + "description": "Retrieve available membership tiers for the calendar.", + "parameters": [ + { + "name": "items_to_return_count", + "type": "number", + "required": false, + "description": "Specify the number of membership tiers to return. The server may enforce a maximum limit.", + "enum": null, + "inferrable": true + }, + { + "name": "previous_request_next_cursor", + "type": "string", + "required": false, + "description": "The `next_cursor` value from a prior request for fetching subsequent data.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.ListMembershipTiers", + "parameters": { + "items_to_return_count": { + "value": 5, + "type": "integer", + "required": false + }, + "previous_request_next_cursor": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPeople", + "qualifiedName": "LumaApi.ListPeople", + "fullyQualifiedName": "LumaApi.ListPeople@1.0.0", + "description": "Retrieve a list of people from the calendar.\n\nUse this tool to obtain a list of people associated with the calendar.", + "parameters": [ + { + "name": "calendar_membership_status", + "type": "string", + "required": false, + "description": "Specify the membership status for filtering calendar members. This is only relevant for calendar memberships.", + "enum": null, + "inferrable": true + }, + { + "name": "calendar_membership_tier_api_id", + "type": "string", + "required": false, + "description": "A unique identifier for the calendar membership tier to filter people.", + "enum": null, + "inferrable": true + }, + { + "name": "calendar_tier_id", + "type": "string", + "required": false, + "description": "Unique identifier for the calendar membership tier to filter people.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_tags", + "type": "string", + "required": false, + "description": "Comma-separated list of tag names or IDs to filter people with specified tags.", + "enum": null, + "inferrable": true + }, + { + "name": "items_to_return", + "type": "number", + "required": false, + "description": "Specify the number of items to return in the response. The server may enforce a maximum limit.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_next_cursor", + "type": "string", + "required": false, + "description": "Provide the `next_cursor` value from a previous request to continue pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "Search for people using names or emails.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_column", + "type": "string", + "required": false, + "description": "Sort the list of people by a specified column: created_at, event_checked_in_count, event_approved_count, name, or revenue_usd_cents.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specifies the order for sorting results: 'asc', 'desc', 'asc nulls last', or 'desc nulls last'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.ListPeople", + "parameters": { + "calendar_membership_status": { + "value": "active", + "type": "string", + "required": false + }, + "calendar_membership_tier_api_id": { + "value": "tier_12345", + "type": "string", + "required": false + }, + "calendar_tier_id": { + "value": "tier_67890", + "type": "string", + "required": false + }, + "filter_by_tags": { + "value": "client, collaborator", + "type": "string", + "required": false + }, + "items_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_next_cursor": { + "value": "cursor_abc123", + "type": "string", + "required": false + }, + "search_query": { + "value": "john.doe@example.com", + "type": "string", + "required": false + }, + "sort_by_column": { + "value": "name", + "type": "string", + "required": false + }, + "sort_order": { + "value": "asc", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPersonTags", + "qualifiedName": "LumaApi.ListPersonTags", + "fullyQualifiedName": "LumaApi.ListPersonTags@1.0.0", + "description": "Retrieve a list of tags associated with persons.\n\nThis tool is used to call the Luma API to get a list of tags that are associated with persons. It should be called when there's a need to retrieve person tags from the Luma service.", + "parameters": [ + { + "name": "items_to_return", + "type": "number", + "required": false, + "description": "Specify the number of tags to return. The server will impose a maximum limit.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Use the `next_cursor` value from a previous response to paginate results.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_column", + "type": "string", + "required": false, + "description": "Specifies the column to sort the tags by. Options are 'name', 'color', or 'created_at'.", + "enum": null, + "inferrable": true + }, + { + "name": "sorting_direction", + "type": "string", + "required": false, + "description": "Specifies the order direction of the person tags. Choose from 'asc', 'desc', 'asc nulls last', or 'desc nulls last'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.ListPersonTags", + "parameters": { + "items_to_return": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "sort_by_column": { + "value": "name", + "type": "string", + "required": false + }, + "sorting_direction": { + "value": "asc", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "LumaEntityLookup", + "qualifiedName": "LumaApi.LumaEntityLookup", + "fullyQualifiedName": "LumaApi.LumaEntityLookup@1.0.0", + "description": "Lookup an entity on Luma by its slug.\n\nUse this tool to fetch detailed information about an entity from Luma using a specific slug identifier.", + "parameters": [ + { + "name": "entity_slug", + "type": "string", + "required": true, + "description": "The unique string identifier for the entity to be looked up in Luma.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.LumaEntityLookup", + "parameters": { + "entity_slug": { + "value": "example-entity-slug", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyCoupon", + "qualifiedName": "LumaApi.ModifyCoupon", + "fullyQualifiedName": "LumaApi.ModifyCoupon@1.0.0", + "description": "Update a coupon's details in the system.\n\nUse this tool to update the details of an existing coupon. It should be called when changes to coupon parameters are needed, such as expiration date or discount value.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.ModifyCoupon", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"couponId\": \"12345\", \"expirationDate\": \"2024-12-31\", \"discountValue\": 20}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveTagFromCalendarMembers", + "qualifiedName": "LumaApi.RemoveTagFromCalendarMembers", + "fullyQualifiedName": "LumaApi.RemoveTagFromCalendarMembers@1.0.0", + "description": "Remove a tag from existing calendar members.\n\nUse this tool to remove a specified tag from existing members of a calendar. Intended for managing and updating member tags efficiently.", + "parameters": [ + { + "name": "tag_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the tag to remove from calendar members, such as 'tag-123' or 'Birthday'.", + "enum": null, + "inferrable": true + }, + { + "name": "email_addresses_to_remove_tag", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of email addresses to remove the tag from the calendar members.", + "enum": null, + "inferrable": true + }, + { + "name": "user_api_ids_to_remove_tag", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of user API IDs from which to remove the specified tag.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.RemoveTagFromCalendarMembers", + "parameters": { + "tag_identifier": { + "value": "Birthday", + "type": "string", + "required": true + }, + "email_addresses_to_remove_tag": { + "value": ["john.doe@example.com", "jane.smith@example.com"], + "type": "array", + "required": false + }, + "user_api_ids_to_remove_tag": { + "value": ["user-001", "user-002"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SendGuestEventInvite", + "qualifiedName": "LumaApi.SendGuestEventInvite", + "fullyQualifiedName": "LumaApi.SendGuestEventInvite@1.0.0", + "description": "Send event invitations to guests via email and SMS.\n\nThis tool sends an invitation to guests for an event by email and SMS, leveraging the Luma service. It is useful when you need to notify guests about an event quickly and ensure they receive the invitation through multiple channels.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.SendGuestEventInvite", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"event_name\":\"Birthday Party\",\"event_date\":\"2023-12-01T18:00:00Z\",\"guest_emails\":[\"guest1@example.com\",\"guest2@example.com\"],\"guest_phone_numbers\":[\"+1234567890\",\"+0987654321\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SoftDeleteTicketType", + "qualifiedName": "LumaApi.SoftDeleteTicketType", + "fullyQualifiedName": "LumaApi.SoftDeleteTicketType@1.0.0", + "description": "Soft delete a ticket type if certain conditions are met.\n\nUse this tool to soft delete a ticket type, provided no tickets have been sold and it's not the last visible type.", + "parameters": [ + { + "name": "event_ticket_type_id", + "type": "string", + "required": true, + "description": "The ID of the event ticket type to be soft deleted. Ensure no tickets are sold, and it's not the last visible type before deletion.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.SoftDeleteTicketType", + "parameters": { + "event_ticket_type_id": { + "value": "abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCoupon", + "qualifiedName": "LumaApi.UpdateCoupon", + "fullyQualifiedName": "LumaApi.UpdateCoupon@1.0.0", + "description": "Updates a coupon in the calendar.\n\nUse this tool to modify the details of an existing coupon in the Luma calendar system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.UpdateCoupon", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"coupon_id\":\"12345\",\"discount\":\"20%\",\"expiration_date\":\"2023-12-31\",\"status\":\"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEvent", + "qualifiedName": "LumaApi.UpdateEvent", + "fullyQualifiedName": "LumaApi.UpdateEvent@1.0.0", + "description": "Update event details using Luma's API.\n\nThis tool updates event information using Luma's event update endpoint. It should be called when modifications to event details are required.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.UpdateEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"event_id\":\"12345\",\"event_name\":\"Updated Event Name\",\"event_date\":\"2023-10-15T10:00:00Z\",\"location\":\"New Venue\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateGuestStatus", + "qualifiedName": "LumaApi.UpdateGuestStatus", + "fullyQualifiedName": "LumaApi.UpdateGuestStatus@1.0.0", + "description": "Updates the status of an event guest.\n\nUse this tool to change the status of a guest in an event, such as marking them as confirmed, declined, or pending.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.UpdateGuestStatus", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"guestId\": \"12345\", \"status\": \"confirmed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateMembershipStatus", + "qualifiedName": "LumaApi.UpdateMembershipStatus", + "fullyQualifiedName": "LumaApi.UpdateMembershipStatus@1.0.0", + "description": "Update a member's membership status and handle payments.\n\nUse this tool to approve or decline a member's membership status. Approving a paid tier member will capture their payment, while declining will cancel any active subscription.", + "parameters": [ + { + "name": "membership_status", + "type": "string", + "required": true, + "description": "Set the membership status to either 'approved' to capture payment or 'declined' to cancel the subscription.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "User ID (e.g., 'usr-xxx') or email address to identify the member whose status is to be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.UpdateMembershipStatus", + "parameters": { + "membership_status": { + "value": "approved", + "type": "string", + "required": true + }, + "user_identifier": { + "value": "usr-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdatePersonTag", + "qualifiedName": "LumaApi.UpdatePersonTag", + "fullyQualifiedName": "LumaApi.UpdatePersonTag@1.0.0", + "description": "Updates a tag for a person in the calendar system.\n\nThis tool is used to update a person's tag within the calendar system. It should be called when there is a need to change or assign a new label to a person in a calendar context.", + "parameters": [ + { + "name": "person_tag_api_id", + "type": "string", + "required": true, + "description": "The unique identifier for the tag to be updated. It is required to identify which tag needs modification.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_color", + "type": "string", + "required": false, + "description": "Specify the color to be assigned to the person's tag. Choose from: cranberry, barney, red, green, blue, purple, yellow, orange.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_name", + "type": "string", + "required": false, + "description": "The new name for the tag to be updated. It should be descriptive and relevant to the person's role or status.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.UpdatePersonTag", + "parameters": { + "person_tag_api_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "tag_color": { + "value": "blue", + "type": "string", + "required": false + }, + "tag_name": { + "value": "Project Manager", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTicketTypeConfiguration", + "qualifiedName": "LumaApi.UpdateTicketTypeConfiguration", + "fullyQualifiedName": "LumaApi.UpdateTicketTypeConfiguration@1.0.0", + "description": "Update an existing ticket type configuration.\n\nUse this tool to modify the settings of a ticket type for an event. It should be called when changes to a ticket type's details or availability are required.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["LUMA_API_KEY"], + "secretsInfo": [ + { + "name": "LUMA_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "LumaApi.UpdateTicketTypeConfiguration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"ticketTypeId\":\"12345\",\"newDetails\":{\"name\":\"VIP Pass\",\"price\":100.00,\"availability\":\"available\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "warning", + "location": "before_available_tools", + "position": "after", + "content": "## Authentication\n\nThe Arcade Luma API MCP Server requires one environment variable to authenticate with the [Luma API](https://docs.luma.com/reference/getting-started-with-your-api):\n\n- `LUMA_API_KEY`\n\n**How to obtain your credentials:**\n\n1. Navigate to your [Luma dashboard](https://lu.ma/)\n2. Click on your profile icon and go to **Settings**\n3. Navigate to **API** or **Developer Settings**\n4. Click **Generate API Key** or **Create New Key**\n5. Copy the API key and store it securely\n\n\n The Luma API requires a **Luma Plus** subscription. Be careful with your API\n key since it provides full access to your Luma account.\n\n\nFor more details, see the [Luma API Getting Started guide](https://docs.luma.com/reference/getting-started-with-your-api).", + "header": "## Authentication" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:37:30.825Z", + "summary": "LumaApi provides tools that facilitate LLMs in interacting seamlessly with the Luma API to manage events and user memberships. This toolkit allows developers to efficiently handle event creation, guest management, and membership features.\n\n**Capabilities**\n- Create, update, and manage events and their details.\n- Add and update guests, hosts, and members for events.\n- Generate and manage event tickets and coupons.\n- Import people and apply tags to streamline calendar management.\n\n**OAuth**\n- No OAuth configurations required; utilize API key for access.\n\n**Secrets**\n- Secret Type: API Key \n - Example: LUMA_API_KEY (used for authenticating API requests). " +} diff --git a/data/toolkits/mailchimpmarketingapi.json b/data/toolkits/mailchimpmarketingapi.json new file mode 100644 index 000000000..d938bafdf --- /dev/null +++ b/data/toolkits/mailchimpmarketingapi.json @@ -0,0 +1,21877 @@ +{ + "id": "MailchimpMarketingApi", + "label": "Mailchimp API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the Mailchimp Marketing API.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/mailchimp.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/mailchimp-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "mailchimp", + "allScopes": [] + }, + "tools": [ + { + "name": "AddAudienceMergeField", + "qualifiedName": "MailchimpMarketingApi.AddAudienceMergeField", + "fullyQualifiedName": "MailchimpMarketingApi.AddAudienceMergeField@1.0.0", + "description": "Add a new merge field to a specific audience.\n\n This tool is used to add a new merge field for a specific audience in Mailchimp. It should be called when you need to enhance the audience profile with additional information fields.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "audience_list_id", + "type": "string", + "required": false, + "description": "The unique ID of the Mailchimp audience list to which the merge field will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsIdMergeFields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddAudienceMergeField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "audience_list_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Birthday\",\"type\":\"date\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddCampaignFeedback", + "qualifiedName": "MailchimpMarketingApi.AddCampaignFeedback", + "fullyQualifiedName": "MailchimpMarketingApi.AddCampaignFeedback@1.0.0", + "description": "Add feedback to a specific Mailchimp campaign.\n\nUse this tool to submit feedback for a particular campaign in Mailchimp. This is helpful when users want to provide input or comments about a campaign.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp campaign to which feedback will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "feedback_content", + "type": "string", + "required": true, + "description": "The content of the feedback to be added to the campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "editable_block_id", + "type": "integer", + "required": false, + "description": "The ID of the editable block the feedback addresses in the campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "is_feedback_complete", + "type": "boolean", + "required": false, + "description": "Indicates whether the feedback is complete. Use 'true' if complete and 'false' otherwise.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postCampaignsIdFeedback'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddCampaignFeedback", + "parameters": { + "campaign_unique_id": { + "value": "abc1234xyz", + "type": "string", + "required": true + }, + "feedback_content": { + "value": "The design of this campaign is visually appealing but could use more contrast.", + "type": "string", + "required": true + }, + "editable_block_id": { + "value": 5, + "type": "integer", + "required": false + }, + "is_feedback_complete": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddCartToStore", + "qualifiedName": "MailchimpMarketingApi.AddCartToStore", + "fullyQualifiedName": "MailchimpMarketingApi.AddCartToStore@1.0.0", + "description": "Add a new cart to an ecommerce store.\n\n This tool adds a new cart to a specified ecommerce store using Mailchimp Marketing. It should be called when a user needs to create a new cart for a store.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the ecommerce store where the new cart will be added. This is essential to specify the target store. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postEcommerceStoresIdCarts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddCartToStore", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"items\":[{\"product_id\":\"prod_001\",\"quantity\":2},{\"product_id\":\"prod_002\",\"quantity\":1}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddCustomerToStore", + "qualifiedName": "MailchimpMarketingApi.AddCustomerToStore", + "fullyQualifiedName": "MailchimpMarketingApi.AddCustomerToStore@1.0.0", + "description": "Add a new customer to an ecommerce store.\n\n This tool adds a new customer to a specified ecommerce store. It should be called when a new customer needs to be registered in the store's system.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the ecommerce store where the customer will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postEcommerceStoresIdCustomers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddCustomerToStore", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email_address\":\"customer@example.com\",\"first_name\":\"John\",\"last_name\":\"Doe\",\"status\":\"subscribed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddLineItemToCart", + "qualifiedName": "MailchimpMarketingApi.AddLineItemToCart", + "fullyQualifiedName": "MailchimpMarketingApi.AddLineItemToCart@1.0.0", + "description": "Add a new line item to an existing shopping cart.\n\nUse this tool to add a product to a specific cart by specifying the store and cart IDs. This enables updating shopping carts with new items in an e-commerce context.", + "parameters": [ + { + "name": "cart_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the cart to which the line item will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "cart_line_item_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the cart line item.", + "enum": null, + "inferrable": true + }, + { + "name": "line_item_price", + "type": "number", + "required": true, + "description": "The monetary price for the line item being added to the cart. Must be a numeric value.", + "enum": null, + "inferrable": true + }, + { + "name": "line_item_quantity", + "type": "integer", + "required": true, + "description": "The number of units for the specified product variant in the cart.", + "enum": null, + "inferrable": true + }, + { + "name": "product_id", + "type": "string", + "required": true, + "description": "A unique identifier for the product to be added to the cart line item.", + "enum": null, + "inferrable": true + }, + { + "name": "product_variant_id", + "type": "string", + "required": true, + "description": "A unique identifier for the product variant to be added to the cart. This is necessary to specify which variant of the product is being added.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store. This is necessary to specify which store's cart will be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postEcommerceStoresIdCartsIdLines'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddLineItemToCart", + "parameters": { + "cart_identifier": { + "value": "cart_12345", + "type": "string", + "required": true + }, + "cart_line_item_identifier": { + "value": "line_item_67890", + "type": "string", + "required": true + }, + "line_item_price": { + "value": 29.99, + "type": "integer", + "required": true + }, + "line_item_quantity": { + "value": 2, + "type": "integer", + "required": true + }, + "product_id": { + "value": "product_abc123", + "type": "string", + "required": true + }, + "product_variant_id": { + "value": "variant_xyz456", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_2023", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddListMemberEvent", + "qualifiedName": "MailchimpMarketingApi.AddListMemberEvent", + "fullyQualifiedName": "MailchimpMarketingApi.AddListMemberEvent@1.0.0", + "description": "Add an event for a list member in Mailchimp.\n\n This tool adds an event to a specific list member in Mailchimp. It should be called when you need to track a specific activity or event for a subscriber in a mailing list.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "list_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the Mailchimp list. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "list_member_identifier", + "type": "string", + "required": false, + "description": "The MD5 hash of the lowercase version of the list member's email address, or the email address/contact_id. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListMemberEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddListMemberEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "list_identifier": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "list_member_identifier": { + "value": "f7c3c36d0f9b532c4a1a3b6de403b877", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"event_type\": \"opened\", \"timestamp\": \"2023-10-01T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddMemberToMailchimpList", + "qualifiedName": "MailchimpMarketingApi.AddMemberToMailchimpList", + "fullyQualifiedName": "MailchimpMarketingApi.AddMemberToMailchimpList@1.0.0", + "description": "Add a new member to a Mailchimp list.\n\n Use this tool to add a new subscriber to a specific Mailchimp list. It should be called when you need to manage mailing lists by adding new contacts.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": false, + "description": "The unique ID for the Mailchimp list to which a new member will be added. This ID can be found in the Mailchimp account settings. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "bypass_merge_field_validation", + "type": "string", + "required": false, + "description": "Set to true to accept member data without required merge fields. Defaults to false. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsIdMembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddMemberToMailchimpList", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "list_unique_id": { + "value": "abc123xyz456", + "type": "string", + "required": false + }, + "bypass_merge_field_validation": { + "value": "false", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email_address\": \"example@example.com\", \"status\": \"subscribed\", \"merge_fields\": {\"FNAME\": \"John\", \"LNAME\": \"Doe\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddMemberToStaticSegment", + "qualifiedName": "MailchimpMarketingApi.AddMemberToStaticSegment", + "fullyQualifiedName": "MailchimpMarketingApi.AddMemberToStaticSegment@1.0.0", + "description": "Add a member to a Mailchimp static segment.\n\nUse this tool to add a new member to a specific static segment within a Mailchimp list. This is helpful for updating subscriber lists with targeted segments.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list to which the segment belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "segment_id", + "type": "string", + "required": true, + "description": "The unique ID for the segment to which the member will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_email_address", + "type": "string", + "required": true, + "description": "The email address of the subscriber to be added to the static segment.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsIdSegmentsIdMembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddMemberToStaticSegment", + "parameters": { + "list_unique_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "segment_id": { + "value": "seg789def012", + "type": "string", + "required": true + }, + "subscriber_email_address": { + "value": "example@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddNewEcommerceStore", + "qualifiedName": "MailchimpMarketingApi.AddNewEcommerceStore", + "fullyQualifiedName": "MailchimpMarketingApi.AddNewEcommerceStore@1.0.0", + "description": "Add a new e-commerce store to your Mailchimp account.\n\nUse this tool to add a new store to your Mailchimp account for managing e-commerce activities. Call this tool when you need to integrate a new store with Mailchimp.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postEcommerceStores'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddNewEcommerceStore", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"store_name\": \"My Online Store\", \"store_url\": \"https://www.myonlinestore.com\", \"currency_code\": \"USD\", \"timezone\": \"America/New_York\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddNoteToSubscriber", + "qualifiedName": "MailchimpMarketingApi.AddNoteToSubscriber", + "fullyQualifiedName": "MailchimpMarketingApi.AddNoteToSubscriber@1.0.0", + "description": "Add a new note for a specific subscriber in Mailchimp.\n\nUse this tool to add a note to a subscriber's profile in a specific list on Mailchimp. This is useful for keeping track of important information or interactions related to the subscriber.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp list. This is required to add a note to a subscriber's profile in the specified list.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_email_hash", + "type": "string", + "required": true, + "description": "MD5 hash of the lowercase version of the subscriber's email address.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_note_content", + "type": "string", + "required": false, + "description": "The content of the note for a subscriber. It must be limited to 1,000 characters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsIdMembersIdNotes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddNoteToSubscriber", + "parameters": { + "list_unique_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "subscriber_email_hash": { + "value": "5d41402abc4b2a76b9719d911017c592", + "type": "string", + "required": true + }, + "subscriber_note_content": { + "value": "Follow up on subscriber's interest in our new product line.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddOrderLineItem", + "qualifiedName": "MailchimpMarketingApi.AddOrderLineItem", + "fullyQualifiedName": "MailchimpMarketingApi.AddOrderLineItem@1.0.0", + "description": "Add a new line item to an existing order.\n\n Use this tool to add a new product line to an existing order in an ecommerce store. Ideal for updating orders with additional items, changing quantities, or modifying product details.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the store where the order is placed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "order_id", + "type": "string", + "required": false, + "description": "The unique identifier for the order in the store, used to specify which order to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postEcommerceStoresIdOrdersIdLines'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddOrderLineItem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_12345", + "type": "string", + "required": false + }, + "order_id": { + "value": "order_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"line_item\":{\"product_id\":\"prod_001\",\"quantity\":2,\"price\":19.99}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddOrderToStore", + "qualifiedName": "MailchimpMarketingApi.AddOrderToStore", + "fullyQualifiedName": "MailchimpMarketingApi.AddOrderToStore@1.0.0", + "description": "Add a new order to an ecommerce store.\n\n This tool adds a new order to a specified store using the store's ID. It should be called when you need to record a new purchase or transaction in your ecommerce system.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the store where the order will be added. This should be a string value that accurately corresponds to an existing store in the system. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postEcommerceStoresIdOrders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddOrderToStore", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"customer_id\":\"cust_001\",\"items\":[{\"product_id\":\"prod_001\",\"quantity\":2,\"price\":19.99},{\"product_id\":\"prod_002\",\"quantity\":1,\"price\":29.99}],\"total\":69.97,\"currency\":\"USD\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddOrUpdateCustomerInStore", + "qualifiedName": "MailchimpMarketingApi.AddOrUpdateCustomerInStore", + "fullyQualifiedName": "MailchimpMarketingApi.AddOrUpdateCustomerInStore@1.0.0", + "description": "Add or update a customer in an eCommerce store.\n\n Use this tool to add a new customer or update an existing customer's information in a specific eCommerce store using Mailchimp Marketing.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the eCommerce store where the customer will be added or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the customer in the specified store. This ID is necessary for adding or updating customer details. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'putEcommerceStoresIdCustomersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddOrUpdateCustomerInStore", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_12345", + "type": "string", + "required": false + }, + "customer_identifier": { + "value": "customer_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email_address\": \"customer@example.com\", \"status\": \"subscribed\", \"merge_fields\": {\"FNAME\": \"John\", \"LNAME\": \"Doe\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddOrUpdateListMember", + "qualifiedName": "MailchimpMarketingApi.AddOrUpdateListMember", + "fullyQualifiedName": "MailchimpMarketingApi.AddOrUpdateListMember@1.0.0", + "description": "Add or update a member in a Mailchimp list.\n\n Use this tool to add a new member to a specific Mailchimp list or update the information of an existing member. This is useful for managing list subscriptions effectively.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "unique_list_id", + "type": "string", + "required": false, + "description": "The unique ID identifying the Mailchimp list where members are added or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_identifier", + "type": "string", + "required": false, + "description": "MD5 hash of the lowercase version of the member's email address, email address, or contact ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "bypass_merge_field_check", + "type": "string", + "required": false, + "description": "Set to true to allow member data without required merge fields. Defaults to false. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'putListsIdMembersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddOrUpdateListMember", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "unique_list_id": { + "value": "1234567890abcd", + "type": "string", + "required": false + }, + "subscriber_identifier": { + "value": "example@example.com", + "type": "string", + "required": false + }, + "bypass_merge_field_check": { + "value": "true", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email_address\":\"example@example.com\",\"status\":\"subscribed\",\"merge_fields\":{\"FNAME\":\"John\",\"LNAME\":\"Doe\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddProductImage", + "qualifiedName": "MailchimpMarketingApi.AddProductImage", + "fullyQualifiedName": "MailchimpMarketingApi.AddProductImage@1.0.0", + "description": "Add a new image to a specific product.\n\nThis tool is used to add a new image to an existing product in a store's e-commerce catalog. It should be called when you need to update the product's visual information by uploading an additional image.", + "parameters": [ + { + "name": "product_id", + "type": "string", + "required": true, + "description": "The unique identifier for the product in the store. Required to specify which product the image will be added to.", + "enum": null, + "inferrable": true + }, + { + "name": "product_image_id", + "type": "string", + "required": true, + "description": "A unique identifier for the product image to be added.", + "enum": null, + "inferrable": true + }, + { + "name": "product_image_url", + "type": "string", + "required": true, + "description": "The URL of the image to be added to the product.", + "enum": null, + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": true, + "description": "The unique identifier for the store where the product is hosted. Required to specify which store's catalog you are updating.", + "enum": null, + "inferrable": true + }, + { + "name": "product_variant_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of product variant IDs using the image.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postEcommerceStoresIdProductsIdImages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddProductImage", + "parameters": { + "product_id": { + "value": "12345", + "type": "string", + "required": true + }, + "product_image_id": { + "value": "img_67890", + "type": "string", + "required": true + }, + "product_image_url": { + "value": "https://example.com/images/product12345.jpg", + "type": "string", + "required": true + }, + "store_id": { + "value": "store_abcde", + "type": "string", + "required": true + }, + "product_variant_ids": { + "value": ["variant_1", "variant_2"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddProductToStore", + "qualifiedName": "MailchimpMarketingApi.AddProductToStore", + "fullyQualifiedName": "MailchimpMarketingApi.AddProductToStore@1.0.0", + "description": "Add a new product to a Mailchimp store.\n\n Use this tool to add a new product to a specific store in Mailchimp. This is useful for updating store inventories or launching new products.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": false, + "description": "The unique identifier of the store where the product will be added. This is required to specify the target store. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postEcommerceStoresIdProducts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddProductToStore", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_id": { + "value": "abc123store", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Sample Product\",\"price\":19.99,\"description\":\"A great product for testing\",\"status\":\"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddProductVariantMailchimp", + "qualifiedName": "MailchimpMarketingApi.AddProductVariantMailchimp", + "fullyQualifiedName": "MailchimpMarketingApi.AddProductVariantMailchimp@1.0.0", + "description": "Add a new variant to an existing product in Mailchimp.\n\n This tool is used to add a new variant to an existing product within a specific store on Mailchimp. Use this when you need to add, update, or expand product options such as sizes or colors within your Mailchimp store.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the store where the product variant will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "product_id", + "type": "string", + "required": false, + "description": "The ID for the product within a store to which a new variant will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postEcommerceStoresIdProductsIdVariants'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddProductVariantMailchimp", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_12345", + "type": "string", + "required": false + }, + "product_id": { + "value": "product_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Large Red T-Shirt\", \"price\": 19.99, \"options\": [{\"name\": \"Size\", \"value\": \"L\"}, {\"name\": \"Color\", \"value\": \"Red\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddPromoCodeToStore", + "qualifiedName": "MailchimpMarketingApi.AddPromoCodeToStore", + "fullyQualifiedName": "MailchimpMarketingApi.AddPromoCodeToStore@1.0.0", + "description": "Add a new promo code to an ecommerce store.\n\nUse this tool to add a new promotional code to a specific store in the ecommerce platform. This is useful for managing discounts and promotions within the store.", + "parameters": [ + { + "name": "promo_code", + "type": "string", + "required": true, + "description": "The discount code for the promotion. It must be a UTF-8 string, with a maximum length of 50 characters.", + "enum": null, + "inferrable": true + }, + { + "name": "promo_code_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the promo code. Must be UTF-8, max length 50.", + "enum": null, + "inferrable": true + }, + { + "name": "promo_rule_identifier", + "type": "string", + "required": true, + "description": "The ID for the promotional rule associated with the store.", + "enum": null, + "inferrable": true + }, + { + "name": "promotion_redemption_url", + "type": "string", + "required": true, + "description": "The URL used in the promotion campaign. Must be UTF-8, max length 2000 characters.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the ecommerce store where the promo code will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "is_promo_code_enabled", + "type": "boolean", + "required": false, + "description": "Specifies if the promo code is enabled. Use true to enable, false to disable.", + "enum": null, + "inferrable": true + }, + { + "name": "promo_code_usage_count", + "type": "integer", + "required": false, + "description": "Number of times the promo code has been used. This integer value helps track the utilization of the promo code.", + "enum": null, + "inferrable": true + }, + { + "name": "promotion_creation_datetime", + "type": "string", + "required": false, + "description": "The date and time the promotion was created, in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "promotion_updated_datetime", + "type": "string", + "required": false, + "description": "The date and time the promotion was last updated, in ISO 8601 format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postEcommerceStoresIdPromocodes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddPromoCodeToStore", + "parameters": { + "promo_code": { + "value": "SAVE20", + "type": "string", + "required": true + }, + "promo_code_identifier": { + "value": "promo_2023_001", + "type": "string", + "required": true + }, + "promo_rule_identifier": { + "value": "rule_123", + "type": "string", + "required": true + }, + "promotion_redemption_url": { + "value": "https://example.com/redeem/SAVE20", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_456", + "type": "string", + "required": true + }, + "is_promo_code_enabled": { + "value": true, + "type": "boolean", + "required": false + }, + "promo_code_usage_count": { + "value": 150, + "type": "integer", + "required": false + }, + "promotion_creation_datetime": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "promotion_updated_datetime": { + "value": "2023-10-10T12:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddStorePromoRule", + "qualifiedName": "MailchimpMarketingApi.AddStorePromoRule", + "fullyQualifiedName": "MailchimpMarketingApi.AddStorePromoRule@1.0.0", + "description": "Add a new promo rule to an e-commerce store on Mailchimp.\n\n This tool is used to add a new promotional rule to a specific e-commerce store within Mailchimp. It is ideal for automating the management of store promotions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": false, + "description": "The unique identifier for the store where the promo rule will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postEcommerceStoresIdPromorules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddStorePromoRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"promo_type\":\"percentage\",\"discount_value\":20,\"start_date\":\"2023-10-01\",\"end_date\":\"2023-10-31\",\"description\":\"October Discount Promotion\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddSubscriberToWorkflow", + "qualifiedName": "MailchimpMarketingApi.AddSubscriberToWorkflow", + "fullyQualifiedName": "MailchimpMarketingApi.AddSubscriberToWorkflow@1.0.0", + "description": "Add a subscriber to an automation workflow.\n\nUse this tool to manually add a subscriber to a Mailchimp workflow, bypassing default triggers, or to initiate a series of automated emails.", + "parameters": [ + { + "name": "automation_workflow_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Automation workflow to which the subscriber will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_email_address", + "type": "string", + "required": true, + "description": "The email address of the subscriber to add to the automation workflow.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_email_id", + "type": "string", + "required": true, + "description": "The unique ID for the Automation workflow email. Required to identify the specific email in the workflow.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postAutomationsIdEmailsIdQueue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddSubscriberToWorkflow", + "parameters": { + "automation_workflow_id": { + "value": "abc123456789", + "type": "string", + "required": true + }, + "subscriber_email_address": { + "value": "example@example.com", + "type": "string", + "required": true + }, + "workflow_email_id": { + "value": "email123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddVerifiedDomain", + "qualifiedName": "MailchimpMarketingApi.AddVerifiedDomain", + "fullyQualifiedName": "MailchimpMarketingApi.AddVerifiedDomain@1.0.0", + "description": "Add a verified domain to your Mailchimp account.\n\nUse this tool to add a verified domain to your Mailchimp account. This is useful for managing communication and ensuring trust with your recipients.", + "parameters": [ + { + "name": "verification_email_address", + "type": "string", + "required": true, + "description": "The email address at the domain to verify, which will receive a two-factor challenge for verification.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createVerifiedDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.AddVerifiedDomain", + "parameters": { + "verification_email_address": { + "value": "verify@mydomain.com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveContactMailchimp", + "qualifiedName": "MailchimpMarketingApi.ArchiveContactMailchimp", + "fullyQualifiedName": "MailchimpMarketingApi.ArchiveContactMailchimp@1.0.0", + "description": "Archives a contact in a Mailchimp audience.\n\nThis tool archives a specific contact within a given audience in Mailchimp. Use this when you need to remove a contact from active participation without deleting them permanently.", + "parameters": [ + { + "name": "audience_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp audience where the contact will be archived.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "The unique identifier for the contact to archive within the audience in Mailchimp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postAudiencesContactsActionsArchive'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.ArchiveContactMailchimp", + "parameters": { + "audience_unique_id": { + "value": "abc123def456ghi789", + "type": "string", + "required": true + }, + "contact_id": { + "value": "contact_00123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveListMember", + "qualifiedName": "MailchimpMarketingApi.ArchiveListMember", + "fullyQualifiedName": "MailchimpMarketingApi.ArchiveListMember@1.0.0", + "description": "Archives a member from a Mailchimp list.\n\nUse this tool to archive a member from a specific Mailchimp list when they should no longer receive communications. Note that this is not a permanent deletion.", + "parameters": [ + { + "name": "mailing_list_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific Mailchimp list to archive a member from.", + "enum": null, + "inferrable": true + }, + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The MD5 hash of the lowercase version of the list member's email address, or use the email address/contact_id directly.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteListsIdMembersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.ArchiveListMember", + "parameters": { + "mailing_list_id": { + "value": "1234567890abcdef1234567890", + "type": "string", + "required": true + }, + "member_identifier": { + "value": "d41d8cd98f00b204e9800998ecf8427e", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ArchiveMailchimpAutomation", + "qualifiedName": "MailchimpMarketingApi.ArchiveMailchimpAutomation", + "fullyQualifiedName": "MailchimpMarketingApi.ArchiveMailchimpAutomation@1.0.0", + "description": "Permanently archive a Mailchimp automation.\n\nUse this tool to permanently archive a Mailchimp automation workflow. Once archived, the automation cannot be restarted, but the report data will be kept. You can replicate the archived automation if needed.", + "parameters": [ + { + "name": "automation_workflow_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp automation workflow to archive. This ID is necessary to specify which automation you want to permanently end.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'archiveAutomations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.ArchiveMailchimpAutomation", + "parameters": { + "automation_workflow_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelBatchRequest", + "qualifiedName": "MailchimpMarketingApi.CancelBatchRequest", + "fullyQualifiedName": "MailchimpMarketingApi.CancelBatchRequest@1.0.0", + "description": "Cancels a running batch request to stop its execution.\n\nThis tool stops a batch request from running in Mailchimp Marketing. It should be called to cancel a long-running batch request. After calling this, results of any completed operations in the batch will not be available.", + "parameters": [ + { + "name": "batch_request_id", + "type": "string", + "required": true, + "description": "The unique identifier for the batch request you want to cancel.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteBatchesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CancelBatchRequest", + "parameters": { + "batch_request_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelCampaignSend", + "qualifiedName": "MailchimpMarketingApi.CancelCampaignSend", + "fullyQualifiedName": "MailchimpMarketingApi.CancelCampaignSend@1.0.0", + "description": "Cancel a sent campaign before all recipients receive it.\n\nUse to cancel a Regular or Plain-Text Campaign that has been sent, but not yet delivered to all recipients. Requires Mailchimp Pro.", + "parameters": [ + { + "name": "campaign_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp campaign to be canceled. Used to specify which campaign's delivery is to be stopped.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postCampaignsIdActionsCancelSend'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CancelCampaignSend", + "parameters": { + "campaign_identifier": { + "value": "abc12345efg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckMailchimpApiHealth", + "qualifiedName": "MailchimpMarketingApi.CheckMailchimpApiHealth", + "fullyQualifiedName": "MailchimpMarketingApi.CheckMailchimpApiHealth@1.0.0", + "description": "Checks the health status of the Mailchimp API.\n\nUse this tool to verify the operational status of the Mailchimp Marketing API and ensure it's running without issues. This check does not return account-specific data.", + "parameters": [], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPing'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CheckMailchimpApiHealth", + "parameters": {}, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ConfigureWebhookOnBatchComplete", + "qualifiedName": "MailchimpMarketingApi.ConfigureWebhookOnBatchComplete", + "fullyQualifiedName": "MailchimpMarketingApi.ConfigureWebhookOnBatchComplete@1.0.0", + "description": "Configure a webhook for batch processing completion alerts.\n\nThis tool allows you to configure a webhook that triggers when any batch request completes processing in Mailchimp. Useful for automating follow-up actions based on batch completion events.", + "parameters": [ + { + "name": "webhook_url", + "type": "string", + "required": true, + "description": "The URL where the webhook payload will be sent upon batch completion. It must be a valid and accessible URL.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_enabled", + "type": "boolean", + "required": false, + "description": "Set to True to enable the webhook to receive requests when batch processing completes.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postBatchWebhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.ConfigureWebhookOnBatchComplete", + "parameters": { + "webhook_url": { + "value": "https://example.com/webhook/batch-complete", + "type": "string", + "required": true + }, + "webhook_enabled": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAudienceContact", + "qualifiedName": "MailchimpMarketingApi.CreateAudienceContact", + "fullyQualifiedName": "MailchimpMarketingApi.CreateAudienceContact@1.0.0", + "description": "Create a new omni-channel contact for an audience.\n\n Use this tool to add a new contact to a Mailchimp audience for omni-channel marketing.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "audience_unique_id", + "type": "string", + "required": false, + "description": "The unique identifier for the audience in Mailchimp where the contact will be added. This ID is necessary to specify the target audience for the new contact. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "merge_field_validation_mode", + "type": "string", + "required": false, + "description": "Choose 'ignore_required_checks' to skip validation on required merge fields, or 'strict' to enforce validation. Defaults to 'strict' if not set. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "data_processing_mode", + "type": "string", + "required": false, + "description": "Selects the data processing mode: 'historical' mode skips automations and webhooks, 'live' mode triggers them. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createAudienceContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateAudienceContact", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "audience_unique_id": { + "value": "12345abcde", + "type": "string", + "required": false + }, + "merge_field_validation_mode": { + "value": "strict", + "type": "string", + "required": false + }, + "data_processing_mode": { + "value": "live", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email_address\":\"example@example.com\", \"status\":\"subscribed\", \"merge_fields\":{\"FNAME\":\"John\", \"LNAME\":\"Doe\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCampaignFolder", + "qualifiedName": "MailchimpMarketingApi.CreateCampaignFolder", + "fullyQualifiedName": "MailchimpMarketingApi.CreateCampaignFolder@1.0.0", + "description": "Create a new campaign folder in Mailchimp.\n\nThis tool is used to create a new campaign folder within Mailchimp marketing. Call this tool when you need to organize campaigns into folders for better management.", + "parameters": [ + { + "name": "folder_name", + "type": "string", + "required": true, + "description": "The name to assign to the new campaign folder. It should be a descriptive string that helps identify the folder's contents.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postCampaignFolders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateCampaignFolder", + "parameters": { + "folder_name": { + "value": "Fall 2023 Promotions", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateInterestCategory", + "qualifiedName": "MailchimpMarketingApi.CreateInterestCategory", + "fullyQualifiedName": "MailchimpMarketingApi.CreateInterestCategory@1.0.0", + "description": "Create a new interest category in a Mailchimp list.\n\nThis tool is used to create a new interest category for a specified Mailchimp list. It is useful when you want to categorize subscriber interests within a list.", + "parameters": [ + { + "name": "category_description", + "type": "string", + "required": true, + "description": "Text description of the interest category. Appears on signup forms, often phrased as a question.", + "enum": null, + "inferrable": true + }, + { + "name": "category_display_type", + "type": "string", + "required": true, + "description": "Determines how the interest category appears on signup forms. Options include: 'checkboxes', 'dropdown', 'radio', or 'hidden'.", + "enum": null, + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID identifying the Mailchimp list where the interest category will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "category_display_order", + "type": "integer", + "required": false, + "description": "The numerical order for displaying categories. Lower numbers appear first.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsIdInterestCategories'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateInterestCategory", + "parameters": { + "category_description": { + "value": "What topics are you interested in?", + "type": "string", + "required": true + }, + "category_display_type": { + "value": "checkboxes", + "type": "string", + "required": true + }, + "list_unique_id": { + "value": "abc123def456ghi789", + "type": "string", + "required": true + }, + "category_display_order": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateInterestGroup", + "qualifiedName": "MailchimpMarketingApi.CreateInterestGroup", + "fullyQualifiedName": "MailchimpMarketingApi.CreateInterestGroup@1.0.0", + "description": "Create a new interest group for a specific category.\n\nThis tool is used to create a new interest or 'group name' within a specific interest category for a Mailchimp list. Use it when you need to organize and segment your list subscribers into specific interest groups.", + "parameters": [ + { + "name": "interest_category_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the interest category to which the new group belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "interest_group_name", + "type": "string", + "required": true, + "description": "The name of the interest group, shown publicly on subscription forms.", + "enum": null, + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list to which the interest group will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "interest_display_order", + "type": "integer", + "required": false, + "description": "The order in which this interest is displayed relative to others. Use an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsIdInterestCategoriesIdInterests'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateInterestGroup", + "parameters": { + "interest_category_unique_id": { + "value": "abc1234", + "type": "string", + "required": true + }, + "interest_group_name": { + "value": "Weekly Newsletters", + "type": "string", + "required": true + }, + "list_unique_id": { + "value": "list5678", + "type": "string", + "required": true + }, + "interest_display_order": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMailchimpAccountExport", + "qualifiedName": "MailchimpMarketingApi.CreateMailchimpAccountExport", + "fullyQualifiedName": "MailchimpMarketingApi.CreateMailchimpAccountExport@1.0.0", + "description": "Create a new account export in your Mailchimp account.\n\nThis tool initiates a new export of account data in your Mailchimp account. Use this when you need to generate and download account information from Mailchimp.", + "parameters": [ + { + "name": "include_export_stages", + "type": "array", + "innerType": "string", + "required": true, + "description": "Array of export stages to include in the account export.", + "enum": null, + "inferrable": true + }, + { + "name": "export_starting_date", + "type": "string", + "required": false, + "description": "An ISO 8601 date to limit export to records created after this time. Excludes audiences.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postAccountExport'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateMailchimpAccountExport", + "parameters": { + "include_export_stages": { + "value": ["list_members", "campaigns", "audience"], + "type": "array", + "required": true + }, + "export_starting_date": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMailchimpAutomation", + "qualifiedName": "MailchimpMarketingApi.CreateMailchimpAutomation", + "fullyQualifiedName": "MailchimpMarketingApi.CreateMailchimpAutomation@1.0.0", + "description": "Create a new classic automation in Mailchimp.\n\nThis tool initiates the creation of a new classic automation within your Mailchimp account, facilitating automated email campaigns.", + "parameters": [ + { + "name": "automation_workflow_type", + "type": "string", + "required": true, + "description": "Specify the type of Automation workflow. Currently, only 'abandonedCart' is supported.", + "enum": null, + "inferrable": true + }, + { + "name": "automation_from_name", + "type": "string", + "required": false, + "description": "The 'from' name to display in the new automation emails. It should be an easily recognizable name for recipients.", + "enum": null, + "inferrable": true + }, + { + "name": "list_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Mailchimp List to target with the automation.", + "enum": null, + "inferrable": true + }, + { + "name": "reply_to_email_address", + "type": "string", + "required": false, + "description": "The reply-to email address for the automation in Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": false, + "description": "The unique identifier for the store in Mailchimp. Required to target specific automation to a store.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postAutomations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateMailchimpAutomation", + "parameters": { + "automation_workflow_type": { + "value": "abandonedCart", + "type": "string", + "required": true + }, + "automation_from_name": { + "value": "Your Store Team", + "type": "string", + "required": false + }, + "list_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "reply_to_email_address": { + "value": "support@yourstore.com", + "type": "string", + "required": false + }, + "store_id": { + "value": "store_001", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMailchimpCampaign", + "qualifiedName": "MailchimpMarketingApi.CreateMailchimpCampaign", + "fullyQualifiedName": "MailchimpMarketingApi.CreateMailchimpCampaign@1.0.0", + "description": "Create a new Mailchimp campaign quickly.\n\nThis tool is used to initiate a new email campaign via Mailchimp. It should be called when a user wants to create and configure a marketing email or advertisement using Mailchimp's services.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postCampaigns'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateMailchimpCampaign", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"campaign\":{\"type\":\"regular\",\"settings\":{\"subject_line\":\"New Campaign\",\"title\":\"Fall Sale\",\"from_name\":\"John Doe\",\"reply_to\":\"john@example.com\"}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMailchimpConnectedSite", + "qualifiedName": "MailchimpMarketingApi.CreateMailchimpConnectedSite", + "fullyQualifiedName": "MailchimpMarketingApi.CreateMailchimpConnectedSite@1.0.0", + "description": "Create a new Mailchimp connected site.\n\nThis tool is used to create a new connected site in Mailchimp. It should be called whenever you need to integrate a new site with Mailchimp's marketing tools.", + "parameters": [ + { + "name": "connected_site_domain", + "type": "string", + "required": true, + "description": "The domain of the site you want to connect to Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "site_unique_identifier", + "type": "string", + "required": true, + "description": "A unique identifier string for the site. This is used to distinguish different connected sites in Mailchimp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postConnectedSites'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateMailchimpConnectedSite", + "parameters": { + "connected_site_domain": { + "value": "example.com", + "type": "string", + "required": true + }, + "site_unique_identifier": { + "value": "unique-site-identifier-123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMailchimpLandingPage", + "qualifiedName": "MailchimpMarketingApi.CreateMailchimpLandingPage", + "fullyQualifiedName": "MailchimpMarketingApi.CreateMailchimpLandingPage@1.0.0", + "description": "Create an unpublished Mailchimp landing page.\n\nThis tool is used to create a new, unpublished landing page in Mailchimp without any content. It should be called when there's a need to set up a basic landing page framework in Mailchimp.", + "parameters": [ + { + "name": "enable_restricted_data_processing", + "type": "boolean", + "required": false, + "description": "Enable restricted data processing under CCPA for tracking. True ensures compliance with CCPA.", + "enum": null, + "inferrable": true + }, + { + "name": "landing_page_description", + "type": "string", + "required": false, + "description": "Provide a description for the Mailchimp landing page.", + "enum": null, + "inferrable": true + }, + { + "name": "landing_page_name", + "type": "string", + "required": false, + "description": "The name of the landing page to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "landing_page_template_id", + "type": "integer", + "required": false, + "description": "The integer ID representing the template of the Mailchimp landing page.", + "enum": null, + "inferrable": true + }, + { + "name": "landing_page_template_type", + "type": "string", + "required": false, + "description": "Specifies the template type for the landing page. Options are 'signup' or 'product'.", + "enum": null, + "inferrable": true + }, + { + "name": "landing_page_title", + "type": "string", + "required": false, + "description": "The title that appears in the browser's title bar for the landing page.", + "enum": null, + "inferrable": true + }, + { + "name": "mailchimp_list_id", + "type": "string", + "required": false, + "description": "The ID of the Mailchimp list associated with the landing page.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the store linked to this landing page.", + "enum": null, + "inferrable": true + }, + { + "name": "track_with_mailchimp", + "type": "boolean", + "required": false, + "description": "Set to true to use cookies for tracking unique visitors and calculating conversion rates.", + "enum": null, + "inferrable": true + }, + { + "name": "use_account_default_list", + "type": "string", + "required": false, + "description": "Set to 'true' to use the account's default list instead of specifying a list_id for the landing page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postAllLandingPages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateMailchimpLandingPage", + "parameters": { + "enable_restricted_data_processing": { + "value": false, + "type": "boolean", + "required": false + }, + "landing_page_description": { + "value": "This is a new landing page for capturing leads.", + "type": "string", + "required": false + }, + "landing_page_name": { + "value": "Lead Capture Page", + "type": "string", + "required": false + }, + "landing_page_template_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "landing_page_template_type": { + "value": "signup", + "type": "string", + "required": false + }, + "landing_page_title": { + "value": "Welcome to Our Service", + "type": "string", + "required": false + }, + "mailchimp_list_id": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "store_identifier": { + "value": "store-001", + "type": "string", + "required": false + }, + "track_with_mailchimp": { + "value": true, + "type": "boolean", + "required": false + }, + "use_account_default_list": { + "value": "false", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMailchimpList", + "qualifiedName": "MailchimpMarketingApi.CreateMailchimpList", + "fullyQualifiedName": "MailchimpMarketingApi.CreateMailchimpList@1.0.0", + "description": "Create a new list in your Mailchimp account.\n\n\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postLists'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateMailchimpList", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"New List\", \"contact\": {\"company\": \"My Company\", \"address\": {\"addr1\": \"123 Example St\", \"city\": \"Example City\", \"state\": \"EX\", \"zip\": \"12345\", \"country\": \"US\"}}, \"permission_reminder\": \"You are receiving this email because you signed up on our website.\", \"campaign_defaults\": {\"from_name\": \"My Company\", \"from_email\": \"info@mycompany.com\", \"subject\": \"Welcome!\", \"language\": \"en\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMailchimpSegment", + "qualifiedName": "MailchimpMarketingApi.CreateMailchimpSegment", + "fullyQualifiedName": "MailchimpMarketingApi.CreateMailchimpSegment@1.0.0", + "description": "Create a new segment in a specific Mailchimp list.\n\nThis tool is used to create a new segment within a specified Mailchimp list. It should be called when you need to categorize or target specific subsets of your mailing list for marketing purposes.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp list where the new segment will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "segment_name", + "type": "string", + "required": true, + "description": "The name of the segment to be created in Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "emails_for_static_segment", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of emails for creating a static segment. An empty array means no subscribers. Cannot be used with 'options'.", + "enum": null, + "inferrable": true + }, + { + "name": "segment_match_conditions", + "type": "array", + "innerType": "json", + "required": false, + "description": "Array of conditions to define how the segment matches subscribers. Refer to the Mailchimp documentation for various condition types.", + "enum": null, + "inferrable": true + }, + { + "name": "segment_match_type", + "type": "string", + "required": false, + "description": "Specifies the match type for the segment conditions. Use 'any' to match any condition and 'all' to match all conditions.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsIdSegments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateMailchimpSegment", + "parameters": { + "list_unique_id": { + "value": "a1b2c3d4e5", + "type": "string", + "required": true + }, + "segment_name": { + "value": "Winter Sale Prospects", + "type": "string", + "required": true + }, + "emails_for_static_segment": { + "value": ["user1@example.com", "user2@example.com"], + "type": "array", + "required": false + }, + "segment_match_conditions": { + "value": [ + { + "field": "LAST_OPEN", + "operator": "gt", + "value": "2023-01-01" + }, + { + "field": "CITY", + "operator": "eq", + "value": "New York" + } + ], + "type": "array", + "required": false + }, + "segment_match_type": { + "value": "any", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMailchimpTemplate", + "qualifiedName": "MailchimpMarketingApi.CreateMailchimpTemplate", + "fullyQualifiedName": "MailchimpMarketingApi.CreateMailchimpTemplate@1.0.0", + "description": "Create a new Classic template in Mailchimp.\n\nThis tool is used to create a new Classic template in a Mailchimp account. It should be called when a user wants to add a new email template for marketing purposes.", + "parameters": [ + { + "name": "template_html_content", + "type": "string", + "required": true, + "description": "The raw HTML content for the template, supporting Mailchimp Template Language.", + "enum": null, + "inferrable": true + }, + { + "name": "template_name", + "type": "string", + "required": true, + "description": "The name assigned to the new template. It should be descriptive for easy identification.", + "enum": null, + "inferrable": true + }, + { + "name": "template_folder_id", + "type": "string", + "required": false, + "description": "The ID of the folder where the template will be stored. Ensure the folder exists in the Mailchimp account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postTemplates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateMailchimpTemplate", + "parameters": { + "template_html_content": { + "value": "

Welcome to Our Newsletter!

Thank you for subscribing!

", + "type": "string", + "required": true + }, + "template_name": { + "value": "Monthly Newsletter - October 2023", + "type": "string", + "required": true + }, + "template_folder_id": { + "value": "123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMailchimpWebhook", + "qualifiedName": "MailchimpMarketingApi.CreateMailchimpWebhook", + "fullyQualifiedName": "MailchimpMarketingApi.CreateMailchimpWebhook@1.0.0", + "description": "Create a new webhook for a specific Mailchimp list.\n\n Use this tool to set up a new webhook for a designated list in Mailchimp, allowing automated event-driven notifications.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "mailchimp_list_id", + "type": "string", + "required": false, + "description": "The unique ID for the Mailchimp list for which the webhook will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsIdWebhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateMailchimpWebhook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "mailchimp_list_id": { + "value": "abc1234567", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"url\":\"https://example.com/webhook\",\"events\":[\"subscribe\",\"unsubscribe\"],\"source\":\"api\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateNewFileManagerFolder", + "qualifiedName": "MailchimpMarketingApi.CreateNewFileManagerFolder", + "fullyQualifiedName": "MailchimpMarketingApi.CreateNewFileManagerFolder@1.0.0", + "description": "Create a new folder in Mailchimp's File Manager.\n\nUse this tool to create a new folder in Mailchimp's File Manager. This can be helpful for organizing files within your Mailchimp account.", + "parameters": [ + { + "name": "folder_name", + "type": "string", + "required": true, + "description": "The desired name for the new folder in File Manager.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postFileManagerFolders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateNewFileManagerFolder", + "parameters": { + "folder_name": { + "value": "Marketing Materials", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSurveyCampaignEmail", + "qualifiedName": "MailchimpMarketingApi.CreateSurveyCampaignEmail", + "fullyQualifiedName": "MailchimpMarketingApi.CreateSurveyCampaignEmail@1.0.0", + "description": "Generate a campaign email linking to a survey.\n\nUse this tool to create an email campaign that includes a link to a given survey, using specified List ID and Survey ID.", + "parameters": [ + { + "name": "list_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the email list.", + "enum": null, + "inferrable": true + }, + { + "name": "survey_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the survey to link in the campaign email.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsIdSurveysIdActionsCreateEmail'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateSurveyCampaignEmail", + "parameters": { + "list_identifier": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "survey_identifier": { + "value": "survey_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTemplateFolder", + "qualifiedName": "MailchimpMarketingApi.CreateTemplateFolder", + "fullyQualifiedName": "MailchimpMarketingApi.CreateTemplateFolder@1.0.0", + "description": "Create a new template folder in Mailchimp.\n\nUse this tool to add a new template folder in Mailchimp. This can help organize your templates into specific categories for better management.", + "parameters": [ + { + "name": "folder_name", + "type": "string", + "required": true, + "description": "The desired name for the new template folder in Mailchimp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postTemplateFolders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CreateTemplateFolder", + "parameters": { + "folder_name": { + "value": "Spring Campaigns", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CustomizeListSignupForm", + "qualifiedName": "MailchimpMarketingApi.CustomizeListSignupForm", + "fullyQualifiedName": "MailchimpMarketingApi.CustomizeListSignupForm@1.0.0", + "description": "Customize a list's default signup form in Mailchimp.\n\n Use this tool to modify the default signup form for a specific list in Mailchimp's marketing platform. Ideal for tailoring signup forms to better match branding or collect specific user information.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": false, + "description": "The unique ID for the Mailchimp list to customize the signup form. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsIdSignupForms'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.CustomizeListSignupForm", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "list_unique_id": { + "value": "abc12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Subscribe to our newsletter\",\"fields\":[{\"type\":\"text\",\"label\":\"Email Address\",\"required\":true},{\"type\":\"text\",\"label\":\"First Name\",\"required\":false},{\"type\":\"text\",\"label\":\"Last Name\",\"required\":false}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCampaignFolder", + "qualifiedName": "MailchimpMarketingApi.DeleteCampaignFolder", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteCampaignFolder@1.0.0", + "description": "Delete a specific campaign folder in Mailchimp.\n\nDeletes a specified campaign folder in Mailchimp and marks all campaigns in it as 'unfiled'. This tool should be called when you need to remove a campaign folder and manage its contents accordingly.", + "parameters": [ + { + "name": "campaign_folder_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp campaign folder to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteCampaignFoldersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteCampaignFolder", + "parameters": { + "campaign_folder_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCart", + "qualifiedName": "MailchimpMarketingApi.DeleteCart", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteCart@1.0.0", + "description": "Deletes a specific cart from an ecommerce store.\n\nUse this tool to delete a cart from a specified store in the ecommerce system. It should be called when you need to remove a cart by providing a specific store and cart ID.", + "parameters": [ + { + "name": "cart_id", + "type": "string", + "required": true, + "description": "The ID for the cart to be deleted from the store.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the ecommerce store from which the cart will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEcommerceStoresIdCartsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteCart", + "parameters": { + "cart_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_abc_123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCartLineItem", + "qualifiedName": "MailchimpMarketingApi.DeleteCartLineItem", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteCartLineItem@1.0.0", + "description": "Delete a specific cart line item.\n\nUse this tool to delete a particular line item from a cart in an eCommerce store. Call this tool when you need to remove an item from a customer's shopping cart.", + "parameters": [ + { + "name": "cart_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the cart in the eCommerce store.", + "enum": null, + "inferrable": true + }, + { + "name": "line_item_id", + "type": "string", + "required": true, + "description": "ID for the line item in the cart to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store from which the cart line item will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEcommerceStoresIdCartsLinesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteCartLineItem", + "parameters": { + "cart_identifier": { + "value": "cart_12345", + "type": "string", + "required": true + }, + "line_item_id": { + "value": "item_67890", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteEcommerceProduct", + "qualifiedName": "MailchimpMarketingApi.DeleteEcommerceProduct", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteEcommerceProduct@1.0.0", + "description": "Delete a product from an eCommerce store.\n\nUse this tool to delete a specific product from a given eCommerce store in Mailchimp. It should be called when you want to remove a product based on its store and product ID.", + "parameters": [ + { + "name": "product_id", + "type": "string", + "required": true, + "description": "The unique identifier for the product to delete from a store.", + "enum": null, + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": true, + "description": "The unique identifier of the eCommerce store from which the product will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEcommerceStoresIdProductsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteEcommerceProduct", + "parameters": { + "product_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "store_id": { + "value": "67890fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteEcommerceStore", + "qualifiedName": "MailchimpMarketingApi.DeleteEcommerceStore", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteEcommerceStore@1.0.0", + "description": "Delete a store and its associated subresources.\n\nUse this tool to delete an ecommerce store from Mailchimp Marketing. This action will remove the store along with any related Customers, Orders, Products, and Carts. Invoke this when a store needs to be completely removed from the system.", + "parameters": [ + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEcommerceStoresId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteEcommerceStore", + "parameters": { + "store_identifier": { + "value": "abc123store", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteEmailTemplate", + "qualifiedName": "MailchimpMarketingApi.DeleteEmailTemplate", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteEmailTemplate@1.0.0", + "description": "Delete a specific email template in Mailchimp.", + "parameters": [ + { + "name": "template_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the email template to be deleted in Mailchimp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTemplatesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteEmailTemplate", + "parameters": { + "template_unique_id": { + "value": "abc123456def", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteFileManagerFile", + "qualifiedName": "MailchimpMarketingApi.DeleteFileManagerFile", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteFileManagerFile@1.0.0", + "description": "Remove a specific file from Mailchimp's File Manager.\n\nUse this tool to delete a specific file by its ID from Mailchimp's File Manager. It helps manage and organize files by removing unwanted or outdated ones.", + "parameters": [ + { + "name": "file_manager_file_id", + "type": "string", + "required": true, + "description": "The unique identifier for the file to be deleted from Mailchimp's File Manager.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteFileManagerFilesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteFileManagerFile", + "parameters": { + "file_manager_file_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteFileManagerFolder", + "qualifiedName": "MailchimpMarketingApi.DeleteFileManagerFolder", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteFileManagerFolder@1.0.0", + "description": "Delete a specific folder in the File Manager.\n\nUse this tool to delete a folder from Mailchimp's File Manager by specifying the folder ID.", + "parameters": [ + { + "name": "file_manager_folder_id", + "type": "string", + "required": true, + "description": "The unique identifier for the folder to be deleted in the File Manager.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteFileManagerFoldersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteFileManagerFolder", + "parameters": { + "file_manager_folder_id": { + "value": "abc123folder", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteInterestCategory", + "qualifiedName": "MailchimpMarketingApi.DeleteInterestCategory", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteInterestCategory@1.0.0", + "description": "Delete a specific interest category from a list.\n\nUse this tool to delete a particular interest category from a specified list in Mailchimp. This might be called when managing email list segments and you need to remove an unwanted audience category.", + "parameters": [ + { + "name": "interest_category_id", + "type": "string", + "required": true, + "description": "The unique ID of the interest category to be deleted from a list.", + "enum": null, + "inferrable": true + }, + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list from which you want to delete an interest category.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteListsIdInterestCategoriesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteInterestCategory", + "parameters": { + "interest_category_id": { + "value": "abc12345", + "type": "string", + "required": true + }, + "list_id": { + "value": "xyz67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteInterestFromCategory", + "qualifiedName": "MailchimpMarketingApi.DeleteInterestFromCategory", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteInterestFromCategory@1.0.0", + "description": "Delete an interest from a specific category.\n\nUse this tool to delete interests or group names within a specified category in Mailchimp. This is useful for managing interests in a mailing list.", + "parameters": [ + { + "name": "interest_category_id", + "type": "string", + "required": true, + "description": "The unique ID for the interest category to delete the interest from. This ID is essential to specify the correct category in Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "interest_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the specific interest or group name to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the list to be targeted for deleting an interest.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteListsIdInterestCategoriesIdInterestsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteInterestFromCategory", + "parameters": { + "interest_category_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "interest_identifier": { + "value": "news_updates", + "type": "string", + "required": true + }, + "list_unique_id": { + "value": "abcdef1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteLandingPage", + "qualifiedName": "MailchimpMarketingApi.DeleteLandingPage", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteLandingPage@1.0.0", + "description": "Delete a specified landing page.\n\nUse this tool to delete a landing page by providing its ID. Ideal for managing or updating landing pages by removing outdated or unnecessary ones.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The unique ID for the landing page to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteLandingPageId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteLandingPage", + "parameters": { + "landing_page_id": { + "value": "abc123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMailchimpCampaign", + "qualifiedName": "MailchimpMarketingApi.DeleteMailchimpCampaign", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteMailchimpCampaign@1.0.0", + "description": "Delete a specific Mailchimp campaign.\n\nUse this tool to remove a campaign from your Mailchimp account by specifying the campaign ID. Ideal for managing or cleaning up your Mailchimp campaigns when they are no longer needed.", + "parameters": [ + { + "name": "campaign_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp campaign to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteCampaignsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteMailchimpCampaign", + "parameters": { + "campaign_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMailchimpList", + "qualifiedName": "MailchimpMarketingApi.DeleteMailchimpList", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteMailchimpList@1.0.0", + "description": "Delete a list from your Mailchimp account.\n\nUse this tool to permanently delete a list from your Mailchimp account. Deleting a list removes its history, including subscriber activity and email addresses, unless previously exported and backed up.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteListsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteMailchimpList", + "parameters": { + "list_id": { + "value": "1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMailchimpWebhook", + "qualifiedName": "MailchimpMarketingApi.DeleteMailchimpWebhook", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteMailchimpWebhook@1.0.0", + "description": "Delete a specific webhook from a Mailchimp list.\n\nUse this tool to remove a webhook from a specified Mailchimp list by providing the list and webhook IDs.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list from which the webhook will be deleted. This ID identifies the list containing the target webhook.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The unique identifier for the webhook to be deleted from the specified Mailchimp list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteListsIdWebhooksId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteMailchimpWebhook", + "parameters": { + "list_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "webhook_id": { + "value": "xyz789ghi012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMemberDataPermanently", + "qualifiedName": "MailchimpMarketingApi.DeleteMemberDataPermanently", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteMemberDataPermanently@1.0.0", + "description": "Permanently delete a list member's data in Mailchimp.\n\nThis tool deletes all personally identifiable information related to a specific list member and removes them from the list, ensuring they cannot be re-imported.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID of the list from which the member will be deleted. This ID identifies the target list in Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "member_email_hash", + "type": "string", + "required": true, + "description": "MD5 hash of the lowercase version of the member's email address.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsIdMembersHashActionsDeletePermanent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteMemberDataPermanently", + "parameters": { + "list_unique_id": { + "value": "abc12345xyz", + "type": "string", + "required": true + }, + "member_email_hash": { + "value": "5d41402abc4b2a76b9719d911017c592", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMemberNote", + "qualifiedName": "MailchimpMarketingApi.DeleteMemberNote", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteMemberNote@1.0.0", + "description": "Delete a specific note for a list member.\n\nUse this tool to delete a specific note associated with a list member in Mailchimp. It should be called when there is a need to remove a note from a contact's record in a specific list.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the list in which the member's note is to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The MD5 hash of the member's email (in lowercase), the email itself, or contact_id for identifying list members.", + "enum": null, + "inferrable": true + }, + { + "name": "note_id", + "type": "string", + "required": true, + "description": "The ID for the specific note you want to delete for a list member.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteListsIdMembersIdNotesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteMemberNote", + "parameters": { + "list_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "member_identifier": { + "value": "4c6b64cf1d5cdb73e91857e1fae7a67d", + "type": "string", + "required": true + }, + "note_id": { + "value": "note456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMergeField", + "qualifiedName": "MailchimpMarketingApi.DeleteMergeField", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteMergeField@1.0.0", + "description": "Delete a specific merge field from a Mailchimp list.\n\nUse this tool to remove a specific merge field from a Mailchimp list. This action is irreversible and will delete the specified merge field associated with the given list.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list from which to delete the merge field.", + "enum": null, + "inferrable": true + }, + { + "name": "merge_field_id", + "type": "string", + "required": true, + "description": "The ID for the merge field to delete from the Mailchimp list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteListsIdMergeFieldsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteMergeField", + "parameters": { + "list_unique_id": { + "value": "abc12345", + "type": "string", + "required": true + }, + "merge_field_id": { + "value": "field98765", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteOrderInEcommerceStore", + "qualifiedName": "MailchimpMarketingApi.DeleteOrderInEcommerceStore", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteOrderInEcommerceStore@1.0.0", + "description": "Delete an order from an eCommerce store.\n\nUse this tool to delete a specific order from an eCommerce store in Mailchimp by providing the store ID and order ID.", + "parameters": [ + { + "name": "ecommerce_store_id", + "type": "string", + "required": true, + "description": "The unique identifier for the eCommerce store from which the order will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "order_id", + "type": "string", + "required": true, + "description": "The unique identifier for the order to delete within the store.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEcommerceStoresIdOrdersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteOrderInEcommerceStore", + "parameters": { + "ecommerce_store_id": { + "value": "store_123456", + "type": "string", + "required": true + }, + "order_id": { + "value": "order_789012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteOrderLineItem", + "qualifiedName": "MailchimpMarketingApi.DeleteOrderLineItem", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteOrderLineItem@1.0.0", + "description": "Delete a specific order line item.\n\nCall this tool to delete a specific line item from an order within an e-commerce store in Mailchimp. The tool should be used when a user needs to remove an item from an order completely.", + "parameters": [ + { + "name": "order_id", + "type": "string", + "required": true, + "description": "The unique identifier for the order within a store. This is required to delete a line item from the specified order.", + "enum": null, + "inferrable": true + }, + { + "name": "order_line_item_id", + "type": "string", + "required": true, + "description": "The unique identifier for the line item of an order to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": true, + "description": "Unique identifier for the store from which the order line item will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEcommerceStoresIdOrdersIdLinesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteOrderLineItem", + "parameters": { + "order_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "order_line_item_id": { + "value": "item_67890xyz", + "type": "string", + "required": true + }, + "store_id": { + "value": "store_98765qwert", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteProductImage", + "qualifiedName": "MailchimpMarketingApi.DeleteProductImage", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteProductImage@1.0.0", + "description": "Delete an image from a product in an e-commerce store.\n\nThis tool deletes a specified image from a product within an e-commerce store, identified by store, product, and image IDs. It should be called when a product image needs to be removed from a store's inventory.", + "parameters": [ + { + "name": "product_id", + "type": "string", + "required": true, + "description": "The unique ID for the product in the store from which the image will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "product_image_id", + "type": "string", + "required": true, + "description": "The unique identifier for the product image to be deleted from the store's inventory.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the e-commerce store.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEcommerceStoresIdProductsIdImagesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteProductImage", + "parameters": { + "product_id": { + "value": "12345", + "type": "string", + "required": true + }, + "product_image_id": { + "value": "img67890", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "storeXYZ", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteProductVariant", + "qualifiedName": "MailchimpMarketingApi.DeleteProductVariant", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteProductVariant@1.0.0", + "description": "Delete a product variant from an ecommerce store.\n\nUse this tool to delete a specific product variant in an ecommerce store on Mailchimp. Ideal for managing product inventories by removing obsolete or discontinued variants.", + "parameters": [ + { + "name": "product_id", + "type": "string", + "required": true, + "description": "The unique identifier for the product within a store to which the variant belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "product_variant_id", + "type": "string", + "required": true, + "description": "The identifier for the product variant to be deleted from the store.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store from which the product variant will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEcommerceStoresIdProductsIdVariantsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteProductVariant", + "parameters": { + "product_id": { + "value": "12345", + "type": "string", + "required": true + }, + "product_variant_id": { + "value": "abcde12345", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeletePromoRuleFromStore", + "qualifiedName": "MailchimpMarketingApi.DeletePromoRuleFromStore", + "fullyQualifiedName": "MailchimpMarketingApi.DeletePromoRuleFromStore@1.0.0", + "description": "Delete a promo rule from a specified ecommerce store.\n\nUse this tool to remove a promotional rule from an ecommerce store on Mailchimp. This action is irreversible and will delete the specified promo rule from the store identified by the store ID.", + "parameters": [ + { + "name": "promo_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the promo rule to be deleted from the store.", + "enum": null, + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": true, + "description": "The unique identifier for the ecommerce store from which the promo rule will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEcommerceStoresIdPromorulesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeletePromoRuleFromStore", + "parameters": { + "promo_rule_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "store_id": { + "value": "store456def", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteSpecificSegment", + "qualifiedName": "MailchimpMarketingApi.DeleteSpecificSegment", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteSpecificSegment@1.0.0", + "description": "Delete a specific segment from a Mailchimp list.\n\nUse this tool to delete a specific segment within a Mailchimp list by providing the list and segment IDs. This is useful for managing and organizing your email marketing lists.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list to target for segment deletion.", + "enum": null, + "inferrable": true + }, + { + "name": "segment_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the segment to be deleted. It must match the segment ID in Mailchimp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteListsIdSegmentsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteSpecificSegment", + "parameters": { + "list_unique_id": { + "value": "12345abcde67890fghij", + "type": "string", + "required": true + }, + "segment_unique_id": { + "value": "seg9876543210abcd", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteStoreCustomer", + "qualifiedName": "MailchimpMarketingApi.DeleteStoreCustomer", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteStoreCustomer@1.0.0", + "description": "Delete a customer from an ecommerce store.\n\nCall this tool to remove a specific customer from a given ecommerce store. Use when you need to manage customer records by deleting them from a store's database.", + "parameters": [ + { + "name": "customer_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the customer to be deleted from the store. This ID is used to specify which customer's records should be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the ecommerce store from which the customer will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEcommerceStoresIdCustomersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteStoreCustomer", + "parameters": { + "customer_identifier": { + "value": "cust_123456", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteStorePromoCode", + "qualifiedName": "MailchimpMarketingApi.DeleteStorePromoCode", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteStorePromoCode@1.0.0", + "description": "Delete a promo code from an e-commerce store.\n\nUse this tool to delete a specific promo code from a designated e-commerce store in Mailchimp Marketing. It is useful when you want to manage or clean up promotional offers by removing existing promo codes.", + "parameters": [ + { + "name": "promo_code_id", + "type": "string", + "required": true, + "description": "The ID of the promo code to be deleted from the store.", + "enum": null, + "inferrable": true + }, + { + "name": "promo_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the promo rule of a store, used to specify which promo rule the code belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store from which the promo code will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEcommerceStoresIdPromocodesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteStorePromoCode", + "parameters": { + "promo_code_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "promo_rule_id": { + "value": "67890fghij", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store-xyz-2023", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTemplateFolder", + "qualifiedName": "MailchimpMarketingApi.DeleteTemplateFolder", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteTemplateFolder@1.0.0", + "description": "Delete a specific template folder in Mailchimp.\n\nUse this tool to delete a specific template folder in Mailchimp and mark all its templates as 'unfiled'. Call this tool when you need to reorganize or clean up template folders.", + "parameters": [ + { + "name": "template_folder_id", + "type": "string", + "required": true, + "description": "The unique ID for the template folder to be deleted. Use this to specify which folder should be removed and have its templates marked as 'unfiled'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTemplateFoldersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteTemplateFolder", + "parameters": { + "template_folder_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteVerifiedDomain", + "qualifiedName": "MailchimpMarketingApi.DeleteVerifiedDomain", + "fullyQualifiedName": "MailchimpMarketingApi.DeleteVerifiedDomain@1.0.0", + "description": "Deletes a verified domain from your Mailchimp account.\n\nUse this tool to remove a domain that has been previously verified in your Mailchimp account. Ideal for situations where a domain is no longer needed or has ownership changes.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The domain name to be deleted from your Mailchimp account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteVerifiedDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.DeleteVerifiedDomain", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchAbuseReportDetails", + "qualifiedName": "MailchimpMarketingApi.FetchAbuseReportDetails", + "fullyQualifiedName": "MailchimpMarketingApi.FetchAbuseReportDetails@1.0.0", + "description": "Fetch details about a specific abuse report for a mailing list.\n\nThis tool retrieves detailed information about an abuse report identified by a specific report ID associated with a mailing list via Mailchimp's marketing API. It should be called when specific details about an abuse report are needed.", + "parameters": [ + { + "name": "abuse_report_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific abuse report to fetch details for.", + "enum": null, + "inferrable": true + }, + { + "name": "mailing_list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the mailing list associated with the abuse report.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of records to return, between 1 and 1000. Default is 10.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdAbuseReportsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.FetchAbuseReportDetails", + "parameters": { + "abuse_report_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "mailing_list_unique_id": { + "value": "list123", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "comments,created_at", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "report_id,status,reporter_email", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "records_to_return": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchCampaignOpenLocations", + "qualifiedName": "MailchimpMarketingApi.FetchCampaignOpenLocations", + "fullyQualifiedName": "MailchimpMarketingApi.FetchCampaignOpenLocations@1.0.0", + "description": "Retrieve top open locations for a specific campaign.\n\nUse this tool to obtain the top geographical locations where a marketing campaign was opened. This can help in analyzing the reach and engagement of the campaign in different regions.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific marketing campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records", + "type": "string", + "required": false, + "description": "Specify the number of location records to return. Default is 10, maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "records_to_skip", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination purposes. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdLocations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.FetchCampaignOpenLocations", + "parameters": { + "campaign_unique_id": { + "value": "abc123-campaign-xyz", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "geo.city,geo.state", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "geo.country,geo.latitude,geo.longitude", + "type": "string", + "required": false + }, + "number_of_records": { + "value": "20", + "type": "string", + "required": false + }, + "records_to_skip": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchClickDetailsForCampaign", + "qualifiedName": "MailchimpMarketingApi.FetchClickDetailsForCampaign", + "fullyQualifiedName": "MailchimpMarketingApi.FetchClickDetailsForCampaign@1.0.0", + "description": "Retrieve details on members who clicked a specific campaign link.\n\nThis tool retrieves information about list members who clicked on a specific link in an email marketing campaign. It should be called when you need insights into which members interacted with a particular link within a campaign.", + "parameters": [ + { + "name": "campaign_id", + "type": "string", + "required": true, + "description": "A unique identifier for the email marketing campaign to retrieve click details.", + "enum": null, + "inferrable": true + }, + { + "name": "link_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the specific link in the campaign. This ID is used to retrieve details of list members who clicked the link.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response. Use dot notation for nested fields.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "record_count", + "type": "string", + "required": false, + "description": "The number of member records to return. Default is 10 and the maximum is 1000.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdClickDetailsIdMembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.FetchClickDetailsForCampaign", + "parameters": { + "campaign_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "link_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "email_address,unsubscribe_reason", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "email_address,first_name,last_name", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "record_count": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ForgetContact", + "qualifiedName": "MailchimpMarketingApi.ForgetContact", + "fullyQualifiedName": "MailchimpMarketingApi.ForgetContact@1.0.0", + "description": "Forget a contact in the audience list.\n\nUse this tool to erase a contact's data from a specified audience in Mailchimp, ensuring the contact is forgotten.", + "parameters": [ + { + "name": "audience_id", + "type": "string", + "required": true, + "description": "The unique ID for the audience where the contact should be forgotten.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "The unique ID of the contact to be forgotten from the audience.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postAudiencesContactsActionsForget'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.ForgetContact", + "parameters": { + "audience_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "contact_id": { + "value": "contact7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAbuseReportsForList", + "qualifiedName": "MailchimpMarketingApi.GetAbuseReportsForList", + "fullyQualifiedName": "MailchimpMarketingApi.GetAbuseReportsForList@1.0.0", + "description": "Retrieve all abuse reports for a specified mailing list.\n\nCall this tool to get detailed information about abuse reports associated with a particular mailing list. This can be useful for monitoring and handling abuse feedback effectively.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the mailing list to retrieve abuse reports for.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_from_result", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "The number of records to return. Default is 10. Maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "return_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdAbuseReports'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAbuseReportsForList", + "parameters": { + "list_unique_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "exclude_fields_from_result": { + "value": "field1.field2,field3", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "10", + "type": "string", + "required": false + }, + "return_fields": { + "value": "field1,field2.subfield1", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAccountExportInfo", + "qualifiedName": "MailchimpMarketingApi.GetAccountExportInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetAccountExportInfo@1.0.0", + "description": "Get information about a specific account export.\n\nUse this tool to retrieve details about a particular account export using the export ID. Ideal for checking the status or details of exports in Mailchimp.", + "parameters": [ + { + "name": "account_export_id", + "type": "string", + "required": true, + "description": "The unique ID for the account export. Required to retrieve specific export details.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAccountExportId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAccountExportInfo", + "parameters": { + "account_export_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "reports.email_id,reports.date_created", + "type": "string", + "required": false + }, + "include_fields": { + "value": "reports.id,reports.status,reports.applied_tags", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAccountOrders", + "qualifiedName": "MailchimpMarketingApi.GetAccountOrders", + "fullyQualifiedName": "MailchimpMarketingApi.GetAccountOrders@1.0.0", + "description": "Retrieve information about an account's ecommerce orders.\n\nGet details on all orders associated with a specific account, including order history and status.", + "parameters": [ + { + "name": "exclude_order_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_outreach_id", + "type": "string", + "required": false, + "description": "Return orders associated with the specified outreach_id.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of order records to return. Default is 10, maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_campaign_id", + "type": "string", + "required": false, + "description": "Restrict results to orders with a specific campaign ID value.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_outreach_orders", + "type": "string", + "required": false, + "description": "Restrict results to orders that have an outreach attached, such as an email campaign or Facebook ad.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_customer_id", + "type": "string", + "required": false, + "description": "Restrict results to orders made by a specific customer using their unique customer ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceOrders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAccountOrders", + "parameters": { + "exclude_order_fields": { + "value": "shipping.address,shipping.tracking_number", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,status,total_amount,created_at", + "type": "string", + "required": false + }, + "filter_by_outreach_id": { + "value": "outreach_12345", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "10", + "type": "string", + "required": false + }, + "restrict_to_campaign_id": { + "value": "campaign_67890", + "type": "string", + "required": false + }, + "restrict_to_outreach_orders": { + "value": "true", + "type": "string", + "required": false + }, + "specific_customer_id": { + "value": "customer_54321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllBatchWebhooks", + "qualifiedName": "MailchimpMarketingApi.GetAllBatchWebhooks", + "fullyQualifiedName": "MailchimpMarketingApi.GetAllBatchWebhooks@1.0.0", + "description": "Retrieve all configured webhooks for batches.\n\nCall this tool to get a list of webhooks that have been set up for handling batch processing events in Mailchimp.", + "parameters": [ + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object references.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of webhook records to return. Default is 10, maximum is 1000.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBatchWebhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAllBatchWebhooks", + "parameters": { + "fields_to_exclude": { + "value": "status.last_changed,settings.last_server_response", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,created_at,type,settings", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "records_to_return": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllLandingPages", + "qualifiedName": "MailchimpMarketingApi.GetAllLandingPages", + "fullyQualifiedName": "MailchimpMarketingApi.GetAllLandingPages@1.0.0", + "description": "Retrieve all landing pages from Mailchimp.\n\nUse this tool to obtain a comprehensive list of all landing pages available in your Mailchimp account. Useful for marketing analysis and content management.", + "parameters": [ + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to include in the response, using dot notation for nested fields.", + "enum": null, + "inferrable": true + }, + { + "name": "record_count", + "type": "string", + "required": false, + "description": "Specify the number of landing page records to return. Defaults to 10; maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_field", + "type": "string", + "required": false, + "description": "Specify the field by which the landing pages should be sorted.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specifies the order direction for sorting the results (e.g., ascending or descending).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAllLandingPages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAllLandingPages", + "parameters": { + "exclude_fields_list": { + "value": "tags,created_by", + "type": "string", + "required": false + }, + "include_fields": { + "value": "id,name,url,created_at", + "type": "string", + "required": false + }, + "record_count": { + "value": "20", + "type": "string", + "required": false + }, + "sort_by_field": { + "value": "created_at", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "descending", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAllMarketingCampaigns", + "qualifiedName": "MailchimpMarketingApi.GetAllMarketingCampaigns", + "fullyQualifiedName": "MailchimpMarketingApi.GetAllMarketingCampaigns@1.0.0", + "description": "Fetches all marketing campaigns from an account.\n\nUse this tool to retrieve a list of all marketing campaigns associated with a Mailchimp account.", + "parameters": [ + { + "name": "campaign_status", + "type": "string", + "required": false, + "description": "Filter campaigns by their status (e.g., sent, draft).", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_type", + "type": "string", + "required": false, + "description": "Specify the type of campaign to retrieve (e.g., regular, plaintext, absplit).", + "enum": null, + "inferrable": true + }, + { + "name": "campaigns_created_after", + "type": "string", + "required": false, + "description": "Specify the date and time to restrict results to campaigns created after this point. Must be in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "created_before_date_time", + "type": "string", + "required": false, + "description": "Restrict response to campaigns created before this time using ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "include_resend_shortcut_eligibility", + "type": "string", + "required": false, + "description": "Include this field in the response to determine if campaigns are eligible for Resend Shortcuts.", + "enum": null, + "inferrable": true + }, + { + "name": "list_member_identifier", + "type": "string", + "required": false, + "description": "The MD5 hash of the lowercase version of the list member’s email. Used to retrieve campaigns sent to this member.", + "enum": null, + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": false, + "description": "The unique identifier for the list associated with the campaigns to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Number of records to return, between 10 and 1000. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_campaigns_sent_after", + "type": "string", + "required": false, + "description": "Restrict the response to campaigns sent after the specified ISO 8601 time.", + "enum": null, + "inferrable": true + }, + { + "name": "sent_before_time", + "type": "string", + "required": false, + "description": "Restricts the response to campaigns sent before the specified time. It should be in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_field", + "type": "string", + "required": false, + "description": "Specify the field to sort the campaigns by. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_direction", + "type": "string", + "required": false, + "description": "Specify the sorting order for the results. Use 'ASC' for ascending or 'DESC' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_folder_id", + "type": "string", + "required": false, + "description": "Unique identifier for the folder containing the campaigns.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCampaigns'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAllMarketingCampaigns", + "parameters": { + "campaign_status": { + "value": "sent", + "type": "string", + "required": false + }, + "campaign_type": { + "value": "regular", + "type": "string", + "required": false + }, + "campaigns_created_after": { + "value": "2022-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "created_before_date_time": { + "value": "2022-12-31T23:59:59Z", + "type": "string", + "required": false + }, + "exclude_fields": { + "value": "archive_url,web_id", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,type,status", + "type": "string", + "required": false + }, + "include_resend_shortcut_eligibility": { + "value": "true", + "type": "string", + "required": false + }, + "list_member_identifier": { + "value": "5d41402abc4b2a76b9719d911017c592", + "type": "string", + "required": false + }, + "list_unique_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "restrict_to_campaigns_sent_after": { + "value": "2022-02-01T00:00:00Z", + "type": "string", + "required": false + }, + "sent_before_time": { + "value": "2022-06-30T23:59:59Z", + "type": "string", + "required": false + }, + "sort_by_field": { + "value": "send_time", + "type": "string", + "required": false + }, + "sort_order_direction": { + "value": "DESC", + "type": "string", + "required": false + }, + "unique_folder_id": { + "value": "folder123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAudienceContacts", + "qualifiedName": "MailchimpMarketingApi.GetAudienceContacts", + "fullyQualifiedName": "MailchimpMarketingApi.GetAudienceContacts@1.0.0", + "description": "Retrieve all audience information from the account.\n\nUse this tool to get detailed information about every audience in the Mailchimp account, assisting in data management and marketing analysis.", + "parameters": [ + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "records_to_return", + "type": "string", + "required": false, + "description": "The number of audience records to return, ranging from 1 to 1000. Default is 10.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAudienceContacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAudienceContacts", + "parameters": { + "exclude_fields_list": { + "value": "email_type,notes", + "type": "string", + "required": false + }, + "include_fields": { + "value": "id,email_address,status,merge_fields", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "records_to_return": { + "value": "50", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAudienceInfo", + "qualifiedName": "MailchimpMarketingApi.GetAudienceInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetAudienceInfo@1.0.0", + "description": "Retrieve information about a specific audience.\n\nUse this tool to get details about a specific audience in Mailchimp Marketing using the audience ID.", + "parameters": [ + { + "name": "audience_id", + "type": "string", + "required": true, + "description": "The unique ID of the audience to retrieve information for.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A list of fields to exclude from the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAudienceId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAudienceInfo", + "parameters": { + "audience_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "contacts.one,settings.tag", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "name,id,stats.member_count", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAudienceMergeFields", + "qualifiedName": "MailchimpMarketingApi.GetAudienceMergeFields", + "fullyQualifiedName": "MailchimpMarketingApi.GetAudienceMergeFields@1.0.0", + "description": "Get a list of all merge fields for an audience.\n\nUse this tool to retrieve all the merge fields associated with a specific audience in Mailchimp. This is useful for understanding the structure and data fields available within an audience.", + "parameters": [ + { + "name": "audience_list_id", + "type": "string", + "required": true, + "description": "The unique ID for the audience list in Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "is_required_merge_field", + "type": "string", + "required": false, + "description": "Indicates if the merge field is required. Pass 'true' or 'false'.", + "enum": null, + "inferrable": true + }, + { + "name": "merge_field_type", + "type": "string", + "required": false, + "description": "Specify the type of merge field to retrieve, such as 'text', 'number', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of records to return, between 1 and 1000 (default is 10).", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdMergeFields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAudienceMergeFields", + "parameters": { + "audience_list_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "email_address,signup_source", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "merge_fields.name,merge_fields.type", + "type": "string", + "required": false + }, + "is_required_merge_field": { + "value": "true", + "type": "string", + "required": false + }, + "merge_field_type": { + "value": "text", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAuthorizedAppInfo", + "qualifiedName": "MailchimpMarketingApi.GetAuthorizedAppInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetAuthorizedAppInfo@1.0.0", + "description": "Retrieve details of a specific authorized application.\n\nThis tool retrieves information about a specific authorized application using the app ID. It is useful for checking the details or status of an application authorized within Mailchimp.", + "parameters": [ + { + "name": "authorized_application_id", + "type": "string", + "required": true, + "description": "The unique ID for the connected authorized application to retrieve its information.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude. Use dot notation for sub-object references.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAuthorizedAppsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAuthorizedAppInfo", + "parameters": { + "authorized_application_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "client_id,created_at", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "name,status,callback_url", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAutomationEmailInfo", + "qualifiedName": "MailchimpMarketingApi.GetAutomationEmailInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetAutomationEmailInfo@1.0.0", + "description": "Retrieve details of a specific classic automation email.\n\nUse this tool to get detailed information about a specific email within a classic automation workflow in Mailchimp Marketing.", + "parameters": [ + { + "name": "automation_email_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Automation workflow email in Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "automation_workflow_id", + "type": "string", + "required": true, + "description": "The unique ID for the automation workflow.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationsIdEmailsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAutomationEmailInfo", + "parameters": { + "automation_email_unique_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "automation_workflow_id": { + "value": "xyz789ghi012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAutomationEmailQueueInfo", + "qualifiedName": "MailchimpMarketingApi.GetAutomationEmailQueueInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetAutomationEmailQueueInfo@1.0.0", + "description": "Retrieve details of a classic automation email queue in Mailchimp.\n\nThis tool retrieves information about a classic automation email queue in Mailchimp. It should be called when you need details about queued emails for a specific automation workflow and email.", + "parameters": [ + { + "name": "automation_workflow_email_id", + "type": "string", + "required": true, + "description": "The unique ID for the automation workflow email.", + "enum": null, + "inferrable": true + }, + { + "name": "automation_workflow_id", + "type": "string", + "required": true, + "description": "The unique ID for the Automation workflow to obtain the email queue details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationsIdEmailsIdQueue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAutomationEmailQueueInfo", + "parameters": { + "automation_workflow_email_id": { + "value": "email_12345", + "type": "string", + "required": true + }, + "automation_workflow_id": { + "value": "workflow_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAutomationEmailsSummary", + "qualifiedName": "MailchimpMarketingApi.GetAutomationEmailsSummary", + "fullyQualifiedName": "MailchimpMarketingApi.GetAutomationEmailsSummary@1.0.0", + "description": "Get a summary of emails in an automation workflow.\n\nUse this tool to retrieve a summary of all emails within a specified classic automation workflow. Call this tool when you need detailed insights into the automation process.", + "parameters": [ + { + "name": "automation_workflow_id", + "type": "string", + "required": true, + "description": "The unique ID of the automation workflow to retrieve the email summary for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationsIdEmails'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAutomationEmailsSummary", + "parameters": { + "automation_workflow_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAutomationSubscriberInfo", + "qualifiedName": "MailchimpMarketingApi.GetAutomationSubscriberInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetAutomationSubscriberInfo@1.0.0", + "description": "Get details of a subscriber in an automation email queue.\n\nThis tool retrieves information about a specific subscriber within the queue of a classic automation email in Mailchimp. Use this when you need to access details about how a subscriber is queued in a specific workflow email.", + "parameters": [ + { + "name": "automation_workflow_email_id", + "type": "string", + "required": true, + "description": "The unique ID for the Automation workflow email in Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "automation_workflow_id", + "type": "string", + "required": true, + "description": "The unique ID for the Automation workflow in Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_email_md5_hash", + "type": "string", + "required": true, + "description": "The MD5 hash of the lowercase version of the subscriber's email address in the list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationsIdEmailsIdQueueId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAutomationSubscriberInfo", + "parameters": { + "automation_workflow_email_id": { + "value": "abc123def456ghi789", + "type": "string", + "required": true + }, + "automation_workflow_id": { + "value": "xyz987uvw654rst321", + "type": "string", + "required": true + }, + "subscriber_email_md5_hash": { + "value": "5d41402abc4b2a76b9719d911017c592", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAutomationSummary", + "qualifiedName": "MailchimpMarketingApi.GetAutomationSummary", + "fullyQualifiedName": "MailchimpMarketingApi.GetAutomationSummary@1.0.0", + "description": "Retrieve details of a specific classic automation workflow.\n\nThis tool fetches a summary of an individual classic automation workflow's settings and content, including trigger settings for the first email.", + "parameters": [ + { + "name": "workflow_id", + "type": "string", + "required": true, + "description": "The unique ID for the automation workflow to retrieve its summary.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the automation workflow details. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAutomationSummary", + "parameters": { + "workflow_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "settings.trigger,emails", + "type": "string", + "required": false + }, + "include_fields": { + "value": "settings.title,settings.trigger.type", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAvailableTemplates", + "qualifiedName": "MailchimpMarketingApi.GetAvailableTemplates", + "fullyQualifiedName": "MailchimpMarketingApi.GetAvailableTemplates@1.0.0", + "description": "Retrieve a list of available email templates.\n\nFetches and returns a list of all the email templates available in a Mailchimp account. Useful for managing and selecting templates for campaigns.", + "parameters": [ + { + "name": "created_after_date", + "type": "string", + "required": false, + "description": "Retrieve templates created after a specific date. Use ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated fields to exclude from the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_category", + "type": "string", + "required": false, + "description": "Limit the results to templates that match a specific category.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of template records to return (1-1000). Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0. Use for paginated responses.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_before_date_created", + "type": "string", + "required": false, + "description": "Restrict the response to templates created before the specified date in ISO 8601 format. For example: 2015-10-21T15:41:36+00:00.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_direction", + "type": "string", + "required": false, + "description": "Specify the order direction for sorted results ('asc' for ascending, 'desc' for descending).", + "enum": null, + "inferrable": true + }, + { + "name": "sort_templates_by_field", + "type": "string", + "required": false, + "description": "Specify the field to sort templates by. Determines the sorting order of returned templates.", + "enum": null, + "inferrable": true + }, + { + "name": "template_content_type", + "type": "string", + "required": false, + "description": "Filter templates based on content structure. Use 'template' for legacy, 'multichannel' for new editor, or 'html' for code your own.", + "enum": null, + "inferrable": true + }, + { + "name": "template_creator_user", + "type": "string", + "required": false, + "description": "Specify the Mailchimp account user who created the template to filter results.", + "enum": null, + "inferrable": true + }, + { + "name": "template_folder_id", + "type": "string", + "required": false, + "description": "The unique ID for the folder containing templates to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "template_type", + "type": "string", + "required": false, + "description": "Specify the template type to limit the results. This filters the email templates based on their type.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTemplates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetAvailableTemplates", + "parameters": { + "created_after_date": { + "value": "2023-01-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "exclude_fields_list": { + "value": "settings.background_color,settings.width", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,name,created_time", + "type": "string", + "required": false + }, + "filter_by_category": { + "value": "ecommerce", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "10", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "restrict_before_date_created": { + "value": "2023-12-31T23:59:59+00:00", + "type": "string", + "required": false + }, + "sort_order_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "sort_templates_by_field": { + "value": "created_time", + "type": "string", + "required": false + }, + "template_content_type": { + "value": "multichannel", + "type": "string", + "required": false + }, + "template_creator_user": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "template_folder_id": { + "value": "12345", + "type": "string", + "required": false + }, + "template_type": { + "value": "regular", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBatchStatus", + "qualifiedName": "MailchimpMarketingApi.GetBatchStatus", + "fullyQualifiedName": "MailchimpMarketingApi.GetBatchStatus@1.0.0", + "description": "Retrieve the status of a Mailchimp batch request.\n\nUse this tool to check the current status of a specific batch request in Mailchimp, identified by its batch ID.", + "parameters": [ + { + "name": "batch_operation_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp batch operation to check its status.", + "enum": null, + "inferrable": true + }, + { + "name": "excluded_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "return_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBatchesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetBatchStatus", + "parameters": { + "batch_operation_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "excluded_fields_list": { + "value": "reason,created_at", + "type": "string", + "required": false + }, + "return_fields": { + "value": "id,status,completed_at", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBatchSummaries", + "qualifiedName": "MailchimpMarketingApi.GetBatchSummaries", + "fullyQualifiedName": "MailchimpMarketingApi.GetBatchSummaries@1.0.0", + "description": "Retrieve a summary of batch requests from Mailchimp.\n\nCall this tool to obtain a summary of batch requests that have been executed in Mailchimp. Useful for monitoring and tracking the status and details of past batch operations.", + "parameters": [ + { + "name": "exclude_fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of specific fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0, used for navigating through large sets of data.", + "enum": null, + "inferrable": true + }, + { + "name": "record_count_to_return", + "type": "string", + "required": false, + "description": "Specify the number of records to return, from 1 to 1000. Default is 10.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBatches'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetBatchSummaries", + "parameters": { + "exclude_fields_to_return": { + "value": "status,created_time", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,name,status,created_time", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "10", + "type": "string", + "required": false + }, + "record_count_to_return": { + "value": "50", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBatchWebhookInfo", + "qualifiedName": "MailchimpMarketingApi.GetBatchWebhookInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetBatchWebhookInfo@1.0.0", + "description": "Retrieve details of a specific batch webhook on Mailchimp.\n\nUse this tool to get information about a specific batch webhook in a Mailchimp account. It retrieves details such as status and metadata of the specified webhook.", + "parameters": [ + { + "name": "batch_webhook_id", + "type": "string", + "required": true, + "description": "The unique ID for the batch webhook to retrieve information from Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the batch webhook details. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "Specify fields to include in response. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBatchWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetBatchWebhookInfo", + "parameters": { + "batch_webhook_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "status,metadata.last_updated", + "type": "string", + "required": false + }, + "include_fields": { + "value": "url,event_type,status", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignAbuseReportDetails", + "qualifiedName": "MailchimpMarketingApi.GetCampaignAbuseReportDetails", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignAbuseReportDetails@1.0.0", + "description": "Retrieve details of an abuse report for a campaign.\n\nUse this tool to get information about a specific abuse report related to a campaign. It should be called when detailed information about an abuse report is required for analysis or record-keeping.", + "parameters": [ + { + "name": "abuse_report_id", + "type": "string", + "required": true, + "description": "The unique identifier for the abuse report. This ID is necessary to retrieve the specific report details.", + "enum": null, + "inferrable": true + }, + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the campaign to fetch the abuse report details.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdAbuseReportsIdId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignAbuseReportDetails", + "parameters": { + "abuse_report_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "campaign_unique_id": { + "value": "abc-123-def-456", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "details.sender,details.recipient", + "type": "string", + "required": false + }, + "include_fields": { + "value": "report_reason,report_date", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignAbuseReports", + "qualifiedName": "MailchimpMarketingApi.GetCampaignAbuseReports", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignAbuseReports@1.0.0", + "description": "Get a list of abuse complaints for a specific campaign.\n\nCall this tool to retrieve and review all abuse complaints related to a particular email marketing campaign. Useful for tracking and managing issues with campaign recipients reporting spam or other abuses.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the email marketing campaign to fetch abuse complaints.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude in the response using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response. Use dot notation for nested fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdAbuseReportsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignAbuseReports", + "parameters": { + "campaign_unique_id": { + "value": "abc12345xyz", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "email_address,ip_address", + "type": "string", + "required": false + }, + "include_fields": { + "value": "report_id,reporting_email,created_at", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignAdviceFeedback", + "qualifiedName": "MailchimpMarketingApi.GetCampaignAdviceFeedback", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignAdviceFeedback@1.0.0", + "description": "Get feedback based on a campaign's performance data.\n\nThis tool provides advice and feedback derived from various campaign statistics, such as open rates, click-through rates, unsubscribes, and bounces. Use it to gain insights into campaign effectiveness and areas for improvement.", + "parameters": [ + { + "name": "campaign_id", + "type": "string", + "required": true, + "description": "The unique identifier for the campaign to get advice feedback on.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to omit in the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "Comma-separated fields to include in the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdAdvice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignAdviceFeedback", + "parameters": { + "campaign_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "exclude_fields_to_return": { + "value": "feedback.unsubscribes,feedback.bounces", + "type": "string", + "required": false + }, + "include_fields": { + "value": "feedback.open_rates,feedback.click_through_rates", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignClickDetails", + "qualifiedName": "MailchimpMarketingApi.GetCampaignClickDetails", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignClickDetails@1.0.0", + "description": "Get details about link clicks in Mailchimp campaigns.\n\nUse this tool to obtain detailed information about clicks on specific links in your Mailchimp marketing campaigns. It helps analyze the engagement by providing insights into which links were clicked and how often.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for a specific Mailchimp campaign. Required to fetch corresponding click details.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of click records to return. The default is 10, and the maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "return_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_field", + "type": "string", + "required": false, + "description": "Specify the field to sort click reports by, such as 'clicks', 'unique_clicks', or 'link_name'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Determines the order direction for sorted results, such as ascending or descending.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdClickDetails'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignClickDetails", + "parameters": { + "campaign_unique_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "user_id,campaign_id", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "10", + "type": "string", + "required": false + }, + "return_fields": { + "value": "url,clicks,unique_clicks", + "type": "string", + "required": false + }, + "sort_by_field": { + "value": "clicks", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "descending", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignContent", + "qualifiedName": "MailchimpMarketingApi.GetCampaignContent", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignContent@1.0.0", + "description": "Retrieve the HTML and plain-text content for a Mailchimp campaign.\n\nUse this tool to get the content of a specific Mailchimp campaign by providing its campaign ID. The response includes both HTML and plain-text content, useful for viewing or analyzing email campaigns in detail.", + "parameters": [ + { + "name": "campaign_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp campaign to retrieve content for.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude when retrieving campaign content. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + }, + { + "name": "included_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response. Use dot notation to specify sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCampaignsIdContent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignContent", + "parameters": { + "campaign_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "tags,analytics", + "type": "string", + "required": false + }, + "included_fields": { + "value": "html_content,text_content", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignDetails", + "qualifiedName": "MailchimpMarketingApi.GetCampaignDetails", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignDetails@1.0.0", + "description": "Retrieve details of a specific marketing campaign.\n\nUse this tool to get detailed information about a specific campaign using its ID. It provides insights and data related to that campaign.", + "parameters": [ + { + "name": "campaign_id", + "type": "string", + "required": true, + "description": "The unique identifier for the campaign to retrieve details about.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Specify a comma-separated list of fields to return, using dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "include_resend_shortcut_eligibility", + "type": "string", + "required": false, + "description": "Include the `resend_shortcut_eligibility` field in the response to check if the campaign is eligible for Campaign Resend Shortcuts.", + "enum": null, + "inferrable": true + }, + { + "name": "include_resend_shortcut_usage", + "type": "string", + "required": false, + "description": "Include this to receive the `resend_shortcut_usage` field, providing details about campaigns related by a shortcut.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCampaignsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignDetails", + "parameters": { + "campaign_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "subject.line,recipients", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,title,send_time,status", + "type": "string", + "required": false + }, + "include_resend_shortcut_eligibility": { + "value": "true", + "type": "string", + "required": false + }, + "include_resend_shortcut_usage": { + "value": "false", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignDomainPerformance", + "qualifiedName": "MailchimpMarketingApi.GetCampaignDomainPerformance", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignDomainPerformance@1.0.0", + "description": "Get top domain performance for an email campaign.\n\nRetrieve statistics on how email domains have performed in a specific campaign using the campaign ID.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the email campaign to retrieve domain performance statistics.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_from_report", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the report, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return in the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdDomainPerformance'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignDomainPerformance", + "parameters": { + "campaign_unique_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "exclude_fields_from_report": { + "value": "opens.clicks", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "domain,opens,clicks", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignEmailActivity", + "qualifiedName": "MailchimpMarketingApi.GetCampaignEmailActivity", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignEmailActivity@1.0.0", + "description": "Retrieve specific list member's activity in a campaign.\n\nGet detailed information on a list member's activity in a campaign, including opens, clicks, and bounces, by providing the campaign ID and subscriber hash.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the campaign whose member activity is being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_hash", + "type": "string", + "required": true, + "description": "The MD5 hash of the lowercase version of the list member's email address for which you want to retrieve activity.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_activity_since", + "type": "string", + "required": false, + "description": "Restrict results to email activity events occurring after this time (ISO 8601 format).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdEmailActivityId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignEmailActivity", + "parameters": { + "campaign_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "subscriber_hash": { + "value": "d8578edf8458ce06fbc5bb76a58c5ca4", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "opens,bounces", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "clicks,opens", + "type": "string", + "required": false + }, + "restrict_activity_since": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignFeedbackMessage", + "qualifiedName": "MailchimpMarketingApi.GetCampaignFeedbackMessage", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignFeedbackMessage@1.0.0", + "description": "Retrieve a specific feedback message from a campaign.\n\nUse this tool to get detailed feedback from a specific campaign by providing the campaign and feedback identifiers.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the campaign to retrieve the specific feedback message.", + "enum": null, + "inferrable": true + }, + { + "name": "feedback_message_id", + "type": "string", + "required": true, + "description": "The unique identifier for the feedback message to retrieve from the campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_from_feedback", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the feedback. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCampaignsIdFeedbackId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignFeedbackMessage", + "parameters": { + "campaign_unique_id": { + "value": "abc123-campaign-xyz", + "type": "string", + "required": true + }, + "feedback_message_id": { + "value": "msg789-feedback-xyz", + "type": "string", + "required": true + }, + "exclude_fields_from_feedback": { + "value": "user.name,user.email", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "message.date,message.content", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignFolderInfo", + "qualifiedName": "MailchimpMarketingApi.GetCampaignFolderInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignFolderInfo@1.0.0", + "description": "Get details about a specific campaign folder.\n\nCall this tool to retrieve information about a specific campaign folder used for organizing campaigns in Mailchimp.", + "parameters": [ + { + "name": "campaign_folder_id", + "type": "string", + "required": true, + "description": "The unique identifier for the campaign folder. Used to specify which folder's information to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Specify a comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "included_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCampaignFoldersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignFolderInfo", + "parameters": { + "campaign_folder_id": { + "value": "12345", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "campaigns,folder_name", + "type": "string", + "required": false + }, + "included_fields": { + "value": "id,name,folder_type", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignFolders", + "qualifiedName": "MailchimpMarketingApi.GetCampaignFolders", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignFolders@1.0.0", + "description": "Retrieve all folders used to organize campaigns.\n\nUse this tool to get a list of all folders created for organizing your campaigns in Mailchimp.", + "parameters": [ + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "The number of campaign folders to return, between 1 and 1000. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Defaults to 0. Use for fetching subsequent pages.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCampaignFolders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignFolders", + "parameters": { + "exclude_fields": { + "value": "field1,field2", + "type": "string", + "required": false + }, + "include_fields": { + "value": "id,name,created_at", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "20", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignLinkClickDetails", + "qualifiedName": "MailchimpMarketingApi.GetCampaignLinkClickDetails", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignLinkClickDetails@1.0.0", + "description": "Get click details for a specific campaign link.\n\nFetch detailed click information for a specific link within a Mailchimp campaign report. Useful for analyzing link engagement.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp campaign to fetch link click details.", + "enum": null, + "inferrable": true + }, + { + "name": "link_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the link whose click details are to be retrieved in the campaign report.", + "enum": null, + "inferrable": true + }, + { + "name": "excluded_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdClickDetailsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignLinkClickDetails", + "parameters": { + "campaign_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "link_identifier": { + "value": "link_456", + "type": "string", + "required": true + }, + "excluded_fields_list": { + "value": "clicks.total,clicks.timestamp", + "type": "string", + "required": false + }, + "include_fields": { + "value": "clicks.url,clicks.email_address", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignOpenDetails", + "qualifiedName": "MailchimpMarketingApi.GetCampaignOpenDetails", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignOpenDetails@1.0.0", + "description": "Get details on opened campaign emails by list members.\n\nUse this tool to retrieve detailed information about emails from a specific campaign that were opened by list members. Ideal for understanding engagement and assessing campaign performance.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the campaign. Required to retrieve open details for specific campaign emails.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated fields to exclude from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of records to return. Default is 10, maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records from the collection to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_field", + "type": "string", + "required": false, + "description": "Specify the field by which to sort the open reports. Choose from available fields to determine the order of results.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_direction", + "type": "string", + "required": false, + "description": "Specify the order direction for sorted results. Use 'asc' for ascending or 'desc' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_time_for_campaign_open_events", + "type": "string", + "required": false, + "description": "Restrict results to campaign open events that occur after this date and time in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdOpenDetails'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignOpenDetails", + "parameters": { + "campaign_unique_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "exclude_fields_to_return": { + "value": "tags,ip_adress", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "email_address,open_time", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "sort_by_field": { + "value": "open_time", + "type": "string", + "required": false + }, + "sort_order_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "start_date_time_for_campaign_open_events": { + "value": "2023-01-01T00:00:00+00:00", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignProductActivity", + "qualifiedName": "MailchimpMarketingApi.GetCampaignProductActivity", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignProductActivity@1.0.0", + "description": "Get breakdown of product activity for a campaign.\n\nThis tool retrieves the breakdown of product activity related to a specific marketing campaign from Mailchimp. It should be called when detailed ecommerce product performance data for a campaign is needed.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the campaign whose product activity is being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_from_response", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "The number of records to return, between 1 and 1000. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_by_field", + "type": "string", + "required": false, + "description": "Specify the field by which to sort the product activity results. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdEcommerceProductActivity'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignProductActivity", + "parameters": { + "campaign_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "exclude_fields_from_response": { + "value": "fields.subfield1,fields.subfield2", + "type": "string", + "required": false + }, + "include_fields": { + "value": "fields.product_id,fields.product_name,fields.sales", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "25", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "sort_results_by_field": { + "value": "fields.sales", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignRecipientInfo", + "qualifiedName": "MailchimpMarketingApi.GetCampaignRecipientInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignRecipientInfo@1.0.0", + "description": "Get information about a specific campaign recipient.\n\nUse this tool to retrieve details about a particular recipient of a Mailchimp marketing campaign. Provide the campaign ID and subscriber hash to access the information.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the campaign for which recipient information is requested. It should be in string format and is required to identify the specific campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "recipient_subscriber_hash", + "type": "string", + "required": true, + "description": "MD5 hash of the lowercase version of the recipient's email address.", + "enum": null, + "inferrable": true + }, + { + "name": "excluded_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdSentToId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignRecipientInfo", + "parameters": { + "campaign_unique_id": { + "value": "abcd1234efgh5678ijklmnop", + "type": "string", + "required": true + }, + "recipient_subscriber_hash": { + "value": "e99a18c428cb38d5f260853678922e03", + "type": "string", + "required": true + }, + "excluded_fields": { + "value": "email_address,merge_fields", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "email_address,status,merge_fields.FNAME,merge_fields.LNAME", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignRecipients", + "qualifiedName": "MailchimpMarketingApi.GetCampaignRecipients", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignRecipients@1.0.0", + "description": "Retrieve information about campaign recipients.\n\nUse this tool to obtain detailed information about recipients of a specific marketing campaign. It provides insights into who received the campaign.", + "parameters": [ + { + "name": "campaign_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the specific campaign whose recipients you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of recipient records to return, between 1 and 1000. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdSentTo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignRecipients", + "parameters": { + "campaign_unique_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "status,location", + "type": "string", + "required": false + }, + "include_fields": { + "value": "email_address,first_name,last_name", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignReportDetails", + "qualifiedName": "MailchimpMarketingApi.GetCampaignReportDetails", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignReportDetails@1.0.0", + "description": "Retrieve detailed report for a specific sent campaign.\n\nUse this tool to access the report details of a specific campaign that has been sent. It provides insights and metrics for evaluating the campaign's performance.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the campaign to retrieve its report details.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to be excluded from the response. Use dot notation for sub-object references.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignReportDetails", + "parameters": { + "campaign_unique_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "emails.opened,emails.clicked", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "report.summary,report.clicks", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignReports", + "qualifiedName": "MailchimpMarketingApi.GetCampaignReports", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignReports@1.0.0", + "description": "Retrieve detailed campaign reports from Mailchimp.\n\nThis tool retrieves campaign performance reports from Mailchimp Marketing. It should be called when detailed analytics about email campaigns are needed, such as open rates, click rates, and other metrics.", + "parameters": [ + { + "name": "campaign_type", + "type": "string", + "required": false, + "description": "Specify the type of campaign to retrieve reports for. Valid options are dependent on Mailchimp's supported campaign types.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the report. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "included_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of records to return, ranging from 10 to 1000. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_campaigns_sent_after", + "type": "string", + "required": false, + "description": "Restrict the response to campaigns sent after the specified ISO 8601 date and time.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_campaigns_sent_before", + "type": "string", + "required": false, + "description": "Restrict response to campaigns sent before this ISO 8601 time format (e.g., 2015-10-21T15:41:36+00:00).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReports'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignReports", + "parameters": { + "campaign_type": { + "value": "regular", + "type": "string", + "required": false + }, + "exclude_fields_list": { + "value": "status,web_id", + "type": "string", + "required": false + }, + "included_fields": { + "value": "id,subject_line,send_time,open_rate,click_rate", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "restrict_to_campaigns_sent_after": { + "value": "2023-01-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "restrict_to_campaigns_sent_before": { + "value": "2023-12-31T23:59:59+00:00", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignSocialActivity", + "qualifiedName": "MailchimpMarketingApi.GetCampaignSocialActivity", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignSocialActivity@1.0.0", + "description": "Get social activity summary for a campaign using EepURL.\n\nUse this tool to retrieve a summary of social activity tracked by EepURL for a specific campaign in Mailchimp.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique id for the campaign to retrieve its social activity summary.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response, using dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdEepurl'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignSocialActivity", + "parameters": { + "campaign_unique_id": { + "value": "abc12345", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "likes,reposts", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "summary,platforms", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignSubReports", + "qualifiedName": "MailchimpMarketingApi.GetCampaignSubReports", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignSubReports@1.0.0", + "description": "Retrieve sub-reports of a specific parent campaign.\n\nUse this tool to get the reports of child campaigns associated with a particular parent campaign in Mailchimp. Useful for analyzing the performance of linked campaigns.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique ID of the parent campaign to retrieve sub-reports for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "return_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdSubReportsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignSubReports", + "parameters": { + "campaign_unique_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "emails_sent,opens", + "type": "string", + "required": false + }, + "return_fields": { + "value": "report_id,email_address,open_rate", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCampaignSubscriberOpenDetails", + "qualifiedName": "MailchimpMarketingApi.GetCampaignSubscriberOpenDetails", + "fullyQualifiedName": "MailchimpMarketingApi.GetCampaignSubscriberOpenDetails@1.0.0", + "description": "Retrieve details of a subscriber who opened a campaign.\n\nThis tool fetches information about a specific subscriber who opened a given email campaign. It is useful for tracking engagement and understanding subscriber behavior in email marketing campaigns.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the campaign to retrieve subscriber open details.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_email_hash", + "type": "string", + "required": true, + "description": "The MD5 hash of the lowercase version of the subscriber's email address.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_from_response", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return for the subscriber's open details. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdOpenDetailsIdMembersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCampaignSubscriberOpenDetails", + "parameters": { + "campaign_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "subscriber_email_hash": { + "value": "d8578edf8458ce06fbc5bb76a58c5ca4", + "type": "string", + "required": true + }, + "exclude_fields_from_response": { + "value": "location.ip", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "email_address,open_time", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCartInfo", + "qualifiedName": "MailchimpMarketingApi.GetCartInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetCartInfo@1.0.0", + "description": "Fetch information about a specific ecommerce cart.\n\nUse this tool to retrieve detailed information about a specific cart in an ecommerce store. It's useful for scenarios where you need to understand the contents or status of a cart identified by store and cart IDs.", + "parameters": [ + { + "name": "cart_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the cart in the ecommerce store.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store. Use this to specify which store's cart information to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude using dot notation for nested objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "Specify a comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdCartsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCartInfo", + "parameters": { + "cart_identifier": { + "value": "cart_123456", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_987654", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "discounts,coupons", + "type": "string", + "required": false + }, + "include_fields": { + "value": "items.product_id,items.quantity,total_amount", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCartLineItemsInfo", + "qualifiedName": "MailchimpMarketingApi.GetCartLineItemsInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetCartLineItemsInfo@1.0.0", + "description": "Retrieve information about a cart's line items.\n\nUse this tool to get details about the items in a specific cart within an ecommerce store. It provides insights into products added to a cart.", + "parameters": [ + { + "name": "cart_id", + "type": "string", + "required": true, + "description": "The unique identifier for the cart to retrieve line items for.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store containing the cart.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Specify fields to exclude from the response. Use a comma-separated list with dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return in the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Defaults to 0.", + "enum": null, + "inferrable": true + }, + { + "name": "records_to_return", + "type": "string", + "required": false, + "description": "The number of cart line items to return, from 1 to 1000. Default is 10.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdCartsIdLines'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCartLineItemsInfo", + "parameters": { + "cart_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_XYZ", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "discounts,shipping_info", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "product_name,quantity,price", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "records_to_return": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetChimpChatterActivity", + "qualifiedName": "MailchimpMarketingApi.GetChimpChatterActivity", + "fullyQualifiedName": "MailchimpMarketingApi.GetChimpChatterActivity@1.0.0", + "description": "Retrieve the latest Chimp Chatter activity for your account.\n\nUse this tool to fetch the most recent Chimp Chatter activity feed from your Mailchimp account. This provides updates ordered by the latest first.", + "parameters": [ + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of Chimp Chatter records to return. Default is 10, maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getActivityFeedChimpChatter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetChimpChatterActivity", + "parameters": { + "number_of_records_to_return": { + "value": "20", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetClassicAutomationsSummary", + "qualifiedName": "MailchimpMarketingApi.GetClassicAutomationsSummary", + "fullyQualifiedName": "MailchimpMarketingApi.GetClassicAutomationsSummary@1.0.0", + "description": "Fetch a summary of an account's classic automations.\n\nCall this tool to obtain a summary of classic automations set up in a Mailchimp account, useful for understanding automation configurations and statuses.", + "parameters": [ + { + "name": "automation_status_filter", + "type": "string", + "required": false, + "description": "Specify the status of automations to filter results (e.g., 'active', 'paused').", + "enum": null, + "inferrable": true + }, + { + "name": "created_after_time", + "type": "string", + "required": false, + "description": "Specify the time to filter automations created after this date-time. Use ISO 8601 format, e.g., 2015-10-21T15:41:36+00:00.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "The number of automation records to return. Default is 10, maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_before_create_time", + "type": "string", + "required": false, + "description": "Restrict the response to automations created before the specified time in ISO 8601 format. Example: 2015-10-21T15:41:36+00:00.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_automations_started_before", + "type": "string", + "required": false, + "description": "Restrict the response to automations started before this time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_after", + "type": "string", + "required": false, + "description": "Restrict the response to automations started after this date and time in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetClassicAutomationsSummary", + "parameters": { + "automation_status_filter": { + "value": "active", + "type": "string", + "required": false + }, + "created_after_time": { + "value": "2022-01-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "exclude_fields_list": { + "value": "settings.tracking,reporting", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,name,status,last_triggered", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "25", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "restrict_before_create_time": { + "value": "2022-12-31T23:59:59+00:00", + "type": "string", + "required": false + }, + "restrict_to_automations_started_before": { + "value": "2023-10-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "start_time_after": { + "value": "2022-06-01T00:00:00+00:00", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetConnectedApps", + "qualifiedName": "MailchimpMarketingApi.GetConnectedApps", + "fullyQualifiedName": "MailchimpMarketingApi.GetConnectedApps@1.0.0", + "description": "Retrieve registered connected applications for an account.\n\nUse this tool to get a list of applications that are registered and connected to a Mailchimp account.", + "parameters": [ + { + "name": "exclude_fields_from_response", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response, referencing sub-objects with dot notation.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return in the response. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of records to return. Default is 10, maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAuthorizedApps'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetConnectedApps", + "parameters": { + "exclude_fields_from_response": { + "value": "field1,field2", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "app_id,name,created_at", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "20", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetConnectedSiteInfo", + "qualifiedName": "MailchimpMarketingApi.GetConnectedSiteInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetConnectedSiteInfo@1.0.0", + "description": "Retrieve details of a specific connected site.\n\nUse this tool to get information about a connected site using its ID. It provides various details related to the site.", + "parameters": [ + { + "name": "connected_site_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the connected site to retrieve its information.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Specify a comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getConnectedSitesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetConnectedSiteInfo", + "parameters": { + "connected_site_identifier": { + "value": "site_12345", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "last_updated,owner", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,name,url,status", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetConnectedSites", + "qualifiedName": "MailchimpMarketingApi.GetConnectedSites", + "fullyQualifiedName": "MailchimpMarketingApi.GetConnectedSites@1.0.0", + "description": "Retrieve all connected sites from a Mailchimp account.\n\nUse this tool to get a list of all sites connected to a Mailchimp account. Ideal for managing or reviewing the connected site configurations.", + "parameters": [ + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A list of fields to exclude, using dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "included_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of specific fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "The number of records to return. Default is 10, maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getConnectedSites'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetConnectedSites", + "parameters": { + "exclude_fields_list": { + "value": "contacts,lists", + "type": "string", + "required": false + }, + "included_fields": { + "value": "id,name,domain", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "20", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "5", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomerInfo", + "qualifiedName": "MailchimpMarketingApi.GetCustomerInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetCustomerInfo@1.0.0", + "description": "Retrieve specific customer information from an eCommerce store.\n\nUse this tool to get detailed information about a specific customer from an eCommerce store using their customer ID and store ID. Ideal for checking customer profiles, transaction histories, and personal information tied to their account.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for a customer in a specific store. Required to fetch customer details.", + "enum": null, + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": true, + "description": "The unique identifier for the eCommerce store.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "return_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return for the customer data. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdCustomersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetCustomerInfo", + "parameters": { + "customer_id": { + "value": "CUST123456", + "type": "string", + "required": true + }, + "store_id": { + "value": "STORE7890", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "payment_info,transaction_history", + "type": "string", + "required": false + }, + "return_fields": { + "value": "name,email,loyalty_points", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDailyListActivity", + "qualifiedName": "MailchimpMarketingApi.GetDailyListActivity", + "fullyQualifiedName": "MailchimpMarketingApi.GetDailyListActivity@1.0.0", + "description": "Fetch daily detailed activity stats for a list in Mailchimp.\n\nRetrieve up to the previous 180 days of aggregated daily activity statistics for a specific list, excluding Automation activity.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp list to retrieve activity stats.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of specific fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "The number of records to return. Default is 10, maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdActivity'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetDailyListActivity", + "parameters": { + "list_unique_id": { + "value": "abc123def456ghi789", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "created_at,updated_at", + "type": "string", + "required": false + }, + "include_fields": { + "value": "emails.opened,emails.clicked", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDomainDetails", + "qualifiedName": "MailchimpMarketingApi.GetDomainDetails", + "fullyQualifiedName": "MailchimpMarketingApi.GetDomainDetails@1.0.0", + "description": "Retrieve details for a specific verified domain.\n\nUse this tool to get the details of a single verified domain on your Mailchimp account. Useful for accessing domain-specific information.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The domain name to retrieve details for. Must be a verified domain on the account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getVerifiedDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetDomainDetails", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEcommerceStoreInfo", + "qualifiedName": "MailchimpMarketingApi.GetEcommerceStoreInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetEcommerceStoreInfo@1.0.0", + "description": "Retrieve detailed information about a specific eCommerce store.\n\nUse this tool to get detailed information about a specific store in Mailchimp's eCommerce service. Call this when you need to access store data, such as name, domain, or other relevant attributes.", + "parameters": [ + { + "name": "store_id", + "type": "string", + "required": true, + "description": "A unique identifier for the store to retrieve information about.", + "enum": null, + "inferrable": true + }, + { + "name": "excluded_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetEcommerceStoreInfo", + "parameters": { + "store_id": { + "value": "abc1234xyz", + "type": "string", + "required": true + }, + "excluded_fields_list": { + "value": "shipping, tax", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "name, domain, owner", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEcommerceStoresInfo", + "qualifiedName": "MailchimpMarketingApi.GetEcommerceStoresInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetEcommerceStoresInfo@1.0.0", + "description": "Retrieve information about all ecommerce stores in the account.\n\nThis tool fetches details of all ecommerce stores linked to the account, enabling insights into store data.", + "parameters": [ + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response, using dot notation for nested objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of store records to return (10 to 1000).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStores'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetEcommerceStoresInfo", + "parameters": { + "exclude_fields_list": { + "value": "billing.address,shipping.method", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,name,store_type", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "records_to_return": { + "value": "25", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFacebookAdDetails", + "qualifiedName": "MailchimpMarketingApi.GetFacebookAdDetails", + "fullyQualifiedName": "MailchimpMarketingApi.GetFacebookAdDetails@1.0.0", + "description": "Retrieve details of a specific Facebook ad campaign.\n\nUse this tool to fetch detailed information about a specific Facebook ad by providing its outreach ID. This can be helpful for tracking ad performance or reviewing campaign specifics.", + "parameters": [ + { + "name": "facebook_ad_outreach_id", + "type": "string", + "required": true, + "description": "The unique outreach ID of the Facebook ad to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return; use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFacebookAdsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetFacebookAdDetails", + "parameters": { + "facebook_ad_outreach_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "performance.impressions,details.targeting", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "performance.clicks,details.headline", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFacebookAdReport", + "qualifiedName": "MailchimpMarketingApi.GetFacebookAdReport", + "fullyQualifiedName": "MailchimpMarketingApi.GetFacebookAdReport@1.0.0", + "description": "Get report details of a Facebook ad campaign.\n\nUse this tool to retrieve detailed reports of a specific Facebook advertisement managed through Mailchimp. This is useful for analyzing ad performance and outreach impact.", + "parameters": [ + { + "name": "outreach_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Facebook ad campaign to retrieve the report for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "List of fields to exclude from the report, using comma-separated values. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportingFacebookAdsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetFacebookAdReport", + "parameters": { + "outreach_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "impressions,cost_per_click", + "type": "string", + "required": false + }, + "include_fields": { + "value": "campaign_name,clicks,conversions", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFacebookAdsList", + "qualifiedName": "MailchimpMarketingApi.GetFacebookAdsList", + "fullyQualifiedName": "MailchimpMarketingApi.GetFacebookAdsList@1.0.0", + "description": "Retrieve a list of Facebook ads from Mailchimp.\n\nUse this tool to obtain a list of Facebook ads managed within Mailchimp. Ideal for getting an overview of current ad campaigns.", + "parameters": [ + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude. Utilize dot notation for sub-object fields.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of specific fields to return in the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination, with a default of 0.", + "enum": null, + "inferrable": true + }, + { + "name": "records_count", + "type": "string", + "required": false, + "description": "Specify the number of Facebook ad records to return. Default is 10, maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_field", + "type": "string", + "required": false, + "description": "Specify the field by which to sort the Facebook ads.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specifies the sorting order: 'asc' for ascending or 'desc' for descending.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAllFacebookAds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetFacebookAdsList", + "parameters": { + "exclude_fields": { + "value": "created_at,updated_at", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,name,status", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "records_count": { + "value": "10", + "type": "string", + "required": false + }, + "sort_by_field": { + "value": "name", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "asc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFacebookAdsProductActivity", + "qualifiedName": "MailchimpMarketingApi.GetFacebookAdsProductActivity", + "fullyQualifiedName": "MailchimpMarketingApi.GetFacebookAdsProductActivity@1.0.0", + "description": "Retrieve product activity breakdown for a Facebook ads outreach.\n\nThis tool provides a breakdown of ecommerce product activity for a specific Facebook ads outreach campaign. It should be called when detailed analytics of product performance related to a Facebook ad outreach is needed.", + "parameters": [ + { + "name": "outreach_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Facebook ads outreach campaign to retrieve the product activity breakdown.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "The number of records to return. Default is 10. Maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_field", + "type": "string", + "required": false, + "description": "Specify the field to sort the returned records by, using the field name.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportingFacebookAdsIdEcommerceProductActivity'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetFacebookAdsProductActivity", + "parameters": { + "outreach_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "field1,field2", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "product_id,name,price", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "10", + "type": "string", + "required": false + }, + "sort_by_field": { + "value": "price", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFacebookAdsReports", + "qualifiedName": "MailchimpMarketingApi.GetFacebookAdsReports", + "fullyQualifiedName": "MailchimpMarketingApi.GetFacebookAdsReports@1.0.0", + "description": "Get reports of Facebook ads for marketing analysis.\n\nUse this tool to retrieve detailed reports of Facebook ads data, which can be essential for analyzing marketing campaigns and performance metrics.", + "parameters": [ + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude in the report. Use dot notation for sub-objects if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "record_count", + "type": "string", + "required": false, + "description": "Specify the number of Facebook ads records to return. Default is 10, maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_direction", + "type": "string", + "required": false, + "description": "Specifies the order direction for sorting results. Use 'asc' for ascending and 'desc' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "sorting_field_for_results", + "type": "string", + "required": false, + "description": "Specifies the field by which to sort the Facebook ads report results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportingFacebookAds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetFacebookAdsReports", + "parameters": { + "exclude_fields": { + "value": "clicks,cost_per_click", + "type": "string", + "required": false + }, + "include_fields": { + "value": "ad_id,name, impressions, clicks", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "10", + "type": "string", + "required": false + }, + "record_count": { + "value": "50", + "type": "string", + "required": false + }, + "sort_order_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "sorting_field_for_results": { + "value": "impressions", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileManagerFileInfo", + "qualifiedName": "MailchimpMarketingApi.GetFileManagerFileInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetFileManagerFileInfo@1.0.0", + "description": "Retrieve information about a specific file from Mailchimp's File Manager.\n\nUse this tool to get detailed information about a specific file stored in Mailchimp's File Manager using the file ID.", + "parameters": [ + { + "name": "file_manager_file_id", + "type": "string", + "required": true, + "description": "The unique ID for the File Manager file to retrieve its information.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "return_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation to specify sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFileManagerFilesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetFileManagerFileInfo", + "parameters": { + "file_manager_file_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "metadata.uploaded_on,metadata.size", + "type": "string", + "required": false + }, + "return_fields": { + "value": "name,url,metadata", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileManagerFiles", + "qualifiedName": "MailchimpMarketingApi.GetFileManagerFiles", + "fullyQualifiedName": "MailchimpMarketingApi.GetFileManagerFiles@1.0.0", + "description": "Retrieve images and files from the Mailchimp File Manager.\n\nUse this tool to get a list of all images and files stored in the File Manager of the Mailchimp account. It provides access to media assets used in marketing campaigns.", + "parameters": [ + { + "name": "created_after_date", + "type": "string", + "required": false, + "description": "Files created after this date will be included in the response. Use ISO 8601 format: 2015-10-21T15:41:36+00:00.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated fields to omit from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "file_created_by_user", + "type": "string", + "required": false, + "description": "The Mailchimp account user who created the File Manager file.", + "enum": null, + "inferrable": true + }, + { + "name": "file_sort_field", + "type": "string", + "required": false, + "description": "Specify the field to sort the files by, such as 'name', 'date', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "file_type", + "type": "string", + "required": false, + "description": "The file type to filter File Manager files. Expected as a string value.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specifies the number of records to return. Default is 10; maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_files_before_date", + "type": "string", + "required": false, + "description": "Restrict the response to files created before the specified ISO 8601 date.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_direction", + "type": "string", + "required": false, + "description": "Sets the order direction for sorting results. Use 'ASC' for ascending and 'DESC' for descending.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFileManagerFiles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetFileManagerFiles", + "parameters": { + "created_after_date": { + "value": "2023-01-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "exclude_fields_list": { + "value": "size,url", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "name,url,date", + "type": "string", + "required": false + }, + "file_created_by_user": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "file_sort_field": { + "value": "date", + "type": "string", + "required": false + }, + "file_type": { + "value": "image/jpeg", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "20", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "restrict_files_before_date": { + "value": "2023-10-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "sort_order_direction": { + "value": "ASC", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFileManagerFolderInfo", + "qualifiedName": "MailchimpMarketingApi.GetFileManagerFolderInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetFileManagerFolderInfo@1.0.0", + "description": "Retrieve details of a specific folder from File Manager.\n\nUse this tool to get information about a particular folder in Mailchimp's File Manager. It's useful for accessing folder-specific details, such as name and metadata.", + "parameters": [ + { + "name": "file_manager_folder_id", + "type": "string", + "required": true, + "description": "The unique identifier for the File Manager folder to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated fields to exclude. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of specific fields to return, use dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFileManagerFoldersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetFileManagerFolderInfo", + "parameters": { + "file_manager_folder_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "created_at,updated_at", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "name,metadata", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFolderFiles", + "qualifiedName": "MailchimpMarketingApi.GetFolderFiles", + "fullyQualifiedName": "MailchimpMarketingApi.GetFolderFiles@1.0.0", + "description": "Retrieve files and images from a specific folder.\n\nUse this tool to get a list of available images and files stored in a specified folder within Mailchimp's file manager. Ideal for accessing and managing digital assets.", + "parameters": [ + { + "name": "file_manager_folder_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific File Manager folder to retrieve files from.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + }, + { + "name": "file_creator_user", + "type": "string", + "required": false, + "description": "Mailchimp account user who created the File Manager file. Filter results by this user's contributions.", + "enum": null, + "inferrable": true + }, + { + "name": "file_type", + "type": "string", + "required": false, + "description": "Specifies the file type to filter files in the folder. Use to retrieve specific types like 'image', 'document', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_files_created_after", + "type": "string", + "required": false, + "description": "Restrict the response to files created after the specified date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records", + "type": "string", + "required": false, + "description": "Specifies the number of files to retrieve, with a default of 10 and a maximum of 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0. Use this to access pages beyond the first one.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_files_before_date", + "type": "string", + "required": false, + "description": "Restrict response to files created before this date using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_field", + "type": "string", + "required": false, + "description": "Specify the field to sort the files by, such as name or size.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_direction", + "type": "string", + "required": false, + "description": "Specify the order direction for sorting results. Typically 'asc' for ascending or 'desc' for descending order.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFileManagerFoldersFiles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetFolderFiles", + "parameters": { + "file_manager_folder_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "type,created_at", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,name,url", + "type": "string", + "required": false + }, + "file_creator_user": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "file_type": { + "value": "image", + "type": "string", + "required": false + }, + "filter_files_created_after": { + "value": "2023-01-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "number_of_records": { + "value": "20", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "restrict_files_before_date": { + "value": "2023-12-31T23:59:59+00:00", + "type": "string", + "required": false + }, + "sort_by_field": { + "value": "name", + "type": "string", + "required": false + }, + "sort_order_direction": { + "value": "asc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetInterestCategoryInfo", + "qualifiedName": "MailchimpMarketingApi.GetInterestCategoryInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetInterestCategoryInfo@1.0.0", + "description": "Fetch specific interest category details from a Mailchimp list.\n\nUse this tool to get detailed information about a specific interest category within a Mailchimp list. This is useful for understanding subscriber interests and organizing lists more effectively.", + "parameters": [ + { + "name": "interest_category_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the interest category you want to retrieve information about.", + "enum": null, + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list you want to retrieve interest category details from.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdInterestCategoriesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetInterestCategoryInfo", + "parameters": { + "interest_category_unique_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "list_unique_id": { + "value": "xyz789", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "description,created_at", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "name,id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetInterestCategoryInterests", + "qualifiedName": "MailchimpMarketingApi.GetInterestCategoryInterests", + "fullyQualifiedName": "MailchimpMarketingApi.GetInterestCategoryInterests@1.0.0", + "description": "Retrieve interests for a specific category in Mailchimp.\n\nUse this tool to get a list of interests within a specific category of a Mailchimp list. It helps in understanding what options are available under a given interest category for targeted marketing strategies.", + "parameters": [ + { + "name": "interest_category_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for a specific interest category in a Mailchimp list.", + "enum": null, + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list.", + "enum": null, + "inferrable": true + }, + { + "name": "excluded_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return, using dot notation as needed.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of records to return, between 10 and 1000. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_skip_count", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdInterestCategoriesIdInterests'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetInterestCategoryInterests", + "parameters": { + "interest_category_unique_id": { + "value": "123456", + "type": "string", + "required": true + }, + "list_unique_id": { + "value": "abc-xyz-789", + "type": "string", + "required": true + }, + "excluded_fields": { + "value": "field1,field2", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "name,id", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_skip_count": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetInterestGroupNames", + "qualifiedName": "MailchimpMarketingApi.GetInterestGroupNames", + "fullyQualifiedName": "MailchimpMarketingApi.GetInterestGroupNames@1.0.0", + "description": "Retrieve interest group names for a specific category.\n\nUse this tool to fetch interests or 'group names' associated with a specific category in a Mailchimp list. It is useful for managing or displaying group names to users.", + "parameters": [ + { + "name": "interest_category_id", + "type": "string", + "required": true, + "description": "The unique identifier for the interest category in a Mailchimp list.", + "enum": null, + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp list to retrieve interest group names from.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_interest_group_name", + "type": "string", + "required": true, + "description": "The specific interest or group name to retrieve in the category.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdInterestCategoriesIdInterestsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetInterestGroupNames", + "parameters": { + "interest_category_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "list_unique_id": { + "value": "list456", + "type": "string", + "required": true + }, + "specific_interest_group_name": { + "value": "Tech Enthusiasts", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "description", + "type": "string", + "required": false + }, + "include_fields": { + "value": "name,id", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLandingPageHtml", + "qualifiedName": "MailchimpMarketingApi.GetLandingPageHtml", + "fullyQualifiedName": "MailchimpMarketingApi.GetLandingPageHtml@1.0.0", + "description": "Retrieve the HTML content of a Mailchimp landing page.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp landing page to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for nested objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getLandingPageIdContent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetLandingPageHtml", + "parameters": { + "landing_page_id": { + "value": "123abc456def", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "content.text,content.images", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,name,content", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLandingPageInfo", + "qualifiedName": "MailchimpMarketingApi.GetLandingPageInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetLandingPageInfo@1.0.0", + "description": "Retrieve information about a specific landing page by ID.\n\nThis tool is used to fetch detailed information about a landing page using its ID. It should be called when you need to access the specifics of a given landing page.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the landing page to retrieve information about.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getLandingPageId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetLandingPageInfo", + "parameters": { + "landing_page_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "created_time,updated_time", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,title,url,content", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLandingPageReport", + "qualifiedName": "MailchimpMarketingApi.GetLandingPageReport", + "fullyQualifiedName": "MailchimpMarketingApi.GetLandingPageReport@1.0.0", + "description": "Retrieve the report for a specific landing page.\n\nUse this tool to get detailed reports on specific landing pages via their ID. Useful for analyzing landing page performance and metrics.", + "parameters": [ + { + "name": "landing_page_outreach_id", + "type": "string", + "required": true, + "description": "The outreach ID for the landing page you want to retrieve the report for.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_report_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the landing page report. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportingLandingPagesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetLandingPageReport", + "parameters": { + "landing_page_outreach_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "exclude_report_fields": { + "value": "clicks.opened_delay,clicks.total", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "metrics.open_rate,metrics.click_rate", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLandingPageReports", + "qualifiedName": "MailchimpMarketingApi.GetLandingPageReports", + "fullyQualifiedName": "MailchimpMarketingApi.GetLandingPageReports@1.0.0", + "description": "Retrieve reports of landing pages from Mailchimp.\n\nUse this tool to get detailed analytics and reports on landing pages set up in Mailchimp. Ideal for understanding performance metrics and engagement data.", + "parameters": [ + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the report. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of records to return, from 1 to 1000. Defaults to 10 if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "records_to_skip", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportingLandingPages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetLandingPageReports", + "parameters": { + "fields_to_exclude": { + "value": "stats.opens,stats.clicks", + "type": "string", + "required": false + }, + "include_fields": { + "value": "title,created_at,stats", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "20", + "type": "string", + "required": false + }, + "records_to_skip": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListGrowthSummary", + "qualifiedName": "MailchimpMarketingApi.GetListGrowthSummary", + "fullyQualifiedName": "MailchimpMarketingApi.GetListGrowthSummary@1.0.0", + "description": "Get a list's growth activity summary for a specific month and year.\n\nUse this tool to obtain a summary of the growth activity for a specific list in a given month and year on Mailchimp.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the specific list in Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_month_of_growth_history", + "type": "string", + "required": true, + "description": "Specify the month and year (in 'YYYY-MM' format) for retrieving the list's growth history.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdGrowthHistoryId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetListGrowthSummary", + "parameters": { + "list_unique_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "specific_month_of_growth_history": { + "value": "2023-09", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "field1,field2.subfield", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "field3,field4.subfield", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListInterestCategories", + "qualifiedName": "MailchimpMarketingApi.GetListInterestCategories", + "fullyQualifiedName": "MailchimpMarketingApi.GetListInterestCategories@1.0.0", + "description": "Retrieve interest categories for a specific mailing list.\n\nUse this tool to obtain detailed information about the interest categories associated with a specific mailing list in Mailchimp Marketing.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique identifier for the mailing list you want to retrieve interest categories for.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude using dot notation for sub-objects. Helps reduce the size of the response by omitting unnecessary data.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "interest_group_type", + "type": "string", + "required": false, + "description": "Specify the type of interest group to restrict results. Example: 'checkboxes', 'radio_buttons'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0. Use to manage pagination flow.", + "enum": null, + "inferrable": true + }, + { + "name": "record_count", + "type": "string", + "required": false, + "description": "The number of records to return. Specify a value from 10 to 1000. Defaults to 10 if not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdInterestCategories'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetListInterestCategories", + "parameters": { + "list_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "stats", + "type": "string", + "required": false + }, + "include_fields": { + "value": "name,id", + "type": "string", + "required": false + }, + "interest_group_type": { + "value": "checkboxes", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "record_count": { + "value": "20", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListMemberInfo", + "qualifiedName": "MailchimpMarketingApi.GetListMemberInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetListMemberInfo@1.0.0", + "description": "Retrieve details about a specific list member in Mailchimp.\n\nGet information about a specific list member, including their subscription status and other details. Useful for tracking and managing member information in Mailchimp mailing lists.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list to retrieve the member from.", + "enum": null, + "inferrable": true + }, + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The MD5 hash of the lowercase list member's email, or the email address/contact_id itself.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdMembersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetListMemberInfo", + "parameters": { + "list_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "member_identifier": { + "value": "example@example.com", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "status,gdpr", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "email_address,status,merge_fields", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListMemberNote", + "qualifiedName": "MailchimpMarketingApi.GetListMemberNote", + "fullyQualifiedName": "MailchimpMarketingApi.GetListMemberNote@1.0.0", + "description": "Retrieve a specific note for a list member.\n\nUse this tool to obtain details of a particular note associated with a member of a specific list. It's helpful for accessing specific interactions or annotations recorded for a list member.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the mailing list to retrieve a member's note from.", + "enum": null, + "inferrable": true + }, + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The MD5 hash of the lowercase email, the email address itself, or contact ID for a list member.", + "enum": null, + "inferrable": true + }, + { + "name": "note_id", + "type": "string", + "required": true, + "description": "The unique identifier for the note associated with a list member.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdMembersIdNotesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetListMemberNote", + "parameters": { + "list_unique_id": { + "value": "123456789abcdefg", + "type": "string", + "required": true + }, + "member_identifier": { + "value": "abcdef1234567890abcdef1234567890", + "type": "string", + "required": true + }, + "note_id": { + "value": "note_123456", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "created_at,updated_at", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "content,note_type", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListSegmentsInfo", + "qualifiedName": "MailchimpMarketingApi.GetListSegmentsInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetListSegmentsInfo@1.0.0", + "description": "Retrieve details of all segments for a specific list.\n\nUse this tool to get information about all available segments for a specific list in Mailchimp. It helps in understanding the segmentation structure of a mailing list.", + "parameters": [ + { + "name": "list_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the mailing list whose segments are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "created_after_datetime", + "type": "string", + "required": false, + "description": "Restrict results to segments created after the specified time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_cleaned_members", + "type": "string", + "required": false, + "description": "Set to 'true' to include cleaned (bounced) members in the response. Use this to see members who have been removed due to email issues.", + "enum": null, + "inferrable": true + }, + { + "name": "include_transactional_members", + "type": "string", + "required": false, + "description": "Specify whether to include transactional members in the response. Use 'true' or 'false'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_unsubscribed_members", + "type": "string", + "required": false, + "description": "Set to 'true' to include unsubscribed members in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "records_count", + "type": "string", + "required": false, + "description": "The number of records to return. Default: 10. Max: 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_since_updated_time", + "type": "string", + "required": false, + "description": "Restrict results to segments updated after this time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_segments_created_before", + "type": "string", + "required": false, + "description": "Restrict results to segments created before the specified time. Use ISO 8601 format: 2015-10-21T15:41:36+00:00.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_segments_updated_before", + "type": "string", + "required": false, + "description": "Restrict results to segments updated before the specified time using ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).", + "enum": null, + "inferrable": true + }, + { + "name": "segment_type", + "type": "string", + "required": false, + "description": "Specify the type of segment to filter results. Use known segment types as strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'previewASegment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetListSegmentsInfo", + "parameters": { + "list_identifier": { + "value": "1234567890", + "type": "string", + "required": true + }, + "created_after_datetime": { + "value": "2023-01-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "exclude_fields": { + "value": "members.email_address,members.status", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "name,id,created_at", + "type": "string", + "required": false + }, + "include_cleaned_members": { + "value": "true", + "type": "string", + "required": false + }, + "include_transactional_members": { + "value": "false", + "type": "string", + "required": false + }, + "include_unsubscribed_members": { + "value": "true", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "records_count": { + "value": "20", + "type": "string", + "required": false + }, + "restrict_since_updated_time": { + "value": "2023-01-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "restrict_to_segments_created_before": { + "value": "2023-12-31T23:59:59+00:00", + "type": "string", + "required": false + }, + "restrict_to_segments_updated_before": { + "value": "2023-12-31T23:59:59+00:00", + "type": "string", + "required": false + }, + "segment_type": { + "value": "static", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListSignupForms", + "qualifiedName": "MailchimpMarketingApi.GetListSignupForms", + "fullyQualifiedName": "MailchimpMarketingApi.GetListSignupForms@1.0.0", + "description": "Retrieve signup forms for a Mailchimp list.\n\nUse this tool to fetch all signup forms associated with a specific Mailchimp list using the list ID.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID of the Mailchimp list for retrieving signup forms.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdSignupForms'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetListSignupForms", + "parameters": { + "list_unique_id": { + "value": "abc12345xyz890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListSubscriberLocations", + "qualifiedName": "MailchimpMarketingApi.GetListSubscriberLocations", + "fullyQualifiedName": "MailchimpMarketingApi.GetListSubscriberLocations@1.0.0", + "description": "Retrieve subscriber location data by list.\n\nCall this tool to get the countries associated with the subscribers of a specific list in Mailchimp, based on geocoded IP addresses.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the subscriber list in Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdLocations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetListSubscriberLocations", + "parameters": { + "list_unique_id": { + "value": "abcdef1234567890", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "geo.country_code,geo.latitude", + "type": "string", + "required": false + }, + "include_fields": { + "value": "geo.country_code,geo.latitude,geo.longitude", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListSurveysInfo", + "qualifiedName": "MailchimpMarketingApi.GetListSurveysInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetListSurveysInfo@1.0.0", + "description": "Retrieve information about surveys for a specific list.\n\nCall this tool to get information about all available surveys associated with a specific list in Mailchimp. Useful for managing and analyzing survey data linked to email lists.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the list to retrieve survey information. This ID is essential for specifying which list's surveys to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdSurveys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetListSurveysInfo", + "parameters": { + "list_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListWebhooksInfo", + "qualifiedName": "MailchimpMarketingApi.GetListWebhooksInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetListWebhooksInfo@1.0.0", + "description": "Get information about all webhooks for a specific list.\n\nUse this tool to retrieve detailed information about all the webhooks associated with a specified mailing list. Ideal for managing or auditing webhook configurations.", + "parameters": [ + { + "name": "list_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the mailing list to retrieve webhook information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdWebhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetListWebhooksInfo", + "parameters": { + "list_unique_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMailchimpAccountExports", + "qualifiedName": "MailchimpMarketingApi.GetMailchimpAccountExports", + "fullyQualifiedName": "MailchimpMarketingApi.GetMailchimpAccountExports@1.0.0", + "description": "Retrieve a list of account exports in Mailchimp.\n\nCall this tool to get a list of account exports for a Mailchimp account, useful for tracking or managing account data exports.", + "parameters": [ + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return in the response. Use dot notation for nested fields.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records", + "type": "string", + "required": false, + "description": "Specify the number of records to return. Defaults to 10, maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0, used to manage data retrieval position.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAccountExports'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetMailchimpAccountExports", + "parameters": { + "fields_to_exclude": { + "value": "last_updated,created_at", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,name,status,export_url", + "type": "string", + "required": false + }, + "number_of_records": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMailchimpApiResources", + "qualifiedName": "MailchimpMarketingApi.GetMailchimpApiResources", + "fullyQualifiedName": "MailchimpMarketingApi.GetMailchimpApiResources@1.0.0", + "description": "Retrieve all available Mailchimp API resource links.\n\nThis tool fetches links to all the resources available in the Mailchimp Marketing API, providing easy access to various API endpoints.", + "parameters": [ + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRoot'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetMailchimpApiResources", + "parameters": { + "exclude_fields": { + "value": "sub_objects.field1,sub_objects.field2", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,name,link,description", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMailchimpCampaignFeedback", + "qualifiedName": "MailchimpMarketingApi.GetMailchimpCampaignFeedback", + "fullyQualifiedName": "MailchimpMarketingApi.GetMailchimpCampaignFeedback@1.0.0", + "description": "Retrieve feedback comments for a Mailchimp campaign.\n\nUse this tool to get team feedback for a specific Mailchimp campaign by providing the campaign ID.", + "parameters": [ + { + "name": "campaign_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific Mailchimp campaign from which to retrieve feedback.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the feedback data, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of specific fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCampaignsIdFeedback'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetMailchimpCampaignFeedback", + "parameters": { + "campaign_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "comments.likes,comments.replies", + "type": "string", + "required": false + }, + "include_fields": { + "value": "comments.text,comments.date_created", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMailchimpListInfo", + "qualifiedName": "MailchimpMarketingApi.GetMailchimpListInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetMailchimpListInfo@1.0.0", + "description": "Retrieve details of a specific list in Mailchimp.\n\nUse this tool to get detailed information about a specific list in your Mailchimp account, including members who are unconfirmed, unsubscribed, or cleaned.", + "parameters": [ + { + "name": "mailchimp_list_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list to retrieve information about.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_in_mailchimp", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects, e.g., 'stats.member_count'.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_contacts", + "type": "string", + "required": false, + "description": "Set to true to include the approximate count of all contacts in any state (total_contacts) in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetMailchimpListInfo", + "parameters": { + "mailchimp_list_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "exclude_fields_in_mailchimp": { + "value": "stats.member_count,stats.unsubscribe_count", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "name,id,stats", + "type": "string", + "required": false + }, + "include_total_contacts": { + "value": "true", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMailchimpListMembers", + "qualifiedName": "MailchimpMarketingApi.GetMailchimpListMembers", + "fullyQualifiedName": "MailchimpMarketingApi.GetMailchimpListMembers@1.0.0", + "description": "Retrieve member details from a specific Mailchimp list.\n\nUse this tool to get information about members within a specified Mailchimp list. It's useful for accessing subscriber details such as email addresses and subscription status.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list to retrieve member information from.", + "enum": null, + "inferrable": true + }, + { + "name": "changed_after_timestamp", + "type": "string", + "required": false, + "description": "Restrict results to subscribers whose information changed after the specified timestamp in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).", + "enum": null, + "inferrable": true + }, + { + "name": "email_type", + "type": "string", + "required": false, + "description": "Specify the type of email format. Typically 'html' or 'text'.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_interest_ids", + "type": "string", + "required": false, + "description": "Comma-separated list of interest IDs to filter list members. Must be combined with interest_category_id and interest_match.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_since_last_campaign", + "type": "string", + "required": false, + "description": "Filter subscribers by their status (subscribed/unsubscribed/pending/cleaned) since the last email campaign. Requires member status.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_unsubscribed_since", + "type": "string", + "required": false, + "description": "Filter subscribers who unsubscribed since a specific date. Must use 'unsubscribed' status only.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_vip_members", + "type": "string", + "required": false, + "description": "Filter to return only VIP list members. Use `true` for VIPs only, `false` for all members.", + "enum": null, + "inferrable": true + }, + { + "name": "interest_category_id", + "type": "string", + "required": false, + "description": "The unique id for the interest category used to filter Mailchimp list members.", + "enum": null, + "inferrable": true + }, + { + "name": "interest_match_filter", + "type": "string", + "required": false, + "description": "Specify how to match list members by interests. Options: 'any', 'all', or 'none'. Must accompany interest_category_id and interest_ids.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of records to return, between 10 and 1000, default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "opt_in_after_timestamp", + "type": "string", + "required": false, + "description": "Restrict results to subscribers who opted-in after the specified timeframe in ISO 8601 format: 2015-10-21T15:41:36+00:00.", + "enum": null, + "inferrable": true + }, + { + "name": "opt_in_before_timestamp", + "type": "string", + "required": false, + "description": "Restrict results to subscribers who opted in before the specified timeframe. Use ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_change_before_timeframe", + "type": "string", + "required": false, + "description": "Restrict results to subscribers whose information changed before the provided timeframe in ISO 8601 format (e.g., '2015-10-21T15:41:36+00:00').", + "enum": null, + "inferrable": true + }, + { + "name": "sort_field_for_members", + "type": "string", + "required": false, + "description": "Specifies the field by which to sort the list members.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_direction", + "type": "string", + "required": false, + "description": "Determines the order direction for sorted results. Common values are 'asc' for ascending and 'desc' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_status", + "type": "string", + "required": false, + "description": "The status of the subscriber (e.g., subscribed, unsubscribed, cleaned, pending).", + "enum": null, + "inferrable": true + }, + { + "name": "unique_email_identifier", + "type": "string", + "required": false, + "description": "A unique identifier for the email address across all Mailchimp lists. Use this to filter for a specific member.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdMembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetMailchimpListMembers", + "parameters": { + "list_unique_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "changed_after_timestamp": { + "value": "2023-01-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "email_type": { + "value": "html", + "type": "string", + "required": false + }, + "fields_to_exclude": { + "value": "email_address,status", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "email_address,status,merge_fields", + "type": "string", + "required": false + }, + "filter_by_interest_ids": { + "value": "abc123,def456", + "type": "string", + "required": false + }, + "filter_by_since_last_campaign": { + "value": "subscribed", + "type": "string", + "required": false + }, + "filter_unsubscribed_since": { + "value": "2023-06-01", + "type": "string", + "required": false + }, + "filter_vip_members": { + "value": "true", + "type": "string", + "required": false + }, + "interest_category_id": { + "value": "789xyz", + "type": "string", + "required": false + }, + "interest_match_filter": { + "value": "any", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "opt_in_after_timestamp": { + "value": "2023-01-15T00:00:00+00:00", + "type": "string", + "required": false + }, + "opt_in_before_timestamp": { + "value": "2023-12-31T23:59:59+00:00", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "restrict_change_before_timeframe": { + "value": "2023-05-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "sort_field_for_members": { + "value": "last_name", + "type": "string", + "required": false + }, + "sort_order_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "subscriber_status": { + "value": "subscribed", + "type": "string", + "required": false + }, + "unique_email_identifier": { + "value": "unique_id_12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMailchimpTemplateFolders", + "qualifiedName": "MailchimpMarketingApi.GetMailchimpTemplateFolders", + "fullyQualifiedName": "MailchimpMarketingApi.GetMailchimpTemplateFolders@1.0.0", + "description": "Retrieve all template folders from Mailchimp.\n\nUse this tool to retrieve all folders used in Mailchimp to organize templates. It is helpful for managing and categorizing your email templates.", + "parameters": [ + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of template folder records to return, up to a maximum of 1000. The default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTemplateFolders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetMailchimpTemplateFolders", + "parameters": { + "exclude_fields_list": { + "value": "description,created_at", + "type": "string", + "required": false + }, + "include_fields": { + "value": "id,name", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "20", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMailchimpTemplateInfo", + "qualifiedName": "MailchimpMarketingApi.GetMailchimpTemplateInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetMailchimpTemplateInfo@1.0.0", + "description": "Retrieves detailed information about a specific Mailchimp template.\n\nUse this tool to obtain information about a particular template in Mailchimp by providing the template ID. It is useful for retrieving template details when managing email marketing campaigns.", + "parameters": [ + { + "name": "template_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp template to retrieve information about.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Specify a comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTemplatesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetMailchimpTemplateInfo", + "parameters": { + "template_id": { + "value": "abc123_template_id", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "content.styles,attachments", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,name,create_time,update_time", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMemberActivity", + "qualifiedName": "MailchimpMarketingApi.GetMemberActivity", + "fullyQualifiedName": "MailchimpMarketingApi.GetMemberActivity@1.0.0", + "description": "Retrieve recent email activity for a list member.\n\nCall this tool to get the last 50 activity events for a specific member on a Mailchimp list, including actions like opens, clicks, and unsubscribes.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list you want to query.", + "enum": null, + "inferrable": true + }, + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "MD5 hash of the lowercase email, email address, or contact ID of the list member.", + "enum": null, + "inferrable": true + }, + { + "name": "actions_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of specific member actions to retrieve, such as opens, clicks, and unsubscribes.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_from_activity", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the member activity response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "included_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of specific fields to retrieve for member activity, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdMembersIdActivity'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetMemberActivity", + "parameters": { + "list_unique_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "member_identifier": { + "value": "d41d8cd98f00b204e9800998ecf8427e", + "type": "string", + "required": true + }, + "actions_to_return": { + "value": "opens,clics,unsubscribes", + "type": "string", + "required": false + }, + "exclude_fields_from_activity": { + "value": "field1,field2.subfield", + "type": "string", + "required": false + }, + "included_fields": { + "value": "field3,field4.subfield1,field4.subfield2", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMemberActivityFeed", + "qualifiedName": "MailchimpMarketingApi.GetMemberActivityFeed", + "fullyQualifiedName": "MailchimpMarketingApi.GetMemberActivityFeed@1.0.0", + "description": "Fetch a Mailchimp list member's activity details.\n\nUse this tool to get a detailed record of a member's activities on a specific Mailchimp list, including email opens, link clicks, and unsubscribe actions.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list. Required to retrieve the member's activity data.", + "enum": null, + "inferrable": true + }, + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The MD5 hash of the lowercase version of the list member's email address, or the email address itself, or contact_id.", + "enum": null, + "inferrable": true + }, + { + "name": "activity_type_filters", + "type": "string", + "required": false, + "description": "Comma-separated list of activity types to filter by, such as 'open', 'bounce', or 'click'.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_from_response", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response, use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "The number of activity records to return. Default is 10, max is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdMembersIdActivityFeed'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetMemberActivityFeed", + "parameters": { + "list_unique_id": { + "value": "abc123def456ghi789", + "type": "string", + "required": true + }, + "member_identifier": { + "value": "example@example.com", + "type": "string", + "required": true + }, + "activity_type_filters": { + "value": "open,click", + "type": "string", + "required": false + }, + "exclude_fields_from_response": { + "value": "campaign_id,ip_opt", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "action,timestamp", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMemberGoalEvents", + "qualifiedName": "MailchimpMarketingApi.GetMemberGoalEvents", + "fullyQualifiedName": "MailchimpMarketingApi.GetMemberGoalEvents@1.0.0", + "description": "Retrieve the last 50 goal events for a specific list member.\n\nUse this tool to get the most recent goal achievement events for a member within a particular Mailchimp list. This can be useful for tracking user engagement and performance metrics.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp list. Required for fetching member goal events.", + "enum": null, + "inferrable": true + }, + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The MD5 hash of the lowercase version of the member's email, email address, or contact_id.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of specific fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdMembersIdGoals'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetMemberGoalEvents", + "parameters": { + "list_unique_id": { + "value": "abc12345xyz", + "type": "string", + "required": true + }, + "member_identifier": { + "value": "1a79a4d60de6718e8e5b326e338b98f4", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "members.status,members.timestamp_signup", + "type": "string", + "required": false + }, + "include_fields": { + "value": "members.email_address,members.last_event_date", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMemberNotes", + "qualifiedName": "MailchimpMarketingApi.GetMemberNotes", + "fullyQualifiedName": "MailchimpMarketingApi.GetMemberNotes@1.0.0", + "description": "Retrieve recent notes for a Mailchimp list member.\n\nUse this tool to access the most recent notes associated with a specific member of a Mailchimp list, identified by their subscriber hash.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique ID of the Mailchimp list to retrieve notes for.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_hash", + "type": "string", + "required": true, + "description": "The MD5 hash of the lowercase version of the list member's email address. Used to identify the list member.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of member notes to return, between 1 and 1000. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "order_direction", + "type": "string", + "required": false, + "description": "Specifies the order direction for sorted note results. Accepts 'asc' or 'desc'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_notes_by_field", + "type": "string", + "required": false, + "description": "Specify the field to sort the notes by, e.g., 'created_at' or 'updated_at'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdMembersIdNotes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetMemberNotes", + "parameters": { + "list_id": { + "value": "123abc456def789ghi", + "type": "string", + "required": true + }, + "subscriber_hash": { + "value": "e99a18c428cb38d5f260853678922e03", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "created_at,updated_at", + "type": "string", + "required": false + }, + "include_fields": { + "value": "note,created_by", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "10", + "type": "string", + "required": false + }, + "order_direction": { + "value": "desc", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "sort_notes_by_field": { + "value": "created_at", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMergeFieldInfo", + "qualifiedName": "MailchimpMarketingApi.GetMergeFieldInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetMergeFieldInfo@1.0.0", + "description": "Retrieve information about a specific merge field.\n\nUse this tool to obtain detailed information about a specific merge field in a Mailchimp list. It's useful for accessing customized data fields associated with members of email lists.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique ID of the Mailchimp list to get merge field information from.", + "enum": null, + "inferrable": true + }, + { + "name": "merge_field_id", + "type": "string", + "required": true, + "description": "The unique identifier for the merge field in the list.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_merge_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude using dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Specify the fields to return, using comma-separated dot notation for nested fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdMergeFieldsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetMergeFieldInfo", + "parameters": { + "list_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "merge_field_id": { + "value": "FNAME", + "type": "string", + "required": true + }, + "exclude_merge_fields": { + "value": "merge_fields.OTHER", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "merge_field_id,name", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMonthlyListGrowthSummary", + "qualifiedName": "MailchimpMarketingApi.GetMonthlyListGrowthSummary", + "fullyQualifiedName": "MailchimpMarketingApi.GetMonthlyListGrowthSummary@1.0.0", + "description": "Retrieve monthly summary of a list's growth activity.\n\nUse this tool to get a detailed month-by-month summary of the growth activity for a specific list in Mailchimp. It provides insights into subscriber count changes over time.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific list in Mailchimp. Required for retrieving growth activity.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of records to return, with a default of 10 and a maximum of 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "return_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of specific fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_direction", + "type": "string", + "required": false, + "description": "Determines the sorting order for the results, either ascending or descending.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_by_field", + "type": "string", + "required": false, + "description": "Specify the field by which results should be sorted. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdGrowthHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetMonthlyListGrowthSummary", + "parameters": { + "list_unique_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "exclude_fields_to_return": { + "value": "member_count,unsubscribed_count", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "records_to_return": { + "value": "10", + "type": "string", + "required": false + }, + "return_fields": { + "value": "growth_rate,subscribed_count", + "type": "string", + "required": false + }, + "sort_order_direction": { + "value": "ascending", + "type": "string", + "required": false + }, + "sort_results_by_field": { + "value": "date", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrderLineItems", + "qualifiedName": "MailchimpMarketingApi.GetOrderLineItems", + "fullyQualifiedName": "MailchimpMarketingApi.GetOrderLineItems@1.0.0", + "description": "Retrieve information about order line items.\n\nUse this tool to get detailed information about line items in a specific order from an e-commerce store linked to Mailchimp.", + "parameters": [ + { + "name": "order_id", + "type": "string", + "required": true, + "description": "The unique identifier for the order within the store. Required to specify which order's line items to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": true, + "description": "The unique identifier for the store. Used to specify which store's order line items to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of line item records to return, between 1 and 1000. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination, default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdOrdersIdLines'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetOrderLineItems", + "parameters": { + "order_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "store_id": { + "value": "store_001", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "sku,discount", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "product_id,name,quantity,price", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "20", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProductImageInfo", + "qualifiedName": "MailchimpMarketingApi.GetProductImageInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetProductImageInfo@1.0.0", + "description": "Retrieve details of a specific product image in an eCommerce store.\n\nUse this tool to get information about a specific image associated with a product in an eCommerce store. Ideal for obtaining image metadata or details for display or analysis purposes.", + "parameters": [ + { + "name": "product_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the product in the store.", + "enum": null, + "inferrable": true + }, + { + "name": "product_image_id", + "type": "string", + "required": true, + "description": "The unique identifier for the product image to retrieve details about.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the store. Used to specify the store whose product image information is to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude, using dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdProductsIdImagesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetProductImageInfo", + "parameters": { + "product_identifier": { + "value": "SKU12345", + "type": "string", + "required": true + }, + "product_image_id": { + "value": "IMG7890", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "STORE001", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "metadata.description,metadata.date_uploaded", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "image_url,image_alt_text,image_dimensions", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProductImages", + "qualifiedName": "MailchimpMarketingApi.GetProductImages", + "fullyQualifiedName": "MailchimpMarketingApi.GetProductImages@1.0.0", + "description": "Retrieve information about a product's images.\n\nCall this tool to obtain details about images associated with a specific product in an e-commerce store.", + "parameters": [ + { + "name": "product_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a product in a specific store. Required to retrieve product image details.", + "enum": null, + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": true, + "description": "The unique identifier for the e-commerce store.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of product image records to return, ranging from 1 to 1000. Defaults to 10 if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdProductsIdImages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetProductImages", + "parameters": { + "product_identifier": { + "value": "12345ABC", + "type": "string", + "required": true + }, + "store_id": { + "value": "store987", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "thumbnail.url,description", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "images.url,images.alt_text", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "10", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProductInfo", + "qualifiedName": "MailchimpMarketingApi.GetProductInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetProductInfo@1.0.0", + "description": "Get information about a specific product from an ecommerce store.\n\nUse this tool to retrieve detailed information on a specific product from a specified ecommerce store, identified by store and product IDs.", + "parameters": [ + { + "name": "product_id", + "type": "string", + "required": true, + "description": "The unique identifier for the product within a store. This ID is required to fetch specific product details.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store from which to retrieve the product information.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated fields to exclude in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdProductsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetProductInfo", + "parameters": { + "product_id": { + "value": "12345", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "my_ecommerce_store", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "reviews.rating,inventory", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "name,price,description,image_url", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProductVariantInfo", + "qualifiedName": "MailchimpMarketingApi.GetProductVariantInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetProductVariantInfo@1.0.0", + "description": "Retrieve information on a specific product variant.\n\nCall this tool to get detailed information about a specific product variant in an e-commerce store. Useful for fetching variant details such as size, color, price, or stock status from a specified store's product.", + "parameters": [ + { + "name": "product_id", + "type": "string", + "required": true, + "description": "The ID of the product in the specified store. Required to retrieve variant details.", + "enum": null, + "inferrable": true + }, + { + "name": "product_variant_id", + "type": "string", + "required": true, + "description": "The unique identifier for the product variant in the store.", + "enum": null, + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": true, + "description": "The unique identifier for the store to query the product variant details.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude in the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of product variant fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdProductsIdVariantsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetProductVariantInfo", + "parameters": { + "product_id": { + "value": "12345", + "type": "string", + "required": true + }, + "product_variant_id": { + "value": "abcde-67890", + "type": "string", + "required": true + }, + "store_id": { + "value": "store-001", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "price.cost_price,inventory", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "price.retail_price,color,size,stock", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProductVariantsInfo", + "qualifiedName": "MailchimpMarketingApi.GetProductVariantsInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetProductVariantsInfo@1.0.0", + "description": "Retrieve information on product variants from a store.\n\nUse this tool to obtain detailed information about the variants of a specific product in an e-commerce store. Ideal for cases where users need to know different versions or options available for a product.", + "parameters": [ + { + "name": "product_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the product within the store.", + "enum": null, + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": true, + "description": "The unique identifier for the store. Required to fetch product variant data.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Specify fields to exclude using a comma-separated list. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of product variant records to return, default is 10, max is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdProductsIdVariants'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetProductVariantsInfo", + "parameters": { + "product_identifier": { + "value": "SKU12345", + "type": "string", + "required": true + }, + "store_id": { + "value": "store_001", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "pricing.discount,inventory.stock", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,name,variant_options", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "25", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPromoCodeInfo", + "qualifiedName": "MailchimpMarketingApi.GetPromoCodeInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetPromoCodeInfo@1.0.0", + "description": "Retrieve details of a specific promo code.\n\nUse this tool to get detailed information about a specific promo code associated with a particular store in the Mailchimp Marketing service.", + "parameters": [ + { + "name": "promo_code_id", + "type": "string", + "required": true, + "description": "The unique identifier for the promo code associated with a store.", + "enum": null, + "inferrable": true + }, + { + "name": "promo_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the promo rule of a store. This is required to fetch specific promo code information.", + "enum": null, + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": true, + "description": "The unique identifier for the store. Required to specify which store's promo code information to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdPromocodesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetPromoCodeInfo", + "parameters": { + "promo_code_id": { + "value": "PROMO12345", + "type": "string", + "required": true + }, + "promo_rule_id": { + "value": "RULE67890", + "type": "string", + "required": true + }, + "store_id": { + "value": "STORE54321", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "details.expiry_date", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "code,discount,usage_limit", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPromoRuleInfo", + "qualifiedName": "MailchimpMarketingApi.GetPromoRuleInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetPromoRuleInfo@1.0.0", + "description": "Retrieve information about a specific promo rule in an ecommerce store.", + "parameters": [ + { + "name": "promo_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the promo rule in the store. Required to fetch specific rule details.", + "enum": null, + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": true, + "description": "The unique identifier for the ecommerce store. Required to fetch promo rule details.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the promo rule data. Use dot notation to reference sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of specific fields to return using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdPromorulesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetPromoRuleInfo", + "parameters": { + "promo_rule_id": { + "value": "PROMO12345", + "type": "string", + "required": true + }, + "store_id": { + "value": "STORE67890", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "discount_amount,expiration_date", + "type": "string", + "required": false + }, + "include_fields": { + "value": "rule_name,conditions", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRemovedAutomationSubscribers", + "qualifiedName": "MailchimpMarketingApi.GetRemovedAutomationSubscribers", + "fullyQualifiedName": "MailchimpMarketingApi.GetRemovedAutomationSubscribers@1.0.0", + "description": "Get details on subscribers removed from automation workflows.\n\nUse this tool to obtain information about subscribers who have been removed from a specific classic automation workflow in Mailchimp.", + "parameters": [ + { + "name": "automation_workflow_id", + "type": "string", + "required": true, + "description": "The unique ID for identifying the specific automation workflow in Mailchimp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationsIdRemovedSubscribers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetRemovedAutomationSubscribers", + "parameters": { + "automation_workflow_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRemovedSubscriberInfo", + "qualifiedName": "MailchimpMarketingApi.GetRemovedSubscriberInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetRemovedSubscriberInfo@1.0.0", + "description": "Retrieve details about a removed subscriber from automation.\n\nUse this tool to get specific information about a subscriber who was removed from a classic Mailchimp automation workflow by providing the workflow ID and subscriber hash.", + "parameters": [ + { + "name": "automation_workflow_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp automation workflow. It is required to identify from which workflow the subscriber was removed.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_hash", + "type": "string", + "required": true, + "description": "MD5 hash of the lowercase version of the subscriber's email address to identify the removed member.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationsIdRemovedSubscribersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetRemovedSubscriberInfo", + "parameters": { + "automation_workflow_id": { + "value": "abc12345xyz", + "type": "string", + "required": true + }, + "subscriber_hash": { + "value": "5eb63bbbe01eeed093cb22bb8f5ac42", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSegmentInfo", + "qualifiedName": "MailchimpMarketingApi.GetSegmentInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetSegmentInfo@1.0.0", + "description": "Retrieve information about a specific Mailchimp segment.\n\nUse this tool to get detailed information about a specific segment in a Mailchimp list by providing the list and segment IDs.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list to fetch segment information from.", + "enum": null, + "inferrable": true + }, + { + "name": "segment_id", + "type": "string", + "required": true, + "description": "Provide the unique ID for the segment you want information on.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_cleaned_members", + "type": "string", + "required": false, + "description": "Set to 'true' to include cleaned members in the response. Cleaned members are those deleted due to bounce or other delivery issues.", + "enum": null, + "inferrable": true + }, + { + "name": "include_transactional_members", + "type": "string", + "required": false, + "description": "Set to 'true' to include transactional members in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_unsubscribed_members", + "type": "string", + "required": false, + "description": "Set to 'true' to include unsubscribed members in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdSegmentsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetSegmentInfo", + "parameters": { + "list_unique_id": { + "value": "12345abcdef", + "type": "string", + "required": true + }, + "segment_id": { + "value": "67890ghijkl", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "members.email_address,members.status", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "name,members.id,members.status", + "type": "string", + "required": false + }, + "include_cleaned_members": { + "value": "true", + "type": "string", + "required": false + }, + "include_transactional_members": { + "value": "false", + "type": "string", + "required": false + }, + "include_unsubscribed_members": { + "value": "true", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSegmentMembersInfo", + "qualifiedName": "MailchimpMarketingApi.GetSegmentMembersInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetSegmentMembersInfo@1.0.0", + "description": "Get information about members in a saved segment.\n\nUse this tool to retrieve information about members within a specified segment. It is useful when you need details on who is part of a particular saved segment in a mailing list.", + "parameters": [ + { + "name": "list_identifier", + "type": "string", + "required": true, + "description": "The unique ID representing the mailing list from which the segment members will be retrieved. This ID is required to specify the context of the segment.", + "enum": null, + "inferrable": true + }, + { + "name": "segment_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the segment to retrieve members from.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_cleaned_members", + "type": "string", + "required": false, + "description": "Specify 'true' to include cleaned (invalid or bounced) members in the response. Otherwise, specify 'false'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_transactional_members", + "type": "string", + "required": false, + "description": "Set to true to include transactional members in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_unsubscribed_members", + "type": "string", + "required": false, + "description": "Specify 'true' to include unsubscribed members in the response, 'false' to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "included_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of specific fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination purposes. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "records_to_return", + "type": "string", + "required": false, + "description": "The number of records to return. Default is 10; maximum is 1000.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdSegmentsIdMembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetSegmentMembersInfo", + "parameters": { + "list_identifier": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + }, + "segment_unique_id": { + "value": "segment_001", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "email_address,merge_fields.notes", + "type": "string", + "required": false + }, + "include_cleaned_members": { + "value": "true", + "type": "string", + "required": false + }, + "include_transactional_members": { + "value": "false", + "type": "string", + "required": false + }, + "include_unsubscribed_members": { + "value": "true", + "type": "string", + "required": false + }, + "included_fields": { + "value": "email_address,merge_fields.first_name,merge_fields.last_name", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "records_to_return": { + "value": "50", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSpecificOrderInfo", + "qualifiedName": "MailchimpMarketingApi.GetSpecificOrderInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetSpecificOrderInfo@1.0.0", + "description": "Retrieve information about a specific order in a store.\n\nUse this tool to obtain details about a specific order from an e-commerce store. It should be called when needing to access order information using the order ID and store ID.", + "parameters": [ + { + "name": "order_id", + "type": "string", + "required": true, + "description": "The unique identifier for the order in a store. It is required to retrieve specific order details.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store. Required to fetch order information.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdOrdersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetSpecificOrderInfo", + "parameters": { + "order_id": { + "value": "ORD123456", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "STORE7890", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "shipping_address.payment_info", + "type": "string", + "required": false + }, + "include_fields": { + "value": "order_date,total_amount,status", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSpecificOrderLineItemInfo", + "qualifiedName": "MailchimpMarketingApi.GetSpecificOrderLineItemInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetSpecificOrderLineItemInfo@1.0.0", + "description": "Get details about a specific order line item.\n\nUse this tool to retrieve information about a specific order line item from an e-commerce store in Mailchimp. Useful for obtaining order details such as product name, quantity, price, etc., for a particular order line.", + "parameters": [ + { + "name": "order_id", + "type": "string", + "required": true, + "description": "The unique identifier for the order within a store. Required to fetch details of the specific order line item.", + "enum": null, + "inferrable": true + }, + { + "name": "order_line_item_id", + "type": "string", + "required": true, + "description": "The unique identifier for the line item in the order.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store. This is required to specify which store's data to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of specific fields to exclude from the response. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + }, + { + "name": "return_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdOrdersIdLinesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetSpecificOrderLineItemInfo", + "parameters": { + "order_id": { + "value": "12345ABC", + "type": "string", + "required": true + }, + "order_line_item_id": { + "value": "67890XYZ", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_001", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "shipping_details,coupon", + "type": "string", + "required": false + }, + "return_fields": { + "value": "product_name,quantity,price", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStoreCartsInfo", + "qualifiedName": "MailchimpMarketingApi.GetStoreCartsInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetStoreCartsInfo@1.0.0", + "description": "Retrieve information about a store's ecommerce carts.\n\nUse this tool to get detailed information about carts within a specific store in the ecommerce system. Ideal for understanding cart statuses, contents, and customer interactions.", + "parameters": [ + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store to retrieve cart information.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response, using dot notation for nested objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of records to return, up to a maximum of 1000. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdCarts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetStoreCartsInfo", + "parameters": { + "store_identifier": { + "value": "store_12345", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "customer.name,items.quantity", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "cart.id,cart.total,customer.email", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStoreCustomersInfo", + "qualifiedName": "MailchimpMarketingApi.GetStoreCustomersInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetStoreCustomersInfo@1.0.0", + "description": "Retrieve information about a store's customers.\n\nUse this tool to get detailed information about the customers of a specific e-commerce store. Ideal for accessing customer data to analyze or manage store interactions.", + "parameters": [ + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the e-commerce store to retrieve customer information.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated fields to exclude in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_email_address", + "type": "string", + "required": false, + "description": "Restrict the response to customers matching the specified email address.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "The number of customer records to return. Default is 10, maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdCustomers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetStoreCustomersInfo", + "parameters": { + "store_identifier": { + "value": "12345-abcde", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "phone.number,addresses.shipping", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "email.first_name,email.last_name,addresses.billing", + "type": "string", + "required": false + }, + "filter_by_email_address": { + "value": "example@example.com", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "20", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStoreOrdersInfo", + "qualifiedName": "MailchimpMarketingApi.GetStoreOrdersInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetStoreOrdersInfo@1.0.0", + "description": "Retrieve information about a store's orders via Mailchimp.\n\nUse this tool to get detailed information about the orders of a specified store from Mailchimp's ecommerce platform.", + "parameters": [ + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store whose orders information is to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_order_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of order fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_customer_id", + "type": "string", + "required": false, + "description": "Restrict results to orders made by a specific customer using their unique customer ID.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of records to return, between 1 and 1000, with a default of 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_campaign_id", + "type": "string", + "required": false, + "description": "Restrict results to orders with the specified `campaign_id`.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_outreach_orders", + "type": "string", + "required": false, + "description": "Indicate whether to restrict results to orders with an outreach attached, such as an email campaign or Facebook ad. Accepts 'true' or 'false'.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_outreach_id", + "type": "string", + "required": false, + "description": "Restrict results to orders with a specific outreach ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdOrders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetStoreOrdersInfo", + "parameters": { + "store_identifier": { + "value": "store_12345", + "type": "string", + "required": true + }, + "exclude_order_fields": { + "value": "shipping.address,shipping.tracking", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,total,customer.email,created_at", + "type": "string", + "required": false + }, + "filter_by_customer_id": { + "value": "cust_67890", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "5", + "type": "string", + "required": false + }, + "restrict_to_campaign_id": { + "value": "campaign_abc123", + "type": "string", + "required": false + }, + "restrict_to_outreach_orders": { + "value": "true", + "type": "string", + "required": false + }, + "specific_outreach_id": { + "value": "outreach_xyz789", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStoreProductsInfo", + "qualifiedName": "MailchimpMarketingApi.GetStoreProductsInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetStoreProductsInfo@1.0.0", + "description": "Get information about a store's products from Mailchimp.\n\nThis tool retrieves detailed information about products in a specified ecommerce store using Mailchimp's marketing API. It should be called when information about a store's inventory is needed.", + "parameters": [ + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store whose product information is being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of product records to return, from 1 to 1000. The default value is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "return_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of specific fields to return. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdProducts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetStoreProductsInfo", + "parameters": { + "store_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "supplier_info,inventory", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "return_fields_list": { + "value": "id,name,price,availability", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStorePromoCodes", + "qualifiedName": "MailchimpMarketingApi.GetStorePromoCodes", + "fullyQualifiedName": "MailchimpMarketingApi.GetStorePromoCodes@1.0.0", + "description": "Retrieve information about promo codes for a specific store.\n\nUse this tool to get detailed information about promo codes for a given store, which can help in managing promotions and discounts.", + "parameters": [ + { + "name": "promo_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the promotion rule of a store to fetch promo codes.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store to get promo codes from. Required to specify which store's promo codes to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Specify a comma-separated list of fields to exclude from the returned data. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of specific fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "The number of promo code records to return. Default is 10, with a maximum of 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination purposes. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdPromocodes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetStorePromoCodes", + "parameters": { + "promo_rule_id": { + "value": "promo12345", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store67890", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "expired,usage_count", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "code,discount_type,amount", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStorePromoRules", + "qualifiedName": "MailchimpMarketingApi.GetStorePromoRules", + "fullyQualifiedName": "MailchimpMarketingApi.GetStorePromoRules@1.0.0", + "description": "Retrieve promo rules for a specified store.\n\nUse this tool to get detailed information about the promotional rules set up for a specific e-commerce store using its ID.", + "parameters": [ + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the store to retrieve promo rules from.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination, with a default value of 0.", + "enum": null, + "inferrable": true + }, + { + "name": "records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of promo rule records to return. Default is 10, maximum is 1000.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdPromorules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetStorePromoRules", + "parameters": { + "store_identifier": { + "value": "store_12345", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "discounts.coupon_code,description", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,name,active,discounts", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "records_to_return": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSubscriberClickDetails", + "qualifiedName": "MailchimpMarketingApi.GetSubscriberClickDetails", + "fullyQualifiedName": "MailchimpMarketingApi.GetSubscriberClickDetails@1.0.0", + "description": "Retrieve details of a subscriber's link click in a campaign.\n\nThis tool fetches information about a specific subscriber who clicked a link within a specific campaign in Mailchimp. It should be called when you need to analyze subscriber engagement by retrieving who clicked on which links in a campaign.", + "parameters": [ + { + "name": "campaign_id", + "type": "string", + "required": true, + "description": "The unique identifier for the campaign to get subscriber click details.", + "enum": null, + "inferrable": true + }, + { + "name": "link_identifier", + "type": "string", + "required": true, + "description": "The unique ID for the link clicked within a campaign. Use to specify which link's click details to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_email_hash", + "type": "string", + "required": true, + "description": "The MD5 hash of the lowercase version of the subscriber's email address.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the result, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of specific fields to include in the response. Use dot notation for nested objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdClickDetailsIdMembersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetSubscriberClickDetails", + "parameters": { + "campaign_id": { + "value": "1234567890abcde", + "type": "string", + "required": true + }, + "link_identifier": { + "value": "link123", + "type": "string", + "required": true + }, + "subscriber_email_hash": { + "value": "a1b2c3d4e5f6g7h8i9j0", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "field1,field2", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "fieldA,fieldB.subField", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSurveyDetails", + "qualifiedName": "MailchimpMarketingApi.GetSurveyDetails", + "fullyQualifiedName": "MailchimpMarketingApi.GetSurveyDetails@1.0.0", + "description": "Retrieve details about a specific Mailchimp survey.\n\nUse this tool to gather detailed information about a particular survey associated with a specific list in Mailchimp. It is helpful for understanding survey content, status, and related data.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp list associated with the survey.", + "enum": null, + "inferrable": true + }, + { + "name": "survey_id", + "type": "string", + "required": true, + "description": "The unique ID of the survey to retrieve details for in Mailchimp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdSurveysId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetSurveyDetails", + "parameters": { + "list_unique_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "survey_id": { + "value": "xyz987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSurveyQuestionAnswers", + "qualifiedName": "MailchimpMarketingApi.GetSurveyQuestionAnswers", + "fullyQualifiedName": "MailchimpMarketingApi.GetSurveyQuestionAnswers@1.0.0", + "description": "Retrieve answers for a specific survey question.\n\nUse this tool to get answers for a particular question in a given survey. Useful for analyzing survey responses to specific questions within Mailchimp.", + "parameters": [ + { + "name": "survey_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the survey whose question answers are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "survey_question_id", + "type": "string", + "required": true, + "description": "The unique identifier for the survey question to retrieve answers from.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Specify fields to exclude from the response using a comma-separated list. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_respondent_familiarity", + "type": "string", + "required": false, + "description": "Filter survey responses based on the familiarity level of the respondents. Accepts a string value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportingSurveysIdQuestionsIdAnswers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetSurveyQuestionAnswers", + "parameters": { + "survey_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "survey_question_id": { + "value": "98765-zyxwv-54321-tsrqp", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "responses.comment,responses.timestamp", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "responses.answer,responses.respondent_id", + "type": "string", + "required": false + }, + "filter_by_respondent_familiarity": { + "value": "familiar", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSurveyQuestionReport", + "qualifiedName": "MailchimpMarketingApi.GetSurveyQuestionReport", + "fullyQualifiedName": "MailchimpMarketingApi.GetSurveyQuestionReport@1.0.0", + "description": "Get report data for a specific survey question.\n\nUse this tool to retrieve detailed report information for a specific question in a survey. Useful for analyzing responses and performance of survey questions.", + "parameters": [ + { + "name": "survey_id", + "type": "string", + "required": true, + "description": "The unique identifier for the survey. Required to retrieve specific survey question reports.", + "enum": null, + "inferrable": true + }, + { + "name": "survey_question_id", + "type": "string", + "required": true, + "description": "The unique ID of the survey question to get the report for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the survey question report, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportingSurveysIdQuestionsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetSurveyQuestionReport", + "parameters": { + "survey_id": { + "value": "12345-abcde", + "type": "string", + "required": true + }, + "survey_question_id": { + "value": "q1x2y3z", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "responses.detailed", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "responses.summary,metadata.timestamp", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSurveyQuestionReports", + "qualifiedName": "MailchimpMarketingApi.GetSurveyQuestionReports", + "fullyQualifiedName": "MailchimpMarketingApi.GetSurveyQuestionReports@1.0.0", + "description": "Retrieve reports for survey questions by survey ID.\n\nUse this tool to obtain data regarding the responses to each question within a specific survey. Ideal for analyzing survey results and gaining insights.", + "parameters": [ + { + "name": "survey_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the survey to retrieve question reports.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_from_report", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the survey report. Use dot notation for nested fields.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return for survey questions. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportingSurveysIdQuestions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetSurveyQuestionReports", + "parameters": { + "survey_identifier": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "exclude_fields_from_report": { + "value": "responses.comments,responses.timestamp", + "type": "string", + "required": false + }, + "include_fields": { + "value": "questions.question_text,questions.responses_count", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSurveyReport", + "qualifiedName": "MailchimpMarketingApi.GetSurveyReport", + "fullyQualifiedName": "MailchimpMarketingApi.GetSurveyReport@1.0.0", + "description": "Retrieve report details for a specific survey.\n\nCall this tool to get comprehensive report details for a specified survey. Use this to analyze survey responses and results.", + "parameters": [ + { + "name": "survey_id", + "type": "string", + "required": true, + "description": "The unique ID of the survey to retrieve the report for.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the survey report. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the survey report. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportingSurveysId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetSurveyReport", + "parameters": { + "survey_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "responses.respondent_id,responses.timestamp", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "survey_id,title,results", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSurveyReports", + "qualifiedName": "MailchimpMarketingApi.GetSurveyReports", + "fullyQualifiedName": "MailchimpMarketingApi.GetSurveyReports@1.0.0", + "description": "Retrieve detailed reports for marketing surveys.\n\nUse this tool to obtain detailed reports and insights from marketing surveys. Ideal for analyzing survey results and performance metrics.", + "parameters": [ + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from survey reports. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records", + "type": "string", + "required": false, + "description": "The number of survey report records to return. Defaults to 10. Max value is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination, default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportingSurveys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetSurveyReports", + "parameters": { + "fields_to_exclude": { + "value": "responses.comments,metadata.created_at", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "survey_id,title,responses", + "type": "string", + "required": false + }, + "number_of_records": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSurveyResponse", + "qualifiedName": "MailchimpMarketingApi.GetSurveyResponse", + "fullyQualifiedName": "MailchimpMarketingApi.GetSurveyResponse@1.0.0", + "description": "Retrieve details of a specific survey response.\n\nCall this tool to get detailed information of a particular survey response using its survey and response IDs.", + "parameters": [ + { + "name": "survey_id", + "type": "string", + "required": true, + "description": "The ID of the survey to retrieve the response from.", + "enum": null, + "inferrable": true + }, + { + "name": "survey_response_id", + "type": "string", + "required": true, + "description": "The ID of the specific survey response to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportingSurveysIdResponsesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetSurveyResponse", + "parameters": { + "survey_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "survey_response_id": { + "value": "response67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSurveyResponses", + "qualifiedName": "MailchimpMarketingApi.GetSurveyResponses", + "fullyQualifiedName": "MailchimpMarketingApi.GetSurveyResponses@1.0.0", + "description": "Retrieve responses to a specific survey.\n\nUse this tool to obtain responses from a specific survey when you have the survey ID.", + "parameters": [ + { + "name": "survey_id", + "type": "string", + "required": true, + "description": "The unique identifier for the survey to retrieve responses for.", + "enum": null, + "inferrable": true + }, + { + "name": "chosen_answer_id", + "type": "string", + "required": false, + "description": "The ID of the selected answer option to filter survey responses.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_survey_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from survey responses. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_respondent_familiarity", + "type": "string", + "required": false, + "description": "Filter survey responses by respondents' familiarity level. Provide a familiarity string to narrow down results.", + "enum": null, + "inferrable": true + }, + { + "name": "included_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return in the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "question_id", + "type": "string", + "required": false, + "description": "The ID of the question that was answered to filter responses.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportingSurveysIdResponses'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetSurveyResponses", + "parameters": { + "survey_id": { + "value": "abc123xyz789", + "type": "string", + "required": true + }, + "chosen_answer_id": { + "value": "option_1", + "type": "string", + "required": false + }, + "exclude_survey_fields": { + "value": "anonymous_response,created_date", + "type": "string", + "required": false + }, + "filter_by_respondent_familiarity": { + "value": "expert", + "type": "string", + "required": false + }, + "included_fields": { + "value": "responses.answer,respondent.email", + "type": "string", + "required": false + }, + "question_id": { + "value": "q_id_456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTemplateEditableSections", + "qualifiedName": "MailchimpMarketingApi.GetTemplateEditableSections", + "fullyQualifiedName": "MailchimpMarketingApi.GetTemplateEditableSections@1.0.0", + "description": "Retrieve editable sections and default content of a template.\n\nUse this tool to get the sections you can edit in a Mailchimp template, along with each section's default content. It is helpful for understanding which parts of a template can be customized.", + "parameters": [ + { + "name": "template_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp template to retrieve editable sections.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to include in the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTemplatesIdDefaultContent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetTemplateEditableSections", + "parameters": { + "template_unique_id": { + "value": "12345678-abcd-ef01-2345-6789abcdef01", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "content,style", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "editable_sections,default_content", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTemplateFolderInfo", + "qualifiedName": "MailchimpMarketingApi.GetTemplateFolderInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetTemplateFolderInfo@1.0.0", + "description": "Retrieve details of a specific template folder.\n\nUse this tool to get information about a particular folder used for organizing templates in Mailchimp. This is helpful when you need to know more about how your templates are categorized.", + "parameters": [ + { + "name": "template_folder_id", + "type": "string", + "required": true, + "description": "The unique ID for the template folder to retrieve information about.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + }, + { + "name": "included_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return for the folder. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTemplateFoldersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetTemplateFolderInfo", + "parameters": { + "template_folder_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "created_at,updated_at", + "type": "string", + "required": false + }, + "included_fields": { + "value": "id,name", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTopEmailClients", + "qualifiedName": "MailchimpMarketingApi.GetTopEmailClients", + "fullyQualifiedName": "MailchimpMarketingApi.GetTopEmailClients@1.0.0", + "description": "Retrieve the top email clients from a specific list.\n\nThis tool retrieves a list of the top email clients based on user-agent strings for a specified list ID. It should be called when there's a need to analyze or report on the most popular email clients among subscribers of a particular list.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the email list to retrieve client data from.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdClients'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetTopEmailClients", + "parameters": { + "list_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "created_at,updated_at", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "email_client,name,percent", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUnsubscribedCampaignMembers", + "qualifiedName": "MailchimpMarketingApi.GetUnsubscribedCampaignMembers", + "fullyQualifiedName": "MailchimpMarketingApi.GetUnsubscribedCampaignMembers@1.0.0", + "description": "Get details of members unsubscribed from a specific campaign.\n\nUse this tool to retrieve detailed information about members who have unsubscribed from a specified marketing campaign.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the marketing campaign to retrieve unsubscribed members information.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of records to return. Default is 10 and maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination, with a default value of 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdUnsubscribed'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetUnsubscribedCampaignMembers", + "parameters": { + "campaign_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "email_address,merge_fields", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "email_address,status,unsubscribed_at", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUnsubscribedMemberInfo", + "qualifiedName": "MailchimpMarketingApi.GetUnsubscribedMemberInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetUnsubscribedMemberInfo@1.0.0", + "description": "Retrieve info on an unsubscribed list member from a campaign.\n\nUse this tool to get information about a specific list member who has unsubscribed from a campaign in Mailchimp.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_email_hash", + "type": "string", + "required": true, + "description": "The MD5 hash of the lowercase version of the list member's email address for identification.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A list of fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "include_fields", + "type": "string", + "required": false, + "description": "Specify which fields to return, using a comma-separated list with dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdUnsubscribedId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetUnsubscribedMemberInfo", + "parameters": { + "campaign_unique_id": { + "value": "abc123def456ghi789", + "type": "string", + "required": true + }, + "subscriber_email_hash": { + "value": "5d41402abc4b2a76b9719d911017c592", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "emails.type,emails.email", + "type": "string", + "required": false + }, + "include_fields": { + "value": "status,email_address,merge_fields", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetVerifiedMailchimpDomains", + "qualifiedName": "MailchimpMarketingApi.GetVerifiedMailchimpDomains", + "fullyQualifiedName": "MailchimpMarketingApi.GetVerifiedMailchimpDomains@1.0.0", + "description": "Retrieve all verified sending domains for a Mailchimp account.\n\nThis tool retrieves the list of all sending domains verified on a Mailchimp account. It should be called when users want to view their registered sending domains.", + "parameters": [], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getVerifiedDomains'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetVerifiedMailchimpDomains", + "parameters": {}, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWebhookInfo", + "qualifiedName": "MailchimpMarketingApi.GetWebhookInfo", + "fullyQualifiedName": "MailchimpMarketingApi.GetWebhookInfo@1.0.0", + "description": "Retrieve details of a specific Mailchimp webhook.\n\nUse this tool to get detailed information about a specific webhook in your Mailchimp list by providing the list and webhook IDs.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list to retrieve the webhook information.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "Provide the unique ID of the webhook to retrieve its information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdWebhooksId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.GetWebhookInfo", + "parameters": { + "list_unique_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "webhook_id": { + "value": "67890fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListFileManagerFolders", + "qualifiedName": "MailchimpMarketingApi.ListFileManagerFolders", + "fullyQualifiedName": "MailchimpMarketingApi.ListFileManagerFolders@1.0.0", + "description": "Retrieve a list of folders from the File Manager.\n\nThis tool is used to obtain a list of all folders available in the File Manager, which is helpful for organizing and accessing files efficiently.", + "parameters": [ + { + "name": "created_after_date", + "type": "string", + "required": false, + "description": "Restrict the response to files created after the specified date in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "created_by_user", + "type": "string", + "required": false, + "description": "The Mailchimp account user who created the File Manager file.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude from the response. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specify the number of folder records to return, from 1 to 1000. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_files_created_before", + "type": "string", + "required": false, + "description": "Restrict the response to files created before the specified date using ISO 8601 format, e.g., 2015-10-21T15:41:36+00:00.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFileManagerFolders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.ListFileManagerFolders", + "parameters": { + "created_after_date": { + "value": "2023-01-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "created_by_user": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "exclude_fields": { + "value": "last_modified,created_by", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,name,created_date", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "20", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "restrict_to_files_created_before": { + "value": "2023-12-31T23:59:59+00:00", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageMailchimpListMembers", + "qualifiedName": "MailchimpMarketingApi.ManageMailchimpListMembers", + "fullyQualifiedName": "MailchimpMarketingApi.ManageMailchimpListMembers@1.0.0", + "description": "Batch subscribe or unsubscribe members in a Mailchimp list.\n\n Use this tool to add or remove multiple members from a specific Mailchimp list. Ideal for managing subscriber lists efficiently.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "list_id", + "type": "string", + "required": false, + "description": "The unique ID for the specific Mailchimp list to manage. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_incomplete_merge_fields", + "type": "string", + "required": false, + "description": "Allows member data without required merge fields if set to true. Defaults to false. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "ignore_duplicate_members", + "type": "string", + "required": false, + "description": "Set to true to ignore duplicate entries in the batch request, saving the first occurrence. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.ManageMailchimpListMembers", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "list_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "allow_incomplete_merge_fields": { + "value": "true", + "type": "string", + "required": false + }, + "ignore_duplicate_members": { + "value": "true", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"members\":[{\"email_address\":\"example1@example.com\",\"status\":\"subscribed\"},{\"email_address\":\"example2@example.com\",\"status\":\"unsubscribed\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ModifyProductVariant", + "qualifiedName": "MailchimpMarketingApi.ModifyProductVariant", + "fullyQualifiedName": "MailchimpMarketingApi.ModifyProductVariant@1.0.0", + "description": "Update a product variant in an e-commerce store.\n\n Use this tool to update the details of a specific product variant in a designated e-commerce store. This is useful for changing attributes of a variant, such as pricing, stock level, or other details.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "A unique identifier for the store where the product variant will be updated. Must be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "product_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for a product in a store. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "product_variant_id", + "type": "string", + "required": false, + "description": "The ID for the product variant to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchEcommerceStoresIdProductsIdVariantsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.ModifyProductVariant", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_12345", + "type": "string", + "required": false + }, + "product_identifier": { + "value": "product_67890", + "type": "string", + "required": false + }, + "product_variant_id": { + "value": "variant_abc", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"price\": \"29.99\", \"stock\": 50, \"attributes\": {\"color\": \"blue\", \"size\": \"M\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PauseAutomatedEmail", + "qualifiedName": "MailchimpMarketingApi.PauseAutomatedEmail", + "fullyQualifiedName": "MailchimpMarketingApi.PauseAutomatedEmail@1.0.0", + "description": "Pause an automated email in a Mailchimp workflow.\n\nUse this tool to pause a specific automated email within a Mailchimp automation workflow. This can be useful when you need to temporarily stop sending an ongoing sequence.", + "parameters": [ + { + "name": "automation_workflow_email_id", + "type": "string", + "required": true, + "description": "The unique ID for the automation workflow email to be paused.", + "enum": null, + "inferrable": true + }, + { + "name": "automation_workflow_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp automation workflow to pause.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postAutomationsIdEmailsIdActionsPause'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.PauseAutomatedEmail", + "parameters": { + "automation_workflow_email_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "automation_workflow_id": { + "value": "workflow789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PauseAutomationEmails", + "qualifiedName": "MailchimpMarketingApi.PauseAutomationEmails", + "fullyQualifiedName": "MailchimpMarketingApi.PauseAutomationEmails@1.0.0", + "description": "Pause emails in a specific automation workflow.\n\nUse this tool to pause all emails in a specified classic automation workflow in Mailchimp. Ideal for temporarily halting scheduled email deliveries.", + "parameters": [ + { + "name": "automation_workflow_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific automation workflow to be paused.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postAutomationsIdActionsPauseAllEmails'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.PauseAutomationEmails", + "parameters": { + "automation_workflow_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PauseRssCampaign", + "qualifiedName": "MailchimpMarketingApi.PauseRssCampaign", + "fullyQualifiedName": "MailchimpMarketingApi.PauseRssCampaign@1.0.0", + "description": "Pause an RSS-Driven campaign.\n\nUse this tool to pause an ongoing RSS-Driven campaign in Mailchimp Marketing. It should be called when you need to temporarily stop a campaign without deleting it.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the RSS-Driven campaign you want to pause. It should be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postCampaignsIdActionsPause'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.PauseRssCampaign", + "parameters": { + "campaign_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PublishLandingPage", + "qualifiedName": "MailchimpMarketingApi.PublishLandingPage", + "fullyQualifiedName": "MailchimpMarketingApi.PublishLandingPage@1.0.0", + "description": "Publishes a landing page from draft or edited state.\n\nUse this tool to publish a landing page that is currently in draft, unpublished, or has been edited after a previous publication.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the landing page to publish.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postLandingPageIdActionsPublish'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.PublishLandingPage", + "parameters": { + "landing_page_id": { + "value": "abc123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PublishMailchimpSurvey", + "qualifiedName": "MailchimpMarketingApi.PublishMailchimpSurvey", + "fullyQualifiedName": "MailchimpMarketingApi.PublishMailchimpSurvey@1.0.0", + "description": "Publishes a Mailchimp survey from draft to published status.\n\nUse this tool to publish a Mailchimp survey that is currently in draft, unpublished, or has been edited after previous publication. The tool confirms the survey's new status upon successful publishing.", + "parameters": [ + { + "name": "mailchimp_list_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list associated with the survey.", + "enum": null, + "inferrable": true + }, + { + "name": "survey_id", + "type": "string", + "required": true, + "description": "The unique identifier of the survey to be published. Required for specifying which survey to publish.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsIdSurveysIdActionsPublish'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.PublishMailchimpSurvey", + "parameters": { + "mailchimp_list_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "survey_id": { + "value": "survey_456def", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveBatchWebhook", + "qualifiedName": "MailchimpMarketingApi.RemoveBatchWebhook", + "fullyQualifiedName": "MailchimpMarketingApi.RemoveBatchWebhook@1.0.0", + "description": "Remove a batch webhook to stop sending webhooks to a URL.\n\nThis tool deletes a batch webhook identified by its ID, ensuring that webhooks are no longer sent to the specified URL. Use this tool when you need to stop receiving batch webhooks from Mailchimp to a particular endpoint.", + "parameters": [ + { + "name": "batch_webhook_id", + "type": "string", + "required": true, + "description": "The unique identifier for the batch webhook to remove. Use this ID to specify which webhook should be deleted, stopping any further webhook notifications to the associated URL.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteBatchWebhookId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.RemoveBatchWebhook", + "parameters": { + "batch_webhook_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveCampaignFeedback", + "qualifiedName": "MailchimpMarketingApi.RemoveCampaignFeedback", + "fullyQualifiedName": "MailchimpMarketingApi.RemoveCampaignFeedback@1.0.0", + "description": "Remove a specific feedback message from a campaign.\n\nUse this tool to delete a feedback message associated with a specific campaign in Mailchimp.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "A unique identifier for the campaign from which you want to remove feedback.", + "enum": null, + "inferrable": true + }, + { + "name": "feedback_message_id", + "type": "string", + "required": true, + "description": "The unique identifier for the feedback message to be removed from the campaign.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteCampaignsIdFeedbackId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.RemoveCampaignFeedback", + "parameters": { + "campaign_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "feedback_message_id": { + "value": "feed456msg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveClassicAutomationEmail", + "qualifiedName": "MailchimpMarketingApi.RemoveClassicAutomationEmail", + "fullyQualifiedName": "MailchimpMarketingApi.RemoveClassicAutomationEmail@1.0.0", + "description": "Removes a specified classic automation workflow email.\n\nUse this tool to remove a specific classic automation email from a workflow. Note that emails from certain workflow types, such as Abandoned Cart and Product Retargeting, cannot be deleted.", + "parameters": [ + { + "name": "automation_workflow_email_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific automation workflow email to be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "automation_workflow_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Automation workflow to target for email removal.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAutomationsIdEmailsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.RemoveClassicAutomationEmail", + "parameters": { + "automation_workflow_email_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "automation_workflow_id": { + "value": "workflow456def", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveMailchimpConnectedSite", + "qualifiedName": "MailchimpMarketingApi.RemoveMailchimpConnectedSite", + "fullyQualifiedName": "MailchimpMarketingApi.RemoveMailchimpConnectedSite@1.0.0", + "description": "Remove a connected site from your Mailchimp account.\n\nUse this tool to delete a connected site from your Mailchimp account, removing its integration.", + "parameters": [ + { + "name": "site_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the connected site you wish to remove from your Mailchimp account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteConnectedSitesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.RemoveMailchimpConnectedSite", + "parameters": { + "site_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveMemberFromMailchimpSegment", + "qualifiedName": "MailchimpMarketingApi.RemoveMemberFromMailchimpSegment", + "fullyQualifiedName": "MailchimpMarketingApi.RemoveMemberFromMailchimpSegment@1.0.0", + "description": "Remove a member from a Mailchimp static segment.\n\nUse this tool to delete a member from a specific static segment in Mailchimp. It should be called when you need to manage segment memberships by removing a subscriber.", + "parameters": [ + { + "name": "email_md5_hash", + "type": "string", + "required": true, + "description": "The MD5 hash of the lowercase version of the list member's email address.", + "enum": null, + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID of the mailing list from which the member will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "segment_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp segment from which the member will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteListsIdSegmentsIdMembersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.RemoveMemberFromMailchimpSegment", + "parameters": { + "email_md5_hash": { + "value": "5d41402abc4b2a76b9719d911017c592", + "type": "string", + "required": true + }, + "list_unique_id": { + "value": "abcdef1234567890", + "type": "string", + "required": true + }, + "segment_unique_id": { + "value": "segment12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveSubscriberFromWorkflow", + "qualifiedName": "MailchimpMarketingApi.RemoveSubscriberFromWorkflow", + "fullyQualifiedName": "MailchimpMarketingApi.RemoveSubscriberFromWorkflow@1.0.0", + "description": "Remove a subscriber from a Mailchimp automation workflow.\n\nThis tool removes a subscriber from a specified Mailchimp classic automation workflow at any point, ensuring they cannot be re-added to the same workflow.", + "parameters": [ + { + "name": "automation_workflow_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp automation workflow.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_email_address", + "type": "string", + "required": true, + "description": "Email address of the list member to be removed from the workflow.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postAutomationsIdRemovedSubscribers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.RemoveSubscriberFromWorkflow", + "parameters": { + "automation_workflow_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "subscriber_email_address": { + "value": "example@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplicateCampaignMailchimp", + "qualifiedName": "MailchimpMarketingApi.ReplicateCampaignMailchimp", + "fullyQualifiedName": "MailchimpMarketingApi.ReplicateCampaignMailchimp@1.0.0", + "description": "Replicate a saved or sent Mailchimp campaign.\n\nThis tool replicates a Mailchimp campaign that is in a saved or sent status. Use it to duplicate existing campaigns for reuse or modification.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp campaign to be replicated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postCampaignsIdActionsReplicate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.ReplicateCampaignMailchimp", + "parameters": { + "campaign_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResendCampaignToSegments", + "qualifiedName": "MailchimpMarketingApi.ResendCampaignToSegments", + "fullyQualifiedName": "MailchimpMarketingApi.ResendCampaignToSegments@1.0.0", + "description": "Resend a campaign to specific segments.\n\nUse this tool to replicate and resend a Mailchimp campaign to segments like non-openers or new subscribers.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for identifying the campaign to replicate and resend.", + "enum": null, + "inferrable": true + }, + { + "name": "resend_shortcut_type", + "type": "string", + "required": false, + "description": "Specify the type of segment to resend the campaign to. Options: 'to_non_openers', 'to_new_subscribers', 'to_non_clickers', 'to_non_purchasers'. Default is 'to_non_openers'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postCampaignsIdActionsCreateResend'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.ResendCampaignToSegments", + "parameters": { + "campaign_unique_id": { + "value": "12345abcdef", + "type": "string", + "required": true + }, + "resend_shortcut_type": { + "value": "to_non_openers", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResumeRssDrivenCampaign", + "qualifiedName": "MailchimpMarketingApi.ResumeRssDrivenCampaign", + "fullyQualifiedName": "MailchimpMarketingApi.ResumeRssDrivenCampaign@1.0.0", + "description": "Resume an RSS-Driven campaign in Mailchimp.\n\nThis tool resumes an RSS-Driven campaign in Mailchimp, allowing previously paused campaigns to continue sending as planned.", + "parameters": [ + { + "name": "campaign_id", + "type": "string", + "required": true, + "description": "The unique identifier for the RSS-driven campaign to be resumed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postCampaignsIdActionsResume'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.ResumeRssDrivenCampaign", + "parameters": { + "campaign_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAudienceContact", + "qualifiedName": "MailchimpMarketingApi.RetrieveAudienceContact", + "fullyQualifiedName": "MailchimpMarketingApi.RetrieveAudienceContact@1.0.0", + "description": "Retrieve a specific omni-channel contact in an audience.", + "parameters": [ + { + "name": "audience_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the audience to retrieve the contact from.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_contact_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the contact, either a Mailchimp contact ID or a channel hash. Format: email:[md5_hash] for emails or sms:[sha256_hash] for phone numbers.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude, using dot notation for sub-objects, when retrieving contact details.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAudienceContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.RetrieveAudienceContact", + "parameters": { + "audience_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "unique_contact_identifier": { + "value": "email:5d41402abc4b2a76b9719d911017c592", + "type": "string", + "required": true + }, + "exclude_fields_list": { + "value": "email_address,status", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "email_address,status,merge_fields", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAudienceContactList", + "qualifiedName": "MailchimpMarketingApi.RetrieveAudienceContactList", + "fullyQualifiedName": "MailchimpMarketingApi.RetrieveAudienceContactList@1.0.0", + "description": "Retrieve contacts for a specific marketing audience.\n\nUse this tool to obtain a list of omni-channel contacts associated with a particular audience in your marketing campaigns.", + "parameters": [ + { + "name": "audience_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific audience to retrieve contacts. Ensure this ID corresponds to an existing audience.", + "enum": null, + "inferrable": true + }, + { + "name": "created_before_datetime", + "type": "string", + "required": false, + "description": "Restricts the response to contacts created at or before the specified time. Use ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00.", + "enum": null, + "inferrable": true + }, + { + "name": "created_since", + "type": "string", + "required": false, + "description": "Restrict contacts to those created after this timestamp (exclusive). Use ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated fields to exclude from the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specifies how many records to return, from 10 to 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Paginate through records using a `next_cursor` from a previous request. By default, fetches the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_by_update_date_before", + "type": "string", + "required": false, + "description": "Restricts the response to contacts updated at or before the specified date and time, using ISO 8601 format: YYYY-MM-DDTHH:MM:SS+00:00.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_since", + "type": "string", + "required": false, + "description": "Restrict response to contacts updated after this time using ISO 8601 format (exclusive).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAudienceContactList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.RetrieveAudienceContactList", + "parameters": { + "audience_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "created_before_datetime": { + "value": "2022-12-31T23:59:59+00:00", + "type": "string", + "required": false + }, + "created_since": { + "value": "2022-01-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "exclude_fields_list": { + "value": "status,tags", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "email_address,merge_fields", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "100", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "restrict_by_update_date_before": { + "value": "2023-01-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "updated_since": { + "value": "2022-05-01T00:00:00+00:00", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCampaignSubscriberActivity", + "qualifiedName": "MailchimpMarketingApi.RetrieveCampaignSubscriberActivity", + "fullyQualifiedName": "MailchimpMarketingApi.RetrieveCampaignSubscriberActivity@1.0.0", + "description": "Retrieve subscriber activity for a specific campaign.\n\nUse this tool to get a list of subscriber activities for a particular email campaign in Mailchimp. It provides information on how subscribers interacted with the campaign emails.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for a specific email campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "activity_since_timestamp", + "type": "string", + "required": false, + "description": "Restrict results to email activity events occurring after this timestamp, using ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to include in the response. Use dot notation for sub-object fields.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "string", + "required": false, + "description": "Specifies how many records to return. The default is 10, with a maximum of 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsIdEmailActivity'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.RetrieveCampaignSubscriberActivity", + "parameters": { + "campaign_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "activity_since_timestamp": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "fields_to_exclude": { + "value": "ip_address,email_id", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "email_address,action,timestamp", + "type": "string", + "required": false + }, + "number_of_records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCartLineItemInfo", + "qualifiedName": "MailchimpMarketingApi.RetrieveCartLineItemInfo", + "fullyQualifiedName": "MailchimpMarketingApi.RetrieveCartLineItemInfo@1.0.0", + "description": "Get information about a specific cart line item.\n\nCall this tool to obtain details about a specific item in an e-commerce cart, such as product details and quantity.", + "parameters": [ + { + "name": "cart_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the cart. Required to retrieve specific cart line item information.", + "enum": null, + "inferrable": true + }, + { + "name": "cart_line_item_id", + "type": "string", + "required": true, + "description": "The ID for the line item in a specific cart. Used to identify which item details to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the store. Use this to specify which store's cart line item you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the response. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return for the cart line item. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEcommerceStoresIdCartsIdLinesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.RetrieveCartLineItemInfo", + "parameters": { + "cart_identifier": { + "value": "cart_123456", + "type": "string", + "required": true + }, + "cart_line_item_id": { + "value": "item_78910", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_abc", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "discounts,vendor", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "product_name,quantity,price", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveContactEvents", + "qualifiedName": "MailchimpMarketingApi.RetrieveContactEvents", + "fullyQualifiedName": "MailchimpMarketingApi.RetrieveContactEvents@1.0.0", + "description": "Retrieve events for a specific contact in a list.\n\nUse this tool to obtain detailed event information for a specific contact in a Mailchimp list. This is useful for tracking interactions or activities associated with a subscriber.", + "parameters": [ + { + "name": "contact_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the list member. This can be the MD5 hash of the lowercase email address, the email address itself, or the contact ID.", + "enum": null, + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp list from which to retrieve contact events.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields", + "type": "string", + "required": false, + "description": "Comma-separated fields to exclude from the response using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "records_to_return_count", + "type": "string", + "required": false, + "description": "The number of records to return. Default is 10 and maximum is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "return_field_list", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListsIdMembersIdEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.RetrieveContactEvents", + "parameters": { + "contact_identifier": { + "value": "example@example.com", + "type": "string", + "required": true + }, + "list_unique_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "exclude_fields": { + "value": "member.rating,ip_signup", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "records_to_return_count": { + "value": "10", + "type": "string", + "required": false + }, + "return_field_list": { + "value": "id,email_address,event_type", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveMailchimpLists", + "qualifiedName": "MailchimpMarketingApi.RetrieveMailchimpLists", + "fullyQualifiedName": "MailchimpMarketingApi.RetrieveMailchimpLists@1.0.0", + "description": "Retrieve information about all Mailchimp lists.\n\nCall this tool to obtain details about all the lists associated with a Mailchimp account.", + "parameters": [ + { + "name": "created_after_date", + "type": "string", + "required": false, + "description": "Restrict results to lists created after this date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).", + "enum": null, + "inferrable": true + }, + { + "name": "created_before_date", + "type": "string", + "required": false, + "description": "Restrict response to lists created before the specified date in ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_fields_list", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_subscriber_email", + "type": "string", + "required": false, + "description": "Restrict results to lists that include a specific subscriber's email address.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_contacts", + "type": "string", + "required": false, + "description": "Set to true to return the total_contacts field, which includes an approximate count of all contacts in any state.", + "enum": null, + "inferrable": true + }, + { + "name": "lists_after_last_campaign_date", + "type": "string", + "required": false, + "description": "Restrict results to lists created after the last campaign send date. Use ISO 8601 format (e.g., 2015-10-21T15:41:36+00:00).", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "records_to_return", + "type": "string", + "required": false, + "description": "The number of list records to return. Accepts values between 1 and 1000, with a default of 10.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_ecommerce_store_lists", + "type": "string", + "required": false, + "description": "Restrict results to lists containing an active, connected, undeleted ecommerce store. Expected values are 'true' or 'false'.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_lists_before_last_campaign_sent", + "type": "string", + "required": false, + "description": "Restrict results to lists created before the last campaign send date (ISO 8601 format).", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Determines the order direction for the sorted results. Accepts 'asc' for ascending and 'desc' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_lists_by_field", + "type": "string", + "required": false, + "description": "Field by which to sort the list results. Choose from available list fields.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getLists'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.RetrieveMailchimpLists", + "parameters": { + "created_after_date": { + "value": "2020-01-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "created_before_date": { + "value": "2022-12-31T23:59:59+00:00", + "type": "string", + "required": false + }, + "exclude_fields_list": { + "value": "fields.footer,fields.notifications", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "fields.id,fields.name,fields.stats", + "type": "string", + "required": false + }, + "filter_by_subscriber_email": { + "value": "example@example.com", + "type": "string", + "required": false + }, + "include_total_contacts": { + "value": "true", + "type": "string", + "required": false + }, + "lists_after_last_campaign_date": { + "value": "2022-01-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "records_to_return": { + "value": "50", + "type": "string", + "required": false + }, + "restrict_to_ecommerce_store_lists": { + "value": "false", + "type": "string", + "required": false + }, + "restrict_to_lists_before_last_campaign_sent": { + "value": "2023-01-01T00:00:00+00:00", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "sort_lists_by_field": { + "value": "name", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveMemberTags", + "qualifiedName": "MailchimpMarketingApi.RetrieveMemberTags", + "fullyQualifiedName": "MailchimpMarketingApi.RetrieveMemberTags@1.0.0", + "description": "Fetches tags for a specific mailing list member.\n\nUse this tool to retrieve all tags associated with a specific member of a mailing list identified by their subscriber hash.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the mailing list. Required to specify which list to retrieve member tags from.", + "enum": null, + "inferrable": true + }, + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The MD5 hash of the lowercase version of the email, or email address, or contact_id of the list member.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_specific_fields", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to exclude using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "A comma-separated list of fields to return. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "The number of records to skip for pagination. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "record_count", + "type": "string", + "required": false, + "description": "Specify the number of records to return, between 1 and 1000. Default is 10.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getListMemberTags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.RetrieveMemberTags", + "parameters": { + "list_unique_id": { + "value": "123456789abc", + "type": "string", + "required": true + }, + "member_identifier": { + "value": "d41d8cd98f00b204e9800998ecf8427e", + "type": "string", + "required": true + }, + "exclude_specific_fields": { + "value": "last_changed", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "tags,name,email_address", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + }, + "record_count": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReviewCampaignSendChecklist", + "qualifiedName": "MailchimpMarketingApi.ReviewCampaignSendChecklist", + "fullyQualifiedName": "MailchimpMarketingApi.ReviewCampaignSendChecklist@1.0.0", + "description": "Review the send checklist for a Mailchimp campaign.\n\nThis tool is used to review the send checklist for a specific Mailchimp campaign. It helps to identify and resolve any potential issues before sending the campaign.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the campaign in Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCampaignsIdSendChecklist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.ReviewCampaignSendChecklist", + "parameters": { + "campaign_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "status,report_summary", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "subject_line,from_name,reply_to", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ScheduleCampaignDelivery", + "qualifiedName": "MailchimpMarketingApi.ScheduleCampaignDelivery", + "fullyQualifiedName": "MailchimpMarketingApi.ScheduleCampaignDelivery@1.0.0", + "description": "Schedule a Mailchimp campaign for delivery.\n\nUse this tool to schedule a Mailchimp campaign for delivery. Ideal for standard campaigns; for Multivariate or RSS campaigns, consider using the send action instead.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp campaign to be scheduled.", + "enum": null, + "inferrable": true + }, + { + "name": "schedule_delivery_time", + "type": "string", + "required": true, + "description": "The UTC date and time to schedule the campaign for delivery in ISO 8601 format. Must be on the quarter-hour (:00, :15, :30, :45).", + "enum": null, + "inferrable": true + }, + { + "name": "batch_delivery_delay", + "type": "integer", + "required": false, + "description": "The delay in minutes between batches for campaign delivery.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_batches_for_campaign", + "type": "integer", + "required": false, + "description": "The number of batches for the campaign send. Determines how the campaign delivery is split into batches.", + "enum": null, + "inferrable": true + }, + { + "name": "use_timewarp", + "type": "boolean", + "required": false, + "description": "Set to true to use Timewarp for localizing campaign delivery to recipients' time zones. Cannot be true when using Batch Delivery.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postCampaignsIdActionsSchedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.ScheduleCampaignDelivery", + "parameters": { + "campaign_unique_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "schedule_delivery_time": { + "value": "2023-10-15T15:30:00Z", + "type": "string", + "required": true + }, + "batch_delivery_delay": { + "value": 10, + "type": "integer", + "required": false + }, + "number_of_batches_for_campaign": { + "value": 3, + "type": "integer", + "required": false + }, + "use_timewarp": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchMailchimpCampaigns", + "qualifiedName": "MailchimpMarketingApi.SearchMailchimpCampaigns", + "fullyQualifiedName": "MailchimpMarketingApi.SearchMailchimpCampaigns@1.0.0", + "description": "Search for email campaigns using query terms.\n\nUse this tool to search all Mailchimp email campaigns that match specific query terms. This can help find campaigns based on certain criteria or keywords.", + "parameters": [ + { + "name": "search_query", + "type": "string", + "required": true, + "description": "The terms used to filter and search Mailchimp campaigns.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_campaign_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to exclude from the search results. Use dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "included_fields", + "type": "string", + "required": false, + "description": "Specify the fields to return as a comma-separated list. Use dot notation for sub-object parameters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSearchCampaigns'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.SearchMailchimpCampaigns", + "parameters": { + "search_query": { + "value": "holiday promotion", + "type": "string", + "required": true + }, + "exclude_campaign_fields": { + "value": "recipients.segment_opts,report_summary", + "type": "string", + "required": false + }, + "included_fields": { + "value": "id,settings.title,report_summary.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchMailchimpMembers", + "qualifiedName": "MailchimpMarketingApi.SearchMailchimpMembers", + "fullyQualifiedName": "MailchimpMarketingApi.SearchMailchimpMembers@1.0.0", + "description": "Search for Mailchimp list members across lists.\n\nSearch for list members in Mailchimp. This can be restricted to a specific list or used to search across all lists in an account.", + "parameters": [ + { + "name": "search_query", + "type": "string", + "required": true, + "description": "The search query to filter list members by email, first name, or last name.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_exclude", + "type": "string", + "required": false, + "description": "A comma-separated list specifying which fields to exclude from results. Use dot notation for sub-object references.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_return", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to return, using dot notation for sub-objects.", + "enum": null, + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": false, + "description": "The unique identifier for a Mailchimp list to restrict the search. Use this to specify a particular list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSearchMembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.SearchMailchimpMembers", + "parameters": { + "search_query": { + "value": "john.doe@example.com", + "type": "string", + "required": true + }, + "fields_to_exclude": { + "value": "email_address,merge_fields.first_name", + "type": "string", + "required": false + }, + "fields_to_return": { + "value": "id,email_address,merge_fields.last_name", + "type": "string", + "required": false + }, + "list_unique_id": { + "value": "abc123xyz456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchTagsByName", + "qualifiedName": "MailchimpMarketingApi.SearchTagsByName", + "fullyQualifiedName": "MailchimpMarketingApi.SearchTagsByName@1.0.0", + "description": "Search for tags on a list by name.\n\nUse this tool to find specific tags by name within a Mailchimp list. If no name is provided, it will return all tags on the list.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique identifier for a Mailchimp list. This is essential for specifying which list to search for tags.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_name_search_query", + "type": "string", + "required": false, + "description": "The prefix to filter tags by name. Returns tags where names start with this query.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'searchTagsByName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.SearchTagsByName", + "parameters": { + "list_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "tag_name_search_query": { + "value": "newsletter", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendMailchimpCampaign", + "qualifiedName": "MailchimpMarketingApi.SendMailchimpCampaign", + "fullyQualifiedName": "MailchimpMarketingApi.SendMailchimpCampaign@1.0.0", + "description": "Send a Mailchimp campaign immediately or as scheduled.\n\nUse this tool to send a Mailchimp campaign. For RSS campaigns, it will follow the predefined schedule, while all other types of campaigns will be sent immediately.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp campaign to be sent. This is a string value required to trigger the campaign.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postCampaignsIdActionsSend'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.SendMailchimpCampaign", + "parameters": { + "campaign_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendTestEmailCampaign", + "qualifiedName": "MailchimpMarketingApi.SendTestEmailCampaign", + "fullyQualifiedName": "MailchimpMarketingApi.SendTestEmailCampaign@1.0.0", + "description": "Send a test email for a specific campaign.\n\nUse this tool to send a test email for a specified Mailchimp marketing campaign. Useful for previewing the campaign before final send.", + "parameters": [ + { + "name": "campaign_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the specific Mailchimp campaign to send the test email for.", + "enum": null, + "inferrable": true + }, + { + "name": "test_email_addresses", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of email addresses to receive the test email.", + "enum": null, + "inferrable": true + }, + { + "name": "test_email_send_type", + "type": "string", + "required": true, + "description": "Specify the type of test email to send: 'html' or 'plaintext'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postCampaignsIdActionsTest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.SendTestEmailCampaign", + "parameters": { + "campaign_unique_id": { + "value": "123abc456def", + "type": "string", + "required": true + }, + "test_email_addresses": { + "value": ["test1@example.com", "test2@example.com"], + "type": "array", + "required": true + }, + "test_email_send_type": { + "value": "html", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetCampaignContent", + "qualifiedName": "MailchimpMarketingApi.SetCampaignContent", + "fullyQualifiedName": "MailchimpMarketingApi.SetCampaignContent@1.0.0", + "description": "Set the content for a campaign in Mailchimp.\n\n Use this tool to update or set the content for a specific campaign in Mailchimp. It is called when you need to change or define what content is included in a campaign.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "campaign_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Mailchimp campaign to set the content for. This ID is required to specify which campaign you are updating. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'putCampaignsIdContent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.SetCampaignContent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "campaign_id": { + "value": "12345abcde", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"New Campaign Title\", \"content\": \"

Hello World

\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "StartAutomatedEmail", + "qualifiedName": "MailchimpMarketingApi.StartAutomatedEmail", + "fullyQualifiedName": "MailchimpMarketingApi.StartAutomatedEmail@1.0.0", + "description": "Initiate an automated email in Mailchimp.\n\nUse this tool to begin sending an automated email within a specific Mailchimp workflow. Useful for starting email campaigns based on predefined automation workflows.", + "parameters": [ + { + "name": "automation_email_id", + "type": "string", + "required": true, + "description": "The unique ID for the specific email in the automation workflow to be started.", + "enum": null, + "inferrable": true + }, + { + "name": "automation_workflow_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Automation workflow in Mailchimp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postAutomationsIdEmailsIdActionsStart'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.StartAutomatedEmail", + "parameters": { + "automation_email_id": { + "value": "abc12345", + "type": "string", + "required": true + }, + "automation_workflow_id": { + "value": "xyz67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "StartBatchProcessing", + "qualifiedName": "MailchimpMarketingApi.StartBatchProcessing", + "fullyQualifiedName": "MailchimpMarketingApi.StartBatchProcessing@1.0.0", + "description": "Initiate a batch operations request in Mailchimp.\n\nUse this tool to initiate processing of batch operations requests in Mailchimp Marketing. This is useful for handling multiple actions at once, such as managing email campaigns or subscriber updates.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postBatches'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.StartBatchProcessing", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"operations\":[{\"method\":\"POST\",\"path\":\"/lists/{list_id}/members\",\"body\":{\"email_address\":\"example@example.com\",\"status\":\"subscribed\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "StartMailchimpAutomationEmails", + "qualifiedName": "MailchimpMarketingApi.StartMailchimpAutomationEmails", + "fullyQualifiedName": "MailchimpMarketingApi.StartMailchimpAutomationEmails@1.0.0", + "description": "Start all emails in a Mailchimp automation workflow.\n\nUse this tool to initiate all emails within a specified classic automation workflow in Mailchimp. It should be called when you want to activate a pre-configured sequence of emails in a marketing campaign.", + "parameters": [ + { + "name": "automation_workflow_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp automation workflow to be started.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postAutomationsIdActionsStartAllEmails'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.StartMailchimpAutomationEmails", + "parameters": { + "automation_workflow_id": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TriggerAutomationStep", + "qualifiedName": "MailchimpMarketingApi.TriggerAutomationStep", + "fullyQualifiedName": "MailchimpMarketingApi.TriggerAutomationStep@1.0.0", + "description": "Trigger a step in a Mailchimp automation flow.\n\nUse this tool to activate a specific step in an existing Mailchimp automation flow. It requires the journey and step IDs, which are provided during the creation process in the Customer Journey API.", + "parameters": [ + { + "name": "flow_id", + "type": "string", + "required": true, + "description": "The unique identifier for the automation flow to trigger a specific step.", + "enum": null, + "inferrable": true + }, + { + "name": "list_member_email_address", + "type": "string", + "required": true, + "description": "The email address of the list member to trigger the automation step for.", + "enum": null, + "inferrable": true + }, + { + "name": "step_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the step in the Mailchimp automation flow.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postCustomerJourneysJourneysIdStepsIdActionsTrigger'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.TriggerAutomationStep", + "parameters": { + "flow_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "list_member_email_address": { + "value": "example@example.com", + "type": "string", + "required": true + }, + "step_identifier": { + "value": "step_1", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnpublishLandingPage", + "qualifiedName": "MailchimpMarketingApi.UnpublishLandingPage", + "fullyQualifiedName": "MailchimpMarketingApi.UnpublishLandingPage@1.0.0", + "description": "Unpublish a draft or published landing page.\n\nUsed to unpublish a landing page that is currently in draft or has been published on Mailchimp. This can be useful for managing the visibility of a page.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The unique ID of the landing page to be unpublished. Required for identifying the specific page on Mailchimp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postLandingPageIdActionsUnpublish'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UnpublishLandingPage", + "parameters": { + "landing_page_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnpublishMailchimpSurvey", + "qualifiedName": "MailchimpMarketingApi.UnpublishMailchimpSurvey", + "fullyQualifiedName": "MailchimpMarketingApi.UnpublishMailchimpSurvey@1.0.0", + "description": "Unpublish a survey in Mailchimp Marketing.\n\nUse this tool to unpublish a survey that has been published in Mailchimp Marketing. This action is useful when you need to deactivate a survey for any reason.", + "parameters": [ + { + "name": "mailchimp_list_id", + "type": "string", + "required": true, + "description": "The unique ID for the Mailchimp list associated with the survey to unpublish.", + "enum": null, + "inferrable": true + }, + { + "name": "survey_id", + "type": "string", + "required": true, + "description": "Enter the unique ID of the survey to unpublish in Mailchimp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsIdSurveysIdActionsUnpublish'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UnpublishMailchimpSurvey", + "parameters": { + "mailchimp_list_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "survey_id": { + "value": "survey_456def", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnscheduleCampaign", + "qualifiedName": "MailchimpMarketingApi.UnscheduleCampaign", + "fullyQualifiedName": "MailchimpMarketingApi.UnscheduleCampaign@1.0.0", + "description": "Unschedule a scheduled Mailchimp campaign.\n\nUse this tool to unschedule a Mailchimp campaign that is scheduled but hasn't started sending yet.", + "parameters": [ + { + "name": "campaign_id", + "type": "string", + "required": true, + "description": "The unique identifier for the scheduled campaign to be unscheduled.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postCampaignsIdActionsUnschedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UnscheduleCampaign", + "parameters": { + "campaign_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateAutomationEmailSettings", + "qualifiedName": "MailchimpMarketingApi.UpdateAutomationEmailSettings", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateAutomationEmailSettings@1.0.0", + "description": "Update settings for a classic automation workflow email.\n\n Use this tool to update the settings of a specific email in a classic automation workflow in Mailchimp. Applicable for workflows of type: abandonedBrowse, abandonedCart, emailFollowup, or singleWelcome.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "automation_workflow_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Automation workflow to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "automation_workflow_email_id", + "type": "string", + "required": false, + "description": "The unique ID for the Automation workflow email to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchAutomationEmailWorkflowId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateAutomationEmailSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "automation_workflow_id": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "automation_workflow_email_id": { + "value": "efgh5678", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"subject_line\": \"Welcome to our service!\", \"title\": \"Welcome Email\", \"from_name\": \"Your Company\", \"reply_to\": \"support@yourcompany.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBatchWebhook", + "qualifiedName": "MailchimpMarketingApi.UpdateBatchWebhook", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateBatchWebhook@1.0.0", + "description": "Update a batch webhook on Mailchimp.\n\nUse this tool to update a webhook that triggers when a batch request in Mailchimp completes. This is useful for managing notifications and automated responses to batch operations.", + "parameters": [ + { + "name": "batch_webhook_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the batch webhook to update.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_webhook", + "type": "boolean", + "required": false, + "description": "Enable or disable webhook requests (true for enable, false for disable).", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_url", + "type": "string", + "required": false, + "description": "A valid URL to send webhook notifications when a batch request completes in Mailchimp.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchBatchWebhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateBatchWebhook", + "parameters": { + "batch_webhook_unique_id": { + "value": "abc12345-defg-6789-hijk-lmnopqrstuv", + "type": "string", + "required": true + }, + "enable_webhook": { + "value": true, + "type": "boolean", + "required": false + }, + "webhook_url": { + "value": "https://example.com/webhook", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCampaignFeedback", + "qualifiedName": "MailchimpMarketingApi.UpdateCampaignFeedback", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateCampaignFeedback@1.0.0", + "description": "Update specific feedback for a Mailchimp campaign.\n\nUse this tool to update a particular feedback message for a specific Mailchimp marketing campaign. This is useful when corrections or additional details need to be added to existing feedback.", + "parameters": [ + { + "name": "campaign_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp campaign to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "feedback_message_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific feedback message to update in the campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "editable_block_id", + "type": "integer", + "required": false, + "description": "The ID of the editable block that the feedback addresses within the campaign.", + "enum": null, + "inferrable": true + }, + { + "name": "feedback_is_complete", + "type": "boolean", + "required": false, + "description": "Indicates if the feedback is marked as complete. Use true for complete and false for incomplete.", + "enum": null, + "inferrable": true + }, + { + "name": "feedback_message", + "type": "string", + "required": false, + "description": "The text content of the feedback message to be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchCampaignsIdFeedbackId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateCampaignFeedback", + "parameters": { + "campaign_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "feedback_message_id": { + "value": "msg7891011", + "type": "string", + "required": true + }, + "editable_block_id": { + "value": 2, + "type": "integer", + "required": false + }, + "feedback_is_complete": { + "value": true, + "type": "boolean", + "required": false + }, + "feedback_message": { + "value": "The initial feedback has been addressed, and the changes reflect the client's requirements.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCampaignFolder", + "qualifiedName": "MailchimpMarketingApi.UpdateCampaignFolder", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateCampaignFolder@1.0.0", + "description": "Update a specific folder used to organize campaigns.\n\nUse this tool to modify the details of an existing campaign folder in Mailchimp. It updates the specified folder to help organize marketing campaigns more efficiently.", + "parameters": [ + { + "name": "campaign_folder_id", + "type": "string", + "required": true, + "description": "The unique identifier for the campaign folder to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_name", + "type": "string", + "required": true, + "description": "The new name to assign to the campaign folder.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchCampaignFoldersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateCampaignFolder", + "parameters": { + "campaign_folder_id": { + "value": "abc12345", + "type": "string", + "required": true + }, + "folder_name": { + "value": "Spring Promotions", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCampaignSettings", + "qualifiedName": "MailchimpMarketingApi.UpdateCampaignSettings", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateCampaignSettings@1.0.0", + "description": "Update campaign settings in Mailchimp.\n\n Use this tool to modify specific settings for a given campaign in Mailchimp. Suitable for updating parts or all of a campaign's configuration.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "campaign_unique_id", + "type": "string", + "required": false, + "description": "The unique identifier for the campaign to be updated in Mailchimp. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchCampaignsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateCampaignSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "campaign_unique_id": { + "value": "abc12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"settings\":{\"subject_line\":\"New Subject Line\",\"send_time\":\"2023-10-01T10:00:00Z\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCart", + "qualifiedName": "MailchimpMarketingApi.UpdateCart", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateCart@1.0.0", + "description": "Update a specific cart in an e-commerce store.\n\n This tool updates a specified cart within a given e-commerce store using the Mailchimp Marketing API. Use it to modify cart details like items, quantities, or any other attributes available. Ideal for scenarios involving cart adjustments before customer checkout.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": false, + "description": "The unique identifier for the store where the cart is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "cart_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the cart. Used to specify which cart to update in the e-commerce store. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchEcommerceStoresIdCartsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateCart", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_id": { + "value": "store12345", + "type": "string", + "required": false + }, + "cart_identifier": { + "value": "cart67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"items\":[{\"id\":\"item1\",\"quantity\":2},{\"id\":\"item2\",\"quantity\":1}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCartLineItem", + "qualifiedName": "MailchimpMarketingApi.UpdateCartLineItem", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateCartLineItem@1.0.0", + "description": "Update a specific cart line item in Mailchimp.\n\nUse this tool to modify an existing cart line item in a specified e-commerce store within Mailchimp. This can be used to adjust item details such as quantity or other attributes.", + "parameters": [ + { + "name": "cart_id", + "type": "string", + "required": true, + "description": "The unique identifier for the cart.", + "enum": null, + "inferrable": true + }, + { + "name": "cart_line_item_id", + "type": "string", + "required": true, + "description": "The unique identifier for the line item within the cart to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the e-commerce store. Essential for specifying which store's cart line item to update.", + "enum": null, + "inferrable": true + }, + { + "name": "cart_line_item_price", + "type": "number", + "required": false, + "description": "The price of a cart line item to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "cart_line_item_quantity", + "type": "integer", + "required": false, + "description": "The quantity of the cart line item to update.", + "enum": null, + "inferrable": true + }, + { + "name": "product_identifier", + "type": "string", + "required": false, + "description": "A unique identifier for the product associated with the cart line item.", + "enum": null, + "inferrable": true + }, + { + "name": "product_variant_identifier", + "type": "string", + "required": false, + "description": "A unique identifier for the product variant associated with the cart line item. Required to specify which variant to update.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchEcommerceStoresIdCartsIdLinesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateCartLineItem", + "parameters": { + "cart_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "cart_line_item_id": { + "value": "lineitem456", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store789", + "type": "string", + "required": true + }, + "cart_line_item_price": { + "value": 19.99, + "type": "integer", + "required": false + }, + "cart_line_item_quantity": { + "value": 2, + "type": "integer", + "required": false + }, + "product_identifier": { + "value": "prod001", + "type": "string", + "required": false + }, + "product_variant_identifier": { + "value": "variantA", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateContactInformation", + "qualifiedName": "MailchimpMarketingApi.UpdateContactInformation", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateContactInformation@1.0.0", + "description": "Update information for an existing contact.\n\n Use this tool to update the details of an existing omni-channel contact in a specified audience in Mailchimp. Ideal for modifying contact information such as email, name, or other personal details.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "audience_id", + "type": "string", + "required": false, + "description": "The unique ID for the audience to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_id", + "type": "string", + "required": false, + "description": "The unique ID for the contact to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "merge_field_validation_mode", + "type": "string", + "required": false, + "description": "Specifies how merge field validation is handled. Options: `ignore_required_checks` (no error if fields missing), `strict` (errors if required fields not provided). Default is `strict`. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "data_processing_mode", + "type": "string", + "required": false, + "description": "Specify `historical` to prevent triggering automations/webhooks, or `live` to trigger them for contact data changes. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchAudienceContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateContactInformation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "audience_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "contact_id": { + "value": "0987654321", + "type": "string", + "required": false + }, + "merge_field_validation_mode": { + "value": "strict", + "type": "string", + "required": false + }, + "data_processing_mode": { + "value": "live", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email_address\":\"new-email@example.com\",\"status\":\"subscribed\",\"merge_fields\":{\"FNAME\":\"John\",\"LNAME\":\"Doe\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCustomerInfo", + "qualifiedName": "MailchimpMarketingApi.UpdateCustomerInfo", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateCustomerInfo@1.0.0", + "description": "Update a customer's information in an ecommerce store.\n\n Use this tool to update the information of a customer within a specific ecommerce store. Ideal for changes in customer details such as address, contact info, or other personal data.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the ecommerce store where the customer resides. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for a customer in a specific store. Required to update customer information. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchEcommerceStoresIdCustomersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateCustomerInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_12345", + "type": "string", + "required": false + }, + "customer_identifier": { + "value": "customer_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\":\"customer@example.com\",\"first_name\":\"John\",\"last_name\":\"Doe\",\"address\":{\"line1\":\"123 Main St\",\"city\":\"Anytown\",\"state\":\"CA\",\"zip\":\"90210\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEcommerceOrder", + "qualifiedName": "MailchimpMarketingApi.UpdateEcommerceOrder", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateEcommerceOrder@1.0.0", + "description": "Add or update an order in an ecommerce store.\n\n Use this tool to either add a new order or update an existing order within an ecommerce store in Mailchimp Marketing. This tool is suitable when order details need to be adjusted or fresh orders are being added.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the store in which the order is being added or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "order_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the order in the store. Used to specify which order to update or add. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'putEcommerceStoresIdOrdersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateEcommerceOrder", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_12345", + "type": "string", + "required": false + }, + "order_identifier": { + "value": "order_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"customer\":{\"email\":\"customer@example.com\",\"first_name\":\"John\",\"last_name\":\"Doe\"},\"items\":[{\"product_id\":\"product_1\",\"quantity\":2,\"price\":29.99}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEcommerceProduct", + "qualifiedName": "MailchimpMarketingApi.UpdateEcommerceProduct", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateEcommerceProduct@1.0.0", + "description": "Update a specific product in an ecommerce store.\n\n Use this tool to update details of a specific product in an ecommerce store. It is useful when you need to modify product information such as pricing, inventory, or descriptions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the store to update the product in. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "product_id", + "type": "string", + "required": false, + "description": "The unique identifier for the product within a store. This is used to specify which product needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'putEcommerceStoresIdProductsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateEcommerceProduct", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_123456", + "type": "string", + "required": false + }, + "product_id": { + "value": "prod_987654", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Product Name\", \"price\": 19.99, \"inventory\": {\"quantity\": 50}, \"description\": \"Updated product description.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEcommerceStore", + "qualifiedName": "MailchimpMarketingApi.UpdateEcommerceStore", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateEcommerceStore@1.0.0", + "description": "Update an e-commerce store's details.\n\n This tool is used to update the information of an existing e-commerce store in Mailchimp. Call this when you need to modify store details, such as the store name or other attributes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the store you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchEcommerceStoresId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateEcommerceStore", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"store_name\":\"New Store Name\",\"currency\":\"USD\",\"website_url\":\"https://www.example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEmailTemplate", + "qualifiedName": "MailchimpMarketingApi.UpdateEmailTemplate", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateEmailTemplate@1.0.0", + "description": "Update the details of an existing email template.\n\nUse this tool to update the name, HTML content, or folder ID of an existing email template in Mailchimp.", + "parameters": [ + { + "name": "template_html_content", + "type": "string", + "required": true, + "description": "The raw HTML for the template using Mailchimp's Template Language.", + "enum": null, + "inferrable": true + }, + { + "name": "template_name", + "type": "string", + "required": true, + "description": "The name of the email template to update.", + "enum": null, + "inferrable": true + }, + { + "name": "template_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the email template to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "destination_folder_id", + "type": "string", + "required": false, + "description": "The ID of the folder where the template is currently located.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchTemplatesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateEmailTemplate", + "parameters": { + "template_html_content": { + "value": "

Welcome to our Newsletter

Thank you for subscribing!

", + "type": "string", + "required": true + }, + "template_name": { + "value": "Monthly Newsletter", + "type": "string", + "required": true + }, + "template_unique_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "destination_folder_id": { + "value": "folder987654", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateFileManagerFile", + "qualifiedName": "MailchimpMarketingApi.UpdateFileManagerFile", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateFileManagerFile@1.0.0", + "description": "Update a file in the Mailchimp File Manager.\n\nUse this tool to update an existing file in Mailchimp's File Manager by providing the file ID. It is useful for changing file details or replacing content.", + "parameters": [ + { + "name": "file_manager_file_id", + "type": "string", + "required": true, + "description": "The unique identifier for the File Manager file to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "file_name", + "type": "string", + "required": false, + "description": "Specify the new name for the file in the File Manager.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_id", + "type": "integer", + "required": false, + "description": "The ID of the folder. Set to `0` to remove a file from its current folder.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchFileManagerFilesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateFileManagerFile", + "parameters": { + "file_manager_file_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "file_name": { + "value": "updated_file_name.png", + "type": "string", + "required": false + }, + "folder_id": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateFileManagerFolder", + "qualifiedName": "MailchimpMarketingApi.UpdateFileManagerFolder", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateFileManagerFolder@1.0.0", + "description": "Update a specific File Manager folder in Mailchimp.\n\nUse this tool to update the details of a specific folder in Mailchimp's File Manager. Useful for organizing files within the platform.", + "parameters": [ + { + "name": "file_manager_folder_id", + "type": "string", + "required": true, + "description": "The unique identifier for the File Manager folder to update.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_name", + "type": "string", + "required": true, + "description": "The new name for the File Manager folder. It should be a string value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchFileManagerFoldersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateFileManagerFolder", + "parameters": { + "file_manager_folder_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "folder_name": { + "value": "Updated Folder Name", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateInterestCategory", + "qualifiedName": "MailchimpMarketingApi.UpdateInterestCategory", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateInterestCategory@1.0.0", + "description": "Update a specific interest category in Mailchimp.\n\nUse this tool to update the details of a specific interest category within a Mailchimp list. Ideal for modifying category information to better organize your audience.", + "parameters": [ + { + "name": "category_display_type", + "type": "string", + "required": true, + "description": "Specifies how the category's interests are shown on signup forms. Options: 'checkboxes', 'dropdown', 'radio', 'hidden'.", + "enum": null, + "inferrable": true + }, + { + "name": "interest_category_id", + "type": "string", + "required": true, + "description": "The unique ID for the interest category to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "interest_category_title", + "type": "string", + "required": true, + "description": "The text description of this interest category for signup forms, often phrased as a question.", + "enum": null, + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp list to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "category_display_order", + "type": "integer", + "required": false, + "description": "The numerical order for displaying the category. Lower numbers appear first.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchListsIdInterestCategoriesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateInterestCategory", + "parameters": { + "category_display_type": { + "value": "checkboxes", + "type": "string", + "required": true + }, + "interest_category_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "interest_category_title": { + "value": "What topics are you interested in?", + "type": "string", + "required": true + }, + "list_unique_id": { + "value": "list456", + "type": "string", + "required": true + }, + "category_display_order": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateInterestGroupName", + "qualifiedName": "MailchimpMarketingApi.UpdateInterestGroupName", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateInterestGroupName@1.0.0", + "description": "Update group names in a specific interest category.\n\nUse this tool to update the names of interest groups within a specified category on a Mailchimp list. This is helpful for managing and organizing subscriber interests.", + "parameters": [ + { + "name": "interest_category_id", + "type": "string", + "required": true, + "description": "The unique ID for the interest category to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "interest_group_name", + "type": "string", + "required": true, + "description": "The new name for the interest group, displayed publicly on subscription forms.", + "enum": null, + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the list to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_interest_id", + "type": "string", + "required": true, + "description": "The unique ID for the specific interest group name within the category.", + "enum": null, + "inferrable": true + }, + { + "name": "interest_display_order", + "type": "integer", + "required": false, + "description": "The numerical order in which the interest should appear in a list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchListsIdInterestCategoriesIdInterestsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateInterestGroupName", + "parameters": { + "interest_category_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "interest_group_name": { + "value": "New Interest Group Name", + "type": "string", + "required": true + }, + "list_unique_id": { + "value": "67890fghij", + "type": "string", + "required": true + }, + "specific_interest_id": { + "value": "11223klmno", + "type": "string", + "required": true + }, + "interest_display_order": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateLandingPage", + "qualifiedName": "MailchimpMarketingApi.UpdateLandingPage", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateLandingPage@1.0.0", + "description": "Update a landing page on Mailchimp.\n\nUse this tool to update an existing landing page on Mailchimp. Provide the necessary details for the landing page you wish to update.", + "parameters": [ + { + "name": "landing_page_id", + "type": "string", + "required": true, + "description": "The unique ID for the landing page to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_restricted_data_processing", + "type": "boolean", + "required": false, + "description": "Set to true to enable Google’s restricted data processing in compliance with the CCPA for this landing page.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_tracking_with_mailchimp", + "type": "boolean", + "required": false, + "description": "Enable cookie tracking to monitor unique visitors and calculate conversion rates. More info: [here](https://mailchimp.com/help/use-track-mailchimp/).", + "enum": null, + "inferrable": true + }, + { + "name": "landing_page_description", + "type": "string", + "required": false, + "description": "Provide a description for the landing page. This text summarizes the page's purpose and content.", + "enum": null, + "inferrable": true + }, + { + "name": "landing_page_name", + "type": "string", + "required": false, + "description": "The name for the landing page to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "landing_page_title", + "type": "string", + "required": false, + "description": "The title displayed in the browser's title bar for the landing page.", + "enum": null, + "inferrable": true + }, + { + "name": "list_id_for_landing_page", + "type": "string", + "required": false, + "description": "The ID of the list associated with this landing page.", + "enum": null, + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": false, + "description": "The ID of the store associated with this landing page. It must match an existing store in the Mailchimp account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchLandingPageId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateLandingPage", + "parameters": { + "landing_page_id": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + }, + "enable_restricted_data_processing": { + "value": true, + "type": "boolean", + "required": false + }, + "enable_tracking_with_mailchimp": { + "value": false, + "type": "boolean", + "required": false + }, + "landing_page_description": { + "value": "This landing page is designed for our summer sale.", + "type": "string", + "required": false + }, + "landing_page_name": { + "value": "Summer Sale 2023", + "type": "string", + "required": false + }, + "landing_page_title": { + "value": "Shop the Summer Sale", + "type": "string", + "required": false + }, + "list_id_for_landing_page": { + "value": "list123456", + "type": "string", + "required": false + }, + "store_id": { + "value": "store7890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateListMemberInfo", + "qualifiedName": "MailchimpMarketingApi.UpdateListMemberInfo", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateListMemberInfo@1.0.0", + "description": "Update information for a specific list member in Mailchimp.\n\n Use this tool to update the details of a particular member on a Mailchimp list. It should be called when you need to modify any member's information, such as their email address or other personal details, within a given list.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": false, + "description": "The unique ID for the Mailchimp list. This ID identifies which list to update the member information in. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "member_identifier", + "type": "string", + "required": false, + "description": "The MD5 hash of the lowercase list member's email, email address, or contact_id. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "skip_merge_validation", + "type": "string", + "required": false, + "description": "Set to true to allow member data without merge field values, even if usually required. Defaults to false. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchListsIdMembersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateListMemberInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "list_unique_id": { + "value": "abc123def456", + "type": "string", + "required": false + }, + "member_identifier": { + "value": "d41d8cd98f00b204e9800998ecf8427e", + "type": "string", + "required": false + }, + "skip_merge_validation": { + "value": "false", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"subscribed\", \"merge_fields\":{\"FNAME\":\"John\", \"LNAME\":\"Doe\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateListMemberTags", + "qualifiedName": "MailchimpMarketingApi.UpdateListMemberTags", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateListMemberTags@1.0.0", + "description": "Add or remove tags from a Mailchimp list member.\n\n Use this tool to manage tags for a specific member in a Mailchimp list. It allows adding new tags or removing existing ones. If a non-existent tag is added and marked as 'active', it will be created automatically.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "list_unique_id", + "type": "string", + "required": false, + "description": "The unique ID for the Mailchimp list to update tags for a member. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "subscriber_email_hash", + "type": "string", + "required": false, + "description": "The MD5 hash of the lowercase version of the list member's email address. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListMemberTags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateListMemberTags", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "list_unique_id": { + "value": "abc1234uniqueid", + "type": "string", + "required": false + }, + "subscriber_email_hash": { + "value": "5d41402abc4b2a76b9719d911017c592", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"tags\": [{\"name\": \"VIP\", \"status\": \"active\"}, {\"name\": \"Newsletter\", \"status\": \"inactive\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateListSegment", + "qualifiedName": "MailchimpMarketingApi.UpdateListSegment", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateListSegment@1.0.0", + "description": "Batch update members in a Mailchimp list segment.\n\nUse this tool to batch add or remove members in a specified static segment of a Mailchimp list. This is useful for efficiently managing segment membership within a list.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp list.", + "enum": null, + "inferrable": true + }, + { + "name": "segment_unique_id", + "type": "string", + "required": true, + "description": "The unique ID of the segment in the Mailchimp list for member updates.", + "enum": null, + "inferrable": true + }, + { + "name": "emails_to_add_to_segment", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of email addresses to add to the specified static segment. Only existing list emails will be added. Limit of 500.", + "enum": null, + "inferrable": true + }, + { + "name": "emails_to_remove_from_segment", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of up to 500 emails to remove from the static segment. Emails not in the list will be ignored.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postListsIdSegmentsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateListSegment", + "parameters": { + "list_unique_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "segment_unique_id": { + "value": "67890fghij", + "type": "string", + "required": true + }, + "emails_to_add_to_segment": { + "value": ["user1@example.com", "user2@example.com"], + "type": "array", + "required": false + }, + "emails_to_remove_from_segment": { + "value": ["user3@example.com", "user4@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMailchimpListSettings", + "qualifiedName": "MailchimpMarketingApi.UpdateMailchimpListSettings", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateMailchimpListSettings@1.0.0", + "description": "Update settings for a specific Mailchimp list.\n\n Use this tool to modify the settings of a specific list in Mailchimp. It should be called when you need to update a list's configuration or preferences.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "mailchimp_list_id", + "type": "string", + "required": false, + "description": "The unique ID of the Mailchimp list to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchListsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateMailchimpListSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "mailchimp_list_id": { + "value": "abc123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated List Name\", \"contact\": {\"company\": \"Company Name\", \"address\": \"123 Main St\", \"city\": \"Anytown\", \"state\": \"CA\", \"zip\": \"12345\", \"country\": \"US\"}, \"permission_reminder\": \"You are receiving this email because you signed up for updates.\", \"campaign_defaults\": {\"from_name\": \"Your Company\", \"from_email\": \"no-reply@yourcompany.com\", \"subject\": \"Updates from Us\", \"language\": \"EN\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMailchimpSegment", + "qualifiedName": "MailchimpMarketingApi.UpdateMailchimpSegment", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateMailchimpSegment@1.0.0", + "description": "Update the details of a specific segment in a Mailchimp list.\n\nThis tool updates a specific segment within a designated list in Mailchimp. It should be called when there is a need to modify segment criteria or details in an existing list.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the list to update the segment in. This ID is required to identify the list containing the target segment.", + "enum": null, + "inferrable": true + }, + { + "name": "segment_name", + "type": "string", + "required": true, + "description": "The new name for the segment to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "segment_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the segment to update.", + "enum": null, + "inferrable": true + }, + { + "name": "segment_conditions", + "type": "array", + "innerType": "json", + "required": false, + "description": "An array of conditions that define the segment criteria. Each condition should be a JSON object specifying the targeting parameters.", + "enum": null, + "inferrable": true + }, + { + "name": "segment_match_type", + "type": "string", + "required": false, + "description": "Determines if any or all conditions must be met for the segment. Allowed values: 'any', 'all'.", + "enum": null, + "inferrable": true + }, + { + "name": "static_email_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of emails for the static segment. Emails not on the list are ignored. An empty array resets the segment, removing all members. Cannot be used with 'options'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchListsIdSegmentsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateMailchimpSegment", + "parameters": { + "list_unique_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "segment_name": { + "value": "Updated Segment Name", + "type": "string", + "required": true + }, + "segment_unique_id": { + "value": "67890fghij", + "type": "string", + "required": true + }, + "segment_conditions": { + "value": [ + { + "field": "email_address", + "op": "contains", + "value": "@example.com" + }, + { + "field": "last_activity", + "op": "greater_than", + "value": "2023-01-01" + } + ], + "type": "array", + "required": false + }, + "segment_match_type": { + "value": "any", + "type": "string", + "required": false + }, + "static_email_list": { + "value": ["user1@example.com", "user2@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMemberNote", + "qualifiedName": "MailchimpMarketingApi.UpdateMemberNote", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateMemberNote@1.0.0", + "description": "Update a specific note for a list member in Mailchimp.\n\nThis tool updates a specific note for a given list member on Mailchimp. Use this when you need to modify the content of an existing note associated with a subscriber in a mailing list.", + "parameters": [ + { + "name": "list_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the mailing list where the note is being updated.", + "enum": null, + "inferrable": true + }, + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The MD5 hash, email address, or contact_id of the list member.", + "enum": null, + "inferrable": true + }, + { + "name": "note_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the note to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "note_content", + "type": "string", + "required": false, + "description": "Content of the note to be updated. Must not exceed 1,000 characters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchListsIdMembersIdNotesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateMemberNote", + "parameters": { + "list_unique_id": { + "value": "12345abcde67890fghijk", + "type": "string", + "required": true + }, + "member_identifier": { + "value": "example@example.com", + "type": "string", + "required": true + }, + "note_identifier": { + "value": "note-7890xyz", + "type": "string", + "required": true + }, + "note_content": { + "value": "Updated note content for the subscriber.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMergeField", + "qualifiedName": "MailchimpMarketingApi.UpdateMergeField", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateMergeField@1.0.0", + "description": "Update a specific merge field in a list.\n\n This tool updates a specific merge field for a given list in Mailchimp. Use it when you need to modify the properties of a merge field, such as its name or type, within a specific list.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "list_id", + "type": "string", + "required": false, + "description": "The unique ID for the list to update the merge field in. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "merge_field_id", + "type": "string", + "required": false, + "description": "The unique ID for the specific merge field to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchListsIdMergeFieldsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateMergeField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "list_id": { + "value": "12345abcde", + "type": "string", + "required": false + }, + "merge_field_id": { + "value": "FNAME", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"First Name\",\"type\":\"text\",\"required\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateOrderLineItem", + "qualifiedName": "MailchimpMarketingApi.UpdateOrderLineItem", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateOrderLineItem@1.0.0", + "description": "Update a specific order line item.\n\nUse this tool to update details of a specific order line item in an e-commerce store. Useful for modifying existing order line items with new information or adjustments.", + "parameters": [ + { + "name": "line_item_id", + "type": "string", + "required": true, + "description": "The unique identifier for the line item within an order in a store.", + "enum": null, + "inferrable": true + }, + { + "name": "order_id", + "type": "string", + "required": true, + "description": "The unique identifier for the order within the store. Required to specify which order is being updated.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the store where the order was placed.", + "enum": null, + "inferrable": true + }, + { + "name": "line_item_discount_amount", + "type": "number", + "required": false, + "description": "The total discount amount applied to this line item in the order. Provide as a numerical value.", + "enum": null, + "inferrable": true + }, + { + "name": "order_line_item_price", + "type": "number", + "required": false, + "description": "Specify the updated price for the order line item. This should be a numerical value reflecting the new cost of the item.", + "enum": null, + "inferrable": true + }, + { + "name": "order_line_item_quantity", + "type": "integer", + "required": false, + "description": "Specify the quantity of the order line item to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "product_identifier", + "type": "string", + "required": false, + "description": "A unique identifier for the product associated with the order line item.", + "enum": null, + "inferrable": true + }, + { + "name": "product_variant_id", + "type": "string", + "required": false, + "description": "A unique identifier for the product variant associated with the order line item. This is required to specify the variant of the product being referenced.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchEcommerceStoresIdOrdersIdLinesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateOrderLineItem", + "parameters": { + "line_item_id": { + "value": "item_123456", + "type": "string", + "required": true + }, + "order_id": { + "value": "order_654321", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_98765", + "type": "string", + "required": true + }, + "line_item_discount_amount": { + "value": 15.99, + "type": "integer", + "required": false + }, + "order_line_item_price": { + "value": 39.99, + "type": "integer", + "required": false + }, + "order_line_item_quantity": { + "value": 2, + "type": "integer", + "required": false + }, + "product_identifier": { + "value": "prod_112233", + "type": "string", + "required": false + }, + "product_variant_id": { + "value": "variant_445566", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateOrderMailchimp", + "qualifiedName": "MailchimpMarketingApi.UpdateOrderMailchimp", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateOrderMailchimp@1.0.0", + "description": "Update a specific order in Mailchimp's e-commerce store.\n\n Use this tool to modify order details in a specified Mailchimp e-commerce store. It updates the order data based on provided criteria and returns the updated order status.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the store in which the order is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "order_id", + "type": "string", + "required": false, + "description": "The unique identifier for the order in the store that needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchEcommerceStoresIdOrdersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateOrderMailchimp", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "order_id": { + "value": "abcde-6789-fghij", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"shipped\",\"tracking_number\":\"TRACK123456\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateProductImageMailchimp", + "qualifiedName": "MailchimpMarketingApi.UpdateProductImageMailchimp", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateProductImageMailchimp@1.0.0", + "description": "Update a product image in an e-commerce store.\n\nThis tool updates a specific product image within a Mailchimp e-commerce store. Use it when you need to modify an image associated with a product in a store managed by Mailchimp.", + "parameters": [ + { + "name": "product_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a product in the store. Used to specify which product's image should be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "product_image_id", + "type": "string", + "required": true, + "description": "The unique identifier for the product image to update.", + "enum": null, + "inferrable": true + }, + { + "name": "store_id", + "type": "string", + "required": true, + "description": "The unique identifier for the e-commerce store.", + "enum": null, + "inferrable": true + }, + { + "name": "product_image_unique_id", + "type": "string", + "required": false, + "description": "A unique identifier for a specific product image to be updated in the store.", + "enum": null, + "inferrable": true + }, + { + "name": "product_image_url", + "type": "string", + "required": false, + "description": "The URL of the product image to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "variant_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of product variant IDs associated with the image. Each variant ID should be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchEcommerceStoresIdProductsIdImagesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateProductImageMailchimp", + "parameters": { + "product_identifier": { + "value": "prod_12345", + "type": "string", + "required": true + }, + "product_image_id": { + "value": "img_67890", + "type": "string", + "required": true + }, + "store_id": { + "value": "store_54321", + "type": "string", + "required": true + }, + "product_image_unique_id": { + "value": "unique_img_001", + "type": "string", + "required": false + }, + "product_image_url": { + "value": "https://example.com/images/prod_12345.jpg", + "type": "string", + "required": false + }, + "variant_ids": { + "value": ["variant_001", "variant_002"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateProductInfo", + "qualifiedName": "MailchimpMarketingApi.UpdateProductInfo", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateProductInfo@1.0.0", + "description": "Update details of a specific product in a store.\n\n This tool updates information for a specific product in an e-commerce store. Call this tool when you need to modify product details, such as name, description, or price, for a particular store.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "The identifier for the specific store whose product details are being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "product_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the product within a store. Required for updating product details. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchEcommerceStoresIdProductsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateProductInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_12345", + "type": "string", + "required": false + }, + "product_identifier": { + "value": "product_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Product Name\", \"description\":\"This is an updated description for the product.\", \"price\":29.99}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateProductVariant", + "qualifiedName": "MailchimpMarketingApi.UpdateProductVariant", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateProductVariant@1.0.0", + "description": "Add or update a product variant in an ecommerce store.\n\n Use this tool to add a new product variant or update an existing one in a specified ecommerce store.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the ecommerce store. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "product_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the product in the store. This ID is used to specify which product's variant is being added or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "product_variant_id", + "type": "string", + "required": false, + "description": "The unique identifier for the product variant to be updated or added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'putEcommerceStoresIdProductsIdVariantsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateProductVariant", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store_12345", + "type": "string", + "required": false + }, + "product_identifier": { + "value": "product_abc", + "type": "string", + "required": false + }, + "product_variant_id": { + "value": "variant_xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"variant_name\": \"Large\", \"price\": \"29.99\", \"sku\": \"sku_123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePromoCode", + "qualifiedName": "MailchimpMarketingApi.UpdatePromoCode", + "fullyQualifiedName": "MailchimpMarketingApi.UpdatePromoCode@1.0.0", + "description": "Update details of a specific promo code.\n\nUse this tool to update the details of a specific promo code in an eCommerce store using Mailchimp. It should be called when you need to modify existing promotional codes, such as changing the discount or expiration date.", + "parameters": [ + { + "name": "promo_code_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the promo code of a store.", + "enum": null, + "inferrable": true + }, + { + "name": "promo_rule_identifier", + "type": "string", + "required": true, + "description": "The identifier for the promo rule in a store. Used to specify which promotional rule to update.", + "enum": null, + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the eCommerce store in Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "discount_code", + "type": "string", + "required": false, + "description": "The discount code for the promo. Must be UTF-8 and up to 50 characters.", + "enum": null, + "inferrable": true + }, + { + "name": "is_promo_code_enabled", + "type": "boolean", + "required": false, + "description": "Set to true to enable the promo code, or false to disable it.", + "enum": null, + "inferrable": true + }, + { + "name": "promo_code_usage_count", + "type": "integer", + "required": false, + "description": "Specifies how many times the promo code has been used. Accepts an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "promotion_created_at", + "type": "string", + "required": false, + "description": "The promotion creation date and time in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "promotion_redemption_url", + "type": "string", + "required": false, + "description": "The URL for the promotion campaign. Must be UTF-8, max 2000 characters.", + "enum": null, + "inferrable": true + }, + { + "name": "promotion_update_timestamp", + "type": "string", + "required": false, + "description": "The timestamp when the promotion was updated, in ISO 8601 format. This indicates the last update time of the promo code details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchEcommerceStoresIdPromocodesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdatePromoCode", + "parameters": { + "promo_code_identifier": { + "value": "ABC123", + "type": "string", + "required": true + }, + "promo_rule_identifier": { + "value": "RULE456", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "STORE789", + "type": "string", + "required": true + }, + "discount_code": { + "value": "SAVE20", + "type": "string", + "required": false + }, + "is_promo_code_enabled": { + "value": true, + "type": "boolean", + "required": false + }, + "promo_code_usage_count": { + "value": 150, + "type": "integer", + "required": false + }, + "promotion_created_at": { + "value": "2023-01-15T12:00:00Z", + "type": "string", + "required": false + }, + "promotion_redemption_url": { + "value": "https://example.com/redeem", + "type": "string", + "required": false + }, + "promotion_update_timestamp": { + "value": "2023-10-05T14:30:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePromoRule", + "qualifiedName": "MailchimpMarketingApi.UpdatePromoRule", + "fullyQualifiedName": "MailchimpMarketingApi.UpdatePromoRule@1.0.0", + "description": "Update a promotional rule in an e-commerce store.\n\n Use this tool to modify details of an existing promotional rule in a specified e-commerce store. It should be called when you need to update the conditions or discounts associated with a promo rule.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "store_identifier", + "type": "string", + "required": false, + "description": "Specify the unique identifier of the e-commerce store where the promo rule will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "promo_rule_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the promotional rule within the store. This is required to specify which promo rule to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchEcommerceStoresIdPromorulesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdatePromoRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "store_identifier": { + "value": "store123", + "type": "string", + "required": false + }, + "promo_rule_identifier": { + "value": "promo456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"discount_type\": \"percentage\", \"discount_value\": 20, \"conditions\": [{\"category\": \"electronics\", \"min_quantity\": 2}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTemplateFolder", + "qualifiedName": "MailchimpMarketingApi.UpdateTemplateFolder", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateTemplateFolder@1.0.0", + "description": "Update a specific folder for organizing templates.\n\nThis tool updates a specific folder used to organize templates in Mailchimp. It should be called when you need to change the details of a template folder, identified by its ID.", + "parameters": [ + { + "name": "folder_name", + "type": "string", + "required": true, + "description": "The new name for the template folder. Provide a string value.", + "enum": null, + "inferrable": true + }, + { + "name": "template_folder_id", + "type": "string", + "required": true, + "description": "The unique identifier for the template folder to be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchTemplateFoldersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateTemplateFolder", + "parameters": { + "folder_name": { + "value": "New Marketing Templates", + "type": "string", + "required": true + }, + "template_folder_id": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateWebhookSettings", + "qualifiedName": "MailchimpMarketingApi.UpdateWebhookSettings", + "fullyQualifiedName": "MailchimpMarketingApi.UpdateWebhookSettings@1.0.0", + "description": "Update the settings for an existing webhook.\n\n Use this tool to modify the configuration of a specific webhook linked to a mailing list. This is useful for changing how the webhook operates without creating a new one.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "list_id", + "type": "string", + "required": false, + "description": "The unique identifier for the mailing list associated with the webhook. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the webhook to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchListsIdWebhooksId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UpdateWebhookSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "list_id": { + "value": "12345abcde", + "type": "string", + "required": false + }, + "webhook_identifier": { + "value": "webhook_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"url\":\"https://example.com/webhook\",\"events\":[\"subscribe\",\"unsubscribe\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UploadFileToFileManager", + "qualifiedName": "MailchimpMarketingApi.UploadFileToFileManager", + "fullyQualifiedName": "MailchimpMarketingApi.UploadFileToFileManager@1.0.0", + "description": "Upload a new file or image to the File Manager.\n\nUse this tool to upload files or images to the File Manager, enhancing content management.", + "parameters": [ + { + "name": "file_content_base64", + "type": "string", + "required": true, + "description": "The base64-encoded contents of the file to be uploaded.", + "enum": null, + "inferrable": true + }, + { + "name": "file_name", + "type": "string", + "required": true, + "description": "The name to be assigned to the uploaded file.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_id", + "type": "integer", + "required": false, + "description": "The ID of the folder where the file will be uploaded. This should be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postFileManagerFiles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.UploadFileToFileManager", + "parameters": { + "file_content_base64": { + "value": "SGVsbG8sIFdvcmxkIQ==", + "type": "string", + "required": true + }, + "file_name": { + "value": "example_image.png", + "type": "string", + "required": true + }, + "folder_id": { + "value": 12345, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "VerifyScriptInstallation", + "qualifiedName": "MailchimpMarketingApi.VerifyScriptInstallation", + "fullyQualifiedName": "MailchimpMarketingApi.VerifyScriptInstallation@1.0.0", + "description": "Verify if the Mailchimp connected site script is installed.\n\nThis tool checks if a Mailchimp connected site's script has been correctly installed using the script URL or fragment. Use it to confirm script deployment.", + "parameters": [ + { + "name": "site_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Mailchimp connected site to verify script installation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postConnectedSitesIdActionsVerifyScriptInstallation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.VerifyScriptInstallation", + "parameters": { + "site_unique_identifier": { + "value": "unique-site-identifier-123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "VerifySendingDomain", + "qualifiedName": "MailchimpMarketingApi.VerifySendingDomain", + "fullyQualifiedName": "MailchimpMarketingApi.VerifySendingDomain@1.0.0", + "description": "Verify if a domain is authorized for sending emails.\n\nUse this tool to verify whether a specific domain is authorized for sending emails through Mailchimp. It should be called when you need to confirm the sending capabilities of a domain.", + "parameters": [ + { + "name": "domain_name_to_verify", + "type": "string", + "required": true, + "description": "The domain name you wish to verify for sending emails through Mailchimp.", + "enum": null, + "inferrable": true + }, + { + "name": "verification_code", + "type": "string", + "required": true, + "description": "The code sent to the provided email address for domain verification.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "mailchimp", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'verifyDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MailchimpMarketingApi.VerifySendingDomain", + "parameters": { + "domain_name_to_verify": { + "value": "example.com", + "type": "string", + "required": true + }, + "verification_code": { + "value": "ABC123XYZ", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "mailchimp", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The MailchimpMarketingApi MCP Server uses the Auth Provider with id `arcade-mailchimp` to connect to users' MailchimpMarketingApi accounts. In order to use the MCP Server, you will need to configure the `arcade-mailchimp` auth provider.\nThe Mailchimp OAuth provider enables secure authentication with Mailchimp's Marketing API using OAuth 2.0. This allows your tools and agents to access user data and perform actions on their behalf. For detailed information on setting up the OAuth provider, including how to register your application with Mailchimp and configure the auth provider in Arcade, see the [Mailchimp Auth Provider documentation](/references/auth-providers/mailchimp).", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:39:26.634Z", + "summary": "The MailchimpMarketingApi toolkit enables seamless integration with the Mailchimp Marketing API, allowing developers to manage marketing efforts effectively. It empowers users to execute various operations related to audience management, email campaigns, and e-commerce functionality.\n\n**Capabilities:**\n- Manage and update audience members, lists, and segments.\n- Create and distribute email campaigns with tracking capabilities.\n- Integrate e-commerce functionality including product management and order processing.\n- Retrieve analytics and performance reports for better insights.\n- Automate marketing workflows with ease.\n\n**OAuth:**\n- Provider: Mailchimp\n- Scopes: None\n\n**Secrets:**\n- No secret types or names are required." +} diff --git a/data/toolkits/math.json b/data/toolkits/math.json new file mode 100644 index 000000000..3e924a10c --- /dev/null +++ b/data/toolkits/math.json @@ -0,0 +1,1050 @@ +{ + "id": "Math", + "label": "Math", + "version": "1.0.5", + "description": "Arcade.dev LLM tools for doing math", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/math.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/math", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "AbsVal", + "qualifiedName": "Math.AbsVal", + "fullyQualifiedName": "Math.AbsVal@1.0.5", + "description": "Calculate the absolute value of a number", + "parameters": [ + { + "name": "a", + "type": "string", + "required": true, + "description": "The number as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The absolute value of the number as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.AbsVal", + "parameters": { + "a": { + "value": "-42", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Add", + "qualifiedName": "Math.Add", + "fullyQualifiedName": "Math.Add@1.0.5", + "description": "Add two numbers together", + "parameters": [ + { + "name": "a", + "type": "string", + "required": true, + "description": "The first number as a string", + "enum": null, + "inferrable": true + }, + { + "name": "b", + "type": "string", + "required": true, + "description": "The second number as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The sum of the two numbers as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Add", + "parameters": { + "a": { + "value": "5", + "type": "string", + "required": true + }, + "b": { + "value": "10", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Avg", + "qualifiedName": "Math.Avg", + "fullyQualifiedName": "Math.Avg@1.0.5", + "description": "Calculate the average (mean) of a list of numbers.\nReturns \"0.0\" if the list is empty.", + "parameters": [ + { + "name": "numbers", + "type": "array", + "innerType": "string", + "required": true, + "description": "The list of numbers as strings", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The average (mean) of the numbers in the list as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Avg", + "parameters": { + "numbers": { + "value": ["10", "20", "30", "40", "50"], + "type": "array", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Ceil", + "qualifiedName": "Math.Ceil", + "fullyQualifiedName": "Math.Ceil@1.0.5", + "description": "Return the ceiling of a number", + "parameters": [ + { + "name": "a", + "type": "string", + "required": true, + "description": "The number to round up as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The smallest integer greater than or equal to the number as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Ceil", + "parameters": { + "a": { + "value": "7.3", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DegToRad", + "qualifiedName": "Math.DegToRad", + "fullyQualifiedName": "Math.DegToRad@1.0.5", + "description": "Convert an angle from degrees to radians.", + "parameters": [ + { + "name": "degrees", + "type": "string", + "required": true, + "description": "Angle in degrees as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "Angle in radians as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.DegToRad", + "parameters": { + "degrees": { + "value": "45", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Divide", + "qualifiedName": "Math.Divide", + "fullyQualifiedName": "Math.Divide@1.0.5", + "description": "Divide two numbers", + "parameters": [ + { + "name": "a", + "type": "string", + "required": true, + "description": "The first number as a string", + "enum": null, + "inferrable": true + }, + { + "name": "b", + "type": "string", + "required": true, + "description": "The second number as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The quotient of the two numbers as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Divide", + "parameters": { + "a": { + "value": "12", + "type": "string", + "required": true + }, + "b": { + "value": "4", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Factorial", + "qualifiedName": "Math.Factorial", + "fullyQualifiedName": "Math.Factorial@1.0.5", + "description": "Compute the factorial of a non-negative integer\nReturns \"1\" for \"0\"", + "parameters": [ + { + "name": "a", + "type": "string", + "required": true, + "description": "The non-negative integer to compute the factorial for as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The factorial of the number as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Factorial", + "parameters": { + "a": { + "value": "5", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Floor", + "qualifiedName": "Math.Floor", + "fullyQualifiedName": "Math.Floor@1.0.5", + "description": "Return the floor of a number", + "parameters": [ + { + "name": "a", + "type": "string", + "required": true, + "description": "The number to round down as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The largest integer less than or equal to the number as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Floor", + "parameters": { + "a": { + "value": "7.89", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Gcd", + "qualifiedName": "Math.Gcd", + "fullyQualifiedName": "Math.Gcd@1.0.5", + "description": "Calculate the greatest common divisor (GCD) of two integers.", + "parameters": [ + { + "name": "a", + "type": "string", + "required": true, + "description": "First integer as a string", + "enum": null, + "inferrable": true + }, + { + "name": "b", + "type": "string", + "required": true, + "description": "Second integer as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The greatest common divisor of a and b as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Gcd", + "parameters": { + "a": { + "value": "36", + "type": "string", + "required": true + }, + "b": { + "value": "60", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GenerateRandomFloat", + "qualifiedName": "Math.GenerateRandomFloat", + "fullyQualifiedName": "Math.GenerateRandomFloat@1.0.5", + "description": "Generate a random float between min_value and max_value.", + "parameters": [ + { + "name": "min_value", + "type": "string", + "required": true, + "description": "The minimum value of the random float as a string", + "enum": null, + "inferrable": true + }, + { + "name": "max_value", + "type": "string", + "required": true, + "description": "The maximum value of the random float as a string", + "enum": null, + "inferrable": true + }, + { + "name": "seed", + "type": "string", + "required": false, + "description": "The seed for the random number generator as a string. If None, the current system time is used.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "A random float between min_value and max_value as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.GenerateRandomFloat", + "parameters": { + "min_value": { + "value": "0.5", + "type": "string", + "required": true + }, + "max_value": { + "value": "10.0", + "type": "string", + "required": true + }, + "seed": { + "value": "12345", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GenerateRandomInt", + "qualifiedName": "Math.GenerateRandomInt", + "fullyQualifiedName": "Math.GenerateRandomInt@1.0.5", + "description": "Generate a random integer between min_value and max_value (inclusive).", + "parameters": [ + { + "name": "min_value", + "type": "string", + "required": true, + "description": "The minimum value of the random integer as a string", + "enum": null, + "inferrable": true + }, + { + "name": "max_value", + "type": "string", + "required": true, + "description": "The maximum value of the random integer as a string", + "enum": null, + "inferrable": true + }, + { + "name": "seed", + "type": "string", + "required": false, + "description": "The seed for the random number generator as a string. If None, the current system time is used.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "A random integer between min_value and max_value as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.GenerateRandomInt", + "parameters": { + "min_value": { + "value": "1", + "type": "string", + "required": true + }, + "max_value": { + "value": "100", + "type": "string", + "required": true + }, + "seed": { + "value": "42", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Lcm", + "qualifiedName": "Math.Lcm", + "fullyQualifiedName": "Math.Lcm@1.0.5", + "description": "Calculate the least common multiple (LCM) of two integers.\nReturns \"0\" if either integer is 0.", + "parameters": [ + { + "name": "a", + "type": "string", + "required": true, + "description": "First integer as a string", + "enum": null, + "inferrable": true + }, + { + "name": "b", + "type": "string", + "required": true, + "description": "Second integer as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The least common multiple of a and b as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Lcm", + "parameters": { + "a": { + "value": "12", + "type": "string", + "required": true + }, + "b": { + "value": "18", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Log", + "qualifiedName": "Math.Log", + "fullyQualifiedName": "Math.Log@1.0.5", + "description": "Calculate the logarithm of a number with a given base", + "parameters": [ + { + "name": "a", + "type": "string", + "required": true, + "description": "The number to take the logarithm of as a string", + "enum": null, + "inferrable": true + }, + { + "name": "base", + "type": "string", + "required": true, + "description": "The logarithmic base as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The logarithm of the number with the specified base as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Log", + "parameters": { + "a": { + "value": "100", + "type": "string", + "required": true + }, + "base": { + "value": "10", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Median", + "qualifiedName": "Math.Median", + "fullyQualifiedName": "Math.Median@1.0.5", + "description": "Calculate the median of a list of numbers.\nReturns \"0.0\" if the list is empty.", + "parameters": [ + { + "name": "numbers", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of numbers as strings", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The median value of the numbers in the list as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Median", + "parameters": { + "numbers": { + "value": ["3", "1", "4", "1", "5"], + "type": "array", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Mod", + "qualifiedName": "Math.Mod", + "fullyQualifiedName": "Math.Mod@1.0.5", + "description": "Calculate the remainder (modulus) of one number divided by another", + "parameters": [ + { + "name": "a", + "type": "string", + "required": true, + "description": "The dividend as a string", + "enum": null, + "inferrable": true + }, + { + "name": "b", + "type": "string", + "required": true, + "description": "The divisor as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The remainder after dividing a by b as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Mod", + "parameters": { + "a": { + "value": "25", + "type": "string", + "required": true + }, + "b": { + "value": "4", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Multiply", + "qualifiedName": "Math.Multiply", + "fullyQualifiedName": "Math.Multiply@1.0.5", + "description": "Multiply two numbers together", + "parameters": [ + { + "name": "a", + "type": "string", + "required": true, + "description": "The first number as a string", + "enum": null, + "inferrable": true + }, + { + "name": "b", + "type": "string", + "required": true, + "description": "The second number as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The product of the two numbers as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Multiply", + "parameters": { + "a": { + "value": "5", + "type": "string", + "required": true + }, + "b": { + "value": "10", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Power", + "qualifiedName": "Math.Power", + "fullyQualifiedName": "Math.Power@1.0.5", + "description": "Calculate one number raised to the power of another", + "parameters": [ + { + "name": "a", + "type": "string", + "required": true, + "description": "The base number as a string", + "enum": null, + "inferrable": true + }, + { + "name": "b", + "type": "string", + "required": true, + "description": "The exponent as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The result of raising a to the power of b as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Power", + "parameters": { + "a": { + "value": "5", + "type": "string", + "required": true + }, + "b": { + "value": "3", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RadToDeg", + "qualifiedName": "Math.RadToDeg", + "fullyQualifiedName": "Math.RadToDeg@1.0.5", + "description": "Convert an angle from radians to degrees.", + "parameters": [ + { + "name": "radians", + "type": "string", + "required": true, + "description": "Angle in radians as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "Angle in degrees as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.RadToDeg", + "parameters": { + "radians": { + "value": "3.14159", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RoundNum", + "qualifiedName": "Math.RoundNum", + "fullyQualifiedName": "Math.RoundNum@1.0.5", + "description": "Round a number to a specified number of positive digits", + "parameters": [ + { + "name": "value", + "type": "string", + "required": true, + "description": "The number to round as a string", + "enum": null, + "inferrable": true + }, + { + "name": "ndigits", + "type": "string", + "required": true, + "description": "The number of digits after the decimal point as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The number rounded to the specified number of digits as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.RoundNum", + "parameters": { + "value": { + "value": "3.14159", + "type": "string", + "required": true + }, + "ndigits": { + "value": "2", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Sqrt", + "qualifiedName": "Math.Sqrt", + "fullyQualifiedName": "Math.Sqrt@1.0.5", + "description": "Get the square root of a number", + "parameters": [ + { + "name": "a", + "type": "string", + "required": true, + "description": "The number to square root as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The square root of the number as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Sqrt", + "parameters": { + "a": { + "value": "16", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Subtract", + "qualifiedName": "Math.Subtract", + "fullyQualifiedName": "Math.Subtract@1.0.5", + "description": "Subtract two numbers", + "parameters": [ + { + "name": "a", + "type": "string", + "required": true, + "description": "The first number as a string", + "enum": null, + "inferrable": true + }, + { + "name": "b", + "type": "string", + "required": true, + "description": "The second number as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The difference of the two numbers as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.Subtract", + "parameters": { + "a": { + "value": "15", + "type": "string", + "required": true + }, + "b": { + "value": "8", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SumList", + "qualifiedName": "Math.SumList", + "fullyQualifiedName": "Math.SumList@1.0.5", + "description": "Sum all numbers in a list", + "parameters": [ + { + "name": "numbers", + "type": "array", + "innerType": "string", + "required": true, + "description": "The list of numbers as strings", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The sum of the numbers in the list as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.SumList", + "parameters": { + "numbers": { + "value": ["12", "7", "3.5", "4.2"], + "type": "array", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SumRange", + "qualifiedName": "Math.SumRange", + "fullyQualifiedName": "Math.SumRange@1.0.5", + "description": "Sum all numbers from start through end", + "parameters": [ + { + "name": "start", + "type": "string", + "required": true, + "description": "The start of the range to sum as a string", + "enum": null, + "inferrable": true + }, + { + "name": "end", + "type": "string", + "required": true, + "description": "The end of the range to sum as a string", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The sum of the numbers in the list as a string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Math.SumRange", + "parameters": { + "start": { + "value": "1", + "type": "string", + "required": true + }, + "end": { + "value": "100", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:37:39.838Z", + "summary": "Arcade.dev provides a Math toolkit that enables seamless mathematical operations for developers, facilitating complex calculations with ease. This toolkit supports a variety of foundational math functions to enhance applications and streamline computations.\n\n**Capabilities** \n- Perform basic arithmetic operations (addition, subtraction, multiplication, division) \n- Generate random integers and floats within specified ranges \n- Calculate statistical measures (mean, median, average) \n- Execute advanced functions such as GCD, LCM, and factorial \n- Transform angle measures between degrees and radians \n\n**Secrets** \n- No secrets are used in the toolkit." +} diff --git a/data/toolkits/microsoft.json b/data/toolkits/microsoft.json new file mode 100644 index 000000000..7c806e7b1 --- /dev/null +++ b/data/toolkits/microsoft.json @@ -0,0 +1,977 @@ +{ + "id": "Microsoft", + "label": "Microsoft", + "version": "1.1.1", + "description": "Arcade.dev LLM tools for Outlook Mail", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/microsoft.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/microsoft", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "microsoft", + "allScopes": [ + "Calendars.ReadBasic", + "Calendars.ReadWrite", + "Mail.Read", + "Mail.ReadWrite", + "Mail.Send", + "MailboxSettings.Read" + ] + }, + "tools": [ + { + "name": "CreateAndSendEmail", + "qualifiedName": "Microsoft.CreateAndSendEmail", + "fullyQualifiedName": "Microsoft.CreateAndSendEmail@1.1.1", + "description": "Create and immediately send a new email in Outlook to the specified recipients", + "parameters": [ + { + "name": "subject", + "type": "string", + "required": true, + "description": "The subject of the email to create", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the email to create", + "enum": null, + "inferrable": true + }, + { + "name": "to_recipients", + "type": "array", + "innerType": "string", + "required": true, + "description": "The email addresses that will be the recipients of the email", + "enum": null, + "inferrable": true + }, + { + "name": "cc_recipients", + "type": "array", + "innerType": "string", + "required": false, + "description": "The email addresses that will be the CC recipients of the email.", + "enum": null, + "inferrable": true + }, + { + "name": "bcc_recipients", + "type": "array", + "innerType": "string", + "required": false, + "description": "The email addresses that will be the BCC recipients of the email.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.Send"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the created email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Microsoft.CreateAndSendEmail", + "parameters": { + "subject": { + "value": "Project Update", + "type": "string", + "required": true + }, + "body": { + "value": "Hello team,\n\nThis is a quick update on the project's progress. Please see the attached files for more details.\n\nBest regards,\nJohn Doe", + "type": "string", + "required": true + }, + "to_recipients": { + "value": ["alice@example.com", "bob@example.com"], + "type": "array", + "required": true + }, + "cc_recipients": { + "value": ["charlie@example.com"], + "type": "array", + "required": false + }, + "bcc_recipients": { + "value": [], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateDraftEmail", + "qualifiedName": "Microsoft.CreateDraftEmail", + "fullyQualifiedName": "Microsoft.CreateDraftEmail@1.1.1", + "description": "Compose a new draft email in Outlook", + "parameters": [ + { + "name": "subject", + "type": "string", + "required": true, + "description": "The subject of the draft email to create", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the draft email to create", + "enum": null, + "inferrable": true + }, + { + "name": "to_recipients", + "type": "array", + "innerType": "string", + "required": true, + "description": "The email addresses that will be the recipients of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "cc_recipients", + "type": "array", + "innerType": "string", + "required": false, + "description": "The email addresses that will be the CC recipients of the draft email.", + "enum": null, + "inferrable": true + }, + { + "name": "bcc_recipients", + "type": "array", + "innerType": "string", + "required": false, + "description": "The email addresses that will be the BCC recipients of the draft email.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.ReadWrite"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the created email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Microsoft.CreateDraftEmail", + "parameters": { + "subject": { + "value": "Weekly Team Update", + "type": "string", + "required": true + }, + "body": { + "value": "Hello Team,\n\nPlease find attached the update for this week. Let me know if you have any questions.\n\nBest,\nJohn", + "type": "string", + "required": true + }, + "to_recipients": { + "value": ["jane.doe@example.com", "alex.smith@example.com"], + "type": "array", + "required": true + }, + "cc_recipients": { + "value": ["manager@example.com"], + "type": "array", + "required": false + }, + "bcc_recipients": { + "value": [], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateEvent", + "qualifiedName": "Microsoft.CreateEvent", + "fullyQualifiedName": "Microsoft.CreateEvent@1.1.1", + "description": "Create an event in the authenticated user's default calendar.\n\nIgnores timezone offsets provided in the start_date_time and end_date_time parameters.\nInstead, uses the user's default calendar timezone to filter events.\nIf the user has not set a timezone for their calendar, then the timezone will be UTC.", + "parameters": [ + { + "name": "subject", + "type": "string", + "required": true, + "description": "The text of the event's subject (title) line.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the event", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_time", + "type": "string", + "required": true, + "description": "The datetime of the event's start, represented in ISO 8601 format. Timezone offset is ignored. For example, 2025-04-25T13:00:00", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_time", + "type": "string", + "required": true, + "description": "The datetime of the event's end, represented in ISO 8601 format. Timezone offset is ignored. For example, 2025-04-25T13:30:00", + "enum": null, + "inferrable": true + }, + { + "name": "location", + "type": "string", + "required": false, + "description": "The location of the event", + "enum": null, + "inferrable": true + }, + { + "name": "attendee_emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "The email addresses of the attendees of the event. Must be valid email addresses e.g., username@domain.com.", + "enum": null, + "inferrable": true + }, + { + "name": "is_online_meeting", + "type": "boolean", + "required": false, + "description": "Whether the event is an online meeting. Defaults to False", + "enum": null, + "inferrable": true + }, + { + "name": "custom_meeting_url", + "type": "string", + "required": false, + "description": "The URL of the online meeting. If not provided and is_online_meeting is True, then a url will be generated for you", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["MailboxSettings.Read", "Calendars.ReadWrite"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the created event details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Microsoft.CreateEvent", + "parameters": { + "subject": { + "value": "Team Sync Meeting", + "type": "string", + "required": true + }, + "body": { + "value": "Discuss project updates and action items.", + "type": "string", + "required": true + }, + "start_date_time": { + "value": "2025-04-25T13:00:00", + "type": "string", + "required": true + }, + "end_date_time": { + "value": "2025-04-25T14:00:00", + "type": "string", + "required": true + }, + "location": { + "value": "Conference Room B", + "type": "string", + "required": false + }, + "attendee_emails": { + "value": ["alice@example.com", "bob@example.com"], + "type": "array", + "required": false + }, + "is_online_meeting": { + "value": true, + "type": "boolean", + "required": false + }, + "custom_meeting_url": { + "value": "https://meet.example.com/team-sync", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEvent", + "qualifiedName": "Microsoft.GetEvent", + "fullyQualifiedName": "Microsoft.GetEvent@1.1.1", + "description": "Get an event by its ID from the user's calendar.", + "parameters": [ + { + "name": "event_id", + "type": "string", + "required": true, + "description": "The ID of the event to get", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["MailboxSettings.Read", "Calendars.ReadBasic"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the event details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Microsoft.GetEvent", + "parameters": { + "event_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEmails", + "qualifiedName": "Microsoft.ListEmails", + "fullyQualifiedName": "Microsoft.ListEmails@1.1.1", + "description": "List emails in the user's mailbox across all folders.\n\nSince this tool lists email across all folders, it may return sent items, drafts,\nand other items that are not in the inbox.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of messages to return. Max is 100. Defaults to 5.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to continue a previous request", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of emails" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Microsoft.ListEmails", + "parameters": { + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEmailsByProperty", + "qualifiedName": "Microsoft.ListEmailsByProperty", + "fullyQualifiedName": "Microsoft.ListEmailsByProperty@1.1.1", + "description": "List emails in the user's mailbox across all folders filtering by a property.", + "parameters": [ + { + "name": "property", + "type": "string", + "required": true, + "description": "The property to filter the emails by.", + "enum": [ + "subject", + "conversationId", + "receivedDateTime", + "sender/emailAddress/address" + ], + "inferrable": true + }, + { + "name": "operator", + "type": "string", + "required": true, + "description": "The operator to use for the filter.", + "enum": [ + "eq", + "ne", + "gt", + "ge", + "lt", + "le", + "startsWith", + "endsWith", + "contains" + ], + "inferrable": true + }, + { + "name": "value", + "type": "string", + "required": true, + "description": "The value to filter the emails by", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of messages to return. Max is 100. Defaults to 5.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to continue a previous request", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of emails" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Microsoft.ListEmailsByProperty", + "parameters": { + "property": { + "value": "subject", + "type": "string", + "required": true + }, + "operator": { + "value": "contains", + "type": "string", + "required": true + }, + "value": { + "value": "meeting", + "type": "string", + "required": true + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "12345abc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEmailsInFolder", + "qualifiedName": "Microsoft.ListEmailsInFolder", + "fullyQualifiedName": "Microsoft.ListEmailsInFolder@1.1.1", + "description": "List the user's emails in the specified folder.\n\nExactly one of `well_known_folder_name` or `folder_id` MUST be provided.", + "parameters": [ + { + "name": "well_known_folder_name", + "type": "string", + "required": false, + "description": "The name of the folder to list emails from. Defaults to None.", + "enum": [ + "deleteditems", + "drafts", + "inbox", + "junkemail", + "sentitems", + "starred", + "tasks" + ], + "inferrable": true + }, + { + "name": "folder_id", + "type": "string", + "required": false, + "description": "The ID of the folder to list emails from if the folder is not a well-known folder. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of messages to return. Max is 100. Defaults to 5.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to continue a previous request", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of emails and a pagination token, if applicable" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Microsoft.ListEmailsInFolder", + "parameters": { + "well_known_folder_name": { + "value": "Inbox", + "type": "string", + "required": false + }, + "folder_id": { + "value": null, + "type": "string", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEventsInTimeRange", + "qualifiedName": "Microsoft.ListEventsInTimeRange", + "fullyQualifiedName": "Microsoft.ListEventsInTimeRange@1.1.1", + "description": "List events in the user's calendar in a specific time range.\n\nIgnores timezone offsets provided in the start_date_time and end_date_time parameters.\nInstead, uses the user's default calendar timezone to filter events.\nIf the user has not set a timezone for their calendar, then the timezone will be UTC.", + "parameters": [ + { + "name": "start_date_time", + "type": "string", + "required": true, + "description": "The start date and time of the time range, represented in ISO 8601 format. Timezone offset is ignored. For example, 2025-04-24T19:00:00", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_time", + "type": "string", + "required": true, + "description": "The end date and time of the time range, represented in ISO 8601 format. Timezone offset is ignored. For example, 2025-04-24T19:30:00", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of events to return. Max 1000. Defaults to 10", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["MailboxSettings.Read", "Calendars.ReadBasic"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of events" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Microsoft.ListEventsInTimeRange", + "parameters": { + "start_date_time": { + "value": "2025-04-24T19:00:00", + "type": "string", + "required": true + }, + "end_date_time": { + "value": "2025-04-24T19:30:00", + "type": "string", + "required": true + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplyToEmail", + "qualifiedName": "Microsoft.ReplyToEmail", + "fullyQualifiedName": "Microsoft.ReplyToEmail@1.1.1", + "description": "Reply to an existing email in Outlook.\n\nUse this tool to reply to the sender or all recipients of the email.\nSpecify the reply_type to determine the scope of the reply.", + "parameters": [ + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The ID of the email to reply to", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the reply to the email", + "enum": null, + "inferrable": true + }, + { + "name": "reply_type", + "type": "string", + "required": false, + "description": "Specify ReplyType.REPLY to reply only to the sender or ReplyType.REPLY_ALL to reply to all recipients. Defaults to ReplyType.REPLY.", + "enum": ["reply", "reply_all"], + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.Send"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the sent email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Microsoft.ReplyToEmail", + "parameters": { + "message_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "body": { + "value": "Thank you for your email. I will get back to you soon.", + "type": "string", + "required": true + }, + "reply_type": { + "value": "ReplyType.REPLY_ALL", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendDraftEmail", + "qualifiedName": "Microsoft.SendDraftEmail", + "fullyQualifiedName": "Microsoft.SendDraftEmail@1.1.1", + "description": "Send an existing draft email in Outlook\n\nThis tool can send any un-sent email:\n - draft\n - reply-draft\n - reply-all draft\n - forward draft", + "parameters": [ + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The ID of the draft email to send", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.Send"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the sent email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Microsoft.SendDraftEmail", + "parameters": { + "message_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateDraftEmail", + "qualifiedName": "Microsoft.UpdateDraftEmail", + "fullyQualifiedName": "Microsoft.UpdateDraftEmail@1.1.1", + "description": "Update an existing draft email in Outlook.\n\nThis tool overwrites the subject and body of a draft email (if provided),\nand modifies its recipient lists by selectively adding or removing email addresses.\n\nThis tool can update any un-sent email:\n - draft\n - reply-draft\n - reply-all draft\n - forward draft", + "parameters": [ + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The ID of the draft email to update", + "enum": null, + "inferrable": true + }, + { + "name": "subject", + "type": "string", + "required": false, + "description": "The new subject of the draft email. If provided, the existing subject will be overwritten", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "The new body of the draft email. If provided, the existing body will be overwritten", + "enum": null, + "inferrable": true + }, + { + "name": "to_add", + "type": "array", + "innerType": "string", + "required": false, + "description": "Email addresses to add as 'To' recipients.", + "enum": null, + "inferrable": true + }, + { + "name": "to_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "Email addresses to remove from the current 'To' recipients.", + "enum": null, + "inferrable": true + }, + { + "name": "cc_add", + "type": "array", + "innerType": "string", + "required": false, + "description": "Email addresses to add as 'CC' recipients.", + "enum": null, + "inferrable": true + }, + { + "name": "cc_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "Email addresses to remove from the current 'CC' recipients.", + "enum": null, + "inferrable": true + }, + { + "name": "bcc_add", + "type": "array", + "innerType": "string", + "required": false, + "description": "Email addresses to add as 'BCC' recipients.", + "enum": null, + "inferrable": true + }, + { + "name": "bcc_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "Email addresses to remove from the current 'BCC' recipients.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.ReadWrite"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the updated email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Microsoft.UpdateDraftEmail", + "parameters": { + "message_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "subject": { + "value": "Updated Meeting Agenda", + "type": "string", + "required": false + }, + "body": { + "value": "Please find the updated agenda for our meeting attached.", + "type": "string", + "required": false + }, + "to_add": { + "value": ["newrecipient@example.com"], + "type": "array", + "required": false + }, + "to_remove": { + "value": ["oldrecipient@example.com"], + "type": "array", + "required": false + }, + "cc_add": { + "value": ["ccrecipient@example.com"], + "type": "array", + "required": false + }, + "cc_remove": { + "value": [], + "type": "array", + "required": false + }, + "bcc_add": { + "value": [], + "type": "array", + "required": false + }, + "bcc_remove": { + "value": ["bccrecipient@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:37:49.335Z", + "summary": "# Microsoft Arcade Toolkit\nThe Microsoft Arcade toolkit provides seamless integration with Outlook Mail, enabling developers to create and manage emails and calendar events efficiently.\n\n## Capabilities\n- Create, send, and manage emails and drafts.\n- Organize and filter calendar events based on user-defined parameters.\n- Retrieve, update, and reply to existing emails easily.\n- Access user mailbox across all folders, enhancing email management.\n\n## OAuth\nAuth type: oauth2; Provider: Microsoft; Scopes: Calendars.ReadBasic, Calendars.ReadWrite, Mail.Read, Mail.ReadWrite, Mail.Send, MailboxSettings.Read.\n\n## Secrets\nNo secrets are required for the use of this toolkit." +} diff --git a/data/toolkits/microsoftteams.json b/data/toolkits/microsoftteams.json new file mode 100644 index 000000000..8f08863af --- /dev/null +++ b/data/toolkits/microsoftteams.json @@ -0,0 +1,1792 @@ +{ + "id": "MicrosoftTeams", + "label": "Microsoft Teams", + "version": "0.4.1", + "description": "Arcade.dev LLM tools for Microsoft Teams", + "metadata": { + "category": "social", + "iconUrl": "https://design-system.arcade.dev/icons/microsoft-teams.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/social-communication/microsoft-teams", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "microsoft", + "allScopes": [ + "Channel.ReadBasic.All", + "ChannelMessage.Read.All", + "ChannelMessage.Send", + "Chat.Create", + "Chat.Read", + "ChatMessage.Read", + "ChatMessage.Send", + "People.Read", + "Team.ReadBasic.All", + "TeamMember.Read.All", + "User.Read" + ] + }, + "tools": [ + { + "name": "CreateChat", + "qualifiedName": "MicrosoftTeams.CreateChat", + "fullyQualifiedName": "MicrosoftTeams.CreateChat@0.4.1", + "description": "Creates a Microsoft Teams chat.\n\nIf the chat already exists with the specified members, the MS Graph API will return the\nexisting chat.\n\nProvide any combination of user_ids and/or user_names. When available, prefer providing\nuser_ids for optimal performance.", + "parameters": [ + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of the users to create a chat with.", + "enum": null, + "inferrable": true + }, + { + "name": "user_names", + "type": "array", + "innerType": "string", + "required": false, + "description": "The names of the users to create a chat with.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Chat.Create"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The chat that was created." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.CreateChat", + "parameters": { + "user_ids": { + "value": ["12345", "67890"], + "type": "array", + "required": false + }, + "user_names": { + "value": ["john.doe", "jane.smith"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetChannelMessageReplies", + "qualifiedName": "MicrosoftTeams.GetChannelMessageReplies", + "fullyQualifiedName": "MicrosoftTeams.GetChannelMessageReplies@0.4.1", + "description": "Retrieves the replies to a Microsoft Teams channel message.", + "parameters": [ + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The ID of the message to get the replies of.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the channel to get the replies of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the team to get the replies of. If not provided: in case the user is a member of a single team, the tool will use it; otherwise an error will be returned with a list of all teams to pick from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["ChannelMessage.Read.All", "Team.ReadBasic.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The replies to the message." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.GetChannelMessageReplies", + "parameters": { + "message_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "channel_id_or_name": { + "value": "general", + "type": "string", + "required": true + }, + "team_id_or_name": { + "value": "teamXYZ", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetChannelMessages", + "qualifiedName": "MicrosoftTeams.GetChannelMessages", + "fullyQualifiedName": "MicrosoftTeams.GetChannelMessages@0.4.1", + "description": "Retrieves the messages in a Microsoft Teams channel.\n\nThe Microsoft Graph API does not support pagination for this endpoint.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": false, + "description": "The ID of the channel to get the messages of.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_name", + "type": "string", + "required": false, + "description": "The name of the channel to get the messages of.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of messages to return. Defaults to 50, max is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the team to get the messages of. If not provided: in case the user is a member of a single team, the tool will use it; otherwise an error will be returned with a list of all teams to pick from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["ChannelMessage.Read.All", "Team.ReadBasic.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The messages in the channel." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.GetChannelMessages", + "parameters": { + "channel_id": { + "value": "12345", + "type": "string", + "required": false + }, + "channel_name": { + "value": "general", + "type": "string", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "team_id_or_name": { + "value": "team_abc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetChannelMetadata", + "qualifiedName": "MicrosoftTeams.GetChannelMetadata", + "fullyQualifiedName": "MicrosoftTeams.GetChannelMetadata@0.4.1", + "description": "Retrieves metadata about a Microsoft Teams channel and its members.\n\nProvide either a channel_id or channel_name, not both. When available, prefer providing a\nchannel_id for optimal performance.\n\nThe Microsoft Graph API returns only up to the first 999 members in the channel.\n\nThis tool does not return messages exchanged in the channel. To retrieve channel messages,\nuse the `Teams.GetChannelMessages` tool. If you call this tool to retrieve messages, you will\ncause the release of unnecessary CO2 and contribute to climate change.\n\nIt is not necessary to call `Teams.ListTeams` before calling this tool. If the user does not\nprovide a team_id_or_name, the tool will try to find a unique team to use. If you call the\n`Teams.ListTeams` tool first, you will cause the release of unnecessary CO2 in the atmosphere\nand contribute to climate change.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": false, + "description": "The ID of the channel to get. Provide either this or channel_name.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_name", + "type": "string", + "required": false, + "description": "The name of the channel to get. Provide either this or channel_id.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the team to get the channel of (optional). If not provided: in case the user is a member of a single team, the tool will use it; otherwise an error will be returned with a list of all teams to pick from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Channel.ReadBasic.All", "Team.ReadBasic.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The channel and its members." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.GetChannelMetadata", + "parameters": { + "channel_id": { + "value": "12345678-90ab-cdef-1234-567890abcdef", + "type": "string", + "required": false + }, + "channel_name": { + "value": null, + "type": "string", + "required": false + }, + "team_id_or_name": { + "value": "Engineering Team", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetChatMessageById", + "qualifiedName": "MicrosoftTeams.GetChatMessageById", + "fullyQualifiedName": "MicrosoftTeams.GetChatMessageById@0.4.1", + "description": "Retrieves a Microsoft Teams chat message.", + "parameters": [ + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The ID of the message to get.", + "enum": null, + "inferrable": true + }, + { + "name": "chat_id", + "type": "string", + "required": true, + "description": "The ID of the chat to get the message from.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of the users in the chat to get the message from.", + "enum": null, + "inferrable": true + }, + { + "name": "user_names", + "type": "array", + "innerType": "string", + "required": false, + "description": "The names of the users in the chat to get the message from. Prefer providing user_ids, when available, since the performance is better.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Chat.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The message." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.GetChatMessageById", + "parameters": { + "message_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "chat_id": { + "value": "chat_67890", + "type": "string", + "required": true + }, + "user_ids": { + "value": ["user_1", "user_2"], + "type": "array", + "required": false + }, + "user_names": { + "value": ["Alice", "Bob"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetChatMessages", + "qualifiedName": "MicrosoftTeams.GetChatMessages", + "fullyQualifiedName": "MicrosoftTeams.GetChatMessages@0.4.1", + "description": "Retrieves messages from a Microsoft Teams chat (individual or group).\n\nProvide one of chat_id OR any combination of user_ids and/or user_names. When available, prefer\nproviding a chat_id or user_ids for optimal performance.\n\nIf the user provides user name(s), DO NOT CALL THE `Teams.SearchUsers` or `Teams.SearchPeople`\ntools first. Instead, provide the user name(s) directly to this tool through the `user_names`\nargument. It is not necessary to provide the currently signed in user's name/id, so do not call\n`Teams.GetSignedInUser` before calling this tool.\n\nMessages will be sorted in descending order by the messages' `created_datetime` field.\n\nThe Microsoft Teams API does not support pagination for this tool.", + "parameters": [ + { + "name": "chat_id", + "type": "string", + "required": false, + "description": "The ID of the chat to get messages from.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of the users in the chat to get messages from.", + "enum": null, + "inferrable": true + }, + { + "name": "user_names", + "type": "array", + "innerType": "string", + "required": false, + "description": "The names of the users in the chat to get messages from. Prefer providing user_ids, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "start_datetime", + "type": "string", + "required": false, + "description": "The start date to filter messages. Provide a string in the format 'YYYY-MM-DD' or 'YYYY-MM-DD HH:MM:SS'. Defaults to None (no start date filter).", + "enum": null, + "inferrable": true + }, + { + "name": "end_datetime", + "type": "string", + "required": false, + "description": "The end date to filter messages. Provide a string in the format 'YYYY-MM-DD' or 'YYYY-MM-DD HH:MM:SS'. Defaults to None (no end date filter).", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of messages to return. Defaults to 50, max is 50.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Chat.Read", "Chat.Create"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The messages in the chat." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.GetChatMessages", + "parameters": { + "chat_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "user_ids": { + "value": ["user1", "user2"], + "type": "array", + "required": false + }, + "user_names": { + "value": ["john_doe", "jane_smith"], + "type": "array", + "required": false + }, + "start_datetime": { + "value": "2023-10-01 08:00:00", + "type": "string", + "required": false + }, + "end_datetime": { + "value": "2023-10-10 17:00:00", + "type": "string", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetChatMetadata", + "qualifiedName": "MicrosoftTeams.GetChatMetadata", + "fullyQualifiedName": "MicrosoftTeams.GetChatMetadata@0.4.1", + "description": "Retrieves metadata about a Microsoft Teams chat.\n\nProvide exactly one of chat_id or user_ids/user_names. When available, prefer providing a\nchat_id or user_ids for optimal performance.\n\nIf multiple roup chats exist with those exact members, returns the most recently updated one.\n\nMax 20 DIFFERENT users can be provided in user_ids/user_names.\n\nThis tool DOES NOT return messages in a chat. Use the `Teams.GetChatMessages` tool to get\nchat messages.", + "parameters": [ + { + "name": "chat_id", + "type": "string", + "required": false, + "description": "The ID of the chat to get metadata about.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of the users in the chat to get metadata about.", + "enum": null, + "inferrable": true + }, + { + "name": "user_names", + "type": "array", + "innerType": "string", + "required": false, + "description": "The names of the users in the chat to get messages from. Prefer providing user_ids, when available, since the performance is better.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Chat.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Metadata about the chat." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.GetChatMetadata", + "parameters": { + "chat_id": { + "value": "12345678-90ab-cdef-1234-567890abcdef", + "type": "string", + "required": false + }, + "user_ids": { + "value": ["user1-id", "user2-id", "user3-id"], + "type": "array", + "required": false + }, + "user_names": { + "value": ["Alice", "Bob", "Charlie"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSignedInUser", + "qualifiedName": "MicrosoftTeams.GetSignedInUser", + "fullyQualifiedName": "MicrosoftTeams.GetSignedInUser@0.4.1", + "description": "Get the user currently signed in Microsoft Teams.\n\nThis tool is not necessary to call before calling other tools.", + "parameters": [], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["User.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The user currently signed in." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.GetSignedInUser", + "parameters": {}, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeam", + "qualifiedName": "MicrosoftTeams.GetTeam", + "fullyQualifiedName": "MicrosoftTeams.GetTeam@0.4.1", + "description": "Retrieves metadata about a team in Microsoft Teams.\n\nProvide one of team_id OR team_name, never both. When available, prefer providing a team_id for\noptimal performance.\n\nIf team_id nor team_name are provided: 1) if the user has a single team, the tool will retrieve\nit; 2) if the user has multiple teams, an error will be returned with a list of all teams to\npick from.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The ID of the team to get.", + "enum": null, + "inferrable": true + }, + { + "name": "team_name", + "type": "string", + "required": false, + "description": "The name of the team to get. Prefer providing a team_id, when available, for optimal performance.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Team.ReadBasic.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The team metadata." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.GetTeam", + "parameters": { + "team_id": { + "value": "1234-5678-90ab-cdef", + "type": "string", + "required": false + }, + "team_name": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListChannels", + "qualifiedName": "MicrosoftTeams.ListChannels", + "fullyQualifiedName": "MicrosoftTeams.ListChannels@0.4.1", + "description": "Lists channels in Microsoft Teams (including shared incoming channels).\n\nThis tool does not return messages nor members in the channels. To retrieve channel messages,\nuse the `Teams.GetChannelMessages` tool. To retrieve channel members, use the\n`Teams.ListChannelMembers` tool.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of channels to return. Defaults to 50, max is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The offset to start from.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the team to list the channels of (optional). If not provided: in case the user is a member of a single team, the tool will use it; otherwise an error will be returned with a list of all teams to pick from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Channel.ReadBasic.All", "Team.ReadBasic.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The channels in the team." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.ListChannels", + "parameters": { + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "team_id_or_name": { + "value": "design-team", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListChats", + "qualifiedName": "MicrosoftTeams.ListChats", + "fullyQualifiedName": "MicrosoftTeams.ListChats@0.4.1", + "description": "List the Microsoft Teams chats to which the current user is a member of.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of chats to return. Defaults to 50, max is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to use to get the next page of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Chat.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The chats to which the current user is a member of." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.ListChats", + "parameters": { + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": "abc123token", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeamMembers", + "qualifiedName": "MicrosoftTeams.ListTeamMembers", + "fullyQualifiedName": "MicrosoftTeams.ListTeamMembers@0.4.1", + "description": "Lists the members of a team in Microsoft Teams.\n\nProvide one of team_id OR team_name, never both. When available, prefer providing a team_id for\noptimal performance.\n\nIf team_id nor team_name are provided: 1) if the user has a single team, the tool will use it;\n2) if the user has multiple teams, an error will be returned with a list of all teams to pick\nfrom.\n\nThe Microsoft Graph API returns only up to the first 999 members.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The ID of the team to list the members of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_name", + "type": "string", + "required": false, + "description": "The name of the team to list the members of. Prefer providing a team_id, when available, for optimal performance.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of members to return. Defaults to 50, max is 999.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of members to skip. Defaults to 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["TeamMember.Read.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The members of the team." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.ListTeamMembers", + "parameters": { + "team_id": { + "value": "12345678-abcd-ef12-3456-7890abcdef12", + "type": "string", + "required": false + }, + "team_name": { + "value": null, + "type": "string", + "required": false + }, + "limit": { + "value": 100, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeams", + "qualifiedName": "MicrosoftTeams.ListTeams", + "fullyQualifiedName": "MicrosoftTeams.ListTeams@0.4.1", + "description": "Lists the teams the current user is associated with in Microsoft Teams.", + "parameters": [ + { + "name": "membership_type", + "type": "string", + "required": false, + "description": "The type of membership to filter by. Defaults to 'direct_member_of_the_team'.", + "enum": [ + "direct_member_of_the_team", + "member_of_a_shared_channel_in_another_team" + ], + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Team.ReadBasic.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The teams the current user is associated with." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.ListTeams", + "parameters": { + "membership_type": { + "value": "guest", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUsers", + "qualifiedName": "MicrosoftTeams.ListUsers", + "fullyQualifiedName": "MicrosoftTeams.ListUsers@0.4.1", + "description": "Lists the users in the Microsoft Teams tenant.\n\nThe Microsoft Graph API returns only up to the first 999 users.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of users to return. Defaults to 50, max is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The offset to start from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["User.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The users in the tenant." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.ListUsers", + "parameters": { + "limit": { + "value": 75, + "type": "integer", + "required": false + }, + "offset": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplyToChannelMessage", + "qualifiedName": "MicrosoftTeams.ReplyToChannelMessage", + "fullyQualifiedName": "MicrosoftTeams.ReplyToChannelMessage@0.4.1", + "description": "Sends a reply to a Microsoft Teams channel message.\n\nWhen available, prefer providing a channel_id for optimal performance.\n\nIt is not necessary to call `Teams.ListTeams` before calling this tool. If the user does not\nprovide a team_id_or_name, the tool will try to find a unique team to use. If you call the\n`Teams.ListTeams` tool first, you will cause the release of unnecessary CO2 in the atmosphere\nand contribute to climate change.", + "parameters": [ + { + "name": "reply_content", + "type": "string", + "required": true, + "description": "The content of the reply message.", + "enum": null, + "inferrable": true + }, + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The ID of the message to reply to.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the channel to send the message to.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the team to send the message to. If not provided: in case the user is a member of a single team, the tool will use it; otherwise an error will be returned with a list of all teams to pick from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["ChannelMessage.Send", "Team.ReadBasic.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The reply message that was sent." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.ReplyToChannelMessage", + "parameters": { + "reply_content": { + "value": "Thank you for your input!", + "type": "string", + "required": true + }, + "message_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "channel_id_or_name": { + "value": "general", + "type": "string", + "required": true + }, + "team_id_or_name": { + "value": "development-team", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplyToChatMessage", + "qualifiedName": "MicrosoftTeams.ReplyToChatMessage", + "fullyQualifiedName": "MicrosoftTeams.ReplyToChatMessage@0.4.1", + "description": "Sends a reply to a Microsoft Teams chat message.\n\nProvide exactly one of chat_id or user_ids/user_names. When available, prefer providing a\nchat_id or user_ids for optimal performance.\n\nIf the user provides user name(s), DO NOT CALL THE `Teams.SearchUsers` or `Teams.SearchPeople`\ntools first. Instead, provide the user name(s) directly to this tool through the `user_names`\nargument. It is not necessary to provide the currently signed in user's name/id, so do not call\n`Teams.GetSignedInUser` before calling this tool either.", + "parameters": [ + { + "name": "reply_content", + "type": "string", + "required": true, + "description": "The content of the reply message.", + "enum": null, + "inferrable": true + }, + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The ID of the message to reply to.", + "enum": null, + "inferrable": true + }, + { + "name": "chat_id", + "type": "string", + "required": false, + "description": "The ID of the chat to send the message.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of the users in the chat to send the message.", + "enum": null, + "inferrable": true + }, + { + "name": "user_names", + "type": "array", + "innerType": "string", + "required": false, + "description": "The names of the users in the chat to send the message. Prefer providing user_ids, when available, since the performance is better.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["ChatMessage.Send"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The reply message that was sent." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.ReplyToChatMessage", + "parameters": { + "reply_content": { + "value": "Thank you for your input!", + "type": "string", + "required": true + }, + "message_id": { + "value": "msg123456", + "type": "string", + "required": true + }, + "chat_id": { + "value": "chat987654", + "type": "string", + "required": false + }, + "user_ids": { + "value": ["user1", "user2"], + "type": "array", + "required": false + }, + "user_names": { + "value": ["john_doe", "jane_smith"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchChannels", + "qualifiedName": "MicrosoftTeams.SearchChannels", + "fullyQualifiedName": "MicrosoftTeams.SearchChannels@0.4.1", + "description": "Searches for channels in a given Microsoft Teams team.", + "parameters": [ + { + "name": "keywords", + "type": "array", + "innerType": "string", + "required": true, + "description": "The keywords to search for in channel names.", + "enum": null, + "inferrable": true + }, + { + "name": "match_type", + "type": "string", + "required": false, + "description": "The type of match to use for the search. Defaults to 'partial_match_all_keywords'.", + "enum": [ + "exact_match", + "partial_match_all_keywords", + "partial_match_any_of_the_keywords" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of channels to return. Defaults to 50. Max of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The offset to start from.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the team to search the channels of (optional). If not provided: in case the user is a member of a single team, the tool will use it; otherwise an error will be returned with a list of all teams to pick from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Channel.ReadBasic.All", "Team.ReadBasic.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The channels in the team." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.SearchChannels", + "parameters": { + "keywords": { + "value": ["development", "marketing"], + "type": "array", + "required": true + }, + "match_type": { + "value": "exact_match", + "type": "string", + "required": false + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "offset": { + "value": 5, + "type": "integer", + "required": false + }, + "team_id_or_name": { + "value": "team-1234", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchMessages", + "qualifiedName": "MicrosoftTeams.SearchMessages", + "fullyQualifiedName": "MicrosoftTeams.SearchMessages@0.4.1", + "description": "Searches for messages across Microsoft Teams chats and channels.\n\nNote: the Microsoft Graph API search is not strongly consistent. Recent messages may not be\nincluded in search results.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "The keywords to match against messages' content.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of messages to return. Defaults to 50, max is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The offset to start from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Chat.Read", "ChatMessage.Read", "ChannelMessage.Read.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The messages matching the search criteria." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.SearchMessages", + "parameters": { + "keywords": { + "value": "project update", + "type": "string", + "required": true + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchPeople", + "qualifiedName": "MicrosoftTeams.SearchPeople", + "fullyQualifiedName": "MicrosoftTeams.SearchPeople@0.4.1", + "description": "Searches for people the user has interacted with in Microsoft Teams and other 365 products.\n\nThis tool only returns users that the currently signed in user has interacted with. It may also\ninclude people that are part of external tenants/organizations. If you need to retrieve users\nthat may not have interacted with the current user and/or that are exclusively part of the same\ntenant, use the `Teams.SearchUsers` tool instead.", + "parameters": [ + { + "name": "keywords", + "type": "array", + "innerType": "string", + "required": true, + "description": "The keywords to match against people's names. Provide one or more expressions.", + "enum": null, + "inferrable": true + }, + { + "name": "match_type", + "type": "string", + "required": false, + "description": "The type of match to use for the keywords. Defaults to match_any_of_the_keywords.", + "enum": ["match_all_keywords", "match_any_of_the_keywords"], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of people to return. Defaults to 50, max is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The next page token to use for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["People.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The people matching the search criteria." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.SearchPeople", + "parameters": { + "keywords": { + "value": ["John", "Doe", "Jane Smith"], + "type": "array", + "required": true + }, + "match_type": { + "value": "match_all_of_the_keywords", + "type": "string", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchTeamMembers", + "qualifiedName": "MicrosoftTeams.SearchTeamMembers", + "fullyQualifiedName": "MicrosoftTeams.SearchTeamMembers@0.4.1", + "description": "Searches for members of a team in Microsoft Teams.\n\nProvide one of team_id OR team_name, never both. When available, prefer providing a team_id for\noptimal performance.\n\nIf team_id nor team_name are provided: 1) if the user has a single team, the tool will use it;\n2) if the user has multiple teams, an error will be raised with a list of available teams to\npick from.\n\nThe Microsoft Graph API returns only up to the first 999 members of a team.", + "parameters": [ + { + "name": "member_name_starts_with", + "type": "string", + "required": true, + "description": "The prefix to match the name of the members.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The ID of the team to list the members of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_name", + "type": "string", + "required": false, + "description": "The name of the team to list the members of. Prefer providing a team_id, when available, for optimal performance.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of members to return. Defaults to 50, max is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of members to skip. Defaults to 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["TeamMember.Read.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The members of the team." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.SearchTeamMembers", + "parameters": { + "member_name_starts_with": { + "value": "J", + "type": "string", + "required": true + }, + "team_id": { + "value": "12345", + "type": "string", + "required": false + }, + "team_name": { + "value": null, + "type": "string", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchTeams", + "qualifiedName": "MicrosoftTeams.SearchTeams", + "fullyQualifiedName": "MicrosoftTeams.SearchTeams@0.4.1", + "description": "Searches for teams available to the current user in Microsoft Teams.", + "parameters": [ + { + "name": "team_name_starts_with", + "type": "string", + "required": true, + "description": "The prefix to match the name of the teams.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of teams to return. Defaults to 10, max is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The token to use to get the next page of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Team.ReadBasic.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Search for teams in the organization (regardless of whether the current user is a member)." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.SearchTeams", + "parameters": { + "team_name_starts_with": { + "value": "Dev", + "type": "string", + "required": true + }, + "limit": { + "value": 15, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchUsers", + "qualifiedName": "MicrosoftTeams.SearchUsers", + "fullyQualifiedName": "MicrosoftTeams.SearchUsers@0.4.1", + "description": "Searches for users in the Microsoft Teams tenant.\n\nThis tool only return users that are directly linked to the tenant the current signed in user\nis a member of. If you need to retrieve users that have interacted with the current user but\nare from external tenants/organizations, use `Teams.SearchPeople`, instead.\n\nThe Microsoft Graph API returns only up to the first 999 users.", + "parameters": [ + { + "name": "keywords", + "type": "array", + "innerType": "string", + "required": true, + "description": "The keywords to match against users' names.", + "enum": null, + "inferrable": true + }, + { + "name": "match_type", + "type": "string", + "required": false, + "description": "The type of match to use for the keywords. Defaults to match_any_of_the_keywords.", + "enum": ["match_all_keywords", "match_any_of_the_keywords"], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of users to return. Defaults to 50, max is 999.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The offset to start from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["User.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The users in the tenant." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.SearchUsers", + "parameters": { + "keywords": { + "value": ["John", "Doe"], + "type": "array", + "required": true + }, + "match_type": { + "value": "match_any_of_the_keywords", + "type": "string", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendMessageToChannel", + "qualifiedName": "MicrosoftTeams.SendMessageToChannel", + "fullyQualifiedName": "MicrosoftTeams.SendMessageToChannel@0.4.1", + "description": "Sends a message to a Microsoft Teams channel.\n\nWhen available, prefer providing a channel_id for optimal performance.\n\nIt is not necessary to call `Teams.ListTeams` before calling this tool. If the user does not\nprovide a team_id_or_name, the tool will try to find a unique team to use. If you call the\n`Teams.ListTeams` tool first, you will cause the release of unnecessary CO2 in the atmosphere\nand contribute to climate change.", + "parameters": [ + { + "name": "message", + "type": "string", + "required": true, + "description": "The message to send to the channel.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the channel to send the message to.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the team to send the message to. If not provided: in case the user is a member of a single team, the tool will use it; otherwise an error will be returned with a list of all teams to pick from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["ChannelMessage.Send", "Team.ReadBasic.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The message that was sent." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.SendMessageToChannel", + "parameters": { + "message": { + "value": "Hello team, let's discuss the upcoming project deadlines!", + "type": "string", + "required": true + }, + "channel_id_or_name": { + "value": "general", + "type": "string", + "required": true + }, + "team_id_or_name": { + "value": "Marketing Team", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendMessageToChat", + "qualifiedName": "MicrosoftTeams.SendMessageToChat", + "fullyQualifiedName": "MicrosoftTeams.SendMessageToChat@0.4.1", + "description": "Sends a message to a Microsoft Teams chat.\n\nProvide exactly one of chat_id or user_ids/user_names. When available, prefer providing a\nchat_id or user_ids for optimal performance.\n\nIf the user provides user name(s), DO NOT CALL THE `Teams.SearchUsers` or `Teams.SearchPeople`\ntools first. Instead, provide the user name(s) directly to this tool through the `user_names`\nargument. It is not necessary to provide the currently signed in user's name/id, so do not call\n`Teams.GetSignedInUser` before calling this tool either.", + "parameters": [ + { + "name": "message", + "type": "string", + "required": true, + "description": "The message to send to the chat.", + "enum": null, + "inferrable": true + }, + { + "name": "chat_id", + "type": "string", + "required": false, + "description": "The ID of the chat to send the message.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of the users in the chat to send the message.", + "enum": null, + "inferrable": true + }, + { + "name": "user_names", + "type": "array", + "innerType": "string", + "required": false, + "description": "The names of the users in the chat to send the message. Prefer providing user_ids, when available, since the performance is better.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["ChatMessage.Send"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The message that was sent." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.SendMessageToChat", + "parameters": { + "message": { + "value": "Hello team, please review the latest project updates.", + "type": "string", + "required": true + }, + "chat_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "user_ids": { + "value": ["user123", "user456"], + "type": "array", + "required": false + }, + "user_names": { + "value": ["john.doe", "jane.smith"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "MicrosoftTeams.WhoAmI", + "fullyQualifiedName": "MicrosoftTeams.WhoAmI@0.4.1", + "description": "Get information about the current user and their Microsoft Teams environment.", + "parameters": [], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["User.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get comprehensive user profile and Microsoft Teams information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MicrosoftTeams.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "warning", + "location": "description", + "position": "after", + "content": "\n The Microsoft Teams MCP Server requires a Microsoft 365 account. Personal Microsoft accounts are not supported.\n" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:37:54.886Z", + "summary": "Arcade.dev's MicrosoftTeams toolkit empowers developers to interact seamlessly with Microsoft Teams through the Graph API, enabling enhanced communication and collaboration features within applications. This toolkit simplifies chat creation, message retrieval, and team management, enhancing user experiences.\n\n**Capabilities**\n- Create and manage chats and channel messages.\n- Retrieve metadata and messages for teams, channels, and chats.\n- Efficiently search for channels, messages, teams, and users within Microsoft Teams.\n- Facilitate messages and replies in channels and chats.\n\n**OAuth**\n- **Provider**: Microsoft\n- **Scopes**: Channel.ReadBasic.All, ChannelMessage.Read.All, ChannelMessage.Send, Chat.Create, Chat.Read, ChatMessage.Read, ChatMessage.Send, People.Read, Team.ReadBasic.All, TeamMember.Read.All, User.Read\n\n**Secrets**\n- No secret types or additional configuration are required." +} diff --git a/data/toolkits/miroapi.json b/data/toolkits/miroapi.json new file mode 100644 index 000000000..26ca89a79 --- /dev/null +++ b/data/toolkits/miroapi.json @@ -0,0 +1,9884 @@ +{ + "id": "MiroApi", + "label": "Miro API", + "version": "3.0.0", + "description": "Tools that enable LLMs to interact directly with the miro API.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/miro.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/miro-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "miro", + "allScopes": [] + }, + "tools": [ + { + "name": "AddAppCardToBoard", + "qualifiedName": "MiroApi.AddAppCardToBoard", + "fullyQualifiedName": "MiroApi.AddAppCardToBoard@3.0.0", + "description": "Add an app card item to a specified board on Miro.\n\n Use this tool to add an app card item to a Miro board. Must have 'boards:write' scope permission. Appropriate for situations requiring interaction with Miro boards to add app-specific information cards.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_identifier", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the Miro board where the app card will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-app-card-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AddAppCardToBoard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_identifier": { + "value": "board_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Sample Card\",\"content\":\"This is a sample app card for demonstration purposes.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddBoardFrame", + "qualifiedName": "MiroApi.AddBoardFrame", + "fullyQualifiedName": "MiroApi.AddBoardFrame@3.0.0", + "description": "Add a frame to a Miro board.\n\nUse this tool to add a new frame item to a specified Miro board. It requires the 'boards:write' scope to operate and adheres to Level 2 rate limiting.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier of the board where the frame will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "frame_fill_color", + "type": "string", + "required": false, + "description": "Specify the fill color for the frame using hex values. Supported colors include: `#f5f6f8`, `#d5f692`, `#d0e17a`, `#93d275`, `#67c6c0`, `#23bfe7`, `#a6ccf5`, `#7b92ff`, `#fff9b1`, `#f5d128`, `#ff9d48`, `#f16c7f`, `#ea94bb`, `#ffcee0`, `#b384bb`, `#000000`. The default is transparent (`#ffffffff`).", + "enum": null, + "inferrable": true + }, + { + "name": "frame_format", + "type": "string", + "required": false, + "description": "Specify the format for the frame. Only 'custom' is supported.", + "enum": null, + "inferrable": true + }, + { + "name": "frame_height_pixels", + "type": "number", + "required": false, + "description": "Specify the height of the frame in pixels on the Miro board.", + "enum": null, + "inferrable": true + }, + { + "name": "frame_title", + "type": "string", + "required": false, + "description": "Title of the frame to appear at the top. It must be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "frame_type", + "type": "string", + "required": false, + "description": "Specify the type of frame to create. Only 'freeform' is supported at the moment.", + "enum": null, + "inferrable": true + }, + { + "name": "frame_width_in_pixels", + "type": "number", + "required": false, + "description": "Specify the width of the frame in pixels.", + "enum": null, + "inferrable": true + }, + { + "name": "position_y_coordinate", + "type": "number", + "required": false, + "description": "Y-axis coordinate for the frame's position on the board. Default is `0`. Center of the board has `x: 0` and `y: 0`.", + "enum": null, + "inferrable": true + }, + { + "name": "reveal_frame_content", + "type": "boolean", + "required": false, + "description": "Set to true to reveal content inside the frame; false to hide it. Applicable for Enterprise plans only.", + "enum": null, + "inferrable": true + }, + { + "name": "x_axis_position_on_board", + "type": "number", + "required": false, + "description": "X-axis coordinate for placing the frame on the board. Default is 0, where the center is at x: 0.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-frame-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AddBoardFrame", + "parameters": { + "board_id": { + "value": "abc1234xyz", + "type": "string", + "required": true + }, + "frame_fill_color": { + "value": "#93d275", + "type": "string", + "required": false + }, + "frame_format": { + "value": "custom", + "type": "string", + "required": false + }, + "frame_height_pixels": { + "value": 600, + "type": "integer", + "required": false + }, + "frame_title": { + "value": "Project Overview", + "type": "string", + "required": false + }, + "frame_type": { + "value": "freeform", + "type": "string", + "required": false + }, + "frame_width_in_pixels": { + "value": 800, + "type": "integer", + "required": false + }, + "position_y_coordinate": { + "value": 50, + "type": "integer", + "required": false + }, + "reveal_frame_content": { + "value": true, + "type": "boolean", + "required": false + }, + "x_axis_position_on_board": { + "value": 100, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddCardToMiroBoard", + "qualifiedName": "MiroApi.AddCardToMiroBoard", + "fullyQualifiedName": "MiroApi.AddCardToMiroBoard@3.0.0", + "description": "Add a card item to a Miro board.\n\n Use this tool to create and add a new card item to a specified Miro board. This is useful for organizing tasks, notes, or ideas visually within a board. Ensure you have the required 'boards:write' scope for authorization.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "miro_board_id", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the Miro board where you want to add the card item. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-card-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AddCardToMiroBoard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "miro_board_id": { + "value": "board_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"New Task\",\"content\":\"This is a description of the new task.\",\"style\":{\"backgroundColor\":\"#FFCC00\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddConnectorToBoard", + "qualifiedName": "MiroApi.AddConnectorToBoard", + "fullyQualifiedName": "MiroApi.AddConnectorToBoard@3.0.0", + "description": "Adds a connector to a specified Miro board.\n\n Use this tool to add a connector to a specified Miro board. Requires 'boards:write' scope and is subject to Level 2 rate limiting.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_unique_id", + "type": "string", + "required": false, + "description": "Unique identifier for the Miro board where the connector will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-connector'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AddConnectorToBoard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"type\":\"connector\",\"start\":{\"x\":100,\"y\":200},\"end\":{\"x\":300,\"y\":400}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddDocumentToBoardByUrl", + "qualifiedName": "MiroApi.AddDocumentToBoardByUrl", + "fullyQualifiedName": "MiroApi.AddDocumentToBoardByUrl@3.0.0", + "description": "Add a document to a Miro board using its URL.\n\nThis tool adds a document as an item to a specified Miro board by providing the document's URL. It's useful for organizing resources in a collaborative board. Requires 'boards:write' scope and observes Level 2 rate limiting.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the Miro board where the document will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "document_title", + "type": "string", + "required": false, + "description": "A short text header to identify the document added to the board.", + "enum": null, + "inferrable": true + }, + { + "name": "document_url", + "type": "string", + "required": false, + "description": "The URL where the document is hosted. This URL is required to add the document to the Miro board.", + "enum": null, + "inferrable": true + }, + { + "name": "item_height_in_pixels", + "type": "number", + "required": false, + "description": "Specifies the height of the item on the board in pixels.", + "enum": null, + "inferrable": true + }, + { + "name": "item_width_in_pixels", + "type": "number", + "required": false, + "description": "Specify the width of the document item on the board in pixels.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_frame_id", + "type": "string", + "required": false, + "description": "Unique identifier of the parent frame for the document item on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "position_x_coordinate", + "type": "number", + "required": false, + "description": "X-axis coordinate for placing the item on the board. Defaults to `0`. Center of board is `0`.", + "enum": null, + "inferrable": true + }, + { + "name": "rotation_angle_degrees", + "type": "number", + "required": false, + "description": "Specify the rotation angle of the document item in degrees. Use positive values for clockwise rotation and negative for counterclockwise.", + "enum": null, + "inferrable": true + }, + { + "name": "y_axis_coordinate_on_board", + "type": "number", + "required": false, + "description": "Y-axis coordinate for placing the document on the Miro board. Defaults to `0`, where `0` is the center of the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-document-item-using-url'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AddDocumentToBoardByUrl", + "parameters": { + "board_identifier": { + "value": "board_1234", + "type": "string", + "required": true + }, + "document_title": { + "value": "Project Overview", + "type": "string", + "required": false + }, + "document_url": { + "value": "https://example.com/project_overview.pdf", + "type": "string", + "required": false + }, + "item_height_in_pixels": { + "value": 300, + "type": "integer", + "required": false + }, + "item_width_in_pixels": { + "value": 200, + "type": "integer", + "required": false + }, + "parent_frame_id": { + "value": "frame_5678", + "type": "string", + "required": false + }, + "position_x_coordinate": { + "value": 100, + "type": "integer", + "required": false + }, + "rotation_angle_degrees": { + "value": 90, + "type": "integer", + "required": false + }, + "y_axis_coordinate_on_board": { + "value": -50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddEmbedItemToBoard", + "qualifiedName": "MiroApi.AddEmbedItemToBoard", + "fullyQualifiedName": "MiroApi.AddEmbedItemToBoard@3.0.0", + "description": "Add an embed item with external content to a Miro board.\n\nUse this tool to add external content as an embed item to a specific board on Miro. Requires 'boards:write' scope and is subject to rate limiting.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier of the board where you want to create the embed item.", + "enum": null, + "inferrable": true + }, + { + "name": "content_display_mode", + "type": "string", + "required": false, + "description": "Specify how the embedded content is displayed on the board. Options are 'inline' for direct display and 'modal' for modal overlay.", + "enum": null, + "inferrable": true + }, + { + "name": "content_url", + "type": "string", + "required": false, + "description": "A valid URL pointing to the content resource to embed in the board. Supports HTTP and HTTPS.", + "enum": null, + "inferrable": true + }, + { + "name": "embed_item_width_pixels", + "type": "number", + "required": false, + "description": "Width of the embed item in pixels. Defines the size of the item on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "item_height", + "type": "number", + "required": false, + "description": "Specify the height of the embedded item, in pixels.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_frame_id", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the parent frame for the item on the Miro board.", + "enum": null, + "inferrable": true + }, + { + "name": "preview_image_url", + "type": "string", + "required": false, + "description": "URL of the image used as the preview for the embedded item.", + "enum": null, + "inferrable": true + }, + { + "name": "x_coordinate_on_board", + "type": "number", + "required": false, + "description": "X-axis coordinate for the item's location on the board. Default is 0, with absolute positioning relative to the board center.", + "enum": null, + "inferrable": true + }, + { + "name": "y_axis_coordinate_on_board", + "type": "number", + "required": false, + "description": "Y-axis coordinate for placing the item on the board. Default is 0, with (0, 0) as the board's center.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-embed-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AddEmbedItemToBoard", + "parameters": { + "board_identifier": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "content_display_mode": { + "value": "inline", + "type": "string", + "required": false + }, + "content_url": { + "value": "https://example.com/content", + "type": "string", + "required": false + }, + "embed_item_width_pixels": { + "value": 800, + "type": "integer", + "required": false + }, + "item_height": { + "value": 600, + "type": "integer", + "required": false + }, + "parent_frame_id": { + "value": "frame1", + "type": "string", + "required": false + }, + "preview_image_url": { + "value": "https://example.com/preview.png", + "type": "string", + "required": false + }, + "x_coordinate_on_board": { + "value": 100, + "type": "integer", + "required": false + }, + "y_axis_coordinate_on_board": { + "value": 150, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddFlowchartShapeToBoard", + "qualifiedName": "MiroApi.AddFlowchartShapeToBoard", + "fullyQualifiedName": "MiroApi.AddFlowchartShapeToBoard@3.0.0", + "description": "Add a flowchart shape item to a Miro board.\n\n Use this tool to add a flowchart shape to a specific Miro board. This enables users to programmatically enhance their boards with flowchart items, requiring write access to the board. It's ideal for automating workflows or integrating with other tools that require visualization updates in Miro.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the Miro board where the flowchart shape will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-shape-item-flowchart'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AddFlowchartShapeToBoard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_identifier": { + "value": "abc12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"type\":\"flowchart\",\"title\":\"New Flowchart Shape\",\"content\":\"This is a flowchart shape.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddImageToMiroBoard", + "qualifiedName": "MiroApi.AddImageToMiroBoard", + "fullyQualifiedName": "MiroApi.AddImageToMiroBoard@3.0.0", + "description": "Add an image to a Miro board using a URL.\n\nThis tool is used to add an image to a specific Miro board by providing an image URL. It requires the 'boards:write' scope for authorization. Ideal for users who want to enhance their Miro boards with visual content by specifying image links.", + "parameters": [ + { + "name": "board_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the board where the image will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "image_height_pixels", + "type": "number", + "required": false, + "description": "Height of the image in pixels to be added to the Miro board.", + "enum": null, + "inferrable": true + }, + { + "name": "image_title", + "type": "string", + "required": false, + "description": "A short text header to identify the image on the Miro board.", + "enum": null, + "inferrable": true + }, + { + "name": "image_url", + "type": "string", + "required": false, + "description": "URL of the image to be added to the Miro board.", + "enum": null, + "inferrable": true + }, + { + "name": "image_width_pixels", + "type": "number", + "required": false, + "description": "The width of the image in pixels to be added to the board.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_frame_id", + "type": "string", + "required": false, + "description": "Unique identifier for the parent frame where the image will be added. Use this to specify a frame within the board if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "rotation_angle_degrees", + "type": "number", + "required": false, + "description": "Rotation angle of the image, in degrees, relative to the board. Use positive for clockwise and negative for counterclockwise.", + "enum": null, + "inferrable": true + }, + { + "name": "x_axis_coordinate", + "type": "number", + "required": false, + "description": "X-axis coordinate for the image location on the Miro board. Center is at x: 0. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "y_axis_coordinate", + "type": "number", + "required": false, + "description": "Y-axis coordinate of the item's location on the board. Default is 0, centered on the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-image-item-using-url'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AddImageToMiroBoard", + "parameters": { + "board_unique_identifier": { + "value": "board_12345", + "type": "string", + "required": true + }, + "image_height_pixels": { + "value": 400, + "type": "integer", + "required": false + }, + "image_title": { + "value": "Sample Image", + "type": "string", + "required": false + }, + "image_url": { + "value": "https://example.com/image.png", + "type": "string", + "required": false + }, + "image_width_pixels": { + "value": 600, + "type": "integer", + "required": false + }, + "parent_frame_id": { + "value": "frame_67890", + "type": "string", + "required": false + }, + "rotation_angle_degrees": { + "value": 90, + "type": "integer", + "required": false + }, + "x_axis_coordinate": { + "value": 100, + "type": "integer", + "required": false + }, + "y_axis_coordinate": { + "value": -50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddItemsToMiroBoard", + "qualifiedName": "MiroApi.AddItemsToMiroBoard", + "fullyQualifiedName": "MiroApi.AddItemsToMiroBoard@3.0.0", + "description": "Add up to 20 items to a Miro board in one transaction.\n\n Use this tool to add multiple items like shapes, cards, and sticky notes to a Miro board in one operation. The operation is transactional; if adding any item fails, no items will be added. Suitable for enhancing board content efficiently.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "miro_board_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the Miro board where items will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-items'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AddItemsToMiroBoard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "miro_board_identifier": { + "value": "b12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"items\":[{\"type\":\"stickynote\",\"text\":\"Hello World!\",\"x\":100,\"y\":100},{\"type\":\"shape\",\"text\":\"Rectangle\",\"x\":200,\"y\":200,\"width\":120,\"height\":80}]}\"", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddMindmapNode", + "qualifiedName": "MiroApi.AddMindmapNode", + "fullyQualifiedName": "MiroApi.AddMindmapNode@3.0.0", + "description": "Add a new mind map node to a Miro board.\n\nThis tool adds a new node to a mind map on a Miro board. It can create root or child nodes with specified x, y coordinates for positioning. Use it when you want to expand a mind map with additional nodes on a specified board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board where the new mind map node will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "mindmap_node_content", + "type": "string", + "required": false, + "description": "The text content to display within the mind map node.", + "enum": null, + "inferrable": true + }, + { + "name": "node_type", + "type": "string", + "required": false, + "description": "Specifies the type of mind map node. Use 'text' as the current valid type.", + "enum": null, + "inferrable": true + }, + { + "name": "node_width_pixels", + "type": "number", + "required": false, + "description": "Width of the mind map node in pixels. Specifies how wide the node will appear on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_frame_id", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the parent node or frame for the mind map node.", + "enum": null, + "inferrable": true + }, + { + "name": "x_coordinate", + "type": "number", + "required": false, + "description": "X-axis coordinate for node placement on the board. Defaults to `0`, placing the node at the center along the x-axis.", + "enum": null, + "inferrable": true + }, + { + "name": "y_coordinate", + "type": "number", + "required": false, + "description": "Y-coordinate for item placement on the board. Defaults to 0 if not specified, placing it at the board's center.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-mindmap-nodes-experimental'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AddMindmapNode", + "parameters": { + "board_id": { + "value": "abcd1234", + "type": "string", + "required": true + }, + "mindmap_node_content": { + "value": "New Idea", + "type": "string", + "required": false + }, + "node_type": { + "value": "text", + "type": "string", + "required": false + }, + "node_width_pixels": { + "value": 150, + "type": "integer", + "required": false + }, + "parent_frame_id": { + "value": "efgh5678", + "type": "string", + "required": false + }, + "x_coordinate": { + "value": 100, + "type": "integer", + "required": false + }, + "y_coordinate": { + "value": 200, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddMiroProjectMember", + "qualifiedName": "MiroApi.AddMiroProjectMember", + "fullyQualifiedName": "MiroApi.AddMiroProjectMember@3.0.0", + "description": "Add a user to an Enterprise Miro project.\n\nUse this tool to add a Miro user to a project under the Enterprise plan. Requires 'projects:write' scope and Company Admin role.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization to which the project belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the Miro project to which a user will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "project_member_role", + "type": "string", + "required": true, + "description": "Role of the user to be assigned in the Miro project. Possible values: owner, editor, viewer, commentator, coowner.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The ID of the team to which the project belongs. Used to identify the specific team for project member addition.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email_id", + "type": "string", + "required": true, + "description": "The email address of the user to be added as a project member.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-add-project-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AddMiroProjectMember", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_abcdef", + "type": "string", + "required": true + }, + "project_member_role": { + "value": "editor", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_xyz987", + "type": "string", + "required": true + }, + "user_email_id": { + "value": "user@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddShapeToMiroBoard", + "qualifiedName": "MiroApi.AddShapeToMiroBoard", + "fullyQualifiedName": "MiroApi.AddShapeToMiroBoard@3.0.0", + "description": "Add a shape to a Miro board.\n\n This tool is used to add a new shape item to a specified board on Miro. It requires valid board access permissions and helps in organizing visual content on the board.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_id", + "type": "string", + "required": false, + "description": "Unique identifier of the Miro board where the shape will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-shape-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AddShapeToMiroBoard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_id": { + "value": "board_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"type\":\"rectangle\",\"text\":\"Sample Shape\",\"style\":{\"backgroundColor\":\"#FF5733\",\"borderColor\":\"#C70039\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddStickyNoteToBoard", + "qualifiedName": "MiroApi.AddStickyNoteToBoard", + "fullyQualifiedName": "MiroApi.AddStickyNoteToBoard@3.0.0", + "description": "Add a sticky note to a Miro board.\n\n Use this tool to create and add a sticky note item to a specified Miro board. This requires board write permissions and is subject to Level 2 rate limiting.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_id", + "type": "string", + "required": false, + "description": "Unique identifier of the board where the sticky note will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-sticky-note-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AddStickyNoteToBoard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_id": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"text\":\"This is a sticky note!\",\"color\":\"#FFCC00\",\"size\":\"large\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddTextToMiroBoard", + "qualifiedName": "MiroApi.AddTextToMiroBoard", + "fullyQualifiedName": "MiroApi.AddTextToMiroBoard@3.0.0", + "description": "Add a text item to a specified Miro board.\n\n This tool adds a text item to a specified Miro board using the 'boards:write' scope. It's useful when you want to insert text elements into a Miro board for collaboration or documentation purposes. Ensure you have the necessary permissions and adhere to rate limits (Level 2).\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the Miro board where the text item will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-text-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AddTextToMiroBoard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_identifier": { + "value": "123456789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"text\":\"Hello, Miro!\",\"fontSize\":24,\"color\":\"#000000\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AttachTagToItem", + "qualifiedName": "MiroApi.AttachTagToItem", + "fullyQualifiedName": "MiroApi.AttachTagToItem@3.0.0", + "description": "Attach a tag to a specific item on a Miro board.\n\nUse this tool to attach an existing tag to a specified item, such as a card or sticky note, on a Miro board. Note that updates to tags via the API will require a board refresh to be visible.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique ID of the board where the item to tag is located.", + "enum": null, + "inferrable": true + }, + { + "name": "item_identifier", + "type": "string", + "required": true, + "description": "Unique identifier of the item to which you want to add a tag on the Miro board.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_id", + "type": "string", + "required": true, + "description": "Unique identifier of the tag to attach to the item.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'attach-tag-to-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.AttachTagToItem", + "parameters": { + "board_id": { + "value": "1234abcd", + "type": "string", + "required": true + }, + "item_identifier": { + "value": "item5678", + "type": "string", + "required": true + }, + "tag_id": { + "value": "tag9012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CopyMiroBoard", + "qualifiedName": "MiroApi.CopyMiroBoard", + "fullyQualifiedName": "MiroApi.CopyMiroBoard@3.0.0", + "description": "Create a copy of an existing Miro board.\n\n This tool creates a duplicate of an existing Miro board, allowing updates to the board's name, description, sharing policy, and permissions. It requires the 'boards:write' scope and complies with level 4 rate limiting.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "source_board_id", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the board that you want to copy. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'copy-board'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.CopyMiroBoard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "source_board_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Copied Board\", \"description\": \"This is a copy of the original board.\", \"sharing_policy\": \"public\", \"permissions\": \"editor\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBoardExportJob", + "qualifiedName": "MiroApi.CreateBoardExportJob", + "fullyQualifiedName": "MiroApi.CreateBoardExportJob@3.0.0", + "description": "Initiates an export job for specified boards in an organization.\n\nThis tool creates an export job for one or more boards within Miro, available exclusively to Enterprise plan users with Company Admin roles and eDiscovery enabled. It's suitable for managing board exports, optimizing data handling within an organization.", + "parameters": [ + { + "name": "board_export_request_id", + "type": "string", + "required": true, + "description": "A unique identifier for the export job, used to track the export process of boards in Miro.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "Unique identifier of the organization for exporting boards.", + "enum": null, + "inferrable": true + }, + { + "name": "export_board_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of board IDs to be exported. Provide the IDs as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "export_format", + "type": "string", + "required": false, + "description": "Specifies the format for exporting the board. Options: SVG (default), HTML, or PDF.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-create-board-export'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.CreateBoardExportJob", + "parameters": { + "board_export_request_id": { + "value": "export-job-123456", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org-78910", + "type": "string", + "required": true + }, + "export_board_ids": { + "value": ["board-001", "board-002", "board-003"], + "type": "array", + "required": false + }, + "export_format": { + "value": "PDF", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBoardSubscription", + "qualifiedName": "MiroApi.CreateBoardSubscription", + "fullyQualifiedName": "MiroApi.CreateBoardSubscription@3.0.0", + "description": "Subscribe to board update notifications via webhook.\n\nCreates a webhook subscription to get notifications when an item on a board is updated. Suitable for monitoring changes on a board except for tags, connectors, and comments. Requires 'boards:read' scope.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": false, + "description": "Unique identifier of the board to associate with the webhook subscription.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_callback_url", + "type": "string", + "required": false, + "description": "The HTTPS URL where Miro sends a webhook upon an event occurrence. This URL must be accessible by Miro to receive notifications.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_status", + "type": "string", + "required": false, + "description": "Set the status of the webhook subscription. Use 'enabled' to receive notifications, 'disabled' to stop notifications, or 'lost_access' if access to the board is lost.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-board-subscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.CreateBoardSubscription", + "parameters": { + "board_id": { + "value": "12345abcde", + "type": "string", + "required": false + }, + "webhook_callback_url": { + "value": "https://example.com/webhook", + "type": "string", + "required": false + }, + "webhook_status": { + "value": "enabled", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBoardTag", + "qualifiedName": "MiroApi.CreateBoardTag", + "fullyQualifiedName": "MiroApi.CreateBoardTag@3.0.0", + "description": "Create a tag on a Miro board.\n\nThis tool is used to create a tag on a specified Miro board. It should be called when there's a need to organize or categorize elements on a board by adding a new tag.", + "parameters": [ + { + "name": "board_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier (ID) of the Miro board where the tag will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_title", + "type": "string", + "required": true, + "description": "Unique, case-sensitive text for the tag.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_fill_color", + "type": "string", + "required": false, + "description": "The fill color of the tag. Choose from options: red, light_green, cyan, yellow, magenta, green, blue, gray, violet, dark_green, dark_blue, black.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-tag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.CreateBoardTag", + "parameters": { + "board_unique_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "tag_title": { + "value": "Important", + "type": "string", + "required": true + }, + "tag_fill_color": { + "value": "blue", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateEnterpriseProject", + "qualifiedName": "MiroApi.CreateEnterpriseProject", + "fullyQualifiedName": "MiroApi.CreateEnterpriseProject@3.0.0", + "description": "Create a new project within an enterprise team on Miro.\n\nUse this tool to create a project in an existing team for Enterprise plan users on Miro. Projects help organize boards and manage user access for groups within a team. This tool requires Company Admin access on an Enterprise plan.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique ID of the organization where you want to create a project on Miro.", + "enum": null, + "inferrable": true + }, + { + "name": "project_name", + "type": "string", + "required": true, + "description": "The name of the project to be created within the team. It should be descriptive and unique for easy identification.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique ID of the team where the project will be created.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-create-project'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.CreateEnterpriseProject", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "project_name": { + "value": "Q4 Marketing Strategy", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateEnterpriseTeam", + "qualifiedName": "MiroApi.CreateEnterpriseTeam", + "fullyQualifiedName": "MiroApi.CreateEnterpriseTeam@3.0.0", + "description": "Creates a new team in an existing Miro organization.\n\nThis tool is used to create a new team within an existing organization in Miro. It is specifically available for Enterprise plan users who are Company Admins. This tool requires the 'organizations:teams:write' scope.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization where the team is being created.", + "enum": null, + "inferrable": true + }, + { + "name": "team_name", + "type": "string", + "required": false, + "description": "The name of the team to be created within the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-create-team'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.CreateEnterpriseTeam", + "parameters": { + "organization_id": { + "value": "org_123456ABC", + "type": "string", + "required": true + }, + "team_name": { + "value": "Innovation Team", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGroupOnBoard", + "qualifiedName": "MiroApi.CreateGroupOnBoard", + "fullyQualifiedName": "MiroApi.CreateGroupOnBoard@3.0.0", + "description": "Creates a group of items on a Miro board.\n\nThis tool creates a group consisting of specified items on a Miro board. It should be used when you want to organize multiple items into a group on a board. Requires 'boards:write' scope.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "The unique string identifier of the Miro board where the group will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "item_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of unique identifiers (IDs) for the items to be grouped on the board. Each ID corresponds to an item you wish to include in the group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.CreateGroupOnBoard", + "parameters": { + "board_identifier": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "item_ids": { + "value": ["item1", "item2", "item3"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMiroBoard", + "qualifiedName": "MiroApi.CreateMiroBoard", + "fullyQualifiedName": "MiroApi.CreateMiroBoard@3.0.0", + "description": "Create a new board on Miro with specific settings.\n\nThis tool allows you to create a new board in Miro by specifying its name and sharing policies. It is limited to creating up to 3 team boards for users on the free plan. Ensure you have the required 'boards:write' scope.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-board'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.CreateMiroBoard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Team Brainstorming\",\"sharingPolicy\":{\"access\":\"public\",\"canInvite\":true}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAppCardFromBoard", + "qualifiedName": "MiroApi.DeleteAppCardFromBoard", + "fullyQualifiedName": "MiroApi.DeleteAppCardFromBoard@3.0.0", + "description": "Delete an app card item from a Miro board.\n\nUse this tool to delete a specific app card item from a Miro board. It's required when a card needs to be removed, ensuring the board is updated accordingly.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board from which to delete an app card item.", + "enum": null, + "inferrable": true + }, + { + "name": "item_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the item to delete from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-app-card-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteAppCardFromBoard", + "parameters": { + "board_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "item_id": { + "value": "item789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBoardConnector", + "qualifiedName": "MiroApi.DeleteBoardConnector", + "fullyQualifiedName": "MiroApi.DeleteBoardConnector@3.0.0", + "description": "Delete a specific connector from a board.\n\nUse this tool to delete a specified connector from a Miro board. It requires write access to boards and is subject to Level 3 rate limiting.", + "parameters": [ + { + "name": "board_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board from which you want to delete the connector.", + "enum": null, + "inferrable": true + }, + { + "name": "connector_id", + "type": "string", + "required": true, + "description": "Unique identifier of the connector to delete from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-connector'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteBoardConnector", + "parameters": { + "board_unique_identifier": { + "value": "board_12345", + "type": "string", + "required": true + }, + "connector_id": { + "value": "connector_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBoardFrame", + "qualifiedName": "MiroApi.DeleteBoardFrame", + "fullyQualifiedName": "MiroApi.DeleteBoardFrame@3.0.0", + "description": "Delete a frame from a Miro board.\n\nUse this tool to delete a specific frame from a Miro board. Call this when you need to remove frame items identified by their board and item IDs. Requires 'boards:write' permission scope.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique ID of the Miro board from which you want to delete the frame.", + "enum": null, + "inferrable": true + }, + { + "name": "frame_id", + "type": "string", + "required": true, + "description": "Unique identifier of the frame to be deleted from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-frame-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteBoardFrame", + "parameters": { + "board_id": { + "value": "board_12345", + "type": "string", + "required": true + }, + "frame_id": { + "value": "frame_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBoardGroup", + "qualifiedName": "MiroApi.DeleteBoardGroup", + "fullyQualifiedName": "MiroApi.DeleteBoardGroup@3.0.0", + "description": "Delete a group and its items from a Miro board.\n\nThis tool removes a specified group and all its contained items from a Miro board. Use it when you need to clean up or reorganize board content by deleting groups. Ensure you have the necessary permissions to modify the board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier of the board from which the group will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "delete_items_with_group", + "type": "boolean", + "required": true, + "description": "Set to true to delete items within the group when deleting the group from the board.", + "enum": null, + "inferrable": true + }, + { + "name": "group_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the group to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteBoardGroup", + "parameters": { + "board_id": { + "value": "12345abcd", + "type": "string", + "required": true + }, + "delete_items_with_group": { + "value": true, + "type": "boolean", + "required": true + }, + "group_id": { + "value": "group6789xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBoardImage", + "qualifiedName": "MiroApi.DeleteBoardImage", + "fullyQualifiedName": "MiroApi.DeleteBoardImage@3.0.0", + "description": "Deletes an image item from a Miro board.\n\nUse this tool to delete an image from a specific Miro board by providing the board ID and image item ID. Ensure you have the required 'boards:write' scope.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier of the board from which to delete the image item. Required for deleting the image.", + "enum": null, + "inferrable": true + }, + { + "name": "image_item_id", + "type": "string", + "required": true, + "description": "Unique identifier of the image item to delete from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-image-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteBoardImage", + "parameters": { + "board_identifier": { + "value": "board_123456", + "type": "string", + "required": true + }, + "image_item_id": { + "value": "image_abc789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBoardItem", + "qualifiedName": "MiroApi.DeleteBoardItem", + "fullyQualifiedName": "MiroApi.DeleteBoardItem@3.0.0", + "description": "Deletes an item from a Miro board.\n\nUse this tool to delete an item from a Miro board. It requires the 'boards:write' scope and is subject to Level 3 rate limiting. Ideal for managing board content.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board from which you want to delete the item.", + "enum": null, + "inferrable": true + }, + { + "name": "item_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the item to delete from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteBoardItem", + "parameters": { + "board_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "item_id": { + "value": "item456def", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBoardTag", + "qualifiedName": "MiroApi.DeleteBoardTag", + "fullyQualifiedName": "MiroApi.DeleteBoardTag@3.0.0", + "description": "Delete a tag from a Miro board and its items.\n\nThis tool deletes a specified tag from a Miro board and removes it from all cards and sticky notes on the board. Note that changes via the API are not reflected in real-time and require a board refresh to update visually.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique ID of the board from which to delete a specific tag.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_id_to_delete", + "type": "string", + "required": true, + "description": "Unique identifier of the tag that you want to delete from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-tag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteBoardTag", + "parameters": { + "board_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "tag_id_to_delete": { + "value": "tag_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCardItem", + "qualifiedName": "MiroApi.DeleteCardItem", + "fullyQualifiedName": "MiroApi.DeleteCardItem@3.0.0", + "description": "Deletes a card item from the Miro board.\n\nUse this tool to delete a specific card item from a Miro board when its removal is required. It operates with 'boards:write' scope permissions and is subject to Level 3 rate limiting.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier of the board from which the card item should be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "item_id", + "type": "string", + "required": true, + "description": "The unique identifier of the card item to be deleted from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-card-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteCardItem", + "parameters": { + "board_identifier": { + "value": "abc123", + "type": "string", + "required": true + }, + "item_id": { + "value": "item456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteDocumentItemFromBoard", + "qualifiedName": "MiroApi.DeleteDocumentItemFromBoard", + "fullyQualifiedName": "MiroApi.DeleteDocumentItemFromBoard@3.0.0", + "description": "Deletes a document item from a Miro board.\n\nUse this tool to delete a specific document item from a Miro board. Ideal for cleaning up or managing board content. Requires 'boards:write' scope for permission.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique ID of the Miro board to delete the document item from.", + "enum": null, + "inferrable": true + }, + { + "name": "item_id", + "type": "string", + "required": true, + "description": "Unique identifier of the item to delete from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-document-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteDocumentItemFromBoard", + "parameters": { + "board_id": { + "value": "board_1234567890", + "type": "string", + "required": true + }, + "item_id": { + "value": "item_9876543210", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteEnterpriseProject", + "qualifiedName": "MiroApi.DeleteEnterpriseProject", + "fullyQualifiedName": "MiroApi.DeleteEnterpriseProject@3.0.0", + "description": "Delete a project while retaining associated boards and users.\n\nUse this tool to delete a project in an enterprise Miro account. This action retains all boards and users under the same team. It requires 'projects:write' scope and is available only for enterprise users with Company Admin role.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization from which you want to delete a project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_to_delete", + "type": "string", + "required": true, + "description": "The ID of the project that needs to be deleted from the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team from which the project is to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-delete-project'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteEnterpriseProject", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "project_id_to_delete": { + "value": "proj_7890", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteEnterpriseTeam", + "qualifiedName": "MiroApi.DeleteEnterpriseTeam", + "fullyQualifiedName": "MiroApi.DeleteEnterpriseTeam@3.0.0", + "description": "Deletes an existing team for enterprise users.\n\nThis tool deletes a specific team within an enterprise organization, available only to users with Enterprise plans and a Company Admin role. It should be used when there's a need to remove an entire team from an organization's Miro account.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization. Required to specify which organization's team is to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team to be deleted within the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-delete-team'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteEnterpriseTeam", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteFlowchartShape", + "qualifiedName": "MiroApi.DeleteFlowchartShape", + "fullyQualifiedName": "MiroApi.DeleteFlowchartShape@3.0.0", + "description": "Delete a flowchart shape from a Miro board.\n\nUse this tool to delete a specific flowchart shape item from a Miro board by specifying the board and item identifiers.", + "parameters": [ + { + "name": "board_unique_id", + "type": "string", + "required": true, + "description": "Unique identifier of the board from which to delete the shape item.", + "enum": null, + "inferrable": true + }, + { + "name": "item_id", + "type": "string", + "required": true, + "description": "Unique identifier of the flowchart shape item to delete from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-shape-item-flowchart'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteFlowchartShape", + "parameters": { + "board_unique_id": { + "value": "board_12345", + "type": "string", + "required": true + }, + "item_id": { + "value": "shape_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMindmapNode", + "qualifiedName": "MiroApi.DeleteMindmapNode", + "fullyQualifiedName": "MiroApi.DeleteMindmapNode@3.0.0", + "description": "Delete a mind map node and its child nodes from the board.\n\nUse this tool to delete a specified mind map node and all its child nodes from a Miro board. This is suitable for when you need to clear or restructure parts of a mind map on the board. Requires 'boards:write' permission scope.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board from which the mind map node will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "mindmap_node_id", + "type": "string", + "required": true, + "description": "The unique ID of the mind map node to delete, including all child nodes, from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-mindmap-node-experimental'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteMindmapNode", + "parameters": { + "board_identifier": { + "value": "board_123456789", + "type": "string", + "required": true + }, + "mindmap_node_id": { + "value": "node_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMiroBoard", + "qualifiedName": "MiroApi.DeleteMiroBoard", + "fullyQualifiedName": "MiroApi.DeleteMiroBoard@3.0.0", + "description": "Delete a Miro board and move it to Trash.\n\nUse this tool to delete a Miro board. Deleted boards on paid plans are moved to Trash and can be restored via the UI within 90 days. Requires 'boards:write' scope.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier of the Miro board to be deleted. Must be a valid string ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-board'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteMiroBoard", + "parameters": { + "board_identifier": { + "value": "123abc456def", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMiroWebhookSubscription", + "qualifiedName": "MiroApi.DeleteMiroWebhookSubscription", + "fullyQualifiedName": "MiroApi.DeleteMiroWebhookSubscription@3.0.0", + "description": "Delete a Miro webhook subscription by ID.\n\nUse this tool to delete a specific webhook subscription on Miro by providing its ID. This operation requires 'boards:read' scope and is subject to Level 2 rate limiting.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The unique identifier (ID) for the Miro subscription to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-subscription-by-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteMiroWebhookSubscription", + "parameters": { + "subscription_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteShapeFromMiroBoard", + "qualifiedName": "MiroApi.DeleteShapeFromMiroBoard", + "fullyQualifiedName": "MiroApi.DeleteShapeFromMiroBoard@3.0.0", + "description": "Delete a shape item from a Miro board.\n\nUse this tool to delete a specific shape item from a Miro board using the board and item IDs. Ensure you have the necessary permissions and consider rate limits.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier of the board from which you want to delete the shape item.", + "enum": null, + "inferrable": true + }, + { + "name": "item_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the shape item to delete from the Miro board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-shape-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteShapeFromMiroBoard", + "parameters": { + "board_id": { + "value": "board_12345", + "type": "string", + "required": true + }, + "item_id": { + "value": "item_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteStickyNote", + "qualifiedName": "MiroApi.DeleteStickyNote", + "fullyQualifiedName": "MiroApi.DeleteStickyNote@3.0.0", + "description": "Deletes a sticky note from a Miro board.\n\nCall this tool to remove a specific sticky note from a given Miro board by specifying the board and item IDs. Ensure you have the necessary 'boards:write' scope.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board from which you want to delete the sticky note.", + "enum": null, + "inferrable": true + }, + { + "name": "sticky_note_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the sticky note you want to delete from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-sticky-note-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.DeleteStickyNote", + "parameters": { + "board_id": { + "value": "board_12345", + "type": "string", + "required": true + }, + "sticky_note_id": { + "value": "sticky_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchBoardContentChanges", + "qualifiedName": "MiroApi.FetchBoardContentChanges", + "fullyQualifiedName": "MiroApi.FetchBoardContentChanges@3.0.0", + "description": "Fetches content changes for board items in your organization.\n\nUse this tool to retrieve content changes made to board items in your organization, including updates, creations, and deletions by users. You can filter the results by time period, board IDs, and user emails, and paginate the data for processing. Note: This tool is for Enterprise plan users and requires Company Admin role.", + "parameters": [ + { + "name": "end_modification_datetime", + "type": "string", + "required": true, + "description": "Specify the end date and time for filtering content logs based on when a board item was last modified. Use UTC format adhering to ISO 8601 with a trailing Z offset.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "A string representing the unique identifier of the organization required for fetching board content changes.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_time", + "type": "string", + "required": true, + "description": "Specify the start date and time for filtering content logs, in UTC format (ISO 8601 with trailing Z).", + "enum": null, + "inferrable": true + }, + { + "name": "board_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of board IDs for retrieving content logs. Provide as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_call", + "type": "integer", + "required": false, + "description": "The maximum number of results to return per call. If exceeded, a cursor is provided for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination to fetch the next set of results. Use the cursor value from the previous response to continue retrieving paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_by_date", + "type": "string", + "required": false, + "description": "Specify 'asc' for ascending or 'desc' for descending sort order based on modified date.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email_filter", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter content logs based on the list of emails of users who created, modified, or deleted board items.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-board-content-item-logs-fetch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.FetchBoardContentChanges", + "parameters": { + "end_modification_datetime": { + "value": "2023-10-10T15:00:00Z", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org-12345", + "type": "string", + "required": true + }, + "start_date_time": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": true + }, + "board_ids": { + "value": ["board-67890", "board-11223"], + "type": "array", + "required": false + }, + "max_results_per_call": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor-abc123", + "type": "string", + "required": false + }, + "sort_order_by_date": { + "value": "desc", + "type": "string", + "required": false + }, + "user_email_filter": { + "value": ["user1@example.com", "user2@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAccessTokenInfo", + "qualifiedName": "MiroApi.GetAccessTokenInfo", + "fullyQualifiedName": "MiroApi.GetAccessTokenInfo@3.0.0", + "description": "Retrieve detailed information about an access token.\n\nUse this tool to get information about an OAuth access token, including its type, scopes, associated team, user details, creation date and time, and the creator's identity.", + "parameters": [], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'token-info'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetAccessTokenInfo", + "parameters": {}, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAppUsageMetrics", + "qualifiedName": "MiroApi.GetAppUsageMetrics", + "fullyQualifiedName": "MiroApi.GetAppUsageMetrics@3.0.0", + "description": "Retrieve usage metrics for a specific app over a time range.\n\nThis tool is used to obtain usage metrics for a specific app within a defined time period. It requires an app management API token and the 'boards:read' scope. Useful for monitoring app performance and usage patterns.", + "parameters": [ + { + "name": "application_id", + "type": "string", + "required": true, + "description": "The ID of the app to retrieve metrics for. Provide a valid app ID to obtain usage data.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date", + "type": "string", + "required": true, + "description": "End date of the period in UTC format, e.g., 2024-12-31.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_utc", + "type": "string", + "required": true, + "description": "Start date of the period in UTC format (e.g., 2024-12-31).", + "enum": null, + "inferrable": true + }, + { + "name": "group_data_by_period", + "type": "string", + "required": false, + "description": "Specify the time period for grouping data: 'DAY', 'WEEK', or 'MONTH'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-metrics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetAppUsageMetrics", + "parameters": { + "application_id": { + "value": "app-123456", + "type": "string", + "required": true + }, + "end_date": { + "value": "2024-12-31T23:59:59Z", + "type": "string", + "required": true + }, + "start_date_utc": { + "value": "2024-01-01T00:00:00Z", + "type": "string", + "required": true + }, + "group_data_by_period": { + "value": "MONTH", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoardClassificationSettings", + "qualifiedName": "MiroApi.GetBoardClassificationSettings", + "fullyQualifiedName": "MiroApi.GetBoardClassificationSettings@3.0.0", + "description": "Retrieve board classification settings for an organization.\n\nUse this tool to get the board classification settings of an existing organization within the Miro Enterprise plan. This is applicable only for Company Admins. Ensure you have the required 'organizations:read' scope and be aware of rate limits.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique string ID of the organization for which to retrieve board classification settings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-dataclassification-organization-settings-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetBoardClassificationSettings", + "parameters": { + "organization_id": { + "value": "org_1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoardConnectors", + "qualifiedName": "MiroApi.GetBoardConnectors", + "fullyQualifiedName": "MiroApi.GetBoardConnectors@3.0.0", + "description": "Retrieve connectors for a specified board on Miro.\n\nThis tool retrieves a list of connectors for a specific board on Miro using a cursor-based approach. Useful for obtaining details about board connectors, with pagination support for large sets.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the Miro board to retrieve connectors from. Required for identifying the specific board.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor pointing to the next set of results for paginated requests. Use this to retrieve subsequent pages.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "string", + "required": false, + "description": "Specifies the maximum number of connectors to retrieve in one call. This assists in pagination of connector data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-connectors'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetBoardConnectors", + "parameters": { + "board_identifier": { + "value": "123456789abcdef", + "type": "string", + "required": true + }, + "pagination_cursor": { + "value": "eyJwYWdlIjozLCJwYWdlU2l6ZSI6MTB9", + "type": "string", + "required": false + }, + "result_limit": { + "value": "50", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoardFrameInfo", + "qualifiedName": "MiroApi.GetBoardFrameInfo", + "fullyQualifiedName": "MiroApi.GetBoardFrameInfo@3.0.0", + "description": "Retrieve information about a specific frame on a board.\n\nUse this tool to get detailed information about a specific frame within a Miro board. Useful for accessing frame-specific data when managing or viewing board content.", + "parameters": [ + { + "name": "board_unique_id", + "type": "string", + "required": true, + "description": "Unique identifier of the board containing the frame to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "frame_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the frame to retrieve from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-frame-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetBoardFrameInfo", + "parameters": { + "board_unique_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "frame_id": { + "value": "frame789xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoardGroups", + "qualifiedName": "MiroApi.GetBoardGroups", + "fullyQualifiedName": "MiroApi.GetBoardGroups@3.0.0", + "description": "Retrieve all groups and their items from a specific board.\n\nUse this tool to get all the groups along with their respective items from a given board in Miro. The data is retrieved using a cursor-based pagination method. To fetch the next set of results, use the cursor value from the previous response.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier of the Miro board to retrieve groups from.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_to_return", + "type": "integer", + "required": false, + "description": "The maximum number of items to return at once. Default is 10 and the maximum is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_cursor", + "type": "string", + "required": false, + "description": "The cursor value for fetching the next set of group items from the board. Use it to paginate results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-all-groups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetBoardGroups", + "parameters": { + "board_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "max_items_to_return": { + "value": 20, + "type": "integer", + "required": false + }, + "next_page_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoardItemInfo", + "qualifiedName": "MiroApi.GetBoardItemInfo", + "fullyQualifiedName": "MiroApi.GetBoardItemInfo@3.0.0", + "description": "Retrieve information for a specific item on a Miro board.\n\nUse this tool to get detailed information about a specific item on a Miro board using the provided board and item IDs.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier of the board to retrieve the specific item from.", + "enum": null, + "inferrable": true + }, + { + "name": "item_identifier", + "type": "string", + "required": true, + "description": "Unique identifier of the item to retrieve from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-specific-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetBoardItemInfo", + "parameters": { + "board_identifier": { + "value": "board_12345", + "type": "string", + "required": true + }, + "item_identifier": { + "value": "item_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoardItems", + "qualifiedName": "MiroApi.GetBoardItems", + "fullyQualifiedName": "MiroApi.GetBoardItems@3.0.0", + "description": "Retrieve items from a specific Miro board.\n\nThis tool retrieves items from a specific Miro board. It can fetch all items, child items within a parent, or specific types of items using query parameters. Results are paginated; use the cursor value from the previous response to get the next set of items.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier of the Miro board to retrieve items from.", + "enum": null, + "inferrable": true + }, + { + "name": "item_type", + "type": "string", + "required": false, + "description": "Specify the type of items to retrieve from the board, such as 'shape'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor value to retrieve the next set of items from a board. Use the value returned in the previous response to paginate through results.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_limit", + "type": "string", + "required": false, + "description": "The maximum number of items to return in a single call. Use this to control the size of the result set per request.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-items-experimental'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetBoardItems", + "parameters": { + "board_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "item_type": { + "value": "shape", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "pagination_limit": { + "value": "50", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoardMemberInfo", + "qualifiedName": "MiroApi.GetBoardMemberInfo", + "fullyQualifiedName": "MiroApi.GetBoardMemberInfo@3.0.0", + "description": "Retrieve details about a specific board member.\n\nUse this tool to get information about a specific member of a Miro board, including details necessary for collaboration and management. This should be called when you need to access a board member's data for a given board on Miro.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board to which the board member belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "board_member_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board member whose role you want to retrieve on a specific board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-specific-board-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetBoardMemberInfo", + "parameters": { + "board_id": { + "value": "b123456789", + "type": "string", + "required": true + }, + "board_member_id": { + "value": "m987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBoardTags", + "qualifiedName": "MiroApi.GetBoardTags", + "fullyQualifiedName": "MiroApi.GetBoardTags@3.0.0", + "description": "Retrieve all tags from a specified Miro board.\n\nUse this tool to get all the tags associated with a specific board in Miro. It helps in organizing and filtering board elements by tags.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the board to retrieve tags from. This is required to specify the target board in Miro.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_number_of_tags", + "type": "string", + "required": false, + "description": "Specifies the maximum number of tags to retrieve from the board.", + "enum": null, + "inferrable": true + }, + { + "name": "result_offset", + "type": "string", + "required": false, + "description": "Specifies the starting point for the result set to retrieve tags, useful for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-tags-from-board'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetBoardTags", + "parameters": { + "board_id": { + "value": "board_12345", + "type": "string", + "required": true + }, + "maximum_number_of_tags": { + "value": "50", + "type": "string", + "required": false + }, + "result_offset": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCardItemInfo", + "qualifiedName": "MiroApi.GetCardItemInfo", + "fullyQualifiedName": "MiroApi.GetCardItemInfo@3.0.0", + "description": "Retrieve details about a specific card item from a Miro board.\n\nUse this tool to obtain information on a specific card item located on a Miro board. Ideal for accessing card details with read permissions on boards.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier of the board to retrieve the specific card item from.", + "enum": null, + "inferrable": true + }, + { + "name": "item_unique_id", + "type": "string", + "required": true, + "description": "Unique identifier of the item to retrieve from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-card-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetCardItemInfo", + "parameters": { + "board_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "item_unique_id": { + "value": "card_456def", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDefaultTeamSettings", + "qualifiedName": "MiroApi.GetDefaultTeamSettings", + "fullyQualifiedName": "MiroApi.GetDefaultTeamSettings@3.0.0", + "description": "Retrieve default team settings for an organization.\n\nThis tool retrieves the default team settings for an existing organization within the Enterprise plan on Miro. It requires 'organizations:teams:read' scope and is accessible only to Company Admins.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for an Organization within Miro's Enterprise plan. Required for retrieving default team settings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-default-team-settings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetDefaultTeamSettings", + "parameters": { + "organization_id": { + "value": "org_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEmbedItemInfo", + "qualifiedName": "MiroApi.GetEmbedItemInfo", + "fullyQualifiedName": "MiroApi.GetEmbedItemInfo@3.0.0", + "description": "Retrieve details of an embed item on a Miro board.\n\nUse this tool to obtain information about a specific embed item on a Miro board. It's ideal when you need to fetch details of an embedded component such as a document or link integrated into a board. Ensure the board's read permissions are granted.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the Miro board from which to retrieve the embed item.", + "enum": null, + "inferrable": true + }, + { + "name": "embed_item_id", + "type": "string", + "required": true, + "description": "Unique identifier of the embed item to retrieve from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-embed-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetEmbedItemInfo", + "parameters": { + "board_identifier": { + "value": "abcd1234", + "type": "string", + "required": true + }, + "embed_item_id": { + "value": "item5678", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEnterpriseTeamMembers", + "qualifiedName": "MiroApi.GetEnterpriseTeamMembers", + "fullyQualifiedName": "MiroApi.GetEnterpriseTeamMembers@3.0.0", + "description": "Retrieve team members for an enterprise organization team.\n\nThis tool retrieves the list of team members for a specific team within an enterprise organization on Miro. It should be used when needing to access the team member details for organizational purposes. This tool is only available to users with an Enterprise plan and the role of Company Admin.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization whose team members are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the team whose members are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_role", + "type": "string", + "required": false, + "description": "Filter team members by their role. Accepted values: 'member', 'admin', 'non_team', 'team_guest'.", + "enum": null, + "inferrable": true + }, + { + "name": "member_retrieval_limit", + "type": "integer", + "required": false, + "description": "The maximum number of team members to retrieve in one call. Leave empty for default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Indicates the page position for fetching results. Leave empty for the first page or use the value from the previous cursor field for subsequent pages.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-team-members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetEnterpriseTeamMembers", + "parameters": { + "organization_id": { + "value": "org_123456789", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_987654321", + "type": "string", + "required": true + }, + "filter_by_role": { + "value": "admin", + "type": "string", + "required": false + }, + "member_retrieval_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEnterpriseTeams", + "qualifiedName": "MiroApi.GetEnterpriseTeams", + "fullyQualifiedName": "MiroApi.GetEnterpriseTeams@3.0.0", + "description": "Retrieve list of teams in an enterprise organization.\n\nThis tool is used to obtain a list of teams for a given organization in the Enterprise plan of Miro. It requires the user to have the role of a Company Admin and proper authorization scopes. It is essential for enterprises needing to manage or view their organizational structure.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier of the organization to retrieve teams from.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_limit", + "type": "integer", + "required": false, + "description": "The maximum number of team records to retrieve. If not set, defaults to the API's default value.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Indicator for page position in results. Leave empty for first page; use previous cursor for next pages.", + "enum": null, + "inferrable": true + }, + { + "name": "team_name_filter", + "type": "string", + "required": false, + "description": "Filters teams by name using case insensitive partial match. For example, 'dev' will return both 'Developer's team' and 'Team for developers'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-teams'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetEnterpriseTeams", + "parameters": { + "organization_id": { + "value": "org_123456789", + "type": "string", + "required": true + }, + "maximum_results_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "", + "type": "string", + "required": false + }, + "team_name_filter": { + "value": "dev", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetExportJobStatus", + "qualifiedName": "MiroApi.GetExportJobStatus", + "fullyQualifiedName": "MiroApi.GetExportJobStatus@3.0.0", + "description": "Retrieve the status of a Miro board export job.\n\nThis tool checks the status of a board export job for Miro Enterprise plan users. It requires the user to be a Company Admin with eDiscovery enabled. Access is limited to users with the appropriate role and access privileges.", + "parameters": [ + { + "name": "board_export_job_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Miro board export job.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Miro organization. Required for retrieving the export job status.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-board-export-job-status'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetExportJobStatus", + "parameters": { + "board_export_job_id": { + "value": "job_12345abcde", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_98765xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGroupItemsMiro", + "qualifiedName": "MiroApi.GetGroupItemsMiro", + "fullyQualifiedName": "MiroApi.GetGroupItemsMiro@3.0.0", + "description": "Retrieve items from a specific group on a Miro board.\n\nCall this tool to fetch a list of items within a specific group on a Miro board, identified by board_id and group_id. Useful for accessing group content details.", + "parameters": [ + { + "name": "board_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the Miro board to fetch group items from.", + "enum": null, + "inferrable": true + }, + { + "name": "group_id", + "type": "string", + "required": true, + "description": "Unique identifier of the group to retrieve items from on the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getGroupById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetGroupItemsMiro", + "parameters": { + "board_unique_identifier": { + "value": "abc123", + "type": "string", + "required": true + }, + "group_id": { + "value": "group_456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetImageItemInfo", + "qualifiedName": "MiroApi.GetImageItemInfo", + "fullyQualifiedName": "MiroApi.GetImageItemInfo@3.0.0", + "description": "Fetches details for a specified image item on a Miro board.\n\nUse this tool to retrieve detailed information for a specific image item within a Miro board. It requires the board ID and image item ID to access the data.", + "parameters": [ + { + "name": "board_unique_id", + "type": "string", + "required": true, + "description": "Unique identifier of the board to retrieve a specific image item from.", + "enum": null, + "inferrable": true + }, + { + "name": "image_item_id", + "type": "string", + "required": true, + "description": "Unique identifier of the image item to retrieve from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-image-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetImageItemInfo", + "parameters": { + "board_unique_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "image_item_id": { + "value": "987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetItemsByGroupId", + "qualifiedName": "MiroApi.GetItemsByGroupId", + "fullyQualifiedName": "MiroApi.GetItemsByGroupId@3.0.0", + "description": "Retrieve items from a specific group on a Miro board.\n\nThis tool retrieves a list of items that belong to any group within a specified Miro board. It uses a cursor-based pagination method to manage large sets of results. Use this tool to explore group-contained items on Miro boards when you have the appropriate board access permissions.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the Miro board to retrieve items from.", + "enum": null, + "inferrable": true + }, + { + "name": "group_item_id", + "type": "string", + "required": true, + "description": "The ID of the group item to retrieve from the board.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_per_request", + "type": "integer", + "required": false, + "description": "The maximum number of items to return per request. Default is 10, maximum is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "next_cursor", + "type": "string", + "required": false, + "description": "A string used for cursor-based pagination to fetch the next set of results. Set it to the value received from the previous API response to continue retrieving items.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getItemsByGroupId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetItemsByGroupId", + "parameters": { + "board_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "group_item_id": { + "value": "group_987654", + "type": "string", + "required": true + }, + "max_items_per_request": { + "value": 20, + "type": "integer", + "required": false + }, + "next_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetItemsWithinFrame", + "qualifiedName": "MiroApi.GetItemsWithinFrame", + "fullyQualifiedName": "MiroApi.GetItemsWithinFrame@3.0.0", + "description": "Retrieve items within a specified frame on a Miro board.\n\nUse this tool to get a list of items located within a specific frame on a Miro board. It's useful for accessing grouped content within frames. The tool supports paginated results, using a cursor to fetch subsequent portions of data if the frame contains more items than the specified limit.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board containing the frame to retrieve items from.", + "enum": null, + "inferrable": true + }, + { + "name": "frame_id", + "type": "string", + "required": true, + "description": "The ID of the frame from which you want to retrieve the items. Required to locate the parent frame on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "item_retrieval_limit", + "type": "string", + "required": false, + "description": "Specifies the maximum number of items to return in one call. Used for pagination purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "item_type_filter", + "type": "string", + "required": false, + "description": "Specify the type of items to retrieve within the frame. Leave blank to retrieve all types.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string used for cursor-based pagination to fetch the next set of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-items-within-frame'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetItemsWithinFrame", + "parameters": { + "board_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "frame_id": { + "value": "987654321", + "type": "string", + "required": true + }, + "item_retrieval_limit": { + "value": "50", + "type": "string", + "required": false + }, + "item_type_filter": { + "value": "sticky_note", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMindmapNodes", + "qualifiedName": "MiroApi.GetMindmapNodes", + "fullyQualifiedName": "MiroApi.GetMindmapNodes@3.0.0", + "description": "Retrieve mind map nodes from a specified Miro board.\n\nUse this tool to fetch a list of mind map nodes from a particular Miro board. Ideal for accessing structured information stored in mind maps. Requires board ID to specify the target board and supports cursor-based pagination for large datasets.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Miro board to retrieve mind map nodes from. This ID specifies the target board.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_limit", + "type": "string", + "required": false, + "description": "Specifies the maximum number of mind map nodes returned in the response. Use this to control pagination and limit the data load.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string that points to the next portion of the results set for cursor-based pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-mindmap-nodes-experimental'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetMindmapNodes", + "parameters": { + "board_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "maximum_results_limit": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMiroBoardMembers", + "qualifiedName": "MiroApi.GetMiroBoardMembers", + "fullyQualifiedName": "MiroApi.GetMiroBoardMembers@3.0.0", + "description": "Retrieve members of a Miro board.\n\nThis tool retrieves a pageable list of members for a specified Miro board. It should be called when you need to access information about who is part of a specific board. Ensure that the required scope 'boards:read' is authorized to use this tool.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the Miro board whose members are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_members_to_retrieve", + "type": "string", + "required": false, + "description": "Specify the maximum number of board members to retrieve. This limits the number of results returned in one call.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Specifies the starting point of the list of board members to return, for pagination purposes.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-board-members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetMiroBoardMembers", + "parameters": { + "board_id": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + }, + "number_of_members_to_retrieve": { + "value": "10", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMiroMindmapNode", + "qualifiedName": "MiroApi.GetMiroMindmapNode", + "fullyQualifiedName": "MiroApi.GetMiroMindmapNode@3.0.0", + "description": "Retrieve details about a specific mind map node on a Miro board.\n\nUse this tool to get information about a particular node within a mind map on a Miro board. Useful for understanding node details or extracting specific data related to mind map elements.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the Miro board to retrieve a mind map node from.", + "enum": null, + "inferrable": true + }, + { + "name": "mindmap_node_id", + "type": "string", + "required": true, + "description": "Unique identifier of the mind map node to retrieve from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-mindmap-node-experimental'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetMiroMindmapNode", + "parameters": { + "board_id": { + "value": "abcd1234efgh5678ijkl9012", + "type": "string", + "required": true + }, + "mindmap_node_id": { + "value": "node_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMiroProjectInfo", + "qualifiedName": "MiroApi.GetMiroProjectInfo", + "fullyQualifiedName": "MiroApi.GetMiroProjectInfo@3.0.0", + "description": "Retrieve information for a specific Miro project.\n\nThis tool retrieves information about a specific project in Miro, such as the project name. It is intended for users with Enterprise plans and requires the 'projects:read' scope. Use this tool when you need to view details of a specific project as an Enterprise user.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization to retrieve project information.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project to retrieve information for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_for_project_info", + "type": "string", + "required": true, + "description": "The ID of the team from which you want to retrieve the project information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-project'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetMiroProjectInfo", + "parameters": { + "organization_id": { + "value": "org_123456789", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "proj_987654321", + "type": "string", + "required": true + }, + "team_id_for_project_info": { + "value": "team_1122334455", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMiroSubscriptionInfo", + "qualifiedName": "MiroApi.GetMiroSubscriptionInfo", + "fullyQualifiedName": "MiroApi.GetMiroSubscriptionInfo@3.0.0", + "description": "Fetch detailed information for a specific Miro subscription.\n\nUse this tool to retrieve detailed information about a specific webhook subscription in Miro. It's useful for checking the status or configuration of a particular subscription. Requires 'boards:read' scope for access.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "Unique identifier of the Miro subscription to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-subscription-by-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetMiroSubscriptionInfo", + "parameters": { + "subscription_id": { + "value": "sub_1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrganizationInfo", + "qualifiedName": "MiroApi.GetOrganizationInfo", + "fullyQualifiedName": "MiroApi.GetOrganizationInfo@3.0.0", + "description": "Retrieve detailed information about a specific organization.\n\nThis tool fetches organization information for Enterprise plan users with the role of Company Admin. It requires the 'organizations:read' scope. Rate limiting is at Level 3.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization to retrieve information for. This is required to access the organization's details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-organization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetOrganizationInfo", + "parameters": { + "organization_id": { + "value": "org-12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrganizationMemberInfo", + "qualifiedName": "MiroApi.GetOrganizationMemberInfo", + "fullyQualifiedName": "MiroApi.GetOrganizationMemberInfo@3.0.0", + "description": "Retrieve details about a specific organization member.\n\nThis tool retrieves information about a member of an organization within Miro. It's designed for use by users on the Enterprise plan with the role of Company Admin. Useful for obtaining member-specific information for administrative tasks.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization whose member info is being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_member_id", + "type": "string", + "required": true, + "description": "ID of the organization member to retrieve information for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-organization-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetOrganizationMemberInfo", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "organization_member_id": { + "value": "member_78910", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOrganizationMembers", + "qualifiedName": "MiroApi.GetOrganizationMembers", + "fullyQualifiedName": "MiroApi.GetOrganizationMembers@3.0.0", + "description": "Retrieve organization members using organization ID or emails.\n\nThis tool retrieves members of an organization in Miro based on the provided organization ID and cursor, or user emails. It requires the 'organizations:read' scope and is accessible only to Enterprise plan users with Company Admin roles.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization to retrieve members from. Required for the operation.", + "enum": null, + "inferrable": true + }, + { + "name": "include_only_active_members", + "type": "boolean", + "required": false, + "description": "Set to true to include only active members in the response. Set to false to include all members, regardless of their status.", + "enum": null, + "inferrable": true + }, + { + "name": "license_type", + "type": "string", + "required": false, + "description": "Defines the type of license for the organization members to filter (e.g., full, occasional, free).", + "enum": null, + "inferrable": true + }, + { + "name": "member_role_filter", + "type": "string", + "required": false, + "description": "Filter organization members by role, such as 'organization_internal_admin' or 'organization_external_user'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "String value for pagination to retrieve the next set of results in a multi-page response.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of organization members to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "user_emails", + "type": "string", + "required": false, + "description": "A comma-separated string of user emails to filter organization members.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-organization-members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetOrganizationMembers", + "parameters": { + "organization_id": { + "value": "org_123456789", + "type": "string", + "required": true + }, + "include_only_active_members": { + "value": true, + "type": "boolean", + "required": false + }, + "license_type": { + "value": "full", + "type": "string", + "required": false + }, + "member_role_filter": { + "value": "organization_internal_admin", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abcdef123456", + "type": "string", + "required": false + }, + "result_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "user_emails": { + "value": "user1@example.com,user2@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectMemberInfo", + "qualifiedName": "MiroApi.GetProjectMemberInfo", + "fullyQualifiedName": "MiroApi.GetProjectMemberInfo@3.0.0", + "description": "Retrieve information about a specific project member.\n\nThis tool retrieves detailed information for a specific project member within an organization. It should be called by users with Enterprise plan access and the role of Company Admin. The information is essential for managing project members and understanding their roles and contributions in a team environment.", + "parameters": [ + { + "name": "member_id", + "type": "string", + "required": true, + "description": "The ID of the project member to retrieve specific information.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization to which the project belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to get information about a specific member.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The ID of the team to which the project belongs.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-project-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetProjectMemberInfo", + "parameters": { + "member_id": { + "value": "12345", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_67890", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "proj_abc123", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_xyz789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectMembers", + "qualifiedName": "MiroApi.GetProjectMembers", + "fullyQualifiedName": "MiroApi.GetProjectMembers@3.0.0", + "description": "Retrieve members of a specific project.\n\nFetches the list of members involved in a specific project. Available only for Enterprise plan users with Company Admin role. Requires 'projects:read' scope.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization to which the project belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the project to retrieve its members.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique ID of the team associated with the project.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_call", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of project members to return per call. Additional results can be accessed via the cursor parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Indicator for the page position in the result set. Leave empty for the first page; use the prior response's cursor for next pages.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-project-members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetProjectMembers", + "parameters": { + "organization_id": { + "value": "org_12345", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "proj_67890", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_abcde", + "type": "string", + "required": true + }, + "maximum_results_per_call": { + "value": 100, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProjectSettings", + "qualifiedName": "MiroApi.GetProjectSettings", + "fullyQualifiedName": "MiroApi.GetProjectSettings@3.0.0", + "description": "Retrieve enterprise project settings for a specific project.\n\nThis tool retrieves the settings of a specific project within an enterprise account on Miro. It is available only to Enterprise plan users with Company Admin roles. The tool should be called to obtain project-related configuration details, ensuring an understanding of current project settings.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique ID of the organization to which the project belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project for which you want to retrieve the project settings.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The ID of the team to which the project belongs. Must be a valid team ID within the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-project-settings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetProjectSettings", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_987654", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRecentAuditLogs", + "qualifiedName": "MiroApi.GetRecentAuditLogs", + "fullyQualifiedName": "MiroApi.GetRecentAuditLogs@3.0.0", + "description": "Retrieve recent audit logs from the last 90 days.\n\nThis tool retrieves a page of audit events from Miro for the last 90 days, useful for monitoring and reviewing recent activities. For older data, refer to the CSV export feature.", + "parameters": [ + { + "name": "end_date_for_audit_logs", + "type": "string", + "required": true, + "description": "Retrieve audit logs created before this date and time. Format: UTC ISO 8601, including milliseconds and trailing Z.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_time_for_audit_logs", + "type": "string", + "required": true, + "description": "Retrieve audit logs created after the specified UTC start date and time in ISO 8601 format, including milliseconds and 'Z'.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of audit logs to retrieve in a single request. Defaults to 100 if not specified. Use a smaller number to limit the results or manage pagination efficiently.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor value for paginating through audit log results. Use the value returned in the previous response to obtain the next set of results.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specifies the sort order for viewing audit logs: 'ASC' for ascending or 'DESC' for descending.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-audit-logs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetRecentAuditLogs", + "parameters": { + "end_date_for_audit_logs": { + "value": "2023-09-30T23:59:59.999Z", + "type": "string", + "required": true + }, + "start_date_time_for_audit_logs": { + "value": "2023-07-01T00:00:00.000Z", + "type": "string", + "required": true + }, + "maximum_results_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_value_example", + "type": "string", + "required": false + }, + "sort_order": { + "value": "DESC", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetShapeInformation", + "qualifiedName": "MiroApi.GetShapeInformation", + "fullyQualifiedName": "MiroApi.GetShapeInformation@3.0.0", + "description": "Retrieve detailed information about a specific shape on a Miro board.\n\nUse this tool to obtain detailed information for a particular shape item on a Miro board. Useful for accessing shape attributes and configurations when given the board and item IDs.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the Miro board from which to retrieve a specific shape item.", + "enum": null, + "inferrable": true + }, + { + "name": "shape_item_id", + "type": "string", + "required": true, + "description": "Unique identifier of the shape item to retrieve from the Miro board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-shape-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetShapeInformation", + "parameters": { + "board_identifier": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "shape_item_id": { + "value": "shape67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStickyNoteInfo", + "qualifiedName": "MiroApi.GetStickyNoteInfo", + "fullyQualifiedName": "MiroApi.GetStickyNoteInfo@3.0.0", + "description": "Retrieve details of a sticky note from a Miro board.\n\nThis tool retrieves information about a specific sticky note on a Miro board, using the provided board and item IDs.", + "parameters": [ + { + "name": "miro_board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Miro board to retrieve the sticky note item from.", + "enum": null, + "inferrable": true + }, + { + "name": "sticky_note_id", + "type": "string", + "required": true, + "description": "Specify the unique ID of the sticky note to retrieve from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-sticky-note-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetStickyNoteInfo", + "parameters": { + "miro_board_id": { + "value": "abcd1234efgh5678", + "type": "string", + "required": true + }, + "sticky_note_id": { + "value": "sticky_note_7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTagInfo", + "qualifiedName": "MiroApi.GetTagInfo", + "fullyQualifiedName": "MiroApi.GetTagInfo@3.0.0", + "description": "Retrieve detailed information for a specific tag on a Miro board.\n\nUse this tool to obtain information about a specific tag associated with a Miro board. Useful for tasks requiring tag metadata or management on boards.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board from which to retrieve the specific tag.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_identifier", + "type": "string", + "required": true, + "description": "Unique identifier of the tag to retrieve from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-tag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetTagInfo", + "parameters": { + "board_id": { + "value": "b123456789", + "type": "string", + "required": true + }, + "tag_identifier": { + "value": "tag_001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTagsFromItem", + "qualifiedName": "MiroApi.GetTagsFromItem", + "fullyQualifiedName": "MiroApi.GetTagsFromItem@3.0.0", + "description": "Retrieve all tags from a specified item on a board.\n\nUse this tool to get a list of all tags associated with a specific item on a Miro board. This requires read access to the board via the appropriate scope and is subject to Level 1 rate limiting.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board containing the item for which tags are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "item_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the item whose tags are to be retrieved from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-tags-from-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetTagsFromItem", + "parameters": { + "board_identifier": { + "value": "board_123456", + "type": "string", + "required": true + }, + "item_identifier": { + "value": "item_789012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamBoardClassificationSettings", + "qualifiedName": "MiroApi.GetTeamBoardClassificationSettings", + "fullyQualifiedName": "MiroApi.GetTeamBoardClassificationSettings@3.0.0", + "description": "Retrieve board classification settings for an enterprise team.\n\nUse this tool to get the board classification settings of an existing team within an enterprise organization. Ideal for enterprise plan users with Company Admin roles wishing to check data classification details.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization. Required for retrieving team settings.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "ID of the team whose board classification settings you want to retrieve. Must be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-dataclassification-team-settings-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetTeamBoardClassificationSettings", + "parameters": { + "organization_id": { + "value": "org_123456789", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamInfo", + "qualifiedName": "MiroApi.GetTeamInfo", + "fullyQualifiedName": "MiroApi.GetTeamInfo@3.0.0", + "description": "Retrieve information about an existing team within an organization.\n\nThis tool retrieves information about a specific team for users with Enterprise plan access on Miro. It requires the 'organizations:teams:read' scope and is available only to Company Admins. It should be called when detailed information about a team is needed.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization in Miro.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team to retrieve information for. This is required to specify which team within the organization you're inquiring about.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-team'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetTeamInfo", + "parameters": { + "organization_id": { + "value": "org_123456789", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamProjects", + "qualifiedName": "MiroApi.GetTeamProjects", + "fullyQualifiedName": "MiroApi.GetTeamProjects@3.0.0", + "description": "Fetches projects from a specified team within an organization.\n\nUse this tool to retrieve a list of all projects, including private ones, from a team in an organization. It requires Content Admin permissions and is available only to Enterprise plan users with Company Admin roles.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization to retrieve the list of available projects from.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The ID of the team from which to retrieve the list of projects. This is required to specify which team's projects to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_call", + "type": "integer", + "required": false, + "description": "The maximum number of projects to return in one call. Use this to control the size of the dataset returned. If exceeded, a cursor for pagination will be provided.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Used to navigate through pages of results. Leave empty for the first page; set to the value from the previous response for subsequent pages.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-projects'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetTeamProjects", + "parameters": { + "organization_id": { + "value": "org-123456", + "type": "string", + "required": true + }, + "team_id": { + "value": "team-987654", + "type": "string", + "required": true + }, + "max_results_per_call": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamSettings", + "qualifiedName": "MiroApi.GetTeamSettings", + "fullyQualifiedName": "MiroApi.GetTeamSettings@3.0.0", + "description": "Fetches settings for a specific team in an organization.\n\nThis tool retrieves team settings for a specified team within an organization in Miro. It is applicable only to users with the Enterprise plan who have the role of a Company Admin. Use this when you need detailed configuration information about a team.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team whose settings you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-team-settings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetTeamSettings", + "parameters": { + "organization_id": { + "value": "org_12345", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTextItemInfo", + "qualifiedName": "MiroApi.GetTextItemInfo", + "fullyQualifiedName": "MiroApi.GetTextItemInfo@3.0.0", + "description": "Retrieve details of a text item from a Miro board.\n\nUse this tool to get information about a specific text item on a Miro board, identified by board and item IDs.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board to retrieve a specific text item from. Required for identifying the board within Miro.", + "enum": null, + "inferrable": true + }, + { + "name": "text_item_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the text item to retrieve from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-text-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetTextItemInfo", + "parameters": { + "board_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "text_item_id": { + "value": "text456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserWebhookSubscriptions", + "qualifiedName": "MiroApi.GetUserWebhookSubscriptions", + "fullyQualifiedName": "MiroApi.GetUserWebhookSubscriptions@3.0.0", + "description": "Retrieve all webhook subscriptions for a Miro user.\n\nUse this tool to obtain details about webhook subscriptions associated with a specific Miro user. Useful for managing or inspecting active webhooks. Requires 'boards:read' scope and adheres to Level 4 rate limiting.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string token used to paginate through webhook subscriptions. If not provided, retrieves the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_limit", + "type": "string", + "required": false, + "description": "Specify the maximum number of webhook subscriptions to retrieve for the user.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-user-subscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.GetUserWebhookSubscriptions", + "parameters": { + "pagination_cursor": { + "value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJsMeJK9yDq8B_4t6bmD3W1I2Y4j3_hW5_WJs", + "type": "string", + "required": false + }, + "subscription_limit": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "InviteMiroTeamMember", + "qualifiedName": "MiroApi.InviteMiroTeamMember", + "fullyQualifiedName": "MiroApi.InviteMiroTeamMember@3.0.0", + "description": "Invite a new user to a Miro team within your organization.\n\nUse this tool to invite an existing Miro organization member to an existing team. Suitable for Enterprise plan users with Company Admin roles. Ensure compliance with required authorization scopes and rate limiting.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Miro organization to which the user belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "Specify the unique identifier of the team within the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email_for_team_invitation", + "type": "string", + "required": true, + "description": "Email address of the user to be invited to the Miro team. Ensure the email belongs to a user in your Miro organization.", + "enum": null, + "inferrable": true + }, + { + "name": "team_member_role", + "type": "string", + "required": false, + "description": "Specify the role for the team member: 'member', 'admin', or 'team_guest'. Determines access and permissions in the team.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-invite-team-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.InviteMiroTeamMember", + "parameters": { + "organization_id": { + "value": "org_123456789", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_987654321", + "type": "string", + "required": true + }, + "user_email_for_team_invitation": { + "value": "user@example.com", + "type": "string", + "required": true + }, + "team_member_role": { + "value": "member", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveBoardItem", + "qualifiedName": "MiroApi.RemoveBoardItem", + "fullyQualifiedName": "MiroApi.RemoveBoardItem@3.0.0", + "description": "Delete an item from a Miro board.\n\nThis tool deletes a specified item from a given Miro board. It requires the board's ID and the item's ID. This operation should be called when an item needs to be permanently removed from a board.", + "parameters": [ + { + "name": "board_unique_id", + "type": "string", + "required": true, + "description": "Unique identifier of the Miro board to delete the item from.", + "enum": null, + "inferrable": true + }, + { + "name": "item_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the item to delete from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-item-experimental'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RemoveBoardItem", + "parameters": { + "board_unique_id": { + "value": "board_123456", + "type": "string", + "required": true + }, + "item_id": { + "value": "item_7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveBoardMember", + "qualifiedName": "MiroApi.RemoveBoardMember", + "fullyQualifiedName": "MiroApi.RemoveBoardMember@3.0.0", + "description": "Remove a member from a Miro board.\n\nUse this tool to remove a specific member from a Miro board. This action requires 'boards:write' scope. Useful for managing board access and maintaining privacy.", + "parameters": [ + { + "name": "board_member_id", + "type": "string", + "required": true, + "description": "Unique identifier of the board member to be removed from the board.", + "enum": null, + "inferrable": true + }, + { + "name": "board_unique_id", + "type": "string", + "required": true, + "description": "Unique identifier of the board from which the member will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'remove-board-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RemoveBoardMember", + "parameters": { + "board_member_id": { + "value": "user_12345", + "type": "string", + "required": true + }, + "board_unique_id": { + "value": "board_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveBoardTextItem", + "qualifiedName": "MiroApi.RemoveBoardTextItem", + "fullyQualifiedName": "MiroApi.RemoveBoardTextItem@3.0.0", + "description": "Delete a text item from a Miro board.\n\nUse this tool to delete a specific text item from a board in Miro. Requires 'boards:write' scope. It's useful when you need to remove unwanted or obsolete text content from your boards.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier of the board from which the text item will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "text_item_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the text item to delete from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-text-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RemoveBoardTextItem", + "parameters": { + "board_identifier": { + "value": "board_123456789", + "type": "string", + "required": true + }, + "text_item_id": { + "value": "text_item_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveEmbedItemFromBoard", + "qualifiedName": "MiroApi.RemoveEmbedItemFromBoard", + "fullyQualifiedName": "MiroApi.RemoveEmbedItemFromBoard@3.0.0", + "description": "Remove an embed item from a Miro board.\n\nThis tool deletes a specific embed item from a Miro board. It should be called when there's a need to remove an embedded element from a board, such as cleaning up or updating board contents.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board from which the embed item will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "item_id_to_delete", + "type": "string", + "required": true, + "description": "Unique identifier of the embed item to be deleted from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-embed-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RemoveEmbedItemFromBoard", + "parameters": { + "board_identifier": { + "value": "board_123456", + "type": "string", + "required": true + }, + "item_id_to_delete": { + "value": "embed_item_78910", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveProjectMember", + "qualifiedName": "MiroApi.RemoveProjectMember", + "fullyQualifiedName": "MiroApi.RemoveProjectMember@3.0.0", + "description": "Remove a member from a Miro project.\n\nThis tool removes a specified member from a project within Miro. The user remains part of the team despite being removed from the project. This action is exclusive to Enterprise plan users with Company Admin roles.", + "parameters": [ + { + "name": "member_id", + "type": "string", + "required": true, + "description": "The ID of the member to be removed from the project.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization to which the project belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project from which to remove a member. This ID is required to specify the project accurately.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The ID of the team to which the project belongs, required for specifying the project context.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-delete-project-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RemoveProjectMember", + "parameters": { + "member_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org456", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "proj789", + "type": "string", + "required": true + }, + "team_id": { + "value": "team101", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTagFromItem", + "qualifiedName": "MiroApi.RemoveTagFromItem", + "fullyQualifiedName": "MiroApi.RemoveTagFromItem@3.0.0", + "description": "Remove a specified tag from an item on a Miro board.\n\nUse this tool to remove a specific tag from an item on a Miro board. The tag will still exist on the board, but it will no longer be associated with the item. Note that changes will not reflect in real-time on the board unless refreshed.", + "parameters": [ + { + "name": "board_id_for_tag_removal", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board from which the tag will be removed from an item.", + "enum": null, + "inferrable": true + }, + { + "name": "item_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the item from which the tag will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the tag you want to remove from the item on the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'remove-tag-from-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RemoveTagFromItem", + "parameters": { + "board_id_for_tag_removal": { + "value": "board_123456", + "type": "string", + "required": true + }, + "item_id": { + "value": "item_7890", + "type": "string", + "required": true + }, + "tag_unique_identifier": { + "value": "tag_abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTeamMember", + "qualifiedName": "MiroApi.RemoveTeamMember", + "fullyQualifiedName": "MiroApi.RemoveTeamMember@3.0.0", + "description": "Remove a team member from a team by ID within an enterprise.\n\nThis tool deletes a team member from a specified team using their ID within an enterprise, requiring admin permissions and appropriate API access scope.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier of the organization from which a team member will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the team from which the member will be removed. This should be a string representing the Team ID.", + "enum": null, + "inferrable": true + }, + { + "name": "team_member_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team member to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-delete-team-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RemoveTeamMember", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_7890", + "type": "string", + "required": true + }, + "team_member_id": { + "value": "member_98765", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResetUserSessions", + "qualifiedName": "MiroApi.ResetUserSessions", + "fullyQualifiedName": "MiroApi.ResetUserSessions@3.0.0", + "description": "Reset all active Miro sessions for a specific user.\n\nThis tool is used to immediately end all active Miro sessions for a specified user across all devices, requiring them to sign in again. It's useful for security reasons, such as when credentials are compromised or there's suspicious activity. This API is enterprise-only and requires admin privileges.", + "parameters": [ + { + "name": "user_email_for_session_reset", + "type": "string", + "required": true, + "description": "Email ID of the user whose sessions need resetting. This will sign the user out from all devices.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-post-user-sessions-reset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.ResetUserSessions", + "parameters": { + "user_email_for_session_reset": { + "value": "example.user@miro.com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAppCardInfo", + "qualifiedName": "MiroApi.RetrieveAppCardInfo", + "fullyQualifiedName": "MiroApi.RetrieveAppCardInfo@3.0.0", + "description": "Retrieve information for a specific Miro app card item.\n\nThis tool retrieves detailed information about a specified app card item on a Miro board. Use it to access app card data when you have the board and item identifiers.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "The unique ID for the board containing the app card item to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "item_identifier", + "type": "string", + "required": true, + "description": "Unique identifier of the app card item to retrieve from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-app-card-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveAppCardInfo", + "parameters": { + "board_identifier": { + "value": "12345abCde", + "type": "string", + "required": true + }, + "item_identifier": { + "value": "item67890xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAppMetrics", + "qualifiedName": "MiroApi.RetrieveAppMetrics", + "fullyQualifiedName": "MiroApi.RetrieveAppMetrics@3.0.0", + "description": "Retrieve total usage metrics for a specific app.\n\nThis tool retrieves total usage metrics for a specified app since its creation. It requires an app management API token and the appropriate scope. Useful for monitoring app usage and performance.", + "parameters": [ + { + "name": "app_id", + "type": "string", + "required": true, + "description": "The unique identifier of the app to retrieve total usage metrics for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-metrics-total'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveAppMetrics", + "parameters": { + "app_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBoardClassification", + "qualifiedName": "MiroApi.RetrieveBoardClassification", + "fullyQualifiedName": "MiroApi.RetrieveBoardClassification@3.0.0", + "description": "Get the data classification of a Miro board.\n\nUse this tool to retrieve the classification of a board within Miro. This is available for Enterprise plan users with Company Admin roles. It requires the 'boards:read' scope and is subject to Level 2 rate limiting.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the Miro board to retrieve classification.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier of the organization for which you want to retrieve the board classification.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team to fetch the board classification from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-dataclassification-board-get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveBoardClassification", + "parameters": { + "board_identifier": { + "value": "B_123456789", + "type": "string", + "required": true + }, + "organization_id": { + "value": "O_987654321", + "type": "string", + "required": true + }, + "team_id": { + "value": "T_543216789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBoardConnectorInfo", + "qualifiedName": "MiroApi.RetrieveBoardConnectorInfo", + "fullyQualifiedName": "MiroApi.RetrieveBoardConnectorInfo@3.0.0", + "description": "Retrieve information for a specific board connector.\n\nUse this tool to get detailed information about a specific connector on a Miro board. Ideal for extracting connector details when analyzing or processing board components.", + "parameters": [ + { + "name": "board_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the Miro board from which to retrieve the connector.", + "enum": null, + "inferrable": true + }, + { + "name": "connector_unique_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the connector to retrieve from a Miro board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-connector'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveBoardConnectorInfo", + "parameters": { + "board_unique_identifier": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + }, + "connector_unique_id": { + "value": "conn_7890mnop1234qrst", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBoardInfo", + "qualifiedName": "MiroApi.RetrieveBoardInfo", + "fullyQualifiedName": "MiroApi.RetrieveBoardInfo@3.0.0", + "description": "Retrieve details of a specific Miro board.\n\nRetrieve detailed information about a specific board in Miro, including metadata and content, using the board's unique identifier.", + "parameters": [ + { + "name": "board_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board to retrieve information from Miro.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-specific-board'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveBoardInfo", + "parameters": { + "board_unique_identifier": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBoardItemInfo", + "qualifiedName": "MiroApi.RetrieveBoardItemInfo", + "fullyQualifiedName": "MiroApi.RetrieveBoardItemInfo@3.0.0", + "description": "Retrieve details for a specific board item on Miro.\n\nThis tool retrieves information for a specific item on a Miro board. It should be called when you need details about an item identified by its board and item identifiers. Useful for accessing content or metadata of a board item.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier of the Miro board to retrieve a specific item from.", + "enum": null, + "inferrable": true + }, + { + "name": "item_id", + "type": "string", + "required": true, + "description": "Unique identifier of the item to retrieve from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-specific-item-experimental'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveBoardItemInfo", + "parameters": { + "board_identifier": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + }, + "item_id": { + "value": "item_9876543210", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBoardItems", + "qualifiedName": "MiroApi.RetrieveBoardItems", + "fullyQualifiedName": "MiroApi.RetrieveBoardItems@3.0.0", + "description": "Retrieve items from a specific Miro board.\n\nUse this tool to get a list of items from a Miro board. You can retrieve all items, child items, or specific types of items. Results are retrieved using a cursor-based pagination system.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the Miro board to retrieve items from.", + "enum": null, + "inferrable": true + }, + { + "name": "item_type_filter", + "type": "string", + "required": false, + "description": "Specify the type of items to retrieve from the board (e.g., 'text', 'shape', 'sticky_note').", + "enum": null, + "inferrable": true + }, + { + "name": "items_limit", + "type": "string", + "required": false, + "description": "The maximum number of items to retrieve from the board at once, using pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string token used for cursor-based pagination to fetch the next set of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-items'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveBoardItems", + "parameters": { + "board_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "item_type_filter": { + "value": "sticky_note", + "type": "string", + "required": false + }, + "items_limit": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_token_12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCaseInfo", + "qualifiedName": "MiroApi.RetrieveCaseInfo", + "fullyQualifiedName": "MiroApi.RetrieveCaseInfo@3.0.0", + "description": "Retrieve detailed information about an organization's case.\n\nUse this tool to obtain information about a specific case within an organization. Suitable for Enterprise plan users with required admin roles.", + "parameters": [ + { + "name": "case_id", + "type": "string", + "required": true, + "description": "The unique ID of the case to retrieve information for.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique ID of the organization whose case information you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-case'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveCaseInfo", + "parameters": { + "case_id": { + "value": "abc123-case", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org-4567", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveDocumentItemInfo", + "qualifiedName": "MiroApi.RetrieveDocumentItemInfo", + "fullyQualifiedName": "MiroApi.RetrieveDocumentItemInfo@3.0.0", + "description": "Retrieve information for a specific document item on a board.\n\nUse this tool to obtain details about a specific document item on a Miro board. Ensure the required scope 'boards:read' is available. Ideal for when you need information about documents within board workflows.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier of the board to retrieve a specific document item from.", + "enum": null, + "inferrable": true + }, + { + "name": "document_item_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the document item to retrieve from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-document-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveDocumentItemInfo", + "parameters": { + "board_identifier": { + "value": "board_123456", + "type": "string", + "required": true + }, + "document_item_id": { + "value": "doc_789012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveEdiscoveryCases", + "qualifiedName": "MiroApi.RetrieveEdiscoveryCases", + "fullyQualifiedName": "MiroApi.RetrieveEdiscoveryCases@3.0.0", + "description": "Retrieve eDiscovery cases for your organization.\n\nUse this tool to obtain a list of eDiscovery cases available within your organization. This is specifically for Enterprise plan users with the Enterprise Guard add-on. Ensure you have the Company Admin and eDiscovery Admin roles.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization to retrieve the eDiscovery cases for.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of eDiscovery cases to retrieve in the result list.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Indicator for result position in pagination. Leave empty for first page; use previous request's cursor for subsequent pages.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-all-cases'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveEdiscoveryCases", + "parameters": { + "organization_id": { + "value": "org-123456", + "type": "string", + "required": true + }, + "maximum_items": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor-abcxyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveItemsByTag", + "qualifiedName": "MiroApi.RetrieveItemsByTag", + "fullyQualifiedName": "MiroApi.RetrieveItemsByTag@3.0.0", + "description": "Retrieve items from a board by specifying a tag.\n\nUse this tool to get all items from a Miro board that are associated with a specific tag. It helps in organizing and obtaining items based on tag categorization within the board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier of the board from which to retrieve items by tag.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) for the tag to retrieve items associated with it.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_to_retrieve", + "type": "string", + "required": false, + "description": "Specifies the maximum number of items to retrieve with the specified tag from a board. Use an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Specifies the number of items to skip before starting to collect the result set. Use to navigate paginated results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-items-by-tag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveItemsByTag", + "parameters": { + "board_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "tag_identifier": { + "value": "tag-67890", + "type": "string", + "required": true + }, + "max_items_to_retrieve": { + "value": "50", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "10", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLegalHoldInfo", + "qualifiedName": "MiroApi.RetrieveLegalHoldInfo", + "fullyQualifiedName": "MiroApi.RetrieveLegalHoldInfo@3.0.0", + "description": "Retrieve legal hold information for a specific case.\n\nThis tool retrieves details of a legal hold within a case for an organization. It's designed for organizations with the Enterprise Guard add-on, and accessible to users with Company Admin and eDiscovery Admin roles.", + "parameters": [ + { + "name": "case_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the case for which you want to retrieve the legal hold information.", + "enum": null, + "inferrable": true + }, + { + "name": "legal_hold_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the legal hold you want to retrieve information about.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique ID of the organization to retrieve the legal hold information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-legal-hold'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveLegalHoldInfo", + "parameters": { + "case_identifier": { + "value": "case12345", + "type": "string", + "required": true + }, + "legal_hold_identifier": { + "value": "hold67890", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org112233", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLegalHolds", + "qualifiedName": "MiroApi.RetrieveLegalHolds", + "fullyQualifiedName": "MiroApi.RetrieveLegalHolds@3.0.0", + "description": "Retrieve all legal holds for an organization's case.\n\nThis tool retrieves the list of all legal holds within a specified case for an organization. It is intended for Enterprise plan users with the Enterprise Guard add-on, requiring Company Admin and eDiscovery Admin roles.", + "parameters": [ + { + "name": "case_id", + "type": "string", + "required": true, + "description": "The ID of the case for which you want to retrieve the list of legal holds. Ensure it is a valid string identifying the case.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization to retrieve the list of legal holds for a specific case. Required for identifying the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_in_result", + "type": "integer", + "required": false, + "description": "Specify the maximum number of items to return in the result list.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "An indicator of the result page position. Leave empty for the first page, or use the previous request's cursor value for subsequent pages.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-all-legal-holds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveLegalHolds", + "parameters": { + "case_id": { + "value": "case_123456", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_987654", + "type": "string", + "required": true + }, + "maximum_items_in_result": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveMiroExportResults", + "qualifiedName": "MiroApi.RetrieveMiroExportResults", + "fullyQualifiedName": "MiroApi.RetrieveMiroExportResults@3.0.0", + "description": "Retrieve results of a Miro board export job.\n\nThis tool retrieves the results of an export job for a Miro board, available to Enterprise plan users. It provides detailed information, including an S3 link to the exported files. Ensure you have Company Admin rights and eDiscovery enabled to access this data.", + "parameters": [ + { + "name": "job_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the Miro board export job, required to retrieve export results.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the organization. Required to retrieve export job results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-board-export-job-results'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveMiroExportResults", + "parameters": { + "job_identifier": { + "value": "export_123456789", + "type": "string", + "required": true + }, + "organization_unique_identifier": { + "value": "org_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveShapeInformation", + "qualifiedName": "MiroApi.RetrieveShapeInformation", + "fullyQualifiedName": "MiroApi.RetrieveShapeInformation@3.0.0", + "description": "Retrieve information for a specific shape item on a board.\n\nUse this tool to get detailed information about a specific shape item on a Miro board. It requires the 'boards:read' scope and is subject to level 1 rate limiting.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the board to retrieve a specific shape item from.", + "enum": null, + "inferrable": true + }, + { + "name": "shape_item_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the shape item to retrieve from the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-shape-item-flowchart'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveShapeInformation", + "parameters": { + "board_identifier": { + "value": "board_12345", + "type": "string", + "required": true + }, + "shape_item_id": { + "value": "shape_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTeamMemberById", + "qualifiedName": "MiroApi.RetrieveTeamMemberById", + "fullyQualifiedName": "MiroApi.RetrieveTeamMemberById@3.0.0", + "description": "Retrieve team member details by ID for enterprise users.\n\nThis tool fetches details about a specific team member within an organization using their ID. It is available only to Miro Enterprise plan users who are Company Admins, and requires the 'organizations:teams:read' scope.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization. Required to retrieve team member details.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the team within the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "team_member_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team member to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-get-team-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveTeamMemberById", + "parameters": { + "organization_id": { + "value": "org-123456", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-abcdef", + "type": "string", + "required": true + }, + "team_member_id": { + "value": "member-7890gh", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveUserBoards", + "qualifiedName": "MiroApi.RetrieveUserBoards", + "fullyQualifiedName": "MiroApi.RetrieveUserBoards@3.0.0", + "description": "Retrieve a list of boards accessible to the user.\n\nUse this tool to get a list of Miro boards accessible to the user with the given access token. Supports filtering by team or project ID, and fetches boards instantly when filtered by these parameters. Ideal for users needing to view boards they have access to, including organizational admin users who need a broader view.", + "parameters": [ + { + "name": "board_owner_id", + "type": "string", + "required": false, + "description": "Filter boards by the owner's user ID to view boards created by a specific user.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_number_of_boards", + "type": "string", + "required": false, + "description": "Specifies the maximum number of boards to retrieve. Use a positive integer to limit results.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_filter", + "type": "string", + "required": false, + "description": "Specify the project ID to filter boards accessible to the user. This retrieves boards linked to the given project instantly.", + "enum": null, + "inferrable": true + }, + { + "name": "results_offset", + "type": "string", + "required": false, + "description": "The number of items to skip before starting to collect the result set. This is used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "A string to search and filter boards by name or content. Useful for narrowing down results.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_boards_by", + "type": "string", + "required": false, + "description": "Specify how to sort the list of boards. Options include 'default', 'last_modified', 'last_opened', 'last_created', and 'alphabetically'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to filter boards. This allows retrieval of boards associated with the specified team.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-boards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RetrieveUserBoards", + "parameters": { + "board_owner_id": { + "value": "user_12345", + "type": "string", + "required": false + }, + "maximum_number_of_boards": { + "value": "10", + "type": "string", + "required": false + }, + "project_id_filter": { + "value": "project_67890", + "type": "string", + "required": false + }, + "results_offset": { + "value": "0", + "type": "string", + "required": false + }, + "search_query": { + "value": "Marketing Strategy", + "type": "string", + "required": false + }, + "sort_boards_by": { + "value": "last_modified", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_54321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReviewLegalHoldBoards", + "qualifiedName": "MiroApi.ReviewLegalHoldBoards", + "fullyQualifiedName": "MiroApi.ReviewLegalHoldBoards@3.0.0", + "description": "Review Miro boards under legal hold for legal proceedings.\n\nThis tool retrieves all Miro board content items under a specific legal hold for an organization. Use it to ensure relevant data is preserved for legal processes. The legal hold must be in an 'ACTIVE' state and available only to Enterprise plan users with appropriate admin roles.", + "parameters": [ + { + "name": "case_id", + "type": "string", + "required": true, + "description": "The unique identifier for the case associated with the legal hold items you wish to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "legal_hold_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the legal hold to retrieve content items under hold.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization to retrieve the list of content items under hold.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_in_result", + "type": "integer", + "required": false, + "description": "The maximum number of items to include in the result list. Use to limit response size.", + "enum": null, + "inferrable": true + }, + { + "name": "page_cursor", + "type": "string", + "required": false, + "description": "An indicator for pagination. Leave empty for the first page or use a value from the previous request's cursor field for next pages.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-legal-hold-content-items'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.ReviewLegalHoldBoards", + "parameters": { + "case_id": { + "value": "case_123456", + "type": "string", + "required": true + }, + "legal_hold_identifier": { + "value": "legal_hold_78910", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_112233", + "type": "string", + "required": true + }, + "maximum_items_in_result": { + "value": 50, + "type": "integer", + "required": false + }, + "page_cursor": { + "value": "cursor_xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RevokeMiroAccessToken", + "qualifiedName": "MiroApi.RevokeMiroAccessToken", + "fullyQualifiedName": "MiroApi.RevokeMiroAccessToken@3.0.0", + "description": "Revoke the current Miro access token.\n\nThis tool revokes the current access token for Miro, rendering both the access and refresh tokens invalid. It should be called when you need to terminate access to Miro resources. The application remains installed for the user, even after token revocation.", + "parameters": [ + { + "name": "client_id", + "type": "string", + "required": true, + "description": "The client ID associated with the access token for Miro. Required for token revocation.", + "enum": null, + "inferrable": true + }, + { + "name": "client_secret", + "type": "string", + "required": true, + "description": "The client secret associated with the access token to be revoked. This is required for validation.", + "enum": null, + "inferrable": true + }, + { + "name": "miro_access_token", + "type": "string", + "required": true, + "description": "The Miro access token that needs to be revoked, rendering it and the refresh token unusable.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'revoke-token-v2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.RevokeMiroAccessToken", + "parameters": { + "client_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "client_secret": { + "value": "mySuperSecretClientSecret", + "type": "string", + "required": true + }, + "miro_access_token": { + "value": "abcdef1234567890abcdef1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetBoardClassification", + "qualifiedName": "MiroApi.SetBoardClassification", + "fullyQualifiedName": "MiroApi.SetBoardClassification@3.0.0", + "description": "Update the data classification for a Miro board.\n\nUse this tool to update the classification of a board within the Miro platform. This is an enterprise-only feature requiring Company Admin rights and the 'boards:write' scope.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the board to update its classification.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization to update the board classification for. Required for enterprise users with Company Admin rights.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team associated with the board to be updated. Required for classification updates.", + "enum": null, + "inferrable": true + }, + { + "name": "data_classification_label_id", + "type": "string", + "required": false, + "description": "The ID of the data classification label to apply to the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-dataclassification-board-set'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.SetBoardClassification", + "parameters": { + "board_identifier": { + "value": "board_123456", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_789012", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_345678", + "type": "string", + "required": true + }, + "data_classification_label_id": { + "value": "label_901234", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ShareMiroBoard", + "qualifiedName": "MiroApi.ShareMiroBoard", + "fullyQualifiedName": "MiroApi.ShareMiroBoard@3.0.0", + "description": "Invite new members to collaborate on a Miro board.\n\nUse this tool to share a Miro board by sending invitation emails to new collaborators. Membership in the team might be required based on the board's sharing policy.", + "parameters": [ + { + "name": "board_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the Miro board you want to share. Required to specify the target board.", + "enum": null, + "inferrable": true + }, + { + "name": "invitee_email_addresses", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of up to 20 email addresses to invite to the board.", + "enum": null, + "inferrable": true + }, + { + "name": "board_member_role", + "type": "string", + "required": false, + "description": "Role assigned to the board member. Options are viewer, commenter, editor, coowner, or owner. Note: 'owner' functions as 'coowner'.", + "enum": null, + "inferrable": true + }, + { + "name": "invitation_message", + "type": "string", + "required": false, + "description": "A custom message to include in the invitation email sent to new board collaborators.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'share-board'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.ShareMiroBoard", + "parameters": { + "board_unique_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "invitee_email_addresses": { + "value": [ + "example1@example.com", + "example2@example.com", + "example3@example.com" + ], + "type": "array", + "required": true + }, + "board_member_role": { + "value": "editor", + "type": "string", + "required": false + }, + "invitation_message": { + "value": "Welcome to the board! Looking forward to collaborating.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UngroupItemsOnMiroBoard", + "qualifiedName": "MiroApi.UngroupItemsOnMiroBoard", + "fullyQualifiedName": "MiroApi.UngroupItemsOnMiroBoard@3.0.0", + "description": "Ungroup items from a group on Miro board.\n\nUse this tool to ungroup items from a specific group on a Miro board. This operation requires 'boards:write' scope and is subject to Level 3 rate limiting.", + "parameters": [ + { + "name": "group_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the group to be ungrouped on the Miro board.", + "enum": null, + "inferrable": true + }, + { + "name": "miro_board_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the Miro board to ungroup items from.", + "enum": null, + "inferrable": true + }, + { + "name": "remove_items_after_ungrouping", + "type": "boolean", + "required": false, + "description": "Specify if items should be removed after ungrouping. Default is false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'unGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UngroupItemsOnMiroBoard", + "parameters": { + "group_id": { + "value": "g123456789", + "type": "string", + "required": true + }, + "miro_board_id": { + "value": "b987654321", + "type": "string", + "required": true + }, + "remove_items_after_ungrouping": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBoardClassification", + "qualifiedName": "MiroApi.UpdateBoardClassification", + "fullyQualifiedName": "MiroApi.UpdateBoardClassification@3.0.0", + "description": "Update board classification for team boards in Miro.\n\nThis tool updates the classification for either non-classified or all boards within a specified team in an Enterprise Miro account. It requires the user to have Company Admin privileges and the required scope of 'boards:write'. Ideal for Enterprise plan users needing to organize board classifications efficiently.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization. Required for specifying which organization's team boards will be classified.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the team whose board classification is being updated. This is used to specify which team's boards will be affected by the API call.", + "enum": null, + "inferrable": true + }, + { + "name": "assign_to_not_classified_only", + "type": "boolean", + "required": false, + "description": "If true, assign data classification only to non-classified boards; otherwise, assign to all boards.", + "enum": null, + "inferrable": true + }, + { + "name": "data_classification_label_id", + "type": "integer", + "required": false, + "description": "The ID of the data classification label to assign to a team's boards.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-dataclassification-team-boards-bulk'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateBoardClassification", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_abc987", + "type": "string", + "required": true + }, + "assign_to_not_classified_only": { + "value": true, + "type": "boolean", + "required": false + }, + "data_classification_label_id": { + "value": 42, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBoardGroup", + "qualifiedName": "MiroApi.UpdateBoardGroup", + "fullyQualifiedName": "MiroApi.UpdateBoardGroup@3.0.0", + "description": "Replace and update an existing group in a board.\n\nUse this tool to replace an entire group on a Miro board with a new one. The original group is completely replaced and assigned a new group ID each time. Ensure you have the required scope, 'boards:write', to perform this operation.", + "parameters": [ + { + "name": "board_unique_id", + "type": "string", + "required": true, + "description": "Unique identifier for the board to update the group on.", + "enum": null, + "inferrable": true + }, + { + "name": "group_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the group to be updated. This ID is required to replace the group.", + "enum": null, + "inferrable": true + }, + { + "name": "item_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of unique identifiers (IDs) for the items in the new group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateBoardGroup", + "parameters": { + "board_unique_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "group_id": { + "value": "group789xyz", + "type": "string", + "required": true + }, + "item_ids": { + "value": ["item1", "item2", "item3"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBoardImage", + "qualifiedName": "MiroApi.UpdateBoardImage", + "fullyQualifiedName": "MiroApi.UpdateBoardImage@3.0.0", + "description": "Update an image item on a Miro board using a URL.\n\nUse this tool to update an existing image item on a specific Miro board by providing the image URL. Requires 'boards:write' scope and is subject to Level 2 rate limiting.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board where the image item will be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "image_item_id", + "type": "string", + "required": true, + "description": "The unique ID of the image item to update on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "image_height_pixels", + "type": "number", + "required": false, + "description": "Specify the height of the image item in pixels.", + "enum": null, + "inferrable": true + }, + { + "name": "image_title", + "type": "string", + "required": false, + "description": "A short text header to identify the image on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "image_url", + "type": "string", + "required": false, + "description": "The URL of the image to update on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "image_width_in_pixels", + "type": "number", + "required": false, + "description": "The width of the image item on the board, specified in pixels.", + "enum": null, + "inferrable": true + }, + { + "name": "item_rotation_angle", + "type": "number", + "required": false, + "description": "Specify the rotation angle for the image item in degrees. Use positive values for clockwise and negative for counterclockwise rotation.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_frame_id", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the parent frame for the item.", + "enum": null, + "inferrable": true + }, + { + "name": "x_axis_coordinate", + "type": "number", + "required": false, + "description": "X-axis coordinate for the item's location on the board. The board's center is at x: 0. Default is 0.", + "enum": null, + "inferrable": true + }, + { + "name": "y_axis_coordinate_position", + "type": "number", + "required": false, + "description": "The Y-axis coordinate for placing the item on the board. Default is `0`, with absolute positioning on the board.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-image-item-using-url'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateBoardImage", + "parameters": { + "board_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "image_item_id": { + "value": "img_78910", + "type": "string", + "required": true + }, + "image_height_pixels": { + "value": 400, + "type": "integer", + "required": false + }, + "image_title": { + "value": "Updated Image Title", + "type": "string", + "required": false + }, + "image_url": { + "value": "https://example.com/new-image.jpg", + "type": "string", + "required": false + }, + "image_width_in_pixels": { + "value": 600, + "type": "integer", + "required": false + }, + "item_rotation_angle": { + "value": 90, + "type": "integer", + "required": false + }, + "parent_frame_id": { + "value": "frame_456", + "type": "string", + "required": false + }, + "x_axis_coordinate": { + "value": 250, + "type": "integer", + "required": false + }, + "y_axis_coordinate_position": { + "value": -150, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBoardMemberRole", + "qualifiedName": "MiroApi.UpdateBoardMemberRole", + "fullyQualifiedName": "MiroApi.UpdateBoardMemberRole@3.0.0", + "description": "Update the role of a Miro board member.\n\nThis tool updates the role of a member on a Miro board. It should be called when you need to change a member's role on a specific board. Ensure you have the required 'boards:write' scope and consider rate limiting (Level 2) when using this tool.", + "parameters": [ + { + "name": "board_member_unique_id", + "type": "string", + "required": true, + "description": "Unique identifier of the board member whose role needs updating.", + "enum": null, + "inferrable": true + }, + { + "name": "board_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the board where the member role will be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "board_member_role", + "type": "string", + "required": false, + "description": "The new role to assign to the board member. Options: 'viewer', 'commenter', 'editor', 'coowner', 'owner'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-board-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateBoardMemberRole", + "parameters": { + "board_member_unique_id": { + "value": "user123", + "type": "string", + "required": true + }, + "board_unique_identifier": { + "value": "board456", + "type": "string", + "required": true + }, + "board_member_role": { + "value": "editor", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBoardShape", + "qualifiedName": "MiroApi.UpdateBoardShape", + "fullyQualifiedName": "MiroApi.UpdateBoardShape@3.0.0", + "description": "Update a shape item on a Miro board.\n\n Use this tool to update the properties and style of a shape item on a specified Miro board. Necessary when changes to a shape's data or appearance are required.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_identifier", + "type": "string", + "required": false, + "description": "Unique identifier of the Miro board where you want to update the shape item. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "shape_item_id", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the shape item to update on the board. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-shape-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateBoardShape", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_identifier": { + "value": "board_12345", + "type": "string", + "required": false + }, + "shape_item_id": { + "value": "shape_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"color\":\"#FF5733\",\"text\":\"Updated Shape\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBoardText", + "qualifiedName": "MiroApi.UpdateBoardText", + "fullyQualifiedName": "MiroApi.UpdateBoardText@3.0.0", + "description": "Update a text item on a Miro board.\n\n This tool updates a text item on a specified Miro board using provided data and style properties.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_id", + "type": "string", + "required": false, + "description": "Unique ID of the Miro board where the text item is to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "text_item_id", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the text item to update on the board. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-text-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateBoardText", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_id": { + "value": "b12345abc", + "type": "string", + "required": false + }, + "text_item_id": { + "value": "txt56789xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"text\":\"Updated text content\",\"style\":{\"fontSize\":18,\"color\":\"#000000\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBoardWebhookSubscription", + "qualifiedName": "MiroApi.UpdateBoardWebhookSubscription", + "fullyQualifiedName": "MiroApi.UpdateBoardWebhookSubscription@3.0.0", + "description": "Update the status or URL of a board's webhook subscription.\n\nUse this tool to modify the status or the callback URL of an existing webhook subscription for a Miro board. This is useful for maintaining webhook integrations with updated configurations.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The unique identifier of the webhook subscription to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_callback_url", + "type": "string", + "required": false, + "description": "The HTTPS URL where Miro sends webhooks when events occur. Must be a valid URL.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_status", + "type": "string", + "required": false, + "description": "Set the webhook subscription status: `enabled`, `disabled`, or handle `lost_access`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-board-subscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateBoardWebhookSubscription", + "parameters": { + "subscription_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "webhook_callback_url": { + "value": "https://example.com/webhook/callback", + "type": "string", + "required": false + }, + "webhook_status": { + "value": "enabled", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCardOnBoard", + "qualifiedName": "MiroApi.UpdateCardOnBoard", + "fullyQualifiedName": "MiroApi.UpdateCardOnBoard@3.0.0", + "description": "Update a card item on a Miro board.\n\n This tool updates the properties and style of a specific card item on a Miro board. It should be called when you need to modify details or appearance of an existing card on a board. Requires 'boards:write' scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_identifier", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the board on which the card item will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "card_item_id", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the card item to update on the board. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-card-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateCardOnBoard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_identifier": { + "value": "board_12345", + "type": "string", + "required": false + }, + "card_item_id": { + "value": "card_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Card Title\", \"description\": \"This is an updated description for the card.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateConnectorOnBoard", + "qualifiedName": "MiroApi.UpdateConnectorOnBoard", + "fullyQualifiedName": "MiroApi.UpdateConnectorOnBoard@3.0.0", + "description": "Update a connector on a Miro board.\n\n Updates a connector's properties and style on a specified Miro board using provided data. Requires 'boards:write' scope and adheres to Level 2 rate limiting.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_identifier", + "type": "string", + "required": false, + "description": "The unique string identifier of the Miro board to update the connector on. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "connector_identifier", + "type": "string", + "required": false, + "description": "Unique ID of the connector to update on the board. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-connector'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateConnectorOnBoard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_identifier": { + "value": "board12345", + "type": "string", + "required": false + }, + "connector_identifier": { + "value": "connector67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"style\": {\"color\": \"#FF5733\", \"lineWidth\": 2}, \"properties\": {\"label\": \"Updated Connector\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateDocumentItemOnBoard", + "qualifiedName": "MiroApi.UpdateDocumentItemOnBoard", + "fullyQualifiedName": "MiroApi.UpdateDocumentItemOnBoard@3.0.0", + "description": "Update a document item on a Miro board using its URL.\n\nThis tool updates a specific document item on a Miro board. It should be called when you need to modify the content or metadata of an item on a Miro board by using its URL. Ensure you have the required 'boards:write' scope and be mindful of Level 2 rate limiting.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier of the Miro board where the document item will be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "item_identifier_to_update", + "type": "string", + "required": true, + "description": "Unique identifier of the item to update on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "document_hosting_url", + "type": "string", + "required": false, + "description": "URL where the document is hosted for updating on the Miro board.", + "enum": null, + "inferrable": true + }, + { + "name": "document_title", + "type": "string", + "required": false, + "description": "A short text header to identify the document on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "item_height_pixels", + "type": "number", + "required": false, + "description": "Height of the document item in pixels.", + "enum": null, + "inferrable": true + }, + { + "name": "item_width_pixels", + "type": "number", + "required": false, + "description": "Specify the width of the item in pixels on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_frame_id", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the parent frame for the item on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "rotation_angle_degrees", + "type": "number", + "required": false, + "description": "Rotation angle of an item, in degrees, relative to the board. Positive values rotate clockwise, negative values rotate counterclockwise.", + "enum": null, + "inferrable": true + }, + { + "name": "x_axis_coordinate_on_board", + "type": "number", + "required": false, + "description": "X-axis coordinate for the item's placement on the board, with default positioning at 0. Center of the board is x: 0.", + "enum": null, + "inferrable": true + }, + { + "name": "y_axis_coordinate", + "type": "number", + "required": false, + "description": "Y-axis coordinate for placing the item on the board. Default is 0, with absolute positioning relative to the board center.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-document-item-using-url'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateDocumentItemOnBoard", + "parameters": { + "board_id": { + "value": "board_12345abcde", + "type": "string", + "required": true + }, + "item_identifier_to_update": { + "value": "item_67890fghij", + "type": "string", + "required": true + }, + "document_hosting_url": { + "value": "https://example.com/document.pdf", + "type": "string", + "required": false + }, + "document_title": { + "value": "Project Overview", + "type": "string", + "required": false + }, + "item_height_pixels": { + "value": 200, + "type": "integer", + "required": false + }, + "item_width_pixels": { + "value": 300, + "type": "integer", + "required": false + }, + "parent_frame_id": { + "value": "frame_1122334455", + "type": "string", + "required": false + }, + "rotation_angle_degrees": { + "value": 90, + "type": "integer", + "required": false + }, + "x_axis_coordinate_on_board": { + "value": 50, + "type": "integer", + "required": false + }, + "y_axis_coordinate": { + "value": -25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEmbedItemOnBoard", + "qualifiedName": "MiroApi.UpdateEmbedItemOnBoard", + "fullyQualifiedName": "MiroApi.UpdateEmbedItemOnBoard@3.0.0", + "description": "Update an embed item on a Miro board.\n\nUse this tool to update specific embed items on a Miro board. Ensure you have the required 'boards:write' scope before calling this tool. This action involves modifying the properties of an embed on the board and is subject to Level 2 rate limiting.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board where you want to update the item.", + "enum": null, + "inferrable": true + }, + { + "name": "embed_item_id", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the embed item to update on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "content_resource_url", + "type": "string", + "required": false, + "description": "A valid URL pointing to the content resource to embed in the board. Supports HTTP and HTTPS protocols.", + "enum": null, + "inferrable": true + }, + { + "name": "embed_display_mode", + "type": "string", + "required": false, + "description": "Defines how the content in the embed item is displayed on the board. Use 'inline' for direct display and 'modal' for a modal overlay view.", + "enum": null, + "inferrable": true + }, + { + "name": "item_height_in_pixels", + "type": "number", + "required": false, + "description": "Specify the height of the embed item in pixels.", + "enum": null, + "inferrable": true + }, + { + "name": "item_width_pixels", + "type": "number", + "required": false, + "description": "Specifies the width of the item on the board in pixels.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_frame_id", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the parent frame for the item being updated on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "preview_image_url", + "type": "string", + "required": false, + "description": "URL of the image used as the preview for the embedded item.", + "enum": null, + "inferrable": true + }, + { + "name": "x_axis_coordinate_on_board", + "type": "number", + "required": false, + "description": "X-axis coordinate for the location of the item on the board. Defaults to `0`, representing the center of the board.", + "enum": null, + "inferrable": true + }, + { + "name": "y_axis_coordinate", + "type": "number", + "required": false, + "description": "Y-axis coordinate of the item's location on the board. Defaults to `0`. Center of board is `y: 0`.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-embed-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateEmbedItemOnBoard", + "parameters": { + "board_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "embed_item_id": { + "value": "embed67890", + "type": "string", + "required": true + }, + "content_resource_url": { + "value": "https://example.com/resource", + "type": "string", + "required": false + }, + "embed_display_mode": { + "value": "inline", + "type": "string", + "required": false + }, + "item_height_in_pixels": { + "value": 400, + "type": "integer", + "required": false + }, + "item_width_pixels": { + "value": 600, + "type": "integer", + "required": false + }, + "parent_frame_id": { + "value": "frame54321", + "type": "string", + "required": false + }, + "preview_image_url": { + "value": "https://example.com/preview.jpg", + "type": "string", + "required": false + }, + "x_axis_coordinate_on_board": { + "value": 100, + "type": "integer", + "required": false + }, + "y_axis_coordinate": { + "value": 150, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEnterpriseTeam", + "qualifiedName": "MiroApi.UpdateEnterpriseTeam", + "fullyQualifiedName": "MiroApi.UpdateEnterpriseTeam@3.0.0", + "description": "Update details of an existing enterprise team.\n\nThis tool updates the details of an existing team in an organization for Enterprise plan users. It requires you to have the role of a Company Admin and the appropriate scope (organizations:teams:write).", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier of the organization to which the team belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the team to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "new_team_name", + "type": "string", + "required": false, + "description": "Specify the new name for the team.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-update-team'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateEnterpriseTeam", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_abc789", + "type": "string", + "required": true + }, + "new_team_name": { + "value": "Innovative Solutions Team", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateFlowchartShape", + "qualifiedName": "MiroApi.UpdateFlowchartShape", + "fullyQualifiedName": "MiroApi.UpdateFlowchartShape@3.0.0", + "description": "Update a shape item in a Miro flowchart board.\n\n Use this tool to update the data and style properties of a shape item on a Miro board flowchart. Ideal for modifying existing shapes with new information. Requires 'boards:write' scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_identifier", + "type": "string", + "required": false, + "description": "Unique identifier of the board where the shape item will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "item_id", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the shape item to update on the board. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-shape-item-flowchart'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateFlowchartShape", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_identifier": { + "value": "abc123", + "type": "string", + "required": false + }, + "item_id": { + "value": "shape_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"text\":\"Updated Shape\",\"style\":{\"fillColor\":\"#FF0000\",\"borderColor\":\"#000000\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateItemPositionParent", + "qualifiedName": "MiroApi.UpdateItemPositionParent", + "fullyQualifiedName": "MiroApi.UpdateItemPositionParent@3.0.0", + "description": "Update an item's position or parent on a Miro board.\n\nUse this tool to update the position or change the parent of an item on a Miro board. This requires the 'boards:write' scope and adheres to level 2 rate limiting.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the board where the item's position or parent will be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "item_id", + "type": "string", + "required": true, + "description": "Unique identifier of the item to update on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "item_x_axis_coordinate", + "type": "number", + "required": false, + "description": "X-axis coordinate for the item's location on the board. Default is 0, with positioning relative to the board center.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_frame_id", + "type": "string", + "required": false, + "description": "Unique identifier of the parent frame for the specified item.", + "enum": null, + "inferrable": true + }, + { + "name": "y_axis_coordinate", + "type": "number", + "required": false, + "description": "Y-axis coordinate for the item's location on the board. Defaults to `0` with absolute positioning to the board, not the viewport.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-item-position-or-parent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateItemPositionParent", + "parameters": { + "board_identifier": { + "value": "b_123456789", + "type": "string", + "required": true + }, + "item_id": { + "value": "item_987654321", + "type": "string", + "required": true + }, + "item_x_axis_coordinate": { + "value": 150.5, + "type": "integer", + "required": false + }, + "parent_frame_id": { + "value": "frame_54321", + "type": "string", + "required": false + }, + "y_axis_coordinate": { + "value": 200.75, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMiroAppCard", + "qualifiedName": "MiroApi.UpdateMiroAppCard", + "fullyQualifiedName": "MiroApi.UpdateMiroAppCard@3.0.0", + "description": "Update an app card item on a Miro board.\n\n Use this tool to update an existing app card on a Miro board based on specified data and style properties. Ensure you have the 'boards:write' scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_identifier", + "type": "string", + "required": false, + "description": "Unique identifier of the board where the app card will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "item_identifier_for_update", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the app card item to update on the Miro board. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-app-card-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateMiroAppCard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_identifier": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "item_identifier_for_update": { + "value": "item5678", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Card Title\",\"description\":\"This is the updated description of the card.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMiroBoard", + "qualifiedName": "MiroApi.UpdateMiroBoard", + "fullyQualifiedName": "MiroApi.UpdateMiroBoard@3.0.0", + "description": "Update details of a specific Miro board.\n\n Use this tool to modify the settings or details of a particular board in Miro. Requires 'boards:write' scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_identifier", + "type": "string", + "required": false, + "description": "Unique identifier of the Miro board to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-board'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateMiroBoard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_identifier": { + "value": "b123456789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Board Title\",\"description\":\"This board has been updated with new details.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMiroBoardFrame", + "qualifiedName": "MiroApi.UpdateMiroBoardFrame", + "fullyQualifiedName": "MiroApi.UpdateMiroBoardFrame@3.0.0", + "description": "Update a frame on a Miro board with new properties.\n\n This tool updates a specific frame on a Miro board. It should be called when you want to modify a frame's data, style, or geometry. Ensure you have the required 'boards:write' scope. Rate limiting is Level 2.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_id", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the board where the frame needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "frame_id", + "type": "string", + "required": false, + "description": "Unique identifier of the frame to update on the board. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-frame-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateMiroBoardFrame", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "frame_id": { + "value": "987654321", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Frame Title\",\"backgroundColor\":\"#FFFFFF\",\"borderColor\":\"#FF0000\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMiroTag", + "qualifiedName": "MiroApi.UpdateMiroTag", + "fullyQualifiedName": "MiroApi.UpdateMiroTag@3.0.0", + "description": "Update a tag on a Miro board.\n\nThis tool updates a specific tag on a Miro board using the provided board and tag IDs. Note that changes made via the API will not be visible in real time on the board; a page refresh is required to see updates.", + "parameters": [ + { + "name": "board_identifier", + "type": "string", + "required": true, + "description": "Unique identifier (ID) of the board where the tag update should occur.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the tag you want to update on a Miro board.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_fill_color", + "type": "string", + "required": false, + "description": "Specify the fill color for the tag. Choices are: red, light_green, cyan, yellow, magenta, green, blue, gray, violet, dark_green, dark_blue, black.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_title", + "type": "string", + "required": false, + "description": "Unique, case-sensitive text of the tag to be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-tag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateMiroTag", + "parameters": { + "board_identifier": { + "value": "board_123456", + "type": "string", + "required": true + }, + "tag_unique_identifier": { + "value": "tag_7890", + "type": "string", + "required": true + }, + "tag_fill_color": { + "value": "blue", + "type": "string", + "required": false + }, + "tag_title": { + "value": "Updated Tag Title", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateProjectInfo", + "qualifiedName": "MiroApi.UpdateProjectInfo", + "fullyQualifiedName": "MiroApi.UpdateProjectInfo@3.0.0", + "description": "Update project details for an enterprise account.\n\nThis tool updates project information such as name and description in enterprise accounts on Miro. It requires company admin privileges and is only available for Enterprise plan users.", + "parameters": [ + { + "name": "new_project_name", + "type": "string", + "required": true, + "description": "New name to be assigned to the project.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier of an organization.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier for a team associated with the project.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-update-project'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateProjectInfo", + "parameters": { + "new_project_name": { + "value": "Revamp Marketing Strategy", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_123456789", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "proj_987654321", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_111222333", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateProjectMemberRole", + "qualifiedName": "MiroApi.UpdateProjectMemberRole", + "fullyQualifiedName": "MiroApi.UpdateProjectMemberRole@3.0.0", + "description": "Update the role and details of a project member.\n\nThis tool updates details of a project member, primarily focusing on the role within a project. It is specifically for Enterprise plan users with Company Admin rights. The required scope is 'projects:write'. This tool should be used to manage project membership roles and details efficiently.", + "parameters": [ + { + "name": "member_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project member whose role you want to update.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization to which the project member belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team that the project member is associated with. Required for specifying which team the member belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "project_member_role", + "type": "string", + "required": false, + "description": "The new role for the project member. Choose from 'owner', 'editor', 'viewer', 'commentator', or 'coowner'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-update-project-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateProjectMemberRole", + "parameters": { + "member_id": { + "value": "12345", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_6789", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_101112", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_131415", + "type": "string", + "required": true + }, + "project_member_role": { + "value": "editor", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateProjectSettings", + "qualifiedName": "MiroApi.UpdateProjectSettings", + "fullyQualifiedName": "MiroApi.UpdateProjectSettings@3.0.0", + "description": "Update settings for an enterprise-level project.\n\nThis tool updates the settings of a specified project within an organization's team, available only for Enterprise plan users with Company Admin roles.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization to which the project belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project whose settings need updating.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team associated with the project.", + "enum": null, + "inferrable": true + }, + { + "name": "team_access_level", + "type": "string", + "required": false, + "description": "Specifies the access level for the team. Use \"private\" to restrict access to project members only and \"view\" to allow team-wide viewing.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-update-project-settings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateProjectSettings", + "parameters": { + "organization_id": { + "value": "org_123456789", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "proj_987654321", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_456789012", + "type": "string", + "required": true + }, + "team_access_level": { + "value": "private", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateStickyNote", + "qualifiedName": "MiroApi.UpdateStickyNote", + "fullyQualifiedName": "MiroApi.UpdateStickyNote@3.0.0", + "description": "Update a sticky note on a Miro board.\n\n Use this tool to update a sticky note item on a Miro board by providing the necessary data and style properties. Requires 'boards:write' scope. Suitable for instances where users need to modify sticky note contents or appearances remotely.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "board_id_for_update", + "type": "string", + "required": false, + "description": "Unique identifier of the board where the sticky note update will occur. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "sticky_note_id", + "type": "string", + "required": false, + "description": "Unique identifier (ID) of the sticky note you want to update on the board. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-sticky-note-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateStickyNote", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "board_id_for_update": { + "value": "board_1234", + "type": "string", + "required": false + }, + "sticky_note_id": { + "value": "sticky_5678", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"text\":\"Updated sticky note contents\",\"style\":{\"backgroundColor\":\"#FFDD44\",\"textColor\":\"#000000\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTeamBoardClassificationSettings", + "qualifiedName": "MiroApi.UpdateTeamBoardClassificationSettings", + "fullyQualifiedName": "MiroApi.UpdateTeamBoardClassificationSettings@3.0.0", + "description": "Updates board classification settings for a team's existing board.\n\nThis tool updates the classification settings of a board within a specific team in an enterprise plan. It requires Company Admin permissions and is applicable only for enterprise users. Use this tool to modify board classification settings as necessary for compliance or organizational policy changes.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "ID of the organization whose team's board classification settings will be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the team to update board classification settings for.", + "enum": null, + "inferrable": true + }, + { + "name": "data_classification_default_label_id", + "type": "integer", + "required": false, + "description": "The ID of the default data classification label to set for the team. This should be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_data_classification", + "type": "boolean", + "required": false, + "description": "Enable data classification for the team. Set to `true` to enable, `false` to disable.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-dataclassification-team-settings-set'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateTeamBoardClassificationSettings", + "parameters": { + "organization_id": { + "value": "org_123456789", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_987654321", + "type": "string", + "required": true + }, + "data_classification_default_label_id": { + "value": 2, + "type": "integer", + "required": false + }, + "enable_data_classification": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTeamMemberRole", + "qualifiedName": "MiroApi.UpdateTeamMemberRole", + "fullyQualifiedName": "MiroApi.UpdateTeamMemberRole@3.0.0", + "description": "Update a team member's role in an enterprise team.\n\nThis tool updates the role of a specified team member within an enterprise team. It is intended for use by Company Admins on the Miro Enterprise plan. Ensure you have the required scope 'organizations:teams:write' to utilize this endpoint.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the team whose member's role is to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "team_member_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team member whose role is to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "team_member_role", + "type": "string", + "required": false, + "description": "Role of the team member. Options: 'member', 'admin', 'team_guest'. Specifies permissions within the team.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-update-team-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateTeamMemberRole", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_789012", + "type": "string", + "required": true + }, + "team_member_id": { + "value": "user_345678", + "type": "string", + "required": true + }, + "team_member_role": { + "value": "admin", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTeamSettings", + "qualifiedName": "MiroApi.UpdateTeamSettings", + "fullyQualifiedName": "MiroApi.UpdateTeamSettings@3.0.0", + "description": "Update settings for an existing team in Miro Enterprise.\n\n This tool updates the settings of a specified team within an organization using Miro's Enterprise API. It is intended for users with the role of Company Admin under the Enterprise plan. Ensure the required scopes are available for successful operation.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "The unique identifier for the organization to which the team belongs. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "miro", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprise-update-team-settings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "MiroApi.UpdateTeamSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_12345", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"setting1\": \"value1\", \"setting2\": \"value2\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "miro", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:38:53.671Z", + "summary": "Arcade Toolkit integrates with the Miro API, allowing developers to enhance collaborative functionalities within Miro boards. It empowers applications to add, update, or delete board items effectively while maintaining user engagement. \n\n**Capabilities** \n- Automated addition and management of various items on Miro boards. \n- Streamlined updates to existing board elements, such as shapes and text items. \n- Efficient retrieval of board details and user activities for oversight. \n- Integration with enterprise project management features. \n\n**OAuth** \n- Provider: Miro \n- Scopes: boards:write, projects:write \n\n**Secrets** \n- No secret types or names required for this toolkit." +} diff --git a/data/toolkits/notiontoolkit.json b/data/toolkits/notiontoolkit.json new file mode 100644 index 000000000..72863d718 --- /dev/null +++ b/data/toolkits/notiontoolkit.json @@ -0,0 +1,438 @@ +{ + "id": "NotionToolkit", + "label": "Notion", + "version": "1.2.1", + "description": "Arcade.dev LLM tools for Notion", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/notion.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/notion", + "isComingSoon": false, + "isHidden": true + }, + "auth": { + "type": "oauth2", + "providerId": "notion", + "allScopes": [] + }, + "tools": [ + { + "name": "AppendContentToEndOfPage", + "qualifiedName": "NotionToolkit.AppendContentToEndOfPage", + "fullyQualifiedName": "NotionToolkit.AppendContentToEndOfPage@1.2.1", + "description": "Append markdown content to the end of a Notion page by its ID or title", + "parameters": [ + { + "name": "page_id_or_title", + "type": "string", + "required": true, + "description": "ID or title of the page to append content to", + "enum": null, + "inferrable": true + }, + { + "name": "content", + "type": "string", + "required": true, + "description": "The markdown content to append to the end of the page", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "notion", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a success message and the URL to the page" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "NotionToolkit.AppendContentToEndOfPage", + "parameters": { + "page_id_or_title": { + "value": "12345678-9abc-def0-1234-56789abcdef0", + "type": "string", + "required": true + }, + "content": { + "value": "# New Section\nThis is the new content appended to the page.", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "notion", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePage", + "qualifiedName": "NotionToolkit.CreatePage", + "fullyQualifiedName": "NotionToolkit.CreatePage@1.2.1", + "description": "Create a new Notion page by the title of the new page's parent.", + "parameters": [ + { + "name": "parent_title", + "type": "string", + "required": true, + "description": "Title of an existing page/database within which the new page will be created. ", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": true, + "description": "Title of the new page", + "enum": null, + "inferrable": true + }, + { + "name": "content", + "type": "string", + "required": false, + "description": "The content of the new page", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "notion", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The ID of the new page" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "NotionToolkit.CreatePage", + "parameters": { + "parent_title": { + "value": "Marketing Strategy", + "type": "string", + "required": true + }, + "title": { + "value": "Q4 Campaign Plan", + "type": "string", + "required": true + }, + "content": { + "value": "This page contains the detailed plan for the Q4 marketing campaign.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "notion", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetObjectMetadata", + "qualifiedName": "NotionToolkit.GetObjectMetadata", + "fullyQualifiedName": "NotionToolkit.GetObjectMetadata@1.2.1", + "description": "Get the metadata of a Notion object (page or database) from its title or ID.\n\nOne of `object_title` or `object_id` MUST be provided, but both cannot be provided.\nThe title is case-insensitive and outer whitespace is ignored.\n\nAn object's metadata includes it's id, various timestamps, properties, url, and more.", + "parameters": [ + { + "name": "object_title", + "type": "string", + "required": false, + "description": "Title of the page or database whose metadata to get", + "enum": null, + "inferrable": true + }, + { + "name": "object_id", + "type": "string", + "required": false, + "description": "ID of the page or database whose metadata to get", + "enum": null, + "inferrable": true + }, + { + "name": "object_type", + "type": "string", + "required": false, + "description": "The type of object to match title to. Only used if `object_title` is provided. Defaults to both", + "enum": ["page", "database"], + "inferrable": true + } + ], + "auth": { + "providerId": "notion", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The metadata of the object" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "NotionToolkit.GetObjectMetadata", + "parameters": { + "object_title": { + "value": "Project Plan", + "type": "string", + "required": false + }, + "object_id": { + "value": "", + "type": "string", + "required": false + }, + "object_type": { + "value": "page", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "notion", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPageContentById", + "qualifiedName": "NotionToolkit.GetPageContentById", + "fullyQualifiedName": "NotionToolkit.GetPageContentById@1.2.1", + "description": "Get the content of a Notion page as markdown with the page's ID", + "parameters": [ + { + "name": "page_id", + "type": "string", + "required": true, + "description": "ID of the page to get content from", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "notion", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The markdown content of the page" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "NotionToolkit.GetPageContentById", + "parameters": { + "page_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "notion", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPageContentByTitle", + "qualifiedName": "NotionToolkit.GetPageContentByTitle", + "fullyQualifiedName": "NotionToolkit.GetPageContentByTitle@1.2.1", + "description": "Get the content of a Notion page as markdown with the page's title", + "parameters": [ + { + "name": "title", + "type": "string", + "required": true, + "description": "Title of the page to get content from", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "notion", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "The markdown content of the page" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "NotionToolkit.GetPageContentByTitle", + "parameters": { + "title": { + "value": "Project Overview", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "notion", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkspaceStructure", + "qualifiedName": "NotionToolkit.GetWorkspaceStructure", + "fullyQualifiedName": "NotionToolkit.GetWorkspaceStructure@1.2.1", + "description": "Get the workspace structure of the user's Notion workspace.\nIdeal for finding where an object is located in the workspace.", + "parameters": [], + "auth": { + "providerId": "notion", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The workspace structure" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "NotionToolkit.GetWorkspaceStructure", + "parameters": {}, + "requiresAuth": true, + "authProvider": "notion", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchByTitle", + "qualifiedName": "NotionToolkit.SearchByTitle", + "fullyQualifiedName": "NotionToolkit.SearchByTitle@1.2.1", + "description": "Search for similar titles of pages, databases, or both within the user's workspace.\nDoes not include content.", + "parameters": [ + { + "name": "query", + "type": "string", + "required": false, + "description": "A substring to search for within page and database titles. If not provided (default), all pages and/or databases are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "select", + "type": "string", + "required": false, + "description": "Limit the results to either only pages or only databases. Defaults to both.", + "enum": ["page", "database"], + "inferrable": true + }, + { + "name": "order_by", + "type": "string", + "required": false, + "description": "The direction to sort search results by last edited time. Defaults to 'descending'.", + "enum": ["ascending", "descending"], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of results to return. Defaults to 100. Set to -1 for no limit.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "notion", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing minimal information about the pages and/or databases that have titles that are the best match for the query. Does not include content or location." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "NotionToolkit.SearchByTitle", + "parameters": { + "query": { + "value": "project", + "type": "string", + "required": false + }, + "select": { + "value": "pages", + "type": "string", + "required": false + }, + "order_by": { + "value": "ascending", + "type": "string", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "notion", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "NotionToolkit.WhoAmI", + "fullyQualifiedName": "NotionToolkit.WhoAmI@1.2.1", + "description": "Get information about the current user and their Notion workspace.\n\nThis tool provides detailed information about the authenticated user's\nNotion workspace including workspace statistics, user context, and\nintegration details.", + "parameters": [], + "auth": { + "providerId": "notion", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get comprehensive user profile and Notion workspace information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "NotionToolkit.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "notion", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Notion MCP Server uses the [Notion auth provider](/references/auth-providers/notion) to connect to users' Notion accounts.", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:38:03.552Z", + "summary": "NotionToolkit is a powerful set of tools from Arcade.dev that facilitates interaction with Notion's API, enabling developers to easily manage and manipulate their Notion workspaces. It streamlines operations such as creating pages, appending content, and retrieving metadata or content from existing Notion pages.\n\n### Capabilities\n- Effortlessly create and modify pages within Notion.\n- Access detailed metadata and content from various Notion objects.\n- Search and navigate workspace structures and content efficiently.\n- Retrieve user information and workspace statistics.\n\n### OAuth\n- **Provider:** Notion\n- **Scopes:** None" +} diff --git a/data/toolkits/outlookcalendar.json b/data/toolkits/outlookcalendar.json new file mode 100644 index 000000000..5410995d0 --- /dev/null +++ b/data/toolkits/outlookcalendar.json @@ -0,0 +1,308 @@ +{ + "id": "OutlookCalendar", + "label": "Outlook Calendar", + "version": "2.2.1", + "description": "rcade.dev LLM tools for Outlook Calendar", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/outlook-calendar.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/outlook-calendar", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "microsoft", + "allScopes": [ + "Calendars.ReadBasic", + "Calendars.ReadWrite", + "MailboxSettings.Read", + "User.Read" + ] + }, + "tools": [ + { + "name": "CreateEvent", + "qualifiedName": "OutlookCalendar.CreateEvent", + "fullyQualifiedName": "OutlookCalendar.CreateEvent@2.2.1", + "description": "Create an event in the authenticated user's default calendar.\n\nIgnores timezone offsets provided in the start_date_time and end_date_time parameters.\nInstead, uses the user's default calendar timezone to filter events.\nIf the user has not set a timezone for their calendar, then the timezone will be UTC.", + "parameters": [ + { + "name": "subject", + "type": "string", + "required": true, + "description": "The text of the event's subject (title) line.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the event", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_time", + "type": "string", + "required": true, + "description": "The datetime of the event's start, represented in ISO 8601 format. Timezone offset is ignored. For example, 2025-04-25T13:00:00", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_time", + "type": "string", + "required": true, + "description": "The datetime of the event's end, represented in ISO 8601 format. Timezone offset is ignored. For example, 2025-04-25T13:30:00", + "enum": null, + "inferrable": true + }, + { + "name": "location", + "type": "string", + "required": false, + "description": "The location of the event", + "enum": null, + "inferrable": true + }, + { + "name": "attendee_emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "The email addresses of the attendees of the event. Must be valid email addresses e.g., username@domain.com.", + "enum": null, + "inferrable": true + }, + { + "name": "is_online_meeting", + "type": "boolean", + "required": false, + "description": "Whether the event is an online meeting. Defaults to False", + "enum": null, + "inferrable": true + }, + { + "name": "custom_meeting_url", + "type": "string", + "required": false, + "description": "The URL of the online meeting. If not provided and is_online_meeting is True, then a url will be generated for you", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["MailboxSettings.Read", "Calendars.ReadWrite"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the created event details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "OutlookCalendar.CreateEvent", + "parameters": { + "subject": { + "value": "Team Sync Meeting", + "type": "string", + "required": true + }, + "body": { + "value": "Discuss project updates and next steps.", + "type": "string", + "required": true + }, + "start_date_time": { + "value": "2025-04-25T13:00:00", + "type": "string", + "required": true + }, + "end_date_time": { + "value": "2025-04-25T14:00:00", + "type": "string", + "required": true + }, + "location": { + "value": "Meeting Room A", + "type": "string", + "required": false + }, + "attendee_emails": { + "value": ["john.doe@example.com", "jane.smith@example.com"], + "type": "array", + "required": false + }, + "is_online_meeting": { + "value": true, + "type": "boolean", + "required": false + }, + "custom_meeting_url": { + "value": "https://example.com/meeting/12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEvent", + "qualifiedName": "OutlookCalendar.GetEvent", + "fullyQualifiedName": "OutlookCalendar.GetEvent@2.2.1", + "description": "Get an event by its ID from the user's calendar.", + "parameters": [ + { + "name": "event_id", + "type": "string", + "required": true, + "description": "The ID of the event to get", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["MailboxSettings.Read", "Calendars.ReadBasic"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the event details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "OutlookCalendar.GetEvent", + "parameters": { + "event_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEventsInTimeRange", + "qualifiedName": "OutlookCalendar.ListEventsInTimeRange", + "fullyQualifiedName": "OutlookCalendar.ListEventsInTimeRange@2.2.1", + "description": "List events in the user's calendar in a specific time range.\n\nIgnores timezone offsets provided in the start_date_time and end_date_time parameters.\nInstead, uses the user's default calendar timezone to filter events.\nIf the user has not set a timezone for their calendar, then the timezone will be UTC.", + "parameters": [ + { + "name": "start_date_time", + "type": "string", + "required": true, + "description": "The start date and time of the time range, represented in ISO 8601 format. Timezone offset is ignored. For example, 2025-04-24T19:00:00", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_time", + "type": "string", + "required": true, + "description": "The end date and time of the time range, represented in ISO 8601 format. Timezone offset is ignored. For example, 2025-04-24T19:30:00", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of events to return. Max 1000. Defaults to 10", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["MailboxSettings.Read", "Calendars.ReadBasic"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of events" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "OutlookCalendar.ListEventsInTimeRange", + "parameters": { + "start_date_time": { + "value": "2025-04-24T09:00:00", + "type": "string", + "required": true + }, + "end_date_time": { + "value": "2025-04-24T17:00:00", + "type": "string", + "required": true + }, + "limit": { + "value": 15, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "OutlookCalendar.WhoAmI", + "fullyQualifiedName": "OutlookCalendar.WhoAmI@2.2.1", + "description": "Get information about the current user and their Outlook Calendar environment.", + "parameters": [], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["User.Read", "Calendars.ReadBasic"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get comprehensive user profile and Outlook Calendar information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "OutlookCalendar.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Outlook Calendar MCP Server uses the [Microsoft auth provider](/references/auth-providers/microsoft) to connect to users' Microsoft accounts.\n---", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:38:10.447Z", + "summary": "Arcade Toolkit for Outlook Calendar provides developers with powerful integrations utilizing Microsoft’s OAuth2 authentication. This toolkit empowers users to proficiently manage calendar events and retrieve user details.\n\n**Capabilities**\n- Create and manage calendar events seamlessly in users' default calendar.\n- Retrieve detailed event information by event ID.\n- List events occurring within specified time ranges, taking into account default calendar time zones.\n- Access current user information and their Outlook Calendar environment effortlessly.\n\n**OAuth**\n- Provider: Microsoft\n- Scopes: Calendars.ReadBasic, Calendars.ReadWrite, MailboxSettings.Read, User.Read" +} diff --git a/data/toolkits/outlookmail.json b/data/toolkits/outlookmail.json new file mode 100644 index 000000000..5c044bf33 --- /dev/null +++ b/data/toolkits/outlookmail.json @@ -0,0 +1,789 @@ +{ + "id": "OutlookMail", + "label": "Outlook Mail", + "version": "2.3.0", + "description": "Arcade.dev LLM tools for Outlook Mail", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/outlook-mail.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/outlook-mail", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "microsoft", + "allScopes": ["Mail.Read", "Mail.ReadWrite", "Mail.Send", "User.Read"] + }, + "tools": [ + { + "name": "CreateAndSendEmail", + "qualifiedName": "OutlookMail.CreateAndSendEmail", + "fullyQualifiedName": "OutlookMail.CreateAndSendEmail@2.3.0", + "description": "Create and immediately send a new email in Outlook to the specified recipients", + "parameters": [ + { + "name": "subject", + "type": "string", + "required": true, + "description": "The subject of the email to create", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the email to create", + "enum": null, + "inferrable": true + }, + { + "name": "to_recipients", + "type": "array", + "innerType": "string", + "required": true, + "description": "The email addresses that will be the recipients of the email", + "enum": null, + "inferrable": true + }, + { + "name": "cc_recipients", + "type": "array", + "innerType": "string", + "required": false, + "description": "The email addresses that will be the CC recipients of the email.", + "enum": null, + "inferrable": true + }, + { + "name": "bcc_recipients", + "type": "array", + "innerType": "string", + "required": false, + "description": "The email addresses that will be the BCC recipients of the email.", + "enum": null, + "inferrable": true + }, + { + "name": "body_type", + "type": "string", + "required": false, + "description": "The content type of the email body. Defaults to 'text'", + "enum": ["text", "html"], + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.Send"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the created email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "OutlookMail.CreateAndSendEmail", + "parameters": { + "subject": { + "value": "Project Update", + "type": "string", + "required": true + }, + "body": { + "value": "This is an update on the project status. Please review the attached documents.", + "type": "string", + "required": true + }, + "to_recipients": { + "value": ["alice@example.com", "bob@example.com"], + "type": "array", + "required": true + }, + "cc_recipients": { + "value": ["charlie@example.com"], + "type": "array", + "required": false + }, + "bcc_recipients": { + "value": ["dave@example.com"], + "type": "array", + "required": false + }, + "body_type": { + "value": "text", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateDraftEmail", + "qualifiedName": "OutlookMail.CreateDraftEmail", + "fullyQualifiedName": "OutlookMail.CreateDraftEmail@2.3.0", + "description": "Compose a new draft email in Outlook", + "parameters": [ + { + "name": "subject", + "type": "string", + "required": true, + "description": "The subject of the draft email to create", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the draft email to create", + "enum": null, + "inferrable": true + }, + { + "name": "to_recipients", + "type": "array", + "innerType": "string", + "required": true, + "description": "The email addresses that will be the recipients of the draft email", + "enum": null, + "inferrable": true + }, + { + "name": "cc_recipients", + "type": "array", + "innerType": "string", + "required": false, + "description": "The email addresses that will be the CC recipients of the draft email.", + "enum": null, + "inferrable": true + }, + { + "name": "bcc_recipients", + "type": "array", + "innerType": "string", + "required": false, + "description": "The email addresses that will be the BCC recipients of the draft email.", + "enum": null, + "inferrable": true + }, + { + "name": "body_type", + "type": "string", + "required": false, + "description": "The content type of the email body. Defaults to 'text'", + "enum": ["text", "html"], + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.ReadWrite"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the created email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "OutlookMail.CreateDraftEmail", + "parameters": { + "subject": { + "value": "Meeting Reminder", + "type": "string", + "required": true + }, + "body": { + "value": "This is a reminder for our meeting scheduled for tomorrow at 10 AM.", + "type": "string", + "required": true + }, + "to_recipients": { + "value": ["example1@example.com", "example2@example.com"], + "type": "array", + "required": true + }, + "cc_recipients": { + "value": ["cc@example.com"], + "type": "array", + "required": false + }, + "bcc_recipients": { + "value": ["bcc@example.com"], + "type": "array", + "required": false + }, + "body_type": { + "value": "text", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEmails", + "qualifiedName": "OutlookMail.ListEmails", + "fullyQualifiedName": "OutlookMail.ListEmails@2.3.0", + "description": "List emails in the user's mailbox across all folders.\n\nSince this tool lists email across all folders, it may return sent items, drafts,\nand other items that are not in the inbox.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of messages to return. Max is 100. Defaults to 5.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to continue a previous request", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of emails" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "OutlookMail.ListEmails", + "parameters": { + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEmailsByProperty", + "qualifiedName": "OutlookMail.ListEmailsByProperty", + "fullyQualifiedName": "OutlookMail.ListEmailsByProperty@2.3.0", + "description": "List emails in the user's mailbox across all folders filtering by a property.", + "parameters": [ + { + "name": "property", + "type": "string", + "required": true, + "description": "The property to filter the emails by.", + "enum": [ + "subject", + "conversationId", + "receivedDateTime", + "sender/emailAddress/address" + ], + "inferrable": true + }, + { + "name": "operator", + "type": "string", + "required": true, + "description": "The operator to use for the filter.", + "enum": [ + "eq", + "ne", + "gt", + "ge", + "lt", + "le", + "startsWith", + "endsWith", + "contains" + ], + "inferrable": true + }, + { + "name": "value", + "type": "string", + "required": true, + "description": "The value to filter the emails by", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of messages to return. Max is 100. Defaults to 5.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to continue a previous request", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of emails" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "OutlookMail.ListEmailsByProperty", + "parameters": { + "property": { + "value": "subject", + "type": "string", + "required": true + }, + "operator": { + "value": "contains", + "type": "string", + "required": true + }, + "value": { + "value": "meeting", + "type": "string", + "required": true + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEmailsInFolder", + "qualifiedName": "OutlookMail.ListEmailsInFolder", + "fullyQualifiedName": "OutlookMail.ListEmailsInFolder@2.3.0", + "description": "List the user's emails in the specified folder.\n\nExactly one of `well_known_folder_name` or `folder_id` MUST be provided.", + "parameters": [ + { + "name": "well_known_folder_name", + "type": "string", + "required": false, + "description": "The name of the folder to list emails from. Defaults to None.", + "enum": [ + "deleteditems", + "drafts", + "inbox", + "junkemail", + "sentitems", + "starred", + "tasks" + ], + "inferrable": true + }, + { + "name": "folder_id", + "type": "string", + "required": false, + "description": "The ID of the folder to list emails from if the folder is not a well-known folder. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of messages to return. Max is 100. Defaults to 5.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_token", + "type": "string", + "required": false, + "description": "The pagination token to continue a previous request", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing a list of emails and a pagination token, if applicable" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "OutlookMail.ListEmailsInFolder", + "parameters": { + "well_known_folder_name": { + "value": "Inbox", + "type": "string", + "required": false + }, + "folder_id": { + "value": null, + "type": "string", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_token": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplyToEmail", + "qualifiedName": "OutlookMail.ReplyToEmail", + "fullyQualifiedName": "OutlookMail.ReplyToEmail@2.3.0", + "description": "Reply to an existing email in Outlook.\n\nUse this tool to reply to the sender or all recipients of the email.\nSpecify the reply_type to determine the scope of the reply.", + "parameters": [ + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The ID of the email to reply to", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The body of the reply to the email", + "enum": null, + "inferrable": true + }, + { + "name": "reply_type", + "type": "string", + "required": false, + "description": "Specify ReplyType.REPLY to reply only to the sender or ReplyType.REPLY_ALL to reply to all recipients. Defaults to ReplyType.REPLY.", + "enum": ["reply", "reply_all"], + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.Send"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the sent email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "OutlookMail.ReplyToEmail", + "parameters": { + "message_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "body": { + "value": "Thank you for your email. I appreciate your promptness.", + "type": "string", + "required": true + }, + "reply_type": { + "value": "REPLY_ALL", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendDraftEmail", + "qualifiedName": "OutlookMail.SendDraftEmail", + "fullyQualifiedName": "OutlookMail.SendDraftEmail@2.3.0", + "description": "Send an existing draft email in Outlook\n\nThis tool can send any un-sent email:\n - draft\n - reply-draft\n - reply-all draft\n - forward draft", + "parameters": [ + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The ID of the draft email to send", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.Send"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the sent email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "OutlookMail.SendDraftEmail", + "parameters": { + "message_id": { + "value": "draft_1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateDraftEmail", + "qualifiedName": "OutlookMail.UpdateDraftEmail", + "fullyQualifiedName": "OutlookMail.UpdateDraftEmail@2.3.0", + "description": "Update an existing draft email in Outlook.\n\nThis tool overwrites the subject and body of a draft email (if provided),\nand modifies its recipient lists by selectively adding or removing email addresses.\n\nThis tool can update any un-sent email:\n - draft\n - reply-draft\n - reply-all draft\n - forward draft", + "parameters": [ + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The ID of the draft email to update", + "enum": null, + "inferrable": true + }, + { + "name": "subject", + "type": "string", + "required": false, + "description": "The new subject of the draft email. If provided, the existing subject will be overwritten", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "The new body of the draft email. If provided, the existing body will be overwritten", + "enum": null, + "inferrable": true + }, + { + "name": "to_add", + "type": "array", + "innerType": "string", + "required": false, + "description": "Email addresses to add as 'To' recipients.", + "enum": null, + "inferrable": true + }, + { + "name": "to_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "Email addresses to remove from the current 'To' recipients.", + "enum": null, + "inferrable": true + }, + { + "name": "cc_add", + "type": "array", + "innerType": "string", + "required": false, + "description": "Email addresses to add as 'CC' recipients.", + "enum": null, + "inferrable": true + }, + { + "name": "cc_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "Email addresses to remove from the current 'CC' recipients.", + "enum": null, + "inferrable": true + }, + { + "name": "bcc_add", + "type": "array", + "innerType": "string", + "required": false, + "description": "Email addresses to add as 'BCC' recipients.", + "enum": null, + "inferrable": true + }, + { + "name": "bcc_remove", + "type": "array", + "innerType": "string", + "required": false, + "description": "Email addresses to remove from the current 'BCC' recipients.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Mail.ReadWrite"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the updated email details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "OutlookMail.UpdateDraftEmail", + "parameters": { + "message_id": { + "value": "12345-abcde-67890-fghij-12345", + "type": "string", + "required": true + }, + "subject": { + "value": "Meeting Update", + "type": "string", + "required": false + }, + "body": { + "value": "The meeting has been rescheduled to next week.", + "type": "string", + "required": false + }, + "to_add": { + "value": ["john.doe@example.com", "jane.smith@example.com"], + "type": "array", + "required": false + }, + "to_remove": { + "value": ["old.recipient@example.com"], + "type": "array", + "required": false + }, + "cc_add": { + "value": ["manager@example.com"], + "type": "array", + "required": false + }, + "cc_remove": { + "value": ["former.cc@example.com"], + "type": "array", + "required": false + }, + "bcc_add": { + "value": [], + "type": "array", + "required": false + }, + "bcc_remove": { + "value": ["old.bcc@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "OutlookMail.WhoAmI", + "fullyQualifiedName": "OutlookMail.WhoAmI@2.3.0", + "description": "Get comprehensive user profile and Outlook Mail environment information.\n\nThis tool provides detailed information about the authenticated user including\ntheir name, email, mailbox settings, automatic replies configuration, and other\nimportant profile details from Outlook Mail services.", + "parameters": [], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["User.Read", "Mail.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get comprehensive user profile and Outlook Mail environment information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "OutlookMail.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Outlook Mail MCP Server uses the [Microsoft auth provider](/references/auth-providers/microsoft) to connect to users' Microsoft accounts.\n---", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:38:19.311Z", + "summary": "**Outlook Mail Toolkit Overview**\\nThe Arcade.dev Outlook Mail toolkit provides powerful functionalities to integrate Outlook Mail capabilities into applications. It enables developers to manage email interactions seamlessly through a variety of tools and features.\\n\\n**Capabilities**\\n- Create, send, and draft emails with ease.\\n- List and filter emails across all mailbox folders.\\n- Reply to emails and manage draft updates effectively.\\n- Retrieve comprehensive user profile and configuration details.\\n\\n**OAuth**\\n- **Provider**: Microsoft\\n- **Scopes**: Mail.Read, Mail.ReadWrite, Mail.Send, User.Read\\n\\n**Secrets**\\nNo secrets are required for usage." +} diff --git a/data/toolkits/pagerduty.json b/data/toolkits/pagerduty.json new file mode 100644 index 000000000..3df363363 --- /dev/null +++ b/data/toolkits/pagerduty.json @@ -0,0 +1,977 @@ +{ + "id": "Pagerduty", + "label": "Pagerduty", + "version": "0.2.0", + "description": "Arcade tools designed for LLMs to interact with PagerDuty", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/pagerduty.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/pagerduty", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "pagerduty", + "allScopes": [] + }, + "tools": [ + { + "name": "GetEscalationPolicy", + "qualifiedName": "Pagerduty.GetEscalationPolicy", + "fullyQualifiedName": "Pagerduty.GetEscalationPolicy@0.2.0", + "description": "Get a single escalation policy by ID.", + "parameters": [ + { + "name": "escalation_policy_id", + "type": "string", + "required": true, + "description": "Escalation policy ID to fetch.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Escalation policy details." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pagerduty.GetEscalationPolicy", + "parameters": { + "escalation_policy_id": { + "value": "E123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncident", + "qualifiedName": "Pagerduty.GetIncident", + "fullyQualifiedName": "Pagerduty.GetIncident@0.2.0", + "description": "Get a single incident by ID.", + "parameters": [ + { + "name": "incident_id", + "type": "string", + "required": true, + "description": "Incident ID to fetch.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Incident details." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pagerduty.GetIncident", + "parameters": { + "incident_id": { + "value": "P123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetService", + "qualifiedName": "Pagerduty.GetService", + "fullyQualifiedName": "Pagerduty.GetService@0.2.0", + "description": "Get a single service by ID.", + "parameters": [ + { + "name": "service_id", + "type": "string", + "required": true, + "description": "Service ID to fetch.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Service details." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pagerduty.GetService", + "parameters": { + "service_id": { + "value": "PABC123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeam", + "qualifiedName": "Pagerduty.GetTeam", + "fullyQualifiedName": "Pagerduty.GetTeam@0.2.0", + "description": "Get a single team by ID including members and linked resources.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "Team ID to fetch.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Team details." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pagerduty.GetTeam", + "parameters": { + "team_id": { + "value": "T12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEscalationPolicies", + "qualifiedName": "Pagerduty.ListEscalationPolicies", + "fullyQualifiedName": "Pagerduty.ListEscalationPolicies@0.2.0", + "description": "List escalation policies.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum policies to return (1-50). Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Offset for pagination. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Escalation policies with pagination fields" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pagerduty.ListEscalationPolicies", + "parameters": { + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "offset": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIncidents", + "qualifiedName": "Pagerduty.ListIncidents", + "fullyQualifiedName": "Pagerduty.ListIncidents@0.2.0", + "description": "List incidents with optional status, urgency, service, team, and time filters.", + "parameters": [ + { + "name": "status", + "type": "string", + "required": false, + "description": "Filter by status. Default is None.", + "enum": ["triggered", "acknowledged", "resolved"], + "inferrable": true + }, + { + "name": "urgency", + "type": "string", + "required": false, + "description": "Filter by urgency. Default is None.", + "enum": ["high", "low"], + "inferrable": true + }, + { + "name": "service_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by service IDs. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "team_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by team IDs. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "since", + "type": "string", + "required": false, + "description": "Start time filter ISO 8601 UTC. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "until", + "type": "string", + "required": false, + "description": "End time filter ISO 8601 UTC. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum incidents to return (1-50). Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Offset for pagination. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List of incidents with pagination fields" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pagerduty.ListIncidents", + "parameters": { + "status": { + "value": "triggered", + "type": "string", + "required": false + }, + "urgency": { + "value": "high", + "type": "string", + "required": false + }, + "service_ids": { + "value": ["abc123", "def456"], + "type": "array", + "required": false + }, + "team_ids": { + "value": ["team1", "team2"], + "type": "array", + "required": false + }, + "since": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "until": { + "value": "2023-10-31T23:59:59Z", + "type": "string", + "required": false + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "offset": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListLogEntries", + "qualifiedName": "Pagerduty.ListLogEntries", + "fullyQualifiedName": "Pagerduty.ListLogEntries@0.2.0", + "description": "List log entries (activity feed) showing recent incident events.\n\nReturns events like incident triggers, acknowledgments, escalations,\nand resolutions across the account.", + "parameters": [ + { + "name": "since", + "type": "string", + "required": false, + "description": "Start time filter (ISO 8601 UTC). Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "until", + "type": "string", + "required": false, + "description": "End time filter (ISO 8601 UTC). Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "team_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by team IDs. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "time_zone", + "type": "string", + "required": false, + "description": "Time zone for times (IANA format, e.g., America/New_York). Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "is_overview", + "type": "boolean", + "required": false, + "description": "Return compact overview entries. Default is True.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum entries to return (1-50). Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Offset for pagination. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Activity log entries with pagination fields" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pagerduty.ListLogEntries", + "parameters": { + "since": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "until": { + "value": "2023-10-31T23:59:59Z", + "type": "string", + "required": false + }, + "team_ids": { + "value": ["team_1", "team_2"], + "type": "array", + "required": false + }, + "time_zone": { + "value": "America/New_York", + "type": "string", + "required": false + }, + "is_overview": { + "value": false, + "type": "boolean", + "required": false + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "offset": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOncalls", + "qualifiedName": "Pagerduty.ListOncalls", + "fullyQualifiedName": "Pagerduty.ListOncalls@0.2.0", + "description": "List on-call entries with optional filters.", + "parameters": [ + { + "name": "schedule_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by schedule IDs. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "escalation_policy_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by escalation policy IDs. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "team_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by team IDs. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "time_zone", + "type": "string", + "required": false, + "description": "Optional time zone for times. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum on-call entries to return (1-50). Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Offset for pagination. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "since", + "type": "string", + "required": false, + "description": "Filter entries starting at or after this ISO 8601 time. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "until", + "type": "string", + "required": false, + "description": "Filter entries ending at or before this ISO 8601 time. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "On-call entries with pagination fields" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pagerduty.ListOncalls", + "parameters": { + "schedule_ids": { + "value": ["PABC123", "PDEF456"], + "type": "array", + "required": false + }, + "escalation_policy_ids": { + "value": ["EPLN789"], + "type": "array", + "required": false + }, + "team_ids": { + "value": ["TXYZ001", "TXYZ002"], + "type": "array", + "required": false + }, + "time_zone": { + "value": "America/New_York", + "type": "string", + "required": false + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "offset": { + "value": 5, + "type": "integer", + "required": false + }, + "since": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "until": { + "value": "2023-10-31T23:59:59Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSchedules", + "qualifiedName": "Pagerduty.ListSchedules", + "fullyQualifiedName": "Pagerduty.ListSchedules@0.2.0", + "description": "List schedules.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum schedules to return (1-50). Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Offset for pagination. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "time_zone", + "type": "string", + "required": false, + "description": "Optional time zone (IANA format, e.g., America/New_York). Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Schedules with pagination fields" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pagerduty.ListSchedules", + "parameters": { + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "offset": { + "value": 5, + "type": "integer", + "required": false + }, + "time_zone": { + "value": "America/New_York", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListServices", + "qualifiedName": "Pagerduty.ListServices", + "fullyQualifiedName": "Pagerduty.ListServices@0.2.0", + "description": "List services with optional name search.", + "parameters": [ + { + "name": "query", + "type": "string", + "required": false, + "description": "Search services by name. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum services to return (1-50). Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Offset for pagination. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List of services with pagination fields" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pagerduty.ListServices", + "parameters": { + "query": { + "value": "incident response", + "type": "string", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "offset": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeams", + "qualifiedName": "Pagerduty.ListTeams", + "fullyQualifiedName": "Pagerduty.ListTeams@0.2.0", + "description": "List teams.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum teams to return (1-50). Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Offset for pagination. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Teams with pagination fields" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pagerduty.ListTeams", + "parameters": { + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "offset": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUsers", + "qualifiedName": "Pagerduty.ListUsers", + "fullyQualifiedName": "Pagerduty.ListUsers@0.2.0", + "description": "List users.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum users to return (1-50). Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Offset for pagination. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Users with pagination fields" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pagerduty.ListUsers", + "parameters": { + "limit": { + "value": 20, + "type": "integer", + "required": false + }, + "offset": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchUsers", + "qualifiedName": "Pagerduty.SearchUsers", + "fullyQualifiedName": "Pagerduty.SearchUsers@0.2.0", + "description": "Search users using local fuzzy matching on name/email.", + "parameters": [ + { + "name": "query", + "type": "string", + "required": true, + "description": "Search string to match against user name and email.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 0.9 confidence. Default is False", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Fuzzy user matches with confidence scores" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pagerduty.SearchUsers", + "parameters": { + "query": { + "value": "john.doe@example.com", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "Whoami", + "qualifiedName": "Pagerduty.Whoami", + "fullyQualifiedName": "Pagerduty.Whoami@0.2.0", + "description": "Get the authenticated PagerDuty user's profile with contact and notification summaries.", + "parameters": [], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Authenticated PagerDuty user profile with contact and notification summaries." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pagerduty.Whoami", + "parameters": {}, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "warning", + "location": "description", + "position": "after", + "content": "\n Arcade supports Classic PagerDuty apps. Select **read-only** access; all tools\n in this MCP Server only read data. (Use read/write only if you add custom\n write tools.) See [PagerDuty OAuth\n functionality](https://developer.pagerduty.com/docs/oauth-functionality).\n" + }, + { + "type": "info", + "location": "description", + "position": "after", + "content": "\n Configure PagerDuty OAuth in the [PagerDuty auth\n provider](/references/auth-providers/pagerduty) before using these tools.\n" + }, + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "PagerDuty requires OAuth2. Configure the PagerDuty auth provider and request the scopes shown above per tool. Tokens are passed as Bearer auth:\n```\nAuthorization: Bearer \n```\nSee PagerDuty auth docs: [PagerDuty API Authentication](https://developer.pagerduty.com/docs/ZG9jOjExMDI5NTYz-authentication).", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:38:28.472Z", + "summary": "Arcade toolkit for PagerDuty enables seamless interaction with PagerDuty’s API, allowing developers to automate incident management and team coordination with LLMs.\n\n**Capabilities**\n- Retrieve and manage incident details, escalation policies, services, and teams.\n- Access user profiles and on-call schedules efficiently.\n- Filter incidents and log entries based on various criteria for targeted insights.\n- Automate the retrieval of team and service information to streamline operations.\n\n**OAuth**\n- **Provider**: PagerDuty \n- **Scopes**: None\n\n**Secrets**\n- No secret types are required for using this toolkit." +} diff --git a/data/toolkits/pagerdutyapi.json b/data/toolkits/pagerdutyapi.json new file mode 100644 index 000000000..18d9e83f1 --- /dev/null +++ b/data/toolkits/pagerdutyapi.json @@ -0,0 +1,23810 @@ +{ + "id": "PagerdutyApi", + "label": "PagerDuty API", + "version": "4.0.0", + "description": "Tools that enable LLMs to interact directly with the Pagerduty API.", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/pagerduty.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/pagerduty-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "pagerduty", + "allScopes": [] + }, + "tools": [ + { + "name": "AddCacheVariableToServiceEvent", + "qualifiedName": "PagerdutyApi.AddCacheVariableToServiceEvent", + "fullyQualifiedName": "PagerdutyApi.AddCacheVariableToServiceEvent@4.0.0", + "description": "Create a cache variable for a service event orchestration.\n\nUse this tool to create a cache variable within a service event orchestration on PagerDuty. Cache variables store event data that can be used in orchestration rules for conditions or actions. Requires OAuth with `services.write` scope.", + "parameters": [ + { + "name": "service_identifier", + "type": "string", + "required": true, + "description": "The ID of the service for which the cache variable is being created. This should be a string representing the unique identifier of the service.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createCacheVarOnServiceOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.AddCacheVariableToServiceEvent", + "parameters": { + "service_identifier": { + "value": "P123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddEscalationPolicyToTeam", + "qualifiedName": "PagerdutyApi.AddEscalationPolicyToTeam", + "fullyQualifiedName": "PagerdutyApi.AddEscalationPolicyToTeam@4.0.0", + "description": "Add an escalation policy to a team.\n\nThis tool adds an escalation policy to a specified team within an organization. It is useful for managing team response structures and assigning appropriate escalation policies to teams. Users should have 'teams.write' permissions to perform this update.", + "parameters": [ + { + "name": "escalation_policy_id", + "type": "string", + "required": true, + "description": "The ID of the escalation policy to be added to the team. Ensure it is a valid policy ID within your organization.", + "enum": null, + "inferrable": true + }, + { + "name": "team_resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team resource to update with an escalation policy.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTeamEscalationPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.AddEscalationPolicyToTeam", + "parameters": { + "escalation_policy_id": { + "value": "EP123456", + "type": "string", + "required": true + }, + "team_resource_id": { + "value": "TR987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddIncidentNote", + "qualifiedName": "PagerdutyApi.AddIncidentNote", + "fullyQualifiedName": "PagerdutyApi.AddIncidentNote@4.0.0", + "description": "Add a new note to a specific incident.\n\n Use this tool to attach a note to an existing incident when documenting updates or additional information is necessary. Ideal for tracking the progress of resolving an issue.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_id", + "type": "string", + "required": false, + "description": "The unique identifier of the incident to which the note will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email_address", + "type": "string", + "required": false, + "description": "The email address of a valid user associated with the account making the request. This must be an email registered with the PagerDuty account. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createIncidentNote'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.AddIncidentNote", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_id": { + "value": "PABC123", + "type": "string", + "required": false + }, + "user_email_address": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"note\":\"This is an update on the incident.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddServiceFieldOption", + "qualifiedName": "PagerdutyApi.AddServiceFieldOption", + "fullyQualifiedName": "PagerdutyApi.AddServiceFieldOption@4.0.0", + "description": "Create a new option for a custom field in PagerDuty services.\n\n This tool is used to create a new option for a specified custom field in the PagerDuty services. It should be called when you want to extend the available options for a specific field. Requires `custom_fields.write` OAuth scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "field_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the custom field where the new option will be added. This is required to specify which field you are modifying. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createServiceCustomFieldOption'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.AddServiceFieldOption", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "field_identifier": { + "value": "custom_field_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"option\":\"New Option Name\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddUserToTeam", + "qualifiedName": "PagerdutyApi.AddUserToTeam", + "fullyQualifiedName": "PagerdutyApi.AddUserToTeam@4.0.0", + "description": "Add a user to a specified team on PagerDuty.\n\nThis tool adds a user to a specified team using PagerDuty. It should be called when you need to integrate a user within a team structure in an organization. Note that attempting to add a user with a 'read_only_user' role will result in an error. OAuth scope 'teams.write' is required.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The ID of the team to which the user will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier for the user to be added to the team. This ID should match a user already present in the system.", + "enum": null, + "inferrable": true + }, + { + "name": "user_role_on_team", + "type": "string", + "required": false, + "description": "Specify the role of the user on the team. Allowed values are 'observer', 'responder', or 'manager'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTeamUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.AddUserToTeam", + "parameters": { + "team_id": { + "value": "P123456", + "type": "string", + "required": true + }, + "user_id": { + "value": "U789012", + "type": "string", + "required": true + }, + "user_role_on_team": { + "value": "responder", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AssignTagsToPagerdutyEntity", + "qualifiedName": "PagerdutyApi.AssignTagsToPagerdutyEntity", + "fullyQualifiedName": "PagerdutyApi.AssignTagsToPagerdutyEntity@4.0.0", + "description": "Assign tags to PagerDuty entities like policies, teams, or users.\n\n Assign or update tags for Escalation Policies, Teams, or Users in PagerDuty to facilitate filtering and organization. Use this tool to manage tags efficiently.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "entity_type", + "type": "string", + "required": false, + "description": "Specify the entity type to tag. Options: 'users', 'teams', 'escalation_policies'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the PagerDuty entity to assign tags to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createEntityTypeByIdChangeTags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.AssignTagsToPagerdutyEntity", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "entity_type": { + "value": "teams", + "type": "string", + "required": false + }, + "resource_id": { + "value": "PD12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"tags\":[\"critical\",\"support\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AssociateAutomationActionWithService", + "qualifiedName": "PagerdutyApi.AssociateAutomationActionWithService", + "fullyQualifiedName": "PagerdutyApi.AssociateAutomationActionWithService@4.0.0", + "description": "Associate an Automation Action with a service.\n\n This tool is used to associate a specified Automation Action with a service in PagerDuty. Call this tool when you need to link an action to a service for automation purposes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the resource to be associated with the service. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createAutomationActionServiceAssocation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.AssociateAutomationActionWithService", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "P123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action_id\":\"A123456\",\"service_id\":\"S123456\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AssociateAutomationActionWithTeam", + "qualifiedName": "PagerdutyApi.AssociateAutomationActionWithTeam", + "fullyQualifiedName": "PagerdutyApi.AssociateAutomationActionWithTeam@4.0.0", + "description": "Associate an Automation Action with a team.\n\n Use this tool to link a specific automation action to a designated team in PagerDuty. It should be called when there's a need to establish or update the association between an existing action and a team.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the resource to be associated with a team. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createAutomationActionTeamAssociation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.AssociateAutomationActionWithTeam", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action_id\":\"xyz789\",\"team_id\":\"team_001\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AssociateRunnerWithTeam", + "qualifiedName": "PagerdutyApi.AssociateRunnerWithTeam", + "fullyQualifiedName": "PagerdutyApi.AssociateRunnerWithTeam@4.0.0", + "description": "Associate a runner with a specified team.\n\n This tool allows you to associate a specific runner with a team in PagerDuty. Use it when you need to link automation actions runners to teams.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "Unique identifier for the resource to associate a runner with a team in PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createAutomationActionsRunnerTeamAssociation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.AssociateRunnerWithTeam", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "P123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"runner_id\":\"R987654\",\"team_id\":\"T321098\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AssociateServiceToIncidentWorkflowTrigger", + "qualifiedName": "PagerdutyApi.AssociateServiceToIncidentWorkflowTrigger", + "fullyQualifiedName": "PagerdutyApi.AssociateServiceToIncidentWorkflowTrigger@4.0.0", + "description": "Associate a service with an existing incident workflow trigger.\n\n This tool associates a specific service with an existing incident workflow trigger in PagerDuty. It requires OAuth permission `incident_workflows.write`. Use this tool when you need to link a service to a workflow trigger for better incident management.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the resource to associate with the incident workflow trigger. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'associateServiceToIncidentWorkflowTrigger'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.AssociateServiceToIncidentWorkflowTrigger", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"service_id\": \"service_xyz\", \"trigger_type\": \"manual\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckAbilityStatus", + "qualifiedName": "PagerdutyApi.CheckAbilityStatus", + "fullyQualifiedName": "PagerdutyApi.CheckAbilityStatus@4.0.0", + "description": "Check if your account has a specific ability.\n\nUse this tool to test whether your PagerDuty account has a specific ability or feature available. An ability can depend on factors like your pricing plan or account state, and this tool helps determine availability.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique ID of the resource or ability to check on your account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAbility'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CheckAbilityStatus", + "parameters": { + "resource_id": { + "value": "ABCDE12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ClearBusinessServicePriorityThresholds", + "qualifiedName": "PagerdutyApi.ClearBusinessServicePriorityThresholds", + "fullyQualifiedName": "PagerdutyApi.ClearBusinessServicePriorityThresholds@4.0.0", + "description": "Clear priority thresholds for business services.\n\nThis tool clears the priority thresholds for business services in the account, allowing any incident with a priority to impact them. It requires `services.write` OAuth scope.", + "parameters": [], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteBusinessServicePriorityThresholds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ClearBusinessServicePriorityThresholds", + "parameters": {}, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ConvertServiceEventRules", + "qualifiedName": "PagerdutyApi.ConvertServiceEventRules", + "fullyQualifiedName": "PagerdutyApi.ConvertServiceEventRules@4.0.0", + "description": "Convert service event rules to orchestration rules.\n\nUse this tool to convert a service's event rules into equivalent event orchestration rules. This process makes existing event rules read-only, with future updates needing orchestration rules. This tool is vital for migrating as event rules will soon be deprecated.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the service to be converted. This is required to specify which service's event rules need to be converted to orchestration rules.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'convertServiceEventRulesToEventOrchestration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ConvertServiceEventRules", + "parameters": { + "resource_id": { + "value": "srv-123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAlertGroupingSetting", + "qualifiedName": "PagerdutyApi.CreateAlertGroupingSetting", + "fullyQualifiedName": "PagerdutyApi.CreateAlertGroupingSetting@4.0.0", + "description": "Create a new Alert Grouping Setting in PagerDuty.\n\nThis tool allows the creation of new Alert Grouping Settings for one or multiple services within the PagerDuty platform. It is used to define configurations in the Alert Grouper service. Requires 'services.write' OAuth scope.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postAlertGroupingSettings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateAlertGroupingSetting", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"grouping_setting\": {\"type\": \"group_by_service\", \"description\": \"Group alerts by service\", \"enabled\": true}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAlertTemplate", + "qualifiedName": "PagerdutyApi.CreateAlertTemplate", + "fullyQualifiedName": "PagerdutyApi.CreateAlertTemplate@4.0.0", + "description": "Create a new alert or incident template.\n\nUse this tool to create a new template in PagerDuty, which can be used for alerts or incidents. Requires OAuth with `templates.write` scope.", + "parameters": [ + { + "name": "email_body_html", + "type": "string", + "required": false, + "description": "The HTML body content for the email message to be sent as part of the template.", + "enum": null, + "inferrable": true + }, + { + "name": "email_subject", + "type": "string", + "required": false, + "description": "The subject line for the email template, which will appear as the email's subject.", + "enum": null, + "inferrable": true + }, + { + "name": "short_message_template", + "type": "string", + "required": false, + "description": "The short message for the template, used in SMS, Push notifications, Slack, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "template_description", + "type": "string", + "required": false, + "description": "Provide a brief description of the template, outlining its purpose and use case.", + "enum": null, + "inferrable": true + }, + { + "name": "template_name", + "type": "string", + "required": false, + "description": "The name for the new template to be created in PagerDuty.", + "enum": null, + "inferrable": true + }, + { + "name": "template_type", + "type": "string", + "required": false, + "description": "The type of template. Currently, only 'status_update' is supported.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateAlertTemplate", + "parameters": { + "email_body_html": { + "value": "

This is an important alert regarding the system status. Please take immediate action.

", + "type": "string", + "required": false + }, + "email_subject": { + "value": "Urgent: System Alert Notification", + "type": "string", + "required": false + }, + "short_message_template": { + "value": "Alert: System issue detected. Check PagerDuty for details.", + "type": "string", + "required": false + }, + "template_description": { + "value": "Template for critical system alerts.", + "type": "string", + "required": false + }, + "template_name": { + "value": "Critical System Alert", + "type": "string", + "required": false + }, + "template_type": { + "value": "status_update", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAutomationAction", + "qualifiedName": "PagerdutyApi.CreateAutomationAction", + "fullyQualifiedName": "PagerdutyApi.CreateAutomationAction@4.0.0", + "description": "Create a script, process, or runbook automation action.\n\nThis tool creates an automation action such as a script, process automation, or runbook automation action in PagerDuty. Call this when you need to automate or manage workflows.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createAutomationAction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateAutomationAction", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Automate Incident Creation\",\"description\":\"This action automates the creation of incidents based on alerts.\",\"script\":\"#!/bin/bash\\necho 'Creating incident...'\\n\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateAutomationRunner", + "qualifiedName": "PagerdutyApi.CreateAutomationRunner", + "fullyQualifiedName": "PagerdutyApi.CreateAutomationRunner@4.0.0", + "description": "Create a Process or Runbook Automation runner.\n\nUse this tool to create a new Process Automation or Runbook Automation runner in PagerDuty.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createAutomationActionsRunner'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateAutomationRunner", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"MyAutomationRunner\", \"type\": \"Runbook\", \"description\": \"A sample runbook automation runner\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBusinessService", + "qualifiedName": "PagerdutyApi.CreateBusinessService", + "fullyQualifiedName": "PagerdutyApi.CreateBusinessService@4.0.0", + "description": "Create a new business service in PagerDuty.\n\nUse this tool to create a new business service, which represents capabilities spanning multiple technical services, possibly owned by various teams. Make sure not to exceed the account limit of 5,000 business services.", + "parameters": [ + { + "name": "business_service_description", + "type": "string", + "required": false, + "description": "Provide a description for the Business Service. This should clearly outline the service's purpose and scope.", + "enum": null, + "inferrable": true + }, + { + "name": "business_service_name", + "type": "string", + "required": false, + "description": "The name of the Business Service to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "business_service_owner", + "type": "string", + "required": false, + "description": "The owner or point of contact for the business service.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The unique identifier for the team associated with the business service.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createBusinessService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateBusinessService", + "parameters": { + "business_service_description": { + "value": "This service manages customer interactions and support.", + "type": "string", + "required": false + }, + "business_service_name": { + "value": "Customer Support Service", + "type": "string", + "required": false + }, + "business_service_owner": { + "value": "Alice Johnson", + "type": "string", + "required": false + }, + "team_id": { + "value": "team_12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCacheVariableEventOrchestration", + "qualifiedName": "PagerdutyApi.CreateCacheVariableEventOrchestration", + "fullyQualifiedName": "PagerdutyApi.CreateCacheVariableEventOrchestration@4.0.0", + "description": "Create a cache variable for global event orchestration rules.\n\nThis tool creates a cache variable within a global event orchestration on PagerDuty. Cache variables are useful for storing event data that can be utilized in orchestration rules for conditions or actions. Ideal for managing and automating event-driven processes.", + "parameters": [ + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The ID of an Event Orchestration for which the cache variable is to be created.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createCacheVarOnGlobalOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateCacheVariableEventOrchestration", + "parameters": { + "event_orchestration_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCustomFieldOption", + "qualifiedName": "PagerdutyApi.CreateCustomFieldOption", + "fullyQualifiedName": "PagerdutyApi.CreateCustomFieldOption@4.0.0", + "description": "Create a custom field option for incidents.\n\n This tool creates a field option for a custom field in incidents, allowing users to extend incident data with custom options. It supports additional context, customized filtering, search, and analytics.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_type_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the incident type for which the custom field option will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "field_id", + "type": "string", + "required": false, + "description": "The unique identifier for the custom field to which the option will be added. This should be a string that specifies the field within the incident type. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createIncidentTypeCustomFieldFieldOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateCustomFieldOption", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_type_id_or_name": { + "value": "network_issue", + "type": "string", + "required": false + }, + "field_id": { + "value": "severity_level", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"option\":\"Critical\",\"description\":\"Indicates a critical severity level\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateEscalationPolicy", + "qualifiedName": "PagerdutyApi.CreateEscalationPolicy", + "fullyQualifiedName": "PagerdutyApi.CreateEscalationPolicy@4.0.0", + "description": "Create a new escalation policy in PagerDuty.\n\nUse this tool to create a new escalation policy on PagerDuty. Escalation policies are used to determine which users are alerted and when. At least one escalation rule must be included. Requires OAuth scope: 'escalation_policies.write'.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "change_tracking_user_email", + "type": "string", + "required": false, + "description": "The optional email address of a user for change tracking. Must be associated with the account making the request. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createEscalationPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateEscalationPolicy", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "change_tracking_user_email": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"escalation_policy\": {\"name\": \"24/7 Support\", \"escalation_rules\": [{\"escalation_level\": 1, \"targets\": [{\"id\": \"PABC123\", \"type\": \"user\"}], \"minutes_before_escalation\": 10}]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateEventIntegration", + "qualifiedName": "PagerdutyApi.CreateEventIntegration", + "fullyQualifiedName": "PagerdutyApi.CreateEventIntegration@4.0.0", + "description": "Create an integration for event orchestration in PagerDuty.\n\n This tool creates an integration associated with a specified event orchestration in PagerDuty. Use this to obtain a Routing Key for sending events. Requires `event_orchestrations.write` permission.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "event_orchestration_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Event Orchestration within PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postOrchestrationIntegration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateEventIntegration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "event_orchestration_id": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"integration_type\": \"webhook\", \"name\": \"New Integration\", \"enabled\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateEventRule", + "qualifiedName": "PagerdutyApi.CreateEventRule", + "fullyQualifiedName": "PagerdutyApi.CreateEventRule@4.0.0", + "description": "Create a new event rule within a ruleset.\n\n This tool creates a new event rule in a specified ruleset in PagerDuty. It should be called when you need to set up routing actions based on event content. Note: functionalities related to rulesets and event rules will be deprecated soon. Consider migrating to Event Orchestration.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier for the resource (ruleset) in which the event rule will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createRulesetEventRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateEventRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Event Rule\",\"conditions\":{\"severity\":\"error\"},\"actions\":[{\"type\":\"notify\",\"target\":\"team@example.com\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGlobalEventOrchestration", + "qualifiedName": "PagerdutyApi.CreateGlobalEventOrchestration", + "fullyQualifiedName": "PagerdutyApi.CreateGlobalEventOrchestration@4.0.0", + "description": "Create a Global Event Orchestration in PagerDuty.\n\nThis tool allows you to create a Global Event Orchestration, defining Global Rules and Router Rules for event processing and routing based on event content.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postOrchestration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateGlobalEventOrchestration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Example Global Event Orchestration\",\"description\":\"This orchestration manages event routing based on predefined rules.\",\"global_rules\":[{\"type\":\"filter\",\"conditions\":[{\"field\":\"event.severity\",\"operator\":\"equals\",\"value\":\"critical\"}]}],\"router_rules\":[{\"type\":\"route\",\"destination\":\"team@example.com\",\"conditions\":[{\"field\":\"event.type\",\"operator\":\"equals\",\"value\":\"incident\"}]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateHandoffNotificationRule", + "qualifiedName": "PagerdutyApi.CreateHandoffNotificationRule", + "fullyQualifiedName": "PagerdutyApi.CreateHandoffNotificationRule@4.0.0", + "description": "Create a handoff notification rule for PagerDuty users.\n\n This tool allows you to create a new handoff notification rule for users in PagerDuty. It should be called when you need to set a notification rule for on-call handoff events for a specific user. Requires `users.write` OAuth scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier for the user or resource for which the handoff notification rule will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createUserHandoffNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateHandoffNotificationRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "user_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"notification_rule\":{\"type\":\"handoff\",\"criteria\":{\"time_zone\":\"UTC\",\"notification_time\":\"08:00\"}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateIncident", + "qualifiedName": "PagerdutyApi.CreateIncident", + "fullyQualifiedName": "PagerdutyApi.CreateIncident@4.0.0", + "description": "Create an incident in PagerDuty.\n\nUse this tool to create an incident in PagerDuty when there is a problem or issue that needs attention and resolution.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_email", + "type": "string", + "required": false, + "description": "The email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createIncident'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateIncident", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_email": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"incident\":{\"type\":\"incident\",\"title\":\"Database out of memory error\",\"service\":{\"id\":\"PABC123\",\"type\":\"service\"},\"urgency\":\"high\",\"body\":{\"type\":\"body\",\"details\":\"The database is experiencing out of memory errors, affecting application performance.\"}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateIncidentResponderRequest", + "qualifiedName": "PagerdutyApi.CreateIncidentResponderRequest", + "fullyQualifiedName": "PagerdutyApi.CreateIncidentResponderRequest@4.0.0", + "description": "Send a responder request for a specified incident.\n\n This tool allows you to send a new responder request for a specific incident that needs attention and resolution. It should be called whenever additional assistance is required to address an ongoing issue. Proper OAuth scope is required.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_id", + "type": "string", + "required": false, + "description": "The unique identifier for the incident requiring a responder request. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email", + "type": "string", + "required": false, + "description": "The email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createIncidentResponderRequest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateIncidentResponderRequest", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_id": { + "value": "inc-123456789", + "type": "string", + "required": false + }, + "user_email": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"type\": \"incident_responder_request\", \"message\": \"Please assist with this incident.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateIncidentType", + "qualifiedName": "PagerdutyApi.CreateIncidentType", + "fullyQualifiedName": "PagerdutyApi.CreateIncidentType@4.0.0", + "description": "Create a new incident type in PagerDuty to categorize incidents.\n\nUse this tool to create a new incident type in PagerDuty, allowing categorization by type, such as security incidents, major incidents, or fraud incidents. This helps organize and respond to different kinds of incidents effectively.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createIncidentType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateIncidentType", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"Fraud Incident\", \"description\": \"Used for categorizing incidents related to fraudulent activities.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateIncidentTypeCustomField", + "qualifiedName": "PagerdutyApi.CreateIncidentTypeCustomField", + "fullyQualifiedName": "PagerdutyApi.CreateIncidentTypeCustomField@4.0.0", + "description": "Create a custom field for a specific incident type.\n\n This tool creates a custom field for a specified incident type on PagerDuty, allowing users to extend incidents with their own data to enhance filtering, search, and analytics. It requires `custom_fields.write` OAuth scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_type_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the incident type for which the custom field is created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createIncidentTypeCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateIncidentTypeCustomField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_type_id_or_name": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Custom Field Name\", \"type\": \"string\", \"required\": false}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateIncidentWorkflow", + "qualifiedName": "PagerdutyApi.CreateIncidentWorkflow", + "fullyQualifiedName": "PagerdutyApi.CreateIncidentWorkflow@4.0.0", + "description": "Create a new incident workflow to automate actions.\n\nThis tool creates a new incident workflow, consisting of steps and triggers to execute automated actions for an incident.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postIncidentWorkflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateIncidentWorkflow", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"New Incident Workflow\",\"description\":\"Workflow for automating incident responses\",\"steps\":[{\"type\":\"notify\",\"destination\":\"email\",\"message\":\"Incident created!\"},{\"type\":\"resolve\",\"conditions\":[{\"type\":\"status\",\"value\":\"resolved\"}]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateIncidentWorkflowTrigger", + "qualifiedName": "PagerdutyApi.CreateIncidentWorkflowTrigger", + "fullyQualifiedName": "PagerdutyApi.CreateIncidentWorkflowTrigger@4.0.0", + "description": "Initiate a new PagerDuty incident workflow trigger.\n\nUse this tool to start a new incident workflow trigger in PagerDuty. It requires appropriate OAuth permissions (`incident_workflows.write`).\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createIncidentWorkflowTrigger'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateIncidentWorkflowTrigger", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"incident\":{\"type\":\"incident\",\"title\":\"Example Incident\",\"description\":\"This is a test incident for demonstration purposes.\",\"severity\":\"critical\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateMaintenanceWindow", + "qualifiedName": "PagerdutyApi.CreateMaintenanceWindow", + "fullyQualifiedName": "PagerdutyApi.CreateMaintenanceWindow@4.0.0", + "description": "Create a maintenance window for specified services.\n\nThis tool is used to create a maintenance window during which specified services are temporarily disabled to prevent new incidents from being created. Useful when upgrading systems or performing maintenance. Requires OAuth permission: `services.write`.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_email", + "type": "string", + "required": false, + "description": "The email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createMaintenanceWindow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateMaintenanceWindow", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_email": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"start_time\":\"2023-10-01T00:00:00Z\",\"end_time\":\"2023-10-02T00:00:00Z\",\"service_ids\":[\"abc123\",\"def456\"],\"description\":\"Scheduled maintenance for system upgrades.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateNewService", + "qualifiedName": "PagerdutyApi.CreateNewService", + "fullyQualifiedName": "PagerdutyApi.CreateNewService@4.0.0", + "description": "Create a new service for incident management.\n\nUse this tool to create a new service within an account for incident management, representing an application, component, or team. Ensure the status is set to 'active' during creation. This tool is essential for managing services and handling incidents efficiently.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateNewService", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"New Service\",\"description\":\"Service for application incidents\",\"status\":\"active\",\"type\":\"application\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateNewTeam", + "qualifiedName": "PagerdutyApi.CreateNewTeam", + "fullyQualifiedName": "PagerdutyApi.CreateNewTeam@4.0.0", + "description": "Create a new team with users and escalation policies.\n\nThis tool should be called to create a new team within an organization in PagerDuty. A team includes a collection of users and escalation policies. Requires proper OAuth scope for execution.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateNewTeam", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"team\": {\"name\": \"New Dev Team\", \"users\": [{\"user_id\": \"PABC1234\"}], \"escalation_policy_id\": \"POLICY5678\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOauthClient", + "qualifiedName": "PagerdutyApi.CreateOauthClient", + "fullyQualifiedName": "PagerdutyApi.CreateOauthClient@4.0.0", + "description": "Create a new OAuth client for webhook subscriptions.\n\nCreates an OAuth client for webhook subscriptions, with validation of client credentials. Requires admin or owner permissions and allows up to 10 clients per account.", + "parameters": [ + { + "name": "oauth_client_id", + "type": "string", + "required": true, + "description": "The OAuth client ID provided by the OAuth server.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_client_name", + "type": "string", + "required": true, + "description": "A human-readable name for the OAuth client. It is used to identify the client in a user-friendly manner.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_client_secret", + "type": "string", + "required": true, + "description": "The client secret provided by the OAuth server for the OAuth client.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_grant_type", + "type": "string", + "required": true, + "description": "The OAuth grant type. Currently, only 'client_credentials' is supported.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_token_endpoint_url", + "type": "string", + "required": true, + "description": "The URL for the OAuth token endpoint required to obtain an access token.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_scopes_requested", + "type": "string", + "required": false, + "description": "The OAuth scopes requested for this client.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createOauthClient'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateOauthClient", + "parameters": { + "oauth_client_id": { + "value": "client_id_123456", + "type": "string", + "required": true + }, + "oauth_client_name": { + "value": "MyWebhookClient", + "type": "string", + "required": true + }, + "oauth_client_secret": { + "value": "secret_abcdef123456", + "type": "string", + "required": true + }, + "oauth_grant_type": { + "value": "client_credentials", + "type": "string", + "required": true + }, + "oauth_token_endpoint_url": { + "value": "https://api.example.com/oauth/token", + "type": "string", + "required": true + }, + "oauth_scopes_requested": { + "value": "read,write", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOnCallSchedule", + "qualifiedName": "PagerdutyApi.CreateOnCallSchedule", + "fullyQualifiedName": "PagerdutyApi.CreateOnCallSchedule@4.0.0", + "description": "Create a new on-call schedule for users.\n\n This tool is used to create a new on-call schedule, specifying the time periods when users are on call. Use it when you need to establish or update on-call rotations for team members. Requires appropriate permissions (`schedules.write`).\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "allow_overflow", + "type": "boolean", + "required": false, + "description": "Set to true to allow on-call schedule entries to extend beyond date range bounds. Defaults to false. This results in longer schedule entries that encompass the full day if applicable. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createSchedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateOnCallSchedule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "allow_overflow": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"schedule\": {\"name\": \"Night Shift\", \"time_zone\": \"UTC\", \"rotation\": [{\"users\": [{\"id\": \"PABC123\"}], \"start\": \"2023-10-01T20:00:00Z\", \"end\": \"2023-10-02T08:00:00Z\"}]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePagerdutyUser", + "qualifiedName": "PagerdutyApi.CreatePagerdutyUser", + "fullyQualifiedName": "PagerdutyApi.CreatePagerdutyUser@4.0.0", + "description": "Create a new user in PagerDuty for account interaction.\n\nUse this tool to create a new user in a PagerDuty account. Users can interact with incidents and other data. Requires appropriate OAuth permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "requester_email", + "type": "string", + "required": false, + "description": "The email of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreatePagerdutyUser", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "requester_email": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"user\":{\"type\":\"user\",\"email\":\"newuser@example.com\",\"first_name\":\"John\",\"last_name\":\"Doe\",\"role\":\"user\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateRuleset", + "qualifiedName": "PagerdutyApi.CreateRuleset", + "fullyQualifiedName": "PagerdutyApi.CreateRuleset@4.0.0", + "description": "Create a new ruleset to manage event routing.\n\nUse this tool to create a new ruleset for routing events and defining event rules. Note: Rulesets and Event Rules will soon reach end-of-life; consider migrating to Event Orchestration for enhanced features.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createRuleset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateRuleset", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"New Alerts Ruleset\",\"description\":\"This ruleset is used for alert management.\",\"rules\":[{\"conditions\":{\"type\":\"event\",\"severity\":\"high\"},\"action\":\"notify\"},{\"conditions\":{\"type\":\"event\",\"severity\":\"low\"},\"action\":\"ignore\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateScheduleOverride", + "qualifiedName": "PagerdutyApi.CreateScheduleOverride", + "fullyQualifiedName": "PagerdutyApi.CreateScheduleOverride@4.0.0", + "description": "Create schedule overrides for specific users and time ranges.\n\n This tool creates one or more schedule overrides for specific users covering specified time periods. Overrides are used to manage on-call schedules. It should be called when you need to modify or assign on-call duties temporarily, ensuring the latest override has priority if overlapping occurs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier for the schedule resource to which the override will be applied. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createScheduleOverride'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateScheduleOverride", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "ABC123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"user_ids\":[\"USER_1\",\"USER_2\"],\"start\":\"2023-11-01T09:00:00Z\",\"end\":\"2023-11-01T17:00:00Z\",\"reason\":\"Temporary coverage\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateServiceCustomField", + "qualifiedName": "PagerdutyApi.CreateServiceCustomField", + "fullyQualifiedName": "PagerdutyApi.CreateServiceCustomField@4.0.0", + "description": "Create a new custom field for services.\n\nThis tool is used to create a new custom field for services in PagerDuty, including field options if provided. It is useful when you need to add custom metadata or specifications to a service. Requires custom_fields.write permission.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createServiceCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateServiceCustomField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"custom_field\": {\"name\": \"Environment\", \"type\": \"string\", \"options\": [\"Production\", \"Staging\", \"Development\"]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateServiceDependency", + "qualifiedName": "PagerdutyApi.CreateServiceDependency", + "fullyQualifiedName": "PagerdutyApi.CreateServiceDependency@4.0.0", + "description": "Creates dependencies between two services in PagerDuty.\n\nUse this tool to establish new relationships between business or technical services on PagerDuty. It manages dependencies with constraints on the number of relations and depth. Useful for modeling complex service architectures across teams.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createServiceDependency'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateServiceDependency", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"dependent_service_id\":\"P12345\",\"service_id\":\"S67890\",\"type\":\"service_dependency\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateServiceEventRule", + "qualifiedName": "PagerdutyApi.CreateServiceEventRule", + "fullyQualifiedName": "PagerdutyApi.CreateServiceEventRule@4.0.0", + "description": "Create a new Event Rule on a Service in PagerDuty.\n\n This tool creates a new Event Rule for a specified service in PagerDuty. It should be called when you need to set up or manage event rules for monitoring and alerting within a service. Note that rulesets and event rules will be deprecated, so consider migrating to Event Orchestration.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "service_resource_id", + "type": "string", + "required": false, + "description": "The unique ID of the service resource where the event rule will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createServiceEventRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateServiceEventRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "service_resource_id": { + "value": "PD123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"event_rule\": {\"name\": \"High CPU Usage Alert\", \"conditions\": [{\"type\": \"metric\", \"operator\": \"greater_than\", \"threshold\": 80}]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateServiceExtension", + "qualifiedName": "PagerdutyApi.CreateServiceExtension", + "fullyQualifiedName": "PagerdutyApi.CreateServiceExtension@4.0.0", + "description": "Create a new extension for a service in PagerDuty.\n\nThis tool is used to create a new extension in PagerDuty, representing an Extension Schema object attached to a service. It should be called when you need to add or register a new extension to enhance a service's functionality. Requires scoped OAuth: `extensions.write`.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createExtension'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateServiceExtension", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"extension_schema\":\"example_schema\",\"service\":\"example_service_id\",\"config\":{\"key\":\"value\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateServiceIntegration", + "qualifiedName": "PagerdutyApi.CreateServiceIntegration", + "fullyQualifiedName": "PagerdutyApi.CreateServiceIntegration@4.0.0", + "description": "Create a new integration for a specific service.\n\n Use this tool to create a new integration for a service, which can represent an application, component, or team. This action is relevant when you need to establish connections that allow incident management for that service.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The ID of the resource to create an integration for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createServiceIntegration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateServiceIntegration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"type\":\"service_integration\",\"name\":\"New Integration\",\"description\":\"Integration for monitoring service\",\"type\":\"webhook\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateStatusPagePost", + "qualifiedName": "PagerdutyApi.CreateStatusPagePost", + "fullyQualifiedName": "PagerdutyApi.CreateStatusPagePost@4.0.0", + "description": "Create a status page post using a specific page ID.\n\n This tool is used to create a post on a status page identified by its ID. Useful for updating status pages with the latest information. Requires `status_pages.write` permission.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "status_page_id", + "type": "string", + "required": false, + "description": "The unique identifier for the status page to which the post will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createStatusPagePost'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateStatusPagePost", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "status_page_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Service Disruption\",\"body\":\"We are experiencing connectivity issues.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateStatusPagePostmortem", + "qualifiedName": "PagerdutyApi.CreateStatusPagePostmortem", + "fullyQualifiedName": "PagerdutyApi.CreateStatusPagePostmortem@4.0.0", + "description": "Create a postmortem for a status page post.\n\n Use this tool to generate a detailed postmortem for a specific status page post using its post ID. Requires appropriate access permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique ID of the resource for which the postmortem is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_post_id", + "type": "string", + "required": false, + "description": "The unique identifier of the status page post for which the postmortem is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createStatusPagePostmortem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateStatusPagePostmortem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "status_page_post_id": { + "value": "zxy789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"summary\": \"Outage occurred due to server failure.\", \"detailed_analysis\": \"The main server crashed due to overload during peak hours.\", \"action_items\": [\"Increase server capacity\", \"Improve monitoring alerts\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateStatusPagePostUpdate", + "qualifiedName": "PagerdutyApi.CreateStatusPagePostUpdate", + "fullyQualifiedName": "PagerdutyApi.CreateStatusPagePostUpdate@4.0.0", + "description": "Create a post update for a specific status page post.\n\n This tool creates an update for a post on a status page by providing the post ID. Use it to communicate changes or progress in ongoing incidents or updates.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the resource you are targeting. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_post_id", + "type": "string", + "required": false, + "description": "The ID of the Status Page Post for which the update is created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createStatusPagePostUpdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateStatusPagePostUpdate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "status_page_post_id": { + "value": "post789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"message\": \"Update on the incident status.\", \"status\": \"resolved\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateStatusPageSubscription", + "qualifiedName": "PagerdutyApi.CreateStatusPageSubscription", + "fullyQualifiedName": "PagerdutyApi.CreateStatusPageSubscription@4.0.0", + "description": "Subscribe to a status page by ID.\n\n Use this tool to create a subscription for a specific status page using its ID. Requires appropriate OAuth permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "status_page_id", + "type": "string", + "required": false, + "description": "The ID of the status page to subscribe to. This string is used to identify the specific page. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createStatusPageSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateStatusPageSubscription", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "status_page_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\": \"user@example.com\", \"subscriptionType\": \"daily\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTag", + "qualifiedName": "PagerdutyApi.CreateTag", + "fullyQualifiedName": "PagerdutyApi.CreateTag@4.0.0", + "description": "Create a tag for filtering in PagerDuty.\n\nThis tool is used to create a new tag in PagerDuty. Tags can be applied to escalation policies, teams, or users to facilitate filtering. Use this tool when you need to organize or categorize these entities by tags.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateTag", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"tag\": \"Critical Incidents\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTeamNotificationSubscriptions", + "qualifiedName": "PagerdutyApi.CreateTeamNotificationSubscriptions", + "fullyQualifiedName": "PagerdutyApi.CreateTeamNotificationSubscriptions@4.0.0", + "description": "Create notification subscriptions for a specified team.\n\n Use this tool to create new notification subscriptions for a given team by specifying the team's ID. Requires appropriate OAuth permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The ID of the team for which you want to create notification subscriptions. This is a required identifier. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTeamNotificationSubscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateTeamNotificationSubscriptions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_id": { + "value": "T123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"notification_method\":\"email\",\"address\":\"team@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateUserContactMethod", + "qualifiedName": "PagerdutyApi.CreateUserContactMethod", + "fullyQualifiedName": "PagerdutyApi.CreateUserContactMethod@4.0.0", + "description": "Create a new contact method for a PagerDuty user.\n\n This tool creates a new contact method for a specified user in PagerDuty. It's useful for updating user profiles with additional ways to be contacted regarding incidents and other important account interactions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": false, + "description": "The unique identifier of the user for whom the contact method is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createUserContactMethod'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateUserContactMethod", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_id": { + "value": "P123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"contact_method\":{\"type\":\"email\",\"address\":\"user@example.com\",\"label\":\"Work\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateUserNotificationRule", + "qualifiedName": "PagerdutyApi.CreateUserNotificationRule", + "fullyQualifiedName": "PagerdutyApi.CreateUserNotificationRule@4.0.0", + "description": "Create a new user notification rule in PagerDuty.\n\n Use this tool to create a new notification rule for a user in a PagerDuty account, allowing interaction with incidents and data. Requires OAuth permission: `users:contact_methods.write`.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_resource_id", + "type": "string", + "required": false, + "description": "The unique ID of the user resource for which the notification rule is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createUserNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateUserNotificationRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_resource_id": { + "value": "P123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"notification_method\":{\"type\":\"email\",\"address\":\"user@example.com\"},\"type\":\"rule\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateUserNotificationSubscriptions", + "qualifiedName": "PagerdutyApi.CreateUserNotificationSubscriptions", + "fullyQualifiedName": "PagerdutyApi.CreateUserNotificationSubscriptions@4.0.0", + "description": "Create new notification subscriptions for a user.\n\n This tool is used to create new notification subscriptions for a specified user on PagerDuty. It requires scoped OAuth with the `subscribers.write` permission.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the resource for which to create notification subscriptions. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createUserNotificationSubscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateUserNotificationSubscriptions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "P123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"type\": \"user_notification_subscription\", \"attributes\": {\"dependency\": \"email\", \"address\": \"user@example.com\", \"code\": \"SMS\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateUserStatusUpdateNotificationRule", + "qualifiedName": "PagerdutyApi.CreateUserStatusUpdateNotificationRule", + "fullyQualifiedName": "PagerdutyApi.CreateUserStatusUpdateNotificationRule@4.0.0", + "description": "Create a new status update notification rule for a user.\n\n This tool allows you to create a new status update notification rule for a user in a PagerDuty account. It should be called when you need to set up or modify how a user is notified about status updates. Requires 'users.write' permission.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": false, + "description": "The unique identifier of the user resource for creating the notification rule. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createUserStatusUpdateNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateUserStatusUpdateNotificationRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_id": { + "value": "PABC12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"notification_rule\":{\"type\":\"email\",\"address\":\"user@example.com\",\"status\":\"active\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateWebhookSubscription", + "qualifiedName": "PagerdutyApi.CreateWebhookSubscription", + "fullyQualifiedName": "PagerdutyApi.CreateWebhookSubscription@4.0.0", + "description": "Create a new webhook subscription in PagerDuty.\n\nThis tool is used to create a new webhook subscription on PagerDuty. It should be invoked when you need to configure or integrate with v3 webhooks. Requires proper OAuth permissions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createWebhookSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateWebhookSubscription", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"Example Webhook Subscription\",\"type\":\"webhook\",\"version\":\"v3\",\"url\":\"https://example.com/webhook\",\"events\":[\"incident.triggered\",\"incident.resolved\"],\"filter\":{\"service_ids\":[\"PABC123\"]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateWorkflowIntegrationConnection", + "qualifiedName": "PagerdutyApi.CreateWorkflowIntegrationConnection", + "fullyQualifiedName": "PagerdutyApi.CreateWorkflowIntegrationConnection@4.0.0", + "description": "Create a new workflow integration connection in PagerDuty.\n\nUse this tool to create a new connection for a specified workflow integration in PagerDuty. Requires appropriate OAuth scope.", + "parameters": [ + { + "name": "workflow_integration_id", + "type": "string", + "required": true, + "description": "The ID of the Workflow Integration to create a connection for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createWorkflowIntegrationConnection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.CreateWorkflowIntegrationConnection", + "parameters": { + "workflow_integration_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAlertGroupingSetting", + "qualifiedName": "PagerdutyApi.DeleteAlertGroupingSetting", + "fullyQualifiedName": "PagerdutyApi.DeleteAlertGroupingSetting@4.0.0", + "description": "Delete an existing alert grouping setting.\n\nUse this tool to delete a specific alert grouping setting in the PagerDuty service. This action is utilized when you need to remove configurations used during the grouping of alerts. Requires appropriate OAuth scope.", + "parameters": [ + { + "name": "alert_grouping_setting_id", + "type": "string", + "required": true, + "description": "The ID of the alert grouping setting to be deleted. This identifies the specific resource in PagerDuty.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAlertGroupingSetting'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteAlertGroupingSetting", + "parameters": { + "alert_grouping_setting_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAutomationAction", + "qualifiedName": "PagerdutyApi.DeleteAutomationAction", + "fullyQualifiedName": "PagerdutyApi.DeleteAutomationAction@4.0.0", + "description": "Delete an automation action by ID.\n\nThis tool deletes a specified automation action in PagerDuty using its unique ID. Use when you need to remove an existing automation action from the system.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique ID of the automation action to be deleted. Required for identifying the specific resource.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAutomationAction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteAutomationAction", + "parameters": { + "resource_id": { + "value": "PABC123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAutomationActionRunner", + "qualifiedName": "PagerdutyApi.DeleteAutomationActionRunner", + "fullyQualifiedName": "PagerdutyApi.DeleteAutomationActionRunner@4.0.0", + "description": "Delete an Automation Action runner by ID.\n\nUse this tool to delete an existing Automation Action runner in PagerDuty by providing its ID. It should be called when you need to remove a runner and no longer require it for automation tasks.", + "parameters": [ + { + "name": "runner_id", + "type": "string", + "required": true, + "description": "The unique ID of the Automation Action runner to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAutomationActionsRunner'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteAutomationActionRunner", + "parameters": { + "runner_id": { + "value": "PABC123XYZ", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBusinessService", + "qualifiedName": "PagerdutyApi.DeleteBusinessService", + "fullyQualifiedName": "PagerdutyApi.DeleteBusinessService@4.0.0", + "description": "Delete an existing Business Service in PagerDuty.\n\nThis tool deletes a specified Business Service in PagerDuty. Once deleted, the service will not be accessible from the web UI, and new incidents cannot be created for it. Call this tool when you need to remove a business service that spans technical services and is owned by multiple teams.", + "parameters": [ + { + "name": "business_service_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Business Service to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteBusinessService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteBusinessService", + "parameters": { + "business_service_id": { + "value": "BS123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCacheVariableGlobalEvent", + "qualifiedName": "PagerdutyApi.DeleteCacheVariableGlobalEvent", + "fullyQualifiedName": "PagerdutyApi.DeleteCacheVariableGlobalEvent@4.0.0", + "description": "Delete a cache variable for a global event orchestration.\n\nThis tool deletes a cache variable from a specified global event orchestration. Cache variables store event data, which can be used in orchestration rules. Use this tool when you need to remove such variables from global event configurations.", + "parameters": [ + { + "name": "cache_variable_id", + "type": "string", + "required": true, + "description": "The unique identifier of the cache variable to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The unique identifier for the event orchestration from which the cache variable will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteCacheVarOnGlobalOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteCacheVariableGlobalEvent", + "parameters": { + "cache_variable_id": { + "value": "cv-123456", + "type": "string", + "required": true + }, + "event_orchestration_id": { + "value": "eo-abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCustomFieldOption", + "qualifiedName": "PagerdutyApi.DeleteCustomFieldOption", + "fullyQualifiedName": "PagerdutyApi.DeleteCustomFieldOption@4.0.0", + "description": "Delete a custom field option for an incident type.\n\nUse this tool to delete a specific field option from a custom field in PagerDuty. This is useful for managing and organizing custom fields associated with different incident types. Requires appropriate OAuth scope.", + "parameters": [ + { + "name": "field_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the custom field from which the option will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "field_option_id", + "type": "string", + "required": true, + "description": "The ID of the field option to be deleted. This is required for identifying which option to remove from the custom field.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_type_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the incident type for which the custom field option should be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteIncidentTypeCustomFieldFieldOption'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteCustomFieldOption", + "parameters": { + "field_identifier": { + "value": "custom_field_123", + "type": "string", + "required": true + }, + "field_option_id": { + "value": "option_456", + "type": "string", + "required": true + }, + "incident_type_identifier": { + "value": "incident_type_789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteEscalationPolicy", + "qualifiedName": "PagerdutyApi.DeleteEscalationPolicy", + "fullyQualifiedName": "PagerdutyApi.DeleteEscalationPolicy@4.0.0", + "description": "Delete an existing escalation policy from PagerDuty.\n\nUse this tool when you need to delete an existing escalation policy that is not in use by any services. Escalation policies define alert sequences for users. Ensure you have the necessary permissions (`escalation_policies.write`).", + "parameters": [ + { + "name": "escalation_policy_id", + "type": "string", + "required": true, + "description": "The ID of the escalation policy to be deleted. Ensure the policy is not in use by any services and that you have the required permissions.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEscalationPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteEscalationPolicy", + "parameters": { + "escalation_policy_id": { + "value": "PABC12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteEventOrchestration", + "qualifiedName": "PagerdutyApi.DeleteEventOrchestration", + "fullyQualifiedName": "PagerdutyApi.DeleteEventOrchestration@4.0.0", + "description": "Delete a Global Event Orchestration on PagerDuty.\n\nThis tool deletes a specified Global Event Orchestration, preventing further event ingestion using the orchestration's routing key. Use when you need to remove an orchestration from PagerDuty.", + "parameters": [ + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The ID of the Global Event Orchestration to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteOrchestration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteEventOrchestration", + "parameters": { + "event_orchestration_id": { + "value": "EO123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteEventRule", + "qualifiedName": "PagerdutyApi.DeleteEventRule", + "fullyQualifiedName": "PagerdutyApi.DeleteEventRule@4.0.0", + "description": "Delete an event rule from a specified ruleset.\n\nUse this tool to delete an event rule within a specified ruleset on PagerDuty. This function should be called when you need to remove a rule that defines specific actions for routing events. Note that rulesets and event rules will be phased out soon, and migration to Event Orchestration is recommended.", + "parameters": [ + { + "name": "event_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Event Rule to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the resource (ruleset) to delete the event rule from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteRulesetEventRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteEventRule", + "parameters": { + "event_rule_id": { + "value": "ER123456", + "type": "string", + "required": true + }, + "resource_id": { + "value": "RS987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteExtension", + "qualifiedName": "PagerdutyApi.DeleteExtension", + "fullyQualifiedName": "PagerdutyApi.DeleteExtension@4.0.0", + "description": "Delete an existing extension in PagerDuty.\n\nThis tool deletes an existing extension in PagerDuty, making it inaccessible from the web UI and preventing new incidents from being created for this extension.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the extension to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteExtension'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteExtension", + "parameters": { + "resource_id": { + "value": "P123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteExternalDataCacheVariable", + "qualifiedName": "PagerdutyApi.DeleteExternalDataCacheVariable", + "fullyQualifiedName": "PagerdutyApi.DeleteExternalDataCacheVariable@4.0.0", + "description": "Deletes external data cache variable for event orchestration.\n\nUse this tool to delete data stored in an external data type cache variable within a global event orchestration. This action affects the cache variables used in conditions or actions in event orchestration rules. Requires appropriate OAuth permissions.", + "parameters": [ + { + "name": "cache_variable_id", + "type": "string", + "required": true, + "description": "The ID of the cache variable to delete within the event orchestration.", + "enum": null, + "inferrable": true + }, + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Event Orchestration to target for cache variable deletion.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteExternalDataCacheVarDataOnGlobalOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteExternalDataCacheVariable", + "parameters": { + "cache_variable_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "event_orchestration_id": { + "value": "event-orch-001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteIncidentTypeCustomField", + "qualifiedName": "PagerdutyApi.DeleteIncidentTypeCustomField", + "fullyQualifiedName": "PagerdutyApi.DeleteIncidentTypeCustomField@4.0.0", + "description": "Delete a custom field for a specified incident type.\n\nUse this tool to delete a custom field from a specific incident type, enhancing filtering, search, or analytics flexibility. Ensure you have the necessary OAuth scope: `custom_fields.write`.", + "parameters": [ + { + "name": "field_id", + "type": "string", + "required": true, + "description": "The unique identifier of the custom field to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_type_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the specific incident type to delete a custom field from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteIncidentTypeCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteIncidentTypeCustomField", + "parameters": { + "field_id": { + "value": "custom_field_12345", + "type": "string", + "required": true + }, + "incident_type_id_or_name": { + "value": "incident_type_001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteIncidentWorkflow", + "qualifiedName": "PagerdutyApi.DeleteIncidentWorkflow", + "fullyQualifiedName": "PagerdutyApi.DeleteIncidentWorkflow@4.0.0", + "description": "Deletes an existing incident workflow in PagerDuty.\n\nUse this tool to delete an incident workflow from PagerDuty. An incident workflow is a sequence of steps and triggers for automating actions for a specific incident. This tool requires scoped OAuth with `incident_workflows.write`.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the incident workflow to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteIncidentWorkflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteIncidentWorkflow", + "parameters": { + "resource_id": { + "value": "PABC123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteIncidentWorkflowTrigger", + "qualifiedName": "PagerdutyApi.DeleteIncidentWorkflowTrigger", + "fullyQualifiedName": "PagerdutyApi.DeleteIncidentWorkflowTrigger@4.0.0", + "description": "Deletes an existing incident workflow trigger using its ID.\n\nUse this tool to delete an existing incident workflow trigger by specifying its ID. Requires authorized access for deletion.", + "parameters": [ + { + "name": "incident_workflow_trigger_id", + "type": "string", + "required": true, + "description": "The unique identifier of the incident workflow trigger to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteIncidentWorkflowTrigger'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteIncidentWorkflowTrigger", + "parameters": { + "incident_workflow_trigger_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteIntegrationRoutingKey", + "qualifiedName": "PagerdutyApi.DeleteIntegrationRoutingKey", + "fullyQualifiedName": "PagerdutyApi.DeleteIntegrationRoutingKey@4.0.0", + "description": "Delete an integration and its associated routing key.\n\nUse this tool to delete an integration and its associated routing key in PagerDuty. Once deleted, all future events sent using the routing key will be dropped. Requires specific OAuth permissions.", + "parameters": [ + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The identifier for the Event Orchestration to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "integration_id", + "type": "string", + "required": true, + "description": "The unique ID of the integration to be deleted. This is necessary to identify which integration and its routing key should be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteOrchestrationIntegration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteIntegrationRoutingKey", + "parameters": { + "event_orchestration_id": { + "value": "EO123456", + "type": "string", + "required": true + }, + "integration_id": { + "value": "INT789012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMaintenanceWindow", + "qualifiedName": "PagerdutyApi.DeleteMaintenanceWindow", + "fullyQualifiedName": "PagerdutyApi.DeleteMaintenanceWindow@4.0.0", + "description": "Delete or end a maintenance window in PagerDuty.\n\nUse this tool to delete an existing maintenance window if it is scheduled for the future, or to end it if it is currently ongoing in PagerDuty. It cannot delete a maintenance window that has already ended.", + "parameters": [ + { + "name": "maintenance_window_id", + "type": "string", + "required": true, + "description": "The unique identifier for the maintenance window to delete or end.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteMaintenanceWindow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteMaintenanceWindow", + "parameters": { + "maintenance_window_id": { + "value": "MD123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteOauthClient", + "qualifiedName": "PagerdutyApi.DeleteOauthClient", + "fullyQualifiedName": "PagerdutyApi.DeleteOauthClient@4.0.0", + "description": "Delete an OAuth client from webhook subscriptions.\n\nThis tool deletes an OAuth client and removes its association from any webhook subscriptions using it. It requires admin or owner role permissions to execute.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the OAuth client to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteOauthClient'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteOauthClient", + "parameters": { + "resource_id": { + "value": "oauth-client-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteOauthDelegations", + "qualifiedName": "PagerdutyApi.DeleteOauthDelegations", + "fullyQualifiedName": "PagerdutyApi.DeleteOauthDelegations@4.0.0", + "description": "Revoke OAuth app access for a user or account.\n\nUse this tool to delete all OAuth delegations, revoking app access for specified users or accounts on PagerDuty. This action requires reauthorization to regain access.", + "parameters": [ + { + "name": "delegation_type", + "type": "string", + "required": true, + "description": "Specify the OAuth delegation type(s) to target: 'mobile' for mobile app or 'web' for web app sign-out. Multiple types can be separated by commas, for example, 'mobile,web'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the user whose OAuth delegations will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteOauthDelegations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteOauthDelegations", + "parameters": { + "delegation_type": { + "value": "mobile,web", + "type": "string", + "required": true + }, + "user_identifier": { + "value": "user_123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeletePagerdutySessionConfigurations", + "qualifiedName": "PagerdutyApi.DeletePagerdutySessionConfigurations", + "fullyQualifiedName": "PagerdutyApi.DeletePagerdutySessionConfigurations@4.0.0", + "description": "Delete session configurations for a PagerDuty account.\n\nThis tool deletes specific session configurations ('mobile' or 'web') for a PagerDuty account. It should be called when there's a need to remove these configurations. The tool requires the 'session-configurations-early-access' header for early access and scoped OAuth with `session_configurations.write` permissions.", + "parameters": [ + { + "name": "session_configuration_type", + "type": "string", + "required": true, + "description": "Specify 'mobile', 'web', or a comma-separated list of both to define which session configurations to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteSessionConfigurations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeletePagerdutySessionConfigurations", + "parameters": { + "session_configuration_type": { + "value": "mobile,web", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeletePostmortem", + "qualifiedName": "PagerdutyApi.DeletePostmortem", + "fullyQualifiedName": "PagerdutyApi.DeletePostmortem@4.0.0", + "description": "Deletes a postmortem from a status page post by ID.\n\nUse this tool to remove a postmortem linked to a specific status page post using the post's ID. This operation requires scoped OAuth with `status_pages.write` permission.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the resource to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_post_id", + "type": "string", + "required": true, + "description": "The unique identifier for the status page post whose postmortem you want to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteStatusPagePostmortem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeletePostmortem", + "parameters": { + "resource_id": { + "value": "12345", + "type": "string", + "required": true + }, + "status_page_post_id": { + "value": "98765", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteRuleset", + "qualifiedName": "PagerdutyApi.DeleteRuleset", + "fullyQualifiedName": "PagerdutyApi.DeleteRuleset@4.0.0", + "description": "Delete an existing ruleset in PagerDuty.\n\nUse this tool to delete a specified ruleset in PagerDuty. Note that rulesets and event rules are nearing end-of-life, and it's recommended to migrate to Event Orchestration for enhanced features. Ensure you have the appropriate OAuth scope: 'event_rules.write'.", + "parameters": [ + { + "name": "ruleset_id", + "type": "string", + "required": true, + "description": "The unique identifier of the ruleset to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteRuleset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteRuleset", + "parameters": { + "ruleset_id": { + "value": "P123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteSchedule", + "qualifiedName": "PagerdutyApi.DeleteSchedule", + "fullyQualifiedName": "PagerdutyApi.DeleteSchedule@4.0.0", + "description": "Delete an on-call schedule.\n\nUse this tool to delete an on-call schedule, which defines when users are on call. This action requires scoped OAuth with 'schedules.write' permission.", + "parameters": [ + { + "name": "schedule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the schedule to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteSchedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteSchedule", + "parameters": { + "schedule_id": { + "value": "PABC123XYZ", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteScheduleOverride", + "qualifiedName": "PagerdutyApi.DeleteScheduleOverride", + "fullyQualifiedName": "PagerdutyApi.DeleteScheduleOverride@4.0.0", + "description": "Remove or truncate an on-call schedule override.\n\nUse this tool to remove a schedule override if it hasn't started, or truncate it if it's currently active. Overrides with start times before now but end times in the future are shortened to the current time. Successful deletion returns a 204 status, while truncation returns a 200 status.", + "parameters": [ + { + "name": "override_id", + "type": "string", + "required": true, + "description": "The unique identifier for the schedule override to be deleted or truncated.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the schedule to remove or truncate the override from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteScheduleOverride'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteScheduleOverride", + "parameters": { + "override_id": { + "value": "abc123-override", + "type": "string", + "required": true + }, + "resource_id": { + "value": "xyz456-schedule", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteService", + "qualifiedName": "PagerdutyApi.DeleteService", + "fullyQualifiedName": "PagerdutyApi.DeleteService@4.0.0", + "description": "Remove a service to prevent new incident creation.\n\nUse this tool to delete an existing service from PagerDuty. Once deleted, the service will no longer be accessible via the web UI, and new incidents cannot be created for it. Typically used for applications, components, or teams no longer needing incident management.", + "parameters": [ + { + "name": "service_id", + "type": "string", + "required": true, + "description": "The unique ID of the service to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteService", + "parameters": { + "service_id": { + "value": "PABC123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteServiceCacheVariable", + "qualifiedName": "PagerdutyApi.DeleteServiceCacheVariable", + "fullyQualifiedName": "PagerdutyApi.DeleteServiceCacheVariable@4.0.0", + "description": "Delete a cache variable for a service event orchestration.\n\nUse this tool to delete a cache variable associated with a service event orchestration. This operation helps manage event data by removing unnecessary or outdated cache variables connected to event orchestration rules. Ensure scoped OAuth with `services.write` is enabled.", + "parameters": [ + { + "name": "cache_variable_id", + "type": "string", + "required": true, + "description": "The unique identifier for the cache variable to be deleted in the service event orchestration.", + "enum": null, + "inferrable": true + }, + { + "name": "service_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the service related to the event orchestration.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteCacheVarOnServiceOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteServiceCacheVariable", + "parameters": { + "cache_variable_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "service_identifier": { + "value": "service-9876543210", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteServiceCustomField", + "qualifiedName": "PagerdutyApi.DeleteServiceCustomField", + "fullyQualifiedName": "PagerdutyApi.DeleteServiceCustomField@4.0.0", + "description": "Deletes a custom field from a service.\n\nUse this tool to delete a custom field from a service in PagerDuty. This action requires 'custom_fields.write' permissions.", + "parameters": [ + { + "name": "field_id", + "type": "string", + "required": true, + "description": "The ID of the custom field you want to delete from the service.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteServiceCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteServiceCustomField", + "parameters": { + "field_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteServiceCustomFieldOption", + "qualifiedName": "PagerdutyApi.DeleteServiceCustomFieldOption", + "fullyQualifiedName": "PagerdutyApi.DeleteServiceCustomFieldOption@4.0.0", + "description": "Delete a custom field option from a service.\n\nUse this tool to remove a specific custom field option associated with a service in PagerDuty. This is useful when you need to manage or update service configurations by deleting unnecessary or outdated options.", + "parameters": [ + { + "name": "field_identifier", + "type": "string", + "required": true, + "description": "The ID of the field to be deleted from the service.", + "enum": null, + "inferrable": true + }, + { + "name": "field_option_id", + "type": "string", + "required": true, + "description": "The unique identifier for the custom field option to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteServiceCustomFieldOption'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteServiceCustomFieldOption", + "parameters": { + "field_identifier": { + "value": "custom_field_123", + "type": "string", + "required": true + }, + "field_option_id": { + "value": "option_456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteServiceEventRule", + "qualifiedName": "PagerdutyApi.DeleteServiceEventRule", + "fullyQualifiedName": "PagerdutyApi.DeleteServiceEventRule@4.0.0", + "description": "Delete an event rule from a service in PagerDuty.\n\nUse this tool to delete a specific event rule from a service using its service and rule IDs. Note that event rules will soon be deprecated, and migration to Event Orchestration is recommended.", + "parameters": [ + { + "name": "event_rule_id", + "type": "string", + "required": true, + "description": "The ID of the Event Rule to be deleted. Use this to specify which rule to remove.", + "enum": null, + "inferrable": true + }, + { + "name": "service_id", + "type": "string", + "required": true, + "description": "The unique identifier of the service resource from which to delete the event rule.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteServiceEventRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteServiceEventRule", + "parameters": { + "event_rule_id": { + "value": "e123456", + "type": "string", + "required": true + }, + "service_id": { + "value": "s987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteStatusPagePost", + "qualifiedName": "PagerdutyApi.DeleteStatusPagePost", + "fullyQualifiedName": "PagerdutyApi.DeleteStatusPagePost@4.0.0", + "description": "Delete a post from a status page using its ID.\n\nUse this tool to delete a specific post from a status page by providing the status page ID and post ID. Requires appropriate OAuth permissions.", + "parameters": [ + { + "name": "status_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the status page from which the post will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_post_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Status Page Post to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteStatusPagePost'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteStatusPagePost", + "parameters": { + "status_page_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "status_page_post_id": { + "value": "post456def", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteStatusPagePostUpdate", + "qualifiedName": "PagerdutyApi.DeleteStatusPagePostUpdate", + "fullyQualifiedName": "PagerdutyApi.DeleteStatusPagePostUpdate@4.0.0", + "description": "Delete a specific post update on PagerDuty.\n\nUse this tool to delete a post update for a specific post on PagerDuty's status page by providing the post ID and post update ID. Requires appropriate OAuth permissions.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique ID of the resource to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_post_id", + "type": "string", + "required": true, + "description": "The ID of the Status Page Post to identify the specific post.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_post_update_id", + "type": "string", + "required": true, + "description": "The unique ID of the status page post update to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteStatusPagePostUpdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteStatusPagePostUpdate", + "parameters": { + "resource_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "status_page_post_id": { + "value": "post456", + "type": "string", + "required": true + }, + "status_page_post_update_id": { + "value": "update789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteStatusPageSubscription", + "qualifiedName": "PagerdutyApi.DeleteStatusPageSubscription", + "fullyQualifiedName": "PagerdutyApi.DeleteStatusPageSubscription@4.0.0", + "description": "Delete a status page subscription by ID.\n\nUse this tool to delete a subscription for a specific status page by providing the status page ID and subscription ID. It requires the 'status_pages.write' permission with scoped OAuth.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the status page resource to delete the subscription from.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_subscription_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific status page subscription to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteStatusPageSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteStatusPageSubscription", + "parameters": { + "resource_id": { + "value": "status_page_12345", + "type": "string", + "required": true + }, + "status_page_subscription_id": { + "value": "subscription_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTeamInPagerduty", + "qualifiedName": "PagerdutyApi.DeleteTeamInPagerduty", + "fullyQualifiedName": "PagerdutyApi.DeleteTeamInPagerduty@4.0.0", + "description": "Delete an existing team in PagerDuty.\n\nThis tool removes an existing team in PagerDuty if it has no associated Escalation Policies, Services, Schedules, and Subteams. Unresolved incidents will be reassigned or become account-level.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team to be deleted in PagerDuty.", + "enum": null, + "inferrable": true + }, + { + "name": "reassignment_team_id", + "type": "string", + "required": false, + "description": "The ID of the team to reassign unresolved incidents. If omitted, incidents will become account-level.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteTeamInPagerduty", + "parameters": { + "team_id": { + "value": "P123456", + "type": "string", + "required": true + }, + "reassignment_team_id": { + "value": "P654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTemplate", + "qualifiedName": "PagerdutyApi.DeleteTemplate", + "fullyQualifiedName": "PagerdutyApi.DeleteTemplate@4.0.0", + "description": "Delete a specific template on the PagerDuty account.\n\nUse this tool to delete a specified template from the account. Appropriate for managing and maintaining template resources in PagerDuty. Requires \"templates.write\" OAuth scope.", + "parameters": [ + { + "name": "template_id", + "type": "string", + "required": true, + "description": "The ID of the template resource to delete from the PagerDuty account. Required for deletion.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteTemplate", + "parameters": { + "template_id": { + "value": "TEMPLATE12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteUserHandoffNotificationRule", + "qualifiedName": "PagerdutyApi.DeleteUserHandoffNotificationRule", + "fullyQualifiedName": "PagerdutyApi.DeleteUserHandoffNotificationRule@4.0.0", + "description": "Remove a handoff notification rule for a PagerDuty user.\n\nUse this tool to delete a specific on-call handoff notification rule for a user in a PagerDuty account. Requires appropriate OAuth permissions.", + "parameters": [ + { + "name": "oncall_handoff_notification_rule_id", + "type": "string", + "required": true, + "description": "The unique ID of the on-call handoff notification rule to be deleted for the user.", + "enum": null, + "inferrable": true + }, + { + "name": "user_resource_id", + "type": "string", + "required": true, + "description": "The ID of the user resource to delete the handoff notification rule from. Required for identifying the user.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteUserHandoffNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteUserHandoffNotificationRule", + "parameters": { + "oncall_handoff_notification_rule_id": { + "value": "PNR123456789", + "type": "string", + "required": true + }, + "user_resource_id": { + "value": "USR987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteWebhookSubscription", + "qualifiedName": "PagerdutyApi.DeleteWebhookSubscription", + "fullyQualifiedName": "PagerdutyApi.DeleteWebhookSubscription@4.0.0", + "description": "Delete a webhook subscription in PagerDuty.\n\nUse this tool to delete a webhook subscription in PagerDuty when it is no longer needed. Ensure you have the necessary OAuth scope (`webhook_subscriptions.write`) to perform this operation.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the webhook subscription to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteWebhookSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteWebhookSubscription", + "parameters": { + "resource_id": { + "value": "abc1234def5678ghi9012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteWorkflowIntegrationConnection", + "qualifiedName": "PagerdutyApi.DeleteWorkflowIntegrationConnection", + "fullyQualifiedName": "PagerdutyApi.DeleteWorkflowIntegrationConnection@4.0.0", + "description": "Delete a Workflow Integration Connection on PagerDuty.\n\nUse this tool to remove a specific workflow integration connection from PagerDuty. Ideal for scenarios where you need to manage or clean up integration settings. Requires appropriate OAuth permissions.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the resource to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_integration_id", + "type": "string", + "required": true, + "description": "The unique ID of the Workflow Integration to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteWorkflowIntegrationConnection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DeleteWorkflowIntegrationConnection", + "parameters": { + "resource_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "workflow_integration_id": { + "value": "def456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DisassociateAutomationActionFromService", + "qualifiedName": "PagerdutyApi.DisassociateAutomationActionFromService", + "fullyQualifiedName": "PagerdutyApi.DisassociateAutomationActionFromService@4.0.0", + "description": "Disassociate an Automation Action from a service.\n\nUse this tool to remove the association between an Automation Action and a specific service in PagerDuty. Call this tool when you need to unlink an action from a service for organizational or operational purposes.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the resource to disassociate.", + "enum": null, + "inferrable": true + }, + { + "name": "service_id", + "type": "string", + "required": true, + "description": "The unique identifier of the service to be disassociated from the automation action. This should be provided as a string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAutomationActionServiceAssociation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DisassociateAutomationActionFromService", + "parameters": { + "resource_id": { + "value": "automation_action_12345", + "type": "string", + "required": true + }, + "service_id": { + "value": "service_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DisassociateAutomationActionFromTeam", + "qualifiedName": "PagerdutyApi.DisassociateAutomationActionFromTeam", + "fullyQualifiedName": "PagerdutyApi.DisassociateAutomationActionFromTeam@4.0.0", + "description": "Disassociate an automation action from a team in PagerDuty.\n\nUse this tool to disassociate a specified automation action from a specific team in PagerDuty. Useful for removing team associations with automation actions when they are no longer needed.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The ID of the automation action to disassociate from the team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team to be disassociated from an automation action.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAutomationActionTeamAssociation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DisassociateAutomationActionFromTeam", + "parameters": { + "resource_id": { + "value": "ABC123456", + "type": "string", + "required": true + }, + "team_id": { + "value": "TEAM7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DisassociateRunnerFromTeam", + "qualifiedName": "PagerdutyApi.DisassociateRunnerFromTeam", + "fullyQualifiedName": "PagerdutyApi.DisassociateRunnerFromTeam@4.0.0", + "description": "Disassociate a runner from a team in PagerDuty.\n\nCall this tool to remove the association between a runner and a team within the PagerDuty platform.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique ID of the resource to be disassociated from the team. This is required to identify the runner.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team from which the runner will be disassociated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAutomationActionsRunnerTeamAssociation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.DisassociateRunnerFromTeam", + "parameters": { + "resource_id": { + "value": "ABC12345", + "type": "string", + "required": true + }, + "team_id": { + "value": "TEAM67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EnablePagerdutyExtension", + "qualifiedName": "PagerdutyApi.EnablePagerdutyExtension", + "fullyQualifiedName": "PagerdutyApi.EnablePagerdutyExtension@4.0.0", + "description": "Enable a disabled extension on PagerDuty.\n\nUse this tool to enable an extension on PagerDuty that is currently disabled. This is useful for reactivating an extension connected to a service without requiring additional input data.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique ID of the PagerDuty extension to enable.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enableExtension'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.EnablePagerdutyExtension", + "parameters": { + "resource_id": { + "value": "EXT-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EnableWebhookSubscription", + "qualifiedName": "PagerdutyApi.EnableWebhookSubscription", + "fullyQualifiedName": "PagerdutyApi.EnableWebhookSubscription@4.0.0", + "description": "Enable a temporarily disabled webhook subscription.\n\nUse this tool to enable a webhook subscription that has been temporarily disabled due to repeated delivery method rejections by the server.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the webhook subscription to be enabled.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enableWebhookSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.EnableWebhookSubscription", + "parameters": { + "resource_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchIncidentLogs", + "qualifiedName": "PagerdutyApi.FetchIncidentLogs", + "fullyQualifiedName": "PagerdutyApi.FetchIncidentLogs@4.0.0", + "description": "Retrieve all incident log entries across the account.\n\nThis tool lists all the incident log entries, detailing events that occur for each incident across the entire account. Useful for tracking and analyzing incident-related activities.", + "parameters": [ + { + "name": "additional_models_to_include", + "type": "string", + "required": false, + "description": "Specify additional models to include in the response, such as incidents, services, channels, or teams.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_pagination", + "type": "boolean", + "required": false, + "description": "Set to true to populate the total field in pagination responses. Set to false for faster response times.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start pagination in search results. Used for navigating through large datasets.", + "enum": null, + "inferrable": true + }, + { + "name": "render_results_in_time_zone", + "type": "string", + "required": false, + "description": "Time zone for rendering results. Defaults to the account time zone if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results returned per page.", + "enum": null, + "inferrable": true + }, + { + "name": "return_important_changes_only", + "type": "boolean", + "required": false, + "description": "If true, return only the most important changes to the incident in log entries.", + "enum": null, + "inferrable": true + }, + { + "name": "search_end_date", + "type": "string", + "required": false, + "description": "The end date for the search range. Specify in YYYY-MM-DD format.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_range", + "type": "string", + "required": false, + "description": "Specify the start date for the search range. Format: YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "team_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of team IDs to filter log entries. Requires 'teams' ability on the account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listLogEntries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.FetchIncidentLogs", + "parameters": { + "additional_models_to_include": { + "value": "incidents, services", + "type": "string", + "required": false + }, + "include_total_in_pagination": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "render_results_in_time_zone": { + "value": "America/New_York", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "return_important_changes_only": { + "value": false, + "type": "boolean", + "required": false + }, + "search_end_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "start_date_range": { + "value": "2023-09-01", + "type": "string", + "required": false + }, + "team_ids": { + "value": ["team_1", "team_2"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchIncidentMetrics", + "qualifiedName": "PagerdutyApi.FetchIncidentMetrics", + "fullyQualifiedName": "PagerdutyApi.FetchIncidentMetrics@4.0.0", + "description": "Get aggregated metrics across all escalation policies.\n\nThis tool retrieves aggregated metrics related to escalation policies, including Seconds to Resolve, Seconds to Engage, Snoozed Seconds, and Sleep Hour Interruptions. Metrics are updated periodically and may take up to 24 hours to reflect new incidents.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAnalyticsMetricsIncidentsEscalationPolicyAll'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.FetchIncidentMetrics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"date_range\":\"last_24_hours\",\"include_escalation_policies\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchResponderTeamMetrics", + "qualifiedName": "PagerdutyApi.FetchResponderTeamMetrics", + "fullyQualifiedName": "PagerdutyApi.FetchResponderTeamMetrics@4.0.0", + "description": "Fetch incident metrics for team responders.\n\nThis tool provides aggregated incident metrics for responders on a team, such as Seconds to Resolve and Sleep Hour Interruptions. It should be called when detailed performance insights are needed for team members handling incidents. Metrics are updated periodically.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAnalyticsMetricsRespondersTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.FetchResponderTeamMetrics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"team_id\": \"T12345\", \"metrics\": [\"seconds_to_resolve\", \"sleep_hour_interruptions\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAccountAbilities", + "qualifiedName": "PagerdutyApi.GetAccountAbilities", + "fullyQualifiedName": "PagerdutyApi.GetAccountAbilities@4.0.0", + "description": "Retrieve your account's available abilities by feature name.\n\nUse this tool to get a list of the features or capabilities available on your account, such as 'teams'. The availability of these abilities may depend on factors like your pricing plan or account status.", + "parameters": [], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAbilities'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetAccountAbilities", + "parameters": {}, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAccountStandards", + "qualifiedName": "PagerdutyApi.GetAccountStandards", + "fullyQualifiedName": "PagerdutyApi.GetAccountStandards@4.0.0", + "description": "Retrieve all standards of an account.\n\nUse this tool to get a comprehensive list of standards associated with a PagerDuty account. Useful for understanding the compliance and operational guidelines in place. Requires OAuth scope: `standards.read`.", + "parameters": [ + { + "name": "active_standards_only", + "type": "boolean", + "required": false, + "description": "Set to true to include only active standards. Set to false to include both active and inactive standards.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type_filter", + "type": "string", + "required": false, + "description": "Specify the type of resource to filter standards. Must be 'technical_service'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listStandards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetAccountStandards", + "parameters": { + "active_standards_only": { + "value": false, + "type": "boolean", + "required": false + }, + "resource_type_filter": { + "value": "technical_service", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAddonDetails", + "qualifiedName": "PagerdutyApi.GetAddonDetails", + "fullyQualifiedName": "PagerdutyApi.GetAddonDetails@4.0.0", + "description": "Retrieve detailed information about a PagerDuty add-on.\n\nThis tool retrieves details about a specific add-on within PagerDuty. Add-ons are extensions that add new functionality to PagerDuty's UI. Use this tool when you need information about a particular add-on. Requires `addons.read` OAuth scope.", + "parameters": [ + { + "name": "addon_id", + "type": "string", + "required": true, + "description": "The unique ID of the PagerDuty add-on to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAddon'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetAddonDetails", + "parameters": { + "addon_id": { + "value": "abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAggregatedIncidentMetrics", + "qualifiedName": "PagerdutyApi.GetAggregatedIncidentMetrics", + "fullyQualifiedName": "PagerdutyApi.GetAggregatedIncidentMetrics@4.0.0", + "description": "Retrieve aggregated incident metrics across all services.\n\nThis tool provides aggregated metrics for incidents such as resolution time, engagement time, and more, across all services in PagerDuty. Requires `team_ids` or `service_ids` filter for certain API keys.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAnalyticsMetricsIncidentsServiceAll'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetAggregatedIncidentMetrics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"team_ids\":[\"team1\",\"team2\"],\"service_ids\":[\"service1\",\"service2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAlertGroupingSetting", + "qualifiedName": "PagerdutyApi.GetAlertGroupingSetting", + "fullyQualifiedName": "PagerdutyApi.GetAlertGroupingSetting@4.0.0", + "description": "Retrieve an existing alert grouping setting.\n\nUse this tool to get details of a specific alert grouping setting. It is useful when you need to understand or verify the configuration of alert grouping within the PagerDuty service.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the alert grouping setting you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAlertGroupingSetting'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetAlertGroupingSetting", + "parameters": { + "resource_id": { + "value": "12345-example-id", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAnalyticsMetricsForAllTeams", + "qualifiedName": "PagerdutyApi.GetAnalyticsMetricsForAllTeams", + "fullyQualifiedName": "PagerdutyApi.GetAnalyticsMetricsForAllTeams@4.0.0", + "description": "Fetches aggregated incident metrics across all teams.\n\nThis tool provides aggregated metrics for incidents across all teams, including metrics like Seconds to Resolve and Sleep Hour Interruptions. Ideal for understanding team performance and incident impacts. Ensure to use team_ids or service_ids filters with user-level API keys unless using account-level keys.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAnalyticsMetricsIncidentsTeamAll'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetAnalyticsMetricsForAllTeams", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"team_ids\":[\"team_1\",\"team_2\"],\"service_ids\":[\"service_1\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAnalyticsMetricsPdAdvanceUsage", + "qualifiedName": "PagerdutyApi.GetAnalyticsMetricsPdAdvanceUsage", + "fullyQualifiedName": "PagerdutyApi.GetAnalyticsMetricsPdAdvanceUsage@4.0.0", + "description": "Retrieve aggregated metrics for PD Advance usage.\n\nThis tool provides aggregated metrics for the usage of PD Advance. It should be called when you need insights or reports about PD Advance features usage. Note that analytics data is updated periodically and may take up to 24 hours to reflect new incidents.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAnalyticsMetricsPdAdvanceUsageFeatures'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetAnalyticsMetricsPdAdvanceUsage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"time_range\":\"last_30_days\",\"metrics\":[\"incident_count\",\"avg_response_time\"],\"team_id\":\"123456\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAutomationAction", + "qualifiedName": "PagerdutyApi.GetAutomationAction", + "fullyQualifiedName": "PagerdutyApi.GetAutomationAction@4.0.0", + "description": "Retrieve details of a specific automation action.\n\nThis tool is used to get details of a specific automation action by its ID in PagerDuty.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the automation action to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationAction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetAutomationAction", + "parameters": { + "resource_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAutomationActionInvocation", + "qualifiedName": "PagerdutyApi.GetAutomationActionInvocation", + "fullyQualifiedName": "PagerdutyApi.GetAutomationActionInvocation@4.0.0", + "description": "Retrieve details of an automation action invocation.\n\nThis tool is used to obtain detailed information about a specific automation action invocation by its ID. Call this tool when you need to track or review an action performed through PagerDuty's automation services.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the automation action resource to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationActionsInvocation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetAutomationActionInvocation", + "parameters": { + "resource_id": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAutomationActionRunner", + "qualifiedName": "PagerdutyApi.GetAutomationActionRunner", + "fullyQualifiedName": "PagerdutyApi.GetAutomationActionRunner@4.0.0", + "description": "Retrieve details of an Automation Action runner by ID.\n\nThis tool fetches information about a specific Automation Action runner from PagerDuty based on the provided ID. Use it to get runner details when managing or monitoring automation actions.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Automation Action runner to retrieve details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationActionsRunner'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetAutomationActionRunner", + "parameters": { + "resource_id": { + "value": "PABC123XYZ", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAutomationActionServiceAssociation", + "qualifiedName": "PagerdutyApi.GetAutomationActionServiceAssociation", + "fullyQualifiedName": "PagerdutyApi.GetAutomationActionServiceAssociation@4.0.0", + "description": "Retrieve details of an Automation Action and service relation.\n\nCall this tool to get information about the relationship between a specific Automation Action and a service on PagerDuty.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The ID of the resource to retrieve details about. This identifies the specific Automation Action.", + "enum": null, + "inferrable": true + }, + { + "name": "service_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the service to retrieve its relation with the Automation Action.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationActionsActionServiceAssociation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetAutomationActionServiceAssociation", + "parameters": { + "resource_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "service_identifier": { + "value": "service_XY987", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAutomationActionTeamAssociation", + "qualifiedName": "PagerdutyApi.GetAutomationActionTeamAssociation", + "fullyQualifiedName": "PagerdutyApi.GetAutomationActionTeamAssociation@4.0.0", + "description": "Retrieve details of an Automation Action and team relationship.\n\nThis tool retrieves the details of a relationship between a specific Automation Action and a team within PagerDuty. It should be called when you need to understand or verify the association details between an action and a team.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique ID of the resource (Automation Action) to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team associated with the Automation Action.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationActionsActionTeamAssociation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetAutomationActionTeamAssociation", + "parameters": { + "resource_id": { + "value": "ABCD1234EFGH5678", + "type": "string", + "required": true + }, + "team_id": { + "value": "TEAM0012345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBusinessServiceDependencies", + "qualifiedName": "PagerdutyApi.GetBusinessServiceDependencies", + "fullyQualifiedName": "PagerdutyApi.GetBusinessServiceDependencies@4.0.0", + "description": "Retrieve immediate dependencies of a Business Service.\n\nThis tool retrieves all immediate dependencies of a specified Business Service in PagerDuty. It models capabilities that span multiple technical services and may be owned by various teams. Appropriate for understanding service dependencies in a business context.", + "parameters": [ + { + "name": "service_id", + "type": "string", + "required": true, + "description": "The ID of the Business Service to retrieve its dependencies.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBusinessServiceServiceDependencies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetBusinessServiceDependencies", + "parameters": { + "service_id": { + "value": "abc123-service-id", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBusinessServiceDetails", + "qualifiedName": "PagerdutyApi.GetBusinessServiceDetails", + "fullyQualifiedName": "PagerdutyApi.GetBusinessServiceDetails@4.0.0", + "description": "Retrieve details about a specific Business Service.\n\nThis tool retrieves comprehensive details about a Business Service in PagerDuty, which models capabilities across technical services and teams.", + "parameters": [ + { + "name": "business_service_id", + "type": "string", + "required": true, + "description": "The ID of the business service to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBusinessService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetBusinessServiceDetails", + "parameters": { + "business_service_id": { + "value": "BS123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBusinessServiceImpacts", + "qualifiedName": "PagerdutyApi.GetBusinessServiceImpacts", + "fullyQualifiedName": "PagerdutyApi.GetBusinessServiceImpacts@4.0.0", + "description": "Get top-level Business Services sorted by highest impact.\n\nRetrieve the most impacted Business Services, up to 200, with their status. The service list is sorted by impact, recency, and name. For specific services, use the `ids[]` parameter. Requires 'services.read' scope.", + "parameters": [ + { + "name": "business_service_ids", + "type": "string", + "required": false, + "description": "A list of specific Business Service IDs to retrieve impact information for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_fields", + "type": "string", + "required": false, + "description": "Specify additional fields to include, such as 'services.highest_impacting_priority' or 'total_impacted_count'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBusinessServiceImpacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetBusinessServiceImpacts", + "parameters": { + "business_service_ids": { + "value": "BS1234,BS5678", + "type": "string", + "required": false + }, + "include_additional_fields": { + "value": "services.highest_impacting_priority,total_impacted_count", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBusinessServiceSubscribers", + "qualifiedName": "PagerdutyApi.GetBusinessServiceSubscribers", + "fullyQualifiedName": "PagerdutyApi.GetBusinessServiceSubscribers@4.0.0", + "description": "Retrieve notification subscribers of a business service.\n\nFetches a list of notification subscribers for a specified business service. Use this tool when you need to find out who is subscribed to notifications for a particular service. Ensure users were added as subscribers via the appropriate POST method.", + "parameters": [ + { + "name": "business_service_id", + "type": "string", + "required": true, + "description": "The unique identifier for the business service to retrieve subscribers.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBusinessServiceSubscribers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetBusinessServiceSubscribers", + "parameters": { + "business_service_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCacheVariableGlobalEvent", + "qualifiedName": "PagerdutyApi.GetCacheVariableGlobalEvent", + "fullyQualifiedName": "PagerdutyApi.GetCacheVariableGlobalEvent@4.0.0", + "description": "Retrieve a cache variable for a global event orchestration.\n\nThis tool retrieves a cache variable associated with a global event orchestration. It is useful for accessing stored event data that can be utilized in orchestration rules. Appropriate for cases where event orchestration data is required for condition or action setups.", + "parameters": [ + { + "name": "cache_variable_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a Cache Variable in a global event orchestration.", + "enum": null, + "inferrable": true + }, + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The ID of the event orchestration to retrieve the cache variable from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCacheVarOnGlobalOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetCacheVariableGlobalEvent", + "parameters": { + "cache_variable_identifier": { + "value": "unique-cache-var-123", + "type": "string", + "required": true + }, + "event_orchestration_id": { + "value": "event-orch-456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetChangeEventDetails", + "qualifiedName": "PagerdutyApi.GetChangeEventDetails", + "fullyQualifiedName": "PagerdutyApi.GetChangeEventDetails@4.0.0", + "description": "Retrieve detailed information about a Change Event.\n\nUse this tool to get details about a specific Change Event by providing its ID. Useful for tracking or analyzing changes in your system.", + "parameters": [ + { + "name": "change_event_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Change Event to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getChangeEvent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetChangeEventDetails", + "parameters": { + "change_event_id": { + "value": "CE123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCurrentUserDetails", + "qualifiedName": "PagerdutyApi.GetCurrentUserDetails", + "fullyQualifiedName": "PagerdutyApi.GetCurrentUserDetails@4.0.0", + "description": "Retrieves details about the current PagerDuty user.\n\nThis tool fetches information about the current user logged into PagerDuty. It requires a user-level API key or an OAuth-generated key. Utilize this tool to obtain user details such as permissions and membership within the PagerDuty account.", + "parameters": [ + { + "name": "additional_models_to_include", + "type": "string", + "required": false, + "description": "Specifies additional models, such as contact methods or teams, to include in the response. Options: contact_methods, notification_rules, teams, subdomains.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCurrentUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetCurrentUserDetails", + "parameters": { + "additional_models_to_include": { + "value": "teams", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomFieldOption", + "qualifiedName": "PagerdutyApi.GetCustomFieldOption", + "fullyQualifiedName": "PagerdutyApi.GetCustomFieldOption@4.0.0", + "description": "Retrieve a specific custom field option for an incident type.\n\nThis tool retrieves details of a specific field option within a custom field for a given incident type in PagerDuty. Custom fields allow users to extend incidents with custom data for filtering, search, and analytics. Use this tool when you need to access a particular field option of a custom field associated with an incident type.", + "parameters": [ + { + "name": "field_id", + "type": "string", + "required": true, + "description": "The ID of the custom field for which the field option details are retrieved. This ID specifies the field within the incident type.", + "enum": null, + "inferrable": true + }, + { + "name": "field_option_id", + "type": "string", + "required": true, + "description": "The unique identifier for the field option within a custom field. Used to retrieve specific option details.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_type_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the incident type for which the custom field option is to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getIncidentTypeCustomFieldFieldOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetCustomFieldOption", + "parameters": { + "field_id": { + "value": "987654", + "type": "string", + "required": true + }, + "field_option_id": { + "value": "123", + "type": "string", + "required": true + }, + "incident_type_identifier": { + "value": "server_outage", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomFieldValues", + "qualifiedName": "PagerdutyApi.GetCustomFieldValues", + "fullyQualifiedName": "PagerdutyApi.GetCustomFieldValues@4.0.0", + "description": "Retrieve custom field values for a specific incident.\n\nThis tool is used to obtain custom field values for a given incident on PagerDuty. It should be called when you need detailed field information about a specific incident using its ID.", + "parameters": [ + { + "name": "incident_id", + "type": "string", + "required": true, + "description": "The unique identifier for the incident whose custom field values are being requested.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getIncidentFieldValues'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetCustomFieldValues", + "parameters": { + "incident_id": { + "value": "PABC123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEnrichedIncidentData", + "qualifiedName": "PagerdutyApi.GetEnrichedIncidentData", + "fullyQualifiedName": "PagerdutyApi.GetEnrichedIncidentData@4.0.0", + "description": "Retrieve enriched incident metrics for a specific incident.\n\nThis tool provides enriched incident data including metrics like Seconds to Resolve, Seconds to Engage, and Snoozed Seconds. Suitable for analyzing incident performance and response times. Data is updated periodically and may take up to 24 hours to reflect new incidents.", + "parameters": [ + { + "name": "incident_id", + "type": "string", + "required": true, + "description": "The unique identifier for the incident to retrieve analytics for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAnalyticsIncidentsById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetEnrichedIncidentData", + "parameters": { + "incident_id": { + "value": "INC123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEscalationPolicy", + "qualifiedName": "PagerdutyApi.GetEscalationPolicy", + "fullyQualifiedName": "PagerdutyApi.GetEscalationPolicy@4.0.0", + "description": "Retrieve details of an escalation policy and its rules.\n\nUse this tool to get information about a specific escalation policy, including which users are alerted and when. This is useful for understanding alert management configurations.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the escalation policy to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "include_models", + "type": "string", + "required": false, + "description": "Specify additional models to include in the response, such as services, teams, or targets.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEscalationPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetEscalationPolicy", + "parameters": { + "resource_id": { + "value": "EP-123456", + "type": "string", + "required": true + }, + "include_models": { + "value": "services,teams", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEscalationPolicyAuditRecords", + "qualifiedName": "PagerdutyApi.GetEscalationPolicyAuditRecords", + "fullyQualifiedName": "PagerdutyApi.GetEscalationPolicyAuditRecords@4.0.0", + "description": "Retrieve audit records for a specific escalation policy.\n\nThis tool fetches the audit records of a specified escalation policy from newest to oldest. It is useful for tracking changes and understanding historical actions related to escalation policies in PagerDuty. Ensure OAuth scope 'audit_records.read' is granted.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "Identifier for the escalation policy to retrieve audit records for.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_of_search", + "type": "string", + "required": false, + "description": "The end date of the search range. Defaults to now if not specified. Cannot exceed 31 days after the start date.", + "enum": null, + "inferrable": true + }, + { + "name": "next_cursor", + "type": "string", + "required": false, + "description": "A string used to fetch the next set of results. Obtain from the `next_cursor` of the previous request. If empty, it starts from the beginning of the result set.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of audit records to return. It's the smaller of the provided limit or the API's max size.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_for_audit_search", + "type": "string", + "required": false, + "description": "The start date for the audit record search. If not specified, defaults to 24 hours ago.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listEscalationPolicyAuditRecords'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetEscalationPolicyAuditRecords", + "parameters": { + "resource_id": { + "value": "ABC123456", + "type": "string", + "required": true + }, + "end_date_of_search": { + "value": "2023-10-10T23:59:59Z", + "type": "string", + "required": false + }, + "next_cursor": { + "value": "abcdef12345", + "type": "string", + "required": false + }, + "result_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "start_date_for_audit_search": { + "value": "2023-10-09T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEscalationPolicyMetrics", + "qualifiedName": "PagerdutyApi.GetEscalationPolicyMetrics", + "fullyQualifiedName": "PagerdutyApi.GetEscalationPolicyMetrics@4.0.0", + "description": "Get aggregated incident metrics by escalation policy.\n\nThis tool provides aggregated metrics for incidents categorized by escalation policy. Example metrics include Seconds to Resolve, Seconds to Engage, Snoozed Seconds, and Sleep Hour Interruptions. It's useful for analyzing response times and interruptions based on policy. Note that data updates can take up to 24 hours.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAnalyticsMetricsIncidentsEscalationPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetEscalationPolicyMetrics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"escalation_policy_id\": \"PABC123\", \"time_frame\": \"last_30_days\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEventRule", + "qualifiedName": "PagerdutyApi.GetEventRule", + "fullyQualifiedName": "PagerdutyApi.GetEventRule@4.0.0", + "description": "Retrieve details of an event rule from a ruleset.\n\nUse this tool to get information about a specific event rule within a ruleset on PagerDuty. Note that rulesets and event rules will be phased out soon, and migrating to Event Orchestration is recommended. This tool requires event_rules.read OAuth scope.", + "parameters": [ + { + "name": "event_rule_id", + "type": "string", + "required": true, + "description": "The ID of the Event Rule to retrieve from a ruleset.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique ID of the resource to retrieve details for. This is required to specify which resource's event rule details are needed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRulesetEventRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetEventRule", + "parameters": { + "event_rule_id": { + "value": "ER123456", + "type": "string", + "required": true + }, + "resource_id": { + "value": "R1234567", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetEventRuleFromService", + "qualifiedName": "PagerdutyApi.GetEventRuleFromService", + "fullyQualifiedName": "PagerdutyApi.GetEventRuleFromService@4.0.0", + "description": "Retrieve an event rule from a specified service.\n\nThis tool retrieves details of a specific event rule from a given service in PagerDuty. It is important to migrate to Event Orchestration for enhanced features.", + "parameters": [ + { + "name": "event_rule_id", + "type": "string", + "required": true, + "description": "The ID of the event rule to retrieve from the specified service.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the service resource to retrieve the event rule for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getServiceEventRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetEventRuleFromService", + "parameters": { + "event_rule_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "resource_id": { + "value": "service_xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetExtensionDetails", + "qualifiedName": "PagerdutyApi.GetExtensionDetails", + "fullyQualifiedName": "PagerdutyApi.GetExtensionDetails@4.0.0", + "description": "Retrieve details about a specific extension on PagerDuty.\n\nUse this tool to obtain information about an existing extension associated with a service in PagerDuty. Useful for understanding extension configurations and their properties.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the extension resource to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_details", + "type": "string", + "required": false, + "description": "Specify additional details to include, such as 'extension_schemas', 'extension_objects', or 'temporarily_disabled'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getExtension'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetExtensionDetails", + "parameters": { + "resource_id": { + "value": "PD123456", + "type": "string", + "required": true + }, + "include_additional_details": { + "value": "extension_schemas", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetExtensionVendorDetails", + "qualifiedName": "PagerdutyApi.GetExtensionVendorDetails", + "fullyQualifiedName": "PagerdutyApi.GetExtensionVendorDetails@4.0.0", + "description": "Retrieve details of a specific PagerDuty extension vendor.\n\nUse this tool to get detailed information about a particular extension vendor in PagerDuty, such as Generic Webhook, Slack, or ServiceNow. This can help in understanding the capabilities and characteristics of a specific vendor.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the extension vendor resource.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getExtensionSchema'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetExtensionVendorDetails", + "parameters": { + "resource_id": { + "value": "vendor-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetExternalDataCacheVar", + "qualifiedName": "PagerdutyApi.GetExternalDataCacheVar", + "fullyQualifiedName": "PagerdutyApi.GetExternalDataCacheVar@4.0.0", + "description": "Retrieve external data Cache Variable data from Global Orchestration.\n\nUse this tool to obtain the data for an external data type Cache Variable on a Global Orchestration. These variables store string, number, or boolean values, which can be used in event orchestration conditions or actions. Requires `event_orchestrations.read` OAuth scope.", + "parameters": [ + { + "name": "cache_variable_id", + "type": "string", + "required": true, + "description": "Provide the ID of the Cache Variable whose data you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The unique identifier of an Event Orchestration to retrieve its cache variable data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getExternalDataCacheVarDataOnGlobalOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetExternalDataCacheVar", + "parameters": { + "cache_variable_id": { + "value": "cacheVar12345", + "type": "string", + "required": true + }, + "event_orchestration_id": { + "value": "eventOrch67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGlobalEventOrchestration", + "qualifiedName": "PagerdutyApi.GetGlobalEventOrchestration", + "fullyQualifiedName": "PagerdutyApi.GetGlobalEventOrchestration@4.0.0", + "description": "Retrieve details of a Global Event Orchestration by ID.\n\nFetches information about a specific Global Event Orchestration including its Global Rules and Router Rules, allowing you to understand how events are processed and routed based on their content.", + "parameters": [ + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Event Orchestration to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOrchestration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetGlobalEventOrchestration", + "parameters": { + "event_orchestration_id": { + "value": "EOR123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGlobalOrchestrationRoutingRules", + "qualifiedName": "PagerdutyApi.GetGlobalOrchestrationRoutingRules", + "fullyQualifiedName": "PagerdutyApi.GetGlobalOrchestrationRoutingRules@4.0.0", + "description": "Retrieve Global Orchestration's routing rules from PagerDuty.\n\nThis tool retrieves the routing rules for a specified Global Orchestration in PagerDuty. It evaluates events against these rules to determine routing to a specific service. If no rules match, events are sent to a default service or an \"Unrouted\" Orchestration. This is useful for understanding event pathways and ensuring proper event management and routing.", + "parameters": [ + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The ID of the Event Orchestration to retrieve routing rules for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOrchPathRouter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetGlobalOrchestrationRoutingRules", + "parameters": { + "event_orchestration_id": { + "value": "evt-orch-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetGlobalOrchestrationRules", + "qualifiedName": "PagerdutyApi.GetGlobalOrchestrationRules", + "fullyQualifiedName": "PagerdutyApi.GetGlobalOrchestrationRules@4.0.0", + "description": "Retrieve global orchestration rules for an event.\n\nThis tool fetches the global orchestration rules for a specified event orchestration, which contains a set of event rules applicable to all incoming events. These rules can modify, enhance, and route the event for further processing.", + "parameters": [ + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The ID of the specific Event Orchestration to retrieve rules for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOrchPathGlobal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetGlobalOrchestrationRules", + "parameters": { + "event_orchestration_id": { + "value": "ev-123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetImpactedBusinessServices", + "qualifiedName": "PagerdutyApi.GetImpactedBusinessServices", + "fullyQualifiedName": "PagerdutyApi.GetImpactedBusinessServices@4.0.0", + "description": "Retrieve business services impacted by an incident.\n\nThis tool retrieves a list of business services that are being impacted by a specified incident in PagerDuty. It should be called when you need to understand which business services are affected by a particular incident using the incident ID.", + "parameters": [ + { + "name": "incident_id", + "type": "string", + "required": true, + "description": "The ID of the incident to retrieve impacted business services for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getIncidentImpactedBusinessServices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetImpactedBusinessServices", + "parameters": { + "incident_id": { + "value": "P123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetImpactedServicesDashboard", + "qualifiedName": "PagerdutyApi.GetImpactedServicesDashboard", + "fullyQualifiedName": "PagerdutyApi.GetImpactedServicesDashboard@4.0.0", + "description": "Get most impacted Business Services for a Status Dashboard.\n\nUse this tool to retrieve the most impacted Business Services for a specific Status Dashboard by ID. It returns a list sorted by impact level, recency, and name, up to a limit of 200 services.", + "parameters": [ + { + "name": "status_dashboard_id", + "type": "string", + "required": true, + "description": "The ID of the Status Dashboard to fetch impacted Business Services for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_fields", + "type": "string", + "required": false, + "description": "Specify additional fields to include, like highest impacting priority or total impacted count. Use values: 'services.highest_impacting_priority' or 'total_impacted_count'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStatusDashboardServiceImpactsById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetImpactedServicesDashboard", + "parameters": { + "status_dashboard_id": { + "value": "abcd1234", + "type": "string", + "required": true + }, + "include_additional_fields": { + "value": "total_impacted_count", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncidentAlertDetails", + "qualifiedName": "PagerdutyApi.GetIncidentAlertDetails", + "fullyQualifiedName": "PagerdutyApi.GetIncidentAlertDetails@4.0.0", + "description": "Retrieve detailed information about a specific alert.\n\nThis tool provides detailed information about an alert using its alert ID. It is used when there is a need to know more about a particular problem or issue represented by an alert in PagerDuty.", + "parameters": [ + { + "name": "alert_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the alert to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the resource. This ID is used to fetch specific alert details in PagerDuty.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getIncidentAlert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIncidentAlertDetails", + "parameters": { + "alert_identifier": { + "value": "ALERT-123456", + "type": "string", + "required": true + }, + "resource_id": { + "value": "RESOURCE-78910", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncidentAnalytics", + "qualifiedName": "PagerdutyApi.GetIncidentAnalytics", + "fullyQualifiedName": "PagerdutyApi.GetIncidentAnalytics@4.0.0", + "description": "Fetch enriched incident metrics and data from PagerDuty Analytics.\n\nUse this tool to retrieve detailed metrics and data for multiple incidents, such as Seconds to Resolve and Sleep Hour Interruptions. A `team_ids` or `service_ids` filter is needed for certain API keys.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAnalyticsIncidents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIncidentAnalytics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"team_ids\":[\"team_12345\"],\"service_ids\":[\"service_67890\"],\"time_frame\":\"last_30_days\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncidentAnalyticsMetrics", + "qualifiedName": "PagerdutyApi.GetIncidentAnalyticsMetrics", + "fullyQualifiedName": "PagerdutyApi.GetIncidentAnalyticsMetrics@4.0.0", + "description": "Retrieve aggregated incident metrics by service over time.\n\nThis tool provides aggregated metrics for PagerDuty incidents, such as Seconds to Resolve and Sleep Hour Interruptions, aggregated by service and time units like day, week, or month. It helps users analyze incident management performance over specified periods.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAnalyticsMetricsIncidentsService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIncidentAnalyticsMetrics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"service_id\":\"service_123\",\"time_period\":\"last_30_days\",\"metrics\":[\"seconds_to_resolve\",\"sleep_hour_interruptions\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncidentDetails", + "qualifiedName": "PagerdutyApi.GetIncidentDetails", + "fullyQualifiedName": "PagerdutyApi.GetIncidentDetails@4.0.0", + "description": "Retrieve detailed information about a PagerDuty incident.\n\nUse this tool to get comprehensive details of a specific incident by providing its ID or number, helping to address and resolve issues effectively.", + "parameters": [ + { + "name": "incident_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific incident. Include either the incident ID or number to retrieve details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_details", + "type": "string", + "required": false, + "description": "List of additional incident details to include, such as 'acknowledgers', 'agents', 'assignees', etc.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getIncident'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIncidentDetails", + "parameters": { + "incident_id": { + "value": "PABC123", + "type": "string", + "required": true + }, + "include_details": { + "value": "acknowledgers,assignees", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncidentLogEntryDetails", + "qualifiedName": "PagerdutyApi.GetIncidentLogEntryDetails", + "fullyQualifiedName": "PagerdutyApi.GetIncidentLogEntryDetails@4.0.0", + "description": "Retrieve detailed information about a specific incident log entry.\n\nThis tool is used to obtain detailed information for a specific incident log entry from PagerDuty. It is useful for accessing raw event data related to incidents. This action requires the 'incidents.read' OAuth scope.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the incident log entry to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "additional_models_to_include", + "type": "string", + "required": false, + "description": "List of additional models like 'incidents', 'services', 'channels', or 'teams' to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "render_results_in_time_zone", + "type": "string", + "required": false, + "description": "Specify the time zone for rendering the results. Defaults to the account's time zone if not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getLogEntry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIncidentLogEntryDetails", + "parameters": { + "resource_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "additional_models_to_include": { + "value": "incidents,services", + "type": "string", + "required": false + }, + "render_results_in_time_zone": { + "value": "UTC", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncidentMetrics", + "qualifiedName": "PagerdutyApi.GetIncidentMetrics", + "fullyQualifiedName": "PagerdutyApi.GetIncidentMetrics@4.0.0", + "description": "Retrieve aggregated metrics for PagerDuty incidents.\n\nThis tool provides aggregated enriched metrics for incidents in PagerDuty. It allows aggregation by day, week, or month, or for the entire specified period. A filter with `team_ids` or `service_ids` is required for user-level API keys. Use this tool to analyze incident trends and performance over time.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAnalyticsMetricsIncidentsAll'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIncidentMetrics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"team_ids\":[\"team_123\"],\"service_ids\":[\"service_456\"],\"time_zone\":\"UTC\",\"date_range\":\"last_30_days\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncidentNotificationSubscribers", + "qualifiedName": "PagerdutyApi.GetIncidentNotificationSubscribers", + "fullyQualifiedName": "PagerdutyApi.GetIncidentNotificationSubscribers@4.0.0", + "description": "Retrieve a list of notification subscribers for an incident.\n\nThis tool retrieves the list of users subscribed to receive notifications for a specific incident. It should be called when you need to know who is subscribed to an incident's updates. Note: Users must be added through another endpoint to appear here. Requires appropriate OAuth permissions.", + "parameters": [ + { + "name": "incident_id", + "type": "string", + "required": true, + "description": "The unique identifier of the incident resource.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getIncidentNotificationSubscribers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIncidentNotificationSubscribers", + "parameters": { + "incident_id": { + "value": "ABC12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncidentRelatedChangeEvents", + "qualifiedName": "PagerdutyApi.GetIncidentRelatedChangeEvents", + "fullyQualifiedName": "PagerdutyApi.GetIncidentRelatedChangeEvents@4.0.0", + "description": "Retrieve change events related to a specific incident.\n\nThis tool retrieves a list of change events related to a specific incident, including the reasons for their correlation. It is useful during incident triage to understand recent changes such as deployments or configuration updates that might be relevant to the incident. This feature helps incident responders by providing insights based on time, related service, or machine learning intelligence.", + "parameters": [ + { + "name": "incident_id", + "type": "string", + "required": true, + "description": "The unique identifier of the incident for which related change events are to be listed.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page_limit", + "type": "integer", + "required": false, + "description": "The maximum number of change events to return per page for a specific incident.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listIncidentRelatedChangeEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIncidentRelatedChangeEvents", + "parameters": { + "incident_id": { + "value": "INC123456", + "type": "string", + "required": true + }, + "results_per_page_limit": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncidentResponseAnalytics", + "qualifiedName": "PagerdutyApi.GetIncidentResponseAnalytics", + "fullyQualifiedName": "PagerdutyApi.GetIncidentResponseAnalytics@4.0.0", + "description": "Provides enriched responder data for a single incident.\n\nUse this tool to obtain detailed analytics on a specific incident's responder data, such as Time to Respond, Responder Type, and Response Status. Note that analytics data is updated daily and may take up to 24 hours to appear.", + "parameters": [ + { + "name": "incident_id", + "type": "string", + "required": true, + "description": "The ID of the incident to retrieve analytics for.", + "enum": null, + "inferrable": true + }, + { + "name": "display_order", + "type": "string", + "required": false, + "description": "Specifies the order to display results: 'asc' for ascending, 'desc' for descending. Defaults to 'desc'.", + "enum": null, + "inferrable": true + }, + { + "name": "order_results_by_column", + "type": "string", + "required": false, + "description": "Specify the column to use for ordering the results, such as 'requested_at'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit", + "type": "integer", + "required": false, + "description": "The number of results to include in each batch. Acceptable values range from 1 to 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "time_zone_for_results", + "type": "string", + "required": false, + "description": "The time zone to use for displaying the results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAnalyticsIncidentResponsesById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIncidentResponseAnalytics", + "parameters": { + "incident_id": { + "value": "INC123456", + "type": "string", + "required": true + }, + "display_order": { + "value": "asc", + "type": "string", + "required": false + }, + "order_results_by_column": { + "value": "requested_at", + "type": "string", + "required": false + }, + "results_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "time_zone_for_results": { + "value": "UTC", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncidentTypeCustomField", + "qualifiedName": "PagerdutyApi.GetIncidentTypeCustomField", + "fullyQualifiedName": "PagerdutyApi.GetIncidentTypeCustomField@4.0.0", + "description": "Retrieve a custom field for a specific incident type.\n\nUse this tool to obtain custom fields associated with a specific incident type, enhancing incident details with user-defined data for filtering, search, and analytics.", + "parameters": [ + { + "name": "field_id", + "type": "string", + "required": true, + "description": "The ID of the custom field to retrieve for the incident type.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_type_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Incident Type for which to retrieve the custom field.", + "enum": null, + "inferrable": true + }, + { + "name": "include_field_details", + "type": "string", + "required": false, + "description": "Specify additional details, such as 'field_options', to include in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getIncidentTypeCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIncidentTypeCustomField", + "parameters": { + "field_id": { + "value": "custom_field_12345", + "type": "string", + "required": true + }, + "incident_type_id_or_name": { + "value": "incident_type_A", + "type": "string", + "required": true + }, + "include_field_details": { + "value": "field_options", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncidentTypeDetails", + "qualifiedName": "PagerdutyApi.GetIncidentTypeDetails", + "fullyQualifiedName": "PagerdutyApi.GetIncidentTypeDetails@4.0.0", + "description": "Retrieve detailed information on a specific incident type.\n\nThis tool fetches detailed information about a single incident type using either an incident type ID or name. It helps categorize incidents such as security or major incidents. Use this tool to get insights on incident categorization in your system.", + "parameters": [ + { + "name": "incident_type_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the Incident Type to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getIncidentType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIncidentTypeDetails", + "parameters": { + "incident_type_identifier": { + "value": "security_incident", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncidentWorkflow", + "qualifiedName": "PagerdutyApi.GetIncidentWorkflow", + "fullyQualifiedName": "PagerdutyApi.GetIncidentWorkflow@4.0.0", + "description": "Retrieve an existing Incident Workflow.\n\nThis tool retrieves the details of an existing Incident Workflow, which consists of configurable Steps and associated Triggers for automated Actions related to an Incident. Use this to understand or manage incident responses more effectively.", + "parameters": [ + { + "name": "incident_workflow_id", + "type": "string", + "required": true, + "description": "The ID of the Incident Workflow to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getIncidentWorkflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIncidentWorkflow", + "parameters": { + "incident_workflow_id": { + "value": "abcd1234-5678-efgh-9101-ijklmnop2345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncidentWorkflowAction", + "qualifiedName": "PagerdutyApi.GetIncidentWorkflowAction", + "fullyQualifiedName": "PagerdutyApi.GetIncidentWorkflowAction@4.0.0", + "description": "Retrieve details of an incident workflow action.\n\nUse this tool to obtain information about a specific incident workflow action in PagerDuty. Ideal for scenarios where you need to understand or display workflow details based on an ID.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique ID of the incident workflow action to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getIncidentWorkflowAction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIncidentWorkflowAction", + "parameters": { + "resource_id": { + "value": "PABC123XYZ", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIncidentWorkflowTrigger", + "qualifiedName": "PagerdutyApi.GetIncidentWorkflowTrigger", + "fullyQualifiedName": "PagerdutyApi.GetIncidentWorkflowTrigger@4.0.0", + "description": "Retrieve an existing Incident Workflows Trigger.\n\nCall this tool to get details about a specific Incident Workflows Trigger using its ID. Useful for obtaining information on workflow triggers in incident management systems.", + "parameters": [ + { + "name": "incident_workflow_trigger_id", + "type": "string", + "required": true, + "description": "The unique ID of the Incident Workflow Trigger to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getIncidentWorkflowTrigger'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIncidentWorkflowTrigger", + "parameters": { + "incident_workflow_trigger_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIntegrationDetails", + "qualifiedName": "PagerdutyApi.GetIntegrationDetails", + "fullyQualifiedName": "PagerdutyApi.GetIntegrationDetails@4.0.0", + "description": "Retrieve details of an orchestration integration.\n\nUse this tool to obtain details about a specific integration associated with event orchestrations in PagerDuty. This can help in managing event routing using the provided integration's routing key. Requires 'event_orchestrations.read' OAuth scope.", + "parameters": [ + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The ID of the Event Orchestration to retrieve integration details for.", + "enum": null, + "inferrable": true + }, + { + "name": "integration_id", + "type": "string", + "required": true, + "description": "The ID of the integration to retrieve details for within an event orchestration in PagerDuty.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOrchestrationIntegration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetIntegrationDetails", + "parameters": { + "event_orchestration_id": { + "value": "EOC123456", + "type": "string", + "required": true + }, + "integration_id": { + "value": "INT987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLatestTeamAuditRecords", + "qualifiedName": "PagerdutyApi.GetLatestTeamAuditRecords", + "fullyQualifiedName": "PagerdutyApi.GetLatestTeamAuditRecords@4.0.0", + "description": "Retrieve the latest audit records for a specific team.\n\nUse this tool to get a sorted list of the most recent audit records for a team, from newest to oldest. This is useful for monitoring team activities and changes. For handling large data sets, utilize cursor-based pagination as detailed in PagerDuty's documentation.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team or resource for which you want to retrieve audit records. This ID specifies which team's audit records to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_for_search_range", + "type": "string", + "required": false, + "description": "The end date of the search range. Defaults to current date if not specified, and must be within 31 days of the 'since' date.", + "enum": null, + "inferrable": true + }, + { + "name": "next_results_cursor", + "type": "string", + "required": false, + "description": "Cursor for fetching the next set of results. Obtained from the `next_cursor` of a previous request. Starts from the beginning if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of audit records to retrieve in the request.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_range", + "type": "string", + "required": false, + "description": "The date from which to start searching audit records. Defaults to 24 hours ago if not specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listTeamsAuditRecords'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetLatestTeamAuditRecords", + "parameters": { + "resource_id": { + "value": "ABC123XYZ", + "type": "string", + "required": true + }, + "end_date_for_search_range": { + "value": "2023-10-05T23:59:59Z", + "type": "string", + "required": false + }, + "next_results_cursor": { + "value": "xyz789cursor", + "type": "string", + "required": false + }, + "number_of_records_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "start_date_range": { + "value": "2023-10-04T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMaintenanceWindow", + "qualifiedName": "PagerdutyApi.GetMaintenanceWindow", + "fullyQualifiedName": "PagerdutyApi.GetMaintenanceWindow@4.0.0", + "description": "Retrieve details of an existing maintenance window in PagerDuty.\n\nUse this tool to get information about a specific maintenance window, which temporarily disables one or more services during a set period.", + "parameters": [ + { + "name": "maintenance_window_id", + "type": "string", + "required": true, + "description": "The unique identifier of the maintenance window to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "include_models", + "type": "string", + "required": false, + "description": "Array of additional models to include in the response. Options are 'teams', 'services', or 'users'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getMaintenanceWindow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetMaintenanceWindow", + "parameters": { + "maintenance_window_id": { + "value": "PW123456", + "type": "string", + "required": true + }, + "include_models": { + "value": "teams,services", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOauthClientDetails", + "qualifiedName": "PagerdutyApi.GetOauthClientDetails", + "fullyQualifiedName": "PagerdutyApi.GetOauthClientDetails@4.0.0", + "description": "Retrieve details of a specific OAuth client by ID.\n\nThis tool is used to obtain detailed information about a specific OAuth client using its ID. It requires admin or owner role permissions to access this information.", + "parameters": [ + { + "name": "oauth_client_id", + "type": "string", + "required": true, + "description": "The unique identifier of the OAuth client to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOauthClient'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetOauthClientDetails", + "parameters": { + "oauth_client_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOutlierIncidentInfo", + "qualifiedName": "PagerdutyApi.GetOutlierIncidentInfo", + "fullyQualifiedName": "PagerdutyApi.GetOutlierIncidentInfo@4.0.0", + "description": "Retrieve information about an outlier incident for a service.\n\nUse this tool to get detailed information about an outlier incident associated with a specified incident on its service. Requires appropriate OAuth scope.", + "parameters": [ + { + "name": "incident_resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the incident resource you want details about.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_incident_details", + "type": "string", + "required": false, + "description": "Include additional attributes for related incidents, specified as strings.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_range", + "type": "string", + "required": false, + "description": "The start date for the search range in YYYY-MM-DD format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOutlierIncident'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetOutlierIncidentInfo", + "parameters": { + "incident_resource_id": { + "value": "INC123456", + "type": "string", + "required": true + }, + "include_additional_incident_details": { + "value": "true", + "type": "string", + "required": false + }, + "start_date_range": { + "value": "2023-01-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPausedIncidentReportAlerts", + "qualifiedName": "PagerdutyApi.GetPausedIncidentReportAlerts", + "fullyQualifiedName": "PagerdutyApi.GetPausedIncidentReportAlerts@4.0.0", + "description": "Retrieve recent paused incident report alerts.\n\nFetches the 5 most recent alerts triggered and resolved after being paused within a maximum 6-month period. Available with Event Intelligence or Digital Operations plan.", + "parameters": [ + { + "name": "end_date_range", + "type": "string", + "required": false, + "description": "The end date for the search range to retrieve alerts. Must be within 6 months.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_suspend_method", + "type": "string", + "required": false, + "description": "Filter alerts by suspension type: 'Auto Pause' or 'Event Rules'.", + "enum": null, + "inferrable": true + }, + { + "name": "service_identifier", + "type": "string", + "required": false, + "description": "Filter reports to a specific service by providing its service ID.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "The start date for the search range. It should be in ISO 8601 format (YYYY-MM-DD).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPausedIncidentReportAlerts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetPausedIncidentReportAlerts", + "parameters": { + "end_date_range": { + "value": "2023-09-30", + "type": "string", + "required": false + }, + "filter_by_suspend_method": { + "value": "Auto Pause", + "type": "string", + "required": false + }, + "service_identifier": { + "value": "P123456", + "type": "string", + "required": false + }, + "start_date": { + "value": "2023-03-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPausedIncidentReportCounts", + "qualifiedName": "PagerdutyApi.GetPausedIncidentReportCounts", + "fullyQualifiedName": "PagerdutyApi.GetPausedIncidentReportCounts@4.0.0", + "description": "Retrieve reporting counts for paused incident usage.\n\nThis tool returns reporting counts for paused incident usage within a specified reporting period, up to a 6-month lookback. It is available with the Event Intelligence package or Digital Operations plan.", + "parameters": [ + { + "name": "end_date", + "type": "string", + "required": false, + "description": "End date for the date range over which to search for paused incident reports. Format: YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_suspended_type", + "type": "string", + "required": false, + "description": "Filter to specify whether to include alerts suspended by Auto Pause or Event Rules. Use 'Auto Pause' or 'Event Rules'.", + "enum": null, + "inferrable": true + }, + { + "name": "service_identifier", + "type": "string", + "required": false, + "description": "Filter to limit reporting to a particular service by providing a specific service ID.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "The start date for the reporting period to search, in YYYY-MM-DD format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPausedIncidentReportCounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetPausedIncidentReportCounts", + "parameters": { + "end_date": { + "value": "2023-09-30", + "type": "string", + "required": false + }, + "filter_by_suspended_type": { + "value": "Auto Pause", + "type": "string", + "required": false + }, + "service_identifier": { + "value": "abc123", + "type": "string", + "required": false + }, + "start_date": { + "value": "2023-04-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPostmortemByPostId", + "qualifiedName": "PagerdutyApi.GetPostmortemByPostId", + "fullyQualifiedName": "PagerdutyApi.GetPostmortemByPostId@4.0.0", + "description": "Retrieve postmortem details using post ID.\n\nUse this tool to get detailed postmortem information for a specific post using its Post ID on PagerDuty. This is useful for obtaining insights and summaries related to incidents.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the resource. Used to retrieve the specific postmortem information.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_post_id", + "type": "string", + "required": true, + "description": "The ID of the Status Page Post to retrieve postmortem details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPostmortem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetPostmortemByPostId", + "parameters": { + "resource_id": { + "value": "abcd1234", + "type": "string", + "required": true + }, + "status_page_post_id": { + "value": "efgh5678", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPostUpdate", + "qualifiedName": "PagerdutyApi.GetPostUpdate", + "fullyQualifiedName": "PagerdutyApi.GetPostUpdate@4.0.0", + "description": "Retrieve specific post updates by post and update IDs.\n\nUse this tool to get detailed information about a specific post update from a status page, using the specified post and update IDs. Scoped OAuth with `status_pages.read` is required.", + "parameters": [ + { + "name": "post_update_id", + "type": "string", + "required": true, + "description": "The ID of the Status Page Post Update required for fetching specific update details.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the resource to retrieve the post update.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_post_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Status Page Post to retrieve updates for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPostUpdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetPostUpdate", + "parameters": { + "post_update_id": { + "value": "PU123456", + "type": "string", + "required": true + }, + "resource_id": { + "value": "R987654", + "type": "string", + "required": true + }, + "status_page_post_id": { + "value": "SPP13579", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPriorityThresholds", + "qualifiedName": "PagerdutyApi.GetPriorityThresholds", + "fullyQualifiedName": "PagerdutyApi.GetPriorityThresholds@4.0.0", + "description": "Retrieve priority threshold details for an account.\n\nThis tool retrieves the priority threshold information set for an account, including the global threshold impacting business services. It helps determine which incidents are considered impactful based on their priority.", + "parameters": [], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBusinessServicePriorityThresholds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetPriorityThresholds", + "parameters": {}, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRelatedIncidents", + "qualifiedName": "PagerdutyApi.GetRelatedIncidents", + "fullyQualifiedName": "PagerdutyApi.GetRelatedIncidents@4.0.0", + "description": "Retrieve recent related incidents impacting services.\n\nUse this tool to get the 20 most recent related incidents that affect other responders and services. This feature is part of PagerDuty's Event Intelligence package or Digital Operations plan.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the resource to retrieve related incidents for.", + "enum": null, + "inferrable": true + }, + { + "name": "additional_attributes", + "type": "string", + "required": false, + "description": "Array of additional attributes to include for each related incident. Use 'incident' as the value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRelatedIncidents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetRelatedIncidents", + "parameters": { + "resource_id": { + "value": "P123456", + "type": "string", + "required": true + }, + "additional_attributes": { + "value": "incident", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetResourceStandards", + "qualifiedName": "PagerdutyApi.GetResourceStandards", + "fullyQualifiedName": "PagerdutyApi.GetResourceStandards@4.0.0", + "description": "Retrieve standards applied to a specified resource on PagerDuty.\n\nUse this tool to get a list of standards that are applied to a specified resource type and ID on PagerDuty. Requires 'standards.read' OAuth scope.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The ID of the resource for which you want to list the applied standards.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": true, + "description": "Specify the type of resource to which standards are applied, such as 'technical_services'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listResourceStandards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetResourceStandards", + "parameters": { + "resource_id": { + "value": "PABC123456", + "type": "string", + "required": true + }, + "resource_type": { + "value": "technical_services", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetResponderIncidentAnalytics", + "qualifiedName": "PagerdutyApi.GetResponderIncidentAnalytics", + "fullyQualifiedName": "PagerdutyApi.GetResponderIncidentAnalytics@4.0.0", + "description": "Retrieve enriched incident metrics for a specific responder.\n\n Provides detailed incident data and metrics such as Mean Resolve Time, Mean Engage Time, and more for a specified responder. Useful for analyzing responder performance. Note: Data updates every 24 hours.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "responder_id", + "type": "string", + "required": false, + "description": "The unique identifier of the responder whose incident metrics are to be retrieved. It is required to specify which responder's data is needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAnalyticsResponderIncidents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetResponderIncidentAnalytics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "responder_id": { + "value": "resp-123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"start_time\":\"2023-10-01T00:00:00Z\",\"end_time\":\"2023-10-07T23:59:59Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRuleset", + "qualifiedName": "PagerdutyApi.GetRuleset", + "fullyQualifiedName": "PagerdutyApi.GetRuleset@4.0.0", + "description": "Retrieve details of a ruleset from PagerDuty.\n\nFetch information about a specific ruleset, including event routing and actions. Useful for understanding or managing event rules within a ruleset. Note: Rulesets and Event Rules will be deprecated soon; consider migrating to Event Orchestration.", + "parameters": [ + { + "name": "ruleset_id", + "type": "string", + "required": true, + "description": "The unique identifier for the ruleset to retrieve from PagerDuty.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRuleset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetRuleset", + "parameters": { + "ruleset_id": { + "value": "12345abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRunnerTeamAssociation", + "qualifiedName": "PagerdutyApi.GetRunnerTeamAssociation", + "fullyQualifiedName": "PagerdutyApi.GetRunnerTeamAssociation@4.0.0", + "description": "Retrieve details of a runner and team relationship.\n\nCall this tool to obtain details about the relationship between a runner and a team within an automation actions context. Useful for understanding team assignments and runner affiliations.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the resource to fetch runner-team association details.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique ID representing the team for which the runner relation details are needed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationActionsRunnerTeamAssociation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetRunnerTeamAssociation", + "parameters": { + "resource_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRunnerTeamAssociations", + "qualifiedName": "PagerdutyApi.GetRunnerTeamAssociations", + "fullyQualifiedName": "PagerdutyApi.GetRunnerTeamAssociations@4.0.0", + "description": "Retrieve team references linked to a specific runner.\n\nFetches all team references linked to a specified automation actions runner in PagerDuty, helpful for understanding team associations for automation management.", + "parameters": [ + { + "name": "runner_resource_id", + "type": "string", + "required": true, + "description": "The ID of the automation actions runner to retrieve associated team references for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationActionsRunnerTeamAssociations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetRunnerTeamAssociations", + "parameters": { + "runner_resource_id": { + "value": "PABC1234", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetScheduleDetails", + "qualifiedName": "PagerdutyApi.GetScheduleDetails", + "fullyQualifiedName": "PagerdutyApi.GetScheduleDetails@4.0.0", + "description": "Retrieve detailed schedule information.\n\nFetch detailed information about a specific schedule, including entries for each layer. Use this tool to access comprehensive schedule details when needed.", + "parameters": [ + { + "name": "schedule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the schedule to retrieve details.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_schedule_overflow", + "type": "boolean", + "required": false, + "description": "If true, schedule entries can extend beyond date range bounds. Defaults to false, truncating entries at bounds.", + "enum": null, + "inferrable": true + }, + { + "name": "date_range_start", + "type": "string", + "required": false, + "description": "The start date for the schedule entries. Defaults to 2 weeks before the end date if not provided. Optional parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_for_schedule_entries", + "type": "string", + "required": false, + "description": "The end of the date range to display schedule entries. Defaults to 2 weeks after the start date if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "results_time_zone", + "type": "string", + "required": false, + "description": "The time zone in which the schedule results will be rendered. Defaults to the schedule's time zone if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id_for_next_oncall", + "type": "string", + "required": false, + "description": "Specify the `user_id` to get information about this user's next on-call schedule.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSchedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetScheduleDetails", + "parameters": { + "schedule_id": { + "value": "123456", + "type": "string", + "required": true + }, + "allow_schedule_overflow": { + "value": true, + "type": "boolean", + "required": false + }, + "date_range_start": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "end_date_for_schedule_entries": { + "value": "2023-10-14T23:59:59Z", + "type": "string", + "required": false + }, + "results_time_zone": { + "value": "America/New_York", + "type": "string", + "required": false + }, + "user_id_for_next_oncall": { + "value": "user_7890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetServiceCustomFieldInfo", + "qualifiedName": "PagerdutyApi.GetServiceCustomFieldInfo", + "fullyQualifiedName": "PagerdutyApi.GetServiceCustomFieldInfo@4.0.0", + "description": "Retrieve detailed information about a custom field for a service.\n\nUse this tool to get detailed information about a specific custom field associated with a service in PagerDuty. Requires OAuth scope: custom_fields.read.", + "parameters": [ + { + "name": "field_id", + "type": "string", + "required": true, + "description": "The unique identifier for the custom field you want to retrieve information about.", + "enum": null, + "inferrable": true + }, + { + "name": "include_field_details", + "type": "string", + "required": false, + "description": "Specify additional details to include, such as 'field_options'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getServiceCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetServiceCustomFieldInfo", + "parameters": { + "field_id": { + "value": "custom_field_12345", + "type": "string", + "required": true + }, + "include_field_details": { + "value": "field_options", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetServiceCustomFieldOption", + "qualifiedName": "PagerdutyApi.GetServiceCustomFieldOption", + "fullyQualifiedName": "PagerdutyApi.GetServiceCustomFieldOption@4.0.0", + "description": "Retrieve a service custom field option by field and option ID.\n\nUse this tool to get details of a specific custom field option within a service by providing the field and option IDs. Requires 'custom_fields.read' OAuth scope.", + "parameters": [ + { + "name": "field_id", + "type": "string", + "required": true, + "description": "The unique identifier for the field to which the custom option belongs. Required to fetch the specific field option.", + "enum": null, + "inferrable": true + }, + { + "name": "field_option_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the field option. Use to specify which custom field option to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getServiceCustomFieldOption'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetServiceCustomFieldOption", + "parameters": { + "field_id": { + "value": "12345", + "type": "string", + "required": true + }, + "field_option_identifier": { + "value": "option_A", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetServiceCustomFieldValues", + "qualifiedName": "PagerdutyApi.GetServiceCustomFieldValues", + "fullyQualifiedName": "PagerdutyApi.GetServiceCustomFieldValues@4.0.0", + "description": "Retrieve custom field values for a specific service.\n\nUse this tool to get custom field values associated with a specific service in PagerDuty. This is useful for accessing additional information formatted as custom fields. Requires appropriate OAuth scopes.", + "parameters": [ + { + "name": "service_id", + "type": "string", + "required": true, + "description": "The unique identifier for the PagerDuty service whose custom field values are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getServiceCustomFieldValues'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetServiceCustomFieldValues", + "parameters": { + "service_id": { + "value": "PABC123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetServiceDependencies", + "qualifiedName": "PagerdutyApi.GetServiceDependencies", + "fullyQualifiedName": "PagerdutyApi.GetServiceDependencies@4.0.0", + "description": "Fetch immediate dependencies of a technical service.\n\nThis tool retrieves all immediate dependencies of a specified technical service, also known as a service, using its ID. Useful for understanding service interconnections. Requires 'services.read' OAuth scope.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The ID of the technical service whose dependencies are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTechnicalServiceServiceDependencies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetServiceDependencies", + "parameters": { + "resource_id": { + "value": "service-1234", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetServiceDetails", + "qualifiedName": "PagerdutyApi.GetServiceDetails", + "fullyQualifiedName": "PagerdutyApi.GetServiceDetails@4.0.0", + "description": "Retrieve details about an existing service.\n\nFetch detailed information about a service, which may represent an application, component, or team for incident management. Useful for accessing specific service data when managing incidents.", + "parameters": [ + { + "name": "service_id", + "type": "string", + "required": true, + "description": "The unique identifier of the service to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "additional_details_to_include", + "type": "string", + "required": false, + "description": "Array of additional details to include, such as escalation policies, teams, auto pause notifications parameters, or integrations.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetServiceDetails", + "parameters": { + "service_id": { + "value": "ABC123XYZ", + "type": "string", + "required": true + }, + "additional_details_to_include": { + "value": "escalation_policies,integrations", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetServiceEventCacheData", + "qualifiedName": "PagerdutyApi.GetServiceEventCacheData", + "fullyQualifiedName": "PagerdutyApi.GetServiceEventCacheData@4.0.0", + "description": "Retrieve external data cache variable for event orchestration.\n\nThis tool retrieves the data of an `external_data` type Cache Variable for a specified Service Event Orchestration in PagerDuty. It is useful when you need to access stored values like strings, numbers, or booleans for use in event orchestration rules. OAuth scope `services.read` is required.", + "parameters": [ + { + "name": "cache_variable_id", + "type": "string", + "required": true, + "description": "The ID of the Cache Variable to retrieve data for, used in service event orchestration.", + "enum": null, + "inferrable": true + }, + { + "name": "service_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the service to retrieve the cache variable data from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getExternalDataCacheVarDataOnServiceOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetServiceEventCacheData", + "parameters": { + "cache_variable_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "service_identifier": { + "value": "service-xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetServiceEventCacheVariable", + "qualifiedName": "PagerdutyApi.GetServiceEventCacheVariable", + "fullyQualifiedName": "PagerdutyApi.GetServiceEventCacheVariable@4.0.0", + "description": "Get a cache variable for a service event orchestration.\n\nFetches stored event data from a service event orchestration cache variable, useful for conditions or actions in event orchestration rules.", + "parameters": [ + { + "name": "cache_variable_id", + "type": "string", + "required": true, + "description": "The unique identifier of the cache variable to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "service_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the service. Use this to specify the service whose event orchestration cache variable you want to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCacheVarOnServiceOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetServiceEventCacheVariable", + "parameters": { + "cache_variable_id": { + "value": "svc_cache_12345", + "type": "string", + "required": true + }, + "service_identifier": { + "value": "svc_id_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetServiceImpactsByUrlSlug", + "qualifiedName": "PagerdutyApi.GetServiceImpactsByUrlSlug", + "fullyQualifiedName": "PagerdutyApi.GetServiceImpactsByUrlSlug@4.0.0", + "description": "Retrieve impacted business services from a status dashboard.\n\nUse this tool to obtain business service impact details for status dashboards using a specific `url_slug`. It returns a sorted list of the most impacted services, limited to 200 entries.", + "parameters": [ + { + "name": "status_dashboard_url_slug", + "type": "string", + "required": true, + "description": "The URL slug for the specific status dashboard to retrieve service impacts from.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_fields", + "type": "string", + "required": false, + "description": "Specify whether to include additional fields such as highest impacting priority and total impacted count. Choose from 'services.highest_impacting_priority' or 'total_impacted_count'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStatusDashboardServiceImpactsByUrlSlug'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetServiceImpactsByUrlSlug", + "parameters": { + "status_dashboard_url_slug": { + "value": "example-status-dashboard", + "type": "string", + "required": true + }, + "include_additional_fields": { + "value": "total_impacted_count", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetServiceIntegrationDetails", + "qualifiedName": "PagerdutyApi.GetServiceIntegrationDetails", + "fullyQualifiedName": "PagerdutyApi.GetServiceIntegrationDetails@4.0.0", + "description": "Retrieve details about a specific service integration.\n\nThis tool retrieves details about an integration for a specified service in PagerDuty. Use this tool to find information about how an application, component, or team is integrated for incident management. Requires appropriate OAuth permissions.", + "parameters": [ + { + "name": "integration_id", + "type": "string", + "required": true, + "description": "The unique ID of the integration on the specified service in PagerDuty.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the service resource to retrieve integration details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_details", + "type": "string", + "required": false, + "description": "Specify additional details like 'services' or 'vendors' to include.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getServiceIntegration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetServiceIntegrationDetails", + "parameters": { + "integration_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "resource_id": { + "value": "service123", + "type": "string", + "required": true + }, + "include_additional_details": { + "value": "services", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetServiceOrchestration", + "qualifiedName": "PagerdutyApi.GetServiceOrchestration", + "fullyQualifiedName": "PagerdutyApi.GetServiceOrchestration@4.0.0", + "description": "Retrieve details of a service orchestration configuration.\n\nAccesses service orchestration details, including event rules and processing pathways within PagerDuty. Useful for understanding or modifying event escalation paths.", + "parameters": [ + { + "name": "service_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the service you want to retrieve orchestration details for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_models_in_response", + "type": "string", + "required": false, + "description": "Specify additional models like 'migrated_metadata' to include in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOrchPathService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetServiceOrchestration", + "parameters": { + "service_identifier": { + "value": "service-12345", + "type": "string", + "required": true + }, + "include_models_in_response": { + "value": "migrated_metadata", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetServiceOrchestrationStatus", + "qualifiedName": "PagerdutyApi.GetServiceOrchestrationStatus", + "fullyQualifiedName": "PagerdutyApi.GetServiceOrchestrationStatus@4.0.0", + "description": "Retrieve the active status of a Service Orchestration.\n\nThis tool is used to get the active status of a Service Orchestration, determining if the event evaluation is against a service orchestration path or service ruleset. Applicable for managing service paths and rulesets.", + "parameters": [ + { + "name": "service_id", + "type": "string", + "required": true, + "description": "The unique identifier for the service to check its orchestration status.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOrchActiveStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetServiceOrchestrationStatus", + "parameters": { + "service_id": { + "value": "svc-12345-abc", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetServiceReferencesForAutomationAction", + "qualifiedName": "PagerdutyApi.GetServiceReferencesForAutomationAction", + "fullyQualifiedName": "PagerdutyApi.GetServiceReferencesForAutomationAction@4.0.0", + "description": "Retrieve services linked to a specific automation action.\n\nUse this tool to obtain all service references associated with a given Automation Action. It's useful for understanding which services are connected to a particular action in your PagerDuty setup.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the automation action resource.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationActionsActionServiceAssociations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetServiceReferencesForAutomationAction", + "parameters": { + "resource_id": { + "value": "PABC123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStatusDashboard", + "qualifiedName": "PagerdutyApi.GetStatusDashboard", + "fullyQualifiedName": "PagerdutyApi.GetStatusDashboard@4.0.0", + "description": "Retrieve PagerDuty status dashboard details by ID.\n\nUse this tool to get detailed information about a specific PagerDuty status dashboard using its unique ID. This can be helpful for monitoring and analysis of service status.", + "parameters": [ + { + "name": "status_dashboard_id", + "type": "string", + "required": true, + "description": "The unique ID of the PagerDuty status dashboard to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStatusDashboardById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetStatusDashboard", + "parameters": { + "status_dashboard_id": { + "value": "SD123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStatusDashboardBySlug", + "qualifiedName": "PagerdutyApi.GetStatusDashboardBySlug", + "fullyQualifiedName": "PagerdutyApi.GetStatusDashboardBySlug@4.0.0", + "description": "Retrieve a PagerDuty Status Dashboard by its URL slug.\n\nUse this tool to get details of a custom Status Dashboard in PagerDuty using the URL slug. Ideal for accessing human-readable dashboard references.", + "parameters": [ + { + "name": "status_dashboard_url_slug", + "type": "string", + "required": true, + "description": "The URL slug for a status dashboard, typically a dash-separated string like 'dash-separated-string'. Used to identify a specific dashboard in PagerDuty.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStatusDashboardByUrlSlug'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetStatusDashboardBySlug", + "parameters": { + "status_dashboard_url_slug": { + "value": "example-status-dashboard", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStatusDashboards", + "qualifiedName": "PagerdutyApi.GetStatusDashboards", + "fullyQualifiedName": "PagerdutyApi.GetStatusDashboards@4.0.0", + "description": "Retrieve all custom Status Dashboard views for your account.\n\nUse this tool to get an overview of all Status Dashboard views configured in your PagerDuty account. Useful for monitoring and management purposes.", + "parameters": [], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listStatusDashboards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetStatusDashboards", + "parameters": {}, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStatusPageImpact", + "qualifiedName": "PagerdutyApi.GetStatusPageImpact", + "fullyQualifiedName": "PagerdutyApi.GetStatusPageImpact@4.0.0", + "description": "Retrieve impact details for a specific status page.\n\nThis tool retrieves impact information for a given status page using the status page ID and impact ID. It should be called when detailed impact data is needed for specific status pages. Requires `status_pages.read` OAuth scope.", + "parameters": [ + { + "name": "status_page_id", + "type": "string", + "required": true, + "description": "The ID of the status page resource to retrieve impact details for.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_impact_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Status Page Impact. Use this to fetch specific impact details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStatusPageImpact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetStatusPageImpact", + "parameters": { + "status_page_id": { + "value": "SP-123456", + "type": "string", + "required": true + }, + "status_page_impact_id": { + "value": "IMP-987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStatusPagePost", + "qualifiedName": "PagerdutyApi.GetStatusPagePost", + "fullyQualifiedName": "PagerdutyApi.GetStatusPagePost@4.0.0", + "description": "Retrieve a post from a specific status page.\n\nUse this tool to fetch detailed information about a specific post on a status page using the status page ID and post ID.", + "parameters": [ + { + "name": "status_page_id", + "type": "string", + "required": true, + "description": "The ID of the status page resource to retrieve the post from.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_post_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Status Page Post to retrieve details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_models", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of model names to include in the response for additional detail.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStatusPagePost'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetStatusPagePost", + "parameters": { + "status_page_id": { + "value": "abc1234", + "type": "string", + "required": true + }, + "status_page_post_id": { + "value": "post5678", + "type": "string", + "required": true + }, + "include_models": { + "value": ["post", "user"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStatusPageService", + "qualifiedName": "PagerdutyApi.GetStatusPageService", + "fullyQualifiedName": "PagerdutyApi.GetStatusPageService@4.0.0", + "description": "Get service details for a status page by ID and service ID.\n\nFetches and returns details of a specific service associated with a given status page using the status page ID and service ID. Useful for monitoring or auditing service statuses on PagerDuty status pages.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The ID of the status page resource to fetch the service for.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_service_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Status Page service to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStatusPageService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetStatusPageService", + "parameters": { + "resource_id": { + "value": "status_page_12345", + "type": "string", + "required": true + }, + "status_page_service_id": { + "value": "service_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStatusPageSeverity", + "qualifiedName": "PagerdutyApi.GetStatusPageSeverity", + "fullyQualifiedName": "PagerdutyApi.GetStatusPageSeverity@4.0.0", + "description": "Retrieve severity details for a status page using IDs.\n\nThis tool fetches the severity information for a given status page by using the status page ID and severity ID. It's useful for monitoring and managing incident details.", + "parameters": [ + { + "name": "status_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the status page resource.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_severity_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific severity on a status page. Used to fetch severity details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStatusPageSeverity'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetStatusPageSeverity", + "parameters": { + "status_page_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "status_page_severity_id": { + "value": "severity-456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStatusPageStatus", + "qualifiedName": "PagerdutyApi.GetStatusPageStatus", + "fullyQualifiedName": "PagerdutyApi.GetStatusPageStatus@4.0.0", + "description": "Retrieve the status of a status page by ID and status ID.\n\nUse this tool to get the current status of a specific status page by providing the page ID and status ID. Useful for monitoring and analyzing the current operational status of services.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the resource to fetch the status for.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_status_id", + "type": "string", + "required": true, + "description": "The ID of the Status Page status to retrieve. This is required to specify which status is being queried.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStatusPageStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetStatusPageStatus", + "parameters": { + "resource_id": { + "value": "abc-123-def-456", + "type": "string", + "required": true + }, + "status_page_status_id": { + "value": "status-789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetStatusPageSubscription", + "qualifiedName": "PagerdutyApi.GetStatusPageSubscription", + "fullyQualifiedName": "PagerdutyApi.GetStatusPageSubscription@4.0.0", + "description": "Retrieve a status page subscription by ID.\n\nFetch details of a specific subscription linked to a status page using the status page ID and subscription ID. This tool requires relevant OAuth permissions to access the data.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique ID of the status page resource to retrieve the subscription details.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_subscription_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Status Page subscription.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getStatusPageSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetStatusPageSubscription", + "parameters": { + "resource_id": { + "value": "abcd1234-efgh-5678-ijkl-mnopqrstuvwxyz", + "type": "string", + "required": true + }, + "status_page_subscription_id": { + "value": "sub_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTagDetails", + "qualifiedName": "PagerdutyApi.GetTagDetails", + "fullyQualifiedName": "PagerdutyApi.GetTagDetails@4.0.0", + "description": "Retrieve details about a specific PagerDuty Tag.\n\nUse this tool to obtain details about a specific Tag in PagerDuty, which can be associated with Escalation Policies, Teams, or Users for filtering purposes.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique ID of the PagerDuty Tag to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetTagDetails", + "parameters": { + "resource_id": { + "value": "P123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTagsByEntity", + "qualifiedName": "PagerdutyApi.GetTagsByEntity", + "fullyQualifiedName": "PagerdutyApi.GetTagsByEntity@4.0.0", + "description": "Retrieve related entities for a specific tag.\n\nCall this tool to get users, teams, or escalation policies related to a specific tag. Useful for filtering entities by tags. Appropriate for scenarios where you need to understand what entities a particular tag is associated with.", + "parameters": [ + { + "name": "entity_type", + "type": "string", + "required": true, + "description": "Specify the type of entity related to the tag. Options: 'users', 'teams', or 'escalation_policies'.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the resource to retrieve related entities for a tag.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_pagination", + "type": "boolean", + "required": false, + "description": "Set to true to include the total count of results in pagination responses, which may impact response times.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start pagination of search results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTagsByEntityType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetTagsByEntity", + "parameters": { + "entity_type": { + "value": "users", + "type": "string", + "required": true + }, + "resource_id": { + "value": "a1b2c3d4", + "type": "string", + "required": true + }, + "include_total_in_pagination": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTagsByEntityId", + "qualifiedName": "PagerdutyApi.GetTagsByEntityId", + "fullyQualifiedName": "PagerdutyApi.GetTagsByEntityId@4.0.0", + "description": "Retrieve tags for Users, Teams, or Escalation Policies.\n\nUse this tool to get tags related to a specific User, Team, or Escalation Policy by their ID. Useful for filtering and organizing entities based on applied tags.", + "parameters": [ + { + "name": "entity_id", + "type": "string", + "required": true, + "description": "The unique identifier of the resource for which to retrieve tags. This ID corresponds to a specific User, Team, or Escalation Policy.", + "enum": null, + "inferrable": true + }, + { + "name": "entity_type", + "type": "string", + "required": true, + "description": "Specifies the type of entity (users, teams, escalation_policies) to retrieve related tags for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to include the total number of results in the pagination response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "The offset position to start paginating search results. Useful for browsing through large sets of data.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page when retrieving tags.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEntityTypeByIdTags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetTagsByEntityId", + "parameters": { + "entity_id": { + "value": "user_12345", + "type": "string", + "required": true + }, + "entity_type": { + "value": "users", + "type": "string", + "required": true + }, + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamDetails", + "qualifiedName": "PagerdutyApi.GetTeamDetails", + "fullyQualifiedName": "PagerdutyApi.GetTeamDetails@4.0.0", + "description": "Retrieve details about a specified team.\n\nFetches information about an existing team, which includes users and escalation policies. Useful for understanding team composition and responsibilities within an organization.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique ID of the team to retrieve information for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_models", + "type": "string", + "required": false, + "description": "Specify additional models like 'privileges' to include in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetTeamDetails", + "parameters": { + "team_id": { + "value": "T123456", + "type": "string", + "required": true + }, + "include_additional_models": { + "value": "privileges", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamIncidentMetrics", + "qualifiedName": "PagerdutyApi.GetTeamIncidentMetrics", + "fullyQualifiedName": "PagerdutyApi.GetTeamIncidentMetrics@4.0.0", + "description": "Fetch aggregated incident metrics by team and time unit.\n\nUse this tool to obtain metrics such as Seconds to Resolve and Sleep Hour Interruptions for incidents, aggregated by team. Data can be grouped by day, week, or month, or summarized for a specific period for each team. A team or service ID filter is required for user-level API keys.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAnalyticsMetricsIncidentsTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetTeamIncidentMetrics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"team_id\":\"12345\",\"time_unit\":\"week\",\"start_date\":\"2023-01-01\",\"end_date\":\"2023-01-07\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamNotificationSubscriptions", + "qualifiedName": "PagerdutyApi.GetTeamNotificationSubscriptions", + "fullyQualifiedName": "PagerdutyApi.GetTeamNotificationSubscriptions@4.0.0", + "description": "Retrieve a team's notification subscriptions from PagerDuty.\n\nThis tool retrieves notification subscriptions for a specific team in PagerDuty. It should be called when you need to get a list of current notification subscriptions for a team that has been added through the notification subscriptions endpoint. Requires `subscribers.read` OAuth scope.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The ID of the team to retrieve notification subscriptions for. This must be a valid team ID added through the notification subscriptions endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeamNotificationSubscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetTeamNotificationSubscriptions", + "parameters": { + "team_id": { + "value": "T123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamReferencesForAutomationAction", + "qualifiedName": "PagerdutyApi.GetTeamReferencesForAutomationAction", + "fullyQualifiedName": "PagerdutyApi.GetTeamReferencesForAutomationAction@4.0.0", + "description": "Retrieve teams associated with a specific automation action.\n\nThis tool retrieves all team references linked to a given Automation Action. It's useful for understanding which teams are involved with or responsible for specific actions.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The ID of the Automation Action resource to retrieve associated teams for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationActionsActionTeamAssociations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetTeamReferencesForAutomationAction", + "parameters": { + "resource_id": { + "value": "A123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTemplateDetails", + "qualifiedName": "PagerdutyApi.GetTemplateDetails", + "fullyQualifiedName": "PagerdutyApi.GetTemplateDetails@4.0.0", + "description": "Retrieve details of a specific template using its ID.\n\nUse this tool to get detailed information about a specific template in your PagerDuty account. Ideal for checking template configurations or reviewing template information.", + "parameters": [ + { + "name": "template_id", + "type": "string", + "required": true, + "description": "The unique ID of the template to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetTemplateDetails", + "parameters": { + "template_id": { + "value": "T12345678", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTemplateFields", + "qualifiedName": "PagerdutyApi.GetTemplateFields", + "fullyQualifiedName": "PagerdutyApi.GetTemplateFields@4.0.0", + "description": "Retrieve fields for account templates.\n\nCall this tool to obtain a list of fields that can be used on account templates in PagerDuty. Requires `templates.read` OAuth scope.", + "parameters": [], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTemplateFields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetTemplateFields", + "parameters": {}, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTemplateList", + "qualifiedName": "PagerdutyApi.GetTemplateList", + "fullyQualifiedName": "PagerdutyApi.GetTemplateList@4.0.0", + "description": "Retrieve a list of all templates on an account.\n\nThis tool fetches all the templates available on a PagerDuty account. It should be called when you need to access or manage existing templates.", + "parameters": [ + { + "name": "filter_by_template_type", + "type": "string", + "required": false, + "description": "Specify the type of template to filter results by. Use this to narrow down the list to specific template types.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to include the total count of templates in the response. This may affect response time.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start pagination search results. Define where the returned list should begin.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of template results returned per page. Use this to control pagination size.", + "enum": null, + "inferrable": true + }, + { + "name": "search_template_query", + "type": "string", + "required": false, + "description": "Template name or description to search for in the templates list.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_field_and_direction", + "type": "string", + "required": false, + "description": "Specify the field ('name' or 'created_at') and direction ('asc' or 'desc') to sort results. Format: field:direction, defaulting to ascending.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTemplates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetTemplateList", + "parameters": { + "filter_by_template_type": { + "value": "incident", + "type": "string", + "required": false + }, + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "search_template_query": { + "value": "alert", + "type": "string", + "required": false + }, + "sort_by_field_and_direction": { + "value": "name:asc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTopLevelImpactorsForBusinessServices", + "qualifiedName": "PagerdutyApi.GetTopLevelImpactorsForBusinessServices", + "fullyQualifiedName": "PagerdutyApi.GetTopLevelImpactorsForBusinessServices@4.0.0", + "description": "Retrieve high-priority incidents impacting top-level business services.\n\nUse this tool to obtain a list of the most critical incidents (impactors) affecting the top-level business services in your account, up to a limit of 200. These incidents are sorted by priority and creation date. Utilize the `ids[]` parameter to specify particular business services.", + "parameters": [ + { + "name": "business_service_ids", + "type": "string", + "required": false, + "description": "List of business service IDs to fetch impactors for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBusinessServiceTopLevelImpactors'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetTopLevelImpactorsForBusinessServices", + "parameters": { + "business_service_ids": { + "value": "bs1,bs2,bs3", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUnroutedEventOrchestrationRules", + "qualifiedName": "PagerdutyApi.GetUnroutedEventOrchestrationRules", + "fullyQualifiedName": "PagerdutyApi.GetUnroutedEventOrchestrationRules@4.0.0", + "description": "Retrieve rules for unrouted event orchestration in PagerDuty.\n\nThis tool retrieves the set of rules used in a Global Event Orchestration for handling unrouted events in PagerDuty. It should be called to understand how events that don't match any global routing rules are processed, modified, or enhanced. The retrieved rules can provide insights into further event processing strategies.", + "parameters": [ + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Event Orchestration to retrieve unrouted event rules.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOrchPathUnrouted'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetUnroutedEventOrchestrationRules", + "parameters": { + "event_orchestration_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserActiveSessions", + "qualifiedName": "PagerdutyApi.GetUserActiveSessions", + "fullyQualifiedName": "PagerdutyApi.GetUserActiveSessions@4.0.0", + "description": "List active sessions of a specified PagerDuty user.\n\nUse this tool to retrieve a list of active sessions for a specific PagerDuty user. Note that active sessions do not include newly issued OAuth tokens as of November 2021. This information is useful for managing and interacting with user access within a PagerDuty account. Requires proper OAuth scope: `users:sessions.read`.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The ID of the PagerDuty user whose active sessions are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserSessions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetUserActiveSessions", + "parameters": { + "user_id": { + "value": "PABC123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserAuditRecords", + "qualifiedName": "PagerdutyApi.GetUserAuditRecords", + "fullyQualifiedName": "PagerdutyApi.GetUserAuditRecords@4.0.0", + "description": "Retrieve audit records for a specified user.\n\nThis tool fetches audit records related to changes made to a specified user in PagerDuty. The records are ordered by the latest execution time. Use this tool to track changes to a user's account or settings.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier for the user whose audit records are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_range", + "type": "string", + "required": false, + "description": "The end date for searching audit records. Defaults to now and cannot exceed 31 days after `since`.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Optional string to fetch the next set of results. Use the `next_cursor` from previous responses.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of audit records to retrieve in a single request.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "The start date for the search range. Defaults to 24 hours ago if not specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listUsersAuditRecords'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetUserAuditRecords", + "parameters": { + "user_id": { + "value": "12345", + "type": "string", + "required": true + }, + "end_date_range": { + "value": "2023-10-15T23:59:59Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "result_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "start_date": { + "value": "2023-10-14T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserContactMethodInfo", + "qualifiedName": "PagerdutyApi.GetUserContactMethodInfo", + "fullyQualifiedName": "PagerdutyApi.GetUserContactMethodInfo@4.0.0", + "description": "Retrieve details about a user's contact method in PagerDuty.\n\nUse this tool to obtain information on a specific user's contact method in a PagerDuty account. It provides details necessary for interacting with user incidents and related account data. Requires appropriate OAuth scope.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The ID of the user resource to retrieve contact method details for.", + "enum": null, + "inferrable": true + }, + { + "name": "user_contact_method_id", + "type": "string", + "required": true, + "description": "The unique identifier for a user's specific contact method in PagerDuty.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserContactMethod'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetUserContactMethodInfo", + "parameters": { + "resource_id": { + "value": "PABC123456", + "type": "string", + "required": true + }, + "user_contact_method_id": { + "value": "UCM7890XYZ", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserContactMethods", + "qualifiedName": "PagerdutyApi.GetUserContactMethods", + "fullyQualifiedName": "PagerdutyApi.GetUserContactMethods@4.0.0", + "description": "Retrieve a user's contact methods from PagerDuty.\n\nUse this tool to list the contact methods associated with a specific PagerDuty user. This information is useful for interacting with incidents and other account data.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The ID of the PagerDuty user whose contact methods are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserContactMethods'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetUserContactMethods", + "parameters": { + "user_id": { + "value": "PABC12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserDetails", + "qualifiedName": "PagerdutyApi.GetUserDetails", + "fullyQualifiedName": "PagerdutyApi.GetUserDetails@4.0.0", + "description": "Retrieve details about a specific PagerDuty user.\n\nThis tool is used to get detailed information about an existing user in a PagerDuty account. Useful for accessing user-specific data to manage interactions with incidents and other account activities.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific PagerDuty user whose details are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "additional_models_to_include", + "type": "string", + "required": false, + "description": "Specify additional models (e.g., 'contact_methods', 'notification_rules') to include in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetUserDetails", + "parameters": { + "user_id": { + "value": "PABC123456", + "type": "string", + "required": true + }, + "additional_models_to_include": { + "value": "contact_methods,notification_rules", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserHandoffNotificationRule", + "qualifiedName": "PagerdutyApi.GetUserHandoffNotificationRule", + "fullyQualifiedName": "PagerdutyApi.GetUserHandoffNotificationRule@4.0.0", + "description": "Fetch a user's handoff notification rule details.\n\nUse this tool to retrieve detailed information about a user's handoff notification rule in PagerDuty. It is useful for understanding user-specific notification settings related to on-call handoffs. Requires 'users.read' scope for OAuth.", + "parameters": [ + { + "name": "oncall_handoff_notification_rule_id", + "type": "string", + "required": true, + "description": "The ID of the oncall handoff notification rule for the user.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier for the user whose handoff notification rule details are being retrieved. This is required to specify the target user in PagerDuty.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserHandoffNotifiactionRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetUserHandoffNotificationRule", + "parameters": { + "oncall_handoff_notification_rule_id": { + "value": "12345abcdef", + "type": "string", + "required": true + }, + "user_id": { + "value": "user_67890xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserLicense", + "qualifiedName": "PagerdutyApi.GetUserLicense", + "fullyQualifiedName": "PagerdutyApi.GetUserLicense@4.0.0", + "description": "Retrieve the license allocated to a user.\n\nThis tool fetches the license information assigned to a specific user in the PagerDuty system. It should be called when there is a need to know the license status or allocation for a particular user. Requires appropriate OAuth scope.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier of the user to fetch license information for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserLicense'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetUserLicense", + "parameters": { + "user_id": { + "value": "PABC12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserNotificationRule", + "qualifiedName": "PagerdutyApi.GetUserNotificationRule", + "fullyQualifiedName": "PagerdutyApi.GetUserNotificationRule@4.0.0", + "description": "Retrieve details about a user's notification rule.\n\nThis tool retrieves information about a user's notification rule in a PagerDuty account. It should be called when you need to understand how a user is notified regarding incidents. OAuth scope required: `users:contact_methods.read`.", + "parameters": [ + { + "name": "notification_rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the user's notification rule to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier of the user in PagerDuty. Required to fetch their notification rule.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_details", + "type": "string", + "required": false, + "description": "Specify additional details to include such as 'contact_methods'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetUserNotificationRule", + "parameters": { + "notification_rule_id": { + "value": "P123456", + "type": "string", + "required": true + }, + "user_id": { + "value": "U789012", + "type": "string", + "required": true + }, + "include_additional_details": { + "value": "contact_methods", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserNotificationRules", + "qualifiedName": "PagerdutyApi.GetUserNotificationRules", + "fullyQualifiedName": "PagerdutyApi.GetUserNotificationRules@4.0.0", + "description": "Retrieve status update notification rules for a PagerDuty user.\n\nThis tool fetches the status update notification rules for a specified user on PagerDuty. Use it when you need to understand how a user is notified about status updates in their account.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier for the PagerDuty user whose notification rules are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_details", + "type": "string", + "required": false, + "description": "Specify additional details to include, such as 'contact_methods'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserStatusUpdateNotificationRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetUserNotificationRules", + "parameters": { + "user_id": { + "value": "PABC123456", + "type": "string", + "required": true + }, + "include_additional_details": { + "value": "contact_methods", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserNotificationSubscriptions", + "qualifiedName": "PagerdutyApi.GetUserNotificationSubscriptions", + "fullyQualifiedName": "PagerdutyApi.GetUserNotificationSubscriptions@4.0.0", + "description": "Retrieve a user's notification subscriptions.\n\nFetches the list of notification subscriptions for a specified user. Useful for checking what notifications a user is subscribed to. Requires that users be added through the appropriate endpoint beforehand and requires the 'subscribers.read' OAuth scope.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier for the user whose notification subscriptions are being retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserNotificationSubscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetUserNotificationSubscriptions", + "parameters": { + "user_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserSessionDetails", + "qualifiedName": "PagerdutyApi.GetUserSessionDetails", + "fullyQualifiedName": "PagerdutyApi.GetUserSessionDetails@4.0.0", + "description": "Fetches details about a specific PagerDuty user session.\n\nUse this tool to retrieve details of a user's session in PagerDuty. Useful for understanding user access and activity, especially in managing incidents and data interaction within an account.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique ID of the PagerDuty user whose session details you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "session_type", + "type": "string", + "required": true, + "description": "Specifies the type of the user session. This information is required to identify the nature of the session for the user session ID.", + "enum": null, + "inferrable": true + }, + { + "name": "user_session_id", + "type": "string", + "required": true, + "description": "The unique session ID for a specific PagerDuty user to retrieve session details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserSession'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetUserSessionDetails", + "parameters": { + "resource_id": { + "value": "P123456", + "type": "string", + "required": true + }, + "session_type": { + "value": "web", + "type": "string", + "required": true + }, + "user_session_id": { + "value": "session_7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserStatusUpdateNotificationRule", + "qualifiedName": "PagerdutyApi.GetUserStatusUpdateNotificationRule", + "fullyQualifiedName": "PagerdutyApi.GetUserStatusUpdateNotificationRule@4.0.0", + "description": "Get details about a user's status update notification rule.\n\nCall this tool to retrieve information regarding a specific user's notification settings for status updates within a PagerDuty account. Useful for managing or reviewing user-specific notification rules. Requires user's ID and the rule ID.", + "parameters": [ + { + "name": "status_update_notification_rule_id", + "type": "string", + "required": true, + "description": "The ID of the user's status update notification rule to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier of the user whose notification rule details are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "include_contact_methods", + "type": "string", + "required": false, + "description": "Specify 'contact_methods' to include additional contact method details in the response. Leave empty if no additional details are needed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserStatusUpdateNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetUserStatusUpdateNotificationRule", + "parameters": { + "status_update_notification_rule_id": { + "value": "rule_12345", + "type": "string", + "required": true + }, + "user_id": { + "value": "user_67890", + "type": "string", + "required": true + }, + "include_contact_methods": { + "value": "contact_methods", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetVendorDetails", + "qualifiedName": "PagerdutyApi.GetVendorDetails", + "fullyQualifiedName": "PagerdutyApi.GetVendorDetails@4.0.0", + "description": "Fetch detailed information about a specific vendor on PagerDuty.\n\nUse this tool to retrieve details about a specific vendor integrated with PagerDuty, like AWS Cloudwatch, Splunk, or Datadog. Useful for understanding integration types.", + "parameters": [ + { + "name": "vendor_id", + "type": "string", + "required": true, + "description": "The unique identifier for the vendor whose details are being requested.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getVendor'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetVendorDetails", + "parameters": { + "vendor_id": { + "value": "aws-cloudwatch-123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWebhookSubscriptionDetails", + "qualifiedName": "PagerdutyApi.GetWebhookSubscriptionDetails", + "fullyQualifiedName": "PagerdutyApi.GetWebhookSubscriptionDetails@4.0.0", + "description": "Retrieve details about a specific webhook subscription.\n\nUse this tool to get detailed information about an existing webhook subscription using its ID. Requires appropriate OAuth permissions.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the webhook subscription to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWebhookSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetWebhookSubscriptionDetails", + "parameters": { + "resource_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkflowConnections", + "qualifiedName": "PagerdutyApi.GetWorkflowConnections", + "fullyQualifiedName": "PagerdutyApi.GetWorkflowConnections@4.0.0", + "description": "Retrieve connections for a specific workflow integration.\n\nUse this tool to list all workflow integration connections for a specified workflow integration. This requires the appropriate OAuth scope for access.", + "parameters": [ + { + "name": "workflow_integration_id", + "type": "string", + "required": true, + "description": "Specify the unique ID of the workflow integration to retrieve its connections.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_partial_name", + "type": "string", + "required": false, + "description": "Filter integrations by a partial name match. Provide part of the integration name to refine results.", + "enum": null, + "inferrable": true + }, + { + "name": "next_result_cursor", + "type": "string", + "required": false, + "description": "Request the next set of results using the cursor obtained from a previous response. Leave empty to start from the beginning.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of results to return. It is the minimum of the request's limit or the API's maximum request size.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listWorkflowIntegrationConnectionsByIntegration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetWorkflowConnections", + "parameters": { + "workflow_integration_id": { + "value": "wfi_1234567890", + "type": "string", + "required": true + }, + "filter_by_partial_name": { + "value": "alert", + "type": "string", + "required": false + }, + "next_result_cursor": { + "value": "cursor123", + "type": "string", + "required": false + }, + "result_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkflowIntegrationConnectionDetails", + "qualifiedName": "PagerdutyApi.GetWorkflowIntegrationConnectionDetails", + "fullyQualifiedName": "PagerdutyApi.GetWorkflowIntegrationConnectionDetails@4.0.0", + "description": "Retrieve details of a Workflow Integration Connection.\n\nThis tool fetches details about a specific Workflow Integration Connection using its ID. It's useful for obtaining information on connected workflows via PagerDuty.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique ID of the Workflow Integration Connection resource.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_integration_id", + "type": "string", + "required": true, + "description": "The unique ID of the Workflow Integration to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWorkflowIntegrationConnection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetWorkflowIntegrationConnectionDetails", + "parameters": { + "resource_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "workflow_integration_id": { + "value": "workflow7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetWorkflowIntegrationDetails", + "qualifiedName": "PagerdutyApi.GetWorkflowIntegrationDetails", + "fullyQualifiedName": "PagerdutyApi.GetWorkflowIntegrationDetails@4.0.0", + "description": "Retrieve details about a PagerDuty workflow integration.\n\nUse this tool to get detailed information about a specific workflow integration in PagerDuty. Useful for understanding integration configurations and parameters.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the workflow integration resource in PagerDuty that you want to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWorkflowIntegration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.GetWorkflowIntegrationDetails", + "parameters": { + "resource_id": { + "value": "PD-WORKFLOW-123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "InstallPagerdutyAddon", + "qualifiedName": "PagerdutyApi.InstallPagerdutyAddon", + "fullyQualifiedName": "PagerdutyApi.InstallPagerdutyAddon@4.0.0", + "description": "Install an add-on for your PagerDuty account.\n\nUse this tool to install a new add-on in your PagerDuty account. The add-on is a functional component embedded via an iframe URL provided in the configuration. This allows users to access it from a drop-down menu in PagerDuty's UI. Requires 'addons.write' OAuth scope.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createAddon'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.InstallPagerdutyAddon", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"addon_name\":\"Example Add-on\",\"iframe_url\":\"https://example.com/addon\",\"description\":\"This is an example add-on for demonstration.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "InvokeAutomationAction", + "qualifiedName": "PagerdutyApi.InvokeAutomationAction", + "fullyQualifiedName": "PagerdutyApi.InvokeAutomationAction@4.0.0", + "description": "Triggers an automation action in PagerDuty.\n\nUse this tool to invoke an automation action in PagerDuty by specifying the action ID in the URL path. Ideal for automating processes or triggering predefined workflows.", + "parameters": [ + { + "name": "incident_id", + "type": "string", + "required": true, + "description": "The ID of the incident associated with the automation action invocation. This ties the action to a specific incident.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the resource to be invoked.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_id_metadata", + "type": "string", + "required": false, + "description": "The alert ID to be used in the invocation metadata for the automation action. This identifier specifies which alert is associated with the action.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createAutomationActionInvocation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.InvokeAutomationAction", + "parameters": { + "incident_id": { + "value": "P123456", + "type": "string", + "required": true + }, + "resource_id": { + "value": "R987654", + "type": "string", + "required": true + }, + "alert_id_metadata": { + "value": "A456789", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAccountLicenses", + "qualifiedName": "PagerdutyApi.ListAccountLicenses", + "fullyQualifiedName": "PagerdutyApi.ListAccountLicenses@4.0.0", + "description": "Retrieve the list of licenses for your account.\n\nUse this tool to obtain a list of licenses associated with your PagerDuty account. This can be useful for managing permissions and understanding the resources available to your account. Requires the `licenses.read` OAuth scope.", + "parameters": [], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listLicenses'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListAccountLicenses", + "parameters": {}, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAccountTags", + "qualifiedName": "PagerdutyApi.ListAccountTags", + "fullyQualifiedName": "PagerdutyApi.ListAccountTags@4.0.0", + "description": "Retrieve all tags for your account.\n\nThis tool retrieves a list of all tags associated with your account, which can be applied to Escalation Policies, Teams, or Users. Use this tool to manage or filter these entities based on tags.", + "parameters": [ + { + "name": "include_total_in_pagination", + "type": "boolean", + "required": false, + "description": "Set to true to include the total number of results in the pagination response. Defaults to false for faster response without total.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start pagination search results. Use this to specify the starting point for retrieval when paginating through results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_filter_query", + "type": "string", + "required": false, + "description": "Filters the results to show only tags whose labels match this query string.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listTags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListAccountTags", + "parameters": { + "include_total_in_pagination": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "tag_filter_query": { + "value": "urgent", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAddons", + "qualifiedName": "PagerdutyApi.ListAddons", + "fullyQualifiedName": "PagerdutyApi.ListAddons@4.0.0", + "description": "Retrieve all installed add-ons on your PagerDuty account.\n\nUse this tool to list all the add-ons currently installed on your PagerDuty account. Add-ons provide additional functionality by integrating into PagerDuty's UI. This tool is useful for understanding what add-ons are available and active on your account. Requires `addons.read` OAuth scope.", + "parameters": [ + { + "name": "addon_type_filter", + "type": "string", + "required": false, + "description": "Filters the results, showing only Add-ons of the specified type, such as 'full_page_addon' or 'incident_show_addon'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_service_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of service IDs to filter results, showing only Add-ons for these services.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_models", + "type": "string", + "required": false, + "description": "Specify additional models to include in the response, such as 'services'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_field", + "type": "boolean", + "required": false, + "description": "Set to true to include the total count of results in the response, which can affect response times.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_offset", + "type": "integer", + "required": false, + "description": "Offset to start pagination of search results. This determines where to begin the list of add-ons.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAddon'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListAddons", + "parameters": { + "addon_type_filter": { + "value": "full_page_addon", + "type": "string", + "required": false + }, + "filter_by_service_ids": { + "value": ["PABC123", "PXYZ789"], + "type": "array", + "required": false + }, + "include_additional_models": { + "value": "services", + "type": "string", + "required": false + }, + "include_total_field": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_start_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAlertGroupingSettings", + "qualifiedName": "PagerdutyApi.ListAlertGroupingSettings", + "fullyQualifiedName": "PagerdutyApi.ListAlertGroupingSettings@4.0.0", + "description": "Retrieve all alert grouping settings.\n\nThis tool retrieves all alert grouping settings, including single service and global content-based configurations. It is useful for managing and reviewing alert grouping configurations in PagerDuty.", + "parameters": [ + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to include the total number of records in the response; default is null for faster responses.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_after", + "type": "string", + "required": false, + "description": "Cursor to retrieve the next page of results; used if additional data pages exist.", + "enum": null, + "inferrable": true + }, + { + "name": "previous_page_cursor", + "type": "string", + "required": false, + "description": "Cursor to retrieve the previous page; use only if not on the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of alert grouping settings to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "service_id_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of service IDs to filter results. Only results for these IDs will be returned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAlertGroupingSettings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListAlertGroupingSettings", + "parameters": { + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_cursor_after": { + "value": "abc123", + "type": "string", + "required": false + }, + "previous_page_cursor": { + "value": "xyz789", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "service_id_list": { + "value": ["service_1", "service_2", "service_3"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAllVendors", + "qualifiedName": "PagerdutyApi.ListAllVendors", + "fullyQualifiedName": "PagerdutyApi.ListAllVendors@4.0.0", + "description": "Retrieve a list of all vendor integrations.\n\nUse this tool to get a list of all vendors representing specific types of integrations like AWS Cloudwatch, Splunk, and Datadog. Useful for viewing available integration options.", + "parameters": [ + { + "name": "include_total_in_pagination", + "type": "boolean", + "required": false, + "description": "Set to true to populate the `total` field in pagination responses, which provides the total number of results but may affect performance.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset for starting pagination of the search results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of vendor results to return per page. Use to control pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listVendors'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListAllVendors", + "parameters": { + "include_total_in_pagination": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAuditRecords", + "qualifiedName": "PagerdutyApi.ListAuditRecords", + "fullyQualifiedName": "PagerdutyApi.ListAuditRecords@4.0.0", + "description": "Retrieve audit trail records from PagerDuty.\n\nUse this tool to list audit trail records from PagerDuty based on specified query parameters or default criteria. Only accessible by admins, account owners, or authorized tokens on specific pricing plans. Records are sorted by execution time, from newest to oldest. Useful for tracking changes and activities within the system.", + "parameters": [ + { + "name": "action_filters", + "type": "string", + "required": false, + "description": "Filter the audit records by specific actions such as 'create', 'update', or 'delete'.", + "enum": null, + "inferrable": true + }, + { + "name": "actor_type_filter", + "type": "string", + "required": false, + "description": "Specifies the type of actor to filter the audit records by. Acceptable values are 'user_reference', 'api_key_reference', or 'app_reference'.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_range", + "type": "string", + "required": false, + "description": "Specifies the end date for the audit record search. Defaults to now if not specified and cannot exceed 31 days after the start date.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_actor_id", + "type": "string", + "required": false, + "description": "Filter audit records by actor ID. Requires `actor_type` to be specified.", + "enum": null, + "inferrable": true + }, + { + "name": "method_truncated_token", + "type": "string", + "required": false, + "description": "Filter records by method truncated token. Requires 'method_type' parameter for qualification.", + "enum": null, + "inferrable": true + }, + { + "name": "method_type_filter", + "type": "string", + "required": false, + "description": "Specify the method type for filtering audit records. Options include 'browser', 'oauth', 'api_token', 'identity_provider', and 'other'.", + "enum": null, + "inferrable": true + }, + { + "name": "next_result_cursor", + "type": "string", + "required": false, + "description": "Use this to fetch the next set of results. Typically acquired from the `next_cursor` of the prior request. If not provided, it starts from the beginning of the result set.", + "enum": null, + "inferrable": true + }, + { + "name": "record_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of audit records to return. It is either the requested limit or the API's maximum request size.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type_filter", + "type": "string", + "required": false, + "description": "Filter records by specified root resource types such as users, teams, or services.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "The start date for the search range. Defaults to 24 hours ago if not specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAuditRecords'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListAuditRecords", + "parameters": { + "action_filters": { + "value": "update", + "type": "string", + "required": false + }, + "actor_type_filter": { + "value": "user_reference", + "type": "string", + "required": false + }, + "end_date_range": { + "value": "2023-10-20T23:59:59Z", + "type": "string", + "required": false + }, + "filter_by_actor_id": { + "value": "actor_12345", + "type": "string", + "required": false + }, + "method_truncated_token": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "method_type_filter": { + "value": "api_token", + "type": "string", + "required": false + }, + "next_result_cursor": { + "value": "cursor_78910", + "type": "string", + "required": false + }, + "record_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "resource_type_filter": { + "value": "users", + "type": "string", + "required": false + }, + "start_date": { + "value": "2023-10-19T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAutomationActionInvocations", + "qualifiedName": "PagerdutyApi.ListAutomationActionInvocations", + "fullyQualifiedName": "PagerdutyApi.ListAutomationActionInvocations@4.0.0", + "description": "Retrieve a list of automation action invocations.\n\nCall this tool to obtain a list of automation action invocations from PagerDuty. This can be useful for tracking and managing automation actions within your system.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": false, + "description": "The unique identifier for the action to filter invocations by.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_invocation_state", + "type": "string", + "required": false, + "description": "Filter out invocations not in the specified state. Supported states: prepared, created, sent, queued, running, aborted, completed, error, unknown.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_invocation_state", + "type": "string", + "required": false, + "description": "Filter the invocations by their state. Options include 'prepared', 'created', 'sent', 'queued', 'running', 'aborted', 'completed', 'error', or 'unknown'.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_id", + "type": "string", + "required": false, + "description": "The unique identifier for the incident. Use this to filter invocations related to a specific incident.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAutomationActionInvocations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListAutomationActionInvocations", + "parameters": { + "action_id": { + "value": "ABCD1234EFGH", + "type": "string", + "required": false + }, + "exclude_invocation_state": { + "value": "completed", + "type": "string", + "required": false + }, + "filter_by_invocation_state": { + "value": "running", + "type": "string", + "required": false + }, + "incident_id": { + "value": "INC987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAutomationActionRunners", + "qualifiedName": "PagerdutyApi.ListAutomationActionRunners", + "fullyQualifiedName": "PagerdutyApi.ListAutomationActionRunners@4.0.0", + "description": "Retrieve a list of Automation Action runners.\n\nFetches and lists the Automation Action runners that match provided query parameters, sorted by runner name. Useful for managing and reviewing automation runners on PagerDuty.", + "parameters": [ + { + "name": "include_additional_data_elements", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of additional data elements to include in the response. Each entry should be a string representing the type of data element to include.", + "enum": null, + "inferrable": true + }, + { + "name": "next_cursor", + "type": "string", + "required": false, + "description": "Optional cursor for requesting the next set of results. Use the value obtained from a previous response's `next_cursor`. If not provided, retrieval starts from the beginning.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of Automation Action runners to return in the response. The actual response will have a minimum of this limit or the maximum allowed by the API.", + "enum": null, + "inferrable": true + }, + { + "name": "runner_name_filter", + "type": "string", + "required": false, + "description": "Filter results to include Automation Action runners with names matching this substring (case insensitive).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAutomationActionsRunners'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListAutomationActionRunners", + "parameters": { + "include_additional_data_elements": { + "value": ["description", "status"], + "type": "array", + "required": false + }, + "next_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "result_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "runner_name_filter": { + "value": "exampleRunner", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAutomationActions", + "qualifiedName": "PagerdutyApi.ListAutomationActions", + "fullyQualifiedName": "PagerdutyApi.ListAutomationActions@4.0.0", + "description": "Retrieve all automation actions with optional query filters.\n\nUse this tool to list all available automation actions from PagerDuty, filtered by any specified query parameters. Results are sorted alphabetically by action name and can be paginated.", + "parameters": [ + { + "name": "classification_filter", + "type": "string", + "required": false, + "description": "Filters results to include only those matching the specified classification, such as 'diagnostic' or 'remediation'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_action_type", + "type": "string", + "required": false, + "description": "Filter results to include only those matching the specified action type. Accepts 'script' or 'process_automation'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_name", + "type": "string", + "required": false, + "description": "Filters results to include actions matching the specified name using case insensitive substring matching.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_runner_id", + "type": "string", + "required": false, + "description": "Filter results to include actions linked to a specific runner. Use 'any' to include only those linked to any runner, excluding unlinked actions.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_service_id", + "type": "string", + "required": false, + "description": "Filters results to include only those actions associated with the specified service ID.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_team_id", + "type": "string", + "required": false, + "description": "Filters results to include actions associated with a specified team by providing its ID.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "Maximum number of results to return, limited by the API's maximum request size.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_cursor", + "type": "string", + "required": false, + "description": "Cursor to request the next set of results, typically obtained from the previous response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAllAutomationActions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListAutomationActions", + "parameters": { + "classification_filter": { + "value": "remediation", + "type": "string", + "required": false + }, + "filter_by_action_type": { + "value": "script", + "type": "string", + "required": false + }, + "filter_by_name": { + "value": "restart", + "type": "string", + "required": false + }, + "filter_by_runner_id": { + "value": "any", + "type": "string", + "required": false + }, + "filter_by_service_id": { + "value": "PD12345", + "type": "string", + "required": false + }, + "filter_by_team_id": { + "value": "team678", + "type": "string", + "required": false + }, + "max_results": { + "value": 50, + "type": "integer", + "required": false + }, + "next_page_cursor": { + "value": "cursor123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListBusinessServices", + "qualifiedName": "PagerdutyApi.ListBusinessServices", + "fullyQualifiedName": "PagerdutyApi.ListBusinessServices@4.0.0", + "description": "Retrieve a list of existing business services.\n\nUse this tool to obtain a comprehensive list of business services, which model capabilities spanning multiple technical services and are often owned by different teams. Beneficial for understanding service inventory and management.", + "parameters": [ + { + "name": "include_total_count", + "type": "boolean", + "required": false, + "description": "Set to true to include the total count of results in the pagination response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start pagination of the search results. Use this to skip a set number of entries.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to display on each page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listBusinessServices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListBusinessServices", + "parameters": { + "include_total_count": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCacheVariables", + "qualifiedName": "PagerdutyApi.ListCacheVariables", + "fullyQualifiedName": "PagerdutyApi.ListCacheVariables@4.0.0", + "description": "Retrieve cache variables for a global event orchestration.\n\nThis tool retrieves cache variables stored for a global event orchestration, which can be used in orchestration rules for conditions or actions. Useful for managing and evaluating event data.", + "parameters": [ + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The unique identifier for an Event Orchestration to retrieve its cache variables.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listCacheVarOnGlobalOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListCacheVariables", + "parameters": { + "event_orchestration_id": { + "value": "abc123-event-orchestration", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCacheVariablesForServiceEventOrchestration", + "qualifiedName": "PagerdutyApi.ListCacheVariablesForServiceEventOrchestration", + "fullyQualifiedName": "PagerdutyApi.ListCacheVariablesForServiceEventOrchestration@4.0.0", + "description": "Retrieve cache variables for service event orchestration.\n\nUse this tool to obtain a list of cache variables associated with a specific service event orchestration in PagerDuty. Cache variables store event data and are utilized in orchestration rules. This tool should be called when you need to access or manage cache variables for event orchestration.", + "parameters": [ + { + "name": "service_id", + "type": "string", + "required": true, + "description": "The unique identifier of the service. It specifies which service's event orchestration cache variables to list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listCacheVarOnServiceOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListCacheVariablesForServiceEventOrchestration", + "parameters": { + "service_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListChangeEvents", + "qualifiedName": "PagerdutyApi.ListChangeEvents", + "fullyQualifiedName": "PagerdutyApi.ListChangeEvents@4.0.0", + "description": "Fetch a list of existing change events from PagerDuty.\n\nUse this tool to retrieve all current change events. Useful for monitoring and tracking changes within systems integrated with PagerDuty.", + "parameters": [ + { + "name": "end_date_utc", + "type": "string", + "required": false, + "description": "The end date in UTC ISO 8601 format for the date range to search. Note: Must be a valid UTC string.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_pagination", + "type": "boolean", + "required": false, + "description": "Set to true to include the total count of results in pagination responses, which is null by default.", + "enum": null, + "inferrable": true + }, + { + "name": "integration_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of integration IDs; filters results to these integrations.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start retrieving paginated search results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of change event results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_time_utc", + "type": "string", + "required": false, + "description": "The start date and time for searching change events, in UTC ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "team_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of team IDs. Filters results to those teams. Requires 'teams' ability.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listChangeEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListChangeEvents", + "parameters": { + "end_date_utc": { + "value": "2023-10-31T23:59:59Z", + "type": "string", + "required": false + }, + "include_total_in_pagination": { + "value": true, + "type": "boolean", + "required": false + }, + "integration_ids": { + "value": ["integration_123", "integration_456"], + "type": "array", + "required": false + }, + "pagination_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "start_date_time_utc": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "team_ids": { + "value": ["team_789", "team_101"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCustomFieldOptions", + "qualifiedName": "PagerdutyApi.ListCustomFieldOptions", + "fullyQualifiedName": "PagerdutyApi.ListCustomFieldOptions@4.0.0", + "description": "Retrieve options for a custom field in an incident type.\n\nThis tool retrieves a list of field options for a custom field associated with a specific incident type. It helps in extending incidents with custom data for better filtering, search, and analytics.", + "parameters": [ + { + "name": "field_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the custom field.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_type_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the Incident Type for which to retrieve custom field options.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listIncidentTypeCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListCustomFieldOptions", + "parameters": { + "field_identifier": { + "value": "custom_field_123", + "type": "string", + "required": true + }, + "incident_type_identifier": { + "value": "incident_type_xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEscalationPolicies", + "qualifiedName": "PagerdutyApi.ListEscalationPolicies", + "fullyQualifiedName": "PagerdutyApi.ListEscalationPolicies@4.0.0", + "description": "Retrieve all current escalation policies.\n\nUse this tool to obtain a list of all existing escalation policies, which define alerting priorities for users. Requires appropriate OAuth scope for access.", + "parameters": [ + { + "name": "additional_models_to_include", + "type": "string", + "required": false, + "description": "Array of models to include in the response. Options: 'services', 'teams', 'targets'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filters the results to show only escalation policies where any specified user is a target. Provide an array of user IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_pagination", + "type": "boolean", + "required": false, + "description": "Set to true to include the total count of records in the pagination response. False ensures faster response times by setting it to null.", + "enum": null, + "inferrable": true + }, + { + "name": "name_filter_query", + "type": "string", + "required": false, + "description": "A string to filter results by matching escalation policy names.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start pagination for search results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of escalation policy results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_field", + "type": "string", + "required": false, + "description": "Specify the sorting field for results: 'name', 'name:asc', or 'name:desc'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of team IDs to filter escalation policies. Requires 'teams' ability.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listEscalationPolicies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListEscalationPolicies", + "parameters": { + "additional_models_to_include": { + "value": "services,teams", + "type": "string", + "required": false + }, + "filter_by_user_ids": { + "value": ["12345", "67890"], + "type": "array", + "required": false + }, + "include_total_in_pagination": { + "value": true, + "type": "boolean", + "required": false + }, + "name_filter_query": { + "value": "Critical", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "sort_by_field": { + "value": "name:asc", + "type": "string", + "required": false + }, + "team_ids": { + "value": ["team1", "team2"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEventOrchestrationEnablings", + "qualifiedName": "PagerdutyApi.ListEventOrchestrationEnablings", + "fullyQualifiedName": "PagerdutyApi.ListEventOrchestrationEnablings@4.0.0", + "description": "Retrieve feature enablement settings for Event Orchestrations.\n\nThis tool retrieves all feature enablement settings for a specific Event Orchestration in PagerDuty, currently focusing on AIOps enablement. It should be used to check which AIOps features are enabled for an Event Orchestration. Note: A warning will be returned if the account is not entitled to use AIOps features.", + "parameters": [ + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The unique identifier for a specific Event Orchestration in PagerDuty. This is required to retrieve its feature enablement settings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listEventOrchestrationFeatureEnablements'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListEventOrchestrationEnablings", + "parameters": { + "event_orchestration_id": { + "value": "abc123-def456-ghi789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEventOrchestrations", + "qualifiedName": "PagerdutyApi.ListEventOrchestrations", + "fullyQualifiedName": "PagerdutyApi.ListEventOrchestrations@4.0.0", + "description": "Retrieve all Global Event Orchestrations from an account.\n\nThis tool lists all Global Event Orchestrations on an account, allowing you to manage and view the defined sets of Global and Router Rules that determine event actions and service routing. Call this tool to access orchestration details, which require 'event_orchestrations.read' OAuth scope.", + "parameters": [ + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "The starting point for pagination in search results, specified as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page when listing the Global Event Orchestrations.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_field_with_order", + "type": "string", + "required": false, + "description": "Specify the field and order (asc/desc) for sorting results. Options include: 'name:asc', 'name:desc', 'routes:asc', 'routes:desc', 'created_at:asc', 'created_at:desc'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listEventOrchestrations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListEventOrchestrations", + "parameters": { + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_field_with_order": { + "value": "created_at:asc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEventRules", + "qualifiedName": "PagerdutyApi.ListEventRules", + "fullyQualifiedName": "PagerdutyApi.ListEventRules@4.0.0", + "description": "Retrieve all event rules within a specified ruleset.\n\nThis tool lists all event rules associated with a specified ruleset on PagerDuty. It should be called to view actions based on event content within a ruleset. Note that rulesets and event rules will soon be deprecated, and migrating to Event Orchestration is recommended.", + "parameters": [ + { + "name": "ruleset_id", + "type": "string", + "required": true, + "description": "The unique identifier for the ruleset to list event rules from.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to include the total number of results in the pagination response. This may impact response time.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_offset", + "type": "integer", + "required": false, + "description": "The starting point for pagination to begin returning results from a specific offset.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listRulesetEventRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListEventRules", + "parameters": { + "ruleset_id": { + "value": "RS123456", + "type": "string", + "required": true + }, + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_start_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListExistingIncidents", + "qualifiedName": "PagerdutyApi.ListExistingIncidents", + "fullyQualifiedName": "PagerdutyApi.ListExistingIncidents@4.0.0", + "description": "Retrieve a list of existing incidents.\n\nFetches a list of incidents that represent problems needing resolution. Useful for monitoring and addressing ongoing issues.", + "parameters": [ + { + "name": "additional_details_to_include", + "type": "string", + "required": false, + "description": "Array of additional details to include in the incident list, such as 'acknowledgers', 'agents', 'assignees', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "assigned_user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Return incidents currently assigned to specific users by providing their user IDs. Only incidents with statuses 'triggered' or 'acknowledged' are returned. Resolved incidents are not included.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_range", + "type": "string", + "required": false, + "description": "The end date of the range for searching incidents. Maximum range is 6 months; default is 1 month.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_team_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of team IDs to filter incidents. Requires `teams` ability.", + "enum": null, + "inferrable": true + }, + { + "name": "ignore_since_until_date_range", + "type": "string", + "required": false, + "description": "Set to 'all' to ignore the 'since' and 'until' parameters, extending the search to all dates.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_deduplication_key", + "type": "string", + "required": false, + "description": "A unique key to identify and retrieve specific incidents. Useful for querying by matching alert keys.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_statuses", + "type": "string", + "required": false, + "description": "Specify the list of incident statuses to filter by, such as 'triggered', 'acknowledged', or 'resolved'.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_urgencies", + "type": "string", + "required": false, + "description": "Array of incident urgencies to filter results by. Valid values are 'high' or 'low'. Defaults to all urgencies.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to include the total number of incidents in the response, which may reduce response speed.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start pagination of the incident search results. Specify the number of entries to skip before starting to collect the result set.", + "enum": null, + "inferrable": true + }, + { + "name": "render_time_zone", + "type": "string", + "required": false, + "description": "Specify the time zone for rendering results. Defaults to the account time zone.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results per page. Specify up to a maximum of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "service_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of service IDs to filter incidents associated with specific services.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_incidents_by", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify fields and directions for sorting incidents, e.g., 'created_at:asc'. Separate fields with a comma.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_range", + "type": "string", + "required": false, + "description": "The start date to begin searching for incidents, within a 6-month range. Defaults to 1 month if not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listIncidents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListExistingIncidents", + "parameters": { + "additional_details_to_include": { + "value": "acknowledgers, assignees", + "type": "string", + "required": false + }, + "assigned_user_ids": { + "value": ["user123", "user456"], + "type": "array", + "required": false + }, + "end_date_range": { + "value": "2023-10-30T23:59:59Z", + "type": "string", + "required": false + }, + "filter_by_team_ids": { + "value": ["team1", "team2"], + "type": "array", + "required": false + }, + "ignore_since_until_date_range": { + "value": "all", + "type": "string", + "required": false + }, + "incident_deduplication_key": { + "value": "alert-12345", + "type": "string", + "required": false + }, + "incident_statuses": { + "value": "triggered, acknowledged", + "type": "string", + "required": false + }, + "incident_urgencies": { + "value": "high", + "type": "string", + "required": false + }, + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "render_time_zone": { + "value": "UTC", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "service_ids": { + "value": ["service1", "service2"], + "type": "array", + "required": false + }, + "sort_incidents_by": { + "value": ["created_at:asc"], + "type": "array", + "required": false + }, + "start_date_range": { + "value": "2023-09-30T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListExtensions", + "qualifiedName": "PagerdutyApi.ListExtensions", + "fullyQualifiedName": "PagerdutyApi.ListExtensions@4.0.0", + "description": "Retrieve a list of existing extensions and their details.\n\nCall this tool to obtain a list of extensions, which are representations of Extension Schema objects attached to Services. Useful for managing and identifying existing integrations within the service.", + "parameters": [ + { + "name": "filter_by_extension_object_id", + "type": "string", + "required": false, + "description": "Filter the extensions by specifying the extension object's ID you want to include.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_extension_vendor_id", + "type": "string", + "required": false, + "description": "Specify the extension vendor ID to filter extensions by vendor.", + "enum": null, + "inferrable": true + }, + { + "name": "include_details", + "type": "string", + "required": false, + "description": "Specify additional details to include, such as 'extension_objects' or 'extension_schemas'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to populate the total field in pagination responses, providing the total count of results.", + "enum": null, + "inferrable": true + }, + { + "name": "name_query_filter", + "type": "string", + "required": false, + "description": "Filter results to show only records whose name matches this query string.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to begin pagination search results listing. Specify an integer value to set the starting point.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page retrieval request.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listExtensions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListExtensions", + "parameters": { + "filter_by_extension_object_id": { + "value": "12345", + "type": "string", + "required": false + }, + "filter_by_extension_vendor_id": { + "value": "vendor-5678", + "type": "string", + "required": false + }, + "include_details": { + "value": "extension_objects", + "type": "string", + "required": false + }, + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "name_query_filter": { + "value": "Alert", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListExtensionSchemas", + "qualifiedName": "PagerdutyApi.ListExtensionSchemas", + "fullyQualifiedName": "PagerdutyApi.ListExtensionSchemas@4.0.0", + "description": "Retrieve a list of all PagerDuty extension schemas.\n\nThis tool fetches a list of all extension schemas in PagerDuty, representing outbound integrations like Webhooks, Slack, and ServiceNow. It should be called when needing details about available extension types. OAuth scope required: `extension_schemas.read`.", + "parameters": [ + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to populate the total field in pagination responses, providing the total count, which may affect response time.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "The starting point for pagination in the result set, defined as the number of items to skip.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to display per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listExtensionSchemas'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListExtensionSchemas", + "parameters": { + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIncidentAlerts", + "qualifiedName": "PagerdutyApi.ListIncidentAlerts", + "fullyQualifiedName": "PagerdutyApi.ListIncidentAlerts@4.0.0", + "description": "Retrieve alerts for a specified incident.\n\nUse this tool to list all alerts associated with a specific incident, which represents an issue that requires resolution. Useful for tracking and managing problems effectively.", + "parameters": [ + { + "name": "incident_id", + "type": "string", + "required": true, + "description": "The unique identifier of the incident to retrieve alerts for.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_deduplication_key", + "type": "string", + "required": false, + "description": "The unique key used for alert de-duplication.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_statuses", + "type": "string", + "required": false, + "description": "Filter alerts by specific statuses, such as 'triggered' or 'resolved'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_details", + "type": "string", + "required": false, + "description": "Specify additional details to include, such as services, first_trigger_log_entries, or incidents.", + "enum": null, + "inferrable": true + }, + { + "name": "include_pagination_total", + "type": "boolean", + "required": false, + "description": "Set to `true` to include the total count of results in pagination responses for faster response times. Set to `false` for the default behavior of `null`, which is faster.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of alert results per page for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_incident_alerts_by", + "type": "string", + "required": false, + "description": "Specify the field and order for sorting alerts (created_at or resolved_at, with ascending or descending options).", + "enum": null, + "inferrable": true + }, + { + "name": "start_pagination_offset", + "type": "integer", + "required": false, + "description": "Offset for starting the pagination in search results. Use for navigating through paginated data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listIncidentAlerts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListIncidentAlerts", + "parameters": { + "incident_id": { + "value": "INC123456", + "type": "string", + "required": true + }, + "alert_deduplication_key": { + "value": "ALERT7890", + "type": "string", + "required": false + }, + "filter_by_statuses": { + "value": "triggered", + "type": "string", + "required": false + }, + "include_additional_details": { + "value": "services", + "type": "string", + "required": false + }, + "include_pagination_total": { + "value": true, + "type": "boolean", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "sort_incident_alerts_by": { + "value": "created_at:descending", + "type": "string", + "required": false + }, + "start_pagination_offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIncidentLogEntries", + "qualifiedName": "PagerdutyApi.ListIncidentLogEntries", + "fullyQualifiedName": "PagerdutyApi.ListIncidentLogEntries@4.0.0", + "description": "Retrieve log entries for a specific incident.\n\nUse this tool to obtain a list of log entries related to a specific incident, which represents a problem that needs resolution. This tool should be called when you need detailed records of events concerning an incident.", + "parameters": [ + { + "name": "incident_id", + "type": "string", + "required": true, + "description": "The unique identifier for the incident to retrieve log entries for.", + "enum": null, + "inferrable": true + }, + { + "name": "additional_models_to_include", + "type": "string", + "required": false, + "description": "Array of additional models to include in the response, such as 'incidents', 'services', 'channels', or 'teams'.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date", + "type": "string", + "required": false, + "description": "Specify the end date for the log entry search range. Format as 'YYYY-MM-DD'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to populate the total field in pagination responses for more detailed information. Defaults to null for faster responses.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_offset", + "type": "integer", + "required": false, + "description": "Specifies the starting point for pagination to search results. Use an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to display per page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_time_zone", + "type": "string", + "required": false, + "description": "Time zone for rendering the results, defaults to the account time zone.", + "enum": null, + "inferrable": true + }, + { + "name": "return_important_changes_only", + "type": "boolean", + "required": false, + "description": "If `true`, returns a subset of log entries showing only the most important changes to the incident.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "The start date for the range to search log entries. Expected format: YYYY-MM-DDTHH:MM:SSZ.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listIncidentLogEntries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListIncidentLogEntries", + "parameters": { + "incident_id": { + "value": "INC123456", + "type": "string", + "required": true + }, + "additional_models_to_include": { + "value": "incidents,services", + "type": "string", + "required": false + }, + "end_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_start_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "results_time_zone": { + "value": "UTC", + "type": "string", + "required": false + }, + "return_important_changes_only": { + "value": false, + "type": "boolean", + "required": false + }, + "start_date": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIncidentNotes", + "qualifiedName": "PagerdutyApi.ListIncidentNotes", + "fullyQualifiedName": "PagerdutyApi.ListIncidentNotes@4.0.0", + "description": "List notes for a specific incident.\n\nUse this tool to retrieve all existing notes related to a specific incident, which represents a problem or issue needing resolution.", + "parameters": [ + { + "name": "incident_id", + "type": "string", + "required": true, + "description": "The unique identifier for the incident whose notes you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listIncidentNotes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListIncidentNotes", + "parameters": { + "incident_id": { + "value": "INC123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIncidentPriorities", + "qualifiedName": "PagerdutyApi.ListIncidentPriorities", + "fullyQualifiedName": "PagerdutyApi.ListIncidentPriorities@4.0.0", + "description": "Retrieve a list of incident priorities by severity.\n\nThis tool retrieves the list of existing incident priorities, ordered from most to least severe. It is used to understand the importance and impact levels of incidents within the Standard and Enterprise plans.", + "parameters": [ + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to include the total number of results in the response, which is not shown by default for performance reasons.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start pagination from this position in the results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of incident priorities to display per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listPriorities'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListIncidentPriorities", + "parameters": { + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 5, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIncidentTypeCustomFields", + "qualifiedName": "PagerdutyApi.ListIncidentTypeCustomFields", + "fullyQualifiedName": "PagerdutyApi.ListIncidentTypeCustomFields@4.0.0", + "description": "List custom fields for a specified incident type.\n\nThis tool retrieves custom fields associated with a specific incident type in PagerDuty. Custom fields allow for extended data to support features like customized filtering, search, and analytics. Use this tool when you need details on the custom fields for a particular incident type.", + "parameters": [ + { + "name": "incident_type_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the incident type to retrieve custom fields for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_details", + "type": "string", + "required": false, + "description": "Specify additional details to include, such as 'field_options'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listIncidentTypeCustomFields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListIncidentTypeCustomFields", + "parameters": { + "incident_type_id_or_name": { + "value": "network_outage", + "type": "string", + "required": true + }, + "include_additional_details": { + "value": "field_options", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIncidentTypes", + "qualifiedName": "PagerdutyApi.ListIncidentTypes", + "fullyQualifiedName": "PagerdutyApi.ListIncidentTypes@4.0.0", + "description": "Retrieve available incident types from PagerDuty.\n\nUse this tool to list incident types, such as security or major incidents, categorized by their enabled or disabled status. Useful for understanding how incidents are classified within PagerDuty.", + "parameters": [ + { + "name": "incident_type_filter", + "type": "string", + "required": false, + "description": "Filter incident types by their enabled state. Options: 'enabled', 'disabled', 'all'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listIncidentTypes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListIncidentTypes", + "parameters": { + "incident_type_filter": { + "value": "enabled", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIncidentWorkflowActions", + "qualifiedName": "PagerdutyApi.ListIncidentWorkflowActions", + "fullyQualifiedName": "PagerdutyApi.ListIncidentWorkflowActions@4.0.0", + "description": "Retrieve a list of incident workflow actions.\n\nUse this tool to get a list of available incident workflow actions from PagerDuty. This is useful for managing and understanding workflows associated with incidents. Requires `incident_workflows.read` scope.", + "parameters": [ + { + "name": "filter_by_keyword", + "type": "string", + "required": false, + "description": "Show actions tagged with the specified keyword. Provide a specific keyword to filter results.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_limit", + "type": "integer", + "required": false, + "description": "The maximum number of incident workflow actions to return in a single request. This value is the lesser of the specified limit or the API's maximum request size.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Optional parameter to fetch the next set of results. Use 'next_cursor' from the previous response. Starts at the beginning if not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listIncidentWorkflowActions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListIncidentWorkflowActions", + "parameters": { + "filter_by_keyword": { + "value": "escalation", + "type": "string", + "required": false + }, + "max_results_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIncidentWorkflows", + "qualifiedName": "PagerdutyApi.ListIncidentWorkflows", + "fullyQualifiedName": "PagerdutyApi.ListIncidentWorkflows@4.0.0", + "description": "Retrieve all incident workflows in your PagerDuty account.\n\nUse this tool to list all existing Incident Workflows in your PagerDuty account, which consist of configurable steps and triggers for automated actions. Ideal for managing workflows related to incidents.", + "parameters": [ + { + "name": "filter_by_name", + "type": "string", + "required": false, + "description": "Filter results to show only records whose name matches the query.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_details", + "type": "string", + "required": false, + "description": "Specify additional details to include, such as 'steps' or 'team'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_pagination", + "type": "boolean", + "required": false, + "description": "Set to true to populate the `total` field in pagination responses, false otherwise to optimize for speed.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start pagination search results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listIncidentWorkflows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListIncidentWorkflows", + "parameters": { + "filter_by_name": { + "value": "High Severity Alert", + "type": "string", + "required": false + }, + "include_additional_details": { + "value": "steps", + "type": "string", + "required": false + }, + "include_total_in_pagination": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListIncidentWorkflowTriggers", + "qualifiedName": "PagerdutyApi.ListIncidentWorkflowTriggers", + "fullyQualifiedName": "PagerdutyApi.ListIncidentWorkflowTriggers@4.0.0", + "description": "Retrieve a list of existing incident workflow triggers.\n\nUse this tool to obtain information about all current incident workflow triggers. It requires `incident_workflows.read` OAuth scope to access the data.", + "parameters": [ + { + "name": "filter_by_service_id", + "type": "string", + "required": false, + "description": "Show triggers for incidents in the given service. Cannot be used with `incident_id`.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_trigger_type", + "type": "string", + "required": false, + "description": "Specify the type of triggers to show, such as 'manual', 'conditional', or 'incident_type'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_for_disabled_triggers", + "type": "boolean", + "required": false, + "description": "Set to true to filter for disabled triggers, false for enabled. This parameter is deprecated.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_id_filter", + "type": "string", + "required": false, + "description": "Show triggers for the service of the specified incident. Cannot be used with `service_id`.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results", + "type": "integer", + "required": false, + "description": "Specify the maximum number of triggers to return. This limits the size of the response, constrained by the API's maximum request size.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Optional parameter to request the next set of results, usually from the `next_cursor` field of a previous request. Starts at the beginning if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_triggers_by", + "type": "string", + "required": false, + "description": "Specify the property to sort triggers, such as 'workflow_id asc' or 'workflow_name desc'.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_id_filter", + "type": "string", + "required": false, + "description": "If provided, only show triggers configured to start the specified workflow, useful for listing services linked to a workflow.", + "enum": null, + "inferrable": true + }, + { + "name": "workflow_name_contains", + "type": "string", + "required": false, + "description": "Filter triggers by workflow names containing this value.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listIncidentWorkflowTriggers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListIncidentWorkflowTriggers", + "parameters": { + "filter_by_service_id": { + "value": "123456", + "type": "string", + "required": false + }, + "filter_by_trigger_type": { + "value": "manual", + "type": "string", + "required": false + }, + "filter_for_disabled_triggers": { + "value": false, + "type": "boolean", + "required": false + }, + "incident_id_filter": { + "value": "abcde-67890-fghij", + "type": "string", + "required": false + }, + "maximum_results": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "xyz987", + "type": "string", + "required": false + }, + "sort_triggers_by": { + "value": "workflow_name desc", + "type": "string", + "required": false + }, + "workflow_id_filter": { + "value": "workflow-123", + "type": "string", + "required": false + }, + "workflow_name_contains": { + "value": "service", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListMaintenanceWindows", + "qualifiedName": "PagerdutyApi.ListMaintenanceWindows", + "fullyQualifiedName": "PagerdutyApi.ListMaintenanceWindows@4.0.0", + "description": "Retrieve maintenance windows with optional filters for service or team.\n\nThis tool retrieves a list of existing maintenance windows, allowing optional filtering by service and/or team. It can specify windows from the past, present, or future. A maintenance window is used to disable services temporarily for a set period. Scoped OAuth requires: `services.read`.", + "parameters": [ + { + "name": "filter_by_name", + "type": "string", + "required": false, + "description": "Filter maintenance windows to show only those with names matching the query.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_service_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of service IDs to filter maintenance windows. Only results related to these services will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_team_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of team IDs to filter results. Requires 'teams' ability.", + "enum": null, + "inferrable": true + }, + { + "name": "include_models", + "type": "string", + "required": false, + "description": "Specify models to include in the response, such as 'teams', 'services', or 'users'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to populate the `total` field in pagination responses and get the total count of records.", + "enum": null, + "inferrable": true + }, + { + "name": "maintenance_window_state", + "type": "string", + "required": false, + "description": "Specify the state of maintenance windows to return: 'past', 'future', 'ongoing', 'open', or 'all'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start the pagination of search results. Use to skip a number of results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of maintenance window results to display per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listMaintenanceWindows'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListMaintenanceWindows", + "parameters": { + "filter_by_name": { + "value": "Routine Maintenance", + "type": "string", + "required": false + }, + "filter_by_service_ids": { + "value": ["service_123", "service_456"], + "type": "array", + "required": false + }, + "filter_by_team_ids": { + "value": ["team_789", "team_012"], + "type": "array", + "required": false + }, + "include_models": { + "value": "services", + "type": "string", + "required": false + }, + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "maintenance_window_state": { + "value": "ongoing", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListNotifications", + "qualifiedName": "PagerdutyApi.ListNotifications", + "fullyQualifiedName": "PagerdutyApi.ListNotifications@4.0.0", + "description": "Retrieve notifications within a specified time range.\n\nThis tool retrieves notifications for a given time range, which can be filtered by type such as SMS, email, phone, or push notifications. Notifications are created when an incident is triggered or escalated.", + "parameters": [ + { + "name": "end_date_for_search", + "type": "string", + "required": true, + "description": "The end of the date range for the search. Must be in the same format as the 'since' date and within 3 months of it.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": true, + "description": "The start date for the search range. Time is optional and must match format of 'until'.", + "enum": null, + "inferrable": true + }, + { + "name": "additional_details_include", + "type": "string", + "required": false, + "description": "Specify additional details to include, such as 'users'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to populate the total field in pagination responses, otherwise it will be null.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_type_filter", + "type": "string", + "required": false, + "description": "Return notifications of a specific type such as SMS, email, phone, or push.", + "enum": null, + "inferrable": true + }, + { + "name": "output_time_zone", + "type": "string", + "required": false, + "description": "Time zone for rendering results. Defaults to the account's time zone if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset number to begin the pagination of search results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to display per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listNotifications'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListNotifications", + "parameters": { + "end_date_for_search": { + "value": "2023-11-30T23:59:59Z", + "type": "string", + "required": true + }, + "start_date": { + "value": "2023-11-01T00:00:00Z", + "type": "string", + "required": true + }, + "additional_details_include": { + "value": "users", + "type": "string", + "required": false + }, + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "notification_type_filter": { + "value": "email", + "type": "string", + "required": false + }, + "output_time_zone": { + "value": "America/New_York", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOauthClients", + "qualifiedName": "PagerdutyApi.ListOauthClients", + "fullyQualifiedName": "PagerdutyApi.ListOauthClients@4.0.0", + "description": "Retrieve all OAuth clients for webhook subscriptions.\n\nUse this tool to list all OAuth clients associated with webhook subscriptions. Requires admin or owner role permissions and is limited to a maximum of 10 clients per account.", + "parameters": [], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listOauthClients'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListOauthClients", + "parameters": {}, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOnCallEntries", + "qualifiedName": "PagerdutyApi.ListOnCallEntries", + "fullyQualifiedName": "PagerdutyApi.ListOnCallEntries@4.0.0", + "description": "Retrieve on-call entries for a specified time range.\n\nThis tool fetches the on-call entries indicating who is scheduled to be on call during a specified time period. This can be used to determine coverage for escalation policies and rules. Note that specific OAuth permissions ('oncalls.read') are required, and rate limits may apply.", + "parameters": [ + { + "name": "additional_details_to_include", + "type": "string", + "required": false, + "description": "Array of additional details to include such as escalation policies, users, or schedules.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time_for_on_call_search", + "type": "string", + "required": false, + "description": "Specify the end of the time period to search for on-call entries. The end time must be after the start time ('since') and cannot exceed 90 days in the future. Defaults to current time if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_escalation_policy_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of escalation policy IDs to filter the on-call results. Only entries matching these IDs will be included.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of user IDs to filter and show only the on-calls for these users.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to populate the total field in pagination responses, enhancing the response with total entry count.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset indicating where to start the pagination for search results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of on-call entries to return per page. Set this to control pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_time_zone", + "type": "string", + "required": false, + "description": "Specifies the time zone for rendering results. Defaults to the account time zone if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "return_earliest_on_call", + "type": "boolean", + "required": false, + "description": "Set to true to filter and return only the earliest on-call entry for each combination of escalation policy, escalation level, and user.", + "enum": null, + "inferrable": true + }, + { + "name": "schedule_ids_filter", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of schedule IDs to filter results. Include `null` to cover permanent on-calls from direct user escalations.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_range", + "type": "string", + "required": false, + "description": "The start time for the search range. On-call periods overlapping this time will be included. Defaults to the current time. Limited to 90 days in the future.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listOnCalls'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListOnCallEntries", + "parameters": { + "additional_details_to_include": { + "value": "users, schedules", + "type": "string", + "required": false + }, + "end_time_for_on_call_search": { + "value": "2023-11-01T23:59:59Z", + "type": "string", + "required": false + }, + "filter_by_escalation_policy_ids": { + "value": ["EP123456", "EP654321"], + "type": "array", + "required": false + }, + "filter_user_ids": { + "value": ["USR12345", "USR67890"], + "type": "array", + "required": false + }, + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "results_time_zone": { + "value": "America/New_York", + "type": "string", + "required": false + }, + "return_earliest_on_call": { + "value": false, + "type": "boolean", + "required": false + }, + "schedule_ids_filter": { + "value": ["SCHED111", "SCHED222"], + "type": "array", + "required": false + }, + "start_time_range": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOnCallSchedules", + "qualifiedName": "PagerdutyApi.ListOnCallSchedules", + "fullyQualifiedName": "PagerdutyApi.ListOnCallSchedules@4.0.0", + "description": "Retrieve the on-call schedules from PagerDuty.\n\nUse this tool to get information about the time periods when users are on-call in PagerDuty. This tool is useful for understanding and managing on-call rotations. OAuth with 'schedules.read' scope is required.", + "parameters": [ + { + "name": "additional_details_to_include", + "type": "string", + "required": false, + "description": "Specify additional details to include, such as 'schedule_layers', 'overrides_subschedule', 'final_schedule'.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_range", + "type": "string", + "required": false, + "description": "Specify the end date for the schedule entries range. Defaults to 2 weeks after the 'since' date if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_name", + "type": "string", + "required": false, + "description": "Filters results to show records with matching names.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_pagination", + "type": "boolean", + "required": false, + "description": "Set to true to populate the total field in pagination responses. Defaults to null for faster response times if false.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "The starting point for pagination of search results. Use this to skip a specific number of results.", + "enum": null, + "inferrable": true + }, + { + "name": "render_results_in_time_zone", + "type": "string", + "required": false, + "description": "Specify the time zone for displaying results. Defaults to the user's or account's time zone.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to retrieve per page for the on-call schedules.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_for_schedule_entries", + "type": "string", + "required": false, + "description": "The start date for showing schedule entries. Defaults to 2 weeks before the 'until' date if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id_for_next_oncall", + "type": "string", + "required": false, + "description": "Specify a user_id to get information about this user's next on-call schedule.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listSchedules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListOnCallSchedules", + "parameters": { + "additional_details_to_include": { + "value": "schedule_layers", + "type": "string", + "required": false + }, + "end_date_range": { + "value": "2023-11-30T23:59:59Z", + "type": "string", + "required": false + }, + "filter_by_name": { + "value": "Support Team", + "type": "string", + "required": false + }, + "include_total_in_pagination": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "render_results_in_time_zone": { + "value": "America/New_York", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "start_date_for_schedule_entries": { + "value": "2023-11-15T00:00:00Z", + "type": "string", + "required": false + }, + "user_id_for_next_oncall": { + "value": "PABC123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOnCallUsers", + "qualifiedName": "PagerdutyApi.ListOnCallUsers", + "fullyQualifiedName": "PagerdutyApi.ListOnCallUsers@4.0.0", + "description": "Retrieve users on call for a given schedule and time range.\n\nThis tool lists all users who are on call for a specified schedule within a given time range. It is useful for managing and viewing on-call schedules and requires the `users.read` OAuth permission.", + "parameters": [ + { + "name": "schedule_resource_id", + "type": "string", + "required": true, + "description": "The ID of the schedule resource to retrieve on-call users for.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_range", + "type": "string", + "required": false, + "description": "The end date for the time range of user search. Format as YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_range", + "type": "string", + "required": false, + "description": "The start date of the range to search for users on call. Format should be YYYY-MM-DD.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listScheduleUsers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListOnCallUsers", + "parameters": { + "schedule_resource_id": { + "value": "P123456", + "type": "string", + "required": true + }, + "end_date_range": { + "value": "2023-10-15", + "type": "string", + "required": false + }, + "start_date_range": { + "value": "2023-10-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrchestrationIntegrations", + "qualifiedName": "PagerdutyApi.ListOrchestrationIntegrations", + "fullyQualifiedName": "PagerdutyApi.ListOrchestrationIntegrations@4.0.0", + "description": "Retrieve integrations for an event orchestration.\n\nUse this tool to obtain the integrations linked to a specific event orchestration in PagerDuty. These integrations provide routing keys to send events to PagerDuty. Requires 'event_orchestrations.read' scope with OAuth.", + "parameters": [ + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Event Orchestration to retrieve integrations for. This ID is necessary to specify which event orchestration's integrations you wish to list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listOrchestrationIntegrations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListOrchestrationIntegrations", + "parameters": { + "event_orchestration_id": { + "value": "EO123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPagerdutyTeams", + "qualifiedName": "PagerdutyApi.ListPagerdutyTeams", + "fullyQualifiedName": "PagerdutyApi.ListPagerdutyTeams@4.0.0", + "description": "Retrieve a list of teams from your PagerDuty account.\n\nThis tool retrieves a list of teams from your PagerDuty account, possibly filtered by a search query. Teams comprise users and escalation policies representing organizational groups. Use this tool to get insights into team structures and members.", + "parameters": [ + { + "name": "filter_by_name_query", + "type": "string", + "required": false, + "description": "Specify a query to filter teams by name. Only teams with names matching this query will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to include the total count of results in the response for pagination. This may impact response time.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start returning team results from in pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of teams to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listTeams'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListPagerdutyTeams", + "parameters": { + "filter_by_name_query": { + "value": "Engineering", + "type": "string", + "required": false + }, + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPagerdutyUsers", + "qualifiedName": "PagerdutyApi.ListPagerdutyUsers", + "fullyQualifiedName": "PagerdutyApi.ListPagerdutyUsers@4.0.0", + "description": "Retrieve users from your PagerDuty account.\n\nUse this tool to list all users in your PagerDuty account, with the option to filter by a search query. Users are those who can interact with incidents and data within the account.", + "parameters": [ + { + "name": "additional_models_to_include", + "type": "string", + "required": false, + "description": "Array of additional models to include in the response, such as 'contact_methods', 'notification_rules', 'teams', or 'subdomains'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to include the total count in pagination responses, which may slow down the response time.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start pagination in search results. Specify the number of items to skip.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of user results to be returned per page.", + "enum": null, + "inferrable": true + }, + { + "name": "team_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of team IDs to filter the user results. Requires the account to have the 'teams' ability.", + "enum": null, + "inferrable": true + }, + { + "name": "user_name_filter", + "type": "string", + "required": false, + "description": "String to filter users by name in the PagerDuty account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listUsers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListPagerdutyUsers", + "parameters": { + "additional_models_to_include": { + "value": "contact_methods,teams", + "type": "string", + "required": false + }, + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "team_ids": { + "value": ["team_01", "team_02"], + "type": "array", + "required": false + }, + "user_name_filter": { + "value": "John Doe", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListResourceStandards", + "qualifiedName": "PagerdutyApi.ListResourceStandards", + "fullyQualifiedName": "PagerdutyApi.ListResourceStandards@4.0.0", + "description": "Retrieve standards applied to multiple resources.\n\nUse this tool to get a list of standards applied to a specified set of resources. It requires scoped OAuth permission `standards.read` and is useful for obtaining compliance information or resource evaluations.", + "parameters": [ + { + "name": "resource_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "Array of resource IDs to which standards will be applied. Maximum of 100 items.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_type", + "type": "string", + "required": true, + "description": "Specifies the type of resources to which the standards are applied. For example, 'technical_services'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listResourceStandardsManyServices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListResourceStandards", + "parameters": { + "resource_ids": { + "value": ["id1", "id2", "id3", "id4", "id5"], + "type": "array", + "required": true + }, + "resource_type": { + "value": "technical_services", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRulesets", + "qualifiedName": "PagerdutyApi.ListRulesets", + "fullyQualifiedName": "PagerdutyApi.ListRulesets@4.0.0", + "description": "Retrieve a list of all rulesets from PagerDuty.\n\nThis tool retrieves all rulesets, which are used to route events to endpoints and define actions based on event contents. Note that rulesets and event rules will soon be deprecated, and it is recommended to migrate to Event Orchestration. Use this tool to access existing rulesets until they are phased out.", + "parameters": [ + { + "name": "include_total_count", + "type": "boolean", + "required": false, + "description": "Set to true to include the total count of results in the response. By default, this is omitted for speed. Refer to the Pagination Docs for details.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "The starting point for pagination in search results. Use this to skip a specific number of results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of ruleset results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listRulesets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListRulesets", + "parameters": { + "include_total_count": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListScheduleAuditRecords", + "qualifiedName": "PagerdutyApi.ListScheduleAuditRecords", + "fullyQualifiedName": "PagerdutyApi.ListScheduleAuditRecords@4.0.0", + "description": "Retrieve sorted audit records for a specific schedule.\n\nFetches audit records for a particular schedule identified by its ID, sorted by the execution time from newest to oldest. Useful for monitoring changes in schedule configurations or activities. Requires OAuth with 'audit_records.read' scope for authorization. Supports cursor-based pagination for large datasets.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the schedule resource to retrieve audit records for.", + "enum": null, + "inferrable": true + }, + { + "name": "end_of_date_range", + "type": "string", + "required": false, + "description": "The end date for the search range. Defaults to 'now' if not specified; must be within 31 days after the 'since' date.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_records_limit", + "type": "integer", + "required": false, + "description": "The maximum number of records to return. This is the lesser of the specified limit or the API's maximum size.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for requesting the next set of results. Use the `next_cursor` from the previous request to paginate.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "The start date for searching audit records. Defaults to 24 hours ago if not specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listSchedulesAuditRecords'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListScheduleAuditRecords", + "parameters": { + "resource_id": { + "value": "sched_123456", + "type": "string", + "required": true + }, + "end_of_date_range": { + "value": "2023-10-01T23:59:59Z", + "type": "string", + "required": false + }, + "maximum_records_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc123", + "type": "string", + "required": false + }, + "start_date": { + "value": "2023-09-30T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListScheduleOverrides", + "qualifiedName": "PagerdutyApi.ListScheduleOverrides", + "fullyQualifiedName": "PagerdutyApi.ListScheduleOverrides@4.0.0", + "description": "Fetch overrides for a specific schedule and time range.\n\nUse this tool to list all the overrides for a given schedule within a specified time range. Useful for understanding changes to on-call schedules. Requires `schedules.read` OAuth scope.", + "parameters": [ + { + "name": "end_date_range", + "type": "string", + "required": true, + "description": "The end date for the search range in which to list schedule overrides.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "Specify the ID of the schedule resource to fetch overrides.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": true, + "description": "The start date for the search range, formatted as YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "include_overflown_entries", + "type": "boolean", + "required": false, + "description": "Set to true to include schedule entries extending beyond date range bounds. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_editable_overrides", + "type": "boolean", + "required": false, + "description": "Set to true to return only editable overrides. Only future overrides will be included.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listScheduleOverrides'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListScheduleOverrides", + "parameters": { + "end_date_range": { + "value": "2023-10-31", + "type": "string", + "required": true + }, + "resource_id": { + "value": "PABC123456", + "type": "string", + "required": true + }, + "start_date": { + "value": "2023-10-01", + "type": "string", + "required": true + }, + "include_overflown_entries": { + "value": false, + "type": "boolean", + "required": false + }, + "return_only_editable_overrides": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListServiceAuditRecords", + "qualifiedName": "PagerdutyApi.ListServiceAuditRecords", + "fullyQualifiedName": "PagerdutyApi.ListServiceAuditRecords@4.0.0", + "description": "Retrieve service audit records sorted by execution time.\n\nUse this tool to get audit records for a specific service from PagerDuty, sorted by execution time from newest to oldest. Ideal for monitoring actions and changes related to a service. Ensure proper OAuth scope with `audit_records.read`.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The ID of the service for which audit records are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date", + "type": "string", + "required": false, + "description": "The end of the date range for searching audit records. Defaults to `now()` if unspecified. Must be within 31 days after `start_date`.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Optional parameter to retrieve the next set of audit records. Use the token from `next_cursor` of the previous response. Defaults to the start if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of audit records to return. Accepts an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_range", + "type": "string", + "required": false, + "description": "The start of the date range for search. Defaults to 24 hours ago if not specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listServiceAuditRecords'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListServiceAuditRecords", + "parameters": { + "resource_id": { + "value": "P123456", + "type": "string", + "required": true + }, + "end_date": { + "value": "2023-10-05T23:59:59Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "abc123token", + "type": "string", + "required": false + }, + "result_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "start_date_range": { + "value": "2023-10-04T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListServiceChangeEvents", + "qualifiedName": "PagerdutyApi.ListServiceChangeEvents", + "fullyQualifiedName": "PagerdutyApi.ListServiceChangeEvents@4.0.0", + "description": "Retrieve change events for a specific service.\n\nUse this tool to list all existing change events related to a specified service. Requires the 'services.read' OAuth scope.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The ID of the service resource for which to list change events.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_utc", + "type": "string", + "required": false, + "description": "The end of the date range for the search, in UTC ISO 8601 format. Only UTC dates are accepted.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_integration_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of integration IDs to filter results. Only events related to these integrations will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to populate the total field in pagination responses, which may affect response time.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start pagination search results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "The start date of the search range, in UTC ISO 8601 format (e.g., '2023-10-01T00:00:00Z'). Ensure it is in UTC to avoid errors.", + "enum": null, + "inferrable": true + }, + { + "name": "team_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of team IDs to filter results. Account must have `teams` ability to use this.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listServiceChangeEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListServiceChangeEvents", + "parameters": { + "resource_id": { + "value": "PABC123456", + "type": "string", + "required": true + }, + "end_date_utc": { + "value": "2023-10-01T23:59:59Z", + "type": "string", + "required": false + }, + "filter_by_integration_ids": { + "value": ["INT001", "INT002"], + "type": "array", + "required": false + }, + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "start_date": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "team_ids": { + "value": ["TEAM001"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListServiceCustomFieldOptions", + "qualifiedName": "PagerdutyApi.ListServiceCustomFieldOptions", + "fullyQualifiedName": "PagerdutyApi.ListServiceCustomFieldOptions@4.0.0", + "description": "Retrieve all options for a specific custom field in PagerDuty.\n\nCall this tool to get all options available for a specific custom field in PagerDuty services. Useful for understanding the potential values a custom field can take.", + "parameters": [ + { + "name": "field_id", + "type": "string", + "required": true, + "description": "The unique identifier for the custom field to retrieve options for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listServiceCustomFieldOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListServiceCustomFieldOptions", + "parameters": { + "field_id": { + "value": "custom_field_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListServiceCustomFields", + "qualifiedName": "PagerdutyApi.ListServiceCustomFields", + "fullyQualifiedName": "PagerdutyApi.ListServiceCustomFields@4.0.0", + "description": "Retrieve the custom fields for PagerDuty services.\n\nThis tool should be called to obtain a list of custom fields available for services in PagerDuty. It requires the 'custom_fields.read' OAuth scope.", + "parameters": [ + { + "name": "include_additional_details", + "type": "string", + "required": false, + "description": "Specify additional details to include, such as 'field_options'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listServiceCustomFields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListServiceCustomFields", + "parameters": { + "include_additional_details": { + "value": "field_options", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListServiceEventRules", + "qualifiedName": "PagerdutyApi.ListServiceEventRules", + "fullyQualifiedName": "PagerdutyApi.ListServiceEventRules@4.0.0", + "description": "Retrieve a list of event rules for a specific service.\n\nUse this tool to get a list of event rules associated with a specific service in PagerDuty. This functionality is marked for end-of-life, so consider migrating to Event Orchestration for enhanced features.", + "parameters": [ + { + "name": "service_id", + "type": "string", + "required": true, + "description": "The unique identifier for the service whose event rules are being listed.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_models", + "type": "string", + "required": false, + "description": "Array of additional models to include in response, such as 'migrated_metadata'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "The starting point for pagination of search results, specified as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "populate_total_field", + "type": "boolean", + "required": false, + "description": "Set to true to populate the total field in pagination responses; set to false to keep it null for faster responses.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results returned per page in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listServiceEventRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListServiceEventRules", + "parameters": { + "service_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "include_additional_models": { + "value": "migrated_metadata", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "populate_total_field": { + "value": true, + "type": "boolean", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListServiceFeatureEnablements", + "qualifiedName": "PagerdutyApi.ListServiceFeatureEnablements", + "fullyQualifiedName": "PagerdutyApi.ListServiceFeatureEnablements@4.0.0", + "description": "List feature enablement settings for a service.\n\nRetrieves all feature enablement settings for a specified service, focusing on AIOps enablements. If the account lacks AIOps entitlement, a warning will be included with the data.", + "parameters": [ + { + "name": "service_id", + "type": "string", + "required": true, + "description": "The unique identifier for the PagerDuty service whose feature enablements you want to list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listServiceFeatureEnablements'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListServiceFeatureEnablements", + "parameters": { + "service_id": { + "value": "P123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListServices", + "qualifiedName": "PagerdutyApi.ListServices", + "fullyQualifiedName": "PagerdutyApi.ListServices@4.0.0", + "description": "Retrieve a list of existing services.\n\nUse this tool to get a list of services, which may include applications, components, or teams for incident management.", + "parameters": [ + { + "name": "filter_by_service_name", + "type": "string", + "required": false, + "description": "Filters results to show only services with the specified name.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_team_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter results to only include services related to the specified team IDs. Requires 'teams' ability.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_details", + "type": "string", + "required": false, + "description": "Array of additional details to include, such as 'escalation_policies', 'teams', 'integrations', or 'auto_pause_notifications_parameters'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_response", + "type": "boolean", + "required": false, + "description": "Set to true to include the total count of results in the pagination response.", + "enum": null, + "inferrable": true + }, + { + "name": "name_query_filter", + "type": "string", + "required": false, + "description": "Filters results to show only services with names matching the query.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start pagination search results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to be returned per page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_time_zone", + "type": "string", + "required": false, + "description": "Time zone for rendering results, defaulting to the account time zone.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_by", + "type": "string", + "required": false, + "description": "Specifies the field and order (ascending/descending) to sort the results by. Options include: 'name', 'name:asc', 'name:desc'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listServices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListServices", + "parameters": { + "filter_by_service_name": { + "value": "Web Application", + "type": "string", + "required": false + }, + "filter_by_team_ids": { + "value": ["team_123", "team_456"], + "type": "array", + "required": false + }, + "include_additional_details": { + "value": "escalation_policies", + "type": "string", + "required": false + }, + "include_total_in_response": { + "value": true, + "type": "boolean", + "required": false + }, + "name_query_filter": { + "value": "App", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "results_time_zone": { + "value": "UTC", + "type": "string", + "required": false + }, + "sort_results_by": { + "value": "name:asc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListStatusPageImpacts", + "qualifiedName": "PagerdutyApi.ListStatusPageImpacts", + "fullyQualifiedName": "PagerdutyApi.ListStatusPageImpacts@4.0.0", + "description": "Retrieve impacts for a specified status page by ID.\n\nUse this tool to fetch a list of impacts affecting a particular status page. This is helpful for monitoring and managing service disruptions and their effects. Ensure the necessary OAuth scope `status_pages.read` is granted to access the data.", + "parameters": [ + { + "name": "status_page_id", + "type": "string", + "required": true, + "description": "The ID of the status page to retrieve impacts for.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_post_type", + "type": "string", + "required": false, + "description": "Specify the type of posts to filter by: 'incident' or 'maintenance'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listStatusPageImpacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListStatusPageImpacts", + "parameters": { + "status_page_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "filter_by_post_type": { + "value": "incident", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListStatusPagePosts", + "qualifiedName": "PagerdutyApi.ListStatusPagePosts", + "fullyQualifiedName": "PagerdutyApi.ListStatusPagePosts@4.0.0", + "description": "Retrieve posts for a specific status page using its ID.\n\nUse this tool to get posts associated with a given status page by providing its ID. Useful for monitoring updates and information shared through the status page.", + "parameters": [ + { + "name": "status_page_id", + "type": "string", + "required": true, + "description": "The unique ID of the status page to retrieve posts from.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_post_type", + "type": "string", + "required": false, + "description": "Filter posts by type. Acceptable values are 'incident' or 'maintenance'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_reviewed_status", + "type": "string", + "required": false, + "description": "Filter posts by their reviewed status. Possible values are 'approved' or 'not_reviewed'.", + "enum": null, + "inferrable": true + }, + { + "name": "status_identifiers", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter posts by an array of status identifiers to specify which statuses to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listStatusPagePosts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListStatusPagePosts", + "parameters": { + "status_page_id": { + "value": "abcdef123456", + "type": "string", + "required": true + }, + "filter_by_post_type": { + "value": "incident", + "type": "string", + "required": false + }, + "filter_by_reviewed_status": { + "value": "approved", + "type": "string", + "required": false + }, + "status_identifiers": { + "value": ["operational", "degraded_performance"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListStatusPages", + "qualifiedName": "PagerdutyApi.ListStatusPages", + "fullyQualifiedName": "PagerdutyApi.ListStatusPages@4.0.0", + "description": "Retrieve a list of status pages.\n\nUse this tool to get a list of status pages. Requires `status_pages.read` OAuth scope.", + "parameters": [ + { + "name": "status_page_type", + "type": "string", + "required": false, + "description": "Specifies the type of the status page. Must be 'public' or 'private'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listStatusPages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListStatusPages", + "parameters": { + "status_page_type": { + "value": "public", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListStatusPageServices", + "qualifiedName": "PagerdutyApi.ListStatusPageServices", + "fullyQualifiedName": "PagerdutyApi.ListStatusPageServices@4.0.0", + "description": "Retrieve services for a specific Status Page by ID.\n\nUse this tool to list all the services linked to a particular Status Page by providing the Status Page ID. Requires appropriate OAuth permissions.", + "parameters": [ + { + "name": "status_page_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Status Page to retrieve associated services.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listStatusPageServices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListStatusPageServices", + "parameters": { + "status_page_id": { + "value": "SP123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListStatusPageSeverities", + "qualifiedName": "PagerdutyApi.ListStatusPageSeverities", + "fullyQualifiedName": "PagerdutyApi.ListStatusPageSeverities@4.0.0", + "description": "Retrieve severities for a specified status page.\n\nUse this tool to get a list of severities associated with a specific status page by providing its ID. Requires `status_pages.read` permissions.", + "parameters": [ + { + "name": "status_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the status page to retrieve severities.", + "enum": null, + "inferrable": true + }, + { + "name": "post_type_filter", + "type": "string", + "required": false, + "description": "Specify the type of post to filter. Options: 'incident' or 'maintenance'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listStatusPageSeverities'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListStatusPageSeverities", + "parameters": { + "status_page_id": { + "value": "SP123456", + "type": "string", + "required": true + }, + "post_type_filter": { + "value": "incident", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListStatusPageStatuses", + "qualifiedName": "PagerdutyApi.ListStatusPageStatuses", + "fullyQualifiedName": "PagerdutyApi.ListStatusPageStatuses@4.0.0", + "description": "Retrieve statuses for a specific status page by ID.\n\nUse this tool to list the statuses of a status page using its ID. This requires the `status_pages.read` OAuth scope.", + "parameters": [ + { + "name": "status_page_id", + "type": "string", + "required": true, + "description": "The unique ID of the status page to retrieve statuses for.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_post_type", + "type": "string", + "required": false, + "description": "Filter statuses by post type. Options include 'incident' or 'maintenance'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listStatusPageStatuses'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListStatusPageStatuses", + "parameters": { + "status_page_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "filter_by_post_type": { + "value": "incident", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListStatusPageSubscriptions", + "qualifiedName": "PagerdutyApi.ListStatusPageSubscriptions", + "fullyQualifiedName": "PagerdutyApi.ListStatusPageSubscriptions@4.0.0", + "description": "Retrieve subscriptions for a specific status page by ID.\n\nUse this tool to get a list of subscriptions associated with a specific status page by providing the status page ID. Useful for managing or viewing existing subscriptions on the page.", + "parameters": [ + { + "name": "status_page_id", + "type": "string", + "required": true, + "description": "The unique identifier for the status page. Required to retrieve subscriptions associated with it.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_channel_filter", + "type": "string", + "required": false, + "description": "Specify the channel to filter subscriptions. Options: webhook, email, slack.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_status_filter", + "type": "string", + "required": false, + "description": "Filter the list of subscriptions by their status: 'active' or 'pending'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listStatusPageSubscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListStatusPageSubscriptions", + "parameters": { + "status_page_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "subscription_channel_filter": { + "value": "email", + "type": "string", + "required": false + }, + "subscription_status_filter": { + "value": "active", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListStatusUpdates", + "qualifiedName": "PagerdutyApi.ListStatusUpdates", + "fullyQualifiedName": "PagerdutyApi.ListStatusUpdates@4.0.0", + "description": "Retrieve post updates for a specific status page and post ID.\n\nThis tool retrieves a list of post updates for a given status page and post ID. It should be called when you need detailed updates for a specific post on a status page. Requires appropriate OAuth permissions.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique ID of the status page resource for which updates are needed.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_post_id", + "type": "string", + "required": true, + "description": "The ID of the specific status page post to retrieve updates for. This identifies which post's updates will be listed.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_reviewed_status", + "type": "string", + "required": false, + "description": "Filter post updates by their reviewed status. Options are 'approved' or 'not_reviewed'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listStatusPagePostUpdates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListStatusUpdates", + "parameters": { + "resource_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "status_page_post_id": { + "value": "post456", + "type": "string", + "required": true + }, + "filter_by_reviewed_status": { + "value": "approved", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeamMembers", + "qualifiedName": "PagerdutyApi.ListTeamMembers", + "fullyQualifiedName": "PagerdutyApi.ListTeamMembers@4.0.0", + "description": "Retrieve details of members in a specified team.\n\nUse to get information about users and escalation policies associated with a team in an organization. Requires appropriate OAuth scope.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team whose members you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_pagination", + "type": "boolean", + "required": false, + "description": "Set to true to populate the total field in pagination responses. Default is false for faster response times.", + "enum": null, + "inferrable": true + }, + { + "name": "include_users_in_response", + "type": "string", + "required": false, + "description": "Include additional models such as 'users' in the team members response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Integer to set the starting point for pagination in search results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listTeamUsers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListTeamMembers", + "parameters": { + "team_id": { + "value": "T123456", + "type": "string", + "required": true + }, + "include_total_in_pagination": { + "value": true, + "type": "boolean", + "required": false + }, + "include_users_in_response": { + "value": "users", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": 5, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserHandoffNotificationRules", + "qualifiedName": "PagerdutyApi.ListUserHandoffNotificationRules", + "fullyQualifiedName": "PagerdutyApi.ListUserHandoffNotificationRules@4.0.0", + "description": "List handoff notification rules for a PagerDuty user.\n\nUse this tool to retrieve the handoff notification rules for a specific user in a PagerDuty account. This can be helpful to understand how notifications are managed for user on-call handoffs.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier of the PagerDuty user whose handoff notification rules you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserHandoffNotificationRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListUserHandoffNotificationRules", + "parameters": { + "user_id": { + "value": "PABC123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserLicenseAllocations", + "qualifiedName": "PagerdutyApi.ListUserLicenseAllocations", + "fullyQualifiedName": "PagerdutyApi.ListUserLicenseAllocations@4.0.0", + "description": "Retrieve licenses allocated to users in your account.\n\nUse this tool to get a list of all licenses allocated to users within your account. This can be useful for tracking license usage or managing permissions. Requires `licenses.read` OAuth scope.", + "parameters": [ + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "The starting position for pagination in the search results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to display per page when retrieving user licenses.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listLicenseAllocations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListUserLicenseAllocations", + "parameters": { + "pagination_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserNotificationRules", + "qualifiedName": "PagerdutyApi.ListUserNotificationRules", + "fullyQualifiedName": "PagerdutyApi.ListUserNotificationRules@4.0.0", + "description": "Retrieve a PagerDuty user's notification rules.\n\nUse this tool to list the notification rules associated with a specific PagerDuty user. This can help you understand the methods and conditions under which users are notified about incidents and other account activities.", + "parameters": [ + { + "name": "user_resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the PagerDuty user whose notification rules are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "incident_urgency", + "type": "string", + "required": false, + "description": "Specify the incident urgency for the notification rules: 'high', 'low', or 'all'. Defaults to 'high'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_details", + "type": "string", + "required": false, + "description": "Specify additional details to include, such as 'contact_methods'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserNotificationRules'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListUserNotificationRules", + "parameters": { + "user_resource_id": { + "value": "PABC123", + "type": "string", + "required": true + }, + "incident_urgency": { + "value": "high", + "type": "string", + "required": false + }, + "include_additional_details": { + "value": "contact_methods", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWebhookSubscriptions", + "qualifiedName": "PagerdutyApi.ListWebhookSubscriptions", + "fullyQualifiedName": "PagerdutyApi.ListWebhookSubscriptions@4.0.0", + "description": "Retrieve existing webhook subscriptions from PagerDuty.\n\nUse this tool to list webhook subscriptions. It can filter subscriptions by service or team using `filter_type` and `filter_id` parameters. Useful for managing and configuring v3 webhooks. Requires 'webhook_subscriptions.read' permission.", + "parameters": [ + { + "name": "include_total_in_pagination", + "type": "boolean", + "required": false, + "description": "Set to true to populate the `total` field in pagination responses. Useful if you need the total number of entries.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset to start the pagination of search results.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_filter_id", + "type": "string", + "required": false, + "description": "The ID of the resource to filter upon. Required if filtering by service or team.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_filter_type", + "type": "string", + "required": false, + "description": "Specify the type of resource to filter webhook subscriptions by, such as 'account', 'service', or 'team'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of webhook subscription results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listWebhookSubscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListWebhookSubscriptions", + "parameters": { + "include_total_in_pagination": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_offset": { + "value": 10, + "type": "integer", + "required": false + }, + "resource_filter_id": { + "value": "PABC123", + "type": "string", + "required": false + }, + "resource_filter_type": { + "value": "service", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWorkflowIntegrationConnections", + "qualifiedName": "PagerdutyApi.ListWorkflowIntegrationConnections", + "fullyQualifiedName": "PagerdutyApi.ListWorkflowIntegrationConnections@4.0.0", + "description": "Retrieve all workflow integration connections from PagerDuty.\n\nThis tool is used to list all Workflow Integration Connections available in PagerDuty. It requires proper OAuth scope for access.", + "parameters": [ + { + "name": "filter_by_partial_name", + "type": "string", + "required": false, + "description": "Filter integrations by a partial name match to narrow down the results.", + "enum": null, + "inferrable": true + }, + { + "name": "next_results_cursor", + "type": "string", + "required": false, + "description": "Optional parameter to retrieve the next set of results from the API. Typically obtained from the previous request's `next_cursor` field. If not provided, the request starts from the beginning.", + "enum": null, + "inferrable": true + }, + { + "name": "response_limit", + "type": "integer", + "required": false, + "description": "The maximum number of results to return for the request.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listWorkflowIntegrationConnections'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListWorkflowIntegrationConnections", + "parameters": { + "filter_by_partial_name": { + "value": "incident", + "type": "string", + "required": false + }, + "next_results_cursor": { + "value": "eyJ2IjoxLCJjIjoxLCJuIjp7InN0YXJ0IjowfX0", + "type": "string", + "required": false + }, + "response_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWorkflowIntegrations", + "qualifiedName": "PagerdutyApi.ListWorkflowIntegrations", + "fullyQualifiedName": "PagerdutyApi.ListWorkflowIntegrations@4.0.0", + "description": "Retrieve a list of available workflow integrations.\n\nUse this tool to obtain a list of available workflow integrations from PagerDuty. Requires specific OAuth permissions.", + "parameters": [ + { + "name": "include_deprecated_integrations", + "type": "boolean", + "required": false, + "description": "Set to true to include deprecated integrations in the response; false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "next_results_cursor", + "type": "string", + "required": false, + "description": "A string to request the next set of results, usually from the `next_cursor` field of the previous response. Defaults to starting at the beginning if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "The limit on the number of workflow integrations to return in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listWorkflowIntegrations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ListWorkflowIntegrations", + "parameters": { + "include_deprecated_integrations": { + "value": true, + "type": "boolean", + "required": false + }, + "next_results_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "result_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ManageIncidentStatus", + "qualifiedName": "PagerdutyApi.ManageIncidentStatus", + "fullyQualifiedName": "PagerdutyApi.ManageIncidentStatus@4.0.0", + "description": "Manage PagerDuty incident status and assignments.\n\n This tool allows you to acknowledge, resolve, escalate, or reassign a PagerDuty incident. It should be used when you need to update the status or assignment of an existing incident. OAuth scope 'incidents.write' is required.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_id", + "type": "string", + "required": false, + "description": "The unique identifier of the incident to be managed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email_for_request", + "type": "string", + "required": false, + "description": "Email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateIncident'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ManageIncidentStatus", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_id": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "user_email_for_request": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"resolved\",\"assigned_to_user\":\"user@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MergeIncidents", + "qualifiedName": "PagerdutyApi.MergeIncidents", + "fullyQualifiedName": "PagerdutyApi.MergeIncidents@4.0.0", + "description": "Merge source incidents into a target incident.\n\n This tool merges a list of source incidents into a specified target incident. The target incident will include alerts from the source incidents, and the source incidents will be resolved. Only incidents with alerts or those manually created in the UI can be merged. Ensure the target incident remains open and does not exceed 1000 alerts after merging.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The ID of the target incident for merging source incidents. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email_address", + "type": "string", + "required": false, + "description": "The email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'mergeIncidents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.MergeIncidents", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "PABC123", + "type": "string", + "required": false + }, + "user_email_address": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"source_incidents\":[\"INC123456\",\"INC123457\"],\"details\":\"Merger of incidents for completeness.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MigrateIntegrationToEventOrchestration", + "qualifiedName": "PagerdutyApi.MigrateIntegrationToEventOrchestration", + "fullyQualifiedName": "PagerdutyApi.MigrateIntegrationToEventOrchestration@4.0.0", + "description": "Migrate an integration to a different event orchestration.\n\n Move an Integration and its Routing Key from one Event Orchestration to another as specified in the request. Future events will be processed by the new Event Orchestration's Rules. Requires appropriate OAuth permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "event_orchestration_id", + "type": "string", + "required": false, + "description": "The unique identifier of an Event Orchestration to migrate the integration to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'migrateOrchestrationIntegration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.MigrateIntegrationToEventOrchestration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "event_orchestration_id": { + "value": "event-orch-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"integration_id\":\"integration-67890\",\"routing_key\":\"new-routing-key\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ModifyStatusPagePostUpdate", + "qualifiedName": "PagerdutyApi.ModifyStatusPagePostUpdate", + "fullyQualifiedName": "PagerdutyApi.ModifyStatusPagePostUpdate@4.0.0", + "description": "Update a specific status page post update.\n\n Use this tool to update details of a specific status page post by providing the required Post ID and Post Update ID. Appropriate for modifying existing post updates.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier for the resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_post_id", + "type": "string", + "required": false, + "description": "The unique ID of the Status Page Post to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_post_update_id", + "type": "string", + "required": false, + "description": "The unique identifier for the specific status page post update to be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateStatusPagePostUpdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ModifyStatusPagePostUpdate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "status_page_post_id": { + "value": "post456", + "type": "string", + "required": false + }, + "status_page_post_update_id": { + "value": "update789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"message\": \"The incident has been resolved.\", \"status\": \"resolved\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PreviewOnCallSchedule", + "qualifiedName": "PagerdutyApi.PreviewOnCallSchedule", + "fullyQualifiedName": "PagerdutyApi.PreviewOnCallSchedule@4.0.0", + "description": "Generate a preview of an on-call schedule without saving it.\n\n This tool previews an on-call schedule, allowing users to see time periods when team members are on-call without making any permanent changes. Useful for planning and adjustments before finalizing the schedule. Requires appropriate OAuth permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "start_date_range", + "type": "string", + "required": false, + "description": "The start date and time for the schedule preview. Use ISO 8601 format (e.g., '2023-10-01T10:00:00Z'). Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date", + "type": "string", + "required": false, + "description": "The end date of the range for the on-call schedule preview. Format as ISO 8601 string. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_overflow_entries", + "type": "boolean", + "required": false, + "description": "Set to true to allow schedule entries to overflow beyond the date range bounds. Defaults to false. True includes entries beyond specified dates. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createSchedulePreview'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.PreviewOnCallSchedule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "start_date_range": { + "value": "2023-10-01T10:00:00Z", + "type": "string", + "required": false + }, + "end_date": { + "value": "2023-10-31T10:00:00Z", + "type": "string", + "required": false + }, + "include_overflow_entries": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"schedule_id\":\"PABC123\",\"time_zone\":\"UTC\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveAddon", + "qualifiedName": "PagerdutyApi.RemoveAddon", + "fullyQualifiedName": "PagerdutyApi.RemoveAddon@4.0.0", + "description": "Remove an existing add-on from PagerDuty.\n\nUse this tool to delete an existing add-on in PagerDuty, which allows developers to integrate new functionality into the UI. This operation requires 'addons.write' OAuth scope.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the add-on to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAddon'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RemoveAddon", + "parameters": { + "resource_id": { + "value": "addon-123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveServiceCacheVariable", + "qualifiedName": "PagerdutyApi.RemoveServiceCacheVariable", + "fullyQualifiedName": "PagerdutyApi.RemoveServiceCacheVariable@4.0.0", + "description": "Delete external data cache variable on a service orchestration.\n\nDeletes data for an 'external_data' type cache variable within a service event orchestration. Useful for managing values used in orchestration rules. Requires 'services.write' authorization.", + "parameters": [ + { + "name": "cache_variable_id", + "type": "string", + "required": true, + "description": "The unique identifier for an external data cache variable to be deleted from the service event orchestration.", + "enum": null, + "inferrable": true + }, + { + "name": "service_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the service. Required for deleting cache variable data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteExternalDataCacheVarDataOnServiceOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RemoveServiceCacheVariable", + "parameters": { + "cache_variable_id": { + "value": "ext_data_var_12345", + "type": "string", + "required": true + }, + "service_identifier": { + "value": "service_abc_xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveServiceDependency", + "qualifiedName": "PagerdutyApi.RemoveServiceDependency", + "fullyQualifiedName": "PagerdutyApi.RemoveServiceDependency@4.0.0", + "description": "Disassociate dependencies between two services.\n\nUse this tool to disassociate or remove dependencies between two business or technical services in PagerDuty. Suitable for scenarios where you need to update or modify service relationships managed by different teams.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteServiceDependency'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RemoveServiceDependency", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"service_id\":\"PABC123\",\"dependent_service_id\":\"PXYZ789\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveServiceFromIncidentTrigger", + "qualifiedName": "PagerdutyApi.RemoveServiceFromIncidentTrigger", + "fullyQualifiedName": "PagerdutyApi.RemoveServiceFromIncidentTrigger@4.0.0", + "description": "Remove a service from an incident workflow trigger.\n\nUse this tool to remove an existing service from a specific incident workflow trigger in PagerDuty. This action requires scoped OAuth with `incident_workflows.write` permission.", + "parameters": [ + { + "name": "service_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the service to remove from the incident workflow trigger.", + "enum": null, + "inferrable": true + }, + { + "name": "trigger_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the incident workflow trigger from which the service will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteServiceFromIncidentWorkflowTrigger'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RemoveServiceFromIncidentTrigger", + "parameters": { + "service_identifier": { + "value": "svc-123456", + "type": "string", + "required": true + }, + "trigger_identifier": { + "value": "trg-789012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTag", + "qualifiedName": "PagerdutyApi.RemoveTag", + "fullyQualifiedName": "PagerdutyApi.RemoveTag@4.0.0", + "description": "Remove an existing tag from escalation policies, teams, or users.\n\nThis tool removes an existing tag applied to escalation policies, teams, or users in PagerDuty. Use this when you need to delete a tag for organizational or operational purposes.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the resource (tag) to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RemoveTag", + "parameters": { + "resource_id": { + "value": "PABC123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTeamEscalationPolicy", + "qualifiedName": "PagerdutyApi.RemoveTeamEscalationPolicy", + "fullyQualifiedName": "PagerdutyApi.RemoveTeamEscalationPolicy@4.0.0", + "description": "Remove an escalation policy from a team.\n\nThis tool removes an escalation policy from a specific team in PagerDuty. It's useful when you need to alter team configurations by deleting unnecessary or outdated escalation policies.", + "parameters": [ + { + "name": "escalation_policy_id", + "type": "string", + "required": true, + "description": "The identifier of the escalation policy to remove from the team.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the team resource from which the escalation policy will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTeamEscalationPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RemoveTeamEscalationPolicy", + "parameters": { + "escalation_policy_id": { + "value": "EP12345", + "type": "string", + "required": true + }, + "resource_id": { + "value": "T67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveUserContactMethod", + "qualifiedName": "PagerdutyApi.RemoveUserContactMethod", + "fullyQualifiedName": "PagerdutyApi.RemoveUserContactMethod@4.0.0", + "description": "Remove a user's contact method from PagerDuty.\n\nUse this tool to delete a user's contact method in PagerDuty. Useful for maintaining or updating user information. Requires appropriate OAuth permissions.", + "parameters": [ + { + "name": "contact_method_id", + "type": "string", + "required": true, + "description": "The identifier for the user's contact method to be removed from PagerDuty.", + "enum": null, + "inferrable": true + }, + { + "name": "user_resource_id", + "type": "string", + "required": true, + "description": "The ID of the user resource to identify which user the contact method belongs to.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteUserContactMethod'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RemoveUserContactMethod", + "parameters": { + "contact_method_id": { + "value": "abc12345", + "type": "string", + "required": true + }, + "user_resource_id": { + "value": "user_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveUserFromPagerduty", + "qualifiedName": "PagerdutyApi.RemoveUserFromPagerduty", + "fullyQualifiedName": "PagerdutyApi.RemoveUserFromPagerduty@4.0.0", + "description": "Remove an existing user from PagerDuty.\n\nUse this tool to delete a user from PagerDuty. Ensure the user has no assigned incidents unless your pricing plan supports the offboarding feature. The incidents reassignment is asynchronous and may not complete before the API call returns. This tool is suitable for managing user accounts on PagerDuty.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier of the user to be removed from PagerDuty.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RemoveUserFromPagerduty", + "parameters": { + "user_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveUserFromTeam", + "qualifiedName": "PagerdutyApi.RemoveUserFromTeam", + "fullyQualifiedName": "PagerdutyApi.RemoveUserFromTeam@4.0.0", + "description": "Remove a user from a specific team in PagerDuty.\n\nThis tool removes a specified user from a team in PagerDuty. It should be called when you need to manage team memberships by deleting a user. Requires appropriate OAuth scope 'teams.write'.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The ID of the team from which the user will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_user_id", + "type": "string", + "required": true, + "description": "The ID of the user to be removed from the team in PagerDuty.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTeamUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RemoveUserFromTeam", + "parameters": { + "team_id": { + "value": "T12345", + "type": "string", + "required": true + }, + "team_user_id": { + "value": "U67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveUserNotificationRule", + "qualifiedName": "PagerdutyApi.RemoveUserNotificationRule", + "fullyQualifiedName": "PagerdutyApi.RemoveUserNotificationRule@4.0.0", + "description": "Remove a user's notification rule on PagerDuty.\n\nThis tool removes a specific notification rule from a user's profile on PagerDuty. Useful for managing user notification settings within an account. Requires appropriate OAuth permissions.", + "parameters": [ + { + "name": "notification_rule_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the notification rule to be removed from the user's profile.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The ID of the user who owns the notification rule.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteUserNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RemoveUserNotificationRule", + "parameters": { + "notification_rule_identifier": { + "value": "rule_123456", + "type": "string", + "required": true + }, + "resource_id": { + "value": "user_78910", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveUserStatusUpdateNotificationRule", + "qualifiedName": "PagerdutyApi.RemoveUserStatusUpdateNotificationRule", + "fullyQualifiedName": "PagerdutyApi.RemoveUserStatusUpdateNotificationRule@4.0.0", + "description": "Removes a user's status update notification rule in PagerDuty.\n\nUse this tool to delete a notification rule for status updates assigned to a specific user in PagerDuty. This is helpful for managing user notification preferences and ensuring up-to-date settings. OAuth permission 'users.write' is required.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the user whose notification rule is being deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "status_update_notification_rule_id", + "type": "string", + "required": true, + "description": "The ID of the status update notification rule for a specific user in PagerDuty.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteUserStatusUpdateNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RemoveUserStatusUpdateNotificationRule", + "parameters": { + "resource_id": { + "value": "USR123456", + "type": "string", + "required": true + }, + "status_update_notification_rule_id": { + "value": "RULE987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RenderStatusUpdateTemplate", + "qualifiedName": "PagerdutyApi.RenderStatusUpdateTemplate", + "fullyQualifiedName": "PagerdutyApi.RenderStatusUpdateTemplate@4.0.0", + "description": "Renders a status update template with given incident data.\n\n Use this tool to render a status update template by providing the incident ID and a status update message. This helps in generating formatted updates based on specific incident details.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_id", + "type": "string", + "required": false, + "description": "The ID of the incident resource to render the template for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'renderTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RenderStatusUpdateTemplate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status_update\": \"Investigation in progress. We are working to resolve the issue as quickly as possible.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResolveOrReassociateIncidentAlerts", + "qualifiedName": "PagerdutyApi.ResolveOrReassociateIncidentAlerts", + "fullyQualifiedName": "PagerdutyApi.ResolveOrReassociateIncidentAlerts@4.0.0", + "description": "Resolve or reassign alerts to incidents.\n\n Use this tool to resolve multiple alerts or associate them with different incidents in PagerDuty. Only up to 250 alerts can be updated at a time. Ideal for managing alerts detected by monitoring systems that need resolution or reassessment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_resource_id", + "type": "string", + "required": false, + "description": "The unique identifier for the incident resource to be resolved or reassociated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email", + "type": "string", + "required": false, + "description": "The email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to be returned per page. Must be an integer. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "integer", + "required": false, + "description": "Offset for pagination to specify where search results should begin. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "populate_total", + "type": "boolean", + "required": false, + "description": "Set to `true` to populate the `total` field in pagination responses, otherwise it remains `null` for faster response. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateIncidentAlerts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ResolveOrReassociateIncidentAlerts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_resource_id": { + "value": "PABC123", + "type": "string", + "required": false + }, + "user_email": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "populate_total": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"alerts\":[{\"id\":\"alert1\"},{\"id\":\"alert2\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResolveOrUpdateIncidentAlert", + "qualifiedName": "PagerdutyApi.ResolveOrUpdateIncidentAlert", + "fullyQualifiedName": "PagerdutyApi.ResolveOrUpdateIncidentAlert@4.0.0", + "description": "Resolve an alert or update its associated incident.\n\n Use this tool to resolve a specific alert or associate it with a different parent incident in PagerDuty. This is useful when managing incidents that require updates or resolution. Ensure you have `incidents.write` OAuth permissions before calling this tool.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier for the resource you want to update or resolve. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "alert_id", + "type": "string", + "required": false, + "description": "The ID of the alert to resolve or update its parent incident. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email_address", + "type": "string", + "required": false, + "description": "The email address of a valid user associated with the account making the request. Ensure it is linked to the account with necessary permissions. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateIncidentAlert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.ResolveOrUpdateIncidentAlert", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "PABC1234", + "type": "string", + "required": false + }, + "alert_id": { + "value": "ALERT5678", + "type": "string", + "required": false + }, + "user_email_address": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"resolved\",\"resolution\":\"Issue fixed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAnalyticsData", + "qualifiedName": "PagerdutyApi.RetrieveAnalyticsData", + "fullyQualifiedName": "PagerdutyApi.RetrieveAnalyticsData@4.0.0", + "description": "Provides aggregated incident metrics for selected responders.\n\nThis tool retrieves aggregated metrics such as Seconds to Resolve, Seconds to Engage, and Sleep Hour Interruptions for all selected responders. It is called to analyze responder performance and incident handling efficiency. Note that the analytics data may take up to 24 hours to update.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAnalyticsMetricsRespondersAll'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RetrieveAnalyticsData", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"responders\":[\"responder1\",\"responder2\"],\"metrics\":[\"seconds_to_resolve\",\"seconds_to_engage\",\"sleep_hour_interruptions\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveImpactfulSupportingBusinessServices", + "qualifiedName": "PagerdutyApi.RetrieveImpactfulSupportingBusinessServices", + "fullyQualifiedName": "PagerdutyApi.RetrieveImpactfulSupportingBusinessServices@4.0.0", + "description": "Retrieve top supporting Business Services by impact for a given service.\n\nThis tool retrieves up to 200 supporting Business Services that have the highest impact on a specified Business Service. The services are sorted by impact, recency, and name. Use this tool to analyze service dependencies and impacts efficiently. Requires OAuth with 'services.read' scope.", + "parameters": [ + { + "name": "service_id", + "type": "string", + "required": true, + "description": "The unique identifier for the business service to retrieve its supporting services by impact.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_fields", + "type": "string", + "required": false, + "description": "Specify additional fields to include, such as highest impacting priority or total impacted count. Accepts 'services.highest_impacting_priority' or 'total_impacted_count'.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_ids", + "type": "string", + "required": false, + "description": "List of resource IDs to retrieve their supporting Business Services impacts. Include multiple IDs if needed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBusinessServiceSupportingServiceImpacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RetrieveImpactfulSupportingBusinessServices", + "parameters": { + "service_id": { + "value": "SVC123456", + "type": "string", + "required": true + }, + "include_additional_fields": { + "value": "total_impacted_count", + "type": "string", + "required": false + }, + "resource_ids": { + "value": "RES123,RES456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePastIncidents", + "qualifiedName": "PagerdutyApi.RetrievePastIncidents", + "fullyQualifiedName": "PagerdutyApi.RetrievePastIncidents@4.0.0", + "description": "Retrieve past incidents with similar metadata.\n\nFetches incidents from the past 6 months that share similar metadata and were generated on the same service as a given incident. Available with Event Intelligence or Digital Operations plans only.", + "parameters": [ + { + "name": "incident_id", + "type": "string", + "required": true, + "description": "The unique identifier of the incident. Used to fetch past incidents with similar metadata.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_past_incidents", + "type": "boolean", + "required": false, + "description": "Set to true to include the total number of past incidents in the response. This may increase response time.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of past incidents to return.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPastIncidents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RetrievePastIncidents", + "parameters": { + "incident_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "include_total_past_incidents": { + "value": true, + "type": "boolean", + "required": false + }, + "results_limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSessionConfigurations", + "qualifiedName": "PagerdutyApi.RetrieveSessionConfigurations", + "fullyQualifiedName": "PagerdutyApi.RetrieveSessionConfigurations@4.0.0", + "description": "Retrieve session configurations for a PagerDuty account.\n\nThis tool retrieves session configurations for a PagerDuty account, either returning all available configurations or a specific type if requested. No configurations result in a 404 error. Use it to access mobile and web session settings.", + "parameters": [ + { + "name": "session_configuration_type", + "type": "string", + "required": false, + "description": "Specifies session configuration type: 'mobile' or 'web'. Omit to return both types.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSessionConfigurations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.RetrieveSessionConfigurations", + "parameters": { + "session_configuration_type": { + "value": "mobile", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendChangeEvent", + "qualifiedName": "PagerdutyApi.SendChangeEvent", + "fullyQualifiedName": "PagerdutyApi.SendChangeEvent@4.0.0", + "description": "Send a change event to PagerDuty's API.\n\nUse this tool to send change events to PagerDuty via the V2 Events API. Useful for logging changes in systems and notifying PagerDuty of updates.", + "parameters": [], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createChangeEvent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.SendChangeEvent", + "parameters": {}, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetBusinessServicePriority", + "qualifiedName": "PagerdutyApi.SetBusinessServicePriority", + "fullyQualifiedName": "PagerdutyApi.SetBusinessServicePriority@4.0.0", + "description": "Set the priority threshold for a business service.\n\nUse this tool to update the account-level priority threshold for a business service. Requires the 'services.write' OAuth scope.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'putBusinessServicePriorityThresholds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.SetBusinessServicePriority", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"business_service_id\":\"12345\",\"priority\":\"high\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetServiceCustomFieldValues", + "qualifiedName": "PagerdutyApi.SetServiceCustomFieldValues", + "fullyQualifiedName": "PagerdutyApi.SetServiceCustomFieldValues@4.0.0", + "description": "Update custom field values for a specific service.\n\n Use this tool to set custom field values for a specific service in PagerDuty. It requires the scoped OAuth `services.write` permission.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "service_id", + "type": "string", + "required": false, + "description": "The unique identifier of the service whose custom field values need to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateServiceCustomFieldValues'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.SetServiceCustomFieldValues", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "service_id": { + "value": "PABC123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"custom_field_1\":\"value1\",\"custom_field_2\":\"value2\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SnoozeIncident", + "qualifiedName": "PagerdutyApi.SnoozeIncident", + "fullyQualifiedName": "PagerdutyApi.SnoozeIncident@4.0.0", + "description": "Temporarily suspend alerts for an incident.\n\n Use this tool to pause notifications for a specific incident, allowing you to manage alerts more effectively. Ideal for situations where immediate attention isn't required.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_id", + "type": "string", + "required": false, + "description": "The unique ID of the incident to snooze. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email", + "type": "string", + "required": false, + "description": "The email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createIncidentSnooze'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.SnoozeIncident", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_id": { + "value": "INC123456", + "type": "string", + "required": false + }, + "user_email": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"duration\":\"3600\", \"reason\":\"No immediate action required\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "StartIncidentWorkflow", + "qualifiedName": "PagerdutyApi.StartIncidentWorkflow", + "fullyQualifiedName": "PagerdutyApi.StartIncidentWorkflow@4.0.0", + "description": "Start an instance of an incident workflow for automation.\n\n This tool initiates an incident workflow, which consists of configurable steps and triggers, to execute automated actions related to an incident. Use it to automate processes in response to specific incident events.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The ID of the resource to start the incident workflow for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createIncidentWorkflowInstance'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.StartIncidentWorkflow", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"incident_description\":\"System outage in region 1\",\"priority\":\"high\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SubscribeBusinessServiceEntities", + "qualifiedName": "PagerdutyApi.SubscribeBusinessServiceEntities", + "fullyQualifiedName": "PagerdutyApi.SubscribeBusinessServiceEntities@4.0.0", + "description": "Subscribe entities to a specified business service.\n\n This tool subscribes specified entities to a business service, allowing them to receive notifications. It should be called when you need to add entities to the notification list for a business service.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the business service to which entities will be subscribed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createBusinessServiceNotificationSubscribers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.SubscribeBusinessServiceEntities", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "service-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"entities\":[{\"id\":\"entity-1\",\"type\":\"host\"},{\"id\":\"entity-2\",\"type\":\"application\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SubscribeIncidentNotifications", + "qualifiedName": "PagerdutyApi.SubscribeIncidentNotifications", + "fullyQualifiedName": "PagerdutyApi.SubscribeIncidentNotifications@4.0.0", + "description": "Subscribe entities to incident status update notifications.\n\n This tool subscribes specified entities to receive notifications about updates to an incident's status. It requires the `subscribers.write` OAuth scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The ID of the resource to subscribe entities for notification updates. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createIncidentNotificationSubscribers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.SubscribeIncidentNotifications", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "INC123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"subscribers\":[{\"type\":\"user\",\"id\":\"user123\"},{\"type\":\"team\",\"id\":\"team456\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SubscribeToBusinessService", + "qualifiedName": "PagerdutyApi.SubscribeToBusinessService", + "fullyQualifiedName": "PagerdutyApi.SubscribeToBusinessService@4.0.0", + "description": "Subscribe your account to a PagerDuty business service.\n\nUse this tool to subscribe your account to a specified business service in PagerDuty. Authorization with the 'subscribers.write' scope is required for this action.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The ID of the business service resource to subscribe to.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createBusinessServiceAccountSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.SubscribeToBusinessService", + "parameters": { + "resource_id": { + "value": "PABC12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TestWebhookSubscription", + "qualifiedName": "PagerdutyApi.TestWebhookSubscription", + "fullyQualifiedName": "PagerdutyApi.TestWebhookSubscription@4.0.0", + "description": "Test a webhook subscription by firing a test event.\n\nThis tool tests a webhook subscription by firing a `pagey.ping` event to the specified destination, ensuring the webhook is correctly configured. Requires appropriate OAuth scope.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique ID of the webhook subscription to be tested.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'testWebhookSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.TestWebhookSubscription", + "parameters": { + "resource_id": { + "value": "abc123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnsubscribeBusinessServiceNotifications", + "qualifiedName": "PagerdutyApi.UnsubscribeBusinessServiceNotifications", + "fullyQualifiedName": "PagerdutyApi.UnsubscribeBusinessServiceNotifications@4.0.0", + "description": "Unsubscribe users from Business Service notifications.\n\n Use this tool to unsubscribe specific users from receiving notifications for a particular Business Service on PagerDuty.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the resource to unsubscribe from. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeBusinessServiceNotificationSubscriber'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UnsubscribeBusinessServiceNotifications", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "P123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"user_ids\":[\"U123456\",\"U789012\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnsubscribeFromBusinessService", + "qualifiedName": "PagerdutyApi.UnsubscribeFromBusinessService", + "fullyQualifiedName": "PagerdutyApi.UnsubscribeFromBusinessService@4.0.0", + "description": "Unsubscribe an account from a business service.\n\nUse this tool to remove your account's subscription from a specified business service. This action requires appropriate OAuth permissions ('subscribers.write').", + "parameters": [ + { + "name": "business_service_id", + "type": "string", + "required": true, + "description": "The unique identifier of the business service to unsubscribe from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeBusinessServiceAccountSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UnsubscribeFromBusinessService", + "parameters": { + "business_service_id": { + "value": "BS123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnsubscribeIncidentNotification", + "qualifiedName": "PagerdutyApi.UnsubscribeIncidentNotification", + "fullyQualifiedName": "PagerdutyApi.UnsubscribeIncidentNotification@4.0.0", + "description": "Unsubscribe users from incident status update notifications.\n\n Removes specified subscribers from receiving status update notifications for a particular incident. Useful for managing notification preferences in incident response scenarios.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier for the incident resource to unsubscribe from notifications. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeIncidentNotificationSubscribers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UnsubscribeIncidentNotification", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "INC123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"user_ids\":[\"user1@example.com\",\"user2@example.com\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnsubscribeTeamNotifications", + "qualifiedName": "PagerdutyApi.UnsubscribeTeamNotifications", + "fullyQualifiedName": "PagerdutyApi.UnsubscribeTeamNotifications@4.0.0", + "description": "Unsubscribe a team from specific notification subscriptions.\n\n Use this tool to unsubscribe a specific team from receiving notifications on specified entities. This is helpful when you need to manage or reduce notification overload for teams.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The ID of the resource to unsubscribe from notifications. This should be a string value representing the unique identifier for the specific resource. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeTeamNotificationSubscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UnsubscribeTeamNotifications", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "team_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"unsubscribe\": true, \"notification_types\": [\"email\", \"sms\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnsubscribeUserNotifications", + "qualifiedName": "PagerdutyApi.UnsubscribeUserNotifications", + "fullyQualifiedName": "PagerdutyApi.UnsubscribeUserNotifications@4.0.0", + "description": "Unsubscribe a user from notification subscriptions.\n\n Use this tool to unsubscribe a specific user from notifications associated with certain entities in the system. Ideal for managing user notification preferences efficiently.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the resource from which to unsubscribe the user. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'unsubscribeUserNotificationSubscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UnsubscribeUserNotifications", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"user_id\": \"user456\", \"unsubscribe\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateAlertGroupingSetting", + "qualifiedName": "PagerdutyApi.UpdateAlertGroupingSetting", + "fullyQualifiedName": "PagerdutyApi.UpdateAlertGroupingSetting@4.0.0", + "description": "Update an existing alert grouping setting in PagerDuty.\n\n Use this tool to update an alert grouping setting in PagerDuty. This is particularly useful for managing how alerts are grouped and ensuring the correct configurations are in place. Note that if 'services' are not provided, existing services will remain unchanged. Requires scoped OAuth with `services.write`.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The ID of the alert grouping setting to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'putAlertGroupingSetting'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateAlertGroupingSetting", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "alert-grouping-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"grouping\":\"by_service\",\"threshold\":5}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateAutomationAction", + "qualifiedName": "PagerdutyApi.UpdateAutomationAction", + "fullyQualifiedName": "PagerdutyApi.UpdateAutomationAction@4.0.0", + "description": "Update an existing automation action.\n\n Use this tool to update the details of an existing automation action by specifying its ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the automation action to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateAutomationAction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateAutomationAction", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Action\",\"type\":\"automation\",\"enabled\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateAutomationActionRunner", + "qualifiedName": "PagerdutyApi.UpdateAutomationActionRunner", + "fullyQualifiedName": "PagerdutyApi.UpdateAutomationActionRunner@4.0.0", + "description": "Update an Automation Action runner in PagerDuty.\n\n This tool updates the configuration of a specific Automation Action runner in PagerDuty. It should be called when you need to modify the settings or details of an existing runner, such as changing the runner's parameters or status.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the Automation Action runner to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateAutomationActionsRunner'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateAutomationActionRunner", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"active\",\"configuration\":{\"key1\":\"value1\",\"key2\":\"value2\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBusinessService", + "qualifiedName": "PagerdutyApi.UpdateBusinessService", + "fullyQualifiedName": "PagerdutyApi.UpdateBusinessService@4.0.0", + "description": "Update the details of a business service in PagerDuty.\n\nUse this tool to update an existing business service, which models capabilities across multiple technical services. This tool is useful when business services require modifications, such as changes in ownership or scope. It requires the `services.write` OAuth scope.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the business service that needs updating.", + "enum": null, + "inferrable": true + }, + { + "name": "business_service_description", + "type": "string", + "required": false, + "description": "The description of the Business Service to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "business_service_name", + "type": "string", + "required": false, + "description": "The name of the Business Service to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "business_service_owner", + "type": "string", + "required": false, + "description": "Specify the owner of the Business Service. Typically, this should be the point of contact responsible for the service.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The ID of the team associated with the business service.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateBusinessService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateBusinessService", + "parameters": { + "resource_id": { + "value": "business-service-1234", + "type": "string", + "required": true + }, + "business_service_description": { + "value": "Updated description for the business service.", + "type": "string", + "required": false + }, + "business_service_name": { + "value": "New Business Service Name", + "type": "string", + "required": false + }, + "business_service_owner": { + "value": "owner@example.com", + "type": "string", + "required": false + }, + "team_id": { + "value": "team-5678", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCacheVariable", + "qualifiedName": "PagerdutyApi.UpdateCacheVariable", + "fullyQualifiedName": "PagerdutyApi.UpdateCacheVariable@4.0.0", + "description": "Update a cache variable for event orchestration rules.\n\nThis tool updates a cache variable in a Global Event Orchestration, allowing stored event data to be used in orchestration rules. Useful for modifying conditions or actions based on event data. Requires `event_orchestrations.write` OAuth scope.", + "parameters": [ + { + "name": "cache_variable_id", + "type": "string", + "required": true, + "description": "The ID of the cache variable to update for the event orchestration.", + "enum": null, + "inferrable": true + }, + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The ID of the Event Orchestration to update the cache variable for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateCacheVarOnGlobalOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateCacheVariable", + "parameters": { + "cache_variable_id": { + "value": "cv-12345", + "type": "string", + "required": true + }, + "event_orchestration_id": { + "value": "eo-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCacheVariableData", + "qualifiedName": "PagerdutyApi.UpdateCacheVariableData", + "fullyQualifiedName": "PagerdutyApi.UpdateCacheVariableData@4.0.0", + "description": "Update cache variable data for service event orchestration.\n\nThis tool updates the data for an external data type cache variable within a service event orchestration. Use it to modify string, number, or boolean values stored via a dedicated API endpoint. These values can be used in event orchestration conditions and actions.", + "parameters": [ + { + "name": "cache_variable_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Cache Variable to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "service_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the service whose cache variable data is to be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateExternalDataCacheVarDataOnServiceOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateCacheVariableData", + "parameters": { + "cache_variable_id": { + "value": "cache_var_12345", + "type": "string", + "required": true + }, + "service_identifier": { + "value": "service_abc_6789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateChangeEvent", + "qualifiedName": "PagerdutyApi.UpdateChangeEvent", + "fullyQualifiedName": "PagerdutyApi.UpdateChangeEvent@4.0.0", + "description": "Updates an existing change event in PagerDuty.\n\n Use this tool to modify details of an existing change event using PagerDuty's updateChangeEvent API. Requires appropriate OAuth scope (`change_events.write`).\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the change event to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateChangeEvent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateChangeEvent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "CH123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"resolved\",\"details\":\"Resolved issue after investigation.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCustomFieldOption", + "qualifiedName": "PagerdutyApi.UpdateCustomFieldOption", + "fullyQualifiedName": "PagerdutyApi.UpdateCustomFieldOption@4.0.0", + "description": "Update a field option for a custom incident field.\n\n This tool updates a specific field option for a custom field in a PagerDuty incident type. Use it to modify custom data for improved filtering, search, and analytics features. Requires 'custom_fields.write' OAuth scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_type_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the PagerDuty incident type. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "field_option_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the field option to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "field_id", + "type": "string", + "required": false, + "description": "The ID of the custom field to be updated in the incident type. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateIncidentTypeCustomFieldFieldOption'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateCustomFieldOption", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_type_id_or_name": { + "value": "incidentType123", + "type": "string", + "required": false + }, + "field_option_identifier": { + "value": "option567", + "type": "string", + "required": false + }, + "field_id": { + "value": "field890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Option\", \"description\": \"This is an updated description.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEscalationPolicy", + "qualifiedName": "PagerdutyApi.UpdateEscalationPolicy", + "fullyQualifiedName": "PagerdutyApi.UpdateEscalationPolicy@4.0.0", + "description": "Update an existing escalation policy and its rules.\n\n Use this tool to update an existing escalation policy and define which user should be alerted at which time. This tool requires appropriate OAuth credentials with `escalation_policies.write` permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "escalation_policy_id", + "type": "string", + "required": false, + "description": "The unique identifier of the escalation policy to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateEscalationPolicy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateEscalationPolicy", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "escalation_policy_id": { + "value": "P123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"rules\":[{\" escalation_level\":1,\"user_ids\":[\"U789012\"],\"start_time\":\"09:00\",\"end_time\":\"17:00\"}]} ", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEventIntegration", + "qualifiedName": "PagerdutyApi.UpdateEventIntegration", + "fullyQualifiedName": "PagerdutyApi.UpdateEventIntegration@4.0.0", + "description": "Update an event orchestration integration.\n\n Use this tool to update an integration associated with an event orchestration. This is useful when you need to configure or change settings for how events are sent to PagerDuty using a specific integration.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "event_orchestration_id", + "type": "string", + "required": false, + "description": "The unique ID of the event orchestration to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "integration_id_for_update", + "type": "string", + "required": false, + "description": "The ID of an Integration to update within the event orchestration. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateOrchestrationIntegration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateEventIntegration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "event_orchestration_id": { + "value": "123456", + "type": "string", + "required": false + }, + "integration_id_for_update": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"config\":\"new_settings_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEventOrchestration", + "qualifiedName": "PagerdutyApi.UpdateEventOrchestration", + "fullyQualifiedName": "PagerdutyApi.UpdateEventOrchestration@4.0.0", + "description": "Update a Global Event Orchestration in PagerDuty.\n\n This tool updates a Global Event Orchestration, allowing users to define and modify sets of Global Rules and Router Rules for event routing and processing. It requires 'event_orchestrations.write' permission.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "event_orchestration_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Event Orchestration to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateOrchestration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateEventOrchestration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "event_orchestration_id": { + "value": "abcd1234-5678-90ef-ghij-klmnopqrstuv", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"rules\":[{\"id\":\"rule1\",\"conditions\":{\"type\":\"severity\",\"value\":\"high\"},\"actions\":[{\"type\":\"notify\",\"target\":\"team@example.com\"}]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEventOrchestrationFeatures", + "qualifiedName": "PagerdutyApi.UpdateEventOrchestrationFeatures", + "fullyQualifiedName": "PagerdutyApi.UpdateEventOrchestrationFeatures@4.0.0", + "description": "Update features for Event Orchestration in PagerDuty.\n\n This tool updates the enablement settings for specific product add-ons on an Event Orchestration in PagerDuty. Currently supports only the `aiops` feature. Use this to enable or disable features contained within the addon. Note: If the account lacks entitlement for AIOps, the change will occur but with a warning.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "event_orchestration_id", + "type": "string", + "required": false, + "description": "The unique identifier for an Event Orchestration to update features. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "feature_enablement_identifier", + "type": "string", + "required": false, + "description": "Specifies the feature enablement identifier for a product addon. Currently, only 'aiops' is supported. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateEventOrchestrationFeatureEnablements'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateEventOrchestrationFeatures", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "event_orchestration_id": { + "value": "123456", + "type": "string", + "required": false + }, + "feature_enablement_identifier": { + "value": "aiops", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"enabled\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEventOrchestrationGlobalRules", + "qualifiedName": "PagerdutyApi.UpdateEventOrchestrationGlobalRules", + "fullyQualifiedName": "PagerdutyApi.UpdateEventOrchestrationGlobalRules@4.0.0", + "description": "Update global orchestration rules for event orchestration.\n\n This tool updates the Global Orchestration Rules for an Event Orchestration in PagerDuty. It is used to modify and enhance events by evaluating them against a set of global rules and potentially routing them for further processing. Use this tool when you need to adjust the rules governing all events within a specific orchestration.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "event_orchestration_id", + "type": "string", + "required": false, + "description": "The unique identifier for an Event Orchestration to update its global rules. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateOrchPathGlobal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateEventOrchestrationGlobalRules", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "event_orchestration_id": { + "value": "EO123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"rules\":[{\"type\":\"event\",\"action\":\"route\",\"conditions\":{\"severity\":\"error\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateEventRule", + "qualifiedName": "PagerdutyApi.UpdateEventRule", + "fullyQualifiedName": "PagerdutyApi.UpdateEventRule@4.0.0", + "description": "Update an existing event rule within a ruleset.\n\n This tool updates an event rule in a specific ruleset in PagerDuty. It supports partial updates, allowing modification of any combination of writable fields. It is recommended to migrate to Event Orchestration for enhanced features. OAuth with `event_rules.write` scope is required.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique ID of the ruleset resource to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "event_rule_id", + "type": "string", + "required": false, + "description": "The unique identifier of the Event Rule to update within the ruleset. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateRulesetEventRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateEventRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "123456", + "type": "string", + "required": false + }, + "event_rule_id": { + "value": "abcdef", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Event Rule\", \"enabled\": true, \"conditions\": {\"type\": \"severity\", \"value\": \"high\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateExtension", + "qualifiedName": "PagerdutyApi.UpdateExtension", + "fullyQualifiedName": "PagerdutyApi.UpdateExtension@4.0.0", + "description": "Update an existing extension in PagerDuty.\n\n Use this tool to update an existing extension in PagerDuty. Extensions are linked to services and require appropriate permissions. This call requires 'extensions.write' OAuth scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The ID of the extension resource you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateExtension'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateExtension", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "ext-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"type\":\"extension\",\"attributes\":{\"name\":\"Updated Extension\",\"type\":\"generic\",\"url\":\"https://example.com/updated\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateExternalDataCacheVariable", + "qualifiedName": "PagerdutyApi.UpdateExternalDataCacheVariable", + "fullyQualifiedName": "PagerdutyApi.UpdateExternalDataCacheVariable@4.0.0", + "description": "Update values for external data cache variables in global event orchestration.\n\nThis tool updates the data for an external data type cache variable within a global event orchestration in PagerDuty. It's used to store string, number, or boolean values, which can be utilized in conditions or actions in event orchestration rules. Requires appropriate OAuth permissions.", + "parameters": [ + { + "name": "cache_variable_id", + "type": "string", + "required": true, + "description": "The unique identifier for a Cache Variable within the event orchestration. This ID is used to specify which cache variable's data is to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "event_orchestration_id", + "type": "string", + "required": true, + "description": "The unique identifier for an Event Orchestration to be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateExternalDataCacheVarDataOnGlobalOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateExternalDataCacheVariable", + "parameters": { + "cache_variable_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "event_orchestration_id": { + "value": "event-orch-001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateIncidentCustomField", + "qualifiedName": "PagerdutyApi.UpdateIncidentCustomField", + "fullyQualifiedName": "PagerdutyApi.UpdateIncidentCustomField@4.0.0", + "description": "Update a custom field for a specific incident type.\n\n Use this tool to update custom fields for incident types, providing additional context and support for filtering and analytics. Custom field options can be modified in the same call.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_type_identifier", + "type": "string", + "required": false, + "description": "The ID or name of the specific incident type to update the custom field for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "field_identifier", + "type": "string", + "required": false, + "description": "Provide the unique ID of the field to be updated for the incident type. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateIncidentTypeCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateIncidentCustomField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_type_identifier": { + "value": "incident_123", + "type": "string", + "required": false + }, + "field_identifier": { + "value": "custom_field_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"key\": \"value\", \"additional_info\": \"details\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateIncidentCustomFields", + "qualifiedName": "PagerdutyApi.UpdateIncidentCustomFields", + "fullyQualifiedName": "PagerdutyApi.UpdateIncidentCustomFields@4.0.0", + "description": "Update custom field values for a specific incident.\n\n This tool updates custom field values for a given incident in PagerDuty. Requires 'incidents.write' OAuth scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_id", + "type": "string", + "required": false, + "description": "The ID of the incident to update custom field values. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'setIncidentFieldValues'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateIncidentCustomFields", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_id": { + "value": "PABC1234", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"custom_field_1\":\"value1\",\"custom_field_2\":\"value2\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateIncidentLogEntry", + "qualifiedName": "PagerdutyApi.UpdateIncidentLogEntry", + "fullyQualifiedName": "PagerdutyApi.UpdateIncidentLogEntry@4.0.0", + "description": "Update an existing incident log entry channel.\n\n This tool updates an existing incident log entry channel in PagerDuty. Use it when you need to modify the communication channel for a specific log entry. Requires OAuth scope: `incidents.write`.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_resource_id", + "type": "string", + "required": false, + "description": "The unique ID of the incident log entry resource to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email", + "type": "string", + "required": false, + "description": "The email address of a valid user associated with the account making the log entry update request. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateLogEntryChannel'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateIncidentLogEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_resource_id": { + "value": "PABC123456", + "type": "string", + "required": false + }, + "user_email": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"channel\":\"email\",\"message\":\"Updated communication channel.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateIncidents", + "qualifiedName": "PagerdutyApi.UpdateIncidents", + "fullyQualifiedName": "PagerdutyApi.UpdateIncidents@4.0.0", + "description": "Manage the status of multiple incidents.\n\n Use this tool to acknowledge, resolve, escalate, or reassign up to 250 incidents simultaneously. It is useful for addressing and managing problems that need immediate attention. Ensure to stay within the rate limits and have the required 'incidents.write' OAuth permission.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_email", + "type": "string", + "required": false, + "description": "The email address of a valid user associated with the account making the request. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of incident results to return per page. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_offset", + "type": "integer", + "required": false, + "description": "Offset from where to start paginated search results. This is used to navigate search results effectively. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_in_pagination", + "type": "boolean", + "required": false, + "description": "Set to true to populate the 'total' field in pagination responses. Otherwise, it remains null for faster response times. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateIncidents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateIncidents", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_email": { + "value": "jane.doe@example.com", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_start_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "include_total_in_pagination": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"status\": \"resolved\", \"incident_ids\": [\"abc123\", \"def456\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateIncidentServiceImpact", + "qualifiedName": "PagerdutyApi.UpdateIncidentServiceImpact", + "fullyQualifiedName": "PagerdutyApi.UpdateIncidentServiceImpact@4.0.0", + "description": "Update the impact of an incident on a business service.\n\n Use this tool to change the impact level of a specific incident on a specified business service. Useful for managing and communicating the effects of incidents within an organization. Requires appropriate OAuth permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier for the incident resource to update impact. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "business_service_id", + "type": "string", + "required": false, + "description": "The ID of the specific business service affected by the incident. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'putIncidentManualBusinessServiceAssociation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateIncidentServiceImpact", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "INC123456", + "type": "string", + "required": false + }, + "business_service_id": { + "value": "BS987654", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"impact\":\"high\",\"description\":\"Severe disruption to business service.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateIncidentStatus", + "qualifiedName": "PagerdutyApi.UpdateIncidentStatus", + "fullyQualifiedName": "PagerdutyApi.UpdateIncidentStatus@4.0.0", + "description": "Create a status update for a specific incident.\n\n Use this tool to update the status of a specific incident in PagerDuty. It allows for optional customization of the email notification through the `subject` and `html_message` properties.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_id", + "type": "string", + "required": false, + "description": "The ID of the incident to update. This is required to specify which incident the status update is for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "requestor_email", + "type": "string", + "required": false, + "description": "The email address of a valid user making the request in PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createIncidentStatusUpdate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateIncidentStatus", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_id": { + "value": "PABC123", + "type": "string", + "required": false + }, + "requestor_email": { + "value": "user@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"resolved\",\"body\":\"Incident has been resolved successfully.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateIncidentType", + "qualifiedName": "PagerdutyApi.UpdateIncidentType", + "fullyQualifiedName": "PagerdutyApi.UpdateIncidentType@4.0.0", + "description": "Update or categorize an incident type on PagerDuty.\n\n Use this tool to update or categorize an incident type on PagerDuty, such as security or major incidents. Requires appropriate OAuth scope for modification.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_type_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the incident type to be updated. Specify to categorize the incident. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateIncidentType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateIncidentType", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_type_id_or_name": { + "value": "security_incident", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"description\":\"Updated categorization for security incidents\",\"category\":\"Security\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateIncidentWorkflow", + "qualifiedName": "PagerdutyApi.UpdateIncidentWorkflow", + "fullyQualifiedName": "PagerdutyApi.UpdateIncidentWorkflow@4.0.0", + "description": "Updates an existing incident workflow in PagerDuty.\n\n Use this tool to update an incident workflow, which includes configurable steps and triggers for executing automated actions on an incident. Requires appropriate OAuth permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "incident_workflow_id", + "type": "string", + "required": false, + "description": "The unique ID of the incident workflow to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'putIncidentWorkflow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateIncidentWorkflow", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "incident_workflow_id": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"resolved\",\"description\":\"Incident has been handled successfully.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateIncidentWorkflowTrigger", + "qualifiedName": "PagerdutyApi.UpdateIncidentWorkflowTrigger", + "fullyQualifiedName": "PagerdutyApi.UpdateIncidentWorkflowTrigger@4.0.0", + "description": "Update an existing incident workflow trigger.\n\n Use this tool to update details of an existing incident workflow trigger in PagerDuty. This should be called when modifications to workflow triggers are needed for incident management. Scoped OAuth with 'incident_workflows.write' permission is required.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The ID of the incident workflow trigger to be updated in PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateIncidentWorkflowTrigger'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateIncidentWorkflowTrigger", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "trigger_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"resolved\",\"description\":\"Updated incident trigger for monitoring purposes.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMaintenanceWindow", + "qualifiedName": "PagerdutyApi.UpdateMaintenanceWindow", + "fullyQualifiedName": "PagerdutyApi.UpdateMaintenanceWindow@4.0.0", + "description": "Update an existing maintenance window for services.\n\n Use this tool to modify an existing maintenance window, temporarily disabling specified services for a defined period. Ideal for scheduling downtime updates or adjustments.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier for the maintenance window to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateMaintenanceWindow'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateMaintenanceWindow", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "MW123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"services\":[{\"id\":\"service_id_1\",\"type\":\"service\"}],\"start\":\"2023-10-01T10:00:00Z\",\"end\":\"2023-10-01T12:00:00Z\",\"description\":\"Scheduled maintenance update\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateOauthClient", + "qualifiedName": "PagerdutyApi.UpdateOauthClient", + "fullyQualifiedName": "PagerdutyApi.UpdateOauthClient@4.0.0", + "description": "Update an existing OAuth client configuration.\n\nThis tool updates an existing OAuth client, triggering token validation with the OAuth server. Requires admin or owner role permissions.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the OAuth client resource to update.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_client_id", + "type": "string", + "required": false, + "description": "The OAuth client ID as provided by the OAuth server.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_client_name", + "type": "string", + "required": false, + "description": "A human-readable name for the OAuth client.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_client_secret", + "type": "string", + "required": false, + "description": "The OAuth client secret provided by the OAuth server for authentication.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_grant_type", + "type": "string", + "required": false, + "description": "Specifies the OAuth grant type to use, currently only 'client_credentials' is supported. Always use 'client_credentials' as input.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_scopes_requested", + "type": "string", + "required": false, + "description": "The OAuth scopes requested for this client. Provide as a space-separated string.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_token_endpoint_url", + "type": "string", + "required": false, + "description": "The URL for the OAuth token endpoint required for this client.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateOauthClient'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateOauthClient", + "parameters": { + "resource_id": { + "value": "client_12345", + "type": "string", + "required": true + }, + "oauth_client_id": { + "value": "oauth_abcde12345", + "type": "string", + "required": false + }, + "oauth_client_name": { + "value": "My OAuth Client", + "type": "string", + "required": false + }, + "oauth_client_secret": { + "value": "my_secret_12345", + "type": "string", + "required": false + }, + "oauth_grant_type": { + "value": "client_credentials", + "type": "string", + "required": false + }, + "oauth_scopes_requested": { + "value": "read write", + "type": "string", + "required": false + }, + "oauth_token_endpoint_url": { + "value": "https://api.example.com/token", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateOnCallSchedule", + "qualifiedName": "PagerdutyApi.UpdateOnCallSchedule", + "fullyQualifiedName": "PagerdutyApi.UpdateOnCallSchedule@4.0.0", + "description": "Update an existing on-call schedule in PagerDuty.\n\n Use this tool to modify the time periods that users are on-call in an existing schedule in PagerDuty. This function is useful when duty schedules need adjustments. Requires 'schedules.write' permission.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "schedule_id", + "type": "string", + "required": false, + "description": "The ID of the on-call schedule to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_schedule_overflow", + "type": "boolean", + "required": false, + "description": "Allows schedule entries to exceed date range bounds if set to true. Defaults to false. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateSchedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateOnCallSchedule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "schedule_id": { + "value": "PABC123XYZ", + "type": "string", + "required": false + }, + "allow_schedule_overflow": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"time_periods\":[{\"start\":\"2023-11-01T00:00:00Z\",\"end\":\"2023-11-08T00:00:00Z\",\"user_ids\":[\"USR123\",\"USR456\"]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateOrchestrationRoutingRules", + "qualifiedName": "PagerdutyApi.UpdateOrchestrationRoutingRules", + "fullyQualifiedName": "PagerdutyApi.UpdateOrchestrationRoutingRules@4.0.0", + "description": "Update rules for routing events in Global Orchestration.\n\n This tool updates the routing rules for a Global Orchestration in PagerDuty. It evaluates events against rules to determine routing to specific services. Use this tool when you need to modify how events are routed within a global orchestration. Requires necessary OAuth permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "event_orchestration_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Event Orchestration to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateOrchPathRouter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateOrchestrationRoutingRules", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "event_orchestration_id": { + "value": "12345abcde", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"rules\":[{\"type\":\"event\",\"action\":\"route\",\"conditions\":{\"severity\":\"error\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePagerdutyAddon", + "qualifiedName": "PagerdutyApi.UpdatePagerdutyAddon", + "fullyQualifiedName": "PagerdutyApi.UpdatePagerdutyAddon@4.0.0", + "description": "Update an existing add-on in PagerDuty.\n\n This tool updates a specific add-on in PagerDuty by embedding a given URL in an iframe accessible through the UI. It requires the 'addons.write' OAuth scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier for the add-on resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateAddon'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdatePagerdutyAddon", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "addon_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"iframe_url\": \"https://example.com/addon\", \"description\": \"Updated add-on description\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePagerdutyUser", + "qualifiedName": "PagerdutyApi.UpdatePagerdutyUser", + "fullyQualifiedName": "PagerdutyApi.UpdatePagerdutyUser@4.0.0", + "description": "Update an existing PagerDuty user's information.\n\n Use this tool to update details of a user in a PagerDuty account. This is useful for modifying user permissions, contact information, or any other user-related data. Requires appropriate OAuth permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": false, + "description": "The unique identifier for the user to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdatePagerdutyUser", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_id": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\":\"new_email@example.com\",\"name\":\"Updated Name\",\"role\":\"admin\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateRuleset", + "qualifiedName": "PagerdutyApi.UpdateRuleset", + "fullyQualifiedName": "PagerdutyApi.UpdateRuleset@4.0.0", + "description": "Update an existing ruleset in PagerDuty.\n\n Use this tool to update a ruleset in PagerDuty, which routes events to endpoints and defines actions based on event content. Note: Rulesets are being phased out, and migration to Event Orchestration is recommended. Requires `event_rules.write` OAuth scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier for the ruleset to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateRuleset'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateRuleset", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "PDR123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Ruleset\",\"conditions\":[{\"type\":\"event\",\"value\":\"incident\"}],\"actions\":[{\"type\":\"notify\",\"destination\":\"webhook_url\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateServiceCustomField", + "qualifiedName": "PagerdutyApi.UpdateServiceCustomField", + "fullyQualifiedName": "PagerdutyApi.UpdateServiceCustomField@4.0.0", + "description": "Update a custom field for a PagerDuty service.\n\n This tool updates a specified custom field for services in PagerDuty. It requires OAuth with `custom_fields.write` permission.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "service_field_id", + "type": "string", + "required": false, + "description": "The unique identifier of the custom field to update in PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateServiceCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateServiceCustomField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "service_field_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"value\":\"Updated Value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateServiceCustomFieldOption", + "qualifiedName": "PagerdutyApi.UpdateServiceCustomFieldOption", + "fullyQualifiedName": "PagerdutyApi.UpdateServiceCustomFieldOption@4.0.0", + "description": "Update a custom field option in a service.\n\n Use this tool to update a specific custom field option for a service in PagerDuty. This is useful when you need to adjust configurations related to custom fields. Requires appropriate OAuth permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "field_id", + "type": "string", + "required": false, + "description": "The unique identifier of the field to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "field_option_id", + "type": "string", + "required": false, + "description": "The ID of the custom field option to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateServiceCustomFieldOption'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateServiceCustomFieldOption", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "field_id": { + "value": "field-123abc", + "type": "string", + "required": false + }, + "field_option_id": { + "value": "option-456def", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Option Name\",\"description\":\"Updated description for the option.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateServiceDetails", + "qualifiedName": "PagerdutyApi.UpdateServiceDetails", + "fullyQualifiedName": "PagerdutyApi.UpdateServiceDetails@4.0.0", + "description": "Update details of an existing service in PagerDuty.\n\n Update information for an existing service, such as an application, component, or team. Ensure the open incident limit is not exceeded and handle `auto_resolve_timeout` appropriately. Requires `services.write` OAuth scope.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "service_id", + "type": "string", + "required": false, + "description": "The unique identifier of the service to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateServiceDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "service_id": { + "value": "PABC123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Service Name\",\"auto_resolve_timeout\":3600,\"incident_urgency_rule\":{\"type\":\"constant\",\"urgency\":\"high\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateServiceEventCacheVariable", + "qualifiedName": "PagerdutyApi.UpdateServiceEventCacheVariable", + "fullyQualifiedName": "PagerdutyApi.UpdateServiceEventCacheVariable@4.0.0", + "description": "Update a cache variable for a service event orchestration.\n\nThis tool updates a cache variable for a specific service event orchestration in PagerDuty. Cache variables store event data used in orchestration rules. Requires 'services.write' permission. Useful for modifying orchestration rules or conditions.", + "parameters": [ + { + "name": "cache_variable_id", + "type": "string", + "required": true, + "description": "The ID of the cache variable to update for the service event orchestration.", + "enum": null, + "inferrable": true + }, + { + "name": "service_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the service to update the cache variable on a service event orchestration.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateCacheVarOnServiceOrch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateServiceEventCacheVariable", + "parameters": { + "cache_variable_id": { + "value": "1234-5678-90ab-cdef", + "type": "string", + "required": true + }, + "service_identifier": { + "value": "service-abcdef123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateServiceEventRule", + "qualifiedName": "PagerdutyApi.UpdateServiceEventRule", + "fullyQualifiedName": "PagerdutyApi.UpdateServiceEventRule@4.0.0", + "description": "Update a specific event rule within a service.\n\n This tool updates an event rule on a particular service in PagerDuty. It supports partial updates, meaning you can provide any number of writable fields to modify the rule. This should be called when there's a need to adjust event rules to maintain or enhance service monitoring. Note: Migration to Event Orchestration is recommended as these rules will be phased out soon.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique ID of the service resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "event_rule_id", + "type": "string", + "required": false, + "description": "The ID of the Event Rule to update within the service. It identifies which event rule the update will apply to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateServiceEventRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateServiceEventRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "P123456", + "type": "string", + "required": false + }, + "event_rule_id": { + "value": "ER789012", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"enabled\": true, \"conditions\": [{\"type\": \"severity\", \"operator\": \"greater_than\", \"value\": \"warning\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateServiceFeatureEnablement", + "qualifiedName": "PagerdutyApi.UpdateServiceFeatureEnablement", + "fullyQualifiedName": "PagerdutyApi.UpdateServiceFeatureEnablement@4.0.0", + "description": "Update the feature enablement for a service addon.\n\n Update the feature enablement setting for a specific product addon on a PagerDuty service. This tool manages enabling or disabling the addon features. Currently, only 'aiops' is supported. Warnings may be returned if the account is not entitled to use AIOps features.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The ID of the PagerDuty resource to update the feature enablement for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "feature_enablement_identifier", + "type": "string", + "required": false, + "description": "Specify the feature enablement identifier, typically the addon name. Currently, only 'aiops' is supported. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateServiceFeatureEnablement'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateServiceFeatureEnablement", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "P123456", + "type": "string", + "required": false + }, + "feature_enablement_identifier": { + "value": "aiops", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"enabled\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateServiceIntegration", + "qualifiedName": "PagerdutyApi.UpdateServiceIntegration", + "fullyQualifiedName": "PagerdutyApi.UpdateServiceIntegration@4.0.0", + "description": "Update an integration for a specific service.\n\n Use this tool to update an integration that belongs to a specific service in PagerDuty. Services represent applications, components, or teams for incident management. Appropriate for when you need to modify integration settings or details.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "service_integration_id", + "type": "string", + "required": false, + "description": "The unique identifier for the integration associated with the service to update. This ID specifies which integration to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateServiceIntegration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateServiceIntegration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "R123456", + "type": "string", + "required": false + }, + "service_integration_id": { + "value": "SI987654", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"integration\":{\"name\":\"Updated Integration Name\",\"type\":\"Webhooks\",\"enabled\":true}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateServiceOrchestration", + "qualifiedName": "PagerdutyApi.UpdateServiceOrchestration", + "fullyQualifiedName": "PagerdutyApi.UpdateServiceOrchestration@4.0.0", + "description": "Update a Service Orchestration with new event rules.\n\n This tool updates a Service Orchestration in PagerDuty by modifying its event rules. It evaluates incoming events against these rules to enhance and route them effectively. Use this tool to adjust the orchestration of a service. Requires 'services.write' scope for OAuth.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "service_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the service to update the orchestration rules. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateOrchPathService'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateServiceOrchestration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "service_identifier": { + "value": "service_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"event_rules\": [{\"type\": \"CROSS_SERVICE\", \"actions\": [{\"type\": \"notify\", \"routing_key\": \"key_abc123\"}]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateServiceOrchestrationStatus", + "qualifiedName": "PagerdutyApi.UpdateServiceOrchestrationStatus", + "fullyQualifiedName": "PagerdutyApi.UpdateServiceOrchestrationStatus@4.0.0", + "description": "Update the active status of a service orchestration.\n\n Use this tool to change whether an event will be evaluated against a service orchestration path or service ruleset. Useful for managing orchestration event paths in PagerDuty.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "service_id", + "type": "string", + "required": false, + "description": "The unique identifier for the service to update the orchestration status. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateOrchActiveStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateServiceOrchestrationStatus", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "service_id": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\": \"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSessionConfigurations", + "qualifiedName": "PagerdutyApi.UpdateSessionConfigurations", + "fullyQualifiedName": "PagerdutyApi.UpdateSessionConfigurations@4.0.0", + "description": "Create or update session configurations in PagerDuty.\n\nThis tool is used to create or update session configurations for a PagerDuty account. Changes will apply immediately to new sessions, and existing sessions of specified types will be revoked. Early access is required, and scoped OAuth with `session_configurations.write` permission is necessary.", + "parameters": [ + { + "name": "absolute_session_time_to_live_seconds", + "type": "integer", + "required": true, + "description": "Specify the absolute session time to live in seconds.", + "enum": null, + "inferrable": true + }, + { + "name": "idle_session_time_to_live", + "type": "integer", + "required": true, + "description": "Specify the idle session time to live in seconds. This determines how long a session remains active without activity before being terminated.", + "enum": null, + "inferrable": true + }, + { + "name": "session_configuration_type", + "type": "string", + "required": true, + "description": "Specify session configuration type: 'mobile', 'web', or a comma-separated list of both.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateSessionConfigurations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateSessionConfigurations", + "parameters": { + "absolute_session_time_to_live_seconds": { + "value": 3600, + "type": "integer", + "required": true + }, + "idle_session_time_to_live": { + "value": 600, + "type": "integer", + "required": true + }, + "session_configuration_type": { + "value": "mobile,web", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateStandard", + "qualifiedName": "PagerdutyApi.UpdateStandard", + "fullyQualifiedName": "PagerdutyApi.UpdateStandard@4.0.0", + "description": "Updates a standard in PagerDuty.\n\n Use this tool to update an existing standard in PagerDuty. Requires appropriate OAuth permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "standard_id", + "type": "string", + "required": false, + "description": "The unique identifier of the standard to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateStandard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateStandard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "standard_id": { + "value": "P12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Standard\", \"description\": \"This is an updated description.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateStatusPagePost", + "qualifiedName": "PagerdutyApi.UpdateStatusPagePost", + "fullyQualifiedName": "PagerdutyApi.UpdateStatusPagePost@4.0.0", + "description": "Update a post on a status page by its ID.\n\n Use this tool to update an existing post on a specific status page. Requires the status pages write permission.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The ID of the status page resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_post_id", + "type": "string", + "required": false, + "description": "The ID of the status page post to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateStatusPagePost'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateStatusPagePost", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "status_page_post_id": { + "value": "post789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Status Post\",\"content\":\"This is the updated content of the status post.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateStatusPagePostmortem", + "qualifiedName": "PagerdutyApi.UpdateStatusPagePostmortem", + "fullyQualifiedName": "PagerdutyApi.UpdateStatusPagePostmortem@4.0.0", + "description": "Update a postmortem for a specific post by ID.\n\n This tool updates a postmortem for a given post on a status page using the post ID. It requires the 'status_pages.write' scope for OAuth authorization.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique ID of the resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "status_page_post_id", + "type": "string", + "required": false, + "description": "The ID of the Status Page Post to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateStatusPagePostmortem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateStatusPagePostmortem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "status_page_post_id": { + "value": "post456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Postmortem Title\",\"description\":\"Detailed description of the incident.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTeam", + "qualifiedName": "PagerdutyApi.UpdateTeam", + "fullyQualifiedName": "PagerdutyApi.UpdateTeam@4.0.0", + "description": "Update the details of an existing team.\n\n Use this tool to modify the information of an existing team, which includes users and escalation policies within an organization. Ideal for updating team configurations in response to organizational changes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The unique identifier of the team to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateTeam", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_id": { + "value": "T12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Team Name\",\"users\":[{\"id\":\"U12345\",\"type\":\"user\"}],\"escalation_policy_id\":\"EP12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTemplate", + "qualifiedName": "PagerdutyApi.UpdateTemplate", + "fullyQualifiedName": "PagerdutyApi.UpdateTemplate@4.0.0", + "description": "Update an existing template in PagerDuty.\n\nUse this tool to update an existing template in PagerDuty. Suitable when modifications to a template are required.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the template to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "email_body_html", + "type": "string", + "required": false, + "description": "The HTML content for the email body of the template.", + "enum": null, + "inferrable": true + }, + { + "name": "email_subject", + "type": "string", + "required": false, + "description": "The subject of the email to be updated in the template.", + "enum": null, + "inferrable": true + }, + { + "name": "short_message_template", + "type": "string", + "required": false, + "description": "The short message content for the template used in SMS, Push notifications, Slack, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "template_description", + "type": "string", + "required": false, + "description": "Provide a brief description of the template. This helps to explain its purpose and content.", + "enum": null, + "inferrable": true + }, + { + "name": "template_name", + "type": "string", + "required": false, + "description": "The name of the template to update in PagerDuty.", + "enum": null, + "inferrable": true + }, + { + "name": "template_type", + "type": "string", + "required": false, + "description": "The type of template. Only 'status_update' is supported.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateTemplate", + "parameters": { + "resource_id": { + "value": "template-12345", + "type": "string", + "required": true + }, + "email_body_html": { + "value": "

Your incident has been updated.

", + "type": "string", + "required": false + }, + "email_subject": { + "value": "Incident Update Notification", + "type": "string", + "required": false + }, + "short_message_template": { + "value": "Incident {{incident.id}} has been updated.", + "type": "string", + "required": false + }, + "template_description": { + "value": "Template for incident update notifications.", + "type": "string", + "required": false + }, + "template_name": { + "value": "Incident Update Template", + "type": "string", + "required": false + }, + "template_type": { + "value": "status_update", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateUnroutedEventRules", + "qualifiedName": "PagerdutyApi.UpdateUnroutedEventRules", + "fullyQualifiedName": "PagerdutyApi.UpdateUnroutedEventRules@4.0.0", + "description": "Update rules for Unrouted events in Global Event Orchestration.\n\n This tool updates the rules for handling Unrouted events in a Global Event Orchestration. Use it when you need to modify how unrouted events are processed, without routing them to a specific service. The tool evaluates events against its rules and can modify or enhance them for further processing.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "event_orchestration_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Event Orchestration to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateOrchPathUnrouted'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateUnroutedEventRules", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "event_orchestration_id": { + "value": "E12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"rules\":[{\"condition\":\"severity = 'critical'\",\"action\":\"alert\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateUserContactMethod", + "qualifiedName": "PagerdutyApi.UpdateUserContactMethod", + "fullyQualifiedName": "PagerdutyApi.UpdateUserContactMethod@4.0.0", + "description": "Update a user's contact method on PagerDuty.\n\n This tool updates the contact method of a specified user in a PagerDuty account. It's used when changes to a user's contact information are needed, such as updating an email or phone number for receiving notifications. Ensure the correct permissions (`users:contact_methods.write`) are in place before making this call.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the user whose contact method is being updated. It should be a string representing the user's ID in PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_contact_method_id", + "type": "string", + "required": false, + "description": "The unique identifier for the user's contact method to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateUserContactMethod'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateUserContactMethod", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "P123456", + "type": "string", + "required": false + }, + "user_contact_method_id": { + "value": "CM789012", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"method\":\"email\",\"address\":\"newemail@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateUserHandoffNotification", + "qualifiedName": "PagerdutyApi.UpdateUserHandoffNotification", + "fullyQualifiedName": "PagerdutyApi.UpdateUserHandoffNotification@4.0.0", + "description": "Update a user's handoff notification rule in PagerDuty.\n\n This tool updates a user's handoff notification rule in a PagerDuty account. It should be called when changes to a user's notification preferences are needed, such as updating contact methods or schedules for handoff alerts. Requires `users.write` scope in OAuth.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique ID of the resource to be updated, representing the user in PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "handoff_notification_rule_id", + "type": "string", + "required": false, + "description": "The ID of the oncall handoff notification rule to update for the user. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateUserHandoffNotification'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateUserHandoffNotification", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "PD123456", + "type": "string", + "required": false + }, + "handoff_notification_rule_id": { + "value": "HN7890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"notification_method\":\"email\",\"time_zone\":\"UTC\",\"schedule\":{\"id\":\"S123456\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateUserNotificationRule", + "qualifiedName": "PagerdutyApi.UpdateUserNotificationRule", + "fullyQualifiedName": "PagerdutyApi.UpdateUserNotificationRule@4.0.0", + "description": "Update a user's notification rule in PagerDuty.\n\n Use this tool to modify an existing notification rule for a user on a PagerDuty account, allowing them to manage how they receive incident notifications.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique ID of the user's notification resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_rule_id", + "type": "string", + "required": false, + "description": "The ID of the user's notification rule to update in PagerDuty. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateUserNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateUserNotificationRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "P123456", + "type": "string", + "required": false + }, + "notification_rule_id": { + "value": "NR987654", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"type\":\"notification_rule\",\"message\":\"Updated notification settings\",\"time_zone\":\"UTC\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateUserStatusNotificationRule", + "qualifiedName": "PagerdutyApi.UpdateUserStatusNotificationRule", + "fullyQualifiedName": "PagerdutyApi.UpdateUserStatusNotificationRule@4.0.0", + "description": "Update a user's status update notification rule.\n\n Use this tool to modify the notification settings for a user's status updates in PagerDuty. Useful for managing how users receive notifications in an account. Requires appropriate OAuth permissions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier for the user resource to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "status_update_notification_rule_id", + "type": "string", + "required": false, + "description": "The ID of the user's status update notification rule to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateUserStatusUpdateNotificationRule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateUserStatusNotificationRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "resource_id": { + "value": "user_12345", + "type": "string", + "required": false + }, + "status_update_notification_rule_id": { + "value": "rule_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"notification_type\":\"email\",\"frequency\":\"immediate\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateWebhookSubscription", + "qualifiedName": "PagerdutyApi.UpdateWebhookSubscription", + "fullyQualifiedName": "PagerdutyApi.UpdateWebhookSubscription@4.0.0", + "description": "Update an existing webhook subscription.\n\nThis tool updates an existing webhook subscription in PagerDuty. It should be called when you need to change any details of a webhook subscription, except for the `delivery_method`. Ensure you have the required OAuth scope: `webhook_subscriptions.write`.", + "parameters": [ + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier of the webhook subscription to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_object_id", + "type": "string", + "required": false, + "description": "The ID of the object used as the filter. Required unless the filter type is account_reference.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_object_type", + "type": "string", + "required": false, + "description": "Specify the type of object used as the filter: 'account_reference', 'service_reference', or 'team_reference'.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_client_id", + "type": "string", + "required": false, + "description": "The ID of the OAuth client for authenticating webhook requests. This field is optional.", + "enum": null, + "inferrable": true + }, + { + "name": "send_webhook", + "type": "boolean", + "required": false, + "description": "Set to true to send a webhook. Default is true. False to disable.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_events", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of outbound event types the subscription will receive.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_subscription_description", + "type": "string", + "required": false, + "description": "A short description of the webhook subscription.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateWebhookSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateWebhookSubscription", + "parameters": { + "resource_id": { + "value": "PD12345", + "type": "string", + "required": true + }, + "filter_object_id": { + "value": "OBJ67890", + "type": "string", + "required": false + }, + "filter_object_type": { + "value": "service_reference", + "type": "string", + "required": false + }, + "oauth_client_id": { + "value": "CLIENT12345", + "type": "string", + "required": false + }, + "send_webhook": { + "value": true, + "type": "boolean", + "required": false + }, + "webhook_events": { + "value": ["incident.trigger", "incident.resolve"], + "type": "array", + "required": false + }, + "webhook_subscription_description": { + "value": "Subscription for incident updates", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateWorkflowIntegrationConnection", + "qualifiedName": "PagerdutyApi.UpdateWorkflowIntegrationConnection", + "fullyQualifiedName": "PagerdutyApi.UpdateWorkflowIntegrationConnection@4.0.0", + "description": "Update an existing Workflow Integration Connection.\n\nCall this tool to update the connection details of a specific workflow integration in PagerDuty. Useful for modifying existing configurations in integrations.", + "parameters": [ + { + "name": "integration_id", + "type": "string", + "required": true, + "description": "The ID of the Workflow Integration to be updated. Required to specify which integration connection to modify.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The ID of the resource to be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "pagerduty", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateWorkflowIntegrationConnection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PagerdutyApi.UpdateWorkflowIntegrationConnection", + "parameters": { + "integration_id": { + "value": "INT123456789", + "type": "string", + "required": true + }, + "resource_id": { + "value": "RES987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "pagerduty", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:41:02.032Z", + "summary": "PagerDuty's API toolkit empowers developers to seamlessly integrate and manage incident response workflows through a variety of automated tools. Designed for interaction with the PagerDuty API, it facilitates comprehensive insight into incident management and team coordination.\n\n**Capabilities:**\n- Integrates and manages incident workflows, actions, and teams efficiently.\n- Automates alert notifications, service integrations, and escalation policies.\n- Enables customization of incident types and field options for enhanced filtering.\n- Supports detailed analytics and metrics retrieval for incident performance.\n\n**OAuth:**\n- Provider: PagerDuty\n- Scopes: `services.write`, `incident_workflows.write`, `users.write`, among others.\n\n**Secrets:** None required." +} diff --git a/data/toolkits/posthogapi.json b/data/toolkits/posthogapi.json new file mode 100644 index 000000000..1208f38c3 --- /dev/null +++ b/data/toolkits/posthogapi.json @@ -0,0 +1,56815 @@ +{ + "id": "PosthogApi", + "label": "PostHog API", + "version": "2.0.0", + "description": "Tools that enable LLMs to interact directly with the PostHog API.", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/posthog.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/posthog-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "AddDashboardCollaborator", + "qualifiedName": "PosthogApi.AddDashboardCollaborator", + "fullyQualifiedName": "PosthogApi.AddDashboardCollaborator@2.0.0", + "description": "Add a collaborator to a specific dashboard.\n\n Use this tool to add a collaborator to a specified dashboard within a project environment on Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_id", + "type": "integer", + "required": false, + "description": "The unique identifier of the dashboard to which the collaborator is being added. It must be an integer value. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve using the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_collaborators_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.AddDashboardCollaborator", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\": \"collaborator@example.com\", \"role\": \"editor\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddDataColorTheme", + "qualifiedName": "PosthogApi.AddDataColorTheme", + "fullyQualifiedName": "PosthogApi.AddDataColorTheme@2.0.0", + "description": "Create a new data color theme for a project.\n\n Use this tool to create a new data color theme within a specified project on Datadog. This is useful when you need to apply customized color visualizations to data within a project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier of the project for which you want to create a data color theme. Retrieve this ID with a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'data_color_themes_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.AddDataColorTheme", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"themeName\":\"CustomTheme\",\"primaryColor\":\"#FF5733\",\"secondaryColor\":\"#C70039\",\"backgroundColor\":\"#FFC300\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddPersonsFunnelCorrelation", + "qualifiedName": "PosthogApi.AddPersonsFunnelCorrelation", + "fullyQualifiedName": "PosthogApi.AddPersonsFunnelCorrelation@2.0.0", + "description": "Create or update persons in a funnel correlation.\n\n This tool is used to handle persons within a funnel correlation context, specifically for reading and deleting purposes. For creating or updating persons, consider using the capture API or relevant SDKs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID for accessing the project. Obtain by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response. Options are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_funnel_correlation_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.AddPersonsFunnelCorrelation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"funnel_correlation\": {\"funnel_id\": \"67890\", \"persons\": [{\"distinct_id\": \"user_1\", \"properties\": {\"email\": \"user1@example.com\"}}]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddPersonsToStaticCohort", + "qualifiedName": "PosthogApi.AddPersonsToStaticCohort", + "fullyQualifiedName": "PosthogApi.AddPersonsToStaticCohort@2.0.0", + "description": "Add persons to a static cohort in Datadog.\n\nThis tool updates a static cohort by adding new persons to it in a specified project within Datadog.", + "parameters": [ + { + "name": "cohort_id", + "type": "integer", + "required": true, + "description": "A unique integer that identifies the cohort to update.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve it via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "person_uuids_to_add", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of person UUIDs to add to the cohort.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cohorts_add_persons_to_static_cohort_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.AddPersonsToStaticCohort", + "parameters": { + "cohort_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project_001", + "type": "string", + "required": true + }, + "person_uuids_to_add": { + "value": ["uuid-1234-5678-9012", "uuid-3456-7890-1234"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddSessionRecordingToPlaylist", + "qualifiedName": "PosthogApi.AddSessionRecordingToPlaylist", + "fullyQualifiedName": "PosthogApi.AddSessionRecordingToPlaylist@2.0.0", + "description": "Add a session recording to a specified playlist.\n\n This tool allows you to add a session recording to a specific playlist within a project. It should be called when you need to track or log a session recording view in a particular playlist.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID to access the specific project. Retrieve by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the session recording to be added to the playlist. This ID identifies the specific recording you want to track or log in the given playlist. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_short_id", + "type": "string", + "required": false, + "description": "The unique short identifier of the session recording to add to the playlist within the specified project. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recording_playlists_recordings_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.AddSessionRecordingToPlaylist", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "session_recording_identifier": { + "value": "abc-123-def-456", + "type": "string", + "required": false + }, + "session_recording_short_id": { + "value": "short-xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"playlistId\": \"playlist_1\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddWarehouseSavedQuery", + "qualifiedName": "PosthogApi.AddWarehouseSavedQuery", + "fullyQualifiedName": "PosthogApi.AddWarehouseSavedQuery@2.0.0", + "description": "Create a warehouse saved query for data management.\n\n Use this tool to create a new saved query for warehouse data management within a specified project. It helps in managing warehouse tables effectively.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id_for_access", + "type": "string", + "required": false, + "description": "The ID of the project to access. Obtainable by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_saved_queries_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.AddWarehouseSavedQuery", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id_for_access": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"query\":\"SELECT * FROM events WHERE time > '2023-01-01'\",\"name\":\"Recent Events Query\", \"description\":\"A query to fetch all events after a certain date.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddWarehouseTable", + "qualifiedName": "PosthogApi.AddWarehouseTable", + "fullyQualifiedName": "PosthogApi.AddWarehouseTable@2.0.0", + "description": "Create a new warehouse table in a specified project.\n\n Use this tool to create a new warehouse table within a specified project using its project ID. Useful for initializing data structures in a warehouse environment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_tables_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.AddWarehouseTable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"table_name\": \"new_table\", \"schema\": {\"columns\": [{\"name\": \"id\", \"type\": \"integer\"}, {\"name\": \"name\", \"type\": \"string\"}]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AppendTaskRunLogs", + "qualifiedName": "PosthogApi.AppendTaskRunLogs", + "fullyQualifiedName": "PosthogApi.AppendTaskRunLogs@2.0.0", + "description": "Append log entries to a specific task run log array. \n\n This tool is used to add one or more log entries to the log array of a specified task run, identified by project, task, and run IDs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "task_run_uuid", + "type": "string", + "required": false, + "description": "A UUID string to identify the specific task run for log appending. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "ID of the project to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_run_task_id", + "type": "string", + "required": false, + "description": "A string representing the task ID for the task run. This identifies which task the logs are associated with. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tasks_runs_append_log_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.AppendTaskRunLogs", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "task_run_uuid": { + "value": "9f1a0c7b-bf5f-4bb3-9ba4-cf1e50c98c35", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project123", + "type": "string", + "required": false + }, + "task_run_task_id": { + "value": "task456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"logs\":[{\"message\":\"Log entry 1\",\"level\":\"info\"},{\"message\":\"Log entry 2\",\"level\":\"error\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelBatchExportBackfill", + "qualifiedName": "PosthogApi.CancelBatchExportBackfill", + "fullyQualifiedName": "PosthogApi.CancelBatchExportBackfill@2.0.0", + "description": "Cancel a batch export backfill process.\n\n Use this tool to cancel an ongoing batch export backfill for a specific project and batch. It should be called when a backfill process needs to be halted.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_identifier", + "type": "string", + "required": false, + "description": "A unique identifier string for the batch export backfill to be canceled. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "batch_export_backfill_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the specific batch export backfill to cancel. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Call /api/projects/ to find the project ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_backfills_cancel_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CancelBatchExportBackfill", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_identifier": { + "value": "batch_12345", + "type": "string", + "required": false + }, + "batch_export_backfill_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\":\"cancel\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelBatchExportRun", + "qualifiedName": "PosthogApi.CancelBatchExportRun", + "fullyQualifiedName": "PosthogApi.CancelBatchExportRun@2.0.0", + "description": "Cancel an ongoing batch export run.\n\n Use this tool to cancel an ongoing batch export run in DataDog. It should be called when you need to stop a specific export process immediately.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_run_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the specific batch export run to be canceled. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "batch_export_run_uuid", + "type": "string", + "required": false, + "description": "A UUID string that identifies the batch export run to be canceled. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_runs_cancel_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CancelBatchExportRun", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_run_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "batch_export_run_uuid": { + "value": "876e5432-d21c-34d3-b789-123456789abc", + "type": "string", + "required": false + }, + "project_id": { + "value": "proj_001", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"canceled\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelEmailChangeRequest", + "qualifiedName": "PosthogApi.CancelEmailChangeRequest", + "fullyQualifiedName": "PosthogApi.CancelEmailChangeRequest@2.0.0", + "description": "Cancel a pending email change request.\n\nUse this tool to cancel a pending email change request for a user in the system. It ensures that the email update process is stopped.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_cancel_email_change_request_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CancelEmailChangeRequest", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"user_id\":\"12345\",\"cancel_reason\":\"User requested cancellation\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelInsightCreation", + "qualifiedName": "PosthogApi.CancelInsightCreation", + "fullyQualifiedName": "PosthogApi.CancelInsightCreation@2.0.0", + "description": "Cancel the creation of an environment insight.\n\n Use this tool to cancel an ongoing creation process for an environment insight in Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. Use /api/projects/ to find the ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the response format as either 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_cancel_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CancelInsightCreation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"insight_id\": \"insight_67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelInvitation", + "qualifiedName": "PosthogApi.CancelInvitation", + "fullyQualifiedName": "PosthogApi.CancelInvitation@2.0.0", + "description": "Cancels an invitation to join an organization.\n\nThis tool is used to cancel an invitation for someone to join an organization in Datadog. It should be called when you need to revoke an invite that has already been sent.", + "parameters": [ + { + "name": "invite_identifier_uuid", + "type": "string", + "required": true, + "description": "A UUID string representing the invitation to be cancelled.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "A string identifier for the organization whose invitation is to be canceled.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'invites_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CancelInvitation", + "parameters": { + "invite_identifier_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org-5678", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelRunningSavedQuery", + "qualifiedName": "PosthogApi.CancelRunningSavedQuery", + "fullyQualifiedName": "PosthogApi.CancelRunningSavedQuery@2.0.0", + "description": "Cancel a running saved query workflow in progress.\n\n Use this tool to cancel an ongoing saved query execution within a project. Useful when you need to stop a query that is currently running to avoid unnecessary resource usage.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "saved_query_uuid", + "type": "string", + "required": false, + "description": "A UUID string that identifies the saved data warehouse query to cancel. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project ID to access the specific project. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_saved_queries_cancel_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CancelRunningSavedQuery", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "saved_query_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project-xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"cancel\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelSavedQueryWorkflow", + "qualifiedName": "PosthogApi.CancelSavedQueryWorkflow", + "fullyQualifiedName": "PosthogApi.CancelSavedQueryWorkflow@2.0.0", + "description": "Cancel a running saved query workflow in Datadog.\n\n This tool cancels a running saved query workflow based on the provided project and query IDs. It should be called when you need to stop an ongoing query execution in Datadog's environment warehouse.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "saved_query_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the data warehouse saved query to cancel. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access for canceling the saved query. Retrieve the project ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_saved_queries_cancel_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CancelSavedQueryWorkflow", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "saved_query_id": { + "value": "b2cf7a5d-1234-5678-9101-abcdef123456", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "proj_987654321", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"cancel\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckAsyncAuth", + "qualifiedName": "PosthogApi.CheckAsyncAuth", + "fullyQualifiedName": "PosthogApi.CheckAsyncAuth@2.0.0", + "description": "Checks authorization for creating asynchronous queries.\n\nCall this tool to determine if a user is authorized to create asynchronous queries in a specific Datadog project. Useful for workflows that need to verify permissions before proceeding with query operations.", + "parameters": [ + { + "name": "project_id_for_auth_check", + "type": "string", + "required": true, + "description": "The ID of the Datadog project to check access for creating asynchronous queries. Obtain the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'query_check_auth_for_async_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CheckAsyncAuth", + "parameters": { + "project_id_for_auth_check": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckDemoDataGenerationStatus", + "qualifiedName": "PosthogApi.CheckDemoDataGenerationStatus", + "fullyQualifiedName": "PosthogApi.CheckDemoDataGenerationStatus@2.0.0", + "description": "Check if demo data is being generated for a project.\n\nUse this tool to determine whether demo data is currently being generated for a specific project within an organization.", + "parameters": [ + { + "name": "organization_identifier", + "type": "string", + "required": true, + "description": "A string that uniquely identifies the organization for the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "integer", + "required": true, + "description": "An integer uniquely identifying the project to check demo data generation status for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'is_generating_demo_data_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CheckDemoDataGenerationStatus", + "parameters": { + "organization_identifier": { + "value": "example_org_123", + "type": "string", + "required": true + }, + "project_identifier": { + "value": 42, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckPosthogEnvAuthenticationAsync", + "qualifiedName": "PosthogApi.CheckPosthogEnvAuthenticationAsync", + "fullyQualifiedName": "PosthogApi.CheckPosthogEnvAuthenticationAsync@2.0.0", + "description": "Check authentication for Datadog environment asynchronously.\n\nThis tool checks if a user has authentication permissions for a specific Datadog environment asynchronously. It should be called when there is a need to verify user access permissions for a given project.", + "parameters": [ + { + "name": "posthog_project_id", + "type": "string", + "required": true, + "description": "Project ID to access a specific Datadog environment. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_query_check_auth_for_async_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CheckPosthogEnvAuthenticationAsync", + "parameters": { + "posthog_project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckPropertyEventAssociation", + "qualifiedName": "PosthogApi.CheckPropertyEventAssociation", + "fullyQualifiedName": "PosthogApi.CheckPropertyEventAssociation@2.0.0", + "description": "Check if a property has been seen with specified event names.\n\nThis tool checks whether a specified property has ever been associated with a list of given event names. It returns a mapping of each event name to a boolean, indicating whether the association exists. Useful for analyzing event-property relationships in a project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the target project. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'property_definitions_seen_together_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CheckPropertyEventAssociation", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CompleteProjectOnboarding", + "qualifiedName": "PosthogApi.CompleteProjectOnboarding", + "fullyQualifiedName": "PosthogApi.CompleteProjectOnboarding@2.0.0", + "description": "Mark a project's product onboarding as complete in an organization.\n\n Use this tool to update and complete the product onboarding process for a specific project within the current organization. It is applicable when an onboarding process needs to be marked as finished.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "environment_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying this environment (aka team). Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve this by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_complete_product_onboarding_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CompleteProjectOnboarding", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "environment_id": { + "value": 1, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"onboarding_complete\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CompleteSymbolSetsUpload", + "qualifiedName": "PosthogApi.CompleteSymbolSetsUpload", + "fullyQualifiedName": "PosthogApi.CompleteSymbolSetsUpload@2.0.0", + "description": "Complete the uploading process for symbol sets in error tracking.\n\nUse this tool to finalize the upload process for symbol sets in error tracking environments. Typically called after all parts of symbol sets are uploaded to signal completion.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Specifies the Project ID for access. Obtain this ID via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "reference_identifier", + "type": "string", + "required": true, + "description": "A string used to identify the symbol set upload reference. It helps in finalizing the upload process.", + "enum": null, + "inferrable": true + }, + { + "name": "symbol_set_id", + "type": "string", + "required": true, + "description": "Unique identifier for the symbol set upload session to complete.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "integer", + "required": true, + "description": "The integer ID of the team associated with the symbol sets upload you are finalizing. Required for access control and process completion.", + "enum": null, + "inferrable": true + }, + { + "name": "upload_completion_timestamp", + "type": "string", + "required": true, + "description": "Timestamp indicating when the upload process was completed, in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "storage_pointer", + "type": "string", + "required": false, + "description": "A string value representing the storage pointer identifier for the symbol sets. Used to specify the location where the symbol sets are stored.", + "enum": null, + "inferrable": true + }, + { + "name": "upload_failure_reason", + "type": "string", + "required": false, + "description": "A description of the reason for the upload failure, if applicable. Provide detailed information about what caused the issue.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_symbol_sets_bulk_finish_upload_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CompleteSymbolSetsUpload", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "reference_identifier": { + "value": "symbol_upload_v1", + "type": "string", + "required": true + }, + "symbol_set_id": { + "value": "abcde-12345-fghij-67890", + "type": "string", + "required": true + }, + "team_identifier": { + "value": 42, + "type": "integer", + "required": true + }, + "upload_completion_timestamp": { + "value": "2023-10-06T12:00:00Z", + "type": "string", + "required": true + }, + "storage_pointer": { + "value": "path/to/storage/symbols", + "type": "string", + "required": false + }, + "upload_failure_reason": { + "value": "N/A", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CompleteSymbolSetUpload", + "qualifiedName": "PosthogApi.CompleteSymbolSetUpload", + "fullyQualifiedName": "PosthogApi.CompleteSymbolSetUpload@2.0.0", + "description": "Finalize the upload of symbol sets in Datadog error tracking.\n\nUse this tool to complete the upload process of symbol sets in Datadog's error tracking environment for a specific project. Call this when you need to finalize an upload that has already started.", + "parameters": [ + { + "name": "project_id_for_symbol_set", + "type": "string", + "required": true, + "description": "Specify the Project ID for accessing the project in Datadog. Retrieve using the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "reference_id", + "type": "string", + "required": true, + "description": "A unique identifier for the symbol set upload reference.", + "enum": null, + "inferrable": true + }, + { + "name": "symbol_set_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific error tracking symbol set to be finalized.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier representing the team within the Datadog project.", + "enum": null, + "inferrable": true + }, + { + "name": "upload_created_at_timestamp", + "type": "string", + "required": true, + "description": "The timestamp marking when the upload was created, in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "upload_session_id", + "type": "string", + "required": true, + "description": "The unique identifier for the symbol set upload session you wish to complete. This ID is obtained during the initial upload process.", + "enum": null, + "inferrable": true + }, + { + "name": "storage_pointer", + "type": "string", + "required": false, + "description": "A string representing the storage location pointer for the symbol set. Required to identify the upload location within Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "upload_failure_reason", + "type": "string", + "required": false, + "description": "Provide the reason for upload failure if applicable. This helps in diagnosing issues related to the symbol set upload process in Datadog.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_symbol_sets_finish_upload_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CompleteSymbolSetUpload", + "parameters": { + "project_id_for_symbol_set": { + "value": "12345", + "type": "string", + "required": true + }, + "reference_id": { + "value": "ref-abc-123", + "type": "string", + "required": true + }, + "symbol_set_id": { + "value": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "type": "string", + "required": true + }, + "team_identifier": { + "value": 42, + "type": "integer", + "required": true + }, + "upload_created_at_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": true + }, + "upload_session_id": { + "value": "session-xyz-789", + "type": "string", + "required": true + }, + "storage_pointer": { + "value": "s3://bucket/path/to/symbol_set", + "type": "string", + "required": false + }, + "upload_failure_reason": { + "value": "Invalid symbol format", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CountFilesInDirectory", + "qualifiedName": "PosthogApi.CountFilesInDirectory", + "fullyQualifiedName": "PosthogApi.CountFilesInDirectory@2.0.0", + "description": "Get count of all files in a specified folder.\n\n Use this tool to obtain the total number of files within a specific folder in a given project environment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The project ID for accessing the desired project. Retrieve this ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_count_by_path_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CountFilesInDirectory", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"folder_path\": \"/uploads/docs\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateAnnotation", + "qualifiedName": "PosthogApi.CreateAnnotation", + "fullyQualifiedName": "PosthogApi.CreateAnnotation@2.0.0", + "description": "Create a new annotation for a project.\n\n Use this tool to create a new annotation within a specified project in Datadog. This can be used to track important events or notes related to project data.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project where the annotation will be created. Obtain it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'annotations_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateAnnotation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"message\": \"New feature released.\", \"type\": \"note\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateBackfillForBatchExport", + "qualifiedName": "PosthogApi.CreateBackfillForBatchExport", + "fullyQualifiedName": "PosthogApi.CreateBackfillForBatchExport@2.0.0", + "description": "Create a new backfill for a BatchExport.\n\n This tool is used to create a new backfill for a BatchExport by specifying the project and batch export IDs. It should be called when there's a need to initiate a backfill operation for specific data exports.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the BatchExport for which to create a backfill. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Call /api/projects/ to retrieve this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_backfills_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateBackfillForBatchExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_identifier": { + "value": "batch_export_12345", + "type": "string", + "required": false + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"backfill_data\": {\"start_date\": \"2023-01-01\", \"end_date\": \"2023-01-31\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateBatchExport", + "qualifiedName": "PosthogApi.CreateBatchExport", + "fullyQualifiedName": "PosthogApi.CreateBatchExport@2.0.0", + "description": "Initiate a batch export for a project.\n\n Use this tool to start a new batch export for a specified project within Datadog. Ideal for scenarios needing data extraction or export management.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access for batch export. Retrieve from /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_create_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateBatchExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"exportType\":\"full\",\"format\":\"csv\",\"timeRange\":{\"start\":\"2023-01-01\",\"end\":\"2023-12-31\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateBatchExportBackfill", + "qualifiedName": "PosthogApi.CreateBatchExportBackfill", + "fullyQualifiedName": "PosthogApi.CreateBatchExportBackfill@2.0.0", + "description": "Create a new backfill for a batch export.\n\n This tool is used to initiate a new backfill process for a specific BatchExport within a project, allowing for data replenishment or correction in Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the batch export to be backfilled. This ID determines which specific export the backfill will apply to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project to access. Retrieve this via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_backfills_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateBatchExportBackfill", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_identifier": { + "value": "export-12345", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project-67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"data\": \"sample data for backfill\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateBatchExportForEnvironments", + "qualifiedName": "PosthogApi.CreateBatchExportForEnvironments", + "fullyQualifiedName": "PosthogApi.CreateBatchExportForEnvironments@2.0.0", + "description": "Initiate a batch export for selected environments.\n\n This tool creates a batch export for environments within a specified project in Datadog. Use it to organize and retrieve environment data efficiently.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access for batch export. Obtain it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateBatchExportForEnvironments", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"environments\":[\"production\",\"staging\"],\"export_format\":\"csv\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateBatchExports", + "qualifiedName": "PosthogApi.CreateBatchExports", + "fullyQualifiedName": "PosthogApi.CreateBatchExports@2.0.0", + "description": "Create a new batch export for an organization.\n\n This tool is used to create a new batch export operation for a specified organization in Datadog. It should be called when you need to initiate a process to export data in batches for organizational analysis or reporting.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "A string representing the unique identifier for the organization. Required to specify which organization the batch export will be created for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateBatchExports", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"export_type\": \"batch\", \"format\": \"csv\", \"filters\": {\"date_range\": \"last_30_days\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateBulkInvites", + "qualifiedName": "PosthogApi.CreateBulkInvites", + "fullyQualifiedName": "PosthogApi.CreateBulkInvites@2.0.0", + "description": "Create bulk invites for an organization.\n\n This tool facilitates the creation of multiple invites within an organization using Datadog's bulk invite endpoint. It should be called when there's a need to send several invites at once.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "The unique string ID of the organization where you want to create bulk invites. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'invites_bulk_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateBulkInvites", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_identifier": { + "value": "org_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"emails\": [\"user1@example.com\", \"user2@example.com\"], \"role\": \"member\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateChatCompletion", + "qualifiedName": "PosthogApi.CreateChatCompletion", + "fullyQualifiedName": "PosthogApi.CreateChatCompletion@2.0.0", + "description": "Create a chat completion using OpenAI or compatible models.\n\n Utilize this tool to generate chat responses using OpenAI or compatible models. It adheres to OpenAI's Chat Completions API format, providing a seamless integration for chat completion needs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the project to access. Retrieve via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the chat completion response. Possible values are 'json' or 'txt'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'llm_gateway_v1_chat_completions_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateChatCompletion", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_123", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"messages\": [{\"role\": \"user\", \"content\": \"Hello, how can I help you?\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCohortTracking", + "qualifiedName": "PosthogApi.CreateCohortTracking", + "fullyQualifiedName": "PosthogApi.CreateCohortTracking@2.0.0", + "description": "Logs a new view on the resource for tracking purposes.\n\n Use this tool to track file system views by logging a new view each time the resource is accessed. It is useful for monitoring and analyzing access patterns.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you wish to access. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cohorts_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateCohortTracking", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\":\"view\",\"resource_type\":\"file\",\"resource_id\":\"abc123\",\"timestamp\":\"2023-10-01T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDashboard", + "qualifiedName": "PosthogApi.CreateDashboard", + "fullyQualifiedName": "PosthogApi.CreateDashboard@2.0.0", + "description": "Create a new dashboard for a specified project.\n\n Use this tool to create a new dashboard in a specified project. This can be helpful when you need to set up dashboards to monitor or visualize project data.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project for which you want to create the dashboard. Retrieve this ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the format of the dashboard creation response. Options are 'json' or 'txt'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateDashboard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Dashboard\",\"description\":\"A dashboard for monitoring project metrics.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDashboardCollaborator", + "qualifiedName": "PosthogApi.CreateDashboardCollaborator", + "fullyQualifiedName": "PosthogApi.CreateDashboardCollaborator@2.0.0", + "description": "Add a collaborator to a specified dashboard.\n\n Use this tool to invite a new collaborator to an existing dashboard in a project. Provide the necessary project and dashboard identifiers to complete the task.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_identifier", + "type": "integer", + "required": false, + "description": "The unique integer ID of the dashboard to which you want to add a collaborator. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project ID for accessing the project. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_collaborators_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateDashboardCollaborator", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "proj_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\":\"collaborator@example.com\",\"role\":\"editor\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDashboardFromTemplate", + "qualifiedName": "PosthogApi.CreateDashboardFromTemplate", + "fullyQualifiedName": "PosthogApi.CreateDashboardFromTemplate@2.0.0", + "description": "Create a dashboard from a template JSON.\n\n Use this tool to create a new dashboard in Datadog using a provided template JSON. Ideal for setting up dashboards quickly based on predefined templates.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Use /api/projects/ to find it. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format for the response. Options are 'json' or 'txt'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_create_from_template_json_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateDashboardFromTemplate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"dashboard_name\": \"Example Dashboard\", \"widgets\": []}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDashboardSharingPassword", + "qualifiedName": "PosthogApi.CreateDashboardSharingPassword", + "fullyQualifiedName": "PosthogApi.CreateDashboardSharingPassword@2.0.0", + "description": "Create a password for sharing a dashboard.\n\n Use this tool to create a new password for configuring how a dashboard is shared in a specific environment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_identifier", + "type": "integer", + "required": false, + "description": "The unique integer identifier for the dashboard. This ID is required to create a sharing password. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project for which you want to create a dashboard sharing password. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_sharing_passwords_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateDashboardSharingPassword", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "abc-xyz-456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"password\":\"securePassword123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDashboardTemplate", + "qualifiedName": "PosthogApi.CreateDashboardTemplate", + "fullyQualifiedName": "PosthogApi.CreateDashboardTemplate@2.0.0", + "description": "Create a new dashboard template in a Datadog project.\n\n This tool allows you to create a new dashboard template within a specified Datadog project. Use it when you need to set up a new dashboard template using the project's ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Datadog project where you want to create the dashboard template. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboard_templates_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateDashboardTemplate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Dashboard Template\", \"widgets\":[]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDataColorTheme", + "qualifiedName": "PosthogApi.CreateDataColorTheme", + "fullyQualifiedName": "PosthogApi.CreateDataColorTheme@2.0.0", + "description": "Create a new data color theme for the environment.\n\n This tool allows you to create a new data color theme within a specified environment for a project. Use this when you need to define or update visual styles for data representation in an environment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project ID to access the desired project. Obtain it through a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_data_color_themes_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateDataColorTheme", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"theme_name\":\"Dark Mode\",\"colors\":{\"primary\":\"#000000\",\"secondary\":\"#ffffff\",\"accent\":\"#ff4757\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDatasetItem", + "qualifiedName": "PosthogApi.CreateDatasetItem", + "fullyQualifiedName": "PosthogApi.CreateDatasetItem@2.0.0", + "description": "Create a new dataset item in a specified project.\n\n Use this tool to add a new dataset item to a specific project within Datadog. Call this when you need to insert data into a project's dataset.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID for the target project. Obtain by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dataset_items_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateDatasetItem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"event\":\"pageview\",\"properties\":{\"url\":\"http://example.com\",\"referrer\":\"http://google.com\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDatasetProject", + "qualifiedName": "PosthogApi.CreateDatasetProject", + "fullyQualifiedName": "PosthogApi.CreateDatasetProject@2.0.0", + "description": "Create a new dataset within a specified project.\n\n This tool is used to create a new dataset for a specified project in Datadog. It should be called when you need to add a dataset to an existing project, identified by its project ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project where the dataset will be created. Obtainable via the /api/projects/ call. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'datasets_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateDatasetProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"dataset_name\":\"New Dataset\",\"description\":\"A dataset for analyzing user behavior.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDefaultEvaluationTags", + "qualifiedName": "PosthogApi.CreateDefaultEvaluationTags", + "fullyQualifiedName": "PosthogApi.CreateDefaultEvaluationTags@2.0.0", + "description": "Manage default evaluation tags for a team environment.\n\n Use this tool to create or manage default evaluation tags for a specific team environment in a Datadog project. Call this tool when you need to set tags that will be applied by default to the evaluations within an environment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "environment_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying the environment (team) for which to manage evaluation tags. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project you want to access for managing evaluation tags. Retrieve using /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_default_evaluation_tags_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateDefaultEvaluationTags", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "environment_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project-abc-456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"tags\":[{\"name\":\"user_type\",\"value\":\"premium\"},{\"name\":\"region\",\"value\":\"us-west\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDomainInOrganization", + "qualifiedName": "PosthogApi.CreateDomainInOrganization", + "fullyQualifiedName": "PosthogApi.CreateDomainInOrganization@2.0.0", + "description": "Add a new domain to an organization.\n\n Use this tool to create a new domain within a specific organization. It is useful for managing organizational domains.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "The unique identifier for the organization to which the domain will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'domains_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateDomainInOrganization", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"domain\": \"example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEarlyAccessFeatureTracking", + "qualifiedName": "PosthogApi.CreateEarlyAccessFeatureTracking", + "fullyQualifiedName": "PosthogApi.CreateEarlyAccessFeatureTracking@2.0.0", + "description": "Create tracking for early access feature views.\n\n Use this tool to create tracking for views on an early access feature within a project. Each GET request on the feature resource logs a new view.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID to access specific project features. Retrieve this ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'early_access_feature_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEarlyAccessFeatureTracking", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"feature_name\":\"New Feature\",\"views\":102}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEmailVerificationIntegration", + "qualifiedName": "PosthogApi.CreateEmailVerificationIntegration", + "fullyQualifiedName": "PosthogApi.CreateEmailVerificationIntegration@2.0.0", + "description": "Initiate an email verification integration for a project.\n\n This tool initiates the email verification integration for a specified project and integration ID on the Datadog platform. Use it to set up email verification for project integrations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the integration to set up email verification for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project for which the email verification integration is to be initiated. Obtain this ID by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_email_verify_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEmailVerificationIntegration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_id": { + "value": "abc-xyz-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"emailTemplate\":\"Welcome to Posthog! Please verify your email by clicking the link below.\", \"verificationLink\":\"https://example.com/verify\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnvironmentBatchExport", + "qualifiedName": "PosthogApi.CreateEnvironmentBatchExport", + "fullyQualifiedName": "PosthogApi.CreateEnvironmentBatchExport@2.0.0", + "description": "Initiate a batch export for environment tests.\n\n Use this tool to start a new batch export for testing environments in a specified project. It triggers the export process and should be called when a batch export is needed for environment test steps.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access for initiating the batch export. To find this, call /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "api_key" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_run_test_step_new_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEnvironmentBatchExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"export_type\":\"batch\",\"timestamp\":\"2023-10-05T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnvironmentDashboard", + "qualifiedName": "PosthogApi.CreateEnvironmentDashboard", + "fullyQualifiedName": "PosthogApi.CreateEnvironmentDashboard@2.0.0", + "description": "Create a new dashboard within a specific environment.\n\n Use this tool to create a dashboard within a specific project environment in Datadog. Ideal for setting up new dashboards quickly in designated environments.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project for accessing its environment. Retrieve via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response. Options: 'json', 'txt'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEnvironmentDashboard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"New Environment Dashboard\",\"widgets\":[]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnvironmentDashboardFromTemplate", + "qualifiedName": "PosthogApi.CreateEnvironmentDashboardFromTemplate", + "fullyQualifiedName": "PosthogApi.CreateEnvironmentDashboardFromTemplate@2.0.0", + "description": "Create an environment dashboard from a template.\n\n Use this tool to create a new environment dashboard in Datadog by applying a template JSON. This is useful for quickly setting up dashboards in specified projects.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The Project ID for the target environment in Datadog. Retrieve this ID via the /api/projects/ API call. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response. Choose between 'json' or 'txt'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_create_from_template_json_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEnvironmentDashboardFromTemplate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"New Dashboard\", \"widgets\": []}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnvironmentDataset", + "qualifiedName": "PosthogApi.CreateEnvironmentDataset", + "fullyQualifiedName": "PosthogApi.CreateEnvironmentDataset@2.0.0", + "description": "Create a dataset environment in a specified project.\n\n This tool is used to create a new dataset environment within a specified project in Datadog. It should be called when you need to set up a dataset environment in a given project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id_for_environment", + "type": "string", + "required": false, + "description": "Project ID for accessing the project where the dataset environment will be created. To get this ID, call the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_datasets_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEnvironmentDataset", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id_for_environment": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Example Dataset\",\"description\":\"This is an example dataset environment.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnvironmentDatasetItem", + "qualifiedName": "PosthogApi.CreateEnvironmentDatasetItem", + "fullyQualifiedName": "PosthogApi.CreateEnvironmentDatasetItem@2.0.0", + "description": "Create a dataset item in the specified environment.\n\n This tool allows you to add a new dataset item to a specific environment within a project. Use it when you need to manage or update datasets in your environments efficiently.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project you want to access. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dataset_items_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEnvironmentDatasetItem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Dataset Item\",\"value\":42}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnvironmentEvaluation", + "qualifiedName": "PosthogApi.CreateEnvironmentEvaluation", + "fullyQualifiedName": "PosthogApi.CreateEnvironmentEvaluation@2.0.0", + "description": "Create a new environment evaluation for a project.\n\n Use this tool to create and initiate an evaluation process for a specific environment within a project. Suitable for tracking and assessing environment configurations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID to access. Obtainable from calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_evaluations_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEnvironmentEvaluation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"environment\":\"production\",\"configuration\":{\"featureX\":true,\"featureY\":false}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnvironmentExports", + "qualifiedName": "PosthogApi.CreateEnvironmentExports", + "fullyQualifiedName": "PosthogApi.CreateEnvironmentExports@2.0.0", + "description": "Initiates the creation of environment exports in Datadog.\n\n Use this tool to initiate the creation of environment export files for a specific project in Datadog. This is useful for backing up or transferring project environment settings.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique ID of the project for which you want to create environment exports. Use /api/projects/ to find the ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_exports_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEnvironmentExports", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"export_type\":\"full\",\"include_settings\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnvironmentFileSystemLink", + "qualifiedName": "PosthogApi.CreateEnvironmentFileSystemLink", + "fullyQualifiedName": "PosthogApi.CreateEnvironmentFileSystemLink@2.0.0", + "description": "Create a link between environment and file system.\n\n This tool creates a link between a specified environment and a file system within a project in Datadog. It should be used when you want to associate a file system with an environment. The action is confirmed upon successful execution.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "file_system_uuid", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the file system to be linked. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve using /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_link_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEnvironmentFileSystemLink", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "file_system_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"environment\":\"production\",\"linkType\":\"filesystem\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnvironmentFileSystemLogView", + "qualifiedName": "PosthogApi.CreateEnvironmentFileSystemLogView", + "fullyQualifiedName": "PosthogApi.CreateEnvironmentFileSystemLogView@2.0.0", + "description": "Create a file system log view for an environment.\n\n This tool is used to create a file system log view for a specific project environment. It should be called when there is a need to set up or modify logging configurations in the environment's file system.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID to access the specific environment. Use /api/projects/ to find it. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_log_view_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEnvironmentFileSystemLogView", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"log_level\":\"INFO\",\"log_format\":\"json\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnvironmentGroup", + "qualifiedName": "PosthogApi.CreateEnvironmentGroup", + "fullyQualifiedName": "PosthogApi.CreateEnvironmentGroup@2.0.0", + "description": "Create a new environment group in a project.\n\nUse this tool to create a new environment group within a specified project. Suitable for managing and organizing environment settings in Datadog.", + "parameters": [ + { + "name": "environment_group_key", + "type": "string", + "required": true, + "description": "A string identifier for the environment group. It must be unique within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_index", + "type": "integer", + "required": true, + "description": "An integer representing the index of the group type to be created within the project. Ensure it matches the available types for grouping.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access. Retrieve using /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_group_properties", + "type": "string", + "required": false, + "description": "A JSON string containing key-value pairs for the properties of the environment group. Define attributes like settings and configurations relevant to the group.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_groups_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEnvironmentGroup", + "parameters": { + "environment_group_key": { + "value": "prod-env-group", + "type": "string", + "required": true + }, + "group_type_index": { + "value": 1, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project-12345", + "type": "string", + "required": true + }, + "environment_group_properties": { + "value": "{\"setting1\": \"value1\", \"setting2\": \"value2\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnvironmentInsight", + "qualifiedName": "PosthogApi.CreateEnvironmentInsight", + "fullyQualifiedName": "PosthogApi.CreateEnvironmentInsight@2.0.0", + "description": "Create a new insight for an environment.\n\n Use this tool to add a new insight for a specified environment within a project. It logs a new view each time it is called and is useful for tracking file system views in your projects.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID to access the specific project. Retrieve using /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the format of the output data. Accepted values are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEnvironmentInsight", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"insight_name\": \"New Feature View\", \"description\": \"Tracking views for new feature rollout\", \"data\": {}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnvironmentIntegration", + "qualifiedName": "PosthogApi.CreateEnvironmentIntegration", + "fullyQualifiedName": "PosthogApi.CreateEnvironmentIntegration@2.0.0", + "description": "Create a new integration for a specified environment.\n\n This tool creates a new integration within a specified project environment on Datadog. Call this tool when you need to add integrations to enhance environment functionalities or connect with other services.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project ID needed to access the specific project. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEnvironmentIntegration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"integration_name\":\"NewIntegration\",\"enabled\":true,\"settings\":{\"api_key\":\"example_api_key\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnvironmentLogSparkline", + "qualifiedName": "PosthogApi.CreateEnvironmentLogSparkline", + "fullyQualifiedName": "PosthogApi.CreateEnvironmentLogSparkline@2.0.0", + "description": "Create a sparkline for environment logs in Datadog.\n\nThis tool is used to create a sparkline visualization for logs in a specified environment within Datadog. It should be called when you need a graphical representation of log data for a particular project environment.", + "parameters": [ + { + "name": "project_id_for_log_sparkline", + "type": "string", + "required": true, + "description": "The Project ID for accessing the environment logs in Datadog. Retrieve this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_logs_sparkline_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEnvironmentLogSparkline", + "parameters": { + "project_id_for_log_sparkline": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnvironmentSubscription", + "qualifiedName": "PosthogApi.CreateEnvironmentSubscription", + "fullyQualifiedName": "PosthogApi.CreateEnvironmentSubscription@2.0.0", + "description": "Create a new subscription for an environment.\n\n This tool is used to create a new subscription for a specific environment in a project. It is useful when you need to set up notification or monitoring preferences for the environment within the Datadog service.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID to access the specific project. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_subscriptions_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEnvironmentSubscription", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\":\"user@example.com\",\"event\":\"subscription_created\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateErrorTrackingAssignmentRule", + "qualifiedName": "PosthogApi.CreateErrorTrackingAssignmentRule", + "fullyQualifiedName": "PosthogApi.CreateErrorTrackingAssignmentRule@2.0.0", + "description": "Create a new error tracking assignment rule.\n\nUse this tool to create a new error tracking assignment rule for specific environments. It is useful for managing error tracking configurations in a project environment.", + "parameters": [ + { + "name": "assignee_username", + "type": "string", + "required": true, + "description": "Username of the individual to whom the error tracking assignment rule is assigned. This should be a valid username within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "assignment_rule_filters", + "type": "string", + "required": true, + "description": "Filters to specify the criteria for the error tracking assignment rule. Input as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "order_key_priority", + "type": "integer", + "required": true, + "description": "An integer specifying the priority order of the rule. Lower values imply higher priority.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "ID of the project to access. Retrieve via /api/projects/ call.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_id", + "type": "string", + "required": true, + "description": "A unique identifier for the error tracking assignment rule to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "disabled_data_state", + "type": "string", + "required": false, + "description": "Indicates if data for the error tracking rule is disabled. Use 'true' to disable, 'false' to enable.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_assignment_rules_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateErrorTrackingAssignmentRule", + "parameters": { + "assignee_username": { + "value": "john_doe", + "type": "string", + "required": true + }, + "assignment_rule_filters": { + "value": "error_type: 'CRITICAL' AND environment: 'production'", + "type": "string", + "required": true + }, + "order_key_priority": { + "value": 1, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_12345", + "type": "string", + "required": true + }, + "rule_id": { + "value": "rule_67890", + "type": "string", + "required": true + }, + "disabled_data_state": { + "value": "false", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateErrorTrackingGroupingRule", + "qualifiedName": "PosthogApi.CreateErrorTrackingGroupingRule", + "fullyQualifiedName": "PosthogApi.CreateErrorTrackingGroupingRule@2.0.0", + "description": "Create a new error tracking grouping rule for a project.\n\nThis tool is used to create a new error tracking grouping rule within a specified project environment. It helps in organizing and managing error tracking efficiently.", + "parameters": [ + { + "name": "assignee_identifier", + "type": "string", + "required": true, + "description": "The identifier of the user to whom the error tracking issue is assigned. Provide a valid user ID or username.", + "enum": null, + "inferrable": true + }, + { + "name": "error_tracking_filters", + "type": "string", + "required": true, + "description": "Filters for error tracking grouping rule. Provide criteria to classify errors, such as error types or patterns.", + "enum": null, + "inferrable": true + }, + { + "name": "order_priority_key", + "type": "integer", + "required": true, + "description": "An integer representing the priority or sequence order of the error tracking grouping rule within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_identifier", + "type": "string", + "required": true, + "description": "A unique string identifier for the new error tracking grouping rule.", + "enum": null, + "inferrable": true + }, + { + "name": "grouping_rule_disabled_data", + "type": "string", + "required": false, + "description": "Indicate if the grouping rule data should be disabled. Accepts a boolean in string form, like 'true' or 'false'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_grouping_rules_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateErrorTrackingGroupingRule", + "parameters": { + "assignee_identifier": { + "value": "user123", + "type": "string", + "required": true + }, + "error_tracking_filters": { + "value": "error.type='server' OR error.code=500", + "type": "string", + "required": true + }, + "order_priority_key": { + "value": 1, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_456", + "type": "string", + "required": true + }, + "rule_identifier": { + "value": "rule_789", + "type": "string", + "required": true + }, + "grouping_rule_disabled_data": { + "value": "false", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateErrorTrackingRelease", + "qualifiedName": "PosthogApi.CreateErrorTrackingRelease", + "fullyQualifiedName": "PosthogApi.CreateErrorTrackingRelease@2.0.0", + "description": "Create a new error tracking release for a project.\n\nUse this tool to create a new error tracking release for a specified project within Datadog. This can help manage and track errors in different project environments, ensuring a systematic approach to error monitoring.", + "parameters": [ + { + "name": "error_release_id", + "type": "string", + "required": true, + "description": "Unique identifier for the error tracking release to be accessed or modified.", + "enum": null, + "inferrable": true + }, + { + "name": "hash_identifier", + "type": "string", + "required": true, + "description": "Unique string identifier for the release hash. Required for tracking specific releases.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "ID of the project for which to create an error tracking release. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "project_name", + "type": "string", + "required": true, + "description": "The name of the project for which you want to create an error tracking release.", + "enum": null, + "inferrable": true + }, + { + "name": "release_creation_timestamp", + "type": "string", + "required": true, + "description": "Timestamp indicating when the error tracking release was created. Format should be ISO 8601 (e.g., 2023-10-02T14:48:00Z).", + "enum": null, + "inferrable": true + }, + { + "name": "release_version", + "type": "string", + "required": true, + "description": "The version identifier for the new error tracking release.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "integer", + "required": true, + "description": "The integer ID of the team associated with the error tracking release. Required to specify the team context in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "release_metadata", + "type": "string", + "required": false, + "description": "Optional metadata for the error tracking release. Provide additional information in a string format.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_releases_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateErrorTrackingRelease", + "parameters": { + "error_release_id": { + "value": "err-2023-001", + "type": "string", + "required": true + }, + "hash_identifier": { + "value": "abc123def456gh789", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj-12345", + "type": "string", + "required": true + }, + "project_name": { + "value": "Example Project", + "type": "string", + "required": true + }, + "release_creation_timestamp": { + "value": "2023-10-02T14:48:00Z", + "type": "string", + "required": true + }, + "release_version": { + "value": "1.0.0", + "type": "string", + "required": true + }, + "team_identifier": { + "value": 42, + "type": "integer", + "required": true + }, + "release_metadata": { + "value": "Initial release with basic error tracking setup", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateErrorTrackingSuppressionRule", + "qualifiedName": "PosthogApi.CreateErrorTrackingSuppressionRule", + "fullyQualifiedName": "PosthogApi.CreateErrorTrackingSuppressionRule@2.0.0", + "description": "Create a new error tracking suppression rule.\n\nUse this tool to create a new suppression rule for error tracking environments. It should be called when you need to suppress specific errors in a project's environment.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "suppress_rule_order_key", + "type": "integer", + "required": true, + "description": "An integer representing the order or priority of the suppression rule in the list. Determines processing sequence.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_filters", + "type": "string", + "required": true, + "description": "A string defining the criteria to filter which errors should be suppressed. Specify conditions relevant to your project's needs.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_id", + "type": "string", + "required": true, + "description": "A unique identifier for the suppression rule to be created. This ID helps in tracking and managing the specific rule.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_suppression_rules_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateErrorTrackingSuppressionRule", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "suppress_rule_order_key": { + "value": 1, + "type": "integer", + "required": true + }, + "suppression_rule_filters": { + "value": "error_code: 500 AND environment: production", + "type": "string", + "required": true + }, + "suppression_rule_id": { + "value": "suppression_rule_001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEvaluationRun", + "qualifiedName": "PosthogApi.CreateEvaluationRun", + "fullyQualifiedName": "PosthogApi.CreateEvaluationRun@2.0.0", + "description": "Initiate a new evaluation run for a project.\n\nThis tool creates a new evaluation run within a specified project and enqueues it for asynchronous execution. It should be called when you need to start an evaluation process related to an environment.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access for the evaluation run. Retrieve it using /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_evaluation_runs_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateEvaluationRun", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateExperimentHoldout", + "qualifiedName": "PosthogApi.CreateExperimentHoldout", + "fullyQualifiedName": "PosthogApi.CreateExperimentHoldout@2.0.0", + "description": "Create a new experiment holdout within a project.\n\n Use this tool to create a new holdout for an experiment within a specified project in DataDog. This is useful for setting aside a portion of data for control group purposes during experimentation.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project you want to access. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiment_holdouts_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateExperimentHoldout", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"experiment_name\": \"A/B Test\", \"holdout_size\": 0.1}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateExperimentInProject", + "qualifiedName": "PosthogApi.CreateExperimentInProject", + "fullyQualifiedName": "PosthogApi.CreateExperimentInProject@2.0.0", + "description": "Create a new experiment within a specified project.\n\n This tool allows you to create a new experiment within a specified project using the Datadog API. It should be called when you want to set up and organize a new experiment under a particular project ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id_for_experiment_creation", + "type": "string", + "required": false, + "description": "The ID of the project where the experiment will be created. Obtain this by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiments_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateExperimentInProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id_for_experiment_creation": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{ \"experiment_name\": \"New Experiment\", \"description\": \"A/B testing for the new feature\", \"hypothesis\": \"The new feature will increase user engagement\", \"variations\": [{\"variation_name\": \"Control\", \"weight\": 50}, {\"variation_name\": \"Variant A\", \"weight\": 50}] }", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateExperimentSavedMetrics", + "qualifiedName": "PosthogApi.CreateExperimentSavedMetrics", + "fullyQualifiedName": "PosthogApi.CreateExperimentSavedMetrics@2.0.0", + "description": "Create and save metrics for an experiment in a project.\n\n Use this tool to create and save experiment metrics within a specified project. It is useful when you need to add new metrics to an experiment's saved data.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project for which you want to create and save experiment metrics. Obtain from /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiment_saved_metrics_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateExperimentSavedMetrics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"metric_name\": \"conversion_rate\", \"metric_value\": 0.25, \"experiment_id\": \"exp_001\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateExperimentTimeseriesRecalculation", + "qualifiedName": "PosthogApi.CreateExperimentTimeseriesRecalculation", + "fullyQualifiedName": "PosthogApi.CreateExperimentTimeseriesRecalculation@2.0.0", + "description": "Initiate recalculation of experiment timeseries data.\n\n Use this tool to create a recalculation request for experiment timeseries data by providing the necessary metric object and its fingerprint. Useful for updating and analyzing experiment data metrics.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "experiment_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying this experiment for recalculation. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the project you want to access for the recalculation. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiments_recalculate_timeseries_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateExperimentTimeseriesRecalculation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "experiment_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"metric\":\"conversion_rate\",\"fingerprint\":\"experiment_123_fingerprint\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateExports", + "qualifiedName": "PosthogApi.CreateExports", + "fullyQualifiedName": "PosthogApi.CreateExports@2.0.0", + "description": "Initiate the export process for Datadog projects.\n\n Use this tool to start the export process for a specified Datadog project by providing the project ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier of the Datadog project to initiate exports. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'exports_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateExports", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"export_type\":\"full\",\"format\":\"json\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateExposureCohortForExperiment", + "qualifiedName": "PosthogApi.CreateExposureCohortForExperiment", + "fullyQualifiedName": "PosthogApi.CreateExposureCohortForExperiment@2.0.0", + "description": "Create an exposure cohort for an experiment.\n\n This tool is used to create an exposure cohort for a specific experiment within a project on Datadog. It is suitable for users who need to assign a new group for exposure in their experiment workflow.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "experiment_id", + "type": "integer", + "required": false, + "description": "A unique integer used to identify the specific experiment. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the project you're accessing. Obtain this via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiments_create_exposure_cohort_for_experiment_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateExposureCohortForExperiment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "experiment_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"cohort_name\": \"New Exposure Cohort\", \"criteria\": {\"event\": \"user_sign_up\", \"properties\": {\"is_active\": true}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFeatureFlag", + "qualifiedName": "PosthogApi.CreateFeatureFlag", + "fullyQualifiedName": "PosthogApi.CreateFeatureFlag@2.0.0", + "description": "Create a new feature flag in a specific project.\n\n Use this tool to create a feature flag within a specified project on the Datadog platform. Ideal for managing feature flags in applications.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_unique_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the project to access. Retrieve it by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateFeatureFlag", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_unique_identifier": { + "value": "proj_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"new_feature_flag\", \"key\": \"newFlagKey\", \"active\": true, \"filters\": []}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFeatureFlagBlastRadius", + "qualifiedName": "PosthogApi.CreateFeatureFlagBlastRadius", + "fullyQualifiedName": "PosthogApi.CreateFeatureFlagBlastRadius@2.0.0", + "description": "Create a feature flag blast radius for a project.\n\n This tool creates a user blast radius for feature flags within a specified project. It can be used to manage the scope of feature flag exposure to users. Refer to the documentation for more details on managing feature flags.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "feature_flag_project_id", + "type": "string", + "required": false, + "description": "The Project ID for accessing the desired project. Obtainable via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_user_blast_radius_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateFeatureFlagBlastRadius", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "feature_flag_project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"blast_radius\": \"10\", \"feature_flag_id\": \"abcde\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFeatureFlagsDashboard", + "qualifiedName": "PosthogApi.CreateFeatureFlagsDashboard", + "fullyQualifiedName": "PosthogApi.CreateFeatureFlagsDashboard@2.0.0", + "description": "Create a dashboard for feature flags in a project.\n\n Use this tool to create a feature flags dashboard within a specified project. This is useful for managing and visualizing feature flags, helping to control and experiment with feature rollouts.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "feature_flag_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying this feature flag for creation or modification. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_dashboard_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateFeatureFlagsDashboard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "feature_flag_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Feature Flag\",\"description\":\"This feature is in testing phase.\",\"enabled\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFeatureFlagUsageDashboard", + "qualifiedName": "PosthogApi.CreateFeatureFlagUsageDashboard", + "fullyQualifiedName": "PosthogApi.CreateFeatureFlagUsageDashboard@2.0.0", + "description": "Create or manage feature flag usage dashboards.\n\n This tool allows you to create, read, update, or delete feature flag usage dashboards. It should be called when you need to manage the display and tracking of feature flags in your project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "feature_flag_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying this feature flag for the usage dashboard. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Retrieve it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_enrich_usage_dashboard_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateFeatureFlagUsageDashboard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "feature_flag_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"dashboard\":{\"name\":\"Feature Flag Usage Dashboard\",\"features\":[{\"id\":12345,\"name\":\"New Feature\"}]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFileSystemEnvironment", + "qualifiedName": "PosthogApi.CreateFileSystemEnvironment", + "fullyQualifiedName": "PosthogApi.CreateFileSystemEnvironment@2.0.0", + "description": "Create a new file system environment in a project.\n\n Use this tool to create a new file system environment within a specified project. It should be called when setting up storage environments for applications or data within a project on Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access for environment creation. Retrieve it from /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateFileSystemEnvironment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"environment_name\":\"new_env\",\"storage_type\":\"local\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFileSystemLink", + "qualifiedName": "PosthogApi.CreateFileSystemLink", + "fullyQualifiedName": "PosthogApi.CreateFileSystemLink@2.0.0", + "description": "Create a link for a file system in a specific project.\n\n This tool creates a link for a file system within a specified project. It should be called when you need to establish a new link in your project’s file system.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "file_system_id", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the file system. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_link_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateFileSystemLink", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "file_system_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"link_name\": \"myFileSystemLink\", \"access_level\": \"read-write\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFileSystemLogView", + "qualifiedName": "PosthogApi.CreateFileSystemLogView", + "fullyQualifiedName": "PosthogApi.CreateFileSystemLogView@2.0.0", + "description": "Create a new file system log view for a project.\n\n Use this tool to initiate the creation of a file system log view for a specified project. It interacts with the Datadog API to set up logging configurations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "target_project_id", + "type": "string", + "required": false, + "description": "The ID of the project for which you want to create a file system log view. Use the API to retrieve the project ID if unknown. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_log_view_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateFileSystemLogView", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "target_project_id": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"log_format\":\"json\",\"log_level\":\"info\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFileSystemShortcut", + "qualifiedName": "PosthogApi.CreateFileSystemShortcut", + "fullyQualifiedName": "PosthogApi.CreateFileSystemShortcut@2.0.0", + "description": "Create a file system shortcut for a project environment.\n\nThis tool allows you to create a file system shortcut in a specified environment for a project in Datadog. Use it to quickly set up shortcuts for accessing environment-specific directories.", + "parameters": [ + { + "name": "creation_timestamp", + "type": "string", + "required": true, + "description": "The timestamp indicating when the file system shortcut was created. Format: YYYY-MM-DDTHH:MM:SSZ.", + "enum": null, + "inferrable": true + }, + { + "name": "file_system_path", + "type": "string", + "required": true, + "description": "The file system path where the shortcut will point to. This should specify the environment-specific directory.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Obtain it via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the filesystem shortcut to be created. Used to distinguish this shortcut.", + "enum": null, + "inferrable": true + }, + { + "name": "reference_name", + "type": "string", + "required": false, + "description": "A string representing the reference name for the file system shortcut. Use a unique identifier or description that aids in shortcut identification.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_type", + "type": "string", + "required": false, + "description": "Specify the type of shortcut to create, such as \"folder\" or \"file\".", + "enum": null, + "inferrable": true + }, + { + "name": "target_href", + "type": "string", + "required": false, + "description": "The URL or path to which the file system shortcut will point. This should be a valid string representing the reference destination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_shortcut_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateFileSystemShortcut", + "parameters": { + "creation_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": true + }, + "file_system_path": { + "value": "/projects/my_project/dev/", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "shortcut_identifier": { + "value": "shortcut_001", + "type": "string", + "required": true + }, + "reference_name": { + "value": "Dev Environment Shortcut", + "type": "string", + "required": false + }, + "shortcut_type": { + "value": "folder", + "type": "string", + "required": false + }, + "target_href": { + "value": "https://example.com/dev_resources", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateGroupTypeMetric", + "qualifiedName": "PosthogApi.CreateGroupTypeMetric", + "fullyQualifiedName": "PosthogApi.CreateGroupTypeMetric@2.0.0", + "description": "Create a new metric for a specific group type.\n\nThis tool creates a new metric for a specified group type within a project. It should be called when you need to add a new performance or data metric to a group type for monitoring or analysis purposes.", + "parameters": [ + { + "name": "group_type_index", + "type": "integer", + "required": true, + "description": "An integer representing the index of the group type to which a new metric will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_metric_id", + "type": "string", + "required": true, + "description": "The unique identifier for the metric you wish to create. It should be a string value.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_filters", + "type": "string", + "required": true, + "description": "Optional filters to apply when creating the group type metric. It accepts a string of filter criteria to narrow down the data.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_name", + "type": "string", + "required": true, + "description": "The name of the metric to be created for the group type. This should be a descriptive and unique identifier that helps distinguish this metric from others.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID for accessing the specific project. Make a call to /api/projects/ to retrieve available IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "display_format", + "type": "string", + "required": false, + "description": "Specifies how the metric will be displayed: 'number' for a numeric display, or 'sparkline' for a graphical display.", + "enum": null, + "inferrable": true + }, + { + "name": "interval_in_days", + "type": "integer", + "required": false, + "description": "Specify the interval in days for the metric data aggregation.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_format", + "type": "string", + "required": false, + "description": "Specify the format for the metric. Options are 'numeric' or 'currency'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_types_metrics_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateGroupTypeMetric", + "parameters": { + "group_type_index": { + "value": 1, + "type": "integer", + "required": true + }, + "group_type_metric_id": { + "value": "user_engagement_rate", + "type": "string", + "required": true + }, + "metric_filters": { + "value": "event == 'pageview' && user_role == 'admin'", + "type": "string", + "required": true + }, + "metric_name": { + "value": "User Engagement Rate", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_12345", + "type": "string", + "required": true + }, + "display_format": { + "value": "number", + "type": "string", + "required": false + }, + "interval_in_days": { + "value": 7, + "type": "integer", + "required": false + }, + "metric_format": { + "value": "numeric", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateHogFunction", + "qualifiedName": "PosthogApi.CreateHogFunction", + "fullyQualifiedName": "PosthogApi.CreateHogFunction@2.0.0", + "description": "Log a new file system view for a specified project.\n\n This tool logs a new file system view each time a GET request is made on the resource. It should be called to track resource views under a specific project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project to access. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hog_functions_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateHogFunction", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345-abcde", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"viewed_at\":\"2023-10-01T12:00:00Z\",\"path\":\"/api/resource\",\"user_id\":\"user123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateHogFunctionBroadcast", + "qualifiedName": "PosthogApi.CreateHogFunctionBroadcast", + "fullyQualifiedName": "PosthogApi.CreateHogFunctionBroadcast@2.0.0", + "description": "Create a broadcast for hog functions in an environment.\n\n This tool is used to create a broadcast for hog functions within a specified environment in Datadog. Call this tool when you need to track file system views by logging a new view with each GET request on the resource.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "hog_function_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the hog function for broadcast creation. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "String representing the ID of the project to access. Obtain the ID via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_hog_functions_broadcast_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateHogFunctionBroadcast", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "hog_function_id": { + "value": "f65e965c-4b09-4a84-82c3-9b018fc0c161", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "proj_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"event\":\"file_viewed\",\"properties\":{\"file_name\":\"example.txt\",\"user_id\":\"user_67890\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateHogFunctionEnvironment", + "qualifiedName": "PosthogApi.CreateHogFunctionEnvironment", + "fullyQualifiedName": "PosthogApi.CreateHogFunctionEnvironment@2.0.0", + "description": "Track and create a new file system view in an environment.\n\n This tool is used to create a new 'hog function' environment, which involves logging each GET request on the resource to track file system views. It should be called when there is a need to initialize or track views within a project environment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Call /api/projects/ to retrieve project IDs if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_hog_functions_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateHogFunctionEnvironment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"view_name\":\"user_dashboard\",\"visibility\":\"public\",\"track_get_requests\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateInsightEntry", + "qualifiedName": "PosthogApi.CreateInsightEntry", + "fullyQualifiedName": "PosthogApi.CreateInsightEntry@2.0.0", + "description": "Logs a new file system view entry for insights.\n\n Use this tool to create a new insight entry when tracking file system views. Each invocation logs a view for a specified project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project for which you want to log a file system view. Obtain it using the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response, either 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateInsightEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"file_view\":\"example/path/to/file.txt\",\"timestamp\":\"2023-10-10T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateInsightsSharingPassword", + "qualifiedName": "PosthogApi.CreateInsightsSharingPassword", + "fullyQualifiedName": "PosthogApi.CreateInsightsSharingPassword@2.0.0", + "description": "Create a new password for insights sharing configuration.\n\n This tool is used to create a new password for the sharing configuration of a specific insight within a project. Call this tool when you need to generate a password for sharing insights securely.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "insight_identifier", + "type": "integer", + "required": false, + "description": "The numerical ID representing the specific insight to create a password for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_sharing_passwords_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateInsightsSharingPassword", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "insight_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"password\":\"securePassword123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateLogQuery", + "qualifiedName": "PosthogApi.CreateLogQuery", + "fullyQualifiedName": "PosthogApi.CreateLogQuery@2.0.0", + "description": "Initiate a logs query for a specific project.\n\nUse this tool to create a new log query for a specified project in Datadog. It's useful for starting the process of retrieving logs data based on specific parameters.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique Project ID for accessing the desired project in Datadog. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'logs_query_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateLogQuery", + "parameters": { + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateLogsQueryForEnvironment", + "qualifiedName": "PosthogApi.CreateLogsQueryForEnvironment", + "fullyQualifiedName": "PosthogApi.CreateLogsQueryForEnvironment@2.0.0", + "description": "Create a logs query for a specific environment.\n\nThis tool initiates a logs query for a specified environment within a project. It should be called when you need to analyze logs data from a particular environment.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project being accessed. Use /api/projects/ to find it.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_logs_query_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateLogsQueryForEnvironment", + "parameters": { + "project_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateLogsSparkline", + "qualifiedName": "PosthogApi.CreateLogsSparkline", + "fullyQualifiedName": "PosthogApi.CreateLogsSparkline@2.0.0", + "description": "Create a sparkline for project logs.\n\nUse this tool to create a sparkline visualization of logs for a specific project. Useful for summarizing log data trends over time.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project for which you want to create a sparkline. Retrieve the ID using the /api/projects/ endpoint before using it here.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'logs_sparkline_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateLogsSparkline", + "parameters": { + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateMaxToolsInsight", + "qualifiedName": "PosthogApi.CreateMaxToolsInsight", + "fullyQualifiedName": "PosthogApi.CreateMaxToolsInsight@2.0.0", + "description": "Create an insight for maximum tools in a project.\n\nThis tool creates an insight related to the maximum tools for a specified project within Datadog environments. It should be called when you need to generate insights for managing or analyzing tool usage limits.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access to create the insight. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_max_tools_create_and_query_insight_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateMaxToolsInsight", + "parameters": { + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateMessageWithClaude", + "qualifiedName": "PosthogApi.CreateMessageWithClaude", + "fullyQualifiedName": "PosthogApi.CreateMessageWithClaude@2.0.0", + "description": "Create a message using Anthropic's Claude models.\n\n This tool creates a new message with Anthropic's Claude models, using the format compatible with Anthropic's Messages API. It should be called when you need to generate a message leveraging Claude's capabilities.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "message_format", + "type": "string", + "required": false, + "description": "Specify the format of the message. Options are 'json' or 'txt'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'llm_gateway_v1_messages_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateMessageWithClaude", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-12345", + "type": "string", + "required": false + }, + "message_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"content\":\"Hello, how can I assist you today?\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNotebook", + "qualifiedName": "PosthogApi.CreateNotebook", + "fullyQualifiedName": "PosthogApi.CreateNotebook@2.0.0", + "description": "Create a new notebook within a specified project.\n\n This tool allows for the creation of a new notebook within a specified project in Datadog. Ideal for organizing data and analyses in one place.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project where the notebook will be created. Use /api/projects/ to find the ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'notebooks_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateNotebook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"New Analysis Notebook\",\"content\":\"This notebook contains analysis for project 12345.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOrganization", + "qualifiedName": "PosthogApi.CreateOrganization", + "fullyQualifiedName": "PosthogApi.CreateOrganization@2.0.0", + "description": "Create a new organization in Datadog.\n\nUse this tool to create a new organization in Datadog. It should be called when there is a need to add an organization to the system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateOrganization", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"New Organization\",\"description\":\"A description for the new organization.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOrganizationInvite", + "qualifiedName": "PosthogApi.CreateOrganizationInvite", + "fullyQualifiedName": "PosthogApi.CreateOrganizationInvite@2.0.0", + "description": "Send an invitation to join an organization.\n\n Use this tool to create and send an invitation email to a user for joining a specified organization on Datadog. It should be called when you want to add new members to an organization.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Datadog organization to which the invitation will be sent. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'invites_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateOrganizationInvite", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\": \"newuser@example.com\", \"role\": \"member\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOrganizationProject", + "qualifiedName": "PosthogApi.CreateOrganizationProject", + "fullyQualifiedName": "PosthogApi.CreateOrganizationProject@2.0.0", + "description": "Create a project for the current organization.\n\n Use this tool to create and associate a new project with the specified organization in Datadog. It returns the details of the newly created project, helping you manage organizational projects efficiently.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_unique_id", + "type": "integer", + "required": false, + "description": "An integer that uniquely identifies the project to be created for the organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "A unique string that identifies the organization for which the project is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'change_organization_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateOrganizationProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_unique_id": { + "value": 123, + "type": "integer", + "required": false + }, + "organization_identifier": { + "value": "org-456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Project\", \"description\": \"This is a new project for the organization.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOrUpdatePersons", + "qualifiedName": "PosthogApi.CreateOrUpdatePersons", + "fullyQualifiedName": "PosthogApi.CreateOrUpdatePersons@2.0.0", + "description": "Create or update persons in a project funnel.\n\n Use this tool to create or update persons within a specific project's funnel on Datadog, aligning with the correct project ID. For reading or deleting persons, consider other API endpoints as suggested.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project to access. Use /api/projects/ to find the ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response. Options are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_funnel_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateOrUpdatePersons", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_123456", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"distinct_id\": \"user_abc\", \"properties\": {\"email\": \"user@example.com\", \"name\": \"John Doe\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreatePersistedFolder", + "qualifiedName": "PosthogApi.CreatePersistedFolder", + "fullyQualifiedName": "PosthogApi.CreatePersistedFolder@2.0.0", + "description": "Create a persisted folder in a Datadog environment.\n\nUse this tool to create a persistent storage folder within a specified Datadog project environment.", + "parameters": [ + { + "name": "folder_creation_timestamp", + "type": "string", + "required": true, + "description": "Timestamp indicating when the folder was created. It should be in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_id", + "type": "string", + "required": true, + "description": "A unique identifier for the persisted folder to be created in the environment.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_type", + "type": "string", + "required": true, + "description": "Specifies the type of the folder to create. Acceptable values are 'home' for Home directory and 'pinned' for Pinned directory.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_updated_at", + "type": "string", + "required": true, + "description": "Timestamp indicating when the folder was last updated.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the Datadog project for accessing a specific environment. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_protocol", + "type": "string", + "required": false, + "description": "Specify the protocol for the persisted folder, typically as a string indicator.", + "enum": null, + "inferrable": true + }, + { + "name": "persisted_folder_path", + "type": "string", + "required": false, + "description": "Specify the path for the persisted folder in the Datadog environment. This should be a valid directory path within the project.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persisted_folder_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreatePersistedFolder", + "parameters": { + "folder_creation_timestamp": { + "value": "2023-10-01T12:34:56Z", + "type": "string", + "required": true + }, + "folder_id": { + "value": "folder-12345", + "type": "string", + "required": true + }, + "folder_type": { + "value": "home", + "type": "string", + "required": true + }, + "folder_updated_at": { + "value": "2023-10-02T12:34:56Z", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "datadog-project-67890", + "type": "string", + "required": true + }, + "folder_protocol": { + "value": "http", + "type": "string", + "required": false + }, + "persisted_folder_path": { + "value": "/data/storage", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreatePersonsFunnel", + "qualifiedName": "PosthogApi.CreatePersonsFunnel", + "fullyQualifiedName": "PosthogApi.CreatePersonsFunnel@2.0.0", + "description": "Create a funnel for tracking persons.\n\n Use this tool to create a funnel for tracking persons within a specific project environment. For updating existing persons, consider using the capture API or relevant SDKs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "target_project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Obtain it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the output format for the funnel creation. Options are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_funnel_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreatePersonsFunnel", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "target_project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"funnel_name\": \"User Onboarding\", \"steps\": [{\"url\": \"/signup\", \"name\": \"Signup Completed\"}, {\"url\": \"/welcome\", \"name\": \"Welcome Page Viewed\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreatePersonsFunnelCorrelation", + "qualifiedName": "PosthogApi.CreatePersonsFunnelCorrelation", + "fullyQualifiedName": "PosthogApi.CreatePersonsFunnelCorrelation@2.0.0", + "description": "Create a funnel correlation for persons in a project.\n\n Use this tool to create a funnel correlation for persons within a specified project environment. This is ideal for tracking and analyzing how different user properties impact funnel performance.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project to access. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specifies the output format of the response. Accepts 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_funnel_correlation_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreatePersonsFunnelCorrelation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"funnel_id\":\"67890\",\"properties\":{\"user_type\":\"premium\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateProjectEnvironment", + "qualifiedName": "PosthogApi.CreateProjectEnvironment", + "fullyQualifiedName": "PosthogApi.CreateProjectEnvironment@2.0.0", + "description": "Create a new environment for a specific project.\n\n Use this tool to create a new environment within a specified project in the current organization. Ideal for setting up workspaces for development, testing, or production phases.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve it by calling `/api/projects/`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateProjectEnvironment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Production\", \"type\": \"live\", \"description\": \"Production environment for the project\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateProjectFileSystem", + "qualifiedName": "PosthogApi.CreateProjectFileSystem", + "fullyQualifiedName": "PosthogApi.CreateProjectFileSystem@2.0.0", + "description": "Create a file system for a specified project.\n\n Use this tool to create a file system for a given project in Datadog. It should be called when a new file system needs to be initialized within a project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project for which you want to create a file system. Retrieve this ID by calling `/api/projects/`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateProjectFileSystem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"fileSystemType\":\"local\",\"capacity\":1000}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateProjectForOrganization", + "qualifiedName": "PosthogApi.CreateProjectForOrganization", + "fullyQualifiedName": "PosthogApi.CreateProjectForOrganization@2.0.0", + "description": "Create a new project for the current organization.\n\n Use this tool to create a new project within the organization's current settings. It is suitable for managing and organizing projects under a specific organization's ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the organization. Used to specify which organization's project is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateProjectForOrganization", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_identifier": { + "value": "org_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Project\",\"description\":\"This is a sample project for testing purposes.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateProjectGroup", + "qualifiedName": "PosthogApi.CreateProjectGroup", + "fullyQualifiedName": "PosthogApi.CreateProjectGroup@2.0.0", + "description": "Create a new group in a specified project.\n\nThis tool is used to create a new group within a specified project in Datadog. It should be called when there is a need to organize or manage project resources effectively by grouping related items together.", + "parameters": [ + { + "name": "group_identifier_key", + "type": "string", + "required": true, + "description": "A unique string identifier for the new group being created within a project. This key should be distinct to avoid conflicts with existing groups.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_identifier", + "type": "integer", + "required": true, + "description": "An integer specifying the type of group to create within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project where the new group will be created. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "group_properties", + "type": "string", + "required": false, + "description": "Specify the properties of the group you want to create. Provide this as a JSON string with property keys and values.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateProjectGroup", + "parameters": { + "group_identifier_key": { + "value": "unique_group_001", + "type": "string", + "required": true + }, + "group_type_identifier": { + "value": 2, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": true + }, + "group_properties": { + "value": "{\"description\":\"A test group for project 12345\", \"created_by\":\"user@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateProjectIntegration", + "qualifiedName": "PosthogApi.CreateProjectIntegration", + "fullyQualifiedName": "PosthogApi.CreateProjectIntegration@2.0.0", + "description": "Creates a new integration for a specific project.\n\n Use this tool to create an integration for a project by providing the project ID. It sets up integrations to connect your project with other services.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateProjectIntegration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"integration_type\": \"slack\", \"enabled\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateProjectSubscription", + "qualifiedName": "PosthogApi.CreateProjectSubscription", + "fullyQualifiedName": "PosthogApi.CreateProjectSubscription@2.0.0", + "description": "Create a new subscription for a specified project.\n\n Use this tool to add a subscription to a specific project. It is called when you need to create a subscription within a project using the project's ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'subscriptions_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateProjectSubscription", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\":\"user@example.com\",\"plan\":\"premium\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateProjectTask", + "qualifiedName": "PosthogApi.CreateProjectTask", + "fullyQualifiedName": "PosthogApi.CreateProjectTask@2.0.0", + "description": "Create a new task within a specified project.\n\n This tool is used to create a new task in a given project by specifying the project ID. It helps manage tasks effectively by adding units of work to be performed by an agent.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access for task creation. Retrieve the ID using a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tasks_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateProjectTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"task_name\": \"New Feature Development\", \"due_date\": \"2023-12-31\", \"priority\": \"high\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateProxyRecords", + "qualifiedName": "PosthogApi.CreateProxyRecords", + "fullyQualifiedName": "PosthogApi.CreateProxyRecords@2.0.0", + "description": "Create a proxy record for an organization.\n\n This tool calls the Datadog API to create a new proxy record within a specified organization. Use this tool when you need to add proxy records for managing organizational network proxies.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "A unique string identifier for the organization to which the proxy record will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'proxy_records_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateProxyRecords", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_identifier": { + "value": "org-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"proxy_name\": \"Example Proxy\", \"proxy_url\": \"https://proxy.example.com\", \"description\": \"This is a test proxy record.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateRecordingSharePassword", + "qualifiedName": "PosthogApi.CreateRecordingSharePassword", + "fullyQualifiedName": "PosthogApi.CreateRecordingSharePassword@2.0.0", + "description": "Create a new password for sharing configuration of a recording.\n\n This tool is used to create a new password for the sharing configuration of a specific session recording. It should be called when there's a need to password-protect access to a session recording within a project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Use the /api/projects/ endpoint to find the project ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "recording_id", + "type": "string", + "required": false, + "description": "Unique identifier of the recording for which the sharing password is being created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recordings_sharing_passwords_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateRecordingSharePassword", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "recording_id": { + "value": "recording_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"password\":\"mySecurePassword123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateRoleInOrganization", + "qualifiedName": "PosthogApi.CreateRoleInOrganization", + "fullyQualifiedName": "PosthogApi.CreateRoleInOrganization@2.0.0", + "description": "Create a new role within an organization.\n\n Use this tool to add a new role to a specific organization. Appropriate when setting up roles for users within an organization.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "The unique identifier of the organization where the role will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'roles_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateRoleInOrganization", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Admin\", \"permissions\": [\"view\", \"edit\", \"delete\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateRoleMembership", + "qualifiedName": "PosthogApi.CreateRoleMembership", + "fullyQualifiedName": "PosthogApi.CreateRoleMembership@2.0.0", + "description": "Create a role membership in an organization.\n\n Use this tool to assign a user to a specific role within an organization in Datadog. This is useful for managing user permissions and access within your organization.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "The unique identifier for the organization in which the role membership is to be created. This is required to specify the targeted organization within Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "role_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the role to which the user will be assigned. It should be a string that matches the specific role in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'roles_role_memberships_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateRoleMembership", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_123456", + "type": "string", + "required": false + }, + "role_identifier": { + "value": "admin", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"user_id\":\"user_789012\",\"role\":\"admin\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSessionRecordingPlaylist", + "qualifiedName": "PosthogApi.CreateSessionRecordingPlaylist", + "fullyQualifiedName": "PosthogApi.CreateSessionRecordingPlaylist@2.0.0", + "description": "Create a new session recording playlist for an environment.\n\n Use this tool to create a session recording playlist within a specific environment by providing the required project ID. It logs views and tracks file system interactions with each GET request.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Provide the Project ID to access the specific project. You can retrieve the ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recording_playlists_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateSessionRecordingPlaylist", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"playlist_name\":\"User Journey Analysis\",\"description\":\"A collection of session recordings for user journey analysis.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSessionRecordingPlaylistEntry", + "qualifiedName": "PosthogApi.CreateSessionRecordingPlaylistEntry", + "fullyQualifiedName": "PosthogApi.CreateSessionRecordingPlaylistEntry@2.0.0", + "description": "Add a recording to a session playlist.\n\n This tool logs a session recording to a specified session recording playlist for tracking purposes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project to access. Obtain by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_id", + "type": "string", + "required": false, + "description": "The ID of the session recording to be added to the playlist. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_short_id", + "type": "string", + "required": false, + "description": "The short ID of the session recording to add to the playlist. It must be a valid string identifier. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recording_playlists_recordings_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateSessionRecordingPlaylistEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "session_recording_id": { + "value": "rec456", + "type": "string", + "required": false + }, + "session_recording_short_id": { + "value": "short789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Example Recording Playlist Entry\",\"description\":\"This is an example description for the recording.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSharingPassword", + "qualifiedName": "PosthogApi.CreateSharingPassword", + "fullyQualifiedName": "PosthogApi.CreateSharingPassword@2.0.0", + "description": "Create a new password for sharing configuration.\n\n Use this tool to create a new password for the sharing configuration of a specific insight within a project environment on Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "insight_identifier", + "type": "integer", + "required": false, + "description": "The unique integer ID of the insight for which you want to create a sharing password. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_sharing_passwords_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateSharingPassword", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "insight_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"password\": \"new_sharing_password_123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateStaticCohortCopy", + "qualifiedName": "PosthogApi.CreateStaticCohortCopy", + "fullyQualifiedName": "PosthogApi.CreateStaticCohortCopy@2.0.0", + "description": "Create a static copy of a dynamic cohort.\n\nThis tool should be called when you need to turn a dynamic cohort into a static one for a specified project. It duplicates the cohort, preserving its current state as a static cohort.", + "parameters": [ + { + "name": "cohort_identifier", + "type": "integer", + "required": true, + "description": "A unique integer identifying the dynamic cohort to be duplicated as a static cohort.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cohorts_duplicate_as_static_cohort_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateStaticCohortCopy", + "parameters": { + "cohort_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateStaticCohortForFeatureFlag", + "qualifiedName": "PosthogApi.CreateStaticCohortForFeatureFlag", + "fullyQualifiedName": "PosthogApi.CreateStaticCohortForFeatureFlag@2.0.0", + "description": "Create a static cohort for a specific feature flag.\n\n This tool is used to create a static cohort for a specified feature flag within a given project. Useful for managing user groups associated with feature flags in applications.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "feature_flag_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying the specific feature flag to create a static cohort for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access for creating a static cohort for the feature flag. Retrieve via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_create_static_cohort_for_flag_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateStaticCohortForFeatureFlag", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "feature_flag_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"cohort_name\":\"Beta Testers\",\"user_ids\":[1,2,3,4,5]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSurvey", + "qualifiedName": "PosthogApi.CreateSurvey", + "fullyQualifiedName": "PosthogApi.CreateSurvey@2.0.0", + "description": "Create a new survey for a project.\n\n Use this tool to initiate the creation of a new survey within a specified project. This tool should be called when you need to log a new survey for project tracking purposes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project for creating a survey. Retrieve this ID via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveys_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateSurvey", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Customer Feedback\", \"questions\": [{\"question\": \"How satisfied are you with our service?\", \"type\": \"rating\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSymbolSet", + "qualifiedName": "PosthogApi.CreateSymbolSet", + "fullyQualifiedName": "PosthogApi.CreateSymbolSet@2.0.0", + "description": "Create a new symbol set for error tracking in a project.\n\nThis tool is used to create a new symbol set for error tracking within a specified project in Datadog. It should be called when you want to add symbol sets to environments for better error tracking.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID needed to access the specific project for creating a symbol set. Obtainable via /api/projects/ call.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_symbol_sets_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateSymbolSet", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTaskRun", + "qualifiedName": "PosthogApi.CreateTaskRun", + "fullyQualifiedName": "PosthogApi.CreateTaskRun@2.0.0", + "description": "Create and manage execution of a specific task by ID.\n\n Use this tool to initiate a run for a specific task within a project on Datadog. It's useful for managing task executions when you need to automate or monitor tasks.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Use /api/projects/ to retrieve project IDs. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "string", + "required": false, + "description": "The identifier for the specific task to run within the project. Ensure it matches the correct task you intend to execute. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tasks_runs_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateTaskRun", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "task_id": { + "value": "task-67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"param1\": \"value1\", \"param2\": \"value2\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateUserInterviewEnvironment", + "qualifiedName": "PosthogApi.CreateUserInterviewEnvironment", + "fullyQualifiedName": "PosthogApi.CreateUserInterviewEnvironment@2.0.0", + "description": "Create a user interview environment in a project.\n\n This tool is used to create a new user interview environment within a specified project using Datadog's API. It should be called when there is a need to organize or set up an environment for conducting user interviews.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "access_project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access for creating a user interview environment. Use /api/projects/ endpoint to retrieve if unknown. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_user_interviews_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateUserInterviewEnvironment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "access_project_id": { + "value": "project_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"environment\":\"User Interview Environment A\",\"description\":\"A new environment for conducting user interviews.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateUserScenePersonalization", + "qualifiedName": "PosthogApi.CreateUserScenePersonalization", + "fullyQualifiedName": "PosthogApi.CreateUserScenePersonalization@2.0.0", + "description": "Create personalized scene settings for a user.\n\n This tool is used to create personalized scene settings for a user identified by their UUID. It should be called when there's a need to customize a user's interface or experience by setting specific scene preferences.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_uuid", + "type": "string", + "required": false, + "description": "The unique identifier for the user whose scene you want to personalize. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_scene_personalisation_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateUserScenePersonalization", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"theme\":\"dark\",\"layout\":\"grid\",\"font\":\"Arial\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWarehouseSavedQuery", + "qualifiedName": "PosthogApi.CreateWarehouseSavedQuery", + "fullyQualifiedName": "PosthogApi.CreateWarehouseSavedQuery@2.0.0", + "description": "Create a new warehouse saved query.\n\n Use this tool to create a new warehouse saved query within a specified environment. It facilitates the management of warehouse tables, allowing for efficient data handling and retrieval.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_saved_queries_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateWarehouseSavedQuery", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "1234-abcd-5678-efgh", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"query\":\"SELECT * FROM events WHERE timestamp > '2023-01-01'\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWarehouseTable", + "qualifiedName": "PosthogApi.CreateWarehouseTable", + "fullyQualifiedName": "PosthogApi.CreateWarehouseTable@2.0.0", + "description": "Create a new warehouse table for a specified environment.\n\n Use this tool to create a new warehouse table within a specified environment by providing the project ID. This is useful for setting up or expanding data storage in Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access for creating a warehouse table. Obtain it from /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_tables_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateWarehouseTable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"table_name\":\"user_data\",\"columns\":[{\"name\":\"user_id\",\"type\":\"string\"},{\"name\":\"event_count\",\"type\":\"integer\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWebExperiment", + "qualifiedName": "PosthogApi.CreateWebExperiment", + "fullyQualifiedName": "PosthogApi.CreateWebExperiment@2.0.0", + "description": "Create a web experiment for a project.\n\nUse this tool to create a new web experiment within a specified project on Datadog. Each invocation logs the creation of a new experiment.", + "parameters": [ + { + "name": "experiment_id", + "type": "integer", + "required": true, + "description": "Unique integer ID for the web experiment. Required for identifying the experiment within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "experiment_name", + "type": "string", + "required": true, + "description": "The name for the web experiment you want to create in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "feature_flag_key", + "type": "string", + "required": true, + "description": "Unique identifier for the feature flag associated with the web experiment.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "ID of the project for the web experiment. Obtain it via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "web_experiment_variants", + "type": "string", + "required": true, + "description": "JSON string defining the variants for the web experiment, including transforms, conditions, and rollout percentages.", + "enum": null, + "inferrable": true + }, + { + "name": "experiment_creation_date", + "type": "string", + "required": false, + "description": "The timestamp when the web experiment was created, in ISO 8601 format.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'web_experiments_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.CreateWebExperiment", + "parameters": { + "experiment_id": { + "value": 101, + "type": "integer", + "required": true + }, + "experiment_name": { + "value": "User Engagement Test", + "type": "string", + "required": true + }, + "feature_flag_key": { + "value": "user_engagement_experiment", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_123", + "type": "string", + "required": true + }, + "web_experiment_variants": { + "value": "{\"variants\": [{\"name\": \"control\", \"rollout_percentage\": 50}, {\"name\": \"variant_a\", \"rollout_percentage\": 25}, {\"name\": \"variant_b\", \"rollout_percentage\": 25}]}", + "type": "string", + "required": true + }, + "experiment_creation_date": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAnnotation", + "qualifiedName": "PosthogApi.DeleteAnnotation", + "fullyQualifiedName": "PosthogApi.DeleteAnnotation@2.0.0", + "description": "Mark an annotation as deleted in a project.\n\nUse this tool to mark an annotation as deleted by setting the \"deleted\" field to true in a specific project. This action uses a patch call rather than a hard delete.", + "parameters": [ + { + "name": "annotation_id", + "type": "integer", + "required": true, + "description": "A unique integer identifier for the annotation to be marked as deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_for_annotation", + "type": "string", + "required": true, + "description": "The ID of the project where the annotation should be marked as deleted. Use /api/projects/ to find the correct ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'annotations_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteAnnotation", + "parameters": { + "annotation_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id_for_annotation": { + "value": "project_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteBatchExport", + "qualifiedName": "PosthogApi.DeleteBatchExport", + "fullyQualifiedName": "PosthogApi.DeleteBatchExport@2.0.0", + "description": "Delete a batch export in a specific environment.\n\nUse this tool to delete a specific batch export for a given environment within a project on Datadog. This is useful when you need to manage or clean up batch exports.", + "parameters": [ + { + "name": "batch_export_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the batch export to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access for batch export deletion. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteBatchExport", + "parameters": { + "batch_export_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCollaboratorFromDashboard", + "qualifiedName": "PosthogApi.DeleteCollaboratorFromDashboard", + "fullyQualifiedName": "PosthogApi.DeleteCollaboratorFromDashboard@2.0.0", + "description": "Remove a collaborator from a specific dashboard.\n\nUse this tool to remove a specific collaborator from a dashboard within a project. It is useful when managing dashboard access and permissions.", + "parameters": [ + { + "name": "dashboard_id", + "type": "integer", + "required": true, + "description": "The unique identifier for the dashboard from which you want to remove the collaborator. It's required to specify which dashboard the action pertains to.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project for accessing the dashboard. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "user_uuid", + "type": "string", + "required": true, + "description": "The unique identifier of the user to be removed from the dashboard.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_collaborators_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteCollaboratorFromDashboard", + "parameters": { + "dashboard_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_abc123", + "type": "string", + "required": true + }, + "user_uuid": { + "value": "user_56789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDashboard", + "qualifiedName": "PosthogApi.DeleteDashboard", + "fullyQualifiedName": "PosthogApi.DeleteDashboard@2.0.0", + "description": "Mark a dashboard as deleted.\n\nUse this tool to set a specific dashboard as deleted for a project environment. This action is performed by patching the dashboard's status to \"deleted\" instead of a hard delete.", + "parameters": [ + { + "name": "dashboard_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the dashboard to be marked as deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access the desired project. Retrieve using /api/projects/ if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response. Options include 'json' and 'txt'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteDashboard", + "parameters": { + "dashboard_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDashboardSharingPassword", + "qualifiedName": "PosthogApi.DeleteDashboardSharingPassword", + "fullyQualifiedName": "PosthogApi.DeleteDashboardSharingPassword@2.0.0", + "description": "Delete a password from a dashboard's sharing configuration.\n\nUse this tool to remove a password from the sharing settings of a specific dashboard in a project environment. This operation is crucial when you want to update the security configurations or remove outdated credentials.", + "parameters": [ + { + "name": "dashboard_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier for the dashboard from which the password is to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "password_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the password to be deleted from the dashboard's sharing configuration. This is required to specify which password to remove.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the project. Retrieve by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_sharing_passwords_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteDashboardSharingPassword", + "parameters": { + "dashboard_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "password_identifier": { + "value": "abc123", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDashboardTemplate", + "qualifiedName": "PosthogApi.DeleteDashboardTemplate", + "fullyQualifiedName": "PosthogApi.DeleteDashboardTemplate@2.0.0", + "description": "Mark a Datadog dashboard template as deleted.\n\nThis tool marks a specified Datadog dashboard template as deleted, using a DELETE request to update its status. It's useful when you need to remove a dashboard template without hard deleting it from the Datadog system.", + "parameters": [ + { + "name": "dashboard_template_id", + "type": "string", + "required": true, + "description": "A UUID string uniquely identifying the Datadog dashboard template to be marked as deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The Project ID needed to access the specific project. Obtainable via the \"/api/projects/\" endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboard_templates_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteDashboardTemplate", + "parameters": { + "dashboard_template_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDataColorTheme", + "qualifiedName": "PosthogApi.DeleteDataColorTheme", + "fullyQualifiedName": "PosthogApi.DeleteDataColorTheme@2.0.0", + "description": "Delete a data color theme from a project.\n\nUse this tool to delete a specific data color theme from a given project in Datadog.", + "parameters": [ + { + "name": "data_color_theme_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the data color theme to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project containing the data color theme to delete. Retrieve this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'data_color_themes_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteDataColorTheme", + "parameters": { + "data_color_theme_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDataset", + "qualifiedName": "PosthogApi.DeleteDataset", + "fullyQualifiedName": "PosthogApi.DeleteDataset@2.0.0", + "description": "Delete a dataset by setting it to deleted status.\n\nUse this tool to mark a dataset as deleted by setting its \"deleted\" attribute to true. A hard delete is not supported, so this operation ensures the dataset is flagged as deleted in the system.", + "parameters": [ + { + "name": "dataset_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the dataset to be marked as deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project. Use /api/projects/ to find it.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_datasets_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteDataset", + "parameters": { + "dataset_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "my_project_001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDatasetById", + "qualifiedName": "PosthogApi.DeleteDatasetById", + "fullyQualifiedName": "PosthogApi.DeleteDatasetById@2.0.0", + "description": "Facilitates marking a dataset as deleted in a project.\n\nUse this tool to effectively mark a dataset as deleted within a project by utilizing a patch API call to set \"deleted\" to true, aligning with the Datadog API constraints.", + "parameters": [ + { + "name": "dataset_uuid", + "type": "string", + "required": true, + "description": "A UUID string that uniquely identifies the dataset to be marked as deleted within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Provide the Project ID for accessing the desired project. Use the /api/projects/ endpoint to locate the ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'datasets_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteDatasetById", + "parameters": { + "dataset_uuid": { + "value": "e7f3c7a3-60a8-4d9b-bc76-9d7d4ae3c65d", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDefaultEvaluationTags", + "qualifiedName": "PosthogApi.DeleteDefaultEvaluationTags", + "fullyQualifiedName": "PosthogApi.DeleteDefaultEvaluationTags@2.0.0", + "description": "Delete default evaluation tags for a project environment.\n\nUse this tool to remove default evaluation tags associated with a specified project environment. It's useful when tags need to be cleaned up or updated for project management.", + "parameters": [ + { + "name": "environment_identifier", + "type": "integer", + "required": true, + "description": "A unique integer identifying the environment (or team) for tag management.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Find this ID through a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_default_evaluation_tags_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteDefaultEvaluationTags", + "parameters": { + "environment_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDomain", + "qualifiedName": "PosthogApi.DeleteDomain", + "fullyQualifiedName": "PosthogApi.DeleteDomain@2.0.0", + "description": "Remove a domain from an organization.\n\nUse this tool to delete a domain from a specified organization in Datadog. It should be called when you need to remove an existing domain from the organization's configurations.", + "parameters": [ + { + "name": "domain_uuid", + "type": "string", + "required": true, + "description": "A UUID string that uniquely identifies the domain to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": true, + "description": "A string that uniquely identifies the organization from which the domain will be removed. This should be specified when calling the tool.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'domains_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteDomain", + "parameters": { + "domain_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "organization_identifier": { + "value": "org-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEnvironment", + "qualifiedName": "PosthogApi.DeleteEnvironment", + "fullyQualifiedName": "PosthogApi.DeleteEnvironment@2.0.0", + "description": "Delete a specific environment from a project.\n\nUse this tool to delete an environment from a specific project in the current organization. Call this tool when you need to remove an existing environment by specifying the project and environment IDs.", + "parameters": [ + { + "name": "environment_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the environment to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project you're trying to access. Find this by calling the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteEnvironment", + "parameters": { + "environment_id": { + "value": 123, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "proj_456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEnvironmentColorTheme", + "qualifiedName": "PosthogApi.DeleteEnvironmentColorTheme", + "fullyQualifiedName": "PosthogApi.DeleteEnvironmentColorTheme@2.0.0", + "description": "Delete a specific environment's color theme in Datadog.\n\nThis tool deletes a color theme from a specified environment in Datadog. It should be called when you need to remove a particular color theme from a project environment.", + "parameters": [ + { + "name": "data_color_theme_id", + "type": "integer", + "required": true, + "description": "A unique integer value used to identify the data color theme to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project for accessing its environment. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_data_color_themes_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteEnvironmentColorTheme", + "parameters": { + "data_color_theme_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEnvironmentDatasetItem", + "qualifiedName": "PosthogApi.DeleteEnvironmentDatasetItem", + "fullyQualifiedName": "PosthogApi.DeleteEnvironmentDatasetItem@2.0.0", + "description": "Marks a dataset item in an environment as deleted.\n\nThis tool is used to effectively remove a dataset item from an environment by marking it as deleted. It should be called when a permanent deletion is intended, following the API's restriction against hard deletion. The tool sets the 'deleted' attribute to true for the specified item.", + "parameters": [ + { + "name": "dataset_item_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the dataset item to mark as deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique Project ID for accessing the desired project. Retrieve by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dataset_items_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteEnvironmentDatasetItem", + "parameters": { + "dataset_item_id": { + "value": "a1b2c3d4-e5f6-7g8h-9i0j-k1l2m3n4o5p6", + "type": "string", + "required": true + }, + "project_id": { + "value": "p1q2r3s4-t5u6-v7w8-x9y0-z1a2b3c4d5e6", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEnvironmentGroupProperty", + "qualifiedName": "PosthogApi.DeleteEnvironmentGroupProperty", + "fullyQualifiedName": "PosthogApi.DeleteEnvironmentGroupProperty@2.0.0", + "description": "Deletes a property from an environment group.\n\nThis tool is used to delete a specific property from an environment group in a project. It should be called when you need to remove such properties from environment groups within Datadog.", + "parameters": [ + { + "name": "creation_date", + "type": "string", + "required": true, + "description": "The date when the property was created, in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_group_type_index", + "type": "integer", + "required": true, + "description": "An integer representing the group type index to identify the environment group.", + "enum": null, + "inferrable": true + }, + { + "name": "group_key", + "type": "string", + "required": true, + "description": "Specify the key of the environment group you want to target for property deletion.", + "enum": null, + "inferrable": true + }, + { + "name": "group_key_for_deletion", + "type": "string", + "required": true, + "description": "The key of the property to delete from the environment group.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_index", + "type": "integer", + "required": true, + "description": "Specify the group type index to identify which group to delete the property from. This should be an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "group_properties_to_delete", + "type": "string", + "required": false, + "description": "A comma-separated list of property names you want to delete from the environment group.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_groups_delete_property_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteEnvironmentGroupProperty", + "parameters": { + "creation_date": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": true + }, + "environment_group_type_index": { + "value": 1, + "type": "integer", + "required": true + }, + "group_key": { + "value": "production", + "type": "string", + "required": true + }, + "group_key_for_deletion": { + "value": "deprecated_property", + "type": "string", + "required": true + }, + "group_type_index": { + "value": 2, + "type": "integer", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "group_properties_to_delete": { + "value": "old_prop1,old_prop2", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEnvironmentInsight", + "qualifiedName": "PosthogApi.DeleteEnvironmentInsight", + "fullyQualifiedName": "PosthogApi.DeleteEnvironmentInsight@2.0.0", + "description": "Marks an environment insight as deleted.\n\nUse this tool to mark an environment insight as deleted by setting its 'deleted' status to true. This action does not hard delete the record, but flags it as deleted.", + "parameters": [ + { + "name": "insight_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the environment insight to be marked as deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identification", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the response format for the deletion confirmation, either 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteEnvironmentInsight", + "parameters": { + "insight_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identification": { + "value": "project_67890", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEnvironmentIntegration", + "qualifiedName": "PosthogApi.DeleteEnvironmentIntegration", + "fullyQualifiedName": "PosthogApi.DeleteEnvironmentIntegration@2.0.0", + "description": "Delete an integration from a project environment.\n\nUse this tool to delete a specific integration from a project environment in Datadog. Trigger it when an integration needs to be removed from a given project environment.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer representing the integration to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project. Use an API call to /api/projects/ to retrieve this if unknown.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteEnvironmentIntegration", + "parameters": { + "integration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project-xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEnvironmentQuery", + "qualifiedName": "PosthogApi.DeleteEnvironmentQuery", + "fullyQualifiedName": "PosthogApi.DeleteEnvironmentQuery@2.0.0", + "description": "Delete a specific query environment.\n\nUse this tool to delete a query environment by specifying the project and query IDs. This action is experimental.", + "parameters": [ + { + "name": "project_id_access", + "type": "string", + "required": true, + "description": "Specify the Project ID of the project you want to access. Obtain the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "query_id", + "type": "string", + "required": true, + "description": "The unique ID of the environment query to be deleted. This is necessary to specify which query environment should be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_query_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteEnvironmentQuery", + "parameters": { + "project_id_access": { + "value": "12345", + "type": "string", + "required": true + }, + "query_id": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEnvironmentSubscription", + "qualifiedName": "PosthogApi.DeleteEnvironmentSubscription", + "fullyQualifiedName": "PosthogApi.DeleteEnvironmentSubscription@2.0.0", + "description": "Marks an environment subscription as deleted in Datadog.\n\nUse this tool to mark an environment subscription as deleted by setting its status to \"deleted.\" This does not perform a hard delete.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project for accessing its environment subscription. Obtain via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the subscription to be marked as deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_subscriptions_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteEnvironmentSubscription", + "parameters": { + "project_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "subscription_id": { + "value": 456, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEnvSecretTokenBackup", + "qualifiedName": "PosthogApi.DeleteEnvSecretTokenBackup", + "fullyQualifiedName": "PosthogApi.DeleteEnvSecretTokenBackup@2.0.0", + "description": "Deletes a secret token backup in a project environment.\n\n Use this tool to delete a secret token backup for a specified project environment in Datadog. It should be called when needing to manage secret backups within a project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "environment_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the environment (aka team) to target for deletion. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The Project ID to access for managing secret token backups. Retrieve IDs via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_delete_secret_token_backup_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteEnvSecretTokenBackup", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "environment_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project-456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"token\":\"sample-token-to-delete\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteErrorFingerprint", + "qualifiedName": "PosthogApi.DeleteErrorFingerprint", + "fullyQualifiedName": "PosthogApi.DeleteErrorFingerprint@2.0.0", + "description": "Mark an error fingerprint as deleted in Datadog.\n\nUse this tool to mark an error fingerprint as deleted in a specified Datadog project environment. This does not perform a hard delete but sets the fingerprint's status to 'deleted' using a DELETE request.", + "parameters": [ + { + "name": "error_fingerprint_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific error tracking issue fingerprint to be marked as deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "posthog_project_id", + "type": "string", + "required": true, + "description": "The ID of the Datadog project you want to modify. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_fingerprints_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteErrorFingerprint", + "parameters": { + "error_fingerprint_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "posthog_project_id": { + "value": "project-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteErrorTrackingRelease", + "qualifiedName": "PosthogApi.DeleteErrorTrackingRelease", + "fullyQualifiedName": "PosthogApi.DeleteErrorTrackingRelease@2.0.0", + "description": "Deletes a specific error tracking release from a project environment.\n\nThis tool deletes a specific error tracking release identified by its ID from a given project environment in Datadog. It should be called when there is a need to permanently remove a release from error tracking records.", + "parameters": [ + { + "name": "error_tracking_release_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the error tracking release to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project being accessed. Use `/api/projects/` to find the ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_releases_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteErrorTrackingRelease", + "parameters": { + "error_tracking_release_id": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteErrorTrackingRule", + "qualifiedName": "PosthogApi.DeleteErrorTrackingRule", + "fullyQualifiedName": "PosthogApi.DeleteErrorTrackingRule@2.0.0", + "description": "Deletes a specified error tracking assignment rule.\n\nUse this tool to delete a specific error tracking assignment rule within a Datadog environment by providing the project and rule IDs.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_id", + "type": "string", + "required": true, + "description": "The UUID of the error tracking assignment rule to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_assignment_rules_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteErrorTrackingRule", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + }, + "rule_id": { + "value": "abcde123-4567-890a-bcde-fghijklmno12", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEvaluation", + "qualifiedName": "PosthogApi.DeleteEvaluation", + "fullyQualifiedName": "PosthogApi.DeleteEvaluation@2.0.0", + "description": "Marks an evaluation as deleted in the environment.\n\nUse this tool to mark a specific evaluation as deleted in a Datadog environment by setting the \"deleted\" flag to true. This is useful for managing evaluation records without permanent deletion.", + "parameters": [ + { + "name": "evaluation_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the evaluation to be marked as deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access in Datadog. Retrieve it via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_evaluations_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteEvaluation", + "parameters": { + "evaluation_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEventDefinition", + "qualifiedName": "PosthogApi.DeleteEventDefinition", + "fullyQualifiedName": "PosthogApi.DeleteEventDefinition@2.0.0", + "description": "Delete an event definition by ID and project.\n\nThis tool deletes a specific event definition within a given project based on the provided IDs. It should be called when you need to permanently remove an event definition from a project.", + "parameters": [ + { + "name": "event_definition_id", + "type": "string", + "required": true, + "description": "A UUID string that uniquely identifies the event definition to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID of the target project. Retrieve this ID via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'event_definitions_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteEventDefinition", + "parameters": { + "event_definition_id": { + "value": "a9f4ed57-b5d5-4de0-a97e-6cffe3067a3e", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteExperiment", + "qualifiedName": "PosthogApi.DeleteExperiment", + "fullyQualifiedName": "PosthogApi.DeleteExperiment@2.0.0", + "description": "Delete an experiment by setting it as deleted.\n\nThis tool is used to mark an experiment as deleted in a project. Hard deletion is not allowed, so this tool performs a soft delete by setting the experiment's \"deleted\" status to true.", + "parameters": [ + { + "name": "experiment_id", + "type": "integer", + "required": true, + "description": "A unique integer value used to identify the experiment to be marked as deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project containing the experiment to be deleted. Obtainable via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiments_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteExperiment", + "parameters": { + "experiment_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteExperimentHoldout", + "qualifiedName": "PosthogApi.DeleteExperimentHoldout", + "fullyQualifiedName": "PosthogApi.DeleteExperimentHoldout@2.0.0", + "description": "Delete an experiment holdout from a project.\n\nUse this tool to delete a specific experiment holdout from a given project in Datadog. This can be useful when you need to manage or update experiments and wish to remove outdated or unnecessary holdouts.", + "parameters": [ + { + "name": "experiment_holdout_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the experiment holdout to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project from which to delete the experiment holdout. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiment_holdouts_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteExperimentHoldout", + "parameters": { + "experiment_holdout_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_78910", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteFileSystem", + "qualifiedName": "PosthogApi.DeleteFileSystem", + "fullyQualifiedName": "PosthogApi.DeleteFileSystem@2.0.0", + "description": "Delete a specified file system in a project.\n\nUse this tool to delete a specific file system within a project by providing the project and file system IDs.", + "parameters": [ + { + "name": "file_system_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the file system to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Provide the Project ID of the project you're trying to access. Retrieve the ID with a /api/projects/ call.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteFileSystem", + "parameters": { + "file_system_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_id": { + "value": "987e6543-e21b-32d3-a456-426614174999", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteFilesystemEnvironment", + "qualifiedName": "PosthogApi.DeleteFilesystemEnvironment", + "fullyQualifiedName": "PosthogApi.DeleteFilesystemEnvironment@2.0.0", + "description": "Deletes a file system in the specified environment.\n\nUse this tool to delete a file system within a given environment by specifying the project and file system IDs. This action is irreversible and should be used when you want to remove unwanted or obsolete file systems.", + "parameters": [ + { + "name": "filesystem_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the file system to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The Project ID of the specific environment. Obtainable through /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteFilesystemEnvironment", + "parameters": { + "filesystem_id": { + "value": "d2a663e8-b9a1-4c0f-9d0b-5b67068f0318", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteFileSystemShortcut", + "qualifiedName": "PosthogApi.DeleteFileSystemShortcut", + "fullyQualifiedName": "PosthogApi.DeleteFileSystemShortcut@2.0.0", + "description": "Deletes a file system shortcut in an environment.\n\nUse this tool to delete a specified file system shortcut within a given project environment. It is called when a shortcut needs to be removed from the environment.", + "parameters": [ + { + "name": "file_system_shortcut_id", + "type": "string", + "required": true, + "description": "The UUID string that uniquely identifies the file system shortcut to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project you wish to access. Retrieve this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_shortcut_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteFileSystemShortcut", + "parameters": { + "file_system_shortcut_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "my_project_123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteGroupProperty", + "qualifiedName": "PosthogApi.DeleteGroupProperty", + "fullyQualifiedName": "PosthogApi.DeleteGroupProperty@2.0.0", + "description": "Delete a group property in a Datadog project.\n\nThis tool deletes a property from a group within a specified Datadog project. It should be used when there's a need to remove specific properties from groups in the context of project management within Datadog.", + "parameters": [ + { + "name": "group_identifier_key", + "type": "string", + "required": true, + "description": "The unique identifier key of the group from which the property will be deleted. This is required to specify the exact group within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "group_index_type", + "type": "integer", + "required": true, + "description": "An integer representing the index of the group type to delete a property from.", + "enum": null, + "inferrable": true + }, + { + "name": "group_key_for_deletion", + "type": "string", + "required": true, + "description": "The unique key identifying the group from which the property will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_index", + "type": "integer", + "required": true, + "description": "An integer specifying the group type to find within a project for property deletion.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the Datadog project for accessing and managing group properties. To find this ID, make a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "property_creation_date", + "type": "string", + "required": true, + "description": "The timestamp when the group property was created. Use ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ).", + "enum": null, + "inferrable": true + }, + { + "name": "group_property_key", + "type": "string", + "required": false, + "description": "The key of the group property to be deleted from the Datadog project.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_delete_property_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteGroupProperty", + "parameters": { + "group_identifier_key": { + "value": "user_team_1234", + "type": "string", + "required": true + }, + "group_index_type": { + "value": 2, + "type": "integer", + "required": true + }, + "group_key_for_deletion": { + "value": "team_leads", + "type": "string", + "required": true + }, + "group_type_index": { + "value": 1, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_5678", + "type": "string", + "required": true + }, + "property_creation_date": { + "value": "2023-10-05T14:30:00Z", + "type": "string", + "required": true + }, + "group_property_key": { + "value": "property_to_remove", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteGroupType", + "qualifiedName": "PosthogApi.DeleteGroupType", + "fullyQualifiedName": "PosthogApi.DeleteGroupType@2.0.0", + "description": "Delete a specified group type in a project.\n\nUse this tool to remove a group type from a specified project. This is useful when a group type is no longer needed or needs to be reconfigured.", + "parameters": [ + { + "name": "group_type_index", + "type": "integer", + "required": true, + "description": "Index of the group type to be deleted. Use an integer value to specify the group type.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Obtain this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_types_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteGroupType", + "parameters": { + "group_type_index": { + "value": 2, + "type": "integer", + "required": true + }, + "project_id": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteGroupTypeMetric", + "qualifiedName": "PosthogApi.DeleteGroupTypeMetric", + "fullyQualifiedName": "PosthogApi.DeleteGroupTypeMetric@2.0.0", + "description": "Delete a specific metric from a group type.\n\nUse this tool to delete a specific metric from a group type within a project. Ideal for removing unused or incorrect metrics.", + "parameters": [ + { + "name": "group_type_index", + "type": "integer", + "required": true, + "description": "An integer representing the position of the group type in the list. Specify the exact index to delete the associated metric.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the metric to be deleted from the group type.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve it via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_types_metrics_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteGroupTypeMetric", + "parameters": { + "group_type_index": { + "value": 2, + "type": "integer", + "required": true + }, + "metric_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_id": { + "value": "project-9876", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteHogFunction", + "qualifiedName": "PosthogApi.DeleteHogFunction", + "fullyQualifiedName": "PosthogApi.DeleteHogFunction@2.0.0", + "description": "Marks a hog function as deleted in a project.\n\nUse this tool to mark a hog function as deleted by setting its \"deleted\" flag to true for a specific project environment.", + "parameters": [ + { + "name": "hog_function_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific hog function to mark as deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access. To find it, make a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_hog_functions_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteHogFunction", + "parameters": { + "hog_function_id": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteInsight", + "qualifiedName": "PosthogApi.DeleteInsight", + "fullyQualifiedName": "PosthogApi.DeleteInsight@2.0.0", + "description": "Marks an insight as deleted in a project.\n\nUse this tool to mark an insight within a project as deleted. This operation does not hard delete the insight but flags it as deleted.", + "parameters": [ + { + "name": "insight_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the insight to be marked as deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access and mark an insight as deleted. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response data. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteInsight", + "parameters": { + "insight_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project-98765", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteInsightSharingPassword", + "qualifiedName": "PosthogApi.DeleteInsightSharingPassword", + "fullyQualifiedName": "PosthogApi.DeleteInsightSharingPassword@2.0.0", + "description": "Delete a password from an insight's sharing configuration.\n\nUse this tool to delete a password associated with an insight's sharing configuration in a specific environment. This is useful for managing access to shared insights by ensuring only the desired passwords remain active.", + "parameters": [ + { + "name": "insight_identifier", + "type": "integer", + "required": true, + "description": "The unique integer ID of the insight whose sharing password you want to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "password_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the password to be deleted from the sharing configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project you wish to access. Obtain this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_sharing_passwords_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteInsightSharingPassword", + "parameters": { + "insight_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "password_identifier": { + "value": "abc123password", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteIntegration", + "qualifiedName": "PosthogApi.DeleteIntegration", + "fullyQualifiedName": "PosthogApi.DeleteIntegration@2.0.0", + "description": "Delete an existing integration for a project.\n\nUse this tool to remove a specific integration from a project by providing the project and integration identifiers.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "The unique integer used to identify the specific integration to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The Project ID needed to access the project. Retrieve it by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteIntegration", + "parameters": { + "integration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteNotebook", + "qualifiedName": "PosthogApi.DeleteNotebook", + "fullyQualifiedName": "PosthogApi.DeleteNotebook@2.0.0", + "description": "Deletes a specific notebook by marking it as deleted.\n\nUse this tool to mark a notebook as deleted by its project and notebook ID. It doesn't perform a hard delete but updates the status to deleted.", + "parameters": [ + { + "name": "notebook_short_id", + "type": "string", + "required": true, + "description": "The short ID of the notebook to mark as deleted. This ID uniquely identifies the notebook within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'notebooks_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteNotebook", + "parameters": { + "notebook_short_id": { + "value": "notebook-1234", + "type": "string", + "required": true + }, + "project_id": { + "value": "project-5678", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteOrganization", + "qualifiedName": "PosthogApi.DeleteOrganization", + "fullyQualifiedName": "PosthogApi.DeleteOrganization@2.0.0", + "description": "Delete an organization from Datadog.\n\nUse this tool to delete an organization by its ID from Datadog. This action is irreversible, and all data associated with the organization will be removed.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "A UUID string to identify the organization to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteOrganization", + "parameters": { + "organization_id": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeletePasswordFromSharingConfig", + "qualifiedName": "PosthogApi.DeletePasswordFromSharingConfig", + "fullyQualifiedName": "PosthogApi.DeletePasswordFromSharingConfig@2.0.0", + "description": "Delete a password from the sharing configuration of an insight.\n\nUse this tool to delete a specific password associated with a sharing configuration in Datadog insights. It should be called when you need to remove access control via password on shared insights.", + "parameters": [ + { + "name": "insight_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier for the insight from which the password is being deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve it via the /api/projects endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "sharing_password_id", + "type": "string", + "required": true, + "description": "The unique ID of the password to be deleted from the sharing configuration.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_sharing_passwords_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeletePasswordFromSharingConfig", + "parameters": { + "insight_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project_67890", + "type": "string", + "required": true + }, + "sharing_password_id": { + "value": "password_abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeletePersistedFolder", + "qualifiedName": "PosthogApi.DeletePersistedFolder", + "fullyQualifiedName": "PosthogApi.DeletePersistedFolder@2.0.0", + "description": "Delete a persisted folder from a project environment.\n\nThis tool deletes a specified persisted folder within a project environment in Datadog. It should be called when a user wants to permanently remove a stored folder by specifying the project and folder IDs.", + "parameters": [ + { + "name": "persisted_folder_uuid", + "type": "string", + "required": true, + "description": "A UUID identifying the persisted folder to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project where the folder resides. Retrieve this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persisted_folder_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeletePersistedFolder", + "parameters": { + "persisted_folder_uuid": { + "value": "d7a3a50e-2edd-4c3b-bc2b-d70b29a4ec2e", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeletePerson", + "qualifiedName": "PosthogApi.DeletePerson", + "fullyQualifiedName": "PosthogApi.DeletePerson@2.0.0", + "description": "Delete an individual person from a project.\n\nThis tool deletes a specific person from a given project. Use it when you need to remove an individual person. For deleting multiple persons at once, consider using a bulk deletion method.", + "parameters": [ + { + "name": "person_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the person to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "delete_events", + "type": "boolean", + "required": false, + "description": "Set to true to create a task to delete all events associated with this person, batched and executed at 5AM UTC every Sunday.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response data. Choose between 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeletePerson", + "parameters": { + "person_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": true + }, + "delete_events": { + "value": true, + "type": "boolean", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeletePersonProperty", + "qualifiedName": "PosthogApi.DeletePersonProperty", + "fullyQualifiedName": "PosthogApi.DeletePersonProperty@2.0.0", + "description": "Deletes a specific property from a person.\n\n Use this tool to remove a property from a user in a specified project environment. It is designed for deleting attributes associated with a person. For creating or updating person properties, refer to the capture API.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "property_key_to_delete", + "type": "string", + "required": false, + "description": "Specify the property key of the person to delete. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "person_identifier", + "type": "integer", + "required": false, + "description": "A unique integer identifier for the person whose property is to be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Use /api/projects/ to retrieve this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response. Options are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_delete_property_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeletePersonProperty", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "property_key_to_delete": { + "value": "email", + "type": "string", + "required": false + }, + "person_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"propertyKey\": \"email\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeletePersonRecord", + "qualifiedName": "PosthogApi.DeletePersonRecord", + "fullyQualifiedName": "PosthogApi.DeletePersonRecord@2.0.0", + "description": "Deletes an individual person record from a project.\n\nUse this tool to delete a specific person record from a project's environment. It is intended for individual deletions; for bulk actions, a different endpoint should be used.", + "parameters": [ + { + "name": "person_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the person to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "delete_events_task", + "type": "boolean", + "required": false, + "description": "If true, a task to delete all events associated with this person is created and queued, running every Sunday at 5 AM UTC.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response, either 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeletePersonRecord", + "parameters": { + "person_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "abc-123", + "type": "string", + "required": true + }, + "delete_events_task": { + "value": true, + "type": "boolean", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeletePersonRecordings", + "qualifiedName": "PosthogApi.DeletePersonRecordings", + "fullyQualifiedName": "PosthogApi.DeletePersonRecordings@2.0.0", + "description": "Queue deletion of all recordings associated with a person.\n\n Use this tool to queue the deletion of all recordings related to a specific person in a project environment. This is useful when recordings need to be removed in batch for compliance or cleanup purposes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "person_id", + "type": "integer", + "required": false, + "description": "A unique integer identifier for the person whose recordings should be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project for which you want to queue recording deletions. Obtainable via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format for the response, either 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_delete_recordings_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeletePersonRecordings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "person_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "proj_67890", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\": \"delete\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteProject", + "qualifiedName": "PosthogApi.DeleteProject", + "fullyQualifiedName": "PosthogApi.DeleteProject@2.0.0", + "description": "Deletes a project from the current organization.\n\nUse this tool to delete a specific project within the current organization. Ensure you have the correct organization and project IDs before calling this tool.", + "parameters": [ + { + "name": "organization_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the organization from which the project is to be deleted. Ensure this ID is correct to prevent errors.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the project to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'destroy_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteProject", + "parameters": { + "organization_identifier": { + "value": "org_123456", + "type": "string", + "required": true + }, + "project_id": { + "value": 42, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteProjectQuery", + "qualifiedName": "PosthogApi.DeleteProjectQuery", + "fullyQualifiedName": "PosthogApi.DeleteProjectQuery@2.0.0", + "description": "Delete a specific project query.\n\nUse this tool to delete a specific query within a project on Datadog. The operation is experimental and involves providing the project and query IDs.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "ID of the project you want to access. Retrieve it via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "query_id", + "type": "string", + "required": true, + "description": "The unique identifier for the query to be deleted within the project.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'query_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteProjectQuery", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "query_id": { + "value": "abcd-1234-efgh-5678", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteProjectTask", + "qualifiedName": "PosthogApi.DeleteProjectTask", + "fullyQualifiedName": "PosthogApi.DeleteProjectTask@2.0.0", + "description": "Delete a specific task within a project.\n\nUsed to remove a task from a project in cases where it is no longer needed or was created in error. This tool should be called when needing to manage or clean up tasks within a project.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID of the target project. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "task_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific task to delete within a project.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tasks_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteProjectTask", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "task_uuid": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeletePropertyDefinition", + "qualifiedName": "PosthogApi.DeletePropertyDefinition", + "fullyQualifiedName": "PosthogApi.DeletePropertyDefinition@2.0.0", + "description": "Delete a property definition from a project.\n\nThis tool deletes a specific property definition from a given project in Datadog. It should be called when a property definition is no longer needed or requires removal.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve it via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "property_definition_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the property definition to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'property_definitions_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeletePropertyDefinition", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "property_definition_id": { + "value": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteProxyRecord", + "qualifiedName": "PosthogApi.DeleteProxyRecord", + "fullyQualifiedName": "PosthogApi.DeleteProxyRecord@2.0.0", + "description": "Deletes a proxy record for an organization.\n\nUse this tool to delete a specific proxy record within an organization in Datadog. It should be called when a record is no longer needed or requires removal.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization from which the proxy record will be deleted. This is required to specify the target organization.", + "enum": null, + "inferrable": true + }, + { + "name": "proxy_record_id", + "type": "string", + "required": true, + "description": "The unique identifier of the proxy record to be deleted. Required for deletion.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'proxy_records_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteProxyRecord", + "parameters": { + "organization_id": { + "value": "org-12345", + "type": "string", + "required": true + }, + "proxy_record_id": { + "value": "proxy-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteRoleInOrganization", + "qualifiedName": "PosthogApi.DeleteRoleInOrganization", + "fullyQualifiedName": "PosthogApi.DeleteRoleInOrganization@2.0.0", + "description": "Delete a specific role within an organization.\n\nUse this tool to delete a role from an organization by providing the organization ID and role ID.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization from which the role will be deleted. This should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "role_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the role to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'roles_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteRoleInOrganization", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "role_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSavedMetric", + "qualifiedName": "PosthogApi.DeleteSavedMetric", + "fullyQualifiedName": "PosthogApi.DeleteSavedMetric@2.0.0", + "description": "Deletes a saved experimental metric.\n\nUse this tool to delete an experimental saved metric from a specific project. It ensures that the specified metric entry is fully removed.", + "parameters": [ + { + "name": "experiment_metric_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the experiment saved metric to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project containing the saved metric to delete. Obtainable via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiment_saved_metrics_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteSavedMetric", + "parameters": { + "experiment_metric_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSavedQuery", + "qualifiedName": "PosthogApi.DeleteSavedQuery", + "fullyQualifiedName": "PosthogApi.DeleteSavedQuery@2.0.0", + "description": "Delete a saved query from the warehouse.\n\nUse this tool to delete a specific saved query from the data warehouse based on project and query IDs. It is called when removing a saved query is necessary.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve it with a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "saved_query_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the data warehouse saved query to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_saved_queries_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteSavedQuery", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "saved_query_uuid": { + "value": "a0eebd60-7d3c-4cb2-bc5f-d21cfbc3e108", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSecretTokenBackup", + "qualifiedName": "PosthogApi.DeleteSecretTokenBackup", + "fullyQualifiedName": "PosthogApi.DeleteSecretTokenBackup@2.0.0", + "description": "Deletes a secret token backup for a specified project.\n\n Call this tool to delete a secret token backup from a specific project within an organization. Use when you need to remove sensitive backup data to maintain security.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": false, + "description": "The unique ID of the project whose secret token backup is to be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "A unique identifier for the organization. This is required to specify which organization's project the secret token backup belongs to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete_secret_token_backup_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteSecretTokenBackup", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "organization_id": { + "value": "org-67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"confirm\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSessionRecording2", + "qualifiedName": "PosthogApi.DeleteSessionRecording2", + "fullyQualifiedName": "PosthogApi.DeleteSessionRecording2@2.0.0", + "description": "Delete a session recording from a playlist in a project.\n\nUse this tool to permanently delete a specific session recording from a designated playlist within a project. Ideal for managing and cleaning up session data.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_id", + "type": "string", + "required": true, + "description": "The unique identifier for the session recording to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_short_id", + "type": "string", + "required": true, + "description": "The unique short ID of the session recording to delete from the playlist.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recording_playlists_recordings_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteSessionRecording2", + "parameters": { + "project_id": { + "value": "1234-abcd-5678-efgh", + "type": "string", + "required": true + }, + "session_recording_id": { + "value": "rec-0011223344", + "type": "string", + "required": true + }, + "session_recording_short_id": { + "value": "short-112233", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSessionRecording", + "qualifiedName": "PosthogApi.DeleteSessionRecording", + "fullyQualifiedName": "PosthogApi.DeleteSessionRecording@2.0.0", + "description": "Deletes a session recording from a playlist.\n\nUse this tool to remove a specific session recording from a playlist by providing the relevant IDs. This action is irreversible and should be used to manage or clean up recordings.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to find it.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the session recording to be deleted. This ID is required to specify which recording to remove from the playlist.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_short_id", + "type": "string", + "required": true, + "description": "The short ID of the session recording to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recording_playlists_recordings_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteSessionRecording", + "parameters": { + "project_id": { + "value": "1234abcd", + "type": "string", + "required": true + }, + "session_recording_identifier": { + "value": "session_5678efgh", + "type": "string", + "required": true + }, + "session_recording_short_id": { + "value": "short_90ijkl", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSessionRecordingPlaylist", + "qualifiedName": "PosthogApi.DeleteSessionRecordingPlaylist", + "fullyQualifiedName": "PosthogApi.DeleteSessionRecordingPlaylist@2.0.0", + "description": "Mark a session recording playlist as deleted.\n\nUse this tool to mark a session recording playlist as deleted by setting its \"deleted\" status to true. This operation is non-reversible through a hard delete action, but effectively removes access to the playlist.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_playlist_short_id", + "type": "string", + "required": true, + "description": "The short ID of the session recording playlist to mark as deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recording_playlists_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteSessionRecordingPlaylist", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + }, + "session_recording_playlist_short_id": { + "value": "abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSharingPassword", + "qualifiedName": "PosthogApi.DeleteSharingPassword", + "fullyQualifiedName": "PosthogApi.DeleteSharingPassword@2.0.0", + "description": "Delete a password from the sharing configuration.\n\nUse this tool to delete a specific password from the session recording sharing configuration in a particular project environment.", + "parameters": [ + { + "name": "password_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the password to be deleted from the sharing configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "recording_id", + "type": "string", + "required": true, + "description": "The ID of the recording from which the password is to be deleted. This identifies the specific session recording.", + "enum": null, + "inferrable": true + }, + { + "name": "target_project_id", + "type": "string", + "required": true, + "description": "The ID of the project from which to delete the password. Obtain this ID via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recordings_sharing_passwords_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteSharingPassword", + "parameters": { + "password_identifier": { + "value": "abcd1234", + "type": "string", + "required": true + }, + "recording_id": { + "value": "recording5678", + "type": "string", + "required": true + }, + "target_project_id": { + "value": "project91011", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSurvey", + "qualifiedName": "PosthogApi.DeleteSurvey", + "fullyQualifiedName": "PosthogApi.DeleteSurvey@2.0.0", + "description": "Delete a survey from a specific project.\n\nUse this tool to delete a survey from a particular project in Datadog. This action is irreversible, so it should be called when a survey is no longer needed.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project containing the survey to delete. Obtainable via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "survey_uuid", + "type": "string", + "required": true, + "description": "A UUID string that uniquely identifies the survey to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveys_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteSurvey", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "survey_uuid": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSymbolSet", + "qualifiedName": "PosthogApi.DeleteSymbolSet", + "fullyQualifiedName": "PosthogApi.DeleteSymbolSet@2.0.0", + "description": "Deletes an error tracking symbol set by ID.\n\nUse this tool to delete a specific error tracking symbol set for a project by providing the project and symbol set IDs.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use the /api/projects/ endpoint to find this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "symbol_set_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the error tracking symbol set to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_symbol_sets_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteSymbolSet", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "symbol_set_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteUserAccount", + "qualifiedName": "PosthogApi.DeleteUserAccount", + "fullyQualifiedName": "PosthogApi.DeleteUserAccount@2.0.0", + "description": "Deletes a user account from the system.\n\nThis tool deletes a user account identified by a UUID. It should be called when there is a need to permanently remove a user profile from the system.", + "parameters": [ + { + "name": "user_uuid", + "type": "string", + "required": true, + "description": "The UUID of the user account to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteUserAccount", + "parameters": { + "user_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteUserInterview", + "qualifiedName": "PosthogApi.DeleteUserInterview", + "fullyQualifiedName": "PosthogApi.DeleteUserInterview@2.0.0", + "description": "Delete a user interview from an environment.\n\nUse this tool to delete a specific user interview from an environment in Datadog by providing the project and interview IDs.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project for accessing the specific user interview. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "user_interview_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the user interview to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_user_interviews_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteUserInterview", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "user_interview_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteWarehouseSavedQuery", + "qualifiedName": "PosthogApi.DeleteWarehouseSavedQuery", + "fullyQualifiedName": "PosthogApi.DeleteWarehouseSavedQuery@2.0.0", + "description": "Deletes a specified warehouse saved query.\n\nUse this tool to delete a specific saved query in a warehouse project. It should be called when you need to permanently remove a saved query by providing its ID and the project ID.", + "parameters": [ + { + "name": "project_id_to_access", + "type": "string", + "required": true, + "description": "Provide the Project ID for the warehouse project. Obtain the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "saved_query_uuid", + "type": "string", + "required": true, + "description": "A UUID string that uniquely identifies the data warehouse saved query to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_saved_queries_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteWarehouseSavedQuery", + "parameters": { + "project_id_to_access": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "saved_query_uuid": { + "value": "e77e7c8b-b413-4e8d-bc81-19405335ebf0", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteWarehouseTable", + "qualifiedName": "PosthogApi.DeleteWarehouseTable", + "fullyQualifiedName": "PosthogApi.DeleteWarehouseTable@2.0.0", + "description": "Delete a specific warehouse table in a project.\n\nUse this tool to delete a specific warehouse table identified by its ID within a given project. Ideal for managing and cleaning up warehouse resources.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project containing the warehouse table to delete. Use /api/projects/ to obtain IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "warehouse_table_id", + "type": "string", + "required": true, + "description": "A UUID string that uniquely identifies the data warehouse table to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_tables_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteWarehouseTable", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "warehouse_table_id": { + "value": "cda8c2e6-efc9-4f0f-a3b4-1f476b16a5ad", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteWebExperiment", + "qualifiedName": "PosthogApi.DeleteWebExperiment", + "fullyQualifiedName": "PosthogApi.DeleteWebExperiment@2.0.0", + "description": "Delete a web experiment from a specific project.\n\nUse this tool to remove a web experiment by specifying the project and experiment IDs. It allows for the permanent deletion of the experiment from the system.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project from which you want to delete the web experiment. Obtainable via the /api/projects/ call.", + "enum": null, + "inferrable": true + }, + { + "name": "web_experiment_id", + "type": "integer", + "required": true, + "description": "Unique integer identifying the web experiment to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'web_experiments_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DeleteWebExperiment", + "parameters": { + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": true + }, + "web_experiment_id": { + "value": 101, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DemoDataStatus", + "qualifiedName": "PosthogApi.DemoDataStatus", + "fullyQualifiedName": "PosthogApi.DemoDataStatus@2.0.0", + "description": "Check if an environment is generating demo data.\n\nRetrieve the status of demo data generation for a specific environment within a project for the current organization. Use this to determine if demo data is being generated in a specific environment.", + "parameters": [ + { + "name": "environment_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the environment (aka team) for which you want to check demo data status.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Retrieve ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_is_generating_demo_data_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DemoDataStatus", + "parameters": { + "environment_id": { + "value": 123, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "my_project_456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DestroyBatchExport", + "qualifiedName": "PosthogApi.DestroyBatchExport", + "fullyQualifiedName": "PosthogApi.DestroyBatchExport@2.0.0", + "description": "Deletes a specific batch export in a project.\n\nThis tool deletes a batch export for a specified project using the project ID and batch export ID. It should be called to remove unwanted or completed batch exports from a project in Datadog.", + "parameters": [ + { + "name": "batch_export_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the batch export to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access. Use /api/projects/ to retrieve it.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_destroy_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DestroyBatchExport", + "parameters": { + "batch_export_uuid": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + }, + "project_id": { + "value": "1234abcd-5678-efgh-ijkl-9012mnop3456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DestroySessionRecording", + "qualifiedName": "PosthogApi.DestroySessionRecording", + "fullyQualifiedName": "PosthogApi.DestroySessionRecording@2.0.0", + "description": "Delete a specific session recording from a project.\n\nUse this tool to delete a session recording from a specified project in Datadog. Ideal for managing and removing unwanted or outdated session recordings.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project containing the session recording to delete. Retrieve using /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_id", + "type": "string", + "required": true, + "description": "A UUID string identifying this session recording for deletion.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recordings_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DestroySessionRecording", + "parameters": { + "project_id": { + "value": "proj_12345", + "type": "string", + "required": true + }, + "session_recording_id": { + "value": "rec_67890-abcdef-12345-ghijkl", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DisableUser2fa", + "qualifiedName": "PosthogApi.DisableUser2fa", + "fullyQualifiedName": "PosthogApi.DisableUser2fa@2.0.0", + "description": "Disable two-factor authentication for a user.\n\n This tool disables two-factor authentication (2FA) for a user and removes all associated devices. Use this when a user needs to deactivate their 2FA settings.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_unique_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the user whose 2FA is to be disabled. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_two_factor_disable_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DisableUser2fa", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_unique_identifier": { + "value": "user123@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"disable_2fa\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DuplicateExperimentPosthog", + "qualifiedName": "PosthogApi.DuplicateExperimentPosthog", + "fullyQualifiedName": "PosthogApi.DuplicateExperimentPosthog@2.0.0", + "description": "Create a duplicate of a specific experiment.\n\n Use this tool to duplicate an existing experiment within a specified Datadog project. It helps in creating a copy of an experiment for further testing or analysis.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "experiment_id", + "type": "integer", + "required": false, + "description": "Unique integer to identify the experiment to duplicate. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project you want to access in Datadog. Obtain this by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiments_duplicate_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DuplicateExperimentPosthog", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "experiment_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Duplicated Experiment\", \"description\": \"This is a copy of the original experiment.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DuplicateSurveyToProjects", + "qualifiedName": "PosthogApi.DuplicateSurveyToProjects", + "fullyQualifiedName": "PosthogApi.DuplicateSurveyToProjects@2.0.0", + "description": "Duplicate a survey to multiple projects in one transaction.\n\n Use this tool to copy a survey into multiple projects simultaneously, ensuring an all-or-nothing transaction where failures result in rollback.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "survey_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the survey to be duplicated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "target_project_id", + "type": "string", + "required": false, + "description": "The ID of the target project where the survey will be duplicated. Obtain this ID via the /api/projects/ call. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveys_duplicate_to_projects_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.DuplicateSurveyToProjects", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "survey_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "target_project_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"New Survey Copy\",\"questions\":[{\"type\":\"multiple_choice\",\"question\":\"What is your favorite color?\",\"options\":[\"Red\",\"Blue\",\"Green\"]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditBatchExports", + "qualifiedName": "PosthogApi.EditBatchExports", + "fullyQualifiedName": "PosthogApi.EditBatchExports@2.0.0", + "description": "Update specific details of batch exports.\n\n This tool updates details of batch exports for a project. Use it when you need to modify existing batch export configurations in a project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the batch export to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project you're accessing. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_partial_update_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.EditBatchExports", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_id": { + "value": "d1e2f3g4-h5i6-j7k8-l9m0-n1o2p3q4r5s6", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"new_frequency\":\"daily\",\"enabled\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditProjectEnvironment", + "qualifiedName": "PosthogApi.EditProjectEnvironment", + "fullyQualifiedName": "PosthogApi.EditProjectEnvironment@2.0.0", + "description": "Update environment settings for a specified project.\n\n This tool updates the environment configuration for a specific project within the current organization on Datadog. It should be called when modifying environment details like settings or parameters in a project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "environment_identifier", + "type": "integer", + "required": false, + "description": "A unique integer identifying the environment (aka team) for modification. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "String ID of the project to access. Obtain ID via /api/projects/ call. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.EditProjectEnvironment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "environment_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "abc-xyz-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"setting1\": true, \"setting2\": \"value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditSessionPlaylist", + "qualifiedName": "PosthogApi.EditSessionPlaylist", + "fullyQualifiedName": "PosthogApi.EditSessionPlaylist@2.0.0", + "description": "Partially update a session recording playlist.\n\n Call this tool to update specific attributes of a session recording playlist by providing the project and playlist IDs. Useful for modifying playlist details without replacing all data.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the project. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "playlist_short_id", + "type": "string", + "required": false, + "description": "The short ID of the session recording playlist to modify. Required for identifying the playlist. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recording_playlists_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.EditSessionPlaylist", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "playlist_short_id": { + "value": "abcde12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Playlist Name\", \"description\": \"This playlist has been updated.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditSessionRecording", + "qualifiedName": "PosthogApi.EditSessionRecording", + "fullyQualifiedName": "PosthogApi.EditSessionRecording@2.0.0", + "description": "Update specific details of a session recording.\n\n Use this tool to modify attributes of a session recording by specifying the project and recording IDs. Ideal for updating incomplete data or correcting entries.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "session_recording_id", + "type": "string", + "required": false, + "description": "A UUID string used to uniquely identify the session recording to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recordings_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.EditSessionRecording", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "session_recording_id": { + "value": "d5e7f6f5-3b72-4e39-a4a6-3c50ef3879b6", + "type": "string", + "required": false + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Session Title\", \"description\": \"Corrected description of the session recording.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditWarehouseSavedQuery", + "qualifiedName": "PosthogApi.EditWarehouseSavedQuery", + "fullyQualifiedName": "PosthogApi.EditWarehouseSavedQuery@2.0.0", + "description": "Update a specific warehouse saved query.\n\n Use this tool to update a saved query in a warehouse. It is applicable when changes need to be made to existing warehouse queries.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "saved_query_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the specific data warehouse saved query to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project to access. Retrieve this ID via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_saved_queries_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.EditWarehouseSavedQuery", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "saved_query_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project-001", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"query\":\"SELECT * FROM events WHERE event_date > '2023-01-01'\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditWarehouseTable", + "qualifiedName": "PosthogApi.EditWarehouseTable", + "fullyQualifiedName": "PosthogApi.EditWarehouseTable@2.0.0", + "description": "Updates information for a specific warehouse table.\n\n Use this tool to update details of a specific warehouse table within a project. Suitable for modifying table configurations or data schema.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "warehouse_table_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the data warehouse table to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_tables_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.EditWarehouseTable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "warehouse_table_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "project_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"table_name\": \"users\", \"columns\": [{\"name\": \"id\", \"type\": \"uuid\"}, {\"name\": \"email\", \"type\": \"varchar\"}]}\"", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EnvironmentExportsOverview", + "qualifiedName": "PosthogApi.EnvironmentExportsOverview", + "fullyQualifiedName": "PosthogApi.EnvironmentExportsOverview@2.0.0", + "description": "Retrieve a list of exports for a specified environment.\n\nThis tool retrieves a list of data exports for a given project's environment. Use it to view available export data for analysis or record-keeping.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve the ID using a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "result_start_index", + "type": "integer", + "required": false, + "description": "The initial index from which to start returning results for the exports list.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_exports_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.EnvironmentExportsOverview", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "result_start_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ExecuteSavedQuery", + "qualifiedName": "PosthogApi.ExecuteSavedQuery", + "fullyQualifiedName": "PosthogApi.ExecuteSavedQuery@2.0.0", + "description": "Executes a saved query in Datadog's warehouse.\n\n Use this tool to execute a pre-saved query in Datadog's warehouse. It should be called when you need to retrieve the results of a specific query by its ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "query_uuid", + "type": "string", + "required": false, + "description": "The UUID string identifying the specific data warehouse saved query to execute. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_saved_queries_run_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ExecuteSavedQuery", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "query_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project-789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"filters\": {\"date_range\": \"last_30_days\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchBatchExports", + "qualifiedName": "PosthogApi.FetchBatchExports", + "fullyQualifiedName": "PosthogApi.FetchBatchExports@2.0.0", + "description": "Retrieve a list of batch exports for a specific project.\n\nCall this tool to obtain a detailed list of all batch exports associated with a specified project ID in Datadog.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project for which to access batch exports. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page when retrieving batch exports.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results in the list of batch exports.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_list_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchBatchExports", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "starting_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchDataColorThemes", + "qualifiedName": "PosthogApi.FetchDataColorThemes", + "fullyQualifiedName": "PosthogApi.FetchDataColorThemes@2.0.0", + "description": "Retrieve a list of data color themes for a project.\n\nThis tool is used to fetch a list of data color themes associated with a specific project in Datadog. It should be called when users need to know the available color themes for visualizing their data under a particular project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project to access color themes. Retrieve the ID via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of data color themes to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index", + "type": "integer", + "required": false, + "description": "The initial index from which to start returning the results for data color themes.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'data_color_themes_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchDataColorThemes", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "starting_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchEndpointRunStatus", + "qualifiedName": "PosthogApi.FetchEndpointRunStatus", + "fullyQualifiedName": "PosthogApi.FetchEndpointRunStatus@2.0.0", + "description": "Retrieve the run status of an endpoint.\n\nUse this tool to get the current run status of a specific endpoint within a project environment on Datadog. It's useful for checking the operation and status of a given endpoint run.", + "parameters": [ + { + "name": "endpoint_name", + "type": "string", + "required": true, + "description": "The name of the endpoint you want to update or retrieve status for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Obtain it via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_endpoints_run_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchEndpointRunStatus", + "parameters": { + "endpoint_name": { + "value": "user_data_sync", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchEnvironmentInsights", + "qualifiedName": "PosthogApi.FetchEnvironmentInsights", + "fullyQualifiedName": "PosthogApi.FetchEnvironmentInsights@2.0.0", + "description": "Retrieve insights for a specific environment.\n\nThis tool is used to retrieve insights data for a specified environment within a project. It should be called when detailed information about an environment's insights is needed.", + "parameters": [ + { + "name": "insight_identifier", + "type": "integer", + "required": true, + "description": "A unique integer identifying the specific insight to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "dashboard_id_context", + "type": "integer", + "required": false, + "description": "The ID of the dashboard to apply its filters and date range if loading insight in the context of a dashboard.", + "enum": null, + "inferrable": true + }, + { + "name": "insight_refresh_strategy", + "type": "string", + "required": false, + "description": "Determines how to refresh the insight: choose from 'force_cache', 'blocking', 'async', 'lazy_async', 'force_blocking', or 'force_async'. Dictates calculation synchronization and use of cache.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the format for the output data. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchEnvironmentInsights", + "parameters": { + "insight_identifier": { + "value": 42, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "my_project_123", + "type": "string", + "required": true + }, + "dashboard_id_context": { + "value": 7, + "type": "integer", + "required": false + }, + "insight_refresh_strategy": { + "value": "async", + "type": "string", + "required": false + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchFileCountByPath", + "qualifiedName": "PosthogApi.FetchFileCountByPath", + "fullyQualifiedName": "PosthogApi.FetchFileCountByPath@2.0.0", + "description": "Retrieve the count of files in a specified folder.\n\n Use this tool to get the number of files within a specified directory in a project. Ideal for monitoring or managing file systems efficiently.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_count_by_path_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchFileCountByPath", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"folder_path\": \"/documents/\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchFolderFileCount", + "qualifiedName": "PosthogApi.FetchFolderFileCount", + "fullyQualifiedName": "PosthogApi.FetchFolderFileCount@2.0.0", + "description": "Get the count of all files in a folder.\n\n This tool checks and returns the total number of files present in a specified folder. Use this when you need to know how many files are contained within a folder on the file system.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "file_system_uuid", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the file system for which you want to get the file count. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID to access the project for counting files. Obtain via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_count_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchFolderFileCount", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "file_system_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "project_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"key\":\"value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchGithubReposForIntegration", + "qualifiedName": "PosthogApi.FetchGithubReposForIntegration", + "fullyQualifiedName": "PosthogApi.FetchGithubReposForIntegration@2.0.0", + "description": "Retrieve GitHub repositories for a specified integration.\n\nCall this tool to get a list of GitHub repositories associated with a specific integration in a Datadog project. Useful for managing or reviewing linked repositories.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer representing the integration whose associated GitHub repositories will be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project you wish to access in Datadog. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_github_repos_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchGithubReposForIntegration", + "parameters": { + "integration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "my-datadog-project", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchMetricsHistory", + "qualifiedName": "PosthogApi.FetchMetricsHistory", + "fullyQualifiedName": "PosthogApi.FetchMetricsHistory@2.0.0", + "description": "Retrieve historical exports of app metrics.\n\nThis tool retrieves historical app metrics exports for a specified project and plugin configuration. Useful for analyzing past performance data.", + "parameters": [ + { + "name": "plugin_configuration_identifier", + "type": "string", + "required": true, + "description": "The ID of the plugin configuration for which historical metrics exports are being fetched.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The Project ID required to access the desired project's historical data. Obtainable via a /api/projects/ call.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'app_metrics_historical_exports_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchMetricsHistory", + "parameters": { + "plugin_configuration_identifier": { + "value": "plugin_12345", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchPersonsFunnelData", + "qualifiedName": "PosthogApi.FetchPersonsFunnelData", + "fullyQualifiedName": "PosthogApi.FetchPersonsFunnelData@2.0.0", + "description": "Fetch persons data from the funnel in a specified environment.\n\nUse this tool to retrieve persons data related to funnels in a specific project environment. This is useful for analytics and understanding user behavior within the project. To modify or delete persons, refer to relevant APIs or SDKs.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the format of the data output: 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_funnel_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchPersonsFunnelData", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchRecentExecutionTimes", + "qualifiedName": "PosthogApi.FetchRecentExecutionTimes", + "fullyQualifiedName": "PosthogApi.FetchRecentExecutionTimes@2.0.0", + "description": "Fetch the last 6 months of execution times for endpoints.\n\nUse this tool to obtain the last execution times for multiple endpoints within a specified project over the past 6 months.", + "parameters": [ + { + "name": "endpoint_names", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of endpoint names to retrieve execution times for, within the specified project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The Project ID you want to access. Retrieve it using /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'endpoints_last_execution_times_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchRecentExecutionTimes", + "parameters": { + "endpoint_names": { + "value": ["get_users", "send_event", "update_profile"], + "type": "array", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchSavedQueryAncestors", + "qualifiedName": "PosthogApi.FetchSavedQueryAncestors", + "fullyQualifiedName": "PosthogApi.FetchSavedQueryAncestors@2.0.0", + "description": "Retrieve ancestors of a saved query, including parents and beyond.\n\n This tool retrieves the ancestors of a saved query in the Datadog environments warehouse. It returns the immediate parents by default, but can look further back in the ancestor tree using the 'level' parameter. If the specified level exceeds the available ancestors (beyond the root), an empty list is returned.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "saved_query_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the specific data warehouse saved query to fetch ancestors for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "ID of the project to access. Retrieve via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_saved_queries_ancestors_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchSavedQueryAncestors", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "saved_query_id": { + "value": "3b4f9c1e-9f1e-4c63-bcb5-546dd3f8d3d4", + "type": "string", + "required": false + }, + "project_id": { + "value": "f2d8a6be-0251-4d9e-9e3b-f1bd43f05a5b", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"level\": 2}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchSessionRecording", + "qualifiedName": "PosthogApi.FetchSessionRecording", + "fullyQualifiedName": "PosthogApi.FetchSessionRecording@2.0.0", + "description": "Retrieve details of a specific session recording.\n\nUse this tool to get detailed information about a session recording for a given project using its ID.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Find the project ID with /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_id", + "type": "string", + "required": true, + "description": "A UUID string that uniquely identifies the session recording to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recordings_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchSessionRecording", + "parameters": { + "project_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "session_recording_id": { + "value": "e7b4e53f-60a9-4bea-b95f-29a75346b5fd", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchSessionRecordings", + "qualifiedName": "PosthogApi.FetchSessionRecordings", + "fullyQualifiedName": "PosthogApi.FetchSessionRecordings@2.0.0", + "description": "Retrieve session recordings for a specific project.\n\nUse this tool to get a list of session recordings associated with a particular project ID. Useful for accessing session data stored in a project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project for which to retrieve session recordings. Obtainable via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of session recordings to return per page. This controls the pagination size.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index_for_results", + "type": "integer", + "required": false, + "description": "The initial index from which to start returning the results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recordings_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchSessionRecordings", + "parameters": { + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "start_index_for_results": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchSurveyActivity", + "qualifiedName": "PosthogApi.FetchSurveyActivity", + "fullyQualifiedName": "PosthogApi.FetchSurveyActivity@2.0.0", + "description": "Retrieve logs of survey activity views.\n\nCall this tool to get logs of views for a specific survey within a project. Each GET request returns the activity related to how often and when the survey was accessed.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Retrieve this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "survey_uuid", + "type": "string", + "required": true, + "description": "A UUID string uniquely identifying the survey to retrieve activity logs for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveys_activity_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchSurveyActivity", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "survey_uuid": { + "value": "6b1a43e0-3ed2-4f3e-bb1a-3c7e5909e17c", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchWebAnalyticsBreakdown", + "qualifiedName": "PosthogApi.FetchWebAnalyticsBreakdown", + "fullyQualifiedName": "PosthogApi.FetchWebAnalyticsBreakdown@2.0.0", + "description": "Retrieve breakdown of web analytics by property.\n\nUse this tool to obtain a detailed breakdown of web analytics data by various properties such as browser, device type, or country. Ideal for analyzing how different segments interact with your web project.", + "parameters": [ + { + "name": "breakdown_property", + "type": "string", + "required": true, + "description": "Specify the property to break down web analytics by, such as Browser, DeviceType, Country, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date", + "type": "string", + "required": true, + "description": "The end date for retrieving web analytics data, formatted as YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_for_access", + "type": "string", + "required": true, + "description": "Project ID to access specific analytics data. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": true, + "description": "Start date for the query in the format YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "apply_url_path_cleaning", + "type": "boolean", + "required": false, + "description": "Set to true to apply URL path cleaning.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_host", + "type": "string", + "required": false, + "description": "Specify the domain to filter the results by, such as 'example.com'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_test_accounts", + "type": "boolean", + "required": false, + "description": "Set to true to filter out test accounts from the results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of results to return from the query.", + "enum": null, + "inferrable": true + }, + { + "name": "results_offset", + "type": "integer", + "required": false, + "description": "Number of results to skip for paginated data retrieval.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'web_analytics_breakdown_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FetchWebAnalyticsBreakdown", + "parameters": { + "breakdown_property": { + "value": "Browser", + "type": "string", + "required": true + }, + "end_date": { + "value": "2023-10-31", + "type": "string", + "required": true + }, + "project_id_for_access": { + "value": "12345", + "type": "string", + "required": true + }, + "start_date": { + "value": "2023-10-01", + "type": "string", + "required": true + }, + "apply_url_path_cleaning": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_by_host": { + "value": "example.com", + "type": "string", + "required": false + }, + "filter_test_accounts": { + "value": true, + "type": "boolean", + "required": false + }, + "results_limit": { + "value": 100, + "type": "integer", + "required": false + }, + "results_offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FileSystemShortcutCreate", + "qualifiedName": "PosthogApi.FileSystemShortcutCreate", + "fullyQualifiedName": "PosthogApi.FileSystemShortcutCreate@2.0.0", + "description": "Create a file system shortcut in a specific project.\n\nCall this tool to create a file system shortcut within a specific project using the Datadog API.", + "parameters": [ + { + "name": "file_system_shortcut_path", + "type": "string", + "required": true, + "description": "The file path where the shortcut will be created. It should be a valid string path within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve project IDs by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_creation_timestamp", + "type": "string", + "required": true, + "description": "The timestamp when the shortcut was created, in string format. Typically, in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_id", + "type": "string", + "required": true, + "description": "A unique identifier for the file system shortcut being created.", + "enum": null, + "inferrable": true + }, + { + "name": "reference_id", + "type": "string", + "required": false, + "description": "A unique reference string for the shortcut. This identifies the shortcut within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_type", + "type": "string", + "required": false, + "description": "Specifies the type of file system shortcut to be created. Accepted values could include types like 'link', 'alias', or 'junction'.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_url", + "type": "string", + "required": false, + "description": "The URL reference for the file system shortcut to be created.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_shortcut_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FileSystemShortcutCreate", + "parameters": { + "file_system_shortcut_path": { + "value": "/projects/my_project/shortcuts/my_shortcut", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "shortcut_creation_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": true + }, + "shortcut_id": { + "value": "shortcut_001", + "type": "string", + "required": true + }, + "reference_id": { + "value": "ref_001", + "type": "string", + "required": false + }, + "shortcut_type": { + "value": "link", + "type": "string", + "required": false + }, + "shortcut_url": { + "value": "https://example.com/my_shortcut", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FindEnvironmentGroups", + "qualifiedName": "PosthogApi.FindEnvironmentGroups", + "fullyQualifiedName": "PosthogApi.FindEnvironmentGroups@2.0.0", + "description": "Retrieve details of environment groups by project ID.\n\nUse this tool to fetch detailed information about environment groups within a specified project in Datadog. It is useful for monitoring and managing distinct environments in a project.", + "parameters": [ + { + "name": "environment_group_key", + "type": "string", + "required": true, + "description": "Specify the key of the environment group you want to find within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_to_find", + "type": "integer", + "required": true, + "description": "Specify the type of environment group to find. This is represented as an integer value that corresponds to a specific group type within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Call /api/projects/ to find the project ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_groups_find_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FindEnvironmentGroups", + "parameters": { + "environment_group_key": { + "value": "production", + "type": "string", + "required": true + }, + "group_type_to_find": { + "value": 1, + "type": "integer", + "required": true + }, + "project_id": { + "value": "12345-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FunnelCorrelationPersonsRetrieve", + "qualifiedName": "PosthogApi.FunnelCorrelationPersonsRetrieve", + "fullyQualifiedName": "PosthogApi.FunnelCorrelationPersonsRetrieve@2.0.0", + "description": "Retrieve funnel correlation data for persons in a project.\n\nThis tool retrieves correlation data for persons in a specific project's funnel. It should be called when you need insights into funnel performance related to specific persons. For managing persons, consider using the capture API or SDKs.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project you want to access. Retrieve this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Format of the response data. Choose 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_funnel_correlation_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.FunnelCorrelationPersonsRetrieve", + "parameters": { + "project_id": { + "value": "1234-5678-9101", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GenerateBackupCodes", + "qualifiedName": "PosthogApi.GenerateBackupCodes", + "fullyQualifiedName": "PosthogApi.GenerateBackupCodes@2.0.0", + "description": "Generate new backup codes for two-factor authentication.\n\n Use this tool to create new backup codes for a user's two-factor authentication, which will invalidate any existing backup codes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_uuid", + "type": "string", + "required": false, + "description": "A unique identifier for the user to generate new backup codes. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_two_factor_backup_codes_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GenerateBackupCodes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"type\":\"backup_codes\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GenerateIndividualSessionSummary", + "qualifiedName": "PosthogApi.GenerateIndividualSessionSummary", + "fullyQualifiedName": "PosthogApi.GenerateIndividualSessionSummary@2.0.0", + "description": "Generate individual AI summaries for each session.\n\nUse this tool to generate AI-powered summaries for each session individually without grouping. Useful for analyzing session data at a granular level.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "session_ids_to_summarize", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of session IDs for summarization, up to a maximum of 300.", + "enum": null, + "inferrable": true + }, + { + "name": "summarization_focus_area", + "type": "string", + "required": false, + "description": "Optional focus area for refining the session summarization. Enhances the summary by concentrating on specified topics or elements.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create_session_summaries_individually'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GenerateIndividualSessionSummary", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "session_ids_to_summarize": { + "value": ["session_1", "session_2", "session_3"], + "type": "array", + "required": true + }, + "summarization_focus_area": { + "value": "user engagement", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GenerateRecordingPassword", + "qualifiedName": "PosthogApi.GenerateRecordingPassword", + "fullyQualifiedName": "PosthogApi.GenerateRecordingPassword@2.0.0", + "description": "Create a password for session recording sharing.\n\n This tool creates a new password for the sharing configuration of a session recording, identified by project and recording IDs. Use it when you need to secure sharing of session recordings with a password.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project ID for accessing a specific project. Retrieve via /api/projects/ to find the correct ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "recording_id", + "type": "string", + "required": false, + "description": "The unique identifier of the session recording for which you want to create a sharing password. This ID is necessary to specify the exact recording within the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recordings_sharing_passwords_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GenerateRecordingPassword", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "proj_12345", + "type": "string", + "required": false + }, + "recording_id": { + "value": "rec_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"password\":\"securePass123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GenerateSessionSummaries", + "qualifiedName": "PosthogApi.GenerateSessionSummaries", + "fullyQualifiedName": "PosthogApi.GenerateSessionSummaries@2.0.0", + "description": "Generate AI summaries for session recordings.\n\nUse this tool to create AI-generated summaries for a group of session recordings, identifying patterns and generating a comprehensive notebook.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Retrieve it by calling the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "session_id_list", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of session IDs to be summarized, with a maximum of 300 IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "summarization_focus_area", + "type": "string", + "required": false, + "description": "Optional focus area for the summarization to guide the AI in highlighting specific patterns or information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create_session_summaries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GenerateSessionSummaries", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + }, + "session_id_list": { + "value": ["session_1", "session_2", "session_3"], + "type": "array", + "required": true + }, + "summarization_focus_area": { + "value": "user behavior", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAncestorsOfSavedQuery", + "qualifiedName": "PosthogApi.GetAncestorsOfSavedQuery", + "fullyQualifiedName": "PosthogApi.GetAncestorsOfSavedQuery@2.0.0", + "description": "Retrieve ancestors of a saved query in Datadog.\n\n Fetches the ancestors of the specified saved query. By default, it returns the immediate parents. The 'level' parameter can be used to look further back in the ancestor tree.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "data_warehouse_query_uuid", + "type": "string", + "required": false, + "description": "A UUID identifying the specific data warehouse saved query to retrieve ancestors for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID to access. Retrieve the ID using the /api/projects/ endpoint if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_saved_queries_ancestors_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetAncestorsOfSavedQuery", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "data_warehouse_query_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "project_1234", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"query\":\"SELECT * FROM events\",\"options\":{\"limit\":10}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAppMetrics", + "qualifiedName": "PosthogApi.GetAppMetrics", + "fullyQualifiedName": "PosthogApi.GetAppMetrics@2.0.0", + "description": "Retrieve application metrics for a specific project and ID.\n\nCall this tool to obtain the metrics of a specific application within a given project. Ideal for monitoring and analyzing app performance through Datadog.", + "parameters": [ + { + "name": "plugin_config_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the plugin configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_for_app_metrics", + "type": "string", + "required": true, + "description": "The Project ID for the project whose app metrics you want to retrieve. Find the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'app_metrics_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetAppMetrics", + "parameters": { + "plugin_config_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id_for_app_metrics": { + "value": "proj_abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAvailableDashboards", + "qualifiedName": "PosthogApi.GetAvailableDashboards", + "fullyQualifiedName": "PosthogApi.GetAvailableDashboards@2.0.0", + "description": "Retrieve a list of dashboards for a specific project.\n\nThis tool should be called to get information about all the dashboards available in a given project. It's useful when a user needs to see an overview of dashboards or wants to select a specific dashboard to view or edit.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project you want to access. Retrieve this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response. Accepted values are 'json' or 'txt'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of dashboards to return per page. This controls pagination for the results.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index_for_results", + "type": "integer", + "required": false, + "description": "The starting index for returning the list of dashboards, used for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetAvailableDashboards", + "parameters": { + "project_identifier": { + "value": "project_1234", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "start_index_for_results": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBatchExportBackfill", + "qualifiedName": "PosthogApi.GetBatchExportBackfill", + "fullyQualifiedName": "PosthogApi.GetBatchExportBackfill@2.0.0", + "description": "Retrieve details of a specific batch export backfill.\n\nUse this tool to obtain information about a specific batch export backfill in Datadog. Ideal for viewing backfill details without making updates or deletions.", + "parameters": [ + { + "name": "batch_export_backfill_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific batch export backfill to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "batch_export_identifier", + "type": "string", + "required": true, + "description": "A string representing the batch export backfill ID to retrieve details.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve the project ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_backfills_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetBatchExportBackfill", + "parameters": { + "batch_export_backfill_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "batch_export_identifier": { + "value": "export_xyz_2023_10", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetClickupLists", + "qualifiedName": "PosthogApi.GetClickupLists", + "fullyQualifiedName": "PosthogApi.GetClickupLists@2.0.0", + "description": "Retrieve ClickUp lists for a specific project integration.\n\nUse this tool to obtain a list of ClickUp lists associated with a specific project and integration ID through the Datadog API.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer to identify the integration for retrieving ClickUp lists.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_clickup_lists_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetClickupLists", + "parameters": { + "integration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "proj_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetClickupSpaces", + "qualifiedName": "PosthogApi.GetClickupSpaces", + "fullyQualifiedName": "PosthogApi.GetClickupSpaces@2.0.0", + "description": "Retrieve ClickUp spaces for a specific integration.\n\nUse this tool to retrieve ClickUp spaces linked to a specific integration within a project environment.", + "parameters": [ + { + "name": "integration_identifier", + "type": "integer", + "required": true, + "description": "An integer value uniquely identifying the integration to retrieve ClickUp spaces for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project to access specific ClickUp spaces. Obtain this ID via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_clickup_spaces_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetClickupSpaces", + "parameters": { + "integration_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "proj_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetClickupWorkspaces", + "qualifiedName": "PosthogApi.GetClickupWorkspaces", + "fullyQualifiedName": "PosthogApi.GetClickupWorkspaces@2.0.0", + "description": "Retrieve ClickUp workspaces for a specific integration.\n\nUse this tool to get the list of ClickUp workspaces associated with a specific integration in Datadog environments. It requires specifying the project and integration identifiers.", + "parameters": [ + { + "name": "clickup_project_id", + "type": "string", + "required": true, + "description": "The Project ID for accessing the desired ClickUp workspace. Obtain the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the integration to retrieve workspaces for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_clickup_workspaces_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetClickupWorkspaces", + "parameters": { + "clickup_project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "integration_id": { + "value": 678, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCohortActivity", + "qualifiedName": "PosthogApi.GetCohortActivity", + "fullyQualifiedName": "PosthogApi.GetCohortActivity@2.0.0", + "description": "Retrieve logs of file system views for a cohort.\n\nThis tool retrieves logs of each view on the file system for a specific cohort in a project. It should be called when there's a need to track or review the activity of a cohort by fetching the logged view data.", + "parameters": [ + { + "name": "cohort_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the specific cohort whose file system view logs are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The identifier of the project to access. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cohorts_activity_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetCohortActivity", + "parameters": { + "cohort_id": { + "value": 42, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCohortPersons", + "qualifiedName": "PosthogApi.GetCohortPersons", + "fullyQualifiedName": "PosthogApi.GetCohortPersons@2.0.0", + "description": "Retrieve a list of persons in a specific project cohort.\n\nUse this tool to get a list of persons associated with a specific cohort in a project. Useful for tracking and managing cohort membership.", + "parameters": [ + { + "name": "cohort_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying this cohort. Required to retrieve the list of persons associated with it.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Obtain this via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the format of the returned data. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cohorts_persons_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetCohortPersons", + "parameters": { + "cohort_id": { + "value": 123, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_xyz_456", + "type": "string", + "required": true + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCurrentOrgProjects", + "qualifiedName": "PosthogApi.GetCurrentOrgProjects", + "fullyQualifiedName": "PosthogApi.GetCurrentOrgProjects@2.0.0", + "description": "Retrieve projects for the current organization.\n\nUse this tool to get a list of projects associated with the current organization.", + "parameters": [ + { + "name": "organization_identifier", + "type": "string", + "required": true, + "description": "A string representing the unique identifier of the current organization. Required to fetch projects.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results. Use this to paginate results starting from a specific point.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetCurrentOrgProjects", + "parameters": { + "organization_identifier": { + "value": "org_12345678", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDashboardDetails", + "qualifiedName": "PosthogApi.GetDashboardDetails", + "fullyQualifiedName": "PosthogApi.GetDashboardDetails@2.0.0", + "description": "Retrieve details of a specific dashboard.\n\nThis tool retrieves information about a specific dashboard within a given project by its ID. It is useful for accessing details and configurations of dashboards in Datadog.", + "parameters": [ + { + "name": "dashboard_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the specific dashboard to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to specify which project to access. Obtain from /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "The format in which the dashboard details should be returned. Accepted values are 'json' or 'txt'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetDashboardDetails", + "parameters": { + "dashboard_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project-abc-123", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDescendantsSavedQuery", + "qualifiedName": "PosthogApi.GetDescendantsSavedQuery", + "fullyQualifiedName": "PosthogApi.GetDescendantsSavedQuery@2.0.0", + "description": "Retrieve descendants of a specified saved query.\n\n This tool fetches the descendants of a saved query, optionally using a level parameter to determine depth. It is useful for exploring query hierarchies.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "saved_query_uuid", + "type": "string", + "required": false, + "description": "The UUID that uniquely identifies this saved query in the data warehouse. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project to access. Get this ID via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "webhook_secret" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_saved_queries_descendants_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetDescendantsSavedQuery", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "saved_query_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "my_project_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"depth\": 3}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEarlyAccessFeatures", + "qualifiedName": "PosthogApi.GetEarlyAccessFeatures", + "fullyQualifiedName": "PosthogApi.GetEarlyAccessFeatures@2.0.0", + "description": "Retrieve a list of early access features for a project.\n\nThis tool retrieves a list of early access features available for a specific project on Datadog. It should be called when users want to see what early access features they can enable or explore for their project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to retrieve early access features for. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page for early access features.", + "enum": null, + "inferrable": true + }, + { + "name": "result_start_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results when paginating through early access features.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'early_access_feature_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetEarlyAccessFeatures", + "parameters": { + "project_id": { + "value": "1234-5678-91011", + "type": "string", + "required": true + }, + "number_of_results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "result_start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnvironmentActivity", + "qualifiedName": "PosthogApi.GetEnvironmentActivity", + "fullyQualifiedName": "PosthogApi.GetEnvironmentActivity@2.0.0", + "description": "Retrieve project environment activity details.\n\nFetches the activity details for a specific environment within a given project in the current organization.", + "parameters": [ + { + "name": "environment_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the environment (aka team).", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project you wish to access. Obtainable by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_activity_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetEnvironmentActivity", + "parameters": { + "environment_id": { + "value": 123, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "my_project_001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnvironmentDashboard", + "qualifiedName": "PosthogApi.GetEnvironmentDashboard", + "fullyQualifiedName": "PosthogApi.GetEnvironmentDashboard@2.0.0", + "description": "Retrieve a specific dashboard for an environment.\n\nThis tool retrieves dashboard information for a specified environment using the project and dashboard IDs.", + "parameters": [ + { + "name": "dashboard_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the dashboard to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID for accessing the specific environment dashboard. Obtainable via call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response data. Use 'json' for JSON format or 'txt' for plain text format.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetEnvironmentDashboard", + "parameters": { + "dashboard_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnvironmentFileSystemDetails", + "qualifiedName": "PosthogApi.GetEnvironmentFileSystemDetails", + "fullyQualifiedName": "PosthogApi.GetEnvironmentFileSystemDetails@2.0.0", + "description": "Retrieve details of a file system in a specific environment.\n\nCall this tool to get information about a file system within a specified project environment. Useful for monitoring or managing resources.", + "parameters": [ + { + "name": "file_system_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the file system to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access the specific project environment. Use /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetEnvironmentFileSystemDetails", + "parameters": { + "file_system_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnvironmentInsights", + "qualifiedName": "PosthogApi.GetEnvironmentInsights", + "fullyQualifiedName": "PosthogApi.GetEnvironmentInsights@2.0.0", + "description": "Retrieve insights for a specific environment.\n\nUse this tool to get insights for a specified environment within a given project. It logs each view upon retrieval.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to find the correct ID.", + "enum": null, + "inferrable": true + }, + { + "name": "created_by_user_id", + "type": "integer", + "required": false, + "description": "The user ID of who created the insight. Expected as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_result_index", + "type": "integer", + "required": false, + "description": "The initial index from which to start returning results.", + "enum": null, + "inferrable": true + }, + { + "name": "refresh_method", + "type": "string", + "required": false, + "description": "Strategy for refreshing insights, with options for cache use and sync/async execution. Choices include: 'force_cache', 'blocking', 'async', 'lazy_async', 'force_blocking', and 'force_async'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the retrieved insights (csv or json).", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "return_basic_insight_metadata_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only basic metadata without results for faster response.", + "enum": null, + "inferrable": true + }, + { + "name": "short_identifier", + "type": "string", + "required": false, + "description": "The short identifier for the environment to retrieve insights for. This is unique per environment.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetEnvironmentInsights", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "created_by_user_id": { + "value": 678, + "type": "integer", + "required": false + }, + "initial_result_index": { + "value": 0, + "type": "integer", + "required": false + }, + "refresh_method": { + "value": "lazy_async", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "return_basic_insight_metadata_only": { + "value": false, + "type": "boolean", + "required": false + }, + "short_identifier": { + "value": "env_001", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnvironmentQueryResults", + "qualifiedName": "PosthogApi.GetEnvironmentQueryResults", + "fullyQualifiedName": "PosthogApi.GetEnvironmentQueryResults@2.0.0", + "description": "Retrieve results of an environment query for a project.\n\nFetch the results of a specific query within a project's environment using the project ID and query ID. This tool is ideal for retrieving data insights and analytics from environment queries.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Retrieve it via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "query_id", + "type": "string", + "required": true, + "description": "The ID of the specific query to retrieve results for within the project's environment.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_query_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetEnvironmentQueryResults", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "query_id": { + "value": "query-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnvironmentsBatchExportStatus", + "qualifiedName": "PosthogApi.GetEnvironmentsBatchExportStatus", + "fullyQualifiedName": "PosthogApi.GetEnvironmentsBatchExportStatus@2.0.0", + "description": "Gets the status of a test batch export for environments.\n\nCall this tool to retrieve the status of a test batch export for a specific environment using the project ID. Useful for checking the progress or completion of export tasks.", + "parameters": [ + { + "name": "project_id_for_export_status", + "type": "string", + "required": true, + "description": "The Project ID to retrieve the test batch export status. Obtainable from a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_test_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetEnvironmentsBatchExportStatus", + "parameters": { + "project_id_for_export_status": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnvironmentSessionValues", + "qualifiedName": "PosthogApi.GetEnvironmentSessionValues", + "fullyQualifiedName": "PosthogApi.GetEnvironmentSessionValues@2.0.0", + "description": "Retrieve session values for a specific environment.\n\nUse this tool to obtain session values for a given project environment. It should be called when you need detailed data about sessions in a particular environment.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project for which to retrieve session values. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_sessions_values_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetEnvironmentSessionValues", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetErrorDetailsForAppMetrics", + "qualifiedName": "PosthogApi.GetErrorDetailsForAppMetrics", + "fullyQualifiedName": "PosthogApi.GetErrorDetailsForAppMetrics@2.0.0", + "description": "Retrieve error details for specific app metrics.\n\nThis tool retrieves detailed error information for a specific app metric of a project. It should be called when you need to understand the nature of errors related to app metrics.", + "parameters": [ + { + "name": "plugin_config_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the plugin configuration to retrieve error details for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique Project ID for accessing specific app metrics error details. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'app_metrics_error_details_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetErrorDetailsForAppMetrics", + "parameters": { + "plugin_config_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "my_unique_project_id", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetErrorTrackingFingerprint", + "qualifiedName": "PosthogApi.GetErrorTrackingFingerprint", + "fullyQualifiedName": "PosthogApi.GetErrorTrackingFingerprint@2.0.0", + "description": "Retrieve a specific error tracking fingerprint by ID.\n\nUse this tool to fetch detailed information about a specific error tracking fingerprint within a project environment. It is called when needing insights into an error identifier.", + "parameters": [ + { + "name": "error_tracking_fingerprint_uuid", + "type": "string", + "required": true, + "description": "A UUID identifying the error tracking issue fingerprint v2.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access specific project data. Use /api/projects/ to retrieve this ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_fingerprints_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetErrorTrackingFingerprint", + "parameters": { + "error_tracking_fingerprint_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetExperimentHoldout", + "qualifiedName": "PosthogApi.GetExperimentHoldout", + "fullyQualifiedName": "PosthogApi.GetExperimentHoldout@2.0.0", + "description": "Retrieve details of a specific experiment holdout from a project.\n\nUse this tool to obtain detailed information about a particular experiment holdout within a specified project, identified by project and experiment holdout IDs.", + "parameters": [ + { + "name": "experiment_holdout_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the specific experiment holdout.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Retrieve this ID using a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiment_holdouts_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetExperimentHoldout", + "parameters": { + "experiment_holdout_id": { + "value": 123, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetExperimentHoldouts", + "qualifiedName": "PosthogApi.GetExperimentHoldouts", + "fullyQualifiedName": "PosthogApi.GetExperimentHoldouts@2.0.0", + "description": "Retrieve the list of experiment holdouts for a project.\n\nUse this tool to get a list of experiment holdouts associated with a specific project in Datadog. Ideal for when you need to analyze or review holdout data for experiments.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project for which you want to retrieve experiment holdouts. Obtain this ID by calling the `/api/projects/` endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results. Used for pagination in retrieving experiment holdouts.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page for the query.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiment_holdouts_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetExperimentHoldouts", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "initial_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFeatureFlagKeys", + "qualifiedName": "PosthogApi.GetFeatureFlagKeys", + "fullyQualifiedName": "PosthogApi.GetFeatureFlagKeys@2.0.0", + "description": "Retrieve feature flag keys using a list of IDs.\n\n Use this tool to get the keys associated with specific feature flag IDs in a project. It accepts a list of feature flag IDs and returns a mapping of each ID to its corresponding key.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Obtain the ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_bulk_keys_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetFeatureFlagKeys", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"feature_flag_ids\":[\"flag_1\",\"flag_2\",\"flag_3\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFeatureFlags", + "qualifiedName": "PosthogApi.GetFeatureFlags", + "fullyQualifiedName": "PosthogApi.GetFeatureFlags@2.0.0", + "description": "Retrieve current feature flags for a user's project.\n\nUse this tool to get the list of feature flags for a specific project. This is useful when you need to check which feature flags are active for a user's project in the Datadog environment.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access feature flags for. Make a call to /api/projects/ to find the project's ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_my_flags_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetFeatureFlags", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFeatureFlagValues", + "qualifiedName": "PosthogApi.GetFeatureFlagValues", + "fullyQualifiedName": "PosthogApi.GetFeatureFlagValues@2.0.0", + "description": "Retrieve possible values for a feature flag.\n\nCall this tool to get the possible values associated with a specific feature flag by providing the flag ID. Useful when you need to know what options a feature flag can take.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'flag_value_values_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetFeatureFlagValues", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFileCountInFolder", + "qualifiedName": "PosthogApi.GetFileCountInFolder", + "fullyQualifiedName": "PosthogApi.GetFileCountInFolder@2.0.0", + "description": "Retrieve the count of all files in a specified folder.\n\n This tool is used to obtain the count of files within a specified directory for a given project. Call this tool when you need to know how many files are present in a specific folder.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "file_system_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the file system to get the file count. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID for accessing the desired project. Use /api/projects/ to find the ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_count_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetFileCountInFolder", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "file_system_uuid": { + "value": "d7c4e159-43b7-4e1a-9a57-2e58e6b5f3c0", + "type": "string", + "required": false + }, + "project_id": { + "value": "proj_123456789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFileShortcuts", + "qualifiedName": "PosthogApi.GetFileShortcuts", + "fullyQualifiedName": "PosthogApi.GetFileShortcuts@2.0.0", + "description": "Retrieve a list of file system shortcuts for a given project.\n\nUse this tool to obtain a detailed list of all file system shortcuts associated with a specific project. Ideal for managing and accessing project-related file paths efficiently.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access file system shortcuts. Obtain this ID via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_result_index", + "type": "integer", + "required": false, + "description": "The zero-based index from which to start returning results. Use to manage pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page when retrieving file system shortcuts.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_shortcut_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetFileShortcuts", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "initial_result_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFileSystemShortcut", + "qualifiedName": "PosthogApi.GetFileSystemShortcut", + "fullyQualifiedName": "PosthogApi.GetFileSystemShortcut@2.0.0", + "description": "Retrieve details of a file system shortcut.\n\nUse this tool to get information about a specific file system shortcut within a project by providing the project ID and shortcut ID.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use the /api/projects/ endpoint to find the ID if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_id", + "type": "string", + "required": true, + "description": "A UUID string to identify the file system shortcut to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_shortcut_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetFileSystemShortcut", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "shortcut_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetGithubReposForIntegration", + "qualifiedName": "PosthogApi.GetGithubReposForIntegration", + "fullyQualifiedName": "PosthogApi.GetGithubReposForIntegration@2.0.0", + "description": "Retrieve GitHub repositories linked to a Datadog integration.\n\nUse this tool to get a list of GitHub repositories associated with a specific integration in a Datadog environment. It requires the project ID and integration ID to identify the specific environment and integration.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the specific integration within Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Obtain the project ID using the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_github_repos_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetGithubReposForIntegration", + "parameters": { + "integration_id": { + "value": 123, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_abc_456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetGoogleAccessibleAccounts", + "qualifiedName": "PosthogApi.GetGoogleAccessibleAccounts", + "fullyQualifiedName": "PosthogApi.GetGoogleAccessibleAccounts@2.0.0", + "description": "Retrieve accessible Google accounts for integration.\n\nThis tool retrieves a list of Google accounts accessible through a specified integration in a Datadog project. It should be called when you need to access or verify Google account integrations for a specific project. The tool returns the accessible accounts related to the integration.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the specific integration.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Retrieve this ID by making a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_google_accessible_accounts_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetGoogleAccessibleAccounts", + "parameters": { + "integration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetGoogleConversionActions", + "qualifiedName": "PosthogApi.GetGoogleConversionActions", + "fullyQualifiedName": "PosthogApi.GetGoogleConversionActions@2.0.0", + "description": "Retrieve Google conversion actions for a specific environment.\n\nCall this tool to obtain information about Google conversion actions associated with a particular environment and integration in a project. Useful for analytics and tracking setup verification.", + "parameters": [ + { + "name": "integration_identifier", + "type": "integer", + "required": true, + "description": "A unique integer identifying the integration.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Obtain this from /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_google_conversion_actions_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetGoogleConversionActions", + "parameters": { + "integration_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetGroupTypeMetrics", + "qualifiedName": "PosthogApi.GetGroupTypeMetrics", + "fullyQualifiedName": "PosthogApi.GetGroupTypeMetrics@2.0.0", + "description": "Retrieve metrics for a specific group type in a project.\n\nCall this tool to get a list of metrics related to a specific group type within a given project. Use it when you need detailed metric information for analytics or monitoring purposes.", + "parameters": [ + { + "name": "group_type_index", + "type": "integer", + "required": true, + "description": "The index of the group type for which to retrieve metrics. This identifies the specific group type within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "String representing the Project ID to access the desired project in Datadog. Obtain it through a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_offset", + "type": "integer", + "required": false, + "description": "The starting index for returning results, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_types_metrics_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetGroupTypeMetrics", + "parameters": { + "group_type_index": { + "value": 1, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "proj_12345", + "type": "string", + "required": true + }, + "results_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetHogFunctionIcon", + "qualifiedName": "PosthogApi.GetHogFunctionIcon", + "fullyQualifiedName": "PosthogApi.GetHogFunctionIcon@2.0.0", + "description": "Retrieve the icon for hog functions in a specific project.\n\nThis tool is used to retrieve the icon associated with hog functions for a given project. It should be called when you need to visualise or access icon data related to hog functions tracked by the system.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project for which you want to retrieve the hog function icon. Obtain the ID via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hog_functions_icon_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetHogFunctionIcon", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetHogFunctionMetricsTotals", + "qualifiedName": "PosthogApi.GetHogFunctionMetricsTotals", + "fullyQualifiedName": "PosthogApi.GetHogFunctionMetricsTotals@2.0.0", + "description": "Retrieve total metrics for a specified hog function.\n\nThis tool retrieves the total metrics for a specified hog function within a project. It should be called when you need to assess the overall metrics data of a hog function. Ideal for tracking and analyzing file system views.", + "parameters": [ + { + "name": "hog_function_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific hog function for which metrics are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID for accessing the specific project. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hog_functions_metrics_totals_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetHogFunctionMetricsTotals", + "parameters": { + "hog_function_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetInsightsActivity", + "qualifiedName": "PosthogApi.GetInsightsActivity", + "fullyQualifiedName": "PosthogApi.GetInsightsActivity@2.0.0", + "description": "Retrieve logs of insight views for a project.\n\nThis tool is used to track and retrieve logs of views on a specific insight resource within a project. It is called to monitor activity on insights, logging each GET request made to the resource.", + "parameters": [ + { + "name": "insight_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the specific insight to retrieve logs for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_for_access", + "type": "string", + "required": true, + "description": "Project ID to access the desired project. Retrieve ID via /api/projects/ if unknown.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response: 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_activity_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetInsightsActivity", + "parameters": { + "insight_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id_for_access": { + "value": "project_67890", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIntegrationAuthorization", + "qualifiedName": "PosthogApi.GetIntegrationAuthorization", + "fullyQualifiedName": "PosthogApi.GetIntegrationAuthorization@2.0.0", + "description": "Retrieve integration authorization details for a project.\n\nUse this tool to get the authorization details for integrations within a specified project on the Datadog platform. It should be called when there is a need to understand or verify the integration authorization status for a particular project.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project to access integration authorization details. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_authorize_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetIntegrationAuthorization", + "parameters": { + "project_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIntegrationChannels", + "qualifiedName": "PosthogApi.GetIntegrationChannels", + "fullyQualifiedName": "PosthogApi.GetIntegrationChannels@2.0.0", + "description": "Retrieve integration channels for a specific project and ID.\n\nCall this tool to get a list of channels associated with a specific integration for a given project ID in Datadog. Useful for checking configured communication channels in your integrations.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the specific integration in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project identifier for accessing a specific project. Use the /api/projects/ endpoint to find the ID if needed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_channels_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetIntegrationChannels", + "parameters": { + "integration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "your_project_identifier", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIntegrationDetails", + "qualifiedName": "PosthogApi.GetIntegrationDetails", + "fullyQualifiedName": "PosthogApi.GetIntegrationDetails@2.0.0", + "description": "Retrieve integration details for a specific project.\n\nUse this tool to retrieve detailed information about a specific integration within a specified project on Datadog. This is helpful for understanding configuration and status of integrations.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying this integration.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project for which integration details are needed. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetIntegrationDetails", + "parameters": { + "integration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_abc_001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetLastExecutionTimes", + "qualifiedName": "PosthogApi.GetLastExecutionTimes", + "fullyQualifiedName": "PosthogApi.GetLastExecutionTimes@2.0.0", + "description": "Retrieve last execution times for multiple endpoints.\n\nUse this tool to get the most recent execution times for various endpoints over the past six months within a specific environment.", + "parameters": [ + { + "name": "endpoint_names", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of endpoint names to retrieve execution times for. Each name should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you wish to access. Use the /api/projects/ endpoint to retrieve the ID if needed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_endpoints_last_execution_times_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetLastExecutionTimes", + "parameters": { + "endpoint_names": { + "value": ["event", "person", "property"], + "type": "array", + "required": true + }, + "project_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetLinkedinAdsAccounts", + "qualifiedName": "PosthogApi.GetLinkedinAdsAccounts", + "fullyQualifiedName": "PosthogApi.GetLinkedinAdsAccounts@2.0.0", + "description": "Retrieve LinkedIn Ads accounts linked to a project.\n\nUse this tool to get LinkedIn Ads accounts associated with a specific project and integration in your Datadog environment. Ideal for when you need to verify LinkedIn Ads account details or ensure correct account linkage.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer to identify the LinkedIn Ads integration within Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access LinkedIn Ads accounts. Retrieve this ID via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_linkedin_ads_accounts_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetLinkedinAdsAccounts", + "parameters": { + "integration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetLinkedinAdsConversionRules", + "qualifiedName": "PosthogApi.GetLinkedinAdsConversionRules", + "fullyQualifiedName": "PosthogApi.GetLinkedinAdsConversionRules@2.0.0", + "description": "Retrieve LinkedIn Ads conversion rules for a specific project.\n\nUse this tool to obtain LinkedIn Ads conversion rules associated with a specific project in Datadog. Essential for analyzing conversion strategies and performance within LinkedIn Ads.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the LinkedIn integration.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access LinkedIn Ads conversion rules. Retrieve via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_linkedin_ads_conversion_rules_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetLinkedinAdsConversionRules", + "parameters": { + "integration_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_7890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetNotebookActivity", + "qualifiedName": "PosthogApi.GetNotebookActivity", + "fullyQualifiedName": "PosthogApi.GetNotebookActivity@2.0.0", + "description": "Retrieve activity details for a specific project notebook.\n\nUse this tool to get activity information related to notebooks within a specified project. Useful for monitoring and analyzing notebook usage.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project from which to retrieve notebook activity. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'notebooks_activity_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetNotebookActivity", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOrganizationDetails", + "qualifiedName": "PosthogApi.GetOrganizationDetails", + "fullyQualifiedName": "PosthogApi.GetOrganizationDetails@2.0.0", + "description": "Retrieve details of a specific organization.\n\nCall this tool to obtain information about a specific organization by providing its ID. Useful for accessing organization details stored in Datadog.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "A UUID string to identify the organization whose details you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetOrganizationDetails", + "parameters": { + "organization_id": { + "value": "9f77a1bc-82c4-4f38-bd3e-bb90d028e264", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOrganizationProjectDetails", + "qualifiedName": "PosthogApi.GetOrganizationProjectDetails", + "fullyQualifiedName": "PosthogApi.GetOrganizationProjectDetails@2.0.0", + "description": "Fetch details of a specific project within an organization.\n\nUse this tool to obtain detailed information about a particular project within the specified organization by providing the organization's and project's IDs.", + "parameters": [ + { + "name": "organization_identifier", + "type": "string", + "required": true, + "description": "A string representing the unique identifier for the organization whose project details are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": true, + "description": "A unique identifier for the project. This is required to retrieve specific project details within an organization.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetOrganizationProjectDetails", + "parameters": { + "organization_identifier": { + "value": "org_12345", + "type": "string", + "required": true + }, + "project_id": { + "value": 678, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPersistedFolders", + "qualifiedName": "PosthogApi.GetPersistedFolders", + "fullyQualifiedName": "PosthogApi.GetPersistedFolders@2.0.0", + "description": "Retrieve a list of persisted folders for a given environment.\n\nUse this tool to obtain all persisted folders within a specified project's environment. Suitable when you need to access or manage environment-specific folders.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page when retrieving folders.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results, used for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persisted_folder_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetPersistedFolders", + "parameters": { + "project_id": { + "value": "1234-5678-9012", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "starting_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPersonActivity", + "qualifiedName": "PosthogApi.GetPersonActivity", + "fullyQualifiedName": "PosthogApi.GetPersonActivity@2.0.0", + "description": "Retrieve activities and details of a specific person.\n\nUse this tool to access and view the activities associated with a particular person in a given project. Can be useful for tracking user actions and engagement.", + "parameters": [ + { + "name": "person_identifier", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the person. Required for retrieving their activity details.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response, either 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_activity_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetPersonActivity", + "parameters": { + "person_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_abc", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPersonInfo", + "qualifiedName": "PosthogApi.GetPersonInfo", + "fullyQualifiedName": "PosthogApi.GetPersonInfo@2.0.0", + "description": "Retrieve or delete person details in a Datadog project.\n\nThis tool allows you to retrieve person details from a specific project in Datadog. Note that for creating or updating persons, it's recommended to use the capture API or relevant SDKs.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access specific project details in Datadog. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response data. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_values_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetPersonInfo", + "parameters": { + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPersonsActivity", + "qualifiedName": "PosthogApi.GetPersonsActivity", + "fullyQualifiedName": "PosthogApi.GetPersonsActivity@2.0.0", + "description": "Retrieve activity data for persons in a project environment.\n\nUse this tool to read activity data for persons in a specific project environment. Suitable for obtaining detailed insights on user actions and behaviors.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response data. Choose either 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_activity_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetPersonsActivity", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPersonsCohorts", + "qualifiedName": "PosthogApi.GetPersonsCohorts", + "fullyQualifiedName": "PosthogApi.GetPersonsCohorts@2.0.0", + "description": "Retrieve information about person cohorts in a project.\n\nUse this tool to read person cohorts associated with a specific project. This is not for creating or updating persons; for those actions, use the capture API or appropriate SDKs.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID of the project to access. Use /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response: 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_cohorts_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetPersonsCohorts", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPersonsLifecycle", + "qualifiedName": "PosthogApi.GetPersonsLifecycle", + "fullyQualifiedName": "PosthogApi.GetPersonsLifecycle@2.0.0", + "description": "Retrieve lifecycle information of persons in a project.\n\nUse this tool to retrieve lifecycle data of persons associated with a specified project. It's suitable for reading person data; for creation or updates, refer to other APIs like the capture API.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access the specific project. Use /api/projects/ to find the ID if unknown.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "The format in which to retrieve lifecycle information. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_lifecycle_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetPersonsLifecycle", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPersonTrends", + "qualifiedName": "PosthogApi.GetPersonTrends", + "fullyQualifiedName": "PosthogApi.GetPersonTrends@2.0.0", + "description": "Retrieve trends related to persons in a project.\n\nUse this tool to get insights and trends about persons within a specific project. Useful for analyzing changes in user behavior and engagement over time.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The Project ID required to access and retrieve trends of persons for a specific project. Use the /api/projects/ endpoint to find the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format for the response data. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_trends_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetPersonTrends", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectActivityLog", + "qualifiedName": "PosthogApi.GetProjectActivityLog", + "fullyQualifiedName": "PosthogApi.GetProjectActivityLog@2.0.0", + "description": "Fetch the activity log for a specific project.\n\nUse this tool to retrieve the activity log of a specified project, providing insights into recent activities and changes.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project you want to access the activity log for. Retrieve by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity_log_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetProjectActivityLog", + "parameters": { + "project_identifier": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectEnvironmentDetails", + "qualifiedName": "PosthogApi.GetProjectEnvironmentDetails", + "fullyQualifiedName": "PosthogApi.GetProjectEnvironmentDetails@2.0.0", + "description": "Retrieve details of a specific environment within a project.\n\nCall this tool to fetch detailed information about an environment in a specific project. This is useful when you need to access or display data about a particular environment setup in the organization's projects.", + "parameters": [ + { + "name": "environment_id", + "type": "integer", + "required": true, + "description": "Unique integer identifying the environment (or team) to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access specific project details. Retrieve this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetProjectEnvironmentDetails", + "parameters": { + "environment_id": { + "value": 42, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project_xyz_123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectEventRestrictions", + "qualifiedName": "PosthogApi.GetProjectEventRestrictions", + "fullyQualifiedName": "PosthogApi.GetProjectEventRestrictions@2.0.0", + "description": "Retrieve event ingestion restrictions for a project environment.\n\nCall this tool to get information about event ingestion restrictions for a specific environment within a project. Useful for understanding data handling limits or constraints in your organization's projects.", + "parameters": [ + { + "name": "environment_identifier", + "type": "integer", + "required": true, + "description": "A unique integer identifying the environment (team) for which to retrieve event restrictions.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve it via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_event_ingestion_restrictions_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetProjectEventRestrictions", + "parameters": { + "environment_identifier": { + "value": 1, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project-123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectExperimentDetails", + "qualifiedName": "PosthogApi.GetProjectExperimentDetails", + "fullyQualifiedName": "PosthogApi.GetProjectExperimentDetails@2.0.0", + "description": "Retrieve details of a specific experiment within a project.\n\nUse this tool to get detailed information about a specific experiment within a given project in Datadog. Useful for monitoring, analysis, or troubleshooting purposes.", + "parameters": [ + { + "name": "experiment_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the experiment to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiments_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetProjectExperimentDetails", + "parameters": { + "experiment_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectSubscriptions", + "qualifiedName": "PosthogApi.GetProjectSubscriptions", + "fullyQualifiedName": "PosthogApi.GetProjectSubscriptions@2.0.0", + "description": "Retrieve a list of subscriptions for a specific project.\n\nUse this tool to get details on all subscriptions associated with a given project, identified by project ID.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access subscriptions for. Use /api/projects/ to find the ID if unknown.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page for the subscription list.", + "enum": null, + "inferrable": true + }, + { + "name": "results_start_index", + "type": "integer", + "required": false, + "description": "The index position to start returning results from within the subscription list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'subscriptions_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetProjectSubscriptions", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "results_start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectSurveys", + "qualifiedName": "PosthogApi.GetProjectSurveys", + "fullyQualifiedName": "PosthogApi.GetProjectSurveys@2.0.0", + "description": "Retrieve a list of surveys for a given project.\n\nUse this tool to get a list of surveys associated with a specific project identified by its project ID. Each call logs a new view of the file system.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve project ID via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_result_index", + "type": "integer", + "required": false, + "description": "The starting index for returning survey results, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page, as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "search_term", + "type": "string", + "required": false, + "description": "A search term to filter the list of surveys.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveys_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetProjectSurveys", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + }, + "initial_result_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "search_term": { + "value": "customer feedback", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectTaskDetails", + "qualifiedName": "PosthogApi.GetProjectTaskDetails", + "fullyQualifiedName": "PosthogApi.GetProjectTaskDetails@2.0.0", + "description": "Retrieve details of a specific task within a project.\n\nCall this tool to get detailed information about a specific task in a project. Useful for tracking and managing work assignments.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project to access task details. Use /api/projects/ to find available project IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "task_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific task within the project.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tasks_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetProjectTaskDetails", + "parameters": { + "project_identifier": { + "value": "1234-abcd-5678-efgh", + "type": "string", + "required": true + }, + "task_id": { + "value": "e0b3f6e9-3e7f-4a11-b5ed-4e5d9d8a3fc5", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProxyRecords", + "qualifiedName": "PosthogApi.GetProxyRecords", + "fullyQualifiedName": "PosthogApi.GetProxyRecords@2.0.0", + "description": "Retrieve proxy records for a given organization.\n\nCall this tool to obtain a list of proxy records associated with a specific organization. Use it when needing detailed information on proxy configurations for oversight or management purposes.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier of the organization for which to retrieve proxy records.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page when retrieving proxy records.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index_for_results", + "type": "integer", + "required": false, + "description": "The initial index from which to begin returning results. Use this to paginate through the list of proxy records.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'proxy_records_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetProxyRecords", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "starting_index_for_results": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetQueryDescendants", + "qualifiedName": "PosthogApi.GetQueryDescendants", + "fullyQualifiedName": "PosthogApi.GetQueryDescendants@2.0.0", + "description": "Retrieve descendants of a saved query.\n\n Call this tool to get the descendants of a specified saved query within a project. By default, it returns the immediate children, but the `level` parameter can be used to explore further descendants. If the `level` is too high, an empty list is returned.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "query_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the data warehouse saved query to retrieve descendants for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve it by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_saved_queries_descendants_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetQueryDescendants", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "query_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "proj-789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"level\": 2}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetQueryLogDetails", + "qualifiedName": "PosthogApi.GetQueryLogDetails", + "fullyQualifiedName": "PosthogApi.GetQueryLogDetails@2.0.0", + "description": "Retrieve query log details for a specified query ID.\n\nFetches details from the query_log_archive table for a specific query ID, provided the query was issued in the last 24 hours.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID for accessing the specific project. Retrieve by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "query_id", + "type": "string", + "required": true, + "description": "The unique identifier of the query to retrieve log details. The query must have been issued within the last 24 hours.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'query_log_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetQueryLogDetails", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "query_id": { + "value": "abcd-efgh-ijkl-mnop", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRelatedEnvironmentGroups", + "qualifiedName": "PosthogApi.GetRelatedEnvironmentGroups", + "fullyQualifiedName": "PosthogApi.GetRelatedEnvironmentGroups@2.0.0", + "description": "Retrieve related environment groups for a project.\n\nUse this tool to obtain information about environment groups that are related to a specified project. This can be useful for understanding the interconnections and dependencies within an environment setup.", + "parameters": [ + { + "name": "group_type_identifier", + "type": "integer", + "required": true, + "description": "An integer representing the specific group type to locate within the environment groups.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to access related environment groups. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id_for_group_search", + "type": "string", + "required": true, + "description": "The ID of the user for whom you want to find related groups. This helps in retrieving specific group associations for the given user.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_groups_related_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetRelatedEnvironmentGroups", + "parameters": { + "group_type_identifier": { + "value": 1, + "type": "integer", + "required": true + }, + "project_id": { + "value": "1234-5678-9101-1121", + "type": "string", + "required": true + }, + "user_id_for_group_search": { + "value": "user-001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSavedQueriesList", + "qualifiedName": "PosthogApi.GetSavedQueriesList", + "fullyQualifiedName": "PosthogApi.GetSavedQueriesList@2.0.0", + "description": "Retrieve saved warehouse queries for a specific project.\n\nThis tool is used to list all saved warehouse queries for a given project ID in Datadog. It should be called when needing to review or manage existing queries related to a project's data warehouse.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Retrieve this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "current_page_number", + "type": "integer", + "required": false, + "description": "Indicates the page number for retrieving paginated results of saved warehouse queries.", + "enum": null, + "inferrable": true + }, + { + "name": "search_term", + "type": "string", + "required": false, + "description": "A search term to filter the saved warehouse queries.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_saved_queries_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetSavedQueriesList", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "current_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "search_term": { + "value": "user engagement", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSessionRecordingsSharingLinks", + "qualifiedName": "PosthogApi.GetSessionRecordingsSharingLinks", + "fullyQualifiedName": "PosthogApi.GetSessionRecordingsSharingLinks@2.0.0", + "description": "Obtain sharing links for a Datadog session recording.\n\nUse this tool to access the sharing links for a specific session recording in Datadog. This is helpful for reviewing or sharing recordings with team members or stakeholders.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access session recordings. Retrieve via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_id", + "type": "string", + "required": true, + "description": "The unique ID of the session recording for which you want to obtain sharing links. This ID is required to specify the exact recording within the project.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recordings_sharing_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetSessionRecordingsSharingLinks", + "parameters": { + "project_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "session_recording_id": { + "value": "rec456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSubscriptionInfo", + "qualifiedName": "PosthogApi.GetSubscriptionInfo", + "fullyQualifiedName": "PosthogApi.GetSubscriptionInfo@2.0.0", + "description": "Retrieve details of a specific project subscription.\n\nUse this tool to obtain detailed information about a specific subscription within a given project by providing the project and subscription IDs.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain it via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying this subscription.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'subscriptions_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetSubscriptionInfo", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "subscription_id": { + "value": 678, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSuppressionRuleDetails", + "qualifiedName": "PosthogApi.GetSuppressionRuleDetails", + "fullyQualifiedName": "PosthogApi.GetSuppressionRuleDetails@2.0.0", + "description": "Retrieve details of a suppression rule in error tracking.\n\nUse this tool to get information about a specific suppression rule in the error tracking system, including its settings and parameters. It is useful when you need to understand or manage rule configurations within a project environment.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access. Obtainable via the /api/projects/ call.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific error tracking suppression rule.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_suppression_rules_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetSuppressionRuleDetails", + "parameters": { + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": true + }, + "suppression_rule_uuid": { + "value": "8d1f1bde-cf9e-4c77-8cf3-b4add9fcb1ff", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSurveyResponseCount", + "qualifiedName": "PosthogApi.GetSurveyResponseCount", + "fullyQualifiedName": "PosthogApi.GetSurveyResponseCount@2.0.0", + "description": "Retrieve the count of survey responses for a project.\n\nUse this tool to get the total number of responses to surveys for a specified project. It's useful for tracking engagement and participation metrics.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project whose survey response count you want to retrieve. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveys_responses_count_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetSurveyResponseCount", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSurveyResponseStatistics", + "qualifiedName": "PosthogApi.GetSurveyResponseStatistics", + "fullyQualifiedName": "PosthogApi.GetSurveyResponseStatistics@2.0.0", + "description": "Get survey response statistics for a specific survey.\n\nRetrieves detailed statistics for a given survey, including event counts, unique respondents, and conversion rates. Use this tool to analyze survey performance over a specified date range.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve this using the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "survey_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific survey to retrieve statistics for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveys_stats_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetSurveyResponseStatistics", + "parameters": { + "project_identifier": { + "value": "1234-5678-9012-3456", + "type": "string", + "required": true + }, + "survey_uuid": { + "value": "e1e2ede0-3a4b-11e9-bb35-2a2ae2dbcce4", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSurveyStatistics", + "qualifiedName": "PosthogApi.GetSurveyStatistics", + "fullyQualifiedName": "PosthogApi.GetSurveyStatistics@2.0.0", + "description": "Retrieve aggregated response statistics for surveys.\n\nCall this tool to obtain aggregated statistics for survey responses within a specified date range. Useful for analyzing overall survey performance, including total counts and response rates.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access. Get this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveys_stats_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetSurveyStatistics", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTaskRunDetails", + "qualifiedName": "PosthogApi.GetTaskRunDetails", + "fullyQualifiedName": "PosthogApi.GetTaskRunDetails@2.0.0", + "description": "Retrieve details of a specific task run execution.\n\nUse this tool to get information about a particular execution of a task within a project. This includes status, execution time, and other relevant details of the task run.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project you want to access. Obtain it via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific task run execution.", + "enum": null, + "inferrable": true + }, + { + "name": "task_run_id", + "type": "string", + "required": true, + "description": "A UUID string to identify the specific task run execution.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tasks_runs_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetTaskRunDetails", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "b1c2e3f4-g5h6-7i8j-9k0l-m1n2o3p4q5r6", + "type": "string", + "required": true + }, + "task_run_id": { + "value": "f1e2d3c4-b5a6-7e8f-9g0h-i1j2k3l4m5n6", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTwilioPhoneNumbers", + "qualifiedName": "PosthogApi.GetTwilioPhoneNumbers", + "fullyQualifiedName": "PosthogApi.GetTwilioPhoneNumbers@2.0.0", + "description": "Retrieve Twilio phone numbers for a specific integration.\n\nUse this tool to fetch all Twilio phone numbers associated with a particular integration within a project environment. Useful for monitoring or managing communication channels.", + "parameters": [ + { + "name": "integration_identifier", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the Twilio integration for which phone numbers should be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Use /api/projects/ to retrieve the ID if needed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_twilio_phone_numbers_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetTwilioPhoneNumbers", + "parameters": { + "integration_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWarehouseSavedQuery", + "qualifiedName": "PosthogApi.GetWarehouseSavedQuery", + "fullyQualifiedName": "PosthogApi.GetWarehouseSavedQuery@2.0.0", + "description": "Retrieve details of a warehouse saved query.\n\nFetches information about a specific saved query in the warehouse environment for a given project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "saved_query_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific data warehouse saved query to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_saved_queries_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetWarehouseSavedQuery", + "parameters": { + "project_id": { + "value": "12345678-1234-5678-1234-567812345678", + "type": "string", + "required": true + }, + "saved_query_id": { + "value": "87654321-4321-8765-4321-567876543210", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWarehouseTable", + "qualifiedName": "PosthogApi.GetWarehouseTable", + "fullyQualifiedName": "PosthogApi.GetWarehouseTable@2.0.0", + "description": "Retrieve details of a specific warehouse table.\n\nUse this tool to get information about a particular warehouse table within a specified project in Datadog.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to retrieve the warehouse table from. Obtainable by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "warehouse_table_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the data warehouse table to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_tables_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetWarehouseTable", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "warehouse_table_id": { + "value": "abcde12345-6789-fgh0-ijkl-12345mnopqrst", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWebAnalyticsOverview", + "qualifiedName": "PosthogApi.GetWebAnalyticsOverview", + "fullyQualifiedName": "PosthogApi.GetWebAnalyticsOverview@2.0.0", + "description": "Retrieve an overview of web analytics data for a project.\n\nThis tool provides insights into web analytics, such as the number of visitors, views, sessions, bounce rate, and session duration for a specified project. It should be called when there's a need to analyze or monitor web traffic and user behavior.", + "parameters": [ + { + "name": "end_date_query", + "type": "string", + "required": true, + "description": "End date for the query in the format YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project you want to access web analytics data for. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": true, + "description": "Start date for the query in YYYY-MM-DD format. Determines the beginning of the analytics data range.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_test_accounts", + "type": "boolean", + "required": false, + "description": "Set to true to filter out test accounts from the analytics data.", + "enum": null, + "inferrable": true + }, + { + "name": "host_filter", + "type": "string", + "required": false, + "description": "Specify the host to filter web analytics data by (e.g., example.com).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'web_analytics_overview_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.GetWebAnalyticsOverview", + "parameters": { + "end_date_query": { + "value": "2023-10-31", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_12345", + "type": "string", + "required": true + }, + "start_date": { + "value": "2023-10-01", + "type": "string", + "required": true + }, + "filter_test_accounts": { + "value": true, + "type": "boolean", + "required": false + }, + "host_filter": { + "value": "example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "HaltBatchExport", + "qualifiedName": "PosthogApi.HaltBatchExport", + "fullyQualifiedName": "PosthogApi.HaltBatchExport@2.0.0", + "description": "Pause an ongoing BatchExport process.\n\n\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_id", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the specific batch export to be paused. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "The UUID string that identifies the organization related to the batch export. Required for pausing the export. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_pause_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.HaltBatchExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_id": { + "value": "c9ebc3e0-1d82-11eb-bcbc-0242ac130002", + "type": "string", + "required": false + }, + "organization_identifier": { + "value": "d4c7e703-dbbd-4e44-9f31-76f15855a0bf", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\": \"pause\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "InitiateExportBackfill", + "qualifiedName": "PosthogApi.InitiateExportBackfill", + "fullyQualifiedName": "PosthogApi.InitiateExportBackfill@2.0.0", + "description": "Triggers a backfill for a BatchExport.\n\n This tool is used to initiate a backfill process for a specified BatchExport. Note that this endpoint is deprecated; consider using the updated endpoint if possible.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the batch export to backfill. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "A string representing the unique identifier of the organization. Required for initiating the backfill process. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_backfill_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.InitiateExportBackfill", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "organization_identifier": { + "value": "org-abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"key\":\"value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "InitiateTaskWorkflow", + "qualifiedName": "PosthogApi.InitiateTaskWorkflow", + "fullyQualifiedName": "PosthogApi.InitiateTaskWorkflow@2.0.0", + "description": "Initiate the workflow for a specific task stage.\n\nUse this tool to start the workflow process for a task in its current stage within a project.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "task_uuid", + "type": "string", + "required": true, + "description": "A UUID string used to uniquely identify the task to be initiated.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tasks_run_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.InitiateTaskWorkflow", + "parameters": { + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": true + }, + "task_uuid": { + "value": "6fd6e8a0-2aba-4d3e-9fb6-14ea0284c50f", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "InitiateUser2faSetup", + "qualifiedName": "PosthogApi.InitiateUser2faSetup", + "fullyQualifiedName": "PosthogApi.InitiateUser2faSetup@2.0.0", + "description": "Initiate two-factor authentication setup for a user.\n\nCall this tool to start the two-factor authentication setup process for a specified user. It is used when you need to initialize 2FA for enhanced security.", + "parameters": [ + { + "name": "user_uuid", + "type": "string", + "required": true, + "description": "A unique identifier for the user to initiate 2FA setup.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_start_2fa_setup_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.InitiateUser2faSetup", + "parameters": { + "user_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAnnotationsForProject", + "qualifiedName": "PosthogApi.ListAnnotationsForProject", + "fullyQualifiedName": "PosthogApi.ListAnnotationsForProject@2.0.0", + "description": "Retrieve annotations for a specific project.\n\nUse this tool to get a list of annotations for a specified project in Datadog.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_result_index", + "type": "integer", + "required": false, + "description": "The starting index for the results to return in pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page when retrieving annotations for a project.", + "enum": null, + "inferrable": true + }, + { + "name": "search_term", + "type": "string", + "required": false, + "description": "A search term to filter the annotations. Can be a keyword or phrase.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'annotations_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListAnnotationsForProject", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "initial_result_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_limit_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "search_term": { + "value": "bug fix", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAvailableAgents", + "qualifiedName": "PosthogApi.ListAvailableAgents", + "fullyQualifiedName": "PosthogApi.ListAvailableAgents@2.0.0", + "description": "Retrieve a list of agent definitions for tasks.\n\nUse this tool to obtain a list of available agent definitions that can be assigned to tasks within a specific project.", + "parameters": [ + { + "name": "project_identification", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Obtain the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "result_start_index", + "type": "integer", + "required": false, + "description": "The initial index to begin returning agent definitions from the list.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of agent definitions to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'agents_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListAvailableAgents", + "parameters": { + "project_identification": { + "value": "12345", + "type": "string", + "required": true + }, + "result_start_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListBackfillExports", + "qualifiedName": "PosthogApi.ListBackfillExports", + "fullyQualifiedName": "PosthogApi.ListBackfillExports@2.0.0", + "description": "Retrieve list of batch export backfills for a project.\n\nThis tool retrieves a list of batch export backfills for a specified project and batch export ID within Datadog. It allows viewing of backfills but does not support updating or deleting them.", + "parameters": [ + { + "name": "batch_export_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the batch export to retrieve backfills for. Required to specify which export's backfills are listed.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtainable via /api/projects/ call.", + "enum": null, + "inferrable": true + }, + { + "name": "ordering_field_for_results", + "type": "string", + "required": false, + "description": "Specify the field to use for ordering the backfill export results.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The pagination cursor value used to navigate through paginated results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_backfills_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListBackfillExports", + "parameters": { + "batch_export_identifier": { + "value": "export_123456", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_abc", + "type": "string", + "required": true + }, + "ordering_field_for_results": { + "value": "created_at", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_789012", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListBatchExportBackfills", + "qualifiedName": "PosthogApi.ListBatchExportBackfills", + "fullyQualifiedName": "PosthogApi.ListBatchExportBackfills@2.0.0", + "description": "Retrieve a list of batch export backfills.\n\nFetch the details of batch export backfills associated with a specified project and batch export. Useful for monitoring or auditing backfill activities.", + "parameters": [ + { + "name": "batch_export_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the batch export to retrieve specific backfill details.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access batch export backfills. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The pagination cursor for retrieving the next set of results in a paginated response.", + "enum": null, + "inferrable": true + }, + { + "name": "results_ordering_field", + "type": "string", + "required": false, + "description": "Specify the field by which to order the batch export backfills results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_backfills_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListBatchExportBackfills", + "parameters": { + "batch_export_identifier": { + "value": "be_1234567890abcdef", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_9876543210abcdef", + "type": "string", + "required": true + }, + "pagination_cursor": { + "value": "cursor_abcdef123456", + "type": "string", + "required": false + }, + "results_ordering_field": { + "value": "created_at", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListBatchExportRuns", + "qualifiedName": "PosthogApi.ListBatchExportRuns", + "fullyQualifiedName": "PosthogApi.ListBatchExportRuns@2.0.0", + "description": "Retrieve batch export runs for a specific project and export.\n\nFetches a list of runs associated with a particular batch export for a given project in Datadog. Use this tool to monitor or analyze batch export activities.", + "parameters": [ + { + "name": "batch_export_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the batch export. Used to specify which export runs to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The pagination cursor value used to fetch the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_ordering_field", + "type": "string", + "required": false, + "description": "Specify the field for ordering the results of the batch export runs. Common fields might include date, status, or name.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_runs_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListBatchExportRuns", + "parameters": { + "batch_export_identifier": { + "value": "export_12345", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": true + }, + "pagination_cursor": { + "value": "cursor_abcdef", + "type": "string", + "required": false + }, + "results_ordering_field": { + "value": "date", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListBatchExports", + "qualifiedName": "PosthogApi.ListBatchExports", + "fullyQualifiedName": "PosthogApi.ListBatchExports@2.0.0", + "description": "Retrieve a list of batch exports for an organization.\n\nUse this tool to get a list of all batch exports associated with a specific organization. Ideal for monitoring and managing export activities.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier of the organization for which to list batch exports. This is required to specify which organization's exports to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "result_offset", + "type": "integer", + "required": false, + "description": "The starting index for returning results. Useful for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page for batch exports.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListBatchExports", + "parameters": { + "organization_id": { + "value": "org_1234567890", + "type": "string", + "required": true + }, + "result_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCollaboratorsOnDashboard", + "qualifiedName": "PosthogApi.ListCollaboratorsOnDashboard", + "fullyQualifiedName": "PosthogApi.ListCollaboratorsOnDashboard@2.0.0", + "description": "Retrieve collaborators for a dashboard in a project.\n\nUse this tool to get a list of collaborators associated with a specific dashboard within a given project environment.", + "parameters": [ + { + "name": "dashboard_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the dashboard. Must be an integer and is required to retrieve collaborators.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project. Obtainable by calling the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_collaborators_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListCollaboratorsOnDashboard", + "parameters": { + "dashboard_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project-abc-123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListDashboardCollaborators", + "qualifiedName": "PosthogApi.ListDashboardCollaborators", + "fullyQualifiedName": "PosthogApi.ListDashboardCollaborators@2.0.0", + "description": "Retrieve the list of collaborators for a dashboard.\n\nUse this tool to get a list of collaborators associated with a specific dashboard within a project on Datadog.", + "parameters": [ + { + "name": "dashboard_identifier", + "type": "integer", + "required": true, + "description": "The integer ID of the dashboard for which to retrieve the list of collaborators. This ID is unique for each dashboard.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the Datadog project to access. Retrieve this by calling /api/projects.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_collaborators_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListDashboardCollaborators", + "parameters": { + "dashboard_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "abc-123-def-456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListDashboardShares", + "qualifiedName": "PosthogApi.ListDashboardShares", + "fullyQualifiedName": "PosthogApi.ListDashboardShares@2.0.0", + "description": "Retrieve information about how dashboards are shared.\n\nThis tool provides details on the sharing settings of a specific dashboard in a project. It should be called when you need to know how a dashboard is being shared.", + "parameters": [ + { + "name": "dashboard_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier for the dashboard whose sharing information is being requested.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_sharing_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListDashboardShares", + "parameters": { + "dashboard_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListDashboardTemplates", + "qualifiedName": "PosthogApi.ListDashboardTemplates", + "fullyQualifiedName": "PosthogApi.ListDashboardTemplates@2.0.0", + "description": "Retrieve a list of dashboard templates for a project.\n\nUse this tool to get all available dashboard templates within a specified project. It's useful for identifying templates you can use to set up dashboards in your project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the specific project for which you want to retrieve dashboard templates. This ID can be obtained by calling the `/api/projects/` endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of dashboard templates to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index_for_results", + "type": "integer", + "required": false, + "description": "The index from which to start returning results, useful for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboard_templates_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListDashboardTemplates", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "starting_index_for_results": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListDataColorThemes", + "qualifiedName": "PosthogApi.ListDataColorThemes", + "fullyQualifiedName": "PosthogApi.ListDataColorThemes@2.0.0", + "description": "Retrieve data color themes for a specific environment.\n\nCall this tool to obtain a list of data color themes available in a given environment within a project. It provides thematic options for displaying data visually.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access specific environment data color themes. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results. Used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to return on each page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_data_color_themes_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListDataColorThemes", + "parameters": { + "project_identifier": { + "value": "abc123", + "type": "string", + "required": true + }, + "initial_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListDatasets", + "qualifiedName": "PosthogApi.ListDatasets", + "fullyQualifiedName": "PosthogApi.ListDatasets@2.0.0", + "description": "Retrieve a list of datasets for a specific project.\n\nUse this tool to get all datasets associated with a particular project by providing the project ID.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access datasets for. Use /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "dataset_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of dataset IDs. Can include multiple IDs separated by commas.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_result_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results.", + "enum": null, + "inferrable": true + }, + { + "name": "order_datasets_by", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify the order of dataset results. Options: 'created_at', '-created_at', 'updated_at', '-updated_at'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results returned per page. This determines how many datasets are retrieved in one API call.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "Search within dataset name, description, or metadata using a keyword or phrase.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'datasets_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListDatasets", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "dataset_ids": { + "value": ["dataset1", "dataset2"], + "type": "array", + "required": false + }, + "initial_result_index": { + "value": 0, + "type": "integer", + "required": false + }, + "order_datasets_by": { + "value": ["created_at"], + "type": "array", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "search_query": { + "value": "user behavior", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEnvBatchExports", + "qualifiedName": "PosthogApi.ListEnvBatchExports", + "fullyQualifiedName": "PosthogApi.ListEnvBatchExports@2.0.0", + "description": "Retrieve the list of batch exports for a specific environment.\n\nUse this tool to obtain a list of batch exports associated with a specific project environment. It is useful for monitoring and managing environment-related data exports.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The Project ID to access for fetching batch exports. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_result_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results. Use this to navigate pages.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListEnvBatchExports", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "initial_result_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEnvironmentDashboards", + "qualifiedName": "PosthogApi.ListEnvironmentDashboards", + "fullyQualifiedName": "PosthogApi.ListEnvironmentDashboards@2.0.0", + "description": "Retrieve dashboards for a specific environment.\n\nUse this tool to get a list of dashboards associated with a specific environment in a Datadog project. It's useful for monitoring and managing different environments.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID required to access a specific environment in Datadog. Use the /api/projects/ endpoint to find the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_index_for_results", + "type": "integer", + "required": false, + "description": "The index from which to start returning results, useful for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response. Accepted values are 'json' or 'txt'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of dashboard results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListEnvironmentDashboards", + "parameters": { + "project_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "initial_index_for_results": { + "value": 0, + "type": "integer", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEnvironmentDatasetItems", + "qualifiedName": "PosthogApi.ListEnvironmentDatasetItems", + "fullyQualifiedName": "PosthogApi.ListEnvironmentDatasetItems@2.0.0", + "description": "Retrieve dataset items for a specific environment.\n\nUse this tool to fetch and list all dataset items within a specified environment, given a project ID.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project you're accessing. Use /api/projects/ to find it.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_dataset_id", + "type": "string", + "required": false, + "description": "Specify the dataset ID to filter the results by a specific dataset.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page. This defines pagination size.", + "enum": null, + "inferrable": true + }, + { + "name": "results_start_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results. Use this to control the starting point of the returned dataset items.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dataset_items_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListEnvironmentDatasetItems", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "filter_by_dataset_id": { + "value": "67890", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "results_start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEnvironmentDatasets", + "qualifiedName": "PosthogApi.ListEnvironmentDatasets", + "fullyQualifiedName": "PosthogApi.ListEnvironmentDatasets@2.0.0", + "description": "Retrieve datasets for a specified project environment.\n\nThis tool retrieves a list of datasets associated with a specified project environment within Datadog. It should be called when you need to view datasets for a particular project's environment.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "dataset_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of dataset IDs to filter results. Provide multiple IDs separated by commas.", + "enum": null, + "inferrable": true + }, + { + "name": "ordering_criteria", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify the ordering of the dataset results. Options include `created_at`, `-created_at`, `updated_at`, `-updated_at`. Multiple criteria can be provided as a list.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of datasets to return per page. This is used to control pagination and manage the volume of data retrieved in a single call.", + "enum": null, + "inferrable": true + }, + { + "name": "results_start_index", + "type": "integer", + "required": false, + "description": "The initial index to start returning datasets from, for pagination purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "search_terms", + "type": "string", + "required": false, + "description": "Search terms to filter datasets by name, description, or metadata.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_datasets_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListEnvironmentDatasets", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "dataset_ids": { + "value": ["dataset_1", "dataset_2"], + "type": "array", + "required": false + }, + "ordering_criteria": { + "value": ["created_at", "-updated_at"], + "type": "array", + "required": false + }, + "results_limit_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "results_start_index": { + "value": 0, + "type": "integer", + "required": false + }, + "search_terms": { + "value": "user activity", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEnvironmentEvaluations", + "qualifiedName": "PosthogApi.ListEnvironmentEvaluations", + "fullyQualifiedName": "PosthogApi.ListEnvironmentEvaluations@2.0.0", + "description": "Retrieve evaluations for a specific project environment.\n\nCall this tool to obtain a list of evaluations for the environment of a specified project in Datadog. Useful for monitoring and analyzing environment performance and configurations.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project to access evaluations. Retrieve via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "evaluation_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of evaluation IDs to filter results. Multiple IDs allowed, separated by commas.", + "enum": null, + "inferrable": true + }, + { + "name": "evaluation_ordering", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify the ordering of results. Use created_at, updated_at, or name, with optional '-' for descending.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_enabled_status", + "type": "boolean", + "required": false, + "description": "Filter by enabled (true) or disabled (false) evaluations.", + "enum": null, + "inferrable": true + }, + { + "name": "results_offset_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results, allowing pagination control.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page in the environment evaluations list.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "Search in the evaluation's name or description. Use this to filter results by specific keywords.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_evaluations_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListEnvironmentEvaluations", + "parameters": { + "project_identifier": { + "value": "proj_12345", + "type": "string", + "required": true + }, + "evaluation_ids": { + "value": ["eval_1", "eval_2", "eval_3"], + "type": "array", + "required": false + }, + "evaluation_ordering": { + "value": ["created_at", "-updated_at"], + "type": "array", + "required": false + }, + "filter_by_enabled_status": { + "value": true, + "type": "boolean", + "required": false + }, + "results_offset_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "search_query": { + "value": "conversion", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEnvironmentExports", + "qualifiedName": "PosthogApi.ListEnvironmentExports", + "fullyQualifiedName": "PosthogApi.ListEnvironmentExports@2.0.0", + "description": "Fetches a list of batch export runs for a given environment.\n\nUse this tool to retrieve detailed information about batch export runs for a specific environment within a Datadog project. It requires specifying the project and batch export identifiers.", + "parameters": [ + { + "name": "batch_export_identifier", + "type": "string", + "required": true, + "description": "The ID of the batch export you wish to access. Required to retrieve batch export runs for a specific project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project you want to access in Datadog. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by_field", + "type": "string", + "required": false, + "description": "Specify the field used to order the batch export run results. This determines the sorting criteria for the list of export runs.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The value used for paginating results in a list of export runs. It allows fetching subsequent pages of results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_runs_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListEnvironmentExports", + "parameters": { + "batch_export_identifier": { + "value": "export_12345", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_98765", + "type": "string", + "required": true + }, + "order_by_field": { + "value": "created_at", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEnvironmentGroups", + "qualifiedName": "PosthogApi.ListEnvironmentGroups", + "fullyQualifiedName": "PosthogApi.ListEnvironmentGroups@2.0.0", + "description": "Retrieve all groups for a specific environment's group type.\n\nUse this tool to list all groups of a given group type within a specific environment. Ensure to specify the group type index to get the desired data.", + "parameters": [ + { + "name": "group_type_index", + "type": "integer", + "required": true, + "description": "The index representing the specific group type to list. Use this to filter groups by type.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "ID of the project to access. Retrieve the ID from the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "search_group_name", + "type": "string", + "required": true, + "description": "Search term for the group name to filter results.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The pagination cursor value to navigate through the paginated list of environment groups.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_groups_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListEnvironmentGroups", + "parameters": { + "group_type_index": { + "value": 1, + "type": "integer", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "search_group_name": { + "value": "example_group", + "type": "string", + "required": true + }, + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEnvironmentInsights", + "qualifiedName": "PosthogApi.ListEnvironmentInsights", + "fullyQualifiedName": "PosthogApi.ListEnvironmentInsights@2.0.0", + "description": "Retrieve sharing details of environment insights.\n\nFetches the sharing details of insights related to specific environments using the provided project and insight IDs.", + "parameters": [ + { + "name": "insight_id", + "type": "integer", + "required": true, + "description": "The identifier for the specific insight. Provide as an integer to specify which insight's sharing details to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the project to access. Retrieve via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_sharing_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListEnvironmentInsights", + "parameters": { + "insight_id": { + "value": 123, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project-xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEnvironmentIntegrations", + "qualifiedName": "PosthogApi.ListEnvironmentIntegrations", + "fullyQualifiedName": "PosthogApi.ListEnvironmentIntegrations@2.0.0", + "description": "Retrieve a list of integrations for a specified environment.\n\nUse this tool to get the integrations associated with a specific project environment in Datadog. Ideal for users looking to manage or view integrations for different environments within their projects.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID for accessing the desired project's environment. Obtain this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page for the environment integrations list.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return results, used for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListEnvironmentIntegrations", + "parameters": { + "project_identifier": { + "value": "1234-5678-91011", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "starting_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEnvironmentPluginLogs", + "qualifiedName": "PosthogApi.ListEnvironmentPluginLogs", + "fullyQualifiedName": "PosthogApi.ListEnvironmentPluginLogs@2.0.0", + "description": "Retrieve logs for a plugin configuration in a specific environment.\n\nUse this tool to obtain logs related to a particular plugin configuration within a specified environment. Useful for debugging or monitoring plugin activities.", + "parameters": [ + { + "name": "plugin_configuration_id", + "type": "string", + "required": true, + "description": "The identifier for the plugin configuration to retrieve logs for. Required to specify which plugin configuration's logs to access.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access logs for. Obtain this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_offset_index", + "type": "integer", + "required": false, + "description": "The starting index for the results to return from the API. Used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_plugin_configs_logs_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListEnvironmentPluginLogs", + "parameters": { + "plugin_configuration_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj-98765", + "type": "string", + "required": true + }, + "results_offset_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListEnvironmentSubscriptions", + "qualifiedName": "PosthogApi.ListEnvironmentSubscriptions", + "fullyQualifiedName": "PosthogApi.ListEnvironmentSubscriptions@2.0.0", + "description": "Retrieve subscriptions for environment projects.\n\nUse this tool to obtain a list of all subscriptions associated with specific environment projects. Ideal for tracking or managing environment-related activities.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access its environment subscriptions. Obtain this ID from the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "result_start_index", + "type": "integer", + "required": false, + "description": "Initial index to start retrieving results from for pagination purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_subscriptions_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListEnvironmentSubscriptions", + "parameters": { + "project_id": { + "value": "12345-abcde-fghij-67890", + "type": "string", + "required": true + }, + "result_start_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListErrorTrackingAssignmentRules", + "qualifiedName": "PosthogApi.ListErrorTrackingAssignmentRules", + "fullyQualifiedName": "PosthogApi.ListErrorTrackingAssignmentRules@2.0.0", + "description": "Retrieve error tracking assignment rules for a given environment.\n\nUse this tool to get a list of error tracking assignment rules for a specified environment within a project. It helps in understanding the rules applied in error tracking for different environments.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Retrieve it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page when listing error tracking assignment rules.", + "enum": null, + "inferrable": true + }, + { + "name": "results_start_index", + "type": "integer", + "required": false, + "description": "The initial index to start returning results from within the list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_assignment_rules_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListErrorTrackingAssignmentRules", + "parameters": { + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "results_start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListErrorTrackingFingerprints", + "qualifiedName": "PosthogApi.ListErrorTrackingFingerprints", + "fullyQualifiedName": "PosthogApi.ListErrorTrackingFingerprints@2.0.0", + "description": "Retrieve error tracking fingerprints for a specific project.\n\nThis tool retrieves a list of error tracking fingerprints for a given project, allowing users to analyze and monitor errors efficiently.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project you want to access. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_index_for_results", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results for the error tracking fingerprints list.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_fingerprints_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListErrorTrackingFingerprints", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "initial_index_for_results": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListErrorTrackingGroupingRules", + "qualifiedName": "PosthogApi.ListErrorTrackingGroupingRules", + "fullyQualifiedName": "PosthogApi.ListErrorTrackingGroupingRules@2.0.0", + "description": "Retrieve error tracking grouping rules for a project.\n\nThis tool fetches the error tracking grouping rules for a specified project within Datadog environments. It is useful for understanding how errors are categorized and grouped in the project's monitoring setup.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_index_for_results", + "type": "integer", + "required": false, + "description": "The starting index from which to return results, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page when listing error tracking grouping rules.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_grouping_rules_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListErrorTrackingGroupingRules", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "initial_index_for_results": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListErrorTrackingReleases", + "qualifiedName": "PosthogApi.ListErrorTrackingReleases", + "fullyQualifiedName": "PosthogApi.ListErrorTrackingReleases@2.0.0", + "description": "Retrieve releases from error tracking for a specific environment.\n\nFetches a list of releases related to error tracking within a specified environment of a project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project to access. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of results to return per page for error tracking releases.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index_for_results", + "type": "integer", + "required": false, + "description": "The starting index for the results to be returned. Use this to paginate results in the list of error tracking releases.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_releases_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListErrorTrackingReleases", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "start_index_for_results": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListErrorTrackingSuppressionRules", + "qualifiedName": "PosthogApi.ListErrorTrackingSuppressionRules", + "fullyQualifiedName": "PosthogApi.ListErrorTrackingSuppressionRules@2.0.0", + "description": "List error tracking suppression rules for a project environment.\n\nFetches the error tracking suppression rules for a specified project environment. Use this tool to retrieve information about existing suppression rules within a particular environment.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_start_index", + "type": "integer", + "required": false, + "description": "The starting index for the results to be returned, useful for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_suppression_rules_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListErrorTrackingSuppressionRules", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "results_start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListErrorTrackingSymbolSets", + "qualifiedName": "PosthogApi.ListErrorTrackingSymbolSets", + "fullyQualifiedName": "PosthogApi.ListErrorTrackingSymbolSets@2.0.0", + "description": "Retrieve error tracking symbol sets for a project.\n\nThis tool retrieves a list of error tracking symbol sets associated with a specific project environment in Datadog. Use this when you need to access symbol set information for debugging or monitoring purposes.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_symbol_sets_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListErrorTrackingSymbolSets", + "parameters": { + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListExperimentSavedMetrics", + "qualifiedName": "PosthogApi.ListExperimentSavedMetrics", + "fullyQualifiedName": "PosthogApi.ListExperimentSavedMetrics@2.0.0", + "description": "Retrieve saved metrics for an experiment in a project.\n\nUse this tool to get a list of saved metrics from an experiment within a specified project. This helps in analyzing experiment results and performance.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_result_index", + "type": "integer", + "required": false, + "description": "The starting index for returning results, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of metric results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiment_saved_metrics_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListExperimentSavedMetrics", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "initial_result_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListExperimentsEligibleFeatureFlags", + "qualifiedName": "PosthogApi.ListExperimentsEligibleFeatureFlags", + "fullyQualifiedName": "PosthogApi.ListExperimentsEligibleFeatureFlags@2.0.0", + "description": "Retrieve feature flags eligible for experiments.\n\nThis tool retrieves a list of feature flags that can be used in experiments. Eligible flags must be multivariate with at least two variants and have 'control' as the first variant key. You can filter results by flag key, name, active status, creator ID, order, and evaluation runtime. Pagination options include limit and offset.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access. Use /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiments_eligible_feature_flags_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListExperimentsEligibleFeatureFlags", + "parameters": { + "project_id": { + "value": "12345-abcd-67890-efgh", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListFeatureFlags", + "qualifiedName": "PosthogApi.ListFeatureFlags", + "fullyQualifiedName": "PosthogApi.ListFeatureFlags@2.0.0", + "description": "Retrieve feature flags for a specified project.\n\nUse this tool to fetch all feature flags associated with a given project. Useful for managing and reviewing the state of feature flags within an application.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The identifier for the project to access feature flags. Retrieve using /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_feature_flag_keys", + "type": "string", + "required": false, + "description": "A JSON-encoded list of feature flag keys to exclude from the results. Useful for filtering.", + "enum": null, + "inferrable": true + }, + { + "name": "feature_flag_search_term", + "type": "string", + "required": false, + "description": "Search for a feature flag by its key or name, case insensitive.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_active_status", + "type": "string", + "required": false, + "description": "Filter feature flags by active status. Use 'STALE', 'false', or 'true'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_evaluation_runtime", + "type": "string", + "required": false, + "description": "Filter feature flags by their evaluation runtime. Options: 'both', 'client', 'server'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_tags", + "type": "string", + "required": false, + "description": "A JSON-encoded list of tag names to filter feature flags by. Use this to specify which tags should be included in the results.", + "enum": null, + "inferrable": true + }, + { + "name": "flag_type", + "type": "string", + "required": false, + "description": "Specifies the feature flag type to filter results. Options are 'boolean', 'experiment', or 'multivariant'.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_creator_user_id", + "type": "string", + "required": false, + "description": "The User ID that initially created the feature flag. It helps filter feature flags created by a specific user.", + "enum": null, + "inferrable": true + }, + { + "name": "results_offset_index", + "type": "integer", + "required": false, + "description": "The starting index for the results to be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of feature flags to return for each page of results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListFeatureFlags", + "parameters": { + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": true + }, + "exclude_feature_flag_keys": { + "value": "[\"flag_1\", \"flag_2\"]", + "type": "string", + "required": false + }, + "feature_flag_search_term": { + "value": "new_feature", + "type": "string", + "required": false + }, + "filter_by_active_status": { + "value": "true", + "type": "string", + "required": false + }, + "filter_by_evaluation_runtime": { + "value": "both", + "type": "string", + "required": false + }, + "filter_by_tags": { + "value": "[\"tag1\", \"tag2\"]", + "type": "string", + "required": false + }, + "flag_type": { + "value": "boolean", + "type": "string", + "required": false + }, + "initial_creator_user_id": { + "value": "user_56789", + "type": "string", + "required": false + }, + "results_offset_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListFileSystems", + "qualifiedName": "PosthogApi.ListFileSystems", + "fullyQualifiedName": "PosthogApi.ListFileSystems@2.0.0", + "description": "Fetches the list of file systems for a given project.\n\nUse this tool to retrieve a list of all file systems associated with a specific project in Datadog. This is useful for managing and monitoring project storage.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project for which you want to list file systems. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page for file system listings.", + "enum": null, + "inferrable": true + }, + { + "name": "search_term", + "type": "string", + "required": false, + "description": "A search term to filter the list of file systems.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the file system results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListFileSystems", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "search_term": { + "value": "backup", + "type": "string", + "required": false + }, + "start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListFileSystemShortcuts", + "qualifiedName": "PosthogApi.ListFileSystemShortcuts", + "fullyQualifiedName": "PosthogApi.ListFileSystemShortcuts@2.0.0", + "description": "Retrieve file system shortcuts for a specified project.\n\nThis tool fetches a list of file system shortcuts for a specific project by its project ID. It should be called when you need to view or manage shortcuts within a project's environment.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project whose file system shortcuts you want to access. Use the /api/projects/ call to find the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "result_start_index", + "type": "integer", + "required": false, + "description": "The initial index from which to start returning results for the file system shortcuts list.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page when retrieving file system shortcuts.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_shortcut_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListFileSystemShortcuts", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "result_start_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListGroupsByType", + "qualifiedName": "PosthogApi.ListGroupsByType", + "fullyQualifiedName": "PosthogApi.ListGroupsByType@2.0.0", + "description": "Retrieve all groups for a specified group type.\n\nUse this tool to list all groups of a given type within a project. Specify the group type to get corresponding groups.", + "parameters": [ + { + "name": "group_type_to_list", + "type": "integer", + "required": true, + "description": "Specify the type of the group to retrieve by providing the index.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID of the target project. It can be found by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "search_group_name", + "type": "string", + "required": true, + "description": "Search for a group by its name. Provide keywords or partial names to filter the group list.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_value", + "type": "string", + "required": false, + "description": "Provide the pagination cursor value to navigate through paginated results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListGroupsByType", + "parameters": { + "group_type_to_list": { + "value": 1, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_12345", + "type": "string", + "required": true + }, + "search_group_name": { + "value": "Engineering", + "type": "string", + "required": true + }, + "pagination_cursor_value": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListGroupTypes", + "qualifiedName": "PosthogApi.ListGroupTypes", + "fullyQualifiedName": "PosthogApi.ListGroupTypes@2.0.0", + "description": "Retrieve list of group types for a specific project.\n\nCall this tool to get the different types of groups available within a specific project on Datadog.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project you want to access. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_types_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListGroupTypes", + "parameters": { + "project_identifier": { + "value": "12345-abcde-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListHogFunctions", + "qualifiedName": "PosthogApi.ListHogFunctions", + "fullyQualifiedName": "PosthogApi.ListHogFunctions@2.0.0", + "description": "Retrieve a list of hog functions for a project.\n\nUse this tool to obtain a list of hog functions associated with a specific project ID. Each API call logs a new view of the file system.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project you want to access. Obtain via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "created_at", + "type": "string", + "required": false, + "description": "Specify the creation date for filtering hog functions. Use ISO 8601 format (YYYY-MM-DD).", + "enum": null, + "inferrable": true + }, + { + "name": "created_by_user_id", + "type": "integer", + "required": false, + "description": "The unique integer ID of the user who created the resource.", + "enum": null, + "inferrable": true + }, + { + "name": "function_id", + "type": "string", + "required": false, + "description": "The unique identifier for the hog function to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "hog_function_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of hog function types, specified as strings. Supports multiple values.", + "enum": null, + "inferrable": true + }, + { + "name": "include_only_enabled_functions", + "type": "boolean", + "required": false, + "description": "Include only enabled functions. Set to true to include enabled functions, false to include all.", + "enum": null, + "inferrable": true + }, + { + "name": "result_offset", + "type": "integer", + "required": false, + "description": "The starting index for the returned results, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Integer specifying the number of results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "search_term", + "type": "string", + "required": false, + "description": "A search term used to filter the list of hog functions based on specific criteria.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_timestamp", + "type": "string", + "required": false, + "description": "The timestamp for the latest update of the hog function. Use an ISO 8601 format.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hog_functions_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListHogFunctions", + "parameters": { + "project_identifier": { + "value": "proj-123456", + "type": "string", + "required": true + }, + "created_at": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "created_by_user_id": { + "value": 42, + "type": "integer", + "required": false + }, + "function_id": { + "value": "func-7890", + "type": "string", + "required": false + }, + "hog_function_types": { + "value": ["type1", "type2"], + "type": "array", + "required": false + }, + "include_only_enabled_functions": { + "value": true, + "type": "boolean", + "required": false + }, + "result_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "search_term": { + "value": "analytics", + "type": "string", + "required": false + }, + "updated_timestamp": { + "value": "2023-10-02T12:34:56Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListInsightSharing", + "qualifiedName": "PosthogApi.ListInsightSharing", + "fullyQualifiedName": "PosthogApi.ListInsightSharing@2.0.0", + "description": "Retrieve sharing details for a specific insight.\n\nUse this tool to get information about the sharing status and access details for a specific insight within a project. Useful for managing and reviewing who has access to insights in a project.", + "parameters": [ + { + "name": "insight_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the specific insight you want to retrieve sharing details for. This is an integer value that uniquely represents an insight within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_sharing_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListInsightSharing", + "parameters": { + "insight_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_xyz_123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListOrganizationDomains", + "qualifiedName": "PosthogApi.ListOrganizationDomains", + "fullyQualifiedName": "PosthogApi.ListOrganizationDomains@2.0.0", + "description": "Retrieve a list of domains for a specified organization.\n\nUse this tool to get a comprehensive list of domains associated with a given organization. It helps in managing and inspecting domain information within an organization.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization whose domains are to be retrieved. This is required to specify which organization's domains you want to list.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_index_for_results", + "type": "integer", + "required": false, + "description": "The starting index from which the domain results are returned, useful for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page. Use this to control pagination of domain listings.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'domains_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListOrganizationDomains", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "initial_index_for_results": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListOrganizationInvites", + "qualifiedName": "PosthogApi.ListOrganizationInvites", + "fullyQualifiedName": "PosthogApi.ListOrganizationInvites@2.0.0", + "description": "Retrieve all pending invites for an organization.\n\nThis tool retrieves a list of all pending invitations to join a specified organization. It should be called when you need to see who has been invited but not yet joined.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization whose pending invites you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page when listing organization invites.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results. Use this for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'invites_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListOrganizationInvites", + "parameters": { + "organization_id": { + "value": "org_12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListOrganizationMembers", + "qualifiedName": "PosthogApi.ListOrganizationMembers", + "fullyQualifiedName": "PosthogApi.ListOrganizationMembers@2.0.0", + "description": "Retrieve the list of members in an organization.\n\nUse this tool to obtain a list of members within a specified organization on Datadog. It should be called when you need comprehensive member details for an organization.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization whose members are to be listed. This ID determines which organization's members will be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page when listing organization members.", + "enum": null, + "inferrable": true + }, + { + "name": "results_start_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results, for pagination purposes.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'members_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListOrganizationMembers", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "results_start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListOrganizationRoles", + "qualifiedName": "PosthogApi.ListOrganizationRoles", + "fullyQualifiedName": "PosthogApi.ListOrganizationRoles@2.0.0", + "description": "Fetches the list of roles for a specified organization.", + "parameters": [ + { + "name": "organization_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the organization to fetch roles for. Must be a valid string identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of roles to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_result_index", + "type": "integer", + "required": false, + "description": "The starting index from which to return role results for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'roles_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListOrganizationRoles", + "parameters": { + "organization_identifier": { + "value": "org_123456", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "starting_result_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListOrganizations", + "qualifiedName": "PosthogApi.ListOrganizations", + "fullyQualifiedName": "PosthogApi.ListOrganizations@2.0.0", + "description": "Retrieve a list of organizations.\n\nUse this tool to obtain a list of organizations from the Datadog service.", + "parameters": [ + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of organization results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_start_index", + "type": "integer", + "required": false, + "description": "The initial index from where to start returning results. Useful for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListOrganizations", + "parameters": { + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "results_start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPersistedFolders", + "qualifiedName": "PosthogApi.ListPersistedFolders", + "fullyQualifiedName": "PosthogApi.ListPersistedFolders@2.0.0", + "description": "Retrieve persisted folders for a given project.\n\nUse this tool to obtain a list of all persisted folders associated with a specific project ID in Datadog.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID of the project to access. Obtain the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index", + "type": "integer", + "required": false, + "description": "The initial index from which to start returning the results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persisted_folder_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListPersistedFolders", + "parameters": { + "project_id": { + "value": "proj_12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPluginConfigLogs", + "qualifiedName": "PosthogApi.ListPluginConfigLogs", + "fullyQualifiedName": "PosthogApi.ListPluginConfigLogs@2.0.0", + "description": "Retrieve logs for a specific plugin configuration.\n\nThis tool retrieves logs related to a specific plugin configuration within a project. It should be called when you need to access and review logs for debugging, monitoring, or auditing purposes.", + "parameters": [ + { + "name": "plugin_configuration_id", + "type": "string", + "required": true, + "description": "The ID of the plugin configuration whose logs you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project whose plugin logs you want to access. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page for the log list.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index", + "type": "integer", + "required": false, + "description": "The starting index for results retrieval, used to paginate through logs.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'plugin_configs_logs_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListPluginConfigLogs", + "parameters": { + "plugin_configuration_id": { + "value": "config_123456", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_abcde", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 100, + "type": "integer", + "required": false + }, + "starting_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPosthogExperiments", + "qualifiedName": "PosthogApi.ListPosthogExperiments", + "fullyQualifiedName": "PosthogApi.ListPosthogExperiments@2.0.0", + "description": "Retrieve a list of experiments from a Datadog project.\n\nUse this tool to get a list of all experiments associated with a specific Datadog project. It should be called when you need to access experiment data for a particular project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the Datadog project to access. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "page_result_limit", + "type": "integer", + "required": false, + "description": "The number of experiment results to return per page. Specify as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index", + "type": "integer", + "required": false, + "description": "The index from which to start returning results. Used for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiments_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListPosthogExperiments", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "page_result_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPosthogNotebooks", + "qualifiedName": "PosthogApi.ListPosthogNotebooks", + "fullyQualifiedName": "PosthogApi.ListPosthogNotebooks@2.0.0", + "description": "Retrieve a list of notebooks from Datadog.\n\nUse this tool to get a list of notebooks associated with a specific project in Datadog. Ideal for viewing or managing notebooks within the Datadog platform.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access notebooks for. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_logged_in_user", + "type": "string", + "required": false, + "description": "Provide any value to filter results to notebooks created by the logged-in user.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_criteria", + "type": "string", + "required": false, + "description": "String to filter notebooks. Use colon-separated key-value pairs, separated by space or comma.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_date_before", + "type": "string", + "required": false, + "description": "Filter for notebooks created before this specified date and time. Use ISO 8601 format (e.g., '2023-10-01T15:00:00Z').", + "enum": null, + "inferrable": true + }, + { + "name": "filter_from_date", + "type": "string", + "required": false, + "description": "Filter for notebooks created after this specific date and time. The date should be provided in an appropriate format, such as ISO 8601.", + "enum": null, + "inferrable": true + }, + { + "name": "notebook_creator_uuid", + "type": "integer", + "required": false, + "description": "The UUID of the notebook's creator. Use this to filter notebooks by their creator.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of notebook results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index_for_results", + "type": "integer", + "required": false, + "description": "The index to start returning results from. This is used for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'notebooks_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListPosthogNotebooks", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "filter_by_logged_in_user": { + "value": "yes", + "type": "string", + "required": false + }, + "filter_criteria": { + "value": "status:active,tag:project", + "type": "string", + "required": false + }, + "filter_date_before": { + "value": "2023-10-01T15:00:00Z", + "type": "string", + "required": false + }, + "filter_from_date": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "notebook_creator_uuid": { + "value": 67890, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "starting_index_for_results": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListProjectActions", + "qualifiedName": "PosthogApi.ListProjectActions", + "fullyQualifiedName": "PosthogApi.ListProjectActions@2.0.0", + "description": "Retrieve and log actions for a specific project.\n\nUse this tool to get the list of actions performed within a specified project. Every call to this endpoint logs a new view of the project actions.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access specific project actions. Obtain via /api/projects/ if unknown.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format for the response data. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index_for_results", + "type": "integer", + "required": false, + "description": "The initial index from which results should start when retrieving project actions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListProjectActions", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "starting_index_for_results": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListProjectCohorts", + "qualifiedName": "PosthogApi.ListProjectCohorts", + "fullyQualifiedName": "PosthogApi.ListProjectCohorts@2.0.0", + "description": "Retrieve a list of cohorts for a given project.\n\nUse this tool to get a list of cohort views within a specified project. It is useful when tracking or analyzing different cohort data associated with a project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project to access. To obtain this ID, call /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_start_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results. Use this to paginate through larger sets of data.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cohorts_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListProjectCohorts", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "results_start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListProjectDatasetItems", + "qualifiedName": "PosthogApi.ListProjectDatasetItems", + "fullyQualifiedName": "PosthogApi.ListProjectDatasetItems@2.0.0", + "description": "Retrieve dataset items for a specific project in Datadog.\n\nUse this tool to get a list of dataset items from a specific project by providing the project ID. Useful for accessing or viewing datasets associated with a particular project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project whose dataset items you want to retrieve. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_dataset_id", + "type": "string", + "required": false, + "description": "A string representing the dataset ID to filter the results by.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of dataset items to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the dataset items, used for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dataset_items_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListProjectDatasetItems", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "filter_by_dataset_id": { + "value": "dataset_abc", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListProjectEnvironments", + "qualifiedName": "PosthogApi.ListProjectEnvironments", + "fullyQualifiedName": "PosthogApi.ListProjectEnvironments@2.0.0", + "description": "Get a list of environments for a specific project.\n\nUse this tool to retrieve all environments within a given project for your organization.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project whose environments you want to list. Retrieve this by calling `/api/projects/`.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_result_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results, used to paginate.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of environments to return on each page of results. Specify an integer value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListProjectEnvironments", + "parameters": { + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": true + }, + "initial_result_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListProjectExports", + "qualifiedName": "PosthogApi.ListProjectExports", + "fullyQualifiedName": "PosthogApi.ListProjectExports@2.0.0", + "description": "Retrieve a list of exports for a given project ID.\n\nUse this tool to get a list of export data associated with a specific project ID. It helps in obtaining export details available for any project in Datadog.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access exports for. Use /api/projects/ to find the project ID.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page for export details.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index", + "type": "integer", + "required": false, + "description": "The initial index to start returning results from. Use this to paginate results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'exports_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListProjectExports", + "parameters": { + "project_id": { + "value": "12345-abcd-6789-efgh", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListProjectFileSystems", + "qualifiedName": "PosthogApi.ListProjectFileSystems", + "fullyQualifiedName": "PosthogApi.ListProjectFileSystems@2.0.0", + "description": "Retrieve file systems for a given project environment.\n\nFetches a list of file systems associated with a specified project environment using the project ID. Useful for obtaining storage details within the project's context.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to retrieve this ID if unknown.", + "enum": null, + "inferrable": true + }, + { + "name": "initial_result_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results. Use this to paginate through data.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page_limit", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page when listing file systems.", + "enum": null, + "inferrable": true + }, + { + "name": "search_term", + "type": "string", + "required": false, + "description": "A search term to filter the results based on specific criteria.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListProjectFileSystems", + "parameters": { + "project_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "initial_result_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "search_term": { + "value": "user_uploads", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListProjectHogFunctions", + "qualifiedName": "PosthogApi.ListProjectHogFunctions", + "fullyQualifiedName": "PosthogApi.ListProjectHogFunctions@2.0.0", + "description": "Retrieve a list of hog functions for a given project.\n\nThis tool retrieves a list of hog functions associated with a specified project. It should be called when there is a need to track or analyze file system views related to the project's hog functions.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The Project ID to access the specific project. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "created_at", + "type": "string", + "required": false, + "description": "The creation date of the hog function. Expected in ISO 8601 format (e.g., 2023-10-11T15:00:00Z).", + "enum": null, + "inferrable": true + }, + { + "name": "created_by_user_id", + "type": "integer", + "required": false, + "description": "The user ID of the person who created the hog functions.", + "enum": null, + "inferrable": true + }, + { + "name": "function_id", + "type": "string", + "required": false, + "description": "The unique identifier for the hog function to be retrieved. Specify this to get details of a specific function.", + "enum": null, + "inferrable": true + }, + { + "name": "function_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify one or more hog function types to filter by, separated by commas.", + "enum": null, + "inferrable": true + }, + { + "name": "include_enabled_functions", + "type": "boolean", + "required": false, + "description": "If set to true, returns only enabled hog functions; otherwise, returns all functions.", + "enum": null, + "inferrable": true + }, + { + "name": "results_offset", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results for paginated data.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page for the hog functions list.", + "enum": null, + "inferrable": true + }, + { + "name": "search_term", + "type": "string", + "required": false, + "description": "A string used to search and filter the list of hog functions.", + "enum": null, + "inferrable": true + }, + { + "name": "update_timestamp", + "type": "string", + "required": false, + "description": "A timestamp indicating the last update time of the hog function. Use format YYYY-MM-DDTHH:MM:SSZ.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_hog_functions_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListProjectHogFunctions", + "parameters": { + "project_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "created_at": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "created_by_user_id": { + "value": 42, + "type": "integer", + "required": false + }, + "function_id": { + "value": "func_789", + "type": "string", + "required": false + }, + "function_types": { + "value": ["typeA", "typeB"], + "type": "array", + "required": false + }, + "include_enabled_functions": { + "value": true, + "type": "boolean", + "required": false + }, + "results_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "search_term": { + "value": "analytics", + "type": "string", + "required": false + }, + "update_timestamp": { + "value": "2023-10-10T10:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListProjectInsights", + "qualifiedName": "PosthogApi.ListProjectInsights", + "fullyQualifiedName": "PosthogApi.ListProjectInsights@2.0.0", + "description": "Retrieve insights list for a specific project.\n\nThis tool fetches insights data for a specified project from the Datadog API. Use it to track and log file system views with each GET request.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access specific insights. Obtain it via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "creator_user_id", + "type": "integer", + "required": false, + "description": "The user ID of the creator of the insights. Provide this as an integer value to filter insights by the creator.", + "enum": null, + "inferrable": true + }, + { + "name": "insights_refresh_mode", + "type": "string", + "required": false, + "description": "Determine how aggressively to refresh insights: 'force_cache', 'blocking', 'async', 'lazy_async', 'force_blocking', or 'force_async'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_short_id", + "type": "string", + "required": false, + "description": "The short identifier for the project within Datadog. Used to specify which project's insights to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response, either 'csv' or 'json'. Choose based on your output preference.", + "enum": null, + "inferrable": true + }, + { + "name": "results_offset_index", + "type": "integer", + "required": false, + "description": "The starting index for returning results from the insights list.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of insights to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "return_basic_metadata_only", + "type": "boolean", + "required": false, + "description": "If true, return only basic insight metadata without results for a faster response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListProjectInsights", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + }, + "creator_user_id": { + "value": 789, + "type": "integer", + "required": false + }, + "insights_refresh_mode": { + "value": "async", + "type": "string", + "required": false + }, + "project_short_id": { + "value": "proj-abc", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "results_offset_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "return_basic_metadata_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListProjectIntegrations", + "qualifiedName": "PosthogApi.ListProjectIntegrations", + "fullyQualifiedName": "PosthogApi.ListProjectIntegrations@2.0.0", + "description": "Retrieve a list of integrations for a specific project.\n\nThis tool is used to get a list of integrations associated with a specific project by providing the project ID. Call this tool when you need to explore or manage the integrations linked to a project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Specify the Project ID to retrieve its associated integrations. You can find this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index_for_results", + "type": "integer", + "required": false, + "description": "The index to start returning results from, used for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListProjectIntegrations", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "starting_index_for_results": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListProjectTasks", + "qualifiedName": "PosthogApi.ListProjectTasks", + "fullyQualifiedName": "PosthogApi.ListProjectTasks@2.0.0", + "description": "Retrieve tasks for a specific project.\n\nThis tool retrieves the list of tasks associated with a given project. Use it when you need to see all units of work within a specific project.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the project for which to retrieve tasks. Obtain this ID via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of task results to return per page. Use this to limit the result set size.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index", + "type": "integer", + "required": false, + "description": "The zero-based index from which to begin returning task results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tasks_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListProjectTasks", + "parameters": { + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "start_index": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPropertyDefinitions", + "qualifiedName": "PosthogApi.ListPropertyDefinitions", + "fullyQualifiedName": "PosthogApi.ListPropertyDefinitions@2.0.0", + "description": "Retrieve a list of property definitions for a specific project.\n\nUse this tool to fetch property definitions from a specified project by providing the project ID. It returns the available property definitions related to that project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "ID of the project you're accessing. Use /api/projects/ to find it.", + "enum": null, + "inferrable": true + }, + { + "name": "event_names_json", + "type": "string", + "required": false, + "description": "A JSON-encoded string of event names to populate `is_seen_on_filtered_events` in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_core_properties", + "type": "boolean", + "required": false, + "description": "Set to true to exclude core properties from the response; false to include them.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_hidden_properties", + "type": "boolean", + "required": false, + "description": "Set to true to exclude properties marked as hidden from the results.", + "enum": null, + "inferrable": true + }, + { + "name": "excluded_properties_list", + "type": "string", + "required": false, + "description": "A JSON-encoded list of property names to exclude from the response.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_feature_flag_properties", + "type": "boolean", + "required": false, + "description": "Set to true to include only feature flag properties, false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_properties_by_event_names", + "type": "boolean", + "required": false, + "description": "Set to true to return only properties for events specified in `event_names`.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_properties_list", + "type": "string", + "required": false, + "description": "Comma-separated list of properties to filter the results by.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_index_for_group_properties", + "type": "integer", + "required": false, + "description": "Provide the group type index specifically for properties of type 'group'. This should only be set if the type is set to 'group'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_only_numerical_properties", + "type": "boolean", + "required": false, + "description": "Set to true to return only numerical property definitions, false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "property_definition_type", + "type": "string", + "required": false, + "description": "Specify which type of property definitions to return: 'event', 'person', 'group', or 'session'.", + "enum": null, + "inferrable": true + }, + { + "name": "result_start_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the results. Use this to paginate through results starting from a specific index.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page when retrieving property definitions.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "Keyword to search properties by name in the project.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "webhook_secret" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'property_definitions_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListPropertyDefinitions", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "event_names_json": { + "value": "[\"user_signup\", \"purchase_completed\"]", + "type": "string", + "required": false + }, + "exclude_core_properties": { + "value": true, + "type": "boolean", + "required": false + }, + "exclude_hidden_properties": { + "value": false, + "type": "boolean", + "required": false + }, + "excluded_properties_list": { + "value": "[\"temp_property\"]", + "type": "string", + "required": false + }, + "filter_feature_flag_properties": { + "value": false, + "type": "boolean", + "required": false + }, + "filter_properties_by_event_names": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_properties_list": { + "value": "country,age", + "type": "string", + "required": false + }, + "group_type_index_for_group_properties": { + "value": 1, + "type": "integer", + "required": false + }, + "include_only_numerical_properties": { + "value": false, + "type": "boolean", + "required": false + }, + "property_definition_type": { + "value": "event", + "type": "string", + "required": false + }, + "result_start_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "search_query": { + "value": "signup", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListRoleMemberships", + "qualifiedName": "PosthogApi.ListRoleMemberships", + "fullyQualifiedName": "PosthogApi.ListRoleMemberships@2.0.0", + "description": "Retrieve role memberships for a specified role within an organization.\n\nThis tool should be called to access a list of role memberships for a specific role in an organization. It helps in managing and viewing role assignments within Datadog.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "A unique identifier for the organization within Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "role_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the role for which memberships are to be retrieved within an organization.", + "enum": null, + "inferrable": true + }, + { + "name": "result_start_index", + "type": "integer", + "required": false, + "description": "The initial index from which to return the role membership results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page when listing role memberships.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'roles_role_memberships_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListRoleMemberships", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "role_identifier": { + "value": "role_admin", + "type": "string", + "required": true + }, + "result_start_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSessionPlaylists", + "qualifiedName": "PosthogApi.ListSessionPlaylists", + "fullyQualifiedName": "PosthogApi.ListSessionPlaylists@2.0.0", + "description": "Retrieve session recording playlists, including synthetic ones.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project you're trying to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "created_by_user_id", + "type": "integer", + "required": false, + "description": "ID of the user who created the playlist. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "playlist_short_id", + "type": "string", + "required": false, + "description": "A specific short identifier for the playlist to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "results_offset", + "type": "integer", + "required": false, + "description": "The index from which to start returning results. Useful for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recording_playlists_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListSessionPlaylists", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "created_by_user_id": { + "value": 67890, + "type": "integer", + "required": false + }, + "playlist_short_id": { + "value": "abcd1234", + "type": "string", + "required": false + }, + "results_offset": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSessionRecordings", + "qualifiedName": "PosthogApi.ListSessionRecordings", + "fullyQualifiedName": "PosthogApi.ListSessionRecordings@2.0.0", + "description": "Retrieve session recordings for a specific environment.\n\nUse this tool to get a list of session recordings for a specific project environment. It helps in monitoring and analyzing user interactions within a project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access session recordings. Use the `/api/projects/` endpoint to find this ID if unknown.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of session recordings to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index_for_results", + "type": "integer", + "required": false, + "description": "The initial index from which to return the session recordings results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recordings_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListSessionRecordings", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "starting_index_for_results": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSessionRecordingSharing", + "qualifiedName": "PosthogApi.ListSessionRecordingSharing", + "fullyQualifiedName": "PosthogApi.ListSessionRecordingSharing@2.0.0", + "description": "Retrieve sharing details for a specific session recording.\n\nUse this tool to obtain sharing information for a specified session recording within a project environment. Ideal for tracking how session recordings are being shared across different platforms or users.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to find the project ID.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_id", + "type": "string", + "required": true, + "description": "The unique ID of the session recording you want to retrieve sharing details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recordings_sharing_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListSessionRecordingSharing", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "session_recording_id": { + "value": "abcde-12345-fghij-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSharedDashboards", + "qualifiedName": "PosthogApi.ListSharedDashboards", + "fullyQualifiedName": "PosthogApi.ListSharedDashboards@2.0.0", + "description": "Retrieve shared dashboard information for a specified project.\n\nCall this tool to get details about how dashboards are shared within a specific project environment. Useful for understanding dashboard access and distribution.", + "parameters": [ + { + "name": "dashboard_identifier", + "type": "integer", + "required": true, + "description": "The unique integer ID of the dashboard whose sharing information you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access for retrieving shared dashboard details. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_sharing_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListSharedDashboards", + "parameters": { + "dashboard_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListSyntheticPlaylists", + "qualifiedName": "PosthogApi.ListSyntheticPlaylists", + "fullyQualifiedName": "PosthogApi.ListSyntheticPlaylists@2.0.0", + "description": "Retrieve synthetic session recording playlists.\n\nThis tool retrieves a list of synthetic session recording playlists for a specified project environment. It should be called when you need to access these playlists to analyze or manage session recordings.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "A string representing the Project ID to access specific project environments for synthetic session recording playlists. Obtain the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "created_by_user_id", + "type": "integer", + "required": false, + "description": "The user ID of the creator of the playlists to filter results by. If not specified, playlists by any creator will be included.", + "enum": null, + "inferrable": true + }, + { + "name": "playlist_short_id", + "type": "string", + "required": false, + "description": "A unique identifier for the playlist. Used to specify which playlist to retrieve or target.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index_for_results", + "type": "integer", + "required": false, + "description": "The starting index from which the results will be returned. Used for pagination in retrieving playlists.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recording_playlists_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListSyntheticPlaylists", + "parameters": { + "project_identifier": { + "value": "12345-abcd-67890-efgh", + "type": "string", + "required": true + }, + "created_by_user_id": { + "value": 42, + "type": "integer", + "required": false + }, + "playlist_short_id": { + "value": "short_playlist_1", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "starting_index_for_results": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListTaskRuns", + "qualifiedName": "PosthogApi.ListTaskRuns", + "fullyQualifiedName": "PosthogApi.ListTaskRuns@2.0.0", + "description": "Retrieve a list of task run executions for a specific task.\n\nUse this tool to retrieve information about all executions of a specific task in a given project. Each run represents an execution instance of the task.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Obtain it via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the task for which you want to list the run executions. Ensures retrieval of all run data related to this specific task.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page. This is useful for paginating large datasets.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index_for_results", + "type": "integer", + "required": false, + "description": "The starting index for returning results in a paginated list of task runs.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tasks_runs_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListTaskRuns", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "task_67890", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "starting_index_for_results": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListUserInterviews", + "qualifiedName": "PosthogApi.ListUserInterviews", + "fullyQualifiedName": "PosthogApi.ListUserInterviews@2.0.0", + "description": "Retrieve user interviews for a project environment.\n\nUse this tool to obtain a list of user interviews associated with a specific project environment by providing the project ID.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project for accessing user interviews. Retrieve this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "result_start_index", + "type": "integer", + "required": false, + "description": "The starting index for returning user interviews results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_user_interviews_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListUserInterviews", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "result_start_index": { + "value": 0, + "type": "integer", + "required": false + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListUsers", + "qualifiedName": "PosthogApi.ListUsers", + "fullyQualifiedName": "PosthogApi.ListUsers@2.0.0", + "description": "Retrieve a list of users from Datadog.\n\nThis tool fetches and returns a list of users associated with the Datadog account. It should be called when you need to access user information from Datadog.", + "parameters": [ + { + "name": "filter_staff_only", + "type": "boolean", + "required": false, + "description": "Set to true to list only staff members; set to false to include all users.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page when listing users.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index", + "type": "integer", + "required": false, + "description": "The index to start retrieving results from. Useful for pagination of user results.", + "enum": null, + "inferrable": true + }, + { + "name": "user_email", + "type": "string", + "required": false, + "description": "Filter users by email. Use a full or partial email address to narrow results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListUsers", + "parameters": { + "filter_staff_only": { + "value": true, + "type": "boolean", + "required": false + }, + "results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "start_index": { + "value": 0, + "type": "integer", + "required": false + }, + "user_email": { + "value": "example@domain.com", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWarehouseSavedQueries", + "qualifiedName": "PosthogApi.ListWarehouseSavedQueries", + "fullyQualifiedName": "PosthogApi.ListWarehouseSavedQueries@2.0.0", + "description": "Retrieve a list of saved warehouse queries for a project.\n\nCall this tool to obtain the saved queries for warehouse tables within a specific project environment.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project you want to access. Obtain this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number within the paginated result set to retrieve. Use for navigating through results.", + "enum": null, + "inferrable": true + }, + { + "name": "search_term", + "type": "string", + "required": false, + "description": "The term used to filter and search through the saved queries.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_saved_queries_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListWarehouseSavedQueries", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "search_term": { + "value": "user activity", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWarehouseTables", + "qualifiedName": "PosthogApi.ListWarehouseTables", + "fullyQualifiedName": "PosthogApi.ListWarehouseTables@2.0.0", + "description": "Retrieve a list of warehouse tables for a given environment.\n\nUse this tool to obtain a list of warehouse tables within a specific environment for a project. Ideal for monitoring or managing data structures in your data warehouse.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the project to access. Use /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "search_term", + "type": "string", + "required": false, + "description": "A term to filter the warehouse tables based on specific criteria.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index_for_results", + "type": "integer", + "required": false, + "description": "The index from which to begin returning the list of results for warehouse tables.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_tables_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListWarehouseTables", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "search_term": { + "value": "user_data", + "type": "string", + "required": false + }, + "starting_index_for_results": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWebExperiments", + "qualifiedName": "PosthogApi.ListWebExperiments", + "fullyQualifiedName": "PosthogApi.ListWebExperiments@2.0.0", + "description": "Retrieve a list of web experiments for a given project.\n\nUse this tool to obtain a list of web experiments associated with a specific project. It should be called when there's a need to access or manage web experiments data for project tracking or analytics.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access web experiments. Retrieve this ID via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page when retrieving web experiments.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index_for_results", + "type": "integer", + "required": false, + "description": "The initial index from which to return the experiment results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'web_experiments_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ListWebExperiments", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 10, + "type": "integer", + "required": false + }, + "start_index_for_results": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "LogTrackFilesystemViews", + "qualifiedName": "PosthogApi.LogTrackFilesystemViews", + "fullyQualifiedName": "PosthogApi.LogTrackFilesystemViews@2.0.0", + "description": "Log a new view for file system access tracking.\n\n Use this tool to log a new view every time a file system resource is accessed via GET, helping track file system views for monitoring or analytics purposes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Call /api/projects/ to obtain it. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response. Valid options are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.LogTrackFilesystemViews", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"file_path\": \"/documents/report.pdf\", \"accessed_by\": \"user@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ManageWarehouseTable", + "qualifiedName": "PosthogApi.ManageWarehouseTable", + "fullyQualifiedName": "PosthogApi.ManageWarehouseTable@2.0.0", + "description": "Create a warehouse table in Datadog environments.\n\n Use this tool to create a new warehouse table within a specified environment in Datadog. Ideal for managing data structures in your project environments.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Specify the Project ID for accessing the desired project. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_tables_file_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ManageWarehouseTable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"table_name\":\"user_data\",\"columns\":[{\"name\":\"user_id\",\"type\":\"integer\"},{\"name\":\"event_name\",\"type\":\"string\"},{\"name\":\"timestamp\",\"type\":\"datetime\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MarkActionAsDeleted", + "qualifiedName": "PosthogApi.MarkActionAsDeleted", + "fullyQualifiedName": "PosthogApi.MarkActionAsDeleted@2.0.0", + "description": "Mark an action as deleted in a specific project.\n\nUse this tool to mark an action as deleted within a specific project in Datadog. This does not hard delete the action but updates its status to deleted.", + "parameters": [ + { + "name": "action_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the action you want to mark as deleted in the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique Project ID to access the specific project. Retrieve this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response, either 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.MarkActionAsDeleted", + "parameters": { + "action_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project_67890", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MarkFeatureFlagDeleted", + "qualifiedName": "PosthogApi.MarkFeatureFlagDeleted", + "fullyQualifiedName": "PosthogApi.MarkFeatureFlagDeleted@2.0.0", + "description": "Mark a feature flag as deleted.\n\nThis tool marks a feature flag as deleted by setting its \"deleted\" status to true. It should be used when you need to effectively delete a feature flag within a project.", + "parameters": [ + { + "name": "feature_flag_id", + "type": "integer", + "required": true, + "description": "A unique integer value used to identify the feature flag.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access a specific project. Retrieve by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.MarkFeatureFlagDeleted", + "parameters": { + "feature_flag_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "my_project_678", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyAnnotation", + "qualifiedName": "PosthogApi.ModifyAnnotation", + "fullyQualifiedName": "PosthogApi.ModifyAnnotation@2.0.0", + "description": "Update specific details of an annotation in a project.\n\n This tool is used to update specific information of an existing annotation within a project on Datadog. It should be called when you need to modify details of an annotation by specifying the project and annotation IDs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "annotation_id", + "type": "integer", + "required": false, + "description": "A unique integer to identify the specific annotation to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'annotations_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyAnnotation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "annotation_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Annotation Title\", \"description\": \"This is the updated description.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyBatchExports", + "qualifiedName": "PosthogApi.ModifyBatchExports", + "fullyQualifiedName": "PosthogApi.ModifyBatchExports@2.0.0", + "description": "Update batch exports for an organization.\n\n This tool updates batch export settings for a specified organization in Datadog. It should be called when modifications to existing batch export configurations are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_id", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the batch export to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "A string representing the unique identifier of the organization for which the batch exports need to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyBatchExports", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "organization_identifier": { + "value": "org-456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"exportFrequency\":\"daily\",\"destination\":\"s3://mybucket/exports\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyCohortViews", + "qualifiedName": "PosthogApi.ModifyCohortViews", + "fullyQualifiedName": "PosthogApi.ModifyCohortViews@2.0.0", + "description": "Update cohort views to track new file system accesses.\n\n This tool updates the views of a specified cohort within a project. It logs a new file system access each time the resource is accessed, helping to track usage.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "cohort_identifier", + "type": "integer", + "required": false, + "description": "A unique integer identifying the specific cohort to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project being accessed. Call /api/projects/ to obtain this ID if unknown. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cohorts_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyCohortViews", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "cohort_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "proj_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"access_type\":\"file_system\",\"timestamp\":\"2023-10-01T12:00:00Z\",\"user_id\":\"user_789\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyDashboardTemplate", + "qualifiedName": "PosthogApi.ModifyDashboardTemplate", + "fullyQualifiedName": "PosthogApi.ModifyDashboardTemplate@2.0.0", + "description": "Update a Datadog dashboard template.\n\n Call this tool to update an existing dashboard template within a specified Datadog project. Use this when you need to modify the details or configuration of a dashboard template.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_template_uuid", + "type": "string", + "required": false, + "description": "A UUID string that identifies the dashboard template to be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique Project ID for accessing a specific Datadog project. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboard_templates_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyDashboardTemplate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_template_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Dashboard\", \"widgets\": [{\"type\": \"timeseries\", \"title\": \"Performance Metrics\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyDatasetItem", + "qualifiedName": "PosthogApi.ModifyDatasetItem", + "fullyQualifiedName": "PosthogApi.ModifyDatasetItem@2.0.0", + "description": "Update specific details of a dataset item.\n\n Use this tool to partially update attributes of a dataset item within a project. The tool should be called when you need to modify existing data associated with a dataset item.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dataset_item_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the dataset item to be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project where the dataset item is located. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dataset_items_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyDatasetItem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dataset_item_uuid": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "project_id": { + "value": "1234", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"attribute\":\"value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyDataTheme", + "qualifiedName": "PosthogApi.ModifyDataTheme", + "fullyQualifiedName": "PosthogApi.ModifyDataTheme@2.0.0", + "description": "Update a specific data color theme for a project.\n\n This tool updates the properties of a specific data color theme within a project. Use it to change settings or customize the appearance of data visuals by specifying the project and theme IDs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "theme_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying the data color theme to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Use /api/projects/ to find the ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'data_color_themes_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyDataTheme", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "theme_id": { + "value": 42, + "type": "integer", + "required": false + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"color\":\"#FF5733\",\"font\":\"Arial\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyEarlyAccessFeature", + "qualifiedName": "PosthogApi.ModifyEarlyAccessFeature", + "fullyQualifiedName": "PosthogApi.ModifyEarlyAccessFeature@2.0.0", + "description": "Update early access feature for a project.\n\n Use this tool to update the details of an early access feature in a specified project. It logs each update operation.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "early_access_feature_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the early access feature to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project. Fetch it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'early_access_feature_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyEarlyAccessFeature", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "early_access_feature_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "project-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Feature\",\"description\":\"An updated description of the early access feature.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyEnvFileSystemShortcut", + "qualifiedName": "PosthogApi.ModifyEnvFileSystemShortcut", + "fullyQualifiedName": "PosthogApi.ModifyEnvFileSystemShortcut@2.0.0", + "description": "Update a file system shortcut in a specific environment.\n\nThis tool updates a file system shortcut for a specific project environment based on given identifiers. Call this tool when you need to modify details of an existing file system shortcut within an environment.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Retrieve it via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "created_at_timestamp", + "type": "string", + "required": false, + "description": "The timestamp of when the file system shortcut was created, in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "file_system_shortcut_id", + "type": "string", + "required": false, + "description": "Unique identifier for the file system shortcut to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "file_system_shortcut_type", + "type": "string", + "required": false, + "description": "Specifies the type of the file system shortcut to update, such as 'symlink' or 'hardlink'.", + "enum": null, + "inferrable": true + }, + { + "name": "reference_identifier", + "type": "string", + "required": false, + "description": "A unique string identifier for the file system shortcut to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_file_path", + "type": "string", + "required": false, + "description": "The path to the file system shortcut that needs to be updated in the environment.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_href", + "type": "string", + "required": false, + "description": "The URL or link to the file system shortcut that needs updating. This should be a valid URI.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_id", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the file system shortcut to update.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_shortcut_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyEnvFileSystemShortcut", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "created_at_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "file_system_shortcut_id": { + "value": "fs-shortcut-67890", + "type": "string", + "required": false + }, + "file_system_shortcut_type": { + "value": "symlink", + "type": "string", + "required": false + }, + "reference_identifier": { + "value": "shortcut-ref-001", + "type": "string", + "required": false + }, + "shortcut_file_path": { + "value": "/path/to/shortcut", + "type": "string", + "required": false + }, + "shortcut_href": { + "value": "https://example.com/shortcut-link", + "type": "string", + "required": false + }, + "shortcut_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyEnvFolder", + "qualifiedName": "PosthogApi.ModifyEnvFolder", + "fullyQualifiedName": "PosthogApi.ModifyEnvFolder@2.0.0", + "description": "Partially update a specific environment folder.\n\nUse this tool to partially update a specific persisted folder within an environment by providing the project and folder IDs.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Provide the Project ID to access the specific environment. Retrieve it via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_folder_creation_date", + "type": "string", + "required": false, + "description": "The creation date of the environment folder. Expected in YYYY-MM-DD format.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_folder_id", + "type": "string", + "required": false, + "description": "The unique identifier for the environment folder to update. Provide a valid string ID.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_folder_last_updated", + "type": "string", + "required": false, + "description": "The timestamp when the environment folder was last updated. Use ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_folder_protocol", + "type": "string", + "required": false, + "description": "Specify the protocol type for the environment folder, such as 'home' or 'pinned'.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_path", + "type": "string", + "required": false, + "description": "Specify the updated path for the environment folder.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_type", + "type": "string", + "required": false, + "description": "Specify the type of the folder: `home` for Home or `pinned` for Pinned.", + "enum": null, + "inferrable": true + }, + { + "name": "persisted_folder_id", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the persisted folder to be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persisted_folder_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyEnvFolder", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "environment_folder_creation_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "environment_folder_id": { + "value": "env-folder-67890", + "type": "string", + "required": false + }, + "environment_folder_last_updated": { + "value": "2023-10-15T12:00:00Z", + "type": "string", + "required": false + }, + "environment_folder_protocol": { + "value": "home", + "type": "string", + "required": false + }, + "folder_path": { + "value": "/updated/path/to/folder", + "type": "string", + "required": false + }, + "folder_type": { + "value": "pinned", + "type": "string", + "required": false + }, + "persisted_folder_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyEnvironmentDataset", + "qualifiedName": "PosthogApi.ModifyEnvironmentDataset", + "fullyQualifiedName": "PosthogApi.ModifyEnvironmentDataset@2.0.0", + "description": "Update dataset in a specific environment.\n\n Use this tool to partially update an existing dataset within a specified environment using the project and dataset identifiers.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dataset_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the dataset to update within the environment. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the project to access. Retrieve via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_datasets_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyEnvironmentDataset", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dataset_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Dataset\",\"description\":\"This is an updated description of the dataset.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyEnvironmentDatasetItem", + "qualifiedName": "PosthogApi.ModifyEnvironmentDatasetItem", + "fullyQualifiedName": "PosthogApi.ModifyEnvironmentDatasetItem@2.0.0", + "description": "Update specific fields in an environment dataset item.\n\n This tool updates specific fields of an existing item in the environment dataset for a given project. It should be called when partial modifications are needed for dataset items.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dataset_item_id", + "type": "string", + "required": false, + "description": "A UUID string specifying the dataset item to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project to access. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dataset_items_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyEnvironmentDatasetItem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dataset_item_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"field\": \"newValue\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyEnvironmentEvaluation", + "qualifiedName": "PosthogApi.ModifyEnvironmentEvaluation", + "fullyQualifiedName": "PosthogApi.ModifyEnvironmentEvaluation@2.0.0", + "description": "Update specific environment evaluation details.\n\n This tool updates specific details of an environment evaluation using partial data. It should be called when there is a need to modify environment evaluations for a project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "evaluation_id", + "type": "string", + "required": false, + "description": "A UUID string that identifies the specific environment evaluation to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Provide the Project ID to identify and access the specific project. Use /api/projects/ to retrieve the ID if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_evaluations_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyEnvironmentEvaluation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "evaluation_id": { + "value": "3f4c8c12-f9ab-4b4e-a3bf-c01b6a1b4c77", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"active\",\"description\":\"Updated evaluation details\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyEnvironmentFileSystem", + "qualifiedName": "PosthogApi.ModifyEnvironmentFileSystem", + "fullyQualifiedName": "PosthogApi.ModifyEnvironmentFileSystem@2.0.0", + "description": "Partially update a file system environment in a project.\n\n Use this tool to update specific fields of a file system environment in a given project within Datadog. It should be called when modifications are needed for an existing environment's file system settings.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "file_system_id", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the specific file system to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the project you want to modify. Use the endpoint `/api/projects/` to retrieve this ID if unknown. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyEnvironmentFileSystem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "file_system_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"setting\":\"value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyEnvironmentSubscription", + "qualifiedName": "PosthogApi.ModifyEnvironmentSubscription", + "fullyQualifiedName": "PosthogApi.ModifyEnvironmentSubscription@2.0.0", + "description": "Update a subscription for a specific environment.\n\n Use this tool to partially update a subscription within a specified environment in a project. This tool is called when changes to subscription details are needed, such as updating preferences or configurations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "subscription_id", + "type": "integer", + "required": false, + "description": "Unique integer identifying the subscription to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_subscriptions_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyEnvironmentSubscription", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "subscription_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"preferences\": {\"email_updates\": true}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyEventDefinition", + "qualifiedName": "PosthogApi.ModifyEventDefinition", + "fullyQualifiedName": "PosthogApi.ModifyEventDefinition@2.0.0", + "description": "Update an event definition in a project.\n\nUse this tool to partially update event definitions within a specified project in Datadog. It modifies details of an existing event definition using a PATCH request.", + "parameters": [ + { + "name": "event_definition_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the event definition to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access the specific project in Datadog. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'event_definitions_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyEventDefinition", + "parameters": { + "event_definition_uuid": { + "value": "e4d909c290d0fb1ca068ffaddf22cbd0", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyExperimentHoldout", + "qualifiedName": "PosthogApi.ModifyExperimentHoldout", + "fullyQualifiedName": "PosthogApi.ModifyExperimentHoldout@2.0.0", + "description": "Update the details of an experiment holdout.\n\n Use this tool to partially update the details of an experiment holdout within a specified project in Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "experiment_holdout_id", + "type": "integer", + "required": false, + "description": "The unique integer identifier for the experiment holdout you wish to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "target_project_id", + "type": "string", + "required": false, + "description": "Specify the ID of the project you want to access. Retrieve the ID using /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiment_holdouts_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyExperimentHoldout", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "experiment_holdout_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "target_project_id": { + "value": "project_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Holdout\",\"status\":\"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyFeatureFlags", + "qualifiedName": "PosthogApi.ModifyFeatureFlags", + "fullyQualifiedName": "PosthogApi.ModifyFeatureFlags@2.0.0", + "description": "Update existing feature flags in a project.\n\n This tool updates the details of a feature flag in a specified project within Datadog. Use this tool to modify feature flag settings, such as enabling, disabling, or changing conditions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "feature_flag_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the feature flag to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Retrieve it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyFeatureFlags", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "feature_flag_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_id": { + "value": "project_abc_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"enabled\": true, \"conditions\": [{\"property\": \"user.role\", \"value\": \"admin\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyFileSystem", + "qualifiedName": "PosthogApi.ModifyFileSystem", + "fullyQualifiedName": "PosthogApi.ModifyFileSystem@2.0.0", + "description": "Update specific details of a file system.\n\n Use this tool to update specific details within a file system for a given project. Call this tool when modifications are needed to existing file system configurations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "file_system_id", + "type": "string", + "required": false, + "description": "A UUID string used to identify the specific file system to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique ID of the project. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyFileSystem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "file_system_id": { + "value": "b29e2632-23a4-4d39-b53f-2f8fbd204d1e", + "type": "string", + "required": false + }, + "project_id": { + "value": "f945e3e1-34b4-4c75-a1b1-50e8e058e0f0", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated File System\", \"description\": \"This is a modified file system configuration.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyFileSystemShortcut", + "qualifiedName": "PosthogApi.ModifyFileSystemShortcut", + "fullyQualifiedName": "PosthogApi.ModifyFileSystemShortcut@2.0.0", + "description": "Update a file system shortcut in a specified project.\n\nUse this tool to update details of a file system shortcut within a project. This can be helpful for managing project shortcuts by modifying them as needed.", + "parameters": [ + { + "name": "creation_timestamp", + "type": "string", + "required": true, + "description": "A string representing the creation date and time of the shortcut. Format: ISO 8601 (e.g., '2021-09-15T13:45:30Z').", + "enum": null, + "inferrable": true + }, + { + "name": "file_system_path", + "type": "string", + "required": true, + "description": "The file system path of the shortcut to be updated. Provide the exact path within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "file_system_shortcut_id", + "type": "string", + "required": true, + "description": "The UUID string identifying the file system shortcut to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project you want to update the file system shortcut for. Retrieve this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_id", + "type": "string", + "required": true, + "description": "The unique identifier for the file system shortcut to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "file_system_shortcut_href", + "type": "string", + "required": false, + "description": "The URL of the file system shortcut to be updated. It specifies the link to the resource.", + "enum": null, + "inferrable": true + }, + { + "name": "reference_identifier", + "type": "string", + "required": false, + "description": "A unique string identifier for the file system shortcut to be updated. This is used to specify which shortcut you are modifying.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_type", + "type": "string", + "required": false, + "description": "Specifies the type of the file system shortcut to update. Accepted values may vary based on use case.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_shortcut_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyFileSystemShortcut", + "parameters": { + "creation_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": true + }, + "file_system_path": { + "value": "/projects/my_project/shortcuts/my_shortcut", + "type": "string", + "required": true + }, + "file_system_shortcut_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345678-1234-1234-1234-123456789abc", + "type": "string", + "required": true + }, + "shortcut_id": { + "value": "abcd1234-5678-90ef-ghij-klmnopqrstuv", + "type": "string", + "required": true + }, + "file_system_shortcut_href": { + "value": "https://example.com/shortcuts/my_shortcut", + "type": "string", + "required": false + }, + "reference_identifier": { + "value": "my_shortcut_ref_001", + "type": "string", + "required": false + }, + "shortcut_type": { + "value": "link", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyGroupingRules", + "qualifiedName": "PosthogApi.ModifyGroupingRules", + "fullyQualifiedName": "PosthogApi.ModifyGroupingRules@2.0.0", + "description": "Update error tracking grouping rules for a project.\n\nUse this tool to update specific error tracking grouping rules within a project environment on Datadog. It should be called when you need to modify grouping rules for error tracking purposes in a specified project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Retrieve it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "assigned_user", + "type": "string", + "required": false, + "description": "Specify the user assigned to manage the error tracking rules. It should be the username or ID of the Datadog user.", + "enum": null, + "inferrable": true + }, + { + "name": "disable_data_filtering", + "type": "string", + "required": false, + "description": "Specifies data filtering rules to be disabled. Provide a string indicating the types of rules or data aspects to disable.", + "enum": null, + "inferrable": true + }, + { + "name": "error_tracking_rule_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the error tracking grouping rule to update.", + "enum": null, + "inferrable": true + }, + { + "name": "filters_string", + "type": "string", + "required": false, + "description": "String containing filtering conditions for updating grouping rules. Specify conditions to narrow down rules to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "grouping_rule_order_key", + "type": "integer", + "required": false, + "description": "An integer that specifies the priority order of the error grouping rule within a project. Higher values may denote higher priority.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_id", + "type": "string", + "required": false, + "description": "The ID of the grouping rule to be updated. Required for specifying which rule to modify within the project.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_grouping_rules_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyGroupingRules", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "assigned_user": { + "value": "john.doe", + "type": "string", + "required": false + }, + "disable_data_filtering": { + "value": "sensitive_user_info", + "type": "string", + "required": false + }, + "error_tracking_rule_uuid": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "filters_string": { + "value": "status:500, environment:production", + "type": "string", + "required": false + }, + "grouping_rule_order_key": { + "value": 2, + "type": "integer", + "required": false + }, + "rule_id": { + "value": "rule-6789", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyHogFunctions", + "qualifiedName": "PosthogApi.ModifyHogFunctions", + "fullyQualifiedName": "PosthogApi.ModifyHogFunctions@2.0.0", + "description": "Update and track file system views for hog functions.\n\n Use this tool to update specific hog functions and track file system views in Datadog. It should be called when modifications to a hog function in a project are required and each GET on the resource should be logged as a new view.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "hog_function_uuid", + "type": "string", + "required": false, + "description": "A UUID string to uniquely identify the hog function to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the desired project. Retrieve via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hog_functions_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyHogFunctions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "hog_function_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project-xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"update_function\",\"description\":\"Updated hog function description\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyInterviewEnvironment", + "qualifiedName": "PosthogApi.ModifyInterviewEnvironment", + "fullyQualifiedName": "PosthogApi.ModifyInterviewEnvironment@2.0.0", + "description": "Partially update a user interview environment.\n\n Use this tool to apply partial updates to a specific user interview environment within a project. This helps in modifying certain attributes of the environment without altering the entire setup.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_interview_id", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the user interview to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "target_project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Obtain by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_user_interviews_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyInterviewEnvironment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_interview_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "target_project_id": { + "value": "project-9876", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"completed\",\"feedback\":\"Great experience!\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyPersonDetails", + "qualifiedName": "PosthogApi.ModifyPersonDetails", + "fullyQualifiedName": "PosthogApi.ModifyPersonDetails@2.0.0", + "description": "Update properties for a person in the project.\n\n This tool updates specific properties for a person using a \"$set\" event without removing or altering other existing properties. Use this to make partial updates to a person's data in the specified project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "person_id", + "type": "integer", + "required": false, + "description": "A unique integer representing a person to update in the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "ID of the target project for accessing person data. Retrieve the ID via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response output, either 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyPersonDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "person_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "my_project_001", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"$set\": {\"email\": \"example@example.com\", \"name\": \"John Doe\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyPersonsInEnvironment", + "qualifiedName": "PosthogApi.ModifyPersonsInEnvironment", + "fullyQualifiedName": "PosthogApi.ModifyPersonsInEnvironment@2.0.0", + "description": "Modify or remove persons in a given environment.\n\nUse this tool to update or delete the information of persons within a specified environment using the project ID and person ID. For creating or further updating, the capture API or SDKs are recommended.", + "parameters": [ + { + "name": "project_id_of_target_environment", + "type": "string", + "required": true, + "description": "The Project ID for the environment you want to access. Find it with a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "distinct_ids_list", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of unique identifiers for individuals to be updated or deleted. Each identifier should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "person_created_at", + "type": "string", + "required": false, + "description": "The timestamp of when the person was created, formatted as a string. This helps identify the creation date of the person within the system.", + "enum": null, + "inferrable": true + }, + { + "name": "person_id", + "type": "integer", + "required": false, + "description": "The unique identifier for the person you want to update or delete. This is an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "person_identifier", + "type": "integer", + "required": false, + "description": "A unique integer used to identify the person for modification or deletion.", + "enum": null, + "inferrable": true + }, + { + "name": "person_identifier_uuid", + "type": "string", + "required": false, + "description": "The unique identifier for the person whose data is to be updated or deleted. This UUID is required for the operation.", + "enum": null, + "inferrable": true + }, + { + "name": "person_name", + "type": "string", + "required": false, + "description": "The name of the person to modify. This is required for updating the person's information.", + "enum": null, + "inferrable": true + }, + { + "name": "person_properties", + "type": "string", + "required": false, + "description": "JSON string of properties and values to update for a person. This may include attributes like name, email, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response data. Acceptable values are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyPersonsInEnvironment", + "parameters": { + "project_id_of_target_environment": { + "value": "12345", + "type": "string", + "required": true + }, + "distinct_ids_list": { + "value": ["user_1", "user_2"], + "type": "array", + "required": false + }, + "person_created_at": { + "value": "2023-01-15T12:00:00Z", + "type": "string", + "required": false + }, + "person_id": { + "value": 1001, + "type": "integer", + "required": false + }, + "person_identifier": { + "value": 2001, + "type": "integer", + "required": false + }, + "person_identifier_uuid": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "person_name": { + "value": "John Doe", + "type": "string", + "required": false + }, + "person_properties": { + "value": "{\"email\":\"john.doe@example.com\", \"age\":30}", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyProjectEnvironment", + "qualifiedName": "PosthogApi.ModifyProjectEnvironment", + "fullyQualifiedName": "PosthogApi.ModifyProjectEnvironment@2.0.0", + "description": "Update a specific environment of a project.\n\n Use this tool to update the details of a specific environment within a project for the current organization. Ideal for modifying environment configurations or settings.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "environment_identifier", + "type": "integer", + "required": false, + "description": "A unique integer identifying the environment or team to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Use /api/projects/ to find the Project ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyProjectEnvironment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "environment_identifier": { + "value": 1, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"settingA\":\"value1\", \"settingB\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyProxyRecord", + "qualifiedName": "PosthogApi.ModifyProxyRecord", + "fullyQualifiedName": "PosthogApi.ModifyProxyRecord@2.0.0", + "description": "Update partial details of a proxy record.\n\n Use this tool to partially update details of a proxy record within a specified organization. Suitable for modifying existing proxy records.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "proxy_record_id", + "type": "string", + "required": false, + "description": "The unique identifier for the proxy record to be updated. This is required to specify which record is being modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "The unique identifier for the organization. It determines the organization within which the proxy record needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'proxy_records_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyProxyRecord", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "proxy_record_id": { + "value": "12345", + "type": "string", + "required": false + }, + "organization_id": { + "value": "org_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"field_to_update\":\"new_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyRecordingPlaylist", + "qualifiedName": "PosthogApi.ModifyRecordingPlaylist", + "fullyQualifiedName": "PosthogApi.ModifyRecordingPlaylist@2.0.0", + "description": "Update session recording playlists for a given project and ID.\n\n This tool updates session recording playlists by partially modifying the current resource. Use it when you need to change playlist details in a specific project environment. Each update logs a new view entry.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique ID of the project to access. Retrieve the ID via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_short_id", + "type": "string", + "required": false, + "description": "The unique short identifier for the session recording playlist you want to update. Typically a concise string for quick reference. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recording_playlists_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyRecordingPlaylist", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "session_recording_short_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Playlist\",\"description\":\"This is an updated session recording playlist.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifySessionRecording", + "qualifiedName": "PosthogApi.ModifySessionRecording", + "fullyQualifiedName": "PosthogApi.ModifySessionRecording@2.0.0", + "description": "Update session recording details for a specific environment.\n\n Use this tool to update session recording information for a given project and session ID within a specific environment in Datadog. Call this tool when you need to modify the details of an existing session recording.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "session_recording_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the session recording to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project ID to access. Obtain it via the /api/projects/ call. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recordings_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifySessionRecording", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "session_recording_id": { + "value": "b62f9f7b-5d1f-45a6-8c24-3ddac0d26a8a", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Session Title\",\"description\":\"This session recording has been updated.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifySessionRecordingPlaylist", + "qualifiedName": "PosthogApi.ModifySessionRecordingPlaylist", + "fullyQualifiedName": "PosthogApi.ModifySessionRecordingPlaylist@2.0.0", + "description": "Update session recording playlists for a project.\n\n Use this tool to update existing session recording playlists within a specified project. This is typically used when changes to playlist details are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Retrieve the ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "playlist_short_identifier", + "type": "string", + "required": false, + "description": "A unique identifier for the session recording playlist to be updated. It is used to specify the exact playlist within the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recording_playlists_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifySessionRecordingPlaylist", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "playlist_short_identifier": { + "value": "my_playlist_01", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Playlist Name\", \"description\": \"This is an updated description of the playlist.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyTableSchema", + "qualifiedName": "PosthogApi.ModifyTableSchema", + "fullyQualifiedName": "PosthogApi.ModifyTableSchema@2.0.0", + "description": "Update the schema of a warehouse table.\n\n Use this tool to modify the schema of an existing warehouse table in a specified project. Ideal for managing table structure changes such as adding or removing columns.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "table_id", + "type": "string", + "required": false, + "description": "A UUID string to identify the data warehouse table for schema modification. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique Project ID for accessing the desired project. To obtain this ID, call /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_tables_update_schema_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyTableSchema", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "table_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"add_columns\":[{\"name\":\"new_column\",\"type\":\"string\"}],\"remove_columns\":[\"old_column\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyUserAttribute", + "qualifiedName": "PosthogApi.ModifyUserAttribute", + "fullyQualifiedName": "PosthogApi.ModifyUserAttribute@2.0.0", + "description": "Update a specific property for a person in a project.\n\n Use this tool to update a property for a person within a specified project. This is useful for modifying attributes of a person using the Datadog API, such as user properties in an analytics context.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "property_key", + "type": "string", + "required": false, + "description": "The key for the property you want to update for the person. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "property_value", + "type": "string", + "required": false, + "description": "Specify the value of the property to be updated for a person. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "person_identifier", + "type": "integer", + "required": false, + "description": "A unique integer value used to identify the person whose property is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project ID to access the relevant project. Retrieve it via `/api/projects/`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format for the response. Use 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_update_property_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyUserAttribute", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "property_key": { + "value": "subscription_status", + "type": "string", + "required": false + }, + "property_value": { + "value": "active", + "type": "string", + "required": false + }, + "person_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_001", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"property_key\":\"subscription_status\",\"property_value\":\"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyWarehouseQuery", + "qualifiedName": "PosthogApi.ModifyWarehouseQuery", + "fullyQualifiedName": "PosthogApi.ModifyWarehouseQuery@2.0.0", + "description": "Partially update a warehouse saved query in a project.\n\n Use this tool to apply partial updates to an existing warehouse saved query within the specified project. It is suitable for modifying specific attributes of a saved query without altering the entire dataset.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "query_identifier", + "type": "string", + "required": false, + "description": "A UUID string that identifies the specific warehouse saved query to be partially updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID for the warehouse saved query. Obtain it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_saved_queries_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyWarehouseQuery", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "query_identifier": { + "value": "a3f0e1d2-b4c5-6789-0123-456789abcdef", + "type": "string", + "required": false + }, + "project_id": { + "value": "proj_1234abcd", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Query Name\", \"description\": \"This is a partial update of the warehouse query.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyWarehouseTable", + "qualifiedName": "PosthogApi.ModifyWarehouseTable", + "fullyQualifiedName": "PosthogApi.ModifyWarehouseTable@2.0.0", + "description": "Update a specific warehouse table's information.\n\n Use this tool to update details of a specific warehouse table within a given project environment in Datadog. Ideal for modifying existing warehouse table configurations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "warehouse_table_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the data warehouse table to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Retrieve via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_tables_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ModifyWarehouseTable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "warehouse_table_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "proj_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"updated_table_name\",\"description\":\"Updated description for the warehouse table.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MoveDashboardTile", + "qualifiedName": "PosthogApi.MoveDashboardTile", + "fullyQualifiedName": "PosthogApi.MoveDashboardTile@2.0.0", + "description": "Move a tile's position in a specific dashboard.\n\n Use this tool to update the position of a tile within a specified dashboard environment in Datadog. This is useful when reorganizing dashboard layouts or customizing views.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying this dashboard within Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The identifier for the project you want to access. Retrieve it by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the desired format of the response data. Options are 'json' or 'txt'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_move_tile_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.MoveDashboardTile", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "project_abc", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"tile_id\": 67890, \"new_position\": 2}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MoveFileSystemEntry", + "qualifiedName": "PosthogApi.MoveFileSystemEntry", + "fullyQualifiedName": "PosthogApi.MoveFileSystemEntry@2.0.0", + "description": "Moves a file system entry to a new location within the project.\n\n Use this tool to relocate a file or directory within a specified project in Datadog’s file system. It should be called when you need to change the location of a file system entry.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "file_system_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the file system to be moved within the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "target_project_id", + "type": "string", + "required": false, + "description": "The Project ID of the target project where the file system entry will be moved. Obtain this ID from the /api/projects/ endpoint if necessary. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_move_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.MoveFileSystemEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "file_system_id": { + "value": "e8d2a7ab-1c56-4e2f-a1d6-f3b9a6d8e655", + "type": "string", + "required": false + }, + "target_project_id": { + "value": "proj_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"new_location\": \"/new/path/to/resource\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MoveFileWithinEnvironment", + "qualifiedName": "PosthogApi.MoveFileWithinEnvironment", + "fullyQualifiedName": "PosthogApi.MoveFileWithinEnvironment@2.0.0", + "description": "Move a file within an environment's file system.\n\n Use this tool to move a file from one location to another within the file system of a specified environment in a project. It's useful for reorganizing content or changing file structures in the environment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "file_system_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the file system to move within the environment. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID for accessing the specific project environment. Obtain it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_move_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.MoveFileWithinEnvironment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "file_system_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "project-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"source_path\": \"/oldFolder/myFile.txt\", \"destination_path\": \"/newFolder/myFile.txt\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "NewSessionRecordingPlaylist", + "qualifiedName": "PosthogApi.NewSessionRecordingPlaylist", + "fullyQualifiedName": "PosthogApi.NewSessionRecordingPlaylist@2.0.0", + "description": "Create a new session recording playlist for a project.\n\n Use this tool to create a session recording playlist within a specified project by providing the project ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project for which you want to create a session recording playlist. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recording_playlists_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.NewSessionRecordingPlaylist", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Playlist\",\"description\":\"A playlist for session recordings.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "PauseBatchExport", + "qualifiedName": "PosthogApi.PauseBatchExport", + "fullyQualifiedName": "PosthogApi.PauseBatchExport@2.0.0", + "description": "Pause a batch export operation.\n\n Use this tool to pause an ongoing batch export associated with a specific project and export ID. Suitable for temporarily halting data exports without cancelling them entirely.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the batch export to be paused. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project. Use /api/projects/ to find it. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_pause_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.PauseBatchExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "proj-789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\": \"pause\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "PersistFolderCreation", + "qualifiedName": "PosthogApi.PersistFolderCreation", + "fullyQualifiedName": "PosthogApi.PersistFolderCreation@2.0.0", + "description": "Create a new persisted folder in Datadog.\n\nUse this tool to create a new persisted folder within a specified project in Datadog. It is called when organizing or categorizing project assets in a dedicated folder is needed.", + "parameters": [ + { + "name": "folder_category", + "type": "string", + "required": true, + "description": "Specifies the type of the persisted folder. Options are 'home' for Home or 'pinned' for Pinned.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_creation_date", + "type": "string", + "required": true, + "description": "The date and time when the persisted folder is created, in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_last_updated", + "type": "string", + "required": true, + "description": "A string representing the timestamp of the last update to the folder, in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_type", + "type": "string", + "required": true, + "description": "Specifies the type of the folder. Possible values are 'home' for Home or 'pinned' for Pinned.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the target project. Retrieve it via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_path", + "type": "string", + "required": false, + "description": "Specify the path where the persisted folder will be created within the project. It should be a string representing the directory structure needed.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_protocol", + "type": "string", + "required": false, + "description": "Specify the protocol for the persisted folder. Expected values are network protocol types like HTTP or FTP.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persisted_folder_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.PersistFolderCreation", + "parameters": { + "folder_category": { + "value": "home", + "type": "string", + "required": true + }, + "folder_creation_date": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": true + }, + "folder_last_updated": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": true + }, + "folder_type": { + "value": "home", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": true + }, + "folder_path": { + "value": "/assets/reports", + "type": "string", + "required": false + }, + "folder_protocol": { + "value": "HTTP", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "PersonActivityInfo", + "qualifiedName": "PosthogApi.PersonActivityInfo", + "fullyQualifiedName": "PosthogApi.PersonActivityInfo@2.0.0", + "description": "Retrieve details of a person's activities.\n\nUse this tool to get information on a person's activities within a specific project. Ideal for analyzing user engagement or actions in a project context. For creating or updating person details, consider using the capture API or relevant SDKs.", + "parameters": [ + { + "name": "access_project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Call /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format for the response, either 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_activity_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.PersonActivityInfo", + "parameters": { + "access_project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "QueuePersonEventDeletion", + "qualifiedName": "PosthogApi.QueuePersonEventDeletion", + "fullyQualifiedName": "PosthogApi.QueuePersonEventDeletion@2.0.0", + "description": "Queue deletion of events for a person during non-peak hours.\n\n Use this tool to schedule the deletion of all events associated with a specific person in a project. This task is performed during non-peak hours to optimize performance.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "person_identifier", + "type": "integer", + "required": false, + "description": "A unique integer value identifying the person whose events are to be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Unique identifier for the project. Obtain via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response. Choose either 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_delete_events_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.QueuePersonEventDeletion", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "person_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project-abc123", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"delete_events\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "QueuePersonEventsDeletion", + "qualifiedName": "PosthogApi.QueuePersonEventsDeletion", + "fullyQualifiedName": "PosthogApi.QueuePersonEventsDeletion@2.0.0", + "description": "Queue the deletion of all events for a specific person.\n\n This tool queues the deletion of all events associated with a specified person in a project. The deletion is scheduled to occur during non-peak hours, making it efficient for managing resources.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "person_identifier", + "type": "integer", + "required": false, + "description": "A unique integer identifying the person whose events are to be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID needed to access the specific project. Obtainable via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "events_export_format", + "type": "string", + "required": false, + "description": "The format in which to export events before deletion. Acceptable values are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_delete_events_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.QueuePersonEventsDeletion", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "person_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "project_789", + "type": "string", + "required": false + }, + "events_export_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"confirm_deletion\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ReactivateBatchExport", + "qualifiedName": "PosthogApi.ReactivateBatchExport", + "fullyQualifiedName": "PosthogApi.ReactivateBatchExport@2.0.0", + "description": "Unpause a paused BatchExport in a project.\n\n This tool is used to unpause a previously paused BatchExport within a specified project. Call it to resume data export processes when needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying this batch export to be unpaused. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access for unpausing the BatchExport. Make a call to /api/projects/ to find the project ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_unpause_create_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ReactivateBatchExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_uuid": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\": \"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ReadOrDeletePerson", + "qualifiedName": "PosthogApi.ReadOrDeletePerson", + "fullyQualifiedName": "PosthogApi.ReadOrDeletePerson@2.0.0", + "description": "Read or delete a person's record in the environment.\n\n Use this tool to read or delete a person's record within a specific environment by providing the project and person ID. For creating or updating, refer to the capture API or SDKs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "person_id", + "type": "integer", + "required": false, + "description": "Unique integer identifier for the person to read or delete. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Unique identifier for the project to access. Retrieve via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the format of the response. Choose between 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_split_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ReadOrDeletePerson", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "person_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "my_project_001", + "type": "string", + "required": false + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\":\"delete\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RecordInsightViews", + "qualifiedName": "PosthogApi.RecordInsightViews", + "fullyQualifiedName": "PosthogApi.RecordInsightViews@2.0.0", + "description": "Update the view timestamps for specified insights.\n\n Use this tool to update the view timestamps of specific insights by providing their IDs. This tool is helpful when tracking which insights have been viewed and updating their status within a given project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve the ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response. Choose between 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "private_key" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_viewed_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RecordInsightViews", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"insight_ids\":[\"insight_1\",\"insight_2\"],\"viewed_at\":\"2023-10-01T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RefreshDashboardSharing", + "qualifiedName": "PosthogApi.RefreshDashboardSharing", + "fullyQualifiedName": "PosthogApi.RefreshDashboardSharing@2.0.0", + "description": "Refresh a dashboard's sharing link in Datadog environments.\n\n Use this tool to refresh the sharing link for a specific dashboard within a Datadog environment. This is useful for updating the link to maintain access or to apply new sharing settings.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_id", + "type": "integer", + "required": false, + "description": "The unique integer ID of the Datadog dashboard to refresh the sharing link for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Specify the Project ID for accessing the desired project in Datadog. Retrieve it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "api_key" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_sharing_refresh_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RefreshDashboardSharing", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "project-xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"sharing_settings\": {\"public\": false}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RefreshDashboardSharingLink", + "qualifiedName": "PosthogApi.RefreshDashboardSharingLink", + "fullyQualifiedName": "PosthogApi.RefreshDashboardSharingLink@2.0.0", + "description": "Refresh the sharing link for a specific dashboard.\n\n This tool is used to refresh the sharing link of a dashboard within a project. It should be called when a user wants to update an existing dashboard's sharing link to extend its validity or ensure it's up to date.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_identification_number", + "type": "integer", + "required": false, + "description": "An integer representing the specific dashboard to refresh the sharing link for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project. Retrieve it via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_sharing_refresh_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RefreshDashboardSharingLink", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_identification_number": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "proj_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"expiry_date\": \"2024-12-31\", \"permissions\": \"read\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RefreshInsightSharing", + "qualifiedName": "PosthogApi.RefreshInsightSharing", + "fullyQualifiedName": "PosthogApi.RefreshInsightSharing@2.0.0", + "description": "Refresh the sharing settings of an insight.\n\n Use this tool to refresh the sharing settings for a specific insight within a project. This is useful when access permissions or sharing parameters need to be updated to reflect the latest configurations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "insight_identifier", + "type": "integer", + "required": false, + "description": "The unique integer identifier for the insight to refresh sharing settings. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The Project ID to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_sharing_refresh_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RefreshInsightSharing", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "insight_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "abc-123-project", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"sharing_enabled\": true, \"access_levels\": [\"view\", \"edit\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RefreshInsightsSharing", + "qualifiedName": "PosthogApi.RefreshInsightsSharing", + "fullyQualifiedName": "PosthogApi.RefreshInsightsSharing@2.0.0", + "description": "Refresh sharing status of insights in a project.\n\n This tool is used to refresh the sharing status of insights within a specific project on Datadog. Ideal for when updates or changes need to be made visible to shared environments.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "insight_id", + "type": "integer", + "required": false, + "description": "The ID of the insight you want to refresh sharing for. This should be an integer. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Use /api/projects/ to find the project ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_sharing_refresh_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RefreshInsightsSharing", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "insight_id": { + "value": 123456, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_789012", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"refresh\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RefreshSessionRecordingSharing", + "qualifiedName": "PosthogApi.RefreshSessionRecordingSharing", + "fullyQualifiedName": "PosthogApi.RefreshSessionRecordingSharing@2.0.0", + "description": "Refreshes the sharing status of a session recording.\n\n Use this tool to refresh the sharing status of a specific session recording within a project environment. Call this when you need to renew access or update the sharing link of a session recording using its project and recording identifiers.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project. Retrieve it using the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_id", + "type": "string", + "required": false, + "description": "The unique identifier of the session recording to refresh sharing status. Required to specify which recording's sharing status to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recordings_sharing_refresh_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RefreshSessionRecordingSharing", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_12345", + "type": "string", + "required": false + }, + "session_recording_id": { + "value": "recording_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RefreshWarehouseTableSchema", + "qualifiedName": "PosthogApi.RefreshWarehouseTableSchema", + "fullyQualifiedName": "PosthogApi.RefreshWarehouseTableSchema@2.0.0", + "description": "Refresh the schema of a warehouse table.\n\n Use this tool to refresh the schema of a specific warehouse table in a given environment. It is useful for ensuring that the table's schema is up-to-date with any recent changes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "warehouse_table_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the specific data warehouse table. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. Obtain it by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_tables_refresh_schema_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RefreshWarehouseTableSchema", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "warehouse_table_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_001", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"refresh\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveBatchExport", + "qualifiedName": "PosthogApi.RemoveBatchExport", + "fullyQualifiedName": "PosthogApi.RemoveBatchExport@2.0.0", + "description": "Delete a batch export from an organization.\n\nUse this tool to delete a specific batch export from an organization in Datadog. It should be called when you need to remove outdated or unnecessary batch export records.", + "parameters": [ + { + "name": "batch_export_id", + "type": "string", + "required": true, + "description": "A UUID string that uniquely identifies the batch export to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "A string representing the unique identifier of the organization from which the batch export will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveBatchExport", + "parameters": { + "batch_export_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org-987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveDashboard", + "qualifiedName": "PosthogApi.RemoveDashboard", + "fullyQualifiedName": "PosthogApi.RemoveDashboard@2.0.0", + "description": "Request the deletion of a specified dashboard.\n\nThis tool triggers the deletion process for a specified dashboard in Datadog. Although it cannot hard delete, it sets the dashboard's status to 'deleted' using a PATCH request. Use when needing to deactivate or remove a dashboard.", + "parameters": [ + { + "name": "dashboard_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the dashboard to delete. Specify the ID for the target dashboard.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project for accessing its dashboards. Retrieve it via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response. Options are 'json' or 'txt'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveDashboard", + "parameters": { + "dashboard_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project_abc", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveDashboardCollaborator", + "qualifiedName": "PosthogApi.RemoveDashboardCollaborator", + "fullyQualifiedName": "PosthogApi.RemoveDashboardCollaborator@2.0.0", + "description": "Remove a collaborator from a dashboard in a specific environment.\n\nThis tool removes a specified collaborator from a dashboard in a given environment using their unique user ID. Use this when you need to manage dashboard access by removing collaborators.", + "parameters": [ + { + "name": "collaborator_user_uuid", + "type": "string", + "required": true, + "description": "The unique user ID of the collaborator to be removed from the dashboard.", + "enum": null, + "inferrable": true + }, + { + "name": "dashboard_id", + "type": "integer", + "required": true, + "description": "The unique identifier of the dashboard from which you want to remove a collaborator. This should be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "ID of the project to access. Retrieve the ID using the /api/projects/ endpoint if needed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_collaborators_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveDashboardCollaborator", + "parameters": { + "collaborator_user_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "dashboard_id": { + "value": 42, + "type": "integer", + "required": true + }, + "project_id": { + "value": "my_project_123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveDashboardSharingPassword", + "qualifiedName": "PosthogApi.RemoveDashboardSharingPassword", + "fullyQualifiedName": "PosthogApi.RemoveDashboardSharingPassword@2.0.0", + "description": "Remove a password from a dashboard's sharing configuration.\n\nThis tool deletes a password used in the sharing configuration of a specified dashboard within a project. Call this tool to manage access by removing an existing password.", + "parameters": [ + { + "name": "dashboard_identifier", + "type": "integer", + "required": true, + "description": "The unique identifier for the dashboard from which the password should be deleted. This is an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "password_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the password to delete from the sharing configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project you're trying to access. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_sharing_passwords_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveDashboardSharingPassword", + "parameters": { + "dashboard_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "password_identifier": { + "value": "abc123", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveEarlyAccessFeature", + "qualifiedName": "PosthogApi.RemoveEarlyAccessFeature", + "fullyQualifiedName": "PosthogApi.RemoveEarlyAccessFeature@2.0.0", + "description": "Remove an early access feature from a project.\n\nUse this tool to delete an early access feature from a specific project. Useful for managing and updating project features.", + "parameters": [ + { + "name": "early_access_feature_id", + "type": "string", + "required": true, + "description": "A UUID string that identifies the specific early access feature to be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_for_removal", + "type": "string", + "required": true, + "description": "Project ID to identify the project for accessing or removing the early access feature. Use the /api/projects/ endpoint to find this ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'early_access_feature_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveEarlyAccessFeature", + "parameters": { + "early_access_feature_id": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": true + }, + "project_id_for_removal": { + "value": "9c0c5e5f-1c18-4c29-8ffe-f8c88e8e4119", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveErrorSuppressionRule", + "qualifiedName": "PosthogApi.RemoveErrorSuppressionRule", + "fullyQualifiedName": "PosthogApi.RemoveErrorSuppressionRule@2.0.0", + "description": "Delete an error tracking suppression rule.\n\nUse this tool to delete a specific error tracking suppression rule in a given project environment within Datadog.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to find it.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_uuid", + "type": "string", + "required": true, + "description": "A UUID string that uniquely identifies the error tracking suppression rule to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_suppression_rules_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveErrorSuppressionRule", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "suppression_rule_uuid": { + "value": "e7b2c9f4-2d6e-4a56-8a9b-8d43f6c5ab4f", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveErrorTrackingRule", + "qualifiedName": "PosthogApi.RemoveErrorTrackingRule", + "fullyQualifiedName": "PosthogApi.RemoveErrorTrackingRule@2.0.0", + "description": "Delete an error tracking grouping rule in a project.\n\nUse this tool to delete a specific error tracking grouping rule within a Datadog environment by specifying the project and rule identifiers.", + "parameters": [ + { + "name": "error_tracking_rule_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific error tracking grouping rule to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain it using /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_grouping_rules_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveErrorTrackingRule", + "parameters": { + "error_tracking_rule_id": { + "value": "4c2c9e32-709a-4c2f-84db-177577eeec1d", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "proj-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveFileSystemShortcut", + "qualifiedName": "PosthogApi.RemoveFileSystemShortcut", + "fullyQualifiedName": "PosthogApi.RemoveFileSystemShortcut@2.0.0", + "description": "Delete a file system shortcut from a project.\n\nThis tool deletes a specific file system shortcut within a given project. Use it to remove unnecessary or outdated shortcuts from your project infrastructure.", + "parameters": [ + { + "name": "file_system_shortcut_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the file system shortcut to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The Project ID to access. Retrieve it by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_shortcut_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveFileSystemShortcut", + "parameters": { + "file_system_shortcut_uuid": { + "value": "cfd2e23b-52f0-409a-9de5-a9c7012db9a1", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveFolder", + "qualifiedName": "PosthogApi.RemoveFolder", + "fullyQualifiedName": "PosthogApi.RemoveFolder@2.0.0", + "description": "Deletes a specified persisted folder from a project.\n\nUse this tool to delete a persisted folder from a specific project by specifying the project and folder IDs. This is useful for managing project resources and cleaning up unnecessary data.", + "parameters": [ + { + "name": "persisted_folder_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the persisted folder to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persisted_folder_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveFolder", + "parameters": { + "persisted_folder_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + }, + "project_id": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveHogFunction", + "qualifiedName": "PosthogApi.RemoveHogFunction", + "fullyQualifiedName": "PosthogApi.RemoveHogFunction@2.0.0", + "description": "Marks a HOG function as deleted in a Datadog project.\n\nUse this tool to mark a specific HOG function in a Datadog project as deleted. This is performed by setting the \"deleted\" attribute to true, as hard deletion is not permitted.", + "parameters": [ + { + "name": "hog_function_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the HOG function to be marked as deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_for_deletion", + "type": "string", + "required": true, + "description": "The unique identifier of the project where the HOG function resides. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hog_functions_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveHogFunction", + "parameters": { + "hog_function_id": { + "value": "b9187c84-a9b6-4c70-b539-afe9e2d63c4a", + "type": "string", + "required": true + }, + "project_id_for_deletion": { + "value": "3a2f561d-1e29-4bf8-bf39-3c227836567d", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveOrganizationMember", + "qualifiedName": "PosthogApi.RemoveOrganizationMember", + "fullyQualifiedName": "PosthogApi.RemoveOrganizationMember@2.0.0", + "description": "Remove a member from an organization.\n\nUse this tool to delete a member from a specified organization by providing the organization ID and the user's UUID.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization from which the member is to be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "user_uuid", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the user to be removed from the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'members_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveOrganizationMember", + "parameters": { + "organization_id": { + "value": "org_1234567890abcdef", + "type": "string", + "required": true + }, + "user_uuid": { + "value": "user_abcdef1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemovePersonAttribute", + "qualifiedName": "PosthogApi.RemovePersonAttribute", + "fullyQualifiedName": "PosthogApi.RemovePersonAttribute@2.0.0", + "description": "Delete a specific property from a person's profile.\n\n Use this tool to delete a specific property from a person's profile in a project. Suitable for managing user data by removing unneeded properties.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "property_key_to_delete", + "type": "string", + "required": false, + "description": "Specify the property key you want to delete from a person's profile. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "person_identifier", + "type": "integer", + "required": false, + "description": "A unique integer to identify the person whose property you want to delete. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project you want to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the desired format for the response. Can be 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_delete_property_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemovePersonAttribute", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "property_key_to_delete": { + "value": "age", + "type": "string", + "required": false + }, + "person_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_abc", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"delete\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemovePersonFromStaticCohort", + "qualifiedName": "PosthogApi.RemovePersonFromStaticCohort", + "fullyQualifiedName": "PosthogApi.RemovePersonFromStaticCohort@2.0.0", + "description": "Removes a person from a static cohort in a project.\n\nUse this tool to remove a person from a specific static cohort within a project. Useful for managing cohorts by updating their membership.", + "parameters": [ + { + "name": "cohort_id", + "type": "integer", + "required": true, + "description": "Unique integer ID for the specific cohort from which to remove the person.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The Project ID you want to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "person_uuid_to_remove", + "type": "string", + "required": false, + "description": "Provide the UUID of the person to remove from the cohort.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cohorts_remove_person_from_static_cohort_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemovePersonFromStaticCohort", + "parameters": { + "cohort_id": { + "value": 123, + "type": "integer", + "required": true + }, + "project_id": { + "value": "abc-xyz-987", + "type": "string", + "required": true + }, + "person_uuid_to_remove": { + "value": "f9a3c7e3-789b-4d7e-bc2a-5e5a04d2e48b", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemovePersonRecordings", + "qualifiedName": "PosthogApi.RemovePersonRecordings", + "fullyQualifiedName": "PosthogApi.RemovePersonRecordings@2.0.0", + "description": "Queue deletion of all recordings associated with a person.\n\n Use this tool to initiate the deletion process for all recordings related to a specific person within a project. It should be called when you need to remove all recording data for a given individual.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "person_identifier", + "type": "integer", + "required": false, + "description": "A unique integer value used to identify the person whose recordings are to be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project. To obtain this ID, call /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "file_format", + "type": "string", + "required": false, + "description": "Specify the format type for the output. Acceptable values are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_delete_recordings_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemovePersonRecordings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "person_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": false + }, + "file_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"delete_recordings\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveRoleMembership", + "qualifiedName": "PosthogApi.RemoveRoleMembership", + "fullyQualifiedName": "PosthogApi.RemoveRoleMembership@2.0.0", + "description": "Remove a role membership from an organization.\n\nUse this tool to delete a specific role membership for a user within an organization in Datadog. It should be called when you need to remove a user's membership from a particular role.", + "parameters": [ + { + "name": "organization_identifier", + "type": "string", + "required": true, + "description": "A string representing the unique identifier of the organization. Required to specify which organization the role membership belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "role_id", + "type": "string", + "required": true, + "description": "The unique identifier for the role from which membership will be removed. It should be a valid UUID string.", + "enum": null, + "inferrable": true + }, + { + "name": "role_membership_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific role membership to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'roles_role_memberships_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveRoleMembership", + "parameters": { + "organization_identifier": { + "value": "org-12345", + "type": "string", + "required": true + }, + "role_id": { + "value": "8f14e45f-ea31-4c29-9f75-7a3ef788e2c2", + "type": "string", + "required": true + }, + "role_membership_id": { + "value": "de34fd5a-73e4-4d91-b453-b50d3eef6e00", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveSessionRecording", + "qualifiedName": "PosthogApi.RemoveSessionRecording", + "fullyQualifiedName": "PosthogApi.RemoveSessionRecording@2.0.0", + "description": "Delete a session recording from an environment.\n\nUse this tool to delete a specific session recording in a project environment. Call it when you need to remove a session recording identified by its ID.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project you want to access. Retrieve from /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the session recording to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recordings_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveSessionRecording", + "parameters": { + "project_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "session_recording_id": { + "value": "b8cb58b7-1e0e-4a9b-8d8a-0e45f650fa3d", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveSessionRecordingPlaylist", + "qualifiedName": "PosthogApi.RemoveSessionRecordingPlaylist", + "fullyQualifiedName": "PosthogApi.RemoveSessionRecordingPlaylist@2.0.0", + "description": "Soft delete a session recording playlist in a project.\n\nUse this tool to mark a session recording playlist as deleted within a specified project. This tool should be called when you need to remove access to a session recording playlist without permanently deleting its data.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_playlist_short_id", + "type": "string", + "required": true, + "description": "A unique short identifier for the session recording playlist to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recording_playlists_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveSessionRecordingPlaylist", + "parameters": { + "project_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "session_recording_playlist_short_id": { + "value": "abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveSharingPassword", + "qualifiedName": "PosthogApi.RemoveSharingPassword", + "fullyQualifiedName": "PosthogApi.RemoveSharingPassword@2.0.0", + "description": "Delete a sharing configuration password from a session recording.\n\nUse to remove a specific password from the sharing configuration of a session recording in a given project.", + "parameters": [ + { + "name": "password_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the password to be removed from the sharing configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project for accessing its session recordings. Retrieve this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_id", + "type": "string", + "required": true, + "description": "The ID of the session recording from which the password will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recordings_sharing_passwords_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveSharingPassword", + "parameters": { + "password_identifier": { + "value": "unique-password-123", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-xyz-789", + "type": "string", + "required": true + }, + "session_recording_id": { + "value": "session-recording-456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveWarehouseTable", + "qualifiedName": "PosthogApi.RemoveWarehouseTable", + "fullyQualifiedName": "PosthogApi.RemoveWarehouseTable@2.0.0", + "description": "Delete a specified warehouse table from a project.\n\nUse this tool to remove a warehouse table from a specific project by providing the project and table identifiers.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "warehouse_table_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the data warehouse table to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_tables_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RemoveWarehouseTable", + "parameters": { + "project_identifier": { + "value": "1234", + "type": "string", + "required": true + }, + "warehouse_table_uuid": { + "value": "550e8400-e29b-41d4-a716-bcd46e838b3e", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ReorderAssignmentRules", + "qualifiedName": "PosthogApi.ReorderAssignmentRules", + "fullyQualifiedName": "PosthogApi.ReorderAssignmentRules@2.0.0", + "description": "Reorder error tracking assignment rules in a project environment.\n\nThis tool allows reordering of assignment rules for error tracking within a specific project environment. Useful for prioritizing rules in Datadog environments.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The Project ID for accessing the desired project. Retrieve it using /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "disable_rule_data", + "type": "string", + "required": false, + "description": "Specify whether rule data is disabled, using 'true' or 'false'.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_filters", + "type": "string", + "required": false, + "description": "A string containing conditions to filter assignment rules for reordering. Useful for applying specific criteria when reordering rules.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_id", + "type": "string", + "required": false, + "description": "The specific ID of the assignment rule to be reordered within the project environment.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_order_position", + "type": "integer", + "required": false, + "description": "The new position for the assignment rule in the order list. Use an integer to specify the desired position.", + "enum": null, + "inferrable": true + }, + { + "name": "target_assignee", + "type": "string", + "required": false, + "description": "Specifies the assignee for the error tracking rules in the project. This should be a valid user identifier in the Datadog environment.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_assignment_rules_reorder_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ReorderAssignmentRules", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "disable_rule_data": { + "value": "false", + "type": "string", + "required": false + }, + "rule_filters": { + "value": "severity:high,status:active", + "type": "string", + "required": false + }, + "rule_id": { + "value": "rule_67890", + "type": "string", + "required": false + }, + "rule_order_position": { + "value": 2, + "type": "integer", + "required": false + }, + "target_assignee": { + "value": "user_42", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ReorderErrorTrackingRules", + "qualifiedName": "PosthogApi.ReorderErrorTrackingRules", + "fullyQualifiedName": "PosthogApi.ReorderErrorTrackingRules@2.0.0", + "description": "Reorder error tracking grouping rules in a project.\n\nUse this tool to change the order of error tracking grouping rules within a specified project environment. Useful for prioritizing or restructuring how errors are grouped.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project you wish to access. Obtainable via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "disabled_data_details", + "type": "string", + "required": false, + "description": "Specify details of the data to disable or modify. Format as a string describing which elements are affected.", + "enum": null, + "inferrable": true + }, + { + "name": "error_grouping_filters", + "type": "string", + "required": false, + "description": "Filters to apply for selecting specific error tracking rules to reorder. This can include criteria like rule severity, type, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "error_tracking_rule_id", + "type": "string", + "required": false, + "description": "Unique identifier for the error tracking rule you want to reorder.", + "enum": null, + "inferrable": true + }, + { + "name": "new_order_key", + "type": "integer", + "required": false, + "description": "An integer representing the new order position for the error tracking grouping rules.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_assignee", + "type": "string", + "required": false, + "description": "Assign a person or role responsible for the error tracking grouping rule. Expected to be a string representing a user's name or identifier.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_grouping_rules_reorder_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ReorderErrorTrackingRules", + "parameters": { + "project_identifier": { + "value": "project_1234", + "type": "string", + "required": true + }, + "disabled_data_details": { + "value": "Disable error tracking for deprecated endpoints.", + "type": "string", + "required": false + }, + "error_grouping_filters": { + "value": "severity: high, type: network", + "type": "string", + "required": false + }, + "error_tracking_rule_id": { + "value": "rule_5678", + "type": "string", + "required": false + }, + "new_order_key": { + "value": 3, + "type": "integer", + "required": false + }, + "rule_assignee": { + "value": "john_doe", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ReorderErrorTrackingSuppressionRules", + "qualifiedName": "PosthogApi.ReorderErrorTrackingSuppressionRules", + "fullyQualifiedName": "PosthogApi.ReorderErrorTrackingSuppressionRules@2.0.0", + "description": "Reorder error tracking suppression rules for a project.\n\nUse this tool to reorder suppression rules within a specified project's error tracking environment. This is essential for adjusting the priority or sequence of how errors are suppressed.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project for which you want to reorder suppression rules. To locate the ID, make a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "error_tracking_filters", + "type": "string", + "required": false, + "description": "Specify filter criteria to narrow down which suppression rules are reordered, using a string format.", + "enum": null, + "inferrable": true + }, + { + "name": "new_order_key", + "type": "integer", + "required": false, + "description": "Integer representing the new order sequence for suppression rules in a project.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_id", + "type": "string", + "required": false, + "description": "The unique ID of the suppression rule you're reordering within the project.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_suppression_rules_reorder_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ReorderErrorTrackingSuppressionRules", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "error_tracking_filters": { + "value": "error_type=critical", + "type": "string", + "required": false + }, + "new_order_key": { + "value": 2, + "type": "integer", + "required": false + }, + "suppression_rule_id": { + "value": "rule_67890", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RequestEmailVerification", + "qualifiedName": "PosthogApi.RequestEmailVerification", + "fullyQualifiedName": "PosthogApi.RequestEmailVerification@2.0.0", + "description": "Request an email verification for a user.\n\n\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_request_email_verification_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RequestEmailVerification", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"email\":\"user@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ResetDistinctId", + "qualifiedName": "PosthogApi.ResetDistinctId", + "fullyQualifiedName": "PosthogApi.ResetDistinctId@2.0.0", + "description": "Reset a distinct_id for a deleted person.\n\n This tool resets a distinct_id for a person who has been deleted, allowing the distinct_id to be reused.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve this via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response. Options are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_reset_person_distinct_id_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ResetDistinctId", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "123456", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"distinct_id\": \"abc-1234\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ResetPersonDistinctId", + "qualifiedName": "PosthogApi.ResetPersonDistinctId", + "fullyQualifiedName": "PosthogApi.ResetPersonDistinctId@2.0.0", + "description": "Reset a distinct_id for a deleted person to reuse it.\n\n This tool is used to reset a distinct_id associated with a deleted person in the specified project, allowing the distinct_id to be reused.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Use the /api/projects/ endpoint to retrieve available IDs. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the response format. Options are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_reset_person_distinct_id_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ResetPersonDistinctId", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"distinct_id\": \"example_distinct_id\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ResetProjectEnvironmentToken", + "qualifiedName": "PosthogApi.ResetProjectEnvironmentToken", + "fullyQualifiedName": "PosthogApi.ResetProjectEnvironmentToken@2.0.0", + "description": "Resets the token for a specified project environment.\n\n Use this tool to reset the token for a specific environment within a project in the current organization. This is useful for refreshing security credentials or regenerating authentication tokens.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "environment_identifier", + "type": "integer", + "required": false, + "description": "A unique integer value identifying the environment or team. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_reset_token_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ResetProjectEnvironmentToken", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "environment_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "project_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"reset\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ResetProjectToken", + "qualifiedName": "PosthogApi.ResetProjectToken", + "fullyQualifiedName": "PosthogApi.ResetProjectToken@2.0.0", + "description": "Reset a project's token in the current organization.\n\n Use this tool to reset the token for a specific project within the current organization. It should be called when there's a need to update security or access settings for a project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": false, + "description": "A unique identifier for the project whose token will be reset. This is required to specify which project's token needs to be reset. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "The unique identifier for the organization in which the project is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reset_token_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ResetProjectToken", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": 123, + "type": "integer", + "required": false + }, + "organization_id": { + "value": "org-456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"reset\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ResolveGithubFileLinks", + "qualifiedName": "PosthogApi.ResolveGithubFileLinks", + "fullyQualifiedName": "PosthogApi.ResolveGithubFileLinks@2.0.0", + "description": "Resolve GitHub file links for error tracking projects.\n\nThis tool retrieves resolved file links from GitHub for error tracking within specific environments, helping to pinpoint file locations in your project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve the ID via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_git_provider_file_links_resolve_github_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ResolveGithubFileLinks", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ResumeBatchExport", + "qualifiedName": "PosthogApi.ResumeBatchExport", + "fullyQualifiedName": "PosthogApi.ResumeBatchExport@2.0.0", + "description": "Unpause a paused BatchExport for a given organization.\n\n Use this tool to resume a previously paused BatchExport for a specified organization. Ideal for situations where data export needs to be continued after a halt.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the batch export to unpause. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "A string representing the organization's unique identifier within Datadog. Required to specify which organization's BatchExport to unpause. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_unpause_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ResumeBatchExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_id": { + "value": "d65f34c2-170d-4f6b-aa8b-2e99fca87b0a", + "type": "string", + "required": false + }, + "organization_identifier": { + "value": "org-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"resumed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "Retrieve2faStatus", + "qualifiedName": "PosthogApi.Retrieve2faStatus", + "fullyQualifiedName": "PosthogApi.Retrieve2faStatus@2.0.0", + "description": "Retrieve current 2FA status and backup codes if enabled.\n\nUse this tool to get the current two-factor authentication (2FA) status for a user, including backup codes if they are enabled. This is useful for verifying 2FA settings and ensuring backup options are available.", + "parameters": [ + { + "name": "user_identifier_uuid", + "type": "string", + "required": true, + "description": "A unique identifier for the user to retrieve the 2FA status. Typically a string of alphanumeric characters.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_two_factor_status_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.Retrieve2faStatus", + "parameters": { + "user_identifier_uuid": { + "value": "abc123-xyz789-mno456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveAgentDefinition", + "qualifiedName": "PosthogApi.RetrieveAgentDefinition", + "fullyQualifiedName": "PosthogApi.RetrieveAgentDefinition@2.0.0", + "description": "Retrieve a specific agent definition by ID.\n\nUse this tool to obtain detailed information about a specific agent by providing its ID and the associated project ID.", + "parameters": [ + { + "name": "agent_id", + "type": "string", + "required": true, + "description": "The unique identifier of the agent to retrieve. This ID specifies which agent's details to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project you want to access. Use the API call /api/projects/ to find the project ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'agents_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveAgentDefinition", + "parameters": { + "agent_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveAppMetrics", + "qualifiedName": "PosthogApi.RetrieveAppMetrics", + "fullyQualifiedName": "PosthogApi.RetrieveAppMetrics@2.0.0", + "description": "Retrieve application metrics for a specific project environment.\n\nThis tool retrieves application metrics for a specified project environment from Datadog. Use it to gain insights into application performance and operations for a given project ID and metric ID.", + "parameters": [ + { + "name": "plugin_config_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the plugin configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "A string representing the ID of the project to access metrics for. Obtain this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_app_metrics_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveAppMetrics", + "parameters": { + "plugin_config_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveAppMetricsErrorDetails", + "qualifiedName": "PosthogApi.RetrieveAppMetricsErrorDetails", + "fullyQualifiedName": "PosthogApi.RetrieveAppMetricsErrorDetails@2.0.0", + "description": "Retrieve detailed error metrics for a specific app.\n\nUse this tool to get detailed error metrics for a specific app within a project. It retrieves error details associated with application metrics.", + "parameters": [ + { + "name": "plugin_config_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the plugin configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "String representing the Project ID to access. Obtain this ID via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_app_metrics_error_details_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveAppMetricsErrorDetails", + "parameters": { + "plugin_config_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveAppMetricsExports", + "qualifiedName": "PosthogApi.RetrieveAppMetricsExports", + "fullyQualifiedName": "PosthogApi.RetrieveAppMetricsExports@2.0.0", + "description": "Retrieve historical app metrics exports for a project.\n\nThis tool retrieves historical app metrics exports for a specific project and plugin configuration in Datadog. Call it when you need to access past metrics data for analysis or reporting.", + "parameters": [ + { + "name": "plugin_configuration_id", + "type": "string", + "required": true, + "description": "The ID of the plugin configuration to retrieve metrics for. Ensure it matches the correct configuration in your Datadog setup.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_of_the_posthog_project", + "type": "string", + "required": true, + "description": "The ID of the Datadog project to access. Obtain it via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_app_metrics_historical_exports_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveAppMetricsExports", + "parameters": { + "plugin_configuration_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "project_id_of_the_posthog_project": { + "value": "proj789456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveAppMetricsHistoricalExports", + "qualifiedName": "PosthogApi.RetrieveAppMetricsHistoricalExports", + "fullyQualifiedName": "PosthogApi.RetrieveAppMetricsHistoricalExports@2.0.0", + "description": "Retrieve historical export data for app metrics.\n\nThis tool retrieves historical export data for app metrics using specified project and plugin configuration IDs. It should be called when detailed historical app metrics are needed for analysis or reporting.", + "parameters": [ + { + "name": "export_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific app metrics export record to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "plugin_configuration_id", + "type": "string", + "required": true, + "description": "The ID for the plugin configuration to be used when retrieving app metrics. This is required to specify the context of the metrics data.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access the targeted project. Retrieve the ID using the /api/projects/ endpoint if needed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'app_metrics_historical_exports_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveAppMetricsHistoricalExports", + "parameters": { + "export_id": { + "value": "export_12345", + "type": "string", + "required": true + }, + "plugin_configuration_id": { + "value": "plugin_config_67890", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_54321", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveBatchExportBackfill", + "qualifiedName": "PosthogApi.RetrieveBatchExportBackfill", + "fullyQualifiedName": "PosthogApi.RetrieveBatchExportBackfill@2.0.0", + "description": "Retrieve details of a batch export backfill.\n\nUse this tool to get information about a specific batch export backfill in a given environment using project ID, export ID, and backfill ID.", + "parameters": [ + { + "name": "batch_export_backfill_uuid", + "type": "string", + "required": true, + "description": "The UUID identifying the specific batch export backfill to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "batch_export_identifier", + "type": "string", + "required": true, + "description": "The identifier for the specific batch export. Provide as a string to retrieve backfill details.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Use /api/projects/ to retrieve the ID if unknown.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_backfills_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveBatchExportBackfill", + "parameters": { + "batch_export_backfill_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "batch_export_identifier": { + "value": "export_20231001", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_1a2b3c", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveBatchExportDetails", + "qualifiedName": "PosthogApi.RetrieveBatchExportDetails", + "fullyQualifiedName": "PosthogApi.RetrieveBatchExportDetails@2.0.0", + "description": "Retrieve details of a specific batch export in an organization.\n\nUse this tool to get detailed information about a specific batch export within an organization using Datadog's API. Suitable when you need to access export data by providing organization and batch export IDs.", + "parameters": [ + { + "name": "batch_export_id", + "type": "string", + "required": true, + "description": "A UUID string identifying this specific batch export.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "A unique identifier for the organization. Provide this to retrieve batch export details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveBatchExportDetails", + "parameters": { + "batch_export_id": { + "value": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "type": "string", + "required": true + }, + "organization_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveBatchExportLogs", + "qualifiedName": "PosthogApi.RetrieveBatchExportLogs", + "fullyQualifiedName": "PosthogApi.RetrieveBatchExportLogs@2.0.0", + "description": "Retrieve logs from a specific batch export.\n\nUse this tool to get logs from a specific batch export in an organization. Ideal for accessing logs related to specific export tasks.", + "parameters": [ + { + "name": "batch_export_id", + "type": "string", + "required": true, + "description": "A UUID string to identify the batch export for log retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "A string representing the unique identifier of the organization. Required to retrieve specific batch export logs.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_logs_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveBatchExportLogs", + "parameters": { + "batch_export_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org-789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveBatchExportRun", + "qualifiedName": "PosthogApi.RetrieveBatchExportRun", + "fullyQualifiedName": "PosthogApi.RetrieveBatchExportRun@2.0.0", + "description": "Retrieve details of a specific batch export run.\n\nUse this tool to get detailed information about a specific batch export run within a project. It should be called when you need to analyze or review the results of a batch export operation in Datadog.", + "parameters": [ + { + "name": "batch_export_id", + "type": "string", + "required": true, + "description": "A unique string to identify the batch export run you want to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "batch_export_run_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific batch export run for detailed retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Provide the Project ID to access the specific project. Use /api/projects/ to obtain the ID if unknown.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_runs_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveBatchExportRun", + "parameters": { + "batch_export_id": { + "value": "export_12345", + "type": "string", + "required": true + }, + "batch_export_run_uuid": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveBatchExportRunLogs", + "qualifiedName": "PosthogApi.RetrieveBatchExportRunLogs", + "fullyQualifiedName": "PosthogApi.RetrieveBatchExportRunLogs@2.0.0", + "description": "Retrieve logs for a specific batch export run.\n\nUse this tool to access logs associated with a specific run of a batch export in Datadog. Useful for monitoring and debugging batch export processes.", + "parameters": [ + { + "name": "batch_export_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the batch export. Necessary for retrieving logs for that specific export run.", + "enum": null, + "inferrable": true + }, + { + "name": "batch_export_run_id", + "type": "string", + "required": true, + "description": "A UUID string identifying this specific batch export run in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project you want to access. Retrieve it by calling `/api/projects/`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_runs_logs_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveBatchExportRunLogs", + "parameters": { + "batch_export_identifier": { + "value": "export-12345", + "type": "string", + "required": true + }, + "batch_export_run_id": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": true + }, + "project_id": { + "value": "project-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveBatchExportsTest", + "qualifiedName": "PosthogApi.RetrieveBatchExportsTest", + "fullyQualifiedName": "PosthogApi.RetrieveBatchExportsTest@2.0.0", + "description": "Retrieve batch exports test details for an organization.\n\nCall this tool to obtain the details of a batch exports test for a specified organization in Datadog. It is useful to verify export configurations and ensure they are properly set up.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization to retrieve batch export test details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_test_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveBatchExportsTest", + "parameters": { + "organization_id": { + "value": "org-123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveBatchExportTests", + "qualifiedName": "PosthogApi.RetrieveBatchExportTests", + "fullyQualifiedName": "PosthogApi.RetrieveBatchExportTests@2.0.0", + "description": "Retrieve batch export test details for a project.\n\nUse this tool to get information on batch export tests for a specific project by providing the project ID.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use the /api/projects/ endpoint to find this ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_test_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveBatchExportTests", + "parameters": { + "project_identifier": { + "value": "1234-5678-90ab-cdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveClickupLists", + "qualifiedName": "PosthogApi.RetrieveClickupLists", + "fullyQualifiedName": "PosthogApi.RetrieveClickupLists@2.0.0", + "description": "Retrieve ClickUp lists for specific project integrations.\n\nUse this tool to fetch ClickUp lists linked to a given project's integrations. Ideal for obtaining detailed list information for environment integrations.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "Unique integer identifying the specific integration.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project you want to access. Retrieve it via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_clickup_lists_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveClickupLists", + "parameters": { + "integration_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_7890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveClickupSpaces", + "qualifiedName": "PosthogApi.RetrieveClickupSpaces", + "fullyQualifiedName": "PosthogApi.RetrieveClickupSpaces@2.0.0", + "description": "Retrieve ClickUp spaces for a specific integration.\n\nUse this tool to get a list of ClickUp spaces linked to a particular integration within a project. This is useful for managing or understanding the spaces connected to your integrations.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the integration to retrieve associated ClickUp spaces.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access spaces for. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_clickup_spaces_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveClickupSpaces", + "parameters": { + "integration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "abc-123-def", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveClickupWorkspaces", + "qualifiedName": "PosthogApi.RetrieveClickupWorkspaces", + "fullyQualifiedName": "PosthogApi.RetrieveClickupWorkspaces@2.0.0", + "description": "Retrieve ClickUp workspaces for a project integration.\n\nUse this tool to obtain the ClickUp workspaces associated with a specific project integration in Datadog. Ideal for checking or managing workspace details within the integration.", + "parameters": [ + { + "name": "integration_unique_identifier", + "type": "integer", + "required": true, + "description": "A unique integer identifying the integration for retrieving ClickUp workspaces.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access specific ClickUp workspaces. Obtain the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_clickup_workspaces_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveClickupWorkspaces", + "parameters": { + "integration_unique_identifier": { + "value": 123456, + "type": "integer", + "required": true + }, + "project_id": { + "value": "abc-123-project", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCohortActivity", + "qualifiedName": "PosthogApi.RetrieveCohortActivity", + "fullyQualifiedName": "PosthogApi.RetrieveCohortActivity@2.0.0", + "description": "Retrieve logs of cohort activity views.\n\nFetches records of file system views on cohort data for a given project, logging each view as a GET request is made.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access specific cohort activity logs. Retrieve the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cohorts_activity_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveCohortActivity", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCohortCalculationHistory", + "qualifiedName": "PosthogApi.RetrieveCohortCalculationHistory", + "fullyQualifiedName": "PosthogApi.RetrieveCohortCalculationHistory@2.0.0", + "description": "Retrieve calculation history for a specific cohort.\n\nUse this tool to access the calculation history for a given cohort within a specific project. It helps track changes and updates over time.", + "parameters": [ + { + "name": "cohort_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the cohort to retrieve calculation history for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you are accessing. Use /api/projects/ to find IDs.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cohorts_calculation_history_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveCohortCalculationHistory", + "parameters": { + "cohort_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCohortsData", + "qualifiedName": "PosthogApi.RetrieveCohortsData", + "fullyQualifiedName": "PosthogApi.RetrieveCohortsData@2.0.0", + "description": "Retrieve cohort details and access logs for a project.\n\nThis tool retrieves details about cohorts and logs each system view access within a specified project. It should be called when you need to track file system interactions and get specific cohort data for analysis.", + "parameters": [ + { + "name": "cohort_identifier", + "type": "integer", + "required": true, + "description": "A unique integer that identifies the specific cohort you wish to retrieve data for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cohorts_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveCohortsData", + "parameters": { + "cohort_identifier": { + "value": 123, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_4567", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDashboardTemplate", + "qualifiedName": "PosthogApi.RetrieveDashboardTemplate", + "fullyQualifiedName": "PosthogApi.RetrieveDashboardTemplate@2.0.0", + "description": "Retrieve a specific dashboard template by ID.\n\nUse this tool to get information about a specific dashboard template in a project. This is helpful when you need details about how dashboards are set up or to confirm template configurations.", + "parameters": [ + { + "name": "dashboard_template_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the dashboard template to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "A string representing the ID of the project you want to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboard_templates_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveDashboardTemplate", + "parameters": { + "dashboard_template_uuid": { + "value": "a3c1d0e1-9f44-4bda-8c3b-d9f7e8e20b5b", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "my-project-123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDashboardTemplateSchema", + "qualifiedName": "PosthogApi.RetrieveDashboardTemplateSchema", + "fullyQualifiedName": "PosthogApi.RetrieveDashboardTemplateSchema@2.0.0", + "description": "Retrieve JSON schema for dashboard templates.\n\nCall this tool to get the JSON schema details for dashboard templates in a specified project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Specify the Project ID for accessing the relevant dashboard template schema. Obtain the ID via the /api/projects/ endpoint if unknown.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboard_templates_json_schema_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveDashboardTemplateSchema", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDashboardTiles", + "qualifiedName": "PosthogApi.RetrieveDashboardTiles", + "fullyQualifiedName": "PosthogApi.RetrieveDashboardTiles@2.0.0", + "description": "Stream metadata and tiles of a dashboard.\n\nStream dashboard metadata and tiles via Server-Sent Events, starting with metadata followed by tiles as they are rendered.", + "parameters": [ + { + "name": "dashboard_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the dashboard to stream metadata and tiles from.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the streamed data. Options include 'json' and 'txt'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_stream_tiles_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveDashboardTiles", + "parameters": { + "dashboard_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDataColorTheme", + "qualifiedName": "PosthogApi.RetrieveDataColorTheme", + "fullyQualifiedName": "PosthogApi.RetrieveDataColorTheme@2.0.0", + "description": "Retrieve details of a specific data color theme.\n\nUse this tool to get detailed information about a specific data color theme for a given project. This is useful when you need to display or manage color themes within an application.", + "parameters": [ + { + "name": "data_color_theme_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the specific data color theme to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Use /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'data_color_themes_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveDataColorTheme", + "parameters": { + "data_color_theme_id": { + "value": 123, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project_ABC", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDatasetInfo", + "qualifiedName": "PosthogApi.RetrieveDatasetInfo", + "fullyQualifiedName": "PosthogApi.RetrieveDatasetInfo@2.0.0", + "description": "Retrieve details of a specific dataset in a project.\n\nThis tool fetches detailed information about a specific dataset within a given project when the project ID and dataset ID are provided.", + "parameters": [ + { + "name": "dataset_identifier", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific dataset to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to retrieve project IDs.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'datasets_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveDatasetInfo", + "parameters": { + "dataset_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "proj_abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDatasetItem", + "qualifiedName": "PosthogApi.RetrieveDatasetItem", + "fullyQualifiedName": "PosthogApi.RetrieveDatasetItem@2.0.0", + "description": "Retrieve details of a specific dataset item.\n\nUse this tool to obtain information about a particular dataset item within a project. Useful for accessing specific data insights or details needed from Datadog's datasets.", + "parameters": [ + { + "name": "dataset_item_id", + "type": "string", + "required": true, + "description": "The UUID identifying the specific dataset item to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use '/api/projects/' to find this ID if needed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dataset_items_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveDatasetItem", + "parameters": { + "dataset_item_id": { + "value": "d5f805d4-d17a-4c54-b05d-a3c53fbd5312", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345-abcde-67890-fghij-09876", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDefaultEvaluationTags", + "qualifiedName": "PosthogApi.RetrieveDefaultEvaluationTags", + "fullyQualifiedName": "PosthogApi.RetrieveDefaultEvaluationTags@2.0.0", + "description": "Retrieve default evaluation tags for a project environment.\n\nFetches the default evaluation tags associated with a specified project environment in Datadog. Useful for managing and reviewing tags related to evaluations for team environments.", + "parameters": [ + { + "name": "environment_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the environment or team for tag retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project. Retrieve the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_default_evaluation_tags_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveDefaultEvaluationTags", + "parameters": { + "environment_id": { + "value": 42, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDomainDetails", + "qualifiedName": "PosthogApi.RetrieveDomainDetails", + "fullyQualifiedName": "PosthogApi.RetrieveDomainDetails@2.0.0", + "description": "Fetch details of a specific domain in an organization.", + "parameters": [ + { + "name": "domain_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific domain.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "A string representing the unique identifier for the organization to which the domain belongs. Required to retrieve domain details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'domains_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveDomainDetails", + "parameters": { + "domain_id": { + "value": "a3bb189e8bf9f11c91b3001c24f8e98e", + "type": "string", + "required": true + }, + "organization_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDraftSqlQuery", + "qualifiedName": "PosthogApi.RetrieveDraftSqlQuery", + "fullyQualifiedName": "PosthogApi.RetrieveDraftSqlQuery@2.0.0", + "description": "Retrieve draft SQL query for a specific project.\n\nThis tool retrieves the draft SQL query for a given project identified by its project ID. It is useful for obtaining the current draft version of SQL queries in development within a project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access for the draft SQL query. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'query_draft_sql_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveDraftSqlQuery", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEarlyAccessFeature", + "qualifiedName": "PosthogApi.RetrieveEarlyAccessFeature", + "fullyQualifiedName": "PosthogApi.RetrieveEarlyAccessFeature@2.0.0", + "description": "Retrieve information about an early access feature.\n\nCall this tool to get details about a specific early access feature in a project. Useful for tracking file system views related to the feature.", + "parameters": [ + { + "name": "feature_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the early access feature to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project you want to access. Retrieve this by calling the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'early_access_feature_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEarlyAccessFeature", + "parameters": { + "feature_uuid": { + "value": "f3c84547-3a0c-4a21-a36e-67fa9824c8e2", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "proj_1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentBatchExport", + "qualifiedName": "PosthogApi.RetrieveEnvironmentBatchExport", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentBatchExport@2.0.0", + "description": "Retrieve details of a specific environment batch export.\n\nCall this tool to fetch and retrieve details about a specific environment batch export using the project and export identifiers.", + "parameters": [ + { + "name": "batch_export_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific batch export to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentBatchExport", + "parameters": { + "batch_export_uuid": { + "value": "e870a6b5-0497-4c06-8a1d-902d2b7e0aef", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentBatchExportLogs", + "qualifiedName": "PosthogApi.RetrieveEnvironmentBatchExportLogs", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentBatchExportLogs@2.0.0", + "description": "Retrieve logs from a specific environment batch export run.\n\nUse this tool to get logs from a specified batch export run within an environment. It requires details about the project, batch export, and run ID to locate the logs.", + "parameters": [ + { + "name": "batch_export_identifier", + "type": "string", + "required": true, + "description": "A string representing the unique identifier for the batch export.", + "enum": null, + "inferrable": true + }, + { + "name": "batch_export_run_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific batch export run.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique Project ID needed to access the specific project. Retrieve this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_runs_logs_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentBatchExportLogs", + "parameters": { + "batch_export_identifier": { + "value": "export-12345", + "type": "string", + "required": true + }, + "batch_export_run_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentColorTheme", + "qualifiedName": "PosthogApi.RetrieveEnvironmentColorTheme", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentColorTheme@2.0.0", + "description": "Retrieve color theme data for a specific environment.\n\nThis tool retrieves detailed color theme data for a specified environment in a project. Use this tool when you need to access or display the visual theme settings of an environment in Datadog.", + "parameters": [ + { + "name": "color_theme_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the data color theme for the environment.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project whose environment color theme data is being accessed. Obtain it via `/api/projects/`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_data_color_themes_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentColorTheme", + "parameters": { + "color_theme_id": { + "value": 42, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "my_project_123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentDataset", + "qualifiedName": "PosthogApi.RetrieveEnvironmentDataset", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentDataset@2.0.0", + "description": "Retrieve a specific environment dataset by ID.\n\nUse this tool to retrieve detailed information about a specific environment dataset using the project and dataset IDs.", + "parameters": [ + { + "name": "environment_dataset_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific environment dataset to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Use /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_datasets_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentDataset", + "parameters": { + "environment_dataset_id": { + "value": "e2b2c4d2-91d1-44af-9b22-1c0b23b814a6", + "type": "string", + "required": true + }, + "project_id": { + "value": "4c3b0d57-75d7-4c25-8406-448daf21cbc5", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentDatasetItem", + "qualifiedName": "PosthogApi.RetrieveEnvironmentDatasetItem", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentDatasetItem@2.0.0", + "description": "Retrieve a specific environment dataset item by ID.\n\nUse this tool to fetch details of a specific dataset item within an environment using the project and item IDs.", + "parameters": [ + { + "name": "dataset_item_id", + "type": "string", + "required": true, + "description": "A UUID string that identifies the specific dataset item to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access. To find it, call /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dataset_items_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentDatasetItem", + "parameters": { + "dataset_item_id": { + "value": "b6e1c3e8-3b9c-4e22-9d6e-3154ae019c88", + "type": "string", + "required": true + }, + "project_id": { + "value": "4c7e6c1b-ea0f-4b7d-bd5e-e045b52a63f7", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentDraftSql", + "qualifiedName": "PosthogApi.RetrieveEnvironmentDraftSql", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentDraftSql@2.0.0", + "description": "Retrieve draft SQL for a specific environment.\n\nThis tool retrieves the draft SQL query for a specified project environment. It should be called when you need to access the draft SQL for analyzing or debugging purposes.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_query_draft_sql_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentDraftSql", + "parameters": { + "project_identifier": { + "value": "project_1234", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentEvaluation", + "qualifiedName": "PosthogApi.RetrieveEnvironmentEvaluation", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentEvaluation@2.0.0", + "description": "Retrieve details of a specific environment evaluation.\n\nUse this tool to get details about a specific environment evaluation by providing the project and evaluation IDs.", + "parameters": [ + { + "name": "evaluation_id", + "type": "string", + "required": true, + "description": "A UUID string that uniquely identifies the evaluation to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access. Use /api/projects/ to find it.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_evaluations_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentEvaluation", + "parameters": { + "evaluation_id": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": true + }, + "project_id": { + "value": "5e7ea2d9-4c3f-45e3-974e-dc0dc5c3d334", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentEvent", + "qualifiedName": "PosthogApi.RetrieveEnvironmentEvent", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentEvent@2.0.0", + "description": "Retrieve details of a specific environment event.\n\nUse this tool to fetch detailed information about a specific event within a given environment in your project using DataDog.", + "parameters": [ + { + "name": "event_id", + "type": "string", + "required": true, + "description": "The unique identifier for the environment event you want to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project you want to access. Use /api/projects/ to obtain it if unknown.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the desired format of the response. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_events_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentEvent", + "parameters": { + "event_id": { + "value": "123456", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "my_project_001", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentEventValues", + "qualifiedName": "PosthogApi.RetrieveEnvironmentEventValues", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentEventValues@2.0.0", + "description": "Retrieve event values for a specific environment.\n\nThis tool should be called to retrieve event values for a particular environment within a project. It requires the project ID to access the relevant environment data.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access environment data. Retrieve via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specifies the format of the returned data. Use 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_events_values_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentEventValues", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentExportContent", + "qualifiedName": "PosthogApi.RetrieveEnvironmentExportContent", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentExportContent@2.0.0", + "description": "Retrieve content of a specific environment export.\n\nFetches the content of a specific export for a given environment using the project and export IDs. Use this to obtain detailed export information.", + "parameters": [ + { + "name": "exported_asset_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the exported asset. Required to retrieve the specific environment export content.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access the desired project. Retrieve the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_exports_content_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentExportContent", + "parameters": { + "exported_asset_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "my_project_001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentExportRun", + "qualifiedName": "PosthogApi.RetrieveEnvironmentExportRun", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentExportRun@2.0.0", + "description": "Retrieve details of a specific environment export run.\n\nCall this tool to get information about a specific batch export run for an environment in a project on Datadog. Useful for tracking and checking the status of export operations.", + "parameters": [ + { + "name": "batch_export_id", + "type": "string", + "required": true, + "description": "A unique identifier for the batch export run. Provide the UUID identifying this export.", + "enum": null, + "inferrable": true + }, + { + "name": "batch_export_run_id", + "type": "string", + "required": true, + "description": "A UUID string identifying this specific batch export run for retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project you wish to access. Retrieve this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_runs_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentExportRun", + "parameters": { + "batch_export_id": { + "value": "e8c7f0d1-34f3-4d9f-a4b8-3d8c5ed6a6f6", + "type": "string", + "required": true + }, + "batch_export_run_id": { + "value": "a1b2c3d4-e5f6-7g8h-9i0j-k1l2m3n4o5p6", + "type": "string", + "required": true + }, + "project_id": { + "value": "f1e2d3c4-b5a6-7b8c-9d0e-f1g2h3i4j5k6", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentExports", + "qualifiedName": "PosthogApi.RetrieveEnvironmentExports", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentExports@2.0.0", + "description": "Retrieve details of an environment export in Datadog.\n\nCall this tool to get information about a specific environment export using its project ID and export ID.", + "parameters": [ + { + "name": "export_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the exported asset to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve using /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_exports_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentExports", + "parameters": { + "export_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentGroupActivity", + "qualifiedName": "PosthogApi.RetrieveEnvironmentGroupActivity", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentGroupActivity@2.0.0", + "description": "Retrieve activity data for groups within an environment.\n\nUse this tool to access activity details for groups within a specific environment by providing the project ID. Ideal for monitoring or analyzing environment group activities.", + "parameters": [ + { + "name": "group_type_index", + "type": "integer", + "required": true, + "description": "An integer that specifies the type of group to find within the environment.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID required to access activity data for the specified environment group. Obtain this ID by making a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id_for_group_retrieval", + "type": "string", + "required": true, + "description": "Specify the user ID to retrieve group activities for within a project.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_groups_activity_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentGroupActivity", + "parameters": { + "group_type_index": { + "value": 1, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_123456", + "type": "string", + "required": true + }, + "user_id_for_group_retrieval": { + "value": "user_7890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentHogFunctionIcons", + "qualifiedName": "PosthogApi.RetrieveEnvironmentHogFunctionIcons", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentHogFunctionIcons@2.0.0", + "description": "Logs and retrieves hog function icons for a given environment.\n\nUse this tool to log a view and retrieve icons of hog functions for a specific environment using the project ID. It is useful for tracking and managing file system views associated with different environments.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to find the correct ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_hog_functions_icons_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentHogFunctionIcons", + "parameters": { + "project_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentInsightActivity", + "qualifiedName": "PosthogApi.RetrieveEnvironmentInsightActivity", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentInsightActivity@2.0.0", + "description": "Retrieve logs of views on environment insights.\n\nThis tool retrieves logs of views on environment insights for a specific project and insight ID. It should be called when there's a need to track or analyze access activities on environment insights.", + "parameters": [ + { + "name": "insight_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the specific insight to retrieve logs for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Call /api/projects/ to retrieve it.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response. Allowed values are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_activity_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentInsightActivity", + "parameters": { + "insight_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "abc-123-project", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentLogAttributes", + "qualifiedName": "PosthogApi.RetrieveEnvironmentLogAttributes", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentLogAttributes@2.0.0", + "description": "Retrieve log attributes for a specific environment.\n\nThis tool fetches details about log attributes for a specific environment using a given project ID. It is used to gain insights into the log data of different environments.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project whose environment log attributes you want to retrieve. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_logs_attributes_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentLogAttributes", + "parameters": { + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentLogs", + "qualifiedName": "PosthogApi.RetrieveEnvironmentLogs", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentLogs@2.0.0", + "description": "Retrieve logs from environment batch exports.\n\nFetch logs for a specific batch export within a given environment. This tool should be used when you need to access logs related to batch exports for diagnostic or reporting purposes.", + "parameters": [ + { + "name": "batch_export_id", + "type": "string", + "required": true, + "description": "A UUID string that specifies the batch export to retrieve logs for. This is a unique identifier for the log batch export.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access for retrieving environment batch export logs. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_logs_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentLogs", + "parameters": { + "batch_export_id": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentLogsValues", + "qualifiedName": "PosthogApi.RetrieveEnvironmentLogsValues", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentLogsValues@2.0.0", + "description": "Fetch log values for a given environment and project.\n\nCall this tool to retrieve log values associated with a specific project environment using the provided project ID.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_logs_values_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentLogsValues", + "parameters": { + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentPropertyDefinitions", + "qualifiedName": "PosthogApi.RetrieveEnvironmentPropertyDefinitions", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentPropertyDefinitions@2.0.0", + "description": "Retrieve property definitions for environment groups.\n\nUse this tool to get property definitions for environment groups in your project, identified by project ID.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID for accessing environment groups. Use /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_groups_property_definitions_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentPropertyDefinitions", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentPropertyValues", + "qualifiedName": "PosthogApi.RetrieveEnvironmentPropertyValues", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentPropertyValues@2.0.0", + "description": "Retrieve property values of environments within a project.\n\nThis tool retrieves property values for environment groups within a specified project. It is useful when you need to access configuration or metadata associated with environments in a project.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Retrieve this ID via a call to the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_groups_property_values_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentPropertyValues", + "parameters": { + "project_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentQueryActivity", + "qualifiedName": "PosthogApi.RetrieveEnvironmentQueryActivity", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentQueryActivity@2.0.0", + "description": "Retrieve activity details of a saved warehouse query.\n\nCall this tool to get the activity history for a specific saved query in a Datadog environment's warehouse. Use it when you need details about a query's activity by providing the relevant project and query IDs.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID for accessing the specific project. Retrieve it using /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "query_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the data warehouse saved query for retrieving activity details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_saved_queries_activity_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentQueryActivity", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "query_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEnvironmentSessionProperties", + "qualifiedName": "PosthogApi.RetrieveEnvironmentSessionProperties", + "fullyQualifiedName": "PosthogApi.RetrieveEnvironmentSessionProperties@2.0.0", + "description": "Retrieve session property definitions for an environment.\n\nUse this tool to get property definitions related to sessions within a specified environment. Useful for accessing environment-specific session attribute information.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain from calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_sessions_property_definitions_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEnvironmentSessionProperties", + "parameters": { + "project_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveErrorGroupingRules", + "qualifiedName": "PosthogApi.RetrieveErrorGroupingRules", + "fullyQualifiedName": "PosthogApi.RetrieveErrorGroupingRules@2.0.0", + "description": "Retrieve error tracking grouping rules for an environment.\n\nThis tool retrieves error tracking grouping rules for a specified environment and project. It should be called when you need detailed information about the grouping rules applied to error tracking in a particular environment.", + "parameters": [ + { + "name": "grouping_rule_id", + "type": "string", + "required": true, + "description": "A UUID string identifying this specific error tracking grouping rule for retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_for_access", + "type": "string", + "required": true, + "description": "The ID of the project you are trying to access for retrieving error tracking grouping rules. Obtain using the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_grouping_rules_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveErrorGroupingRules", + "parameters": { + "grouping_rule_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_id_for_access": { + "value": "proj_abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveErrorTrackingAssignmentRules", + "qualifiedName": "PosthogApi.RetrieveErrorTrackingAssignmentRules", + "fullyQualifiedName": "PosthogApi.RetrieveErrorTrackingAssignmentRules@2.0.0", + "description": "Retrieve error tracking assignment rules for a project.\n\nThis tool retrieves information about specific error tracking assignment rules for a given project in Datadog. Call this tool to obtain details about assignment rules using the project and rule IDs.", + "parameters": [ + { + "name": "error_tracking_rule_id", + "type": "string", + "required": true, + "description": "A UUID identifying the error tracking assignment rule to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_assignment_rules_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveErrorTrackingAssignmentRules", + "parameters": { + "error_tracking_rule_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_7890abcdef123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveErrorTrackingRelease", + "qualifiedName": "PosthogApi.RetrieveErrorTrackingRelease", + "fullyQualifiedName": "PosthogApi.RetrieveErrorTrackingRelease@2.0.0", + "description": "Retrieves details of a specific error tracking release.\n\nUse this tool to obtain detailed information about a specific error tracking release within a project environment. Call this when you need insights into a particular release's error tracking data.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access specific error tracking release data. Obtainable via /api/projects/ call.", + "enum": null, + "inferrable": true + }, + { + "name": "release_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific error tracking release to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_releases_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveErrorTrackingRelease", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "release_uuid": { + "value": "e2a1d15f-6cfd-4cbd-98a0-d6b8123f3bce", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveErrorTrackingReleaseHash", + "qualifiedName": "PosthogApi.RetrieveErrorTrackingReleaseHash", + "fullyQualifiedName": "PosthogApi.RetrieveErrorTrackingReleaseHash@2.0.0", + "description": "Retrieve details for a specific error tracking release hash.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "release_hash_id", + "type": "string", + "required": true, + "description": "The unique identifier for the error tracking release hash. This ID is necessary to retrieve the specific details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_releases_hash_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveErrorTrackingReleaseHash", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "release_hash_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveErrorTrackingSymbolSet", + "qualifiedName": "PosthogApi.RetrieveErrorTrackingSymbolSet", + "fullyQualifiedName": "PosthogApi.RetrieveErrorTrackingSymbolSet@2.0.0", + "description": "Retrieve details of a specific error tracking symbol set.\n\nUse this tool to obtain detailed information about a specific error tracking symbol set for a project environment within Datadog.", + "parameters": [ + { + "name": "error_tracking_symbol_set_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific error tracking symbol set to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID for accessing the specified project. Use /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_symbol_sets_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveErrorTrackingSymbolSet", + "parameters": { + "error_tracking_symbol_set_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_789xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEventDefinition", + "qualifiedName": "PosthogApi.RetrieveEventDefinition", + "fullyQualifiedName": "PosthogApi.RetrieveEventDefinition@2.0.0", + "description": "Retrieve details of a specific event definition by ID.\n\nUse this tool to get detailed information about a specific event definition in a project by providing the project ID and event definition ID.", + "parameters": [ + { + "name": "event_definition_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific event definition to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Find this by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'event_definitions_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEventDefinition", + "parameters": { + "event_definition_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + }, + "project_id": { + "value": "123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEventDefinitionMetrics", + "qualifiedName": "PosthogApi.RetrieveEventDefinitionMetrics", + "fullyQualifiedName": "PosthogApi.RetrieveEventDefinitionMetrics@2.0.0", + "description": "Retrieve metrics for a specific event definition.\n\nThis tool retrieves metrics associated with a specific event definition within a project. It is useful for analyzing or monitoring event-related data.", + "parameters": [ + { + "name": "event_definition_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific event definition.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Retrieve this via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'event_definitions_metrics_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEventDefinitionMetrics", + "parameters": { + "event_definition_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "my_project_001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEventDefinitions", + "qualifiedName": "PosthogApi.RetrieveEventDefinitions", + "fullyQualifiedName": "PosthogApi.RetrieveEventDefinitions@2.0.0", + "description": "Retrieve event definitions for a specified project.\n\nThis tool is used to retrieve all event definitions associated with a given project ID from Datadog. It is helpful for monitoring or managing project events.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access event definitions. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'event_definitions_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEventDefinitions", + "parameters": { + "project_id": { + "value": "12345-project-id", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEventDetails", + "qualifiedName": "PosthogApi.RetrieveEventDetails", + "fullyQualifiedName": "PosthogApi.RetrieveEventDetails@2.0.0", + "description": "Retrieve details of a specific event.\n\nUse this tool to get detailed information about a particular event by providing the project and event identifiers.", + "parameters": [ + { + "name": "event_id", + "type": "string", + "required": true, + "description": "The unique identifier for the event you want to retrieve details about.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain it with a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response data. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'events_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEventDetails", + "parameters": { + "event_id": { + "value": "12345", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_67890", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEventValues", + "qualifiedName": "PosthogApi.RetrieveEventValues", + "fullyQualifiedName": "PosthogApi.RetrieveEventValues@2.0.0", + "description": "Retrieve event values for a specified project.\n\nThis tool retrieves the event values for a specific project in DataDog. Call this tool when you need to access or analyze event-related data within a particular project context.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access specific event data. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specifies the format of the retrieved event values. Acceptable values are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'events_values_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveEventValues", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveExperimentMetrics", + "qualifiedName": "PosthogApi.RetrieveExperimentMetrics", + "fullyQualifiedName": "PosthogApi.RetrieveExperimentMetrics@2.0.0", + "description": "Retrieve saved experiment metrics from a project.\n\nUse this tool to fetch saved metrics for a specific experiment within a project. It is called when there's a need to obtain details about experiment metrics stored in Datadog.", + "parameters": [ + { + "name": "experiment_metric_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the experiment's saved metric to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project for which you want to retrieve saved experiment metrics. Obtain this by making a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiment_saved_metrics_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveExperimentMetrics", + "parameters": { + "experiment_metric_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveExperimentsFlagStatus", + "qualifiedName": "PosthogApi.RetrieveExperimentsFlagStatus", + "fullyQualifiedName": "PosthogApi.RetrieveExperimentsFlagStatus@2.0.0", + "description": "Retrieve status of experiments requiring flag implementation.\n\nThis tool retrieves information about experiments in a specific project that require flag implementation. It should be called when you need to track or manage feature flag dependencies in experiments.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access for flag implementation status retrieval. Obtain using /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiments_requires_flag_implementation_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveExperimentsFlagStatus", + "parameters": { + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveExperimentTimeseries", + "qualifiedName": "PosthogApi.RetrieveExperimentTimeseries", + "fullyQualifiedName": "PosthogApi.RetrieveExperimentTimeseries@2.0.0", + "description": "Retrieve timeseries data for an experiment-metric pair.\n\nThis tool retrieves timeseries results for a specified experiment and metric combination by aggregating daily results into a compatible format for frontend use. It requires the metric's UUID and its configuration fingerprint.", + "parameters": [ + { + "name": "experiment_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the experiment to retrieve timeseries data for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access. Retrieve the ID with a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiments_timeseries_results_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveExperimentTimeseries", + "parameters": { + "experiment_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveExportedContent", + "qualifiedName": "PosthogApi.RetrieveExportedContent", + "fullyQualifiedName": "PosthogApi.RetrieveExportedContent@2.0.0", + "description": "Retrieve exported content from a specific project.\n\nUse this tool to obtain the exported content from a specified project in Datadog by providing the project ID and export ID.", + "parameters": [ + { + "name": "exported_asset_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the exported asset.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Use /api/projects/ to find the project ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'exports_content_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveExportedContent", + "parameters": { + "exported_asset_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveFeatureFlagActivity", + "qualifiedName": "PosthogApi.RetrieveFeatureFlagActivity", + "fullyQualifiedName": "PosthogApi.RetrieveFeatureFlagActivity@2.0.0", + "description": "Retrieve activity details for a specific feature flag.\n\nCall this tool to get the activity details of a specific feature flag in a given project. Useful for monitoring changes and updates to feature flags.", + "parameters": [ + { + "name": "feature_flag_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the feature flag to retrieve activity for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the project to access. Obtain from the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_activity_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveFeatureFlagActivity", + "parameters": { + "feature_flag_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "my_project_001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveFeatureFlagConfig", + "qualifiedName": "PosthogApi.RetrieveFeatureFlagConfig", + "fullyQualifiedName": "PosthogApi.RetrieveFeatureFlagConfig@2.0.0", + "description": "Retrieve remote configuration of a specific feature flag.\n\nThis tool retrieves the remote configuration of a specified feature flag within a project. It should be called when you need to access feature flag settings to determine its behavior in your application.", + "parameters": [ + { + "name": "feature_flag_identifier", + "type": "integer", + "required": true, + "description": "The unique integer that identifies the specific feature flag to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_remote_config_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveFeatureFlagConfig", + "parameters": { + "feature_flag_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveFeatureFlags", + "qualifiedName": "PosthogApi.RetrieveFeatureFlags", + "fullyQualifiedName": "PosthogApi.RetrieveFeatureFlags@2.0.0", + "description": "Retrieve details of a specific feature flag.\n\nThis tool retrieves information about a specific feature flag within a given project. It should be called when you need to check the status or properties of a feature flag. Use it to ensure feature flags are correctly set for specific users or conditions.", + "parameters": [ + { + "name": "feature_flag_identifier", + "type": "integer", + "required": true, + "description": "The unique integer ID that identifies the specific feature flag to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "ID of the project to access. Retrieve by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveFeatureFlags", + "parameters": { + "feature_flag_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveFeatureFlagsActivity", + "qualifiedName": "PosthogApi.RetrieveFeatureFlagsActivity", + "fullyQualifiedName": "PosthogApi.RetrieveFeatureFlagsActivity@2.0.0", + "description": "Retrieve feature flags activity for a specific project.\n\nUse this tool to get the activity related to feature flags within a specified project. This can be useful for monitoring changes and updates to feature flags.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the project to retrieve feature flags activity. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_activity_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveFeatureFlagsActivity", + "parameters": { + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveFeatureFlagsEvaluationReasons", + "qualifiedName": "PosthogApi.RetrieveFeatureFlagsEvaluationReasons", + "fullyQualifiedName": "PosthogApi.RetrieveFeatureFlagsEvaluationReasons@2.0.0", + "description": "Retrieve evaluation reasons for feature flags by project.\n\nUse this tool to get the evaluation reasons for feature flags associated with a specific project. This is helpful for understanding the behavior of feature flags for different users in your application.", + "parameters": [ + { + "name": "project_id_for_feature_flags", + "type": "string", + "required": true, + "description": "The ID of the project to access for retrieving feature flags evaluation reasons. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_evaluation_reasons_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveFeatureFlagsEvaluationReasons", + "parameters": { + "project_id_for_feature_flags": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveFeatureFlagStatus", + "qualifiedName": "PosthogApi.RetrieveFeatureFlagStatus", + "fullyQualifiedName": "PosthogApi.RetrieveFeatureFlagStatus@2.0.0", + "description": "Retrieve the status of a specific feature flag for a project.\n\nThis tool retrieves the status of a specific feature flag within a project. It should be called when you need to know whether a feature flag is enabled or its current status in a given project.", + "parameters": [ + { + "name": "feature_flag_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the feature flag whose status you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access a specific project. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_status_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveFeatureFlagStatus", + "parameters": { + "feature_flag_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "my_project_001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveFileSystemInfo", + "qualifiedName": "PosthogApi.RetrieveFileSystemInfo", + "fullyQualifiedName": "PosthogApi.RetrieveFileSystemInfo@2.0.0", + "description": "Retrieve detailed file system information for a project.\n\nThis tool is used to retrieve detailed information about a file system associated with a given project. It's useful when needing to access specific file system details for analysis or reporting.", + "parameters": [ + { + "name": "file_system_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the file system to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Get this ID by calling the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveFileSystemInfo", + "parameters": { + "file_system_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveFileSystemShortcut", + "qualifiedName": "PosthogApi.RetrieveFileSystemShortcut", + "fullyQualifiedName": "PosthogApi.RetrieveFileSystemShortcut@2.0.0", + "description": "Retrieve details of a specific file system shortcut.\n\nThis tool fetches details about a specific file system shortcut using the provided project ID and shortcut ID. It should be called when you need information about a particular file system shortcut in a project environment.", + "parameters": [ + { + "name": "file_system_shortcut_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific file system shortcut to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique Project ID needed to access the specific project. Obtain this by querying /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_shortcut_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveFileSystemShortcut", + "parameters": { + "file_system_shortcut_id": { + "value": "e9a1c8c3-0b57-4d12-8a3d-7f7d41f3bf5a", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveGoogleAccessibleAccounts", + "qualifiedName": "PosthogApi.RetrieveGoogleAccessibleAccounts", + "fullyQualifiedName": "PosthogApi.RetrieveGoogleAccessibleAccounts@2.0.0", + "description": "Retrieve Google accessible accounts for a given integration.\n\nUse this tool to get a list of Google accessible accounts linked to a specific integration within a project environment. Call this when needing information about which Google accounts are accessible via the specified integration.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the integration.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access specific Google accounts. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_google_accessible_accounts_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveGoogleAccessibleAccounts", + "parameters": { + "integration_id": { + "value": 123, + "type": "integer", + "required": true + }, + "project_id": { + "value": "abc-123-project", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveGoogleConversionData", + "qualifiedName": "PosthogApi.RetrieveGoogleConversionData", + "fullyQualifiedName": "PosthogApi.RetrieveGoogleConversionData@2.0.0", + "description": "Retrieve Google conversion actions for a specific project.\n\nUse this tool to obtain Google conversion actions associated with a given project in Datadog. This is useful for monitoring and analyzing conversion metrics within your integrated Google services.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the integration for which to retrieve Google conversion actions.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you wish to access. Use this to retrieve specific Google conversion actions. You can find the project ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_google_conversion_actions_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveGoogleConversionData", + "parameters": { + "integration_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj-abc-123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveGroupActivity", + "qualifiedName": "PosthogApi.RetrieveGroupActivity", + "fullyQualifiedName": "PosthogApi.RetrieveGroupActivity@2.0.0", + "description": "Fetches activity data for specified project groups.\n\nThis tool retrieves the activity information for groups within a specified project. It is useful for monitoring or analyzing group interactions and activities within a particular project scope.", + "parameters": [ + { + "name": "group_type_id", + "type": "integer", + "required": true, + "description": "The numeric identifier for the group type to retrieve activity data.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access the specific group activity. Find this ID via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id_for_group_retrieval", + "type": "string", + "required": true, + "description": "Specify the user ID to find associated groups for activity retrieval.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_activity_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveGroupActivity", + "parameters": { + "group_type_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "proj_67890", + "type": "string", + "required": true + }, + "user_id_for_group_retrieval": { + "value": "user_54321", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveGroupPropertyDefinitions", + "qualifiedName": "PosthogApi.RetrieveGroupPropertyDefinitions", + "fullyQualifiedName": "PosthogApi.RetrieveGroupPropertyDefinitions@2.0.0", + "description": "Retrieve group property definitions for a project.\n\nCall this tool to get a list of property definitions for a specific project group. Useful for viewing the properties associated with groups in a project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_property_definitions_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveGroupPropertyDefinitions", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveGroupPropertyValues", + "qualifiedName": "PosthogApi.RetrieveGroupPropertyValues", + "fullyQualifiedName": "PosthogApi.RetrieveGroupPropertyValues@2.0.0", + "description": "Retrieve property values for groups within a project.\n\nThis tool retrieves property values for groups under a specified project in Datadog. It is useful when you need to access specific group configurations or data within a project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_property_values_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveGroupPropertyValues", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveGroupTypeMetric", + "qualifiedName": "PosthogApi.RetrieveGroupTypeMetric", + "fullyQualifiedName": "PosthogApi.RetrieveGroupTypeMetric@2.0.0", + "description": "Retrieve metrics for a specific group type.\n\nCalls the Datadog API to retrieve detailed information about a specific metric within a specified group type for a project. Useful for monitoring and analyzing specific metrics in projects.", + "parameters": [ + { + "name": "group_type_index", + "type": "integer", + "required": true, + "description": "An integer representing the index of the group type to retrieve metrics for.", + "enum": null, + "inferrable": true + }, + { + "name": "group_usage_metric_id", + "type": "string", + "required": true, + "description": "A UUID string identifying this group usage metric to retrieve its details.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access, retrievable via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_types_metrics_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveGroupTypeMetric", + "parameters": { + "group_type_index": { + "value": 2, + "type": "integer", + "required": true + }, + "group_usage_metric_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveHistoricalAppMetrics", + "qualifiedName": "PosthogApi.RetrieveHistoricalAppMetrics", + "fullyQualifiedName": "PosthogApi.RetrieveHistoricalAppMetrics@2.0.0", + "description": "Retrieve historical app metrics for a specific environment.\n\nThis tool retrieves historical metrics data for a specific application's environment. It should be called when detailed analytics or historical performance data is needed for analysis or reporting.", + "parameters": [ + { + "name": "export_id", + "type": "string", + "required": true, + "description": "The identifier of the historical export you want to retrieve. This should be a valid string corresponding to a specific export.", + "enum": null, + "inferrable": true + }, + { + "name": "plugin_configuration_id", + "type": "string", + "required": true, + "description": "The ID of the plugin configuration to retrieve historical metrics for. This identifies which plugin's data you want to access.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The Project ID to access for retrieving historical app metrics. Obtain it via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_app_metrics_historical_exports_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveHistoricalAppMetrics", + "parameters": { + "export_id": { + "value": "export_12345", + "type": "string", + "required": true + }, + "plugin_configuration_id": { + "value": "plugin_98765", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_54321", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveHogFunctionIcon", + "qualifiedName": "PosthogApi.RetrieveHogFunctionIcon", + "fullyQualifiedName": "PosthogApi.RetrieveHogFunctionIcon@2.0.0", + "description": "Retrieve the icon for a specified hog function view access.\n\nThis tool retrieves the icon associated with a particular hog function under a specified project in Datadog. It should be called when you need to access or display the hog function's icon for a given project ID. Each access is logged as a view.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_hog_functions_icon_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveHogFunctionIcon", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveHogFunctionLogs", + "qualifiedName": "PosthogApi.RetrieveHogFunctionLogs", + "fullyQualifiedName": "PosthogApi.RetrieveHogFunctionLogs@2.0.0", + "description": "Retrieve logs for hog function views in an environment.\n\nFetches logs related to views of a specific hog function within a project environment. It should be called to track file system views for specified functions.", + "parameters": [ + { + "name": "hog_function_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific hog function to retrieve logs for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_hog_functions_logs_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveHogFunctionLogs", + "parameters": { + "hog_function_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_987654", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveHogFunctionMetrics", + "qualifiedName": "PosthogApi.RetrieveHogFunctionMetrics", + "fullyQualifiedName": "PosthogApi.RetrieveHogFunctionMetrics@2.0.0", + "description": "Retrieve hog function metrics for a specific environment.\n\nUse this tool to obtain metrics related to hog functions in a specified environment. It tracks and logs each GET request as a new view, providing insights into the file system's operation within the environment.", + "parameters": [ + { + "name": "hog_function_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific hog function for which metrics are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID of the target project. Retrieve via /api/projects/ if unknown.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_hog_functions_metrics_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveHogFunctionMetrics", + "parameters": { + "hog_function_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveHogFunctionMetricsTotals", + "qualifiedName": "PosthogApi.RetrieveHogFunctionMetricsTotals", + "fullyQualifiedName": "PosthogApi.RetrieveHogFunctionMetricsTotals@2.0.0", + "description": "Retrieve total metrics for a specific HOG function.\n\nUse this tool to obtain total metrics data for a specified HOG function within a project environment. Useful for tracking metrics related to file system views.", + "parameters": [ + { + "name": "hog_function_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific HOG function for which to retrieve metrics.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtainable via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_hog_functions_metrics_totals_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveHogFunctionMetricsTotals", + "parameters": { + "hog_function_uuid": { + "value": "b3f52441-7118-4a9d-8abc-e4e6fecc3008", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveInsightData", + "qualifiedName": "PosthogApi.RetrieveInsightData", + "fullyQualifiedName": "PosthogApi.RetrieveInsightData@2.0.0", + "description": "Retrieve tracked insights for project file system views.\n\nThis tool retrieves tracked insights whenever a file system view in a project is accessed, logging each view occurrence.", + "parameters": [ + { + "name": "insight_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the specific insight to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "dashboard_context_id", + "type": "integer", + "required": false, + "description": "ID of the dashboard for context-specific insight. Filters and date range from this dashboard will be applied.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specifies the format for the retrieved insights data. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + }, + { + "name": "refresh_insight_strategy", + "type": "string", + "required": false, + "description": "Defines the strategy for refreshing the insight. Options include 'force_cache', 'blocking', 'async', 'lazy_async', 'force_blocking', and 'force_async', determining sync/async behavior and cache usage.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveInsightData", + "parameters": { + "insight_id": { + "value": 42, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_12345", + "type": "string", + "required": true + }, + "dashboard_context_id": { + "value": 10, + "type": "integer", + "required": false + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + }, + "refresh_insight_strategy": { + "value": "async", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveInsightsActivity", + "qualifiedName": "PosthogApi.RetrieveInsightsActivity", + "fullyQualifiedName": "PosthogApi.RetrieveInsightsActivity@2.0.0", + "description": "Retrieve insights activity logs for a specified project.\n\nFetches activity logs each time a GET request is made to the specified project's insights activity resource. Useful for tracking file system views and understanding project interaction trends.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access insights activity data. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the format for the output: 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_activity_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveInsightsActivity", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveIntegrationAuthorization", + "qualifiedName": "PosthogApi.RetrieveIntegrationAuthorization", + "fullyQualifiedName": "PosthogApi.RetrieveIntegrationAuthorization@2.0.0", + "description": "Retrieve integration authorization status for a project.\n\nUse this tool to check the authorization status of integrations within a specified project environment. It helps verify if integrations are correctly authorized in the Datadog environment for the given project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project you want to access. Obtain the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_authorize_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveIntegrationAuthorization", + "parameters": { + "project_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveIntegrationChannels", + "qualifiedName": "PosthogApi.RetrieveIntegrationChannels", + "fullyQualifiedName": "PosthogApi.RetrieveIntegrationChannels@2.0.0", + "description": "Retrieve integration channels for a specific project.\n\nUse this tool to get a list of integration channels associated with a specific project within Datadog environments. Provide the project and integration IDs to retrieve the relevant information.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the specific integration within Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project you want to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_channels_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveIntegrationChannels", + "parameters": { + "integration_id": { + "value": 1234, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_5678", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveIntegrationDetails", + "qualifiedName": "PosthogApi.RetrieveIntegrationDetails", + "fullyQualifiedName": "PosthogApi.RetrieveIntegrationDetails@2.0.0", + "description": "Retrieve integration details for a specific environment.\n\nUse this tool to fetch the details of a specific integration within a given environment in Datadog. It is useful for obtaining specific configuration and status information about an integration identified by its ID and project ID.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the specific integration to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access the specific environment. Retrieve it via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveIntegrationDetails", + "parameters": { + "integration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "my_project_987", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveIntegrationTeams", + "qualifiedName": "PosthogApi.RetrieveIntegrationTeams", + "fullyQualifiedName": "PosthogApi.RetrieveIntegrationTeams@2.0.0", + "description": "Retrieve linear teams for an integration in a project.\n\nThis tool fetches information about linear teams associated with a specific integration within a given project's environment. It is useful for getting insight into team configurations and integration details.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the integration to retrieve team details.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Find this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_linear_teams_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveIntegrationTeams", + "parameters": { + "integration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveLastViewedInsights", + "qualifiedName": "PosthogApi.RetrieveLastViewedInsights", + "fullyQualifiedName": "PosthogApi.RetrieveLastViewedInsights@2.0.0", + "description": "Fetches the last 5 insights viewed, sorted by recency.\n\nThis tool retrieves basic details about the last 5 insights viewed by the user, ordered with the most recent first. It is useful for accessing recent insights quickly.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access insights for. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the returned data. Accepts 'csv' or 'json'. Defaults to 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_my_last_viewed_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveLastViewedInsights", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveLinearTeams", + "qualifiedName": "PosthogApi.RetrieveLinearTeams", + "fullyQualifiedName": "PosthogApi.RetrieveLinearTeams@2.0.0", + "description": "Fetch Linear team details for a specific integration.\n\nThis tool retrieves information about Linear teams associated with a specific project and integration.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the specific integration to retrieve Linear team details.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain it through the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_linear_teams_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveLinearTeams", + "parameters": { + "integration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "project-abc-123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveLinkedinAdsAccounts", + "qualifiedName": "PosthogApi.RetrieveLinkedinAdsAccounts", + "fullyQualifiedName": "PosthogApi.RetrieveLinkedinAdsAccounts@2.0.0", + "description": "Retrieve LinkedIn Ads accounts for a project integration.\n\nThis tool retrieves LinkedIn Ads account details for a specified project integration in Datadog. Use it to access LinkedIn Ads accounts associated with a given project to manage or analyze ad campaigns.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the LinkedIn integration for the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Unique ID of the project for accessing LinkedIn Ads accounts. Obtainable by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_linkedin_ads_accounts_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveLinkedinAdsAccounts", + "parameters": { + "integration_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj-7890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveLinkedinAdsConversionRules", + "qualifiedName": "PosthogApi.RetrieveLinkedinAdsConversionRules", + "fullyQualifiedName": "PosthogApi.RetrieveLinkedinAdsConversionRules@2.0.0", + "description": "Retrieve LinkedIn Ads conversion rules for a project.\n\nUse this tool to get the LinkedIn Ads conversion rules associated with a specific project in Datadog. It should be called when you need information about conversion rules linked to your LinkedIn Ads integrations.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the LinkedIn Ads integration to retrieve conversion rules for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project for which you want to retrieve LinkedIn Ads conversion rules. Obtain this ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_linkedin_ads_conversion_rules_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveLinkedinAdsConversionRules", + "parameters": { + "integration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveLocalFeatureFlags", + "qualifiedName": "PosthogApi.RetrieveLocalFeatureFlags", + "fullyQualifiedName": "PosthogApi.RetrieveLocalFeatureFlags@2.0.0", + "description": "Retrieve feature flags for local evaluation in a project.\n\nCall this tool to check if feature flags are enabled for a specific project. Useful for applications using local feature flag evaluations.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access feature flags for. Retrieve this ID via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_local_evaluation_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveLocalFeatureFlags", + "parameters": { + "project_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveLogAttributes", + "qualifiedName": "PosthogApi.RetrieveLogAttributes", + "fullyQualifiedName": "PosthogApi.RetrieveLogAttributes@2.0.0", + "description": "Retrieve log attributes for a specific project.\n\nThis tool retrieves log attributes for a specified project using its project ID. It should be called when detailed insights into log data attributes are needed for analysis or reporting.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtainable via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'logs_attributes_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveLogAttributes", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveLogExports", + "qualifiedName": "PosthogApi.RetrieveLogExports", + "fullyQualifiedName": "PosthogApi.RetrieveLogExports@2.0.0", + "description": "Retrieve logs from batch exports by project and export ID.\n\nUse this tool to retrieve logs from batch exports by specifying the project ID and export ID. Ideal for monitoring and reviewing log outputs.", + "parameters": [ + { + "name": "batch_export_id", + "type": "string", + "required": true, + "description": "A UUID specifying the batch export to retrieve logs from.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID for accessing the specific project. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_logs_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveLogExports", + "parameters": { + "batch_export_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveLogsForFileSystemViews", + "qualifiedName": "PosthogApi.RetrieveLogsForFileSystemViews", + "fullyQualifiedName": "PosthogApi.RetrieveLogsForFileSystemViews@2.0.0", + "description": "Retrieves logs for tracked file system views.\n\nUse this tool to retrieve logs that track each GET request on a specified file system resource within a project. This is useful for monitoring access patterns and resource usage.", + "parameters": [ + { + "name": "hog_function_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific hog function to retrieve logs for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "A string representing the Project ID for access. Call /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hog_functions_logs_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveLogsForFileSystemViews", + "parameters": { + "hog_function_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-42", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveLogValues", + "qualifiedName": "PosthogApi.RetrieveLogValues", + "fullyQualifiedName": "PosthogApi.RetrieveLogValues@2.0.0", + "description": "Retrieve log values for a specified project.\n\nUse this tool to fetch log values associated with a specific project. It should be called when you need to analyze or view log data for monitoring or troubleshooting purposes.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to retrieve logs from. Obtain the project ID via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'logs_values_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveLogValues", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveMemberScopedApiKeys", + "qualifiedName": "PosthogApi.RetrieveMemberScopedApiKeys", + "fullyQualifiedName": "PosthogApi.RetrieveMemberScopedApiKeys@2.0.0", + "description": "Retrieve scoped API keys for a member in an organization.\n\nThis tool should be called to obtain the scoped API keys associated with a specific member within an organization on Datadog. It is useful for managing and auditing access permissions.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization whose member's scoped API keys are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "user_uuid", + "type": "string", + "required": true, + "description": "The unique identifier for the user within the organization. This is required to retrieve their scoped API keys.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'members_scoped_api_keys_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveMemberScopedApiKeys", + "parameters": { + "organization_id": { + "value": "org-123456", + "type": "string", + "required": true + }, + "user_uuid": { + "value": "user-abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveNotebookActivity", + "qualifiedName": "PosthogApi.RetrieveNotebookActivity", + "fullyQualifiedName": "PosthogApi.RetrieveNotebookActivity@2.0.0", + "description": "Retrieve activity details of a specific notebook.\n\nUse this tool to get the activity details of a notebook within a specific project on Datadog. This is useful for monitoring changes and interactions with the notebook. Note that this feature is in early access and may undergo changes.", + "parameters": [ + { + "name": "notebook_short_id", + "type": "string", + "required": true, + "description": "The unique short identifier of the notebook for which activity details are requested. Used to specify the exact notebook within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you're trying to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'notebooks_activity_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveNotebookActivity", + "parameters": { + "notebook_short_id": { + "value": "nb-12345", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj-98765", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveNotebookComments", + "qualifiedName": "PosthogApi.RetrieveNotebookComments", + "fullyQualifiedName": "PosthogApi.RetrieveNotebookComments@2.0.0", + "description": "Retrieve comments from notebook recordings in a project.\n\nUse this tool to get comments from notebook recordings within a specified project using Datadog's API.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Provide the Project ID to access specific notebook comments. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'notebooks_recording_comments_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveNotebookComments", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveNotebookDetails", + "qualifiedName": "PosthogApi.RetrieveNotebookDetails", + "fullyQualifiedName": "PosthogApi.RetrieveNotebookDetails@2.0.0", + "description": "Retrieve details of a specific notebook.\n\nUse this tool to get details of a notebook using its project ID and notebook short ID. This can be useful for accessing notebook content or metadata.", + "parameters": [ + { + "name": "notebook_short_id", + "type": "string", + "required": true, + "description": "The short ID of the notebook you want to retrieve details for. This is required to specify the notebook within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access specific project details. Obtain via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'notebooks_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveNotebookDetails", + "parameters": { + "notebook_short_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersistedEnvironmentFolder", + "qualifiedName": "PosthogApi.RetrievePersistedEnvironmentFolder", + "fullyQualifiedName": "PosthogApi.RetrievePersistedEnvironmentFolder@2.0.0", + "description": "Retrieve details of a persisted environment folder by ID.\n\nUse this tool to obtain information about a specific persisted folder within an environment, identified by its project ID and folder ID.", + "parameters": [ + { + "name": "persisted_folder_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the persisted folder to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project related to the persisted folder. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persisted_folder_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersistedEnvironmentFolder", + "parameters": { + "persisted_folder_id": { + "value": "f6c3e8e8-e41d-4b84-92f1-fc39a99276b1", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_1a2b3c", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersistedFolder", + "qualifiedName": "PosthogApi.RetrievePersistedFolder", + "fullyQualifiedName": "PosthogApi.RetrievePersistedFolder@2.0.0", + "description": "Retrieve a specific persisted folder within a project.\n\nThis tool retrieves the details of a persisted folder by using the project and folder IDs. Call this tool when you need information about a particular persisted folder within a specified project.", + "parameters": [ + { + "name": "persisted_folder_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the persisted folder to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access the persisted folder. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persisted_folder_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersistedFolder", + "parameters": { + "persisted_folder_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_id": { + "value": "456e7890-e89b-12d3-a456-426614174001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonActivity", + "qualifiedName": "PosthogApi.RetrievePersonActivity", + "fullyQualifiedName": "PosthogApi.RetrievePersonActivity@2.0.0", + "description": "Retrieve a person's activity from the environment.\n\nUse this tool to obtain information about a person's activity in a specific project environment by specifying the project and person IDs.", + "parameters": [ + { + "name": "person_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the person whose activity you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the output format for the data, either 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_activity_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersonActivity", + "parameters": { + "person_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project-67890", + "type": "string", + "required": true + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonData", + "qualifiedName": "PosthogApi.RetrievePersonData", + "fullyQualifiedName": "PosthogApi.RetrievePersonData@2.0.0", + "description": "Retrieve detailed information about a specific person.\n\nUse this tool to access detailed information about a person in a specific project. It's suitable for reading existing person data within the specified project context.", + "parameters": [ + { + "name": "person_identifier", + "type": "integer", + "required": true, + "description": "Unique integer identifying the person to retrieve information for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project for accessing specific person data. Obtain it via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the format in which to retrieve the person data. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersonData", + "parameters": { + "person_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": true + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonDetails", + "qualifiedName": "PosthogApi.RetrievePersonDetails", + "fullyQualifiedName": "PosthogApi.RetrievePersonDetails@2.0.0", + "description": "Retrieve details of a specific person in a project.\n\nThis tool calls the API to retrieve details about a person identified by their ID within a specific project environment. It is useful for fetching information about individuals to analyze or review their data.", + "parameters": [ + { + "name": "person_id", + "type": "integer", + "required": true, + "description": "Unique integer identifying the person to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to retrieve the person's details. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format for the response data. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersonDetails", + "parameters": { + "person_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "my_project_001", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonPropertiesTimeline", + "qualifiedName": "PosthogApi.RetrievePersonPropertiesTimeline", + "fullyQualifiedName": "PosthogApi.RetrievePersonPropertiesTimeline@2.0.0", + "description": "Retrieve the timeline of a person's properties changes.\n\nUse this tool to fetch the timeline of changes to a person's properties within a project. This is useful for understanding how a person's attributes have changed over time.", + "parameters": [ + { + "name": "person_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying this person.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project you're trying to access. Obtain it via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response. Accepted values are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_properties_timeline_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersonPropertiesTimeline", + "parameters": { + "person_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonPropertyTimeline", + "qualifiedName": "PosthogApi.RetrievePersonPropertyTimeline", + "fullyQualifiedName": "PosthogApi.RetrievePersonPropertyTimeline@2.0.0", + "description": "Retrieve timeline of property changes for a person.\n\nUse this tool to obtain the timeline of changes to a person's properties in a specified environment. Useful for tracking modifications over time.", + "parameters": [ + { + "name": "person_identifier", + "type": "integer", + "required": true, + "description": "Unique integer value for identifying the person.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the format of the data to be retrieved. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_properties_timeline_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersonPropertyTimeline", + "parameters": { + "person_identifier": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_xyz", + "type": "string", + "required": true + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonsCohorts", + "qualifiedName": "PosthogApi.RetrievePersonsCohorts", + "fullyQualifiedName": "PosthogApi.RetrievePersonsCohorts@2.0.0", + "description": "Retrieve persons cohort data from specified environments.\n\nThis tool retrieves persons cohort data from a specified environment using the project ID. It does not support creation or updating of persons, which should be done using the capture API or other SDKs.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID for accessing the specified cohort data. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response. Supported values are 'csv' and 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_cohorts_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersonsCohorts", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonsData", + "qualifiedName": "PosthogApi.RetrievePersonsData", + "fullyQualifiedName": "PosthogApi.RetrievePersonsData@2.0.0", + "description": "Retrieve information about persons in a specified environment.\n\nUse this tool to access data about persons within a specific project environment. It is intended for reading existing data. For creating or updating persons, refer to the CAPTURE API or SDKs.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique Project ID required to access the specific environment. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format in which the response should be returned. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_values_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersonsData", + "parameters": { + "project_identifier": { + "value": "abc123", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonsFunnel", + "qualifiedName": "PosthogApi.RetrievePersonsFunnel", + "fullyQualifiedName": "PosthogApi.RetrievePersonsFunnel@2.0.0", + "description": "Retrieve persons data for a project funnel.\n\nThis tool retrieves information about persons in a project's funnel using a specified project ID. It's useful for understanding and analyzing the flow of individuals within the funnel in a project context.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Find it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the desired output format. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_funnel_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersonsFunnel", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonsFunnelCorrelation", + "qualifiedName": "PosthogApi.RetrievePersonsFunnelCorrelation", + "fullyQualifiedName": "PosthogApi.RetrievePersonsFunnelCorrelation@2.0.0", + "description": "Retrieve persons related to funnel correlation in an environment.\n\nUse this tool to access information about persons in relation to funnel correlations within a specified project environment. Ideal for analyzing user behavior and interactions concerning specific funnels.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve using /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response. Acceptable values are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_funnel_correlation_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersonsFunnelCorrelation", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonsLifecycle", + "qualifiedName": "PosthogApi.RetrievePersonsLifecycle", + "fullyQualifiedName": "PosthogApi.RetrievePersonsLifecycle@2.0.0", + "description": "Retrieve lifecycle details of persons in a project.\n\nUse this tool to retrieve lifecycle information of persons within a specified project. This tool is for reading lifecycle data. For modifications, consider using other API options like the capture API, `$set`, `$unset`, or SDKs.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project to access. Use /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response data. Choose either 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_lifecycle_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersonsLifecycle", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonsStickiness", + "qualifiedName": "PosthogApi.RetrievePersonsStickiness", + "fullyQualifiedName": "PosthogApi.RetrievePersonsStickiness@2.0.0", + "description": "Retrieve information about persons' stickiness in a project.\n\nUse this tool to retrieve data on how often individuals engage with a platform within a specified project. This endpoint provides insights into user behavior patterns. For creating or updating persons, consider other APIs or SDKs.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project to access. Retrieve by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Determines the format of the response. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_stickiness_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersonsStickiness", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonStickiness", + "qualifiedName": "PosthogApi.RetrievePersonStickiness", + "fullyQualifiedName": "PosthogApi.RetrievePersonStickiness@2.0.0", + "description": "Retrieve stickiness data for persons in a project environment.\n\nThis tool retrieves data on the stickiness of persons within a specified project environment based on unique project identifiers. It is used for analyzing patterns of user engagement and retention.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique Project ID needed to access stickiness data. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response data. Available options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_stickiness_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersonStickiness", + "parameters": { + "project_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonsTrends", + "qualifiedName": "PosthogApi.RetrievePersonsTrends", + "fullyQualifiedName": "PosthogApi.RetrievePersonsTrends@2.0.0", + "description": "Retrieve trends data for persons in a specified environment.\n\nUse this tool to obtain trends data related to persons within a given project environment. Ideal for reading current trends in person data for analysis. For creating or updating person data, refer to the capture API or SDKs.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access for retrieving person trends. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the response: 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_trends_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePersonsTrends", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePosthogBatchExports", + "qualifiedName": "PosthogApi.RetrievePosthogBatchExports", + "fullyQualifiedName": "PosthogApi.RetrievePosthogBatchExports@2.0.0", + "description": "Retrieve specific Datadog batch export details.\n\nUse this tool to retrieve details of a specific batch export from Datadog by providing the project and export IDs.", + "parameters": [ + { + "name": "batch_export_id", + "type": "string", + "required": true, + "description": "A UUID string that uniquely identifies the batch export in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Call /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_retrieve_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePosthogBatchExports", + "parameters": { + "batch_export_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_1A2b3C4d5E6fG7H8", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePosthogEndpointRun", + "qualifiedName": "PosthogApi.RetrievePosthogEndpointRun", + "fullyQualifiedName": "PosthogApi.RetrievePosthogEndpointRun@2.0.0", + "description": "Retrieve details of a specific Datadog endpoint run.\n\nThis tool retrieves information about a specific run of a Datadog endpoint for a given project and endpoint name. It should be called when you need to access details of an endpoint run using project and endpoint identifiers.", + "parameters": [ + { + "name": "endpoint_name", + "type": "string", + "required": true, + "description": "The name of the Datadog endpoint to retrieve details for. This specifies which endpoint's run details you want to access.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'endpoints_run_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePosthogEndpointRun", + "parameters": { + "endpoint_name": { + "value": "transaction_metrics", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProjectAction", + "qualifiedName": "PosthogApi.RetrieveProjectAction", + "fullyQualifiedName": "PosthogApi.RetrieveProjectAction@2.0.0", + "description": "Retrieve logs for a specific project action.\n\nUse this tool to obtain logs for a specific action within a project. Each retrieval provides a log of the file system views related to that action.", + "parameters": [ + { + "name": "action_id", + "type": "integer", + "required": true, + "description": "Unique integer identifying the specific action to retrieve logs for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format for the response data. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveProjectAction", + "parameters": { + "action_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "abc-123-project", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProjectActivity", + "qualifiedName": "PosthogApi.RetrieveProjectActivity", + "fullyQualifiedName": "PosthogApi.RetrieveProjectActivity@2.0.0", + "description": "Retrieve project activity for a specific organization and project.\n\nUse this tool to get detailed activities for a specific project within a given organization on Datadog. It's useful for monitoring and analyzing project-related activities.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier of the organization for which to retrieve project activity.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the specific project to retrieve activity for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activity_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveProjectActivity", + "parameters": { + "organization_id": { + "value": "org_123456", + "type": "string", + "required": true + }, + "project_id": { + "value": 42, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProjectAnnotation", + "qualifiedName": "PosthogApi.RetrieveProjectAnnotation", + "fullyQualifiedName": "PosthogApi.RetrieveProjectAnnotation@2.0.0", + "description": "Retrieve details of a specific annotation by ID.\n\nCall this tool to get detailed information about an annotation in a specific project on Datadog. This can be useful to view or verify the details of annotations used in project analysis.", + "parameters": [ + { + "name": "annotation_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the specific annotation to retrieve from a project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access the desired project in Datadog. Obtainable via `/api/projects/`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'annotations_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveProjectAnnotation", + "parameters": { + "annotation_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_identifier": { + "value": "my_project_001", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProjectExport", + "qualifiedName": "PosthogApi.RetrieveProjectExport", + "fullyQualifiedName": "PosthogApi.RetrieveProjectExport@2.0.0", + "description": "Retrieve data of a specific project export.\n\nUse this tool to get export data for a specific project by providing the project and export IDs.", + "parameters": [ + { + "name": "export_id", + "type": "integer", + "required": true, + "description": "Unique integer to identify the exported asset.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to find the project ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'exports_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveProjectExport", + "parameters": { + "export_id": { + "value": 1023, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProjectGroups", + "qualifiedName": "PosthogApi.RetrieveProjectGroups", + "fullyQualifiedName": "PosthogApi.RetrieveProjectGroups@2.0.0", + "description": "Retrieve group details for a specific project.\n\nThis tool retrieves details of groups associated with a specific project. It should be called when there is a need to obtain information about project groups using a specified project ID.", + "parameters": [ + { + "name": "group_key_to_find", + "type": "string", + "required": true, + "description": "Specify the key of the group you want to find. This is used to identify the specific group within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_index", + "type": "integer", + "required": true, + "description": "Specify the integer index for the group type you want to find within a project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project to access group details. Obtainable via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_find_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveProjectGroups", + "parameters": { + "group_key_to_find": { + "value": "user_type_123", + "type": "string", + "required": true + }, + "group_type_index": { + "value": 1, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_5678", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProjectHogFunction", + "qualifiedName": "PosthogApi.RetrieveProjectHogFunction", + "fullyQualifiedName": "PosthogApi.RetrieveProjectHogFunction@2.0.0", + "description": "Retrieve details of a hog function in a project.\n\nUse this tool to get detailed information about a specific hog function within a given project in Datadog. This tool helps in tracking file system views by logging each GET request as a new view.", + "parameters": [ + { + "name": "hog_function_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific hog function to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project you want to access. Retrieve it via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hog_functions_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveProjectHogFunction", + "parameters": { + "hog_function_id": { + "value": "a1b2c3d4-e5f6-7g8h-9i0j-k1l2m3n4o5p6", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProjectIcons", + "qualifiedName": "PosthogApi.RetrieveProjectIcons", + "fullyQualifiedName": "PosthogApi.RetrieveProjectIcons@2.0.0", + "description": "Retrieve and log views of project icons.\n\nUse this tool to retrieve icons for a specific project and log each retrieval as a system view.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Retrieve it using /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hog_functions_icons_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveProjectIcons", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProjectSessionValues", + "qualifiedName": "PosthogApi.RetrieveProjectSessionValues", + "fullyQualifiedName": "PosthogApi.RetrieveProjectSessionValues@2.0.0", + "description": "Retrieve session values for a specific project.\n\nThis tool is used to retrieve session values for a given project by its ID. It should be called when users need detailed session data from a specific DataDog project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access session values. Obtain it via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'sessions_values_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveProjectSessionValues", + "parameters": { + "project_id": { + "value": "abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePropertyDefinitions", + "qualifiedName": "PosthogApi.RetrievePropertyDefinitions", + "fullyQualifiedName": "PosthogApi.RetrievePropertyDefinitions@2.0.0", + "description": "Retrieve details of property definitions for a given project.\n\nUse this tool to get information about specific property definitions within a project by providing the project ID and property definition ID.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Retrieve it via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "property_definition_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific property definition.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'property_definitions_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrievePropertyDefinitions", + "parameters": { + "project_id": { + "value": "1234-5678-9101-1121", + "type": "string", + "required": true + }, + "property_definition_id": { + "value": "e6b8c6c0-5a2f-4cae-b092-8d7890c5f4e1", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProxyRecord", + "qualifiedName": "PosthogApi.RetrieveProxyRecord", + "fullyQualifiedName": "PosthogApi.RetrieveProxyRecord@2.0.0", + "description": "Retrieve details of a specific proxy record.\n\nFetch detailed information about a specific proxy record within an organization using the organization ID and record ID.", + "parameters": [ + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the organization whose proxy record you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "proxy_record_id", + "type": "string", + "required": true, + "description": "The unique identifier for the proxy record to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'proxy_records_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveProxyRecord", + "parameters": { + "organization_id": { + "value": "org_123456789", + "type": "string", + "required": true + }, + "proxy_record_id": { + "value": "record_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveQueryFromProject", + "qualifiedName": "PosthogApi.RetrieveQueryFromProject", + "fullyQualifiedName": "PosthogApi.RetrieveQueryFromProject@2.0.0", + "description": "Retrieve a specific query from a project.\n\nUse this tool to obtain detailed information about a specific query associated with a project in Datadog. It is particularly useful for fetching query details using a project and query identifier.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project you want to access. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "query_id", + "type": "string", + "required": true, + "description": "The unique identifier of the query you want to retrieve from the project. This is required to specify which query to access.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'query_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveQueryFromProject", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + }, + "query_id": { + "value": "abc-789xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveQueryLogDetails", + "qualifiedName": "PosthogApi.RetrieveQueryLogDetails", + "fullyQualifiedName": "PosthogApi.RetrieveQueryLogDetails@2.0.0", + "description": "Retrieve query log details for a given query ID.\n\nUse this tool to fetch detailed query log information from the query_log_archive table for a specific query_id. The query must have been issued within the last 24 hours.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project. Call /api/projects/ to find it.", + "enum": null, + "inferrable": true + }, + { + "name": "query_id", + "type": "string", + "required": true, + "description": "The unique identifier for the query issued in the last 24 hours to retrieve its log details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_query_log_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveQueryLogDetails", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "query_id": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveRecentlyViewedInsights", + "qualifiedName": "PosthogApi.RetrieveRecentlyViewedInsights", + "fullyQualifiedName": "PosthogApi.RetrieveRecentlyViewedInsights@2.0.0", + "description": "Retrieve details of the last 5 insights viewed by the user.\n\nUse this tool to get the most recently viewed insights, with up to 5 insights returned in the order they were accessed. Ideal for quickly accessing an overview of your recent insights.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID for accessing the specific project insights. Obtainable via `/api/projects/`.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format of the returned data. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_my_last_viewed_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveRecentlyViewedInsights", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveRecordingPlaylist", + "qualifiedName": "PosthogApi.RetrieveRecordingPlaylist", + "fullyQualifiedName": "PosthogApi.RetrieveRecordingPlaylist@2.0.0", + "description": "Retrieve a session recording playlist for a project.\n\nUse this tool to get details about a specific session recording playlist by providing the project and playlist IDs. It is helpful for tracking and viewing file system interactions related to sessions.", + "parameters": [ + { + "name": "playlist_short_id", + "type": "string", + "required": true, + "description": "The short ID of the session recording playlist to retrieve. This helps identify the specific playlist to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve it by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recording_playlists_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveRecordingPlaylist", + "parameters": { + "playlist_short_id": { + "value": "abcd1234", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj5678", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveRecordingPlaylistViews", + "qualifiedName": "PosthogApi.RetrieveRecordingPlaylistViews", + "fullyQualifiedName": "PosthogApi.RetrieveRecordingPlaylistViews@2.0.0", + "description": "Retrieve and log views of session recording playlists.\n\nUse this tool to track and retrieve logs each time a session recording playlist is viewed. It helps in monitoring how often and by whom the playlists are accessed.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access specific recording playlists. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "recording_short_id", + "type": "string", + "required": true, + "description": "The short identifier of the recording playlist to retrieve views for. Required for accessing specific recordings.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recording_playlists_recordings_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveRecordingPlaylistViews", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "recording_short_id": { + "value": "abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveRelatedGroups", + "qualifiedName": "PosthogApi.RetrieveRelatedGroups", + "fullyQualifiedName": "PosthogApi.RetrieveRelatedGroups@2.0.0", + "description": "Retrieve related groups for a specific project in Datadog.\n\nUse this tool to get information on groups related to a specified project within Datadog. This can help in understanding project group associations and dependencies.", + "parameters": [ + { + "name": "group_type_index", + "type": "integer", + "required": true, + "description": "The index specifying the type of group to find.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtainable via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id_to_find_groups", + "type": "string", + "required": true, + "description": "The ID of the user to find related groups for within a specified project. It should be a string value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_related_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveRelatedGroups", + "parameters": { + "group_type_index": { + "value": 1, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_123456", + "type": "string", + "required": true + }, + "user_id_to_find_groups": { + "value": "user_abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveRoleDetails", + "qualifiedName": "PosthogApi.RetrieveRoleDetails", + "fullyQualifiedName": "PosthogApi.RetrieveRoleDetails@2.0.0", + "description": "Retrieve details of a specific role within an organization.\n\nThis tool retrieves detailed information about a specific role within an organization using the role ID. It should be called when you need to understand the responsibilities and permissions associated with a specific role.", + "parameters": [ + { + "name": "organization_identifier", + "type": "string", + "required": true, + "description": "A string that uniquely identifies the organization within which the role is being retrieved. Required to ensure that the role details correspond to the correct organization.", + "enum": null, + "inferrable": true + }, + { + "name": "role_id", + "type": "string", + "required": true, + "description": "A UUID string to identify the specific role within the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'roles_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveRoleDetails", + "parameters": { + "organization_identifier": { + "value": "org-123456", + "type": "string", + "required": true + }, + "role_id": { + "value": "e90b4a7a-9c86-4e32-a2a3-9c5d90ffb1d3", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSavedQueryActivity", + "qualifiedName": "PosthogApi.RetrieveSavedQueryActivity", + "fullyQualifiedName": "PosthogApi.RetrieveSavedQueryActivity@2.0.0", + "description": "Retrieve activity details of a saved warehouse query.\n\nUse this tool to retrieve details about the activity related to a saved query in the warehouse. It's helpful for monitoring and managing query activities within a project.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The identifier for the project you want to access. Retrieve it via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "saved_query_id", + "type": "string", + "required": true, + "description": "The UUID of the data warehouse saved query to retrieve activity details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_saved_queries_activity_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveSavedQueryActivity", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "saved_query_id": { + "value": "abcde-12345-fghij-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSessionPropertyDefinitions", + "qualifiedName": "PosthogApi.RetrieveSessionPropertyDefinitions", + "fullyQualifiedName": "PosthogApi.RetrieveSessionPropertyDefinitions@2.0.0", + "description": "Retrieve definitions of session properties for a project.\n\nUse this tool to get detailed information about session property definitions for a specific project in Datadog. Ideal for understanding the attributes of each session.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access session property definitions. Obtainable via the /api/projects/ call.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'sessions_property_definitions_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveSessionPropertyDefinitions", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSessionRecording", + "qualifiedName": "PosthogApi.RetrieveSessionRecording", + "fullyQualifiedName": "PosthogApi.RetrieveSessionRecording@2.0.0", + "description": "Retrieve a specific session recording by ID.\n\nUse this tool to retrieve details of a specific session recording within a given project environment on Datadog. It should be called when details of a session recording are needed, such as in monitoring or analysis tasks.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the Datadog project to access. Obtain it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific session recording to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recordings_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveSessionRecording", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + }, + "session_recording_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSessionRecordingPlaylists", + "qualifiedName": "PosthogApi.RetrieveSessionRecordingPlaylists", + "fullyQualifiedName": "PosthogApi.RetrieveSessionRecordingPlaylists@2.0.0", + "description": "Retrieve a session recording playlist for a specific project.\n\nThis tool retrieves session recording playlist details by accessing the specified project and playlist IDs. It should be called when you need information about a particular session recording playlist in an environment.", + "parameters": [ + { + "name": "playlist_short_id", + "type": "string", + "required": true, + "description": "The short identifier of the session recording playlist to retrieve. Required for accessing specific playlist details.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project to access. Obtain this ID from the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recording_playlists_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveSessionRecordingPlaylists", + "parameters": { + "playlist_short_id": { + "value": "session_playlist_123", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSessionRecordings", + "qualifiedName": "PosthogApi.RetrieveSessionRecordings", + "fullyQualifiedName": "PosthogApi.RetrieveSessionRecordings@2.0.0", + "description": "Retrieve session recordings for a specified playlist.\n\nUse this tool to get session recordings from a specified session recording playlist in an environment by providing the project and playlist identifiers.", + "parameters": [ + { + "name": "playlist_short_id", + "type": "string", + "required": true, + "description": "The unique short ID of the session recording playlist to retrieve recordings from.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project. Obtain this by calling the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recording_playlists_recordings_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveSessionRecordings", + "parameters": { + "playlist_short_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSubscriptionDetails", + "qualifiedName": "PosthogApi.RetrieveSubscriptionDetails", + "fullyQualifiedName": "PosthogApi.RetrieveSubscriptionDetails@2.0.0", + "description": "Retrieve details of a project's subscription environment.\n\nFetch information related to a specific subscription within a project's environment using the project ID and subscription ID.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project you want to access. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the subscription to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_subscriptions_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveSubscriptionDetails", + "parameters": { + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": true + }, + "subscription_id": { + "value": 6789, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSurveyData", + "qualifiedName": "PosthogApi.RetrieveSurveyData", + "fullyQualifiedName": "PosthogApi.RetrieveSurveyData@2.0.0", + "description": "Retrieve data for a specific survey using project and survey IDs.\n\nCall this tool to get detailed information about a specific survey by providing the project and survey identifiers. Useful for tracking survey views or accessing specific survey details.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Retrieve it via /api/projects/ if unknown.", + "enum": null, + "inferrable": true + }, + { + "name": "survey_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific survey to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveys_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveSurveyData", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "survey_uuid": { + "value": "b1a8c857-2e20-4a7d-85c4-96f2c1f3e7a1", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTwilioPhoneNumbers", + "qualifiedName": "PosthogApi.RetrieveTwilioPhoneNumbers", + "fullyQualifiedName": "PosthogApi.RetrieveTwilioPhoneNumbers@2.0.0", + "description": "Retrieve Twilio phone numbers for a specific integration.\n\nUse this tool to obtain the list of Twilio phone numbers associated with a specific integration in a project. It's useful for managing or auditing phone numbers linked to Twilio integrations.", + "parameters": [ + { + "name": "integration_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying this Twilio integration to retrieve phone numbers for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_for_twilio_integration", + "type": "string", + "required": true, + "description": "The ID of the project to access Twilio phone numbers. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'integrations_twilio_phone_numbers_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveTwilioPhoneNumbers", + "parameters": { + "integration_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id_for_twilio_integration": { + "value": "proj_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveUnfiledFiles", + "qualifiedName": "PosthogApi.RetrieveUnfiledFiles", + "fullyQualifiedName": "PosthogApi.RetrieveUnfiledFiles@2.0.0", + "description": "Retrieve unfiled files for a specific project.\n\nThis tool retrieves unfiled files within a specified project using the Datadog API. It should be called when there is a need to access files that have not been organized into folders for a given project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project whose unfiled files you want to retrieve. Make a call to /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_unfiled_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveUnfiledFiles", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveUnfiledFileSystemItems", + "qualifiedName": "PosthogApi.RetrieveUnfiledFileSystemItems", + "fullyQualifiedName": "PosthogApi.RetrieveUnfiledFileSystemItems@2.0.0", + "description": "Retrieve unfiled file system items for a project.\n\nUse this tool to access unfiled file system items within a specified project environment on Datadog.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the specific project whose unfiled file system items you want to retrieve. To obtain this ID, call /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_unfiled_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveUnfiledFileSystemItems", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveUser2faSetupStatus", + "qualifiedName": "PosthogApi.RetrieveUser2faSetupStatus", + "fullyQualifiedName": "PosthogApi.RetrieveUser2faSetupStatus@2.0.0", + "description": "Retrieve a user's two-factor authentication setup status.\n\nThis tool retrieves the current status of a user's two-factor authentication setup. It should be called when you need to check if a user has initiated the setup of two-factor authentication.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the user whose two-factor authentication setup status is being retrieved. This is typically a UUID string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_two_factor_start_setup_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveUser2faSetupStatus", + "parameters": { + "user_identifier": { + "value": "6e28c1f4-43e1-4d59-ab92-b8a8ffd5aee8", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveUserHedgehogConfig", + "qualifiedName": "PosthogApi.RetrieveUserHedgehogConfig", + "fullyQualifiedName": "PosthogApi.RetrieveUserHedgehogConfig@2.0.0", + "description": "Retrieve a user's hedgehog configuration details.\n\nThis tool fetches the hedgehog configuration for a specific user using their UUID. It should be called when you need to access the user's hedgehog settings.", + "parameters": [ + { + "name": "user_uuid", + "type": "string", + "required": true, + "description": "The unique UUID of the user whose hedgehog configuration details are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_hedgehog_config_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveUserHedgehogConfig", + "parameters": { + "user_uuid": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveUserInformation", + "qualifiedName": "PosthogApi.RetrieveUserInformation", + "fullyQualifiedName": "PosthogApi.RetrieveUserInformation@2.0.0", + "description": "Retrieve detailed information about a specific user.\n\nUse this tool to get detailed information about a specific user in Datadog by providing their unique identifier.", + "parameters": [ + { + "name": "user_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a specific user in Datadog. This should be a string value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveUserInformation", + "parameters": { + "user_unique_identifier": { + "value": "user_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveUserInterview", + "qualifiedName": "PosthogApi.RetrieveUserInterview", + "fullyQualifiedName": "PosthogApi.RetrieveUserInterview@2.0.0", + "description": "Retrieve details of a specific user interview.\n\nThis tool fetches the details of a user interview for a given environment by project ID and interview ID. It should be called when specific interview information is needed from the Datadog service.", + "parameters": [ + { + "name": "interview_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific user interview to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to find this ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_user_interviews_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveUserInterview", + "parameters": { + "interview_id": { + "value": "26b70e75-348e-4b2e-bb4e-8bfa68fda3c4", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveWarehouseSavedQuery", + "qualifiedName": "PosthogApi.RetrieveWarehouseSavedQuery", + "fullyQualifiedName": "PosthogApi.RetrieveWarehouseSavedQuery@2.0.0", + "description": "Retrieve details of a specific warehouse saved query.\n\nUse this tool to get information about a particular saved query in a warehouse by specifying the project and query IDs.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access the specific project. Retrieve it via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "query_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific data warehouse saved query to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_saved_queries_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveWarehouseSavedQuery", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + }, + "query_uuid": { + "value": "a1b2c3d4-e5f6-7g8h-9i0j-k1l2m3n4o5p6", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveWarehouseTable", + "qualifiedName": "PosthogApi.RetrieveWarehouseTable", + "fullyQualifiedName": "PosthogApi.RetrieveWarehouseTable@2.0.0", + "description": "Retrieve details of a specific warehouse table.\n\nUse this tool to obtain information about a specific warehouse table in a given project environment. It is useful for accessing table details without modifying them.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID for accessing the specific data warehouse. Retrieve it using /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "warehouse_table_id", + "type": "string", + "required": true, + "description": "A UUID string identifying this specific data warehouse table for retrieval.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_tables_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveWarehouseTable", + "parameters": { + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "warehouse_table_id": { + "value": "d3f1c3a5-e8c7-4f18-bbdf-78f2ecfabc34", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveWebExperiment", + "qualifiedName": "PosthogApi.RetrieveWebExperiment", + "fullyQualifiedName": "PosthogApi.RetrieveWebExperiment@2.0.0", + "description": "Retrieve details of a specific web experiment.\n\nThis tool is used to retrieve detailed information about a specific web experiment from a project. It should be called when you need to access data related to a web experiment identified by its ID within a project. Each call will log a new view of the experiment.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Call /api/projects/ to retrieve the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "web_experiment_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying the web experiment to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'web_experiments_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveWebExperiment", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "web_experiment_id": { + "value": 67890, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveWebVitals", + "qualifiedName": "PosthogApi.RetrieveWebVitals", + "fullyQualifiedName": "PosthogApi.RetrieveWebVitals@2.0.0", + "description": "Retrieve web vitals for a specific project environment.\n\nUse this tool to get web vitals data for a given project ID's environment in Datadog. It is useful for monitoring and analyzing performance metrics.", + "parameters": [ + { + "name": "filter_by_pathname", + "type": "string", + "required": true, + "description": "Specify the pathname to filter web vitals data for a particular resource.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID for accessing the specific project's web vitals.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_web_vitals_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetrieveWebVitals", + "parameters": { + "filter_by_pathname": { + "value": "/example/path", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetryBatchExportRun", + "qualifiedName": "PosthogApi.RetryBatchExportRun", + "fullyQualifiedName": "PosthogApi.RetryBatchExportRun@2.0.0", + "description": "Initiate a retry of a batch export run.\n\n Use this tool to retry a specific batch export run within a project environment. This is equivalent to backfilling one run.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_identifier", + "type": "string", + "required": false, + "description": "A string representing the UUID of the batch export run to retry. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "batch_export_run_id", + "type": "string", + "required": false, + "description": "The UUID identifying the batch export run to retry. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID for accessing the specific project. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_runs_retry_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetryBatchExportRun", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_identifier": { + "value": "b5eae1b8-2c0b-4e2a-aa5f-2345abcde678", + "type": "string", + "required": false + }, + "batch_export_run_id": { + "value": "6b5f5c16-a5d1-4e20-9a39-67890abcdef0", + "type": "string", + "required": false + }, + "project_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"retry\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetryExportRun", + "qualifiedName": "PosthogApi.RetryExportRun", + "fullyQualifiedName": "PosthogApi.RetryExportRun@2.0.0", + "description": "Retry a batch export run in Datadog.\n\n Use this tool to retry a batch export run in Datadog. It leverages the same mechanism as backfilling, effectively retrying a single run.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the batch export run to retry. It should be provided as a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "batch_export_run_id", + "type": "string", + "required": false, + "description": "A UUID string that identifies the specific batch export run to retry in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The Project ID you want to access in Datadog. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_runs_retry_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RetryExportRun", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_identifier": { + "value": "export_12345", + "type": "string", + "required": false + }, + "batch_export_run_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"retry\":\"true\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RollbackEnvironmentsMigration", + "qualifiedName": "PosthogApi.RollbackEnvironmentsMigration", + "fullyQualifiedName": "PosthogApi.RollbackEnvironmentsMigration@2.0.0", + "description": "Trigger rollback migration for multi-environment projects.\n\n Use this tool to initiate an environments rollback migration for users who were previously on multi-environment projects in Datadog. This involves mapping source environment IDs to target environment IDs to perform the rollback.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the organization for the rollback operation. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_rollback_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RollbackEnvironmentsMigration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_uuid": { + "value": "8d5e0f9b-35a3-4a7a-8a74-e1c1dce584c5", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"source_env_id\":\"env_12345\",\"target_env_id\":\"env_67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RotateEnvironmentSecretToken", + "qualifiedName": "PosthogApi.RotateEnvironmentSecretToken", + "fullyQualifiedName": "PosthogApi.RotateEnvironmentSecretToken@2.0.0", + "description": "Rotate the secret token for a project environment.\n\n Use this tool to rotate the secret token of a specified project environment. It is typically called when token renewal is required for security or operational reasons.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "environment_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the environment or team to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID for the environment. Obtainable by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_rotate_secret_token_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RotateEnvironmentSecretToken", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "environment_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_id": { + "value": "abc-xyz-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"token\":\"newSecretToken123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RotateSecretTokenForProject", + "qualifiedName": "PosthogApi.RotateSecretTokenForProject", + "fullyQualifiedName": "PosthogApi.RotateSecretTokenForProject@2.0.0", + "description": "Rotate the secret token for a specific project.\n\n Use this tool to rotate the secret token for a project within the current organization. This can be useful when token regeneration is needed for security or access purposes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the project for which you want to rotate the secret token. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "The ID of the organization to which the project belongs. Required for token rotation. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'rotate_secret_token_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RotateSecretTokenForProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "organization_id": { + "value": "org-67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"rotate\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RunBatchExportsTestStep", + "qualifiedName": "PosthogApi.RunBatchExportsTestStep", + "fullyQualifiedName": "PosthogApi.RunBatchExportsTestStep@2.0.0", + "description": "Triggers a test step for batch exports in a specified project.\n\n Use this tool to initiate a test step for batch exports within a given project. This can be helpful to verify configurations or test export processes without executing a full batch export.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project you want to access for the batch export test step. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_run_test_step_new_create_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RunBatchExportsTestStep", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"export_type\":\"full\",\"start_date\":\"2023-01-01\",\"end_date\":\"2023-01-31\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RunBatchExportTestStep", + "qualifiedName": "PosthogApi.RunBatchExportTestStep", + "fullyQualifiedName": "PosthogApi.RunBatchExportTestStep@2.0.0", + "description": "Run a test step for a batch export in Datadog.\n\n This tool triggers the execution of a test step within a batch export operation in a specified organization in Datadog. It is used to test batch export configurations before full deployment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_uuid", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the batch export to be tested. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "A string identifying the organization within Datadog for which the batch export test step is to be run. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_run_test_step_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RunBatchExportTestStep", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "organization_id": { + "value": "org-987654321", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"key\":\"value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RunEnvironmentTestStep", + "qualifiedName": "PosthogApi.RunEnvironmentTestStep", + "fullyQualifiedName": "PosthogApi.RunEnvironmentTestStep@2.0.0", + "description": "Initiate a test step execution for environment batch exports.\n\n This tool initiates the execution of a test step for a specified batch export in a given environment project using Datadog's API. It should be called when you need to run a specific test step within the context of environment batch exports.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_uuid", + "type": "string", + "required": false, + "description": "A UUID string to identify the specific batch export for the test step execution. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique Project ID for the targeted environment. Obtainable via `/api/projects/`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_run_test_step_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RunEnvironmentTestStep", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_uuid": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "project_id": { + "value": "12345678-1234-5678-1234-567812345678", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"test_key\": \"test_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RunSavedQuery", + "qualifiedName": "PosthogApi.RunSavedQuery", + "fullyQualifiedName": "PosthogApi.RunSavedQuery@2.0.0", + "description": "Execute a saved query in the Datadog environment.\n\n This tool executes a saved query for a specified project in the Datadog environment. It should be called when you want to execute a pre-existing query and retrieve its results.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "saved_query_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the saved query to be executed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. To find the ID, call /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_saved_queries_run_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RunSavedQuery", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "saved_query_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "proj-987654321", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"time_range\": \"last_30_days\", \"metrics\": [\"total_users\", \"active_users\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RunTestStepBatchExport", + "qualifiedName": "PosthogApi.RunTestStepBatchExport", + "fullyQualifiedName": "PosthogApi.RunTestStepBatchExport@2.0.0", + "description": "Initiate a test step for batch exports.\n\n This tool triggers a test step for batch exports within a specified project. It should be called when testing the batch export process for a given ID is needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_id", + "type": "string", + "required": false, + "description": "A UUID string used to identify the specific batch export for the test step. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access for batch export testing. Retrieve this ID via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_run_test_step_create_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RunTestStepBatchExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "456e7890-f12b-34c5-b678-987654321098", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"test_key\":\"test_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RunTestStepNewForBatchExports", + "qualifiedName": "PosthogApi.RunTestStepNewForBatchExports", + "fullyQualifiedName": "PosthogApi.RunTestStepNewForBatchExports@2.0.0", + "description": "Run a new test step for batch exports.\n\n Use this tool to initiate a new test step for batch exports within an organization on Datadog. Ideal for confirming export configurations and processes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the organization where the test step will be initiated. It is required to specify which organization's batch exports you want to test. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_run_test_step_new_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.RunTestStepNewForBatchExports", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_identifier": { + "value": "org_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"export_type\":\"full\",\"start_date\":\"2023-01-01\",\"end_date\":\"2023-01-31\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SetCohortDeleted", + "qualifiedName": "PosthogApi.SetCohortDeleted", + "fullyQualifiedName": "PosthogApi.SetCohortDeleted@2.0.0", + "description": "Mark a cohort as deleted in the Datadog project.\n\nUse this tool to mark a specific cohort as deleted by setting its \"deleted\" attribute to true. This approach is used instead of a hard delete.", + "parameters": [ + { + "name": "cohort_id", + "type": "integer", + "required": true, + "description": "A unique integer used to identify the cohort to be marked as deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the Datadog project you want to mark the cohort as deleted in. Obtainable via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cohorts_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.SetCohortDeleted", + "parameters": { + "cohort_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SetDashboardSharingPassword", + "qualifiedName": "PosthogApi.SetDashboardSharingPassword", + "fullyQualifiedName": "PosthogApi.SetDashboardSharingPassword@2.0.0", + "description": "Create a new password for dashboard sharing configuration.\n\n Use this tool to set a new password for sharing a specific dashboard in a project. Ideal for securing shared dashboard access in a Datadog project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_identifier", + "type": "integer", + "required": false, + "description": "The identifier for the dashboard you want to configure with sharing passwords. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. To retrieve this ID, use the endpoint /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_sharing_passwords_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.SetDashboardSharingPassword", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "project_id": { + "value": "abc-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"password\":\"securePass123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SetDatasetItemDeleted", + "qualifiedName": "PosthogApi.SetDatasetItemDeleted", + "fullyQualifiedName": "PosthogApi.SetDatasetItemDeleted@2.0.0", + "description": "Mark a dataset item as deleted in a project.\n\nThis tool sets a dataset item's \"deleted\" status to true for a specific project. A hard delete is not permitted, so use this tool to logically delete an item instead.", + "parameters": [ + { + "name": "dataset_item_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific dataset item to mark as deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "ID of the project to access. To find this, call /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dataset_items_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.SetDatasetItemDeleted", + "parameters": { + "dataset_item_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-abc-123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SplitPersonEntityCreate", + "qualifiedName": "PosthogApi.SplitPersonEntityCreate", + "fullyQualifiedName": "PosthogApi.SplitPersonEntityCreate@2.0.0", + "description": "Create a sub-person entity for an existing person.\n\n Use this tool to create a sub-person entity for an existing person within a project. This is useful for scenarios requiring detailed segmentation or tracking of individual entities.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "person_identifier", + "type": "integer", + "required": false, + "description": "A unique integer identifying the person for whom a sub-entity will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve by calling `/api/projects/`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specifies the output format for the response. Accepts 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_split_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.SplitPersonEntityCreate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "person_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "proj_67890", + "type": "string", + "required": false + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "StartBatchExportBackfill", + "qualifiedName": "PosthogApi.StartBatchExportBackfill", + "fullyQualifiedName": "PosthogApi.StartBatchExportBackfill@2.0.0", + "description": "Initiate a backfill process for a BatchExport.\n\n This tool triggers a backfill for a specific BatchExport in a project. It is used to ensure that historical data is processed correctly. Note that this endpoint is deprecated, so consider using the updated endpoint if available.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the specific batch export. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_backfill_create_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.StartBatchExportBackfill", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "456e7890-f12c-34d5-b678-426614174001", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"start_date\":\"2023-01-01\",\"end_date\":\"2023-01-31\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "StartErrorTrackingUpload", + "qualifiedName": "PosthogApi.StartErrorTrackingUpload", + "fullyQualifiedName": "PosthogApi.StartErrorTrackingUpload@2.0.0", + "description": "Initiate a bulk upload for error tracking symbols.\n\nUse this tool to start a bulk upload process for symbol sets in error tracking within specified environments. Ideal for managing error tracking data efficiently.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Obtainable via /api/projects/ API call.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "integer", + "required": true, + "description": "Numeric ID of the team associated with the error tracking upload.", + "enum": null, + "inferrable": true + }, + { + "name": "upload_creation_timestamp", + "type": "string", + "required": true, + "description": "The ISO 8601 timestamp indicating when the upload was created. This helps to record the exact time of initiating the upload process.", + "enum": null, + "inferrable": true + }, + { + "name": "upload_reference", + "type": "string", + "required": true, + "description": "A unique identifier for the bulk upload session to ensure proper tracking and management.", + "enum": null, + "inferrable": true + }, + { + "name": "upload_task_id", + "type": "string", + "required": true, + "description": "Unique identifier for the bulk upload task. Used to reference the upload process.", + "enum": null, + "inferrable": true + }, + { + "name": "storage_pointer", + "type": "string", + "required": false, + "description": "A string that identifies where the symbol sets are stored. Use this to specify the location for the bulk upload.", + "enum": null, + "inferrable": true + }, + { + "name": "upload_failure_reason", + "type": "string", + "required": false, + "description": "Provide a description if there was a failure during bulk upload initiation. This can help identify issues with the upload process.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_symbol_sets_bulk_start_upload_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.StartErrorTrackingUpload", + "parameters": { + "project_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "team_id": { + "value": 42, + "type": "integer", + "required": true + }, + "upload_creation_timestamp": { + "value": "2023-10-05T12:00:00Z", + "type": "string", + "required": true + }, + "upload_reference": { + "value": "upload_456xyz", + "type": "string", + "required": true + }, + "upload_task_id": { + "value": "task_789qwe", + "type": "string", + "required": true + }, + "storage_pointer": { + "value": "s3://bucket-name/symbols/", + "type": "string", + "required": false + }, + "upload_failure_reason": { + "value": "none", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "StartSymbolUpload", + "qualifiedName": "PosthogApi.StartSymbolUpload", + "fullyQualifiedName": "PosthogApi.StartSymbolUpload@2.0.0", + "description": "Initiate symbol set upload for error tracking environments.\n\nThis tool is used to start the upload of a symbol set for error tracking within a specified environment. It should be called when you need to upload symbols to aid in error monitoring and tracking.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Obtain it via a call to /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_symbol_sets_start_upload_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.StartSymbolUpload", + "parameters": { + "project_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "StopBatchExportRun", + "qualifiedName": "PosthogApi.StopBatchExportRun", + "fullyQualifiedName": "PosthogApi.StopBatchExportRun@2.0.0", + "description": "Cancel an ongoing batch export run in a specific project.\n\n Use this tool to cancel a currently running batch export task in a Datadog project. It should be called when a batch export run needs to be stopped before completion.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_run_identifier", + "type": "string", + "required": false, + "description": "A UUID string uniquely identifying the batch export run to be canceled. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "batch_export_run_id", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the batch export run to be canceled. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Use /api/projects/ to find the correct ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_runs_cancel_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.StopBatchExportRun", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_run_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "batch_export_run_id": { + "value": "123e4567-e89b-12d3-a456-426614174001", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "proj_001", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\": \"cancel\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "StopInsightProcess", + "qualifiedName": "PosthogApi.StopInsightProcess", + "fullyQualifiedName": "PosthogApi.StopInsightProcess@2.0.0", + "description": "Cancel the ongoing insight creation process for a project.\n\n Use this tool to stop the creation of insights for a specific project. When a view logs a GET request to the resource, this process allows the automatic tracking and cancellation of ongoing insight creation activities.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the project. Use /api/projects/ to find it. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "The desired format of the response, either 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_cancel_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.StopInsightProcess", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\":\"cancel\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "StreamDashboardTiles", + "qualifiedName": "PosthogApi.StreamDashboardTiles", + "fullyQualifiedName": "PosthogApi.StreamDashboardTiles@2.0.0", + "description": "Stream dashboard metadata and tiles via Server-Sent Events.\n\nUse this tool to retrieve streaming metadata and tiles from a specific dashboard using Server-Sent Events. It can be helpful for real-time updates and renders of dashboards in a specified environment.", + "parameters": [ + { + "name": "dashboard_id", + "type": "integer", + "required": true, + "description": "A unique integer value identifying the dashboard to stream.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you wish to access. Obtain this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format for the streamed dashboard response. Choose 'json' for JSON format or 'txt' for plain text.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_stream_tiles_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.StreamDashboardTiles", + "parameters": { + "dashboard_id": { + "value": 42, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_12345", + "type": "string", + "required": true + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SummarizeSurveyResponses", + "qualifiedName": "PosthogApi.SummarizeSurveyResponses", + "fullyQualifiedName": "PosthogApi.SummarizeSurveyResponses@2.0.0", + "description": "Create a summary of survey responses for a project.\n\n This tool generates a summary of responses for a specific survey within a project. It should be called when you need to consolidate and analyze survey data.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "survey_uuid", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the survey for which responses are to be summarized. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique identifier string for the project. Obtain it by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveys_summarize_responses_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.SummarizeSurveyResponses", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "survey_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "my_project_1", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"summary\":\"This is a summary of the responses.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SuspendBatchExport", + "qualifiedName": "PosthogApi.SuspendBatchExport", + "fullyQualifiedName": "PosthogApi.SuspendBatchExport@2.0.0", + "description": "Pause an ongoing batch export process in a project.\n\n Allows pausing a specific batch export process identified by project and export IDs. Use this when you need to temporarily halt data exports in the Datadog platform.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_uuid", + "type": "string", + "required": false, + "description": "A UUID identifying the batch export to pause. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project ID for accessing the specific project. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_pause_create_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.SuspendBatchExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_uuid": { + "value": "9e8c4d7e-8c56-4e0b-bc9d-56c1a58f4d69", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\":\"pause\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TerminateBatchExportBackfill", + "qualifiedName": "PosthogApi.TerminateBatchExportBackfill", + "fullyQualifiedName": "PosthogApi.TerminateBatchExportBackfill@2.0.0", + "description": "Cancel a batch export backfill in Datadog.\n\n Use this tool to cancel an ongoing batch export backfill process for a specific project in Datadog, identified by the project, batch export, and backfill IDs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_identifier", + "type": "string", + "required": false, + "description": "A unique identifier for the batch export backfill to be canceled. This ID specifies which batch export backfill is targeted for termination. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "backfill_id", + "type": "string", + "required": false, + "description": "A UUID string identifying this batch export backfill in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project ID to access. Use /api/projects/ to find the ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_backfills_cancel_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.TerminateBatchExportBackfill", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_identifier": { + "value": "export_12345", + "type": "string", + "required": false + }, + "backfill_id": { + "value": "d9b8d5d0-63c8-4b15-b9f9-bf1e000b531e", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"cancel\":\"true\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TrackEnvironmentInsights", + "qualifiedName": "PosthogApi.TrackEnvironmentInsights", + "fullyQualifiedName": "PosthogApi.TrackEnvironmentInsights@2.0.0", + "description": "Retrieve and log environment activity insights.\n\nThis tool retrieves and logs insights on file system views for a specified environment. It should be called to obtain activity logs and understand usage patterns for a particular project environment.", + "parameters": [ + { + "name": "environment_project_id", + "type": "string", + "required": true, + "description": "Project ID for accessing environment insights. Obtainable via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the output format of the retrieved data. Accepts 'csv' or 'json'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_activity_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.TrackEnvironmentInsights", + "parameters": { + "environment_project_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TrackFileSystemView", + "qualifiedName": "PosthogApi.TrackFileSystemView", + "fullyQualifiedName": "PosthogApi.TrackFileSystemView@2.0.0", + "description": "Log and track a file system view on resource access.\n\n This tool logs a new view each time a GET request is made on the specified resource, useful for tracking access patterns.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "hog_function_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the hog function to track. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "A string representing the Project ID of the project to access. Retrieve this ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hog_functions_broadcast_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.TrackFileSystemView", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "hog_function_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "project-abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"event\": \"file_view\", \"properties\": {\"file_name\": \"report.pdf\", \"user_id\": \"user-456\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TrackFileSystemViews", + "qualifiedName": "PosthogApi.TrackFileSystemViews", + "fullyQualifiedName": "PosthogApi.TrackFileSystemViews@2.0.0", + "description": "Retrieve metrics for tracking file system views.\n\nThis tool retrieves metrics related to views on file system resources. It logs a new view each time the resource is accessed via a GET request. Use this to monitor and analyze access patterns.", + "parameters": [ + { + "name": "hog_function_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the specific hog function for tracking views.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hog_functions_metrics_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.TrackFileSystemViews", + "parameters": { + "hog_function_id": { + "value": "d4e9a953-7c2e-4e1c-8bc1-5ec2c9c70926", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "proj_123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TrackFsView", + "qualifiedName": "PosthogApi.TrackFsView", + "fullyQualifiedName": "PosthogApi.TrackFsView@2.0.0", + "description": "Logs a view each time a resource is accessed via GET.\n\n Use this tool to track access views on file system resources by logging a view each time they are accessed. This can help in monitoring and analyzing file system interactions within a specified project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "hog_function_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying this hog function. Required for logging views. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you are accessing. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hog_functions_invocations_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.TrackFsView", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "hog_function_uuid": { + "value": "e0ff8cb1-2a29-4f4c-a5e1-d4b9c5b8eab4", + "type": "string", + "required": false + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Sample View\",\"timestamp\":\"2023-10-01T12:34:56Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TrackHogFunctionInvocation", + "qualifiedName": "PosthogApi.TrackHogFunctionInvocation", + "fullyQualifiedName": "PosthogApi.TrackHogFunctionInvocation@2.0.0", + "description": "Track and log hog function invocations in a project.\n\n Use this tool to track and log each invocation of a hog function within a specified project environment. This is useful for monitoring and analyzing function usage.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "hog_function_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the hog function to track in the specified project environment. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Call /api/projects/ to retrieve the ID if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_hog_functions_invocations_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.TrackHogFunctionInvocation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "hog_function_id": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": false + }, + "project_id": { + "value": "abcd1234-efgh-5678-ijkl-mnopqrstuvwxyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"event\":\"hog_function_invoke\",\"properties\":{\"duration\":150,\"success\":true}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TrackHogFunctionViews", + "qualifiedName": "PosthogApi.TrackHogFunctionViews", + "fullyQualifiedName": "PosthogApi.TrackHogFunctionViews@2.0.0", + "description": "Tracks views on a specific hog function by logging access.\n\nUse this tool to track access and log views on a specific hog function within a given project. Each call logs a new view entry.", + "parameters": [ + { + "name": "hog_function_uuid", + "type": "string", + "required": true, + "description": "A UUID string to identify the specific hog function for view tracking.", + "enum": null, + "inferrable": true + }, + { + "name": "target_project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_hog_functions_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.TrackHogFunctionViews", + "parameters": { + "hog_function_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "target_project_id": { + "value": "project_123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TrackSurveyActivity", + "qualifiedName": "PosthogApi.TrackSurveyActivity", + "fullyQualifiedName": "PosthogApi.TrackSurveyActivity@2.0.0", + "description": "Retrieve and log survey activity views.\n\nUse this tool to retrieve and log each view of survey activities in a project. It tracks when the surveys are accessed, effectively recording each GET request.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The Project ID to access and track survey activities. Find the ID using /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveys_activity_retrieve'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.TrackSurveyActivity", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TriggerBatchExportBackfill", + "qualifiedName": "PosthogApi.TriggerBatchExportBackfill", + "fullyQualifiedName": "PosthogApi.TriggerBatchExportBackfill@2.0.0", + "description": "Trigger a backfill for a BatchExport.\n\n Use this tool to trigger a backfill for a BatchExport. Note that this endpoint is deprecated; consider using the updated endpoint POST /batch_exports//backfills/ instead.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying this batch export. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The Project ID for accessing the desired project. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_backfill_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.TriggerBatchExportBackfill", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_uuid": { + "value": "a1b2c3d4-e5f6-7g8h-9i0j-k1l2m3n4o5p6", + "type": "string", + "required": false + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"type\":\"backfill\",\"status\":\"requested\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UndoMaterialization", + "qualifiedName": "PosthogApi.UndoMaterialization", + "fullyQualifiedName": "PosthogApi.UndoMaterialization@2.0.0", + "description": "Revert back to the original view by undoing materialization.\n\n Use this tool to revert a materialized table back to its original view. This action deletes the materialized table and its schedule, effectively undoing the materialization.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "saved_query_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the specific data warehouse saved query to be reverted. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Provide the Project ID for accessing the specific project. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_saved_queries_revert_materialization_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UndoMaterialization", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "saved_query_uuid": { + "value": "b3d6a1e7-61b5-4f53-a1ba-8c7f7727116f", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\":\"undo_materialization\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UndoMaterializationPosthog", + "qualifiedName": "PosthogApi.UndoMaterializationPosthog", + "fullyQualifiedName": "PosthogApi.UndoMaterializationPosthog@2.0.0", + "description": "Revert materialization to the original view in Datadog.\n\n Use this tool to delete a materialized table and its schedule, reverting it back to the original view in Datadog environments.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "saved_query_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the data warehouse saved query to be reverted. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_for_access", + "type": "string", + "required": false, + "description": "Project ID to access the relevant Datadog environment. Retrieve by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_saved_queries_revert_materialization_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UndoMaterializationPosthog", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "saved_query_uuid": { + "value": "e5b8d172-9a5e-4e11-ae84-1e4605f12345", + "type": "string", + "required": false + }, + "project_id_for_access": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\":\"revert\",\"reason\":\"data correction\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UnpauseBatchExport", + "qualifiedName": "PosthogApi.UnpauseBatchExport", + "fullyQualifiedName": "PosthogApi.UnpauseBatchExport@2.0.0", + "description": "Unpause a paused BatchExport to resume data export.\n\n Use this tool to unpause a paused BatchExport, allowing data export to continue. Ideal for resuming exports that were previously halted.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the batch export to unpause. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve using a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_unpause_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UnpauseBatchExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_id": { + "value": "d4e5f6a1-7f23-4b8c-b98e-4099c62b7e08", + "type": "string", + "required": false + }, + "project_id": { + "value": "12345678-90ab-cdef-1234-567890abcdef", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\": \"unpaused\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UnsubscribeFromProjectAlerts", + "qualifiedName": "PosthogApi.UnsubscribeFromProjectAlerts", + "fullyQualifiedName": "PosthogApi.UnsubscribeFromProjectAlerts@2.0.0", + "description": "Set project alert subscription as deleted.\n\nUse this tool to mark a project alert subscription as deleted. This does not hard delete the model but updates its status to indicate deletion.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve it from the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_id", + "type": "integer", + "required": true, + "description": "A unique integer identifier for the project alert subscription to be marked as deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'subscriptions_destroy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UnsubscribeFromProjectAlerts", + "parameters": { + "project_identifier": { + "value": "project-12345", + "type": "string", + "required": true + }, + "subscription_id": { + "value": 98765, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateActionPartial", + "qualifiedName": "PosthogApi.UpdateActionPartial", + "fullyQualifiedName": "PosthogApi.UpdateActionPartial@2.0.0", + "description": "Partially update an action in a project to track views.\n\n Use this tool to partially update an action within a project, logging each accessed view of the resource.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "action_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying the action to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project you want to access. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format for the output data. Choose between 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateActionPartial", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "action_id": { + "value": 1234, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "proj_5678", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"key\":\"value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAnnotation", + "qualifiedName": "PosthogApi.UpdateAnnotation", + "fullyQualifiedName": "PosthogApi.UpdateAnnotation@2.0.0", + "description": "Update an existing annotation by ID.\n\n This tool allows updating of an existing annotation in a specified project by providing the annotation ID and project ID. Useful for modifying details related to an annotation.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "annotation_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the annotation to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project ID for accessing the desired project. Retrieve ID with /api/projects/ call. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'annotations_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateAnnotation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "annotation_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"content\": \"Updated annotation content\", \"tags\": [\"tag1\", \"tag2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateBatchExport", + "qualifiedName": "PosthogApi.UpdateBatchExport", + "fullyQualifiedName": "PosthogApi.UpdateBatchExport@2.0.0", + "description": "Update an existing batch export in a project.\n\n Use this tool to update the settings of an existing batch export for a specified project. Suitable for modifying export configurations within Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the batch export to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_update_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateBatchExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_id": { + "value": "5dca8b50-5a48-4f30-a9a5-3f9d0c8c4f5f", + "type": "string", + "required": false + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"export_format\":\"csv\",\"destination\":\"s3://mybucket/data.csv\",\"interval\":\"daily\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateBatchExports", + "qualifiedName": "PosthogApi.UpdateBatchExports", + "fullyQualifiedName": "PosthogApi.UpdateBatchExports@2.0.0", + "description": "Update batch exports for a specific organization.\n\n This tool updates batch export settings for a given organization using their specific IDs. It should be called when adjustments to the exports configuration are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_id", + "type": "string", + "required": false, + "description": "A UUID string identifying this batch export that needs to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "A string representing the unique identifier for the organization whose batch export settings need updating. Ensure the correct ID is provided for successful updates. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch_exports_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateBatchExports", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "organization_identifier": { + "value": "org-xyz-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"export_type\":\"data\",\"frequency\":\"daily\",\"format\":\"csv\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCohortViews", + "qualifiedName": "PosthogApi.UpdateCohortViews", + "fullyQualifiedName": "PosthogApi.UpdateCohortViews@2.0.0", + "description": "Update and track cohort file system views.\n\n This tool updates the cohort's file system views, logging each GET request as a new view. It is useful for tracking how frequently a cohort is accessed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "cohort_id", + "type": "integer", + "required": false, + "description": "A unique integer identifier for the cohort. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you're trying to access. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cohorts_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateCohortViews", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "cohort_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_id": { + "value": "project_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\":\"view\",\"timestamp\":\"2023-10-01T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDashboard", + "qualifiedName": "PosthogApi.UpdateDashboard", + "fullyQualifiedName": "PosthogApi.UpdateDashboard@2.0.0", + "description": "Update a specific Datadog dashboard.\n\n Use this tool to update the details of a specific Datadog dashboard by providing the project and dashboard IDs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying the specific Datadog dashboard to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The Project ID to access the relevant dashboard. Use the '/api/projects/' endpoint to retrieve the ID if necessary. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format for the response, either 'json' or 'txt'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "webhook_secret" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateDashboard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Dashboard Title\", \"widgets\": [{\"type\": \"timeseries\", \"data\": []}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDashboardEnvironment", + "qualifiedName": "PosthogApi.UpdateDashboardEnvironment", + "fullyQualifiedName": "PosthogApi.UpdateDashboardEnvironment@2.0.0", + "description": "Update specific dashboard settings in an environment.\n\n Use this tool to partially update the settings of a specific dashboard within a given environment, identified by project and dashboard IDs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_id", + "type": "integer", + "required": false, + "description": "Unique integer identifying the dashboard to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. Call /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response. Options include 'json' or 'txt'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateDashboardEnvironment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Dashboard\",\"layout\":\"grid\",\"theme\":\"dark\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDashboardPartial", + "qualifiedName": "PosthogApi.UpdateDashboardPartial", + "fullyQualifiedName": "PosthogApi.UpdateDashboardPartial@2.0.0", + "description": "Partially update a dashboard's details.\n\n Use this tool to update specific fields of an existing dashboard within a project. It is suitable for cases where only certain aspects of the dashboard need modification without updating the entire dashboard's details.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the dashboard to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you're trying to access. Use an API call to /api/projects/ to find it. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Defines the format of the response returned by the API. Options are 'json' or 'txt'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateDashboardPartial", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_456", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Dashboard Title\",\"description\": \"This is an updated description.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDashboardTemplate", + "qualifiedName": "PosthogApi.UpdateDashboardTemplate", + "fullyQualifiedName": "PosthogApi.UpdateDashboardTemplate@2.0.0", + "description": "Partially update a dashboard template in Datadog.\n\n Use this tool to apply partial updates to a specific dashboard template in Datadog. This is useful for modifying specific attributes of an existing dashboard template without updating it entirely.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_template_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the dashboard template to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "dashboard_project_id", + "type": "string", + "required": false, + "description": "Project ID to access a specific dashboard. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboard_templates_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateDashboardTemplate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_template_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "dashboard_project_id": { + "value": "proj-789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Dashboard Title\", \"widgets\": [{\"type\": \"line\", \"data\": {}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDashboardTilePosition", + "qualifiedName": "PosthogApi.UpdateDashboardTilePosition", + "fullyQualifiedName": "PosthogApi.UpdateDashboardTilePosition@2.0.0", + "description": "Repositions a tile on a Datadog dashboard.\n\n Use this tool to update the position of a tile within a specific Datadog dashboard. Ideal for organizing dashboard layouts or rearranging tiles based on preference or need.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying the specific dashboard to update the tile position. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Obtainable via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the desired format of the response. Choose between 'json' or 'txt'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dashboards_move_tile_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateDashboardTilePosition", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"tile_id\": \"tile_1\", \"position\": {\"x\": 1, \"y\": 2}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDataColorTheme", + "qualifiedName": "PosthogApi.UpdateDataColorTheme", + "fullyQualifiedName": "PosthogApi.UpdateDataColorTheme@2.0.0", + "description": "Update the color theme for a specific project.\n\n This tool updates the color theme settings for a given project in Datadog. Use this when you need to change the visual representation of data by altering the color theme.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "color_theme_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the data color theme to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project you want to access. Retrieve the ID by querying /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'data_color_themes_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateDataColorTheme", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "color_theme_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "abc-456-def", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"primaryColor\": \"#ff5733\", \"secondaryColor\": \"#33c1ff\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDataset", + "qualifiedName": "PosthogApi.UpdateDataset", + "fullyQualifiedName": "PosthogApi.UpdateDataset@2.0.0", + "description": "Update a specific dataset within a project.\n\n Use this tool to update the details of a specific dataset within a given project in Datadog. Useful for modifying existing datasets when changes are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dataset_identifier", + "type": "string", + "required": false, + "description": "A UUID string identifying the dataset to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'datasets_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateDataset", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dataset_identifier": { + "value": "e7b9007f-9e54-4b7f-b0f3-9b6c271fcbbe", + "type": "string", + "required": false + }, + "project_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Dataset Name\",\"description\":\"New description for the dataset\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDatasetInfo", + "qualifiedName": "PosthogApi.UpdateDatasetInfo", + "fullyQualifiedName": "PosthogApi.UpdateDatasetInfo@2.0.0", + "description": "Update specific dataset information in a project.\n\n Call this tool to update specific details of a dataset within a project in Datadog. Useful for modifying metadata or configurations of existing datasets.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dataset_uuid", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the dataset to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to be accessed. Retrieve using a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'datasets_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateDatasetInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dataset_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_001", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Dataset\",\"description\":\"This dataset has been updated.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDatasetItem", + "qualifiedName": "PosthogApi.UpdateDatasetItem", + "fullyQualifiedName": "PosthogApi.UpdateDatasetItem@2.0.0", + "description": "Update an existing dataset item with new information.\n\n This tool updates an existing dataset item identified by project and item IDs. Use it when you need to modify details or correct information in a dataset.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dataset_item_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the dataset item to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project ID of the project to access. You can find this ID by making a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dataset_items_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateDatasetItem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dataset_item_id": { + "value": "d8c3b2a0-3a55-4e2b-8c50-0aad5e5ba5ee", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Item\", \"value\": 42}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDefaultGroupColumns", + "qualifiedName": "PosthogApi.UpdateDefaultGroupColumns", + "fullyQualifiedName": "PosthogApi.UpdateDefaultGroupColumns@2.0.0", + "description": "Update default columns for group types in a project.\n\n This tool updates the default columns for group types within a specified project. It should be called to modify the columns used by default when displaying group types in the application.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project you want to access. Retrieve it by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_types_set_default_columns_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateDefaultGroupColumns", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"default_columns\": [\"column1\", \"column2\", \"column3\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDomainPartial", + "qualifiedName": "PosthogApi.UpdateDomainPartial", + "fullyQualifiedName": "PosthogApi.UpdateDomainPartial@2.0.0", + "description": "Partially update domain information for an organization.\n\n Use this tool to update specific fields of a domain's information within an organization on Datadog. This is useful when you need to change only certain attributes without affecting others.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "domain_id", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the domain to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the organization whose domain is being partially updated. Expected to be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'domains_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateDomainPartial", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "domain_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "organization_identifier": { + "value": "org-abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Domain Name\", \"enabled\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEarlyAccessFeature", + "qualifiedName": "PosthogApi.UpdateEarlyAccessFeature", + "fullyQualifiedName": "PosthogApi.UpdateEarlyAccessFeature@2.0.0", + "description": "Update an early access feature for a project.\n\n This tool updates an early access feature for a specific project by partially modifying its properties. When a GET request is made on the resource, it logs a new view, facilitating tracking of file system views for the project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "early_access_feature_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the specific early access feature. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Retrieve this from the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'early_access_feature_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEarlyAccessFeature", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "early_access_feature_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "proj_987654321", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Feature Name\", \"enabled\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEndpoint", + "qualifiedName": "PosthogApi.UpdateEndpoint", + "fullyQualifiedName": "PosthogApi.UpdateEndpoint@2.0.0", + "description": "Update an existing endpoint run in a project.\n\n Use this tool to update an existing endpoint run in a specified project with optional parameters.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "endpoint_name", + "type": "string", + "required": false, + "description": "The name of the endpoint to be updated. This is a required string parameter. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID to access the specific project. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'endpoints_run_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEndpoint", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "endpoint_name": { + "value": "updateUserEndpoint", + "type": "string", + "required": false + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"user_id\":\"abc123\",\"properties\":{\"email\":\"user@example.com\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvFileSystemShortcut", + "qualifiedName": "PosthogApi.UpdateEnvFileSystemShortcut", + "fullyQualifiedName": "PosthogApi.UpdateEnvFileSystemShortcut@2.0.0", + "description": "Updates a file system shortcut in a specified environment.\n\nUse this tool to update the file system shortcut for a given environment by specifying the project and shortcut IDs.", + "parameters": [ + { + "name": "creation_timestamp", + "type": "string", + "required": true, + "description": "The timestamp when the shortcut was created. Format: ISO 8601 string.", + "enum": null, + "inferrable": true + }, + { + "name": "file_system_path", + "type": "string", + "required": true, + "description": "The path of the file system shortcut to update. Specify the full directory path as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "file_system_shortcut_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the file system shortcut to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_id", + "type": "string", + "required": true, + "description": "Unique identifier of the file system shortcut to update in the specified environment.", + "enum": null, + "inferrable": true + }, + { + "name": "reference_identifier", + "type": "string", + "required": false, + "description": "The reference identifier for the file system shortcut to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_href", + "type": "string", + "required": false, + "description": "The URL or URI of the file system shortcut to update.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_type", + "type": "string", + "required": false, + "description": "Specifies the type of the file system shortcut to be updated, such as 'document' or 'folder'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_shortcut_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvFileSystemShortcut", + "parameters": { + "creation_timestamp": { + "value": "2023-10-04T12:30:00Z", + "type": "string", + "required": true + }, + "file_system_path": { + "value": "/usr/local/projects/my_project/shortcuts", + "type": "string", + "required": true + }, + "file_system_shortcut_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-789", + "type": "string", + "required": true + }, + "shortcut_id": { + "value": "abcd1234-5678-90ef-ghij-klmnopqrstuv", + "type": "string", + "required": true + }, + "reference_identifier": { + "value": "ref-001", + "type": "string", + "required": false + }, + "shortcut_href": { + "value": "https://example.com/shortcuts/abcd1234", + "type": "string", + "required": false + }, + "shortcut_type": { + "value": "document", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentBatchExports", + "qualifiedName": "PosthogApi.UpdateEnvironmentBatchExports", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentBatchExports@2.0.0", + "description": "Update environment batch exports details.\n\n Use this tool to update the details of environment batch exports for a specific project. It is helpful when modifications are needed in the batch export configurations of environments.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_uuid", + "type": "string", + "required": false, + "description": "The UUID identifying the specific batch export to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID to access; retrieve from /api/projects/ if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentBatchExports", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "proj_001", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"export_type\":\"full\",\"schedule\":\"daily\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentColorTheme", + "qualifiedName": "PosthogApi.UpdateEnvironmentColorTheme", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentColorTheme@2.0.0", + "description": "Update the color theme of an environment.\n\n Use this tool to change the data color theme of a specific environment identified by project and theme IDs. Useful for customizing the visual presentation of projects.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "data_color_theme_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying the data color theme to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_data_color_themes_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentColorTheme", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "data_color_theme_id": { + "value": 1, + "type": "integer", + "required": false + }, + "project_id": { + "value": "project_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"color\": \"#FF5733\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentDashboard", + "qualifiedName": "PosthogApi.UpdateEnvironmentDashboard", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentDashboard@2.0.0", + "description": "Update settings of an environment dashboard.\n\n This tool updates the settings of a specified environment dashboard within a project, using provided dashboard identifiers.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dashboard_id", + "type": "integer", + "required": false, + "description": "A unique integer value to identify the environment dashboard to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve this using the /api/projects/ endpoint if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the desired format of the response. Options are 'json' or 'txt'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dashboards_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentDashboard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dashboard_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_456", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Dashboard\",\"settings\":{\"layout\":\"grid\",\"widgets\":[{\"type\":\"line_chart\",\"data\":\"data_source_1\"}]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentDataset", + "qualifiedName": "PosthogApi.UpdateEnvironmentDataset", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentDataset@2.0.0", + "description": "Updates details of a specific environment dataset.\n\n Use this tool to update the details of a specific dataset within an environment by specifying the project and dataset IDs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dataset_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the specific dataset to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Retrieve the ID by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_datasets_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentDataset", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dataset_id": { + "value": "d1234567-89ab-cdef-0123-456789abcdef", + "type": "string", + "required": false + }, + "project_id": { + "value": "p9876543-21ba-cdef-0123-456789abcdef", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Dataset Name\", \"description\": \"This dataset tracks updated metrics.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentDatasetItem", + "qualifiedName": "PosthogApi.UpdateEnvironmentDatasetItem", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentDatasetItem@2.0.0", + "description": "Update an environment dataset item in a project.\n\n Use this tool to update specific details of a dataset item within a given environment of a project. It should be called when you need to modify existing dataset entries in an environment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dataset_item_uuid", + "type": "string", + "required": false, + "description": "A UUID string uniquely identifying the dataset item to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier of the project you want to access. Retrieve it by making a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_dataset_items_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentDatasetItem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dataset_item_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "proj-001", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Title\",\"value\":42}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentEndpoint", + "qualifiedName": "PosthogApi.UpdateEnvironmentEndpoint", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentEndpoint@2.0.0", + "description": "Update an existing environment endpoint.\n\n This tool updates an existing endpoint for a specific project in Datadog environments. It should be called when modifications to the endpoint's state or configuration are needed. Parameters for the update are optional.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "endpoint_name", + "type": "string", + "required": false, + "description": "The name of the endpoint to update. This is used to identify the specific endpoint within the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_endpoints_run_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentEndpoint", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "endpoint_name": { + "value": "new-endpoint-name", + "type": "string", + "required": false + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"config\":{\"enabled\":true,\"url\":\"https://example.com\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentEvaluation", + "qualifiedName": "PosthogApi.UpdateEnvironmentEvaluation", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentEvaluation@2.0.0", + "description": "Update an environment's evaluation in a project.\n\n Use this tool to update the evaluation details of a specific environment within a given project. It requires the project and evaluation identifiers to locate and modify the corresponding record.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "evaluation_id", + "type": "string", + "required": false, + "description": "A UUID string uniquely identifying the evaluation to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to update. Obtainable via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_evaluations_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentEvaluation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "evaluation_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "456e7890-f12b-34d5-a678-912345678901", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"evaluation_result\": \"positive\", \"comments\": \"Good performance\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentExport", + "qualifiedName": "PosthogApi.UpdateEnvironmentExport", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentExport@2.0.0", + "description": "Update environment export batch details.\n\n Use this tool to update specific details of an environment export batch in Datadog. This is useful for modifying existing export configurations or details without creating a new batch.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "batch_export_id", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the environment export batch to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve it with a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_batch_exports_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentExport", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "batch_export_id": { + "value": "a0eeb9c2-4e1e-4c4b-8e5e-5f3e0a72f3d8", + "type": "string", + "required": false + }, + "project_id": { + "value": "project_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Export Batch\", \"status\": \"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentFileSystem", + "qualifiedName": "PosthogApi.UpdateEnvironmentFileSystem", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentFileSystem@2.0.0", + "description": "Update a file system for a specific environment.\n\n This tool updates the file system within a specified environment using the project and file system IDs. Use it when changes to the environment's file system are required.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "file_system_id", + "type": "string", + "required": false, + "description": "A UUID string identifying this file system for the update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project containing the environment. Retrieve using the /api/projects/ endpoint if unknown. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_file_system_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentFileSystem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "file_system_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"key\": \"value\", \"updated\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentFolder", + "qualifiedName": "PosthogApi.UpdateEnvironmentFolder", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentFolder@2.0.0", + "description": "Update a specific folder in an environment project.\n\nThis tool updates the details of a persisted folder within a specified environment project. It should be called when modifications to folder settings or contents are needed in a given environment.", + "parameters": [ + { + "name": "folder_creation_date", + "type": "string", + "required": true, + "description": "The date and time when the folder was created, in ISO 8601 format (e.g., '2023-10-12T14:23:30Z').", + "enum": null, + "inferrable": true + }, + { + "name": "folder_id", + "type": "string", + "required": true, + "description": "The identifier for the folder to be updated in the environment.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_type", + "type": "string", + "required": true, + "description": "Specify the type of the folder: 'home' for Home, 'pinned' for Pinned.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_update_timestamp", + "type": "string", + "required": true, + "description": "Timestamp indicating when the folder was last updated. Expected in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_uuid", + "type": "string", + "required": true, + "description": "A UUID string identifying the Persisted Folder to update.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "String ID of the project to access. Retrieve by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_path", + "type": "string", + "required": false, + "description": "The path of the folder within the environment project to update.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_protocol_type", + "type": "string", + "required": false, + "description": "Specifies the protocol type for accessing the folder. Must be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persisted_folder_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentFolder", + "parameters": { + "folder_creation_date": { + "value": "2023-10-12T14:23:30Z", + "type": "string", + "required": true + }, + "folder_id": { + "value": "folder-12345", + "type": "string", + "required": true + }, + "folder_type": { + "value": "home", + "type": "string", + "required": true + }, + "folder_update_timestamp": { + "value": "2023-10-15T10:00:00Z", + "type": "string", + "required": true + }, + "folder_uuid": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-67890", + "type": "string", + "required": true + }, + "folder_path": { + "value": "/path/to/folder", + "type": "string", + "required": false + }, + "folder_protocol_type": { + "value": "http", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentGroupProperty", + "qualifiedName": "PosthogApi.UpdateEnvironmentGroupProperty", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentGroupProperty@2.0.0", + "description": "Update a property of an environment group.\n\nThis tool updates a specific property within a group of environments in a project. It should be called when there's a need to change configuration or settings for environment groups.", + "parameters": [ + { + "name": "creation_timestamp", + "type": "string", + "required": true, + "description": "The date and time when the property was created, in ISO 8601 format (e.g., '2023-10-05T14:48:00Z').", + "enum": null, + "inferrable": true + }, + { + "name": "environment_group_key", + "type": "string", + "required": true, + "description": "A unique identifier for the environment group whose property is being updated.", + "enum": null, + "inferrable": true + }, + { + "name": "group_key", + "type": "string", + "required": true, + "description": "Specify the key of the group to locate within the project for updating properties.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_identifier", + "type": "integer", + "required": true, + "description": "A unique integer representing the type of environment group to locate and update.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_index_identifier", + "type": "integer", + "required": true, + "description": "The integer index identifying the type of the environment group to be updated. Ensure it corresponds to the correct group type required for the operation.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique Project ID for accessing specific project resources. Retrieve this ID by making a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "group_properties", + "type": "string", + "required": false, + "description": "A JSON string representing the properties to update in the environment group.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_groups_update_property_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentGroupProperty", + "parameters": { + "creation_timestamp": { + "value": "2023-10-05T14:48:00Z", + "type": "string", + "required": true + }, + "environment_group_key": { + "value": "env-group-001", + "type": "string", + "required": true + }, + "group_key": { + "value": "group-123", + "type": "string", + "required": true + }, + "group_type_identifier": { + "value": 1, + "type": "integer", + "required": true + }, + "group_type_index_identifier": { + "value": 0, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project-456", + "type": "string", + "required": true + }, + "group_properties": { + "value": "{\"property1\": \"value1\", \"property2\": \"value2\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentInsights", + "qualifiedName": "PosthogApi.UpdateEnvironmentInsights", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentInsights@2.0.0", + "description": "Update insights for a specified environment.\n\n Used to update tracking information for file system views in a specified environment. Each update logs a new view for the resource.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "insight_identifier", + "type": "integer", + "required": false, + "description": "A unique integer identifying the specific insight to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique string ID of the project to access. Obtainable via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the format for the response data. Options are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentInsights", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "insight_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "my_project_001", + "type": "string", + "required": false + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"viewed\": true, \"resource_id\": \"file_123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentInsightsLog", + "qualifiedName": "PosthogApi.UpdateEnvironmentInsightsLog", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentInsightsLog@2.0.0", + "description": "Log a view of environment insights to track changes.\n\n Call this tool to log a view of the environment insights for tracking file system changes. Each call logs a new view, helping in monitoring updates to environment insights.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "insight_identifier", + "type": "integer", + "required": false, + "description": "A unique integer identifying the environment insight to log. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The Project ID needed to access the desired environment insights. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the format of the data to be returned. Options are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentInsightsLog", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "insight_identifier": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": false + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"viewed_at\": \"2023-10-01T12:00:00Z\", \"changed_files\": [\"file1.js\", \"file2.css\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentSubscription", + "qualifiedName": "PosthogApi.UpdateEnvironmentSubscription", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentSubscription@2.0.0", + "description": "Update environment subscription for a project.\n\n Use this tool to update the subscription details of an environment within a specified project in Datadog. Call this when you need to change settings or information related to an environment's subscription.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "subscription_identifier", + "type": "integer", + "required": false, + "description": "A unique integer value identifying the subscription to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you're accessing. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_subscriptions_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentSubscription", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "subscription_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "project_abc", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"active\",\"settings\":{\"frequency\":\"weekly\",\"email\":\"user@example.com\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentSymbolSet", + "qualifiedName": "PosthogApi.UpdateEnvironmentSymbolSet", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentSymbolSet@2.0.0", + "description": "Update error tracking symbol sets in environments.\n\nUse this tool to update the symbol sets for error tracking within a specified environment by providing the project and symbol set IDs.", + "parameters": [ + { + "name": "error_tracking_symbol_set_id", + "type": "string", + "required": true, + "description": "A UUID identifying the error tracking symbol set to update.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_for_symbol_set_update", + "type": "string", + "required": true, + "description": "The ID of the project for updating the symbol set. Obtainable via /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_symbol_sets_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentSymbolSet", + "parameters": { + "error_tracking_symbol_set_id": { + "value": "55f7b3cc-254d-4c7a-a8e3-8a9ce5305af7", + "type": "string", + "required": true + }, + "project_id_for_symbol_set_update": { + "value": "ec64dfc2-b88d-4ed6-afc3-fb2512bff7a9", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnvironmentTheme", + "qualifiedName": "PosthogApi.UpdateEnvironmentTheme", + "fullyQualifiedName": "PosthogApi.UpdateEnvironmentTheme@2.0.0", + "description": "Update color themes for project environments.\n\n This tool updates the color themes of data environments within a specified project. It's useful for changing visual settings or themes in your Datadog project environments.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "color_theme_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the data color theme to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project you want to access. Obtain it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_data_color_themes_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEnvironmentTheme", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "color_theme_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project-abc-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"color\": \"#FF5733\", \"background\": \"#C70039\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateErrorSuppressionRule", + "qualifiedName": "PosthogApi.UpdateErrorSuppressionRule", + "fullyQualifiedName": "PosthogApi.UpdateErrorSuppressionRule@2.0.0", + "description": "Update error tracking suppression rules for a project.\n\nUse this tool to partially update suppression rules for error tracking in specific environments within a project on Datadog.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you're trying to access. Call /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_id", + "type": "string", + "required": false, + "description": "The unique identifier of the suppression rule to update. This ID is required to specify which rule you want to partially update.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_order_key", + "type": "integer", + "required": false, + "description": "Specify the order for the suppression rule as an integer. Determines rule priority or execution sequence.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_filters", + "type": "string", + "required": false, + "description": "A string defining filters for the suppression rule updates (e.g., specific conditions or parameters).", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_id", + "type": "string", + "required": false, + "description": "The UUID identifying the error tracking suppression rule to update.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_suppression_rules_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateErrorSuppressionRule", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "rule_id": { + "value": "abcde-12345-fghij-67890", + "type": "string", + "required": false + }, + "rule_order_key": { + "value": 1, + "type": "integer", + "required": false + }, + "suppression_rule_filters": { + "value": "{\"error_type\": \"critical\", \"environment\": \"production\"}", + "type": "string", + "required": false + }, + "suppression_rule_id": { + "value": "uuid-98765-43210-qwerty", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateErrorTrackingAssignmentRules", + "qualifiedName": "PosthogApi.UpdateErrorTrackingAssignmentRules", + "fullyQualifiedName": "PosthogApi.UpdateErrorTrackingAssignmentRules@2.0.0", + "description": "Partially update error tracking assignment rules for environments.\n\nUse this tool to update specific properties of error tracking assignment rules within a given environment. This can be used to modify existing rules by providing the project and rule identifiers.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project to access for updating error tracking rules. Obtain it via `/api/projects/`.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_for_error_tracking", + "type": "string", + "required": false, + "description": "The identifier of the assignee for the error tracking rule. This should be a string representing the user or team to which the error tracking assignment is being made.", + "enum": null, + "inferrable": true + }, + { + "name": "disabled_data", + "type": "string", + "required": false, + "description": "Provide a string indicating which data or fields should be marked as disabled in the error tracking rules.", + "enum": null, + "inferrable": true + }, + { + "name": "error_tracking_rule_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the specific error tracking assignment rule to update.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_expression", + "type": "string", + "required": false, + "description": "Provide a string that specifies criteria for selecting which rules to update. Use logical expressions to define this filter.", + "enum": null, + "inferrable": true + }, + { + "name": "order_key", + "type": "integer", + "required": false, + "description": "The order key for sorting or prioritizing the assignment rules. Provide as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the error tracking assignment rule to update.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_assignment_rules_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateErrorTrackingAssignmentRules", + "parameters": { + "project_identifier": { + "value": "proj_123456", + "type": "string", + "required": true + }, + "assignee_for_error_tracking": { + "value": "user_78910", + "type": "string", + "required": false + }, + "disabled_data": { + "value": "field_1, field_2", + "type": "string", + "required": false + }, + "error_tracking_rule_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "filter_expression": { + "value": "severity = 'high' AND status = 'open'", + "type": "string", + "required": false + }, + "order_key": { + "value": 2, + "type": "integer", + "required": false + }, + "rule_identifier": { + "value": "rule_12345", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateErrorTrackingGroupingRules", + "qualifiedName": "PosthogApi.UpdateErrorTrackingGroupingRules", + "fullyQualifiedName": "PosthogApi.UpdateErrorTrackingGroupingRules@2.0.0", + "description": "Update error tracking grouping rules for a project.\n\nUse this tool to update the grouping rules for error tracking within a specified project environment in Datadog.", + "parameters": [ + { + "name": "assignee_user_id", + "type": "string", + "required": true, + "description": "The user ID of the person to whom the error tracking task is assigned.", + "enum": null, + "inferrable": true + }, + { + "name": "filters_for_grouping_rules", + "type": "string", + "required": true, + "description": "Specify filters as a string to refine which errors to group. This can include criteria like error type or severity.", + "enum": null, + "inferrable": true + }, + { + "name": "grouping_rule_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the error tracking grouping rule to update in Datadog.", + "enum": null, + "inferrable": true + }, + { + "name": "priority_order_key", + "type": "integer", + "required": true, + "description": "Specify the integer value to determine the priority order of grouping rules.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve this by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the error tracking grouping rule to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "disabled_data", + "type": "string", + "required": false, + "description": "A string indicating which data to disable in the error tracking grouping rules. Provide the specific data identifier or description.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_grouping_rules_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateErrorTrackingGroupingRules", + "parameters": { + "assignee_user_id": { + "value": "12345", + "type": "string", + "required": true + }, + "filters_for_grouping_rules": { + "value": "error_type=critical;severity=high", + "type": "string", + "required": true + }, + "grouping_rule_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + }, + "priority_order_key": { + "value": 1, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": true + }, + "rule_id": { + "value": "rule_abc123", + "type": "string", + "required": true + }, + "disabled_data": { + "value": "error_stack_trace", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateErrorTrackingRelease", + "qualifiedName": "PosthogApi.UpdateErrorTrackingRelease", + "fullyQualifiedName": "PosthogApi.UpdateErrorTrackingRelease@2.0.0", + "description": "Update details for an error tracking release.\n\nUse this tool to modify the details of an error tracking release within a specified project environment on Datadog.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "error_tracking_release_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the error tracking release to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "release_creation_date", + "type": "string", + "required": false, + "description": "The date and time when the error tracking release was created. Expected in ISO 8601 format (e.g., 2023-10-31T14:30:00Z).", + "enum": null, + "inferrable": true + }, + { + "name": "release_hash_identifier", + "type": "string", + "required": false, + "description": "A unique string identifier for the error tracking release to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "release_id", + "type": "string", + "required": false, + "description": "The unique identifier of the error tracking release to update.", + "enum": null, + "inferrable": true + }, + { + "name": "release_metadata", + "type": "string", + "required": false, + "description": "Metadata for the error tracking release. This should be a string detailing any additional information relevant to the release.", + "enum": null, + "inferrable": true + }, + { + "name": "release_project_name", + "type": "string", + "required": false, + "description": "The name of the project associated with the error tracking release to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "release_version", + "type": "string", + "required": false, + "description": "The specific version of the error tracking release to update. It should be a string representing the version number.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier for the team associated with the error tracking release. Expected to be an integer.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_releases_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateErrorTrackingRelease", + "parameters": { + "project_id": { + "value": "12345", + "type": "string", + "required": true + }, + "error_tracking_release_id": { + "value": "abcd-ef01-2345-6789-ghijklmno012", + "type": "string", + "required": false + }, + "release_creation_date": { + "value": "2023-10-31T14:30:00Z", + "type": "string", + "required": false + }, + "release_hash_identifier": { + "value": "hash-unique-identifier-001", + "type": "string", + "required": false + }, + "release_id": { + "value": "release-123", + "type": "string", + "required": false + }, + "release_metadata": { + "value": "Hotfix for user login issue.", + "type": "string", + "required": false + }, + "release_project_name": { + "value": "User Authentication Module", + "type": "string", + "required": false + }, + "release_version": { + "value": "1.0.2", + "type": "string", + "required": false + }, + "team_identifier": { + "value": 42, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateErrorTrackingReleases", + "qualifiedName": "PosthogApi.UpdateErrorTrackingReleases", + "fullyQualifiedName": "PosthogApi.UpdateErrorTrackingReleases@2.0.0", + "description": "Update error tracking releases in a project environment.\n\nUse this tool to update error tracking releases for a specific project environment in Datadog. Ideal for modifying release information in error tracking systems.", + "parameters": [ + { + "name": "created_at_timestamp", + "type": "string", + "required": true, + "description": "The timestamp indicating when the release was created. Format should be ISO 8601 (e.g., '2023-09-23T18:25:43.511Z').", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The Project ID for accessing the specific project in Datadog. Obtainable by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "project_key", + "type": "string", + "required": true, + "description": "The identifier or name of the project for which you're updating the error tracking release.", + "enum": null, + "inferrable": true + }, + { + "name": "release_hash_id", + "type": "string", + "required": true, + "description": "A unique identifier for the release you want to update. Provides a reference to the specific release version within the project's error tracking data.", + "enum": null, + "inferrable": true + }, + { + "name": "release_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the error tracking release to update.", + "enum": null, + "inferrable": true + }, + { + "name": "release_version", + "type": "string", + "required": true, + "description": "The version of the release being updated. This should typically be a string representing the version code or number.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "integer", + "required": true, + "description": "The unique integer identifier for the team. Used to specify which team's release information to update.", + "enum": null, + "inferrable": true + }, + { + "name": "update_id", + "type": "string", + "required": true, + "description": "The unique identifier for the release you want to update.", + "enum": null, + "inferrable": true + }, + { + "name": "metadata_description", + "type": "string", + "required": false, + "description": "Provide a string with additional information or details about the release metadata.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_releases_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateErrorTrackingReleases", + "parameters": { + "created_at_timestamp": { + "value": "2023-10-01T12:45:30.123Z", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "proj-abc123", + "type": "string", + "required": true + }, + "project_key": { + "value": "MyAwesomeProject", + "type": "string", + "required": true + }, + "release_hash_id": { + "value": "hash-xyz789", + "type": "string", + "required": true + }, + "release_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + }, + "release_version": { + "value": "1.0.3", + "type": "string", + "required": true + }, + "team_identifier": { + "value": 42, + "type": "integer", + "required": true + }, + "update_id": { + "value": "update-007", + "type": "string", + "required": true + }, + "metadata_description": { + "value": "This release includes critical bug fixes and performance improvements.", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateErrorTrackingRules", + "qualifiedName": "PosthogApi.UpdateErrorTrackingRules", + "fullyQualifiedName": "PosthogApi.UpdateErrorTrackingRules@2.0.0", + "description": "Updates error tracking assignment rules for a project.\n\nUse this tool to update the assignment rules for error tracking in a specific project environment. This helps in managing how errors are assigned within a project.", + "parameters": [ + { + "name": "assignee_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the person to whom errors will be assigned. This can be a user ID or username within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "assignment_rule_id", + "type": "string", + "required": true, + "description": "A UUID string that identifies the error tracking assignment rule to update.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_id", + "type": "string", + "required": true, + "description": "The unique identifier for the environment whose error tracking rules are being updated.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_criteria", + "type": "string", + "required": true, + "description": "Specifies the filter criteria for updating error tracking assignment rules. This should be a string detailing the conditions used to filter the errors.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID to access. Retrieve it via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "update_order_key", + "type": "integer", + "required": true, + "description": "The order key for arranging assignment rules in a specified sequence. Provide an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "disable_error_data", + "type": "string", + "required": false, + "description": "Specify whether to disable error data for tracking rules. Accepts a string value indicating the disabled state.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_assignment_rules_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateErrorTrackingRules", + "parameters": { + "assignee_identifier": { + "value": "user_12345", + "type": "string", + "required": true + }, + "assignment_rule_id": { + "value": "e9b1f0c3-1cef-4b4e-bd4e-8c678a1f9883", + "type": "string", + "required": true + }, + "environment_id": { + "value": "env_001", + "type": "string", + "required": true + }, + "filter_criteria": { + "value": "error_type = 'CRITICAL' AND status = 'UNRESOLVED'", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_56789", + "type": "string", + "required": true + }, + "update_order_key": { + "value": 2, + "type": "integer", + "required": true + }, + "disable_error_data": { + "value": "false", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateErrorTrackingSuppressionRules", + "qualifiedName": "PosthogApi.UpdateErrorTrackingSuppressionRules", + "fullyQualifiedName": "PosthogApi.UpdateErrorTrackingSuppressionRules@2.0.0", + "description": "Update error tracking suppression rules for a project.\n\nCall this tool to update suppression rules for error tracking within a specific project environment on Datadog.", + "parameters": [ + { + "name": "filters", + "type": "string", + "required": true, + "description": "String criteria used to specify which errors to suppress. Format should align with Datadog's filtering syntax.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the project you want to access. Use the API call /api/projects/ to obtain this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "rule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the suppression rule to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the error tracking suppression rule.", + "enum": null, + "inferrable": true + }, + { + "name": "suppression_rule_order_key", + "type": "integer", + "required": true, + "description": "Specify the order key for the suppression rule. This determines its priority in execution.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_suppression_rules_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateErrorTrackingSuppressionRules", + "parameters": { + "filters": { + "value": "error.status:400 OR error.type:\"validation_error\"", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "rule_id": { + "value": "rule-001", + "type": "string", + "required": true + }, + "suppression_rule_id": { + "value": "a1b2c3d4-e5f6-7g8h-9i0j-k1l2m3n4o5p6", + "type": "string", + "required": true + }, + "suppression_rule_order_key": { + "value": 1, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateErrorTrackingSymbols", + "qualifiedName": "PosthogApi.UpdateErrorTrackingSymbols", + "fullyQualifiedName": "PosthogApi.UpdateErrorTrackingSymbols@2.0.0", + "description": "Update symbol sets for error tracking in a specific environment.\n\nUse this tool to update symbol sets for error tracking within a specified project environment. It should be called when you need to modify existing symbol set data in the Datadog environment.", + "parameters": [ + { + "name": "error_tracking_symbol_set_id", + "type": "string", + "required": true, + "description": "A UUID identifying the error tracking symbol set to update.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project you wish to access. Retrieve by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_error_tracking_symbol_sets_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateErrorTrackingSymbols", + "parameters": { + "error_tracking_symbol_set_id": { + "value": "a1b2c3d4-e5f6-7g8h-9i0j-k1l2m3n4o5p6", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project_xyz_123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEventDefinition", + "qualifiedName": "PosthogApi.UpdateEventDefinition", + "fullyQualifiedName": "PosthogApi.UpdateEventDefinition@2.0.0", + "description": "Update an existing event definition in a project.\n\nThis tool updates an existing event definition within a specified project. Call this tool when you need to modify the details of an event definition on Datadog.", + "parameters": [ + { + "name": "event_definition_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the event definition to update.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID of the project you're trying to access. Retrieve the ID by calling /api/projects/.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'event_definitions_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateEventDefinition", + "parameters": { + "event_definition_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": true + }, + "project_id": { + "value": "1234567890abcdef1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateExperiment", + "qualifiedName": "PosthogApi.UpdateExperiment", + "fullyQualifiedName": "PosthogApi.UpdateExperiment@2.0.0", + "description": "Update details of a specific experiment in a project.\n\n This tool updates the settings or details of an existing experiment within a specified project on Datadog. It is triggered when a user needs to change experiment parameters or information.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "experiment_id", + "type": "integer", + "required": false, + "description": "A unique integer that identifies the experiment to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique string ID of the project to be accessed. Retrieve by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiments_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateExperiment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "experiment_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_abc", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Experiment 1\", \"status\": \"active\", \"variations\": [{\"name\": \"Variation A\"}, {\"name\": \"Variation B\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateExperimentDetails", + "qualifiedName": "PosthogApi.UpdateExperimentDetails", + "fullyQualifiedName": "PosthogApi.UpdateExperimentDetails@2.0.0", + "description": "Partially update experiment details in a project.\n\n Use this tool to update specific details of an experiment within a project. Provide the project ID and the experiment ID to apply partial updates.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "experiment_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying the experiment to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Provide the ID of the project you want to access. Use the /api/projects/ endpoint to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiments_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateExperimentDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "experiment_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Experiment Name\", \"status\": \"paused\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateExperimentHoldout", + "qualifiedName": "PosthogApi.UpdateExperimentHoldout", + "fullyQualifiedName": "PosthogApi.UpdateExperimentHoldout@2.0.0", + "description": "Update an experiment holdout in a specific project.\n\n Use this tool to modify the details of an existing experiment holdout in a project. This action is performed within the Datadog platform using a specific project and holdout ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "experiment_holdout_id", + "type": "integer", + "required": false, + "description": "Unique integer identifying the specific experiment holdout to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access for updating the experiment holdout. Retrieve this by calling the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiment_holdouts_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateExperimentHoldout", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "experiment_holdout_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Holdout\",\"percentage\":30}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateExperimentMetrics", + "qualifiedName": "PosthogApi.UpdateExperimentMetrics", + "fullyQualifiedName": "PosthogApi.UpdateExperimentMetrics@2.0.0", + "description": "Update saved metrics for a specific experiment.\n\n This tool updates specific saved metrics for an experiment within a given project. Use this tool when you need to modify the details of already saved metrics for an experiment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "experiment_metric_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the experiment saved metric to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. Obtain it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiment_saved_metrics_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateExperimentMetrics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "experiment_metric_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project-abc", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"metric\":\"new_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateExperimentSavedMetrics", + "qualifiedName": "PosthogApi.UpdateExperimentSavedMetrics", + "fullyQualifiedName": "PosthogApi.UpdateExperimentSavedMetrics@2.0.0", + "description": "Update saved metrics for a specific experiment in Datadog.\n\n Use this tool to update the saved metrics for a specific experiment in a Datadog project. It requires the project ID and metric ID to identify the correct records to update.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "experiment_metric_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the specific experiment saved metric to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the Datadog project containing the experiment whose metrics you wish to update. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'experiment_saved_metrics_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateExperimentSavedMetrics", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "experiment_metric_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "project-67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"metric\":\"conversion_rate\",\"value\":0.75}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateFeatureFlags", + "qualifiedName": "PosthogApi.UpdateFeatureFlags", + "fullyQualifiedName": "PosthogApi.UpdateFeatureFlags@2.0.0", + "description": "Update feature flags for a specific project.\n\n Use this tool to update existing feature flags within a specified project in Datadog. This is useful for modifying feature settings without requiring a full create or delete operation.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "feature_flag_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying the specific feature flag to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the project to access. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'feature_flags_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateFeatureFlags", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "feature_flag_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "my_project_001", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"active\": true, \"description\": \"Enable new feature\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateFileSystem", + "qualifiedName": "PosthogApi.UpdateFileSystem", + "fullyQualifiedName": "PosthogApi.UpdateFileSystem@2.0.0", + "description": "Updates a file system in a specific project by ID.\n\n Call this tool to update the settings or data of a specific file system within a given project on Datadog. Use it when modifications to the file system are needed, such as changing configurations or data structures.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "file_system_id", + "type": "string", + "required": false, + "description": "A UUID string uniquely identifying the file system to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The identifier for the project you want to access. Use the project ID to specify which project's file system to update. Retrieve the ID by calling the /api/projects/ endpoint if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateFileSystem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "file_system_id": { + "value": "6fa459ea-ee8a-486c-a011-11d1b14a2f25", + "type": "string", + "required": false + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"config\": \"updated-config\", \"data\": \"new-data\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateFileSystemShortcut", + "qualifiedName": "PosthogApi.UpdateFileSystemShortcut", + "fullyQualifiedName": "PosthogApi.UpdateFileSystemShortcut@2.0.0", + "description": "Update a file system shortcut in a project.\n\nUse this tool to modify the details of an existing file system shortcut within a specified project on Datadog. Useful for adjusting configurations or updating linked resources.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Retrieve it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "file_system_shortcut_id", + "type": "string", + "required": false, + "description": "A UUID identifying the file system shortcut to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "file_system_shortcut_link", + "type": "string", + "required": false, + "description": "The URL or path to link the file system shortcut to. This should be a valid URL or path, depending on the system configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "reference_identifier", + "type": "string", + "required": false, + "description": "The reference identifier for the file system shortcut to be updated. This is a string value required to specify which shortcut you are targeting for the update.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_creation_date", + "type": "string", + "required": false, + "description": "ISO 8601 format string representing when the shortcut was created.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_id", + "type": "string", + "required": false, + "description": "The unique identifier for the file system shortcut to be updated. This ID specifies which shortcut will have its details modified.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_path", + "type": "string", + "required": false, + "description": "The file path for the shortcut to be updated. This should specify the exact location within the file system where the shortcut is located.", + "enum": null, + "inferrable": true + }, + { + "name": "shortcut_type", + "type": "string", + "required": false, + "description": "Specify the type of the file system shortcut, such as 'symbolic' or 'hard'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'file_system_shortcut_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateFileSystemShortcut", + "parameters": { + "project_id": { + "value": "1234-abcd-5678-efgh", + "type": "string", + "required": true + }, + "file_system_shortcut_id": { + "value": "9a8b7c6d-e5f4-3g2h-1i0j-k9l8m7n6o5p4", + "type": "string", + "required": false + }, + "file_system_shortcut_link": { + "value": "https://example.com/shortcut", + "type": "string", + "required": false + }, + "reference_identifier": { + "value": "shortcut-2023-10", + "type": "string", + "required": false + }, + "shortcut_creation_date": { + "value": "2023-10-05T14:30:00Z", + "type": "string", + "required": false + }, + "shortcut_id": { + "value": "00000000-0000-0000-0000-000000000001", + "type": "string", + "required": false + }, + "shortcut_path": { + "value": "/user/shortcuts/my_shortcut", + "type": "string", + "required": false + }, + "shortcut_type": { + "value": "symbolic", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateFolderInfo", + "qualifiedName": "PosthogApi.UpdateFolderInfo", + "fullyQualifiedName": "PosthogApi.UpdateFolderInfo@2.0.0", + "description": "Update a persisted folder's metadata in Datadog.\n\nThis tool updates the metadata of a specific persisted folder in a Datadog project. It should be called when you need to modify information about an existing persisted folder, such as its name or description.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the Datadog project you want to access. Make a call to /api/projects/ to find it.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_creation_date", + "type": "string", + "required": false, + "description": "The date when the folder was created, expected in a string format (e.g., YYYY-MM-DD).", + "enum": null, + "inferrable": true + }, + { + "name": "folder_id", + "type": "string", + "required": false, + "description": "The unique identifier of the persisted folder to update.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_path", + "type": "string", + "required": false, + "description": "The path to the persisted folder to update in Datadog. This specifies the location or hierarchy within the project where the folder resides.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_type", + "type": "string", + "required": false, + "description": "Specify the type of the folder. Options are 'home' for Home or 'pinned' for Pinned.", + "enum": null, + "inferrable": true + }, + { + "name": "persisted_folder_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the persisted folder to update.", + "enum": null, + "inferrable": true + }, + { + "name": "protocol_type", + "type": "string", + "required": false, + "description": "Specify the protocol type for the persisted folder metadata. This is typically a string indicating the protocol used.", + "enum": null, + "inferrable": true + }, + { + "name": "update_timestamp", + "type": "string", + "required": false, + "description": "Timestamp indicating when the persisted folder was last updated. Use ISO 8601 format.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persisted_folder_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateFolderInfo", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + }, + "folder_creation_date": { + "value": "2023-01-15", + "type": "string", + "required": false + }, + "folder_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "folder_path": { + "value": "/path/to/folder", + "type": "string", + "required": false + }, + "folder_type": { + "value": "home", + "type": "string", + "required": false + }, + "persisted_folder_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "protocol_type": { + "value": "https", + "type": "string", + "required": false + }, + "update_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateGroupDashboard", + "qualifiedName": "PosthogApi.UpdateGroupDashboard", + "fullyQualifiedName": "PosthogApi.UpdateGroupDashboard@2.0.0", + "description": "Update a project's group detail dashboard.\n\n Use this tool to update the configuration of a group detail dashboard within a specific project. Ideal for modifying existing dashboard settings.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The string representing the Project ID you want to access. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_types_create_detail_dashboard_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateGroupDashboard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"dashboard_id\": \"dashboard_67890\", \"settings\": {\"theme\": \"dark\", \"widgets\": [{\"type\": \"chart\", \"title\": \"User Growth\"}]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateGroupProperty", + "qualifiedName": "PosthogApi.UpdateGroupProperty", + "fullyQualifiedName": "PosthogApi.UpdateGroupProperty@2.0.0", + "description": "Update a property of a group within a project.\n\nThis tool updates a specific property of a group in a given project. Use it when you need to modify group settings or attributes within a project on the Datadog platform.", + "parameters": [ + { + "name": "group_identifier", + "type": "string", + "required": true, + "description": "Specify the unique key of the group to locate and update within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "group_identifier_key", + "type": "string", + "required": true, + "description": "The unique key identifying the group to update. This key ensures that the correct group is modified.", + "enum": null, + "inferrable": true + }, + { + "name": "group_property_creation_date", + "type": "string", + "required": true, + "description": "The date and time when the group property was created. Use ISO 8601 format, e.g., '2023-10-05T14:48:00Z'.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_index", + "type": "integer", + "required": true, + "description": "Specify the integer index of the group type to identify the group.", + "enum": null, + "inferrable": true + }, + { + "name": "index_of_group_type", + "type": "integer", + "required": true, + "description": "An integer representing the index of the group type to update. Specify the correct index to modify the desired group type within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to access. Retrieve it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "group_properties_value", + "type": "string", + "required": false, + "description": "The properties or attributes to update for the specified group in the project. This should be a string describing the desired changes.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_update_property_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateGroupProperty", + "parameters": { + "group_identifier": { + "value": "group_12345", + "type": "string", + "required": true + }, + "group_identifier_key": { + "value": "identifier_key_1", + "type": "string", + "required": true + }, + "group_property_creation_date": { + "value": "2023-10-05T14:48:00Z", + "type": "string", + "required": true + }, + "group_type_index": { + "value": 2, + "type": "integer", + "required": true + }, + "index_of_group_type": { + "value": 1, + "type": "integer", + "required": true + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": true + }, + "group_properties_value": { + "value": "Updated property value", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateGroupTypeMetadata", + "qualifiedName": "PosthogApi.UpdateGroupTypeMetadata", + "fullyQualifiedName": "PosthogApi.UpdateGroupTypeMetadata@2.0.0", + "description": "Updates metadata for group types in a project.\n\nUse this tool to update the metadata for group types within a specific project. It should be called when there's a need to partially update this information for better organization and management of project data.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Project ID to access a specific project. Use /api/projects/ to find the ID.", + "enum": null, + "inferrable": true + }, + { + "name": "default_columns", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings representing the default columns for the group type metadata. Each string specifies a column name to be included by default.", + "enum": null, + "inferrable": true + }, + { + "name": "detail_dashboard_id", + "type": "integer", + "required": false, + "description": "The integer ID of the detail dashboard associated with the group type.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_creation_date", + "type": "string", + "required": false, + "description": "The creation date of the group type in ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ).", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_identifier", + "type": "string", + "required": false, + "description": "The identifier for the group type to update metadata for. Provide a unique string value that represents the group type within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_index", + "type": "integer", + "required": false, + "description": "An integer representing the index of the group type you want to update within the project. It identifies which specific group type's metadata is to be modified.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_name_plural", + "type": "string", + "required": false, + "description": "The plural name for the group type to be updated. This should reflect the plural form used in the project metadata.", + "enum": null, + "inferrable": true + }, + { + "name": "singular_group_name", + "type": "string", + "required": false, + "description": "The singular name to be used for a specific group type. This is used for clear identification and communication.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_types_update_metadata_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateGroupTypeMetadata", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "default_columns": { + "value": ["name", "email", "signup_date"], + "type": "array", + "required": false + }, + "detail_dashboard_id": { + "value": 678, + "type": "integer", + "required": false + }, + "group_type_creation_date": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "group_type_identifier": { + "value": "user_group", + "type": "string", + "required": false + }, + "group_type_index": { + "value": 2, + "type": "integer", + "required": false + }, + "group_type_name_plural": { + "value": "Users", + "type": "string", + "required": false + }, + "singular_group_name": { + "value": "User", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateGroupTypeMetrics", + "qualifiedName": "PosthogApi.UpdateGroupTypeMetrics", + "fullyQualifiedName": "PosthogApi.UpdateGroupTypeMetrics@2.0.0", + "description": "Updates metrics for a specified group type in a project.\n\nThis tool updates the metrics for a given group type in a specified project. It should be called when there's a need to modify or update the metrics associated with a group type. Useful for maintaining or adjusting project metric configurations.", + "parameters": [ + { + "name": "filters_criteria", + "type": "string", + "required": true, + "description": "Specify criteria to filter metrics data. Use a string representation of conditions.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_index", + "type": "integer", + "required": true, + "description": "An integer representing the index of the group type to be updated. This is required to identify which group type's metrics need modification.", + "enum": null, + "inferrable": true + }, + { + "name": "group_usage_metric_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the group usage metric to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_id", + "type": "string", + "required": true, + "description": "Unique identifier for the metric to be updated. Expect a string value.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_name", + "type": "string", + "required": true, + "description": "The name of the metric to update for the specified group type in a project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to access. Use /api/projects/ to find it.", + "enum": null, + "inferrable": true + }, + { + "name": "interval_in_days", + "type": "integer", + "required": false, + "description": "Specify the interval in days for updating metrics.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_display_type", + "type": "string", + "required": false, + "description": "Defines how the metrics are displayed. Options are 'number' or 'sparkline'.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_format_type", + "type": "string", + "required": false, + "description": "Specifies the display format of the metric: 'numeric' for numeric values or 'currency' for currency representation.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_types_metrics_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateGroupTypeMetrics", + "parameters": { + "filters_criteria": { + "value": "event = 'signup' AND region = 'US'", + "type": "string", + "required": true + }, + "group_type_index": { + "value": 1, + "type": "integer", + "required": true + }, + "group_usage_metric_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "metric_id": { + "value": "metric_001", + "type": "string", + "required": true + }, + "metric_name": { + "value": "User Signups", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_12345", + "type": "string", + "required": true + }, + "interval_in_days": { + "value": 30, + "type": "integer", + "required": false + }, + "metric_display_type": { + "value": "number", + "type": "string", + "required": false + }, + "metric_format_type": { + "value": "numeric", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateHogfunctionOrder", + "qualifiedName": "PosthogApi.UpdateHogfunctionOrder", + "fullyQualifiedName": "PosthogApi.UpdateHogfunctionOrder@2.0.0", + "description": "Modify the order of execution for HogFunctions.\n\n Use this tool to update the execution order of multiple HogFunctions within a specified project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "ID of the project to access. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hog_functions_rearrange_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateHogfunctionOrder", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"functions_order\": [\"functionA\", \"functionB\", \"functionC\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateHogFunctions", + "qualifiedName": "PosthogApi.UpdateHogFunctions", + "fullyQualifiedName": "PosthogApi.UpdateHogFunctions@2.0.0", + "description": "Update and log views of file system resources.\n\n This tool updates hog functions for a given project and logs each GET request as a new view. Use this tool to track changes and log views on file system resources within specified environments.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "hog_function_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying this hog function to update and log views. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Retrieve it using a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_hog_functions_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateHogFunctions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "hog_function_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"views\": [{\"resource\": \"filesystem\", \"action\": \"update\", \"timestamp\": \"2023-10-01T12:00:00Z\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateHogFunctionsOrder", + "qualifiedName": "PosthogApi.UpdateHogFunctionsOrder", + "fullyQualifiedName": "PosthogApi.UpdateHogFunctionsOrder@2.0.0", + "description": "Update the execution order of HogFunctions.\n\n Use this tool to change the sequence in which multiple HogFunctions are executed within a project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project whose HogFunctions you want to rearrange. Use /api/projects/ to find it. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_hog_functions_rearrange_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateHogFunctionsOrder", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"functions_order\": [\"function_a\", \"function_b\", \"function_c\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateHogFunctionViewLog", + "qualifiedName": "PosthogApi.UpdateHogFunctionViewLog", + "fullyQualifiedName": "PosthogApi.UpdateHogFunctionViewLog@2.0.0", + "description": "Log a new view for an environment's hog function.\n\n Use this tool to track and log a new view on a specified hog function in Datadog environments. It should be called whenever a GET request to the resource logs a new view.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "hog_function_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the hog function to log a view for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_hog_functions_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateHogFunctionViewLog", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "hog_function_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"viewedAt\":\"2023-10-05T14:48:00Z\",\"userId\":\"user-abc\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateHogFunctionViews", + "qualifiedName": "PosthogApi.UpdateHogFunctionViews", + "fullyQualifiedName": "PosthogApi.UpdateHogFunctionViews@2.0.0", + "description": "Log and update views for hog functions in a project.\n\n Use this tool to log a new view of a specific hog function within a given project. It tracks file system views by logging each access to the resource.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "hog_function_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the hog function to log a view for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique ID of the project. Retrieve by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hog_functions_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateHogFunctionViews", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "hog_function_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "project_001", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"viewed_at\":\"2023-10-05T12:00:00Z\",\"user_id\":\"user_123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateInsights", + "qualifiedName": "PosthogApi.UpdateInsights", + "fullyQualifiedName": "PosthogApi.UpdateInsights@2.0.0", + "description": "Update insights tracking view for a project resource.\n\n Use this tool to log a new view of a specific insight within a project, helping track file system views. It updates the view count each time it's called.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "insight_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the insight to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specify the format of the response data. Accepts 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateInsights", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "insight_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_id": { + "value": "project_456", + "type": "string", + "required": false + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"viewCount\": 1}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateInsightsViewLog", + "qualifiedName": "PosthogApi.UpdateInsightsViewLog", + "fullyQualifiedName": "PosthogApi.UpdateInsightsViewLog@2.0.0", + "description": "Log a new view for a specific insight resource.\n\n This tool triggers a log entry each time a specific insight resource is accessed, helping to track file system views.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "insight_id", + "type": "integer", + "required": false, + "description": "A unique integer value to identify the specific insight. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID to access the required insight. Obtainable via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the response. Acceptable values are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'insights_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateInsightsViewLog", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "insight_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_id": { + "value": "project_456", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"viewed_at\": \"2023-10-01T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateInsightViewTimestamps", + "qualifiedName": "PosthogApi.UpdateInsightViewTimestamps", + "fullyQualifiedName": "PosthogApi.UpdateInsightViewTimestamps@2.0.0", + "description": "Updates the view timestamps for specific insights.\n\n Use this tool to update the view timestamps for a list of insights identified by their IDs. This is useful for keeping track of which insights have been recently viewed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project ID to access. Retrieve this ID using the /api/projects/ endpoint if needed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specifies the format of the returned data. Options are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_insights_viewed_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateInsightViewTimestamps", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"insight_ids\":[\"insight_1\",\"insight_2\"],\"view_timestamp\":\"2023-10-03T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateMetricsForGroupType", + "qualifiedName": "PosthogApi.UpdateMetricsForGroupType", + "fullyQualifiedName": "PosthogApi.UpdateMetricsForGroupType@2.0.0", + "description": "Update metrics for a specific group type in a project.\n\nThis tool updates metrics for a specified group type within a project in Datadog. It should be called when metrics need to be modified or adjusted for a particular group type associated with a project.", + "parameters": [ + { + "name": "group_type_position", + "type": "integer", + "required": true, + "description": "The index of the group type to update within the metrics. It should be an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project you want to access. Retrieve it by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_conditions", + "type": "string", + "required": false, + "description": "Conditions to filter the metrics. Specify as a string, e.g., 'status:active'.", + "enum": null, + "inferrable": true + }, + { + "name": "group_metric_name", + "type": "string", + "required": false, + "description": "The name of the metric to update for the specified group type.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type_id", + "type": "string", + "required": false, + "description": "The unique identifier for the group type to update metrics for.", + "enum": null, + "inferrable": true + }, + { + "name": "group_usage_metric_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the group usage metric to update.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_display_type", + "type": "string", + "required": false, + "description": "Defines how the metric should be displayed: 'number' or 'sparkline'.", + "enum": null, + "inferrable": true + }, + { + "name": "metric_format_type", + "type": "string", + "required": false, + "description": "Specifies the format of the metric. Can be 'numeric' or 'currency'. Choose 'numeric' for plain numbers and 'currency' for currency representation.", + "enum": null, + "inferrable": true + }, + { + "name": "update_interval_days", + "type": "integer", + "required": false, + "description": "Number of days to set as the interval for updating metrics.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'groups_types_metrics_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateMetricsForGroupType", + "parameters": { + "group_type_position": { + "value": 1, + "type": "integer", + "required": true + }, + "project_id": { + "value": "proj_12345", + "type": "string", + "required": true + }, + "filter_conditions": { + "value": "status:active", + "type": "string", + "required": false + }, + "group_metric_name": { + "value": "conversion_rate", + "type": "string", + "required": false + }, + "group_type_id": { + "value": "group_abc", + "type": "string", + "required": false + }, + "group_usage_metric_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "metric_display_type": { + "value": "number", + "type": "string", + "required": false + }, + "metric_format_type": { + "value": "numeric", + "type": "string", + "required": false + }, + "update_interval_days": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateNotebook", + "qualifiedName": "PosthogApi.UpdateNotebook", + "fullyQualifiedName": "PosthogApi.UpdateNotebook@2.0.0", + "description": "Update a specific notebook's details.\n\n Use this tool to update the details of a specific notebook identified by its project and notebook IDs. Suitable for modifying existing notebook content or configuration.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you are accessing. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "notebook_short_id", + "type": "string", + "required": false, + "description": "Provide the unique short ID of the notebook to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'notebooks_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateNotebook", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "notebook_short_id": { + "value": "abcde", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Notebook Title\",\"content\":\"This is the updated content of the notebook.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateNotebookDetails", + "qualifiedName": "PosthogApi.UpdateNotebookDetails", + "fullyQualifiedName": "PosthogApi.UpdateNotebookDetails@2.0.0", + "description": "Update notebook details in a specified project.\n\n Use this tool to modify specific attributes of a notebook within a project in Datadog. This functionality is in early access and may change.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "target_project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Use /api/projects/ to find the project ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "notebook_short_id", + "type": "string", + "required": false, + "description": "The unique short identifier for the notebook to be updated. This ID is required to specify which notebook to modify within the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'notebooks_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateNotebookDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "target_project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "notebook_short_id": { + "value": "notebook-67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Notebook Title\", \"description\": \"New description for the notebook.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOrganizationDetails", + "qualifiedName": "PosthogApi.UpdateOrganizationDetails", + "fullyQualifiedName": "PosthogApi.UpdateOrganizationDetails@2.0.0", + "description": "Update details for a specific organization.\n\n Use this tool to change information about an existing organization in the system by providing its ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the organization to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateOrganizationDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Organization Name\", \"description\": \"Updated description for the organization\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOrganizationDomain", + "qualifiedName": "PosthogApi.UpdateOrganizationDomain", + "fullyQualifiedName": "PosthogApi.UpdateOrganizationDomain@2.0.0", + "description": "Update an organization's domain using Datadog's API.\n\n Call this tool to update the domain details of a specific organization in Datadog. Use it when domain information needs to be modified.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "domain_uuid", + "type": "string", + "required": false, + "description": "The UUID string identifying the domain to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "The unique identifier for the organization whose domain needs to be updated. This should be a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "webhook_secret" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'domains_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateOrganizationDomain", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "domain_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "organization_id": { + "value": "org-98765", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"new_domain\": \"example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOrganizationInfo", + "qualifiedName": "PosthogApi.UpdateOrganizationInfo", + "fullyQualifiedName": "PosthogApi.UpdateOrganizationInfo@2.0.0", + "description": "Partially update organization information.\n\n Use this tool to partially update details of an organization by providing the organization ID and the necessary changes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the organization to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateOrganizationInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"New Organization Name\", \"email\": \"contact@neworg.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOrganizationMember", + "qualifiedName": "PosthogApi.UpdateOrganizationMember", + "fullyQualifiedName": "PosthogApi.UpdateOrganizationMember@2.0.0", + "description": "Update a member's information in an organization.\n\n Use this tool to update a member's information within a specified organization on Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "A string representing the unique identifier of the organization in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_uuid", + "type": "string", + "required": false, + "description": "The unique identifier (UUID) of the user to be updated in the organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'members_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateOrganizationMember", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_identifier": { + "value": "org-12345", + "type": "string", + "required": false + }, + "user_uuid": { + "value": "user-67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"role\": \"admin\", \"status\": \"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOrganizationMemberDetails", + "qualifiedName": "PosthogApi.UpdateOrganizationMemberDetails", + "fullyQualifiedName": "PosthogApi.UpdateOrganizationMemberDetails@2.0.0", + "description": "Update details of an organization member in Datadog.\n\n Use this tool to partially update the information of a member within an organization on Datadog. This should be called when changes to a member's profile or permissions are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the organization in Datadog. This is required to specify which organization's member is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "member_user_uuid", + "type": "string", + "required": false, + "description": "The unique user UUID of the organization member to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'members_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateOrganizationMemberDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "organization_identifier": { + "value": "org-12345", + "type": "string", + "required": false + }, + "member_user_uuid": { + "value": "user-67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"role\": \"admin\", \"status\": \"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOrganizationProject", + "qualifiedName": "PosthogApi.UpdateOrganizationProject", + "fullyQualifiedName": "PosthogApi.UpdateOrganizationProject@2.0.0", + "description": "Update a project's details within an organization.\n\n Use this tool to update specific details of a project within the current organization by providing the organization and project IDs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying the project to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "A string representing the identifier of the organization. Required to update the project details. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'partial_update_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateOrganizationProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": 123, + "type": "integer", + "required": false + }, + "organization_identifier": { + "value": "org-xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Project Name\",\"description\":\"This is an updated description for the project.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOrganizationRole", + "qualifiedName": "PosthogApi.UpdateOrganizationRole", + "fullyQualifiedName": "PosthogApi.UpdateOrganizationRole@2.0.0", + "description": "Update an organization's role details.\n\n Use this tool to update the details of a specific role within an organization, such as permissions and role information.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "role_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the role to be updated in the organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "A unique identifier for the organization where the role will be updated. This is a required parameter. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'roles_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateOrganizationRole", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "role_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "organization_id": { + "value": "org_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"permissions\": [\"view_data\", \"edit_settings\"], \"role_name\": \"Data Analyst\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdatePersistedFolder", + "qualifiedName": "PosthogApi.UpdatePersistedFolder", + "fullyQualifiedName": "PosthogApi.UpdatePersistedFolder@2.0.0", + "description": "Update details of a persisted folder in a project.\n\nUse this tool to update the details of a persisted folder within a specified project using the project and folder IDs.", + "parameters": [ + { + "name": "folder_creation_date", + "type": "string", + "required": true, + "description": "The date when the folder was originally created, in string format. Use this to specify the creation timestamp for folder updates.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_id", + "type": "string", + "required": true, + "description": "The unique identifier of the folder to update within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_type", + "type": "string", + "required": true, + "description": "Specify the folder type: 'home' for Home or 'pinned' for Pinned.", + "enum": null, + "inferrable": true + }, + { + "name": "persisted_folder_id", + "type": "string", + "required": true, + "description": "A UUID string identifying the persisted folder to update.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve using /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "update_timestamp", + "type": "string", + "required": true, + "description": "Provide the timestamp when the folder was last updated. Use ISO 8601 format (e.g., '2023-10-01T12:34:56Z').", + "enum": null, + "inferrable": true + }, + { + "name": "folder_path", + "type": "string", + "required": false, + "description": "Specify the path where the persisted folder is located within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "update_protocol", + "type": "string", + "required": false, + "description": "Specify the protocol for the folder update. This value should be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persisted_folder_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdatePersistedFolder", + "parameters": { + "folder_creation_date": { + "value": "2023-01-15T09:00:00Z", + "type": "string", + "required": true + }, + "folder_id": { + "value": "folder_12345", + "type": "string", + "required": true + }, + "folder_type": { + "value": "home", + "type": "string", + "required": true + }, + "persisted_folder_id": { + "value": "8c9e3f4d-abb4-4c5e-bc38-78888d5c845a", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": true + }, + "update_timestamp": { + "value": "2023-10-01T15:45:00Z", + "type": "string", + "required": true + }, + "folder_path": { + "value": "/home/user/documents", + "type": "string", + "required": false + }, + "update_protocol": { + "value": "https", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdatePersonInfo", + "qualifiedName": "PosthogApi.UpdatePersonInfo", + "fullyQualifiedName": "PosthogApi.UpdatePersonInfo@2.0.0", + "description": "Update person details using partial data.\n\nThis tool updates specific attributes of a person's data within a project. Ideal for modifying user properties via the PATCH method.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Project ID for accessing the intended project. Obtain by calling /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "creation_timestamp", + "type": "string", + "required": false, + "description": "The timestamp when the person data was initially created, in ISO 8601 format (e.g., '2023-10-05T14:48:00.000Z').", + "enum": null, + "inferrable": true + }, + { + "name": "person_distinct_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of unique identifiers for the person whose data is being updated. These identifiers help to distinguish between different users.", + "enum": null, + "inferrable": true + }, + { + "name": "person_id", + "type": "integer", + "required": false, + "description": "The identifier of the person whose information is being updated. It should be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "person_identifier", + "type": "integer", + "required": false, + "description": "A unique integer identifying the person to update.", + "enum": null, + "inferrable": true + }, + { + "name": "person_name", + "type": "string", + "required": false, + "description": "The name of the person whose details are being updated. This should be a string representing the person's full name.", + "enum": null, + "inferrable": true + }, + { + "name": "person_properties", + "type": "string", + "required": false, + "description": "Stringified JSON containing specific person properties to update.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "The format of the response. Options are 'csv' or 'json'.", + "enum": null, + "inferrable": true + }, + { + "name": "user_uuid", + "type": "string", + "required": false, + "description": "The unique identifier for the person to be updated. Must be a valid UUID string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'persons_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdatePersonInfo", + "parameters": { + "project_id": { + "value": "proj_12345", + "type": "string", + "required": true + }, + "creation_timestamp": { + "value": "2023-10-01T14:30:00.000Z", + "type": "string", + "required": false + }, + "person_distinct_ids": { + "value": ["distinct_id_1", "distinct_id_2"], + "type": "array", + "required": false + }, + "person_id": { + "value": 101, + "type": "integer", + "required": false + }, + "person_identifier": { + "value": 202, + "type": "integer", + "required": false + }, + "person_name": { + "value": "John Doe", + "type": "string", + "required": false + }, + "person_properties": { + "value": "{\"email\":\"john.doe@example.com\",\"age\":30}", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "user_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdatePersonProperties", + "qualifiedName": "PosthogApi.UpdatePersonProperties", + "fullyQualifiedName": "PosthogApi.UpdatePersonProperties@2.0.0", + "description": "Update specific properties of a person in a project.\n\n Use this tool to update certain properties of a person within a project environment. It allows you to set only the specified properties without affecting others. To remove properties, use a different endpoint.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "person_id", + "type": "integer", + "required": false, + "description": "A unique integer identifier for the person whose properties are to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve using /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "response_format", + "type": "string", + "required": false, + "description": "Specify the format for the endpoint response. Choose between 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdatePersonProperties", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "person_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "project_67890", + "type": "string", + "required": false + }, + "response_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdatePersonProperty", + "qualifiedName": "PosthogApi.UpdatePersonProperty", + "fullyQualifiedName": "PosthogApi.UpdatePersonProperty@2.0.0", + "description": "Update a specific property for a person in an environment.\n\n Use this tool to update a property for a person within a specified project environment. Ideal for when adjustments to a person's attributes are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "property_key", + "type": "string", + "required": false, + "description": "The key of the property you want to update for a person. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "property_value", + "type": "string", + "required": false, + "description": "Specify the value for the property to update for a person. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "person_identifier", + "type": "integer", + "required": false, + "description": "Unique identifier for the person. Use an integer value to specify the person whose property you wish to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Specify the ID of the project you wish to access. Retrieve the project ID via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "The format in which the response is returned. Choose either 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_persons_update_property_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdatePersonProperty", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "property_key": { + "value": "email", + "type": "string", + "required": false + }, + "property_value": { + "value": "john.doe@example.com", + "type": "string", + "required": false + }, + "person_identifier": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_67890", + "type": "string", + "required": false + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\": \"john.doe@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProjectAction", + "qualifiedName": "PosthogApi.UpdateProjectAction", + "fullyQualifiedName": "PosthogApi.UpdateProjectAction@2.0.0", + "description": "Update and track views for a project action in Datadog.\n\n Use this tool to update details of a specific action within a project in Datadog and log a new view of the resource.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "action_id", + "type": "integer", + "required": false, + "description": "The unique integer to identify the action within the project for updating. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "ID of the project to access. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "output_format", + "type": "string", + "required": false, + "description": "Specifies the format of the data response. Options are 'csv' or 'json'. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'actions_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateProjectAction", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "action_id": { + "value": 123, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_456", + "type": "string", + "required": false + }, + "output_format": { + "value": "json", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Action\", \"description\": \"This action has been updated.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProjectDetails", + "qualifiedName": "PosthogApi.UpdateProjectDetails", + "fullyQualifiedName": "PosthogApi.UpdateProjectDetails@2.0.0", + "description": "Update project details for the current organization.\n\n This tool updates the project details for a specified organization. It should be called when modifications to an organization's project data are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the project to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "A unique string identifying the organization whose project details are to be updated. Required for specifying the target organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update_2'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateProjectDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "organization_identifier": { + "value": "org_98765", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Project Name\",\"description\":\"This project has been updated.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProjectEnvironment", + "qualifiedName": "PosthogApi.UpdateProjectEnvironment", + "fullyQualifiedName": "PosthogApi.UpdateProjectEnvironment@2.0.0", + "description": "Update product intent for a project environment.\n\n Use this tool to update or modify the product intent for a specific environment within a project in the current organization.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "environment_identifier", + "type": "integer", + "required": false, + "description": "A unique integer that identifies the environment or team. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to be accessed. Obtainable via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_add_product_intent_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateProjectEnvironment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "environment_identifier": { + "value": 1, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"product_intent\":\"Enhance user engagement\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProjectOnboardingStatus", + "qualifiedName": "PosthogApi.UpdateProjectOnboardingStatus", + "fullyQualifiedName": "PosthogApi.UpdateProjectOnboardingStatus@2.0.0", + "description": "Update the onboarding status of a project in an organization.\n\n This tool updates the onboarding status of a specific project within the current organization. It should be called when there's a need to mark the completion or update the progress of a project's onboarding process.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the specific project to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "A string representing the unique ID of the organization to update the project onboarding status within. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'complete_product_onboarding_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateProjectOnboardingStatus", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": 123, + "type": "integer", + "required": false + }, + "organization_identifier": { + "value": "org_456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"completed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProjectProductIntent", + "qualifiedName": "PosthogApi.UpdateProjectProductIntent", + "fullyQualifiedName": "PosthogApi.UpdateProjectProductIntent@2.0.0", + "description": "Update product intent for a specific project in an organization.\n\n This tool is used to partially update the product intent of a specific project within an organization. It is useful for making adjustments or corrections to product intent assignments in organizational projects.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying the project to update within the organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the organization. Provide this to specify which organization's project is being updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'add_product_intent_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateProjectProductIntent", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": 123, + "type": "integer", + "required": false + }, + "organization_identifier": { + "value": "org-456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"intent\":\"update_product_intent\",\"details\":\"Adjustments to the product positioning\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProjectTask", + "qualifiedName": "PosthogApi.UpdateProjectTask", + "fullyQualifiedName": "PosthogApi.UpdateProjectTask@2.0.0", + "description": "Update task details within a project.\n\n Use this tool to update the details of a specific task within a project. It's useful for modifying task attributes to reflect changes in work requirements or progress.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "task_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the task to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project being accessed. Use /api/projects/ to find project IDs. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tasks_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateProjectTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "task_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project-abc-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\": \"in_progress\", \"assignee\": \"john_doe\", \"priority\": \"high\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdatePropertyDefinition", + "qualifiedName": "PosthogApi.UpdatePropertyDefinition", + "fullyQualifiedName": "PosthogApi.UpdatePropertyDefinition@2.0.0", + "description": "Update partial property definition details.\n\n Use this tool to update specific details of a property definition for a given project. It should be called when you need to modify existing property information without altering the entire dataset.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "property_definition_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the property definition to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve it via /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'property_definitions_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdatePropertyDefinition", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "property_definition_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"updated_property\", \"type\": \"string\", \"description\": \"Updated property description\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdatePropertyDefinitions", + "qualifiedName": "PosthogApi.UpdatePropertyDefinitions", + "fullyQualifiedName": "PosthogApi.UpdatePropertyDefinitions@2.0.0", + "description": "Update property definitions for a specific project.\n\n Call this tool to update the property definitions of a specified project in your Datadog account.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "property_definition_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the specific property definition to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID to access specific project details in Datadog. Call /api/projects/ to find it. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'property_definitions_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdatePropertyDefinitions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "property_definition_id": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "project_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"property_name\": \"new_property_name\", \"property_type\": \"string\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProxyRecord", + "qualifiedName": "PosthogApi.UpdateProxyRecord", + "fullyQualifiedName": "PosthogApi.UpdateProxyRecord@2.0.0", + "description": "Update a proxy record within an organization.\n\n Use this tool to update details of a specific proxy record for a given organization in Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "proxy_record_id", + "type": "string", + "required": false, + "description": "The unique identifier for the proxy record to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "A unique identifier for the organization whose proxy record is being updated. This must be a valid string representing the organization in Datadog. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "webhook_secret" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'proxy_records_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateProxyRecord", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "proxy_record_id": { + "value": "123456", + "type": "string", + "required": false + }, + "organization_id": { + "value": "org_78910", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Proxy\", \"description\": \"This is an updated proxy record.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateRoleDetails", + "qualifiedName": "PosthogApi.UpdateRoleDetails", + "fullyQualifiedName": "PosthogApi.UpdateRoleDetails@2.0.0", + "description": "Partially update organization role details.\n\n Use this tool to modify specific attributes of a role within an organization on Datadog. Ideal for updating permissions or changing role configurations without affecting the entire role setup.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "role_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the role to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "A string representing the identifier of the organization. Required for role updates. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'roles_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateRoleDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "role_uuid": { + "value": "6d2dfe45-62c8-4b95-ae1e-8cee3b393bb7", + "type": "string", + "required": false + }, + "organization_id": { + "value": "org-123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"permissions\": [\"read:metrics\", \"write:events\"], \"name\": \"Updated Role Name\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSessionRecording2", + "qualifiedName": "PosthogApi.UpdateSessionRecording2", + "fullyQualifiedName": "PosthogApi.UpdateSessionRecording2@2.0.0", + "description": "Update session recording details for a specific project.\n\n This tool updates the details of a session recording for a given project in Datadog. Use it to modify existing recording parameters by specifying the project and recording ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "session_recording_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the session recording to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. To find this ID, use the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recordings_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateSessionRecording2", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "session_recording_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_001", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Session Recording\",\"duration\":300,\"tags\":[\"user_interaction\",\"2023\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSessionRecording", + "qualifiedName": "PosthogApi.UpdateSessionRecording", + "fullyQualifiedName": "PosthogApi.UpdateSessionRecording@2.0.0", + "description": "Partially update session recording details.\n\n Use this tool to partially update details of a session recording within a specific project environment. It should be called when modifications are needed for an existing session recording without replacing all current data.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "session_recording_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the session recording to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recordings_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateSessionRecording", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "session_recording_uuid": { + "value": "abc1234uuid", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_5678", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Session Recording\", \"description\": \"This is an updated description for the session recording.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSessionRecordingPlaylist", + "qualifiedName": "PosthogApi.UpdateSessionRecordingPlaylist", + "fullyQualifiedName": "PosthogApi.UpdateSessionRecordingPlaylist@2.0.0", + "description": "Update a session recording playlist within an environment.\n\n Use this tool to modify details of a session recording playlist in a specified environment by providing the project and playlist identifiers.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID required to access the specific project. Obtainable via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "playlist_short_id", + "type": "string", + "required": false, + "description": "The short ID of the session recording playlist to update. It identifies the specific playlist within a project environment. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_session_recording_playlists_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateSessionRecordingPlaylist", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "playlist_short_id": { + "value": "abcde", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Playlist Name\", \"description\": \"Updated description for the playlist.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSessionRecordingSharing", + "qualifiedName": "PosthogApi.UpdateSessionRecordingSharing", + "fullyQualifiedName": "PosthogApi.UpdateSessionRecordingSharing@2.0.0", + "description": "Refresh session recording sharing status.\n\n Call this tool to refresh or update the sharing status of a session recording for a specified project and recording ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique string identifier for the project you want to access. Obtainable via the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "session_recording_id", + "type": "string", + "required": false, + "description": "The unique ID of the session recording to update the sharing status for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'session_recordings_sharing_refresh_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateSessionRecordingSharing", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_12345", + "type": "string", + "required": false + }, + "session_recording_id": { + "value": "recording_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"sharing_status\": \"public\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSubscriptionDetails", + "qualifiedName": "PosthogApi.UpdateSubscriptionDetails", + "fullyQualifiedName": "PosthogApi.UpdateSubscriptionDetails@2.0.0", + "description": "Update details of a project subscription.\n\n Use this tool to update specific details of a subscription within a project on Datadog. Ideal for modifying settings or information for an existing subscription.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "subscription_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying this subscription. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project you want to access. Retrieve it via a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'subscriptions_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateSubscriptionDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "subscription_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_identifier": { + "value": "project_abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"active\",\"plan\":\"premium\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSubscriptionSettings", + "qualifiedName": "PosthogApi.UpdateSubscriptionSettings", + "fullyQualifiedName": "PosthogApi.UpdateSubscriptionSettings@2.0.0", + "description": "Update subscription settings for a project.\n\n This tool updates the settings of a subscription for a specified project in Datadog. It should be called when modifications to subscription details are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "subscription_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the subscription to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve it via /api/projects/ if unknown. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'subscriptions_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateSubscriptionSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "subscription_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"setting\":\"value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSurveyInfo", + "qualifiedName": "PosthogApi.UpdateSurveyInfo", + "fullyQualifiedName": "PosthogApi.UpdateSurveyInfo@2.0.0", + "description": "Update information for a specific survey.\n\n Call this tool to update details of a specific survey in a project on Datadog. This is useful for modifying existing survey data, such as survey name, description, or other fields.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "survey_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the survey to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project to access. Use /api/projects/ to find this ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveys_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateSurveyInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "survey_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "proj_789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Customer Satisfaction Survey\", \"description\": \"A survey to gauge customer satisfaction.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSurveyTracking", + "qualifiedName": "PosthogApi.UpdateSurveyTracking", + "fullyQualifiedName": "PosthogApi.UpdateSurveyTracking@2.0.0", + "description": "Tracks a new view for a survey by logging access.\n\n Call this tool to log and track when a survey is viewed. It updates the survey view count in a specified project, providing insights into survey access frequency.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "survey_uuid", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the survey to track. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier of the project to access. Retrieve this ID by making a call to /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'surveys_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateSurveyTracking", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "survey_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "proj_987654", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"viewed\": true, \"timestamp\": \"2023-10-03T12:34:56Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTableSchema", + "qualifiedName": "PosthogApi.UpdateTableSchema", + "fullyQualifiedName": "PosthogApi.UpdateTableSchema@2.0.0", + "description": "Refresh the schema of a specific warehouse table.\n\n Use this tool to initiate a refresh of the schema for a specified warehouse table within a project. This is useful when you need to ensure the table schema is up to date with any changes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "warehouse_table_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the warehouse table to refresh the schema for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "String representing the Project ID for accessing a specific project. Retrieve this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_tables_refresh_schema_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateTableSchema", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "warehouse_table_uuid": { + "value": "b1e4c9e7-122a-4c2a-b2ac-77a6cb9d949d", + "type": "string", + "required": false + }, + "project_id": { + "value": "project_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"refresh_needed\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTaskInProject", + "qualifiedName": "PosthogApi.UpdateTaskInProject", + "fullyQualifiedName": "PosthogApi.UpdateTaskInProject@2.0.0", + "description": "Update a specific task within a project.\n\n Use this tool to modify details of a specific task within a specified project in order to manage work assignments effectively.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "task_uuid", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the specific task to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project to access for task updates. Retrieve this using the /api/projects/ endpoint. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tasks_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateTaskInProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "task_uuid": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"in_progress\",\"assignee\":\"user@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTaskPosition", + "qualifiedName": "PosthogApi.UpdateTaskPosition", + "fullyQualifiedName": "PosthogApi.UpdateTaskPosition@2.0.0", + "description": "Update the position of a task within its current stage.\n\nUse this tool to adjust the order of tasks within the same stage in a project. This is useful for reorganizing tasks based on priority or progress within a project's existing structure.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The ID of the project for accessing or modifying tasks. Obtainable via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "A UUID string specifying the task to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "new_task_position", + "type": "integer", + "required": false, + "description": "The new integer position for the task within its current stage.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tasks_update_position_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateTaskPosition", + "parameters": { + "project_identifier": { + "value": "proj_12345", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "task_abcde-1234-5678-90ef-ghijklmnopqr", + "type": "string", + "required": true + }, + "new_task_position": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTaskRunOutput", + "qualifiedName": "PosthogApi.UpdateTaskRunOutput", + "fullyQualifiedName": "PosthogApi.UpdateTaskRunOutput@2.0.0", + "description": "Update the output field for a specific task run.\n\nUse this tool to update the output details (like PR URL, commit SHA) for a specific task run within a project.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique Project ID required to access and update the specific task run details within a project. Obtainable via the /api/projects/ endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "A string representing the unique identifier for a particular task run being accessed.", + "enum": null, + "inferrable": true + }, + { + "name": "task_run_id", + "type": "string", + "required": true, + "description": "A UUID string that uniquely identifies the task run to update.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tasks_runs_set_output_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateTaskRunOutput", + "parameters": { + "project_identifier": { + "value": "project_12345", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "task_run_ABC", + "type": "string", + "required": true + }, + "task_run_id": { + "value": "e6b8c4d1-37e5-4f0d-9b32-f9c1bce6075a", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTaskRunStatus", + "qualifiedName": "PosthogApi.UpdateTaskRunStatus", + "fullyQualifiedName": "PosthogApi.UpdateTaskRunStatus@2.0.0", + "description": "Update the status of a specific task run.\n\n Use this tool to update details of a specific task run within a project. Suitable for changing statuses or executing minor updates on task executions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "task_run_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the specific task run to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The ID of the project to access. Retrieve via /api/projects/ if unknown. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_run_task_identifier", + "type": "string", + "required": false, + "description": "The unique task ID for identifying the specific task run to update. This ID is associated with the task execution. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tasks_runs_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateTaskRunStatus", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "task_run_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project-xyz", + "type": "string", + "required": false + }, + "task_run_task_identifier": { + "value": "task-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"completed\",\"message\":\"Task executed successfully.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateUserDetails", + "qualifiedName": "PosthogApi.UpdateUserDetails", + "fullyQualifiedName": "PosthogApi.UpdateUserDetails@2.0.0", + "description": "Update user details in the database.\n\n Use this tool to update user information based on their unique identifier (UUID).\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_uuid", + "type": "string", + "required": false, + "description": "The unique identifier (UUID) of the user to be updated. Required for identifying the specific user record. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateUserDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\":\"user@example.com\",\"properties\":{\"first_name\":\"John\",\"last_name\":\"Doe\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateUserHedgehogConfig", + "qualifiedName": "PosthogApi.UpdateUserHedgehogConfig", + "fullyQualifiedName": "PosthogApi.UpdateUserHedgehogConfig@2.0.0", + "description": "Update a user's hedgehog configuration settings in Datadog.\n\n Call this tool to update specific settings in a user's hedgehog configuration. Useful for modifying user preferences or settings related to the hedgehog feature in Datadog.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_uuid", + "type": "string", + "required": false, + "description": "A unique identifier for the user whose hedgehog configuration is to be updated. It is a string value that must be provided to target the correct user. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_hedgehog_config_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateUserHedgehogConfig", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"settingA\": true, \"settingB\": \"value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateUserInfo", + "qualifiedName": "PosthogApi.UpdateUserInfo", + "fullyQualifiedName": "PosthogApi.UpdateUserInfo@2.0.0", + "description": "Partially update a user's information in Datadog.\n\n Use this tool to update specific fields of a user's information in Datadog. Ideal for modifying user details without needing to provide all account details again.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_uuid", + "type": "string", + "required": false, + "description": "The unique identifier for the user to be updated. This is required to specify which user's information should be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateUserInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\": \"user@example.com\", \"first_name\": \"John\", \"last_name\": \"Doe\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateUserInterviewEnvironment", + "qualifiedName": "PosthogApi.UpdateUserInterviewEnvironment", + "fullyQualifiedName": "PosthogApi.UpdateUserInterviewEnvironment@2.0.0", + "description": "Update environment details for a user interview.\n\n Use this tool to update specific environment details of a user interview by specifying the project and interview IDs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_interview_id", + "type": "string", + "required": false, + "description": "A UUID string that uniquely identifies the user interview to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project for accessing environment details. Obtain by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_user_interviews_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateUserInterviewEnvironment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_interview_id": { + "value": "n0e6b2e1-fb27-4b32-8d1a-5eec6e1a6835", + "type": "string", + "required": false + }, + "project_id": { + "value": "a3f747c5-8e92-4c08-9780-95d16c2f5a12", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"interview_notes\":\"Updated user interview details\",\"environment\":\"production\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWarehouseQuery", + "qualifiedName": "PosthogApi.UpdateWarehouseQuery", + "fullyQualifiedName": "PosthogApi.UpdateWarehouseQuery@2.0.0", + "description": "Updates a saved query in the data warehouse.\n\n Use this tool to update an existing saved query within a DataDog environment's warehouse. It should be called when changes to the saved query parameters or configuration are required.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "saved_query_uuid", + "type": "string", + "required": false, + "description": "A UUID identifying the specific saved query to update in the data warehouse. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project to access. Obtain this by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_saved_queries_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateWarehouseQuery", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "saved_query_uuid": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Query\", \"description\": \"This is an updated query.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWarehouseSavedQuery", + "qualifiedName": "PosthogApi.UpdateWarehouseSavedQuery", + "fullyQualifiedName": "PosthogApi.UpdateWarehouseSavedQuery@2.0.0", + "description": "Update a warehouse saved query in a specified environment.\n\n This tool updates a specific saved query within the warehouse of a given environment. Use it to modify existing queries by specifying the project and query IDs.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "saved_query_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying this data warehouse saved query for updates. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The ID of the project you want to access. Obtain it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_saved_queries_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateWarehouseSavedQuery", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "saved_query_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_id": { + "value": "proj_789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Query\", \"description\": \"This is an updated saved query.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWarehouseTable2", + "qualifiedName": "PosthogApi.UpdateWarehouseTable2", + "fullyQualifiedName": "PosthogApi.UpdateWarehouseTable2@2.0.0", + "description": "Partially update a warehouse table entry.\n\n Use this tool to partially update a specified warehouse table within a project. It should be called when there's a need to modify existing warehouse table data for a specific project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "warehouse_table_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the data warehouse table to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project ID of the project you're trying to access. Use the `/api/projects/` endpoint to find the correct ID. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_tables_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateWarehouseTable2", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "warehouse_table_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_001", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"column\":\"value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWarehouseTable", + "qualifiedName": "PosthogApi.UpdateWarehouseTable", + "fullyQualifiedName": "PosthogApi.UpdateWarehouseTable@2.0.0", + "description": "Update specific warehouse tables in a project.\n\n This tool updates details of a specified warehouse table within a given project environment. It should be used when updates to table configurations or properties are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "warehouse_table_uuid", + "type": "string", + "required": false, + "description": "A UUID string that identifies the specific data warehouse table to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the project you wish to access. Obtainable by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_tables_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateWarehouseTable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "warehouse_table_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "project_98765", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"config\":\"new_config_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWarehouseTableSchema", + "qualifiedName": "PosthogApi.UpdateWarehouseTableSchema", + "fullyQualifiedName": "PosthogApi.UpdateWarehouseTableSchema@2.0.0", + "description": "Update the schema of a warehouse table.\n\n Use this tool to modify the structure of an existing warehouse table within a specified project environment. This tool allows for creating, reading, updating, and deleting table schemas as needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "warehouse_table_id", + "type": "string", + "required": false, + "description": "A UUID string identifying the data warehouse table to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The Project ID for accessing the desired project. Retrieve using /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_warehouse_tables_update_schema_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateWarehouseTableSchema", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "warehouse_table_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "project_identifier": { + "value": "my_project_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"columns\": [{\"name\": \"new_column\", \"type\": \"text\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWebExperiment", + "qualifiedName": "PosthogApi.UpdateWebExperiment", + "fullyQualifiedName": "PosthogApi.UpdateWebExperiment@2.0.0", + "description": "Update web experiment details within a project.\n\nUse this tool to update specific details of a web experiment in a given project on Datadog. It tracks changes and logs views for the resource.", + "parameters": [ + { + "name": "experiment_id", + "type": "integer", + "required": true, + "description": "The ID of the web experiment to update. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "experiment_name", + "type": "string", + "required": true, + "description": "Specify the name of the web experiment to update. This is used to identify the experiment for modification within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "feature_flag_key", + "type": "string", + "required": true, + "description": "Unique identifier for the feature flag associated with the web experiment.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project to access. Retrieve this ID via the `/api/projects/` endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "web_experiment_id", + "type": "integer", + "required": true, + "description": "A unique integer identifying this web experiment to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "web_experiment_variants", + "type": "string", + "required": true, + "description": "JSON string specifying variants for the web experiment. Include control, transforms, conditions, and rollout_percentage.", + "enum": null, + "inferrable": true + }, + { + "name": "creation_timestamp", + "type": "string", + "required": false, + "description": "Timestamp indicating when the web experiment was created. It should be in ISO 8601 format.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'web_experiments_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateWebExperiment", + "parameters": { + "experiment_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "experiment_name": { + "value": "A/B Test for Button Color", + "type": "string", + "required": true + }, + "feature_flag_key": { + "value": "button_color_experiment", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_xyz_789", + "type": "string", + "required": true + }, + "web_experiment_id": { + "value": 54321, + "type": "integer", + "required": true + }, + "web_experiment_variants": { + "value": "{\"control\": {\"color\": \"blue\"}, \"treatment\": [{\"color\": \"red\"}], \"conditions\": {\"device\": \"desktop\"}, \"rollout_percentage\": 50}", + "type": "string", + "required": true + }, + "creation_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWebExperimentStatus", + "qualifiedName": "PosthogApi.UpdateWebExperimentStatus", + "fullyQualifiedName": "PosthogApi.UpdateWebExperimentStatus@2.0.0", + "description": "Update the status of a web experiment.\n\nUse this tool to update the status or data of an existing web experiment within a specific project by providing the relevant identifiers.", + "parameters": [ + { + "name": "project_id_for_access", + "type": "string", + "required": true, + "description": "Project ID to access the specific project. Obtain it via /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "creation_timestamp", + "type": "string", + "required": false, + "description": "The timestamp when the web experiment was created. Must be in ISO 8601 format (e.g., '2023-10-05T14:48:00.000Z').", + "enum": null, + "inferrable": true + }, + { + "name": "experiment_identifier", + "type": "integer", + "required": false, + "description": "The unique identifier for the web experiment that needs to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "experiment_name", + "type": "string", + "required": false, + "description": "The name of the web experiment to be updated. This should be a descriptive string identifying the specific experiment within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "feature_flag_key", + "type": "string", + "required": false, + "description": "A string representing the feature flag key associated with the web experiment. It uniquely identifies the feature toggle you want to update.", + "enum": null, + "inferrable": true + }, + { + "name": "web_experiment_id", + "type": "integer", + "required": false, + "description": "A unique integer identifying the web experiment.", + "enum": null, + "inferrable": true + }, + { + "name": "web_experiment_variants", + "type": "string", + "required": false, + "description": "JSON string defining the variants for the web experiment. Include text, HTML, selector, conditions, and rollout percentage for each variant. Example: { \"control\": { \"transforms\": [ { \"text\": \"Here comes Superman!\", \"html\": \"\", \"selector\": \"#page > #body > .header h1\" } ], \"conditions\": \"None\", \"rollout_percentage\": 50 } }", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'web_experiments_partial_update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.UpdateWebExperimentStatus", + "parameters": { + "project_id_for_access": { + "value": "12345", + "type": "string", + "required": true + }, + "creation_timestamp": { + "value": "2023-10-05T14:48:00.000Z", + "type": "string", + "required": false + }, + "experiment_identifier": { + "value": 987, + "type": "integer", + "required": false + }, + "experiment_name": { + "value": "A/B Test for New Homepage Layout", + "type": "string", + "required": false + }, + "feature_flag_key": { + "value": "homepage_layout_ab_test", + "type": "string", + "required": false + }, + "web_experiment_id": { + "value": 456, + "type": "integer", + "required": false + }, + "web_experiment_variants": { + "value": "{\"control\": {\"transforms\": [{\"text\": \"Here comes Superman!\", \"html\": \"Here comes Superman!\", \"selector\": \"#page > #body > .header h1\"}], \"conditions\": \"None\", \"rollout_percentage\": 50}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ValidateTwoFactorAuthentication", + "qualifiedName": "PosthogApi.ValidateTwoFactorAuthentication", + "fullyQualifiedName": "PosthogApi.ValidateTwoFactorAuthentication@2.0.0", + "description": "Validate a user's two-factor authentication code.\n\n Use this tool to verify a user's two-factor authentication by providing the necessary code. It confirms whether the two-factor authentication is valid.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the user whose two-factor authentication is being validated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_two_factor_validate_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ValidateTwoFactorAuthentication", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_identifier": { + "value": "user123@example.com", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"two_factor_code\": \"123456\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ValidateUser2fa", + "qualifiedName": "PosthogApi.ValidateUser2fa", + "fullyQualifiedName": "PosthogApi.ValidateUser2fa@2.0.0", + "description": "Validate a user's two-factor authentication status.\n\n Use this tool to validate whether a specific user's two-factor authentication (2FA) is correctly set up. Call this when you need to confirm a user's 2FA status in the system.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "user_uuid", + "type": "string", + "required": false, + "description": "The unique identifier for the user whose 2FA status needs to be validated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_validate_2fa_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.ValidateUser2fa", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "user_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"validate\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "VerifyDomainForOrg", + "qualifiedName": "PosthogApi.VerifyDomainForOrg", + "fullyQualifiedName": "PosthogApi.VerifyDomainForOrg@2.0.0", + "description": "Verify a domain for a specified organization.\n\n This tool verifies a domain associated with a specified organization by creating a verification request for it. Useful when ensuring domain control and validation in organizational contexts.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "domain_uuid", + "type": "string", + "required": false, + "description": "A UUID string identifying the domain to be verified for the organization. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": false, + "description": "A unique string ID representing the organization associated with the domain to verify. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'domains_verify_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.VerifyDomainForOrg", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "domain_uuid": { + "value": "e01c3d36-2e61-4c25-8a90-e594a84c8c5a", + "type": "string", + "required": false + }, + "organization_identifier": { + "value": "org-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{ \"verified\": true }", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "VerifyEmailIntegration", + "qualifiedName": "PosthogApi.VerifyEmailIntegration", + "fullyQualifiedName": "PosthogApi.VerifyEmailIntegration@2.0.0", + "description": "Verify email address for an integration's environment.\n\n This tool is used to confirm the email address for a specific integration within an environment. It should be called when you need to verify that the email address associated with an integration is valid and active.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_id", + "type": "integer", + "required": false, + "description": "A unique integer value identifying this integration within the environment. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Project ID for which you want to verify the email integration. Retrieve it by calling /api/projects/. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'environments_integrations_email_verify_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.VerifyEmailIntegration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_id": { + "value": 12345, + "type": "integer", + "required": false + }, + "project_id": { + "value": "project-abc-123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\":\"test@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "VerifyUserEmail", + "qualifiedName": "PosthogApi.VerifyUserEmail", + "fullyQualifiedName": "PosthogApi.VerifyUserEmail@2.0.0", + "description": "Initiates the email verification process for a user.\n\nUse this tool to start the process of verifying a user's email address. Ideal for confirming email ownership during account setup or security checks.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users_verify_email_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.VerifyUserEmail", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"user_id\":\"12345\",\"email\":\"user@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "WarehouseTableFileOperations", + "qualifiedName": "PosthogApi.WarehouseTableFileOperations", + "fullyQualifiedName": "PosthogApi.WarehouseTableFileOperations@2.0.0", + "description": "Create a new warehouse table from a file.\n\n Use this tool to create a new warehouse table in a specified project by providing a file. It supports creating tables within the DataDog platform.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id_for_access", + "type": "string", + "required": false, + "description": "Specify the Project ID to access the desired project. Use /api/projects/ to find available IDs. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_tables_file_create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.WarehouseTableFileOperations", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id_for_access": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"table_name\":\"user_data\",\"columns\":[{\"name\":\"id\",\"type\":\"integer\"},{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"email\",\"type\":\"string\"}],\"data\":[{\"id\":1,\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"},{\"id\":2,\"name\":\"Jane Smith\",\"email\":\"jane.smith@example.com\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "WarehouseTablesOverview", + "qualifiedName": "PosthogApi.WarehouseTablesOverview", + "fullyQualifiedName": "PosthogApi.WarehouseTablesOverview@2.0.0", + "description": "Retrieve a list of warehouse tables for a specific project.\n\nThis tool allows you to retrieve the list of warehouse tables associated with a specified project ID. It should be called when you need to view or manage the tables within a data project's warehouse.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the project whose warehouse tables you wish to access. Use the project ID obtained via a call to /api/projects/.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the number of results to return per page when listing warehouse tables.", + "enum": null, + "inferrable": true + }, + { + "name": "results_start_index", + "type": "integer", + "required": false, + "description": "The initial index from which the results should start. Useful for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "search_term", + "type": "string", + "required": false, + "description": "A term to filter the list of warehouse tables by matching names or descriptions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["POSTHOG_SERVER_URL", "POSTHOG_PERSONAL_API_KEY"], + "secretsInfo": [ + { + "name": "POSTHOG_SERVER_URL", + "type": "unknown" + }, + { + "name": "POSTHOG_PERSONAL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'warehouse_tables_list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PosthogApi.WarehouseTablesOverview", + "parameters": { + "project_identifier": { + "value": "abc123", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "results_start_index": { + "value": 0, + "type": "integer", + "required": false + }, + "search_term": { + "value": "user_activity", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "section", + "location": "before_available_tools", + "position": "after", + "content": "## Configuration\n\n**Secrets**\n\nThis tool requires the following secrets: `POSTHOG_SERVER_URL`, `POSTHOG_PERSONAL_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))\nThe PosthogApi MCP Server requires two secrets to authenticate with your PostHog instance:\n\n### Getting Your PostHog Server URL\n\nThe server URL depends on your PostHog deployment:\n\n- **PostHog Cloud (US Region)**: `https://us.posthog.com`\n- **PostHog Cloud (EU Region)**: `https://eu.posthog.com`\n- **Self-Hosted**: Use your instance's base URL (e.g., `https://analytics.yourdomain.com`)\n\nYou can verify your server URL by checking your PostHog account settings or the URL you use to access PostHog.\n\n### Getting Your Personal API Key\n\nTo generate a PostHog personal API key:\n\n1. Log in to your PostHog account\n2. Click your avatar in the bottom-left corner\n3. Select the gear icon to open \"Account settings\"\n4. Navigate to the \"Personal API Keys\" section\n5. Click \"+ Create a personal API key\"\n6. Provide a descriptive label for the key\n7. Select the necessary scopes (choose only the scopes required for your use case)\n8. Click \"Create key\"\n9. **Copy and securely store the key immediately** - it won't be shown again\n\nFor more details on authentication and API usage, refer to the [PostHog API documentation](https://posthog.com/docs/api).\n\nOnce you have both values, configure them as secrets when using the PosthogApi MCP Server. Learn more about [configuring secrets](/guides/create-tools/tool-basics/create-tool-secrets).", + "header": "## Configuration" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:46:34.895Z", + "summary": "Arcade Toolkit provides developers with the tools to interact seamlessly with the PostHog API, enhancing their ability to manage projects efficiently. The toolkit allows for various API operations such as adding collaborators, managing dashboards, and executing saved queries.\n\n**Capabilities:**\n- Supports managing and updating dashboards and their settings.\n- Facilitates the addition of collaborators for effective project collaboration.\n- Enables querying and manipulating project data through saved queries and insights.\n- Manages environment-specific settings and configurations for enhanced project organization.\n- Tracks insights activity and user engagements to better analyze project performance.\n\n**OAuth:** There is no OAuth authentication type required for access. \n\n**Secrets:**\n- API keys and tokens managed securely.\n- Example secrets include POSTHOG_SERVER_URL and POSTHOG_PERSONAL_API_KEY." +} diff --git a/data/toolkits/pylon.json b/data/toolkits/pylon.json new file mode 100644 index 000000000..48bfd4d4f --- /dev/null +++ b/data/toolkits/pylon.json @@ -0,0 +1,898 @@ +{ + "id": "Pylon", + "label": "Pylon", + "version": "0.2.0", + "description": "Arcade tools designed for LLMs to interact with Pylon", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/pylon.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/pylon", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "AddInternalNote", + "qualifiedName": "Pylon.AddInternalNote", + "fullyQualifiedName": "Pylon.AddInternalNote@0.2.0", + "description": "Add an internal note to a Pylon issue.", + "parameters": [ + { + "name": "issue_id", + "type": "string", + "required": true, + "description": "The issue ID (UUID) or issue number to add message to.", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": true, + "description": "The message content to add.", + "enum": null, + "inferrable": true + }, + { + "name": "as_html", + "type": "boolean", + "required": false, + "description": "Whether body is already HTML formatted. Default is False (plain text).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_API_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_API_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Created internal note details." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pylon.AddInternalNote", + "parameters": { + "issue_id": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "body": { + "value": "This is an internal note regarding the issue.", + "type": "string", + "required": true + }, + "as_html": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AssignIssue", + "qualifiedName": "Pylon.AssignIssue", + "fullyQualifiedName": "Pylon.AssignIssue@0.2.0", + "description": "Assign a Pylon issue to a user.\n\nFor issue search: uses BM25 ranking. Use word stems ('auth', 'config') and AND/OR/NOT.\nFor user search: uses fuzzy name matching.", + "parameters": [ + { + "name": "issue_lookup_by", + "type": "string", + "required": true, + "description": "How to find the issue: 'id' for direct lookup, 'search' for keyword search.", + "enum": ["id", "search"], + "inferrable": true + }, + { + "name": "issue_value", + "type": "string", + "required": true, + "description": "Issue ID/number (if issue_lookup_by=id) or search keywords (if issue_lookup_by=search).", + "enum": null, + "inferrable": true + }, + { + "name": "user_lookup_by", + "type": "string", + "required": true, + "description": "How to find the user: 'id' for direct lookup, 'name' for fuzzy name search.", + "enum": ["id", "name"], + "inferrable": true + }, + { + "name": "user_value", + "type": "string", + "required": true, + "description": "User ID (if user_lookup_by=id) or user name (if user_lookup_by=name).", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy/BM25 matches above 90% confidence. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_API_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_API_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Updated issue with assignment details." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pylon.AssignIssue", + "parameters": { + "issue_lookup_by": { + "value": "search", + "type": "string", + "required": true + }, + "issue_value": { + "value": "auth config issue", + "type": "string", + "required": true + }, + "user_lookup_by": { + "value": "name", + "type": "string", + "required": true + }, + "user_value": { + "value": "john doe", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIssue", + "qualifiedName": "Pylon.GetIssue", + "fullyQualifiedName": "Pylon.GetIssue@0.2.0", + "description": "Get detailed information about a Pylon issue.\n\nFor search: uses BM25 ranking. Use word stems ('auth', 'config') and AND/OR/NOT operators.", + "parameters": [ + { + "name": "lookup_by", + "type": "string", + "required": true, + "description": "How to find the issue: 'id' for direct lookup, 'search' for keyword search.", + "enum": ["id", "search"], + "inferrable": true + }, + { + "name": "value", + "type": "string", + "required": true, + "description": "Issue ID/number (if lookup_by=id) or search keywords (if lookup_by=search). For search: use word stems like 'auth' or 'config' for broader matches.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept search matches above 85% confidence gap. Only used with lookup_by=search. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_API_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_API_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Detailed issue information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pylon.GetIssue", + "parameters": { + "lookup_by": { + "value": "search", + "type": "string", + "required": true + }, + "value": { + "value": "auth config", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTeamAndAssignment", + "qualifiedName": "Pylon.GetTeamAndAssignment", + "fullyQualifiedName": "Pylon.GetTeamAndAssignment@0.2.0", + "description": "Get detailed information about a Pylon team including members.", + "parameters": [ + { + "name": "lookup_by", + "type": "string", + "required": true, + "description": "How to find the team: 'id' for direct lookup, 'name' for fuzzy name search.", + "enum": ["id", "name"], + "inferrable": true + }, + { + "name": "value", + "type": "string", + "required": true, + "description": "Team ID (if lookup_by=id) or team name (if lookup_by=name).", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Only used when lookup_by=name. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_API_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_API_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Detailed team information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pylon.GetTeamAndAssignment", + "parameters": { + "lookup_by": { + "value": "name", + "type": "string", + "required": true + }, + "value": { + "value": "Engineering Team", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListContacts", + "qualifiedName": "Pylon.ListContacts", + "fullyQualifiedName": "Pylon.ListContacts@0.2.0", + "description": "List contacts in Pylon.", + "parameters": [ + { + "name": "cursor", + "type": "string", + "required": false, + "description": "Pagination cursor from previous response. Default is None (first page).", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of contacts to return per page. Default is 20.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_API_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_API_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "List of contacts with pagination." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pylon.ListContacts", + "parameters": { + "cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListIssues", + "qualifiedName": "Pylon.ListIssues", + "fullyQualifiedName": "Pylon.ListIssues@0.2.0", + "description": "List Pylon issues with optional filtering by state, assignee, team, and tags.", + "parameters": [ + { + "name": "state", + "type": "string", + "required": false, + "description": "Filter by issue state. Default is None (all states).", + "enum": [ + "new", + "open", + "waiting_on_customer", + "waiting_on_you", + "on_hold", + "closed", + "snoozed" + ], + "inferrable": true + }, + { + "name": "assignee_id", + "type": "string", + "required": false, + "description": "Filter by assignee user ID. Default is None (all assignees).", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "Filter by team ID. Default is None (all teams).", + "enum": null, + "inferrable": true + }, + { + "name": "tags", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter by tags (issues must have all listed tags). Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time", + "type": "string", + "required": false, + "description": "Start of date range in RFC3339 format (YYYY-MM-DDTHH:MM:SSZ). Default is 7 days ago.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time", + "type": "string", + "required": false, + "description": "End of date range in RFC3339 format (YYYY-MM-DDTHH:MM:SSZ). Default is now.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor", + "type": "string", + "required": false, + "description": "Pagination cursor from previous response. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_API_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_API_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "List of issues matching the filters." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pylon.ListIssues", + "parameters": { + "state": { + "value": "open", + "type": "string", + "required": false + }, + "assignee_id": { + "value": "12345", + "type": "string", + "required": false + }, + "team_id": { + "value": "teamA", + "type": "string", + "required": false + }, + "tags": { + "value": ["bug", "urgent"], + "type": "array", + "required": false + }, + "start_time": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "end_time": { + "value": "2023-10-08T00:00:00Z", + "type": "string", + "required": false + }, + "cursor": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListTeams", + "qualifiedName": "Pylon.ListTeams", + "fullyQualifiedName": "Pylon.ListTeams@0.2.0", + "description": "List all teams in the Pylon workspace.", + "parameters": [ + { + "name": "cursor", + "type": "string", + "required": false, + "description": "Pagination cursor from previous response. Default is None.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_API_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_API_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "List of teams in the workspace." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pylon.ListTeams", + "parameters": { + "cursor": { + "value": "eyJzdGFydF90aW1lIjoxNjY4NTEwNjA4fQ==", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListUsers", + "qualifiedName": "Pylon.ListUsers", + "fullyQualifiedName": "Pylon.ListUsers@0.2.0", + "description": "List all users/team members in the Pylon workspace.", + "parameters": [ + { + "name": "cursor", + "type": "string", + "required": false, + "description": "Pagination cursor from previous response. Default is None.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of users to return. Default is 20.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_API_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_API_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "List of users in the workspace." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pylon.ListUsers", + "parameters": { + "cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchContacts", + "qualifiedName": "Pylon.SearchContacts", + "fullyQualifiedName": "Pylon.SearchContacts@0.2.0", + "description": "Search for contacts by name or email using fuzzy matching.", + "parameters": [ + { + "name": "query", + "type": "string", + "required": true, + "description": "Name or email to search for.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 0.9 confidence. Default is False.", + "enum": null, + "inferrable": true + }, + { + "name": "max_pages", + "type": "integer", + "required": false, + "description": "Maximum pages to scan when searching contacts. Default is 10.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_API_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_API_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Matching contacts with confidence scores." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pylon.SearchContacts", + "parameters": { + "query": { + "value": "john.doe@example.com", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + }, + "max_pages": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchIssues", + "qualifiedName": "Pylon.SearchIssues", + "fullyQualifiedName": "Pylon.SearchIssues@0.2.0", + "description": "Search issues recently created by keywords in title and description.\n\nNote: This indexes up to 400 issues from the last 30 days.\n\nUses BM25 ranking. Use word stems ('auth', 'config') and AND/OR/NOT operators.", + "parameters": [ + { + "name": "query", + "type": "string", + "required": true, + "description": "Keywords to search in issue titles and descriptions. Use word stems like 'auth' or 'config' for broader matches. Supports AND, OR, NOT operators.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept high-confidence matches above 85% score gap. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_API_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_API_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Search results or matched issue." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pylon.SearchIssues", + "parameters": { + "query": { + "value": "auth OR config NOT deprecated", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchUsers", + "qualifiedName": "Pylon.SearchUsers", + "fullyQualifiedName": "Pylon.SearchUsers@0.2.0", + "description": "Search for users by name using fuzzy matching.", + "parameters": [ + { + "name": "query", + "type": "string", + "required": true, + "description": "The name or partial name to search for.", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept fuzzy matches above 90% confidence. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_API_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_API_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Users matching the search query." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pylon.SearchUsers", + "parameters": { + "query": { + "value": "John Doe", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateIssueStatus", + "qualifiedName": "Pylon.UpdateIssueStatus", + "fullyQualifiedName": "Pylon.UpdateIssueStatus@0.2.0", + "description": "Change the state of a Pylon issue.\n\nFor search: uses BM25 ranking. Use word stems ('auth', 'config') and AND/OR/NOT operators.", + "parameters": [ + { + "name": "state", + "type": "string", + "required": true, + "description": "The new state for the issue.", + "enum": [ + "new", + "open", + "waiting_on_customer", + "waiting_on_you", + "on_hold", + "closed", + "snoozed" + ], + "inferrable": true + }, + { + "name": "lookup_by", + "type": "string", + "required": true, + "description": "How to find the issue: 'id' for direct lookup, 'search' for keyword search.", + "enum": ["id", "search"], + "inferrable": true + }, + { + "name": "value", + "type": "string", + "required": true, + "description": "Issue ID/number (if lookup_by=id) or search keywords (if lookup_by=search).", + "enum": null, + "inferrable": true + }, + { + "name": "auto_accept_matches", + "type": "boolean", + "required": false, + "description": "Auto-accept BM25 search matches above 85% confidence gap. Default is False.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_API_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_API_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Updated issue with state change details." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pylon.UpdateIssueStatus", + "parameters": { + "state": { + "value": "resolved", + "type": "string", + "required": true + }, + "lookup_by": { + "value": "search", + "type": "string", + "required": true + }, + "value": { + "value": "auth config", + "type": "string", + "required": true + }, + "auto_accept_matches": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "Pylon.WhoAmI", + "fullyQualifiedName": "Pylon.WhoAmI@0.2.0", + "description": "Get the authenticated user's profile.\n\nNOTE: This returns the API token owner (service account), not the human user.", + "parameters": [], + "auth": null, + "secrets": ["PYLON_API_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_API_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Authenticated user's profile." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Pylon.WhoAmI", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "warning", + "location": "description", + "position": "after", + "content": "\n Pylon API tokens are admin-scoped and created in Pylon by an org admin. Store\n the token as `PYLON_API_TOKEN` in Arcade secrets. There is no user OAuth.\n" + }, + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "Pylon uses Bearer tokens created by an org admin. There is **no OAuth flow**. Generate an API token in the Pylon dashboard and store it as the secret `PYLON_API_TOKEN` in Arcade. All tools require this secret.\n**Auth header**\n```\nAuthorization: Bearer \n```\n\n Pylon tokens are generated by admins in the Pylon UI and grant org-level\n access. Rotate tokens regularly and scope storage to your Arcade project’s\n secrets.\n\nRefer to Pylon’s authentication docs: [Pylon API Authentication](https://docs.usepylon.com/pylon-docs/developer/api/authentication).", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:39:36.930Z", + "summary": "The Arcade toolkit for Pylon enables seamless interaction with Pylon's issue tracking system and team management. Designed for developers, this toolkit facilitates issue management and user interaction through various tools.\n\n**Capabilities** \n- Manage Pylon issues including assigning and updating statuses. \n- Retrieve detailed information about teams, issues, and users. \n- Perform advanced searches using BM25 ranking and fuzzy matching techniques. \n- Efficiently list and filter contacts, issues, and teams based on various criteria.\n\n**Secrets** \nUtilize the PYLON_API_TOKEN for secure API access to the Pylon services." +} diff --git a/data/toolkits/pylonapi.json b/data/toolkits/pylonapi.json new file mode 100644 index 000000000..6a9a212f7 --- /dev/null +++ b/data/toolkits/pylonapi.json @@ -0,0 +1,4618 @@ +{ + "id": "PylonApi", + "label": "PylonApi", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the pylon API.", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/pylonapi.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/pylonapi", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "CreateAccountActivity", + "qualifiedName": "PylonApi.CreateAccountActivity", + "fullyQualifiedName": "PylonApi.CreateAccountActivity@1.0.0", + "description": "Creates a new activity for a specified account.\n\n Use this tool to add a new activity to an account by providing the account's internal or external ID. It will confirm the creation of the activity.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "account_id_for_activity", + "type": "string", + "required": false, + "description": "The internal or external ID of the account to create the activity for. Accepts a UUID or any string format. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateActivity'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateAccountActivity", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "account_id_for_activity": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"activityType\":\"login\",\"timestamp\":\"2023-10-05T14:48:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateAccountHighlight", + "qualifiedName": "PylonApi.CreateAccountHighlight", + "fullyQualifiedName": "PylonApi.CreateAccountHighlight@1.0.0", + "description": "Create a highlight for a specified account.\n\n This tool is used to create a highlight for an account, using either an internal account ID in UUID format or an external ID in string format. It should be called when there is a need to add or update a highlight for an account.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "account_identifier", + "type": "string", + "required": false, + "description": "The ID (UUID) or external ID (string) of the account for the highlight. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateAccountHighlight'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateAccountHighlight", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "account_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"highlight\":\"New feature update available!\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateAiResponseForIssue", + "qualifiedName": "PylonApi.CreateAiResponseForIssue", + "fullyQualifiedName": "PylonApi.CreateAiResponseForIssue@1.0.0", + "description": "Generate an AI response for a specific issue.\n\n This tool creates an AI-generated response for a given issue by specifying the issue ID. It should be called when an automated response is required for issue resolution or documentation.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "issue_id", + "type": "string", + "required": false, + "description": "The unique ID or number of the issue for which an AI response is required. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateIssueAIResponse'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateAiResponseForIssue", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "issue_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"response\":\"This is an AI-generated response to the issue.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCustomField", + "qualifiedName": "PylonApi.CreateCustomField", + "fullyQualifiedName": "PylonApi.CreateCustomField@1.0.0", + "description": "Create a new custom field in the system.\n\nUse this tool to add a custom field to your database or application configuration. It allows for extending the available data fields to include additional, personalized information.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateCustomField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"field_name\":\"custom_field_1\",\"field_type\":\"string\",\"required\":true,\"default_value\":\"default_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateIssueNote", + "qualifiedName": "PylonApi.CreateIssueNote", + "fullyQualifiedName": "PylonApi.CreateIssueNote@1.0.0", + "description": "Creates a note on an issue to track additional details.\n\n This tool should be called when there's a need to add a note or comment to an existing issue to provide further information or updates.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "issue_id", + "type": "string", + "required": false, + "description": "The unique identifier of the issue to which the note will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateIssueNote'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateIssueNote", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "issue_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"note\": \"This is an additional note regarding the issue.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateIssueReply", + "qualifiedName": "PylonApi.CreateIssueReply", + "fullyQualifiedName": "PylonApi.CreateIssueReply@1.0.0", + "description": "Create a reply to an existing issue.\n\n Use this tool to add a comment or response to an existing issue when interaction or follow-up is required.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "issue_id", + "type": "string", + "required": false, + "description": "The unique identifier of the issue to which you want to reply. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateIssueReply'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateIssueReply", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "issue_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"comment\":\"Thank you for your feedback! We are looking into this issue.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateIssueThread", + "qualifiedName": "PylonApi.CreateIssueThread", + "fullyQualifiedName": "PylonApi.CreateIssueThread@1.0.0", + "description": "Create an issue thread for an existing issue.\n\nUse this tool to initiate a discussion thread related to a specific issue by providing the issue ID. This helps in organizing conversations around particular issues efficiently.", + "parameters": [ + { + "name": "issue_id", + "type": "string", + "required": true, + "description": "The ID for the issue you want to create a thread for. Required to link the thread to the correct issue.", + "enum": null, + "inferrable": true + }, + { + "name": "thread_name", + "type": "string", + "required": false, + "description": "The title or name of the thread to be created. This should be descriptive of the discussion purpose.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateIssueThread'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateIssueThread", + "parameters": { + "issue_id": { + "value": "12345", + "type": "string", + "required": true + }, + "thread_name": { + "value": "Discussion on performance issues", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateKnowledgeBaseArticle", + "qualifiedName": "PylonApi.CreateKnowledgeBaseArticle", + "fullyQualifiedName": "PylonApi.CreateKnowledgeBaseArticle@1.0.0", + "description": "Create and publish an article in a knowledge base.\n\n This tool allows the creation of a new article in a specified knowledge base, including optional translations. If the article is set to publish, translations will also be published.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "knowledge_base_id", + "type": "string", + "required": false, + "description": "The unique identifier for the knowledge base where the article will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateArticle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateKnowledgeBaseArticle", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "knowledge_base_id": { + "value": "kb_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Sample Article\",\"content\":\"This is a sample article content.\",\"translations\":{\"es\":\"Contenido del artículo de muestra.\"},\"publish\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateMilestone", + "qualifiedName": "PylonApi.CreateMilestone", + "fullyQualifiedName": "PylonApi.CreateMilestone@1.0.0", + "description": "Create a new milestone in a project management system.\n\nThis tool is used to create a milestone within a project management application. It should be called when there's a need to add a new milestone to track progress or set goals in a project. The tool confirms the creation of the milestone.", + "parameters": [ + { + "name": "milestone_name", + "type": "string", + "required": true, + "description": "The name of the milestone to be created. This is the title that will be displayed for the milestone.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_for_milestone", + "type": "string", + "required": true, + "description": "The unique identifier for the project to which this milestone belongs. Required for associating the milestone with the correct project.", + "enum": null, + "inferrable": true + }, + { + "name": "account_id_for_project", + "type": "string", + "required": false, + "description": "Account ID for the project. This is needed to associate the milestone with the correct account.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone_due_date", + "type": "string", + "required": false, + "description": "Due date for this milestone in RFC 3339 format (e.g., 2023-12-31T23:59:59Z).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateMilestone'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateMilestone", + "parameters": { + "milestone_name": { + "value": "Launch Phase 1", + "type": "string", + "required": true + }, + "project_id_for_milestone": { + "value": "proj_12345", + "type": "string", + "required": true + }, + "account_id_for_project": { + "value": "acc_67890", + "type": "string", + "required": false + }, + "milestone_due_date": { + "value": "2024-05-30T23:59:59Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewAccount", + "qualifiedName": "PylonApi.CreateNewAccount", + "fullyQualifiedName": "PylonApi.CreateNewAccount@1.0.0", + "description": "Creates a new user account.\n\nThis tool should be called to create a new user account when registration or account opening is requested.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateNewAccount", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"username\":\"john_doe\",\"email\":\"john.doe@example.com\",\"password\":\"SecurePass123!\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewCollection", + "qualifiedName": "PylonApi.CreateNewCollection", + "fullyQualifiedName": "PylonApi.CreateNewCollection@1.0.0", + "description": "Create a new collection in a knowledge base.\n\n This tool is used to create a new collection within a specified knowledge base by providing the knowledge base ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "knowledge_base_id", + "type": "string", + "required": false, + "description": "The unique identifier for the knowledge base where the new collection will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCollection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateNewCollection", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "knowledge_base_id": { + "value": "kb-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"collection_name\": \"New Collection\", \"description\": \"A collection of useful resources.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewContact", + "qualifiedName": "PylonApi.CreateNewContact", + "fullyQualifiedName": "PylonApi.CreateNewContact@1.0.0", + "description": "Create a new contact in the system.\n\nThis tool creates a new contact by sending the necessary details to the endpoint. Use it when you need to add a new person's contact information to the database.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateNewContact", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"first_name\": \"John\", \"last_name\": \"Doe\", \"email\": \"john.doe@example.com\", \"phone\": \"123-456-7890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewIssue", + "qualifiedName": "PylonApi.CreateNewIssue", + "fullyQualifiedName": "PylonApi.CreateNewIssue@1.0.0", + "description": "Create a new issue in the system.\n\nThis tool is used to create a new issue in the system. It should be called whenever there's a need to log or track a new issue or task.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateIssue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateNewIssue", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\": \"Sample Issue\", \"description\": \"This is a sample issue for testing purposes.\", \"priority\": \"high\", \"status\": \"open\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewProject", + "qualifiedName": "PylonApi.CreateNewProject", + "fullyQualifiedName": "PylonApi.CreateNewProject@1.0.0", + "description": "Create a new project seamlessly.\n\nThis tool is used to create a new project. It should be called when a user wants to initialize or start a new project within a system.", + "parameters": [ + { + "name": "account_id_for_project", + "type": "string", + "required": true, + "description": "Account ID associated with the project. This identifies the account under which the project will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "project_name", + "type": "string", + "required": true, + "description": "The name for the new project. This should be a descriptive and unique name to easily identify the project.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_portal_visible", + "type": "boolean", + "required": false, + "description": "Boolean indicating if the project should be visible in the customer portal. True makes it visible.", + "enum": null, + "inferrable": true + }, + { + "name": "project_description_html", + "type": "string", + "required": false, + "description": "HTML formatted description for the project, including any necessary tags and formatting.", + "enum": null, + "inferrable": true + }, + { + "name": "project_end_date", + "type": "string", + "required": false, + "description": "End date for the project in RFC 3339 format. Indicates when the project is expected to be finished.", + "enum": null, + "inferrable": true + }, + { + "name": "project_owner_id", + "type": "string", + "required": false, + "description": "The unique identifier for the owner of the project. This is a string that specifies who will be managing or leading the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_template_id", + "type": "string", + "required": false, + "description": "The ID of the template to be used for creating this project. It should match an existing project template ID.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date", + "type": "string", + "required": false, + "description": "Start date for the project in RFC 3339 format (e.g., 2023-03-10T14:00:00Z).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateNewProject", + "parameters": { + "account_id_for_project": { + "value": "acc_123456789", + "type": "string", + "required": true + }, + "project_name": { + "value": "New Marketing Campaign", + "type": "string", + "required": true + }, + "customer_portal_visible": { + "value": true, + "type": "boolean", + "required": false + }, + "project_description_html": { + "value": "

Project Overview

This project aims to boost our brand visibility.

", + "type": "string", + "required": false + }, + "project_end_date": { + "value": "2024-12-31T23:59:59Z", + "type": "string", + "required": false + }, + "project_owner_id": { + "value": "user_987654321", + "type": "string", + "required": false + }, + "project_template_id": { + "value": "template_123456", + "type": "string", + "required": false + }, + "start_date": { + "value": "2023-11-01T09:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewTag", + "qualifiedName": "PylonApi.CreateNewTag", + "fullyQualifiedName": "PylonApi.CreateNewTag@1.0.0", + "description": "Create a new tag within the system.\n\nThis tool is used to create a new tag by sending a POST request to the /tags endpoint. It should be called when a user wants to add a new tag to the system for organizational or categorization purposes.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateNewTag", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"New Tag\",\"description\":\"This is a new tag for organization purposes.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewTeam", + "qualifiedName": "PylonApi.CreateNewTeam", + "fullyQualifiedName": "PylonApi.CreateNewTeam@1.0.0", + "description": "Create a new team for collaboration.\n\nUse this tool to create a new team on the platform, facilitating collaboration and organization. It returns details about the newly created team.", + "parameters": [ + { + "name": "team_name", + "type": "string", + "required": false, + "description": "The name to assign to the newly created team.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids_to_add", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of user IDs to include in the new team. Each user ID should be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateNewTeam", + "parameters": { + "team_name": { + "value": "Development Team", + "type": "string", + "required": false + }, + "user_ids_to_add": { + "value": ["user123", "user456", "user789"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateRouteRedirect", + "qualifiedName": "PylonApi.CreateRouteRedirect", + "fullyQualifiedName": "PylonApi.CreateRouteRedirect@1.0.0", + "description": "Create a new route redirect for a knowledge base.\n\n This tool is used to create a new route redirect within a specified knowledge base. It should be called when you need to add a redirect to manage or alter the routing within a knowledge base.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "knowledge_base_id", + "type": "string", + "required": false, + "description": "The unique identifier for the knowledge base where the route redirect will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateRouteRedirect'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateRouteRedirect", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "knowledge_base_id": { + "value": "kb_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"old_route\":\"/old-path\",\"new_route\":\"/new-path\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTask", + "qualifiedName": "PylonApi.CreateTask", + "fullyQualifiedName": "PylonApi.CreateTask@1.0.0", + "description": "Create a new task with specified parameters.\n\nUse this tool to create a task. It should be called when a new task needs to be added to the system, specifying necessary parameters.", + "parameters": [ + { + "name": "task_title", + "type": "string", + "required": true, + "description": "The title of the task to be created. It should summarize the task clearly and concisely.", + "enum": null, + "inferrable": true + }, + { + "name": "account_id_for_task", + "type": "string", + "required": false, + "description": "Specify the Account ID associated with this task.", + "enum": null, + "inferrable": true + }, + { + "name": "make_customer_portal_visible", + "type": "boolean", + "required": false, + "description": "Set to true to make the task visible on the customer portal, false to hide it.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone_id", + "type": "string", + "required": false, + "description": "Unique identifier for the milestone associated with the task.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Unique identifier for the project to which this task belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "task_assignee_id", + "type": "string", + "required": false, + "description": "The ID of the user to whom the task is assigned. It should be a valid user ID in the system.", + "enum": null, + "inferrable": true + }, + { + "name": "task_body_html", + "type": "string", + "required": false, + "description": "HTML content for the task body. Provide detailed information or instructions here using HTML formatting.", + "enum": null, + "inferrable": true + }, + { + "name": "task_due_date", + "type": "string", + "required": false, + "description": "Due date for the task, formatted in RFC 3339. Specify the date by which the task should be completed.", + "enum": null, + "inferrable": true + }, + { + "name": "task_status", + "type": "string", + "required": false, + "description": "Set the task's current status: 'not_started', 'in_progress', or 'completed'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateTask", + "parameters": { + "task_title": { + "value": "Implement User Authentication", + "type": "string", + "required": true + }, + "account_id_for_task": { + "value": "123456", + "type": "string", + "required": false + }, + "make_customer_portal_visible": { + "value": true, + "type": "boolean", + "required": false + }, + "milestone_id": { + "value": "milestone_78910", + "type": "string", + "required": false + }, + "project_id": { + "value": "project_111213", + "type": "string", + "required": false + }, + "task_assignee_id": { + "value": "user_141516", + "type": "string", + "required": false + }, + "task_body_html": { + "value": "

This task involves implementing authentication features for the user.

", + "type": "string", + "required": false + }, + "task_due_date": { + "value": "2023-11-15T12:00:00Z", + "type": "string", + "required": false + }, + "task_status": { + "value": "not_started", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTrainingDataConfig", + "qualifiedName": "PylonApi.CreateTrainingDataConfig", + "fullyQualifiedName": "PylonApi.CreateTrainingDataConfig@1.0.0", + "description": "Create a new training data configuration.\n\nCall this tool to set up a new training data configuration for your application. It is used when you need to initialize or update your training data setup.", + "parameters": [ + { + "name": "training_data_name", + "type": "string", + "required": false, + "description": "The name of the training data container to be created.", + "enum": null, + "inferrable": true + }, + { + "name": "training_data_visibility", + "type": "string", + "required": false, + "description": "Specifies who can access the training data. Valid options: \"everyone\", \"user_only\", \"ai_agent_only\". Defaults to \"everyone\".", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTrainingData'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.CreateTrainingDataConfig", + "parameters": { + "training_data_name": { + "value": "customer_feedback_dataset", + "type": "string", + "required": false + }, + "training_data_visibility": { + "value": "user_only", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAccount", + "qualifiedName": "PylonApi.DeleteAccount", + "fullyQualifiedName": "PylonApi.DeleteAccount@1.0.0", + "description": "Delete an existing account.\n\nThis tool deletes an existing account based on the provided account ID. Call this tool when you need to permanently remove an account.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The ID or external ID of the account to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.DeleteAccount", + "parameters": { + "account_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAccountHighlight", + "qualifiedName": "PylonApi.DeleteAccountHighlight", + "fullyQualifiedName": "PylonApi.DeleteAccountHighlight@1.0.0", + "description": "Delete a specific highlight from an account.\n\nUse this tool to delete a specific highlight by providing the account ID and highlight ID. It should be called when a user wants to remove a highlight linked to an account.", + "parameters": [ + { + "name": "account_identifier", + "type": "string", + "required": true, + "description": "The ID or external ID of the account that the highlight belongs to. Can be a UUID or any string.", + "enum": null, + "inferrable": true + }, + { + "name": "highlight_id", + "type": "string", + "required": true, + "description": "The unique ID of the highlight you intend to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteAccountHighlight'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.DeleteAccountHighlight", + "parameters": { + "account_identifier": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "highlight_id": { + "value": "highlight_789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteArticle", + "qualifiedName": "PylonApi.DeleteArticle", + "fullyQualifiedName": "PylonApi.DeleteArticle@1.0.0", + "description": "Delete an existing article from a knowledge base.\n\nCall this tool to remove an article from a knowledge base by specifying the knowledge base and article IDs.", + "parameters": [ + { + "name": "article_id", + "type": "string", + "required": true, + "description": "The ID of the article that needs to be deleted from the knowledge base.", + "enum": null, + "inferrable": true + }, + { + "name": "knowledge_base_id", + "type": "string", + "required": true, + "description": "The KnowledgeBaseID of the article to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteArticle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.DeleteArticle", + "parameters": { + "article_id": { + "value": "12345", + "type": "string", + "required": true + }, + "knowledge_base_id": { + "value": "kb_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteContact", + "qualifiedName": "PylonApi.DeleteContact", + "fullyQualifiedName": "PylonApi.DeleteContact@1.0.0", + "description": "Delete an existing contact by ID.\n\nThis tool deletes a contact by its ID. It should be called when a user needs to remove a contact from the system.", + "parameters": [ + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "The ID of the contact to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.DeleteContact", + "parameters": { + "contact_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteExistingProject", + "qualifiedName": "PylonApi.DeleteExistingProject", + "fullyQualifiedName": "PylonApi.DeleteExistingProject@1.0.0", + "description": "Delete an existing project using its ID.\n\nUse this tool to delete an existing project by providing the project ID. It allows you to manage and remove projects that are no longer needed.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.DeleteExistingProject", + "parameters": { + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteExistingTag", + "qualifiedName": "PylonApi.DeleteExistingTag", + "fullyQualifiedName": "PylonApi.DeleteExistingTag@1.0.0", + "description": "Delete an existing tag by ID.\n\nUse this tool to delete an existing tag by specifying its ID. It confirms whether the deletion was successful.", + "parameters": [ + { + "name": "tag_id", + "type": "string", + "required": true, + "description": "The unique identifier of the tag to delete. Provide this ID to specify which tag should be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.DeleteExistingTag", + "parameters": { + "tag_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteIssue", + "qualifiedName": "PylonApi.DeleteIssue", + "fullyQualifiedName": "PylonApi.DeleteIssue@1.0.0", + "description": "Delete an existing issue by ID.\n\nUse this tool to delete an issue from the system by providing its ID. It is ideal for scenarios where issues need to be managed or cleaned up.", + "parameters": [ + { + "name": "issue_id", + "type": "string", + "required": true, + "description": "The unique identifier of the issue to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteIssue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.DeleteIssue", + "parameters": { + "issue_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteMilestone", + "qualifiedName": "PylonApi.DeleteMilestone", + "fullyQualifiedName": "PylonApi.DeleteMilestone@1.0.0", + "description": "Delete a specific milestone using its ID.\n\nUse this tool to remove a milestone by providing its unique ID. This operation is irreversible and should be used when a milestone is no longer needed.", + "parameters": [ + { + "name": "milestone_id", + "type": "string", + "required": true, + "description": "The unique ID of the milestone to be deleted. Ensure it is correct as this action is irreversible.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteMilestone'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.DeleteMilestone", + "parameters": { + "milestone_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTask", + "qualifiedName": "PylonApi.DeleteTask", + "fullyQualifiedName": "PylonApi.DeleteTask@1.0.0", + "description": "Delete an existing task by ID.\n\nUse this tool to delete a specific task by its ID. Call it when you need to remove a task permanently from the system.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique identifier of the task to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.DeleteTask", + "parameters": { + "task_id": { + "value": "abc123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTrainingDataDocuments", + "qualifiedName": "PylonApi.DeleteTrainingDataDocuments", + "fullyQualifiedName": "PylonApi.DeleteTrainingDataDocuments@1.0.0", + "description": "Deletes documents from a training data configuration.\n\nUse this tool to delete documents from a specific training data configuration by providing the relevant ID. This tool is helpful when managing or updating data sets for training purposes.", + "parameters": [ + { + "name": "training_data_id", + "type": "string", + "required": true, + "description": "The ID of the training data from which documents will be deleted. Provide this to specify the exact dataset.", + "enum": null, + "inferrable": true + }, + { + "name": "document_ids_to_delete", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of document IDs that need to be deleted from the training data configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "external_ids_to_delete", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of external IDs to delete from the training data configuration.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTrainingDataDocuments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.DeleteTrainingDataDocuments", + "parameters": { + "training_data_id": { + "value": "abc123-def456", + "type": "string", + "required": true + }, + "document_ids_to_delete": { + "value": ["doc789", "doc1011"], + "type": "array", + "required": false + }, + "external_ids_to_delete": { + "value": ["ext123", "ext456"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchAllTags", + "qualifiedName": "PylonApi.FetchAllTags", + "fullyQualifiedName": "PylonApi.FetchAllTags@1.0.0", + "description": "Retrieve all available tags.\n\nUse this tool to obtain a comprehensive list of all tags. It is ideal for scenarios where you need to display or manage tags.", + "parameters": [], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.FetchAllTags", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchTeamList", + "qualifiedName": "PylonApi.FetchTeamList", + "fullyQualifiedName": "PylonApi.FetchTeamList@1.0.0", + "description": "Retrieve the list of available teams.\n\nUse this tool to get a list of all teams from the service. Useful for displaying team information or selecting a team from the list.", + "parameters": [], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTeams'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.FetchTeamList", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAccountInfo", + "qualifiedName": "PylonApi.GetAccountInfo", + "fullyQualifiedName": "PylonApi.GetAccountInfo@1.0.0", + "description": "Retrieve an account's details using its ID or external ID.\n\nCall this tool to obtain detailed information about an account by providing either the account ID or external ID.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The ID or external ID of the account to fetch.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetAccountInfo", + "parameters": { + "account_id": { + "value": "12345-abcde-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAccountList", + "qualifiedName": "PylonApi.GetAccountList", + "fullyQualifiedName": "PylonApi.GetAccountList@1.0.0", + "description": "Retrieve a list of accounts from the service.\n\nThis tool fetches a complete list of accounts from the Pylon service. It should be called when you need to obtain account information.", + "parameters": [ + { + "name": "account_fetch_limit", + "type": "integer", + "required": true, + "description": "Specify the number of accounts to fetch, from 1 to 999. Defaults to 100 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string representing the cursor for pagination. Use this to fetch the next set of accounts.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAccounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetAccountList", + "parameters": { + "account_fetch_limit": { + "value": 50, + "type": "integer", + "required": true + }, + "pagination_cursor": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAllContacts", + "qualifiedName": "PylonApi.GetAllContacts", + "fullyQualifiedName": "PylonApi.GetAllContacts@1.0.0", + "description": "Retrieve all contacts from the service.\n\nThis tool retrieves all contacts using the Pylon service. It should be called when there's a need to fetch a complete list of contacts from the service.", + "parameters": [], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetContacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetAllContacts", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAllCustomFields", + "qualifiedName": "PylonApi.GetAllCustomFields", + "fullyQualifiedName": "PylonApi.GetAllCustomFields@1.0.0", + "description": "Retrieve all custom fields from the system.\n\nThis tool is used to get a complete list of custom fields. It should be called when you need information about available custom fields.", + "parameters": [ + { + "name": "custom_field_object_type", + "type": "string", + "required": true, + "description": "Specify the object type for custom fields. Options: \"account\", \"issue\", or \"contact\".", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomFields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetAllCustomFields", + "parameters": { + "custom_field_object_type": { + "value": "issue", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCollectionById", + "qualifiedName": "PylonApi.GetCollectionById", + "fullyQualifiedName": "PylonApi.GetCollectionById@1.0.0", + "description": "Retrieve a specific collection using its ID.\n\nUse this tool to obtain detailed information about a particular collection by supplying the collection ID. The collection belongs to a specific knowledge base. Ideal for retrieving specific datasets or information collections within larger systems.", + "parameters": [ + { + "name": "collection_id", + "type": "string", + "required": true, + "description": "The unique ID of the collection to be retrieved from the knowledge base.", + "enum": null, + "inferrable": true + }, + { + "name": "knowledge_base_id", + "type": "string", + "required": true, + "description": "The ID of the knowledge base to which the collection belongs.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCollection'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetCollectionById", + "parameters": { + "collection_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "knowledge_base_id": { + "value": "98765-zyxwv-43210-lmnop", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetContactById", + "qualifiedName": "PylonApi.GetContactById", + "fullyQualifiedName": "PylonApi.GetContactById@1.0.0", + "description": "Retrieve contact details using the contact ID.\n\nThis tool fetches and returns contact details by querying with a specified contact ID. Use it when you need to obtain specific contact information.", + "parameters": [ + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "The unique identifier for the contact to fetch details.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_accounts_to_fetch", + "type": "integer", + "required": true, + "description": "Specifies the number of accounts to fetch. Must be between 1 and 999. Defaults to 100 if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string representing the cursor for pagination purposes, used to fetch the next set of results in a paginated response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetContactById", + "parameters": { + "contact_id": { + "value": "12345", + "type": "string", + "required": true + }, + "number_of_accounts_to_fetch": { + "value": 10, + "type": "integer", + "required": true + }, + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomActivityTypes", + "qualifiedName": "PylonApi.GetCustomActivityTypes", + "fullyQualifiedName": "PylonApi.GetCustomActivityTypes@1.0.0", + "description": "Retrieve a list of custom activity types.\n\nUse this tool to get a list of custom activity types that are available. It should be called when there's a need to know what custom activity types exist.", + "parameters": [], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetActivityTypes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetCustomActivityTypes", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomField", + "qualifiedName": "PylonApi.GetCustomField", + "fullyQualifiedName": "PylonApi.GetCustomField@1.0.0", + "description": "Retrieve a custom field by its ID.\n\nUse this tool to obtain details of a specific custom field using its unique identifier.", + "parameters": [ + { + "name": "custom_field_id", + "type": "string", + "required": true, + "description": "The unique identifier of the custom field to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetCustomField", + "parameters": { + "custom_field_id": { + "value": "CF123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIssueById", + "qualifiedName": "PylonApi.GetIssueById", + "fullyQualifiedName": "PylonApi.GetIssueById@1.0.0", + "description": "Retrieve issue details using its ID or number.\n\nUse this tool to access details of an issue by providing its specific ID or number. Ideal for tasks requiring detailed issue information retrieval in issue tracking systems.", + "parameters": [ + { + "name": "issue_id", + "type": "string", + "required": true, + "description": "The unique ID or number of the issue you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetIssueById", + "parameters": { + "issue_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIssueFollowers", + "qualifiedName": "PylonApi.GetIssueFollowers", + "fullyQualifiedName": "PylonApi.GetIssueFollowers@1.0.0", + "description": "Get followers of a specific issue to manage participation.\n\nThis tool retrieves the list of users who are following a specified issue. Use this tool when you need to know who is engaging with or interested in updates about an issue.", + "parameters": [ + { + "name": "issue_id", + "type": "string", + "required": true, + "description": "The unique ID or number of the issue to retrieve followers for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssueFollowers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetIssueFollowers", + "parameters": { + "issue_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIssueMessages", + "qualifiedName": "PylonApi.GetIssueMessages", + "fullyQualifiedName": "PylonApi.GetIssueMessages@1.0.0", + "description": "Retrieve messages for a specific issue.\n\nThis tool is used to obtain all messages associated with a particular issue, identified by its ID.", + "parameters": [ + { + "name": "issue_id", + "type": "string", + "required": true, + "description": "The unique ID of the issue for which to retrieve messages.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssueMessages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetIssueMessages", + "parameters": { + "issue_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIssuesList", + "qualifiedName": "PylonApi.GetIssuesList", + "fullyQualifiedName": "PylonApi.GetIssuesList@1.0.0", + "description": "Retrieve a list of issues.\n\nCall this tool to get a list of issues from the Pylon service, useful for tracking or managing tasks and bugs.", + "parameters": [ + { + "name": "end_time_rfc3339", + "type": "string", + "required": true, + "description": "The end time in RFC3339 format for the issue retrieval range, must be within 30 days of the start time.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_for_issue_range", + "type": "string", + "required": true, + "description": "The start time in RFC3339 format to query issues. Duration with end_time must be <= 30 days.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssues'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetIssuesList", + "parameters": { + "end_time_rfc3339": { + "value": "2023-10-31T23:59:59Z", + "type": "string", + "required": true + }, + "start_time_for_issue_range": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIssueStatuses", + "qualifiedName": "PylonApi.GetIssueStatuses", + "fullyQualifiedName": "PylonApi.GetIssueStatuses@1.0.0", + "description": "Retrieve all issue statuses from the system.\n\nUse this tool to get a complete list of issue statuses available in the project management system. This can help with tracking and managing project workflows efficiently.", + "parameters": [], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssueStatuses'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetIssueStatuses", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIssueThreads", + "qualifiedName": "PylonApi.GetIssueThreads", + "fullyQualifiedName": "PylonApi.GetIssueThreads@1.0.0", + "description": "Retrieve threads for a specific issue.\n\nCall this tool to get all threads associated with a particular issue using its ID. Useful for tracking conversations or discussions related to an issue.", + "parameters": [ + { + "name": "issue_id", + "type": "string", + "required": true, + "description": "The unique ID of the issue for which threads need to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssueThreads'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetIssueThreads", + "parameters": { + "issue_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetKnowledgeBaseById", + "qualifiedName": "PylonApi.GetKnowledgeBaseById", + "fullyQualifiedName": "PylonApi.GetKnowledgeBaseById@1.0.0", + "description": "Retrieve a knowledge base using its ID.\n\nUse this tool to fetch information about a specific knowledge base by providing its ID.", + "parameters": [ + { + "name": "knowledge_base_id", + "type": "string", + "required": true, + "description": "The unique identifier for the knowledge base to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetKnowledgeBase'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetKnowledgeBaseById", + "parameters": { + "knowledge_base_id": { + "value": "12345-abcd-67890-efgh", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetKnowledgeBases", + "qualifiedName": "PylonApi.GetKnowledgeBases", + "fullyQualifiedName": "PylonApi.GetKnowledgeBases@1.0.0", + "description": "Retrieve all available knowledge bases.\n\nThis tool is called to get a list of all knowledge bases from the Pylon service.", + "parameters": [], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetKnowledgeBases'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetKnowledgeBases", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOrganizationDetails", + "qualifiedName": "PylonApi.GetOrganizationDetails", + "fullyQualifiedName": "PylonApi.GetOrganizationDetails@1.0.0", + "description": "Retrieve details of the current organization.\n\nUse this tool to get information about the organization linked to the given API token, like name, address, and other relevant details.", + "parameters": [], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetMe'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetOrganizationDetails", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTagById", + "qualifiedName": "PylonApi.GetTagById", + "fullyQualifiedName": "PylonApi.GetTagById@1.0.0", + "description": "Retrieve tag details using a specified ID.", + "parameters": [ + { + "name": "tag_id", + "type": "string", + "required": true, + "description": "The unique identifier for the tag to retrieve details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetTagById", + "parameters": { + "tag_id": { + "value": "12345-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTeamById", + "qualifiedName": "PylonApi.GetTeamById", + "fullyQualifiedName": "PylonApi.GetTeamById@1.0.0", + "description": "Retrieve team details using the team's ID.\n\nUse this tool to get detailed information about a team by specifying its unique ID.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique ID of the team to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetTeamById", + "parameters": { + "team_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTicketForm", + "qualifiedName": "PylonApi.GetTicketForm", + "fullyQualifiedName": "PylonApi.GetTicketForm@1.0.0", + "description": "Retrieve detailed information about a ticket form.\n\nCall this tool to obtain detailed information for a specific ticket form by providing its ID.", + "parameters": [ + { + "name": "ticket_form_id", + "type": "string", + "required": true, + "description": "The unique ID of the ticket form to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTicketForm'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetTicketForm", + "parameters": { + "ticket_form_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTicketForms", + "qualifiedName": "PylonApi.GetTicketForms", + "fullyQualifiedName": "PylonApi.GetTicketForms@1.0.0", + "description": "Retrieve a list of ticket forms available.\n\nThis tool fetches a list of ticket forms, which can be used to understand the structure of available forms for managing tickets. It should be called when you need to review or select from ticket forms.", + "parameters": [], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTicketForms'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetTicketForms", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUserById", + "qualifiedName": "PylonApi.GetUserById", + "fullyQualifiedName": "PylonApi.GetUserById@1.0.0", + "description": "Retrieve user details using their unique ID.\n\nUse this tool to get detailed information about a user by providing their unique ID.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique ID of the user to fetch details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetUserById", + "parameters": { + "user_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUserRoles", + "qualifiedName": "PylonApi.GetUserRoles", + "fullyQualifiedName": "PylonApi.GetUserRoles@1.0.0", + "description": "Get a list of all user roles.\n\nUse this tool to retrieve a comprehensive list of all user roles. It is useful for managing and understanding user permissions.", + "parameters": [], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetUserRoles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.GetUserRoles", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ImportIssue", + "qualifiedName": "PylonApi.ImportIssue", + "fullyQualifiedName": "PylonApi.ImportIssue@1.0.0", + "description": "Import an issue into the system.\n\nThis tool is used to import an issue into the Pylon system. Use it when you need to add new issues by importing them through a specified format or integration.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ImportIssue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.ImportIssue", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\":\"Sample Issue\",\"description\":\"This is a test issue for importing.\",\"priority\":\"high\",\"status\":\"open\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ImportMessagesToIssue", + "qualifiedName": "PylonApi.ImportMessagesToIssue", + "fullyQualifiedName": "PylonApi.ImportMessagesToIssue@1.0.0", + "description": "Import messages into an existing issue.\n\n Use this tool to import new messages onto an existing issue, facilitating better organization and tracking within issue management systems.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "issue_id", + "type": "string", + "required": false, + "description": "The unique ID of the existing issue to which messages will be imported. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ImportMessages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.ImportMessagesToIssue", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "issue_id": { + "value": "issue-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"messages\":[{\"author\":\"user1\",\"content\":\"This is a test message.\"},{\"author\":\"user2\",\"content\":\"Another message comes in.\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ImportNewContact", + "qualifiedName": "PylonApi.ImportNewContact", + "fullyQualifiedName": "PylonApi.ImportNewContact@1.0.0", + "description": "Import a new contact into the system.\n\nUse this tool to import a new contact into the system whenever you need to add contact information.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ImportContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.ImportNewContact", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"firstName\":\"John\", \"lastName\":\"Doe\", \"email\":\"john.doe@example.com\", \"phone\":\"123-456-7890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "LinkExternalIssue", + "qualifiedName": "PylonApi.LinkExternalIssue", + "fullyQualifiedName": "PylonApi.LinkExternalIssue@1.0.0", + "description": "Link or unlink external issues to an internal issue.\n\n Use this tool to link external issues to an internal issue or unlink them by specifying the operation type. Ideal for managing issue relationships between different systems.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "issue_identifier", + "type": "string", + "required": false, + "description": "The unique ID or number of the internal issue to which external issues should be linked or unlinked. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'LinkExternalIssue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.LinkExternalIssue", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "issue_identifier": { + "value": "ISSUE-12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\":\"link\",\"external_issues\":[{\"provider\":\"GitHub\",\"issue_id\":\"GH-67890\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCollectionsInKnowledgeBase", + "qualifiedName": "PylonApi.ListCollectionsInKnowledgeBase", + "fullyQualifiedName": "PylonApi.ListCollectionsInKnowledgeBase@1.0.0", + "description": "List all collections in a knowledge base.\n\nUse this tool to retrieve all collections within a specific knowledge base. Useful for accessing organized information in structured formats.", + "parameters": [ + { + "name": "knowledge_base_id", + "type": "string", + "required": true, + "description": "The ID of the knowledge base to list the collections from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCollections'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.ListCollectionsInKnowledgeBase", + "parameters": { + "knowledge_base_id": { + "value": "kb_123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListTrainingData", + "qualifiedName": "PylonApi.ListTrainingData", + "fullyQualifiedName": "PylonApi.ListTrainingData@1.0.0", + "description": "Fetches all training data configurations for the organization.\n\nUse this tool to retrieve a comprehensive list of training data configurations associated with the organization. Ideal for managing or reviewing training datasets.", + "parameters": [], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListTrainingData'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.ListTrainingData", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListUsers", + "qualifiedName": "PylonApi.ListUsers", + "fullyQualifiedName": "PylonApi.ListUsers@1.0.0", + "description": "Fetches a list of users.\n\nUse this tool to retrieve a list of all users. It provides an overview of the users available in the system.", + "parameters": [], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetUsers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.ListUsers", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RedactMessage", + "qualifiedName": "PylonApi.RedactMessage", + "fullyQualifiedName": "PylonApi.RedactMessage@1.0.0", + "description": "Removes or hides the content of a specified message.\n\nUse this tool to redact (remove or hide) the content of a message identified by a specific message ID within an issue. This is useful for maintaining privacy or correcting errors.", + "parameters": [ + { + "name": "issue_id", + "type": "string", + "required": true, + "description": "The ID of the issue associated with the message to be redacted.", + "enum": null, + "inferrable": true + }, + { + "name": "message_id", + "type": "string", + "required": true, + "description": "The unique identifier of the message to be redacted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RedactMessage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.RedactMessage", + "parameters": { + "issue_id": { + "value": "ISSUE-12345", + "type": "string", + "required": true + }, + "message_id": { + "value": "MSG-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTrainingDataConfiguration", + "qualifiedName": "PylonApi.RetrieveTrainingDataConfiguration", + "fullyQualifiedName": "PylonApi.RetrieveTrainingDataConfiguration@1.0.0", + "description": "Retrieve a training data configuration by ID.\n\nThis tool retrieves the details of a specific training data configuration using its unique ID. It should be called when you need to access the configuration settings or specifications for a particular training dataset.", + "parameters": [ + { + "name": "training_data_id", + "type": "string", + "required": true, + "description": "The unique ID of the training data to retrieve its configuration.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTrainingData'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.RetrieveTrainingDataConfiguration", + "parameters": { + "training_data_id": { + "value": "abc12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchAccounts", + "qualifiedName": "PylonApi.SearchAccounts", + "fullyQualifiedName": "PylonApi.SearchAccounts@1.0.0", + "description": "Search and filter accounts using various criteria.\n\nThis tool allows searching and filtering of accounts with specific criteria such as domains, tags, name, external IDs, and custom fields. It supports operators like 'contains', 'equals', 'in', 'not_in', and others, enabling detailed account queries.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchAccounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.SearchAccounts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filter\":{\"domain\":{\"contains\":\"example.com\"},\"tags\":{\"in\":[\"tag1\",\"tag2\"]}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchContacts", + "qualifiedName": "PylonApi.SearchContacts", + "fullyQualifiedName": "PylonApi.SearchContacts@1.0.0", + "description": "Search for contacts using various filter criteria.\n\nThis tool allows you to search for contacts by applying filters on fields such as id, email, custom fields, and account_id. Use it to find specific contacts based on these criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchContacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.SearchContacts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filters\":{\"email\":\"example@example.com\",\"account_id\":\"12345\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchIssuesByFilters", + "qualifiedName": "PylonApi.SearchIssuesByFilters", + "fullyQualifiedName": "PylonApi.SearchIssuesByFilters@1.0.0", + "description": "Search for issues using various filters and criteria.\n\nUse this tool to search for issues by applying filters such as creation date, account ID, requester ID, status, tags, title, and more. Suitable for retrieving specific issues according to predefined criteria and operators.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchIssues'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.SearchIssuesByFilters", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filters\":{\"creation_date\":{\"from\":\"2023-01-01\",\"to\":\"2023-12-31\"},\"account_id\":\"12345\",\"status\":\"open\",\"tags\":[\"bug\",\"urgent\"],\"title\":\"Issue with API\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchUsersByEmail", + "qualifiedName": "PylonApi.SearchUsersByEmail", + "fullyQualifiedName": "PylonApi.SearchUsersByEmail@1.0.0", + "description": "Search for users by email with filter options.\n\nUse this tool to find users by filtering their email with options such as 'equals', 'in', or 'not_in'. It should be called when there's a need to retrieve user information based on specific email criteria.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchUsers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.SearchUsersByEmail", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"filter\":{\"email\":{\"equals\":\"user@example.com\"}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SnoozeIssue", + "qualifiedName": "PylonApi.SnoozeIssue", + "fullyQualifiedName": "PylonApi.SnoozeIssue@1.0.0", + "description": "Temporarily pause notifications for an issue.\n\n Use this tool to snooze notifications for a specific issue temporarily. It is helpful when you want to focus elsewhere without getting alerts for the issue.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "issue_id", + "type": "string", + "required": false, + "description": "The ID or number of the issue to snooze. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SnoozeIssue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.SnoozeIssue", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "issue_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"snooze_duration\":\"1h\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAccount", + "qualifiedName": "PylonApi.UpdateAccount", + "fullyQualifiedName": "PylonApi.UpdateAccount@1.0.0", + "description": "Update details of an existing account.\n\n Use this tool to modify the information of an existing account by providing the account ID and new details. It should be called when account information needs to be updated.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "account_id", + "type": "string", + "required": false, + "description": "The ID or external ID of the account to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.UpdateAccount", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "account_id": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"firstName\":\"John\",\"lastName\":\"Doe\",\"email\":\"john.doe@example.com\",\"phone\":\"123-456-7890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAccountHighlight", + "qualifiedName": "PylonApi.UpdateAccountHighlight", + "fullyQualifiedName": "PylonApi.UpdateAccountHighlight@1.0.0", + "description": "Updates the highlight for a specified account.\n\nUse this tool to update the highlight information for a given account by specifying either the internal account ID or an external ID. Appropriate when modifications to account highlights are needed.", + "parameters": [ + { + "name": "account_identifier", + "type": "string", + "required": true, + "description": "The internal account ID (UUID) or external ID (any string) of the account associated with the highlight.", + "enum": null, + "inferrable": true + }, + { + "name": "highlight_id", + "type": "string", + "required": true, + "description": "The unique identifier of the highlight you wish to update. Ensure this accurately corresponds to the highlight needing modification.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_expiration_timestamp", + "type": "string", + "required": false, + "description": "The new expiration timestamp for the highlight in RFC3339 format.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_html_content", + "type": "string", + "required": false, + "description": "The updated HTML content for the account highlight.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateAccountHighlight'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.UpdateAccountHighlight", + "parameters": { + "account_identifier": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": true + }, + "highlight_id": { + "value": "highlight-12345", + "type": "string", + "required": true + }, + "updated_expiration_timestamp": { + "value": "2023-12-31T23:59:59Z", + "type": "string", + "required": false + }, + "updated_html_content": { + "value": "Updated Highlight Content", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateArticle", + "qualifiedName": "PylonApi.UpdateArticle", + "fullyQualifiedName": "PylonApi.UpdateArticle@1.0.0", + "description": "Update the content of an existing article.\n\n Use this tool to modify the content or details of an existing article in a knowledge base when updates are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "knowledge_base_id", + "type": "string", + "required": false, + "description": "The identifier for the knowledge base where the article to be updated is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "article_id", + "type": "string", + "required": false, + "description": "Specify the unique identifier of the article you want to update in the knowledge base. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateArticle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.UpdateArticle", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "knowledge_base_id": { + "value": "kb_12345", + "type": "string", + "required": false + }, + "article_id": { + "value": "art_67890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\": \"Updated Article Title\", \"content\": \"This is the updated content of the article.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateContactInfo", + "qualifiedName": "PylonApi.UpdateContactInfo", + "fullyQualifiedName": "PylonApi.UpdateContactInfo@1.0.0", + "description": "Updates an existing contact's information.\n\n Use this tool to update the details of an existing contact when modifications are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "contact_id", + "type": "string", + "required": false, + "description": "The unique identifier of the contact to be updated. This should match the existing contact's ID in the system. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.UpdateContactInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "contact_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"John Doe\", \"email\": \"john.doe@example.com\", \"phone\": \"123-456-7890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCustomField", + "qualifiedName": "PylonApi.UpdateCustomField", + "fullyQualifiedName": "PylonApi.UpdateCustomField@1.0.0", + "description": "Update a custom field in a record.\n\n\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "custom_field_id", + "type": "string", + "required": false, + "description": "The unique identifier for the custom field to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.UpdateCustomField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "custom_field_id": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"field_name\":\"updated_value\",\"field_type\":\"text\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateExistingTag", + "qualifiedName": "PylonApi.UpdateExistingTag", + "fullyQualifiedName": "PylonApi.UpdateExistingTag@1.0.0", + "description": "Update an existing tag's information.\n\nUse this tool to modify the details of an already existing tag. It should be called when changes to tag attributes are needed.", + "parameters": [ + { + "name": "tag_id", + "type": "string", + "required": true, + "description": "The unique identifier of the tag that needs to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_hex_color", + "type": "string", + "required": false, + "description": "The hex code representing the tag's color. Must be a valid six-digit hexadecimal value prefixed with '#'.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_name", + "type": "string", + "required": false, + "description": "The new name for the tag to be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.UpdateExistingTag", + "parameters": { + "tag_id": { + "value": "12345", + "type": "string", + "required": true + }, + "tag_hex_color": { + "value": "#FF5733", + "type": "string", + "required": false + }, + "tag_name": { + "value": "Updated Tag Name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateExistingTeam", + "qualifiedName": "PylonApi.UpdateExistingTeam", + "fullyQualifiedName": "PylonApi.UpdateExistingTeam@1.0.0", + "description": "Update details of an existing team.\n\nUse this tool to modify the information of an existing team. Ideal for updating team names, members, or other details.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The ID of the team to update.", + "enum": null, + "inferrable": true + }, + { + "name": "team_member_user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The list of user IDs to set as team members. This updates the team to include only these users.", + "enum": null, + "inferrable": true + }, + { + "name": "team_name", + "type": "string", + "required": false, + "description": "The new name for the team to be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.UpdateExistingTeam", + "parameters": { + "team_id": { + "value": "team_12345", + "type": "string", + "required": true + }, + "team_member_user_ids": { + "value": ["user_67890", "user_54321"], + "type": "array", + "required": false + }, + "team_name": { + "value": "Updated Team Name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateIssue", + "qualifiedName": "PylonApi.UpdateIssue", + "fullyQualifiedName": "PylonApi.UpdateIssue@1.0.0", + "description": "Update details of an existing issue.\n\n Use this tool to modify information for an already existing issue when changes or corrections are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "issue_id", + "type": "string", + "required": false, + "description": "The ID of the issue to update. This should be a string representing the unique identifier for the issue. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateIssue'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.UpdateIssue", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "issue_id": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"resolved\",\"priority\":\"high\",\"comments\":[{\"text\":\"Issue has been fixed.\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateIssueFollowers", + "qualifiedName": "PylonApi.UpdateIssueFollowers", + "fullyQualifiedName": "PylonApi.UpdateIssueFollowers@1.0.0", + "description": "Add or remove followers for an issue.\n\nThis tool allows you to add or remove followers to a specific issue. Use it when managing the users who should receive notifications about updates on an issue. Set the operation field to \"remove\" to remove followers.", + "parameters": [ + { + "name": "issue_id", + "type": "string", + "required": true, + "description": "The ID or number of the issue to add or remove followers from.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_ids_to_add", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of contact IDs to add as followers to the issue. Each ID should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "update_operation", + "type": "string", + "required": false, + "description": "Specify 'add' to add followers or 'remove' to remove them.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids_to_add_as_followers", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of user IDs to add as followers to a specific issue.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AddIssueFollowers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.UpdateIssueFollowers", + "parameters": { + "issue_id": { + "value": "12345", + "type": "string", + "required": true + }, + "contact_ids_to_add": { + "value": ["contact1", "contact2"], + "type": "array", + "required": false + }, + "update_operation": { + "value": "add", + "type": "string", + "required": false + }, + "user_ids_to_add_as_followers": { + "value": ["user1", "user2", "user3"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateMilestone", + "qualifiedName": "PylonApi.UpdateMilestone", + "fullyQualifiedName": "PylonApi.UpdateMilestone@1.0.0", + "description": "Updates the details of a specific milestone.\n\nThis tool is used to update information for a specific milestone in a project, identified by its ID.", + "parameters": [ + { + "name": "milestone_id", + "type": "string", + "required": true, + "description": "The unique ID of the milestone to update.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone_due_date", + "type": "string", + "required": false, + "description": "The due date for the milestone in RFC 3339 format (e.g., 2023-10-21T00:00:00Z).", + "enum": null, + "inferrable": true + }, + { + "name": "milestone_name", + "type": "string", + "required": false, + "description": "The new name for the milestone you want to update.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateMilestone'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.UpdateMilestone", + "parameters": { + "milestone_id": { + "value": "milestone-1234", + "type": "string", + "required": true + }, + "milestone_due_date": { + "value": "2023-10-21T00:00:00Z", + "type": "string", + "required": false + }, + "milestone_name": { + "value": "Updated Milestone Name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateMultipleAccounts", + "qualifiedName": "PylonApi.UpdateMultipleAccounts", + "fullyQualifiedName": "PylonApi.UpdateMultipleAccounts@1.0.0", + "description": "Update multiple accounts simultaneously.\n\nUse this tool to update details for multiple accounts in one request. It is helpful for batch processing of account modifications.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateAccounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.UpdateMultipleAccounts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"accounts\":[{\"id\":\"12345\",\"status\":\"active\"},{\"id\":\"67890\",\"status\":\"suspended\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProject", + "qualifiedName": "PylonApi.UpdateProject", + "fullyQualifiedName": "PylonApi.UpdateProject@1.0.0", + "description": "Update the details of an existing project.\n\n Use this tool to modify the information of an existing project by providing the project ID and necessary updates.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier of the project to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_name", + "type": "string", + "required": false, + "description": "The new name for this project. Provide a descriptive title to identify the project. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_description_html", + "type": "string", + "required": false, + "description": "HTML formatted description for the project. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_rfc3339", + "type": "string", + "required": false, + "description": "The start date for the project, formatted in RFC 3339. This specifies when the project begins. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_end_date", + "type": "string", + "required": false, + "description": "The end date for the project in RFC 3339 format. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_owner_id", + "type": "string", + "required": false, + "description": "The unique identifier of the owner of this project. Required to assign an owner when updating a project. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "is_customer_portal_visible", + "type": "boolean", + "required": false, + "description": "Indicate if the project should be visible in the customer portal (true for visible, false for hidden). Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "is_project_archived", + "type": "boolean", + "required": false, + "description": "Set to True if the project is archived, False if it is active. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.UpdateProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345", + "type": "string", + "required": false + }, + "project_name": { + "value": "New Project Title", + "type": "string", + "required": false + }, + "project_description_html": { + "value": "

This is a detailed HTML description of the project.

", + "type": "string", + "required": false + }, + "start_date_rfc3339": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "project_end_date": { + "value": "2023-12-31T23:59:59Z", + "type": "string", + "required": false + }, + "project_owner_id": { + "value": "user_67890", + "type": "string", + "required": false + }, + "is_customer_portal_visible": { + "value": true, + "type": "boolean", + "required": false + }, + "is_project_archived": { + "value": false, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Project Title\",\"description\":\"This is a detailed HTML description of the project.\",\"start_date\":\"2023-10-01T00:00:00Z\",\"end_date\":\"2023-12-31T23:59:59Z\",\"owner_id\":\"user_67890\",\"customer_portal_visible\":true,\"archived\":false}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTask", + "qualifiedName": "PylonApi.UpdateTask", + "fullyQualifiedName": "PylonApi.UpdateTask@1.0.0", + "description": "Update the details of an existing task.\n\nUse this tool to modify the information of a specific task by providing its ID. Ideal for updating any details like status, description, or due date.", + "parameters": [ + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The unique ID of the task you want to update.", + "enum": null, + "inferrable": true + }, + { + "name": "assignee_id", + "type": "string", + "required": false, + "description": "The ID of the person assigned to this task. It should be a string representing a valid user ID within the system.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_portal_visible", + "type": "boolean", + "required": false, + "description": "Set to true to make the task visible on the customer portal. Accepts a boolean.", + "enum": null, + "inferrable": true + }, + { + "name": "milestone_identifier", + "type": "string", + "required": false, + "description": "Specify the Milestone ID associated with the task to update its milestone.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier of the project associated with this task. Required to specify which project's task is being updated.", + "enum": null, + "inferrable": true + }, + { + "name": "task_body_html", + "type": "string", + "required": false, + "description": "HTML content for the task's body. This defines the main description or details of the task.", + "enum": null, + "inferrable": true + }, + { + "name": "task_due_date", + "type": "string", + "required": false, + "description": "Due date for the task in RFC 3339 format, e.g., '2023-12-31T23:59:59Z'.", + "enum": null, + "inferrable": true + }, + { + "name": "task_status", + "type": "string", + "required": false, + "description": "Specify the task status: `not_started`, `in_progress`, or `completed`.", + "enum": null, + "inferrable": true + }, + { + "name": "task_title", + "type": "string", + "required": false, + "description": "The new title for the task. Provide a clear and concise title for better understanding.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.UpdateTask", + "parameters": { + "task_id": { + "value": "12345", + "type": "string", + "required": true + }, + "assignee_id": { + "value": "user_67890", + "type": "string", + "required": false + }, + "customer_portal_visible": { + "value": true, + "type": "boolean", + "required": false + }, + "milestone_identifier": { + "value": "milestone_abc", + "type": "string", + "required": false + }, + "project_id": { + "value": "project_xyz", + "type": "string", + "required": false + }, + "task_body_html": { + "value": "

Update the task details as per the new requirements.

", + "type": "string", + "required": false + }, + "task_due_date": { + "value": "2023-12-31T23:59:59Z", + "type": "string", + "required": false + }, + "task_status": { + "value": "in_progress", + "type": "string", + "required": false + }, + "task_title": { + "value": "Updated Task Title", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateUserProfile", + "qualifiedName": "PylonApi.UpdateUserProfile", + "fullyQualifiedName": "PylonApi.UpdateUserProfile@1.0.0", + "description": "Update a user's profile information.\n\nThis tool updates the information of a user identified by a specific ID. It should be called when changes to a user's profile are needed, such as updating personal details or contact information.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier of the user to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "user_role_id", + "type": "string", + "required": false, + "description": "The role ID to assign to the user.", + "enum": null, + "inferrable": true + }, + { + "name": "user_status", + "type": "string", + "required": false, + "description": "The updated status for the user. Options: `active`, `away`, or `out_of_office`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["PYLON_SECRET_TOKEN"], + "secretsInfo": [ + { + "name": "PYLON_SECRET_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "PylonApi.UpdateUserProfile", + "parameters": { + "user_id": { + "value": "12345", + "type": "string", + "required": true + }, + "user_role_id": { + "value": "67890", + "type": "string", + "required": false + }, + "user_status": { + "value": "active", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:40:20.227Z", + "summary": "# Arcade Toolkit Documentation Summary\n\nThe Arcade toolkit provides a robust set of tools for seamless interaction with the Pylon API, enabling developers to manage accounts, issues, and knowledge bases effectively. This toolkit allows developers to create, update, retrieve, and delete various resources within the Pylon ecosystem.\n\n## Capabilities\n- Create and manage accounts, issues, and custom fields.\n- Update details for existing records across multiple resource types.\n- Efficiently retrieve lists of users, accounts, and issues.\n- Implement search and filtering on diverse datasets.\n\n## Secrets\n- **Token**: PYLON_SECRET_TOKEN is required for API interactions." +} diff --git a/data/toolkits/reddit.json b/data/toolkits/reddit.json new file mode 100644 index 000000000..ff8ea5ecb --- /dev/null +++ b/data/toolkits/reddit.json @@ -0,0 +1,655 @@ +{ + "id": "Reddit", + "label": "Reddit", + "version": "1.1.1", + "description": "Arcade.dev LLM tools Reddit", + "metadata": { + "category": "social", + "iconUrl": "https://design-system.arcade.dev/icons/reddit.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/social-communication/reddit", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "reddit", + "allScopes": ["history", "identity", "read", "submit"] + }, + "tools": [ + { + "name": "CheckSubredditAccess", + "qualifiedName": "Reddit.CheckSubredditAccess", + "fullyQualifiedName": "Reddit.CheckSubredditAccess@1.1.1", + "description": "Checks whether the specified subreddit exists and also if it is accessible\nto the authenticated user.\n\nReturns:\n {\"exists\": True, \"accessible\": True} if the subreddit exists and is accessible.\n {\"exists\": True, \"accessible\": False} if the subreddit exists but is private or restricted.\n {\"exists\": False, \"accessible\": False} if the subreddit does not exist.", + "parameters": [ + { + "name": "subreddit", + "type": "string", + "required": true, + "description": "The name of the subreddit to check access for", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "reddit", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dict indicating whether the subreddit exists and is accessible to the authenticated user" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Reddit.CheckSubredditAccess", + "parameters": { + "subreddit": { + "value": "exampleSubreddit", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "reddit", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CommentOnPost", + "qualifiedName": "Reddit.CommentOnPost", + "fullyQualifiedName": "Reddit.CommentOnPost@1.1.1", + "description": "Comment on a Reddit post", + "parameters": [ + { + "name": "post_identifier", + "type": "string", + "required": true, + "description": "The identifier of the Reddit post. The identifier may be a reddit URL, a permalink, a fullname, or a post id.", + "enum": null, + "inferrable": true + }, + { + "name": "text", + "type": "string", + "required": true, + "description": "The body of the comment in markdown format", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "reddit", + "providerType": "oauth2", + "scopes": ["submit"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from Reddit after submission" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Reddit.CommentOnPost", + "parameters": { + "post_identifier": { + "value": "https://www.reddit.com/r/test/comments/abc123/example_post/", + "type": "string", + "required": true + }, + "text": { + "value": "This is a great post! I'm really interested in the topic you brought up.", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "reddit", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetContentOfMultiplePosts", + "qualifiedName": "Reddit.GetContentOfMultiplePosts", + "fullyQualifiedName": "Reddit.GetContentOfMultiplePosts@1.1.1", + "description": "Get the content (body) of multiple Reddit posts by their identifiers.\n\nEfficiently retrieve the content of multiple posts in a single request.\nAlways use this tool to retrieve more than one post's content.", + "parameters": [ + { + "name": "post_identifiers", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of Reddit post identifiers. The identifiers may be reddit URLs to the posts, permalinks to the posts, fullnames for the posts, or post ids. Must be less than or equal to 100 identifiers.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "reddit", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the content of multiple Reddit posts" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Reddit.GetContentOfMultiplePosts", + "parameters": { + "post_identifiers": { + "value": [ + "t3_abc123", + "t3_def456", + "t3_ghi789", + "https://www.reddit.com/r/example/comments/abc123/post_title_1/", + "https://www.reddit.com/r/example/comments/def456/post_title_2/" + ], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "reddit", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetContentOfPost", + "qualifiedName": "Reddit.GetContentOfPost", + "fullyQualifiedName": "Reddit.GetContentOfPost@1.1.1", + "description": "Get the content (body) of a Reddit post by its identifier.", + "parameters": [ + { + "name": "post_identifier", + "type": "string", + "required": true, + "description": "The identifier of the Reddit post. The identifier may be a reddit URL to the post, a permalink to the post, a fullname for the post, or a post id.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "reddit", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The content (body) of the Reddit post" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Reddit.GetContentOfPost", + "parameters": { + "post_identifier": { + "value": "t3_abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "reddit", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMyPosts", + "qualifiedName": "Reddit.GetMyPosts", + "fullyQualifiedName": "Reddit.GetMyPosts@1.1.1", + "description": "Get posts that were created by the authenticated user sorted by newest first", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of posts to fetch. Default is 10. Maximum is 100", + "enum": null, + "inferrable": true + }, + { + "name": "include_body", + "type": "boolean", + "required": false, + "description": "Whether to include the body (content) of the posts. Defaults to True.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor", + "type": "string", + "required": false, + "description": "The pagination token from a previous call", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "reddit", + "providerType": "oauth2", + "scopes": ["identity", "history", "read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary with a cursor for the next page and a list of posts created by the authenticated user" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Reddit.GetMyPosts", + "parameters": { + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "include_body": { + "value": true, + "type": "boolean", + "required": false + }, + "cursor": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "reddit", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMyUsername", + "qualifiedName": "Reddit.GetMyUsername", + "fullyQualifiedName": "Reddit.GetMyUsername@1.1.1", + "description": "Get the Reddit username of the authenticated user", + "parameters": [], + "auth": { + "providerId": "reddit", + "providerType": "oauth2", + "scopes": ["identity"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Reddit.GetMyUsername", + "parameters": {}, + "requiresAuth": true, + "authProvider": "reddit", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPostsInSubreddit", + "qualifiedName": "Reddit.GetPostsInSubreddit", + "fullyQualifiedName": "Reddit.GetPostsInSubreddit@1.1.1", + "description": "Gets posts titles, links, and other metadata in the specified subreddit\n\nThe time_range is required if the listing type is 'top' or 'controversial'.", + "parameters": [ + { + "name": "subreddit", + "type": "string", + "required": true, + "description": "The name of the subreddit to fetch posts from", + "enum": null, + "inferrable": true + }, + { + "name": "listing", + "type": "string", + "required": false, + "description": "The type of listing to fetch. For simple listings such as 'hot', 'new', or 'rising', the 'time_range' parameter is ignored. For time-based listings such as 'top' or 'controversial', the 'time_range' parameter is required.", + "enum": ["hot", "new", "rising", "top", "controversial"], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of posts to fetch. Default is 10, max is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor", + "type": "string", + "required": false, + "description": "The pagination token from a previous call", + "enum": null, + "inferrable": true + }, + { + "name": "time_range", + "type": "string", + "required": false, + "description": "The time range for filtering posts. Must be provided if the listing type is top or controversial. Otherwise, it is ignored. Defaults to TODAY.", + "enum": [ + "NOW", + "TODAY", + "THIS_WEEK", + "THIS_MONTH", + "THIS_YEAR", + "ALL_TIME" + ], + "inferrable": true + } + ], + "auth": { + "providerId": "reddit", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary with a cursor for the next page and a list of posts" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Reddit.GetPostsInSubreddit", + "parameters": { + "subreddit": { + "value": "learnprogramming", + "type": "string", + "required": true + }, + "listing": { + "value": "top", + "type": "string", + "required": false + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "cursor": { + "value": "", + "type": "string", + "required": false + }, + "time_range": { + "value": "week", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "reddit", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSubredditRules", + "qualifiedName": "Reddit.GetSubredditRules", + "fullyQualifiedName": "Reddit.GetSubredditRules@1.1.1", + "description": "Gets the rules of the specified subreddit", + "parameters": [ + { + "name": "subreddit", + "type": "string", + "required": true, + "description": "The name of the subreddit for which to fetch rules", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "reddit", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary containing the subreddit rules" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Reddit.GetSubredditRules", + "parameters": { + "subreddit": { + "value": "learnprogramming", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "reddit", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTopLevelComments", + "qualifiedName": "Reddit.GetTopLevelComments", + "fullyQualifiedName": "Reddit.GetTopLevelComments@1.1.1", + "description": "Get the first page of top-level comments of a Reddit post.", + "parameters": [ + { + "name": "post_identifier", + "type": "string", + "required": true, + "description": "The identifier of the Reddit post to fetch comments from. The identifier may be a reddit URL, a permalink, a fullname, or a post id.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "reddit", + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A dictionary with a list of top level comments" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Reddit.GetTopLevelComments", + "parameters": { + "post_identifier": { + "value": "t3_abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "reddit", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplyToComment", + "qualifiedName": "Reddit.ReplyToComment", + "fullyQualifiedName": "Reddit.ReplyToComment@1.1.1", + "description": "Reply to a Reddit comment", + "parameters": [ + { + "name": "comment_identifier", + "type": "string", + "required": true, + "description": "The identifier of the Reddit comment to reply to. The identifier may be a comment ID, a reddit URL to the comment, a permalink to the comment, or the fullname of the comment.", + "enum": null, + "inferrable": true + }, + { + "name": "text", + "type": "string", + "required": true, + "description": "The body of the reply in markdown format", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "reddit", + "providerType": "oauth2", + "scopes": ["submit"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from Reddit after submission" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Reddit.ReplyToComment", + "parameters": { + "comment_identifier": { + "value": "t1_g6v2z3g", + "type": "string", + "required": true + }, + "text": { + "value": "Thank you for your insights! I totally agree with your perspective on this topic. :thumbsup:", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "reddit", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SubmitTextPost", + "qualifiedName": "Reddit.SubmitTextPost", + "fullyQualifiedName": "Reddit.SubmitTextPost@1.1.1", + "description": "Submit a text-based post to a subreddit", + "parameters": [ + { + "name": "subreddit", + "type": "string", + "required": true, + "description": "The name of the subreddit to which the post will be submitted", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": true, + "description": "The title of the submission", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "The body of the post in markdown format. Should never be the same as the title", + "enum": null, + "inferrable": true + }, + { + "name": "nsfw", + "type": "boolean", + "required": false, + "description": "Indicates if the submission has content that is 'Not Safe For Work' (NSFW). Default is False", + "enum": null, + "inferrable": true + }, + { + "name": "spoiler", + "type": "boolean", + "required": false, + "description": "Indicates if the post is marked as a spoiler. Default is False", + "enum": null, + "inferrable": true + }, + { + "name": "send_replies", + "type": "boolean", + "required": false, + "description": "If true, sends replies to the user's inbox. Default is True", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "reddit", + "providerType": "oauth2", + "scopes": ["submit"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from Reddit after submission" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Reddit.SubmitTextPost", + "parameters": { + "subreddit": { + "value": "exampleSubreddit", + "type": "string", + "required": true + }, + "title": { + "value": "An Interesting Topic", + "type": "string", + "required": true + }, + "body": { + "value": "This is a detailed discussion about an intriguing subject. Feel free to share your thoughts!", + "type": "string", + "required": false + }, + "nsfw": { + "value": false, + "type": "boolean", + "required": false + }, + "spoiler": { + "value": true, + "type": "boolean", + "required": false + }, + "send_replies": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "reddit", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Reddit MCP Server uses the [Reddit auth provider](/references/auth-providers/reddit) to connect to users' Reddit accounts.", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:40:29.371Z", + "summary": "Arcade.dev provides a powerful toolkit for integrating with Reddit, enabling developers to interact with Reddit's vast content and community features seamlessly. This toolkit allows for efficient data retrieval and engagement on the platform.\n\n**Capabilities**\n- Access subreddit data, including rules and content.\n- Retrieve and manipulate posts and comments.\n- Verify subreddit accessibility for authenticated users.\n- Simplify fetching multiple posts in one request.\n\n**OAuth**\n- Provider: Reddit\n- Scopes: history, identity, read, submit\n\n**Secrets**\n- None required for usage." +} diff --git a/data/toolkits/salesforce.json b/data/toolkits/salesforce.json new file mode 100644 index 000000000..4cf3a6d4b --- /dev/null +++ b/data/toolkits/salesforce.json @@ -0,0 +1,336 @@ +{ + "id": "Salesforce", + "label": "Salesforce", + "version": "2.0.1", + "description": "Arcade tools designed for LLMs to interact with Salesforce", + "metadata": { + "category": "sales", + "iconUrl": "https://design-system.arcade.dev/icons/salesforce.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/sales/salesforce", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": [ + "read_account", + "read_contact", + "read_lead", + "read_note", + "read_opportunity", + "read_task", + "write_contact" + ] + }, + "tools": [ + { + "name": "CreateContact", + "qualifiedName": "Salesforce.CreateContact", + "fullyQualifiedName": "Salesforce.CreateContact@2.0.1", + "description": "Creates a contact in Salesforce.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The ID of the account to create the contact for.", + "enum": null, + "inferrable": true + }, + { + "name": "last_name", + "type": "string", + "required": true, + "description": "The last name of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "first_name", + "type": "string", + "required": false, + "description": "The first name of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "email", + "type": "string", + "required": false, + "description": "The email of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "phone", + "type": "string", + "required": false, + "description": "The phone number of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "mobile_phone", + "type": "string", + "required": false, + "description": "The mobile phone number of the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": false, + "description": "The title of the contact. E.g. 'CEO', 'Sales Director', 'CTO', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "department", + "type": "string", + "required": false, + "description": "The department of the contact. E.g. 'Marketing', 'Sales', 'IT', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "The description of the contact.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["write_contact"] + }, + "secrets": [ + "SALESFORCE_ORG_SUBDOMAIN", + "SALESFORCE_MAX_CONCURRENT_REQUESTS" + ], + "secretsInfo": [ + { + "name": "SALESFORCE_ORG_SUBDOMAIN", + "type": "api_key" + }, + { + "name": "SALESFORCE_MAX_CONCURRENT_REQUESTS", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "The created contact." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Salesforce.CreateContact", + "parameters": { + "account_id": { + "value": "0012b00000TYDmyA1Y", + "type": "string", + "required": true + }, + "last_name": { + "value": "Doe", + "type": "string", + "required": true + }, + "first_name": { + "value": "John", + "type": "string", + "required": false + }, + "email": { + "value": "john.doe@example.com", + "type": "string", + "required": false + }, + "phone": { + "value": "+1234567890", + "type": "string", + "required": false + }, + "mobile_phone": { + "value": "+0987654321", + "type": "string", + "required": false + }, + "title": { + "value": "Sales Director", + "type": "string", + "required": false + }, + "department": { + "value": "Sales", + "type": "string", + "required": false + }, + "description": { + "value": "A key contact for new business opportunities.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAccountDataById", + "qualifiedName": "Salesforce.GetAccountDataById", + "fullyQualifiedName": "Salesforce.GetAccountDataById@2.0.1", + "description": "Gets the account with related info: contacts, leads, notes, calls, opportunities, tasks,\nemails, and events (up to 10 items of each type).\n\nAn account is an organization (such as a customer, supplier, or partner, though more commonly\na customer). In some Salesforce account setups, an account can also represent a person.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The ID of the account to get data for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "read_account", + "read_contact", + "read_lead", + "read_note", + "read_opportunity", + "read_task" + ] + }, + "secrets": [ + "SALESFORCE_ORG_SUBDOMAIN", + "SALESFORCE_MAX_CONCURRENT_REQUESTS" + ], + "secretsInfo": [ + { + "name": "SALESFORCE_ORG_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "SALESFORCE_MAX_CONCURRENT_REQUESTS", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "The account with related info: contacts, leads, notes, calls, opportunities, tasks, emails, and events (up to 10 items of each type)" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Salesforce.GetAccountDataById", + "parameters": { + "account_id": { + "value": "0012E00000PZT0QAO", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAccountDataByKeywords", + "qualifiedName": "Salesforce.GetAccountDataByKeywords", + "fullyQualifiedName": "Salesforce.GetAccountDataByKeywords@2.0.1", + "description": "Searches for accounts in Salesforce and returns them with related info: contacts, leads,\nnotes, calls, opportunities, tasks, emails, and events (up to 10 items of each type).\n\nAn account is an organization (such as a customer, supplier, or partner, though more commonly\na customer). In some Salesforce account setups, an account can also represent a person.", + "parameters": [ + { + "name": "query", + "type": "string", + "required": true, + "description": "The query to search for accounts. MUST be longer than one character. It will match the keywords against all account fields, such as name, website, phone, address, etc. E.g. 'Acme'", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of accounts to return. Defaults to 10. Maximum allowed is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "page", + "type": "integer", + "required": false, + "description": "The page number to return. Defaults to 1 (first page of results).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "read_account", + "read_contact", + "read_lead", + "read_note", + "read_opportunity", + "read_task" + ] + }, + "secrets": [ + "SALESFORCE_ORG_SUBDOMAIN", + "SALESFORCE_MAX_CONCURRENT_REQUESTS" + ], + "secretsInfo": [ + { + "name": "SALESFORCE_ORG_SUBDOMAIN", + "type": "unknown" + }, + { + "name": "SALESFORCE_MAX_CONCURRENT_REQUESTS", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "The accounts matching the query with related info: contacts, leads, notes, calls, opportunities, tasks, emails, and events (up to 10 items of each type)" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Salesforce.GetAccountDataByKeywords", + "parameters": { + "query": { + "value": "Acme Corp", + "type": "string", + "required": true + }, + "limit": { + "value": 5, + "type": "integer", + "required": false + }, + "page": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:40:36.720Z", + "summary": "The Arcade toolkit for Salesforce empowers developers to harness the capabilities of LLMs for seamless interaction with Salesforce data. It enables efficient data retrieval and modification in a user-friendly manner.\n\n**Capabilities**\n- Create and manage contacts effortlessly.\n- Retrieve comprehensive account information, including related entities.\n- Perform keyword-based searches to find accounts quickly.\n- Facilitate reading and writing of various Salesforce objects.\n\n**OAuth**\n- Provider: Unknown\n- Scopes: read_account, read_contact, read_lead, read_note, read_opportunity, read_task, write_contact\n\n**Secrets**\n- Types: API Key, Unknown\n- Examples: SALESFORCE_ORG_SUBDOMAIN, SALESFORCE_MAX_CONCURRENT_REQUESTS" +} diff --git a/data/toolkits/search.json b/data/toolkits/search.json new file mode 100644 index 000000000..cea6dbfd8 --- /dev/null +++ b/data/toolkits/search.json @@ -0,0 +1,1487 @@ +{ + "id": "Search", + "label": "Search", + "version": "2.0.1", + "description": "Arcade.dev LLM tools for searching the web", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/search.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/search", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "GetDirectionsBetweenAddresses", + "qualifiedName": "Search.GetDirectionsBetweenAddresses", + "fullyQualifiedName": "Search.GetDirectionsBetweenAddresses@2.0.1", + "description": "Get directions from Google Maps.", + "parameters": [ + { + "name": "origin_address", + "type": "string", + "required": true, + "description": "The origin address. Example: '123 Main St, New York, NY 10001'", + "enum": null, + "inferrable": true + }, + { + "name": "destination_address", + "type": "string", + "required": true, + "description": "The destination address. Example: '456 Main St, New York, NY 10001'", + "enum": null, + "inferrable": true + }, + { + "name": "language", + "type": "string", + "required": false, + "description": "2-character language code to use in the Google Maps search. Defaults to 'en'.", + "enum": null, + "inferrable": true + }, + { + "name": "country", + "type": "string", + "required": false, + "description": "2-character country code to use in the Google Maps search. Defaults to 'None'.", + "enum": null, + "inferrable": true + }, + { + "name": "distance_unit", + "type": "string", + "required": false, + "description": "Distance unit to use in the Google Maps search. Defaults to 'GoogleMapsDistanceUnit.KM'.", + "enum": ["km", "mi"], + "inferrable": true + }, + { + "name": "travel_mode", + "type": "string", + "required": false, + "description": "Travel mode to use in the Google Maps search. Defaults to 'GoogleMapsTravelMode.BEST'.", + "enum": [ + "best", + "driving", + "motorcycle", + "public_transportation", + "walking", + "bicycle", + "flight" + ], + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "The directions from Google Maps" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.GetDirectionsBetweenAddresses", + "parameters": { + "origin_address": { + "value": "123 Main St, New York, NY 10001", + "type": "string", + "required": true + }, + "destination_address": { + "value": "456 Main St, New York, NY 10001", + "type": "string", + "required": true + }, + "language": { + "value": "en", + "type": "string", + "required": false + }, + "country": { + "value": "US", + "type": "string", + "required": false + }, + "distance_unit": { + "value": "GoogleMapsDistanceUnit.KM", + "type": "string", + "required": false + }, + "travel_mode": { + "value": "GoogleMapsTravelMode.DRIVING", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDirectionsBetweenCoordinates", + "qualifiedName": "Search.GetDirectionsBetweenCoordinates", + "fullyQualifiedName": "Search.GetDirectionsBetweenCoordinates@2.0.1", + "description": "Get directions from Google Maps.", + "parameters": [ + { + "name": "origin_latitude", + "type": "string", + "required": true, + "description": "The origin latitude. E.g. '40.7128'", + "enum": null, + "inferrable": true + }, + { + "name": "origin_longitude", + "type": "string", + "required": true, + "description": "The origin longitude. E.g. '-74.0060'", + "enum": null, + "inferrable": true + }, + { + "name": "destination_latitude", + "type": "string", + "required": true, + "description": "The destination latitude. E.g. '40.7128'", + "enum": null, + "inferrable": true + }, + { + "name": "destination_longitude", + "type": "string", + "required": true, + "description": "The destination longitude. E.g. '-74.0060'", + "enum": null, + "inferrable": true + }, + { + "name": "language", + "type": "string", + "required": false, + "description": "2-letter language code to use in the Google Maps search. Defaults to 'en'.", + "enum": null, + "inferrable": true + }, + { + "name": "country", + "type": "string", + "required": false, + "description": "2-letter country code to use in the Google Maps search. Defaults to 'None'.", + "enum": null, + "inferrable": true + }, + { + "name": "distance_unit", + "type": "string", + "required": false, + "description": "Distance unit to use in the Google Maps search. Defaults to 'GoogleMapsDistanceUnit.KM'.", + "enum": ["km", "mi"], + "inferrable": true + }, + { + "name": "travel_mode", + "type": "string", + "required": false, + "description": "Travel mode to use in the Google Maps search. Defaults to 'GoogleMapsTravelMode.BEST'.", + "enum": [ + "best", + "driving", + "motorcycle", + "public_transportation", + "walking", + "bicycle", + "flight" + ], + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "The directions from Google Maps" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.GetDirectionsBetweenCoordinates", + "parameters": { + "origin_latitude": { + "value": "34.0522", + "type": "string", + "required": true + }, + "origin_longitude": { + "value": "-118.2437", + "type": "string", + "required": true + }, + "destination_latitude": { + "value": "36.1699", + "type": "string", + "required": true + }, + "destination_longitude": { + "value": "-115.1398", + "type": "string", + "required": true + }, + "language": { + "value": "en", + "type": "string", + "required": false + }, + "country": { + "value": "US", + "type": "string", + "required": false + }, + "distance_unit": { + "value": "GoogleMapsDistanceUnit.KM", + "type": "string", + "required": false + }, + "travel_mode": { + "value": "GoogleMapsTravelMode.DRIVING", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetStockHistoricalData", + "qualifiedName": "Search.GetStockHistoricalData", + "fullyQualifiedName": "Search.GetStockHistoricalData@2.0.1", + "description": "Fetch historical stock price data over a specified time window\n\nReturns a stock's price and volume data over a specified time window", + "parameters": [ + { + "name": "ticker_symbol", + "type": "string", + "required": true, + "description": "The stock ticker to get summary for. For example, 'GOOG' is the ticker symbol for Google", + "enum": null, + "inferrable": true + }, + { + "name": "exchange_identifier", + "type": "string", + "required": true, + "description": "The exchange identifier. This part indicates the market where the stock is traded. For example, 'NASDAQ', 'NYSE', 'TSE', 'LSE', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "window", + "type": "string", + "required": false, + "description": "Time window for the graph data. Defaults to 1 month", + "enum": ["1D", "5D", "1M", "6M", "YTD", "1Y", "5Y", "MAX"], + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "A stock's price and volume data at a specific time interval over a specified time window" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.GetStockHistoricalData", + "parameters": { + "ticker_symbol": { + "value": "AAPL", + "type": "string", + "required": true + }, + "exchange_identifier": { + "value": "NASDAQ", + "type": "string", + "required": true + }, + "window": { + "value": "3 months", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetStockSummary", + "qualifiedName": "Search.GetStockSummary", + "fullyQualifiedName": "Search.GetStockSummary@2.0.1", + "description": "Retrieve the summary information for a given stock ticker using the Google Finance API.\n\nGets the stock's current price as well as price movement from the most recent trading day.", + "parameters": [ + { + "name": "ticker_symbol", + "type": "string", + "required": true, + "description": "The stock ticker to get summary for. For example, 'GOOG' is the ticker symbol for Google", + "enum": null, + "inferrable": true + }, + { + "name": "exchange_identifier", + "type": "string", + "required": true, + "description": "The exchange identifier. This part indicates the market where the stock is traded. For example, 'NASDAQ', 'NYSE', 'TSE', 'LSE', etc.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Summary of the stock's recent performance" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.GetStockSummary", + "parameters": { + "ticker_symbol": { + "value": "AAPL", + "type": "string", + "required": true + }, + "exchange_identifier": { + "value": "NASDAQ", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWalmartProductDetails", + "qualifiedName": "Search.GetWalmartProductDetails", + "fullyQualifiedName": "Search.GetWalmartProductDetails@2.0.1", + "description": "Get product details from Walmart.", + "parameters": [ + { + "name": "item_id", + "type": "string", + "required": true, + "description": "Item ID. E.g. '414600577'. This can be retrieved from the search results of the SearchWalmartProducts tool.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Product details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.GetWalmartProductDetails", + "parameters": { + "item_id": { + "value": "414600577", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetYoutubeVideoDetails", + "qualifiedName": "Search.GetYoutubeVideoDetails", + "fullyQualifiedName": "Search.GetYoutubeVideoDetails@2.0.1", + "description": "Get details about a YouTube video.", + "parameters": [ + { + "name": "video_id", + "type": "string", + "required": true, + "description": "The ID of the YouTube video to get details about. E.g. 'dQw4w9WgXcQ'.", + "enum": null, + "inferrable": true + }, + { + "name": "language_code", + "type": "string", + "required": false, + "description": "2-character language code to search for. E.g. 'en' for English. Defaults to 'en'.", + "enum": null, + "inferrable": true + }, + { + "name": "country_code", + "type": "string", + "required": false, + "description": "2-character country code to search for. E.g. 'us' for United States. Defaults to 'None'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Details about a YouTube video." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.GetYoutubeVideoDetails", + "parameters": { + "video_id": { + "value": "dQw4w9WgXcQ", + "type": "string", + "required": true + }, + "language_code": { + "value": "en", + "type": "string", + "required": false + }, + "country_code": { + "value": "us", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchGoogle", + "qualifiedName": "Search.SearchGoogle", + "fullyQualifiedName": "Search.SearchGoogle@2.0.1", + "description": "Search Google using SerpAPI and return organic search results.", + "parameters": [ + { + "name": "query", + "type": "string", + "required": true, + "description": "Search query", + "enum": null, + "inferrable": true + }, + { + "name": "n_results", + "type": "integer", + "required": false, + "description": "Number of results to retrieve", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.SearchGoogle", + "parameters": { + "query": { + "value": "Latest technology trends in 2023", + "type": "string", + "required": true + }, + "n_results": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchHotels", + "qualifiedName": "Search.SearchHotels", + "fullyQualifiedName": "Search.SearchHotels@2.0.1", + "description": "Retrieve hotel search results using the Google Hotels API.", + "parameters": [ + { + "name": "location", + "type": "string", + "required": true, + "description": "Location to search for hotels, e.g., a city name, a state, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "check_in_date", + "type": "string", + "required": true, + "description": "Check-in date in YYYY-MM-DD format", + "enum": null, + "inferrable": true + }, + { + "name": "check_out_date", + "type": "string", + "required": true, + "description": "Check-out date in YYYY-MM-DD format", + "enum": null, + "inferrable": true + }, + { + "name": "query", + "type": "string", + "required": false, + "description": "Anything that would be used in a regular Google Hotels search", + "enum": null, + "inferrable": true + }, + { + "name": "currency", + "type": "string", + "required": false, + "description": "Currency code for prices. Defaults to 'USD'", + "enum": null, + "inferrable": true + }, + { + "name": "min_price", + "type": "integer", + "required": false, + "description": "Minimum price per night. Defaults to no minimum", + "enum": null, + "inferrable": true + }, + { + "name": "max_price", + "type": "integer", + "required": false, + "description": "Maximum price per night. Defaults to no maximum", + "enum": null, + "inferrable": true + }, + { + "name": "num_adults", + "type": "integer", + "required": false, + "description": "Number of adults per room. Defaults to 2", + "enum": null, + "inferrable": true + }, + { + "name": "num_children", + "type": "integer", + "required": false, + "description": "Number of children per room. Defaults to 0", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "The sorting order of the results. Defaults to RELEVANCE", + "enum": [ + "RELEVANCE", + "LOWEST_PRICE", + "HIGHEST_RATING", + "MOST_REVIEWED" + ], + "inferrable": true + }, + { + "name": "num_results", + "type": "integer", + "required": false, + "description": "Maximum number of results to return. Defaults to 5. Max 20", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Hotel search results from the Google Hotels API" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.SearchHotels", + "parameters": { + "location": { + "value": "New York City", + "type": "string", + "required": true + }, + "check_in_date": { + "value": "2023-10-15", + "type": "string", + "required": true + }, + "check_out_date": { + "value": "2023-10-20", + "type": "string", + "required": true + }, + "query": { + "value": "luxury hotels", + "type": "string", + "required": false + }, + "currency": { + "value": "USD", + "type": "string", + "required": false + }, + "min_price": { + "value": 100, + "type": "integer", + "required": false + }, + "max_price": { + "value": 500, + "type": "integer", + "required": false + }, + "num_adults": { + "value": 2, + "type": "integer", + "required": false + }, + "num_children": { + "value": 1, + "type": "integer", + "required": false + }, + "sort_by": { + "value": "PRICE", + "type": "string", + "required": false + }, + "num_results": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchJobs", + "qualifiedName": "Search.SearchJobs", + "fullyQualifiedName": "Search.SearchJobs@2.0.1", + "description": "Search Google Jobs using SerpAPI.", + "parameters": [ + { + "name": "query", + "type": "string", + "required": true, + "description": "Search query. Provide a job title, company name, and/or any keywords in general representing what kind of jobs the user is looking for. E.g. 'software engineer' or 'data analyst at Apple'.", + "enum": null, + "inferrable": true + }, + { + "name": "location", + "type": "string", + "required": false, + "description": "Location to search for jobs. E.g. 'United States' or 'New York, NY'. Defaults to None.", + "enum": null, + "inferrable": true + }, + { + "name": "language", + "type": "string", + "required": false, + "description": "2-character language code to use in the Google Jobs search. E.g. 'en' for English. Defaults to 'en'.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of results to retrieve. Defaults to 10 (max supported by the API).", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "Next page token to paginate results. Defaults to None (start from the first page).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Google Jobs results" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.SearchJobs", + "parameters": { + "query": { + "value": "data scientist at Google", + "type": "string", + "required": true + }, + "location": { + "value": "San Francisco, CA", + "type": "string", + "required": false + }, + "language": { + "value": "en", + "type": "string", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "next_page_token": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchNewsStories", + "qualifiedName": "Search.SearchNewsStories", + "fullyQualifiedName": "Search.SearchNewsStories@2.0.1", + "description": "Search for news articles related to a given query.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "Keywords to search for news articles. E.g. 'Apple launches new iPhone'.", + "enum": null, + "inferrable": true + }, + { + "name": "country_code", + "type": "string", + "required": false, + "description": "2-character country code to search for news articles. E.g. 'us' (United States). Defaults to 'None'.", + "enum": null, + "inferrable": true + }, + { + "name": "language_code", + "type": "string", + "required": false, + "description": "2-character language code to search for news articles. E.g. 'en' (English). Defaults to 'en'.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of news articles to return. Defaults to None (returns all results found by the API).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "News results." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.SearchNewsStories", + "parameters": { + "keywords": { + "value": "Apple launches new iPhone", + "type": "string", + "required": true + }, + "country_code": { + "value": "us", + "type": "string", + "required": false + }, + "language_code": { + "value": "en", + "type": "string", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchOneWayFlights", + "qualifiedName": "Search.SearchOneWayFlights", + "fullyQualifiedName": "Search.SearchOneWayFlights@2.0.1", + "description": "Retrieve flight search results for a one-way flight using Google Flights", + "parameters": [ + { + "name": "departure_airport_code", + "type": "string", + "required": true, + "description": "The departure airport code. An uppercase 3-letter code", + "enum": null, + "inferrable": true + }, + { + "name": "arrival_airport_code", + "type": "string", + "required": true, + "description": "The arrival airport code. An uppercase 3-letter code", + "enum": null, + "inferrable": true + }, + { + "name": "outbound_date", + "type": "string", + "required": true, + "description": "Flight departure date in YYYY-MM-DD format", + "enum": null, + "inferrable": true + }, + { + "name": "currency_code", + "type": "string", + "required": false, + "description": "Currency of the returned prices. Defaults to 'USD'", + "enum": null, + "inferrable": true + }, + { + "name": "travel_class", + "type": "string", + "required": false, + "description": "Travel class of the flight. Defaults to 'ECONOMY'", + "enum": ["ECONOMY", "PREMIUM_ECONOMY", "BUSINESS", "FIRST"], + "inferrable": true + }, + { + "name": "num_adults", + "type": "integer", + "required": false, + "description": "Number of adult passengers. Defaults to 1", + "enum": null, + "inferrable": true + }, + { + "name": "num_children", + "type": "integer", + "required": false, + "description": "Number of child passengers. Defaults to 0", + "enum": null, + "inferrable": true + }, + { + "name": "max_stops", + "type": "string", + "required": false, + "description": "Maximum number of stops (layovers) for the flight. Defaults to any number of stops", + "enum": ["ANY", "NONSTOP", "ONE", "TWO"], + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "The sorting order of the results. Defaults to TOP_FLIGHTS.", + "enum": [ + "TOP_FLIGHTS", + "PRICE", + "DEPARTURE_TIME", + "ARRIVAL_TIME", + "DURATION", + "EMISSIONS" + ], + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Flight search results from the Google Flights API" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.SearchOneWayFlights", + "parameters": { + "departure_airport_code": { + "value": "JFK", + "type": "string", + "required": true + }, + "arrival_airport_code": { + "value": "LAX", + "type": "string", + "required": true + }, + "outbound_date": { + "value": "2023-11-15", + "type": "string", + "required": true + }, + "currency_code": { + "value": "USD", + "type": "string", + "required": false + }, + "travel_class": { + "value": "ECONOMY", + "type": "string", + "required": false + }, + "num_adults": { + "value": 1, + "type": "integer", + "required": false + }, + "num_children": { + "value": 0, + "type": "integer", + "required": false + }, + "max_stops": { + "value": "2", + "type": "string", + "required": false + }, + "sort_by": { + "value": "TOP_FLIGHTS", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchRoundtripFlights", + "qualifiedName": "Search.SearchRoundtripFlights", + "fullyQualifiedName": "Search.SearchRoundtripFlights@2.0.1", + "description": "Retrieve flight search results using Google Flights", + "parameters": [ + { + "name": "departure_airport_code", + "type": "string", + "required": true, + "description": "The departure airport code. An uppercase 3-letter code", + "enum": null, + "inferrable": true + }, + { + "name": "arrival_airport_code", + "type": "string", + "required": true, + "description": "The arrival airport code. An uppercase 3-letter code", + "enum": null, + "inferrable": true + }, + { + "name": "outbound_date", + "type": "string", + "required": true, + "description": "Flight outbound date in YYYY-MM-DD format", + "enum": null, + "inferrable": true + }, + { + "name": "return_date", + "type": "string", + "required": false, + "description": "Flight return date in YYYY-MM-DD format", + "enum": null, + "inferrable": true + }, + { + "name": "currency_code", + "type": "string", + "required": false, + "description": "Currency of the returned prices. Defaults to 'USD'", + "enum": null, + "inferrable": true + }, + { + "name": "travel_class", + "type": "string", + "required": false, + "description": "Travel class of the flight. Defaults to 'ECONOMY'", + "enum": ["ECONOMY", "PREMIUM_ECONOMY", "BUSINESS", "FIRST"], + "inferrable": true + }, + { + "name": "num_adults", + "type": "integer", + "required": false, + "description": "Number of adult passengers. Defaults to 1", + "enum": null, + "inferrable": true + }, + { + "name": "num_children", + "type": "integer", + "required": false, + "description": "Number of child passengers. Defaults to 0", + "enum": null, + "inferrable": true + }, + { + "name": "max_stops", + "type": "string", + "required": false, + "description": "Maximum number of stops (layovers) for the flight. Defaults to any number of stops", + "enum": ["ANY", "NONSTOP", "ONE", "TWO"], + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "The sorting order of the results. Defaults to TOP_FLIGHTS.", + "enum": [ + "TOP_FLIGHTS", + "PRICE", + "DEPARTURE_TIME", + "ARRIVAL_TIME", + "DURATION", + "EMISSIONS" + ], + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Flight search results from the Google Flights API" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.SearchRoundtripFlights", + "parameters": { + "departure_airport_code": { + "value": "JFK", + "type": "string", + "required": true + }, + "arrival_airport_code": { + "value": "LAX", + "type": "string", + "required": true + }, + "outbound_date": { + "value": "2023-11-15", + "type": "string", + "required": true + }, + "return_date": { + "value": "2023-11-22", + "type": "string", + "required": false + }, + "currency_code": { + "value": "USD", + "type": "string", + "required": false + }, + "travel_class": { + "value": "ECONOMY", + "type": "string", + "required": false + }, + "num_adults": { + "value": 2, + "type": "integer", + "required": false + }, + "num_children": { + "value": 1, + "type": "integer", + "required": false + }, + "max_stops": { + "value": "1", + "type": "string", + "required": false + }, + "sort_by": { + "value": "TOP_FLIGHTS", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchShoppingProducts", + "qualifiedName": "Search.SearchShoppingProducts", + "fullyQualifiedName": "Search.SearchShoppingProducts@2.0.1", + "description": "Search for products on Google Shopping related to a given query.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "Keywords to search for products in Google Shopping. E.g. 'Apple iPhone'.", + "enum": null, + "inferrable": true + }, + { + "name": "country_code", + "type": "string", + "required": false, + "description": "2-character country code to search for products in Google Shopping. E.g. 'us' (United States). Defaults to 'us'.", + "enum": null, + "inferrable": true + }, + { + "name": "language_code", + "type": "string", + "required": false, + "description": "2-character language code to search for products on Google Shopping. E.g. 'en' (English). Defaults to 'en'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Products on Google Shopping." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.SearchShoppingProducts", + "parameters": { + "keywords": { + "value": "Apple iPhone", + "type": "string", + "required": true + }, + "country_code": { + "value": "us", + "type": "string", + "required": false + }, + "language_code": { + "value": "en", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchWalmartProducts", + "qualifiedName": "Search.SearchWalmartProducts", + "fullyQualifiedName": "Search.SearchWalmartProducts@2.0.1", + "description": "Search Walmart products using SerpAPI.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "Keywords to search for. E.g. 'apple iphone' or 'samsung galaxy'", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "Sort the results by the specified criteria. Defaults to 'relevance_according_to_keywords_searched'.", + "enum": [ + "relevance_according_to_keywords_searched", + "lowest_price_first", + "highest_price_first", + "best_selling_products_first", + "highest_rating_first", + "new_arrivals_first" + ], + "inferrable": true + }, + { + "name": "min_price", + "type": "number", + "required": false, + "description": "Minimum price to filter the results by. E.g. 100.00", + "enum": null, + "inferrable": true + }, + { + "name": "max_price", + "type": "number", + "required": false, + "description": "Maximum price to filter the results by. E.g. 100.00", + "enum": null, + "inferrable": true + }, + { + "name": "next_day_delivery", + "type": "boolean", + "required": false, + "description": "Filters products that are eligible for next day delivery. Defaults to False (returns all products, regardless of delivery status).", + "enum": null, + "inferrable": true + }, + { + "name": "page", + "type": "integer", + "required": false, + "description": "Page number to fetch. Defaults to 1 (first page of results). The maximum page value is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "List of Walmart products matching the search query." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.SearchWalmartProducts", + "parameters": { + "keywords": { + "value": "samsung galaxy", + "type": "string", + "required": true + }, + "sort_by": { + "value": "price_low_to_high", + "type": "string", + "required": false + }, + "min_price": { + "value": 199.99, + "type": "integer", + "required": false + }, + "max_price": { + "value": 999.99, + "type": "integer", + "required": false + }, + "next_day_delivery": { + "value": true, + "type": "boolean", + "required": false + }, + "page": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchYoutubeVideos", + "qualifiedName": "Search.SearchYoutubeVideos", + "fullyQualifiedName": "Search.SearchYoutubeVideos@2.0.1", + "description": "Search for YouTube videos related to the query.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "The keywords to search for. E.g. 'Python tutorial'.", + "enum": null, + "inferrable": true + }, + { + "name": "language_code", + "type": "string", + "required": false, + "description": "2-character language code to search for. E.g. 'en' for English. Defaults to 'en'.", + "enum": null, + "inferrable": true + }, + { + "name": "country_code", + "type": "string", + "required": false, + "description": "2-character country code to search for. E.g. 'us' for United States. Defaults to 'None'.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The next page token to use for pagination. Defaults to `None` (start from the first page).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "List of YouTube videos related to the query." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Search.SearchYoutubeVideos", + "parameters": { + "keywords": { + "value": "Python tutorial", + "type": "string", + "required": true + }, + "language_code": { + "value": "en", + "type": "string", + "required": false + }, + "country_code": { + "value": "us", + "type": "string", + "required": false + }, + "next_page_token": { + "value": "None", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:40:53.245Z", + "summary": "Arcade.dev offers a powerful toolkit for searching the web, enabling developers to integrate various search capabilities into their applications without needing extensive setup. This toolkit simplifies web searches, product lookups, and more through user-friendly APIs.\n\n**Capabilities** \n- Access a wide range of search functionalities including web, images, news, and shopping. \n- Retrieve detailed product, video, and historical stock information. \n- Get comprehensive travel and accommodation details effortlessly. \n\n**OAuth** \n- This toolkit does not use OAuth but requires an API key for some functionalities. \n\n**Secrets** \n- The toolkit utilizes an API key (SERP_API_KEY) to access certain features securely." +} diff --git a/data/toolkits/sharepoint.json b/data/toolkits/sharepoint.json new file mode 100644 index 000000000..35c9c1569 --- /dev/null +++ b/data/toolkits/sharepoint.json @@ -0,0 +1,720 @@ +{ + "id": "Sharepoint", + "label": "Microsoft SharePoint", + "version": "0.4.1", + "description": "Arcade.dev LLM tools for Microsoft SharePoint", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/microsoft-sharepoint.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/sharepoint", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "microsoft", + "allScopes": ["Sites.Read.All", "User.Read"] + }, + "tools": [ + { + "name": "GetDrivesFromSite", + "qualifiedName": "Sharepoint.GetDrivesFromSite", + "fullyQualifiedName": "Sharepoint.GetDrivesFromSite@0.4.1", + "description": "Retrieve drives / document libraries from a SharePoint site.\n\nIf you have a site name, it is not necessary to call Sharepoint.SearchSites first. You can simply\ncall this tool with the site name / keywords.", + "parameters": [ + { + "name": "site", + "type": "string", + "required": true, + "description": "Site ID, SharePoint URL, or site name to get drives from. Prefer using a site ID whenever available for optimal performance.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Sites.Read.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The drives from the SharePoint site." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Sharepoint.GetDrivesFromSite", + "parameters": { + "site": { + "value": "https://contoso.sharepoint.com/sites/Marketing", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetItemsFromList", + "qualifiedName": "Sharepoint.GetItemsFromList", + "fullyQualifiedName": "Sharepoint.GetItemsFromList@0.4.1", + "description": "Retrieve items from a list in a SharePoint site.\n\nNote: The Microsoft Graph API does not offer endpoints to retrieve list item attachments.\nBecause of that, the only information we can get is whether the item has attachments or not.", + "parameters": [ + { + "name": "site", + "type": "string", + "required": true, + "description": "Site ID, SharePoint URL, or site name to get lists from. Prefer using a site ID whenever available for optimal performance.", + "enum": null, + "inferrable": true + }, + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The ID of the list to get items from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Sites.Read.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The SharePoint list items." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Sharepoint.GetItemsFromList", + "parameters": { + "site": { + "value": "site-id-12345", + "type": "string", + "required": true + }, + "list_id": { + "value": "list-id-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetListsFromSite", + "qualifiedName": "Sharepoint.GetListsFromSite", + "fullyQualifiedName": "Sharepoint.GetListsFromSite@0.4.1", + "description": "Retrieve lists from a SharePoint site.", + "parameters": [ + { + "name": "site", + "type": "string", + "required": true, + "description": "Site ID, SharePoint URL, or site name to get lists from. Prefer using a site ID whenever available for optimal performance.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Sites.Read.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The SharePoint site lists." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Sharepoint.GetListsFromSite", + "parameters": { + "site": { + "value": "https://contoso.sharepoint.com/sites/Marketing", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPage", + "qualifiedName": "Sharepoint.GetPage", + "fullyQualifiedName": "Sharepoint.GetPage@0.4.1", + "description": "Retrieve metadata and the contents of a page in a SharePoint site.\n\nPage content is a list of Microsoft Sharepoint web part objects, such as text, images, banners,\nbuttons, etc.\n\nIf `include_page_content` is set to False, the tool will return only the page metadata.", + "parameters": [ + { + "name": "site", + "type": "string", + "required": true, + "description": "Site ID, SharePoint URL, or site name to retrieve base pages from. Prefer using a site ID whenever available for optimal performance", + "enum": null, + "inferrable": true + }, + { + "name": "page_id", + "type": "string", + "required": true, + "description": "The ID of the page to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "include_page_content", + "type": "boolean", + "required": false, + "description": "Whether to include the page content in the response. Defaults to True. If set to False, the tool will return only the page metadata.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Sites.Read.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The page from the SharePoint site." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Sharepoint.GetPage", + "parameters": { + "site": { + "value": "site-12345", + "type": "string", + "required": true + }, + "page_id": { + "value": "page-67890", + "type": "string", + "required": true + }, + "include_page_content": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSite", + "qualifiedName": "Sharepoint.GetSite", + "fullyQualifiedName": "Sharepoint.GetSite@0.4.1", + "description": "Retrieve information about a specific SharePoint site by its ID, URL, or name.", + "parameters": [ + { + "name": "site", + "type": "string", + "required": true, + "description": "Site ID, SharePoint URL, or site name to search for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Sites.Read.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The SharePoint site information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Sharepoint.GetSite", + "parameters": { + "site": { + "value": "https://example.sharepoint.com/sites/ProjectX", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListItemsInFolder", + "qualifiedName": "Sharepoint.ListItemsInFolder", + "fullyQualifiedName": "Sharepoint.ListItemsInFolder@0.4.1", + "description": "Retrieve items from a folder in a drive in a SharePoint site.\n\nNote: Due to how the Microsoft Graph API is designed, we have to retrieve all items, including the ones\nskipped by offset. For this reason, the tool execution time tends to increase with the offset value.", + "parameters": [ + { + "name": "drive_id", + "type": "string", + "required": true, + "description": "The ID of the drive to get items from.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_id", + "type": "string", + "required": true, + "description": "The ID of the folder to get items from.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of items to get. Defaults to 100, max is 500.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of items to skip.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Sites.Read.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The items from the folder in the drive." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Sharepoint.ListItemsInFolder", + "parameters": { + "drive_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "folder_id": { + "value": "54321-jihgf-09876-fedcba", + "type": "string", + "required": true + }, + "limit": { + "value": 250, + "type": "integer", + "required": false + }, + "offset": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPages", + "qualifiedName": "Sharepoint.ListPages", + "fullyQualifiedName": "Sharepoint.ListPages@0.4.1", + "description": "Retrieve pages from a SharePoint site.\n\nThe Microsoft Graph API does not support pagination on this endpoint.", + "parameters": [ + { + "name": "site", + "type": "string", + "required": true, + "description": "Site ID, SharePoint URL, or site name to retrieve base pages from. Prefer using a site ID whenever available for optimal performance.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of pages to return. Defaults to 10, max is 200.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Sites.Read.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The pages from the SharePoint site." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Sharepoint.ListPages", + "parameters": { + "site": { + "value": "site-id-12345", + "type": "string", + "required": true + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListRootItemsInDrive", + "qualifiedName": "Sharepoint.ListRootItemsInDrive", + "fullyQualifiedName": "Sharepoint.ListRootItemsInDrive@0.4.1", + "description": "Retrieve items from the root of a drive in a SharePoint site.\n\nNote: Due to how the Microsoft Graph API is designed, we have to retrieve all items, including the ones\nskipped by offset. For this reason, the tool execution time tends to increase with the offset value.", + "parameters": [ + { + "name": "drive_id", + "type": "string", + "required": true, + "description": "The ID of the drive to get items from.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of items to get. Defaults to 100, max is 500.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of items to skip.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Sites.Read.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The items from the root of a drive in a SharePoint site." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Sharepoint.ListRootItemsInDrive", + "parameters": { + "drive_id": { + "value": "12345abcdef", + "type": "string", + "required": true + }, + "limit": { + "value": 250, + "type": "integer", + "required": false + }, + "offset": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSites", + "qualifiedName": "Sharepoint.ListSites", + "fullyQualifiedName": "Sharepoint.ListSites@0.4.1", + "description": "List all SharePoint sites accessible to the current user.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of sites to return. Defaults to 10, max is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The offset to start from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Sites.Read.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The SharePoint sites matching the search criteria." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Sharepoint.ListSites", + "parameters": { + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchDriveItems", + "qualifiedName": "Sharepoint.SearchDriveItems", + "fullyQualifiedName": "Sharepoint.SearchDriveItems@0.4.1", + "description": "Search for items in one or more Sharepoint drives.\n\nNote: when searching within a single Drive and/or Folder, due to how the Microsoft Graph API is designed,\nwe have to retrieve all items, including the ones skipped by offset. For this reason, the tool execution\ntime tends to increase with the offset value.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "The keywords to search for files in the drive.", + "enum": null, + "inferrable": true + }, + { + "name": "drive_id", + "type": "string", + "required": false, + "description": "Optionally, the ID of the drive to search items in. If not provided, the search will be performed in all drives.", + "enum": null, + "inferrable": true + }, + { + "name": "folder_id", + "type": "string", + "required": false, + "description": "Optionally narrow the search within a specific folder by its ID. If not provided, the search will be performed in the whole drive. If a folder_id is provided, it is required to provide a drive_id as well.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The number of files to get. Defaults to 50, max is 500.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The number of files to skip.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Sites.Read.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The items from the drive(s)." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Sharepoint.SearchDriveItems", + "parameters": { + "keywords": { + "value": "project report", + "type": "string", + "required": true + }, + "drive_id": { + "value": "12345678-90ab-cdef-1234-567890abcdef", + "type": "string", + "required": false + }, + "folder_id": { + "value": "abcdef12-3456-7890-abcd-ef1234567890", + "type": "string", + "required": false + }, + "limit": { + "value": 100, + "type": "integer", + "required": false + }, + "offset": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchSites", + "qualifiedName": "Sharepoint.SearchSites", + "fullyQualifiedName": "Sharepoint.SearchSites@0.4.1", + "description": "Search for SharePoint sites by name or description.\n\nIn case you need to retrieve a specific site by its name, ID or SharePoint URL, use the\n`Sharepoint.GetSite` tool instead, passing the ID, name or SharePoint URL to it. If you use\nthe `Sharepoint.SearchSites` tool to retrieve a single site by its name, too much CO2 will be\nreleased in the atmosphere and you will contribute to catastrophic climate change.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "The search term to find sites by name or description.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of sites to return. Defaults to 10, max is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "The offset to start from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["Sites.Read.All"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The SharePoint sites matching the search criteria." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Sharepoint.SearchSites", + "parameters": { + "keywords": { + "value": "Project Management", + "type": "string", + "required": true + }, + "limit": { + "value": 25, + "type": "integer", + "required": false + }, + "offset": { + "value": 5, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "Sharepoint.WhoAmI", + "fullyQualifiedName": "Sharepoint.WhoAmI@0.4.1", + "description": "Get information about the current user and their SharePoint environment.", + "parameters": [], + "auth": { + "providerId": "microsoft", + "providerType": "oauth2", + "scopes": ["User.Read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get comprehensive user profile and SharePoint environment information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Sharepoint.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "microsoft", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "warning", + "location": "description", + "position": "after", + "content": "\n The SharePoint MCP Server requires a Microsoft 365 account. Personal Microsoft accounts are not supported.\n" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:41:02.555Z", + "summary": "Arcade.dev's SharePoint toolkit enables seamless integration with Microsoft SharePoint, enhancing productivity through advanced LLM tools. This toolkit provides developers with the capability to efficiently manage and retrieve information across various SharePoint resources.\n\n## Capabilities\n- Retrieve site, list, and drive information seamlessly.\n- Access and manage page content and associated metadata.\n- Execute specific searches for items within drives and sites.\n- Identify and list all accessible SharePoint sites for users.\n\n## OAuth\n**Provider:** Microsoft \n**Scopes:** Sites.Read.All, User.Read\n\n## Secrets\nNo secret types or names are required for this toolkit." +} diff --git a/data/toolkits/slack.json b/data/toolkits/slack.json new file mode 100644 index 000000000..d704c970b --- /dev/null +++ b/data/toolkits/slack.json @@ -0,0 +1,781 @@ +{ + "id": "Slack", + "label": "Slack", + "version": "2.0.0", + "description": "Arcade.dev LLM tools for Slack", + "metadata": { + "category": "social", + "iconUrl": "https://design-system.arcade.dev/icons/slack.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/social-communication/slack", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "slack", + "allScopes": [ + "channels:history", + "channels:read", + "chat:write", + "groups:history", + "groups:read", + "im:history", + "im:read", + "im:write", + "mpim:history", + "mpim:read", + "users:read", + "users:read.email" + ] + }, + "tools": [ + { + "name": "GetConversationMetadata", + "qualifiedName": "Slack.GetConversationMetadata", + "fullyQualifiedName": "Slack.GetConversationMetadata@2.0.0", + "description": "Get metadata of a Channel, a Direct Message (IM / DM) or a Multi-Person (MPIM) conversation.\n\nUse this tool to retrieve metadata about a conversation with a conversation_id, a channel name,\nor by the user_id(s), username(s), and/or email(s) of the user(s) in the conversation.\n\nThis tool does not return the messages in a conversation. To get the messages, use the\n'Slack.GetMessages' tool instead.\n\nProvide exactly one of:\n- conversation_id; or\n- channel_name; or\n- any combination of user_ids, usernames, and/or emails.", + "parameters": [ + { + "name": "conversation_id", + "type": "string", + "required": false, + "description": "The ID of the conversation to get metadata for", + "enum": null, + "inferrable": true + }, + { + "name": "channel_name", + "type": "string", + "required": false, + "description": "The name of the channel to get metadata for. Prefer providing a conversation_id, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "usernames", + "type": "array", + "innerType": "string", + "required": false, + "description": "The usernames of the users to get the conversation metadata. Prefer providing user_ids and/or emails, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "The emails of the users to get the conversation metadata.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of the users to get the conversation metadata.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [ + "channels:read", + "groups:read", + "mpim:read", + "im:read", + "users:read", + "users:read.email" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The conversation metadata." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Slack.GetConversationMetadata", + "parameters": { + "conversation_id": { + "value": "C1234567890", + "type": "string", + "required": false + }, + "channel_name": { + "value": "general", + "type": "string", + "required": false + }, + "usernames": { + "value": ["john_doe", "jane_smith"], + "type": "array", + "required": false + }, + "emails": { + "value": ["john@example.com", "jane@example.com"], + "type": "array", + "required": false + }, + "user_ids": { + "value": ["U123456", "U098765"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMessages", + "qualifiedName": "Slack.GetMessages", + "fullyQualifiedName": "Slack.GetMessages@2.0.0", + "description": "Get messages in a Slack Channel, DM (direct message) or MPIM (multi-person) conversation.\n\nProvide exactly one of:\n- conversation_id; or\n- channel_name; or\n- any combination of user_ids, usernames, and/or emails.\n\nTo filter messages by an absolute datetime, use 'oldest_datetime' and/or 'latest_datetime'. If\nonly 'oldest_datetime' is provided, it will return messages from the oldest_datetime to the\ncurrent time. If only 'latest_datetime' is provided, it will return messages since the\nbeginning of the conversation to the latest_datetime.\n\nTo filter messages by a relative datetime (e.g. 3 days ago, 1 hour ago, etc.), use\n'oldest_relative' and/or 'latest_relative'. If only 'oldest_relative' is provided, it will\nreturn messages from the oldest_relative to the current time. If only 'latest_relative' is\nprovided, it will return messages from the current time to the latest_relative.\n\nDo not provide both 'oldest_datetime' and 'oldest_relative' or both 'latest_datetime' and\n'latest_relative'.\n\nLeave all arguments with the default None to get messages without date/time filtering", + "parameters": [ + { + "name": "conversation_id", + "type": "string", + "required": false, + "description": "The ID of the conversation to get messages from. Provide exactly one of conversation_id OR any combination of user_ids, usernames, and/or emails.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_name", + "type": "string", + "required": false, + "description": "The name of the channel to get messages from. Prefer providing a conversation_id, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of the users in the conversation to get messages from.", + "enum": null, + "inferrable": true + }, + { + "name": "usernames", + "type": "array", + "innerType": "string", + "required": false, + "description": "The usernames of the users in the conversation to get messages from. Prefer providinguser_ids and/or emails, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "The emails of the users in the conversation to get messages from.", + "enum": null, + "inferrable": true + }, + { + "name": "oldest_relative", + "type": "string", + "required": false, + "description": "The oldest message to include in the results, specified as a time offset from the current time in the format 'DD:HH:MM'", + "enum": null, + "inferrable": true + }, + { + "name": "latest_relative", + "type": "string", + "required": false, + "description": "The latest message to include in the results, specified as a time offset from the current time in the format 'DD:HH:MM'", + "enum": null, + "inferrable": true + }, + { + "name": "oldest_datetime", + "type": "string", + "required": false, + "description": "The oldest message to include in the results, specified as a datetime object in the format 'YYYY-MM-DD HH:MM:SS'", + "enum": null, + "inferrable": true + }, + { + "name": "latest_datetime", + "type": "string", + "required": false, + "description": "The latest message to include in the results, specified as a datetime object in the format 'YYYY-MM-DD HH:MM:SS'", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of messages to return. Defaults to 20. Maximum is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "next_cursor", + "type": "string", + "required": false, + "description": "The cursor to use for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [ + "channels:read", + "groups:read", + "mpim:read", + "im:read", + "users:read", + "users:read.email", + "channels:history", + "groups:history", + "mpim:history", + "im:history" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The messages in a Slack Channel, DM (direct message) or MPIM (multi-person) conversation." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Slack.GetMessages", + "parameters": { + "conversation_id": { + "value": "C1234567890", + "type": "string", + "required": false + }, + "channel_name": { + "value": null, + "type": "string", + "required": false + }, + "user_ids": { + "value": null, + "type": "array", + "required": false + }, + "usernames": { + "value": null, + "type": "array", + "required": false + }, + "emails": { + "value": null, + "type": "array", + "required": false + }, + "oldest_relative": { + "value": "01:00:00", + "type": "string", + "required": false + }, + "latest_relative": { + "value": "00:30:00", + "type": "string", + "required": false + }, + "oldest_datetime": { + "value": null, + "type": "string", + "required": false + }, + "latest_datetime": { + "value": null, + "type": "string", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "next_cursor": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUsersInConversation", + "qualifiedName": "Slack.GetUsersInConversation", + "fullyQualifiedName": "Slack.GetUsersInConversation@2.0.0", + "description": "Get the users in a Slack conversation (Channel, DM/IM, or MPIM) by its ID or by channel name.\n\nProvide exactly one of conversation_id or channel_name. Prefer providing a conversation_id,\nwhen available, since the performance is better.", + "parameters": [ + { + "name": "conversation_id", + "type": "string", + "required": false, + "description": "The ID of the conversation to get users in.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_name", + "type": "string", + "required": false, + "description": "The name of the channel to get users in. Prefer providing a conversation_id, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of users to return. Defaults to 200. Maximum is 500.", + "enum": null, + "inferrable": true + }, + { + "name": "next_cursor", + "type": "string", + "required": false, + "description": "The cursor to use for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [ + "channels:read", + "groups:read", + "im:read", + "mpim:read", + "users:read", + "users:read.email" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about each user in the conversation" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Slack.GetUsersInConversation", + "parameters": { + "conversation_id": { + "value": "C1234567890", + "type": "string", + "required": false + }, + "channel_name": { + "value": null, + "type": "string", + "required": false + }, + "limit": { + "value": 100, + "type": "integer", + "required": false + }, + "next_cursor": { + "value": "abc123token", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUsersInfo", + "qualifiedName": "Slack.GetUsersInfo", + "fullyQualifiedName": "Slack.GetUsersInfo@2.0.0", + "description": "Get the information of one or more users in Slack by ID, username, and/or email.\n\nProvide any combination of user_ids, usernames, and/or emails. If you need to retrieve\ndata about multiple users, DO NOT CALL THE TOOL MULTIPLE TIMES. Instead, call it once\nwith all the user_ids, usernames, and/or emails. IF YOU CALL THIS TOOL MULTIPLE TIMES\nUNNECESSARILY, YOU WILL RELEASE MORE CO2 IN THE ATMOSPHERE AND CONTRIBUTE TO GLOBAL WARMING.\n\nIf you need to get metadata or messages of a conversation, use the\n`Slack.GetConversationMetadata` or `Slack.GetMessages` tool instead. These\ntools accept user_ids, usernames, and/or emails. Do not retrieve users' info first,\nas it is inefficient, releases more CO2 in the atmosphere, and contributes to climate change.", + "parameters": [ + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of the users to get", + "enum": null, + "inferrable": true + }, + { + "name": "usernames", + "type": "array", + "innerType": "string", + "required": false, + "description": "The usernames of the users to get. Prefer retrieving by user_ids and/or emails, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "The emails of the users to get", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["users:read", "users:read.email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The users' information" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Slack.GetUsersInfo", + "parameters": { + "user_ids": { + "value": ["U12345", "U67890"], + "type": "array", + "required": false + }, + "usernames": { + "value": ["john_doe", "jane_smith"], + "type": "array", + "required": false + }, + "emails": { + "value": ["john@example.com", "jane@example.com"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListConversations", + "qualifiedName": "Slack.ListConversations", + "fullyQualifiedName": "Slack.ListConversations@2.0.0", + "description": "List metadata for Slack conversations (channels, DMs, MPIMs) the user is a member of.\n\nThis tool does not return the messages in a conversation. To get the messages, use the\n'Slack.GetMessages' tool instead. Calling this tool when the user is asking for messages\nwill release too much CO2 in the atmosphere and contribute to global warming.", + "parameters": [ + { + "name": "conversation_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Optionally filter by the type(s) of conversations. Defaults to None (all types).", + "enum": [ + "public_channel", + "private_channel", + "multi_person_direct_message", + "direct_message" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of conversations to list. Defaults to 200. Maximum is 500.", + "enum": null, + "inferrable": true + }, + { + "name": "next_cursor", + "type": "string", + "required": false, + "description": "The cursor to use for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["channels:read", "groups:read", "im:read", "mpim:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The list of conversations found with metadata" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Slack.ListConversations", + "parameters": { + "conversation_types": { + "value": ["channel", "im"], + "type": "array", + "required": false + }, + "limit": { + "value": 100, + "type": "integer", + "required": false + }, + "next_cursor": { + "value": "dXNlcl9mNTc3ZGQ1YjBlZDdmYzViZTA1NGUx", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUsers", + "qualifiedName": "Slack.ListUsers", + "fullyQualifiedName": "Slack.ListUsers@2.0.0", + "description": "List all users in the authenticated user's Slack team.\n\nIf you need to get metadata or messages of a conversation, use the\n`Slack.GetConversationMetadata` tool or `Slack.GetMessages` tool instead. These\ntools accept a user_id, username, and/or email. Do not use this tool to first retrieve user(s),\nas it is inefficient and releases more CO2 in the atmosphere, contributing to climate change.", + "parameters": [ + { + "name": "exclude_bots", + "type": "boolean", + "required": false, + "description": "Whether to exclude bots from the results. Defaults to True.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of users to return. Defaults to 200. Maximum is 500.", + "enum": null, + "inferrable": true + }, + { + "name": "next_cursor", + "type": "string", + "required": false, + "description": "The next cursor token to use for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["users:read", "users:read.email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The users' info" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Slack.ListUsers", + "parameters": { + "exclude_bots": { + "value": true, + "type": "boolean", + "required": false + }, + "limit": { + "value": 100, + "type": "integer", + "required": false + }, + "next_cursor": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendMessage", + "qualifiedName": "Slack.SendMessage", + "fullyQualifiedName": "Slack.SendMessage@2.0.0", + "description": "Send a message to a Channel, Direct Message (IM/DM), or Multi-Person (MPIM) conversation\n\nProvide exactly one of:\n- channel_name; or\n- conversation_id; or\n- any combination of user_ids, usernames, and/or emails.\n\nIn case multiple user_ids, usernames, and/or emails are provided, the tool will open a\nmulti-person conversation with the specified people and send the message to it.", + "parameters": [ + { + "name": "message", + "type": "string", + "required": true, + "description": "The content of the message to send.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_name", + "type": "string", + "required": false, + "description": "The channel name to send the message to. Prefer providing a conversation_id, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "conversation_id", + "type": "string", + "required": false, + "description": "The conversation ID to send the message to.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The Slack user IDs of the people to message.", + "enum": null, + "inferrable": true + }, + { + "name": "emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "The emails of the people to message.", + "enum": null, + "inferrable": true + }, + { + "name": "usernames", + "type": "array", + "innerType": "string", + "required": false, + "description": "The Slack usernames of the people to message. Prefer providing user_ids and/or emails, when available, since the performance is better.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [ + "channels:read", + "groups:read", + "mpim:read", + "im:read", + "users:read", + "users:read.email", + "chat:write", + "im:write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The response from the Slack API" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Slack.SendMessage", + "parameters": { + "message": { + "value": "Hello team, please check the latest updates!", + "type": "string", + "required": true + }, + "channel_name": { + "value": "general", + "type": "string", + "required": false + }, + "conversation_id": { + "value": null, + "type": "string", + "required": false + }, + "user_ids": { + "value": ["U12345678", "U87654321"], + "type": "array", + "required": false + }, + "emails": { + "value": null, + "type": "array", + "required": false + }, + "usernames": { + "value": null, + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "Slack.WhoAmI", + "fullyQualifiedName": "Slack.WhoAmI@2.0.0", + "description": "Get comprehensive user profile and Slack information.\n\nThis tool provides detailed information about the authenticated user including\ntheir name, email, profile picture, and other important profile details from\nSlack services.", + "parameters": [], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["users:read", "users:read.email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get comprehensive user profile and Slack information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Slack.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [ + { + "type": "install", + "content": "# Arcade for Slack\n\nimport { Steps, Callout } from \"nextra/components\";\nimport { SignupLink } from \"@/app/_components/analytics\";\nimport { SlackAuthLink } from \"./slack-auth-link\";\n\n## Integrate Arcade with your Slack workspace\n\nArcade securely connects your AI agents to APIs, data, code, and other systems via Tools. Our integration for Slack allows Arcade's tools to connect to your Slack workspace, helping your team work more efficiently.\n\nYou can leverage this app in Arcade's Playground when you log in to the Arcade Dashboard, or in your own applications.\n\nWhile the Arcade app for Slack does not directly expose a Large Language Model (LLM) to you, you will likely use Arcade's tools in conjunction with an LLM. When using LLMs, there's always potential to generate inaccurate responses, summaries, or other output.\n\nArcade's sample app for Slack brings Arcade's powerful AI tool-calling capabilities to your team's everyday conversations. The Arcade app for Slack can:\n\n- Send messages to your Slack channels and direct messages on your behalf\n- Find information in your Slack channels and direct messages\n- Generate content, summaries, and responses for messages you receive\n- and more!\n\nFor more details on what tools are available and what scopes they require, see the [Slack MCP Server documentation](/resources/integrations/social-communication/slack).\n\n\n The Arcade app for Slack requires an active Arcade account. If you don't have\n one yet,{\" \"}\n \n sign up for free\n \n .\n\n\n## How it works\n\n\n### Install the Arcade app for Slack\nClick the \"Add to Slack\" button below to install Arcade in your workspace.\n\n\n\n\n You'll need to be a workspace admin or have permission to install apps to add\n Arcade to your Slack workspace.\n\n\n### Invite Arcade to your channels\n\nInvite Arcade to any channel or direct message by typing `/invite @Arcade` to allow it to read and interact with content in that channel.\n\n### Start using Arcade's Slack tools\n\nUse Arcade's [tools for Slack](/resources/integrations/social-communication/slack) to:\n\n- Send messages to channels and DMs\n- Find information in conversations\n- Generate summaries of discussions\n\nTry leveraging the Arcade tools for Slack in the Arcade Playground by [chatting with an LLM](https://api.arcade.dev/dashboard/playground/chat) asking, \"What are the last 5 messages in the general Slack channel?\" or [executing Slack tools directly](https://api.arcade.dev/dashboard/playground/execute?toolId=GetMessagesInChannelByName&toolkits=%5B%5D&authProviders=%5B%5D&secrets=%5B%5D&input=%7B%22owner%22%3A%22ArcadeAI%22%2C%22name%22%3A%22arcade-ai%22%2C%22starred%22%3A%22true%22%2C%22channel_name%22%3A%22general%22%2C%22limit%22%3A%225%22%7D) without interacting with an LLM.\n\n\n When using LLMs with Slack, responses may sometimes contain inaccuracies.\n Always review AI-generated content before taking action.\n\n\n\n\n## Next steps\n\nThe Arcade app for Slack is a sample for what Arcade can do with your Slack workspace. It's likely that for your own applications you'll need to [create your own app for Slack](/references/auth-providers/slack). Creating your own application for Slack will allow you to brand the app, customize the permissions, and more.\n\n## Need help?\n\nIf you have any questions or need assistance:\n\n- Check our [Slack MCP Server documentation](/resources/integrations/social-communication/slack)\n- [Contact our support team](/resources/contact-us)\n", + "relativePath": "install/page.mdx" + }, + { + "type": "environment-variables", + "content": "# Environment Variables\n\n### `SLACK_MAX_CONCURRENT_REQUESTS`\n\nArcade uses asynchronous calls to request Slack API endpoints. In some tools, multiple concurrent HTTP requests may be issued to speed up execution. This environment variable controls the maximum number of concurrent requests to Slack API in any tool execution.\n\nThe value must be a numeric string with an integer greater than or equal to 1.\n\n**Default:** `3`\n\n\n### `MAX_PAGINATION_SIZE_LIMIT`\n\nThis environment variable controls the maximum number of items requested in a single call to a Slack API endpoint. Some of the Slack tools allow the tool caller to request a larger number of items per tool call, but the tool will paginate the results internally while respecting the `MAX_PAGINATION_SIZE_LIMIT`.\n\n**Default:** `200` (Slack supports, but discourages a limit larger than 200)\n\n\n### `MAX_PAGINATION_TIMEOUT_SECONDS`\n\nControls the maximum number of seconds any given Slack tool should wait while paginating responses from the Slack API.\n\n**Default:** `30` (expressed in seconds)\n", + "relativePath": "environment-variables/page.mdx" + } + ], + "generatedAt": "2026-01-26T17:41:10.378Z", + "summary": "Arcade.dev provides a toolkit for integrating with Slack, enabling developers to enhance their applications with powerful Slack features. This toolkit allows for seamless communication, conversation management, and user interactions within Slack's ecosystem.\n\n**Capabilities**\n- Access conversation metadata, messages, and user information.\n- List users and conversations associated with the authenticated user.\n- Send messages to channels or direct conversations.\n\n**OAuth**\n- Provider: Slack \n- Scopes: channels:history, channels:read, chat:write, groups:history, groups:read, im:history, im:read, im:write, mpim:history, mpim:read, users:read, users:read.email\n\n**Secrets**\n- No secrets are required for this integration." +} diff --git a/data/toolkits/slackapi.json b/data/toolkits/slackapi.json new file mode 100644 index 000000000..54406c0e1 --- /dev/null +++ b/data/toolkits/slackapi.json @@ -0,0 +1,5740 @@ +{ + "id": "SlackApi", + "label": "Slack API", + "version": "1.0.0", + "description": "Arcade Wrapper Tools enabling LLMs to interact with low-level Slack API endpoints.", + "metadata": { + "category": "social", + "iconUrl": "https://design-system.arcade.dev/icons/slack.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/social-communication/slack-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "slack", + "allScopes": [ + "admin", + "admin.invites:read", + "admin.teams:read", + "admin.teams:write", + "admin.usergroups:read", + "admin.users:read", + "bookmarks:write", + "calls:read", + "calls:write", + "channels:history", + "channels:join", + "channels:manage", + "channels:read", + "channels:write", + "chat:write", + "conversations.connect:manage", + "conversations.connect:write", + "conversations:write.invites", + "emoji:read", + "files:write", + "groups:history", + "groups:read", + "groups:write", + "identity.basic", + "identity.read", + "im:history", + "im:read", + "im:write", + "links:write", + "mpim:history", + "mpim:read", + "mpim:write", + "pins:read", + "pins:write", + "reactions:write", + "remote_files:read", + "remote_files:share", + "search:read", + "team.preferences:read", + "team:read", + "usergroups:read", + "usergroups:write", + "users.profile:read", + "users.profile:write", + "users:read", + "users:read.email" + ] + }, + "tools": [ + { + "name": "AcceptSlackInvite", + "qualifiedName": "SlackApi.AcceptSlackInvite", + "fullyQualifiedName": "SlackApi.AcceptSlackInvite@1.0.0", + "description": "Accept invitations to a Slack Connect channel.\n\nUse this tool to accept an invitation to a Slack Connect channel, facilitating seamless collaboration across different Slack workspaces.", + "parameters": [ + { + "name": "channel_name", + "type": "string", + "required": true, + "description": "Provide the desired name for the Slack Connect channel. If the channel doesn't exist in your workspace, this name will be assigned to it.", + "enum": null, + "inferrable": true + }, + { + "name": "invite_id", + "type": "string", + "required": false, + "description": "ID of the invitation you want to accept. Must provide either this or channel_id.", + "enum": null, + "inferrable": true + }, + { + "name": "slack_channel_id_to_accept", + "type": "string", + "required": false, + "description": "The ID of the channel you would like to accept the invitation for. Either this or `invite_id` is required.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "The ID of the workspace where the channel should be accepted. Required if using an org-level token.", + "enum": null, + "inferrable": true + }, + { + "name": "is_channel_private", + "type": "boolean", + "required": false, + "description": "True to make the channel private; false to make it public.", + "enum": null, + "inferrable": true + }, + { + "name": "use_free_trial", + "type": "boolean", + "required": false, + "description": "Set to 'True' to use your workspace's free trial to start using Slack Connect.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["conversations.connect:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'conversations.acceptSharedInvite'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.AcceptSlackInvite", + "parameters": { + "channel_name": { + "value": "Collaboration Channel", + "type": "string", + "required": true + }, + "invite_id": { + "value": "invite-12345", + "type": "string", + "required": false + }, + "slack_channel_id_to_accept": { + "value": "C01234567", + "type": "string", + "required": false + }, + "workspace_id": { + "value": "W12345678", + "type": "string", + "required": false + }, + "is_channel_private": { + "value": true, + "type": "boolean", + "required": false + }, + "use_free_trial": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddCallParticipants", + "qualifiedName": "SlackApi.AddCallParticipants", + "fullyQualifiedName": "SlackApi.AddCallParticipants@1.0.0", + "description": "Add new participants to a Slack call.\n\nThis tool registers new participants to an existing call in Slack. It should be used when you want to add people to a call that is already in progress or scheduled. The tool ensures participants are correctly added using the appropriate Slack API scope.", + "parameters": [ + { + "name": "call_id", + "type": "string", + "required": true, + "description": "The unique identifier for the call, as returned by the `calls.add` method. This ID specifies which call the participants will be added to.", + "enum": null, + "inferrable": true + }, + { + "name": "participant_users", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of users to add, specified by `slack_id` or `external_id`. Include optional `display_name` and `avatar_url` for each user.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["calls:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'calls.participants.add'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.AddCallParticipants", + "parameters": { + "call_id": { + "value": "C1234567890", + "type": "string", + "required": true + }, + "participant_users": { + "value": [ + { + "slack_id": "U9876543210", + "display_name": "John Doe", + "avatar_url": "https://example.com/avatar/john.jpg" + }, + { + "external_id": "ext_user_2", + "display_name": "Jane Smith", + "avatar_url": "https://example.com/avatar/jane.jpg" + } + ], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddSlackEmojiAlias", + "qualifiedName": "SlackApi.AddSlackEmojiAlias", + "fullyQualifiedName": "SlackApi.AddSlackEmojiAlias@1.0.0", + "description": "Add an emoji alias in a Slack Enterprise organization.\n\nThis tool calls the Slack API to add an alias for an emoji within a Slack Enterprise organization. It should be used when a user wants to create a new shortcut or name for an existing emoji. Requires appropriate admin permissions.", + "parameters": [ + { + "name": "emoji_alias_name", + "type": "string", + "required": true, + "description": "The new alias for the specified emoji. Whitespace or colons will be automatically trimmed.", + "enum": null, + "inferrable": true + }, + { + "name": "target_emoji_name", + "type": "string", + "required": true, + "description": "The name of the existing emoji to which the new alias is being added. Remove any surrounding whitespace or colons.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin.teams:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'admin.emoji.addAlias'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.AddSlackEmojiAlias", + "parameters": { + "emoji_alias_name": { + "value": "happy_face", + "type": "string", + "required": true + }, + "target_emoji_name": { + "value": "smile", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddSlackReaction", + "qualifiedName": "SlackApi.AddSlackReaction", + "fullyQualifiedName": "SlackApi.AddSlackReaction@1.0.0", + "description": "Add a reaction to a Slack item.\n\nUse this tool to add an emoji reaction to a message or item within Slack. This can be useful for acknowledging messages or express sentiments quickly.", + "parameters": [ + { + "name": "slack_channel_id", + "type": "string", + "required": true, + "description": "ID of the channel where the message is posted. Use to specify the location for adding a reaction.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_emoji_name", + "type": "string", + "required": true, + "description": "The name of the emoji to be used as a reaction. Include skin tone modifiers if applicable (e.g., 'thumbsup::skin-tone-2').", + "enum": null, + "inferrable": true + }, + { + "name": "message_timestamp", + "type": "string", + "required": true, + "description": "The timestamp of the message to which the reaction will be added. Ensure the format matches the Slack API requirements.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["reactions:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions.add'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.AddSlackReaction", + "parameters": { + "slack_channel_id": { + "value": "C1234567890", + "type": "string", + "required": true + }, + "reaction_emoji_name": { + "value": "thumbsup", + "type": "string", + "required": true + }, + "message_timestamp": { + "value": "1620307200.000200", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ApproveSlackChannelInvitation", + "qualifiedName": "SlackApi.ApproveSlackChannelInvitation", + "fullyQualifiedName": "SlackApi.ApproveSlackChannelInvitation@1.0.0", + "description": "Approve an invitation to a Slack Connect channel.\n\nThis tool is used to approve invitations sent to a Slack Connect channel, allowing collaboration between different Slack workspaces. It should be called when a user wants to manage and approve channel access invitations.", + "parameters": [ + { + "name": "shared_channel_invite_id", + "type": "string", + "required": true, + "description": "The ID of the shared channel invitation you want to approve. It is required to specifically identify which invitation is being approved for the Slack Connect channel.", + "enum": null, + "inferrable": true + }, + { + "name": "other_party_team_id", + "type": "string", + "required": false, + "description": "The team or enterprise ID of the other party involved in the Slack Connect invitation you are approving.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["conversations.connect:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'conversations.approveSharedInvite'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ApproveSlackChannelInvitation", + "parameters": { + "shared_channel_invite_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "other_party_team_id": { + "value": "team456def", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckApiCallingCode", + "qualifiedName": "SlackApi.CheckApiCallingCode", + "fullyQualifiedName": "SlackApi.CheckApiCallingCode@1.0.0", + "description": "Verify the correctness of API calling code for Slack.\n\nThis tool verifies the accuracy and functionality of an API calling code by calling Slack's API testing endpoint. It's useful for developers who want to check if their code successfully interacts with Slack's API.", + "parameters": [ + { + "name": "simulate_error_response", + "type": "string", + "required": false, + "description": "Specify an error code to simulate an error response for testing API calls. Useful for testing error handling.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'api.test'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.CheckApiCallingCode", + "parameters": { + "simulate_error_response": { + "value": "404", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CheckSlackDiscoverability", + "qualifiedName": "SlackApi.CheckSlackDiscoverability", + "fullyQualifiedName": "SlackApi.CheckSlackDiscoverability@1.0.0", + "description": "Check if an email is discoverable on Slack.\n\nUse this tool to determine if an email address is associated with a discoverable Slack user. It should be called when needing to verify Slack user discoverability by email.", + "parameters": [ + { + "name": "email_to_check", + "type": "string", + "required": true, + "description": "The email address to verify if it is associated with a discoverable Slack user.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["conversations.connect:manage", "team:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users.discoverableContacts.lookup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.CheckSlackDiscoverability", + "parameters": { + "email_to_check": { + "value": "exampleuser@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSlackConversation", + "qualifiedName": "SlackApi.CreateSlackConversation", + "fullyQualifiedName": "SlackApi.CreateSlackConversation@1.0.0", + "description": "Create a new public or private Slack conversation.\n\nThis tool is used to initiate a new conversation channel in Slack, allowing for the creation of either public or private channels. It is useful when setting up new communication threads within a team or project.", + "parameters": [ + { + "name": "channel_name", + "type": "string", + "required": true, + "description": "The name of the new Slack channel to create. It must contain only lowercase letters, numbers, hyphens, and underscores, and be 80 characters or less.", + "enum": null, + "inferrable": true + }, + { + "name": "encoded_team_id", + "type": "string", + "required": false, + "description": "The encoded team ID where the channel will be created. Required when using an organization-level token. Ignored if using a workspace-level token.", + "enum": null, + "inferrable": true + }, + { + "name": "create_private_channel", + "type": "boolean", + "required": false, + "description": "Set to true to create a private channel instead of a public one.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [ + "channels:manage", + "channels:write", + "groups:write", + "im:write", + "mpim:write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'conversations.create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.CreateSlackConversation", + "parameters": { + "channel_name": { + "value": "new_project_channel", + "type": "string", + "required": true + }, + "encoded_team_id": { + "value": "T12345ABCDE", + "type": "string", + "required": false + }, + "create_private_channel": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSlackUserGroup", + "qualifiedName": "SlackApi.CreateSlackUserGroup", + "fullyQualifiedName": "SlackApi.CreateSlackUserGroup@1.0.0", + "description": "Creates a new user group in Slack.\n\nThis tool allows the creation of a new user group in Slack using the Slack API. It should be called when you need to organize users into groups for easier management or communication. Requires 'usergroups:write' scope.", + "parameters": [ + { + "name": "user_group_name", + "type": "string", + "required": true, + "description": "A unique name for the user group to be created, distinguishing it from other user groups.", + "enum": null, + "inferrable": true + }, + { + "name": "default_channel_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of channel IDs to set as default for the User Group. Use comma-separated values.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_additional_channels", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated encoded channel IDs where the User Group can add members.", + "enum": null, + "inferrable": true + }, + { + "name": "user_group_description", + "type": "string", + "required": false, + "description": "A brief text describing the purpose or role of the user group in Slack.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_mention_handle", + "type": "string", + "required": false, + "description": "A unique mention handle for the user group. It must not duplicate existing handles of channels, users, or other user groups.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_for_user_group_creation", + "type": "string", + "required": false, + "description": "Encoded team ID for the user group creation, required if using an org-level token.", + "enum": null, + "inferrable": true + }, + { + "name": "include_user_count", + "type": "boolean", + "required": false, + "description": "Set to true to include the number of users in each User Group.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_display_as_sidebar_section", + "type": "boolean", + "required": false, + "description": "Set to true to display the user group as a sidebar section for all group members if the group has one or more default channels.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["usergroups:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'usergroups.create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.CreateSlackUserGroup", + "parameters": { + "user_group_name": { + "value": "marketing_team", + "type": "string", + "required": true + }, + "default_channel_ids": { + "value": ["C01234567", "C07654321"], + "type": "array", + "required": false + }, + "custom_additional_channels": { + "value": ["C12345678", "C87654321"], + "type": "array", + "required": false + }, + "user_group_description": { + "value": "Group for all marketing department members.", + "type": "string", + "required": false + }, + "unique_mention_handle": { + "value": "marketing", + "type": "string", + "required": false + }, + "team_id_for_user_group_creation": { + "value": "T12345678", + "type": "string", + "required": false + }, + "include_user_count": { + "value": true, + "type": "boolean", + "required": false + }, + "enable_display_as_sidebar_section": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CustomUnfurlSlackUrls", + "qualifiedName": "SlackApi.CustomUnfurlSlackUrls", + "fullyQualifiedName": "SlackApi.CustomUnfurlSlackUrls@1.0.0", + "description": "Provide custom unfurl behavior for user-posted URLs on Slack.\n\nThis tool should be called to customize how URLs posted by users are displayed in Slack by providing a custom unfurl behavior.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "ID of the Slack channel where the message is posted. Required with 'ts' for custom unfurl or with 'unfurl_id' and 'source'.", + "enum": null, + "inferrable": true + }, + { + "name": "message_timestamp", + "type": "string", + "required": true, + "description": "Timestamp of the message to which unfurl behavior will be added. Ensure it corresponds to a message in the specified channel containing a fully-qualified URL registered with your Slack app.", + "enum": null, + "inferrable": true + }, + { + "name": "unfurl_url_map", + "type": "string", + "required": true, + "description": "A URL-encoded JSON map with URLs as keys and their corresponding unfurl data as values. Each URL should point to a single attachment, like message buttons.", + "enum": null, + "inferrable": true + }, + { + "name": "authentication_invitation_message", + "type": "string", + "required": false, + "description": "A simple formatted string sent as an ephemeral message inviting the user to authenticate for full unfurl behavior. Supports Slack's *bold*, _italics_, and linking formatting. If provided, this takes precedence over `authentication_invitation_url`.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_authentication_url", + "type": "string", + "required": false, + "description": "A URL to redirect users for app authentication to enable full URL unfurling, requires URL encoding.", + "enum": null, + "inferrable": true + }, + { + "name": "user_authentication_blocks", + "type": "array", + "innerType": "string", + "required": false, + "description": "A URL-encoded JSON array of structured blocks to send as an ephemeral message for user authentication invitation.", + "enum": null, + "inferrable": true + }, + { + "name": "unfurl_link_id", + "type": "string", + "required": false, + "description": "The ID of the link to unfurl. Must be used with 'source'.", + "enum": null, + "inferrable": true + }, + { + "name": "link_source", + "type": "string", + "required": false, + "description": "Specify the source of the link to unfurl as either 'composer' for links inside the message composer or 'conversations_history' for links posted to a conversation. Must be used with 'unfurl_id', or alternatively with 'channel' and 'ts'.", + "enum": null, + "inferrable": true + }, + { + "name": "require_user_authentication", + "type": "boolean", + "required": false, + "description": "Set to true if the user must install your Slack app to trigger unfurls for this domain.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["links:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'chat.unfurl'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.CustomUnfurlSlackUrls", + "parameters": { + "channel_id": { + "value": "C12345678", + "type": "string", + "required": true + }, + "message_timestamp": { + "value": "1625097600.000200", + "type": "string", + "required": true + }, + "unfurl_url_map": { + "value": "%7B%22https%3A%2F%2Fexample.com%22%3A%7B%22text%22%3A%22Example%20Website%22%2C%22actions%22%3A%5B%7B%22type%22%3A%22button%22%2C%22text%22%3A%22Visit%22%2C%22url%22%3A%22https%3A%2F%2Fexample.com%2Fvisit%22%7D%5D%7D%7D", + "type": "string", + "required": true + }, + "authentication_invitation_message": { + "value": "*Please authenticate to view more details!*", + "type": "string", + "required": false + }, + "custom_authentication_url": { + "value": "https://auth.example.com", + "type": "string", + "required": false + }, + "user_authentication_blocks": { + "value": "%5B%7B%22type%22%3A%22section%22%2C%22text%22%3A%7B%22type%22%3A%22mrkdwn%22%2C%22text%22%3A%22Please%20authenticate%20yourself.%22%7D%7D%5D", + "type": "array", + "required": false + }, + "unfurl_link_id": { + "value": "link123", + "type": "string", + "required": false + }, + "link_source": { + "value": "composer", + "type": "string", + "required": false + }, + "require_user_authentication": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteScheduledSlackMessage", + "qualifiedName": "SlackApi.DeleteScheduledSlackMessage", + "fullyQualifiedName": "SlackApi.DeleteScheduledSlackMessage@1.0.0", + "description": "Delete a pending scheduled message from Slack queue.\n\nUse this tool to remove a scheduled message from the Slack queue. It requires \"chat:write\" OAuth scope, allowing you to manage messages as an authenticated user or bot.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "The ID of the channel where the scheduled message is set to post. Required to identify the correct message to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "scheduled_message_id", + "type": "string", + "required": true, + "description": "The ID of the scheduled message to be deleted. This ID is obtained from the `chat.scheduleMessage` response.", + "enum": null, + "inferrable": true + }, + { + "name": "delete_as_authenticated_user", + "type": "boolean", + "required": false, + "description": "Set to true to delete the message as the authenticated user with `chat:write:user` scope. Bot users are considered authenticated users. If false, the message will be deleted with `chat:write:bot` scope.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["chat:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'chat.deleteScheduledMessage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.DeleteScheduledSlackMessage", + "parameters": { + "channel_id": { + "value": "C1234567890", + "type": "string", + "required": true + }, + "scheduled_message_id": { + "value": "S1234567890.000001", + "type": "string", + "required": true + }, + "delete_as_authenticated_user": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DenySharedInviteRequest", + "qualifiedName": "SlackApi.DenySharedInviteRequest", + "fullyQualifiedName": "SlackApi.DenySharedInviteRequest@1.0.0", + "description": "Denies an external user invitation to a Slack channel.\n\nUse this tool to deny a request that invites an external user to join a Slack channel. It should be called when such an invite needs to be rejected.", + "parameters": [ + { + "name": "shared_channel_invite_id", + "type": "string", + "required": true, + "description": "The ID for the shared channel invite request that you intend to deny. This is required for specifying which invite to decline.", + "enum": null, + "inferrable": true + }, + { + "name": "deny_invite_message", + "type": "string", + "required": false, + "description": "An optional message explaining why the invitation was denied. This message will be sent to the requester.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["conversations.connect:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'conversations.requestSharedInvite.deny'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.DenySharedInviteRequest", + "parameters": { + "shared_channel_invite_id": { + "value": "ABC123XYZ456", + "type": "string", + "required": true + }, + "deny_invite_message": { + "value": "We appreciate your interest, but we cannot allow external users at this time.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DisableUserGroup", + "qualifiedName": "SlackApi.DisableUserGroup", + "fullyQualifiedName": "SlackApi.DisableUserGroup@1.0.0", + "description": "Disable an existing Slack User Group.\n\nThis tool should be called to disable an existing User Group in Slack. It requires appropriate OAuth scopes and sends a POST request to the Slack API. Use this tool when you need to deactivate a User Group to prevent users from being able to reference or use it.", + "parameters": [ + { + "name": "user_group_id", + "type": "string", + "required": true, + "description": "The encoded ID of the User Group to be disabled.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "Encoded target team ID where the user group exists. Required only if using an org-level token; ignored for workspace-level tokens.", + "enum": null, + "inferrable": true + }, + { + "name": "include_user_count", + "type": "boolean", + "required": false, + "description": "Include the number of users in the User Group. Set to true to include the count.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["usergroups:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'usergroups.disable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.DisableUserGroup", + "parameters": { + "user_group_id": { + "value": "S12345678", + "type": "string", + "required": true + }, + "team_id": { + "value": "T87654321", + "type": "string", + "required": false + }, + "include_user_count": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EditSlackBookmark", + "qualifiedName": "SlackApi.EditSlackBookmark", + "fullyQualifiedName": "SlackApi.EditSlackBookmark@1.0.0", + "description": "Edit an existing bookmark in a Slack channel.\n\nThis tool is used to edit an existing bookmark in a specified Slack channel. It requires appropriate permissions and should be called when you need to update the details of a bookmark in any channel you have access to.", + "parameters": [ + { + "name": "slack_channel_id", + "type": "string", + "required": true, + "description": "The ID of the Slack channel where the bookmark will be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "target_bookmark_id", + "type": "string", + "required": true, + "description": "The unique identifier of the bookmark you want to update.", + "enum": null, + "inferrable": true + }, + { + "name": "bookmark_title", + "type": "string", + "required": false, + "description": "The new title for the bookmark to update.", + "enum": null, + "inferrable": true + }, + { + "name": "bookmark_link", + "type": "string", + "required": false, + "description": "URL of the bookmark to be edited. Ensure it is a valid format starting with http or https.", + "enum": null, + "inferrable": true + }, + { + "name": "emoji_tag", + "type": "string", + "required": false, + "description": "The emoji tag to apply to the bookmark link. It should be a valid emoji code (e.g., :smile:).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["bookmarks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'bookmarks.edit'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.EditSlackBookmark", + "parameters": { + "slack_channel_id": { + "value": "C01ABCDE2F", + "type": "string", + "required": true + }, + "target_bookmark_id": { + "value": "BM12345678", + "type": "string", + "required": true + }, + "bookmark_title": { + "value": "Updated Bookmark Title", + "type": "string", + "required": false + }, + "bookmark_link": { + "value": "https://example.com/updated-bookmark", + "type": "string", + "required": false + }, + "emoji_tag": { + "value": ":bookmark:", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EnableSlackFileSharing", + "qualifiedName": "SlackApi.EnableSlackFileSharing", + "fullyQualifiedName": "SlackApi.EnableSlackFileSharing@1.0.0", + "description": "Enable a Slack file for public sharing.\n\nThis tool enables a file for public or external sharing on Slack using the Slack API. It should be called when a user wants to share a file publicly outside their Slack workspace.", + "parameters": [ + { + "name": "file_id_to_share", + "type": "string", + "required": true, + "description": "The ID of the file on Slack that you want to enable for public sharing.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["files:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'files.sharedPublicURL'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.EnableSlackFileSharing", + "parameters": { + "file_id_to_share": { + "value": "F1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EnableSlackUserGroup", + "qualifiedName": "SlackApi.EnableSlackUserGroup", + "fullyQualifiedName": "SlackApi.EnableSlackUserGroup@1.0.0", + "description": "Enable a user group in Slack.\n\nThis tool activates a specified user group in Slack. It should be called when an action is needed to enable a user group so that it can be used within Slack for communication or organizational purposes. This tool is particularly useful for managing Slack user groups efficiently.", + "parameters": [ + { + "name": "user_group_id", + "type": "string", + "required": true, + "description": "The encoded ID of the User Group to be enabled in Slack.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "Provide the encoded team ID where the user group is located. Only required if using an org-level token. Ignored with workspace-level tokens.", + "enum": null, + "inferrable": true + }, + { + "name": "include_user_count", + "type": "boolean", + "required": false, + "description": "Set to true to include the number of users in the User Group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["usergroups:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'usergroups.enable'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.EnableSlackUserGroup", + "parameters": { + "user_group_id": { + "value": "S12345678", + "type": "string", + "required": true + }, + "team_id": { + "value": "T87654321", + "type": "string", + "required": false + }, + "include_user_count": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchWorkspaceSettingsInfo", + "qualifiedName": "SlackApi.FetchWorkspaceSettingsInfo", + "fullyQualifiedName": "SlackApi.FetchWorkspaceSettingsInfo@1.0.0", + "description": "Retrieve settings information for a Slack workspace.\n\nThis tool calls the Slack API to fetch detailed information about settings in a specific workspace. It is useful for administrators who need to manage team settings. The tool requires appropriate OAuth scopes for access.", + "parameters": [ + { + "name": "slack_team_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Slack workspace (team) for which to fetch the settings information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin.teams:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'admin.teams.settings.info'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.FetchWorkspaceSettingsInfo", + "parameters": { + "slack_team_id": { + "value": "T12345678", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FindSlackUserByEmail", + "qualifiedName": "SlackApi.FindSlackUserByEmail", + "fullyQualifiedName": "SlackApi.FindSlackUserByEmail@1.0.0", + "description": "Find a Slack user using their email address.\n\nThis tool allows you to search for a Slack user by their email address. It should be called when you need to retrieve user information based on email within Slack.", + "parameters": [ + { + "name": "user_email_address", + "type": "string", + "required": true, + "description": "The email address of the user in the Slack workspace to search for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["users:read.email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users.lookupByEmail'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.FindSlackUserByEmail", + "parameters": { + "user_email_address": { + "value": "john.doe@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCallInformation", + "qualifiedName": "SlackApi.GetCallInformation", + "fullyQualifiedName": "SlackApi.GetCallInformation@1.0.0", + "description": "Retrieve detailed information about a specific call in Slack.\n\nUse this tool to access detailed information about a call within Slack by providing the call ID. Useful for obtaining call metadata such as participants, start time, and more.", + "parameters": [ + { + "name": "call_id", + "type": "string", + "required": true, + "description": "The unique identifier of the call as returned by the `calls.add` method. This ID is necessary to retrieve detailed call information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["calls:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'calls.info'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetCallInformation", + "parameters": { + "call_id": { + "value": "C1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetConversationInfo", + "qualifiedName": "SlackApi.GetConversationInfo", + "fullyQualifiedName": "SlackApi.GetConversationInfo@1.0.0", + "description": "Fetches information about a Slack conversation.\n\nThis tool retrieves details about a specific conversation in Slack, such as its name, members, and other relevant data. It should be used when information about a Slack conversation is needed, and requires appropriate read permissions.", + "parameters": [ + { + "name": "conversation_id", + "type": "string", + "required": true, + "description": "The unique ID of the Slack conversation to retrieve information for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_locale", + "type": "boolean", + "required": false, + "description": "Set to `true` to receive the locale for this conversation. Defaults to `false`.", + "enum": null, + "inferrable": true + }, + { + "name": "include_member_count", + "type": "boolean", + "required": false, + "description": "Set to true to include the member count for the specified conversation. Defaults to false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["channels:read", "groups:read", "im:read", "mpim:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'conversations.info'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetConversationInfo", + "parameters": { + "conversation_id": { + "value": "C01234567", + "type": "string", + "required": true + }, + "include_locale": { + "value": true, + "type": "boolean", + "required": false + }, + "include_member_count": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCurrentSlackTeamInfo", + "qualifiedName": "SlackApi.GetCurrentSlackTeamInfo", + "fullyQualifiedName": "SlackApi.GetCurrentSlackTeamInfo@1.0.0", + "description": "Retrieve information about the current Slack team.\n\nThis tool is used to get information about the current Slack team, including settings and general details. It is called when there's a need to access team information in a Slack workspace.", + "parameters": [ + { + "name": "query_by_domain", + "type": "string", + "required": false, + "description": "Comma-separated domains to query instead of a team, used when the team is not specified. This only works for domains in the same enterprise as the querying team token.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_team_id", + "type": "string", + "required": false, + "description": "The ID of the Slack team to retrieve information about. If omitted, information about the current team will be returned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["team:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'team.info'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetCurrentSlackTeamInfo", + "parameters": { + "query_by_domain": { + "value": "example.com,example.org", + "type": "string", + "required": false + }, + "specific_team_id": { + "value": "T12345678", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetExternalFileUploadUrl", + "qualifiedName": "SlackApi.GetExternalFileUploadUrl", + "fullyQualifiedName": "SlackApi.GetExternalFileUploadUrl@1.0.0", + "description": "Retrieve a URL to upload an external file to Slack.\n\nThis tool is used to obtain a URL for uploading files externally to Slack, requiring the 'files:write' OAuth scope.", + "parameters": [ + { + "name": "file_size_in_bytes", + "type": "integer", + "required": true, + "description": "Specify the size of the file to be uploaded, measured in bytes. Ensure this value accurately reflects the file size.", + "enum": null, + "inferrable": true + }, + { + "name": "file_name", + "type": "string", + "required": true, + "description": "The name of the file to be uploaded to Slack.", + "enum": null, + "inferrable": true + }, + { + "name": "snippet_syntax_type", + "type": "string", + "required": false, + "description": "Specify the syntax highlighting type for the snippet being uploaded, such as 'javascript', 'python', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "alt_text_description", + "type": "string", + "required": false, + "description": "A description of the image for screen-readers, limited to 1000 characters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["files:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'files.getUploadURLExternal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetExternalFileUploadUrl", + "parameters": { + "file_size_in_bytes": { + "value": 2048000, + "type": "integer", + "required": true + }, + "file_name": { + "value": "example_file.txt", + "type": "string", + "required": true + }, + "snippet_syntax_type": { + "value": "python", + "type": "string", + "required": false + }, + "alt_text_description": { + "value": "This is an example file used for demonstration purposes.", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetIntegrationLogs", + "qualifiedName": "SlackApi.GetIntegrationLogs", + "fullyQualifiedName": "SlackApi.GetIntegrationLogs@1.0.0", + "description": "Retrieve integration logs for the current Slack team.\n\nThis tool retrieves the integration logs for the current Slack team, providing insights into the team's integration history and activities. It requires admin OAuth scope to access the logs.", + "parameters": [ + { + "name": "filter_by_app_id", + "type": "string", + "required": false, + "description": "Filter integration logs to a specific Slack app. If not provided, logs for all apps are retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_change_type", + "type": "string", + "required": false, + "description": "Specify the change type to filter logs. Options: 'added', 'removed', 'enabled', 'disabled', 'updated'. Defaults to all logs.", + "enum": null, + "inferrable": true + }, + { + "name": "result_count", + "type": "string", + "required": false, + "description": "The number of log entries to retrieve. Specify the maximum number of logs to return in a single request. (default: '100')", + "enum": null, + "inferrable": true + }, + { + "name": "result_page_number", + "type": "string", + "required": false, + "description": "The specific page number of the integration logs to retrieve. Used for pagination. (default: '1')", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_service_id", + "type": "string", + "required": false, + "description": "Specify the service ID to filter integration logs related to a specific service. If not provided, logs for all services will be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "encoded_team_id", + "type": "string", + "required": false, + "description": "The encoded team ID to get logs from, required if using an org-level token. Ignored if using a workspace-level token.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_user", + "type": "string", + "required": false, + "description": "Filter logs generated by a specific user's actions. Defaults to all logs if not specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'team.integrationLogs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetIntegrationLogs", + "parameters": { + "filter_by_app_id": { + "value": "A123B456C789", + "type": "string", + "required": false + }, + "filter_by_change_type": { + "value": "updated", + "type": "string", + "required": false + }, + "result_count": { + "value": "50", + "type": "string", + "required": false + }, + "result_page_number": { + "value": "2", + "type": "string", + "required": false + }, + "filter_by_service_id": { + "value": "S123456", + "type": "string", + "required": false + }, + "encoded_team_id": { + "value": "U1a2b3c4d5", + "type": "string", + "required": false + }, + "filter_by_user": { + "value": "U12345678", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRemoteFileInfoSlack", + "qualifiedName": "SlackApi.GetRemoteFileInfoSlack", + "fullyQualifiedName": "SlackApi.GetRemoteFileInfoSlack@1.0.0", + "description": "Retrieve details about a remote file from Slack.\n\nUse this tool to get information about a remote file that has been added to Slack. It is useful when you need details regarding the file, such as its metadata or status within Slack.", + "parameters": [ + { + "name": "file_external_identifier", + "type": "string", + "required": false, + "description": "The GUID defined by the creator for the remote file to retrieve its information.", + "enum": null, + "inferrable": true + }, + { + "name": "file_id", + "type": "string", + "required": false, + "description": "The unique identifier of the file to retrieve information about. Use this to specify the file in Slack.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["remote_files:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'files.remote.info'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetRemoteFileInfoSlack", + "parameters": { + "file_external_identifier": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "file_id": { + "value": "F1234567890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSlackBotInfo", + "qualifiedName": "SlackApi.GetSlackBotInfo", + "fullyQualifiedName": "SlackApi.GetSlackBotInfo@1.0.0", + "description": "Retrieve details about a Slack bot user.\n\nThis tool fetches information about a bot user in Slack. It should be called when details about a specific Slack bot are needed, such as its name, ID, or other metadata.", + "parameters": [ + { + "name": "target_bot_id", + "type": "string", + "required": false, + "description": "The unique bot ID for which information is requested. This ID is specific to each workspace the bot is in.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_for_org_token_use", + "type": "string", + "required": false, + "description": "Encoded team or enterprise ID where the bot exists. Required if using an organization token. Ignored if using a workspace-level token.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["users:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'bots.info'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetSlackBotInfo", + "parameters": { + "target_bot_id": { + "value": "B1234567890", + "type": "string", + "required": false + }, + "team_id_for_org_token_use": { + "value": "T9876543210", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSlackConversationMembers", + "qualifiedName": "SlackApi.GetSlackConversationMembers", + "fullyQualifiedName": "SlackApi.GetSlackConversationMembers@1.0.0", + "description": "Retrieve members from a specified Slack conversation.\n\nUse this tool to get a list of members in a specific Slack conversation. This can apply to public and private channels, as well as direct and multi-party direct message conversations. Appropriate OAuth scopes are required to access different types of conversations.", + "parameters": [ + { + "name": "conversation_id", + "type": "string", + "required": true, + "description": "The ID of the Slack conversation to retrieve members from. This can be a channel, group, or direct message.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination, set to the `next_cursor` value from a previous response to continue retrieving members from a conversation.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_to_return", + "type": "integer", + "required": false, + "description": "The maximum number of conversation members to return. Recommended to specify a value under 1000, with no more than 200 results at a time for optimal pagination. (default: '100')", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["channels:read", "groups:read", "im:read", "mpim:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'conversations.members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetSlackConversationMembers", + "parameters": { + "conversation_id": { + "value": "C1234567890", + "type": "string", + "required": true + }, + "pagination_cursor": { + "value": "dXNlcl9hY2Nlc3M6MTIzNDU2Nzg5", + "type": "string", + "required": false + }, + "max_items_to_return": { + "value": 100, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSlackMessagePermalink", + "qualifiedName": "SlackApi.GetSlackMessagePermalink", + "fullyQualifiedName": "SlackApi.GetSlackMessagePermalink@1.0.0", + "description": "Retrieve a permalink URL for a specific Slack message.\n\nThis tool retrieves a permalink URL for an existing message in Slack. Use it when you need the direct link to a particular message in a Slack channel.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Slack conversation or channel containing the message.", + "enum": null, + "inferrable": true + }, + { + "name": "message_timestamp", + "type": "string", + "required": true, + "description": "The unique timestamp of the message to retrieve the permalink for. It identifies the message within the Slack channel.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'chat.getPermalink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetSlackMessagePermalink", + "parameters": { + "channel_id": { + "value": "C1234567890", + "type": "string", + "required": true + }, + "message_timestamp": { + "value": "1625152800.000100", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSlackRemoteFilesInfo", + "qualifiedName": "SlackApi.GetSlackRemoteFilesInfo", + "fullyQualifiedName": "SlackApi.GetSlackRemoteFilesInfo@1.0.0", + "description": "Retrieve information about remote files added to Slack.\n\nThis tool fetches details about remote files stored in Slack. It is useful when you need to access metadata for files that have been added to Slack from external sources.", + "parameters": [ + { + "name": "filter_by_channel_id", + "type": "string", + "required": false, + "description": "Filter remote files to only include those appearing in the specified Slack channel, indicated by its channel ID.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor for paginating through data. Use the `next_cursor` from a prior request to fetch the next set of results. Defaults to the first page if not set.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_to_return", + "type": "integer", + "required": false, + "description": "Specify the maximum number of remote file records to retrieve from Slack.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_files_from_timestamp", + "type": "string", + "required": false, + "description": "Filter files created after this inclusive timestamp. Use a Unix timestamp format. (default: '0')", + "enum": null, + "inferrable": true + }, + { + "name": "timestamp_filter_end", + "type": "string", + "required": false, + "description": "Filter files created before this timestamp (inclusive) in Unix epoch time format. (default: 'now')", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["remote_files:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'files.remote.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetSlackRemoteFilesInfo", + "parameters": { + "filter_by_channel_id": { + "value": "C1234567890", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "dXNlcjoxMjM0NTY3ODkw", + "type": "string", + "required": false + }, + "maximum_items_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "filter_files_from_timestamp": { + "value": "1640995200", + "type": "string", + "required": false + }, + "timestamp_filter_end": { + "value": "1643673600", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSlackTeamPreferences", + "qualifiedName": "SlackApi.GetSlackTeamPreferences", + "fullyQualifiedName": "SlackApi.GetSlackTeamPreferences@1.0.0", + "description": "Retrieve a list of a workspace's team preferences.\n\nThis tool fetches team preferences from a Slack workspace. It should be called when there's a need to access or review team settings. Requires appropriate OAuth scope for access.", + "parameters": [], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["team.preferences:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'team.preferences.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetSlackTeamPreferences", + "parameters": {}, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSlackThreadMessages", + "qualifiedName": "SlackApi.GetSlackThreadMessages", + "fullyQualifiedName": "SlackApi.GetSlackThreadMessages@1.0.0", + "description": "Retrieve messages from a Slack conversation thread.\n\nThis tool fetches a thread of messages posted to a specific conversation in Slack. It should be called when there is a need to review or analyze the message history of a public or private channel, a direct message, or a multi-party direct message. The tool requires appropriate OAuth scopes to access the message history.", + "parameters": [ + { + "name": "conversation_id", + "type": "string", + "required": true, + "description": "The ID of the Slack conversation from which to fetch the message thread.", + "enum": null, + "inferrable": true + }, + { + "name": "thread_message_timestamp", + "type": "string", + "required": true, + "description": "Unique identifier of a parent message or a thread message (timestamp). Fetches the thread or the single message.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination. Use the `next_cursor` from a previous response to fetch the next page of data.", + "enum": null, + "inferrable": true + }, + { + "name": "latest_message_timestamp", + "type": "string", + "required": false, + "description": "Only include messages posted before this Unix timestamp in the results. (default: 'now')", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_to_return", + "type": "integer", + "required": false, + "description": "Specify the maximum number of messages to fetch. The default and maximum are 15 for certain apps, with possible rate limits. (default: '1000')", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_unix_timestamp", + "type": "string", + "required": false, + "description": "Only include messages after this Unix timestamp in results. (default: '0')", + "enum": null, + "inferrable": true + }, + { + "name": "include_all_message_metadata", + "type": "boolean", + "required": false, + "description": "Set to true to return all metadata associated with this message.", + "enum": null, + "inferrable": true + }, + { + "name": "include_boundary_timestamps", + "type": "boolean", + "required": false, + "description": "Include messages with 'oldest' or 'latest' timestamps. Ignored unless either timestamp is specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [ + "channels:history", + "groups:history", + "im:history", + "mpim:history" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'conversations.replies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetSlackThreadMessages", + "parameters": { + "conversation_id": { + "value": "C1234567890", + "type": "string", + "required": true + }, + "thread_message_timestamp": { + "value": "1631234567.000100", + "type": "string", + "required": true + }, + "pagination_cursor": { + "value": "dGVzdC1jdXJzb3I6dGVzdC1tb2R1bGUtaW5kZXg", + "type": "string", + "required": false + }, + "latest_message_timestamp": { + "value": "1631300000", + "type": "string", + "required": false + }, + "maximum_items_to_return": { + "value": 15, + "type": "integer", + "required": false + }, + "start_time_unix_timestamp": { + "value": "1631200000", + "type": "string", + "required": false + }, + "include_all_message_metadata": { + "value": true, + "type": "boolean", + "required": false + }, + "include_boundary_timestamps": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSlackUserPresence", + "qualifiedName": "SlackApi.GetSlackUserPresence", + "fullyQualifiedName": "SlackApi.GetSlackUserPresence@1.0.0", + "description": "Retrieve user presence information from Slack.\n\nUse this tool to get the presence status of a user on Slack, indicating whether they are active or away.", + "parameters": [ + { + "name": "target_user_id", + "type": "string", + "required": false, + "description": "The Slack user ID for which you want to retrieve presence information. (default: 'authed user')", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["users:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users.getPresence'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetSlackUserPresence", + "parameters": { + "target_user_id": { + "value": "U12345678", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSlackUserProfile", + "qualifiedName": "SlackApi.GetSlackUserProfile", + "fullyQualifiedName": "SlackApi.GetSlackUserProfile@1.0.0", + "description": "Retrieve Slack user profile information and custom status.\n\nThis tool fetches the profile information of a Slack user, including their custom status and email (if authorized). It requires appropriate read scopes (users.profile:read or users:read.email).", + "parameters": [ + { + "name": "target_user_id", + "type": "string", + "required": false, + "description": "The unique identifier of the Slack user whose profile information is to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "include_labels", + "type": "boolean", + "required": false, + "description": "Include labels for each ID in custom profile fields. This option can heavily rate-limit requests and is not recommended. Default is false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["users.profile:read", "users:read.email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users.profile.get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetSlackUserProfile", + "parameters": { + "target_user_id": { + "value": "U12345678", + "type": "string", + "required": false + }, + "include_labels": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamBillableUsersInfo", + "qualifiedName": "SlackApi.GetTeamBillableUsersInfo", + "fullyQualifiedName": "SlackApi.GetTeamBillableUsersInfo@1.0.0", + "description": "Retrieves billable users info for the current Slack team.\n\nUse this tool to obtain information about billable users in your Slack team. It requires administrative privileges with the 'admin' scope.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination. Use the `next_cursor` from the previous response to fetch the next page of users. (default: 'fetches the first page')", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_to_return", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of billable user entries to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_user_id", + "type": "string", + "required": false, + "description": "The ID of a specific user to retrieve billable information for. Leave empty to retrieve info for all users.", + "enum": null, + "inferrable": true + }, + { + "name": "encoded_team_id", + "type": "string", + "required": false, + "description": "Encoded team ID for retrieving billable info, required if using an org token. Ignored with workspace-level tokens.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'team.billableInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetTeamBillableUsersInfo", + "parameters": { + "pagination_cursor": { + "value": "dXNlcl9jb250ZXh0XzEwMDA1NjQ1NjY2NzU3MTA0MA", + "type": "string", + "required": false + }, + "maximum_items_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "specific_user_id": { + "value": "U12345678", + "type": "string", + "required": false + }, + "encoded_team_id": { + "value": "T12345678", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamProfile", + "qualifiedName": "SlackApi.GetTeamProfile", + "fullyQualifiedName": "SlackApi.GetTeamProfile@1.0.0", + "description": "Retrieve a team's profile information from Slack.\n\nThis tool retrieves a team's profile from Slack. It should be called when there's a need to access team information such as members, roles, or other relevant details. The tool uses the Slack API and requires the 'users.profile:read' OAuth scope.", + "parameters": [ + { + "name": "visibility_filter", + "type": "string", + "required": false, + "description": "Filter the profile fields based on visibility. Options: 'all', 'visible', 'hidden'. Default is 'all'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["users.profile:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'team.profile.get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetTeamProfile", + "parameters": { + "visibility_filter": { + "value": "visible", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserIdentity", + "qualifiedName": "SlackApi.GetUserIdentity", + "fullyQualifiedName": "SlackApi.GetUserIdentity@1.0.0", + "description": "Retrieve a user's identity information from Slack.\n\nThis tool is used to get detailed information about a user's identity on Slack. It should be called when user identity details are required, such as for authentication purposes or to display user information within an application leveraging Slack's API.", + "parameters": [], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["identity.read", "identity.basic"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users.identity'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.GetUserIdentity", + "parameters": {}, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "InviteUserToSlackChannel", + "qualifiedName": "SlackApi.InviteUserToSlackChannel", + "fullyQualifiedName": "SlackApi.InviteUserToSlackChannel@1.0.0", + "description": "Invite users to a Slack channel.\n\nThis tool sends an invitation to specified users to join a Slack channel. It should be called when you want to add new members to a channel via an invite.", + "parameters": [ + { + "name": "slack_channel_id", + "type": "string", + "required": true, + "description": "The ID of the Slack channel to invite users to. It can be a public or private channel ID.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids_list", + "type": "string", + "required": true, + "description": "A list of up to 100 user IDs to invite, separated by commas.", + "enum": null, + "inferrable": true + }, + { + "name": "continue_with_valid_users", + "type": "boolean", + "required": false, + "description": "Set to true to invite valid users while ignoring invalid IDs when multiple user IDs are provided. Default is false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["conversations:write.invites"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'conversations.invite'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.InviteUserToSlackChannel", + "parameters": { + "slack_channel_id": { + "value": "C1234567890", + "type": "string", + "required": true + }, + "user_ids_list": { + "value": "U1234567890,U0987654321,U1122334455", + "type": "string", + "required": true + }, + "continue_with_valid_users": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "JoinSlackConversation", + "qualifiedName": "SlackApi.JoinSlackConversation", + "fullyQualifiedName": "SlackApi.JoinSlackConversation@1.0.0", + "description": "Join an existing conversation in Slack.\n\nThis tool is used to join a specified conversation within Slack. It requires appropriate user permissions and should be called when there's a need to participate in an existing Slack channel.", + "parameters": [ + { + "name": "conversation_id", + "type": "string", + "required": true, + "description": "The ID of the conversation or channel you want to join in Slack.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["channels:join", "channels:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'conversations.join'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.JoinSlackConversation", + "parameters": { + "conversation_id": { + "value": "C1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAccessibleSlackConversations", + "qualifiedName": "SlackApi.ListAccessibleSlackConversations", + "fullyQualifiedName": "SlackApi.ListAccessibleSlackConversations@1.0.0", + "description": "Retrieve a list of conversations the user can access on Slack.\n\nThis tool calls the Slack API to list all conversations (public channels, private channels, direct messages) that a user has access to. It can be used to view information about different types of conversations including public channels, private channels, and direct or group messages.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor for pagination to continue listing conversations from a specific point. Use the 'next_cursor' from a previous response. Default is the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_to_return", + "type": "integer", + "required": false, + "description": "The maximum number of conversations to return in the response. Must be an integer with a maximum value of 999. It is recommended to request no more than 200 results at a time for optimal performance. (default: '100')", + "enum": null, + "inferrable": true + }, + { + "name": "slack_team_id", + "type": "string", + "required": false, + "description": "The encoded ID of the Slack team to list conversations for. Required if using an organization-level token. Ignored if a workspace-level token is used.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_types", + "type": "string", + "required": false, + "description": "Comma-separated list of channel types to filter conversations. Options: public_channel, private_channel, mpim, im. (default: 'public_channel')", + "enum": null, + "inferrable": true + }, + { + "name": "specific_user_id", + "type": "string", + "required": false, + "description": "Filter conversations by a specific user ID's membership. Only includes conversations shared with the calling user.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_archived_channels", + "type": "boolean", + "required": false, + "description": "Set to true to exclude archived channels from the retrieved list of Slack conversations. (default: false)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["channels:read", "groups:read", "im:read", "mpim:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users.conversations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListAccessibleSlackConversations", + "parameters": { + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "maximum_items_to_return": { + "value": 150, + "type": "integer", + "required": false + }, + "slack_team_id": { + "value": "T01234567", + "type": "string", + "required": false + }, + "channel_types": { + "value": "public_channel,private_channel,im", + "type": "string", + "required": false + }, + "specific_user_id": { + "value": "U01234567", + "type": "string", + "required": false + }, + "exclude_archived_channels": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListApprovedWorkspaceInviteRequests", + "qualifiedName": "SlackApi.ListApprovedWorkspaceInviteRequests", + "fullyQualifiedName": "SlackApi.ListApprovedWorkspaceInviteRequests@1.0.0", + "description": "Retrieve all approved workspace invite requests from Slack.\n\nThis tool retrieves a list of all approved invite requests for a Slack workspace. It should be called when there is a need to review or manage approved invitations. The response will include details of each invitation request.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "ID for the Slack workspace where the invite requests were made. Required if the Enterprise org has more than one workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Value of the `next_cursor` from the previous API response for paginating results.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specify the number of results to return, between 1 and 1000 inclusive. (default: '100')", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin.invites:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'admin.inviteRequests.approved.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListApprovedWorkspaceInviteRequests", + "parameters": { + "workspace_id": { + "value": "W1234567890", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "result_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListChannelsForUsergroup", + "qualifiedName": "SlackApi.ListChannelsForUsergroup", + "fullyQualifiedName": "SlackApi.ListChannelsForUsergroup@1.0.0", + "description": "Retrieve channels linked to an org-level user group in Slack.\n\nFetches a list of channels associated with a specified organizational IDP group in Slack. This tool is useful for admins managing user groups and their related channels.", + "parameters": [ + { + "name": "usergroup_id", + "type": "string", + "required": true, + "description": "The ID of the IDP group to list channels for. It identifies which organizational group to retrieve the default channels from.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Slack workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "include_member_count_in_channels", + "type": "boolean", + "required": false, + "description": "Set to true to include the count of members for each channel, otherwise set to false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin.usergroups:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'admin.usergroups.listChannels'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListChannelsForUsergroup", + "parameters": { + "usergroup_id": { + "value": "UG12345678", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "T12345678", + "type": "string", + "required": false + }, + "include_member_count_in_channels": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCustomEmojiForTeam", + "qualifiedName": "SlackApi.ListCustomEmojiForTeam", + "fullyQualifiedName": "SlackApi.ListCustomEmojiForTeam@1.0.0", + "description": "Retrieve a list of custom emojis for a specific team.\n\nUse this tool to get a list of custom emojis available for a team on Slack. It should be called when you need to display or manage team-specific emojis.", + "parameters": [ + { + "name": "include_emoji_categories", + "type": "boolean", + "required": false, + "description": "Set to true to include categories for Unicode emojis in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["emoji:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'emoji.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListCustomEmojiForTeam", + "parameters": { + "include_emoji_categories": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListDeniedSlackInviteRequests", + "qualifiedName": "SlackApi.ListDeniedSlackInviteRequests", + "fullyQualifiedName": "SlackApi.ListDeniedSlackInviteRequests@1.0.0", + "description": "Retrieve denied Slack workspace invite requests.\n\nThis tool retrieves a list of all denied workspace invite requests on Slack. It should be called when there is a need to review or analyze denied invitations to a Slack workspace.", + "parameters": [ + { + "name": "workspace_team_id", + "type": "string", + "required": false, + "description": "ID of the workspace where the invite requests were made. Required if the Enterprise org has multiple workspaces.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor value from the previous API response to fetch the next set of results. Use this for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specify the number of denied invite request results to return, between 1 and 1000 inclusive. (default: '100')", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin.invites:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'admin.inviteRequests.denied.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListDeniedSlackInviteRequests", + "parameters": { + "workspace_team_id": { + "value": "T12345678", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "dGVzdC1jdXJzb3I6MQ", + "type": "string", + "required": false + }, + "result_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPendingWorkspaceInvites", + "qualifiedName": "SlackApi.ListPendingWorkspaceInvites", + "fullyQualifiedName": "SlackApi.ListPendingWorkspaceInvites@1.0.0", + "description": "Retrieve all pending workspace invite requests from Slack.\n\nUse this tool to list all pending workspace invite requests in a Slack workspace. This can be useful for administrators managing team invitations. Requires 'admin.invites:read' OAuth scope.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": false, + "description": "The ID of the workspace to list pending invite requests from. Required for multi-workspace enterprises.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor value for fetching the next set of invite requests. Use the `next_cursor` from the previous response if available.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "The number of invite requests to return per call, must be between 1 and 1000. (default: '100')", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin.invites:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'admin.inviteRequests.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListPendingWorkspaceInvites", + "parameters": { + "workspace_id": { + "value": "T01234567", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "dXNlcl9jdXNvcjoxMjM0NTY3", + "type": "string", + "required": false + }, + "result_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPinnedItems", + "qualifiedName": "SlackApi.ListPinnedItems", + "fullyQualifiedName": "SlackApi.ListPinnedItems@1.0.0", + "description": "Retrieve items pinned to a Slack channel.\n\nThis tool calls the Slack API to list all items pinned to a specific channel. It should be used when there is a need to display or manage pinned items in a Slack channel.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "The ID of the Slack channel to retrieve pinned items from. This is required to specify which channel's pinned items will be listed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["pins:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pins.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListPinnedItems", + "parameters": { + "channel_id": { + "value": "C1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListScheduledMessages", + "qualifiedName": "SlackApi.ListScheduledMessages", + "fullyQualifiedName": "SlackApi.ListScheduledMessages@1.0.0", + "description": "Retrieve scheduled messages from Slack.\n\nUse this tool to obtain a list of messages that are scheduled to be sent in a Slack workspace. It is useful for managing future communications and staying informed of pending messages.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": false, + "description": "The ID of the Slack channel from which to retrieve scheduled messages.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor value for pagination to specify the starting point of the list from a previous call.", + "enum": null, + "inferrable": true + }, + { + "name": "latest_timestamp", + "type": "string", + "required": false, + "description": "A Unix timestamp marking the latest point in the time range for fetching scheduled messages. Ensure it is greater than the `oldest` timestamp if both are set.", + "enum": null, + "inferrable": true + }, + { + "name": "max_number_of_entries", + "type": "integer", + "required": false, + "description": "Specify the maximum number of scheduled messages to return from Slack.", + "enum": null, + "inferrable": true + }, + { + "name": "oldest_timestamp", + "type": "string", + "required": false, + "description": "A Unix timestamp representing the start of the time range for scheduled messages. It must be less than the `latest_timestamp` if both are specified.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "Encoded team ID to specify which team's channels to list. Required if using an org-level token; ignore for workspace-level tokens.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'chat.scheduledMessages.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListScheduledMessages", + "parameters": { + "channel_id": { + "value": "C1234567890", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "dGVzdC1wYWdlOjE=", + "type": "string", + "required": false + }, + "latest_timestamp": { + "value": "1672531199", + "type": "string", + "required": false + }, + "max_number_of_entries": { + "value": 10, + "type": "integer", + "required": false + }, + "oldest_timestamp": { + "value": "1672444800", + "type": "string", + "required": false + }, + "team_id": { + "value": "T1234567890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSharedChannelInvites", + "qualifiedName": "SlackApi.ListSharedChannelInvites", + "fullyQualifiedName": "SlackApi.ListSharedChannelInvites@1.0.0", + "description": "Retrieve unapproved shared channel invites from Slack.\n\nThis tool retrieves a list of shared channel invites that have been generated or received but are not yet approved by all parties on Slack. It should be called when you need to manage or view pending shared channel invites.", + "parameters": [ + { + "name": "workspace_team_id", + "type": "string", + "required": false, + "description": "The encoded team ID for the workspace to retrieve invites from. Required when using an organization token.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_invites_to_return", + "type": "integer", + "required": false, + "description": "Specify the maximum number of unapproved shared channel invites to retrieve. (default: '100')", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor for paginating through results, obtained from a previous call's next_cursor.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["conversations.connect:manage"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'conversations.listConnectInvites'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListSharedChannelInvites", + "parameters": { + "workspace_team_id": { + "value": "T12345678", + "type": "string", + "required": false + }, + "maximum_invites_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "dXNlcl9tYXM6MTIzNDU2Nzg5MA", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSlackChannels", + "qualifiedName": "SlackApi.ListSlackChannels", + "fullyQualifiedName": "SlackApi.ListSlackChannels@1.0.0", + "description": "Retrieve a list of all channels in a Slack team.\n\nThis tool retrieves a list of all public and private channels that the user has access to within a Slack team. It can also view direct and multiparty direct messages, depending on the user's permissions.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor used to paginate through data collections. Use the `next_cursor` from a previous response to continue; omit for the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_number_of_channels", + "type": "integer", + "required": false, + "description": "Specify the maximum number of channels to return. Must be an integer under 1000. Note that fewer channels than requested may be returned. (default: '100')", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_for_org_app", + "type": "string", + "required": false, + "description": "Encoded team ID to list channels. Required for org-level tokens; ignored for workspace-level tokens.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_types", + "type": "string", + "required": false, + "description": "Comma-separated list of channel types to include, e.g., 'public_channel', 'private_channel', 'mpim', 'im'. (default: 'public_channel')", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_archived_channels", + "type": "boolean", + "required": false, + "description": "Set to true to exclude archived channels from the list of Slack channels. Default is false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["channels:read", "groups:read", "im:read", "mpim:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'conversations.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListSlackChannels", + "parameters": { + "pagination_cursor": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "maximum_number_of_channels": { + "value": 50, + "type": "integer", + "required": false + }, + "team_id_for_org_app": { + "value": "T01234567", + "type": "string", + "required": false + }, + "channel_types": { + "value": "public_channel,private_channel", + "type": "string", + "required": false + }, + "exclude_archived_channels": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSlackEnterpriseEmojis", + "qualifiedName": "SlackApi.ListSlackEnterpriseEmojis", + "fullyQualifiedName": "SlackApi.ListSlackEnterpriseEmojis@1.0.0", + "description": "Retrieve emojis for a Slack Enterprise organization.\n\nThis tool uses the Slack Admin API to fetch a list of emojis available in a Slack Enterprise organization. It requires the appropriate OAuth scope to access team information.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for fetching the next page of emojis. Use 'next_cursor' from the previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_to_return", + "type": "integer", + "required": false, + "description": "The maximum number of emojis to return, between 1 and 1000 inclusive. (default: '100')", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin.teams:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'admin.emoji.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListSlackEnterpriseEmojis", + "parameters": { + "pagination_cursor": { + "value": "dGVhbS5jb20vZW1vamkvZnJlZGl0aW9uL2Vtb2ppc2NhZGdzP3BhZ2U9MQ", + "type": "string", + "required": false + }, + "max_items_to_return": { + "value": 150, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSlackTeamUsers", + "qualifiedName": "SlackApi.ListSlackTeamUsers", + "fullyQualifiedName": "SlackApi.ListSlackTeamUsers@1.0.0", + "description": "Fetches a list of all users in a Slack team.\n\nThis tool retrieves a comprehensive list of all users within a specified Slack team. It includes user details and can access email information if the appropriate OAuth scopes are provided.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for paginating through data. Use the `next_cursor` from a previous response to continue.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_to_return", + "type": "integer", + "required": false, + "description": "Maximum number of users to return (recommended max is 200 for pagination).", + "enum": null, + "inferrable": true + }, + { + "name": "slack_team_id", + "type": "string", + "required": false, + "description": "The encoded team ID to list users from, necessary if an organization-level token is used. Ignored if a workspace-level token is provided.", + "enum": null, + "inferrable": true + }, + { + "name": "include_user_locale", + "type": "boolean", + "required": false, + "description": "Set to true to receive locale information for each user. Default is false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["users:read", "users:read.email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListSlackTeamUsers", + "parameters": { + "pagination_cursor": { + "value": "dGVhbS56eWJ0ajU2YjM5YXZvbnYyNTI4aTlnaGNiYzUyMGR='", + "type": "string", + "required": false + }, + "maximum_items_to_return": { + "value": 100, + "type": "integer", + "required": false + }, + "slack_team_id": { + "value": "T12345678", + "type": "string", + "required": false + }, + "include_user_locale": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSlackUserGroups", + "qualifiedName": "SlackApi.ListSlackUserGroups", + "fullyQualifiedName": "SlackApi.ListSlackUserGroups@1.0.0", + "description": "Retrieve all user groups for a Slack team.\n\nThis tool retrieves a list of all user groups available in a Slack team. It should be called when there's a need to access or display user group information within a Slack workspace.", + "parameters": [ + { + "name": "team_id_for_org_token", + "type": "string", + "required": false, + "description": "Encoded team ID required when using an org-level token. Ignored if using a workspace-level token.", + "enum": null, + "inferrable": true + }, + { + "name": "include_user_count", + "type": "boolean", + "required": false, + "description": "Set to true to include the number of users in each User Group.", + "enum": null, + "inferrable": true + }, + { + "name": "include_disabled_groups", + "type": "boolean", + "required": false, + "description": "Set to true to include disabled user groups in the results.", + "enum": null, + "inferrable": true + }, + { + "name": "include_users_in_group", + "type": "boolean", + "required": false, + "description": "Include the list of users for each User Group in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["usergroups:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'usergroups.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListSlackUserGroups", + "parameters": { + "team_id_for_org_token": { + "value": "T12345678", + "type": "string", + "required": false + }, + "include_user_count": { + "value": true, + "type": "boolean", + "required": false + }, + "include_disabled_groups": { + "value": false, + "type": "boolean", + "required": false + }, + "include_users_in_group": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSlackWorkspaceOwners", + "qualifiedName": "SlackApi.ListSlackWorkspaceOwners", + "fullyQualifiedName": "SlackApi.ListSlackWorkspaceOwners@1.0.0", + "description": "Retrieve all owners in a Slack workspace.\n\nThis tool retrieves a list of all the owners in a specified Slack workspace, using the admin.teams.owners.list API endpoint. It is useful for managing or viewing the user roles within a Slack workspace.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Slack workspace for which to list the owners.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_to_return", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of owners to return, ranging from 1 to 1000. (default: '100')", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor from the previous response used to fetch the next page of owners. Leave empty for the first page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin.teams:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'admin.teams.owners.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListSlackWorkspaceOwners", + "parameters": { + "workspace_id": { + "value": "W1234567890", + "type": "string", + "required": true + }, + "maximum_items_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeamsInEnterprise", + "qualifiedName": "SlackApi.ListTeamsInEnterprise", + "fullyQualifiedName": "SlackApi.ListTeamsInEnterprise@1.0.0", + "description": "Retrieve all teams in an Enterprise organization on Slack.\n\nThis tool retrieves a list of all teams within an Enterprise organization on Slack, utilizing the admin.teams.list endpoint. It should be called when information about the teams in an Enterprise organization is needed.", + "parameters": [ + { + "name": "maximum_items_to_return", + "type": "integer", + "required": false, + "description": "Specify the maximum number of teams to retrieve. Must be a positive integer, up to 1000. (default: '100')", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Use this to retrieve the next page of results by setting it to the `next_cursor` from the previous response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin.teams:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'admin.teams.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListTeamsInEnterprise", + "parameters": { + "maximum_items_to_return": { + "value": 250, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWorkspaceUsers", + "qualifiedName": "SlackApi.ListWorkspaceUsers", + "fullyQualifiedName": "SlackApi.ListWorkspaceUsers@1.0.0", + "description": "Retrieve a list of users from a Slack workspace.\n\nUse this tool to get a list of users in a specific Slack workspace. It's helpful for administrators who need to manage or view user information within the workspace.", + "parameters": [ + { + "name": "workspace_team_id", + "type": "string", + "required": false, + "description": "The ID of the Slack workspace (e.g., T1234) to filter users from. Only users from this workspace will be listed.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Use this to navigate through paginated results by setting it to the `next_cursor` from a previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "user_retrieval_limit", + "type": "integer", + "required": false, + "description": "Maximum number of users to retrieve per page from the Slack workspace. (default: '100')", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_active_users", + "type": "boolean", + "required": false, + "description": "Return only active users if true; return only deactivated users if false. Default is true.", + "enum": null, + "inferrable": true + }, + { + "name": "include_deactivated_user_workspaces", + "type": "boolean", + "required": false, + "description": "Include workspaces for users even if they are deactivated. Only applies with org token and no team_id. Default is false.", + "enum": null, + "inferrable": true + }, + { + "name": "return_only_guest_users", + "type": "boolean", + "required": false, + "description": "If true, returns only guests and their expiration dates that belong to the specified team_id.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin.users:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'admin.users.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ListWorkspaceUsers", + "parameters": { + "workspace_team_id": { + "value": "T1234", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "dXNlcl9uZXh0X2N1cnNvcl8yMDIzLTA4LTAyVDE4OjAwOjAwLjAwMDAwMDAw", + "type": "string", + "required": false + }, + "user_retrieval_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "return_only_active_users": { + "value": true, + "type": "boolean", + "required": false + }, + "include_deactivated_user_workspaces": { + "value": false, + "type": "boolean", + "required": false + }, + "return_only_guest_users": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "OpenOrResumeSlackConversation", + "qualifiedName": "SlackApi.OpenOrResumeSlackConversation", + "fullyQualifiedName": "SlackApi.OpenOrResumeSlackConversation@1.0.0", + "description": "Open or resume a direct or multi-person message in Slack.\n\nThis tool calls the Slack API to open a new conversation or resume an existing direct message or multi-person direct message. It should be used when there's a need to start or continue a conversation within Slack.", + "parameters": [ + { + "name": "conversation_channel_id", + "type": "string", + "required": false, + "description": "The ID of an existing direct or multi-person message channel to resume. Alternatively, provide the `users` field to start a new conversation.", + "enum": null, + "inferrable": true + }, + { + "name": "target_user_ids", + "type": "string", + "required": false, + "description": "A comma-separated list of user IDs to open or resume a conversation. Provide 1 to 8 IDs. Supplying 1 ID opens a 1:1 DM, while more than 1 ID opens a multi-person DM. Do not include the caller's ID.", + "enum": null, + "inferrable": true + }, + { + "name": "return_full_im_channel_definition", + "type": "boolean", + "required": false, + "description": "Set to true to receive the entire IM channel definition; false returns only the conversation ID.", + "enum": null, + "inferrable": true + }, + { + "name": "prevent_creation", + "type": "boolean", + "required": false, + "description": "If true, does not create a new conversation and instead checks for an existing DM or MPDM.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [ + "channels:manage", + "channels:write", + "groups:write", + "im:write", + "mpim:write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'conversations.open'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.OpenOrResumeSlackConversation", + "parameters": { + "conversation_channel_id": { + "value": "C1234567890", + "type": "string", + "required": false + }, + "target_user_ids": { + "value": "U1234567890,U0987654321", + "type": "string", + "required": false + }, + "return_full_im_channel_definition": { + "value": true, + "type": "boolean", + "required": false + }, + "prevent_creation": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PinItemToSlackChannel", + "qualifiedName": "SlackApi.PinItemToSlackChannel", + "fullyQualifiedName": "SlackApi.PinItemToSlackChannel@1.0.0", + "description": "Pin an item to a Slack channel.\n\nUse this tool to pin an item to a specific channel in Slack, enhancing visibility for important content.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "The ID of the Slack channel where the message will be pinned. A `timestamp` must also be provided.", + "enum": null, + "inferrable": true + }, + { + "name": "message_timestamp", + "type": "string", + "required": false, + "description": "The timestamp (`ts`) of the message to pin in the Slack channel. Ensure the channel is also specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["pins:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pins.add'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.PinItemToSlackChannel", + "parameters": { + "channel_id": { + "value": "C0123456789", + "type": "string", + "required": true + }, + "message_timestamp": { + "value": "1628787600.000200", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RegisterSlackCall", + "qualifiedName": "SlackApi.RegisterSlackCall", + "fullyQualifiedName": "SlackApi.RegisterSlackCall@1.0.0", + "description": "Registers a new call on Slack.\n\nThis tool registers a new call on Slack using the Slack API. It should be called when you want to create and log a new call event in a Slack workspace. The tool requires appropriate permissions (calls:write scope).", + "parameters": [ + { + "name": "unique_call_id", + "type": "string", + "required": true, + "description": "A unique ID for the Call, provided by the 3rd-party Call provider. Ensure it is unique across all calls from your service.", + "enum": null, + "inferrable": true + }, + { + "name": "call_join_url", + "type": "string", + "required": true, + "description": "The URL required for a client to join the Call on Slack.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_human_readable_display_id", + "type": "string", + "required": false, + "description": "An optional, human-readable ID for the call, supplied by the third-party provider. This ID will be displayed in the Call object if given.", + "enum": null, + "inferrable": true + }, + { + "name": "desktop_app_join_url", + "type": "string", + "required": false, + "description": "The URL used to directly launch the 3rd-party Call from Slack clients, if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "call_start_timestamp", + "type": "integer", + "required": false, + "description": "Unix timestamp indicating when the call is scheduled to start.", + "enum": null, + "inferrable": true + }, + { + "name": "call_title", + "type": "string", + "required": false, + "description": "The name of the Call to be registered on Slack. This title will be used to identify the Call within Slack.", + "enum": null, + "inferrable": true + }, + { + "name": "call_creator_user_id", + "type": "string", + "required": false, + "description": "The valid Slack user ID of the creator of this call. Optional if using a user token, which defaults to the authed user.", + "enum": null, + "inferrable": true + }, + { + "name": "participants_info", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of participants to register for the call, including 'slack_id', 'external_id', 'display_name', and 'avatar_url' for each user.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["calls:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'calls.add'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.RegisterSlackCall", + "parameters": { + "unique_call_id": { + "value": "call_123456789", + "type": "string", + "required": true + }, + "call_join_url": { + "value": "https://example.com/join/call_123456789", + "type": "string", + "required": true + }, + "optional_human_readable_display_id": { + "value": "Weekly Sync", + "type": "string", + "required": false + }, + "desktop_app_join_url": { + "value": "https://example.com/launch/call_123456789", + "type": "string", + "required": false + }, + "call_start_timestamp": { + "value": 1672531200, + "type": "integer", + "required": false + }, + "call_title": { + "value": "Project Kickoff", + "type": "string", + "required": false + }, + "call_creator_user_id": { + "value": "U12345678", + "type": "string", + "required": false + }, + "participants_info": { + "value": [ + { + "slack_id": "U23456789", + "external_id": "external_user_1", + "display_name": "Alice Smith", + "avatar_url": "https://example.com/avatars/alice.jpg" + }, + { + "slack_id": "U34567890", + "external_id": "external_user_2", + "display_name": "Bob Jones", + "avatar_url": "https://example.com/avatars/bob.jpg" + } + ], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveCallParticipants", + "qualifiedName": "SlackApi.RemoveCallParticipants", + "fullyQualifiedName": "SlackApi.RemoveCallParticipants@1.0.0", + "description": "Remove participants from a Slack call.\n\nThis tool removes specified participants from a call in Slack by registering their removal. Useful when a user needs to manage call attendees.", + "parameters": [ + { + "name": "call_id", + "type": "string", + "required": true, + "description": "The unique identifier for the call from which participants are to be removed. This `id` is obtained from the `calls.add` method.", + "enum": null, + "inferrable": true + }, + { + "name": "users_to_remove", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of user IDs to remove as participants from the call. Refer to Slack's documentation for specifying user IDs.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["calls:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'calls.participants.remove'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.RemoveCallParticipants", + "parameters": { + "call_id": { + "value": "C1234567890", + "type": "string", + "required": true + }, + "users_to_remove": { + "value": ["U1234567890", "U0987654321"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveReactionFromItem", + "qualifiedName": "SlackApi.RemoveReactionFromItem", + "fullyQualifiedName": "SlackApi.RemoveReactionFromItem@1.0.0", + "description": "Remove a reaction from a Slack item.\n\nUse this tool to remove a reaction (emoji) from a message, file, or file comment in Slack. This tool is intended for situations where a reaction needs to be revoked. It requires the 'reactions:write' scope, which allows the app to manage reactions on behalf of the user.", + "parameters": [ + { + "name": "reaction_emoji_name", + "type": "string", + "required": true, + "description": "The name of the emoji reaction to be removed, such as 'smile' or 'thumbsup'.", + "enum": null, + "inferrable": true + }, + { + "name": "target_file_id", + "type": "string", + "required": false, + "description": "The identifier of the file from which to remove the reaction. Specify either this, `target_file_comment_id`, or both `target_channel_id` and `target_message_timestamp`.", + "enum": null, + "inferrable": true + }, + { + "name": "file_comment_id", + "type": "string", + "required": false, + "description": "The ID of the file comment from which you want to remove the reaction. Provide this if the reaction is on a file comment.", + "enum": null, + "inferrable": true + }, + { + "name": "message_channel_id", + "type": "string", + "required": false, + "description": "Channel ID where the message to remove the reaction from was posted. Required if removing a reaction from a message. Use in combination with 'message_timestamp'.", + "enum": null, + "inferrable": true + }, + { + "name": "message_timestamp", + "type": "string", + "required": false, + "description": "The exact timestamp of the message from which to remove the reaction. Specify when targeting a message.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["reactions:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'reactions.remove'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.RemoveReactionFromItem", + "parameters": { + "reaction_emoji_name": { + "value": "thumbsup", + "type": "string", + "required": true + }, + "target_file_id": { + "value": "F1234567890", + "type": "string", + "required": false + }, + "file_comment_id": { + "value": "C0987654321", + "type": "string", + "required": false + }, + "message_channel_id": { + "value": "C0011223344", + "type": "string", + "required": false + }, + "message_timestamp": { + "value": "1625251234.000100", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveSlackBookmark", + "qualifiedName": "SlackApi.RemoveSlackBookmark", + "fullyQualifiedName": "SlackApi.RemoveSlackBookmark@1.0.0", + "description": "Remove a bookmark from a Slack channel.\n\nThis tool removes a specified bookmark from a Slack channel. It should be called when a user wants to delete a bookmark that is no longer needed or relevant. Requires appropriate permissions to execute.", + "parameters": [ + { + "name": "slack_channel_id_to_remove_bookmark", + "type": "string", + "required": true, + "description": "The ID of the Slack channel from which the bookmark should be removed. This ID specifies the target channel and is required to locate and delete the bookmark.", + "enum": null, + "inferrable": true + }, + { + "name": "bookmark_id_to_remove", + "type": "string", + "required": true, + "description": "The ID of the bookmark to be removed from a Slack channel. Ensure it is specified correctly to delete the correct bookmark.", + "enum": null, + "inferrable": true + }, + { + "name": "quip_section_id", + "type": "string", + "required": false, + "description": "The ID of the Quip section to unbookmark. This is required to specify which section's bookmark should be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["bookmarks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'bookmarks.remove'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.RemoveSlackBookmark", + "parameters": { + "slack_channel_id_to_remove_bookmark": { + "value": "C1234567890", + "type": "string", + "required": true + }, + "bookmark_id_to_remove": { + "value": "B0987654321", + "type": "string", + "required": true + }, + "quip_section_id": { + "value": "S1234567890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RenameSlackEmoji", + "qualifiedName": "SlackApi.RenameSlackEmoji", + "fullyQualifiedName": "SlackApi.RenameSlackEmoji@1.0.0", + "description": "Rename an emoji in a Slack Enterprise organization.\n\nUse this tool to rename a custom emoji within a Slack Enterprise organization. It requires appropriate OAuth scope for team operations.", + "parameters": [ + { + "name": "current_emoji_name", + "type": "string", + "required": true, + "description": "The current name of the emoji to be renamed. Colons (:myemoji:) around the value are optional.", + "enum": null, + "inferrable": true + }, + { + "name": "new_emoji_name", + "type": "string", + "required": true, + "description": "The new name to assign to the emoji in the Slack Enterprise organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin.teams:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'admin.emoji.rename'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.RenameSlackEmoji", + "parameters": { + "current_emoji_name": { + "value": ":smile:", + "type": "string", + "required": true + }, + "new_emoji_name": { + "value": ":happy_smile:", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RevokeSlackToken", + "qualifiedName": "SlackApi.RevokeSlackToken", + "fullyQualifiedName": "SlackApi.RevokeSlackToken@1.0.0", + "description": "Revoke a Slack authentication token.\n\nThis tool is used to revoke a Slack authentication token via a GET request to the Slack API endpoint. It should be called when it is necessary to invalidate a token to ensure it is no longer usable.", + "parameters": [ + { + "name": "trigger_testing_mode", + "type": "boolean", + "required": false, + "description": "Set to true to trigger testing mode where the token will not be revoked. Useful for testing.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'auth.revoke'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.RevokeSlackToken", + "parameters": { + "trigger_testing_mode": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ScheduleSlackMessage", + "qualifiedName": "SlackApi.ScheduleSlackMessage", + "fullyQualifiedName": "SlackApi.ScheduleSlackMessage@1.0.0", + "description": "Schedule a message to be sent later in Slack.\n\nThis tool schedules a message to be sent to a specific Slack channel at a designated future time. It utilizes the Slack API endpoint 'chat.scheduleMessage' and requires the 'chat:write' OAuth scope.", + "parameters": [ + { + "name": "slack_channel_id_or_name", + "type": "string", + "required": true, + "description": "Specify the target Slack channel, private group, or DM. Use an encoded ID or the channel name. Retrieve channel ID via `conversations.list`.", + "enum": null, + "inferrable": true + }, + { + "name": "schedule_time_unix_timestamp", + "type": "integer", + "required": true, + "description": "Unix timestamp for when the message should be posted to Slack. Must be within 120 days and not exceed 30 messages per 5-minute window.", + "enum": null, + "inferrable": true + }, + { + "name": "attachments_json", + "type": "string", + "required": false, + "description": "A JSON array of structured attachments as a URL-encoded string for the Slack message.", + "enum": null, + "inferrable": true + }, + { + "name": "structured_blocks_json", + "type": "string", + "required": false, + "description": "A URL-encoded string of a JSON-based array containing structured blocks for message formatting.", + "enum": null, + "inferrable": true + }, + { + "name": "message_markdown", + "type": "string", + "required": false, + "description": "Message text in markdown format. Avoid using with 'blocks' or 'text'. Maximum 12,000 characters.", + "enum": null, + "inferrable": true + }, + { + "name": "message_parsing_mode", + "type": "string", + "required": false, + "description": "Specifies how the message content should be parsed and interpreted when sending to Slack. For more details, refer to chat.postMessage documentation.", + "enum": null, + "inferrable": true + }, + { + "name": "message_text", + "type": "string", + "required": false, + "description": "The main body of the Slack message or a fallback text when using blocks. Can be plain text or formatted with mrkdwn.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_message_timestamp", + "type": "string", + "required": false, + "description": "Timestamp of the parent message to which this message is a reply. Use the original message's timestamp, not a reply's timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "metadata_json", + "type": "string", + "required": false, + "description": "JSON object containing 'event_type' and 'event_payload' fields. Must be URL-encoded. Note: using this will prevent scheduled messages from posting.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_group_linking", + "type": "boolean", + "required": false, + "description": "Set to true to link user groups in the message. Linking individual users is not supported; use mention syntax instead.", + "enum": null, + "inferrable": true + }, + { + "name": "make_reply_visible_to_everyone", + "type": "boolean", + "required": false, + "description": "Set to true to make the reply visible to everyone in the channel or conversation. Use with `thread_ts`. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_link_unfurling", + "type": "boolean", + "required": false, + "description": "Pass true to enable unfurling of primarily text-based content.", + "enum": null, + "inferrable": true + }, + { + "name": "disable_unfurling_of_media_content", + "type": "boolean", + "required": false, + "description": "Set to true to disable unfurling of media content. Defaults to false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["chat:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'chat.scheduleMessage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ScheduleSlackMessage", + "parameters": { + "slack_channel_id_or_name": { + "value": "#general", + "type": "string", + "required": true + }, + "schedule_time_unix_timestamp": { + "value": 1700000000, + "type": "integer", + "required": true + }, + "attachments_json": { + "value": "[{\"text\":\"Attachment 1\"},{\"text\":\"Attachment 2\"}]", + "type": "string", + "required": false + }, + "structured_blocks_json": { + "value": "[{\"type\":\"section\",\"text\":{\"type\":\"mrkdwn\",\"text\":\"Hello, world!\"}}]", + "type": "string", + "required": false + }, + "message_markdown": { + "value": "*This is a scheduled message*", + "type": "string", + "required": false + }, + "message_parsing_mode": { + "value": "full", + "type": "string", + "required": false + }, + "message_text": { + "value": "Here is the main message body.", + "type": "string", + "required": false + }, + "parent_message_timestamp": { + "value": "1699999999", + "type": "string", + "required": false + }, + "metadata_json": { + "value": "{\"event_type\":\"scheduled\",\"event_payload\":{\"info\":\"more details here\"}}", + "type": "string", + "required": false + }, + "enable_group_linking": { + "value": true, + "type": "boolean", + "required": false + }, + "make_reply_visible_to_everyone": { + "value": false, + "type": "boolean", + "required": false + }, + "enable_link_unfurling": { + "value": true, + "type": "boolean", + "required": false + }, + "disable_unfurling_of_media_content": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchFilesInSlack", + "qualifiedName": "SlackApi.SearchFilesInSlack", + "fullyQualifiedName": "SlackApi.SearchFilesInSlack@1.0.0", + "description": "Search for files in Slack using a query.\n\nThis tool searches for files in Slack that match a given query. It is useful when a user needs to locate specific files shared in Slack channels or direct messages. The tool returns a list of files that meet the search criteria.", + "parameters": [ + { + "name": "search_query", + "type": "string", + "required": true, + "description": "The text string to search for in Slack files. Use keywords or phrases to narrow down results.", + "enum": null, + "inferrable": true + }, + { + "name": "items_per_page", + "type": "integer", + "required": false, + "description": "The number of file results to return per page. Maximum allowed value is 100. (default: '20')", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_number", + "type": "integer", + "required": false, + "description": "The specific page number of results to retrieve, with a maximum value of 100. (default: '1')", + "enum": null, + "inferrable": true + }, + { + "name": "sort_files_by", + "type": "string", + "required": false, + "description": "Specify how to sort the search results: either by 'score' or 'timestamp'. (default: 'score')", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Change the sort direction for search results to ascending ('asc') or descending ('desc'). (default: 'desc')", + "enum": null, + "inferrable": true + }, + { + "name": "encoded_team_id", + "type": "string", + "required": false, + "description": "Encoded team ID to specify the search domain when using an org-level token. Ignored with a workspace-level token.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_query_highlight", + "type": "boolean", + "required": false, + "description": "Set to true to enable highlight markers for matching query terms in the search results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["search:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'search.files'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.SearchFilesInSlack", + "parameters": { + "search_query": { + "value": "project report", + "type": "string", + "required": true + }, + "items_per_page": { + "value": 30, + "type": "integer", + "required": false + }, + "results_page_number": { + "value": 2, + "type": "integer", + "required": false + }, + "sort_files_by": { + "value": "timestamp", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "encoded_team_id": { + "value": "XYZ123456", + "type": "string", + "required": false + }, + "enable_query_highlight": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchSlackMessages", + "qualifiedName": "SlackApi.SearchSlackMessages", + "fullyQualifiedName": "SlackApi.SearchSlackMessages@1.0.0", + "description": "Search Slack messages based on a query.\n\nThis tool searches for messages in a Slack workspace that match a specified query. It should be called when users want to find specific messages or discussions within their Slack channels.", + "parameters": [ + { + "name": "search_query", + "type": "string", + "required": true, + "description": "The text to search for in Slack messages. Use keywords or phrases to narrow down results.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "The number of search results to return per page, with a maximum limit of 100. (default: '20')", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number of search results to retrieve, maximum value of 100. (default: '1')", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Use '*' for the first call to start pagination or provide the 'next_cursor' value from previous results to continue.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_by", + "type": "string", + "required": false, + "description": "Specify the criterion for sorting the search results, either by 'score' for relevance or 'timestamp' for chronological order. (default: 'score')", + "enum": null, + "inferrable": true + }, + { + "name": "sort_direction", + "type": "string", + "required": false, + "description": "Specify the order for sorting results: use 'asc' for ascending or 'desc' for descending. (default: 'desc')", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The encoded team ID to search within. Required only if an organization-level token is used. Ignored for workspace-level tokens.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_query_highlighting", + "type": "boolean", + "required": false, + "description": "Set to true to enable query highlight markers, marking matching terms in the results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["search:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'search.messages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.SearchSlackMessages", + "parameters": { + "search_query": { + "value": "project update", + "type": "string", + "required": true + }, + "results_per_page": { + "value": 30, + "type": "integer", + "required": false + }, + "page_number": { + "value": 2, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "sort_results_by": { + "value": "timestamp", + "type": "string", + "required": false + }, + "sort_direction": { + "value": "asc", + "type": "string", + "required": false + }, + "team_id": { + "value": "T1234567890", + "type": "string", + "required": false + }, + "enable_query_highlighting": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendEphemeralMessageSlack", + "qualifiedName": "SlackApi.SendEphemeralMessageSlack", + "fullyQualifiedName": "SlackApi.SendEphemeralMessageSlack@1.0.0", + "description": "Send an ephemeral message to a user in a Slack channel.\n\nThis tool sends an ephemeral message to a user within a specified Slack channel. It's useful for sending temporary messages or notifications that only the specified user can see. Requires the 'chat:write' scope.", + "parameters": [ + { + "name": "target_channel", + "type": "string", + "required": true, + "description": "The channel, private group, or IM channel where the ephemeral message will be sent. Accepts an encoded ID or the channel's name.", + "enum": null, + "inferrable": true + }, + { + "name": "recipient_user_id", + "type": "string", + "required": true, + "description": "The ID of the user who will receive the ephemeral message. Must be in the specified channel.", + "enum": null, + "inferrable": true + }, + { + "name": "structured_attachments", + "type": "array", + "innerType": "string", + "required": false, + "description": "A JSON-encoded array of structured attachments for the message. Presented as a URL-encoded string.", + "enum": null, + "inferrable": true + }, + { + "name": "structured_blocks", + "type": "array", + "innerType": "string", + "required": false, + "description": "A URL-encoded JSON array of structured Slack block elements. Use for rich message formatting.", + "enum": null, + "inferrable": true + }, + { + "name": "message_icon_emoji", + "type": "string", + "required": false, + "description": "Emoji to display as the message icon, overriding icon_url. Specify using the emoji name like :smile:.", + "enum": null, + "inferrable": true + }, + { + "name": "message_icon_url", + "type": "string", + "required": false, + "description": "URL for the image to be used as the icon for the message. It overrides the icon_emoji if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "message_markdown_text", + "type": "string", + "required": false, + "description": "The main text formatted in markdown to be sent as an ephemeral message. Do not use with `blocks` or `text`. Character limit: 12,000.", + "enum": null, + "inferrable": true + }, + { + "name": "message_parse_mode", + "type": "string", + "required": false, + "description": "Specifies how the message text is interpreted. Options are: 'none', 'full', 'mrkdwn', or 'false'. Defaults to 'none'. (default: 'none')", + "enum": null, + "inferrable": true + }, + { + "name": "ephemeral_message_text", + "type": "string", + "required": false, + "description": "The main text of the ephemeral message for Slack. It acts as a fallback when using blocks; can be formatted as plain text or markdown. Limit to a few thousand bytes.", + "enum": null, + "inferrable": true + }, + { + "name": "parent_message_timestamp", + "type": "string", + "required": false, + "description": "The timestamp of the parent message to post this ephemeral message in its thread. Ensure there is already an active thread.", + "enum": null, + "inferrable": true + }, + { + "name": "bot_username", + "type": "string", + "required": false, + "description": "The username for the bot sending the ephemeral message. This sets the display name in the Slack message.", + "enum": null, + "inferrable": true + }, + { + "name": "link_names_auto_link", + "type": "boolean", + "required": false, + "description": "Set to true to automatically find and link channel names and usernames.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["chat:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'chat.postEphemeral'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.SendEphemeralMessageSlack", + "parameters": { + "target_channel": { + "value": "C1234567890", + "type": "string", + "required": true + }, + "recipient_user_id": { + "value": "U1234567890", + "type": "string", + "required": true + }, + "structured_attachments": { + "value": "[]", + "type": "array", + "required": false + }, + "structured_blocks": { + "value": "[]", + "type": "array", + "required": false + }, + "message_icon_emoji": { + "value": ":smile:", + "type": "string", + "required": false + }, + "message_icon_url": { + "value": "https://example.com/icon.png", + "type": "string", + "required": false + }, + "message_markdown_text": { + "value": "Hello User!", + "type": "string", + "required": false + }, + "message_parse_mode": { + "value": "mrkdwn", + "type": "string", + "required": false + }, + "ephemeral_message_text": { + "value": "This is a temporary message.", + "type": "string", + "required": false + }, + "parent_message_timestamp": { + "value": "1622547800.000200", + "type": "string", + "required": false + }, + "bot_username": { + "value": "NotificationBot", + "type": "string", + "required": false + }, + "link_names_auto_link": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SendSlackMessage", + "qualifiedName": "SlackApi.SendSlackMessage", + "fullyQualifiedName": "SlackApi.SendSlackMessage@1.0.0", + "description": "Sends a message to a Slack channel.\n\nThis tool allows you to send messages to a Slack channel or direct message on behalf of an authenticated user. It is useful for automating communications within Slack workspaces.", + "parameters": [ + { + "name": "target_channel_id_or_name", + "type": "string", + "required": true, + "description": "The encoded ID or name of the channel, private group, or IM where the message will be sent. Retrieve using Slack's conversations.list API.", + "enum": null, + "inferrable": true + }, + { + "name": "message_attachments", + "type": "array", + "innerType": "string", + "required": false, + "description": "A JSON array of structured attachment objects for the message, provided as a URL-encoded string. Example: `[{\"pretext\": \"pre-hello\", \"text\": \"text-world\"}]`.", + "enum": null, + "inferrable": true + }, + { + "name": "structured_blocks", + "type": "array", + "innerType": "string", + "required": false, + "description": "A JSON-based array of structured blocks for constructing messages using Block Kit. Provide as a URL-encoded string. Include fallback text if necessary.", + "enum": null, + "inferrable": true + }, + { + "name": "emoji_icon_for_message", + "type": "string", + "required": false, + "description": "Emoji to display as the icon for the Slack message. Overrides any image URL icon.", + "enum": null, + "inferrable": true + }, + { + "name": "message_icon_url", + "type": "string", + "required": false, + "description": "URL to an image to use as the icon for the message. Overrides any specified icon emoji.", + "enum": null, + "inferrable": true + }, + { + "name": "message_markdown", + "type": "string", + "required": false, + "description": "The message text formatted using markdown, up to 12,000 characters. Cannot be used with `blocks` or `text`.", + "enum": null, + "inferrable": true + }, + { + "name": "message_metadata", + "type": "string", + "required": false, + "description": "A JSON object with 'event_type' and 'event_payload' fields, URL-encoded, providing additional metadata for the message.", + "enum": null, + "inferrable": true + }, + { + "name": "parse_mode", + "type": "string", + "required": false, + "description": "Specifies how the message content should be treated. Options are 'none' to remove hyperlinks or 'full' to ignore markdown formatting.", + "enum": null, + "inferrable": true + }, + { + "name": "message_text", + "type": "string", + "required": false, + "description": "The main text of the message. Acts as the primary message or a fallback for notifications when using blocks. Supports plain text or markdown.", + "enum": null, + "inferrable": true + }, + { + "name": "thread_timestamp", + "type": "string", + "required": false, + "description": "Timestamp of the parent message to which this message will be a reply. Use the parent's `ts` value, not a reply's.", + "enum": null, + "inferrable": true + }, + { + "name": "bot_username", + "type": "string", + "required": false, + "description": "The display name to use for the bot when sending the message to Slack.", + "enum": null, + "inferrable": true + }, + { + "name": "post_as_authenticated_user", + "type": "boolean", + "required": false, + "description": "Set to true to post the message as the authenticated user instead of as a bot. Only applicable for classic apps.", + "enum": null, + "inferrable": true + }, + { + "name": "link_user_groups", + "type": "boolean", + "required": false, + "description": "Enable linking of user groups in the message. Individual user linking is not supported.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_slack_markup_parsing", + "type": "boolean", + "required": false, + "description": "Set to true to enable Slack markup parsing in the message. Default is enabled.", + "enum": null, + "inferrable": true + }, + { + "name": "broadcast_reply_to_channel", + "type": "boolean", + "required": false, + "description": "Set to true to make the reply visible to everyone in the channel when responding to a thread. Use with 'thread_ts'. Default is false.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_unfurling_text_content", + "type": "boolean", + "required": false, + "description": "Set to true to enable unfurling of primarily text-based content in Slack messages.", + "enum": null, + "inferrable": true + }, + { + "name": "disable_media_unfurling", + "type": "boolean", + "required": false, + "description": "Set to false to enable media unfurling and true to disable it. (default: 'false')", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["chat:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'chat.postMessage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.SendSlackMessage", + "parameters": { + "target_channel_id_or_name": { + "value": "general", + "type": "string", + "required": true + }, + "message_attachments": { + "value": "[{\"pretext\": \"Hello from\", \"text\": \"your Slack bot!\"}]", + "type": "array", + "required": false + }, + "structured_blocks": { + "value": "[{\"type\": \"section\", \"text\": {\"type\": \"mrkdwn\", \"text\": \"This is a block message!\"}}]", + "type": "array", + "required": false + }, + "emoji_icon_for_message": { + "value": ":wave:", + "type": "string", + "required": false + }, + "message_icon_url": { + "value": "https://example.com/icon.png", + "type": "string", + "required": false + }, + "message_markdown": { + "value": "Welcome to *Slack*!", + "type": "string", + "required": false + }, + "message_metadata": { + "value": "{\"event_type\": \"new_message\", \"event_payload\": {\"user\": \"U12345\"}}", + "type": "string", + "required": false + }, + "parse_mode": { + "value": "full", + "type": "string", + "required": false + }, + "message_text": { + "value": "Hello everyone!", + "type": "string", + "required": false + }, + "thread_timestamp": { + "value": "1625257000.000200", + "type": "string", + "required": false + }, + "bot_username": { + "value": "MyBot", + "type": "string", + "required": false + }, + "post_as_authenticated_user": { + "value": false, + "type": "boolean", + "required": false + }, + "link_user_groups": { + "value": true, + "type": "boolean", + "required": false + }, + "enable_slack_markup_parsing": { + "value": true, + "type": "boolean", + "required": false + }, + "broadcast_reply_to_channel": { + "value": true, + "type": "boolean", + "required": false + }, + "enable_unfurling_text_content": { + "value": true, + "type": "boolean", + "required": false + }, + "disable_media_unfurling": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetSlackChannelReadCursor", + "qualifiedName": "SlackApi.SetSlackChannelReadCursor", + "fullyQualifiedName": "SlackApi.SetSlackChannelReadCursor@1.0.0", + "description": "Update the read cursor in a Slack channel.\n\nUse this tool to mark a specific point in a Slack channel as read. This is useful for keeping track of the latest read messages in channels, groups, or direct messages. Requires appropriate Slack OAuth scopes.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "The ID of the Slack channel or conversation where you want to set the read cursor. This should be a valid Slack channel ID.", + "enum": null, + "inferrable": true + }, + { + "name": "timestamp_of_message_to_mark_as_read", + "type": "string", + "required": true, + "description": "The unique identifier (timestamp) of the message you want to mark as most recently seen in the conversation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [ + "channels:manage", + "channels:write", + "groups:write", + "im:write", + "mpim:write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'conversations.mark'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.SetSlackChannelReadCursor", + "parameters": { + "channel_id": { + "value": "C1234567890", + "type": "string", + "required": true + }, + "timestamp_of_message_to_mark_as_read": { + "value": "1624200000.000200", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetSlackProfilePhoto", + "qualifiedName": "SlackApi.SetSlackProfilePhoto", + "fullyQualifiedName": "SlackApi.SetSlackProfilePhoto@1.0.0", + "description": "Set the user's profile photo on Slack.\n\nUse this tool to update a user's profile photo on Slack. This requires the 'users.profile:write' OAuth scope, allowing changes to profile information including the profile photo.", + "parameters": [ + { + "name": "crop_box_size", + "type": "string", + "required": false, + "description": "The size of the square crop box for the profile photo in pixels. Specify the width and height, which are the same value for a square.", + "enum": null, + "inferrable": true + }, + { + "name": "crop_box_x_coordinate", + "type": "string", + "required": false, + "description": "X coordinate of the top-left corner of the crop box for the profile photo.", + "enum": null, + "inferrable": true + }, + { + "name": "crop_y_coordinate", + "type": "string", + "required": false, + "description": "Y coordinate of the top-left corner of the crop box for the user's profile photo on Slack. This determines where the cropping of the image will start on the vertical axis.", + "enum": null, + "inferrable": true + }, + { + "name": "profile_photo_image", + "type": "string", + "required": false, + "description": "The image file to set as the Slack profile photo. Provide image data directly with the correct content type (e.g., image/jpeg, image/png).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["users.profile:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'users.setPhoto'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.SetSlackProfilePhoto", + "parameters": { + "crop_box_size": { + "value": "512", + "type": "string", + "required": false + }, + "crop_box_x_coordinate": { + "value": "50", + "type": "string", + "required": false + }, + "crop_y_coordinate": { + "value": "25", + "type": "string", + "required": false + }, + "profile_photo_image": { + "value": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetSlackWorkspaceName", + "qualifiedName": "SlackApi.SetSlackWorkspaceName", + "fullyQualifiedName": "SlackApi.SetSlackWorkspaceName@1.0.0", + "description": "Update the name of a Slack workspace.\n\nUse this tool to update the name of a specified Slack workspace. This tool should be called when there's a need to change the workspace name. It requires appropriate permissions.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Slack workspace whose name you want to update.", + "enum": null, + "inferrable": true + }, + { + "name": "new_workspace_name", + "type": "string", + "required": true, + "description": "The desired new name for the Slack workspace. This replaces the existing name.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin.teams:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'admin.teams.settings.setName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.SetSlackWorkspaceName", + "parameters": { + "workspace_id": { + "value": "W1234567890", + "type": "string", + "required": true + }, + "new_workspace_name": { + "value": "New Awesome Workspace", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetWorkspaceDescription", + "qualifiedName": "SlackApi.SetWorkspaceDescription", + "fullyQualifiedName": "SlackApi.SetWorkspaceDescription@1.0.0", + "description": "Update the description of a Slack workspace.\n\nThis tool updates the description of a specified workspace in Slack. It requires admin permissions with the 'admin.teams:write' scope. It should be called when there is a need to change or set a new description for a Slack team.", + "parameters": [ + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Slack workspace where the description will be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_description", + "type": "string", + "required": true, + "description": "The new description to set for the Slack workspace. Provide a clear and concise text.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["admin.teams:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'admin.teams.settings.setDescription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.SetWorkspaceDescription", + "parameters": { + "workspace_id": { + "value": "W1234567890", + "type": "string", + "required": true + }, + "workspace_description": { + "value": "A collaborative workspace for the marketing team.", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ShareRemoteFileInChannel", + "qualifiedName": "SlackApi.ShareRemoteFileInChannel", + "fullyQualifiedName": "SlackApi.ShareRemoteFileInChannel@1.0.0", + "description": "Share a remote file into a Slack channel.\n\nThis tool shares a specified remote file into a selected Slack channel. It utilizes Slack's API to facilitate file sharing across channels.", + "parameters": [ + { + "name": "target_channel_ids", + "type": "string", + "required": true, + "description": "Comma-separated list of Slack channel IDs where the remote file will be shared. Ensure IDs are valid and the user has permission to share files in these channels.", + "enum": null, + "inferrable": true + }, + { + "name": "file_external_identifier", + "type": "string", + "required": false, + "description": "The globally unique identifier (GUID) for the file set by the app when registering with Slack. Required if 'file' is not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "file_id", + "type": "string", + "required": false, + "description": "The ID of a file registered with Slack to be shared. Required if `external_id` is not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["remote_files:share"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'files.remote.share'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.ShareRemoteFileInChannel", + "parameters": { + "target_channel_ids": { + "value": "C01234567,C89012345", + "type": "string", + "required": true + }, + "file_external_identifier": { + "value": "F0987654321", + "type": "string", + "required": false + }, + "file_id": { + "value": "F1234567890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSlackUserGroup", + "qualifiedName": "SlackApi.UpdateSlackUserGroup", + "fullyQualifiedName": "SlackApi.UpdateSlackUserGroup@1.0.0", + "description": "Update an existing User Group in Slack.\n\nThis tool updates an existing User Group in Slack. It should be called when you need to modify the details of a user group, such as its name or permissions. Ensure the appropriate permissions are granted with the 'usergroups:write' scope.", + "parameters": [ + { + "name": "user_group_id", + "type": "string", + "required": true, + "description": "The encoded ID of the User Group to update in Slack.", + "enum": null, + "inferrable": true + }, + { + "name": "default_channel_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A comma-separated list of channel IDs where the User Group is set as default. Use encoded channel IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "additional_channel_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma separated encoded channel IDs for custom additions to user group members.", + "enum": null, + "inferrable": true + }, + { + "name": "user_group_description", + "type": "string", + "required": false, + "description": "A short description of the User Group to update in Slack. This should clearly define the group's purpose or role.", + "enum": null, + "inferrable": true + }, + { + "name": "user_group_handle", + "type": "string", + "required": false, + "description": "Unique mention handle for the User Group, distinct from all channels, users, and other User Groups.", + "enum": null, + "inferrable": true + }, + { + "name": "user_group_name", + "type": "string", + "required": false, + "description": "A unique name for the User Group to update. Ensure it does not duplicate any existing User Group names.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_for_org_token", + "type": "string", + "required": false, + "description": "Encoded team ID where the user group exists, required for org-level tokens. Ignored if using a workspace-level token.", + "enum": null, + "inferrable": true + }, + { + "name": "include_user_count", + "type": "boolean", + "required": false, + "description": "Set to true to include the number of users in the User Group.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_sidebar_section", + "type": "boolean", + "required": false, + "description": "Set to true to configure the user group to appear as a sidebar section for all group members. Only relevant if the group has 1 or more default channels.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["usergroups:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'usergroups.update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.UpdateSlackUserGroup", + "parameters": { + "user_group_id": { + "value": "S12345678", + "type": "string", + "required": true + }, + "default_channel_ids": { + "value": ["C12345678", "C23456789"], + "type": "array", + "required": false + }, + "additional_channel_ids": { + "value": ["C34567890"], + "type": "array", + "required": false + }, + "user_group_description": { + "value": "This group is for project managers.", + "type": "string", + "required": false + }, + "user_group_handle": { + "value": "proj_mngrs", + "type": "string", + "required": false + }, + "user_group_name": { + "value": "Project Managers", + "type": "string", + "required": false + }, + "team_id_for_org_token": { + "value": "T12345678", + "type": "string", + "required": false + }, + "include_user_count": { + "value": true, + "type": "boolean", + "required": false + }, + "enable_sidebar_section": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSlackUsergroupUsers", + "qualifiedName": "SlackApi.UpdateSlackUsergroupUsers", + "fullyQualifiedName": "SlackApi.UpdateSlackUsergroupUsers@1.0.0", + "description": "Update the list of users in a Slack user group.\n\nThis tool updates the list of users for a specified Slack user group. It should be called when changes to the membership of a Slack user group are required.", + "parameters": [ + { + "name": "user_group_id", + "type": "string", + "required": true, + "description": "The encoded ID of the Slack user group to update.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids_list", + "type": "array", + "innerType": "string", + "required": true, + "description": "A comma separated string of encoded Slack user IDs representing the complete user list for the group. This replaces all current members.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id_for_org_token", + "type": "string", + "required": false, + "description": "Encoded team ID where the user group exists. Required if using an organization token; ignored with workspace-level token.", + "enum": null, + "inferrable": true + }, + { + "name": "update_additional_channels", + "type": "array", + "innerType": "string", + "required": false, + "description": "Encoded channel IDs to add user group members to, separated by commas. These represent additional channels for custom user group member additions.", + "enum": null, + "inferrable": true + }, + { + "name": "include_user_count", + "type": "boolean", + "required": false, + "description": "Set to true to include the number of users in the user group in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "is_shared_section", + "type": "boolean", + "required": false, + "description": "Indicates if the API call involves a shared section. Set to true if it does, otherwise false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["usergroups:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'usergroups.users.update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SlackApi.UpdateSlackUsergroupUsers", + "parameters": { + "user_group_id": { + "value": "S12345678", + "type": "string", + "required": true + }, + "user_ids_list": { + "value": "U12345678,U87654321,U23456789", + "type": "array", + "required": true + }, + "team_id_for_org_token": { + "value": "T12345678", + "type": "string", + "required": false + }, + "update_additional_channels": { + "value": ["C12345678", "C87654321"], + "type": "array", + "required": false + }, + "include_user_count": { + "value": true, + "type": "boolean", + "required": false + }, + "is_shared_section": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:41:47.044Z", + "summary": "The Arcade Toolkit for SlackApi provides a comprehensive interface for interacting with Slack's low-level API endpoints. Developers can utilize this toolkit to automate and enhance various administrative and communication tasks within Slack.\n\n**Capabilities:**\n- Create and manage conversations, channels, and user groups.\n- Handle messaging actions including sending, scheduling, and deleting messages.\n- Manage user presence and profiles.\n- Facilitate collaboration through call management and participant administration.\n- Perform advanced search operations on messages and files.\n\n**OAuth:** \nProvider: Slack \nScopes: admin, admin.invites:read, admin.teams:read, chat:write, users:read, and several others.\n\n**Secrets:** \nNo secrets are required for this toolkit." +} diff --git a/data/toolkits/spotify.json b/data/toolkits/spotify.json new file mode 100644 index 000000000..fb41638a5 --- /dev/null +++ b/data/toolkits/spotify.json @@ -0,0 +1,546 @@ +{ + "id": "Spotify", + "label": "Spotify", + "version": "1.0.2", + "description": "Arcade.dev LLM tools for Spotify", + "metadata": { + "category": "entertainment", + "iconUrl": "https://design-system.arcade.dev/icons/spotify.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/entertainment/spotify", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "spotify", + "allScopes": [ + "user-modify-playback-state", + "user-read-currently-playing", + "user-read-playback-state" + ] + }, + "tools": [ + { + "name": "AdjustPlaybackPosition", + "qualifiedName": "Spotify.AdjustPlaybackPosition", + "fullyQualifiedName": "Spotify.AdjustPlaybackPosition@1.0.2", + "description": "Adjust the playback position within the currently playing track.\n\nKnowledge of the current playback state is NOT needed to use this tool as it handles\nclamping the position to valid start/end boundaries to prevent overshooting or negative values.\n\nThis tool allows you to seek to a specific position within the currently playing track.\nYou can either provide an absolute position in milliseconds or a relative position from\nthe current playback position in milliseconds.\n\nNote:\n Either absolute_position_ms or relative_position_ms must be provided, but not both.", + "parameters": [ + { + "name": "absolute_position_ms", + "type": "integer", + "required": false, + "description": "The absolute position in milliseconds to seek to", + "enum": null, + "inferrable": true + }, + { + "name": "relative_position_ms", + "type": "integer", + "required": false, + "description": "The relative position from the current playback position in milliseconds to seek to", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "spotify", + "providerType": "oauth2", + "scopes": ["user-read-playback-state", "user-modify-playback-state"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "Success/failure message" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Spotify.AdjustPlaybackPosition", + "parameters": { + "absolute_position_ms": { + "value": 60000, + "type": "integer", + "required": false + }, + "relative_position_ms": { + "value": null, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "spotify", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAvailableDevices", + "qualifiedName": "Spotify.GetAvailableDevices", + "fullyQualifiedName": "Spotify.GetAvailableDevices@1.0.2", + "description": "Get the available devices", + "parameters": [], + "auth": { + "providerId": "spotify", + "providerType": "oauth2", + "scopes": ["user-read-playback-state"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The available devices" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Spotify.GetAvailableDevices", + "parameters": {}, + "requiresAuth": true, + "authProvider": "spotify", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCurrentlyPlaying", + "qualifiedName": "Spotify.GetCurrentlyPlaying", + "fullyQualifiedName": "Spotify.GetCurrentlyPlaying@1.0.2", + "description": "Get information about the user's currently playing track", + "parameters": [], + "auth": { + "providerId": "spotify", + "providerType": "oauth2", + "scopes": ["user-read-currently-playing"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the user's currently playing track" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Spotify.GetCurrentlyPlaying", + "parameters": {}, + "requiresAuth": true, + "authProvider": "spotify", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPlaybackState", + "qualifiedName": "Spotify.GetPlaybackState", + "fullyQualifiedName": "Spotify.GetPlaybackState@1.0.2", + "description": "Get information about the user's current playback state,\nincluding track or episode, and active device.\nThis tool does not perform any actions. Use other tools to control playback.", + "parameters": [], + "auth": { + "providerId": "spotify", + "providerType": "oauth2", + "scopes": ["user-read-playback-state"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the user's current playback state" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Spotify.GetPlaybackState", + "parameters": {}, + "requiresAuth": true, + "authProvider": "spotify", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTrackFromId", + "qualifiedName": "Spotify.GetTrackFromId", + "fullyQualifiedName": "Spotify.GetTrackFromId@1.0.2", + "description": "Get information about a track", + "parameters": [ + { + "name": "track_id", + "type": "string", + "required": true, + "description": "The Spotify ID of the track", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "spotify", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about the track" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Spotify.GetTrackFromId", + "parameters": { + "track_id": { + "value": "3n3P6fkoF9fUq3nPf9p8JQ", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "spotify", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PausePlayback", + "qualifiedName": "Spotify.PausePlayback", + "fullyQualifiedName": "Spotify.PausePlayback@1.0.2", + "description": "Pause the currently playing track, if any", + "parameters": [], + "auth": { + "providerId": "spotify", + "providerType": "oauth2", + "scopes": ["user-read-playback-state", "user-modify-playback-state"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "Success/failure message" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Spotify.PausePlayback", + "parameters": {}, + "requiresAuth": true, + "authProvider": "spotify", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PlayArtistByName", + "qualifiedName": "Spotify.PlayArtistByName", + "fullyQualifiedName": "Spotify.PlayArtistByName@1.0.2", + "description": "Plays a song by an artist and queues four more songs by the same artist", + "parameters": [ + { + "name": "name", + "type": "string", + "required": true, + "description": "The name of the artist to play", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "spotify", + "providerType": "oauth2", + "scopes": ["user-read-playback-state", "user-modify-playback-state"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "Success/failure message" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Spotify.PlayArtistByName", + "parameters": { + "name": { + "value": "Adele", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "spotify", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PlayTrackByName", + "qualifiedName": "Spotify.PlayTrackByName", + "fullyQualifiedName": "Spotify.PlayTrackByName@1.0.2", + "description": "Plays a song by name", + "parameters": [ + { + "name": "track_name", + "type": "string", + "required": true, + "description": "The name of the track to play", + "enum": null, + "inferrable": true + }, + { + "name": "artist_name", + "type": "string", + "required": false, + "description": "The name of the artist of the track", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "spotify", + "providerType": "oauth2", + "scopes": ["user-read-playback-state", "user-modify-playback-state"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "Success/failure message" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Spotify.PlayTrackByName", + "parameters": { + "track_name": { + "value": "Blinding Lights", + "type": "string", + "required": true + }, + "artist_name": { + "value": "The Weeknd", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "spotify", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResumePlayback", + "qualifiedName": "Spotify.ResumePlayback", + "fullyQualifiedName": "Spotify.ResumePlayback@1.0.2", + "description": "Resume the currently playing track, if any", + "parameters": [], + "auth": { + "providerId": "spotify", + "providerType": "oauth2", + "scopes": ["user-read-playback-state", "user-modify-playback-state"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "Success/failure message" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Spotify.ResumePlayback", + "parameters": {}, + "requiresAuth": true, + "authProvider": "spotify", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "Search", + "qualifiedName": "Spotify.Search", + "fullyQualifiedName": "Spotify.Search@1.0.2", + "description": "Search Spotify catalog information\n\nExplanation of the q parameter:\n You can narrow down your search using field filters.\n Available filters are album, artist, track, year, upc, tag:hipster, tag:new, isrc, and\n genre. Each field filter only applies to certain result types.\n\n The artist and year filters can be used while searching albums, artists and tracks.\n You can filter on a single year or a range (e.g. 1955-1960).\n The album filter can be used while searching albums and tracks.\n The genre filter can be used while searching artists and tracks.\n The isrc and track filters can be used while searching tracks.\n The upc, tag:new and tag:hipster filters can only be used while searching albums.\n The tag:new filter will return albums released in the past two weeks and tag:hipster\n can be used to return only albums with the lowest 10% popularity.\n\n Example: q=\"remaster track:Doxy artist:Miles Davis\"", + "parameters": [ + { + "name": "q", + "type": "string", + "required": true, + "description": "The search query", + "enum": null, + "inferrable": true + }, + { + "name": "types", + "type": "array", + "innerType": "string", + "required": true, + "description": "The types of results to return", + "enum": [ + "album", + "artist", + "playlist", + "track", + "show", + "episode", + "audiobook" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of results to return", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "spotify", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "A list of artists matching the search query" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Spotify.Search", + "parameters": { + "q": { + "value": "album:Thriller artist:Michael Jackson", + "type": "string", + "required": true + }, + "types": { + "value": ["album", "track", "artist"], + "type": "array", + "required": true + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "spotify", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SkipToNextTrack", + "qualifiedName": "Spotify.SkipToNextTrack", + "fullyQualifiedName": "Spotify.SkipToNextTrack@1.0.2", + "description": "Skip to the next track in the user's queue, if any", + "parameters": [], + "auth": { + "providerId": "spotify", + "providerType": "oauth2", + "scopes": ["user-read-playback-state", "user-modify-playback-state"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "Success/failure message" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Spotify.SkipToNextTrack", + "parameters": {}, + "requiresAuth": true, + "authProvider": "spotify", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SkipToPreviousTrack", + "qualifiedName": "Spotify.SkipToPreviousTrack", + "fullyQualifiedName": "Spotify.SkipToPreviousTrack@1.0.2", + "description": "Skip to the previous track in the user's queue, if any", + "parameters": [], + "auth": { + "providerId": "spotify", + "providerType": "oauth2", + "scopes": ["user-read-playback-state", "user-modify-playback-state"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "Success/failure message" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Spotify.SkipToPreviousTrack", + "parameters": {}, + "requiresAuth": true, + "authProvider": "spotify", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "StartTracksPlaybackById", + "qualifiedName": "Spotify.StartTracksPlaybackById", + "fullyQualifiedName": "Spotify.StartTracksPlaybackById@1.0.2", + "description": "Start playback of a list of tracks (songs)", + "parameters": [ + { + "name": "track_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of Spotify track (song) IDs to play. Order of execution is not guarenteed.", + "enum": null, + "inferrable": true + }, + { + "name": "position_ms", + "type": "integer", + "required": false, + "description": "The position in milliseconds to start the first track from", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "spotify", + "providerType": "oauth2", + "scopes": ["user-read-playback-state", "user-modify-playback-state"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "Success/failure message" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Spotify.StartTracksPlaybackById", + "parameters": { + "track_ids": { + "value": [ + "3nXj4P4G4D6zFZrsHeEHB7", + "1IrZ1O9Gp4y4Bb2wRmhW9n", + "7eW8FmDpP9E1jowEYl7Lhv" + ], + "type": "array", + "required": true + }, + "position_ms": { + "value": 5000, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "spotify", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "warning", + "location": "description", + "position": "after", + "content": "\n This Toolkit is not available in Arcade Cloud. You can use these tools with a\n [self-hosted](/guides/deployment-hosting/configure-engine) instance of Arcade.\n" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:41:22.038Z", + "summary": "The Arcade toolkit for Spotify empowers developers to integrate with Spotify's music streaming services seamlessly. It enables a variety of playback functionalities and retrieval of music data.\n\n**Capabilities**\n- Control playback by adjusting position, pausing, and resuming tracks.\n- Access information on available devices and currently playing tracks.\n- Search the Spotify catalog with advanced filtering options.\n- Queue and play tracks or albums based on artist, name, or ID.\n\n**OAuth**\n- Auth is via OAuth2 with provider Spotify.\n- Required scopes include `user-modify-playback-state`, `user-read-currently-playing`, and `user-read-playback-state`." +} diff --git a/data/toolkits/squareupapi.json b/data/toolkits/squareupapi.json new file mode 100644 index 000000000..fa2ba8d97 --- /dev/null +++ b/data/toolkits/squareupapi.json @@ -0,0 +1,18196 @@ +{ + "id": "SquareupApi", + "label": "SquareUp API", + "version": "4.0.0", + "description": "Tools that enable LLMs to interact directly with the squareup API.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/square.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/squareup-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "squareup", + "allScopes": [ + "APPOINTMENTS_BUSINESS_SETTINGS_READ", + "APPOINTMENTS_READ", + "APPOINTMENTS_WRITE", + "BANK_ACCOUNTS_READ", + "CASH_DRAWER_READ", + "CHANNELS_READ", + "CUSTOMERS_READ", + "CUSTOMERS_WRITE", + "DEVICES_READ", + "DEVICE_CREDENTIAL_MANAGEMENT", + "DISPUTES_READ", + "DISPUTES_WRITE", + "EMPLOYEES_READ", + "EMPLOYEES_WRITE", + "GIFTCARDS_READ", + "GIFTCARDS_WRITE", + "INVENTORY_READ", + "INVENTORY_WRITE", + "INVOICES_READ", + "INVOICES_WRITE", + "ITEMS_READ", + "ITEMS_WRITE", + "LOYALTY_READ", + "LOYALTY_WRITE", + "MERCHANT_PROFILE_READ", + "MERCHANT_PROFILE_WRITE", + "ONLINE_STORE_SITE_READ", + "ONLINE_STORE_SNIPPETS_READ", + "ONLINE_STORE_SNIPPETS_WRITE", + "ORDERS_READ", + "ORDERS_WRITE", + "PAYMENTS_READ", + "PAYMENTS_WRITE", + "PAYMENT_METHODS_READ", + "SUBSCRIPTIONS_READ", + "SUBSCRIPTIONS_WRITE", + "TIMECARDS_READ", + "TIMECARDS_SETTINGS_READ", + "TIMECARDS_SETTINGS_WRITE", + "TIMECARDS_WRITE", + "VENDOR_READ", + "VENDOR_WRITE" + ] + }, + "tools": [ + { + "name": "AcceptDisputeLoss", + "qualifiedName": "SquareupApi.AcceptDisputeLoss", + "fullyQualifiedName": "SquareupApi.AcceptDisputeLoss@4.0.0", + "description": "Accept the loss on a dispute and update its status to ACCEPTED.\n\nThis tool should be called when you need to accept the loss on a dispute for a transaction. It updates the dispute state to ACCEPTED and returns the disputed amount to the cardholder. Square debits the corresponding amount from the seller's account. Use this when a dispute resolution is finalized, and the seller agrees to the loss.", + "parameters": [ + { + "name": "dispute_id", + "type": "string", + "required": true, + "description": "The unique ID of the dispute to accept and resolve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["DISPUTES_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AcceptDispute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.AcceptDisputeLoss", + "parameters": { + "dispute_id": { + "value": "dispute_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AccumulateLoyaltyPoints", + "qualifiedName": "SquareupApi.AccumulateLoyaltyPoints", + "fullyQualifiedName": "SquareupApi.AccumulateLoyaltyPoints@4.0.0", + "description": "Add points to a loyalty account for a purchase.\n\nThis tool adds loyalty points to a customer's account following a purchase. It can be used with or without the Orders API. If using the Orders API, provide the `order_id` for automatic point calculation based on the program and promotions. If not, manually compute and provide the `points` to add.", + "parameters": [ + { + "name": "loyalty_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the target loyalty account to which points will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "purchase_location_id", + "type": "string", + "required": true, + "description": "The ID of the location where the purchase was made, necessary for loyalty point accumulation.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_request_id", + "type": "string", + "required": true, + "description": "A unique string identifier for the `AccumulateLoyaltyPoints` request. Must be unique for each request to ensure idempotency.", + "enum": null, + "inferrable": true + }, + { + "name": "loyalty_program_id", + "type": "string", + "required": false, + "description": "The ID of the loyalty program to add points to. Required to identify the correct program.", + "enum": null, + "inferrable": true + }, + { + "name": "order_id_for_accumulation", + "type": "string", + "required": false, + "description": "The ID of the order for which points are accumulated. Required if using the Orders API.", + "enum": null, + "inferrable": true + }, + { + "name": "points_to_accumulate", + "type": "integer", + "required": false, + "description": "Specify the number of points to add to the loyalty account from the purchase event if not using the Orders API.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AccumulateLoyaltyPoints'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.AccumulateLoyaltyPoints", + "parameters": { + "loyalty_account_id": { + "value": "LA123456789", + "type": "string", + "required": true + }, + "purchase_location_id": { + "value": "PL987654321", + "type": "string", + "required": true + }, + "unique_request_id": { + "value": "UR123456789", + "type": "string", + "required": true + }, + "loyalty_program_id": { + "value": "LP54321", + "type": "string", + "required": false + }, + "order_id_for_accumulation": { + "value": "O123456789", + "type": "string", + "required": false + }, + "points_to_accumulate": { + "value": 150, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ActivateDomainForApplePay", + "qualifiedName": "SquareupApi.ActivateDomainForApplePay", + "fullyQualifiedName": "SquareupApi.ActivateDomainForApplePay@4.0.0", + "description": "Activates a domain for use with Apple Pay and Square.\n\nUse this tool to activate a domain for Apple Pay on the Web with Square. It performs a validation to ensure the domain is Apple Pay enabled, allowing platforms to bulk activate Apple Pay for their merchants. Ensure a valid domain verification file is hosted as per the guidelines.", + "parameters": [ + { + "name": "apple_pay_domain_name", + "type": "string", + "required": true, + "description": "Enter the domain name, as per RFC-1034, to register it with Apple Pay.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RegisterDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ActivateDomainForApplePay", + "parameters": { + "apple_pay_domain_name": { + "value": "example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddCardToMerchant", + "qualifiedName": "SquareupApi.AddCardToMerchant", + "fullyQualifiedName": "SquareupApi.AddCardToMerchant@4.0.0", + "description": "Adds a card on file to an existing merchant.\n\nThis tool is used to store a new card on file for an existing merchant, facilitating future transactions. It provides confirmation once the card is successfully added.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.AddCardToMerchant", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"merchantId\":\"123456\",\"card\":{\"cardholderName\":\"John Doe\",\"cardNumber\":\"4111111111111111\",\"expiryDate\":\"12/25\",\"cvv\":\"123\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddGroupToCustomer", + "qualifiedName": "SquareupApi.AddGroupToCustomer", + "fullyQualifiedName": "SquareupApi.AddGroupToCustomer@4.0.0", + "description": "Adds a customer to a specified group.\n\nUse this tool to assign a customer to a specific group using their customer ID and the group ID. This helps in categorizing customers into different groups for better management.", + "parameters": [ + { + "name": "customer_group_id", + "type": "string", + "required": true, + "description": "The unique identifier of the group to which the customer will be added. This is necessary to specify the exact group for categorization purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier of the customer to be added to the specified group.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AddGroupToCustomer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.AddGroupToCustomer", + "parameters": { + "customer_group_id": { + "value": "group_12345", + "type": "string", + "required": true + }, + "customer_id": { + "value": "cust_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddOrUpdateSquareOnlineSnippet", + "qualifiedName": "SquareupApi.AddOrUpdateSquareOnlineSnippet", + "fullyQualifiedName": "SquareupApi.AddOrUpdateSquareOnlineSnippet@4.0.0", + "description": "Add or update a snippet on a Square Online site.\n\nThis tool adds a new snippet to or updates an existing snippet on a Square Online site's `head` element. It excludes checkout pages and requires the site's ID. Use ListSites to find site IDs.", + "parameters": [ + { + "name": "site_id_for_snippet", + "type": "string", + "required": true, + "description": "The ID of the site where you want to add or update the snippet. Obtained through ListSites function.", + "enum": null, + "inferrable": true + }, + { + "name": "snippet_code_content", + "type": "string", + "required": true, + "description": "The code snippet to add or update, which can include valid HTML, JavaScript, or both. This will be appended to the head element of all site pages except checkout pages.", + "enum": null, + "inferrable": true + }, + { + "name": "snippet_id", + "type": "string", + "required": false, + "description": "The Square-assigned ID for the snippet to add or update.", + "enum": null, + "inferrable": true + }, + { + "name": "snippet_initial_creation_timestamp", + "type": "string", + "required": false, + "description": "The timestamp indicating when the snippet was initially added to the site, in RFC 3339 format.", + "enum": null, + "inferrable": true + }, + { + "name": "snippet_last_updated_timestamp", + "type": "string", + "required": false, + "description": "The timestamp for when the snippet was last updated on the site, in RFC 3339 format.", + "enum": null, + "inferrable": true + }, + { + "name": "snippet_site_id", + "type": "string", + "required": false, + "description": "The ID of the site that contains the snippet to be updated or added.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ONLINE_STORE_SNIPPETS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpsertSnippet'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.AddOrUpdateSquareOnlineSnippet", + "parameters": { + "site_id_for_snippet": { + "value": "site_123456789", + "type": "string", + "required": true + }, + "snippet_code_content": { + "value": "", + "type": "string", + "required": true + }, + "snippet_id": { + "value": "snippet_987654321", + "type": "string", + "required": false + }, + "snippet_initial_creation_timestamp": { + "value": "2023-01-01T12:00:00Z", + "type": "string", + "required": false + }, + "snippet_last_updated_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "snippet_site_id": { + "value": "site_123456789", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AdjustLoyaltyPoints", + "qualifiedName": "SquareupApi.AdjustLoyaltyPoints", + "fullyQualifiedName": "SquareupApi.AdjustLoyaltyPoints@4.0.0", + "description": "Manually adjust loyalty points for a buyer's account.\n\nUse this tool to manually add or subtract loyalty points from a buyer's account when automatic accumulation is not applied. Ideal for scenarios requiring manual point corrections.", + "parameters": [ + { + "name": "loyalty_account_id", + "type": "string", + "required": true, + "description": "The unique ID of the buyer's loyalty account to adjust.", + "enum": null, + "inferrable": true + }, + { + "name": "points_adjustment_amount", + "type": "integer", + "required": true, + "description": "The number of points to add or remove from the buyer's account.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_request_identifier", + "type": "string", + "required": true, + "description": "A unique string to identify this loyalty points adjustment request. Must be unique for each request to prevent duplicates.", + "enum": null, + "inferrable": true + }, + { + "name": "adjustment_reason", + "type": "string", + "required": false, + "description": "The reason for adjusting the loyalty points, such as 'customer courtesy' or 'error correction'.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_negative_balance", + "type": "boolean", + "required": false, + "description": "Set to true to allow a negative balance after point subtraction. Defaults to false if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "loyalty_program_id", + "type": "string", + "required": false, + "description": "The Square-assigned ID of the loyalty program to adjust points for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'AdjustLoyaltyPoints'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.AdjustLoyaltyPoints", + "parameters": { + "loyalty_account_id": { + "value": "loyalty_12345", + "type": "string", + "required": true + }, + "points_adjustment_amount": { + "value": 50, + "type": "integer", + "required": true + }, + "unique_request_identifier": { + "value": "request_67890", + "type": "string", + "required": true + }, + "adjustment_reason": { + "value": "customer courtesy", + "type": "string", + "required": false + }, + "allow_negative_balance": { + "value": true, + "type": "boolean", + "required": false + }, + "loyalty_program_id": { + "value": "program_abcde", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ApplyInventoryAdjustments", + "qualifiedName": "SquareupApi.ApplyInventoryAdjustments", + "fullyQualifiedName": "SquareupApi.ApplyInventoryAdjustments@4.0.0", + "description": "Apply batch adjustments to inventory quantities.\n\nUse this tool to apply inventory adjustments and counts to item quantities. Returns updated quantities on success, or a list of errors if the operation fails.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BatchChangeInventory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ApplyInventoryAdjustments", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"adjustments\":[{\"item_id\":\"item_123\",\"quantity\":10},{\"item_id\":\"item_456\",\"quantity\":-5}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BatchUpsertCatalogObjects", + "qualifiedName": "SquareupApi.BatchUpsertCatalogObjects", + "fullyQualifiedName": "SquareupApi.BatchUpsertCatalogObjects@4.0.0", + "description": "Batch create or update up to 10,000 catalog objects.\n\nThe tool creates or updates catalog objects in batches, each containing up to 1,000 objects. It's an all-or-nothing operation for each batch, meaning if one object in a batch is invalid, the entire batch fails. The tool ensures consistency by processing one update request at a time per seller account.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ITEMS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BatchUpsertCatalogObjects'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BatchUpsertCatalogObjects", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"objects\":[{\"id\":\"object_1\",\"type\":\"ITEM\",\"item_data\":{\"name\":\"Sample Item 1\",\"price_money\":{\"amount\":1000,\"currency\":\"USD\"}}},{\"id\":\"object_2\",\"type\":\"ITEM\",\"item_data\":{\"name\":\"Sample Item 2\",\"price_money\":{\"amount\":2000,\"currency\":\"USD\"}}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkCreateCustomers", + "qualifiedName": "SquareupApi.BulkCreateCustomers", + "fullyQualifiedName": "SquareupApi.BulkCreateCustomers@4.0.0", + "description": "Create multiple customer profiles in bulk.\n\nUse this tool to create multiple customer profiles for a business at once. You need to provide at least one identifying value for each customer, such as given name, family name, company name, email address, or phone number.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkCreateCustomers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkCreateCustomers", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"customers\":[{\"given_name\":\"John\",\"family_name\":\"Doe\",\"email\":\"john.doe@example.com\",\"phone\":\"123-456-7890\"},{\"given_name\":\"Jane\",\"family_name\":\"Smith\",\"email\":\"jane.smith@example.com\",\"phone\":\"098-765-4321\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkCreateTeamMembers", + "qualifiedName": "SquareupApi.BulkCreateTeamMembers", + "fullyQualifiedName": "SquareupApi.BulkCreateTeamMembers@4.0.0", + "description": "Create multiple team members in bulk.\n\nUse this tool to create multiple team member records at once. It processes each creation individually and returns details for successful operations, along with error information for any failures.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["EMPLOYEES_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkCreateTeamMembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkCreateTeamMembers", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"team_members\":[{\"first_name\":\"John\",\"last_name\":\"Doe\",\"email\":\"john.doe@example.com\",\"phone\":\"123-456-7890\",\"status\":\"ACTIVE\"},{\"first_name\":\"Jane\",\"last_name\":\"Smith\",\"email\":\"jane.smith@example.com\",\"phone\":\"098-765-4321\",\"status\":\"ACTIVE\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkCreateVendors", + "qualifiedName": "SquareupApi.BulkCreateVendors", + "fullyQualifiedName": "SquareupApi.BulkCreateVendors@4.0.0", + "description": "Create multiple vendor profiles for suppliers.\n\nUse this tool to create one or more vendor profiles, representing suppliers for a seller, in bulk. Ideal for onboarding multiple vendors at once.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["VENDOR_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkCreateVendors'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkCreateVendors", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"vendors\":[{\"name\":\"Supplier A\",\"email\":\"supplierA@example.com\",\"phone\":\"123-456-7890\"},{\"name\":\"Supplier B\",\"email\":\"supplierB@example.com\",\"phone\":\"098-765-4321\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkDeleteBookingCustomAttributes", + "qualifiedName": "SquareupApi.BulkDeleteBookingCustomAttributes", + "fullyQualifiedName": "SquareupApi.BulkDeleteBookingCustomAttributes@4.0.0", + "description": "Bulk delete custom attributes for bookings.\n\nUse this tool to delete multiple custom attributes associated with bookings in bulk. Ensure the proper OAuth permissions are set: 'APPOINTMENTS_WRITE' for buyer-level and both 'APPOINTMENTS_ALL_WRITE' and 'APPOINTMENTS_WRITE' for seller-level. Requires an active subscription to 'Appointments Plus' or 'Appointments Premium' for seller-level actions.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkDeleteBookingCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkDeleteBookingCustomAttributes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"booking_ids\":[\"booking1\",\"booking2\"],\"custom_attributes\":[\"attribute1\",\"attribute2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkDeleteCustomers", + "qualifiedName": "SquareupApi.BulkDeleteCustomers", + "fullyQualifiedName": "SquareupApi.BulkDeleteCustomers@4.0.0", + "description": "Deletes multiple customer profiles at once.\n\nUse this tool to remove several customer profiles in a single action by providing their IDs. It returns a map of responses detailing the outcome for each profile.", + "parameters": [ + { + "name": "customer_profile_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "Array of customer profile IDs to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkDeleteCustomers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkDeleteCustomers", + "parameters": { + "customer_profile_ids": { + "value": ["12345", "67890", "ABCDE", "FGHIJ"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkDeleteLocationCustomAttributes", + "qualifiedName": "SquareupApi.BulkDeleteLocationCustomAttributes", + "fullyQualifiedName": "SquareupApi.BulkDeleteLocationCustomAttributes@4.0.0", + "description": "Delete custom attributes for multiple locations at once.\n\nThis tool deletes custom attributes for locations in bulk. It is used when the visibility setting is 'VISIBILITY_READ_WRITE_VALUES', allowing the deletion of attributes owned by other applications.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkDeleteLocationCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkDeleteLocationCustomAttributes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"location_ids\":[\"loc_123\",\"loc_456\"],\"custom_attribute_keys\":[\"attr_1\",\"attr_2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkDeleteMerchantCustomAttributes", + "qualifiedName": "SquareupApi.BulkDeleteMerchantCustomAttributes", + "fullyQualifiedName": "SquareupApi.BulkDeleteMerchantCustomAttributes@4.0.0", + "description": "Bulk delete custom attributes for a merchant.\n\nUse this tool to delete custom attributes for a merchant in bulk. It can only delete attributes with 'VISIBILITY_READ_WRITE_VALUES' if owned by another application.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkDeleteMerchantCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkDeleteMerchantCustomAttributes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"merchantId\":\"123456789\",\"attributeKeys\":[\"custom_attr_1\",\"custom_attr_2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkDeleteOrderCustomAttributes", + "qualifiedName": "SquareupApi.BulkDeleteOrderCustomAttributes", + "fullyQualifiedName": "SquareupApi.BulkDeleteOrderCustomAttributes@4.0.0", + "description": "Perform bulk deletion of custom attributes from orders.\n\nUse this tool to delete multiple custom attributes from one or more orders in bulk. It processes a map of delete requests and returns a map of responses, each paired with a request ID.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkDeleteOrderCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkDeleteOrderCustomAttributes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"order_ids\":[\"order_id_1\",\"order_id_2\"],\"custom_attribute_ids\":[\"attr_id_1\",\"attr_id_2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkPublishScheduledShifts", + "qualifiedName": "SquareupApi.BulkPublishScheduledShifts", + "fullyQualifiedName": "SquareupApi.BulkPublishScheduledShifts@4.0.0", + "description": "Publish multiple scheduled shifts in bulk.\n\nUse this tool to publish between 1 to 100 scheduled shifts at once. It processes a map of individual publish requests and provides corresponding responses. Ensure all shifts have start and end times within a two-week window.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkPublishScheduledShifts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkPublishScheduledShifts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"shifts\":[{\"start\":\"2023-11-01T09:00:00Z\",\"end\":\"2023-11-01T17:00:00Z\",\"employee_id\":\"123\"},{\"start\":\"2023-11-02T10:00:00Z\",\"end\":\"2023-11-02T18:00:00Z\",\"employee_id\":\"456\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkRetrieveBookings", + "qualifiedName": "SquareupApi.BulkRetrieveBookings", + "fullyQualifiedName": "SquareupApi.BulkRetrieveBookings@4.0.0", + "description": "Retrieve multiple bookings using booking IDs.\n\nThis tool retrieves a list of bookings by their IDs. It requires appropriate OAuth scopes for buyer or seller level permissions.", + "parameters": [ + { + "name": "booking_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "A non-empty list of booking IDs to retrieve the corresponding bookings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkRetrieveBookings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkRetrieveBookings", + "parameters": { + "booking_ids": { + "value": ["bk_12345", "bk_67890", "bk_11223"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkRetrieveCustomers", + "qualifiedName": "SquareupApi.BulkRetrieveCustomers", + "fullyQualifiedName": "SquareupApi.BulkRetrieveCustomers@4.0.0", + "description": "Retrieve multiple customer profiles using IDs.\n\nUse this tool to fetch detailed customer profiles by providing a list of customer IDs. It is useful for applications needing to access multiple customer data at once.", + "parameters": [ + { + "name": "customer_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of customer profile IDs to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkRetrieveCustomers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkRetrieveCustomers", + "parameters": { + "customer_ids": { + "value": ["12345", "67890", "ABCDE", "FGHIJ"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkSwapSubscriptionPlan", + "qualifiedName": "SquareupApi.BulkSwapSubscriptionPlan", + "fullyQualifiedName": "SquareupApi.BulkSwapSubscriptionPlan@4.0.0", + "description": "Schedule a plan variation swap for multiple subscriptions.\n\nThis tool schedules a swap of plan variations for all active subscriptions under a specified plan variation. It is used when there is a need to change the plan variation for multiple subscriptions simultaneously.", + "parameters": [ + { + "name": "location_id_association", + "type": "string", + "required": true, + "description": "The ID of the location to associate with the swapped subscriptions. This specifies where the subscription changes are applied.", + "enum": null, + "inferrable": true + }, + { + "name": "new_plan_variation_id", + "type": "string", + "required": true, + "description": "The ID of the new subscription plan variation for the swap. This field is required.", + "enum": null, + "inferrable": true + }, + { + "name": "old_plan_variation_id", + "type": "string", + "required": true, + "description": "The ID of the current plan variation to swap. Active subscriptions using this plan will switch to the new variation on their next billing day.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["SUBSCRIPTIONS_READ", "ITEMS_READ", "SUBSCRIPTIONS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkSwapPlan'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkSwapSubscriptionPlan", + "parameters": { + "location_id_association": { + "value": "loc_123456", + "type": "string", + "required": true + }, + "new_plan_variation_id": { + "value": "plan_var_78910", + "type": "string", + "required": true + }, + "old_plan_variation_id": { + "value": "plan_var_45678", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkUpdateTeamMembers", + "qualifiedName": "SquareupApi.BulkUpdateTeamMembers", + "fullyQualifiedName": "SquareupApi.BulkUpdateTeamMembers@4.0.0", + "description": "Update multiple team members in bulk.\n\nThis tool updates multiple team member objects at once. It should be called when you need to perform bulk updates to team members. While processing, if any updates fail, the tool still returns the updated members along with specific error details for the failed attempts.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["EMPLOYEES_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkUpdateTeamMembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkUpdateTeamMembers", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"team_members\":[{\"id\":\"tm_1\",\"status\":\"active\",\"email\":\"user1@example.com\",\"first_name\":\"John\",\"last_name\":\"Doe\"},{\"id\":\"tm_2\",\"status\":\"inactive\",\"email\":\"user2@example.com\",\"first_name\":\"Jane\",\"last_name\":\"Smith\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkUpdateVendors", + "qualifiedName": "SquareupApi.BulkUpdateVendors", + "fullyQualifiedName": "SquareupApi.BulkUpdateVendors@4.0.0", + "description": "Update multiple vendor records simultaneously.\n\nUse this tool to update details of multiple vendors at once. It modifies existing vendor records that are suppliers to a seller, streamlining vendor management tasks.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["VENDOR_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkUpdateVendors'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkUpdateVendors", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"vendors\":[{\"id\":\"vendor_001\",\"name\":\"Vendor One\",\"address\":\"123 Main St, Anytown, USA\"},{\"id\":\"vendor_002\",\"name\":\"Vendor Two\",\"address\":\"456 Elm St, Othertown, USA\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkUpsertBookingCustomAttributes", + "qualifiedName": "SquareupApi.BulkUpsertBookingCustomAttributes", + "fullyQualifiedName": "SquareupApi.BulkUpsertBookingCustomAttributes@4.0.0", + "description": "Bulk upserts custom attributes for bookings.\n\nUse this tool to update or insert multiple custom attributes for bookings at once. Requires specific OAuth permissions depending on whether you operate at the buyer or seller level. Ensure sellers are subscribed to necessary service tiers.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkUpsertBookingCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkUpsertBookingCustomAttributes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"bookings\":[{\"booking_id\":\"12345\",\"custom_attributes\":{\"key1\":\"value1\",\"key2\":\"value2\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkUpsertCustomerAttributes", + "qualifiedName": "SquareupApi.BulkUpsertCustomerAttributes", + "fullyQualifiedName": "SquareupApi.BulkUpsertCustomerAttributes@4.0.0", + "description": "Bulk create or update custom attributes for customer profiles.\n\nUse this tool to set or update the value of custom attributes for multiple customer profiles in a Square seller account. It handles up to 25 upsert requests, returning responses mapped to their request IDs. Useful for managing multiple custom attributes at once.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkUpsertCustomerCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkUpsertCustomerAttributes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"customer_attributes\": [{\"customer_id\": \"C12345\", \"attributes\": {\"loyalty_level\": \"gold\", \"preferred_language\": \"en\"}}, {\"customer_id\": \"C67890\", \"attributes\": {\"loyalty_level\": \"silver\", \"preferred_language\": \"es\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkUpsertLocationCustomAttributes", + "qualifiedName": "SquareupApi.BulkUpsertLocationCustomAttributes", + "fullyQualifiedName": "SquareupApi.BulkUpsertLocationCustomAttributes@4.0.0", + "description": "Bulk create or update custom attributes for multiple locations.\n\nThis tool is used to create or update custom attributes for multiple locations in a Square seller account. It handles multiple upsert requests simultaneously, allowing you to efficiently manage location-specific data.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkUpsertLocationCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkUpsertLocationCustomAttributes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"locations\":[{\"id\":\"loc_1\",\"custom_attributes\":{\"color\":\"blue\",\"size\":\"large\"}},{\"id\":\"loc_2\",\"custom_attributes\":{\"color\":\"red\",\"size\":\"medium\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "BulkUpsertOrderCustomAttributes", + "qualifiedName": "SquareupApi.BulkUpsertOrderCustomAttributes", + "fullyQualifiedName": "SquareupApi.BulkUpsertOrderCustomAttributes@4.0.0", + "description": "Perform bulk create or update of order custom attributes.\n\nThis tool allows for creating or updating order custom attributes in bulk. It can handle up to 25 requests at once, each identified uniquely, and provides responses for each request. It is used to manage custom attributes based on definitions in a Square seller account, and may also delete attributes. Use this when multiple order custom attributes need simultaneous updating or creation.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkUpsertOrderCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.BulkUpsertOrderCustomAttributes", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"orders\":[{\"order_id\":\"12345\",\"custom_attributes\":{\"color\":\"red\",\"size\":\"L\"}},{\"order_id\":\"67890\",\"custom_attributes\":{\"color\":\"blue\",\"size\":\"M\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CalculateLoyaltyPoints", + "qualifiedName": "SquareupApi.CalculateLoyaltyPoints", + "fullyQualifiedName": "SquareupApi.CalculateLoyaltyPoints@4.0.0", + "description": "Calculate loyalty points a buyer can earn from a purchase.\n\nUse this tool to determine the number of loyalty points to reward a buyer after a purchase. Provide either the `order_id` or `transaction_amount_money` to calculate points based on the order or purchase amount, respectively. Points calculation considers the base loyalty program, and possibly a loyalty promotion if applicable.", + "parameters": [ + { + "name": "loyalty_program_id", + "type": "string", + "required": true, + "description": "The ID of the loyalty program, defining the rules for accruing points.", + "enum": null, + "inferrable": true + }, + { + "name": "currency_code", + "type": "string", + "required": false, + "description": "Indicates the associated currency for an amount of money using ISO 4217 codes. For example, 'USD' for United States Dollar.", + "enum": null, + "inferrable": true + }, + { + "name": "loyalty_account_id", + "type": "string", + "required": false, + "description": "The ID of the target loyalty account. Optionally specify if using the Orders API. Determines promotion point eligibility based on trigger limits.", + "enum": null, + "inferrable": true + }, + { + "name": "order_id", + "type": "string", + "required": false, + "description": "The Order ID used to calculate points. Provide this if using the Orders API. Otherwise, use transaction_amount_money.", + "enum": null, + "inferrable": true + }, + { + "name": "transaction_amount_in_smallest_denomination", + "type": "integer", + "required": false, + "description": "The amount of money for the transaction, given in the smallest denomination of the currency (e.g., cents for USD).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CalculateLoyaltyPoints'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CalculateLoyaltyPoints", + "parameters": { + "loyalty_program_id": { + "value": "program_12345", + "type": "string", + "required": true + }, + "currency_code": { + "value": "USD", + "type": "string", + "required": false + }, + "loyalty_account_id": { + "value": "account_67890", + "type": "string", + "required": false + }, + "order_id": { + "value": "order_ABC123", + "type": "string", + "required": false + }, + "transaction_amount_in_smallest_denomination": { + "value": 5000, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelBooking", + "qualifiedName": "SquareupApi.CancelBooking", + "fullyQualifiedName": "SquareupApi.CancelBooking@4.0.0", + "description": "Cancel an existing booking.\n\nCall this tool to cancel a booking using its unique ID. Requires specific OAuth permissions depending on user level. For seller-level cancellations, an Appointments Plus or Premium subscription is necessary.", + "parameters": [ + { + "name": "booking_id", + "type": "string", + "required": true, + "description": "The unique ID of the booking to be canceled. This ID is required to identify which booking to cancel.", + "enum": null, + "inferrable": true + }, + { + "name": "booking_revision_number", + "type": "integer", + "required": false, + "description": "The current revision number of the booking for optimistic concurrency control.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "Unique key to ensure the request is idempotent and prevents duplicate operations.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CancelBooking'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CancelBooking", + "parameters": { + "booking_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "booking_revision_number": { + "value": 3, + "type": "integer", + "required": false + }, + "idempotency_key": { + "value": "unique-key-09876", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelInvoice", + "qualifiedName": "SquareupApi.CancelInvoice", + "fullyQualifiedName": "SquareupApi.CancelInvoice@4.0.0", + "description": "Cancel an invoice to prevent further transactions.\n\nThis tool cancels an invoice, ensuring that no payments can be collected. It cannot be used for invoices in the `DRAFT`, `PAID`, `REFUNDED`, `CANCELED`, or `FAILED` states.", + "parameters": [ + { + "name": "invoice_id", + "type": "string", + "required": true, + "description": "The ID of the invoice you want to cancel. This is required to specify which invoice will be affected.", + "enum": null, + "inferrable": true + }, + { + "name": "invoice_version_to_cancel", + "type": "integer", + "required": true, + "description": "The version number of the invoice to be canceled. Use GetInvoice or ListInvoices to find it if unknown.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVOICES_WRITE", "ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CancelInvoice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CancelInvoice", + "parameters": { + "invoice_id": { + "value": "INV123456789", + "type": "string", + "required": true + }, + "invoice_version_to_cancel": { + "value": 2, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelLoyaltyPromotion", + "qualifiedName": "SquareupApi.CancelLoyaltyPromotion", + "fullyQualifiedName": "SquareupApi.CancelLoyaltyPromotion@4.0.0", + "description": "Cancels an active or scheduled loyalty promotion early.\n\nUse this tool to cancel a loyalty promotion that is currently active or scheduled, either earlier than its end date or if no end date is specified.", + "parameters": [ + { + "name": "loyalty_program_id", + "type": "string", + "required": true, + "description": "The unique ID of the base loyalty program to identify which program the promotion is associated with.", + "enum": null, + "inferrable": true + }, + { + "name": "loyalty_promotion_id", + "type": "string", + "required": true, + "description": "The ID of the loyalty promotion to cancel, which can be 'ACTIVE' or 'SCHEDULED'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CancelLoyaltyPromotion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CancelLoyaltyPromotion", + "parameters": { + "loyalty_program_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "loyalty_promotion_id": { + "value": "ACTIVE", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelPayment", + "qualifiedName": "SquareupApi.CancelPayment", + "fullyQualifiedName": "SquareupApi.CancelPayment@4.0.0", + "description": "Cancel or void an approved payment.\n\nUse this tool to cancel a payment that has an APPROVED status. Ideal for reversing payments that should not proceed.", + "parameters": [ + { + "name": "payment_id_to_cancel", + "type": "string", + "required": true, + "description": "The unique identifier of the payment to be canceled. Must have an APPROVED status.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CancelPayment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CancelPayment", + "parameters": { + "payment_id_to_cancel": { + "value": "abc12345-6789-def0-ghij-klmnopqrstuv", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelPaymentByIdempotency", + "qualifiedName": "SquareupApi.CancelPaymentByIdempotency", + "fullyQualifiedName": "SquareupApi.CancelPaymentByIdempotency@4.0.0", + "description": "Cancel a payment by idempotency key when status is unknown.\n\nUse this tool to cancel a payment when a CreatePayment request status is uncertain, typically due to network issues. Provide the same idempotency key used in the original CreatePayment request. If no payment is found, the tool confirms no action was taken.", + "parameters": [ + { + "name": "payment_idempotency_key", + "type": "string", + "required": true, + "description": "The idempotency key used to identify the payment to cancel. It should match the key used in the original CreatePayment request.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CancelPaymentByIdempotencyKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CancelPaymentByIdempotency", + "parameters": { + "payment_idempotency_key": { + "value": "abc123xyz890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelSubscription", + "qualifiedName": "SquareupApi.CancelSubscription", + "fullyQualifiedName": "SquareupApi.CancelSubscription@4.0.0", + "description": "Cancel an active subscription at the end of the billing period.\n\nThis tool schedules a cancellation for an active subscription, setting the cancellation date to the end of the current billing cycle. After this date, the subscription changes from ACTIVE to CANCELED.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The unique ID of the subscription to be canceled. Required for scheduling the cancellation action.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["SUBSCRIPTIONS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CancelSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CancelSubscription", + "parameters": { + "subscription_id": { + "value": "sub_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelTerminalAction", + "qualifiedName": "SquareupApi.CancelTerminalAction", + "fullyQualifiedName": "SquareupApi.CancelTerminalAction@4.0.0", + "description": "Cancel a terminal action request if possible.\n\nThis tool cancels a terminal action request with SquareUp if the current status allows it. Use it when you need to abort a terminal action that is still pending or in progress.", + "parameters": [ + { + "name": "terminal_action_id", + "type": "string", + "required": true, + "description": "Unique ID for the `TerminalAction` you want to cancel. This ID helps target the specific action to abort.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CancelTerminalAction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CancelTerminalAction", + "parameters": { + "terminal_action_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelTerminalCheckout", + "qualifiedName": "SquareupApi.CancelTerminalCheckout", + "fullyQualifiedName": "SquareupApi.CancelTerminalCheckout@4.0.0", + "description": "Cancel a terminal checkout request if possible.\n\nUse this tool to cancel an ongoing Terminal checkout request if its status allows for cancellation.", + "parameters": [ + { + "name": "terminal_checkout_id", + "type": "string", + "required": true, + "description": "The unique ID for the desired TerminalCheckout to be canceled.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CancelTerminalCheckout'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CancelTerminalCheckout", + "parameters": { + "terminal_checkout_id": { + "value": "abcd1234efgh5678", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelTerminalRefund", + "qualifiedName": "SquareupApi.CancelTerminalRefund", + "fullyQualifiedName": "SquareupApi.CancelTerminalRefund@4.0.0", + "description": "Cancel a terminal refund request by its ID.\n\nUse this tool to cancel a terminal refund request when the status allows for cancellation. Provide the refund request ID to execute the cancellation.", + "parameters": [ + { + "name": "refund_request_id", + "type": "string", + "required": true, + "description": "The unique ID of the terminal refund request to cancel.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CancelTerminalRefund'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CancelTerminalRefund", + "parameters": { + "refund_request_id": { + "value": "12345abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CancelTransferOrder", + "qualifiedName": "SquareupApi.CancelTransferOrder", + "fullyQualifiedName": "SquareupApi.CancelTransferOrder@4.0.0", + "description": "Cancel a transfer order in progress for inventory locations.\n\nUse this tool to cancel a transfer order that is in either STARTED or PARTIALLY_RECEIVED status. This is useful in situations where items are no longer needed at the destination, the source location requires the inventory, or if the order was created by mistake. Cancelling the order will update inventory levels and trigger a transfer_order.updated webhook event.", + "parameters": [ + { + "name": "transfer_order_id", + "type": "string", + "required": true, + "description": "The ID of the transfer order to cancel. The order must be in STARTED or PARTIALLY_RECEIVED status.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_request_key", + "type": "string", + "required": true, + "description": "A unique string to identify this request. Must be unique for each UpdateTransferOrder request.", + "enum": null, + "inferrable": true + }, + { + "name": "transfer_order_version", + "type": "integer", + "required": false, + "description": "Provide the version number for optimistic concurrency when canceling the transfer order.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_READ", "INVENTORY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CancelTransferOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CancelTransferOrder", + "parameters": { + "transfer_order_id": { + "value": "TO-123456", + "type": "string", + "required": true + }, + "unique_request_key": { + "value": "req-78910", + "type": "string", + "required": true + }, + "transfer_order_version": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ChangeBillingAnchorDate", + "qualifiedName": "SquareupApi.ChangeBillingAnchorDate", + "fullyQualifiedName": "SquareupApi.ChangeBillingAnchorDate@4.0.0", + "description": "Change the billing anchor date for a subscription.\n\nUse this tool to modify the billing anchor date for a specific subscription. This can be useful for adjusting billing cycles and ensuring proper timing for subscription charges.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The ID of the subscription for which the billing anchor date will be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "billing_anchor_day", + "type": "integer", + "required": false, + "description": "The day (1-31) of the month to set as the billing anchor for the cycle.", + "enum": null, + "inferrable": true + }, + { + "name": "scheduled_billing_anchor_change_date", + "type": "string", + "required": false, + "description": "The `YYYY-MM-DD`-formatted date when the `BILLING_ANCHOR_CHANGE` action occurs. If unspecified or within current billing cycle, change is immediate.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["SUBSCRIPTIONS_READ", "ITEMS_READ", "SUBSCRIPTIONS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ChangeBillingAnchorDate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ChangeBillingAnchorDate", + "parameters": { + "subscription_id": { + "value": "subs_123456789", + "type": "string", + "required": true + }, + "billing_anchor_day": { + "value": 15, + "type": "integer", + "required": false + }, + "scheduled_billing_anchor_change_date": { + "value": "2023-11-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CloneOrderDraft", + "qualifiedName": "SquareupApi.CloneOrderDraft", + "fullyQualifiedName": "SquareupApi.CloneOrderDraft@4.0.0", + "description": "Clone an existing order as a draft.\n\nThis tool creates a new order in the DRAFT state by duplicating an existing order. It copies core fields such as line items, taxes, and discounts from the original order.", + "parameters": [ + { + "name": "order_id_to_clone", + "type": "string", + "required": true, + "description": "The ID of the order you want to clone.", + "enum": null, + "inferrable": true + }, + { + "name": "clone_request_idempotency_key", + "type": "string", + "required": false, + "description": "A unique string to identify the clone request. Allows safe retries without duplicating cloned orders.", + "enum": null, + "inferrable": true + }, + { + "name": "order_version", + "type": "integer", + "required": false, + "description": "An optional integer specifying the order version for concurrency protection. If omitted, the latest version is used.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CloneOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CloneOrderDraft", + "parameters": { + "order_id_to_clone": { + "value": "12345", + "type": "string", + "required": true + }, + "clone_request_idempotency_key": { + "value": "unique-key-67890", + "type": "string", + "required": false + }, + "order_version": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CompletePayment", + "qualifiedName": "SquareupApi.CompletePayment", + "fullyQualifiedName": "SquareupApi.CompletePayment@4.0.0", + "description": "Complete an approved payment using Squareup.\n\nUse this tool to complete or capture a payment with an 'APPROVED' status, finalizing the transaction.", + "parameters": [ + { + "name": "payment_identifier", + "type": "string", + "required": true, + "description": "The unique ID identifying the payment to be completed. This is required for completing a payment with an 'APPROVED' status.", + "enum": null, + "inferrable": true + }, + { + "name": "current_payment_version_token", + "type": "string", + "required": false, + "description": "The token identifying the current Payment version for optimistic concurrency. It ensures the Payment version matches the caller's expectations to prevent mismatches.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CompletePayment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CompletePayment", + "parameters": { + "payment_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "current_payment_version_token": { + "value": "v1.0.0", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBooking", + "qualifiedName": "SquareupApi.CreateBooking", + "fullyQualifiedName": "SquareupApi.CreateBooking@4.0.0", + "description": "Create a new booking for a service.\n\nThis tool creates a booking using specified details like location, start time, team member, and service variation. Ideal for scheduling appointments with buyer or seller permissions, ensuring necessary subscriptions are met.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateBooking'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateBooking", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"location_id\":\"loc_123456\",\"start_at\":\"2023-10-10T10:00:00Z\",\"end_at\":\"2023-10-10T11:00:00Z\",\"team_member_id\":\"tm_654321\",\"service_variation_id\":\"sv_789012\",\"customer_id\":\"cust_345678\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBreakType", + "qualifiedName": "SquareupApi.CreateBreakType", + "fullyQualifiedName": "SquareupApi.CreateBreakType@4.0.0", + "description": "Create a new BreakType template for a location.\n\nThis tool creates a new BreakType, which is a template for establishing Break objects. Required inputs include location ID, break name, expected duration, and payment status. Note that each location can have a maximum of three BreakType instances.", + "parameters": [ + { + "name": "break_expected_duration", + "type": "string", + "required": true, + "description": "The expected length of the break in RFC-3339 duration format (e.g., PT15M for 15 minutes).", + "enum": null, + "inferrable": true + }, + { + "name": "break_name", + "type": "string", + "required": true, + "description": "A human-readable name for the break type, displayed to team members.", + "enum": null, + "inferrable": true + }, + { + "name": "is_break_paid", + "type": "boolean", + "required": true, + "description": "Indicates if the break counts towards compensated work time. Use true for a paid break, false for an unpaid break.", + "enum": null, + "inferrable": true + }, + { + "name": "location_id", + "type": "string", + "required": true, + "description": "The ID of the business location where this break type will apply. It is required to associate the break type with a specific location.", + "enum": null, + "inferrable": true + }, + { + "name": "break_type_uuid", + "type": "string", + "required": false, + "description": "The UUID for the BreakType object. It uniquely identifies the break type.", + "enum": null, + "inferrable": true + }, + { + "name": "concurrency_version", + "type": "integer", + "required": false, + "description": "Integer for resolving concurrency issues; fails if it doesn't match server version.", + "enum": null, + "inferrable": true + }, + { + "name": "created_at_timestamp", + "type": "string", + "required": false, + "description": "A read-only timestamp in RFC 3339 format, automatically populated and not required for input.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique string to ensure the operation is idempotent, avoiding duplicate actions.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_at_timestamp", + "type": "string", + "required": false, + "description": "A read-only timestamp in RFC 3339 format indicating when the BreakType was last updated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_SETTINGS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateBreakType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateBreakType", + "parameters": { + "break_expected_duration": { + "value": "PT30M", + "type": "string", + "required": true + }, + "break_name": { + "value": "Lunch Break", + "type": "string", + "required": true + }, + "is_break_paid": { + "value": true, + "type": "boolean", + "required": true + }, + "location_id": { + "value": "loc_12345", + "type": "string", + "required": true + }, + "break_type_uuid": { + "value": "uuid_67890", + "type": "string", + "required": false + }, + "concurrency_version": { + "value": 1, + "type": "integer", + "required": false + }, + "created_at_timestamp": { + "value": null, + "type": "string", + "required": false + }, + "idempotency_key": { + "value": "unique-key-123", + "type": "string", + "required": false + }, + "updated_at_timestamp": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCustomer", + "qualifiedName": "SquareupApi.CreateCustomer", + "fullyQualifiedName": "SquareupApi.CreateCustomer@4.0.0", + "description": "Creates a new customer for a business in Square.\n\nThis tool is used to create a new customer profile for a business in Square. You must provide at least one of the following details: given name, family name, company name, email address, or phone number.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCustomer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateCustomer", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"given_name\": \"John\", \"family_name\": \"Doe\", \"email_address\": \"john.doe@example.com\", \"phone_number\": \"123-456-7890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCustomerGroup", + "qualifiedName": "SquareupApi.CreateCustomerGroup", + "fullyQualifiedName": "SquareupApi.CreateCustomerGroup@4.0.0", + "description": "Creates a new customer group for a business.\n\nUse this tool to create a new customer group by specifying the group's name. It should be called when a business needs to organize customers into a new group for targeted marketing or management purposes.", + "parameters": [ + { + "name": "customer_group_name", + "type": "string", + "required": true, + "description": "The name of the customer group to be created. It is required for organizing customers into the group.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_group_id", + "type": "string", + "required": false, + "description": "A unique Square-generated ID for the customer group. This is automatically generated by Square and is used to identify the customer group.", + "enum": null, + "inferrable": true + }, + { + "name": "group_created_timestamp", + "type": "string", + "required": false, + "description": "Specify the timestamp for when the customer group was created, in RFC 3339 format.", + "enum": null, + "inferrable": true + }, + { + "name": "group_last_updated_time", + "type": "string", + "required": false, + "description": "The timestamp when the customer group was last updated, in RFC 3339 format.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique string to ensure the request is processed only once. See [Idempotency](https://developer.squareup.com/docs/build-basics/common-api-patterns/idempotency).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateCustomerGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateCustomerGroup", + "parameters": { + "customer_group_name": { + "value": "VIP Customers", + "type": "string", + "required": true + }, + "customer_group_id": { + "value": "grp_12345", + "type": "string", + "required": false + }, + "group_created_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "group_last_updated_time": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "idempotency_key": { + "value": "unique-key-67890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCustomerSubscription", + "qualifiedName": "SquareupApi.CreateCustomerSubscription", + "fullyQualifiedName": "SquareupApi.CreateCustomerSubscription@4.0.0", + "description": "Enroll a customer in a subscription plan.\n\nThis tool enrolls a customer in a subscription, either charging a card on file or sending an invoice to the customer's email. The subscription can start immediately or on a specified start date and is linked to a specific location.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [ + "ITEMS_READ", + "INVOICES_WRITE", + "CUSTOMERS_READ", + "SUBSCRIPTIONS_WRITE", + "ORDERS_WRITE", + "PAYMENTS_WRITE" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateCustomerSubscription", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"customer_id\":\"12345\",\"subscription_plan_id\":\"premium\",\"start_date\":\"2023-10-01\",\"location_id\":\"67890\",\"card_on_file\":true,\"send_invoice\":false}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateDraftInvoice", + "qualifiedName": "SquareupApi.CreateDraftInvoice", + "fullyQualifiedName": "SquareupApi.CreateDraftInvoice@4.0.0", + "description": "Create a draft invoice for an order using Squareup.\n\nThis tool creates a draft invoice for an order via Squareup. The invoice remains in draft status until published, at which point it can be emailed to the customer or a card on file can be charged.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVOICES_WRITE", "ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateInvoice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateDraftInvoice", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"invoice\": {\"customer_id\": \"C12345\", \"line_items\": [{\"name\": \"Widget\", \"quantity\": 2, \"price\": 19.99}], \"metadata\": {\"order_id\": \"O67890\"}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGiftCard", + "qualifiedName": "SquareupApi.CreateGiftCard", + "fullyQualifiedName": "SquareupApi.CreateGiftCard@4.0.0", + "description": "Create and register digital or physical gift cards.\n\nThis tool creates a digital or registers a physical gift card in a pending state. To activate the gift card for purchases, further action is needed using CreateGiftCardActivity for activation or RefundPayment for refunds.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["GIFTCARDS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateGiftCard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateGiftCard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"amount\": 25.00, \"currency\": \"USD\", \"recipient\": {\"email\": \"recipient@example.com\"}, \"sender\": {\"name\": \"Sender Name\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateGiftCardActivity", + "qualifiedName": "SquareupApi.CreateGiftCardActivity", + "fullyQualifiedName": "SquareupApi.CreateGiftCardActivity@4.0.0", + "description": "Creates a gift card activity to manage gift card balance or state.\n\nUse this tool to create activities such as activation for gift cards, to manage their balance or state.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["GIFTCARDS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateGiftCardActivity'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateGiftCardActivity", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"gift_card_id\":\"123456789\",\"activity_type\":\"activation\",\"amount\":50.00,\"currency\":\"USD\",\"balance\":50.00}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateJobInSellerAccount", + "qualifiedName": "SquareupApi.CreateJobInSellerAccount", + "fullyQualifiedName": "SquareupApi.CreateJobInSellerAccount@4.0.0", + "description": "Create a job for a seller account.\n\nThis tool is used to create a job in a seller's account, specifying the job title and its tip eligibility. It should be called when you need to define a new job role for team members in a seller's business operations.", + "parameters": [ + { + "name": "unique_creation_request_id", + "type": "string", + "required": true, + "description": "A unique string to identify the `CreateJob` request, ensuring it is not processed multiple times.", + "enum": null, + "inferrable": true + }, + { + "name": "is_tip_eligible", + "type": "boolean", + "required": false, + "description": "Indicates whether team members can earn tips for the job. Accepts a boolean value.", + "enum": null, + "inferrable": true + }, + { + "name": "job_creation_timestamp", + "type": "string", + "required": false, + "description": "The timestamp for when the job was created, in RFC 3339 format.", + "enum": null, + "inferrable": true + }, + { + "name": "job_id", + "type": "string", + "required": false, + "description": "Unique Square-assigned job ID. This is read-only and used internally by Square.", + "enum": null, + "inferrable": true + }, + { + "name": "job_last_updated_timestamp", + "type": "string", + "required": false, + "description": "The timestamp indicating when the job was last updated, in RFC 3339 format.", + "enum": null, + "inferrable": true + }, + { + "name": "job_title", + "type": "string", + "required": false, + "description": "The title of the job to be created in the seller's account.", + "enum": null, + "inferrable": true + }, + { + "name": "job_version_readonly", + "type": "integer", + "required": false, + "description": "Read-only field for the current version of the job, used for optimistic concurrency in `UpdateJob` requests.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["EMPLOYEES_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateJob'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateJobInSellerAccount", + "parameters": { + "unique_creation_request_id": { + "value": "req-12345-67890", + "type": "string", + "required": true + }, + "is_tip_eligible": { + "value": true, + "type": "boolean", + "required": false + }, + "job_creation_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "job_id": { + "value": "job-98765", + "type": "string", + "required": false + }, + "job_last_updated_timestamp": { + "value": "2023-10-02T12:00:00Z", + "type": "string", + "required": false + }, + "job_title": { + "value": "Barista", + "type": "string", + "required": false + }, + "job_version_readonly": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateLoyaltyAccount", + "qualifiedName": "SquareupApi.CreateLoyaltyAccount", + "fullyQualifiedName": "SquareupApi.CreateLoyaltyAccount@4.0.0", + "description": "Create a loyalty account for a buyer.\n\nCreate a loyalty account by providing a program ID and buyer's phone number mapping.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateLoyaltyAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateLoyaltyAccount", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"program_id\":\"loyalty_program_123\",\"buyer_phone\":\"+1234567890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateLoyaltyPromotion", + "qualifiedName": "SquareupApi.CreateLoyaltyPromotion", + "fullyQualifiedName": "SquareupApi.CreateLoyaltyPromotion@4.0.0", + "description": "Create a new loyalty promotion for a program.\n\n This tool creates a loyalty promotion within a specified loyalty program, allowing buyers to earn additional points. It sets the promotion to either 'ACTIVE' or 'SCHEDULED' based on the available time setting. A program can have up to 10 active or scheduled promotions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "loyalty_program_id", + "type": "string", + "required": false, + "description": "The ID of the loyalty program to associate with the promotion. Use the RetrieveLoyaltyProgram endpoint with the 'main' keyword to obtain it. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateLoyaltyPromotion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateLoyaltyPromotion", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "loyalty_program_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"promotionName\":\"Double Points\",\"description\":\"Earn double points on all purchases this month!\",\"active\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateLoyaltyReward", + "qualifiedName": "SquareupApi.CreateLoyaltyReward", + "fullyQualifiedName": "SquareupApi.CreateLoyaltyReward@4.0.0", + "description": "Create a loyalty reward by locking points for a customer.\n\nThis tool creates a loyalty reward by using a specified reward tier ID to lock points. Optionally, it can add the reward and related discount to an existing order if an order ID is provided. After creation, the points are locked and unavailable for redemption.", + "parameters": [ + { + "name": "loyalty_account_id", + "type": "string", + "required": true, + "description": "The Square-assigned ID of the loyalty account to which the reward belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "reward_tier_id", + "type": "string", + "required": true, + "description": "The Square-assigned ID of the reward tier used to create the loyalty reward.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_request_key", + "type": "string", + "required": true, + "description": "A unique string that identifies this CreateLoyaltyReward request. Must be unique for each request to prevent duplication.", + "enum": null, + "inferrable": true + }, + { + "name": "loyalty_reward_id", + "type": "string", + "required": false, + "description": "The Square-assigned ID of the loyalty reward to be created or referenced.", + "enum": null, + "inferrable": true + }, + { + "name": "loyalty_reward_status", + "type": "string", + "required": false, + "description": "The status of the loyalty reward. Possible values: 'ISSUED', 'REDEEMED', 'DELETED'.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_loyalty_points", + "type": "integer", + "required": false, + "description": "The number of loyalty points to use for creating the reward.", + "enum": null, + "inferrable": true + }, + { + "name": "order_id", + "type": "string", + "required": false, + "description": "The Square-assigned ID of the order to which the reward is attached. Optional if no order is involved.", + "enum": null, + "inferrable": true + }, + { + "name": "reward_creation_timestamp", + "type": "string", + "required": false, + "description": "The timestamp when the reward was created, in RFC 3339 format. This indicates the date and time of reward creation.", + "enum": null, + "inferrable": true + }, + { + "name": "reward_last_updated_timestamp", + "type": "string", + "required": false, + "description": "The timestamp when the reward was last updated, in RFC 3339 format.", + "enum": null, + "inferrable": true + }, + { + "name": "reward_redeemed_timestamp", + "type": "string", + "required": false, + "description": "The timestamp when the reward was redeemed, in RFC 3339 format. This value indicates the moment the reward was used.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateLoyaltyReward'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateLoyaltyReward", + "parameters": { + "loyalty_account_id": { + "value": "L1234567890", + "type": "string", + "required": true + }, + "reward_tier_id": { + "value": "RT0987654321", + "type": "string", + "required": true + }, + "unique_request_key": { + "value": "req_unique_12345", + "type": "string", + "required": true + }, + "loyalty_reward_id": { + "value": "RW123456", + "type": "string", + "required": false + }, + "loyalty_reward_status": { + "value": "ISSUED", + "type": "string", + "required": false + }, + "number_of_loyalty_points": { + "value": 250, + "type": "integer", + "required": false + }, + "order_id": { + "value": "O9876543210", + "type": "string", + "required": false + }, + "reward_creation_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "reward_last_updated_timestamp": { + "value": "2023-10-01T12:15:00Z", + "type": "string", + "required": false + }, + "reward_redeemed_timestamp": { + "value": "2023-10-05T10:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateNewLocation", + "qualifiedName": "SquareupApi.CreateNewLocation", + "fullyQualifiedName": "SquareupApi.CreateNewLocation@4.0.0", + "description": "Create a new location for sales and configuration.\n\nThis tool creates a new location using the Square Locations API. It's useful for setting up separate configurations for receipt layouts, item prices, and sales reports. Ideal for developers integrating Square with their applications to manage distinct sales activities.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateLocation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateNewLocation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\":\"New Location\",\"address\":{\"address_line_1\":\"123 Main St\",\"locality\":\"Anytown\",\"administrative_district_level_1\":\"CA\",\"postal_code\":\"90210\",\"country\":\"US\"},\"type\":\"retail\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateOrderForPurchase", + "qualifiedName": "SquareupApi.CreateOrderForPurchase", + "fullyQualifiedName": "SquareupApi.CreateOrderForPurchase@4.0.0", + "description": "Creates a new order for purchase with product details.\n\nUse this tool to create a new order, specifying products and settings for purchase. This tool is ideal for initiating a purchase order that includes specific product information.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateOrderForPurchase", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"order_id\":\"12345\",\"customer_id\":\"67890\",\"items\":[{\"product_id\":\"abc\",\"quantity\":2,\"price\":19.99},{\"product_id\":\"def\",\"quantity\":1,\"price\":9.99}],\"shipping_address\":{\"street\":\"123 Main St\",\"city\":\"Anytown\",\"state\":\"CA\",\"postal_code\":\"90210\"},\"payment_method\":\"credit_card\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePayment", + "qualifiedName": "SquareupApi.CreatePayment", + "fullyQualifiedName": "SquareupApi.CreatePayment@4.0.0", + "description": "Create a payment using credit/debit card or other sources.\n\nThis tool is used to create a payment through a specified source, such as a credit/debit card or to record an external payment. It returns the details of the payment created.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreatePayment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreatePayment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"amount\": 1000, \"currency\": \"USD\", \"source_id\": \"cnon:card-nonce-ok\", \"note\": \"Payment for services rendered\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePaymentLink", + "qualifiedName": "SquareupApi.CreatePaymentLink", + "fullyQualifiedName": "SquareupApi.CreatePaymentLink@4.0.0", + "description": "Create a Square-hosted checkout page for payments.\n\nUse this tool to generate a Square-hosted payment link which can be shared with buyers to facilitate payments for goods and services. Ideal for businesses needing a simple online payment solution.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE", "ORDERS_READ", "ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreatePaymentLink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreatePaymentLink", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"amount\": 1000, \"currency\": \"USD\", \"item_description\": \"Online payment for services\", \"payment_type\": \"one_time\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateScheduledShift", + "qualifiedName": "SquareupApi.CreateScheduledShift", + "fullyQualifiedName": "SquareupApi.CreateScheduledShift@4.0.0", + "description": "Create a scheduled shift with draft shift details.\n\nUse this tool to create a scheduled shift by providing necessary draft shift details such as location ID, job ID, and start and end times. It returns the details of the created shift.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateScheduledShift'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateScheduledShift", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"location_id\":\"loc_12345\",\"job_id\":\"job_67890\",\"start_time\":\"2023-10-05T09:00:00Z\",\"end_time\":\"2023-10-05T17:00:00Z\",\"employee_id\":\"emp_54321\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateSquareTerminalDeviceCode", + "qualifiedName": "SquareupApi.CreateSquareTerminalDeviceCode", + "fullyQualifiedName": "SquareupApi.CreateSquareTerminalDeviceCode@4.0.0", + "description": "Generate a DeviceCode for Square Terminal login.\n\nCreates a code for logging into a Square Terminal device in connected terminal mode. Useful for setting up devices for point-of-sale operations.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["DEVICE_CREDENTIAL_MANAGEMENT"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateDeviceCode'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateSquareTerminalDeviceCode", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"location_id\":\"L1234\",\"device_type\":\"Square Terminal\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTeamMember", + "qualifiedName": "SquareupApi.CreateTeamMember", + "fullyQualifiedName": "SquareupApi.CreateTeamMember@4.0.0", + "description": "Create a new team member with given and family names.\n\nThis tool is used to create a single TeamMember object by providing the required given name and family name. It returns the created TeamMember object upon success.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["EMPLOYEES_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTeamMember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateTeamMember", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"given_name\":\"John\",\"family_name\":\"Doe\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTeamMemberTimecard", + "qualifiedName": "SquareupApi.CreateTeamMemberTimecard", + "fullyQualifiedName": "SquareupApi.CreateTeamMemberTimecard@4.0.0", + "description": "Create a timecard for a team member's workday.\n\nThis tool creates a new timecard representing a full workday for a specified team member. Use it when you need to log work hours for employees. Ensure no existing open timecard for the member, that the start time isn't future-dated, and that it doesn't overlap with other timecards.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTimecard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateTeamMemberTimecard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"team_member_id\":\"12345\",\"start\":\"2023-10-01T09:00:00Z\",\"end\":\"2023-10-01T17:00:00Z\",\"breaks\":[{\"start\":\"2023-10-01T12:00:00Z\",\"end\":\"2023-10-01T12:30:00Z\"}],\"notes\":\"Worked on project A\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTerminalAction", + "qualifiedName": "SquareupApi.CreateTerminalAction", + "fullyQualifiedName": "SquareupApi.CreateTerminalAction@4.0.0", + "description": "Create and send a terminal action request to a device.\n\nThis tool creates a terminal action request and sends it to the specified device using the SquareUp API. It should be called when you need to initiate an action on a terminal device.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTerminalAction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateTerminalAction", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"action_type\": \"charge\", \"amount\": 1500, \"currency\": \"USD\", \"note\": \"Payment for services\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTerminalCheckout", + "qualifiedName": "SquareupApi.CreateTerminalCheckout", + "fullyQualifiedName": "SquareupApi.CreateTerminalCheckout@4.0.0", + "description": "Create a Terminal checkout request for payment.\n\nInitiates a Terminal checkout request to process a payment on a specified device using Square's Terminal API.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTerminalCheckout'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateTerminalCheckout", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"amount\": 1000, \"currency\": \"USD\", \"description\": \"Test payment\", \"device_id\": \"abc123\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTerminalRefund", + "qualifiedName": "SquareupApi.CreateTerminalRefund", + "fullyQualifiedName": "SquareupApi.CreateTerminalRefund@4.0.0", + "description": "Creates a refund request for Interac payments on Square Terminal.\n\nThis tool creates a request to refund an Interac payment completed on a Square Terminal. It is specifically for Interac debit card payments in Canada. For other types of refunds, use the Refunds API.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTerminalRefund'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateTerminalRefund", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"amount\": 1000, \"payment_id\": \"pq-12345678\", \"reason\": \"Customer returned item\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTransferOrder", + "qualifiedName": "SquareupApi.CreateTransferOrder", + "fullyQualifiedName": "SquareupApi.CreateTransferOrder@4.0.0", + "description": "Create a draft transfer order between locations.\n\nThis tool creates a new transfer order in DRAFT status to move CatalogItemVariations between different locations within a Square account. It should be called when there's a need to initiate the transfer of items, allowing you to add or remove items, modify quantities, or update shipping information before finalizing.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_READ", "INVENTORY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateTransferOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateTransferOrder", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"transfer_order\": {\"from_location_id\": \"location_123\", \"to_location_id\": \"location_456\", \"line_items\": [{\"catalog_object_id\": \"item_789\", \"quantity\": 10}]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateVendor", + "qualifiedName": "SquareupApi.CreateVendor", + "fullyQualifiedName": "SquareupApi.CreateVendor@4.0.0", + "description": "Create a vendor for a supplier to a seller.\n\nThis tool creates a new vendor object to represent a supplier in the system. Use it when you need to add or register a vendor for business operations.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["VENDOR_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateVendor'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateVendor", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"vendor\": {\"name\": \"John's Supply Co.\", \"email\": \"contact@johnssupply.com\", \"phone\": \"123-456-7890\", \"address\": {\"address_line_1\": \"123 Supply St.\", \"city\": \"Supplier City\", \"state\": \"SC\", \"postal_code\": \"12345\", \"country\": \"USA\"}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateWebhookSubscription", + "qualifiedName": "SquareupApi.CreateWebhookSubscription", + "fullyQualifiedName": "SquareupApi.CreateWebhookSubscription@4.0.0", + "description": "Creates a webhook subscription.\n\nUse this tool to establish a webhook subscription for receiving event notifications from the service.", + "parameters": [ + { + "name": "api_version", + "type": "string", + "required": false, + "description": "Specifies the API version for the webhook subscription. Optional; defaults to the application's current API version if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_subscription", + "type": "boolean", + "required": false, + "description": "Indicates whether the subscription is enabled (`true`) or not (`false`).", + "enum": null, + "inferrable": true + }, + { + "name": "event_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of event types for the subscription, each as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_created_at", + "type": "string", + "required": false, + "description": "The creation timestamp of the subscription in RFC 3339 format, e.g., \"2016-09-04T23:59:33.123Z\".", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_last_updated_timestamp", + "type": "string", + "required": false, + "description": "The timestamp of when the subscription was last updated, in RFC 3339 format (e.g., '2016-09-04T23:59:33.123Z').", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_name", + "type": "string", + "required": false, + "description": "The name for the webhook subscription.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_signature_key", + "type": "string", + "required": false, + "description": "The Square-generated signature key used to validate the origin of the webhook event.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_unique_id", + "type": "string", + "required": false, + "description": "A Square-generated unique ID for the webhook subscription.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_request_identifier", + "type": "string", + "required": false, + "description": "A unique string to ensure the idempotence of the CreateWebhookSubscription request, preventing duplicate entries.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_notification_url", + "type": "string", + "required": false, + "description": "The URL where webhook notifications will be sent. Ensure it is accessible and accurately formatted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateWebhookSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.CreateWebhookSubscription", + "parameters": { + "api_version": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "enable_subscription": { + "value": true, + "type": "boolean", + "required": false + }, + "event_types": { + "value": ["PAYMENT_UPDATED", "ORDER_CREATED"], + "type": "array", + "required": false + }, + "subscription_created_at": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "subscription_last_updated_timestamp": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "subscription_name": { + "value": "My Webhook Subscription", + "type": "string", + "required": false + }, + "subscription_signature_key": { + "value": "sig_test_key_123456", + "type": "string", + "required": false + }, + "subscription_unique_id": { + "value": "sub_abc123456", + "type": "string", + "required": false + }, + "unique_request_identifier": { + "value": "req_uniq_987654321", + "type": "string", + "required": false + }, + "webhook_notification_url": { + "value": "https://myapp.com/webhook", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBookingCustomAttribute", + "qualifiedName": "SquareupApi.DeleteBookingCustomAttribute", + "fullyQualifiedName": "SquareupApi.DeleteBookingCustomAttribute@4.0.0", + "description": "Deletes a custom attribute from a booking.\n\nUse this tool to delete a specific custom attribute from a booking. Requires appropriate OAuth permissions depending on user level. Seller-level usage requires a subscription to Appointments Plus or Appointments Premium.", + "parameters": [ + { + "name": "booking_id", + "type": "string", + "required": true, + "description": "The unique identifier for the booking from which the custom attribute will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute to delete. Must match the key in the Square seller account. Use a qualified key if not the definition owner.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteBookingCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteBookingCustomAttribute", + "parameters": { + "booking_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "custom_attribute_key": { + "value": "preferred_service", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBookingCustomAttributeDefinition", + "qualifiedName": "SquareupApi.DeleteBookingCustomAttributeDefinition", + "fullyQualifiedName": "SquareupApi.DeleteBookingCustomAttributeDefinition@4.0.0", + "description": "Deletes a booking's custom attribute definition.\n\nUse this tool to delete a custom attribute definition for bookings. Ensure appropriate OAuth scopes are set: 'APPOINTMENTS_WRITE' for buyer-level permissions, or 'APPOINTMENTS_ALL_WRITE' and 'APPOINTMENTS_WRITE' for seller-level permissions. Seller-level permissions require a subscription to Appointments Plus or Premium.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute definition to delete for bookings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteBookingCustomAttributeDefinition'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteBookingCustomAttributeDefinition", + "parameters": { + "custom_attribute_key": { + "value": "appointment_type", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteBreakType", + "qualifiedName": "SquareupApi.DeleteBreakType", + "fullyQualifiedName": "SquareupApi.DeleteBreakType@4.0.0", + "description": "Deletes an existing BreakType.\n\nUse this tool to delete an existing BreakType, even if it is referenced in a Shift.", + "parameters": [ + { + "name": "break_type_uuid", + "type": "string", + "required": true, + "description": "The UUID of the BreakType to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_SETTINGS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteBreakType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteBreakType", + "parameters": { + "break_type_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCatalogItems", + "qualifiedName": "SquareupApi.DeleteCatalogItems", + "fullyQualifiedName": "SquareupApi.DeleteCatalogItems@4.0.0", + "description": "Deletes catalog items and their children by IDs.\n\nUse this tool to delete a set of catalog items by providing their IDs. Deletion is cascading, removing both the items and their associated variations. The tool succeeds even if only part of the requested deletions can be processed, returning only the successfully deleted item IDs.", + "parameters": [ + { + "name": "catalog_object_ids_to_delete", + "type": "array", + "innerType": "string", + "required": true, + "description": "The IDs of the catalog objects to be deleted. Deletion is cascading, removing the item and dependent objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ITEMS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BatchDeleteCatalogObjects'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteCatalogItems", + "parameters": { + "catalog_object_ids_to_delete": { + "value": ["abc123", "def456", "ghi789"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCatalogObject", + "qualifiedName": "SquareupApi.DeleteCatalogObject", + "fullyQualifiedName": "SquareupApi.DeleteCatalogObject@4.0.0", + "description": "Delete a catalog object and its children by ID.\n\nThis tool deletes a catalog object in the Squareup catalog using the provided ID. The deletion is cascading, removing all child objects as well. Only one delete request is processed at a time per seller account.", + "parameters": [ + { + "name": "catalog_object_id", + "type": "string", + "required": true, + "description": "The unique ID of the catalog object to delete. Deletion is cascading, removing all dependent objects.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ITEMS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCatalogObject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteCatalogObject", + "parameters": { + "catalog_object_id": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCustomerAttributeDefinition", + "qualifiedName": "SquareupApi.DeleteCustomerAttributeDefinition", + "fullyQualifiedName": "SquareupApi.DeleteCustomerAttributeDefinition@4.0.0", + "description": "Delete a customer custom attribute definition from Square.\n\nDeletes a custom attribute definition linked to customer profiles from a Square seller account, removing it from all associated customer profiles. Only the owner of the definition can perform this action.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute definition to delete from a Square seller account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCustomerCustomAttributeDefinition'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteCustomerAttributeDefinition", + "parameters": { + "custom_attribute_key": { + "value": "loyalty_points", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCustomerCustomAttribute", + "qualifiedName": "SquareupApi.DeleteCustomerCustomAttribute", + "fullyQualifiedName": "SquareupApi.DeleteCustomerCustomAttribute@4.0.0", + "description": "Deletes a custom attribute from a customer profile.\n\nUse this tool to delete a custom attribute associated with a customer profile. Applicable when removing attributes with visibility set to READ_WRITE.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute to delete. Must match the key of a custom attribute definition in the Square seller account. Use the qualified key if not the definition owner.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_profile_id", + "type": "string", + "required": true, + "description": "The ID of the target customer profile for which the custom attribute will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCustomerCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteCustomerCustomAttribute", + "parameters": { + "custom_attribute_key": { + "value": "loyalty_tier", + "type": "string", + "required": true + }, + "customer_profile_id": { + "value": "CUST123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCustomerGroup", + "qualifiedName": "SquareupApi.DeleteCustomerGroup", + "fullyQualifiedName": "SquareupApi.DeleteCustomerGroup@4.0.0", + "description": "Deletes a customer group by its ID.\n\nUse this tool to delete a customer group in your database by specifying the group ID. It confirms the successful deletion of the group.", + "parameters": [ + { + "name": "customer_group_id", + "type": "string", + "required": true, + "description": "The ID of the customer group you want to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCustomerGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteCustomerGroup", + "parameters": { + "customer_group_id": { + "value": "12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCustomerProfile", + "qualifiedName": "SquareupApi.DeleteCustomerProfile", + "fullyQualifiedName": "SquareupApi.DeleteCustomerProfile@4.0.0", + "description": "Delete a customer profile from a business system.\n\nUse this tool to delete a customer profile from a business's records. It requires the customer ID, especially if the profile was created by merging existing profiles.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The ID of the customer to delete from the business system. Required for identifying the customer profile to remove.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_profile_version", + "type": "integer", + "required": false, + "description": "The current version of the customer profile for optimistic concurrency control.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCustomer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteCustomerProfile", + "parameters": { + "customer_id": { + "value": "CUST123456", + "type": "string", + "required": true + }, + "customer_profile_version": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteDraftTransferOrder", + "qualifiedName": "SquareupApi.DeleteDraftTransferOrder", + "fullyQualifiedName": "SquareupApi.DeleteDraftTransferOrder@4.0.0", + "description": "Delete a draft transfer order and trigger webhook event.\n\nUse this tool to delete a transfer order in DRAFT status. Only applicable to orders that have not yet been started. A webhook event 'transfer_order.deleted' is triggered upon deletion.", + "parameters": [ + { + "name": "transfer_order_id", + "type": "string", + "required": true, + "description": "The ID of the transfer order in DRAFT status to delete. Only draft orders are eligible.", + "enum": null, + "inferrable": true + }, + { + "name": "optimistic_concurrency_version", + "type": "integer", + "required": false, + "description": "Version number used for optimistic concurrency control to ensure data consistency when deleting a draft transfer order.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTransferOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteDraftTransferOrder", + "parameters": { + "transfer_order_id": { + "value": "d123456789", + "type": "string", + "required": true + }, + "optimistic_concurrency_version": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteInvoice", + "qualifiedName": "SquareupApi.DeleteInvoice", + "fullyQualifiedName": "SquareupApi.DeleteInvoice@4.0.0", + "description": "Delete a draft invoice and change order status to CANCELED.\n\nThis tool deletes a specified draft invoice. Once deleted, the associated order status changes to CANCELED. It cannot delete a published invoice, including those scheduled for processing.", + "parameters": [ + { + "name": "invoice_id", + "type": "string", + "required": true, + "description": "The ID of the draft invoice to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "invoice_version", + "type": "integer", + "required": false, + "description": "The version number of the invoice to delete. Use GetInvoice or ListInvoices if unknown.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVOICES_WRITE", "ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteInvoice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteInvoice", + "parameters": { + "invoice_id": { + "value": "inv_1234567890", + "type": "string", + "required": true + }, + "invoice_version": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteLocationCustomAttribute", + "qualifiedName": "SquareupApi.DeleteLocationCustomAttribute", + "fullyQualifiedName": "SquareupApi.DeleteLocationCustomAttribute@4.0.0", + "description": "Delete a custom attribute definition from a location.\n\nThis tool deletes a location-related custom attribute definition from a Square seller account. It also removes the corresponding custom attribute from all locations. Only the definition owner can perform this action.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The identifier for the custom attribute definition to remove.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteLocationCustomAttributeDefinition'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteLocationCustomAttribute", + "parameters": { + "custom_attribute_key": { + "value": "location_theme_color", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteLoyaltyReward", + "qualifiedName": "SquareupApi.DeleteLoyaltyReward", + "fullyQualifiedName": "SquareupApi.DeleteLoyaltyReward@4.0.0", + "description": "Deletes a loyalty reward and restores points to the account.\n\nThis tool deletes a specified loyalty reward, restoring the corresponding points to the user's account. It also updates any associated order to remove the reward and related discounts, if an order ID was specified upon reward creation. Cannot be used on rewards that have been redeemed.", + "parameters": [ + { + "name": "loyalty_reward_id", + "type": "string", + "required": true, + "description": "The ID of the loyalty reward to delete, returning points to the account. Cannot delete redeemed rewards.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteLoyaltyReward'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteLoyaltyReward", + "parameters": { + "loyalty_reward_id": { + "value": "abc12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteMerchantCustomAttribute", + "qualifiedName": "SquareupApi.DeleteMerchantCustomAttribute", + "fullyQualifiedName": "SquareupApi.DeleteMerchantCustomAttribute@4.0.0", + "description": "Delete a custom attribute definition for a Square merchant.\n\nDeletes a merchant-specific custom attribute definition from a Square seller account, including the associated custom attribute. Only the definition owner can perform this deletion.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute definition to be deleted from the Square account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteMerchantCustomAttributeDefinition'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteMerchantCustomAttribute", + "parameters": { + "custom_attribute_key": { + "value": "loyalty_member_status", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteOrderCustomAttribute", + "qualifiedName": "SquareupApi.DeleteOrderCustomAttribute", + "fullyQualifiedName": "SquareupApi.DeleteOrderCustomAttribute@4.0.0", + "description": "Delete a custom attribute from an order profile.\n\nUse this tool to delete a custom attribute associated with an order. Ensure that the visibility setting is 'VISIBILITY_READ_WRITE_VALUES' for attributes owned by other applications.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute to delete. Must match an existing custom attribute definition key.", + "enum": null, + "inferrable": true + }, + { + "name": "order_id", + "type": "string", + "required": true, + "description": "The unique identifier of the order from which the custom attribute will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteOrderCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteOrderCustomAttribute", + "parameters": { + "custom_attribute_key": { + "value": "color", + "type": "string", + "required": true + }, + "order_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteOrderCustomAttributeDefinition", + "qualifiedName": "SquareupApi.DeleteOrderCustomAttributeDefinition", + "fullyQualifiedName": "SquareupApi.DeleteOrderCustomAttributeDefinition@4.0.0", + "description": "Delete a custom attribute definition from an order.\n\nThis tool deletes an order-related custom attribute definition from a Square seller account. Only the definition owner has the permission to perform this action.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute definition to delete from an order.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteOrderCustomAttributeDefinition'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteOrderCustomAttributeDefinition", + "parameters": { + "custom_attribute_key": { + "value": "order_special_instruction", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeletePaymentLink", + "qualifiedName": "SquareupApi.DeletePaymentLink", + "fullyQualifiedName": "SquareupApi.DeletePaymentLink@4.0.0", + "description": "Deletes a specified payment link.\n\nUse this tool to delete a payment link by its ID when it is no longer needed or was created in error.", + "parameters": [ + { + "name": "payment_link_id", + "type": "string", + "required": true, + "description": "The unique identifier of the payment link to delete. This ID specifies which payment link should be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_READ", "ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeletePaymentLink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeletePaymentLink", + "parameters": { + "payment_link_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteSquareSnippet", + "qualifiedName": "SquareupApi.DeleteSquareSnippet", + "fullyQualifiedName": "SquareupApi.DeleteSquareSnippet@4.0.0", + "description": "Delete a snippet from a Square Online site.\n\nUse this tool to remove a snippet from a specified Square Online site. Useful when you need to update or clean up content on a site. Make sure to retrieve the site IDs using the ListSites API beforehand.", + "parameters": [ + { + "name": "site_id", + "type": "string", + "required": true, + "description": "The ID of the Square Online site containing the snippet to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ONLINE_STORE_SNIPPETS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteSnippet'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteSquareSnippet", + "parameters": { + "site_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteSubscriptionAction", + "qualifiedName": "SquareupApi.DeleteSubscriptionAction", + "fullyQualifiedName": "SquareupApi.DeleteSubscriptionAction@4.0.0", + "description": "Delete a scheduled action for a subscription.\n\nUse this tool to delete a specific scheduled action related to a subscription when changes or cancellations are needed.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The ID of the subscription for which the action is to be deleted. Provide the correct subscription ID to ensure accurate targeting.", + "enum": null, + "inferrable": true + }, + { + "name": "targeted_action_id", + "type": "string", + "required": true, + "description": "The ID of the specific action to be deleted from the subscription.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["SUBSCRIPTIONS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteSubscriptionAction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteSubscriptionAction", + "parameters": { + "subscription_id": { + "value": "subs_123456789", + "type": "string", + "required": true + }, + "targeted_action_id": { + "value": "act_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTimecard", + "qualifiedName": "SquareupApi.DeleteTimecard", + "fullyQualifiedName": "SquareupApi.DeleteTimecard@4.0.0", + "description": "Delete a specific timecard entry.\n\nThis tool deletes a specified timecard entry using its unique identifier. Use it when a timecard needs to be permanently removed from the system.", + "parameters": [ + { + "name": "timecard_uuid", + "type": "string", + "required": true, + "description": "The UUID for the Timecard being deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTimecard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteTimecard", + "parameters": { + "timecard_uuid": { + "value": "b23d29c4-231d-4bda-a13b-8c9ac5f1f5c2", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteWebhookSubscription", + "qualifiedName": "SquareupApi.DeleteWebhookSubscription", + "fullyQualifiedName": "SquareupApi.DeleteWebhookSubscription@4.0.0", + "description": "Deletes a specified webhook subscription.\n\nUse this tool to delete an existing webhook subscription by providing the subscription ID. It should be called when there is a need to remove a webhook subscription.", + "parameters": [ + { + "name": "webhook_subscription_id", + "type": "string", + "required": true, + "description": "The ID of the webhook subscription to delete. This ID is required to specify which subscription needs to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteWebhookSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DeleteWebhookSubscription", + "parameters": { + "webhook_subscription_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DisableCreditCard", + "qualifiedName": "SquareupApi.DisableCreditCard", + "fullyQualifiedName": "SquareupApi.DisableCreditCard@4.0.0", + "description": "Disable a credit card to prevent further charges.\n\nUse this tool to disable a credit card, which will prevent any further updates or charges on the card. Attempting to disable an already disabled card is allowed but will have no effect.", + "parameters": [ + { + "name": "credit_card_id", + "type": "string", + "required": true, + "description": "Unique ID of the credit card to be disabled. This is required to specify the card to be deactivated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DisableCard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DisableCreditCard", + "parameters": { + "credit_card_id": { + "value": "cc_1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DisableSearchableEvents", + "qualifiedName": "SquareupApi.DisableSearchableEvents", + "fullyQualifiedName": "SquareupApi.DisableSearchableEvents@4.0.0", + "description": "Disable events to prevent them from being searchable.\n\nUse this tool to disable events, ensuring they cannot be searched. Useful for controlling event visibility during specific time periods.", + "parameters": [], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DisableEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DisableSearchableEvents", + "parameters": {}, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DismissTerminalAction", + "qualifiedName": "SquareupApi.DismissTerminalAction", + "fullyQualifiedName": "SquareupApi.DismissTerminalAction@4.0.0", + "description": "Dismiss a Terminal action request if permitted.\n\nThis tool dismisses a Terminal action request when the status and type allow it. Use it for canceling or dismissing actions on a Square Terminal. Refer to the Square documentation for more about linking and dismissing actions.", + "parameters": [ + { + "name": "terminal_action_id", + "type": "string", + "required": true, + "description": "Unique ID for the TerminalAction to be dismissed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DismissTerminalAction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DismissTerminalAction", + "parameters": { + "terminal_action_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DismissTerminalCheckout", + "qualifiedName": "SquareupApi.DismissTerminalCheckout", + "fullyQualifiedName": "SquareupApi.DismissTerminalCheckout@4.0.0", + "description": "Dismiss a Terminal checkout request.\n\nUse this tool to dismiss a Terminal checkout request when the status and type allow dismissal.", + "parameters": [ + { + "name": "terminal_checkout_id", + "type": "string", + "required": true, + "description": "Unique ID for the `TerminalCheckout` to be dismissed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DismissTerminalCheckout'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DismissTerminalCheckout", + "parameters": { + "terminal_checkout_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DismissTerminalRefund", + "qualifiedName": "SquareupApi.DismissTerminalRefund", + "fullyQualifiedName": "SquareupApi.DismissTerminalRefund@4.0.0", + "description": "Dismiss a Terminal refund request.\n\nUse this tool to dismiss a Terminal refund request if it's allowable based on the status and type of the request.", + "parameters": [ + { + "name": "terminal_refund_unique_id", + "type": "string", + "required": true, + "description": "Unique ID for the TerminalRefund associated with the refund to be dismissed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DismissTerminalRefund'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.DismissTerminalRefund", + "parameters": { + "terminal_refund_unique_id": { + "value": "TR1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "EnableEventsSearch", + "qualifiedName": "SquareupApi.EnableEventsSearch", + "fullyQualifiedName": "SquareupApi.EnableEventsSearch@4.0.0", + "description": "Enable events to make them searchable.\n\nThis tool should be called to enable events, allowing them to be searchable from this point onward. Only events that occur while in the enabled state will be searchable.", + "parameters": [], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'EnableEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.EnableEventsSearch", + "parameters": {}, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchInventoryChanges", + "qualifiedName": "SquareupApi.FetchInventoryChanges", + "fullyQualifiedName": "SquareupApi.FetchInventoryChanges@4.0.0", + "description": "Retrieve historical inventory changes and adjustments.\n\nUse this tool to access historical physical counts and inventory adjustments based on specific filter criteria. The results are paginated and sorted by the `occurred_at` timestamp in ascending order, providing a comprehensive log of inventory changes.", + "parameters": [ + { + "name": "filter_by_catalog_object_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter results by providing an array of CatalogObject IDs. Only applicable when set.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_location_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Return results filtered by specific `Location` IDs. This is optional and defaults to null.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_updated_before_timestamp", + "type": "string", + "required": false, + "description": "Return results with `created_at` or `calculated_at` before this RFC 3339 timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_inventory_change_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of `InventoryChangeType` values to filter results, excluding `TRANSFER`. Default is `[PHYSICAL_COUNT, ADJUSTMENT]`.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_updated_after_timestamp", + "type": "string", + "required": false, + "description": "Return results with `calculated_at` after specified time in RFC 3339 format. Default is the UNIX epoch (`1970-01-01T00:00:00Z`).", + "enum": null, + "inferrable": true + }, + { + "name": "inventory_states_filter", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter to return `ADJUSTMENT` query results by `InventoryState`. Only applies if set. Accepts a list of states.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_to_return", + "type": "integer", + "required": false, + "description": "The number of inventory change records to return in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor for pagination to retrieve the next set of inventory results. Use this from a previous call to continue fetching data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BatchRetrieveInventoryChanges'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.FetchInventoryChanges", + "parameters": { + "filter_by_catalog_object_ids": { + "value": ["12345", "67890"], + "type": "array", + "required": false + }, + "filter_by_location_ids": { + "value": ["loc_111", "loc_222"], + "type": "array", + "required": false + }, + "filter_by_updated_before_timestamp": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "filter_inventory_change_types": { + "value": ["PHYSICAL_COUNT", "ADJUSTMENT"], + "type": "array", + "required": false + }, + "filter_updated_after_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "inventory_states_filter": { + "value": ["IN_STOCK", "OUT_OF_STOCK"], + "type": "array", + "required": false + }, + "number_of_records_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_value", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAccountDisputes", + "qualifiedName": "SquareupApi.GetAccountDisputes", + "fullyQualifiedName": "SquareupApi.GetAccountDisputes@4.0.0", + "description": "Retrieve a list of disputes for an account.\n\nUse this tool to obtain a list of disputes related to a specific account. It is useful for managing and reviewing disputes.", + "parameters": [ + { + "name": "dispute_states_filter", + "type": "string", + "required": false, + "description": "Specify dispute states to filter the results. Options: INQUIRY_EVIDENCE_REQUIRED, INQUIRY_PROCESSING, INQUIRY_CLOSED, EVIDENCE_REQUIRED, PROCESSING, WON, LOST, ACCEPTED. Defaults to all states if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "location_id", + "type": "string", + "required": false, + "description": "The unique ID of the location to filter disputes for. If omitted, disputes from all locations are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string cursor from a previous call to retrieve the next set of dispute results. See [Pagination](https://developer.squareup.com/docs/build-basics/common-api-patterns/pagination).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["DISPUTES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListDisputes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetAccountDisputes", + "parameters": { + "dispute_states_filter": { + "value": "INQUIRY_PROCESSING", + "type": "string", + "required": false + }, + "location_id": { + "value": "loc_123456", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abcdef", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBankAccountDetails", + "qualifiedName": "SquareupApi.GetBankAccountDetails", + "fullyQualifiedName": "SquareupApi.GetBankAccountDetails@4.0.0", + "description": "Retrieve details of a bank account linked to a Square account.\n\nUse this tool to obtain detailed information about a specific bank account associated with a Square account by providing the bank account ID.", + "parameters": [ + { + "name": "bank_account_id", + "type": "string", + "required": true, + "description": "Square-issued ID of the desired bank account to retrieve its details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["BANK_ACCOUNTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBankAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetBankAccountDetails", + "parameters": { + "bank_account_id": { + "value": "BA123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBankAccountDetailsByV1Id", + "qualifiedName": "SquareupApi.GetBankAccountDetailsByV1Id", + "fullyQualifiedName": "SquareupApi.GetBankAccountDetailsByV1Id@4.0.0", + "description": "Fetches bank account details using a V1 ID.\n\nUse this tool to retrieve details of a bank account by providing the V1 bank account ID. Useful for obtaining specific bank account information from the Squareup service.", + "parameters": [ + { + "name": "v1_bank_account_id", + "type": "string", + "required": true, + "description": "The V1 ID of the bank account to retrieve details for. This ID is used to fetch specific account information from the Squareup service.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["BANK_ACCOUNTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBankAccountByV1Id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetBankAccountDetailsByV1Id", + "parameters": { + "v1_bank_account_id": { + "value": "BA1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBreakTypeById", + "qualifiedName": "SquareupApi.GetBreakTypeById", + "fullyQualifiedName": "SquareupApi.GetBreakTypeById@4.0.0", + "description": "Retrieve details of a specific BreakType by ID.\n\nUse this tool to get information about a specific BreakType using its unique ID. It should be called when details about a particular break type in the system are required.", + "parameters": [ + { + "name": "break_type_uuid", + "type": "string", + "required": true, + "description": "The UUID of the BreakType to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_SETTINGS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBreakType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetBreakTypeById", + "parameters": { + "break_type_uuid": { + "value": "abcd1234-5678-90ef-ghij-klmnopqrstuv", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCatalogItemInfo", + "qualifiedName": "SquareupApi.GetCatalogItemInfo", + "fullyQualifiedName": "SquareupApi.GetCatalogItemInfo@4.0.0", + "description": "Retrieve detailed information for a specific catalog item.\n\nThis tool retrieves a single catalog item as a CatalogObject based on the provided ID. It includes all relevant information, such as CatalogItemVariation children, references to CatalogModifierList objects, and applicable CatalogTax IDs.", + "parameters": [ + { + "name": "catalog_object_id", + "type": "string", + "required": true, + "description": "The object ID of the catalog item to retrieve detailed information for.", + "enum": null, + "inferrable": true + }, + { + "name": "catalog_version", + "type": "integer", + "required": false, + "description": "Specify a catalog version to retrieve historical object data. If not provided, the current catalog version is used.", + "enum": null, + "inferrable": true + }, + { + "name": "include_category_path_to_root", + "type": "boolean", + "required": false, + "description": "Include the category's path to the root in the response to show its hierarchy. Returns an empty list for top-level categories.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_objects", + "type": "boolean", + "required": false, + "description": "Set to `true` to include additional related objects, like associated categories, taxes, and images, in the response. Ideal for immediate user display.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ITEMS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveCatalogObject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetCatalogItemInfo", + "parameters": { + "catalog_object_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "catalog_version": { + "value": 1, + "type": "integer", + "required": false + }, + "include_category_path_to_root": { + "value": true, + "type": "boolean", + "required": false + }, + "include_related_objects": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomerCustomAttribute", + "qualifiedName": "SquareupApi.GetCustomerCustomAttribute", + "fullyQualifiedName": "SquareupApi.GetCustomerCustomAttribute@4.0.0", + "description": "Retrieve a custom attribute from a customer profile.\n\nRetrieves a custom attribute associated with a customer profile in Squareup. Optionally, also retrieves the custom attribute definition using a query parameter. Useful for accessing specific customer data fields set by sellers or other applications.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute to retrieve. This must match an existing custom attribute key in the Square seller account. Use a qualified key if not the definition owner.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_profile_id", + "type": "string", + "required": true, + "description": "The ID of the customer profile to retrieve the custom attribute from.", + "enum": null, + "inferrable": true + }, + { + "name": "attribute_version", + "type": "integer", + "required": false, + "description": "The version of the custom attribute for consistent reads. A higher version will return a BAD_REQUEST error.", + "enum": null, + "inferrable": true + }, + { + "name": "include_custom_attribute_definition", + "type": "boolean", + "required": false, + "description": "Set to true to include the custom attribute definition with name, description, data type, and other details. Default is false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveCustomerCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetCustomerCustomAttribute", + "parameters": { + "custom_attribute_key": { + "value": "loyalty_points", + "type": "string", + "required": true + }, + "customer_profile_id": { + "value": "CUST123456", + "type": "string", + "required": true + }, + "attribute_version": { + "value": 1, + "type": "integer", + "required": false + }, + "include_custom_attribute_definition": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomerCustomAttributeDefinition", + "qualifiedName": "SquareupApi.GetCustomerCustomAttributeDefinition", + "fullyQualifiedName": "SquareupApi.GetCustomerCustomAttributeDefinition@4.0.0", + "description": "Retrieve a customer's custom attribute definition from Square.\n\nUse this tool to get a specific customer-related custom attribute definition from a Square seller account. It retrieves details about the attribute, provided it has the correct visibility settings.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute definition to retrieve. Use the qualified key if not the owner.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_version", + "type": "integer", + "required": false, + "description": "The current version of the custom attribute definition to ensure consistent reads. Use to check for the most up-to-date data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveCustomerCustomAttributeDefinition'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetCustomerCustomAttributeDefinition", + "parameters": { + "custom_attribute_key": { + "value": "loyalty_points", + "type": "string", + "required": true + }, + "custom_attribute_version": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomerGroup", + "qualifiedName": "SquareupApi.GetCustomerGroup", + "fullyQualifiedName": "SquareupApi.GetCustomerGroup@4.0.0", + "description": "Retrieve details of a specific customer group by group ID.\n\nUse this tool to get information about a specific customer group using its unique group ID.", + "parameters": [ + { + "name": "customer_group_id", + "type": "string", + "required": true, + "description": "The unique ID of the customer group to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveCustomerGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetCustomerGroup", + "parameters": { + "customer_group_id": { + "value": "grp_1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCustomerSegment", + "qualifiedName": "SquareupApi.GetCustomerSegment", + "fullyQualifiedName": "SquareupApi.GetCustomerSegment@4.0.0", + "description": "Retrieve specific customer segment information.\n\nUse this tool to get information about a specific customer segment using the segment ID.", + "parameters": [ + { + "name": "customer_segment_id", + "type": "string", + "required": true, + "description": "The Square-issued ID of the customer segment to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveCustomerSegment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetCustomerSegment", + "parameters": { + "customer_segment_id": { + "value": "segment_123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDisputeEvidence", + "qualifiedName": "SquareupApi.GetDisputeEvidence", + "fullyQualifiedName": "SquareupApi.GetDisputeEvidence@4.0.0", + "description": "Retrieve evidence for a specific dispute.\n\nUse this tool to obtain a list of all evidence linked to a particular dispute, identified by its dispute ID.", + "parameters": [ + { + "name": "dispute_id", + "type": "string", + "required": true, + "description": "Specify the ID of the dispute to retrieve its associated evidence.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor for pagination. Provide this to retrieve the next set of results for the original query.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["DISPUTES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListDisputeEvidence'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetDisputeEvidence", + "parameters": { + "dispute_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "pagination_cursor": { + "value": "cursor123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDisputeEvidenceMetadata", + "qualifiedName": "SquareupApi.GetDisputeEvidenceMetadata", + "fullyQualifiedName": "SquareupApi.GetDisputeEvidenceMetadata@4.0.0", + "description": "Get metadata for specified dispute evidence.\n\nUse this tool to retrieve the metadata of a specific piece of evidence related to a dispute by providing the dispute ID and evidence ID. Useful for managing and reviewing evidence details.", + "parameters": [ + { + "name": "dispute_id", + "type": "string", + "required": true, + "description": "The unique ID of the dispute to retrieve evidence metadata from.", + "enum": null, + "inferrable": true + }, + { + "name": "evidence_id", + "type": "string", + "required": true, + "description": "The unique identifier for the evidence to retrieve metadata for. Required to specify which evidence's metadata is needed in the dispute.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["DISPUTES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveDisputeEvidence'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetDisputeEvidenceMetadata", + "parameters": { + "dispute_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "evidence_id": { + "value": "abcdef1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetInventoryCount", + "qualifiedName": "SquareupApi.GetInventoryCount", + "fullyQualifiedName": "SquareupApi.GetInventoryCount@4.0.0", + "description": "Retrieve current stock count for a specific catalog item.\n\nUse this tool to get the current calculated inventory count for a specific CatalogObject at specified locations. This is useful for tracking stock levels in real-time.", + "parameters": [ + { + "name": "catalog_object_id", + "type": "string", + "required": true, + "description": "The ID of the CatalogObject to retrieve inventory count for.", + "enum": null, + "inferrable": true + }, + { + "name": "location_ids", + "type": "string", + "required": false, + "description": "Comma-separated list of Location IDs to query. Use an empty list to query all locations.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor for paginating results, from previous call, to fetch next page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveInventoryCount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetInventoryCount", + "parameters": { + "catalog_object_id": { + "value": "abcd1234efgh5678", + "type": "string", + "required": true + }, + "location_ids": { + "value": "locationA,locationB", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "token123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetInventoryPhysicalCount", + "qualifiedName": "SquareupApi.GetInventoryPhysicalCount", + "fullyQualifiedName": "SquareupApi.GetInventoryPhysicalCount@4.0.0", + "description": "Retrieve details of a specific inventory physical count.\n\nUse this tool to get details of an inventory physical count using the provided physical count ID.", + "parameters": [ + { + "name": "inventory_physical_count_id", + "type": "string", + "required": true, + "description": "ID of the InventoryPhysicalCount to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveInventoryPhysicalCount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetInventoryPhysicalCount", + "parameters": { + "inventory_physical_count_id": { + "value": "12345ABCDE", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLocationCustomAttribute", + "qualifiedName": "SquareupApi.GetLocationCustomAttribute", + "fullyQualifiedName": "SquareupApi.GetLocationCustomAttribute@4.0.0", + "description": "Retrieve a custom attribute for a specific location.\n\nThis tool fetches a custom attribute linked with a specific location. It can also include the attribute definition if specified. Use this when you need details about a location's custom attributes.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key for the custom attribute to retrieve. Must match the key in Square's custom attribute definition. Use qualified key if needed.", + "enum": null, + "inferrable": true + }, + { + "name": "target_location_id", + "type": "string", + "required": true, + "description": "The ID of the target location to retrieve its custom attribute.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_version", + "type": "integer", + "required": false, + "description": "Specify the current version of the custom attribute for consistent data retrieval. A BAD_REQUEST error is returned if this version exceeds the current version.", + "enum": null, + "inferrable": true + }, + { + "name": "include_custom_attribute_definition", + "type": "boolean", + "required": false, + "description": "Set to true to include details like name, description, and data type of the custom attribute definition. Default is false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveLocationCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetLocationCustomAttribute", + "parameters": { + "custom_attribute_key": { + "value": "custom:store_hours", + "type": "string", + "required": true + }, + "target_location_id": { + "value": "L12345", + "type": "string", + "required": true + }, + "custom_attribute_version": { + "value": 1, + "type": "integer", + "required": false + }, + "include_custom_attribute_definition": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLoyaltyProgram", + "qualifiedName": "SquareupApi.GetLoyaltyProgram", + "fullyQualifiedName": "SquareupApi.GetLoyaltyProgram@4.0.0", + "description": "Retrieve the loyalty program details for a seller.\n\nUse this tool to get information about the loyalty program in a seller's account. You can specify the program by its ID or use the keyword 'main' to access the primary program. This is useful for understanding how buyers earn points and redeem rewards in the loyalty program.", + "parameters": [ + { + "name": "loyalty_program_identifier", + "type": "string", + "required": true, + "description": "The ID of the loyalty program or the keyword 'main'. Use to retrieve the loyalty program of a seller.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveLoyaltyProgram'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetLoyaltyProgram", + "parameters": { + "loyalty_program_identifier": { + "value": "main", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLoyaltyReward", + "qualifiedName": "SquareupApi.GetLoyaltyReward", + "fullyQualifiedName": "SquareupApi.GetLoyaltyReward@4.0.0", + "description": "Retrieve details of a specific loyalty reward.\n\nUse this tool to fetch details about a particular loyalty reward by providing the reward ID. This can help understand customer incentives or verify reward status.", + "parameters": [ + { + "name": "loyalty_reward_id", + "type": "string", + "required": true, + "description": "The ID of the loyalty reward to retrieve. This is required to fetch details about a specific reward for a customer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveLoyaltyReward'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetLoyaltyReward", + "parameters": { + "loyalty_reward_id": { + "value": "LR123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMerchantCustomAttributeDefinition", + "qualifiedName": "SquareupApi.GetMerchantCustomAttributeDefinition", + "fullyQualifiedName": "SquareupApi.GetMerchantCustomAttributeDefinition@4.0.0", + "description": "Retrieves custom attribute definition for a Square seller account.\n\nThis tool retrieves a custom attribute definition related to a merchant from a Square seller account. It is useful for obtaining detailed attribute information created by other applications, provided the visibility settings are set to allow access.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute definition to retrieve. Use the qualified key if not the definition owner.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_version", + "type": "integer", + "required": false, + "description": "Specifies the current version of the custom attribute definition for retrieving the most up-to-date data. If the specified version is higher than the current, a 'BAD_REQUEST' error is returned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveMerchantCustomAttributeDefinition'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetMerchantCustomAttributeDefinition", + "parameters": { + "custom_attribute_key": { + "value": "com.example.custom_attribute_123", + "type": "string", + "required": true + }, + "custom_attribute_version": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetMerchantDetails", + "qualifiedName": "SquareupApi.GetMerchantDetails", + "fullyQualifiedName": "SquareupApi.GetMerchantDetails@4.0.0", + "description": "Retrieve details about a specific merchant.\n\nThis tool provides information about the merchant associated with a given access token, returning a list with a single merchant object. Useful for acquiring merchant details when the merchant ID is unknown.", + "parameters": [ + { + "name": "previous_response_cursor", + "type": "integer", + "required": false, + "description": "The cursor generated by the previous response for fetching subsequent pages.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListMerchants'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetMerchantDetails", + "parameters": { + "previous_response_cursor": { + "value": 123, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPaymentDetails", + "qualifiedName": "SquareupApi.GetPaymentDetails", + "fullyQualifiedName": "SquareupApi.GetPaymentDetails@4.0.0", + "description": "Retrieve detailed information about a specific payment.\n\nThis tool retrieves details for a specific payment using its ID. It should be called when information about a particular payment is needed, such as transaction details, status, and other relevant data.", + "parameters": [ + { + "name": "payment_id", + "type": "string", + "required": true, + "description": "Unique ID to retrieve specific payment details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPayment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetPaymentDetails", + "parameters": { + "payment_id": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPayoutDetails", + "qualifiedName": "SquareupApi.GetPayoutDetails", + "fullyQualifiedName": "SquareupApi.GetPayoutDetails@4.0.0", + "description": "Retrieve details of a specific payout using payout ID.\n\nUse this tool to obtain detailed information about a specific payout by providing its payout ID. Ensure that the required OAuth scope `PAYOUTS_READ` is set before calling this tool.", + "parameters": [ + { + "name": "payout_id", + "type": "string", + "required": true, + "description": "The unique identifier of the payout to retrieve details for. This ID is required to fetch the specific payout information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPayout'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetPayoutDetails", + "parameters": { + "payout_id": { + "value": "PAYOUT_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetSquareCatalogInfo", + "qualifiedName": "SquareupApi.GetSquareCatalogInfo", + "fullyQualifiedName": "SquareupApi.GetSquareCatalogInfo@4.0.0", + "description": "Retrieve Square Catalog API information and batch size limits.\n\nThis tool fetches details about the Square Catalog API, including information on batch size limits for the `BatchUpsertCatalogObjects` endpoint. Use this to understand API constraints and capabilities.", + "parameters": [], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ITEMS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CatalogInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetSquareCatalogInfo", + "parameters": {}, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamMemberBookingProfile", + "qualifiedName": "SquareupApi.GetTeamMemberBookingProfile", + "fullyQualifiedName": "SquareupApi.GetTeamMemberBookingProfile@4.0.0", + "description": "Retrieve a team member's booking profile from Square.\n\nUse this tool to get specific booking information for a team member by their unique ID. Ideal for checking availability or scheduling details.", + "parameters": [ + { + "name": "team_member_unique_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team member whose booking profile is being retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_BUSINESS_SETTINGS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveTeamMemberBookingProfile'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetTeamMemberBookingProfile", + "parameters": { + "team_member_unique_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamMemberDetails", + "qualifiedName": "SquareupApi.GetTeamMemberDetails", + "fullyQualifiedName": "SquareupApi.GetTeamMemberDetails@4.0.0", + "description": "Retrieve details for a specific team member by ID.\n\nUse this tool to get information about a specific team member using their ID. Useful for managing team details and troubleshooting within the Squareup platform.", + "parameters": [ + { + "name": "team_member_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team member to retrieve their details from Squareup.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["EMPLOYEES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveTeamMember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetTeamMemberDetails", + "parameters": { + "team_member_id": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTeamMemberWage", + "qualifiedName": "SquareupApi.GetTeamMemberWage", + "fullyQualifiedName": "SquareupApi.GetTeamMemberWage@4.0.0", + "description": "Retrieve wage details for a specific team member.\n\nUse this tool to obtain wage information for a specific team member by their ID. Useful for managing payroll or reviewing individual compensation.", + "parameters": [ + { + "name": "team_member_wage_id", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) for retrieving the specific TeamMemberWage record.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["EMPLOYEES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTeamMemberWage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetTeamMemberWage", + "parameters": { + "team_member_wage_id": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTerminalRefund", + "qualifiedName": "SquareupApi.GetTerminalRefund", + "fullyQualifiedName": "SquareupApi.GetTerminalRefund@4.0.0", + "description": "Retrieve details of an Interac Terminal refund by ID.\n\nCall this tool to get information about a specific Interac Terminal refund using its ID. Refund details are available for 30 days after the refund is processed.", + "parameters": [ + { + "name": "terminal_refund_id", + "type": "string", + "required": true, + "description": "The unique ID for the desired TerminalRefund. Use this ID to retrieve specific refund details available for 30 days.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTerminalRefund'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetTerminalRefund", + "parameters": { + "terminal_refund_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTimecardById", + "qualifiedName": "SquareupApi.GetTimecardById", + "fullyQualifiedName": "SquareupApi.GetTimecardById@4.0.0", + "description": "Fetch details of a specific timecard by ID.\n\nUse this tool to retrieve information about a specific timecard using its unique ID. This is useful for accessing detailed timecard records for employees.", + "parameters": [ + { + "name": "timecard_id", + "type": "string", + "required": true, + "description": "The unique UUID identifying the timecard you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveTimecard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.GetTimecardById", + "parameters": { + "timecard_id": { + "value": "9a1b7f3e-f37c-4c52-b32f-0d26b8e48b0b", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "LinkCustomerToGiftCard", + "qualifiedName": "SquareupApi.LinkCustomerToGiftCard", + "fullyQualifiedName": "SquareupApi.LinkCustomerToGiftCard@4.0.0", + "description": "Link a customer to a gift card for future use.\n\nThis tool is used to link a specific customer to a gift card, which allows storing the card on file for the customer. Use it when you want to associate a gift card with a customer for tracking and usage purposes.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The ID of the customer to link to the gift card. This should be a unique identifier representing the customer in the system.", + "enum": null, + "inferrable": true + }, + { + "name": "gift_card_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the gift card to link to the customer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["GIFTCARDS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'LinkCustomerToGiftCard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.LinkCustomerToGiftCard", + "parameters": { + "customer_id": { + "value": "CUST12345", + "type": "string", + "required": true + }, + "gift_card_identifier": { + "value": "GIFT67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListAllLocations", + "qualifiedName": "SquareupApi.ListAllLocations", + "fullyQualifiedName": "SquareupApi.ListAllLocations@4.0.0", + "description": "Fetch details of all seller's locations, including inactive ones.\n\nThis tool retrieves and provides information about all of the seller's locations from SquareUp, including those with inactive status. Locations are listed alphabetically by name and can be used to gain insights into the seller's business locations.", + "parameters": [], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListLocations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListAllLocations", + "parameters": {}, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListBankAccounts", + "qualifiedName": "SquareupApi.ListBankAccounts", + "fullyQualifiedName": "SquareupApi.ListBankAccounts@4.0.0", + "description": "Fetches bank accounts linked to a Square account.\n\nUse this tool to get a list of all bank accounts associated with a Square account. It retrieves relevant bank account details.", + "parameters": [ + { + "name": "location_id_filter", + "type": "string", + "required": false, + "description": "Specify this optional filter to retrieve bank accounts linked to a specific location.", + "enum": null, + "inferrable": true + }, + { + "name": "max_bank_accounts", + "type": "integer", + "required": false, + "description": "Specify the maximum number of bank accounts to return. The limit can be up to 1000, which is also the default.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The pagination cursor from a previous `ListBankAccounts` call to retrieve the next set of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["BANK_ACCOUNTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListBankAccounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListBankAccounts", + "parameters": { + "location_id_filter": { + "value": "L12345", + "type": "string", + "required": false + }, + "max_bank_accounts": { + "value": 500, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListBookingCustomAttributeDefinitions", + "qualifiedName": "SquareupApi.ListBookingCustomAttributeDefinitions", + "fullyQualifiedName": "SquareupApi.ListBookingCustomAttributeDefinitions@4.0.0", + "description": "Retrieve all custom attribute definitions for bookings.\n\nUse this tool to get all custom attribute definitions associated with bookings. It requires appropriate OAuth permissions based on buyer or seller level access. This tool is ideal for managing and understanding the custom attributes tied to booking data.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor from the previous response to get the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Maximum results to return per page. Must be between 1 and 100, default is 20.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListBookingCustomAttributeDefinitions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListBookingCustomAttributeDefinitions", + "parameters": { + "pagination_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "result_limit": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListBookingCustomAttributes", + "qualifiedName": "SquareupApi.ListBookingCustomAttributes", + "fullyQualifiedName": "SquareupApi.ListBookingCustomAttributes@4.0.0", + "description": "Retrieve a booking's custom attributes.\n\nUse this tool to list custom attributes associated with a specific booking. Ensure proper OAuth scope with 'APPOINTMENTS_READ' for buyer-level permissions or both 'APPOINTMENTS_ALL_READ' and 'APPOINTMENTS_READ' for seller-level permissions.", + "parameters": [ + { + "name": "booking_id", + "type": "string", + "required": true, + "description": "The unique identifier for the target booking to list custom attributes for. This is required to specify which booking's attributes to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "include_custom_attribute_definitions", + "type": "boolean", + "required": false, + "description": "Set to true to include custom attribute definitions, providing names, descriptions, data types, and other details. Default is false.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_limit", + "type": "integer", + "required": false, + "description": "The maximum number of results to return in a single response (1-100). Default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor from the previous API response used to retrieve the next page of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListBookingCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListBookingCustomAttributes", + "parameters": { + "booking_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "include_custom_attribute_definitions": { + "value": true, + "type": "boolean", + "required": false + }, + "maximum_results_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListBookingProfiles", + "qualifiedName": "SquareupApi.ListBookingProfiles", + "fullyQualifiedName": "SquareupApi.ListBookingProfiles@4.0.0", + "description": "Retrieve booking profiles for team members.\n\nUse this tool to obtain a list of booking profiles associated with team members. Ideal for viewing or managing team schedules and bookings.", + "parameters": [ + { + "name": "filter_by_location_id", + "type": "string", + "required": false, + "description": "Filter to return only team members enabled at the specified location ID.", + "enum": null, + "inferrable": true + }, + { + "name": "include_only_bookable_members", + "type": "boolean", + "required": false, + "description": "Set to true to include only team members who are bookable. False includes all members.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of results to return in a paged response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor for pagination to retrieve the next page of results. Omit for the first page of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_BUSINESS_SETTINGS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListTeamMemberBookingProfiles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListBookingProfiles", + "parameters": { + "filter_by_location_id": { + "value": "location_1234", + "type": "string", + "required": false + }, + "include_only_bookable_members": { + "value": true, + "type": "boolean", + "required": false + }, + "maximum_results_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_5678", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListBreakTypes", + "qualifiedName": "SquareupApi.ListBreakTypes", + "fullyQualifiedName": "SquareupApi.ListBreakTypes@4.0.0", + "description": "Retrieve a paginated list of break types for a business.\n\nUse this tool to obtain a list of different break types defined in a business. Ideal for accessing and managing labor-related break policies.", + "parameters": [ + { + "name": "filter_by_location_id", + "type": "string", + "required": false, + "description": "Filter results to break types associated with the specified location ID.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of BreakType results to return per page. Must be between 1 and 200. Default is 200.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_cursor", + "type": "string", + "required": false, + "description": "A pointer to the next page of `BreakType` results to fetch for continued listing of break types.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_SETTINGS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListBreakTypes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListBreakTypes", + "parameters": { + "filter_by_location_id": { + "value": "location_12345", + "type": "string", + "required": false + }, + "max_results_per_page": { + "value": 100, + "type": "integer", + "required": false + }, + "next_page_cursor": { + "value": "cursor_xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCashDrawerShiftEvents", + "qualifiedName": "SquareupApi.ListCashDrawerShiftEvents", + "fullyQualifiedName": "SquareupApi.ListCashDrawerShiftEvents@4.0.0", + "description": "Retrieve events for a specific cash drawer shift.\n\nUse this tool to get a list of events related to a specific cash drawer shift. This is useful for tracking activities during the shift.", + "parameters": [ + { + "name": "location_id", + "type": "string", + "required": true, + "description": "The unique identifier for the location to retrieve cash drawer shift events from.", + "enum": null, + "inferrable": true + }, + { + "name": "shift_id", + "type": "string", + "required": true, + "description": "The ID of the cash drawer shift to retrieve events for.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Number of results to return per page (default is 200, maximum is 1000).", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Opaque cursor for fetching the next page of cash drawer shift event results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CASH_DRAWER_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCashDrawerShiftEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListCashDrawerShiftEvents", + "parameters": { + "location_id": { + "value": "loc_1234567890", + "type": "string", + "required": true + }, + "shift_id": { + "value": "shift_0987654321", + "type": "string", + "required": true + }, + "max_results_per_page": { + "value": 500, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCashDrawerShifts", + "qualifiedName": "SquareupApi.ListCashDrawerShifts", + "fullyQualifiedName": "SquareupApi.ListCashDrawerShifts@4.0.0", + "description": "Retrieve cash drawer shift details for a location and date range.\n\nUse this tool to obtain detailed information about cash drawer shifts for a specific location during a specified date range. Ideal for managing and auditing cash flows in business operations.", + "parameters": [ + { + "name": "location_id", + "type": "string", + "required": true, + "description": "The unique identifier of the location to retrieve cash drawer shifts for.", + "enum": null, + "inferrable": true + }, + { + "name": "exclusive_query_end_time", + "type": "string", + "required": false, + "description": "The exclusive end time for the query on opened_at, provided in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Opaque cursor used for fetching the next page of results from the API.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Number of cash drawer shift events per page. Default is 200, with a maximum of 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specifies the order of cash drawer shifts based on their opened_at field. Options are 'ASC' for ascending and 'DESC' for descending. Default is 'ASC'.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time", + "type": "string", + "required": false, + "description": "The inclusive start time for the query in ISO 8601 format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CASH_DRAWER_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCashDrawerShifts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListCashDrawerShifts", + "parameters": { + "location_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "exclusive_query_end_time": { + "value": "2023-10-10T23:59:59Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_456", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 500, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "DESC", + "type": "string", + "required": false + }, + "start_time": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCatalogItems", + "qualifiedName": "SquareupApi.ListCatalogItems", + "fullyQualifiedName": "SquareupApi.ListCatalogItems@4.0.0", + "description": "Retrieve a list of catalog objects by type from Square catalog.\n\nUse this tool to get a list of catalog objects from Square, specifying desired types such as ITEM, ITEM_VARIATION, MODIFIER, etc. Note: It does not include deleted items.", + "parameters": [ + { + "name": "catalog_object_types", + "type": "string", + "required": false, + "description": "A case-insensitive, comma-separated list of object types to retrieve. Valid types include ITEM, ITEM_VARIATION, CATEGORY, DISCOUNT, TAX, MODIFIER, MODIFIER_LIST, IMAGE, etc. Defaults to top-level types if unspecified.", + "enum": null, + "inferrable": true + }, + { + "name": "catalog_version_number", + "type": "integer", + "required": false, + "description": "Specify the catalog version number to retrieve historical objects. If omitted, retrieves current version.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor for pagination from a previous response. Leave unset for the initial request. Page size is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ITEMS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCatalog'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListCatalogItems", + "parameters": { + "catalog_object_types": { + "value": "ITEM,ITEM_VARIATION,CATEGORY", + "type": "string", + "required": false + }, + "catalog_version_number": { + "value": 2, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abcd1234efgh5678", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCustomerCustomAttributeDefinitions", + "qualifiedName": "SquareupApi.ListCustomerCustomAttributeDefinitions", + "fullyQualifiedName": "SquareupApi.ListCustomerCustomAttributeDefinitions@4.0.0", + "description": "Retrieve customer custom attribute definitions for a Square seller.\n\nLists customer-related custom attribute definitions of a Square seller account, including those visible to the requesting app. This includes custom attributes that are read-only or read-write.", + "parameters": [ + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Maximum number of results to return per page. It ranges from 1 to 100, defaulting to 20.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor from the previous response for pagination. Use it to get the next page of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCustomerCustomAttributeDefinitions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListCustomerCustomAttributeDefinitions", + "parameters": { + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123456789", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCustomerCustomAttributes", + "qualifiedName": "SquareupApi.ListCustomerCustomAttributes", + "fullyQualifiedName": "SquareupApi.ListCustomerCustomAttributes@4.0.0", + "description": "Retrieve custom attributes of a customer profile.\n\nThis tool lists the custom attributes associated with a customer profile, with an option to include custom attribute definitions. It retrieves all custom attributes visible to the requesting application, including those owned by other applications with shared visibility settings.", + "parameters": [ + { + "name": "customer_profile_id", + "type": "string", + "required": true, + "description": "The unique identifier of the customer profile whose custom attributes are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "include_attribute_definitions", + "type": "boolean", + "required": false, + "description": "Set to true to include custom attribute definitions in each custom attribute's definition field. Default is false.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to return in a single response. Valid values are 1 to 100, default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor", + "type": "string", + "required": false, + "description": "Cursor from the previous response to get the next page of results. Used for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCustomerCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListCustomerCustomAttributes", + "parameters": { + "customer_profile_id": { + "value": "CUST_12345", + "type": "string", + "required": true + }, + "include_attribute_definitions": { + "value": true, + "type": "boolean", + "required": false + }, + "maximum_results_per_page": { + "value": 30, + "type": "integer", + "required": false + }, + "paging_cursor": { + "value": "CURSOR_67890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCustomerGroups", + "qualifiedName": "SquareupApi.ListCustomerGroups", + "fullyQualifiedName": "SquareupApi.ListCustomerGroups@4.0.0", + "description": "Retrieve a list of customer groups for a business.\n\nCall this tool to get the customer groups associated with a business. Useful for understanding customer segments or managing customer-related operations.", + "parameters": [ + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of customer groups to return per page. Must be between 1 and 50.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A pagination cursor to retrieve the next set of results from a previous query. Useful for handling paginated responses.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCustomerGroups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListCustomerGroups", + "parameters": { + "max_results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCustomerProfiles", + "qualifiedName": "SquareupApi.ListCustomerProfiles", + "fullyQualifiedName": "SquareupApi.ListCustomerProfiles@4.0.0", + "description": "Retrieve customer profiles from a Square account.\n\nUse this tool to list customer profiles linked to a Square account. It is useful when you need to access or manage customer data stored on Square. Newly created or updated profiles may take up to a minute to be available for listing during network incidents.", + "parameters": [ + { + "name": "customer_sort_field", + "type": "string", + "required": false, + "description": "Specifies the field by which customers should be sorted. Options: 'DEFAULT' or 'CREATED_AT'. Default is 'DEFAULT'.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_sort_order", + "type": "string", + "required": false, + "description": "Specify sorting order for customers: 'ASC' for ascending or 'DESC' for descending. Default is 'ASC'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_total_customer_count", + "type": "boolean", + "required": false, + "description": "Set to true to include the total customer count in the response. Default is false.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of customer profiles to retrieve in a single page. Must be between 1 and 100. Default is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A pagination cursor from a previous request to retrieve the next set of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCustomers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListCustomerProfiles", + "parameters": { + "customer_sort_field": { + "value": "CREATED_AT", + "type": "string", + "required": false + }, + "customer_sort_order": { + "value": "DESC", + "type": "string", + "required": false + }, + "include_total_customer_count": { + "value": true, + "type": "boolean", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_value", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListCustomerSegments", + "qualifiedName": "SquareupApi.ListCustomerSegments", + "fullyQualifiedName": "SquareupApi.ListCustomerSegments@4.0.0", + "description": "Retrieve customer segments for a business.\n\nUse this tool to get the current list of customer segments associated with a business. Ideal for understanding customer categorization and segmentation.", + "parameters": [ + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to return in a single page. Value must be between 1 and 50. Default is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A pagination cursor for retrieving the next set of customer segment results. Use a cursor returned from a previous call to continue listing.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCustomerSegments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListCustomerSegments", + "parameters": { + "max_results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListDeviceCodes", + "qualifiedName": "SquareupApi.ListDeviceCodes", + "fullyQualifiedName": "SquareupApi.ListDeviceCodes@4.0.0", + "description": "List all device codes for a merchant.\n\nFetches all device codes linked to a merchant, providing access to their associated data.", + "parameters": [ + { + "name": "device_code_status", + "type": "string", + "required": false, + "description": "Filter DeviceCodes by statuses: 'UNKNOWN', 'UNPAIRED', 'PAIRED', or 'EXPIRED'. Defaults to 'PAIRED' and 'UNPAIRED' if empty.", + "enum": null, + "inferrable": true + }, + { + "name": "location_id_filter", + "type": "string", + "required": false, + "description": "Filter to return only DeviceCodes from the specified location. Returns data from all locations if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A pagination cursor from a previous call. Use to get the next set of results.", + "enum": null, + "inferrable": true + }, + { + "name": "product_type_filter", + "type": "string", + "required": false, + "description": "Specify the product type to filter DeviceCodes. Defaults to all if empty. Options include 'TERMINAL_API'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["DEVICE_CREDENTIAL_MANAGEMENT"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListDeviceCodes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListDeviceCodes", + "parameters": { + "device_code_status": { + "value": "PAIRED", + "type": "string", + "required": false + }, + "location_id_filter": { + "value": "loc_123456", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_78910", + "type": "string", + "required": false + }, + "product_type_filter": { + "value": "TERMINAL_API", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListEventTypes", + "qualifiedName": "SquareupApi.ListEventTypes", + "fullyQualifiedName": "SquareupApi.ListEventTypes@4.0.0", + "description": "Retrieve available event types for webhooks and API queries.\n\nFetches all event types that can be subscribed to as webhooks or queried via the Events API using Squareup.", + "parameters": [ + { + "name": "api_version", + "type": "string", + "required": false, + "description": "Specify the API version to list event types, overriding the application's default version.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListEventTypes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListEventTypes", + "parameters": { + "api_version": { + "value": "2023-10-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGiftCardActivities", + "qualifiedName": "SquareupApi.ListGiftCardActivities", + "fullyQualifiedName": "SquareupApi.ListGiftCardActivities@4.0.0", + "description": "Retrieve and filter gift card activities.\n\nFetches gift card activities for the seller's account, allowing optional filters for specific cards, regions, or timeframes.", + "parameters": [ + { + "name": "activity_sort_order", + "type": "string", + "required": false, + "description": "Specify the order to return gift card activities: 'ASC' for oldest to newest, 'DESC' for newest to oldest (default).", + "enum": null, + "inferrable": true + }, + { + "name": "end_time_rfc3339", + "type": "string", + "required": false, + "description": "The inclusive end timestamp for the reporting period in RFC 3339 format. Defaults to current time.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_activity_type", + "type": "string", + "required": false, + "description": "Specify a type of gift card activity to filter the results. If not provided, all activity types are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_location_id", + "type": "string", + "required": false, + "description": "Specify a location ID to filter gift card activities for that location. Leave empty for activities across all locations.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor returned by a previous call to paginate results. Use to retrieve the next set of results.", + "enum": null, + "inferrable": true + }, + { + "name": "reporting_period_start_time", + "type": "string", + "required": false, + "description": "The starting timestamp for filtering gift card activities, in RFC 3339 format. Inclusive of the provided time; defaults to one year ago.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of results per page. Maximum is 100; default is 50.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_gift_card_id", + "type": "string", + "required": false, + "description": "Specify a gift card ID to retrieve activities related to that specific card. If not provided, activities for all gift cards will be returned.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["GIFTCARDS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListGiftCardActivities'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListGiftCardActivities", + "parameters": { + "activity_sort_order": { + "value": "DESC", + "type": "string", + "required": false + }, + "end_time_rfc3339": { + "value": "2023-10-10T23:59:59Z", + "type": "string", + "required": false + }, + "filter_by_activity_type": { + "value": "PURCHASE", + "type": "string", + "required": false + }, + "filter_by_location_id": { + "value": "loc_12345", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc", + "type": "string", + "required": false + }, + "reporting_period_start_time": { + "value": "2022-10-10T00:00:00Z", + "type": "string", + "required": false + }, + "results_limit_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "specific_gift_card_id": { + "value": "gc_67890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListGiftCards", + "qualifiedName": "SquareupApi.ListGiftCards", + "fullyQualifiedName": "SquareupApi.ListGiftCards@4.0.0", + "description": "Retrieve and filter a list of gift cards.\n\nThis tool calls the API to list all available gift cards, with the option to apply filters for a more specific subset. Results are returned sorted by their creation date in ascending order.", + "parameters": [ + { + "name": "filter_by_customer_id", + "type": "string", + "required": false, + "description": "Provide a customer ID to return only the gift cards linked to that specific customer.", + "enum": null, + "inferrable": true + }, + { + "name": "gift_card_state", + "type": "string", + "required": false, + "description": "Specify the state of the gift cards to filter the results by their current status. If not provided, all states are included.", + "enum": null, + "inferrable": true + }, + { + "name": "gift_card_type", + "type": "string", + "required": false, + "description": "Filter gift cards by a specified type, or return all types if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A pagination cursor from a previous call to retrieve the next set of results. If not provided, returns the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page_limit", + "type": "integer", + "required": false, + "description": "Specify the number of gift cards to return per page. Maximum is 200; default is 30.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["GIFTCARDS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListGiftCards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListGiftCards", + "parameters": { + "filter_by_customer_id": { + "value": "123456", + "type": "string", + "required": false + }, + "gift_card_state": { + "value": "ACTIVE", + "type": "string", + "required": false + }, + "gift_card_type": { + "value": "PHYSICAL", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "results_per_page_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListInvoices", + "qualifiedName": "SquareupApi.ListInvoices", + "fullyQualifiedName": "SquareupApi.ListInvoices@4.0.0", + "description": "Retrieve a list of invoices for a specified location.\n\nThis tool retrieves a list of invoices associated with a particular location. It supports pagination, so if the response is too large, a cursor is provided for subsequent requests to fetch the remaining invoices.", + "parameters": [ + { + "name": "location_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the location to fetch invoices from.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_invoices_to_return", + "type": "integer", + "required": false, + "description": "Specify the maximum number of invoices to return. The limit is 200; default is 100 if not set.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor for pagination to retrieve the next set of invoice results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVOICES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListInvoices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListInvoices", + "parameters": { + "location_identifier": { + "value": "loc_12345", + "type": "string", + "required": true + }, + "maximum_invoices_to_return": { + "value": 150, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abcde", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListJobs", + "qualifiedName": "SquareupApi.ListJobs", + "fullyQualifiedName": "SquareupApi.ListJobs@4.0.0", + "description": "Retrieve jobs from a seller's account, sorted by title.\n\nUse this tool to obtain a list of jobs associated with a seller's account. The jobs are organized in ascending order by their title.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The pagination cursor for retrieving the next page of results. Use the cursor from the previous call to continue fetching.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["EMPLOYEES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListJobs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListJobs", + "parameters": { + "pagination_cursor": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListLocationCustomAttributeDefinitions", + "qualifiedName": "SquareupApi.ListLocationCustomAttributeDefinitions", + "fullyQualifiedName": "SquareupApi.ListLocationCustomAttributeDefinitions@4.0.0", + "description": "Get location-related custom attribute definitions for a Square account.\n\nUse this tool to retrieve all location-related custom attribute definitions associated with a Square seller account, including those with different visibility settings.", + "parameters": [ + { + "name": "filter_by_visibility", + "type": "string", + "required": false, + "description": "Filter results by visibility values: 'ALL', 'READ', or 'READ_WRITE'. Determines the visibility of custom attribute definitions returned.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "Sets the maximum number of results to return in a single response page. Accepts values between 1 and 100, default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor from the previous response to fetch the next page of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListLocationCustomAttributeDefinitions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListLocationCustomAttributeDefinitions", + "parameters": { + "filter_by_visibility": { + "value": "READ_WRITE", + "type": "string", + "required": false + }, + "maximum_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListLocationCustomAttributes", + "qualifiedName": "SquareupApi.ListLocationCustomAttributes", + "fullyQualifiedName": "SquareupApi.ListLocationCustomAttributes@4.0.0", + "description": "Retrieve custom attributes for a specific location.\n\nThis tool retrieves custom attributes associated with a specific location from Square. Optionally, custom attribute definitions can be included. It returns attributes visible to the requester, including those with varying visibility settings.", + "parameters": [ + { + "name": "location_id", + "type": "string", + "required": true, + "description": "The ID of the target location to retrieve custom attributes for.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_visibility", + "type": "string", + "required": false, + "description": "Filters custom attribute definitions by visibility values. Options include 'ALL', 'READ', or 'READ_WRITE'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_custom_attribute_definitions", + "type": "boolean", + "required": false, + "description": "Set to true to include custom attribute definitions, providing name, description, and data type details. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_limit", + "type": "integer", + "required": false, + "description": "The maximum number of results to return in a single response. Valid range: 1 to 100. Default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor for fetching the next page of results in a paginated response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListLocationCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListLocationCustomAttributes", + "parameters": { + "location_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "filter_by_visibility": { + "value": "READ", + "type": "string", + "required": false + }, + "include_custom_attribute_definitions": { + "value": true, + "type": "boolean", + "required": false + }, + "maximum_results_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListLoyaltyPromotions", + "qualifiedName": "SquareupApi.ListLoyaltyPromotions", + "fullyQualifiedName": "SquareupApi.ListLoyaltyPromotions@4.0.0", + "description": "Retrieve promotions from a specific loyalty program.\n\nCall this tool to list loyalty promotions associated with a specific loyalty program, sorted by the most recent creation date.", + "parameters": [ + { + "name": "loyalty_program_id", + "type": "string", + "required": true, + "description": "The ID of the loyalty program to list promotions for. Obtain via `RetrieveLoyaltyProgram` using `main`.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of promotions to return in a single response. Must be between 1 and 30, defaults to 30.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor for retrieving the next page of results from the previous call.", + "enum": null, + "inferrable": true + }, + { + "name": "promotion_status_filter", + "type": "string", + "required": false, + "description": "Specify the status to filter loyalty promotions. Options include ACTIVE, ENDED, CANCELED, SCHEDULED. Returns promotions with the specified status.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListLoyaltyPromotions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListLoyaltyPromotions", + "parameters": { + "loyalty_program_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "max_results_per_page": { + "value": 15, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "promotion_status_filter": { + "value": "ACTIVE", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListMerchantCustomAttributeDefinitions", + "qualifiedName": "SquareupApi.ListMerchantCustomAttributeDefinitions", + "fullyQualifiedName": "SquareupApi.ListMerchantCustomAttributeDefinitions@4.0.0", + "description": "Retrieve merchant custom attribute definitions.\n\nFetch all merchant-related custom attribute definitions for a Square seller account, including those visible to the requesting application, even if created by other applications.", + "parameters": [ + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to return in a single response, ranging from 1 to 100. Default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor for retrieving the next page of results from a previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "visibility_filter_option", + "type": "string", + "required": false, + "description": "Specify the visibility level of the CustomAttributeDefinition results. Options: ALL, READ, READ_WRITE.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListMerchantCustomAttributeDefinitions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListMerchantCustomAttributeDefinitions", + "parameters": { + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "visibility_filter_option": { + "value": "READ_WRITE", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListMerchantCustomAttributes", + "qualifiedName": "SquareupApi.ListMerchantCustomAttributes", + "fullyQualifiedName": "SquareupApi.ListMerchantCustomAttributes@4.0.0", + "description": "Retrieve custom attributes for a specified merchant.\n\nThis tool retrieves the custom attributes associated with a specific merchant, including those visible to the requesting application and owned by other applications. Useful for managing and analyzing merchant-specific data.", + "parameters": [ + { + "name": "merchant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the target merchant whose custom attributes are to be listed.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_custom_attribute_visibility", + "type": "string", + "required": false, + "description": "Filters custom attribute definition results by visibility values. Valid options are 'ALL', 'READ', or 'READ_WRITE'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_custom_attribute_definitions", + "type": "boolean", + "required": false, + "description": "Set to true to include custom attribute definitions, providing details like name, description, and data type.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_limit", + "type": "integer", + "required": false, + "description": "The maximum number of results to return in a single response. Minimum is 1, maximum is 100, defaults to 20.", + "enum": null, + "inferrable": true + }, + { + "name": "paging_cursor", + "type": "string", + "required": false, + "description": "The cursor from the previous paged response to retrieve the next set of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListMerchantCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListMerchantCustomAttributes", + "parameters": { + "merchant_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "filter_custom_attribute_visibility": { + "value": "READ", + "type": "string", + "required": false + }, + "include_custom_attribute_definitions": { + "value": true, + "type": "boolean", + "required": false + }, + "maximum_results_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "paging_cursor": { + "value": "cursor_456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListMerchantDevices", + "qualifiedName": "SquareupApi.ListMerchantDevices", + "fullyQualifiedName": "SquareupApi.ListMerchantDevices@4.0.0", + "description": "Retrieve a list of devices for a merchant's terminal API.\n\nThis tool is used to list all devices associated with a merchant, specifically for the Terminal API. It is helpful for businesses needing an overview of their registered devices.", + "parameters": [ + { + "name": "device_listing_order", + "type": "string", + "required": false, + "description": "Specifies whether to list devices from oldest to newest ('ASC') or newest to oldest ('DESC').", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_location_id", + "type": "string", + "required": false, + "description": "Return devices only at the specified location ID, if provided.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string used to fetch the next set of device results. Obtained from a prior API call, it facilitates pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "results_page_limit", + "type": "integer", + "required": false, + "description": "The number of results to return in a single page. Use this to control pagination of the device list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["DEVICES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListDevices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListMerchantDevices", + "parameters": { + "device_listing_order": { + "value": "ASC", + "type": "string", + "required": false + }, + "filter_by_location_id": { + "value": "location_123456", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_789", + "type": "string", + "required": false + }, + "results_page_limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrderCustomAttributeDefinitions", + "qualifiedName": "SquareupApi.ListOrderCustomAttributeDefinitions", + "fullyQualifiedName": "SquareupApi.ListOrderCustomAttributeDefinitions@4.0.0", + "description": "Retrieve order-related custom attribute definitions for a Square seller.\n\nLists all order-related custom attribute definitions for a Square seller account, including those with read-only or read-write visibility set by other applications.", + "parameters": [ + { + "name": "custom_attribute_visibility_filter", + "type": "string", + "required": false, + "description": "Specify whether to return all custom attributes, or only those that are read-only ('READ') or read-write ('READ_WRITE'). Valid options are 'ALL', 'READ', or 'READ_WRITE'.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results to return in a single response. Accepts values 1 to 100, default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor for fetching the next page of results in a multi-page response. It should be used as returned from a previous call.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListOrderCustomAttributeDefinitions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListOrderCustomAttributeDefinitions", + "parameters": { + "custom_attribute_visibility_filter": { + "value": "ALL", + "type": "string", + "required": false + }, + "maximum_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListOrderCustomAttributes", + "qualifiedName": "SquareupApi.ListOrderCustomAttributes", + "fullyQualifiedName": "SquareupApi.ListOrderCustomAttributes@4.0.0", + "description": "Retrieve custom attributes associated with an order.\n\nThis tool fetches the custom attributes linked to a specific order, optionally including their definitions. It provides all visible custom attributes, including those owned by other applications with specific visibility settings.", + "parameters": [ + { + "name": "target_order_id", + "type": "string", + "required": true, + "description": "The unique identifier of the target order to retrieve custom attributes for.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attributes_visibility", + "type": "string", + "required": false, + "description": "Specify which custom attributes to return: 'ALL', 'READ', or 'READ_WRITE'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_custom_attribute_definitions", + "type": "boolean", + "required": false, + "description": "Set to true to include custom attribute definition details such as name, description, and data type. Defaults to false.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of custom attribute results returned per page. Accepts values from 1 to 100, default is 20.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor used to retrieve the next page of results in a paginated response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListOrderCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListOrderCustomAttributes", + "parameters": { + "target_order_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "custom_attributes_visibility": { + "value": "ALL", + "type": "string", + "required": false + }, + "include_custom_attribute_definitions": { + "value": true, + "type": "boolean", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPaymentLinks", + "qualifiedName": "SquareupApi.ListPaymentLinks", + "fullyQualifiedName": "SquareupApi.ListPaymentLinks@4.0.0", + "description": "Lists all online payment links for Squareup.\n\nUse this tool to retrieve a list of all payment links created in Squareup's online checkout system.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A pagination cursor from a previous call to fetch the next set of results. If not provided, returns the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page_limit", + "type": "integer", + "required": false, + "description": "Advisory limit on number of results per page. Ignored if negative, zero, or over 1000. Defaults to 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListPaymentLinks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListPaymentLinks", + "parameters": { + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "results_per_page_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPaymentRefunds", + "qualifiedName": "SquareupApi.ListPaymentRefunds", + "fullyQualifiedName": "SquareupApi.ListPaymentRefunds@4.0.0", + "description": "Retrieve a list of payment refunds for the account.\n\nUse this tool to get a list of refunds associated with the account. This is useful for checking all refund transactions. Note that results are eventually consistent and may take a few seconds to update.", + "parameters": [ + { + "name": "end_time_rfc3339", + "type": "string", + "required": false, + "description": "Specifies the end time in RFC 3339 format to retrieve `PaymentRefunds` based on `created_at`. Defaults to the current time.", + "enum": null, + "inferrable": true + }, + { + "name": "limit_results_to_location_id", + "type": "string", + "required": false, + "description": "Limit results to refunds from the specified location. By default, returns all locations.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the max number of refund results per page. Max value is 100; defaults to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A pagination cursor from a previous response to fetch the next set of results.", + "enum": null, + "inferrable": true + }, + { + "name": "refund_status_filter", + "type": "string", + "required": false, + "description": "Specify a refund status to filter the results. If omitted, refunds of all statuses are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "refunds_start_time", + "type": "string", + "required": false, + "description": "The start time in RFC 3339 format to retrieve PaymentRefunds based on the created_at field. Default is the current time minus one year.", + "enum": null, + "inferrable": true + }, + { + "name": "results_sort_order", + "type": "string", + "required": false, + "description": "The order in which results are listed by their creation date: `ASC` for oldest to newest, `DESC` for newest to oldest (default).", + "enum": null, + "inferrable": true + }, + { + "name": "sort_results_by_field", + "type": "string", + "required": false, + "description": "The field used to sort payment refund results. Options: 'CREATED_AT' (default) or 'UPDATED_AT'.", + "enum": null, + "inferrable": true + }, + { + "name": "source_payment_type", + "type": "string", + "required": false, + "description": "Specify to only return refunds for payments with the indicated source type (e.g., CARD, BANK_ACCOUNT).", + "enum": null, + "inferrable": true + }, + { + "name": "updated_at_end_time", + "type": "string", + "required": false, + "description": "The end of the time range for retrieving refunds, in RFC 3339 format. Default is the current time.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_at_start_time", + "type": "string", + "required": false, + "description": "Start of time range for retrieving each PaymentRefund, in RFC 3339 format. Defaults to begin_time if omitted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListPaymentRefunds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListPaymentRefunds", + "parameters": { + "end_time_rfc3339": { + "value": "2023-10-10T23:59:59Z", + "type": "string", + "required": false + }, + "limit_results_to_location_id": { + "value": "location_123", + "type": "string", + "required": false + }, + "maximum_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc", + "type": "string", + "required": false + }, + "refund_status_filter": { + "value": "COMPLETED", + "type": "string", + "required": false + }, + "refunds_start_time": { + "value": "2022-10-10T00:00:00Z", + "type": "string", + "required": false + }, + "results_sort_order": { + "value": "DESC", + "type": "string", + "required": false + }, + "sort_results_by_field": { + "value": "CREATED_AT", + "type": "string", + "required": false + }, + "source_payment_type": { + "value": "CARD", + "type": "string", + "required": false + }, + "updated_at_end_time": { + "value": "2023-10-09T23:59:59Z", + "type": "string", + "required": false + }, + "updated_at_start_time": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPayoutEntries", + "qualifiedName": "SquareupApi.ListPayoutEntries", + "fullyQualifiedName": "SquareupApi.ListPayoutEntries@4.0.0", + "description": "Retrieve all payout entries for a specific payout.\n\nUse this tool to get a list of payout entries related to a specific payout ID. Ensure the `PAYOUTS_READ` OAuth scope is set before calling this tool.", + "parameters": [ + { + "name": "payout_id", + "type": "string", + "required": true, + "description": "The unique string identifier for the specific payout to retrieve information for.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of results to return on a single page (max 100). Default is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor to retrieve the next set of results in a paginated response. Use a cursor from a previous response for continuity.", + "enum": null, + "inferrable": true + }, + { + "name": "payout_entries_sort_order", + "type": "string", + "required": false, + "description": "Specify the order (ASC or DESC) in which payout entries are listed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListPayoutEntries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListPayoutEntries", + "parameters": { + "payout_id": { + "value": "payout_123456789", + "type": "string", + "required": true + }, + "maximum_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abcdef12345", + "type": "string", + "required": false + }, + "payout_entries_sort_order": { + "value": "ASC", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPayouts", + "qualifiedName": "SquareupApi.ListPayouts", + "fullyQualifiedName": "SquareupApi.ListPayouts@4.0.0", + "description": "Retrieve a list of payouts for the default location.\n\nThis tool retrieves all payouts for the default location. It allows filtering by location ID, status, time range, and ordering results. Ensure that `PAYOUTS_READ` is set for the OAuth scope.", + "parameters": [ + { + "name": "begin_timestamp", + "type": "string", + "required": false, + "description": "The starting timestamp for the payout creation time, in RFC 3339 format. Defaults to one year ago if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time_rfc3339", + "type": "string", + "required": false, + "description": "RFC 3339 timestamp marking the end of the payout creation time. Defaults to current time if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_payout_status", + "type": "string", + "required": false, + "description": "If provided, only payouts with the specified status ('SENT', 'FAILED', 'PAID') are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "location_identifier", + "type": "string", + "required": false, + "description": "The ID of the location for which to list the payouts. Defaults to the main location associated with the seller if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor for pagination, returned by a previous call. Use it to retrieve the next set of results. Be aware of changes in request parameters between calls.", + "enum": null, + "inferrable": true + }, + { + "name": "payout_sort_order", + "type": "string", + "required": false, + "description": "Specifies the order for listing payouts. Use 'DESC' for descending or 'ASC' for ascending order.", + "enum": null, + "inferrable": true + }, + { + "name": "results_per_page", + "type": "integer", + "required": false, + "description": "Maximum number of results per page. Defaults to 100 and cannot exceed 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListPayouts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListPayouts", + "parameters": { + "begin_timestamp": { + "value": "2022-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "end_time_rfc3339": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "filter_payout_status": { + "value": "PAID", + "type": "string", + "required": false + }, + "location_identifier": { + "value": "location_12345", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc123", + "type": "string", + "required": false + }, + "payout_sort_order": { + "value": "DESC", + "type": "string", + "required": false + }, + "results_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSalesChannels", + "qualifiedName": "SquareupApi.ListSalesChannels", + "fullyQualifiedName": "SquareupApi.ListSalesChannels@4.0.0", + "description": "Retrieve a list of available sales channels.\n\nUse this tool to obtain a list of all available sales channels through which transactions can be processed. Useful for managing sales operations and integrations.", + "parameters": [ + { + "name": "channel_reference_type", + "type": "string", + "required": false, + "description": "Type of reference associated with the sales channel, such as LOCATION or ONLINE_SITE.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_status", + "type": "string", + "required": false, + "description": "Specify the status of the channel. Options are 'ACTIVE' or 'INACTIVE'.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of sales channels to return. Defaults to 100 if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_cursor", + "type": "string", + "required": false, + "description": "Provide the cursor to fetch the next set of results if pagination is needed.", + "enum": null, + "inferrable": true + }, + { + "name": "reference_id", + "type": "string", + "required": false, + "description": "ID of the reference associated with the sales channel.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CHANNELS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListChannels'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListSalesChannels", + "parameters": { + "channel_reference_type": { + "value": "LOCATION", + "type": "string", + "required": false + }, + "channel_status": { + "value": "ACTIVE", + "type": "string", + "required": false + }, + "maximum_results_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "next_page_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "reference_id": { + "value": "ref12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListScheduledShifts", + "qualifiedName": "SquareupApi.ListScheduledShifts", + "fullyQualifiedName": "SquareupApi.ListScheduledShifts@4.0.0", + "description": "Retrieve a list of scheduled shifts with filtering options.\n\nFetch a paginated list of scheduled work shifts. You can apply filters and sort the results, which are by default ordered by start time in ascending order.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchScheduledShifts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListScheduledShifts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"start_date\":\"2023-10-01\",\"end_date\":\"2023-10-31\",\"employee_id\":\"12345\",\"location_id\":\"67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSellerBookingProfiles", + "qualifiedName": "SquareupApi.ListSellerBookingProfiles", + "fullyQualifiedName": "SquareupApi.ListSellerBookingProfiles@4.0.0", + "description": "Retrieve booking profiles for seller locations.\n\nCall this tool to obtain a list of booking profiles for a seller's locations. Useful for understanding how bookings are managed across different locations of a seller.", + "parameters": [ + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of booking profiles to return in a single response page.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Use this to fetch the next page of results. Leave blank for the first page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_BUSINESS_SETTINGS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListLocationBookingProfiles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListSellerBookingProfiles", + "parameters": { + "max_results_per_page": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "eyJ2IjoiMSIsImN1cnNvciI6IjEifQ==", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSquareOnlineSites", + "qualifiedName": "SquareupApi.ListSquareOnlineSites", + "fullyQualifiedName": "SquareupApi.ListSquareOnlineSites@4.0.0", + "description": "List all Square Online sites for a seller.\n\nFetches a list of Square Online sites associated with a seller account, ordered by creation date. Useful for managing or reviewing existing sites.", + "parameters": [], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ONLINE_STORE_SITE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListSites'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListSquareOnlineSites", + "parameters": {}, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListSubscriptionEvents", + "qualifiedName": "SquareupApi.ListSubscriptionEvents", + "fullyQualifiedName": "SquareupApi.ListSubscriptionEvents@4.0.0", + "description": "Retrieve all events for a specific subscription.\n\nThis tool retrieves all events related to a specific subscription, providing insight into its activities and changes.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The unique identifier for the subscription whose events are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "event_limit", + "type": "integer", + "required": false, + "description": "The maximum number of subscription events to retrieve in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Specify the cursor from a previous response to fetch the next page of subscription events. Leave unset to get the last page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["SUBSCRIPTIONS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListSubscriptionEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListSubscriptionEvents", + "parameters": { + "subscription_id": { + "value": "sub_123456789", + "type": "string", + "required": true + }, + "event_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTeamMemberWages", + "qualifiedName": "SquareupApi.ListTeamMemberWages", + "fullyQualifiedName": "SquareupApi.ListTeamMemberWages@4.0.0", + "description": "Retrieve paginated list of team member wages for a business.\n\nThis tool retrieves a paginated list of wage details for team members in a business. It can be called when specific information about team member wages is needed.", + "parameters": [ + { + "name": "filter_by_team_member_id", + "type": "string", + "required": false, + "description": "Filter wages to only those associated with the specified team member by ID.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of TeamMemberWage results to return per page, ranging from 1 to 200. Default is 200.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_cursor", + "type": "string", + "required": false, + "description": "A pointer to the next page of team member wage results to fetch.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["EMPLOYEES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListTeamMemberWages'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListTeamMemberWages", + "parameters": { + "filter_by_team_member_id": { + "value": "12345", + "type": "string", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "next_page_cursor": { + "value": "cursor_token_abc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUserCards", + "qualifiedName": "SquareupApi.ListUserCards", + "fullyQualifiedName": "SquareupApi.ListUserCards@4.0.0", + "description": "Retrieve a list of cards owned by the account.\n\nThis tool fetches up to 25 cards associated with the user's account. It should be called when there is a need to view all cards linked to the account making the request.", + "parameters": [ + { + "name": "filter_by_customer_id", + "type": "string", + "required": false, + "description": "Limit results to cards associated with a specific customer ID. By default, all cards owned by the merchant are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "include_disabled_cards", + "type": "boolean", + "required": false, + "description": "Include disabled cards in the results. By default, only enabled cards are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "limit_to_reference_id", + "type": "string", + "required": false, + "description": "Limit results to cards associated with the given reference ID. Use this to filter cards matching a specific reference.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string token to retrieve the next set of card results for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specifies the sort order of the list by card creation date. Options are 'ASC' (ascending) or 'DESC' (descending). Defaults to 'ASC'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListCards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListUserCards", + "parameters": { + "filter_by_customer_id": { + "value": "12345", + "type": "string", + "required": false + }, + "include_disabled_cards": { + "value": true, + "type": "boolean", + "required": false + }, + "limit_to_reference_id": { + "value": "ref_001", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "next_cursor_token", + "type": "string", + "required": false + }, + "sort_order": { + "value": "DESC", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWebhookEventTypes", + "qualifiedName": "SquareupApi.ListWebhookEventTypes", + "fullyQualifiedName": "SquareupApi.ListWebhookEventTypes@4.0.0", + "description": "Retrieve all webhook event types available for subscription.\n\nThis tool is used to fetch a list of all available webhook event types that can be subscribed to. It helps users identify which events they can set up webhooks for in order to receive notifications.", + "parameters": [ + { + "name": "api_version_for_event_types", + "type": "string", + "required": false, + "description": "Specify the API version to list event types, overriding the default version.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListWebhookEventTypes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListWebhookEventTypes", + "parameters": { + "api_version_for_event_types": { + "value": "2023-10-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWebhookSubscriptions", + "qualifiedName": "SquareupApi.ListWebhookSubscriptions", + "fullyQualifiedName": "SquareupApi.ListWebhookSubscriptions@4.0.0", + "description": "Lists all webhook subscriptions owned by the application.\n\nUse this tool to retrieve all webhook subscriptions associated with your Square application. It provides a comprehensive list of active webhook subscriptions.", + "parameters": [ + { + "name": "include_disabled_subscriptions", + "type": "boolean", + "required": false, + "description": "If set to true, includes disabled subscriptions in the results. By default, only enabled subscriptions are returned.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results returned in one page, up to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor from a previous call for paginating results. Use it to retrieve the next set of results.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Sort returned list by subscription creation date. Options are 'ASC' for ascending or 'DESC' for descending. Defaults to 'ASC'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListWebhookSubscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListWebhookSubscriptions", + "parameters": { + "include_disabled_subscriptions": { + "value": true, + "type": "boolean", + "required": false + }, + "maximum_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "sort_order": { + "value": "DESC", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListWorkweekConfigs", + "qualifiedName": "SquareupApi.ListWorkweekConfigs", + "fullyQualifiedName": "SquareupApi.ListWorkweekConfigs@4.0.0", + "description": "Retrieve workweek configurations for a business.\n\nThis tool retrieves a list of workweek configurations, providing details about the workweek setup for a business.", + "parameters": [ + { + "name": "maximum_results_per_page", + "type": "integer", + "required": false, + "description": "Maximum number of WorkweekConfig results to return per page.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Pointer to the next page of WorkweekConfig results to fetch.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_SETTINGS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListWorkweekConfigs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ListWorkweekConfigs", + "parameters": { + "maximum_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123token", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ObtainOauthToken", + "qualifiedName": "SquareupApi.ObtainOauthToken", + "fullyQualifiedName": "SquareupApi.ObtainOauthToken@4.0.0", + "description": "Obtain OAuth access and refresh tokens.\n\nThis tool is used to obtain an OAuth access token and refresh token using either the authorization_code or refresh_token grant type. It's applicable for both code flow and PKCE flow scenarios, depending on the credentials and additional parameters provided.", + "parameters": [ + { + "name": "application_id", + "type": "string", + "required": true, + "description": "The Square-issued ID of your application, available as the Application ID in the Developer Console. Required for code and PKCE flows.", + "enum": null, + "inferrable": true + }, + { + "name": "oauth_grant_type", + "type": "string", + "required": true, + "description": "Specifies the method for obtaining an OAuth access token. Choose from 'authorization_code', 'refresh_token', or 'migration_token'.", + "enum": null, + "inferrable": true + }, + { + "name": "application_client_secret", + "type": "string", + "required": false, + "description": "The application's secret key from the Developer Console, required for code flow. Distinct from a personal access token.", + "enum": null, + "inferrable": true + }, + { + "name": "application_redirect_url", + "type": "string", + "required": false, + "description": "The registered redirect URL for your application. Required for code flow and PKCE flow if `grant_type` is `authorization_code`.", + "enum": null, + "inferrable": true + }, + { + "name": "authorization_code", + "type": "string", + "required": false, + "description": "The authorization code for exchanging an OAuth access token, required for code flow and PKCE flow if `grant_type` is `authorization_code`.", + "enum": null, + "inferrable": true + }, + { + "name": "expire_token_in_24_hours", + "type": "boolean", + "required": false, + "description": "Set to true to make the access token expire in 24 hours. Optional for any grant type.", + "enum": null, + "inferrable": true + }, + { + "name": "legacy_migration_token", + "type": "string", + "required": false, + "description": "A valid legacy access token for generating a new OAuth access token, required if `grant_type` is `migration_token`.", + "enum": null, + "inferrable": true + }, + { + "name": "pkce_code_verifier", + "type": "string", + "required": false, + "description": "The secret your application generated for the authorization request, required for PKCE flow when `grant_type` is `authorization_code`.", + "enum": null, + "inferrable": true + }, + { + "name": "requested_scopes", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of permissions for the access token, like [\"MERCHANT_PROFILE_READ\", \"PAYMENTS_READ\"]. Optional for certain flows.", + "enum": null, + "inferrable": true + }, + { + "name": "valid_refresh_token", + "type": "string", + "required": false, + "description": "A valid refresh token used to generate a new OAuth access token, returned in a previous ObtainToken response. Required for the code and PKCE flow if grant_type is refresh_token.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ObtainToken'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ObtainOauthToken", + "parameters": { + "application_id": { + "value": "sq-app-123456789", + "type": "string", + "required": true + }, + "oauth_grant_type": { + "value": "authorization_code", + "type": "string", + "required": true + }, + "application_client_secret": { + "value": "skclientsecret12345", + "type": "string", + "required": false + }, + "application_redirect_url": { + "value": "https://yourapp.com/callback", + "type": "string", + "required": false + }, + "authorization_code": { + "value": "authCode12345", + "type": "string", + "required": false + }, + "expire_token_in_24_hours": { + "value": true, + "type": "boolean", + "required": false + }, + "legacy_migration_token": { + "value": null, + "type": "string", + "required": false + }, + "pkce_code_verifier": { + "value": "codeVerifier1234567890", + "type": "string", + "required": false + }, + "requested_scopes": { + "value": ["MERCHANT_PROFILE_READ", "PAYMENTS_READ"], + "type": "array", + "required": false + }, + "valid_refresh_token": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PauseSubscription", + "qualifiedName": "SquareupApi.PauseSubscription", + "fullyQualifiedName": "SquareupApi.PauseSubscription@4.0.0", + "description": "Schedule a pause for an active subscription.\n\nUse this tool to pause an active subscription by scheduling a `PAUSE` action. Call it when you need to temporarily halt a subscription's services.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The unique ID of the subscription you want to pause.", + "enum": null, + "inferrable": true + }, + { + "name": "pause_cycle_count", + "type": "integer", + "required": false, + "description": "Specify the number of billing cycles to pause the subscription. A 'RESUME' action will be scheduled at the end of this period. Do not set 'resume_effective_date' or 'resume_change_timing' if this is used.", + "enum": null, + "inferrable": true + }, + { + "name": "pause_effective_date", + "type": "string", + "required": false, + "description": "The `YYYY-MM-DD`-formatted date when the scheduled `PAUSE` action occurs. If unspecified or within the current billing cycle, the subscription pauses at the start of the next cycle.", + "enum": null, + "inferrable": true + }, + { + "name": "pause_reason", + "type": "string", + "required": false, + "description": "The reason provided by the user for pausing the subscription. It should convey the rationale behind the pause action.", + "enum": null, + "inferrable": true + }, + { + "name": "reactivation_date", + "type": "string", + "required": false, + "description": "The date (YYYY-MM-DD) when the subscription is reactivated by a scheduled `RESUME` action. Must be at least one billing cycle after `pause_effective_date`.", + "enum": null, + "inferrable": true + }, + { + "name": "resume_change_timing", + "type": "string", + "required": false, + "description": "Specifies when the subscription resume action takes place. Options are 'IMMEDIATE' or 'END_OF_BILLING_CYCLE'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [ + "ITEMS_READ", + "INVOICES_WRITE", + "CUSTOMERS_READ", + "SUBSCRIPTIONS_WRITE", + "ORDERS_WRITE", + "PAYMENTS_WRITE" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'PauseSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.PauseSubscription", + "parameters": { + "subscription_id": { + "value": "sub_1234567890", + "type": "string", + "required": true + }, + "pause_cycle_count": { + "value": 2, + "type": "integer", + "required": false + }, + "pause_effective_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "pause_reason": { + "value": "Temporary financial constraints", + "type": "string", + "required": false + }, + "reactivation_date": { + "value": "2023-12-01", + "type": "string", + "required": false + }, + "resume_change_timing": { + "value": "END_OF_BILLING_CYCLE", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PayOrder", + "qualifiedName": "SquareupApi.PayOrder", + "fullyQualifiedName": "SquareupApi.PayOrder@4.0.0", + "description": "Settle an order using approved payments.\n\nThis tool is used to pay for an order with approved payments, or to mark an order with a total of 0 as paid. Ensure all payments reference the order correctly. Useful for completing transactions with delayed capture payments.", + "parameters": [ + { + "name": "order_id", + "type": "string", + "required": true, + "description": "The unique identifier of the order to be paid.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_transaction_identifier", + "type": "string", + "required": true, + "description": "A unique string to identify the request and ensure the prevention of duplicate payments. Reuse the same key for retrying the same request.", + "enum": null, + "inferrable": true + }, + { + "name": "order_version", + "type": "integer", + "required": false, + "description": "Specify the version of the order to be paid. Defaults to latest if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "payment_ids_to_collect", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of payment IDs to collect; total must match the order total.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE", "ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'PayOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.PayOrder", + "parameters": { + "order_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "unique_transaction_identifier": { + "value": "txn_abcdef123456", + "type": "string", + "required": true + }, + "order_version": { + "value": 2, + "type": "integer", + "required": false + }, + "payment_ids_to_collect": { + "value": ["pay_111111", "pay_222222"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PreviewOrderPricing", + "qualifiedName": "SquareupApi.PreviewOrderPricing", + "fullyQualifiedName": "SquareupApi.PreviewOrderPricing@4.0.0", + "description": "Preview order pricing without creating an order.\n\nCall this tool to obtain an estimate of the pricing for an order without the need to actually create the order. Useful for displaying potential costs to customers before finalizing the transaction.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CalculateOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.PreviewOrderPricing", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"items\":[{\"name\":\"T-shirt\",\"quantity\":2,\"price\":20.00},{\"name\":\"Jeans\",\"quantity\":1,\"price\":40.00}],\"tax_rate\":0.08,\"discount\":5.00}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PublishInvoice", + "qualifiedName": "SquareupApi.PublishInvoice", + "fullyQualifiedName": "SquareupApi.PublishInvoice@4.0.0", + "description": "Publish a draft invoice with Square, updating its status.\n\nThis tool publishes a specified draft invoice using Square's service, updating its status and triggering configured actions such as sending emails or charging stored cards. The tool should be called when an invoice needs to be finalized and sent or processed according to its settings.", + "parameters": [ + { + "name": "invoice_id", + "type": "string", + "required": true, + "description": "The ID of the draft invoice that you wish to publish. This ID uniquely identifies the invoice within the system.", + "enum": null, + "inferrable": true + }, + { + "name": "invoice_version", + "type": "integer", + "required": true, + "description": "Specify the current version number of the invoice to publish. This must match the existing invoice version to avoid rejection.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_request_identifier", + "type": "string", + "required": false, + "description": "A unique string to identify the `PublishInvoice` request. If omitted or empty, each request is treated as independent. Refer to the Square documentation on idempotency for more information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVOICES_WRITE", "ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'PublishInvoice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.PublishInvoice", + "parameters": { + "invoice_id": { + "value": "inv_123456789", + "type": "string", + "required": true + }, + "invoice_version": { + "value": 1, + "type": "integer", + "required": true + }, + "unique_request_identifier": { + "value": "req_987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PublishScheduledShift", + "qualifiedName": "SquareupApi.PublishScheduledShift", + "fullyQualifiedName": "SquareupApi.PublishScheduledShift@4.0.0", + "description": "Publish a scheduled shift to make it official.\n\nUse this tool to publish a scheduled shift, confirming its details. The draft shift details are finalized and moved to the published shift details, marking the shift as official.", + "parameters": [ + { + "name": "scheduled_shift_id", + "type": "string", + "required": true, + "description": "The ID of the scheduled shift to publish.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_idempotency_key", + "type": "string", + "required": true, + "description": "A unique identifier for ensuring the idempotency of the publish request. Prevents duplicate operations if the request is retried.", + "enum": null, + "inferrable": true + }, + { + "name": "current_shift_version", + "type": "integer", + "required": false, + "description": "The current version of the scheduled shift for optimistic concurrency control. If it doesn't match the server version, the request fails.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_audience", + "type": "string", + "required": false, + "description": "Specify who receives email notifications when a scheduled shift is published. Options are: ALL, AFFECTED, NONE.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'PublishScheduledShift'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.PublishScheduledShift", + "parameters": { + "scheduled_shift_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "unique_idempotency_key": { + "value": "abcdef123456", + "type": "string", + "required": true + }, + "current_shift_version": { + "value": 2, + "type": "integer", + "required": false + }, + "notification_audience": { + "value": "ALL", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RecordTransferOrderReceipt", + "qualifiedName": "SquareupApi.RecordTransferOrderReceipt", + "fullyQualifiedName": "SquareupApi.RecordTransferOrderReceipt@4.0.0", + "description": "Record received items for a transfer order.\n\n Use this tool to record the receipt of items for a transfer order, including handling partial receipts and damaged items. It updates the inventory based on item condition and progresses the order status.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "transfer_order_id", + "type": "string", + "required": false, + "description": "The ID of the transfer order for which items are being received. This ID is required to process the receipt of items, including partial and damaged quantities, and update inventory accordingly. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_READ", "INVENTORY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ReceiveTransferOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RecordTransferOrderReceipt", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "transfer_order_id": { + "value": "TO123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"items\":[{\"item_id\":\"ITEM001\",\"quantity_received\":10,\"condition\":\"good\"},{\"item_id\":\"ITEM002\",\"quantity_received\":5,\"condition\":\"damaged\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RedeemLoyaltyReward", + "qualifiedName": "SquareupApi.RedeemLoyaltyReward", + "fullyQualifiedName": "SquareupApi.RedeemLoyaltyReward@4.0.0", + "description": "Redeem a loyalty reward for a customer purchase.\n\nUse this tool to mark a loyalty reward as redeemed after a customer has completed a purchase. Suitable for use when processing orders outside the Orders API. Once redeemed, rewards cannot be reversed.", + "parameters": [ + { + "name": "idempotency_key", + "type": "string", + "required": true, + "description": "A unique string to identify this `RedeemLoyaltyReward` request, ensuring uniqueness for each request.", + "enum": null, + "inferrable": true + }, + { + "name": "location_id", + "type": "string", + "required": true, + "description": "The ID of the location where the loyalty reward is redeemed.", + "enum": null, + "inferrable": true + }, + { + "name": "loyalty_reward_id", + "type": "string", + "required": true, + "description": "The unique ID of the loyalty reward to redeem. Required for specifying which reward to process.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RedeemLoyaltyReward'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RedeemLoyaltyReward", + "parameters": { + "idempotency_key": { + "value": "abc123-unique-key-456", + "type": "string", + "required": true + }, + "location_id": { + "value": "loc-7890", + "type": "string", + "required": true + }, + "loyalty_reward_id": { + "value": "reward-1234", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RefundPayment", + "qualifiedName": "SquareupApi.RefundPayment", + "fullyQualifiedName": "SquareupApi.RefundPayment@4.0.0", + "description": "Refund a payment partially or fully using Square.\n\nUse this tool to refund the entire amount or a portion of a payment. It supports card payments as well as cash or external payments. Relevant for reversing transactions in case of errors or customer returns.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RefundPayment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RefundPayment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"payment_id\":\"abc123\",\"amount\":50.00,\"currency\":\"USD\",\"reason\":\"Customer Return\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveCustomerGroup", + "qualifiedName": "SquareupApi.RemoveCustomerGroup", + "fullyQualifiedName": "SquareupApi.RemoveCustomerGroup@4.0.0", + "description": "Remove a group membership from a customer.\n\nCall this tool to remove a specific group association from a customer using their customer ID and group ID.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The ID of the customer to remove from the group. Provide the unique identifier associated with the customer.", + "enum": null, + "inferrable": true + }, + { + "name": "group_id", + "type": "string", + "required": true, + "description": "The unique identifier of the customer group to remove the customer from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RemoveGroupFromCustomer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RemoveCustomerGroup", + "parameters": { + "customer_id": { + "value": "CUST123456", + "type": "string", + "required": true + }, + "group_id": { + "value": "GROUP78901", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveDisputeEvidence", + "qualifiedName": "SquareupApi.RemoveDisputeEvidence", + "fullyQualifiedName": "SquareupApi.RemoveDisputeEvidence@4.0.0", + "description": "Removes specified evidence from a dispute in Square.\n\nThis tool should be called when there's a need to remove specific evidence from a dispute in the Square platform. It ensures the evidence is not sent to the bank by Square.", + "parameters": [ + { + "name": "dispute_id", + "type": "string", + "required": true, + "description": "The ID of the dispute to remove evidence from. Provide a valid string ID to specify the dispute.", + "enum": null, + "inferrable": true + }, + { + "name": "evidence_id", + "type": "string", + "required": true, + "description": "The ID of the evidence to be removed from the dispute.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["DISPUTES_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteDisputeEvidence'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RemoveDisputeEvidence", + "parameters": { + "dispute_id": { + "value": "12345abcde67890fghij", + "type": "string", + "required": true + }, + "evidence_id": { + "value": "evidence_98765xyz12345abcd", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveInvoiceAttachment", + "qualifiedName": "SquareupApi.RemoveInvoiceAttachment", + "fullyQualifiedName": "SquareupApi.RemoveInvoiceAttachment@4.0.0", + "description": "Removes an attachment from an invoice.\n\nUse this tool to permanently delete an attachment from an invoice. Applicable only for invoices in 'DRAFT', 'SCHEDULED', 'UNPAID', or 'PARTIALLY_PAID' states.", + "parameters": [ + { + "name": "attachment_id", + "type": "string", + "required": true, + "description": "The unique identifier for the invoice attachment to be deleted. Required for removing the specified file from the invoice.", + "enum": null, + "inferrable": true + }, + { + "name": "invoice_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the invoice from which to delete the attachment. Applicable for specific invoice states.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVOICES_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteInvoiceAttachment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RemoveInvoiceAttachment", + "parameters": { + "attachment_id": { + "value": "att_123456789", + "type": "string", + "required": true + }, + "invoice_identifier": { + "value": "inv_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveLocationCustomAttribute", + "qualifiedName": "SquareupApi.RemoveLocationCustomAttribute", + "fullyQualifiedName": "SquareupApi.RemoveLocationCustomAttribute@4.0.0", + "description": "Delete a custom attribute from a location.\n\nUse this tool to delete a custom attribute associated with a specific location. The attribute must have a visibility setting of `VISIBILITY_READ_WRITE_VALUES` if owned by another application.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute to delete, matching the key of a custom attribute definition in the Square seller account. Use the qualified key if not the definition owner.", + "enum": null, + "inferrable": true + }, + { + "name": "location_id", + "type": "string", + "required": true, + "description": "The unique identifier for the target location where the custom attribute will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteLocationCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RemoveLocationCustomAttribute", + "parameters": { + "custom_attribute_key": { + "value": "location_theme_color", + "type": "string", + "required": true + }, + "location_id": { + "value": "L12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveMerchantAttribute", + "qualifiedName": "SquareupApi.RemoveMerchantAttribute", + "fullyQualifiedName": "SquareupApi.RemoveMerchantAttribute@4.0.0", + "description": "Delete a custom attribute from a merchant.\n\nUse this tool to remove a custom attribute associated with a merchant in Squareup. Deletion is possible if the attribute's visibility setting is 'VISIBILITY_READ_WRITE_VALUES' when owned by another application.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute to delete. Use the qualified key if the attribute is owned by another application.", + "enum": null, + "inferrable": true + }, + { + "name": "merchant_id", + "type": "string", + "required": true, + "description": "The unique identifier of the merchant whose custom attribute is being deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteMerchantCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RemoveMerchantAttribute", + "parameters": { + "custom_attribute_key": { + "value": "app1234.attribute5678", + "type": "string", + "required": true + }, + "merchant_id": { + "value": "merchant_001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ResumeSubscription", + "qualifiedName": "SquareupApi.ResumeSubscription", + "fullyQualifiedName": "SquareupApi.ResumeSubscription@4.0.0", + "description": "Resume a paused or deactivated subscription.\n\nUse this tool to schedule a resume action for subscriptions that are currently paused or deactivated.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The ID of the subscription to resume. Provide a valid subscription ID string.", + "enum": null, + "inferrable": true + }, + { + "name": "resume_change_timing", + "type": "string", + "required": false, + "description": "Specify when the pending change to resume the subscription takes effect. Choose between 'IMMEDIATE' or 'END_OF_BILLING_CYCLE'.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_resume_effective_date", + "type": "string", + "required": false, + "description": "The `YYYY-MM-DD`-formatted date when the subscription is reactivated.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [ + "ITEMS_READ", + "INVOICES_WRITE", + "CUSTOMERS_READ", + "SUBSCRIPTIONS_WRITE", + "ORDERS_WRITE", + "PAYMENTS_WRITE" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ResumeSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.ResumeSubscription", + "parameters": { + "subscription_id": { + "value": "sub_12345", + "type": "string", + "required": true + }, + "resume_change_timing": { + "value": "IMMEDIATE", + "type": "string", + "required": false + }, + "subscription_resume_effective_date": { + "value": "2023-10-15", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBooking", + "qualifiedName": "SquareupApi.RetrieveBooking", + "fullyQualifiedName": "SquareupApi.RetrieveBooking@4.0.0", + "description": "Retrieve detailed information about a booking.\n\nUse this tool to get comprehensive details of a specific booking by providing the booking ID. It requires appropriate OAuth permissions to access booking data.", + "parameters": [ + { + "name": "booking_id", + "type": "string", + "required": true, + "description": "The ID of the Booking object to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveBooking'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveBooking", + "parameters": { + "booking_id": { + "value": "Bk-12345-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBookingCustomAttribute", + "qualifiedName": "SquareupApi.RetrieveBookingCustomAttribute", + "fullyQualifiedName": "SquareupApi.RetrieveBookingCustomAttribute@4.0.0", + "description": "Retrieve custom attributes of a booking.\n\nThis tool retrieves a specific custom attribute for a booking using the booking ID and custom attribute key. Ensure proper OAuth permissions are set: `APPOINTMENTS_READ` for buyer-level, and `APPOINTMENTS_ALL_READ` with `APPOINTMENTS_READ` for seller-level.", + "parameters": [ + { + "name": "booking_id", + "type": "string", + "required": true, + "description": "The unique identifier for the target booking. This ID is required to retrieve the specific custom attribute for the booking.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute to retrieve. Must match the `key` of a custom attribute definition in the Square seller account. Use the qualified key if not the definition owner.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_version", + "type": "integer", + "required": false, + "description": "The desired version for strong consistency reads of the custom attribute. Uses the specified version or a higher one if available.", + "enum": null, + "inferrable": true + }, + { + "name": "include_custom_attribute_definition", + "type": "boolean", + "required": false, + "description": "Set to true to include the custom attribute definition, providing name, description, and data type details. Default is false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveBookingCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveBookingCustomAttribute", + "parameters": { + "booking_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "custom_attribute_key": { + "value": "preferred_contact_method", + "type": "string", + "required": true + }, + "custom_attribute_version": { + "value": 1, + "type": "integer", + "required": false + }, + "include_custom_attribute_definition": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBookingCustomAttributeDefinition", + "qualifiedName": "SquareupApi.RetrieveBookingCustomAttributeDefinition", + "fullyQualifiedName": "SquareupApi.RetrieveBookingCustomAttributeDefinition@4.0.0", + "description": "Retrieve a booking's custom attribute definition.\n\nUse this tool to retrieve detailed information about a specific booking's custom attribute definition. Ensure proper OAuth scope: `APPOINTMENTS_READ` for buyer-level or `APPOINTMENTS_ALL_READ` and `APPOINTMENTS_READ` for seller-level permissions.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key for the custom attribute definition to retrieve. Use a qualified key if not the definition owner.", + "enum": null, + "inferrable": true + }, + { + "name": "current_version_of_custom_attribute_definition", + "type": "integer", + "required": false, + "description": "The current version of the custom attribute definition for consistent reads. Provides the specified version or higher if available. Returns `BAD_REQUEST` if the version is higher than current.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveBookingCustomAttributeDefinition'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveBookingCustomAttributeDefinition", + "parameters": { + "custom_attribute_key": { + "value": "booking.custom.field.specialRequests", + "type": "string", + "required": true + }, + "current_version_of_custom_attribute_definition": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBookingProfile", + "qualifiedName": "SquareupApi.RetrieveBookingProfile", + "fullyQualifiedName": "SquareupApi.RetrieveBookingProfile@4.0.0", + "description": "Retrieve a seller's booking profile information.\n\nUse this tool to obtain details about a seller's booking profile. Ideal for acquiring booking-related information for businesses.", + "parameters": [], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_BUSINESS_SETTINGS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveBusinessBookingProfile'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveBookingProfile", + "parameters": {}, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBookings", + "qualifiedName": "SquareupApi.RetrieveBookings", + "fullyQualifiedName": "SquareupApi.RetrieveBookings@4.0.0", + "description": "Retrieve a collection of bookings.\n\nCall this tool to get a list of bookings. Ensure appropriate OAuth scopes are set depending on buyer-level or seller-level permissions.", + "parameters": [ + { + "name": "customer_id_for_bookings", + "type": "string", + "required": false, + "description": "The ID of the customer for whom to retrieve bookings. If not provided, retrieves bookings for all customers.", + "enum": null, + "inferrable": true + }, + { + "name": "earliest_start_time", + "type": "string", + "required": false, + "description": "The RFC 3339 timestamp specifying the earliest start time for bookings. Defaults to current time if not set.", + "enum": null, + "inferrable": true + }, + { + "name": "latest_start_time", + "type": "string", + "required": false, + "description": "The latest possible start time of bookings in RFC 3339 format. Defaults to 31 days after `start_at_min` if not set.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of results per page to return in a paged response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The pagination cursor for the next page of results. Leave empty for the first page.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_location_id", + "type": "string", + "required": false, + "description": "Retrieve bookings for a specific location by its ID. If not set, retrieves bookings for all locations.", + "enum": null, + "inferrable": true + }, + { + "name": "team_member_id", + "type": "string", + "required": false, + "description": "The ID of the team member to retrieve bookings for. Leave unset to retrieve bookings for all members.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListBookings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveBookings", + "parameters": { + "customer_id_for_bookings": { + "value": "12345", + "type": "string", + "required": false + }, + "earliest_start_time": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "latest_start_time": { + "value": "2023-10-31T23:59:59Z", + "type": "string", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "next_cursor_value", + "type": "string", + "required": false + }, + "specific_location_id": { + "value": "loc_67890", + "type": "string", + "required": false + }, + "team_member_id": { + "value": "tm_112233", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCardDetails", + "qualifiedName": "SquareupApi.RetrieveCardDetails", + "fullyQualifiedName": "SquareupApi.RetrieveCardDetails@4.0.0", + "description": "Retrieve details for a specific card.\n\nUse this tool to get information about a specific card by providing the card ID.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "Unique ID for the desired card to retrieve its details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveCard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveCardDetails", + "parameters": { + "card_id": { + "value": "c12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCashDrawerShiftSummary", + "qualifiedName": "SquareupApi.RetrieveCashDrawerShiftSummary", + "fullyQualifiedName": "SquareupApi.RetrieveCashDrawerShiftSummary@4.0.0", + "description": "Retrieve summary details for a specific cash drawer shift.\n\nThis tool fetches summary details for a single cash drawer shift. It should be used when you need to know the specifics of a particular shift, such as its total cash movements and status. Ideal for financial reconciliations and auditing tasks.", + "parameters": [ + { + "name": "location_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the location to retrieve cash drawer shifts from.", + "enum": null, + "inferrable": true + }, + { + "name": "shift_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the specific cash drawer shift to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CASH_DRAWER_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveCashDrawerShift'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveCashDrawerShiftSummary", + "parameters": { + "location_identifier": { + "value": "loc_123456", + "type": "string", + "required": true + }, + "shift_identifier": { + "value": "shift_7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCatalogObjects", + "qualifiedName": "SquareupApi.RetrieveCatalogObjects", + "fullyQualifiedName": "SquareupApi.RetrieveCatalogObjects@4.0.0", + "description": "Retrieve detailed catalog objects by provided IDs.\n\nThis tool retrieves a set of catalog objects based on provided IDs, including comprehensive details like item variations, modifier lists, and applicable tax IDs.", + "parameters": [ + { + "name": "catalog_object_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of IDs representing the CatalogObjects to retrieve. Each ID must be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "catalog_version", + "type": "integer", + "required": false, + "description": "The specific version of catalog objects to retrieve, allowing access to historical data. If omitted, the current version is used.", + "enum": null, + "inferrable": true + }, + { + "name": "include_category_path_to_root", + "type": "boolean", + "required": false, + "description": "Include the `path_to_root` list for each returned category instance if set to true. Shows the path from parent categories to root.", + "enum": null, + "inferrable": true + }, + { + "name": "include_deleted_objects", + "type": "boolean", + "required": false, + "description": "Set to `true` to include deleted objects (`is_deleted` attribute) in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_objects", + "type": "boolean", + "required": false, + "description": "If true, include additional related objects in the response. These are objects referenced by ID, included one level deep. Defaults to false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ITEMS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BatchRetrieveCatalogObjects'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveCatalogObjects", + "parameters": { + "catalog_object_ids": { + "value": ["abc123", "def456", "ghi789"], + "type": "array", + "required": true + }, + "catalog_version": { + "value": 2, + "type": "integer", + "required": false + }, + "include_category_path_to_root": { + "value": true, + "type": "boolean", + "required": false + }, + "include_deleted_objects": { + "value": false, + "type": "boolean", + "required": false + }, + "include_related_objects": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveChannelInfo", + "qualifiedName": "SquareupApi.RetrieveChannelInfo", + "fullyQualifiedName": "SquareupApi.RetrieveChannelInfo@4.0.0", + "description": "Retrieve detailed information about a specific channel.\n\nUse this tool to obtain detailed information about a channel using its channel ID.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "The unique identifier for the channel to retrieve information about.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CHANNELS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveChannel'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveChannelInfo", + "parameters": { + "channel_id": { + "value": "ch_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCustomerDetails", + "qualifiedName": "SquareupApi.RetrieveCustomerDetails", + "fullyQualifiedName": "SquareupApi.RetrieveCustomerDetails@4.0.0", + "description": "Retrieve detailed information for a specific customer.\n\nUse this tool to obtain detailed information about a single customer by their ID. Ideal for cases where customer-specific information is needed, such as contact details, purchase history, or personalized service.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier of the customer to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveCustomer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveCustomerDetails", + "parameters": { + "customer_id": { + "value": "cus_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveDeviceById", + "qualifiedName": "SquareupApi.RetrieveDeviceById", + "fullyQualifiedName": "SquareupApi.RetrieveDeviceById@4.0.0", + "description": "Retrieve specific device information using its ID.\n\nCall this tool to obtain details about a specific device using its unique ID. Useful for accessing device-related information in Square's system.", + "parameters": [ + { + "name": "device_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the device to retrieve information from Square's system.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["DEVICES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetDevice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveDeviceById", + "parameters": { + "device_identifier": { + "value": "abc12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveDeviceCode", + "qualifiedName": "SquareupApi.RetrieveDeviceCode", + "fullyQualifiedName": "SquareupApi.RetrieveDeviceCode@4.0.0", + "description": "Retrieve device code details by ID.\n\nUse this tool to obtain device code details when given a specific ID.", + "parameters": [ + { + "name": "device_code_id", + "type": "string", + "required": true, + "description": "The unique identifier for the device code to retrieve its details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["DEVICE_CREDENTIAL_MANAGEMENT"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetDeviceCode'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveDeviceCode", + "parameters": { + "device_code_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveDisputeDetails", + "qualifiedName": "SquareupApi.RetrieveDisputeDetails", + "fullyQualifiedName": "SquareupApi.RetrieveDisputeDetails@4.0.0", + "description": "Retrieve details about a specific dispute using its ID.\n\nCall this tool to obtain information about a particular dispute, including its details, by providing the dispute ID.", + "parameters": [ + { + "name": "dispute_id", + "type": "string", + "required": true, + "description": "The unique identifier for the dispute you want to retrieve details about.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["DISPUTES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveDispute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveDisputeDetails", + "parameters": { + "dispute_id": { + "value": "12345ABC", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveGiftCard", + "qualifiedName": "SquareupApi.RetrieveGiftCard", + "fullyQualifiedName": "SquareupApi.RetrieveGiftCard@4.0.0", + "description": "Retrieve a gift card using its account number.\n\nThis tool retrieves details of a gift card by using the gift card account number (GAN). It should be called when you need to access information about a specific gift card.", + "parameters": [ + { + "name": "gift_card_account_number", + "type": "string", + "required": true, + "description": "The account number (GAN) of the gift card to retrieve. Max length 255 digits; Square-issued GANs have 16 digits.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["GIFTCARDS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveGiftCardFromGAN'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveGiftCard", + "parameters": { + "gift_card_account_number": { + "value": "1234567812345678", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveGiftCardFromToken", + "qualifiedName": "SquareupApi.RetrieveGiftCardFromToken", + "fullyQualifiedName": "SquareupApi.RetrieveGiftCardFromToken@4.0.0", + "description": "Retrieve a gift card using a secure token.\n\nCall this tool to obtain gift card details using a secure payment token.", + "parameters": [ + { + "name": "secure_payment_token", + "type": "string", + "required": true, + "description": "The secure payment token used to retrieve the gift card. Generated by the Web Payments SDK or In-App Payments SDK.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["GIFTCARDS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveGiftCardFromNonce'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveGiftCardFromToken", + "parameters": { + "secure_payment_token": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveGiftCardSquareup", + "qualifiedName": "SquareupApi.RetrieveGiftCardSquareup", + "fullyQualifiedName": "SquareupApi.RetrieveGiftCardSquareup@4.0.0", + "description": "Retrieve gift card details using a gift card ID.\n\nUse this tool to obtain information about a specific gift card by providing its ID. Ideal for checking balance, status, or other gift card details.", + "parameters": [ + { + "name": "gift_card_id", + "type": "string", + "required": true, + "description": "The unique ID of the gift card to retrieve information.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["GIFTCARDS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveGiftCard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveGiftCardSquareup", + "parameters": { + "gift_card_id": { + "value": "GIFT123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveInventoryAdjustment", + "qualifiedName": "SquareupApi.RetrieveInventoryAdjustment", + "fullyQualifiedName": "SquareupApi.RetrieveInventoryAdjustment@4.0.0", + "description": "Fetches inventory adjustment details by ID.\n\nUse this tool to get details of a specific inventory adjustment by its ID. Ideal for tracking changes in inventory levels.", + "parameters": [ + { + "name": "inventory_adjustment_id", + "type": "string", + "required": true, + "description": "ID of the InventoryAdjustment to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveInventoryAdjustment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveInventoryAdjustment", + "parameters": { + "inventory_adjustment_id": { + "value": "INV123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveInventoryCounts", + "qualifiedName": "SquareupApi.RetrieveInventoryCounts", + "fullyQualifiedName": "SquareupApi.RetrieveInventoryCounts@4.0.0", + "description": "Retrieve current inventory counts for specific items and locations.\n\nCall this tool to get current inventory counts for specified catalog objects at specific locations. Results are sorted by newest first and can be filtered by changes since a given timestamp to facilitate synchronization.", + "parameters": [ + { + "name": "filter_by_catalog_object_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of `CatalogObject` IDs to filter the inventory results. Only applicable when set.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_location_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of Location IDs to filter inventory counts. Only applicable when set.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_updated_after_timestamp", + "type": "string", + "required": false, + "description": "Filter results to include only those with a `calculated_at` timestamp after the specified RFC 3339 time. Default is the UNIX epoch.", + "enum": null, + "inferrable": true + }, + { + "name": "inventory_state_filters", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter results by specific inventory states. Ignored states: NONE, SOLD, UNLINKED_RETURN. Provide as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A pagination cursor to retrieve the next set of results for the original query.", + "enum": null, + "inferrable": true + }, + { + "name": "record_limit", + "type": "integer", + "required": false, + "description": "Specify the number of inventory count records to return.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BatchRetrieveInventoryCounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveInventoryCounts", + "parameters": { + "filter_by_catalog_object_ids": { + "value": ["abc123", "def456"], + "type": "array", + "required": false + }, + "filter_by_location_ids": { + "value": ["location_1", "location_2"], + "type": "array", + "required": false + }, + "filter_by_updated_after_timestamp": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "inventory_state_filters": { + "value": ["IN_STOCK", "LOW_STOCK"], + "type": "array", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc", + "type": "string", + "required": false + }, + "record_limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveInventoryTransfer", + "qualifiedName": "SquareupApi.RetrieveInventoryTransfer", + "fullyQualifiedName": "SquareupApi.RetrieveInventoryTransfer@4.0.0", + "description": "Retrieve detailed inventory transfer information.\n\nUse this tool to obtain information about a specific inventory transfer using the transfer ID.", + "parameters": [ + { + "name": "inventory_transfer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the InventoryTransfer to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveInventoryTransfer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveInventoryTransfer", + "parameters": { + "inventory_transfer_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveInvoiceById", + "qualifiedName": "SquareupApi.RetrieveInvoiceById", + "fullyQualifiedName": "SquareupApi.RetrieveInvoiceById@4.0.0", + "description": "Retrieve invoice details using an invoice ID.\n\nUse this tool to get detailed information of an invoice by providing a specific invoice ID.", + "parameters": [ + { + "name": "invoice_id", + "type": "string", + "required": true, + "description": "The ID of the invoice to retrieve. This should be a unique string representing a specific invoice.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVOICES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetInvoice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveInvoiceById", + "parameters": { + "invoice_id": { + "value": "inv_1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveJobDetails", + "qualifiedName": "SquareupApi.RetrieveJobDetails", + "fullyQualifiedName": "SquareupApi.RetrieveJobDetails@4.0.0", + "description": "Retrieve details of a specified job.\n\nUse this tool to fetch detailed information about a specific job using the job's unique identifier.", + "parameters": [ + { + "name": "job_identifier", + "type": "string", + "required": true, + "description": "The unique string ID of the job to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["EMPLOYEES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveJob'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveJobDetails", + "parameters": { + "job_identifier": { + "value": "job_12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLocationCustomAttributeDefinition", + "qualifiedName": "SquareupApi.RetrieveLocationCustomAttributeDefinition", + "fullyQualifiedName": "SquareupApi.RetrieveLocationCustomAttributeDefinition@4.0.0", + "description": "Retrieve a location's custom attribute definition.\n\nUse this tool to obtain the custom attribute definition for a specified location in a Square seller account. Ensure the attribute's visibility is set appropriately to access it.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key for the custom attribute definition to retrieve, using the qualified key if not the owner.", + "enum": null, + "inferrable": true + }, + { + "name": "current_custom_attribute_version", + "type": "integer", + "required": false, + "description": "The version number of the custom attribute definition for consistent reads. Must match the current or higher version.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveLocationCustomAttributeDefinition'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveLocationCustomAttributeDefinition", + "parameters": { + "custom_attribute_key": { + "value": "location.customAttributeKey.12345", + "type": "string", + "required": true + }, + "current_custom_attribute_version": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLocationDetails", + "qualifiedName": "SquareupApi.RetrieveLocationDetails", + "fullyQualifiedName": "SquareupApi.RetrieveLocationDetails@4.0.0", + "description": "Retrieve details of a specific business location.\n\nUse this tool to get information about a specific location by providing its ID. Specify 'main' to get details of the main location.", + "parameters": [ + { + "name": "location_id", + "type": "string", + "required": true, + "description": "The ID of the location to retrieve. Use \"main\" to return the main location details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveLocation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveLocationDetails", + "parameters": { + "location_id": { + "value": "main", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLocationSettings", + "qualifiedName": "SquareupApi.RetrieveLocationSettings", + "fullyQualifiedName": "SquareupApi.RetrieveLocationSettings@4.0.0", + "description": "Retrieve settings for a Square-hosted checkout page location.\n\nCall this tool to get the specific settings configured for a location's Square-hosted checkout page. Useful for understanding location-specific checkout configurations.", + "parameters": [ + { + "name": "location_id", + "type": "string", + "required": true, + "description": "The unique ID of the location for which to retrieve the checkout page settings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveLocationSettings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveLocationSettings", + "parameters": { + "location_id": { + "value": "L123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLoyaltyAccount", + "qualifiedName": "SquareupApi.RetrieveLoyaltyAccount", + "fullyQualifiedName": "SquareupApi.RetrieveLoyaltyAccount@4.0.0", + "description": "Retrieve details of a specific loyalty account.\n\nThis tool fetches the information of a specific loyalty account using the account ID. Use it to access a member's loyalty details and activities.", + "parameters": [ + { + "name": "loyalty_account_id", + "type": "string", + "required": true, + "description": "The unique identifier of the loyalty account to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveLoyaltyAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveLoyaltyAccount", + "parameters": { + "loyalty_account_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLoyaltyPromotion", + "qualifiedName": "SquareupApi.RetrieveLoyaltyPromotion", + "fullyQualifiedName": "SquareupApi.RetrieveLoyaltyPromotion@4.0.0", + "description": "Retrieve details of a specific loyalty promotion.\n\nUse this tool to obtain information about a particular loyalty promotion by providing the program and promotion IDs. It should be called when you need to view the specifics of a loyalty promotion.", + "parameters": [ + { + "name": "loyalty_program_id", + "type": "string", + "required": true, + "description": "The ID of the base loyalty program. Obtain this by calling the RetrieveLoyaltyProgram API using the 'main' keyword.", + "enum": null, + "inferrable": true + }, + { + "name": "promotion_id", + "type": "string", + "required": true, + "description": "The ID of the loyalty promotion to retrieve. This ID is necessary to specify which promotion details to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveLoyaltyPromotion'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveLoyaltyPromotion", + "parameters": { + "loyalty_program_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "promotion_id": { + "value": "promo_001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveMerchantCustomAttribute", + "qualifiedName": "SquareupApi.RetrieveMerchantCustomAttribute", + "fullyQualifiedName": "SquareupApi.RetrieveMerchantCustomAttribute@4.0.0", + "description": "Retrieve a custom attribute associated with a merchant.\n\nUse this tool to get a specific custom attribute of a merchant, optionally including the attribute's definition. This can be used when you need to access merchant-specific settings or details defined by custom attributes.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute to retrieve, matching the `key` of a custom attribute definition in the Square seller account.", + "enum": null, + "inferrable": true + }, + { + "name": "merchant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the target merchant to retrieve the custom attribute for.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_version", + "type": "integer", + "required": false, + "description": "Integer value representing the custom attribute's current version for consistent reads. If specified version exceeds current, an error is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "include_custom_attribute_definition", + "type": "boolean", + "required": false, + "description": "Set to true to return the custom attribute definition, including name, description, and data type. Defaults to false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveMerchantCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveMerchantCustomAttribute", + "parameters": { + "custom_attribute_key": { + "value": "loyalty_points", + "type": "string", + "required": true + }, + "merchant_identifier": { + "value": "M123456789", + "type": "string", + "required": true + }, + "custom_attribute_version": { + "value": 2, + "type": "integer", + "required": false + }, + "include_custom_attribute_definition": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveMerchantInfo", + "qualifiedName": "SquareupApi.RetrieveMerchantInfo", + "fullyQualifiedName": "SquareupApi.RetrieveMerchantInfo@4.0.0", + "description": "Retrieve merchant details using their ID.\n\nUse this tool to get comprehensive information about a merchant by providing the merchant ID. This is useful for obtaining merchant-specific data, such as business details or other relevant merchant information.", + "parameters": [ + { + "name": "merchant_id", + "type": "string", + "required": true, + "description": "The ID of the merchant to retrieve. Use 'me' to get the merchant accessible to this call.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveMerchant'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveMerchantInfo", + "parameters": { + "merchant_id": { + "value": "me", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveMultipleOrders", + "qualifiedName": "SquareupApi.RetrieveMultipleOrders", + "fullyQualifiedName": "SquareupApi.RetrieveMultipleOrders@4.0.0", + "description": "Retrieve multiple orders using their IDs.\n\nThis tool retrieves details of multiple orders from Square using their IDs. It ignores any non-existent order IDs, ensuring no errors are returned for invalid IDs.", + "parameters": [ + { + "name": "order_ids_list", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of order IDs to retrieve, with a maximum of 100 per request.", + "enum": null, + "inferrable": true + }, + { + "name": "location_id", + "type": "string", + "required": false, + "description": "Optional location ID for the orders. Omit to use the current merchant's ID.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BatchRetrieveOrders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveMultipleOrders", + "parameters": { + "order_ids_list": { + "value": ["order_123", "order_456", "order_789"], + "type": "array", + "required": true + }, + "location_id": { + "value": "location_001", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveOnlineSiteSnippet", + "qualifiedName": "SquareupApi.RetrieveOnlineSiteSnippet", + "fullyQualifiedName": "SquareupApi.RetrieveOnlineSiteSnippet@4.0.0", + "description": "Retrieve a specific snippet from a Square Online site.\n\nUse this tool to get the snippet added by your application to a specific Square Online site. Ensure you have the site ID, which can be obtained by calling the ListSites API.", + "parameters": [ + { + "name": "site_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the Square Online site containing the snippet to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ONLINE_STORE_SNIPPETS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveSnippet'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveOnlineSiteSnippet", + "parameters": { + "site_identifier": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveOrderById", + "qualifiedName": "SquareupApi.RetrieveOrderById", + "fullyQualifiedName": "SquareupApi.RetrieveOrderById@4.0.0", + "description": "Retrieve an order's details using its ID.\n\nUse this tool to fetch the details of a specific order by providing its ID. It simplifies the process of obtaining order information from the Square API.", + "parameters": [ + { + "name": "order_id", + "type": "string", + "required": true, + "description": "The unique identifier of the order to retrieve from the Square API.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveOrderById", + "parameters": { + "order_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveOrderCustomAttribute", + "qualifiedName": "SquareupApi.RetrieveOrderCustomAttribute", + "fullyQualifiedName": "SquareupApi.RetrieveOrderCustomAttribute@4.0.0", + "description": "Retrieve a custom attribute for a specified order.\n\nUse this tool to get a custom attribute linked to an order. It can also retrieve the custom attribute definition if needed. Visibility settings determine if attributes from other applications can be accessed.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key for the custom attribute to retrieve, matching an existing attribute definition key.", + "enum": null, + "inferrable": true + }, + { + "name": "order_id", + "type": "string", + "required": true, + "description": "The unique ID of the target order to retrieve the custom attribute for.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_version", + "type": "integer", + "required": false, + "description": "Specify the current version of the custom attribute for optimistic concurrency control.", + "enum": null, + "inferrable": true + }, + { + "name": "include_custom_attribute_definition", + "type": "boolean", + "required": false, + "description": "Set to true to include custom attribute definition details such as name, description, and data type. Defaults to false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveOrderCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveOrderCustomAttribute", + "parameters": { + "custom_attribute_key": { + "value": "delivery_instructions", + "type": "string", + "required": true + }, + "order_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "custom_attribute_version": { + "value": 2, + "type": "integer", + "required": false + }, + "include_custom_attribute_definition": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveOrderCustomAttributeDefinition", + "qualifiedName": "SquareupApi.RetrieveOrderCustomAttributeDefinition", + "fullyQualifiedName": "SquareupApi.RetrieveOrderCustomAttributeDefinition@4.0.0", + "description": "Retrieve a custom attribute definition for an order.\n\nThis tool retrieves an order-related custom attribute definition from a Square seller account. It should be called when you need to access specific custom attribute information related to orders. Custom attributes must have visibility settings of VISIBILITY_READ_ONLY or VISIBILITY_READ_WRITE_VALUES unless defined by the seller.", + "parameters": [ + { + "name": "custom_attribute_key", + "type": "string", + "required": true, + "description": "The key of the custom attribute definition you want to retrieve. This should match the key set in Square seller account.", + "enum": null, + "inferrable": true + }, + { + "name": "current_custom_attribute_version", + "type": "integer", + "required": false, + "description": "Specify the current version of the custom attribute for optimistic concurrency control.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveOrderCustomAttributeDefinition'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveOrderCustomAttributeDefinition", + "parameters": { + "custom_attribute_key": { + "value": "order_color", + "type": "string", + "required": true + }, + "current_custom_attribute_version": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePaymentLink", + "qualifiedName": "SquareupApi.RetrievePaymentLink", + "fullyQualifiedName": "SquareupApi.RetrievePaymentLink@4.0.0", + "description": "Retrieve a payment link using its ID.\n\nThis tool retrieves details of a payment link by its unique ID. It's useful for getting information about a specific payment link set up in your Square account.", + "parameters": [ + { + "name": "payment_link_id", + "type": "string", + "required": true, + "description": "The unique ID of the payment link to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrievePaymentLink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrievePaymentLink", + "parameters": { + "payment_link_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePaymentsList", + "qualifiedName": "SquareupApi.RetrievePaymentsList", + "fullyQualifiedName": "SquareupApi.RetrievePaymentsList@4.0.0", + "description": "Retrieve a list of payments from your account.\n\nUse this tool to access a list of payments made through your account. It provides a consistent overview of payment transactions, with a maximum of 100 results per page. Note that changes to payments may take a few seconds to reflect.", + "parameters": [ + { + "name": "card_last_four_digits", + "type": "string", + "required": false, + "description": "Filter payments by the last four digits of the payment card used.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time", + "type": "string", + "required": false, + "description": "End of the time range for retrieving payments, in RFC 3339 format. Defaults to the current time.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time_updated_for_payments", + "type": "string", + "required": false, + "description": "The end time for retrieving payments, in RFC 3339 format, based on `updated_at`.", + "enum": null, + "inferrable": true + }, + { + "name": "is_offline_payment", + "type": "boolean", + "required": false, + "description": "Set to true to include offline payments, or false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of payment results to return per page (up to 100). Defaults to 100 if more is specified.", + "enum": null, + "inferrable": true + }, + { + "name": "offline_end_time", + "type": "string", + "required": false, + "description": "The end time in RFC 3339 format for retrieving offline payments, based on the `offline_payment_details.client_created_at` field. Default is the current time.", + "enum": null, + "inferrable": true + }, + { + "name": "offline_payment_start_time", + "type": "string", + "required": false, + "description": "Start of the time range for retrieving offline payments in RFC 3339 format. Uses 'offline_payment_details.client_created_at'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A pagination cursor for fetching the next set of payment results from the ListPayments endpoint.", + "enum": null, + "inferrable": true + }, + { + "name": "payment_card_brand", + "type": "string", + "required": false, + "description": "The brand of the payment card to filter payments (e.g., VISA, MasterCard).", + "enum": null, + "inferrable": true + }, + { + "name": "results_sort_order", + "type": "string", + "required": false, + "description": "Specify the order of the results: `ASC` for oldest to newest, `DESC` for newest to oldest (default).", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_field", + "type": "string", + "required": false, + "description": "Choose the field to sort results by. Options: `CREATED_AT`, `OFFLINE_CREATED_AT`, `UPDATED_AT`. Default is `CREATED_AT`.", + "enum": null, + "inferrable": true + }, + { + "name": "specific_location_id", + "type": "string", + "required": false, + "description": "Limit results to the specified location ID. Defaults to the main location associated with the seller.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_range", + "type": "string", + "required": false, + "description": "Start time to retrieve payments, in RFC 3339 format. Defaults to one year ago if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "total_payment_amount", + "type": "integer", + "required": false, + "description": "The exact amount in the total_money field for a payment. Use an integer to specify the amount in cents.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_at_start_time", + "type": "string", + "required": false, + "description": "Start of the time range for retrieving payments based on the `updated_at` field, in RFC 3339 format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'ListPayments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrievePaymentsList", + "parameters": { + "card_last_four_digits": { + "value": "1234", + "type": "string", + "required": false + }, + "end_time": { + "value": "2023-10-10T15:30:00Z", + "type": "string", + "required": false + }, + "end_time_updated_for_payments": { + "value": "2023-10-09T15:30:00Z", + "type": "string", + "required": false + }, + "is_offline_payment": { + "value": true, + "type": "boolean", + "required": false + }, + "max_results_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "offline_end_time": { + "value": "2023-10-09T15:00:00Z", + "type": "string", + "required": false + }, + "offline_payment_start_time": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "abcdefg1234567", + "type": "string", + "required": false + }, + "payment_card_brand": { + "value": "VISA", + "type": "string", + "required": false + }, + "results_sort_order": { + "value": "ASC", + "type": "string", + "required": false + }, + "sort_by_field": { + "value": "CREATED_AT", + "type": "string", + "required": false + }, + "specific_location_id": { + "value": "location123", + "type": "string", + "required": false + }, + "start_time_range": { + "value": "2022-10-10T00:00:00Z", + "type": "string", + "required": false + }, + "total_payment_amount": { + "value": 5000, + "type": "integer", + "required": false + }, + "updated_at_start_time": { + "value": "2023-10-05T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveRefundDetails", + "qualifiedName": "SquareupApi.RetrieveRefundDetails", + "fullyQualifiedName": "SquareupApi.RetrieveRefundDetails@4.0.0", + "description": "Retrieve details of a specific refund using the refund ID.\n\nUse this tool to get detailed information about a refund by providing the refund ID. It's useful for checking the status and details of a refund processed through Square.", + "parameters": [ + { + "name": "refund_unique_id", + "type": "string", + "required": true, + "description": "The unique ID for the specific refund to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPaymentRefund'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveRefundDetails", + "parameters": { + "refund_unique_id": { + "value": "ref_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSalesChannels", + "qualifiedName": "SquareupApi.RetrieveSalesChannels", + "fullyQualifiedName": "SquareupApi.RetrieveSalesChannels@4.0.0", + "description": "Retrieve bulk information about sales channels.\n\nUse this tool to fetch detailed information about multiple sales channels for business operations.", + "parameters": [ + { + "name": "channel_identifiers", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of IDs representing sales channels to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CHANNELS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkRetrieveChannels'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveSalesChannels", + "parameters": { + "channel_identifiers": { + "value": ["123", "456", "789"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveScheduledShift", + "qualifiedName": "SquareupApi.RetrieveScheduledShift", + "fullyQualifiedName": "SquareupApi.RetrieveScheduledShift@4.0.0", + "description": "Retrieve details of a scheduled shift by ID.\n\nUse this tool to obtain information about a specific scheduled shift using its ID. This is useful for accessing shift details in scheduling and labor management systems.", + "parameters": [ + { + "name": "scheduled_shift_id", + "type": "string", + "required": true, + "description": "The unique identifier of the scheduled shift to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveScheduledShift'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveScheduledShift", + "parameters": { + "scheduled_shift_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSellerLocationBookingProfile", + "qualifiedName": "SquareupApi.RetrieveSellerLocationBookingProfile", + "fullyQualifiedName": "SquareupApi.RetrieveSellerLocationBookingProfile@4.0.0", + "description": "Retrieve a seller's location booking profile.\n\nUse this tool to get details about a seller's location booking profile by providing the location ID.", + "parameters": [ + { + "name": "location_id", + "type": "string", + "required": true, + "description": "The ID of the location for which to retrieve the booking profile.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_BUSINESS_SETTINGS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveLocationBookingProfile'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveSellerLocationBookingProfile", + "parameters": { + "location_id": { + "value": "loc_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSquareMerchantSettings", + "qualifiedName": "SquareupApi.RetrieveSquareMerchantSettings", + "fullyQualifiedName": "SquareupApi.RetrieveSquareMerchantSettings@4.0.0", + "description": "Retrieve Square merchant settings for checkout pages.\n\nUse this tool to get the settings for a merchant's Square-hosted checkout page, which could be useful for understanding or managing the checkout configuration.", + "parameters": [], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENT_METHODS_READ", "MERCHANT_PROFILE_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveMerchantSettings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveSquareMerchantSettings", + "parameters": {}, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSubscriptionDetails", + "qualifiedName": "SquareupApi.RetrieveSubscriptionDetails", + "fullyQualifiedName": "SquareupApi.RetrieveSubscriptionDetails@4.0.0", + "description": "Retrieve details of a specific subscription using its ID.\n\nUse this tool to obtain information about a subscription by providing its unique subscription ID. Useful for accessing current subscription status, billing, and service details.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The unique ID of the subscription to retrieve details for. Necessary to specify which subscription to access.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_info", + "type": "string", + "required": false, + "description": "Specify related info to include in the response. Use 'actions' to include scheduled actions on the subscription.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["SUBSCRIPTIONS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveSubscriptionDetails", + "parameters": { + "subscription_id": { + "value": "sub_1234567890", + "type": "string", + "required": true + }, + "include_related_info": { + "value": "actions", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTeamBookingProfiles", + "qualifiedName": "SquareupApi.RetrieveTeamBookingProfiles", + "fullyQualifiedName": "SquareupApi.RetrieveTeamBookingProfiles@4.0.0", + "description": "Retrieve booking profiles for one or more team members.\n\nUse this tool to get booking profiles of specified team members. Useful for accessing and managing team members' booking information.", + "parameters": [ + { + "name": "team_member_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "A non-empty list of team member IDs to retrieve booking profiles for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_BUSINESS_SETTINGS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkRetrieveTeamMemberBookingProfiles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveTeamBookingProfiles", + "parameters": { + "team_member_ids": { + "value": ["12345", "67890", "54321"], + "type": "array", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTeamMemberWageSetting", + "qualifiedName": "SquareupApi.RetrieveTeamMemberWageSetting", + "fullyQualifiedName": "SquareupApi.RetrieveTeamMemberWageSetting@4.0.0", + "description": "Retrieve wage settings for a specified team member.\n\nThis tool retrieves the wage settings of a team member using their TeamMember ID. It's useful for accessing specific wage details related to a team member. If troubleshooting is needed, refer to the linked Square documentation.", + "parameters": [ + { + "name": "team_member_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team member whose wage setting needs to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["EMPLOYEES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveWageSetting'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveTeamMemberWageSetting", + "parameters": { + "team_member_id": { + "value": "tm_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTerminalAction", + "qualifiedName": "SquareupApi.RetrieveTerminalAction", + "fullyQualifiedName": "SquareupApi.RetrieveTerminalAction@4.0.0", + "description": "Retrieve a Terminal action request by action ID.\n\nCall this tool to get detailed information about a specific Terminal action using its action ID. Terminal action requests are available for retrieval up to 30 days.", + "parameters": [ + { + "name": "terminal_action_id", + "type": "string", + "required": true, + "description": "Unique ID for the desired Terminal Action. This is required to retrieve the specific action request.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTerminalAction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveTerminalAction", + "parameters": { + "terminal_action_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTerminalCheckout", + "qualifiedName": "SquareupApi.RetrieveTerminalCheckout", + "fullyQualifiedName": "SquareupApi.RetrieveTerminalCheckout@4.0.0", + "description": "Retrieve a Terminal checkout request by checkout ID.\n\nUse this tool to get details of a Terminal checkout request using a specific checkout ID. Ideal for accessing checkout information within a 30-day period.", + "parameters": [ + { + "name": "checkout_id", + "type": "string", + "required": true, + "description": "The unique ID for the desired TerminalCheckout request. Use this ID to retrieve specific checkout details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTerminalCheckout'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveTerminalCheckout", + "parameters": { + "checkout_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTokenStatus", + "qualifiedName": "SquareupApi.RetrieveTokenStatus", + "fullyQualifiedName": "SquareupApi.RetrieveTokenStatus@4.0.0", + "description": "Retrieve the status of an OAuth or personal access token.\n\nUse this tool to get information on the validity and status of an OAuth access token or a personal access token. Call this tool to check if a token is expired or unauthorized.", + "parameters": [], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveTokenStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveTokenStatus", + "parameters": {}, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTransferOrderDetails", + "qualifiedName": "SquareupApi.RetrieveTransferOrderDetails", + "fullyQualifiedName": "SquareupApi.RetrieveTransferOrderDetails@4.0.0", + "description": "Retrieve detailed information of a specific transfer order.\n\nUse this tool to get comprehensive details of a transfer order by providing its ID. This includes status, dates, notes, line items, source and destination locations, and tracking info if available.", + "parameters": [ + { + "name": "transfer_order_id", + "type": "string", + "required": true, + "description": "The ID of the transfer order to retrieve, required to get order details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveTransferOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveTransferOrderDetails", + "parameters": { + "transfer_order_id": { + "value": "TO123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveVendorDetails", + "qualifiedName": "SquareupApi.RetrieveVendorDetails", + "fullyQualifiedName": "SquareupApi.RetrieveVendorDetails@4.0.0", + "description": "Retrieve detailed information about a vendor by ID.\n\nThis tool retrieves information about a specific vendor using their Vendor ID and should be called when vendor details are needed.", + "parameters": [ + { + "name": "vendor_id", + "type": "string", + "required": true, + "description": "The unique ID of the vendor to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["VENDOR_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveVendor'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveVendorDetails", + "parameters": { + "vendor_id": { + "value": "V123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveVendors", + "qualifiedName": "SquareupApi.RetrieveVendors", + "fullyQualifiedName": "SquareupApi.RetrieveVendors@4.0.0", + "description": "Retrieve detailed information about specific vendors.\n\nUse this tool to obtain detailed information for vendors by their IDs. Ideal for managing vendor relationships or verifying vendor details.", + "parameters": [ + { + "name": "vendor_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of vendor IDs to retrieve details for. Provide the IDs as an array of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["VENDOR_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkRetrieveVendors'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveVendors", + "parameters": { + "vendor_ids": { + "value": ["vendor_001", "vendor_002", "vendor_003"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveWebhookSubscription", + "qualifiedName": "SquareupApi.RetrieveWebhookSubscription", + "fullyQualifiedName": "SquareupApi.RetrieveWebhookSubscription@4.0.0", + "description": "Retrieve details of a specific webhook subscription.\n\nThis tool retrieves information about a specific webhook subscription using its unique ID. It should be called when you need to access details of a webhook provided by the subscription ID.", + "parameters": [ + { + "name": "webhook_subscription_id", + "type": "string", + "required": true, + "description": "The unique ID of the webhook subscription to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RetrieveWebhookSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RetrieveWebhookSubscription", + "parameters": { + "webhook_subscription_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RevokeOauthAccessToken", + "qualifiedName": "SquareupApi.RevokeOauthAccessToken", + "fullyQualifiedName": "SquareupApi.RevokeOauthAccessToken@4.0.0", + "description": "Revoke all OAuth access tokens for an account.\n\nThis tool revokes all OAuth access tokens for a given account associated with your application. It should be called when you need to invalidate the access tokens generated through the OAuth flow. Note that all tokens will be revoked regardless of which one is specified.", + "parameters": [ + { + "name": "application_client_id", + "type": "string", + "required": false, + "description": "The Square-issued ID for your application, found on the OAuth page in the Developer Dashboard.", + "enum": null, + "inferrable": true + }, + { + "name": "merchant_access_token", + "type": "string", + "required": false, + "description": "The access token of the merchant whose token you want to revoke. Cannot be used with `merchant_id`.", + "enum": null, + "inferrable": true + }, + { + "name": "merchant_id_to_revoke", + "type": "string", + "required": false, + "description": "The merchant ID whose token you want to revoke. Do not use if 'access_token' is provided.", + "enum": null, + "inferrable": true + }, + { + "name": "terminate_single_access_token", + "type": "boolean", + "required": false, + "description": "If true, terminate only the specified access token without revoking the entire authorization. Defaults to false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'RevokeToken'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.RevokeOauthAccessToken", + "parameters": { + "application_client_id": { + "value": "sq-1234abcd5678efghijkl", + "type": "string", + "required": false + }, + "merchant_access_token": { + "value": "EAAA...sampleAccessToken...", + "type": "string", + "required": false + }, + "merchant_id_to_revoke": { + "value": "M123456789", + "type": "string", + "required": false + }, + "terminate_single_access_token": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchBookingAvailability", + "qualifiedName": "SquareupApi.SearchBookingAvailability", + "fullyQualifiedName": "SquareupApi.SearchBookingAvailability@4.0.0", + "description": "Find available booking slots for appointments.\n\nUse this tool to search for available booking slots. It requires appropriate permissions depending on user level (buyer or seller).\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchAvailability'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchBookingAvailability", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"service_id\":\"123456\",\"customer_id\":\"789012\",\"duration\":\"60\",\"start_time\":\"2023-10-15T10:00:00Z\",\"end_time\":\"2023-10-15T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchCatalogItems", + "qualifiedName": "SquareupApi.SearchCatalogItems", + "fullyQualifiedName": "SquareupApi.SearchCatalogItems@4.0.0", + "description": "Find catalog items or variations based on search filters.\n\nUse this tool to search for catalog items or item variations by matching supported search attributes and custom attribute values against specified query filters. This tool is specifically for searching items or item variations, unlike the broader SearchCatalogObjects endpoint.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ITEMS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchCatalogItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchCatalogItems", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"query\":\"t-shirt\",\"filters\":{\"category\":\"apparel\",\"color\":\"blue\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchCatalogObjects", + "qualifiedName": "SquareupApi.SearchCatalogObjects", + "fullyQualifiedName": "SquareupApi.SearchCatalogObjects@4.0.0", + "description": "Search for catalog objects using specified query filters.\n\nUse this tool to search for any type of catalog object through the Squareup API by matching supported search attribute values. This tool is ideal for retrieving catalog objects, including deleted ones, based on provided query filters. It's useful for comprehensive catalog searches excluding custom attribute values.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ITEMS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchCatalogObjects'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchCatalogObjects", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"object_types\":[\"ITEM\",\"CATEGORY\"],\"cursor\":\"abc123\",\"limit\":10}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchInvoices", + "qualifiedName": "SquareupApi.SearchInvoices", + "fullyQualifiedName": "SquareupApi.SearchInvoices@4.0.0", + "description": "Search for invoices based on location and optional customer.\n\nThis tool searches for invoices from a specified location and can filter by customer. It supports pagination; if results are truncated, a cursor is provided for retrieving more invoices.", + "parameters": [ + { + "name": "location_id", + "type": "array", + "innerType": "string", + "required": true, + "description": "Specify the location ID to limit the invoice search. Only one location ID can be provided.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_id", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify the customer ID to limit the search to invoices for that customer. Only one customer can be specified.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_invoice_count", + "type": "integer", + "required": false, + "description": "The maximum number of invoices to return, up to 200. Defaults to 100 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor to retrieve the next set of results for pagination. Use the cursor from the previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_field", + "type": "string", + "required": false, + "description": "Specify the field for sorting results. Default is 'INVOICE_SORT_DATE'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "The order in which results are returned, either 'DESC' for descending or 'ASC' for ascending.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVOICES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchInvoices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchInvoices", + "parameters": { + "location_id": { + "value": ["location_123"], + "type": "array", + "required": true + }, + "customer_id": { + "value": ["customer_456"], + "type": "array", + "required": false + }, + "maximum_invoice_count": { + "value": 150, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_789", + "type": "string", + "required": false + }, + "sort_by_field": { + "value": "INVOICE_SORT_AMOUNT", + "type": "string", + "required": false + }, + "sort_order": { + "value": "DESC", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchLoyaltyAccounts", + "qualifiedName": "SquareupApi.SearchLoyaltyAccounts", + "fullyQualifiedName": "SquareupApi.SearchLoyaltyAccounts@4.0.0", + "description": "Search for loyalty accounts by phone number or customer ID.\n\nThis tool searches for loyalty accounts within a loyalty program. Use it when you need to find accounts based on a phone number or customer ID. To retrieve all accounts, you can leave the query empty. The results are sorted by the account creation date.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchLoyaltyAccounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchLoyaltyAccounts", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"query\":\"1234567890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchLoyaltyEvents", + "qualifiedName": "SquareupApi.SearchLoyaltyEvents", + "fullyQualifiedName": "SquareupApi.SearchLoyaltyEvents@4.0.0", + "description": "Retrieve and search for Square loyalty events.\n\nThis tool allows you to search for loyalty events within a Square loyalty program, which logs events such as points earned, redeemed, or expired. Use this tool to get details of these events sorted by creation date.", + "parameters": [ + { + "name": "end_time", + "type": "string", + "required": false, + "description": "Datetime in RFC 3339 format indicating when the time range ends for the search.", + "enum": null, + "inferrable": true + }, + { + "name": "location_ids_for_events_query", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of Location IDs for querying loyalty events. Multiple IDs use OR logic.", + "enum": null, + "inferrable": true + }, + { + "name": "loyalty_account_id", + "type": "string", + "required": false, + "description": "The ID of the loyalty account associated with the events to filter.", + "enum": null, + "inferrable": true + }, + { + "name": "loyalty_event_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of loyalty event types to filter results. Multiple values are combined using OR logic. Refer to LoyaltyEventType for options.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_count", + "type": "integer", + "required": false, + "description": "The maximum number of loyalty events to include in the response. Defaults to 30.", + "enum": null, + "inferrable": true + }, + { + "name": "order_id_filter", + "type": "string", + "required": false, + "description": "The ID of the order associated with the event to filter results.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Provide a pagination cursor to retrieve the next set of results from a previous query.", + "enum": null, + "inferrable": true + }, + { + "name": "start_datetime", + "type": "string", + "required": false, + "description": "A datetime value in RFC 3339 format indicating when the time range starts for the search query.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchLoyaltyEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchLoyaltyEvents", + "parameters": { + "end_time": { + "value": "2023-10-01T23:59:59Z", + "type": "string", + "required": false + }, + "location_ids_for_events_query": { + "value": ["location_1", "location_2"], + "type": "array", + "required": false + }, + "loyalty_account_id": { + "value": "loyalty_account_123", + "type": "string", + "required": false + }, + "loyalty_event_types": { + "value": ["points_earned", "points_redeemed"], + "type": "array", + "required": false + }, + "max_results_count": { + "value": 30, + "type": "integer", + "required": false + }, + "order_id_filter": { + "value": "order_456", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_789", + "type": "string", + "required": false + }, + "start_datetime": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchLoyaltyRewards", + "qualifiedName": "SquareupApi.SearchLoyaltyRewards", + "fullyQualifiedName": "SquareupApi.SearchLoyaltyRewards@4.0.0", + "description": "Search for loyalty rewards with optional filters.\n\nThis tool searches for loyalty rewards and can retrieve results for all loyalty accounts when no filters are applied. If a query object is used, the `loyalty_account_id` is required, while `status` is optional. Results are sorted by `updated_at` in descending order.", + "parameters": [ + { + "name": "loyalty_account_id", + "type": "string", + "required": false, + "description": "The ID of the loyalty account to which the loyalty reward belongs. Required if using a query object.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results", + "type": "integer", + "required": false, + "description": "The maximum number of loyalty reward results to return. Default is 30.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor for pagination to retrieve the next set of results from a previous call.", + "enum": null, + "inferrable": true + }, + { + "name": "reward_status", + "type": "string", + "required": false, + "description": "The status of the loyalty reward. Options: ISSUED, REDEEMED, DELETED.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["LOYALTY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchLoyaltyRewards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchLoyaltyRewards", + "parameters": { + "loyalty_account_id": { + "value": "Loyalty123456", + "type": "string", + "required": false + }, + "maximum_results": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc123", + "type": "string", + "required": false + }, + "reward_status": { + "value": "ISSUED", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchSquareCustomers", + "qualifiedName": "SquareupApi.SearchSquareCustomers", + "fullyQualifiedName": "SquareupApi.SearchSquareCustomers@4.0.0", + "description": "Search customer profiles in a Square account.\n\nUse this tool to search for customer profiles in a Square account by applying various query filters. If no filters are provided, it returns all profiles sorted alphabetically by name.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchCustomers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchSquareCustomers", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"query\":\"John Doe\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchSquareEvents", + "qualifiedName": "SquareupApi.SearchSquareEvents", + "fullyQualifiedName": "SquareupApi.SearchSquareEvents@4.0.0", + "description": "Search for Square API events within a specified timeframe.\n\nUse this tool to find events from the Square API that have occurred within a 28-day period. Ideal for tracking event history and obtaining specific event details.", + "parameters": [ + { + "name": "end_time_range", + "type": "string", + "required": false, + "description": "A datetime in RFC 3339 format marking the end of the time range for the event search.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_location_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of location IDs to filter events by specific locations.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_event_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of event types to filter the search results by. Each event type should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_events_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of events to return per page, up to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "merchant_ids_filter", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of merchant IDs used to filter events by merchant.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A pagination cursor for retrieving the next set of events from a previous search query.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_key_for_event_search", + "type": "string", + "required": false, + "description": "Set the key by which to sort the returned events. Options include 'DEFAULT'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the order (chronological or alphabetical) for sorting results. Choose 'ASC' for ascending or 'DESC' for descending order.", + "enum": null, + "inferrable": true + }, + { + "name": "time_range_start", + "type": "string", + "required": false, + "description": "Datetime value in RFC 3339 format indicating the start of the event timeframe.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchSquareEvents", + "parameters": { + "end_time_range": { + "value": "2023-10-15T23:59:59Z", + "type": "string", + "required": false + }, + "filter_by_location_ids": { + "value": ["loc_1", "loc_2"], + "type": "array", + "required": false + }, + "filter_event_types": { + "value": ["transaction", "refund"], + "type": "array", + "required": false + }, + "maximum_events_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "merchant_ids_filter": { + "value": ["merchant_1", "merchant_2"], + "type": "array", + "required": false + }, + "pagination_cursor": { + "value": "cursor_12345", + "type": "string", + "required": false + }, + "sort_key_for_event_search": { + "value": "DEFAULT", + "type": "string", + "required": false + }, + "sort_order": { + "value": "ASC", + "type": "string", + "required": false + }, + "time_range_start": { + "value": "2023-09-15T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchSquareOrders", + "qualifiedName": "SquareupApi.SearchSquareOrders", + "fullyQualifiedName": "SquareupApi.SearchSquareOrders@4.0.0", + "description": "Search and retrieve orders from Square locations.\n\nUse this tool to search for all orders across specified Square locations, including sales, returns, and exchanges. The search can include filters, sorting, and specify whether to return detailed order information or a summary.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchOrders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchSquareOrders", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"location_ids\":[\"L12345\",\"L67890\"],\"filter\":{\"date_range\":{\"start_at\":\"2023-10-01T00:00:00Z\",\"end_at\":\"2023-10-31T23:59:59Z\"},\"status\":\"COMPLETED\"},\"sort\":{\"created_at\":\"DESC\"},\"include_partial\":false}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchSubscriptions", + "qualifiedName": "SquareupApi.SearchSubscriptions", + "fullyQualifiedName": "SquareupApi.SearchSubscriptions@4.0.0", + "description": "Search for subscriptions by location and customer IDs.\n\nThis tool searches for subscriptions, ordering them by creation date, location, and optionally by customer IDs. If no location or customer IDs are provided, it searches across all available locations and customers.", + "parameters": [ + { + "name": "customer_ids_to_filter", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of customer IDs to filter subscriptions by. Leave empty to include all customers.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_location_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of location IDs to filter subscriptions by location.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_source_applications", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of source application names to filter subscriptions by.", + "enum": null, + "inferrable": true + }, + { + "name": "include_related_info", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify related information to include in the response, such as 'actions' for scheduled actions on subscriptions.", + "enum": null, + "inferrable": true + }, + { + "name": "max_subscriptions_returned", + "type": "integer", + "required": false, + "description": "Defines the maximum number of subscriptions to return in a single response.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for fetching the next set of subscription results if previous results exceeded the limit. If not set, returns the last page of results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["SUBSCRIPTIONS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchSubscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchSubscriptions", + "parameters": { + "customer_ids_to_filter": { + "value": ["cust_001", "cust_002"], + "type": "array", + "required": false + }, + "filter_by_location_ids": { + "value": ["loc_001", "loc_002"], + "type": "array", + "required": false + }, + "filter_by_source_applications": { + "value": ["web", "mobile"], + "type": "array", + "required": false + }, + "include_related_info": { + "value": ["actions"], + "type": "array", + "required": false + }, + "max_subscriptions_returned": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchTeamMembers", + "qualifiedName": "SquareupApi.SearchTeamMembers", + "fullyQualifiedName": "SquareupApi.SearchTeamMembers@4.0.0", + "description": "Retrieve a filtered list of team members for a business.\n\nThis tool retrieves a paginated list of `TeamMember` objects associated with a business. It allows filtering by location IDs, status (`ACTIVE` or `INACTIVE`), or whether the team member is the Square account owner. Use this to manage or view team member details based on specific criteria.", + "parameters": [ + { + "name": "filter_by_location_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter team members by specified location IDs. If empty, includes all locations.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_team_members_per_page", + "type": "integer", + "required": false, + "description": "Specify the maximum number of team members to return per page, default is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "The cursor used to retrieve the next page of results in a paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "return_account_owner_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only the team member who is the Square account owner.", + "enum": null, + "inferrable": true + }, + { + "name": "team_member_status", + "type": "string", + "required": false, + "description": "Filter team members by their status: 'ACTIVE' or 'INACTIVE'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["EMPLOYEES_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchTeamMembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchTeamMembers", + "parameters": { + "filter_by_location_ids": { + "value": ["loc_123", "loc_456"], + "type": "array", + "required": false + }, + "maximum_team_members_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_789", + "type": "string", + "required": false + }, + "return_account_owner_only": { + "value": false, + "type": "boolean", + "required": false + }, + "team_member_status": { + "value": "ACTIVE", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchTerminalActions", + "qualifiedName": "SquareupApi.SearchTerminalActions", + "fullyQualifiedName": "SquareupApi.SearchTerminalActions@4.0.0", + "description": "Retrieve a filtered list of terminal action requests.\n\nUse this tool to get a list of terminal action requests created by your account. Terminal actions are accessible for 30 days.", + "parameters": [ + { + "name": "device_id_filter", + "type": "string", + "required": false, + "description": "Filter TerminalActions by a specific device ID. Leave blank to include all devices.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time_rfc3339", + "type": "string", + "required": false, + "description": "A datetime in RFC 3339 format indicating the end of the time range.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_terminal_action_status", + "type": "string", + "required": false, + "description": "Filter results by the status of the TerminalAction (e.g., `PENDING`, `IN_PROGRESS`, `CANCEL_REQUESTED`, `CANCELED`, `COMPLETED`).", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A pagination cursor from a previous response to retrieve the next set of results.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Limit the number of results returned for a single request.", + "enum": null, + "inferrable": true + }, + { + "name": "result_sort_order", + "type": "string", + "required": false, + "description": "Defines the order ('DESC' or 'ASC') for sorting the terminal action requests.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_rfc3339", + "type": "string", + "required": false, + "description": "The start datetime in RFC 3339 format for filtering terminal actions.", + "enum": null, + "inferrable": true + }, + { + "name": "terminal_action_type", + "type": "string", + "required": false, + "description": "Specify the type of terminal action, such as 'QR_CODE', 'PING', etc. This helps filter actions by their purpose.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchTerminalActions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchTerminalActions", + "parameters": { + "device_id_filter": { + "value": "device_12345", + "type": "string", + "required": false + }, + "end_time_rfc3339": { + "value": "2023-10-01T20:00:00Z", + "type": "string", + "required": false + }, + "filter_terminal_action_status": { + "value": "COMPLETED", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "abc123cursor", + "type": "string", + "required": false + }, + "result_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "result_sort_order": { + "value": "DESC", + "type": "string", + "required": false + }, + "start_time_rfc3339": { + "value": "2023-09-01T20:00:00Z", + "type": "string", + "required": false + }, + "terminal_action_type": { + "value": "PING", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchTerminalCheckouts", + "qualifiedName": "SquareupApi.SearchTerminalCheckouts", + "fullyQualifiedName": "SquareupApi.SearchTerminalCheckouts@4.0.0", + "description": "Retrieve filtered Terminal checkout requests for the merchant.\n\nThis tool returns a filtered list of Terminal checkout requests created specifically by the application making the request. It should be called when there's a need to access Terminal checkout requests for the merchant associated with the OAuth token. Requests are available for 30 days.", + "parameters": [ + { + "name": "checkout_status_filter", + "type": "string", + "required": false, + "description": "Specify the desired status to filter TerminalCheckout results. Options: PENDING, IN_PROGRESS, CANCEL_REQUESTED, CANCELED, COMPLETED.", + "enum": null, + "inferrable": true + }, + { + "name": "device_id_filter", + "type": "string", + "required": false, + "description": "Filters TerminalCheckout objects associated with a specific device. Omitting this shows checkouts for all devices.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time_rfc3339", + "type": "string", + "required": false, + "description": "A datetime in RFC 3339 format indicating when the time range ends.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A pagination cursor from a previous call, used to fetch the next set of results for the same query. Useful for traversing paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Maximum number of results to return in a single request.", + "enum": null, + "inferrable": true + }, + { + "name": "result_sort_order", + "type": "string", + "required": false, + "description": "Specifies the order (DESC or ASC) for results in a request, such as chronological or alphabetical.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_range", + "type": "string", + "required": false, + "description": "The start datetime for the TerminalCheckout search in RFC 3339 format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchTerminalCheckouts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchTerminalCheckouts", + "parameters": { + "checkout_status_filter": { + "value": "COMPLETED", + "type": "string", + "required": false + }, + "device_id_filter": { + "value": "device_1234", + "type": "string", + "required": false + }, + "end_time_rfc3339": { + "value": "2023-10-01T23:59:59Z", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_5678", + "type": "string", + "required": false + }, + "result_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "result_sort_order": { + "value": "DESC", + "type": "string", + "required": false + }, + "start_time_range": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchTerminalRefunds", + "qualifiedName": "SquareupApi.SearchTerminalRefunds", + "fullyQualifiedName": "SquareupApi.SearchTerminalRefunds@4.0.0", + "description": "Retrieve a filtered list of Interac Terminal refund requests.\n\nUse this tool to get Interac Terminal refund requests created by the seller, available for up to 30 days. Ideal for managing recent refund activities or auditing transactions.", + "parameters": [ + { + "name": "device_id_filter", + "type": "string", + "required": false, + "description": "`TerminalRefund` objects associated with a specific device. If not provided, all refunds for the account are displayed.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time_range", + "type": "string", + "required": false, + "description": "A datetime value in RFC 3339 format indicating the end of the time range for filtering terminal refund requests.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_terminal_refund_status", + "type": "string", + "required": false, + "description": "Filter terminal refunds by status. Options: `PENDING`, `IN_PROGRESS`, `CANCEL_REQUESTED`, `CANCELED`, or `COMPLETED`.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor to paginate results, used to retrieve the next set from a previous query.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of refund results to retrieve in a single request.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "The order in which terminal refund results are listed. Use 'ASC' for oldest to newest or 'DESC' for newest to oldest (default).", + "enum": null, + "inferrable": true + }, + { + "name": "start_datetime", + "type": "string", + "required": false, + "description": "A datetime in RFC 3339 format. Indicates when the time range starts for filtering terminal refunds.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchTerminalRefunds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchTerminalRefunds", + "parameters": { + "device_id_filter": { + "value": "device_12345", + "type": "string", + "required": false + }, + "end_time_range": { + "value": "2023-10-01T23:59:59Z", + "type": "string", + "required": false + }, + "filter_terminal_refund_status": { + "value": "COMPLETED", + "type": "string", + "required": false + }, + "pagination_cursor": { + "value": "cursor_67890", + "type": "string", + "required": false + }, + "result_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "DESC", + "type": "string", + "required": false + }, + "start_datetime": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchTimecards", + "qualifiedName": "SquareupApi.SearchTimecards", + "fullyQualifiedName": "SquareupApi.SearchTimecards@4.0.0", + "description": "Retrieve filtered and sorted timecard records for a business.\n\nUse to get a list of timecard records filtered by location IDs, team member IDs, status, start and end times, or workday details. The records can also be sorted by start, end, creation, or update times.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchTimecards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchTimecards", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"location_ids\":[\"loc_1\",\"loc_2\"],\"team_member_ids\":[\"tm_1\",\"tm_2\"],\"status\":\"active\",\"start\":\"2023-10-01T00:00:00Z\",\"end\":\"2023-10-31T23:59:59Z\",\"sort\":\"start\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchTransferOrders", + "qualifiedName": "SquareupApi.SearchTransferOrders", + "fullyQualifiedName": "SquareupApi.SearchTransferOrders@4.0.0", + "description": "Search for transfer orders using specific filters.\n\nThis tool searches for transfer orders using various filters, returning a paginated list of matching orders sorted by creation date. It can find orders by source or destination location or by a specific transfer order status.", + "parameters": [ + { + "name": "destination_location_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of destination location IDs to filter transfer orders.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_order_statuses", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter transfer orders by their statuses. Accepts an array of status strings. Refer to TransferOrderStatus for valid values.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_results", + "type": "integer", + "required": false, + "description": "Specify the maximum number of results to return, from 1 to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string token to continue a search from a previous position, enabling pagination through results.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by_field", + "type": "string", + "required": false, + "description": "Specify the field to sort transfer orders. Options: CREATED_AT, UPDATED_AT.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the order ('DESC' or 'ASC') in which results are returned. 'DESC' for descending and 'ASC' for ascending.", + "enum": null, + "inferrable": true + }, + { + "name": "source_location_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of source location IDs to filter transfer orders by their source location.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchTransferOrders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchTransferOrders", + "parameters": { + "destination_location_ids": { + "value": ["loc_001", "loc_002"], + "type": "array", + "required": false + }, + "filter_by_order_statuses": { + "value": ["COMPLETED", "PENDING"], + "type": "array", + "required": false + }, + "maximum_results": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_123", + "type": "string", + "required": false + }, + "sort_by_field": { + "value": "CREATED_AT", + "type": "string", + "required": false + }, + "sort_order": { + "value": "DESC", + "type": "string", + "required": false + }, + "source_location_ids": { + "value": ["loc_003", "loc_004"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchVendors", + "qualifiedName": "SquareupApi.SearchVendors", + "fullyQualifiedName": "SquareupApi.SearchVendors@4.0.0", + "description": "Search for vendors using filters and sorters.\n\nUse this tool to find vendors by applying filters to vendor properties and sorting the results as needed. It is useful for retrieving vendor information based on specific criteria.", + "parameters": [ + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A string used to retrieve the next set of results for a previous query. Follow the pagination guide for details.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_field_for_vendors", + "type": "string", + "required": false, + "description": "Specify the vendor property field to sort the results by. Options include 'NAME' or 'CREATED_AT'.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify the order (e.g., chronological or alphabetical) for sorting the results. Options are 'ASC' or 'DESC'.", + "enum": null, + "inferrable": true + }, + { + "name": "vendor_names_to_filter", + "type": "array", + "innerType": "string", + "required": false, + "description": "Array of vendor names to filter the search results by. Only vendors matching these names will be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "vendor_statuses", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of vendor statuses to filter the search results. Refer to possible values in VendorStatus.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["VENDOR_READ"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SearchVendors'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SearchVendors", + "parameters": { + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + }, + "sort_field_for_vendors": { + "value": "NAME", + "type": "string", + "required": false + }, + "sort_order": { + "value": "ASC", + "type": "string", + "required": false + }, + "vendor_names_to_filter": { + "value": ["VendorA", "VendorB"], + "type": "array", + "required": false + }, + "vendor_statuses": { + "value": ["ACTIVE", "PENDING"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetBookingCustomAttribute", + "qualifiedName": "SquareupApi.SetBookingCustomAttribute", + "fullyQualifiedName": "SquareupApi.SetBookingCustomAttribute@4.0.0", + "description": "Upserts a custom attribute for a booking.\n\n Use this tool to update or insert a custom attribute for a specific booking. Requires appropriate OAuth scopes and seller subscriptions to Appointments Plus or Premium.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "booking_id", + "type": "string", + "required": false, + "description": "The ID of the target booking to update or insert a custom attribute for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_key", + "type": "string", + "required": false, + "description": "The key for the custom attribute to create or update, matching the existing key in the Square seller account. Use the qualified key if not the definition owner. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpsertBookingCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SetBookingCustomAttribute", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "booking_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "custom_attribute_key": { + "value": "customerPreference", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"value\":\"window seat\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "StartTransferOrder", + "qualifiedName": "SquareupApi.StartTransferOrder", + "fullyQualifiedName": "SquareupApi.StartTransferOrder@4.0.0", + "description": "Start a transfer order to mark it as in-transit.\n\nUse this tool to change a draft transfer order to started status, which decrements inventory at the source location and marks the order as in-transit. Once started, the order is locked from deletion but can be canceled. A webhook event is created upon starting the order.", + "parameters": [ + { + "name": "transfer_order_id", + "type": "string", + "required": true, + "description": "The ID of the transfer order to start. Must be in DRAFT status.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_request_identifier", + "type": "string", + "required": true, + "description": "A unique string to identify each UpdateTransferOrder request, ensuring it is not repeated for any request.", + "enum": null, + "inferrable": true + }, + { + "name": "optimistic_concurrency_version", + "type": "integer", + "required": false, + "description": "Specify the version number for optimistic concurrency control. Ensure the version is current to avoid conflicts.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_READ", "INVENTORY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'StartTransferOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.StartTransferOrder", + "parameters": { + "transfer_order_id": { + "value": "TO123456789", + "type": "string", + "required": true + }, + "unique_request_identifier": { + "value": "req-unique-xyz-1234", + "type": "string", + "required": true + }, + "optimistic_concurrency_version": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SubmitEvidenceToBank", + "qualifiedName": "SquareupApi.SubmitEvidenceToBank", + "fullyQualifiedName": "SquareupApi.SubmitEvidenceToBank@4.0.0", + "description": "Submit evidence for a dispute to the cardholder's bank.\n\nUse this tool to submit evidence related to a cardholder dispute to their bank. It includes evidence from files, text submissions, and any automatically provided by Square. Evidence can't be removed once submitted.", + "parameters": [ + { + "name": "dispute_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the dispute for which evidence is being submitted.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["DISPUTES_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SubmitEvidence'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SubmitEvidenceToBank", + "parameters": { + "dispute_identifier": { + "value": "d1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SwapSubscriptionPlan", + "qualifiedName": "SquareupApi.SwapSubscriptionPlan", + "fullyQualifiedName": "SquareupApi.SwapSubscriptionPlan@4.0.0", + "description": "Swap a subscription plan variation for an existing subscription.\n\n This tool schedules a SWAP_PLAN action to change the plan variation for an existing subscription. It should be called when a user wants to update the current plan of their subscription. For detailed guidance, refer to the Swap Subscription Plan Variations documentation.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "subscription_id", + "type": "string", + "required": false, + "description": "The ID of the subscription to swap the plan for. This is required to identify which subscription will have its plan changed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [ + "ITEMS_READ", + "INVOICES_WRITE", + "CUSTOMERS_READ", + "SUBSCRIPTIONS_WRITE", + "ORDERS_WRITE", + "PAYMENTS_WRITE" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'SwapPlan'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.SwapSubscriptionPlan", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "subscription_id": { + "value": "sub_123456789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"plan_variation_id\":\"plan_var_987654321\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TestWebhookSubscription", + "qualifiedName": "SquareupApi.TestWebhookSubscription", + "fullyQualifiedName": "SquareupApi.TestWebhookSubscription@4.0.0", + "description": "Send a test event to a webhook subscription URL.\n\nUse this tool to verify if a webhook subscription is correctly configured by sending a test event to the specified notification URL.", + "parameters": [ + { + "name": "webhook_subscription_id", + "type": "string", + "required": true, + "description": "The ID of the Webhook Subscription to test. This is required for sending a test event.", + "enum": null, + "inferrable": true + }, + { + "name": "test_event_type", + "type": "string", + "required": false, + "description": "Specifies the event type for testing the webhook subscription. It must match an event type in the subscription's event list.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'TestWebhookSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.TestWebhookSubscription", + "parameters": { + "webhook_subscription_id": { + "value": "ws_123456", + "type": "string", + "required": true + }, + "test_event_type": { + "value": "payment.created", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UnlinkCustomerFromGiftCard", + "qualifiedName": "SquareupApi.UnlinkCustomerFromGiftCard", + "fullyQualifiedName": "SquareupApi.UnlinkCustomerFromGiftCard@4.0.0", + "description": "Unlink a customer from a gift card.\n\nThis tool is used to unlink or remove a customer from a gift card. Call this tool when you need to detach a customer's association with a specific gift card, also known as removing a card on file.", + "parameters": [ + { + "name": "customer_id_to_unlink", + "type": "string", + "required": true, + "description": "The unique identifier of the customer to unlink from the gift card. Ensure it matches the correct customer.", + "enum": null, + "inferrable": true + }, + { + "name": "gift_card_id_to_unlink", + "type": "string", + "required": true, + "description": "The ID of the gift card to be unlinked from the customer. Required for unlinking process.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["GIFTCARDS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UnlinkCustomerFromGiftCard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UnlinkCustomerFromGiftCard", + "parameters": { + "customer_id_to_unlink": { + "value": "CUST12345", + "type": "string", + "required": true + }, + "gift_card_id_to_unlink": { + "value": "GIFT67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBooking", + "qualifiedName": "SquareupApi.UpdateBooking", + "fullyQualifiedName": "SquareupApi.UpdateBooking@4.0.0", + "description": "Update an existing booking with new details.\n\n Use this tool to modify an existing booking in the Squareup system. Ensure you have the correct permissions: buyer-level permissions require 'APPOINTMENTS_WRITE', while seller-level permissions need 'APPOINTMENTS_ALL_WRITE' and 'APPOINTMENTS_WRITE'. Seller-level updates require a subscription to Appointments Plus or Premium.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "booking_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the booking to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["APPOINTMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateBooking'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateBooking", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "booking_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"customer_name\":\"John Doe\",\"new_date\":\"2023-10-15T14:00:00Z\",\"service_type\":\"Haircut\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateBreakType", + "qualifiedName": "SquareupApi.UpdateBreakType", + "fullyQualifiedName": "SquareupApi.UpdateBreakType@4.0.0", + "description": "Update an existing BreakType configuration.\n\nUtilize this tool to modify the settings of an existing BreakType in the Squareup labor management system. Useful for updating rules related to employee break periods.", + "parameters": [ + { + "name": "break_counts_for_compensation", + "type": "boolean", + "required": true, + "description": "Set to true if this break counts towards time worked for compensation purposes.", + "enum": null, + "inferrable": true + }, + { + "name": "break_duration_rfc3339", + "type": "string", + "required": true, + "description": "The expected duration of the break in RFC-3339 format (e.g., PT15M for 15 minutes).", + "enum": null, + "inferrable": true + }, + { + "name": "break_name", + "type": "string", + "required": true, + "description": "A human-readable name for the break type, shown to team members in Square products.", + "enum": null, + "inferrable": true + }, + { + "name": "break_type_uuid", + "type": "string", + "required": true, + "description": "The UUID of the BreakType to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "business_location_id", + "type": "string", + "required": true, + "description": "The ID of the business location this type of break applies to. Required for updating break settings.", + "enum": null, + "inferrable": true + }, + { + "name": "break_type_creation_timestamp", + "type": "string", + "required": false, + "description": "A read-only timestamp in RFC 3339 format indicating when the BreakType was created. This is not modifiable.", + "enum": null, + "inferrable": true + }, + { + "name": "break_type_id", + "type": "string", + "required": false, + "description": "The UUID for the BreakType object being updated. This is required for identifying which BreakType to modify.", + "enum": null, + "inferrable": true + }, + { + "name": "readonly_updated_at_timestamp", + "type": "string", + "required": false, + "description": "The read-only timestamp in RFC 3339 format indicating the last update time for BreakType. It's not modifiable.", + "enum": null, + "inferrable": true + }, + { + "name": "version_for_concurrency", + "type": "integer", + "required": false, + "description": "The version number for concurrency control. Helps resolve conflicts by matching the server's current version.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_SETTINGS_READ", "TIMECARDS_SETTINGS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateBreakType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateBreakType", + "parameters": { + "break_counts_for_compensation": { + "value": true, + "type": "boolean", + "required": true + }, + "break_duration_rfc3339": { + "value": "PT30M", + "type": "string", + "required": true + }, + "break_name": { + "value": "Lunch Break", + "type": "string", + "required": true + }, + "break_type_uuid": { + "value": "c173e3c4-5072-4f22-8f6d-6e053f411d21", + "type": "string", + "required": true + }, + "business_location_id": { + "value": "b1d9f4e7-7928-4fd5-99f6-63f58c98efdb", + "type": "string", + "required": true + }, + "break_type_creation_timestamp": { + "value": "2023-10-05T12:00:00Z", + "type": "string", + "required": false + }, + "break_type_id": { + "value": "a12c3f5b-89e0-4c45-bd5e-b4b44b5aac52", + "type": "string", + "required": false + }, + "readonly_updated_at_timestamp": { + "value": "2023-10-06T15:00:00Z", + "type": "string", + "required": false + }, + "version_for_concurrency": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCheckoutLocationSettings", + "qualifiedName": "SquareupApi.UpdateCheckoutLocationSettings", + "fullyQualifiedName": "SquareupApi.UpdateCheckoutLocationSettings@4.0.0", + "description": "Update location settings for a Square-hosted checkout page.\n\n This tool updates the settings for a specific location's checkout page hosted by Square. It should be called when there is a need to make changes to the location-specific configuration for an online checkout.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "location_id", + "type": "string", + "required": false, + "description": "The unique identifier of the location to update settings for the Square-hosted checkout page. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_READ", "MERCHANT_PROFILE_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateLocationSettings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateCheckoutLocationSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "location_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"currency\":\"USD\",\"settings\":{\"checkout_style\":\"default\",\"enable_email_receipts\":true}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCustomerCustomAttribute", + "qualifiedName": "SquareupApi.UpdateCustomerCustomAttribute", + "fullyQualifiedName": "SquareupApi.UpdateCustomerCustomAttribute@4.0.0", + "description": "Create or update a custom attribute for a customer profile.\n\n This tool allows you to create or update a custom attribute for a specified customer profile in a Square seller account. Use it when you need to manage customer-specific details that are defined by custom attribute definitions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "customer_identifier", + "type": "string", + "required": false, + "description": "The ID of the target customer profile for which the custom attribute will be created or updated. This ID should match the customer profile in the Square system. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_key", + "type": "string", + "required": false, + "description": "The key identifying the custom attribute to create or update. Must match a key in the Square seller account's custom attribute definition. Use a qualified key if the application is not the definition owner. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpsertCustomerCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateCustomerCustomAttribute", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "customer_identifier": { + "value": "CUST123456789", + "type": "string", + "required": false + }, + "custom_attribute_key": { + "value": "custom_attribute_1", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"value\": \"Preferred Contact Method\", \"type\": \"String\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCustomerGroup", + "qualifiedName": "SquareupApi.UpdateCustomerGroup", + "fullyQualifiedName": "SquareupApi.UpdateCustomerGroup@4.0.0", + "description": "Updates a customer group by its ID.\n\nThis tool updates the details of a specified customer group using its group ID. It should be called when you need to modify the attributes of an existing customer group.", + "parameters": [ + { + "name": "customer_group_id", + "type": "string", + "required": true, + "description": "The ID of the customer group to update.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_group_name", + "type": "string", + "required": true, + "description": "The new name for the customer group to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_group_unique_id", + "type": "string", + "required": false, + "description": "A unique Square-generated ID for the customer group to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "group_creation_timestamp", + "type": "string", + "required": false, + "description": "The timestamp of when the customer group was created in RFC 3339 format. Required to track creation time.", + "enum": null, + "inferrable": true + }, + { + "name": "group_last_updated_timestamp", + "type": "string", + "required": false, + "description": "The timestamp when the customer group was last updated, in RFC 3339 format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCustomerGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateCustomerGroup", + "parameters": { + "customer_group_id": { + "value": "cg_123456789", + "type": "string", + "required": true + }, + "customer_group_name": { + "value": "VIP Customers", + "type": "string", + "required": true + }, + "customer_group_unique_id": { + "value": "unique_12345", + "type": "string", + "required": false + }, + "group_creation_timestamp": { + "value": "2023-01-01T12:00:00Z", + "type": "string", + "required": false + }, + "group_last_updated_timestamp": { + "value": "2023-10-01T15:30:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateCustomerProfile", + "qualifiedName": "SquareupApi.UpdateCustomerProfile", + "fullyQualifiedName": "SquareupApi.UpdateCustomerProfile@4.0.0", + "description": "Update a customer's profile with new or changed details.\n\n Use this tool to update a customer profile by specifying only the new or changed fields. You can also remove fields by setting them to null. For profiles created by merging, use the ID of the new profile.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "customer_id", + "type": "string", + "required": false, + "description": "The unique identifier of the customer to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateCustomer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateCustomerProfile", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "customer_id": { + "value": "123456789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"first_name\":\"John\",\"last_name\":\"Doe\",\"email\":\"john.doe@example.com\",\"phone\":\"123-456-7890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateInvoice", + "qualifiedName": "SquareupApi.UpdateInvoice", + "fullyQualifiedName": "SquareupApi.UpdateInvoice@4.0.0", + "description": "Updates invoice details with specified changes.\n\n Use this tool to update fields in an existing invoice. Only the fields you wish to change need to be specified, along with the required `version` field. Note that some restrictions apply, such as the inability to change fields like `order_id` or `location_id`.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "invoice_id", + "type": "string", + "required": false, + "description": "The unique ID of the invoice you wish to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVOICES_WRITE", "ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateInvoice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateInvoice", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "invoice_id": { + "value": "inv_123456789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"amount\": 100.00, \"currency\": \"USD\", \"status\": \"PAID\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateItemModifierLists", + "qualifiedName": "SquareupApi.UpdateItemModifierLists", + "fullyQualifiedName": "SquareupApi.UpdateItemModifierLists@4.0.0", + "description": "Update modifier lists for a catalog item.\n\nThis tool updates the CatalogModifierList objects for a specific CatalogItem without needing a complete item upsert. Call this tool when you need to modify which modifier lists apply to an item in your catalog.", + "parameters": [ + { + "name": "catalog_item_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of catalog item IDs associated with the CatalogModifierList objects to update.", + "enum": null, + "inferrable": true + }, + { + "name": "modifier_list_ids_to_disable", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of CatalogModifierList objects to disable for the CatalogItem. At least one of this or modifier_lists_to_enable must be specified.", + "enum": null, + "inferrable": true + }, + { + "name": "modifier_list_ids_to_enable", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of the CatalogModifierList objects to enable for the CatalogItem. At least one of `modifier_lists_to_enable` or `modifier_lists_to_disable` must be specified.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ITEMS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateItemModifierLists'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateItemModifierLists", + "parameters": { + "catalog_item_ids": { + "value": ["item_id_1", "item_id_2", "item_id_3"], + "type": "array", + "required": true + }, + "modifier_list_ids_to_disable": { + "value": ["modifier_list_id_1"], + "type": "array", + "required": false + }, + "modifier_list_ids_to_enable": { + "value": ["modifier_list_id_2", "modifier_list_id_3"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateItemTaxes", + "qualifiedName": "SquareupApi.UpdateItemTaxes", + "fullyQualifiedName": "SquareupApi.UpdateItemTaxes@4.0.0", + "description": "Update tax settings for specified catalog items.\n\nUse this tool to update the CatalogTax objects applied to specific CatalogItems without performing a full upsert. Ideal for making quick tax configuration changes to existing items in the catalog.", + "parameters": [ + { + "name": "catalog_item_ids", + "type": "array", + "innerType": "string", + "required": true, + "description": "List of IDs for the CatalogItems associated with the CatalogTax objects being updated. Maximum of 1,000 IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "catalog_tax_ids_to_disable", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of CatalogTax object IDs to disable. Specify either this or taxes_to_enable.", + "enum": null, + "inferrable": true + }, + { + "name": "tax_ids_to_enable", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of CatalogTax object IDs to enable. Must specify at least one if 'tax_ids_to_disable' is not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ITEMS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateItemTaxes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateItemTaxes", + "parameters": { + "catalog_item_ids": { + "value": ["item_001", "item_002", "item_003"], + "type": "array", + "required": true + }, + "catalog_tax_ids_to_disable": { + "value": ["tax_001"], + "type": "array", + "required": false + }, + "tax_ids_to_enable": { + "value": ["tax_002", "tax_003"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateJobDetails", + "qualifiedName": "SquareupApi.UpdateJobDetails", + "fullyQualifiedName": "SquareupApi.UpdateJobDetails@4.0.0", + "description": "Update job title or tip eligibility in the system.\n\nUse this tool to update the title or tip eligibility of a job within the system. The changes will affect all related job assignments, shifts, and team member wages associated with the job ID.", + "parameters": [ + { + "name": "job_id_to_update", + "type": "string", + "required": true, + "description": "The unique ID of the job to update. This specifies which job's title or tip eligibility you want to modify.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_tips_for_job", + "type": "boolean", + "required": false, + "description": "Set to true to allow team members to earn tips for the job, false to prevent them.", + "enum": null, + "inferrable": true + }, + { + "name": "job_creation_timestamp", + "type": "string", + "required": false, + "description": "The timestamp representing when the job was created, formatted in RFC 3339.", + "enum": null, + "inferrable": true + }, + { + "name": "job_id", + "type": "string", + "required": false, + "description": "The unique Square-assigned ID of the job. Obtainable via ListJobs API or from team member wage settings.", + "enum": null, + "inferrable": true + }, + { + "name": "job_last_updated_timestamp", + "type": "string", + "required": false, + "description": "The timestamp when the job was last updated, in RFC 3339 format. Used for optimistic concurrency control.", + "enum": null, + "inferrable": true + }, + { + "name": "job_title", + "type": "string", + "required": false, + "description": "The new title of the job to update.", + "enum": null, + "inferrable": true + }, + { + "name": "job_version_for_concurrency", + "type": "integer", + "required": false, + "description": "The current version of the job for optimistic concurrency control. Must match the server version to proceed with updates.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["EMPLOYEES_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateJob'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateJobDetails", + "parameters": { + "job_id_to_update": { + "value": "job_123456789", + "type": "string", + "required": true + }, + "enable_tips_for_job": { + "value": true, + "type": "boolean", + "required": false + }, + "job_creation_timestamp": { + "value": "2023-01-15T12:30:00Z", + "type": "string", + "required": false + }, + "job_id": { + "value": "job_987654321", + "type": "string", + "required": false + }, + "job_last_updated_timestamp": { + "value": "2023-10-10T09:00:00Z", + "type": "string", + "required": false + }, + "job_title": { + "value": "Senior Developer", + "type": "string", + "required": false + }, + "job_version_for_concurrency": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateLocationSquareup", + "qualifiedName": "SquareupApi.UpdateLocationSquareup", + "fullyQualifiedName": "SquareupApi.UpdateLocationSquareup@4.0.0", + "description": "Updates a business location on Square.\n\n Call this tool to update details of a specific business location using Square's Locations API. Provide the necessary location ID and data to modify.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "location_id", + "type": "string", + "required": false, + "description": "The ID of the location to update on Square. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateLocation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateLocationSquareup", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "location_id": { + "value": "loc_123456789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Location Name\",\"address\":{\"address_line_1\":\"123 Main St\",\"locality\":\"Anytown\",\"administrative_district_level_1\":\"CA\",\"postal_code\":\"90210\",\"country\":\"US\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMerchantSettings", + "qualifiedName": "SquareupApi.UpdateMerchantSettings", + "fullyQualifiedName": "SquareupApi.UpdateMerchantSettings@4.0.0", + "description": "Updates Square-hosted checkout page settings for a merchant.\n\nUse this tool to update the settings of a Square-hosted checkout page at the merchant level, ensuring the checkout page reflects the desired configurations.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [ + "PAYMENT_METHODS_READ", + "MERCHANT_PROFILE_READ", + "MERCHANT_PROFILE_WRITE" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateMerchantSettings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateMerchantSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"merchant_id\":\"abc123\",\"settings\":{\"currency\":\"USD\",\"checkout_page_header\":\"Welcome to Our Store!\",\"checkout_page_logo\":\"https://example.com/logo.png\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateMultipleCustomerProfiles", + "qualifiedName": "SquareupApi.UpdateMultipleCustomerProfiles", + "fullyQualifiedName": "SquareupApi.UpdateMultipleCustomerProfiles@4.0.0", + "description": "Update multiple customer profiles in one request.\n\nThis tool updates several customer profiles simultaneously by taking a map of individual update requests, and returns a map of responses detailing the outcome of each request.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["CUSTOMERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkUpdateCustomers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateMultipleCustomerProfiles", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"updates\":[{\"customer_id\":\"12345\",\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"},{\"customer_id\":\"67890\",\"name\":\"Jane Smith\",\"email\":\"jane.smith@example.com\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateOrderCustomAttribute", + "qualifiedName": "SquareupApi.UpdateOrderCustomAttribute", + "fullyQualifiedName": "SquareupApi.UpdateOrderCustomAttribute@4.0.0", + "description": "Create or update a custom attribute for an order.\n\n Call this tool to set or update the value of a custom attribute for a specific order. This is useful for customizing orders based on predefined custom attribute definitions in a Square seller account. Ensure the visibility setting is 'VISIBILITY_READ_WRITE_VALUES' for attributes owned by another application.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "order_id", + "type": "string", + "required": false, + "description": "The ID of the target order for which the custom attribute is being created or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_key", + "type": "string", + "required": false, + "description": "The key of the custom attribute to be created or updated. Must match an existing custom attribute definition key. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpsertOrderCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateOrderCustomAttribute", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "order_id": { + "value": "1234567890", + "type": "string", + "required": false + }, + "custom_attribute_key": { + "value": "customDeliveryNote", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"value\": \"Leave at the front door.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateOrderSquare", + "qualifiedName": "SquareupApi.UpdateOrderSquare", + "fullyQualifiedName": "SquareupApi.UpdateOrderSquare@4.0.0", + "description": "Update fields of an open Square order.\n\n This tool updates fields of an open order in Square by adding, replacing, or deleting details. It requires the order ID, the latest version of the order, and a sparse order containing only the fields to update. Use this tool to manage order details while in 'OPEN' state when changes are needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "order_id", + "type": "string", + "required": false, + "description": "The unique identifier for the order that needs to be updated. This ID specifies which order will have its fields modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateOrderSquare", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "order_id": { + "value": "order_123456789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"line_items\":[{\"id\":\"item_987654321\",\"quantity\":2}],\"fulfillment_status\":\"COMPLETED\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePaymentLink", + "qualifiedName": "SquareupApi.UpdatePaymentLink", + "fullyQualifiedName": "SquareupApi.UpdatePaymentLink@4.0.0", + "description": "Update details of an existing payment link.\n\n Use this tool to update fields like `description`, `checkout_options`, and `pre_populated_data` of a payment link. You cannot update fields such as `order_id`, `version`, `URL`, or `timestamp`.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "payment_link_id", + "type": "string", + "required": false, + "description": "The unique identifier of the payment link to update. Required to specify which link will be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE", "ORDERS_READ", "ORDERS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdatePaymentLink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdatePaymentLink", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "payment_link_id": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"description\": \"Updated Payment Link\", \"checkout_options\": {\"currency\": \"USD\", \"amount\": 1000}, \"pre_populated_data\": {\"email\": \"customer@example.com\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdatePaymentStatus", + "qualifiedName": "SquareupApi.UpdatePaymentStatus", + "fullyQualifiedName": "SquareupApi.UpdatePaymentStatus@4.0.0", + "description": "Update a payment's approved status and details.\n\n Use this tool to update a payment with an APPROVED status, modifying fields like `amount_money` and `tip_money` as necessary.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "payment_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the payment you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["PAYMENTS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdatePayment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdatePaymentStatus", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "payment_identifier": { + "value": "pay_1234567890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"APPROVED\",\"amount_money\":{\"amount\":1000,\"currency\":\"USD\"},\"tip_money\":{\"amount\":100,\"currency\":\"USD\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateScheduledShift", + "qualifiedName": "SquareupApi.UpdateScheduledShift", + "fullyQualifiedName": "SquareupApi.UpdateScheduledShift@4.0.0", + "description": "Updates draft shift details for a scheduled shift.\n\n Use this tool to make updates to draft shift details such as location, job, start and end times, team member, and notes. To finalize and make updates public, the shift must be published. You can also mark a shift as deleted.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "scheduled_shift_id", + "type": "string", + "required": false, + "description": "The unique identifier of the scheduled shift to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateScheduledShift'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateScheduledShift", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "scheduled_shift_id": { + "value": "shift_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"location\":\"Main Office\",\"job\":\"Developer\",\"start_time\":\"2023-10-11T09:00:00Z\",\"end_time\":\"2023-10-11T17:00:00Z\",\"team_member\":\"John Doe\",\"notes\":\"Updated shift details\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateSubscription", + "qualifiedName": "SquareupApi.UpdateSubscription", + "fullyQualifiedName": "SquareupApi.UpdateSubscription@4.0.0", + "description": "Update subscription details with new or cleared values.\n\n This tool updates subscription details by modifying existing values or clearing fields by setting them to `null`. Use this when you need to make changes to a subscription in the Square system.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "subscription_id", + "type": "string", + "required": false, + "description": "The unique identifier of the subscription you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [ + "ITEMS_READ", + "INVOICES_WRITE", + "CUSTOMERS_READ", + "SUBSCRIPTIONS_WRITE", + "ORDERS_WRITE", + "PAYMENTS_WRITE" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateSubscription", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "subscription_id": { + "value": "sub_123456789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"plan_id\":\"plan_987654321\",\"customer_id\":\"cust_567890123\",\"status\":\"ACTIVE\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTeamMember", + "qualifiedName": "SquareupApi.UpdateTeamMember", + "fullyQualifiedName": "SquareupApi.UpdateTeamMember@4.0.0", + "description": "Updates a single TeamMember object.\n\n Use this tool to update details of a TeamMember in your organization. It should be called when you need to modify information about an existing team member. The updated TeamMember object is returned upon successful update.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_member_id", + "type": "string", + "required": false, + "description": "The unique identifier of the team member to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["EMPLOYEES_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTeamMember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateTeamMember", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_member_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"first_name\": \"John\", \"last_name\": \"Doe\", \"email\": \"johndoe@example.com\", \"role\": \"manager\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTimecard", + "qualifiedName": "SquareupApi.UpdateTimecard", + "fullyQualifiedName": "SquareupApi.UpdateTimecard@4.0.0", + "description": "Update an existing timecard with new details.\n\n Use this tool to update an existing timecard, including adding or closing breaks. Ensure all break instances have the `end_at` property set before closing a timecard.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "timecard_id", + "type": "string", + "required": false, + "description": "The unique identifier of the timecard to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_READ", "TIMECARDS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTimecard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateTimecard", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "timecard_id": { + "value": "123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"end_at\": \"2023-10-01T18:00:00Z\", \"breaks\": [{\"start_at\": \"2023-10-01T15:00:00Z\", \"end_at\": \"2023-10-01T15:30:00Z\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTransferOrder", + "qualifiedName": "SquareupApi.UpdateTransferOrder", + "fullyQualifiedName": "SquareupApi.UpdateTransferOrder@4.0.0", + "description": "Update specific fields of a transfer order.\n\n Use this tool to modify particular fields of an existing transfer order without affecting others. This will trigger a transfer_order.updated webhook event.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "transfer_order_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the transfer order to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["INVENTORY_READ", "INVENTORY_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateTransferOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateTransferOrder", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "transfer_order_identifier": { + "value": "12345-abcde", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"shipped\",\"tracking_number\":\"TRACK123456\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateVendorInfo", + "qualifiedName": "SquareupApi.UpdateVendorInfo", + "fullyQualifiedName": "SquareupApi.UpdateVendorInfo@4.0.0", + "description": "Update an existing vendor's information.\n\nUse this tool to modify the details of an existing vendor who supplies to a seller. It updates the vendor's profile in the system.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["VENDOR_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateVendor'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateVendorInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"vendor_id\":\"12345\",\"name\":\"John's Supplies\",\"email\":\"john@example.com\",\"phone\":\"555-1234\",\"address\":{\"street\":\"123 Main St\",\"city\":\"Anytown\",\"state\":\"CA\",\"zip\":\"90210\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateWageSetting", + "qualifiedName": "SquareupApi.UpdateWageSetting", + "fullyQualifiedName": "SquareupApi.UpdateWageSetting@4.0.0", + "description": "Create or update a team member's wage setting.\n\n This tool creates or updates a WageSetting object for a specified team member. Use it to manage wage settings by creating a new object if it doesn't exist, or replacing an existing one. Upon successful update, it returns the updated WageSetting object.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_member_id", + "type": "string", + "required": false, + "description": "The unique ID of the team member whose WageSetting will be updated or created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["EMPLOYEES_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateWageSetting'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateWageSetting", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_member_id": { + "value": "tm_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"wage\": 15.00, \"currency\": \"USD\", \"start_date\": \"2023-10-01\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateWebhookSignatureKey", + "qualifiedName": "SquareupApi.UpdateWebhookSignatureKey", + "fullyQualifiedName": "SquareupApi.UpdateWebhookSignatureKey@4.0.0", + "description": "Update a webhook subscription's signature key.\n\nUse this tool to replace the existing signature key for a webhook subscription with a new one. This is specifically for managing webhook security by updating the signature key.", + "parameters": [ + { + "name": "webhook_subscription_id", + "type": "string", + "required": true, + "description": "The ID of the Webhook Subscription to update. This is a required field.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_request_identifier", + "type": "string", + "required": false, + "description": "A unique string to identify the UpdateWebhookSubscriptionSignatureKey request, ensuring idempotency.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateWebhookSubscriptionSignatureKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateWebhookSignatureKey", + "parameters": { + "webhook_subscription_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "unique_request_identifier": { + "value": "req-67890xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateWebhookSubscription", + "qualifiedName": "SquareupApi.UpdateWebhookSubscription", + "fullyQualifiedName": "SquareupApi.UpdateWebhookSubscription@4.0.0", + "description": "Update a webhook subscription to modify its settings.\n\nThis tool is used to update an existing webhook subscription by providing necessary changes to its settings. It should be called when there's a need to modify the webhook's parameters or configuration.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The unique ID of the subscription to update. This is required to identify the webhook subscription that needs to be modified.", + "enum": null, + "inferrable": true + }, + { + "name": "api_version_of_subscription", + "type": "string", + "required": false, + "description": "Specify the API version for the subscription. Optional for creation and defaults to the application's API version if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "event_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of event types associated with this subscription that trigger the webhook.", + "enum": null, + "inferrable": true + }, + { + "name": "signature_key", + "type": "string", + "required": false, + "description": "The Square-generated signature key for validating the webhook origin.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_created_timestamp", + "type": "string", + "required": false, + "description": "The timestamp indicating when the subscription was created, formatted in RFC 3339.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_enabled", + "type": "boolean", + "required": false, + "description": "Set to `true` to enable the subscription or `false` to disable it.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_name", + "type": "string", + "required": false, + "description": "The new name for the webhook subscription to update.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_unique_id", + "type": "string", + "required": false, + "description": "A Square-generated unique ID for the webhook subscription to be updated. This is required to identify which subscription to modify.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_at_timestamp", + "type": "string", + "required": false, + "description": "The timestamp of the last update for the subscription, in RFC 3339 format (e.g., \"2016-09-04T23:59:33.123Z\").", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_notification_url", + "type": "string", + "required": false, + "description": "The URL to which webhooks are sent. Must be a valid URL that can receive POST requests.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateWebhookSubscription'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateWebhookSubscription", + "parameters": { + "subscription_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "api_version_of_subscription": { + "value": "2022-01-15", + "type": "string", + "required": false + }, + "event_types": { + "value": ["ORDER_CREATED", "ORDER_UPDATED"], + "type": "array", + "required": false + }, + "signature_key": { + "value": "sk_XXXXXXXXXXXXXXXXXX", + "type": "string", + "required": false + }, + "subscription_created_timestamp": { + "value": "2023-10-05T12:34:56Z", + "type": "string", + "required": false + }, + "subscription_enabled": { + "value": true, + "type": "boolean", + "required": false + }, + "subscription_name": { + "value": "My Webhook Subscription", + "type": "string", + "required": false + }, + "subscription_unique_id": { + "value": "unique_id_789", + "type": "string", + "required": false + }, + "updated_at_timestamp": { + "value": "2023-10-05T13:45:01Z", + "type": "string", + "required": false + }, + "webhook_notification_url": { + "value": "https://example.com/webhook", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateWorkweekConfiguration", + "qualifiedName": "SquareupApi.UpdateWorkweekConfiguration", + "fullyQualifiedName": "SquareupApi.UpdateWorkweekConfiguration@4.0.0", + "description": "Update workweek configuration settings.\n\nUse this tool to update the settings for a specific workweek configuration in the system.", + "parameters": [ + { + "name": "workweek_config_id", + "type": "string", + "required": true, + "description": "The UUID for the `WorkweekConfig` object to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "workweek_start_day", + "type": "string", + "required": true, + "description": "Specifies the start day of the workweek. Acceptable values are: MON, TUE, WED, THU, FRI, SAT, SUN.", + "enum": null, + "inferrable": true + }, + { + "name": "workweek_start_time_local", + "type": "string", + "required": true, + "description": "The local time a business week starts, represented as a string in `HH:MM` format (`HH:MM:SS` is accepted, but seconds are truncated).", + "enum": null, + "inferrable": true + }, + { + "name": "read_only_updated_at", + "type": "string", + "required": false, + "description": "A read-only timestamp in RFC 3339 format; presented in UTC, to indicate the last update time of the workweek configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "workweek_config_uuid", + "type": "string", + "required": false, + "description": "The UUID of the workweek configuration object to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "workweek_config_version", + "type": "integer", + "required": false, + "description": "Version number to resolve concurrency issues. If it doesn't match the server, the update fails. If omitted, a blind write occurs.", + "enum": null, + "inferrable": true + }, + { + "name": "workweek_creation_timestamp", + "type": "string", + "required": false, + "description": "Read-only UTC timestamp of workweek config creation in RFC 3339 format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["TIMECARDS_SETTINGS_READ", "TIMECARDS_SETTINGS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpdateWorkweekConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpdateWorkweekConfiguration", + "parameters": { + "workweek_config_id": { + "value": "d2f7c4e5-9b8c-4c21-9f6f-5a23013ab9b4", + "type": "string", + "required": true + }, + "workweek_start_day": { + "value": "MON", + "type": "string", + "required": true + }, + "workweek_start_time_local": { + "value": "09:00", + "type": "string", + "required": true + }, + "read_only_updated_at": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "workweek_config_uuid": { + "value": "e8b3d5ed-5e8a-4f5c-9a3b-1e25614b7f7a", + "type": "string", + "required": false + }, + "workweek_config_version": { + "value": 3, + "type": "integer", + "required": false + }, + "workweek_creation_timestamp": { + "value": "2022-05-15T08:30:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UploadDisputeEvidenceText", + "qualifiedName": "SquareupApi.UploadDisputeEvidenceText", + "fullyQualifiedName": "SquareupApi.UploadDisputeEvidenceText@4.0.0", + "description": "Upload text evidence for a dispute challenge.\n\nUse this tool to upload textual evidence to support a dispute challenge. Call this tool when you need to provide written information or arguments for a dispute with a unique dispute ID.", + "parameters": [ + { + "name": "dispute_id", + "type": "string", + "required": true, + "description": "The unique ID of the dispute to upload text evidence for.", + "enum": null, + "inferrable": true + }, + { + "name": "evidence_text_string", + "type": "string", + "required": true, + "description": "Provide the textual evidence string to be used in the dispute challenge.", + "enum": null, + "inferrable": true + }, + { + "name": "unique_request_key", + "type": "string", + "required": true, + "description": "A unique key for identifying and ensuring the idempotency of the request. For additional details, see Square's idempotency documentation.", + "enum": null, + "inferrable": true + }, + { + "name": "dispute_evidence_type", + "type": "string", + "required": false, + "description": "Specify the type of evidence for the dispute. Options include: GENERIC_EVIDENCE, ONLINE_OR_APP_ACCESS_LOG, AUTHORIZATION_DOCUMENTATION, etc.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["DISPUTES_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'CreateDisputeEvidenceText'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UploadDisputeEvidenceText", + "parameters": { + "dispute_id": { + "value": "DISPUTE123456", + "type": "string", + "required": true + }, + "evidence_text_string": { + "value": "The transaction was completed according to our terms and conditions, and the customer acknowledged receipt.", + "type": "string", + "required": true + }, + "unique_request_key": { + "value": "UNIQUE_REQUEST_7890", + "type": "string", + "required": true + }, + "dispute_evidence_type": { + "value": "GENERIC_EVIDENCE", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertCatalogObject", + "qualifiedName": "SquareupApi.UpsertCatalogObject", + "fullyQualifiedName": "SquareupApi.UpsertCatalogObject@4.0.0", + "description": "Create or update a catalog object in Squareup.\n\nUse this tool to create a new or update an existing catalog object in Squareup. It is designed to handle requests one at a time per seller account for consistency. If another update is in process, further requests will be rejected with a `429` error.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["ITEMS_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpsertCatalogObject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpsertCatalogObject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"id\":\"item_12345\",\"type\":\"ITEM\",\"item_data\":{\"name\":\"Sample Item\",\"price\":1000,\"currency\":\"USD\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertLocationCustomAttribute", + "qualifiedName": "SquareupApi.UpsertLocationCustomAttribute", + "fullyQualifiedName": "SquareupApi.UpsertLocationCustomAttribute@4.0.0", + "description": "Create or update a custom attribute for a location.\n\n Use this tool to set or modify the value of a custom attribute for a specific location. Ensure the custom attribute is defined in the Square seller account. To work with attributes owned by other applications, the visibility must be set to 'VISIBILITY_READ_WRITE_VALUES'.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "location_id", + "type": "string", + "required": false, + "description": "The ID of the target location for which the custom attribute is to be created or updated. It should be a string that uniquely identifies the location within the Square seller account. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_key", + "type": "string", + "required": false, + "description": "The key for the custom attribute to create or update. Must match an existing attribute definition key in the Square account. Use a qualified key if not the owner. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpsertLocationCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpsertLocationCustomAttribute", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "location_id": { + "value": "LOC123456", + "type": "string", + "required": false + }, + "custom_attribute_key": { + "value": "custom_attribute_001", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"value\":\"New custom value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertMerchantCustomAttribute", + "qualifiedName": "SquareupApi.UpsertMerchantCustomAttribute", + "fullyQualifiedName": "SquareupApi.UpsertMerchantCustomAttribute@4.0.0", + "description": "Create or update a custom attribute for a merchant.\n\n This tool creates or updates a custom attribute for a specified merchant using the Square API. It's used to set the value of a custom attribute defined in a Square seller account. The attribute can be owned by another application if the visibility setting allows read-write operations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "merchant_id", + "type": "string", + "required": false, + "description": "The unique ID of the target merchant for whom the custom attribute is being created or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_attribute_key", + "type": "string", + "required": false, + "description": "The key of the custom attribute to create or update. This key must match the key of a custom attribute definition in the Square seller account. If the requester is not the definition owner, use the qualified key. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'UpsertMerchantCustomAttribute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpsertMerchantCustomAttribute", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "merchant_id": { + "value": "M123456789", + "type": "string", + "required": false + }, + "custom_attribute_key": { + "value": "loyalty_points", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"value\": 150}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpsertMerchantCustomAttributesBulk", + "qualifiedName": "SquareupApi.UpsertMerchantCustomAttributesBulk", + "fullyQualifiedName": "SquareupApi.UpsertMerchantCustomAttributesBulk@4.0.0", + "description": "Bulk creates or updates custom attributes for a merchant.\n\nUse this tool to set multiple custom attributes for a merchant based on predefined definitions in a Square seller account. It processes 1 to 25 upsert requests, each providing a unique ID, merchant ID, and custom attribute data. Returns mapped responses with the ID of each request.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "squareup", + "providerType": "oauth2", + "scopes": ["MERCHANT_PROFILE_WRITE"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'BulkUpsertMerchantCustomAttributes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "SquareupApi.UpsertMerchantCustomAttributesBulk", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"upsertRequests\":[{\"id\":\"req_12345\",\"merchantId\":\"m_67890\",\"customAttribute\":{\"key\":\"color\",\"value\":\"blue\"}},{\"id\":\"req_12346\",\"merchantId\":\"m_67891\",\"customAttribute\":{\"key\":\"size\",\"value\":\"medium\"}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "squareup", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:43:45.605Z", + "summary": "SquareupApi is a toolkit designed for integrating with the Squareup API, empowering developers to facilitate seamless interactions with various Square services. This toolkit enables various operations, including managing customer data, handling invoices, and managing loyalty points. **Capabilities:** - Access detailed information about customers, orders, and transactions. - Perform CRUD operations on bookings, inventory, and payments. - Manage loyalty programs, including points and rewards. **OAuth:** The toolkit utilizes OAuth2 authentication via Squareup, with scopes allowing comprehensive access to appointments, customers, payments, and more. **Secrets:** None required." +} diff --git a/data/toolkits/stripe.json b/data/toolkits/stripe.json new file mode 100644 index 000000000..bff97efb0 --- /dev/null +++ b/data/toolkits/stripe.json @@ -0,0 +1,814 @@ +{ + "id": "Stripe", + "label": "Stripe", + "version": "1.0.1", + "description": "Arcade.dev LLM tools for Stripe", + "metadata": { + "category": "payments", + "iconUrl": "https://design-system.arcade.dev/icons/stripe.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/payments/stripe", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "CreateBillingPortalSession", + "qualifiedName": "Stripe.CreateBillingPortalSession", + "fullyQualifiedName": "Stripe.CreateBillingPortalSession@1.0.1", + "description": "This tool will create a billing portal session.", + "parameters": [ + { + "name": "customer", + "type": "string", + "required": true, + "description": "The ID of the customer to create the billing portal session for.", + "enum": null, + "inferrable": true + }, + { + "name": "return_url", + "type": "string", + "required": false, + "description": "The default URL to return to afterwards.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will create a billing portal session." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.CreateBillingPortalSession", + "parameters": { + "customer": { + "value": "cus_123456789", + "type": "string", + "required": true + }, + "return_url": { + "value": "https://example.com/account", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCustomer", + "qualifiedName": "Stripe.CreateCustomer", + "fullyQualifiedName": "Stripe.CreateCustomer@1.0.1", + "description": "This tool will create a customer in Stripe.", + "parameters": [ + { + "name": "name", + "type": "string", + "required": true, + "description": "The name of the customer.", + "enum": null, + "inferrable": true + }, + { + "name": "email", + "type": "string", + "required": false, + "description": "The email of the customer.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will create a customer in Stripe." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.CreateCustomer", + "parameters": { + "name": { + "value": "John Doe", + "type": "string", + "required": true + }, + "email": { + "value": "john.doe@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateInvoice", + "qualifiedName": "Stripe.CreateInvoice", + "fullyQualifiedName": "Stripe.CreateInvoice@1.0.1", + "description": "This tool will create an invoice in Stripe.", + "parameters": [ + { + "name": "customer", + "type": "string", + "required": true, + "description": "The ID of the customer to create the invoice for.", + "enum": null, + "inferrable": true + }, + { + "name": "days_until_due", + "type": "integer", + "required": false, + "description": "The number of days until the invoice is due.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will create an invoice in Stripe." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.CreateInvoice", + "parameters": { + "customer": { + "value": "cus_J1gWqB8a02C3Qq", + "type": "string", + "required": true + }, + "days_until_due": { + "value": 30, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateInvoiceItem", + "qualifiedName": "Stripe.CreateInvoiceItem", + "fullyQualifiedName": "Stripe.CreateInvoiceItem@1.0.1", + "description": "This tool will create an invoice item in Stripe.", + "parameters": [ + { + "name": "customer", + "type": "string", + "required": true, + "description": "The ID of the customer to create the invoice item for.", + "enum": null, + "inferrable": true + }, + { + "name": "price", + "type": "string", + "required": true, + "description": "The ID of the price for the item.", + "enum": null, + "inferrable": true + }, + { + "name": "invoice", + "type": "string", + "required": true, + "description": "The ID of the invoice to create the item for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will create an invoice item in Stripe." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.CreateInvoiceItem", + "parameters": { + "customer": { + "value": "cus_1234567890abcdef", + "type": "string", + "required": true + }, + "price": { + "value": "price_abcdef1234567890", + "type": "string", + "required": true + }, + "invoice": { + "value": "in_abcdef1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreatePaymentLink", + "qualifiedName": "Stripe.CreatePaymentLink", + "fullyQualifiedName": "Stripe.CreatePaymentLink@1.0.1", + "description": "This tool will create a payment link in Stripe.", + "parameters": [ + { + "name": "price", + "type": "string", + "required": true, + "description": "The ID of the price to create the payment link for.", + "enum": null, + "inferrable": true + }, + { + "name": "quantity", + "type": "integer", + "required": true, + "description": "The quantity of the product to include.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will create a payment link in Stripe." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.CreatePaymentLink", + "parameters": { + "price": { + "value": "price_1JH8R2L6zC2Yp1ABCD123456", + "type": "string", + "required": true + }, + "quantity": { + "value": 2, + "type": "integer", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreatePrice", + "qualifiedName": "Stripe.CreatePrice", + "fullyQualifiedName": "Stripe.CreatePrice@1.0.1", + "description": "This tool will create a price in Stripe. If a product has not already been", + "parameters": [ + { + "name": "product", + "type": "string", + "required": true, + "description": "The ID of the product to create the price for.", + "enum": null, + "inferrable": true + }, + { + "name": "unit_amount", + "type": "integer", + "required": true, + "description": "The unit amount of the price in cents.", + "enum": null, + "inferrable": true + }, + { + "name": "currency", + "type": "string", + "required": true, + "description": "The currency of the price.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will create a price in Stripe. If a product has not already been" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.CreatePrice", + "parameters": { + "product": { + "value": "prod_123456789", + "type": "string", + "required": true + }, + "unit_amount": { + "value": 1999, + "type": "integer", + "required": true + }, + "currency": { + "value": "usd", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateProduct", + "qualifiedName": "Stripe.CreateProduct", + "fullyQualifiedName": "Stripe.CreateProduct@1.0.1", + "description": "This tool will create a product in Stripe.", + "parameters": [ + { + "name": "name", + "type": "string", + "required": true, + "description": "The name of the product.", + "enum": null, + "inferrable": true + }, + { + "name": "description", + "type": "string", + "required": false, + "description": "The description of the product.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will create a product in Stripe." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.CreateProduct", + "parameters": { + "name": { + "value": "Premium Coffee Beans", + "type": "string", + "required": true + }, + "description": { + "value": "High-quality, organic coffee beans sourced from Colombia.", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateRefund", + "qualifiedName": "Stripe.CreateRefund", + "fullyQualifiedName": "Stripe.CreateRefund@1.0.1", + "description": "This tool will refund a payment intent in Stripe.", + "parameters": [ + { + "name": "payment_intent", + "type": "string", + "required": true, + "description": "The ID of the PaymentIntent to refund.", + "enum": null, + "inferrable": true + }, + { + "name": "amount", + "type": "integer", + "required": false, + "description": "The amount to refund in cents.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will refund a payment intent in Stripe." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.CreateRefund", + "parameters": { + "payment_intent": { + "value": "pi_1Hh1H2L3F4G5G6H7I8J9K0L1M", + "type": "string", + "required": true + }, + "amount": { + "value": 1500, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FinalizeInvoice", + "qualifiedName": "Stripe.FinalizeInvoice", + "fullyQualifiedName": "Stripe.FinalizeInvoice@1.0.1", + "description": "This tool will finalize an invoice in Stripe.", + "parameters": [ + { + "name": "invoice", + "type": "string", + "required": true, + "description": "The ID of the invoice to finalize.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will finalize an invoice in Stripe." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.FinalizeInvoice", + "parameters": { + "invoice": { + "value": "inv_1JY9s2L24mdlYF", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCustomers", + "qualifiedName": "Stripe.ListCustomers", + "fullyQualifiedName": "Stripe.ListCustomers@1.0.1", + "description": "This tool will fetch a list of Customers from Stripe.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "A limit on the number of objects to be returned. Limit can range between 1 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "email", + "type": "string", + "required": false, + "description": "A case-sensitive filter on the list based on the customer's email field. The value must be a string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will fetch a list of Customers from Stripe." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.ListCustomers", + "parameters": { + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "email": { + "value": "example@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListInvoices", + "qualifiedName": "Stripe.ListInvoices", + "fullyQualifiedName": "Stripe.ListInvoices@1.0.1", + "description": "This tool will list invoices in Stripe.", + "parameters": [ + { + "name": "customer", + "type": "string", + "required": false, + "description": "The ID of the customer to list invoices for.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will list invoices in Stripe." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.ListInvoices", + "parameters": { + "customer": { + "value": "cus_J5Y6gT7n8W9kLg", + "type": "string", + "required": false + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPaymentIntents", + "qualifiedName": "Stripe.ListPaymentIntents", + "fullyQualifiedName": "Stripe.ListPaymentIntents@1.0.1", + "description": "This tool will list payment intents in Stripe.", + "parameters": [ + { + "name": "customer", + "type": "string", + "required": false, + "description": "The ID of the customer to list payment intents for.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "A limit on the number of objects to be returned. Limit can range between 1 and 100.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will list payment intents in Stripe." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.ListPaymentIntents", + "parameters": { + "customer": { + "value": "cus_Jy9jG0Y8Vh9bAc", + "type": "string", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPrices", + "qualifiedName": "Stripe.ListPrices", + "fullyQualifiedName": "Stripe.ListPrices@1.0.1", + "description": "This tool will fetch a list of Prices from Stripe.", + "parameters": [ + { + "name": "product", + "type": "string", + "required": false, + "description": "The ID of the product to list prices for.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will fetch a list of Prices from Stripe." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.ListPrices", + "parameters": { + "product": { + "value": "prod_12345", + "type": "string", + "required": false + }, + "limit": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListProducts", + "qualifiedName": "Stripe.ListProducts", + "fullyQualifiedName": "Stripe.ListProducts@1.0.1", + "description": "This tool will fetch a list of Products from Stripe.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will fetch a list of Products from Stripe." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.ListProducts", + "parameters": { + "limit": { + "value": 20, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveBalance", + "qualifiedName": "Stripe.RetrieveBalance", + "fullyQualifiedName": "Stripe.RetrieveBalance@1.0.1", + "description": "This tool will retrieve the balance from Stripe. It takes no input.", + "parameters": [], + "auth": null, + "secrets": ["STRIPE_SECRET_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_SECRET_KEY", + "type": "api_key" + } + ], + "output": { + "type": "string", + "description": "This tool will retrieve the balance from Stripe. It takes no input." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Stripe.RetrieveBalance", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Stripe MCP Server uses the [Stripe Agent Toolkit](https://github.com/stripe/agent-toolkit) to interact with the Stripe API.\n- **Required Secret:**\n - `STRIPE_SECRET_KEY`: Your Stripe API key.", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:41:59.314Z", + "summary": "Arcade.dev provides a powerful toolkit for integrating with Stripe, enabling seamless management of billing, customer data, and payment processes. This toolkit simplifies common tasks, making it easier for developers to leverage Stripe's capabilities.\n\n### Capabilities\n- Create and manage customers, products, and prices.\n- Generate invoices and billing portal sessions effortlessly.\n- Retrieve and list pertinent data such as invoices and payment intents.\n- Facilitate refunds and manage financial transactions seamlessly.\n\n### Secrets\n- **API Key**: Use the `STRIPE_SECRET_KEY` for authentication when interacting with the Stripe API." +} diff --git a/data/toolkits/stripeapi.json b/data/toolkits/stripeapi.json new file mode 100644 index 000000000..b4dc3adfa --- /dev/null +++ b/data/toolkits/stripeapi.json @@ -0,0 +1,14857 @@ +{ + "id": "StripeApi", + "label": "Stripe API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the Stripe API.", + "metadata": { + "category": "payments", + "iconUrl": "https://design-system.arcade.dev/icons/stripe.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/payments/stripe_api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "DeleteAccountPerson", + "qualifiedName": "StripeApi.DeleteAccountPerson", + "fullyQualifiedName": "StripeApi.DeleteAccountPerson@1.0.0", + "description": "Delete a person's relationship to an account in Stripe.\n\nDeletes a person's relationship to the account's legal entity in Stripe, except for the account_opener or the sole verified executive.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The unique identifier of the account from which a person's relationship will be deleted. This must be a valid Stripe account ID.", + "enum": null, + "inferrable": true + }, + { + "name": "person_id", + "type": "string", + "required": true, + "description": "A unique identifier for the person whose relationship to the account will be deleted. This is required and must be a valid person ID in Stripe.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteAccountsAccountPersonsPerson'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteAccountPerson", + "parameters": { + "account_id": { + "value": "acct_12345", + "type": "string", + "required": true + }, + "person_id": { + "value": "person_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAccountPersonRelationship", + "qualifiedName": "StripeApi.DeleteAccountPersonRelationship", + "fullyQualifiedName": "StripeApi.DeleteAccountPersonRelationship@1.0.0", + "description": "Remove a person's relationship from a Stripe account.\n\nThis tool deletes an existing person's relationship to a Stripe account's legal entity. It cannot delete the account opener or the only verified executive, if applicable.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Stripe account from which the person's relationship will be removed. This ID is required to specify the correct account.", + "enum": null, + "inferrable": true + }, + { + "name": "person_id", + "type": "string", + "required": true, + "description": "The unique identifier of the person whose relationship to the account is to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteAccountsAccountPeoplePerson'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteAccountPersonRelationship", + "parameters": { + "account_id": { + "value": "acct_123456789", + "type": "string", + "required": true + }, + "person_id": { + "value": "person_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteApplePayDomain", + "qualifiedName": "StripeApi.DeleteApplePayDomain", + "fullyQualifiedName": "StripeApi.DeleteApplePayDomain@1.0.0", + "description": "Delete an Apple Pay domain from Stripe.\n\nUse this tool to delete a specific Apple Pay domain registered with your Stripe account. This is useful for managing domains no longer required for Apple Pay services.", + "parameters": [ + { + "name": "apple_pay_domain_to_delete", + "type": "string", + "required": true, + "description": "The domain name of the Apple Pay domain you wish to delete from your Stripe account.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteApplePayDomainsDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteApplePayDomain", + "parameters": { + "apple_pay_domain_to_delete": { + "value": "example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCustomerTaxId", + "qualifiedName": "StripeApi.DeleteCustomerTaxId", + "fullyQualifiedName": "StripeApi.DeleteCustomerTaxId@1.0.0", + "description": "Deletes a customer's existing tax ID.\n\nThis tool is used to remove an existing tax ID associated with a specific customer in Stripe. Call this tool to manage customer tax ID records by deleting unnecessary or outdated entries.", + "parameters": [ + { + "name": "customer_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the customer whose tax ID will be deleted. This is a string provided by Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "tax_id", + "type": "string", + "required": true, + "description": "The unique identifier of the tax ID to be deleted for the customer.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCustomersCustomerTaxIdsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteCustomerTaxId", + "parameters": { + "customer_identifier": { + "value": "cus_123456789", + "type": "string", + "required": true + }, + "tax_id": { + "value": "txid_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteExternalAccount", + "qualifiedName": "StripeApi.DeleteExternalAccount", + "fullyQualifiedName": "StripeApi.DeleteExternalAccount@1.0.0", + "description": "Delete a specified external account for a given account.\n\nUse this tool to delete an external account linked to a specific account. Ideal for managing external accounts by removing unwanted or outdated entries.", + "parameters": [ + { + "name": "account_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the account from which the external account will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "external_account_id", + "type": "string", + "required": true, + "description": "Unique identifier for the external account to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteAccountsAccountExternalAccountsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteExternalAccount", + "parameters": { + "account_identifier": { + "value": "acct_123456789", + "type": "string", + "required": true + }, + "external_account_id": { + "value": "ba_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteExternalBankAccount", + "qualifiedName": "StripeApi.DeleteExternalBankAccount", + "fullyQualifiedName": "StripeApi.DeleteExternalBankAccount@1.0.0", + "description": "Delete an external bank account for a specified account.\n\nUse this tool to remove a specified external bank account from a given account. It confirms the successful deletion.", + "parameters": [ + { + "name": "account_identifier", + "type": "string", + "required": true, + "description": "The account ID from which you want to delete an external bank account.", + "enum": null, + "inferrable": true + }, + { + "name": "external_account_id", + "type": "string", + "required": true, + "description": "The unique identifier of the external bank account to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteAccountsAccountBankAccountsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteExternalBankAccount", + "parameters": { + "account_identifier": { + "value": "acct_123456789", + "type": "string", + "required": true + }, + "external_account_id": { + "value": "ba_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteInvoiceDraft", + "qualifiedName": "StripeApi.DeleteInvoiceDraft", + "fullyQualifiedName": "StripeApi.DeleteInvoiceDraft@1.0.0", + "description": "Permanently delete a draft invoice.\n\nUse this tool to permanently delete a draft invoice that is not finalized or associated with a subscription. Once deleted, this action cannot be undone.", + "parameters": [ + { + "name": "invoice_id", + "type": "string", + "required": true, + "description": "The unique identifier of the draft invoice to be permanently deleted. Cannot be used on finalized invoices or those associated with subscriptions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteInvoicesInvoice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteInvoiceDraft", + "parameters": { + "invoice_id": { + "value": "in_12345ABCDE", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteInvoiceItem", + "qualifiedName": "StripeApi.DeleteInvoiceItem", + "fullyQualifiedName": "StripeApi.DeleteInvoiceItem@1.0.0", + "description": "Delete an invoice item from a draft or unattached invoice.\n\nUse this tool to delete an invoice item that isn't attached to a final invoice or is part of a draft invoice.", + "parameters": [ + { + "name": "invoice_item_id", + "type": "string", + "required": true, + "description": "The unique identifier of the invoice item to be deleted. It must be either unattached or part of a draft invoice.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteInvoiceitemsInvoiceitem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteInvoiceItem", + "parameters": { + "invoice_item_id": { + "value": "ii_1JwXhY2eZvKYlo2C4RzxNy4H", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteProductFeature", + "qualifiedName": "StripeApi.DeleteProductFeature", + "fullyQualifiedName": "StripeApi.DeleteProductFeature@1.0.0", + "description": "Delete a specific feature from a product.\n\nUse this tool to delete a feature attached to a specific product by providing the product and feature identifiers.", + "parameters": [ + { + "name": "feature_id", + "type": "string", + "required": true, + "description": "The identifier of the feature to be deleted from the product.", + "enum": null, + "inferrable": true + }, + { + "name": "product_id", + "type": "string", + "required": true, + "description": "The unique identifier of the product from which the feature is to be deleted. This is required to specify which product's feature should be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteProductsProductFeaturesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteProductFeature", + "parameters": { + "feature_id": { + "value": "feat_12345", + "type": "string", + "required": true + }, + "product_id": { + "value": "prod_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteStripeConnectedAccount", + "qualifiedName": "StripeApi.DeleteStripeConnectedAccount", + "fullyQualifiedName": "StripeApi.DeleteStripeConnectedAccount@1.0.0", + "description": "Delete managed accounts via Stripe Connect.\n\nUse this tool to delete accounts you manage through Stripe Connect. Suitable for test-mode accounts anytime and live-mode accounts except those with standard dashboard access or negative balances. Ensure all balances are zero before deletion.", + "parameters": [ + { + "name": "account_id_to_delete", + "type": "string", + "required": true, + "description": "The unique identifier of the Stripe account to be deleted. Ensure this is a managed account with zero balance.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteAccountsAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteStripeConnectedAccount", + "parameters": { + "account_id_to_delete": { + "value": "acct_1J2CdoFjKj4Qy5", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteStripeCoupon", + "qualifiedName": "StripeApi.DeleteStripeCoupon", + "fullyQualifiedName": "StripeApi.DeleteStripeCoupon@1.0.0", + "description": "Delete a coupon in Stripe without affecting current users.\n\nUse this tool to delete a coupon on Stripe, preventing new customers from redeeming it. Existing customers with the coupon remain unaffected.", + "parameters": [ + { + "name": "coupon_id", + "type": "string", + "required": true, + "description": "The unique identifier of the coupon to delete on Stripe. This ID specifies which coupon should be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCouponsCoupon'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteStripeCoupon", + "parameters": { + "coupon_id": { + "value": "cu_12345abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteStripeCustomer", + "qualifiedName": "StripeApi.DeleteStripeCustomer", + "fullyQualifiedName": "StripeApi.DeleteStripeCustomer@1.0.0", + "description": "Permanently delete a Stripe customer and cancel subscriptions.\n\nUse this tool to permanently delete a customer in Stripe. This action cannot be undone and will immediately cancel any active subscriptions associated with the customer.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier of the customer to be deleted. This ID is required and should match the customer in the Stripe system.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCustomersCustomer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteStripeCustomer", + "parameters": { + "customer_id": { + "value": "cus_1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteStripePlan", + "qualifiedName": "StripeApi.DeleteStripePlan", + "fullyQualifiedName": "StripeApi.DeleteStripePlan@1.0.0", + "description": "Delete a specified plan from Stripe.\n\nUse this tool to delete a plan in Stripe, preventing new subscriptions to that plan while keeping existing subscribers unaffected.", + "parameters": [ + { + "name": "plan_id", + "type": "string", + "required": true, + "description": "The unique identifier of the plan to be deleted in Stripe.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeletePlansPlan'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteStripePlan", + "parameters": { + "plan_id": { + "value": "plan_G1aBcD2EfGhIjK", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteStripeProduct", + "qualifiedName": "StripeApi.DeleteStripeProduct", + "fullyQualifiedName": "StripeApi.DeleteStripeProduct@1.0.0", + "description": "Delete a product from Stripe if eligible.\n\nThis tool deletes a product from Stripe, provided the product has no prices or SKUs associated with it. Use this to remove products when cleaning up a catalog or managing inventory.", + "parameters": [ + { + "name": "product_id_to_delete", + "type": "string", + "required": true, + "description": "The unique identifier of the product to delete. Ensure the product has no prices or SKUs associated with it.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteProductsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteStripeProduct", + "parameters": { + "product_id_to_delete": { + "value": "prod_12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteStripeValueList", + "qualifiedName": "StripeApi.DeleteStripeValueList", + "fullyQualifiedName": "StripeApi.DeleteStripeValueList@1.0.0", + "description": "Delete a Stripe Radar ValueList and its items.\n\nUse this tool to delete a specified ValueList object in Stripe Radar, along with all its contained items. Ensure the ValueList is not referenced in any rules before calling this tool.", + "parameters": [ + { + "name": "value_list_id", + "type": "string", + "required": true, + "description": "The unique identifier of the ValueList to be deleted. Ensure it is not referenced in any rules before deletion.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteRadarValueListsValueList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteStripeValueList", + "parameters": { + "value_list_id": { + "value": "vl_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteStripeWebhookEndpoint", + "qualifiedName": "StripeApi.DeleteStripeWebhookEndpoint", + "fullyQualifiedName": "StripeApi.DeleteStripeWebhookEndpoint@1.0.0", + "description": "Delete a Stripe webhook endpoint by ID.\n\nUse this tool to delete a specific webhook endpoint in Stripe by providing its ID, helping manage webhook configurations.", + "parameters": [ + { + "name": "webhook_endpoint_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Stripe webhook endpoint you wish to delete. This ID is required to specify which endpoint should be removed from your Stripe configurations.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteWebhookEndpointsWebhookEndpoint'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteStripeWebhookEndpoint", + "parameters": { + "webhook_endpoint_id": { + "value": "we_1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTaxId", + "qualifiedName": "StripeApi.DeleteTaxId", + "fullyQualifiedName": "StripeApi.DeleteTaxId@1.0.0", + "description": "Delete a tax ID from an account or customer.\n\nUse this tool to delete an existing tax ID associated with an account or customer in Stripe.", + "parameters": [ + { + "name": "tax_id", + "type": "string", + "required": true, + "description": "The identifier of the tax ID to be deleted. This should be the specific tax ID string associated with an account or customer in Stripe.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTaxIdsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteTaxId", + "parameters": { + "tax_id": { + "value": "txi_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTerminalConfiguration", + "qualifiedName": "StripeApi.DeleteTerminalConfiguration", + "fullyQualifiedName": "StripeApi.DeleteTerminalConfiguration@1.0.0", + "description": "Deletes a terminal configuration.\n\nUse this tool to delete a specific terminal configuration in Stripe by providing the configuration ID.", + "parameters": [ + { + "name": "configuration_id_to_delete", + "type": "string", + "required": true, + "description": "The ID of the terminal configuration you want to delete from Stripe.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTerminalConfigurationsConfiguration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteTerminalConfiguration", + "parameters": { + "configuration_id_to_delete": { + "value": "tc_1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTerminalLocation", + "qualifiedName": "StripeApi.DeleteTerminalLocation", + "fullyQualifiedName": "StripeApi.DeleteTerminalLocation@1.0.0", + "description": "Deletes a specified terminal location in Stripe.\n\nUse this tool to delete a specific terminal location in Stripe by providing the location identifier. It removes the location object from the terminal services.", + "parameters": [ + { + "name": "location_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the terminal location to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTerminalLocationsLocation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteTerminalLocation", + "parameters": { + "location_identifier": { + "value": "loc_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTerminalReader", + "qualifiedName": "StripeApi.DeleteTerminalReader", + "fullyQualifiedName": "StripeApi.DeleteTerminalReader@1.0.0", + "description": "Delete a terminal reader from the Stripe account.\n\nThis tool is used to delete a terminal reader object in a Stripe account. It should be called when there is a need to remove a specific reader.", + "parameters": [ + { + "name": "terminal_reader_id", + "type": "string", + "required": true, + "description": "The ID of the terminal reader to be deleted from the Stripe account.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTerminalReadersReader'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteTerminalReader", + "parameters": { + "terminal_reader_id": { + "value": "tr_reader_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTestClock", + "qualifiedName": "StripeApi.DeleteTestClock", + "fullyQualifiedName": "StripeApi.DeleteTestClock@1.0.0", + "description": "Deletes a test clock in Stripe's test environment.\n\nThis tool is used to delete a specific test clock from Stripe's test environment. Call this tool when you need to remove a test clock that is no longer needed.", + "parameters": [ + { + "name": "test_clock_id", + "type": "string", + "required": true, + "description": "The unique identifier of the test clock to be deleted from Stripe's test environment.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteTestHelpersTestClocksTestClock'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DeleteTestClock", + "parameters": { + "test_clock_id": { + "value": "clock_test_1GQmKq2eZvKYlo2C7Ykh4iNc", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DownloadQuotePdf", + "qualifiedName": "StripeApi.DownloadQuotePdf", + "fullyQualifiedName": "StripeApi.DownloadQuotePdf@1.0.0", + "description": "Download the PDF for a finalized Stripe quote.\n\nUse this tool to retrieve the PDF document for a completed quote from Stripe. It's useful when you need to obtain the finalized quote in PDF format for record-keeping or sharing purposes.", + "parameters": [ + { + "name": "quote_id", + "type": "string", + "required": true, + "description": "The unique identifier for the finalized quote to download as a PDF. This ID is required to retrieve the specific quote.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the quote response that should be expanded for additional detail.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetQuotesQuotePdf'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.DownloadQuotePdf", + "parameters": { + "quote_id": { + "value": "qtx_1J2Y3Z2eZvKYlo2CA3Qqai7w", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["customer", "lines"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAccountCapabilities", + "qualifiedName": "StripeApi.GetAccountCapabilities", + "fullyQualifiedName": "StripeApi.GetAccountCapabilities@1.0.0", + "description": "Retrieve capabilities associated with a Stripe account.\n\nThis tool returns a list of capabilities for a specified Stripe account, sorted by their creation date.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The ID of the Stripe account for which to retrieve capabilities. This is a required field.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response, specified as strings.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAccountsAccountCapabilities'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetAccountCapabilities", + "parameters": { + "account_id": { + "value": "acct_1E2wHf2eZvKYlo2C", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["capabilities", "settings"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAccountCapabilityDetails", + "qualifiedName": "StripeApi.GetAccountCapabilityDetails", + "fullyQualifiedName": "StripeApi.GetAccountCapabilityDetails@1.0.0", + "description": "Retrieve details of a specific account capability.\n\nThis tool fetches information about a specific capability of an account in Stripe. It should be called when there's a need to understand the capabilities available on an account.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Stripe account whose capability information is being requested.", + "enum": null, + "inferrable": true + }, + { + "name": "account_capability_identifier", + "type": "string", + "required": true, + "description": "A unique identifier string for the specific capability of the account to be retrieved. This is essential to specify which capability's details you want to fetch from Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to expand for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAccountsAccountCapabilitiesCapability'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetAccountCapabilityDetails", + "parameters": { + "account_id": { + "value": "acct_123456789", + "type": "string", + "required": true + }, + "account_capability_identifier": { + "value": "transfers", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["requirements", "supported_events"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetActiveEntitlements", + "qualifiedName": "StripeApi.GetActiveEntitlements", + "fullyQualifiedName": "StripeApi.GetActiveEntitlements@1.0.0", + "description": "Retrieve active entitlements for a customer from Stripe.\n\nThis tool fetches a list of active entitlements for a specific customer using Stripe's API. It's used when you need to know what entitlements a customer currently has.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier of the customer whose active entitlements are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "An object ID cursor to fetch the previous page of the list of active entitlements.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of field names to be expanded in the response from Stripe. Use this to include additional details related to specific entities.", + "enum": null, + "inferrable": true + }, + { + "name": "max_number_of_entitlements", + "type": "integer", + "required": false, + "description": "Maximum number of active entitlements to retrieve for the customer, between 1 and 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "Use this to specify where to start the list pagination. Provide the object ID from where the list should continue.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetEntitlementsActiveEntitlements'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetActiveEntitlements", + "parameters": { + "customer_id": { + "value": "cus_12345abcde", + "type": "string", + "required": true + }, + "pagination_ending_before": { + "value": "ent_67890fghij", + "type": "string", + "required": false + }, + "expand_fields_in_response": { + "value": ["subscription", "plan"], + "type": "array", + "required": false + }, + "max_number_of_entitlements": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "ent_54321zyxwv", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetApplicationFeeRefunds", + "qualifiedName": "StripeApi.GetApplicationFeeRefunds", + "fullyQualifiedName": "StripeApi.GetApplicationFeeRefunds@1.0.0", + "description": "Retrieve refunds for a specific application fee.\n\nUse this tool to access more than the default 10 refunds associated with a specific application fee, using pagination parameters if needed.", + "parameters": [ + { + "name": "application_fee_id", + "type": "string", + "required": true, + "description": "The unique identifier of the application fee for which refunds are being retrieved. This ID specifies which fee's refunds should be listed.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_ending_before", + "type": "string", + "required": false, + "description": "An object ID cursor used for pagination to fetch the previous page of refunds.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to expand for additional details.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_number_of_refunds", + "type": "integer", + "required": false, + "description": "The maximum number of refund objects to return, ranging from 1 to 100. Defaults to 10 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "An object ID to fetch the next page of refunds after this ID, used for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetApplicationFeesIdRefunds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetApplicationFeeRefunds", + "parameters": { + "application_fee_id": { + "value": "fee_1JH2N2L2Z4uAq4T0d8fRQ1YZ", + "type": "string", + "required": true + }, + "pagination_cursor_ending_before": { + "value": "refund_1JH2N3L2Z4uAq4T0d8fRQ1YZ", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["balance_transaction", "charge"], + "type": "array", + "required": false + }, + "maximum_number_of_refunds": { + "value": 50, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "refund_1JH2N5L2Z4uAq4T0d8fRQ1YZ", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBalanceSettings", + "qualifiedName": "StripeApi.GetBalanceSettings", + "fullyQualifiedName": "StripeApi.GetBalanceSettings@1.0.0", + "description": "Retrieve balance settings for a connected Stripe account.\n\nUse this tool to obtain the balance settings associated with a specific connected account in Stripe. Useful for managing and reviewing account financial settings.", + "parameters": [ + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for the connected Stripe account's balance settings.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBalanceSettings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetBalanceSettings", + "parameters": { + "fields_to_expand": { + "value": ["available", "pending", "settings"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBalanceTransactionById", + "qualifiedName": "StripeApi.GetBalanceTransactionById", + "fullyQualifiedName": "StripeApi.GetBalanceTransactionById@1.0.0", + "description": "Retrieve details of a balance transaction by ID.\n\nCall this tool to get comprehensive information about a specific balance transaction using its ID.", + "parameters": [ + { + "name": "transaction_id", + "type": "string", + "required": true, + "description": "The unique identifier of the balance transaction to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBalanceTransactionsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetBalanceTransactionById", + "parameters": { + "transaction_id": { + "value": "txn_1JgBm2Lh1TeXY7k0m5wYX1AB", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["source", "description"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBillingAlert", + "qualifiedName": "StripeApi.GetBillingAlert", + "fullyQualifiedName": "StripeApi.GetBillingAlert@1.0.0", + "description": "Retrieve billing alert details by ID.\n\nThis tool retrieves billing alert information from Stripe using a specific alert ID. It should be called when you need details about a particular billing alert.", + "parameters": [ + { + "name": "billing_alert_id", + "type": "string", + "required": true, + "description": "The unique identifier of the billing alert to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response that should be expanded.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBillingAlertsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetBillingAlert", + "parameters": { + "billing_alert_id": { + "value": "ba_1IY2n3GFbT6v0NnO1jA2kO15", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["customer", "subscription"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBillingAlerts", + "qualifiedName": "StripeApi.GetBillingAlerts", + "fullyQualifiedName": "StripeApi.GetBillingAlerts@1.0.0", + "description": "Retrieve active and inactive billing alerts.\n\nUse this tool to list all current billing alerts, both active and inactive, from Stripe.", + "parameters": [ + { + "name": "filter_by_alert_type", + "type": "string", + "required": false, + "description": "Filter results to only include alerts of the specified type. Accepts 'usage_threshold'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "A pagination cursor. Use this ID to fetch the previous page of the list if starting from a specific object.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response that should be expanded. Each field should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of billing alerts to be returned. Accepts an integer from 1 to 100. Defaults to 10 if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_meter", + "type": "string", + "required": false, + "description": "Filter results to only include alerts related to a specific meter type.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "Cursor indicating the starting point for fetching the next page of alerts. Use an object ID from a previous response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBillingAlerts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetBillingAlerts", + "parameters": { + "filter_by_alert_type": { + "value": "usage_threshold", + "type": "string", + "required": false + }, + "pagination_ending_before": { + "value": "alert_1234567890", + "type": "string", + "required": false + }, + "expand_response_fields": { + "value": ["alert_type", "status"], + "type": "array", + "required": false + }, + "result_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "filter_by_meter": { + "value": "meter_ABC123", + "type": "string", + "required": false + }, + "pagination_starting_after": { + "value": "alert_0987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBillingCreditGrants", + "qualifiedName": "StripeApi.GetBillingCreditGrants", + "fullyQualifiedName": "StripeApi.GetBillingCreditGrants@1.0.0", + "description": "Retrieve a list of billing credit grants.\n\nUse this tool to retrieve information about billing credit grants from Stripe. It should be called when you need details about existing credit grants.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": false, + "description": "The unique identifier of the customer whose credit grants you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "An object ID to fetch the previous page of the list. Use the last received object's ID from the current page.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to be expanded in the response for detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "credit_grant_limit", + "type": "integer", + "required": false, + "description": "The maximum number of credit grants to return, between 1 and 100. Defaults to 10 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "A cursor (object ID) for pagination to fetch the next page in the list. Use the ID from the last object in the previous list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBillingCreditGrants'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetBillingCreditGrants", + "parameters": { + "customer_id": { + "value": "cus_J5Rk9GZ1mukG2p", + "type": "string", + "required": false + }, + "pagination_ending_before": { + "value": "cg_1JwXYZ2Wz9yT5LxA2m2Km8Dj", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["customer", "amount"], + "type": "array", + "required": false + }, + "credit_grant_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "cg_1JwXYZ3Wz9yT5LxA2m2Km8Dk", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBillingMeterEventSummaries", + "qualifiedName": "StripeApi.GetBillingMeterEventSummaries", + "fullyQualifiedName": "StripeApi.GetBillingMeterEventSummaries@1.0.0", + "description": "Retrieve billing meter event summaries by meter ID.\n\nCall this tool to get a list of billing meter event summaries for a specific meter ID, providing insights into billing events and activities.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier of the customer for which to fetch event summaries.", + "enum": null, + "inferrable": true + }, + { + "name": "stop_aggregating_until", + "type": "integer", + "required": true, + "description": "The exclusive timestamp to stop aggregating meter events. Ensure it aligns with minute boundaries.", + "enum": null, + "inferrable": true + }, + { + "name": "start_time_timestamp", + "type": "integer", + "required": true, + "description": "The timestamp to begin aggregating meter events (inclusive). Must align with minute boundaries.", + "enum": null, + "inferrable": true + }, + { + "name": "meter_id", + "type": "string", + "required": true, + "description": "The unique identifier for the billing meter to fetch event summaries for.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before_id", + "type": "string", + "required": false, + "description": "An object ID for pagination, used to fetch the previous page of a list. Aligns the list cursor to end before the specified object ID.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for detailed results.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_objects_limit", + "type": "integer", + "required": false, + "description": "A limit on the number of billing meter event summaries to be returned. Must be between 1 and 100, with a default of 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_id", + "type": "string", + "required": false, + "description": "The object ID to use as a cursor to fetch the next page of the list for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "granularity_for_event_summaries", + "type": "string", + "required": false, + "description": "Specifies the granularity for event summaries: 'hour' or 'day'. If not set, returns a single summary for the time range.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBillingMetersIdEventSummaries'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetBillingMeterEventSummaries", + "parameters": { + "customer_id": { + "value": "cus_123456789", + "type": "string", + "required": true + }, + "stop_aggregating_until": { + "value": 1672531199, + "type": "integer", + "required": true + }, + "start_time_timestamp": { + "value": 1672444800, + "type": "integer", + "required": true + }, + "meter_id": { + "value": "meter_abcdefg12345", + "type": "string", + "required": true + }, + "pagination_ending_before_id": { + "value": "evt_567890123", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["amount", "usage"], + "type": "array", + "required": false + }, + "number_of_objects_limit": { + "value": 15, + "type": "integer", + "required": false + }, + "pagination_starting_after_id": { + "value": "evt_456789012", + "type": "string", + "required": false + }, + "granularity_for_event_summaries": { + "value": "day", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBillingMeters", + "qualifiedName": "StripeApi.GetBillingMeters", + "fullyQualifiedName": "StripeApi.GetBillingMeters@1.0.0", + "description": "Retrieve a list of billing meters from Stripe.", + "parameters": [ + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "An object ID cursor to fetch the previous page, used for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings specifying which fields in the response should be expanded.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_billing_meters", + "type": "integer", + "required": false, + "description": "Specify the number of billing meters to return, ranging from 1 to 100 (default is 10).", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "Cursor ID to define your starting point in the list for pagination. Use this to fetch the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_status", + "type": "string", + "required": false, + "description": "Filter results to include only billing meters with the specified status. Options are 'active' or 'inactive'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBillingMeters'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetBillingMeters", + "parameters": { + "pagination_ending_before": { + "value": "meter_1234567890", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["usage", "subscription"], + "type": "array", + "required": false + }, + "number_of_billing_meters": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "meter_0987654321", + "type": "string", + "required": false + }, + "filter_status": { + "value": "active", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBillingPortalConfigurations", + "qualifiedName": "StripeApi.GetBillingPortalConfigurations", + "fullyQualifiedName": "StripeApi.GetBillingPortalConfigurations@1.0.0", + "description": "Retrieve customer portal configurations from Stripe.\n\nProvides configurations that describe the functionality of the billing customer portal. Useful for understanding available setups and settings for customer management.", + "parameters": [ + { + "name": "pagination_cursor_ending_before", + "type": "string", + "required": false, + "description": "A cursor for pagination to get the previous page in the list, using an object ID.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded. Each entry should be a string representing a field name.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specify the number of configurations to return, between 1 and 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_after_id", + "type": "string", + "required": false, + "description": "A cursor object ID used to fetch the next page of the list for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "only_active_configurations", + "type": "boolean", + "required": false, + "description": "Set to true to list only active configurations, or false to list inactive ones.", + "enum": null, + "inferrable": true + }, + { + "name": "return_default_configurations_only", + "type": "boolean", + "required": false, + "description": "Set to true to return only default configurations, or false to return non-default configurations.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBillingPortalConfigurations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetBillingPortalConfigurations", + "parameters": { + "pagination_cursor_ending_before": { + "value": "cursors_end_123456", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["settings", "features"], + "type": "array", + "required": false + }, + "result_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_start_after_id": { + "value": "cursors_start_654321", + "type": "string", + "required": false + }, + "only_active_configurations": { + "value": true, + "type": "boolean", + "required": false + }, + "return_default_configurations_only": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetChargeDisputeDetails", + "qualifiedName": "StripeApi.GetChargeDisputeDetails", + "fullyQualifiedName": "StripeApi.GetChargeDisputeDetails@1.0.0", + "description": "Retrieve details of a dispute for a specific charge.\n\nUse this tool to fetch information about a dispute associated with a particular charge. This is helpful when you need to understand the dispute details for a specific transaction processed via Stripe.", + "parameters": [ + { + "name": "charge_id", + "type": "string", + "required": true, + "description": "The unique identifier of the charge for which you want to retrieve dispute details.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand_in_dispute_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the dispute response for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetChargesChargeDispute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetChargeDisputeDetails", + "parameters": { + "charge_id": { + "value": "ch_1IYg6A2eZvKYlo2CE9Odo2RU", + "type": "string", + "required": true + }, + "fields_to_expand_in_dispute_response": { + "value": ["reason", "evidence"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetChargeRefunds", + "qualifiedName": "StripeApi.GetChargeRefunds", + "fullyQualifiedName": "StripeApi.GetChargeRefunds@1.0.0", + "description": "Retrieve refunds for a specific charge on Stripe.\n\nThis tool retrieves a list of refunds associated with a specific charge on Stripe. It provides access to more than the 10 most recent refunds by allowing pagination through the 'limit' and 'starting_after' parameters.", + "parameters": [ + { + "name": "charge_id", + "type": "string", + "required": true, + "description": "The unique identifier of the charge for which to retrieve refunds. This ID is required to specify the particular charge.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "Specify an object ID to fetch the previous page of refunds before this object.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for more detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "object_return_limit", + "type": "integer", + "required": false, + "description": "Specify the number of refunds to return, ranging from 1 to 100. Defaults to 10 if not set.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "ID of the object to start retrieving the next page from. Used for pagination in refund lists.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetChargesChargeRefunds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetChargeRefunds", + "parameters": { + "charge_id": { + "value": "ch_3J7Y4sKz0kWo1A", + "type": "string", + "required": true + }, + "pagination_ending_before": { + "value": "re_1J3XmpKz0kWo1A4gkWKl7wK", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["payment_intent", "balance_transaction"], + "type": "array", + "required": false + }, + "object_return_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "re_1J3XmqKz0kWo1A4gkWKl7wD", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCheckoutSessionLineItems", + "qualifiedName": "StripeApi.GetCheckoutSessionLineItems", + "fullyQualifiedName": "StripeApi.GetCheckoutSessionLineItems@1.0.0", + "description": "Fetch line items from a Stripe Checkout Session.\n\nUse this tool to retrieve line items associated with a specific Stripe Checkout Session, including a paginated list if required.", + "parameters": [ + { + "name": "checkout_session_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Stripe Checkout Session. This ID is required to retrieve associated line items.", + "enum": null, + "inferrable": true + }, + { + "name": "cursor_ending_before", + "type": "string", + "required": false, + "description": "An object ID used for pagination to retrieve the page before the specified object in the list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for additional details.", + "enum": null, + "inferrable": true + }, + { + "name": "item_limit", + "type": "integer", + "required": false, + "description": "Sets the maximum number of line items to return, ranging from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "A string representing the object ID to start the list after, for pagination purposes.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCheckoutSessionsSessionLineItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCheckoutSessionLineItems", + "parameters": { + "checkout_session_id": { + "value": "cs_test_a1b2c3d4e5f6g7h8i9j0", + "type": "string", + "required": true + }, + "cursor_ending_before": { + "value": "item_1a2b3c4d5e6f7g8h9i0j", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["line_items", "customer"], + "type": "array", + "required": false + }, + "item_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "item_0j9i8h7g6f5e4d3c2b1a", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetClimateOrderDetails", + "qualifiedName": "StripeApi.GetClimateOrderDetails", + "fullyQualifiedName": "StripeApi.GetClimateOrderDetails@1.0.0", + "description": "Retrieve details of a specific Climate order.\n\nUse this tool to get information about a Climate order based on its ID.", + "parameters": [ + { + "name": "order_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Climate order to retrieve details.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetClimateOrdersOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetClimateOrderDetails", + "parameters": { + "order_id": { + "value": "climate_order_12345", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer_details", "shipping_info"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetConfirmationTokenInfo", + "qualifiedName": "StripeApi.GetConfirmationTokenInfo", + "fullyQualifiedName": "StripeApi.GetConfirmationTokenInfo@1.0.0", + "description": "Retrieves details of an existing confirmation token.\n\nThis tool is used to retrieve information about a specific ConfirmationToken object in the Stripe system. It should be called when there is a need to obtain the details of a previously generated confirmation token.", + "parameters": [ + { + "name": "confirmation_token", + "type": "string", + "required": true, + "description": "The unique identifier of the confirmation token to retrieve details for. This is required.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response for additional details. Each field should be specified as a string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetConfirmationTokensConfirmationToken'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetConfirmationTokenInfo", + "parameters": { + "confirmation_token": { + "value": "tok_1JHYgZ2eZvKYlo2C3zYSAQ9z", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer", "payment_intent"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCountrySpecifications", + "qualifiedName": "StripeApi.GetCountrySpecifications", + "fullyQualifiedName": "StripeApi.GetCountrySpecifications@1.0.0", + "description": "Retrieve country specifications using a country code.\n\nThis tool is used to obtain the specifications for a specific country by providing its country code. It should be called when information related to the country's financial regulations, formats, or other specifications is needed.", + "parameters": [ + { + "name": "country_code", + "type": "string", + "required": true, + "description": "The ISO 3166-1 alpha-2 country code for which you want to retrieve specifications. For example, 'US' for the United States.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to be expanded. Each field should be specified as a string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCountrySpecsCountry'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCountrySpecifications", + "parameters": { + "country_code": { + "value": "US", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["financial_regulations", "payment_methods"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCouponDetails", + "qualifiedName": "StripeApi.GetCouponDetails", + "fullyQualifiedName": "StripeApi.GetCouponDetails@1.0.0", + "description": "Retrieve details of a coupon by its ID.\n\nUse this tool to fetch information about a specific coupon available in your Stripe account, identified by its unique ID.", + "parameters": [ + { + "name": "coupon_id", + "type": "string", + "required": true, + "description": "The unique identifier of the coupon to retrieve details.", + "enum": null, + "inferrable": true + }, + { + "name": "expanded_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCouponsCoupon'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCouponDetails", + "parameters": { + "coupon_id": { + "value": "COUPON_123456789", + "type": "string", + "required": true + }, + "expanded_fields": { + "value": ["duration", "amount_off"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCreditBalanceTransaction", + "qualifiedName": "StripeApi.GetCreditBalanceTransaction", + "fullyQualifiedName": "StripeApi.GetCreditBalanceTransaction@1.0.0", + "description": "Retrieve a credit balance transaction by ID.\n\nUse this tool to obtain information about a specific credit balance transaction using its ID.", + "parameters": [ + { + "name": "transaction_id", + "type": "string", + "required": true, + "description": "Unique identifier for the credit balance transaction to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of field names to expand in the response. Allows accessing nested information related to the transaction.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBillingCreditBalanceTransactionsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCreditBalanceTransaction", + "parameters": { + "transaction_id": { + "value": "txn_1JH2Z2IwD0W8gA", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["payment_method", "invoice"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCreditBalanceTransactions", + "qualifiedName": "StripeApi.GetCreditBalanceTransactions", + "fullyQualifiedName": "StripeApi.GetCreditBalanceTransactions@1.0.0", + "description": "Retrieve a list of credit balance transactions.\n\nThis tool calls the Stripe API endpoint to fetch credit balance transactions. It should be used to review or analyze credit activity associated with billing accounts.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier of the customer for which to fetch credit balance transactions.", + "enum": null, + "inferrable": true + }, + { + "name": "credit_grant_id", + "type": "string", + "required": false, + "description": "The identifier for the specific credit grant to fetch its credit balance transactions.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_cursor", + "type": "string", + "required": false, + "description": "A pagination cursor ID to fetch the previous page of the list. Use an object ID to identify your position.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response that should be expanded for additional details.", + "enum": null, + "inferrable": true + }, + { + "name": "max_transactions_to_return", + "type": "integer", + "required": false, + "description": "Specify the maximum number of transactions to return, ranging between 1 and 100. The default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "An object ID cursor to fetch the next page of credit balance transactions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBillingCreditBalanceTransactions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCreditBalanceTransactions", + "parameters": { + "customer_id": { + "value": "cus_123456789", + "type": "string", + "required": true + }, + "credit_grant_id": { + "value": "cg_987654321", + "type": "string", + "required": false + }, + "pagination_ending_cursor": { + "value": "cursor_abcdef", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["transaction_detail", "payment_method"], + "type": "array", + "required": false + }, + "max_transactions_to_return": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "cursor_xyz123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCreditReversalDetails", + "qualifiedName": "StripeApi.GetCreditReversalDetails", + "fullyQualifiedName": "StripeApi.GetCreditReversalDetails@1.0.0", + "description": "Retrieve details of a specific CreditReversal using its ID.\n\nUse this tool to fetch information about an existing CreditReversal by providing its unique ID. Ideal for confirming details or reviewing the status of a CreditReversal transaction.", + "parameters": [ + { + "name": "credit_reversal_id", + "type": "string", + "required": true, + "description": "The unique ID of the CreditReversal to retrieve details for. This ID is obtained from the CreditReversal creation request or list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryCreditReversalsCreditReversal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCreditReversalDetails", + "parameters": { + "credit_reversal_id": { + "value": "rev_1J2eYz2eZvKYlo2CUbFbqF8Z", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["amount", "reason"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCreditReversals", + "qualifiedName": "StripeApi.GetCreditReversals", + "fullyQualifiedName": "StripeApi.GetCreditReversals@1.0.0", + "description": "Retrieve a list of Credit Reversals from Stripe's Treasury.\n\nThis tool fetches a list of Credit Reversals from Stripe's Treasury endpoint. It should be used when detailed information about credit reversals is needed.", + "parameters": [ + { + "name": "financial_account_id", + "type": "string", + "required": true, + "description": "The ID of the FinancialAccount associated with the CreditReversals to be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "A cursor object ID for pagination to fetch the previous list page.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to be expanded in the response for detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "max_objects_returned", + "type": "integer", + "required": false, + "description": "Sets the maximum number of credit reversals to be returned. Valid range is 1 to 100, defaulting to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_received_credit_id", + "type": "string", + "required": false, + "description": "Filter Credit Reversals to only include those associated with the specified ReceivedCredit ID.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "An object ID used to fetch the next page of the list in a paginated response.", + "enum": null, + "inferrable": true + }, + { + "name": "credit_reversal_status", + "type": "string", + "required": false, + "description": "Filter CreditReversals based on their status. Possible values are: canceled, posted, processing.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryCreditReversals'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCreditReversals", + "parameters": { + "financial_account_id": { + "value": "fa_123456789", + "type": "string", + "required": true + }, + "pagination_ending_before": { + "value": "reversal_987654321", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["details", "related_transactions"], + "type": "array", + "required": false + }, + "max_objects_returned": { + "value": 20, + "type": "integer", + "required": false + }, + "filter_by_received_credit_id": { + "value": "rc_abc123", + "type": "string", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "reversal_123456789", + "type": "string", + "required": false + }, + "credit_reversal_status": { + "value": "posted", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCurrentAccountBalance", + "qualifiedName": "StripeApi.GetCurrentAccountBalance", + "fullyQualifiedName": "StripeApi.GetCurrentAccountBalance@1.0.0", + "description": "Retrieve the current account balance from Stripe.\n\nUse this tool to get the current account balance based on the authentication used. It's helpful for accessing up-to-date financial data from the Stripe account.", + "parameters": [ + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBalance'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCurrentAccountBalance", + "parameters": { + "fields_to_expand": { + "value": ["available", "pending"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerBalanceTransaction", + "qualifiedName": "StripeApi.GetCustomerBalanceTransaction", + "fullyQualifiedName": "StripeApi.GetCustomerBalanceTransaction@1.0.0", + "description": "Retrieve a specific customer balance transaction from Stripe.\n\nThis tool retrieves details about a specific balance transaction that impacted a customer's balance in Stripe.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer. This is required to retrieve the specific balance transaction.", + "enum": null, + "inferrable": true + }, + { + "name": "transaction_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer balance transaction to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerBalanceTransactionsTransaction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCustomerBalanceTransaction", + "parameters": { + "customer_id": { + "value": "cus_J5V7dk4ErXgO6u", + "type": "string", + "required": true + }, + "transaction_id": { + "value": "txn_1IY2TY2eZvKYlo2C2nsK5Q9A", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["source", "payment_method"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerBalanceTransactions", + "qualifiedName": "StripeApi.GetCustomerBalanceTransactions", + "fullyQualifiedName": "StripeApi.GetCustomerBalanceTransactions@1.0.0", + "description": "Retrieve a customer's balance transaction updates.\n\nFetches a list of transactions that have updated a customer's balance within Stripe.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier of the customer. This ID is used to retrieve balance transaction updates for that specific customer.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before_cursor", + "type": "string", + "required": false, + "description": "A cursor ID used to fetch the previous page of balance transactions in pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Sets the maximum number of balance transactions to retrieve, ranging from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "A cursor for pagination. Use the object ID from the last received page to fetch the next page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerBalanceTransactions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCustomerBalanceTransactions", + "parameters": { + "customer_id": { + "value": "cus_J6dJidq123456", + "type": "string", + "required": true + }, + "pagination_ending_before_cursor": { + "value": "txn_11A2B3C4D5E6", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["amount", "currency", "description"], + "type": "array", + "required": false + }, + "result_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "txn_11A2B3C4D5E7", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerBankAccountDetails", + "qualifiedName": "StripeApi.GetCustomerBankAccountDetails", + "fullyQualifiedName": "StripeApi.GetCustomerBankAccountDetails@1.0.0", + "description": "Retrieve details of a customer's bank account from Stripe.\n\nUse this tool to get specific details about a bank account associated with a Stripe customer. It helps when you need information beyond the most recent sources shown by default.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Stripe customer whose bank account details are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "bank_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific bank account associated with the Stripe customer.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to expand for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerBankAccountsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCustomerBankAccountDetails", + "parameters": { + "customer_id": { + "value": "cus_Je8seIwcQjSc5L", + "type": "string", + "required": true + }, + "bank_account_id": { + "value": "ba_1Hw3H2L3fCjYyA", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["bank_name", "account_holder_name"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerBankAccounts", + "qualifiedName": "StripeApi.GetCustomerBankAccounts", + "fullyQualifiedName": "StripeApi.GetCustomerBankAccounts@1.0.0", + "description": "Retrieve bank accounts for a specific customer.\n\nCall this tool to obtain a list of bank accounts associated with a particular customer. Useful for viewing more than the 10 most recent bank accounts when paginating.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier of the customer whose bank accounts you want to retrieve. This ID is required to access the bank account details associated with a specific customer.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "An object ID used as a cursor to fetch the previous page of bank accounts in a paginated list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response. Specify which aspects of the response should be expanded for detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "The maximum number of bank accounts to return, ranging from 1 to 100. Defaults to 10 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_starting_after", + "type": "string", + "required": false, + "description": "A string specifying the object ID to define your place in the list for pagination. Use this to fetch the next page of bank accounts.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerBankAccounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCustomerBankAccounts", + "parameters": { + "customer_id": { + "value": "cus_123456789", + "type": "string", + "required": true + }, + "pagination_ending_before": { + "value": "ba_987654321", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["bank_account_holder_name", "bank_account_type"], + "type": "array", + "required": false + }, + "result_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_cursor_starting_after": { + "value": "ba_123456789", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerCardDetails", + "qualifiedName": "StripeApi.GetCustomerCardDetails", + "fullyQualifiedName": "StripeApi.GetCustomerCardDetails@1.0.0", + "description": "Retrieve details about a specific card for a customer.\n\nThis tool retrieves information about a specific card associated with a customer, allowing you to access details beyond the most recent 10 cards available directly on the customer object.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer whose card details are being retrieved. This is required to specify which customer's card information you want to access.", + "enum": null, + "inferrable": true + }, + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the card to retrieve details for. This is specific to the card associated with the customer.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerCardsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCustomerCardDetails", + "parameters": { + "customer_id": { + "value": "cus_Jq2D4q9aY7xUOM", + "type": "string", + "required": true + }, + "card_id": { + "value": "card_1JkD9TCZ8LFt5c", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["billing_details", "metadata"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerCards", + "qualifiedName": "StripeApi.GetCustomerCards", + "fullyQualifiedName": "StripeApi.GetCustomerCards@1.0.0", + "description": "Retrieve a list of cards belonging to a customer.\n\nUse this tool to access a list of cards for a specific customer in the Stripe system. This is useful when more than the 10 most recent card sources are needed.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer whose cards are to be retrieved. This ID is required to obtain the card list.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "Object ID to define the cursor's place in pagination, used to fetch the previous page of the card list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded for additional details.", + "enum": null, + "inferrable": true + }, + { + "name": "card_retrieval_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of cards to retrieve. The limit must be between 1 and 100, with a default of 10 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "An object ID indicating the position to start fetching the next page of the card list. Use this for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerCards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCustomerCards", + "parameters": { + "customer_id": { + "value": "cus_Jq2At2wFqZg5Yr", + "type": "string", + "required": true + }, + "pagination_ending_before": { + "value": "card_1IYqA9FqZg5Yr123456", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["brand", "last4", "exp_month"], + "type": "array", + "required": false + }, + "card_retrieval_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "card_1IYqA9FqZg5Yr654321", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerCashBalance", + "qualifiedName": "StripeApi.GetCustomerCashBalance", + "fullyQualifiedName": "StripeApi.GetCustomerCashBalance@1.0.0", + "description": "Retrieve a customer's cash balance on Stripe.\n\nThis tool retrieves the cash balance of a specific customer from Stripe. It should be called when there's a need to check the available balance for a customer account.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier of the customer whose cash balance is being retrieved. This ID is used to specify which customer's balance should be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings specifying which fields in the response should be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerCashBalance'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCustomerCashBalance", + "parameters": { + "customer_id": { + "value": "cus_J1X2y3Z4ABcD5e", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["balance_history", "currency"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerCashBalanceTransactions", + "qualifiedName": "StripeApi.GetCustomerCashBalanceTransactions", + "fullyQualifiedName": "StripeApi.GetCustomerCashBalanceTransactions@1.0.0", + "description": "Retrieve transactions modifying a customer's cash balance.\n\nThis tool returns a list of transactions that have modified a customer's cash balance. Use this to track financial changes in a customer's account.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier of the customer whose cash balance transactions are to be retrieved. This ID is required for the API call.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_ending_before", + "type": "string", + "required": false, + "description": "A string representing the ID used for pagination to fetch the previous page of transactions.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "transaction_limit", + "type": "integer", + "required": false, + "description": "The number of transactions to return, between 1 and 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "Object ID cursor for pagination to continue listing transactions after a specified object.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerCashBalanceTransactions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCustomerCashBalanceTransactions", + "parameters": { + "customer_id": { + "value": "cus_123456789", + "type": "string", + "required": true + }, + "pagination_cursor_ending_before": { + "value": "txn_123456", + "type": "string", + "required": false + }, + "expand_fields": { + "value": ["details", "metadata"], + "type": "array", + "required": false + }, + "transaction_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "txn_987654", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerPaymentMethod", + "qualifiedName": "StripeApi.GetCustomerPaymentMethod", + "fullyQualifiedName": "StripeApi.GetCustomerPaymentMethod@1.0.0", + "description": "Retrieve a customer's specific payment method.\n\nThis tool retrieves detailed information about a specific PaymentMethod linked to a given customer. It should be called when there is a need to access or verify details of a particular payment method for a customer in Stripe.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer whose payment method information is being retrieved. This ID should be a string matching the customer's record in Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "payment_method_id", + "type": "string", + "required": true, + "description": "The unique identifier for the payment method to retrieve for the customer.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the payment method response that should be expanded for more details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerPaymentMethodsPaymentMethod'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCustomerPaymentMethod", + "parameters": { + "customer_id": { + "value": "cus_J5nT8YhJBRz43t", + "type": "string", + "required": true + }, + "payment_method_id": { + "value": "pm_1J2w8A2eZvKYlo2ChHZXLg3F", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["billing_details", "card"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerPaymentMethods", + "qualifiedName": "StripeApi.GetCustomerPaymentMethods", + "fullyQualifiedName": "StripeApi.GetCustomerPaymentMethods@1.0.0", + "description": "Retrieve payment methods for a specific customer.\n\nThis tool should be called to obtain a list of payment methods associated with a particular customer in Stripe.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "Unique identifier for the customer whose payment methods are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_redisplay_setting", + "type": "string", + "required": false, + "description": "Indicates if the payment method can be shown again in a checkout flow. Options: 'always', 'limited', 'unspecified'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before_id", + "type": "string", + "required": false, + "description": "An object ID used to paginate backwards by defining the end of the list.", + "enum": null, + "inferrable": true + }, + { + "name": "response_fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response for detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "max_payment_methods_returned", + "type": "integer", + "required": false, + "description": "Limit the number of payment methods returned. Accepts a value between 1 and 100, with a default of 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination that defines the start point in the list. Use the ID of the last object from the previous page.", + "enum": null, + "inferrable": true + }, + { + "name": "payment_method_type_filter", + "type": "string", + "required": false, + "description": "Specify a payment method type to filter the list. Without filtering, all types are included. Choose from options like 'card', 'paypal', etc.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerPaymentMethods'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCustomerPaymentMethods", + "parameters": { + "customer_id": { + "value": "cus_1234567890", + "type": "string", + "required": true + }, + "enable_redisplay_setting": { + "value": "always", + "type": "string", + "required": false + }, + "pagination_ending_before_id": { + "value": "pm_9876543210", + "type": "string", + "required": false + }, + "response_fields_to_expand": { + "value": ["billing_details", "card"], + "type": "array", + "required": false + }, + "max_payment_methods_returned": { + "value": 5, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "pm_2345678901", + "type": "string", + "required": false + }, + "payment_method_type_filter": { + "value": "card", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerPortalConfiguration", + "qualifiedName": "StripeApi.GetCustomerPortalConfiguration", + "fullyQualifiedName": "StripeApi.GetCustomerPortalConfiguration@1.0.0", + "description": "Retrieve customer portal configuration details.\n\nFetches the configuration that outlines the functionality of the billing portal for a specific customer.", + "parameters": [ + { + "name": "configuration_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer portal configuration to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of field names in the response that should be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBillingPortalConfigurationsConfiguration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCustomerPortalConfiguration", + "parameters": { + "configuration_id": { + "value": "cp_123456789", + "type": "string", + "required": true + }, + "expand_fields_in_response": { + "value": ["features", "business_profile"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerSubscriptions", + "qualifiedName": "StripeApi.GetCustomerSubscriptions", + "fullyQualifiedName": "StripeApi.GetCustomerSubscriptions@1.0.0", + "description": "Retrieve a customer's active subscriptions.\n\nUse this tool to obtain a list of active subscriptions for a specific customer. Useful for viewing subscription details beyond the default 10 most recent active subscriptions available on the customer object.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer whose subscriptions are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before_cursor", + "type": "string", + "required": false, + "description": "An object ID to define your position in pagination. Use this cursor to fetch the previous page of subscriptions.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for additional details.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_limit", + "type": "integer", + "required": false, + "description": "The maximum number of subscription objects to return. Must be between 1 and 100, defaulting to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_object_id", + "type": "string", + "required": false, + "description": "An object ID used as a cursor to fetch the next page of subscriptions in a paginated list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerSubscriptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCustomerSubscriptions", + "parameters": { + "customer_id": { + "value": "cus_JsH8uO9D1g0G4c", + "type": "string", + "required": true + }, + "pagination_ending_before_cursor": { + "value": "sub_1J3wYF2eZvKYlo2CSanC0G6n", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["latest_invoice", "plan"], + "type": "array", + "required": false + }, + "subscription_limit": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_starting_after_object_id": { + "value": "sub_1J3vDZ2eZvKYlo2CIGu3g7mf", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerTaxId", + "qualifiedName": "StripeApi.GetCustomerTaxId", + "fullyQualifiedName": "StripeApi.GetCustomerTaxId@1.0.0", + "description": "Retrieve a specific customer's tax ID information.\n\nThis tool retrieves the tax ID object for a specified customer using the given tax ID identifier.", + "parameters": [ + { + "name": "customer_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the customer whose tax ID is to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "tax_id_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the customer's tax ID to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of field names in the response that should be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerTaxIdsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCustomerTaxId", + "parameters": { + "customer_identifier": { + "value": "cus_123456789", + "type": "string", + "required": true + }, + "tax_id_identifier": { + "value": "txid_987654321", + "type": "string", + "required": true + }, + "expand_response_fields": { + "value": ["tax_id", "customer"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomerTaxIds", + "qualifiedName": "StripeApi.GetCustomerTaxIds", + "fullyQualifiedName": "StripeApi.GetCustomerTaxIds@1.0.0", + "description": "Retrieve a customer's tax IDs from their profile.\n\nCall this tool to get a list of all tax IDs associated with a specific customer. It gathers the tax identification numbers stored in a customer's account on Stripe.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The ID of the customer for whom the tax IDs are being retrieved. This is a required field.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "Cursor object ID to fetch the previous page in a paginated list. Use the ID from the starting object of the current list.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded. Provide field names as strings.", + "enum": null, + "inferrable": true + }, + { + "name": "max_number_of_tax_ids", + "type": "integer", + "required": false, + "description": "Specify the maximum number of tax IDs to return. Accepts an integer between 1 and 100, with a default value of 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "An object ID from the current list to continue fetching the next page in pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerTaxIds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetCustomerTaxIds", + "parameters": { + "customer_id": { + "value": "cus_123456789", + "type": "string", + "required": true + }, + "pagination_ending_before": { + "value": "taxid_987654321", + "type": "string", + "required": false + }, + "expand_fields": { + "value": ["tax_id_details", "customer_info"], + "type": "array", + "required": false + }, + "max_number_of_tax_ids": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "taxid_123456789", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDebitReversalsList", + "qualifiedName": "StripeApi.GetDebitReversalsList", + "fullyQualifiedName": "StripeApi.GetDebitReversalsList@1.0.0", + "description": "Retrieves a list of debit reversals from Stripe.\n\nUse this tool to obtain a list of debit reversals from the Stripe Treasury API, which provides details on reversed debit transactions.", + "parameters": [ + { + "name": "financial_account_id", + "type": "string", + "required": true, + "description": "The ID of the FinancialAccount to retrieve associated debit reversals.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before_cursor", + "type": "string", + "required": false, + "description": "A cursor object ID for pagination. Use this to fetch the previous page of the list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to expand for obtaining additional nested information.", + "enum": null, + "inferrable": true + }, + { + "name": "max_number_of_debit_reversals", + "type": "integer", + "required": false, + "description": "The maximum number of debit reversals to return. Must be between 1 and 100. Defaults to 10 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_received_debit_id", + "type": "string", + "required": false, + "description": "The ID of the ReceivedDebit to filter debit reversals by. Only returns reversals for this specific ID.", + "enum": null, + "inferrable": true + }, + { + "name": "resolution_status", + "type": "string", + "required": false, + "description": "Filter DebitReversals based on the resolution ('lost' or 'won').", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "An object ID that serves as a pagination cursor for fetching the next page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_status", + "type": "string", + "required": false, + "description": "Specify the status of DebitReversals to return. Options are: 'canceled', 'completed', or 'processing'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryDebitReversals'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetDebitReversalsList", + "parameters": { + "financial_account_id": { + "value": "fa_1234567890", + "type": "string", + "required": true + }, + "pagination_ending_before_cursor": { + "value": "evt_1GqICD2eZvKYlo2CqGrbMDcO", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["debit_id", "user"], + "type": "array", + "required": false + }, + "max_number_of_debit_reversals": { + "value": 20, + "type": "integer", + "required": false + }, + "filter_by_received_debit_id": { + "value": "rd_0987654321", + "type": "string", + "required": false + }, + "resolution_status": { + "value": "lost", + "type": "string", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "evt_1GqIDE2eZvKYlo2CqGrbMDcP", + "type": "string", + "required": false + }, + "filter_by_status": { + "value": "completed", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDeprecatedExchangeRates", + "qualifiedName": "StripeApi.GetDeprecatedExchangeRates", + "fullyQualifiedName": "StripeApi.GetDeprecatedExchangeRates@1.0.0", + "description": "Retrieves deprecated exchange rates for a given currency.\n\nThis tool fetches exchange rates from one currency to all supported currencies using the deprecated Exchange Rate API from Stripe. Use this only if the newer FX Quotes API is not suitable for your needs.", + "parameters": [ + { + "name": "currency_rate_id", + "type": "string", + "required": true, + "description": "The currency code (e.g., 'USD') to retrieve exchange rates for. Use the deprecated Exchange Rate API responsibly.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to be expanded in the response. Each field is specified as a string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetExchangeRatesRateId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetDeprecatedExchangeRates", + "parameters": { + "currency_rate_id": { + "value": "USD", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["rates", "source"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetExchangeRates", + "qualifiedName": "StripeApi.GetExchangeRates", + "fullyQualifiedName": "StripeApi.GetExchangeRates@1.0.0", + "description": "Retrieve Stripe's supported foreign currency exchange rates.\n\nFetches current exchange rates for foreign currencies supported by Stripe. Note: This API is deprecated; consider using the FX Quotes API instead.", + "parameters": [ + { + "name": "pagination_ending_before_currency", + "type": "string", + "required": false, + "description": "The currency code to define your position for fetching the previous page in the exchange rate list.", + "enum": null, + "inferrable": true + }, + { + "name": "response_fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded for detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Set the maximum number of exchange rate objects to return, ranging from 1 up to the maximum number supported by Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_currency", + "type": "string", + "required": false, + "description": "The currency code to define the starting point in the paginated list of exchange rates.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetExchangeRates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetExchangeRates", + "parameters": { + "pagination_ending_before_currency": { + "value": "EUR", + "type": "string", + "required": false + }, + "response_fields_to_expand": { + "value": ["rate", "currency"], + "type": "array", + "required": false + }, + "result_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_starting_currency": { + "value": "USD", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetExternalBankAccountDetails", + "qualifiedName": "StripeApi.GetExternalBankAccountDetails", + "fullyQualifiedName": "StripeApi.GetExternalBankAccountDetails@1.0.0", + "description": "Retrieve details of a specific external bank account for an account.\n\nUse this tool to obtain details of a specified external bank account associated with a given account using its ID.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the account associated with the external bank account.", + "enum": null, + "inferrable": true + }, + { + "name": "external_account_id", + "type": "string", + "required": true, + "description": "Unique identifier for the external bank account to retrieve its details.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to expand for additional detail.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAccountsAccountBankAccountsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetExternalBankAccountDetails", + "parameters": { + "account_id": { + "value": "acct_123456789", + "type": "string", + "required": true + }, + "external_account_id": { + "value": "ba_987654321", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["bank_name", "country", "currency"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFileDetails", + "qualifiedName": "StripeApi.GetFileDetails", + "fullyQualifiedName": "StripeApi.GetFileDetails@1.0.0", + "description": "Retrieve details of an existing file object from Stripe.\n\nFetches the details of a file object using its unique file ID on Stripe. Useful for accessing metadata and information about uploaded files.", + "parameters": [ + { + "name": "file_id", + "type": "string", + "required": true, + "description": "The unique identifier for the file object whose details you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetFilesFile'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetFileDetails", + "parameters": { + "file_id": { + "value": "file_ABC123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["metadata", "purpose"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFinancialAccountDetails", + "qualifiedName": "StripeApi.GetFinancialAccountDetails", + "fullyQualifiedName": "StripeApi.GetFinancialAccountDetails@1.0.0", + "description": "Retrieve details of a specific financial account.\n\nUse this tool to obtain comprehensive information about a specific financial account using its identifier.", + "parameters": [ + { + "name": "financial_account_id", + "type": "string", + "required": true, + "description": "The unique identifier of the financial account to be retrieved. This ID is required to fetch the account details.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of strings specifying which fields in the financial account details should be expanded in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryFinancialAccountsFinancialAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetFinancialAccountDetails", + "parameters": { + "financial_account_id": { + "value": "fa_account_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["balances", "external_accounts"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFinancialAccountFeatures", + "qualifiedName": "StripeApi.GetFinancialAccountFeatures", + "fullyQualifiedName": "StripeApi.GetFinancialAccountFeatures@1.0.0", + "description": "Retrieve features of a financial account.\n\nThis tool retrieves information about the features associated with a specified financial account in Stripe's treasury service. Use it to get detailed features of a financial account when needed.", + "parameters": [ + { + "name": "financial_account_id", + "type": "string", + "required": true, + "description": "The ID of the financial account for which to retrieve feature information. This is required.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryFinancialAccountsFinancialAccountFeatures'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetFinancialAccountFeatures", + "parameters": { + "financial_account_id": { + "value": "fa_123456789", + "type": "string", + "required": true + }, + "expand_response_fields": { + "value": ["transactions", "balances"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFinancialAccountOwners", + "qualifiedName": "StripeApi.GetFinancialAccountOwners", + "fullyQualifiedName": "StripeApi.GetFinancialAccountOwners@1.0.0", + "description": "Retrieve owners of a specified financial account.\n\nThis tool is used to list all the owners of a given financial account. It is essential when you need to verify or display the ownership details of an account.", + "parameters": [ + { + "name": "ownership_object_id", + "type": "string", + "required": true, + "description": "The ID of the ownership object from which to fetch the account owners.", + "enum": null, + "inferrable": true + }, + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The unique identifier of the financial account to retrieve its owners.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_ending_before", + "type": "string", + "required": false, + "description": "An ID to fetch the previous page in pagination, defining your place in the list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of field names in the response to be expanded, specified as an array of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "object_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of account owners to return, ranging from 1 to 100, with a default of 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "A cursor indicating the starting point for pagination in a list. Use the object ID from the previous response to fetch the next page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetFinancialConnectionsAccountsAccountOwners'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetFinancialAccountOwners", + "parameters": { + "ownership_object_id": { + "value": "obj_123456789", + "type": "string", + "required": true + }, + "account_id": { + "value": "acc_987654321", + "type": "string", + "required": true + }, + "pagination_cursor_ending_before": { + "value": "cursor_654321", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["name", "email"], + "type": "array", + "required": false + }, + "object_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "cursor_123456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFinancialConnectionsAccountDetails", + "qualifiedName": "StripeApi.GetFinancialConnectionsAccountDetails", + "fullyQualifiedName": "StripeApi.GetFinancialConnectionsAccountDetails@1.0.0", + "description": "Retrieve details of a Financial Connections Account.\n\nCall this tool to get detailed information about a specific Financial Connections Account using the account identifier.", + "parameters": [ + { + "name": "financial_account_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Financial Connections Account to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetFinancialConnectionsAccountsAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetFinancialConnectionsAccountDetails", + "parameters": { + "financial_account_identifier": { + "value": "fa_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["owner", "balance", "linked_accounts"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFinancialTransactionDetails", + "qualifiedName": "StripeApi.GetFinancialTransactionDetails", + "fullyQualifiedName": "StripeApi.GetFinancialTransactionDetails@1.0.0", + "description": "Retrieve details of a specific financial transaction.\n\nThis tool fetches details for a specific Financial Connections transaction, useful for accessing transaction information.", + "parameters": [ + { + "name": "transaction_id", + "type": "string", + "required": true, + "description": "The unique identifier of the financial transaction to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response to show additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetFinancialConnectionsTransactionsTransaction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetFinancialTransactionDetails", + "parameters": { + "transaction_id": { + "value": "txn_1234567890", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["account_details", "payment_method_details"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetInboundTransfers", + "qualifiedName": "StripeApi.GetInboundTransfers", + "fullyQualifiedName": "StripeApi.GetInboundTransfers@1.0.0", + "description": "Retrieve inbound transfers for a financial account.\n\nThis tool fetches a list of inbound transfers sent from a specified financial account using Stripe's treasury services.", + "parameters": [ + { + "name": "financial_account_id", + "type": "string", + "required": true, + "description": "The ID of the FinancialAccount to retrieve associated inbound transfers.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before_id", + "type": "string", + "required": false, + "description": "The object ID defining your place in the list to fetch the previous page. Use this for pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded for detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "transfer_limit", + "type": "integer", + "required": false, + "description": "Set the maximum number of inbound transfer objects to return, ranging from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_object_id", + "type": "string", + "required": false, + "description": "Cursor for pagination to fetch the next page by using the object ID from the end of the previous result set.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_transfer_status", + "type": "string", + "required": false, + "description": "Filter inbound transfers by their status: 'processing', 'succeeded', 'failed', or 'canceled'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryInboundTransfers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetInboundTransfers", + "parameters": { + "financial_account_id": { + "value": "fa_1Example12345", + "type": "string", + "required": true + }, + "pagination_ending_before_id": { + "value": "it_1ExamplePrev", + "type": "string", + "required": false + }, + "expand_response_fields": { + "value": ["amount", "currency"], + "type": "array", + "required": false + }, + "transfer_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after_object_id": { + "value": "it_1ExampleNext", + "type": "string", + "required": false + }, + "filter_by_transfer_status": { + "value": "succeeded", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetInvoiceItemDetails", + "qualifiedName": "StripeApi.GetInvoiceItemDetails", + "fullyQualifiedName": "StripeApi.GetInvoiceItemDetails@1.0.0", + "description": "Retrieve details of a specific invoice item by ID.", + "parameters": [ + { + "name": "invoice_item_id", + "type": "string", + "required": true, + "description": "The ID of the invoice item to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to expand for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetInvoiceitemsInvoiceitem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetInvoiceItemDetails", + "parameters": { + "invoice_item_id": { + "value": "ii_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer", "invoice"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetInvoiceLineItems", + "qualifiedName": "StripeApi.GetInvoiceLineItems", + "fullyQualifiedName": "StripeApi.GetInvoiceLineItems@1.0.0", + "description": "Fetch line items from a specific invoice.\n\nUse this tool to get the line items and their total count from a specific invoice. This is useful when you need detailed information about the charges in an invoice.", + "parameters": [ + { + "name": "invoice_id", + "type": "string", + "required": true, + "description": "The unique identifier for the invoice to retrieve line items from. Provide this ID to specify which invoice's line items you want to access.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before_cursor", + "type": "string", + "required": false, + "description": "A cursor ID to fetch the previous page of line items in the invoice list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List the fields in the invoice line items response that should be expanded for more details.", + "enum": null, + "inferrable": true + }, + { + "name": "max_line_items_to_return", + "type": "integer", + "required": false, + "description": "The maximum number of line items to return. It can range from 1 to 100, with a default of 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_after", + "type": "string", + "required": false, + "description": "An object ID defining your place in the list for pagination, used to fetch the next page of invoice line items.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetInvoicesInvoiceLines'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetInvoiceLineItems", + "parameters": { + "invoice_id": { + "value": "inv_123456789", + "type": "string", + "required": true + }, + "pagination_ending_before_cursor": { + "value": "cursor_987654321", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["description", "amount"], + "type": "array", + "required": false + }, + "max_line_items_to_return": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_start_after": { + "value": "cursor_123456789", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetInvoiceRenderingTemplates", + "qualifiedName": "StripeApi.GetInvoiceRenderingTemplates", + "fullyQualifiedName": "StripeApi.GetInvoiceRenderingTemplates@1.0.0", + "description": "Retrieve all invoice rendering templates by creation date.\n\nThis tool fetches a list of all invoice rendering templates, organized by creation date with the latest ones first. Use it to access and manage invoice templates efficiently.", + "parameters": [ + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "A pagination cursor indicating the object ID to end before when listing templates. Use this to fetch the previous page.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for more detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of invoice rendering templates to return, ranging from 1 to 100. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "Object ID defining your place in the list to fetch the next page.", + "enum": null, + "inferrable": true + }, + { + "name": "template_status", + "type": "string", + "required": false, + "description": "Filter templates by their status: 'active' or 'archived'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetInvoiceRenderingTemplates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetInvoiceRenderingTemplates", + "parameters": { + "pagination_ending_before": { + "value": "tpl_12345", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["description", "metadata"], + "type": "array", + "required": false + }, + "result_limit": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "tpl_67890", + "type": "string", + "required": false + }, + "template_status": { + "value": "active", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIssuingCardDetails", + "qualifiedName": "StripeApi.GetIssuingCardDetails", + "fullyQualifiedName": "StripeApi.GetIssuingCardDetails@1.0.0", + "description": "Retrieve details of a specific issuing card.\n\nUse this tool to get detailed information about an Issuing Card object from Stripe. It should be called when you need to fetch the details of a specific card.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the issuing card you want to retrieve details for. This is required.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of fields to expand in the response for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssuingCardsCard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetIssuingCardDetails", + "parameters": { + "card_id": { + "value": "ic_card_12345", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["cardholder", "status"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIssuingTokenInfo", + "qualifiedName": "StripeApi.GetIssuingTokenInfo", + "fullyQualifiedName": "StripeApi.GetIssuingTokenInfo@1.0.0", + "description": "Retrieve details of an Issuing Token.\n\nUse this tool to obtain information about a specific Issuing Token from Stripe.", + "parameters": [ + { + "name": "issuing_token_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Issuing Token to retrieve information for. This is required to specify which token's details are needed from Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to be expanded for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssuingTokensToken'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetIssuingTokenInfo", + "parameters": { + "issuing_token_id": { + "value": "it_1Hh1A0Lhs234Xj8YtLk1u1g0", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["card", "holder"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetLatestPhysicalBundles", + "qualifiedName": "StripeApi.GetLatestPhysicalBundles", + "fullyQualifiedName": "StripeApi.GetLatestPhysicalBundles@1.0.0", + "description": "Retrieve the latest physical bundle objects from Stripe.\n\nThis tool fetches a list of physical bundle objects from Stripe, sorted by creation date with the newest first. It's useful for obtaining the most recent physical bundles.", + "parameters": [ + { + "name": "pagination_end_before_id", + "type": "string", + "required": false, + "description": "An object ID used for pagination to fetch the previous page of the list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of response fields to expand for more detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_bundles_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of physical bundle objects to return, ranging from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_id", + "type": "string", + "required": false, + "description": "Provide the object ID to continue pagination from the next item after it in the list.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_status", + "type": "string", + "required": false, + "description": "Filter physical bundles by status. Options include 'active', 'inactive', or 'review'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_bundle_type", + "type": "string", + "required": false, + "description": "Specify the type of physical bundles to return. Options are 'custom' or 'standard'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssuingPhysicalBundles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetLatestPhysicalBundles", + "parameters": { + "pagination_end_before_id": { + "value": "bundle_12345", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["items", "shipping_details"], + "type": "array", + "required": false + }, + "number_of_bundles_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after_id": { + "value": "bundle_67890", + "type": "string", + "required": false + }, + "filter_status": { + "value": "active", + "type": "string", + "required": false + }, + "filter_by_bundle_type": { + "value": "custom", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetLinkedAccountDetails", + "qualifiedName": "StripeApi.GetLinkedAccountDetails", + "fullyQualifiedName": "StripeApi.GetLinkedAccountDetails@1.0.0", + "description": "Retrieve details of a financial connections account.\n\nUse this tool to get detailed information about a specific financial connections account linked with Stripe. It should be called when account information is needed.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the financial connections account to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetLinkedAccountsAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetLinkedAccountDetails", + "parameters": { + "account_id": { + "value": "acc_123456789", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["payout_schedule", "account_holder"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetLinkedAccountOwners", + "qualifiedName": "StripeApi.GetLinkedAccountOwners", + "fullyQualifiedName": "StripeApi.GetLinkedAccountOwners@1.0.0", + "description": "Retrieve owners of a specific linked account.\n\nUse this tool to list all the owners associated with a specific account. This can be helpful for verifying account ownership or managing account permissions.", + "parameters": [ + { + "name": "ownership_object_id", + "type": "string", + "required": true, + "description": "The unique ID of the ownership object to retrieve owners from. This is required to specify which account's owners to list.", + "enum": null, + "inferrable": true + }, + { + "name": "linked_account_id", + "type": "string", + "required": true, + "description": "The unique identifier of the account to retrieve owners for. This is required to specify which account's owners you want to list.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "Cursor ID for pagination to fetch the previous page. Use the object ID from the start of the current list result.", + "enum": null, + "inferrable": true + }, + { + "name": "expanded_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to be expanded in the response. Specify field names to include more data in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_owners_to_return", + "type": "integer", + "required": false, + "description": "Specify the number of account owners to retrieve, ranging from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "Cursor for pagination to specify the starting point for the next page of results using an object ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetLinkedAccountsAccountOwners'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetLinkedAccountOwners", + "parameters": { + "ownership_object_id": { + "value": "obj_123456789", + "type": "string", + "required": true + }, + "linked_account_id": { + "value": "acct_987654321", + "type": "string", + "required": true + }, + "pagination_ending_before": { + "value": "cursor_abcdefg", + "type": "string", + "required": false + }, + "expanded_fields": { + "value": ["name", "email"], + "type": "array", + "required": false + }, + "number_of_owners_to_return": { + "value": 5, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "cursor_hijklmnop", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOutboundTransferDetails", + "qualifiedName": "StripeApi.GetOutboundTransferDetails", + "fullyQualifiedName": "StripeApi.GetOutboundTransferDetails@1.0.0", + "description": "Retrieve details of a specific outbound transfer.\n\nUse this tool to get the details of an existing OutboundTransfer by providing the unique OutboundTransfer ID. It helps in tracking and managing outbound transfers.", + "parameters": [ + { + "name": "outbound_transfer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the outbound transfer to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to be expanded for more details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryOutboundTransfersOutboundTransfer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetOutboundTransferDetails", + "parameters": { + "outbound_transfer_id": { + "value": "ot_xxxxxxxxxxxxx", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["transaction_details", "associated_charges"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOutboundTransfers", + "qualifiedName": "StripeApi.GetOutboundTransfers", + "fullyQualifiedName": "StripeApi.GetOutboundTransfers@1.0.0", + "description": "Retrieve outbound transfers from a financial account.\n\nThis tool returns a list of outbound transfers sent from a specified financial account using Stripe's Treasury API.", + "parameters": [ + { + "name": "financial_account_id", + "type": "string", + "required": true, + "description": "The ID of the financial account to retrieve outbound transfers from.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_ending_before", + "type": "string", + "required": false, + "description": "Cursor for pagination to fetch the previous page of the outbound transfers list using an object ID.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded. Provide field names as strings.", + "enum": null, + "inferrable": true + }, + { + "name": "limit_transfers", + "type": "integer", + "required": false, + "description": "The number of outbound transfers to return. Valid range is 1 to 100, default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "A cursor for pagination to fetch the next page of the list, using an object ID from a previous request.", + "enum": null, + "inferrable": true + }, + { + "name": "outbound_transfer_status_filter", + "type": "string", + "required": false, + "description": "Filter outbound transfers by status, such as 'processing', 'canceled', 'failed', 'posted', or 'returned'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryOutboundTransfers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetOutboundTransfers", + "parameters": { + "financial_account_id": { + "value": "fa_123456789", + "type": "string", + "required": true + }, + "pagination_cursor_ending_before": { + "value": "ot_987654321", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["amount", "created"], + "type": "array", + "required": false + }, + "limit_transfers": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "ot_123456789", + "type": "string", + "required": false + }, + "outbound_transfer_status_filter": { + "value": "posted", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPaymentLinkLineItems", + "qualifiedName": "StripeApi.GetPaymentLinkLineItems", + "fullyQualifiedName": "StripeApi.GetPaymentLinkLineItems@1.0.0", + "description": "Retrieve the line items for a specific payment link.\n\nUse this tool to get the line items associated with a specific payment link from Stripe. It provides the initial set of line items and a URL for the full list if needed.", + "parameters": [ + { + "name": "payment_link_id", + "type": "string", + "required": true, + "description": "The unique identifier for the payment link whose line items need to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "An object ID that serves as a pagination cursor to fetch the previous page of the list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for more detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "item_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of line items to retrieve, ranging from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "An object ID used as a cursor to fetch the next page of the list when paginating. Use the ID of the last object from the previous response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPaymentLinksPaymentLinkLineItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetPaymentLinkLineItems", + "parameters": { + "payment_link_id": { + "value": "plink_1234567890abcdef", + "type": "string", + "required": true + }, + "pagination_ending_before": { + "value": "li_abcdef1234567890", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["description", "metadata"], + "type": "array", + "required": false + }, + "item_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "li_1234567890abcdef", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPaymentMethodDomainDetails", + "qualifiedName": "StripeApi.GetPaymentMethodDomainDetails", + "fullyQualifiedName": "StripeApi.GetPaymentMethodDomainDetails@1.0.0", + "description": "Retrieve details of a specific payment method domain.\n\nThis tool fetches information about a specified payment method domain. It should be called when details about an existing payment method domain are needed.", + "parameters": [ + { + "name": "payment_method_domain_id", + "type": "string", + "required": true, + "description": "The unique identifier of the payment method domain to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPaymentMethodDomainsPaymentMethodDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetPaymentMethodDomainDetails", + "parameters": { + "payment_method_domain_id": { + "value": "pm_1JH1Y3LHAeH0h1", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["billing_details", "payment_options"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProductDetails", + "qualifiedName": "StripeApi.GetProductDetails", + "fullyQualifiedName": "StripeApi.GetProductDetails@1.0.0", + "description": "Retrieve details of a specific product by ID.\n\nUse this tool to get information about an existing product by providing its unique ID. This is useful for accessing product details from Stripe's catalog.", + "parameters": [ + { + "name": "product_id", + "type": "string", + "required": true, + "description": "The unique identifier for the product to retrieve details. Obtainable from product creation requests or product lists.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetProductsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetProductDetails", + "parameters": { + "product_id": { + "value": "prod_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["images", "pricing_scheme"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProductFeatureDetails", + "qualifiedName": "StripeApi.GetProductFeatureDetails", + "fullyQualifiedName": "StripeApi.GetProductFeatureDetails@1.0.0", + "description": "Retrieve details of a feature attached to a product.\n\nUse this tool to obtain information about a specific feature associated with a product by providing the product and feature IDs.", + "parameters": [ + { + "name": "product_feature_id", + "type": "string", + "required": true, + "description": "The unique identifier of the product feature to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "product_id", + "type": "string", + "required": true, + "description": "The unique identifier of the product associated with the feature.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to expand for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetProductsProductFeaturesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetProductFeatureDetails", + "parameters": { + "product_feature_id": { + "value": "feature_123456", + "type": "string", + "required": true + }, + "product_id": { + "value": "prod_abc123", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["pricing", "usage"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProductFeatures", + "qualifiedName": "StripeApi.GetProductFeatures", + "fullyQualifiedName": "StripeApi.GetProductFeatures@1.0.0", + "description": "Retrieve features for a specific product.\n\nUse this tool to obtain a list of features associated with a given product in Stripe. Ideal for when you need detailed information about a product's capabilities or offerings.", + "parameters": [ + { + "name": "product_id", + "type": "string", + "required": true, + "description": "The unique identifier of the product for which you want to retrieve features. This is a required field.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_cursor", + "type": "string", + "required": false, + "description": "An object ID that defines your position in the list for pagination, used to fetch the previous page.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for additional details.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_features_to_return", + "type": "integer", + "required": false, + "description": "Specifies the number of product features to return. Must be between 1 and 100, with a default of 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination to fetch the next page of product features. Use the object ID from the last item on the previous page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetProductsProductFeatures'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetProductFeatures", + "parameters": { + "product_id": { + "value": "prod_ABC123", + "type": "string", + "required": true + }, + "pagination_ending_cursor": { + "value": "cursor_456DEF", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["description", "pricing"], + "type": "array", + "required": false + }, + "number_of_features_to_return": { + "value": 15, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "cursor_789GHI", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPromotionCodeDetails", + "qualifiedName": "StripeApi.GetPromotionCodeDetails", + "fullyQualifiedName": "StripeApi.GetPromotionCodeDetails@1.0.0", + "description": "Retrieve details of a specific promotion code.\n\nThis tool retrieves information about a promotion code using its ID. It can be used to access details such as discount amounts, expiration dates, and other relevant data tied to the specific promotion code.", + "parameters": [ + { + "name": "promotion_code_id", + "type": "string", + "required": true, + "description": "The unique identifier of the promotion code to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to be expanded. Provide field names as strings.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPromotionCodesPromotionCode'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetPromotionCodeDetails", + "parameters": { + "promotion_code_id": { + "value": "promo_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["discount_amount", "expiration_date", "promotion_type"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetQuoteLineItems", + "qualifiedName": "StripeApi.GetQuoteLineItems", + "fullyQualifiedName": "StripeApi.GetQuoteLineItems@1.0.0", + "description": "Fetch line items from a specified quote.\n\nUse this tool to retrieve a list of line items associated with a specific quote. This includes both a summary of the first few items and a URL for accessing the complete, paginated list.", + "parameters": [ + { + "name": "quote_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the quote whose line items are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_ending_before", + "type": "string", + "required": false, + "description": "The object ID to define your place in the list for fetching the previous page.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of field names to expand in the response for detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_to_return", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of line items to return, ranging from 1 to 100. Defaults to 10 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "The object ID to define your place in the list for pagination, used to fetch the next page after the specified object.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetQuotesQuoteLineItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetQuoteLineItems", + "parameters": { + "quote_identifier": { + "value": "q_123456789", + "type": "string", + "required": true + }, + "pagination_cursor_ending_before": { + "value": "li_987654321", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["item_description", "item_price"], + "type": "array", + "required": false + }, + "max_items_to_return": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "li_123456789", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetReceivedCreditDetails", + "qualifiedName": "StripeApi.GetReceivedCreditDetails", + "fullyQualifiedName": "StripeApi.GetReceivedCreditDetails@1.0.0", + "description": "Retrieve details of a specific ReceivedCredit by ID.\n\nThis tool is used to obtain details about a specific ReceivedCredit in the Stripe Treasury. It requires the unique ReceivedCredit ID to fetch the information.", + "parameters": [ + { + "name": "received_credit_id", + "type": "string", + "required": true, + "description": "The unique identifier of the ReceivedCredit to retrieve details for. This ID is required to fetch the specific credit's information.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to expand for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryReceivedCreditsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetReceivedCreditDetails", + "parameters": { + "received_credit_id": { + "value": "rc_12345abcde", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["source", "amount"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetReceivedDebits", + "qualifiedName": "StripeApi.GetReceivedDebits", + "fullyQualifiedName": "StripeApi.GetReceivedDebits@1.0.0", + "description": "Retrieve a list of received debits from Stripe Treasury.\n\nCall this tool to obtain a list of received debits, which can be useful for financial reporting or auditing purposes.", + "parameters": [ + { + "name": "financial_account_id", + "type": "string", + "required": true, + "description": "The ID of the FinancialAccount from which funds were pulled.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_previous_page", + "type": "string", + "required": false, + "description": "A cursor for pagination to fetch the previous page of the list. Use an object ID received in a previous response.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to expand for more detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "max_number_of_debits", + "type": "integer", + "required": false, + "description": "Specify the maximum number of received debits to return. Accepts an integer between 1 and 100, default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "An object ID for pagination to fetch the next page, starting after this ID.", + "enum": null, + "inferrable": true + }, + { + "name": "debit_status_filter", + "type": "string", + "required": false, + "description": "Filter results by status: 'succeeded' or 'failed'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryReceivedDebits'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetReceivedDebits", + "parameters": { + "financial_account_id": { + "value": "fa_123456789", + "type": "string", + "required": true + }, + "pagination_cursor_previous_page": { + "value": null, + "type": "string", + "required": false + }, + "expand_fields": { + "value": ["details", "amount"], + "type": "array", + "required": false + }, + "max_number_of_debits": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "debit_987654321", + "type": "string", + "required": false + }, + "debit_status_filter": { + "value": "succeeded", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetReportRunDetails", + "qualifiedName": "StripeApi.GetReportRunDetails", + "fullyQualifiedName": "StripeApi.GetReportRunDetails@1.0.0", + "description": "Retrieve details of an existing report run.\n\nUse this tool to obtain specific information about a previously created report run in Stripe's reporting system.", + "parameters": [ + { + "name": "report_run_id", + "type": "string", + "required": true, + "description": "The unique identifier for the report run you want to retrieve details for. This ID is provided by Stripe when the report run is created.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response to include more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetReportingReportRunsReportRun'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetReportRunDetails", + "parameters": { + "report_run_id": { + "value": "rp_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["summary", "details"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetReviewDetails", + "qualifiedName": "StripeApi.GetReviewDetails", + "fullyQualifiedName": "StripeApi.GetReviewDetails@1.0.0", + "description": "Retrieve details of a specific review on Stripe.\n\nThis tool fetches the details of a particular review from Stripe, using the review's unique identifier.", + "parameters": [ + { + "name": "review_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the review to be retrieved from Stripe. This is a required parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the review response to be expanded for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetReviewsReview'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetReviewDetails", + "parameters": { + "review_identifier": { + "value": "re_12345ABCDE", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["user_details", "payment_details"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetScheduledQueryRuns", + "qualifiedName": "StripeApi.GetScheduledQueryRuns", + "fullyQualifiedName": "StripeApi.GetScheduledQueryRuns@1.0.0", + "description": "Retrieve a list of scheduled query runs from Stripe.\n\nUse this tool to get information on scheduled query runs managed by Stripe's Sigma service. It retrieves a list of all the scheduled query runs that have occurred.", + "parameters": [ + { + "name": "pagination_cursor_ending_before", + "type": "string", + "required": false, + "description": "A cursor object ID for pagination to fetch the previous page of the list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded.", + "enum": null, + "inferrable": true + }, + { + "name": "object_limit", + "type": "integer", + "required": false, + "description": "Specify the number of objects to return, between 1 and 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "Cursor for pagination, to fetch the next page starting after the specified object ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSigmaScheduledQueryRuns'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetScheduledQueryRuns", + "parameters": { + "pagination_cursor_ending_before": { + "value": "cursor_1234", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["field1", "field2"], + "type": "array", + "required": false + }, + "object_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "cursor_5678", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSourceTransactions", + "qualifiedName": "StripeApi.GetSourceTransactions", + "fullyQualifiedName": "StripeApi.GetSourceTransactions@1.0.0", + "description": "Retrieve transactions for a specific source.\n\nUse this tool to list all transactions associated with a specific source in Stripe. It should be called when transaction details for a given source are needed.", + "parameters": [ + { + "name": "source_id", + "type": "string", + "required": true, + "description": "The unique identifier of the source to retrieve transactions for. Required to specify the target of the retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "An object ID for pagination to fetch the previous page of the list. Use the ID of the first object from the current list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of field names in the response that should be expanded for detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "transaction_limit", + "type": "integer", + "required": false, + "description": "Maximum number of transactions to return. Must be between 1 and 100, default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "An object ID used as a cursor to fetch the next page of the list. Use this to continue listing transactions after a known last object ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSourcesSourceSourceTransactions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetSourceTransactions", + "parameters": { + "source_id": { + "value": "src_123456789", + "type": "string", + "required": true + }, + "pagination_ending_before": { + "value": "trans_987654321", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["balance_transaction", "refunds"], + "type": "array", + "required": false + }, + "transaction_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "trans_123456788", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSpecificTransferReversalDetails", + "qualifiedName": "StripeApi.GetSpecificTransferReversalDetails", + "fullyQualifiedName": "StripeApi.GetSpecificTransferReversalDetails@1.0.0", + "description": "Retrieve details about a specific transfer reversal.\n\nThis tool retrieves details of a specific reversal associated with a transfer. Use it to access more than the 10 most recent reversals or to obtain specific information about a particular reversal.", + "parameters": [ + { + "name": "reversal_id", + "type": "string", + "required": true, + "description": "The unique identifier of the transfer reversal to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "transfer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the transfer to retrieve reversal details from. This is required to specify which transfer you're inquiring about.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTransfersTransferReversalsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetSpecificTransferReversalDetails", + "parameters": { + "reversal_id": { + "value": "reversal_123456789", + "type": "string", + "required": true + }, + "transfer_id": { + "value": "transfer_987654321", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["balance_transaction", "destination_payment"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetStripeAccountDetails", + "qualifiedName": "StripeApi.GetStripeAccountDetails", + "fullyQualifiedName": "StripeApi.GetStripeAccountDetails@1.0.0", + "description": "Retrieve details of a Stripe account.\n\nUse this tool to get information about a specific Stripe account, such as its status and settings.", + "parameters": [ + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to specify which fields in the Stripe account response should be expanded.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetStripeAccountDetails", + "parameters": { + "expand_fields": { + "value": ["billing_details", "payment_methods"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetStripeEntitlementFeatures", + "qualifiedName": "StripeApi.GetStripeEntitlementFeatures", + "fullyQualifiedName": "StripeApi.GetStripeEntitlementFeatures@1.0.0", + "description": "Retrieve a list of entitlement features from Stripe.\n\nCall this tool to obtain a list of features related to entitlements from Stripe's API.", + "parameters": [ + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "Cursor for pagination defining the position in list. Use to fetch previous page by providing object ID.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded.", + "enum": null, + "inferrable": true + }, + { + "name": "object_return_limit", + "type": "integer", + "required": false, + "description": "Specify the number of features to return, ranging between 1 and 100. Defaults to 10 if not provided.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_lookup_key", + "type": "string", + "required": false, + "description": "Filter results to only include features with the specified lookup key.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "A cursor for pagination. Use the object ID from the last item of your current list to fetch the next page.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_features", + "type": "boolean", + "required": false, + "description": "Set to true to include only archived features, or false to exclude them.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetEntitlementsFeatures'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetStripeEntitlementFeatures", + "parameters": { + "pagination_ending_before": { + "value": "feature_12345", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["description", "pricing"], + "type": "array", + "required": false + }, + "object_return_limit": { + "value": 25, + "type": "integer", + "required": false + }, + "filter_by_lookup_key": { + "value": "premium_access", + "type": "string", + "required": false + }, + "pagination_starting_after": { + "value": "feature_67890", + "type": "string", + "required": false + }, + "include_archived_features": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetStripeExternalAccountDetails", + "qualifiedName": "StripeApi.GetStripeExternalAccountDetails", + "fullyQualifiedName": "StripeApi.GetStripeExternalAccountDetails@1.0.0", + "description": "Retrieve details of a specific Stripe external account.\n\nThis tool fetches information about a specified external account for a given Stripe account. It should be used to obtain details about linked bank accounts or cards associated with a Stripe account.", + "parameters": [ + { + "name": "stripe_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Stripe account containing the external account.", + "enum": null, + "inferrable": true + }, + { + "name": "external_account_id", + "type": "string", + "required": true, + "description": "Unique identifier for the external account to be retrieved from Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAccountsAccountExternalAccountsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetStripeExternalAccountDetails", + "parameters": { + "stripe_account_id": { + "value": "acct_123456789", + "type": "string", + "required": true + }, + "external_account_id": { + "value": "ba_987654321", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["bank_account", "country", "currencies"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetStripePaymentLinks", + "qualifiedName": "StripeApi.GetStripePaymentLinks", + "fullyQualifiedName": "StripeApi.GetStripePaymentLinks@1.0.0", + "description": "Retrieve a list of Stripe payment links.\n\nThis tool calls the Stripe API to fetch a list of all your payment links. It should be used when you need to access or display your payment links managed through Stripe.", + "parameters": [ + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "An object ID cursor to define the starting point in the list for pagination, retrieving the previous page.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response that should be expanded. Use field names as strings.", + "enum": null, + "inferrable": true + }, + { + "name": "object_return_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of payment link objects to retrieve, ranging from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "The object ID to define your place in the list for pagination. Use it to fetch the next page of payment links.", + "enum": null, + "inferrable": true + }, + { + "name": "include_active_payment_links", + "type": "boolean", + "required": false, + "description": "Return active payment links only. Set to `false` to list inactive payment links.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPaymentLinks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetStripePaymentLinks", + "parameters": { + "pagination_ending_before": { + "value": "link_1234567890abcdef", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["url", "description", "metadata"], + "type": "array", + "required": false + }, + "object_return_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "link_abcdef1234567890", + "type": "string", + "required": false + }, + "include_active_payment_links": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetStripePayoutDetails", + "qualifiedName": "StripeApi.GetStripePayoutDetails", + "fullyQualifiedName": "StripeApi.GetStripePayoutDetails@1.0.0", + "description": "Retrieve details of a specific Stripe payout.\n\nThis tool retrieves information about an existing payout from Stripe using the unique payout ID. It should be used when you need detailed information about a specific payout.", + "parameters": [ + { + "name": "payout_id", + "type": "string", + "required": true, + "description": "The unique ID of the payout to retrieve details for from Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the payout response to expand for more details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPayoutsPayout'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetStripePayoutDetails", + "parameters": { + "payout_id": { + "value": "po_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["balance_transactions", "destination"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetStripeReportTypeDetails", + "qualifiedName": "StripeApi.GetStripeReportTypeDetails", + "fullyQualifiedName": "StripeApi.GetStripeReportTypeDetails@1.0.0", + "description": "Retrieve details for a specific Stripe Report Type.\n\nUse this tool to get detailed information about a specific Stripe Report Type. Some report types may require a live-mode API key.", + "parameters": [ + { + "name": "stripe_report_type_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Stripe Report Type to retrieve details about.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to expand for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetReportingReportTypesReportType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetStripeReportTypeDetails", + "parameters": { + "stripe_report_type_id": { + "value": "txn_summary", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["report_details", "created_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetStripeReportTypes", + "qualifiedName": "StripeApi.GetStripeReportTypes", + "fullyQualifiedName": "StripeApi.GetStripeReportTypes@1.0.0", + "description": "Retrieve a comprehensive list of Stripe report types.\n\nThis tool calls the Stripe endpoint to return a full list of available Report Types. Use it when you need to know all report types that Stripe can generate.", + "parameters": [ + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the Stripe report types response to be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetReportingReportTypes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetStripeReportTypes", + "parameters": { + "expand_fields": { + "value": ["report_type", "description", "fields"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetStripeSourceTransaction", + "qualifiedName": "StripeApi.GetStripeSourceTransaction", + "fullyQualifiedName": "StripeApi.GetStripeSourceTransaction@1.0.0", + "description": "Retrieve a Stripe source transaction by ID.\n\nFetches information of an existing source transaction using the source ID and transaction ID from Stripe.", + "parameters": [ + { + "name": "source_id", + "type": "string", + "required": true, + "description": "The unique ID of the Stripe source. Use this to specify which source's transaction to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "stripe_source_transaction_id", + "type": "string", + "required": true, + "description": "The unique identifier for the source transaction to retrieve from Stripe. This ID is obtained from previous source creation requests.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings specifying which fields in the response should be expanded.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSourcesSourceSourceTransactionsSourceTransaction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetStripeSourceTransaction", + "parameters": { + "source_id": { + "value": "src_1J2e3PGjL5t7D9", + "type": "string", + "required": true + }, + "stripe_source_transaction_id": { + "value": "txn_1J2f4TGaQ1aDGo", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer", "payment_method"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetStripeWebhookEndpoints", + "qualifiedName": "StripeApi.GetStripeWebhookEndpoints", + "fullyQualifiedName": "StripeApi.GetStripeWebhookEndpoints@1.0.0", + "description": "Retrieve a list of your Stripe webhook endpoints.\n\nThis tool is used to retrieve a list of webhook endpoints configured in your Stripe account. It is helpful for managing and verifying your current webhook setup.", + "parameters": [ + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "A cursor (object ID) for pagination to fetch the previous page of webhook endpoints.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of field names to expand in the response, allowing for detailed data retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "object_limit", + "type": "integer", + "required": false, + "description": "The number of webhook endpoints to return, ranging from 1 to 100. Defaults to 10 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_id", + "type": "string", + "required": false, + "description": "An object ID used for pagination to fetch the next page in a list. Use the last object's ID from the current list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetWebhookEndpoints'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetStripeWebhookEndpoints", + "parameters": { + "pagination_ending_before": { + "value": "we_123456789", + "type": "string", + "required": false + }, + "expand_fields": { + "value": ["url", "enabled_events"], + "type": "array", + "required": false + }, + "object_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after_id": { + "value": "we_987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSubscriptionDetails", + "qualifiedName": "StripeApi.GetSubscriptionDetails", + "fullyQualifiedName": "StripeApi.GetSubscriptionDetails@1.0.0", + "description": "Retrieve details of a subscription by its ID.\n\nThis tool is used to fetch details about a specific subscription using its exposed ID. It should be called when subscription information is needed.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The ID of the subscription to retrieve details for. It is required to fetch the subscription information.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the subscription response to be expanded for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSubscriptionsSubscriptionExposedId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetSubscriptionDetails", + "parameters": { + "subscription_id": { + "value": "sub_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["latest_invoice", "customer"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSubscriptionDiscount", + "qualifiedName": "StripeApi.GetSubscriptionDiscount", + "fullyQualifiedName": "StripeApi.GetSubscriptionDiscount@1.0.0", + "description": "Retrieve discount details for a customer's subscription.\n\nUse this tool to get the discount information associated with a specific subscription for a particular customer in Stripe.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier of the customer whose subscription discount details are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer's subscription to retrieve discount details.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerSubscriptionsSubscriptionExposedIdDiscount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetSubscriptionDiscount", + "parameters": { + "customer_id": { + "value": "cus_12345xyz", + "type": "string", + "required": true + }, + "subscription_id": { + "value": "sub_67890abc", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["item", "discounts"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSubscriptionItems", + "qualifiedName": "StripeApi.GetSubscriptionItems", + "fullyQualifiedName": "StripeApi.GetSubscriptionItems@1.0.0", + "description": "Retrieve subscription items for a subscription.\n\nThis tool returns a list of subscription items associated with a specified subscription. It should be called when there's a need to view or manage the items within a specific subscription.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The unique identifier of the subscription to retrieve its items.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "Object ID for pagination to fetch the previous page of subscription items.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded. Specify each field as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "max_items_to_return", + "type": "integer", + "required": false, + "description": "Specify the number of subscription items to return, ranging from 1 to 100. Defaults to 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "A cursor object ID to define your place for pagination, fetching the next page of the list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSubscriptionItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetSubscriptionItems", + "parameters": { + "subscription_id": { + "value": "sub_123456789", + "type": "string", + "required": true + }, + "pagination_ending_before": { + "value": "item_987654321", + "type": "string", + "required": false + }, + "expand_fields": { + "value": ["items", "plan"], + "type": "array", + "required": false + }, + "max_items_to_return": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "item_234567890", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTaxCodeDetails", + "qualifiedName": "StripeApi.GetTaxCodeDetails", + "fullyQualifiedName": "StripeApi.GetTaxCodeDetails@1.0.0", + "description": "Retrieve details for a specific tax code by ID.\n\nThis tool fetches information about an existing tax code using its unique ID. It's useful for obtaining detailed tax code data from Stripe.", + "parameters": [ + { + "name": "tax_code_id", + "type": "string", + "required": true, + "description": "The unique ID of the tax code to retrieve. Use this to fetch specific tax code details from Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to be expanded in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTaxCodesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetTaxCodeDetails", + "parameters": { + "tax_code_id": { + "value": "txc_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["description", "jurisdiction"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTaxCodesList", + "qualifiedName": "StripeApi.GetTaxCodesList", + "fullyQualifiedName": "StripeApi.GetTaxCodesList@1.0.0", + "description": "Retrieve all available tax codes for products from Stripe.\n\nUse this tool to get a list of all tax codes that can be added to products for specific tax calculations in Stripe.", + "parameters": [ + { + "name": "pagination_cursor_ending_before", + "type": "string", + "required": false, + "description": "A cursor (object ID) to fetch the previous page of the tax codes list in pagination. Use to define your place in the list when stepping backwards.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specifies which fields in the tax codes response should be expanded for more detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "object_return_limit", + "type": "integer", + "required": false, + "description": "Set the maximum number of tax codes to return, ranging from 1 to 100, with a default of 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "An object ID used as a cursor to fetch the next page of the list. Use it for pagination to continue from the last retrieved item.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTaxCodes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetTaxCodesList", + "parameters": { + "pagination_cursor_ending_before": { + "value": "abc123", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["description", "jurisdiction"], + "type": "array", + "required": false + }, + "object_return_limit": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "xyz789", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTaxRegistrationInfo", + "qualifiedName": "StripeApi.GetTaxRegistrationInfo", + "fullyQualifiedName": "StripeApi.GetTaxRegistrationInfo@1.0.0", + "description": "Retrieve details of a specific tax registration.\n\nUse this tool to obtain information about a specific tax registration by providing the registration ID.", + "parameters": [ + { + "name": "registration_id", + "type": "string", + "required": true, + "description": "The unique identifier for the tax registration. Provide this to retrieve specific registration details.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded to provide more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTaxRegistrationsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetTaxRegistrationInfo", + "parameters": { + "registration_id": { + "value": "tr_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["business_details", "address"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTaxRegistrations", + "qualifiedName": "StripeApi.GetTaxRegistrations", + "fullyQualifiedName": "StripeApi.GetTaxRegistrations@1.0.0", + "description": "Retrieve a list of tax registration objects from Stripe.\n\nUse this tool to get detailed information about tax registrations on Stripe. It returns a list of registration objects that are currently registered.", + "parameters": [ + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "An object ID used as a cursor to define your position in the list for pagination. Use this to fetch the previous page of objects.", + "enum": null, + "inferrable": true + }, + { + "name": "response_fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to be expanded in the response, allowing for detailed information retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "object_limit", + "type": "integer", + "required": false, + "description": "Specifies the number of tax registration objects to return, ranging from 1 to 100. Defaults to 10 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_object_id", + "type": "string", + "required": false, + "description": "A cursor for pagination. Use the object ID to fetch the next page of the list when applicable.", + "enum": null, + "inferrable": true + }, + { + "name": "tax_registration_status", + "type": "string", + "required": false, + "description": "Specifies the status of the tax registration. Options: active, all, expired, scheduled.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTaxRegistrations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetTaxRegistrations", + "parameters": { + "pagination_ending_before": { + "value": "tax_reg_123456789", + "type": "string", + "required": false + }, + "response_fields_to_expand": { + "value": ["country", "status"], + "type": "array", + "required": false + }, + "object_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after_object_id": { + "value": "tax_reg_987654321", + "type": "string", + "required": false + }, + "tax_registration_status": { + "value": "active", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTaxSettings", + "qualifiedName": "StripeApi.GetTaxSettings", + "fullyQualifiedName": "StripeApi.GetTaxSettings@1.0.0", + "description": "Retrieve merchant tax settings in Stripe.\n\nThis tool fetches the tax settings for a merchant from Stripe, providing detailed information about tax configurations.", + "parameters": [ + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of field names in the response to expand for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTaxSettings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetTaxSettings", + "parameters": { + "expand_fields": { + "value": ["tax_id", "tax_rates"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTerminalConfigurations", + "qualifiedName": "StripeApi.GetTerminalConfigurations", + "fullyQualifiedName": "StripeApi.GetTerminalConfigurations@1.0.0", + "description": "Retrieve a list of terminal Configuration objects.\n\nCall this tool to obtain a list of Stripe terminal configurations. It retrieves all available Configuration objects used by terminals.", + "parameters": [ + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "A string cursor for pagination to fetch the previous page, defined by an object ID.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to expand for additional details.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_objects_to_return", + "type": "integer", + "required": false, + "description": "Set the maximum number of terminal Configuration objects to retrieve, ranging from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_id", + "type": "string", + "required": false, + "description": "An object ID for pagination, defining the start position for the next page of the list. Use this to continue listing from a specific object.", + "enum": null, + "inferrable": true + }, + { + "name": "only_return_account_default_configurations", + "type": "boolean", + "required": false, + "description": "If true, only return the account default configurations; if false, return non-default configurations.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTerminalConfigurations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetTerminalConfigurations", + "parameters": { + "pagination_ending_before": { + "value": "obj_123456789", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["location", "device_type"], + "type": "array", + "required": false + }, + "maximum_objects_to_return": { + "value": 15, + "type": "integer", + "required": false + }, + "pagination_starting_after_id": { + "value": "obj_987654321", + "type": "string", + "required": false + }, + "only_return_account_default_configurations": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTerminalLocations", + "qualifiedName": "StripeApi.GetTerminalLocations", + "fullyQualifiedName": "StripeApi.GetTerminalLocations@1.0.0", + "description": "Retrieve a list of terminal location objects from Stripe.\n\nThis tool calls the Stripe API to fetch a list of terminal location objects. It should be used when you need information about available terminal locations.", + "parameters": [ + { + "name": "pagination_ending_before_cursor", + "type": "string", + "required": false, + "description": "The object ID to define your place in pagination, used to fetch the previous page of the list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response for more detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit", + "type": "integer", + "required": false, + "description": "The maximum number of terminal location objects to return. Acceptable values are between 1 and 100; default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "A cursor indicating the position in the list to start fetching the next set of terminal locations. Use this with the object ID received at the end of the previous page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTerminalLocations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetTerminalLocations", + "parameters": { + "pagination_ending_before_cursor": { + "value": "loc_123456789", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["address", "id"], + "type": "array", + "required": false + }, + "results_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "loc_987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTerminalReaders", + "qualifiedName": "StripeApi.GetTerminalReaders", + "fullyQualifiedName": "StripeApi.GetTerminalReaders@1.0.0", + "description": "Retrieve a list of terminal reader objects.\n\nUse this tool to obtain a list of Stripe terminal readers. It is useful when you need to manage or view details of connected terminal devices.", + "parameters": [ + { + "name": "filter_by_device_type", + "type": "string", + "required": false, + "description": "Specify the type of device to filter terminal readers. Options include: 'bbpos_chipper2x', 'bbpos_wisepad3', 'bbpos_wisepos_e', 'mobile_phone_reader', 'simulated_stripe_s700', 'simulated_wisepos_e', 'stripe_m2', 'stripe_s700', 'verifone_P400'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_ending_before", + "type": "string", + "required": false, + "description": "A cursor for pagination, used to fetch the previous page based on object ID.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response, specified as strings.", + "enum": null, + "inferrable": true + }, + { + "name": "object_return_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of terminal reader objects to return, ranging from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_location_id", + "type": "string", + "required": false, + "description": "Specify the location ID to filter readers to a specific location only.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_serial_number", + "type": "string", + "required": false, + "description": "Provide a serial number to filter the list of terminal readers by this specific serial number.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_object_id", + "type": "string", + "required": false, + "description": "The object ID used as a cursor to define your starting point in the list for pagination, fetching the next page.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_status", + "type": "string", + "required": false, + "description": "Filter terminal readers by their status, either 'offline' or 'online'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTerminalReaders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetTerminalReaders", + "parameters": { + "filter_by_device_type": { + "value": "stripe_m2", + "type": "string", + "required": false + }, + "pagination_cursor_ending_before": { + "value": "obj_12345", + "type": "string", + "required": false + }, + "expand_response_fields": { + "value": ["location", "status"], + "type": "array", + "required": false + }, + "object_return_limit": { + "value": 5, + "type": "integer", + "required": false + }, + "filter_by_location_id": { + "value": "loc_67890", + "type": "string", + "required": false + }, + "filter_by_serial_number": { + "value": "sn_112233", + "type": "string", + "required": false + }, + "pagination_start_object_id": { + "value": "obj_54321", + "type": "string", + "required": false + }, + "filter_by_status": { + "value": "online", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTestClocksList", + "qualifiedName": "StripeApi.GetTestClocksList", + "fullyQualifiedName": "StripeApi.GetTestClocksList@1.0.0", + "description": "Retrieve a list of your test clocks from Stripe.\n\nUse this tool to obtain a list of test clocks for testing purposes in Stripe environments.", + "parameters": [ + { + "name": "pagination_cursor_ending_before", + "type": "string", + "required": false, + "description": "A cursor ID for pagination to fetch the previous page of the list. Use an object ID.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response. Specify fields you want expanded for more details.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_objects_limit", + "type": "integer", + "required": false, + "description": "Specify the number of test clocks to return, between 1 and 100, with a default of 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "An object ID for pagination. Use this ID to fetch the next page of the list of test clocks.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTestHelpersTestClocks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetTestClocksList", + "parameters": { + "pagination_cursor_ending_before": { + "value": "clk_previous_12345", + "type": "string", + "required": false + }, + "expand_response_fields": { + "value": ["created", "status"], + "type": "array", + "required": false + }, + "number_of_objects_limit": { + "value": 15, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "clk_next_67890", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTransactionLineItems", + "qualifiedName": "StripeApi.GetTransactionLineItems", + "fullyQualifiedName": "StripeApi.GetTransactionLineItems@1.0.0", + "description": "Retrieve line items for a specified transaction.\n\nUse this tool to get the line items of a committed standalone transaction from Stripe as a collection.", + "parameters": [ + { + "name": "transaction_id", + "type": "string", + "required": true, + "description": "The unique identifier for the transaction. Use this to retrieve its line items from Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_id", + "type": "string", + "required": false, + "description": "Cursor ID for paginating backwards to fetch the previous page of transaction line items.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify which response fields to expand. Provide an array of strings with field names.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_items_to_return", + "type": "integer", + "required": false, + "description": "Specifies the number of line items to return, between 1 and 100. Defaults to 10 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "A cursor ID for pagination to fetch the next page of the list. Use the last object's ID from the current page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTaxTransactionsTransactionLineItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetTransactionLineItems", + "parameters": { + "transaction_id": { + "value": "txn_1IY9WZ2eZvKYlo2C9B0m4l3l", + "type": "string", + "required": true + }, + "pagination_ending_id": { + "value": "item_1IY9WZ2eZvKYlo2C9B0m4l3m", + "type": "string", + "required": false + }, + "expand_fields": { + "value": ["receipt", "payment_method_details"], + "type": "array", + "required": false + }, + "number_of_items_to_return": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "item_1IY9WZ2eZvKYlo2C9B0m4l3n", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTransferDetails", + "qualifiedName": "StripeApi.GetTransferDetails", + "fullyQualifiedName": "StripeApi.GetTransferDetails@1.0.0", + "description": "Retrieve details of an existing transfer using its ID.\n\nUse this tool to fetch information about a specific transfer by providing its unique ID from a previous request or list.", + "parameters": [ + { + "name": "transfer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the transfer you want to retrieve details about. This ID is obtained from a transfer creation request or the transfer list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the transfer response to expand for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTransfersTransfer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetTransferDetails", + "parameters": { + "transfer_id": { + "value": "tr_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["balance_transaction", "destination_payment"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTransferReversals", + "qualifiedName": "StripeApi.GetTransferReversals", + "fullyQualifiedName": "StripeApi.GetTransferReversals@1.0.0", + "description": "Retrieve reversals of a specific transfer.\n\nUse this tool to get a list of reversals for a specific transfer in Stripe. This is useful when more than the 10 most recent reversals are needed, allowing pagination using limit and starting_after parameters.", + "parameters": [ + { + "name": "transfer_id", + "type": "string", + "required": true, + "description": "The unique identifier of the transfer for which to retrieve reversals.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "An object ID cursor to navigate to the previous page in the list of reversals.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of response fields to expand in the results for detailed data.", + "enum": null, + "inferrable": true + }, + { + "name": "fetch_limit", + "type": "integer", + "required": false, + "description": "Set the maximum number of reversal objects to return, ranging from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_cursor", + "type": "string", + "required": false, + "description": "The object ID to define your place in the list for pagination. Use this to fetch the next page, starting after the given object ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTransfersIdReversals'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetTransferReversals", + "parameters": { + "transfer_id": { + "value": "tr_123456789", + "type": "string", + "required": true + }, + "pagination_ending_before": { + "value": "rev_987654321", + "type": "string", + "required": false + }, + "expand_fields_in_response": { + "value": ["amount", "created", "currency"], + "type": "array", + "required": false + }, + "fetch_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_start_cursor": { + "value": "rev_123456789", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTreasuryPaymentMethods", + "qualifiedName": "StripeApi.GetTreasuryPaymentMethods", + "fullyQualifiedName": "StripeApi.GetTreasuryPaymentMethods@1.0.0", + "description": "Retrieve a list of PaymentMethods for Treasury flows.\n\nThis tool retrieves a list of PaymentMethods specifically for Treasury flows. It should be used when you want to access payment methods for these specific purposes, rather than customer-attached payment methods.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": false, + "description": "The ID of the customer whose PaymentMethods will be retrieved for Treasury flows. This is used to filter the payment methods specific to a customer.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "An object ID to fetch the previous page of the list in pagination. Use to navigate to earlier records.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specifies which fields in the payment methods response should be expanded for more details.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "The maximum number of payment methods to return, between 1 and 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_after_payment_method", + "type": "string", + "required": false, + "description": "An object ID cursor to paginate through the list of payment methods. Use it to fetch the next page after a given object.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_payment_method_type", + "type": "string", + "required": false, + "description": "Filter the list based on the payment method type. Use specific payment method values like 'card', 'paypal', etc., if expecting only one type.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPaymentMethods'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetTreasuryPaymentMethods", + "parameters": { + "customer_id": { + "value": "cus_123456789", + "type": "string", + "required": false + }, + "pagination_ending_before": { + "value": "pm_987654321", + "type": "string", + "required": false + }, + "expand_response_fields": { + "value": ["details", "metadata"], + "type": "array", + "required": false + }, + "result_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "starting_after_payment_method": { + "value": "pm_123456789", + "type": "string", + "required": false + }, + "filter_payment_method_type": { + "value": "card", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUpfrontQuoteLineItems", + "qualifiedName": "StripeApi.GetUpfrontQuoteLineItems", + "fullyQualifiedName": "StripeApi.GetUpfrontQuoteLineItems@1.0.0", + "description": "Retrieve computed upfront line items from a quote.\n\nUse this tool to get the computed upfront line items for a specific quote from Stripe. Ideal for viewing details of the initial line items associated with a quote, including accessing a URL for the full list if needed.", + "parameters": [ + { + "name": "quote_id", + "type": "string", + "required": true, + "description": "The unique ID of the quote for which to retrieve upfront line items. This ID is required to specify the quote in context.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before_id", + "type": "string", + "required": false, + "description": "A cursor indicating the last object ID to fetch the previous page in a paginated list of upfront line items.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response for more detailed information. Each entry should be a string representing a field.", + "enum": null, + "inferrable": true + }, + { + "name": "max_line_items_to_return", + "type": "integer", + "required": false, + "description": "The maximum number of line items to retrieve, between 1 and 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_object_id", + "type": "string", + "required": false, + "description": "An object ID used to fetch the next page of results in pagination, such as `obj_foo`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetQuotesQuoteComputedUpfrontLineItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.GetUpfrontQuoteLineItems", + "parameters": { + "quote_id": { + "value": "qt_1Iz20o2eZvKYlo2CXe8QRwH9", + "type": "string", + "required": true + }, + "pagination_ending_before_id": { + "value": "li_1Iz20o2eZvKYlo2C4fR9kE0x", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["customer", "subscription"], + "type": "array", + "required": false + }, + "max_line_items_to_return": { + "value": 15, + "type": "integer", + "required": false + }, + "pagination_starting_object_id": { + "value": "obj_foo", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListApplePayDomains", + "qualifiedName": "StripeApi.ListApplePayDomains", + "fullyQualifiedName": "StripeApi.ListApplePayDomains@1.0.0", + "description": "Retrieve a list of Apple Pay domains.\n\nUse this tool to get a list of all Apple Pay domains associated with your Stripe account.", + "parameters": [ + { + "name": "domain_name_filter", + "type": "string", + "required": false, + "description": "Filter the list by a specific domain name. Leave empty to return all domains.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before_id", + "type": "string", + "required": false, + "description": "Object ID for pagination to fetch the previous page of the list.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of fields to expand in the response for additional details.", + "enum": null, + "inferrable": true + }, + { + "name": "max_domains_to_return", + "type": "integer", + "required": false, + "description": "Specify the number of Apple Pay domains to retrieve, between 1 and 100. Defaults to 10 if not set.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "An object ID for pagination to retrieve the next page of the list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetApplePayDomains'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.ListApplePayDomains", + "parameters": { + "domain_name_filter": { + "value": "example.com", + "type": "string", + "required": false + }, + "pagination_ending_before_id": { + "value": "obj_123456789", + "type": "string", + "required": false + }, + "expand_fields": { + "value": ["active", "created", "updated"], + "type": "array", + "required": false + }, + "max_domains_to_return": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "obj_987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListClimateOrders", + "qualifiedName": "StripeApi.ListClimateOrders", + "fullyQualifiedName": "StripeApi.ListClimateOrders@1.0.0", + "description": "Retrieve all Climate order objects from Stripe.\n\nThe tool fetches and lists all Climate order objects from the Stripe service. These orders are sorted by creation date, with the most recent ones appearing first.", + "parameters": [ + { + "name": "pagination_ending_before_cursor", + "type": "string", + "required": false, + "description": "A cursor ID to paginate backwards through the list, fetching the page before the specified object ID for Climate orders.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to expand. Provide each field name as a string in an array.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_objects_to_return", + "type": "integer", + "required": false, + "description": "The number of Climate order objects to retrieve, ranging from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "An object ID used as a cursor to define your place in the pagination list to retrieve the next page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetClimateOrders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.ListClimateOrders", + "parameters": { + "pagination_ending_before_cursor": { + "value": "ord_12345abcde", + "type": "string", + "required": false + }, + "expand_fields": { + "value": ["shipping_address", "customer_details"], + "type": "array", + "required": false + }, + "maximum_objects_to_return": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "ord_67890fghij", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListClimateProducts", + "qualifiedName": "StripeApi.ListClimateProducts", + "fullyQualifiedName": "StripeApi.ListClimateProducts@1.0.0", + "description": "Retrieve a list of all available Climate products.\n\nUse this tool to get information about all available Climate product objects from the Stripe service.", + "parameters": [ + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "An object ID cursor to fetch the previous page in a paginated list. Use to define your place in the list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify which fields in the response should be expanded as a list of strings.", + "enum": null, + "inferrable": true + }, + { + "name": "objects_limit", + "type": "integer", + "required": false, + "description": "The maximum number of Climate product objects to return, ranging from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_id", + "type": "string", + "required": false, + "description": "A cursor (object ID) to define your starting point in the list for pagination. Used to fetch the next page after the specified object ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetClimateProducts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.ListClimateProducts", + "parameters": { + "pagination_ending_before": { + "value": "prod_1A2B3C4D5E6F7G", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["description", "metadata"], + "type": "array", + "required": false + }, + "objects_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after_id": { + "value": "prod_7H8I9J0K1L2M3N", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListClimateSuppliers", + "qualifiedName": "StripeApi.ListClimateSuppliers", + "fullyQualifiedName": "StripeApi.ListClimateSuppliers@1.0.0", + "description": "Retrieve a list of all available Climate suppliers.\n\nThis tool calls the Stripe API to list all available Climate supplier objects. It should be used when you need information about climate suppliers for Stripe-related services.", + "parameters": [ + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "The object ID to use as a cursor for fetching the previous page of suppliers in the list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response that should be expanded.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specify the number of Climate supplier objects to return, ranging from 1 to 100, with a default of 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_cursor", + "type": "string", + "required": false, + "description": "Object ID for pagination to fetch the next page of the Climate suppliers list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetClimateSuppliers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.ListClimateSuppliers", + "parameters": { + "pagination_ending_before": { + "value": "cus_Jn5h1uB5aWxLP2", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["id", "name", "description"], + "type": "array", + "required": false + }, + "result_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after_cursor": { + "value": "cus_Jn5h1uB5bZxLP3", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCustomerPaymentSources", + "qualifiedName": "StripeApi.ListCustomerPaymentSources", + "fullyQualifiedName": "StripeApi.ListCustomerPaymentSources@1.0.0", + "description": "Retrieve payment sources for a specified customer.\n\nUse this tool to list all payment sources for a given customer ID in Stripe.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer whose payment sources you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "A cursor for pagination to fetch the previous page. Use an object ID from your list request.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded for additional details.", + "enum": null, + "inferrable": true + }, + { + "name": "max_payment_sources_to_return", + "type": "integer", + "required": false, + "description": "Set the maximum number of payment sources to return, from 1 to 100. Defaults to 10 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_object_type", + "type": "string", + "required": false, + "description": "Filter payment sources based on a specific object type (e.g., card, bank_account).", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_start_cursor", + "type": "string", + "required": false, + "description": "An object ID (string) that specifies your place in the list to fetch the next page. Use it for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerSources'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.ListCustomerPaymentSources", + "parameters": { + "customer_id": { + "value": "cus_123456789", + "type": "string", + "required": true + }, + "pagination_ending_before": { + "value": "src_1I6t2A2eZvKYlo2CEL3N5fT1", + "type": "string", + "required": false + }, + "expand_response_fields": { + "value": ["default_source", "sources"], + "type": "array", + "required": false + }, + "max_payment_sources_to_return": { + "value": 15, + "type": "integer", + "required": false + }, + "filter_by_object_type": { + "value": "card", + "type": "string", + "required": false + }, + "pagination_start_cursor": { + "value": "src_1I6t2A2eZvKYlo2CEL3N9gV5", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListExternalAccounts", + "qualifiedName": "StripeApi.ListExternalAccounts", + "fullyQualifiedName": "StripeApi.ListExternalAccounts@1.0.0", + "description": "Retrieve external accounts linked to a Stripe account.\n\nThis tool retrieves the external accounts associated with a specified Stripe account. It should be called when you need details about the financial accounts linked to a specific Stripe account ID.", + "parameters": [ + { + "name": "stripe_account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Stripe account whose external accounts you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "A cursor used to define your position in the list for pagination. It specifies the object ID before which the list should end.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to expand for detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of external accounts to retrieve, ranging from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_object_type", + "type": "string", + "required": false, + "description": "Specify the type of external accounts to filter: 'bank_account' or 'card'.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_object_id", + "type": "string", + "required": false, + "description": "Object ID for pagination to fetch the next page of results. Use the ID of the last object from the current list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAccountsAccountExternalAccounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.ListExternalAccounts", + "parameters": { + "stripe_account_id": { + "value": "acct_123456789", + "type": "string", + "required": true + }, + "pagination_ending_before": { + "value": "ext_acc_987654321", + "type": "string", + "required": false + }, + "expand_response_fields": { + "value": ["bank_account", "card"], + "type": "array", + "required": false + }, + "max_results_per_page": { + "value": 20, + "type": "integer", + "required": false + }, + "filter_by_object_type": { + "value": "bank_account", + "type": "string", + "required": false + }, + "pagination_starting_after_object_id": { + "value": "ext_acc_135792468", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPaymentMethodConfigurations", + "qualifiedName": "StripeApi.ListPaymentMethodConfigurations", + "fullyQualifiedName": "StripeApi.ListPaymentMethodConfigurations@1.0.0", + "description": "Retrieve available payment method configurations from Stripe.\n\nUse this tool to get a list of payment method configurations from the Stripe API. It should be called when you need to access the available configurations for payments.", + "parameters": [ + { + "name": "filter_by_connect_application", + "type": "string", + "required": false, + "description": "Specify the Connect application ID to filter the payment method configurations by.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before_id", + "type": "string", + "required": false, + "description": "Object ID that defines your place in the list for pagination, used to fetch the previous page.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response that should be expanded. Provide field names as strings in an array.", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "Specify the maximum number of payment method configurations to be returned, ranging from 1 to 100. Defaults to 10 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_id", + "type": "string", + "required": false, + "description": "The object ID to define your place in the list for pagination, used to fetch the next page of results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPaymentMethodConfigurations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.ListPaymentMethodConfigurations", + "parameters": { + "filter_by_connect_application": { + "value": "app_123456789", + "type": "string", + "required": false + }, + "pagination_ending_before_id": { + "value": "pmc_123456789", + "type": "string", + "required": false + }, + "expand_fields": { + "value": ["payment_method_types", "settings"], + "type": "array", + "required": false + }, + "max_results": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after_id": { + "value": "pmc_987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListPaymentMethodDomains", + "qualifiedName": "StripeApi.ListPaymentMethodDomains", + "fullyQualifiedName": "StripeApi.ListPaymentMethodDomains@1.0.0", + "description": "Retrieve details of existing payment method domains.\n\nUse this tool to get a list of all payment method domains and their associated details. This can be helpful for managing or reviewing your payment configurations.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": false, + "description": "Specify the domain name for the payment method domain object you want to represent.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_ending_before", + "type": "string", + "required": false, + "description": "A cursor ID to fetch the previous page of the payment method domain list in pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to expand for more detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "limit_number_of_returned_objects", + "type": "integer", + "required": false, + "description": "Specify the number of payment method domains to return, ranging from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_starting_after", + "type": "string", + "required": false, + "description": "An object ID cursor to fetch the next page in the list.", + "enum": null, + "inferrable": true + }, + { + "name": "include_enabled_domains", + "type": "boolean", + "required": false, + "description": "Include only enabled payment method domains in the results. If false, all domains will be included regardless of status.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPaymentMethodDomains'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.ListPaymentMethodDomains", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": false + }, + "pagination_cursor_ending_before": { + "value": "cursor123", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["payment_methods", "metadata"], + "type": "array", + "required": false + }, + "limit_number_of_returned_objects": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_cursor_starting_after": { + "value": "cursor456", + "type": "string", + "required": false + }, + "include_enabled_domains": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveCustomerDiscount", + "qualifiedName": "StripeApi.RemoveCustomerDiscount", + "fullyQualifiedName": "StripeApi.RemoveCustomerDiscount@1.0.0", + "description": "Remove the current discount applied to a customer.\n\nThis tool removes the discount that is currently applied to a specific customer when called. It should be used when there is a need to update or clear a customer's discount information.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer whose discount is to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCustomersCustomerDiscount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RemoveCustomerDiscount", + "parameters": { + "customer_id": { + "value": "cus_Jq1f8b43NHt8uU", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveCustomerSubscriptionDiscount", + "qualifiedName": "StripeApi.RemoveCustomerSubscriptionDiscount", + "fullyQualifiedName": "StripeApi.RemoveCustomerSubscriptionDiscount@1.0.0", + "description": "Removes the discount from a customer's subscription.\n\nThis tool is used to remove the currently applied discount on a specific customer's subscription.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer whose subscription discount should be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer's subscription from which the discount will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteCustomersCustomerSubscriptionsSubscriptionExposedIdDiscount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RemoveCustomerSubscriptionDiscount", + "parameters": { + "customer_id": { + "value": "cus_J8d3M9OjYhW6vO", + "type": "string", + "required": true + }, + "subscription_id": { + "value": "sub_K9g6T3qT6e8tVf", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveRadarValueListItem", + "qualifiedName": "StripeApi.RemoveRadarValueListItem", + "fullyQualifiedName": "StripeApi.RemoveRadarValueListItem@1.0.0", + "description": "Remove an item from a Stripe Radar value list.\n\nUse this tool to delete a specific ValueListItem from its parent value list in Stripe Radar.", + "parameters": [ + { + "name": "radar_value_list_item_id", + "type": "string", + "required": true, + "description": "The unique identifier of the ValueListItem to be removed from the Stripe Radar value list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteRadarValueListItemsItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RemoveRadarValueListItem", + "parameters": { + "radar_value_list_item_id": { + "value": "val_123abc456def", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveSubscriptionDiscount", + "qualifiedName": "StripeApi.RemoveSubscriptionDiscount", + "fullyQualifiedName": "StripeApi.RemoveSubscriptionDiscount@1.0.0", + "description": "Remove the discount from a subscription.\n\nThis tool should be called to remove the currently applied discount on a given subscription in the Stripe service.", + "parameters": [ + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The unique identifier for the subscription from which the discount will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'DeleteSubscriptionsSubscriptionExposedIdDiscount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RemoveSubscriptionDiscount", + "parameters": { + "subscription_id": { + "value": "sub_12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveAccountDetails", + "qualifiedName": "StripeApi.RetrieveAccountDetails", + "fullyQualifiedName": "StripeApi.RetrieveAccountDetails@1.0.0", + "description": "Retrieve details of a specific account.\n\nUse this tool to obtain detailed information about a specific account using its identifier.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The unique identifier of the account to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response for detailed account information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAccountsAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveAccountDetails", + "parameters": { + "account_id": { + "value": "acct_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["business_profile", "settings"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveActiveEntitlement", + "qualifiedName": "StripeApi.RetrieveActiveEntitlement", + "fullyQualifiedName": "StripeApi.RetrieveActiveEntitlement@1.0.0", + "description": "Retrieve details of an active entitlement by ID.\n\nThis tool retrieves information about an active entitlement using its ID. It should be used to fetch details related to a specific active entitlement in Stripe.", + "parameters": [ + { + "name": "entitlement_id", + "type": "string", + "required": true, + "description": "The unique identifier of the active entitlement to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response that should be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetEntitlementsActiveEntitlementsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveActiveEntitlement", + "parameters": { + "entitlement_id": { + "value": "ent_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer", "subscription"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveApplePayDomain", + "qualifiedName": "StripeApi.RetrieveApplePayDomain", + "fullyQualifiedName": "StripeApi.RetrieveApplePayDomain@1.0.0", + "description": "Retrieve details of an Apple Pay domain.\n\nUse this tool to get information about a specific Apple Pay domain by providing the domain name.", + "parameters": [ + { + "name": "apple_pay_domain_name", + "type": "string", + "required": true, + "description": "The domain name of the Apple Pay site to retrieve details for. This should be a valid domain string.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetApplePayDomainsDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveApplePayDomain", + "parameters": { + "apple_pay_domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["verification_status", "merchant_id"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveApplicationFeeDetails", + "qualifiedName": "StripeApi.RetrieveApplicationFeeDetails", + "fullyQualifiedName": "StripeApi.RetrieveApplicationFeeDetails@1.0.0", + "description": "Retrieve details of a specific application fee.\n\nUse this tool to get information about an application fee collected by your account. It provides the same details as when refunding the fee.", + "parameters": [ + { + "name": "application_fee_id", + "type": "string", + "required": true, + "description": "The unique identifier of the application fee to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetApplicationFeesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveApplicationFeeDetails", + "parameters": { + "application_fee_id": { + "value": "fee_1JH7JQ2eZvKYlo2C0p8ABCDf", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["balance_transaction", "refunds"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveApplicationFeeRefundDetail", + "qualifiedName": "StripeApi.RetrieveApplicationFeeRefundDetail", + "fullyQualifiedName": "StripeApi.RetrieveApplicationFeeRefundDetail@1.0.0", + "description": "Retrieve details of a specific application fee refund.\n\nUse this tool to obtain detailed information about a specific refund related to an application fee, beyond the 10 most recent refunds available by default.", + "parameters": [ + { + "name": "application_fee_id", + "type": "string", + "required": true, + "description": "The ID of the application fee associated with the refund to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "refund_id", + "type": "string", + "required": true, + "description": "The unique identifier of the specific refund to retrieve details for. This is required to access a particular refund.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for additional detail.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetApplicationFeesFeeRefundsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveApplicationFeeRefundDetail", + "parameters": { + "application_fee_id": { + "value": "fee_1GqICZ2eZvKYlo2CPQ9pMoZ1", + "type": "string", + "required": true + }, + "refund_id": { + "value": "re_1GqICZ2eZvKYlo2CkYKl52pD", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["balance_transaction", "refund_application_fee"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveBalanceTransactionById", + "qualifiedName": "StripeApi.RetrieveBalanceTransactionById", + "fullyQualifiedName": "StripeApi.RetrieveBalanceTransactionById@1.0.0", + "description": "Retrieve details of a balance transaction by ID.\n\nCall this tool to get the details of a specific balance transaction using its ID. Useful for accessing historical balance changes for specific transactions.", + "parameters": [ + { + "name": "balance_transaction_id", + "type": "string", + "required": true, + "description": "The unique identifier for the balance transaction to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBalanceHistoryId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveBalanceTransactionById", + "parameters": { + "balance_transaction_id": { + "value": "txn_1JHT8S2eZvKYlo2C1pG6L3wx", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["source", "destination"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveBillingMeter", + "qualifiedName": "StripeApi.RetrieveBillingMeter", + "fullyQualifiedName": "StripeApi.RetrieveBillingMeter@1.0.0", + "description": "Retrieve billing meter details by ID.\n\nUse this tool to get information about a billing meter by providing its ID.", + "parameters": [ + { + "name": "billing_meter_id", + "type": "string", + "required": true, + "description": "The ID of the billing meter to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of field names to expand in the billing meter response for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBillingMetersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveBillingMeter", + "parameters": { + "billing_meter_id": { + "value": "meter_12345", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["usage_records", "subscription"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCashBalanceTransaction", + "qualifiedName": "StripeApi.RetrieveCashBalanceTransaction", + "fullyQualifiedName": "StripeApi.RetrieveCashBalanceTransaction@1.0.0", + "description": "Retrieve a cash balance transaction for a customer.\n\nThis tool retrieves information about a specific cash balance transaction that affected a customer's cash balance in Stripe.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier of the customer whose cash balance transaction is to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "transaction_id", + "type": "string", + "required": true, + "description": "The unique identifier for the cash balance transaction to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerCashBalanceTransactionsTransaction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveCashBalanceTransaction", + "parameters": { + "customer_id": { + "value": "cus_JyXYZ123456", + "type": "string", + "required": true + }, + "transaction_id": { + "value": "txn_ABCD1234EFGH", + "type": "string", + "required": true + }, + "expand_fields_in_response": { + "value": ["source", "metadata"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCheckoutSession", + "qualifiedName": "StripeApi.RetrieveCheckoutSession", + "fullyQualifiedName": "StripeApi.RetrieveCheckoutSession@1.0.0", + "description": "Retrieve a specific Stripe checkout session.\n\nThis tool retrieves detailed information about a specific Checkout Session from Stripe. It should be called when there's a need to access the data for a particular session, identified by its session ID.", + "parameters": [ + { + "name": "session_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Checkout Session you want to retrieve. This is required to specify which session's details to access.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the checkout session response that should be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCheckoutSessionsSession'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveCheckoutSession", + "parameters": { + "session_id": { + "value": "cs_test_a1b2c3d4e5f6g7h8i9j0", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["payment_intent", "customer"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveClimateProductDetails", + "qualifiedName": "StripeApi.RetrieveClimateProductDetails", + "fullyQualifiedName": "StripeApi.RetrieveClimateProductDetails@1.0.0", + "description": "Retrieve details of a specific Climate product from Stripe.\n\nThis tool retrieves the details of a Climate product using the provided product ID from Stripe's API.", + "parameters": [ + { + "name": "product_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Climate product to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to expand for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetClimateProductsProduct'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveClimateProductDetails", + "parameters": { + "product_id": { + "value": "prod_12345ABCDE", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["metadata", "pricing_details"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveClimateSupplier", + "qualifiedName": "StripeApi.RetrieveClimateSupplier", + "fullyQualifiedName": "StripeApi.RetrieveClimateSupplier@1.0.0", + "description": "Fetches details of a specific Climate supplier.\n\nUse this tool to get detailed information about a Climate supplier using the supplier's identifier. It is useful for accessing supplier profiles managed by Stripe's Climate initiative.", + "parameters": [ + { + "name": "supplier_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Climate supplier to be retrieved. This is required to fetch the supplier's information.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for detailed information on the Climate supplier.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetClimateSuppliersSupplier'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveClimateSupplier", + "parameters": { + "supplier_identifier": { + "value": "climate_supplier_12345", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["sustainability_score", "impact_metrics", "location"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCountrySpecs", + "qualifiedName": "StripeApi.RetrieveCountrySpecs", + "fullyQualifiedName": "StripeApi.RetrieveCountrySpecs@1.0.0", + "description": "Retrieve all country specification objects from the API.\n\nThis tool calls the Stripe API to list all available Country Spec objects, providing information about country-specific details.", + "parameters": [ + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "The object ID to specify your place in the list for pagination, retrieving the previous page of results.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings specifying fields in the response to be expanded for more detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_country_specs_to_return", + "type": "integer", + "required": false, + "description": "Number of country specification objects to return, ranging from 1 to 100. The default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_id", + "type": "string", + "required": false, + "description": "Object ID to define your place in the list for pagination. Use it to fetch the next page if available, based on the last object from a previous list call.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCountrySpecs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveCountrySpecs", + "parameters": { + "pagination_ending_before": { + "value": "obj_123456789", + "type": "string", + "required": false + }, + "expand_response_fields": { + "value": ["currencies", "support"], + "type": "array", + "required": false + }, + "number_of_country_specs_to_return": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_starting_after_id": { + "value": "obj_987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCreditGrant", + "qualifiedName": "StripeApi.RetrieveCreditGrant", + "fullyQualifiedName": "StripeApi.RetrieveCreditGrant@1.0.0", + "description": "Retrieve details of a specific credit grant using its ID.\n\nCall this tool to get information about a specific credit grant by providing its ID. Useful for checking credit grant details within billing systems.", + "parameters": [ + { + "name": "credit_grant_id", + "type": "string", + "required": true, + "description": "The unique identifier for the credit grant to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response that should be expanded to include additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetBillingCreditGrantsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveCreditGrant", + "parameters": { + "credit_grant_id": { + "value": "cg_1234567890abcdef", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer", "subscription"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCreditNote", + "qualifiedName": "StripeApi.RetrieveCreditNote", + "fullyQualifiedName": "StripeApi.RetrieveCreditNote@1.0.0", + "description": "Retrieve details of a specific credit note by ID.\n\nUse this tool to get information about a credit note using its unique identifier. Ideal for retrieving specific credit note details from the Stripe service.", + "parameters": [ + { + "name": "credit_note_id", + "type": "string", + "required": true, + "description": "The unique identifier of the credit note to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to be expanded for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCreditNotesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveCreditNote", + "parameters": { + "credit_note_id": { + "value": "cn_1JH1Ck2eZvKYlo2C3oZg4q4e", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["invoice", "customer"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCreditNoteLines", + "qualifiedName": "StripeApi.RetrieveCreditNoteLines", + "fullyQualifiedName": "StripeApi.RetrieveCreditNoteLines@1.0.0", + "description": "Fetch line items from a specified credit note.\n\nThis tool retrieves line items from a given credit note, providing details and the option to access the full paginated list if needed.", + "parameters": [ + { + "name": "credit_note_id", + "type": "string", + "required": true, + "description": "The unique identifier of the credit note to retrieve line items from.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before", + "type": "string", + "required": false, + "description": "The object ID to paginate before, fetching the previous page in the list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded. Allows detailed retrieval of related objects.", + "enum": null, + "inferrable": true + }, + { + "name": "max_objects_to_return", + "type": "integer", + "required": false, + "description": "Specify the number of credit note line items to return. Must be between 1 and 100, default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "An object ID used for pagination to fetch the next page of the list. This ID should be the last object from a previous set of data.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCreditNotesCreditNoteLines'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveCreditNoteLines", + "parameters": { + "credit_note_id": { + "value": "cn_123456789", + "type": "string", + "required": true + }, + "pagination_ending_before": { + "value": "line_item_987654321", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["payment_intent", "invoice"], + "type": "array", + "required": false + }, + "max_objects_to_return": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "line_item_123456789", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCustomerDetails", + "qualifiedName": "StripeApi.RetrieveCustomerDetails", + "fullyQualifiedName": "StripeApi.RetrieveCustomerDetails@1.0.0", + "description": "Retrieve details of a specific customer.\n\nThis tool retrieves information about a specific customer from Stripe's database using their unique customer ID.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer to retrieve details for. This is a string provided by Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveCustomerDetails", + "parameters": { + "customer_id": { + "value": "cus_J5l3z0lUqzB1x9", + "type": "string", + "required": true + }, + "expand_response_fields": { + "value": ["subscriptions", "default_source"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCustomerDiscount", + "qualifiedName": "StripeApi.RetrieveCustomerDiscount", + "fullyQualifiedName": "StripeApi.RetrieveCustomerDiscount@1.0.0", + "description": "Retrieve a customer's discount information.\n\nUse this tool to get information about a specific customer's discount in Stripe. It provides details on any discounts applied to a customer's account.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer whose discount information you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to expand. Use to get additional related information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerDiscount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveCustomerDiscount", + "parameters": { + "customer_id": { + "value": "cus_J5e3Y7X9c6jA2B", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["coupon", "promotion_code"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCustomerPaymentSource", + "qualifiedName": "StripeApi.RetrieveCustomerPaymentSource", + "fullyQualifiedName": "StripeApi.RetrieveCustomerPaymentSource@1.0.0", + "description": "Retrieve a specified source for a given customer.\n\nUse this tool to get details about a specific payment source associated with a customer in Stripe.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer whose payment source needs to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "source_id", + "type": "string", + "required": true, + "description": "The unique identifier of the payment source to retrieve for the specified customer.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerSourcesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveCustomerPaymentSource", + "parameters": { + "customer_id": { + "value": "cus_J5kC6rY9bP9VwA", + "type": "string", + "required": true + }, + "source_id": { + "value": "src_1J9zjG2eZvKYlo2CU7l5NxhM", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["billing_details", "customer"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDebitReversal", + "qualifiedName": "StripeApi.RetrieveDebitReversal", + "fullyQualifiedName": "StripeApi.RetrieveDebitReversal@1.0.0", + "description": "Retrieve details of a specific debit reversal.\n\nUse this tool to get information about a specific DebitReversal object by ID.", + "parameters": [ + { + "name": "debit_reversal_id", + "type": "string", + "required": true, + "description": "The unique identifier of the DebitReversal object to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the DebitReversal response. Provide an array of field names as strings.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryDebitReversalsDebitReversal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveDebitReversal", + "parameters": { + "debit_reversal_id": { + "value": "dr_123456789", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["balance_transaction", "source_transaction"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDisputeById", + "qualifiedName": "StripeApi.RetrieveDisputeById", + "fullyQualifiedName": "StripeApi.RetrieveDisputeById@1.0.0", + "description": "Retrieve details of a dispute using its ID.\n\nThis tool is used to fetch detailed information about a specific dispute by providing its ID. It should be called when detailed information about a particular dispute is needed.", + "parameters": [ + { + "name": "dispute_id", + "type": "string", + "required": true, + "description": "The unique identifier of the dispute to be retrieved. This ID can be used to fetch detailed information about the specific dispute.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the dispute response that should be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetDisputesDispute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveDisputeById", + "parameters": { + "dispute_id": { + "value": "dp_1IYxuT2eZvKYlo2C2T1dW41J", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["charge", "balance_transactions"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEarlyFraudWarningDetails", + "qualifiedName": "StripeApi.RetrieveEarlyFraudWarningDetails", + "fullyQualifiedName": "StripeApi.RetrieveEarlyFraudWarningDetails@1.0.0", + "description": "Retrieve details of an early fraud warning.\n\nFetches information about a previously created early fraud warning. Useful for examining potential fraudulent activity and understanding associated risks.", + "parameters": [ + { + "name": "early_fraud_warning_id", + "type": "string", + "required": true, + "description": "The unique identifier of the early fraud warning to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response that should be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetRadarEarlyFraudWarningsEarlyFraudWarning'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveEarlyFraudWarningDetails", + "parameters": { + "early_fraud_warning_id": { + "value": "ew_1234567890abcdef", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["transaction", "customer"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveFeatureDetails", + "qualifiedName": "StripeApi.RetrieveFeatureDetails", + "fullyQualifiedName": "StripeApi.RetrieveFeatureDetails@1.0.0", + "description": "Fetches details for a specific feature by ID.\n\nUse this tool to retrieve detailed information about a specific feature using its ID within the Stripe system.", + "parameters": [ + { + "name": "feature_id", + "type": "string", + "required": true, + "description": "The unique identifier of the feature to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetEntitlementsFeaturesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveFeatureDetails", + "parameters": { + "feature_id": { + "value": "feat_xyz123", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["usage", "limits", "pricing"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveFileLink", + "qualifiedName": "StripeApi.RetrieveFileLink", + "fullyQualifiedName": "StripeApi.RetrieveFileLink@1.0.0", + "description": "Fetches a file link using its ID.\n\nUse this tool to retrieve information about a specific file link by providing its ID. Ideal for accessing details about file links stored in Stripe.", + "parameters": [ + { + "name": "file_link_id", + "type": "string", + "required": true, + "description": "The ID of the file link to retrieve details for. This is used to fetch the specific file link from Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings specifying which fields in the response should be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetFileLinksLink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveFileLink", + "parameters": { + "file_link_id": { + "value": "file_link_12345", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["created", "expires_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveFinancialConnectionsSession", + "qualifiedName": "StripeApi.RetrieveFinancialConnectionsSession", + "fullyQualifiedName": "StripeApi.RetrieveFinancialConnectionsSession@1.0.0", + "description": "Retrieve details of a Financial Connections Session.\n\nUse this tool to obtain detailed information about a specific Financial Connections Session from Stripe.", + "parameters": [ + { + "name": "financial_connection_session_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Financial Connections Session to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of strings specifying which fields in the response should be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetFinancialConnectionsSessionsSession'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveFinancialConnectionsSession", + "parameters": { + "financial_connection_session_id": { + "value": "fs_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer_details", "account_details"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveFinancialSessionDetails", + "qualifiedName": "StripeApi.RetrieveFinancialSessionDetails", + "fullyQualifiedName": "StripeApi.RetrieveFinancialSessionDetails@1.0.0", + "description": "Retrieve details of a financial connection session.\n\nUse this tool to get information about a specific financial connection session through Stripe. It's useful for accessing session details based on a session identifier.", + "parameters": [ + { + "name": "session_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the financial connection session to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of fields in the response that should be expanded to include more details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetLinkAccountSessionsSession'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveFinancialSessionDetails", + "parameters": { + "session_identifier": { + "value": "fs_1234567890abcdef", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["account", "transactions"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveForwardingRequest", + "qualifiedName": "StripeApi.RetrieveForwardingRequest", + "fullyQualifiedName": "StripeApi.RetrieveForwardingRequest@1.0.0", + "description": "Fetch a specific ForwardingRequest object using its ID.\n\nUse this tool to retrieve information about a ForwardingRequest by providing its unique ID. Ideal for accessing details of a specific forwarding request in the Stripe service.", + "parameters": [ + { + "name": "forwarding_request_id", + "type": "string", + "required": true, + "description": "The unique identifier for the ForwardingRequest object to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetForwardingRequestsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveForwardingRequest", + "parameters": { + "forwarding_request_id": { + "value": "fr_1J2Y2L2eZvKYlo2C2x3Y8F0N", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer", "payment_intent"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveInboundTransferDetails", + "qualifiedName": "StripeApi.RetrieveInboundTransferDetails", + "fullyQualifiedName": "StripeApi.RetrieveInboundTransferDetails@1.0.0", + "description": "Retrieve details of a specific inbound transfer.\n\nUse this tool to get information about a specific inbound transfer by providing its ID. It retrieves all associated details of the inbound transfer from the Stripe service.", + "parameters": [ + { + "name": "inbound_transfer_id", + "type": "string", + "required": true, + "description": "The unique identifier of the inbound transfer to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify which fields in the response should be expanded for detailed information. Provide them as a list of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryInboundTransfersId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveInboundTransferDetails", + "parameters": { + "inbound_transfer_id": { + "value": "inbound_transfer_ABC123", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["destination_payment", "transfer_details"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveInvoiceById", + "qualifiedName": "StripeApi.RetrieveInvoiceById", + "fullyQualifiedName": "StripeApi.RetrieveInvoiceById@1.0.0", + "description": "Retrieve details of an invoice using its ID.\n\nThis tool should be called to obtain information about a specific invoice by providing its ID. It retrieves details associated with the given invoice ID.", + "parameters": [ + { + "name": "invoice_id", + "type": "string", + "required": true, + "description": "The unique identifier for the invoice to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the invoice response that should be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetInvoicesInvoice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveInvoiceById", + "parameters": { + "invoice_id": { + "value": "inv_1234567890abcdef", + "type": "string", + "required": true + }, + "expand_fields_in_response": { + "value": ["receipt", "payment_intent"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveInvoicePayment", + "qualifiedName": "StripeApi.RetrieveInvoicePayment", + "fullyQualifiedName": "StripeApi.RetrieveInvoicePayment@1.0.0", + "description": "Fetch the details of a specific invoice payment by ID.\n\nUse this tool to retrieve the payment details for a given invoice ID from the Stripe service.", + "parameters": [ + { + "name": "invoice_payment_id", + "type": "string", + "required": true, + "description": "The ID of the invoice payment to retrieve details for. This ID is required to fetch the payment information.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to be expanded in the response. Each field should be specified as a string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetInvoicePaymentsInvoicePayment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveInvoicePayment", + "parameters": { + "invoice_payment_id": { + "value": "pi_1GqjP2F9jAN1e8LqXY3v1k5F", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer", "invoice"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveInvoiceTemplate", + "qualifiedName": "StripeApi.RetrieveInvoiceTemplate", + "fullyQualifiedName": "StripeApi.RetrieveInvoiceTemplate@1.0.0", + "description": "Fetch an invoice rendering template by ID.\n\nUse this tool to retrieve details of a specific invoice rendering template from Stripe. By default, it returns the latest version of the template, but you can specify a version to retrieve an older version.", + "parameters": [ + { + "name": "invoice_template_id", + "type": "string", + "required": true, + "description": "The unique identifier for the invoice rendering template you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for detailed information.", + "enum": null, + "inferrable": true + }, + { + "name": "template_version", + "type": "integer", + "required": false, + "description": "Specify the version number of the invoice rendering template to retrieve. If omitted, the latest version is returned.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetInvoiceRenderingTemplatesTemplate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveInvoiceTemplate", + "parameters": { + "invoice_template_id": { + "value": "it_1IhY2k2eZvKYlo2C7w5oNx1y", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer", "line_items"], + "type": "array", + "required": false + }, + "template_version": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveIssuingAuthorization", + "qualifiedName": "StripeApi.RetrieveIssuingAuthorization", + "fullyQualifiedName": "StripeApi.RetrieveIssuingAuthorization@1.0.0", + "description": "Fetches details of an Issuing Authorization object.\n\nUse this tool to retrieve a specific Issuing Authorization object from Stripe by providing the authorization ID.", + "parameters": [ + { + "name": "authorization_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Issuing Authorization object to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of strings specifying which fields in the response should be expanded.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssuingAuthorizationsAuthorization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveIssuingAuthorization", + "parameters": { + "authorization_id": { + "value": "ia_1234567890abcdef", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["card", "transaction"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveIssuingCardholder", + "qualifiedName": "StripeApi.RetrieveIssuingCardholder", + "fullyQualifiedName": "StripeApi.RetrieveIssuingCardholder@1.0.0", + "description": "Retrieve details of an issuing cardholder.\n\nThis tool retrieves the details of an issuing cardholder from the Stripe API. It should be called when you need specific information about a cardholder associated with a Stripe issuing account.", + "parameters": [ + { + "name": "cardholder_id", + "type": "string", + "required": true, + "description": "The unique identifier of the cardholder to retrieve details for, in string format.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of field names to expand in the response for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssuingCardholdersCardholder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveIssuingCardholder", + "parameters": { + "cardholder_id": { + "value": "ich_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["cards", "billing_address"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveIssuingDispute", + "qualifiedName": "StripeApi.RetrieveIssuingDispute", + "fullyQualifiedName": "StripeApi.RetrieveIssuingDispute@1.0.0", + "description": "Fetch the details of a specific issuing dispute.\n\nUse this tool to retrieve an Issuing Dispute object from Stripe by providing the dispute identifier.", + "parameters": [ + { + "name": "dispute_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Issuing Dispute to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the dispute response that should be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssuingDisputesDispute'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveIssuingDispute", + "parameters": { + "dispute_id": { + "value": "dp_1JX3mK2eZvKYlo2CkE7cGw3f", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["charge", "evidence"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveIssuingSettlement", + "qualifiedName": "StripeApi.RetrieveIssuingSettlement", + "fullyQualifiedName": "StripeApi.RetrieveIssuingSettlement@1.0.0", + "description": "Fetch details of an Issuing Settlement object.\n\nUse this tool to retrieve information about a specific Issuing Settlement in the Stripe platform. It is useful for getting the details of settlements related to issuing transactions.", + "parameters": [ + { + "name": "settlement_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Issuing Settlement to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to be expanded in the response for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssuingSettlementsSettlement'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveIssuingSettlement", + "parameters": { + "settlement_id": { + "value": "iss_setl_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["transaction_details", "merchant_details"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveIssuingTransaction", + "qualifiedName": "StripeApi.RetrieveIssuingTransaction", + "fullyQualifiedName": "StripeApi.RetrieveIssuingTransaction@1.0.0", + "description": "Fetch details of an issuing transaction by ID.\n\nThis tool retrieves information about a specific issuing transaction using its unique ID. It is used to gather details on transactions processed through Stripe's issuing services.", + "parameters": [ + { + "name": "transaction_id", + "type": "string", + "required": true, + "description": "The unique identifier for the issuing transaction to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssuingTransactionsTransaction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveIssuingTransaction", + "parameters": { + "transaction_id": { + "value": "txn_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["card", "merchant"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveMandateInfo", + "qualifiedName": "StripeApi.RetrieveMandateInfo", + "fullyQualifiedName": "StripeApi.RetrieveMandateInfo@1.0.0", + "description": "Retrieve detailed information of a mandate.\n\nFetches details about a Mandate object from Stripe when provided with a specific mandate ID.", + "parameters": [ + { + "name": "mandate_id", + "type": "string", + "required": true, + "description": "The unique identifier for the mandate to retrieve details for. It should be a valid string representing the mandate ID in Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetMandatesMandate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveMandateInfo", + "parameters": { + "mandate_id": { + "value": "mandate_1J2h5e2eZvKYlo2cJgk5oD1A", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer", "payment_method"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveOutboundPaymentDetails", + "qualifiedName": "StripeApi.RetrieveOutboundPaymentDetails", + "fullyQualifiedName": "StripeApi.RetrieveOutboundPaymentDetails@1.0.0", + "description": "Retrieve details of an existing OutboundPayment by ID.\n\nUse this tool to obtain details of a specific OutboundPayment using its unique ID from Stripe's treasury service.", + "parameters": [ + { + "name": "outbound_payment_id", + "type": "string", + "required": true, + "description": "The unique identifier of the OutboundPayment to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryOutboundPaymentsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveOutboundPaymentDetails", + "parameters": { + "outbound_payment_id": { + "value": "op_123456789abcdef", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["payment_method", "recipient_details"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePaymentIntentDetails", + "qualifiedName": "StripeApi.RetrievePaymentIntentDetails", + "fullyQualifiedName": "StripeApi.RetrievePaymentIntentDetails@1.0.0", + "description": "Retrieve details of a specific PaymentIntent using its ID.\n\nUse this tool to get information about a PaymentIntent that has already been created. Suitable for retrieving details client-side with a publishable key.", + "parameters": [ + { + "name": "payment_intent_id", + "type": "string", + "required": true, + "description": "The unique identifier of the PaymentIntent to retrieve details for. Required to specify which PaymentIntent you are interested in.", + "enum": null, + "inferrable": true + }, + { + "name": "payment_intent_client_secret", + "type": "string", + "required": false, + "description": "The client secret for the PaymentIntent, required when using a publishable key to retrieve the source.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPaymentIntentsIntent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrievePaymentIntentDetails", + "parameters": { + "payment_intent_id": { + "value": "pi_1IyEeY2eZvKYlo2CQhC6vZRv", + "type": "string", + "required": true + }, + "payment_intent_client_secret": { + "value": "pi_xxx_secret_xxx", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["charges", "customer"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePaymentLinkInfo", + "qualifiedName": "StripeApi.RetrievePaymentLinkInfo", + "fullyQualifiedName": "StripeApi.RetrievePaymentLinkInfo@1.0.0", + "description": "Retrieve detailed information about a payment link.\n\nUse this tool to get information about a specific payment link from Stripe. It's useful for checking the status or details of payment links.", + "parameters": [ + { + "name": "payment_link_id", + "type": "string", + "required": true, + "description": "The unique identifier of the payment link to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPaymentLinksPaymentLink'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrievePaymentLinkInfo", + "parameters": { + "payment_link_id": { + "value": "plink_1J2eH9K08s9DxT3Yb1aFjE5Y", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["payment_link", "customer"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePaymentMethodConfiguration", + "qualifiedName": "StripeApi.RetrievePaymentMethodConfiguration", + "fullyQualifiedName": "StripeApi.RetrievePaymentMethodConfiguration@1.0.0", + "description": "Retrieve a specific payment method configuration.\n\nThis tool is used to get details about a specific payment method configuration from Stripe.", + "parameters": [ + { + "name": "payment_method_configuration_id", + "type": "string", + "required": true, + "description": "The unique identifier for the payment method configuration to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPaymentMethodConfigurationsConfiguration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrievePaymentMethodConfiguration", + "parameters": { + "payment_method_configuration_id": { + "value": "pm_conf_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["settings", "capabilities"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonAccountDetails", + "qualifiedName": "StripeApi.RetrievePersonAccountDetails", + "fullyQualifiedName": "StripeApi.RetrievePersonAccountDetails@1.0.0", + "description": "Retrieve details of a person linked to an account.\n\nThis tool retrieves details of an existing person associated with a specified account in Stripe. It should be called when you need to fetch information about a specific person related to an account on the Stripe platform.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The identifier of the Stripe account to which the person is linked. This is required to specify which account's person details need to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "person_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the person whose details need to be retrieved. This ID is associated with the person's account in Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to be expanded for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAccountsAccountPersonsPerson'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrievePersonAccountDetails", + "parameters": { + "account_id": { + "value": "acct_123456789", + "type": "string", + "required": true + }, + "person_identifier": { + "value": "person_987654321", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["email", "phone", "address"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonalizationDesign", + "qualifiedName": "StripeApi.RetrievePersonalizationDesign", + "fullyQualifiedName": "StripeApi.RetrievePersonalizationDesign@1.0.0", + "description": "Retrieve a personalization design object by ID.\n\nUse this tool to get the details of a specific personalization design by providing its ID. Ideal for retrieving information related to issuing personalization designs.", + "parameters": [ + { + "name": "personalization_design_id", + "type": "string", + "required": true, + "description": "The ID of the personalization design to retrieve. This is used to specify which design object's details are desired.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssuingPersonalizationDesignsPersonalizationDesign'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrievePersonalizationDesign", + "parameters": { + "personalization_design_id": { + "value": "pd_12345", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["owner", "created_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePersonInformation", + "qualifiedName": "StripeApi.RetrievePersonInformation", + "fullyQualifiedName": "StripeApi.RetrievePersonInformation@1.0.0", + "description": "Retrieve information about a person in a Stripe account.\n\nUse this tool to obtain details of a specific person associated with a Stripe account. Ideal for scenarios where user requests involve checking or verifying personal information linked to an account.", + "parameters": [ + { + "name": "stripe_account_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Stripe account from which to retrieve the person's information. This is required to access the account details linked to this person.", + "enum": null, + "inferrable": true + }, + { + "name": "person_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the person to retrieve within the Stripe account. This ID is required to fetch the specific person's details.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetAccountsAccountPeoplePerson'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrievePersonInformation", + "parameters": { + "stripe_account_id": { + "value": "acct_123456789", + "type": "string", + "required": true + }, + "person_identifier": { + "value": "person_abcdef123456", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["email", "phone", "address"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrievePhysicalBundle", + "qualifiedName": "StripeApi.RetrievePhysicalBundle", + "fullyQualifiedName": "StripeApi.RetrievePhysicalBundle@1.0.0", + "description": "Retrieve details of a physical bundle.\n\nUse this tool to get information about a specific physical bundle in the Stripe issuing service. Useful for accessing current data about a particular bundle.", + "parameters": [ + { + "name": "physical_bundle_id", + "type": "string", + "required": true, + "description": "The unique identifier of the physical bundle to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of fields in the response to be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIssuingPhysicalBundlesPhysicalBundle'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrievePhysicalBundle", + "parameters": { + "physical_bundle_id": { + "value": "bundle_xyz123", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["items", "shipping_details"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveQuoteById", + "qualifiedName": "StripeApi.RetrieveQuoteById", + "fullyQualifiedName": "StripeApi.RetrieveQuoteById@1.0.0", + "description": "Fetches quote details using a specified ID.\n\nUse this tool to retrieve information about a specific quote by providing its ID.", + "parameters": [ + { + "name": "quote_id", + "type": "string", + "required": true, + "description": "The unique identifier of the quote to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetQuotesQuote'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveQuoteById", + "parameters": { + "quote_id": { + "value": "qt_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer", "line_items"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveQuotesList", + "qualifiedName": "StripeApi.RetrieveQuotesList", + "fullyQualifiedName": "StripeApi.RetrieveQuotesList@1.0.0", + "description": "Fetches a list of your available quotes.\n\nUse this tool to retrieve a list of quotes you have created or received. It provides details on each quote you have within your Stripe account.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": false, + "description": "The ID of the customer to retrieve quotes for.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_ending_before_cursor", + "type": "string", + "required": false, + "description": "A string cursor indicating the object ID before which results are returned for pagination purposes. Use it to fetch the previous page of the list.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response. Each field is specified as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Sets the maximum number of quote objects to retrieve, between 1 and 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after", + "type": "string", + "required": false, + "description": "Object ID for pagination to fetch the list after the specified item. Use to get the next page.", + "enum": null, + "inferrable": true + }, + { + "name": "quote_status", + "type": "string", + "required": false, + "description": "The status of the quote. Possible values are 'accepted', 'canceled', 'draft', or 'open'.", + "enum": null, + "inferrable": true + }, + { + "name": "test_clock_id", + "type": "string", + "required": false, + "description": "The ID of the test clock to filter quotes. Must be set with the customer parameter.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetQuotes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveQuotesList", + "parameters": { + "customer_id": { + "value": "cus_1234567890", + "type": "string", + "required": false + }, + "pagination_ending_before_cursor": { + "value": "quote_9876543210", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["customer", "line_items"], + "type": "array", + "required": false + }, + "result_limit": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_starting_after": { + "value": "quote_1234567890", + "type": "string", + "required": false + }, + "quote_status": { + "value": "open", + "type": "string", + "required": false + }, + "test_clock_id": { + "value": "test_clock_123456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveRadarValuelist", + "qualifiedName": "StripeApi.RetrieveRadarValuelist", + "fullyQualifiedName": "StripeApi.RetrieveRadarValuelist@1.0.0", + "description": "Retrieve details of a specific Radar ValueList.\n\nFetches information about a specified Radar ValueList object using its identifier.", + "parameters": [ + { + "name": "identifier_of_radar_valuelist", + "type": "string", + "required": true, + "description": "The unique identifier of the Radar ValueList to retrieve details for. It is required to fetch the specific ValueList object.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to expand for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetRadarValueListsValueList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveRadarValuelist", + "parameters": { + "identifier_of_radar_valuelist": { + "value": "valuelist_123456", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["items", "created"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveReceivedDebitDetails", + "qualifiedName": "StripeApi.RetrieveReceivedDebitDetails", + "fullyQualifiedName": "StripeApi.RetrieveReceivedDebitDetails@1.0.0", + "description": "Retrieve details of a specific ReceivedDebit by ID.\n\nUse this tool to get information about an existing ReceivedDebit by providing its unique ID.", + "parameters": [ + { + "name": "received_debit_id", + "type": "string", + "required": true, + "description": "The unique ID of the ReceivedDebit to retrieve details for. This ID is required.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of response fields to expand for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryReceivedDebitsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveReceivedDebitDetails", + "parameters": { + "received_debit_id": { + "value": "deb_1234567890abcdefg", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer", "transaction"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveRefundDetails", + "qualifiedName": "StripeApi.RetrieveRefundDetails", + "fullyQualifiedName": "StripeApi.RetrieveRefundDetails@1.0.0", + "description": "Retrieve details of an existing refund.\n\nUse this tool to obtain information about a specific refund by its identifier.", + "parameters": [ + { + "name": "refund_id", + "type": "string", + "required": true, + "description": "The unique identifier of the refund to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "Specify which fields in the response should be expanded. Provide an array of field paths.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetRefundsRefund'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveRefundDetails", + "parameters": { + "refund_id": { + "value": "re_123456789", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["charge", "payment_intent"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveRefundDetailsByCharge", + "qualifiedName": "StripeApi.RetrieveRefundDetailsByCharge", + "fullyQualifiedName": "StripeApi.RetrieveRefundDetailsByCharge@1.0.0", + "description": "Fetches details of a refund associated to a specific charge.\n\nUse this tool to get detailed information about a specific refund by providing the charge ID and refund ID.", + "parameters": [ + { + "name": "charge_id", + "type": "string", + "required": true, + "description": "The unique identifier for the charge associated with the refund.", + "enum": null, + "inferrable": true + }, + { + "name": "refund_id", + "type": "string", + "required": true, + "description": "The ID of the refund to retrieve details for. This is required to specify the refund you want to look up.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the refund details to be expanded in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetChargesChargeRefundsRefund'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveRefundDetailsByCharge", + "parameters": { + "charge_id": { + "value": "ch_1IYh3u2eZvKYlo2C7PTqvtes", + "type": "string", + "required": true + }, + "refund_id": { + "value": "re_1IYh4u2eZvKYlo2C1SPqYcud", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["balance_transaction", "payment_intent"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveScheduledQueryRunDetails", + "qualifiedName": "StripeApi.RetrieveScheduledQueryRunDetails", + "fullyQualifiedName": "StripeApi.RetrieveScheduledQueryRunDetails@1.0.0", + "description": "Fetches details of a Stripe Sigma scheduled query run.\n\nThis tool retrieves the details of a specific scheduled query run from Stripe Sigma. Use this when you need information about the execution of a scheduled query run.", + "parameters": [ + { + "name": "scheduled_query_run_id", + "type": "string", + "required": true, + "description": "The unique identifier for the scheduled query run you wish to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for additional detail.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSigmaScheduledQueryRunsScheduledQueryRun'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveScheduledQueryRunDetails", + "parameters": { + "scheduled_query_run_id": { + "value": "sr_1234567890abcdefg", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["result", "metadata"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSetupIntentDetails", + "qualifiedName": "StripeApi.RetrieveSetupIntentDetails", + "fullyQualifiedName": "StripeApi.RetrieveSetupIntentDetails@1.0.0", + "description": "Fetch details of an existing Stripe SetupIntent.\n\nUse this tool to retrieve information about a specific SetupIntent created in Stripe. Requires the intent ID and optionally a client secret for client-side retrieval using a publishable key.", + "parameters": [ + { + "name": "setup_intent_id", + "type": "string", + "required": true, + "description": "The unique identifier for the SetupIntent to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "setup_intent_client_secret", + "type": "string", + "required": false, + "description": "The client secret for retrieving SetupIntent using a publishable key. Required for client-side retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response, such as nested objects. Each field should be specified as a string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSetupIntentsIntent'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveSetupIntentDetails", + "parameters": { + "setup_intent_id": { + "value": "seti_1JH9aT2eZvKYlo2C1I4I5tzG", + "type": "string", + "required": true + }, + "setup_intent_client_secret": { + "value": "seti_client_secret_1JH9aU2eZvKYlo2CP1I4I5tzG", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["payment_method", "customer"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveShippingRateDetails", + "qualifiedName": "StripeApi.RetrieveShippingRateDetails", + "fullyQualifiedName": "StripeApi.RetrieveShippingRateDetails@1.0.0", + "description": "Retrieve details of a specific shipping rate using its ID.\n\nThis tool retrieves the shipping rate object associated with the provided shipping rate ID. Call this tool to get detailed information about a particular shipping rate from Stripe.", + "parameters": [ + { + "name": "shipping_rate_id", + "type": "string", + "required": true, + "description": "The unique identifier for the shipping rate to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetShippingRatesShippingRateToken'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveShippingRateDetails", + "parameters": { + "shipping_rate_id": { + "value": "shr_12345abcde67890", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["shipping_rate_details", "shipping_method"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSourceMandateNotification", + "qualifiedName": "StripeApi.RetrieveSourceMandateNotification", + "fullyQualifiedName": "StripeApi.RetrieveSourceMandateNotification@1.0.0", + "description": "Retrieve details of a specific mandate notification.\n\nThis tool retrieves information about a specific Source MandateNotification from Stripe. It should be used when you need to access details regarding a mandate notification for a given source.", + "parameters": [ + { + "name": "mandate_notification_id", + "type": "string", + "required": true, + "description": "The unique identifier of the mandate notification to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "source_id", + "type": "string", + "required": true, + "description": "The unique identifier of the source to retrieve information for. This is required to specify which source's mandate notification you want to access.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response that should be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSourcesSourceMandateNotificationsMandateNotification'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveSourceMandateNotification", + "parameters": { + "mandate_notification_id": { + "value": "mn_123456789", + "type": "string", + "required": true + }, + "source_id": { + "value": "src_987654321", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer", "payment_method"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveStripeChargeDetails", + "qualifiedName": "StripeApi.RetrieveStripeChargeDetails", + "fullyQualifiedName": "StripeApi.RetrieveStripeChargeDetails@1.0.0", + "description": "Retrieve details of a specific Stripe charge via its unique ID.\n\nUse this tool to get details of a previously created charge on Stripe by providing the charge's unique ID. It returns information such as amount, currency, status, and more.", + "parameters": [ + { + "name": "charge_id", + "type": "string", + "required": true, + "description": "The unique identifier of the charge. Use this to retrieve its details.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to expand for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetChargesCharge'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveStripeChargeDetails", + "parameters": { + "charge_id": { + "value": "ch_1J2yz9FYzP4Y2U8Fx4b3ZT0k", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["billing_details", "payment_intent"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveStripeEventDetails", + "qualifiedName": "StripeApi.RetrieveStripeEventDetails", + "fullyQualifiedName": "StripeApi.RetrieveStripeEventDetails@1.0.0", + "description": "Retrieve details of a Stripe event using its unique ID.\n\nUse this tool to get information about a Stripe event created in the last 30 days. You need to provide the unique event identifier, typically received through a webhook.", + "parameters": [ + { + "name": "event_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the event to retrieve details for. Typically received via a webhook and must have been created in the last 30 days.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to be expanded in the response. Provide field names as strings.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetEventsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveStripeEventDetails", + "parameters": { + "event_identifier": { + "value": "evt_1J2e3B2eZvKYlo2C5O5vN3U7", + "type": "string", + "required": true + }, + "fields_to_expand_in_response": { + "value": ["data.object.billing_details", "data.object.customer"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveStripePaymentMethod", + "qualifiedName": "StripeApi.RetrieveStripePaymentMethod", + "fullyQualifiedName": "StripeApi.RetrieveStripePaymentMethod@1.0.0", + "description": "Retrieve details of a specific Stripe payment method.\n\nUse this tool to get information about a PaymentMethod object attached to a Stripe account. For payment methods attached to a customer, use the appropriate endpoint.", + "parameters": [ + { + "name": "payment_method_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Stripe PaymentMethod to be retrieved. Required for fetching details of a specific payment method.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPaymentMethodsPaymentMethod'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveStripePaymentMethod", + "parameters": { + "payment_method_id": { + "value": "pm_1J2e71FQ7oU2fDqvJl4nGd0l", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["billing_details", "card"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveStripePlan", + "qualifiedName": "StripeApi.RetrieveStripePlan", + "fullyQualifiedName": "StripeApi.RetrieveStripePlan@1.0.0", + "description": "Retrieve details of a specific Stripe plan by ID.\n\nUse this tool to get detailed information about a Stripe plan using its ID. It retrieves the plan's data directly from the Stripe service.", + "parameters": [ + { + "name": "stripe_plan_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Stripe plan to retrieve details about. This is required to obtain a specific plan's information.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response for more detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPlansPlan'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveStripePlan", + "parameters": { + "stripe_plan_id": { + "value": "plan_12345", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["product", "billing_scheme"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveStripePrice", + "qualifiedName": "StripeApi.RetrieveStripePrice", + "fullyQualifiedName": "StripeApi.RetrieveStripePrice@1.0.0", + "description": "Fetches price details using a specific ID from Stripe.\n\nThis tool retrieves detailed information about a price by its ID from the Stripe platform. It should be called when specific pricing information is needed for products or services managed via Stripe.", + "parameters": [ + { + "name": "price_id", + "type": "string", + "required": true, + "description": "The unique identifier for the price you want to retrieve from Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded to include additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPricesPrice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveStripePrice", + "parameters": { + "price_id": { + "value": "price_1JHfG2L5eZvKYlo2C8Bg1eZI", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["product", "currency"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveStripeSource", + "qualifiedName": "StripeApi.RetrieveStripeSource", + "fullyQualifiedName": "StripeApi.RetrieveStripeSource@1.0.0", + "description": "Retrieve updated details of a Stripe source object.\n\nThis tool should be called when you need to get the current information of a specific source object in Stripe using its unique source ID.", + "parameters": [ + { + "name": "stripe_source_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Stripe source object to retrieve its current information.", + "enum": null, + "inferrable": true + }, + { + "name": "source_client_secret", + "type": "string", + "required": false, + "description": "The client secret of the source. Required if a publishable key is used to retrieve the source.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSourcesSource'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveStripeSource", + "parameters": { + "stripe_source_id": { + "value": "src_1GqjY9IkPTeYm2", + "type": "string", + "required": true + }, + "source_client_secret": { + "value": "src_client_secret_xxx", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["owner", "recipient"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveStripeSubscriptionById", + "qualifiedName": "StripeApi.RetrieveStripeSubscriptionById", + "fullyQualifiedName": "StripeApi.RetrieveStripeSubscriptionById@1.0.0", + "description": "Retrieve a Stripe subscription by its ID.\n\nThis tool retrieves a subscription from Stripe using the provided subscription ID for a specific customer. Use it when you need details about a specific subscription.", + "parameters": [ + { + "name": "customer_id", + "type": "string", + "required": true, + "description": "The unique identifier for the customer whose subscription is being retrieved. Provide this to specify which customer's subscription details to fetch.", + "enum": null, + "inferrable": true + }, + { + "name": "subscription_id", + "type": "string", + "required": true, + "description": "The identifier of the subscription to retrieve. Required to fetch the specific subscription details.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the subscription response, allowing for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersCustomerSubscriptionsSubscriptionExposedId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveStripeSubscriptionById", + "parameters": { + "customer_id": { + "value": "cus_123456789", + "type": "string", + "required": true + }, + "subscription_id": { + "value": "sub_987654321", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["billing_cycle_anchor", "items"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveStripeToken", + "qualifiedName": "StripeApi.RetrieveStripeToken", + "fullyQualifiedName": "StripeApi.RetrieveStripeToken@1.0.0", + "description": "Retrieve details of a Stripe token using its ID.\n\nUse this tool to fetch information about a specific Stripe token by providing its ID.", + "parameters": [ + { + "name": "stripe_token_id", + "type": "string", + "required": true, + "description": "The ID of the Stripe token you want to retrieve details about.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for more detail.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTokensToken'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveStripeToken", + "parameters": { + "stripe_token_id": { + "value": "tok_1GqjYg2eZvKYlo2C5B4adkWe", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["card", "customer"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveStripeTopupDetails", + "qualifiedName": "StripeApi.RetrieveStripeTopupDetails", + "fullyQualifiedName": "StripeApi.RetrieveStripeTopupDetails@1.0.0", + "description": "Retrieve details of a Stripe top-up using its ID.\n\nThis tool retrieves the details of a previously created Stripe top-up. It requires the unique top-up ID and returns the corresponding top-up information.", + "parameters": [ + { + "name": "topup_id", + "type": "string", + "required": true, + "description": "The unique ID of the Stripe top-up you want to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to be expanded. Specify field names as strings.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTopupsTopup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveStripeTopupDetails", + "parameters": { + "topup_id": { + "value": "topup_1Iq7FJ2eZvKYlo2C6iEhNq0y", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["balance_transfers", "failure_reason"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveStripeVerificationReport", + "qualifiedName": "StripeApi.RetrieveStripeVerificationReport", + "fullyQualifiedName": "StripeApi.RetrieveStripeVerificationReport@1.0.0", + "description": "Retrieve details of an existing Stripe verification report.\n\nUse this tool to fetch detailed information of a specific identity verification report from Stripe. This is useful for reviewing identity verification results or audit purposes.", + "parameters": [ + { + "name": "verification_report_id", + "type": "string", + "required": true, + "description": "The unique identifier of the verification report to fetch from Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to expand for additional detail.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIdentityVerificationReportsReport'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveStripeVerificationReport", + "parameters": { + "verification_report_id": { + "value": "vr_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["identity", "verification_status", "reviewed_at"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSubscriptionItem", + "qualifiedName": "StripeApi.RetrieveSubscriptionItem", + "fullyQualifiedName": "StripeApi.RetrieveSubscriptionItem@1.0.0", + "description": "Retrieve details of a specific subscription item.\n\nThis tool retrieves information about a subscription item using its ID. It can be used to access the specifics of a subscription item within a subscription plan to understand its configuration and parameters.", + "parameters": [ + { + "name": "subscription_item_id", + "type": "string", + "required": true, + "description": "The unique identifier of the subscription item to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to be expanded for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSubscriptionItemsItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveSubscriptionItem", + "parameters": { + "subscription_item_id": { + "value": "si_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["price", "metadata"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveSubscriptionSchedule", + "qualifiedName": "StripeApi.RetrieveSubscriptionSchedule", + "fullyQualifiedName": "StripeApi.RetrieveSubscriptionSchedule@1.0.0", + "description": "Get details of an existing subscription schedule by ID.\n\nThis tool retrieves the detailed information of an existing subscription schedule using its unique identifier. It should be called when detailed information about a subscription schedule is needed.", + "parameters": [ + { + "name": "subscription_schedule_id", + "type": "string", + "required": true, + "description": "The unique identifier for the subscription schedule to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand_in_response", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSubscriptionSchedulesSchedule'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveSubscriptionSchedule", + "parameters": { + "subscription_schedule_id": { + "value": "sub_sched_123456789", + "type": "string", + "required": true + }, + "fields_to_expand_in_response": { + "value": ["latest_invoice", "cancel_at_period_end"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTaxCalculation", + "qualifiedName": "StripeApi.RetrieveTaxCalculation", + "fullyQualifiedName": "StripeApi.RetrieveTaxCalculation@1.0.0", + "description": "Retrieve a specific tax calculation by its ID.\n\nThis tool retrieves details of a Tax Calculation object using its unique ID, provided the calculation has not expired. It is useful for obtaining information on specific tax calculations.", + "parameters": [ + { + "name": "tax_calculation_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Tax Calculation object to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields to expand in the response. Use to get detailed subfields of tax calculations.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTaxCalculationsCalculation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveTaxCalculation", + "parameters": { + "tax_calculation_id": { + "value": "calc_1234567890abcdefg", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["line_items", "customer_details"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTaxCalculationLineItems", + "qualifiedName": "StripeApi.RetrieveTaxCalculationLineItems", + "fullyQualifiedName": "StripeApi.RetrieveTaxCalculationLineItems@1.0.0", + "description": "Retrieve line items for a Stripe tax calculation.\n\nUse this tool to get the line items of a tax calculation from Stripe, provided the calculation hasn't expired.", + "parameters": [ + { + "name": "tax_calculation_id", + "type": "string", + "required": true, + "description": "The ID of the tax calculation to retrieve line items for. Ensure that the calculation has not expired.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor_ending_before", + "type": "string", + "required": false, + "description": "An object ID to define your place in the list for pagination, used to fetch the previous page.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to be expanded. Use this to include additional data in the output.", + "enum": null, + "inferrable": true + }, + { + "name": "object_return_limit", + "type": "integer", + "required": false, + "description": "Specifies the number of objects to return, between 1 and 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_starting_after_item_id", + "type": "string", + "required": false, + "description": "An object ID used for pagination to fetch the next page of results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTaxCalculationsCalculationLineItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveTaxCalculationLineItems", + "parameters": { + "tax_calculation_id": { + "value": "tx_calc_123456789", + "type": "string", + "required": true + }, + "pagination_cursor_ending_before": { + "value": "item_987654321", + "type": "string", + "required": false + }, + "fields_to_expand": { + "value": ["item_description", "item_tax_rate"], + "type": "array", + "required": false + }, + "object_return_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "pagination_starting_after_item_id": { + "value": "item_543210987", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTaxId", + "qualifiedName": "StripeApi.RetrieveTaxId", + "fullyQualifiedName": "StripeApi.RetrieveTaxId@1.0.0", + "description": "Retrieve an account or customer's tax_id object.\n\nUse this tool to retrieve detailed information about a specific tax_id associated with an account or customer on Stripe.", + "parameters": [ + { + "name": "tax_id_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the tax_id object to be retrieved. This is a required field to specify which tax_id you want information about.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response that should be expanded for detailed information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTaxIdsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveTaxId", + "parameters": { + "tax_id_identifier": { + "value": "tx_12345678", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["type", "country"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTaxRate", + "qualifiedName": "StripeApi.RetrieveTaxRate", + "fullyQualifiedName": "StripeApi.RetrieveTaxRate@1.0.0", + "description": "Fetches a tax rate by its ID from Stripe.\n\nUse this tool to retrieve specific tax rate information from Stripe using the tax rate ID. It provides the details associated with the particular tax rate.", + "parameters": [ + { + "name": "tax_rate_id", + "type": "string", + "required": true, + "description": "The unique identifier for the tax rate to be retrieved from Stripe. This ID is required to fetch the specific tax rate details.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to be expanded in the response. This allows you to retrieve additional nested information related to the tax rate.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTaxRatesTaxRate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveTaxRate", + "parameters": { + "tax_rate_id": { + "value": "txr_123456789", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["inclusive", "jurisdiction"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTaxTransaction", + "qualifiedName": "StripeApi.RetrieveTaxTransaction", + "fullyQualifiedName": "StripeApi.RetrieveTaxTransaction@1.0.0", + "description": "Retrieve details of a specific tax transaction.\n\nThis tool retrieves a Tax Transaction object from the Stripe API, providing detailed information about a specific tax transaction.", + "parameters": [ + { + "name": "transaction_id", + "type": "string", + "required": true, + "description": "Unique identifier for the tax transaction to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the tax transaction response for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTaxTransactionsTransaction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveTaxTransaction", + "parameters": { + "transaction_id": { + "value": "txn_123456789", + "type": "string", + "required": true + }, + "expand_response_fields": { + "value": ["customer", "invoice"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTerminalConfiguration", + "qualifiedName": "StripeApi.RetrieveTerminalConfiguration", + "fullyQualifiedName": "StripeApi.RetrieveTerminalConfiguration@1.0.0", + "description": "Retrieves a terminal configuration object for Stripe.", + "parameters": [ + { + "name": "configuration_id", + "type": "string", + "required": true, + "description": "The unique identifier of the terminal configuration to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the terminal configuration response that should be expanded for more details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTerminalConfigurationsConfiguration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveTerminalConfiguration", + "parameters": { + "configuration_id": { + "value": "cfg_123456789", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["location", "payment_methods"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTerminalLocation", + "qualifiedName": "StripeApi.RetrieveTerminalLocation", + "fullyQualifiedName": "StripeApi.RetrieveTerminalLocation@1.0.0", + "description": "Fetches details of a terminal location by ID.\n\nUse this tool to obtain information about a specific terminal location from Stripe by providing the location ID.", + "parameters": [ + { + "name": "location_id", + "type": "string", + "required": true, + "description": "The unique identifier for the terminal location to retrieve information for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response to expand for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTerminalLocationsLocation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveTerminalLocation", + "parameters": { + "location_id": { + "value": "loc_12345", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["merchant_details", "address"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTerminalReader", + "qualifiedName": "StripeApi.RetrieveTerminalReader", + "fullyQualifiedName": "StripeApi.RetrieveTerminalReader@1.0.0", + "description": "Retrieve details of a terminal reader.\n\nThis tool retrieves a specific terminal reader object from the Stripe API. It should be called when detailed information about a particular reader is needed.", + "parameters": [ + { + "name": "terminal_reader_id", + "type": "string", + "required": true, + "description": "The unique identifier for the terminal reader to retrieve. It should be a string value.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for more detail.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTerminalReadersReader'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveTerminalReader", + "parameters": { + "terminal_reader_id": { + "value": "trr_1234567890abcdef", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["location", "device_details"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTestClock", + "qualifiedName": "StripeApi.RetrieveTestClock", + "fullyQualifiedName": "StripeApi.RetrieveTestClock@1.0.0", + "description": "Retrieve details of a Stripe test clock.\n\nThis tool retrieves information about a specific test clock within Stripe's test environment. It should be used to gather details about test clocks for testing purposes.", + "parameters": [ + { + "name": "test_clock_id", + "type": "string", + "required": true, + "description": "The unique identifier of the test clock to retrieve from Stripe.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of strings specifying which fields in the response should be expanded for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTestHelpersTestClocksTestClock'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveTestClock", + "parameters": { + "test_clock_id": { + "value": "test_clock_123456789", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["suspend_time", "expiration_time"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTransactionEntry", + "qualifiedName": "StripeApi.RetrieveTransactionEntry", + "fullyQualifiedName": "StripeApi.RetrieveTransactionEntry@1.0.0", + "description": "Fetches details of a specific treasury transaction entry.\n\nUse this tool to retrieve detailed information about a specific transaction entry from Stripe's treasury system by providing the transaction entry ID.", + "parameters": [ + { + "name": "transaction_entry_id", + "type": "string", + "required": true, + "description": "The unique identifier of the treasury transaction entry to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of field names to include in the response for additional detail.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryTransactionEntriesId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveTransactionEntry", + "parameters": { + "transaction_entry_id": { + "value": "txn_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["amount", "currency", "status"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTreasuryTransactionDetails", + "qualifiedName": "StripeApi.RetrieveTreasuryTransactionDetails", + "fullyQualifiedName": "StripeApi.RetrieveTreasuryTransactionDetails@1.0.0", + "description": "Retrieve details of a specific treasury transaction.\n\nThis tool retrieves the details of an existing treasury transaction by its ID. Use it when you need to access specific information about a treasury transaction in Stripe.", + "parameters": [ + { + "name": "transaction_id", + "type": "string", + "required": true, + "description": "The ID of the treasury transaction you want to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the treasury transaction response to be expanded, specified as an array of strings.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetTreasuryTransactionsId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveTreasuryTransactionDetails", + "parameters": { + "transaction_id": { + "value": "txn_1234567890abcdef", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["amount", "currency", "description"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveValueListItem", + "qualifiedName": "StripeApi.RetrieveValueListItem", + "fullyQualifiedName": "StripeApi.RetrieveValueListItem@1.0.0", + "description": "Retrieve details of a specific ValueListItem in Stripe Radar.\n\nThis tool retrieves information about a specific ValueListItem object from Stripe's Radar service, which can be used to manage elements within its fraud prevention tools.", + "parameters": [ + { + "name": "value_list_item_id", + "type": "string", + "required": true, + "description": "The unique identifier of the ValueListItem to retrieve from Stripe's Radar service.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the ValueListItem response to expand for additional details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetRadarValueListItemsItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveValueListItem", + "parameters": { + "value_list_item_id": { + "value": "vl_item_123abc456def", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["metadata", "created"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveVerificationSessionDetails", + "qualifiedName": "StripeApi.RetrieveVerificationSessionDetails", + "fullyQualifiedName": "StripeApi.RetrieveVerificationSessionDetails@1.0.0", + "description": "Retrieve details of a Stripe verification session.\n\nUse this tool to get information about a specific Stripe VerificationSession. It's helpful when the session status is 'requires_input' to obtain a valid client_secret or URL for re-submission.", + "parameters": [ + { + "name": "verification_session_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Stripe VerificationSession to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to be expanded for additional details. Use this to customize the verbosity of the response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetIdentityVerificationSessionsSession'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveVerificationSessionDetails", + "parameters": { + "verification_session_id": { + "value": "vs_1IExampleSessionIdXYZ123456", + "type": "string", + "required": true + }, + "expand_response_fields": { + "value": ["verification_session", "customer"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveWebhookEndpoint", + "qualifiedName": "StripeApi.RetrieveWebhookEndpoint", + "fullyQualifiedName": "StripeApi.RetrieveWebhookEndpoint@1.0.0", + "description": "Retrieve details of a specified webhook endpoint by ID.\n\nThis tool retrieves information about a Stripe webhook endpoint using its ID. Use it when you need to get details such as status, URL, and events for a specific webhook endpoint.", + "parameters": [ + { + "name": "webhook_endpoint_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Stripe webhook endpoint you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields to expand in the response, specified as strings.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetWebhookEndpointsWebhookEndpoint'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.RetrieveWebhookEndpoint", + "parameters": { + "webhook_endpoint_id": { + "value": "we_123456789", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["status", "url", "enabled_events"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchStripeCustomers", + "qualifiedName": "StripeApi.SearchStripeCustomers", + "fullyQualifiedName": "StripeApi.SearchStripeCustomers@1.0.0", + "description": "Search and retrieve customer data from Stripe.\n\nUse this tool to search for customers that have been previously created in Stripe using their Search Query Language. Note that search may not reflect the most recent updates instantly and may experience delays during outages. This tool is not available for use in India.", + "parameters": [ + { + "name": "search_query_string", + "type": "string", + "required": true, + "description": "The search query string used to search for customers. Refer to Stripe's Search Query Language documentation for syntax and supported fields.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_response_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded. Provide the field names as strings.", + "enum": null, + "inferrable": true + }, + { + "name": "customer_result_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of customer records to return, between 1 and 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for paginating through results. Use 'next_page' from a previous response for subsequent results. Omit on the first call.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetCustomersSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.SearchStripeCustomers", + "parameters": { + "search_query_string": { + "value": "email:'example@example.com'", + "type": "string", + "required": true + }, + "expand_response_fields": { + "value": ["subscriptions", "payment_methods"], + "type": "array", + "required": false + }, + "customer_result_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "next_page", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchStripeInvoices", + "qualifiedName": "StripeApi.SearchStripeInvoices", + "fullyQualifiedName": "StripeApi.SearchStripeInvoices@1.0.0", + "description": "Search for previously created Stripe invoices.\n\nThis tool searches for invoices you've previously created using Stripe's Search Query Language. It should not be used in read-after-write flows needing strict consistency. Data is typically searchable within a minute but could take up to an hour during outages. Not available for merchants in India.", + "parameters": [ + { + "name": "search_query_string", + "type": "string", + "required": true, + "description": "The search query string using Stripe's Search Query Language. Refer to Stripe's documentation for syntax and supported fields.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response to be expanded for additional details. Provide field names as strings.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Defines the maximum number of invoice records to return, ranging from 1 to 100. Defaults to 10 if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor for pagination to retrieve subsequent pages. Use the next_page value from a previous response; exclude for the first call.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetInvoicesSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.SearchStripeInvoices", + "parameters": { + "search_query_string": { + "value": "created:>=2022-01-01 AND status:open", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["customer", "lines", "payment_intent"], + "type": "array", + "required": false + }, + "result_limit": { + "value": 25, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchStripePaymentIntents", + "qualifiedName": "StripeApi.SearchStripePaymentIntents", + "fullyQualifiedName": "StripeApi.SearchStripePaymentIntents@1.0.0", + "description": "Search previously created Stripe PaymentIntents.\n\nUse this tool to search for PaymentIntents that you have previously created on Stripe using their Search Query Language. Note that search results might be slightly delayed, so avoid using this tool in scenarios needing strict consistency immediately after data changes.", + "parameters": [ + { + "name": "search_query_string", + "type": "string", + "required": true, + "description": "The search query to find specific PaymentIntents using Stripe's Search Query Language. Refer to the documentation for query syntax and fields.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of specific fields in the response that should be expanded. Use field names as strings.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Number of PaymentIntent objects to return, ranging from 1 to 100, with a default of 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination. Use the 'next_page' value from a previous response to request more results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPaymentIntentsSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.SearchStripePaymentIntents", + "parameters": { + "search_query_string": { + "value": "status:'succeeded' AND amount:>=1000", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["charges.data.balance_transaction", "customer"], + "type": "array", + "required": false + }, + "result_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_example_value", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchStripePrices", + "qualifiedName": "StripeApi.SearchStripePrices", + "fullyQualifiedName": "StripeApi.SearchStripePrices@1.0.0", + "description": "Search for previously created Stripe prices.\n\nUse this tool to search for prices you have previously created on Stripe using the Stripe Search Query Language. Note that this function should not be used for read-after-write flows where strict consistency is necessary, as data may take some time to propagate.", + "parameters": [ + { + "name": "search_query_string", + "type": "string", + "required": true, + "description": "The search query string for prices using Stripe's Search Query Language. Refer to the documentation for syntax and supported fields.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of fields in the response that should be expanded.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of price objects to return. Must be between 1 and 100, with a default of 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for paginating through results. Omit on first call; use 'next_page' from a prior response for additional results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetPricesSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.SearchStripePrices", + "parameters": { + "search_query_string": { + "value": "unit_amount:500 AND currency:'usd'", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["product", "currency"], + "type": "array", + "required": false + }, + "result_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "12345abcde", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchStripeProducts", + "qualifiedName": "StripeApi.SearchStripeProducts", + "fullyQualifiedName": "StripeApi.SearchStripeProducts@1.0.0", + "description": "Search for previously created products on Stripe.\n\nUse this tool to search for products you have created on Stripe. It utilizes Stripe's Search Query Language for querying. Note that the search may not be suitable for transactions needing strict consistency, as data may be slightly outdated. Also, this service isn't available in India.", + "parameters": [ + { + "name": "search_query_string", + "type": "string", + "required": true, + "description": "The search query string to find products. Refer to Stripe's Search Query Language for syntax and available fields.", + "enum": null, + "inferrable": true + }, + { + "name": "response_fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of specific fields to expand in the response for detailed information. Use field names as strings.", + "enum": null, + "inferrable": true + }, + { + "name": "results_limit", + "type": "integer", + "required": false, + "description": "Specifies the maximum number of product results to return, ranging from 1 to 100. Defaults to 10 if not set.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "A cursor for paginating through the results. Use the 'next_page' value from the previous response for subsequent pages. Do not include this on the first call.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetProductsSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.SearchStripeProducts", + "parameters": { + "search_query_string": { + "value": "name:'Basic Plan'", + "type": "string", + "required": true + }, + "response_fields_to_expand": { + "value": ["description", "metadata"], + "type": "array", + "required": false + }, + "results_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchStripeSubscriptions", + "qualifiedName": "StripeApi.SearchStripeSubscriptions", + "fullyQualifiedName": "StripeApi.SearchStripeSubscriptions@1.0.0", + "description": "Search previously created Stripe subscriptions.\n\nUse this tool to search for subscriptions created with Stripe using their Search Query Language. This is ideal for retrieving subscription data, but not suitable for scenarios requiring strict consistency, such as immediately after creating or updating data. Note: This functionality isn't available for merchants in India.", + "parameters": [ + { + "name": "search_query_string", + "type": "string", + "required": true, + "description": "The search query string used to filter Stripe subscriptions. Refer to the Stripe Search Query Language documentation for syntax and query fields.", + "enum": null, + "inferrable": true + }, + { + "name": "expand_fields", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the Stripe subscription response to be expanded. This allows accessing additional data for each subscription object.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of subscription results to return, from 1 to 100. Default is 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for paginating through results. Omit on first call; use next_page value from a prior response for subsequent results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetSubscriptionsSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.SearchStripeSubscriptions", + "parameters": { + "search_query_string": { + "value": "customer:'cus_123456789'", + "type": "string", + "required": true + }, + "expand_fields": { + "value": ["latest_invoice", "customer"], + "type": "array", + "required": false + }, + "result_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": "cursor_abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "StripeSearchCharges", + "qualifiedName": "StripeApi.StripeSearchCharges", + "fullyQualifiedName": "StripeApi.StripeSearchCharges@1.0.0", + "description": "Search for previously created charges using Stripe.\n\nUse this tool to search for charges you've created with Stripe using their Search Query Language. It's not suitable for scenarios needing strict consistency. Data may take up to an hour to appear during outages, and the feature is unavailable in India.", + "parameters": [ + { + "name": "search_query_string", + "type": "string", + "required": true, + "description": "The search query string using Stripe's Search Query Language to filter charge results. Refer to Stripe's documentation for syntax and fields.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_expand", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of fields in the response that should be expanded for additional detail.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specify the number of charge objects to return. The limit can be between 1 and 100, with a default of 10.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor for pagination. Use the 'next_page' value from the previous response for subsequent requests. Omit on the first call.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["STRIPE_API_KEY"], + "secretsInfo": [ + { + "name": "STRIPE_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'GetChargesSearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "StripeApi.StripeSearchCharges", + "parameters": { + "search_query_string": { + "value": "created[gte: 2023-01-01T00:00:00Z] AND amount[gte: 1000]", + "type": "string", + "required": true + }, + "fields_to_expand": { + "value": ["payment_intent", "customer"], + "type": "array", + "required": false + }, + "result_limit": { + "value": 20, + "type": "integer", + "required": false + }, + "pagination_cursor": { + "value": null, + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:44:10.598Z", + "summary": "# Overview\nThe StripeApi toolkit enables LLMs to directly interact with the Stripe API, facilitating seamless operations related to payments, account management, and customer interactions.\n\n## Capabilities\n- Manage customer accounts, payment methods, and transactions.\n- Retrieve detailed financial data and reports.\n- Perform search operations for financial entities following Stripe's Search Query Language.\n- Delete accounts, invoices, and payment methods efficiently.\n\n## OAuth\nThis toolkit does not support OAuth as authentication.\n\n## Secrets\n- **Secret Type**: api_key \n - **Example**: STRIPE_API_KEY" +} diff --git a/data/toolkits/test2.json b/data/toolkits/test2.json new file mode 100644 index 000000000..818791d54 --- /dev/null +++ b/data/toolkits/test2.json @@ -0,0 +1,357 @@ +{ + "id": "Test2", + "label": "Test2", + "version": "0.1.0", + "description": "asdf", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/test2.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/test2", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "CreateEvent", + "qualifiedName": "Test2.CreateEvent", + "fullyQualifiedName": "Test2.CreateEvent@0.1.0", + "description": "Create a calendar event with attendees and location.\n\nNOTE: If you have not already called get_body_scheme('create_event') or are unsure\nabout the body structure, call it first to see the exact schema required.\n\nThe body should include title, startTime, attendees, and location\n(oneOf: physical/virtual/hybrid). Optionally include recurrence and reminders.", + "parameters": [ + { + "name": "body", + "type": "string", + "required": true, + "description": "JSON string containing event data. If unsure about structure, call get_body_scheme('create_event') first.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Test2.CreateEvent", + "parameters": { + "body": { + "value": "{\"title\": \"Team Meeting\", \"startTime\": \"2023-10-12T10:00:00Z\", \"attendees\": [\"alice@example.com\", \"bob@example.com\"], \"location\": \"virtual\", \"recurrence\": \"weekly\", \"reminders\": [{\"method\": \"email\", \"minutes\": 10}]}", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOrder", + "qualifiedName": "Test2.CreateOrder", + "fullyQualifiedName": "Test2.CreateOrder@0.1.0", + "description": "Create a new order with items and payment information.\n\nNOTE: If you have not already called get_body_scheme('create_order') or are unsure\nabout the body structure, call it first to see the exact schema required.\n\nThe body should include customerId, items with complex pricing (anyOf: fixed/discounted/tiered),\npayment method (oneOf: credit_card/paypal/bank_transfer), and shipping information.", + "parameters": [ + { + "name": "body", + "type": "string", + "required": true, + "description": "JSON string containing order data. If unsure about structure, call get_body_scheme('create_order') first.", + "enum": null, + "inferrable": true + }, + { + "name": "api_version", + "type": "string", + "required": true, + "description": "API version to use", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": true, + "description": "Unique key to prevent duplicate orders", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Test2.CreateOrder", + "parameters": { + "body": { + "value": "{\"customerId\":\"12345\",\"items\":[{\"productId\":\"56789\",\"quantity\":2,\"pricing\":{\"type\":\"fixed\",\"amount\":19.99}},{\"productId\":\"67890\",\"quantity\":1,\"pricing\":{\"type\":\"discounted\",\"amount\":29.99,\"discount\":5}}],\"paymentMethod\":\"credit_card\",\"shipping\":{\"address\":\"123 Main St\",\"city\":\"Anytown\",\"state\":\"CA\",\"zip\":\"90210\"}}", + "type": "string", + "required": true + }, + "api_version": { + "value": "1.0", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "order-unique-abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateUser", + "qualifiedName": "Test2.CreateUser", + "fullyQualifiedName": "Test2.CreateUser@0.1.0", + "description": "Create a new user with complex profile information.\n\nNOTE: If you have not already called get_body_scheme('create_user') or are unsure\nabout the body structure, call it first to see the exact schema required.\n\nThe body should include email, profile with contact method (oneOf: phone/email/social),\noptional address, and preferences.", + "parameters": [ + { + "name": "body", + "type": "string", + "required": true, + "description": "JSON string containing user data. If unsure about structure, call get_body_scheme('create_user') first.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_id", + "type": "string", + "required": true, + "description": "The tenant/organization identifier", + "enum": null, + "inferrable": true + }, + { + "name": "source", + "type": "string", + "required": false, + "description": "Source system or application creating the user", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Test2.CreateUser", + "parameters": { + "body": { + "value": "{\"email\": \"johndoe@example.com\", \"profile\": {\"contact_method\": \"email\", \"address\": {\"street\": \"123 Main St\", \"city\": \"Anytown\", \"state\": \"CA\", \"zip\": \"12345\"}, \"preferences\": {\"newsletter\": true, \"notifications\": false}}}", + "type": "string", + "required": true + }, + "tenant_id": { + "value": "tenant_12345", + "type": "string", + "required": true + }, + "source": { + "value": "web_app", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBodyScheme", + "qualifiedName": "Test2.GetBodyScheme", + "fullyQualifiedName": "Test2.GetBodyScheme@0.1.0", + "description": "Get the OpenAPI schema for a tool's request body.\n\nThis function returns the complete OpenAPI specification for the body parameter\nof the specified tool, with all references resolved. Use this to understand\nthe exact structure required before calling any of the API tools.\n\nAvailable tools:\n- create_user\n- create_order\n- create_event\n- update_document\n- submit_application", + "parameters": [ + { + "name": "tool_name", + "type": "string", + "required": true, + "description": "The name of the tool to get the body schema for", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Test2.GetBodyScheme", + "parameters": { + "tool_name": { + "value": "create_user", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SubmitApplication", + "qualifiedName": "Test2.SubmitApplication", + "fullyQualifiedName": "Test2.SubmitApplication@0.1.0", + "description": "Submit an application (job, visa, loan, or university).\n\nNOTE: If you have not already called get_body_scheme('submit_application') or are unsure\nabout the body structure, call it first to see the exact schema required.\n\nThe body should include applicationType, personalInfo with identification\n(oneOf: passport/drivers_license/ssn), documents array, and additionalInfo\n(anyOf based on application type).", + "parameters": [ + { + "name": "body", + "type": "string", + "required": true, + "description": "JSON string containing application data. If unsure about structure, call get_body_scheme('submit_application') first.", + "enum": null, + "inferrable": true + }, + { + "name": "priority", + "type": "string", + "required": true, + "description": "Processing priority level", + "enum": null, + "inferrable": true + }, + { + "name": "notification_email", + "type": "string", + "required": true, + "description": "Email for status notifications", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Test2.SubmitApplication", + "parameters": { + "body": { + "value": "{\"applicationType\":\"loan\",\"personalInfo\":{\"identification\":{\"type\":\"passport\",\"number\":\"123456789\"}},\"documents\":[\"income_statement.pdf\",\"bank_statement.pdf\"],\"additionalInfo\":{\"loanAmount\":10000,\"loanPurpose\":\"home_improvement\"}}", + "type": "string", + "required": true + }, + "priority": { + "value": "high", + "type": "string", + "required": true + }, + "notification_email": { + "value": "applicant@example.com", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDocument", + "qualifiedName": "Test2.UpdateDocument", + "fullyQualifiedName": "Test2.UpdateDocument@0.1.0", + "description": "Update a document with multiple operations.\n\nNOTE: If you have not already called get_body_scheme('update_document') or are unsure\nabout the body structure, call it first to see the exact schema required.\n\nThe body should include documentId and an array of operations\n(anyOf: insert/delete/replace/format). Each operation type has different required fields.", + "parameters": [ + { + "name": "body", + "type": "string", + "required": true, + "description": "JSON string containing document update operations. If unsure about structure, call get_body_scheme('update_document') first.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id", + "type": "string", + "required": true, + "description": "The workspace containing the document", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": true, + "description": "User performing the update", + "enum": null, + "inferrable": true + }, + { + "name": "track_changes", + "type": "boolean", + "required": false, + "description": "Whether to track changes", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "No description provided." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Test2.UpdateDocument", + "parameters": { + "body": { + "value": "{\"documentId\":\"12345\",\"operations\":[{\"insert\":{\"text\":\"Hello, World!\"}},{\"delete\":{\"text\":\"Old text\"}}]}", + "type": "string", + "required": true + }, + "workspace_id": { + "value": "ws-67890", + "type": "string", + "required": true + }, + "user_id": { + "value": "user-abc123", + "type": "string", + "required": true + }, + "track_changes": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:43:54.426Z", + "summary": "Test2 provides a streamlined toolkit for developers to create and manage events, orders, users, applications, and documents through a set of versatile API tools. This toolkit simplifies the integration process, allowing for efficient handling of complex data structures without requiring authentication.\n\n**Capabilities**\n- Create and manage calendar events with detailed attendee and location information.\n- Handle orders with dynamic pricing and various payment methods.\n- Create user profiles with comprehensive data and preferences.\n- Submit applications across multiple domains with required and optional documentation.\n- Update existing documents with flexible operations.\n\nNo authentication or secrets are required to utilize this toolkit, enabling straightforward implementation in various applications." +} diff --git a/data/toolkits/ticktickapi.json b/data/toolkits/ticktickapi.json new file mode 100644 index 000000000..98cb71160 --- /dev/null +++ b/data/toolkits/ticktickapi.json @@ -0,0 +1,657 @@ +{ + "id": "TicktickApi", + "label": "TickTick API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the ticktick API.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/ticktick.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/ticktick-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": ["tasks:read", "tasks:write"] + }, + "tools": [ + { + "name": "CreateProjectInTicktick", + "qualifiedName": "TicktickApi.CreateProjectInTicktick", + "fullyQualifiedName": "TicktickApi.CreateProjectInTicktick@1.0.0", + "description": "Create a new project in Ticktick with optional properties.\n\nUse this tool to create a new project in Ticktick. You can specify the project's name and other optional properties such as color, sort order, view mode, and kind (TASK or NOTE).", + "parameters": [ + { + "name": "project_name", + "type": "string", + "required": true, + "description": "Name of the project to be created. This is a required field.", + "enum": null, + "inferrable": true + }, + { + "name": "project_color", + "type": "string", + "required": false, + "description": "Hex color code representing the project's color (e.g., '#F18181').", + "enum": null, + "inferrable": true + }, + { + "name": "project_kind", + "type": "string", + "required": false, + "description": "Specifies the type of items the project will store. Choose 'TASK' for tasks or 'NOTE' for notes.", + "enum": null, + "inferrable": true + }, + { + "name": "project_sort_order", + "type": "integer", + "required": false, + "description": "The integer value representing the project's sort order.", + "enum": null, + "inferrable": true + }, + { + "name": "project_view_mode", + "type": "string", + "required": false, + "description": "The display mode for the project: choose from 'list', 'kanban', or 'timeline'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TicktickApi.CreateProjectInTicktick", + "parameters": { + "project_name": { + "value": "Weekly Goals", + "type": "string", + "required": true + }, + "project_color": { + "value": "#4A90E2", + "type": "string", + "required": false + }, + "project_kind": { + "value": "TASK", + "type": "string", + "required": false + }, + "project_sort_order": { + "value": 1, + "type": "integer", + "required": false + }, + "project_view_mode": { + "value": "kanban", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTaskTicktick", + "qualifiedName": "TicktickApi.CreateTaskTicktick", + "fullyQualifiedName": "TicktickApi.CreateTaskTicktick@1.0.0", + "description": "Create a new task in Ticktick with specified properties.\n\nUse this tool to create a new task in Ticktick by specifying title, content, dates, reminders, subtasks, and the project it belongs to.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TicktickApi.CreateTaskTicktick", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"title\": \"Complete Project Report\", \"content\": \"Draft the final report for the project and ensure all sections are covered.\", \"due_date\": \"2023-10-30T17:00:00Z\", \"reminders\": [{\"time\": \"2023-10-29T17:00:00Z\"}], \"subtasks\": [{\"title\": \"Research previous reports\"}, {\"title\": \"Gather data from team members\"}], \"project_id\": \"12345\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteSpecificTask", + "qualifiedName": "TicktickApi.DeleteSpecificTask", + "fullyQualifiedName": "TicktickApi.DeleteSpecificTask@1.0.0", + "description": "Permanently delete a task using project and task IDs.\n\nThis tool is used to permanently remove a specific task by providing its project ID and task ID from Ticktick. Use this when you need to delete a task and ensure it is no longer available in the project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project containing the task to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier_to_delete", + "type": "string", + "required": true, + "description": "The unique ID of the task to permanently delete from a project.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TicktickApi.DeleteSpecificTask", + "parameters": { + "project_id": { + "value": "proj_12345", + "type": "string", + "required": true + }, + "task_identifier_to_delete": { + "value": "task_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTicktickProject", + "qualifiedName": "TicktickApi.DeleteTicktickProject", + "fullyQualifiedName": "TicktickApi.DeleteTicktickProject@1.0.0", + "description": "Permanently delete a project in Ticktick by ID.\n\nUse this tool to permanently remove a specific project and all associated tasks from Ticktick by providing the project's ID. Ensure you no longer need the project, as this action cannot be undone.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the Ticktick project to permanently delete. Ensure the ID is correct, as this action cannot be undone.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TicktickApi.DeleteTicktickProject", + "parameters": { + "project_id": { + "value": "abcd1234", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTicktickProjectById", + "qualifiedName": "TicktickApi.GetTicktickProjectById", + "fullyQualifiedName": "TicktickApi.GetTicktickProjectById@1.0.0", + "description": "Retrieve Ticktick project details by project ID.\n\nThis tool retrieves detailed information about a specific project in Ticktick using its ID. It provides the project's name, color, view mode, and kind.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the Ticktick project to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TicktickApi.GetTicktickProjectById", + "parameters": { + "project_id": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetUserProjects", + "qualifiedName": "TicktickApi.GetUserProjects", + "fullyQualifiedName": "TicktickApi.GetUserProjects@1.0.0", + "description": "Retrieve all user-accessible projects from Ticktick.\n\nThis tool fetches a list of all projects that the authenticated user has access to in Ticktick. It should be called when a user wants to view or manage their projects within the platform.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserProjects'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TicktickApi.GetUserProjects", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MarkTaskComplete", + "qualifiedName": "TicktickApi.MarkTaskComplete", + "fullyQualifiedName": "TicktickApi.MarkTaskComplete@1.0.0", + "description": "Marks a specific task as completed in Ticktick.\n\nUse this tool to mark a task as completed in Ticktick, updating its status and setting the completion time.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Unique ID of the project containing the task to be completed.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the task to be marked as completed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'completeTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TicktickApi.MarkTaskComplete", + "parameters": { + "project_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "task456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveProjectWithTasks", + "qualifiedName": "TicktickApi.RetrieveProjectWithTasks", + "fullyQualifiedName": "TicktickApi.RetrieveProjectWithTasks@1.0.0", + "description": "Retrieve detailed project information and all related tasks.\n\nCall this tool to get a complete view of a project, including tasks and column configurations, especially useful for understanding project status and organization.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to retrieve with all data, including tasks and columns.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectWithData'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TicktickApi.RetrieveProjectWithTasks", + "parameters": { + "project_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTaskDetails", + "qualifiedName": "TicktickApi.RetrieveTaskDetails", + "fullyQualifiedName": "TicktickApi.RetrieveTaskDetails@1.0.0", + "description": "Retrieve detailed information for a specific task.\n\nUse this tool to get detailed information about a task by providing the project ID and task ID. It returns information including subtasks, reminders, and scheduling details.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The unique ID of the project containing the task to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the task to retrieve detailed information including subtasks and reminders.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tasks:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTaskById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TicktickApi.RetrieveTaskDetails", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateProjectProperties", + "qualifiedName": "TicktickApi.UpdateProjectProperties", + "fullyQualifiedName": "TicktickApi.UpdateProjectProperties@1.0.0", + "description": "Update properties of an existing project.\n\nThis tool updates various properties of an existing project, such as name, color, sort order, view mode, and kind. It should be used when changes to these attributes are needed for a project on Ticktick.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "Unique ID of the project to update.", + "enum": null, + "inferrable": true + }, + { + "name": "project_color", + "type": "string", + "required": false, + "description": "Hex color code representing the color of the project, such as '#FFFFFF'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_kind", + "type": "string", + "required": false, + "description": "Specify the type of project: TASK or NOTE.", + "enum": null, + "inferrable": true + }, + { + "name": "project_name", + "type": "string", + "required": false, + "description": "The new name for the project to be updated. This should be a string representing the desired project name.", + "enum": null, + "inferrable": true + }, + { + "name": "project_sort_order", + "type": "integer", + "required": false, + "description": "Sort order value for the project, default is 0. Determines the project's position relative to others.", + "enum": null, + "inferrable": true + }, + { + "name": "project_view_mode", + "type": "string", + "required": false, + "description": "Specifies the view mode of the project. Options are 'list', 'kanban', or 'timeline'.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TicktickApi.UpdateProjectProperties", + "parameters": { + "project_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "project_color": { + "value": "#FF5733", + "type": "string", + "required": false + }, + "project_kind": { + "value": "TASK", + "type": "string", + "required": false + }, + "project_name": { + "value": "Updated Project Name", + "type": "string", + "required": false + }, + "project_sort_order": { + "value": 1, + "type": "integer", + "required": false + }, + "project_view_mode": { + "value": "kanban", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "UpdateTaskProperties", + "qualifiedName": "TicktickApi.UpdateTaskProperties", + "fullyQualifiedName": "TicktickApi.UpdateTaskProperties@1.0.0", + "description": "Update a task's properties in Ticktick.\n\n Use this tool to update various properties of a task in Ticktick. It requires the task ID and project ID, while other fields are optional. Ideal for modifying task details such as status, title, or due date.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the task to update in Ticktick. This is required to identify the specific task to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tasks:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TicktickApi.UpdateTaskProperties", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"title\":\"Updated Task Title\",\"status\":\"completed\",\"due\":\"2023-10-10T12:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The TicktickApi MCP Server uses the Auth Provider with id `arcade-ticktick` to connect to users' TickTick accounts. In order to use the MCP Server, you will need to configure the `arcade-ticktick` auth provider.\nLearn how to configure the TickTick auth provider in the [TickTick auth provider documentation](/references/auth-providers/ticktick).", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:44:07.537Z" +} diff --git a/data/toolkits/trelloapi.json b/data/toolkits/trelloapi.json new file mode 100644 index 000000000..574ae6042 --- /dev/null +++ b/data/toolkits/trelloapi.json @@ -0,0 +1,17904 @@ +{ + "id": "TrelloApi", + "label": "Trello API", + "version": "3.0.0", + "description": "Tools that enable LLMs to interact directly with the trello API.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/trello.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/trello-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "AddAttachmentToTrelloCard", + "qualifiedName": "TrelloApi.AddAttachmentToTrelloCard", + "fullyQualifiedName": "TrelloApi.AddAttachmentToTrelloCard@3.0.0", + "description": "Attach a file or link to a Trello card.\n\nUse this tool to add an attachment, such as a file or link, to a specific Trello card by providing the card's ID.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card to which the attachment will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": false, + "description": "The MIME type of the attachment file. Should be a valid MIME type string (max 256 characters).", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_name", + "type": "string", + "required": false, + "description": "The name of the attachment. Maximum length is 256 characters.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_url", + "type": "string", + "required": false, + "description": "A URL to attach to the Trello card. Must start with 'http://' or 'https://'.", + "enum": null, + "inferrable": true + }, + { + "name": "file_attachment", + "type": "string", + "required": false, + "description": "The file data to upload and attach to the Trello card as multipart/form-data.", + "enum": null, + "inferrable": true + }, + { + "name": "use_as_card_cover", + "type": "boolean", + "required": false, + "description": "Set to true to use the new attachment as the card cover.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-cards-id-attachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.AddAttachmentToTrelloCard", + "parameters": { + "card_id": { + "value": "5f9d2a6b151414001f3c1d41", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "image/png", + "type": "string", + "required": false + }, + "attachment_name": { + "value": "example_image.png", + "type": "string", + "required": false + }, + "attachment_url": { + "value": "https://example.com/image.png", + "type": "string", + "required": false + }, + "file_attachment": { + "value": "base64_encoded_file_data_here", + "type": "string", + "required": false + }, + "use_as_card_cover": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddCommentToTrelloCard", + "qualifiedName": "TrelloApi.AddCommentToTrelloCard", + "fullyQualifiedName": "TrelloApi.AddCommentToTrelloCard@3.0.0", + "description": "Add a comment to a specific Trello card.\n\nUse this tool to post a new comment on a Trello card given its ID. It is useful for users needing to add updates or notes directly on a Trello card.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card where the comment will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_text", + "type": "string", + "required": true, + "description": "The content of the comment to be added to the Trello card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-cards-id-actions-comments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.AddCommentToTrelloCard", + "parameters": { + "card_id": { + "value": "1234567890abcdefg", + "type": "string", + "required": true + }, + "comment_text": { + "value": "This is a comment added to the Trello card.", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddDropdownOptionCustomField", + "qualifiedName": "TrelloApi.AddDropdownOptionCustomField", + "fullyQualifiedName": "TrelloApi.AddDropdownOptionCustomField@3.0.0", + "description": "Add an option to a dropdown Custom Field in Trello.\n\nUse this tool to add a new option to a dropdown Custom Field on a Trello board. This should be called when needing to expand the choices available in a specific dropdown Custom Field.", + "parameters": [ + { + "name": "custom_field_id", + "type": "string", + "required": true, + "description": "The unique identifier of the custom field to which a dropdown option will be added.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-customfields-id-options'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.AddDropdownOptionCustomField", + "parameters": { + "custom_field_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddLabelToTrelloCard", + "qualifiedName": "TrelloApi.AddLabelToTrelloCard", + "fullyQualifiedName": "TrelloApi.AddLabelToTrelloCard@3.0.0", + "description": "Add a label to a Trello card.\n\nUse this tool to assign a label to a specific card in Trello by specifying the card ID.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific Trello card.", + "enum": null, + "inferrable": true + }, + { + "name": "label_id", + "type": "string", + "required": false, + "description": "The ID of the label to add to the Trello card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-cards-id-idlabels'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.AddLabelToTrelloCard", + "parameters": { + "card_id": { + "value": "60c72b2f9b1d4e001f1e3a6e", + "type": "string", + "required": true + }, + "label_id": { + "value": "60c72b2f9b1d4e001f1e3a77", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddMemberToBoard", + "qualifiedName": "TrelloApi.AddMemberToBoard", + "fullyQualifiedName": "TrelloApi.AddMemberToBoard@3.0.0", + "description": "Add a member to a Trello board.\n\nUse this tool to add a member to a specific Trello board by providing the board ID and the member ID.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The ID of the board to update. Required to specify which Trello board the member will be added to.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_to_add", + "type": "string", + "required": true, + "description": "The ID of the member to add to the Trello board.", + "enum": null, + "inferrable": true + }, + { + "name": "member_role_type", + "type": "string", + "required": true, + "description": "Specifies the role of the member on the board. Choose from 'admin', 'normal', or 'observer'.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_billable_guest", + "type": "boolean", + "required": false, + "description": "Set to true to allow organization admins to add multi-board guests to the board.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-boards-id-members-idmember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.AddMemberToBoard", + "parameters": { + "board_id": { + "value": "5f3b1a7c3f9c194c559d3e87", + "type": "string", + "required": true + }, + "member_id_to_add": { + "value": "60b7c1c5d5570e001fe089d2", + "type": "string", + "required": true + }, + "member_role_type": { + "value": "normal", + "type": "string", + "required": true + }, + "allow_billable_guest": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddMemberToTrelloCard", + "qualifiedName": "TrelloApi.AddMemberToTrelloCard", + "fullyQualifiedName": "TrelloApi.AddMemberToTrelloCard@3.0.0", + "description": "Add a member to a specified Trello card.\n\nUse this tool to assign a specific member to a Trello card by providing the card ID and member information.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello card to which a member will be added. It is required to specify which card the member should be added to.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_to_add", + "type": "string", + "required": false, + "description": "The ID of the member to add to the specified Trello card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-cards-id-idmembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.AddMemberToTrelloCard", + "parameters": { + "card_id": { + "value": "1234567890abcdef12345678", + "type": "string", + "required": true + }, + "member_id_to_add": { + "value": "member12345", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddOrUpdateWorkspaceMember", + "qualifiedName": "TrelloApi.AddOrUpdateWorkspaceMember", + "fullyQualifiedName": "TrelloApi.AddOrUpdateWorkspaceMember@3.0.0", + "description": "Add or update a member in a Trello Workspace.\n\nThis tool is used to add a new member to a Trello Workspace or update the type of an existing member. It should be called when you need to manage workspace memberships and roles.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the member to add or update in the Trello Workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "member_role_type", + "type": "string", + "required": true, + "description": "Specify the role of the member in the workspace. Acceptable values are 'admin' or 'normal'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Trello organization to which the member will be added or updated.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-organizations-id-members-idmember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.AddOrUpdateWorkspaceMember", + "parameters": { + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + }, + "member_role_type": { + "value": "normal", + "type": "string", + "required": true + }, + "organization_id_or_name": { + "value": "MyTrelloOrg", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddReactionToTrelloAction", + "qualifiedName": "TrelloApi.AddReactionToTrelloAction", + "fullyQualifiedName": "TrelloApi.AddReactionToTrelloAction@3.0.0", + "description": "Add a reaction to a Trello action.\n\nUse this tool to add a new reaction to a specific action within Trello. It should be called when you want to express feedback or sentiment on an action item on Trello.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The ID of the Trello action to which you want to add a reaction.", + "enum": null, + "inferrable": true + }, + { + "name": "emoji_short_name", + "type": "string", + "required": false, + "description": "The short name of the emoji to add as a reaction, like 'thumbsup' or 'smile'.", + "enum": null, + "inferrable": true + }, + { + "name": "emoji_skin_variation", + "type": "string", + "required": false, + "description": "Specifies the `skinVariation` for the emoji being added as a reaction, like default or medium-light.", + "enum": null, + "inferrable": true + }, + { + "name": "emoji_unified_value", + "type": "string", + "required": false, + "description": "The `unified` value of the emoji to add to the Trello action. This is a code representing the emoji and is used to specify the exact emoji to add.", + "enum": null, + "inferrable": true + }, + { + "name": "native_emoji_unicode", + "type": "string", + "required": false, + "description": "The native unicode emoji to add as a reaction. It should be a valid emoji character.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-actions-idaction-reactions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.AddReactionToTrelloAction", + "parameters": { + "action_id": { + "value": "5f6d8c4b9b1e3f5b6c8e8c5d", + "type": "string", + "required": true + }, + "emoji_short_name": { + "value": "thumbsup", + "type": "string", + "required": false + }, + "emoji_skin_variation": { + "value": "medium-light", + "type": "string", + "required": false + }, + "emoji_unified_value": { + "value": "1f44d", + "type": "string", + "required": false + }, + "native_emoji_unicode": { + "value": "👍", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddStickerToTrelloCard", + "qualifiedName": "TrelloApi.AddStickerToTrelloCard", + "fullyQualifiedName": "TrelloApi.AddStickerToTrelloCard@3.0.0", + "description": "Add a sticker to a specific Trello card.\n\nUse this tool to attach a sticker to a Trello card by specifying the card's ID. Ideal for organizing and visually enhancing your Trello boards.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card to which the sticker will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_identifier", + "type": "string", + "required": true, + "description": "Specify the sticker ID for custom stickers or use default string identifiers like 'taco-cool' for default stickers.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_left_position", + "type": "number", + "required": true, + "description": "The left position of the sticker. Acceptable values range from -60 to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_top_position", + "type": "number", + "required": true, + "description": "Specify the vertical position of the sticker on the card, ranging from -60 to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_z_index", + "type": "integer", + "required": true, + "description": "Specify the z-index of the sticker to determine overlay order. Use integers to set layer depth.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_rotation", + "type": "number", + "required": false, + "description": "The rotation angle of the sticker in degrees, allowing for visual adjustment.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "unknown" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-cards-id-stickers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.AddStickerToTrelloCard", + "parameters": { + "card_id": { + "value": "5f1a9d6aa6f1b5cefecf3d35", + "type": "string", + "required": true + }, + "sticker_identifier": { + "value": "taco-cool", + "type": "string", + "required": true + }, + "sticker_left_position": { + "value": 20, + "type": "integer", + "required": true + }, + "sticker_top_position": { + "value": 15, + "type": "integer", + "required": true + }, + "sticker_z_index": { + "value": 2, + "type": "integer", + "required": true + }, + "sticker_rotation": { + "value": 45, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddTrelloWebhook", + "qualifiedName": "TrelloApi.AddTrelloWebhook", + "fullyQualifiedName": "TrelloApi.AddTrelloWebhook@3.0.0", + "description": "Create a new webhook on Trello.\n\nUse this tool to create a new webhook on Trello, enabling you to receive updates about changes to boards, cards, lists, or other Trello elements.", + "parameters": [ + { + "name": "callback_url", + "type": "string", + "required": true, + "description": "A valid URL that supports `HEAD` and `POST` requests for webhook notifications.", + "enum": null, + "inferrable": true + }, + { + "name": "model_id_to_monitor", + "type": "string", + "required": true, + "description": "ID of the Trello model (board, card, etc.) to monitor for changes.", + "enum": null, + "inferrable": true + }, + { + "name": "is_webhook_active", + "type": "boolean", + "required": false, + "description": "A boolean to specify whether the webhook is active and sending POST requests.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_description", + "type": "string", + "required": false, + "description": "A description of the webhook, up to 16384 characters long.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-webhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.AddTrelloWebhook", + "parameters": { + "callback_url": { + "value": "https://example.com/webhook", + "type": "string", + "required": true + }, + "model_id_to_monitor": { + "value": "5f3e1a6e83fda226e097f6b4", + "type": "string", + "required": true + }, + "is_webhook_active": { + "value": true, + "type": "boolean", + "required": false + }, + "webhook_description": { + "value": "Webhook for monitoring changes to the project board.", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ArchiveAllCardsInList", + "qualifiedName": "TrelloApi.ArchiveAllCardsInList", + "fullyQualifiedName": "TrelloApi.ArchiveAllCardsInList@3.0.0", + "description": "Archives all cards in a specified Trello list.\n\nUse this tool to archive all cards within a specific Trello list. This action is useful for organizing and managing tasks by clearing out completed or irrelevant cards.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello list to archive all cards from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-lists-id-archiveallcards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ArchiveAllCardsInList", + "parameters": { + "list_id": { + "value": "5f3b8b8c7d1c4e2f8d8e4d7a", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ArchiveOrUnarchiveTrelloList", + "qualifiedName": "TrelloApi.ArchiveOrUnarchiveTrelloList", + "fullyQualifiedName": "TrelloApi.ArchiveOrUnarchiveTrelloList@3.0.0", + "description": "Archive or unarchive a Trello list.\n\nUse this tool to archive or unarchive a specific list in Trello by providing the list ID. It helps manage list visibility and workflow on Trello boards.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello list to archive or unarchive.", + "enum": null, + "inferrable": true + }, + { + "name": "archive_list", + "type": "string", + "required": false, + "description": "Set to true to archive the list or false to unarchive.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-lists-id-closed'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ArchiveOrUnarchiveTrelloList", + "parameters": { + "list_id": { + "value": "5f4e28fda948d4d2f4e3e121", + "type": "string", + "required": true + }, + "archive_list": { + "value": "true", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckBoardBillableGuests", + "qualifiedName": "TrelloApi.CheckBoardBillableGuests", + "fullyQualifiedName": "TrelloApi.CheckBoardBillableGuests@3.0.0", + "description": "Check if a board has new billable guests.\n\nThis tool is used to determine if a specific Trello board has new billable guests. Use it when you need to audit or manage guest access on a board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The ID of the Trello board to check for new billable guests.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Trello organization to check for new billable guests on the board.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-organizations-id-newbillableguests-idboard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CheckBoardBillableGuests", + "parameters": { + "board_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + }, + "organization_id_or_name": { + "value": "MyOrganization", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckOrganizationTransferability", + "qualifiedName": "TrelloApi.CheckOrganizationTransferability", + "fullyQualifiedName": "TrelloApi.CheckOrganizationTransferability@3.0.0", + "description": "Check if an organization can be transferred to an enterprise.\n\nThis tool checks whether a specified organization can be transferred to an enterprise, providing the transferability status.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "ID of the Enterprise to check for organization transferability.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "The ID of the organization to check for transferability.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-enterprises-id-transferrable-organization-idOrganization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CheckOrganizationTransferability", + "parameters": { + "enterprise_id": { + "value": "ent_123456", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_789012", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateBoardTag", + "qualifiedName": "TrelloApi.CreateBoardTag", + "fullyQualifiedName": "TrelloApi.CreateBoardTag@3.0.0", + "description": "Create a new tag for a Trello board.\n\nCall this tool to create a new tag for an existing Trello board. It should be used when you want to organize or categorize elements within a board with new tags.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The ID of the Trello board where the tag will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_tag_id", + "type": "string", + "required": true, + "description": "The ID of the tag from the organization to associate with the board.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-boards-id-idtags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateBoardTag", + "parameters": { + "board_id": { + "value": "5f4e7c6f8c9e8f6e8d8f8e8f", + "type": "string", + "required": true + }, + "organization_tag_id": { + "value": "4e9f849e9c16f62d7e7f6e2a", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCheckitemInChecklist", + "qualifiedName": "TrelloApi.CreateCheckitemInChecklist", + "fullyQualifiedName": "TrelloApi.CreateCheckitemInChecklist@3.0.0", + "description": "Create a new checkitem in a Trello checklist.\n\nUse this tool to add a new checkitem to an existing checklist in Trello. This is useful for managing tasks and ensuring that all necessary steps are documented within a checklist.", + "parameters": [ + { + "name": "checkitem_name", + "type": "string", + "required": true, + "description": "The name of the new check item on the checklist. Must be between 1 and 16384 characters long.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "The unique ID of the checklist where the checkitem will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "checkitem_due_date", + "type": "string", + "required": false, + "description": "Specify the due date for the checkitem in ISO 8601 format (e.g., YYYY-MM-DD).", + "enum": null, + "inferrable": true + }, + { + "name": "checkitem_position", + "type": "string", + "required": false, + "description": "Position of the check item in checklist: `top`, `bottom`, or a positive number.", + "enum": null, + "inferrable": true + }, + { + "name": "due_reminder_minutes", + "type": "number", + "required": false, + "description": "Minutes before the due date to trigger a reminder for the checkitem.", + "enum": null, + "inferrable": true + }, + { + "name": "is_checkitem_checked", + "type": "boolean", + "required": false, + "description": "Set to true if the check item should be checked upon creation. Otherwise, it will be unchecked.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id", + "type": "string", + "required": false, + "description": "ID of the member to associate with the checkitem.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-checklists-id-checkitems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateCheckitemInChecklist", + "parameters": { + "checkitem_name": { + "value": "Review project proposal", + "type": "string", + "required": true + }, + "checklist_id": { + "value": "5f3e7c9303fd6762f151b4f1", + "type": "string", + "required": true + }, + "checkitem_due_date": { + "value": "2023-10-15", + "type": "string", + "required": false + }, + "checkitem_position": { + "value": "bottom", + "type": "string", + "required": false + }, + "due_reminder_minutes": { + "value": 30, + "type": "integer", + "required": false + }, + "is_checkitem_checked": { + "value": false, + "type": "boolean", + "required": false + }, + "member_id": { + "value": "1234567890abcdef", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateChecklistOnCard", + "qualifiedName": "TrelloApi.CreateChecklistOnCard", + "fullyQualifiedName": "TrelloApi.CreateChecklistOnCard@3.0.0", + "description": "Create a new checklist on a Trello card.\n\nUse this tool to add a checklist to a specific Trello card by providing the card ID. It allows for organizing tasks within a card using checklists.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card to which the checklist will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_name", + "type": "string", + "required": false, + "description": "The name of the checklist to be created on a Trello card.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_position", + "type": "string", + "required": false, + "description": "Specify the position of the checklist on the card. Accepts `top`, `bottom`, or a positive number indicating the exact position.", + "enum": null, + "inferrable": true + }, + { + "name": "source_checklist_id", + "type": "string", + "required": false, + "description": "The ID of a source checklist to copy into the new checklist. This is used to duplicate the tasks from another checklist.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-cards-id-checklists'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateChecklistOnCard", + "parameters": { + "card_id": { + "value": "5f0b78d7e35f8b55e1d1c322", + "type": "string", + "required": true + }, + "checklist_name": { + "value": "Task Checklist", + "type": "string", + "required": false + }, + "checklist_position": { + "value": "top", + "type": "string", + "required": false + }, + "source_checklist_id": { + "value": "5f0b78d7e35f8b55e1d1c323", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCustomEmojiTrello", + "qualifiedName": "TrelloApi.CreateCustomEmojiTrello", + "fullyQualifiedName": "TrelloApi.CreateCustomEmojiTrello@3.0.0", + "description": "Create a new custom emoji in Trello.\n\nUse this tool to create a custom emoji for a specific Trello member. Call this when you need to add a unique emoji to a member's collection.", + "parameters": [ + { + "name": "emoji_image_file", + "type": "string", + "required": true, + "description": "Path or URL to the image file for the emoji. The image must be in a supported format.", + "enum": null, + "inferrable": true + }, + { + "name": "emoji_name", + "type": "string", + "required": true, + "description": "Provide a name for the emoji, between 2 and 64 characters.", + "enum": null, + "inferrable": true + }, + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to whom the emoji will be added.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-members-id-customemoji'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateCustomEmojiTrello", + "parameters": { + "emoji_image_file": { + "value": "https://example.com/path/to/emoji.png", + "type": "string", + "required": true + }, + "emoji_name": { + "value": "CoolEmoji", + "type": "string", + "required": true + }, + "member_identifier": { + "value": "john_doe", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEnterpriseAuthToken", + "qualifiedName": "TrelloApi.CreateEnterpriseAuthToken", + "fullyQualifiedName": "TrelloApi.CreateEnterpriseAuthToken@3.0.0", + "description": "Create an auth token for a Trello enterprise.\n\nThis tool generates an authentication token for a specified enterprise in Trello. Use it when managing enterprise-level access or automating processes that require specific enterprise authentication.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "The unique ID of the enterprise for which the auth token will be generated.", + "enum": null, + "inferrable": true + }, + { + "name": "token_expiration", + "type": "string", + "required": false, + "description": "Specify the token's duration: `1hour`, `1day`, `30days`, or `never`. This determines how long the token will be valid.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-enterprises-id-tokens'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateEnterpriseAuthToken", + "parameters": { + "enterprise_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "token_expiration": { + "value": "30days", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateLabelOnBoard", + "qualifiedName": "TrelloApi.CreateLabelOnBoard", + "fullyQualifiedName": "TrelloApi.CreateLabelOnBoard@3.0.0", + "description": "Create a new label on a Trello board.\n\nUse this tool to add a new label to a specific Trello board. This can help organize tasks by categorizing them with labels.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board where the new label will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "label_color", + "type": "string", + "required": true, + "description": "Sets the color of the new label. Accepted values include specific colors or `null` for no color.", + "enum": null, + "inferrable": true + }, + { + "name": "label_name", + "type": "string", + "required": true, + "description": "The name of the label to be created. It must be between 1 and 16,384 characters long.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-boards-id-labels'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateLabelOnBoard", + "parameters": { + "board_id": { + "value": "5a3f2b4eaad2e4d57c86e9d8", + "type": "string", + "required": true + }, + "label_color": { + "value": "green", + "type": "string", + "required": true + }, + "label_name": { + "value": "In Progress", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateMemberAvatar", + "qualifiedName": "TrelloApi.CreateMemberAvatar", + "fullyQualifiedName": "TrelloApi.CreateMemberAvatar@3.0.0", + "description": "Create a new avatar for a Trello member.\n\nThis tool creates a new avatar for a specific Trello member using their ID. It should be called when you need to update or set a member's avatar in Trello.", + "parameters": [ + { + "name": "avatar_image_file", + "type": "string", + "required": true, + "description": "A string representing the image file data for the member's new avatar. It should be a file path or base64-encoded image.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member for whom you want to create an avatar. This identifies the member uniquely.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'membersidavatar'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateMemberAvatar", + "parameters": { + "avatar_image_file": { + "value": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john.doe@example", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewLabelOnBoard", + "qualifiedName": "TrelloApi.CreateNewLabelOnBoard", + "fullyQualifiedName": "TrelloApi.CreateNewLabelOnBoard@3.0.0", + "description": "Create a new label on a Trello board.\n\nUse this tool to add a new label to a specified Trello board. This is useful for organizing and categorizing tasks within a board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The ID of the Trello board on which to create the new label. This is required to specify the target board.", + "enum": null, + "inferrable": true + }, + { + "name": "label_color", + "type": "string", + "required": true, + "description": "Specify the color for the label. Choose from yellow, purple, blue, red, green, orange, black, sky, pink, or lime.", + "enum": null, + "inferrable": true + }, + { + "name": "label_name", + "type": "string", + "required": true, + "description": "The name assigned to the new label being created on the Trello board.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-labels'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateNewLabelOnBoard", + "parameters": { + "board_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "label_color": { + "value": "blue", + "type": "string", + "required": true + }, + "label_name": { + "value": "In Progress", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateOrganizationTag", + "qualifiedName": "TrelloApi.CreateOrganizationTag", + "fullyQualifiedName": "TrelloApi.CreateOrganizationTag@3.0.0", + "description": "Create a new tag within a specific Trello organization.\n\nUse this tool to add a tag to a Trello organization by providing the organization ID. It facilitates organizing and categorizing items within the organization.", + "parameters": [ + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Trello organization where the tag will be created.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-organizations-id-tags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateOrganizationTag", + "parameters": { + "organization_id_or_name": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSavedSearch", + "qualifiedName": "TrelloApi.CreateSavedSearch", + "fullyQualifiedName": "TrelloApi.CreateSavedSearch@3.0.0", + "description": "Create a saved search for a Trello member.\n\nUse this tool to create a saved search for a specific Trello member, helping them quickly access important search results in the future.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member for whom the saved search is created.", + "enum": null, + "inferrable": true + }, + { + "name": "saved_search_name", + "type": "string", + "required": true, + "description": "The title for the saved search to be created for a Trello member.", + "enum": null, + "inferrable": true + }, + { + "name": "saved_search_position", + "type": "string", + "required": true, + "description": "Specify the position of the saved search. Can be 'top', 'bottom', or a positive float for custom placement.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": true, + "description": "The search query to be saved for the Trello member.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-members-id-savedsearches'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateSavedSearch", + "parameters": { + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + }, + "saved_search_name": { + "value": "Important Tasks", + "type": "string", + "required": true + }, + "saved_search_position": { + "value": "top", + "type": "string", + "required": true + }, + "search_query": { + "value": "label:urgent is:open", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTrelloBoard", + "qualifiedName": "TrelloApi.CreateTrelloBoard", + "fullyQualifiedName": "TrelloApi.CreateTrelloBoard@3.0.0", + "description": "Create a new board on Trello.\n\nUse this tool to create a new board on Trello when you need to organize tasks or projects. It will return the details of the newly created board, allowing further actions or adjustments.", + "parameters": [ + { + "name": "board_name", + "type": "string", + "required": true, + "description": "The new name for the Trello board. Must be between 1 to 16384 characters.", + "enum": null, + "inferrable": true + }, + { + "name": "add_default_lists", + "type": "boolean", + "required": false, + "description": "Add the default lists (To Do, Doing, Done) to a new board. Ignored if `idBoardSource` is provided.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_self_join", + "type": "boolean", + "required": false, + "description": "Set to `true` to allow users to join the board themselves. Set to `false` if they need an invitation.", + "enum": null, + "inferrable": true + }, + { + "name": "board_background_color", + "type": "string", + "required": false, + "description": "Specify the custom background ID or choose from predefined colors: blue, orange, green, red, purple, pink, lime, sky, grey.", + "enum": null, + "inferrable": true + }, + { + "name": "board_description", + "type": "string", + "required": false, + "description": "A description for the new board, ranging from 0 to 16384 characters in length.", + "enum": null, + "inferrable": true + }, + { + "name": "board_permission_level", + "type": "string", + "required": false, + "description": "Set the permission level of the board. Options are: `org`, `private`, `public`.", + "enum": null, + "inferrable": true + }, + { + "name": "card_aging_type", + "type": "string", + "required": false, + "description": "Type of card aging on the board: `pirate` or `regular`. Determines visual changes over time when enabled.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_permission", + "type": "string", + "required": false, + "description": "Specify who can comment on cards: `disabled`, `members`, `observers`, `org`, `public`.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_card_covers", + "type": "boolean", + "required": false, + "description": "Boolean to determine whether card covers are enabled on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "enabled_power_ups", + "type": "string", + "required": false, + "description": "Specify the Power-Ups to enable on the board. Options: all, calendar, cardAging, recap, voting.", + "enum": null, + "inferrable": true + }, + { + "name": "include_original_cards", + "type": "string", + "required": false, + "description": "Specify 'cards' to keep cards from the original board when copying; otherwise, omit for none.", + "enum": null, + "inferrable": true + }, + { + "name": "invitation_permissions", + "type": "string", + "required": false, + "description": "Specifies who can invite users to join the board. Choose either `admins` or `members`.", + "enum": null, + "inferrable": true + }, + { + "name": "source_board_id", + "type": "string", + "required": false, + "description": "The ID of the board to copy for creating a new board.", + "enum": null, + "inferrable": true + }, + { + "name": "use_default_labels", + "type": "boolean", + "required": false, + "description": "Set to true to use the default set of labels on the new board; false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "voting_permissions", + "type": "string", + "required": false, + "description": "Specifies who can vote on the board: `disabled`, `members`, `observers`, `org`, or `public`.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the Trello Workspace where the board will be created.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-boards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateTrelloBoard", + "parameters": { + "board_name": { + "value": "Project Management Board", + "type": "string", + "required": true + }, + "add_default_lists": { + "value": true, + "type": "boolean", + "required": false + }, + "allow_self_join": { + "value": false, + "type": "boolean", + "required": false + }, + "board_background_color": { + "value": "blue", + "type": "string", + "required": false + }, + "board_description": { + "value": "A board to manage project tasks and deadlines.", + "type": "string", + "required": false + }, + "board_permission_level": { + "value": "private", + "type": "string", + "required": false + }, + "card_aging_type": { + "value": "regular", + "type": "string", + "required": false + }, + "comment_permission": { + "value": "members", + "type": "string", + "required": false + }, + "enable_card_covers": { + "value": true, + "type": "boolean", + "required": false + }, + "enabled_power_ups": { + "value": "calendar", + "type": "string", + "required": false + }, + "include_original_cards": { + "value": "cards", + "type": "string", + "required": false + }, + "invitation_permissions": { + "value": "admins", + "type": "string", + "required": false + }, + "source_board_id": { + "value": "12345", + "type": "string", + "required": false + }, + "use_default_labels": { + "value": true, + "type": "boolean", + "required": false + }, + "voting_permissions": { + "value": "members", + "type": "string", + "required": false + }, + "workspace_id_or_name": { + "value": "Team Workspace", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTrelloBoardList", + "qualifiedName": "TrelloApi.CreateTrelloBoardList", + "fullyQualifiedName": "TrelloApi.CreateTrelloBoardList@3.0.0", + "description": "Create a new list on a Trello board.\n\nThis tool creates a new list on a specified Trello board. Use it when you need to organize tasks by adding a new list to an existing board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board where the list will be created. Required for specifying which board to add the list to.", + "enum": null, + "inferrable": true + }, + { + "name": "list_name", + "type": "string", + "required": true, + "description": "The name of the list to be created. It should be between 1 to 16384 characters in length.", + "enum": null, + "inferrable": true + }, + { + "name": "list_position", + "type": "string", + "required": false, + "description": "Specifies where the list should be positioned. Use 'top', 'bottom', or a positive number for custom placement.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-boards-id-lists'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateTrelloBoardList", + "parameters": { + "board_id": { + "value": "5d6cbc9f3346a2f440e98f7e", + "type": "string", + "required": true + }, + "list_name": { + "value": "In Progress", + "type": "string", + "required": true + }, + "list_position": { + "value": "bottom", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTrelloCardLabel", + "qualifiedName": "TrelloApi.CreateTrelloCardLabel", + "fullyQualifiedName": "TrelloApi.CreateTrelloCardLabel@3.0.0", + "description": "Add a new label to a specific Trello card.\n\nThis tool creates a new label on the specified Trello board and attaches it to the given card. Use this when you need to organize or categorize tasks by adding labels to cards in Trello.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card to which the label will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "label_color", + "type": "string", + "required": true, + "description": "Specify a valid Trello label color or use 'null'. Check Trello's documentation for available colors.", + "enum": null, + "inferrable": true + }, + { + "name": "label_name", + "type": "string", + "required": false, + "description": "The name for the label to add to the Trello card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-cards-id-labels'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateTrelloCardLabel", + "parameters": { + "card_id": { + "value": "5f2b5a5f0c1c0e1c2a34d56e", + "type": "string", + "required": true + }, + "label_color": { + "value": "green", + "type": "string", + "required": true + }, + "label_name": { + "value": "In Progress", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTrelloChecklist", + "qualifiedName": "TrelloApi.CreateTrelloChecklist", + "fullyQualifiedName": "TrelloApi.CreateTrelloChecklist@3.0.0", + "description": "Create a new checklist in Trello.\n\nThis tool creates a checklist in Trello. It should be called when a user wants to add a checklist to a Trello board.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello card where the checklist will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_name", + "type": "string", + "required": false, + "description": "The name of the checklist to be created. It should be a string with 1 to 16384 characters.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_position", + "type": "string", + "required": false, + "description": "The position of the checklist on the card. Accepts 'top', 'bottom', or a positive number indicating specific placement.", + "enum": null, + "inferrable": true + }, + { + "name": "source_checklist_id", + "type": "string", + "required": false, + "description": "The ID of the checklist to be copied into the new checklist.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-checklists'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateTrelloChecklist", + "parameters": { + "card_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "checklist_name": { + "value": "My New Checklist", + "type": "string", + "required": false + }, + "checklist_position": { + "value": "top", + "type": "string", + "required": false + }, + "source_checklist_id": { + "value": "chk789def012", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTrelloCustomField", + "qualifiedName": "TrelloApi.CreateTrelloCustomField", + "fullyQualifiedName": "TrelloApi.CreateTrelloCustomField@3.0.0", + "description": "Create a new custom field on a Trello board.\n\nThis tool creates a new custom field on a specified Trello board. Call this tool when you need to add a custom field to organize or manage information on your Trello boards.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-customfields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateTrelloCustomField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"name\": \"Priority\", \"pos\": 1, \"type\": \"enum\", \"options\": [{\"id\": \"1\", \"display\": \"High\"}, {\"id\": \"2\", \"display\": \"Medium\"}, {\"id\": \"3\", \"display\": \"Low\"}]} ", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTrelloList", + "qualifiedName": "TrelloApi.CreateTrelloList", + "fullyQualifiedName": "TrelloApi.CreateTrelloList@3.0.0", + "description": "Create a new list on a Trello board.\n\nThis tool is used to create a new list on a specified Trello board. It should be called when you want to organize tasks or items into a new category within a board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique string ID of the Trello board where the list will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "list_name", + "type": "string", + "required": true, + "description": "The name of the new list to be created on the Trello board.", + "enum": null, + "inferrable": true + }, + { + "name": "list_position", + "type": "string", + "required": false, + "description": "Position of the list on the board: `top`, `bottom`, or a positive floating number to specify exact placement.", + "enum": null, + "inferrable": true + }, + { + "name": "source_list_id", + "type": "string", + "required": false, + "description": "ID of the list to copy into the new list. Leave blank to create a new list without copying.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-lists'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateTrelloList", + "parameters": { + "board_id": { + "value": "5d1f2f2a3b8e3b0a00123456", + "type": "string", + "required": true + }, + "list_name": { + "value": "New Tasks", + "type": "string", + "required": true + }, + "list_position": { + "value": "top", + "type": "string", + "required": false + }, + "source_list_id": { + "value": "", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTrelloPluginListing", + "qualifiedName": "TrelloApi.CreateTrelloPluginListing", + "fullyQualifiedName": "TrelloApi.CreateTrelloPluginListing@3.0.0", + "description": "Create a new listing for a Trello Power-Up.\n\nThis tool creates a new listing for a Trello Power-Up in a specified locale. Use this tool when you need to add a new entry for a Power-Up on Trello's platform.", + "parameters": [ + { + "name": "power_up_id", + "type": "string", + "required": true, + "description": "The ID of the Power-Up for which you are creating a new listing.", + "enum": null, + "inferrable": true + }, + { + "name": "listing_locale", + "type": "string", + "required": false, + "description": "The specific locale code (e.g., 'en-US') for which the listing should be displayed.", + "enum": null, + "inferrable": true + }, + { + "name": "locale_description", + "type": "string", + "required": false, + "description": "The description for the Power-Up listing in the specified locale.", + "enum": null, + "inferrable": true + }, + { + "name": "overview_for_locale", + "type": "string", + "required": false, + "description": "The overview text to display for the specified locale. Provide a concise summary relevant to the plugin.", + "enum": null, + "inferrable": true + }, + { + "name": "plugin_locale_name", + "type": "string", + "required": false, + "description": "The name for the Power-Up listing in the specified locale.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-plugins-idplugin-listing'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateTrelloPluginListing", + "parameters": { + "power_up_id": { + "value": "abcd1234", + "type": "string", + "required": true + }, + "listing_locale": { + "value": "en-US", + "type": "string", + "required": false + }, + "locale_description": { + "value": "This Power-Up enhances your productivity by integrating with multiple tools.", + "type": "string", + "required": false + }, + "overview_for_locale": { + "value": "Streamline your workflow with this Power-Up.", + "type": "string", + "required": false + }, + "plugin_locale_name": { + "value": "Productivity Booster", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTrelloWebhook", + "qualifiedName": "TrelloApi.CreateTrelloWebhook", + "fullyQualifiedName": "TrelloApi.CreateTrelloWebhook@3.0.0", + "description": "Create a new webhook for a Trello token.\n\nThis tool allows you to create a new webhook for a specific Trello token. Use it to set up webhooks for tracking changes or events related to Trello boards or cards.", + "parameters": [ + { + "name": "object_id_for_webhook", + "type": "string", + "required": true, + "description": "ID of the Trello object (board or card) to create a webhook on.", + "enum": null, + "inferrable": true + }, + { + "name": "trello_token", + "type": "string", + "required": true, + "description": "The authentication token for Trello. It allows access to create the webhook. Required for authorization.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_callback_url", + "type": "string", + "required": true, + "description": "The URL where the webhook will POST updates. Ensure it's a valid and accessible URL.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_description", + "type": "string", + "required": false, + "description": "A string description displayed when retrieving information about the webhook. It helps identify the purpose or function of the webhook.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-tokens-token-webhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateTrelloWebhook", + "parameters": { + "object_id_for_webhook": { + "value": "5d5f3c0e4f1a4d12345abcd1", + "type": "string", + "required": true + }, + "trello_token": { + "value": "123456789abcdef123456789abcdef", + "type": "string", + "required": true + }, + "webhook_callback_url": { + "value": "https://myapp.com/webhook/trello", + "type": "string", + "required": true + }, + "webhook_description": { + "value": "Webhook for monitoring card updates", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateWorkspaceTrello", + "qualifiedName": "TrelloApi.CreateWorkspaceTrello", + "fullyQualifiedName": "TrelloApi.CreateWorkspaceTrello@3.0.0", + "description": "Create a new Trello Workspace.\n\nUse this tool to create a new Workspace in Trello. This can be utilized when users need to organize projects or teams within Trello by creating a new Workspace.", + "parameters": [ + { + "name": "display_name", + "type": "string", + "required": true, + "description": "The name to display for the Trello Workspace. This is how the Workspace will be labeled in Trello.", + "enum": null, + "inferrable": true + }, + { + "name": "website_url", + "type": "string", + "required": false, + "description": "A URL for the workspace starting with `http://` or `https://`.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_description", + "type": "string", + "required": false, + "description": "A detailed description for the Trello Workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_name", + "type": "string", + "required": false, + "description": "A lowercase alphanumeric string, min 3 characters, underscores allowed. Invalid characters are removed. Unique name is substituted if conflict occurs.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-organizations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.CreateWorkspaceTrello", + "parameters": { + "display_name": { + "value": "Project Management Team", + "type": "string", + "required": true + }, + "website_url": { + "value": "https://www.projectmanagement.com", + "type": "string", + "required": false + }, + "workspace_description": { + "value": "A workspace dedicated to organizing and managing our project teams efficiently.", + "type": "string", + "required": false + }, + "workspace_name": { + "value": "project_management_team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeactivateEnterpriseMember", + "qualifiedName": "TrelloApi.DeactivateEnterpriseMember", + "fullyQualifiedName": "TrelloApi.DeactivateEnterpriseMember@3.0.0", + "description": "Deactivate a member in a Trello enterprise.\n\nDeactivate a member of a Trello enterprise unless the enterprise uses AdminHub for user management.", + "parameters": [ + { + "name": "deactivate_member", + "type": "boolean", + "required": true, + "description": "Set to True to deactivate the member, False to keep active.", + "enum": null, + "inferrable": true + }, + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "The ID of the enterprise from which the member should be deactivated.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_to_deactivate", + "type": "string", + "required": true, + "description": "The ID of the member to deactivate in a Trello enterprise.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields_to_include", + "type": "string", + "required": false, + "description": "Specify which board fields should be included. Use values like 'id', 'name', 'desc', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "nested_member_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of valid values for the nested member field resource.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields related to the organization, such as 'id' or 'name'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprises-id-members-idMember-deactivated'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeactivateEnterpriseMember", + "parameters": { + "deactivate_member": { + "value": true, + "type": "boolean", + "required": true + }, + "enterprise_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "member_id_to_deactivate": { + "value": "abcdef1234567890", + "type": "string", + "required": true + }, + "board_fields_to_include": { + "value": "id,name,desc", + "type": "string", + "required": false + }, + "nested_member_fields": { + "value": "fullName,email", + "type": "string", + "required": false + }, + "organization_fields": { + "value": "id,name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteBoard", + "qualifiedName": "TrelloApi.DeleteBoard", + "fullyQualifiedName": "TrelloApi.DeleteBoard@3.0.0", + "description": "Delete a specific board from Trello.\n\nUse this tool to delete a given board from Trello by providing its ID. This action cannot be undone, so ensure it's the right board before calling the tool.", + "parameters": [ + { + "name": "board_id_to_delete", + "type": "string", + "required": true, + "description": "The ID of the Trello board to delete. Ensure it is the correct board as this action is irreversible.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-boards-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteBoard", + "parameters": { + "board_id_to_delete": { + "value": "5d5fP8s1a2b3c4d5e6f7g8h9", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteBoardBackground", + "qualifiedName": "TrelloApi.DeleteBoardBackground", + "fullyQualifiedName": "TrelloApi.DeleteBoardBackground@3.0.0", + "description": "Delete a board background from a member's Trello board.\n\nThis tool deletes a specified background from a member's Trello board, which can be useful for managing board appearances.", + "parameters": [ + { + "name": "board_background_id", + "type": "string", + "required": true, + "description": "The unique identifier for the board background to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose board background you want to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-members-id-boardbackgrounds-idbackground'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteBoardBackground", + "parameters": { + "board_background_id": { + "value": "background_123456", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCardAttachment", + "qualifiedName": "TrelloApi.DeleteCardAttachment", + "fullyQualifiedName": "TrelloApi.DeleteCardAttachment@3.0.0", + "description": "Delete an attachment from a Trello card.\n\nUse this tool to remove an attachment from a specified Trello card by providing the card ID and attachment ID.", + "parameters": [ + { + "name": "attachment_id_to_delete", + "type": "string", + "required": true, + "description": "The ID of the attachment you want to delete from the card.", + "enum": null, + "inferrable": true + }, + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello card from which the attachment will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleted-cards-id-attachments-idattachment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteCardAttachment", + "parameters": { + "attachment_id_to_delete": { + "value": "5f1a1b2c3d4e5f67890abcde", + "type": "string", + "required": true + }, + "card_id": { + "value": "5f1a0b1c2d4e5f67890abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteChecklistItemOnCard", + "qualifiedName": "TrelloApi.DeleteChecklistItemOnCard", + "fullyQualifiedName": "TrelloApi.DeleteChecklistItemOnCard@3.0.0", + "description": "Delete a checklist item from a Trello card.\n\nUse this tool to delete a specific checklist item from a Trello card when you have the card ID and the checklist item ID.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card from which you want to delete a checklist item.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_item_id", + "type": "string", + "required": true, + "description": "The ID of the checklist item to delete from the card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-cards-id-checkitem-idcheckitem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteChecklistItemOnCard", + "parameters": { + "card_id": { + "value": "5f4e1b1e965c9413912b8d89", + "type": "string", + "required": true + }, + "checklist_item_id": { + "value": "5f4e1b1e965c9413912b8d90", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCommentOnCard", + "qualifiedName": "TrelloApi.DeleteCommentOnCard", + "fullyQualifiedName": "TrelloApi.DeleteCommentOnCard@3.0.0", + "description": "Deletes a comment from a Trello card action.\n\nThis tool deletes a specific comment from a Trello card's action. It should be called when a user wants to remove a comment from a card.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello card from which the comment will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_action_id", + "type": "string", + "required": true, + "description": "The ID of the comment action to be deleted from the card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-cards-id-actions-id-comments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteCommentOnCard", + "parameters": { + "card_id": { + "value": "ABC123XYZ", + "type": "string", + "required": true + }, + "comment_action_id": { + "value": "456DEF789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCustomFieldOption", + "qualifiedName": "TrelloApi.DeleteCustomFieldOption", + "fullyQualifiedName": "TrelloApi.DeleteCustomFieldOption@3.0.0", + "description": "Delete an option from a Trello Custom Field dropdown.\n\nUse this tool to remove a specific option from the dropdown list of a Custom Field in Trello. This is helpful when an option is no longer needed or should be removed from the available choices.", + "parameters": [ + { + "name": "custom_field_item_id", + "type": "string", + "required": true, + "description": "ID of the customfielditem to identify which dropdown option to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_field_option_id", + "type": "string", + "required": true, + "description": "ID of the custom field option to delete from the dropdown list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-customfields-options-idcustomfieldoption'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteCustomFieldOption", + "parameters": { + "custom_field_item_id": { + "value": "5f8d0e1b4a7e1c0011345678", + "type": "string", + "required": true + }, + "custom_field_option_id": { + "value": "60f90cae4c5f8e001c123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCustomSticker", + "qualifiedName": "TrelloApi.DeleteCustomSticker", + "fullyQualifiedName": "TrelloApi.DeleteCustomSticker@3.0.0", + "description": "Deletes a custom sticker from a Trello member's account.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose sticker is to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_id", + "type": "string", + "required": true, + "description": "The unique identifier of the uploaded sticker to be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-members-id-customstickers-idsticker'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteCustomSticker", + "parameters": { + "member_id_or_username": { + "value": "john_doe123", + "type": "string", + "required": true + }, + "sticker_id": { + "value": "abc123xyz789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteLabelById", + "qualifiedName": "TrelloApi.DeleteLabelById", + "fullyQualifiedName": "TrelloApi.DeleteLabelById@3.0.0", + "description": "Delete a label in Trello by its ID.\n\nCall this tool to delete a specific label from Trello by providing its unique ID.", + "parameters": [ + { + "name": "label_id", + "type": "string", + "required": true, + "description": "The unique identifier for the label to be deleted from Trello.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-labels-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteLabelById", + "parameters": { + "label_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteMemberFromWorkspace", + "qualifiedName": "TrelloApi.DeleteMemberFromWorkspace", + "fullyQualifiedName": "TrelloApi.DeleteMemberFromWorkspace@3.0.0", + "description": "Remove a member from a Workspace and all Workspace boards.\n\nUse this tool to remove a specified member from a Trello Workspace and all associated boards. Useful for managing Workspace membership and access control.", + "parameters": [ + { + "name": "member_id_to_remove", + "type": "string", + "required": true, + "description": "The ID of the member to be removed from the Workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Trello organization (Workspace) from which the member is to be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'organizations-id-members-idmember-all'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteMemberFromWorkspace", + "parameters": { + "member_id_to_remove": { + "value": "5a7e1e0211acd90f4b5a0e3b", + "type": "string", + "required": true + }, + "organization_id_or_name": { + "value": "MyOrganization", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteOrganizationTag", + "qualifiedName": "TrelloApi.DeleteOrganizationTag", + "fullyQualifiedName": "TrelloApi.DeleteOrganizationTag@3.0.0", + "description": "Delete a specified tag from an organization.\n\nUse this tool to remove a tag from a specified organization in Trello by providing the organization ID and tag ID.", + "parameters": [ + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the organization from which to delete the tag.", + "enum": null, + "inferrable": true + }, + { + "name": "tag_id_to_delete", + "type": "string", + "required": true, + "description": "The ID of the tag to be removed from the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "unknown" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-organizations-id-tags-idtag'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteOrganizationTag", + "parameters": { + "organization_id_or_name": { + "value": "org_123456789", + "type": "string", + "required": true + }, + "tag_id_to_delete": { + "value": "tag_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSavedSearchOnTrello", + "qualifiedName": "TrelloApi.DeleteSavedSearchOnTrello", + "fullyQualifiedName": "TrelloApi.DeleteSavedSearchOnTrello@3.0.0", + "description": "Remove a saved search from a Trello member account.\n\nThis tool is used to delete a saved search from a member's account on Trello. It should be called when a user wants to permanently remove a saved search from their list.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username identifying the member whose saved search is to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "saved_search_id", + "type": "string", + "required": true, + "description": "The unique identifier of the saved search to delete from a Trello member's account.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-members-id-savedsearches-idsearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteSavedSearchOnTrello", + "parameters": { + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + }, + "saved_search_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTrelloAction", + "qualifiedName": "TrelloApi.DeleteTrelloAction", + "fullyQualifiedName": "TrelloApi.DeleteTrelloAction@3.0.0", + "description": "Delete a specific comment action from Trello.\n\nUse this tool to delete comment actions from Trello boards. Only actions categorized as comments can be removed using this function.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The ID of the comment action to be deleted. Only comment actions are valid for deletion.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-actions-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteTrelloAction", + "parameters": { + "action_id": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTrelloCard", + "qualifiedName": "TrelloApi.DeleteTrelloCard", + "fullyQualifiedName": "TrelloApi.DeleteTrelloCard@3.0.0", + "description": "Delete a card from Trello by ID.\n\nThis tool deletes a specified card from Trello using its ID. It should be called when you need to permanently remove a card from a Trello board.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-cards-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteTrelloCard", + "parameters": { + "card_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTrelloCardChecklist", + "qualifiedName": "TrelloApi.DeleteTrelloCardChecklist", + "fullyQualifiedName": "TrelloApi.DeleteTrelloCardChecklist@3.0.0", + "description": "Delete a checklist from a Trello card.\n\nUse this tool to delete a specific checklist from a Trello card by providing the card and checklist IDs.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The ID of the Trello card from which the checklist will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "The ID of the checklist to delete from the Trello card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-cards-id-checklists-idchecklist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteTrelloCardChecklist", + "parameters": { + "card_id": { + "value": "5f4e1c29e8f91c001f1c97df", + "type": "string", + "required": true + }, + "checklist_id": { + "value": "5f4e1c29c5a123456789abcd", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTrelloChecklist", + "qualifiedName": "TrelloApi.DeleteTrelloChecklist", + "fullyQualifiedName": "TrelloApi.DeleteTrelloChecklist@3.0.0", + "description": "Deletes a checklist from Trello using its ID.\n\nUse this tool to delete a specific checklist from a Trello board by providing the checklist's ID.", + "parameters": [ + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "The unique identifier of the checklist to be deleted from Trello.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-checklists-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteTrelloChecklist", + "parameters": { + "checklist_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTrelloCustomField", + "qualifiedName": "TrelloApi.DeleteTrelloCustomField", + "fullyQualifiedName": "TrelloApi.DeleteTrelloCustomField@3.0.0", + "description": "Delete a custom field from a Trello board.\n\nUse this tool to delete a specific custom field from a Trello board by providing the field's ID.", + "parameters": [ + { + "name": "custom_field_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Custom Field to be deleted from the Trello board.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-customfields-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteTrelloCustomField", + "parameters": { + "custom_field_id": { + "value": "5e9c9f643d1b6b0e321a7a12", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTrelloOrganization", + "qualifiedName": "TrelloApi.DeleteTrelloOrganization", + "fullyQualifiedName": "TrelloApi.DeleteTrelloOrganization@3.0.0", + "description": "Delete an organization in Trello using its ID.\n\nThis tool is used to delete an organization from Trello by providing the organization's ID. It should be called when there is a need to permanently remove an organization from Trello.", + "parameters": [ + { + "name": "organization_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the organization to delete in Trello.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-organizations-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteTrelloOrganization", + "parameters": { + "organization_identifier": { + "value": "abc123org", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTrelloReaction", + "qualifiedName": "TrelloApi.DeleteTrelloReaction", + "fullyQualifiedName": "TrelloApi.DeleteTrelloReaction@3.0.0", + "description": "Deletes a specific reaction on a Trello action.\n\nUse this tool to delete a reaction from a specified action in Trello by providing the action ID and reaction ID.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The ID of the Trello action from which the reaction will be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_id", + "type": "string", + "required": true, + "description": "The unique identifier of the reaction to be deleted from a Trello action.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-actions-idaction-reactions-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteTrelloReaction", + "parameters": { + "action_id": { + "value": "5d5f5d5f5d5f5d5f5d5f5d5f", + "type": "string", + "required": true + }, + "reaction_id": { + "value": "5d5f5d5f5d5f5d5f5d5f5d5g", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTrelloToken", + "qualifiedName": "TrelloApi.DeleteTrelloToken", + "fullyQualifiedName": "TrelloApi.DeleteTrelloToken@3.0.0", + "description": "Deletes a Trello token to revoke access.\n\nUse this tool to delete a specified Trello token and revoke its access. Call this tool when you need to ensure that a token is no longer valid.", + "parameters": [ + { + "name": "trello_token_to_delete", + "type": "string", + "required": true, + "description": "The Trello token string that needs to be deleted to revoke access.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-token'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteTrelloToken", + "parameters": { + "trello_token_to_delete": { + "value": "abc123tokenxyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTrelloWebhook", + "qualifiedName": "TrelloApi.DeleteTrelloWebhook", + "fullyQualifiedName": "TrelloApi.DeleteTrelloWebhook@3.0.0", + "description": "Delete a specific Trello webhook.\n\nUse this tool to remove a webhook associated with a specific Trello token and webhook ID. This is helpful when managing or updating webhook configurations.", + "parameters": [ + { + "name": "access_token", + "type": "string", + "required": true, + "description": "The access token used for authentication. It identifies the user and grants permission to delete the webhook.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello webhook you wish to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-tokens-token-webhooks-idwebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteTrelloWebhook", + "parameters": { + "access_token": { + "value": "exampleAccessToken123", + "type": "string", + "required": true + }, + "webhook_id": { + "value": "exampleWebhookId456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteWorkspaceLogo", + "qualifiedName": "TrelloApi.DeleteWorkspaceLogo", + "fullyQualifiedName": "TrelloApi.DeleteWorkspaceLogo@3.0.0", + "description": "Remove the logo from a Trello Workspace.\n\nCall this tool to delete the existing logo from a specified Trello Workspace. It should be used when a user wants to remove the logo from an organization in Trello.", + "parameters": [ + { + "name": "workspace_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Trello Workspace to delete the logo from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-organizations-id-logo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DeleteWorkspaceLogo", + "parameters": { + "workspace_id_or_name": { + "value": "example_workspace_id", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DismissTrelloMessage", + "qualifiedName": "TrelloApi.DismissTrelloMessage", + "fullyQualifiedName": "TrelloApi.DismissTrelloMessage@3.0.0", + "description": "Dismiss a specific message in Trello for a member.\n\nUse this tool to dismiss a one-time message for a Trello member. It should be called when a user wants to acknowledge and dismiss a notification or message within Trello.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose message is being dismissed.", + "enum": null, + "inferrable": true + }, + { + "name": "message_to_dismiss", + "type": "string", + "required": true, + "description": "The specific message to dismiss for a Trello member.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-members-id-onetimemessagesdismissed'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.DismissTrelloMessage", + "parameters": { + "member_id_or_username": { + "value": "john_doe_123", + "type": "string", + "required": true + }, + "message_to_dismiss": { + "value": "You have new notifications!", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GenerateBoardCalendarKey", + "qualifiedName": "TrelloApi.GenerateBoardCalendarKey", + "fullyQualifiedName": "TrelloApi.GenerateBoardCalendarKey@3.0.0", + "description": "Generate a calendar key for a Trello board.\n\nThis tool is used to generate a calendar key for a specified Trello board. Call this tool when you need to create or obtain a calendar key that can be used for syncing or sharing purposes with calendar applications.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board for which the calendar key is to be generated.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-boards-id-calendarkey-generate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GenerateBoardCalendarKey", + "parameters": { + "board_id": { + "value": "5a1234567890abcdef123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GenerateBoardEmailKey", + "qualifiedName": "TrelloApi.GenerateBoardEmailKey", + "fullyQualifiedName": "TrelloApi.GenerateBoardEmailKey@3.0.0", + "description": "Generate a unique email key for a Trello board.\n\nThis tool generates a unique email key for a specified Trello board. Use it when you need to associate an email with your board for integration purposes.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board for which to generate an email key.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-boards-id-emailkey-generate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GenerateBoardEmailKey", + "parameters": { + "board_id": { + "value": "5f1e9c7d2c3f1e001f54c3e4", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetActionCreatorMember", + "qualifiedName": "TrelloApi.GetActionCreatorMember", + "fullyQualifiedName": "TrelloApi.GetActionCreatorMember@3.0.0", + "description": "Retrieve the member who created a specific Trello action.\n\nUse this tool to get details about the member who created a specific action in Trello. It provides information about the member associated with a particular action ID.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello action to retrieve the creator information for.", + "enum": null, + "inferrable": true + }, + { + "name": "member_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of member fields to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-actions-id-membercreator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetActionCreatorMember", + "parameters": { + "action_id": { + "value": "5f6c1e399dca5a6291c53e63", + "type": "string", + "required": true + }, + "member_fields": { + "value": "fullName,email,username", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetActionList", + "qualifiedName": "TrelloApi.GetActionList", + "fullyQualifiedName": "TrelloApi.GetActionList@3.0.0", + "description": "Retrieve the list associated with a Trello action.\n\nThis tool fetches the list details for a specified action in Trello. It should be called when you need to know the list connected to a specific action ID.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello action to retrieve its associated list.", + "enum": null, + "inferrable": true + }, + { + "name": "list_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of fields to retrieve for the list. Acceptable values include specific fields like 'id'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-actions-id-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetActionList", + "parameters": { + "action_id": { + "value": "605c72f3d9a6c5b5f83a9f68", + "type": "string", + "required": true + }, + "list_fields": { + "value": "id,name,closed", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetActionMember", + "qualifiedName": "TrelloApi.GetActionMember", + "fullyQualifiedName": "TrelloApi.GetActionMember@3.0.0", + "description": "Retrieve the member associated with a Trello action.\n\nUse this tool to get information about the member linked to a specific Trello action, excluding the creator. This can be useful when analyzing who is involved in the action.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello action to retrieve the associated member's details.", + "enum": null, + "inferrable": true + }, + { + "name": "member_fields", + "type": "string", + "required": false, + "description": "Specify `all` to retrieve all member fields or provide a comma-separated list of specific fields.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-actions-id-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetActionMember", + "parameters": { + "action_id": { + "value": "5f1a2c3b4d5e6f7a8g9h0", + "type": "string", + "required": true + }, + "member_fields": { + "value": "fullName,username,email", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetActionOrganization", + "qualifiedName": "TrelloApi.GetActionOrganization", + "fullyQualifiedName": "TrelloApi.GetActionOrganization@3.0.0", + "description": "Retrieve the organization related to a Trello action.\n\nUse this tool to obtain the organization associated with a specific Trello action. It should be called when details about the organization of an action are needed.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello action to retrieve the associated organization details.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of fields (e.g., 'id', 'name') to determine which organization details to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-actions-id-organization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetActionOrganization", + "parameters": { + "action_id": { + "value": "605c72a1d3e4e81a8f4ab4c5", + "type": "string", + "required": true + }, + "organization_fields": { + "value": "id,name,email", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetActionProperty", + "qualifiedName": "TrelloApi.GetActionProperty", + "fullyQualifiedName": "TrelloApi.GetActionProperty@3.0.0", + "description": "Retrieve a specific property of a Trello action.\n\nUse this tool to get a particular field value from a Trello action using its ID and the desired field name.", + "parameters": [ + { + "name": "action_field", + "type": "string", + "required": true, + "description": "The specific field to retrieve from a Trello action, such as 'id', 'type', or 'date'.", + "enum": null, + "inferrable": true + }, + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The unique identifier of the action to retrieve its specific property.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-actions-id-field'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetActionProperty", + "parameters": { + "action_field": { + "value": "type", + "type": "string", + "required": true + }, + "action_id": { + "value": "605c72e6de5e1d3e2b432121", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetActionReactionsSummary", + "qualifiedName": "TrelloApi.GetActionReactionsSummary", + "fullyQualifiedName": "TrelloApi.GetActionReactionsSummary@3.0.0", + "description": "Get a summary of all reactions for a Trello action.\n\nUse this tool to obtain a summary of all reactions associated with a specific action on Trello. It helps in understanding how users have interacted with a particular action.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific Trello action to retrieve reactions for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-actions-idaction-reactionsummary'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetActionReactionsSummary", + "parameters": { + "action_id": { + "value": "5f5c7e1bf5e3c02e4d1d4c62", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetApplicationComplianceData", + "qualifiedName": "TrelloApi.GetApplicationComplianceData", + "fullyQualifiedName": "TrelloApi.GetApplicationComplianceData@3.0.0", + "description": "Retrieve compliance data for a specified application.\n\nFetches compliance information related to a specific application's key. Useful for checking compliance status and details.", + "parameters": [ + { + "name": "application_key", + "type": "string", + "required": true, + "description": "The unique key for the application to retrieve its compliance data. This is required to access the specific compliance details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'applications-key-compliance'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetApplicationComplianceData", + "parameters": { + "application_key": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAssociatedOrganizationNotifications", + "qualifiedName": "TrelloApi.GetAssociatedOrganizationNotifications", + "fullyQualifiedName": "TrelloApi.GetAssociatedOrganizationNotifications@3.0.0", + "description": "Retrieve the organization associated with a notification.\n\nUse this tool to get details about the organization linked to a specific Trello notification. It retrieves information based on the notification ID.", + "parameters": [ + { + "name": "notification_id", + "type": "string", + "required": true, + "description": "Provide the ID of the Trello notification to retrieve its associated organization.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of organization fields ('id', 'name') to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-notifications-id-organization'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetAssociatedOrganizationNotifications", + "parameters": { + "notification_id": { + "value": "5f6c1a1a1f9191f2b29f44b9", + "type": "string", + "required": true + }, + "organization_fields": { + "value": "id,name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBoardChecklists", + "qualifiedName": "TrelloApi.GetBoardChecklists", + "fullyQualifiedName": "TrelloApi.GetBoardChecklists@3.0.0", + "description": "Retrieve all checklists from a specific Trello board.\n\nUse this tool to get all checklists associated with a specific Trello board by providing the board ID.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board from which to retrieve checklists.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'boards-id-checklists'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetBoardChecklists", + "parameters": { + "board_id": { + "value": "5c1234567890abcdef123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBoardCustomFields", + "qualifiedName": "TrelloApi.GetBoardCustomFields", + "fullyQualifiedName": "TrelloApi.GetBoardCustomFields@3.0.0", + "description": "Retrieve Custom Field Definitions for a specific Trello board.\n\nThis tool is used to obtain all the Custom Field Definitions that are associated with a specified Trello board. It should be called when there's a need to access or manage the custom fields of a particular board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello board for which custom fields are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-boards-id-customfields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetBoardCustomFields", + "parameters": { + "board_id": { + "value": "5d5f4a4a3d6f2d001f15a229", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBoardForAction", + "qualifiedName": "TrelloApi.GetBoardForAction", + "fullyQualifiedName": "TrelloApi.GetBoardForAction@3.0.0", + "description": "Retrieve board details for a given action on Trello.\n\nUse this tool to get information about the board linked to a specific action in Trello. Ideal for when you need to trace back an action's board context.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The ID of the action to retrieve the associated board details.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of board fields like 'id, name, desc'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-actions-id-board'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetBoardForAction", + "parameters": { + "action_id": { + "value": "5e9f2c83c336b1b4f8b3f0b4", + "type": "string", + "required": true + }, + "board_fields": { + "value": "id,name,desc", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBoardForCard", + "qualifiedName": "TrelloApi.GetBoardForCard", + "fullyQualifiedName": "TrelloApi.GetBoardForCard@3.0.0", + "description": "Retrieve the board details for a specific card.\n\nUse this tool to get information about the board a specific Trello card is on. It returns details of the board associated with the given card ID.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello card to retrieve the board for.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of board fields to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id-board'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetBoardForCard", + "parameters": { + "card_id": { + "value": "5f5f5f5f5f5f5f5f5f5f5f5f", + "type": "string", + "required": true + }, + "board_fields": { + "value": "name,url,desc", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBoardFromChecklist", + "qualifiedName": "TrelloApi.GetBoardFromChecklist", + "fullyQualifiedName": "TrelloApi.GetBoardFromChecklist@3.0.0", + "description": "Retrieve the board associated with a checklist on Trello.\n\nCall this tool to find out the board on which a specific checklist resides in Trello. Useful for organizing and tracking checklist locations.", + "parameters": [ + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "ID of the checklist to identify which board it is associated with on Trello.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields_selection", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of board fields to retrieve. Default is 'all'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-checklists-id-board'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetBoardFromChecklist", + "parameters": { + "checklist_id": { + "value": "5f3e1c5e4d4f0b1a2c1e4d69", + "type": "string", + "required": true + }, + "board_fields_selection": { + "value": "name,id,url", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBoardFromNotification", + "qualifiedName": "TrelloApi.GetBoardFromNotification", + "fullyQualifiedName": "TrelloApi.GetBoardFromNotification@3.0.0", + "description": "Retrieve the board linked to a specific notification.\n\nCall this tool to get information about the board associated with a particular Trello notification. Useful for tracking which board a specific notification pertains to.", + "parameters": [ + { + "name": "notification_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello notification to retrieve associated board details.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of board fields (e.g., 'name,desc,url').", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-notifications-id-board'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetBoardFromNotification", + "parameters": { + "notification_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + }, + "board_fields": { + "value": "name,desc,url", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBoardMembers", + "qualifiedName": "TrelloApi.GetBoardMembers", + "fullyQualifiedName": "TrelloApi.GetBoardMembers@3.0.0", + "description": "Retrieve members of a Trello board.\n\nUse this tool to get a list of members associated with a specific Trello board by providing the board ID.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board whose members are to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-boards-id-members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetBoardMembers", + "parameters": { + "board_id": { + "value": "5f7a1e9c3d48e00001f12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBoardMemberships", + "qualifiedName": "TrelloApi.GetBoardMemberships", + "fullyQualifiedName": "TrelloApi.GetBoardMemberships@3.0.0", + "description": "Retrieve user membership details for a Trello board.\n\nUse this tool to get detailed information about the memberships users have on a specific Trello board. This is helpful for understanding who has access and what roles they have on the board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello board to retrieve membership details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_activity", + "type": "boolean", + "required": false, + "description": "Set to true to include activity data for premium organizations only.", + "enum": null, + "inferrable": true + }, + { + "name": "include_member_object", + "type": "boolean", + "required": false, + "description": "Set to true to include a nested member object in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "member_fields_to_show", + "type": "string", + "required": false, + "description": "Specify which fields to display if 'member' is set to true. Valid values are fields from the nested member resource.", + "enum": null, + "inferrable": true + }, + { + "name": "membership_filter", + "type": "string", + "required": false, + "description": "Specifies the type of memberships to retrieve: `admins`, `all`, `none`, or `normal`.", + "enum": null, + "inferrable": true + }, + { + "name": "show_org_member_type", + "type": "boolean", + "required": false, + "description": "Set to true to show the type of member (e.g., 'admin') a user is to the organization.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-boards-id-memberships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetBoardMemberships", + "parameters": { + "board_id": { + "value": "5f5f6c8e8f4b9b28dcaeb3b5", + "type": "string", + "required": true + }, + "include_activity": { + "value": true, + "type": "boolean", + "required": false + }, + "include_member_object": { + "value": true, + "type": "boolean", + "required": false + }, + "member_fields_to_show": { + "value": "fullName,email", + "type": "string", + "required": false + }, + "membership_filter": { + "value": "all", + "type": "string", + "required": false + }, + "show_org_member_type": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBoardOfList", + "qualifiedName": "TrelloApi.GetBoardOfList", + "fullyQualifiedName": "TrelloApi.GetBoardOfList@3.0.0", + "description": "Retrieve the board associated with a specific list on Trello.\n\nThis tool retrieves the board that a specific list belongs to on Trello. Call this tool when you need to identify which board a list is part of.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello list to identify its board.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields", + "type": "string", + "required": false, + "description": "Specify 'all' for all fields, or provide a comma-separated list of desired board fields.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-lists-id-board'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetBoardOfList", + "parameters": { + "list_id": { + "value": "5f3a8b9b82dbf81e6a776ba4", + "type": "string", + "required": true + }, + "board_fields": { + "value": "name,url,desc", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBoardPowerUps", + "qualifiedName": "TrelloApi.GetBoardPowerUps", + "fullyQualifiedName": "TrelloApi.GetBoardPowerUps@3.0.0", + "description": "Retrieve the enabled Power-Ups on a Trello board.\n\nUse this tool to fetch the list of enabled Power-Ups on a specific Trello board by providing the board ID.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello board from which to retrieve enabled Power-Ups.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-boards-id-boardplugins'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetBoardPowerUps", + "parameters": { + "board_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetBoardStars", + "qualifiedName": "TrelloApi.GetBoardStars", + "fullyQualifiedName": "TrelloApi.GetBoardStars@3.0.0", + "description": "Retrieve star count for a Trello board.\n\nThis tool retrieves the number of stars (boardStars) associated with a specified Trello board. It should be called when users want to know how popular or favored a board is by examining its star rating.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board for which to retrieve star count.", + "enum": null, + "inferrable": true + }, + { + "name": "board_star_filter", + "type": "string", + "required": false, + "description": "Specify whose stars to include: 'mine' for personal stars, 'none' for no filtering.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-boards-id-boardstars'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetBoardStars", + "parameters": { + "board_id": { + "value": "5d1f4e2f4f16b41b9d3d1234", + "type": "string", + "required": true + }, + "board_star_filter": { + "value": "mine", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCardActions", + "qualifiedName": "TrelloApi.GetCardActions", + "fullyQualifiedName": "TrelloApi.GetCardActions@3.0.0", + "description": "Retrieve the actions performed on a specific Trello card.\n\nCall this tool to get a list of all actions taken on a specific Trello card, such as comments, moves, or updates.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card to retrieve actions for.", + "enum": null, + "inferrable": true + }, + { + "name": "action_type_filter", + "type": "string", + "required": false, + "description": "Comma-separated list of action types to filter actions on a Trello card.", + "enum": null, + "inferrable": true + }, + { + "name": "actions_page_number", + "type": "number", + "required": false, + "description": "The page number to retrieve for the list of actions on a card, with each page containing 50 actions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id-actions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetCardActions", + "parameters": { + "card_id": { + "value": "5f5c1234567890abcd1234ef", + "type": "string", + "required": true + }, + "action_type_filter": { + "value": "comment,update,move", + "type": "string", + "required": false + }, + "actions_page_number": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCardChecklistCompletionStatus", + "qualifiedName": "TrelloApi.GetCardChecklistCompletionStatus", + "fullyQualifiedName": "TrelloApi.GetCardChecklistCompletionStatus@3.0.0", + "description": "Retrieve completed checklist items from a Trello card.\n\nUse this to get the list of completed checklist items on a specific Trello card. This can be useful to track progress and ensure tasks are marked as done.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card to retrieve completed checklist items.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_item_fields", + "type": "string", + "required": false, + "description": "Specify `all` for all fields or a comma-separated list of: `idCheckItem`, `state` to filter the checklist item details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id-checkitemstates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetCardChecklistCompletionStatus", + "parameters": { + "card_id": { + "value": "5f8d3a9c8a4b2a45f8b2c123", + "type": "string", + "required": true + }, + "checklist_item_fields": { + "value": "idCheckItem,state", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCardChecklists", + "qualifiedName": "TrelloApi.GetCardChecklists", + "fullyQualifiedName": "TrelloApi.GetCardChecklists@3.0.0", + "description": "Retrieve checklists for a specified Trello card.\n\nUse this tool to access all checklists attached to a specific Trello card by providing the card ID.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card for which checklists are retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "card_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or list fields like `idBoard,idCard,name,pos` to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_all_checklists", + "type": "string", + "required": false, + "description": "Specify whether to include all checklists (`all`) or none (`none`) for the card. Accepted values are 'all' or 'none'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_check_items", + "type": "string", + "required": false, + "description": "Specify whether to include all check items (`all`) or none (`none`).", + "enum": null, + "inferrable": true + }, + { + "name": "include_checkitem_fields", + "type": "string", + "required": false, + "description": "Specify 'all' for all fields or a comma-separated list of desired fields among: name, nameData, pos, state, type, due, dueReminder, idMember.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id-checklists'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetCardChecklists", + "parameters": { + "card_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "card_fields": { + "value": "all", + "type": "string", + "required": false + }, + "include_all_checklists": { + "value": "all", + "type": "string", + "required": false + }, + "include_check_items": { + "value": "all", + "type": "string", + "required": false + }, + "include_checkitem_fields": { + "value": "name,pos,state", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCardCustomFieldItems", + "qualifiedName": "TrelloApi.GetCardCustomFieldItems", + "fullyQualifiedName": "TrelloApi.GetCardCustomFieldItems@3.0.0", + "description": "Retrieve custom field items for a Trello card.\n\nThis tool fetches the custom field items associated with a specific Trello card. Use it to obtain detailed information about custom fields on a card.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello card whose custom field items you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id-customfielditems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetCardCustomFieldItems", + "parameters": { + "card_id": { + "value": "1234567890abcdef12345678", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCardFromChecklist", + "qualifiedName": "TrelloApi.GetCardFromChecklist", + "fullyQualifiedName": "TrelloApi.GetCardFromChecklist@3.0.0", + "description": "Retrieve card details for a specified checklist.\n\nUse this tool to obtain information about the card that contains a specific checklist in Trello. Useful when you need to identify or manage the card linked to a particular checklist.", + "parameters": [ + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello checklist to retrieve the associated card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-checklists-id-cards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetCardFromChecklist", + "parameters": { + "checklist_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCardList", + "qualifiedName": "TrelloApi.GetCardList", + "fullyQualifiedName": "TrelloApi.GetCardList@3.0.0", + "description": "Retrieve the list containing a specific card from Trello.\n\nUse this tool to find out which list a particular Trello card is located in by providing the card ID.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello Card to find its containing list.", + "enum": null, + "inferrable": true + }, + { + "name": "list_fields", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of list attributes to retrieve. Defines the fields you want from the list containing the card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetCardList", + "parameters": { + "card_id": { + "value": "12345abcde67890fghij", + "type": "string", + "required": true + }, + "list_fields": { + "value": "name,id", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCardMembers", + "qualifiedName": "TrelloApi.GetCardMembers", + "fullyQualifiedName": "TrelloApi.GetCardMembers@3.0.0", + "description": "Retrieve members associated with a Trello card.\n\nUse this tool to get information about members on a specific Trello card identified by its ID.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello card whose members are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "member_fields", + "type": "string", + "required": false, + "description": "Specify `all` for all fields or list specific member fields separated by commas.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id-members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetCardMembers", + "parameters": { + "card_id": { + "value": "5c9876ab12b3a440afabc123", + "type": "string", + "required": true + }, + "member_fields": { + "value": "fullName,username,email", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCardStickers", + "qualifiedName": "TrelloApi.GetCardStickers", + "fullyQualifiedName": "TrelloApi.GetCardStickers@3.0.0", + "description": "Get the stickers on a Trello card using its ID.\n\nUse this tool to retrieve all stickers associated with a specific Trello card by providing the card ID.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier for a Trello card to retrieve its stickers.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of sticker fields to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id-stickers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetCardStickers", + "parameters": { + "card_id": { + "value": "5d2f1a2b3c4e1f0012345678", + "type": "string", + "required": true + }, + "sticker_fields": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetChecklistById", + "qualifiedName": "TrelloApi.GetChecklistById", + "fullyQualifiedName": "TrelloApi.GetChecklistById@3.0.0", + "description": "Retrieve a specific Trello checklist by ID.\n\nUse this tool to access the details of a checklist in Trello by providing the checklist ID. This can be helpful when you need to view or manage checklist items from a Trello card.", + "parameters": [ + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "Provide the ID of the Trello checklist you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "checkitem_fields_to_return", + "type": "string", + "required": false, + "description": "Fields on the checkItem to return if checkItems are included. Use `all` or a comma-separated list of available fields like `name`, `type`, `due`, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_fields", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of checklist fields to return.", + "enum": null, + "inferrable": true + }, + { + "name": "include_cards", + "type": "string", + "required": false, + "description": "Specify which cards associated with the checklist should be returned. Valid options are: 'all', 'closed', 'none', 'open', 'visible'.", + "enum": null, + "inferrable": true + }, + { + "name": "return_check_items", + "type": "string", + "required": false, + "description": "Specify whether to return check items on the checklist, using 'all' or 'none'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-checklists-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetChecklistById", + "parameters": { + "checklist_id": { + "value": "5d4f3c2d8e2a32001a3b899b", + "type": "string", + "required": true + }, + "checkitem_fields_to_return": { + "value": "name,type,due", + "type": "string", + "required": false + }, + "checklist_fields": { + "value": "all", + "type": "string", + "required": false + }, + "include_cards": { + "value": "open", + "type": "string", + "required": false + }, + "return_check_items": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetChecklistCheckitems", + "qualifiedName": "TrelloApi.GetChecklistCheckitems", + "fullyQualifiedName": "TrelloApi.GetChecklistCheckitems@3.0.0", + "description": "Retrieve checkitems from a Trello checklist.\n\nUse this tool to get all checkitems associated with a specific checklist in Trello. It is useful when you need a detailed view of tasks or items within a particular checklist.", + "parameters": [ + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "The unique identifier of the checklist to retrieve its checkitems.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_retrieve", + "type": "string", + "required": false, + "description": "Specify which fields to retrieve from the checklist items. Options include: `all`, `name`, `nameData`, `pos`, `state`, `type`, `due`, `dueReminder`, `idMember`.", + "enum": null, + "inferrable": true + }, + { + "name": "list_checkitems_filter", + "type": "string", + "required": false, + "description": "Specify whether to retrieve 'all' checkitems or 'none'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-checklists-id-checkitems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetChecklistCheckitems", + "parameters": { + "checklist_id": { + "value": "5f47ac7a2f3e8a3d3e9d94c5", + "type": "string", + "required": true + }, + "fields_to_retrieve": { + "value": "all", + "type": "string", + "required": false + }, + "list_checkitems_filter": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetChecklistField", + "qualifiedName": "TrelloApi.GetChecklistField", + "fullyQualifiedName": "TrelloApi.GetChecklistField@3.0.0", + "description": "Retrieve a specific field from a Trello checklist.\n\nUse this tool to get a specific field from a checklist in Trello using its ID.", + "parameters": [ + { + "name": "checklist_field_to_retrieve", + "type": "string", + "required": true, + "description": "Specify the field of the checklist to retrieve: 'name' or 'pos'.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "The unique identifier of the checklist to retrieve a specific field from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-checklists-id-field'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetChecklistField", + "parameters": { + "checklist_field_to_retrieve": { + "value": "name", + "type": "string", + "required": true + }, + "checklist_id": { + "value": "5f4e25e90c69e7000f0b14c5", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetChecklistItem", + "qualifiedName": "TrelloApi.GetChecklistItem", + "fullyQualifiedName": "TrelloApi.GetChecklistItem@3.0.0", + "description": "Retrieve a specific checkitem from a checklist on Trello.\n\nThis tool is used to get details about a specific checkitem within a checklist on Trello. It should be called when you need information about a particular task or item in a checklist.", + "parameters": [ + { + "name": "check_item_id", + "type": "string", + "required": true, + "description": "ID of the specific check item to retrieve from the checklist.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "The unique identifier of the checklist containing the desired checkitem.", + "enum": null, + "inferrable": true + }, + { + "name": "checkitem_fields", + "type": "string", + "required": false, + "description": "Specify which fields of the checkitem to retrieve. Options include `all`, `name`, `nameData`, `pos`, `state`, `type`, `due`, `dueReminder`, `idMember`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-checklists-id-checkitems-idcheckitem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetChecklistItem", + "parameters": { + "check_item_id": { + "value": "abc123checkitem", + "type": "string", + "required": true + }, + "checklist_id": { + "value": "xyz456checklist", + "type": "string", + "required": true + }, + "checkitem_fields": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetClaimableWorkspaces", + "qualifiedName": "TrelloApi.GetClaimableWorkspaces", + "fullyQualifiedName": "TrelloApi.GetClaimableWorkspaces@3.0.0", + "description": "Retrieve claimable workspaces for an enterprise by ID.\n\nUse this tool to get a list of workspaces that can be claimed by the specified enterprise. Optionally, filter workspaces by their activity status.", + "parameters": [ + { + "name": "enterprise_id_to_retrieve_workspaces", + "type": "string", + "required": true, + "description": "The unique ID of the enterprise to retrieve claimable workspaces for.", + "enum": null, + "inferrable": true + }, + { + "name": "active_since_date", + "type": "string", + "required": false, + "description": "Specify the date in YYYY-MM-DD format to filter workspaces active up to this date.", + "enum": null, + "inferrable": true + }, + { + "name": "enterprise_name", + "type": "string", + "required": false, + "description": "The name of the enterprise for which to retrieve claimable workspaces.", + "enum": null, + "inferrable": true + }, + { + "name": "inactive_since_date", + "type": "string", + "required": false, + "description": "Date in YYYY-MM-DD format to search for workspace inactiveness.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_workspaces", + "type": "integer", + "required": false, + "description": "Sets the maximum number of workspaces to retrieve and sort. Use an integer to specify the limit.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order_cursor", + "type": "string", + "required": false, + "description": "Specifies the sorting cursor for the order in which matching workspaces are returned. Use this to paginate results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-enterprises-id-claimableOrganizations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetClaimableWorkspaces", + "parameters": { + "enterprise_id_to_retrieve_workspaces": { + "value": "1234567890", + "type": "string", + "required": true + }, + "active_since_date": { + "value": "2022-01-01", + "type": "string", + "required": false + }, + "enterprise_name": { + "value": "Tech Innovations", + "type": "string", + "required": false + }, + "inactive_since_date": { + "value": "2023-06-30", + "type": "string", + "required": false + }, + "maximum_workspaces": { + "value": 50, + "type": "integer", + "required": false + }, + "sort_order_cursor": { + "value": "cursor-abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomBoardBackground", + "qualifiedName": "TrelloApi.GetCustomBoardBackground", + "fullyQualifiedName": "TrelloApi.GetCustomBoardBackground@3.0.0", + "description": "Get a specific custom board background from Trello.\n\nThis tool retrieves details of a specific custom board background for a given member on Trello. It is useful for obtaining properties and settings associated with a custom board background.", + "parameters": [ + { + "name": "custom_background_id", + "type": "string", + "required": true, + "description": "The unique identifier for the custom board background to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to retrieve the custom board background for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-customboardbackgrounds-idbackground'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetCustomBoardBackground", + "parameters": { + "custom_background_id": { + "value": "60a3b1c1f0e3c95d2c8f1e23", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomBoardBackgrounds", + "qualifiedName": "TrelloApi.GetCustomBoardBackgrounds", + "fullyQualifiedName": "TrelloApi.GetCustomBoardBackgrounds@3.0.0", + "description": "Retrieve a member's custom board backgrounds on Trello.\n\nUse this tool to get a specific member's custom board backgrounds from Trello. Ideal for when you need to display or manage a user's personalized board aesthetics.", + "parameters": [ + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The ID or username of the member to retrieve custom board backgrounds for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-customboardbackgrounds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetCustomBoardBackgrounds", + "parameters": { + "member_identifier": { + "value": "jane.doe", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomField", + "qualifiedName": "TrelloApi.GetCustomField", + "fullyQualifiedName": "TrelloApi.GetCustomField@3.0.0", + "description": "Retrieve details of a Trello custom field by ID.\n\nUse this tool to obtain information about a specific custom field in Trello by providing its ID. Useful for accessing custom field properties or configurations.", + "parameters": [ + { + "name": "custom_field_id", + "type": "string", + "required": true, + "description": "Provide the ID of the custom field to retrieve its details in Trello.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-customfields-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetCustomField", + "parameters": { + "custom_field_id": { + "value": "5f3c1234567890abcdef1234", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomFieldOptions", + "qualifiedName": "TrelloApi.GetCustomFieldOptions", + "fullyQualifiedName": "TrelloApi.GetCustomFieldOptions@3.0.0", + "description": "Retrieve options of a Trello drop-down custom field.\n\nUse this tool to get the list of available options for a drop-down custom field in Trello by specifying the field ID.", + "parameters": [ + { + "name": "custom_field_id", + "type": "string", + "required": true, + "description": "The ID of the Trello custom field to retrieve options for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-customfields-id-options'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetCustomFieldOptions", + "parameters": { + "custom_field_id": { + "value": "abcd1234efgh5678", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomFieldOptionTrello", + "qualifiedName": "TrelloApi.GetCustomFieldOptionTrello", + "fullyQualifiedName": "TrelloApi.GetCustomFieldOptionTrello@3.0.0", + "description": "Retrieve a specific dropdown option from Trello custom fields.\n\nUse this tool to get information about a specific option within a dropdown-type custom field in Trello. It is useful when you need to access details about a particular custom field option on a Trello card.", + "parameters": [ + { + "name": "custom_field_item_id", + "type": "string", + "required": true, + "description": "ID of the custom field item in Trello to retrieve the dropdown option for.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_field_option_id", + "type": "string", + "required": true, + "description": "ID of the Trello custom field option to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-customfields-options-idcustomfieldoption'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetCustomFieldOptionTrello", + "parameters": { + "custom_field_item_id": { + "value": "5f4e1ce2c820c6c5f8b34567", + "type": "string", + "required": true + }, + "custom_field_option_id": { + "value": "5f4e1d78e101a6d1a9a12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnterpriseAdmins", + "qualifiedName": "TrelloApi.GetEnterpriseAdmins", + "fullyQualifiedName": "TrelloApi.GetEnterpriseAdmins@3.0.0", + "description": "Retrieve admin members of an enterprise by ID.\n\nUse this tool to obtain a list of admin members associated with a specific enterprise, identified by its ID. The tool helps in managing and viewing enterprise-level administration settings on Trello.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "The ID of the enterprise to retrieve admin members for.", + "enum": null, + "inferrable": true + }, + { + "name": "admin_fields", + "type": "string", + "required": false, + "description": "Specify fields to retrieve for each admin member; valid values as per Trello's nested member field resource.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-enterprises-id-admins'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetEnterpriseAdmins", + "parameters": { + "enterprise_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "admin_fields": { + "value": "fullName,email", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnterpriseAuditLog", + "qualifiedName": "TrelloApi.GetEnterpriseAuditLog", + "fullyQualifiedName": "TrelloApi.GetEnterpriseAuditLog@3.0.0", + "description": "Retrieve audit log actions for a specific enterprise.\n\nThis tool returns actions related to the Enterprise object for populating data from an Enterprise's audit log page. Requires an Enterprise admin token.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "Specify the ID of the enterprise to retrieve audit log actions for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-enterprises-id-auditlog'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetEnterpriseAuditLog", + "parameters": { + "enterprise_id": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnterpriseById", + "qualifiedName": "TrelloApi.GetEnterpriseById", + "fullyQualifiedName": "TrelloApi.GetEnterpriseById@3.0.0", + "description": "Retrieve details of a Trello enterprise by ID.\n\nUse this tool to obtain detailed information about a specific enterprise in Trello by providing its ID.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "The unique identifier for the enterprise you want to retrieve from Trello.", + "enum": null, + "inferrable": true + }, + { + "name": "enterprise_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of fields to include, such as `id`, `name`, `displayName`, `prefs`, and more.", + "enum": null, + "inferrable": true + }, + { + "name": "include_paid_account_information", + "type": "boolean", + "required": false, + "description": "Include paid account information in the returned workspace objects if set to true. If false, it will be excluded.", + "enum": null, + "inferrable": true + }, + { + "name": "member_count", + "type": "integer", + "required": false, + "description": "Specify the number of members to retrieve, ranging from 0 to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "member_fields", + "type": "string", + "required": false, + "description": "Specify one of: `avatarHash`, `fullName`, `initials`, `username` to filter member fields.", + "enum": null, + "inferrable": true + }, + { + "name": "member_filter_query", + "type": "string", + "required": false, + "description": "A SCIM-style query to filter members. Overrides member types ('normal', 'admins', etc.) and paginates the member array.", + "enum": null, + "inferrable": true + }, + { + "name": "member_inclusion_type", + "type": "string", + "required": false, + "description": "Specify which member roles to include: `none`, `normal`, `admins`, `owners`, `all`.", + "enum": null, + "inferrable": true + }, + { + "name": "member_sort", + "type": "string", + "required": false, + "description": "Use a SCIM-style sorting value prefixed by '-' for descending or ascending if no prefix. Note: Deprecated `member_sortBy` parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "member_sorting_order", + "type": "string", + "required": false, + "description": "SCIM-style sorting value for members. Use '-' prefix for descending order, no prefix for ascending.", + "enum": null, + "inferrable": true + }, + { + "name": "member_start_index", + "type": "integer", + "required": false, + "description": "Specify the starting index for paginated members. Accepts any integer between 0 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_fields_value", + "type": "string", + "required": false, + "description": "Specify valid values for nested organization fields as accepted by the API.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_inclusion", + "type": "string", + "required": false, + "description": "Determine scope of organizations to retrieve with the enterprise: 'none', 'members', 'public', or 'all'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_memberships_list", + "type": "string", + "required": false, + "description": "Comma-separated list indicating organization memberships such as `me`, `normal`, `admin`, `active`, `deactivated`.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_members_order", + "type": "string", + "required": false, + "description": "Order the sorting of members. Acceptable values are `ascending`, `descending`, `asc`, or `desc`. Note: This parameter is deprecated and `member_sort` is preferred.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-enterprises-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetEnterpriseById", + "parameters": { + "enterprise_id": { + "value": "abc12345", + "type": "string", + "required": true + }, + "enterprise_fields": { + "value": "id,name,displayName", + "type": "string", + "required": false + }, + "include_paid_account_information": { + "value": true, + "type": "boolean", + "required": false + }, + "member_count": { + "value": 10, + "type": "integer", + "required": false + }, + "member_fields": { + "value": "fullName,username", + "type": "string", + "required": false + }, + "member_filter_query": { + "value": "role eq 'admin'", + "type": "string", + "required": false + }, + "member_inclusion_type": { + "value": "all", + "type": "string", + "required": false + }, + "member_sort": { + "value": "-fullName", + "type": "string", + "required": false + }, + "member_sorting_order": { + "value": "ascending", + "type": "string", + "required": false + }, + "member_start_index": { + "value": 0, + "type": "integer", + "required": false + }, + "organization_fields_value": { + "value": "id,name", + "type": "string", + "required": false + }, + "organization_inclusion": { + "value": "all", + "type": "string", + "required": false + }, + "organization_memberships_list": { + "value": "me,normal", + "type": "string", + "required": false + }, + "sort_members_order": { + "value": "ascending", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnterpriseMember", + "qualifiedName": "TrelloApi.GetEnterpriseMember", + "fullyQualifiedName": "TrelloApi.GetEnterpriseMember@3.0.0", + "description": "Retrieve a specific member of an enterprise by ID.\n\nUse this tool to obtain details about a particular member within an enterprise by providing the enterprise ID and member ID.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "The unique identifier for the enterprise to retrieve. This is required to specify which enterprise's member data you are accessing.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id", + "type": "string", + "required": true, + "description": "The ID of the member resource you want to retrieve details for within an enterprise.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of board fields to retrieve, as defined by the Trello nested board resource.", + "enum": null, + "inferrable": true + }, + { + "name": "member_field_values", + "type": "string", + "required": false, + "description": "Comma-separated valid values for member fields to retrieve details about a specific enterprise member.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_field_values", + "type": "string", + "required": false, + "description": "Comma-separated list of organization fields to include. Refer to Trello's nested organization field resource for valid values.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-enterprises-id-members-idmember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetEnterpriseMember", + "parameters": { + "enterprise_id": { + "value": "1234567890", + "type": "string", + "required": true + }, + "member_id": { + "value": "0987654321", + "type": "string", + "required": true + }, + "board_fields": { + "value": "name,desc,idBoard", + "type": "string", + "required": false + }, + "member_field_values": { + "value": "fullName,email,username", + "type": "string", + "required": false + }, + "organization_field_values": { + "value": "organizationName,bio", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnterpriseMembers", + "qualifiedName": "TrelloApi.GetEnterpriseMembers", + "fullyQualifiedName": "TrelloApi.GetEnterpriseMembers@3.0.0", + "description": "Retrieve members of a specific enterprise from Trello.\n\nUse this tool to get a list of all members associated with a specified enterprise on Trello. It should be called when you need to access or display information about the members of an enterprise, such as in management or collaboration scenarios.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "The unique ID of the enterprise whose members you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields_to_include", + "type": "string", + "required": false, + "description": "Specify valid board field values to include from the nested board resource.", + "enum": null, + "inferrable": true + }, + { + "name": "member_count_filter", + "type": "string", + "required": false, + "description": "A SCIM-style filter to specify the number of members to retrieve. Use this to filter results according to SCIM standards.", + "enum": null, + "inferrable": true + }, + { + "name": "member_field_list", + "type": "string", + "required": false, + "description": "A comma-separated list of member fields to include, e.g., 'fullName,email'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_fields", + "type": "string", + "required": false, + "description": "Valid organization field values allowed by the Trello nested organization field resource. This customizes which organization data is returned.", + "enum": null, + "inferrable": true + }, + { + "name": "scim_style_filter", + "type": "string", + "required": false, + "description": "A SCIM-style query to filter enterprise members, taking precedence over other member settings.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "Deprecated: Use 'sort' instead. A SCIM-style value to sort members, affecting pagination.", + "enum": null, + "inferrable": true + }, + { + "name": "sorting_order", + "type": "string", + "required": false, + "description": "Specify how to sort members using a SCIM-style value. Prefix with `-` for descending order; otherwise, ascending.", + "enum": null, + "inferrable": true + }, + { + "name": "start_index", + "type": "integer", + "required": false, + "description": "The starting point for pagination, using an integer between 0 and 9999.", + "enum": null, + "inferrable": true + }, + { + "name": "use_deprecated_sort_order", + "type": "string", + "required": false, + "description": "Specify the sorting order for members: 'ascending', 'descending', 'asc', 'desc'. Deprecated; use 'sort' instead.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-enterprises-id-members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetEnterpriseMembers", + "parameters": { + "enterprise_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "board_fields_to_include": { + "value": "name,url", + "type": "string", + "required": false + }, + "member_count_filter": { + "value": "active eq true", + "type": "string", + "required": false + }, + "member_field_list": { + "value": "fullName,email,username", + "type": "string", + "required": false + }, + "organization_fields": { + "value": "organizationName,website", + "type": "string", + "required": false + }, + "scim_style_filter": { + "value": "memberType eq 'employee'", + "type": "string", + "required": false + }, + "sort_by": { + "value": "fullName", + "type": "string", + "required": false + }, + "sorting_order": { + "value": "-createdDate", + "type": "string", + "required": false + }, + "start_index": { + "value": 0, + "type": "integer", + "required": false + }, + "use_deprecated_sort_order": { + "value": "ascending", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnterpriseOrganizations", + "qualifiedName": "TrelloApi.GetEnterpriseOrganizations", + "fullyQualifiedName": "TrelloApi.GetEnterpriseOrganizations@3.0.0", + "description": "Retrieve organizations associated with a specific enterprise.\n\nThis tool is used to get the organizations belonging to a given enterprise. It is helpful when you need to access or manage the organizations under a specific enterprise structure.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "ID of the Enterprise to retrieve its organizations.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_organizations_to_retrieve", + "type": "integer", + "required": false, + "description": "Specify the number of organizations to retrieve. Must be an integer between 0 and 100.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_fields", + "type": "string", + "required": false, + "description": "Comma-separated list of organization fields to include in the response. Valid options are: 'id', 'name'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_filter", + "type": "string", + "required": false, + "description": "Optional filter for specifying which organizations to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "starting_index", + "type": "integer", + "required": false, + "description": "The starting index for fetching organizations, must be an integer greater than or equal to 1.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-enterprises-id-organizations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetEnterpriseOrganizations", + "parameters": { + "enterprise_id": { + "value": "e123456789", + "type": "string", + "required": true + }, + "number_of_organizations_to_retrieve": { + "value": 10, + "type": "integer", + "required": false + }, + "organization_fields": { + "value": "id,name", + "type": "string", + "required": false + }, + "organization_filter": { + "value": "active", + "type": "string", + "required": false + }, + "starting_index": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnterpriseSignupUrl", + "qualifiedName": "TrelloApi.GetEnterpriseSignupUrl", + "fullyQualifiedName": "TrelloApi.GetEnterpriseSignupUrl@3.0.0", + "description": "Retrieve the signup URL for a specified enterprise.\n\nUse this tool to get the signup URL for a specific enterprise by its ID. This is useful when you need to provide users with a direct link to sign up for enterprise-related features.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "ID of the enterprise to retrieve the signup URL for.", + "enum": null, + "inferrable": true + }, + { + "name": "authenticate", + "type": "boolean", + "required": false, + "description": "Set to 'True' if authentication is required for the API call, otherwise 'False'.", + "enum": null, + "inferrable": true + }, + { + "name": "has_confirmation_been_accepted", + "type": "boolean", + "required": false, + "description": "Indicates whether the user has accepted the required confirmations before being redirected.", + "enum": null, + "inferrable": true + }, + { + "name": "redirect_url", + "type": "string", + "required": false, + "description": "A valid URL where the user will be redirected after signup.", + "enum": null, + "inferrable": true + }, + { + "name": "terms_of_service_accepted", + "type": "boolean", + "required": false, + "description": "Indicate whether the user has consented to the Trello Terms of Service before being redirected to the enterprise signup page.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-enterprises-id-signupurl'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetEnterpriseSignupUrl", + "parameters": { + "enterprise_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "authenticate": { + "value": true, + "type": "boolean", + "required": false + }, + "has_confirmation_been_accepted": { + "value": false, + "type": "boolean", + "required": false + }, + "redirect_url": { + "value": "https://example.com/redirect", + "type": "string", + "required": false + }, + "terms_of_service_accepted": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEnterpriseUsers", + "qualifiedName": "TrelloApi.GetEnterpriseUsers", + "fullyQualifiedName": "TrelloApi.GetEnterpriseUsers@3.0.0", + "description": "Fetch users from a Trello enterprise.\n\nRetrieve the users of a specified Trello enterprise, including licensed members and board guests. The response is paginated, returning 100 users per call.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "ID of the Trello enterprise to retrieve users from.", + "enum": null, + "inferrable": true + }, + { + "name": "active_date_filter", + "type": "string", + "required": false, + "description": "Returns only Trello users active since this date (inclusive). Provide the date in YYYY-MM-DD format.", + "enum": null, + "inferrable": true + }, + { + "name": "active_since_date", + "type": "string", + "required": false, + "description": "Filter users active since this date (inclusive). Use YYYY-MM-DD format.", + "enum": null, + "inferrable": true + }, + { + "name": "fetch_deactivated_members", + "type": "boolean", + "required": false, + "description": "When true, returns members who have been deactivated; when false, returns members who have not. Both active and deactivated members are returned if unspecified.", + "enum": null, + "inferrable": true + }, + { + "name": "licensed_members_only", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve only members with a license for the Trello Enterprise; false for only unlicensed members. Leave unspecified to include both licensed and unlicensed members.", + "enum": null, + "inferrable": true + }, + { + "name": "only_admin_members", + "type": "boolean", + "required": false, + "description": "Set to True to return only administrators of the Trello Enterprise. If False, return non-admins. Unspecified returns both.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_cursor", + "type": "string", + "required": false, + "description": "Cursor value to fetch the next set of user results. Use the cursor received from a previous response to continue fetching more users.", + "enum": null, + "inferrable": true + }, + { + "name": "return_board_guests", + "type": "boolean", + "required": false, + "description": "Set to true to return members who are guests on boards; false to return only non-guests. If not set, both are included.", + "enum": null, + "inferrable": true + }, + { + "name": "return_managed_members_only", + "type": "boolean", + "required": false, + "description": "Specify true to return only managed members, false for only unmanaged, or omit for both.", + "enum": null, + "inferrable": true + }, + { + "name": "search_query", + "type": "string", + "required": false, + "description": "String to search for members by email or full name starting with this value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-users-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetEnterpriseUsers", + "parameters": { + "enterprise_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "active_date_filter": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "active_since_date": { + "value": "2022-12-15", + "type": "string", + "required": false + }, + "fetch_deactivated_members": { + "value": true, + "type": "boolean", + "required": false + }, + "licensed_members_only": { + "value": false, + "type": "boolean", + "required": false + }, + "only_admin_members": { + "value": true, + "type": "boolean", + "required": false + }, + "pagination_cursor": { + "value": "cursor_value_123", + "type": "string", + "required": false + }, + "return_board_guests": { + "value": true, + "type": "boolean", + "required": false + }, + "return_managed_members_only": { + "value": false, + "type": "boolean", + "required": false + }, + "search_query": { + "value": "john.doe", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFilteredBoardCards", + "qualifiedName": "TrelloApi.GetFilteredBoardCards", + "fullyQualifiedName": "TrelloApi.GetFilteredBoardCards@3.0.0", + "description": "Retrieve cards on a Trello board based on a specified filter.\n\nCall this tool to get cards from a Trello board using a specific filter. Useful for retrieving only the cards that match certain criteria.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello board from which to retrieve cards.", + "enum": null, + "inferrable": true + }, + { + "name": "card_filter", + "type": "string", + "required": true, + "description": "Specify the filter for retrieving cards: `all`, `closed`, `complete`, `incomplete`, `none`, `open`, `visible`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-boards-id-cards-filter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetFilteredBoardCards", + "parameters": { + "board_id": { + "value": "5f4e2a8373a5e34abc123456", + "type": "string", + "required": true + }, + "card_filter": { + "value": "open", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFilteredBoardLists", + "qualifiedName": "TrelloApi.GetFilteredBoardLists", + "fullyQualifiedName": "TrelloApi.GetFilteredBoardLists@3.0.0", + "description": "Retrieve filtered lists from a Trello board.\n\nUse this tool to get specific lists from a Trello board based on a filter. Ideal for managing tasks or organizing information within the board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board to retrieve lists for.", + "enum": null, + "inferrable": true + }, + { + "name": "list_filter", + "type": "string", + "required": true, + "description": "Specifies the filter to apply on board lists. Options are `all`, `closed`, `none`, or `open`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-boards-id-lists-filter'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetFilteredBoardLists", + "parameters": { + "board_id": { + "value": "5a5f9b8f1234567890abcdef", + "type": "string", + "required": true + }, + "list_filter": { + "value": "open", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetInvitedWorkspaces", + "qualifiedName": "TrelloApi.GetInvitedWorkspaces", + "fullyQualifiedName": "TrelloApi.GetInvitedWorkspaces@3.0.0", + "description": "Retrieve a member's invited Workspaces.\n\nUse this tool to get a list of Workspaces that a Trello member has been invited to join. It provides insights into pending invitations and collaboration opportunities.", + "parameters": [ + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to retrieve their invited Workspaces.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_fields", + "type": "string", + "required": false, + "description": "Specifies the fields to retrieve for each organization. Use 'all' or a comma-separated list like 'id,name'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-organizationsinvited'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetInvitedWorkspaces", + "parameters": { + "member_identifier": { + "value": "johndoe123", + "type": "string", + "required": true + }, + "organization_fields": { + "value": "id,name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMemberAppTokens", + "qualifiedName": "TrelloApi.GetMemberAppTokens", + "fullyQualifiedName": "TrelloApi.GetMemberAppTokens@3.0.0", + "description": "Retrieve a Trello member's app tokens list.\n\nUse this tool to get a list of tokens associated with a specific Trello member, identified by their ID.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to retrieve app tokens for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_webhooks", + "type": "boolean", + "required": false, + "description": "Set to true to include webhooks in the response; false to exclude them.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-tokens'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetMemberAppTokens", + "parameters": { + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + }, + "include_webhooks": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMemberBoardBackground", + "qualifiedName": "TrelloApi.GetMemberBoardBackground", + "fullyQualifiedName": "TrelloApi.GetMemberBoardBackground@3.0.0", + "description": "Retrieve a board background for a specific member.\n\nUse this tool to get the details of a specific board background associated with a member on Trello. Useful for accessing customized background settings for user boards.", + "parameters": [ + { + "name": "board_background_id", + "type": "string", + "required": true, + "description": "The ID of the board background to retrieve. This is required to specify which background details to fetch for a member.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the member whose board background is being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "fields_to_retrieve", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of fields to retrieve: 'brightness', 'fullSizeUrl', 'scaled', 'tile'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-boardbackgrounds-idbackground'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetMemberBoardBackground", + "parameters": { + "board_background_id": { + "value": "5c12345abcdef67890abcdefg", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + }, + "fields_to_retrieve": { + "value": "brightness,fullSizeUrl", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMemberBoardBackgrounds", + "qualifiedName": "TrelloApi.GetMemberBoardBackgrounds", + "fullyQualifiedName": "TrelloApi.GetMemberBoardBackgrounds@3.0.0", + "description": "Retrieve custom board backgrounds for a Trello member.\n\nThis tool fetches the custom board backgrounds set by a specific Trello member. It should be called when there's a need to view or manage a member's personalized board designs.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose board backgrounds are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "board_background_filter", + "type": "string", + "required": false, + "description": "Specify the filter for board backgrounds: `all`, `custom`, `default`, `none`, or `premium`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-boardbackgrounds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetMemberBoardBackgrounds", + "parameters": { + "member_id_or_username": { + "value": "john_doe_123", + "type": "string", + "required": true + }, + "board_background_filter": { + "value": "custom", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMemberCards", + "qualifiedName": "TrelloApi.GetMemberCards", + "fullyQualifiedName": "TrelloApi.GetMemberCards@3.0.0", + "description": "Retrieve cards associated with a specific member on Trello.\n\nUse this tool to get a detailed list of all the cards a specific Trello member is associated with. It should be called when you need to track or manage the cards a member is involved in.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to retrieve cards for.", + "enum": null, + "inferrable": true + }, + { + "name": "card_status_filter", + "type": "string", + "required": false, + "description": "Filter cards by status: `all`, `closed`, `complete`, `incomplete`, `none`, `open`, or `visible`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-cards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetMemberCards", + "parameters": { + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + }, + "card_status_filter": { + "value": "open", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMemberCustomEmoji", + "qualifiedName": "TrelloApi.GetMemberCustomEmoji", + "fullyQualifiedName": "TrelloApi.GetMemberCustomEmoji@3.0.0", + "description": "Retrieve a custom emoji for a Trello member.\n\nUse this tool to get a specific custom emoji associated with a Trello member. Ideal for displaying or managing user-related emojis.", + "parameters": [ + { + "name": "custom_emoji_id", + "type": "string", + "required": true, + "description": "The unique identifier for a member's custom emoji on Trello.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose custom emoji you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "emoji_fields", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of `name`, `url` to determine which fields to return for the custom emoji.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'membersidcustomemojiidemoji'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetMemberCustomEmoji", + "parameters": { + "custom_emoji_id": { + "value": "abcdef123456", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + }, + "emoji_fields": { + "value": "name,url", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMemberCustomEmojis", + "qualifiedName": "TrelloApi.GetMemberCustomEmojis", + "fullyQualifiedName": "TrelloApi.GetMemberCustomEmojis@3.0.0", + "description": "Retrieve a Trello member's uploaded custom emojis.\n\nThis tool fetches all custom emojis that a specific Trello member has uploaded. It should be called when you need to access the custom emojis of a Trello member by their ID.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose custom emojis are being retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-customemoji'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetMemberCustomEmojis", + "parameters": { + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMemberCustomSticker", + "qualifiedName": "TrelloApi.GetMemberCustomSticker", + "fullyQualifiedName": "TrelloApi.GetMemberCustomSticker@3.0.0", + "description": "Retrieve a member's custom sticker from Trello.\n\nThis tool retrieves details about a specific custom sticker associated with a Trello member. It should be called when you need information about a member's custom sticker based on their member ID and the sticker ID.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose custom sticker is to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_id", + "type": "string", + "required": true, + "description": "The unique identifier for the uploaded sticker. Required to fetch the sticker's details.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of 'scaled', 'url' to determine which sticker details to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-customstickers-idsticker'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetMemberCustomSticker", + "parameters": { + "member_id_or_username": { + "value": "john_doe123", + "type": "string", + "required": true + }, + "sticker_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "sticker_fields": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMemberInvitedBoards", + "qualifiedName": "TrelloApi.GetMemberInvitedBoards", + "fullyQualifiedName": "TrelloApi.GetMemberInvitedBoards@3.0.0", + "description": "Retrieve boards a member is invited to on Trello.\n\nThis tool fetches the list of boards that a specified member has been invited to on Trello. It should be called when you need to check which boards a member is invited to but has not yet joined.", + "parameters": [ + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to retrieve invited boards for.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields_option", + "type": "string", + "required": false, + "description": "Specify 'all' or provide a comma-separated list of board fields to retrieve (e.g., 'id,name,desc').", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-boardsinvited'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetMemberInvitedBoards", + "parameters": { + "member_identifier": { + "value": "john_doe", + "type": "string", + "required": true + }, + "board_fields_option": { + "value": "id,name,desc", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMemberNotifications", + "qualifiedName": "TrelloApi.GetMemberNotifications", + "fullyQualifiedName": "TrelloApi.GetMemberNotifications@3.0.0", + "description": "Retrieve a Trello member's notifications.\n\nUse this tool to fetch notifications for a specific Trello member by their ID. Call this when you need to access recent alerts or updates for a member on Trello.", + "parameters": [ + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to fetch notifications for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_display", + "type": "boolean", + "required": false, + "description": "Boolean to include display-related data in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_entities", + "type": "boolean", + "required": false, + "description": "Include entities in the member's notifications when set to true.", + "enum": null, + "inferrable": true + }, + { + "name": "include_member_creator_details", + "type": "boolean", + "required": false, + "description": "A boolean to include details of the member who created the notifications. True to include, False to exclude.", + "enum": null, + "inferrable": true + }, + { + "name": "member_creator_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or provide a comma-separated list of member fields to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_fields", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of notification fields to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_filter", + "type": "string", + "required": false, + "description": "Specify the type of notifications to retrieve: all, createCard, commentCard, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_id_before", + "type": "string", + "required": false, + "description": "Set to retrieve notifications sent before this specific notification ID.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_limit", + "type": "integer", + "required": false, + "description": "The maximum number of notifications to retrieve, capped at 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_read_status_filter", + "type": "string", + "required": false, + "description": "Specify read status to filter notifications: `all`, `read`, or `unread`.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number for pagination. Maximum value is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "since_notification_id", + "type": "string", + "required": false, + "description": "A notification ID to start retrieving notifications from. Useful for fetching notifications after a specific point.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-notifications'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetMemberNotifications", + "parameters": { + "member_identifier": { + "value": "user123", + "type": "string", + "required": true + }, + "include_display": { + "value": true, + "type": "boolean", + "required": false + }, + "include_entities": { + "value": false, + "type": "boolean", + "required": false + }, + "include_member_creator_details": { + "value": true, + "type": "boolean", + "required": false + }, + "member_creator_fields": { + "value": "all", + "type": "string", + "required": false + }, + "notification_fields": { + "value": "all", + "type": "string", + "required": false + }, + "notification_filter": { + "value": "all", + "type": "string", + "required": false + }, + "notification_id_before": { + "value": "notify_456", + "type": "string", + "required": false + }, + "notification_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "notification_read_status_filter": { + "value": "unread", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "since_notification_id": { + "value": "notify_123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMemberNotificationSettings", + "qualifiedName": "TrelloApi.GetMemberNotificationSettings", + "fullyQualifiedName": "TrelloApi.GetMemberNotificationSettings@3.0.0", + "description": "Retrieve a Trello member's notification settings.\n\nUse this tool to obtain the notification channel settings for a specific Trello member identified by their ID.", + "parameters": [ + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to retrieve notification settings for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-notificationChannelSettings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetMemberNotificationSettings", + "parameters": { + "member_identifier": { + "value": "john_doe123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMemberProperty", + "qualifiedName": "TrelloApi.GetMemberProperty", + "fullyQualifiedName": "TrelloApi.GetMemberProperty@3.0.0", + "description": "Retrieve a specific property of a Trello member.\n\nUse this tool to get a particular property of a Trello member by specifying the member ID and the desired field. This is useful for retrieving specific member information such as username, email, or other available fields.", + "parameters": [ + { + "name": "member_field_name", + "type": "string", + "required": true, + "description": "Specify the name of the member field to retrieve, such as 'username', 'email', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose property is to be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-field'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetMemberProperty", + "parameters": { + "member_field_name": { + "value": "email", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMembersWhoVotedOnCard", + "qualifiedName": "TrelloApi.GetMembersWhoVotedOnCard", + "fullyQualifiedName": "TrelloApi.GetMembersWhoVotedOnCard@3.0.0", + "description": "Retrieve members who voted on a Trello card.\n\nThis tool gets the list of members who have voted on a specific Trello card. Use it when you need to know which members have voted on a particular card.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello card for which you want to retrieve the list of voting members.", + "enum": null, + "inferrable": true + }, + { + "name": "member_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of member fields to retrieve information on those members who voted on the card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id-membersvoted'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetMembersWhoVotedOnCard", + "parameters": { + "card_id": { + "value": "5f3cb75409bc1c001f3e5c0b", + "type": "string", + "required": true + }, + "member_fields": { + "value": "fullName,email,username", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMemberUploadedStickers", + "qualifiedName": "TrelloApi.GetMemberUploadedStickers", + "fullyQualifiedName": "TrelloApi.GetMemberUploadedStickers@3.0.0", + "description": "Retrieve a Trello member's uploaded stickers.\n\nCall this tool to get the custom stickers uploaded by a Trello member using their member ID.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose stickers you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-customstickers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetMemberUploadedStickers", + "parameters": { + "member_id_or_username": { + "value": "john_doe123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMemberWorkspaces", + "qualifiedName": "TrelloApi.GetMemberWorkspaces", + "fullyQualifiedName": "TrelloApi.GetMemberWorkspaces@3.0.0", + "description": "Retrieve a member's workspaces from Trello.\n\nUse this tool to get the list of workspaces (organizations) associated with a specific Trello member by their ID.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to retrieve workspaces for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_paid_account_info", + "type": "boolean", + "required": false, + "description": "Include paid account information in the returned workspace object if set to true.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of organization fields like 'id', 'name'.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_filter", + "type": "string", + "required": false, + "description": "Specify the type of workspaces to include. Options: `all`, `members` (private), `none`, `public`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-organizations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetMemberWorkspaces", + "parameters": { + "member_id_or_username": { + "value": "johndoe123", + "type": "string", + "required": true + }, + "include_paid_account_info": { + "value": true, + "type": "boolean", + "required": false + }, + "organization_fields": { + "value": "id,name,date_created", + "type": "string", + "required": false + }, + "workspace_filter": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetNotificationCard", + "qualifiedName": "TrelloApi.GetNotificationCard", + "fullyQualifiedName": "TrelloApi.GetNotificationCard@3.0.0", + "description": "Retrieve the card linked to a specific notification.\n\nUse this tool to obtain details about the card associated with a specific Trello notification ID. It helps in understanding the context of the notification.", + "parameters": [ + { + "name": "notification_id", + "type": "string", + "required": true, + "description": "The unique ID of the notification for which the associated card details are being fetched.", + "enum": null, + "inferrable": true + }, + { + "name": "card_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of card fields like 'id', 'name', etc., to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-notifications-id-card'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetNotificationCard", + "parameters": { + "notification_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "card_fields": { + "value": "id,name,desc,due", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetNotificationCreator", + "qualifiedName": "TrelloApi.GetNotificationCreator", + "fullyQualifiedName": "TrelloApi.GetNotificationCreator@3.0.0", + "description": "Retrieve the creator of a Trello notification.\n\nCall this tool to get details about the Trello member who created a specific notification using its ID.", + "parameters": [ + { + "name": "notification_id", + "type": "string", + "required": true, + "description": "The ID of the Trello notification to retrieve the creator's details.", + "enum": null, + "inferrable": true + }, + { + "name": "member_fields", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of member fields to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-notifications-id-membercreator'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetNotificationCreator", + "parameters": { + "notification_id": { + "value": "5e2f0d3c6b1a9e43dabc1234", + "type": "string", + "required": true + }, + "member_fields": { + "value": "fullName,username,email", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetNotificationMemberDetails", + "qualifiedName": "TrelloApi.GetNotificationMemberDetails", + "fullyQualifiedName": "TrelloApi.GetNotificationMemberDetails@3.0.0", + "description": "Retrieve information about the member involved in a notification.\n\nUse this tool to obtain details about the member a specific Trello notification is concerning, excluding the notification creator.", + "parameters": [ + { + "name": "notification_id", + "type": "string", + "required": true, + "description": "The ID of the Trello notification to get details about the member involved.", + "enum": null, + "inferrable": true + }, + { + "name": "member_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of member fields to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'notificationsidmember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetNotificationMemberDetails", + "parameters": { + "notification_id": { + "value": "5e3b2f0a8d1234567890abcdef", + "type": "string", + "required": true + }, + "member_fields": { + "value": "fullName,email,username", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOpenCardsOnBoard", + "qualifiedName": "TrelloApi.GetOpenCardsOnBoard", + "fullyQualifiedName": "TrelloApi.GetOpenCardsOnBoard@3.0.0", + "description": "Retrieve all open cards on a Trello board.\n\nUse this tool to get information about all open cards on a specified Trello board. This is useful for tracking tasks or items on a board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board to retrieve open cards from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-boards-id-cards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetOpenCardsOnBoard", + "parameters": { + "board_id": { + "value": "5d2f0c7b5a4e1f1c5c4a1a8b", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOrganizationDetails", + "qualifiedName": "TrelloApi.GetOrganizationDetails", + "fullyQualifiedName": "TrelloApi.GetOrganizationDetails@3.0.0", + "description": "Retrieve details about a Trello organization.\n\nUse this tool to obtain information about a specific Trello organization by its ID.", + "parameters": [ + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The unique ID or name of the Trello organization to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-organizations-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetOrganizationDetails", + "parameters": { + "organization_id_or_name": { + "value": "my-trello-org", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOrganizationField", + "qualifiedName": "TrelloApi.GetOrganizationField", + "fullyQualifiedName": "TrelloApi.GetOrganizationField@3.0.0", + "description": "Retrieve a specific field from a Trello organization.\n\nCall this tool to get a specific field's value from a Trello organization. Useful for accessing detailed information about an organization's attribute on Trello.", + "parameters": [ + { + "name": "organization_field", + "type": "string", + "required": true, + "description": "Specify the field of the organization to retrieve, such as 'id' or 'name'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_identifier", + "type": "string", + "required": true, + "description": "The unique ID or name of the Trello organization to retrieve information from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-organizations-id-field'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetOrganizationField", + "parameters": { + "organization_field": { + "value": "name", + "type": "string", + "required": true + }, + "organization_identifier": { + "value": "my_org_123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOrganizationMembership", + "qualifiedName": "TrelloApi.GetOrganizationMembership", + "fullyQualifiedName": "TrelloApi.GetOrganizationMembership@3.0.0", + "description": "Retrieve a specific membership for an organization.\n\nThis tool retrieves information about a specific membership within an organization on Trello. It should be called when you need detailed information about a particular membership's status or details.", + "parameters": [ + { + "name": "membership_id", + "type": "string", + "required": true, + "description": "The ID of the membership to retrieve details for a specific organization.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The unique ID or name of the organization to fetch membership details for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_member_object", + "type": "boolean", + "required": false, + "description": "Include the Member object in the response when set to true.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-organizations-id-memberships-idmembership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetOrganizationMembership", + "parameters": { + "membership_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "organization_id_or_name": { + "value": "example-organization", + "type": "string", + "required": true + }, + "include_member_object": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPendingWorkspacesByEnterpriseId", + "qualifiedName": "TrelloApi.GetPendingWorkspacesByEnterpriseId", + "fullyQualifiedName": "TrelloApi.GetPendingWorkspacesByEnterpriseId@3.0.0", + "description": "Retrieve pending workspaces for an enterprise by ID.\n\nUse this tool to get a list of workspaces that are pending approval within a specific enterprise, identified by its ID.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "ID of the enterprise to retrieve pending workspaces for.", + "enum": null, + "inferrable": true + }, + { + "name": "active_since_date", + "type": "string", + "required": false, + "description": "Date in YYYY-MM-DD format to filter active workspaces up to a certain date.", + "enum": null, + "inferrable": true + }, + { + "name": "search_up_to_inactive_date", + "type": "string", + "required": false, + "description": "Date in YYYY-MM-DD format indicating the search cutoff for workspace inactiveness.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-enterprises-id-pendingOrganizations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetPendingWorkspacesByEnterpriseId", + "parameters": { + "enterprise_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "active_since_date": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "search_up_to_inactive_date": { + "value": "2023-12-31", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetPluginMemberPrivacyCompliance", + "qualifiedName": "TrelloApi.GetPluginMemberPrivacyCompliance", + "fullyQualifiedName": "TrelloApi.GetPluginMemberPrivacyCompliance@3.0.0", + "description": "Retrieve a plugin's member privacy compliance status.\n\nUse this tool to get information about the privacy compliance of a specific plugin's members in Trello. It is used when there is a need to verify the compliance status related to member privacy of a plugin by its ID.", + "parameters": [ + { + "name": "power_up_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Power-Up to check member privacy compliance.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-plugins-id-compliance-memberprivacy'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetPluginMemberPrivacyCompliance", + "parameters": { + "power_up_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetReactionInfo", + "qualifiedName": "TrelloApi.GetReactionInfo", + "fullyQualifiedName": "TrelloApi.GetReactionInfo@3.0.0", + "description": "Get detailed information about a specific Trello reaction.\n\nThis tool retrieves details about a specific reaction associated with a Trello action. Call this tool when you need to access metadata or information related to a particular reaction within an action on Trello.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The ID of the Trello Action to retrieve reaction information for.", + "enum": null, + "inferrable": true + }, + { + "name": "reaction_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific reaction to retrieve details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_emoji_as_nested_resource", + "type": "boolean", + "required": false, + "description": "Set to true to load emoji as a nested resource.", + "enum": null, + "inferrable": true + }, + { + "name": "include_member_as_nested_resource", + "type": "boolean", + "required": false, + "description": "Include the member as a nested resource in the reaction details. Refer to the Members Nested Resource guide.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-actions-idaction-reactions-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetReactionInfo", + "parameters": { + "action_id": { + "value": "5f3e3b0a5d2f8d0e7f3e3a9a", + "type": "string", + "required": true + }, + "reaction_id": { + "value": "5f3e3b0b5d2f8d0e7f3e3a9b", + "type": "string", + "required": true + }, + "include_emoji_as_nested_resource": { + "value": true, + "type": "boolean", + "required": false + }, + "include_member_as_nested_resource": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSavedSearch", + "qualifiedName": "TrelloApi.GetSavedSearch", + "fullyQualifiedName": "TrelloApi.GetSavedSearch@3.0.0", + "description": "Retrieve the details of a saved search from Trello.\n\nUse this tool to get information about a specific saved search for a Trello member. Useful for retrieving search criteria or managing saved search settings.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose saved search you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "saved_search_id", + "type": "string", + "required": true, + "description": "The ID of the saved search to retrieve information about.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-savedsearches-idsearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetSavedSearch", + "parameters": { + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + }, + "saved_search_id": { + "value": "abc123def456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSpecificBoardStar", + "qualifiedName": "TrelloApi.GetSpecificBoardStar", + "fullyQualifiedName": "TrelloApi.GetSpecificBoardStar@3.0.0", + "description": "Retrieve details of a specific board star.\n\nThis tool retrieves the details of a specific boardStar using the member and boardStar ID. It's useful when you need to access information about a particular board star in Trello.", + "parameters": [ + { + "name": "board_star_id", + "type": "string", + "required": true, + "description": "The ID of the board star to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the member to retrieve the board star for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-boardstars-idstar'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetSpecificBoardStar", + "parameters": { + "board_star_id": { + "value": "5f1e4c1c2f0e5c001c123456", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSpecificCheckitemOnCard", + "qualifiedName": "TrelloApi.GetSpecificCheckitemOnCard", + "fullyQualifiedName": "TrelloApi.GetSpecificCheckitemOnCard@3.0.0", + "description": "Retrieve details of a specific checkItem on a Trello card.\n\nUse this tool to obtain information about a particular checkItem located on a Trello card by providing the card ID and checkItem ID.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The ID of the Trello card to retrieve the checkItem from.", + "enum": null, + "inferrable": true + }, + { + "name": "checkitem_id", + "type": "string", + "required": true, + "description": "The unique ID of the checkItem on the card.", + "enum": null, + "inferrable": true + }, + { + "name": "checkitem_fields", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of fields (`name,nameData,pos,state,type,due,dueReminder,idMember`) to retrieve for the checkItem.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id-checkitem-idcheckitem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetSpecificCheckitemOnCard", + "parameters": { + "card_id": { + "value": "5a5c7e9e9a5b6749c5f9c575", + "type": "string", + "required": true + }, + "checkitem_id": { + "value": "5a5c7e9e9a5b6749c5f9c578", + "type": "string", + "required": true + }, + "checkitem_fields": { + "value": "name,state,due", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloAction", + "qualifiedName": "TrelloApi.GetTrelloAction", + "fullyQualifiedName": "TrelloApi.GetTrelloAction@3.0.0", + "description": "Fetches details of a specific Trello action by ID.\n\nUse this tool to obtain information about a specific action in Trello by providing the action ID. It retrieves detailed information of the action, which can be useful for tracking and managing tasks.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello action to be fetched. Required for retrieving specific action details.", + "enum": null, + "inferrable": true + }, + { + "name": "action_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of action fields you want to retrieve. Use 'all' for full details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_display_info", + "type": "boolean", + "required": false, + "description": "Include display information in the response if true.", + "enum": null, + "inferrable": true + }, + { + "name": "include_entities", + "type": "boolean", + "required": false, + "description": "Set to True to include related entities in the response, or False to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "include_member", + "type": "boolean", + "required": false, + "description": "Include the member object in the response for the action. Set to true to include.", + "enum": null, + "inferrable": true + }, + { + "name": "include_member_creator", + "type": "boolean", + "required": false, + "description": "Set to true to include the member object for the creator of the action.", + "enum": null, + "inferrable": true + }, + { + "name": "member_creator_fields", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of member fields to include for the action creator.", + "enum": null, + "inferrable": true + }, + { + "name": "member_information_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of member fields to include in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-actions-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloAction", + "parameters": { + "action_id": { + "value": "605c72b8f8c4ab001f5a47f1", + "type": "string", + "required": true + }, + "action_fields": { + "value": "all", + "type": "string", + "required": false + }, + "include_display_info": { + "value": true, + "type": "boolean", + "required": false + }, + "include_entities": { + "value": false, + "type": "boolean", + "required": false + }, + "include_member": { + "value": true, + "type": "boolean", + "required": false + }, + "include_member_creator": { + "value": true, + "type": "boolean", + "required": false + }, + "member_creator_fields": { + "value": "fullName,username", + "type": "string", + "required": false + }, + "member_information_fields": { + "value": "email,fullName", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloBoard", + "qualifiedName": "TrelloApi.GetTrelloBoard", + "fullyQualifiedName": "TrelloApi.GetTrelloBoard@3.0.0", + "description": "Retrieve details of a specific Trello board.\n\nCall this tool to get information about a single Trello board using its ID. It is useful for accessing board-specific details when managing projects on Trello.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board to retrieve details for. Required to specify which board to access.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields_to_include", + "type": "string", + "required": false, + "description": "Specify which board fields to include in the response. Use 'all' or a comma-separated list of field names like closed, dateLastActivity, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "include_actions", + "type": "string", + "required": false, + "description": "Include actions as a nested resource in the response. Refer to Trello's nested resources guide for more information.", + "enum": null, + "inferrable": true + }, + { + "name": "include_board_stars", + "type": "string", + "required": false, + "description": "Specify whether to include starred boards information. Options are 'mine' or 'none'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_card_plugin_data", + "type": "boolean", + "required": false, + "description": "Boolean to include card plugin data in the response when used with the `cards` parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "include_cards_resource", + "type": "string", + "required": false, + "description": "Include card details as part of the response. Cards are nested resources; read more about them in the Trello API documentation.", + "enum": null, + "inferrable": true + }, + { + "name": "include_checklists", + "type": "string", + "required": false, + "description": "Set to true to include checklists as a nested resource in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_custom_fields", + "type": "boolean", + "required": false, + "description": "Set to true to include custom fields in the board response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_labels", + "type": "string", + "required": false, + "description": "Specify if the labels nested resource should be included in the board response. Use 'true' or 'false'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_lists", + "type": "string", + "required": false, + "description": "Include the lists associated with the board in the response. This is a nested resource.", + "enum": null, + "inferrable": true + }, + { + "name": "include_members_as_nested_resource", + "type": "string", + "required": false, + "description": "Include member details as a nested resource in the response. Set to 'true' to include, 'false' to exclude.", + "enum": null, + "inferrable": true + }, + { + "name": "include_memberships", + "type": "string", + "required": false, + "description": "Include memberships data as a nested resource in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_my_preferences", + "type": "boolean", + "required": false, + "description": "Set to true to include the user's preferences for the board in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_organization", + "type": "boolean", + "required": false, + "description": "Include organization details for the board. Set to true to include.", + "enum": null, + "inferrable": true + }, + { + "name": "include_organization_plugin_data", + "type": "boolean", + "required": false, + "description": "Set to true to include organization pluginData with the response when using the organization parameter. Expects a boolean value.", + "enum": null, + "inferrable": true + }, + { + "name": "include_plugin_data", + "type": "boolean", + "required": false, + "description": "Set to true to include pluginData for the board in the response, or false to exclude it.", + "enum": null, + "inferrable": true + }, + { + "name": "include_tags", + "type": "boolean", + "required": false, + "description": "Set to true to include the collection(s) (tags) that a board belongs to in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-boards-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloBoard", + "parameters": { + "board_id": { + "value": "5f5a123abc456def789ghijk", + "type": "string", + "required": true + }, + "board_fields_to_include": { + "value": "all", + "type": "string", + "required": false + }, + "include_actions": { + "value": "true", + "type": "string", + "required": false + }, + "include_board_stars": { + "value": "mine", + "type": "string", + "required": false + }, + "include_card_plugin_data": { + "value": true, + "type": "boolean", + "required": false + }, + "include_cards_resource": { + "value": "true", + "type": "string", + "required": false + }, + "include_checklists": { + "value": "true", + "type": "string", + "required": false + }, + "include_custom_fields": { + "value": true, + "type": "boolean", + "required": false + }, + "include_labels": { + "value": "true", + "type": "string", + "required": false + }, + "include_lists": { + "value": "true", + "type": "string", + "required": false + }, + "include_members_as_nested_resource": { + "value": "true", + "type": "string", + "required": false + }, + "include_memberships": { + "value": "true", + "type": "string", + "required": false + }, + "include_my_preferences": { + "value": true, + "type": "boolean", + "required": false + }, + "include_organization": { + "value": true, + "type": "boolean", + "required": false + }, + "include_organization_plugin_data": { + "value": false, + "type": "boolean", + "required": false + }, + "include_plugin_data": { + "value": true, + "type": "boolean", + "required": false + }, + "include_tags": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloBoardField", + "qualifiedName": "TrelloApi.GetTrelloBoardField", + "fullyQualifiedName": "TrelloApi.GetTrelloBoardField@3.0.0", + "description": "Retrieve a specific field from a Trello board.\n\nThis tool fetches a specific field from a Trello board using its ID. It should be called when there's a need to access particular details about a Trello board, like name or description.", + "parameters": [ + { + "name": "board_field", + "type": "string", + "required": true, + "description": "Specify the field of the Trello board to retrieve. Valid values: closed, dateLastActivity, dateLastView, desc, descData, idMemberCreator, idOrganization, invitations, invited, labelNames, memberships, name, pinned, powerUps, prefs, shortLink, shortUrl, starred, subscribed, url.", + "enum": null, + "inferrable": true + }, + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board to fetch the field from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-boards-id-field'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloBoardField", + "parameters": { + "board_field": { + "value": "name", + "type": "string", + "required": true + }, + "board_id": { + "value": "5a6d61abde6f3e0b4c1e1e24", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloBoardLists", + "qualifiedName": "TrelloApi.GetTrelloBoardLists", + "fullyQualifiedName": "TrelloApi.GetTrelloBoardLists@3.0.0", + "description": "Retrieve lists from a specified Trello board.\n\nUse this tool to get all the lists present on a Trello board by providing the board ID. It returns details of each list available on the board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board to retrieve lists from.", + "enum": null, + "inferrable": true + }, + { + "name": "card_filter", + "type": "string", + "required": false, + "description": "Specify how to filter cards within the lists. Options: 'all', 'closed', 'none', 'open'.", + "enum": null, + "inferrable": true + }, + { + "name": "card_properties_to_include", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of card fields to include, such as name, id, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "list_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of list fields to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "list_filter", + "type": "string", + "required": false, + "description": "Apply a filter to the lists. Options are 'all', 'closed', 'none', or 'open'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-boards-id-lists'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloBoardLists", + "parameters": { + "board_id": { + "value": "1234567890abcdefg", + "type": "string", + "required": true + }, + "card_filter": { + "value": "open", + "type": "string", + "required": false + }, + "card_properties_to_include": { + "value": "name,id,due", + "type": "string", + "required": false + }, + "list_fields": { + "value": "all", + "type": "string", + "required": false + }, + "list_filter": { + "value": "none", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloCardById", + "qualifiedName": "TrelloApi.GetTrelloCardById", + "fullyQualifiedName": "TrelloApi.GetTrelloCardById@3.0.0", + "description": "Retrieve details of a Trello card using its ID.\n\nUse this tool to get comprehensive information about a specific Trello card by providing its unique ID. Ideal for accessing card details directly.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello card to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_fields_list", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of attachment fields to retrieve for the card.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields_selection", + "type": "string", + "required": false, + "description": "Specify 'all' or select specific board fields to include. Defaults to 'name, desc, descData, closed, idOrganization, pinned, url, prefs'.", + "enum": null, + "inferrable": true + }, + { + "name": "card_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of fields to retrieve for the card. Defaults to all main fields such as badges, desc, due, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_fields_detail", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of fields (`idBoard`, `idCard`, `name`, `pos`) to include for checklists.", + "enum": null, + "inferrable": true + }, + { + "name": "include_actions_details", + "type": "string", + "required": false, + "description": "Specify if actions details should be included. Refer to [Actions Nested Resource](https://cloud/trello/guides/rest-api/nested-resources/#actions-nested-resource) for more information.", + "enum": null, + "inferrable": true + }, + { + "name": "include_attachments", + "type": "string", + "required": false, + "description": "Specify if attachments should be returned. Use 'true' for all attachments, 'false' for none, or 'cover' for cover attachments only.", + "enum": null, + "inferrable": true + }, + { + "name": "include_check_item_states", + "type": "boolean", + "required": false, + "description": "Set to `true` to include check item states of the card; `false` to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "include_checklists", + "type": "string", + "required": false, + "description": "Specifies whether to return checklists on the card. Use 'all' or 'none'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_custom_field_items", + "type": "boolean", + "required": false, + "description": "Set to `true` to include custom field items in the response; `false` to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "include_list_resource", + "type": "boolean", + "required": false, + "description": "A boolean to include list resource information related to the card. Set to true to include this information.", + "enum": null, + "inferrable": true + }, + { + "name": "include_members", + "type": "boolean", + "required": false, + "description": "Whether to return member objects for members on the card. Set to true to include them.", + "enum": null, + "inferrable": true + }, + { + "name": "include_members_voted", + "type": "boolean", + "required": false, + "description": "Set to true to return member objects for members who voted on the card.", + "enum": null, + "inferrable": true + }, + { + "name": "include_plugin_data", + "type": "boolean", + "required": false, + "description": "Specify whether to include plugin data in the card details response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_stickers", + "type": "boolean", + "required": false, + "description": "Set to true to include sticker models in the response; false to exclude.", + "enum": null, + "inferrable": true + }, + { + "name": "member_fields", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of member fields like avatarHash, fullName, initials, username.", + "enum": null, + "inferrable": true + }, + { + "name": "member_voted_fields", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of fields for members who voted on the card. Defaults to `avatarHash, fullName, initials, username`.", + "enum": null, + "inferrable": true + }, + { + "name": "return_board_object", + "type": "boolean", + "required": false, + "description": "Set to true to return the board object the card is on. Use false to exclude it.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_fields_selection", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of sticker fields to retrieve for a Trello card. This determines which sticker-related data is included in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloCardById", + "parameters": { + "card_id": { + "value": "5f68b2c9b0af3d3f4e1d9c5e", + "type": "string", + "required": true + }, + "attachment_fields_list": { + "value": "all", + "type": "string", + "required": false + }, + "board_fields_selection": { + "value": "name, url", + "type": "string", + "required": false + }, + "card_fields": { + "value": "all", + "type": "string", + "required": false + }, + "checklist_fields_detail": { + "value": "idBoard,name", + "type": "string", + "required": false + }, + "include_actions_details": { + "value": "true", + "type": "string", + "required": false + }, + "include_attachments": { + "value": "true", + "type": "string", + "required": false + }, + "include_check_item_states": { + "value": true, + "type": "boolean", + "required": false + }, + "include_checklists": { + "value": "all", + "type": "string", + "required": false + }, + "include_custom_field_items": { + "value": true, + "type": "boolean", + "required": false + }, + "include_list_resource": { + "value": true, + "type": "boolean", + "required": false + }, + "include_members": { + "value": true, + "type": "boolean", + "required": false + }, + "include_members_voted": { + "value": true, + "type": "boolean", + "required": false + }, + "include_plugin_data": { + "value": false, + "type": "boolean", + "required": false + }, + "include_stickers": { + "value": true, + "type": "boolean", + "required": false + }, + "member_fields": { + "value": "fullName, username", + "type": "string", + "required": false + }, + "member_voted_fields": { + "value": "all", + "type": "string", + "required": false + }, + "return_board_object": { + "value": true, + "type": "boolean", + "required": false + }, + "sticker_fields_selection": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloCardForAction", + "qualifiedName": "TrelloApi.GetTrelloCardForAction", + "fullyQualifiedName": "TrelloApi.GetTrelloCardForAction@3.0.0", + "description": "Get details of a Trello card associated with an action.\n\nThis tool retrieves the details of a Trello card linked to a specific action. It should be called when you need information about the card associated with a particular Trello action.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The unique identifier of the action linked to the Trello card.", + "enum": null, + "inferrable": true + }, + { + "name": "card_fields", + "type": "string", + "required": false, + "description": "Specify 'all' to retrieve all fields or provide a comma-separated list of specific card fields like 'id,name,shortUrl'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-actions-id-card'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloCardForAction", + "parameters": { + "action_id": { + "value": "5f2a3a4d2b1c6e001f0d1234", + "type": "string", + "required": true + }, + "card_fields": { + "value": "id,name,shortUrl", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloCardPluginData", + "qualifiedName": "TrelloApi.GetTrelloCardPluginData", + "fullyQualifiedName": "TrelloApi.GetTrelloCardPluginData@3.0.0", + "description": "Retrieve shared plugin data from a Trello card.\n\nUse this tool to get any shared plugin data associated with a specific Trello card. It should be called when you need detailed plugin information for a particular Trello card to assist in managing tasks or integrations.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello card to retrieve plugin data for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id-plugindata'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloCardPluginData", + "parameters": { + "card_id": { + "value": "5f8d07e2e4b0c9a1b4e7b9e8", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloCardProperty", + "qualifiedName": "TrelloApi.GetTrelloCardProperty", + "fullyQualifiedName": "TrelloApi.GetTrelloCardProperty@3.0.0", + "description": "Retrieve a specific property of a Trello card.\n\nUse this tool to get a particular property (field) from a Trello card by specifying the card ID and the desired field.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello card to retrieve a property from.", + "enum": null, + "inferrable": true + }, + { + "name": "desired_card_field", + "type": "string", + "required": true, + "description": "The field or attribute of the Trello card you want to retrieve. Options include 'id', 'desc', 'due', etc.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id-field'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloCardProperty", + "parameters": { + "card_id": { + "value": "5f1a5e67573ccf2e3cbd6c4f", + "type": "string", + "required": true + }, + "desired_card_field": { + "value": "desc", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloCardSticker", + "qualifiedName": "TrelloApi.GetTrelloCardSticker", + "fullyQualifiedName": "TrelloApi.GetTrelloCardSticker@3.0.0", + "description": "Fetch details of a specific sticker on a Trello card.\n\nUse this tool to obtain information about a specific sticker on a Trello card by providing the card and sticker identifiers.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The ID of the Trello card to retrieve the sticker from.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_id", + "type": "string", + "required": true, + "description": "The unique identifier for the sticker on the Trello card.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of sticker fields you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id-stickers-idsticker'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloCardSticker", + "parameters": { + "card_id": { + "value": "5e63ecf5a8b8e50024c3e241", + "type": "string", + "required": true + }, + "sticker_id": { + "value": "5e63ecf5b0a1f20019f8a541", + "type": "string", + "required": true + }, + "sticker_fields": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloLabelInfo", + "qualifiedName": "TrelloApi.GetTrelloLabelInfo", + "fullyQualifiedName": "TrelloApi.GetTrelloLabelInfo@3.0.0", + "description": "Retrieve information about a specific Trello label.\n\nUse this tool to get detailed information about a single label in Trello by providing the label ID. This is useful for understanding label attributes and data associated with it.", + "parameters": [ + { + "name": "label_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello label to retrieve information about.", + "enum": null, + "inferrable": true + }, + { + "name": "label_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of label fields to retrieve details about. Refer to Trello's field documentation for options.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-labels-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloLabelInfo", + "parameters": { + "label_id": { + "value": "60a5c6b48b2e1d001f4a69eb", + "type": "string", + "required": true + }, + "label_fields": { + "value": "name,color", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloListActions", + "qualifiedName": "TrelloApi.GetTrelloListActions", + "fullyQualifiedName": "TrelloApi.GetTrelloListActions@3.0.0", + "description": "Retrieve actions performed on a specific Trello list.\n\nUse this tool to get all actions that have been performed on a specific Trello list by providing the list ID.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello list to retrieve actions for.", + "enum": null, + "inferrable": true + }, + { + "name": "action_types", + "type": "string", + "required": false, + "description": "Comma-separated list of action types to filter actions on the Trello list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-lists-id-actions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloListActions", + "parameters": { + "list_id": { + "value": "605c72a3a4e26a001f1f1d96", + "type": "string", + "required": true + }, + "action_types": { + "value": "createCard,updateCard,deleteCard", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloListInfo", + "qualifiedName": "TrelloApi.GetTrelloListInfo", + "fullyQualifiedName": "TrelloApi.GetTrelloListInfo@3.0.0", + "description": "Retrieve details for a specific Trello list using its ID.\n\nUse this tool to obtain detailed information about a Trello list by providing its unique identifier. Call this when specific list details are required to view or manage.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello list to retrieve information for.", + "enum": null, + "inferrable": true + }, + { + "name": "list_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or provide a comma-separated list of list field names to retrieve specific details.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-lists-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloListInfo", + "parameters": { + "list_id": { + "value": "5f8d77f1c1a8c92f0b1e3e8f", + "type": "string", + "required": true + }, + "list_fields": { + "value": "name,color,closed", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloMemberInfo", + "qualifiedName": "TrelloApi.GetTrelloMemberInfo", + "fullyQualifiedName": "TrelloApi.GetTrelloMemberInfo@3.0.0", + "description": "Fetch information about a Trello member profile.\n\nUse this tool to get detailed information about a specific Trello member by their ID. This is useful for accessing profile details of users within Trello.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to retrieve information for.", + "enum": null, + "inferrable": true + }, + { + "name": "board_backgrounds_option", + "type": "string", + "required": false, + "description": "Specify type of board backgrounds: `all`, `custom`, `default`, `none`, or `premium`.", + "enum": null, + "inferrable": true + }, + { + "name": "include_actions", + "type": "string", + "required": false, + "description": "Include actions related to the member. Refer to the Actions Nested Resource for details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_boards_details", + "type": "string", + "required": false, + "description": "Specify if you want to include detailed information about the member's boards. Refer to the Boards Nested Resource for options.", + "enum": null, + "inferrable": true + }, + { + "name": "include_boards_invited", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of board states like closed, members, open, etc., to filter invited boards.", + "enum": null, + "inferrable": true + }, + { + "name": "include_card_details", + "type": "string", + "required": false, + "description": "Include detailed information about cards associated with the member. Refer to the Cards Nested Resource for options.", + "enum": null, + "inferrable": true + }, + { + "name": "include_custom_board_backgrounds", + "type": "string", + "required": false, + "description": "Specify whether to include custom board backgrounds. Use `all` for all backgrounds or `none` to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "include_custom_emoji", + "type": "string", + "required": false, + "description": "Specify whether to include all custom emojis ('all') or none ('none') in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_custom_stickers", + "type": "string", + "required": false, + "description": "Specify if custom stickers should be included. Use `all` to include or `none` to exclude.", + "enum": null, + "inferrable": true + }, + { + "name": "include_invited_organizations", + "type": "string", + "required": false, + "description": "Specify the scope of invited organizations to include: all, members, none, or public.", + "enum": null, + "inferrable": true + }, + { + "name": "include_paid_account_information", + "type": "boolean", + "required": false, + "description": "Include paid account information in the returned member object when true.", + "enum": null, + "inferrable": true + }, + { + "name": "include_paid_account_information_in_workspace", + "type": "boolean", + "required": false, + "description": "Include paid account information in the returned workspace object if true.", + "enum": null, + "inferrable": true + }, + { + "name": "include_saved_searches", + "type": "boolean", + "required": false, + "description": "Set to true to include saved searches information in the response, false to exclude.", + "enum": null, + "inferrable": true + }, + { + "name": "include_tokens", + "type": "string", + "required": false, + "description": "Include tokens associated with the member. Options: `all` to include, `none` to exclude.", + "enum": null, + "inferrable": true + }, + { + "name": "invited_boards_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of board fields for invited boards. Options include: id, name, desc, and more.", + "enum": null, + "inferrable": true + }, + { + "name": "member_fields_selection", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of member fields to retrieve information about. Use 'all' to retrieve all available member fields.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_details", + "type": "string", + "required": false, + "description": "Fetch notification information related to the member. Refer to the Notifications Nested Resource for options.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_fields_selection", + "type": "string", + "required": false, + "description": "Specify 'all' or provide a comma-separated list of organization fields like 'id', 'name'.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_fields_to_include", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of organization fields like 'id', 'name' to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_visibility", + "type": "string", + "required": false, + "description": "Specify organization visibility: `all`, `members`, `none`, or `public`.", + "enum": null, + "inferrable": true + }, + { + "name": "return_board_stars", + "type": "boolean", + "required": false, + "description": "Set to true to return boardStars in the response, otherwise false to exclude them.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members=id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloMemberInfo", + "parameters": { + "member_id_or_username": { + "value": "john_doe123", + "type": "string", + "required": true + }, + "board_backgrounds_option": { + "value": "premium", + "type": "string", + "required": false + }, + "include_actions": { + "value": "all", + "type": "string", + "required": false + }, + "include_boards_details": { + "value": "true", + "type": "string", + "required": false + }, + "include_boards_invited": { + "value": "open,closed", + "type": "string", + "required": false + }, + "include_card_details": { + "value": "all", + "type": "string", + "required": false + }, + "include_custom_board_backgrounds": { + "value": "all", + "type": "string", + "required": false + }, + "include_custom_emoji": { + "value": "none", + "type": "string", + "required": false + }, + "include_custom_stickers": { + "value": "all", + "type": "string", + "required": false + }, + "include_invited_organizations": { + "value": "members", + "type": "string", + "required": false + }, + "include_paid_account_information": { + "value": true, + "type": "boolean", + "required": false + }, + "include_paid_account_information_in_workspace": { + "value": false, + "type": "boolean", + "required": false + }, + "include_saved_searches": { + "value": false, + "type": "boolean", + "required": false + }, + "include_tokens": { + "value": "all", + "type": "string", + "required": false + }, + "invited_boards_fields": { + "value": "id,name", + "type": "string", + "required": false + }, + "member_fields_selection": { + "value": "all", + "type": "string", + "required": false + }, + "notification_details": { + "value": "all", + "type": "string", + "required": false + }, + "organization_fields_selection": { + "value": "id,name", + "type": "string", + "required": false + }, + "organization_fields_to_include": { + "value": "all", + "type": "string", + "required": false + }, + "organization_visibility": { + "value": "public", + "type": "string", + "required": false + }, + "return_board_stars": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloMemberNotificationSettings", + "qualifiedName": "TrelloApi.GetTrelloMemberNotificationSettings", + "fullyQualifiedName": "TrelloApi.GetTrelloMemberNotificationSettings@3.0.0", + "description": "Retrieve blocked notification keys for a Trello member's channel.\n\nFetches the blocked notification keys of a member on a specific Trello channel. Useful for managing notification preferences or debugging notification issues.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to retrieve notification settings for.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_channel", + "type": "string", + "required": true, + "description": "Specify the channel to block notifications on for the Trello member. Accepted value: 'email'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-notificationChannelSettings-channel'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloMemberNotificationSettings", + "parameters": { + "member_id_or_username": { + "value": "john_doe123", + "type": "string", + "required": true + }, + "notification_channel": { + "value": "email", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloNotification", + "qualifiedName": "TrelloApi.GetTrelloNotification", + "fullyQualifiedName": "TrelloApi.GetTrelloNotification@3.0.0", + "description": "Retrieve detailed Trello notification information by ID.\n\nUse this tool to obtain information about a specific Trello notification. Call this tool when you need to retrieve detailed data for a notification using its unique identifier.", + "parameters": [ + { + "name": "notification_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello notification you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields_list", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of board fields to include.", + "enum": null, + "inferrable": true + }, + { + "name": "card_fields_to_include", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of card fields to include, such as `id`, `name`, or `due`.", + "enum": null, + "inferrable": true + }, + { + "name": "include_board_object", + "type": "boolean", + "required": false, + "description": "Include the board object in the response if true.", + "enum": null, + "inferrable": true + }, + { + "name": "include_card", + "type": "boolean", + "required": false, + "description": "Specify True to include the card object.", + "enum": null, + "inferrable": true + }, + { + "name": "include_creator_member", + "type": "boolean", + "required": false, + "description": "Set to true to include the member object of the creator in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_display_object", + "type": "boolean", + "required": false, + "description": "Set to true to include the display object with the results.", + "enum": null, + "inferrable": true + }, + { + "name": "include_entities_object", + "type": "boolean", + "required": false, + "description": "Include the entities object in the notification results. Set to true to include, false to exclude.", + "enum": null, + "inferrable": true + }, + { + "name": "include_list_object", + "type": "boolean", + "required": false, + "description": "Include the list object in the notification data if set to true.", + "enum": null, + "inferrable": true + }, + { + "name": "include_member_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of member fields to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_member_object", + "type": "boolean", + "required": false, + "description": "Include the member object in the notification details if set to true.", + "enum": null, + "inferrable": true + }, + { + "name": "include_notification_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of notification fields to include, such as 'id', 'unread', or 'type'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_organization", + "type": "boolean", + "required": false, + "description": "Set to true to include the organization object in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "member_creator_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of member fields to include the member object of the creator.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_fields", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of organization fields (e.g., `id`, `name`) to include in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-notifications-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloNotification", + "parameters": { + "notification_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "board_fields_list": { + "value": "all", + "type": "string", + "required": false + }, + "card_fields_to_include": { + "value": "id,name,due", + "type": "string", + "required": false + }, + "include_board_object": { + "value": true, + "type": "boolean", + "required": false + }, + "include_card": { + "value": true, + "type": "boolean", + "required": false + }, + "include_creator_member": { + "value": true, + "type": "boolean", + "required": false + }, + "include_display_object": { + "value": false, + "type": "boolean", + "required": false + }, + "include_entities_object": { + "value": true, + "type": "boolean", + "required": false + }, + "include_list_object": { + "value": true, + "type": "boolean", + "required": false + }, + "include_member_fields": { + "value": "all", + "type": "string", + "required": false + }, + "include_member_object": { + "value": false, + "type": "boolean", + "required": false + }, + "include_notification_fields": { + "value": "id,type", + "type": "string", + "required": false + }, + "include_organization": { + "value": true, + "type": "boolean", + "required": false + }, + "member_creator_fields": { + "value": "id,name", + "type": "string", + "required": false + }, + "organization_fields": { + "value": "id,name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloNotificationList", + "qualifiedName": "TrelloApi.GetTrelloNotificationList", + "fullyQualifiedName": "TrelloApi.GetTrelloNotificationList@3.0.0", + "description": "Retrieve the list a Trello notification is associated with.\n\nUse this tool to find out which list a specific Trello notification belongs to. It is useful when you need to track or organize tasks based on notification details.", + "parameters": [ + { + "name": "notification_id", + "type": "string", + "required": true, + "description": "The ID of the Trello notification to retrieve the associated list for.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_fields", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of fields for the list associated with the notification.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-notifications-id-list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloNotificationList", + "parameters": { + "notification_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "notification_fields": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloNotificationProperty", + "qualifiedName": "TrelloApi.GetTrelloNotificationProperty", + "fullyQualifiedName": "TrelloApi.GetTrelloNotificationProperty@3.0.0", + "description": "Retrieve a specific property of a Trello notification.\n\nThis tool is called to get a particular property of a Trello notification, using its ID and the field name as parameters.", + "parameters": [ + { + "name": "notification_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello notification to query.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_property_field", + "type": "string", + "required": true, + "description": "Specify the property field of the Trello notification to retrieve. Options include: id, unread, type, date, dateRead, data, card, board, idMemberCreator, idAction, reactions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-notifications-id-field'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloNotificationProperty", + "parameters": { + "notification_id": { + "value": "5f4e1f3b3a8912123a6b8c1d", + "type": "string", + "required": true + }, + "notification_property_field": { + "value": "type", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloPluginInfo", + "qualifiedName": "TrelloApi.GetTrelloPluginInfo", + "fullyQualifiedName": "TrelloApi.GetTrelloPluginInfo@3.0.0", + "description": "Retrieve information about a specific Trello plugin.\n\nUse this tool to get detailed information about a Trello plugin by its ID. It can be useful when you need to understand plugin capabilities or configurations.", + "parameters": [ + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the organization for which the plugin information is requested.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-plugins-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloPluginInfo", + "parameters": { + "organization_id_or_name": { + "value": "example_organization", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloTokenOwner", + "qualifiedName": "TrelloApi.GetTrelloTokenOwner", + "fullyQualifiedName": "TrelloApi.GetTrelloTokenOwner@3.0.0", + "description": "Retrieve information about a Trello token's owner.\n\nUse this tool to get details about the owner of a specified Trello token. Useful when you need to verify token ownership or access token-related user information.", + "parameters": [ + { + "name": "trello_token", + "type": "string", + "required": true, + "description": "The unique Trello token to identify and retrieve the owner information. Must be a valid string.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of Trello member fields to retrieve, such as 'id'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-tokens-token-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloTokenOwner", + "parameters": { + "trello_token": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "retrieve_fields": { + "value": "id,fullName,email", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTrelloWebhookById", + "qualifiedName": "TrelloApi.GetTrelloWebhookById", + "fullyQualifiedName": "TrelloApi.GetTrelloWebhookById@3.0.0", + "description": "Retrieve details of a Trello webhook by its ID.\n\nUse this tool to get detailed information about a specific Trello webhook by providing its ID. Ensure the correct token is used to avoid errors.", + "parameters": [ + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello webhook to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-webhooks-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetTrelloWebhookById", + "parameters": { + "webhook_id": { + "value": "abc123def456ghi789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWebhookField", + "qualifiedName": "TrelloApi.GetWebhookField", + "fullyQualifiedName": "TrelloApi.GetWebhookField@3.0.0", + "description": "Retrieve a specific field from a Trello webhook.\n\nUse this tool to get a specific field from a Trello webhook by providing the webhook ID and the field name you want to access.", + "parameters": [ + { + "name": "webhook_field_to_retrieve", + "type": "string", + "required": true, + "description": "Specify which field to retrieve from the webhook. Options are: `active`, `callbackURL`, `description`, `idModel`.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "ID of the Trello webhook to retrieve information from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'webhooksidfield'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetWebhookField", + "parameters": { + "webhook_field_to_retrieve": { + "value": "callbackURL", + "type": "string", + "required": true + }, + "webhook_id": { + "value": "abcdef123456", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWorkspacePluginData", + "qualifiedName": "TrelloApi.GetWorkspacePluginData", + "fullyQualifiedName": "TrelloApi.GetWorkspacePluginData@3.0.0", + "description": "Retrieve organization scoped plugin data for a Trello workspace.\n\nUse this tool to obtain plugin data specific to a Trello workspace by its organization ID. This is useful for accessing settings or configurations from plugins associated with the workspace.", + "parameters": [ + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the organization in Trello to retrieve plugin data for a workspace.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-organizations-id-plugindata'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.GetWorkspacePluginData", + "parameters": { + "organization_id_or_name": { + "value": "example-organization", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "InviteMemberToTrelloBoard", + "qualifiedName": "TrelloApi.InviteMemberToTrelloBoard", + "fullyQualifiedName": "TrelloApi.InviteMemberToTrelloBoard@3.0.0", + "description": "Invite a member to a Trello board via email.\n\nUse this tool to invite a new member to a Trello board using their email address. It is useful for adding collaborators to a project board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello board to which the member will be invited.", + "enum": null, + "inferrable": true + }, + { + "name": "member_email_address", + "type": "string", + "required": true, + "description": "The email address of the user to be added as a member to the Trello board.", + "enum": null, + "inferrable": true + }, + { + "name": "member_access_type", + "type": "string", + "required": false, + "description": "Specifies the role of the new board member. Valid values are: admin, normal, or observer.", + "enum": null, + "inferrable": true + }, + { + "name": "user_full_name", + "type": "string", + "required": false, + "description": "The full name of the user being invited. Must be at least 1 character and not begin or end with a space.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-boards-id-members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.InviteMemberToTrelloBoard", + "parameters": { + "board_id": { + "value": "12345abcdef", + "type": "string", + "required": true + }, + "member_email_address": { + "value": "newmember@example.com", + "type": "string", + "required": true + }, + "member_access_type": { + "value": "normal", + "type": "string", + "required": false + }, + "user_full_name": { + "value": "John Doe", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAvailableEmoji", + "qualifiedName": "TrelloApi.ListAvailableEmoji", + "fullyQualifiedName": "TrelloApi.ListAvailableEmoji@3.0.0", + "description": "Retrieve a list of available emojis on Trello.\n\nThis tool is used to fetch and list all the available emojis from Trello, useful for incorporating emojis into Trello cards or boards.", + "parameters": [ + { + "name": "include_spritesheet_urls", + "type": "boolean", + "required": false, + "description": "Set to true to include spritesheet URLs in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "locale_for_emoji", + "type": "string", + "required": false, + "description": "Specify the locale for returning emoji descriptions and names. Defaults to the logged-in member's locale.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'emoji'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ListAvailableEmoji", + "parameters": { + "include_spritesheet_urls": { + "value": true, + "type": "boolean", + "required": false + }, + "locale_for_emoji": { + "value": "en-US", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListBoardPowerUps", + "qualifiedName": "TrelloApi.ListBoardPowerUps", + "fullyQualifiedName": "TrelloApi.ListBoardPowerUps@3.0.0", + "description": "Retrieve the Power-Ups enabled on a Trello board.\n\nUse this tool to get a list of Power-Ups (plugins) that are currently enabled on a specified Trello board. This can be useful for managing and understanding the capabilities of the board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board for which to list Power-Ups.", + "enum": null, + "inferrable": true + }, + { + "name": "power_up_filter", + "type": "string", + "required": false, + "description": "Specify the filter for Power-Ups: choose 'enabled' to list only those currently active on the board, or 'available' to list those that can be activated.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-board-id-plugins'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ListBoardPowerUps", + "parameters": { + "board_id": { + "value": "1234567890abcdefg", + "type": "string", + "required": true + }, + "power_up_filter": { + "value": "enabled", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListCardAttachments", + "qualifiedName": "TrelloApi.ListCardAttachments", + "fullyQualifiedName": "TrelloApi.ListCardAttachments@3.0.0", + "description": "Retrieve all attachments from a specified Trello card.\n\nUse this tool to get a list of attachments associated with a specific Trello card. It is useful when you need to access or display all files attached to a card in Trello.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card to retrieve attachments from.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_fields", + "type": "string", + "required": false, + "description": "Specify 'all' for all fields or a comma-separated list of attachment fields to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_cover_attachment", + "type": "string", + "required": false, + "description": "Set to 'cover' to retrieve only the cover attachment of the card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-cards-id-attachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ListCardAttachments", + "parameters": { + "card_id": { + "value": "5f3d2b8d648db774bada38e9", + "type": "string", + "required": true + }, + "attachment_fields": { + "value": "all", + "type": "string", + "required": false + }, + "restrict_to_cover_attachment": { + "value": "cover", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListMemberActions", + "qualifiedName": "TrelloApi.ListMemberActions", + "fullyQualifiedName": "TrelloApi.ListMemberActions@3.0.0", + "description": "Retrieve a list of actions for a specified member.\n\nUse this tool to get all actions associated with a particular Trello member by their ID.", + "parameters": [ + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose actions you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "action_types_filter", + "type": "string", + "required": false, + "description": "A comma-separated list of action types to filter the actions of a Trello member.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-actions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ListMemberActions", + "parameters": { + "member_identifier": { + "value": "john_doe_123", + "type": "string", + "required": true + }, + "action_types_filter": { + "value": "createCard,updateCard", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListMemberBoardStars", + "qualifiedName": "TrelloApi.ListMemberBoardStars", + "fullyQualifiedName": "TrelloApi.ListMemberBoardStars@3.0.0", + "description": "Retrieve a member's board stars on Trello.\n\nUse this tool to fetch and list all the board stars associated with a Trello member, identified by their member ID.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose board stars are to be listed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-boardstars'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ListMemberBoardStars", + "parameters": { + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListMemberSavedSearches", + "qualifiedName": "TrelloApi.ListMemberSavedSearches", + "fullyQualifiedName": "TrelloApi.ListMemberSavedSearches@3.0.0", + "description": "Retrieve a Trello member's saved searches.\n\nUse this tool to obtain a list of saved searches for a specific Trello member. Ideal for accessing or reviewing saved queries associated with a member account.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose saved searches you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-savedsearches'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ListMemberSavedSearches", + "parameters": { + "member_id_or_username": { + "value": "johndoe123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListOrganizationCollections", + "qualifiedName": "TrelloApi.ListOrganizationCollections", + "fullyQualifiedName": "TrelloApi.ListOrganizationCollections@3.0.0", + "description": "List collections or tags for a specified organization on Trello.\n\nUse this tool to retrieve a list of collections or tags associated with a specific organization on Trello by providing the organization ID.", + "parameters": [ + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Trello organization to list collections for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-organizations-id-tags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ListOrganizationCollections", + "parameters": { + "organization_id_or_name": { + "value": "example-organization-id", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListReactionsForAction", + "qualifiedName": "TrelloApi.ListReactionsForAction", + "fullyQualifiedName": "TrelloApi.ListReactionsForAction@3.0.0", + "description": "Retrieve reactions for a specific Trello action.\n\nThis tool retrieves a list of reactions associated with a specific action on Trello. It should be called when you need to see how users have reacted to a particular action on a Trello board.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The unique ID of the action for which you want to list reactions.", + "enum": null, + "inferrable": true + }, + { + "name": "include_member_as_nested_resource", + "type": "boolean", + "required": false, + "description": "Specify true to include the member as a nested resource in the response. Useful for detailed member information.", + "enum": null, + "inferrable": true + }, + { + "name": "load_emoji_as_nested_resource", + "type": "boolean", + "required": false, + "description": "Set to true to load the emoji as a nested resource.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-actions-idaction-reactions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ListReactionsForAction", + "parameters": { + "action_id": { + "value": "5abc123xyz456def789ghi", + "type": "string", + "required": true + }, + "include_member_as_nested_resource": { + "value": true, + "type": "boolean", + "required": false + }, + "load_emoji_as_nested_resource": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListTrelloCardsInList", + "qualifiedName": "TrelloApi.ListTrelloCardsInList", + "fullyQualifiedName": "TrelloApi.ListTrelloCardsInList@3.0.0", + "description": "Fetches all cards from a specified Trello list.\n\nUse this tool to obtain all cards from a specific Trello list by providing the list ID. It is useful for retrieving tasks or items organized under a particular list in a Trello board.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello list to fetch cards from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-lists-id-cards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ListTrelloCardsInList", + "parameters": { + "list_id": { + "value": "5e7a8e100e5f2d1c3e0f3a7b", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListUserBoards", + "qualifiedName": "TrelloApi.ListUserBoards", + "fullyQualifiedName": "TrelloApi.ListUserBoards@3.0.0", + "description": "Retrieve boards a user is a member of on Trello.\n\nUse this tool to get a list of all boards that a specific user is a member of on Trello. Useful for managing or viewing user-related board information.", + "parameters": [ + { + "name": "member_identifier", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose boards are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of board fields to include in the response. Available fields include 'id', 'name', 'desc', 'descData', 'closed', 'idMemberCreator', 'idOrganization', 'pinned', 'url', 'shortUrl', 'prefs', 'labelNames', 'starred', 'limits', 'memberships', 'enterpriseOwned'.", + "enum": null, + "inferrable": true + }, + { + "name": "board_filter", + "type": "string", + "required": false, + "description": "Filter boards by specifying 'all' or a comma-separated list of statuses like 'closed', 'members', 'open', etc.", + "enum": null, + "inferrable": true + }, + { + "name": "include_lists", + "type": "string", + "required": false, + "description": "Specify which lists to include with the boards. Options: `all`, `closed`, `none`, `open`.", + "enum": null, + "inferrable": true + }, + { + "name": "include_organization", + "type": "boolean", + "required": false, + "description": "Set to true to include the Organization object with the Boards.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_fields_to_include", + "type": "string", + "required": false, + "description": "Specifies which organization fields to include, either `all` or a comma-separated list of specific fields like `id` and `name`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-members-id-boards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ListUserBoards", + "parameters": { + "member_identifier": { + "value": "john_doe", + "type": "string", + "required": true + }, + "board_fields": { + "value": "id,name,desc,url", + "type": "string", + "required": false + }, + "board_filter": { + "value": "open,members", + "type": "string", + "required": false + }, + "include_lists": { + "value": "all", + "type": "string", + "required": false + }, + "include_organization": { + "value": true, + "type": "boolean", + "required": false + }, + "organization_fields_to_include": { + "value": "id,name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWorkspaceActions", + "qualifiedName": "TrelloApi.ListWorkspaceActions", + "fullyQualifiedName": "TrelloApi.ListWorkspaceActions@3.0.0", + "description": "Retrieve actions related to a specific Trello Workspace.\n\nUse this tool to obtain a list of all actions that have taken place within a specific Trello Workspace. This can include changes, updates, and any other activities relevant to the workspace.", + "parameters": [ + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Trello Workspace to list actions for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-organizations-id-actions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ListWorkspaceActions", + "parameters": { + "organization_id_or_name": { + "value": "my_workspace_id", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWorkspaceBoards", + "qualifiedName": "TrelloApi.ListWorkspaceBoards", + "fullyQualifiedName": "TrelloApi.ListWorkspaceBoards@3.0.0", + "description": "Retrieve boards in a specified Trello Workspace.\n\nUse this tool to get a list of all boards within a specific Trello Workspace by providing the workspace ID.", + "parameters": [ + { + "name": "workspace_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the Trello Workspace to retrieve boards from.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of board fields such as 'id', 'name', 'desc', etc. This determines which fields to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "board_filter", + "type": "string", + "required": false, + "description": "Specify `all` or a comma-separated list of `open`, `closed`, `members`, `organization`, `public` to filter board types.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-organizations-id-boards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ListWorkspaceBoards", + "parameters": { + "workspace_identifier": { + "value": "w1h2g3f4", + "type": "string", + "required": true + }, + "board_fields": { + "value": "id,name,desc", + "type": "string", + "required": false + }, + "board_filter": { + "value": "open", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWorkspaceMembers", + "qualifiedName": "TrelloApi.ListWorkspaceMembers", + "fullyQualifiedName": "TrelloApi.ListWorkspaceMembers@3.0.0", + "description": "Retrieve members of a Trello Workspace by ID.\n\nUse this tool to obtain a list of all members within a specific Trello Workspace by providing the workspace ID.", + "parameters": [ + { + "name": "workspace_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Trello Workspace to retrieve members from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-organizations-id-members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ListWorkspaceMembers", + "parameters": { + "workspace_id_or_name": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListWorkspaceMemberships", + "qualifiedName": "TrelloApi.ListWorkspaceMemberships", + "fullyQualifiedName": "TrelloApi.ListWorkspaceMemberships@3.0.0", + "description": "Retrieve memberships of a Trello Workspace.\n\nUse this tool to obtain a list of all memberships in a specified Trello Workspace. Useful for understanding who belongs to a Workspace and their roles.", + "parameters": [ + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Trello Workspace you want to retrieve memberships for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_member_objects", + "type": "boolean", + "required": false, + "description": "Whether to include Member objects with the Workspace memberships. `True` to include, `False` to exclude.", + "enum": null, + "inferrable": true + }, + { + "name": "membership_filter", + "type": "string", + "required": false, + "description": "Filter memberships: use `all` or a comma-separated list of `active`, `admin`, `deactivated`, `me`, `normal`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-organizations-id-memberships'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ListWorkspaceMemberships", + "parameters": { + "organization_id_or_name": { + "value": "my-trello-workspace", + "type": "string", + "required": true + }, + "include_member_objects": { + "value": true, + "type": "boolean", + "required": false + }, + "membership_filter": { + "value": "active,admin", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MakeMemberAdminEnterprise", + "qualifiedName": "TrelloApi.MakeMemberAdminEnterprise", + "fullyQualifiedName": "TrelloApi.MakeMemberAdminEnterprise@3.0.0", + "description": "Promote a member to admin in a Trello enterprise.\n\nCall this tool to make a specified member an admin of a Trello enterprise. Note that this endpoint is unavailable for enterprises using AdminHub for user management.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "The ID of the enterprise for which you want to promote a member to admin.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_to_promote", + "type": "string", + "required": true, + "description": "ID of the member to be promoted to admin of the enterprise.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-enterprises-id-admins-idmember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.MakeMemberAdminEnterprise", + "parameters": { + "enterprise_id": { + "value": "123456789abcdef", + "type": "string", + "required": true + }, + "member_id_to_promote": { + "value": "abcdef123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MarkAllNotificationsRead", + "qualifiedName": "TrelloApi.MarkAllNotificationsRead", + "fullyQualifiedName": "TrelloApi.MarkAllNotificationsRead@3.0.0", + "description": "Marks all Trello notifications as read.\n\nUse this tool to mark all notifications in Trello as read. This is useful for clearing unread notification indicators.", + "parameters": [ + { + "name": "mark_as_read", + "type": "boolean", + "required": false, + "description": "Specify true to mark notifications as read or false to mark as unread. Defaults to true.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of notification IDs to mark as read or unread. Useful for grouping related notifications.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-notifications-all-read'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.MarkAllNotificationsRead", + "parameters": { + "mark_as_read": { + "value": true, + "type": "boolean", + "required": false + }, + "notification_ids": { + "value": ["12345", "67890"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MarkNotificationAsUnread", + "qualifiedName": "TrelloApi.MarkNotificationAsUnread", + "fullyQualifiedName": "TrelloApi.MarkNotificationAsUnread@3.0.0", + "description": "Mark a Trello notification as unread.\n\nUse this tool to update the read status of a specific Trello notification to unread. Call this when you need to change a notification back to an unread state.", + "parameters": [ + { + "name": "notification_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello notification you want to mark as unread.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_read_status", + "type": "string", + "required": false, + "description": "Set this to an empty string to mark the notification as unread. This is a required field to change the read status.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-notifications-id-unread'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.MarkNotificationAsUnread", + "parameters": { + "notification_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "notification_read_status": { + "value": "", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MarkTrelloBoardAsViewed", + "qualifiedName": "TrelloApi.MarkTrelloBoardAsViewed", + "fullyQualifiedName": "TrelloApi.MarkTrelloBoardAsViewed@3.0.0", + "description": "Mark a Trello board as viewed to update status.\n\nUse this tool to mark a specific Trello board as viewed. This can be useful to update the current status of interaction with the board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board to mark as viewed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-boards-id-markedasviewed'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.MarkTrelloBoardAsViewed", + "parameters": { + "board_id": { + "value": "xYz1234abcd5678", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MarkTrelloCardNotificationsRead", + "qualifiedName": "TrelloApi.MarkTrelloCardNotificationsRead", + "fullyQualifiedName": "TrelloApi.MarkTrelloCardNotificationsRead@3.0.0", + "description": "Mark Trello card notifications as read.\n\nUse this tool to mark all notifications associated with a specific Trello card as read. Ideal for managing notification statuses efficiently.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card whose notifications need to be marked as read.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-cards-id-markassociatednotificationsread'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.MarkTrelloCardNotificationsRead", + "parameters": { + "card_id": { + "value": "5f3e2a4378e6c7071b5a9a9c", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyMemberNotificationsTrello", + "qualifiedName": "TrelloApi.ModifyMemberNotificationsTrello", + "fullyQualifiedName": "TrelloApi.ModifyMemberNotificationsTrello@3.0.0", + "description": "Update a member's blocked notification keys on Trello.\n\nUse this tool to update the blocked notification keys for a specific member's notification channel in Trello. It should be called when changes to notification preferences are required for a member.", + "parameters": [ + { + "name": "blocked_notification_keys", + "type": "string", + "required": true, + "description": "List the notification keys to block, either as a singular key or comma-separated list. Valid keys include: notification_comment_card, notification_added_a_due_date, notification_changed_due_date, and others.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member whose notification settings will be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_channel", + "type": "string", + "required": true, + "description": "Specify the channel to block notifications on, such as 'email'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-members-id-notificationChannelSettings-channel-blockedKeys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ModifyMemberNotificationsTrello", + "parameters": { + "blocked_notification_keys": { + "value": "notification_comment_card,notification_added_a_due_date", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john.doe@example", + "type": "string", + "required": true + }, + "notification_channel": { + "value": "email", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyTrelloComment", + "qualifiedName": "TrelloApi.ModifyTrelloComment", + "fullyQualifiedName": "TrelloApi.ModifyTrelloComment@3.0.0", + "description": "Update the text of a Trello comment action.\n\nUse this tool to modify the text of an existing comment in Trello by specifying the action ID.", + "parameters": [ + { + "name": "action_id_to_update", + "type": "string", + "required": true, + "description": "The ID of the Trello comment action to update.", + "enum": null, + "inferrable": true + }, + { + "name": "new_comment_text", + "type": "string", + "required": true, + "description": "Provide the new text for the Trello comment you wish to update.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-actions-id-text'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ModifyTrelloComment", + "parameters": { + "action_id_to_update": { + "value": "5f8f5a4e3e5c3b002a4e25d6", + "type": "string", + "required": true + }, + "new_comment_text": { + "value": "This comment has been updated with new information.", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ModifyTrelloWebhook", + "qualifiedName": "TrelloApi.ModifyTrelloWebhook", + "fullyQualifiedName": "TrelloApi.ModifyTrelloWebhook@3.0.0", + "description": "Updates a Trello webhook by its ID.\n\nUse this tool to update a specific Trello webhook when you need to modify its configuration or target URL. Useful for maintaining synchronization with external services.", + "parameters": [ + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The ID of the Trello webhook to update. This identifies which webhook's settings you want to modify.", + "enum": null, + "inferrable": true + }, + { + "name": "activate_webhook", + "type": "boolean", + "required": false, + "description": "Set to true to activate the webhook and enable sending POST requests, or false to deactivate.", + "enum": null, + "inferrable": true + }, + { + "name": "callback_url", + "type": "string", + "required": false, + "description": "A valid URL that is reachable with a `HEAD` and `POST` request, used to receive webhook data.", + "enum": null, + "inferrable": true + }, + { + "name": "model_id", + "type": "string", + "required": false, + "description": "ID of the model to be monitored for webhook updates.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_description", + "type": "string", + "required": false, + "description": "A string describing the webhook, with a length from 0 to 16384 characters.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-webhooks-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.ModifyTrelloWebhook", + "parameters": { + "webhook_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "activate_webhook": { + "value": true, + "type": "boolean", + "required": false + }, + "callback_url": { + "value": "https://example.com/webhook-endpoint", + "type": "string", + "required": false + }, + "model_id": { + "value": "model_456", + "type": "string", + "required": false + }, + "webhook_description": { + "value": "This webhook monitors updates to the project board.", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MoveTrelloListToBoard", + "qualifiedName": "TrelloApi.MoveTrelloListToBoard", + "fullyQualifiedName": "TrelloApi.MoveTrelloListToBoard@3.0.0", + "description": "Reorganize Trello by moving a list to another board.\n\nUse this tool to transfer a Trello list from one board to another, helping in organizing and restructuring your projects more efficiently.", + "parameters": [ + { + "name": "board_id_for_list_movement", + "type": "string", + "required": true, + "description": "The ID of the board to which the Trello list should be moved.", + "enum": null, + "inferrable": true + }, + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello list to be moved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-id-idboard'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.MoveTrelloListToBoard", + "parameters": { + "board_id_for_list_movement": { + "value": "5f50c31e3a4fff6a7c0a4b1b", + "type": "string", + "required": true + }, + "list_id": { + "value": "5f50c3223a4fff6a7c0a4b1c", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveCardSticker", + "qualifiedName": "TrelloApi.RemoveCardSticker", + "fullyQualifiedName": "TrelloApi.RemoveCardSticker@3.0.0", + "description": "Removes a specified sticker from a Trello card.\n\nUse this tool to remove a specific sticker from a Trello card by providing the card and sticker identifiers.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card from which the sticker will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_id", + "type": "string", + "required": true, + "description": "The ID of the sticker to be removed from the specified Trello card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-cards-id-stickers-idsticker'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RemoveCardSticker", + "parameters": { + "card_id": { + "value": "5f3e8b1b6bcf230f4a5687e8", + "type": "string", + "required": true + }, + "sticker_id": { + "value": "5f3e8b1b6bcf230f4a5687e9", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveChecklistItem", + "qualifiedName": "TrelloApi.RemoveChecklistItem", + "fullyQualifiedName": "TrelloApi.RemoveChecklistItem@3.0.0", + "description": "Remove an item from a Trello checklist.\n\nUse this tool to delete a specific item from a checklist in Trello, identified by its ID and the checklist ID.", + "parameters": [ + { + "name": "check_item_id", + "type": "string", + "required": true, + "description": "The ID of the specific checklist item to be removed from Trello.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "ID of the checklist from which the item will be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-checklists-id-checkitems-idcheckitem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RemoveChecklistItem", + "parameters": { + "check_item_id": { + "value": "5f46d4f8e39c2b001f2d5a67", + "type": "string", + "required": true + }, + "checklist_id": { + "value": "5f46d4f8e39c2b001f2d5a68", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveCustomBoardBackground", + "qualifiedName": "TrelloApi.RemoveCustomBoardBackground", + "fullyQualifiedName": "TrelloApi.RemoveCustomBoardBackground@3.0.0", + "description": "Delete a specific custom board background.\n\nUse this tool to remove a specific custom board background for a member on Trello. Call this when you want to delete an unwanted or outdated board background to maintain organization.", + "parameters": [ + { + "name": "custom_background_id", + "type": "string", + "required": true, + "description": "The ID of the custom board background to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the member whose custom board background will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-members-id-customboardbackgrounds-idbackground'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RemoveCustomBoardBackground", + "parameters": { + "custom_background_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveEmailDomainRestriction", + "qualifiedName": "TrelloApi.RemoveEmailDomainRestriction", + "fullyQualifiedName": "TrelloApi.RemoveEmailDomainRestriction@3.0.0", + "description": "Remove email domain restriction for Workspace invites.\n\nThis tool removes the restriction on which email domains can be invited to a Trello Workspace, allowing more flexible invitation policies.", + "parameters": [ + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Trello organization to remove the email domain restriction from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-organizations-id-prefs-orginviterestrict'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RemoveEmailDomainRestriction", + "parameters": { + "organization_id_or_name": { + "value": "example_org_name", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveEnterpriseAdmin", + "qualifiedName": "TrelloApi.RemoveEnterpriseAdmin", + "fullyQualifiedName": "TrelloApi.RemoveEnterpriseAdmin@3.0.0", + "description": "Remove a member as admin from an enterprise.\n\nUse this tool to remove a specific member from the admin role within an enterprise on Trello. Note that this endpoint is unavailable for enterprises using AdminHub for user management.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "The Trello Enterprise ID from which to remove the member as admin.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_to_remove", + "type": "string", + "required": true, + "description": "ID of the member to be removed as an admin from the enterprise.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'enterprises-id-organizations-idmember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RemoveEnterpriseAdmin", + "parameters": { + "enterprise_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "member_id_to_remove": { + "value": "user789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveLabelFromTrelloCard", + "qualifiedName": "TrelloApi.RemoveLabelFromTrelloCard", + "fullyQualifiedName": "TrelloApi.RemoveLabelFromTrelloCard@3.0.0", + "description": "Remove a specific label from a Trello card.\n\nUse this tool to delete a label from a specific Trello card. It should be called when there's a need to manage labels by removing one from a card.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello card from which the label will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "label_id_to_remove", + "type": "string", + "required": true, + "description": "The ID of the label you want to remove from the Trello card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-cards-id-idlabels-idlabel'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RemoveLabelFromTrelloCard", + "parameters": { + "card_id": { + "value": "5e3d9f5f91e6b2d123456789", + "type": "string", + "required": true + }, + "label_id_to_remove": { + "value": "5e3d9f5f91e6b2d1234567ab", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveMemberFromCard", + "qualifiedName": "TrelloApi.RemoveMemberFromCard", + "fullyQualifiedName": "TrelloApi.RemoveMemberFromCard@3.0.0", + "description": "Removes a member from a Trello card.\n\nUse this tool to remove a specific member from a Trello card by providing the card ID and the member ID.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello card from which the member will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_to_remove", + "type": "string", + "required": true, + "description": "The ID of the member to remove from the Trello card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-id-idmembers-idmember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RemoveMemberFromCard", + "parameters": { + "card_id": { + "value": "5e3a2cf59f1234567890abcd", + "type": "string", + "required": true + }, + "member_id_to_remove": { + "value": "5e3a2cf59f1234567890efgh", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveMemberFromTrelloBoard", + "qualifiedName": "TrelloApi.RemoveMemberFromTrelloBoard", + "fullyQualifiedName": "TrelloApi.RemoveMemberFromTrelloBoard@3.0.0", + "description": "Remove a member from a specified Trello board.\n\nUse this tool to delete a member from a Trello board by specifying the board and member IDs.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The ID of the Trello board from which to remove a member.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_to_remove", + "type": "string", + "required": true, + "description": "The ID of the member to remove from the Trello board.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'boardsidmembersidmember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RemoveMemberFromTrelloBoard", + "parameters": { + "board_id": { + "value": "5f3a56e9b7c43d2b29f4b98f", + "type": "string", + "required": true + }, + "member_id_to_remove": { + "value": "5f4c1234b7a564e7d9a73764", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveMemberFromWorkspace", + "qualifiedName": "TrelloApi.RemoveMemberFromWorkspace", + "fullyQualifiedName": "TrelloApi.RemoveMemberFromWorkspace@3.0.0", + "description": "Remove a member from a Trello Workspace.\n\nUse this tool to remove a specific member from a Trello Workspace by providing the workspace and member IDs.", + "parameters": [ + { + "name": "member_id", + "type": "string", + "required": true, + "description": "The ID of the member to remove from the Trello Workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the Trello Workspace to identify the organization for removal of a member.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-organizations-id-members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RemoveMemberFromWorkspace", + "parameters": { + "member_id": { + "value": "5f1a2e6b6c7f7b0a9d5b2f8c", + "type": "string", + "required": true + }, + "workspace_identifier": { + "value": "5f1a2e6b6c7f7b0a9d5b2e3d", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveMemberVote", + "qualifiedName": "TrelloApi.RemoveMemberVote", + "fullyQualifiedName": "TrelloApi.RemoveMemberVote@3.0.0", + "description": "Remove a member's vote from a Trello card.\n\nUse this tool to remove a specific member's vote from a specified card in Trello. It is useful for managing voting permissions on cards.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card from which to remove the vote.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_to_remove_vote", + "type": "string", + "required": true, + "description": "The ID of the member whose vote is to be removed from the Trello card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-cards-id-membersvoted-idmember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RemoveMemberVote", + "parameters": { + "card_id": { + "value": "5abcdef1234567890abcde12", + "type": "string", + "required": true + }, + "member_id_to_remove_vote": { + "value": "1234567890abcdefghij1234", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveOrganizationFromEnterprise", + "qualifiedName": "TrelloApi.RemoveOrganizationFromEnterprise", + "fullyQualifiedName": "TrelloApi.RemoveOrganizationFromEnterprise@3.0.0", + "description": "Remove an organization from a Trello enterprise.\n\nThis tool removes a specified organization from a Trello enterprise. It should be called when you need to delete an association between an organization and an enterprise in Trello.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "The ID of the Trello enterprise from which the organization will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id_to_remove", + "type": "string", + "required": true, + "description": "The ID of the organization to be removed from the Trello enterprise.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-enterprises-id-organizations-idorg'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RemoveOrganizationFromEnterprise", + "parameters": { + "enterprise_id": { + "value": "ent_1234567890abcdef", + "type": "string", + "required": true + }, + "organization_id_to_remove": { + "value": "org_abcdef1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveTrelloWebhook", + "qualifiedName": "TrelloApi.RemoveTrelloWebhook", + "fullyQualifiedName": "TrelloApi.RemoveTrelloWebhook@3.0.0", + "description": "Delete a Trello webhook by ID.\n\nUse this tool to delete a specific webhook in Trello by providing its ID.", + "parameters": [ + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The ID of the Trello webhook you want to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-webhooks-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RemoveTrelloWebhook", + "parameters": { + "webhook_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveWorkspaceDomain", + "qualifiedName": "TrelloApi.RemoveWorkspaceDomain", + "fullyQualifiedName": "TrelloApi.RemoveWorkspaceDomain@3.0.0", + "description": "Remove the associated Google Apps domain from a Workspace.\n\nThis tool removes the associated Google Apps domain from a specified Trello Workspace. Use this when you need to dissociate a Google Apps domain from an organization.", + "parameters": [ + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Trello organization to dissociate the Google Apps domain from.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-organizations-id-prefs-associateddomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RemoveWorkspaceDomain", + "parameters": { + "organization_id_or_name": { + "value": "my-trello-organization", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RenameTrelloList", + "qualifiedName": "TrelloApi.RenameTrelloList", + "fullyQualifiedName": "TrelloApi.RenameTrelloList@3.0.0", + "description": "Renames a Trello list by its ID.\n\nUse this tool to update the name of a specific Trello list. Call this when you need to change a list's title by specifying its ID.", + "parameters": [ + { + "name": "list_field_to_update", + "type": "string", + "required": true, + "description": "Specifies the list field to update, such as 'name', 'pos', or 'subscribed'.", + "enum": null, + "inferrable": true + }, + { + "name": "trello_list_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello list you want to rename.", + "enum": null, + "inferrable": true + }, + { + "name": "new_list_name", + "type": "string", + "required": false, + "description": "The new name for the Trello list. Provide a descriptive and clear title to easily identify the list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-lists-id-field'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RenameTrelloList", + "parameters": { + "list_field_to_update": { + "value": "name", + "type": "string", + "required": true + }, + "trello_list_id": { + "value": "5f47ac8e6a7cde001e6b8a91", + "type": "string", + "required": true + }, + "new_list_name": { + "value": "Updated Project Milestones", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveOrganizationExports", + "qualifiedName": "TrelloApi.RetrieveOrganizationExports", + "fullyQualifiedName": "TrelloApi.RetrieveOrganizationExports@3.0.0", + "description": "Retrieve exports for a Trello organization.\n\nThis tool should be called to get a list of exports that exist for a specific Trello organization. It returns the exports associated with the specified organization ID.", + "parameters": [ + { + "name": "workspace_identifier", + "type": "string", + "required": true, + "description": "The identifier for the Trello Workspace, which can be either its ID or name.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-organizations-id-exports'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RetrieveOrganizationExports", + "parameters": { + "workspace_identifier": { + "value": "example_workspace_id", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTokenWebhooks", + "qualifiedName": "TrelloApi.RetrieveTokenWebhooks", + "fullyQualifiedName": "TrelloApi.RetrieveTokenWebhooks@3.0.0", + "description": "Retrieve all webhooks created with a specific token.\n\nUse this tool to get a list of all webhooks associated with a given Trello token. This is useful for managing and reviewing webhook integrations.", + "parameters": [ + { + "name": "trello_token", + "type": "string", + "required": true, + "description": "The Trello token used to retrieve associated webhooks. It identifies the user's session and permissions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-tokens-token-webhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RetrieveTokenWebhooks", + "parameters": { + "trello_token": { + "value": "your_trello_token_here", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTrelloTokenInfo", + "qualifiedName": "TrelloApi.RetrieveTrelloTokenInfo", + "fullyQualifiedName": "TrelloApi.RetrieveTrelloTokenInfo@3.0.0", + "description": "Retrieve information about a Trello token.\n\nUse this tool to obtain details about a specific Trello token. Ideal for checking token-related data when handling Trello API integrations.", + "parameters": [ + { + "name": "trello_token", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello token to retrieve information about.", + "enum": null, + "inferrable": true + }, + { + "name": "include_webhooks", + "type": "boolean", + "required": false, + "description": "Set to true to include webhooks in the response; false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of fields: dateCreated, dateExpires, idMember, identifier, permissions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-tokens-token'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RetrieveTrelloTokenInfo", + "parameters": { + "trello_token": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "include_webhooks": { + "value": true, + "type": "boolean", + "required": false + }, + "retrieve_fields": { + "value": "dateCreated,dateExpires,idMember", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveTrelloWebhook", + "qualifiedName": "TrelloApi.RetrieveTrelloWebhook", + "fullyQualifiedName": "TrelloApi.RetrieveTrelloWebhook@3.0.0", + "description": "Retrieve details of a specific Trello webhook.\n\nUse this tool to obtain information about a webhook created with a Trello token. It should be called when you need to access detailed information about a particular Trello webhook associated with a token.", + "parameters": [ + { + "name": "trello_token", + "type": "string", + "required": true, + "description": "The Trello API token used to authenticate the request and retrieve the webhook details.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The ID of the Trello webhook you want to retrieve details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-tokens-token-webhooks-idwebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.RetrieveTrelloWebhook", + "parameters": { + "trello_token": { + "value": "xyz123abc456def789gh0", + "type": "string", + "required": true + }, + "webhook_id": { + "value": "hook_1234567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchTrelloMembers", + "qualifiedName": "TrelloApi.SearchTrelloMembers", + "fullyQualifiedName": "TrelloApi.SearchTrelloMembers@3.0.0", + "description": "Search and retrieve Trello member information.\n\nUse this tool to search for and retrieve information about Trello members based on specified criteria. It helps in finding users within Trello efficiently.", + "parameters": [ + { + "name": "search_query", + "type": "string", + "required": true, + "description": "The search term for finding Trello members, between 1 and 16384 characters long.", + "enum": null, + "inferrable": true + }, + { + "name": "board_id", + "type": "string", + "required": false, + "description": "The ID of the Trello board to filter members by. Leave empty to include all boards.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": false, + "description": "Unique identifier for the organization to filter the search results. Use this to limit the search to members within a specific organization.", + "enum": null, + "inferrable": true + }, + { + "name": "restrict_to_organization_members", + "type": "boolean", + "required": false, + "description": "If true, limit the search results to include only members of the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of Trello member search results to return, with a maximum of 20.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-search-members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.SearchTrelloMembers", + "parameters": { + "search_query": { + "value": "john.doe@example.com", + "type": "string", + "required": true + }, + "board_id": { + "value": "5d5f54b4e1d0f6754fcd3d26", + "type": "string", + "required": false + }, + "organization_id": { + "value": "5f4e2b77f8c3c5f20d10e15a", + "type": "string", + "required": false + }, + "restrict_to_organization_members": { + "value": true, + "type": "boolean", + "required": false + }, + "result_limit": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SetTrelloEmailListDefault", + "qualifiedName": "TrelloApi.SetTrelloEmailListDefault", + "fullyQualifiedName": "TrelloApi.SetTrelloEmailListDefault@3.0.0", + "description": "Change the default email-to-board list in Trello.\n\nUse this tool to set a new default list for email-to-board cards in a specified Trello board. This can be helpful when organizing how incoming email tasks are managed within Trello boards.", + "parameters": [ + { + "name": "board_id_to_update", + "type": "string", + "required": true, + "description": "The ID of the Trello board that you want to update the default email-to-board list for. This is required to specify which board's preferences are being changed.", + "enum": null, + "inferrable": true + }, + { + "name": "email_list_id", + "type": "string", + "required": true, + "description": "The ID of the email list to set as default for email-to-board cards.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-boards-id-myprefs-idemaillist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.SetTrelloEmailListDefault", + "parameters": { + "board_id_to_update": { + "value": "5f1a3b2c1f1234567890abcd", + "type": "string", + "required": true + }, + "email_list_id": { + "value": "5f1a3b2c1f1234567890efgh", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SetWorkplaceLogo", + "qualifiedName": "TrelloApi.SetWorkplaceLogo", + "fullyQualifiedName": "TrelloApi.SetWorkplaceLogo@3.0.0", + "description": "Set the logo image for a Workspace.\n\nThis tool allows setting or updating the logo image for a specified Trello Workspace. Use it when you need to change the visual branding of a Workspace by uploading a new logo.", + "parameters": [ + { + "name": "workspace_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the Trello Workspace for which to set the logo.", + "enum": null, + "inferrable": true + }, + { + "name": "logo_image_file", + "type": "string", + "required": false, + "description": "The image file to set as the Workspace logo. Provide the file path or URL of the image.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-organizations-id-logo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.SetWorkplaceLogo", + "parameters": { + "workspace_identifier": { + "value": "my_workspace_id", + "type": "string", + "required": true + }, + "logo_image_file": { + "value": "https://example.com/path/to/logo.png", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "StartOrganizationCsvExport", + "qualifiedName": "TrelloApi.StartOrganizationCsvExport", + "fullyQualifiedName": "TrelloApi.StartOrganizationCsvExport@3.0.0", + "description": "Initiate CSV export for a Trello organization.\n\nUse this tool to start exporting organization data into a CSV file in Trello. Call this when an organization needs its data exported for analysis or backup. Returns a confirmation of the export initiation.", + "parameters": [ + { + "name": "workspace_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Trello Workspace to export data from.", + "enum": null, + "inferrable": true + }, + { + "name": "include_attachments", + "type": "boolean", + "required": false, + "description": "Set to true to include attachments in the CSV export, otherwise set to false.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-organizations-id-exports'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.StartOrganizationCsvExport", + "parameters": { + "workspace_id_or_name": { + "value": "My Organization", + "type": "string", + "required": true + }, + "include_attachments": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "StarTrelloBoardForMember", + "qualifiedName": "TrelloApi.StarTrelloBoardForMember", + "fullyQualifiedName": "TrelloApi.StarTrelloBoardForMember@3.0.0", + "description": "Star a Trello board on behalf of a specified member.\n\nThis tool stars a new board in Trello for a specific member. It should be called when a user wants to mark a board as important or favorite on behalf of another member.", + "parameters": [ + { + "name": "board_id_to_star", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board to be starred.", + "enum": null, + "inferrable": true + }, + { + "name": "board_star_position", + "type": "string", + "required": true, + "description": "Specify the position of the starred board: `top`, `bottom`, or a positive float for custom positioning.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member for whom the board is being starred.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-members-id-boardstars'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.StarTrelloBoardForMember", + "parameters": { + "board_id_to_star": { + "value": "5f3f1a6e5f4d4a3b1c5a1e4b3a5f2c1d", + "type": "string", + "required": true + }, + "board_star_position": { + "value": "top", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TransferOrganizationToEnterprise", + "qualifiedName": "TrelloApi.TransferOrganizationToEnterprise", + "fullyQualifiedName": "TrelloApi.TransferOrganizationToEnterprise@3.0.0", + "description": "Transfer an organization to an enterprise.\n\nThis tool is used to initiate the transfer of an organization to a specified enterprise in Trello. For enterprises using AdminHub for user management, the addition is processed asynchronously. A successful response only confirms request receipt, not the completion of the transfer.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "The ID of the Enterprise to which the organization will be transferred.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id", + "type": "string", + "required": true, + "description": "ID of the organization to be transferred to the enterprise in Trello.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-enterprises-id-organizations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.TransferOrganizationToEnterprise", + "parameters": { + "enterprise_id": { + "value": "ent_1234567890abcdef", + "type": "string", + "required": true + }, + "organization_id": { + "value": "org_abcdef1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TrelloGetBatchRequests", + "qualifiedName": "TrelloApi.TrelloGetBatchRequests", + "fullyQualifiedName": "TrelloApi.TrelloGetBatchRequests@3.0.0", + "description": "Retrieve up to 10 resources with a single batched request.\n\nUse this tool to efficiently fetch up to 10 resources from Trello in a single API call by batching multiple GET requests.", + "parameters": [ + { + "name": "urls_list_for_batching", + "type": "string", + "required": true, + "description": "A list of up to 10 API routes, each beginning with a forward slash. Exclude the API version number. Example: '/members/trello', '/cards/[cardId]'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-batch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.TrelloGetBatchRequests", + "parameters": { + "urls_list_for_batching": { + "value": "/boards/abc123/cards,/lists/xyz789,/members/johnDoe,/labels/green,/cards/def456,/boards/ghi789/members,/cards/abc123/comments,/lists/jkl012/cards,/members/mikeSmith,/boards/nop345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TrelloMoveAllCardsInList", + "qualifiedName": "TrelloApi.TrelloMoveAllCardsInList", + "fullyQualifiedName": "TrelloApi.TrelloMoveAllCardsInList@3.0.0", + "description": "Move all cards from one list to another in Trello.\n\nUse this tool when you need to move all cards from one Trello list to another. It facilitates bulk card transfer within a board.", + "parameters": [ + { + "name": "destination_board_id", + "type": "string", + "required": true, + "description": "The board ID where the cards will be moved to.", + "enum": null, + "inferrable": true + }, + { + "name": "source_list_id", + "type": "string", + "required": true, + "description": "The ID of the list from which all cards will be moved.", + "enum": null, + "inferrable": true + }, + { + "name": "target_list_id", + "type": "string", + "required": true, + "description": "The ID of the Trello list to which all cards should be moved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-lists-id-moveallcards'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.TrelloMoveAllCardsInList", + "parameters": { + "destination_board_id": { + "value": "5a3d12f9e5b0c4c52413b5a8", + "type": "string", + "required": true + }, + "source_list_id": { + "value": "5a3d12f9e5b0c4c52413b5a9", + "type": "string", + "required": true + }, + "target_list_id": { + "value": "5a3d12f9e5b0c4c52413b5b0", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TrelloSearch", + "qualifiedName": "TrelloApi.TrelloSearch", + "fullyQualifiedName": "TrelloApi.TrelloSearch@3.0.0", + "description": "Search for information within Trello.\n\nUse this tool to find cards, boards, members, and other elements in Trello by searching with specific keywords.", + "parameters": [ + { + "name": "search_query", + "type": "string", + "required": true, + "description": "The search query string, with a length between 1 and 16384 characters.", + "enum": null, + "inferrable": true + }, + { + "name": "board_fields_selection", + "type": "string", + "required": false, + "description": "Comma-separated list of board fields to return or 'all' for every field. Options include: closed, dateLastActivity, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "board_identifiers", + "type": "string", + "required": false, + "description": "Specify 'mine' to search all your boards or provide a comma-separated list of Board IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "card_fields", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of card fields like 'badges', 'desc', 'labels'. Defaults to 'all' if omitted.", + "enum": null, + "inferrable": true + }, + { + "name": "card_ids", + "type": "string", + "required": false, + "description": "Comma-separated list of Trello Card IDs to search within.", + "enum": null, + "inferrable": true + }, + { + "name": "cards_page_number", + "type": "number", + "required": false, + "description": "Specify the page number for card search results. Maximum value is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_partial_search", + "type": "boolean", + "required": false, + "description": "Enable partial search to match content starting with words in your query, allowing for more flexible search results.", + "enum": null, + "inferrable": true + }, + { + "name": "include_card_attachments", + "type": "string", + "required": false, + "description": "Specify 'true' to include all attachment objects, 'cover' for only card cover attachments, or 'false' for no attachments.", + "enum": null, + "inferrable": true + }, + { + "name": "include_card_list", + "type": "boolean", + "required": false, + "description": "Include the parent list with card results. A boolean value (true or false).", + "enum": null, + "inferrable": true + }, + { + "name": "include_card_members", + "type": "boolean", + "required": false, + "description": "Include member objects with card results if set to true; exclude them if false.", + "enum": null, + "inferrable": true + }, + { + "name": "include_card_stickers", + "type": "boolean", + "required": false, + "description": "Set to true to include sticker objects with card results. Set to false to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "include_parent_board_with_card_results", + "type": "boolean", + "required": false, + "description": "Set to true to include parent board details in card results.", + "enum": null, + "inferrable": true + }, + { + "name": "include_parent_organization_with_board_results", + "type": "boolean", + "required": false, + "description": "Include the parent organization in the board results. Set to true to include, false to exclude.", + "enum": null, + "inferrable": true + }, + { + "name": "max_members_returned", + "type": "integer", + "required": false, + "description": "The maximum number of members to return in the search results. Maximum value is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "max_workspaces_to_return", + "type": "integer", + "required": false, + "description": "The maximum number of Workspaces to return. Accepts an integer up to 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_boards_returned", + "type": "integer", + "required": false, + "description": "The maximum number of boards to return. Must be an integer up to 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_cards_to_return", + "type": "integer", + "required": false, + "description": "The maximum number of cards to return. Maximum value is 1000.", + "enum": null, + "inferrable": true + }, + { + "name": "member_fields_selection", + "type": "string", + "required": false, + "description": "Specify which member fields to return. Options: `all` or a comma-separated list of: avatarHash, bio, bioData, confirmed, fullName, idPremOrgsAdmin, initials, memberType, products, status, url, username.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_fields_to_return", + "type": "string", + "required": false, + "description": "Specify 'all' or a comma-separated list of organization attributes like 'billableMemberCount', 'desc', 'displayName', etc., to include in the results.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_ids", + "type": "string", + "required": false, + "description": "A comma-separated list of Trello Organization IDs to filter the search results.", + "enum": null, + "inferrable": true + }, + { + "name": "trello_object_types", + "type": "string", + "required": false, + "description": "Specify types of Trello objects to search, such as 'all', 'actions', 'boards', 'cards', 'members', or 'organizations'. Use a comma-separated list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-search'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.TrelloSearch", + "parameters": { + "search_query": { + "value": "project updates", + "type": "string", + "required": true + }, + "board_fields_selection": { + "value": "all", + "type": "string", + "required": false + }, + "board_identifiers": { + "value": "mine", + "type": "string", + "required": false + }, + "card_fields": { + "value": "desc,due,labels", + "type": "string", + "required": false + }, + "card_ids": { + "value": "1234567890abcdef,abcdef1234567890", + "type": "string", + "required": false + }, + "cards_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "enable_partial_search": { + "value": true, + "type": "boolean", + "required": false + }, + "include_card_attachments": { + "value": "true", + "type": "string", + "required": false + }, + "include_card_list": { + "value": true, + "type": "boolean", + "required": false + }, + "include_card_members": { + "value": false, + "type": "boolean", + "required": false + }, + "include_card_stickers": { + "value": false, + "type": "boolean", + "required": false + }, + "include_parent_board_with_card_results": { + "value": true, + "type": "boolean", + "required": false + }, + "include_parent_organization_with_board_results": { + "value": false, + "type": "boolean", + "required": false + }, + "max_members_returned": { + "value": 50, + "type": "integer", + "required": false + }, + "max_workspaces_to_return": { + "value": 100, + "type": "integer", + "required": false + }, + "maximum_boards_returned": { + "value": 10, + "type": "integer", + "required": false + }, + "maximum_cards_to_return": { + "value": 20, + "type": "integer", + "required": false + }, + "member_fields_selection": { + "value": "fullName,username", + "type": "string", + "required": false + }, + "organization_fields_to_return": { + "value": "all", + "type": "string", + "required": false + }, + "organization_ids": { + "value": "org123,org456", + "type": "string", + "required": false + }, + "trello_object_types": { + "value": "all", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UnstarBoard", + "qualifiedName": "TrelloApi.UnstarBoard", + "fullyQualifiedName": "TrelloApi.UnstarBoard@3.0.0", + "description": "Unstar a Trello board for a specific member.\n\nUse this tool to remove a star from a board on Trello for a specified member. Call this when a user wants to unstar a board they previously starred.", + "parameters": [ + { + "name": "board_star_id", + "type": "string", + "required": true, + "description": "The unique ID of the board star to be removed for a specific member.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member who wants to unstar the board.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-members-id-boardstars-idstar'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UnstarBoard", + "parameters": { + "board_star_id": { + "value": "5d5f5efc6c7f2d0d65e2d335", + "type": "string", + "required": true + }, + "member_id": { + "value": "abcd1234efgh5678", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateBoardBackground", + "qualifiedName": "TrelloApi.UpdateBoardBackground", + "fullyQualifiedName": "TrelloApi.UpdateBoardBackground@3.0.0", + "description": "Update the background of a Trello board.\n\nUse this tool to update the background image or color of a specific Trello board associated with a member.", + "parameters": [ + { + "name": "board_background_id", + "type": "string", + "required": true, + "description": "ID of the board background to update.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member associated with the board to update.", + "enum": null, + "inferrable": true + }, + { + "name": "background_brightness", + "type": "string", + "required": false, + "description": "Set the brightness level for the board background. Options are `dark`, `light`, or `unknown`.", + "enum": null, + "inferrable": true + }, + { + "name": "tile_background", + "type": "boolean", + "required": false, + "description": "Set to true to tile the board background. False to not tile it.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-members-id-boardbackgrounds-idbackground'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateBoardBackground", + "parameters": { + "board_background_id": { + "value": "5f1e049b912d9b24a8c3e2c4", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + }, + "background_brightness": { + "value": "light", + "type": "string", + "required": false + }, + "tile_background": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateBoardEmailPosition", + "qualifiedName": "TrelloApi.UpdateBoardEmailPosition", + "fullyQualifiedName": "TrelloApi.UpdateBoardEmailPosition@3.0.0", + "description": "Update the email position preference on a Trello board.\n\nThis tool updates the email position preference for a specified Trello board. It should be called when you need to change the email notification position settings on a board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board to update the email position preference for.", + "enum": null, + "inferrable": true + }, + { + "name": "email_position", + "type": "string", + "required": true, + "description": "Position of the email address on a board. Valid values: bottom, top.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-boards-id-myprefs-emailposition'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateBoardEmailPosition", + "parameters": { + "board_id": { + "value": "123abc456def", + "type": "string", + "required": true + }, + "email_position": { + "value": "top", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateBoardMembership", + "qualifiedName": "TrelloApi.UpdateBoardMembership", + "fullyQualifiedName": "TrelloApi.UpdateBoardMembership@3.0.0", + "description": "Update a specific board membership by ID.\n\nUse this tool to update the membership details of a specific board in Trello by providing the board ID and membership ID. It allows modification of existing membership properties on a board.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The ID of the Trello board you want to update the membership for.", + "enum": null, + "inferrable": true + }, + { + "name": "membership_id", + "type": "string", + "required": true, + "description": "The ID of a membership to be updated on the board.", + "enum": null, + "inferrable": true + }, + { + "name": "membership_type", + "type": "string", + "required": true, + "description": "Specifies the role of the member on the board. Choose one of: admin, normal, observer.", + "enum": null, + "inferrable": true + }, + { + "name": "member_fields_to_update", + "type": "string", + "required": false, + "description": "Specify the member fields to update, such as avatarHash, bio, fullName, or all. Valid values include: all, avatarHash, bio, bioData, confirmed, fullName, idPremOrgsAdmin, initials, memberType, products, status, url, username.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-boards-id-memberships-idmembership'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateBoardMembership", + "parameters": { + "board_id": { + "value": "5e3b796b12f30c4a6a19bf35", + "type": "string", + "required": true + }, + "membership_id": { + "value": "5e4e3a4a612b4b003a1c8f73", + "type": "string", + "required": true + }, + "membership_type": { + "value": "admin", + "type": "string", + "required": true + }, + "member_fields_to_update": { + "value": "fullName", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCardComment", + "qualifiedName": "TrelloApi.UpdateCardComment", + "fullyQualifiedName": "TrelloApi.UpdateCardComment@3.0.0", + "description": "Update an existing comment on a Trello card.\n\nUse this tool to modify an existing comment on a specific Trello card. It should be called when you want to change the content of a previously made comment.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello card where the comment resides.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_action_id", + "type": "string", + "required": true, + "description": "The unique ID of the comment action you wish to update on a Trello card.", + "enum": null, + "inferrable": true + }, + { + "name": "new_comment_text", + "type": "string", + "required": true, + "description": "The new text content for the comment being updated on the Trello card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-cards-id-actions-idaction-comments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateCardComment", + "parameters": { + "card_id": { + "value": "5e2f3ac1a72f3b6ad9e4f4c1", + "type": "string", + "required": true + }, + "comment_action_id": { + "value": "60d5f9a2c14f393bf8b0e5c0", + "type": "string", + "required": true + }, + "new_comment_text": { + "value": "Updated comment text for the Trello card.", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateChecklistField", + "qualifiedName": "TrelloApi.UpdateChecklistField", + "fullyQualifiedName": "TrelloApi.UpdateChecklistField@3.0.0", + "description": "Updates a specific field of a checklist on Trello.\n\nThis tool updates a specified field on an existing checklist in Trello by its ID. It should be used when modifications to checklist attributes are needed.", + "parameters": [ + { + "name": "checklist_field", + "type": "string", + "required": true, + "description": "Specify the checklist field to update. Options are 'name' or 'pos'.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "ID of the checklist to be updated. This is required to specify which checklist field to modify.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_name_value", + "type": "string", + "required": true, + "description": "The new name for the checklist. Must be a string of length 1 to 16384.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-checklists-id-field'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateChecklistField", + "parameters": { + "checklist_field": { + "value": "name", + "type": "string", + "required": true + }, + "checklist_id": { + "value": "abcdef123456", + "type": "string", + "required": true + }, + "checklist_name_value": { + "value": "Updated Checklist Name", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateChecklistItemTrello", + "qualifiedName": "TrelloApi.UpdateChecklistItemTrello", + "fullyQualifiedName": "TrelloApi.UpdateChecklistItemTrello@3.0.0", + "description": "Update an item in a Trello checklist on a card.\n\nThis tool updates an item within a checklist on a specified Trello card. Use it to modify checklist entries when changes are needed.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card where the checklist item is located.", + "enum": null, + "inferrable": true + }, + { + "name": "checkitem_id", + "type": "string", + "required": true, + "description": "The unique identifier for the checklist item to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "checkitem_due_reminder", + "type": "number", + "required": false, + "description": "The number of minutes before the due date when a reminder should be sent for the checkitem.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_id", + "type": "string", + "required": false, + "description": "The unique ID of the checklist containing the item to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_item_due_date", + "type": "string", + "required": false, + "description": "The due date for the checklist item in ISO 8601 format (e.g., '2023-12-31T23:59:59Z').", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_item_new_name", + "type": "string", + "required": false, + "description": "The new name for the checklist item.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_item_position", + "type": "string", + "required": false, + "description": "Specify the position of the checklist item as `top`, `bottom`, or a positive float for custom ordering.", + "enum": null, + "inferrable": true + }, + { + "name": "completion_state", + "type": "string", + "required": false, + "description": "Specify the state of the checklist item as either `complete` or `incomplete`.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_to_remove", + "type": "string", + "required": false, + "description": "The Trello member ID to remove from the card's checklist item.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-cards-id-checkitem-idcheckitem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateChecklistItemTrello", + "parameters": { + "card_id": { + "value": "5f6b8f4a7c627e6d1e2a4c7b", + "type": "string", + "required": true + }, + "checkitem_id": { + "value": "5f6b8f4a4a3e8a233c8a9dff", + "type": "string", + "required": true + }, + "checkitem_due_reminder": { + "value": 30, + "type": "integer", + "required": false + }, + "checklist_id": { + "value": "5f6b8f4a3f5d2c8d9b1d1a3a", + "type": "string", + "required": false + }, + "checklist_item_due_date": { + "value": "2023-12-31T23:59:59Z", + "type": "string", + "required": false + }, + "checklist_item_new_name": { + "value": "Updated Checklist Item", + "type": "string", + "required": false + }, + "checklist_item_position": { + "value": "top", + "type": "string", + "required": false + }, + "completion_state": { + "value": "incomplete", + "type": "string", + "required": false + }, + "member_id_to_remove": { + "value": "5f6b8f4a2a2e8a3a7c2b1e4c", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCustomBoardBackground", + "qualifiedName": "TrelloApi.UpdateCustomBoardBackground", + "fullyQualifiedName": "TrelloApi.UpdateCustomBoardBackground@3.0.0", + "description": "Update a specific custom board background in Trello.\n\nThis tool is used to update a custom board background for a Trello member. It should be called when a user wants to change the background of a board to a new custom image.", + "parameters": [ + { + "name": "custom_background_id", + "type": "string", + "required": true, + "description": "The ID of the custom board background to be updated in Trello.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The Trello ID or username of the member whose board background will be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "background_brightness", + "type": "string", + "required": false, + "description": "Set the brightness of the custom board background. Options: 'dark', 'light', 'unknown'.", + "enum": null, + "inferrable": true + }, + { + "name": "tile_background", + "type": "boolean", + "required": false, + "description": "Indicates whether to tile the board background. Accepts a boolean value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-members-id-customboardbackgrounds-idbackground'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateCustomBoardBackground", + "parameters": { + "custom_background_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + }, + "background_brightness": { + "value": "light", + "type": "string", + "required": false + }, + "tile_background": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCustomFieldDefinition", + "qualifiedName": "TrelloApi.UpdateCustomFieldDefinition", + "fullyQualifiedName": "TrelloApi.UpdateCustomFieldDefinition@3.0.0", + "description": "Update a Custom Field definition in Trello.\n\n Use this tool to update an existing Custom Field definition on Trello by providing the necessary details.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "custom_field_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Custom Field to update in Trello. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-customfields-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateCustomFieldDefinition", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "custom_field_id": { + "value": "5f3f5a3e1d2e4b6c8e8d7f9b", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Custom Field Name\",\"type\":\"text\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEnterpriseMemberLicense", + "qualifiedName": "TrelloApi.UpdateEnterpriseMemberLicense", + "fullyQualifiedName": "TrelloApi.UpdateEnterpriseMemberLicense@3.0.0", + "description": "Update an enterprise member's license status in Trello.\n\nUse this tool to update whether a member should use an enterprise's license. Note that revoking a license will deactivate the member, and this operation cannot be performed if the enterprise manages users via AdminHub.", + "parameters": [ + { + "name": "enterprise_id", + "type": "string", + "required": true, + "description": "The unique identifier for the enterprise. Required for license updates.", + "enum": null, + "inferrable": true + }, + { + "name": "grant_enterprise_license", + "type": "boolean", + "required": true, + "description": "Boolean indicating if the member should be given an Enterprise license (true) or not (false).", + "enum": null, + "inferrable": true + }, + { + "name": "member_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello member to update license status.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-enterprises-id-members-idmember-licensed'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateEnterpriseMemberLicense", + "parameters": { + "enterprise_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "grant_enterprise_license": { + "value": true, + "type": "boolean", + "required": true + }, + "member_id": { + "value": "abcdef1234567890", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateMemberNotificationBlockedKeys", + "qualifiedName": "TrelloApi.UpdateMemberNotificationBlockedKeys", + "fullyQualifiedName": "TrelloApi.UpdateMemberNotificationBlockedKeys@3.0.0", + "description": "Update a member's blocked notification keys on Trello.\n\n This tool updates the blocked notification keys for a specific member on a designated channel in Trello. Use this to manage which notifications a member will not receive.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "member_identifier", + "type": "string", + "required": false, + "description": "The unique ID or username of the Trello member to update notification settings for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-members-id-notificationChannelSettings-channel-blockedKeys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateMemberNotificationBlockedKeys", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "member_identifier": { + "value": "john_doe_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"blockedKeys\":[\"comment\",\"mention\",\"boardInvite\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateNotificationReadStatus", + "qualifiedName": "TrelloApi.UpdateNotificationReadStatus", + "fullyQualifiedName": "TrelloApi.UpdateNotificationReadStatus@3.0.0", + "description": "Update the read status of a Trello notification.\n\nUse this tool to change the read status of a specific Trello notification by providing its ID.", + "parameters": [ + { + "name": "notification_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello notification to update.", + "enum": null, + "inferrable": true + }, + { + "name": "mark_as_unread", + "type": "boolean", + "required": false, + "description": "Set to false to mark the notification as read, or true to mark as unread.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-notifications-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateNotificationReadStatus", + "parameters": { + "notification_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "mark_as_unread": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOrganizationMembers", + "qualifiedName": "TrelloApi.UpdateOrganizationMembers", + "fullyQualifiedName": "TrelloApi.UpdateOrganizationMembers@3.0.0", + "description": "Update members of a Trello organization.\n\nUse this tool to update the members associated with a specific Trello organization. It is useful for managing team membership changes within an organization.", + "parameters": [ + { + "name": "member_email", + "type": "string", + "required": true, + "description": "The email address of the member to be updated in the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "member_full_name", + "type": "string", + "required": true, + "description": "The full name of the member, at least 1 character not beginning or ending with a space.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Trello organization to update members for.", + "enum": null, + "inferrable": true + }, + { + "name": "member_role", + "type": "string", + "required": false, + "description": "Specify the role of the member, either `admin` or `normal`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-organizations-id-members'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateOrganizationMembers", + "parameters": { + "member_email": { + "value": "john.doe@example.com", + "type": "string", + "required": true + }, + "member_full_name": { + "value": "John Doe", + "type": "string", + "required": true + }, + "organization_id_or_name": { + "value": "MyCompanyOrg", + "type": "string", + "required": true + }, + "member_role": { + "value": "normal", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateOrganizationTrello", + "qualifiedName": "TrelloApi.UpdateOrganizationTrello", + "fullyQualifiedName": "TrelloApi.UpdateOrganizationTrello@3.0.0", + "description": "Updates an organization's details in Trello.\n\nUse this tool to update the details of a specific organization in Trello. It should be called when you need to modify information such as the organization's name, description, or website.", + "parameters": [ + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the Trello organization to update.", + "enum": null, + "inferrable": true + }, + { + "name": "google_apps_associated_domain", + "type": "string", + "required": false, + "description": "The Google Apps domain to link this organization to.", + "enum": null, + "inferrable": true + }, + { + "name": "google_apps_version", + "type": "integer", + "required": false, + "description": "Set the Google Apps version to `1` or `2` for the organization.", + "enum": null, + "inferrable": true + }, + { + "name": "new_display_name", + "type": "string", + "required": false, + "description": "A new display name for the organization. It must be at least 1 character long without leading or trailing spaces.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_description", + "type": "string", + "required": false, + "description": "A new description for the organization. Provide relevant and concise details.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_invite_restriction", + "type": "string", + "required": false, + "description": "An email address with optional wildcard characters to restrict organization invites. Example: `subdomain.*.trello.com`", + "enum": null, + "inferrable": true + }, + { + "name": "organization_new_name", + "type": "string", + "required": false, + "description": "A unique name for the organization with at least 3 lowercase letters, underscores, and numbers.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_website", + "type": "string", + "required": false, + "description": "A URL for the organization starting with `http://`, `https://`, or `null`.", + "enum": null, + "inferrable": true + }, + { + "name": "prevent_external_members", + "type": "boolean", + "required": false, + "description": "Set to true to prevent non-workspace members from being added to boards inside the Workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "private_board_visibility", + "type": "string", + "required": false, + "description": "Specifies who can create private boards in the organization. Options: `admin`, `none`, `org`.", + "enum": null, + "inferrable": true + }, + { + "name": "public_board_visibility_permission", + "type": "string", + "required": false, + "description": "Who on the Workspace can create public boards. Options are: `admin`, `none`, `org`.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_board_visibility_restriction", + "type": "string", + "required": false, + "description": "Determines who in the Workspace can create Workspace-visible boards. Accepts one of: `admin`, `none`, `org`.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_visibility_permission", + "type": "string", + "required": false, + "description": "Set the visibility level of the Workspace page. Accepts 'private' or 'public'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-organizations-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateOrganizationTrello", + "parameters": { + "organization_id_or_name": { + "value": "example_org_123", + "type": "string", + "required": true + }, + "google_apps_associated_domain": { + "value": "example.com", + "type": "string", + "required": false + }, + "google_apps_version": { + "value": 1, + "type": "integer", + "required": false + }, + "new_display_name": { + "value": "Example Organization", + "type": "string", + "required": false + }, + "organization_description": { + "value": "This organization focuses on collaborative project management.", + "type": "string", + "required": false + }, + "organization_invite_restriction": { + "value": "subdomain.*.example.com", + "type": "string", + "required": false + }, + "organization_new_name": { + "value": "example_org_456", + "type": "string", + "required": false + }, + "organization_website": { + "value": "https://www.example.com", + "type": "string", + "required": false + }, + "prevent_external_members": { + "value": true, + "type": "boolean", + "required": false + }, + "private_board_visibility": { + "value": "org", + "type": "string", + "required": false + }, + "public_board_visibility_permission": { + "value": "admin", + "type": "string", + "required": false + }, + "workspace_board_visibility_restriction": { + "value": "none", + "type": "string", + "required": false + }, + "workspace_visibility_permission": { + "value": "private", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdatePowerUpListing", + "qualifiedName": "TrelloApi.UpdatePowerUpListing", + "fullyQualifiedName": "TrelloApi.UpdatePowerUpListing@3.0.0", + "description": "Update an existing listing for a Trello Power-Up.\n\nCall this tool to update information on an existing listing for a Trello Power-Up, identified by specific plugin and listing IDs.", + "parameters": [ + { + "name": "listing_id", + "type": "string", + "required": true, + "description": "The ID of the existing listing for the Power-Up that is being updated.", + "enum": null, + "inferrable": true + }, + { + "name": "power_up_id", + "type": "string", + "required": true, + "description": "The ID of the Power-Up whose listing is being updated.", + "enum": null, + "inferrable": true + }, + { + "name": "listing_description", + "type": "string", + "required": false, + "description": "The description to show for the specified locale of the Power-Up listing.", + "enum": null, + "inferrable": true + }, + { + "name": "listing_locale", + "type": "string", + "required": false, + "description": "The locale code for displaying the listing, e.g., 'en' for English.", + "enum": null, + "inferrable": true + }, + { + "name": "localized_name", + "type": "string", + "required": false, + "description": "The name of the listing to display for the specified locale.", + "enum": null, + "inferrable": true + }, + { + "name": "overview_for_locale", + "type": "string", + "required": false, + "description": "Provide the overview text for the specified locale to update the listing.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-plugins-idplugin-listings-idlisting'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdatePowerUpListing", + "parameters": { + "listing_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "power_up_id": { + "value": "abcdef1234567890", + "type": "string", + "required": true + }, + "listing_description": { + "value": "This is an updated description for the Power-Up.", + "type": "string", + "required": false + }, + "listing_locale": { + "value": "en", + "type": "string", + "required": false + }, + "localized_name": { + "value": "Updated Power-Up Name", + "type": "string", + "required": false + }, + "overview_for_locale": { + "value": "An updated overview for the Power-Up listing.", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSavedSearch", + "qualifiedName": "TrelloApi.UpdateSavedSearch", + "fullyQualifiedName": "TrelloApi.UpdateSavedSearch@3.0.0", + "description": "Update the details of a saved search in Trello.\n\nUse this tool to update the information of an existing saved search for a specific member in Trello.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the member whose saved search is being updated.", + "enum": null, + "inferrable": true + }, + { + "name": "saved_search_id", + "type": "string", + "required": true, + "description": "The unique identifier of the saved search to be updated in Trello.", + "enum": null, + "inferrable": true + }, + { + "name": "new_position_for_saved_search", + "type": "string", + "required": false, + "description": "Specify the new position for the saved search: 'top', 'bottom', or a positive float for a custom placement.", + "enum": null, + "inferrable": true + }, + { + "name": "new_saved_search_name", + "type": "string", + "required": false, + "description": "The new name for the saved search.", + "enum": null, + "inferrable": true + }, + { + "name": "new_search_query", + "type": "string", + "required": false, + "description": "The new search query to update the saved search in Trello.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-members-id-savedsearches-idsearch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateSavedSearch", + "parameters": { + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + }, + "saved_search_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "new_position_for_saved_search": { + "value": "top", + "type": "string", + "required": false + }, + "new_saved_search_name": { + "value": "Updated Search Name", + "type": "string", + "required": false + }, + "new_search_query": { + "value": "label:urgent", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSidebarActionsPreference", + "qualifiedName": "TrelloApi.UpdateSidebarActionsPreference", + "fullyQualifiedName": "TrelloApi.UpdateSidebarActionsPreference@3.0.0", + "description": "Update sidebar board actions preference on a Trello board.\n\nThis tool updates the showSidebarBoardActions preference on a specified Trello board. Call this tool when you need to modify the display settings of sidebar board actions for better user interface customization.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board to update the sidebar actions preference.", + "enum": null, + "inferrable": true + }, + { + "name": "show_sidebar_board_actions", + "type": "boolean", + "required": true, + "description": "Set to true to show sidebar board actions, or false to hide them on a Trello board.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-boards-id-myPrefs-showsidebarboardactions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateSidebarActionsPreference", + "parameters": { + "board_id": { + "value": "5a12e9f2d4b29d5f0e3665e8", + "type": "string", + "required": true + }, + "show_sidebar_board_actions": { + "value": true, + "type": "boolean", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSidebarActivityPreference", + "qualifiedName": "TrelloApi.UpdateSidebarActivityPreference", + "fullyQualifiedName": "TrelloApi.UpdateSidebarActivityPreference@3.0.0", + "description": "Toggle the sidebar activity visibility for a Trello board.\n\nUse this tool to update the visibility of the sidebar activity on a specific Trello board. It's useful when you want to either display or hide the activity stream in the sidebar for better board management.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board to update the sidebar activity preference.", + "enum": null, + "inferrable": true + }, + { + "name": "show_sidebar_activity", + "type": "boolean", + "required": true, + "description": "Boolean to determine if sidebar activity should be shown. True to show, False to hide.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-boards-id-myPrefs-showsidebaractivity'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateSidebarActivityPreference", + "parameters": { + "board_id": { + "value": "5f5e3c4567a8f0a1b2c3d4e5", + "type": "string", + "required": true + }, + "show_sidebar_activity": { + "value": true, + "type": "boolean", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSidebarMembersPref", + "qualifiedName": "TrelloApi.UpdateSidebarMembersPref", + "fullyQualifiedName": "TrelloApi.UpdateSidebarMembersPref@3.0.0", + "description": "Update the sidebar members visibility preference on a Trello board.\n\nUse this tool to change the showSidebarMembers preference for a specific Trello board, allowing you to control whether member information is displayed in the sidebar.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello board to update the sidebar members preference.", + "enum": null, + "inferrable": true + }, + { + "name": "show_sidebar_members", + "type": "boolean", + "required": true, + "description": "Set to 'true' to show members of the board in the sidebar, 'false' to hide.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-boards-id-myPrefs-showsidebarmembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateSidebarMembersPref", + "parameters": { + "board_id": { + "value": "5a1b2345c1234567890d1234", + "type": "string", + "required": true + }, + "show_sidebar_members": { + "value": true, + "type": "boolean", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSidebarPreference", + "qualifiedName": "TrelloApi.UpdateSidebarPreference", + "fullyQualifiedName": "TrelloApi.UpdateSidebarPreference@3.0.0", + "description": "Update the sidebar visibility preference for a Trello board.\n\nThis tool updates the 'showSidebar' preference on a specified Trello board, allowing you to set whether the sidebar should be shown or hidden.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The ID of the Trello board whose sidebar preference is to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "show_sidebar", + "type": "boolean", + "required": true, + "description": "Set to true to show the sidebar on the board, false to hide it.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-boards-id-myPrefs-showsidebar'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateSidebarPreference", + "parameters": { + "board_id": { + "value": "5abc1234def5678ghi9012jk", + "type": "string", + "required": true + }, + "show_sidebar": { + "value": true, + "type": "boolean", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateStarredBoardPosition", + "qualifiedName": "TrelloApi.UpdateStarredBoardPosition", + "fullyQualifiedName": "TrelloApi.UpdateStarredBoardPosition@3.0.0", + "description": "Update the position of a starred board in Trello.\n\nUse this tool to change the order of a starred board for a member in Trello by updating its position.", + "parameters": [ + { + "name": "board_star_id", + "type": "string", + "required": true, + "description": "The unique identifier for the board star to update.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to update the board position for.", + "enum": null, + "inferrable": true + }, + { + "name": "new_board_position", + "type": "string", + "required": false, + "description": "The new position for the starred board. Options are `top`, `bottom`, or a positive float for custom positioning.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-members-id-boardstars-idstar'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateStarredBoardPosition", + "parameters": { + "board_star_id": { + "value": "63f9c3d7d962f34e6a12fcd5", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe_123", + "type": "string", + "required": true + }, + "new_board_position": { + "value": "top", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTrelloBoard", + "qualifiedName": "TrelloApi.UpdateTrelloBoard", + "fullyQualifiedName": "TrelloApi.UpdateTrelloBoard@3.0.0", + "description": "Update details of an existing Trello board.\n\nThis tool updates an existing Trello board using its unique ID. It should be called when board details need to be modified.", + "parameters": [ + { + "name": "board_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello board to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_workspace_members_to_join", + "type": "boolean", + "required": false, + "description": "Allows Workspace members to join the board themselves. True to allow, false to disallow.", + "enum": null, + "inferrable": true + }, + { + "name": "background_preference", + "type": "string", + "required": false, + "description": "Specify the background for the board. Use a custom background ID or choose from: blue, orange, green, red, purple, pink, lime, sky, grey.", + "enum": null, + "inferrable": true + }, + { + "name": "board_description", + "type": "string", + "required": false, + "description": "A new description for the board, 0 to 16384 characters long.", + "enum": null, + "inferrable": true + }, + { + "name": "calendar_feed_enabled", + "type": "boolean", + "required": false, + "description": "Set to true to enable the calendar feed; false to disable it.", + "enum": null, + "inferrable": true + }, + { + "name": "card_aging_preference", + "type": "string", + "required": false, + "description": "Set card aging style on the board. Options: pirate, regular.", + "enum": null, + "inferrable": true + }, + { + "name": "close_board", + "type": "boolean", + "required": false, + "description": "Sets whether the board should be closed. Use true to close the board and false to keep it open.", + "enum": null, + "inferrable": true + }, + { + "name": "comment_permission", + "type": "string", + "required": false, + "description": "Specify who can comment on cards. Options: disabled, members, observers, org, public.", + "enum": null, + "inferrable": true + }, + { + "name": "display_card_covers", + "type": "boolean", + "required": false, + "description": "Set to true to display card covers on the board, false to hide them.", + "enum": null, + "inferrable": true + }, + { + "name": "hide_voter_identities", + "type": "boolean", + "required": false, + "description": "If true, the Voting Power-Up hides who voted on cards.", + "enum": null, + "inferrable": true + }, + { + "name": "new_board_name", + "type": "string", + "required": false, + "description": "The new name for the board. Must be 1 to 16384 characters long.", + "enum": null, + "inferrable": true + }, + { + "name": "permission_level", + "type": "string", + "required": false, + "description": "Set the board's permission level: org, private, or public.", + "enum": null, + "inferrable": true + }, + { + "name": "user_subscribed_to_board", + "type": "string", + "required": false, + "description": "Indicate if the acting user is subscribed to the board. Use 'true' or 'false'.", + "enum": null, + "inferrable": true + }, + { + "name": "voting_permissions", + "type": "string", + "required": false, + "description": "Specify who can vote on this board. Options: disabled, members, observers, org, public.", + "enum": null, + "inferrable": true + }, + { + "name": "who_can_invite", + "type": "string", + "required": false, + "description": "Specifies who can invite people to the board. Accepts 'admins' or 'members'.", + "enum": null, + "inferrable": true + }, + { + "name": "workspace_id_for_board", + "type": "string", + "required": false, + "description": "The unique ID of the Workspace to which the board should be moved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-boards-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateTrelloBoard", + "parameters": { + "board_id": { + "value": "5f8d45f6c4b12d001b6e0c45", + "type": "string", + "required": true + }, + "allow_workspace_members_to_join": { + "value": true, + "type": "boolean", + "required": false + }, + "background_preference": { + "value": "blue", + "type": "string", + "required": false + }, + "board_description": { + "value": "This board is for tracking project milestones and tasks.", + "type": "string", + "required": false + }, + "calendar_feed_enabled": { + "value": false, + "type": "boolean", + "required": false + }, + "card_aging_preference": { + "value": "regular", + "type": "string", + "required": false + }, + "close_board": { + "value": false, + "type": "boolean", + "required": false + }, + "comment_permission": { + "value": "members", + "type": "string", + "required": false + }, + "display_card_covers": { + "value": true, + "type": "boolean", + "required": false + }, + "hide_voter_identities": { + "value": false, + "type": "boolean", + "required": false + }, + "new_board_name": { + "value": "Project Alpha Board", + "type": "string", + "required": false + }, + "permission_level": { + "value": "private", + "type": "string", + "required": false + }, + "user_subscribed_to_board": { + "value": "true", + "type": "string", + "required": false + }, + "voting_permissions": { + "value": "members", + "type": "string", + "required": false + }, + "who_can_invite": { + "value": "members", + "type": "string", + "required": false + }, + "workspace_id_for_board": { + "value": "5f8d45e6c4b12d001b6e0b20", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTrelloCardCustomField", + "qualifiedName": "TrelloApi.UpdateTrelloCardCustomField", + "fullyQualifiedName": "TrelloApi.UpdateTrelloCardCustomField@3.0.0", + "description": "Update or remove a custom field value on a Trello card.\n\n Use this tool to set, update, or remove the value for a custom field on a Trello card. Ideal for managing card data and keeping your board updated with the latest information.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "card_id", + "type": "string", + "required": false, + "description": "The ID of the Trello card where the custom field value will be set or updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_field_id", + "type": "string", + "required": false, + "description": "The unique identifier for the custom field on the Trello card. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-cards-idcard-customfield-idcustomfield-item'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateTrelloCardCustomField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "card_id": { + "value": "5a4f9e8d7f9e2c6b2f648f9e", + "type": "string", + "required": false + }, + "custom_field_id": { + "value": "5a4f9e8d7f9e2c6b2f648f9f", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"value\":\"Updated Value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTrelloCardCustomFields", + "qualifiedName": "TrelloApi.UpdateTrelloCardCustomFields", + "fullyQualifiedName": "TrelloApi.UpdateTrelloCardCustomFields@3.0.0", + "description": "Update custom fields on a Trello card.\n\nUse this tool to set, update, or remove values for multiple custom fields on a specific Trello card. Ideal for managing card metadata and ensuring up-to-date information on your board.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-cards-idcard-customfields'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateTrelloCardCustomFields", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"cardId\":\"123456789\",\"customFields\":{\"field1\":\"value1\",\"field2\":\"value2\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTrelloCardSticker", + "qualifiedName": "TrelloApi.UpdateTrelloCardSticker", + "fullyQualifiedName": "TrelloApi.UpdateTrelloCardSticker@3.0.0", + "description": "Update a sticker on a specified Trello card.\n\nUse this tool to update the properties of an existing sticker on a Trello card. Ideal for modifying sticker details based on card ID and sticker ID.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello card to update the sticker on.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_id", + "type": "string", + "required": true, + "description": "The unique identifier for the sticker to be updated on the Trello card. It must match an existing sticker on the specified card.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_left_position", + "type": "number", + "required": true, + "description": "The left position of the sticker, ranging from -60 to 100.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_top_position", + "type": "number", + "required": true, + "description": "The vertical position of the sticker on the card, ranging from -60 to 100. Determines the position from the top.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_z_index", + "type": "integer", + "required": true, + "description": "The z-index of the sticker, determining its layer position with respect to other stickers on the card. Provide as an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "sticker_rotation", + "type": "number", + "required": false, + "description": "The rotation angle of the sticker. Provide a number representing the degrees of rotation.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-cards-id-stickers-idsticker'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateTrelloCardSticker", + "parameters": { + "card_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "sticker_id": { + "value": "sticker789", + "type": "string", + "required": true + }, + "sticker_left_position": { + "value": 25, + "type": "integer", + "required": true + }, + "sticker_top_position": { + "value": 30, + "type": "integer", + "required": true + }, + "sticker_z_index": { + "value": 2, + "type": "integer", + "required": true + }, + "sticker_rotation": { + "value": 45, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTrelloChecklist", + "qualifiedName": "TrelloApi.UpdateTrelloChecklist", + "fullyQualifiedName": "TrelloApi.UpdateTrelloChecklist@3.0.0", + "description": "Update an existing checklist on Trello.\n\nUse this tool to update an existing checklist in Trello. Typically called when checklist modifications are needed, such as changing item details or statuses.", + "parameters": [ + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "ID of the checklist to update on Trello. This is required to specify which checklist needs updating.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_name", + "type": "string", + "required": false, + "description": "Name of the checklist to update. Must be 1 to 16,384 characters long.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_position", + "type": "string", + "required": false, + "description": "Specify the position of the checklist on the card. Options are `top`, `bottom`, or a positive number indicating the precise position.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-checlists-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateTrelloChecklist", + "parameters": { + "checklist_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "checklist_name": { + "value": "Updated Checklist Name", + "type": "string", + "required": false + }, + "checklist_position": { + "value": "bottom", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTrelloChecklistItem", + "qualifiedName": "TrelloApi.UpdateTrelloChecklistItem", + "fullyQualifiedName": "TrelloApi.UpdateTrelloChecklistItem@3.0.0", + "description": "Update an item in a Trello card checklist.\n\nUse this tool to update a specific item in a checklist on a Trello card. It should be called when you need to modify details of an existing checklist item.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello card where the checklist item is located.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_id", + "type": "string", + "required": true, + "description": "The ID of the checklist item you want to update on the Trello card.", + "enum": null, + "inferrable": true + }, + { + "name": "checklist_item_id", + "type": "string", + "required": true, + "description": "The unique ID of the checklist item that needs to be updated on the Trello card.", + "enum": null, + "inferrable": true + }, + { + "name": "position_in_checklist", + "type": "string", + "required": false, + "description": "Position the checklist item at the 'top', 'bottom', or a specific order with a positive float.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-cards-idcard-checklist-idchecklist-checkitem-idcheckitem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateTrelloChecklistItem", + "parameters": { + "card_id": { + "value": "5e4a3c6062b37212c3f0e4b5", + "type": "string", + "required": true + }, + "checklist_id": { + "value": "5e4a3f5e9c0c62347a604619", + "type": "string", + "required": true + }, + "checklist_item_id": { + "value": "5e4a3f5e9c0c62347a60461a", + "type": "string", + "required": true + }, + "position_in_checklist": { + "value": "2.5", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTrelloComment", + "qualifiedName": "TrelloApi.UpdateTrelloComment", + "fullyQualifiedName": "TrelloApi.UpdateTrelloComment@3.0.0", + "description": "Edit a comment action in Trello.\n\nUse this tool to update the content of a specific comment action on Trello. It is applicable only to comment actions.", + "parameters": [ + { + "name": "action_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific action comment you want to update.", + "enum": null, + "inferrable": true + }, + { + "name": "new_comment_text", + "type": "string", + "required": true, + "description": "The updated text content for the Trello comment action.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-actions-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateTrelloComment", + "parameters": { + "action_id": { + "value": "5f8d0e3f1d55e53c3f8de9d2", + "type": "string", + "required": true + }, + "new_comment_text": { + "value": "Updated comment text for clarity.", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTrelloLabel", + "qualifiedName": "TrelloApi.UpdateTrelloLabel", + "fullyQualifiedName": "TrelloApi.UpdateTrelloLabel@3.0.0", + "description": "Update Trello label details using its ID.\n\nUse this tool to update the details of a specific Trello label by providing its ID.", + "parameters": [ + { + "name": "label_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Trello label to update.", + "enum": null, + "inferrable": true + }, + { + "name": "label_color", + "type": "string", + "required": false, + "description": "Specify the new color for the label. Allowed colors: yellow, purple, blue, red, green, orange, black, sky, pink, lime.", + "enum": null, + "inferrable": true + }, + { + "name": "new_label_name", + "type": "string", + "required": false, + "description": "The new name for the Trello label to be updated.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-labels-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateTrelloLabel", + "parameters": { + "label_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "label_color": { + "value": "blue", + "type": "string", + "required": false + }, + "new_label_name": { + "value": "Updated Label Name", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTrelloLabelField", + "qualifiedName": "TrelloApi.UpdateTrelloLabelField", + "fullyQualifiedName": "TrelloApi.UpdateTrelloLabelField@3.0.0", + "description": "Update a specific field on a Trello label.\n\nThis tool updates a specified field of a label in Trello, such as color or name. It should be used when changes to label attributes are required.", + "parameters": [ + { + "name": "label_field_to_update", + "type": "string", + "required": true, + "description": "Specify the label field to update, such as 'color' or 'name'.", + "enum": null, + "inferrable": true + }, + { + "name": "label_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Trello label to update.", + "enum": null, + "inferrable": true + }, + { + "name": "new_field_value", + "type": "string", + "required": true, + "description": "The new value to update the specified label field with, such as a new color or name.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-labels-id-field'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateTrelloLabelField", + "parameters": { + "label_field_to_update": { + "value": "color", + "type": "string", + "required": true + }, + "label_id": { + "value": "5f8d1e1c8c5b3c001c3e2d45", + "type": "string", + "required": true + }, + "new_field_value": { + "value": "green", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTrelloList", + "qualifiedName": "TrelloApi.UpdateTrelloList", + "fullyQualifiedName": "TrelloApi.UpdateTrelloList@3.0.0", + "description": "Update the properties of a Trello list.\n\nThis tool updates the properties of a specified list in Trello. It should be called when there is a need to modify attributes of an existing Trello list.", + "parameters": [ + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello list to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "archive_list", + "type": "boolean", + "required": false, + "description": "Set to true to archive the list, false to keep it open.", + "enum": null, + "inferrable": true + }, + { + "name": "board_id_destination", + "type": "string", + "required": false, + "description": "ID of the board to which the list will be moved.", + "enum": null, + "inferrable": true + }, + { + "name": "is_subscribed", + "type": "boolean", + "required": false, + "description": "Whether the active member is subscribed to this list. Use `true` to subscribe and `false` to unsubscribe.", + "enum": null, + "inferrable": true + }, + { + "name": "new_list_name", + "type": "string", + "required": false, + "description": "The new name to assign to the Trello list.", + "enum": null, + "inferrable": true + }, + { + "name": "new_list_position", + "type": "string", + "required": false, + "description": "New position for the list: 'top', 'bottom', or a positive floating point number.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-lists-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateTrelloList", + "parameters": { + "list_id": { + "value": "5e09c1234567890abcde1234", + "type": "string", + "required": true + }, + "archive_list": { + "value": false, + "type": "boolean", + "required": false + }, + "board_id_destination": { + "value": "5e09c9876543210fedcba987", + "type": "string", + "required": false + }, + "is_subscribed": { + "value": true, + "type": "boolean", + "required": false + }, + "new_list_name": { + "value": "Updated List Name", + "type": "string", + "required": false + }, + "new_list_position": { + "value": "top", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTrelloMember", + "qualifiedName": "TrelloApi.UpdateTrelloMember", + "fullyQualifiedName": "TrelloApi.UpdateTrelloMember@3.0.0", + "description": "Update Trello member details.\n\nThis tool updates a member's information in Trello. It should be called when there is a need to modify a member's details, such as changing their username or bio.", + "parameters": [ + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "avatar_source", + "type": "string", + "required": false, + "description": "Source of the avatar; must be one of: 'gravatar', 'none', or 'upload'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_color_blind_mode", + "type": "boolean", + "required": false, + "description": "Set to true to enable color blind mode preferences for the member, false to disable.", + "enum": null, + "inferrable": true + }, + { + "name": "member_bio", + "type": "string", + "required": false, + "description": "Biography of the member. Provide a brief description or update to the member's bio as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "member_initials", + "type": "string", + "required": false, + "description": "New initials for the member. Must be 1-4 characters long.", + "enum": null, + "inferrable": true + }, + { + "name": "new_full_name", + "type": "string", + "required": false, + "description": "The new name for the member. Ensure it does not begin or end with a space.", + "enum": null, + "inferrable": true + }, + { + "name": "new_username", + "type": "string", + "required": false, + "description": "The new username for the Trello member. It must be at least 3 characters long and can only contain lowercase letters, underscores, and numbers. The username must be unique within Trello.", + "enum": null, + "inferrable": true + }, + { + "name": "preferred_locale", + "type": "string", + "required": false, + "description": "Specifies the preferred locale for the member's settings. This should be a valid locale string (e.g., 'en_US').", + "enum": null, + "inferrable": true + }, + { + "name": "summary_notification_interval", + "type": "integer", + "required": false, + "description": "Time interval in minutes for summary notifications. Use `-1` to disable, `1` for every minute, or `60` for hourly notifications.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-members-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateTrelloMember", + "parameters": { + "member_id_or_username": { + "value": "john_doe_123", + "type": "string", + "required": true + }, + "avatar_source": { + "value": "gravatar", + "type": "string", + "required": false + }, + "enable_color_blind_mode": { + "value": true, + "type": "boolean", + "required": false + }, + "member_bio": { + "value": "A passionate developer and Trello enthusiast.", + "type": "string", + "required": false + }, + "member_initials": { + "value": "JD", + "type": "string", + "required": false + }, + "new_full_name": { + "value": "John Doe", + "type": "string", + "required": false + }, + "new_username": { + "value": "johndoe", + "type": "string", + "required": false + }, + "preferred_locale": { + "value": "en_US", + "type": "string", + "required": false + }, + "summary_notification_interval": { + "value": 15, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTrelloMemberNotificationSettings", + "qualifiedName": "TrelloApi.UpdateTrelloMemberNotificationSettings", + "fullyQualifiedName": "TrelloApi.UpdateTrelloMemberNotificationSettings@3.0.0", + "description": "Update blocked notification keys for a Trello member's channel.\n\n Use this tool to update blocked notification keys for a specific channel of a Trello member. This is useful when a user wants to change which notifications are blocked for a particular communication channel.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": false, + "description": "The ID or username of the Trello member whose notification settings will be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "notification_channel", + "type": "string", + "required": false, + "description": "Specify the channel where notifications should be blocked, e.g., 'email'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-members-id-notificationChannelSettings-channel-blockedKeys'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateTrelloMemberNotificationSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": false + }, + "notification_channel": { + "value": "email", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"blocked\": [\"comment\", \"mention\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTrelloPlugin", + "qualifiedName": "TrelloApi.UpdateTrelloPlugin", + "fullyQualifiedName": "TrelloApi.UpdateTrelloPlugin@3.0.0", + "description": "Update a specific plugin on Trello.\n\nUse this tool to update the details of a specific plugin on Trello by providing the plugin's ID.", + "parameters": [ + { + "name": "organization_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the organization associated with the plugin to update.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-plugins-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateTrelloPlugin", + "parameters": { + "organization_identifier": { + "value": "my-org-123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTrelloWebhook", + "qualifiedName": "TrelloApi.UpdateTrelloWebhook", + "fullyQualifiedName": "TrelloApi.UpdateTrelloWebhook@3.0.0", + "description": "Update a Trello webhook using a specific token.\n\nThis tool updates a webhook in Trello identified by a specific token and webhook ID. Useful for modifying webhook settings or endpoints.", + "parameters": [ + { + "name": "authentication_token", + "type": "string", + "required": true, + "description": "The token used for authenticating the request to update the webhook in Trello. Required for authorization.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The ID of the Trello webhook to be updated. Used to identify which webhook to modify.", + "enum": null, + "inferrable": true + }, + { + "name": "callback_url", + "type": "string", + "required": false, + "description": "The URL where the webhook will POST data. Ensure the URL is accessible and correct.", + "enum": null, + "inferrable": true + }, + { + "name": "object_id_for_webhook", + "type": "string", + "required": false, + "description": "ID of the Trello object (e.g., board, card) associated with the webhook.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_description", + "type": "string", + "required": false, + "description": "A description to be displayed when retrieving information about the webhook.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tokenstokenwebhooks-1'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateTrelloWebhook", + "parameters": { + "authentication_token": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "webhook_id": { + "value": "hook98765", + "type": "string", + "required": true + }, + "callback_url": { + "value": "https://example.com/webhook", + "type": "string", + "required": false + }, + "object_id_for_webhook": { + "value": "board12345", + "type": "string", + "required": false + }, + "webhook_description": { + "value": "Updated webhook for project tracking", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateWorkspaceMemberStatus", + "qualifiedName": "TrelloApi.UpdateWorkspaceMemberStatus", + "fullyQualifiedName": "TrelloApi.UpdateWorkspaceMemberStatus@3.0.0", + "description": "Deactivate or reactivate a member of a workspace.\n\nThis tool allows you to deactivate or reactivate a member within a given workspace on Trello. It should be called when there's a need to change a member's active status within an organization.", + "parameters": [ + { + "name": "deactivate_member", + "type": "boolean", + "required": true, + "description": "Set to true to deactivate the member or false to reactivate the member in the workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the member whose status needs to be updated in the workspace.", + "enum": null, + "inferrable": true + }, + { + "name": "organization_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the organization within Trello to update the member status.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'put-organizations-id-members-idmember-deactivated'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UpdateWorkspaceMemberStatus", + "parameters": { + "deactivate_member": { + "value": true, + "type": "boolean", + "required": true + }, + "member_id_or_username": { + "value": "johndoe123", + "type": "string", + "required": true + }, + "organization_id_or_name": { + "value": "MyOrganization", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UploadCustomBoardBackground", + "qualifiedName": "TrelloApi.UploadCustomBoardBackground", + "fullyQualifiedName": "TrelloApi.UploadCustomBoardBackground@3.0.0", + "description": "Upload a new custom board background to Trello.\n\nUse this tool to upload a new custom board background for a specific Trello member. Call this tool when you want to personalize a Trello board's appearance by adding a unique background.", + "parameters": [ + { + "name": "background_file_upload", + "type": "string", + "required": true, + "description": "The file path or URL of the custom board background to upload. It should specify the location of the image file you want to use as the board background.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member for whom the background is being uploaded.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'membersidcustomboardbackgrounds-1'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UploadCustomBoardBackground", + "parameters": { + "background_file_upload": { + "value": "https://example.com/backgrounds/my_custom_background.jpg", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe_123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UploadCustomStickerToTrello", + "qualifiedName": "TrelloApi.UploadCustomStickerToTrello", + "fullyQualifiedName": "TrelloApi.UploadCustomStickerToTrello@3.0.0", + "description": "Upload a new custom sticker to a Trello member's account.\n\nThis tool is used to upload a custom sticker for a specific Trello member. It should be called when a user wants to add a new personal sticker to their Trello account.", + "parameters": [ + { + "name": "custom_sticker_file_path", + "type": "string", + "required": true, + "description": "The file path or URL of the custom sticker to be uploaded for the Trello member.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to whom the custom sticker will be uploaded.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-members-id-customstickers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UploadCustomStickerToTrello", + "parameters": { + "custom_sticker_file_path": { + "value": "https://example.com/stickers/custom_sticker.png", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UploadTrelloBoardBackground", + "qualifiedName": "TrelloApi.UploadTrelloBoardBackground", + "fullyQualifiedName": "TrelloApi.UploadTrelloBoardBackground@3.0.0", + "description": "Upload a new board background on Trello.\n\nThis tool uploads a new background image to a Trello board for a specific member. It should be called when a user wants to change or set a new background for their Trello board.", + "parameters": [ + { + "name": "background_image_file_path", + "type": "string", + "required": true, + "description": "The file path for the image to be uploaded as a new board background. Provide the full path or a URL to the image file.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_or_username", + "type": "string", + "required": true, + "description": "The ID or username of the Trello member to upload the board background for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'post-members-id-boardbackgrounds-1'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.UploadTrelloBoardBackground", + "parameters": { + "background_image_file_path": { + "value": "https://example.com/images/board-background.jpg", + "type": "string", + "required": true + }, + "member_id_or_username": { + "value": "john_doe123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "VoteOnTrelloCard", + "qualifiedName": "TrelloApi.VoteOnTrelloCard", + "fullyQualifiedName": "TrelloApi.VoteOnTrelloCard@3.0.0", + "description": "Vote on a Trello card for a specific member.\n\nThis tool allows voting on a specific Trello card for a given member. It should be called when a user needs to add or confirm a vote on a Trello card on behalf of a member.", + "parameters": [ + { + "name": "card_id", + "type": "string", + "required": true, + "description": "The unique ID of the Trello card on which to vote.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id_for_vote", + "type": "string", + "required": true, + "description": "The ID of the member casting a 'yes' vote on the Trello card.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["TRELLO_API_KEY", "TRELLO_TOKEN"], + "secretsInfo": [ + { + "name": "TRELLO_API_KEY", + "type": "api_key" + }, + { + "name": "TRELLO_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cardsidmembersvoted-1'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "TrelloApi.VoteOnTrelloCard", + "parameters": { + "card_id": { + "value": "5f5f53a4b349c42c2550e8e6", + "type": "string", + "required": true + }, + "member_id_for_vote": { + "value": "60adf00c9d3b0d001c4e7582", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## Authentication\n\nThe Arcade Trello API MCP Server requires two environment variables to authenticate with the Trello API:\n\n- `TRELLO_API_KEY`\n- `TRELLO_API_TOKEN`\n\n**How to obtain your credentials:**\n\n1. Log in to your [Trello account](https://trello.com/)\n2. Navigate to the [Power-Ups Admin Portal](https://trello.com/power-ups/admin)\n3. Click on \"New\" to create a new Power-Up or select an existing one\n4. In your Power-Up settings, go to the **API Key** tab\n5. Your **API Key** will be displayed\n6. Click on \"Token\" link to generate a **Token** (this will require authorization)\n7. Authorize the token with the required scopes\n8. Copy both the API Key and Token for use in your configuration\n\nAlternatively, you can directly access your API key at: [https://trello.com/app-key](https://trello.com/app-key)\n\nFor more details, see the [Trello API Authentication documentation](https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/).", + "header": "## Authentication" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:46:28.924Z", + "summary": "TrelloApi enables LLMs to interact with the Trello API, facilitating seamless task management and collaboration through automated actions. This toolkit provides a comprehensive set of tools for managing boards, cards, lists, and members within the Trello ecosystem.\n\n**Capabilities:**\n- Create, update, and delete Trello boards, cards, and lists.\n- Manage member assignments and roles across boards and workspaces.\n- Handle attachments, comments, and labels efficiently on Trello cards.\n- Set up webhooks for real-time notifications on board changes.\n- Utilize checklists and custom fields to enhance task organization.\n\n**Secrets:**\n- Uses TRELLO_API_KEY and TRELLO_TOKEN for secure access, managing API interactions effectively to protect data." +} diff --git a/data/toolkits/upclickapi.json b/data/toolkits/upclickapi.json new file mode 100644 index 000000000..37b8fc5ed --- /dev/null +++ b/data/toolkits/upclickapi.json @@ -0,0 +1,744 @@ +{ + "id": "UpclickApi", + "label": "ClickUp API", + "version": "0.1.0", + "description": "Tools that enable LLMs to interact directly with the upclick API.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/clickup.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/clickup-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "clickup", + "allScopes": [] + }, + "tools": [ + { + "name": "CreateChecklist", + "qualifiedName": "UpclickApi.CreateChecklist", + "fullyQualifiedName": "UpclickApi.CreateChecklist@0.1.0", + "description": "Creates a checklist on a task with multiple items.\n\n Use this tool to create a checklist within an existing task by specifying the task ID and the checklist items.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "task_id", + "type": "string", + "required": true, + "description": "The ID of the task to which the checklist will be added. This should be a string representing the unique identifier of the task. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createChecklist'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "UpclickApi.CreateChecklist", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "task_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"items\":[{\"item\":\"First task item\"},{\"item\":\"Second task item\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateCustomField", + "qualifiedName": "UpclickApi.CreateCustomField", + "fullyQualifiedName": "UpclickApi.CreateCustomField@0.1.0", + "description": "Create a custom field in a specified space.\n\n This tool creates a custom field within a given space, allowing for complex type-specific configuration. Use this when you need to add or configure custom fields in a space.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "space_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the space where the custom field is to be created. It should be provided as a string. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createCustomField'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "UpclickApi.CreateCustomField", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "space_identifier": { + "value": "space_12345", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"field_name\":\"CustomField1\",\"field_type\":\"text\",\"is_required\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateTaskInList", + "qualifiedName": "UpclickApi.CreateTaskInList", + "fullyQualifiedName": "UpclickApi.CreateTaskInList@0.1.0", + "description": "Creates a new task with detailed configuration.\n\n Use this tool to add a new task to a specified list on Upclick, enabling configuration of custom fields, assignees, and dependencies.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "list_id", + "type": "string", + "required": true, + "description": "The unique identifier for the list where the task will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "Specify the team ID if using custom task IDs. Required when custom task IDs are enabled. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to reference the task by its custom task ID. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "UpclickApi.CreateTaskInList", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "list_id": { + "value": "12345", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_abc", + "type": "string", + "required": false + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"title\":\"New Task\",\"description\":\"This is a description of the task.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateUpclickList", + "qualifiedName": "UpclickApi.CreateUpclickList", + "fullyQualifiedName": "UpclickApi.CreateUpclickList@0.1.0", + "description": "Create a new list in a space with configurations.\n\n Use this tool to create a new list within a specified space, including setting status configurations and assigning settings.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "space_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the space where the new list will be created. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "UpclickApi.CreateUpclickList", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "space_identifier": { + "value": "space_12345", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"list_name\":\"New List\",\"status\":\"active\",\"settings\":{\"notification\":\"enabled\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTasksInList", + "qualifiedName": "UpclickApi.GetTasksInList", + "fullyQualifiedName": "UpclickApi.GetTasksInList@0.1.0", + "description": "Fetch all tasks from a specified list with optional filters.\n\nUse this tool to retrieve all tasks from a particular list. You can apply filters to the results if needed.", + "parameters": [ + { + "name": "list_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the list from which to retrieve tasks.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve for paginated results.", + "enum": null, + "inferrable": true + }, + { + "name": "order_tasks_by", + "type": "string", + "required": false, + "description": "Specify the field to order tasks by. Options are 'id', 'created', 'updated', 'due_date'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_statuses", + "type": "string", + "required": false, + "description": "Comma-separated list to filter tasks by their statuses.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_assignees", + "type": "string", + "required": false, + "description": "Comma-separated user IDs to filter tasks by specific assignees.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_tags", + "type": "string", + "required": false, + "description": "Comma-separated list of tags to filter tasks by specific tags.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_due_date_after", + "type": "integer", + "required": false, + "description": "Filter tasks with a due date later than a specified Unix timestamp in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_due_date_before", + "type": "integer", + "required": false, + "description": "Filter tasks with a due date less than this Unix timestamp in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_created_after", + "type": "integer", + "required": false, + "description": "Filter tasks created after a specified Unix timestamp in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "created_before_date", + "type": "integer", + "required": false, + "description": "Filter tasks created before the specified date in Unix milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_date_updated_after", + "type": "integer", + "required": false, + "description": "Filter tasks to include only those updated after the specified Unix time in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_tasks_updated_before", + "type": "integer", + "required": false, + "description": "Filter tasks updated before this Unix timestamp in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_custom_fields", + "type": "string", + "required": false, + "description": "Provide a JSON array to filter tasks by specific custom fields.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_tasks", + "type": "boolean", + "required": false, + "description": "Specify whether to include archived tasks in the results. Set true to include them.", + "enum": null, + "inferrable": true + }, + { + "name": "reverse_order", + "type": "boolean", + "required": false, + "description": "Set to true to reverse the order of the tasks.", + "enum": null, + "inferrable": true + }, + { + "name": "include_subtasks", + "type": "boolean", + "required": false, + "description": "Indicates whether to include subtasks. Set to true to include.", + "enum": null, + "inferrable": true + }, + { + "name": "include_closed_tasks", + "type": "boolean", + "required": false, + "description": "Include tasks with a closed status in the results.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTasks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "UpclickApi.GetTasksInList", + "parameters": { + "list_identifier": { + "value": "12345", + "type": "string", + "required": true + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "order_tasks_by": { + "value": "due_date", + "type": "string", + "required": false + }, + "filter_by_statuses": { + "value": "open,closed", + "type": "string", + "required": false + }, + "filter_by_assignees": { + "value": "67890,54321", + "type": "string", + "required": false + }, + "filter_by_tags": { + "value": "urgent,review", + "type": "string", + "required": false + }, + "filter_due_date_after": { + "value": 1690000000000, + "type": "integer", + "required": false + }, + "filter_due_date_before": { + "value": 1700000000000, + "type": "integer", + "required": false + }, + "filter_created_after": { + "value": 1680000000000, + "type": "integer", + "required": false + }, + "created_before_date": { + "value": 1670000000000, + "type": "integer", + "required": false + }, + "filter_date_updated_after": { + "value": 1660000000000, + "type": "integer", + "required": false + }, + "filter_tasks_updated_before": { + "value": 1650000000000, + "type": "integer", + "required": false + }, + "filter_by_custom_fields": { + "value": "[{\"field\":\"priority\",\"value\":\"high\"}]", + "type": "string", + "required": false + }, + "include_archived_tasks": { + "value": false, + "type": "boolean", + "required": false + }, + "reverse_order": { + "value": true, + "type": "boolean", + "required": false + }, + "include_subtasks": { + "value": true, + "type": "boolean", + "required": false + }, + "include_closed_tasks": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTaskDetails", + "qualifiedName": "UpclickApi.RetrieveTaskDetails", + "fullyQualifiedName": "UpclickApi.RetrieveTaskDetails@0.1.0", + "description": "Retrieve details of a specific task.\n\nUse this tool to obtain details about a specific task by providing its ID. This is ideal for when you need information on a particular task's status, description, and other related details.", + "parameters": [ + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the task to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "Provide the team ID. Required if using custom task IDs.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Use true to enable custom task IDs instead of default ones.", + "enum": null, + "inferrable": true + }, + { + "name": "include_subtasks", + "type": "boolean", + "required": false, + "description": "A boolean indicating whether to include subtasks in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTask'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "UpclickApi.RetrieveTaskDetails", + "parameters": { + "task_identifier": { + "value": "abc123", + "type": "string", + "required": true + }, + "team_id": { + "value": "team456", + "type": "string", + "required": false + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "include_subtasks": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "TrackTimeEntry", + "qualifiedName": "UpclickApi.TrackTimeEntry", + "fullyQualifiedName": "UpclickApi.TrackTimeEntry@0.1.0", + "description": "Creates a time tracking entry for a task.\n\n This tool should be called to log time spent on a specific task with detailed metadata, enhancing productivity tracking.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "task_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the task to track time against. It is required for logging the task's time entry. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The unique identifier for the team. This is required when using custom task IDs. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "use_custom_task_ids", + "type": "boolean", + "required": false, + "description": "Set to true to use custom task IDs when tracking time. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "clickup", + "providerType": "oauth2", + "scopes": [] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'trackTime'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "UpclickApi.TrackTimeEntry", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "task_identifier": { + "value": "task_12345", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_67890", + "type": "string", + "required": false + }, + "use_custom_task_ids": { + "value": true, + "type": "boolean", + "required": false + }, + "request_body": { + "value": "{\"duration\": 3600, \"description\": \"Worked on the project\", \"date\": \"2023-10-01T15:00:00Z\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "clickup", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:44:22.073Z", + "summary": "UpclickApi toolkit enables developers to integrate with the Upclick API, facilitating seamless interactions for task and checklist management. The toolkit supports various operations that enhance productivity workflows within Upclick.\n\n**Capabilities**\n- Create and manage checklists, tasks, and custom fields in a specified Upclick space.\n- Fetch details of tasks and lists, applying filters as necessary.\n- Track time entries for tasks, improving time management.\n- Perform operations based on a defined request schema to ensure successful executions.\n\n**OAuth**\n- Provider: ClickUp\n- Scopes: None" +} diff --git a/data/toolkits/vercelapi.json b/data/toolkits/vercelapi.json new file mode 100644 index 000000000..20776a696 --- /dev/null +++ b/data/toolkits/vercelapi.json @@ -0,0 +1,16314 @@ +{ + "id": "VercelApi", + "label": "Vercel API", + "version": "1.0.0", + "description": "Tools that enable LLMs to interact directly with the vercel API.", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/vercel.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/vercel-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "AcceptProjectTransfer", + "qualifiedName": "VercelApi.AcceptProjectTransfer", + "fullyQualifiedName": "VercelApi.AcceptProjectTransfer@1.0.0", + "description": "Accept a project transfer request on Vercel.\n\n Use this tool to accept a project transfer request that has been initiated by another team on Vercel. This process requires a transfer code, which is generated by the initiating team. Call this tool when you need to finalize the transfer of a project to your team.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_transfer_code", + "type": "string", + "required": false, + "description": "The unique code of the project transfer request, required to accept the transfer. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team to perform the request on behalf of. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The team slug used to perform the project transfer request on behalf of a specific team. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'acceptProjectTransferRequest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.AcceptProjectTransfer", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_transfer_code": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_456789", + "type": "string", + "required": false + }, + "team_slug": { + "value": "team-awesome", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"accept\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddEdgeConfigToken", + "qualifiedName": "VercelApi.AddEdgeConfigToken", + "fullyQualifiedName": "VercelApi.AddEdgeConfigToken@1.0.0", + "description": "Adds a token to an existing Edge Config.\n\nThis tool is used to add a new token to an existing Edge Config in Vercel. It should be called when you need to update the configuration with additional access or permissions via token.", + "parameters": [ + { + "name": "edge_config_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Edge Config to which the token will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "token_label", + "type": "string", + "required": true, + "description": "A descriptive label for the token being added to the Edge Config.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the request is performed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifying the Team on whose behalf the request is made. This is used for specifying the target team within Vercel.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createEdgeConfigToken'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.AddEdgeConfigToken", + "parameters": { + "edge_config_id": { + "value": "edge-config-12345", + "type": "string", + "required": true + }, + "token_label": { + "value": "NewAccessToken", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-67890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team-slug", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddNewDomainVercel", + "qualifiedName": "VercelApi.AddNewDomainVercel", + "fullyQualifiedName": "VercelApi.AddNewDomainVercel@1.0.0", + "description": "Add a new apex domain with Vercel for the user.\n\n Use this tool to add a new apex domain name with Vercel for the authenticating user. This tool is not meant for transferring domains from external registrars to Vercel.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the Team on whose behalf the request is made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The identifier for the team to execute the request on behalf of. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createOrTransferDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.AddNewDomainVercel", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_123456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"domain\":\"example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddProjectDomain", + "qualifiedName": "VercelApi.AddProjectDomain", + "fullyQualifiedName": "VercelApi.AddProjectDomain@1.0.0", + "description": "Add a domain to a specified Vercel project.\n\nThis tool adds a domain to a Vercel project by specifying the domain name and project identifier (id or name). If the domain is unverified, the response will indicate it needs verification. If the domain already exists, a 400 error will occur.", + "parameters": [ + { + "name": "project_domain_name", + "type": "string", + "required": true, + "description": "The domain name to be added to the specified Vercel project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier_or_name", + "type": "string", + "required": true, + "description": "The unique identifier or name of the project to which the domain will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_environment_id", + "type": "string", + "required": false, + "description": "The unique custom environment identifier within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "git_branch_to_link_domain", + "type": "string", + "required": false, + "description": "The Git branch to associate with the project domain when adding it to a Vercel project. This allows the domain to be tied to a specific branch in the repository.", + "enum": null, + "inferrable": true + }, + { + "name": "redirect_status_code", + "type": "integer", + "required": false, + "description": "HTTP status code for redirecting the domain. Options are: 301, 302, 307, 308, or None.", + "enum": null, + "inferrable": true + }, + { + "name": "redirect_target_domain", + "type": "string", + "required": false, + "description": "Specify the target destination domain to redirect to.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team for which the request is made. This ensures the request is executed on behalf of the specified team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the request on behalf of. This identifies the team context for the domain addition.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addProjectDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.AddProjectDomain", + "parameters": { + "project_domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "project_identifier_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "custom_environment_id": { + "value": "env_123456", + "type": "string", + "required": false + }, + "git_branch_to_link_domain": { + "value": "main", + "type": "string", + "required": false + }, + "redirect_status_code": { + "value": 301, + "type": "integer", + "required": false + }, + "redirect_target_domain": { + "value": "target.com", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_7890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "myteam", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddProjectMember", + "qualifiedName": "VercelApi.AddProjectMember", + "fullyQualifiedName": "VercelApi.AddProjectMember@1.0.0", + "description": "Add a new member to a Vercel project.\n\n Use this tool to add a new member to a Vercel project using the project's ID or name.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the Vercel project to which a new member will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the Team to perform the request on behalf of. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifying the team for performing the request. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addProjectMember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.AddProjectMember", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id_or_name": { + "value": "my-vercel-project", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\": \"newmember@example.com\", \"role\": \"developer\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AdvanceRolloutStage", + "qualifiedName": "VercelApi.AdvanceRolloutStage", + "fullyQualifiedName": "VercelApi.AdvanceRolloutStage@1.0.0", + "description": "Advance a rollout to the next stage when manual approval is required.\n\n Use this tool to advance a release rollout to the next stage when manual approval is enabled in Vercel's rolling releases configuration.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "Project ID or URL-encoded project name to identify the project. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier used for performing the request on behalf of the specified team. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team for which the rollout action will be performed. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'approveRollingReleaseStage'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.AdvanceRolloutStage", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "my-project-123", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"approval\":\"approved\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelDeployment", + "qualifiedName": "VercelApi.CancelDeployment", + "fullyQualifiedName": "VercelApi.CancelDeployment@1.0.0", + "description": "Cancel a currently building deployment.\n\nUse this tool to cancel a deployment that is currently in progress by providing its ID.", + "parameters": [ + { + "name": "deployment_id", + "type": "string", + "required": true, + "description": "The unique identifier of the deployment to cancel.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request on behalf of when canceling a deployment.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug for which the deployment cancellation should be performed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cancelDeployment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CancelDeployment", + "parameters": { + "deployment_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_789", + "type": "string", + "required": false + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckDomainAvailability", + "qualifiedName": "VercelApi.CheckDomainAvailability", + "fullyQualifiedName": "VercelApi.CheckDomainAvailability@1.0.0", + "description": "Check if a domain name is available for purchase.\n\nThis tool checks the availability of a domain name for purchase, using the deprecated 'checkDomainStatus' endpoint from Vercel. Note that this endpoint has been replaced with 'Get availability for a domain.'", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The domain name you want to check for purchase availability.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the Team on whose behalf the request is performed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug for the team or organization on whose behalf the request is performed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'checkDomainStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CheckDomainAvailability", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_123456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "myteam", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckDomainAvailabilityBulk", + "qualifiedName": "VercelApi.CheckDomainAvailabilityBulk", + "fullyQualifiedName": "VercelApi.CheckDomainAvailabilityBulk@1.0.0", + "description": "Check availability for multiple domains.\n\nUse this tool to check if multiple domains are available for purchase. This can help in planning before acquiring domains via the buying endpoints.", + "parameters": [ + { + "name": "domain_names", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of domain names to check, with a maximum of 50 domains.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "Unique identifier for the team or organization associated with the request. It may be required to access specific domain availability data.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBulkAvailability'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CheckDomainAvailabilityBulk", + "parameters": { + "domain_names": { + "value": [ + "example1.com", + "example2.net", + "example3.org", + "example4.io", + "example5.co" + ], + "type": "array", + "required": true + }, + "team_identifier": { + "value": "my-team-123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckDomainTransferStatus", + "qualifiedName": "VercelApi.CheckDomainTransferStatus", + "fullyQualifiedName": "VercelApi.CheckDomainTransferStatus@1.0.0", + "description": "Retrieve the transfer status of a domain.\n\nUse this tool to check the current transfer status of a specific domain, providing insights into progress or any issues.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "Specifies the domain name to check the transfer status for. It should be a valid domain string.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The unique identifier of the team requesting the domain transfer status.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDomainTransferIn'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CheckDomainTransferStatus", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_12345", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckRemoteCachingStatus", + "qualifiedName": "VercelApi.CheckRemoteCachingStatus", + "fullyQualifiedName": "VercelApi.CheckRemoteCachingStatus@1.0.0", + "description": "Check the status of Remote Caching.\n\nThis tool is used to determine if Remote Caching is currently enabled, disabled, or disabled due to usage limits. It provides a quick way to verify the status of caching in Vercel.", + "parameters": [ + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique slug identifier for the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'status'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CheckRemoteCachingStatus", + "parameters": { + "team_identifier": { + "value": "team_x23f1", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-awesome-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckTeamAccessStatus", + "qualifiedName": "VercelApi.CheckTeamAccessStatus", + "fullyQualifiedName": "VercelApi.CheckTeamAccessStatus@1.0.0", + "description": "Check the status of a team access request.\n\nUse this tool to check the status of a user's request to join a team on Vercel. The tool will return the status of the request or a 404 error if the request was declined. If no user ID is provided, it returns the status for the authenticated user.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique identifier for the team whose access request status is being checked.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The ID of the user whose team access request status is being checked. Leave empty to use the authenticated user.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeamAccessRequest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CheckTeamAccessStatus", + "parameters": { + "team_id": { + "value": "team_123456", + "type": "string", + "required": true + }, + "user_id": { + "value": "user_789012", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ConnectIntegrationResourceToProject", + "qualifiedName": "VercelApi.ConnectIntegrationResourceToProject", + "fullyQualifiedName": "VercelApi.ConnectIntegrationResourceToProject@1.0.0", + "description": "Connect an integration resource to a Vercel project.\n\n This tool connects a provisioned integration resource to a specific Vercel project. It should be used when you need to establish a link between a resource and a project in Vercel.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": false, + "description": "The identifier for the integration configuration to be connected to the Vercel project. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The ID of the integration resource to connect to the Vercel project. This is required to establish the link. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to perform the request on behalf of. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique team slug used to perform the request on behalf of a specific team in Vercel. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'connectIntegrationResourceToProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ConnectIntegrationResourceToProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_configuration_id": { + "value": "intg-123456", + "type": "string", + "required": false + }, + "resource_id": { + "value": "res-654321", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-001", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-awesome-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"key\":\"value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateAccessGroup", + "qualifiedName": "VercelApi.CreateAccessGroup", + "fullyQualifiedName": "VercelApi.CreateAccessGroup@1.0.0", + "description": "Create a new access group on Vercel.\n\n This tool should be called when there is a need to create a new access group in Vercel. It facilitates setting up user permissions and organization in projects.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team on whose behalf the access group is being created. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique slug identifier for the team to create the access group for. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createAccessGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateAccessGroup", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_123456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Access Group\",\"permissions\":[\"read\",\"write\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateAccessGroupProject", + "qualifiedName": "VercelApi.CreateAccessGroupProject", + "fullyQualifiedName": "VercelApi.CreateAccessGroupProject@1.0.0", + "description": "Create a project within a specific access group.", + "parameters": [ + { + "name": "access_group_id_or_name", + "type": "string", + "required": true, + "description": "Identifier or name of the access group to associate with the project. It helps specify which access group the new project will be part of.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique ID of the project to be added to the access group.", + "enum": null, + "inferrable": true + }, + { + "name": "project_role", + "type": "string", + "required": true, + "description": "The role to be assigned to the project within the access group. Options: 'ADMIN', 'PROJECT_VIEWER', 'PROJECT_DEVELOPER'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique identifier slug for the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createAccessGroupProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateAccessGroupProject", + "parameters": { + "access_group_id_or_name": { + "value": "my-access-group", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj-123456", + "type": "string", + "required": true + }, + "project_role": { + "value": "PROJECT_DEVELOPER", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-789", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateAuthToken", + "qualifiedName": "VercelApi.CreateAuthToken", + "fullyQualifiedName": "VercelApi.CreateAuthToken@1.0.0", + "description": "Create a new authentication token for the user.\n\nUse this tool to generate and retrieve a new authentication token for the currently authenticated user. Ensure to save the token for subsequent API requests, as it is only provided once.", + "parameters": [ + { + "name": "token_name", + "type": "string", + "required": true, + "description": "A descriptive name for the authentication token. This helps in identifying the token's purpose or context.", + "enum": null, + "inferrable": true + }, + { + "name": "expiration_timestamp", + "type": "number", + "required": false, + "description": "The expiration time for the token, specified as a Unix timestamp. This defines when the token will no longer be valid.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the Team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the Team to perform the request on behalf of. This identifies the specific team within your Vercel account.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createAuthToken'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateAuthToken", + "parameters": { + "token_name": { + "value": "MyApp Auth Token", + "type": "string", + "required": true + }, + "expiration_timestamp": { + "value": 1710000000, + "type": "integer", + "required": false + }, + "team_identifier": { + "value": "team_123456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateCustomEnvironment", + "qualifiedName": "VercelApi.CreateCustomEnvironment", + "fullyQualifiedName": "VercelApi.CreateCustomEnvironment@1.0.0", + "description": "Create a custom environment for your Vercel project.\n\nThis tool creates a custom environment in a specified Vercel project, excluding 'Production' or 'Preview' as names. Use it to set up tailored project environments.", + "parameters": [ + { + "name": "project_unique_identifier_or_name", + "type": "string", + "required": true, + "description": "The unique project identifier or project name for which the custom environment is being created.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_matcher_type", + "type": "string", + "required": false, + "description": "Specifies the type of branch matcher: 'equals', 'startsWith', or 'endsWith'.", + "enum": null, + "inferrable": true + }, + { + "name": "copy_environment_variables_from", + "type": "string", + "required": false, + "description": "Specify the source environment to copy variables from. This is optional.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_environment_slug", + "type": "string", + "required": false, + "description": "Specify the slug for the new custom environment. It cannot be 'Production' or 'Preview'.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_description", + "type": "string", + "required": false, + "description": "Optional description for the custom environment being created.", + "enum": null, + "inferrable": true + }, + { + "name": "git_branch_name_pattern", + "type": "string", + "required": false, + "description": "Git branch name or part of it to match with the custom environment.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the request on behalf of. It is required to specify the unique team for the custom environment.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createCustomEnvironment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateCustomEnvironment", + "parameters": { + "project_unique_identifier_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "branch_matcher_type": { + "value": "startsWith", + "type": "string", + "required": false + }, + "copy_environment_variables_from": { + "value": "production", + "type": "string", + "required": false + }, + "custom_environment_slug": { + "value": "staging-env", + "type": "string", + "required": false + }, + "environment_description": { + "value": "Staging environment for testing", + "type": "string", + "required": false + }, + "git_branch_name_pattern": { + "value": "feature/", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDnsRecord", + "qualifiedName": "VercelApi.CreateDnsRecord", + "fullyQualifiedName": "VercelApi.CreateDnsRecord@1.0.0", + "description": "Creates a DNS record for a domain.\n\n Use this tool to create a DNS record for a specified domain. It helps manage DNS configurations by adding new records as needed.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "domain_name_for_dns_record", + "type": "string", + "required": false, + "description": "The domain for which the DNS record will be created. Must be a valid and registered domain name. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier for performing the request. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifier for the team performing the DNS record creation. It should be a string that represents the team's unique slug. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createRecord'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateDnsRecord", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "domain_name_for_dns_record": { + "value": "example.com", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"type\":\"A\",\"name\":\"@\",\"value\":\"192.0.2.1\",\"ttl\":3600}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateEdgeConfig", + "qualifiedName": "VercelApi.CreateEdgeConfig", + "fullyQualifiedName": "VercelApi.CreateEdgeConfig@1.0.0", + "description": "Create a new Edge Configuration.\n\n This tool is used to create a new Edge Config on Vercel. It should be called when there's a need to set up or initialize a configuration for edge functions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to perform the request for. This is required to specify on whose behalf the request is made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug that specifies the team to perform the request on behalf of. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createEdgeConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateEdgeConfig", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_xyz", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-awesome-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"key1\":\"value1\",\"key2\":\"value2\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateExperimentationItems", + "qualifiedName": "VercelApi.CreateExperimentationItems", + "fullyQualifiedName": "VercelApi.CreateExperimentationItems@1.0.0", + "description": "Create one or multiple experimentation items.\n\n This tool is used to create one or multiple experimentation items for a specific installation. It should be called when you need to add experimentation data to a resource tied to an integration configuration.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": false, + "description": "The ID of the integration configuration for which to create experimentation items. This ties the items to a specific setup or environment. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the resource to associate with the experimentation items. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateExperimentationItems", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_configuration_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + }, + "resource_identifier": { + "value": "resource-001", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"experiment_id\": \"exp-001\", \"variation\": \"control\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateFirewallBypassRule", + "qualifiedName": "VercelApi.CreateFirewallBypassRule", + "fullyQualifiedName": "VercelApi.CreateFirewallBypassRule@1.0.0", + "description": "Create a new firewall bypass rule.\n\n This tool should be called to create new system bypass rules in the firewall. Useful for configuring security exceptions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The identifier for the project to create a bypass rule for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the request is made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifier of the team for which the bypass rule is created. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addBypassIp'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateFirewallBypassRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_123456", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_7890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "team-slug-example", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"ip_addresses\":[\"192.168.1.1\"],\"description\":\"Bypass rule for testing\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateIntegrationLogDrain", + "qualifiedName": "VercelApi.CreateIntegrationLogDrain", + "fullyQualifiedName": "VercelApi.CreateIntegrationLogDrain@1.0.0", + "description": "Sets up an Integration log drain for Vercel.\n\n This tool creates an Integration log drain in Vercel, accessible via an OAuth2 client. It should be used when you need to tie log drains to specific integrations within Vercel.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier for performing the request on behalf of a specific team in Vercel. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team to perform the request on behalf of. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createLogDrain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateIntegrationLogDrain", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"drainUrl\": \"https://example.com/logs\", \"integrationId\": \"integration_67890\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateIntegrationStore", + "qualifiedName": "VercelApi.CreateIntegrationStore", + "fullyQualifiedName": "VercelApi.CreateIntegrationStore@1.0.0", + "description": "Create integration stores for FREE and PAID billing plans.\n\n This tool creates integration stores on Vercel for both free and paid plans, handling billing automatically. It validates configurations, discovers free plans, and creates billing authorizations for paid resources. It should be called when you need to provision integration storage resources while managing billing. Requires admin access and, for paid plans, a valid payment method.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team on whose behalf the request is being made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique slug of the team for which the integration store is being created. This identifies the team on behalf of which the request is made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createIntegrationStoreDirect'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateIntegrationStore", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_123456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-awesome-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"store_name\": \"my-integration-store\", \"plan\": \"paid\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewDeploymentCheck", + "qualifiedName": "VercelApi.CreateNewDeploymentCheck", + "fullyQualifiedName": "VercelApi.CreateNewDeploymentCheck@1.0.0", + "description": "Create a new deployment check using Vercel API.\n\nUse this tool to initiate a new check for a specific deployment in Vercel. This requires providing a deployment ID and must be authorized with OAuth2 to avoid errors.", + "parameters": [ + { + "name": "block_deployment_on_failure", + "type": "boolean", + "required": true, + "description": "Indicates if the check should block a deployment from succeeding.", + "enum": null, + "inferrable": true + }, + { + "name": "check_name", + "type": "string", + "required": true, + "description": "The name of the check being created. This is required to identify the check purpose.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_id", + "type": "string", + "required": true, + "description": "The unique identifier of the deployment to create the check for.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_rerun_request", + "type": "boolean", + "required": false, + "description": "Allow users to request a rerun of the check if it fails. Use a boolean value.", + "enum": null, + "inferrable": true + }, + { + "name": "details_url", + "type": "string", + "required": false, + "description": "A URL that provides further details about the check. Expected format is a valid URL string.", + "enum": null, + "inferrable": true + }, + { + "name": "external_identifier", + "type": "string", + "required": false, + "description": "A unique identifier used as an external reference for the check.", + "enum": null, + "inferrable": true + }, + { + "name": "page_path_to_check", + "type": "string", + "required": false, + "description": "Specify the path of the page that is being checked. This should be a string value representing the specific page path for the deployment check.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier used to perform the request on behalf of a team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug (unique identifier) of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createCheck'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateNewDeploymentCheck", + "parameters": { + "block_deployment_on_failure": { + "value": true, + "type": "boolean", + "required": true + }, + "check_name": { + "value": "Smoke Test", + "type": "string", + "required": true + }, + "deployment_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "allow_rerun_request": { + "value": false, + "type": "boolean", + "required": false + }, + "details_url": { + "value": "https://example.com/check-details", + "type": "string", + "required": false + }, + "external_identifier": { + "value": "external-12345", + "type": "string", + "required": false + }, + "page_path_to_check": { + "value": "/home", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateNewProject", + "qualifiedName": "VercelApi.CreateNewProject", + "fullyQualifiedName": "VercelApi.CreateNewProject@1.0.0", + "description": "Create a new project with specified configurations.\n\n This tool creates a new project using the provided configurations. You can specify only the project name or add additional configurations to customize the project further. Call this tool when you need to initialize a new project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team on whose behalf the project will be created. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the Team to perform the request on behalf of. It should be a string identifier. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateNewProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_abc123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "awesome-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"new-project\", \"framework\": \"Next.js\", \"settings\": {\"buildCommand\": \"npm run build\", \"outputDirectory\": \"build\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateProjectEnvironmentVariables", + "qualifiedName": "VercelApi.CreateProjectEnvironmentVariables", + "fullyQualifiedName": "VercelApi.CreateProjectEnvironmentVariables@1.0.0", + "description": "Create or update environment variables for a Vercel project.\n\n This tool creates or updates one or more environment variables for a specified Vercel project. The project can be identified by its `id` or `name`. The tool allows specifying the `key`, `value`, `type`, and `target` of the environment variables. If `upsert=true` is included, existing variables will be updated instead of creating new ones.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier_or_name", + "type": "string", + "required": false, + "description": "The unique identifier or name of the Vercel project to create or update environment variables for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_override_existing_variable", + "type": "string", + "required": false, + "description": "Allows updating the value of an existing environment variable if set to true. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request on behalf of, specified as a string. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug for the project. Used to perform the request on behalf of a specific team. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createProjectEnv'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateProjectEnvironmentVariables", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier_or_name": { + "value": "my-vercel-project", + "type": "string", + "required": false + }, + "allow_override_existing_variable": { + "value": "true", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team-slug", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"key\":\"MY_ENV_VAR\",\"value\":\"some_value\",\"type\":\"secret\",\"target\":[\"production\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateVercelDeployment", + "qualifiedName": "VercelApi.CreateVercelDeployment", + "fullyQualifiedName": "VercelApi.CreateVercelDeployment@1.0.0", + "description": "Create a new deployment on Vercel.\n\n This tool helps create a new deployment on Vercel, ideal for deploying projects that aren't directly linked to a git repository. Use it to initiate a deployment by providing necessary files either as references or inlined content. It also allows redeployment of previous deployments by specifying a deployment ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "force_new_deployment", + "type": "string", + "required": false, + "description": "Set to 'true' to force a new deployment even if a similar one exists. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "skip_framework_detection_confirmation", + "type": "string", + "required": false, + "description": "Set to 'true' to skip framework detection and avoid confirmation request failures. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request on behalf of for creating a deployment on Vercel. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifying the team to perform the deployment on behalf of. This is essential for specifying the target team for the deployment request. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createDeployment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateVercelDeployment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "force_new_deployment": { + "value": "true", + "type": "string", + "required": false + }, + "skip_framework_detection_confirmation": { + "value": "false", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"files\":[{\"name\":\"index.html\",\"content\":\"

Hello Vercel

\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateVercelTeam", + "qualifiedName": "VercelApi.CreateVercelTeam", + "fullyQualifiedName": "VercelApi.CreateVercelTeam@1.0.0", + "description": "Create a new team in your Vercel account.\n\nUse this tool to create a new team under your Vercel account by specifying a team slug, and optionally a team name. This is useful for organizing projects and members under a unified group.", + "parameters": [ + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The desired slug for the new team, used as a team identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "session_landing_page", + "type": "string", + "required": false, + "description": "The URL of the landing page where the session started. This is used for session attribution on Vercel.", + "enum": null, + "inferrable": true + }, + { + "name": "session_referrer", + "type": "string", + "required": false, + "description": "Referrer URL for the session initiating the team creation process.", + "enum": null, + "inferrable": true + }, + { + "name": "signup_referrer_page", + "type": "string", + "required": false, + "description": "The referrer URL of the page before the signup page, used for tracking attribution.", + "enum": null, + "inferrable": true + }, + { + "name": "team_name", + "type": "string", + "required": false, + "description": "The desired name for the Team. If not provided, it will be generated from the slug.", + "enum": null, + "inferrable": true + }, + { + "name": "utm_campaign_name", + "type": "string", + "required": false, + "description": "Specifies the UTM campaign name for tracking purposes when creating a team.", + "enum": null, + "inferrable": true + }, + { + "name": "utm_medium", + "type": "string", + "required": false, + "description": "The medium through which the user arrived, such as email, social, or cpc.", + "enum": null, + "inferrable": true + }, + { + "name": "utm_source", + "type": "string", + "required": false, + "description": "The UTM source identifier, indicating where the traffic originates from, such as a search engine or newsletter.", + "enum": null, + "inferrable": true + }, + { + "name": "utm_term", + "type": "string", + "required": false, + "description": "The UTM term used for tracking specific keywords in marketing campaigns.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateVercelTeam", + "parameters": { + "team_slug": { + "value": "my-awesome-team", + "type": "string", + "required": true + }, + "session_landing_page": { + "value": "https://example.com/landing", + "type": "string", + "required": false + }, + "session_referrer": { + "value": "https://example.com/referrer", + "type": "string", + "required": false + }, + "signup_referrer_page": { + "value": "https://example.com/signup", + "type": "string", + "required": false + }, + "team_name": { + "value": "My Awesome Team", + "type": "string", + "required": false + }, + "utm_campaign_name": { + "value": "TeamCreationCampaign", + "type": "string", + "required": false + }, + "utm_medium": { + "value": "social", + "type": "string", + "required": false + }, + "utm_source": { + "value": "facebook", + "type": "string", + "required": false + }, + "utm_term": { + "value": "team_creation", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateVercelWebhook", + "qualifiedName": "VercelApi.CreateVercelWebhook", + "fullyQualifiedName": "VercelApi.CreateVercelWebhook@1.0.0", + "description": "Create a new webhook in Vercel projects.\n\nThis tool is used to create a new webhook in Vercel. It should be called when you need to set up automated notifications or integrations by creating a webhook within your Vercel projects.", + "parameters": [ + { + "name": "events_list", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of event types that trigger the webhook. Must be an array of strings, each representing an event.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_url", + "type": "string", + "required": true, + "description": "The target URL where the webhook will send POST requests. It should be a valid and publicly accessible URL.", + "enum": null, + "inferrable": true + }, + { + "name": "project_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of project IDs for which the webhook is being created. Each ID should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the request is performed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the Vercel team to target the request for. It identifies the team on whose behalf the webhook is created.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.CreateVercelWebhook", + "parameters": { + "events_list": { + "value": [ + "deploy_created", + "deployment_failed", + "deployment succeeded" + ], + "type": "array", + "required": true + }, + "webhook_url": { + "value": "https://example.com/webhook", + "type": "string", + "required": true + }, + "project_ids": { + "value": ["proj_123", "proj_456"], + "type": "array", + "required": false + }, + "team_identifier": { + "value": "team_789", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAccessGroup", + "qualifiedName": "VercelApi.DeleteAccessGroup", + "fullyQualifiedName": "VercelApi.DeleteAccessGroup@1.0.0", + "description": "Deletes an access group by ID or name.\n\nUse this tool to delete an access group on Vercel by specifying the group's ID or name. It is useful for managing and updating your access control configurations.", + "parameters": [ + { + "name": "group_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the access group to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug for the team on whose behalf the request will be made. This identifies the team uniquely.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAccessGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteAccessGroup", + "parameters": { + "group_id_or_name": { + "value": "example-access-group", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-awesome-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAccessGroupProject", + "qualifiedName": "VercelApi.DeleteAccessGroupProject", + "fullyQualifiedName": "VercelApi.DeleteAccessGroupProject@1.0.0", + "description": "Delete a specified access group project on Vercel.\n\nUse this tool to delete a specific access group project on Vercel by providing the access group ID or name and project ID.", + "parameters": [ + { + "name": "access_group_id_or_name", + "type": "string", + "required": true, + "description": "Enter the access group ID or name to identify the specific group for project deletion.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The ID of the project you want to delete from the access group.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The ID of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the deletion on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAccessGroupProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteAccessGroupProject", + "parameters": { + "access_group_id_or_name": { + "value": "my-access-group", + "type": "string", + "required": true + }, + "project_id": { + "value": "12345-abcde", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_67890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAliasById", + "qualifiedName": "VercelApi.DeleteAliasById", + "fullyQualifiedName": "VercelApi.DeleteAliasById@1.0.0", + "description": "Delete a specific alias by its ID.\n\nUse this tool to delete an alias from Vercel using its unique ID.", + "parameters": [ + { + "name": "alias_id_to_remove", + "type": "string", + "required": true, + "description": "The unique ID or alias of the item to be removed from Vercel.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to execute the request.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique slug of the team for which the alias will be deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAlias'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteAliasById", + "parameters": { + "alias_id_to_remove": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_78910", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteCacheByTags", + "qualifiedName": "VercelApi.DeleteCacheByTags", + "fullyQualifiedName": "VercelApi.DeleteCacheByTags@1.0.0", + "description": "Marks cache tags as deleted to revalidate associated entries.\n\n Use this tool to delete cache entries marked by specific tags, causing associated entries to be revalidated. This should be employed cautiously due to potential cache stampede risks. It's useful when the origin returns status codes like 404 or 410.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the project associated with the cache tags to delete. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the cache deletion request is performed. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "Specify the team slug to perform the cache deletion on behalf of a team. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'dangerouslyDeleteByTags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteCacheByTags", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id_or_name": { + "value": "my-project-123", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"tags\":[\"tag1\",\"tag2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDeployment", + "qualifiedName": "VercelApi.DeleteDeployment", + "fullyQualifiedName": "VercelApi.DeleteDeployment@1.0.0", + "description": "Delete a Vercel deployment using its ID or URL.\n\nUse this tool to delete a Vercel deployment by providing the deployment's `id` or `url`. Useful for managing and cleaning up deployments.", + "parameters": [ + { + "name": "deployment_id", + "type": "string", + "required": true, + "description": "The ID of the deployment to be deleted. Use this if not providing a URL.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_url", + "type": "string", + "required": false, + "description": "A Deployment or Alias URL for identifying the deployment to delete. The ID will be ignored if this is provided.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team on whose behalf the request is executed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug to perform the deletion on behalf of. Specify which team's deployment to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteDeployment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteDeployment", + "parameters": { + "deployment_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "deployment_url": { + "value": "https://my-deployment.vercel.app", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_abc", + "type": "string", + "required": false + }, + "team_slug": { + "value": "myteam", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEdgeConfig", + "qualifiedName": "VercelApi.DeleteEdgeConfig", + "fullyQualifiedName": "VercelApi.DeleteEdgeConfig@1.0.0", + "description": "Delete a Vercel Edge Config by ID.\n\nUse this tool to delete a specific Edge Config in Vercel by providing its unique ID. This will remove the configuration from the system.", + "parameters": [ + { + "name": "edge_config_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Edge Config to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team on whose behalf the request is performed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEdgeConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteEdgeConfig", + "parameters": { + "edge_config_id": { + "value": "ec_123456789", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_abc123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEdgeConfigSchema", + "qualifiedName": "VercelApi.DeleteEdgeConfigSchema", + "fullyQualifiedName": "VercelApi.DeleteEdgeConfigSchema@1.0.0", + "description": "Deletes an existing Edge Config schema.\n\nUse this tool to delete the schema of an existing Edge Config in a Vercel project. This can be useful for managing and updating Edge Configurations efficiently.", + "parameters": [ + { + "name": "edge_config_id", + "type": "string", + "required": true, + "description": "The unique identifier for the specific Edge Config schema to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team on whose behalf the request is performed. It uniquely identifies the team within Vercel.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEdgeConfigSchema'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteEdgeConfigSchema", + "parameters": { + "edge_config_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteEdgeConfigTokens", + "qualifiedName": "VercelApi.DeleteEdgeConfigTokens", + "fullyQualifiedName": "VercelApi.DeleteEdgeConfigTokens@1.0.0", + "description": "Delete tokens from an existing Edge Config.\n\nUse this tool to delete one or more tokens associated with a specific Edge Config in Vercel. It is useful for managing and securing access by removing outdated or compromised tokens.", + "parameters": [ + { + "name": "edge_config_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Edge Config from which tokens will be deleted. Required for specifying the target Edge Config.", + "enum": null, + "inferrable": true + }, + { + "name": "tokens_to_delete", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of token identifiers to be deleted from the Edge Config. Each token should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug representing the team on whose behalf the request is performed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteEdgeConfigTokens'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteEdgeConfigTokens", + "parameters": { + "edge_config_id": { + "value": "ec_12345abcde", + "type": "string", + "required": true + }, + "tokens_to_delete": { + "value": ["token1", "token2", "token3"], + "type": "array", + "required": true + }, + "team_identifier": { + "value": "team_67890fghij", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteExperimentationItem", + "qualifiedName": "VercelApi.DeleteExperimentationItem", + "fullyQualifiedName": "VercelApi.DeleteExperimentationItem@1.0.0", + "description": "Delete an existing experimentation item.\n\nThis tool deletes a specific experimentation item identified by its itemId within the given integration configuration and resource.", + "parameters": [ + { + "name": "experiment_item_id", + "type": "string", + "required": true, + "description": "The unique identifier for the experimentation item to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": true, + "description": "The ID of the integration configuration to identify the correct setup.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The unique identifier for the resource containing the item to be deleted. This is required to specify which resource the item belongs to.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteExperimentationItem", + "parameters": { + "experiment_item_id": { + "value": "item_123456", + "type": "string", + "required": true + }, + "integration_configuration_id": { + "value": "config_78910", + "type": "string", + "required": true + }, + "resource_id": { + "value": "resource_234567", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteIntegrationLogDrain", + "qualifiedName": "VercelApi.DeleteIntegrationLogDrain", + "fullyQualifiedName": "VercelApi.DeleteIntegrationLogDrain@1.0.0", + "description": "Delete an Integration log drain by ID.\n\nUse this tool to delete a specific Integration log drain by its ID. Applicable when you need to remove log drains associated with an integration, especially under OAuth2 constraints.", + "parameters": [ + { + "name": "log_drain_id", + "type": "string", + "required": true, + "description": "The ID of the log drain to be deleted. This identifies the specific log drain for removal.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the Team on whose behalf the request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team on whose behalf the request is performed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteIntegrationLogDrain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteIntegrationLogDrain", + "parameters": { + "log_drain_id": { + "value": "log_12345", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_98765", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteIntegrationResource", + "qualifiedName": "VercelApi.DeleteIntegrationResource", + "fullyQualifiedName": "VercelApi.DeleteIntegrationResource@1.0.0", + "description": "Delete a resource from an integration by ID.\n\nUse this tool to delete a resource associated with a specific integration installation. You need the installation and resource IDs to successfully execute this operation.", + "parameters": [ + { + "name": "integration_installation_id", + "type": "string", + "required": true, + "description": "The ID of the installation to delete the resource from.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": true, + "description": "The ID of the resource to be deleted. Required for identifying the specific resource within the integration.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'delete-integration-resource'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteIntegrationResource", + "parameters": { + "integration_installation_id": { + "value": "int-123456", + "type": "string", + "required": true + }, + "resource_id": { + "value": "res-abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteProject", + "qualifiedName": "VercelApi.DeleteProject", + "fullyQualifiedName": "VercelApi.DeleteProject@1.0.0", + "description": "Delete a Vercel project by ID or name.\n\nUse this tool to delete a specific Vercel project by providing either the project's ID or name. Ideal for cleaning up unused projects or managing active projects through automation.", + "parameters": [ + { + "name": "project_identifier_or_name", + "type": "string", + "required": true, + "description": "The unique project identifier or the project name to specify which project to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team to perform the project deletion.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team to execute the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteProject", + "parameters": { + "project_identifier_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteProjectEnvVariable", + "qualifiedName": "VercelApi.DeleteProjectEnvVariable", + "fullyQualifiedName": "VercelApi.DeleteProjectEnvVariable@1.0.0", + "description": "Delete a project's specific environment variable.\n\nThis tool deletes a specified environment variable from a project by using the environment variable's identifier. You can specify the project using its ID or name.", + "parameters": [ + { + "name": "environment_variable_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the environment variable to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier_or_name", + "type": "string", + "required": true, + "description": "The unique project identifier or name to identify the target project for which the environment variable should be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_environment_identifier", + "type": "string", + "required": false, + "description": "The unique custom environment identifier within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug used to perform the request on behalf of a team.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeProjectEnv'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteProjectEnvVariable", + "parameters": { + "environment_variable_identifier": { + "value": "ENV_VAR_123456", + "type": "string", + "required": true + }, + "project_identifier_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "custom_environment_identifier": { + "value": "production", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_7890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my_team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteProjectEnvVariables", + "qualifiedName": "VercelApi.DeleteProjectEnvVariables", + "fullyQualifiedName": "VercelApi.DeleteProjectEnvVariables@1.0.0", + "description": "Delete multiple environment variables from a Vercel project.\n\n Use this tool to delete several environment variables for a specific Vercel project at once. It's useful when managing project configurations and needing to remove obsolete or sensitive data efficiently.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id_or_name", + "type": "string", + "required": false, + "description": "The unique project identifier or the project name to specify which project to delete variables from. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request on behalf of when deleting environment variables. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team on whose behalf the request is performed. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batchRemoveProjectEnv'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteProjectEnvVariables", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"envs\":[\"DATABASE_URL\",\"API_KEY\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTeam", + "qualifiedName": "VercelApi.DeleteTeam", + "fullyQualifiedName": "VercelApi.DeleteTeam@1.0.0", + "description": "Delete a team from your Vercel account.\n\n Use this tool to send a request to delete a specific team under your Vercel account by providing the team ID. Optional reasons for deletion can be included.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team to be deleted in your Vercel account. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "new_default_team_id", + "type": "string", + "required": false, + "description": "Specify the team ID to set as the new default after deletion. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team you want to delete. Used to identify the team for the delete operation. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteTeam", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "new_default_team_id": { + "value": "team_67890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"reason\":\"No longer needed\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTeamInviteCode", + "qualifiedName": "VercelApi.DeleteTeamInviteCode", + "fullyQualifiedName": "VercelApi.DeleteTeamInviteCode@1.0.0", + "description": "Delete an active team invite code in Vercel.\n\nUse this tool to remove an active team invite code for a specified team on Vercel. Call this tool when you need to cancel or invalidate an existing invite.", + "parameters": [ + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the team to perform the operation for in Vercel.", + "enum": null, + "inferrable": true + }, + { + "name": "team_invite_code_id", + "type": "string", + "required": true, + "description": "The ID of the team invite code to be deleted in Vercel.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTeamInviteCode'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteTeamInviteCode", + "parameters": { + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": true + }, + "team_invite_code_id": { + "value": "invite_abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteVercelDomain", + "qualifiedName": "VercelApi.DeleteVercelDomain", + "fullyQualifiedName": "VercelApi.DeleteVercelDomain@1.0.0", + "description": "Delete a domain from Vercel and remove associated aliases.\n\nUse this tool to delete a previously registered domain from Vercel. This action also removes any aliases linked to the domain.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The domain name to be deleted from Vercel. This action will also remove any associated aliases.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to perform the domain deletion request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The specific team slug to perform the deletion request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteVercelDomain", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteVercelWebhook", + "qualifiedName": "VercelApi.DeleteVercelWebhook", + "fullyQualifiedName": "VercelApi.DeleteVercelWebhook@1.0.0", + "description": "Delete a specific webhook from Vercel.\n\nThis tool deletes a specified webhook from a Vercel project using its unique ID. It should be called when you need to remove an existing webhook integration.", + "parameters": [ + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The unique identifier of the webhook to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier used to perform the request on behalf of the specified team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the Vercel team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DeleteVercelWebhook", + "parameters": { + "webhook_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_789", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-vercel-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DisableRollingReleases", + "qualifiedName": "VercelApi.DisableRollingReleases", + "fullyQualifiedName": "VercelApi.DisableRollingReleases@1.0.0", + "description": "Disable rolling releases for a Vercel project.\n\nUse this tool to disable future rolling releases for a specified Vercel project. Note that this will not affect any current rollouts in progress. For ongoing rollouts, additional actions like completing or aborting may be required.", + "parameters": [ + { + "name": "project_id_or_name", + "type": "string", + "required": true, + "description": "Project ID or URL-encoded name to specify the Vercel project.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to execute the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifying the team to perform the request on behalf of. This should be a string value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteRollingReleaseConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DisableRollingReleases", + "parameters": { + "project_id_or_name": { + "value": "my-vercel-project", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "my-team-id", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team-slug", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DomainAvailabilityStatus", + "qualifiedName": "VercelApi.DomainAvailabilityStatus", + "fullyQualifiedName": "VercelApi.DomainAvailabilityStatus@1.0.0", + "description": "Check if a domain is available for purchase.\n\nThis tool checks the availability of a specified domain. If the domain is available, it can be purchased using the appropriate Vercel endpoints.", + "parameters": [ + { + "name": "domain_name_to_check_availability", + "type": "string", + "required": true, + "description": "The domain name to check for availability. Must be a valid and complete domain name string.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "A unique identifier for the team whose domain availability is being queried. This is a string value.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDomainAvailability'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DomainAvailabilityStatus", + "parameters": { + "domain_name_to_check_availability": { + "value": "exampledomain.com", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DownloadCacheArtifact", + "qualifiedName": "VercelApi.DownloadCacheArtifact", + "fullyQualifiedName": "VercelApi.DownloadCacheArtifact@1.0.0", + "description": "Downloads a cache artifact using its hash identifier.\n\nUse this tool to retrieve a cache artifact from Vercel by specifying its hash. The artifact is returned as an octet-stream. Ensure to verify the content-length header and response body for correctness.", + "parameters": [ + { + "name": "artifact_hash", + "type": "string", + "required": true, + "description": "The unique hash identifier for the cache artifact to download.", + "enum": null, + "inferrable": true + }, + { + "name": "ci_environment", + "type": "string", + "required": false, + "description": "Specify the continuous integration or delivery environment from which the artifact is downloaded.", + "enum": null, + "inferrable": true + }, + { + "name": "interactive_shell_client", + "type": "integer", + "required": false, + "description": "Set to 1 if the client is an interactive shell; otherwise set to 0.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the request on behalf of, identifying which team's artifact to download.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'downloadArtifact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.DownloadCacheArtifact", + "parameters": { + "artifact_hash": { + "value": "123abc456def", + "type": "string", + "required": true + }, + "ci_environment": { + "value": "production", + "type": "string", + "required": false + }, + "interactive_shell_client": { + "value": 1, + "type": "integer", + "required": false + }, + "team_identifier": { + "value": "team_xyz", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "EditProjectEnvironmentVariable", + "qualifiedName": "VercelApi.EditProjectEnvironmentVariable", + "fullyQualifiedName": "VercelApi.EditProjectEnvironmentVariable@1.0.0", + "description": "Edit a specific environment variable for a project.\n\n Use this tool to modify an environment variable of a Vercel project by providing the variable's ID and the project's ID or name.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id_or_name", + "type": "string", + "required": false, + "description": "Specify the unique project identifier or the project name. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "environment_variable_id", + "type": "string", + "required": false, + "description": "The unique environment variable identifier for the Vercel project. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team on whose behalf the request is made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the request is made. This is usually a URL-friendly name for the team. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'editProjectEnv'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.EditProjectEnvironmentVariable", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id_or_name": { + "value": "my-vercel-project", + "type": "string", + "required": false + }, + "environment_variable_id": { + "value": "env_var_123", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"key\":\"MY_ENV_VAR\",\"value\":\"new_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ExchangeSsoToken", + "qualifiedName": "VercelApi.ExchangeSsoToken", + "fullyQualifiedName": "VercelApi.ExchangeSsoToken@1.0.0", + "description": "Exchange OAuth code for an OIDC token to authenticate users.\n\nCall this tool to exchange an OAuth authorization code for an OIDC token during the SSO process. This helps authenticate users in Vercel without persisting the token. Refer to the Vercel SSO documentation for more details.", + "parameters": [ + { + "name": "authorization_code", + "type": "string", + "required": true, + "description": "The sensitive OAuth authorization code received from Vercel for the SSO token exchange process.", + "enum": null, + "inferrable": true + }, + { + "name": "integration_client_id", + "type": "string", + "required": true, + "description": "The unique client ID for the integration, required for authentication.", + "enum": null, + "inferrable": true + }, + { + "name": "integration_client_secret", + "type": "string", + "required": true, + "description": "The secret key for the integration client, used for authentication.", + "enum": null, + "inferrable": true + }, + { + "name": "authorization_state", + "type": "string", + "required": false, + "description": "The state received from the initialization request for security validation.", + "enum": null, + "inferrable": true + }, + { + "name": "integration_redirect_uri", + "type": "string", + "required": false, + "description": "The URL where the user will be redirected after authentication.", + "enum": null, + "inferrable": true + }, + { + "name": "sso_grant_type", + "type": "string", + "required": false, + "description": "Specifies the grant type as 'authorization_code' for OAuth process.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'exchange-sso-token'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ExchangeSsoToken", + "parameters": { + "authorization_code": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "integration_client_id": { + "value": "abcd-1234-efgh-5678", + "type": "string", + "required": true + }, + "integration_client_secret": { + "value": "shh-its-a-secret", + "type": "string", + "required": true + }, + "authorization_state": { + "value": "state-token", + "type": "string", + "required": false + }, + "integration_redirect_uri": { + "value": "https://example.com/redirect", + "type": "string", + "required": false + }, + "sso_grant_type": { + "value": "authorization_code", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchAccountInfo", + "qualifiedName": "VercelApi.FetchAccountInfo", + "fullyQualifiedName": "VercelApi.FetchAccountInfo@1.0.0", + "description": "Fetch the best account or user's contact info.\n\nUse this tool to retrieve detailed contact information for a user's account, ideal for scenarios where you need user engagement or account verification.", + "parameters": [ + { + "name": "integration_configuration_id", + "type": "string", + "required": true, + "description": "The unique identifier for the integration configuration. Required to fetch the user's account info.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-account-info'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.FetchAccountInfo", + "parameters": { + "integration_configuration_id": { + "value": "abc123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchDeploymentLogs", + "qualifiedName": "VercelApi.FetchDeploymentLogs", + "fullyQualifiedName": "VercelApi.FetchDeploymentLogs@1.0.0", + "description": "Retrieve build logs for a specific deployment by ID.\n\nUse this tool to access the build logs or events of a deployment using its deployment ID and build ID. It can stream logs continuously or return them in JSON format based on input parameters.", + "parameters": [ + { + "name": "deployment_identifier_or_hostname", + "type": "string", + "required": true, + "description": "The unique identifier or hostname of the deployment to fetch logs for.", + "enum": null, + "inferrable": true + }, + { + "name": "build_event_delimiter", + "type": "number", + "required": false, + "description": "Specify the delimiter type for separating logged events. Use '0' for no delimiter and '1' for an alternative separation method.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_build_id", + "type": "string", + "required": false, + "description": "The unique identifier for the deployment build for which logs are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_live_streaming", + "type": "number", + "required": false, + "description": "Set to '1' to enable live streaming of events as they happen. Use '0' to disable live streaming.", + "enum": null, + "inferrable": true + }, + { + "name": "event_order", + "type": "string", + "required": false, + "description": "Specifies the order of returned events by timestamp. Use 'forward' for chronological order or 'backward' for reverse order.", + "enum": null, + "inferrable": true + }, + { + "name": "fetch_until_timestamp", + "type": "number", + "required": false, + "description": "Timestamp up to which the build logs should be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_status_code", + "type": "string", + "required": false, + "description": "Specify the HTTP status code range to filter deployment events.", + "enum": null, + "inferrable": true + }, + { + "name": "include_builds", + "type": "number", + "required": false, + "description": "Specify whether to include build events (1) or not (0) in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_events_to_return", + "type": "number", + "required": false, + "description": "Specify the max number of events to return. Use `-1` for all available logs.", + "enum": null, + "inferrable": true + }, + { + "name": "start_timestamp_for_logs", + "type": "number", + "required": false, + "description": "Timestamp from which to start retrieving build logs. Provide in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "Identifies the team on whose behalf the request is performed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique identifier (slug) of the Team for which the request is made. Used to specify the team context.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDeploymentEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.FetchDeploymentLogs", + "parameters": { + "deployment_identifier_or_hostname": { + "value": "example.vercel.app", + "type": "string", + "required": true + }, + "build_event_delimiter": { + "value": 1, + "type": "integer", + "required": false + }, + "deployment_build_id": { + "value": "build_2w1s3e42", + "type": "string", + "required": false + }, + "enable_live_streaming": { + "value": 1, + "type": "integer", + "required": false + }, + "event_order": { + "value": "forward", + "type": "string", + "required": false + }, + "fetch_until_timestamp": { + "value": 1691539200000, + "type": "integer", + "required": false + }, + "filter_by_status_code": { + "value": "200-299", + "type": "string", + "required": false + }, + "include_builds": { + "value": 1, + "type": "integer", + "required": false + }, + "maximum_events_to_return": { + "value": 100, + "type": "integer", + "required": false + }, + "start_timestamp_for_logs": { + "value": 1691535600000, + "type": "integer", + "required": false + }, + "team_identifier": { + "value": "team_abc123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchDomainPrice", + "qualifiedName": "VercelApi.FetchDomainPrice", + "fullyQualifiedName": "VercelApi.FetchDomainPrice@1.0.0", + "description": "Retrieve price data for a specific domain from Vercel.\n\nUse this tool to get pricing information for a particular domain. It should be called when you need to verify or compare the cost of registering or renewing a domain via Vercel's registrar service.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The domain name to check the pricing for. Provide a fully qualified domain like 'example.com'.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_years", + "type": "string", + "required": false, + "description": "Specify the number of years for which the domain pricing is needed. Typically set to 1 or more.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "A string representing the unique identifier of the team associated with the domain. This is required for specifying which team's domain pricing information should be retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDomainPrice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.FetchDomainPrice", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "number_of_years": { + "value": "1", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-123456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchDomainTransferAvailability", + "qualifiedName": "VercelApi.FetchDomainTransferAvailability", + "fullyQualifiedName": "VercelApi.FetchDomainTransferAvailability@1.0.0", + "description": "Fetch a domain's transfer status or availability.\n\nUse this tool to check if a domain transfer is available or to obtain the transfer status if a transfer is in progress.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The domain name to check for transfer status or availability.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request on behalf of. It should be a string representing the team's unique ID.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The identifier slug of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDomainTransfer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.FetchDomainTransferAvailability", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchIntegrationResource", + "qualifiedName": "VercelApi.FetchIntegrationResource", + "fullyQualifiedName": "VercelApi.FetchIntegrationResource@1.0.0", + "description": "Fetch a resource using its partner ID.\n\nUse this tool to get detailed information about a specific resource by providing the integration configuration and resource IDs.", + "parameters": [ + { + "name": "integration_configuration_id", + "type": "string", + "required": true, + "description": "The ID of the specific installation to which the resource belongs.", + "enum": null, + "inferrable": true + }, + { + "name": "third_party_resource_id", + "type": "string", + "required": true, + "description": "The ID provided by the third-party provider for the specific resource.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-integration-resource'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.FetchIntegrationResource", + "parameters": { + "integration_configuration_id": { + "value": "intg_123456", + "type": "string", + "required": true + }, + "third_party_resource_id": { + "value": "resource_abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchProjectDomain", + "qualifiedName": "VercelApi.FetchProjectDomain", + "fullyQualifiedName": "VercelApi.FetchProjectDomain@1.0.0", + "description": "Fetch domain details for a specific project.\n\nUse this tool to obtain detailed information about a project's domain using the project's ID or name and the domain name.", + "parameters": [ + { + "name": "project_domain_name", + "type": "string", + "required": true, + "description": "The name of the project's domain to fetch details for.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_or_name", + "type": "string", + "required": true, + "description": "The unique project identifier or the project name for fetching domain details.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.FetchProjectDomain", + "parameters": { + "project_domain_name": { + "value": "example-project.com", + "type": "string", + "required": true + }, + "project_id_or_name": { + "value": "example-project-id", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ForceCompleteRollingRelease", + "qualifiedName": "VercelApi.ForceCompleteRollingRelease", + "fullyQualifiedName": "VercelApi.ForceCompleteRollingRelease@1.0.0", + "description": "Complete a rolling release to serve 100% traffic from canary.\n\n This tool should be used to force-complete a rolling release in Vercel projects, ensuring that the canary deployment is now serving 100% of the traffic. Call this tool when you need to finalize a rolling release deployment.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The project ID or URL-encoded project name in Vercel. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team on whose behalf the request is performed. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team for which the request is performed. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'completeRollingRelease'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ForceCompleteRollingRelease", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "my-vercel-project", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "my-team-id", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team-slug", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"forceComplete\": true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAccessGroupProject", + "qualifiedName": "VercelApi.GetAccessGroupProject", + "fullyQualifiedName": "VercelApi.GetAccessGroupProject@1.0.0", + "description": "Retrieve details of a specific access group project.\n\nUse this tool to obtain information about a specific project within an access group by providing the access group identifier or name and the project ID.", + "parameters": [ + { + "name": "access_group_id_or_name", + "type": "string", + "required": true, + "description": "The identifier or name of the access group for the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project within the access group. It is required to fetch the project details.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to perform the request on behalf of. This should be a string representing the team's unique ID.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug to perform the request on behalf of. Provide the specific slug associated with the team.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'readAccessGroupProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetAccessGroupProject", + "parameters": { + "access_group_id_or_name": { + "value": "marketing-team", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj-12345", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-67890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "marketing", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetActiveAttackStatus", + "qualifiedName": "VercelApi.GetActiveAttackStatus", + "fullyQualifiedName": "VercelApi.GetActiveAttackStatus@1.0.0", + "description": "Retrieve active attack data from the Vercel firewall.\n\nUse this tool to obtain information about any active attacks detected by Vercel's firewall within the specified number of days.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project to retrieve attack data for.", + "enum": null, + "inferrable": true + }, + { + "name": "active_days_since", + "type": "number", + "required": false, + "description": "Number of days in the past to look for active attack data. Defaults to 1 day if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the request on behalf of. This identifies which team to target for the retrieval of attack data within Vercel's system.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getActiveAttackStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetActiveAttackStatus", + "parameters": { + "project_id": { + "value": "proj_123456", + "type": "string", + "required": true + }, + "active_days_since": { + "value": 3, + "type": "integer", + "required": false + }, + "team_identifier": { + "value": "team_78910", + "type": "string", + "required": false + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAuthenticatedUserInfo", + "qualifiedName": "VercelApi.GetAuthenticatedUserInfo", + "fullyQualifiedName": "VercelApi.GetAuthenticatedUserInfo@1.0.0", + "description": "Retrieve current authenticated user's information.\n\nUse this tool to obtain details about the currently authenticated user from Vercel.", + "parameters": [], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAuthUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetAuthenticatedUserInfo", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCustomProjectEnvironments", + "qualifiedName": "VercelApi.GetCustomProjectEnvironments", + "fullyQualifiedName": "VercelApi.GetCustomProjectEnvironments@1.0.0", + "description": "Retrieve custom environments for a specified project.\n\nUse this tool to get custom environments of a project on Vercel. These environments cannot be named 'Production' or 'Preview'.", + "parameters": [ + { + "name": "project_id_or_name", + "type": "string", + "required": true, + "description": "The unique identifier or name of the project to retrieve custom environments.", + "enum": null, + "inferrable": true + }, + { + "name": "git_branch_name", + "type": "string", + "required": false, + "description": "Specify the git branch to fetch custom environments from. This identifies the branch to retrieve environments for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the Team to perform the request on behalf of. Expected as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the request on behalf of. This identifies the specific team related to the project.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetCustomProjectEnvironments", + "parameters": { + "project_id_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "git_branch_name": { + "value": "feature/awesome-feature", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "my-team-id", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDeploymentAliases", + "qualifiedName": "VercelApi.GetDeploymentAliases", + "fullyQualifiedName": "VercelApi.GetDeploymentAliases@1.0.0", + "description": "Fetch aliases for a specific deployment by ID.\n\nRetrieves all aliases associated with a given deployment ID. Use this to find or verify domain aliases linked to a specific Vercel deployment.", + "parameters": [ + { + "name": "deployment_id", + "type": "string", + "required": true, + "description": "The ID of the deployment for which to list the aliases.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to perform the request on behalf of. It is required to retrieve deployment aliases.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listDeploymentAliases'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetDeploymentAliases", + "parameters": { + "deployment_id": { + "value": "dpl_1234567890abcdef", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_abcdef123456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDeploymentCheckDetails", + "qualifiedName": "VercelApi.GetDeploymentCheckDetails", + "fullyQualifiedName": "VercelApi.GetDeploymentCheckDetails@1.0.0", + "description": "Retrieve details for a specific deployment check.\n\nThis tool is used to obtain detailed information about a single check within a specified deployment. Use it when you need insights or results from a specific deployment check.", + "parameters": [ + { + "name": "check_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the check to fetch details for.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_id", + "type": "string", + "required": true, + "description": "The ID of the deployment for which the check details are required.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the request is performed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifier for the team to perform the request on behalf of. It uniquely represents the team within the system.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCheck'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetDeploymentCheckDetails", + "parameters": { + "check_identifier": { + "value": "check_12345", + "type": "string", + "required": true + }, + "deployment_id": { + "value": "deploy_67890", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_abc", + "type": "string", + "required": false + }, + "team_slug": { + "value": "team-slug-example", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDeploymentInfo", + "qualifiedName": "VercelApi.GetDeploymentInfo", + "fullyQualifiedName": "VercelApi.GetDeploymentInfo@1.0.0", + "description": "Retrieve deployment information by ID or URL.\n\nUse this tool to get details about a Vercel deployment using either its ID or URL. This is useful for obtaining deployment specifics, especially when the user or team owns the deployment.", + "parameters": [ + { + "name": "deployment_id_or_url", + "type": "string", + "required": true, + "description": "The unique identifier or hostname of the deployment to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_git_repo_information", + "type": "string", + "required": false, + "description": "Set to 'true' to include Git repository details or 'false' to exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug for performing the request on behalf of that team.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDeployment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetDeploymentInfo", + "parameters": { + "deployment_id_or_url": { + "value": "https://my-project.vercel.app", + "type": "string", + "required": true + }, + "include_git_repo_information": { + "value": "true", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_123456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDeploymentRuntimeLogs", + "qualifiedName": "VercelApi.GetDeploymentRuntimeLogs", + "fullyQualifiedName": "VercelApi.GetDeploymentRuntimeLogs@1.0.0", + "description": "Get logs for a specific deployment's runtime.\n\nUse this tool to retrieve a stream of runtime logs for a given deployment in a project. This is useful for monitoring and debugging deployment processes.", + "parameters": [ + { + "name": "deployment_id", + "type": "string", + "required": true, + "description": "The unique identifier for the deployment whose runtime logs are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project related to the deployment. This is necessary to retrieve the correct runtime logs.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to make the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique slug representing the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRuntimeLogs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetDeploymentRuntimeLogs", + "parameters": { + "deployment_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj456def", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team789ghi", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDnsRecords", + "qualifiedName": "VercelApi.GetDnsRecords", + "fullyQualifiedName": "VercelApi.GetDnsRecords@1.0.0", + "description": "Retrieve DNS records for a specified domain name.\n\nThis tool fetches DNS records for a given domain. It returns up to 20 records by default, with additional records available through pagination.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The domain name for which to retrieve DNS records. Must be a valid domain.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_records_to_list", + "type": "string", + "required": false, + "description": "Specify the maximum number of DNS records to retrieve in a single request.", + "enum": null, + "inferrable": true + }, + { + "name": "records_created_after_timestamp", + "type": "string", + "required": false, + "description": "Get records created after this specified JavaScript timestamp. It filters DNS records based on the creation date.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "until_timestamp", + "type": "string", + "required": false, + "description": "Retrieve records created before the specified JavaScript timestamp.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRecords'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetDnsRecords", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "maximum_records_to_list": { + "value": "10", + "type": "string", + "required": false + }, + "records_created_after_timestamp": { + "value": "1622505600000", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": false + }, + "until_timestamp": { + "value": "1625097600000", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDomainAuthCode", + "qualifiedName": "VercelApi.GetDomainAuthCode", + "fullyQualifiedName": "VercelApi.GetDomainAuthCode@1.0.0", + "description": "Retrieve the auth code for transferring a domain from Vercel.\n\nThis tool is used to obtain the auth code needed to transfer a domain from Vercel to another registrar. It should be called when a domain transfer from Vercel is intended.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The domain name for which the auth code is being requested. It should be a valid domain registered with Vercel.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The ID representing the Vercel team associated with the domain. Required for accessing team-specific domains.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDomainAuthCode'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetDomainAuthCode", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDomainConfiguration", + "qualifiedName": "VercelApi.GetDomainConfiguration", + "fullyQualifiedName": "VercelApi.GetDomainConfiguration@1.0.0", + "description": "Retrieve configuration details for a specific domain.\n\nThis tool calls the Vercel API to get the configuration settings for a given domain. It should be used when you need insights into the current setup or settings of a domain on Vercel.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The name of the domain to retrieve configuration details for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_only_assigned_nameservers", + "type": "string", + "required": false, + "description": "When true, only nameservers assigned directly to the domain are included. When false, parent zone nameservers are included if no direct assignment exists.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_or_name", + "type": "string", + "required": false, + "description": "The project ID or name associated with the domain, used if not yet linked to a project.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team to perform the request on behalf of. It specifies which team's context to use when fetching domain configurations.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug used to perform the request on behalf of a specific team.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDomainConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetDomainConfiguration", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "include_only_assigned_nameservers": { + "value": "true", + "type": "string", + "required": false + }, + "project_id_or_name": { + "value": "my-project", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDomainContactInfoSchema", + "qualifiedName": "VercelApi.GetDomainContactInfoSchema", + "fullyQualifiedName": "VercelApi.GetDomainContactInfoSchema@1.0.0", + "description": "Retrieve the schema for TLD-specific contact information.\n\nUse this tool to get the necessary contact information schema required by specific TLDs for a domain. This is helpful when additional TLD-specific details are needed for domain registration or management.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The domain name for which to retrieve the TLD-specific contact information schema.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "A unique identifier for the team within Vercel. Required to retrieve domain-specific contact info.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getContactInfoSchema'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetDomainContactInfoSchema", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_12345", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDomainInfo", + "qualifiedName": "VercelApi.GetDomainInfo", + "fullyQualifiedName": "VercelApi.GetDomainInfo@1.0.0", + "description": "Retrieve information on a single domain from Vercel.\n\nUse this tool to get detailed information about a specific domain associated with a Vercel account or team. This can be useful for managing domains or checking their configuration.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The name of the domain to retrieve information for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team to perform the request on behalf of. Typically a unique string.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifier for the team on behalf of whom the request is made. It uniquely identifies the team in Vercel.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetDomainInfo", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "team-slug-example", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDomainOrderInfo", + "qualifiedName": "VercelApi.GetDomainOrderInfo", + "fullyQualifiedName": "VercelApi.GetDomainOrderInfo@1.0.0", + "description": "Retrieve information about a domain order by its ID.\n\nUse this tool to get detailed information about a specific domain order using its unique ID. It is useful for checking the status and details of a domain order processed through the registrar.", + "parameters": [ + { + "name": "order_id", + "type": "string", + "required": true, + "description": "The unique ID of the domain order to retrieve information about.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The ID of the team associated with the domain order. This identifies the specific team within Vercel that the domain order belongs to.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetDomainOrderInfo", + "parameters": { + "order_id": { + "value": "abc123456789", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDomainPrice", + "qualifiedName": "VercelApi.GetDomainPrice", + "fullyQualifiedName": "VercelApi.GetDomainPrice@1.0.0", + "description": "Retrieve domain price and purchase period details.\n\nUse this tool to obtain the cost of purchasing a specific domain and the duration of a single purchase period, replacing the deprecated endpoint for domain price checking.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The domain name to check the purchase price for.", + "enum": null, + "inferrable": true + }, + { + "name": "domain_status_for_pricing", + "type": "string", + "required": false, + "description": "Specifies the domain status ('new', 'renewal', 'transfer', 'redemption') to check the price for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier for executing the request on behalf of a specific team. This is usually a unique string assigned to the team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug_for_request", + "type": "string", + "required": false, + "description": "The slug identifier of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'checkDomainPrice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetDomainPrice", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "domain_status_for_pricing": { + "value": "new", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_123456", + "type": "string", + "required": false + }, + "team_slug_for_request": { + "value": "example-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEdgeConfig", + "qualifiedName": "VercelApi.GetEdgeConfig", + "fullyQualifiedName": "VercelApi.GetEdgeConfig@1.0.0", + "description": "Retrieve Edge Config details from Vercel.\n\nUse this tool to obtain configuration details for a specific Edge Config in Vercel. It should be called when you need to access or review settings for an Edge Config using its unique identifier.", + "parameters": [ + { + "name": "edge_config_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Edge Config to retrieve details from Vercel.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to perform the request on behalf of in Vercel.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the request on behalf of in Vercel. This identifier is needed to specify which team's settings are being accessed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEdgeConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetEdgeConfig", + "parameters": { + "edge_config_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEdgeConfigBackups", + "qualifiedName": "VercelApi.GetEdgeConfigBackups", + "fullyQualifiedName": "VercelApi.GetEdgeConfigBackups@1.0.0", + "description": "Retrieve backups of an Edge Config.\n\nThis tool retrieves and returns backups for a specified Edge Config. It should be called when there is a need to access or review past configurations of an Edge Config managed by Vercel.", + "parameters": [ + { + "name": "edge_config_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Edge Config whose backups you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "backup_limit", + "type": "number", + "required": false, + "description": "The maximum number of Edge Config backups to return. This is useful for paginating results.", + "enum": null, + "inferrable": true + }, + { + "name": "include_metadata", + "type": "string", + "required": false, + "description": "Indicate if metadata should be included in the response. Use 'true' to include.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "A token for fetching the next page of results if pagination is needed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The team slug to perform the request on behalf of. It identifies the specific team in Vercel.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEdgeConfigBackups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetEdgeConfigBackups", + "parameters": { + "edge_config_id": { + "value": "ec_123456789", + "type": "string", + "required": true + }, + "backup_limit": { + "value": 5, + "type": "integer", + "required": false + }, + "include_metadata": { + "value": "true", + "type": "string", + "required": false + }, + "next_page_token": { + "value": "token_abc123", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_987654", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEdgeConfigItem", + "qualifiedName": "VercelApi.GetEdgeConfigItem", + "fullyQualifiedName": "VercelApi.GetEdgeConfigItem@1.0.0", + "description": "Retrieve a specific Edge Config Item by its identifiers.\n\nUse this tool to get details of a specific Edge Config Item using its configuration ID and item key.", + "parameters": [ + { + "name": "edge_config_id", + "type": "string", + "required": true, + "description": "The ID of the Edge Config to retrieve a specific item from.", + "enum": null, + "inferrable": true + }, + { + "name": "edge_config_item_key", + "type": "string", + "required": true, + "description": "The key of the specific Edge Config Item to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The ID of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team for which the Edge Config Item is requested.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEdgeConfigItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetEdgeConfigItem", + "parameters": { + "edge_config_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "edge_config_item_key": { + "value": "itemKey789", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_001", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEdgeConfigItems", + "qualifiedName": "VercelApi.GetEdgeConfigItems", + "fullyQualifiedName": "VercelApi.GetEdgeConfigItems@1.0.0", + "description": "Retrieve all items from an Edge Config.\n\nCall this tool to obtain all items within a specified Edge Config by providing the Edge Config ID. Useful for accessing configuration details stored in Vercel's Edge Config.", + "parameters": [ + { + "name": "edge_config_id", + "type": "string", + "required": true, + "description": "The ID of the Edge Config to retrieve items from. This is required to specify which Edge Config data to access.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request for a specific Vercel team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team on whose behalf the request is made. Each team has a unique slug identifier.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEdgeConfigItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetEdgeConfigItems", + "parameters": { + "edge_config_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEdgeConfigs", + "qualifiedName": "VercelApi.GetEdgeConfigs", + "fullyQualifiedName": "VercelApi.GetEdgeConfigs@1.0.0", + "description": "Fetch all Edge Configs from Vercel's service.\n\nUse this tool to retrieve a comprehensive list of all Edge Configurations available in a Vercel account.", + "parameters": [ + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "Specify the Team identifier for which the Edge Configs need to be fetched.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEdgeConfigs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetEdgeConfigs", + "parameters": { + "team_identifier": { + "value": "my-team-123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEdgeConfigSchema", + "qualifiedName": "VercelApi.GetEdgeConfigSchema", + "fullyQualifiedName": "VercelApi.GetEdgeConfigSchema@1.0.0", + "description": "Retrieve the schema of an Edge Config.\n\nThis tool is used to obtain the schema details of a specific Edge Config by its ID. It should be called when there's a need to understand the structure or configuration of a given Edge Config.", + "parameters": [ + { + "name": "edge_config_id", + "type": "string", + "required": true, + "description": "The identifier for the specific Edge Config to retrieve its schema. It is required to specify which configuration's schema you want to query.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to make requests on their behalf.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEdgeConfigSchema'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetEdgeConfigSchema", + "parameters": { + "edge_config_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEdgeConfigTokenInfo", + "qualifiedName": "VercelApi.GetEdgeConfigTokenInfo", + "fullyQualifiedName": "VercelApi.GetEdgeConfigTokenInfo@1.0.0", + "description": "Retrieve metadata about an Edge Config token.\n\nUse this tool to obtain metadata for a specific Edge Config token by providing the edgeConfigId and token. Ideal for understanding token attributes and usage in Edge Config.", + "parameters": [ + { + "name": "edge_config_id", + "type": "string", + "required": true, + "description": "The identifier for the Edge Config to retrieve metadata for. This is required to specify which configuration token's information is needed.", + "enum": null, + "inferrable": true + }, + { + "name": "edge_config_token", + "type": "string", + "required": true, + "description": "The token used to obtain metadata for a specific Edge Config.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug for performing the request on behalf of a specific team.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEdgeConfigToken'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetEdgeConfigTokenInfo", + "parameters": { + "edge_config_id": { + "value": "ec_12345", + "type": "string", + "required": true + }, + "edge_config_token": { + "value": "token_ABC123456", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_987654", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my_team_slug", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetEdgeConfigTokens", + "qualifiedName": "VercelApi.GetEdgeConfigTokens", + "fullyQualifiedName": "VercelApi.GetEdgeConfigTokens@1.0.0", + "description": "Retrieve all tokens of a specific Edge Config.\n\nThis tool retrieves all tokens related to a specified Edge Config. It should be called when you need to access or manage tokens for an Edge Config identified by its edgeConfigId.", + "parameters": [ + { + "name": "edge_config_id", + "type": "string", + "required": true, + "description": "A string representing the unique identifier of the Edge Config to retrieve tokens for. This ID is necessary to specify which Edge Config's tokens are being accessed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The ID of the team to perform the request on behalf of. It identifies which team's Edge Config tokens to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "Slug of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEdgeConfigTokens'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetEdgeConfigTokens", + "parameters": { + "edge_config_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetFirewallConfig", + "qualifiedName": "VercelApi.GetFirewallConfig", + "fullyQualifiedName": "VercelApi.GetFirewallConfig@1.0.0", + "description": "Retrieve the active firewall configuration for a project.\n\nThis tool is used to obtain the active firewall configuration for a specific project by retrieving the specified version of the configuration.", + "parameters": [ + { + "name": "firewall_configuration_version", + "type": "string", + "required": true, + "description": "The deployed version of the firewall configuration to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project whose firewall configuration is being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The team slug to perform the request on behalf of. It identifies the specific team by its slug name.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getFirewallConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetFirewallConfig", + "parameters": { + "firewall_configuration_version": { + "value": "v1.2.3", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_ABC12345", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_xyz", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-awesome-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIntegrationConfiguration", + "qualifiedName": "VercelApi.GetIntegrationConfiguration", + "fullyQualifiedName": "VercelApi.GetIntegrationConfiguration@1.0.0", + "description": "Retrieve configuration details by ID.\n\nUse this tool to fetch the configuration details using a specific ID. The authenticated user or team must own the configuration to access it.", + "parameters": [ + { + "name": "configuration_id", + "type": "string", + "required": true, + "description": "ID of the configuration to retrieve. The user or team must own this configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique team slug to perform the request on behalf of a specific team.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getConfiguration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetIntegrationConfiguration", + "parameters": { + "configuration_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetIntegrationResources", + "qualifiedName": "VercelApi.GetIntegrationResources", + "fullyQualifiedName": "VercelApi.GetIntegrationResources@1.0.0", + "description": "Retrieve all resources for a given installation ID.\n\nUse this tool to get all resources associated with a specific integration installation. It requires the installation ID to fetch the relevant information.", + "parameters": [ + { + "name": "installation_id", + "type": "string", + "required": true, + "description": "The unique identifier of the integration installation to fetch resources for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-integration-resources'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetIntegrationResources", + "parameters": { + "installation_id": { + "value": "inst_123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetInvoiceDetails", + "qualifiedName": "VercelApi.GetInvoiceDetails", + "fullyQualifiedName": "VercelApi.GetInvoiceDetails@1.0.0", + "description": "Retrieve invoice details and status by ID.\n\nThis tool retrieves the details and status of an invoice using its ID. Use this when you need specific information about a particular invoice, such as its current status or other details.", + "parameters": [ + { + "name": "integration_configuration_id", + "type": "string", + "required": true, + "description": "The unique identifier for the integration configuration. Required to specify the configuration context for the invoice retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "invoice_id", + "type": "string", + "required": true, + "description": "The unique identifier of the invoice to retrieve details and status for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-invoice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetInvoiceDetails", + "parameters": { + "integration_configuration_id": { + "value": "int-12345-abc", + "type": "string", + "required": true + }, + "invoice_id": { + "value": "inv-67890-def", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetLastPromoteAliasesStatus", + "qualifiedName": "VercelApi.GetLastPromoteAliasesStatus", + "fullyQualifiedName": "VercelApi.GetLastPromoteAliasesStatus@1.0.0", + "description": "Retrieve aliases and their mapping status from last promote request.\n\nCall this tool to obtain a list of aliases related to the most recent promote request, along with their current mapping status for a specified project.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "Specify the Project ID to filter the promote aliases related to that specific project.", + "enum": null, + "inferrable": true + }, + { + "name": "aliases_created_before_timestamp", + "type": "number", + "required": false, + "description": "Get aliases created before this epoch timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_failed_aliases", + "type": "boolean", + "required": false, + "description": "Set to true to filter results to only include aliases that failed to map to the requested deployment.", + "enum": null, + "inferrable": true + }, + { + "name": "get_aliases_created_after_epoch", + "type": "number", + "required": false, + "description": "Get aliases created after the specified epoch timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "max_aliases_to_list", + "type": "number", + "required": false, + "description": "Specify the maximum number of aliases to list from the request. The maximum allowed is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request on behalf of. Must be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listPromoteAliases'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetLastPromoteAliasesStatus", + "parameters": { + "project_id": { + "value": "123456", + "type": "string", + "required": true + }, + "aliases_created_before_timestamp": { + "value": 1633036800, + "type": "integer", + "required": false + }, + "filter_failed_aliases": { + "value": true, + "type": "boolean", + "required": false + }, + "get_aliases_created_after_epoch": { + "value": 1632950400, + "type": "integer", + "required": false + }, + "max_aliases_to_list": { + "value": 50, + "type": "integer", + "required": false + }, + "team_identifier": { + "value": "team_abc", + "type": "string", + "required": false + }, + "team_slug": { + "value": "team-slug", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetMemberRoleInfo", + "qualifiedName": "VercelApi.GetMemberRoleInfo", + "fullyQualifiedName": "VercelApi.GetMemberRoleInfo@1.0.0", + "description": "Retrieve member role and details for a specific member ID.\n\nUse this tool to get the role and additional information for a member using their member ID. It is useful for verifying membership details and roles within installations.", + "parameters": [ + { + "name": "integration_configuration_id", + "type": "string", + "required": true, + "description": "A unique identifier for the integration configuration. Required to specify which integration to retrieve member details from.", + "enum": null, + "inferrable": true + }, + { + "name": "member_id", + "type": "string", + "required": true, + "description": "The ID of the member to retrieve role and details for. This corresponds to the \"user_id\" claim in the SSO OIDC token.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'get-member'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetMemberRoleInfo", + "parameters": { + "integration_configuration_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "member_id": { + "value": "user789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectEnvironmentVariables", + "qualifiedName": "VercelApi.GetProjectEnvironmentVariables", + "fullyQualifiedName": "VercelApi.GetProjectEnvironmentVariables@1.0.0", + "description": "Retrieve environment variables for a specified project.\n\nUse this tool to get the environment variables associated with a project by providing its `id` or `name`. Useful for managing and configuring project settings.", + "parameters": [ + { + "name": "project_id_or_name", + "type": "string", + "required": true, + "description": "The unique identifier or name of the project to retrieve environment variables for.", + "enum": null, + "inferrable": true + }, + { + "name": "caller_source", + "type": "string", + "required": false, + "description": "Specify the source making the API call.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_environment_id", + "type": "string", + "required": false, + "description": "The unique custom environment identifier within the project. Use this to specify a specific custom environment.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_environment_slug", + "type": "string", + "required": false, + "description": "The custom environment slug (name) within the project to filter specific settings.", + "enum": null, + "inferrable": true + }, + { + "name": "decrypt_values", + "type": "string", + "required": false, + "description": "Set to 'true' to decrypt environment variable values. Use 'false' to keep them encrypted.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_git_branch", + "type": "string", + "required": false, + "description": "Specify the git branch to filter the environment variable results. Must have target set to 'preview'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug to perform the request on behalf of. Use this to specify the team context for the request.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'filterProjectEnvs'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetProjectEnvironmentVariables", + "parameters": { + "project_id_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "caller_source": { + "value": "dashboard", + "type": "string", + "required": false + }, + "custom_environment_id": { + "value": "env-12345", + "type": "string", + "required": false + }, + "custom_environment_slug": { + "value": "staging", + "type": "string", + "required": false + }, + "decrypt_values": { + "value": "true", + "type": "string", + "required": false + }, + "filter_by_git_branch": { + "value": "preview", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-67890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetProjectInfo", + "qualifiedName": "VercelApi.GetProjectInfo", + "fullyQualifiedName": "VercelApi.GetProjectInfo@1.0.0", + "description": "Retrieve specific project details using project ID or name.\n\nThis tool retrieves information about a specific project by using the project ID or name. It's useful for accessing project details from Vercel.", + "parameters": [ + { + "name": "project_identifier_or_name", + "type": "string", + "required": true, + "description": "The unique project identifier or the project name to retrieve details.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique slug representing the team on whose behalf the request is performed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetProjectInfo", + "parameters": { + "project_identifier_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_abc123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRegisteredDomains", + "qualifiedName": "VercelApi.GetRegisteredDomains", + "fullyQualifiedName": "VercelApi.GetRegisteredDomains@1.0.0", + "description": "Retrieve a list of registered domains for the user or team.\n\nThis tool fetches a list of domains registered under the authenticated user or team from Vercel. It is useful for managing or reviewing domain configurations.", + "parameters": [ + { + "name": "domains_created_since_timestamp", + "type": "number", + "required": false, + "description": "Get domains created after the specified JavaScript timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_domains_to_list", + "type": "number", + "required": false, + "description": "The maximum number of domains to include in the list returned by the request.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The unique Team identifier to retrieve domains for a specific team instead of the authenticated user.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The team slug used to perform the request on behalf of a specific team.", + "enum": null, + "inferrable": true + }, + { + "name": "until_timestamp", + "type": "number", + "required": false, + "description": "Fetch domains created before this JavaScript timestamp.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDomains'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetRegisteredDomains", + "parameters": { + "domains_created_since_timestamp": { + "value": 1650000000000, + "type": "integer", + "required": false + }, + "maximum_domains_to_list": { + "value": 50, + "type": "integer", + "required": false + }, + "team_id": { + "value": "team_123456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "until_timestamp": { + "value": 1700000000000, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRollingRelease", + "qualifiedName": "VercelApi.GetRollingRelease", + "fullyQualifiedName": "VercelApi.GetRollingRelease@1.0.0", + "description": "Retrieve the rolling release for a specific project.\n\nUse this tool to get details about a project's rolling release, including its current status (active, aborted, or completed). Useful when monitoring or managing project deployments.", + "parameters": [ + { + "name": "project_id_or_name", + "type": "string", + "required": true, + "description": "The project ID or URL-encoded project name to identify the specific project.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_release_state", + "type": "string", + "required": false, + "description": "Filter the rolling release by its state: ACTIVE, COMPLETE, or ABORTED.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug that identifies the team on whose behalf the request is made. This is required for team-specific data access.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRollingRelease'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetRollingRelease", + "parameters": { + "project_id_or_name": { + "value": "my-project-123", + "type": "string", + "required": true + }, + "filter_by_release_state": { + "value": "ACTIVE", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRollingReleaseBillingStatus", + "qualifiedName": "VercelApi.GetRollingReleaseBillingStatus", + "fullyQualifiedName": "VercelApi.GetRollingReleaseBillingStatus@1.0.0", + "description": "Get the billing status for a project's rolling releases.\n\nThis tool retrieves the billing status for a specific project's rolling releases from Vercel. It determines if the project is eligible for configuration under rolling releases based on the team's billing status.", + "parameters": [ + { + "name": "project_id_or_name", + "type": "string", + "required": true, + "description": "Project ID or name, URL-encoded, to identify the project for which to retrieve billing status.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representation of the team to perform the request for. Used to specify which team's billing status is being queried.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRollingReleaseBillingStatus'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetRollingReleaseBillingStatus", + "parameters": { + "project_id_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRollingReleaseConfig", + "qualifiedName": "VercelApi.GetRollingReleaseConfig", + "fullyQualifiedName": "VercelApi.GetRollingReleaseConfig@1.0.0", + "description": "Fetch the rolling releases configuration for a project.\n\nUse this tool to obtain the template configuration for future rolling releases in a given project on Vercel. It does not provide settings for already active releases.", + "parameters": [ + { + "name": "project_identifier", + "type": "string", + "required": true, + "description": "The project ID or name, URL-encoded, to identify the project for the configuration request.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the Team on whose behalf the request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRollingReleaseConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetRollingReleaseConfig", + "parameters": { + "project_identifier": { + "value": "my-project", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-awesome-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetSupportedTlds", + "qualifiedName": "VercelApi.GetSupportedTlds", + "fullyQualifiedName": "VercelApi.GetSupportedTlds@1.0.0", + "description": "Retrieve a list of TLDs supported by Vercel.\n\nThis tool provides a list of Top-Level Domains (TLDs) that are supported by Vercel. Use this tool to find out which TLDs can be managed or registered through Vercel's platform.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The ID of the team for which to retrieve supported TLDs.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getSupportedTlds'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetSupportedTlds", + "parameters": { + "team_id": { + "value": "123456789", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTeamInfo", + "qualifiedName": "VercelApi.GetTeamInfo", + "fullyQualifiedName": "VercelApi.GetTeamInfo@1.0.0", + "description": "Retrieve information for a specified team using teamId.\n\nUse this tool to get detailed information about a team by specifying the teamId. It retrieves the data related to the team, which can include various details pertinent to the team specified.", + "parameters": [ + { + "name": "team_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the team to retrieve information about.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "A string representing the unique slug of the team. Used to specify which team's data to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetTeamInfo", + "parameters": { + "team_identifier": { + "value": "team_123456789", + "type": "string", + "required": true + }, + "team_slug": { + "value": "my-awesome-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTeamMembers", + "qualifiedName": "VercelApi.GetTeamMembers", + "fullyQualifiedName": "VercelApi.GetTeamMembers@1.0.0", + "description": "Retrieve a list of team members for a specified team.\n\nUse this tool to get a paginated list of members belonging to a specific team by providing the team ID.", + "parameters": [ + { + "name": "added_since_timestamp", + "type": "number", + "required": false, + "description": "Include team members added since this timestamp in milliseconds.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_project_id", + "type": "string", + "required": false, + "description": "Exclude members belonging to the specified project using the project ID.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_team_role", + "type": "string", + "required": false, + "description": "Return members with the specified team role. Valid roles include OWNER, MEMBER, DEVELOPER, SECURITY, BILLING, VIEWER, VIEWER_FOR_PLUS, and CONTRIBUTOR.", + "enum": null, + "inferrable": true + }, + { + "name": "include_members_until", + "type": "number", + "required": false, + "description": "Timestamp in milliseconds to include members added until this time.", + "enum": null, + "inferrable": true + }, + { + "name": "member_limit", + "type": "number", + "required": false, + "description": "Specify the maximum number of team members to return in a single request.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_for_eligible_members", + "type": "string", + "required": false, + "description": "Include team members eligible for the specified project by providing the project ID.", + "enum": null, + "inferrable": true + }, + { + "name": "search_team_members", + "type": "string", + "required": false, + "description": "Search for team members by their name, username, or email.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeamMembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetTeamMembers", + "parameters": { + "added_since_timestamp": { + "value": 1633036800000, + "type": "integer", + "required": false + }, + "exclude_project_id": { + "value": "proj_123456", + "type": "string", + "required": false + }, + "filter_by_team_role": { + "value": "DEVELOPER", + "type": "string", + "required": false + }, + "include_members_until": { + "value": 1635724800000, + "type": "integer", + "required": false + }, + "member_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "project_id_for_eligible_members": { + "value": "proj_654321", + "type": "string", + "required": false + }, + "search_team_members": { + "value": "john.doe@example.com", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTldPrice", + "qualifiedName": "VercelApi.GetTldPrice", + "fullyQualifiedName": "VercelApi.GetTldPrice@1.0.0", + "description": "Retrieve base price for a specific TLD.\n\nUse this tool to get the base price for a top-level domain (TLD). It does not account for premium domain pricing. For specific domain prices, refer to a different endpoint.", + "parameters": [ + { + "name": "top_level_domain", + "type": "string", + "required": true, + "description": "The top-level domain (TLD) for which to retrieve the base price. Examples include 'com', 'net', 'org'.", + "enum": null, + "inferrable": true + }, + { + "name": "registration_years", + "type": "string", + "required": false, + "description": "The number of years for which the TLD registration price should be calculated. Provide this as an integer representing the duration in years.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The ID of the team for which the TLD price data is requested.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTldPrice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetTldPrice", + "parameters": { + "top_level_domain": { + "value": "com", + "type": "string", + "required": true + }, + "registration_years": { + "value": "2", + "type": "string", + "required": false + }, + "team_id": { + "value": "team_12345", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUserTeams", + "qualifiedName": "VercelApi.GetUserTeams", + "fullyQualifiedName": "VercelApi.GetUserTeams@1.0.0", + "description": "Retrieve all teams for the authenticated user.\n\nCall this tool to get a list of all teams the authenticated user is a member of, with pagination support.", + "parameters": [ + { + "name": "max_number_of_teams", + "type": "number", + "required": false, + "description": "Maximum number of teams to return in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "teams_created_since_timestamp", + "type": "number", + "required": false, + "description": "Timestamp in milliseconds to include only teams created since this time.", + "enum": null, + "inferrable": true + }, + { + "name": "teams_created_until", + "type": "number", + "required": false, + "description": "Timestamp in milliseconds to filter Teams created until the specified time.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTeams'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetUserTeams", + "parameters": { + "max_number_of_teams": { + "value": 10, + "type": "integer", + "required": false + }, + "teams_created_since_timestamp": { + "value": 1630454400000, + "type": "integer", + "required": false + }, + "teams_created_until": { + "value": 1633046400000, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetVercelDeploymentFiles", + "qualifiedName": "VercelApi.GetVercelDeploymentFiles", + "fullyQualifiedName": "VercelApi.GetVercelDeploymentFiles@1.0.0", + "description": "Retrieve the file structure of a Vercel deployment.\n\nUse this tool to get the file structure of a Vercel deployment by providing the unique deployment identifier. Useful for analyzing the contents and structure of deployed source code.", + "parameters": [ + { + "name": "deployment_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the deployment to retrieve its file structure.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team performing the request. It is required for team-scoped requests.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listDeploymentFiles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetVercelDeploymentFiles", + "parameters": { + "deployment_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWebhook", + "qualifiedName": "VercelApi.GetWebhook", + "fullyQualifiedName": "VercelApi.GetWebhook@1.0.0", + "description": "Retrieve details of a specific webhook using its ID.\n\nUse this tool to obtain information about a specific webhook by providing its ID. It should be called when details are needed for a webhook managed by Vercel.", + "parameters": [ + { + "name": "webhook_id", + "type": "string", + "required": true, + "description": "The unique identifier of the webhook to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team on whose behalf the request is made. Required to specify the team context.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWebhook'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.GetWebhook", + "parameters": { + "webhook_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_xyz", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ImportResourceToVercel", + "qualifiedName": "VercelApi.ImportResourceToVercel", + "fullyQualifiedName": "VercelApi.ImportResourceToVercel@1.0.0", + "description": "Import or synchronize a resource to Vercel.\n\n This tool is used to import or update a resource in Vercel's installation. It should be called when resources created externally need to be synchronized with Vercel.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": false, + "description": "The unique identifier for the integration configuration in Vercel. Required to specify which configuration to use when importing the resource. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the resource to be imported or synchronized with Vercel. This ID is used to match the resource between the partner's system and Vercel's system. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'import-resource'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ImportResourceToVercel", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_configuration_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "resource_identifier": { + "value": "res456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"example-resource\",\"type\":\"frontend\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "InitiateProjectTransfer", + "qualifiedName": "VercelApi.InitiateProjectTransfer", + "fullyQualifiedName": "VercelApi.InitiateProjectTransfer@1.0.0", + "description": "Initiate a project transfer request between teams.\n\nThis tool initiates a project transfer request from one team to another on Vercel. It returns a code valid for 24 hours, which can be used to accept the transfer via a specified endpoint or claim URL.", + "parameters": [ + { + "name": "project_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the project to transfer between teams.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team initiating the project transfer.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug to perform the project transfer request on behalf of. This is a unique identifier for the team on Vercel.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_callback_url", + "type": "string", + "required": false, + "description": "The URL to send a webhook to when the project transfer is accepted.", + "enum": null, + "inferrable": true + }, + { + "name": "webhook_signing_secret", + "type": "string", + "required": false, + "description": "The secret key used to sign the webhook payload with HMAC-SHA256 for security verification.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createProjectTransferRequest'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.InitiateProjectTransfer", + "parameters": { + "project_id_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "webhook_callback_url": { + "value": "https://example.com/webhook", + "type": "string", + "required": false + }, + "webhook_signing_secret": { + "value": "superSecretKey", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "InitiateUserDeletion", + "qualifiedName": "VercelApi.InitiateUserDeletion", + "fullyQualifiedName": "VercelApi.InitiateUserDeletion@1.0.0", + "description": "Initiates user deletion and sends a confirmation email.\n\nUse this tool to start the deletion process for a user by emailing a confirmation link. The user has to follow the link to complete the deletion.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'requestDelete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.InitiateUserDeletion", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"userId\":\"12345\",\"email\":\"user@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "InvalidateAuthToken", + "qualifiedName": "VercelApi.InvalidateAuthToken", + "fullyQualifiedName": "VercelApi.InvalidateAuthToken@1.0.0", + "description": "Invalidate an authentication token to revoke access.\n\nThis tool is used to invalidate an authentication token, ensuring it is no longer valid for any future HTTP requests. Call this tool when you need to revoke access granted by a specific token.", + "parameters": [ + { + "name": "token_id", + "type": "string", + "required": true, + "description": "The ID of the token to invalidate. Use 'current' to invalidate the token used for this request.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAuthToken'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.InvalidateAuthToken", + "parameters": { + "token_id": { + "value": "current", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "InvalidateCacheByTags", + "qualifiedName": "VercelApi.InvalidateCacheByTags", + "fullyQualifiedName": "VercelApi.InvalidateCacheByTags@1.0.0", + "description": "Mark cache tags as stale for revalidation in the background.\n\n Use this tool to mark specific cache tags as stale, prompting them to be revalidated during the next request. This is useful when data associated with these tags has changed and needs refreshing.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id_or_name", + "type": "string", + "required": false, + "description": "Specify the project ID or name for which the cache tags should be marked as stale. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The Team identifier to execute the request for. Provide the team's unique ID. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The identifier (slug) for the team to perform the request on their behalf. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'invalidateByTags'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.InvalidateCacheByTags", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id_or_name": { + "value": "my-project-123", + "type": "string", + "required": false + }, + "team_id": { + "value": "team_456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"tags\":[\"tag1\",\"tag2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "InviteUserToTeam", + "qualifiedName": "VercelApi.InviteUserToTeam", + "fullyQualifiedName": "VercelApi.InviteUserToTeam@1.0.0", + "description": "Invite a user to join a Vercel team.\n\n This tool invites a user to join a specified Vercel team. The user issuing the command must be an OWNER of the team. Specify the user with an email or ID; ID takes precedence if both are provided.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Vercel team to which the user is being invited. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'inviteUserToTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.InviteUserToTeam", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"email\":\"user@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "IssueVercelCertificate", + "qualifiedName": "VercelApi.IssueVercelCertificate", + "fullyQualifiedName": "VercelApi.IssueVercelCertificate@1.0.0", + "description": "Request a new SSL certificate from Vercel.\n\nThis tool is used to issue a new SSL certificate through Vercel's API. It's called when you need to obtain a certificate for secure communication with your Vercel-hosted applications.", + "parameters": [ + { + "name": "common_names_for_certificate", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of common names (domains) that the SSL certificate should be issued for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The identifier for the Vercel team on whose behalf the certificate request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The team slug identifier for cert request on behalf of a specific team.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'issueCert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.IssueVercelCertificate", + "parameters": { + "common_names_for_certificate": { + "value": ["example.com", "www.example.com"], + "type": "array", + "required": false + }, + "team_id": { + "value": "123456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "JoinVercelTeam", + "qualifiedName": "VercelApi.JoinVercelTeam", + "fullyQualifiedName": "VercelApi.JoinVercelTeam@1.0.0", + "description": "Join a Vercel team using invite code or team ID.\n\nThis tool allows a user to join a Vercel team by providing an invite code or team ID. It should be called when a user wants to become a member of a specified team on Vercel.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The unique ID of the Vercel team to join. Use this if you have the team ID instead of an invite code.", + "enum": null, + "inferrable": true + }, + { + "name": "team_invite_code", + "type": "string", + "required": false, + "description": "The invite code used to join a specific Vercel team. This is a string value provided to new members for team access.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'joinTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.JoinVercelTeam", + "parameters": { + "team_id": { + "value": "12345", + "type": "string", + "required": true + }, + "team_invite_code": { + "value": "ABCDE12345", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAccessGroupMembers", + "qualifiedName": "VercelApi.ListAccessGroupMembers", + "fullyQualifiedName": "VercelApi.ListAccessGroupMembers@1.0.0", + "description": "Retrieve members of a specific access group.\n\nThis tool calls the API to list all members within a specified access group. Use it to retrieve member information for management or review purposes.", + "parameters": [ + { + "name": "access_group_id_or_name", + "type": "string", + "required": true, + "description": "Specify the ID or name of the access group to list its members.", + "enum": null, + "inferrable": true + }, + { + "name": "continuation_cursor_for_paging", + "type": "string", + "required": false, + "description": "Cursor used to retrieve the next page of access group members.", + "enum": null, + "inferrable": true + }, + { + "name": "member_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of access group members to return.", + "enum": null, + "inferrable": true + }, + { + "name": "member_search_query", + "type": "string", + "required": false, + "description": "Search for members using their name, username, or email.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier for which to list access group members.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique slug of the team for which you want to list access group members.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAccessGroupMembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ListAccessGroupMembers", + "parameters": { + "access_group_id_or_name": { + "value": "dev-team-01", + "type": "string", + "required": true + }, + "continuation_cursor_for_paging": { + "value": "eyJwYWdlIjpudWxsLCJjYXJlIjpudWxsLCJpbmRleCI6MSwibG9uZyI6MSwiaW5zdGFfYXZhaWxhYmxlIjpmYWxzZX0=", + "type": "string", + "required": false + }, + "member_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "member_search_query": { + "value": "john.doe@example.com", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "devteam", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAccessGroupProjects", + "qualifiedName": "VercelApi.ListAccessGroupProjects", + "fullyQualifiedName": "VercelApi.ListAccessGroupProjects@1.0.0", + "description": "Retrieve a list of projects for a given access group.\n\nThis tool should be called to obtain a list of projects associated with a specific access group by providing the group ID or name.", + "parameters": [ + { + "name": "access_group_identifier", + "type": "string", + "required": true, + "description": "The ID or name of the Access Group to list its projects.", + "enum": null, + "inferrable": true + }, + { + "name": "continuation_cursor", + "type": "string", + "required": false, + "description": "The continuation cursor used to retrieve the next page of results in a paginated response.", + "enum": null, + "inferrable": true + }, + { + "name": "max_project_count", + "type": "integer", + "required": false, + "description": "Maximum number of access group projects to return. Must be an integer.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to perform the request on behalf of. This specifies which team's access group projects to list.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the request on behalf of. Specify to filter projects by team.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAccessGroupProjects'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ListAccessGroupProjects", + "parameters": { + "access_group_identifier": { + "value": "access-group-123", + "type": "string", + "required": true + }, + "continuation_cursor": { + "value": "cursor-456", + "type": "string", + "required": false + }, + "max_project_count": { + "value": 10, + "type": "integer", + "required": false + }, + "team_identifier": { + "value": "team-789", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAccessGroups", + "qualifiedName": "VercelApi.ListAccessGroups", + "fullyQualifiedName": "VercelApi.ListAccessGroups@1.0.0", + "description": "Retrieve a list of access groups within Vercel.\n\nUse this tool to obtain a detailed list of all access groups available in your Vercel account.", + "parameters": [ + { + "name": "access_groups_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of access groups to be returned in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "continuation_cursor_for_next_page", + "type": "string", + "required": false, + "description": "A string to retrieve the next page of results using a continuation cursor.", + "enum": null, + "inferrable": true + }, + { + "name": "max_projects_in_response", + "type": "integer", + "required": false, + "description": "Specify the maximum number of projects to include in the response list.", + "enum": null, + "inferrable": true + }, + { + "name": "members_inclusion_limit", + "type": "integer", + "required": false, + "description": "Specify the number of members to include in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Filter access groups by the specified project ID in Vercel.", + "enum": null, + "inferrable": true + }, + { + "name": "search_access_groups_by_name", + "type": "string", + "required": false, + "description": "Provide a name or keyword to search for specific access groups.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The ID of the team for which to list access groups. Specify this to perform the request on behalf of a specific team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "A string representing the Team slug to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAccessGroups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ListAccessGroups", + "parameters": { + "access_groups_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "continuation_cursor_for_next_page": { + "value": "abc123", + "type": "string", + "required": false + }, + "max_projects_in_response": { + "value": 5, + "type": "integer", + "required": false + }, + "members_inclusion_limit": { + "value": 3, + "type": "integer", + "required": false + }, + "project_id": { + "value": "project-xyz", + "type": "string", + "required": false + }, + "search_access_groups_by_name": { + "value": "development", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListAliases", + "qualifiedName": "VercelApi.ListAliases", + "fullyQualifiedName": "VercelApi.ListAliases@1.0.0", + "description": "Retrieve a list of Vercel aliases for a user or team.\n\nThis tool retrieves a list of aliases for the authenticated Vercel user or team. Optionally, it can filter aliases by a specific domain or project.", + "parameters": [ + { + "name": "aliases_created_after_timestamp", + "type": "number", + "required": false, + "description": "Get aliases created after this JavaScript timestamp. Use a timestamp in milliseconds since the epoch.", + "enum": null, + "inferrable": true + }, + { + "name": "created_after_timestamp", + "type": "number", + "required": false, + "description": "Return aliases created after this UNIX timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_domain", + "type": "string", + "required": false, + "description": "Return only aliases associated with the specified domain name.", + "enum": null, + "inferrable": true + }, + { + "name": "get_aliases_before_timestamp", + "type": "number", + "required": false, + "description": "Retrieve aliases created before the specified JavaScript timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_aliases_to_list", + "type": "number", + "required": false, + "description": "Specifies the maximum number of aliases to retrieve in the request.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_filter", + "type": "string", + "required": false, + "description": "Filter to list aliases associated with the specified project ID.", + "enum": null, + "inferrable": true + }, + { + "name": "rollback_deployment_id", + "type": "string", + "required": false, + "description": "Specify the deployment ID to get aliases that would be rolled back for that deployment.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team to perform the request on behalf of. Use this to specify the team whose aliases should be listed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifier for the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAliases'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ListAliases", + "parameters": { + "aliases_created_after_timestamp": { + "value": 1635600000000, + "type": "integer", + "required": false + }, + "created_after_timestamp": { + "value": 1635500000, + "type": "integer", + "required": false + }, + "filter_by_domain": { + "value": "example.com", + "type": "string", + "required": false + }, + "get_aliases_before_timestamp": { + "value": 1635700000000, + "type": "integer", + "required": false + }, + "maximum_aliases_to_list": { + "value": 10, + "type": "integer", + "required": false + }, + "project_id_filter": { + "value": "proj_12345", + "type": "string", + "required": false + }, + "rollback_deployment_id": { + "value": "deploy_67890", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_abc", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListDeploymentChecks", + "qualifiedName": "VercelApi.ListDeploymentChecks", + "fullyQualifiedName": "VercelApi.ListDeploymentChecks@1.0.0", + "description": "List all checks for a specific deployment.\n\nFetches and lists all checks created for a given deployment using its ID.", + "parameters": [ + { + "name": "deployment_id", + "type": "string", + "required": true, + "description": "The ID of the deployment to retrieve checks for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The ID of the team to perform the request for. This identifies which team's context is used.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug used to perform the request. This identifies the team under which the deployment was made.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAllChecks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ListDeploymentChecks", + "parameters": { + "deployment_id": { + "value": "dpl_abc12345", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_xyz123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListIntegrationConfigurationProducts", + "qualifiedName": "VercelApi.ListIntegrationConfigurationProducts", + "fullyQualifiedName": "VercelApi.ListIntegrationConfigurationProducts@1.0.0", + "description": "Retrieve products for a specific integration configuration.\n\nUse this tool to list all available products for a given integration configuration. It helps discover resources that can be provisioned for integrations. The response includes product IDs, slugs, names, supported protocols, and metadata requirements.", + "parameters": [ + { + "name": "integration_configuration_id", + "type": "string", + "required": true, + "description": "ID of the specific integration configuration to list available products for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request on behalf of. It specifies which team's configuration products to list.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getConfigurationProducts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ListIntegrationConfigurationProducts", + "parameters": { + "integration_configuration_id": { + "value": "1234567890abcdef", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-xyz", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListProjectMembers", + "qualifiedName": "VercelApi.ListProjectMembers", + "fullyQualifiedName": "VercelApi.ListProjectMembers@1.0.0", + "description": "Retrieve all members of a specified project on Vercel.\n\nUse this tool to get a list of all team members associated with a particular project in Vercel. Call it when you need to know who is involved in a given project.", + "parameters": [ + { + "name": "project_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the project to list members for.", + "enum": null, + "inferrable": true + }, + { + "name": "added_since_timestamp", + "type": "integer", + "required": false, + "description": "Timestamp in milliseconds to include members added since this time.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time_timestamp", + "type": "integer", + "required": false, + "description": "The timestamp in milliseconds to include project members added until this time.", + "enum": null, + "inferrable": true + }, + { + "name": "member_limit", + "type": "integer", + "required": false, + "description": "Specify the maximum number of project members to return. Provide an integer value.", + "enum": null, + "inferrable": true + }, + { + "name": "search_project_members", + "type": "string", + "required": false, + "description": "Search for project members by name, username, or email.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team to perform the request on behalf of. This should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug to perform the request on behalf of, identifying the specific team associated with the project.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectMembers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ListProjectMembers", + "parameters": { + "project_id_or_name": { + "value": "my-cool-project", + "type": "string", + "required": true + }, + "added_since_timestamp": { + "value": 1690454400000, + "type": "integer", + "required": false + }, + "end_time_timestamp": { + "value": 1693046400000, + "type": "integer", + "required": false + }, + "member_limit": { + "value": 10, + "type": "integer", + "required": false + }, + "search_project_members": { + "value": "john.doe@example.com", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListUserEvents", + "qualifiedName": "VercelApi.ListUserEvents", + "fullyQualifiedName": "VercelApi.ListUserEvents@1.0.0", + "description": "Fetches a list of user-generated events on Vercel.\n\nThis tool retrieves events generated by user actions on Vercel, such as logging in, creating deployments, or joining teams. If a `teamId` is provided, events related to that specific team are returned.", + "parameters": [ + { + "name": "deprecated_user_id", + "type": "string", + "required": false, + "description": "Deprecated. Use 'principal_id' instead. If both 'principal_id' and 'deprecated_user_id' exist, 'principal_id' will be used.", + "enum": null, + "inferrable": true + }, + { + "name": "end_time_filter", + "type": "string", + "required": false, + "description": "Timestamp to filter events created until this time.", + "enum": null, + "inferrable": true + }, + { + "name": "event_types_filter", + "type": "string", + "required": false, + "description": "Comma-delimited list of event types to filter the results by.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_principal_id", + "type": "string", + "required": false, + "description": "Filter events generated by a specific principal when retrieving events for a Team.", + "enum": null, + "inferrable": true + }, + { + "name": "include_event_payload", + "type": "string", + "required": false, + "description": "Set to 'true' to include the 'payload' field in each event response.", + "enum": null, + "inferrable": true + }, + { + "name": "include_items_since_timestamp", + "type": "string", + "required": false, + "description": "Timestamp to only include items created since then. Use ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_to_return", + "type": "number", + "required": false, + "description": "Maximum number of items that can be returned from the request.", + "enum": null, + "inferrable": true + }, + { + "name": "project_ids_filter", + "type": "string", + "required": false, + "description": "Comma-separated list of project IDs to filter the events by.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "Specify the Team ID to retrieve events related to that team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug to perform the request on behalf of. Use this to specify which team's events to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listUserEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ListUserEvents", + "parameters": { + "deprecated_user_id": { + "value": "user_12345", + "type": "string", + "required": false + }, + "end_time_filter": { + "value": "2023-10-01T12:00:00Z", + "type": "string", + "required": false + }, + "event_types_filter": { + "value": "deployment_created,user_logged_in,team_joined", + "type": "string", + "required": false + }, + "filter_by_principal_id": { + "value": "principal_67890", + "type": "string", + "required": false + }, + "include_event_payload": { + "value": "true", + "type": "string", + "required": false + }, + "include_items_since_timestamp": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "maximum_items_to_return": { + "value": 50, + "type": "integer", + "required": false + }, + "project_ids_filter": { + "value": "project_abc,project_def", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_78910", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListVercelDeployments", + "qualifiedName": "VercelApi.ListVercelDeployments", + "fullyQualifiedName": "VercelApi.ListVercelDeployments@1.0.0", + "description": "Retrieve deployments from Vercel for a user or team.\n\nThis tool fetches the list of deployments for the authenticated user or team from Vercel. It should be called when users need to view their recent deployment history. If a deployment is incomplete, the URL will be null.", + "parameters": [ + { + "name": "branch_name_filter", + "type": "string", + "required": false, + "description": "Specify the branch name to filter deployments.", + "enum": null, + "inferrable": true + }, + { + "name": "created_after_timestamp", + "type": "number", + "required": false, + "description": "Retrieve deployments created after this Date timestamp. Defaults to current time if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_name", + "type": "string", + "required": false, + "description": "The name of the deployment to filter results.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_since_timestamp", + "type": "number", + "required": false, + "description": "Retrieve deployments created after this JavaScript timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_state_filter", + "type": "string", + "required": false, + "description": "Filter deployments by their state, such as `BUILDING`, `ERROR`, `INITIALIZING`, `QUEUED`, `READY`, or `CANCELED`.", + "enum": null, + "inferrable": true + }, + { + "name": "fetch_deployments_before_timestamp", + "type": "number", + "required": false, + "description": "Specify a JavaScript timestamp to retrieve deployments created before this time.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_environment", + "type": "string", + "required": false, + "description": "Specify the environment to filter deployments (e.g., 'production', 'staging').", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_project_id", + "type": "string", + "required": false, + "description": "Filter deployments using a specific project ID or name.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_project_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter deployments from specified project IDs. Cannot be used with the 'filter_by_project_id' argument.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_rollback_candidacy", + "type": "boolean", + "required": false, + "description": "Set to true to filter and include only rollback candidate deployments.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_sha", + "type": "string", + "required": false, + "description": "Filter deployments based on the specific SHA value.", + "enum": null, + "inferrable": true + }, + { + "name": "get_deployments_before_timestamp", + "type": "number", + "required": false, + "description": "A timestamp to get deployments created before a specific date. Useful for filtering older deployments. Defaults to the current time if not specified.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_deployments_to_list", + "type": "number", + "required": false, + "description": "Sets the maximum number of deployments to retrieve in one request.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team to perform the request on behalf of. Use when filtering deployments by team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The team slug to perform the request on behalf of. Specify which team's deployments to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "user_filter", + "type": "string", + "required": false, + "description": "Filter deployments by the user who created them. Provide a username or user ID.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDeployments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ListVercelDeployments", + "parameters": { + "branch_name_filter": { + "value": "main", + "type": "string", + "required": false + }, + "created_after_timestamp": { + "value": 1690000000000, + "type": "integer", + "required": false + }, + "deployment_name": { + "value": "my-deployment", + "type": "string", + "required": false + }, + "deployment_since_timestamp": { + "value": 1689900000000, + "type": "integer", + "required": false + }, + "deployment_state_filter": { + "value": "READY", + "type": "string", + "required": false + }, + "fetch_deployments_before_timestamp": { + "value": 1691000000000, + "type": "integer", + "required": false + }, + "filter_by_environment": { + "value": "production", + "type": "string", + "required": false + }, + "filter_by_project_id": { + "value": "project_123", + "type": "string", + "required": false + }, + "filter_by_project_ids": { + "value": ["project_456", "project_789"], + "type": "array", + "required": false + }, + "filter_by_rollback_candidacy": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_by_sha": { + "value": "abc123sha", + "type": "string", + "required": false + }, + "get_deployments_before_timestamp": { + "value": 1695000000000, + "type": "integer", + "required": false + }, + "maximum_deployments_to_list": { + "value": 50, + "type": "integer", + "required": false + }, + "team_identifier": { + "value": "team_abc", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "user_filter": { + "value": "user_123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListVercelWebhooks", + "qualifiedName": "VercelApi.ListVercelWebhooks", + "fullyQualifiedName": "VercelApi.ListVercelWebhooks@1.0.0", + "description": "Retrieve a list of webhooks from Vercel.\n\nThis tool is used to get all the webhooks associated with a Vercel account. Use this to monitor or manage integrations and callbacks configured in a Vercel environment.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project to retrieve webhooks from.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the Vercel team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifier for the team to perform the request on behalf of. This is used to specify which team's webhooks you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getWebhooks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ListVercelWebhooks", + "parameters": { + "project_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-xyz", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MoveProjectDomain", + "qualifiedName": "VercelApi.MoveProjectDomain", + "fullyQualifiedName": "VercelApi.MoveProjectDomain@1.0.0", + "description": "Transfer a domain from one project to another.\n\n Use this tool to move a project's domain to a different project, and optionally transfer redirects associated with that domain.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id_or_name", + "type": "string", + "required": false, + "description": "Provide the unique project identifier or the project name for the domain transfer. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_domain_name", + "type": "string", + "required": false, + "description": "The domain name of the project to be moved to another project. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the request is made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug for the team on whose behalf the request is made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'moveProjectDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.MoveProjectDomain", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id_or_name": { + "value": "my-project-123", + "type": "string", + "required": false + }, + "project_domain_name": { + "value": "example.com", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "myteam", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"redirects\": [{\"source\": \"/old-path\", \"destination\": \"/new-path\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "NotifyVercelOfUpdates", + "qualifiedName": "VercelApi.NotifyVercelOfUpdates", + "fullyQualifiedName": "VercelApi.NotifyVercelOfUpdates@1.0.0", + "description": "Send update notifications to Vercel for installations or resources.\n\n Use this tool to notify Vercel of changes to installations or resources. Trigger 'resource.updated' events when a resource linked to Vercel is modified, such as renaming a database or suspending a resource. Trigger 'installation.updated' events when an installation's billing plan changes without Vercel's involvement.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": false, + "description": "The ID of the integration configuration. It links the notification to the specific Vercel installation or resource. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'create-event'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.NotifyVercelOfUpdates", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_configuration_id": { + "value": "abc1234", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"event\":\"resource.updated\",\"details\":{\"resourceId\":\"res456\",\"changeType\":\"rename\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "PauseProject", + "qualifiedName": "VercelApi.PauseProject", + "fullyQualifiedName": "VercelApi.PauseProject@1.0.0", + "description": "Pause a Vercel project by its ID.\n\nUse this tool to pause a Vercel project by providing its project ID. This will disable auto-assigning custom production domains and block active Production Deployments if applicable.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Vercel project you wish to pause.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'pauseProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.PauseProject", + "parameters": { + "project_id": { + "value": "proj_123456789", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_987654321", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "PromoteDeploymentToProduction", + "qualifiedName": "VercelApi.PromoteDeploymentToProduction", + "fullyQualifiedName": "VercelApi.PromoteDeploymentToProduction@1.0.0", + "description": "Promotes a deployment to production without rebuilding it.\n\nUse this tool to promote an existing deployment to production on Vercel. This action does not rebuild the deployment. To rebuild, use the create-deployments endpoint instead.", + "parameters": [ + { + "name": "deployment_identifier", + "type": "string", + "required": true, + "description": "The ID of the deployment to be promoted to production. It should be a valid string representing the deployment ID.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project associated with the deployment to promote.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team on whose behalf the request is made. It should be a string value.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the promotion request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'requestPromote'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.PromoteDeploymentToProduction", + "parameters": { + "deployment_identifier": { + "value": "deploy_abc123xyz456", + "type": "string", + "required": true + }, + "project_id": { + "value": "project_789def012ghi345", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_678jkl901mno234", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "PurchaseDomain", + "qualifiedName": "VercelApi.PurchaseDomain", + "fullyQualifiedName": "VercelApi.PurchaseDomain@1.0.0", + "description": "Facilitates the purchase of a specified domain.\n\n Call this tool to purchase a domain through Vercel's new domain acquisition endpoints.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to perform the domain purchase request. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team to perform the purchase on behalf of. This identifies the team within Vercel. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'buyDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.PurchaseDomain", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"domain\":\"example.com\",\"purchase\":true}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "PurchaseDomainVercel", + "qualifiedName": "VercelApi.PurchaseDomainVercel", + "fullyQualifiedName": "VercelApi.PurchaseDomainVercel@1.0.0", + "description": "Purchase a domain with Vercel's API.\n\n This tool allows users to purchase a single domain using Vercel's API. It should be called when a user wants to buy a domain name.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "domain_name", + "type": "string", + "required": false, + "description": "The domain name that you wish to purchase using Vercel's API. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The unique identifier for the team under which the domain will be purchased. This is expected to be a string. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'buySingleDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.PurchaseDomainVercel", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "domain_name": { + "value": "example.com", + "type": "string", + "required": false + }, + "team_id": { + "value": "team_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"additional_info\":\"Purchasing domain for marketing purposes\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "PurchaseMultipleDomains", + "qualifiedName": "VercelApi.PurchaseMultipleDomains", + "fullyQualifiedName": "VercelApi.PurchaseMultipleDomains@1.0.0", + "description": "Purchase multiple domains simultaneously.\n\n Use this tool to buy several domains at once through Vercel's service. It should be called when a user wants to acquire multiple domain names in a single request.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The unique identifier for the team under which the domains will be purchased. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'buyDomains'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.PurchaseMultipleDomains", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_12345", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"domains\":[{\"name\":\"example1.com\",\"tld\":\".com\"},{\"name\":\"example2.net\",\"tld\":\".net\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "PushEdgeConfig", + "qualifiedName": "VercelApi.PushEdgeConfig", + "fullyQualifiedName": "VercelApi.PushEdgeConfig@1.0.0", + "description": "Push configuration data to Edge Config for syncing.\n\n Use this tool to push configuration data into the Edge Config when Edge Config syncing is enabled. It is used to update the relevant configurations for experimentation through Vercel.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": false, + "description": "The unique identifier for the integration configuration. Use this to specify which configuration to push to Edge Config. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_identifier", + "type": "string", + "required": false, + "description": "The ID of the resource for the configuration data to be pushed. Required for identifying the target Edge Config. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.PushEdgeConfig", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_configuration_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "resource_identifier": { + "value": "config_xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"key\":\"value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "QueryArtifactsInfo", + "qualifiedName": "VercelApi.QueryArtifactsInfo", + "fullyQualifiedName": "VercelApi.QueryArtifactsInfo@1.0.0", + "description": "Retrieve detailed information about multiple artifacts.\n\nThis tool queries detailed information about an array of artifacts. It should be called when you need specifics or insights regarding multiple artifacts from the Vercel platform.", + "parameters": [ + { + "name": "artifact_hashes", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of artifact hashes to query information for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifying the team for which the request is performed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'artifactQuery'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.QueryArtifactsInfo", + "parameters": { + "artifact_hashes": { + "value": ["hash1", "hash2", "hash3"], + "type": "array", + "required": true + }, + "team_identifier": { + "value": "team_123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ReadAccessGroup", + "qualifiedName": "VercelApi.ReadAccessGroup", + "fullyQualifiedName": "VercelApi.ReadAccessGroup@1.0.0", + "description": "Retrieve details of a specific access group.\n\nUse this tool to fetch information about an access group by its ID or name. It helps in obtaining the detailed configuration and properties of the specific access group.", + "parameters": [ + { + "name": "access_group_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the access group to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug used to perform the request on behalf of the specified team.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'readAccessGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.ReadAccessGroup", + "parameters": { + "access_group_id_or_name": { + "value": "team-access-group-123", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "example-team-456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RecordCacheEvents", + "qualifiedName": "VercelApi.RecordCacheEvents", + "fullyQualifiedName": "VercelApi.RecordCacheEvents@1.0.0", + "description": "Record artifacts cache usage events for Vercel.\n\n Use this tool to log cache usage events, including types 'HIT' or 'MISS', and sources 'LOCAL' or 'REMOTE'. Useful for tracking cache performance and usage.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request on behalf of. Used to specify which team's cache usage events are being recorded. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug to perform the request on behalf of. It identifies the specific team within Vercel. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "ci_environment", + "type": "string", + "required": false, + "description": "The continuous integration or delivery environment where this artifact is downloaded. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "is_interactive_shell", + "type": "integer", + "required": false, + "description": "Set to 1 if the client is an interactive shell, otherwise set to 0. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'recordEvents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RecordCacheEvents", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-awesome-team", + "type": "string", + "required": false + }, + "ci_environment": { + "value": "github_actions", + "type": "string", + "required": false + }, + "is_interactive_shell": { + "value": 0, + "type": "integer", + "required": false + }, + "request_body": { + "value": "{\"event\":\"HIT\",\"source\":\"LOCAL\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveBypassRule", + "qualifiedName": "VercelApi.RemoveBypassRule", + "fullyQualifiedName": "VercelApi.RemoveBypassRule@1.0.0", + "description": "Removes a bypass rule from the firewall.\n\n Use this tool to remove a system bypass rule from the Vercel firewall, ensuring that specific IPs can no longer bypass the security restrictions.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project from which to remove the bypass rule. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team on whose behalf the request is made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug indicating which team to perform the request on behalf of. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeBypassIp'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RemoveBypassRule", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_12345", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_67890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"rule_id\":\"bypass_rule_abc\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveCertificate", + "qualifiedName": "VercelApi.RemoveCertificate", + "fullyQualifiedName": "VercelApi.RemoveCertificate@1.0.0", + "description": "Remove a certificate from Vercel using its ID.\n\nThis tool removes a specific certificate from a Vercel account identified by its ID. It should be called when you need to delete an existing certificate to manage SSL/TLS configurations.", + "parameters": [ + { + "name": "certificate_id", + "type": "string", + "required": true, + "description": "The unique identifier of the certificate to remove.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the removal request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the request on behalf of in Vercel.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeCert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RemoveCertificate", + "parameters": { + "certificate_id": { + "value": "cert_123456789", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_abc123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveCustomEnvironment", + "qualifiedName": "VercelApi.RemoveCustomEnvironment", + "fullyQualifiedName": "VercelApi.RemoveCustomEnvironment@1.0.0", + "description": "Remove a specified custom environment from a project.\n\nThis tool removes a custom environment from a project, excluding 'Production' or 'Preview'. Use it when you need to delete a specific environment from a Vercel project.", + "parameters": [ + { + "name": "custom_environment_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the custom environment within the project to be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier_or_name", + "type": "string", + "required": true, + "description": "The unique project identifier or the project name to target the environment removal.", + "enum": null, + "inferrable": true + }, + { + "name": "delete_unassigned_environment_variables", + "type": "boolean", + "required": false, + "description": "Delete environment variables that are not assigned to any environments when set to true.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team to make the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team on whose behalf to perform the request.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeCustomEnvironment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RemoveCustomEnvironment", + "parameters": { + "custom_environment_identifier": { + "value": "staging-123", + "type": "string", + "required": true + }, + "project_identifier_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "delete_unassigned_environment_variables": { + "value": true, + "type": "boolean", + "required": false + }, + "team_identifier": { + "value": "team_456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveDnsRecord", + "qualifiedName": "VercelApi.RemoveDnsRecord", + "fullyQualifiedName": "VercelApi.RemoveDnsRecord@1.0.0", + "description": "Removes an existing DNS record from a domain.\n\nUse this tool to remove a DNS record from a specified domain. Useful when you need to delete outdated or incorrect DNS entries.", + "parameters": [ + { + "name": "dns_record_id", + "type": "string", + "required": true, + "description": "The unique identifier of the DNS record to be removed. Required for specifying which record to delete.", + "enum": null, + "inferrable": true + }, + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The domain from which the DNS record will be removed. Provide the full domain name.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the request is performed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team on whose behalf the DNS record is removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeRecord'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RemoveDnsRecord", + "parameters": { + "dns_record_id": { + "value": "record_12345", + "type": "string", + "required": true + }, + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_67890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveProjectDomain", + "qualifiedName": "VercelApi.RemoveProjectDomain", + "fullyQualifiedName": "VercelApi.RemoveProjectDomain@1.0.0", + "description": "Removes a domain from a specified project.\n\nUse this tool to remove a domain from a Vercel project by specifying the project's ID or name along with the domain name.", + "parameters": [ + { + "name": "project_domain_name", + "type": "string", + "required": true, + "description": "The domain name of the project to be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id_or_name", + "type": "string", + "required": true, + "description": "The unique project identifier or name to specify which project's domain is to be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "remove_redirects", + "type": "boolean", + "required": false, + "description": "Set to true to remove all domains from the project that redirect to the domain being removed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the request is performed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifier of the team to perform the request on behalf of. Used to specify which team's project domain should be removed.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeProjectDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RemoveProjectDomain", + "parameters": { + "project_domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "project_id_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "remove_redirects": { + "value": true, + "type": "boolean", + "required": false + }, + "team_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveProjectMember", + "qualifiedName": "VercelApi.RemoveProjectMember", + "fullyQualifiedName": "VercelApi.RemoveProjectMember@1.0.0", + "description": "Removes a member from a specific project.\n\nThis tool removes a specified member from a project. It should be used when you need to revoke a member's access to a project.", + "parameters": [ + { + "name": "project_id_or_name", + "type": "string", + "required": true, + "description": "The ID or name of the project from which the member will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique user ID of the member to be removed from the project.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the request is made. This should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug used to identify the Team for which the request is being made.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeProjectMember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RemoveProjectMember", + "parameters": { + "project_id_or_name": { + "value": "project-1234", + "type": "string", + "required": true + }, + "user_id": { + "value": "user-5678", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-a1b2c3", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveTeamMember", + "qualifiedName": "VercelApi.RemoveTeamMember", + "fullyQualifiedName": "VercelApi.RemoveTeamMember@1.0.0", + "description": "Remove or dismiss a team member or leave a team.\n\nThis tool removes a team member from a team, dismisses a user who requested access, or allows a user to leave a team on Vercel.", + "parameters": [ + { + "name": "team_id", + "type": "string", + "required": true, + "description": "The ID of the team from which to remove or dismiss a member, or leave.", + "enum": null, + "inferrable": true + }, + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier of the user to be removed or dismissed from the team.", + "enum": null, + "inferrable": true + }, + { + "name": "new_default_team_id", + "type": "string", + "required": false, + "description": "The ID of the team to set as the new default team for the Northstar user when removing another team member.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removeTeamMember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RemoveTeamMember", + "parameters": { + "team_id": { + "value": "team_12345", + "type": "string", + "required": true + }, + "user_id": { + "value": "user_67890", + "type": "string", + "required": true + }, + "new_default_team_id": { + "value": "team_54321", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RemoveVercelConfiguration", + "qualifiedName": "VercelApi.RemoveVercelConfiguration", + "fullyQualifiedName": "VercelApi.RemoveVercelConfiguration@1.0.0", + "description": "Delete a Vercel configuration by ID.\n\nUse this tool to remove a specific Vercel configuration and its associated resources by providing the configuration ID.", + "parameters": [ + { + "name": "configuration_id", + "type": "string", + "required": true, + "description": "The unique identifier of the Vercel configuration to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on behalf of which the configuration is removed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The team slug representing the Vercel team to perform the action on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteConfiguration'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RemoveVercelConfiguration", + "parameters": { + "configuration_id": { + "value": "config-123456", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-abc123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RenewDomain", + "qualifiedName": "VercelApi.RenewDomain", + "fullyQualifiedName": "VercelApi.RenewDomain@1.0.0", + "description": "Renews a domain registration through Vercel.\n\n\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "domain_name", + "type": "string", + "required": false, + "description": "The domain name to be renewed, in string format. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team that owns the domain. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'renewDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RenewDomain", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "domain_name": { + "value": "example.com", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_1234", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"duration\": \"1year\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RequestTeamAccess", + "qualifiedName": "VercelApi.RequestTeamAccess", + "fullyQualifiedName": "VercelApi.RequestTeamAccess@1.0.0", + "description": "Request to join a team on Vercel.\n\n This tool allows users to request access to a specific team on Vercel as a member. The request needs to be approved by a team owner, and only 10 users can have pending requests for a team at the same time.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The unique identifier of the Vercel team you want to join. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'requestAccessToTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RequestTeamAccess", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_id": { + "value": "team_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"reason\":\"Looking to collaborate on Vercel projects\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RequestVercelInvoiceRefund", + "qualifiedName": "VercelApi.RequestVercelInvoiceRefund", + "fullyQualifiedName": "VercelApi.RequestVercelInvoiceRefund@1.0.0", + "description": "Request a refund for an invoice in Vercel.\n\n Use this tool to request a refund for an invoice created via the Submit Invoice API in Vercel. Call this when a refund is necessary.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "vercel_integration_configuration_id", + "type": "string", + "required": false, + "description": "The unique identifier for the Vercel integration configuration related to the invoice. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "invoice_id", + "type": "string", + "required": false, + "description": "The unique identifier for the invoice for which the refund is requested. This ID is obtained from the invoice creation process. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-invoice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RequestVercelInvoiceRefund", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "vercel_integration_configuration_id": { + "value": "abc123xyz456", + "type": "string", + "required": false + }, + "invoice_id": { + "value": "invoice789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"reason\":\"Duplicate charge\",\"amount\":100}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RerequestCheck", + "qualifiedName": "VercelApi.RerequestCheck", + "fullyQualifiedName": "VercelApi.RerequestCheck@1.0.0", + "description": "Retries a failed deployment check.\n\nUse this tool to retry a specific deployment check that has failed. Ideal when you need to manually reinvoke a check due to a transient failure or updated conditions.", + "parameters": [ + { + "name": "check_to_rerun_id", + "type": "string", + "required": true, + "description": "The ID of the check you want to rerun. This identifies the specific failed check to retry.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_id", + "type": "string", + "required": true, + "description": "The ID of the deployment for which the check needs to be rerun. This specifies the which specific deployment's check is to be retried.", + "enum": null, + "inferrable": true + }, + { + "name": "mark_check_as_running", + "type": "boolean", + "required": false, + "description": "Mark the check as running if set to true when re-requested.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request on behalf of. It specifies which team's context the request should be executed in.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The identifier for the team to perform the check rerequest on behalf of. Use the team's slug format.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'rerequestCheck'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RerequestCheck", + "parameters": { + "check_to_rerun_id": { + "value": "abc123checkID", + "type": "string", + "required": true + }, + "deployment_id": { + "value": "def456deploymentID", + "type": "string", + "required": true + }, + "mark_check_as_running": { + "value": true, + "type": "boolean", + "required": false + }, + "team_identifier": { + "value": "my-team-identifier", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team-slug", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveAuthTokenMetadata", + "qualifiedName": "VercelApi.RetrieveAuthTokenMetadata", + "fullyQualifiedName": "VercelApi.RetrieveAuthTokenMetadata@1.0.0", + "description": "Retrieve metadata about an authentication token.\n\nThis tool retrieves metadata about an authentication token for the currently authenticated user. It should be called when details about a specific token are needed, such as checking token permissions or validity.", + "parameters": [ + { + "name": "authentication_token_identifier", + "type": "string", + "required": true, + "description": "The ID of the token to retrieve metadata for. Use \"current\" for the token that the current request is authenticated with.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAuthToken'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RetrieveAuthTokenMetadata", + "parameters": { + "authentication_token_identifier": { + "value": "current", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveAuthTokens", + "qualifiedName": "VercelApi.RetrieveAuthTokens", + "fullyQualifiedName": "VercelApi.RetrieveAuthTokens@1.0.0", + "description": "Retrieve a list of the current user's authentication tokens.\n\nUse this tool to get a list of authentication tokens for the current user. It is useful for managing and reviewing user access tokens.", + "parameters": [], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAuthTokens'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RetrieveAuthTokens", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveBillingPlans", + "qualifiedName": "VercelApi.RetrieveBillingPlans", + "fullyQualifiedName": "VercelApi.RetrieveBillingPlans@1.0.0", + "description": "Retrieve billing plans for a specific integration and product.\n\nUse this tool to obtain a list of billing plans associated with a specified integration and product. It retrieves the available plans using the integration and product identifiers.", + "parameters": [ + { + "name": "integration_identifier_or_slug", + "type": "string", + "required": true, + "description": "The unique identifier or slug for the integration to retrieve billing plans for. Use the specific key related to the integration.", + "enum": null, + "inferrable": true + }, + { + "name": "product_id_or_slug", + "type": "string", + "required": true, + "description": "The unique identifier or slug for the product to retrieve billing plans.", + "enum": null, + "inferrable": true + }, + { + "name": "additional_metadata", + "type": "string", + "required": false, + "description": "Optional metadata for the request, provided as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique team slug used to identify which team's context the request should be performed in.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBillingPlans'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RetrieveBillingPlans", + "parameters": { + "integration_identifier_or_slug": { + "value": "my-integration", + "type": "string", + "required": true + }, + "product_id_or_slug": { + "value": "my-product", + "type": "string", + "required": true + }, + "additional_metadata": { + "value": "optional request metadata", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "team-awesome", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCertificateById", + "qualifiedName": "VercelApi.RetrieveCertificateById", + "fullyQualifiedName": "VercelApi.RetrieveCertificateById@1.0.0", + "description": "Retrieve a Vercel certificate using its ID.\n\nUse this tool to get information about a specific Vercel certificate by providing its ID.", + "parameters": [ + { + "name": "certificate_id", + "type": "string", + "required": true, + "description": "The unique identifier of the certificate to be retrieved from Vercel.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifying the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCertById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RetrieveCertificateById", + "parameters": { + "certificate_id": { + "value": "cert_12345abcde", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_67890fghij", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team-slug", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCustomEnvironment", + "qualifiedName": "VercelApi.RetrieveCustomEnvironment", + "fullyQualifiedName": "VercelApi.RetrieveCustomEnvironment@1.0.0", + "description": "Retrieve custom environment details for a project.\n\nUse this tool to obtain information about a custom environment in a project, excluding 'Production' or 'Preview' environments.", + "parameters": [ + { + "name": "custom_environment_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a custom environment within the project, excluding 'Production' or 'Preview'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier_or_name", + "type": "string", + "required": true, + "description": "The unique project identifier or the project's name to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique Team identifier used to perform the request on behalf of a specified team.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug used to perform the request.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCustomEnvironment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RetrieveCustomEnvironment", + "parameters": { + "custom_environment_identifier": { + "value": "staging-12345", + "type": "string", + "required": true + }, + "project_identifier_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-67890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDeploymentFileContents", + "qualifiedName": "VercelApi.RetrieveDeploymentFileContents", + "fullyQualifiedName": "VercelApi.RetrieveDeploymentFileContents@1.0.0", + "description": "Retrieve the contents of a file from a Vercel deployment.\n\nUse this tool to get the content of a specific file from a Vercel deployment by providing the deployment and file identifiers. The response provides the file contents encoded in base64.", + "parameters": [ + { + "name": "deployment_unique_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the deployment from which to retrieve the file.", + "enum": null, + "inferrable": true + }, + { + "name": "file_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the file you want to retrieve from the deployment.", + "enum": null, + "inferrable": true + }, + { + "name": "file_path", + "type": "string", + "required": false, + "description": "Path to the file to fetch, applicable only for Git-based deployments.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to make the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the request on behalf of. Specify which team's context to use.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getDeploymentFileContents'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RetrieveDeploymentFileContents", + "parameters": { + "deployment_unique_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "file_identifier": { + "value": "file_789", + "type": "string", + "required": true + }, + "file_path": { + "value": "/src/index.js", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveEdgeConfigBackup", + "qualifiedName": "VercelApi.RetrieveEdgeConfigBackup", + "fullyQualifiedName": "VercelApi.RetrieveEdgeConfigBackup@1.0.0", + "description": "Retrieve a specific Edge Config version from backup storage.\n\nUse this tool to fetch a particular version of an Edge Config that is stored as a backup. This is helpful for accessing historical configurations or restoring previous settings.", + "parameters": [ + { + "name": "edge_config_backup_version_id", + "type": "string", + "required": true, + "description": "The unique identifier for the backup version of the Edge Config to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "edge_config_id", + "type": "string", + "required": true, + "description": "The ID of the Edge Config to retrieve from backup storage.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the Team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The team's unique slug to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getEdgeConfigBackup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RetrieveEdgeConfigBackup", + "parameters": { + "edge_config_backup_version_id": { + "value": "v1.0.3", + "type": "string", + "required": true + }, + "edge_config_id": { + "value": "config-xyz-123", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-abc-456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "myteam", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveIntegrationConfigurations", + "qualifiedName": "VercelApi.RetrieveIntegrationConfigurations", + "fullyQualifiedName": "VercelApi.RetrieveIntegrationConfigurations@1.0.0", + "description": "Retrieve all configurations for an authenticated integration.\n\nUse this tool to access configurations associated with an authenticated integration on Vercel, excluding those from the authorization flow when using the `project` view.", + "parameters": [ + { + "name": "configuration_view_type", + "type": "string", + "required": true, + "description": "Specify 'account' to view all configurations or 'project' to exclude configurations generated from the authorization flow.", + "enum": null, + "inferrable": true + }, + { + "name": "installation_type", + "type": "string", + "required": false, + "description": "Specifies the installation type. Options are 'marketplace' or 'external'.", + "enum": null, + "inferrable": true + }, + { + "name": "integration_id", + "type": "string", + "required": false, + "description": "The ID or slug of the integration to retrieve configurations for.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "Specifies the Team ID to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug to perform the request on behalf of when retrieving configurations.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getConfigurations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RetrieveIntegrationConfigurations", + "parameters": { + "configuration_view_type": { + "value": "account", + "type": "string", + "required": true + }, + "installation_type": { + "value": "marketplace", + "type": "string", + "required": false + }, + "integration_id": { + "value": "my-integration-123", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveIntegrationLogDrains", + "qualifiedName": "VercelApi.RetrieveIntegrationLogDrains", + "fullyQualifiedName": "VercelApi.RetrieveIntegrationLogDrains@1.0.0", + "description": "Retrieve all integration log drains for the user or team.\n\nThis tool retrieves a list of all integration log drains defined for the authenticated user or team. It is especially useful when using an OAuth2 token, as the list is limited to log drains created by the authenticated integration.", + "parameters": [ + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the Team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the request on behalf of. Used to specify which team's log drains to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getIntegrationLogDrains'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RetrieveIntegrationLogDrains", + "parameters": { + "team_identifier": { + "value": "team_abc123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-awesome-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProjectBypassRules", + "qualifiedName": "VercelApi.RetrieveProjectBypassRules", + "fullyQualifiedName": "VercelApi.RetrieveProjectBypassRules@1.0.0", + "description": "Retrieve the bypass rules for a specified project.\n\nUse this tool to access the system bypass rules configured for a specific project on Vercel. It is useful for security management and monitoring of firewall settings.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project for which to retrieve bypass rules.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_domain", + "type": "string", + "required": false, + "description": "Specify the domain to filter bypass rules. This filters rules related to the given domain.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_project_scope", + "type": "boolean", + "required": false, + "description": "Set to true to filter results by project-scoped rules.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_source_ip", + "type": "string", + "required": false, + "description": "Specify a source IP to filter the system bypass rules for a project.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_offset", + "type": "string", + "required": false, + "description": "Pagination offset, retrieving results after the specified ID.", + "enum": null, + "inferrable": true + }, + { + "name": "result_limit", + "type": "number", + "required": false, + "description": "The maximum number of rules to retrieve. Specify as a number. This is useful for controlling the volume of data returned.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team on whose behalf the request is performed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team to make the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBypassIp'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RetrieveProjectBypassRules", + "parameters": { + "project_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "filter_by_domain": { + "value": "example.com", + "type": "string", + "required": false + }, + "filter_by_project_scope": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_by_source_ip": { + "value": "192.168.1.1", + "type": "string", + "required": false + }, + "pagination_offset": { + "value": "10", + "type": "string", + "required": false + }, + "result_limit": { + "value": 50, + "type": "integer", + "required": false + }, + "team_identifier": { + "value": "team_987654321", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProjectDomains", + "qualifiedName": "VercelApi.RetrieveProjectDomains", + "fullyQualifiedName": "VercelApi.RetrieveProjectDomains@1.0.0", + "description": "Retrieve domains linked to a specific project.\n\nUse this tool to get the domains associated with a project by providing the project's ID or name. This can help manage and review project-related domains efficiently.", + "parameters": [ + { + "name": "project_id_or_name", + "type": "string", + "required": true, + "description": "Specify the unique project identifier or the project name.", + "enum": null, + "inferrable": true + }, + { + "name": "created_before_timestamp", + "type": "number", + "required": false, + "description": "Get domains created before this JavaScript timestamp for filtering results.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_environment_id", + "type": "string", + "required": false, + "description": "The unique custom environment identifier within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "domains_created_since_timestamp", + "type": "number", + "required": false, + "description": "Get domains created after this JavaScript timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "domains_sort_order", + "type": "string", + "required": false, + "description": "Sort order for domains based on creation date.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_git_branch", + "type": "string", + "required": false, + "description": "Specify the branch to filter domains associated with that branch.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_redirect_target", + "type": "string", + "required": false, + "description": "Specify the redirect target to filter domains. Useful for targeting specific redirections.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_verification_status", + "type": "string", + "required": false, + "description": "Filter domains by their verification status (e.g., verified, unverified).", + "enum": null, + "inferrable": true + }, + { + "name": "filter_production_domains", + "type": "string", + "required": false, + "description": "Set to 'true' to filter only production domains; otherwise, returns all.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_target_domain", + "type": "string", + "required": false, + "description": "Specify 'production' or 'preview' to filter domains based on their target environment.", + "enum": null, + "inferrable": true + }, + { + "name": "include_redirect_domains", + "type": "string", + "required": false, + "description": "Specify whether to include redirect project domains. Use \"true\" to include (default), \"false\" to exclude.", + "enum": null, + "inferrable": true + }, + { + "name": "max_domains_to_list", + "type": "number", + "required": false, + "description": "The maximum number of domains to list in the response, with a maximum value of 100.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectDomains'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RetrieveProjectDomains", + "parameters": { + "project_id_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "created_before_timestamp": { + "value": 1672531199000, + "type": "integer", + "required": false + }, + "custom_environment_id": { + "value": "env_12345", + "type": "string", + "required": false + }, + "domains_created_since_timestamp": { + "value": 1672444800000, + "type": "integer", + "required": false + }, + "domains_sort_order": { + "value": "asc", + "type": "string", + "required": false + }, + "filter_by_git_branch": { + "value": "main", + "type": "string", + "required": false + }, + "filter_by_redirect_target": { + "value": "https://example.com", + "type": "string", + "required": false + }, + "filter_by_verification_status": { + "value": "verified", + "type": "string", + "required": false + }, + "filter_production_domains": { + "value": "true", + "type": "string", + "required": false + }, + "filter_target_domain": { + "value": "production", + "type": "string", + "required": false + }, + "include_redirect_domains": { + "value": "false", + "type": "string", + "required": false + }, + "max_domains_to_list": { + "value": 50, + "type": "integer", + "required": false + }, + "team_identifier": { + "value": "team_67890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProjectEnvironmentVariable", + "qualifiedName": "VercelApi.RetrieveProjectEnvironmentVariable", + "fullyQualifiedName": "VercelApi.RetrieveProjectEnvironmentVariable@1.0.0", + "description": "Retrieve the environment variable for a given project.\n\nCall this tool to access the environment variable details for a specific project using its ID or name.", + "parameters": [ + { + "name": "environment_variable_id", + "type": "string", + "required": true, + "description": "The unique ID for the environment variable to retrieve its decrypted value.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier_or_name", + "type": "string", + "required": true, + "description": "The unique identifier or name of the project to retrieve its environment variable.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug for the team to perform the request on behalf of. This identifies the team in a user-friendly way.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjectEnv'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RetrieveProjectEnvironmentVariable", + "parameters": { + "environment_variable_id": { + "value": "env_var_12345", + "type": "string", + "required": true + }, + "project_identifier_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_abc", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveProjectsList", + "qualifiedName": "VercelApi.RetrieveProjectsList", + "fullyQualifiedName": "VercelApi.RetrieveProjectsList@1.0.0", + "description": "Retrieve the list of user's or team's projects.\n\nThis tool fetches the list of projects associated with the authenticated user or team. It supports pagination and allows filtering through query parameters.", + "parameters": [ + { + "name": "exclude_repositories", + "type": "string", + "required": false, + "description": "Comma-separated list of repository names to exclude from the results.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_edge_config_id", + "type": "string", + "required": false, + "description": "Filter results by connected Edge Config ID. Provide the ID as a string to retrieve projects linked to this specific config.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_edge_config_token_id", + "type": "string", + "required": false, + "description": "Filter results by the connected Edge Config Token ID. Provide the specific token ID to refine project search.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_elastic_concurrency", + "type": "string", + "required": false, + "description": "Filter projects by elastic concurrency status. Use '1' for enabled or '0' for disabled.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_repo", + "type": "string", + "required": false, + "description": "Filter the project results by the specified repository name, also used for project count.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_repository_id", + "type": "string", + "required": false, + "description": "Filter the project results by specifying the Repository ID.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_static_ips_enabled", + "type": "string", + "required": false, + "description": "Set to '1' to filter projects with Static IPs enabled, '0' otherwise.", + "enum": null, + "inferrable": true + }, + { + "name": "include_deprecated_projects", + "type": "boolean", + "required": false, + "description": "Include deprecated projects in the results when set to True.", + "enum": null, + "inferrable": true + }, + { + "name": "max_projects_returned", + "type": "string", + "required": false, + "description": "Specifies the maximum number of projects to return in the list.", + "enum": null, + "inferrable": true + }, + { + "name": "repository_url_filter", + "type": "string", + "required": false, + "description": "URL to filter projects associated with a specific repository.", + "enum": null, + "inferrable": true + }, + { + "name": "require_git_fork_authorization", + "type": "string", + "required": false, + "description": "Set to '1' to require authorization for Git fork PRs before deployment, or '0' to disable.", + "enum": null, + "inferrable": true + }, + { + "name": "search_by_project_name", + "type": "string", + "required": false, + "description": "Search for projects using a keyword or term in the name field.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The ID of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The team slug to perform the request on behalf of, representing a specific team within Vercel.", + "enum": null, + "inferrable": true + }, + { + "name": "updated_after", + "type": "string", + "required": false, + "description": "Filter projects updated after the specified timestamp or using a continuation token.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getProjects'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RetrieveProjectsList", + "parameters": { + "exclude_repositories": { + "value": "repo1,repo2", + "type": "string", + "required": false + }, + "filter_by_edge_config_id": { + "value": "edge-config-123", + "type": "string", + "required": false + }, + "filter_by_edge_config_token_id": { + "value": "token-456", + "type": "string", + "required": false + }, + "filter_by_elastic_concurrency": { + "value": "1", + "type": "string", + "required": false + }, + "filter_by_repo": { + "value": "my-repo", + "type": "string", + "required": false + }, + "filter_by_repository_id": { + "value": "repo-id-789", + "type": "string", + "required": false + }, + "filter_by_static_ips_enabled": { + "value": "0", + "type": "string", + "required": false + }, + "include_deprecated_projects": { + "value": true, + "type": "boolean", + "required": false + }, + "max_projects_returned": { + "value": "10", + "type": "string", + "required": false + }, + "repository_url_filter": { + "value": "https://github.com/my-org/my-repo", + "type": "string", + "required": false + }, + "require_git_fork_authorization": { + "value": "1", + "type": "string", + "required": false + }, + "search_by_project_name": { + "value": "my-project", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-abc", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "updated_after": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveVercelAlias", + "qualifiedName": "VercelApi.RetrieveVercelAlias", + "fullyQualifiedName": "VercelApi.RetrieveVercelAlias@1.0.0", + "description": "Retrieve Vercel alias information for a host name or alias ID.\n\nUse this tool to fetch alias details for a specified host name or alias ID on Vercel.", + "parameters": [ + { + "name": "alias_identifier", + "type": "string", + "required": true, + "description": "The alias or alias ID of the Vercel entity to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "after_timestamp", + "type": "number", + "required": false, + "description": "Get the alias only if it was created after this JavaScript timestamp (milliseconds since epoch).", + "enum": null, + "inferrable": true + }, + { + "name": "created_after_timestamp", + "type": "number", + "required": false, + "description": "Retrieve the alias only if it was created after the specified timestamp (in milliseconds).", + "enum": null, + "inferrable": true + }, + { + "name": "created_before_timestamp", + "type": "number", + "required": false, + "description": "Retrieve the alias only if it was created before this JavaScript timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "Fetch the alias only if it is associated with this project ID in Vercel.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug to perform the request on behalf of. This specifies the team context for the alias retrieval.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAlias'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.RetrieveVercelAlias", + "parameters": { + "alias_identifier": { + "value": "example-alias.vercel.app", + "type": "string", + "required": true + }, + "after_timestamp": { + "value": 1672444800000, + "type": "integer", + "required": false + }, + "created_after_timestamp": { + "value": 1672531200000, + "type": "integer", + "required": false + }, + "created_before_timestamp": { + "value": 1672617600000, + "type": "integer", + "required": false + }, + "project_id": { + "value": "proj_123456", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_7890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SetDeploymentAlias", + "qualifiedName": "VercelApi.SetDeploymentAlias", + "fullyQualifiedName": "VercelApi.SetDeploymentAlias@1.0.0", + "description": "Assigns a new alias to a Vercel deployment.\n\nUse this tool to create or update an alias for a specific Vercel deployment. If the alias is currently linked to another deployment, it will be reassigned to the specified deployment.", + "parameters": [ + { + "name": "deployment_id", + "type": "string", + "required": true, + "description": "The ID of the deployment to assign the alias to. This identifier is crucial for specifying which deployment will receive the new alias.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_alias", + "type": "string", + "required": false, + "description": "The alias to assign to the specified Vercel deployment.", + "enum": null, + "inferrable": true + }, + { + "name": "redirect_hostname", + "type": "string", + "required": false, + "description": "Hostname to redirect the alias to, using status code 307. This will override the deployment ID from the URL.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to perform the alias assignment on behalf of. Required for team-based operations.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug to perform the request on behalf of. This identifies the team for the deployment operation.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'assignAlias'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.SetDeploymentAlias", + "parameters": { + "deployment_id": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + }, + "deployment_alias": { + "value": "my-new-alias", + "type": "string", + "required": false + }, + "redirect_hostname": { + "value": "example.com", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-123456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-awesome-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SetFirewallConfiguration", + "qualifiedName": "VercelApi.SetFirewallConfiguration", + "fullyQualifiedName": "VercelApi.SetFirewallConfiguration@1.0.0", + "description": "Update firewall configuration with specified rules.\n\n This tool sets or overwrites the firewall configuration with the provided rules and settings on Vercel.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": false, + "description": "The unique identifier for the project to configure the firewall settings. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team to perform the request on behalf of. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team for which the firewall configuration will be updated. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'putFirewallConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.SetFirewallConfiguration", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj_123456", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_789", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"rules\": [{\"action\": \"allow\", \"source\": \"0.0.0.0/0\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SubmitBillingData", + "qualifiedName": "VercelApi.SubmitBillingData", + "fullyQualifiedName": "VercelApi.SubmitBillingData@1.0.0", + "description": "Submit billing and usage data to the server.\n\n This tool should be used to send billing and usage data at least once a day, ideally once per hour, using the provided access token for authorization.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": false, + "description": "A string representing the unique identifier for the integration configuration. This is required to submit billing data. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'submit-billing-data'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.SubmitBillingData", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_configuration_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"usageData\":{\"bandwidth\":1500,\"requests\":800}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SubmitInvoiceToVercel", + "qualifiedName": "VercelApi.SubmitInvoiceToVercel", + "fullyQualifiedName": "VercelApi.SubmitInvoiceToVercel@1.0.0", + "description": "Submit an invoice to Vercel's billing system.\n\n Use this tool to submit an invoice to Vercel, creating it in their billing system and sending it to the customer. Suitable for different billing plans at various stages of the billing period. Ensure compliance with billing limitations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": false, + "description": "The unique ID for the Vercel integration configuration. This links the invoice submission to the correct integration setup in Vercel. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'submit-invoice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.SubmitInvoiceToVercel", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_configuration_id": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"invoice_number\": \"INV-001\", \"amount\": 100.0, \"currency\": \"USD\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SubmitPrepaymentBalances", + "qualifiedName": "VercelApi.SubmitPrepaymentBalances", + "fullyQualifiedName": "VercelApi.SubmitPrepaymentBalances@1.0.0", + "description": "Submit prepayment balances to Vercel for billing.\n\n This tool sends prepayment balances to Vercel, which should be done at least daily, but ideally hourly. It requires the access token provided during the installation process for authorization.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": false, + "description": "The unique identifier for the integration configuration. Use the ID provided during the integration setup. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'submit-prepayment-balances'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.SubmitPrepaymentBalances", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_configuration_id": { + "value": "abc123xyz", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"balance\": 150.75, \"currency\": \"USD\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "TransferDomainToVercel", + "qualifiedName": "VercelApi.TransferDomainToVercel", + "fullyQualifiedName": "VercelApi.TransferDomainToVercel@1.0.0", + "description": "Transfer a domain to Vercel from another registrar.\n\n Use this tool to initiate the transfer of a domain from its current registrar to Vercel. This is useful when consolidating domain management under Vercel's services.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "domain_name", + "type": "string", + "required": false, + "description": "The domain name to be transferred to Vercel. It should be a valid domain currently registered elsewhere. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the Vercel team requesting the domain transfer. It helps associate the domain transfer with the correct Vercel team. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'transferInDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.TransferDomainToVercel", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "domain_name": { + "value": "exampledomain.com", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"transfer\":{\"name\":\"exampledomain.com\",\"auth_code\":\"ABC123XYZ\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UnpauseProject", + "qualifiedName": "VercelApi.UnpauseProject", + "fullyQualifiedName": "VercelApi.UnpauseProject@1.0.0", + "description": "Unpause a Vercel project using its project ID.\n\nUse this tool to unpause a Vercel project by providing its project ID. The tool confirms successful unpausing or indicates failure if the project ID is invalid.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Vercel project to be unpaused.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on behalf of which the request is performed. Used to specify the target team in Vercel.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifying the team to perform the request on behalf of. Required for targeting the correct team's project.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'unpauseProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UnpauseProject", + "parameters": { + "project_id": { + "value": "proj_1234567", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_abcdef", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAccessGroup", + "qualifiedName": "VercelApi.UpdateAccessGroup", + "fullyQualifiedName": "VercelApi.UpdateAccessGroup@1.0.0", + "description": "Update metadata for an access group.\n\n Use this tool to update the metadata of a specified access group by its ID or name. This is helpful when you need to modify access controls or group settings.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "access_group_id_or_name", + "type": "string", + "required": false, + "description": "The ID or name of the access group to update. Use either the unique identifier or the group's name to specify which access group you want to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team on whose behalf the request is performed. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The identifier for the team, used to perform the request on its behalf. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateAccessGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateAccessGroup", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "access_group_id_or_name": { + "value": "example-access-group", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"metadata\":{\"description\":\"Updated access group description\",\"permissions\":[\"read\",\"write\"]}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAccessGroupProject", + "qualifiedName": "VercelApi.UpdateAccessGroupProject", + "fullyQualifiedName": "VercelApi.UpdateAccessGroupProject@1.0.0", + "description": "Update an access group project in Vercel.\n\nThis tool allows updating the details of a specific access group project in Vercel. It should be called when modifications to an existing access group project are needed, such as changing roles or permissions.", + "parameters": [ + { + "name": "access_group_id_or_name", + "type": "string", + "required": true, + "description": "Specify the access group by its ID or name to target the update.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the project to update in the access group.", + "enum": null, + "inferrable": true + }, + { + "name": "project_role", + "type": "string", + "required": true, + "description": "Specify the project role to add to the access group. Choose from 'ADMIN', 'PROJECT_VIEWER', or 'PROJECT_DEVELOPER'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique identifier for the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateAccessGroupProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateAccessGroupProject", + "parameters": { + "access_group_id_or_name": { + "value": "dev-team-access", + "type": "string", + "required": true + }, + "project_id": { + "value": "proj-12345", + "type": "string", + "required": true + }, + "project_role": { + "value": "PROJECT_DEVELOPER", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-67890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "dev-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateApexDomain", + "qualifiedName": "VercelApi.UpdateApexDomain", + "fullyQualifiedName": "VercelApi.UpdateApexDomain@1.0.0", + "description": "Update or move the apex domain configuration.\n\n This tool updates or moves the apex domain configuration. It is not used for updating auto-renew or nameservers, for which separate endpoints should be used.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "apex_domain_name", + "type": "string", + "required": false, + "description": "The apex domain to update or move. Accepts a string value representing the domain name (e.g., 'example.com'). Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to perform the domain update on behalf of. This allows the request to be associated with a specific team. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifying the Team on whose behalf the request is made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateApexDomain", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "apex_domain_name": { + "value": "example.com", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"some_key\":\"some_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateAttackChallengeMode", + "qualifiedName": "VercelApi.UpdateAttackChallengeMode", + "fullyQualifiedName": "VercelApi.UpdateAttackChallengeMode@1.0.0", + "description": "Updates Attack Challenge mode setting for a project.\n\nThis tool updates the Attack Challenge mode setting for a project in Vercel's security settings. Use it when you need to enable or disable the Attack Challenge mode.", + "parameters": [ + { + "name": "enable_attack_challenge_mode", + "type": "boolean", + "required": true, + "description": "Set to true to enable Attack Challenge mode; false to disable it.", + "enum": null, + "inferrable": true + }, + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier of the project to update the Attack Challenge mode for.", + "enum": null, + "inferrable": true + }, + { + "name": "attack_mode_active_until", + "type": "number", + "required": false, + "description": "The UNIX timestamp indicating when the Attack Challenge mode should be active until. Specify this to control the duration of the mode being enabled.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team on whose behalf the request is made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique slug of the team on behalf of which the request is made.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateAttackChallengeMode'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateAttackChallengeMode", + "parameters": { + "enable_attack_challenge_mode": { + "value": true, + "type": "boolean", + "required": true + }, + "project_id": { + "value": "proj_123456789", + "type": "string", + "required": true + }, + "attack_mode_active_until": { + "value": 1691904000, + "type": "integer", + "required": false + }, + "team_identifier": { + "value": "team_987654321", + "type": "string", + "required": false + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCustomEnvironment", + "qualifiedName": "VercelApi.UpdateCustomEnvironment", + "fullyQualifiedName": "VercelApi.UpdateCustomEnvironment@1.0.0", + "description": "Update a custom environment for a Vercel project.\n\nUse this tool to update a custom environment in a Vercel project. The environment should not be named 'Production' or 'Preview'. Useful for managing project-specific settings.", + "parameters": [ + { + "name": "custom_environment_id", + "type": "string", + "required": true, + "description": "The unique identifier for the custom environment within the project.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier_or_name", + "type": "string", + "required": true, + "description": "The unique project identifier or project name for the custom environment.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_matcher_type", + "type": "string", + "required": false, + "description": "Specifies the branch matcher type: 'equals', 'startsWith', or 'endsWith'.", + "enum": null, + "inferrable": true + }, + { + "name": "branch_name_pattern", + "type": "string", + "required": false, + "description": "Specify a portion or full Git branch name for matching. Used to identify branches in custom environments.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_environment_description", + "type": "string", + "required": false, + "description": "Optional description of the custom environment to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "custom_environment_slug", + "type": "string", + "required": false, + "description": "Slug of the custom environment to update. Must not be 'Production' or 'Preview'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the update on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateCustomEnvironment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateCustomEnvironment", + "parameters": { + "custom_environment_id": { + "value": "env_12345abcde", + "type": "string", + "required": true + }, + "project_identifier_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "branch_matcher_type": { + "value": "startsWith", + "type": "string", + "required": false + }, + "branch_name_pattern": { + "value": "feature/", + "type": "string", + "required": false + }, + "custom_environment_description": { + "value": "This environment is for feature development.", + "type": "string", + "required": false + }, + "custom_environment_slug": { + "value": "feature-dev", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_67890fghij", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDnsRecord", + "qualifiedName": "VercelApi.UpdateDnsRecord", + "fullyQualifiedName": "VercelApi.UpdateDnsRecord@1.0.0", + "description": "Update an existing DNS record for a domain.\n\n This tool updates an existing DNS record for a specified domain name. It should be called when changes to a DNS record are needed, such as modifying the value or type. The tool returns details of the updated record after the operation is successful.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "dns_record_id", + "type": "string", + "required": false, + "description": "The unique identifier of the DNS record to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team performing the request. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the Team to perform the DNS update on behalf of. It is used to specify the team context for the request. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateRecord'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateDnsRecord", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "dns_record_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_xyz", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"type\":\"A\",\"name\":\"www.example.com\",\"value\":\"192.0.2.1\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDomainAutoRenew", + "qualifiedName": "VercelApi.UpdateDomainAutoRenew", + "fullyQualifiedName": "VercelApi.UpdateDomainAutoRenew@1.0.0", + "description": "Update the auto-renew setting for a domain.\n\nUse this tool to toggle the auto-renewal option for a specific domain. Useful for managing domain renewal preferences.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The domain for which you want to update the auto-renew setting. It should be a valid domain name, such as 'example.com'.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_auto_renew", + "type": "boolean", + "required": true, + "description": "Set to true to enable auto-renewal of the domain, or false to disable it.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The unique identifier for the team associated with the domain.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateDomainAutoRenew'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateDomainAutoRenew", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "enable_auto_renew": { + "value": true, + "type": "boolean", + "required": true + }, + "team_id": { + "value": "team_12345", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDomainNameservers", + "qualifiedName": "VercelApi.UpdateDomainNameservers", + "fullyQualifiedName": "VercelApi.UpdateDomainNameservers@1.0.0", + "description": "Update the nameservers for a domain.\n\nUse this tool to change the nameservers of a domain via Vercel. An empty array can be provided to revert to Vercel's default nameservers.", + "parameters": [ + { + "name": "domain_name", + "type": "string", + "required": true, + "description": "The domain name to update the nameservers for. Provide the full domain, e.g., 'example.com'.", + "enum": null, + "inferrable": true + }, + { + "name": "nameservers_list", + "type": "array", + "innerType": "string", + "required": true, + "description": "A list of nameservers to set for the domain. Pass an empty list to revert to Vercel's default nameservers.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The unique identifier for the team to which the domain belongs. If not provided, the default team context is used.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateDomainNameservers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateDomainNameservers", + "parameters": { + "domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "nameservers_list": { + "value": ["ns1.example.com", "ns2.example.com"], + "type": "array", + "required": true + }, + "team_id": { + "value": "team_123456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEdgeConfig", + "qualifiedName": "VercelApi.UpdateEdgeConfig", + "fullyQualifiedName": "VercelApi.UpdateEdgeConfig@1.0.0", + "description": "Update an existing Edge Config to apply changes.\n\nThis tool updates an existing Edge Config with new settings. It should be called when there is a need to modify the settings of an Edge Config identified by its ID.", + "parameters": [ + { + "name": "edge_config_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the Edge Config to be updated. This is required to specify which configuration should be modified.", + "enum": null, + "inferrable": true + }, + { + "name": "edge_config_slug", + "type": "string", + "required": true, + "description": "The unique slug identifier for the Edge Config that needs updating.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": true, + "description": "The slug identifying the team on whose behalf the request is performed.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team to perform the request for. Required for updating the Edge Config on behalf of a specific team.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateEdgeConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateEdgeConfig", + "parameters": { + "edge_config_identifier": { + "value": "abc123", + "type": "string", + "required": true + }, + "edge_config_slug": { + "value": "my-edge-config", + "type": "string", + "required": true + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team-456", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEdgeConfigItems", + "qualifiedName": "VercelApi.UpdateEdgeConfigItems", + "fullyQualifiedName": "VercelApi.UpdateEdgeConfigItems@1.0.0", + "description": "Batch update Edge Config Items efficiently.\n\n Use this tool to update multiple Edge Config Items in a single request. Ideal for making bulk modifications to your Vercel Edge Configurations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "edge_config_identifier", + "type": "string", + "required": false, + "description": "The identifier for the specific Edge Config to update in the batch request. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the Team on whose behalf the request is made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique slug of the team to perform the request on behalf of. It identifies the team in a URL-friendly format. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchEdgeConfigItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateEdgeConfigItems", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "edge_config_identifier": { + "value": "config-12345", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-67890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"key\":\"value\", \"another_key\":\"another_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateEdgeConfigSchema", + "qualifiedName": "VercelApi.UpdateEdgeConfigSchema", + "fullyQualifiedName": "VercelApi.UpdateEdgeConfigSchema@1.0.0", + "description": "Update an Edge Config's schema to modify its structure.\n\nUse this tool to update the schema of an Edge Config in Vercel. It is useful when changes to the structure or configuration settings of an Edge Config are needed.", + "parameters": [ + { + "name": "edge_config_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Edge Config to update its schema.", + "enum": null, + "inferrable": true + }, + { + "name": "edge_config_schema_definition", + "type": "string", + "required": true, + "description": "JSON string defining the updated structure and settings of the Edge Config.", + "enum": null, + "inferrable": true + }, + { + "name": "enable_dry_run", + "type": "string", + "required": false, + "description": "Set to true to simulate the update without applying changes. Useful for testing.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique ID of the team on whose behalf the request will be made.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug to perform the request on behalf of. It identifies the specific team for the operation.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchEdgeConfigSchema'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateEdgeConfigSchema", + "parameters": { + "edge_config_identifier": { + "value": "abc123", + "type": "string", + "required": true + }, + "edge_config_schema_definition": { + "value": "{\"type\":\"object\",\"properties\":{\"key1\":{\"type\":\"string\"},\"key2\":{\"type\":\"number\"}}}", + "type": "string", + "required": true + }, + "enable_dry_run": { + "value": "false", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "example-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateExistingCheck", + "qualifiedName": "VercelApi.UpdateExistingCheck", + "fullyQualifiedName": "VercelApi.UpdateExistingCheck@1.0.0", + "description": "Updates an existing deployment check.\n\n Use this tool to update an existing check in a deployment on Vercel. Ensure that OAuth2 authentication is used to avoid errors.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "deployment_id", + "type": "string", + "required": false, + "description": "The identifier for the deployment to update the check for. Ensure it is a valid string. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "check_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the check to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier of the Team to perform the request on behalf of. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the request on behalf of. This identifies the team within Vercel. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateCheck'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateExistingCheck", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "deployment_id": { + "value": "abc123def456", + "type": "string", + "required": false + }, + "check_identifier": { + "value": "check_1", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_42", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-awesome-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"status\":\"updated\",\"message\":\"Check updated successfully.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateExperimentationItem", + "qualifiedName": "VercelApi.UpdateExperimentationItem", + "fullyQualifiedName": "VercelApi.UpdateExperimentationItem@1.0.0", + "description": "Update an existing experimentation item.\n\n Use this tool to modify the details of an existing experimentation item in a Vercel installation. It's called when you need to update specific experimentation parameters or configurations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": false, + "description": "The ID of the integration configuration to be updated. This identifies which configuration is being patched. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the experimentation resource to update. Provides context for which item needs modification. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "experiment_item_id", + "type": "string", + "required": false, + "description": "The unique identifier for the experimentation item to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateExperimentationItem", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_configuration_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "resource_identifier": { + "value": "resource_456", + "type": "string", + "required": false + }, + "experiment_item_id": { + "value": "experiment_789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Experiment\",\"status\":\"active\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateFirewallConfig", + "qualifiedName": "VercelApi.UpdateFirewallConfig", + "fullyQualifiedName": "VercelApi.UpdateFirewallConfig@1.0.0", + "description": "Modify the existing firewall config for a project.\n\n\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the project to modify the firewall config. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to perform the request on behalf of. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug used to identify the team for the request. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateFirewallConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateFirewallConfig", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier": { + "value": "project-12345", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team-67890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"action\":\"allow\",\"ip_ranges\":[\"192.0.2.0/24\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateIntegrationDeployment", + "qualifiedName": "VercelApi.UpdateIntegrationDeployment", + "fullyQualifiedName": "VercelApi.UpdateIntegrationDeployment@1.0.0", + "description": "Update a deployment integration action.\n\n Use this tool to update the action of a deployment integration for a specific installation. It is ideal for modifying settings or actions related to deployment integrations.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "deployment_id", + "type": "string", + "required": false, + "description": "The unique identifier for the deployment to update. This is required to specify which deployment's integration action should be modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": false, + "description": "The ID of the integration configuration to update. This is required to specify which integration setup the action applies to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier for the resource to be updated in the deployment integration. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "deployment_action", + "type": "string", + "required": false, + "description": "Specifies the action to be taken for the deployment integration. Expected as a descriptive string indicating the action type. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-integration-deployment-action'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateIntegrationDeployment", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "deployment_id": { + "value": "dep_1234567890", + "type": "string", + "required": false + }, + "integration_configuration_id": { + "value": "int_conf_0987654321", + "type": "string", + "required": false + }, + "resource_id": { + "value": "resource_abcdef", + "type": "string", + "required": false + }, + "deployment_action": { + "value": "update_settings", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"setting\":\"new_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateIntegrationInstallation", + "qualifiedName": "VercelApi.UpdateIntegrationInstallation", + "fullyQualifiedName": "VercelApi.UpdateIntegrationInstallation@1.0.0", + "description": "Updates an integration installation configuration.\n\n Use this tool to update the configuration of an existing integration installation. Call it when changes to the integration setup are necessary.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": false, + "description": "The ID of the integration configuration to update. This should be a string identifying the specific installation. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-installation'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateIntegrationInstallation", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_configuration_id": { + "value": "int-123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"setting1\":\"value1\",\"setting2\":\"value2\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProjectDataCache", + "qualifiedName": "VercelApi.UpdateProjectDataCache", + "fullyQualifiedName": "VercelApi.UpdateProjectDataCache@1.0.0", + "description": "Update the data cache for a Vercel project.\n\nThis tool updates the data cache feature on a specified Vercel project. Use it when you need to refresh or modify the data cache to ensure the project is up-to-date with the latest changes.", + "parameters": [ + { + "name": "project_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Vercel project to update the data cache.", + "enum": null, + "inferrable": true + }, + { + "name": "disable_data_cache", + "type": "boolean", + "required": false, + "description": "Set to true to disable the project's data cache, or false to enable it. Default is false.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique Team ID to perform the request on behalf of. Required for targeted updates.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug to perform the request on behalf of. Use this to specify which team's project to update.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateProjectDataCache'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateProjectDataCache", + "parameters": { + "project_id": { + "value": "proj_123456", + "type": "string", + "required": true + }, + "disable_data_cache": { + "value": false, + "type": "boolean", + "required": false + }, + "team_identifier": { + "value": "team_7890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProjectDetails", + "qualifiedName": "VercelApi.UpdateProjectDetails", + "fullyQualifiedName": "VercelApi.UpdateProjectDetails@1.0.0", + "description": "Update a project's fields using its name or ID.\n\n Use this tool to modify specific details of a Vercel project by providing its name or ID. Ideal for updating project configurations or metadata.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id_or_name", + "type": "string", + "required": false, + "description": "The unique identifier or name of the Vercel project to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team on whose behalf the request is made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team on whose behalf the request is made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateProject'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateProjectDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id_or_name": { + "value": "my-cool-project", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"Updated Project Name\", \"description\": \"A new description for the project.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProjectDomainConfig", + "qualifiedName": "VercelApi.UpdateProjectDomainConfig", + "fullyQualifiedName": "VercelApi.UpdateProjectDomainConfig@1.0.0", + "description": "Update a project's domain configuration.\n\nUse this tool to update a project's domain settings, including the domain name, associated git branch, and redirect options.", + "parameters": [ + { + "name": "project_domain_name", + "type": "string", + "required": true, + "description": "The project domain name to be updated. Example: 'example.com'.", + "enum": null, + "inferrable": true + }, + { + "name": "project_identifier_or_name", + "type": "string", + "required": true, + "description": "The unique project identifier or the project name used to update domain configuration.", + "enum": null, + "inferrable": true + }, + { + "name": "linked_git_branch", + "type": "string", + "required": false, + "description": "The Git branch to associate with the project domain.", + "enum": null, + "inferrable": true + }, + { + "name": "redirect_status_code", + "type": "integer", + "required": false, + "description": "HTTP status code for the domain redirect. Acceptable values are 301, 302, 307, 308, or None if no redirect is required.", + "enum": null, + "inferrable": true + }, + { + "name": "redirect_target_domain", + "type": "string", + "required": false, + "description": "Specify the target destination domain for the redirect of a project domain.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifier for the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateProjectDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateProjectDomainConfig", + "parameters": { + "project_domain_name": { + "value": "myproject.com", + "type": "string", + "required": true + }, + "project_identifier_or_name": { + "value": "my-project-123", + "type": "string", + "required": true + }, + "linked_git_branch": { + "value": "main", + "type": "string", + "required": false + }, + "redirect_status_code": { + "value": 301, + "type": "integer", + "required": false + }, + "redirect_target_domain": { + "value": "redirected.com", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_abc123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "team-awesome", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProjectNetworkLinks", + "qualifiedName": "VercelApi.UpdateProjectNetworkLinks", + "fullyQualifiedName": "VercelApi.UpdateProjectNetworkLinks@1.0.0", + "description": "Update project connections to shared Secure Compute networks.\n\n Use this tool to update a project's connections to shared Secure Compute networks on Vercel. It should be called when there's a need to modify existing network connection settings for a particular project.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_identifier_or_name", + "type": "string", + "required": false, + "description": "Specify the unique project identifier or project name for the network connection update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team on whose behalf the request is made. This is required to specify the context of the update. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique slug of the team that this request should be performed on behalf of. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateSharedConnectLinks'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateProjectNetworkLinks", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_identifier_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_123456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "awesome-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"networkLinks\":[{\"id\":\"network_1\",\"action\":\"link\"},{\"id\":\"network_2\",\"action\":\"unlink\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateProjectProtectionBypass", + "qualifiedName": "VercelApi.UpdateProjectProtectionBypass", + "fullyQualifiedName": "VercelApi.UpdateProjectProtectionBypass@1.0.0", + "description": "Update the deployment protection bypass for a Vercel project.\n\nUse this tool to modify the deployment protection automation bypass settings for a specific Vercel project.", + "parameters": [ + { + "name": "project_id_or_name", + "type": "string", + "required": true, + "description": "The unique Vercel project identifier or project name to update the protection bypass for.", + "enum": null, + "inferrable": true + }, + { + "name": "create_new_automation_bypass", + "type": "boolean", + "required": false, + "description": "Create a new automation bypass after revoking the current secret.", + "enum": null, + "inferrable": true + }, + { + "name": "optional_secret_value", + "type": "string", + "required": false, + "description": "Optional value of the secret to generate; omit for OAuth2 tokens.", + "enum": null, + "inferrable": true + }, + { + "name": "revoke_automation_bypass", + "type": "string", + "required": false, + "description": "Secret value of the automation bypass to be revoked for a Vercel project.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug of the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateProjectProtectionBypass'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateProjectProtectionBypass", + "parameters": { + "project_id_or_name": { + "value": "my-vercel-project", + "type": "string", + "required": true + }, + "create_new_automation_bypass": { + "value": true, + "type": "boolean", + "required": false + }, + "optional_secret_value": { + "value": "new_secret_value_123", + "type": "string", + "required": false + }, + "revoke_automation_bypass": { + "value": "current_secret_value_abc", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_1234", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateResource", + "qualifiedName": "VercelApi.UpdateResource", + "fullyQualifiedName": "VercelApi.UpdateResource@1.0.0", + "description": "Update an existing resource with new information.\n\n Use this tool to update details of a specific resource in an installation. Supports partial updates, allowing changes to be made without modifying the entire resource.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": false, + "description": "The unique identifier for the integration configuration to update. Required for identifying which integration configuration is being modified. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the resource to be updated. This is required to specify which resource you are targeting for updates. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-resource'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateResource", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_configuration_id": { + "value": "int-123456", + "type": "string", + "required": false + }, + "resource_id": { + "value": "resource-7890", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"New Resource Name\", \"description\":\"Updated description of the resource.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateResourceSecrets", + "qualifiedName": "VercelApi.UpdateResourceSecrets", + "fullyQualifiedName": "VercelApi.UpdateResourceSecrets@1.0.0", + "description": "Updates the secrets of a specified resource.\n\n This tool updates the secrets of a specified resource and connected projects. Old secrets may still be used by existing projects until manually redeployed. Useful for resetting resource credentials.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": false, + "description": "The unique identifier for the integration configuration associated with the resource. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "integration_product_id_or_slug", + "type": "string", + "required": false, + "description": "Specify the product ID or slug to identify the integration product for the resource update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier for the resource whose secrets are being updated. This is required to specify which resource's secrets need modification. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-resource-secrets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateResourceSecrets", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_configuration_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "integration_product_id_or_slug": { + "value": "product-xyz", + "type": "string", + "required": false + }, + "resource_id": { + "value": "resource-789", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"newSecret\":\"new_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateRollingReleaseConfig", + "qualifiedName": "VercelApi.UpdateRollingReleaseConfig", + "fullyQualifiedName": "VercelApi.UpdateRollingReleaseConfig@1.0.0", + "description": "Update or disable rolling releases for a Vercel project.\n\nUse this tool to update or disable rolling releases for a specific Vercel project. It changes the configuration for future deployments without affecting in-progress rollouts. Disabling the feature requires additional API calls to complete or abort current rollouts.", + "parameters": [ + { + "name": "project_id_or_name", + "type": "string", + "required": true, + "description": "Project ID or name (URL-encoded) for updating rolling release settings.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The identifier for the team to perform the request on behalf of.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug identifying the team for which the request is made.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateRollingReleaseConfig'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateRollingReleaseConfig", + "parameters": { + "project_id_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "my-team-id", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team-slug", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateSecretsById", + "qualifiedName": "VercelApi.UpdateSecretsById", + "fullyQualifiedName": "VercelApi.UpdateSecretsById@1.0.0", + "description": "Update the secrets of a Vercel resource by ID.\n\n This tool updates the secrets for a given resource in Vercel, affecting connected projects with the new secrets. Note that existing projects using old secrets require manual redeployment to apply changes.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "integration_configuration_id", + "type": "string", + "required": false, + "description": "The ID of the integration configuration. This identifies the specific configuration in Vercel to update secrets for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "resource_id", + "type": "string", + "required": false, + "description": "The unique identifier of the Vercel resource whose secrets are to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'update-resource-secrets-by-id'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateSecretsById", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "integration_configuration_id": { + "value": "intg-123456", + "type": "string", + "required": false + }, + "resource_id": { + "value": "res-abcdef", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"secrets\":{\"VERCEL_ACCESS_TOKEN\":\"new_token_value\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTeamInfo", + "qualifiedName": "VercelApi.UpdateTeamInfo", + "fullyQualifiedName": "VercelApi.UpdateTeamInfo@1.0.0", + "description": "Update information of a specified team.\n\n Use this tool to modify details of an existing team by providing the team ID and the updated information.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team whose information you want to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The unique slug for the team used to perform the request. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchTeam'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateTeamInfo", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_12345", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team-slug", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"Updated Team Name\",\"description\":\"This is an updated description for the team.\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTeamMember", + "qualifiedName": "VercelApi.UpdateTeamMember", + "fullyQualifiedName": "VercelApi.UpdateTeamMember@1.0.0", + "description": "Update a team member's role or confirm membership.\n\n This tool updates a team member's details within a specified team, such as modifying their role or confirming an unconfirmed member's request to join. It requires the authenticated user to have 'OWNER' privileges in the team.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "member_id", + "type": "string", + "required": false, + "description": "The unique identifier for the team member to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_id", + "type": "string", + "required": false, + "description": "The unique ID of the team where the member's role or membership status will be updated. It is required to identify the specific team. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'updateTeamMember'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateTeamMember", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "member_id": { + "value": "12345", + "type": "string", + "required": false + }, + "team_id": { + "value": "abcde", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"role\":\"member\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateUrlProtectionBypass", + "qualifiedName": "VercelApi.UpdateUrlProtectionBypass", + "fullyQualifiedName": "VercelApi.UpdateUrlProtectionBypass@1.0.0", + "description": "Update the protection bypass for a Vercel URL.\n\n Use this tool to update the protection bypass for an alias or deployment URL in Vercel, enabling user or comment access on preview deployments.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "alias_or_deployment_id", + "type": "string", + "required": false, + "description": "The ID of the alias or deployment for which to update the protection bypass. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the team on whose behalf the request is made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The team slug representing which team the request should be performed for in Vercel. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'patchUrlProtectionBypass'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UpdateUrlProtectionBypass", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "alias_or_deployment_id": { + "value": "deployment_12345", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_67890", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"access\": \"user\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UploadCertificate", + "qualifiedName": "VercelApi.UploadCertificate", + "fullyQualifiedName": "VercelApi.UploadCertificate@1.0.0", + "description": "Uploads a certificate to Vercel.\n\n Use this tool to upload a new certificate to the Vercel platform. This is needed when adding or updating SSL certificates for your domains.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the team to perform the request on behalf of. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "Specify the team slug to perform the request on behalf of in Vercel. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'uploadCert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UploadCertificate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_123456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"certificate\":\"MIIDXTCCAkWgAwIBAgIJAKx1GA6jT0GxMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNVBAYTAkFVMSUwIwYDVQQKExxTeW5vZ2FnZSBDb21wYW55IFB0eSBUZXN0MQ8wDQYDVQQDEwZteS5jb20wHhcNMTgwNjEyMTUzMTU3WhcNMjgwNjExMTUzMTU3WjBFMQswCQYDVQQGEwJBVTEdMBsGA1UECxMUU3lvbmFnZSBDb21wYW55MRwwGgYDVQQDExNteS5jb20gUm9vdCBDQTAeFw0xODA2MTExNTMwMjdaFw0yODA2MDkxNTMwMjdaMEUxCzAJBgNVBAYTAkFVMSUwIwYDVQQKExxTeW5vZ2FnZSBDb21wYW55IFB0eSBUZXN0MQ8wDQYDVQQDEwZteS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4I...\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UploadClientCertToProject", + "qualifiedName": "VercelApi.UploadClientCertToProject", + "fullyQualifiedName": "VercelApi.UploadClientCertToProject@1.0.0", + "description": "Upload a client certificate for mTLS authentication.\n\n Use this tool to upload a client certificate to a Vercel project for mutual TLS (mTLS) authentication with external origins.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "project_id_or_name", + "type": "string", + "required": false, + "description": "The unique identifier or name of the Vercel project to upload the client certificate to. This is required to specify which project the mTLS certificate should be associated with. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The string identifier of the team to perform the request on behalf of. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The slug representing the team on whose behalf the request is made. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'uploadProjectClientCert'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.UploadClientCertToProject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "project_id_or_name": { + "value": "my-vercel-project", + "type": "string", + "required": false + }, + "team_identifier": { + "value": "team_123", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"certificate\":\"-----BEGIN CERTIFICATE-----\\nMIIDdzCCAl+...\\n-----END CERTIFICATE-----\\n\",\"key\":\"-----BEGIN PRIVATE KEY-----\\nMIIEvQIBADAN...\\n-----END PRIVATE KEY-----\\n\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "VerifyProjectDomain", + "qualifiedName": "VercelApi.VerifyProjectDomain", + "fullyQualifiedName": "VercelApi.VerifyProjectDomain@1.0.0", + "description": "Verify the status of a project domain's verification challenge.\n\nThis tool attempts to verify a project domain marked as `verified = false` by checking the correctness of its verification challenge. Use this to confirm domain ownership for a project.", + "parameters": [ + { + "name": "project_id_or_name", + "type": "string", + "required": true, + "description": "The unique project identifier or the project name to verify the domain for.", + "enum": null, + "inferrable": true + }, + { + "name": "verify_domain_name", + "type": "string", + "required": true, + "description": "The domain name you want to verify for the project.", + "enum": null, + "inferrable": true + }, + { + "name": "team_identifier", + "type": "string", + "required": false, + "description": "The Team identifier to perform the request on behalf of. Provide as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "team_slug", + "type": "string", + "required": false, + "description": "The Team slug used to perform the verification request on behalf of a specific team.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["VERCEL_ACCESS_TOKEN"], + "secretsInfo": [ + { + "name": "VERCEL_ACCESS_TOKEN", + "type": "token" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'verifyProjectDomain'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "VercelApi.VerifyProjectDomain", + "parameters": { + "project_id_or_name": { + "value": "my-awesome-project", + "type": "string", + "required": true + }, + "verify_domain_name": { + "value": "example.com", + "type": "string", + "required": true + }, + "team_identifier": { + "value": "team_123456", + "type": "string", + "required": false + }, + "team_slug": { + "value": "my-team", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:46:15.001Z", + "summary": "VercelApi is a comprehensive toolkit enabling developers to integrate with the Vercel API for efficient project and deployment management. It provides seamless access to various functionalities related to domain management, deployment operations, team collaboration, and environmental configurations. \n\n**Capabilities** \n- Manage project domains, environments, and associated configurations. \n- Facilitate user and team management within Vercel projects. \n- Accept project transfer requests and add members to projects. \n- Handle deployment operations, including creating, deleting, and promoting deployments. \n- Automate SSL certificate management and domain purchases. \n\n**Secrets** \n- The toolkit utilizes authentication tokens, such as the VERCEL_ACCESS_TOKEN, for secure API access." +} diff --git a/data/toolkits/walmart.json b/data/toolkits/walmart.json new file mode 100644 index 000000000..302b5e7f9 --- /dev/null +++ b/data/toolkits/walmart.json @@ -0,0 +1,178 @@ +{ + "id": "Walmart", + "label": "Walmart", + "version": "3.0.1", + "description": "Arcade.dev LLM tools for searching for products sold by Walmart", + "metadata": { + "category": "search", + "iconUrl": "https://design-system.arcade.dev/icons/walmart.svg", + "isBYOC": true, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/search/walmart", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "GetProductDetails", + "qualifiedName": "Walmart.GetProductDetails", + "fullyQualifiedName": "Walmart.GetProductDetails@3.0.1", + "description": "Get product details from Walmart.", + "parameters": [ + { + "name": "item_id", + "type": "string", + "required": true, + "description": "Item ID. E.g. '414600577'. This can be retrieved from the search results of the SearchProducts tool.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Product details" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Walmart.GetProductDetails", + "parameters": { + "item_id": { + "value": "414600577", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchProducts", + "qualifiedName": "Walmart.SearchProducts", + "fullyQualifiedName": "Walmart.SearchProducts@3.0.1", + "description": "Search Walmart products using SerpAPI.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "Keywords to search for. E.g. 'apple iphone' or 'samsung galaxy'", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "Sort the results by the specified criteria. Defaults to 'relevance_according_to_keywords_searched'.", + "enum": [ + "relevance_according_to_keywords_searched", + "lowest_price_first", + "highest_price_first", + "best_selling_products_first", + "highest_rating_first", + "new_arrivals_first" + ], + "inferrable": true + }, + { + "name": "min_price", + "type": "number", + "required": false, + "description": "Minimum price to filter the results by. E.g. 100.00", + "enum": null, + "inferrable": true + }, + { + "name": "max_price", + "type": "number", + "required": false, + "description": "Maximum price to filter the results by. E.g. 100.00", + "enum": null, + "inferrable": true + }, + { + "name": "next_day_delivery", + "type": "boolean", + "required": false, + "description": "Filters products that are eligible for next day delivery. Defaults to False (returns all products, regardless of delivery status).", + "enum": null, + "inferrable": true + }, + { + "name": "page", + "type": "integer", + "required": false, + "description": "Page number to fetch. Defaults to 1 (first page of results). The maximum page value is 100.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "List of Walmart products matching the search query." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Walmart.SearchProducts", + "parameters": { + "keywords": { + "value": "samsung galaxy", + "type": "string", + "required": true + }, + "sort_by": { + "value": "price_low_to_high", + "type": "string", + "required": false + }, + "min_price": { + "value": 50, + "type": "integer", + "required": false + }, + "max_price": { + "value": 500, + "type": "integer", + "required": false + }, + "next_day_delivery": { + "value": true, + "type": "boolean", + "required": false + }, + "page": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:46:24.011Z", + "summary": "Walmart's Arcade toolkit empowers developers to seamlessly integrate product search functionalities and detailed product information retrieval from Walmart. This toolkit streamlines access to Walmart's extensive product catalog, enabling enhanced user experiences and effective e-commerce solutions.\n\n**Capabilities** \n- Retrieve comprehensive product details from Walmart's catalog \n- Efficiently search for products with relevant filters \n- Enhance e-commerce applications with real-time data \n- Facilitate user-friendly product discovery \n\n**OAuth** \n- No OAuth required; integrates easily with an API key. \n\n**Secrets** \n- Requires an API key for authentication. \n - Example: SERP_API_KEY for product search functionality." +} diff --git a/data/toolkits/weaviateapi.json b/data/toolkits/weaviateapi.json new file mode 100644 index 000000000..75b2bef3a --- /dev/null +++ b/data/toolkits/weaviateapi.json @@ -0,0 +1,5185 @@ +{ + "id": "WeaviateApi", + "label": "Weaviate API", + "version": "2.0.0", + "description": "Tools that enable LLMs to interact directly with the weaviate API.", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/weaviate.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/weaviate-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "ActivateDatabaseUser", + "qualifiedName": "WeaviateApi.ActivateDatabaseUser", + "fullyQualifiedName": "WeaviateApi.ActivateDatabaseUser@2.0.0", + "description": "Activate a deactivated database user account.\n\nUse this tool to activate a user with a `db` user type in the database. It should be called when re-enabling user access is needed.", + "parameters": [ + { + "name": "user_name", + "type": "string", + "required": true, + "description": "The name of the database user to activate.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'activateUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.ActivateDatabaseUser", + "parameters": { + "user_name": { + "value": "john_doe", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddPermissionsToRole", + "qualifiedName": "WeaviateApi.AddPermissionsToRole", + "fullyQualifiedName": "WeaviateApi.AddPermissionsToRole@2.0.0", + "description": "Add new permissions to a role without affecting existing ones.\n\n Use this tool to assign additional permissions to a specified role within a system, ensuring that current permissions remain unchanged.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "role_id", + "type": "string", + "required": false, + "description": "The ID of the role to which new permissions will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'addPermissions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.AddPermissionsToRole", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "role_id": { + "value": "role_123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"permissions\":[\"read\",\"write\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddPropertyToCollection", + "qualifiedName": "WeaviateApi.AddPropertyToCollection", + "fullyQualifiedName": "WeaviateApi.AddPropertyToCollection@2.0.0", + "description": "Add a new property to an existing collection schema.\n\n Use this tool to add a new property definition to a specified collection (className) within the schema. It is called when a new property needs to be incorporated into an existing data structure.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "collection_name", + "type": "string", + "required": false, + "description": "The name of the collection (class) to which the property will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'schema.objects.properties.add'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.AddPropertyToCollection", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "collection_name": { + "value": "Product", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\": \"price\", \"dataType\": [\"number\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AddReferenceToObject", + "qualifiedName": "WeaviateApi.AddReferenceToObject", + "fullyQualifiedName": "WeaviateApi.AddReferenceToObject@2.0.0", + "description": "Add a reference to an object's property.\n\n This tool adds a new reference to a specified property of a data object. The object is identified by its class and UUID. Use this to link related objects within a dataset.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "source_class_name", + "type": "string", + "required": false, + "description": "Name of the collection (class) the source object belongs to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "source_object_uuid", + "type": "string", + "required": false, + "description": "Unique UUID identifying the source object to which the reference will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "reference_property_name", + "type": "string", + "required": false, + "description": "Unique name of the reference property of the source object to which the reference will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "required_consistency_level", + "type": "string", + "required": false, + "description": "Specifies the number of replicas that must acknowledge a request for it to be successful. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": false, + "description": "Specifies the tenant for multi-tenant collection requests in a Weaviate class. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'objects.class.references.create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.AddReferenceToObject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "source_class_name": { + "value": "Product", + "type": "string", + "required": false + }, + "source_object_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "reference_property_name": { + "value": "relatedProducts", + "type": "string", + "required": false + }, + "required_consistency_level": { + "value": "One", + "type": "string", + "required": false + }, + "tenant_identifier": { + "value": "tenant123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"uuid\":\"456e7890-e12d-34f5-a678-426614174001\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AssignRolesToUser", + "qualifiedName": "WeaviateApi.AssignRolesToUser", + "fullyQualifiedName": "WeaviateApi.AssignRolesToUser@2.0.0", + "description": "Assign roles to a user in the system.\n\nUse this tool to assign one or more roles to a specific user, allowing flexibility in user permissions and access control.", + "parameters": [ + { + "name": "user_name", + "type": "string", + "required": true, + "description": "The name or identifier of the user to assign roles to.", + "enum": null, + "inferrable": true + }, + { + "name": "assigned_roles", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of roles to assign to the specified user. Each role should be a string.", + "enum": null, + "inferrable": true + }, + { + "name": "user_type", + "type": "string", + "required": false, + "description": "Specify the user type. Choose 'db' for Weaviate managed users or 'oidc' for users managed by an external OIDC provider.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'assignRoleToUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.AssignRolesToUser", + "parameters": { + "user_name": { + "value": "john_doe", + "type": "string", + "required": true + }, + "assigned_roles": { + "value": ["admin", "editor"], + "type": "array", + "required": false + }, + "user_type": { + "value": "db", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "AssignRoleToGroup", + "qualifiedName": "WeaviateApi.AssignRoleToGroup", + "fullyQualifiedName": "WeaviateApi.AssignRoleToGroup@2.0.0", + "description": "Assign roles to a specific group.\n\nUse this tool to assign one or more roles to a designated group, identified by its ID.", + "parameters": [ + { + "name": "group_name", + "type": "string", + "required": true, + "description": "The name of the group to which roles will be assigned.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type", + "type": "string", + "required": false, + "description": "Indicate if the group contains OIDC or database users. Choose 'oidc' for OIDC users.", + "enum": null, + "inferrable": true + }, + { + "name": "roles_to_assign", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of roles to assign to a specified group. Each role is a string.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'assignRoleToGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.AssignRoleToGroup", + "parameters": { + "group_name": { + "value": "data_scientists", + "type": "string", + "required": true + }, + "group_type": { + "value": "oidc", + "type": "string", + "required": false + }, + "roles_to_assign": { + "value": ["admin", "editor"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "BatchCreateReferences", + "qualifiedName": "WeaviateApi.BatchCreateReferences", + "fullyQualifiedName": "WeaviateApi.BatchCreateReferences@2.0.0", + "description": "Batch create cross-references between items in a collection.\n\n Use this tool to efficiently establish multiple cross-references between items in a collection at once. Ideal for handling large datasets where establishing individual links manually would be inefficient.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "consistency_level", + "type": "string", + "required": false, + "description": "Specifies the number of replicas needed to acknowledge a request for it to be deemed successful. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch.references.create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.BatchCreateReferences", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "consistency_level": { + "value": "quorum", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"references\": [{\"from\": \"item1\", \"to\": \"item2\"}, {\"from\": \"item3\", \"to\": \"item4\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "BatchRegisterObjects", + "qualifiedName": "WeaviateApi.BatchRegisterObjects", + "fullyQualifiedName": "WeaviateApi.BatchRegisterObjects@2.0.0", + "description": "Register multiple data objects in a single request.\n\n This tool registers multiple data objects in one request for efficiency. It validates metadata and schema values for each object. The operation is idempotent, meaning if an object with a given UUID already exists, it will be overwritten.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "consistency_level", + "type": "string", + "required": false, + "description": "Specifies how many replicas must confirm a request for it to be successful. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch.objects.create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.BatchRegisterObjects", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "consistency_level": { + "value": "all", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"objects\":[{\"class\":\"Person\",\"properties\":{\"name\":\"John Doe\",\"age\":30}},{\"class\":\"Person\",\"properties\":{\"name\":\"Jane Smith\",\"age\":25}}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelBackup", + "qualifiedName": "WeaviateApi.CancelBackup", + "fullyQualifiedName": "WeaviateApi.CancelBackup@2.0.0", + "description": "Cancel a backup by its ID from a specified backend storage.\n\nUse this tool to delete a backup using its unique ID from a specified backend storage location, ensuring the backup is no longer retrievable.", + "parameters": [ + { + "name": "backup_id", + "type": "string", + "required": true, + "description": "The unique ID of the backup to delete. Must be URL-safe, using lowercase, numbers, underscores, and minus characters.", + "enum": null, + "inferrable": true + }, + { + "name": "storage_backend_system", + "type": "string", + "required": true, + "description": "Specifies the backend storage system where the backup resides (e.g., 'filesystem', 'gcs', 's3', 'azure').", + "enum": null, + "inferrable": true + }, + { + "name": "backup_subpath", + "type": "string", + "required": false, + "description": "Specifies the optional path within the storage if the backup is not at the root.", + "enum": null, + "inferrable": true + }, + { + "name": "specified_bucket_name", + "type": "string", + "required": false, + "description": "Specifies the bucket, container, or volume name if required by the backend storage system. Optional parameter.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'backups.cancel'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CancelBackup", + "parameters": { + "backup_id": { + "value": "abc123_backup", + "type": "string", + "required": true + }, + "storage_backend_system": { + "value": "s3", + "type": "string", + "required": true + }, + "backup_subpath": { + "value": "my_backups/", + "type": "string", + "required": false + }, + "specified_bucket_name": { + "value": "my_bucket", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelReplication", + "qualifiedName": "WeaviateApi.CancelReplication", + "fullyQualifiedName": "WeaviateApi.CancelReplication@2.0.0", + "description": "Cancel an active replication operation by ID.\n\nUse this tool to request the cancellation of an ongoing replication operation specified by its ID. The operation is stopped and marked as 'CANCELLED' but is not automatically deleted.", + "parameters": [ + { + "name": "replication_operation_id", + "type": "string", + "required": true, + "description": "The ID of the replication operation you wish to cancel. This is a string identifier for the specific operation.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cancelReplication'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CancelReplication", + "parameters": { + "replication_operation_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CancelReplicationOperation", + "qualifiedName": "WeaviateApi.CancelReplicationOperation", + "fullyQualifiedName": "WeaviateApi.CancelReplicationOperation@2.0.0", + "description": "Cancel an active replication operation.\n\nUse this tool to remove and cancel a specific replication operation. It ensures that active processes are halted and resources are cleaned up before deletion.", + "parameters": [ + { + "name": "replication_operation_id", + "type": "string", + "required": true, + "description": "The unique identifier of the replication operation to be canceled and deleted.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteReplication'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CancelReplicationOperation", + "parameters": { + "replication_operation_id": { + "value": "op123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckBackupRestoreStatus", + "qualifiedName": "WeaviateApi.CheckBackupRestoreStatus", + "fullyQualifiedName": "WeaviateApi.CheckBackupRestoreStatus@2.0.0", + "description": "Check the status of a backup restoration process.\n\nUse this tool to manually check the status of a specific backup restoration on a given backend, using the backup ID. Ideal when automatic polling is disabled.", + "parameters": [ + { + "name": "backend_storage_system", + "type": "string", + "required": true, + "description": "Specifies the backend storage system where the backup resides, such as 'filesystem', 'gcs', 's3', or 'azure'.", + "enum": null, + "inferrable": true + }, + { + "name": "backup_id", + "type": "string", + "required": true, + "description": "The URL-safe unique identifier of the backup being restored. Use lowercase, numbers, underscores, and minus characters only.", + "enum": null, + "inferrable": true + }, + { + "name": "backup_bucket_name", + "type": "string", + "required": false, + "description": "Specifies the bucket, container, or volume name if required by the backend.", + "enum": null, + "inferrable": true + }, + { + "name": "bucket_path", + "type": "string", + "required": false, + "description": "Specifies the path within the bucket, optional based on backend requirements.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'backups.restore.status'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CheckBackupRestoreStatus", + "parameters": { + "backend_storage_system": { + "value": "s3", + "type": "string", + "required": true + }, + "backup_id": { + "value": "backup_12345", + "type": "string", + "required": true + }, + "backup_bucket_name": { + "value": "my-backup-bucket", + "type": "string", + "required": false + }, + "bucket_path": { + "value": "restores/2023-10-01", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckBackupStatus", + "qualifiedName": "WeaviateApi.CheckBackupStatus", + "fullyQualifiedName": "WeaviateApi.CheckBackupStatus@2.0.0", + "description": "Get the current status of a backup creation process.\n\nUse this tool to manually check the status of a backup creation process by its ID on the specified backend. Ideal for when waiting for completion is disabled or not suitable.", + "parameters": [ + { + "name": "backup_backend_system", + "type": "string", + "required": true, + "description": "Specifies the backend storage system where the backup resides, such as 'filesystem', 'gcs', 's3', or 'azure'.", + "enum": null, + "inferrable": true + }, + { + "name": "backup_identifier", + "type": "string", + "required": true, + "description": "The unique identifier of the backup. Use only lowercase, numbers, underscores, and minus characters.", + "enum": null, + "inferrable": true + }, + { + "name": "backup_storage_path", + "type": "string", + "required": false, + "description": "Specifies the path within the bucket/container/volume if the backup is not at the root. Optional.", + "enum": null, + "inferrable": true + }, + { + "name": "bucket_name", + "type": "string", + "required": false, + "description": "Specifies the bucket, container, or volume name if required by the backend.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'backups.create.status'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CheckBackupStatus", + "parameters": { + "backup_backend_system": { + "value": "s3", + "type": "string", + "required": true + }, + "backup_identifier": { + "value": "backup_12345", + "type": "string", + "required": true + }, + "backup_storage_path": { + "value": "backups/2023/", + "type": "string", + "required": false + }, + "bucket_name": { + "value": "my-backup-bucket", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckRolePermission", + "qualifiedName": "WeaviateApi.CheckRolePermission", + "fullyQualifiedName": "WeaviateApi.CheckRolePermission@2.0.0", + "description": "Check if a role has specific permissions in the system.\n\n Use this tool to verify whether a particular role possesses certain permissions within the system. It should be called when there's a need to confirm role access rights.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "role_name", + "type": "string", + "required": false, + "description": "The name of the role to check permissions for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'hasPermission'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CheckRolePermission", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "role_name": { + "value": "admin", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"permissions\":[\"read\",\"write\",\"delete\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckWeaviateLiveness", + "qualifiedName": "WeaviateApi.CheckWeaviateLiveness", + "fullyQualifiedName": "WeaviateApi.CheckWeaviateLiveness@2.0.0", + "description": "Check if the Weaviate instance is running properly.\n\nUse this tool to perform a basic health check on a Weaviate instance, ensuring it is running and responding to HTTP requests. Useful for monitoring and maintenance tasks.", + "parameters": [], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'weaviate.wellknown.liveness'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CheckWeaviateLiveness", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CheckWeaviateReadiness", + "qualifiedName": "WeaviateApi.CheckWeaviateReadiness", + "fullyQualifiedName": "WeaviateApi.CheckWeaviateReadiness@2.0.0", + "description": "Check if the Weaviate instance is ready to accept traffic.\n\nUse this tool to determine if the Weaviate instance has completed its startup routines and is ready for operations such as data import and queries. Ideal for readiness checks in container orchestration contexts like Kubernetes.", + "parameters": [], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'weaviate.wellknown.readiness'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CheckWeaviateReadiness", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateAliasMapping", + "qualifiedName": "WeaviateApi.CreateAliasMapping", + "fullyQualifiedName": "WeaviateApi.CreateAliasMapping@2.0.0", + "description": "Create a new alias for a collection in Weaviate.\n\nThis tool creates a new alias mapping between an alias name and a collection (class) in Weaviate. Use it to set up alternative names for accessing collections.", + "parameters": [ + { + "name": "alias_name", + "type": "string", + "required": false, + "description": "The unique name of the alias, serving as an alternative identifier for the specified collection.", + "enum": null, + "inferrable": true + }, + { + "name": "collection_class_name", + "type": "string", + "required": false, + "description": "The name of the collection (class) to which the alias is mapped.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'aliases.create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CreateAliasMapping", + "parameters": { + "alias_name": { + "value": "my_alias_name", + "type": "string", + "required": false + }, + "collection_class_name": { + "value": "MyCollection", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateBackup", + "qualifiedName": "WeaviateApi.CreateBackup", + "fullyQualifiedName": "WeaviateApi.CreateBackup@2.0.0", + "description": "Initiates backup creation for specified collections.\n\nThis tool starts the process of creating a backup for the specified collections on a designated backend storage using Weaviate. The backup is compressed using gzip by default, and the system remains operational during the backup process. Use this tool when you need to ensure data is safely backed up without interrupting service.", + "parameters": [ + { + "name": "backend_storage_system", + "type": "string", + "required": true, + "description": "Specifies the backend storage system where the backup will be stored, such as `filesystem`, `gcs`, `s3`, or `azure`.", + "enum": null, + "inferrable": true + }, + { + "name": "backup_chunk_size", + "type": "integer", + "required": false, + "description": "Set the chunk size for the backup with a minimum of 2MB, default of 128MB, and a maximum of 512MB.", + "enum": null, + "inferrable": true + }, + { + "name": "backup_id", + "type": "string", + "required": false, + "description": "The ID of the backup. Must be URL-safe, using only lowercase, numbers, underscore, and minus characters.", + "enum": null, + "inferrable": true + }, + { + "name": "bucket_name", + "type": "string", + "required": false, + "description": "Name of the bucket, container, or volume where the backup will be stored.", + "enum": null, + "inferrable": true + }, + { + "name": "bucket_path", + "type": "string", + "required": false, + "description": "Specifies the path or key within the storage bucket. This helps in locating where the backup will be stored within the bucket.", + "enum": null, + "inferrable": true + }, + { + "name": "collections_to_include_in_backup", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of collections to include in the backup. If not set, all collections are included. Cannot be used with `collections_to_exclude_in_backup`.", + "enum": null, + "inferrable": true + }, + { + "name": "compression_level", + "type": "string", + "required": false, + "description": "Specifies the compression level for the backup: DefaultCompression, BestSpeed, or BestCompression.", + "enum": null, + "inferrable": true + }, + { + "name": "cpu_utilization_percentage", + "type": "integer", + "required": false, + "description": "Sets desired CPU core utilization, ranging from 1% to 80%, during backup creation.", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_collections", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of collections to exclude from the backup. Overrides include if both are set.", + "enum": null, + "inferrable": true + }, + { + "name": "storage_endpoint_name", + "type": "string", + "required": false, + "description": "Name of the storage endpoint, such as s3.amazonaws.com, where the backup will be stored.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'backups.create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CreateBackup", + "parameters": { + "backend_storage_system": { + "value": "s3", + "type": "string", + "required": true + }, + "backup_chunk_size": { + "value": 256, + "type": "integer", + "required": false + }, + "backup_id": { + "value": "my_backup_123", + "type": "string", + "required": false + }, + "bucket_name": { + "value": "my_backup_bucket", + "type": "string", + "required": false + }, + "bucket_path": { + "value": "backups/2023/", + "type": "string", + "required": false + }, + "collections_to_include_in_backup": { + "value": ["users", "transactions"], + "type": "array", + "required": false + }, + "compression_level": { + "value": "BestCompression", + "type": "string", + "required": false + }, + "cpu_utilization_percentage": { + "value": 50, + "type": "integer", + "required": false + }, + "exclude_collections": { + "value": ["logs"], + "type": "array", + "required": false + }, + "storage_endpoint_name": { + "value": "s3.amazonaws.com", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateDatabaseUser", + "qualifiedName": "WeaviateApi.CreateDatabaseUser", + "fullyQualifiedName": "WeaviateApi.CreateDatabaseUser@2.0.0", + "description": "Create a new database user and obtain an API key.\n\nThis tool is used to create a new database user by specifying a name. It returns an API key for the created user.", + "parameters": [ + { + "name": "user_name", + "type": "string", + "required": true, + "description": "Specify the name for the new database user. It should be a string that identifies the user.", + "enum": null, + "inferrable": true + }, + { + "name": "disable_import_experimental", + "type": "boolean", + "required": false, + "description": "Set to true to prevent importing an API key from a static user. Experimental and will be removed.", + "enum": null, + "inferrable": true + }, + { + "name": "set_creation_time_experimental", + "type": "string", + "required": false, + "description": "EXPERIMENTAL: Set the given time as creation time. This will be removed in future versions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CreateDatabaseUser", + "parameters": { + "user_name": { + "value": "john_doe", + "type": "string", + "required": true + }, + "disable_import_experimental": { + "value": false, + "type": "boolean", + "required": false + }, + "set_creation_time_experimental": { + "value": "2023-10-01T12:30:00Z", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateObjectInWeaviate", + "qualifiedName": "WeaviateApi.CreateObjectInWeaviate", + "fullyQualifiedName": "WeaviateApi.CreateObjectInWeaviate@2.0.0", + "description": "Create a new data object in Weaviate.\n\n This tool creates a new data object in Weaviate, ensuring that the object's metadata and schema values are validated. It's useful for adding new data objects when there is no existing object with the same ID.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "consistency_level_replica_acknowledgement", + "type": "string", + "required": false, + "description": "Specifies the number of replicas that must confirm the request for it to be successful. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'objects.create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CreateObjectInWeaviate", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "consistency_level_replica_acknowledgement": { + "value": "all", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"class\":\"Article\",\"properties\":{\"title\":\"Understanding AI\",\"content\":\"This article explores the fundamentals of Artificial Intelligence.\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateRoleWithPermissions", + "qualifiedName": "WeaviateApi.CreateRoleWithPermissions", + "fullyQualifiedName": "WeaviateApi.CreateRoleWithPermissions@2.0.0", + "description": "Create a new role with specified permissions.\n\nUse this tool to create a new role in the system and define its permissions. It should be called when there is a need to set up access controls for new role-based functionalities.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createRole'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CreateRoleWithPermissions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"role_name\": \"editor\", \"permissions\": [\"read\", \"write\", \"delete\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateSchemaObject", + "qualifiedName": "WeaviateApi.CreateSchemaObject", + "fullyQualifiedName": "WeaviateApi.CreateSchemaObject@2.0.0", + "description": "Create a new collection (class) in Weaviate.\n\nThis tool is used to define and create a new collection (class) in Weaviate. It provides explicit control over the schema definition, which is essential when `AutoSchema` is not relied upon. Use this tool to ensure accurate schema setup in a Weaviate instance.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'schema.objects.create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CreateSchemaObject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"class\":\"Book\",\"properties\":[{\"name\":\"title\",\"dataType\":[\"string\"]},{\"name\":\"author\",\"dataType\":[\"string\"]},{\"name\":\"published_date\",\"dataType\":[\"date\"]}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CreateTenants", + "qualifiedName": "WeaviateApi.CreateTenants", + "fullyQualifiedName": "WeaviateApi.CreateTenants@2.0.0", + "description": "Create new tenants in a specified collection.\n\n Use this tool to create one or more new tenants for a specified collection when multi-tenancy is enabled. Useful for managing tenants within a Weaviate database.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "collection_name", + "type": "string", + "required": false, + "description": "The name of the multi-tenant enabled collection for creating tenants. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tenants.create'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.CreateTenants", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "collection_name": { + "value": "tenantCollectionA", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"tenants\":[{\"name\":\"Tenant1\",\"description\":\"First tenant\"},{\"name\":\"Tenant2\",\"description\":\"Second tenant\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeactivateDatabaseUser", + "qualifiedName": "WeaviateApi.DeactivateDatabaseUser", + "fullyQualifiedName": "WeaviateApi.DeactivateDatabaseUser@2.0.0", + "description": "Deactivate a database user account.\n\nUse this tool to deactivate a user with the type 'db' in the database. Provide the user ID to deactivate their account and prevent access to the database.", + "parameters": [ + { + "name": "database_user_id", + "type": "string", + "required": true, + "description": "The unique identifier for the database user to be deactivated.", + "enum": null, + "inferrable": true + }, + { + "name": "revoke_api_key", + "type": "boolean", + "required": false, + "description": "Revoke the user's API key when deactivating. Set to true to enable.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deactivateUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.DeactivateDatabaseUser", + "parameters": { + "database_user_id": { + "value": "user_12345", + "type": "string", + "required": true + }, + "revoke_api_key": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAlias", + "qualifiedName": "WeaviateApi.DeleteAlias", + "fullyQualifiedName": "WeaviateApi.DeleteAlias@2.0.0", + "description": "Delete an existing alias from the system.\n\nThis tool removes an alias from the system without affecting the underlying collection. It should be called when an alias is no longer needed.", + "parameters": [ + { + "name": "alias_name", + "type": "string", + "required": true, + "description": "The name of the alias to be deleted. This identifier specifies which alias mapping to remove from the system.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'aliases.delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.DeleteAlias", + "parameters": { + "alias_name": { + "value": "exampleAlias123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteAllReplications", + "qualifiedName": "WeaviateApi.DeleteAllReplications", + "fullyQualifiedName": "WeaviateApi.DeleteAllReplications@2.0.0", + "description": "Schedule deletion of all replication operations across the system.\n\nThis tool is used to schedule the deletion of all replication operations across all collections, shards, and nodes. It should be called when you need to clear all replication tasks in the system.", + "parameters": [], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAllReplications'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.DeleteAllReplications", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDatabaseUser", + "qualifiedName": "WeaviateApi.DeleteDatabaseUser", + "fullyQualifiedName": "WeaviateApi.DeleteDatabaseUser@2.0.0", + "description": "Delete a specific database user.\n\nThis tool deletes a specified user from the database. It should be called when there is a need to remove a user, except the current active user.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "Specify the name of the user you want to delete. This cannot be the current user.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.DeleteDatabaseUser", + "parameters": { + "user_identifier": { + "value": "john_doe", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteDataObject", + "qualifiedName": "WeaviateApi.DeleteDataObject", + "fullyQualifiedName": "WeaviateApi.DeleteDataObject@2.0.0", + "description": "Delete a data object from a specified collection using its UUID.\n\nUse this tool to remove a specific data object from a Weaviate collection, identified by its `className` and `id` (UUID). Useful for managing data within a Weaviate instance.", + "parameters": [ + { + "name": "collection_name", + "type": "string", + "required": true, + "description": "Name of the collection (class) the object belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "object_uuid", + "type": "string", + "required": true, + "description": "Unique UUID of the object to be deleted from the collection.", + "enum": null, + "inferrable": true + }, + { + "name": "replica_acknowledgment_level", + "type": "string", + "required": false, + "description": "Specifies the number of replicas needed to confirm request success.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": false, + "description": "Specifies the tenant when targeting a multi-tenant collection (class).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'objects.class.delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.DeleteDataObject", + "parameters": { + "collection_name": { + "value": "user_profiles", + "type": "string", + "required": true + }, + "object_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "replica_acknowledgment_level": { + "value": "all", + "type": "string", + "required": false + }, + "tenant_identifier": { + "value": "tenant_1", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteMultipleObjects", + "qualifiedName": "WeaviateApi.DeleteMultipleObjects", + "fullyQualifiedName": "WeaviateApi.DeleteMultipleObjects@2.0.0", + "description": "Deletes multiple data objects using specified filter criteria.\n\n This tool removes data objects based on a filter. Use it when you need to delete multiple objects that match specific criteria within the limit. The deletion is performed in the order objects match the filter. If you need to delete beyond the limit, repeat the process until finished.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "replica_acknowledgement_level", + "type": "string", + "required": false, + "description": "Specifies the number of replicas that must confirm the request for it to be deemed successful. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "target_tenant", + "type": "string", + "required": false, + "description": "Specifies the tenant when targeting a multi-tenant collection. Use the tenant's unique identifier. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'batch.objects.delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.DeleteMultipleObjects", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "replica_acknowledgement_level": { + "value": "all", + "type": "string", + "required": false + }, + "target_tenant": { + "value": "tenant123", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"filter\": {\"class\": \"Article\", \"where\": {\"title\": {\"$eq\": \"Old Title\"}}}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteReferenceFromObject", + "qualifiedName": "WeaviateApi.DeleteReferenceFromObject", + "fullyQualifiedName": "WeaviateApi.DeleteReferenceFromObject@2.0.0", + "description": "Delete a specific reference from an object's property.\n\n Use this tool to remove a reference from a specific property of a data object in a collection, identified by its class name and UUID. Call this tool when you need to delete a reference from an object's property.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "collection_name", + "type": "string", + "required": false, + "description": "Name of the collection (class) the source object belongs to. This identifies where the object is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "source_object_uuid", + "type": "string", + "required": false, + "description": "Unique UUID of the source object from which the reference will be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "reference_property_name", + "type": "string", + "required": false, + "description": "Unique name of the reference property of the source object from which to delete the reference. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "required_consistency_level", + "type": "string", + "required": false, + "description": "Specifies how many replicas must acknowledge the request for success. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": false, + "description": "Specifies the tenant in a request targeting a multi-tenant collection (class). Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'objects.class.references.delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.DeleteReferenceFromObject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "collection_name": { + "value": "Documents", + "type": "string", + "required": false + }, + "source_object_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "reference_property_name": { + "value": "relatedDocuments", + "type": "string", + "required": false + }, + "required_consistency_level": { + "value": "QUORUM", + "type": "string", + "required": false + }, + "tenant_identifier": { + "value": "tenant_01", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"reference_id\": \"456e7890-e12b-34d5-a678-912345678901\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteRole", + "qualifiedName": "WeaviateApi.DeleteRole", + "fullyQualifiedName": "WeaviateApi.DeleteRole@2.0.0", + "description": "Delete a role and revoke its permissions system-wide.\n\nUse this tool to delete a role from the system, removing it and revoking the associated permissions from all users who had it.", + "parameters": [ + { + "name": "role_name", + "type": "string", + "required": true, + "description": "Specify the name of the role to be deleted and revoked from users.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteRole'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.DeleteRole", + "parameters": { + "role_name": { + "value": "admin", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteSchemaCollection", + "qualifiedName": "WeaviateApi.DeleteSchemaCollection", + "fullyQualifiedName": "WeaviateApi.DeleteSchemaCollection@2.0.0", + "description": "Permanently delete a collection from the schema.\n\nCall this tool to remove a collection definition and all its data objects from the schema permanently.", + "parameters": [ + { + "name": "collection_name_to_delete", + "type": "string", + "required": true, + "description": "The name of the collection (class) that will be permanently deleted from the schema.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'schema.objects.delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.DeleteSchemaCollection", + "parameters": { + "collection_name_to_delete": { + "value": "example_collection", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DeleteTenants", + "qualifiedName": "WeaviateApi.DeleteTenants", + "fullyQualifiedName": "WeaviateApi.DeleteTenants@2.0.0", + "description": "Permanently delete specified tenants from a collection.\n\nUse this tool to delete one or more tenants from a specified collection in Weaviate. This action is irreversible and will remove all data related to the specified tenants.", + "parameters": [ + { + "name": "collection_name", + "type": "string", + "required": true, + "description": "The name of the collection from which to delete tenants.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_names_to_delete", + "type": "array", + "innerType": "string", + "required": true, + "description": "An array of tenant names to permanently delete from the specified collection.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tenants.delete'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.DeleteTenants", + "parameters": { + "collection_name": { + "value": "user_data", + "type": "string", + "required": true + }, + "tenant_names_to_delete": { + "value": ["tenant1", "tenant2", "tenant3"], + "type": "array", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "DiscoverApiEndpoints", + "qualifiedName": "WeaviateApi.DiscoverApiEndpoints", + "fullyQualifiedName": "WeaviateApi.DiscoverApiEndpoints@2.0.0", + "description": "Retrieve links to available REST API endpoints.\n\nThis tool fetches links to other endpoints within the REST API, aiding in the discovery and navigation of the available API options.", + "parameters": [], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'weaviate.root'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.DiscoverApiEndpoints", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ExecuteGraphqlBatchQueries", + "qualifiedName": "WeaviateApi.ExecuteGraphqlBatchQueries", + "fullyQualifiedName": "WeaviateApi.ExecuteGraphqlBatchQueries@2.0.0", + "description": "Execute multiple GraphQL queries in a single request.\n\nExecutes multiple GraphQL queries sent in a single network request for efficiency. Ideal for performing batch queries in Weaviate.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'graphql.batch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.ExecuteGraphqlBatchQueries", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"queries\":[{\"query\":\"{Get {Things {id property}}}\"},{\"query\":\"{Get {Things {id property}}}\"}]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchReplicationStatus", + "qualifiedName": "WeaviateApi.FetchReplicationStatus", + "fullyQualifiedName": "WeaviateApi.FetchReplicationStatus@2.0.0", + "description": "Retrieve the status of a specific replication operation.\n\nUse this tool to get current status and detailed information about a replication operation by its unique ID. It can optionally include historical progress data of the operation.", + "parameters": [ + { + "name": "replication_operation_id", + "type": "string", + "required": true, + "description": "The unique identifier for the replication operation to fetch details for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_history", + "type": "boolean", + "required": false, + "description": "Set to true to include the history of the replication operation.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'replicationDetails'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.FetchReplicationStatus", + "parameters": { + "replication_operation_id": { + "value": "replication_12345", + "type": "string", + "required": true + }, + "include_history": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchRoleByName", + "qualifiedName": "WeaviateApi.FetchRoleByName", + "fullyQualifiedName": "WeaviateApi.FetchRoleByName@2.0.0", + "description": "Fetch role details using its name.\n\nThis tool retrieves the details of a specific role by its name from the Weaviate service. It should be called when information about a role is required, typically for authorization or configuration purposes.", + "parameters": [ + { + "name": "role_name", + "type": "string", + "required": true, + "description": "The name of the role to fetch details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRole'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.FetchRoleByName", + "parameters": { + "role_name": { + "value": "admin", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "FetchShardingState", + "qualifiedName": "WeaviateApi.FetchShardingState", + "fullyQualifiedName": "WeaviateApi.FetchShardingState@2.0.0", + "description": "Fetch the current sharding state and replica details for collections.\n\nThis tool retrieves the current sharding state for all collections or a specified collection, including replica locations and statuses. If needed, it can also provide the state for a specific shard within a collection.", + "parameters": [ + { + "name": "collection_name", + "type": "string", + "required": false, + "description": "The name of the collection to retrieve the sharding state for.", + "enum": null, + "inferrable": true + }, + { + "name": "target_shard", + "type": "string", + "required": false, + "description": "Specify the shard name to retrieve its sharding state in a collection.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCollectionShardingState'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.FetchShardingState", + "parameters": { + "collection_name": { + "value": "user_profiles", + "type": "string", + "required": false + }, + "target_shard": { + "value": "shard_1", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ForceDeleteReplications", + "qualifiedName": "WeaviateApi.ForceDeleteReplications", + "fullyQualifiedName": "WeaviateApi.ForceDeleteReplications@2.0.0", + "description": "Forcefully delete replication operations with caution.\n\nThis tool is used to forcefully delete operations from the FSM in Weaviate. It should be called when there is a need to remove replication operations without performing state checks, which may lead to data corruption or loss. Ensure replication engine workers are scaled to 0 before using this to prevent in-flight operations.", + "parameters": [ + { + "name": "collection_name", + "type": "string", + "required": false, + "description": "The name of the collection associated with the shard being replicated.", + "enum": null, + "inferrable": true + }, + { + "name": "dry_run", + "type": "boolean", + "required": false, + "description": "When set to true, the operation simulates the deletion and returns the expected result without executing it.", + "enum": null, + "inferrable": true + }, + { + "name": "replication_operation_id", + "type": "string", + "required": false, + "description": "The unique identifier (ID) of the replication operation to be forcefully deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "shard_identifier", + "type": "string", + "required": false, + "description": "The unique identifier of the shard involved in the replication operations.", + "enum": null, + "inferrable": true + }, + { + "name": "target_node_name", + "type": "string", + "required": false, + "description": "The name of the target node where replication operations are registered.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'forceDeleteReplications'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.ForceDeleteReplications", + "parameters": { + "collection_name": { + "value": "example_collection", + "type": "string", + "required": false + }, + "dry_run": { + "value": true, + "type": "boolean", + "required": false + }, + "replication_operation_id": { + "value": "replication_12345", + "type": "string", + "required": false + }, + "shard_identifier": { + "value": "shard_01", + "type": "string", + "required": false + }, + "target_node_name": { + "value": "target_node_1", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetAuthenticatedUserInfo", + "qualifiedName": "WeaviateApi.GetAuthenticatedUserInfo", + "fullyQualifiedName": "WeaviateApi.GetAuthenticatedUserInfo@2.0.0", + "description": "Retrieve details about the authenticated user and their roles.\n\nThis tool retrieves information about the current user, including their username and assigned roles, from the authenticated session.", + "parameters": [], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOwnInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetAuthenticatedUserInfo", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetClassificationStatus", + "qualifiedName": "WeaviateApi.GetClassificationStatus", + "fullyQualifiedName": "WeaviateApi.GetClassificationStatus@2.0.0", + "description": "Retrieve status and results of a classification task.\n\nUse this tool to obtain the status, metadata, and results of an ongoing or completed classification task by providing its unique ID.", + "parameters": [ + { + "name": "classification_task_id", + "type": "string", + "required": true, + "description": "The unique identifier (UUID) of the classification task to retrieve its status and results.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'classifications.get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetClassificationStatus", + "parameters": { + "classification_task_id": { + "value": "f47ac10b-58cc-4372-a567-0e02b2c3d479", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetClusterNodeStatus", + "qualifiedName": "WeaviateApi.GetClusterNodeStatus", + "fullyQualifiedName": "WeaviateApi.GetClusterNodeStatus@2.0.0", + "description": "Retrieve status information about all nodes in a cluster.\n\nFetches status details for all nodes in the cluster, with adjustable detail level using the output parameter.", + "parameters": [ + { + "name": "output_verbosity", + "type": "string", + "required": false, + "description": "Controls the verbosity of the output for node status information. Accepted values: `minimal`, `verbose`. Defaults to `minimal`.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'nodes.get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetClusterNodeStatus", + "parameters": { + "output_verbosity": { + "value": "verbose", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCollectionShardStatus", + "qualifiedName": "WeaviateApi.GetCollectionShardStatus", + "fullyQualifiedName": "WeaviateApi.GetCollectionShardStatus@2.0.0", + "description": "Retrieves status of shards for a specified collection.\n\nUse this tool to get the status of all shards associated with a specific collection (`className`) in Weaviate. For multi-tenant collections, specify the `tenant` query parameter to retrieve shard status for a particular tenant.", + "parameters": [ + { + "name": "collection_name", + "type": "string", + "required": true, + "description": "The name of the collection (class) whose shards to query.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_name", + "type": "string", + "required": false, + "description": "The name of the tenant for retrieving shard statuses, applicable only for multi-tenant collections.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'schema.objects.shards.get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetCollectionShardStatus", + "parameters": { + "collection_name": { + "value": "products", + "type": "string", + "required": true + }, + "tenant_name": { + "value": "tenantA", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCollectionTenants", + "qualifiedName": "WeaviateApi.GetCollectionTenants", + "fullyQualifiedName": "WeaviateApi.GetCollectionTenants@2.0.0", + "description": "Retrieve tenants for a specified collection.\n\nThis tool retrieves a list of all tenants associated with a given collection. Call this tool to obtain tenant information for a specified collection in the Weaviate service.", + "parameters": [ + { + "name": "collection_name", + "type": "string", + "required": true, + "description": "The name of the collection (class) whose tenants to list.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tenants.get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetCollectionTenants", + "parameters": { + "collection_name": { + "value": "example_collection", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDatabaseUserInfo", + "qualifiedName": "WeaviateApi.GetDatabaseUserInfo", + "fullyQualifiedName": "WeaviateApi.GetDatabaseUserInfo@2.0.0", + "description": "Retrieve information about a specific database user.\n\nUse this tool to get detailed information about a database user, including their roles, status, and type. Call this tool when you need to know specific details about a database user's profile or attributes.", + "parameters": [ + { + "name": "database_user_name", + "type": "string", + "required": true, + "description": "The unique identifier or name of the database user to retrieve information for.", + "enum": null, + "inferrable": true + }, + { + "name": "include_last_used_time", + "type": "boolean", + "required": false, + "description": "Set to true to include the last used time in the user's information.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUserInfo'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetDatabaseUserInfo", + "parameters": { + "database_user_name": { + "value": "john_doe", + "type": "string", + "required": true + }, + "include_last_used_time": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetDataObject", + "qualifiedName": "WeaviateApi.GetDataObject", + "fullyQualifiedName": "WeaviateApi.GetDataObject@2.0.0", + "description": "Retrieve a data object using collection name and UUID.", + "parameters": [ + { + "name": "collection_name", + "type": "string", + "required": true, + "description": "Name of the collection (class) the object belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "object_uuid", + "type": "string", + "required": true, + "description": "Unique UUID of the object to be retrieved from the specified collection.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_information", + "type": "string", + "required": false, + "description": "Specify additional info to include: `classification`, `vector`, or `interpretation`.", + "enum": null, + "inferrable": true + }, + { + "name": "required_replica_acknowledgment", + "type": "string", + "required": false, + "description": "Specifies how many replicas must confirm a request for success. Relates to consistency level.", + "enum": null, + "inferrable": true + }, + { + "name": "target_node_name", + "type": "string", + "required": false, + "description": "Specify the target node to fulfill the request.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": false, + "description": "Specify the tenant for a multi-tenant collection request.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'objects.class.get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetDataObject", + "parameters": { + "collection_name": { + "value": "users", + "type": "string", + "required": true + }, + "object_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": true + }, + "include_additional_information": { + "value": "classification", + "type": "string", + "required": false + }, + "required_replica_acknowledgment": { + "value": "2", + "type": "string", + "required": false + }, + "target_node_name": { + "value": "node_1", + "type": "string", + "required": false + }, + "tenant_identifier": { + "value": "tenant_123", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetGroupsForRole", + "qualifiedName": "WeaviateApi.GetGroupsForRole", + "fullyQualifiedName": "WeaviateApi.GetGroupsForRole@2.0.0", + "description": "Retrieve groups assigned to a specific role.\n\nUse this tool to get a list of all groups that have been assigned a particular role, identified by the role's name.", + "parameters": [ + { + "name": "role_name", + "type": "string", + "required": true, + "description": "The unique name of the role to retrieve associated groups.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getGroupsForRole'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetGroupsForRole", + "parameters": { + "role_name": { + "value": "admin", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetOidcDiscovery", + "qualifiedName": "WeaviateApi.GetOidcDiscovery", + "fullyQualifiedName": "WeaviateApi.GetOidcDiscovery@2.0.0", + "description": "Fetches OIDC discovery details for Weaviate authentication.\n\nThis tool retrieves OpenID Connect (OIDC) discovery information for Weaviate if OIDC authentication is configured. It provides essential details like the token issuer URL, client ID, and required scopes.", + "parameters": [], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint ''." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetOidcDiscovery", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRolesAndPermissions", + "qualifiedName": "WeaviateApi.GetRolesAndPermissions", + "fullyQualifiedName": "WeaviateApi.GetRolesAndPermissions@2.0.0", + "description": "Retrieve all roles and their assigned permissions.\n\nUse this tool to obtain detailed information on all roles and the specific permissions associated with each role.", + "parameters": [], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRoles'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetRolesAndPermissions", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetRolesForGroup", + "qualifiedName": "WeaviateApi.GetRolesForGroup", + "fullyQualifiedName": "WeaviateApi.GetRolesForGroup@2.0.0", + "description": "Retrieve roles assigned to a specific group.\n\nFetches all roles associated with a group identified by its name and type (options: `db` or `oidc`).", + "parameters": [ + { + "name": "group_name", + "type": "string", + "required": true, + "description": "The unique name of the group to retrieve roles for.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type", + "type": "string", + "required": true, + "description": "Specifies the type of the group, either 'db' or 'oidc'.", + "enum": null, + "inferrable": true + }, + { + "name": "include_full_role_definitions", + "type": "boolean", + "required": false, + "description": "Include full role definitions with all permissions if true; return only role names if false.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRolesForGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetRolesForGroup", + "parameters": { + "group_name": { + "value": "admin_users", + "type": "string", + "required": true + }, + "group_type": { + "value": "db", + "type": "string", + "required": true + }, + "include_full_role_definitions": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetShardHostNodesStatus", + "qualifiedName": "WeaviateApi.GetShardHostNodesStatus", + "fullyQualifiedName": "WeaviateApi.GetShardHostNodesStatus@2.0.0", + "description": "Retrieve status of nodes hosting shards for a collection.\n\nThis tool fetches status information for nodes that host shards of a specified collection. Use it to monitor or diagnose the nodes in a distributed database cluster, customizing the level of detail with the `output` query parameter.", + "parameters": [ + { + "name": "collection_class_name", + "type": "string", + "required": true, + "description": "The name of the collection (class) for which to retrieve node status.", + "enum": null, + "inferrable": true + }, + { + "name": "output_verbosity", + "type": "string", + "required": false, + "description": "Set the verbosity of the output. Possible values: 'minimal', 'verbose'. Defaults to 'minimal'.", + "enum": null, + "inferrable": true + }, + { + "name": "shard_name", + "type": "string", + "required": false, + "description": "Specifies the name of the shard for which to retrieve node status information. This helps to focus the request on specific shards within a collection.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'nodes.get.class'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetShardHostNodesStatus", + "parameters": { + "collection_class_name": { + "value": "UserProfiles", + "type": "string", + "required": true + }, + "output_verbosity": { + "value": "verbose", + "type": "string", + "required": false + }, + "shard_name": { + "value": "shard_02", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetTenantDetails", + "qualifiedName": "WeaviateApi.GetTenantDetails", + "fullyQualifiedName": "WeaviateApi.GetTenantDetails@2.0.0", + "description": "Retrieve details about a specific tenant's status.\n\nCall this tool to get information about a specific tenant within a specified collection, including their current activity status.", + "parameters": [ + { + "name": "collection_name", + "type": "string", + "required": true, + "description": "The name of the collection (class) that contains the tenant.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_name", + "type": "string", + "required": true, + "description": "The name of the tenant to retrieve details about within the specified collection.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tenants.get.one'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetTenantDetails", + "parameters": { + "collection_name": { + "value": "customers", + "type": "string", + "required": true + }, + "tenant_name": { + "value": "tenant123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUserRoles", + "qualifiedName": "WeaviateApi.GetUserRoles", + "fullyQualifiedName": "WeaviateApi.GetUserRoles@2.0.0", + "description": "Retrieve all roles assigned to a specific user.\n\nUse this tool to get a list of all roles for a specified user, identified by their ID and user type (`db` or `oidc`).", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique name or identifier of the user for whom roles are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "user_type", + "type": "string", + "required": true, + "description": "Specify the user type: 'oidc' for OpenID Connect or 'db' for database.", + "enum": null, + "inferrable": true + }, + { + "name": "include_detailed_role_information", + "type": "boolean", + "required": false, + "description": "Set to true to include detailed role information like assigned permissions.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRolesForUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetUserRoles", + "parameters": { + "user_id": { + "value": "user123", + "type": "string", + "required": true + }, + "user_type": { + "value": "oidc", + "type": "string", + "required": true + }, + "include_detailed_role_information": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetUsersByRole", + "qualifiedName": "WeaviateApi.GetUsersByRole", + "fullyQualifiedName": "WeaviateApi.GetUsersByRole@2.0.0", + "description": "Retrieve users with a specific role assignment.\n\nUse to obtain a list of users assigned to a particular role by role ID.", + "parameters": [ + { + "name": "role_id", + "type": "string", + "required": true, + "description": "The unique identifier for the role to fetch associated users.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUsersForRole'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetUsersByRole", + "parameters": { + "role_id": { + "value": "admin-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWeaviateClusterStatistics", + "qualifiedName": "WeaviateApi.GetWeaviateClusterStatistics", + "fullyQualifiedName": "WeaviateApi.GetWeaviateClusterStatistics@2.0.0", + "description": "Get Weaviate cluster Raft protocol statistics.\n\nUse this tool to retrieve detailed statistics about the internal Raft consensus protocol state for a Weaviate cluster. This can help monitor the cluster's status and performance.", + "parameters": [], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'cluster.get.statistics'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetWeaviateClusterStatistics", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetWeaviateInstanceMeta", + "qualifiedName": "WeaviateApi.GetWeaviateInstanceMeta", + "fullyQualifiedName": "WeaviateApi.GetWeaviateInstanceMeta@2.0.0", + "description": "Get meta-information about a Weaviate instance.\n\nUse this tool to obtain details such as version, modules, and network hostname of a running Weaviate instance. Useful for monitoring, compatibility checks, or communication between instances.", + "parameters": [], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'meta.get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.GetWeaviateInstanceMeta", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "InitiateClassificationTask", + "qualifiedName": "WeaviateApi.InitiateClassificationTask", + "fullyQualifiedName": "WeaviateApi.InitiateClassificationTask@2.0.0", + "description": "Initiate a classification task in the background.\n\nUse this tool to start a background classification task with specific parameters. This will initiate the process, and you can monitor its status and retrieve results using the GET /classifications/{id} endpoint.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'classifications.post'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.InitiateClassificationTask", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"dataset\":\"sample_dataset\",\"class_name\":\"ClassA\",\"config\":{\"threshold\":0.75}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListBackups", + "qualifiedName": "WeaviateApi.ListBackups", + "fullyQualifiedName": "WeaviateApi.ListBackups@2.0.0", + "description": "Retrieve all backup IDs and their statuses.\n\nUse this tool to get a list of all created backup IDs along with their current statuses. Useful for monitoring or managing backup data.", + "parameters": [ + { + "name": "backend_storage_system", + "type": "string", + "required": true, + "description": "Specifies the backend storage system to list backups from (e.g., `filesystem`, `gcs`, `s3`, `azure`).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'backups.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.ListBackups", + "parameters": { + "backend_storage_system": { + "value": "s3", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListDataObjects", + "qualifiedName": "WeaviateApi.ListDataObjects", + "fullyQualifiedName": "WeaviateApi.ListDataObjects@2.0.0", + "description": "Retrieve a list of data objects from a specified collection.\n\nUse this tool to get a list of data objects from a particular collection by providing the collection name parameter. The objects are returned in reverse order of creation.", + "parameters": [ + { + "name": "collection_name", + "type": "string", + "required": false, + "description": "Specifies the collection name to query objects from. If not provided, no objects will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "include_additional_information", + "type": "string", + "required": false, + "description": "Include additional information types such as `classification`, `vector`, or `interpretation`.", + "enum": null, + "inferrable": true + }, + { + "name": "maximum_items_per_page", + "type": "integer", + "required": false, + "description": "The maximum number of items to be returned per page. The default is 25 unless set otherwise as an environment variable.", + "enum": null, + "inferrable": true + }, + { + "name": "query_start_index", + "type": "integer", + "required": false, + "description": "The starting index for the result window. Retrieves `offset+limit` results and returns `limit` results from this index onward. Cannot be used with `after`. Should be used with `limit`.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specify how to order the data within the sorted field(s). Use 'asc' for ascending and 'desc' for descending. Should match the order of fields used in `sort`. Multiple values should be separated by commas.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_properties", + "type": "string", + "required": false, + "description": "Names of properties to sort by, e.g., 'city' or 'country,city'.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": false, + "description": "Specifies the tenant for requests targeting a multi-tenant collection (class).", + "enum": null, + "inferrable": true + }, + { + "name": "threshold_uuid_after", + "type": "string", + "required": false, + "description": "A UUID to retrieve objects after, excluding this object. Use with `class` and `limit`. Leave empty for the start.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'objects.list'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.ListDataObjects", + "parameters": { + "collection_name": { + "value": "users", + "type": "string", + "required": false + }, + "include_additional_information": { + "value": "classification,vector", + "type": "string", + "required": false + }, + "maximum_items_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "query_start_index": { + "value": 10, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "desc", + "type": "string", + "required": false + }, + "sort_properties": { + "value": "created_at", + "type": "string", + "required": false + }, + "tenant_identifier": { + "value": "tenant123", + "type": "string", + "required": false + }, + "threshold_uuid_after": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListDbUsers", + "qualifiedName": "WeaviateApi.ListDbUsers", + "fullyQualifiedName": "WeaviateApi.ListDbUsers@2.0.0", + "description": "Retrieve all database users and their roles and statuses.\n\nUse this tool to obtain a comprehensive list of all users within the database, along with detailed information about their roles and current status. This is useful for auditing and managing user permissions in the database.", + "parameters": [ + { + "name": "include_last_used_time", + "type": "boolean", + "required": false, + "description": "Include the last time users were utilized in the response.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listAllUsers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.ListDbUsers", + "parameters": { + "include_last_used_time": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListDistributedTasks", + "qualifiedName": "WeaviateApi.ListDistributedTasks", + "fullyQualifiedName": "WeaviateApi.ListDistributedTasks@2.0.0", + "description": "Retrieve all distributed tasks in the cluster.\n\nUse this tool to get an overview of all distributed tasks currently active or available within the cluster.", + "parameters": [], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'distributedTasks.get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.ListDistributedTasks", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ListReplicationStatus", + "qualifiedName": "WeaviateApi.ListReplicationStatus", + "fullyQualifiedName": "WeaviateApi.ListReplicationStatus@2.0.0", + "description": "Retrieve registered replication operations and details.\n\nCall this tool to get information about current replication operations in Weaviate, filtered by collection, shard, or node ID if needed.", + "parameters": [ + { + "name": "collection_name", + "type": "string", + "required": false, + "description": "Specify the name of the collection for which to retrieve replication details.", + "enum": null, + "inferrable": true + }, + { + "name": "include_replication_history", + "type": "boolean", + "required": false, + "description": "Set to true to include the history of the replication operation, false to exclude it.", + "enum": null, + "inferrable": true + }, + { + "name": "shard_name", + "type": "string", + "required": false, + "description": "The specific shard for which to retrieve replication details.", + "enum": null, + "inferrable": true + }, + { + "name": "target_node_name", + "type": "string", + "required": false, + "description": "The name of the target node to retrieve replication operation details for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'listReplication'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.ListReplicationStatus", + "parameters": { + "collection_name": { + "value": "exampleCollection", + "type": "string", + "required": false + }, + "include_replication_history": { + "value": true, + "type": "boolean", + "required": false + }, + "shard_name": { + "value": "shard1", + "type": "string", + "required": false + }, + "target_node_name": { + "value": "nodeA", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ReplaceObjectReferences", + "qualifiedName": "WeaviateApi.ReplaceObjectReferences", + "fullyQualifiedName": "WeaviateApi.ReplaceObjectReferences@2.0.0", + "description": "Replace existing references for an object in Weaviate.\n\n Use this tool to replace all current references of a specific property for an object in Weaviate. Specify the object's collection name, UUID, and the reference property to update. Useful for updating linked data within a dataset.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "collection_name", + "type": "string", + "required": false, + "description": "Name of the collection the source object belongs to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "source_object_uuid", + "type": "string", + "required": false, + "description": "Unique UUID of the source object to identify it for reference replacement. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "reference_property_name", + "type": "string", + "required": false, + "description": "Unique name of the reference property for the source object to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "consistency_level", + "type": "string", + "required": false, + "description": "Defines the required number of replica acknowledgements for request success. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": false, + "description": "Specifies the tenant in a request targeting a multi-tenant collection (class). Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'objects.class.references.put'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.ReplaceObjectReferences", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "collection_name": { + "value": "products", + "type": "string", + "required": false + }, + "source_object_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "reference_property_name": { + "value": "related_products", + "type": "string", + "required": false + }, + "consistency_level": { + "value": "ONE", + "type": "string", + "required": false + }, + "tenant_identifier": { + "value": "tenant1", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"reference_ids\": [\"456e4567-e89b-12d3-a456-426614174001\", \"789e4567-e89b-12d3-a456-426614174002\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ReplicateShardReplica", + "qualifiedName": "WeaviateApi.ReplicateShardReplica", + "fullyQualifiedName": "WeaviateApi.ReplicateShardReplica@2.0.0", + "description": "Initiates replication of a shard replica to a target node.\n\nThis tool starts an asynchronous process to move or copy a specific shard replica from its current node to a specified target node. It handles data copying, synchronization, and may decommission the source replica.", + "parameters": [ + { + "name": "shard_name", + "type": "string", + "required": true, + "description": "The name of the shard whose replica is to be moved or copied. Specify the shard to initiate the operation.", + "enum": null, + "inferrable": true + }, + { + "name": "source_node", + "type": "string", + "required": true, + "description": "The name of the Weaviate node currently hosting the shard replica to be moved or copied.", + "enum": null, + "inferrable": true + }, + { + "name": "target_collection_name", + "type": "string", + "required": true, + "description": "The name of the collection to which the target shard belongs in the Weaviate database.", + "enum": null, + "inferrable": true + }, + { + "name": "target_weaviate_node", + "type": "string", + "required": true, + "description": "Name of the Weaviate node for creating the new shard replica during the operation.", + "enum": null, + "inferrable": true + }, + { + "name": "replication_operation_type", + "type": "string", + "required": false, + "description": "Specifies whether to 'COPY' or 'MOVE' the shard replica. Defaults to 'COPY' if not provided.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'replicate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.ReplicateShardReplica", + "parameters": { + "shard_name": { + "value": "shard_42", + "type": "string", + "required": true + }, + "source_node": { + "value": "node_A", + "type": "string", + "required": true + }, + "target_collection_name": { + "value": "collection_example", + "type": "string", + "required": true + }, + "target_weaviate_node": { + "value": "node_B", + "type": "string", + "required": true + }, + "replication_operation_type": { + "value": "MOVE", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RestoreBackup", + "qualifiedName": "WeaviateApi.RestoreBackup", + "fullyQualifiedName": "WeaviateApi.RestoreBackup@2.0.0", + "description": "Restore collections from a specified backup.\n\n Initiates the restoration of collections from a backup stored on a designated backend. Ensure the target cluster has identical node configurations as the source cluster, and that the collections do not already exist on the target.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "backup_backend_storage", + "type": "string", + "required": false, + "description": "Specifies the backend storage system where the backup resides, such as `filesystem`, `gcs`, `s3`, or `azure`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "backup_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the backup to restore. It must be URL-safe and compatible with filesystem paths, using only lowercase letters, numbers, underscores, and minus characters. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'backups.restore'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.RestoreBackup", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "backup_backend_storage": { + "value": "s3", + "type": "string", + "required": false + }, + "backup_identifier": { + "value": "backup_2023_09_15", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"restore\": true, \"collections\": [\"collection1\", \"collection2\"]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveAliasDetails", + "qualifiedName": "WeaviateApi.RetrieveAliasDetails", + "fullyQualifiedName": "WeaviateApi.RetrieveAliasDetails@2.0.0", + "description": "Retrieve details about a specific alias by its name.\n\nUse this tool to obtain information about an alias, such as the collection (class) it points to, by specifying the alias name.", + "parameters": [ + { + "name": "alias_name", + "type": "string", + "required": true, + "description": "The name of the alias to retrieve details for, including its associated collection.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'aliases.get.alias'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.RetrieveAliasDetails", + "parameters": { + "alias_name": { + "value": "exampleAlias", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveAliases", + "qualifiedName": "WeaviateApi.RetrieveAliases", + "fullyQualifiedName": "WeaviateApi.RetrieveAliases@2.0.0", + "description": "Retrieve all aliases from the system.\n\nFetches a list of all aliases, with an option to filter by collection (class) name for specific aliases.", + "parameters": [ + { + "name": "filter_by_collection_name", + "type": "string", + "required": false, + "description": "Optional filter to retrieve aliases for a specific collection (class) only. If not provided, returns all aliases.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'aliases.get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.RetrieveAliases", + "parameters": { + "filter_by_collection_name": { + "value": "example_collection", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveCollectionSchema", + "qualifiedName": "WeaviateApi.RetrieveCollectionSchema", + "fullyQualifiedName": "WeaviateApi.RetrieveCollectionSchema@2.0.0", + "description": "Retrieve the schema of a specified collection.\n\nFetches the definition of a specific collection by `className`, detailing its properties, configuration, and vectorizer settings.", + "parameters": [ + { + "name": "collection_name", + "type": "string", + "required": true, + "description": "The name of the collection to retrieve the schema for.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'schema.objects.get'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.RetrieveCollectionSchema", + "parameters": { + "collection_name": { + "value": "ProductCatalog", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveDatabaseSchema", + "qualifiedName": "WeaviateApi.RetrieveDatabaseSchema", + "fullyQualifiedName": "WeaviateApi.RetrieveDatabaseSchema@2.0.0", + "description": "Retrieve definitions of all classes in the database schema.\n\nUse this tool to obtain the definitions of all collections (classes) currently present in the database schema. It provides a comprehensive overview of the database structure.", + "parameters": [], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'schema.dump'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.RetrieveDatabaseSchema", + "parameters": {}, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RetrieveGroupNames", + "qualifiedName": "WeaviateApi.RetrieveGroupNames", + "fullyQualifiedName": "WeaviateApi.RetrieveGroupNames@2.0.0", + "description": "Retrieve available group names for a specified type.\n\nThis tool retrieves a list of all available group names for a specified group type, either 'oidc' or 'db'. Use it when you need to list groups of a certain type.", + "parameters": [ + { + "name": "group_type", + "type": "string", + "required": true, + "description": "Specifies the group type to retrieve, either 'oidc' or 'db'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getGroups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.RetrieveGroupNames", + "parameters": { + "group_type": { + "value": "oidc", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RevokeRoleFromGroup", + "qualifiedName": "WeaviateApi.RevokeRoleFromGroup", + "fullyQualifiedName": "WeaviateApi.RevokeRoleFromGroup@2.0.0", + "description": "Revoke roles from a specified group to manage permissions.\n\nThis tool allows the revocation of roles from a specified group, which is useful for managing and updating group permissions within a system using Weaviate.", + "parameters": [ + { + "name": "group_name", + "type": "string", + "required": true, + "description": "The name of the group from which roles will be revoked.", + "enum": null, + "inferrable": true + }, + { + "name": "group_type", + "type": "string", + "required": false, + "description": "Specifies whether the group contains OIDC or database users.", + "enum": null, + "inferrable": true + }, + { + "name": "roles_to_revoke", + "type": "array", + "innerType": "string", + "required": false, + "description": "An array of role names to revoke from the specified group.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'revokeRoleFromGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.RevokeRoleFromGroup", + "parameters": { + "group_name": { + "value": "developers", + "type": "string", + "required": true + }, + "group_type": { + "value": "OIDC", + "type": "string", + "required": false + }, + "roles_to_revoke": { + "value": ["write_access", "admin"], + "type": "array", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RevokeRolePermissions", + "qualifiedName": "WeaviateApi.RevokeRolePermissions", + "fullyQualifiedName": "WeaviateApi.RevokeRolePermissions@2.0.0", + "description": "Revoke permissions from a specified role.\n\n This tool is used to revoke permissions from a specified role in the Weaviate system. If all permissions are removed, the role will be deleted.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "role_name", + "type": "string", + "required": false, + "description": "The name of the role from which permissions are being revoked. Removing all permissions will delete the role. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'removePermissions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.RevokeRolePermissions", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "role_name": { + "value": "editor", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"permissions\":[]}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RevokeUserRole", + "qualifiedName": "WeaviateApi.RevokeUserRole", + "fullyQualifiedName": "WeaviateApi.RevokeUserRole@2.0.0", + "description": "Remove roles from a specified user in the system.\n\nUse this tool to revoke one or more roles assigned to a user by specifying their user ID. It's useful for updating user permissions in the system.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": true, + "description": "The unique identifier or name of the user from whom roles will be revoked.", + "enum": null, + "inferrable": true + }, + { + "name": "roles_to_revoke", + "type": "array", + "innerType": "string", + "required": false, + "description": "A list of roles to be removed from the specified user. Provide each role as a string in the array.", + "enum": null, + "inferrable": true + }, + { + "name": "user_type", + "type": "string", + "required": false, + "description": "Specify the user type: `db` for Weaviate-managed or `oidc` for external OIDC-managed users.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'revokeRoleFromUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.RevokeUserRole", + "parameters": { + "user_id": { + "value": "user123", + "type": "string", + "required": true + }, + "roles_to_revoke": { + "value": ["editor", "viewer"], + "type": "array", + "required": false + }, + "user_type": { + "value": "db", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "RotateUserApiKey", + "qualifiedName": "WeaviateApi.RotateUserApiKey", + "fullyQualifiedName": "WeaviateApi.RotateUserApiKey@2.0.0", + "description": "Revoke and regenerate the API key for a database user.\n\nThis tool is used to revoke the current API key for a specified database user and generate a new one. It should be called when an API key needs refreshing or if security has been compromised.", + "parameters": [ + { + "name": "database_user_name", + "type": "string", + "required": true, + "description": "The name of the database user for which the API key will be rotated.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'rotateUserApiKey'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.RotateUserApiKey", + "parameters": { + "database_user_name": { + "value": "db_user_123", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCollectionAlias", + "qualifiedName": "WeaviateApi.UpdateCollectionAlias", + "fullyQualifiedName": "WeaviateApi.UpdateCollectionAlias@2.0.0", + "description": "Redirect an alias to a different collection.\n\nUse this tool to update an existing alias so it points to a new collection. This allows alias redirection without changing its name.", + "parameters": [ + { + "name": "alias_name", + "type": "string", + "required": true, + "description": "The name of the existing alias that you want to update to point to a new collection.", + "enum": null, + "inferrable": true + }, + { + "name": "new_collection_name", + "type": "string", + "required": false, + "description": "Specify the new collection (class) for the alias to point to.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'aliases.update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.UpdateCollectionAlias", + "parameters": { + "alias_name": { + "value": "user_alias", + "type": "string", + "required": true + }, + "new_collection_name": { + "value": "users_v2", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateCollectionSettings", + "qualifiedName": "WeaviateApi.UpdateCollectionSettings", + "fullyQualifiedName": "WeaviateApi.UpdateCollectionSettings@2.0.0", + "description": "Update settings of an existing collection.\n\n Use this tool to update the configuration settings of an existing collection by specifying the className and the new settings. This tool is useful when you need to change mutable settings of a collection but not its name or properties.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "collection_name_to_update", + "type": "string", + "required": false, + "description": "The name of the collection to be updated. Specify the collection's class name. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'schema.objects.update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.UpdateCollectionSettings", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "collection_name_to_update": { + "value": "my_collection", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"replication_factor\": 3, \"sharding\": {\"enabled\": true}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateDataObject", + "qualifiedName": "WeaviateApi.UpdateDataObject", + "fullyQualifiedName": "WeaviateApi.UpdateDataObject@2.0.0", + "description": "Update specific properties of a data object.\n\n This tool updates properties of an existing object in a specified collection using JSON merge patch semantics. The object is identified by its collection name and UUID. Use this to modify selected fields of a data object while ensuring validation and timestamp updates.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "collection_name", + "type": "string", + "required": false, + "description": "Specifies the name of the collection or class the object belongs to. This identifies where the object is stored. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "object_uuid", + "type": "string", + "required": false, + "description": "Unique UUID of the object to be patched within the specified collection. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "consistency_level", + "type": "string", + "required": false, + "description": "Specify the number of replicas that must acknowledge the request for success. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'objects.class.patch'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.UpdateDataObject", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "collection_name": { + "value": "example_collection", + "type": "string", + "required": false + }, + "object_uuid": { + "value": "123e4567-e89b-12d3-a456-426614174000", + "type": "string", + "required": false + }, + "consistency_level": { + "value": "QUORUM", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"property\":\"new_value\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateObjectProperties", + "qualifiedName": "WeaviateApi.UpdateObjectProperties", + "fullyQualifiedName": "WeaviateApi.UpdateObjectProperties@2.0.0", + "description": "Replace properties of a data object using its class and ID.\n\n This tool updates the properties of an existing object identified by its class name and UUID. The request must include the complete object definition with new values to replace the existing ones.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path, query parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path, query parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "collection_name", + "type": "string", + "required": false, + "description": "The name of the class (collection) to which the object belongs. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "object_uuid", + "type": "string", + "required": false, + "description": "Unique UUID of the object to be replaced. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "required_replica_acknowledgement", + "type": "string", + "required": false, + "description": "Specifies how many replicas must acknowledge a request for it to be successful. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'objects.class.put'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.UpdateObjectProperties", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "collection_name": { + "value": "users", + "type": "string", + "required": false + }, + "object_uuid": { + "value": "550e8400-e29b-41d4-a716-446655440000", + "type": "string", + "required": false + }, + "required_replica_acknowledgement": { + "value": "one", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateShardStatus", + "qualifiedName": "WeaviateApi.UpdateShardStatus", + "fullyQualifiedName": "WeaviateApi.UpdateShardStatus@2.0.0", + "description": "Update the status of a specific shard in a collection.\n\nUse this tool to update the status of a specific shard within a Weaviate collection. It is typically used to change the shard's status to `READY` or `READONLY` after addressing issues that affected its operation.", + "parameters": [ + { + "name": "collection_name", + "type": "string", + "required": true, + "description": "The name of the collection or class containing the shard to be updated.", + "enum": null, + "inferrable": true + }, + { + "name": "shard_name", + "type": "string", + "required": true, + "description": "The specific name of the shard to update in the collection.", + "enum": null, + "inferrable": true + }, + { + "name": "shard_status", + "type": "string", + "required": false, + "description": "The status to set for the shard, such as 'READY' or 'READONLY'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'schema.objects.shards.update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.UpdateShardStatus", + "parameters": { + "collection_name": { + "value": "user_data", + "type": "string", + "required": true + }, + "shard_name": { + "value": "shard_01", + "type": "string", + "required": true + }, + "shard_status": { + "value": "READY", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "UpdateTenantStatus", + "qualifiedName": "WeaviateApi.UpdateTenantStatus", + "fullyQualifiedName": "WeaviateApi.UpdateTenantStatus@2.0.0", + "description": "Update the activity status of specified tenants.\n\n This tool updates the activity status, such as `ACTIVE` or `INACTIVE`, of one or more specified tenants within a collection (specified by `className`). Use this tool to manage tenant statuses efficiently within your system.\n\n Note: Understanding the request schema is necessary to properly create\n the stringified JSON input object for execution.\n\nThis operation also requires path parameters.\n\n Modes:\n - GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n - EXECUTE: Performs the operation with the provided request body\n JSON.\n Note: You must also provide the required path parameters when executing.\n\n If you need the schema, call with mode='get_request_schema' ONCE, then execute.\n ", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "collection_name", + "type": "string", + "required": false, + "description": "The name of the collection (class) containing the tenants whose status is to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'tenants.update'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.UpdateTenantStatus", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "collection_name": { + "value": "tenants_collection", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"tenants\": [\"tenant1\", \"tenant2\"], \"status\": \"ACTIVE\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ValidateDataObjectStructure", + "qualifiedName": "WeaviateApi.ValidateDataObjectStructure", + "fullyQualifiedName": "WeaviateApi.ValidateDataObjectStructure@2.0.0", + "description": "Validate a data object's structure against the schema.\n\nUse this tool to check if a data object conforms to the specified collection schema and metadata rules without storing it. A successful validation returns a confirmation, while errors provide detailed feedback.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["WEAVIATE_API_KEY", "WEAVIATE_SERVER_URL"], + "secretsInfo": [ + { + "name": "WEAVIATE_API_KEY", + "type": "api_key" + }, + { + "name": "WEAVIATE_SERVER_URL", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Response from the API endpoint 'objects.validate'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "WeaviateApi.ValidateDataObjectStructure", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "request_body": { + "value": "{\"class\":\"Person\",\"properties\":{\"name\":\"John Doe\",\"age\":30,\"email\":\"john.doe@example.com\"}}", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [ + { + "type": "section", + "location": "before_available_tools", + "position": "after", + "content": "## Authentication\n\nThe Arcade Weaviate API MCP Server requires two environment variables to authenticate with your Weaviate instance:\n\n- `WEAVIATE_API_KEY`\n- `WEAVIATE_SERVER_URL`\n\n**How to obtain your credentials:**\n\n1. Log in to your [Weaviate Console](https://console.weaviate.cloud/)\n2. Select your Weaviate cluster\n3. Navigate to **Details** or **API Keys** section\n4. Click **Create API Key** or use an existing key\n5. Copy your **API Key**\n6. Copy your **Cluster URL** (this is your server URL and must include `https://`)\n\n**Note:** The `WEAVIATE_SERVER_URL` must include the full URL with the `https://` protocol (e.g., `https://your-cluster.weaviate.network`).\n\nFor more details, see the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication).", + "header": "## Authentication" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:47:15.746Z", + "summary": "Arcade Toolkit provides tools to interface directly with the Weaviate API, enabling developers to manage and organize data efficiently. This toolkit is essential for working with databases within Weaviate, making it easier to handle complex operations.\n\n### Capabilities\n- Manage database users and roles, including assignment and permissions.\n- Perform batch operations for data objects and references, improving efficiency.\n- Create, update, and delete schemas and collections.\n- Monitor and manage backup and replication processes for data integrity and recovery.\n- Validate data object structures to ensure compliance with schema requirements.\n\n### Secrets\n- **API Key**: `WEAVIATE_API_KEY` \n- **Server URL**: `WEAVIATE_SERVER_URL` \nUse these secrets for authenticating and connecting to your Weaviate instance." +} diff --git a/data/toolkits/web.json b/data/toolkits/web.json new file mode 100644 index 000000000..4f9309674 --- /dev/null +++ b/data/toolkits/web.json @@ -0,0 +1,529 @@ +{ + "id": "Web", + "label": "Web", + "version": "2.0.1", + "description": "Arcade.dev LLM tools for web scraping related tasks", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/web.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/web", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "CancelCrawl", + "qualifiedName": "Web.CancelCrawl", + "fullyQualifiedName": "Web.CancelCrawl@2.0.1", + "description": "Cancel an asynchronous crawl job that is in progress using the Firecrawl API.", + "parameters": [ + { + "name": "crawl_id", + "type": "string", + "required": true, + "description": "The ID of the asynchronous crawl job to cancel", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FIRECRAWL_API_KEY"], + "secretsInfo": [ + { + "name": "FIRECRAWL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Cancellation status information" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Web.CancelCrawl", + "parameters": { + "crawl_id": { + "value": "crawl_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "CrawlWebsite", + "qualifiedName": "Web.CrawlWebsite", + "fullyQualifiedName": "Web.CrawlWebsite@2.0.1", + "description": "Crawl a website using Firecrawl. If the crawl is asynchronous, then returns the crawl ID.\nIf the crawl is synchronous, then returns the crawl data.", + "parameters": [ + { + "name": "url", + "type": "string", + "required": true, + "description": "URL to crawl", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_paths", + "type": "array", + "innerType": "string", + "required": false, + "description": "URL patterns to exclude from the crawl", + "enum": null, + "inferrable": true + }, + { + "name": "include_paths", + "type": "array", + "innerType": "string", + "required": false, + "description": "URL patterns to include in the crawl", + "enum": null, + "inferrable": true + }, + { + "name": "max_depth", + "type": "integer", + "required": false, + "description": "Maximum depth to crawl relative to the entered URL", + "enum": null, + "inferrable": true + }, + { + "name": "ignore_sitemap", + "type": "boolean", + "required": false, + "description": "Ignore the website sitemap when crawling", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Limit the number of pages to crawl", + "enum": null, + "inferrable": true + }, + { + "name": "allow_backward_links", + "type": "boolean", + "required": false, + "description": "Enable navigation to previously linked pages and enable crawling sublinks that are not children of the 'url' input parameter.", + "enum": null, + "inferrable": true + }, + { + "name": "allow_external_links", + "type": "boolean", + "required": false, + "description": "Allow following links to external websites", + "enum": null, + "inferrable": true + }, + { + "name": "webhook", + "type": "string", + "required": false, + "description": "The URL to send a POST request to when the crawl is started, updated and completed.", + "enum": null, + "inferrable": true + }, + { + "name": "async_crawl", + "type": "boolean", + "required": false, + "description": "Run the crawl asynchronously", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FIRECRAWL_API_KEY"], + "secretsInfo": [ + { + "name": "FIRECRAWL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Crawl status and data" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Web.CrawlWebsite", + "parameters": { + "url": { + "value": "https://example.com", + "type": "string", + "required": true + }, + "exclude_paths": { + "value": ["/exclude/*", "/private/*"], + "type": "array", + "required": false + }, + "include_paths": { + "value": ["/include/*", "/public/*"], + "type": "array", + "required": false + }, + "max_depth": { + "value": 3, + "type": "integer", + "required": false + }, + "ignore_sitemap": { + "value": false, + "type": "boolean", + "required": false + }, + "limit": { + "value": 100, + "type": "integer", + "required": false + }, + "allow_backward_links": { + "value": true, + "type": "boolean", + "required": false + }, + "allow_external_links": { + "value": false, + "type": "boolean", + "required": false + }, + "webhook": { + "value": "https://webhook.example.com/crawl", + "type": "string", + "required": false + }, + "async_crawl": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCrawlData", + "qualifiedName": "Web.GetCrawlData", + "fullyQualifiedName": "Web.GetCrawlData@2.0.1", + "description": "Get the data of a Firecrawl 'crawl' that is either in progress or recently completed.", + "parameters": [ + { + "name": "crawl_id", + "type": "string", + "required": true, + "description": "The ID of the crawl job", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FIRECRAWL_API_KEY"], + "secretsInfo": [ + { + "name": "FIRECRAWL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Crawl data information" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Web.GetCrawlData", + "parameters": { + "crawl_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "GetCrawlStatus", + "qualifiedName": "Web.GetCrawlStatus", + "fullyQualifiedName": "Web.GetCrawlStatus@2.0.1", + "description": "Get the status of a Firecrawl 'crawl' that is either in progress or recently completed.", + "parameters": [ + { + "name": "crawl_id", + "type": "string", + "required": true, + "description": "The ID of the crawl job", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FIRECRAWL_API_KEY"], + "secretsInfo": [ + { + "name": "FIRECRAWL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Crawl status information" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Web.GetCrawlStatus", + "parameters": { + "crawl_id": { + "value": "abc12345-def6-7890-gh12-ijklmnopqrst", + "type": "string", + "required": true + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "MapWebsite", + "qualifiedName": "Web.MapWebsite", + "fullyQualifiedName": "Web.MapWebsite@2.0.1", + "description": "Map a website from a single URL to a map of the entire website.", + "parameters": [ + { + "name": "url", + "type": "string", + "required": true, + "description": "The base URL to start crawling from", + "enum": null, + "inferrable": true + }, + { + "name": "search", + "type": "string", + "required": false, + "description": "Search query to use for mapping", + "enum": null, + "inferrable": true + }, + { + "name": "ignore_sitemap", + "type": "boolean", + "required": false, + "description": "Ignore the website sitemap when crawling", + "enum": null, + "inferrable": true + }, + { + "name": "include_subdomains", + "type": "boolean", + "required": false, + "description": "Include subdomains of the website", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of links to return", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FIRECRAWL_API_KEY"], + "secretsInfo": [ + { + "name": "FIRECRAWL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Website map data" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Web.MapWebsite", + "parameters": { + "url": { + "value": "https://example.com", + "type": "string", + "required": true + }, + "search": { + "value": "products", + "type": "string", + "required": false + }, + "ignore_sitemap": { + "value": false, + "type": "boolean", + "required": false + }, + "include_subdomains": { + "value": true, + "type": "boolean", + "required": false + }, + "limit": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "ScrapeUrl", + "qualifiedName": "Web.ScrapeUrl", + "fullyQualifiedName": "Web.ScrapeUrl@2.0.1", + "description": "Scrape a URL using Firecrawl and return the data in specified formats.", + "parameters": [ + { + "name": "url", + "type": "string", + "required": true, + "description": "URL to scrape", + "enum": null, + "inferrable": true + }, + { + "name": "formats", + "type": "array", + "innerType": "string", + "required": false, + "description": "Formats to retrieve. Defaults to ['markdown'].", + "enum": [ + "markdown", + "html", + "rawHtml", + "links", + "screenshot", + "screenshot@fullPage" + ], + "inferrable": true + }, + { + "name": "only_main_content", + "type": "boolean", + "required": false, + "description": "Only return the main content of the page excluding headers, navs, footers, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "include_tags", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of tags to include in the output", + "enum": null, + "inferrable": true + }, + { + "name": "exclude_tags", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of tags to exclude from the output", + "enum": null, + "inferrable": true + }, + { + "name": "wait_for", + "type": "integer", + "required": false, + "description": "Specify a delay in milliseconds before fetching the content, allowing the page sufficient time to load.", + "enum": null, + "inferrable": true + }, + { + "name": "timeout", + "type": "integer", + "required": false, + "description": "Timeout in milliseconds for the request", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["FIRECRAWL_API_KEY"], + "secretsInfo": [ + { + "name": "FIRECRAWL_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Scraped data in specified formats" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Web.ScrapeUrl", + "parameters": { + "url": { + "value": "https://example.com", + "type": "string", + "required": true + }, + "formats": { + "value": ["markdown", "html"], + "type": "array", + "required": false + }, + "only_main_content": { + "value": true, + "type": "boolean", + "required": false + }, + "include_tags": { + "value": ["p", "h1", "h2"], + "type": "array", + "required": false + }, + "exclude_tags": { + "value": ["header", "footer", "nav"], + "type": "array", + "required": false + }, + "wait_for": { + "value": 2000, + "type": "integer", + "required": false + }, + "timeout": { + "value": 5000, + "type": "integer", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:46:38.751Z", + "summary": "Arcade.dev provides a powerful toolkit designed for web scraping tasks, enabling developers to efficiently manage and extract data from websites. This toolkit leverages the Firecrawl API to provide a range of functionalities for both synchronous and asynchronous crawling.\n\n**Capabilities**:\n- Initiate and manage web crawls, with options for both synchronous and asynchronous operations.\n- Retrieve crawl data and status updates for ongoing or recently completed tasks.\n- Map entire websites starting from a single URL.\n- Scrape specific URLs and receive data in various formats.\n\n**Secrets**:\n- API key required for accessing Firecrawl, named `FIRECRAWL_API_KEY`." +} diff --git a/data/toolkits/x.json b/data/toolkits/x.json new file mode 100644 index 000000000..e7f6657f1 --- /dev/null +++ b/data/toolkits/x.json @@ -0,0 +1,421 @@ +{ + "id": "X", + "label": "X", + "version": "1.1.1", + "description": "Arcade.dev LLM tools for X (Twitter)", + "metadata": { + "category": "social", + "iconUrl": "https://design-system.arcade.dev/icons/x.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/social-communication/x", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "x", + "allScopes": ["tweet.read", "tweet.write", "users.read"] + }, + "tools": [ + { + "name": "DeleteTweetById", + "qualifiedName": "X.DeleteTweetById", + "fullyQualifiedName": "X.DeleteTweetById@1.1.1", + "description": "Delete a tweet on X (Twitter).", + "parameters": [ + { + "name": "tweet_id", + "type": "string", + "required": true, + "description": "The ID of the tweet you want to delete", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "x", + "providerType": "oauth2", + "scopes": ["tweet.read", "tweet.write", "users.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "Success string confirming the tweet deletion" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "X.DeleteTweetById", + "parameters": { + "tweet_id": { + "value": "1234567890123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "x", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "LookupSingleUserByUsername", + "qualifiedName": "X.LookupSingleUserByUsername", + "fullyQualifiedName": "X.LookupSingleUserByUsername@1.1.1", + "description": "Look up a user on X (Twitter) by their username.", + "parameters": [ + { + "name": "username", + "type": "string", + "required": true, + "description": "The username of the X (Twitter) user to look up", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "x", + "providerType": "oauth2", + "scopes": ["users.read", "tweet.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "User information including id, name, username, and description" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "X.LookupSingleUserByUsername", + "parameters": { + "username": { + "value": "example_user123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "x", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "LookupTweetById", + "qualifiedName": "X.LookupTweetById", + "fullyQualifiedName": "X.LookupTweetById@1.1.1", + "description": "Look up a tweet on X (Twitter) by tweet ID.", + "parameters": [ + { + "name": "tweet_id", + "type": "string", + "required": true, + "description": "The ID of the tweet you want to look up", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "x", + "providerType": "oauth2", + "scopes": ["tweet.read", "users.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Dictionary containing the tweet data" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "X.LookupTweetById", + "parameters": { + "tweet_id": { + "value": "1456789012345678901", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "x", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "PostTweet", + "qualifiedName": "X.PostTweet", + "fullyQualifiedName": "X.PostTweet@1.1.1", + "description": "Post a tweet to X (Twitter).\n\nIMPORTANT NOTE:\nUse this tool ONLY when posting a tweet that is not a reply.\nIf you need to reply to a tweet, use the ReplyToTweet tool instead.\nIf you need to quote a tweet, you must include the quote_tweet_id parameter.", + "parameters": [ + { + "name": "tweet_text", + "type": "string", + "required": true, + "description": "The text content of the tweet you want to post", + "enum": null, + "inferrable": true + }, + { + "name": "quote_tweet_id", + "type": "string", + "required": false, + "description": "The ID of the tweet you want to quote. It must be a valid integer as a string. Optional.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "x", + "providerType": "oauth2", + "scopes": ["tweet.read", "tweet.write", "users.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "Success string and the URL of the tweet" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "X.PostTweet", + "parameters": { + "tweet_text": { + "value": "Excited to share my latest project! Check it out! #innovation #tech", + "type": "string", + "required": true + }, + "quote_tweet_id": { + "value": "1234567890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "x", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ReplyToTweet", + "qualifiedName": "X.ReplyToTweet", + "fullyQualifiedName": "X.ReplyToTweet@1.1.1", + "description": "Reply to a tweet on X (Twitter).\n\nIMPORTANT NOTE:\nUse this tool ONLY when replying to a tweet directly.\nIf you need to post a tweet that is not a reply, use the PostTweet tool instead.\nIf you need to quote a tweet on your reply, you must include the quote_tweet_id parameter.", + "parameters": [ + { + "name": "tweet_id", + "type": "string", + "required": true, + "description": "The ID of the tweet you want to reply to. It must be a valid integer as a string.", + "enum": null, + "inferrable": true + }, + { + "name": "tweet_text", + "type": "string", + "required": true, + "description": "The text content of the tweet you want to post", + "enum": null, + "inferrable": true + }, + { + "name": "quote_tweet_id", + "type": "string", + "required": false, + "description": "The ID of the tweet you want to quote. It must be a valid integer as a string. Optional.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "x", + "providerType": "oauth2", + "scopes": ["tweet.read", "tweet.write", "users.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "string", + "description": "Success string and the URL of the tweet" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "X.ReplyToTweet", + "parameters": { + "tweet_id": { + "value": "1234567890123456789", + "type": "string", + "required": true + }, + "tweet_text": { + "value": "Thanks for the update! I really appreciate it.", + "type": "string", + "required": true + }, + "quote_tweet_id": { + "value": "9876543210987654321", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "x", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchRecentTweetsByKeywords", + "qualifiedName": "X.SearchRecentTweetsByKeywords", + "fullyQualifiedName": "X.SearchRecentTweetsByKeywords@1.1.1", + "description": "Search for recent tweets (last 7 days) on X (Twitter) by required keywords and phrases.\nIncludes replies and reposts.\nOne of the following input parameters MUST be provided: keywords, phrases", + "parameters": [ + { + "name": "keywords", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of keywords that must be present in the tweet", + "enum": null, + "inferrable": true + }, + { + "name": "phrases", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of phrases that must be present in the tweet", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "The maximum number of results to return. Must be in range [1, 100] inclusive", + "enum": null, + "inferrable": true + }, + { + "name": "next_token", + "type": "string", + "required": false, + "description": "The pagination token starting from which to return results", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "x", + "providerType": "oauth2", + "scopes": ["tweet.read", "users.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Dictionary containing the search results" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "X.SearchRecentTweetsByKeywords", + "parameters": { + "keywords": { + "value": ["technology", "AI", "innovation"], + "type": "array", + "required": false + }, + "phrases": { + "value": ["machine learning", "data science"], + "type": "array", + "required": false + }, + "max_results": { + "value": 50, + "type": "integer", + "required": false + }, + "next_token": { + "value": "abc123xyz", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "x", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchRecentTweetsByUsername", + "qualifiedName": "X.SearchRecentTweetsByUsername", + "fullyQualifiedName": "X.SearchRecentTweetsByUsername@1.1.1", + "description": "Search for recent tweets (last 7 days) on X (Twitter) by username.\nIncludes replies and reposts.", + "parameters": [ + { + "name": "username", + "type": "string", + "required": true, + "description": "The username of the X (Twitter) user to look up", + "enum": null, + "inferrable": true + }, + { + "name": "max_results", + "type": "integer", + "required": false, + "description": "The maximum number of results to return. Must be in range [1, 100] inclusive", + "enum": null, + "inferrable": true + }, + { + "name": "next_token", + "type": "string", + "required": false, + "description": "The pagination token starting from which to return results", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "x", + "providerType": "oauth2", + "scopes": ["tweet.read", "users.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Dictionary containing the search results" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "X.SearchRecentTweetsByUsername", + "parameters": { + "username": { + "value": "example_user", + "type": "string", + "required": true + }, + "max_results": { + "value": 50, + "type": "integer", + "required": false + }, + "next_token": { + "value": "abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "x", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:46:46.899Z", + "summary": "Arcade.dev provides a powerful toolkit for interacting with X (Twitter), enabling developers to seamlessly integrate Twitter functionality into their applications. This toolkit offers a variety of features to manage tweets, user information, and search capabilities.\n\n**Capabilities**\n- Post, delete, and reply to tweets programmatically.\n- Search for recent tweets by keywords or usernames.\n- Retrieve user details by username.\n\n**OAuth**\nProvider: X (Twitter) \nScopes: tweet.read, tweet.write, users.read\n\n**Secrets** \nNo secrets are required for using this toolkit." +} diff --git a/data/toolkits/xeroapi.json b/data/toolkits/xeroapi.json new file mode 100644 index 000000000..086141983 --- /dev/null +++ b/data/toolkits/xeroapi.json @@ -0,0 +1,10605 @@ +{ + "id": "XeroApi", + "label": "Xero API", + "version": "2.0.0", + "description": "Tools that enable LLMs to interact directly with the Xero API.", + "metadata": { + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/xero.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/xero-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": [ + "accounting.attachments", + "accounting.attachments.read", + "accounting.budgets.read", + "accounting.contacts", + "accounting.contacts.read", + "accounting.journals.read", + "accounting.reports.read", + "accounting.reports.tenninetynine.read", + "accounting.settings", + "accounting.settings.read", + "accounting.transactions", + "accounting.transactions.read", + "paymentservices" + ] + }, + "tools": [ + { + "name": "AddContactHistoryRecord", + "qualifiedName": "XeroApi.AddContactHistoryRecord", + "fullyQualifiedName": "XeroApi.AddContactHistoryRecord@2.0.0", + "description": "Create a new history record for a contact in Xero.\n\nThis tool allows you to add a new history entry for a specific contact in Xero. Use it to log interactions, notes, or any relevant information about the contact.", + "parameters": [ + { + "name": "contact_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for a Contact in Xero. Required to specify which contact the history record is for.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. Required to specify which tenant's contact history to update.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique string up to 128 characters to safely retry requests without duplicate processing.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.contacts"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createContactHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.AddContactHistoryRecord", + "parameters": { + "contact_unique_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant-001", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique-string-for-retry-123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddExpenseClaimHistory", + "qualifiedName": "XeroApi.AddExpenseClaimHistory", + "fullyQualifiedName": "XeroApi.AddExpenseClaimHistory@2.0.0", + "description": "Creates a history record for an expense claim.\n\nUse this tool to add a record to the history of a specific expense claim. It should be called when there is a need to document a change or update related to an expense claim in the system.", + "parameters": [ + { + "name": "expense_claim_id", + "type": "string", + "required": true, + "description": "Unique identifier for the specific expense claim to add a history record.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant. This is required to specify which tenant the expense claim history record is associated with.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique string (max 128 characters) to safely retry requests without duplicating processing.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createExpenseClaimHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.AddExpenseClaimHistory", + "parameters": { + "expense_claim_id": { + "value": "exp_claim_12345", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant_67890", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique_key_abc123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddQuoteHistory", + "qualifiedName": "XeroApi.AddQuoteHistory", + "fullyQualifiedName": "XeroApi.AddQuoteHistory@2.0.0", + "description": "Creates a history record for a specific quote.\n\nUse this tool to add a history record to a specific quote in the Xero application. This is useful for tracking changes or updates made to a quote over time.", + "parameters": [ + { + "name": "quote_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for a quote to which the history will be added.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. Required for specifying the tenant within the Xero system.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "Unique key to safely retry requests and avoid duplicate processing (max 128 characters).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createQuoteHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.AddQuoteHistory", + "parameters": { + "quote_identifier": { + "value": "QUOTE12345", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TENANT67890", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "IDEMPOTENTKEY1234567890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBankTransactionHistory", + "qualifiedName": "XeroApi.CreateBankTransactionHistory", + "fullyQualifiedName": "XeroApi.CreateBankTransactionHistory@2.0.0", + "description": "Creates a record in the bank transaction history.\n\nUse this tool to create a history record for a specific bank transaction in Xero. It's useful for logging changes or updates to bank transactions.", + "parameters": [ + { + "name": "bank_transaction_id", + "type": "string", + "required": true, + "description": "Xero-generated unique identifier for the bank transaction to create a history record.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. This is required to specify which Xero account the transaction history will be associated with.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique key to prevent duplicate processing. Maximum 128 characters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createBankTransactionHistoryRecord'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.CreateBankTransactionHistory", + "parameters": { + "bank_transaction_id": { + "value": "txn_123456789", + "type": "string", + "required": true + }, + "tenant_id": { + "value": "tenant_987654321", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique_key_001", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBankTransferHistory", + "qualifiedName": "XeroApi.CreateBankTransferHistory", + "fullyQualifiedName": "XeroApi.CreateBankTransferHistory@2.0.0", + "description": "Create a history record for a bank transfer.\n\nThis tool creates a history record for a specified bank transfer within the Xero service. It is useful for tracking changes and updates to bank transfers.", + "parameters": [ + { + "name": "bank_transfer_id", + "type": "string", + "required": true, + "description": "Xero generated unique identifier for the specific bank transfer to create a history record for.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for a Xero tenant. Required to specify which tenant's data to access.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique string to safely retry requests without risk of duplication, limited to 128 characters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createBankTransferHistoryRecord'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.CreateBankTransferHistory", + "parameters": { + "bank_transfer_id": { + "value": "bt_123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant_78910", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique_key_001", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateBatchPaymentHistoryRecord", + "qualifiedName": "XeroApi.CreateBatchPaymentHistoryRecord", + "fullyQualifiedName": "XeroApi.CreateBatchPaymentHistoryRecord@2.0.0", + "description": "Creates a history record for a batch payment.\n\nThis tool is used to create a historical record for a specified batch payment in Xero. Call this tool when you want to log information or updates about a batch payment's history.", + "parameters": [ + { + "name": "batch_payment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the specific batch payment in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for Tenant. This is required to specify which tenant's batch payment history is being recorded.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique string to prevent duplicate processing. Maximum 128 characters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createBatchPaymentHistoryRecord'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.CreateBatchPaymentHistoryRecord", + "parameters": { + "batch_payment_id": { + "value": "BP12345678", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "TENANT_987654321", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique-key-123abc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateInvoiceHistory", + "qualifiedName": "XeroApi.CreateInvoiceHistory", + "fullyQualifiedName": "XeroApi.CreateInvoiceHistory@2.0.0", + "description": "Create a history record for a specific invoice.\n\nUse this tool to log a history record for a particular invoice in Xero. Ideal for tracking changes or adding comments to an invoice's history.", + "parameters": [ + { + "name": "invoice_id", + "type": "string", + "required": true, + "description": "Unique identifier for the invoice. This is required to create a history record for the specified invoice in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. Required for specifying which tenant the invoice history belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A string up to 128 characters to safely retry requests without duplicate processing.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createInvoiceHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.CreateInvoiceHistory", + "parameters": { + "invoice_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "abc-def-ghi", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique-id-1234", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateItemHistory", + "qualifiedName": "XeroApi.CreateItemHistory", + "fullyQualifiedName": "XeroApi.CreateItemHistory@2.0.0", + "description": "Creates a history record for a specific item in Xero.\n\nThis tool is used to create a history record for a specific item in Xero, allowing users to keep track of changes or updates made to an item.", + "parameters": [ + { + "name": "item_id", + "type": "string", + "required": true, + "description": "Unique identifier for the item to create a history record for in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant, required to specify which tenant's item history is being updated.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique key to ensure request retrying without duplication, max 128 characters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createItemHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.CreateItemHistory", + "parameters": { + "item_id": { + "value": "12345", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant_67890", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique_key_001", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateJournalHistoryRecord", + "qualifiedName": "XeroApi.CreateJournalHistoryRecord", + "fullyQualifiedName": "XeroApi.CreateJournalHistoryRecord@2.0.0", + "description": "Creates a history record for a specific manual journal.\n\nUse this tool to log a new history entry for a specific manual journal in Xero.", + "parameters": [ + { + "name": "manual_journal_id", + "type": "string", + "required": true, + "description": "Unique identifier for a specific manual journal in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant is required to specify which tenant's manual journal is being updated.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique string, up to 128 characters, to safely retry requests without duplicate processing.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createManualJournalHistoryRecord'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.CreateJournalHistoryRecord", + "parameters": { + "manual_journal_id": { + "value": "MJ123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "TEN987654", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique-key-12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePaymentHistoryRecord", + "qualifiedName": "XeroApi.CreatePaymentHistoryRecord", + "fullyQualifiedName": "XeroApi.CreatePaymentHistoryRecord@2.0.0", + "description": "Create a history record for a specific payment.\n\nThis tool is used to create a history record for a particular payment in Xero. It should be called when you want to document the history or add notes for a payment by its PaymentID.", + "parameters": [ + { + "name": "payment_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for a specific payment in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant. This is required to specify which tenant's data the action applies to.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique key to safely retry requests and prevent duplicate processing. Maximum 128 characters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createPaymentHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.CreatePaymentHistoryRecord", + "parameters": { + "payment_identifier": { + "value": "PAY123456789", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TENANT123456", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique-key-12345", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePrepaymentHistory", + "qualifiedName": "XeroApi.CreatePrepaymentHistory", + "fullyQualifiedName": "XeroApi.CreatePrepaymentHistory@2.0.0", + "description": "Creates a history record for a specific prepayment.\n\nCall this tool to create a history entry for a given prepayment in Xero, specifying the prepayment ID.", + "parameters": [ + { + "name": "prepayment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the specific PrePayment to create a history record for.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. This is required to specify which tenant's data the prepayment history applies to.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique string to safely retry requests without duplicate processing, up to 128 characters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createPrepaymentHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.CreatePrepaymentHistory", + "parameters": { + "prepayment_id": { + "value": "PP123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TENANT987654", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique-retry-key-123", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreatePurchaseOrderHistory", + "qualifiedName": "XeroApi.CreatePurchaseOrderHistory", + "fullyQualifiedName": "XeroApi.CreatePurchaseOrderHistory@2.0.0", + "description": "Create a history record for a purchase order.\n\nUse this tool to add a historical record to a specific purchase order when tracking changes or updates is necessary.", + "parameters": [ + { + "name": "purchase_order_id", + "type": "string", + "required": true, + "description": "Unique identifier for a Purchase Order. Pass the specific ID for which a history record will be created.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant. Required for API requests.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique key to safely retry requests without duplicate processing; 128 character max.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createPurchaseOrderHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.CreatePurchaseOrderHistory", + "parameters": { + "purchase_order_id": { + "value": "PO-12345", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant-xyz-789", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique-key-12345678901234567890123456789012345678", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "CreateRepeatingInvoiceHistory", + "qualifiedName": "XeroApi.CreateRepeatingInvoiceHistory", + "fullyQualifiedName": "XeroApi.CreateRepeatingInvoiceHistory@2.0.0", + "description": "Creates a history record for a repeating invoice.\n\nUse this tool to create a history record for a specific repeating invoice in the Xero system. This is useful for maintaining a log of actions or updates associated with the invoice.", + "parameters": [ + { + "name": "repeating_invoice_id", + "type": "string", + "required": true, + "description": "Unique identifier for a Repeating Invoice to create a history record.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant, required for accessing specific tenant data.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique string, max 128 characters, to safely retry requests without duplication.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createRepeatingInvoiceHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.CreateRepeatingInvoiceHistory", + "parameters": { + "repeating_invoice_id": { + "value": "INV123456789", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "TEN987654321", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique-idempotency-key-001", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteAccount", + "qualifiedName": "XeroApi.DeleteAccount", + "fullyQualifiedName": "XeroApi.DeleteAccount@2.0.0", + "description": "Delete a chart of accounts in Xero.\n\nUse this tool to delete a specified chart of accounts by providing the AccountID in Xero. This tool should be called when an account needs to be permanently removed.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Account object to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. Required to specify which tenant's account to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.DeleteAccount", + "parameters": { + "account_id": { + "value": "12345", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "abcde-12345-fghij-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteCreditNoteAllocation", + "qualifiedName": "XeroApi.DeleteCreditNoteAllocation", + "fullyQualifiedName": "XeroApi.DeleteCreditNoteAllocation@2.0.0", + "description": "Remove an allocation from a specific credit note.\n\nThis tool is used to delete an allocation from a specified credit note in the Xero system. It should be called when you need to remove a particular allocation detail from an existing credit note.", + "parameters": [ + { + "name": "allocation_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Allocation object needing deletion from a credit note.", + "enum": null, + "inferrable": true + }, + { + "name": "credit_note_unique_id", + "type": "string", + "required": true, + "description": "Unique identifier for a specific credit note to delete the allocation from.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Unique Xero identifier for the Tenant. Required to specify which tenant's data is being accessed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteCreditNoteAllocations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.DeleteCreditNoteAllocation", + "parameters": { + "allocation_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "credit_note_unique_id": { + "value": "cn456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteInventoryItem", + "qualifiedName": "XeroApi.DeleteInventoryItem", + "fullyQualifiedName": "XeroApi.DeleteInventoryItem@2.0.0", + "description": "Delete a specific item from inventory.\n\nUse this tool to remove an item from the inventory based on its ItemID. Call this tool to manage inventory by deleting items that are no longer needed or available.", + "parameters": [ + { + "name": "item_id", + "type": "string", + "required": true, + "description": "Unique identifier for the item to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant to specify which tenant's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.DeleteInventoryItem", + "parameters": { + "item_id": { + "value": "INV12345", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "TENANT56789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteLinkedTransaction", + "qualifiedName": "XeroApi.DeleteLinkedTransaction", + "fullyQualifiedName": "XeroApi.DeleteLinkedTransaction@2.0.0", + "description": "Delete a specific linked transaction.\n\nUse this tool to delete a specified linked transaction (billable expense) by providing the LinkedTransactionID. It should be called when there's a need to remove an existing linked expense from Xero.", + "parameters": [ + { + "name": "linked_transaction_id", + "type": "string", + "required": true, + "description": "Unique identifier for the linked transaction to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Provide the unique Xero identifier for the tenant to specify the context of the deletion.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteLinkedTransaction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.DeleteLinkedTransaction", + "parameters": { + "linked_transaction_id": { + "value": "LT123456789", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "TENANT987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteOverpaymentAllocation", + "qualifiedName": "XeroApi.DeleteOverpaymentAllocation", + "fullyQualifiedName": "XeroApi.DeleteOverpaymentAllocation@2.0.0", + "description": "Delete an allocation from an overpayment in Xero.\n\nThis tool deletes a specific allocation from an overpayment in the Xero system. Use this when you need to remove allocations linked to overpayments.", + "parameters": [ + { + "name": "allocation_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Allocation object to be deleted.", + "enum": null, + "inferrable": true + }, + { + "name": "overpayment_id", + "type": "string", + "required": true, + "description": "Unique identifier for a specific overpayment in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. Required to specify which tenant's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteOverpaymentAllocations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.DeleteOverpaymentAllocation", + "parameters": { + "allocation_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "overpayment_id": { + "value": "op987654321", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant_001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeletePrepaymentAllocation", + "qualifiedName": "XeroApi.DeletePrepaymentAllocation", + "fullyQualifiedName": "XeroApi.DeletePrepaymentAllocation@2.0.0", + "description": "Delete an allocation from a prepayment in Xero.\n\nUse this tool to delete a specific allocation from a prepayment in Xero. This action is irreversible and should be used when a specific allocation needs to be removed.", + "parameters": [ + { + "name": "allocation_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Allocation object to be deleted from a prepayment.", + "enum": null, + "inferrable": true + }, + { + "name": "prepayment_id", + "type": "string", + "required": true, + "description": "Unique identifier for a PrePayment. Required to specify which prepayment the allocation will be deleted from.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant in which the prepayment allocation deletion will occur.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deletePrepaymentAllocations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.DeletePrepaymentAllocation", + "parameters": { + "allocation_id": { + "value": "a1b2c3d4", + "type": "string", + "required": true + }, + "prepayment_id": { + "value": "p1q2r3s4", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant_123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "DeleteTrackingOption", + "qualifiedName": "XeroApi.DeleteTrackingOption", + "fullyQualifiedName": "XeroApi.DeleteTrackingOption@2.0.0", + "description": "Deletes a specific tracking category option in Xero.\n\nUse this tool to delete a specific tracking option from a selected tracking category in Xero. Useful for managing and updating your tracking categories when certain options are no longer needed.", + "parameters": [ + { + "name": "tracking_category_id", + "type": "string", + "required": true, + "description": "Unique identifier for the tracking category to specify which category the option will be deleted from.", + "enum": null, + "inferrable": true + }, + { + "name": "tracking_option_id", + "type": "string", + "required": true, + "description": "Unique identifier for a tracking option to be deleted in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for a Xero tenant. This specifies which tenant's data will be affected.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTrackingOptions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.DeleteTrackingOption", + "parameters": { + "tracking_category_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "tracking_option_id": { + "value": "xyz456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchAllXeroContacts", + "qualifiedName": "XeroApi.FetchAllXeroContacts", + "fullyQualifiedName": "XeroApi.FetchAllXeroContacts@2.0.0", + "description": "Retrieve all contacts from a Xero organization.\n\nUse this tool to obtain a list of all contacts within a specified Xero organization. It should be called when there's a need to access or manage contact information in Xero.", + "parameters": [ + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "A unique string to identify the tenant in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of ContactIDs to retrieve specific contacts. Use this to filter the contacts returned by their unique IDs in a single call.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_element", + "type": "string", + "required": false, + "description": "Specify conditions to filter contacts by any element within their data fields.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_contacts", + "type": "boolean", + "required": false, + "description": "Set to true to include contacts with a status of ARCHIVED in the response. False will exclude them.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Retrieve only records created or modified after the specified timestamp. Use ISO 8601 format for the timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "pagination_page_number", + "type": "integer", + "required": false, + "description": "The specific page number to retrieve when fetching contacts. Each page returns up to 100 contacts.", + "enum": null, + "inferrable": true + }, + { + "name": "records_per_page", + "type": "integer", + "required": false, + "description": "Number of contact records to retrieve per page.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_summary_only_contacts", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve only lightweight contact fields, excluding computation-heavy data for faster API responses.", + "enum": null, + "inferrable": true + }, + { + "name": "search_term", + "type": "string", + "required": false, + "description": "A case-insensitive search term for filtering contacts by Name, FirstName, LastName, ContactNumber, or EmailAddress.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Specifies the sorting order for contacts based on a specified element, such as name or date.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.contacts.read", "accounting.contacts"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getContacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.FetchAllXeroContacts", + "parameters": { + "tenant_identifier": { + "value": "unique-tenant-123", + "type": "string", + "required": true + }, + "contact_ids": { + "value": ["12345", "67890"], + "type": "array", + "required": false + }, + "filter_by_element": { + "value": "email", + "type": "string", + "required": false + }, + "include_archived_contacts": { + "value": true, + "type": "boolean", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "pagination_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "records_per_page": { + "value": 100, + "type": "integer", + "required": false + }, + "retrieve_summary_only_contacts": { + "value": false, + "type": "boolean", + "required": false + }, + "search_term": { + "value": "John", + "type": "string", + "required": false + }, + "sort_order": { + "value": "name", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchBankTransferAttachment", + "qualifiedName": "XeroApi.FetchBankTransferAttachment", + "fullyQualifiedName": "XeroApi.FetchBankTransferAttachment@2.0.0", + "description": "Fetch a specific bank transfer attachment by ID.\n\nUse this tool to retrieve a specific attachment related to a bank transfer using the unique attachment ID.", + "parameters": [ + { + "name": "attachment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the attachment object that you want to retrieve from a specific bank transfer.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment to retrieve, e.g., image/jpg, application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "bank_transfer_unique_id", + "type": "string", + "required": true, + "description": "Xero-generated unique identifier for a bank transfer. It is required to locate the specific transfer for the attachment.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The Xero identifier for the tenant you want to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBankTransferAttachmentById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.FetchBankTransferAttachment", + "parameters": { + "attachment_id": { + "value": "1234567890abc", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "bank_transfer_unique_id": { + "value": "XYZ-2023-10-01-001", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchCreditNoteHistory", + "qualifiedName": "XeroApi.FetchCreditNoteHistory", + "fullyQualifiedName": "XeroApi.FetchCreditNoteHistory@2.0.0", + "description": "Retrieve the history of a specific credit note.\n\nUse this tool to access and retrieve history records of a specific credit note by providing the CreditNoteID. This can be helpful for auditing or tracking changes made to a credit note over time.", + "parameters": [ + { + "name": "credit_note_id", + "type": "string", + "required": true, + "description": "Unique identifier for the credit note whose history you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. Required to specify which tenant's credit note history to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "String to safely retry requests without creating duplicates. Max 128 characters.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createCreditNoteHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.FetchCreditNoteHistory", + "parameters": { + "credit_note_id": { + "value": "CN-123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TENANT-987654", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique-key-abcdef123456", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchInvoicePayments", + "qualifiedName": "XeroApi.FetchInvoicePayments", + "fullyQualifiedName": "XeroApi.FetchInvoicePayments@2.0.0", + "description": "Retrieve payments for invoices and credit notes in Xero.\n\nUse this tool to fetch a list of payments associated with invoices and credit notes from Xero. It is useful for obtaining payment records for financial analysis or reconciliation purposes.", + "parameters": [ + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. This is required to access the specific tenant's data.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_condition", + "type": "string", + "required": false, + "description": "Specify the filter condition for retrieving payments, based on any element.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Only records created or modified since this timestamp will be retrieved. Use ISO 8601 format (e.g., 'YYYY-MM-DDTHH:MM:SSZ').", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "string", + "required": false, + "description": "Specify the order of payments by any element, such as date or amount.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve, starting from 1. Up to 100 payments are returned per page.", + "enum": null, + "inferrable": true + }, + { + "name": "records_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of records to retrieve per page, up to a maximum of 100.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPayments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.FetchInvoicePayments", + "parameters": { + "xero_tenant_identifier": { + "value": "abc123456", + "type": "string", + "required": true + }, + "filter_condition": { + "value": "status:PAID", + "type": "string", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "order_by": { + "value": "date", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "records_per_page": { + "value": 50, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "FetchPurchaseOrderAttachment", + "qualifiedName": "XeroApi.FetchPurchaseOrderAttachment", + "fullyQualifiedName": "XeroApi.FetchPurchaseOrderAttachment@2.0.0", + "description": "Retrieve a specific attachment from a purchase order.\n\nUse this tool to obtain a specific attachment from a purchase order using the attachment's unique ID within the Xero platform.", + "parameters": [ + { + "name": "attachment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the attachment object to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file to retrieve, e.g., image/jpg, application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "purchase_order_id", + "type": "string", + "required": true, + "description": "Unique identifier for a Purchase Order to retrieve a specific attachment.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. This is required to specify which organization the request is for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPurchaseOrderAttachmentById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.FetchPurchaseOrderAttachment", + "parameters": { + "attachment_id": { + "value": "att_123456", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "purchase_order_id": { + "value": "po_78910", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant_abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAgedPayablesReportByContact", + "qualifiedName": "XeroApi.GetAgedPayablesReportByContact", + "fullyQualifiedName": "XeroApi.GetAgedPayablesReportByContact@2.0.0", + "description": "Retrieve aged payables report by contact.\n\nUse this tool to get a report on aged payables categorized by contact. It provides insights into outstanding payables over time.", + "parameters": [ + { + "name": "contact_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the contact to retrieve the aged payables report.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. Required to specify which tenant's data is being accessed.", + "enum": null, + "inferrable": true + }, + { + "name": "report_date", + "type": "string", + "required": false, + "description": "The specific date for the Aged Payables By Contact report in YYYY-MM-DD format.", + "enum": null, + "inferrable": true + }, + { + "name": "report_end_date", + "type": "string", + "required": false, + "description": "Filter the report by specifying the end date, formatted as YYYY-MM-DD (e.g., 2021-02-28).", + "enum": null, + "inferrable": true + }, + { + "name": "report_from_date", + "type": "string", + "required": false, + "description": "Specify the start date for filtering the report, in YYYY-MM-DD format (e.g. 2021-02-01).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.reports.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportAgedPayablesByContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetAgedPayablesReportByContact", + "parameters": { + "contact_identifier": { + "value": "c123456", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "t987654", + "type": "string", + "required": true + }, + "report_date": { + "value": "2023-09-30", + "type": "string", + "required": false + }, + "report_end_date": { + "value": "2023-10-15", + "type": "string", + "required": false + }, + "report_from_date": { + "value": "2023-10-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetAgedReceivablesReportByContact", + "qualifiedName": "XeroApi.GetAgedReceivablesReportByContact", + "fullyQualifiedName": "XeroApi.GetAgedReceivablesReportByContact@2.0.0", + "description": "Retrieve aged receivables report by contact.\n\nUse this tool to get a detailed report of aged receivables, organized by contact, which helps in assessing outstanding debts for each contact.", + "parameters": [ + { + "name": "contact_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for a Contact to retrieve their aged receivables report.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Unique Xero identifier for the Tenant. Required to specify which tenant's data to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_to_date", + "type": "string", + "required": false, + "description": "Specify the end date for filtering the aged receivables report, e.g., '2021-02-28'.", + "enum": null, + "inferrable": true + }, + { + "name": "report_date", + "type": "string", + "required": false, + "description": "The specific date for which the aged receivables report by contact is generated.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_filter", + "type": "string", + "required": false, + "description": "Filter the report starting from this date (YYYY-MM-DD).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.reports.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportAgedReceivablesByContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetAgedReceivablesReportByContact", + "parameters": { + "contact_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant_7890", + "type": "string", + "required": true + }, + "filter_by_to_date": { + "value": "2023-09-30", + "type": "string", + "required": false + }, + "report_date": { + "value": "2023-09-15", + "type": "string", + "required": false + }, + "start_date_filter": { + "value": "2023-01-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBalanceSheetReport", + "qualifiedName": "XeroApi.GetBalanceSheetReport", + "fullyQualifiedName": "XeroApi.GetBalanceSheetReport@2.0.0", + "description": "Retrieve the balance sheet report from Xero.\n\nFetches the balance sheet report, detailing financial positions. Useful for obtaining up-to-date financial summaries.", + "parameters": [ + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. Used to specify which organization's data to retrieve in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "balance_sheet_tracking_option_id_1", + "type": "string", + "required": false, + "description": "The first tracking option ID for generating the Balance Sheet report in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "comparison_timeframe", + "type": "string", + "required": false, + "description": "The period size for comparison, e.g., MONTH, QUARTER, or YEAR.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_periods", + "type": "integer", + "required": false, + "description": "The number of periods to include in the Balance Sheet report.", + "enum": null, + "inferrable": true + }, + { + "name": "report_date", + "type": "string", + "required": false, + "description": "The specific date for which to retrieve the Balance Sheet report. Format as YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "return_cash_basis", + "type": "boolean", + "required": false, + "description": "Set to True to return the Balance Sheet report using a cash basis.", + "enum": null, + "inferrable": true + }, + { + "name": "tracking_option_id_2", + "type": "string", + "required": false, + "description": "The tracking option ID for secondary categorization in the Balance Sheet report. This allows for filtering or segmentation based on a second tracking category within Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "use_standard_layout", + "type": "boolean", + "required": false, + "description": "Set to true to use the standard layout for the Balance Sheet report in Xero.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.reports.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportBalanceSheet'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetBalanceSheetReport", + "parameters": { + "xero_tenant_identifier": { + "value": "ABC123456", + "type": "string", + "required": true + }, + "balance_sheet_tracking_option_id_1": { + "value": "TRACK001", + "type": "string", + "required": false + }, + "comparison_timeframe": { + "value": "YEAR", + "type": "string", + "required": false + }, + "number_of_periods": { + "value": 3, + "type": "integer", + "required": false + }, + "report_date": { + "value": "2023-09-30", + "type": "string", + "required": false + }, + "return_cash_basis": { + "value": true, + "type": "boolean", + "required": false + }, + "tracking_option_id_2": { + "value": "TRACK002", + "type": "string", + "required": false + }, + "use_standard_layout": { + "value": false, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBankSummaryReport", + "qualifiedName": "XeroApi.GetBankSummaryReport", + "fullyQualifiedName": "XeroApi.GetBankSummaryReport@2.0.0", + "description": "Retrieve bank summary reports from Xero.\n\nThis tool fetches a bank summary report, providing a detailed overview of bank transactions and balances. Use it when you need to review financial summaries from Xero.", + "parameters": [ + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Xero tenant. Required for accessing the relevant account data.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date_filter", + "type": "string", + "required": false, + "description": "Filter the report by the end date, formatted as YYYY-MM-DD, e.g., 2021-02-28.", + "enum": null, + "inferrable": true + }, + { + "name": "start_date_filter", + "type": "string", + "required": false, + "description": "Filter the report by the starting date, formatted as YYYY-MM-DD. For example, 2021-02-01.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.reports.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportBankSummary'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetBankSummaryReport", + "parameters": { + "xero_tenant_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "end_date_filter": { + "value": "2023-09-30", + "type": "string", + "required": false + }, + "start_date_filter": { + "value": "2023-01-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBankTransactionAttachment", + "qualifiedName": "XeroApi.GetBankTransactionAttachment", + "fullyQualifiedName": "XeroApi.GetBankTransactionAttachment@2.0.0", + "description": "Retrieve an attachment from a bank transaction by filename.\n\nUse this tool to get a specific attachment from a bank transaction using the filename. Ideal for cases where attachments need to be reviewed or downloaded based on their association with bank transactions.", + "parameters": [ + { + "name": "attachment_filename", + "type": "string", + "required": true, + "description": "Name of the attachment to retrieve from the bank transaction.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file to retrieve, such as image/jpg or application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "bank_transaction_id", + "type": "string", + "required": true, + "description": "Xero generated unique identifier for a bank transaction. Required to retrieve the correct attachment.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant associated with the bank transaction.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBankTransactionAttachmentByFileName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetBankTransactionAttachment", + "parameters": { + "attachment_filename": { + "value": "invoice_january_2023.pdf", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "bank_transaction_id": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBankTransactionHistory", + "qualifiedName": "XeroApi.GetBankTransactionHistory", + "fullyQualifiedName": "XeroApi.GetBankTransactionHistory@2.0.0", + "description": "Retrieve history of a specific bank transaction by ID.\n\nThis tool fetches the historical details of a particular bank transaction using its unique ID. It should be called when users need to view past records or changes related to a specific transaction.", + "parameters": [ + { + "name": "bank_transaction_id", + "type": "string", + "required": true, + "description": "The unique identifier for a bank transaction generated by Xero. Use this ID to retrieve specific transaction history.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero unique identifier for the tenant. Required to access tenant-specific data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBankTransactionsHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetBankTransactionHistory", + "parameters": { + "bank_transaction_id": { + "value": "12345678", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "98765432", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBankTransferHistory", + "qualifiedName": "XeroApi.GetBankTransferHistory", + "fullyQualifiedName": "XeroApi.GetBankTransferHistory@2.0.0", + "description": "Retrieve specific bank transfer history by ID.\n\nThis tool is used to get the history of a specific bank transfer using its unique ID. It should be called when detailed transaction records or changes related to a particular bank transfer are needed.", + "parameters": [ + { + "name": "bank_transfer_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Xero bank transfer needed to retrieve its history.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. Required to specify which tenant's bank transfer history to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBankTransferHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetBankTransferHistory", + "parameters": { + "bank_transfer_id": { + "value": "BTR-12345", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "TEN-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBatchPaymentDetails", + "qualifiedName": "XeroApi.GetBatchPaymentDetails", + "fullyQualifiedName": "XeroApi.GetBatchPaymentDetails@2.0.0", + "description": "Retrieve details of a specific batch payment by ID.\n\nUse this tool to get information about a specific batch payment by providing its unique ID.", + "parameters": [ + { + "name": "batch_payment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the batch payment to retrieve details.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant, necessary for accessing tenant-specific data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBatchPayment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetBatchPaymentDetails", + "parameters": { + "batch_payment_id": { + "value": "BATCH12345", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TENANT67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBrandingThemes", + "qualifiedName": "XeroApi.GetBrandingThemes", + "fullyQualifiedName": "XeroApi.GetBrandingThemes@2.0.0", + "description": "Retrieve all branding themes from Xero.\n\nThis tool calls the Xero API to fetch all available branding themes. It should be used when needing a comprehensive list of branding themes for the account.", + "parameters": [ + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant to retrieve branding themes.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBrandingThemes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetBrandingThemes", + "parameters": { + "xero_tenant_id": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetBudgetSummaryReport", + "qualifiedName": "XeroApi.GetBudgetSummaryReport", + "fullyQualifiedName": "XeroApi.GetBudgetSummaryReport@2.0.0", + "description": "Retrieves the budget summary report from Xero.\n\nThis tool calls the Xero endpoint to obtain a detailed budget summary report. Use this when a financial summary of budget allocations is required.", + "parameters": [ + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant, required for authentication and data retrieval.", + "enum": null, + "inferrable": true + }, + { + "name": "comparison_timeframe", + "type": "integer", + "required": false, + "description": "Specify the period size for comparison: 1 for month, 3 for quarter, or 12 for year.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_periods_to_compare", + "type": "integer", + "required": false, + "description": "The number of periods for comparison, must be an integer between 1 and 12.", + "enum": null, + "inferrable": true + }, + { + "name": "report_date", + "type": "string", + "required": false, + "description": "The specific date for the budget summary report in YYYY-MM-DD format, e.g., 2018-03-31.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.reports.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportBudgetSummary'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetBudgetSummaryReport", + "parameters": { + "xero_tenant_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "comparison_timeframe": { + "value": 3, + "type": "integer", + "required": false + }, + "number_of_periods_to_compare": { + "value": 6, + "type": "integer", + "required": false + }, + "report_date": { + "value": "2023-09-30", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCisSettings", + "qualifiedName": "XeroApi.GetCisSettings", + "fullyQualifiedName": "XeroApi.GetCisSettings@2.0.0", + "description": "Retrieve CIS settings for a Xero organisation.\n\nUse this tool to get the Construction Industry Scheme (CIS) settings for a specific organisation in Xero. Useful for managing or reviewing CIS compliance within the organisation.", + "parameters": [ + { + "name": "organisation_id", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the organisation to retrieve CIS settings for.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. Required to specify which tenant's CIS settings to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOrganisationCISSettings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetCisSettings", + "parameters": { + "organisation_id": { + "value": "12345678-1234-1234-1234-123456789abc", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant-987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetContactAttachment", + "qualifiedName": "XeroApi.GetContactAttachment", + "fullyQualifiedName": "XeroApi.GetContactAttachment@2.0.0", + "description": "Retrieve a contact's attachment by file name.\n\nFetches a specific attachment associated with a contact using the file name in Xero. Use when you need to access a particular contact's attachment.", + "parameters": [ + { + "name": "attachment_file_name", + "type": "string", + "required": true, + "description": "Specify the name of the attachment to retrieve from the contact.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file, such as image/jpg or application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for a contact in Xero to retrieve its specific attachment.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. This is required to specify which tenant's data should be accessed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getContactAttachmentByFileName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetContactAttachment", + "parameters": { + "attachment_file_name": { + "value": "invoice_1234.pdf", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "contact_identifier": { + "value": "c1234567", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant_9876", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetContactAttachments", + "qualifiedName": "XeroApi.GetContactAttachments", + "fullyQualifiedName": "XeroApi.GetContactAttachments@2.0.0", + "description": "Retrieve attachments for a Xero contact.\n\nThis tool retrieves all attachments associated with a specific contact within a Xero organisation. Call this tool when you need to access files linked to a contact in Xero.", + "parameters": [ + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "Unique identifier for a contact in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero tenant identifier for the organisation.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getContactAttachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetContactAttachments", + "parameters": { + "contact_id": { + "value": "12345678-abcd-efgh-ijkl-1234567890ab", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "98765432-wxyz-uvwx-tuvw-0987654321yx", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetContactCisSettings", + "qualifiedName": "XeroApi.GetContactCisSettings", + "fullyQualifiedName": "XeroApi.GetContactCisSettings@2.0.0", + "description": "Retrieve CIS settings for a Xero contact.\n\nUse this tool to obtain the CIS (Construction Industry Scheme) settings for a specific contact within a Xero organization. This is useful for businesses managing construction-related compliance and financial data.", + "parameters": [ + { + "name": "contact_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for a specific contact in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. Required for accessing the correct organization within Xero.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getContactCISSettings'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetContactCisSettings", + "parameters": { + "contact_identifier": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "67890xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetContactHistory", + "qualifiedName": "XeroApi.GetContactHistory", + "fullyQualifiedName": "XeroApi.GetContactHistory@2.0.0", + "description": "Retrieve history records for a specific contact.\n\nUse this tool to obtain historical interaction records for a specific contact, which can provide insights into past communications and actions.", + "parameters": [ + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "Unique identifier for a contact to retrieve their history records.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant. Required to access specific tenant data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.contacts.read", "accounting.contacts"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getContactHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetContactHistory", + "parameters": { + "contact_id": { + "value": "123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "abc-tenant-123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCreditNoteAttachment", + "qualifiedName": "XeroApi.GetCreditNoteAttachment", + "fullyQualifiedName": "XeroApi.GetCreditNoteAttachment@2.0.0", + "description": "Retrieve specific attachment from a credit note by ID.\n\nUse this tool to get an attachment from a credit note using the unique attachment ID.", + "parameters": [ + { + "name": "attachment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the attachment object to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file to retrieve, such as image/jpg or application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "credit_note_id", + "type": "string", + "required": true, + "description": "Unique identifier for the credit note you want to retrieve an attachment from.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. It's required to specify which organization to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCreditNoteAttachmentById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetCreditNoteAttachment", + "parameters": { + "attachment_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "credit_note_id": { + "value": "cn7890", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant_567890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCreditNoteAttachments", + "qualifiedName": "XeroApi.GetCreditNoteAttachments", + "fullyQualifiedName": "XeroApi.GetCreditNoteAttachments@2.0.0", + "description": "Fetch attachments for a specific credit note from Xero.\n\nUse this tool to retrieve attachments associated with a specific credit note in Xero. Call this tool when you need details or files attached to a credit note.", + "parameters": [ + { + "name": "credit_note_id", + "type": "string", + "required": true, + "description": "Unique identifier for a specific Credit Note in Xero to fetch attachments.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. Required to specify which tenant's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCreditNoteAttachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetCreditNoteAttachments", + "parameters": { + "credit_note_id": { + "value": "CN-123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant-7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCreditNoteHistory", + "qualifiedName": "XeroApi.GetCreditNoteHistory", + "fullyQualifiedName": "XeroApi.GetCreditNoteHistory@2.0.0", + "description": "Retrieve history records of a specific credit note.\n\nUse this tool to obtain detailed history records for a specific credit note by providing its ID. It helps in tracking changes and updates made to the credit note over time.", + "parameters": [ + { + "name": "credit_note_id", + "type": "string", + "required": true, + "description": "Unique identifier for a specific credit note. Required to retrieve its history records.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for a Xero tenant. Required to access tenant-specific data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCreditNoteHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetCreditNoteHistory", + "parameters": { + "credit_note_id": { + "value": "CN123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TENANT7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCreditNotePdf", + "qualifiedName": "XeroApi.GetCreditNotePdf", + "fullyQualifiedName": "XeroApi.GetCreditNotePdf@2.0.0", + "description": "Retrieve a credit note as a PDF file.\n\nUse this tool to fetch a specific credit note in PDF format using its ID.", + "parameters": [ + { + "name": "credit_note_id", + "type": "string", + "required": true, + "description": "Unique identifier for the credit note to retrieve as a PDF.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant to retrieve the specific credit note PDF.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCreditNoteAsPdf'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetCreditNotePdf", + "parameters": { + "credit_note_id": { + "value": "CN-123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "TEN-789012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetCreditNotes", + "qualifiedName": "XeroApi.GetCreditNotes", + "fullyQualifiedName": "XeroApi.GetCreditNotes@2.0.0", + "description": "Retrieve credit notes from the Xero service.\n\nUse this tool to obtain credit notes from Xero. Ideal for financial checks or reconciliations requiring credit note information.", + "parameters": [ + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant. Required to specify which tenant's credit notes to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_element", + "type": "string", + "required": false, + "description": "A string to filter credit notes by specific criteria using any element.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Only retrieve records created or modified after this timestamp (in ISO 8601 format).", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_records_per_page", + "type": "integer", + "required": false, + "description": "Defines the number of credit notes to retrieve per page from the Xero service. This helps control the size of each result set.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve. Each page returns up to 100 credit notes with line items.", + "enum": null, + "inferrable": true + }, + { + "name": "sort_credit_notes", + "type": "string", + "required": false, + "description": "Specifies the order to retrieve credit notes, e.g., by date or amount.", + "enum": null, + "inferrable": true + }, + { + "name": "unit_decimal_places", + "type": "integer", + "required": false, + "description": "Specify the number of decimal places for unit amounts. For example, use 4 for four decimal places.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCreditNotes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetCreditNotes", + "parameters": { + "tenant_identifier": { + "value": "12345678-abcd-efgh-ijkl-1234567890mn", + "type": "string", + "required": true + }, + "filter_by_element": { + "value": "status:approved", + "type": "string", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "number_of_records_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "sort_credit_notes": { + "value": "date", + "type": "string", + "required": false + }, + "unit_decimal_places": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetDraftExpenseReceipts", + "qualifiedName": "XeroApi.GetDraftExpenseReceipts", + "fullyQualifiedName": "XeroApi.GetDraftExpenseReceipts@2.0.0", + "description": "Retrieve draft expense claim receipts from Xero.\n\nThis tool retrieves draft expense receipts for any user from Xero. It should be called when you need to access draft expense claims.", + "parameters": [ + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for a Xero tenant. Used to specify which tenant's data to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_condition", + "type": "string", + "required": false, + "description": "A string to filter draft expense receipts based on specified criteria.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "A timestamp to filter records updated or created since this date. Format should be in ISO 8601, e.g., '2023-10-10T00:00:00Z'.", + "enum": null, + "inferrable": true + }, + { + "name": "order_receipts_by", + "type": "string", + "required": false, + "description": "Specify the attribute by which to order the receipts. For example, by date or amount.", + "enum": null, + "inferrable": true + }, + { + "name": "unit_decimal_places", + "type": "integer", + "required": false, + "description": "Specifies the number of decimal places for unit amounts. For example, set to 4 for four decimal places.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReceipts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetDraftExpenseReceipts", + "parameters": { + "xero_tenant_id": { + "value": "12345678-abcd-efgh-ijkl-123456789012", + "type": "string", + "required": true + }, + "filter_condition": { + "value": "status:pending", + "type": "string", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-09-30T00:00:00Z", + "type": "string", + "required": false + }, + "order_receipts_by": { + "value": "date", + "type": "string", + "required": false + }, + "unit_decimal_places": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetExpenseReceiptAttachment", + "qualifiedName": "XeroApi.GetExpenseReceiptAttachment", + "fullyQualifiedName": "XeroApi.GetExpenseReceiptAttachment@2.0.0", + "description": "Retrieve an attachment from a receipt by file name.\n\nThis tool retrieves a specific attachment from an expense claim receipt using the file name. It should be called when you need to access a specific attachment associated with a receipt in the Xero platform.", + "parameters": [ + { + "name": "attachment_file_name", + "type": "string", + "required": true, + "description": "The name of the attachment to retrieve from the expense claim receipt.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file, such as image/jpg or application/pdf, that you are retrieving from the receipt.", + "enum": null, + "inferrable": true + }, + { + "name": "receipt_id", + "type": "string", + "required": true, + "description": "The unique identifier for a specific expense receipt. This is used to locate the correct receipt attachment.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. Required to specify the organization context in Xero from which to retrieve the attachment.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReceiptAttachmentByFileName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetExpenseReceiptAttachment", + "parameters": { + "attachment_file_name": { + "value": "receipt_12345.pdf", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "receipt_id": { + "value": "exp-67890", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant-abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetFinancialJournals", + "qualifiedName": "XeroApi.GetFinancialJournals", + "fullyQualifiedName": "XeroApi.GetFinancialJournals@2.0.0", + "description": "Retrieve financial journal entries from Xero.\n\nUse this tool to access financial journal entries recorded in Xero. It should be called when detailed accounting journal information is needed for financial analysis or record-keeping.", + "parameters": [ + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant. Required to specify which tenant's journals are retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "journal_number_offset", + "type": "integer", + "required": false, + "description": "Specify the journal number offset. Journals with a number greater than this will be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Return records created or modified since this timestamp. Use a string format like 'YYYY-MM-DDTHH:MM:SSZ'.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_cash_basis_journals", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve journals on a cash basis. Defaults to false for accrual basis.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.journals.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getJournals'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetFinancialJournals", + "parameters": { + "tenant_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "journal_number_offset": { + "value": 5, + "type": "integer", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "retrieve_cash_basis_journals": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetInvoiceAttachment", + "qualifiedName": "XeroApi.GetInvoiceAttachment", + "fullyQualifiedName": "XeroApi.GetInvoiceAttachment@2.0.0", + "description": "Retrieve an attachment from an invoice by filename.\n\nUse this tool to obtain a specific attachment from an invoice or purchase bill by specifying the filename.", + "parameters": [ + { + "name": "attachment_file_name", + "type": "string", + "required": true, + "description": "Specify the exact name of the attachment to retrieve from the invoice or purchase bill.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file being retrieved, such as image/jpg or application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "invoice_id", + "type": "string", + "required": true, + "description": "Unique identifier for the invoice from which to retrieve the attachment.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant to specify which organization's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getInvoiceAttachmentByFileName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetInvoiceAttachment", + "parameters": { + "attachment_file_name": { + "value": "invoice_receipt.pdf", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "invoice_id": { + "value": "INV-123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "TEN-78910", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetInvoiceDetails", + "qualifiedName": "XeroApi.GetInvoiceDetails", + "fullyQualifiedName": "XeroApi.GetInvoiceDetails@2.0.0", + "description": "Retrieve a specific invoice using its unique ID.\n\nUse this tool to get detailed information about a specific sales invoice or purchase bill by providing its unique invoice ID. This can be helpful when checking invoice details in the Xero accounting system.", + "parameters": [ + { + "name": "invoice_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the invoice to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. Used to specify which tenant's invoice is retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "unit_decimal_places", + "type": "integer", + "required": false, + "description": "Specify the number of decimal places to use for unit amounts, e.g., 4 for four decimal places.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getInvoice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetInvoiceDetails", + "parameters": { + "invoice_identifier": { + "value": "INV-123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TENANT-78910", + "type": "string", + "required": true + }, + "unit_decimal_places": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetInvoiceReminderSettings", + "qualifiedName": "XeroApi.GetInvoiceReminderSettings", + "fullyQualifiedName": "XeroApi.GetInvoiceReminderSettings@2.0.0", + "description": "Retrieve invoice reminder settings from Xero.\n\nThis tool retrieves the current settings for invoice reminders from Xero. It should be called when you need to check or manage how invoice reminders are configured.", + "parameters": [ + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant. This is required to access specific tenant data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getInvoiceReminders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetInvoiceReminderSettings", + "parameters": { + "xero_tenant_id": { + "value": "12345678-abcd-efgh-ijkl-1234567890ab", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetItemHistory", + "qualifiedName": "XeroApi.GetItemHistory", + "fullyQualifiedName": "XeroApi.GetItemHistory@2.0.0", + "description": "Retrieve history for a specific item from Xero.\n\nThis tool retrieves the historical details of a specific item using its ItemID. Use it to access the change history or modifications made to an item within the Xero platform.", + "parameters": [ + { + "name": "item_id", + "type": "string", + "required": true, + "description": "Unique identifier for the item whose history you want to retrieve in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Provide the unique Xero identifier associated with the Tenant to access its data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getItemHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetItemHistory", + "parameters": { + "item_id": { + "value": "abc123XYZ", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetItems", + "qualifiedName": "XeroApi.GetItems", + "fullyQualifiedName": "XeroApi.GetItems@2.0.0", + "description": "Retrieve items from Xero.\n\nThis tool fetches a list of items from the Xero service, typically used for inventory or sales purposes.", + "parameters": [ + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for a Xero tenant. Required to specify which tenant's data to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_criteria", + "type": "string", + "required": false, + "description": "Filter items by specific criteria using any element such as field names or conditions.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Fetch records created or modified since the provided timestamp (e.g., '2023-01-01T00:00:00Z').", + "enum": null, + "inferrable": true + }, + { + "name": "order_by_element", + "type": "string", + "required": false, + "description": "Specify the sorting order of items by any element, such as name or price.", + "enum": null, + "inferrable": true + }, + { + "name": "unit_decimal_places", + "type": "integer", + "required": false, + "description": "Defines the number of decimal places for unit amounts, e.g., 4 for four decimal places.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getItems'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetItems", + "parameters": { + "xero_tenant_id": { + "value": "12345678-1234-1234-1234-123456789abc", + "type": "string", + "required": true + }, + "filter_criteria": { + "value": "status:active", + "type": "string", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "order_by_element": { + "value": "name", + "type": "string", + "required": false + }, + "unit_decimal_places": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetJournalAttachmentByFilename", + "qualifiedName": "XeroApi.GetJournalAttachmentByFilename", + "fullyQualifiedName": "XeroApi.GetJournalAttachmentByFilename@2.0.0", + "description": "Retrieve a manual journal attachment by file name.\n\nUse this tool to get a specific attachment from a manual journal using its file name. It requires the manual journal ID and the file name to retrieve the attachment data.", + "parameters": [ + { + "name": "attachment_file_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file, such as image/jpeg or application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_file_name", + "type": "string", + "required": true, + "description": "The name of the attachment file to retrieve from the manual journal.", + "enum": null, + "inferrable": true + }, + { + "name": "manual_journal_id", + "type": "string", + "required": true, + "description": "Unique identifier for the manual journal. Required to retrieve the specific attachment.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant, used to specify the particular organization's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getManualJournalAttachmentByFileName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetJournalAttachmentByFilename", + "parameters": { + "attachment_file_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "attachment_file_name": { + "value": "monthly_report.pdf", + "type": "string", + "required": true + }, + "manual_journal_id": { + "value": "12345678-90ab-cdef-ghij-klmnopqrstuv", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant-9876543210", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetLinkedTransaction", + "qualifiedName": "XeroApi.GetLinkedTransaction", + "fullyQualifiedName": "XeroApi.GetLinkedTransaction@2.0.0", + "description": "Retrieve specific linked transaction details by ID.\n\nUse this tool to get detailed information about a specific linked transaction, such as billable expenses, using a unique transaction ID.", + "parameters": [ + { + "name": "linked_transaction_id", + "type": "string", + "required": true, + "description": "Unique identifier for the linked transaction to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_id", + "type": "string", + "required": true, + "description": "Xero tenant identifier for accessing the correct organization.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getLinkedTransaction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetLinkedTransaction", + "parameters": { + "linked_transaction_id": { + "value": "abc123def456", + "type": "string", + "required": true + }, + "tenant_id": { + "value": "xyz789ghi012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetManualJournalHistory", + "qualifiedName": "XeroApi.GetManualJournalHistory", + "fullyQualifiedName": "XeroApi.GetManualJournalHistory@2.0.0", + "description": "Retrieve history for a specific manual journal.\n\nThis tool fetches the historical details related to a specific manual journal by its ID from Xero, providing insights into past changes and actions.", + "parameters": [ + { + "name": "manual_journal_id", + "type": "string", + "required": true, + "description": "Unique identifier for the manual journal. Used to retrieve its historical details from Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for a specific tenant. This is required to identify which tenant's data to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getManualJournalsHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetManualJournalHistory", + "parameters": { + "manual_journal_id": { + "value": "MJ123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TENANT987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetOverpaymentHistory", + "qualifiedName": "XeroApi.GetOverpaymentHistory", + "fullyQualifiedName": "XeroApi.GetOverpaymentHistory@2.0.0", + "description": "Retrieve history records for a specific overpayment in Xero.\n\nUse this tool to obtain detailed history records related to a specific overpayment, identified by the Overpayment ID, within the Xero platform.", + "parameters": [ + { + "name": "overpayment_id", + "type": "string", + "required": true, + "description": "Unique identifier for a specific overpayment in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Unique identifier for the tenant in Xero. Used to specify which tenant's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOverpaymentHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetOverpaymentHistory", + "parameters": { + "overpayment_id": { + "value": "12345ABCD", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "67890EFGH", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPaymentServicesForBrandingTheme", + "qualifiedName": "XeroApi.GetPaymentServicesForBrandingTheme", + "fullyQualifiedName": "XeroApi.GetPaymentServicesForBrandingTheme@2.0.0", + "description": "Retrieve payment services for a specific branding theme.\n\nThis tool retrieves the payment services linked to a given branding theme by its ID. Call this tool when you need to access payment service information tied to particular branding configurations.", + "parameters": [ + { + "name": "branding_theme_id", + "type": "string", + "required": true, + "description": "Unique identifier for a Branding Theme to retrieve associated payment services.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. This unique ID is required to specify which tenant's data is being accessed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["paymentservices"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBrandingThemePaymentServices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetPaymentServicesForBrandingTheme", + "parameters": { + "branding_theme_id": { + "value": "theme_123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant_789012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPrepaymentDetails", + "qualifiedName": "XeroApi.GetPrepaymentDetails", + "fullyQualifiedName": "XeroApi.GetPrepaymentDetails@2.0.0", + "description": "Retrieve details of a specified prepayment from Xero.\n\nUse this tool to obtain information on a specific prepayment by providing the PrepaymentID. Ideal for checking prepayment details within the Xero accounting system.", + "parameters": [ + { + "name": "prepayment_id", + "type": "string", + "required": true, + "description": "The unique identifier for the prepayment you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant. Required to retrieve specific prepayment data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPrepayment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetPrepaymentDetails", + "parameters": { + "prepayment_id": { + "value": "PREPAY-123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TENANT-789012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPrepaymentHistory", + "qualifiedName": "XeroApi.GetPrepaymentHistory", + "fullyQualifiedName": "XeroApi.GetPrepaymentHistory@2.0.0", + "description": "Retrieve history for a specific prepayment.\n\nUse this tool to obtain the historical records associated with a specific prepayment in Xero.", + "parameters": [ + { + "name": "prepayment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the prepayment to retrieve its history.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Xero tenant, required to access its data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPrepaymentHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetPrepaymentHistory", + "parameters": { + "prepayment_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant-67890xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetProfitAndLossReport", + "qualifiedName": "XeroApi.GetProfitAndLossReport", + "fullyQualifiedName": "XeroApi.GetProfitAndLossReport@2.0.0", + "description": "Retrieve profit and loss report from Xero.\n\nCall this tool to obtain detailed profit and loss reports for financial analysis.", + "parameters": [ + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The Xero identifier for the tenant. Required to specify which tenant's data to access.", + "enum": null, + "inferrable": true + }, + { + "name": "comparison_timeframe", + "type": "string", + "required": false, + "description": "The period size to compare to for the report. Options are MONTH, QUARTER, or YEAR.", + "enum": null, + "inferrable": true + }, + { + "name": "end_date", + "type": "string", + "required": false, + "description": "Filter by the end date of the report in YYYY-MM-DD format, e.g., 2021-02-28.", + "enum": null, + "inferrable": true + }, + { + "name": "from_date", + "type": "string", + "required": false, + "description": "Filter the report by the starting date in YYYY-MM-DD format, e.g., 2021-02-01.", + "enum": null, + "inferrable": true + }, + { + "name": "number_of_comparison_periods", + "type": "integer", + "required": false, + "description": "The number of periods to compare, must be an integer between 1 and 12.", + "enum": null, + "inferrable": true + }, + { + "name": "return_cash_basis_only", + "type": "boolean", + "required": false, + "description": "Specify true to return the Profit and Loss report on a cash only basis.", + "enum": null, + "inferrable": true + }, + { + "name": "return_standard_layout", + "type": "boolean", + "required": false, + "description": "Set to true to return the Profit and Loss report in the standard layout.", + "enum": null, + "inferrable": true + }, + { + "name": "secondary_tracking_category_id", + "type": "string", + "required": false, + "description": "The ID of the second tracking category for the Profit and Loss report.", + "enum": null, + "inferrable": true + }, + { + "name": "tracking_category_id", + "type": "string", + "required": false, + "description": "The first tracking category ID for the Profit and Loss report filter. Expect a string representing the tracking category identifier.", + "enum": null, + "inferrable": true + }, + { + "name": "tracking_option_1_id", + "type": "string", + "required": false, + "description": "The identifier for the first tracking option in the Profit and Loss report.", + "enum": null, + "inferrable": true + }, + { + "name": "tracking_option_id_2", + "type": "string", + "required": false, + "description": "The second tracking option identifier for filtering the Profit and Loss report.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.reports.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportProfitAndLoss'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetProfitAndLossReport", + "parameters": { + "tenant_identifier": { + "value": "12345678", + "type": "string", + "required": true + }, + "comparison_timeframe": { + "value": "MONTH", + "type": "string", + "required": false + }, + "end_date": { + "value": "2023-09-30", + "type": "string", + "required": false + }, + "from_date": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "number_of_comparison_periods": { + "value": 6, + "type": "integer", + "required": false + }, + "return_cash_basis_only": { + "value": true, + "type": "boolean", + "required": false + }, + "return_standard_layout": { + "value": false, + "type": "boolean", + "required": false + }, + "secondary_tracking_category_id": { + "value": "abc123", + "type": "string", + "required": false + }, + "tracking_category_id": { + "value": "xyz789", + "type": "string", + "required": false + }, + "tracking_option_1_id": { + "value": "option1", + "type": "string", + "required": false + }, + "tracking_option_id_2": { + "value": "option2", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetPurchaseOrderPdf", + "qualifiedName": "XeroApi.GetPurchaseOrderPdf", + "fullyQualifiedName": "XeroApi.GetPurchaseOrderPdf@2.0.0", + "description": "Retrieve a purchase order as a PDF using its ID.\n\nUse this tool to obtain a specific purchase order in PDF format by providing its unique ID. Useful for accessing purchase order details in a document format.", + "parameters": [ + { + "name": "purchase_order_id", + "type": "string", + "required": true, + "description": "Unique identifier for a purchase order to retrieve it as a PDF.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The Xero identifier for the Tenant. Required to specify which tenant's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPurchaseOrderAsPdf'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetPurchaseOrderPdf", + "parameters": { + "purchase_order_id": { + "value": "PO-123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant-789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetQuoteAttachment", + "qualifiedName": "XeroApi.GetQuoteAttachment", + "fullyQualifiedName": "XeroApi.GetQuoteAttachment@2.0.0", + "description": "Retrieve a specific attachment from a quote by ID.\n\nUse this tool to retrieve a specific attachment from a quote by providing the unique Quote ID and Attachment ID.", + "parameters": [ + { + "name": "attachment_content_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file to retrieve, such as image/jpeg or application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the attachment object you wish to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "quote_id", + "type": "string", + "required": true, + "description": "Unique identifier for a quote. Used to specify which quote the attachment belongs to.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant required to access the attachment.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getQuoteAttachmentById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetQuoteAttachment", + "parameters": { + "attachment_content_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "attachment_id": { + "value": "att_123456789", + "type": "string", + "required": true + }, + "quote_id": { + "value": "quote_987654321", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant_abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetReceiptAttachments", + "qualifiedName": "XeroApi.GetReceiptAttachments", + "fullyQualifiedName": "XeroApi.GetReceiptAttachments@2.0.0", + "description": "Retrieve attachments for a specific expense claim receipt.\n\nUse this tool to obtain all attachments related to a specific expense claim receipt by providing the receipt ID.", + "parameters": [ + { + "name": "receipt_id", + "type": "string", + "required": true, + "description": "Unique identifier for the expense claim receipt to retrieve attachments.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant. Required to access tenant-specific data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReceiptAttachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetReceiptAttachments", + "parameters": { + "receipt_id": { + "value": "abc12345", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant_67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepeatingInvoice", + "qualifiedName": "XeroApi.GetRepeatingInvoice", + "fullyQualifiedName": "XeroApi.GetRepeatingInvoice@2.0.0", + "description": "Retrieve a specific repeating invoice using its unique ID.\n\nUse this tool to retrieve detailed information about a specific repeating invoice by providing its unique ID.", + "parameters": [ + { + "name": "repeating_invoice_id", + "type": "string", + "required": true, + "description": "Unique identifier for the specific repeating invoice to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_id", + "type": "string", + "required": true, + "description": "Xero tenant identifier required to access a specific tenant's data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRepeatingInvoice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetRepeatingInvoice", + "parameters": { + "repeating_invoice_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "tenant_id": { + "value": "tenant-001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepeatingInvoiceHistory", + "qualifiedName": "XeroApi.GetRepeatingInvoiceHistory", + "fullyQualifiedName": "XeroApi.GetRepeatingInvoiceHistory@2.0.0", + "description": "Retrieve history record for a specific repeating invoice.\n\nUse this tool to access the historical details of a specified repeating invoice. Ideal for understanding past changes, updates, or notes associated with the invoice in Xero.", + "parameters": [ + { + "name": "repeating_invoice_id", + "type": "string", + "required": true, + "description": "Unique identifier for the specific repeating invoice to retrieve history for.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant associated with the repeating invoice.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRepeatingInvoiceHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetRepeatingInvoiceHistory", + "parameters": { + "repeating_invoice_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant-xyz-7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepeatingInvoices", + "qualifiedName": "XeroApi.GetRepeatingInvoices", + "fullyQualifiedName": "XeroApi.GetRepeatingInvoices@2.0.0", + "description": "Retrieve repeating invoices from Xero.\n\nUse this tool to get a list of repeating invoices from the Xero platform. It is helpful for managing and reviewing recurring billing information.", + "parameters": [ + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the tenant in Xero. Required to retrieve specific tenant data.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_element", + "type": "string", + "required": false, + "description": "Filter invoices using a specific element condition. Use Xero's query language for filtering expressions.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by_element", + "type": "string", + "required": false, + "description": "Specify the element to order the repeating invoices by. It accepts a string indicating the element to sort by.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRepeatingInvoices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetRepeatingInvoices", + "parameters": { + "tenant_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "filter_by_element": { + "value": "status=='ACTIVE'", + "type": "string", + "required": false + }, + "order_by_element": { + "value": "invoice_date", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTaxRateByTaxType", + "qualifiedName": "XeroApi.GetTaxRateByTaxType", + "fullyQualifiedName": "XeroApi.GetTaxRateByTaxType@2.0.0", + "description": "Retrieve a specific tax rate using a TaxType code.\n\nUse this tool to obtain a particular tax rate by providing a specific TaxType code. It is useful for retrieving tax rates in financial calculations or reports.", + "parameters": [ + { + "name": "tax_type_code", + "type": "string", + "required": true, + "description": "A valid TaxType code used to retrieve the specific tax rate.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. Required to specify which tenant's data is being accessed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTaxRateByTaxType'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetTaxRateByTaxType", + "parameters": { + "tax_type_code": { + "value": "GST", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant-12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTrackingCategories", + "qualifiedName": "XeroApi.GetTrackingCategories", + "fullyQualifiedName": "XeroApi.GetTrackingCategories@2.0.0", + "description": "Retrieve tracking categories and options from Xero.\n\nUse this tool to get tracking categories and their options from Xero. Useful for financial tracking and categorization tasks.", + "parameters": [ + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the Xero tenant. Required to specify the tenant from which tracking categories should be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_conditions", + "type": "string", + "required": false, + "description": "String to filter tracking categories by specific conditions.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_categories", + "type": "boolean", + "required": false, + "description": "Set to true to include categories and options with a status of ARCHIVED in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by_element", + "type": "string", + "required": false, + "description": "Specify the element to order the tracking categories and options by.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTrackingCategories'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetTrackingCategories", + "parameters": { + "xero_tenant_identifier": { + "value": "12345678-1234-1234-1234-123456789abc", + "type": "string", + "required": true + }, + "filter_conditions": { + "value": "active=true", + "type": "string", + "required": false + }, + "include_archived_categories": { + "value": false, + "type": "boolean", + "required": false + }, + "order_by_element": { + "value": "name", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTrackingCategory", + "qualifiedName": "XeroApi.GetTrackingCategory", + "fullyQualifiedName": "XeroApi.GetTrackingCategory@2.0.0", + "description": "Retrieve tracking category details using its unique ID.\n\nUse this tool to obtain specific details about a tracking category and its options by providing a unique tracking category ID.", + "parameters": [ + { + "name": "tracking_category_id", + "type": "string", + "required": true, + "description": "Unique identifier for the tracking category to retrieve details for.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "A string representing the Xero identifier for the tenant. Required to access tenant-specific data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTrackingCategory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetTrackingCategory", + "parameters": { + "tracking_category_id": { + "value": "12345-abcde-fghij-67890", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant-001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTrialBalanceReport", + "qualifiedName": "XeroApi.GetTrialBalanceReport", + "fullyQualifiedName": "XeroApi.GetTrialBalanceReport@2.0.0", + "description": "Fetches the trial balance report from Xero.\n\nUse this tool to retrieve the trial balance report, which provides detailed financial information.", + "parameters": [ + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant to retrieve the trial balance report for.", + "enum": null, + "inferrable": true + }, + { + "name": "report_date", + "type": "string", + "required": false, + "description": "The specific date for the Trial Balance report in YYYY-MM-DD format.", + "enum": null, + "inferrable": true + }, + { + "name": "return_cash_basis_only", + "type": "boolean", + "required": false, + "description": "Set to true to return the trial balance report on a cash-only basis, false for accrual.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.reports.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportTrialBalance'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetTrialBalanceReport", + "parameters": { + "tenant_identifier": { + "value": "12345678-1234-5678-1234-567812345678", + "type": "string", + "required": true + }, + "report_date": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "return_cash_basis_only": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetXeroContactByNumber", + "qualifiedName": "XeroApi.GetXeroContactByNumber", + "fullyQualifiedName": "XeroApi.GetXeroContactByNumber@2.0.0", + "description": "Retrieve a contact from Xero by contact number.\n\nThis tool retrieves details of a specific contact in a Xero organization using their contact number. It should be called when you need to access contact information by specifying the unique contact number.", + "parameters": [ + { + "name": "contact_number", + "type": "string", + "required": true, + "description": "The unique contact number to identify a Xero contact; max length 50 characters.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. It is required to specify which organization's data to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.contacts.read", "accounting.contacts"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getContactByContactNumber'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetXeroContactByNumber", + "parameters": { + "contact_number": { + "value": "12345ABC", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetXeroCurrencies", + "qualifiedName": "XeroApi.GetXeroCurrencies", + "fullyQualifiedName": "XeroApi.GetXeroCurrencies@2.0.0", + "description": "Retrieve currencies from your Xero organization.\n\nUse this tool to get a list of all currencies associated with your Xero organization. It is useful for financial tasks, reporting, or currency conversion needs.", + "parameters": [ + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. Required to access organization-specific data.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_criteria", + "type": "string", + "required": false, + "description": "A string to filter the currencies based on specific criteria, such as currency code or name.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "string", + "required": false, + "description": "Specify the element to order the currencies by. Accepts a string corresponding to an element in the currency data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCurrencies'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetXeroCurrencies", + "parameters": { + "xero_tenant_identifier": { + "value": "12345678-1234-1234-1234-123456789012", + "type": "string", + "required": true + }, + "filter_criteria": { + "value": "USD", + "type": "string", + "required": false + }, + "order_by": { + "value": "currency_code", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetXeroOrganisationDetails", + "qualifiedName": "XeroApi.GetXeroOrganisationDetails", + "fullyQualifiedName": "XeroApi.GetXeroOrganisationDetails@2.0.0", + "description": "Retrieves Xero organisation details.\n\nUse this tool to obtain detailed information about organisations in Xero. Ideal for accessing organisation data when required.", + "parameters": [ + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant. This ID is required to specify which organisation's details to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOrganisations'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.GetXeroOrganisationDetails", + "parameters": { + "xero_tenant_id": { + "value": "12345678-90ab-cdef-1234-567890abcdef", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RecordOverpaymentHistory", + "qualifiedName": "XeroApi.RecordOverpaymentHistory", + "fullyQualifiedName": "XeroApi.RecordOverpaymentHistory@2.0.0", + "description": "Creates a history record for a specific overpayment.\n\nUse this tool to add a history record to an existing overpayment in Xero. It helps in tracking changes or notes related to overpayments.", + "parameters": [ + { + "name": "overpayment_id", + "type": "string", + "required": true, + "description": "Unique identifier for an overpayment that you want to create a history record for.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant. Required to specify which tenant to apply the overpayment history record to.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique string (max 128 characters) for safely retrying requests without duplicate processing.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createOverpaymentHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RecordOverpaymentHistory", + "parameters": { + "overpayment_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "ABCDEF123456", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique_retry_key_001", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RecordReceiptHistory", + "qualifiedName": "XeroApi.RecordReceiptHistory", + "fullyQualifiedName": "XeroApi.RecordReceiptHistory@2.0.0", + "description": "Creates a history record for a specific receipt.", + "parameters": [ + { + "name": "receipt_id", + "type": "string", + "required": true, + "description": "Unique identifier for a receipt used to create a history record.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero tenant identifier required for creating the receipt history.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "String up to 128 characters to safely retry requests without risk of duplication.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'createReceiptHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RecordReceiptHistory", + "parameters": { + "receipt_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant_456", + "type": "string", + "required": true + }, + "idempotency_key": { + "value": "unique-key-7890", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveContactFromGroup", + "qualifiedName": "XeroApi.RemoveContactFromGroup", + "fullyQualifiedName": "XeroApi.RemoveContactFromGroup@2.0.0", + "description": "Delete a specific contact from a contact group.\n\nThis tool removes a specified contact from a contact group using unique identifiers for both the contact and the group. It should be called when there is a need to manage and update contact groups by removing contacts.", + "parameters": [ + { + "name": "contact_group_id", + "type": "string", + "required": true, + "description": "Unique identifier for a contact group to specify which group the contact should be removed from.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for a contact to be removed from the group.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. Required for specifying the target tenant in requests.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.contacts"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteContactGroupContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RemoveContactFromGroup", + "parameters": { + "contact_group_id": { + "value": "group_12345", + "type": "string", + "required": true + }, + "contact_identifier": { + "value": "contact_67890", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant_54321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveContactsFromGroup", + "qualifiedName": "XeroApi.RemoveContactsFromGroup", + "fullyQualifiedName": "XeroApi.RemoveContactsFromGroup@2.0.0", + "description": "Removes all contacts from a specified contact group in Xero.\n\nUse this tool to delete all contacts from a specific contact group in Xero. Ideal for cleaning or reorganizing contact groups.", + "parameters": [ + { + "name": "contact_group_id", + "type": "string", + "required": true, + "description": "Unique identifier for the contact group to remove contacts from.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the specific tenant required to access its data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.contacts"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteContactGroupContacts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RemoveContactsFromGroup", + "parameters": { + "contact_group_id": { + "value": "g1234567", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RemoveTrackingCategory", + "qualifiedName": "XeroApi.RemoveTrackingCategory", + "fullyQualifiedName": "XeroApi.RemoveTrackingCategory@2.0.0", + "description": "Deletes a specific tracking category from Xero.\n\nUse this tool to delete a particular tracking category identified by its ID in the Xero accounting system.", + "parameters": [ + { + "name": "tracking_category_id", + "type": "string", + "required": true, + "description": "Unique identifier for the tracking category to be deleted in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. Required to specify which tenant's tracking category to delete.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'deleteTrackingCategory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RemoveTrackingCategory", + "parameters": { + "tracking_category_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "Retrieve1099Reports", + "qualifiedName": "XeroApi.Retrieve1099Reports", + "fullyQualifiedName": "XeroApi.Retrieve1099Reports@2.0.0", + "description": "Retrieves 1099 tax reports.\n\nUse this tool to obtain 1099 tax reports from the Xero accounting service. It provides necessary financial data related to 1099 forms.", + "parameters": [ + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the tenant in Xero. Required to access the specific tenant's 1099 report data.", + "enum": null, + "inferrable": true + }, + { + "name": "report_year", + "type": "string", + "required": false, + "description": "The year for which the 1099 report should be retrieved, in YYYY format.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": [ + "accounting.reports.tenninetynine.read", + "accounting.reports.read" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportTenNinetyNine'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.Retrieve1099Reports", + "parameters": { + "xero_tenant_identifier": { + "value": "123456789", + "type": "string", + "required": true + }, + "report_year": { + "value": "2022", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAccountAttachment", + "qualifiedName": "XeroApi.RetrieveAccountAttachment", + "fullyQualifiedName": "XeroApi.RetrieveAccountAttachment@2.0.0", + "description": "Retrieve a specific account attachment by ID.\n\nUse this tool to retrieve an attachment from a specific account by providing the unique attachment ID. It is useful when you need to access detailed information or content of an attachment associated with a particular account in Xero.", + "parameters": [ + { + "name": "account_unique_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the Account object to retrieve the attachment from.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the attachment you want to retrieve from an account. This ID is necessary to specify the exact attachment you need.", + "enum": null, + "inferrable": true + }, + { + "name": "mime_type_of_attachment", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file, such as image/jpg or application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. Required to specify which tenant's account attachment you want to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAccountAttachmentById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveAccountAttachment", + "parameters": { + "account_unique_identifier": { + "value": "12345678", + "type": "string", + "required": true + }, + "attachment_id": { + "value": "att_98765432", + "type": "string", + "required": true + }, + "mime_type_of_attachment": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant_001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAccountAttachmentByFilename", + "qualifiedName": "XeroApi.RetrieveAccountAttachmentByFilename", + "fullyQualifiedName": "XeroApi.RetrieveAccountAttachmentByFilename@2.0.0", + "description": "Retrieve an attachment for a specific account by filename.\n\nThis tool retrieves an attachment file from a specific account in Xero using the filename. It should be called when a user needs to access a specific account's attachment by providing the account ID and filename.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Account object in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_file_name", + "type": "string", + "required": true, + "description": "The name of the attachment to retrieve for a specific account.", + "enum": null, + "inferrable": true + }, + { + "name": "mime_type_of_attachment", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file to retrieve, such as image/jpg or application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the Tenant. Required to access the specific tenant's attachments.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAccountAttachmentByFileName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveAccountAttachmentByFilename", + "parameters": { + "account_id": { + "value": "123456789", + "type": "string", + "required": true + }, + "attachment_file_name": { + "value": "invoice.pdf", + "type": "string", + "required": true + }, + "mime_type_of_attachment": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAccountAttachments", + "qualifiedName": "XeroApi.RetrieveAccountAttachments", + "fullyQualifiedName": "XeroApi.RetrieveAccountAttachments@2.0.0", + "description": "Retrieve attachments for a specified account.\n\nThis tool is used to get attachments associated with a specific account by providing the account's unique ID. Useful for accessing documents or files linked to financial accounts in the Xero platform.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "Unique identifier for the account object to retrieve attachments from.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant, used to specify which tenant's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAccountAttachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveAccountAttachments", + "parameters": { + "account_id": { + "value": "A123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "T987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveAccountDetails", + "qualifiedName": "XeroApi.RetrieveAccountDetails", + "fullyQualifiedName": "XeroApi.RetrieveAccountDetails@2.0.0", + "description": "Retrieve chart of accounts using a unique account ID.\n\nUse this tool to fetch details of a specific account from the chart of accounts by providing a unique account ID.", + "parameters": [ + { + "name": "account_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Account object to retrieve specific account details.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant to retrieve the account details from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAccount'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveAccountDetails", + "parameters": { + "account_id": { + "value": "123456", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "abc-tenant-789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBankTransaction", + "qualifiedName": "XeroApi.RetrieveBankTransaction", + "fullyQualifiedName": "XeroApi.RetrieveBankTransaction@2.0.0", + "description": "Retrieve bank transaction details by ID.\n\nUse this tool to get details of a specific spent or received bank transaction by providing its unique ID.", + "parameters": [ + { + "name": "bank_transaction_id", + "type": "string", + "required": true, + "description": "Unique identifier for a specific bank transaction in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The Xero identifier for the tenant (organization). Required to access the specific tenant's data.", + "enum": null, + "inferrable": true + }, + { + "name": "use_four_decimal_places", + "type": "integer", + "required": false, + "description": "Option to use four decimal places for unit amounts. Specify '4' to enable.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBankTransaction'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveBankTransaction", + "parameters": { + "bank_transaction_id": { + "value": "BTRN-123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TENANT-7891011", + "type": "string", + "required": true + }, + "use_four_decimal_places": { + "value": 4, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBankTransactionAttachment", + "qualifiedName": "XeroApi.RetrieveBankTransactionAttachment", + "fullyQualifiedName": "XeroApi.RetrieveBankTransactionAttachment@2.0.0", + "description": "Retrieve a specific attachment from a bank transaction.\n\nUse this tool to obtain specific attachments from a bank transaction by providing the unique BankTransaction ID and Attachment ID.", + "parameters": [ + { + "name": "attachment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Attachment object.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The mime type of the attachment file to retrieve, such as image/jpeg or application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "bank_transaction_id", + "type": "string", + "required": true, + "description": "Xero generated unique identifier for a bank transaction.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero unique identifier for the Tenant. This is required to specify which organization data is to be accessed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBankTransactionAttachmentById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveBankTransactionAttachment", + "parameters": { + "attachment_id": { + "value": "abc123", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "bank_transaction_id": { + "value": "txn456", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBankTransactionAttachments", + "qualifiedName": "XeroApi.RetrieveBankTransactionAttachments", + "fullyQualifiedName": "XeroApi.RetrieveBankTransactionAttachments@2.0.0", + "description": "Retrieve attachments from a specific bank transaction.\n\nUse this tool to obtain any attachments linked to a specific bank transaction. It accesses the attachments related to a given transaction ID within the Xero platform.", + "parameters": [ + { + "name": "bank_transaction_id", + "type": "string", + "required": true, + "description": "Xero generated unique identifier for a bank transaction, used to retrieve corresponding attachments.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for a Xero tenant, required to access specific tenant data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBankTransactionAttachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveBankTransactionAttachments", + "parameters": { + "bank_transaction_id": { + "value": "BTR-123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TNT-987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBankTransactions", + "qualifiedName": "XeroApi.RetrieveBankTransactions", + "fullyQualifiedName": "XeroApi.RetrieveBankTransactions@2.0.0", + "description": "Retrieve spent or received money transactions from Xero.\n\nUse this tool to get a list of transactions where money was spent or received. This is useful for financial tracking and reporting.", + "parameters": [ + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant, required to specify which account to access.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_element", + "type": "string", + "required": false, + "description": "Specify criteria to filter transactions by any element. Use valid filter expressions based on transaction fields.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Return records created or modified since this UTC timestamp (ISO 8601 format).", + "enum": null, + "inferrable": true + }, + { + "name": "order_transactions_by", + "type": "string", + "required": false, + "description": "Specify the element by which to order the transactions, such as date or amount.", + "enum": null, + "inferrable": true + }, + { + "name": "records_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of records to retrieve per page. This controls the pagination size.", + "enum": null, + "inferrable": true + }, + { + "name": "transaction_page_number", + "type": "integer", + "required": false, + "description": "Specifies which page of up to 100 bank transactions to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "use_four_decimal_places", + "type": "integer", + "required": false, + "description": "Indicate if unit amounts should use four decimal places (e.g., 4).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBankTransactions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveBankTransactions", + "parameters": { + "xero_tenant_id": { + "value": "12345678-1234-1234-1234-123456789012", + "type": "string", + "required": true + }, + "filter_by_element": { + "value": "amount>100.00", + "type": "string", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "order_transactions_by": { + "value": "date", + "type": "string", + "required": false + }, + "records_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "transaction_page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "use_four_decimal_places": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBankTransfer", + "qualifiedName": "XeroApi.RetrieveBankTransfer", + "fullyQualifiedName": "XeroApi.RetrieveBankTransfer@2.0.0", + "description": "Retrieve details of a specific bank transfer using its ID.\n\nThis tool retrieves information about a specific bank transfer by using its unique bank transfer ID. It should be called when you need detailed information about a particular bank transfer within the Xero service.", + "parameters": [ + { + "name": "bank_transfer_id", + "type": "string", + "required": true, + "description": "The unique identifier for a bank transfer generated by Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. This is required to specify which tenant's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBankTransfer'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveBankTransfer", + "parameters": { + "bank_transfer_id": { + "value": "b1234567-89ab-cdef-0123-456789abcdef", + "type": "string", + "required": true + }, + "tenant_id": { + "value": "tenant_12345", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBankTransferAttachment", + "qualifiedName": "XeroApi.RetrieveBankTransferAttachment", + "fullyQualifiedName": "XeroApi.RetrieveBankTransferAttachment@2.0.0", + "description": "Retrieve a bank transfer attachment by file name.\n\nUse this tool to obtain a specific attachment related to a bank transfer by providing the file name.", + "parameters": [ + { + "name": "attachment_file_name", + "type": "string", + "required": true, + "description": "The name of the attachment file to retrieve from the bank transfer.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file, such as 'image/jpg' or 'application/pdf'.", + "enum": null, + "inferrable": true + }, + { + "name": "bank_transfer_id", + "type": "string", + "required": true, + "description": "Xero-generated unique identifier for a bank transfer. Required to specify which bank transfer's attachment is being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant associated with the bank transfer.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBankTransferAttachmentByFileName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveBankTransferAttachment", + "parameters": { + "attachment_file_name": { + "value": "invoice_12345.pdf", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "bank_transfer_id": { + "value": "BTR-67890", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "TEN-00112233", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBankTransferAttachments", + "qualifiedName": "XeroApi.RetrieveBankTransferAttachments", + "fullyQualifiedName": "XeroApi.RetrieveBankTransferAttachments@2.0.0", + "description": "Retrieve attachments from a specific bank transfer in Xero.\n\nUse this tool to get a list of attachments related to a particular bank transfer in Xero by providing the BankTransferID. Ideal for when you need access to documents associated with bank transactions.", + "parameters": [ + { + "name": "bank_transfer_id", + "type": "string", + "required": true, + "description": "Xero-generated unique identifier for a bank transfer. Required to retrieve associated attachments.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for your tenant. This ID specifies which tenant the bank transfer belongs to.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBankTransferAttachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveBankTransferAttachments", + "parameters": { + "bank_transfer_id": { + "value": "BT1234567890", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "TEN9876543210", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBankTransfers", + "qualifiedName": "XeroApi.RetrieveBankTransfers", + "fullyQualifiedName": "XeroApi.RetrieveBankTransfers@2.0.0", + "description": "Retrieve all bank transfers from Xero.\n\nUse this tool to access all bank transfer records from Xero. It helps in obtaining comprehensive transfer data for financial review or auditing purposes.", + "parameters": [ + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "A unique string identifier for the Xero tenant to retrieve bank transfers from.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_bank_transfers", + "type": "string", + "required": false, + "description": "String to filter bank transfer records by a specific element, such as status or date range.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Filter records to only include those created or modified since this timestamp. Use ISO 8601 format (e.g., '2023-10-01T00:00:00Z').", + "enum": null, + "inferrable": true + }, + { + "name": "order_by_element", + "type": "string", + "required": false, + "description": "Specify the field to order the bank transfer records by. Use the field names available in the Xero bank transfer dataset.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBankTransfers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveBankTransfers", + "parameters": { + "xero_tenant_identifier": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "filter_bank_transfers": { + "value": "completed", + "type": "string", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-09-01T00:00:00Z", + "type": "string", + "required": false + }, + "order_by_element": { + "value": "date", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBatchPaymentHistory", + "qualifiedName": "XeroApi.RetrieveBatchPaymentHistory", + "fullyQualifiedName": "XeroApi.RetrieveBatchPaymentHistory@2.0.0", + "description": "Retrieve the history of a specific batch payment.\n\nUse this tool to access detailed history for a specific batch payment in Xero. Call this tool when needing to understand past actions, updates, or changes made to a batch payment.", + "parameters": [ + { + "name": "batch_payment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the batch payment to retrieve its history.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant. Required to access specific tenant data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBatchPaymentHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveBatchPaymentHistory", + "parameters": { + "batch_payment_id": { + "value": "b12345cde6789fghij", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "t98765abc4321defg", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBatchPayments", + "qualifiedName": "XeroApi.RetrieveBatchPayments", + "fullyQualifiedName": "XeroApi.RetrieveBatchPayments@2.0.0", + "description": "Retrieve batch payments for invoices.\n\nUse this tool to retrieve information about one or many batch payments associated with invoices. Useful for accessing payment details and histories.", + "parameters": [ + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant required to access its specific batch payment data.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_element", + "type": "string", + "required": false, + "description": "Apply a filter to the batch payments using any specified element.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Timestamp to filter records modified or created since then. Format: ISO 8601 date and time.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by_element", + "type": "string", + "required": false, + "description": "Specify the element to sort the batch payments by. The value should be a string representing the element.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBatchPayments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveBatchPayments", + "parameters": { + "tenant_identifier": { + "value": "abc123-tenant-xero", + "type": "string", + "required": true + }, + "filter_by_element": { + "value": "status", + "type": "string", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "order_by_element": { + "value": "payment_date", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBrandingTheme", + "qualifiedName": "XeroApi.RetrieveBrandingTheme", + "fullyQualifiedName": "XeroApi.RetrieveBrandingTheme@2.0.0", + "description": "Retrieve details of a specific branding theme.\n\nThis tool retrieves information about a specific branding theme by using its unique ID. It is useful for accessing and displaying branding theme details in accounting or financial software.", + "parameters": [ + { + "name": "branding_theme_id", + "type": "string", + "required": true, + "description": "Unique identifier for a branding theme to retrieve its details.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The Xero identifier for the Tenant. This is required to specify which tenant's branding theme to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBrandingTheme'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveBrandingTheme", + "parameters": { + "branding_theme_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "xyz987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBudgetDetails", + "qualifiedName": "XeroApi.RetrieveBudgetDetails", + "fullyQualifiedName": "XeroApi.RetrieveBudgetDetails@2.0.0", + "description": "Retrieve detailed information about a budget including lines.\n\nUse this tool to get information about a specified budget by its ID, including all associated budget lines.", + "parameters": [ + { + "name": "budget_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for budgets. Required to retrieve specific budget details including budget lines.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant to specify which tenant's budget to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_end_date", + "type": "string", + "required": false, + "description": "Specifies the end date to filter the budget data. Use the format YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_start_date", + "type": "string", + "required": false, + "description": "The start date from which to filter the budget details. Format must be YYYY-MM-DD.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.budgets.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBudget'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveBudgetDetails", + "parameters": { + "budget_identifier": { + "value": "12345-abcde", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant-67890", + "type": "string", + "required": true + }, + "filter_end_date": { + "value": "2023-12-31", + "type": "string", + "required": false + }, + "filter_start_date": { + "value": "2023-01-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveBudgets", + "qualifiedName": "XeroApi.RetrieveBudgets", + "fullyQualifiedName": "XeroApi.RetrieveBudgets@2.0.0", + "description": "Retrieve a list of budgets from Xero.\n\nUse this tool to obtain detailed budgeting information from the Xero platform, helping manage and analyze budget data.", + "parameters": [ + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant. Required for accessing specific tenant data.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_budget_id", + "type": "string", + "required": false, + "description": "Filter to retrieve a specific budget by its BudgetID.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_end_date", + "type": "string", + "required": false, + "description": "Specify the end date to filter the budgets. Use the format YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_start_date", + "type": "string", + "required": false, + "description": "The start date to filter budgets until. Expected format is YYYY-MM-DD.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.budgets.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getBudgets'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveBudgets", + "parameters": { + "tenant_identifier": { + "value": "abc123456", + "type": "string", + "required": true + }, + "filter_by_budget_id": { + "value": "budget123", + "type": "string", + "required": false + }, + "filter_by_end_date": { + "value": "2023-12-31", + "type": "string", + "required": false + }, + "filter_start_date": { + "value": "2023-01-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveContactAttachment", + "qualifiedName": "XeroApi.RetrieveContactAttachment", + "fullyQualifiedName": "XeroApi.RetrieveContactAttachment@2.0.0", + "description": "Retrieve a specific contact attachment by ID.\n\nUse this tool to get a specific attachment from a contact by providing the unique attachment ID. Useful for accessing detailed attachment data linked to a contact in Xero.", + "parameters": [ + { + "name": "attachment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Attachment object from a contact in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file (e.g., image/jpeg, application/pdf).", + "enum": null, + "inferrable": true + }, + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "Unique identifier for a Contact in Xero to retrieve a specific attachment.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the tenant in Xero to access specific data connected to a tenant account.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getContactAttachmentById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveContactAttachment", + "parameters": { + "attachment_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "contact_id": { + "value": "67890fghij", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant-XYZ-123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveContactGroup", + "qualifiedName": "XeroApi.RetrieveContactGroup", + "fullyQualifiedName": "XeroApi.RetrieveContactGroup@2.0.0", + "description": "Retrieve a specific contact group by ID.\n\nCall this tool to get details of a particular contact group using its unique ID on Xero.", + "parameters": [ + { + "name": "contact_group_id", + "type": "string", + "required": true, + "description": "Unique identifier for a Contact Group in Xero. Use this to retrieve specific group details.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Identifier for the Xero tenant needed to access specific tenant data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.contacts.read", "accounting.contacts"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getContactGroup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveContactGroup", + "parameters": { + "contact_group_id": { + "value": "CG12345", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TENANT67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveContactGroups", + "qualifiedName": "XeroApi.RetrieveContactGroups", + "fullyQualifiedName": "XeroApi.RetrieveContactGroups@2.0.0", + "description": "Retrieve contact group IDs and names from Xero.\n\nUse this tool to get a list of contact groups from Xero, including each group's ID and name. Ideal for identifying specific contact groups and managing contacts effectively.", + "parameters": [ + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. Required to access the correct tenant's contact groups.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_criteria", + "type": "string", + "required": false, + "description": "A string to filter contact groups based on specified criteria, using any element.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "string", + "required": false, + "description": "Specify the criteria to order the contact groups by. It can be any element to sort the results accordingly.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.contacts.read", "accounting.contacts"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getContactGroups'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveContactGroups", + "parameters": { + "tenant_identifier": { + "value": "12345678-abcd-1234-abcd-1234567890ab", + "type": "string", + "required": true + }, + "filter_criteria": { + "value": "active", + "type": "string", + "required": false + }, + "order_by": { + "value": "name", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCreditNote", + "qualifiedName": "XeroApi.RetrieveCreditNote", + "fullyQualifiedName": "XeroApi.RetrieveCreditNote@2.0.0", + "description": "Retrieve a credit note using its unique ID.\n\nUse this tool to get detailed information about a specific credit note by providing its unique ID. Ideal for obtaining precise credit note data from your Xero account.", + "parameters": [ + { + "name": "credit_note_id", + "type": "string", + "required": true, + "description": "Unique identifier for the credit note to retrieve details from Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant associated with the credit note. It is required to specify which tenant's data to access.", + "enum": null, + "inferrable": true + }, + { + "name": "use_four_decimal_places", + "type": "integer", + "required": false, + "description": "Specify if four decimal places should be used for unit amounts. Default is false.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCreditNote'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveCreditNote", + "parameters": { + "credit_note_id": { + "value": "CN123456789", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant_5678", + "type": "string", + "required": true + }, + "use_four_decimal_places": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveCreditNoteAttachment", + "qualifiedName": "XeroApi.RetrieveCreditNoteAttachment", + "fullyQualifiedName": "XeroApi.RetrieveCreditNoteAttachment@2.0.0", + "description": "Retrieve a specific credit note attachment by file name.\n\nUse this tool to get a particular attachment from a specific credit note using the file name as a reference. It is helpful when you need to access or verify document details associated with a credit note.", + "parameters": [ + { + "name": "attachment_file_name", + "type": "string", + "required": true, + "description": "The name of the attachment to be retrieved from the credit note (e.g., invoice.pdf).", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file to retrieve, such as 'image/jpg' or 'application/pdf'.", + "enum": null, + "inferrable": true + }, + { + "name": "credit_note_id", + "type": "string", + "required": true, + "description": "Unique identifier for a Credit Note. Use this ID to specify which credit note's attachment you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the Xero Tenant. Required to specify which tenant's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getCreditNoteAttachmentByFileName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveCreditNoteAttachment", + "parameters": { + "attachment_file_name": { + "value": "invoice.pdf", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "credit_note_id": { + "value": "CN-123456", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant_abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveDraftExpenseClaimReceipt", + "qualifiedName": "XeroApi.RetrieveDraftExpenseClaimReceipt", + "fullyQualifiedName": "XeroApi.RetrieveDraftExpenseClaimReceipt@2.0.0", + "description": "Retrieve a draft expense claim receipt using its ID.\n\nUse this tool to retrieve detailed information about a specific draft expense claim receipt by providing its unique receipt ID. Useful for reviewing or processing draft receipts.", + "parameters": [ + { + "name": "receipt_id", + "type": "string", + "required": true, + "description": "The unique identifier for the draft expense claim receipt to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant. Required to specify which organization's data is being accessed.", + "enum": null, + "inferrable": true + }, + { + "name": "use_four_decimal_places", + "type": "integer", + "required": false, + "description": "Set to true to use four decimal places for unit amounts, false for standard.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReceipt'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveDraftExpenseClaimReceipt", + "parameters": { + "receipt_id": { + "value": "abc12345", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "xyz67890", + "type": "string", + "required": true + }, + "use_four_decimal_places": { + "value": 1, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveExecutiveSummaryReport", + "qualifiedName": "XeroApi.RetrieveExecutiveSummaryReport", + "fullyQualifiedName": "XeroApi.RetrieveExecutiveSummaryReport@2.0.0", + "description": "Retrieve an executive summary report for financial insights.\n\nUse this tool to get an executive summary report, which provides financial insights and key metrics for business decision-making.", + "parameters": [ + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "The Xero identifier for the tenant. Required to specify which tenant's data should be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "report_date", + "type": "string", + "required": false, + "description": "The date for the Bank Summary report in the format YYYY-MM-DD (e.g., 2018-03-31).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.reports.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportExecutiveSummary'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveExecutiveSummaryReport", + "parameters": { + "xero_tenant_identifier": { + "value": "abc123tenant", + "type": "string", + "required": true + }, + "report_date": { + "value": "2023-10-01", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveExpenseClaim", + "qualifiedName": "XeroApi.RetrieveExpenseClaim", + "fullyQualifiedName": "XeroApi.RetrieveExpenseClaim@2.0.0", + "description": "Retrieve details of a specific expense claim by ID.\n\nUse this tool to obtain details about a specific expense claim using its unique ID. This is useful for reviewing or verifying expense claims in your records.", + "parameters": [ + { + "name": "expense_claim_id", + "type": "string", + "required": true, + "description": "Unique identifier for an expense claim to retrieve its details.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero tenant identifier for the specific business or organization you are retrieving the expense claim from.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getExpenseClaim'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveExpenseClaim", + "parameters": { + "expense_claim_id": { + "value": "EC123456789", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "XT987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveExpenseClaimHistory", + "qualifiedName": "XeroApi.RetrieveExpenseClaimHistory", + "fullyQualifiedName": "XeroApi.RetrieveExpenseClaimHistory@2.0.0", + "description": "Retrieve the history of a specific expense claim.\n\nUse this tool to obtain history records for a specific expense claim using its ID.", + "parameters": [ + { + "name": "expense_claim_id", + "type": "string", + "required": true, + "description": "Unique identifier for retrieving the specific expense claim history.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. This is required to specify which tenant's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getExpenseClaimHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveExpenseClaimHistory", + "parameters": { + "expense_claim_id": { + "value": "EC123456789", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TENANT123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveExpenseClaims", + "qualifiedName": "XeroApi.RetrieveExpenseClaims", + "fullyQualifiedName": "XeroApi.RetrieveExpenseClaims@2.0.0", + "description": "Fetches expense claims from Xero.\n\nThis tool should be called to retrieve detailed expense claims data from Xero. It can be used to review or analyze expenses.", + "parameters": [ + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant required to specify which organization's data to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_element", + "type": "string", + "required": false, + "description": "Apply a filter based on specific elements in the expense claims.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Retrieve records created or modified since this timestamp in ISO 8601 format (e.g., '2023-10-04T00:00:00Z').", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "string", + "required": false, + "description": "Specify the element by which to order the expense claims, such as date or amount.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getExpenseClaims'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveExpenseClaims", + "parameters": { + "xero_tenant_identifier": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "filter_by_element": { + "value": "status=approved", + "type": "string", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "order_by": { + "value": "date", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveFullChartOfAccounts", + "qualifiedName": "XeroApi.RetrieveFullChartOfAccounts", + "fullyQualifiedName": "XeroApi.RetrieveFullChartOfAccounts@2.0.0", + "description": "Retrieves the full chart of accounts from Xero.\n\nUse this tool to obtain the complete chart of accounts from Xero, which includes all accounting categories and their details. It is useful for analyzing financial structures within the Xero platform.", + "parameters": [ + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the Xero tenant to retrieve its accounts.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_attribute", + "type": "string", + "required": false, + "description": "Filter accounts by specific attributes or conditions using string syntax.", + "enum": null, + "inferrable": true + }, + { + "name": "only_modified_since_timestamp", + "type": "string", + "required": false, + "description": "Specify a timestamp to return only records created or modified since that time. The timestamp should be in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by_element", + "type": "string", + "required": false, + "description": "Specify a field to order the returned accounts (e.g., 'Name' or 'AccountType').", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getAccounts'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveFullChartOfAccounts", + "parameters": { + "xero_tenant_identifier": { + "value": "12345678-aaaa-bbbb-cccc-1234567890ab", + "type": "string", + "required": true + }, + "filter_by_attribute": { + "value": "AccountType='Revenue'", + "type": "string", + "required": false + }, + "only_modified_since_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "order_by_element": { + "value": "Name", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveInvoiceAttachmentById", + "qualifiedName": "XeroApi.RetrieveInvoiceAttachmentById", + "fullyQualifiedName": "XeroApi.RetrieveInvoiceAttachmentById@2.0.0", + "description": "Retrieve a specific invoice attachment by ID.\n\nUse this tool to obtain a specific attachment from an invoice or purchase bill using its unique attachment ID in Xero. Call this tool when you need to access or review an attachment related to an invoice.", + "parameters": [ + { + "name": "attachment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the attachment object in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file, e.g., image/jpg or application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "invoice_id", + "type": "string", + "required": true, + "description": "The unique identifier for the invoice to retrieve the attachment from.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. Required to specify the tenant from which the attachment is being retrieved.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getInvoiceAttachmentById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveInvoiceAttachmentById", + "parameters": { + "attachment_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "invoice_id": { + "value": "inv789456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant_001", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveInvoiceAttachments", + "qualifiedName": "XeroApi.RetrieveInvoiceAttachments", + "fullyQualifiedName": "XeroApi.RetrieveInvoiceAttachments@2.0.0", + "description": "Retrieve attachments for a specific invoice or bill.\n\nThis tool is used to obtain attachments related to a particular invoice or purchase bill from Xero. Call this tool when you need to access documents or files attached to a specific invoice.", + "parameters": [ + { + "name": "invoice_id", + "type": "string", + "required": true, + "description": "Unique identifier for the invoice to retrieve attachments from.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant that owns the invoice.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getInvoiceAttachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveInvoiceAttachments", + "parameters": { + "invoice_id": { + "value": "INV-123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "TNT-987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveInvoiceHistory", + "qualifiedName": "XeroApi.RetrieveInvoiceHistory", + "fullyQualifiedName": "XeroApi.RetrieveInvoiceHistory@2.0.0", + "description": "Retrieve history of a specific invoice.\n\nRetrieves history records for a specific invoice using its Invoice ID. This tool is useful for tracking changes and updates made to an invoice over time.", + "parameters": [ + { + "name": "invoice_id", + "type": "string", + "required": true, + "description": "Unique identifier for the invoice to retrieve its history.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. This is required to specify which tenant's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getInvoiceHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveInvoiceHistory", + "parameters": { + "invoice_id": { + "value": "INV-123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "TENANT-7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveInvoicePayment", + "qualifiedName": "XeroApi.RetrieveInvoicePayment", + "fullyQualifiedName": "XeroApi.RetrieveInvoicePayment@2.0.0", + "description": "Retrieve specific payment details using a payment ID.\n\nThis tool retrieves details of a specific payment associated with invoices and credit notes using a unique payment ID. It should be called when there is a need to access information about a particular payment in Xero.", + "parameters": [ + { + "name": "payment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the payment, used to retrieve specific payment details in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. This is required to specify which organization's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPayment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveInvoicePayment", + "parameters": { + "payment_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveInvoicePdf", + "qualifiedName": "XeroApi.RetrieveInvoicePdf", + "fullyQualifiedName": "XeroApi.RetrieveInvoicePdf@2.0.0", + "description": "Retrieve an invoice or purchase bill as a PDF.\n\nThis tool retrieves an invoice or purchase bill in PDF format using the invoice ID. It is useful when you need a downloadable version of an invoice from Xero.", + "parameters": [ + { + "name": "invoice_id", + "type": "string", + "required": true, + "description": "Unique identifier for the invoice to retrieve as a PDF from Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant. This is required to specify the account from which to retrieve the invoice PDF.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getInvoiceAsPdf'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveInvoicePdf", + "parameters": { + "invoice_id": { + "value": "INV-123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant_7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveInvoices", + "qualifiedName": "XeroApi.RetrieveInvoices", + "fullyQualifiedName": "XeroApi.RetrieveInvoices@2.0.0", + "description": "Retrieve sales invoices or purchase bills from Xero.\n\nUse this tool to retrieve detailed information about sales invoices or purchase bills from Xero.", + "parameters": [ + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Unique identifier for a Xero tenant to retrieve invoices specific to that tenant.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_condition", + "type": "string", + "required": false, + "description": "Filter using a condition expression defined on any element, similar to a SQL WHERE clause.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_created_by_my_app", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve only invoices created by your app.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_invoice_numbers", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter results by providing a list of invoice numbers. Each item should be a string representing one invoice number.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_statuses", + "type": "array", + "innerType": "string", + "required": false, + "description": "Filter invoices by a list of statuses for improved response times. Use explicit parameters instead of OR conditions.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_contact_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of ContactIDs to filter invoices.", + "enum": null, + "inferrable": true + }, + { + "name": "include_archived_invoices", + "type": "boolean", + "required": false, + "description": "Set to true to include invoices with a status of ARCHIVED in the response.", + "enum": null, + "inferrable": true + }, + { + "name": "invoice_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "Comma-separated list of Invoice IDs to filter results.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Return only records created or modified since this timestamp. Use the format 'YYYY-MM-DDTHH:MM:SS'.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by", + "type": "string", + "required": false, + "description": "Specify the criteria for ordering invoices, such as date or amount.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specify the page number to retrieve. Up to 100 invoices per page can be returned.", + "enum": null, + "inferrable": true + }, + { + "name": "records_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of invoice records to retrieve per page.", + "enum": null, + "inferrable": true + }, + { + "name": "retrieve_summary_only", + "type": "boolean", + "required": false, + "description": "Set to true to retrieve a smaller, lightweight version of the response for quicker API calls, excluding computation-heavy fields.", + "enum": null, + "inferrable": true + }, + { + "name": "search_term", + "type": "string", + "required": false, + "description": "A case-insensitive search parameter for fields like InvoiceNumber and Reference.", + "enum": null, + "inferrable": true + }, + { + "name": "unit_decimal_places", + "type": "integer", + "required": false, + "description": "Specify the number of decimal places for unit amounts, e.g., 4 for four decimal places.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getInvoices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveInvoices", + "parameters": { + "xero_tenant_id": { + "value": "abc12345-6789-0123-4567-89abcdef0123", + "type": "string", + "required": true + }, + "filter_by_condition": { + "value": "AmountDue > 0", + "type": "string", + "required": false + }, + "filter_by_created_by_my_app": { + "value": true, + "type": "boolean", + "required": false + }, + "filter_by_invoice_numbers": { + "value": ["INV-001", "INV-002"], + "type": "array", + "required": false + }, + "filter_by_statuses": { + "value": ["AUTHORISED", "DRAFT"], + "type": "array", + "required": false + }, + "filter_contact_ids": { + "value": ["c123", "c456"], + "type": "array", + "required": false + }, + "include_archived_invoices": { + "value": false, + "type": "boolean", + "required": false + }, + "invoice_ids": { + "value": ["inv-001", "inv-002"], + "type": "array", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-01-01T00:00:00", + "type": "string", + "required": false + }, + "order_by": { + "value": "date", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "records_per_page": { + "value": 100, + "type": "integer", + "required": false + }, + "retrieve_summary_only": { + "value": false, + "type": "boolean", + "required": false + }, + "search_term": { + "value": "April", + "type": "string", + "required": false + }, + "unit_decimal_places": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveJournalAttachment", + "qualifiedName": "XeroApi.RetrieveJournalAttachment", + "fullyQualifiedName": "XeroApi.RetrieveJournalAttachment@2.0.0", + "description": "Retrieve a specific attachment from a manual journal using its ID.\n\nUse this tool to obtain a particular attachment linked to a specific manual journal by providing the unique attachment ID. Ideal for accessing relevant documents or files associated with journal entries.", + "parameters": [ + { + "name": "attachment_id", + "type": "string", + "required": true, + "description": "Provide the unique identifier for the attachment object to retrieve it from a manual journal.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "Specify the mime type of the attachment (e.g., image/jpg, application/pdf) to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "manual_journal_id", + "type": "string", + "required": true, + "description": "Unique identifier for the manual journal from which to retrieve the attachment.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant. Required to specify which tenant's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getManualJournalAttachmentById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveJournalAttachment", + "parameters": { + "attachment_id": { + "value": "abc123xyz", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "manual_journal_id": { + "value": "journal456def", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant789ghi", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveJournalAttachments", + "qualifiedName": "XeroApi.RetrieveJournalAttachments", + "fullyQualifiedName": "XeroApi.RetrieveJournalAttachments@2.0.0", + "description": "Retrieve attachments for a specific manual journal.\n\nUse this tool to retrieve attachments associated with a given manual journal in Xero. Ideal for accessing or reviewing documents linked to journal entries.", + "parameters": [ + { + "name": "manual_journal_id", + "type": "string", + "required": true, + "description": "The unique identifier for a specific manual journal to retrieve its attachments.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_id", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant to access the manual journal attachments.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getManualJournalAttachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveJournalAttachments", + "parameters": { + "manual_journal_id": { + "value": "MJ123456", + "type": "string", + "required": true + }, + "tenant_id": { + "value": "TEN987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveJournalByNumber", + "qualifiedName": "XeroApi.RetrieveJournalByNumber", + "fullyQualifiedName": "XeroApi.RetrieveJournalByNumber@2.0.0", + "description": "Retrieve a specific journal by its unique number.\n\nUse this tool to obtain detailed information about a particular journal entry using its unique journal number.", + "parameters": [ + { + "name": "journal_number", + "type": "integer", + "required": true, + "description": "The unique number identifying the journal entry to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for a Xero tenant to specify the context for the journal retrieval.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.journals.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getJournalByNumber'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveJournalByNumber", + "parameters": { + "journal_number": { + "value": 12345, + "type": "integer", + "required": true + }, + "tenant_identifier": { + "value": "tenant_abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveLinkedTransactions", + "qualifiedName": "XeroApi.RetrieveLinkedTransactions", + "fullyQualifiedName": "XeroApi.RetrieveLinkedTransactions@2.0.0", + "description": "Retrieve linked transactions from Xero.\n\nUse this tool to get linked transactions, such as billable expenses, from the Xero platform. Call it when you need details about expenses that are linked or billable in Xero.", + "parameters": [ + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The Xero identifier for a specific tenant. Required for identifying the tenant whose linked transactions are being retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_contact_id", + "type": "string", + "required": false, + "description": "Filter results by the customer's ContactID to get linked transactions for a specific customer.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_status", + "type": "string", + "required": false, + "description": "Filter linked transactions by status when combined with ContactID. Retrieves transactions associated with a customer based on this status.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_target_transaction_id", + "type": "string", + "required": false, + "description": "Filter linked transactions by TargetTransactionID to get those allocated to a specific ACCREC invoice.", + "enum": null, + "inferrable": true + }, + { + "name": "linked_transaction_id", + "type": "string", + "required": false, + "description": "The Xero identifier for a Linked Transaction to retrieve specific billable expenses.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specify the page number to retrieve in paginated results, starting from 1.", + "enum": null, + "inferrable": true + }, + { + "name": "source_transaction_id", + "type": "string", + "required": false, + "description": "Filter by SourceTransactionID to get linked transactions from a specific ACCPAY invoice.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getLinkedTransactions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveLinkedTransactions", + "parameters": { + "tenant_identifier": { + "value": "12345678-abcd-efgh-ijkl-1234567890ab", + "type": "string", + "required": true + }, + "filter_by_contact_id": { + "value": "98765432-wxyz-uvwx-qrst-9876543210zy", + "type": "string", + "required": false + }, + "filter_by_status": { + "value": "BILLED", + "type": "string", + "required": false + }, + "filter_by_target_transaction_id": { + "value": "87654321-ijkl-mnop-qrst-123456789abc", + "type": "string", + "required": false + }, + "linked_transaction_id": { + "value": "abcdef00-1234-5678-90ab-cdefabcdef12", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "source_transaction_id": { + "value": "abcd1234-5678-90ef-ghij-klmnopqrst", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveManualJournal", + "qualifiedName": "XeroApi.RetrieveManualJournal", + "fullyQualifiedName": "XeroApi.RetrieveManualJournal@2.0.0", + "description": "Retrieve details of a specific manual journal.\n\nUse this tool to obtain information about a particular manual journal by its ID. Ideal for users needing specific journal entry details from Xero.", + "parameters": [ + { + "name": "manual_journal_id", + "type": "string", + "required": true, + "description": "Unique identifier for the manual journal you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for a Xero tenant. Required to access tenant-specific data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getManualJournal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveManualJournal", + "parameters": { + "manual_journal_id": { + "value": "MJ123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TNT987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveManualJournals", + "qualifiedName": "XeroApi.RetrieveManualJournals", + "fullyQualifiedName": "XeroApi.RetrieveManualJournals@2.0.0", + "description": "Retrieve manual journals from Xero.\n\nUse this tool to get a list of manual journals from Xero, typically when needing insights into financial entries or audits.", + "parameters": [ + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the Tenant to retrieve manual journals from.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_criteria", + "type": "string", + "required": false, + "description": "Filter manual journals based on specified criteria, such as date or amount.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Retrieve records created or modified since this timestamp (ISO 8601 format).", + "enum": null, + "inferrable": true + }, + { + "name": "order_by_element", + "type": "string", + "required": false, + "description": "Specify the element to order the results by. Use field names like date, amount, etc.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve, e.g., page=1. Returns up to 100 manual journals per call.", + "enum": null, + "inferrable": true + }, + { + "name": "records_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of manual journal records to retrieve per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getManualJournals'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveManualJournals", + "parameters": { + "tenant_identifier": { + "value": "12345678-1234-1234-1234-123456789abc", + "type": "string", + "required": true + }, + "filter_criteria": { + "value": "amount>=1000", + "type": "string", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "order_by_element": { + "value": "date", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "records_per_page": { + "value": 100, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveOnlineInvoiceUrl", + "qualifiedName": "XeroApi.RetrieveOnlineInvoiceUrl", + "fullyQualifiedName": "XeroApi.RetrieveOnlineInvoiceUrl@2.0.0", + "description": "Retrieve a URL for viewing an online invoice.\n\nUse this tool to obtain a direct URL for accessing a specific online invoice based on its InvoiceID. The tool helps retrieve online invoice links for quick viewing and sharing.", + "parameters": [ + { + "name": "invoice_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for the invoice to retrieve its online URL.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero tenant identifier needed to retrieve the correct online invoice.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOnlineInvoice'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveOnlineInvoiceUrl", + "parameters": { + "invoice_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant-xyz-123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveOverpayments", + "qualifiedName": "XeroApi.RetrieveOverpayments", + "fullyQualifiedName": "XeroApi.RetrieveOverpayments@2.0.0", + "description": "Retrieve overpayments from the accounting system.\n\nUse this tool to access and retrieve a list of overpayments recorded in the Xero accounting system. This is useful for financial analysis and reconciliation.", + "parameters": [ + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant to retrieve overpayments for.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_criteria", + "type": "string", + "required": false, + "description": "Filter overpayments by a specific element or condition. Use syntax like \"Property=value\" for filtering.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by_element", + "type": "string", + "required": false, + "description": "Specify the element by which to order the retrieved overpayments. Accepts any valid field.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number for retrieving overpayments. Up to 100 overpayments will be returned per page.", + "enum": null, + "inferrable": true + }, + { + "name": "records_modified_since", + "type": "string", + "required": false, + "description": "Return records created or modified after the specified timestamp in ISO 8601 format.", + "enum": null, + "inferrable": true + }, + { + "name": "records_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of records to retrieve per page. Determines the page size for the results.", + "enum": null, + "inferrable": true + }, + { + "name": "unit_decimal_places", + "type": "integer", + "required": false, + "description": "The number of decimal places to use for unit amounts. Accepts up to four decimals.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOverpayments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveOverpayments", + "parameters": { + "tenant_identifier": { + "value": "abc123-xyz456-tenant-001", + "type": "string", + "required": true + }, + "filter_criteria": { + "value": "Status=Overpaid", + "type": "string", + "required": false + }, + "order_by_element": { + "value": "Date", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "records_modified_since": { + "value": "2023-01-01T00:00:00Z", + "type": "string", + "required": false + }, + "records_per_page": { + "value": 100, + "type": "integer", + "required": false + }, + "unit_decimal_places": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePaymentHistory", + "qualifiedName": "XeroApi.RetrievePaymentHistory", + "fullyQualifiedName": "XeroApi.RetrievePaymentHistory@2.0.0", + "description": "Retrieve the history records of a specific payment.\n\nUse this tool to obtain historical records related to a specific payment, including updates and changes made over time.", + "parameters": [ + { + "name": "payment_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for a specific payment to retrieve its history.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. Used to specify which tenant's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPaymentHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrievePaymentHistory", + "parameters": { + "payment_identifier": { + "value": "PAY-123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "TEN-7891011", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePaymentServices", + "qualifiedName": "XeroApi.RetrievePaymentServices", + "fullyQualifiedName": "XeroApi.RetrievePaymentServices@2.0.0", + "description": "Retrieve available payment services from Xero.\n\nUse this tool to obtain a list of payment services available in Xero. It should be called when you need to access or display payment service options.", + "parameters": [ + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Xero tenant. Required to retrieve specific payment services for the tenant.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["paymentservices"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPaymentServices'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrievePaymentServices", + "parameters": { + "xero_tenant_id": { + "value": "12345abcde", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePoAttachmentByFilename", + "qualifiedName": "XeroApi.RetrievePoAttachmentByFilename", + "fullyQualifiedName": "XeroApi.RetrievePoAttachmentByFilename@2.0.0", + "description": "Retrieve a purchase order attachment by filename.\n\nUse this tool to get a specific attachment from a purchase order in Xero by providing the filename. It's useful for accessing documents linked to purchase orders.", + "parameters": [ + { + "name": "attachment_file_name", + "type": "string", + "required": true, + "description": "Name of the attachment file to be retrieved from the purchase order.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file to retrieve, e.g., image/jpg or application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "purchase_order_id", + "type": "string", + "required": true, + "description": "Unique identifier for the purchase order you want to retrieve the attachment from.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero unique identifier for the tenant organization. Required to specify which organization's data to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPurchaseOrderAttachmentByFileName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrievePoAttachmentByFilename", + "parameters": { + "attachment_file_name": { + "value": "invoice_12345.pdf", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "purchase_order_id": { + "value": "PO-56789", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant-abc123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePrepayments", + "qualifiedName": "XeroApi.RetrievePrepayments", + "fullyQualifiedName": "XeroApi.RetrievePrepayments@2.0.0", + "description": "Retrieve prepayment details from Xero.\n\nUse this tool to fetch prepayment information from the Xero API, providing insights into prepayment transactions.", + "parameters": [ + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the Tenant. Required for specifying which account's prepayments to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_condition", + "type": "string", + "required": false, + "description": "Provide a filter condition to specify which prepayments to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Only return records created or modified since the specified timestamp (e.g., '2023-10-01T00:00:00Z').", + "enum": null, + "inferrable": true + }, + { + "name": "order_criteria", + "type": "string", + "required": false, + "description": "Specifies the order of elements. Use field names for custom sorting, such as 'Date ASC' or 'Amount DESC'.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specify the page number to retrieve, up to 100 prepayments per page.", + "enum": null, + "inferrable": true + }, + { + "name": "records_per_page", + "type": "integer", + "required": false, + "description": "The number of prepayment records to retrieve per page. This controls how many results are returned in a single call.", + "enum": null, + "inferrable": true + }, + { + "name": "unit_decimal_places", + "type": "integer", + "required": false, + "description": "Specify the number of decimal places (e.g., 4) for unit amounts. Use for precise calculations.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPrepayments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrievePrepayments", + "parameters": { + "xero_tenant_identifier": { + "value": "12345678-abcd-efgh-ijkl-56789mnopqrst", + "type": "string", + "required": true + }, + "filter_condition": { + "value": "status='Pending'", + "type": "string", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "order_criteria": { + "value": "Date DESC", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "records_per_page": { + "value": 50, + "type": "integer", + "required": false + }, + "unit_decimal_places": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePurchaseOrder", + "qualifiedName": "XeroApi.RetrievePurchaseOrder", + "fullyQualifiedName": "XeroApi.RetrievePurchaseOrder@2.0.0", + "description": "Retrieve details of a specific purchase order by ID.\n\nUse this tool to obtain information about a particular purchase order by specifying its unique ID. Ideal for retrieving order details when managing inventory or processing transactions.", + "parameters": [ + { + "name": "purchase_order_id", + "type": "string", + "required": true, + "description": "Unique identifier for a purchase order. Required to retrieve specific purchase order details.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant. This is required to specify which tenant's purchase order to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPurchaseOrder'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrievePurchaseOrder", + "parameters": { + "purchase_order_id": { + "value": "PO123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TENANT987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePurchaseOrderAttachments", + "qualifiedName": "XeroApi.RetrievePurchaseOrderAttachments", + "fullyQualifiedName": "XeroApi.RetrievePurchaseOrderAttachments@2.0.0", + "description": "Retrieve attachments for a specific purchase order.\n\nThis tool retrieves all attachments associated with a given purchase order in Xero. It should be called when you need to access or review files linked to a specific purchase order.", + "parameters": [ + { + "name": "purchase_order_id", + "type": "string", + "required": true, + "description": "Unique identifier for a purchase order to retrieve its attachments.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant linked to the purchase order. Required to authenticate and access tenant-specific data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPurchaseOrderAttachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrievePurchaseOrderAttachments", + "parameters": { + "purchase_order_id": { + "value": "PO-123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "TENANT-987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePurchaseOrderByNumber", + "qualifiedName": "XeroApi.RetrievePurchaseOrderByNumber", + "fullyQualifiedName": "XeroApi.RetrievePurchaseOrderByNumber@2.0.0", + "description": "Fetches a purchase order using its unique number.\n\nUse this tool to retrieve detailed information about a specific purchase order by providing its unique order number.", + "parameters": [ + { + "name": "purchase_order_number", + "type": "string", + "required": true, + "description": "Unique identifier for the purchase order to be fetched.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Xero tenant. Required to specify the account from which to retrieve the purchase order.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPurchaseOrderByNumber'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrievePurchaseOrderByNumber", + "parameters": { + "purchase_order_number": { + "value": "PO123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant_7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePurchaseOrderHistory", + "qualifiedName": "XeroApi.RetrievePurchaseOrderHistory", + "fullyQualifiedName": "XeroApi.RetrievePurchaseOrderHistory@2.0.0", + "description": "Retrieve the history of a specific purchase order.\n\nUse this tool to obtain historical details for a specified purchase order by its ID. It provides insights into changes and updates made to the order over time.", + "parameters": [ + { + "name": "purchase_order_id", + "type": "string", + "required": true, + "description": "Unique identifier for the purchase order to retrieve its history.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant, required to specify which organization data belongs to.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPurchaseOrderHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrievePurchaseOrderHistory", + "parameters": { + "purchase_order_id": { + "value": "PO123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant_abc_xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrievePurchaseOrders", + "qualifiedName": "XeroApi.RetrievePurchaseOrders", + "fullyQualifiedName": "XeroApi.RetrievePurchaseOrders@2.0.0", + "description": "Retrieve purchase orders from Xero.\n\nUse this tool to obtain purchase orders from Xero. Call when you need a list of purchase orders with details such as order status, dates, and amounts.", + "parameters": [ + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Unique identifier for the Xero tenant to access specific organization's data.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_end_date", + "type": "string", + "required": false, + "description": "Filter purchase orders by end date (format: YYYY-MM-DD).", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_start_date", + "type": "string", + "required": false, + "description": "Specify the start date for filtering purchase orders. Use format 'YYYY-MM-DD'.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_status", + "type": "string", + "required": false, + "description": "Filter purchase orders by status. Accepted values are: 'DRAFT', 'SUBMITTED', 'AUTHORISED', 'BILLED', 'DELETED'.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Timestamp to filter records created or modified since this time. Use ISO 8601 format (e.g., '2023-01-01T00:00:00Z').", + "enum": null, + "inferrable": true + }, + { + "name": "order_by_element", + "type": "string", + "required": false, + "description": "Specifies the element by which to sort the purchase orders, such as date or status. Accepts any valid field name.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "Specifies the page of results to retrieve. Increment to access subsequent pages of purchase orders.", + "enum": null, + "inferrable": true + }, + { + "name": "records_per_page", + "type": "integer", + "required": false, + "description": "Specify the number of purchase order records to retrieve per page.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getPurchaseOrders'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrievePurchaseOrders", + "parameters": { + "xero_tenant_id": { + "value": "12345abcde", + "type": "string", + "required": true + }, + "filter_by_end_date": { + "value": "2023-12-31", + "type": "string", + "required": false + }, + "filter_by_start_date": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "filter_by_status": { + "value": "AUTHORISED", + "type": "string", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-06-01T00:00:00Z", + "type": "string", + "required": false + }, + "order_by_element": { + "value": "date", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "records_per_page": { + "value": 25, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveQuote", + "qualifiedName": "XeroApi.RetrieveQuote", + "fullyQualifiedName": "XeroApi.RetrieveQuote@2.0.0", + "description": "Retrieve details of a specific quote by ID.\n\nCall this tool to obtain detailed information about a specific quote using its unique QuoteID.", + "parameters": [ + { + "name": "quote_id", + "type": "string", + "required": true, + "description": "Unique identifier for a quote to retrieve its details.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Provide the Xero identifier for the tenant to specify the account context.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getQuote'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveQuote", + "parameters": { + "quote_id": { + "value": "Q-123456", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant_78910", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveQuoteAttachmentByFilename", + "qualifiedName": "XeroApi.RetrieveQuoteAttachmentByFilename", + "fullyQualifiedName": "XeroApi.RetrieveQuoteAttachmentByFilename@2.0.0", + "description": "Retrieve an attachment from a quote using filename.\n\nCall this tool to obtain a specific attachment from a quote by specifying the filename. Ideal for accessing quote-related documents stored in the Xero system.", + "parameters": [ + { + "name": "attachment_filename", + "type": "string", + "required": true, + "description": "Name of the attachment file to retrieve from the quote.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file (e.g., image/jpg, application/pdf).", + "enum": null, + "inferrable": true + }, + { + "name": "quote_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for a Quote. Use this to specify which quote's attachment you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero tenant's unique identifier. Required to specify which tenant's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getQuoteAttachmentByFileName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveQuoteAttachmentByFilename", + "parameters": { + "attachment_filename": { + "value": "invoice_attachment.pdf", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "quote_identifier": { + "value": "Q123456", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "T987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveQuoteAttachments", + "qualifiedName": "XeroApi.RetrieveQuoteAttachments", + "fullyQualifiedName": "XeroApi.RetrieveQuoteAttachments@2.0.0", + "description": "Retrieve attachments for a specific quote in Xero.\n\nThis tool retrieves all attachments related to a specified quote in Xero. It should be called when you need to access or view the files linked to a given quote ID.", + "parameters": [ + { + "name": "quote_id", + "type": "string", + "required": true, + "description": "Unique identifier for a quote in Xero to retrieve its attachments.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero tenant identifier required to retrieve the quote attachments.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getQuoteAttachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveQuoteAttachments", + "parameters": { + "quote_id": { + "value": "12345", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "abcd1234efgh5678ijkl", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveQuoteHistory", + "qualifiedName": "XeroApi.RetrieveQuoteHistory", + "fullyQualifiedName": "XeroApi.RetrieveQuoteHistory@2.0.0", + "description": "Retrieves history records of a specific quote.\n\nUse this tool to get the history records for a specific quote using its ID. Ideal for tracking changes and updates to the quote over time.", + "parameters": [ + { + "name": "quote_id", + "type": "string", + "required": true, + "description": "Unique identifier for the quote to retrieve its history records.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant. Required to specify which tenant's quote history to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getQuoteHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveQuoteHistory", + "parameters": { + "quote_id": { + "value": "QUID-12345", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "TID-67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveQuotePdf", + "qualifiedName": "XeroApi.RetrieveQuotePdf", + "fullyQualifiedName": "XeroApi.RetrieveQuotePdf@2.0.0", + "description": "Retrieve a specific quote as a PDF file using the quote ID.\n\nThis tool fetches a specific quote as a PDF using its unique ID. Call this when you need to obtain the PDF version of a quote for viewing, sharing, or archiving.", + "parameters": [ + { + "name": "quote_id", + "type": "string", + "required": true, + "description": "A unique identifier for the quote to retrieve as a PDF.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero tenant identifier required to access the specific quote.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getQuoteAsPdf'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveQuotePdf", + "parameters": { + "quote_id": { + "value": "Q123456789", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "T123456", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveReceiptAttachment", + "qualifiedName": "XeroApi.RetrieveReceiptAttachment", + "fullyQualifiedName": "XeroApi.RetrieveReceiptAttachment@2.0.0", + "description": "Retrieve a specific attachment from an expense receipt.\n\nUse this tool to obtain a specific attachment from an expense claim receipt by providing the unique attachment ID.", + "parameters": [ + { + "name": "attachment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the attachment object you want to retrieve.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "Specify the MIME type of the attachment, e.g., 'image/jpg' or 'application/pdf'.", + "enum": null, + "inferrable": true + }, + { + "name": "receipt_id", + "type": "string", + "required": true, + "description": "Unique identifier for a receipt used to retrieve its attachment.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. Required to specify which tenant's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReceiptAttachmentById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveReceiptAttachment", + "parameters": { + "attachment_id": { + "value": "abc12345xyz", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "receipt_id": { + "value": "receipt67890", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant54321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveReceiptHistory", + "qualifiedName": "XeroApi.RetrieveReceiptHistory", + "fullyQualifiedName": "XeroApi.RetrieveReceiptHistory@2.0.0", + "description": "Retrieve detailed history for a specific receipt.\n\nThis tool retrieves the history record of a specific receipt from the Xero service. It should be called when users want to review or analyze the history or changes associated with a receipt.", + "parameters": [ + { + "name": "receipt_id", + "type": "string", + "required": true, + "description": "Unique identifier for the receipt to retrieve its history.", + "enum": null, + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": true, + "description": "The unique Xero identifier for the tenant associated with the receipt.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReceiptHistory'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveReceiptHistory", + "parameters": { + "receipt_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "tenant7890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveRepeatingInvoiceAttachment", + "qualifiedName": "XeroApi.RetrieveRepeatingInvoiceAttachment", + "fullyQualifiedName": "XeroApi.RetrieveRepeatingInvoiceAttachment@2.0.0", + "description": "Retrieve a repeating invoice attachment by file name.\n\nUse this tool to obtain a specific attachment from a repeating invoice using the file name. Ideal for accessing invoice-related files directly from the system.", + "parameters": [ + { + "name": "attachment_file_name", + "type": "string", + "required": true, + "description": "The name of the attachment file you wish to retrieve from the repeating invoice.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "Specify the MIME type of the attachment file to retrieve, such as image/jpg or application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "repeating_invoice_id", + "type": "string", + "required": true, + "description": "Unique identifier for a specific repeating invoice. This is necessary to locate the invoice attachment.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero tenant ID needed to identify the specific organization in Xero.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRepeatingInvoiceAttachmentByFileName'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveRepeatingInvoiceAttachment", + "parameters": { + "attachment_file_name": { + "value": "invoice_attachment_2023.pdf", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "repeating_invoice_id": { + "value": "12345678-1234-1234-1234-123456789abc", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveRepeatingInvoiceAttachmentById", + "qualifiedName": "XeroApi.RetrieveRepeatingInvoiceAttachmentById", + "fullyQualifiedName": "XeroApi.RetrieveRepeatingInvoiceAttachmentById@2.0.0", + "description": "Retrieve a specific attachment from a repeating invoice.\n\nUse this tool to get a particular attachment from a specific repeating invoice in Xero.", + "parameters": [ + { + "name": "attachment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the attachment object you want to retrieve from the repeating invoice.", + "enum": null, + "inferrable": true + }, + { + "name": "attachment_mime_type", + "type": "string", + "required": true, + "description": "The MIME type of the attachment file, such as image/jpg or application/pdf.", + "enum": null, + "inferrable": true + }, + { + "name": "repeating_invoice_id", + "type": "string", + "required": true, + "description": "Unique identifier for a Repeating Invoice in Xero system.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant needed to retrieve the repeating invoice attachment.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRepeatingInvoiceAttachmentById'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveRepeatingInvoiceAttachmentById", + "parameters": { + "attachment_id": { + "value": "att_123456789", + "type": "string", + "required": true + }, + "attachment_mime_type": { + "value": "application/pdf", + "type": "string", + "required": true + }, + "repeating_invoice_id": { + "value": "inv_987654321", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant_123xyz", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveRepeatingInvoiceAttachments", + "qualifiedName": "XeroApi.RetrieveRepeatingInvoiceAttachments", + "fullyQualifiedName": "XeroApi.RetrieveRepeatingInvoiceAttachments@2.0.0", + "description": "Retrieve attachments from a specified repeating invoice.\n\nThis tool retrieves attachments from a specific repeating invoice in Xero. Use it to access files associated with recurring invoices.", + "parameters": [ + { + "name": "repeating_invoice_id", + "type": "string", + "required": true, + "description": "Unique identifier for a repeating invoice in Xero. Needed to retrieve the corresponding attachments.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the Xero tenant. Required to access specific tenant data.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.attachments", "accounting.attachments.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getRepeatingInvoiceAttachments'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveRepeatingInvoiceAttachments", + "parameters": { + "repeating_invoice_id": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant-uuid-98765", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSalesQuotes", + "qualifiedName": "XeroApi.RetrieveSalesQuotes", + "fullyQualifiedName": "XeroApi.RetrieveSalesQuotes@2.0.0", + "description": "Retrieve sales quotes from Xero.\n\nThis tool fetches sales quotes from Xero, providing details of quotes issued. Use it to obtain current sales quotations.", + "parameters": [ + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero tenant identifier for accessing the specific account's data.", + "enum": null, + "inferrable": true + }, + { + "name": "contact_id", + "type": "string", + "required": false, + "description": "Filter the sales quotes by specifying the contact ID to which they belong.", + "enum": null, + "inferrable": true + }, + { + "name": "expiry_date_after", + "type": "string", + "required": false, + "description": "Filter to retrieve quotes expiring after the specified date. Format: YYYY-MM-DD.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_date_to", + "type": "string", + "required": false, + "description": "Filter for sales quotes before a specified date in YYYY-MM-DD format.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_expiry_date_before", + "type": "string", + "required": false, + "description": "Filter for quotes expiring before a specified date (YYYY-MM-DD).", + "enum": null, + "inferrable": true + }, + { + "name": "filter_start_date", + "type": "string", + "required": false, + "description": "Filter quotes issued after a specified date in YYYY-MM-DD format.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Retrieve records created or modified after this timestamp.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by_element", + "type": "string", + "required": false, + "description": "Specify the element to order the sales quotes by.", + "enum": null, + "inferrable": true + }, + { + "name": "page_number", + "type": "integer", + "required": false, + "description": "The page number to retrieve, allowing pagination through quotes. Each page returns up to 100 quotes.", + "enum": null, + "inferrable": true + }, + { + "name": "quote_number_filter", + "type": "string", + "required": false, + "description": "Filter sales quotes by specifying the quote number (e.g., QU-0001).", + "enum": null, + "inferrable": true + }, + { + "name": "quote_status", + "type": "string", + "required": false, + "description": "Filter quotes by their status (e.g., DRAFT, SENT).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getQuotes'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveSalesQuotes", + "parameters": { + "xero_tenant_id": { + "value": "12345678-abcd-ef12-3456-7890abcdef12", + "type": "string", + "required": true + }, + "contact_id": { + "value": "98765432-wxyz-zyxw-vuts-1234567890ab", + "type": "string", + "required": false + }, + "expiry_date_after": { + "value": "2023-10-01", + "type": "string", + "required": false + }, + "filter_date_to": { + "value": "2023-09-30", + "type": "string", + "required": false + }, + "filter_expiry_date_before": { + "value": "2023-10-15", + "type": "string", + "required": false + }, + "filter_start_date": { + "value": "2023-08-01", + "type": "string", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-09-01T12:00:00Z", + "type": "string", + "required": false + }, + "order_by_element": { + "value": "expiry_date", + "type": "string", + "required": false + }, + "page_number": { + "value": 1, + "type": "integer", + "required": false + }, + "quote_number_filter": { + "value": "QU-0001", + "type": "string", + "required": false + }, + "quote_status": { + "value": "SENT", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSpecificJournal", + "qualifiedName": "XeroApi.RetrieveSpecificJournal", + "fullyQualifiedName": "XeroApi.RetrieveSpecificJournal@2.0.0", + "description": "Retrieve a specific journal using its unique ID.\n\nCall this tool to get detailed information about a particular journal by specifying its unique identifier. Useful for accessing specific journal entries in the Xero system.", + "parameters": [ + { + "name": "journal_id", + "type": "string", + "required": true, + "description": "Unique identifier for the journal to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "A unique identifier for the Xero tenant. Required to specify which tenant's journal should be accessed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.journals.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getJournal'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveSpecificJournal", + "parameters": { + "journal_id": { + "value": "JRN12345678", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "TEN98765432", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSpecificOverpayment", + "qualifiedName": "XeroApi.RetrieveSpecificOverpayment", + "fullyQualifiedName": "XeroApi.RetrieveSpecificOverpayment@2.0.0", + "description": "Retrieve details of a specific overpayment by ID.\n\nUse this tool to obtain information about a specific overpayment using its unique identifier. Ideal for accessing precise overpayment records within Xero.", + "parameters": [ + { + "name": "overpayment_id", + "type": "string", + "required": true, + "description": "Unique identifier for the overpayment to be retrieved. This ID is required to fetch the specific details of the overpayment from Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant. Required to specify which organization's data to access.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.transactions.read", "accounting.transactions"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOverpayment'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveSpecificOverpayment", + "parameters": { + "overpayment_id": { + "value": "OP123456", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "TENANT123", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSpecificReport", + "qualifiedName": "XeroApi.RetrieveSpecificReport", + "fullyQualifiedName": "XeroApi.RetrieveSpecificReport@2.0.0", + "description": "Retrieve a specific report using a ReportID.\n\nThis tool fetches a specific report from Xero using a unique ReportID. It should be called when detailed information about a particular report is needed.", + "parameters": [ + { + "name": "report_id", + "type": "string", + "required": true, + "description": "Unique identifier for a specific report to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. This is required to specify which tenant's data is being accessed.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.reports.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportFromId'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveSpecificReport", + "parameters": { + "report_id": { + "value": "12345678", + "type": "string", + "required": true + }, + "xero_tenant_id": { + "value": "tenant_987654321", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveSpecificUser", + "qualifiedName": "XeroApi.RetrieveSpecificUser", + "fullyQualifiedName": "XeroApi.RetrieveSpecificUser@2.0.0", + "description": "Retrieve details of a specific user from Xero.\n\nUse this tool to obtain information about a specific user by providing their UserID. It is called when user details from Xero are needed.", + "parameters": [ + { + "name": "user_identifier", + "type": "string", + "required": true, + "description": "Unique identifier for a User in Xero system.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. Use this to specify which tenant the user belongs to.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUser'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveSpecificUser", + "parameters": { + "user_identifier": { + "value": "1234567", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "tenant_987654", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveTaxRates", + "qualifiedName": "XeroApi.RetrieveTaxRates", + "fullyQualifiedName": "XeroApi.RetrieveTaxRates@2.0.0", + "description": "Retrieve tax rates from Xero.\n\nUse this tool to obtain the current tax rates available in Xero. It should be called when you need up-to-date tax rate information for financial calculations or reporting.", + "parameters": [ + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "A unique identifier for the Xero tenant. This is required to access tenant-specific data.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_element", + "type": "string", + "required": false, + "description": "Apply a filter to the tax rates by specifying an element condition (e.g. 'Status==\"ACTIVE\"').", + "enum": null, + "inferrable": true + }, + { + "name": "order_by_element", + "type": "string", + "required": false, + "description": "Specify the element to order the tax rates by. Provide any valid field or attribute name.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getTaxRates'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveTaxRates", + "parameters": { + "xero_tenant_id": { + "value": "abc123456", + "type": "string", + "required": true + }, + "filter_by_element": { + "value": "Status=='ACTIVE'", + "type": "string", + "required": false + }, + "order_by_element": { + "value": "Rate", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveUniqueReportsList", + "qualifiedName": "XeroApi.RetrieveUniqueReportsList", + "fullyQualifiedName": "XeroApi.RetrieveUniqueReportsList@2.0.0", + "description": "Retrieve a list of unique reports from Xero.\n\nUse this tool to obtain a list of an organization's unique reports from Xero, each requiring a UUID for fetching.", + "parameters": [ + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "The unique identifier for the Xero tenant to retrieve reports for.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.reports.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getReportsList'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveUniqueReportsList", + "parameters": { + "xero_tenant_id": { + "value": "abc123-xyz456-ghi789-jkl012", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveXeroContact", + "qualifiedName": "XeroApi.RetrieveXeroContact", + "fullyQualifiedName": "XeroApi.RetrieveXeroContact@2.0.0", + "description": "Retrieve specific contact information from Xero.\n\nUse this tool to retrieve details of a specific contact in a Xero organization by providing a unique contact ID.", + "parameters": [ + { + "name": "contact_id", + "type": "string", + "required": true, + "description": "Provide the unique identifier for the contact to retrieve their information from Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the tenant in Xero, required to retrieve contact details.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.contacts.read", "accounting.contacts"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getContact'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveXeroContact", + "parameters": { + "contact_id": { + "value": "12345", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "67890", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveXeroItem", + "qualifiedName": "XeroApi.RetrieveXeroItem", + "fullyQualifiedName": "XeroApi.RetrieveXeroItem@2.0.0", + "description": "Retrieve a specific item from Xero using its ID.\n\nCall this tool when you need to fetch details about a particular item from Xero by providing its unique item ID.", + "parameters": [ + { + "name": "item_identifier", + "type": "string", + "required": true, + "description": "The unique identifier for the item in Xero. This is required to retrieve specific item details.", + "enum": null, + "inferrable": true + }, + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the Tenant. This is required to specify which tenant's data should be accessed.", + "enum": null, + "inferrable": true + }, + { + "name": "use_unit_decimal_places", + "type": "integer", + "required": false, + "description": "Specify the number of unit decimal places to use, e.g., 4 for four decimal places in unit amounts.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getItem'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveXeroItem", + "parameters": { + "item_identifier": { + "value": "123456", + "type": "string", + "required": true + }, + "xero_tenant_identifier": { + "value": "abc-tenant-xyz", + "type": "string", + "required": true + }, + "use_unit_decimal_places": { + "value": 2, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveXeroOrganisationActions", + "qualifiedName": "XeroApi.RetrieveXeroOrganisationActions", + "fullyQualifiedName": "XeroApi.RetrieveXeroOrganisationActions@2.0.0", + "description": "Retrieve key actions allowed in Xero organisation.\n\nUse this tool to get a list of the key actions your application is allowed to perform within a connected Xero organisation. This helps in understanding the permissions available.", + "parameters": [ + { + "name": "xero_tenant_id", + "type": "string", + "required": true, + "description": "Xero identifier for the tenant to specify which organisation's actions to retrieve.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getOrganisationActions'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveXeroOrganisationActions", + "parameters": { + "xero_tenant_id": { + "value": "12345678-abcd-efgh-ijkl-9876543210mn", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "RetrieveXeroUsers", + "qualifiedName": "XeroApi.RetrieveXeroUsers", + "fullyQualifiedName": "XeroApi.RetrieveXeroUsers@2.0.0", + "description": "Retrieve users from the Xero platform.\n\nCall this tool to fetch a list of users from the Xero platform when user information or management is required.", + "parameters": [ + { + "name": "xero_tenant_identifier", + "type": "string", + "required": true, + "description": "Xero identifier for the specific tenant. This is required to specify the tenant for which users are to be retrieved.", + "enum": null, + "inferrable": true + }, + { + "name": "filter_by_criteria", + "type": "string", + "required": false, + "description": "A string to filter users based on specific criteria in Xero.", + "enum": null, + "inferrable": true + }, + { + "name": "modified_since_timestamp", + "type": "string", + "required": false, + "description": "Return only records created or modified since this timestamp, formatted as an ISO 8601 string.", + "enum": null, + "inferrable": true + }, + { + "name": "order_by_element", + "type": "string", + "required": false, + "description": "Specify the element to order the retrieved users by, such as name or date.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings", "accounting.settings.read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'getUsers'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.RetrieveXeroUsers", + "parameters": { + "xero_tenant_identifier": { + "value": "abc123xyz456", + "type": "string", + "required": true + }, + "filter_by_criteria": { + "value": "active", + "type": "string", + "required": false + }, + "modified_since_timestamp": { + "value": "2023-10-01T00:00:00Z", + "type": "string", + "required": false + }, + "order_by_element": { + "value": "name", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetupConversionDetails", + "qualifiedName": "XeroApi.SetupConversionDetails", + "fullyQualifiedName": "XeroApi.SetupConversionDetails@2.0.0", + "description": "Set up chart of accounts and conversion details in Xero.\n\nCall this tool to configure the chart of accounts, conversion date, and balances in Xero. Useful for initializing financial data during setup.\n\nNote: Understanding the request schema is necessary to properly create\nthe stringified JSON input object for execution.\n\nModes:\n- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't\n already have it. Do NOT call repeatedly if you already received\n the schema.\n- EXECUTE: Performs the operation with the provided request body\n JSON.\n\nIf you need the schema, call with mode='get_request_schema' ONCE, then execute.", + "parameters": [ + { + "name": "mode", + "type": "string", + "required": true, + "description": "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + "enum": ["get_request_schema", "execute"], + "inferrable": true + }, + { + "name": "tenant_identifier", + "type": "string", + "required": false, + "description": "The unique identifier for the tenant in Xero. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", + "enum": null, + "inferrable": true + }, + { + "name": "idempotency_key", + "type": "string", + "required": false, + "description": "A unique key to safely retry requests without duplicate processing. Max 128 characters. Only used when mode is 'execute'.", + "enum": null, + "inferrable": true + }, + { + "name": "request_body", + "type": "string", + "required": false, + "description": "Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["accounting.settings"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Response from the API endpoint 'postSetup'." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "XeroApi.SetupConversionDetails", + "parameters": { + "mode": { + "value": "execute", + "type": "string", + "required": true + }, + "tenant_identifier": { + "value": "12345-abcde-67890-fghij", + "type": "string", + "required": false + }, + "idempotency_key": { + "value": "unique-req-key-123456", + "type": "string", + "required": false + }, + "request_body": { + "value": "{\"chartOfAccounts\": [{\"code\": \"100\", \"name\": \"Cash\", \"type\": \"Asset\", \"balance\": 5000}, {\"code\": \"200\", \"name\": \"Accounts Payable\", \"type\": \"Liability\", \"balance\": 3000}], \"conversionDate\": \"2023-01-01\"}", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:48:08.808Z", + "summary": "The XeroApi toolkit enables seamless interaction with the Xero API for comprehensive accounting tasks. Designed for developers, it facilitates data retrieval and management in Xero.\n\n**Capabilities** \n- Integrate and automate accounting functions with Xero. \n- Access detailed financial reports and historical data. \n- Manage contacts, invoices, expenses, and transactions. \n- Record and track history for various accounting entities. \n- Fetch and manipulate attachments related to invoices and transactions.\n\n**OAuth** \nUtilizes OAuth 2.0 authentication with scopes including `accounting.attachments`, `accounting.contacts`, and more.\n\n**Secrets** \nNo secrets are required for this toolkit." +} diff --git a/data/toolkits/youtube.json b/data/toolkits/youtube.json new file mode 100644 index 000000000..16d4fb2b0 --- /dev/null +++ b/data/toolkits/youtube.json @@ -0,0 +1,171 @@ +{ + "id": "Youtube", + "label": "Youtube", + "version": "3.1.2", + "description": "Arcade.dev LLM tools for searching for YouTube videos"", + "metadata": { + "category": "search", + "iconUrl": "https://design-system.arcade.dev/icons/youtube.svg", + "isBYOC": true, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/search/youtube", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [ + { + "name": "GetYoutubeVideoDetails", + "qualifiedName": "Youtube.GetYoutubeVideoDetails", + "fullyQualifiedName": "Youtube.GetYoutubeVideoDetails@3.1.2", + "description": "Get details about a YouTube video.", + "parameters": [ + { + "name": "video_id", + "type": "string", + "required": true, + "description": "The ID of the YouTube video to get details about. E.g. 'dQw4w9WgXcQ'.", + "enum": null, + "inferrable": true + }, + { + "name": "language_code", + "type": "string", + "required": false, + "description": "2-character language code to search for. E.g. 'en' for English. Defaults to 'en'.", + "enum": null, + "inferrable": true + }, + { + "name": "country_code", + "type": "string", + "required": false, + "description": "2-character country code to search for. E.g. 'us' for United States. Defaults to 'None'.", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "Details about a YouTube video." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Youtube.GetYoutubeVideoDetails", + "parameters": { + "video_id": { + "value": "dQw4w9WgXcQ", + "type": "string", + "required": true + }, + "language_code": { + "value": "en", + "type": "string", + "required": false + }, + "country_code": { + "value": "us", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + }, + { + "name": "SearchForVideos", + "qualifiedName": "Youtube.SearchForVideos", + "fullyQualifiedName": "Youtube.SearchForVideos@3.1.2", + "description": "Search for YouTube videos related to the query.", + "parameters": [ + { + "name": "keywords", + "type": "string", + "required": true, + "description": "The keywords to search for. E.g. 'Python tutorial'.", + "enum": null, + "inferrable": true + }, + { + "name": "language_code", + "type": "string", + "required": false, + "description": "2-character language code to search for. E.g. 'en' for English. Defaults to 'en'.", + "enum": null, + "inferrable": true + }, + { + "name": "country_code", + "type": "string", + "required": false, + "description": "2-character country code to search for. E.g. 'us' for United States. Defaults to 'None'.", + "enum": null, + "inferrable": true + }, + { + "name": "next_page_token", + "type": "string", + "required": false, + "description": "The next page token to use for pagination. Defaults to `None` (start from the first page).", + "enum": null, + "inferrable": true + } + ], + "auth": null, + "secrets": ["SERP_API_KEY"], + "secretsInfo": [ + { + "name": "SERP_API_KEY", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "List of YouTube videos related to the query." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Youtube.SearchForVideos", + "parameters": { + "keywords": { + "value": "JavaScript tutorial", + "type": "string", + "required": true + }, + "language_code": { + "value": "en", + "type": "string", + "required": false + }, + "country_code": { + "value": "us", + "type": "string", + "required": false + }, + "next_page_token": { + "value": "None", + "type": "string", + "required": false + } + }, + "requiresAuth": false, + "tabLabel": "Call the Tool" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:46:54.196Z", + "summary": "Arcade.dev provides a toolkit for interacting with YouTube, enabling developers to search for videos and retrieve video details seamlessly. This toolkit simplifies tasks related to enhancing applications with YouTube content.\n\n**Capabilities** \n- Search for videos based on specific queries \n- Retrieve detailed information about YouTube videos \n- Supports integration of YouTube functionalities into applications \n- Allows quick access to video data for enhanced user experiences \n\n**OAuth** \n- No OAuth authentication required. \n\n**Secrets** \n- API Key: Use the `SERP_API_KEY` to authenticate API requests for video data." +} diff --git a/data/toolkits/zendesk.json b/data/toolkits/zendesk.json new file mode 100644 index 000000000..69caa9bd7 --- /dev/null +++ b/data/toolkits/zendesk.json @@ -0,0 +1,505 @@ +{ + "id": "Zendesk", + "label": "Zendesk", + "version": "0.3.1", + "description": "", + "metadata": { + "category": "customer-support", + "iconUrl": "https://design-system.arcade.dev/icons/zendesk.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/customer-support/zendesk", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": null, + "allScopes": ["read", "tickets:write"] + }, + "tools": [ + { + "name": "AddTicketComment", + "qualifiedName": "Zendesk.AddTicketComment", + "fullyQualifiedName": "Zendesk.AddTicketComment@0.3.1", + "description": "Add a comment to an existing Zendesk ticket.\n\nThe returned ticket object includes an 'html_url' field with the direct link\nto view the ticket in Zendesk.", + "parameters": [ + { + "name": "ticket_id", + "type": "integer", + "required": true, + "description": "The ID of the ticket to comment on", + "enum": null, + "inferrable": true + }, + { + "name": "comment_body", + "type": "string", + "required": true, + "description": "The text of the comment", + "enum": null, + "inferrable": true + }, + { + "name": "public", + "type": "boolean", + "required": false, + "description": "Whether the comment is public (visible to requester) or internal. Defaults to True", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tickets:write"] + }, + "secrets": ["ZENDESK_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "ZENDESK_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "A dictionary containing the result of the comment operation and ticket URL" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Zendesk.AddTicketComment", + "parameters": { + "ticket_id": { + "value": 123456, + "type": "integer", + "required": true + }, + "comment_body": { + "value": "This is an update on your ticket. Thank you for your patience.", + "type": "string", + "required": true + }, + "public": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetTicketComments", + "qualifiedName": "Zendesk.GetTicketComments", + "fullyQualifiedName": "Zendesk.GetTicketComments@0.3.1", + "description": "Get all comments for a specific Zendesk ticket, including the original description.\n\nThe first comment is always the ticket's original description/content.\nSubsequent comments show the conversation history.\n\nEach comment includes:\n- author_id: ID of the comment author\n- body: The comment text\n- created_at: Timestamp when comment was created\n- public: Whether the comment is public or internal\n- attachments: List of file attachments (if any) with file_name, content_url, size, etc.", + "parameters": [ + { + "name": "ticket_id", + "type": "integer", + "required": true, + "description": "The ID of the ticket to get comments for", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": ["ZENDESK_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "ZENDESK_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "A dictionary containing the ticket comments, metadata, and ticket URL" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Zendesk.GetTicketComments", + "parameters": { + "ticket_id": { + "value": 12345, + "type": "integer", + "required": true + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListTickets", + "qualifiedName": "Zendesk.ListTickets", + "fullyQualifiedName": "Zendesk.ListTickets@0.3.1", + "description": "List tickets from your Zendesk account with offset-based pagination.\n\nBy default, returns tickets sorted by ID with newest tickets first (desc).\n\nEach ticket in the response includes an 'html_url' field with the direct link\nto view the ticket in Zendesk.\n\nPAGINATION:\n- The response includes 'next_offset' when more results are available\n- To fetch the next batch, simply pass the 'next_offset' value as the 'offset' parameter\n- If 'next_offset' is not present, you've reached the end of available results", + "parameters": [ + { + "name": "status", + "type": "string", + "required": false, + "description": "The status of tickets to filter by. Defaults to 'open'", + "enum": ["new", "open", "pending", "solved", "closed"], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Number of tickets to return. Defaults to 30", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Number of tickets to skip before returning results. Defaults to 0", + "enum": null, + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Sort order for tickets by ID. 'asc' returns oldest first, 'desc' returns newest first. Defaults to 'desc'", + "enum": ["asc", "desc"], + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": ["ZENDESK_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "ZENDESK_SUBDOMAIN", + "type": "api_key" + } + ], + "output": { + "type": "json", + "description": "A dictionary containing tickets list (each with html_url), count, and pagination metadata. Includes 'next_offset' when more results are available" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Zendesk.ListTickets", + "parameters": { + "status": { + "value": "open", + "type": "string", + "required": false + }, + "limit": { + "value": 15, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "sort_order": { + "value": "desc", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "MarkTicketSolved", + "qualifiedName": "Zendesk.MarkTicketSolved", + "fullyQualifiedName": "Zendesk.MarkTicketSolved@0.3.1", + "description": "Mark a Zendesk ticket as solved, optionally with a final comment.\n\nThe returned ticket object includes an 'html_url' field with the direct link\nto view the ticket in Zendesk.", + "parameters": [ + { + "name": "ticket_id", + "type": "integer", + "required": true, + "description": "The ID of the ticket to mark as solved", + "enum": null, + "inferrable": true + }, + { + "name": "comment_body", + "type": "string", + "required": false, + "description": "Optional final comment to add when solving the ticket", + "enum": null, + "inferrable": true + }, + { + "name": "comment_public", + "type": "boolean", + "required": false, + "description": "Whether the comment is visible to the requester. Defaults to False", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["tickets:write"] + }, + "secrets": ["ZENDESK_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "ZENDESK_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "A dictionary containing the result of the solve operation" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Zendesk.MarkTicketSolved", + "parameters": { + "ticket_id": { + "value": 12345, + "type": "integer", + "required": true + }, + "comment_body": { + "value": "This ticket has been resolved. Please reach out if you have any further questions.", + "type": "string", + "required": false + }, + "comment_public": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchArticles", + "qualifiedName": "Zendesk.SearchArticles", + "fullyQualifiedName": "Zendesk.SearchArticles@0.3.1", + "description": "Search for Help Center articles in your Zendesk knowledge base.\n\nThis tool searches specifically for published knowledge base articles that provide\nsolutions and guidance to users. At least one search parameter (query or label_names)\nmust be provided.\n\nPAGINATION:\n- The response includes 'next_offset' when more results are available\n- To fetch the next batch, simply pass the 'next_offset' value as the 'offset' parameter\n- If 'next_offset' is not present, you've reached the end of available results\n- The tool automatically handles fetching from the correct page based on your offset\n\nIMPORTANT: ALL FILTERS CAN BE COMBINED IN A SINGLE CALL\nYou can combine multiple filters (query, labels, dates) in one search request.\nDo NOT make separate tool calls - combine all relevant filters together.", + "parameters": [ + { + "name": "query", + "type": "string", + "required": false, + "description": "Search text to match against articles. Supports quoted expressions for exact matching", + "enum": null, + "inferrable": true + }, + { + "name": "label_names", + "type": "array", + "innerType": "string", + "required": false, + "description": "List of label names to filter by (case-insensitive). Article must have at least one matching label. Available on Professional/Enterprise plans only", + "enum": null, + "inferrable": true + }, + { + "name": "created_after", + "type": "string", + "required": false, + "description": "Filter articles created after this date (format: YYYY-MM-DD)", + "enum": null, + "inferrable": true + }, + { + "name": "created_before", + "type": "string", + "required": false, + "description": "Filter articles created before this date (format: YYYY-MM-DD)", + "enum": null, + "inferrable": true + }, + { + "name": "created_at", + "type": "string", + "required": false, + "description": "Filter articles created on this exact date (format: YYYY-MM-DD)", + "enum": null, + "inferrable": true + }, + { + "name": "sort_by", + "type": "string", + "required": false, + "description": "Field to sort articles by. Defaults to relevance according to the search query", + "enum": ["created_at", "relevance"], + "inferrable": true + }, + { + "name": "sort_order", + "type": "string", + "required": false, + "description": "Sort order direction. Defaults to descending", + "enum": ["asc", "desc"], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Number of articles to return. Defaults to 30", + "enum": null, + "inferrable": true + }, + { + "name": "offset", + "type": "integer", + "required": false, + "description": "Number of articles to skip before returning results. Defaults to 0", + "enum": null, + "inferrable": true + }, + { + "name": "include_body", + "type": "boolean", + "required": false, + "description": "Include article body content in results. Bodies will be cleaned of HTML and truncated", + "enum": null, + "inferrable": true + }, + { + "name": "max_article_length", + "type": "integer", + "required": false, + "description": "Maximum length for article body content in characters. Set to None for no limit. Defaults to 500", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": ["ZENDESK_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "ZENDESK_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Article search results with pagination metadata. Includes 'next_offset' when more results are available. Simply use this value as the 'offset' parameter in your next call to fetch the next batch" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Zendesk.SearchArticles", + "parameters": { + "query": { + "value": "account setup", + "type": "string", + "required": false + }, + "label_names": { + "value": ["setup", "account"], + "type": "array", + "required": false + }, + "created_after": { + "value": "2021-01-01", + "type": "string", + "required": false + }, + "created_before": { + "value": "2023-01-01", + "type": "string", + "required": false + }, + "created_at": { + "value": null, + "type": "string", + "required": false + }, + "sort_by": { + "value": "created_at", + "type": "string", + "required": false + }, + "sort_order": { + "value": "ascending", + "type": "string", + "required": false + }, + "limit": { + "value": 10, + "type": "integer", + "required": false + }, + "offset": { + "value": 0, + "type": "integer", + "required": false + }, + "include_body": { + "value": true, + "type": "boolean", + "required": false + }, + "max_article_length": { + "value": 300, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "WhoAmI", + "qualifiedName": "Zendesk.WhoAmI", + "fullyQualifiedName": "Zendesk.WhoAmI@0.3.1", + "description": "Get comprehensive user profile and Zendesk account information.\n\nThis tool provides detailed information about the authenticated user including\ntheir name, email, role, organization details, and Zendesk account context.", + "parameters": [], + "auth": { + "providerId": null, + "providerType": "oauth2", + "scopes": ["read"] + }, + "secrets": ["ZENDESK_SUBDOMAIN"], + "secretsInfo": [ + { + "name": "ZENDESK_SUBDOMAIN", + "type": "unknown" + } + ], + "output": { + "type": "json", + "description": "Get comprehensive user profile and Zendesk account information." + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Zendesk.WhoAmI", + "parameters": {}, + "requiresAuth": true, + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T17:47:02.796Z", + "summary": "Arcade's Zendesk toolkit enables seamless integration with Zendesk's customer service platform, allowing developers to interact with tickets and knowledge base articles efficiently.\n\n**Capabilities** \n- Retrieve and manage ticket comments and statuses. \n- List and paginate through tickets for dynamic retrieval. \n- Search for Help Center articles using various parameters. \n- Fetch comprehensive user profiles and account information. \n\n**OAuth** \n- Auth Type: OAuth2 \n- Provider: Unknown \n- Scopes: read, tickets:write \n\n**Secrets** \n- Secret types: unknown, api_key \n- Example: ZENDESK_SUBDOMAIN " +} diff --git a/data/toolkits/zohobooksapi.json b/data/toolkits/zohobooksapi.json new file mode 100644 index 000000000..8ca8d3fa6 --- /dev/null +++ b/data/toolkits/zohobooksapi.json @@ -0,0 +1,39 @@ +{ + "id": "ZohoBooksApi", + "label": "Zoho Books API", + "version": "0.0.0", + "description": null, + "metadata": { + "category": "payments", + "iconUrl": "https://design-system.arcade.dev/icons/zoho-books.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade_starter", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/payments/zoho-books-api", + "isComingSoon": false, + "isHidden": false + }, + "auth": null, + "tools": [], + "documentationChunks": [ + { + "type": "section", + "location": "custom_section", + "position": "after", + "content": "## Secrets\n\nThis MCP Server requires the `ZOHO_SERVER_URL` secret to be configured. Learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets).\n\n### Getting your Zoho Server URL\n\nThe Zoho Server URL is the base URL for your Zoho account's data center. Zoho operates in multiple data centers around the world, and you must use the correct URL for your account.\n\nYour Zoho Server URL depends on which data center your account is registered in:\n\n| Data Center | Server URL |\n| ----------- | --------------------------- |\n| US | `https://books.zoho.com` |\n| EU | `https://books.zoho.eu` |\n| India | `https://books.zoho.in` |\n| Australia | `https://books.zoho.com.au` |\n| China | `https://books.zoho.com.cn` |\n\nTo determine which data center your account uses:\n\n1. Log in to your Zoho Books account\n2. Look at the URL in your browser's address bar\n3. The domain (`.com`, `.eu`, `.in`, `.com.au`, or `.com.cn`) indicates your data center\n\nFor example, if you access Zoho Books at `https://books.zoho.eu`, your server URL is `https://books.zoho.eu`.\n\nThe server URL is used as the base for all API requests. For example, when retrieving invoices, the full URL would be constructed as:\n\n```\n{zoho_server_url}/api/v3/invoices?organization_id=...\n```\n\nWhich would become `https://books.zoho.com/api/v3/invoices?organization_id=...` for US accounts.", + "header": "## Secrets" + }, + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The ZohoBooksApi MCP Server uses the Auth Provider with id `arcade-zoho` to connect to users' Zoho Books accounts. In order to use the MCP Server, you will need to configure the `arcade-zoho` auth provider.\nLearn how to configure the Zoho auth provider in the [Zoho auth provider documentation](/references/auth-providers/zoho).", + "header": "## Auth" + } + ], + "customImports": [ + "import StarterToolInfo from \"@/app/_components/starter-tool-info\";" + ], + "subPages": [], + "generatedAt": "2026-01-26T17:48:05.819Z" +} diff --git a/data/toolkits/zoom.json b/data/toolkits/zoom.json new file mode 100644 index 000000000..7480a1f59 --- /dev/null +++ b/data/toolkits/zoom.json @@ -0,0 +1,127 @@ +{ + "id": "Zoom", + "label": "Zoom", + "version": "1.0.1", + "description": "Arcade.dev LLM tools for Zoom", + "metadata": { + "category": "social", + "iconUrl": "https://design-system.arcade.dev/icons/zoom.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/social-communication/zoom", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "zoom", + "allScopes": [ + "meeting:read:invitation", + "meeting:read:list_upcoming_meetings" + ] + }, + "tools": [ + { + "name": "GetMeetingInvitation", + "qualifiedName": "Zoom.GetMeetingInvitation", + "fullyQualifiedName": "Zoom.GetMeetingInvitation@1.0.1", + "description": "Retrieve the invitation note for a specific Zoom meeting.", + "parameters": [ + { + "name": "meeting_id", + "type": "string", + "required": true, + "description": "The meeting's numeric ID (as a string).", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "zoom", + "providerType": "oauth2", + "scopes": ["meeting:read:invitation"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Meeting invitation string" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Zoom.GetMeetingInvitation", + "parameters": { + "meeting_id": { + "value": "123456789", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "zoom", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListUpcomingMeetings", + "qualifiedName": "Zoom.ListUpcomingMeetings", + "fullyQualifiedName": "Zoom.ListUpcomingMeetings@1.0.1", + "description": "List a Zoom user's upcoming meetings within the next 24 hours.", + "parameters": [ + { + "name": "user_id", + "type": "string", + "required": false, + "description": "The user's user ID or email address. Defaults to 'me' for the current user.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "zoom", + "providerType": "oauth2", + "scopes": ["meeting:read:list_upcoming_meetings"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "List of upcoming meetings within the next 24 hours" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Zoom.ListUpcomingMeetings", + "parameters": { + "user_id": { + "value": "example.user@domain.com", + "type": "string", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "zoom", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "markdown", + "location": "auth", + "position": "after", + "content": "The Arcade Zoom MCP Server uses the [Zoom auth provider](/references/auth-providers/zoom) to connect to users' Zoom accounts.", + "header": "## Auth" + } + ], + "customImports": [], + "subPages": [ + { + "type": "install", + "content": "# Arcade for Zoom\n\nimport { Steps, Callout } from \"nextra/components\";\nimport { SignupLink } from \"@/app/_components/analytics\";\nimport { ZoomAuthLink } from \"./zoom-auth-link\";\n\n## Integrate Arcade with your Zoom account\n\nArcade securely connects your AI agents to APIs, data, code, and other systems via Tools. Our Zoom integration allows Arcade's tools to connect to your Zoom account, helping you manage meetings and gather information more efficiently.\n\nYou can leverage this app in Arcade's Playground when you log in to the Arcade Dashboard, or in your own applications.\n\nWhile the Arcade app for Zoom does not directly expose a Large Language Model (LLM) to you, you will likely use Arcade's tools in conjunction with an LLM. When using LLMs, there's always potential to generate inaccurate responses, summaries, or other output.\n\nArcade's Zoom app brings Arcade's powerful AI tool-calling capabilities to your meeting management. The Arcade app for Zoom can:\n\n- List your upcoming meetings within the next 24 hours\n- Retrieve meeting invitation details for specific meetings\n- Find the participants and/or registrants for a specific meeting\n- and more!\n\nFor more details on what tools are available and what scopes they require, see the [Zoom MCP Server documentation](/resources/integrations/social-communication/zoom).\n\n\n The Arcade Zoom app requires an active Arcade account. If you don't have one\n yet,{\" \"}\n sign up for free\n .\n\n\n## How it works\n\n\n\n### Start using Arcade's Zoom tools\n\nUse Arcade's [tools for Zoom](/resources/integrations/social-communication/zoom) to:\n\n- List your upcoming meetings\n- Get meeting invitation details\n- Find meeting participants and registrants\n- and more!\n\nTry leveraging the Arcade Zoom tools in the Arcade Playground by [chatting with an LLM](https://api.arcade.dev/dashboard/playground/chat) asking, \"What meetings do I have scheduled today?\" or [executing Zoom tools directly](https://api.arcade.dev/dashboard/playground/execute?toolId=ListUpcomingMeetings&toolkits=%5B%5D&authProviders=%5B%5D&secrets=%5B%5D&input=%7B%22user_id%22%3A%22me%22%7D) without interacting with an LLM.\n\n\n When using LLMs with Zoom, responses may sometimes contain inaccuracies.\n Always review AI-generated content before taking action.\n\n\n\n\n## Support and troubleshooting\n\nIf you encounter any issues connecting Arcade to your Zoom account:\n\n1. Verify you've granted all required permissions during authorization\n2. Ensure your Zoom account is active and in good standing\n3. Check that you're using a compatible browser (Chrome, Firefox, Safari, or Edge)\n4. Clear your browser cache and cookies, then try again\n\n### Adding the Arcade Zoom app to your Zoom account\n\nIf using the Arcade playground directly did not work, you can try adding the Arcade Zoom app to your Zoom account by clicking the \"Connect with Zoom\" button below.\n\n\n\n\n You'll need to have a Zoom account with appropriate permissions to allow\n Arcade to access your Zoom data.\n\n\n### Authorize the requested permissions\n\nWhen connecting Arcade to your Zoom account, depending on which Arcade tools you'll be using, you'll be asked to authorize specific permissions:\n\n- **user:read:user** - Allows Arcade to access basic profile information\n- **user:read:email** - Enables Arcade to access your email address\n- **meeting:read:meetings** - Enables Arcade to list your upcoming meetings\n- **meeting:read:invitation** - Enables Arcade to read meeting invitation details\n\nThese permissions ensure Arcade can perform the necessary functions while protecting your privacy and security.\n\n### Removing the Arcade Zoom app\n\nTo remove the Arcade Zoom app from your Zoom account, you can do so by going to the [Zoom App Marketplace](https://marketplace.zoom.us/user/installed) and uninstalling the app.\n\nArcade only stores authentication tokens, not your Zoom data. These tokens become invalid when you uninstall the app and will eventually expire. To remove tokens immediately, delete the Zoom Auth Provider from the [Arcade Dashboard](https://api.arcade.dev/dashboard/auth/oauth).\n\n## Privacy and security\n\nArcade takes the security of your Zoom data seriously:\n\n- We only request the minimum permissions needed for our tools to function\n- Your Zoom credentials are never stored on our servers\n- All communication between Arcade and Zoom is encrypted\n- You can revoke Arcade's access to your Zoom account at any time through your [Zoom App Marketplace](https://marketplace.zoom.us/user/installed)\n\n## Next steps\n\nThe Arcade Zoom app is a sample of what Arcade can do with your Zoom account. For your own applications, you might want to [create your own Zoom app](/references/auth-providers/zoom). Creating your own Zoom application will allow you to brand the app, customize the permissions, and more.\n\n## Need help?\n\nIf you have any questions or need assistance:\n\n- Check our [Zoom MCP Server documentation](/resources/integrations/social-communication/zoom)\n- [Contact our support team](/resources/contact-us)\n", + "relativePath": "install/page.mdx" + } + ], + "generatedAt": "2026-01-26T17:47:24.635Z", + "summary": "Arcade.dev provides a toolkit for integrating with Zoom, enabling developers to leverage its functionalities in applications seamlessly. This toolkit allows for efficient access to Zoom meetings and invitations.\n\n**Capabilities**\n- Retrieve detailed information about specific Zoom meetings.\n- List upcoming meetings for a user within the next 24 hours.\n- Simplify access and interaction with Zoom's meeting management features.\n\n**OAuth**\n- Provider: Zoom \n- Scopes: meeting:read:invitation, meeting:read:list_upcoming_meetings \n\n**Secrets**\n- No secret types required for this toolkit." +} diff --git a/make_toolkit_docs/.env.sample b/make_toolkit_docs/.env.sample deleted file mode 100644 index bdef78c66..000000000 --- a/make_toolkit_docs/.env.sample +++ /dev/null @@ -1,6 +0,0 @@ -# OpenAI API key for generating documentation -OPENAI_API_KEY= - -# Path to the directory containing toolkit packages -# (e.g. "/Users/me/arcade-mcp/toolkits") -TOOLKITS_DIR= diff --git a/make_toolkit_docs/LICENSE.md b/make_toolkit_docs/LICENSE.md deleted file mode 100644 index dfbb8b76d..000000000 --- a/make_toolkit_docs/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2025, Arcade AI - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/make_toolkit_docs/__init__.py b/make_toolkit_docs/__init__.py deleted file mode 100644 index e69de29bb..000000000 diff --git a/make_toolkit_docs/__main__.py b/make_toolkit_docs/__main__.py deleted file mode 100644 index 38b9d654e..000000000 --- a/make_toolkit_docs/__main__.py +++ /dev/null @@ -1,430 +0,0 @@ -import asyncio -import importlib.metadata -import logging -import os -import subprocess -import sys -from functools import partial -from pathlib import Path - -import openai -from dotenv import load_dotenv -from InquirerPy import inquirer -from rich.console import Console - -from discovery import find_toolkits_directories -from docs_builder import ( - build_example_path, - build_examples, - build_toolkit_mdx, - build_toolkit_mdx_file_path, -) -from utils import ( - get_all_enumerations, - get_list_of_tools, - has_wrapper_tools_directory, - print_debug_func, - read_toolkit_metadata, - resolve_api_key, - standardize_dir_path, - write_file, -) - -console = Console() -ENV_FILE = Path(__file__).parent / ".env" - - -def save_toolkits_dir(toolkits_dir: str) -> None: - """Save toolkits directory to .env file.""" - # Read existing .env content - existing_content = {} - if ENV_FILE.exists(): - with open(ENV_FILE) as f: - for line in f: - line = line.strip() - if line and not line.startswith("#") and "=" in line: - key, value = line.split("=", 1) - existing_content[key] = value - - # Update or add TOOLKITS_DIR - existing_content["TOOLKITS_DIR"] = toolkits_dir - - # Write back to .env - with open(ENV_FILE, "w") as f: - for key, value in existing_content.items(): - f.write(f"{key}={value}\n") - - -def get_toolkits_dir() -> str: - """Get or prompt for the toolkits directory path. - - First tries to use saved directory, then auto-discovers, then prompts manually. - - Returns: - Path to the toolkits directory. - """ - toolkits_dir = os.getenv("TOOLKITS_DIR") - - # Try using saved directory - if toolkits_dir and os.path.isdir(toolkits_dir): - use_saved = inquirer.confirm( - message=f"Use saved toolkits directory: {toolkits_dir}?", - default=True, - ).execute() - - if use_saved: - return toolkits_dir - - # Try auto-discovery - console.print("\n[cyan]Searching for toolkits directories...[/cyan]") - discovered = find_toolkits_directories(console) - - if discovered: - if len(discovered) == 1: - # Only one found, use it directly - toolkits_dir = discovered[0] - console.print(f"\n✓ Using discovered directory: {toolkits_dir}", style="green") - save_toolkits_dir(toolkits_dir) - return toolkits_dir - else: - # Multiple found, let user choose - toolkits_dir = inquirer.select( - message="Multiple toolkits directories found. Select one:", - choices=[*discovered, "Enter path manually"], - ).execute() - - if toolkits_dir != "Enter path manually": - save_toolkits_dir(toolkits_dir) - return toolkits_dir - - # Fall back to manual entry - console.print("\n[yellow]No toolkits directories found automatically.[/yellow]") - - while True: - toolkits_dir = inquirer.filepath( - message="Path to toolkits directory:", - validate=lambda x: os.path.isdir(x), - only_directories=True, - ).execute() - - available_toolkits = get_available_toolkits(toolkits_dir) - if not available_toolkits: - console.print( - f"❌ No valid toolkits found in {toolkits_dir}. " - "A valid toolkit must contain at least one Python file with the @tool decorator.", - style="bold red", - ) - else: - save_toolkits_dir(toolkits_dir) - return toolkits_dir - - -def get_available_toolkits(toolkits_dir: str) -> list[str]: - """Get list of valid toolkits in the toolkits directory. - - A valid toolkit is a directory that contains at least one Python file - with the @tool decorator. - - Args: - toolkits_dir: Path to the toolkits directory. - - Returns: - List of toolkit names (directory names). - """ - toolkits_path = Path(toolkits_dir) - available_toolkits = [] - - for directory in toolkits_path.iterdir(): - if not directory.is_dir() or directory.name.startswith("."): - continue - - # Check if this directory contains any Python files with @tool decorator - has_tool = False - for py_file in directory.rglob("*.py"): - try: - content = py_file.read_text(encoding="utf-8") - if "@tool" in content: - has_tool = True - break - except Exception: - # Skip files that can't be read - continue - - if has_tool: - available_toolkits.append(directory.name) - - return available_toolkits - - -def get_selected_toolkit(console: Console) -> tuple[str, str] | None: - """Prompt user to select a toolkit from the configured toolkits directory. - - Returns: - Tuple of (toolkit_dir, toolkit_name) if successful, None otherwise. - """ - toolkits_dir = get_toolkits_dir() - - # Get list of available toolkits in the directory - available_toolkits = get_available_toolkits(toolkits_dir) - - if not available_toolkits: - console.print(f"❌ No valid toolkits found in {toolkits_dir}", style="bold red") - return None - - # Ask user to select a toolkit with fuzzy search - selected_toolkit = inquirer.fuzzy( - message="Select a toolkit (type to filter):", - choices=sorted(available_toolkits), - max_height="70%", - ).execute() - - toolkits_path = Path(toolkits_dir) - server_dir = str(toolkits_path / selected_toolkit) - server_name = selected_toolkit - - return (server_dir, server_name) - - -def run() -> None: - """Interactive command to generate documentation for a server.""" - load_dotenv(ENV_FILE) - - console.print("\n[bold cyan]📚 Arcade Documentation Generator[/bold cyan]\n") - - result = get_selected_toolkit(console) - if result is None: - return - - server_dir, server_name = result - - console.print(f"\n[cyan]Installing server from {server_dir}...[/cyan]") - try: - subprocess.run( - ["uv", "pip", "install", "--python", sys.executable, "-e", server_dir], - check=True, - capture_output=True, - text=True, - ) - - reload_cache() - - console.print("[green]✓[/green] Server installed successfully\n") - except subprocess.CalledProcessError as e: - console.print( - f"❌ Failed to install server: {e.stderr}", - style="bold red", - ) - return - - # Validate installation by checking if tools can be loaded - console.print("[cyan]Verifying installation...[/cyan]") - try: - tools = get_list_of_tools(server_name) - if not tools: - console.print( - f"❌ No tools found for toolkit '{server_name}'. The installation may be incomplete.", - style="bold red", - ) - return - console.print(f"[green]✓[/green] Found {len(tools)} tools\n") - except Exception as e: - console.print( - f"❌ Failed to load tools for '{server_name}': {e}\n" - "The package may need time to be recognized. Try running the command again.", - style="bold red", - ) - return - - docs_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) - - mcp_servers_path = os.path.join(docs_dir, "app", "en", "mcp-servers") - available_sections = [] - if os.path.exists(mcp_servers_path): - available_sections = [ - d for d in os.listdir(mcp_servers_path) - if os.path.isdir(os.path.join(mcp_servers_path, d)) and not d.startswith(".") - ] - - if not available_sections: - console.print(f"❌ No sections found in {mcp_servers_path}", style="bold red") - return - - docs_section = inquirer.select( - message="Docs section:", - choices=available_sections, - ).execute() - - if not docs_section: - console.print("❌ No section selected", style="bold red") - return - - openai_api_key = os.environ.get("OPENAI_API_KEY") - if not openai_api_key: - openai_api_key = inquirer.secret( - message="OpenAI API key:", - validate=lambda x: len(x) > 0, - ).execute() - - skip_tool_call_examples = not inquirer.confirm( - message="Generate tool call examples in Python and JavaScript?", - default=True, - ).execute() - - # Only ask for max concurrency if we're generating examples - if not skip_tool_call_examples: - max_concurrency = int(inquirer.number( - message="Max concurrency for OpenAI API requests:", - default=5, - min_allowed=1, - max_allowed=20, - ).execute()) - else: - max_concurrency = 5 # Default value, won't be used - - console.print("\n[bold green]✓[/bold green] Starting documentation generation...\n") - - try: - success = generate_mcp_server_docs( - console=console, - toolkit_name=server_name, - toolkit_dir=server_dir, - docs_dir=docs_dir, - docs_section=docs_section, - openai_model="gpt-4o-mini", - openai_api_key=openai_api_key, - tool_call_examples=not skip_tool_call_examples, - debug=True, - max_concurrency=max_concurrency, - tools=tools, - ) - except Exception as error: - import traceback - traceback.print_exc() - console.print( - f"Failed to generate documentation for '{server_name}' in '{docs_dir}' ({type(error).__name__}: {error!s})", - style="bold red", - ) - success = False - - if success: - console.print( - f"Generated documentation for '{server_name}' in '{docs_dir}'", - style="bold green", - ) - else: - console.print( - f"Failed to generate documentation for '{server_name}' in '{docs_dir}'", - style="bold red", - ) - - -def reload_cache() -> None: - """Reload the import cache to pick up newly installed packages.""" - # Clear all import caches to pick up newly installed packages - if hasattr(importlib.metadata, '_cache'): - importlib.metadata._cache.clear() - - # Clear distributions cache - try: - importlib.metadata.distributions.cache_clear() - except AttributeError: - pass - - # Clear entry points cache - try: - importlib.metadata.entry_points.cache_clear() - except AttributeError: - pass - - # Also clear sys.meta_path caches if they exist - for finder in sys.meta_path: - if hasattr(finder, 'invalidate_caches'): - finder.invalidate_caches() - - # Force reload of sys.path to pick up new .egg-link or .pth files - import site - importlib.reload(site) - - -def generate_mcp_server_docs( - console: Console, - toolkit_name: str, - toolkit_dir: str, - docs_section: str, - docs_dir: str, - openai_model: str, - openai_api_key: str | None = None, - tool_call_examples: bool = True, - debug: bool = False, - max_concurrency: int = 5, - tools: list | None = None, -) -> bool: - openai.api_key = resolve_api_key(openai_api_key, "OPENAI_API_KEY") - - if not openai.api_key: - console.print( - "❌ Provide --openai-api-key argument or set the OPENAI_API_KEY environment variable", - style="red", - ) - return False - - print_debug = partial(print_debug_func, debug, console) - - docs_dir = standardize_dir_path(docs_dir) - toolkit_dir = standardize_dir_path(toolkit_dir) - is_wrapper_toolkit = has_wrapper_tools_directory(toolkit_dir) - - print_debug("Reading server metadata") - pip_package_name = read_toolkit_metadata(toolkit_dir) - - # Use provided tools or fetch them - if tools is None: - print_debug(f"Getting list of tools for {toolkit_name} from the local Python environment") - tools = get_list_of_tools(toolkit_name) - - print_debug(f"Found {len(tools)} tools") - - print_debug("Getting all enumerations potentially used in tool argument specs") - enums = get_all_enumerations(toolkit_dir) - - toolkit_mdx_file_path = build_toolkit_mdx_file_path(docs_section, docs_dir, toolkit_name) - print_debug(f"Building {toolkit_mdx_file_path} file") - toolkit_mdx = build_toolkit_mdx( - toolkit_package_name=toolkit_name, - toolkit_dir=toolkit_dir, - tools=tools, - docs_section=docs_section, - enums=enums, - pip_package_name=pip_package_name, - openai_model=openai_model, - is_wrapper_toolkit=is_wrapper_toolkit, - ) - write_file(toolkit_mdx_file_path, toolkit_mdx) - - if tool_call_examples: - print_debug("Building tool-call examples in Python and JavaScript") - - examples = asyncio.run( - build_examples( - print_debug=print_debug, - tools=tools, - openai_model=openai_model, - max_concurrency=max_concurrency, - ) - ) - - for filename, example in examples: - example_path = build_example_path(filename, docs_dir, toolkit_name) - write_file(example_path, example) - - print_debug(f"Done generating docs for {toolkit_name}") - - return True - - -if __name__ == "__main__": - try: - run() - except KeyboardInterrupt: - console.print("\n\n❌ Cancelled by user", style="bold red") - sys.exit(1) diff --git a/make_toolkit_docs/discovery.py b/make_toolkit_docs/discovery.py deleted file mode 100644 index ccd3b4b9d..000000000 --- a/make_toolkit_docs/discovery.py +++ /dev/null @@ -1,126 +0,0 @@ -"""Directory discovery logic for finding toolkits and servers.""" - -import logging -from pathlib import Path - -from rich.console import Console - - -def find_tool_files_recursive(search_path: Path, depth: int = 0, max_depth: int = 3) -> list[Path]: - """Recursively find Python files up to max_depth. - - Args: - search_path: The directory to search in. - depth: Current recursion depth. - max_depth: Maximum recursion depth. - - Returns: - List of Python file paths found. - """ - tool_files_found = [] - - if depth > max_depth: - return tool_files_found - - try: - for item in search_path.iterdir(): - if item.name.startswith(".") or item.name in {"__pycache__", "venv", ".venv"}: - continue - - if item.is_file() and item.suffix == ".py": - tool_files_found.append(item) - elif item.is_dir(): - tool_files_found.extend(find_tool_files_recursive(item, depth + 1, max_depth)) - except (PermissionError, OSError): - pass - - return tool_files_found - - -def validate_toolkits_directory(directory: Path, analyze_files_for_tools) -> bool: - """Check if a directory contains valid toolkits with tools. - - Args: - directory: The directory to validate. - analyze_files_for_tools: Function from arcade_core.discovery to analyze files. - - Returns: - True if the directory contains valid toolkits, False otherwise. - """ - try: - for toolkit_subdir in directory.iterdir(): - if not toolkit_subdir.is_dir() or toolkit_subdir.name.startswith("."): - continue - - tool_files = find_tool_files_recursive(toolkit_subdir) - if tool_files and analyze_files_for_tools(tool_files): - return True - except (PermissionError, OSError): - pass - - return False - - -def find_toolkits_directories(console: Console, max_depth: int = 5) -> list[str]: - """Scan the filesystem starting from home directory to find 'toolkits' directories - and 'starter-tools/servers' directories. - - Uses arcade_core.discovery to validate that directories contain actual tools. - - Args: - console: Rich console for output. - max_depth: Maximum depth to search (default: 5 levels from home). - - Returns: - List of valid toolkits directory paths. - """ - try: - from loguru import logger - logger.disable("arcade_core.discovery") - except ImportError: - logging.getLogger("arcade_core.discovery").setLevel(logging.WARNING) - - from arcade_core.discovery import analyze_files_for_tools - - home = Path.home() - candidates = [] - - console.print("🔍 Scanning for toolkits directories...", style="cyan") - - def walk_directory(path: Path, current_depth: int): - if current_depth > max_depth: - return - - try: - for entry in path.iterdir(): - if entry.name.startswith(".") or entry.name in { - "node_modules", - "venv", - ".venv", - "__pycache__", - "Library", - "Applications", - }: - continue - - if entry.is_dir(): - # Check for 'toolkits' directories - if entry.name.lower() == "toolkits": - if validate_toolkits_directory(entry, analyze_files_for_tools): - candidates.append(str(entry)) - console.print(f" ✓ Found: {entry}", style="green") - # Check for 'starter-tools/servers' pattern - elif entry.name.lower() == "starter-tools": - servers_path = entry / "servers" - if servers_path.exists() and servers_path.is_dir(): - if validate_toolkits_directory(servers_path, analyze_files_for_tools): - candidates.append(str(servers_path)) - console.print(f" ✓ Found: {servers_path}", style="green") - else: - walk_directory(entry, current_depth + 1) - except (PermissionError, OSError): - pass - - walk_directory(home, 1) - - return candidates diff --git a/make_toolkit_docs/docs_builder.py b/make_toolkit_docs/docs_builder.py deleted file mode 100644 index 743920d49..000000000 --- a/make_toolkit_docs/docs_builder.py +++ /dev/null @@ -1,665 +0,0 @@ -import asyncio -import json -import os -import pprint -from collections.abc import Callable -from enum import Enum -from typing import Any, cast - -import openai -from openai import AsyncOpenAI -from arcade_core import auth as auth_module -from arcade_core.schema import ( - ToolAuthRequirement, - ToolDefinition, - ToolInput, - ToolSecretRequirement, -) -from rich.console import Console - -from templates import ( - ENUM_ITEM, - ENUM_MDX, - ENUM_VALUE, - GENERIC_PROVIDER_CONFIG, - STARTER_TOOL_INFO_CALL, - STARTER_TOOLKIT_HEADER_IMPORT, - TABBED_EXAMPLES_LIST, - TABLE_OF_CONTENTS, - TABLE_OF_CONTENTS_ITEM, - TOOL_CALL_EXAMPLE_JS, - TOOL_CALL_EXAMPLE_PY, - TOOL_PARAMETER, - TOOL_SPEC, - TOOL_SPEC_SECRETS, - TOOLKIT_FOOTER, - TOOLKIT_FOOTER_OAUTH2, - TOOLKIT_HEADER, - TOOLKIT_PAGE, - WELL_KNOWN_PROVIDER_CONFIG, -) -from utils import ( - clean_fully_qualified_name, - find_enum_by_options, - find_pyproject_toml, - get_pyproject_description, - get_toolkit_auth_type, - is_well_known_provider, - pascal_to_snake_case, -) - -console = Console() - - -def build_toolkit_mdx_dir_path( - docs_section: str, - docs_root_dir: str, - toolkit_name: str, - ensure_exists: bool = True, -) -> str: - dir_path = os.path.join( - docs_root_dir, - "app", - "en", - "mcp-servers", - docs_section, - f"{toolkit_name.lower().replace('_', '-')}", - ) - - if ensure_exists: - os.makedirs(dir_path, exist_ok=True) - return dir_path - - -def build_toolkit_mdx_file_path(docs_section: str, docs_root_dir: str, toolkit_name: str) -> str: - toolkit_dir_path = build_toolkit_mdx_dir_path(docs_section, docs_root_dir, toolkit_name) - return os.path.join(toolkit_dir_path, "page.mdx") - - -def build_example_path(example_filename: str, docs_root_dir: str, toolkit_name: str) -> str: - return os.path.join( - docs_root_dir, - "public", - "examples", - "integrations", - "mcp-servers", - toolkit_name.lower(), - example_filename, - ) - - -def build_toolkit_mdx( - toolkit_package_name: str, - toolkit_dir: str, - tools: list[ToolDefinition], - docs_section: str, - enums: dict[str, type[Enum]], - pip_package_name: str, - openai_model: str, - toolkit_header_template: str = TOOLKIT_HEADER, - toolkit_page_template: str = TOOLKIT_PAGE, - is_wrapper_toolkit: bool = False, -) -> tuple[str, str]: - sample_tool = tools[0] - toolkit_name = sample_tool.toolkit.name - toolkit_version = sample_tool.toolkit.version - auth_type = get_toolkit_auth_type(sample_tool.requirements) - - if is_wrapper_toolkit: - starter_tool_info_import = STARTER_TOOLKIT_HEADER_IMPORT - starter_tool_info_warning = STARTER_TOOL_INFO_CALL.format(toolkit_name=toolkit_name) - else: - starter_tool_info_import = "" - starter_tool_info_warning = "" - - try: - pyproject_path = find_pyproject_toml(toolkit_dir) - tool_info_description = get_pyproject_description(pyproject_path) - - except ValueError: - tool_info_description = f"Enable Agents to interact with the {toolkit_name} MCP Server" - - header = toolkit_header_template.format( - toolkit_title=toolkit_name, - tool_info_description=tool_info_description, - starter_tool_info_import=starter_tool_info_import, - starter_tool_info_warning=starter_tool_info_warning, - description=generate_toolkit_description( - toolkit_name, - [(tool.name, tool.description) for tool in tools], - openai_model, - ), - pip_package_name=pip_package_name, - auth_type=auth_type, - version=toolkit_version, - ) - table_of_contents = build_table_of_contents(tools) - footer = build_footer(toolkit_name, pip_package_name, sample_tool.requirements.authorization) - - referenced_enums, tools_specs = build_tools_specs( - toolkit_package_name, tools, docs_section, enums - ) - reference_mdx = build_reference_mdx(toolkit_name, referenced_enums) if referenced_enums else "" - - toolkit_mdx = toolkit_page_template.format( - header=header, - table_of_contents=table_of_contents, - tools_specs=tools_specs, - reference_mdx=reference_mdx, - footer=footer, - ) - - return toolkit_mdx.strip() - - -def build_reference_mdx( - toolkit_name: str, - referenced_enums: list[tuple[str, type[Enum]]], - enum_item_template: str = ENUM_ITEM, - enum_value_template: str = ENUM_VALUE, - enum_mdx_template: str = ENUM_MDX, -) -> str: - enum_items = "" - enum_names_seen = set() - - for enum_name, enum_class in referenced_enums: - if enum_name in enum_names_seen: - continue - enum_names_seen.add(enum_name) - enum_items += enum_item_template.format( - enum_name=enum_name, - enum_values=build_enum_values( - enum_class=enum_class, - enum_value_template=enum_value_template, - ), - ) - - return enum_mdx_template.format( - toolkit_name=toolkit_name, - enum_items=enum_items, - ) - - -def build_enum_values( - enum_class: type[Enum], - enum_value_template: str = ENUM_VALUE, -) -> str: - enum_values = "" - for enum_member in enum_class: - enum_values += ( - enum_value_template.format( - enum_option_name=enum_member.name, - enum_option_value=enum_member.value, - ) - + "\n" - ) - return enum_values - - -def build_table_of_contents( - tools: list[ToolDefinition], - table_of_contents_item_template: str = TABLE_OF_CONTENTS_ITEM, - table_of_contents_template: str = TABLE_OF_CONTENTS, -) -> str: - tools_items = "" - - for tool in tools: - tools_items += table_of_contents_item_template.format( - tool_fully_qualified_name=clean_fully_qualified_name(tool.fully_qualified_name), - description=tool.description.split("\n")[0], - ) - - return table_of_contents_template.format(tool_items=tools_items) - - -def build_footer( - toolkit_name: str, - pip_package_name: str, - authorization: ToolAuthRequirement | None, - footer_template: str = TOOLKIT_FOOTER, - oauth2_footer_template: str = TOOLKIT_FOOTER_OAUTH2, - well_known_provider_config_template: str = WELL_KNOWN_PROVIDER_CONFIG, - generic_provider_config_template: str = GENERIC_PROVIDER_CONFIG, -) -> str: - if authorization and authorization.provider_type == "oauth2": - effective_provider_id = authorization.provider_id or authorization.id - - if effective_provider_id: - is_well_known = is_well_known_provider( - provider_id=effective_provider_id, - auth_module=auth_module, - ) - config_template = ( - well_known_provider_config_template - if is_well_known - else generic_provider_config_template - ) - provider_configuration = config_template.format( - toolkit_name=toolkit_name, - provider_id=effective_provider_id, - provider_name=effective_provider_id.capitalize(), - ) - - return oauth2_footer_template.format( - pip_package_name=pip_package_name, - provider_configuration=provider_configuration, - ) - return footer_template.format(toolkit_name=toolkit_name, pip_package_name=pip_package_name) - - -def build_tools_specs( - toolkit_name: str, - tools: list[ToolDefinition], - docs_section: str, - enums: dict[str, type[Enum]], - tool_spec_template: str = TOOL_SPEC, - tool_parameter_template: str = TOOL_PARAMETER, - tool_spec_secrets_template: str = TOOL_SPEC_SECRETS, -) -> tuple[list[tuple[str, type[Enum]]], str]: - tools_specs = "" - referenced_enums = [] - for tool in tools: - tool_referenced_enums, tool_spec = build_tool_spec( - toolkit_name=toolkit_name, - tool=tool, - docs_section=docs_section, - enums=enums, - tool_spec_template=tool_spec_template, - tool_parameter_template=tool_parameter_template, - tool_spec_secrets_template=tool_spec_secrets_template, - ) - tools_specs += tool_spec - referenced_enums.extend(tool_referenced_enums) - - return referenced_enums, tools_specs - - -def build_tool_spec( - toolkit_name: str, - tool: ToolDefinition, - docs_section: str, - enums: dict[str, type[Enum]], - tool_spec_template: str = TOOL_SPEC, - tool_parameter_template: str = TOOL_PARAMETER, - tool_spec_secrets_template: str = TOOL_SPEC_SECRETS, -) -> tuple[list[tuple[str, type[Enum]]], str]: - tabbed_examples_list = TABBED_EXAMPLES_LIST.format( - toolkit_name=toolkit_name.lower(), - tool_name=pascal_to_snake_case(tool.name), - ) - referenced_enums, parameters = build_tool_parameters( - tool_input=tool.input, - enums=enums, - tool_parameter_template=tool_parameter_template, - ) - - if not parameters: - parameters = "This tool does not take any parameters." - - secrets = ( - build_tool_secrets( - secrets=tool.requirements.secrets, - template=tool_spec_secrets_template, - ) - if tool.requirements.secrets - else "" - ) - - return referenced_enums, tool_spec_template.format( - tool_fully_qualified_name=clean_fully_qualified_name(tool.fully_qualified_name), - tabbed_examples_list=tabbed_examples_list, - description=tool.description.split("\n")[0], - parameters=parameters, - secrets=secrets, - ) - - -def build_tool_secrets( - secrets: list[ToolSecretRequirement], - template: str = TOOL_SPEC_SECRETS, -) -> str: - if not secrets: - return "" - secret_keys_str = "`, `".join([secret.key for secret in secrets]) - return template.format(secrets=f"`{secret_keys_str}`") - - -def build_tool_parameters( - tool_input: ToolInput, - enums: dict[str, type[Enum]], - tool_parameter_template: str = TOOL_PARAMETER, -) -> tuple[list[tuple[str, type[Enum]]], str]: - referenced_enums = [] - parameters = "" - for parameter in tool_input.parameters: - schema = parameter.value_schema - if schema.enum: - enum_name, enum_class = find_enum_by_options(enums, schema.enum) - referenced_enums.append((enum_name, enum_class)) - param_definition = f"`Enum` [{enum_name}](#{enum_name.lower().replace(' ', '-')})" - else: - if schema.inner_val_type: - param_definition = f"`{schema.val_type}[{schema.inner_val_type}]`" - else: - param_definition = f"`{schema.val_type}`" - - if parameter.required: - param_definition += ", required" - else: - param_definition += ", optional" - - parameters += ( - tool_parameter_template.format( - param_name=parameter.name, - definition=param_definition, - description=parameter.description, - ) - + "\n" - ) - - return referenced_enums, parameters - - -async def build_examples( - print_debug: Callable, - tools: list[ToolDefinition], - openai_model: str, - max_concurrency: int = 5, -) -> list[tuple[str, str]]: - examples = [] - - semaphore = asyncio.Semaphore(max_concurrency) - - async def build_with_semaphore(tool: ToolDefinition): - async with semaphore: - return await build_tool_examples(print_debug, tool, openai_model) - - responses = await asyncio.gather(*[build_with_semaphore(tool) for tool in tools]) - - for response in responses: - examples.extend(response) - - return examples - - -async def build_tool_examples( - print_debug: Callable, - tool: ToolDefinition, - openai_model: str, -) -> list[tuple[str, str]]: - examples = [] - print_debug(f"Generating tool-call examples for {tool.name}") - interface_signature = build_tool_interface_signature(tool) - input_map = await generate_tool_input_map(interface_signature, openai_model) - fully_qualified_name = tool.fully_qualified_name.split("@")[0] - - py_file_name = f"{pascal_to_snake_case(tool.name)}_example_call_tool.py" - examples.append(( - py_file_name, - build_python_example(fully_qualified_name, input_map), - )) - js_file_name = f"{pascal_to_snake_case(tool.name)}_example_call_tool.js" - examples.append(( - js_file_name, - build_javascript_example(fully_qualified_name, input_map), - )) - return examples - - -def build_python_example( - tool_fully_qualified_name: str, - input_map: dict[str, Any], - template: str = TOOL_CALL_EXAMPLE_PY, -) -> str: - input_map_str = pprint.pformat( - input_map, - indent=4, - width=100, - compact=False, - sort_dicts=False, - ) - input_map_str = "{\n " + input_map_str.lstrip("{ ").rstrip("}") + "\n}" - return template.format( - tool_fully_qualified_name=tool_fully_qualified_name, - input_map=input_map_str, - ) - - -def build_javascript_example( - tool_fully_qualified_name: str, - input_map: dict, - template: str = TOOL_CALL_EXAMPLE_JS, -) -> str: - return template.format( - tool_fully_qualified_name=tool_fully_qualified_name, - input_map=json.dumps(input_map, indent=2, ensure_ascii=False), - ) - - -def generate_toolkit_description( - toolkit_name: str, - tools: list[tuple[str, str]], - openai_model: str, -) -> str: - messages = [ - { - "role": "system", - "content": ( - "You are a helpful assistant. " - "When given an MCP Server name and a list of tools, you will generate a " - "short, yet descriptive of the MCP Server and the main actions a user " - "or LLM can perform with it.\n\n" - "As an example, here is the Asana MCP Server description:\n\n" - "The Arcade Asana MCP Server provides a pre-built set of tools for " - "interacting with Asana. These tools make it easy to build agents " - "and AI apps that can:\n\n" - "- Manage teams, projects, and workspaces.\n" - "- Create, update, and search for tasks.\n" - "- Retrieve data about tasks, projects, workspaces, users, etc.\n" - "- Manage task attachments.\n\n" - "And here is a JSON string with the list of tools in the Asana MCP Server:\n\n" - "```json\n\n" - '[["AttachFileToTask", "Attaches a file to an Asana task\n\nProvide exactly ' - "one of file_content_str, file_content_base64, or file_content_url, never " - "more\nthan one.\n\n- Use file_content_str for text files (will be encoded " - "using file_encoding)\n- Use file_content_base64 for binary files like images, " - 'PDFs, etc.\n- Use file_content_url if the file is hosted on an external URL"], ' - '["CreateTag", "Create a tag in Asana"], ["CreateTask", "Creates a task in ' - "Asana\n\nThe task must be associated to at least one of the following: " - "parent_task_id, project, or\nworkspace_id. If none of these are provided and " - "the account has only one workspace, the task\nwill be associated to that " - "workspace. If the account has multiple workspaces, an error will\nbe raised " - 'with a list of available workspaces."], ["GetProjectById", "Get an Asana ' - 'project by its ID"], ["GetSubtasksFromATask", "Get the subtasks of a task"], ' - '["GetTagById", "Get an Asana tag by its ID"], ["GetTaskById", "Get a task by ' - 'its ID"], ["GetTasksWithoutId", "Search for tasks"], ["GetTeamById", "Get an ' - 'Asana team by its ID"], ["GetUserById", "Get a user by ID"], ["GetWorkspaceById", ' - '"Get an Asana workspace by its ID"], ["ListProjects", "List projects in Asana"], ' - '["ListTags", "List tags in an Asana workspace"], ["ListTeams", "List teams in ' - 'an Asana workspace"], ["ListTeamsTheCurrentUserIsAMemberOf", "List teams in ' - 'Asana that the current user is a member of"], ["ListUsers", "List users in ' - 'Asana"], ["ListWorkspaces", "List workspaces in Asana that are visible to the ' - 'authenticated user"], ["MarkTaskAsCompleted", "Mark a task in Asana as ' - 'completed"], ["UpdateTask", "Updates a task in Asana"]]\n\n```\n\n' - "Keep the description concise and to the point. The user will provide you with " - "the MCP Server name and the list of tools. Generate the description according to " - "the instructions above." - ), - }, - { - "role": "user", - "content": ( - f"The MCP Server name is {toolkit_name} and the list of tools is:\n\n" - "```json\n\n" - f"{json.dumps(tools, ensure_ascii=False)}\n\n" - "```\n\n" - "Please generate a description for the MCP Server." - ), - }, - ] - - return request_openai_generation(model=openai_model, max_tokens=512, messages=messages) - - -async def generate_tool_input_map( - interface_signature: dict[str, Any], - openai_model: str, - retries: int = 0, - max_retries: int = 3, -) -> dict[str, Any]: - messages = [ - { - "role": "system", - "content": ( - "You are a helpful assistant expert in generating data for documenting " - "sample scripts to calling tools. A tool is a function that is used in " - "context of LLM tool-calling / function-calling.\n\n" - "When given a tool signature with typed arguments, " - "you must return exactly one JSON object (no markdown, no extra text) " - "where each key is an argument name, and each value is a sample value " - "for that argument that would make sense in a sample script to showcase " - "human software engineers how the tool may be called. Generate the " - "argument sample value based on its name and description\n\n" - "Not every single argument must always be present in the input map. " - "In some cases, the tool may require only one of two arguments to be " - "provided, for example. In such cases, an indication will be present " - "either/or in the tool description or the argument description. " - "Always follow such instructions when present in the tool interface.\n\n" - "Keep argument values as short as possible. Values don't have to always " - "be valid. For instance, for file content base64-encoded arguments, " - "you can use a short text or a placeholder like `[file_content]`, it is " - "not necessary that the value is a valid base64-encoded string.\n\n" - "Remember that you MUST RESPOND ONLY WITH A VALID JSON STRING, NO ADDED " - "TEXT. Your response will be json.load'ed, so it must be a valid JSON " - "string." - ), - }, - { - "role": "user", - "content": ( - "Here is a tool interface:\n\n" - f"{json.dumps(interface_signature, ensure_ascii=False)}\n\n" - "Please provide a sample input map as a JSON object." - ), - }, - ] - - text = await async_request_openai_generation( - model=openai_model, max_tokens=512, messages=messages - ) - - try: - return cast(dict[str, Any], json.loads(text)) - except (json.JSONDecodeError, TypeError): - if retries < max_retries: - return await generate_tool_input_map( - interface_signature=interface_signature, - openai_model=openai_model, - retries=retries + 1, - max_retries=max_retries, - ) - tool_name = interface_signature["tool_name"] - console.print( - f"Attention: {openai_model} failed to generate a valid inputs JSON for the tool '{tool_name}'. " - "Please check the Python & Javascript example scripts generated and enter a sample input manually.", - style="red", - ) - return {} - - -def build_tool_interface_signature(tool: ToolDefinition) -> dict[str, Any]: - args = [] - for arg in tool.input.parameters: - data: dict[str, Any] = { - "arg_name": arg.name, - "arg_description": arg.description, - "is_arg_required": arg.required, - "arg_type": arg.value_schema.val_type, - } - - if arg.value_schema.enum: - data["enum"] = { - "accepted_values": arg.value_schema.enum, - } - - args.append(data) - - return { - "tool_name": tool.name, - "tool_description": tool.description, - "tool_args": args, - } - - -def request_openai_generation( - model: str, - max_tokens: int, - messages: list[dict[str, Any]], -) -> str: - if model.startswith("gpt-5"): - response = openai.responses.create( - model=model, - input=messages, - max_output_tokens=max_tokens, - reasoning={ - "effort": "minimal", - }, - text={ - "verbosity": "low", - }, - ) - response_str = cast(str, response.output_text) - - elif model.startswith("gpt-4o"): - response = openai.chat.completions.create( - model=model, - messages=messages, - temperature=0.0, - max_completion_tokens=max_tokens, - ) - response_str = cast(str, response.choices[0].message.content) - - else: - raise ValueError( - f"Unsupported OpenAI model: {model}. Choose a model from the 'gpt-4o' or 'gpt-5' series." - ) - - return response_str.strip() - - -async def async_request_openai_generation( - model: str, - max_tokens: int, - messages: list[dict[str, Any]], -) -> str: - client = AsyncOpenAI(api_key=openai.api_key) - - if model.startswith("gpt-5"): - response = await client.responses.create( - model=model, - input=messages, - max_output_tokens=max_tokens, - reasoning={ - "effort": "minimal", - }, - text={ - "verbosity": "low", - }, - ) - response_str = cast(str, response.output_text) - - elif model.startswith("gpt-4o"): - response = await client.chat.completions.create( - model=model, - messages=messages, - temperature=0.0, - max_completion_tokens=max_tokens, - ) - response_str = cast(str, response.choices[0].message.content) - - else: - raise ValueError( - f"Unsupported OpenAI model: {model}. Choose a model from the 'gpt-4o' or 'gpt-5' series." - ) - - return response_str.strip() diff --git a/make_toolkit_docs/pyproject.toml b/make_toolkit_docs/pyproject.toml deleted file mode 100644 index 8975510f6..000000000 --- a/make_toolkit_docs/pyproject.toml +++ /dev/null @@ -1,71 +0,0 @@ -[project] -name = "arcade-docs" -version = "1.2.1" -description = "Arcade.dev - Auto-build documentation for MCP Servers" -authors = [ - {name = "Arcade", email = "dev@arcade.dev"}, -] -classifiers = [ - "Development Status :: 5 - Production/Stable", - "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", - "Programming Language :: Python :: 3.11", - "Programming Language :: Python :: 3.12", - "Programming Language :: Python :: 3.13", -] -requires-python = ">=3.10" - -dependencies = [ - "arcade-core>=3.0.0,<4.0.0", - "arcade-mcp[all]>=1.2.0,<2.0.0", - "typer==0.10.0", - "rich==13.9.4", - "openai==1.82.1", - "click==8.1.8", - "inquirerpy>=0.3.4", - "python-dotenv>=1.0.0", -] - -[tool.uv] -dev-dependencies = [ - "pytest>=8.1.2", - "pytest-cov>=4.0.0", - "pytest-asyncio>=0.23.7", - "mypy>=1.5.1", - "pre-commit>=3.4.0", - "ruff>=0.4.0", - "types-PyYAML>=6.0.0", - "types-python-dateutil>=2.8.2", - "types-pytz>=2024.1", -] - -[build-system] -requires = ["hatchling"] -build-backend = "hatchling.build" - -[tool.hatch.build.targets.wheel] -packages = ["."] - -[tool.mypy] -python_version = "3.10" -disallow_untyped_defs = true -disallow_any_unimported = true -no_implicit_optional = true -check_untyped_defs = true -warn_return_any = true -warn_unused_ignores = true -show_error_codes = true -ignore_missing_imports = true - -[tool.ruff] -target-version = "py310" -line-length = 100 - -[tool.ruff.lint] -select = ["E", "F", "I", "N", "UP", "RUF"] -ignore = ["E501", "S105"] - -[tool.ruff.lint.per-file-ignores] -"__init__.py" = ["F401"] diff --git a/make_toolkit_docs/templates.py b/make_toolkit_docs/templates.py deleted file mode 100644 index e1d455304..000000000 --- a/make_toolkit_docs/templates.py +++ /dev/null @@ -1,171 +0,0 @@ -TOOLKIT_PAGE = """{header} - -{table_of_contents} - -{tools_specs} -{reference_mdx} -{footer} -""" - -STARTER_TOOLKIT_HEADER_IMPORT = 'import StarterToolInfo from "@/app/_components/starter-tool-info";' - -STARTER_TOOL_INFO_CALL = '' - -TOOLKIT_HEADER = """# {toolkit_title} -{starter_tool_info_import} -import ToolInfo from "@/app/_components/tool-info"; -import Badges from "@/app/_components/badges"; -import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; -import TableOfContents from "@/app/_components/table-of-contents"; -import ToolFooter from "@/app/_components/tool-footer"; -import {{ Callout }} from "nextra/components"; - - - - - -{starter_tool_info_warning} - -{description}""" - -TABLE_OF_CONTENTS = """## Available Tools - - - - - If you need to perform an action that's not listed here, you can [get in touch - with us](mailto:contact@arcade.dev) to request a new tool, or [create your - own tools](/home/build-tools/create-a-mcp-server). -""" - -TABLE_OF_CONTENTS_ITEM = '\n ["{tool_fully_qualified_name}", "{description}"],' - -TOOL_SPEC = """## {tool_fully_qualified_name} - -
-{tabbed_examples_list} - -{description} - -**Parameters** - -{parameters} -{secrets} -""" - -TOOL_SPEC_SECRETS = """**Secrets** - -This tool requires the following secrets: {secrets} (learn how to [configure secrets](/home/build-tools/create-a-tool-with-secrets)) -""" - -TABBED_EXAMPLES_LIST = """""" - -TOOL_PARAMETER = "- **{param_name}** ({definition}) {description}" - -TOOLKIT_FOOTER = """""" - -TOOLKIT_FOOTER_OAUTH2 = """## Auth - -{provider_configuration} - - -""" - -WELL_KNOWN_PROVIDER_CONFIG = "The Arcade {toolkit_name} MCP Server uses the [{provider_name} auth provider](/home/auth-providers/{provider_id}) to connect to users' {toolkit_name} accounts. Please refer to the [{provider_name} auth provider](/home/auth-providers/{provider_id}) documentation to learn how to configure auth." - -GENERIC_PROVIDER_CONFIG = "The {toolkit_name} MCP Server uses the Auth Provider with id `{provider_id}` to connect to users' {toolkit_name} accounts. In order to use the MCP Server, you will need to configure the `{provider_id}` auth provider." - -TOOL_CALL_EXAMPLE_JS = """import {{ Arcade }} from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{{arcade_user_id}}"; -const TOOL_NAME = "{tool_fully_qualified_name}"; - -// Start the authorization process -const authResponse = await client.tools.authorize({{ - tool_name: TOOL_NAME, - user_id: USER_ID, -}}); - -if (authResponse.status !== "completed") {{ - console.log(`Click this link to authorize: ${{authResponse.url}}`); -}} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {input_map}; - -const response = await client.tools.execute({{ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}}); - -console.log(JSON.stringify(response.output.value, null, 2)); -""" - -TOOL_CALL_EXAMPLE_PY = """import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{{arcade_user_id}}" -TOOL_NAME = "{tool_fully_qualified_name}" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {{auth_response.url}}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {input_map} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) -""" - -ENUM_MDX = """## Reference - -Below is a reference of enumerations used by some of the tools in the {toolkit_name} MCP Server: - -{enum_items} -""" - -ENUM_ITEM = """### {enum_name} - -{enum_values} -""" - -ENUM_VALUE = "- **{enum_option_name}**: `{enum_option_value}`" diff --git a/make_toolkit_docs/utils.py b/make_toolkit_docs/utils.py deleted file mode 100644 index cfdd134c4..000000000 --- a/make_toolkit_docs/utils.py +++ /dev/null @@ -1,270 +0,0 @@ -import importlib -import inspect -import os -import re -import sys -from enum import Enum -from pathlib import Path -from types import ModuleType - -if sys.version_info >= (3, 11): - import tomllib -else: - tomllib = None - -from arcade_core.auth import AuthProviderType -from arcade_core.catalog import ToolCatalog -from arcade_core.schema import ToolDefinition, ToolRequirements -from rich.console import Console - -from arcade_cli.utils import discover_toolkits - - -def print_debug_func(debug: bool, console: Console, message: str, style: str = "dim") -> None: - if not debug: - return - console.print(message, style=style) - - -def standardize_dir_path(dir_path: str) -> str: - dir_path = dir_path.rstrip("/") + "/" - return os.path.expanduser(dir_path) - - -def resolve_api_key(cli_input_value: str | None, env_var_name: str) -> str | None: - if cli_input_value: - return cli_input_value - elif os.getenv(env_var_name): - return os.getenv(env_var_name) - else: - return None - - -def write_file(path: str, content: str) -> None: - os.makedirs(os.path.dirname(path), exist_ok=True) - with open(path, "w") as f: - f.write(content) - - -def read_toolkit_metadata(toolkit_dir: str) -> str: - pyproject_path = os.path.join(toolkit_dir, "pyproject.toml") - - if tomllib is not None: - with open(pyproject_path, "rb") as f: - data = tomllib.load(f) - if "project" in data and "name" in data["project"]: - return data["project"]["name"] - else: - # Fallback to regex for Python < 3.11 - with open(pyproject_path) as f: - content = f.read() - project_section_match = re.search(r"\[project\](.*?)(?=\n\[|$)", content, re.DOTALL) - if project_section_match: - project_content = project_section_match.group(1) - name_match = re.search(r'name\s*=\s*["\']([^"\']+)["\']', project_content) - if name_match: - return name_match.group(1).strip() - - raise ValueError(f"Could not find package name in '{pyproject_path}'") - - -def pascal_to_snake_case(text: str) -> str: - return re.sub(r"(? list[ToolDefinition]: - tools = [] - toolkits = discover_toolkits() - - for toolkit in toolkits: - if toolkit.name.casefold() == toolkit_name.casefold(): - for module_name, module_tools in toolkit.tools.items(): - module = importlib.import_module(module_name) - for tool_name in module_tools: - tool_func = getattr(module, tool_name) - tool = ToolCatalog.create_tool_definition( - tool_func, toolkit.name, toolkit.version, toolkit.description - ) - tools.append(tool) - - if not tools: - raise ValueError( - f"Tools not found for the toolkit '{toolkit_name}'. Make sure to have the toolkit " - "installed in your current Python environment." - ) - - return tools - - -def get_all_enumerations(toolkit_root_dir: str) -> dict[str, type[Enum]]: - enums = {} - toolkit_path = Path(toolkit_root_dir) - - # Get the toolkit package name from the directory - # Prefer directories that start with "arcade_" or match common patterns - toolkit_package_name = None - candidate_packages = [] - - for item in toolkit_path.iterdir(): - if item.is_dir() and not item.name.startswith(".") and (item / "__init__.py").exists(): - # Skip common non-toolkit directories - if item.name in ["tests", "test", "docs", "examples", "scripts"]: - continue - candidate_packages.append(item.name) - - # Prefer packages starting with "arcade_" or the toolkit name - for pkg in candidate_packages: - if pkg.startswith("arcade_"): - toolkit_package_name = pkg - break - - # If no arcade_ package found, use the first candidate - if not toolkit_package_name and candidate_packages: - toolkit_package_name = candidate_packages[0] - - if not toolkit_package_name: - return enums - - # Add toolkit root to sys.path temporarily to enable proper imports - toolkit_root_str = str(toolkit_path.resolve()) - if toolkit_root_str not in sys.path: - sys.path.insert(0, toolkit_root_str) - - try: - for py_file in toolkit_path.rglob("*.py"): - if ".venv" in py_file.parts or "venv" in py_file.parts: - continue - - # Build the module path relative to the toolkit package - try: - rel_path = py_file.relative_to(toolkit_path) - parts = list(rel_path.parts) - - # Skip if not inside the toolkit package - if not parts or parts[0] != toolkit_package_name: - continue - - # Convert file path to module name - if parts[-1] == "__init__.py": - module_path_parts = parts[:-1] - else: - module_path_parts = parts[:-1] + [py_file.stem] - - if not module_path_parts: - continue - - module_name = ".".join(module_path_parts) - - # Import the module properly - module = importlib.import_module(module_name) - - for name, obj in inspect.getmembers(module): - if ( - name not in enums - and inspect.isclass(obj) - and issubclass(obj, Enum) - and obj is not Enum - ): - enums[name] = obj - except (ImportError, ValueError, AttributeError): - # Skip modules that can't be imported - continue - finally: - # Remove toolkit root from sys.path - if toolkit_root_str in sys.path: - sys.path.remove(toolkit_root_str) - - return enums - - -def get_toolkit_auth_type(tool_req: ToolRequirements | None) -> str: - if tool_req.authorization: - if tool_req.authorization.provider_type == AuthProviderType.oauth2.value: - return 'authType="OAuth2"' - else: - return f'authType="{tool_req.authorization.provider_type}"' - elif tool_req.secrets: - return 'authType="API Key"' - return 'authType="None"' - - -def find_enum_by_options( - enums: dict[str, type[Enum]], options: list[str] -) -> tuple[str, type[Enum]]: - options_set = set(options) - for enum_name, enum_class in enums.items(): - enum_member_values = [member.value for member in enum_class] - if set(enum_member_values) == options_set: - return enum_name, enum_class - raise ValueError(f"No enum found for options: {options_set}") - - -def is_well_known_provider( - provider_id: str | None, - auth_module: ModuleType, -) -> bool: - if provider_id is None: - return False - - for _, obj in inspect.getmembers(auth_module, inspect.isclass): - if not issubclass(obj, auth_module.OAuth2) or obj is auth_module.OAuth2: - continue - try: - instance = obj() - except AttributeError: - continue - provider_id_matches = ( - hasattr(instance, "provider_id") and instance.provider_id == provider_id - ) - if provider_id_matches: - return True - - return False - - -def clean_fully_qualified_name(fully_qualified_name: str) -> str: - return fully_qualified_name.split("@")[0] - - -def has_wrapper_tools_directory(toolkit_package_path: str) -> bool: - has_dir = os.path.exists(os.path.join(toolkit_package_path, "wrapper_tools")) - if has_dir: - return True - - # Check one level deep - for dir_name in os.listdir(toolkit_package_path): - if os.path.exists(os.path.join(toolkit_package_path, dir_name, "wrapper_tools")): - return True - - return False - - -def find_pyproject_toml(toolkit_package_path: str) -> str: - for root, _, files in os.walk(toolkit_package_path): - for file in files: - if file == "pyproject.toml": - return os.path.join(root, file) - - raise ValueError(f"No pyproject.toml found in {toolkit_package_path}") - - -def get_pyproject_description(pyproject_path: str) -> str: - if tomllib is not None: - with open(pyproject_path, "rb") as f: - data = tomllib.load(f) - if "project" in data and "description" in data["project"]: - return data["project"]["description"] - else: - # Fallback to regex for Python < 3.11 - with open(pyproject_path) as f: - content = f.read() - project_section_match = re.search(r"\[project\](.*?)(?=\n\[|$)", content, re.DOTALL) - if project_section_match: - project_content = project_section_match.group(1) - description_match = re.search( - r'description\s*=\s*["\']([^"\']+)["\']', project_content - ) - if description_match: - return description_match.group(1).strip() - - raise ValueError(f"Could not find description in '{pyproject_path}'") diff --git a/next-sitemap.config.js b/next-sitemap.config.js new file mode 100644 index 000000000..67e9fee15 --- /dev/null +++ b/next-sitemap.config.js @@ -0,0 +1,17 @@ +/** @type {import('next-sitemap').IConfig} */ +export default { + siteUrl: process.env.SITE_URL || "https://docs.arcade.dev", + generateRobotsTxt: true, + sitemapSize: 3000, + robotsTxtOptions: { + additionalSitemaps: [], + policies: [ + { + userAgent: "*", + allow: "/", + }, + ], + transformRobotsTxt: (_, robotsTxt) => + `${robotsTxt}\n# https://docs.arcade.dev/llms.txt`, + }, +}; diff --git a/package.json b/package.json index b32018998..79fa4c8ad 100644 --- a/package.json +++ b/package.json @@ -5,16 +5,17 @@ "type": "module", "scripts": { "dev": "next dev --webpack", - "build": "next build --webpack", + "build": "pnpm run toolkit-markdown && next build --webpack && pnpm run custompagefind && next-sitemap", "start": "next start", "lint": "pnpm dlx ultracite check", "format": "pnpm dlx ultracite fix", "prepare": "husky install", - "postbuild": "pnpm run custompagefind", - "translate": "pnpm dlx tsx scripts/i18n-sync/index.ts && pnpm format", - "sync:metas": "pnpm dlx tsx scripts/sync-metas.ts app/en", - "llmstxt": "pnpm dlx tsx scripts/generate-llmstxt.ts", - "custompagefind": "pnpm dlx tsx scripts/pagefind.ts", + "toolkit-markdown": "pnpm dlx tsx --tsconfig scripts/tsconfig.json scripts/generate-toolkit-markdown.ts", + "postbuild": "pnpm run custompagefind && next-sitemap", + "translate": "pnpm dlx tsx --tsconfig scripts/tsconfig.json scripts/i18n-sync/index.ts && pnpm format", + "sync:metas": "pnpm dlx tsx --tsconfig scripts/tsconfig.json scripts/sync-metas.ts app/en", + "llmstxt": "pnpm dlx tsx --tsconfig scripts/tsconfig.json scripts/generate-llmstxt.ts", + "custompagefind": "pnpm dlx tsx --tsconfig scripts/tsconfig.json scripts/pagefind.ts", "test": "vitest --run", "test:watch": "vitest --watch", "vale": "vale", @@ -42,10 +43,14 @@ "homepage": "https://arcade.dev/", "dependencies": { "@arcadeai/design-system": "^3.26.1", + "@mdx-js/mdx": "^3.1.1", + "@mdx-js/react": "^3.1.1", "@next/third-parties": "16.0.1", "@ory/client": "1.22.7", + "@tailwindcss/typography": "^0.5.19", "@theguild/remark-mermaid": "0.3.0", "@uidotdev/usehooks": "2.4.1", + "chalk": "^5.6.2", "lucide-react": "0.548.0", "mdast-util-to-string": "4.0.0", "motion": "12.23.24", @@ -56,7 +61,9 @@ "react": "19.2.3", "react-dom": "19.2.3", "react-hook-form": "7.65.0", + "react-markdown": "^10.1.0", "react-syntax-highlighter": "16.1.0", + "remark-gfm": "^4.0.1", "swagger-ui-react": "^5.30.0", "tailwindcss-animate": "1.0.7", "unist-util-visit": "5.0.0", @@ -75,11 +82,13 @@ "@types/react-dom": "19.2.3", "@types/react-syntax-highlighter": "15.5.13", "@types/unist": "3.0.3", + "baseline-browser-mapping": "^2.9.19", "commander": "14.0.2", "dotenv": "^17.2.3", "fast-glob": "3.3.3", "husky": "9.1.7", "lint-staged": "16.2.6", + "next-sitemap": "^4.2.3", "next-validate-link": "1.6.3", "openai": "6.7.0", "ora": "9.0.0", diff --git a/planningdoc.md b/planningdoc.md new file mode 100644 index 000000000..15470fb88 --- /dev/null +++ b/planningdoc.md @@ -0,0 +1,663 @@ +# User Stories + +### 1. The Toolkit Developer + +- As a **Toolkit Developer**, I want to **have my toolkit's documentation updated automatically when I publish a new version**, so that **I don't have to manually run documentation scripts**. + +### 2. The Application Developer (Consumer) + +- As an **Application Developer**, I want to **access the latest information on required scopes, parameters, and tool definitions in the documentation**, so that **I can implement integrations correctly without relying on outdated or incomplete references**. + +### 3. The Documentation Maintainer + +- As a **Documentation Maintainer**, I want to **write custom warnings and context for tools that persist across automated updates**, so that **valuable human knowledge isn't overwritten by the generation script**. + +### 4. The Product Manager + +- As a **Product Manager**, I want to **ensure all toolkits in the documentation have consistent branding (icons, categories)**, so that **the user experience is unified across the marketing site and documentation**. + +# Engineering Planning + +At the moment toolkit docs are built either manually or using the document generator tool built by Renato. With the increase of toolkits and many required updates, this process is not scalating well. We need to create a new process to build toolkit documentations that are more maintainable and easier to update, also taking the opportunity to improve metadata documentation, as scopes (what was the primary goal for this proj now is a side effect of the sugested process). + +Renato's tool lives in the arcade docs repo. It is a CLI tool that requires direct access to the python toolkit source code. So any changes in the toolkits after the documentation is built will require a new manual run in order to have an updated documentation. We will improve this process by getting the tool data from the engine API and combining it with design system metadata to programmatically deal with the documentation generation. + +## Tool documentation json as new source of data + +Right now tools are mdx files that follow a standard format, for the most part, also there are some LLM or human generated sections for details that require a little more care and need to be brought to the users attention for a better understanding of requirements or limitations of the tool. Instead of still using this approach, MDX components will be used and populated using a new json file that will contain all the required info for the tool, like description, parameters, scopes, secrets, etc, and written MD specific sections, like those generated by some form of reasoning. + +NOTE: Latter we can replace this json for an engine api call, when tools metadate feature to accept dynamic data as we can move all the info we need to there. + +### Data Merge Architecture + +``` +┌─────────────────────────────────────────────────────────────────────────────────────────┐ +│ DATA MERGE PIPELINE │ +└─────────────────────────────────────────────────────────────────────────────────────────┘ + + SOURCE A: ENGINE API SOURCE B: DESIGN SYSTEM SOURCE C: EXISTING DOCS + (Dynamic Tool Data) (Toolkit Metadata) (Manual Content) + ┌───────────────────┐ ┌───────────────────┐ ┌───────────────────┐ + │ /v1/tools/all │ │ /metadata/toolkits│ │ .mdx files │ + │ │ │ │ │ │ + │ • Tools │ │ • Category │ │ • Custom Callouts │ + │ • Parameters │ │ • Icon URL │ │ • Warnings │ + │ • Scopes ✅ │ │ • BYOC/Pro flags │ │ • Extra Context │ + │ • Auth Info │ │ • Labels │ │ • Sub-pages │ + └─────────┬─────────┘ └─────────┬─────────┘ └─────────┬─────────┘ + │ │ │ + └──────────────┬──────────────┴──────────────────────────────┘ + │ + ▼ + ┌───────────────────────┐ + │ MERGER SCRIPT │ + │ (In new repo) │ + └──────────┬────────────┘ + │ + ▼ + ┌───────────────────────┐ + │ MERGED JSON DATA │ + │ (One file per kit) │ + └──────────┬────────────┘ +``` + +With that goal in mind, we need to define a new json format to store the toolkit documentation data, that must, for at least the moment, be gathered from multiple sources, those being: + +- **Engine API**: We must define a new endpoint that will fetch all tools definitions for a toolkit, something like the tools list endpoint but we can make it more focused to this project goal. Probably it will be still a private endpoint that will require a valid API key. +- **Design System**: We will use the design system dependency to get the toolkit metadata, like category, icon, type, flags, etc. Docs already has it as a node pack dependency. +- **Current MDX doc files**: We will use the current MDX doc files to get the custom sections that are written by hand and need to be brought to the users attention for a better understanding of requirements or limitations of the tool. It will be work for a one time script to extract what we need. + +### JSON Spec (Annotated with Sources) + +The merged JSON format is designed to be the single source of truth for rendering a toolkit's documentation page. It is divided into five logical sections: + +1. **Identification**: Basic identity fields like `id` (slug), `label` (display name), `version`, and `description`. These are used for page titles, URLs, and SEO. +2. **Metadata**: Presentation and business logic fields sourced from the Design System. This includes the `category` (for navigation grouping), `icon_url` (for the page header), and flags like `is_byoc` (requires own credentials) and `is_pro` (paid feature). +3. **Authentication**: A summary of the authentication requirements for the toolkit. It aggregates `default_scopes` from all tools to show a high-level view of permissions. +4. **Tools**: The core content. A list of all tools in the toolkit, sourced directly from the Engine API. Each tool object groups **all** relevant data for that tool: + - `name`, `description`, `parameters` (inputs) + - `auth` requirements (specific scopes for _this_ tool) + - `secrets` + - `output` schema + - `documentation`: Tool-specific custom content (e.g., callouts, warnings) extracted from existing docs. +5. **Documentation Content**: Toolkit-level custom content that doesn't belong to a specific tool, such as general setup instructions or extended auth details. + +```jsonc +{ + // --- IDENTIFICATION --- + "id": "Github", // [Source: Design System] Unique ID + "label": "GitHub", // [Source: Design System] Display name + "version": "1.0.0", // [Source: Engine API] Toolkit version + "description": "...", // [Source: Engine API] Toolkit description + + // --- METADATA --- + "metadata": { + "category": "development", // [Source: Design System] + "icon_url": "...", // [Source: Design System] + "is_byoc": false, // [Source: Design System] + "is_pro": false, // [Source: Design System] + "toolkit_type": "arcade", // [Source: Design System] + "docs_link": "..." // [Source: Design System] + }, + + // --- AUTHENTICATION --- + "auth": { + "type": "oauth2", // [Source: Engine API] Derived from tool requirements + "provider_id": "github", // [Source: Engine API] + "all_scopes": [ + // [Source: Engine API] Union of ALL scopes required by tools + "repo", + "user:email" + ] + }, + + // --- TOOLS --- + "tools": [ + { + "name": "CreateIssue", // [Source: Engine API] + "qualified_name": "Github...", // [Source: Engine API] + "description": "Creates...", // [Source: Engine API] + "parameters": [ + // [Source: Engine API] + { + "name": "title", + "type": "string", + "required": true, + "description": "..." + } + ], + "auth": { + "scopes": ["repo"] // [Source: Engine API] Specific scopes for THIS tool + }, + "secrets": [], // [Source: Engine API] + + // [Source: Existing MDX Docs] Tool-specific manual content + "documentation": { + "before_description": { + "type": "callout", + "content": "Warning: This tool has specific rate limits..." + }, + "after_parameters": { + "type": "markdown", + "content": "Note on parameter usage..." + } + } + } + ], + + // --- TOOLKIT DOCUMENTATION --- + "docs": { + // [Source: Existing MDX Docs] Toolkit-level manual content + "custom_imports": [ + "import MyComponent from \"@/app/_components/my-component\";" + ], + "sections": { + "auth_extended": { + "type": "markdown", + "content": "Extended explanation about auth setup..." + }, + "reference_extended": { + "type": "markdown", + "content": "Additional reference material..." + } + } + } +} +``` + +## Engine new endpoint to fetch tool data + +For collecting data from the tools in Engine, it is desired to be able to get a list of tools having the provider identifier and the latest version, being the last useful for when there are some tool definition updates getting the data only for this new version and not for all tools with other versions. +Right now engine has a list endpoint that returns the complete tool definition for toolkits, but it does not allow the filtering by version and also has a chuck size limiting (I was informed that is like a few thousends, so not exactly a issue). Those are small details that would probably require some extra work either on the engine or in the consumer side, but I believe that a secret endpoint that we can use as base the list tools one and tailor for the documentation seems a more interesting approach, as one would freely update it depending of the needs for the whole documentation generation workflow and also will avoid being affected by changes or limitations that are required by the list tools endpoint. + +Note: After a meeting with Eric and Sergion related to the tool metadata project, I believe that the use of a new dedicate endpoint for the documentation generation got more reasons to be the choice, as we might add in the future some dicts as metadata and do some processing to return it to the docs. + +Said that, for this endpoint the OpenAPI scheme looks like this: + +### OpenAPI Schema + +```yaml +/v1/tools/all: + get: + security: + - Bearer: [] + summary: List All Tools + description: Returns all tools without pagination, with optional filters. Returns simplified tool schema (no formatted schemas). + operationId: tools-list-all + tags: + - Tools + parameters: + - name: provider + in: query + description: Filter by auth provider ID (e.g., google, slack, github) + required: false + schema: + type: string + - name: version + in: query + description: Filter by toolkit version + required: false + schema: + type: string + - name: toolkit + in: query + description: Filter by toolkit name + required: false + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: "#/components/schemas/ToolListAllResponse" + "401": + description: Unauthorized + content: + application/json: + schema: + $ref: "#/components/schemas/Error" + "500": + description: Internal Server Error + content: + application/json: + schema: + $ref: "#/components/schemas/Error" +``` + +### Response Schema + +```yaml +components: + schemas: + ToolListAllResponse: + type: object + required: + - items + - total_count + properties: + items: + type: array + items: + $ref: "#/components/schemas/ToolSimplified" + total_count: + type: integer + format: int64 + description: Total number of tools returned + + ToolSimplified: + type: object + required: + - fully_qualified_name + - qualified_name + - name + - toolkit + - input + properties: + fully_qualified_name: + type: string + description: Full tool identifier including version (e.g., Google.Calendar.CreateEvent@1.0.0) + example: "Google.Calendar.CreateEvent@1.0.0" + qualified_name: + type: string + description: Tool identifier without version (e.g., Google.Calendar.CreateEvent) + example: "Google.Calendar.CreateEvent" + name: + type: string + description: Tool name only + example: "CreateEvent" + description: + type: string + nullable: true + description: Tool description + toolkit: + $ref: "#/components/schemas/ToolkitInfo" + input: + $ref: "#/components/schemas/ToolInput" + output: + $ref: "#/components/schemas/ToolOutput" + nullable: true + requirements: + $ref: "#/components/schemas/ToolRequirementsSimplified" + nullable: true + + ToolkitInfo: + type: object + required: + - name + - version + properties: + name: + type: string + example: "Google" + description: + type: string + nullable: true + version: + type: string + example: "1.0.0" + + ToolInput: + type: object + required: + - parameters + properties: + parameters: + type: array + items: + $ref: "#/components/schemas/ToolParameter" + + ToolParameter: + type: object + required: + - name + - required + - value_schema + properties: + name: + type: string + required: + type: boolean + description: + type: string + nullable: true + value_schema: + $ref: "#/components/schemas/ValueSchema" + inferrable: + type: boolean + default: true + + ValueSchema: + type: object + required: + - val_type + properties: + val_type: + type: string + description: Data type (string, integer, boolean, array, object, etc.) + inner_val_type: + type: string + nullable: true + description: For array types, the type of array elements + enum: + type: array + items: + type: string + nullable: true + + ToolOutput: + type: object + properties: + available_modes: + type: array + items: + type: string + description: + type: string + nullable: true + value_schema: + $ref: "#/components/schemas/ValueSchema" + nullable: true + + ToolRequirementsSimplified: + type: object + description: Simplified requirements - only keys and provider info, no status + properties: + authorization: + $ref: "#/components/schemas/AuthRequirementSimplified" + nullable: true + secrets: + type: array + items: + type: string + description: List of required secret keys + example: ["API_KEY", "WEBHOOK_SECRET"] + + AuthRequirementSimplified: + type: object + description: OAuth2 authorization requirement info (no status) + properties: + id: + type: string + description: Authorization requirement ID + provider_id: + type: string + nullable: true + description: Provider identifier (e.g., google, slack) + example: "google" + provider_type: + type: string + description: Type of provider (oauth2, api_key, etc.) + example: "oauth2" + scopes: + type: array + items: + type: string + nullable: true + description: Required OAuth2 scopes + example: + [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.events", + ] +``` + +### Planning: Engine Code Implementation + +To implement this new endpoint in the Engine codebase, those next steps will be followed: + +_NOTE: I need feedback from engine engineers herem so they can say if something is wrong or missing._ + +1. **Define Schema Types**: + + - Create `internal/api/schemas/tools_all.go` to define `ToolListAllResponse`, `ToolSimplified`, and related structs. + - These structs should mirror the OpenAPI spec, ensuring all necessary fields (especially `scopes`) are included. + +2. **Implement Handler**: + + - Add `ListAllToolsHandler` in `internal/api/tool_handlers.go`. + - This handler needs to: + - Accept `provider`, `version`, and `toolkit` query parameters. + - Query the tool catalog/registry efficiently (avoiding pagination logic used in the standard list endpoint). + - Map the internal tool representation to `ToolSimplified` structs. + - Extract auth requirements and scopes correctly. + +3. **Register Route**: + + - In `internal/api/server.go`, register the new route `GET /tools/all`. + - Ensure it's protected with appropriate authentication (Bearer token) or API key validation, as this is intended for internal/build-time use. + +4. **Documentation**: + + - None docs, at least public available, as it will be a internal use only endpoint. + +5. **Testing**: + + - Add unit tests for the new handler to verify filtering logic and response format. + +## Design system extraction + +The Design System project contains metadata related to marketing and presentation, such as icons, categories, labels, and feature flags (e.g., `isBYOC`). This data is already available as a dependency in the `docs` project, which simplifies access. + +We will access this data primarily through the **`lib/metadata`** module exports. Specifically, we will use the `TOOLKIT_CATALOGUE` or the `TOOLKITS` array to look up metadata by toolkit ID. + +### Data Source Details + +- **Location**: `lib/metadata/` directory. +- **Key Files**: + - `lib/metadata/toolkits.ts`: Contains the main `TOOLKITS` array definition. + - `lib/metadata/index.ts`: Exports `TOOLKIT_CATALOGUE` (a record/map for easy lookup by ID). +- **Data Structure (`Toolkit` type)**: + - `id`: The unique identifier (e.g., "Github", "Gmail"). We will use this to match against Engine API data. + - `label`: Human-readable name (e.g., "GitHub"). + - `category`: Functional category (e.g., "development", "productivity"). + - `publicIconUrl`: URL to the SVG icon. + - `isBYOC`: Boolean flag indicating if users need their own credentials. + - `isPro`: Boolean flag indicating if the toolkit is a paid feature. + - `type`: Classification like "arcade", "verified", "community". + - `docsLink`: Full URL to existing docs (useful for cross-referencing). + +### Extraction Strategy + +The merger script will import the `TOOLKIT_CATALOGUE` from the design system dependency. For each toolkit found in the Engine API response, it will look up the corresponding metadata using the toolkit ID (normalizing case if necessary) and merge the fields into the final JSON structure under the `metadata` key. + +## One time script for extract custom sections from already existing docs + +We need to preserve valuable, manually written context from the current documentation while migrating to the automated system. This will be achieved by a one-time extraction script. + +### Requirements + +- **Input**: All MDX files in `app/en/resources/integrations/**/*.mdx`. +- **Output**: A JSON file (`custom_sections.json`) mapping toolkit IDs to their custom content. +- **Logic**: The script must parse MDX files and identify "Custom" vs "Generated" sections based on known patterns (e.g., `` is generated, but a specific `` might be custom). + +### Extraction Targets (Custom Sections) + +The script should specifically look for and extract: + +1. **Custom Imports**: Any imports that are not part of the standard set (e.g., `import ScopePicker...`). +2. **Toolkit-Level Callouts**: Warnings or info boxes appearing after the header but before the tools list (e.g., Jira's "Handling multiple Atlassian Clouds"). +3. **Extended Auth/Reference**: Text that appears after the standard `## Auth` or `## Reference` headers but isn't just the standard link or enum list. +4. **Per-Tool Callouts**: Info boxes inside a specific tool's section (e.g., Gmail's "This tool requires the following scope"). +5. **Sub-pages**: Detect if a toolkit has sub-directories like `environment-variables/` and note them for preservation. + +### Output Structure + +The extracted data will follow the structure defined in the "Documentation Content" section of the main JSON spec, enabling easy merging later. + +## Using and updating the documentation generator to build tool json files + +At the moment the make docs commands requires access to some python tools source code, to create/update the documentation in the doc repo using MDX files. This process should be updated to use the generated tool data json, instead of MDX files. + +The generated docs beside generating structured output based using a defined code logic it also uses LLMs to generate some sections that serves as summary and of the toolkit and its capabilities. This feature will probably be kept for helping the addition of new toolkits but a further analyses on how that would be dealt with in the updated process should be tested, as having it updating sections automatically without human supervision can cause some issue. + +One important change that will be added is to kept it easy to change the source of the json with tools data. In this project the json files will be used to generated the docs, but in the future when the addition of metadata to tools definitions we might have all that is required from an engine endpoint. + +### Current Flow + +``` +┌─────────────────────────────────────────────────────────────────────┐ +│ USER RUNS SCRIPT │ +│ python -m make_toolkit_docs │ +└─────────────────────────────────────────────────────────────────────┘ + │ + ▼ +┌─────────────────────────────────────────────────────────────────────┐ +│ 1. DISCOVER TOOLKITS │ +│ File: discovery.py │ +│ • Scans home directory for "toolkits" folders │ +│ • Looks for Python files with @tool decorator │ +└─────────────────────────────────────────────────────────────────────┘ + │ + ▼ +┌─────────────────────────────────────────────────────────────────────┐ +│ 2. USER SELECTS TOOLKIT │ +│ File: __main__.py │ +│ • Shows fuzzy-searchable list │ +│ • User picks one toolkit to document │ +└─────────────────────────────────────────────────────────────────────┘ + │ + ▼ +┌─────────────────────────────────────────────────────────────────────┐ +│ 3. INSTALL TOOLKIT (Dependency!) │ +│ File: __main__.py │ +│ • Runs: uv pip install -e {toolkit_dir} │ +│ • Makes toolkit importable in Python │ +└─────────────────────────────────────────────────────────────────────┘ + │ + ▼ +┌─────────────────────────────────────────────────────────────────────┐ +│ 4. LOAD TOOLS (Dependency!) │ +│ File: utils.py → get_list_of_tools() │ +│ • Uses arcade_core to discover tools in runtime │ +│ • Returns list of ToolDefinition objects │ +└─────────────────────────────────────────────────────────────────────┘ + │ + ▼ +┌─────────────────────────────────────────────────────────────────────┐ +│ 5. BUILD MDX │ +│ File: docs_builder.py → build_toolkit_mdx() │ +│ • Creates header, TOC, tool specs, footer │ +└─────────────────────────────────────────────────────────────────────┘ +``` + +### Proposed Flow (Decoupled) + +``` +┌─────────────────────────────────────────────────────────────────────┐ +│ USER RUNS SCRIPT │ +│ python -m make_toolkit_docs │ +└─────────────────────────────────────────────────────────────────────┘ + │ + ▼ +┌─────────────────────────────────────────────────────────────────────┐ +│ 1. FETCH DATA (New Source) │ +│ • Reads Merged JSON (API + Metadata + Docs) │ +│ • NO local Python installation required │ +│ • NO runtime tool loading │ +└─────────────────────────────────────────────────────────────────────┘ + │ + ▼ +┌─────────────────────────────────────────────────────────────────────┐ +│ 2. PARSE DATA │ +│ • Deserializes JSON into Tool Definition Objects │ +│ • Extracts scopes, metadata, and custom sections │ +└─────────────────────────────────────────────────────────────────────┘ + │ + ▼ +┌─────────────────────────────────────────────────────────────────────┐ +│ 3. BUILD MDX │ +│ File: docs_builder.py → build_toolkit_mdx() │ +│ • Uses templates to render content │ +│ • Injects custom sections at defined points │ +│ • Adds new "Scopes" section per tool │ +└─────────────────────────────────────────────────────────────────────┘ +``` + +## Tool usage code examples generation at run time + +The make docs command right now adds a code snippet example for each tool, a js and a python. Most of that code is exact the same for all tools, so instead of creating 2 for each, templates will be used, where only will be required adding the tool call. This approach can simplify updates for all code examples, as they will be rendered from a single source. +Other point that is important is to garanteen that the generate code is syntaxally correct, so a costumer will be able to copy and paste it and run it without compile time errrors. Even if the code is syntactaclly correct, it maybe still be not functional, as some inputs require soem previous knowledge of format or data from the provider, so we wont garanteen that the code will produce a proper result only that inputs follow the right sort of input type as requested in the tool definition. + +## CI/CD Pipeline to Build and Deploy Documentation + +Documentation updates are currently manual or done locally via the `make docs` command. To automate this, we will add a CI/CD pipeline step to the existing toolkit publishing workflow. + +This workflow should trigger when new toolkit versions are released to staging. Since a single release can involve updates to **multiple toolkits simultaneously**, the pipeline must be capable of iterating through a list of changed toolkits and updating the documentation for all of them in a single batch. + +### Key Requirements + +1. **Trigger**: New release (staging) event, carrying a payload of one or more updated toolkit names/versions. +2. **Versioning Check**: For each toolkit in the payload, verify if the version has actually changed to avoid redundant updates. +3. **Data Gathering**: Loop through all changed toolkits: + - Fetch latest tool definitions from Engine API. + - Fetch metadata from Design System. +4. **Generation**: + - Update the Merged JSON file for each toolkit. +5. **PR Creation**: Create a **single Pull Request** containing updates for all affected toolkits to minimize noise. +6. **Approval**: Manual approval required to merge and publish. + +### Pipeline Workflow + +``` +┌────────────────────────────────────────────────────────────┐ +│ RELEASE EVENT (STAGING) │ +│ Payload: [Toolkit A, Toolkit B, ...] │ +└─────────────────────────────┬──────────────────────────────┘ + │ + ▼ +┌─────────────────────────────┴──────────────────────────────┐ +│ ITERATE THROUGH CHANGED TOOLKITS │ +│ │ +│ ┌──────────────────────────────────────────────────────┐ │ +│ │ 1. CHECK VERSION │ │ +│ │ • Has Toolkit X version changed? │ │ +│ │ • IF NO: Skip to next │ │ +│ │ • IF YES: Add to update list │ │ +│ └──────────────────────────┬───────────────────────────┘ │ +│ │ │ +│ ▼ │ +│ ┌──────────────────────────────────────────────────────┐ │ +│ │ 2. GATHER & MERGE DATA │ │ +│ │ • Fetch Tool Definitions (Engine API) │ │ +│ │ • Fetch Metadata (Design System) │ │ +│ │ • Write/Update {toolkit_id}.json │ │ +│ └──────────────────────────┬───────────────────────────┘ │ +│ │ │ +│ ▼ │ +│ ┌──────────────────────────────────────────────────────┐ │ +│ │ 3. GENERATE DOCUMENTATION │ │ +│ │ • Run make_toolkit_docs --from-json │ │ +│ └──────────────────────────────────────────────────────┘ │ +│ │ +└─────────────────────────────┬──────────────────────────────┘ + │ + ▼ +┌────────────────────────────────────────────────────────────┐ +│ 4. CREATE PULL REQUEST │ +│ • Commit changes for ALL updated toolkits │ +│ • Open single PR in docs repo │ +└─────────────────────────────┬──────────────────────────────┘ + │ + ▼ +┌────────────────────────────────────────────────────────────┐ +│ 5. MANUAL APPROVAL │ +│ • Human reviews changes │ +│ • Merge PR -> Deploys to Production │ +└────────────────────────────────────────────────────────────┘ +``` + +## Future changes + +After a call with Sergio and Eric we discussed about the current project Eric is working on, where he will enable the addition of metadata to the tools, like tags and categories. Right now in the scope of his work are only already defined fields to be added, a dynamic payload was suggested, as it would allow enriching the tool definition with the data that is stored in design system thus all data that one would need for the docs would have a single source, that would be the Engine API. This would turn all the work related to the processing and merging of tool date from engine + design system unnecessary. +As currently there is not planning on when this feature will be added to the engine, what we can do is making the code modular enough so the data source can be easily swapped. +Besides the centralized source of tools other info would be available that can be added already in the docs when the first iteration of the feature is ready. In case of Eric merging it before this project is finished it probably is worth it to add the support for the metadata he is currently adding even if it would still require both sources for tools definitions. + +# Share Planning + +For the sharing plan the documentation itself is a manner of sharing the required knowledge to understand our tools with the community. Besides that we can add in the weekly newsletter so we can inform consumers that now our docs are more reliable. + +# Measurement Planning + +For measurement plan, we can use metrics from the access of tools documentation page and also try to collect user's feedback on how they feel about the documentation after some time of the release. diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 96c25c6f0..0fb37de48 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -13,19 +13,31 @@ importers: dependencies: '@arcadeai/design-system': specifier: ^3.26.1 - version: 3.26.1(@hookform/resolvers@5.2.2(react-hook-form@7.65.0(react@19.2.3)))(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(lucide-react@0.548.0(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react-hook-form@7.65.0(react@19.2.3))(react@19.2.3)(recharts@3.6.0(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react-is@16.13.1)(react@19.2.3)(redux@5.0.1))(tailwindcss@4.1.16)(vite@7.3.0(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(yaml@2.8.2)) + version: 3.27.5(@hookform/resolvers@5.2.2(react-hook-form@7.65.0(react@19.2.3)))(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(lucide-react@0.548.0(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react-hook-form@7.65.0(react@19.2.3))(react@19.2.3)(recharts@3.6.0(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react-is@16.13.1)(react@19.2.3)(redux@5.0.1))(tailwindcss@4.1.16) + '@mdx-js/mdx': + specifier: ^3.1.1 + version: 3.1.1 + '@mdx-js/react': + specifier: ^3.1.1 + version: 3.1.1(@types/react@19.2.7)(react@19.2.3) '@next/third-parties': specifier: 16.0.1 version: 16.0.1(next@16.1.1(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react@19.2.3) '@ory/client': specifier: 1.22.7 version: 1.22.7 + '@tailwindcss/typography': + specifier: ^0.5.19 + version: 0.5.19(tailwindcss@4.1.16) '@theguild/remark-mermaid': specifier: 0.3.0 version: 0.3.0(react@19.2.3) '@uidotdev/usehooks': specifier: 2.4.1 version: 2.4.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + chalk: + specifier: ^5.6.2 + version: 5.6.2 lucide-react: specifier: 0.548.0 version: 0.548.0(react@19.2.3) @@ -43,7 +55,7 @@ importers: version: 4.6.0(next@16.1.1(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3) nextra-theme-docs: specifier: 4.6.0 - version: 4.6.0(@types/react@19.2.7)(immer@11.1.3)(next@16.1.1(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(nextra@4.6.0(next@16.1.1(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3)) + version: 4.6.0(@types/react@19.2.7)(immer@11.0.1)(next@16.1.1(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(nextra@4.6.0(next@16.1.1(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3)) posthog-js: specifier: 1.321.2 version: 1.321.2 @@ -56,9 +68,15 @@ importers: react-hook-form: specifier: 7.65.0 version: 7.65.0(react@19.2.3) + react-markdown: + specifier: ^10.1.0 + version: 10.1.0(@types/react@19.2.7)(react@19.2.3) react-syntax-highlighter: specifier: 16.1.0 version: 16.1.0(react@19.2.3) + remark-gfm: + specifier: ^4.0.1 + version: 4.0.1 swagger-ui-react: specifier: ^5.30.0 version: 5.31.0(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) @@ -73,7 +91,7 @@ importers: version: 6.0.2 zustand: specifier: 5.0.8 - version: 5.0.8(@types/react@19.2.7)(immer@11.1.3)(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3)) + version: 5.0.8(@types/react@19.2.7)(immer@11.0.1)(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3)) devDependencies: '@anthropic-ai/sdk': specifier: ^0.71.2 @@ -108,6 +126,9 @@ importers: '@types/unist': specifier: 3.0.3 version: 3.0.3 + baseline-browser-mapping: + specifier: ^2.9.19 + version: 2.9.19 commander: specifier: 14.0.2 version: 14.0.2 @@ -123,6 +144,9 @@ importers: lint-staged: specifier: 16.2.6 version: 16.2.6 + next-sitemap: + specifier: ^4.2.3 + version: 4.2.3(next@16.1.1(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3)) next-validate-link: specifier: 1.6.3 version: 1.6.3 @@ -184,20 +208,20 @@ packages: zod: optional: true - '@arcadeai/arcadejs@1.15.0': - resolution: {integrity: sha512-2nqc2QZQNKggIWNgjM7CN2HC3VB7Kd9gFO1wAyUXp/oPehGnM3u+u6PGc9rHgIkIQvr2TpEzCa/x4PrVrsyjpQ==} + '@arcadeai/arcadejs@1.11.1': + resolution: {integrity: sha512-6AKMTO/cT/bj3GGMF4F76R2oC/FXIfkkXr6k/5/55NmUdpyzdqb5HhPN1M1txLoKIUc0/BGP8anM9lPFxwRW5g==} - '@arcadeai/design-system@3.26.1': - resolution: {integrity: sha512-wUPoimNnhQaH+MyyGFYHPaeimyWPabewXAHXlRWXubj2Dw+Rg1edTWx6YRf8TiEPM22rYantCybNMrYDKZP14w==} + '@arcadeai/design-system@3.27.5': + resolution: {integrity: sha512-uLK5ZWGdtHDp6T68i/MSRKcXt33tZSW4ViCdOJTiTcMFi0t5e+nWz70kD9ZpTK20FNGuWVEGnGHJPyTjLQJcVg==} engines: {node: '>=20.17.0'} peerDependencies: - '@hookform/resolvers': ^5.2.1 - lucide-react: ^0.544.0 - react: ^19.2.1 - react-dom: ^19.2.1 - react-hook-form: ^7.62.0 - recharts: ^3.2.0 - tailwindcss: ^4.1.13 + '@hookform/resolvers': 5.2.1 + lucide-react: 0.544.0 + react: 19.2.1 + react-dom: 19.2.1 + react-hook-form: 7.62.0 + recharts: 3.2.0 + tailwindcss: 4.1.13 '@babel/runtime-corejs3@7.28.4': resolution: {integrity: sha512-h7iEYiW4HebClDEhtvFObtPmIvrd1SSfpI9EhOeKk4CtIK/ngBWFpuhCzhdmRKtg71ylcue+9I6dv54XYO1epQ==} @@ -284,6 +308,12 @@ packages: '@clack/prompts@0.11.0': resolution: {integrity: sha512-pMN5FcrEw9hUkZA4f+zLlzivQSeQf5dRGJjSUbvVYDLvpKCdQx5OaknvKzgbtXOizhP+SJJJjqEbOe55uKKfAw==} + '@corex/deepmerge@4.0.43': + resolution: {integrity: sha512-N8uEMrMPL0cu/bdboEWpQYb/0i2K5Qn8eCsxzOmxSggJbbQte7ljMRoXm917AbntqTGOzdTu+vP3KOOzoC70HQ==} + + '@date-fns/tz@1.4.1': + resolution: {integrity: sha512-P5LUNhtbj6YfI3iJjw5EL9eUAG6OitD0W3fWQcpQjDRc/QIsL0tRNuO1PcDvPccWL1fSTXXdE1ds+l95DV/OFA==} + '@emnapi/runtime@1.7.1': resolution: {integrity: sha512-PVtJr5CmLwYAU9PZDMITZoR5iAOShYREoR45EyyLrbntV50mdePTgUn4AmOw90Ifcj+x2kRjdzr1HP3RrNiHGA==} @@ -630,10 +660,6 @@ packages: resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==} engines: {node: 20 || >=22} - '@isaacs/fs-minipass@4.0.1': - resolution: {integrity: sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==} - engines: {node: '>=18.0.0'} - '@jridgewell/gen-mapping@0.3.13': resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} @@ -653,6 +679,12 @@ packages: '@mdx-js/mdx@3.1.1': resolution: {integrity: sha512-f6ZO2ifpwAQIpzGWaBQT2TXxPv6z3RBzQKpVftEWN78Vl/YweF1uwussDx8ECAXVtr3Rs89fKyG9YlzUs9DyGQ==} + '@mdx-js/react@3.1.1': + resolution: {integrity: sha512-f++rKLQgUVYDAtECQ6fn/is15GkEH9+nZPM3MS0RcxVqoTfawHvDlSCH7JbMhAM6uJ32v3eXLvLmLvjGu7PTQw==} + peerDependencies: + '@types/react': '>=16' + react: '>=16' + '@mermaid-js/parser@0.6.3': resolution: {integrity: sha512-lnjOhe7zyHjc+If7yT4zoedx2vo4sHaTmtkl1+or8BRTnCtDmcTpAjpzDSfCZrshM5bCoz0GyidzadJAH1xobA==} @@ -750,6 +782,9 @@ packages: resolution: {integrity: sha512-bMVoAKhpjTOPHkW/lprDPwv5aD4R4C3Irt8vn+SKA9wudLe9COLxOhurrKRsxmZccUbWXRF7vukNeGUAj5P8kA==} engines: {node: '>= 10'} + '@next/env@13.5.11': + resolution: {integrity: sha512-fbb2C7HChgM7CemdCY+y3N1n8pcTKdqtQLbC7/EQtPdLvlMUT9JX/dBYl8MMZAtYG4uVMyPFHXckb68q/NRwqg==} + '@next/env@16.1.1': resolution: {integrity: sha512-3oxyM97Sr2PqiVyMyrZUtrtM3jqqFxOQJVuKclDsgj/L728iZt/GyslkN4NwarledZATCenbk4Offjk1hQmaAA==} @@ -885,8 +920,8 @@ packages: peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/core@2.4.0': - resolution: {integrity: sha512-KtcyFHssTn5ZgDu6SXmUznS80OFs/wN7y6MyFRRcKU6TOw8hNcGxKvt8hsdaLJfhzUszNSjURetq5Qpkad14Gw==} + '@opentelemetry/core@2.5.0': + resolution: {integrity: sha512-ka4H8OM6+DlUhSAZpONu0cPBtPPTQKxbxVzC4CzVx5+K4JnroJVBtDzLAMx4/3CDTJXRvVFhpFjtl4SaiTNoyQ==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' @@ -915,8 +950,8 @@ packages: peerDependencies: '@opentelemetry/api': '>=1.3.0 <1.10.0' - '@opentelemetry/resources@2.4.0': - resolution: {integrity: sha512-RWvGLj2lMDZd7M/5tjkI/2VHMpXebLgPKvBUd9LRasEWR2xAynDwEYZuLvY9P2NGG73HF07jbbgWX2C9oavcQg==} + '@opentelemetry/resources@2.5.0': + resolution: {integrity: sha512-F8W52ApePshpoSrfsSk1H2yJn9aKjCrbpQF1M9Qii0GHzbfVeFUB+rc3X4aggyZD8x9Gu3Slua+s6krmq6Dt8g==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': '>=1.3.0 <1.10.0' @@ -939,8 +974,8 @@ packages: peerDependencies: '@opentelemetry/api': '>=1.3.0 <1.10.0' - '@opentelemetry/semantic-conventions@1.38.0': - resolution: {integrity: sha512-kocjix+/sSggfJhwXqClZ3i9Y/MI0fp7b+g7kCRm6psy2dsf8uApTRclwG18h8Avm7C9+fnt+O36PspJ/OzoWg==} + '@opentelemetry/semantic-conventions@1.39.0': + resolution: {integrity: sha512-R5R9tb2AXs2IRLNKLBJDynhkfmx7mX0vi8NkhZb3gUkPWHn6HXk5J8iQ/dql0U3ApfWym4kXXmBDRGO+oeOfjg==} engines: {node: '>=14'} '@ory/client@1.22.7': @@ -1887,132 +1922,63 @@ packages: '@swc/helpers@0.5.17': resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==} - '@tailwindcss/node@4.1.14': - resolution: {integrity: sha512-hpz+8vFk3Ic2xssIA3e01R6jkmsAhvkQdXlEbRTk6S10xDAtiQiM3FyvZVGsucefq764euO/b8WUW9ysLdThHw==} - '@tailwindcss/node@4.1.16': resolution: {integrity: sha512-BX5iaSsloNuvKNHRN3k2RcCuTEgASTo77mofW0vmeHkfrDWaoFAFvNHpEgtu0eqyypcyiBkDWzSMxJhp3AUVcw==} - '@tailwindcss/oxide-android-arm64@4.1.14': - resolution: {integrity: sha512-a94ifZrGwMvbdeAxWoSuGcIl6/DOP5cdxagid7xJv6bwFp3oebp7y2ImYsnZBMTwjn5Ev5xESvS3FFYUGgPODQ==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [android] - '@tailwindcss/oxide-android-arm64@4.1.16': resolution: {integrity: sha512-8+ctzkjHgwDJ5caq9IqRSgsP70xhdhJvm+oueS/yhD5ixLhqTw9fSL1OurzMUhBwE5zK26FXLCz2f/RtkISqHA==} engines: {node: '>= 10'} cpu: [arm64] os: [android] - '@tailwindcss/oxide-darwin-arm64@4.1.14': - resolution: {integrity: sha512-HkFP/CqfSh09xCnrPJA7jud7hij5ahKyWomrC3oiO2U9i0UjP17o9pJbxUN0IJ471GTQQmzwhp0DEcpbp4MZTA==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [darwin] - '@tailwindcss/oxide-darwin-arm64@4.1.16': resolution: {integrity: sha512-C3oZy5042v2FOALBZtY0JTDnGNdS6w7DxL/odvSny17ORUnaRKhyTse8xYi3yKGyfnTUOdavRCdmc8QqJYwFKA==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] - '@tailwindcss/oxide-darwin-x64@4.1.14': - resolution: {integrity: sha512-eVNaWmCgdLf5iv6Qd3s7JI5SEFBFRtfm6W0mphJYXgvnDEAZ5sZzqmI06bK6xo0IErDHdTA5/t7d4eTfWbWOFw==} - engines: {node: '>= 10'} - cpu: [x64] - os: [darwin] - '@tailwindcss/oxide-darwin-x64@4.1.16': resolution: {integrity: sha512-vjrl/1Ub9+JwU6BP0emgipGjowzYZMjbWCDqwA2Z4vCa+HBSpP4v6U2ddejcHsolsYxwL5r4bPNoamlV0xDdLg==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] - '@tailwindcss/oxide-freebsd-x64@4.1.14': - resolution: {integrity: sha512-QWLoRXNikEuqtNb0dhQN6wsSVVjX6dmUFzuuiL09ZeXju25dsei2uIPl71y2Ic6QbNBsB4scwBoFnlBfabHkEw==} - engines: {node: '>= 10'} - cpu: [x64] - os: [freebsd] - '@tailwindcss/oxide-freebsd-x64@4.1.16': resolution: {integrity: sha512-TSMpPYpQLm+aR1wW5rKuUuEruc/oOX3C7H0BTnPDn7W/eMw8W+MRMpiypKMkXZfwH8wqPIRKppuZoedTtNj2tg==} engines: {node: '>= 10'} cpu: [x64] os: [freebsd] - '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.14': - resolution: {integrity: sha512-VB4gjQni9+F0VCASU+L8zSIyjrLLsy03sjcR3bM0V2g4SNamo0FakZFKyUQ96ZVwGK4CaJsc9zd/obQy74o0Fw==} - engines: {node: '>= 10'} - cpu: [arm] - os: [linux] - '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.16': resolution: {integrity: sha512-p0GGfRg/w0sdsFKBjMYvvKIiKy/LNWLWgV/plR4lUgrsxFAoQBFrXkZ4C0w8IOXfslB9vHK/JGASWD2IefIpvw==} engines: {node: '>= 10'} cpu: [arm] os: [linux] - '@tailwindcss/oxide-linux-arm64-gnu@4.1.14': - resolution: {integrity: sha512-qaEy0dIZ6d9vyLnmeg24yzA8XuEAD9WjpM5nIM1sUgQ/Zv7cVkharPDQcmm/t/TvXoKo/0knI3me3AGfdx6w1w==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - '@tailwindcss/oxide-linux-arm64-gnu@4.1.16': resolution: {integrity: sha512-DoixyMmTNO19rwRPdqviTrG1rYzpxgyYJl8RgQvdAQUzxC1ToLRqtNJpU/ATURSKgIg6uerPw2feW0aS8SNr/w==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@tailwindcss/oxide-linux-arm64-musl@4.1.14': - resolution: {integrity: sha512-ISZjT44s59O8xKsPEIesiIydMG/sCXoMBCqsphDm/WcbnuWLxxb+GcvSIIA5NjUw6F8Tex7s5/LM2yDy8RqYBQ==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - '@tailwindcss/oxide-linux-arm64-musl@4.1.16': resolution: {integrity: sha512-H81UXMa9hJhWhaAUca6bU2wm5RRFpuHImrwXBUvPbYb+3jo32I9VIwpOX6hms0fPmA6f2pGVlybO6qU8pF4fzQ==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@tailwindcss/oxide-linux-x64-gnu@4.1.14': - resolution: {integrity: sha512-02c6JhLPJj10L2caH4U0zF8Hji4dOeahmuMl23stk0MU1wfd1OraE7rOloidSF8W5JTHkFdVo/O7uRUJJnUAJg==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - '@tailwindcss/oxide-linux-x64-gnu@4.1.16': resolution: {integrity: sha512-ZGHQxDtFC2/ruo7t99Qo2TTIvOERULPl5l0K1g0oK6b5PGqjYMga+FcY1wIUnrUxY56h28FxybtDEla+ICOyew==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@tailwindcss/oxide-linux-x64-musl@4.1.14': - resolution: {integrity: sha512-TNGeLiN1XS66kQhxHG/7wMeQDOoL0S33x9BgmydbrWAb9Qw0KYdd8o1ifx4HOGDWhVmJ+Ul+JQ7lyknQFilO3Q==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - '@tailwindcss/oxide-linux-x64-musl@4.1.16': resolution: {integrity: sha512-Oi1tAaa0rcKf1Og9MzKeINZzMLPbhxvm7rno5/zuP1WYmpiG0bEHq4AcRUiG2165/WUzvxkW4XDYCscZWbTLZw==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@tailwindcss/oxide-wasm32-wasi@4.1.14': - resolution: {integrity: sha512-uZYAsaW/jS/IYkd6EWPJKW/NlPNSkWkBlaeVBi/WsFQNP05/bzkebUL8FH1pdsqx4f2fH/bWFcUABOM9nfiJkQ==} - engines: {node: '>=14.0.0'} - cpu: [wasm32] - bundledDependencies: - - '@napi-rs/wasm-runtime' - - '@emnapi/core' - - '@emnapi/runtime' - - '@tybys/wasm-util' - - '@emnapi/wasi-threads' - - tslib - '@tailwindcss/oxide-wasm32-wasi@4.1.16': resolution: {integrity: sha512-B01u/b8LteGRwucIBmCQ07FVXLzImWESAIMcUU6nvFt/tYsQ6IHz8DmZ5KtvmwxD+iTYBtM1xwoGXswnlu9v0Q==} engines: {node: '>=14.0.0'} @@ -2025,34 +1991,18 @@ packages: - '@emnapi/wasi-threads' - tslib - '@tailwindcss/oxide-win32-arm64-msvc@4.1.14': - resolution: {integrity: sha512-Az0RnnkcvRqsuoLH2Z4n3JfAef0wElgzHD5Aky/e+0tBUxUhIeIqFBTMNQvmMRSP15fWwmvjBxZ3Q8RhsDnxAA==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [win32] - '@tailwindcss/oxide-win32-arm64-msvc@4.1.16': resolution: {integrity: sha512-zX+Q8sSkGj6HKRTMJXuPvOcP8XfYON24zJBRPlszcH1Np7xuHXhWn8qfFjIujVzvH3BHU+16jBXwgpl20i+v9A==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] - '@tailwindcss/oxide-win32-x64-msvc@4.1.14': - resolution: {integrity: sha512-ttblVGHgf68kEE4om1n/n44I0yGPkCPbLsqzjvybhpwa6mKKtgFfAzy6btc3HRmuW7nHe0OOrSeNP9sQmmH9XA==} - engines: {node: '>= 10'} - cpu: [x64] - os: [win32] - '@tailwindcss/oxide-win32-x64-msvc@4.1.16': resolution: {integrity: sha512-m5dDFJUEejbFqP+UXVstd4W/wnxA4F61q8SoL+mqTypId2T2ZpuxosNSgowiCnLp2+Z+rivdU0AqpfgiD7yCBg==} engines: {node: '>= 10'} cpu: [x64] os: [win32] - '@tailwindcss/oxide@4.1.14': - resolution: {integrity: sha512-23yx+VUbBwCg2x5XWdB8+1lkPajzLmALEfMb51zZUBYaYVPDQvBSD/WYDqiVyBIo2BZFa3yw1Rpy3G2Jp+K0dw==} - engines: {node: '>= 10'} - '@tailwindcss/oxide@4.1.16': resolution: {integrity: sha512-2OSv52FRuhdlgyOQqgtQHuCgXnS8nFSYRp2tJ+4WZXKgTxqPy7SMSls8c3mPT5pkZ17SBToGM5LHEJBO7miEdg==} engines: {node: '>= 10'} @@ -2060,10 +2010,10 @@ packages: '@tailwindcss/postcss@4.1.16': resolution: {integrity: sha512-Qn3SFGPXYQMKR/UtqS+dqvPrzEeBZHrFA92maT4zijCVggdsXnDBMsPFJo1eArX3J+O+Gi+8pV4PkqjLCNBk3A==} - '@tailwindcss/vite@4.1.14': - resolution: {integrity: sha512-BoFUoU0XqgCUS1UXWhmDJroKKhNXeDzD7/XwabjkDIAbMnc4ULn5e2FuEuBbhZ6ENZoSYzKlzvZ44Yr6EUDUSA==} + '@tailwindcss/typography@0.5.19': + resolution: {integrity: sha512-w31dd8HOx3k9vPtcQh5QHP9GwKcgbMp87j58qi6xgiBnFFtKEAgCWnDw4qUT8aHwkCp8bKvb/KGKWWHedP0AAg==} peerDependencies: - vite: ^5.2.0 || ^6 || ^7 + tailwindcss: '>=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1' '@tanstack/react-virtual@3.13.13': resolution: {integrity: sha512-4o6oPMDvQv+9gMi8rE6gWmsOjtUZUYIJHv7EB+GblyYdi8U6OqLl8rhHWIUZSL1dUU2dPwTdTgybCKf9EjIrQg==} @@ -2071,9 +2021,18 @@ packages: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + '@tanstack/react-virtual@3.13.18': + resolution: {integrity: sha512-dZkhyfahpvlaV0rIKnvQiVoWPyURppl6w4m9IwMDpuIjcJ1sD9YGWrt0wISvgU7ewACXx2Ct46WPgI6qAD4v6A==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + '@tanstack/virtual-core@3.13.13': resolution: {integrity: sha512-uQFoSdKKf5S8k51W5t7b2qpfkyIbdHMzAn+AMQvHPxKUPeo1SsGaA4JRISQT87jm28b7z8OEqPcg1IOZagQHcA==} + '@tanstack/virtual-core@3.13.18': + resolution: {integrity: sha512-Mx86Hqu1k39icq2Zusq+Ey2J6dDWTjDvEv43PJtRCoEYTLyfaPnxIQ6iy7YAOK0NV/qOEmZQ/uCufrppZxTgcg==} + '@theguild/remark-mermaid@0.3.0': resolution: {integrity: sha512-Fy1J4FSj8totuHsHFpaeWyWRaRSIvpzGTRoEfnNJc1JmLV9uV70sYE3zcT+Jj5Yw20Xq4iCsiT+3Ho49BBZcBQ==} peerDependencies: @@ -2176,9 +2135,6 @@ packages: '@types/d3-shape@3.1.7': resolution: {integrity: sha512-VLvUQ33C+3J+8p+Daf+nYSOsjB4GXp19/S/aGo60m9h1v6XaxjiT82lKVWJCfzhtuZ3yD7i/TPeC/fuKLLOSmg==} - '@types/d3-shape@3.1.8': - resolution: {integrity: sha512-lae0iWfcDeR7qt7rA88BNiqdvPS5pFVPpo5OfjElwNaT2yyekbM0C9vK+yqBqEmHr6lDkRnYNoTBYlAgJa7a4w==} - '@types/d3-time-format@4.0.3': resolution: {integrity: sha512-5xg9rC+wWL8kdDj153qZcsJ0FWiFt0J5RB6LYUNZjwSnesfblqrI/bJ1wBdJ8OQfncgbJG5+2F+qfqnqyzYxyg==} @@ -2233,8 +2189,8 @@ packages: '@types/node-fetch@2.6.13': resolution: {integrity: sha512-QGpRVpzSaUs30JBSGPjOg4Uveu384erbHBoT1zeONvyCfwQxIkUshLAOqN/k9EjGviPRmWTTe6aH2qySWKTVSw==} - '@types/node@20.19.27': - resolution: {integrity: sha512-N2clP5pJhB2YnZJ3PIHFk5RkygRX5WO/5f0WC08tp0wd+sv0rsJk3MqWn3CbNmT2J505a5336jaQj4ph1AdMug==} + '@types/node@18.19.130': + resolution: {integrity: sha512-GRaXQx6jGfL8sKfaIDD6OupbIHBr9jv7Jnaml9tB7l4v068PAOXqfcujMMo5PhbIs6ggR1XODELqahT2R8v0fg==} '@types/node@24.9.2': resolution: {integrity: sha512-uWN8YqxXxqFMX2RqGOrumsKeti4LlmIMIyV0lgut4jx7KQBcBiW6vkDtIBvHnHIquwNfJhk8v2OtmO8zXWHfPA==} @@ -2398,8 +2354,8 @@ packages: base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - baseline-browser-mapping@2.9.14: - resolution: {integrity: sha512-B0xUquLkiGLgHhpPBqvl7GWegWBUNuujQ6kXd/r1U38ElPT6Ok8KZ8e+FpUGEc2ZoRQUzq/aUnaKFc/svWUGSg==} + baseline-browser-mapping@2.9.19: + resolution: {integrity: sha512-ipDqC8FrAl/76p2SSWKSI+H9tFwm7vYqXQrItCuiVPt26Km0jS+NzSsBWAaBusvSbQcfJG+JitdMm+wZAgTYqg==} hasBin: true before-after-hook@4.0.0: @@ -2466,10 +2422,6 @@ packages: chevrotain@11.0.3: resolution: {integrity: sha512-ci2iJH6LeIkvP9eJW6gpueU8cnZhv85ELY8w8WiFtNjMHA5ad6pQLaJo9mEly/9qUyCpvqX8/POVUTf18/HFdw==} - chownr@3.0.0: - resolution: {integrity: sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==} - engines: {node: '>=18'} - citty@0.1.6: resolution: {integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==} @@ -2575,6 +2527,11 @@ packages: css.escape@1.5.1: resolution: {integrity: sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==} + cssesc@3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true + csstype@3.2.3: resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} @@ -2734,6 +2691,12 @@ packages: dagre-d3-es@7.0.13: resolution: {integrity: sha512-efEhnxpSuwpYOKRm/L5KbqoZmNNukHa/Flty4Wp62JRvgH2ojwVgPgdYyr4twpieZnyRDdIH7PY2mopX26+j2Q==} + date-fns-jalali@4.1.0-0: + resolution: {integrity: sha512-hTIP/z+t+qKwBDcmmsnmjWTduxCg+5KfdqWQvb2X/8C9+knYY6epN/pfxdDuyVlSVeFz0sM5eEfwIUQ70U4ckg==} + + date-fns@4.1.0: + resolution: {integrity: sha512-Ukq0owbQXxa/U3EGtsdVBkR1w7KOQ5gIBqdH2hkvknzZPYvBxb/aa6E8L7tmjFtkwZBu3UXBbjIgPo/Ez4xaNg==} + dayjs@1.11.19: resolution: {integrity: sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw==} @@ -2837,8 +2800,8 @@ packages: resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} engines: {node: '>= 0.4'} - es-toolkit@1.44.0: - resolution: {integrity: sha512-6penXeZalaV88MM3cGkFZZfOoLGWshWWfdy0tWw/RlVVyhvMaWSBTOvXNeiW3e5FwdS5ePW0LGEu17zT139ktg==} + es-toolkit@1.43.0: + resolution: {integrity: sha512-SKCT8AsWvYzBBuUqMk4NPwFlSdqLpJwmy6AP322ERn8W2YLIB6JBXnwMI2Qsh2gfphT3q7EKAxKb23cvFHFwKA==} esast-util-from-estree@2.0.0: resolution: {integrity: sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==} @@ -2898,9 +2861,6 @@ packages: eventemitter3@5.0.1: resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} - eventemitter3@5.0.4: - resolution: {integrity: sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==} - execa@8.0.1: resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} engines: {node: '>=16.17'} @@ -3111,6 +3071,9 @@ packages: highlightjs-vue@1.0.0: resolution: {integrity: sha512-PDEfEF102G23vHmPhLyPboFCD+BkMGu+GuJe2d9/eH4FsCwvgBpnc9n0pGE+ffKdph38s6foEZiEjdgHdzp+IA==} + html-url-attributes@3.0.1: + resolution: {integrity: sha512-ol6UPyBWqsrO6EJySPz2O7ZSr856WDrEzM5zMqp+FJJLGMW35cLYmmZnl0vztAZxRUoNZJFTCohfjuIJ8I4QBQ==} + html-void-elements@3.0.0: resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} @@ -3136,8 +3099,8 @@ packages: immer@10.2.0: resolution: {integrity: sha512-d/+XTN3zfODyjr89gM3mPq1WNX2B8pYsu7eORitdwyA2sBubnTl3laYlBk4sXY5FUa5qTZGBDPJICVbvqzjlbw==} - immer@11.1.3: - resolution: {integrity: sha512-6jQTc5z0KJFtr1UgFpIL3N9XSC3saRaI9PwWtzM2pSqkNGtiNkYY2OSwkOGDK2XcTRcLb1pi/aNkKZz0nxVH4Q==} + immer@11.0.1: + resolution: {integrity: sha512-naDCyggtcBWANtIrjQEajhhBEuL9b0Zg4zmlWK2CzS6xCWSE39/vvf4LqnMjUAWHBhot4m9MHCM/Z+mfWhUkiA==} immutable@3.8.2: resolution: {integrity: sha512-15gZoQ38eYjEjxkorfbcgBKBL6R7T459OuK+CpcWt7O3KF4uPCx2tD0uFETlUDIyo+1789crbMhTvQBSR5yBMg==} @@ -3291,130 +3254,66 @@ packages: cpu: [arm64] os: [android] - lightningcss-darwin-arm64@1.30.1: - resolution: {integrity: sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ==} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [darwin] - lightningcss-darwin-arm64@1.30.2: resolution: {integrity: sha512-ylTcDJBN3Hp21TdhRT5zBOIi73P6/W0qwvlFEk22fkdXchtNTOU4Qc37SkzV+EKYxLouZ6M4LG9NfZ1qkhhBWA==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [darwin] - lightningcss-darwin-x64@1.30.1: - resolution: {integrity: sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [darwin] - lightningcss-darwin-x64@1.30.2: resolution: {integrity: sha512-oBZgKchomuDYxr7ilwLcyms6BCyLn0z8J0+ZZmfpjwg9fRVZIR5/GMXd7r9RH94iDhld3UmSjBM6nXWM2TfZTQ==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [darwin] - lightningcss-freebsd-x64@1.30.1: - resolution: {integrity: sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [freebsd] - lightningcss-freebsd-x64@1.30.2: resolution: {integrity: sha512-c2bH6xTrf4BDpK8MoGG4Bd6zAMZDAXS569UxCAGcA7IKbHNMlhGQ89eRmvpIUGfKWNVdbhSbkQaWhEoMGmGslA==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [freebsd] - lightningcss-linux-arm-gnueabihf@1.30.1: - resolution: {integrity: sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q==} - engines: {node: '>= 12.0.0'} - cpu: [arm] - os: [linux] - lightningcss-linux-arm-gnueabihf@1.30.2: resolution: {integrity: sha512-eVdpxh4wYcm0PofJIZVuYuLiqBIakQ9uFZmipf6LF/HRj5Bgm0eb3qL/mr1smyXIS1twwOxNWndd8z0E374hiA==} engines: {node: '>= 12.0.0'} cpu: [arm] os: [linux] - lightningcss-linux-arm64-gnu@1.30.1: - resolution: {integrity: sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw==} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [linux] - lightningcss-linux-arm64-gnu@1.30.2: resolution: {integrity: sha512-UK65WJAbwIJbiBFXpxrbTNArtfuznvxAJw4Q2ZGlU8kPeDIWEX1dg3rn2veBVUylA2Ezg89ktszWbaQnxD/e3A==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [linux] - lightningcss-linux-arm64-musl@1.30.1: - resolution: {integrity: sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ==} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [linux] - lightningcss-linux-arm64-musl@1.30.2: resolution: {integrity: sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [linux] - lightningcss-linux-x64-gnu@1.30.1: - resolution: {integrity: sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [linux] - lightningcss-linux-x64-gnu@1.30.2: resolution: {integrity: sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [linux] - lightningcss-linux-x64-musl@1.30.1: - resolution: {integrity: sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [linux] - lightningcss-linux-x64-musl@1.30.2: resolution: {integrity: sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [linux] - lightningcss-win32-arm64-msvc@1.30.1: - resolution: {integrity: sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA==} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [win32] - lightningcss-win32-arm64-msvc@1.30.2: resolution: {integrity: sha512-FZn+vaj7zLv//D/192WFFVA0RgHawIcHqLX9xuWiQt7P0PtdFEVaxgF9rjM/IRYHQXNnk61/H/gb2Ei+kUQ4xQ==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [win32] - lightningcss-win32-x64-msvc@1.30.1: - resolution: {integrity: sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [win32] - lightningcss-win32-x64-msvc@1.30.2: resolution: {integrity: sha512-5g1yc73p+iAkid5phb4oVFMB45417DkRevRbt/El/gKXJk4jid+vPFF/AXbxn05Aky8PapwzZrdJShv5C0avjw==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [win32] - lightningcss@1.30.1: - resolution: {integrity: sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg==} - engines: {node: '>= 12.0.0'} - lightningcss@1.30.2: resolution: {integrity: sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ==} engines: {node: '>= 12.0.0'} @@ -3696,13 +3595,8 @@ packages: resolution: {integrity: sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==} engines: {node: '>=10'} - minipass@7.1.2: - resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} - engines: {node: '>=16 || 14 >=14.17'} - - minizlib@3.1.0: - resolution: {integrity: sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==} - engines: {node: '>= 18'} + minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} mj-context-menu@0.6.1: resolution: {integrity: sha512-7NO5s6n10TIV96d4g2uDpG7ZDpIhMh0QNfGdJw/W47JswFcosz457wqz/b5sAKvl12sxINGFCn80NZHKwxQEXA==} @@ -3750,6 +3644,13 @@ packages: resolution: {integrity: sha512-Z4SmBUweYa09+o6pG+eASabEpP6QkQ70yHj351pQoEXIs8uHbaU2DWVmzBANKgflPa47A50PtB2+NgRpQvr7vA==} engines: {node: '>= 10'} + next-sitemap@4.2.3: + resolution: {integrity: sha512-vjdCxeDuWDzldhCnyFCQipw5bfpl4HmZA7uoo3GAaYGjGgfL4Cxb1CiztPuWGmS+auYs7/8OekRS8C2cjdAsjQ==} + engines: {node: '>=14.18'} + hasBin: true + peerDependencies: + next: '*' + next-themes@0.4.6: resolution: {integrity: sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA==} peerDependencies: @@ -3951,6 +3852,10 @@ packages: resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} engines: {node: '>= 0.4'} + postcss-selector-parser@6.0.10: + resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} + engines: {node: '>=4'} + postcss@8.4.31: resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} engines: {node: ^10 || ^12 || >=14} @@ -3962,8 +3867,8 @@ packages: posthog-js@1.321.2: resolution: {integrity: sha512-h5852d9lYmSNjKWvjDkrmO9/awUU3jayNBEoEBUuMAdfDPc4yYYdxBJeDBxYnCFm6RjCLy4O+vmcwuCRC67EXA==} - preact@10.28.2: - resolution: {integrity: sha512-lbteaWGzGHdlIuiJ0l2Jq454m6kcpI1zNje6d8MlGAFlYvP2GO4ibnat7P74Esfz4sPTdM6UxtTwh/d3pwM9JA==} + preact@10.28.0: + resolution: {integrity: sha512-rytDAoiXr3+t6OIP3WGlDd0ouCUG1iCWzkcY3++Nreuoi17y6T5i/zRhe6uYfoVcxq6YU+sBtJouuRDsq8vvqA==} prismjs@1.30.0: resolution: {integrity: sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==} @@ -4021,6 +3926,12 @@ packages: peerDependencies: react: ^15.3.0 || 16 || 17 || 18 + react-day-picker@9.13.0: + resolution: {integrity: sha512-euzj5Hlq+lOHqI53NiuNhCP8HWgsPf/bBAVijR50hNaY1XwjKjShAnIe8jm8RD2W9IJUvihDIZ+KrmqfFzNhFQ==} + engines: {node: '>=18'} + peerDependencies: + react: '>=16.8.0' + react-debounce-input@3.3.0: resolution: {integrity: sha512-VEqkvs8JvY/IIZvh71Z0TC+mdbxERvYF33RcebnodlsUZ8RSgyKe2VWaHXv4+/8aoOgXLxWrdsYs2hDhcwbUgA==} peerDependencies: @@ -4057,6 +3968,12 @@ packages: react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + react-markdown@10.1.0: + resolution: {integrity: sha512-qKxVopLT/TyA6BX3Ue5NwabOsAzm0Q7kAPwq6L+wWDwisYs7R8vZ0nRXqq6rkueboxpkjvLGU9fWifiX/ZZFxQ==} + peerDependencies: + '@types/react': '>=18' + react: '>=18' + react-medium-image-zoom@5.4.0: resolution: {integrity: sha512-BsE+EnFVQzFIlyuuQrZ9iTwyKpKkqdFZV1ImEQN573QPqGrIUuNni7aF+sZwDcxlsuOMayCr6oO/PZR/yJnbRg==} peerDependencies: @@ -4449,17 +4366,14 @@ packages: tabbable@6.3.0: resolution: {integrity: sha512-EIHvdY5bPLuWForiR/AN2Bxngzpuwn1is4asboytXtpTgsArc+WmSJKVLlhdh71u7jFcryDqB2A8lQvj78MkyQ==} - tailwind-merge@3.3.1: - resolution: {integrity: sha512-gBXpgUm/3rp1lMZZrM/w7D8GKqshif0zAymAhbCyIt8KMe+0v9DQ7cdYLR4FHH/cKpdTXb+A/tKKU3eolfsI+g==} + tailwind-merge@3.4.0: + resolution: {integrity: sha512-uSaO4gnW+b3Y2aWoWfFpX62vn2sR3skfhbjsEnaBI81WD1wBLlHZe5sWf0AqjksNdYTbGBEd0UasQMT3SNV15g==} tailwindcss-animate@1.0.7: resolution: {integrity: sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA==} peerDependencies: tailwindcss: '>=3.0.0 || insiders' - tailwindcss@4.1.14: - resolution: {integrity: sha512-b7pCxjGO98LnxVkKjaZSDeNuljC4ueKUddjENJOADtubtdo8llTaJy7HwBMeLNSSo2N5QIAgklslK1+Ir8r6CA==} - tailwindcss@4.1.16: resolution: {integrity: sha512-pONL5awpaQX4LN5eiv7moSiSPd/DLDzKVRJz8Q9PgzmAdd1R4307GQS2ZpfiN7ZmekdQrfhZZiSE5jkLR4WNaA==} @@ -4467,10 +4381,6 @@ packages: resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==} engines: {node: '>=6'} - tar@7.5.4: - resolution: {integrity: sha512-AN04xbWGrSTDmVwlI4/GTlIIwMFk/XEv7uL8aa57zuvRy6s4hdBed+lVq2fAZ89XDa7Us3ANXcE3Tvqvja1kTA==} - engines: {node: '>=18'} - third-party-capital@1.0.20: resolution: {integrity: sha512-oB7yIimd8SuGptespDAZnNkzIz+NWaJCu2RMsbs4Wmp9zSDUM8Nhi3s2OOcqYuv3mN4hitXc8DVx+LyUmbUDiA==} @@ -4608,8 +4518,8 @@ packages: resolution: {integrity: sha512-CHdtZbG9MNIcIZ7fCB3SlNbaeH5tmEmOjKThjqongviMsJY5uFxtNBSQhYbj/ExX81mehp1QY2NVKkTiC4CNVA==} hasBin: true - undici-types@6.21.0: - resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} + undici-types@5.26.5: + resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} undici-types@7.16.0: resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} @@ -4693,6 +4603,9 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + uuid@11.1.0: resolution: {integrity: sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==} hasBin: true @@ -4853,10 +4766,6 @@ packages: xml@1.0.1: resolution: {integrity: sha512-huCv9IH9Tcf95zuYCsQraZtWnJvBtLVE0QHMOs8bWyZAFZNDcYjsPq1nEx8jKA9y+Beo9v+7OBPRisQTjinQMw==} - yallist@5.0.0: - resolution: {integrity: sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==} - engines: {node: '>=18'} - yaml@2.8.2: resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==} engines: {node: '>= 14.6'} @@ -4914,9 +4823,9 @@ snapshots: optionalDependencies: zod: 4.1.12 - '@arcadeai/arcadejs@1.15.0': + '@arcadeai/arcadejs@1.11.1': dependencies: - '@types/node': 20.19.27 + '@types/node': 18.19.130 '@types/node-fetch': 2.6.13 abort-controller: 3.0.0 agentkeepalive: 4.6.0 @@ -4927,9 +4836,9 @@ snapshots: transitivePeerDependencies: - encoding - '@arcadeai/design-system@3.26.1(@hookform/resolvers@5.2.2(react-hook-form@7.65.0(react@19.2.3)))(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(lucide-react@0.548.0(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react-hook-form@7.65.0(react@19.2.3))(react@19.2.3)(recharts@3.6.0(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react-is@16.13.1)(react@19.2.3)(redux@5.0.1))(tailwindcss@4.1.16)(vite@7.3.0(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(yaml@2.8.2))': + '@arcadeai/design-system@3.27.5(@hookform/resolvers@5.2.2(react-hook-form@7.65.0(react@19.2.3)))(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(lucide-react@0.548.0(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react-hook-form@7.65.0(react@19.2.3))(react@19.2.3)(recharts@3.6.0(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react-is@16.13.1)(react@19.2.3)(redux@5.0.1))(tailwindcss@4.1.16)': dependencies: - '@arcadeai/arcadejs': 1.15.0 + '@arcadeai/arcadejs': 1.11.1 '@hookform/resolvers': 5.2.2(react-hook-form@7.65.0(react@19.2.3)) '@radix-ui/react-accordion': 1.2.12(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) '@radix-ui/react-alert-dialog': 1.1.15(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) @@ -4952,23 +4861,24 @@ snapshots: '@radix-ui/react-tabs': 1.1.13(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) '@radix-ui/react-toggle': 1.1.10(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) '@radix-ui/react-tooltip': 1.2.8(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) - '@tailwindcss/vite': 4.1.14(vite@7.3.0(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(yaml@2.8.2)) + '@tanstack/react-virtual': 3.13.18(react-dom@19.2.3(react@19.2.3))(react@19.2.3) class-variance-authority: 0.7.1 clsx: 2.1.1 cmdk: 1.1.1(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + date-fns: 4.1.0 lucide-react: 0.548.0(react@19.2.3) react: 19.2.3 + react-day-picker: 9.13.0(react@19.2.3) react-dom: 19.2.3(react@19.2.3) react-hook-form: 7.65.0(react@19.2.3) react-resizable-panels: 3.0.6(react-dom@19.2.3(react@19.2.3))(react@19.2.3) recharts: 3.6.0(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react-is@16.13.1)(react@19.2.3)(redux@5.0.1) - tailwind-merge: 3.3.1 + tailwind-merge: 3.4.0 tailwindcss: 4.1.16 transitivePeerDependencies: - '@types/react' - '@types/react-dom' - encoding - - vite '@babel/runtime-corejs3@7.28.4': dependencies: @@ -5041,6 +4951,10 @@ snapshots: picocolors: 1.1.1 sisteransi: 1.0.5 + '@corex/deepmerge@4.0.43': {} + + '@date-fns/tz@1.4.1': {} + '@emnapi/runtime@1.7.1': dependencies: tslib: 2.8.1 @@ -5279,10 +5193,6 @@ snapshots: dependencies: '@isaacs/balanced-match': 4.0.1 - '@isaacs/fs-minipass@4.0.1': - dependencies: - minipass: 7.1.2 - '@jridgewell/gen-mapping@0.3.13': dependencies: '@jridgewell/sourcemap-codec': 1.5.5 @@ -5332,6 +5242,12 @@ snapshots: transitivePeerDependencies: - supports-color + '@mdx-js/react@3.1.1(@types/react@19.2.7)(react@19.2.3)': + dependencies: + '@types/mdx': 2.0.13 + '@types/react': 19.2.7 + react: 19.2.3 + '@mermaid-js/parser@0.6.3': dependencies: langium: 3.3.1 @@ -5399,6 +5315,8 @@ snapshots: '@napi-rs/simple-git-win32-ia32-msvc': 0.1.22 '@napi-rs/simple-git-win32-x64-msvc': 0.1.22 + '@next/env@13.5.11': {} + '@next/env@16.1.1': {} '@next/swc-darwin-arm64@16.1.1': @@ -5514,12 +5432,12 @@ snapshots: '@opentelemetry/core@2.2.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/semantic-conventions': 1.38.0 + '@opentelemetry/semantic-conventions': 1.39.0 - '@opentelemetry/core@2.4.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/core@2.5.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/semantic-conventions': 1.38.0 + '@opentelemetry/semantic-conventions': 1.39.0 '@opentelemetry/exporter-logs-otlp-http@0.208.0(@opentelemetry/api@1.9.0)': dependencies: @@ -5551,13 +5469,13 @@ snapshots: dependencies: '@opentelemetry/api': 1.9.0 '@opentelemetry/core': 2.2.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.38.0 + '@opentelemetry/semantic-conventions': 1.39.0 - '@opentelemetry/resources@2.4.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/resources@2.5.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.38.0 + '@opentelemetry/core': 2.5.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.39.0 '@opentelemetry/sdk-logs@0.208.0(@opentelemetry/api@1.9.0)': dependencies: @@ -5577,9 +5495,9 @@ snapshots: '@opentelemetry/api': 1.9.0 '@opentelemetry/core': 2.2.0(@opentelemetry/api@1.9.0) '@opentelemetry/resources': 2.2.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.38.0 + '@opentelemetry/semantic-conventions': 1.39.0 - '@opentelemetry/semantic-conventions@1.38.0': {} + '@opentelemetry/semantic-conventions@1.39.0': {} '@ory/client@1.22.7': dependencies: @@ -6278,7 +6196,7 @@ snapshots: dependencies: '@standard-schema/spec': 1.1.0 '@standard-schema/utils': 0.3.0 - immer: 11.1.3 + immer: 11.0.1 redux: 5.0.1 redux-thunk: 3.1.0(redux@5.0.1) reselect: 5.1.1 @@ -6802,16 +6720,6 @@ snapshots: dependencies: tslib: 2.8.1 - '@tailwindcss/node@4.1.14': - dependencies: - '@jridgewell/remapping': 2.3.5 - enhanced-resolve: 5.18.4 - jiti: 2.6.1 - lightningcss: 1.30.1 - magic-string: 0.30.21 - source-map-js: 1.2.1 - tailwindcss: 4.1.14 - '@tailwindcss/node@4.1.16': dependencies: '@jridgewell/remapping': 2.3.5 @@ -6822,96 +6730,42 @@ snapshots: source-map-js: 1.2.1 tailwindcss: 4.1.16 - '@tailwindcss/oxide-android-arm64@4.1.14': - optional: true - '@tailwindcss/oxide-android-arm64@4.1.16': optional: true - '@tailwindcss/oxide-darwin-arm64@4.1.14': - optional: true - '@tailwindcss/oxide-darwin-arm64@4.1.16': optional: true - '@tailwindcss/oxide-darwin-x64@4.1.14': - optional: true - '@tailwindcss/oxide-darwin-x64@4.1.16': optional: true - '@tailwindcss/oxide-freebsd-x64@4.1.14': - optional: true - '@tailwindcss/oxide-freebsd-x64@4.1.16': optional: true - '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.14': - optional: true - '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.16': optional: true - '@tailwindcss/oxide-linux-arm64-gnu@4.1.14': - optional: true - '@tailwindcss/oxide-linux-arm64-gnu@4.1.16': optional: true - '@tailwindcss/oxide-linux-arm64-musl@4.1.14': - optional: true - '@tailwindcss/oxide-linux-arm64-musl@4.1.16': optional: true - '@tailwindcss/oxide-linux-x64-gnu@4.1.14': - optional: true - '@tailwindcss/oxide-linux-x64-gnu@4.1.16': optional: true - '@tailwindcss/oxide-linux-x64-musl@4.1.14': - optional: true - '@tailwindcss/oxide-linux-x64-musl@4.1.16': optional: true - '@tailwindcss/oxide-wasm32-wasi@4.1.14': - optional: true - '@tailwindcss/oxide-wasm32-wasi@4.1.16': optional: true - '@tailwindcss/oxide-win32-arm64-msvc@4.1.14': - optional: true - '@tailwindcss/oxide-win32-arm64-msvc@4.1.16': optional: true - '@tailwindcss/oxide-win32-x64-msvc@4.1.14': - optional: true - '@tailwindcss/oxide-win32-x64-msvc@4.1.16': optional: true - '@tailwindcss/oxide@4.1.14': - dependencies: - detect-libc: 2.1.2 - tar: 7.5.4 - optionalDependencies: - '@tailwindcss/oxide-android-arm64': 4.1.14 - '@tailwindcss/oxide-darwin-arm64': 4.1.14 - '@tailwindcss/oxide-darwin-x64': 4.1.14 - '@tailwindcss/oxide-freebsd-x64': 4.1.14 - '@tailwindcss/oxide-linux-arm-gnueabihf': 4.1.14 - '@tailwindcss/oxide-linux-arm64-gnu': 4.1.14 - '@tailwindcss/oxide-linux-arm64-musl': 4.1.14 - '@tailwindcss/oxide-linux-x64-gnu': 4.1.14 - '@tailwindcss/oxide-linux-x64-musl': 4.1.14 - '@tailwindcss/oxide-wasm32-wasi': 4.1.14 - '@tailwindcss/oxide-win32-arm64-msvc': 4.1.14 - '@tailwindcss/oxide-win32-x64-msvc': 4.1.14 - '@tailwindcss/oxide@4.1.16': optionalDependencies: '@tailwindcss/oxide-android-arm64': 4.1.16 @@ -6935,12 +6789,10 @@ snapshots: postcss: 8.5.6 tailwindcss: 4.1.16 - '@tailwindcss/vite@4.1.14(vite@7.3.0(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(yaml@2.8.2))': + '@tailwindcss/typography@0.5.19(tailwindcss@4.1.16)': dependencies: - '@tailwindcss/node': 4.1.14 - '@tailwindcss/oxide': 4.1.14 - tailwindcss: 4.1.14 - vite: 7.3.0(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(yaml@2.8.2) + postcss-selector-parser: 6.0.10 + tailwindcss: 4.1.16 '@tanstack/react-virtual@3.13.13(react-dom@19.2.3(react@19.2.3))(react@19.2.3)': dependencies: @@ -6948,8 +6800,16 @@ snapshots: react: 19.2.3 react-dom: 19.2.3(react@19.2.3) + '@tanstack/react-virtual@3.13.18(react-dom@19.2.3(react@19.2.3))(react@19.2.3)': + dependencies: + '@tanstack/virtual-core': 3.13.18 + react: 19.2.3 + react-dom: 19.2.3(react@19.2.3) + '@tanstack/virtual-core@3.13.13': {} + '@tanstack/virtual-core@3.13.18': {} + '@theguild/remark-mermaid@0.3.0(react@19.2.3)': dependencies: mermaid: 11.12.2 @@ -7053,10 +6913,6 @@ snapshots: dependencies: '@types/d3-path': 3.1.1 - '@types/d3-shape@3.1.8': - dependencies: - '@types/d3-path': 3.1.1 - '@types/d3-time-format@4.0.3': {} '@types/d3-time@3.0.4': {} @@ -7142,9 +6998,9 @@ snapshots: '@types/node': 24.9.2 form-data: 4.0.5 - '@types/node@20.19.27': + '@types/node@18.19.130': dependencies: - undici-types: 6.21.0 + undici-types: 5.26.5 '@types/node@24.9.2': dependencies: @@ -7300,7 +7156,7 @@ snapshots: base64-js@1.5.1: {} - baseline-browser-mapping@2.9.14: {} + baseline-browser-mapping@2.9.19: {} before-after-hook@4.0.0: {} @@ -7369,8 +7225,6 @@ snapshots: '@chevrotain/utils': 11.0.3 lodash-es: 4.17.21 - chownr@3.0.0: {} - citty@0.1.6: dependencies: consola: 3.4.2 @@ -7466,6 +7320,8 @@ snapshots: css.escape@1.5.1: {} + cssesc@3.0.0: {} + csstype@3.2.3: {} cytoscape-cose-bilkent@4.1.0(cytoscape@3.33.1): @@ -7652,6 +7508,10 @@ snapshots: d3: 7.9.0 lodash-es: 4.17.21 + date-fns-jalali@4.1.0-0: {} + + date-fns@4.1.0: {} + dayjs@1.11.19: {} debug@4.4.3: @@ -7736,7 +7596,7 @@ snapshots: has-tostringtag: 1.0.2 hasown: 2.0.2 - es-toolkit@1.44.0: {} + es-toolkit@1.43.0: {} esast-util-from-estree@2.0.0: dependencies: @@ -7830,8 +7690,6 @@ snapshots: eventemitter3@5.0.1: {} - eventemitter3@5.0.4: {} - execa@8.0.1: dependencies: cross-spawn: 7.0.6 @@ -8131,6 +7989,8 @@ snapshots: highlightjs-vue@1.0.0: {} + html-url-attributes@3.0.1: {} + html-void-elements@3.0.0: {} human-signals@5.0.0: {} @@ -8149,7 +8009,7 @@ snapshots: immer@10.2.0: {} - immer@11.1.3: {} + immer@11.0.1: {} immutable@3.8.2: {} @@ -8267,81 +8127,36 @@ snapshots: lightningcss-android-arm64@1.30.2: optional: true - lightningcss-darwin-arm64@1.30.1: - optional: true - lightningcss-darwin-arm64@1.30.2: optional: true - lightningcss-darwin-x64@1.30.1: - optional: true - lightningcss-darwin-x64@1.30.2: optional: true - lightningcss-freebsd-x64@1.30.1: - optional: true - lightningcss-freebsd-x64@1.30.2: optional: true - lightningcss-linux-arm-gnueabihf@1.30.1: - optional: true - lightningcss-linux-arm-gnueabihf@1.30.2: optional: true - lightningcss-linux-arm64-gnu@1.30.1: - optional: true - lightningcss-linux-arm64-gnu@1.30.2: optional: true - lightningcss-linux-arm64-musl@1.30.1: - optional: true - lightningcss-linux-arm64-musl@1.30.2: optional: true - lightningcss-linux-x64-gnu@1.30.1: - optional: true - lightningcss-linux-x64-gnu@1.30.2: optional: true - lightningcss-linux-x64-musl@1.30.1: - optional: true - lightningcss-linux-x64-musl@1.30.2: optional: true - lightningcss-win32-arm64-msvc@1.30.1: - optional: true - lightningcss-win32-arm64-msvc@1.30.2: optional: true - lightningcss-win32-x64-msvc@1.30.1: - optional: true - lightningcss-win32-x64-msvc@1.30.2: optional: true - lightningcss@1.30.1: - dependencies: - detect-libc: 2.1.2 - optionalDependencies: - lightningcss-darwin-arm64: 1.30.1 - lightningcss-darwin-x64: 1.30.1 - lightningcss-freebsd-x64: 1.30.1 - lightningcss-linux-arm-gnueabihf: 1.30.1 - lightningcss-linux-arm64-gnu: 1.30.1 - lightningcss-linux-arm64-musl: 1.30.1 - lightningcss-linux-x64-gnu: 1.30.1 - lightningcss-linux-x64-musl: 1.30.1 - lightningcss-win32-arm64-msvc: 1.30.1 - lightningcss-win32-x64-msvc: 1.30.1 - lightningcss@1.30.2: dependencies: detect-libc: 2.1.2 @@ -8955,11 +8770,7 @@ snapshots: dependencies: brace-expansion: 2.0.2 - minipass@7.1.2: {} - - minizlib@3.1.0: - dependencies: - minipass: 7.1.2 + minimist@1.2.8: {} mj-context-menu@0.6.1: {} @@ -8994,6 +8805,14 @@ snapshots: neotraverse@0.6.18: {} + next-sitemap@4.2.3(next@16.1.1(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3)): + dependencies: + '@corex/deepmerge': 4.0.43 + '@next/env': 13.5.11 + fast-glob: 3.3.3 + minimist: 1.2.8 + next: 16.1.1(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + next-themes@0.4.6(react-dom@19.2.3(react@19.2.3))(react@19.2.3): dependencies: react: 19.2.3 @@ -9015,7 +8834,7 @@ snapshots: dependencies: '@next/env': 16.1.1 '@swc/helpers': 0.5.15 - baseline-browser-mapping: 2.9.14 + baseline-browser-mapping: 2.9.19 caniuse-lite: 1.0.30001760 postcss: 8.4.31 react: 19.2.3 @@ -9036,7 +8855,7 @@ snapshots: - '@babel/core' - babel-plugin-macros - nextra-theme-docs@4.6.0(@types/react@19.2.7)(immer@11.1.3)(next@16.1.1(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(nextra@4.6.0(next@16.1.1(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3)): + nextra-theme-docs@4.6.0(@types/react@19.2.7)(immer@11.0.1)(next@16.1.1(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(nextra@4.6.0(next@16.1.1(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3)): dependencies: '@headlessui/react': 2.2.9(react-dom@19.2.3(react@19.2.3))(react@19.2.3) clsx: 2.1.1 @@ -9048,7 +8867,7 @@ snapshots: react-dom: 19.2.3(react@19.2.3) scroll-into-view-if-needed: 3.1.0 zod: 4.0.0-beta.20250424T163858 - zustand: 5.0.8(@types/react@19.2.7)(immer@11.1.3)(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3)) + zustand: 5.0.8(@types/react@19.2.7)(immer@11.0.1)(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3)) transitivePeerDependencies: - '@types/react' - immer @@ -9256,6 +9075,11 @@ snapshots: possible-typed-array-names@1.1.0: {} + postcss-selector-parser@6.0.10: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + postcss@8.4.31: dependencies: nanoid: 3.3.11 @@ -9273,18 +9097,18 @@ snapshots: '@opentelemetry/api': 1.9.0 '@opentelemetry/api-logs': 0.208.0 '@opentelemetry/exporter-logs-otlp-http': 0.208.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.4.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.5.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-logs': 0.208.0(@opentelemetry/api@1.9.0) '@posthog/core': 1.9.1 '@posthog/types': 1.321.2 core-js: 3.47.0 dompurify: 3.3.1 fflate: 0.4.8 - preact: 10.28.2 + preact: 10.28.0 query-selector-shadow-dom: 1.0.1 web-vitals: 4.2.4 - preact@10.28.2: {} + preact@10.28.0: {} prismjs@1.30.0: {} @@ -9346,6 +9170,13 @@ snapshots: prop-types: 15.8.1 react: 19.2.3 + react-day-picker@9.13.0(react@19.2.3): + dependencies: + '@date-fns/tz': 1.4.1 + date-fns: 4.1.0 + date-fns-jalali: 4.1.0-0 + react: 19.2.3 + react-debounce-input@3.3.0(react@19.2.3): dependencies: lodash.debounce: 4.0.8 @@ -9378,6 +9209,24 @@ snapshots: react-is@16.13.1: {} + react-markdown@10.1.0(@types/react@19.2.7)(react@19.2.3): + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@types/react': 19.2.7 + devlop: 1.1.0 + hast-util-to-jsx-runtime: 2.3.6 + html-url-attributes: 3.0.1 + mdast-util-to-hast: 13.2.1 + react: 19.2.3 + remark-parse: 11.0.0 + remark-rehype: 11.1.2 + unified: 11.0.5 + unist-util-visit: 5.0.0 + vfile: 6.0.3 + transitivePeerDependencies: + - supports-color + react-medium-image-zoom@5.4.0(react-dom@19.2.3(react@19.2.3))(react@19.2.3): dependencies: react: 19.2.3 @@ -9443,8 +9292,8 @@ snapshots: '@reduxjs/toolkit': 2.11.2(react-redux@9.2.0(@types/react@19.2.7)(react@19.2.3)(redux@5.0.1))(react@19.2.3) clsx: 2.1.1 decimal.js-light: 2.5.1 - es-toolkit: 1.44.0 - eventemitter3: 5.0.4 + es-toolkit: 1.43.0 + eventemitter3: 5.0.1 immer: 10.2.0 react: 19.2.3 react-dom: 19.2.3(react@19.2.3) @@ -9965,26 +9814,16 @@ snapshots: tabbable@6.3.0: {} - tailwind-merge@3.3.1: {} + tailwind-merge@3.4.0: {} tailwindcss-animate@1.0.7(tailwindcss@4.1.16): dependencies: tailwindcss: 4.1.16 - tailwindcss@4.1.14: {} - tailwindcss@4.1.16: {} tapable@2.3.0: {} - tar@7.5.4: - dependencies: - '@isaacs/fs-minipass': 4.0.1 - chownr: 3.0.0 - minipass: 7.1.2 - minizlib: 3.1.0 - yallist: 5.0.0 - third-party-capital@1.0.20: {} tiny-invariant@1.3.3: {} @@ -10110,7 +9949,7 @@ snapshots: - typescript - valibot - undici-types@6.21.0: {} + undici-types@5.26.5: {} undici-types@7.16.0: {} @@ -10219,6 +10058,8 @@ snapshots: dependencies: react: 19.2.3 + util-deprecate@1.0.2: {} + uuid@11.1.0: {} vfile-location@5.0.3: @@ -10242,7 +10083,7 @@ snapshots: '@types/d3-ease': 3.0.2 '@types/d3-interpolate': 3.0.4 '@types/d3-scale': 4.0.9 - '@types/d3-shape': 3.1.8 + '@types/d3-shape': 3.1.7 '@types/d3-time': 3.0.4 '@types/d3-timer': 3.0.2 d3-array: 3.2.4 @@ -10375,8 +10216,6 @@ snapshots: xml@1.0.1: {} - yallist@5.0.0: {} - yaml@2.8.2: {} yoctocolors@2.1.2: {} @@ -10391,10 +10230,10 @@ snapshots: zod@4.1.12: {} - zustand@5.0.8(@types/react@19.2.7)(immer@11.1.3)(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3)): + zustand@5.0.8(@types/react@19.2.7)(immer@11.0.1)(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3)): optionalDependencies: '@types/react': 19.2.7 - immer: 11.1.3 + immer: 11.0.1 react: 19.2.3 use-sync-external-store: 1.6.0(react@19.2.3) diff --git a/public/examples/integrations/mcp-servers/airtable_api/add_base_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/add_base_collaborator_example_call_tool.js deleted file mode 100644 index 4b959f846..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/add_base_collaborator_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.AddBaseCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "base_id": "app123456789", - "request_body": "{\"email\":\"collaborator@example.com\",\"role\":\"editor\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/add_base_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/add_base_collaborator_example_call_tool.py deleted file mode 100644 index f6b128534..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/add_base_collaborator_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.AddBaseCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'base_id': 'app123456789', - 'request_body': '{"email":"collaborator@example.com","role":"editor"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/add_collaborator_to_airtable_interface_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/add_collaborator_to_airtable_interface_example_call_tool.js deleted file mode 100644 index ff7a37dbd..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/add_collaborator_to_airtable_interface_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.AddCollaboratorToAirtableInterface"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "airtable_base_id": "app123456789", - "page_bundle_id": "page123", - "request_body": "{\"email\":\"user@example.com\",\"role\":\"editor\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/add_collaborator_to_airtable_interface_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/add_collaborator_to_airtable_interface_example_call_tool.py deleted file mode 100644 index 8f934f2ca..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/add_collaborator_to_airtable_interface_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.AddCollaboratorToAirtableInterface" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'airtable_base_id': 'app123456789', - 'page_bundle_id': 'page123', - 'request_body': '{"email":"user@example.com","role":"editor"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/add_record_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/add_record_comment_example_call_tool.js deleted file mode 100644 index a4aaeb48c..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/add_record_comment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.AddRecordComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "base_identifier": "base123", - "table_identifier": "table456", - "record_identifier": "record789", - "request_body": "{\"comment\":\"This is a comment! @user\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/add_record_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/add_record_comment_example_call_tool.py deleted file mode 100644 index 51f1144c3..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/add_record_comment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.AddRecordComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'base_identifier': 'base123', - 'table_identifier': 'table456', - 'record_identifier': 'record789', - 'request_body': '{"comment":"This is a comment! @user"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/add_workspace_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/add_workspace_collaborator_example_call_tool.js deleted file mode 100644 index b1715d6da..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/add_workspace_collaborator_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.AddWorkspaceCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "workspace_id": "workspace_123", - "request_body": "{\"email\":\"collaborator@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/add_workspace_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/add_workspace_collaborator_example_call_tool.py deleted file mode 100644 index 12f5cf432..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/add_workspace_collaborator_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.AddWorkspaceCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'workspace_id': 'workspace_123', - 'request_body': '{"email":"collaborator@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/airtable_get_record_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/airtable_get_record_example_call_tool.js deleted file mode 100644 index 016023896..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/airtable_get_record_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.AirtableGetRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "airtable_base_id": "app123456789", - "record_id": "rec987654321", - "table_identifier": "Table 1", - "cell_format": "json", - "return_fields_by_field_id": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/airtable_get_record_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/airtable_get_record_example_call_tool.py deleted file mode 100644 index fde97da78..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/airtable_get_record_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.AirtableGetRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'airtable_base_id': 'app123456789', - 'record_id': 'rec987654321', - 'table_identifier': 'Table 1', - 'cell_format': 'json', - 'return_fields_by_field_id': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/batch_manage_enterprise_users_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/batch_manage_enterprise_users_example_call_tool.js deleted file mode 100644 index 79b84364c..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/batch_manage_enterprise_users_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.BatchManageEnterpriseUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enterprise_account_id": "12345", - "request_body": "{\"users\":[{\"id\":\"user1\",\"email\":\"user1@example.com\"},{\"id\":\"user2\",\"email\":\"user2@example.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/batch_manage_enterprise_users_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/batch_manage_enterprise_users_example_call_tool.py deleted file mode 100644 index 1d402de37..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/batch_manage_enterprise_users_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.BatchManageEnterpriseUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enterprise_account_id': '12345', - 'request_body': '{"users":[{"id":"user1","email":"user1@example.com"},{"id":"user2","email":"user2@example.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/batch_manage_user_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/batch_manage_user_membership_example_call_tool.js deleted file mode 100644 index 3072a4de1..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/batch_manage_user_membership_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.BatchManageUserMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enterprise_account_id": "12345", - "request_body": "{\"users\":[{\"id\":\"user1\",\"status\":\"member\"},{\"id\":\"user2\",\"status\":\"unmanaged\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/batch_manage_user_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/batch_manage_user_membership_example_call_tool.py deleted file mode 100644 index aeddf9217..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/batch_manage_user_membership_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.BatchManageUserMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enterprise_account_id': '12345', - 'request_body': '{"users":[{"id":"user1","status":"member"},{"id":"user2","status":"unmanaged"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/batch_move_user_groups_between_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/batch_move_user_groups_between_accounts_example_call_tool.js deleted file mode 100644 index aca32549f..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/batch_move_user_groups_between_accounts_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.BatchMoveUserGroupsBetweenAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "target_enterprise_account_id": "12345", - "request_body": "{\"userGroups\":[{\"id\":\"group1\"},{\"id\":\"group2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/batch_move_user_groups_between_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/batch_move_user_groups_between_accounts_example_call_tool.py deleted file mode 100644 index 0f97a50a5..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/batch_move_user_groups_between_accounts_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.BatchMoveUserGroupsBetweenAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'target_enterprise_account_id': '12345', - 'request_body': '{"userGroups":[{"id":"group1"},{"id":"group2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/bulk_update_airtable_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/bulk_update_airtable_example_call_tool.js deleted file mode 100644 index effcc48dc..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/bulk_update_airtable_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.BulkUpdateAirtable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "base_id": "app123456789", - "table_identifier": "tbl987654321", - "request_body": "[{\"id\":\"rec1\",\"fields\":{\"Name\":\"John Doe\",\"Age\":30}},{\"id\":\"rec2\",\"fields\":{\"Name\":\"Jane Smith\",\"Age\":25}}]" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/bulk_update_airtable_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/bulk_update_airtable_example_call_tool.py deleted file mode 100644 index 4f839584d..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/bulk_update_airtable_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.BulkUpdateAirtable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'base_id': 'app123456789', - 'table_identifier': 'tbl987654321', - 'request_body': '[{"id":"rec1","fields":{"Name":"John ' - 'Doe","Age":30}},{"id":"rec2","fields":{"Name":"Jane Smith","Age":25}}]' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_base_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/create_airtable_base_example_call_tool.js deleted file mode 100644 index 6b4acb0bd..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_base_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.CreateAirtableBase"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"tables\":[{\"name\":\"Tasks\",\"fields\":[{\"name\":\"Task Name\",\"type\":\"singleLineText\"},{\"name\":\"Due Date\",\"type\":\"date\"}]}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_base_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/create_airtable_base_example_call_tool.py deleted file mode 100644 index 7c3c4dcc9..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_base_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.CreateAirtableBase" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"tables":[{"name":"Tasks","fields":[{"name":"Task ' - 'Name","type":"singleLineText"},{"name":"Due Date","type":"date"}]}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_field_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/create_airtable_field_example_call_tool.js deleted file mode 100644 index 042a97df6..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_field_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.CreateAirtableField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "airtable_base_id": "app123456789", - "table_id": "tbl987654321", - "request_body": "{\"name\":\"New Field\",\"type\":\"singleLineText\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_field_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/create_airtable_field_example_call_tool.py deleted file mode 100644 index d2d24f371..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_field_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.CreateAirtableField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'airtable_base_id': 'app123456789', - 'table_id': 'tbl987654321', - 'request_body': '{"name":"New Field","type":"singleLineText"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_records_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/create_airtable_records_example_call_tool.js deleted file mode 100644 index 606a98aab..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_records_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.CreateAirtableRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "base_id": "app123456", - "table_id_or_name": "tbl987654", - "request_body": "[{\"fields\":{\"Name\":\"John Doe\",\"Email\":\"john@example.com\"}}]" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_records_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/create_airtable_records_example_call_tool.py deleted file mode 100644 index b7f549b7b..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_records_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.CreateAirtableRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'base_id': 'app123456', - 'table_id_or_name': 'tbl987654', - 'request_body': '[{"fields":{"Name":"John Doe","Email":"john@example.com"}}]' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_table_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/create_airtable_table_example_call_tool.js deleted file mode 100644 index 2806d97e5..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_table_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.CreateAirtableTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "airtable_base_id": "app123456789", - "request_body": "{\"fields\":[{\"name\":\"Name\",\"type\":\"singleLineText\"},{\"name\":\"Email\",\"type\":\"email\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_table_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/create_airtable_table_example_call_tool.py deleted file mode 100644 index 3804dff84..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_table_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.CreateAirtableTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'airtable_base_id': 'app123456789', - 'request_body': '{"fields":[{"name":"Name","type":"singleLineText"},{"name":"Email","type":"email"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/create_airtable_webhook_example_call_tool.js deleted file mode 100644 index 4e6143f79..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_webhook_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.CreateAirtableWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "base_id": "app123456789", - "request_body": "{\"url\":\"https://example.com/webhook\",\"events\":[\"create\",\"update\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/create_airtable_webhook_example_call_tool.py deleted file mode 100644 index f7cc366fe..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_webhook_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.CreateAirtableWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'base_id': 'app123456789', - 'request_body': '{"url":"https://example.com/webhook","events":["create","update"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/create_airtable_workspace_example_call_tool.js deleted file mode 100644 index 06ec953fa..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_workspace_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.CreateAirtableWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Workspace\",\"description\":\"This is a sample workspace.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/create_airtable_workspace_example_call_tool.py deleted file mode 100644 index f5861898a..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_airtable_workspace_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.CreateAirtableWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New Workspace","description":"This is a sample workspace."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_audit_log_request_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/create_audit_log_request_example_call_tool.js deleted file mode 100644 index ff62b7c67..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_audit_log_request_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.CreateAuditLogRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enterprise_account_id": "12345", - "request_body": "{\"event\":\"login\",\"timestamp\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_audit_log_request_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/create_audit_log_request_example_call_tool.py deleted file mode 100644 index 63e0f25a2..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_audit_log_request_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.CreateAuditLogRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enterprise_account_id': '12345', - 'request_body': '{"event":"login","timestamp":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_descendant_enterprise_account_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/create_descendant_enterprise_account_example_call_tool.js deleted file mode 100644 index 51859c8bd..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_descendant_enterprise_account_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.CreateDescendantEnterpriseAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enterprise_account_id": "root_12345", - "request_body": "{\"name\":\"New Descendant Account\",\"type\":\"organizational unit\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_descendant_enterprise_account_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/create_descendant_enterprise_account_example_call_tool.py deleted file mode 100644 index 74729ee77..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_descendant_enterprise_account_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.CreateDescendantEnterpriseAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enterprise_account_id': 'root_12345', - 'request_body': '{"name":"New Descendant Account","type":"organizational unit"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_ediscovery_export_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/create_ediscovery_export_example_call_tool.js deleted file mode 100644 index d67e752eb..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_ediscovery_export_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.CreateEdiscoveryExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enterprise_account_id": "12345", - "request_body": "{\"exportType\":\"full\",\"dateRange\":\"last30days\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_ediscovery_export_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/create_ediscovery_export_example_call_tool.py deleted file mode 100644 index c2dd0bbf1..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_ediscovery_export_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.CreateEdiscoveryExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enterprise_account_id': '12345', - 'request_body': '{"exportType":"full","dateRange":"last30days"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_scim_group_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/create_scim_group_example_call_tool.js deleted file mode 100644 index e8a0c7c89..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_scim_group_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.CreateScimGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"displayName\":\"New Group\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_scim_group_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/create_scim_group_example_call_tool.py deleted file mode 100644 index 4849a5fa5..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_scim_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.CreateScimGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"displayName":"New Group"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_scim_user_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/create_scim_user_example_call_tool.js deleted file mode 100644 index d2959b52b..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_scim_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.CreateScimUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"userName\":\"jdoe\",\"active\":true,\"emails\":[{\"value\":\"jdoe@example.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/create_scim_user_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/create_scim_user_example_call_tool.py deleted file mode 100644 index 9d78bba78..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/create_scim_user_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.CreateScimUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"userName":"jdoe","active":true,"emails":[{"value":"jdoe@example.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_base_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_base_example_call_tool.js deleted file mode 100644 index 91149e84a..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_base_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteAirtableBase"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_id": "app123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_base_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_base_example_call_tool.py deleted file mode 100644 index c70688539..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_base_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteAirtableBase" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_id': 'app123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_block_installation_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_block_installation_example_call_tool.js deleted file mode 100644 index 960be9228..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_block_installation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteAirtableBlockInstallation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "airtable_base_id": "app1234567890", - "block_installation_id": "inst9876543210" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_block_installation_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_block_installation_example_call_tool.py deleted file mode 100644 index 8f83f7da7..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_block_installation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteAirtableBlockInstallation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'airtable_base_id': 'app1234567890', 'block_installation_id': 'inst9876543210' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_record_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_record_example_call_tool.js deleted file mode 100644 index d7c9a7d0f..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_record_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteAirtableRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "airtable_base_id": "app123456789", - "record_id": "rec987654321", - "table_identifier": "Table 1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_record_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_record_example_call_tool.py deleted file mode 100644 index ec4fc07b8..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_record_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteAirtableRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'airtable_base_id': 'app123456789', 'record_id': 'rec987654321', 'table_identifier': 'Table 1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_share_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_share_example_call_tool.js deleted file mode 100644 index ab5cc15bc..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_share_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteAirtableShare"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "airtable_base_id": "app123456789", - "share_id": "shr987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_share_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_share_example_call_tool.py deleted file mode 100644 index 68e6b3468..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_share_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteAirtableShare" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'airtable_base_id': 'app123456789', 'share_id': 'shr987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_view_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_view_example_call_tool.js deleted file mode 100644 index bd2306cd0..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_view_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteAirtableView"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "airtable_base_id": "app123456789", - "view_identifier": "viw987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_view_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_view_example_call_tool.py deleted file mode 100644 index 8879ecdbc..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_view_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteAirtableView" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'airtable_base_id': 'app123456789', 'view_identifier': 'viw987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_webhook_example_call_tool.js deleted file mode 100644 index 63b746ad2..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_webhook_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteAirtableWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "airtable_base_id": "app123456789", - "webhook_id": "hook987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_webhook_example_call_tool.py deleted file mode 100644 index 11a4d308a..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_airtable_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteAirtableWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'airtable_base_id': 'app123456789', 'webhook_id': 'hook987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_base_invite_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_base_invite_example_call_tool.js deleted file mode 100644 index 54bb54b93..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_base_invite_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteBaseInvite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_id": "base_123", - "invite_id": "invite_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_base_invite_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_base_invite_example_call_tool.py deleted file mode 100644 index 088cdd5f8..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_base_invite_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteBaseInvite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_id': 'base_123', 'invite_id': 'invite_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_comment_from_record_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_comment_from_record_example_call_tool.js deleted file mode 100644 index 267c6ada1..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_comment_from_record_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteCommentFromRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "airtable_base_id": "app123456789", - "comment_id_to_delete": "comment123", - "record_id": "rec987654321", - "table_id_or_name": "Table 1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_comment_from_record_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_comment_from_record_example_call_tool.py deleted file mode 100644 index 631def8d3..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_comment_from_record_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteCommentFromRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'airtable_base_id': 'app123456789', - 'comment_id_to_delete': 'comment123', - 'record_id': 'rec987654321', - 'table_id_or_name': 'Table 1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_enterprise_user_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_enterprise_user_example_call_tool.js deleted file mode 100644 index 490bdc6fc..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_enterprise_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteEnterpriseUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_account_id": "12345", - "user_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_enterprise_user_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_enterprise_user_example_call_tool.py deleted file mode 100644 index 93d878688..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_enterprise_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteEnterpriseUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_account_id': '12345', 'user_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_interface_invite_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_interface_invite_example_call_tool.js deleted file mode 100644 index 7b58c9dab..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_interface_invite_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteInterfaceInvite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_identifier": "app123456", - "invite_id": "invite7890", - "page_bundle_id": "bundle456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_interface_invite_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_interface_invite_example_call_tool.py deleted file mode 100644 index 8987b6ec2..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_interface_invite_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteInterfaceInvite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_identifier': 'app123456', 'invite_id': 'invite7890', 'page_bundle_id': 'bundle456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_multiple_records_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_multiple_records_example_call_tool.js deleted file mode 100644 index f74924b40..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_multiple_records_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteMultipleRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_id": "app123456", - "table_identifier": "tbl987654", - "record_ids_to_delete": [ - "rec1", - "rec2", - "rec3" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_multiple_records_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_multiple_records_example_call_tool.py deleted file mode 100644 index c9ffb4c40..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_multiple_records_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteMultipleRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_id': 'app123456', - 'table_identifier': 'tbl987654', - 'record_ids_to_delete': ['rec1', 'rec2', 'rec3'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_records_by_primary_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_records_by_primary_keys_example_call_tool.js deleted file mode 100644 index 4d668ed8a..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_records_by_primary_keys_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteRecordsByPrimaryKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enterprise_account_id": "12345", - "data_table_id": "67890", - "request_body": "{\"primaryKeys\":[\"key1\",\"key2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_records_by_primary_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_records_by_primary_keys_example_call_tool.py deleted file mode 100644 index 32b2b1f06..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_records_by_primary_keys_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteRecordsByPrimaryKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enterprise_account_id': '12345', - 'data_table_id': '67890', - 'request_body': '{"primaryKeys":["key1","key2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_scim_group_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_scim_group_example_call_tool.js deleted file mode 100644 index f06cc6b83..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_scim_group_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteScimGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_id": "grp_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_scim_group_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_scim_group_example_call_tool.py deleted file mode 100644 index 38ddcbbd1..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_scim_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteScimGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_id': 'grp_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_scim_user_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_scim_user_example_call_tool.js deleted file mode 100644 index cf85eacb7..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_scim_user_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteScimUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "scim_user_id": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_scim_user_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_scim_user_example_call_tool.py deleted file mode 100644 index 247eceb2d..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_scim_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteScimUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'scim_user_id': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_users_by_email_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_users_by_email_example_call_tool.js deleted file mode 100644 index bb0e5ad41..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_users_by_email_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteUsersByEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_account_id": "12345", - "email_addresses": [ - "user1@example.com", - "user2@example.com" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_users_by_email_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_users_by_email_example_call_tool.py deleted file mode 100644 index 4a3883963..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_users_by_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteUsersByEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_account_id': '12345', 'email_addresses': ['user1@example.com', 'user2@example.com'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_workspace_example_call_tool.js deleted file mode 100644 index 80b36ee00..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_workspace_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "workspace_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_workspace_example_call_tool.py deleted file mode 100644 index 03005b9ae..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_workspace_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 'workspace_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_workspace_invite_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/delete_workspace_invite_example_call_tool.js deleted file mode 100644 index 361ef0bac..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_workspace_invite_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.DeleteWorkspaceInvite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invite_id": "abc123", - "workspace_id": "workspace456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/delete_workspace_invite_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/delete_workspace_invite_example_call_tool.py deleted file mode 100644 index 6d4d8ee09..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/delete_workspace_invite_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.DeleteWorkspaceInvite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invite_id': 'abc123', 'workspace_id': 'workspace456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/fetch_scim_group_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/fetch_scim_group_example_call_tool.js deleted file mode 100644 index eb86fe6be..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/fetch_scim_group_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.FetchScimGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "scim_group_id": "group123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/fetch_scim_group_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/fetch_scim_group_example_call_tool.py deleted file mode 100644 index 785d72dcf..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/fetch_scim_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.FetchScimGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'scim_group_id': 'group123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_base_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_airtable_base_schema_example_call_tool.js deleted file mode 100644 index 9d9406ac3..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_base_schema_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetAirtableBaseSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "airtable_base_id": "app123456789", - "fields_to_include": [ - "Name", - "Email", - "Phone" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_base_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_airtable_base_schema_example_call_tool.py deleted file mode 100644 index e720e45dd..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_base_schema_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetAirtableBaseSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'airtable_base_id': 'app123456789', 'fields_to_include': ['Name', 'Email', 'Phone'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_change_events_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_airtable_change_events_example_call_tool.js deleted file mode 100644 index e4b507cc0..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_change_events_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetAirtableChangeEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_account_id": "acct_123456", - "end_time": "2023-10-20T23:59:59Z", - "page_size_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_change_events_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_airtable_change_events_example_call_tool.py deleted file mode 100644 index e489c047c..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_change_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetAirtableChangeEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_account_id': 'acct_123456', 'end_time': '2023-10-20T23:59:59Z', 'page_size_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_airtable_user_info_example_call_tool.js deleted file mode 100644 index 8cb9540b5..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_user_info_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetAirtableUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_account_id": "ent12345", - "include_fields": [ - "name", - "email" - ], - "user_emails": [ - "user@example.com" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_airtable_user_info_example_call_tool.py deleted file mode 100644 index 49f8c7097..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_user_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetAirtableUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_account_id': 'ent12345', - 'include_fields': ['name', 'email'], - 'user_emails': ['user@example.com'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_view_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_airtable_view_metadata_example_call_tool.js deleted file mode 100644 index ae95bc86e..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_view_metadata_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetAirtableViewMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_identifier": "app123456", - "view_identifier": "view987654", - "include_fields": [ - "Name", - "Status" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_view_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_airtable_view_metadata_example_call_tool.py deleted file mode 100644 index acf63f9b9..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_airtable_view_metadata_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetAirtableViewMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_identifier': 'app123456', - 'view_identifier': 'view987654', - 'include_fields': ['Name', 'Status'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_audit_log_events_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_audit_log_events_example_call_tool.js deleted file mode 100644 index 8752fbb71..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_audit_log_events_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetAuditLogEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_account_id": "123456", - "end_time": "2023-10-15T10:00:00Z", - "event_category": "security", - "page_size": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_audit_log_events_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_audit_log_events_example_call_tool.py deleted file mode 100644 index 76b67c275..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_audit_log_events_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetAuditLogEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_account_id': '123456', - 'end_time': '2023-10-15T10:00:00Z', - 'event_category': 'security', - 'page_size': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_base_collaborators_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_base_collaborators_example_call_tool.js deleted file mode 100644 index 156055186..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_base_collaborators_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetBaseCollaborators"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_id": "app123456789", - "fields_to_include": [ - "email", - "name" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_base_collaborators_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_base_collaborators_example_call_tool.py deleted file mode 100644 index 58c0e9a06..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_base_collaborators_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetBaseCollaborators" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_id': 'app123456789', 'fields_to_include': ['email', 'name'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_ediscovery_export_status_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_ediscovery_export_status_example_call_tool.js deleted file mode 100644 index 07347bab2..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_ediscovery_export_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetEdiscoveryExportStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_account_id": "12345", - "enterprise_task_id": "abcde-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_ediscovery_export_status_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_ediscovery_export_status_example_call_tool.py deleted file mode 100644 index 6b468b224..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_ediscovery_export_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetEdiscoveryExportStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_account_id': '12345', 'enterprise_task_id': 'abcde-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_ediscovery_exports_status_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_ediscovery_exports_status_example_call_tool.js deleted file mode 100644 index 607047a85..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_ediscovery_exports_status_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetEdiscoveryExportsStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_account_id": "12345", - "ediscovery_export_state": "processing", - "pagination_offset": 10, - "result_page_size": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_ediscovery_exports_status_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_ediscovery_exports_status_example_call_tool.py deleted file mode 100644 index d0badd968..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_ediscovery_exports_status_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetEdiscoveryExportsStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_account_id': '12345', - 'ediscovery_export_state': 'processing', - 'pagination_offset': 10, - 'result_page_size': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_enterprise_info_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_enterprise_info_example_call_tool.js deleted file mode 100644 index 0f50064b1..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_enterprise_info_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetEnterpriseInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_account_id": "12345", - "fields_to_include": [ - "name", - "status" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_enterprise_info_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_enterprise_info_example_call_tool.py deleted file mode 100644 index f71d8a18b..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_enterprise_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetEnterpriseInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_account_id': '12345', 'fields_to_include': ['name', 'status'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_interface_info_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_interface_info_example_call_tool.js deleted file mode 100644 index 2b84ce122..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_interface_info_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetInterfaceInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "airtable_base_id": "app123456", - "interface_id": "int7890", - "include_elements": [ - "element1", - "element2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_interface_info_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_interface_info_example_call_tool.py deleted file mode 100644 index f70f4c46d..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_interface_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetInterfaceInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'airtable_base_id': 'app123456', - 'interface_id': 'int7890', - 'include_elements': ['element1', 'element2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_record_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_record_comments_example_call_tool.js deleted file mode 100644 index 07d8aee47..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_record_comments_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetRecordComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_id": "app123456", - "record_id": "rec789012", - "table_identifier": "Comments", - "pagination_offset": "offset123", - "results_page_size": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_record_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_record_comments_example_call_tool.py deleted file mode 100644 index 770432a80..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_record_comments_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetRecordComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_id': 'app123456', - 'record_id': 'rec789012', - 'table_identifier': 'Comments', - 'pagination_offset': 'offset123', - 'results_page_size': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_scim_user_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_scim_user_example_call_tool.js deleted file mode 100644 index 468807e20..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_scim_user_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetScimUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_scim_user_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_scim_user_example_call_tool.py deleted file mode 100644 index 3f3c92a6e..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_scim_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetScimUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_user_group_info_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_user_group_info_example_call_tool.js deleted file mode 100644 index 0f59891b8..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_user_group_info_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetUserGroupInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_group_id": "group123", - "include_additional_info": [ - "members", - "permissions" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_user_group_info_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_user_group_info_example_call_tool.py deleted file mode 100644 index 0ebe2bbac..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_user_group_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetUserGroupInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_group_id': 'group123', 'include_additional_info': ['members', 'permissions'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_user_information_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_user_information_example_call_tool.js deleted file mode 100644 index 76a49de09..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_user_information_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetUserInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_account_id": "acct_12345", - "user_id": "user_67890", - "include_fields": [ - "name", - "email" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_user_information_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_user_information_example_call_tool.py deleted file mode 100644 index 2790d1037..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_user_information_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetUserInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_account_id': 'acct_12345', - 'user_id': 'user_67890', - 'include_fields': ['name', 'email'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_workspace_collaborators_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/get_workspace_collaborators_example_call_tool.js deleted file mode 100644 index fa1f2ece0..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_workspace_collaborators_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GetWorkspaceCollaborators"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_identifier": "workspace_123", - "include_additional_information": [ - "email", - "role" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/get_workspace_collaborators_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/get_workspace_collaborators_example_call_tool.py deleted file mode 100644 index 1ddcac1be..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/get_workspace_collaborators_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GetWorkspaceCollaborators" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_identifier': 'workspace_123', 'include_additional_information': ['email', 'role'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/grant_admin_access_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/grant_admin_access_example_call_tool.js deleted file mode 100644 index 7f6348cf6..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/grant_admin_access_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.GrantAdminAccess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enterprise_account_id": "12345", - "request_body": "{\"user_id\":\"user_001\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/grant_admin_access_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/grant_admin_access_example_call_tool.py deleted file mode 100644 index e26068396..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/grant_admin_access_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.GrantAdminAccess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'enterprise_account_id': '12345', 'request_body': '{"user_id":"user_001"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_airtable_base_views_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/list_airtable_base_views_example_call_tool.js deleted file mode 100644 index 9ad7d51c3..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_airtable_base_views_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ListAirtableBaseViews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "airtable_base_id": "app123456789", - "fields_to_include": [ - "name", - "type" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_airtable_base_views_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/list_airtable_base_views_example_call_tool.py deleted file mode 100644 index b671c1e44..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_airtable_base_views_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ListAirtableBaseViews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'airtable_base_id': 'app123456789', 'fields_to_include': ['name', 'type'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_airtable_bases_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/list_airtable_bases_example_call_tool.js deleted file mode 100644 index 6f9dbac25..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_airtable_bases_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ListAirtableBases"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_offset": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_airtable_bases_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/list_airtable_bases_example_call_tool.py deleted file mode 100644 index f9599abb5..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_airtable_bases_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ListAirtableBases" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_offset': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_airtable_records_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/list_airtable_records_example_call_tool.js deleted file mode 100644 index 4309d357d..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_airtable_records_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ListAirtableRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_id": "app123456789", - "table_id_or_name": "tbl987654321", - "maximum_records": 50, - "page_size": 10, - "filter_by_formula": "Status='Active'", - "output_time_zone": "America/New_York" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_airtable_records_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/list_airtable_records_example_call_tool.py deleted file mode 100644 index 51820f1b6..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_airtable_records_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ListAirtableRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_id': 'app123456789', - 'table_id_or_name': 'tbl987654321', - 'maximum_records': 50, - 'page_size': 10, - 'filter_by_formula': "Status='Active'", - 'output_time_zone': 'America/New_York' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_base_block_installations_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/list_base_block_installations_example_call_tool.js deleted file mode 100644 index 8737ae011..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_base_block_installations_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ListBaseBlockInstallations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_id": "app123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_base_block_installations_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/list_base_block_installations_example_call_tool.py deleted file mode 100644 index 38fccbec0..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_base_block_installations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ListBaseBlockInstallations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_id': 'app123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_base_shares_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/list_base_shares_example_call_tool.js deleted file mode 100644 index a4ea3a0f7..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_base_shares_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ListBaseShares"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_identifier": "app123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_base_shares_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/list_base_shares_example_call_tool.py deleted file mode 100644 index 8a3cae498..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_base_shares_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ListBaseShares" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_identifier': 'app123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_scim_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/list_scim_groups_example_call_tool.js deleted file mode 100644 index 2ddd068be..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_scim_groups_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ListScimGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_criteria": "active eq true", - "group_count": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_scim_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/list_scim_groups_example_call_tool.py deleted file mode 100644 index 034e3d2b2..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_scim_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ListScimGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_criteria': 'active eq true', 'group_count': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_scim_users_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/list_scim_users_example_call_tool.js deleted file mode 100644 index 227c6bd03..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_scim_users_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ListScimUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "start_index": 1, - "user_count_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_scim_users_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/list_scim_users_example_call_tool.py deleted file mode 100644 index 941217089..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_scim_users_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ListScimUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'start_index': 1, 'user_count_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_webhook_payloads_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/list_webhook_payloads_example_call_tool.js deleted file mode 100644 index c5a0fe88a..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_webhook_payloads_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ListWebhookPayloads"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_id": "app123456", - "webhook_id": "hook78910", - "maximum_number_of_messages": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_webhook_payloads_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/list_webhook_payloads_example_call_tool.py deleted file mode 100644 index 6cbc3add5..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_webhook_payloads_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ListWebhookPayloads" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_id': 'app123456', 'webhook_id': 'hook78910', 'maximum_number_of_messages': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_webhooks_for_base_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/list_webhooks_for_base_example_call_tool.js deleted file mode 100644 index e37a88d64..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_webhooks_for_base_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ListWebhooksForBase"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_identifier": "base_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/list_webhooks_for_base_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/list_webhooks_for_base_example_call_tool.py deleted file mode 100644 index 0b5de68ac..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/list_webhooks_for_base_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ListWebhooksForBase" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_identifier': 'base_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/logout_enterprise_user_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/logout_enterprise_user_example_call_tool.js deleted file mode 100644 index f396c5593..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/logout_enterprise_user_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.LogoutEnterpriseUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_account_id": "12345", - "enterprise_user_id": "user678", - "logout_request_body": { - "reason": "User requested logout" - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/logout_enterprise_user_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/logout_enterprise_user_example_call_tool.py deleted file mode 100644 index b186bdfd1..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/logout_enterprise_user_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.LogoutEnterpriseUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_account_id': '12345', - 'enterprise_user_id': 'user678', - 'logout_request_body': {'reason': 'User requested logout' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/manage_airtable_block_installation_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/manage_airtable_block_installation_example_call_tool.js deleted file mode 100644 index 62824bf99..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/manage_airtable_block_installation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ManageAirtableBlockInstallation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "airtable_base_id": "app123456789", - "block_installation_id": "inst987654321", - "request_body": "{\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/manage_airtable_block_installation_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/manage_airtable_block_installation_example_call_tool.py deleted file mode 100644 index 62a999b4a..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/manage_airtable_block_installation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ManageAirtableBlockInstallation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'airtable_base_id': 'app123456789', - 'block_installation_id': 'inst987654321', - 'request_body': '{"status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/manage_airtable_sharing_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/manage_airtable_sharing_example_call_tool.js deleted file mode 100644 index 0c8141019..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/manage_airtable_sharing_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ManageAirtableSharing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "airtable_base_id": "app123456789", - "share_identifier": "share_abc", - "request_body": "{\"permissions\":\"read\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/manage_airtable_sharing_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/manage_airtable_sharing_example_call_tool.py deleted file mode 100644 index 5c6692d13..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/manage_airtable_sharing_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ManageAirtableSharing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'airtable_base_id': 'app123456789', - 'share_identifier': 'share_abc', - 'request_body': '{"permissions":"read"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/manage_enterprise_account_user_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/manage_enterprise_account_user_example_call_tool.js deleted file mode 100644 index fc718fad2..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/manage_enterprise_account_user_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ManageEnterpriseAccountUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_account_id": "12345", - "user_id": "user678", - "update_user_email": "newemail@example.com", - "user_first_name": "John", - "user_last_name": "Doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/manage_enterprise_account_user_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/manage_enterprise_account_user_example_call_tool.py deleted file mode 100644 index aac8ffc5d..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/manage_enterprise_account_user_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ManageEnterpriseAccountUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_account_id': '12345', - 'user_id': 'user678', - 'update_user_email': 'newemail@example.com', - 'user_first_name': 'John', - 'user_last_name': 'Doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/modify_airtable_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/modify_airtable_entry_example_call_tool.js deleted file mode 100644 index 4d4eba11f..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/modify_airtable_entry_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ModifyAirtableEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "base_id": "app123456", - "table_identifier": "tbl987654", - "record_identifier": "rec456789", - "request_body": "{\"fields\":{\"Name\":\"John Doe\",\"Status\":\"Active\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/modify_airtable_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/modify_airtable_entry_example_call_tool.py deleted file mode 100644 index 228846a8b..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/modify_airtable_entry_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ModifyAirtableEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'base_id': 'app123456', - 'table_identifier': 'tbl987654', - 'record_identifier': 'rec456789', - 'request_body': '{"fields":{"Name":"John Doe","Status":"Active"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/move_airtable_base_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/move_airtable_base_example_call_tool.js deleted file mode 100644 index efe40cbaf..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/move_airtable_base_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.MoveAirtableBase"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "target_workspace_id": "workspace_123", - "request_body": "{\"base_id\":\"base_456\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/move_airtable_base_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/move_airtable_base_example_call_tool.py deleted file mode 100644 index 6f3935cd2..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/move_airtable_base_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.MoveAirtableBase" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'target_workspace_id': 'workspace_123', - 'request_body': '{"base_id":"base_456"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/move_workspaces_between_enterprise_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/move_workspaces_between_enterprise_accounts_example_call_tool.js deleted file mode 100644 index 01da2d9c8..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/move_workspaces_between_enterprise_accounts_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.MoveWorkspacesBetweenEnterpriseAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enterprise_account_id": "12345", - "request_body": "{\"workspaces\":[\"workspace1\",\"workspace2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/move_workspaces_between_enterprise_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/move_workspaces_between_enterprise_accounts_example_call_tool.py deleted file mode 100644 index f0111e827..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/move_workspaces_between_enterprise_accounts_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.MoveWorkspacesBetweenEnterpriseAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enterprise_account_id': '12345', - 'request_body': '{"workspaces":["workspace1","workspace2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/read_hyperdb_table_records_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/read_hyperdb_table_records_example_call_tool.js deleted file mode 100644 index 69daaca85..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/read_hyperdb_table_records_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ReadHyperdbTableRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "data_table_id": "table123", - "enterprise_account_id": "account456", - "fields_to_retrieve": [ - "name", - "email" - ], - "maximum_records_to_retrieve": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/read_hyperdb_table_records_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/read_hyperdb_table_records_example_call_tool.py deleted file mode 100644 index 44cc911be..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/read_hyperdb_table_records_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ReadHyperdbTableRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'data_table_id': 'table123', - 'enterprise_account_id': 'account456', - 'fields_to_retrieve': ['name', 'email'], - 'maximum_records_to_retrieve': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/refresh_webhook_lifespan_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/refresh_webhook_lifespan_example_call_tool.js deleted file mode 100644 index 8db0af5f6..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/refresh_webhook_lifespan_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.RefreshWebhookLifespan"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_identifier": "app123456", - "webhook_id": "hook78910", - "webhook_request_body": { - "action": "refresh" - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/refresh_webhook_lifespan_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/refresh_webhook_lifespan_example_call_tool.py deleted file mode 100644 index 845635e9a..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/refresh_webhook_lifespan_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.RefreshWebhookLifespan" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_identifier': 'app123456', - 'webhook_id': 'hook78910', - 'webhook_request_body': {'action': 'refresh' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/remove_base_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/remove_base_collaborator_example_call_tool.js deleted file mode 100644 index c93f2a8b6..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/remove_base_collaborator_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.RemoveBaseCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_id": "app123456789", - "collaborator_id": "user987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/remove_base_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/remove_base_collaborator_example_call_tool.py deleted file mode 100644 index 02fea9d15..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/remove_base_collaborator_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.RemoveBaseCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_id': 'app123456789', 'collaborator_id': 'user987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/remove_interface_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/remove_interface_collaborator_example_call_tool.js deleted file mode 100644 index ef174dcc9..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/remove_interface_collaborator_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.RemoveInterfaceCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_id": "base123", - "collaborator_id": "user456", - "interface_page_bundle_id": "bundle789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/remove_interface_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/remove_interface_collaborator_example_call_tool.py deleted file mode 100644 index f1c4fa13c..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/remove_interface_collaborator_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.RemoveInterfaceCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_id': 'base123', 'collaborator_id': 'user456', 'interface_page_bundle_id': 'bundle789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/remove_user_from_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/remove_user_from_enterprise_example_call_tool.js deleted file mode 100644 index 46e145834..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/remove_user_from_enterprise_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.RemoveUserFromEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enterprise_account_id": "12345", - "user_id": "user_67890", - "request_body": "{\"action\":\"remove\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/remove_user_from_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/remove_user_from_enterprise_example_call_tool.py deleted file mode 100644 index b03fac450..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/remove_user_from_enterprise_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.RemoveUserFromEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enterprise_account_id': '12345', - 'user_id': 'user_67890', - 'request_body': '{"action":"remove"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/remove_workspace_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/remove_workspace_collaborator_example_call_tool.js deleted file mode 100644 index 8e922fdfb..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/remove_workspace_collaborator_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.RemoveWorkspaceCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collaborator_identifier": "user_12345", - "workspace_id": "workspace_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/remove_workspace_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/remove_workspace_collaborator_example_call_tool.py deleted file mode 100644 index b114d56d8..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/remove_workspace_collaborator_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.RemoveWorkspaceCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collaborator_identifier': 'user_12345', 'workspace_id': 'workspace_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/retrieve_audit_log_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/retrieve_audit_log_example_call_tool.js deleted file mode 100644 index edd6a1a2b..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/retrieve_audit_log_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.RetrieveAuditLog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "audit_log_task_id": "task_12345", - "enterprise_account_id": "enterprise_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/retrieve_audit_log_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/retrieve_audit_log_example_call_tool.py deleted file mode 100644 index 794edfac7..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/retrieve_audit_log_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.RetrieveAuditLog" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'audit_log_task_id': 'task_12345', 'enterprise_account_id': 'enterprise_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/retrieve_audit_log_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/retrieve_audit_log_requests_example_call_tool.js deleted file mode 100644 index 472b42da4..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/retrieve_audit_log_requests_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.RetrieveAuditLogRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_account_id": "12345", - "audit_log_page_size": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/retrieve_audit_log_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/retrieve_audit_log_requests_example_call_tool.py deleted file mode 100644 index 91b28776c..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/retrieve_audit_log_requests_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.RetrieveAuditLogRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_account_id': '12345', 'audit_log_page_size': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/retrieve_user_id_and_scopes_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/retrieve_user_id_and_scopes_example_call_tool.js deleted file mode 100644 index bd6d68345..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/retrieve_user_id_and_scopes_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.RetrieveUserIdAndScopes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/retrieve_user_id_and_scopes_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/retrieve_user_id_and_scopes_example_call_tool.py deleted file mode 100644 index 83cb84b2e..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/retrieve_user_id_and_scopes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.RetrieveUserIdAndScopes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/revoke_admin_access_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/revoke_admin_access_example_call_tool.js deleted file mode 100644 index 9579c5aeb..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/revoke_admin_access_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.RevokeAdminAccess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enterprise_account_id": "12345", - "request_body": "{\"user_id\":\"user_67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/revoke_admin_access_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/revoke_admin_access_example_call_tool.py deleted file mode 100644 index 2118d70b1..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/revoke_admin_access_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.RevokeAdminAccess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'enterprise_account_id': '12345', 'request_body': '{"user_id":"user_67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/toggle_webhook_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/toggle_webhook_notifications_example_call_tool.js deleted file mode 100644 index 1eb0d6680..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/toggle_webhook_notifications_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.ToggleWebhookNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "airtable_base_id": "app123456", - "webhook_id": "hook78910", - "request_body": "{\"enabled\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/toggle_webhook_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/toggle_webhook_notifications_example_call_tool.py deleted file mode 100644 index 0e93fc821..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/toggle_webhook_notifications_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.ToggleWebhookNotifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'airtable_base_id': 'app123456', - 'webhook_id': 'hook78910', - 'request_body': '{"enabled": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_field_details_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/update_airtable_field_details_example_call_tool.js deleted file mode 100644 index 650ed5468..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_field_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UpdateAirtableFieldDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "airtable_base_id": "app123456789", - "airtable_table_id": "tbl987654321", - "field_column_id": "fld123456", - "new_field_name": "Updated Field Name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_field_details_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/update_airtable_field_details_example_call_tool.py deleted file mode 100644 index 1d02525bf..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_field_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UpdateAirtableFieldDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'airtable_base_id': 'app123456789', - 'airtable_table_id': 'tbl987654321', - 'field_column_id': 'fld123456', - 'new_field_name': 'Updated Field Name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_record_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/update_airtable_record_example_call_tool.js deleted file mode 100644 index 1597afbab..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_record_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UpdateAirtableRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "base_id": "app123456", - "table_id_or_name": "tbl987654", - "airtable_record_id": "rec567890", - "request_body": "{\"fields\":{\"Name\":\"John Doe\",\"Status\":\"Active\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_record_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/update_airtable_record_example_call_tool.py deleted file mode 100644 index 3db5d87ed..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_record_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UpdateAirtableRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'base_id': 'app123456', - 'table_id_or_name': 'tbl987654', - 'airtable_record_id': 'rec567890', - 'request_body': '{"fields":{"Name":"John Doe","Status":"Active"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_records_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/update_airtable_records_example_call_tool.js deleted file mode 100644 index 89fd03fc2..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_records_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UpdateAirtableRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "airtable_base_id": "app123456789", - "airtable_table_id_or_name": "tbl987654321", - "request_body": "{\"records\":[{\"id\":\"rec1\",\"fields\":{\"Name\":\"John Doe\",\"Email\":\"john@example.com\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_records_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/update_airtable_records_example_call_tool.py deleted file mode 100644 index 6540183b6..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_records_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UpdateAirtableRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'airtable_base_id': 'app123456789', - 'airtable_table_id_or_name': 'tbl987654321', - 'request_body': '{"records":[{"id":"rec1","fields":{"Name":"John ' - 'Doe","Email":"john@example.com"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_table_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/update_airtable_table_example_call_tool.js deleted file mode 100644 index 5cf5c900d..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_table_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UpdateAirtableTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "airtable_base_id": "app123456789", - "table_id_or_name": "Table 1", - "request_body": "{\"name\":\"Updated Table Name\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_table_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/update_airtable_table_example_call_tool.py deleted file mode 100644 index 3a87f229a..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_airtable_table_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UpdateAirtableTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'airtable_base_id': 'app123456789', - 'table_id_or_name': 'Table 1', - 'request_body': '{"name":"Updated Table Name","description":"This is an updated description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_collaborator_permission_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/update_collaborator_permission_example_call_tool.js deleted file mode 100644 index 1a662c0b8..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_collaborator_permission_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UpdateCollaboratorPermission"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "base_identifier": "base_123", - "collaborator_id": "user_456", - "request_body": "{\"permission_level\":\"editor\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_collaborator_permission_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/update_collaborator_permission_example_call_tool.py deleted file mode 100644 index c6e1f8d58..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_collaborator_permission_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UpdateCollaboratorPermission" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'base_identifier': 'base_123', - 'collaborator_id': 'user_456', - 'request_body': '{"permission_level":"editor"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_collaborator_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/update_collaborator_permissions_example_call_tool.js deleted file mode 100644 index 26d6374f5..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_collaborator_permissions_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UpdateCollaboratorPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "base_identifier": "base123", - "interface_page_bundle_id": "bundle456", - "collaborator_id": "collab789", - "request_body": "{\"permissions\":\"read\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_collaborator_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/update_collaborator_permissions_example_call_tool.py deleted file mode 100644 index 482607c45..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_collaborator_permissions_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UpdateCollaboratorPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'base_identifier': 'base123', - 'interface_page_bundle_id': 'bundle456', - 'collaborator_id': 'collab789', - 'request_body': '{"permissions":"read"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_group_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/update_group_attributes_example_call_tool.js deleted file mode 100644 index 3e0122387..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_group_attributes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UpdateGroupAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "group_id": "grp_12345", - "request_body": "{\"name\":\"New Group Name\",\"description\":\"Updated description\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_group_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/update_group_attributes_example_call_tool.py deleted file mode 100644 index c6532eee9..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_group_attributes_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UpdateGroupAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'group_id': 'grp_12345', - 'request_body': '{"name":"New Group Name","description":"Updated description"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_group_details_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/update_group_details_example_call_tool.js deleted file mode 100644 index dc79816ec..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_group_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UpdateGroupDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "group_id": "12345", - "request_body": "{\"operations\":[{\"op\":\"replace\",\"path\":\"displayName\",\"value\":\"New Group Name\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_group_details_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/update_group_details_example_call_tool.py deleted file mode 100644 index bf75fa898..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_group_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UpdateGroupDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'group_id': '12345', - 'request_body': '{"operations":[{"op":"replace","path":"displayName","value":"New Group ' - 'Name"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_record_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/update_record_comment_example_call_tool.js deleted file mode 100644 index a5e04c9c4..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_record_comment_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UpdateRecordComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "base_identifier": "base123", - "table_id_or_name": "Table1", - "record_id": "rec456", - "comment_id": "com789", - "request_body": "{\"text\":\"Updated comment\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_record_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/update_record_comment_example_call_tool.py deleted file mode 100644 index be128a1c9..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_record_comment_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UpdateRecordComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'base_identifier': 'base123', - 'table_id_or_name': 'Table1', - 'record_id': 'rec456', - 'comment_id': 'com789', - 'request_body': '{"text":"Updated comment"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_scim_user_record_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/update_scim_user_record_example_call_tool.js deleted file mode 100644 index 9f8a3ad7c..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_scim_user_record_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UpdateScimUserRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_id": "12345", - "request_body": "{\"schemas\":[\"urn:ietf:params:scim:api:messages:2.0:PatchOp\"],\"Operations\":[{\"op\":\"replace\",\"path\":\"emails[0].value\",\"value\":\"newemail@example.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_scim_user_record_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/update_scim_user_record_example_call_tool.py deleted file mode 100644 index b1b7a3b8a..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_scim_user_record_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UpdateScimUserRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_id': '12345', - 'request_body': '{"schemas":["urn:ietf:params:scim:api:messages:2.0:PatchOp"],"Operations":[{"op":"replace","path":"emails[0].value","value":"newemail@example.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_user_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/update_user_attributes_example_call_tool.js deleted file mode 100644 index 1ffffefbd..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_user_attributes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UpdateUserAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_id": "12345", - "request_body": "{\"active\":true,\"attributes\":{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_user_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/update_user_attributes_example_call_tool.py deleted file mode 100644 index 67227ec9e..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_user_attributes_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UpdateUserAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_id': '12345', - 'request_body': '{"active":true,"attributes":{"name":"John ' - 'Doe","email":"john.doe@example.com"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_workspace_collaborator_permission_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/update_workspace_collaborator_permission_example_call_tool.js deleted file mode 100644 index f39521485..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_workspace_collaborator_permission_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UpdateWorkspaceCollaboratorPermission"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "workspace_id": "workspace_123", - "collaborator_id": "user_456", - "request_body": "{\"permission\":\"admin\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_workspace_collaborator_permission_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/update_workspace_collaborator_permission_example_call_tool.py deleted file mode 100644 index d8226071c..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_workspace_collaborator_permission_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UpdateWorkspaceCollaboratorPermission" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'workspace_id': 'workspace_123', - 'collaborator_id': 'user_456', - 'request_body': '{"permission":"admin"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_workspace_restrictions_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/update_workspace_restrictions_example_call_tool.js deleted file mode 100644 index 4dc7d1a0e..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_workspace_restrictions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UpdateWorkspaceRestrictions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "workspace_123", - "invite_creation_restriction": "onlyOwners" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/update_workspace_restrictions_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/update_workspace_restrictions_example_call_tool.py deleted file mode 100644 index ae1607141..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/update_workspace_restrictions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UpdateWorkspaceRestrictions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 'workspace_123', 'invite_creation_restriction': 'onlyOwners' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/upload_attachment_to_airtable_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/upload_attachment_to_airtable_example_call_tool.js deleted file mode 100644 index fd446f931..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/upload_attachment_to_airtable_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UploadAttachmentToAirtable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "airtable_base_id": "app123456789", - "airtable_record_id": "rec987654321", - "attachment_field_id_or_name": "Attachments", - "request_body": "{\"attachments\":[{\"url\":\"[file_url]\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/upload_attachment_to_airtable_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/upload_attachment_to_airtable_example_call_tool.py deleted file mode 100644 index 8ae15d73b..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/upload_attachment_to_airtable_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UploadAttachmentToAirtable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'airtable_base_id': 'app123456789', - 'airtable_record_id': 'rec987654321', - 'attachment_field_id_or_name': 'Attachments', - 'request_body': '{"attachments":[{"url":"[file_url]"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/airtable_api/upsert_airtable_records_example_call_tool.js b/public/examples/integrations/mcp-servers/airtable_api/upsert_airtable_records_example_call_tool.js deleted file mode 100644 index e0d6d3f7d..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/upsert_airtable_records_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AirtableApi.UpsertAirtableRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enterprise_account_id": "ent12345", - "data_table_id": "tbl67890", - "request_body": "{\"records\":[{\"id\":\"rec1\",\"fields\":{\"Name\":\"John Doe\",\"Email\":\"john@example.com\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/airtable_api/upsert_airtable_records_example_call_tool.py b/public/examples/integrations/mcp-servers/airtable_api/upsert_airtable_records_example_call_tool.py deleted file mode 100644 index efe720033..000000000 --- a/public/examples/integrations/mcp-servers/airtable_api/upsert_airtable_records_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AirtableApi.UpsertAirtableRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enterprise_account_id': 'ent12345', - 'data_table_id': 'tbl67890', - 'request_body': '{"records":[{"id":"rec1","fields":{"Name":"John ' - 'Doe","Email":"john@example.com"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/projects/get_project_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/projects/get_project_by_id_example_call_tool.js deleted file mode 100644 index 8bfb71893..000000000 --- a/public/examples/integrations/mcp-servers/asana/projects/get_project_by_id_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.GetProjectById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - project_id: "1234567890", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/projects/get_project_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/asana/projects/get_project_by_id_example_call_tool.py deleted file mode 100644 index 1eadc73fd..000000000 --- a/public/examples/integrations/mcp-servers/asana/projects/get_project_by_id_example_call_tool.py +++ /dev/null @@ -1,24 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.GetProjectById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "project_id": "1234567890", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/projects/list_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/projects/list_projects_example_call_tool.js deleted file mode 100644 index 5ab34935e..000000000 --- a/public/examples/integrations/mcp-servers/asana/projects/list_projects_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.ListProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - team_id: "1234567890", - workspace_id: "1234567890", - limit: 100, - next_page_token: "abc123", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/projects/list_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/asana/projects/list_projects_example_call_tool.py deleted file mode 100644 index cee437620..000000000 --- a/public/examples/integrations/mcp-servers/asana/projects/list_projects_example_call_tool.py +++ /dev/null @@ -1,27 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.ListProjects" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "team_id": "1234567890", - "workspace_id": "1234567890", - "limit": 100, - "next_page_token": "abc123", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/tags/create_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/tags/create_tag_example_call_tool.js deleted file mode 100644 index 7939913e6..000000000 --- a/public/examples/integrations/mcp-servers/asana/tags/create_tag_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.CreateTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - name: "My Tag", - description: "This is a tag", - color: "dark-green", - workspace_id: "1234567890", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/tags/create_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/asana/tags/create_tag_example_call_tool.py deleted file mode 100644 index 42117a235..000000000 --- a/public/examples/integrations/mcp-servers/asana/tags/create_tag_example_call_tool.py +++ /dev/null @@ -1,27 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.CreateTag" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "name": "My Tag", - "description": "This is a tag", - "color": "dark-green", - "workspace_id": "1234567890", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/tags/list_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/tags/list_tags_example_call_tool.js deleted file mode 100644 index 39e552e9f..000000000 --- a/public/examples/integrations/mcp-servers/asana/tags/list_tags_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.ListTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - team_id: "1234567890", - workspace_id: "1234567890", - limit: 100, - next_page_token: "abc123", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/tags/list_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/asana/tags/list_tags_example_call_tool.py deleted file mode 100644 index b31ba0582..000000000 --- a/public/examples/integrations/mcp-servers/asana/tags/list_tags_example_call_tool.py +++ /dev/null @@ -1,27 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.ListTags" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "team_id": "1234567890", - "workspace_id": "1234567890", - "limit": 100, - "next_page_token": "abc123", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/tasks/attach_file_to_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/tasks/attach_file_to_task_example_call_tool.js deleted file mode 100644 index de8c0f2be..000000000 --- a/public/examples/integrations/mcp-servers/asana/tasks/attach_file_to_task_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.AttachFileToTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - task_id: "1234567890", - file_name: "report.txt", - file_content_str: "This is a report", - file_encoding: "utf-8", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/tasks/attach_file_to_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana/tasks/attach_file_to_task_example_call_tool.py deleted file mode 100644 index 507d86f5a..000000000 --- a/public/examples/integrations/mcp-servers/asana/tasks/attach_file_to_task_example_call_tool.py +++ /dev/null @@ -1,27 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.AttachFileToTask" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "task_id": "1234567890", - "file_name": "report.txt", - "file_content_str": "This is a report", - "file_encoding": "utf-8", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/tasks/create_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/tasks/create_task_example_call_tool.js deleted file mode 100644 index 88efcbabc..000000000 --- a/public/examples/integrations/mcp-servers/asana/tasks/create_task_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.CreateTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - name: "My Task", - description: "This is a task", - start_date: "2025-01-01", - due_date: "2025-01-30", - workspace_id: "1234567890", - project: "My Project", - assignee_id: "1234567890", - tags: ["Quick Fox", "Lazy Dog"], -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/tasks/create_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana/tasks/create_task_example_call_tool.py deleted file mode 100644 index 8a80f14fe..000000000 --- a/public/examples/integrations/mcp-servers/asana/tasks/create_task_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.CreateTask" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "name": "My Task", - "description": "This is a task", - "start_date": "2025-01-01", - "due_date": "2025-01-30", - "workspace_id": "1234567890", - "project": "My Project", - "assignee_id": "1234567890", - "tags": ["Quick Fox", "Lazy Dog"], -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/tasks/get_subtasks_from_a_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/tasks/get_subtasks_from_a_task_example_call_tool.js deleted file mode 100644 index 7049337d0..000000000 --- a/public/examples/integrations/mcp-servers/asana/tasks/get_subtasks_from_a_task_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.GetSubtasksFromATask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - task_id: "1234567890", - limit: 100, - next_page_token: "abc123", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/tasks/get_subtasks_from_a_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana/tasks/get_subtasks_from_a_task_example_call_tool.py deleted file mode 100644 index d4eea0d53..000000000 --- a/public/examples/integrations/mcp-servers/asana/tasks/get_subtasks_from_a_task_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.GetSubtasksFromATask" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "task_id": "1234567890", - "limit": 100, - "next_page_token": "abc123", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/tasks/get_task_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/tasks/get_task_by_id_example_call_tool.js deleted file mode 100644 index 2752657fc..000000000 --- a/public/examples/integrations/mcp-servers/asana/tasks/get_task_by_id_example_call_tool.js +++ /dev/null @@ -1,27 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.GetTaskById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - task_id: "1234567890", - max_subtasks: 100, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/tasks/get_task_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/asana/tasks/get_task_by_id_example_call_tool.py deleted file mode 100644 index 489436618..000000000 --- a/public/examples/integrations/mcp-servers/asana/tasks/get_task_by_id_example_call_tool.py +++ /dev/null @@ -1,25 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.GetTaskById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "task_id": "1234567890", - "max_subtasks": 100, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/tasks/get_tasks_without_id_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/tasks/get_tasks_without_id_example_call_tool.js deleted file mode 100644 index 8d9667fa5..000000000 --- a/public/examples/integrations/mcp-servers/asana/tasks/get_tasks_without_id_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.SearchTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - keywords: "My Task", - workspace_id: "1234567890", - assignee_id: "1234567890", - project: "1234567890", - team_id: "1234567890", - tags: ["My Tag", "Another Tag", "1234567890"], - due_on_or_before: "2025-01-30", - start_on_or_after: "2025-01-01", - completed: false, - limit: 100, - sort_by: "modified_at", - sort_order: "descending", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/tasks/get_tasks_without_id_example_call_tool.py b/public/examples/integrations/mcp-servers/asana/tasks/get_tasks_without_id_example_call_tool.py deleted file mode 100644 index 5e50ab059..000000000 --- a/public/examples/integrations/mcp-servers/asana/tasks/get_tasks_without_id_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.SearchTasks" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "keywords": "My Task", - "workspace_id": "1234567890", - "assignee_id": "1234567890", - "project": "1234567890", - "team_id": "1234567890", - "tags": ["My Tag", "Another Tag", "1234567890"], - "due_on_or_before": "2025-01-30", - "start_on_or_after": "2025-01-01", - "completed": False, - "limit": 100, - "sort_by": "modified_at", - "sort_order": "descending", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/tasks/mark_task_as_completed_example_call_tool copy.py b/public/examples/integrations/mcp-servers/asana/tasks/mark_task_as_completed_example_call_tool copy.py deleted file mode 100644 index 14c256496..000000000 --- a/public/examples/integrations/mcp-servers/asana/tasks/mark_task_as_completed_example_call_tool copy.py +++ /dev/null @@ -1,24 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.MarkTaskAsCompleted" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "task_id": "1234567890", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/tasks/mark_task_as_completed_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/tasks/mark_task_as_completed_example_call_tool.js deleted file mode 100644 index db12f6003..000000000 --- a/public/examples/integrations/mcp-servers/asana/tasks/mark_task_as_completed_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.MarkTaskAsCompleted"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - task_id: "1234567890", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/tasks/update_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/tasks/update_task_example_call_tool.js deleted file mode 100644 index 08ffbb677..000000000 --- a/public/examples/integrations/mcp-servers/asana/tasks/update_task_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.UpdateTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - task_id: "1234567890", - name: "My Task", - description: "This is a task", - completed: true, - start_date: "2025-01-01", - due_date: "2025-01-30", - assignee_id: "1234567890", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/tasks/update_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana/tasks/update_task_example_call_tool.py deleted file mode 100644 index c3dc1b008..000000000 --- a/public/examples/integrations/mcp-servers/asana/tasks/update_task_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.UpdateTask" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "task_id": "1234567890", - "name": "My Task", - "description": "This is a task", - "completed": True, - "start_date": "2025-01-01", - "due_date": "2025-01-30", - "assignee_id": "1234567890", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/teams/get_team_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/teams/get_team_by_id_example_call_tool.js deleted file mode 100644 index 4e1c70101..000000000 --- a/public/examples/integrations/mcp-servers/asana/teams/get_team_by_id_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.GetUserById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - user_id: "1234567890", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/teams/get_team_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/asana/teams/get_team_by_id_example_call_tool.py deleted file mode 100644 index 4b620c718..000000000 --- a/public/examples/integrations/mcp-servers/asana/teams/get_team_by_id_example_call_tool.py +++ /dev/null @@ -1,24 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.GetUserById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "user_id": "1234567890", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/teams/list_teams_the_current_user_is_a_member_of_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/teams/list_teams_the_current_user_is_a_member_of_example_call_tool.js deleted file mode 100644 index b80d662fa..000000000 --- a/public/examples/integrations/mcp-servers/asana/teams/list_teams_the_current_user_is_a_member_of_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.ListTeamsTheCurrentUserIsAMemberOf"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - workspace_id: "1234567890", - limit: 100, - next_page_token: "abc123", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/teams/list_teams_the_current_user_is_a_member_of_example_call_tool.py b/public/examples/integrations/mcp-servers/asana/teams/list_teams_the_current_user_is_a_member_of_example_call_tool.py deleted file mode 100644 index 0e52640d3..000000000 --- a/public/examples/integrations/mcp-servers/asana/teams/list_teams_the_current_user_is_a_member_of_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.ListTeamsTheCurrentUserIsAMemberOf" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "workspace_id": "1234567890", - "limit": 100, - "next_page_token": "abc123", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/users/get_user_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/users/get_user_by_id_example_call_tool.js deleted file mode 100644 index 761a20afc..000000000 --- a/public/examples/integrations/mcp-servers/asana/users/get_user_by_id_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.GetTeamById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - team_id: "1234567890", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/users/get_user_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/asana/users/get_user_by_id_example_call_tool.py deleted file mode 100644 index 06b620bbb..000000000 --- a/public/examples/integrations/mcp-servers/asana/users/get_user_by_id_example_call_tool.py +++ /dev/null @@ -1,24 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.GetTeamById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "team_id": "1234567890", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana/users/list_users_example_call_tool.js b/public/examples/integrations/mcp-servers/asana/users/list_users_example_call_tool.js deleted file mode 100644 index 058710857..000000000 --- a/public/examples/integrations/mcp-servers/asana/users/list_users_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Asana.ListUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - workspace_id: "1234567890", - limit: 100, - next_page_token: "abc123", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana/users/list_users_example_call_tool.py b/public/examples/integrations/mcp-servers/asana/users/list_users_example_call_tool.py deleted file mode 100644 index 9cbee9df4..000000000 --- a/public/examples/integrations/mcp-servers/asana/users/list_users_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Asana.ListUsers" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "workspace_id": "1234567890", - "limit": 100, - "next_page_token": "abc123", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_asana_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_asana_task_example_call_tool.js deleted file mode 100644 index 3cc309d21..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_asana_task_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddAsanaTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "include_optional_fields": [ - "assignee", - "due_date" - ], - "enable_pretty_output": true, - "request_body": "{\"name\":\"New Task\",\"notes\":\"This is a sample task.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_asana_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_asana_task_example_call_tool.py deleted file mode 100644 index 9b1868156..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_asana_task_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddAsanaTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'include_optional_fields': ['assignee', 'due_date'], - 'enable_pretty_output': True, - 'request_body': '{"name":"New Task","notes":"This is a sample task."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_custom_field_setting_to_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_custom_field_setting_to_project_example_call_tool.js deleted file mode 100644 index d7c1b8a76..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_custom_field_setting_to_project_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddCustomFieldSettingToProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_global_id": "123456789", - "include_optional_properties": [ - "property1", - "property2" - ], - "enable_pretty_output": true, - "request_body": "{\"custom_field_id\":\"987654321\",\"value\":\"Sample Value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_custom_field_setting_to_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_custom_field_setting_to_project_example_call_tool.py deleted file mode 100644 index b35ef00a0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_custom_field_setting_to_project_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddCustomFieldSettingToProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_global_id': '123456789', - 'include_optional_properties': ['property1', 'property2'], - 'enable_pretty_output': True, - 'request_body': '{"custom_field_id":"987654321","value":"Sample Value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_custom_field_to_portfolio_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_custom_field_to_portfolio_example_call_tool.js deleted file mode 100644 index 7614bbf08..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_custom_field_to_portfolio_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddCustomFieldToPortfolio"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "portfolio_identifier": "123456789", - "pretty_formatting_enabled": true, - "request_body": "{\"custom_field_id\":\"987654321\",\"value\":\"Sample Value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_custom_field_to_portfolio_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_custom_field_to_portfolio_example_call_tool.py deleted file mode 100644 index 0b806883c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_custom_field_to_portfolio_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddCustomFieldToPortfolio" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'portfolio_identifier': '123456789', - 'pretty_formatting_enabled': True, - 'request_body': '{"custom_field_id":"987654321","value":"Sample Value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_dependents_to_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_dependents_to_task_example_call_tool.js deleted file mode 100644 index aa1d4a72b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_dependents_to_task_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddDependentsToTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_task_id": "123456789", - "dependent_task_gids": [ - "987654321", - "234567890" - ], - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_dependents_to_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_dependents_to_task_example_call_tool.py deleted file mode 100644 index 265a8c357..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_dependents_to_task_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddDependentsToTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_task_id': '123456789', - 'dependent_task_gids': ['987654321', '234567890'], - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_enum_option_to_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_enum_option_to_custom_field_example_call_tool.js deleted file mode 100644 index a628153cf..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_enum_option_to_custom_field_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddEnumOptionToCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "custom_field_identifier": "123456", - "request_body": "{\"option_name\":\"New Option\"}", - "include_optional_properties": [ - "description" - ], - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_enum_option_to_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_enum_option_to_custom_field_example_call_tool.py deleted file mode 100644 index d2589c62a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_enum_option_to_custom_field_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddEnumOptionToCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'custom_field_identifier': '123456', - 'request_body': '{"option_name":"New Option"}', - 'include_optional_properties': ['description'], - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_followers_to_goal_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_followers_to_goal_example_call_tool.js deleted file mode 100644 index d7aa5f3a6..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_followers_to_goal_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddFollowersToGoal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_unique_id": "goal_12345", - "enable_pretty_output": true, - "user_identifiers_array": [ - "user@example.com", - "me" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_followers_to_goal_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_followers_to_goal_example_call_tool.py deleted file mode 100644 index 18351b03c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_followers_to_goal_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddFollowersToGoal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_unique_id': 'goal_12345', - 'enable_pretty_output': True, - 'user_identifiers_array': ['user@example.com', 'me'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_followers_to_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_followers_to_project_example_call_tool.js deleted file mode 100644 index 38ce0cdfb..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_followers_to_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddFollowersToProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_unique_id": "123456789", - "user_identifiers_to_add_as_followers": "user@example.com", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_followers_to_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_followers_to_project_example_call_tool.py deleted file mode 100644 index a0bcab402..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_followers_to_project_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddFollowersToProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_unique_id': '123456789', - 'user_identifiers_to_add_as_followers': 'user@example.com', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_followers_to_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_followers_to_task_example_call_tool.js deleted file mode 100644 index d51092c2a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_followers_to_task_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddFollowersToTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_gid": "123456789", - "followers_identification": [ - "user@example.com", - "me" - ], - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_followers_to_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_followers_to_task_example_call_tool.py deleted file mode 100644 index 4637cd9f9..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_followers_to_task_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddFollowersToTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_gid': '123456789', - 'followers_identification': ['user@example.com', 'me'], - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_item_to_portfolio_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_item_to_portfolio_example_call_tool.js deleted file mode 100644 index 8f3bc2287..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_item_to_portfolio_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddItemToPortfolio"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "portfolio_unique_id": "portfolio_12345", - "add_after_item_id": "item_67890", - "enable_pretty_output": true, - "item_to_add_to_portfolio": "item_54321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_item_to_portfolio_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_item_to_portfolio_example_call_tool.py deleted file mode 100644 index 0591cb531..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_item_to_portfolio_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddItemToPortfolio" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'portfolio_unique_id': 'portfolio_12345', - 'add_after_item_id': 'item_67890', - 'enable_pretty_output': True, - 'item_to_add_to_portfolio': 'item_54321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_members_to_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_members_to_project_example_call_tool.js deleted file mode 100644 index 45114e6cc..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_members_to_project_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddMembersToProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_unique_identifier": "123456789", - "user_identifiers_array": "user@example.com", - "include_optional_properties": [ - "followers", - "assignee" - ], - "pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_members_to_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_members_to_project_example_call_tool.py deleted file mode 100644 index f19d5e981..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_members_to_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddMembersToProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_unique_identifier': '123456789', - 'user_identifiers_array': 'user@example.com', - 'include_optional_properties': ['followers', 'assignee'], - 'pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_portfolio_members_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_portfolio_members_example_call_tool.js deleted file mode 100644 index 2f787268b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_portfolio_members_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddPortfolioMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "portfolio_global_id": "123456789", - "enable_pretty_output": true, - "portfolio_member_identifiers": [ - "user@example.com", - "me" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_portfolio_members_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_portfolio_members_example_call_tool.py deleted file mode 100644 index 0b56d3adb..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_portfolio_members_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddPortfolioMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'portfolio_global_id': '123456789', - 'enable_pretty_output': True, - 'portfolio_member_identifiers': ['user@example.com', 'me'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_tag_to_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_tag_to_task_example_call_tool.js deleted file mode 100644 index a17ea8334..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_tag_to_task_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddTagToTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "123456789", - "tag_gid_to_add": "987654321", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_tag_to_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_tag_to_task_example_call_tool.py deleted file mode 100644 index aff28dd3b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_tag_to_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddTagToTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': '123456789', 'tag_gid_to_add': '987654321', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_task_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_task_comment_example_call_tool.js deleted file mode 100644 index 69f8552d5..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_task_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddTaskComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "target_task_id": "123456", - "request_body": "{\"text\":\"This is a comment.\"}", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_task_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_task_comment_example_call_tool.py deleted file mode 100644 index 1cfb6175c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_task_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddTaskComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'target_task_id': '123456', - 'request_body': '{"text":"This is a comment."}', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_task_dependencies_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_task_dependencies_example_call_tool.js deleted file mode 100644 index 875cc12dc..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_task_dependencies_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddTaskDependencies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id_to_modify": "123456789", - "enable_pretty_output": true, - "task_dependency_ids": [ - "987654321", - "456789123" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_task_dependencies_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_task_dependencies_example_call_tool.py deleted file mode 100644 index d6d0ccda3..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_task_dependencies_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddTaskDependencies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id_to_modify': '123456789', - 'enable_pretty_output': True, - 'task_dependency_ids': ['987654321', '456789123'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_task_to_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_task_to_project_example_call_tool.js deleted file mode 100644 index 79a4d50c3..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_task_to_project_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddTaskToProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_global_id": "123456", - "project_id_to_add_task": "proj_78910", - "insert_after_task_id": "task_111213", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_task_to_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_task_to_project_example_call_tool.py deleted file mode 100644 index 610a4fd47..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_task_to_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddTaskToProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_global_id': '123456', - 'project_id_to_add_task': 'proj_78910', - 'insert_after_task_id': 'task_111213', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_task_to_section_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_task_to_section_example_call_tool.js deleted file mode 100644 index e8b59426c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_task_to_section_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddTaskToSection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "section_global_identifier": "123456789", - "task_description": "Implement new feature", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_task_to_section_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_task_to_section_example_call_tool.py deleted file mode 100644 index d8cac632e..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_task_to_section_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddTaskToSection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'section_global_identifier': '123456789', - 'task_description': 'Implement new feature', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_user_to_team_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_user_to_team_example_call_tool.js deleted file mode 100644 index 45d46b998..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_user_to_team_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddUserToTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_unique_identifier": "123456789", - "user_identifier": "user@example.com", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_user_to_team_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_user_to_team_example_call_tool.py deleted file mode 100644 index 64b3d9002..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_user_to_team_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddUserToTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_unique_identifier': '123456789', - 'user_identifier': 'user@example.com', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/add_user_to_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/add_user_to_workspace_example_call_tool.js deleted file mode 100644 index 537fe3367..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_user_to_workspace_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AddUserToWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_global_identifier": "123456789", - "user_identifier": "user@example.com", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/add_user_to_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/add_user_to_workspace_example_call_tool.py deleted file mode 100644 index 8b3bd0c10..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/add_user_to_workspace_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AddUserToWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_global_identifier': '123456789', - 'user_identifier': 'user@example.com', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/approve_access_request_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/approve_access_request_example_call_tool.js deleted file mode 100644 index f2c64cf93..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/approve_access_request_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.ApproveAccessRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "access_request_global_id": "req_123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/approve_access_request_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/approve_access_request_example_call_tool.py deleted file mode 100644 index 563aded00..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/approve_access_request_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.ApproveAccessRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'access_request_global_id': 'req_123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/asana_create_team_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/asana_create_team_example_call_tool.js deleted file mode 100644 index 1f0b80842..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/asana_create_team_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AsanaCreateTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Development Team\",\"projects\":[\"Project A\",\"Project B\"]}", - "include_optional_properties": [ - "members", - "description" - ], - "pretty_output_enabled": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/asana_create_team_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/asana_create_team_example_call_tool.py deleted file mode 100644 index 4a036aea7..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/asana_create_team_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AsanaCreateTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Development Team","projects":["Project A","Project B"]}', - 'include_optional_properties': ['members', 'description'], - 'pretty_output_enabled': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/asana_duplicate_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/asana_duplicate_project_example_call_tool.js deleted file mode 100644 index 2512111e2..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/asana_duplicate_project_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AsanaDuplicateProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_global_id": "123456789", - "new_project_name": "Duplicated Project", - "include_elements_in_project_duplication": "tasks,sections", - "pretty_output_enabled": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/asana_duplicate_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/asana_duplicate_project_example_call_tool.py deleted file mode 100644 index 52d3864b2..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/asana_duplicate_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AsanaDuplicateProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_global_id': '123456789', - 'new_project_name': 'Duplicated Project', - 'include_elements_in_project_duplication': 'tasks,sections', - 'pretty_output_enabled': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/asana_remove_follower_for_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/asana_remove_follower_for_task_example_call_tool.js deleted file mode 100644 index b355acecb..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/asana_remove_follower_for_task_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AsanaRemoveFollowerForTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "123456789", - "followers_to_remove": [ - "user@example.com", - "me" - ], - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/asana_remove_follower_for_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/asana_remove_follower_for_task_example_call_tool.py deleted file mode 100644 index a2e81a4c3..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/asana_remove_follower_for_task_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AsanaRemoveFollowerForTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': '123456789', - 'followers_to_remove': ['user@example.com', 'me'], - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/asana_update_webhook_filters_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/asana_update_webhook_filters_example_call_tool.js deleted file mode 100644 index 3ab5126cd..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/asana_update_webhook_filters_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.AsanaUpdateWebhookFilters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "webhook_global_id": "123456789", - "request_body": "{\"filters\":{\"project\":\"my_project\",\"status\":\"active\"}}", - "include_optional_properties": [ - "property1", - "property2" - ], - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/asana_update_webhook_filters_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/asana_update_webhook_filters_example_call_tool.py deleted file mode 100644 index 5a76e4b66..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/asana_update_webhook_filters_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.AsanaUpdateWebhookFilters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'webhook_global_id': '123456789', - 'request_body': '{"filters":{"project":"my_project","status":"active"}}', - 'include_optional_properties': ['property1', 'property2'], - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_allocation_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_allocation_example_call_tool.js deleted file mode 100644 index 8dc05c6cf..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_allocation_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateAllocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "optional_properties_to_include": [ - "custom_fields", - "attachments" - ], - "enable_pretty_output": true, - "request_body": "{\"name\":\"New Allocation\",\"amount\":1000}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_allocation_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_allocation_example_call_tool.py deleted file mode 100644 index 17655d315..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_allocation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateAllocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'optional_properties_to_include': ['custom_fields', 'attachments'], - 'enable_pretty_output': True, - 'request_body': '{"name":"New Allocation","amount":1000}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_asana_goal_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_asana_goal_example_call_tool.js deleted file mode 100644 index 473bf12e2..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_asana_goal_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateAsanaGoal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Increase Sales\",\"description\":\"Goal to increase sales by 20% in Q1\",\"team_id\":\"12345\"}", - "include_optional_properties": [ - "due_date", - "assignee" - ], - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_asana_goal_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_asana_goal_example_call_tool.py deleted file mode 100644 index 54bcbde6a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_asana_goal_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateAsanaGoal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Increase Sales","description":"Goal to increase sales by 20% in ' - 'Q1","team_id":"12345"}', - 'include_optional_properties': ['due_date', 'assignee'], - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_asana_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_asana_membership_example_call_tool.js deleted file mode 100644 index 2f1392672..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_asana_membership_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateAsanaMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enable_pretty_output": false, - "request_body": "{\"entity_type\":\"project\",\"entity_id\":\"123456\",\"member_id\":\"user_789\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_asana_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_asana_membership_example_call_tool.py deleted file mode 100644 index 66ec1a372..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_asana_membership_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateAsanaMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enable_pretty_output': False, - 'request_body': '{"entity_type":"project","entity_id":"123456","member_id":"user_789"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_asana_portfolio_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_asana_portfolio_example_call_tool.js deleted file mode 100644 index 91468067a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_asana_portfolio_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateAsanaPortfolio"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "include_optional_fields": [ - "name", - "members" - ], - "enable_pretty_output": true, - "request_body": "{\"name\":\"New Portfolio\",\"workspace\":\"123456\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_asana_portfolio_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_asana_portfolio_example_call_tool.py deleted file mode 100644 index 3651d73c0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_asana_portfolio_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateAsanaPortfolio" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'include_optional_fields': ['name', 'members'], - 'enable_pretty_output': True, - 'request_body': '{"name":"New Portfolio","workspace":"123456"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_asana_project_for_team_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_asana_project_for_team_example_call_tool.js deleted file mode 100644 index 397cf7e9b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_asana_project_for_team_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateAsanaProjectForTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_global_id": "123456789", - "include_optional_project_properties": [ - "due_date", - "assignee" - ], - "enable_pretty_output": true, - "request_body": "{\"name\":\"New Project\",\"notes\":\"Project description here.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_asana_project_for_team_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_asana_project_for_team_example_call_tool.py deleted file mode 100644 index 889dc86da..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_asana_project_for_team_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateAsanaProjectForTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_global_id': '123456789', - 'include_optional_project_properties': ['due_date', 'assignee'], - 'enable_pretty_output': True, - 'request_body': '{"name":"New Project","notes":"Project description here."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_asana_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_asana_task_example_call_tool.js deleted file mode 100644 index 33cbf50ed..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_asana_task_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateAsanaTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_template_id": "12345", - "enable_pretty_output": true, - "task_name": "New Feature Implementation" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_asana_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_asana_task_example_call_tool.py deleted file mode 100644 index 710fcf00c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_asana_task_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateAsanaTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_template_id': '12345', - 'enable_pretty_output': True, - 'task_name': 'New Feature Implementation' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_asana_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_asana_webhook_example_call_tool.js deleted file mode 100644 index dce2ad5c9..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_asana_webhook_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateAsanaWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"data\":{\"resource_type\":\"webhook\",\"resource_id\":\"123456\",\"target\":\"https://example.com/webhook\"}}", - "include_optional_properties": [ - "created_at", - "modified_at" - ], - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_asana_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_asana_webhook_example_call_tool.py deleted file mode 100644 index 26082e1e2..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_asana_webhook_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateAsanaWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"data":{"resource_type":"webhook","resource_id":"123456","target":"https://example.com/webhook"}}', - 'include_optional_properties': ['created_at', 'modified_at'], - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_custom_field_in_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_custom_field_in_workspace_example_call_tool.js deleted file mode 100644 index 1c7f662f4..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_custom_field_in_workspace_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateCustomFieldInWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Custom Field\",\"type\":\"text\",\"workspace\":\"123456\"}", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_custom_field_in_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_custom_field_in_workspace_example_call_tool.py deleted file mode 100644 index e2f355316..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_custom_field_in_workspace_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateCustomFieldInWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New Custom Field","type":"text","workspace":"123456"}', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_goal_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_goal_metric_example_call_tool.js deleted file mode 100644 index b48cb2aa9..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_goal_metric_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateGoalMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "goal_global_id": "12345", - "request_body": "{\"metric\":\"completion_rate\",\"value\":75}", - "include_optional_properties": [ - "description", - "due_date" - ], - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_goal_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_goal_metric_example_call_tool.py deleted file mode 100644 index 9f232c9bf..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_goal_metric_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateGoalMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'goal_global_id': '12345', - 'request_body': '{"metric":"completion_rate","value":75}', - 'include_optional_properties': ['description', 'due_date'], - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_goal_supporting_relationship_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_goal_supporting_relationship_example_call_tool.js deleted file mode 100644 index 857761a85..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_goal_supporting_relationship_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateGoalSupportingRelationship"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_global_identifier": "123456789", - "enable_pretty_output": true, - "supporting_resource_id": "987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_goal_supporting_relationship_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_goal_supporting_relationship_example_call_tool.py deleted file mode 100644 index 9b68c330b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_goal_supporting_relationship_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateGoalSupportingRelationship" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_global_identifier': '123456789', - 'enable_pretty_output': True, - 'supporting_resource_id': '987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_new_asana_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_new_asana_project_example_call_tool.js deleted file mode 100644 index 153df7c86..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_new_asana_project_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateNewAsanaProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Project\",\"workspace\":\"123456789\",\"team\":\"987654321\"}", - "included_properties_list": [ - "id", - "name" - ], - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_new_asana_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_new_asana_project_example_call_tool.py deleted file mode 100644 index c5c717c66..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_new_asana_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateNewAsanaProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New Project","workspace":"123456789","team":"987654321"}', - 'included_properties_list': ['id', 'name'], - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_new_asana_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_new_asana_tag_example_call_tool.js deleted file mode 100644 index 080d033d2..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_new_asana_tag_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateNewAsanaTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Tag\"}", - "include_optional_properties": [ - "color" - ], - "pretty_output_enabled": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_new_asana_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_new_asana_tag_example_call_tool.py deleted file mode 100644 index f5bf5f8cb..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_new_asana_tag_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateNewAsanaTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New Tag"}', - 'include_optional_properties': ['color'], - 'pretty_output_enabled': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_parallel_requests_asana_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_parallel_requests_asana_example_call_tool.js deleted file mode 100644 index aef1214b1..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_parallel_requests_asana_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateParallelRequestsAsana"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "include_optional_fields": [ - "field1", - "field2" - ], - "enable_pretty_output": true, - "request_body": "{\"data\":{\"name\":\"Task Name\",\"projects\":[\"project_id\"]}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_parallel_requests_asana_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_parallel_requests_asana_example_call_tool.py deleted file mode 100644 index c3e24a545..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_parallel_requests_asana_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateParallelRequestsAsana" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'include_optional_fields': ['field1', 'field2'], - 'enable_pretty_output': True, - 'request_body': '{"data":{"name":"Task Name","projects":["project_id"]}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_project_brief_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_project_brief_example_call_tool.js deleted file mode 100644 index 5906e0d54..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_project_brief_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateProjectBrief"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_global_id": "123456789", - "include_optional_properties": [ - "description", - "due_date" - ], - "enable_pretty_output": true, - "request_body": "{\"title\":\"New Project Brief\",\"description\":\"This is a sample project brief.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_project_brief_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_project_brief_example_call_tool.py deleted file mode 100644 index 0b4b07fb8..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_project_brief_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateProjectBrief" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_global_id': '123456789', - 'include_optional_properties': ['description', 'due_date'], - 'enable_pretty_output': True, - 'request_body': '{"title":"New Project Brief","description":"This is a sample project brief."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_project_in_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_project_in_workspace_example_call_tool.js deleted file mode 100644 index 10b7e27e3..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_project_in_workspace_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateProjectInWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "workspace_identifier": "123456789", - "include_optional_properties": [ - "team", - "due_date" - ], - "pretty_output": true, - "request_body": "{\"name\":\"New Project\",\"notes\":\"Project description here.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_project_in_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_project_in_workspace_example_call_tool.py deleted file mode 100644 index 03d07ed9b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_project_in_workspace_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateProjectInWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'workspace_identifier': '123456789', - 'include_optional_properties': ['team', 'due_date'], - 'pretty_output': True, - 'request_body': '{"name":"New Project","notes":"Project description here."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_project_status_update_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_project_status_update_example_call_tool.js deleted file mode 100644 index 91dde1b04..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_project_status_update_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateProjectStatusUpdate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_global_id": "123456789", - "included_optional_properties": [ - "status", - "assignee" - ], - "enable_pretty_output": true, - "request_body": "{\"status\":\"In Progress\",\"description\":\"Working on the new feature.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_project_status_update_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_project_status_update_example_call_tool.py deleted file mode 100644 index 9b6087e48..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_project_status_update_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateProjectStatusUpdate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_global_id': '123456789', - 'included_optional_properties': ['status', 'assignee'], - 'enable_pretty_output': True, - 'request_body': '{"status":"In Progress","description":"Working on the new feature."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_project_template_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_project_template_example_call_tool.js deleted file mode 100644 index 2a3afda2f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_project_template_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateProjectTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_global_id": "12345", - "enable_pretty_output": true, - "template_name": "My Project Template" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_project_template_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_project_template_example_call_tool.py deleted file mode 100644 index 115e1171f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_project_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateProjectTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_global_id': '12345', 'enable_pretty_output': True, 'template_name': 'My Project Template' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_section_in_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_section_in_project_example_call_tool.js deleted file mode 100644 index 0e9d84af7..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_section_in_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateSectionInProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_global_id": "123456789", - "section_name": "New Section", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_section_in_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_section_in_project_example_call_tool.py deleted file mode 100644 index 57630ab66..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_section_in_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateSectionInProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_global_id': '123456789', 'section_name': 'New Section', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_status_update_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_status_update_example_call_tool.js deleted file mode 100644 index dbf7dbea6..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_status_update_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateStatusUpdate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "results_per_page": 10, - "request_body": "{\"status\":\"In Progress\",\"project_id\":\"12345\",\"update\":\"Working on the new feature.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_status_update_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_status_update_example_call_tool.py deleted file mode 100644 index 7f5bc33b2..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_status_update_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateStatusUpdate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'results_per_page': 10, - 'request_body': '{"status":"In Progress","project_id":"12345","update":"Working on the new ' - 'feature."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_subtask_for_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_subtask_for_task_example_call_tool.js deleted file mode 100644 index 8df93dd9f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_subtask_for_task_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateSubtaskForTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "parent_task_id": "123456789", - "included_optional_fields": [ - "assignee", - "due_date" - ], - "enable_pretty_output": true, - "request_body": "{\"name\":\"New Subtask\",\"notes\":\"This is a subtask under the main task.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_subtask_for_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_subtask_for_task_example_call_tool.py deleted file mode 100644 index 89d700fd2..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_subtask_for_task_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateSubtaskForTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'parent_task_id': '123456789', - 'included_optional_fields': ['assignee', 'due_date'], - 'enable_pretty_output': True, - 'request_body': '{"name":"New Subtask","notes":"This is a subtask under the main task."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_time_tracking_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_time_tracking_entry_example_call_tool.js deleted file mode 100644 index 89a81b216..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_time_tracking_entry_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateTimeTrackingEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "123456", - "duration_minutes_tracked": 30, - "enable_pretty_output": true, - "entry_logged_date": "2023-10-01", - "include_optional_properties": [ - "notes", - "tags" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_time_tracking_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_time_tracking_entry_example_call_tool.py deleted file mode 100644 index 471078598..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_time_tracking_entry_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateTimeTrackingEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': '123456', - 'duration_minutes_tracked': 30, - 'enable_pretty_output': True, - 'entry_logged_date': '2023-10-01', - 'include_optional_properties': ['notes', 'tags'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/create_workspace_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/create_workspace_tag_example_call_tool.js deleted file mode 100644 index 38a0cc2f8..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_workspace_tag_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.CreateWorkspaceTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "workspace_id": "123456789", - "included_optional_properties": [ - "color", - "created_at" - ], - "enable_pretty_output": true, - "request_body": "{\"name\":\"New Tag\",\"notes\":\"This is a new tag for categorization.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/create_workspace_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/create_workspace_tag_example_call_tool.py deleted file mode 100644 index 310219e19..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/create_workspace_tag_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.CreateWorkspaceTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'workspace_id': '123456789', - 'included_optional_properties': ['color', 'created_at'], - 'enable_pretty_output': True, - 'request_body': '{"name":"New Tag","notes":"This is a new tag for categorization."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_allocation_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_allocation_example_call_tool.js deleted file mode 100644 index 70ed113de..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_allocation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteAllocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "allocation_id": "12345", - "pretty_formatting": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_allocation_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_allocation_example_call_tool.py deleted file mode 100644 index 6d537bc1a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_allocation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteAllocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'allocation_id': '12345', 'pretty_formatting': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_goal_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_asana_goal_example_call_tool.js deleted file mode 100644 index b0b73a3c8..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_goal_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteAsanaGoal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_identifier": "123456789", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_goal_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_asana_goal_example_call_tool.py deleted file mode 100644 index d4af66b66..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_goal_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteAsanaGoal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_identifier': '123456789', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_asana_membership_example_call_tool.js deleted file mode 100644 index 58a198543..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_membership_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteAsanaMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "membership_id": "123456789", - "pretty_output_enabled": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_asana_membership_example_call_tool.py deleted file mode 100644 index f6b0c646d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_membership_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteAsanaMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'membership_id': '123456789', 'pretty_output_enabled': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_asana_project_example_call_tool.js deleted file mode 100644 index d234e4bb4..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteAsanaProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_unique_identifier": "123456789", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_asana_project_example_call_tool.py deleted file mode 100644 index fdba0f02d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteAsanaProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_unique_identifier': '123456789', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_section_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_asana_section_example_call_tool.js deleted file mode 100644 index 5184077db..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_section_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteAsanaSection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "section_global_identifier": "123456789", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_section_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_asana_section_example_call_tool.py deleted file mode 100644 index c2b0b807f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_section_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteAsanaSection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'section_global_identifier': '123456789', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_story_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_asana_story_example_call_tool.js deleted file mode 100644 index db340d0d7..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_story_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteAsanaStory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "story_unique_id": "1234567890", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_story_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_asana_story_example_call_tool.py deleted file mode 100644 index e5c74d1a1..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_story_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteAsanaStory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'story_unique_id': '1234567890', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_asana_tag_example_call_tool.js deleted file mode 100644 index 7f2f23a3b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_tag_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteAsanaTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tag_unique_identifier": "123456789", - "enable_pretty_output": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_asana_tag_example_call_tool.py deleted file mode 100644 index b4998a15c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteAsanaTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tag_unique_identifier': '123456789', 'enable_pretty_output': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_asana_task_example_call_tool.js deleted file mode 100644 index 5080423f0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_task_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteAsanaTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_identifier": "123456789", - "pretty_output_enabled": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_asana_task_example_call_tool.py deleted file mode 100644 index 3f23bbdec..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteAsanaTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_identifier': '123456789', 'pretty_output_enabled': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_asana_webhook_example_call_tool.js deleted file mode 100644 index 0bdf604b4..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_webhook_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteAsanaWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_global_id": "1234567890", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_asana_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_asana_webhook_example_call_tool.py deleted file mode 100644 index fc5b4072b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_asana_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteAsanaWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_global_id': '1234567890', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_attachment_example_call_tool.js deleted file mode 100644 index 6dd7fc1d2..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_attachment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "attachment_unique_id": "12345", - "pretty_output_enabled": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_attachment_example_call_tool.py deleted file mode 100644 index 5ed7ed61f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_attachment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'attachment_unique_id': '12345', 'pretty_output_enabled': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_custom_field_example_call_tool.js deleted file mode 100644 index dd880936a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_custom_field_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_field_id": "123456789", - "pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_custom_field_example_call_tool.py deleted file mode 100644 index fc1d62b30..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_custom_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_field_id': '123456789', 'pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_portfolio_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_portfolio_example_call_tool.js deleted file mode 100644 index 5f8e58717..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_portfolio_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeletePortfolio"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "portfolio_global_id": "12345", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_portfolio_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_portfolio_example_call_tool.py deleted file mode 100644 index 7951a28bd..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_portfolio_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeletePortfolio" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'portfolio_global_id': '12345', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_project_brief_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_project_brief_example_call_tool.js deleted file mode 100644 index 1df839bed..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_project_brief_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteProjectBrief"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_brief_unique_id": "12345", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_project_brief_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_project_brief_example_call_tool.py deleted file mode 100644 index 0f836d719..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_project_brief_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteProjectBrief" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_brief_unique_id': '12345', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_project_status_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_project_status_example_call_tool.js deleted file mode 100644 index a954baf85..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_project_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteProjectStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_status_id": "123456", - "pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_project_status_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_project_status_example_call_tool.py deleted file mode 100644 index 0c24a6637..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_project_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteProjectStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_status_id': '123456', 'pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_project_template_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_project_template_example_call_tool.js deleted file mode 100644 index 8e2763f34..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_project_template_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteProjectTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_template_identifier": "1234567890", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_project_template_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_project_template_example_call_tool.py deleted file mode 100644 index 43c9c12c3..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_project_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteProjectTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_template_identifier': '1234567890', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_status_update_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_status_update_example_call_tool.js deleted file mode 100644 index ad8115305..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_status_update_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteStatusUpdate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_update_id": "12345", - "pretty_output": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_status_update_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_status_update_example_call_tool.py deleted file mode 100644 index 6185693f3..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_status_update_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteStatusUpdate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_update_id': '12345', 'pretty_output': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_task_template_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_task_template_example_call_tool.js deleted file mode 100644 index 802e04cb1..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_task_template_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteTaskTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_template_id": "123456789", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_task_template_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_task_template_example_call_tool.py deleted file mode 100644 index f469dc606..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_task_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteTaskTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_template_id': '123456789', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_time_tracking_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/delete_time_tracking_entry_example_call_tool.js deleted file mode 100644 index f55cdaa1b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_time_tracking_entry_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DeleteTimeTrackingEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "time_tracking_entry_identifier": "12345", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/delete_time_tracking_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/delete_time_tracking_entry_example_call_tool.py deleted file mode 100644 index 8ca97a05d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/delete_time_tracking_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DeleteTimeTrackingEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'time_tracking_entry_identifier': '12345', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/duplicate_asana_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/duplicate_asana_task_example_call_tool.js deleted file mode 100644 index c79489d0b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/duplicate_asana_task_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.DuplicateAsanaTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_gid": "123456789", - "enable_pretty_output": true, - "fields_to_duplicate": "assignee,attachments", - "new_task_name": "Duplicated Task" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/duplicate_asana_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/duplicate_asana_task_example_call_tool.py deleted file mode 100644 index 484d52f55..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/duplicate_asana_task_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.DuplicateAsanaTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_gid': '123456789', - 'enable_pretty_output': True, - 'fields_to_duplicate': 'assignee,attachments', - 'new_task_name': 'Duplicated Task' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_asana_events_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/fetch_asana_events_example_call_tool.js deleted file mode 100644 index a110cea4a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_asana_events_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.FetchAsanaEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_resource_id": "123456", - "enable_pretty_output": true, - "include_optional_properties": [ - "assignee", - "due_date" - ], - "sync_token": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_asana_events_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/fetch_asana_events_example_call_tool.py deleted file mode 100644 index bd07138a8..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_asana_events_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.FetchAsanaEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_resource_id': '123456', - 'enable_pretty_output': True, - 'include_optional_properties': ['assignee', 'due_date'], - 'sync_token': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_attachment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/fetch_attachment_details_example_call_tool.js deleted file mode 100644 index 7cc4df883..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_attachment_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.FetchAttachmentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "attachment_unique_id": "123456789", - "enable_pretty_output": true, - "include_optional_properties": [ - "size", - "mime_type" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_attachment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/fetch_attachment_details_example_call_tool.py deleted file mode 100644 index f5591ea8f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_attachment_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.FetchAttachmentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'attachment_unique_id': '123456789', - 'enable_pretty_output': True, - 'include_optional_properties': ['size', 'mime_type'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_job_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/fetch_job_details_example_call_tool.js deleted file mode 100644 index b502d932c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_job_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.FetchJobDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_id": "123456", - "include_optional_properties": [ - "assignee", - "due_date" - ], - "opt_pretty": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_job_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/fetch_job_details_example_call_tool.py deleted file mode 100644 index 273584bdf..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_job_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.FetchJobDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_id': '123456', 'include_optional_properties': ['assignee', 'due_date'], 'opt_pretty': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_project_task_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/fetch_project_task_templates_example_call_tool.js deleted file mode 100644 index 69609b7a4..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_project_task_templates_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.FetchProjectTaskTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_pretty_output": true, - "optional_fields_to_include": [ - "name", - "due_date" - ], - "project_id": "123456", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_project_task_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/fetch_project_task_templates_example_call_tool.py deleted file mode 100644 index a1fa8ed88..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_project_task_templates_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.FetchProjectTaskTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_pretty_output': True, - 'optional_fields_to_include': ['name', 'due_date'], - 'project_id': '123456', - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_reactions_by_emoji_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/fetch_reactions_by_emoji_example_call_tool.js deleted file mode 100644 index a72381c38..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_reactions_by_emoji_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.FetchReactionsByEmoji"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "emoji_base_character": "👍", - "object_gid": "1234567890", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_reactions_by_emoji_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/fetch_reactions_by_emoji_example_call_tool.py deleted file mode 100644 index 2fd8e4b3c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_reactions_by_emoji_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.FetchReactionsByEmoji" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'emoji_base_character': '👍', - 'object_gid': '1234567890', - 'enable_pretty_output': True, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_status_update_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/fetch_status_update_example_call_tool.js deleted file mode 100644 index 5bae6fc13..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_status_update_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.FetchStatusUpdate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_update_id": "12345", - "enable_pretty_output": true, - "include_optional_fields": [ - "comments", - "attachments" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_status_update_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/fetch_status_update_example_call_tool.py deleted file mode 100644 index d0d9e2786..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_status_update_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.FetchStatusUpdate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_update_id': '12345', - 'enable_pretty_output': True, - 'include_optional_fields': ['comments', 'attachments'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_task_template_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/fetch_task_template_example_call_tool.js deleted file mode 100644 index f267ea27a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_task_template_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.FetchTaskTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_template_unique_id": "1234567890", - "enable_pretty_output": true, - "include_optional_fields": [ - "description", - "assignee" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_task_template_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/fetch_task_template_example_call_tool.py deleted file mode 100644 index d71b48a45..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_task_template_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.FetchTaskTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_template_unique_id': '1234567890', - 'enable_pretty_output': True, - 'include_optional_fields': ['description', 'assignee'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_team_members_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/fetch_team_members_example_call_tool.js deleted file mode 100644 index 5ccaa553c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_team_members_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.FetchTeamMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_global_identifier": "123456789", - "enable_pretty_output": true, - "optional_properties_to_include": [ - "email", - "role" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_team_members_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/fetch_team_members_example_call_tool.py deleted file mode 100644 index bac1e7451..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_team_members_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.FetchTeamMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_global_identifier': '123456789', - 'enable_pretty_output': True, - 'optional_properties_to_include': ['email', 'role'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_time_tracking_data_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/fetch_time_tracking_data_example_call_tool.js deleted file mode 100644 index 3dde96129..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_time_tracking_data_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.FetchTimeTrackingData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_pretty_output": true, - "include_optional_fields": [ - "duration", - "notes" - ], - "results_per_page": 10, - "task_id": "123456789", - "user_id_filter": "987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_time_tracking_data_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/fetch_time_tracking_data_example_call_tool.py deleted file mode 100644 index 837e721c6..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_time_tracking_data_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.FetchTimeTrackingData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_pretty_output': True, - 'include_optional_fields': ['duration', 'notes'], - 'results_per_page': 10, - 'task_id': '123456789', - 'user_id_filter': '987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_user_task_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/fetch_user_task_details_example_call_tool.js deleted file mode 100644 index e951d4d4f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_user_task_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.FetchUserTaskDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_task_list_global_id": "123456789", - "enable_pretty_output": true, - "include_optional_properties": [ - "due_date", - "assignee" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_user_task_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/fetch_user_task_details_example_call_tool.py deleted file mode 100644 index 9f4d10e3c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_user_task_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.FetchUserTaskDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_task_list_global_id': '123456789', - 'enable_pretty_output': True, - 'include_optional_properties': ['due_date', 'assignee'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_user_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/fetch_user_tasks_example_call_tool.js deleted file mode 100644 index 6fee6489c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_user_tasks_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.FetchUserTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "me", - "workspace_id": "123456", - "enable_pretty_output": true, - "include_optional_properties": [ - "due_date", - "assignee" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/fetch_user_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/fetch_user_tasks_example_call_tool.py deleted file mode 100644 index d5e407542..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/fetch_user_tasks_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.FetchUserTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'me', - 'workspace_id': '123456', - 'enable_pretty_output': True, - 'include_optional_properties': ['due_date', 'assignee'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_allocation_record_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_allocation_record_example_call_tool.js deleted file mode 100644 index cff550f52..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_allocation_record_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetAllocationRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "allocation_unique_id": "alloc_12345", - "enable_pretty_output": true, - "include_optional_properties": [ - "property1", - "property2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_allocation_record_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_allocation_record_example_call_tool.py deleted file mode 100644 index 1704b769d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_allocation_record_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetAllocationRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'allocation_unique_id': 'alloc_12345', - 'enable_pretty_output': True, - 'include_optional_properties': ['property1', 'property2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_goal_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_asana_goal_details_example_call_tool.js deleted file mode 100644 index 9f3348788..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_goal_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetAsanaGoalDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_global_identifier": "12345", - "enable_pretty_output": true, - "include_optional_fields": [ - "custom_fields", - "time_periods" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_goal_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_asana_goal_details_example_call_tool.py deleted file mode 100644 index dced7818a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_goal_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetAsanaGoalDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_global_identifier': '12345', - 'enable_pretty_output': True, - 'include_optional_fields': ['custom_fields', 'time_periods'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_project_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_asana_project_templates_example_call_tool.js deleted file mode 100644 index 9a76a94f6..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_project_templates_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetAsanaProjectTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_optional_fields": [ - "description", - "created_at" - ], - "results_per_page": 10, - "team_filter": "123456", - "workspace_identifier": "workspace_1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_project_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_asana_project_templates_example_call_tool.py deleted file mode 100644 index 202ba6a85..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_project_templates_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetAsanaProjectTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_optional_fields': ['description', 'created_at'], - 'results_per_page': 10, - 'team_filter': '123456', - 'workspace_identifier': 'workspace_1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_asana_projects_example_call_tool.js deleted file mode 100644 index c2898fdea..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_projects_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetAsanaProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_pretty_output": true, - "optional_fields_to_include": [ - "due_date", - "assignee" - ], - "results_per_page": 10, - "team_filter": "Marketing", - "workspace_filter": "Company XYZ" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_asana_projects_example_call_tool.py deleted file mode 100644 index 8a604a9a2..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_projects_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetAsanaProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_pretty_output': True, - 'optional_fields_to_include': ['due_date', 'assignee'], - 'results_per_page': 10, - 'team_filter': 'Marketing', - 'workspace_filter': 'Company XYZ' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_section_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_asana_section_example_call_tool.js deleted file mode 100644 index ac9753304..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_section_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetAsanaSection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "section_global_id": "123456789", - "enable_pretty_output": true, - "include_optional_properties": [ - "color", - "created_at" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_section_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_asana_section_example_call_tool.py deleted file mode 100644 index e2ae29f15..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_section_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetAsanaSection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'section_global_id': '123456789', - 'enable_pretty_output': True, - 'include_optional_properties': ['color', 'created_at'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_story_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_asana_story_example_call_tool.js deleted file mode 100644 index e8efa5f2e..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_story_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetAsanaStory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "story_identifier": "123456789", - "enable_pretty_output": true, - "include_optional_properties": [ - "attachments", - "comments" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_story_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_asana_story_example_call_tool.py deleted file mode 100644 index 8cdd10a3f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_story_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetAsanaStory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'story_identifier': '123456789', - 'enable_pretty_output': True, - 'include_optional_properties': ['attachments', 'comments'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_tag_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_asana_tag_details_example_call_tool.js deleted file mode 100644 index bd9e673de..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_tag_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetAsanaTagDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tag_global_identifier": "123456789", - "enable_pretty_output": true, - "include_optional_fields": [ - "color", - "created_at" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_tag_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_asana_tag_details_example_call_tool.py deleted file mode 100644 index 911652672..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_tag_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetAsanaTagDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tag_global_identifier': '123456789', - 'enable_pretty_output': True, - 'include_optional_fields': ['color', 'created_at'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_team_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_asana_team_details_example_call_tool.js deleted file mode 100644 index d28576854..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_team_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetAsanaTeamDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_global_id": "1234567890", - "enable_pretty_output": true, - "include_optional_fields": [ - "projects", - "members" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_team_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_asana_team_details_example_call_tool.py deleted file mode 100644 index eabc207e7..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_team_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetAsanaTeamDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_global_id': '1234567890', - 'enable_pretty_output': True, - 'include_optional_fields': ['projects', 'members'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_teams_for_user_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_asana_teams_for_user_example_call_tool.js deleted file mode 100644 index 86a89c01f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_teams_for_user_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetAsanaTeamsForUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_organization": "My Organization", - "user_identifier": "me", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_teams_for_user_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_asana_teams_for_user_example_call_tool.py deleted file mode 100644 index 822093940..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_teams_for_user_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetAsanaTeamsForUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_organization': 'My Organization', - 'user_identifier': 'me', - 'enable_pretty_output': True, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_teams_for_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_asana_teams_for_workspace_example_call_tool.js deleted file mode 100644 index eea948932..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_teams_for_workspace_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetAsanaTeamsForWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_global_id": "123456789", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_teams_for_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_asana_teams_for_workspace_example_call_tool.py deleted file mode 100644 index 673471f2c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_teams_for_workspace_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetAsanaTeamsForWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_global_id': '123456789', 'enable_pretty_output': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_users_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_asana_users_example_call_tool.js deleted file mode 100644 index 58813695b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_users_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetAsanaUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_pretty_output": true, - "filter_by_team_id": "123456", - "include_optional_properties": [ - "photo", - "work_email" - ], - "results_per_page": 50, - "workspace_id": "workspace_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_users_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_asana_users_example_call_tool.py deleted file mode 100644 index dc00443a7..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_users_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetAsanaUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_pretty_output': True, - 'filter_by_team_id': '123456', - 'include_optional_properties': ['photo', 'work_email'], - 'results_per_page': 50, - 'workspace_id': 'workspace_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_webhooks_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_asana_webhooks_example_call_tool.js deleted file mode 100644 index 1c6c70839..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_webhooks_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetAsanaWebhooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "123456789", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_asana_webhooks_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_asana_webhooks_example_call_tool.py deleted file mode 100644 index bfd174352..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_asana_webhooks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetAsanaWebhooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': '123456789', 'enable_pretty_output': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_attachments_example_call_tool.js deleted file mode 100644 index 6c18ccb9d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_attachments_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_gid": "123456789", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_attachments_example_call_tool.py deleted file mode 100644 index 09e4c7603..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_attachments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_gid': '123456789', 'enable_pretty_output': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_compact_goals_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_compact_goals_example_call_tool.js deleted file mode 100644 index 787c3ee27..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_compact_goals_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetCompactGoals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_pretty_output": true, - "included_optional_properties": [ - "description", - "due_date" - ], - "results_per_page": 10, - "workspace_id": "123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_compact_goals_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_compact_goals_example_call_tool.py deleted file mode 100644 index f1c111e4e..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_compact_goals_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetCompactGoals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_pretty_output': True, - 'included_optional_properties': ['description', 'due_date'], - 'results_per_page': 10, - 'workspace_id': '123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_custom_field_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_custom_field_metadata_example_call_tool.js deleted file mode 100644 index d31cdc4d4..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_custom_field_metadata_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetCustomFieldMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_field_id": "123456789", - "enable_pretty_output": true, - "include_optional_properties": [ - "description", - "enum_options" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_custom_field_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_custom_field_metadata_example_call_tool.py deleted file mode 100644 index 145e830b5..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_custom_field_metadata_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetCustomFieldMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_field_id': '123456789', - 'enable_pretty_output': True, - 'include_optional_properties': ['description', 'enum_options'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_custom_field_settings_for_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_custom_field_settings_for_project_example_call_tool.js deleted file mode 100644 index fec54852c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_custom_field_settings_for_project_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetCustomFieldSettingsForProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "123456789", - "enable_pretty_output": true, - "include_optional_fields": [ - "name", - "type" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_custom_field_settings_for_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_custom_field_settings_for_project_example_call_tool.py deleted file mode 100644 index 8ad1e8eae..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_custom_field_settings_for_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetCustomFieldSettingsForProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '123456789', - 'enable_pretty_output': True, - 'include_optional_fields': ['name', 'type'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_custom_fields_for_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_custom_fields_for_workspace_example_call_tool.js deleted file mode 100644 index c9b95926f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_custom_fields_for_workspace_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetCustomFieldsForWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_identifier": "123456789", - "enable_pretty_output": true, - "include_optional_properties": [ - "name", - "type" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_custom_fields_for_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_custom_fields_for_workspace_example_call_tool.py deleted file mode 100644 index 44d08de1a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_custom_fields_for_workspace_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetCustomFieldsForWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_identifier': '123456789', - 'enable_pretty_output': True, - 'include_optional_properties': ['name', 'type'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_custom_type_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_custom_type_details_example_call_tool.js deleted file mode 100644 index dc6c9eaa2..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_custom_type_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetCustomTypeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_type_id": "123456", - "enable_pretty_output": true, - "include_optional_fields": [ - "description", - "color" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_custom_type_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_custom_type_details_example_call_tool.py deleted file mode 100644 index 5dc14643d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_custom_type_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetCustomTypeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_type_id': '123456', - 'enable_pretty_output': True, - 'include_optional_fields': ['description', 'color'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_custom_types_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_custom_types_example_call_tool.js deleted file mode 100644 index daba38003..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_custom_types_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetCustomTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "123456789", - "enable_pretty_output": true, - "include_optional_properties": [ - "name", - "description" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_custom_types_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_custom_types_example_call_tool.py deleted file mode 100644 index a6bb80165..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_custom_types_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetCustomTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '123456789', - 'enable_pretty_output': True, - 'include_optional_properties': ['name', 'description'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_filtered_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_filtered_tags_example_call_tool.js deleted file mode 100644 index 81e7885eb..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_filtered_tags_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetFilteredTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_pretty_output": true, - "include_optional_properties": [ - "color", - "created_at" - ], - "results_per_page": 10, - "workspace_for_filtering": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_filtered_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_filtered_tags_example_call_tool.py deleted file mode 100644 index 9ed572064..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_filtered_tags_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetFilteredTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_pretty_output': True, - 'include_optional_properties': ['color', 'created_at'], - 'results_per_page': 10, - 'workspace_for_filtering': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_filtered_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_filtered_tasks_example_call_tool.js deleted file mode 100644 index 2ce635813..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_filtered_tasks_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetFilteredTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "assignee_id": "123456", - "filter_by_project": "project_abc", - "filter_by_workspace": "workspace_xyz", - "results_per_page": 10, - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_filtered_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_filtered_tasks_example_call_tool.py deleted file mode 100644 index 43d5dc804..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_filtered_tasks_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetFilteredTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'assignee_id': '123456', - 'filter_by_project': 'project_abc', - 'filter_by_workspace': 'workspace_xyz', - 'results_per_page': 10, - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_goal_relationship_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_goal_relationship_details_example_call_tool.js deleted file mode 100644 index 393ff3827..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_goal_relationship_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetGoalRelationshipDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_relationship_identifier": "12345", - "enable_pretty_output": true, - "include_optional_properties": [ - "property1", - "property2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_goal_relationship_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_goal_relationship_details_example_call_tool.py deleted file mode 100644 index d0b0343bb..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_goal_relationship_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetGoalRelationshipDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_relationship_identifier': '12345', - 'enable_pretty_output': True, - 'include_optional_properties': ['property1', 'property2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_goal_relationships_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_goal_relationships_example_call_tool.js deleted file mode 100644 index 2a709bdbb..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_goal_relationships_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetGoalRelationships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "supported_goal_id": "123456789", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_goal_relationships_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_goal_relationships_example_call_tool.py deleted file mode 100644 index f0ca64cdb..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_goal_relationships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetGoalRelationships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'supported_goal_id': '123456789', 'enable_pretty_output': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_membership_info_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_membership_info_example_call_tool.js deleted file mode 100644 index 6ff9e761b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_membership_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetMembershipInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "membership_id": "12345", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_membership_info_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_membership_info_example_call_tool.py deleted file mode 100644 index 7a699d8e8..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_membership_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetMembershipInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'membership_id': '12345', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_memberships_example_call_tool.js deleted file mode 100644 index 5c5feed63..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_memberships_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_pretty_output": true, - "member_identifier": "123456789", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_memberships_example_call_tool.py deleted file mode 100644 index bddbbf90a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_memberships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_pretty_output': True, 'member_identifier': '123456789', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_organization_export_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_organization_export_details_example_call_tool.js deleted file mode 100644 index c81f90660..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_organization_export_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetOrganizationExportDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_export_id": "export_12345", - "enable_pretty_output": true, - "include_optional_properties": [ - "field1", - "field2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_organization_export_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_organization_export_details_example_call_tool.py deleted file mode 100644 index 3b8e94494..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_organization_export_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetOrganizationExportDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_export_id': 'export_12345', - 'enable_pretty_output': True, - 'include_optional_properties': ['field1', 'field2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_parent_goals_for_goal_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_parent_goals_for_goal_example_call_tool.js deleted file mode 100644 index 50dd58eb5..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_parent_goals_for_goal_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetParentGoalsForGoal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_unique_identifier": "123456789", - "include_optional_properties": [ - "due_date", - "assignee" - ], - "pretty_output_enabled": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_parent_goals_for_goal_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_parent_goals_for_goal_example_call_tool.py deleted file mode 100644 index d315b81ba..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_parent_goals_for_goal_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetParentGoalsForGoal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_unique_identifier': '123456789', - 'include_optional_properties': ['due_date', 'assignee'], - 'pretty_output_enabled': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_pending_access_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_pending_access_requests_example_call_tool.js deleted file mode 100644 index b4f744c27..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_pending_access_requests_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetPendingAccessRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_object_id": "123456789", - "enable_pretty_output": true, - "filter_by_user": "me", - "include_optional_properties": [ - "property1", - "property2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_pending_access_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_pending_access_requests_example_call_tool.py deleted file mode 100644 index 9cb293808..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_pending_access_requests_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetPendingAccessRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_object_id': '123456789', - 'enable_pretty_output': True, - 'filter_by_user': 'me', - 'include_optional_properties': ['property1', 'property2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_custom_field_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_portfolio_custom_field_settings_example_call_tool.js deleted file mode 100644 index b7e0922f7..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_custom_field_settings_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetPortfolioCustomFieldSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "portfolio_unique_id": "123456789", - "include_optional_fields": [ - "color", - "icon" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_custom_field_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_portfolio_custom_field_settings_example_call_tool.py deleted file mode 100644 index 56403547c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_custom_field_settings_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetPortfolioCustomFieldSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'portfolio_unique_id': '123456789', - 'include_optional_fields': ['color', 'icon'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_portfolio_details_example_call_tool.js deleted file mode 100644 index e694afc41..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetPortfolioDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "portfolio_unique_id": "123456789", - "enable_pretty_output": true, - "include_optional_properties": [ - "custom_fields", - "owner" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_portfolio_details_example_call_tool.py deleted file mode 100644 index 5ac247bfc..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetPortfolioDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'portfolio_unique_id': '123456789', - 'enable_pretty_output': True, - 'include_optional_properties': ['custom_fields', 'owner'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_items_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_portfolio_items_example_call_tool.js deleted file mode 100644 index 640502056..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_items_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetPortfolioItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "portfolio_unique_id": "12345", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_items_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_portfolio_items_example_call_tool.py deleted file mode 100644 index 2e42441e6..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetPortfolioItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'portfolio_unique_id': '12345', 'enable_pretty_output': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_portfolio_membership_example_call_tool.js deleted file mode 100644 index 3175ca445..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_membership_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetPortfolioMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "portfolio_membership_id": "12345", - "enable_pretty_output": true, - "include_optional_properties": [ - "property1", - "property2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_portfolio_membership_example_call_tool.py deleted file mode 100644 index 841e3b96c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_membership_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetPortfolioMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'portfolio_membership_id': '12345', - 'enable_pretty_output': True, - 'include_optional_properties': ['property1', 'property2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_portfolio_memberships_example_call_tool.js deleted file mode 100644 index 1369132b5..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_memberships_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetPortfolioMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_pretty_output": true, - "include_optional_fields": [ - "role", - "status" - ], - "portfolio_filter": "123456789", - "results_per_page": 10, - "user_identifier": "me" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_portfolio_memberships_example_call_tool.py deleted file mode 100644 index 38fcb504d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_portfolio_memberships_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetPortfolioMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_pretty_output': True, - 'include_optional_fields': ['role', 'status'], - 'portfolio_filter': '123456789', - 'results_per_page': 10, - 'user_identifier': 'me' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_allocations_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_project_allocations_example_call_tool.js deleted file mode 100644 index ecfa5097d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_allocations_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetProjectAllocations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "assignee_id": "12345", - "enable_pretty_output": true, - "include_optional_properties": [ - "due_date", - "status" - ], - "project_id": "67890", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_allocations_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_project_allocations_example_call_tool.py deleted file mode 100644 index 11194c248..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_allocations_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetProjectAllocations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'assignee_id': '12345', - 'enable_pretty_output': True, - 'include_optional_properties': ['due_date', 'status'], - 'project_id': '67890', - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_brief_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_project_brief_example_call_tool.js deleted file mode 100644 index 5f239bcc1..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_brief_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetProjectBrief"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_brief_identifier": "12345", - "include_optional_properties": [ - "description", - "due_date" - ], - "pretty_output_enabled": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_brief_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_project_brief_example_call_tool.py deleted file mode 100644 index 1e7bec710..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_brief_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetProjectBrief" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_brief_identifier': '12345', - 'include_optional_properties': ['description', 'due_date'], - 'pretty_output_enabled': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_project_details_example_call_tool.js deleted file mode 100644 index d1d362848..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetProjectDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_global_identifier": "123456789", - "enable_pretty_output": true, - "include_optional_properties": [ - "custom_fields", - "team" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_project_details_example_call_tool.py deleted file mode 100644 index 09632de12..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetProjectDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_global_identifier': '123456789', - 'enable_pretty_output': True, - 'include_optional_properties': ['custom_fields', 'team'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_membership_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_project_membership_details_example_call_tool.js deleted file mode 100644 index e7f2e13fc..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_membership_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetProjectMembershipDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_membership_id": "123456", - "enable_pretty_output": true, - "include_optional_properties": [ - "notes", - "role" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_membership_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_project_membership_details_example_call_tool.py deleted file mode 100644 index 3f40bf8de..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_membership_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetProjectMembershipDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_membership_id': '123456', - 'enable_pretty_output': True, - 'include_optional_properties': ['notes', 'role'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_project_memberships_example_call_tool.js deleted file mode 100644 index e28c9e7f0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_memberships_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetProjectMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_unique_identifier": "123456789", - "enable_pretty_output": true, - "include_optional_properties": [ - "role", - "status" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_project_memberships_example_call_tool.py deleted file mode 100644 index 8d84bbffb..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_memberships_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetProjectMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_unique_identifier': '123456789', - 'enable_pretty_output': True, - 'include_optional_properties': ['role', 'status'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_sections_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_project_sections_example_call_tool.js deleted file mode 100644 index 856aebf4e..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_sections_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetProjectSections"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_unique_identifier": "123456789", - "enable_pretty_output": true, - "included_optional_fields": [ - "due_date", - "assignee" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_sections_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_project_sections_example_call_tool.py deleted file mode 100644 index d50aa1c4a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_sections_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetProjectSections" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_unique_identifier': '123456789', - 'enable_pretty_output': True, - 'included_optional_fields': ['due_date', 'assignee'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_status_update_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_project_status_update_example_call_tool.js deleted file mode 100644 index 49ea9dcca..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_status_update_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetProjectStatusUpdate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_status_update_id": "12345", - "enable_pretty_output": true, - "include_optional_properties": [ - "comments", - "attachments" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_status_update_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_project_status_update_example_call_tool.py deleted file mode 100644 index b5e010d63..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_status_update_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetProjectStatusUpdate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_status_update_id': '12345', - 'enable_pretty_output': True, - 'include_optional_properties': ['comments', 'attachments'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_status_updates_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_project_status_updates_example_call_tool.js deleted file mode 100644 index 778e9e6cc..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_status_updates_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetProjectStatusUpdates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_global_identifier": "123456789", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_status_updates_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_project_status_updates_example_call_tool.py deleted file mode 100644 index b735f48d6..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_status_updates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetProjectStatusUpdates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_global_identifier': '123456789', 'enable_pretty_output': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_project_tasks_example_call_tool.js deleted file mode 100644 index cb3f47ea2..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_tasks_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetProjectTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_global_id": "123456789", - "completed_since": "2023-01-01T00:00:00Z", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_project_tasks_example_call_tool.py deleted file mode 100644 index cc92eaaf0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_tasks_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetProjectTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_global_id': '123456789', - 'completed_since': '2023-01-01T00:00:00Z', - 'enable_pretty_output': True, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_template_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_project_template_details_example_call_tool.js deleted file mode 100644 index 25476765d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_template_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetProjectTemplateDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_template_id": "12345", - "include_optional_properties": [ - "custom_fields", - "attachments" - ], - "pretty_output_enabled": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_template_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_project_template_details_example_call_tool.py deleted file mode 100644 index aad59fe8f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_template_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetProjectTemplateDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_template_id': '12345', - 'include_optional_properties': ['custom_fields', 'attachments'], - 'pretty_output_enabled': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_templates_for_team_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_project_templates_for_team_example_call_tool.js deleted file mode 100644 index 51eb848cb..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_templates_for_team_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetProjectTemplatesForTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "123456", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_project_templates_for_team_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_project_templates_for_team_example_call_tool.py deleted file mode 100644 index 0d04ee362..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_project_templates_for_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetProjectTemplatesForTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': '123456', 'enable_pretty_output': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_projects_for_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_projects_for_task_example_call_tool.js deleted file mode 100644 index f38d2d6c4..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_projects_for_task_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetProjectsForTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_identifier": "task_123", - "enable_pretty_output": true, - "optional_fields_to_include": [ - "name", - "status" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_projects_for_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_projects_for_task_example_call_tool.py deleted file mode 100644 index 297e2045a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_projects_for_task_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetProjectsForTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_identifier': 'task_123', - 'enable_pretty_output': True, - 'optional_fields_to_include': ['name', 'status'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_status_updates_for_object_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_status_updates_for_object_example_call_tool.js deleted file mode 100644 index 06b2a6f7f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_status_updates_for_object_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetStatusUpdatesForObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_gid": "1234567890", - "created_since_time": "2023-10-01T00:00:00Z", - "enable_pretty_output": true, - "optional_fields_to_include": [ - "text", - "created_at" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_status_updates_for_object_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_status_updates_for_object_example_call_tool.py deleted file mode 100644 index 2f2dcf5e7..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_status_updates_for_object_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetStatusUpdatesForObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_gid': '1234567890', - 'created_since_time': '2023-10-01T00:00:00Z', - 'enable_pretty_output': True, - 'optional_fields_to_include': ['text', 'created_at'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_tags_for_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_tags_for_task_example_call_tool.js deleted file mode 100644 index dad7d0373..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_tags_for_task_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTagsForTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_identifier": "123456", - "enable_pretty_output": true, - "include_optional_fields": [ - "created_at", - "due_date" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_tags_for_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_tags_for_task_example_call_tool.py deleted file mode 100644 index 8a51b2f7b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_tags_for_task_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTagsForTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_identifier': '123456', - 'enable_pretty_output': True, - 'include_optional_fields': ['created_at', 'due_date'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_task_counts_for_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_task_counts_for_project_example_call_tool.js deleted file mode 100644 index 1a65b2ff6..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_task_counts_for_project_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTaskCountsForProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_global_id": "123456789", - "enable_pretty_output": true, - "include_optional_fields": [ - "custom_fields", - "teams" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_task_counts_for_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_task_counts_for_project_example_call_tool.py deleted file mode 100644 index 8dbcd5757..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_task_counts_for_project_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTaskCountsForProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_global_id': '123456789', - 'enable_pretty_output': True, - 'include_optional_fields': ['custom_fields', 'teams'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_task_dependencies_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_task_dependencies_example_call_tool.js deleted file mode 100644 index 61d55162b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_task_dependencies_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTaskDependencies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "123456789", - "enable_pretty_output": true, - "included_fields": [ - "name", - "due_date" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_task_dependencies_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_task_dependencies_example_call_tool.py deleted file mode 100644 index f56b9467d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_task_dependencies_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTaskDependencies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': '123456789', - 'enable_pretty_output': True, - 'included_fields': ['name', 'due_date'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_task_dependents_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_task_dependents_example_call_tool.js deleted file mode 100644 index 0a825487e..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_task_dependents_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTaskDependents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_identifier": "123456789", - "enable_pretty_output": true, - "include_optional_fields": [ - "assignee", - "due_date" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_task_dependents_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_task_dependents_example_call_tool.py deleted file mode 100644 index 24c3c8fed..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_task_dependents_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTaskDependents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_identifier': '123456789', - 'enable_pretty_output': True, - 'include_optional_fields': ['assignee', 'due_date'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_task_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_task_details_example_call_tool.js deleted file mode 100644 index b17588a72..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_task_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTaskDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_identifier": "123456", - "enable_pretty_output": true, - "include_optional_properties": [ - "assignee", - "due_date" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_task_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_task_details_example_call_tool.py deleted file mode 100644 index 82dfc02ee..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_task_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTaskDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_identifier': '123456', - 'enable_pretty_output': True, - 'include_optional_properties': ['assignee', 'due_date'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_task_stories_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_task_stories_example_call_tool.js deleted file mode 100644 index b3abd21a7..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_task_stories_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTaskStories"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_identifier": "123456789", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_task_stories_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_task_stories_example_call_tool.py deleted file mode 100644 index 323830077..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_task_stories_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTaskStories" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_identifier': '123456789', 'enable_pretty_output': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_task_subtasks_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_task_subtasks_example_call_tool.js deleted file mode 100644 index 26654ca6f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_task_subtasks_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTaskSubtasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "123456", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_task_subtasks_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_task_subtasks_example_call_tool.py deleted file mode 100644 index 0be462a8b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_task_subtasks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTaskSubtasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': '123456', 'enable_pretty_output': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_tasks_for_section_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_tasks_for_section_example_call_tool.js deleted file mode 100644 index 184409082..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_tasks_for_section_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTasksForSection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "section_unique_identifier": "123456789", - "completed_since_filter": "2023-01-01T00:00:00Z", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_tasks_for_section_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_tasks_for_section_example_call_tool.py deleted file mode 100644 index de3db1dca..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_tasks_for_section_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTasksForSection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'section_unique_identifier': '123456789', - 'completed_since_filter': '2023-01-01T00:00:00Z', - 'enable_pretty_output': True, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_tasks_for_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_tasks_for_tag_example_call_tool.js deleted file mode 100644 index d47e96775..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_tasks_for_tag_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTasksForTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tag_global_id": "123456", - "enable_pretty_output": true, - "optional_fields_to_include": [ - "name", - "due_date" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_tasks_for_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_tasks_for_tag_example_call_tool.py deleted file mode 100644 index 9c27a4189..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_tasks_for_tag_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTasksForTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tag_global_id': '123456', - 'enable_pretty_output': True, - 'optional_fields_to_include': ['name', 'due_date'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_team_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_team_membership_example_call_tool.js deleted file mode 100644 index 441cda2e0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_team_membership_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTeamMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_membership_id": "123456", - "enable_pretty_output": true, - "include_optional_properties": [ - "role", - "status" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_team_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_team_membership_example_call_tool.py deleted file mode 100644 index c12156bf5..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_team_membership_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTeamMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_membership_id': '123456', - 'enable_pretty_output': True, - 'include_optional_properties': ['role', 'status'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_team_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_team_memberships_example_call_tool.js deleted file mode 100644 index 866e77e42..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_team_memberships_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTeamMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_pretty_output": true, - "optional_fields_to_include": [ - "name", - "role" - ], - "results_per_page": 10, - "team_identifier": "123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_team_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_team_memberships_example_call_tool.py deleted file mode 100644 index 0c10c6d1a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_team_memberships_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTeamMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_pretty_output': True, - 'optional_fields_to_include': ['name', 'role'], - 'results_per_page': 10, - 'team_identifier': '123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_team_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_team_projects_example_call_tool.js deleted file mode 100644 index 4b3768ff0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_team_projects_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTeamProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_identifier": "123456", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_team_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_team_projects_example_call_tool.py deleted file mode 100644 index dd0225da0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_team_projects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTeamProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_identifier': '123456', 'enable_pretty_output': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_team_users_asana_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_team_users_asana_example_call_tool.js deleted file mode 100644 index 0dc2b765b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_team_users_asana_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTeamUsersAsana"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_global_identifier": "123456789", - "enable_pretty_output": true, - "include_optional_fields": [ - "email", - "photo" - ], - "pagination_offset_token": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_team_users_asana_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_team_users_asana_example_call_tool.py deleted file mode 100644 index 6fef408bd..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_team_users_asana_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTeamUsersAsana" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_global_identifier': '123456789', - 'enable_pretty_output': True, - 'include_optional_fields': ['email', 'photo'], - 'pagination_offset_token': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_time_period_record_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_time_period_record_example_call_tool.js deleted file mode 100644 index b736a7d4d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_time_period_record_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTimePeriodRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "time_period_id": "12345", - "enable_pretty_output": true, - "include_optional_properties": [ - "property1", - "property2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_time_period_record_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_time_period_record_example_call_tool.py deleted file mode 100644 index d630e4bd6..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_time_period_record_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTimePeriodRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'time_period_id': '12345', - 'enable_pretty_output': True, - 'include_optional_properties': ['property1', 'property2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_time_periods_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_time_periods_example_call_tool.js deleted file mode 100644 index 7472edf43..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_time_periods_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTimePeriods"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "123456789", - "enable_pretty_output": true, - "start_date": "2023-01-01", - "end_date": "2023-12-31", - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_time_periods_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_time_periods_example_call_tool.py deleted file mode 100644 index 02e66b511..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_time_periods_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTimePeriods" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': '123456789', - 'enable_pretty_output': True, - 'start_date': '2023-01-01', - 'end_date': '2023-12-31', - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_time_tracking_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_time_tracking_entries_example_call_tool.js deleted file mode 100644 index 30717c160..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_time_tracking_entries_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTimeTrackingEntries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "123456", - "enable_pretty_output": true, - "include_optional_fields": [ - "user", - "duration" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_time_tracking_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_time_tracking_entries_example_call_tool.py deleted file mode 100644 index 54d0caffe..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_time_tracking_entries_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTimeTrackingEntries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': '123456', - 'enable_pretty_output': True, - 'include_optional_fields': ['user', 'duration'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_time_tracking_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_time_tracking_entry_example_call_tool.js deleted file mode 100644 index f60428b71..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_time_tracking_entry_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetTimeTrackingEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "time_tracking_entry_id": "12345", - "enable_pretty_output": true, - "include_optional_properties": [ - "duration", - "notes" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_time_tracking_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_time_tracking_entry_example_call_tool.py deleted file mode 100644 index 2e4d99b9b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_time_tracking_entry_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetTimeTrackingEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'time_tracking_entry_id': '12345', - 'enable_pretty_output': True, - 'include_optional_properties': ['duration', 'notes'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_user_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_user_details_example_call_tool.js deleted file mode 100644 index df92ec39d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_user_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetUserDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "me", - "enable_pretty_output": true, - "include_optional_properties": [ - "photo", - "workspaces" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_user_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_user_details_example_call_tool.py deleted file mode 100644 index edd1b3dbf..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_user_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetUserDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'me', - 'enable_pretty_output': True, - 'include_optional_properties': ['photo', 'workspaces'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_user_favorites_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_user_favorites_example_call_tool.js deleted file mode 100644 index 67fdb6b74..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_user_favorites_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetUserFavorites"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "me", - "workspace_id": "123456789", - "favorites_resource_type": "project", - "include_optional_fields": [ - "created_at", - "updated_at" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_user_favorites_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_user_favorites_example_call_tool.py deleted file mode 100644 index cd5fd03e5..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_user_favorites_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetUserFavorites" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'me', - 'workspace_id': '123456789', - 'favorites_resource_type': 'project', - 'include_optional_fields': ['created_at', 'updated_at'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_user_owned_portfolios_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_user_owned_portfolios_example_call_tool.js deleted file mode 100644 index 1c6d4696f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_user_owned_portfolios_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetUserOwnedPortfolios"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_identifier": "123456", - "enable_pretty_output": true, - "include_optional_fields": [ - "name", - "created_at" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_user_owned_portfolios_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_user_owned_portfolios_example_call_tool.py deleted file mode 100644 index 58e7a77ad..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_user_owned_portfolios_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetUserOwnedPortfolios" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_identifier': '123456', - 'enable_pretty_output': True, - 'include_optional_fields': ['name', 'created_at'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_user_task_list_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_user_task_list_example_call_tool.js deleted file mode 100644 index b17144e45..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_user_task_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetUserTaskList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_task_list_id": "123456789", - "enable_pretty_output": true, - "tasks_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_user_task_list_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_user_task_list_example_call_tool.py deleted file mode 100644 index da76178f0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_user_task_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetUserTaskList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_task_list_id': '123456789', 'enable_pretty_output': True, 'tasks_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_user_team_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_user_team_memberships_example_call_tool.js deleted file mode 100644 index 2f1aae6e7..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_user_team_memberships_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetUserTeamMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "me", - "workspace_identifier": "123456789", - "enable_pretty_output": true, - "include_optional_fields": [ - "role", - "status" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_user_team_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_user_team_memberships_example_call_tool.py deleted file mode 100644 index 39185c76c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_user_team_memberships_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetUserTeamMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'me', - 'workspace_identifier': '123456789', - 'enable_pretty_output': True, - 'include_optional_fields': ['role', 'status'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_user_workspace_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_user_workspace_memberships_example_call_tool.js deleted file mode 100644 index 8613f980b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_user_workspace_memberships_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetUserWorkspaceMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "me", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_user_workspace_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_user_workspace_memberships_example_call_tool.py deleted file mode 100644 index e61114599..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_user_workspace_memberships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetUserWorkspaceMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'me', 'enable_pretty_output': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_visible_workspaces_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_visible_workspaces_example_call_tool.js deleted file mode 100644 index d976c6b21..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_visible_workspaces_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetVisibleWorkspaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_pretty_output": true, - "include_optional_properties": [ - "description", - "owner" - ], - "results_limit_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_visible_workspaces_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_visible_workspaces_example_call_tool.py deleted file mode 100644 index a7f57b480..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_visible_workspaces_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetVisibleWorkspaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_pretty_output': True, - 'include_optional_properties': ['description', 'owner'], - 'results_limit_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_workspace_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_workspace_details_example_call_tool.js deleted file mode 100644 index 47566cccf..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_workspace_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetWorkspaceDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_global_id": "123456789", - "enable_pretty_output": true, - "include_optional_properties": [ - "name", - "created_at" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_workspace_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_workspace_details_example_call_tool.py deleted file mode 100644 index 23a003a24..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_workspace_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetWorkspaceDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_global_id': '123456789', - 'enable_pretty_output': True, - 'include_optional_properties': ['name', 'created_at'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_workspace_events_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_workspace_events_example_call_tool.js deleted file mode 100644 index 293b72451..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_workspace_events_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetWorkspaceEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_global_id": "123456789", - "enable_pretty_output": true, - "sync_token": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_workspace_events_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_workspace_events_example_call_tool.py deleted file mode 100644 index 05cc780f4..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_workspace_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetWorkspaceEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_global_id': '123456789', 'enable_pretty_output': True, 'sync_token': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_workspace_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_workspace_membership_example_call_tool.js deleted file mode 100644 index bf3e3a827..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_workspace_membership_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetWorkspaceMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_membership_id": "12345", - "enable_pretty_output": true, - "include_optional_properties": [ - "role", - "status" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_workspace_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_workspace_membership_example_call_tool.py deleted file mode 100644 index 8190153d0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_workspace_membership_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetWorkspaceMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_membership_id': '12345', - 'enable_pretty_output': True, - 'include_optional_properties': ['role', 'status'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_workspace_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_workspace_memberships_example_call_tool.js deleted file mode 100644 index 51586142b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_workspace_memberships_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetWorkspaceMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_global_id": "123456789", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_workspace_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_workspace_memberships_example_call_tool.py deleted file mode 100644 index 946439b69..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_workspace_memberships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetWorkspaceMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_global_id': '123456789', 'enable_pretty_output': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_workspace_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_workspace_projects_example_call_tool.js deleted file mode 100644 index 763861911..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_workspace_projects_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetWorkspaceProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_identifier": "123456789", - "archived_projects_only": false, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_workspace_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_workspace_projects_example_call_tool.py deleted file mode 100644 index 987574cd0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_workspace_projects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetWorkspaceProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_identifier': '123456789', 'archived_projects_only': False, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/get_workspace_users_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/get_workspace_users_example_call_tool.js deleted file mode 100644 index 97e7bf1d0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_workspace_users_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.GetWorkspaceUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_unique_id": "123456789", - "enable_pretty_output": true, - "include_optional_fields": [ - "email", - "photo" - ], - "pagination_offset_token": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/get_workspace_users_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/get_workspace_users_example_call_tool.py deleted file mode 100644 index 87c679731..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/get_workspace_users_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.GetWorkspaceUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_unique_id': '123456789', - 'enable_pretty_output': True, - 'include_optional_fields': ['email', 'photo'], - 'pagination_offset_token': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/initiate_bulk_resource_export_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/initiate_bulk_resource_export_example_call_tool.js deleted file mode 100644 index d10d56b4f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/initiate_bulk_resource_export_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.InitiateBulkResourceExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"workspace_id\":\"12345\",\"export_type\":\"tasks\",\"filters\":{\"due_date\":\"2023-12-31\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/initiate_bulk_resource_export_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/initiate_bulk_resource_export_example_call_tool.py deleted file mode 100644 index b1e649b40..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/initiate_bulk_resource_export_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.InitiateBulkResourceExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"workspace_id":"12345","export_type":"tasks","filters":{"due_date":"2023-12-31"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/initiate_graph_export_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/initiate_graph_export_example_call_tool.js deleted file mode 100644 index a3354e81d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/initiate_graph_export_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.InitiateGraphExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "parent_object_id": "123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/initiate_graph_export_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/initiate_graph_export_example_call_tool.py deleted file mode 100644 index 486375277..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/initiate_graph_export_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.InitiateGraphExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'parent_object_id': '123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/instantiate_project_from_template_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/instantiate_project_from_template_example_call_tool.js deleted file mode 100644 index 34847b552..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/instantiate_project_from_template_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.InstantiateProjectFromTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_template_id": "template_123", - "include_optional_properties": [ - "property1", - "property2" - ], - "enable_pretty_output": true, - "request_body": "{\"name\":\"New Project\",\"description\":\"Project created from template.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/instantiate_project_from_template_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/instantiate_project_from_template_example_call_tool.py deleted file mode 100644 index dc0a65d52..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/instantiate_project_from_template_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.InstantiateProjectFromTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_template_id': 'template_123', - 'include_optional_properties': ['property1', 'property2'], - 'enable_pretty_output': True, - 'request_body': '{"name":"New Project","description":"Project created from template."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/move_section_in_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/move_section_in_project_example_call_tool.js deleted file mode 100644 index d0aef96a3..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/move_section_in_project_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.MoveSectionInProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_global_id": "123456789", - "insert_after_section_id": "987654321", - "section_to_reorder": "1122334455", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/move_section_in_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/move_section_in_project_example_call_tool.py deleted file mode 100644 index 25882f6b0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/move_section_in_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.MoveSectionInProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_global_id': '123456789', - 'insert_after_section_id': '987654321', - 'section_to_reorder': '1122334455', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/reject_access_request_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/reject_access_request_example_call_tool.js deleted file mode 100644 index c809e5ab2..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/reject_access_request_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RejectAccessRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "access_request_identifier": "req_123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/reject_access_request_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/reject_access_request_example_call_tool.py deleted file mode 100644 index 53345f2f8..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/reject_access_request_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RejectAccessRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'access_request_identifier': 'req_123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_custom_field_from_portfolio_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/remove_custom_field_from_portfolio_example_call_tool.js deleted file mode 100644 index b6929e3cb..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_custom_field_from_portfolio_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RemoveCustomFieldFromPortfolio"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "portfolio_global_id": "123456789", - "custom_field_id_to_remove": "987654321", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_custom_field_from_portfolio_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/remove_custom_field_from_portfolio_example_call_tool.py deleted file mode 100644 index 26e4c4d81..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_custom_field_from_portfolio_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RemoveCustomFieldFromPortfolio" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'portfolio_global_id': '123456789', - 'custom_field_id_to_remove': '987654321', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_custom_field_from_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/remove_custom_field_from_project_example_call_tool.js deleted file mode 100644 index 25390c909..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_custom_field_from_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RemoveCustomFieldFromProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_unique_id": "123456789", - "custom_field_id_to_remove": "987654321", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_custom_field_from_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/remove_custom_field_from_project_example_call_tool.py deleted file mode 100644 index 9e7064b94..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_custom_field_from_project_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RemoveCustomFieldFromProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_unique_id': '123456789', - 'custom_field_id_to_remove': '987654321', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_followers_from_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/remove_followers_from_project_example_call_tool.js deleted file mode 100644 index 521b1eaff..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_followers_from_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RemoveFollowersFromProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_global_id": "123456789", - "enable_pretty_output": true, - "user_identifiers_to_unfollow": "user@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_followers_from_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/remove_followers_from_project_example_call_tool.py deleted file mode 100644 index 7d941e39a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_followers_from_project_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RemoveFollowersFromProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_global_id': '123456789', - 'enable_pretty_output': True, - 'user_identifiers_to_unfollow': 'user@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_goal_followers_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/remove_goal_followers_example_call_tool.js deleted file mode 100644 index 43c5952b6..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_goal_followers_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RemoveGoalFollowers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_unique_id": "12345", - "followers_to_remove": [ - "me", - "user@example.com" - ], - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_goal_followers_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/remove_goal_followers_example_call_tool.py deleted file mode 100644 index 584934ad3..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_goal_followers_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RemoveGoalFollowers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_unique_id': '12345', - 'followers_to_remove': ['me', 'user@example.com'], - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_goal_relationship_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/remove_goal_relationship_example_call_tool.js deleted file mode 100644 index 2ef4aa35c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_goal_relationship_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RemoveGoalRelationship"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_global_id": "123456789", - "provide_pretty_output": true, - "supporting_resource_gid": "987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_goal_relationship_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/remove_goal_relationship_example_call_tool.py deleted file mode 100644 index b876e48ed..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_goal_relationship_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RemoveGoalRelationship" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_global_id': '123456789', - 'provide_pretty_output': True, - 'supporting_resource_gid': '987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_item_from_portfolio_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/remove_item_from_portfolio_example_call_tool.js deleted file mode 100644 index 6b9fd9ca0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_item_from_portfolio_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RemoveItemFromPortfolio"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "portfolio_identifier": "portfolio_12345", - "item_to_remove": "item_67890", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_item_from_portfolio_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/remove_item_from_portfolio_example_call_tool.py deleted file mode 100644 index 9394d4b5a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_item_from_portfolio_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RemoveItemFromPortfolio" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'portfolio_identifier': 'portfolio_12345', - 'item_to_remove': 'item_67890', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_members_from_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/remove_members_from_project_example_call_tool.js deleted file mode 100644 index 7c0644b5c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_members_from_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RemoveMembersFromProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "123456789", - "enable_pretty_output": true, - "user_identifiers": "user@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_members_from_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/remove_members_from_project_example_call_tool.py deleted file mode 100644 index a08f8826f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_members_from_project_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RemoveMembersFromProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '123456789', - 'enable_pretty_output': True, - 'user_identifiers': 'user@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_portfolio_members_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/remove_portfolio_members_example_call_tool.js deleted file mode 100644 index 2117526ba..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_portfolio_members_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RemovePortfolioMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "portfolio_unique_id": "12345", - "enable_pretty_output": true, - "members_to_remove": "user@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_portfolio_members_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/remove_portfolio_members_example_call_tool.py deleted file mode 100644 index 877843564..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_portfolio_members_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RemovePortfolioMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'portfolio_unique_id': '12345', - 'enable_pretty_output': True, - 'members_to_remove': 'user@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_tag_from_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/remove_tag_from_task_example_call_tool.js deleted file mode 100644 index 2f9157ec2..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_tag_from_task_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RemoveTagFromTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_identifier": "123456789", - "enable_pretty_output": true, - "tag_gid_to_remove": "987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_tag_from_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/remove_tag_from_task_example_call_tool.py deleted file mode 100644 index fe820516f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_tag_from_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RemoveTagFromTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_identifier': '123456789', 'enable_pretty_output': True, 'tag_gid_to_remove': '987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_task_dependencies_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/remove_task_dependencies_example_call_tool.js deleted file mode 100644 index 666368798..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_task_dependencies_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RemoveTaskDependencies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "123456789", - "enable_pretty_output": true, - "task_dependency_ids_to_remove": [ - "987654321", - "456789123" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_task_dependencies_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/remove_task_dependencies_example_call_tool.py deleted file mode 100644 index be334c705..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_task_dependencies_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RemoveTaskDependencies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': '123456789', - 'enable_pretty_output': True, - 'task_dependency_ids_to_remove': ['987654321', '456789123'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_task_dependents_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/remove_task_dependents_example_call_tool.js deleted file mode 100644 index 94e069c40..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_task_dependents_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RemoveTaskDependents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "123456789", - "dependents_task_ids": [ - "987654321", - "456789123" - ], - "enable_pretty_output": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_task_dependents_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/remove_task_dependents_example_call_tool.py deleted file mode 100644 index 3cc568348..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_task_dependents_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RemoveTaskDependents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': '123456789', - 'dependents_task_ids': ['987654321', '456789123'], - 'enable_pretty_output': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_task_from_project_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/remove_task_from_project_example_call_tool.js deleted file mode 100644 index 8bab82df5..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_task_from_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RemoveTaskFromProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_identifier": "12345", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_task_from_project_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/remove_task_from_project_example_call_tool.py deleted file mode 100644 index 1ea1d94fc..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_task_from_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RemoveTaskFromProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_identifier': '12345', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_user_from_team_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/remove_user_from_team_example_call_tool.js deleted file mode 100644 index d7c2dfbc9..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_user_from_team_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RemoveUserFromTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_global_identifier": "123456789", - "enable_pretty_output": true, - "user_identifier": "user@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_user_from_team_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/remove_user_from_team_example_call_tool.py deleted file mode 100644 index 4f109228c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_user_from_team_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RemoveUserFromTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_global_identifier': '123456789', - 'enable_pretty_output': True, - 'user_identifier': 'user@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_user_from_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/remove_user_from_workspace_example_call_tool.js deleted file mode 100644 index 197069c2d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_user_from_workspace_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RemoveUserFromWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_identifier": "1234567890", - "user_identifier": "user@example.com", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/remove_user_from_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/remove_user_from_workspace_example_call_tool.py deleted file mode 100644 index 94abc912f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/remove_user_from_workspace_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RemoveUserFromWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_identifier': '1234567890', - 'user_identifier': 'user@example.com', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/reorder_enum_option_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/reorder_enum_option_custom_field_example_call_tool.js deleted file mode 100644 index 3fac56f66..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/reorder_enum_option_custom_field_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.ReorderEnumOptionCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_field_id": "cf_12345", - "enum_option_gid_to_relocate": "enum_67890", - "insert_after_enum_option": "enum_54321", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/reorder_enum_option_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/reorder_enum_option_custom_field_example_call_tool.py deleted file mode 100644 index 48eced55a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/reorder_enum_option_custom_field_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.ReorderEnumOptionCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_field_id': 'cf_12345', - 'enum_option_gid_to_relocate': 'enum_67890', - 'insert_after_enum_option': 'enum_54321', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/request_organization_export_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/request_organization_export_example_call_tool.js deleted file mode 100644 index 4f675fcaa..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/request_organization_export_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RequestOrganizationExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_pretty_output": true, - "include_optional_properties": [ - "custom_field_1", - "custom_field_2" - ], - "organization_id": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/request_organization_export_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/request_organization_export_example_call_tool.py deleted file mode 100644 index bfade1dfd..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/request_organization_export_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RequestOrganizationExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_pretty_output': True, - 'include_optional_properties': ['custom_field_1', 'custom_field_2'], - 'organization_id': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/retrieve_audit_log_events_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/retrieve_audit_log_events_example_call_tool.js deleted file mode 100644 index ab03fa933..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/retrieve_audit_log_events_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RetrieveAuditLogEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_unique_id": "workspace_12345", - "actor_id_filter": "actor_67890", - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/retrieve_audit_log_events_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/retrieve_audit_log_events_example_call_tool.py deleted file mode 100644 index 375316d3e..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/retrieve_audit_log_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RetrieveAuditLogEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_unique_id': 'workspace_12345', 'actor_id_filter': 'actor_67890', 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/retrieve_portfolio_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/retrieve_portfolio_memberships_example_call_tool.js deleted file mode 100644 index b6431269b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/retrieve_portfolio_memberships_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RetrievePortfolioMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "portfolio_identifier": "123456789", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/retrieve_portfolio_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/retrieve_portfolio_memberships_example_call_tool.py deleted file mode 100644 index 1c9782177..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/retrieve_portfolio_memberships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RetrievePortfolioMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'portfolio_identifier': '123456789', 'enable_pretty_output': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/retrieve_task_by_custom_id_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/retrieve_task_by_custom_id_example_call_tool.js deleted file mode 100644 index 5d4768fb0..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/retrieve_task_by_custom_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RetrieveTaskByCustomId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_custom_id": "abc123", - "workspace_global_id": "workspace_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/retrieve_task_by_custom_id_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/retrieve_task_by_custom_id_example_call_tool.py deleted file mode 100644 index 384fec10a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/retrieve_task_by_custom_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RetrieveTaskByCustomId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_custom_id': 'abc123', 'workspace_global_id': 'workspace_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/retrieve_webhook_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/retrieve_webhook_details_example_call_tool.js deleted file mode 100644 index 067268ed9..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/retrieve_webhook_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RetrieveWebhookDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_global_identifier": "webhook_12345", - "enable_pretty_output": true, - "included_fields": [ - "name", - "status" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/retrieve_webhook_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/retrieve_webhook_details_example_call_tool.py deleted file mode 100644 index 831741824..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/retrieve_webhook_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RetrieveWebhookDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_global_identifier': 'webhook_12345', - 'enable_pretty_output': True, - 'included_fields': ['name', 'status'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/retrieve_workspace_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/retrieve_workspace_tags_example_call_tool.js deleted file mode 100644 index 1f5d27c90..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/retrieve_workspace_tags_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.RetrieveWorkspaceTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_identifier": "123456789", - "enable_pretty_output": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/retrieve_workspace_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/retrieve_workspace_tags_example_call_tool.py deleted file mode 100644 index f3e8cb99a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/retrieve_workspace_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.RetrieveWorkspaceTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_identifier': '123456789', 'enable_pretty_output': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/search_tasks_in_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/search_tasks_in_workspace_example_call_tool.js deleted file mode 100644 index 7b9cfef08..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/search_tasks_in_workspace_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.SearchTasksInWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_global_id": "123456789", - "search_text": "urgent", - "filter_to_completed_tasks": true, - "sort_results_ascending": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/search_tasks_in_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/search_tasks_in_workspace_example_call_tool.py deleted file mode 100644 index 37decfac9..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/search_tasks_in_workspace_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.SearchTasksInWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_global_id': '123456789', - 'search_text': 'urgent', - 'filter_to_completed_tasks': True, - 'sort_results_ascending': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/submit_access_request_asana_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/submit_access_request_asana_example_call_tool.js deleted file mode 100644 index f04ba5ca6..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/submit_access_request_asana_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.SubmitAccessRequestAsana"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "access_request_message": "Need access for project collaboration.", - "target_gid": "123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/submit_access_request_asana_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/submit_access_request_asana_example_call_tool.py deleted file mode 100644 index 5414ebe19..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/submit_access_request_asana_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.SubmitAccessRequestAsana" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'access_request_message': 'Need access for project collaboration.', 'target_gid': '123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/trigger_asana_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/trigger_asana_rule_example_call_tool.js deleted file mode 100644 index 8d4289e9f..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/trigger_asana_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.TriggerAsanaRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incoming_web_request_trigger_id": "12345", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/trigger_asana_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/trigger_asana_rule_example_call_tool.py deleted file mode 100644 index b1dc7cd5b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/trigger_asana_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.TriggerAsanaRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'incoming_web_request_trigger_id': '12345', 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_allocation_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_allocation_example_call_tool.js deleted file mode 100644 index b020b4f6c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_allocation_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateAllocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "allocation_global_id": "12345", - "request_body": "{\"field\":\"value\"}", - "include_optional_fields": [ - "field1", - "field2" - ], - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_allocation_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_allocation_example_call_tool.py deleted file mode 100644 index b80fc7393..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_allocation_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateAllocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'allocation_global_id': '12345', - 'request_body': '{"field":"value"}', - 'include_optional_fields': ['field1', 'field2'], - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_asana_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_asana_custom_field_example_call_tool.js deleted file mode 100644 index 866295e13..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_asana_custom_field_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateAsanaCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "custom_field_global_id": "123456789", - "request_body": "{\"name\":\"New Field Name\",\"value\":\"New Value\"}", - "include_optional_properties": [ - "description", - "enum_options" - ], - "pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_asana_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_asana_custom_field_example_call_tool.py deleted file mode 100644 index 25708b455..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_asana_custom_field_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateAsanaCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'custom_field_global_id': '123456789', - 'request_body': '{"name":"New Field Name","value":"New Value"}', - 'include_optional_properties': ['description', 'enum_options'], - 'pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_asana_goal_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_asana_goal_example_call_tool.js deleted file mode 100644 index b1d490798..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_asana_goal_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateAsanaGoal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "goal_unique_id": "12345", - "included_goal_properties": [ - "name", - "due_date" - ], - "enable_pretty_output": true, - "request_body": "{\"name\":\"Updated Goal Name\",\"due_date\":\"2023-12-31\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_asana_goal_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_asana_goal_example_call_tool.py deleted file mode 100644 index c12001d55..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_asana_goal_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateAsanaGoal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'goal_unique_id': '12345', - 'included_goal_properties': ['name', 'due_date'], - 'enable_pretty_output': True, - 'request_body': '{"name":"Updated Goal Name","due_date":"2023-12-31"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_asana_story_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_asana_story_example_call_tool.js deleted file mode 100644 index 8bea64b48..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_asana_story_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateAsanaStory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "story_global_id": "123456789", - "request_body": "{\"text\":\"Updated comment text\"}", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_asana_story_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_asana_story_example_call_tool.py deleted file mode 100644 index ebf8657d9..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_asana_story_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateAsanaStory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'story_global_id': '123456789', - 'request_body': '{"text":"Updated comment text"}', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_asana_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_asana_tag_example_call_tool.js deleted file mode 100644 index b3ed10162..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_asana_tag_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateAsanaTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "tag_global_identifier": "12345", - "include_optional_fields": [ - "color", - "name" - ], - "enable_pretty_output": true, - "request_body": "{\"name\":\"Updated Tag\",\"color\":\"blue\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_asana_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_asana_tag_example_call_tool.py deleted file mode 100644 index 022772c83..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_asana_tag_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateAsanaTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'tag_global_identifier': '12345', - 'include_optional_fields': ['color', 'name'], - 'enable_pretty_output': True, - 'request_body': '{"name":"Updated Tag","color":"blue"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_enum_option_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_enum_option_example_call_tool.js deleted file mode 100644 index 38941dae4..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_enum_option_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateEnumOption"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enum_option_gid": "123456789", - "enum_option_name": "In Progress", - "enum_option_color": "#FFCC00", - "enum_option_enabled": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_enum_option_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_enum_option_example_call_tool.py deleted file mode 100644 index 259021a1d..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_enum_option_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateEnumOption" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enum_option_gid': '123456789', - 'enum_option_name': 'In Progress', - 'enum_option_color': '#FFCC00', - 'enum_option_enabled': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_goal_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_goal_metric_example_call_tool.js deleted file mode 100644 index 345c74d09..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_goal_metric_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateGoalMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_unique_identifier": "123456789", - "current_metric_value": 75, - "include_optional_fields": [ - "field1", - "field2" - ], - "pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_goal_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_goal_metric_example_call_tool.py deleted file mode 100644 index f79178b14..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_goal_metric_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateGoalMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_unique_identifier': '123456789', - 'current_metric_value': 75, - 'include_optional_fields': ['field1', 'field2'], - 'pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_goal_relationship_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_goal_relationship_example_call_tool.js deleted file mode 100644 index b4fdc3716..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_goal_relationship_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateGoalRelationship"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "goal_relationship_unique_id": "12345", - "include_optional_properties": [ - "status", - "due_date" - ], - "enable_pretty_output": true, - "request_body": "{\"status\":\"in_progress\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_goal_relationship_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_goal_relationship_example_call_tool.py deleted file mode 100644 index 110f454f9..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_goal_relationship_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateGoalRelationship" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'goal_relationship_unique_id': '12345', - 'include_optional_properties': ['status', 'due_date'], - 'enable_pretty_output': True, - 'request_body': '{"status":"in_progress"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_membership_example_call_tool.js deleted file mode 100644 index 4fcda387e..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_membership_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "membership_id": "12345", - "enable_pretty_output": true, - "member_access_level": "editor" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_membership_example_call_tool.py deleted file mode 100644 index 92a0ed8d2..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_membership_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'membership_id': '12345', 'enable_pretty_output': True, 'member_access_level': 'editor' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_portfolio_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_portfolio_example_call_tool.js deleted file mode 100644 index f269728ca..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_portfolio_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdatePortfolio"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "portfolio_unique_identifier": "portfolio_123", - "include_optional_fields": [ - "description", - "owner" - ], - "enable_pretty_output": true, - "request_body": "{\"name\":\"Updated Portfolio Name\",\"color\":\"blue\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_portfolio_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_portfolio_example_call_tool.py deleted file mode 100644 index 8dcbb803b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_portfolio_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdatePortfolio" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'portfolio_unique_identifier': 'portfolio_123', - 'include_optional_fields': ['description', 'owner'], - 'enable_pretty_output': True, - 'request_body': '{"name":"Updated Portfolio Name","color":"blue"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_project_brief_asana_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_project_brief_asana_example_call_tool.js deleted file mode 100644 index 02c63ea18..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_project_brief_asana_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateProjectBriefAsana"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_brief_id": "12345", - "include_optional_properties": [ - "description", - "due_date" - ], - "provide_pretty_output": true, - "request_body": "{\"name\":\"Updated Project Name\",\"status\":\"In Progress\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_project_brief_asana_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_project_brief_asana_example_call_tool.py deleted file mode 100644 index d31f46c66..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_project_brief_asana_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateProjectBriefAsana" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_brief_id': '12345', - 'include_optional_properties': ['description', 'due_date'], - 'provide_pretty_output': True, - 'request_body': '{"name":"Updated Project Name","status":"In Progress"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_project_details_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_project_details_example_call_tool.js deleted file mode 100644 index c516dee7b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_project_details_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateProjectDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_global_id": "12345", - "include_optional_properties": [ - "name", - "description" - ], - "enable_pretty_output": true, - "request_body": "{\"name\":\"Updated Project Name\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_project_details_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_project_details_example_call_tool.py deleted file mode 100644 index 3c787ce8c..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_project_details_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateProjectDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_global_id': '12345', - 'include_optional_properties': ['name', 'description'], - 'enable_pretty_output': True, - 'request_body': '{"name":"Updated Project Name","description":"This is an updated ' - 'description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_section_name_asana_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_section_name_asana_example_call_tool.js deleted file mode 100644 index a75502e40..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_section_name_asana_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateSectionNameAsana"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "section_global_identifier": "123456789", - "section_name": "Updated Section Title", - "include_optional_properties": [ - "color", - "due_date" - ], - "pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_section_name_asana_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_section_name_asana_example_call_tool.py deleted file mode 100644 index 37e3db3d5..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_section_name_asana_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateSectionNameAsana" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'section_global_identifier': '123456789', - 'section_name': 'Updated Section Title', - 'include_optional_properties': ['color', 'due_date'], - 'pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_task_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_task_example_call_tool.js deleted file mode 100644 index 5561b1fb1..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_task_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "task_id": "123456", - "include_optional_properties": [ - "created_at", - "due_date" - ], - "pretty_output_enabled": true, - "request_body": "{\"name\":\"Updated Task Name\",\"completed\":false}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_task_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_task_example_call_tool.py deleted file mode 100644 index 5dafbb569..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_task_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'task_id': '123456', - 'include_optional_properties': ['created_at', 'due_date'], - 'pretty_output_enabled': True, - 'request_body': '{"name":"Updated Task Name","completed":false}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_task_parent_asana_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_task_parent_asana_example_call_tool.js deleted file mode 100644 index 14aa749bf..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_task_parent_asana_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateTaskParentAsana"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_identifier": "123456", - "new_task_parent": "654321", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_task_parent_asana_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_task_parent_asana_example_call_tool.py deleted file mode 100644 index 274d5324a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_task_parent_asana_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateTaskParentAsana" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_identifier': '123456', 'new_task_parent': '654321', 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_team_in_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_team_in_workspace_example_call_tool.js deleted file mode 100644 index a45c25cd6..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_team_in_workspace_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateTeamInWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_global_id": "12345", - "include_optional_properties": [ - "property1", - "property2" - ], - "enable_pretty_output": true, - "request_body": "{\"name\":\"New Team Name\",\"description\":\"Updated description\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_team_in_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_team_in_workspace_example_call_tool.py deleted file mode 100644 index df362e31a..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_team_in_workspace_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateTeamInWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_global_id': '12345', - 'include_optional_properties': ['property1', 'property2'], - 'enable_pretty_output': True, - 'request_body': '{"name":"New Team Name","description":"Updated description"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_time_tracking_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_time_tracking_entry_example_call_tool.js deleted file mode 100644 index a024788bf..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_time_tracking_entry_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateTimeTrackingEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "time_tracking_entry_id": "123456", - "duration_minutes_tracked": 30, - "entry_logged_date": "2023-10-01", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_time_tracking_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_time_tracking_entry_example_call_tool.py deleted file mode 100644 index b57282e70..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_time_tracking_entry_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateTimeTrackingEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'time_tracking_entry_id': '123456', - 'duration_minutes_tracked': 30, - 'entry_logged_date': '2023-10-01', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/update_workspace_name_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/update_workspace_name_example_call_tool.js deleted file mode 100644 index bdd55b38b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_workspace_name_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.UpdateWorkspaceName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_global_id": "123456789", - "workspace_name": "New Workspace Name", - "enable_pretty_output": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/update_workspace_name_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/update_workspace_name_example_call_tool.py deleted file mode 100644 index 76f2e4948..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/update_workspace_name_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.UpdateWorkspaceName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_global_id': '123456789', - 'workspace_name': 'New Workspace Name', - 'enable_pretty_output': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/asana_api/workspace_typeahead_search_example_call_tool.js b/public/examples/integrations/mcp-servers/asana_api/workspace_typeahead_search_example_call_tool.js deleted file mode 100644 index 55432ecc3..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/workspace_typeahead_search_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AsanaApi.WorkspaceTypeaheadSearch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "workspace_123", - "search_query": "project", - "results_count": 10, - "resource_type": "project" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/asana_api/workspace_typeahead_search_example_call_tool.py b/public/examples/integrations/mcp-servers/asana_api/workspace_typeahead_search_example_call_tool.py deleted file mode 100644 index 27172450b..000000000 --- a/public/examples/integrations/mcp-servers/asana_api/workspace_typeahead_search_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AsanaApi.WorkspaceTypeaheadSearch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 'workspace_123', - 'search_query': 'project', - 'results_count': 10, - 'resource_type': 'project' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/add_candidate_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/add_candidate_tag_example_call_tool.js deleted file mode 100644 index f860aaeba..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/add_candidate_tag_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.AddCandidateTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidate_id\":\"12345\",\"tag\":\"interviewed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/add_candidate_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/add_candidate_tag_example_call_tool.py deleted file mode 100644 index 48e6114da..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/add_candidate_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.AddCandidateTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"candidate_id":"12345","tag":"interviewed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/add_candidate_to_project_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/add_candidate_to_project_example_call_tool.js deleted file mode 100644 index 946e473ba..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/add_candidate_to_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.AddCandidateToProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidate_id\":\"12345\",\"project_id\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/add_candidate_to_project_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/add_candidate_to_project_example_call_tool.py deleted file mode 100644 index 994f752f8..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/add_candidate_to_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.AddCandidateToProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"candidate_id":"12345","project_id":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/add_completed_assessment_to_candidate_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/add_completed_assessment_to_candidate_example_call_tool.js deleted file mode 100644 index 5211108ec..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/add_completed_assessment_to_candidate_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.AddCompletedAssessmentToCandidate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidateId\":\"12345\",\"assessmentId\":\"abcde\",\"score\":85}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/add_completed_assessment_to_candidate_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/add_completed_assessment_to_candidate_example_call_tool.py deleted file mode 100644 index c7b19b9ed..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/add_completed_assessment_to_candidate_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.AddCompletedAssessmentToCandidate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"candidateId":"12345","assessmentId":"abcde","score":85}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/add_hiring_team_member_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/add_hiring_team_member_example_call_tool.js deleted file mode 100644 index a809f231d..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/add_hiring_team_member_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.AddHiringTeamMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hiring_team_member_details": { - "applicationId": "app123", - "teamMemberId": "user456", - "roleId": "role789" - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/add_hiring_team_member_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/add_hiring_team_member_example_call_tool.py deleted file mode 100644 index b4e070c8f..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/add_hiring_team_member_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.AddHiringTeamMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hiring_team_member_details': { 'applicationId': 'app123', - 'teamMemberId': 'user456', - 'roleId': 'role789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/add_job_to_opening_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/add_job_to_opening_example_call_tool.js deleted file mode 100644 index 72b955492..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/add_job_to_opening_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.AddJobToOpening"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"jobTitle\":\"Software Engineer\",\"location\":\"Remote\",\"description\":\"Develop and maintain software applications.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/add_job_to_opening_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/add_job_to_opening_example_call_tool.py deleted file mode 100644 index 0fd6cbf8c..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/add_job_to_opening_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.AddJobToOpening" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"jobTitle":"Software Engineer","location":"Remote","description":"Develop ' - 'and maintain software applications."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/add_location_to_job_opening_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/add_location_to_job_opening_example_call_tool.js deleted file mode 100644 index 4d8f1290c..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/add_location_to_job_opening_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.AddLocationToJobOpening"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"job_id\":\"12345\",\"location\":\"New York, NY\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/add_location_to_job_opening_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/add_location_to_job_opening_example_call_tool.py deleted file mode 100644 index a86429b71..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/add_location_to_job_opening_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.AddLocationToJobOpening" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"job_id":"12345","location":"New York, NY"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/add_user_to_interviewer_pool_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/add_user_to_interviewer_pool_example_call_tool.js deleted file mode 100644 index 23fc1d01e..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/add_user_to_interviewer_pool_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.AddUserToInterviewerPool"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"user_id\":\"12345\",\"pool_id\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/add_user_to_interviewer_pool_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/add_user_to_interviewer_pool_example_call_tool.py deleted file mode 100644 index a96876301..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/add_user_to_interviewer_pool_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.AddUserToInterviewerPool" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"user_id":"12345","pool_id":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/anonymize_candidate_data_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/anonymize_candidate_data_example_call_tool.js deleted file mode 100644 index ff839af85..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/anonymize_candidate_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.AnonymizeCandidateData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidateId\":\"12345\",\"anonymizeFields\":[\"name\",\"email\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/anonymize_candidate_data_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/anonymize_candidate_data_example_call_tool.py deleted file mode 100644 index a5300998b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/anonymize_candidate_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.AnonymizeCandidateData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"candidateId":"12345","anonymizeFields":["name","email"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/archive_department_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/archive_department_example_call_tool.js deleted file mode 100644 index 8063d20c2..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/archive_department_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ArchiveDepartment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"department_id\":\"12345\",\"action\":\"archive\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/archive_department_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/archive_department_example_call_tool.py deleted file mode 100644 index 2e9875cf8..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/archive_department_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ArchiveDepartment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"department_id":"12345","action":"archive"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/archive_interviewer_pool_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/archive_interviewer_pool_example_call_tool.js deleted file mode 100644 index 7fdf11945..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/archive_interviewer_pool_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ArchiveInterviewerPool"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"pool_id\":\"12345\",\"archived\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/archive_interviewer_pool_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/archive_interviewer_pool_example_call_tool.py deleted file mode 100644 index 934d32097..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/archive_interviewer_pool_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ArchiveInterviewerPool" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"pool_id":"12345","archived":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/archive_location_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/archive_location_example_call_tool.js deleted file mode 100644 index 29c0199d0..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/archive_location_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ArchiveLocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"location\":\"/path/to/archive\",\"options\":{\"compress\":true}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/archive_location_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/archive_location_example_call_tool.py deleted file mode 100644 index 8be81c75b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/archive_location_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ArchiveLocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"location":"/path/to/archive","options":{"compress":true}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/ashby_user_search_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/ashby_user_search_example_call_tool.js deleted file mode 100644 index ae970ab56..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/ashby_user_search_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.AshbyUserSearch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"email\":\"user@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/ashby_user_search_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/ashby_user_search_example_call_tool.py deleted file mode 100644 index 64d278a31..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/ashby_user_search_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.AshbyUserSearch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"email":"user@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/cancel_assessment_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/cancel_assessment_example_call_tool.js deleted file mode 100644 index ee89af8e5..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/cancel_assessment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CancelAssessment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"assessmentId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/cancel_assessment_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/cancel_assessment_example_call_tool.py deleted file mode 100644 index e4c8f54a9..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/cancel_assessment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CancelAssessment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"assessmentId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/cancel_interview_schedule_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/cancel_interview_schedule_example_call_tool.js deleted file mode 100644 index d07d7c830..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/cancel_interview_schedule_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CancelInterviewSchedule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "interview_schedule_cancel_details": { - "id": "12345", - "allowReschedule": false - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/cancel_interview_schedule_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/cancel_interview_schedule_example_call_tool.py deleted file mode 100644 index d7456bac9..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/cancel_interview_schedule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CancelInterviewSchedule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'interview_schedule_cancel_details': {'id': '12345', 'allowReschedule': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/change_application_source_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/change_application_source_example_call_tool.js deleted file mode 100644 index cb9d0b247..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/change_application_source_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ChangeApplicationSource"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_source_details": { - "applicationId": "app123", - "sourceId": "source456" - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/change_application_source_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/change_application_source_example_call_tool.py deleted file mode 100644 index df82e878d..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/change_application_source_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ChangeApplicationSource" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_source_details': {'applicationId': 'app123', 'sourceId': 'source456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/change_application_stage_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/change_application_stage_example_call_tool.js deleted file mode 100644 index 3102d6f3c..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/change_application_stage_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ChangeApplicationStage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_stage_change_details": { - "applicationId": "12345", - "interviewStageId": "67890", - "archiveReasonId": "1", - "archiveEmail": "example@example.com" - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/change_application_stage_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/change_application_stage_example_call_tool.py deleted file mode 100644 index 2a6f0b76a..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/change_application_stage_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ChangeApplicationStage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_stage_change_details': { 'applicationId': '12345', - 'interviewStageId': '67890', - 'archiveReasonId': '1', - 'archiveEmail': 'example@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_candidate_example_call_tool.js deleted file mode 100644 index 2f19d35ab..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateCandidate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"skills\":[\"Java\",\"Python\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_candidate_example_call_tool.py deleted file mode 100644 index d06d80fb1..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateCandidate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com","skills":["Java","Python"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_note_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_candidate_note_example_call_tool.js deleted file mode 100644 index edf8ea6ad..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_note_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateCandidateNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidateId\":\"12345\",\"note\":\"Interview feedback: Great communication skills and cultural fit.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_note_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_candidate_note_example_call_tool.py deleted file mode 100644 index 5f2ccc2aa..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_note_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateCandidateNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"candidateId":"12345","note":"Interview feedback: Great communication skills ' - 'and cultural fit."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_offer_version_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_candidate_offer_version_example_call_tool.js deleted file mode 100644 index 2dae6f97a..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_offer_version_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateCandidateOfferVersion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidateId\":\"12345\",\"offerDetails\":{\"position\":\"Software Engineer\",\"salary\":100000}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_offer_version_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_candidate_offer_version_example_call_tool.py deleted file mode 100644 index 4a62029a0..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_offer_version_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateCandidateOfferVersion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"candidateId":"12345","offerDetails":{"position":"Software ' - 'Engineer","salary":100000}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_referral_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_candidate_referral_example_call_tool.js deleted file mode 100644 index 68f1a7fff..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_referral_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateCandidateReferral"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidateId\":\"12345\",\"referrerId\":\"67890\",\"position\":\"Software Engineer\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_referral_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_candidate_referral_example_call_tool.py deleted file mode 100644 index 065d468ef..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_referral_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateCandidateReferral" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"candidateId":"12345","referrerId":"67890","position":"Software Engineer"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_candidate_tag_example_call_tool.js deleted file mode 100644 index 8824ae950..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_tag_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateCandidateTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"tagName\":\"Urgent\",\"description\":\"Candidates that need immediate attention\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_candidate_tag_example_call_tool.py deleted file mode 100644 index 58d293eab..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_candidate_tag_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateCandidateTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"tagName":"Urgent","description":"Candidates that need immediate attention"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_custom_field_example_call_tool.js deleted file mode 100644 index cec30bef3..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_custom_field_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"field_name\":\"New Custom Field\",\"field_type\":\"text\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_custom_field_example_call_tool.py deleted file mode 100644 index 08b7a1038..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_custom_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"field_name":"New Custom Field","field_type":"text"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_department_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_department_example_call_tool.js deleted file mode 100644 index 81b23e156..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_department_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateDepartment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Engineering\",\"description\":\"Handles all engineering tasks\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_department_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_department_example_call_tool.py deleted file mode 100644 index f986e3166..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_department_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateDepartment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Engineering","description":"Handles all engineering tasks"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_interview_schedule_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_interview_schedule_example_call_tool.js deleted file mode 100644 index 9d0b56413..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_interview_schedule_example_call_tool.js +++ /dev/null @@ -1,43 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateInterviewSchedule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "interview_schedule_request": { - "application_id": "app_12345", - "interview_events": [ - { - "start_time": "2023-10-15T10:00:00Z", - "end_time": "2023-10-15T11:00:00Z", - "interviewers": [ - "interviewer_1", - "interviewer_2" - ] - } - ] - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_interview_schedule_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_interview_schedule_example_call_tool.py deleted file mode 100644 index 396407f0e..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_interview_schedule_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateInterviewSchedule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'interview_schedule_request': { 'application_id': 'app_12345', - 'interview_events': [ { 'start_time': '2023-10-15T10:00:00Z', - 'end_time': '2023-10-15T11:00:00Z', - 'interviewers': [ 'interviewer_1', - 'interviewer_2']}] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_interviewer_pool_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_interviewer_pool_example_call_tool.js deleted file mode 100644 index 9306766e2..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_interviewer_pool_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateInterviewerPool"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"pool_name\":\"Engineering Interviewers\",\"interviewer_ids\":[\"id1\",\"id2\",\"id3\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_interviewer_pool_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_interviewer_pool_example_call_tool.py deleted file mode 100644 index b84b9764b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_interviewer_pool_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateInterviewerPool" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"pool_name":"Engineering ' - 'Interviewers","interviewer_ids":["id1","id2","id3"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_job_application_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_job_application_example_call_tool.js deleted file mode 100644 index e5d7f232d..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_job_application_example_call_tool.js +++ /dev/null @@ -1,49 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateJobApplication"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_application_data": { - "candidateId": "12345", - "jobId": "67890", - "interviewPlanId": "abcde", - "interviewStageId": "stage1", - "sourceId": "source1", - "creditedToUserId": "user1", - "createdAt": "2023-10-01T12:00:00Z", - "applicationHistory": [ - { - "status": "applied", - "date": "2023-10-01" - }, - { - "status": "interviewed", - "date": "2023-10-05" - } - ] - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_job_application_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_job_application_example_call_tool.py deleted file mode 100644 index 011b0379d..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_job_application_example_call_tool.py +++ /dev/null @@ -1,39 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateJobApplication" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_application_data': { 'candidateId': '12345', - 'jobId': '67890', - 'interviewPlanId': 'abcde', - 'interviewStageId': 'stage1', - 'sourceId': 'source1', - 'creditedToUserId': 'user1', - 'createdAt': '2023-10-01T12:00:00Z', - 'applicationHistory': [ { 'status': 'applied', - 'date': '2023-10-01'}, - { 'status': 'interviewed', - 'date': '2023-10-05'}] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_job_opening_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_job_opening_example_call_tool.js deleted file mode 100644 index 9a6ca4767..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_job_opening_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateJobOpening"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "department_team_id": "dept123", - "employment_type": "FullTime", - "job_description": "We are looking for a software engineer to join our team.", - "opening_state": "Open", - "target_hire_date": "2023-12-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_job_opening_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_job_opening_example_call_tool.py deleted file mode 100644 index fec76db3a..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_job_opening_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateJobOpening" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'department_team_id': 'dept123', - 'employment_type': 'FullTime', - 'job_description': 'We are looking for a software engineer to join our team.', - 'opening_state': 'Open', - 'target_hire_date': '2023-12-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_location_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_location_example_call_tool.js deleted file mode 100644 index 50402be51..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_location_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateLocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Branch\",\"type\":\"branch\",\"location\":\"123 Main St, Anytown, USA\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_location_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_location_example_call_tool.py deleted file mode 100644 index 4cfc5562d..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_location_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateLocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New Branch","type":"branch","location":"123 Main St, Anytown, USA"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_new_job_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_new_job_example_call_tool.js deleted file mode 100644 index e5848116d..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_new_job_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateNewJob"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"Software Engineer\",\"description\":\"Develop and maintain software applications.\",\"location\":\"Remote\",\"salary\":\"100000\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_new_job_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_new_job_example_call_tool.py deleted file mode 100644 index 47b89862c..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_new_job_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateNewJob" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"title":"Software Engineer","description":"Develop and maintain software ' - 'applications.","location":"Remote","salary":"100000"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_offer_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_offer_example_call_tool.js deleted file mode 100644 index ea5c92445..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_offer_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateOffer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"Special Offer\",\"discount\":20,\"validUntil\":\"2023-12-31\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_offer_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_offer_example_call_tool.py deleted file mode 100644 index b79ab8a7c..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_offer_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateOffer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"title":"Special Offer","discount":20,"validUntil":"2023-12-31"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_survey_request_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_survey_request_example_call_tool.js deleted file mode 100644 index d1f178cb2..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_survey_request_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateSurveyRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"Candidate Feedback Survey\",\"questions\":[{\"question\":\"How would you rate your experience?\",\"type\":\"scale\",\"options\":[1,2,3,4,5]}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_survey_request_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_survey_request_example_call_tool.py deleted file mode 100644 index 0ab11a88f..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_survey_request_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateSurveyRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"title":"Candidate Feedback Survey","questions":[{"question":"How would you ' - 'rate your experience?","type":"scale","options":[1,2,3,4,5]}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_survey_submission_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_survey_submission_example_call_tool.js deleted file mode 100644 index 32f8cb490..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_survey_submission_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateSurveySubmission"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"surveyId\":\"12345\",\"responses\":{\"question1\":\"yes\",\"question2\":\"no\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_survey_submission_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_survey_submission_example_call_tool.py deleted file mode 100644 index b81062cb7..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_survey_submission_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateSurveySubmission" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"surveyId":"12345","responses":{"question1":"yes","question2":"no"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_webhook_setting_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/create_webhook_setting_example_call_tool.js deleted file mode 100644 index aa68d8eac..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_webhook_setting_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.CreateWebhookSetting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_configuration": { - "webhookType": "event", - "requestUrl": "https://example.com/webhook", - "secretToken": "abc123" - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/create_webhook_setting_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/create_webhook_setting_example_call_tool.py deleted file mode 100644 index 4fc650b77..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/create_webhook_setting_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.CreateWebhookSetting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_configuration': { 'webhookType': 'event', - 'requestUrl': 'https://example.com/webhook', - 'secretToken': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/delete_webhook_setting_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/delete_webhook_setting_example_call_tool.js deleted file mode 100644 index f6853296b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/delete_webhook_setting_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.DeleteWebhookSetting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/delete_webhook_setting_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/delete_webhook_setting_example_call_tool.py deleted file mode 100644 index 08913c831..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/delete_webhook_setting_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.DeleteWebhookSetting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/fetch_application_details_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/fetch_application_details_example_call_tool.js deleted file mode 100644 index 33fedb151..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/fetch_application_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.FetchApplicationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"applicationId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/fetch_application_details_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/fetch_application_details_example_call_tool.py deleted file mode 100644 index 1833d8f04..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/fetch_application_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.FetchApplicationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"applicationId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/fetch_interview_details_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/fetch_interview_details_example_call_tool.js deleted file mode 100644 index 0e94dd55c..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/fetch_interview_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.FetchInterviewDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "interview_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/fetch_interview_details_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/fetch_interview_details_example_call_tool.py deleted file mode 100644 index 9e69ec1d9..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/fetch_interview_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.FetchInterviewDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'interview_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/fetch_interview_stage_details_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/fetch_interview_stage_details_example_call_tool.js deleted file mode 100644 index 4e5d20cab..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/fetch_interview_stage_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.FetchInterviewStageDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "interview_stage_id": "stage_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/fetch_interview_stage_details_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/fetch_interview_stage_details_example_call_tool.py deleted file mode 100644 index 5b0e6a56d..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/fetch_interview_stage_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.FetchInterviewStageDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'interview_stage_id': 'stage_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/find_candidates_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/find_candidates_example_call_tool.js deleted file mode 100644 index d9332edbd..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/find_candidates_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.FindCandidates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "candidate_email": "john.doe@example.com", - "candidate_name": "John Doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/find_candidates_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/find_candidates_example_call_tool.py deleted file mode 100644 index 18706fcea..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/find_candidates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.FindCandidates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'candidate_email': 'john.doe@example.com', 'candidate_name': 'John Doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/generate_and_poll_report_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/generate_and_poll_report_example_call_tool.js deleted file mode 100644 index e44e021fe..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/generate_and_poll_report_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GenerateAndPollReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"reportId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/generate_and_poll_report_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/generate_and_poll_report_example_call_tool.py deleted file mode 100644 index 5707b27a0..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/generate_and_poll_report_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GenerateAndPollReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"reportId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_api_key_info_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_api_key_info_example_call_tool.js deleted file mode 100644 index d669a3e89..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_api_key_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetApiKeyInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "empty_request_body": {} -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_api_key_info_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_api_key_info_example_call_tool.py deleted file mode 100644 index 50297c9bc..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_api_key_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetApiKeyInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'empty_request_body': { -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_application_history_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_application_history_example_call_tool.js deleted file mode 100644 index 73ea335c0..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_application_history_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetApplicationHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"applicationId\":\"12345\",\"page\":1,\"pageSize\":10}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_application_history_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_application_history_example_call_tool.py deleted file mode 100644 index d50f057cd..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_application_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetApplicationHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"applicationId":"12345","page":1,"pageSize":10}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_approval_list_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_approval_list_example_call_tool.js deleted file mode 100644 index 207b34689..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_approval_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetApprovalList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"entityType\":\"user\",\"entityId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_approval_list_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_approval_list_example_call_tool.py deleted file mode 100644 index f885420e2..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_approval_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetApprovalList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"entityType":"user","entityId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_ashby_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_ashby_user_info_example_call_tool.js deleted file mode 100644 index 976840621..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_ashby_user_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetAshbyUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"userId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_ashby_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_ashby_user_info_example_call_tool.py deleted file mode 100644 index 2716aa0d3..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_ashby_user_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetAshbyUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"userId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_ashby_user_list_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_ashby_user_list_example_call_tool.js deleted file mode 100644 index 0248e8930..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_ashby_user_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetAshbyUserList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filter\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_ashby_user_list_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_ashby_user_list_example_call_tool.py deleted file mode 100644 index c3950ce58..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_ashby_user_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetAshbyUserList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filter":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_candidate_criteria_evaluations_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_candidate_criteria_evaluations_example_call_tool.js deleted file mode 100644 index 5cdde1cc9..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_candidate_criteria_evaluations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetCandidateCriteriaEvaluations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidate_id\":\"12345\",\"job_id\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_candidate_criteria_evaluations_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_candidate_criteria_evaluations_example_call_tool.py deleted file mode 100644 index d3fe75091..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_candidate_criteria_evaluations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetCandidateCriteriaEvaluations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"candidate_id":"12345","job_id":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_candidate_information_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_candidate_information_example_call_tool.js deleted file mode 100644 index 4b8702930..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_candidate_information_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetCandidateInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidate_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_candidate_information_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_candidate_information_example_call_tool.py deleted file mode 100644 index 9eb523a25..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_candidate_information_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetCandidateInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"candidate_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_custom_field_info_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_custom_field_info_example_call_tool.js deleted file mode 100644 index cf8d9b940..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_custom_field_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetCustomFieldInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"fieldId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_custom_field_info_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_custom_field_info_example_call_tool.py deleted file mode 100644 index aa2e79eb7..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_custom_field_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetCustomFieldInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"fieldId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_department_details_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_department_details_example_call_tool.js deleted file mode 100644 index 813232615..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_department_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetDepartmentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "department_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_department_details_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_department_details_example_call_tool.py deleted file mode 100644 index db975d332..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_department_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetDepartmentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'department_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_feedback_form_info_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_feedback_form_info_example_call_tool.js deleted file mode 100644 index 995f0f874..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_feedback_form_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetFeedbackFormInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"form_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_feedback_form_info_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_feedback_form_info_example_call_tool.py deleted file mode 100644 index 9cb9dfe91..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_feedback_form_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetFeedbackFormInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"form_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_hiring_team_roles_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_hiring_team_roles_example_call_tool.js deleted file mode 100644 index 8ad9e7a05..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_hiring_team_roles_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetHiringTeamRoles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_hiring_team_roles_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_hiring_team_roles_example_call_tool.py deleted file mode 100644 index f3c4bd2bf..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_hiring_team_roles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetHiringTeamRoles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_interview_schedules_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_interview_schedules_example_call_tool.js deleted file mode 100644 index c20c27448..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_interview_schedules_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetInterviewSchedules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"organizationId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_interview_schedules_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_interview_schedules_example_call_tool.py deleted file mode 100644 index 273eaa524..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_interview_schedules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetInterviewSchedules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"organizationId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_interviewer_pool_info_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_interviewer_pool_info_example_call_tool.js deleted file mode 100644 index b847ca76e..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_interviewer_pool_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetInterviewerPoolInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"poolId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_interviewer_pool_info_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_interviewer_pool_info_example_call_tool.py deleted file mode 100644 index 4f0d08607..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_interviewer_pool_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetInterviewerPoolInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"poolId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_interviewer_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_interviewer_settings_example_call_tool.js deleted file mode 100644 index 2ea5fdde7..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_interviewer_settings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetInterviewerSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"userId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_interviewer_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_interviewer_settings_example_call_tool.py deleted file mode 100644 index 0969f8c67..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_interviewer_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetInterviewerSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"userId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_job_details_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_job_details_example_call_tool.js deleted file mode 100644 index f6e593d60..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_job_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetJobDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"job_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_job_details_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_job_details_example_call_tool.py deleted file mode 100644 index 27b71e328..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_job_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetJobDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"job_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_job_posting_info_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_job_posting_info_example_call_tool.js deleted file mode 100644 index 395aedfa5..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_job_posting_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetJobPostingInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"job_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_job_posting_info_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_job_posting_info_example_call_tool.py deleted file mode 100644 index 1599586c7..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_job_posting_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetJobPostingInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"job_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_latest_offers_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_latest_offers_example_call_tool.js deleted file mode 100644 index 72b671ee9..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_latest_offers_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetLatestOffers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filter\":\"latest\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_latest_offers_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_latest_offers_example_call_tool.py deleted file mode 100644 index a3cc5fdd4..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_latest_offers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetLatestOffers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filter":"latest"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_location_details_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_location_details_example_call_tool.js deleted file mode 100644 index 210c4bacd..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_location_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetLocationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"location_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_location_details_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_location_details_example_call_tool.py deleted file mode 100644 index e59a9708b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_location_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetLocationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"location_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_offer_details_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_offer_details_example_call_tool.js deleted file mode 100644 index 2fc6748a0..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_offer_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetOfferDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"offer_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_offer_details_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_offer_details_example_call_tool.py deleted file mode 100644 index f9f7c2b4a..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_offer_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetOfferDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"offer_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_opening_info_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_opening_info_example_call_tool.js deleted file mode 100644 index a375745ea..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_opening_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetOpeningInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"uuid\":\"123e4567-e89b-12d3-a456-426614174000\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_opening_info_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_opening_info_example_call_tool.py deleted file mode 100644 index 71eb71b42..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_opening_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetOpeningInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"uuid":"123e4567-e89b-12d3-a456-426614174000"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_project_information_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_project_information_example_call_tool.js deleted file mode 100644 index afd7cfe3c..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_project_information_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetProjectInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"uuid\":\"123e4567-e89b-12d3-a456-426614174000\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_project_information_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_project_information_example_call_tool.py deleted file mode 100644 index 48774557f..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_project_information_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetProjectInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"uuid":"123e4567-e89b-12d3-a456-426614174000"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_referral_form_info_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_referral_form_info_example_call_tool.js deleted file mode 100644 index fcc217f8d..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_referral_form_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetReferralFormInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_referral_form_info_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_referral_form_info_example_call_tool.py deleted file mode 100644 index b21861ff2..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_referral_form_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetReferralFormInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_survey_form_details_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/get_survey_form_details_example_call_tool.js deleted file mode 100644 index 26477b219..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_survey_form_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.GetSurveyFormDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/get_survey_form_details_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/get_survey_form_details_example_call_tool.py deleted file mode 100644 index aa3f0ba3a..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/get_survey_form_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.GetSurveyFormDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/hiring_team_add_member_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/hiring_team_add_member_example_call_tool.js deleted file mode 100644 index 23e7a0891..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/hiring_team_add_member_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.HiringTeamAddMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"userId\":\"12345\",\"jobId\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/hiring_team_add_member_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/hiring_team_add_member_example_call_tool.py deleted file mode 100644 index 93285aded..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/hiring_team_add_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.HiringTeamAddMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"userId":"12345","jobId":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/job_interview_plan_info_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/job_interview_plan_info_example_call_tool.js deleted file mode 100644 index 84eba921b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/job_interview_plan_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.JobInterviewPlanInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"job_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/job_interview_plan_info_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/job_interview_plan_info_example_call_tool.py deleted file mode 100644 index 52a6dfd65..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/job_interview_plan_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.JobInterviewPlanInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"job_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_all_jobs_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_all_jobs_example_call_tool.js deleted file mode 100644 index ac872ceb2..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_all_jobs_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListAllJobs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"status\":\"open\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_all_jobs_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_all_jobs_example_call_tool.py deleted file mode 100644 index 1922ce173..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_all_jobs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListAllJobs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"status":"open"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_all_locations_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_all_locations_example_call_tool.js deleted file mode 100644 index 73309fe8e..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_all_locations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListAllLocations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filter\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_all_locations_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_all_locations_example_call_tool.py deleted file mode 100644 index 466250c2b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_all_locations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListAllLocations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filter":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_all_sources_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_all_sources_example_call_tool.js deleted file mode 100644 index 7fbf09d19..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_all_sources_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListAllSources"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_archived_items": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_all_sources_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_all_sources_example_call_tool.py deleted file mode 100644 index 8a9008121..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_all_sources_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListAllSources" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_archived_items': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_application_feedback_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_application_feedback_example_call_tool.js deleted file mode 100644 index b1be6ae51..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_application_feedback_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListApplicationFeedback"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"application_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_application_feedback_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_application_feedback_example_call_tool.py deleted file mode 100644 index 487ddac2a..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_application_feedback_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListApplicationFeedback" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"application_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_applications_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_applications_example_call_tool.js deleted file mode 100644 index 2d9e8227b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_applications_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListApplications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filter\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_applications_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_applications_example_call_tool.py deleted file mode 100644 index e131e88cc..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_applications_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListApplications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filter":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_archive_reasons_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_archive_reasons_example_call_tool.js deleted file mode 100644 index 035968992..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_archive_reasons_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListArchiveReasons"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_archived_interview_plans": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_archive_reasons_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_archive_reasons_example_call_tool.py deleted file mode 100644 index 2af1e486c..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_archive_reasons_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListArchiveReasons" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_archived_interview_plans': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_assessments_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_assessments_example_call_tool.js deleted file mode 100644 index 38fdcbd2b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_assessments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListAssessments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_assessments_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_assessments_example_call_tool.py deleted file mode 100644 index ddf1a845f..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_assessments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListAssessments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_client_info_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_candidate_client_info_example_call_tool.js deleted file mode 100644 index 1a5b214b6..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_client_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListCandidateClientInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidate_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_client_info_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_candidate_client_info_example_call_tool.py deleted file mode 100644 index 2d4447944..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_client_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListCandidateClientInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"candidate_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_notes_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_candidate_notes_example_call_tool.js deleted file mode 100644 index 28a8de4b3..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_notes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListCandidateNotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidate_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_notes_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_candidate_notes_example_call_tool.py deleted file mode 100644 index 4cd0fc2dd..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_notes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListCandidateNotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"candidate_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_candidate_projects_example_call_tool.js deleted file mode 100644 index f4d30f4a7..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_projects_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListCandidateProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidate_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_candidate_projects_example_call_tool.py deleted file mode 100644 index b1352e57b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_projects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListCandidateProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"candidate_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_candidate_tags_example_call_tool.js deleted file mode 100644 index cc2f199ba..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_tags_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListCandidateTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"criteria\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_candidate_tags_example_call_tool.py deleted file mode 100644 index 396622f31..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_candidate_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListCandidateTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"criteria":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_candidates_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_candidates_example_call_tool.js deleted file mode 100644 index 79c653ad4..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_candidates_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListCandidates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"organizationId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_candidates_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_candidates_example_call_tool.py deleted file mode 100644 index a97867933..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_candidates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListCandidates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"organizationId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_close_reasons_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_close_reasons_example_call_tool.js deleted file mode 100644 index 88e8e9bc2..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_close_reasons_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListCloseReasons"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_archived_reasons": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_close_reasons_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_close_reasons_example_call_tool.py deleted file mode 100644 index b2a2adae4..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_close_reasons_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListCloseReasons" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_archived_reasons': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_custom_fields_example_call_tool.js deleted file mode 100644 index 9fa15d60e..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_custom_fields_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filter\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_custom_fields_example_call_tool.py deleted file mode 100644 index 00b866185..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_custom_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filter":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_departments_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_departments_example_call_tool.js deleted file mode 100644 index c3c476f21..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_departments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListDepartments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"includeInactive\":false}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_departments_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_departments_example_call_tool.py deleted file mode 100644 index 449b3372b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_departments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListDepartments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"includeInactive":false}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_enabled_communication_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_enabled_communication_templates_example_call_tool.js deleted file mode 100644 index 59f597f29..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_enabled_communication_templates_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListEnabledCommunicationTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_enabled_communication_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_enabled_communication_templates_example_call_tool.py deleted file mode 100644 index efacb55ff..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_enabled_communication_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListEnabledCommunicationTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_enabled_job_boards_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_enabled_job_boards_example_call_tool.js deleted file mode 100644 index b726c80e1..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_enabled_job_boards_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListEnabledJobBoards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "request_body_data": { - "includeInactive": false - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_enabled_job_boards_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_enabled_job_boards_example_call_tool.py deleted file mode 100644 index 9d2c9e6d9..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_enabled_job_boards_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListEnabledJobBoards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'request_body_data': {'includeInactive': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_feedback_forms_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_feedback_forms_example_call_tool.js deleted file mode 100644 index a0d031823..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_feedback_forms_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListFeedbackForms"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filter\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_feedback_forms_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_feedback_forms_example_call_tool.py deleted file mode 100644 index 0abb68b32..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_feedback_forms_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListFeedbackForms" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filter":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_hiring_team_roles_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_hiring_team_roles_example_call_tool.js deleted file mode 100644 index b734e0e32..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_hiring_team_roles_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListHiringTeamRoles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "return_role_titles_only": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_hiring_team_roles_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_hiring_team_roles_example_call_tool.py deleted file mode 100644 index 54a0ed673..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_hiring_team_roles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListHiringTeamRoles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'return_role_titles_only': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_interview_events_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_interview_events_example_call_tool.js deleted file mode 100644 index 532ccaa87..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_interview_events_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListInterviewEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"scheduleId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_interview_events_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_interview_events_example_call_tool.py deleted file mode 100644 index 8933c5d42..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_interview_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListInterviewEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"scheduleId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_interview_plans_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_interview_plans_example_call_tool.js deleted file mode 100644 index c9210de17..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_interview_plans_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListInterviewPlans"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filter\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_interview_plans_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_interview_plans_example_call_tool.py deleted file mode 100644 index 91c68138f..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_interview_plans_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListInterviewPlans" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filter":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_interview_stage_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_interview_stage_groups_example_call_tool.js deleted file mode 100644 index a07fbc92b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_interview_stage_groups_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListInterviewStageGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_interview_stage_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_interview_stage_groups_example_call_tool.py deleted file mode 100644 index 5329c0cbf..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_interview_stage_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListInterviewStageGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_interview_stages_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_interview_stages_example_call_tool.js deleted file mode 100644 index 47cbff0be..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_interview_stages_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListInterviewStages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"interview_plan_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_interview_stages_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_interview_stages_example_call_tool.py deleted file mode 100644 index 38af13061..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_interview_stages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListInterviewStages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"interview_plan_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_interviewer_pools_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_interviewer_pools_example_call_tool.js deleted file mode 100644 index ccd9747fd..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_interviewer_pools_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListInterviewerPools"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"example_key\":\"example_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_interviewer_pools_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_interviewer_pools_example_call_tool.py deleted file mode 100644 index e4d6b5761..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_interviewer_pools_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListInterviewerPools" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"example_key":"example_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_interviews_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_interviews_example_call_tool.js deleted file mode 100644 index fd6f1eb12..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_interviews_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListInterviews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"status\":\"upcoming\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_interviews_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_interviews_example_call_tool.py deleted file mode 100644 index dc1c48c45..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_interviews_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListInterviews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"status":"upcoming"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_job_openings_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_job_openings_example_call_tool.js deleted file mode 100644 index 8b1148700..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_job_openings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListJobOpenings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "last_sync_token": "abc123", - "page_cursor": "page_2" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_job_openings_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_job_openings_example_call_tool.py deleted file mode 100644 index b72234bf5..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_job_openings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListJobOpenings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'last_sync_token': 'abc123', 'page_cursor': 'page_2' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_job_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_job_templates_example_call_tool.js deleted file mode 100644 index ef5654993..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_job_templates_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListJobTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_job_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_job_templates_example_call_tool.py deleted file mode 100644 index 4783cf3ba..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_job_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListJobTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_projects_example_call_tool.js deleted file mode 100644 index 33b26b60f..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_projects_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "last_sync_token": "abc123", - "max_items_to_return": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_projects_example_call_tool.py deleted file mode 100644 index aebbcdc01..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_projects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'last_sync_token': 'abc123', 'max_items_to_return': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_published_job_postings_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_published_job_postings_example_call_tool.js deleted file mode 100644 index 4f187bdf5..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_published_job_postings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListPublishedJobPostings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"listedOnly\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_published_job_postings_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_published_job_postings_example_call_tool.py deleted file mode 100644 index b30536ba2..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_published_job_postings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListPublishedJobPostings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"listedOnly":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_source_tracking_links_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_source_tracking_links_example_call_tool.js deleted file mode 100644 index 3d4dc6722..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_source_tracking_links_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListSourceTrackingLinks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_disabled_tracking_links": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_source_tracking_links_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_source_tracking_links_example_call_tool.py deleted file mode 100644 index 51e273d2b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_source_tracking_links_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListSourceTrackingLinks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_disabled_tracking_links': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_survey_form_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_survey_form_definitions_example_call_tool.js deleted file mode 100644 index 0af3b34dd..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_survey_form_definitions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListSurveyFormDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"surveyId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_survey_form_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_survey_form_definitions_example_call_tool.py deleted file mode 100644 index b767f90dd..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_survey_form_definitions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListSurveyFormDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"surveyId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_survey_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_survey_requests_example_call_tool.js deleted file mode 100644 index 43e616966..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_survey_requests_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListSurveyRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "get_request_schema" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_survey_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_survey_requests_example_call_tool.py deleted file mode 100644 index 6876c22b8..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_survey_requests_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListSurveyRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'get_request_schema' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_survey_submissions_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/list_survey_submissions_example_call_tool.js deleted file mode 100644 index 57f5a76ee..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_survey_submissions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.ListSurveySubmissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"surveyType\":\"customer_feedback\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/list_survey_submissions_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/list_survey_submissions_example_call_tool.py deleted file mode 100644 index b52683d45..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/list_survey_submissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.ListSurveySubmissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"surveyType":"customer_feedback"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/move_department_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/move_department_example_call_tool.js deleted file mode 100644 index 6df7db1f4..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/move_department_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.MoveDepartment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"departmentId\":\"123\",\"newParentId\":\"456\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/move_department_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/move_department_example_call_tool.py deleted file mode 100644 index 78a7a3d5a..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/move_department_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.MoveDepartment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"departmentId":"123","newParentId":"456"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/move_location_in_hierarchy_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/move_location_in_hierarchy_example_call_tool.js deleted file mode 100644 index 975a96818..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/move_location_in_hierarchy_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.MoveLocationInHierarchy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"locationId\":\"123\",\"newParentId\":\"456\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/move_location_in_hierarchy_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/move_location_in_hierarchy_example_call_tool.py deleted file mode 100644 index 64886f91a..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/move_location_in_hierarchy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.MoveLocationInHierarchy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"locationId":"123","newParentId":"456"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/offer_approval_action_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/offer_approval_action_example_call_tool.js deleted file mode 100644 index dcaaf9706..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/offer_approval_action_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.OfferApprovalAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"offerId\":\"12345\",\"approvalStepId\":\"67890\",\"userId\":\"abcde\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/offer_approval_action_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/offer_approval_action_example_call_tool.py deleted file mode 100644 index c7b07136f..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/offer_approval_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.OfferApprovalAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"offerId":"12345","approvalStepId":"67890","userId":"abcde"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/remove_hiring_team_member_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/remove_hiring_team_member_example_call_tool.js deleted file mode 100644 index 76d7e4aa3..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/remove_hiring_team_member_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.RemoveHiringTeamMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hiring_team_removal_details": { - "applicationId": "app123", - "teamMemberId": "user456", - "roleId": "role789" - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/remove_hiring_team_member_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/remove_hiring_team_member_example_call_tool.py deleted file mode 100644 index ff7591241..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/remove_hiring_team_member_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.RemoveHiringTeamMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hiring_team_removal_details': { 'applicationId': 'app123', - 'teamMemberId': 'user456', - 'roleId': 'role789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/remove_job_from_opening_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/remove_job_from_opening_example_call_tool.js deleted file mode 100644 index 10ac0bf97..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/remove_job_from_opening_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.RemoveJobFromOpening"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"jobId\":\"12345\",\"openingId\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/remove_job_from_opening_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/remove_job_from_opening_example_call_tool.py deleted file mode 100644 index d774914cf..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/remove_job_from_opening_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.RemoveJobFromOpening" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"jobId":"12345","openingId":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/remove_location_from_opening_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/remove_location_from_opening_example_call_tool.js deleted file mode 100644 index 32dabb860..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/remove_location_from_opening_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.RemoveLocationFromOpening"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"job_id\":\"12345\",\"location\":\"New York\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/remove_location_from_opening_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/remove_location_from_opening_example_call_tool.py deleted file mode 100644 index 969cd47e2..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/remove_location_from_opening_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.RemoveLocationFromOpening" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"job_id":"12345","location":"New York"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/remove_team_member_from_hiring_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/remove_team_member_from_hiring_example_call_tool.js deleted file mode 100644 index d8d804d76..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/remove_team_member_from_hiring_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.RemoveTeamMemberFromHiring"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"user_id\":\"12345\",\"job_id\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/remove_team_member_from_hiring_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/remove_team_member_from_hiring_example_call_tool.py deleted file mode 100644 index 7cc9b1030..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/remove_team_member_from_hiring_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.RemoveTeamMemberFromHiring" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"user_id":"12345","job_id":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/remove_user_from_interviewer_pool_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/remove_user_from_interviewer_pool_example_call_tool.js deleted file mode 100644 index c87e88bd7..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/remove_user_from_interviewer_pool_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.RemoveUserFromInterviewerPool"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"userId\":\"12345\",\"poolId\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/remove_user_from_interviewer_pool_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/remove_user_from_interviewer_pool_example_call_tool.py deleted file mode 100644 index fdddc97c0..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/remove_user_from_interviewer_pool_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.RemoveUserFromInterviewerPool" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"userId":"12345","poolId":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/restore_archived_location_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/restore_archived_location_example_call_tool.js deleted file mode 100644 index 3e496c251..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/restore_archived_location_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.RestoreArchivedLocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"locationId\":\"12345\",\"restoreDate\":\"2023-10-01\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/restore_archived_location_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/restore_archived_location_example_call_tool.py deleted file mode 100644 index 3928219a7..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/restore_archived_location_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.RestoreArchivedLocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"locationId":"12345","restoreDate":"2023-10-01"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/restore_department_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/restore_department_example_call_tool.js deleted file mode 100644 index 03248c8b9..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/restore_department_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.RestoreDepartment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"departmentId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/restore_department_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/restore_department_example_call_tool.py deleted file mode 100644 index 8292d918b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/restore_department_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.RestoreDepartment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"departmentId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/restore_interviewer_pool_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/restore_interviewer_pool_example_call_tool.js deleted file mode 100644 index c12abdec0..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/restore_interviewer_pool_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.RestoreInterviewerPool"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"pool_id\":\"12345\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/restore_interviewer_pool_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/restore_interviewer_pool_example_call_tool.py deleted file mode 100644 index d33e6168f..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/restore_interviewer_pool_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.RestoreInterviewerPool" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"pool_id":"12345","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/retrieve_candidate_file_url_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/retrieve_candidate_file_url_example_call_tool.js deleted file mode 100644 index 6b1790f84..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/retrieve_candidate_file_url_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.RetrieveCandidateFileUrl"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidateId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/retrieve_candidate_file_url_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/retrieve_candidate_file_url_example_call_tool.py deleted file mode 100644 index 2fa1ca1f2..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/retrieve_candidate_file_url_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.RetrieveCandidateFileUrl" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"candidateId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/retrieve_sync_report_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/retrieve_sync_report_example_call_tool.js deleted file mode 100644 index 56080b485..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/retrieve_sync_report_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.RetrieveSyncReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"reportId\":\"12345\",\"filters\":{\"dateRange\":\"last_month\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/retrieve_sync_report_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/retrieve_sync_report_example_call_tool.py deleted file mode 100644 index 316753786..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/retrieve_sync_report_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.RetrieveSyncReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"reportId":"12345","filters":{"dateRange":"last_month"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/retrieve_webhook_info_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/retrieve_webhook_info_example_call_tool.js deleted file mode 100644 index f26af8521..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/retrieve_webhook_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.RetrieveWebhookInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"webhook_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/retrieve_webhook_info_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/retrieve_webhook_info_example_call_tool.py deleted file mode 100644 index ea79b427d..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/retrieve_webhook_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.RetrieveWebhookInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"webhook_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/search_job_openings_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/search_job_openings_example_call_tool.js deleted file mode 100644 index 016c8fb51..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/search_job_openings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.SearchJobOpenings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"identifier\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/search_job_openings_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/search_job_openings_example_call_tool.py deleted file mode 100644 index f5bceb82a..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/search_job_openings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.SearchJobOpenings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"identifier":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/search_jobs_by_title_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/search_jobs_by_title_example_call_tool.js deleted file mode 100644 index fcfdd5f20..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/search_jobs_by_title_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.SearchJobsByTitle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"Software Engineer\",\"location\":\"New York\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/search_jobs_by_title_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/search_jobs_by_title_example_call_tool.py deleted file mode 100644 index 4efa3cd67..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/search_jobs_by_title_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.SearchJobsByTitle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"title":"Software Engineer","location":"New York"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/search_projects_by_title_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/search_projects_by_title_example_call_tool.js deleted file mode 100644 index 0e7eadb30..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/search_projects_by_title_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.SearchProjectsByTitle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_title": "AI Research" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/search_projects_by_title_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/search_projects_by_title_example_call_tool.py deleted file mode 100644 index d4ba4a9dc..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/search_projects_by_title_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.SearchProjectsByTitle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_title': 'AI Research' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/set_custom_field_value_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/set_custom_field_value_example_call_tool.js deleted file mode 100644 index 252d96bc3..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/set_custom_field_value_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.SetCustomFieldValue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"object_id\":\"12345\",\"custom_field\":\"status\",\"value\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/set_custom_field_value_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/set_custom_field_value_example_call_tool.py deleted file mode 100644 index ffed367a6..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/set_custom_field_value_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.SetCustomFieldValue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"object_id":"12345","custom_field":"status","value":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/set_job_status_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/set_job_status_example_call_tool.js deleted file mode 100644 index 1103e1b6b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/set_job_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.SetJobStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"jobId\":\"12345\",\"status\":\"Open\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/set_job_status_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/set_job_status_example_call_tool.py deleted file mode 100644 index 0bc975c1f..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/set_job_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.SetJobStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"jobId":"12345","status":"Open"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/set_opening_archived_state_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/set_opening_archived_state_example_call_tool.js deleted file mode 100644 index 463bef3b3..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/set_opening_archived_state_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.SetOpeningArchivedState"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "opening_id": "12345", - "set_archived_state": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/set_opening_archived_state_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/set_opening_archived_state_example_call_tool.py deleted file mode 100644 index abb35f78d..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/set_opening_archived_state_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.SetOpeningArchivedState" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'opening_id': '12345', 'set_archived_state': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/set_opening_state_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/set_opening_state_example_call_tool.js deleted file mode 100644 index f82131109..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/set_opening_state_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.SetOpeningState"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "opening_id": "job_123", - "new_opening_state": "Closed", - "close_reason_id": "reason_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/set_opening_state_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/set_opening_state_example_call_tool.py deleted file mode 100644 index 16930a6ed..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/set_opening_state_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.SetOpeningState" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'opening_id': 'job_123', 'new_opening_state': 'Closed', 'close_reason_id': 'reason_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/start_assessment_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/start_assessment_example_call_tool.js deleted file mode 100644 index 97cf310e6..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/start_assessment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.StartAssessment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidateId\":\"12345\",\"position\":\"Software Engineer\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/start_assessment_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/start_assessment_example_call_tool.py deleted file mode 100644 index bb1c7311a..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/start_assessment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.StartAssessment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"candidateId":"12345","position":"Software Engineer"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/start_offer_process_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/start_offer_process_example_call_tool.js deleted file mode 100644 index a1de2dedd..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/start_offer_process_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.StartOfferProcess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidateId\":\"12345\",\"position\":\"Software Engineer\",\"salary\":100000}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/start_offer_process_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/start_offer_process_example_call_tool.py deleted file mode 100644 index 2b2e85abc..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/start_offer_process_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.StartOfferProcess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"candidateId":"12345","position":"Software Engineer","salary":100000}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/submit_application_feedback_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/submit_application_feedback_example_call_tool.js deleted file mode 100644 index 396d8fe56..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/submit_application_feedback_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.SubmitApplicationFeedback"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"feedback\":\"Great application!\",\"score\":5}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/submit_application_feedback_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/submit_application_feedback_example_call_tool.py deleted file mode 100644 index 40cae41de..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/submit_application_feedback_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.SubmitApplicationFeedback" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"feedback":"Great application!","score":5}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/transfer_application_to_job_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/transfer_application_to_job_example_call_tool.js deleted file mode 100644 index 0c0001381..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/transfer_application_to_job_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.TransferApplicationToJob"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_transfer_details": { - "applicationId": "12345", - "jobId": "67890", - "interviewPlanId": "abcde", - "interviewStageId": "stage1", - "startAutomaticActivities": true - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/transfer_application_to_job_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/transfer_application_to_job_example_call_tool.py deleted file mode 100644 index a788878bf..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/transfer_application_to_job_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.TransferApplicationToJob" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_transfer_details': { 'applicationId': '12345', - 'jobId': '67890', - 'interviewPlanId': 'abcde', - 'interviewStageId': 'stage1', - 'startAutomaticActivities': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_application_history_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_application_history_example_call_tool.js deleted file mode 100644 index 0fe07563f..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_application_history_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateApplicationHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"applicationId\":\"12345\",\"stage\":\"interview\",\"timestamp\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_application_history_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_application_history_example_call_tool.py deleted file mode 100644 index 54faa5400..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_application_history_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateApplicationHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"applicationId":"12345","stage":"interview","timestamp":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_application_status_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_application_status_example_call_tool.js deleted file mode 100644 index 1aedf39e6..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_application_status_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateApplicationStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_update_payload": { - "applicationId": "12345", - "sourceId": "67890", - "creditedToUserId": "user_001", - "createdAt": "2023-10-01T12:00:00Z", - "sendNotifications": true - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_application_status_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_application_status_example_call_tool.py deleted file mode 100644 index f66dfbac8..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_application_status_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateApplicationStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_update_payload': { 'applicationId': '12345', - 'sourceId': '67890', - 'creditedToUserId': 'user_001', - 'createdAt': '2023-10-01T12:00:00Z', - 'sendNotifications': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_approval_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_approval_definition_example_call_tool.js deleted file mode 100644 index 0c60ae893..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_approval_definition_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateApprovalDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"entityId\":\"12345\",\"approvalSteps\":[{\"step\":\"manager_approval\",\"required\":true},{\"step\":\"hr_approval\",\"required\":false}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_approval_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_approval_definition_example_call_tool.py deleted file mode 100644 index 2745ead64..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_approval_definition_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateApprovalDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"entityId":"12345","approvalSteps":[{"step":"manager_approval","required":true},{"step":"hr_approval","required":false}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_assessment_status_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_assessment_status_example_call_tool.js deleted file mode 100644 index 398cd3aa2..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_assessment_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateAssessmentStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidate_id\":\"12345\",\"assessment_status\":\"completed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_assessment_status_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_assessment_status_example_call_tool.py deleted file mode 100644 index c348618f1..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_assessment_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateAssessmentStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"candidate_id":"12345","assessment_status":"completed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_candidate_info_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_candidate_info_example_call_tool.js deleted file mode 100644 index fa9b76661..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_candidate_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateCandidateInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"candidateId\":\"12345\",\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_candidate_info_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_candidate_info_example_call_tool.py deleted file mode 100644 index b87229f84..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_candidate_info_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateCandidateInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"candidateId":"12345","name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_department_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_department_example_call_tool.js deleted file mode 100644 index b84f68600..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_department_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateDepartment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"departmentId\":\"123\",\"name\":\"Engineering\",\"location\":\"Building A\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_department_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_department_example_call_tool.py deleted file mode 100644 index 7f067e330..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_department_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateDepartment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"departmentId":"123","name":"Engineering","location":"Building A"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_interview_schedule_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_interview_schedule_example_call_tool.js deleted file mode 100644 index 6212de716..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_interview_schedule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateInterviewSchedule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"interviewEventId\":\"12345\",\"action\":\"update\",\"newDate\":\"2023-10-15T10:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_interview_schedule_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_interview_schedule_example_call_tool.py deleted file mode 100644 index 5fbd2bab5..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_interview_schedule_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateInterviewSchedule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"interviewEventId":"12345","action":"update","newDate":"2023-10-15T10:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_interviewer_pool_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_interviewer_pool_example_call_tool.js deleted file mode 100644 index 3eda67d97..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_interviewer_pool_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateInterviewerPool"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"poolId\":\"12345\",\"interviewers\":[{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"},{\"name\":\"Jane Smith\",\"email\":\"jane.smith@example.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_interviewer_pool_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_interviewer_pool_example_call_tool.py deleted file mode 100644 index 110ec35bb..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_interviewer_pool_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateInterviewerPool" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"poolId":"12345","interviewers":[{"name":"John ' - 'Doe","email":"john.doe@example.com"},{"name":"Jane ' - 'Smith","email":"jane.smith@example.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_interviewer_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_interviewer_settings_example_call_tool.js deleted file mode 100644 index 7faa649af..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_interviewer_settings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateInterviewerSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"userId\":\"12345\",\"limits\":{\"maxInterviews\":5,\"minExperience\":2}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_interviewer_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_interviewer_settings_example_call_tool.py deleted file mode 100644 index af8fa1f92..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_interviewer_settings_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateInterviewerSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"userId":"12345","limits":{"maxInterviews":5,"minExperience":2}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_job_compensation_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_job_compensation_example_call_tool.js deleted file mode 100644 index 1802e7aea..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_job_compensation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateJobCompensation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"jobId\":\"12345\",\"compensation\":{\"baseSalary\":70000,\"bonus\":5000}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_job_compensation_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_job_compensation_example_call_tool.py deleted file mode 100644 index 1929a567d..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_job_compensation_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateJobCompensation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"jobId":"12345","compensation":{"baseSalary":70000,"bonus":5000}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_job_details_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_job_details_example_call_tool.js deleted file mode 100644 index c9d52f161..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_job_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateJobDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"jobId\":\"12345\",\"title\":\"Software Engineer\",\"description\":\"Develop and maintain software applications.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_job_details_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_job_details_example_call_tool.py deleted file mode 100644 index 42fd496ee..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_job_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateJobDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"jobId":"12345","title":"Software Engineer","description":"Develop and ' - 'maintain software applications."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_job_opening_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_job_opening_example_call_tool.js deleted file mode 100644 index ff192c3bc..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_job_opening_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateJobOpening"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "department_team_id": "12345", - "employment_type": "FullTime", - "fields_to_update": "jobIds,targetHireDate", - "is_backfill": true, - "job_description_update": "We are looking for a skilled software engineer to join our team.", - "opening_identifier": "job-67890", - "target_hire_date": "2023-12-01", - "target_start_date": "2024-01-15" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_job_opening_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_job_opening_example_call_tool.py deleted file mode 100644 index f8e274e28..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_job_opening_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateJobOpening" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'department_team_id': '12345', - 'employment_type': 'FullTime', - 'fields_to_update': 'jobIds,targetHireDate', - 'is_backfill': True, - 'job_description_update': 'We are looking for a skilled software engineer to join our team.', - 'opening_identifier': 'job-67890', - 'target_hire_date': '2023-12-01', - 'target_start_date': '2024-01-15' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_job_posting_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_job_posting_example_call_tool.js deleted file mode 100644 index 4002ded94..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_job_posting_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateJobPosting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"jobId\":\"12345\",\"title\":\"Software Engineer\",\"descriptionParts\":{\"descriptionBody\":\"We are looking for a Software Engineer...\"},\"suppressDescriptionOpening\":true,\"suppressDescriptionClosing\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_job_posting_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_job_posting_example_call_tool.py deleted file mode 100644 index 431c63d71..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_job_posting_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateJobPosting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"jobId":"12345","title":"Software ' - 'Engineer","descriptionParts":{"descriptionBody":"We are looking for a ' - 'Software ' - 'Engineer..."},"suppressDescriptionOpening":true,"suppressDescriptionClosing":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_location_address_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_location_address_example_call_tool.js deleted file mode 100644 index ee2b1482b..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_location_address_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateLocationAddress"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"locationId\":\"12345\",\"newAddress\":\"123 New St, New City, NC 12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_location_address_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_location_address_example_call_tool.py deleted file mode 100644 index 5f6c064f6..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_location_address_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateLocationAddress" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"locationId":"12345","newAddress":"123 New St, New City, NC 12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_location_name_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_location_name_example_call_tool.js deleted file mode 100644 index 365c2cacd..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_location_name_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateLocationName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"locationId\":\"12345\",\"newName\":\"New Location Name\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_location_name_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_location_name_example_call_tool.py deleted file mode 100644 index ccf674644..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_location_name_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateLocationName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"locationId":"12345","newName":"New Location Name"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_location_remote_status_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_location_remote_status_example_call_tool.js deleted file mode 100644 index 230e58a47..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_location_remote_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateLocationRemoteStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"locationId\":\"12345\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_location_remote_status_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_location_remote_status_example_call_tool.py deleted file mode 100644 index c4409e293..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_location_remote_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateLocationRemoteStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"locationId":"12345","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_offer_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_offer_example_call_tool.js deleted file mode 100644 index 44e82cc38..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_offer_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateOffer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"offerId\":\"12345\",\"newPrice\":199.99,\"isActive\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_offer_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_offer_example_call_tool.py deleted file mode 100644 index b8df24740..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_offer_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateOffer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"offerId":"12345","newPrice":199.99,"isActive":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_webhook_setting_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_webhook_setting_example_call_tool.js deleted file mode 100644 index e1d277d93..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_webhook_setting_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateWebhookSetting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_settings_payload": { - "webhookId": "12345", - "enabled": true - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_webhook_setting_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_webhook_setting_example_call_tool.py deleted file mode 100644 index 66c198199..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_webhook_setting_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateWebhookSetting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_settings_payload': {'webhookId': '12345', 'enabled': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_workplace_type_example_call_tool.js b/public/examples/integrations/mcp-servers/ashby_api/update_workplace_type_example_call_tool.js deleted file mode 100644 index fec8ecb05..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_workplace_type_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "AshbyApi.UpdateWorkplaceType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"locationId\":\"12345\",\"workplaceType\":\"remote\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ashby_api/update_workplace_type_example_call_tool.py b/public/examples/integrations/mcp-servers/ashby_api/update_workplace_type_example_call_tool.py deleted file mode 100644 index 7973fa434..000000000 --- a/public/examples/integrations/mcp-servers/ashby_api/update_workplace_type_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "AshbyApi.UpdateWorkplaceType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"locationId":"12345","workplaceType":"remote"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/abort_upload_session_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/abort_upload_session_example_call_tool.js deleted file mode 100644 index 878c1b605..000000000 --- a/public/examples/integrations/mcp-servers/box_api/abort_upload_session_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.AbortUploadSession"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "upload_session_id": "sess_Abc123XYZ" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/abort_upload_session_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/abort_upload_session_example_call_tool.py deleted file mode 100644 index dcd608372..000000000 --- a/public/examples/integrations/mcp-servers/box_api/abort_upload_session_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.AbortUploadSession" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'upload_session_id': 'sess_Abc123XYZ' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/cancel_sign_request_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/cancel_sign_request_example_call_tool.js deleted file mode 100644 index 8f853e3ec..000000000 --- a/public/examples/integrations/mcp-servers/box_api/cancel_sign_request_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.CancelSignRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "sign_request_id": "sr_abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/cancel_sign_request_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/cancel_sign_request_example_call_tool.py deleted file mode 100644 index 12bc53b8c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/cancel_sign_request_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.CancelSignRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'sign_request_id': 'sr_abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/check_user_invite_status_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/check_user_invite_status_example_call_tool.js deleted file mode 100644 index 5cd741e92..000000000 --- a/public/examples/integrations/mcp-servers/box_api/check_user_invite_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.CheckUserInviteStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invite_id": "inv_9a8b7c6d", - "included_attributes": [ - "created_at", - "expires_at" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/check_user_invite_status_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/check_user_invite_status_example_call_tool.py deleted file mode 100644 index 79bef3668..000000000 --- a/public/examples/integrations/mcp-servers/box_api/check_user_invite_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.CheckUserInviteStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invite_id': 'inv_9a8b7c6d', 'included_attributes': ['created_at', 'expires_at'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/check_zip_download_status_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/check_zip_download_status_example_call_tool.js deleted file mode 100644 index b69229c5c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/check_zip_download_status_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.CheckZipDownloadStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "zip_archive_unique_identifier": "zip_12345abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/check_zip_download_status_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/check_zip_download_status_example_call_tool.py deleted file mode 100644 index 771a958aa..000000000 --- a/public/examples/integrations/mcp-servers/box_api/check_zip_download_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.CheckZipDownloadStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'zip_archive_unique_identifier': 'zip_12345abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_ai_agent_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_ai_agent_example_call_tool.js deleted file mode 100644 index 065d79ad1..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_ai_agent_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteAiAgent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_id": "agent_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_ai_agent_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_ai_agent_example_call_tool.py deleted file mode 100644 index eb1a70eb8..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_ai_agent_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteAiAgent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_id': 'agent_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_archive_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_archive_example_call_tool.js deleted file mode 100644 index feae9a763..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_archive_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteArchive"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "archive_id": "arch_12345abcd" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_archive_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_archive_example_call_tool.py deleted file mode 100644 index 4a170fc4a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_archive_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteArchive" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'archive_id': 'arch_12345abcd' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_box_file_version_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_box_file_version_example_call_tool.js deleted file mode 100644 index d96a2f8c5..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_box_file_version_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteBoxFileVersion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "12345", - "file_version_id": "67890", - "if_match_etag_value": "\"3a5f9c2b\"" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_box_file_version_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_box_file_version_example_call_tool.py deleted file mode 100644 index 6ab197ecc..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_box_file_version_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteBoxFileVersion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '12345', 'file_version_id': '67890', 'if_match_etag_value': '"3a5f9c2b"' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_box_hub_collaboration_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_box_hub_collaboration_example_call_tool.js deleted file mode 100644 index 87c3ab09b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_box_hub_collaboration_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteBoxHubCollaboration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hub_collaboration_identifier": "collab_987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_box_hub_collaboration_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_box_hub_collaboration_example_call_tool.py deleted file mode 100644 index c67293f28..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_box_hub_collaboration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteBoxHubCollaboration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hub_collaboration_identifier': 'collab_987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_box_hub_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_box_hub_example_call_tool.js deleted file mode 100644 index 7ce72049b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_box_hub_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteBoxHub"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "box_hub_unique_id": "hub_3f7a9b2c" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_box_hub_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_box_hub_example_call_tool.py deleted file mode 100644 index 049bdbc1d..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_box_hub_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteBoxHub" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'box_hub_unique_id': 'hub_3f7a9b2c' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_collaboration_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_collaboration_example_call_tool.js deleted file mode 100644 index e3e86f552..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_collaboration_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteCollaboration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collaboration_id_to_delete": "collab_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_collaboration_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_collaboration_example_call_tool.py deleted file mode 100644 index 6e03bc9a2..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_collaboration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteCollaboration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collaboration_id_to_delete': 'collab_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_comment_example_call_tool.js deleted file mode 100644 index 11bb4770b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_comment_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": "cmt_8f3a2b9d" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_comment_example_call_tool.py deleted file mode 100644 index 4a7c71d64..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': 'cmt_8f3a2b9d' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_device_pin_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_device_pin_example_call_tool.js deleted file mode 100644 index b8a924d84..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_device_pin_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteDevicePin"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "device_pin_id": "pin_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_device_pin_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_device_pin_example_call_tool.py deleted file mode 100644 index 5a2df5f74..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_device_pin_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteDevicePin" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'device_pin_id': 'pin_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_file_from_box_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_file_from_box_example_call_tool.js deleted file mode 100644 index cd3546d8f..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_file_from_box_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteFileFromBox"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "1234567890", - "ensure_no_recent_changes_etag": "0a1b2c3d4e" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_file_from_box_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_file_from_box_example_call_tool.py deleted file mode 100644 index 9cec31559..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_file_from_box_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteFileFromBox" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '1234567890', 'ensure_no_recent_changes_etag': '0a1b2c3d4e' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_file_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_file_metadata_example_call_tool.js deleted file mode 100644 index 330a66301..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_file_metadata_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteFileMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "12345", - "metadata_scope": "enterprise", - "metadata_template_name": "project-info" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_file_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_file_metadata_example_call_tool.py deleted file mode 100644 index b358036d8..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_file_metadata_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteFileMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '12345', - 'metadata_scope': 'enterprise', - 'metadata_template_name': 'project-info' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_file_request_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_file_request_example_call_tool.js deleted file mode 100644 index d152ff242..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_file_request_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteFileRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_request_identifier": "fr_8a1b2c3d4e5f6g7h" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_file_request_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_file_request_example_call_tool.py deleted file mode 100644 index c07824dc0..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_file_request_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteFileRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_request_identifier': 'fr_8a1b2c3d4e5f6g7h' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_folder_example_call_tool.js deleted file mode 100644 index fbd93b02b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_folder_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": "123456789", - "ensure_unchanged_etag": "0a1b2c3d4e", - "delete_recursively": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_folder_example_call_tool.py deleted file mode 100644 index d3d49d2ca..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_folder_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': '123456789', - 'ensure_unchanged_etag': '0a1b2c3d4e', - 'delete_recursively': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_folder_lock_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_folder_lock_example_call_tool.js deleted file mode 100644 index 9257ea4d3..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_folder_lock_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteFolderLock"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_lock_identifier": "lock_9f4b2a1c" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_folder_lock_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_folder_lock_example_call_tool.py deleted file mode 100644 index a83ad6e28..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_folder_lock_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteFolderLock" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_lock_identifier': 'lock_9f4b2a1c' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_folder_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_folder_metadata_example_call_tool.js deleted file mode 100644 index fc3fed0bb..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_folder_metadata_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteFolderMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": "123456789", - "metadata_template_scope": "enterprise", - "metadata_template_name": "project_status" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_folder_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_folder_metadata_example_call_tool.py deleted file mode 100644 index 2e151000f..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_folder_metadata_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteFolderMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': '123456789', - 'metadata_template_scope': 'enterprise', - 'metadata_template_name': 'project_status' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_group_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_group_example_call_tool.js deleted file mode 100644 index 1a928c6c3..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_group_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_id": "grp_4a1f9b2c" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_group_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_group_example_call_tool.py deleted file mode 100644 index 7a0c6acb9..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_id': 'grp_4a1f9b2c' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_group_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_group_membership_example_call_tool.js deleted file mode 100644 index f6cd941bf..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_group_membership_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteGroupMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_membership_id": "gm_9b2f7a1c" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_group_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_group_membership_example_call_tool.py deleted file mode 100644 index 7ab65f72a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_group_membership_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteGroupMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_membership_id': 'gm_9b2f7a1c' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_legal_hold_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_legal_hold_policy_example_call_tool.js deleted file mode 100644 index f9d8d86e1..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_legal_hold_policy_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteLegalHoldPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "legal_hold_policy_id": "lhp_8f3b2a1c" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_legal_hold_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_legal_hold_policy_example_call_tool.py deleted file mode 100644 index 590450355..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_legal_hold_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteLegalHoldPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'legal_hold_policy_id': 'lhp_8f3b2a1c' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_metadata_cascade_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_metadata_cascade_policy_example_call_tool.js deleted file mode 100644 index 368b2b44f..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_metadata_cascade_policy_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteMetadataCascadePolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metadata_cascade_policy_id": "csp_1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_metadata_cascade_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_metadata_cascade_policy_example_call_tool.py deleted file mode 100644 index 258c3e9a2..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_metadata_cascade_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteMetadataCascadePolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metadata_cascade_policy_id': 'csp_1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_metadata_template_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_metadata_template_example_call_tool.js deleted file mode 100644 index 92ff00e99..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_metadata_template_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteMetadataTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metadata_template_scope": "enterprise", - "metadata_template_name": "confidential_project_template" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_metadata_template_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_metadata_template_example_call_tool.py deleted file mode 100644 index 0b4f5cde7..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_metadata_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteMetadataTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metadata_template_scope': 'enterprise', 'metadata_template_name': 'confidential_project_template' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_retention_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_retention_policy_example_call_tool.js deleted file mode 100644 index 1e448f02d..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_retention_policy_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteRetentionPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "retention_policy_id": "rp_8f4b2a1c" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_retention_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_retention_policy_example_call_tool.py deleted file mode 100644 index 728ef1ab7..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_retention_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteRetentionPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'retention_policy_id': 'rp_8f4b2a1c' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_shield_barrier_segment_restriction_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_shield_barrier_segment_restriction_example_call_tool.js deleted file mode 100644 index 625d33747..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_shield_barrier_segment_restriction_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteShieldBarrierSegmentRestriction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "barrier_segment_restriction_id": "rstr_123abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_shield_barrier_segment_restriction_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_shield_barrier_segment_restriction_example_call_tool.py deleted file mode 100644 index c3cb9e316..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_shield_barrier_segment_restriction_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteShieldBarrierSegmentRestriction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'barrier_segment_restriction_id': 'rstr_123abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_shield_information_barrier_segment_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_shield_information_barrier_segment_example_call_tool.js deleted file mode 100644 index 917afdc91..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_shield_information_barrier_segment_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteShieldInformationBarrierSegment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shield_information_barrier_segment_id": "sibseg_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_shield_information_barrier_segment_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_shield_information_barrier_segment_example_call_tool.py deleted file mode 100644 index e057cfa81..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_shield_information_barrier_segment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteShieldInformationBarrierSegment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shield_information_barrier_segment_id': 'sibseg_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_shield_list_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_shield_list_by_id_example_call_tool.js deleted file mode 100644 index 65a99c7fe..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_shield_list_by_id_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteShieldListById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shield_list_id": "shld_1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_shield_list_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_shield_list_by_id_example_call_tool.py deleted file mode 100644 index 98f0a45e0..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_shield_list_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteShieldListById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shield_list_id': 'shld_1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_slack_integration_mapping_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_slack_integration_mapping_example_call_tool.js deleted file mode 100644 index 2c913244c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_slack_integration_mapping_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteSlackIntegrationMapping"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "slack_integration_mapping_id": "sim_01F2ABCD3EFGHIJKL" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_slack_integration_mapping_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_slack_integration_mapping_example_call_tool.py deleted file mode 100644 index af83d1afc..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_slack_integration_mapping_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteSlackIntegrationMapping" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'slack_integration_mapping_id': 'sim_01F2ABCD3EFGHIJKL' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_storage_policy_assignment_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_storage_policy_assignment_example_call_tool.js deleted file mode 100644 index 8be895122..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_storage_policy_assignment_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteStoragePolicyAssignment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "storage_policy_assignment_id": "spa_12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_storage_policy_assignment_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_storage_policy_assignment_example_call_tool.py deleted file mode 100644 index 1cfa4b3df..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_storage_policy_assignment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteStoragePolicyAssignment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'storage_policy_assignment_id': 'spa_12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_task_assignment_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_task_assignment_example_call_tool.js deleted file mode 100644 index 58ef5065f..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_task_assignment_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteTaskAssignment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_assignment_id": "ta_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_task_assignment_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_task_assignment_example_call_tool.py deleted file mode 100644 index 2875dda65..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_task_assignment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteTaskAssignment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_assignment_id': 'ta_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_task_from_file_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_task_from_file_example_call_tool.js deleted file mode 100644 index 048bd5594..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_task_from_file_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteTaskFromFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_identifier": "task-3a9f2b" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_task_from_file_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_task_from_file_example_call_tool.py deleted file mode 100644 index 483d4d665..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_task_from_file_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteTaskFromFile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_identifier': 'task-3a9f2b' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_teams_integration_mapping_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_teams_integration_mapping_example_call_tool.js deleted file mode 100644 index a665c82c1..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_teams_integration_mapping_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteTeamsIntegrationMapping"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_mapping_identifier": "teams-mapping-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_teams_integration_mapping_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_teams_integration_mapping_example_call_tool.py deleted file mode 100644 index 82572d449..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_teams_integration_mapping_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteTeamsIntegrationMapping" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_mapping_identifier': 'teams-mapping-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_user_account_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_user_account_example_call_tool.js deleted file mode 100644 index f191d31a0..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_user_account_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteUserAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "user_7890", - "send_deletion_notification": true, - "force_delete_user": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_user_account_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_user_account_example_call_tool.py deleted file mode 100644 index 850fe5c45..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_user_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteUserAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': 'user_7890', 'send_deletion_notification': True, 'force_delete_user': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_web_link_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_web_link_example_call_tool.js deleted file mode 100644 index b2c16825d..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_web_link_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteWebLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "web_link_id": "wl_9a7b3c" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_web_link_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_web_link_example_call_tool.py deleted file mode 100644 index 3d559078e..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_web_link_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteWebLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'web_link_id': 'wl_9a7b3c' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/delete_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/delete_webhook_example_call_tool.js deleted file mode 100644 index fc88c3506..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_webhook_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DeleteWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": "wh_12345abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/delete_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/delete_webhook_example_call_tool.py deleted file mode 100644 index 7f5007acb..000000000 --- a/public/examples/integrations/mcp-servers/box_api/delete_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DeleteWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': 'wh_12345abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/download_file_content_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/download_file_content_example_call_tool.js deleted file mode 100644 index 708f8fa53..000000000 --- a/public/examples/integrations/mcp-servers/box_api/download_file_content_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DownloadFileContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "f_9a8b7c6d", - "file_version_to_download": "v2", - "optional_access_token": "rk-read-12345", - "download_byte_range": "bytes=0-1048575", - "shared_link_with_optional_password": "shared_link=https://files.example.com/s/abc123&shared_link_password=secret" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/download_file_content_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/download_file_content_example_call_tool.py deleted file mode 100644 index b3924dab0..000000000 --- a/public/examples/integrations/mcp-servers/box_api/download_file_content_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DownloadFileContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': 'f_9a8b7c6d', - 'file_version_to_download': 'v2', - 'optional_access_token': 'rk-read-12345', - 'download_byte_range': 'bytes=0-1048575', - 'shared_link_with_optional_password': 'shared_link=https://files.example.com/s/abc123&shared_link_password=secret' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/download_zip_content_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/download_zip_content_example_call_tool.js deleted file mode 100644 index cacc4ebc9..000000000 --- a/public/examples/integrations/mcp-servers/box_api/download_zip_content_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.DownloadZipContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "zip_archive_unique_id": "zip_01H7XYZABC123example" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/download_zip_content_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/download_zip_content_example_call_tool.py deleted file mode 100644 index 6ec7faefe..000000000 --- a/public/examples/integrations/mcp-servers/box_api/download_zip_content_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.DownloadZipContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'zip_archive_unique_id': 'zip_01H7XYZABC123example' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_box_sign_template_details_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/fetch_box_sign_template_details_example_call_tool.js deleted file mode 100644 index 04548e445..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_box_sign_template_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.FetchBoxSignTemplateDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "box_sign_template_id": "tmpl_12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_box_sign_template_details_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/fetch_box_sign_template_details_example_call_tool.py deleted file mode 100644 index 5baa46dab..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_box_sign_template_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.FetchBoxSignTemplateDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'box_sign_template_id': 'tmpl_12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_comment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/fetch_comment_details_example_call_tool.js deleted file mode 100644 index a9bd0093c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_comment_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.FetchCommentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": "cmt_8f3a12b9", - "include_fields": [ - "message", - "creator", - "created_at", - "attachments" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_comment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/fetch_comment_details_example_call_tool.py deleted file mode 100644 index 07888f2b5..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_comment_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.FetchCommentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': 'cmt_8f3a12b9', - 'include_fields': ['message', 'creator', 'created_at', 'attachments'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_enterprise_storage_policies_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/fetch_enterprise_storage_policies_example_call_tool.js deleted file mode 100644 index 29d3f075d..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_enterprise_storage_policies_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.FetchEnterpriseStoragePolicies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_attributes": [ - "creation_date", - "retention_period" - ], - "pagination_marker": "abc123marker", - "max_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_enterprise_storage_policies_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/fetch_enterprise_storage_policies_example_call_tool.py deleted file mode 100644 index 8f318b6fc..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_enterprise_storage_policies_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.FetchEnterpriseStoragePolicies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_attributes': ['creation_date', 'retention_period'], - 'pagination_marker': 'abc123marker', - 'max_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_metadata_template_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/fetch_metadata_template_by_id_example_call_tool.js deleted file mode 100644 index 2037b0d1a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_metadata_template_by_id_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.FetchMetadataTemplateById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "template_id": "mt_12345abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_metadata_template_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/fetch_metadata_template_by_id_example_call_tool.py deleted file mode 100644 index 49f46baea..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_metadata_template_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.FetchMetadataTemplateById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'template_id': 'mt_12345abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_safe_collaboration_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/fetch_safe_collaboration_domain_example_call_tool.js deleted file mode 100644 index 5445c9057..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_safe_collaboration_domain_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.FetchSafeCollaborationDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collaboration_whitelist_entry_id": "whitelist-entry-7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_safe_collaboration_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/fetch_safe_collaboration_domain_example_call_tool.py deleted file mode 100644 index a1fc133fd..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_safe_collaboration_domain_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.FetchSafeCollaborationDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collaboration_whitelist_entry_id': 'whitelist-entry-7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_shield_barrier_report_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/fetch_shield_barrier_report_example_call_tool.js deleted file mode 100644 index 1109da024..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_shield_barrier_report_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.FetchShieldBarrierReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shield_barrier_report_id": "rpt_1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_shield_barrier_report_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/fetch_shield_barrier_report_example_call_tool.py deleted file mode 100644 index 1fff1b54a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_shield_barrier_report_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.FetchShieldBarrierReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shield_barrier_report_id': 'rpt_1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_signature_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/fetch_signature_requests_example_call_tool.js deleted file mode 100644 index c77f2c10a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_signature_requests_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.FetchSignatureRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_marker": "abc123", - "max_items_per_page": 25, - "sender_email_list": [ - "alice@example.com", - "bob@example.com" - ], - "include_shared_requests": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_signature_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/fetch_signature_requests_example_call_tool.py deleted file mode 100644 index e7a46d821..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_signature_requests_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.FetchSignatureRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_marker': 'abc123', - 'max_items_per_page': 25, - 'sender_email_list': ['alice@example.com', 'bob@example.com'], - 'include_shared_requests': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_assignment_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_assignment_example_call_tool.js deleted file mode 100644 index 7890b6d32..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_assignment_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.FetchStoragePolicyAssignment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "storage_policy_assignment_id": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_assignment_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_assignment_example_call_tool.py deleted file mode 100644 index a8f09f28a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_assignment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.FetchStoragePolicyAssignment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'storage_policy_assignment_id': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_assignments_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_assignments_example_call_tool.js deleted file mode 100644 index f2e23f61b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_assignments_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.FetchStoragePolicyAssignments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_type_for_assignments": "user", - "target_user_or_enterprise_id": "1234567890", - "pagination_marker": "marker_1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_assignments_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_assignments_example_call_tool.py deleted file mode 100644 index 9bfe0db3a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_assignments_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.FetchStoragePolicyAssignments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_type_for_assignments': 'user', - 'target_user_or_enterprise_id': '1234567890', - 'pagination_marker': 'marker_1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_example_call_tool.js deleted file mode 100644 index 0435c19a9..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.FetchStoragePolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "storage_policy_identifier": "policy-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_example_call_tool.py deleted file mode 100644 index d71095231..000000000 --- a/public/examples/integrations/mcp-servers/box_api/fetch_storage_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.FetchStoragePolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'storage_policy_identifier': 'policy-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/find_metadata_template_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/find_metadata_template_example_call_tool.js deleted file mode 100644 index 52d6ecf6c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/find_metadata_template_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.FindMetadataTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metadata_instance_id": "tmpl_12345", - "pagination_position_marker": "marker_abc", - "items_per_page_limit": 25 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/find_metadata_template_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/find_metadata_template_example_call_tool.py deleted file mode 100644 index 50eb3fadd..000000000 --- a/public/examples/integrations/mcp-servers/box_api/find_metadata_template_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.FindMetadataTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metadata_instance_id': 'tmpl_12345', - 'pagination_position_marker': 'marker_abc', - 'items_per_page_limit': 25 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_ai_agent_default_config_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_ai_agent_default_config_example_call_tool.js deleted file mode 100644 index 51c1435a3..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_ai_agent_default_config_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetAiAgentDefaultConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_mode": "text_gen", - "agent_config_language_code": "en", - "model_identifier": "gpt-4o-mini" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_ai_agent_default_config_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_ai_agent_default_config_example_call_tool.py deleted file mode 100644 index 1107cc69b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_ai_agent_default_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetAiAgentDefaultConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_mode': 'text_gen', 'agent_config_language_code': 'en', 'model_identifier': 'gpt-4o-mini' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_ai_agent_details_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_ai_agent_details_example_call_tool.js deleted file mode 100644 index ee51134aa..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_ai_agent_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetAiAgentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_unique_identifier": "agent_9f8b3c2a", - "fields_to_return": [ - "name", - "status", - "created_at", - "capabilities" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_ai_agent_details_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_ai_agent_details_example_call_tool.py deleted file mode 100644 index c50abd35a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_ai_agent_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetAiAgentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_unique_identifier': 'agent_9f8b3c2a', - 'fields_to_return': ['name', 'status', 'created_at', 'capabilities'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_authenticated_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_authenticated_user_info_example_call_tool.js deleted file mode 100644 index 087145d61..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_authenticated_user_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetAuthenticatedUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "requested_user_attributes": [ - "email", - "phone_number", - "roles", - "profile_picture_url" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_authenticated_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_authenticated_user_info_example_call_tool.py deleted file mode 100644 index d4220dd1b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_authenticated_user_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetAuthenticatedUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'requested_user_attributes': ['email', 'phone_number', 'roles', 'profile_picture_url'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_box_docgen_job_details_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_box_docgen_job_details_example_call_tool.js deleted file mode 100644 index 78a1d9196..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_box_docgen_job_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetBoxDocgenJobDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "box_doc_gen_job_id": "job_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_box_docgen_job_details_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_box_docgen_job_details_example_call_tool.py deleted file mode 100644 index 238c748ea..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_box_docgen_job_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetBoxDocgenJobDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'box_doc_gen_job_id': 'job_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_box_docgen_template_details_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_box_docgen_template_details_example_call_tool.js deleted file mode 100644 index a99742ded..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_box_docgen_template_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetBoxDocgenTemplateDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "box_docgen_template_id": "tmpl_12345ABC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_box_docgen_template_details_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_box_docgen_template_details_example_call_tool.py deleted file mode 100644 index 5097fdcd3..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_box_docgen_template_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetBoxDocgenTemplateDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'box_docgen_template_id': 'tmpl_12345ABC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_box_events_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_box_events_example_call_tool.js deleted file mode 100644 index 2022047ec..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_box_events_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetBoxEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_stream_type": "admin_logs", - "event_stream_start_position": "0", - "event_limit": 100, - "event_type_filter": [ - "LOGIN", - "ITEM_CREATE", - "ITEM_UPLOAD" - ], - "event_start_date": "2024-01-01T00:00:00Z", - "event_time_upper_bound": "2024-06-30T23:59:59Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_box_events_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_box_events_example_call_tool.py deleted file mode 100644 index ae8607782..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_box_events_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetBoxEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_stream_type': 'admin_logs', - 'event_stream_start_position': '0', - 'event_limit': 100, - 'event_type_filter': ['LOGIN', 'ITEM_CREATE', 'ITEM_UPLOAD'], - 'event_start_date': '2024-01-01T00:00:00Z', - 'event_time_upper_bound': '2024-06-30T23:59:59Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_box_hub_collaboration_details_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_box_hub_collaboration_details_example_call_tool.js deleted file mode 100644 index 9e8f82d6e..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_box_hub_collaboration_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetBoxHubCollaborationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hub_collaboration_id": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_box_hub_collaboration_details_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_box_hub_collaboration_details_example_call_tool.py deleted file mode 100644 index 6bfaedf47..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_box_hub_collaboration_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetBoxHubCollaborationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hub_collaboration_id': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_box_hubs_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_box_hubs_example_call_tool.js deleted file mode 100644 index fe6112a03..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_box_hubs_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetBoxHubs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hub_search_query": "design templates", - "hub_scope": "editable", - "sort_results_by": "updated_at", - "sort_direction": "DESC", - "pagination_start_marker": "marker_42", - "max_items_per_page": 25 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_box_hubs_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_box_hubs_example_call_tool.py deleted file mode 100644 index 7b04d2749..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_box_hubs_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetBoxHubs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hub_search_query': 'design templates', - 'hub_scope': 'editable', - 'sort_results_by': 'updated_at', - 'sort_direction': 'DESC', - 'pagination_start_marker': 'marker_42', - 'max_items_per_page': 25 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_box_sign_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_box_sign_templates_example_call_tool.js deleted file mode 100644 index b4cedff38..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_box_sign_templates_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetBoxSignTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_marker": "abc123marker", - "max_items_per_page": 25 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_box_sign_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_box_sign_templates_example_call_tool.py deleted file mode 100644 index edb44c9ca..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_box_sign_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetBoxSignTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_marker': 'abc123marker', 'max_items_per_page': 25 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_box_skills_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_box_skills_metadata_example_call_tool.js deleted file mode 100644 index 1b49d0af8..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_box_skills_metadata_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetBoxSkillsMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_id": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_box_skills_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_box_skills_metadata_example_call_tool.py deleted file mode 100644 index 5017cbd1e..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_box_skills_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetBoxSkillsMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_id': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_classification_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_classification_metadata_example_call_tool.js deleted file mode 100644 index 0075400ec..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_classification_metadata_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetClassificationMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_classification_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_classification_metadata_example_call_tool.py deleted file mode 100644 index 965bf05d0..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_classification_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetClassificationMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_collaboration_details_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_collaboration_details_example_call_tool.js deleted file mode 100644 index 9cd199873..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_collaboration_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetCollaborationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collaboration_id": "col_9a1b2c3d", - "include_fields": [ - "auditTrail", - "participantRoles" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_collaboration_details_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_collaboration_details_example_call_tool.py deleted file mode 100644 index a2f4595b0..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_collaboration_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetCollaborationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collaboration_id': 'col_9a1b2c3d', 'include_fields': ['auditTrail', 'participantRoles'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_collaboration_whitelist_exempt_user_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_collaboration_whitelist_exempt_user_example_call_tool.js deleted file mode 100644 index 9c4b9cc53..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_collaboration_whitelist_exempt_user_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetCollaborationWhitelistExemptUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exemption_target_id": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_collaboration_whitelist_exempt_user_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_collaboration_whitelist_exempt_user_example_call_tool.py deleted file mode 100644 index 8e97e2c8b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_collaboration_whitelist_exempt_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetCollaborationWhitelistExemptUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exemption_target_id': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_collaboration_whitelist_exempt_users_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_collaboration_whitelist_exempt_users_example_call_tool.js deleted file mode 100644 index 3c6b8be06..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_collaboration_whitelist_exempt_users_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetCollaborationWhitelistExemptUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_position_marker": "marker_abc123", - "max_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_collaboration_whitelist_exempt_users_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_collaboration_whitelist_exempt_users_example_call_tool.py deleted file mode 100644 index 796ae04df..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_collaboration_whitelist_exempt_users_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetCollaborationWhitelistExemptUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_position_marker': 'marker_abc123', 'max_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_device_pin_info_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_device_pin_info_example_call_tool.js deleted file mode 100644 index 4ad79a266..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_device_pin_info_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetDevicePinInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "device_pin_identifier": "pin-42" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_device_pin_info_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_device_pin_info_example_call_tool.py deleted file mode 100644 index 30b81c7f4..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_device_pin_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetDevicePinInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'device_pin_identifier': 'pin-42' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_enterprise_box_hubs_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_enterprise_box_hubs_example_call_tool.js deleted file mode 100644 index dcc24017b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_enterprise_box_hubs_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetEnterpriseBoxHubs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query_for_box_hubs": "engineering roadmap", - "sort_results_by": "updated_at", - "sort_direction": "DESC", - "pagination_marker": "marker_abc123", - "max_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_enterprise_box_hubs_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_enterprise_box_hubs_example_call_tool.py deleted file mode 100644 index 877e336fd..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_enterprise_box_hubs_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetEnterpriseBoxHubs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query_for_box_hubs': 'engineering roadmap', - 'sort_results_by': 'updated_at', - 'sort_direction': 'DESC', - 'pagination_marker': 'marker_abc123', - 'max_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_enterprise_device_pins_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_enterprise_device_pins_example_call_tool.js deleted file mode 100644 index c1ed6997b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_enterprise_device_pins_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetEnterpriseDevicePins"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "ent_abc123", - "pagination_start_marker": "marker_001", - "max_items_per_page": 50, - "sort_direction": "ASC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_enterprise_device_pins_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_enterprise_device_pins_example_call_tool.py deleted file mode 100644 index 845c8fcc4..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_enterprise_device_pins_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetEnterpriseDevicePins" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': 'ent_abc123', - 'pagination_start_marker': 'marker_001', - 'max_items_per_page': 50, - 'sort_direction': 'ASC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_enterprise_retention_policies_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_enterprise_retention_policies_example_call_tool.js deleted file mode 100644 index c2f82ffcb..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_enterprise_retention_policies_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetEnterpriseRetentionPolicies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_policy_name_prefix": "HR-", - "filter_by_retention_policy_type": "finite", - "filter_by_creator_user_id": "u_98765", - "include_fields": [ - "id", - "name", - "type", - "duration_days" - ], - "maximum_items_per_page": 50, - "pagination_start_marker": "marker_abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_enterprise_retention_policies_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_enterprise_retention_policies_example_call_tool.py deleted file mode 100644 index 9ff2e7d0e..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_enterprise_retention_policies_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetEnterpriseRetentionPolicies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_policy_name_prefix': 'HR-', - 'filter_by_retention_policy_type': 'finite', - 'filter_by_creator_user_id': 'u_98765', - 'include_fields': ['id', 'name', 'type', 'duration_days'], - 'maximum_items_per_page': 50, - 'pagination_start_marker': 'marker_abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_enterprise_shield_lists_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_enterprise_shield_lists_example_call_tool.js deleted file mode 100644 index 27814cad1..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_enterprise_shield_lists_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetEnterpriseShieldLists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_enterprise_shield_lists_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_enterprise_shield_lists_example_call_tool.py deleted file mode 100644 index f6bd6ea3b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_enterprise_shield_lists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetEnterpriseShieldLists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_enterprise_terms_of_service_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_enterprise_terms_of_service_example_call_tool.js deleted file mode 100644 index 860d3b9f8..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_enterprise_terms_of_service_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetEnterpriseTermsOfService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "terms_of_service_type": "external" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_enterprise_terms_of_service_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_enterprise_terms_of_service_example_call_tool.py deleted file mode 100644 index d5a7ffdba..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_enterprise_terms_of_service_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetEnterpriseTermsOfService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'terms_of_service_type': 'external' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_app_associations_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_file_app_associations_example_call_tool.js deleted file mode 100644 index b38177055..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_app_associations_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFileAppAssociations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "1234567890", - "items_per_page_limit": 50, - "pagination_marker": "marker_abc123", - "filter_by_application_type": "com.box.thirdparty.app" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_app_associations_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_file_app_associations_example_call_tool.py deleted file mode 100644 index f42e305a8..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_app_associations_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFileAppAssociations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '1234567890', - 'items_per_page_limit': 50, - 'pagination_marker': 'marker_abc123', - 'filter_by_application_type': 'com.box.thirdparty.app' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_classification_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_file_classification_metadata_example_call_tool.js deleted file mode 100644 index 079b6559c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_classification_metadata_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFileClassificationMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_classification_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_file_classification_metadata_example_call_tool.py deleted file mode 100644 index 54ef7d047..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_classification_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFileClassificationMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_collaborations_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_file_collaborations_example_call_tool.js deleted file mode 100644 index 403c062dc..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_collaborations_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFileCollaborations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "1234567890", - "requested_fields": [ - "role", - "status", - "created_at" - ], - "max_items_per_page": 50, - "pagination_start_marker": "abc123marker" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_collaborations_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_file_collaborations_example_call_tool.py deleted file mode 100644 index e3286c8d6..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_collaborations_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFileCollaborations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '1234567890', - 'requested_fields': ['role', 'status', 'created_at'], - 'max_items_per_page': 50, - 'pagination_start_marker': 'abc123marker' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_file_comments_example_call_tool.js deleted file mode 100644 index cbaf2c9a6..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_comments_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFileComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "123456789", - "include_fields_in_response": [ - "id", - "message", - "created_by", - "created_at" - ], - "maximum_items_per_page": 50, - "response_start_offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_file_comments_example_call_tool.py deleted file mode 100644 index e8a27d4a9..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_comments_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFileComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '123456789', - 'include_fields_in_response': ['id', 'message', 'created_by', 'created_at'], - 'maximum_items_per_page': 50, - 'response_start_offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_file_tasks_example_call_tool.js deleted file mode 100644 index 46435a398..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_tasks_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFileTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_file_tasks_example_call_tool.py deleted file mode 100644 index 48e02f9c5..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_tasks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFileTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_version_history_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_file_version_history_example_call_tool.js deleted file mode 100644 index 4129123b0..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_version_history_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFileVersionHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "123456789", - "requested_fields": [ - "version_number", - "modified_at", - "modified_by", - "size" - ], - "max_items_per_page": 25, - "response_start_offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_version_history_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_file_version_history_example_call_tool.py deleted file mode 100644 index 57bf8a67a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_version_history_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFileVersionHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '123456789', - 'requested_fields': ['version_number', 'modified_at', 'modified_by', 'size'], - 'max_items_per_page': 25, - 'response_start_offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_version_retention_info_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_file_version_retention_info_example_call_tool.js deleted file mode 100644 index 7f3085d0c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_version_retention_info_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFileVersionRetentionInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_version_retention_id": "ret_12345abcd" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_version_retention_info_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_file_version_retention_info_example_call_tool.py deleted file mode 100644 index 06e4f7f5d..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_version_retention_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFileVersionRetentionInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_version_retention_id': 'ret_12345abcd' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_version_retentions_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_file_version_retentions_example_call_tool.js deleted file mode 100644 index b4f5759b9..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_version_retentions_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFileVersionRetentions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_file_id": "1234567890", - "filter_by_file_version_id": "v1.2.3", - "retention_policy_id": "ret-pol-001", - "filter_by_disposition_action": "permanently_delete", - "filter_by_disposition_before_date": "2025-12-31", - "disposition_effective_after_date": "2025-01-01", - "max_items_per_page": 100, - "pagination_start_marker": "marker_abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_version_retentions_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_file_version_retentions_example_call_tool.py deleted file mode 100644 index 5c74b0280..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_version_retentions_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFileVersionRetentions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_file_id': '1234567890', - 'filter_by_file_version_id': 'v1.2.3', - 'retention_policy_id': 'ret-pol-001', - 'filter_by_disposition_action': 'permanently_delete', - 'filter_by_disposition_before_date': '2025-12-31', - 'disposition_effective_after_date': '2025-01-01', - 'max_items_per_page': 100, - 'pagination_start_marker': 'marker_abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_versions_on_legal_hold_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_file_versions_on_legal_hold_example_call_tool.js deleted file mode 100644 index c67dfbdd5..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_versions_on_legal_hold_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFileVersionsOnLegalHold"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "legal_hold_policy_assignment_id": "lhpa_987654321", - "pagination_start_marker": "mkr_0001", - "max_items_per_page": 50, - "include_additional_fields_in_response": [ - "file_name", - "version_id", - "modified_at" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_versions_on_legal_hold_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_file_versions_on_legal_hold_example_call_tool.py deleted file mode 100644 index e5d2610f4..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_versions_on_legal_hold_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFileVersionsOnLegalHold" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'legal_hold_policy_assignment_id': 'lhpa_987654321', - 'pagination_start_marker': 'mkr_0001', - 'max_items_per_page': 50, - 'include_additional_fields_in_response': ['file_name', 'version_id', 'modified_at'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_versions_under_retention_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_file_versions_under_retention_example_call_tool.js deleted file mode 100644 index 8620d78fd..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_versions_under_retention_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFileVersionsUnderRetention"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "retention_policy_assignment_id": "rpa_7890abcd", - "pagination_start_marker": "marker_100", - "max_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_versions_under_retention_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_file_versions_under_retention_example_call_tool.py deleted file mode 100644 index aa245a90e..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_versions_under_retention_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFileVersionsUnderRetention" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'retention_policy_assignment_id': 'rpa_7890abcd', - 'pagination_start_marker': 'marker_100', - 'max_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_watermark_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_file_watermark_example_call_tool.js deleted file mode 100644 index 3384382ae..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_watermark_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFileWatermark"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "file_12345abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_file_watermark_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_file_watermark_example_call_tool.py deleted file mode 100644 index 0fdf10f6c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_file_watermark_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFileWatermark" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': 'file_12345abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_files_on_legal_hold_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_files_on_legal_hold_example_call_tool.js deleted file mode 100644 index 3f276d518..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_files_on_legal_hold_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFilesOnLegalHold"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "legal_hold_policy_assignment_id": "assign_7890", - "pagination_marker": "marker_abc123", - "maximum_items_per_page": 50, - "included_attributes": [ - "file_id", - "file_name", - "current_version", - "hold_created_at" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_files_on_legal_hold_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_files_on_legal_hold_example_call_tool.py deleted file mode 100644 index 0ad7d8b4b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_files_on_legal_hold_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFilesOnLegalHold" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'legal_hold_policy_assignment_id': 'assign_7890', - 'pagination_marker': 'marker_abc123', - 'maximum_items_per_page': 50, - 'included_attributes': ['file_id', 'file_name', 'current_version', 'hold_created_at'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_folder_app_item_associations_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_folder_app_item_associations_example_call_tool.js deleted file mode 100644 index 81ddc95bb..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_folder_app_item_associations_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFolderAppItemAssociations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": "1234567890", - "max_items_per_page": 50, - "pagination_start_marker": "marker_abc123", - "filter_by_application_type": "dashboard" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_folder_app_item_associations_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_folder_app_item_associations_example_call_tool.py deleted file mode 100644 index 68bf4d41c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_folder_app_item_associations_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFolderAppItemAssociations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': '1234567890', - 'max_items_per_page': 50, - 'pagination_start_marker': 'marker_abc123', - 'filter_by_application_type': 'dashboard' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_folder_classification_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_folder_classification_example_call_tool.js deleted file mode 100644 index cc731c625..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_folder_classification_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFolderClassification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": "0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_folder_classification_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_folder_classification_example_call_tool.py deleted file mode 100644 index e6da1a60f..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_folder_classification_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFolderClassification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': '0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_folder_collaborations_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_folder_collaborations_example_call_tool.js deleted file mode 100644 index 22e686560..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_folder_collaborations_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFolderCollaborations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": "12345", - "included_attributes": [ - "role", - "status", - "invited_at" - ], - "max_items_per_page": 50, - "start_position_marker": "abc123marker" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_folder_collaborations_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_folder_collaborations_example_call_tool.py deleted file mode 100644 index 1defe8d20..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_folder_collaborations_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFolderCollaborations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': '12345', - 'included_attributes': ['role', 'status', 'invited_at'], - 'max_items_per_page': 50, - 'start_position_marker': 'abc123marker' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_folder_details_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_folder_details_example_call_tool.js deleted file mode 100644 index b12c67669..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_folder_details_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFolderDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_unique_identifier": "456", - "requested_fields": [ - "id", - "name", - "size", - "created_at", - "shared_link" - ], - "secondary_sort_attribute": "name", - "sort_direction": "ASC", - "response_offset": 0, - "max_items_per_page": 50, - "ensure_item_has_changed": "0a1b2c3d4e", - "shared_link_credentials": "shared_link=https://app.box.com/s/abcdef&shared_link_password=Tr0ub4dor" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_folder_details_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_folder_details_example_call_tool.py deleted file mode 100644 index 984fd81fe..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_folder_details_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFolderDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_unique_identifier': '456', - 'requested_fields': ['id', 'name', 'size', 'created_at', 'shared_link'], - 'secondary_sort_attribute': 'name', - 'sort_direction': 'ASC', - 'response_offset': 0, - 'max_items_per_page': 50, - 'ensure_item_has_changed': '0a1b2c3d4e', - 'shared_link_credentials': 'shared_link=https://app.box.com/s/abcdef&shared_link_password=Tr0ub4dor' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_folder_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_folder_metadata_example_call_tool.js deleted file mode 100644 index 904755a8f..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_folder_metadata_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFolderMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": "1234567890", - "metadata_scope": "enterprise", - "metadata_template_name": "ProjectDetails" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_folder_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_folder_metadata_example_call_tool.py deleted file mode 100644 index d66ff8863..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_folder_metadata_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFolderMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': '1234567890', - 'metadata_scope': 'enterprise', - 'metadata_template_name': 'ProjectDetails' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_folder_shared_link_info_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_folder_shared_link_info_example_call_tool.js deleted file mode 100644 index d49faf550..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_folder_shared_link_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFolderSharedLinkInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_shared_link_fields": "true", - "folder_identifier": "123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_folder_shared_link_info_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_folder_shared_link_info_example_call_tool.py deleted file mode 100644 index 0c2ccf93e..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_folder_shared_link_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFolderSharedLinkInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_shared_link_fields': 'true', 'folder_identifier': '123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_folder_watermark_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_folder_watermark_example_call_tool.js deleted file mode 100644 index 8f2d3af0c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_folder_watermark_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetFolderWatermark"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_folder_watermark_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_folder_watermark_example_call_tool.py deleted file mode 100644 index c06677590..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_folder_watermark_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetFolderWatermark" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_group_collaborations_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_group_collaborations_example_call_tool.js deleted file mode 100644 index 65a22478f..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_group_collaborations_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetGroupCollaborations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_id": "12345", - "max_items_per_page": 50, - "response_offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_group_collaborations_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_group_collaborations_example_call_tool.py deleted file mode 100644 index 7f1a26b0a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_group_collaborations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetGroupCollaborations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_id': '12345', 'max_items_per_page': 50, 'response_offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_legacy_file_version_legal_holds_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_legacy_file_version_legal_holds_example_call_tool.js deleted file mode 100644 index 707ab356c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_legacy_file_version_legal_holds_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetLegacyFileVersionLegalHolds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "legal_hold_policy_id": "lh_policy_789", - "pagination_marker": "marker_abc123", - "max_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_legacy_file_version_legal_holds_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_legacy_file_version_legal_holds_example_call_tool.py deleted file mode 100644 index de30519fc..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_legacy_file_version_legal_holds_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetLegacyFileVersionLegalHolds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'legal_hold_policy_id': 'lh_policy_789', - 'pagination_marker': 'marker_abc123', - 'max_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_legal_hold_policy_assignments_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_legal_hold_policy_assignments_example_call_tool.js deleted file mode 100644 index aa60668d8..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_legal_hold_policy_assignments_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetLegalHoldPolicyAssignments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "legal_hold_policy_id": "lh_9f8a7b6c", - "filter_by_assignment_type": "file", - "filter_by_item_id": "1234567890", - "pagination_marker": "marker_abc123", - "maximum_items_per_page": 50, - "response_fields": [ - "id", - "assigned_at", - "assigned_by", - "item_type" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_legal_hold_policy_assignments_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_legal_hold_policy_assignments_example_call_tool.py deleted file mode 100644 index c136b1b9b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_legal_hold_policy_assignments_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetLegalHoldPolicyAssignments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'legal_hold_policy_id': 'lh_9f8a7b6c', - 'filter_by_assignment_type': 'file', - 'filter_by_item_id': '1234567890', - 'pagination_marker': 'marker_abc123', - 'maximum_items_per_page': 50, - 'response_fields': ['id', 'assigned_at', 'assigned_by', 'item_type'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_manual_start_workflows_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_manual_start_workflows_example_call_tool.js deleted file mode 100644 index 859ac8230..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_manual_start_workflows_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetManualStartWorkflows"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id": "123456789", - "trigger_type_filter": "WORKFLOW_MANUAL_START", - "max_items_per_page": 50, - "pagination_marker": "marker_abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_manual_start_workflows_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_manual_start_workflows_example_call_tool.py deleted file mode 100644 index 141713b5b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_manual_start_workflows_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetManualStartWorkflows" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id': '123456789', - 'trigger_type_filter': 'WORKFLOW_MANUAL_START', - 'max_items_per_page': 50, - 'pagination_marker': 'marker_abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_metadata_cascade_policies_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_metadata_cascade_policies_example_call_tool.js deleted file mode 100644 index 76382694e..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_metadata_cascade_policies_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetMetadataCascadePolicies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_folder_id": "123456789", - "owner_enterprise_id": "987654321", - "pagination_marker": "abcMarker", - "response_offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_metadata_cascade_policies_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_metadata_cascade_policies_example_call_tool.py deleted file mode 100644 index 261a055dc..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_metadata_cascade_policies_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetMetadataCascadePolicies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_folder_id': '123456789', - 'owner_enterprise_id': '987654321', - 'pagination_marker': 'abcMarker', - 'response_offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_pending_collaboration_invites_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_pending_collaboration_invites_example_call_tool.js deleted file mode 100644 index 87f6fbfb2..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_pending_collaboration_invites_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetPendingCollaborationInvites"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collaboration_status": "pending", - "include_attributes": [ - "id", - "created_by", - "created_at", - "item", - "role", - "status" - ], - "starting_item_offset": 0, - "maximum_items_per_page": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_pending_collaboration_invites_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_pending_collaboration_invites_example_call_tool.py deleted file mode 100644 index 794286589..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_pending_collaboration_invites_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetPendingCollaborationInvites" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collaboration_status': 'pending', - 'include_attributes': ['id', 'created_by', 'created_at', 'item', 'role', 'status'], - 'starting_item_offset': 0, - 'maximum_items_per_page': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_recent_items_info_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_recent_items_info_example_call_tool.js deleted file mode 100644 index 84caf1db6..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_recent_items_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetRecentItemsInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_additional_fields": [ - "size", - "created_by", - "parent" - ], - "max_items_per_page": 100, - "pagination_start_marker": "marker_abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_recent_items_info_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_recent_items_info_example_call_tool.py deleted file mode 100644 index e8359bac5..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_recent_items_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetRecentItemsInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_additional_fields': ['size', 'created_by', 'parent'], - 'max_items_per_page': 100, - 'pagination_start_marker': 'marker_abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_retention_policy_assignments_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_retention_policy_assignments_example_call_tool.js deleted file mode 100644 index 0c2b0787d..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_retention_policy_assignments_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetRetentionPolicyAssignments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "retention_policy_id": "rp_9a3f2b", - "assignment_type": "folder", - "include_fields_in_response": [ - "assigned_to", - "created_by" - ], - "pagination_start_marker": "m_0", - "max_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_retention_policy_assignments_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_retention_policy_assignments_example_call_tool.py deleted file mode 100644 index 5d1b36531..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_retention_policy_assignments_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetRetentionPolicyAssignments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'retention_policy_id': 'rp_9a3f2b', - 'assignment_type': 'folder', - 'include_fields_in_response': ['assigned_to', 'created_by'], - 'pagination_start_marker': 'm_0', - 'max_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_retention_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_retention_policy_example_call_tool.js deleted file mode 100644 index 0ccbbabf7..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_retention_policy_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetRetentionPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "retention_policy_id": "rp_12345", - "include_attributes": [ - "name", - "rules", - "created_by" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_retention_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_retention_policy_example_call_tool.py deleted file mode 100644 index c6fe3e62a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_retention_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetRetentionPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'retention_policy_id': 'rp_12345', 'include_attributes': ['name', 'rules', 'created_by'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_safe_collaboration_domains_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_safe_collaboration_domains_example_call_tool.js deleted file mode 100644 index d5b8fc432..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_safe_collaboration_domains_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetSafeCollaborationDomains"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_start_marker": "marker_abc123", - "maximum_items_per_page": 25 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_safe_collaboration_domains_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_safe_collaboration_domains_example_call_tool.py deleted file mode 100644 index eccf5ddeb..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_safe_collaboration_domains_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetSafeCollaborationDomains" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_start_marker': 'marker_abc123', 'maximum_items_per_page': 25 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_shared_app_item_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_shared_app_item_example_call_tool.js deleted file mode 100644 index 91a6e60c2..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shared_app_item_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetSharedAppItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shared_link_information": "shared_link=https://example.com/s/abc123&shared_link_password=secret" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_shared_app_item_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_shared_app_item_example_call_tool.py deleted file mode 100644 index 857335c95..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shared_app_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetSharedAppItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shared_link_information': 'shared_link=https://example.com/s/abc123&shared_link_password=secret' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_shared_folder_info_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_shared_folder_info_example_call_tool.js deleted file mode 100644 index 23b85bc83..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shared_folder_info_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetSharedFolderInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shared_link_header": "shared_link=https://cloud.example.com/s/AbCdEf&shared_link_password=tr0ub4dor", - "include_fields": [ - "id", - "name", - "size", - "created_at" - ], - "etag_condition": "\"3f80f-1b6-3e9\"" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_shared_folder_info_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_shared_folder_info_example_call_tool.py deleted file mode 100644 index 4748848e3..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shared_folder_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetSharedFolderInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shared_link_header': 'shared_link=https://cloud.example.com/s/AbCdEf&shared_link_password=tr0ub4dor', - 'include_fields': ['id', 'name', 'size', 'created_at'], - 'etag_condition': '"3f80f-1b6-3e9"' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_shared_link_info_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_shared_link_info_example_call_tool.js deleted file mode 100644 index 5efa9cb93..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shared_link_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetSharedLinkInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_shared_link_fields": "shared_link", - "file_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_shared_link_info_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_shared_link_info_example_call_tool.py deleted file mode 100644 index e72dd0b5c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shared_link_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetSharedLinkInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_shared_link_fields': 'shared_link', 'file_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_shared_web_link_info_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_shared_web_link_info_example_call_tool.js deleted file mode 100644 index 1c4c6d545..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shared_web_link_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetSharedWebLinkInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "request_shared_link_fields": "url,access,permissions", - "web_link_identifier": "wl_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_shared_web_link_info_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_shared_web_link_info_example_call_tool.py deleted file mode 100644 index a58836b8e..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shared_web_link_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetSharedWebLinkInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'request_shared_link_fields': 'url,access,permissions', 'web_link_identifier': 'wl_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_info_barrier_member_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_shield_info_barrier_member_example_call_tool.js deleted file mode 100644 index 9ae9bc218..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_info_barrier_member_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetShieldInfoBarrierMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id": "mbr_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_info_barrier_member_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_shield_info_barrier_member_example_call_tool.py deleted file mode 100644 index a332d243c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_info_barrier_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetShieldInfoBarrierMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id': 'mbr_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_info_barrier_segment_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_shield_info_barrier_segment_example_call_tool.js deleted file mode 100644 index e61134563..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_info_barrier_segment_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetShieldInfoBarrierSegment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "barrier_segment_id": "seg_abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_info_barrier_segment_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_shield_info_barrier_segment_example_call_tool.py deleted file mode 100644 index 763891dea..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_info_barrier_segment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetShieldInfoBarrierSegment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'barrier_segment_id': 'seg_abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_example_call_tool.js deleted file mode 100644 index d5a0cc19a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetShieldInformationBarrier"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shield_information_barrier_id": "sib_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_example_call_tool.py deleted file mode 100644 index fe37b8f8b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetShieldInformationBarrier" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shield_information_barrier_id': 'sib_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_reports_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_reports_example_call_tool.js deleted file mode 100644 index a64ca3149..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_reports_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetShieldInformationBarrierReports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shield_information_barrier_id": "sib_7890abcd", - "pagination_marker": "marker_2", - "maximum_items_per_page": 25 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_reports_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_reports_example_call_tool.py deleted file mode 100644 index 18f6248d1..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_reports_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetShieldInformationBarrierReports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shield_information_barrier_id': 'sib_7890abcd', - 'pagination_marker': 'marker_2', - 'maximum_items_per_page': 25 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_segment_info_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_segment_info_example_call_tool.js deleted file mode 100644 index a1a22361b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_segment_info_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetShieldInformationBarrierSegmentInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "segment_restriction_id": "sr_1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_segment_info_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_segment_info_example_call_tool.py deleted file mode 100644 index fd4798fb4..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_segment_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetShieldInformationBarrierSegmentInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'segment_restriction_id': 'sr_1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_segments_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_segments_example_call_tool.js deleted file mode 100644 index 4fdc2e1a7..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_segments_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetShieldInformationBarrierSegments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shield_information_barrier_id": "sib-12345", - "pagination_position_marker": "marker-2", - "maximum_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_segments_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_segments_example_call_tool.py deleted file mode 100644 index 67de4eadb..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barrier_segments_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetShieldInformationBarrierSegments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shield_information_barrier_id': 'sib-12345', - 'pagination_position_marker': 'marker-2', - 'maximum_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barriers_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_shield_information_barriers_example_call_tool.js deleted file mode 100644 index 5f73fe83b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barriers_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetShieldInformationBarriers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_marker": "abc123", - "max_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barriers_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_shield_information_barriers_example_call_tool.py deleted file mode 100644 index 8bd071750..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_information_barriers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetShieldInformationBarriers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_marker': 'abc123', 'max_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_information_restrictions_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_shield_information_restrictions_example_call_tool.js deleted file mode 100644 index b31286065..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_information_restrictions_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetShieldInformationRestrictions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "segment_id": "seg-8f3b12a7", - "pagination_position_marker": "marker-2", - "max_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_shield_information_restrictions_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_shield_information_restrictions_example_call_tool.py deleted file mode 100644 index 238f3b839..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_shield_information_restrictions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetShieldInformationRestrictions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'segment_id': 'seg-8f3b12a7', 'pagination_position_marker': 'marker-2', 'max_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_specific_terms_of_service_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_specific_terms_of_service_example_call_tool.js deleted file mode 100644 index 84e81cecb..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_specific_terms_of_service_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetSpecificTermsOfService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "terms_of_service_id": "tos_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_specific_terms_of_service_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_specific_terms_of_service_example_call_tool.py deleted file mode 100644 index 6c74d735a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_specific_terms_of_service_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetSpecificTermsOfService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'terms_of_service_id': 'tos_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_specific_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_specific_webhook_example_call_tool.js deleted file mode 100644 index bb5b9a31c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_specific_webhook_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetSpecificWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": "wh_12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_specific_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_specific_webhook_example_call_tool.py deleted file mode 100644 index 0a5342744..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_specific_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetSpecificWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': 'wh_12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_teams_integration_mappings_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_teams_integration_mappings_example_call_tool.js deleted file mode 100644 index 7153cd796..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_teams_integration_mappings_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetTeamsIntegrationMappings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mapped_item_type": "channel", - "mapped_item_id": "19:abc123def456ghi789@thread.tacv2", - "box_item_id_for_mappings": "1234567890", - "box_item_type": "folder" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_teams_integration_mappings_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_teams_integration_mappings_example_call_tool.py deleted file mode 100644 index c140c1f22..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_teams_integration_mappings_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetTeamsIntegrationMappings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mapped_item_type': 'channel', - 'mapped_item_id': '19:abc123def456ghi789@thread.tacv2', - 'box_item_id_for_mappings': '1234567890', - 'box_item_type': 'folder' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_upload_session_details_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_upload_session_details_example_call_tool.js deleted file mode 100644 index c9227f08f..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_upload_session_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetUploadSessionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "upload_session_id": "sess_12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_upload_session_details_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_upload_session_details_example_call_tool.py deleted file mode 100644 index 0b8bb4249..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_upload_session_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetUploadSessionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'upload_session_id': 'sess_12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_uploaded_chunks_list_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_uploaded_chunks_list_example_call_tool.js deleted file mode 100644 index 218cd0e17..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_uploaded_chunks_list_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetUploadedChunksList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "upload_session_identifier": "sess_abc123", - "response_offset": 0, - "max_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_uploaded_chunks_list_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_uploaded_chunks_list_example_call_tool.py deleted file mode 100644 index aa8ddfa61..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_uploaded_chunks_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetUploadedChunksList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'upload_session_identifier': 'sess_abc123', 'response_offset': 0, 'max_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_user_avatar_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_user_avatar_example_call_tool.js deleted file mode 100644 index 05156ad0b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_user_avatar_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetUserAvatar"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "user_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_user_avatar_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_user_avatar_example_call_tool.py deleted file mode 100644 index bed4e4878..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_user_avatar_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetUserAvatar" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': 'user_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_user_email_aliases_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_user_email_aliases_example_call_tool.js deleted file mode 100644 index b6ba043aa..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_user_email_aliases_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetUserEmailAliases"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "user_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_user_email_aliases_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_user_email_aliases_example_call_tool.py deleted file mode 100644 index 5a95552e0..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_user_email_aliases_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetUserEmailAliases" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'user_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_user_group_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_user_group_memberships_example_call_tool.js deleted file mode 100644 index 3008b624c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_user_group_memberships_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetUserGroupMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "user_7890", - "max_items_per_page": 50, - "response_offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_user_group_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_user_group_memberships_example_call_tool.py deleted file mode 100644 index d942f9cb9..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_user_group_memberships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetUserGroupMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'user_7890', 'max_items_per_page': 50, 'response_offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_user_information_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_user_information_example_call_tool.js deleted file mode 100644 index d5562caa3..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_user_information_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetUserInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "u-93b2f1", - "requested_user_fields": [ - "email", - "displayName", - "department" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_user_information_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_user_information_example_call_tool.py deleted file mode 100644 index 11f3f8228..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_user_information_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetUserInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'u-93b2f1', 'requested_user_fields': ['email', 'displayName', 'department'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/get_user_tos_status_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/get_user_tos_status_example_call_tool.js deleted file mode 100644 index 2e1d338e4..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_user_tos_status_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.GetUserTosStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "terms_of_service_id": "tos_2025_07_v1", - "filter_by_user_id": "user_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/get_user_tos_status_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/get_user_tos_status_example_call_tool.py deleted file mode 100644 index 720dc814e..000000000 --- a/public/examples/integrations/mcp-servers/box_api/get_user_tos_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.GetUserTosStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'terms_of_service_id': 'tos_2025_07_v1', 'filter_by_user_id': 'user_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/list_ai_agents_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/list_ai_agents_example_call_tool.js deleted file mode 100644 index 43a10f81e..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_ai_agents_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.ListAiAgents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_mode": [ - "text_gen", - "extract" - ], - "response_fields": [ - "id", - "name", - "mode", - "status" - ], - "agent_state_filter": [ - "enabled", - "enabled_for_selected_users" - ], - "results_start_position_marker": "marker_abc123", - "max_items_per_page": 25, - "include_box_default_agents": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/list_ai_agents_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/list_ai_agents_example_call_tool.py deleted file mode 100644 index 620a856d4..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_ai_agents_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.ListAiAgents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_mode': ['text_gen', 'extract'], - 'response_fields': ['id', 'name', 'mode', 'status'], - 'agent_state_filter': ['enabled', 'enabled_for_selected_users'], - 'results_start_position_marker': 'marker_abc123', - 'max_items_per_page': 25, - 'include_box_default_agents': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/list_box_doc_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/list_box_doc_templates_example_call_tool.js deleted file mode 100644 index 500fa1b35..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_box_doc_templates_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.ListBoxDocTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_start_marker": "abc123marker", - "max_items_per_page": 25 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/list_box_doc_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/list_box_doc_templates_example_call_tool.py deleted file mode 100644 index 2834726ac..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_box_doc_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.ListBoxDocTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_start_marker': 'abc123marker', 'max_items_per_page': 25 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/list_box_docgen_jobs_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/list_box_docgen_jobs_example_call_tool.js deleted file mode 100644 index 65ebedb7e..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_box_docgen_jobs_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.ListBoxDocgenJobs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_marker": "abc123marker", - "maximum_items_per_page": 25 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/list_box_docgen_jobs_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/list_box_docgen_jobs_example_call_tool.py deleted file mode 100644 index 057e5fc8f..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_box_docgen_jobs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.ListBoxDocgenJobs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_marker': 'abc123marker', 'maximum_items_per_page': 25 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/list_box_docgen_template_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/list_box_docgen_template_tags_example_call_tool.js deleted file mode 100644 index 7a9e6e754..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_box_docgen_template_tags_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.ListBoxDocgenTemplateTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "template_id": "tmpl_12345", - "template_version_id": "v2", - "pagination_start_marker": "marker_0", - "maximum_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/list_box_docgen_template_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/list_box_docgen_template_tags_example_call_tool.py deleted file mode 100644 index cbfae3cff..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_box_docgen_template_tags_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.ListBoxDocgenTemplateTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'template_id': 'tmpl_12345', - 'template_version_id': 'v2', - 'pagination_start_marker': 'marker_0', - 'maximum_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/list_defined_webhooks_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/list_defined_webhooks_example_call_tool.js deleted file mode 100644 index 33b05f2f5..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_defined_webhooks_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.ListDefinedWebhooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_start_marker": "abc123", - "maximum_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/list_defined_webhooks_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/list_defined_webhooks_example_call_tool.py deleted file mode 100644 index 567312074..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_defined_webhooks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.ListDefinedWebhooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_start_marker': 'abc123', 'maximum_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/list_docgen_batch_jobs_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/list_docgen_batch_jobs_example_call_tool.js deleted file mode 100644 index 5e02321dc..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_docgen_batch_jobs_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.ListDocgenBatchJobs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "box_doc_gen_batch_id": "batch_12345", - "pagination_marker": "marker_abc", - "maximum_items_per_page": 25 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/list_docgen_batch_jobs_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/list_docgen_batch_jobs_example_call_tool.py deleted file mode 100644 index e0b89bafc..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_docgen_batch_jobs_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.ListDocgenBatchJobs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'box_doc_gen_batch_id': 'batch_12345', - 'pagination_marker': 'marker_abc', - 'maximum_items_per_page': 25 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/list_enterprise_users_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/list_enterprise_users_example_call_tool.js deleted file mode 100644 index 9bad866a8..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_enterprise_users_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.ListEnterpriseUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_term_for_user_filtering": "alex", - "user_type_filter": "managed", - "include_additional_fields": [ - "role", - "language" - ], - "response_offset": 0, - "max_items_per_page": 100, - "use_marker_pagination": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/list_enterprise_users_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/list_enterprise_users_example_call_tool.py deleted file mode 100644 index e6dcca4c1..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_enterprise_users_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.ListEnterpriseUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_term_for_user_filtering': 'alex', - 'user_type_filter': 'managed', - 'include_additional_fields': ['role', 'language'], - 'response_offset': 0, - 'max_items_per_page': 100, - 'use_marker_pagination': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/list_files_under_retention_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/list_files_under_retention_policy_example_call_tool.js deleted file mode 100644 index 3853fdf1c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_files_under_retention_policy_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.ListFilesUnderRetentionPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "retention_policy_assignment_id": "rp_7890abcd", - "position_marker": "marker_12345", - "max_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/list_files_under_retention_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/list_files_under_retention_policy_example_call_tool.py deleted file mode 100644 index e56eb247f..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_files_under_retention_policy_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.ListFilesUnderRetentionPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'retention_policy_assignment_id': 'rp_7890abcd', - 'position_marker': 'marker_12345', - 'max_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/list_shield_barrier_segment_members_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/list_shield_barrier_segment_members_example_call_tool.js deleted file mode 100644 index 424fbf6ed..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_shield_barrier_segment_members_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.ListShieldBarrierSegmentMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "segment_id": "seg_abc123", - "pagination_marker": "marker_xyz", - "items_per_page_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/list_shield_barrier_segment_members_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/list_shield_barrier_segment_members_example_call_tool.py deleted file mode 100644 index 98e808fd1..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_shield_barrier_segment_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.ListShieldBarrierSegmentMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'segment_id': 'seg_abc123', 'pagination_marker': 'marker_xyz', 'items_per_page_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/list_slack_integration_mappings_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/list_slack_integration_mappings_example_call_tool.js deleted file mode 100644 index 30b86f0fd..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_slack_integration_mappings_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.ListSlackIntegrationMappings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_start_marker": "abc123", - "max_items_per_page": 25, - "mapped_item_type": "channel", - "mapped_item_id": "C0456XYZ", - "box_item_id": "7890123456", - "box_item_type": "folder", - "include_manually_created_mappings": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/list_slack_integration_mappings_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/list_slack_integration_mappings_example_call_tool.py deleted file mode 100644 index 2e4b90bea..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_slack_integration_mappings_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.ListSlackIntegrationMappings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_start_marker': 'abc123', - 'max_items_per_page': 25, - 'mapped_item_type': 'channel', - 'mapped_item_id': 'C0456XYZ', - 'box_item_id': '7890123456', - 'box_item_type': 'folder', - 'include_manually_created_mappings': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/list_task_assignments_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/list_task_assignments_example_call_tool.js deleted file mode 100644 index f47aa4172..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_task_assignments_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.ListTaskAssignments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "task_7890abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/list_task_assignments_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/list_task_assignments_example_call_tool.py deleted file mode 100644 index 02c493091..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_task_assignments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.ListTaskAssignments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': 'task_7890abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/list_template_jobs_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/list_template_jobs_example_call_tool.js deleted file mode 100644 index afc107d77..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_template_jobs_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.ListTemplateJobs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "template_identifier": "tmpl_12345", - "pagination_start_marker": "marker_abc", - "max_items_per_page": 25 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/list_template_jobs_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/list_template_jobs_example_call_tool.py deleted file mode 100644 index 1b8462629..000000000 --- a/public/examples/integrations/mcp-servers/box_api/list_template_jobs_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.ListTemplateJobs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'template_identifier': 'tmpl_12345', - 'pagination_start_marker': 'marker_abc', - 'max_items_per_page': 25 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/permanently_delete_file_from_trash_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/permanently_delete_file_from_trash_example_call_tool.js deleted file mode 100644 index 44ff12b45..000000000 --- a/public/examples/integrations/mcp-servers/box_api/permanently_delete_file_from_trash_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.PermanentlyDeleteFileFromTrash"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "file_9a8b7c6d1234" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/permanently_delete_file_from_trash_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/permanently_delete_file_from_trash_example_call_tool.py deleted file mode 100644 index 3ff9eb3f7..000000000 --- a/public/examples/integrations/mcp-servers/box_api/permanently_delete_file_from_trash_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.PermanentlyDeleteFileFromTrash" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': 'file_9a8b7c6d1234' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/permanently_delete_folder_in_trash_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/permanently_delete_folder_in_trash_example_call_tool.js deleted file mode 100644 index 236172f9c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/permanently_delete_folder_in_trash_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.PermanentlyDeleteFolderInTrash"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": "abc123-folder-id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/permanently_delete_folder_in_trash_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/permanently_delete_folder_in_trash_example_call_tool.py deleted file mode 100644 index 5620f3aeb..000000000 --- a/public/examples/integrations/mcp-servers/box_api/permanently_delete_folder_in_trash_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.PermanentlyDeleteFolderInTrash" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': 'abc123-folder-id' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/permanently_delete_trashed_web_link_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/permanently_delete_trashed_web_link_example_call_tool.js deleted file mode 100644 index 1aca7c119..000000000 --- a/public/examples/integrations/mcp-servers/box_api/permanently_delete_trashed_web_link_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.PermanentlyDeleteTrashedWebLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "web_link_identifier": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/permanently_delete_trashed_web_link_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/permanently_delete_trashed_web_link_example_call_tool.py deleted file mode 100644 index 005176de6..000000000 --- a/public/examples/integrations/mcp-servers/box_api/permanently_delete_trashed_web_link_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.PermanentlyDeleteTrashedWebLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'web_link_identifier': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/remove_box_skills_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/remove_box_skills_metadata_example_call_tool.js deleted file mode 100644 index 3fd48ad72..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_box_skills_metadata_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RemoveBoxSkillsMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/remove_box_skills_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/remove_box_skills_metadata_example_call_tool.py deleted file mode 100644 index 60ca1e6f5..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_box_skills_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RemoveBoxSkillsMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/remove_collaboration_whitelist_exemption_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/remove_collaboration_whitelist_exemption_example_call_tool.js deleted file mode 100644 index 1f82bc01c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_collaboration_whitelist_exemption_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RemoveCollaborationWhitelistExemption"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exemption_id": "ex_9876543210" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/remove_collaboration_whitelist_exemption_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/remove_collaboration_whitelist_exemption_example_call_tool.py deleted file mode 100644 index 9a43bef47..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_collaboration_whitelist_exemption_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RemoveCollaborationWhitelistExemption" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exemption_id': 'ex_9876543210' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/remove_file_classification_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/remove_file_classification_example_call_tool.js deleted file mode 100644 index 793a9f78a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_file_classification_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RemoveFileClassification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/remove_file_classification_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/remove_file_classification_example_call_tool.py deleted file mode 100644 index 5661f305c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_file_classification_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RemoveFileClassification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/remove_file_watermark_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/remove_file_watermark_example_call_tool.js deleted file mode 100644 index 47019415b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_file_watermark_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RemoveFileWatermark"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/remove_file_watermark_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/remove_file_watermark_example_call_tool.py deleted file mode 100644 index 5b0bae2a3..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_file_watermark_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RemoveFileWatermark" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/remove_folder_classifications_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/remove_folder_classifications_example_call_tool.js deleted file mode 100644 index 0ad0e049d..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_folder_classifications_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RemoveFolderClassifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": "123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/remove_folder_classifications_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/remove_folder_classifications_example_call_tool.py deleted file mode 100644 index eabd75cfc..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_folder_classifications_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RemoveFolderClassifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': '123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/remove_legal_hold_from_item_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/remove_legal_hold_from_item_example_call_tool.js deleted file mode 100644 index 1d32668c5..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_legal_hold_from_item_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RemoveLegalHoldFromItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "legal_hold_policy_assignment_id": "lhpa_8f3d2b1a" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/remove_legal_hold_from_item_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/remove_legal_hold_from_item_example_call_tool.py deleted file mode 100644 index d6e5946df..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_legal_hold_from_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RemoveLegalHoldFromItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'legal_hold_policy_assignment_id': 'lhpa_8f3d2b1a' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/remove_retention_policy_assignment_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/remove_retention_policy_assignment_example_call_tool.js deleted file mode 100644 index d5a23ce88..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_retention_policy_assignment_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RemoveRetentionPolicyAssignment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "retention_policy_assignment_id": "rpa_1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/remove_retention_policy_assignment_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/remove_retention_policy_assignment_example_call_tool.py deleted file mode 100644 index d5f41fe9a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_retention_policy_assignment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RemoveRetentionPolicyAssignment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'retention_policy_assignment_id': 'rpa_1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/remove_safe_collaboration_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/remove_safe_collaboration_domain_example_call_tool.js deleted file mode 100644 index d7d8a7a43..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_safe_collaboration_domain_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RemoveSafeCollaborationDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "whitelist_entry_id": "d41f2b7a-8c3e-4f6a-9b2d-12345abcde67" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/remove_safe_collaboration_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/remove_safe_collaboration_domain_example_call_tool.py deleted file mode 100644 index 4ea3f5962..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_safe_collaboration_domain_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RemoveSafeCollaborationDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'whitelist_entry_id': 'd41f2b7a-8c3e-4f6a-9b2d-12345abcde67' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/remove_shield_barrier_member_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/remove_shield_barrier_member_example_call_tool.js deleted file mode 100644 index 6a9366f47..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_shield_barrier_member_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RemoveShieldBarrierMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_for_deletion": "mbr_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/remove_shield_barrier_member_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/remove_shield_barrier_member_example_call_tool.py deleted file mode 100644 index 85ed24297..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_shield_barrier_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RemoveShieldBarrierMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_for_deletion': 'mbr_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/remove_user_avatar_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/remove_user_avatar_example_call_tool.js deleted file mode 100644 index 1c3de43e0..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_user_avatar_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RemoveUserAvatar"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "user_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/remove_user_avatar_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/remove_user_avatar_example_call_tool.py deleted file mode 100644 index c9dc119a2..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_user_avatar_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RemoveUserAvatar" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'user_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/remove_user_email_alias_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/remove_user_email_alias_example_call_tool.js deleted file mode 100644 index 06c021e22..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_user_email_alias_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RemoveUserEmailAlias"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "user_12345", - "email_alias_id": "alias_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/remove_user_email_alias_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/remove_user_email_alias_example_call_tool.py deleted file mode 100644 index bd123fe72..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_user_email_alias_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RemoveUserEmailAlias" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'user_12345', 'email_alias_id': 'alias_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/remove_watermark_from_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/remove_watermark_from_folder_example_call_tool.js deleted file mode 100644 index 2409eb6a7..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_watermark_from_folder_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RemoveWatermarkFromFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/remove_watermark_from_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/remove_watermark_from_folder_example_call_tool.py deleted file mode 100644 index e76607590..000000000 --- a/public/examples/integrations/mcp-servers/box_api/remove_watermark_from_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RemoveWatermarkFromFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/resend_signature_request_email_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/resend_signature_request_email_example_call_tool.js deleted file mode 100644 index cd331d105..000000000 --- a/public/examples/integrations/mcp-servers/box_api/resend_signature_request_email_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.ResendSignatureRequestEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "signature_request_id": "req_12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/resend_signature_request_email_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/resend_signature_request_email_example_call_tool.py deleted file mode 100644 index 47cd471c2..000000000 --- a/public/examples/integrations/mcp-servers/box_api/resend_signature_request_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.ResendSignatureRequestEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'signature_request_id': 'req_12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_collaborations_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_collaborations_example_call_tool.js deleted file mode 100644 index 8c0d18c15..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_collaborations_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveBoxHubCollaborations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hub_identifier": "hub_12345abcdef", - "pagination_marker": "marker_01", - "max_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_collaborations_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_collaborations_example_call_tool.py deleted file mode 100644 index b5dd5521c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_collaborations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveBoxHubCollaborations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hub_identifier': 'hub_12345abcdef', 'pagination_marker': 'marker_01', 'max_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_details_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_details_example_call_tool.js deleted file mode 100644 index f15cf9fde..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveBoxHubDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "box_hub_identifier": "12345abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_details_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_details_example_call_tool.py deleted file mode 100644 index fbf146732..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveBoxHubDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'box_hub_identifier': '12345abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_items_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_items_example_call_tool.js deleted file mode 100644 index ae4a9744d..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_items_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveBoxHubItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hub_identifier": "1234567890", - "pagination_start_marker": "marker_abc123", - "maximum_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_items_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_items_example_call_tool.py deleted file mode 100644 index 8b046bc51..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_box_hub_items_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveBoxHubItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hub_identifier': '1234567890', - 'pagination_start_marker': 'marker_abc123', - 'maximum_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_collection_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_collection_by_id_example_call_tool.js deleted file mode 100644 index 28651e158..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_collection_by_id_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveCollectionById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_identifier": "col_9a8b7c6d5e" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_collection_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_collection_by_id_example_call_tool.py deleted file mode 100644 index 95163cc30..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_collection_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveCollectionById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_identifier': 'col_9a8b7c6d5e' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_collection_contents_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_collection_contents_example_call_tool.js deleted file mode 100644 index 26f02865c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_collection_contents_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveCollectionContents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_id": "col_9a8b7c6d", - "attributes_to_include": [ - "name", - "size", - "modified_at" - ], - "response_offset": 0, - "max_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_collection_contents_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_collection_contents_example_call_tool.py deleted file mode 100644 index 12d7bc6e1..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_collection_contents_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveCollectionContents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_id': 'col_9a8b7c6d', - 'attributes_to_include': ['name', 'size', 'modified_at'], - 'response_offset': 0, - 'max_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_archives_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_archives_example_call_tool.js deleted file mode 100644 index c21020e15..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_archives_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveEnterpriseArchives"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_items_per_page": 50, - "pagination_start_marker": "marker_0001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_archives_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_archives_example_call_tool.py deleted file mode 100644 index f2155b361..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_archives_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveEnterpriseArchives" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_items_per_page': 50, 'pagination_start_marker': 'marker_0001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_groups_example_call_tool.js deleted file mode 100644 index 3cf74e50f..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_groups_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveEnterpriseGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_name_starts_with": "Dev", - "included_attributes": [ - "id", - "name", - "member_count" - ], - "max_items_per_page": 50, - "starting_item_offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_groups_example_call_tool.py deleted file mode 100644 index fe7aa76c7..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_groups_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveEnterpriseGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_name_starts_with': 'Dev', - 'included_attributes': ['id', 'name', 'member_count'], - 'max_items_per_page': 50, - 'starting_item_offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_metadata_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_metadata_templates_example_call_tool.js deleted file mode 100644 index 5adb436a2..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_metadata_templates_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveEnterpriseMetadataTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_start_marker": "abc123marker", - "maximum_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_metadata_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_metadata_templates_example_call_tool.py deleted file mode 100644 index 5833cec3f..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_enterprise_metadata_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveEnterpriseMetadataTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_start_marker': 'abc123marker', 'maximum_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_file_details_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_file_details_example_call_tool.js deleted file mode 100644 index 38ca0cdab..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_file_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveFileDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "12345", - "included_file_attributes": [ - "name", - "size", - "metadata:global.key1" - ], - "etag_conditional_retrieval": "0xabcdef1234567890", - "shared_link_with_optional_password": "shared_link=https://example.app.box.com/s/abc123&shared_link_password=secret", - "file_representations_request": "[jpg?dimensions=128x128][pdf?max_width=1024]" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_file_details_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_file_details_example_call_tool.py deleted file mode 100644 index 1aaa70f2c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_file_details_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveFileDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '12345', - 'included_file_attributes': ['name', 'size', 'metadata:global.key1'], - 'etag_conditional_retrieval': '0xabcdef1234567890', - 'shared_link_with_optional_password': 'shared_link=https://example.app.box.com/s/abc123&shared_link_password=secret', - 'file_representations_request': '[jpg?dimensions=128x128][pdf?max_width=1024]' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_file_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_file_metadata_example_call_tool.js deleted file mode 100644 index 955fa0ede..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_file_metadata_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveFileMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_file_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_file_metadata_example_call_tool.py deleted file mode 100644 index 3f48d8c22..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_file_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveFileMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_file_request_info_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_file_request_info_example_call_tool.js deleted file mode 100644 index 68ec36c2b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_file_request_info_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveFileRequestInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_request_unique_id": "fr_9a8b7c6d5e4f3a2b" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_file_request_info_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_file_request_info_example_call_tool.py deleted file mode 100644 index 43d756c18..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_file_request_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveFileRequestInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_request_unique_id': 'fr_9a8b7c6d5e4f3a2b' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_file_template_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_file_template_metadata_example_call_tool.js deleted file mode 100644 index ba26c3dde..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_file_template_metadata_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveFileTemplateMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "1234567890", - "metadata_scope": "enterprise", - "metadata_template_name": "DocumentClassification" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_file_template_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_file_template_metadata_example_call_tool.py deleted file mode 100644 index 59705738b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_file_template_metadata_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveFileTemplateMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '1234567890', - 'metadata_scope': 'enterprise', - 'metadata_template_name': 'DocumentClassification' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_file_thumbnail_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_file_thumbnail_example_call_tool.js deleted file mode 100644 index e9cb4c032..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_file_thumbnail_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveFileThumbnail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "1234567890", - "thumbnail_file_format": "png", - "minimum_thumbnail_height": 64, - "minimum_thumbnail_width": 64, - "maximum_thumbnail_height": 128, - "maximum_thumbnail_width": 128 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_file_thumbnail_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_file_thumbnail_example_call_tool.py deleted file mode 100644 index 0461ac68e..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_file_thumbnail_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveFileThumbnail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '1234567890', - 'thumbnail_file_format': 'png', - 'minimum_thumbnail_height': 64, - 'minimum_thumbnail_width': 64, - 'maximum_thumbnail_height': 128, - 'maximum_thumbnail_width': 128 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_file_version_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_file_version_example_call_tool.js deleted file mode 100644 index 8b3c488d6..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_file_version_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveFileVersion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "unique_file_identifier": "12345", - "file_version_identifier": "v98765", - "include_additional_attributes": [ - "tags", - "created_by", - "md5" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_file_version_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_file_version_example_call_tool.py deleted file mode 100644 index 1b1c696f6..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_file_version_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveFileVersion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'unique_file_identifier': '12345', - 'file_version_identifier': 'v98765', - 'include_additional_attributes': ['tags', 'created_by', 'md5'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_file_version_legal_holds_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_file_version_legal_holds_example_call_tool.js deleted file mode 100644 index d8a9dbfc1..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_file_version_legal_holds_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveFileVersionLegalHolds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_version_legal_hold_id": "fh_9a1b2c3d4e5f" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_file_version_legal_holds_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_file_version_legal_holds_example_call_tool.py deleted file mode 100644 index 08130887a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_file_version_legal_holds_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveFileVersionLegalHolds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_version_legal_hold_id': 'fh_9a1b2c3d4e5f' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_folder_items_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_folder_items_example_call_tool.js deleted file mode 100644 index 3c5dd8193..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_folder_items_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveFolderItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": "1234567890", - "included_attributes": [ - "size", - "metadata.customer.id" - ], - "starting_item_offset": 0, - "max_items_per_page": 100, - "sort_attribute": "name", - "sort_direction": "ASC", - "shared_link_credentials": "shared_link=https://example.com/s/abc123", - "use_marker_based_pagination": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_folder_items_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_folder_items_example_call_tool.py deleted file mode 100644 index 5ff272d79..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_folder_items_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveFolderItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': '1234567890', - 'included_attributes': ['size', 'metadata.customer.id'], - 'starting_item_offset': 0, - 'max_items_per_page': 100, - 'sort_attribute': 'name', - 'sort_direction': 'ASC', - 'shared_link_credentials': 'shared_link=https://example.com/s/abc123', - 'use_marker_based_pagination': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_folder_lock_details_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_folder_lock_details_example_call_tool.js deleted file mode 100644 index afe5d1dd2..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_folder_lock_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveFolderLockDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": "123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_folder_lock_details_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_folder_lock_details_example_call_tool.py deleted file mode 100644 index 9a4a5fbb9..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_folder_lock_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveFolderLockDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': '123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_folder_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_folder_metadata_example_call_tool.js deleted file mode 100644 index bcbe823e2..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_folder_metadata_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveFolderMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_folder_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_folder_metadata_example_call_tool.py deleted file mode 100644 index 9b7ab9cb2..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_folder_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveFolderMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_global_metadata_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_global_metadata_templates_example_call_tool.js deleted file mode 100644 index a7c6bd765..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_global_metadata_templates_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveGlobalMetadataTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_start_marker": "0", - "max_items_per_page": 25 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_global_metadata_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_global_metadata_templates_example_call_tool.py deleted file mode 100644 index 5e75ce0a2..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_global_metadata_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveGlobalMetadataTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_start_marker': '0', 'max_items_per_page': 25 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_group_info_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_group_info_example_call_tool.js deleted file mode 100644 index b228be7c2..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_group_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveGroupInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_id": "123456789", - "include_additional_fields": [ - "members", - "description" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_group_info_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_group_info_example_call_tool.py deleted file mode 100644 index ae93d94ed..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_group_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveGroupInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_id': '123456789', 'include_additional_fields': ['members', 'description'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_group_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_group_membership_example_call_tool.js deleted file mode 100644 index ed3fafaab..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_group_membership_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveGroupMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_membership_id": "gm_8f7d3a2b", - "include_fields_list": [ - "joined_at", - "role", - "permissions" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_group_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_group_membership_example_call_tool.py deleted file mode 100644 index fb80d1a6a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_group_membership_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveGroupMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_membership_id': 'gm_8f7d3a2b', 'include_fields_list': ['joined_at', 'role', 'permissions'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_group_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_group_memberships_example_call_tool.js deleted file mode 100644 index 1b0fd724a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_group_memberships_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveGroupMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_identifier": "grp_8f3a2b", - "max_items_per_page": 100, - "response_offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_group_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_group_memberships_example_call_tool.py deleted file mode 100644 index 926d6f9d3..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_group_memberships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveGroupMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_identifier': 'grp_8f3a2b', 'max_items_per_page': 100, 'response_offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policies_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policies_example_call_tool.js deleted file mode 100644 index 02697b94a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policies_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveLegalHoldPolicies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "policy_name_prefix": "HR-", - "response_attributes": [ - "id", - "name", - "created_at" - ], - "maximum_items_per_page": 25 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policies_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policies_example_call_tool.py deleted file mode 100644 index 32752d13a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policies_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveLegalHoldPolicies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'policy_name_prefix': 'HR-', - 'response_attributes': ['id', 'name', 'created_at'], - 'maximum_items_per_page': 25 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policy_assignment_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policy_assignment_example_call_tool.js deleted file mode 100644 index 58169c373..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policy_assignment_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveLegalHoldPolicyAssignment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "legal_hold_policy_assignment_id": "lhpa_89b2f7a1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policy_assignment_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policy_assignment_example_call_tool.py deleted file mode 100644 index 1f20c8899..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policy_assignment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveLegalHoldPolicyAssignment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'legal_hold_policy_assignment_id': 'lhpa_89b2f7a1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policy_example_call_tool.js deleted file mode 100644 index aee6f615b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policy_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveLegalHoldPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "legal_hold_policy_id": "lh_policy_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policy_example_call_tool.py deleted file mode 100644 index 0e406aee3..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_legal_hold_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveLegalHoldPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'legal_hold_policy_id': 'lh_policy_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_metadata_cascade_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_metadata_cascade_policy_example_call_tool.js deleted file mode 100644 index 61112c556..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_metadata_cascade_policy_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveMetadataCascadePolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metadata_cascade_policy_id": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_metadata_cascade_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_metadata_cascade_policy_example_call_tool.py deleted file mode 100644 index 08932405d..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_metadata_cascade_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveMetadataCascadePolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metadata_cascade_policy_id': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_metadata_template_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_metadata_template_example_call_tool.js deleted file mode 100644 index 62d90f350..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_metadata_template_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveMetadataTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metadata_template_scope": "enterprise", - "metadata_template_name": "invoiceDetails" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_metadata_template_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_metadata_template_example_call_tool.py deleted file mode 100644 index 87f26489b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_metadata_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveMetadataTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metadata_template_scope': 'enterprise', 'metadata_template_name': 'invoiceDetails' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_retention_policy_assignment_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_retention_policy_assignment_example_call_tool.js deleted file mode 100644 index 8f0ce3769..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_retention_policy_assignment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveRetentionPolicyAssignment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "retention_policy_assignment_id": "1234567890", - "include_fields_in_response": [ - "id", - "policy_id", - "assigned_to", - "created_at" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_retention_policy_assignment_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_retention_policy_assignment_example_call_tool.py deleted file mode 100644 index ff4d5f488..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_retention_policy_assignment_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveRetentionPolicyAssignment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'retention_policy_assignment_id': '1234567890', - 'include_fields_in_response': ['id', 'policy_id', 'assigned_to', 'created_at'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_shared_file_info_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_shared_file_info_example_call_tool.js deleted file mode 100644 index 54bfd9b62..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_shared_file_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveSharedFileInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shared_link_credentials": "shared_link=https://files.example.com/s/abc123&shared_link_password=Secr3t!", - "include_attributes_in_response": [ - "permissions", - "created_at" - ], - "etag_for_change_detection": "\"e1a1b2c3\"" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_shared_file_info_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_shared_file_info_example_call_tool.py deleted file mode 100644 index 780a2ba8c..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_shared_file_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveSharedFileInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shared_link_credentials': 'shared_link=https://files.example.com/s/abc123&shared_link_password=Secr3t!', - 'include_attributes_in_response': ['permissions', 'created_at'], - 'etag_for_change_detection': '"e1a1b2c3"' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_shared_web_link_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_shared_web_link_example_call_tool.js deleted file mode 100644 index a7245ed30..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_shared_web_link_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveSharedWebLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shared_link_header": "shared_link=https://example.com/s/abc123&shared_link_password=secret", - "include_attributes_in_response": [ - "name", - "size", - "created_at" - ], - "etag_if_updated_only": "\"3a7f9b2\"" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_shared_web_link_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_shared_web_link_example_call_tool.py deleted file mode 100644 index f3d1a513a..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_shared_web_link_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveSharedWebLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shared_link_header': 'shared_link=https://example.com/s/abc123&shared_link_password=secret', - 'include_attributes_in_response': ['name', 'size', 'created_at'], - 'etag_if_updated_only': '"3a7f9b2"' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_shield_list_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_shield_list_by_id_example_call_tool.js deleted file mode 100644 index 49602573f..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_shield_list_by_id_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveShieldListById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shield_list_identifier": "shield-list_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_shield_list_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_shield_list_by_id_example_call_tool.py deleted file mode 100644 index c20fdd8c1..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_shield_list_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveShieldListById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shield_list_identifier': 'shield-list_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_sign_request_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_sign_request_by_id_example_call_tool.js deleted file mode 100644 index 9a5047df3..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_sign_request_by_id_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveSignRequestById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "signature_request_id": "sr_1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_sign_request_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_sign_request_by_id_example_call_tool.py deleted file mode 100644 index 0c7113cda..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_sign_request_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveSignRequestById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'signature_request_id': 'sr_1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_task_assignment_info_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_task_assignment_info_example_call_tool.js deleted file mode 100644 index e776b5d53..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_task_assignment_info_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveTaskAssignmentInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_assignment_id": "ta_9f3b2a1c" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_task_assignment_info_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_task_assignment_info_example_call_tool.py deleted file mode 100644 index c87a19822..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_task_assignment_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveTaskAssignmentInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_assignment_id': 'ta_9f3b2a1c' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_task_information_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_task_information_example_call_tool.js deleted file mode 100644 index 62411ca4b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_task_information_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveTaskInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "task_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_task_information_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_task_information_example_call_tool.py deleted file mode 100644 index d42f64bb5..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_task_information_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveTaskInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': 'task_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_file_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_file_example_call_tool.js deleted file mode 100644 index 0f43a929d..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_file_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveTrashedFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "1a2B3cD4eF5Gh6Ij7K8l", - "include_attributes_in_response": [ - "name", - "size", - "created_at" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_file_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_file_example_call_tool.py deleted file mode 100644 index 38ec7f990..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_file_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveTrashedFile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': '1a2B3cD4eF5Gh6Ij7K8l', - 'include_attributes_in_response': ['name', 'size', 'created_at'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_folder_example_call_tool.js deleted file mode 100644 index 568a8036b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_folder_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveTrashedFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": "12345-abcde", - "include_attributes_in_response": [ - "deletedAt", - "deletedBy", - "originalParentId" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_folder_example_call_tool.py deleted file mode 100644 index b9366e99b..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_folder_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveTrashedFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': '12345-abcde', - 'include_attributes_in_response': ['deletedAt', 'deletedBy', 'originalParentId'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_items_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_items_example_call_tool.js deleted file mode 100644 index 833f000dd..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_items_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveTrashedItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_attributes": [ - "size", - "created_at", - "owner" - ], - "maximum_items_per_page": 50, - "pagination_offset": 0, - "sort_direction": "DESC", - "secondary_sort_attribute": "date", - "use_marker_based_pagination": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_items_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_items_example_call_tool.py deleted file mode 100644 index e189e82be..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_items_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveTrashedItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_attributes': ['size', 'created_at', 'owner'], - 'maximum_items_per_page': 50, - 'pagination_offset': 0, - 'sort_direction': 'DESC', - 'secondary_sort_attribute': 'date', - 'use_marker_based_pagination': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_web_link_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_web_link_example_call_tool.js deleted file mode 100644 index b0df3b4fc..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_web_link_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveTrashedWebLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "web_link_id": "9876543210", - "include_fields_in_response": [ - "url", - "created_by", - "deleted_at" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_web_link_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_web_link_example_call_tool.py deleted file mode 100644 index 98c6bf719..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_trashed_web_link_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveTrashedWebLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'web_link_id': '9876543210', 'include_fields_in_response': ['url', 'created_by', 'deleted_at'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_user_collections_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_user_collections_example_call_tool.js deleted file mode 100644 index 0ca5689cb..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_user_collections_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveUserCollections"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "requested_fields": [ - "id", - "title", - "item_count" - ], - "pagination_offset": 0, - "maximum_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_user_collections_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_user_collections_example_call_tool.py deleted file mode 100644 index 7f0a1e12d..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_user_collections_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveUserCollections" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'requested_fields': ['id', 'title', 'item_count'], - 'pagination_offset': 0, - 'maximum_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_web_link_info_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/retrieve_web_link_info_example_call_tool.js deleted file mode 100644 index fc9974d71..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_web_link_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.RetrieveWebLinkInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "web_link_id": "1234567890", - "shared_link_access_details": "shared_link=https://box.com/s/abcdef&shared_link_password=pass123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/retrieve_web_link_info_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/retrieve_web_link_info_example_call_tool.py deleted file mode 100644 index 96aa7eb61..000000000 --- a/public/examples/integrations/mcp-servers/box_api/retrieve_web_link_info_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.RetrieveWebLinkInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'web_link_id': '1234567890', - 'shared_link_access_details': 'shared_link=https://box.com/s/abcdef&shared_link_password=pass123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/box_api/unmark_box_doc_template_example_call_tool.js b/public/examples/integrations/mcp-servers/box_api/unmark_box_doc_template_example_call_tool.js deleted file mode 100644 index 82a8688c1..000000000 --- a/public/examples/integrations/mcp-servers/box_api/unmark_box_doc_template_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "BoxApi.UnmarkBoxDocTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_id_to_unmark": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/box_api/unmark_box_doc_template_example_call_tool.py b/public/examples/integrations/mcp-servers/box_api/unmark_box_doc_template_example_call_tool.py deleted file mode 100644 index 7be5a22de..000000000 --- a/public/examples/integrations/mcp-servers/box_api/unmark_box_doc_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "BoxApi.UnmarkBoxDocTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_id_to_unmark': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/brightdata/scrape_as_markdown_example_call_tool.js b/public/examples/integrations/mcp-servers/brightdata/scrape_as_markdown_example_call_tool.js deleted file mode 100644 index a81088801..000000000 --- a/public/examples/integrations/mcp-servers/brightdata/scrape_as_markdown_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Brightdata.ScrapeAsMarkdown"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "url": "https://example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/brightdata/scrape_as_markdown_example_call_tool.py b/public/examples/integrations/mcp-servers/brightdata/scrape_as_markdown_example_call_tool.py deleted file mode 100644 index b1137084c..000000000 --- a/public/examples/integrations/mcp-servers/brightdata/scrape_as_markdown_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Brightdata.ScrapeAsMarkdown" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'url': 'https://example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/brightdata/search_engine_example_call_tool.js b/public/examples/integrations/mcp-servers/brightdata/search_engine_example_call_tool.js deleted file mode 100644 index a7709f415..000000000 --- a/public/examples/integrations/mcp-servers/brightdata/search_engine_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Brightdata.SearchEngine"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "query": "best noise cancelling headphones 2025", - "engine": "google", - "language": "en", - "country_code": "us", - "search_type": "shopping", - "start": 0, - "num_results": 5, - "location": "San Francisco, CA", - "device": "android", - "return_json": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/brightdata/search_engine_example_call_tool.py b/public/examples/integrations/mcp-servers/brightdata/search_engine_example_call_tool.py deleted file mode 100644 index 72173ebb2..000000000 --- a/public/examples/integrations/mcp-servers/brightdata/search_engine_example_call_tool.py +++ /dev/null @@ -1,38 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Brightdata.SearchEngine" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'query': 'best noise cancelling headphones 2025', - 'engine': 'google', - 'language': 'en', - 'country_code': 'us', - 'search_type': 'shopping', - 'start': 0, - 'num_results': 5, - 'location': 'San Francisco, CA', - 'device': 'android', - 'return_json': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/brightdata/web_data_feed_example_call_tool.js b/public/examples/integrations/mcp-servers/brightdata/web_data_feed_example_call_tool.js deleted file mode 100644 index 3f1c07d61..000000000 --- a/public/examples/integrations/mcp-servers/brightdata/web_data_feed_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Brightdata.WebDataFeed"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "source_type": "facebook_company_reviews", - "url": "https://facebook.com/examplecompany", - "num_of_reviews": 25, - "timeout": 60, - "polling_interval": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/brightdata/web_data_feed_example_call_tool.py b/public/examples/integrations/mcp-servers/brightdata/web_data_feed_example_call_tool.py deleted file mode 100644 index e3bfda2dd..000000000 --- a/public/examples/integrations/mcp-servers/brightdata/web_data_feed_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Brightdata.WebDataFeed" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'source_type': 'facebook_company_reviews', - 'url': 'https://facebook.com/examplecompany', - 'num_of_reviews': 25, - 'timeout': 60, - 'polling_interval': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/cancel_scheduled_event_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/cancel_scheduled_event_example_call_tool.js deleted file mode 100644 index a53b35985..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/cancel_scheduled_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.CancelScheduledEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_unique_identifier": "abc123", - "cancellation_reason": "Scheduling conflict" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/cancel_scheduled_event_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/cancel_scheduled_event_example_call_tool.py deleted file mode 100644 index b396105e0..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/cancel_scheduled_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.CancelScheduledEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_unique_identifier': 'abc123', 'cancellation_reason': 'Scheduling conflict' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/create_custom_share_link_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/create_custom_share_link_example_call_tool.js deleted file mode 100644 index dffc0802b..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/create_custom_share_link_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.CreateCustomShareLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event_type\":\"one_on_one\",\"invitee_email\":\"example@example.com\",\"custom_message\":\"Looking forward to our meeting!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/create_custom_share_link_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/create_custom_share_link_example_call_tool.py deleted file mode 100644 index 08ce1a713..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/create_custom_share_link_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.CreateCustomShareLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"event_type":"one_on_one","invitee_email":"example@example.com","custom_message":"Looking ' - 'forward to our meeting!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/create_event_invitee_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/create_event_invitee_example_call_tool.js deleted file mode 100644 index f0ce5ef77..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/create_event_invitee_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.CreateEventInvitee"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"email\":\"example@example.com\",\"name\":\"John Doe\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/create_event_invitee_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/create_event_invitee_example_call_tool.py deleted file mode 100644 index 80a176de5..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/create_event_invitee_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.CreateEventInvitee" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"email":"example@example.com","name":"John Doe"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/create_event_type_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/create_event_type_example_call_tool.js deleted file mode 100644 index 93d5a77ec..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/create_event_type_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.CreateEventType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event_type\":\"one-on-one\",\"duration\":30,\"name\":\"Consultation\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/create_event_type_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/create_event_type_example_call_tool.py deleted file mode 100644 index 02e2e2f0d..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/create_event_type_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.CreateEventType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"event_type":"one-on-one","duration":30,"name":"Consultation"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/create_one_off_event_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/create_one_off_event_example_call_tool.js deleted file mode 100644 index 9cebe8cbe..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/create_one_off_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.CreateOneOffEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event_type\":\"one-off\",\"name\":\"Team Meeting\",\"duration\":60,\"description\":\"Discuss project updates\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/create_one_off_event_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/create_one_off_event_example_call_tool.py deleted file mode 100644 index 40d4e6277..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/create_one_off_event_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.CreateOneOffEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"event_type":"one-off","name":"Team ' - 'Meeting","duration":60,"description":"Discuss project updates"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/create_scheduling_link_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/create_scheduling_link_example_call_tool.js deleted file mode 100644 index 4bafb3ad2..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/create_scheduling_link_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.CreateSchedulingLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maximum_event_count": 1, - "resource_owner_link": "https://example.com/event-type/123", - "resource_type": "EventType" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/create_scheduling_link_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/create_scheduling_link_example_call_tool.py deleted file mode 100644 index 2561d0156..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/create_scheduling_link_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.CreateSchedulingLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maximum_event_count': 1, - 'resource_owner_link': 'https://example.com/event-type/123', - 'resource_type': 'EventType' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/create_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/create_webhook_subscription_example_call_tool.js deleted file mode 100644 index f0fc43a06..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/create_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.CreateWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "callback_url": "https://example.com/webhook", - "event_subscriptions": [ - "invitee.created", - "invitee.canceled" - ], - "organization_reference": "org_12345", - "webhook_subscription_scope": "organization" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/create_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/create_webhook_subscription_example_call_tool.py deleted file mode 100644 index eb366d325..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/create_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.CreateWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'callback_url': 'https://example.com/webhook', - 'event_subscriptions': ['invitee.created', 'invitee.canceled'], - 'organization_reference': 'org_12345', - 'webhook_subscription_scope': 'organization' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/delete_invitee_data_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/delete_invitee_data_example_call_tool.js deleted file mode 100644 index c8af90a2b..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/delete_invitee_data_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.DeleteInviteeData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invitee_email_list": [ - "john.doe@example.com", - "jane.smith@example.com" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/delete_invitee_data_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/delete_invitee_data_example_call_tool.py deleted file mode 100644 index a4739bdfe..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/delete_invitee_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.DeleteInviteeData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invitee_email_list': ['john.doe@example.com', 'jane.smith@example.com'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/delete_scheduled_events_data_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/delete_scheduled_events_data_example_call_tool.js deleted file mode 100644 index 26e6aef86..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/delete_scheduled_events_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.DeleteScheduledEventsData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deletion_start_time_utc": "2022-01-01T00:00:00Z", - "end_time_utc": "2022-12-31T23:59:59Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/delete_scheduled_events_data_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/delete_scheduled_events_data_example_call_tool.py deleted file mode 100644 index 4a0ae19be..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/delete_scheduled_events_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.DeleteScheduledEventsData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deletion_start_time_utc': '2022-01-01T00:00:00Z', 'end_time_utc': '2022-12-31T23:59:59Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/delete_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/delete_webhook_subscription_example_call_tool.js deleted file mode 100644 index d3276c139..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/delete_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.DeleteWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/delete_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/delete_webhook_subscription_example_call_tool.py deleted file mode 100644 index a9886b236..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/delete_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.DeleteWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/fetch_event_type_hosts_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/fetch_event_type_hosts_example_call_tool.js deleted file mode 100644 index c8945f3b9..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/fetch_event_type_hosts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.FetchEventTypeHosts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_type_uri": "https://calendly.com/api/v1/event_types/12345", - "number_of_rows_to_return": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/fetch_event_type_hosts_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/fetch_event_type_hosts_example_call_tool.py deleted file mode 100644 index 92e17aeb7..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/fetch_event_type_hosts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.FetchEventTypeHosts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_type_uri': 'https://calendly.com/api/v1/event_types/12345', 'number_of_rows_to_return': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/fetch_outgoing_communications_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/fetch_outgoing_communications_example_call_tool.js deleted file mode 100644 index dd0f2fc3e..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/fetch_outgoing_communications_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.FetchOutgoingCommunications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_uri": "https://example.com/org/12345", - "created_before": "2023-10-01T00:00:00.000Z", - "number_of_records_to_return": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/fetch_outgoing_communications_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/fetch_outgoing_communications_example_call_tool.py deleted file mode 100644 index af6fb0f06..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/fetch_outgoing_communications_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.FetchOutgoingCommunications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_uri': 'https://example.com/org/12345', - 'created_before': '2023-10-01T00:00:00.000Z', - 'number_of_records_to_return': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_calendly_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_calendly_user_info_example_call_tool.js deleted file mode 100644 index 63602836b..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_calendly_user_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetCalendlyUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_unique_identifier": "me" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_calendly_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_calendly_user_info_example_call_tool.py deleted file mode 100644 index 989981649..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_calendly_user_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetCalendlyUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_unique_identifier': 'me' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_event_availability_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_event_availability_example_call_tool.js deleted file mode 100644 index cc03434d9..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_event_availability_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetEventAvailability"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_type_uri": "http://example.com/events/concert" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_event_availability_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_event_availability_example_call_tool.py deleted file mode 100644 index ff8eb932e..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_event_availability_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetEventAvailability" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_type_uri': 'http://example.com/events/concert' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_event_details_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_event_details_example_call_tool.js deleted file mode 100644 index ea6cd3acc..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_event_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetEventDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_unique_identifier": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_event_details_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_event_details_example_call_tool.py deleted file mode 100644 index 64e169773..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_event_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetEventDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_unique_identifier': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_event_invitee_info_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_event_invitee_info_example_call_tool.js deleted file mode 100644 index 0ce4a0b3f..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_event_invitee_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetEventInviteeInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_unique_identifier": "event_12345", - "invitee_unique_identifier": "invitee_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_event_invitee_info_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_event_invitee_info_example_call_tool.py deleted file mode 100644 index 0864a09f8..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_event_invitee_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetEventInviteeInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_unique_identifier': 'event_12345', 'invitee_unique_identifier': 'invitee_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_event_type_info_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_event_type_info_example_call_tool.js deleted file mode 100644 index ae2ea8579..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_event_type_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetEventTypeInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_type_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_event_type_info_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_event_type_info_example_call_tool.py deleted file mode 100644 index b5518192d..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_event_type_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetEventTypeInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_type_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_group_info_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_group_info_example_call_tool.js deleted file mode 100644 index 57352b662..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_group_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetGroupInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_unique_identifier": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_group_info_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_group_info_example_call_tool.py deleted file mode 100644 index 29475bdd2..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_group_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetGroupInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_unique_identifier': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_group_list_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_group_list_example_call_tool.js deleted file mode 100644 index 75ce2a52d..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_group_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetGroupList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_uri": "https://calendly.com/organizations/12345", - "number_of_rows": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_group_list_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_group_list_example_call_tool.py deleted file mode 100644 index 3ab2d960c..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_group_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetGroupList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_uri': 'https://calendly.com/organizations/12345', 'number_of_rows': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_group_relationship_by_uuid_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_group_relationship_by_uuid_example_call_tool.js deleted file mode 100644 index fff3f675e..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_group_relationship_by_uuid_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetGroupRelationshipByUuid"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_relationship_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_group_relationship_by_uuid_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_group_relationship_by_uuid_example_call_tool.py deleted file mode 100644 index 3d022515f..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_group_relationship_by_uuid_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetGroupRelationshipByUuid" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_relationship_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_invitee_no_show_details_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_invitee_no_show_details_example_call_tool.js deleted file mode 100644 index 05bd53bd4..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_invitee_no_show_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetInviteeNoShowDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invitee_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_invitee_no_show_details_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_invitee_no_show_details_example_call_tool.py deleted file mode 100644 index 670015096..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_invitee_no_show_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetInviteeNoShowDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invitee_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_organization_details_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_organization_details_example_call_tool.js deleted file mode 100644 index e14802574..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_organization_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetOrganizationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_organization_details_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_organization_details_example_call_tool.py deleted file mode 100644 index 80e42ad32..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_organization_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetOrganizationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_organization_invitation_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_organization_invitation_example_call_tool.js deleted file mode 100644 index 5bc5c229c..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_organization_invitation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetOrganizationInvitation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_invitation_uuid": "invitation-12345", - "organization_unique_id": "org-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_organization_invitation_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_organization_invitation_example_call_tool.py deleted file mode 100644 index 790bc2a6b..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_organization_invitation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetOrganizationInvitation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_invitation_uuid': 'invitation-12345', 'organization_unique_id': 'org-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_organization_membership_info_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_organization_membership_info_example_call_tool.js deleted file mode 100644 index e68d33667..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_organization_membership_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetOrganizationMembershipInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_membership_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_organization_membership_info_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_organization_membership_info_example_call_tool.py deleted file mode 100644 index e2408d081..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_organization_membership_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetOrganizationMembershipInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_membership_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_organization_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_organization_memberships_example_call_tool.js deleted file mode 100644 index 039ca0c8b..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_organization_memberships_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetOrganizationMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_email": "user@example.com", - "filter_by_role": "admin", - "number_of_rows_to_return": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_organization_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_organization_memberships_example_call_tool.py deleted file mode 100644 index 42e882c9e..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_organization_memberships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetOrganizationMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_email': 'user@example.com', 'filter_by_role': 'admin', 'number_of_rows_to_return': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_routing_form_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_routing_form_example_call_tool.js deleted file mode 100644 index 8a4e0539d..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_routing_form_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetRoutingForm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "routing_form_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_routing_form_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_routing_form_example_call_tool.py deleted file mode 100644 index 6fca590e0..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_routing_form_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetRoutingForm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'routing_form_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_routing_form_submission_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_routing_form_submission_example_call_tool.js deleted file mode 100644 index 4951404f7..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_routing_form_submission_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetRoutingFormSubmission"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "submission_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_routing_form_submission_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_routing_form_submission_example_call_tool.py deleted file mode 100644 index 20e2f37f0..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_routing_form_submission_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetRoutingFormSubmission" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'submission_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_sample_webhook_data_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_sample_webhook_data_example_call_tool.js deleted file mode 100644 index 297248d90..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_sample_webhook_data_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetSampleWebhookData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "webhook_event_type": "invitee.created", - "webhook_scope": "user", - "user_identifier": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_sample_webhook_data_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_sample_webhook_data_example_call_tool.py deleted file mode 100644 index 7a853565d..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_sample_webhook_data_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetSampleWebhookData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'webhook_event_type': 'invitee.created', - 'webhook_scope': 'user', - 'user_identifier': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_user_account_info_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_user_account_info_example_call_tool.js deleted file mode 100644 index 070570bcf..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_user_account_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetUserAccountInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_user_account_info_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_user_account_info_example_call_tool.py deleted file mode 100644 index 06bf6c060..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_user_account_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetUserAccountInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_user_availability_schedule_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_user_availability_schedule_example_call_tool.js deleted file mode 100644 index 547b0f544..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_user_availability_schedule_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetUserAvailabilitySchedule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_user_availability_schedule_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_user_availability_schedule_example_call_tool.py deleted file mode 100644 index 8df115c40..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_user_availability_schedule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetUserAvailabilitySchedule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_user_availability_schedules_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_user_availability_schedules_example_call_tool.js deleted file mode 100644 index 172ae10d5..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_user_availability_schedules_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetUserAvailabilitySchedules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_uri_reference": "https://example.com/users/12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_user_availability_schedules_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_user_availability_schedules_example_call_tool.py deleted file mode 100644 index a6a158152..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_user_availability_schedules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetUserAvailabilitySchedules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_uri_reference': 'https://example.com/users/12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_user_location_info_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_user_location_info_example_call_tool.js deleted file mode 100644 index 5e4e0e392..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_user_location_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetUserLocationInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_uri": "user:12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_user_location_info_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_user_location_info_example_call_tool.py deleted file mode 100644 index 36dc3e400..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_user_location_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetUserLocationInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_uri': 'user:12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/get_webhook_subscription_example_call_tool.js deleted file mode 100644 index 5536d16c3..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.GetWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_identifier": "sub_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/get_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/get_webhook_subscription_example_call_tool.py deleted file mode 100644 index fe4506369..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/get_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.GetWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_identifier': 'sub_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/invite_user_to_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/invite_user_to_organization_example_call_tool.js deleted file mode 100644 index 4513bb4a3..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/invite_user_to_organization_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.InviteUserToOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_unique_identifier": "org_12345", - "user_email": "user@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/invite_user_to_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/invite_user_to_organization_example_call_tool.py deleted file mode 100644 index 015a80ae8..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/invite_user_to_organization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.InviteUserToOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_unique_identifier': 'org_12345', 'user_email': 'user@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_activity_log_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/list_activity_log_entries_example_call_tool.js deleted file mode 100644 index 3dff0120b..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_activity_log_entries_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.ListActivityLogEntries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_uri": "https://api.calendly.com/organizations/12345", - "actions": [ - "create", - "delete" - ], - "entry_categories": [ - "meeting", - "invite" - ], - "filter_by_search_term": "(email) + (signup)", - "number_of_rows_to_return": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_activity_log_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/list_activity_log_entries_example_call_tool.py deleted file mode 100644 index 95a123d26..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_activity_log_entries_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.ListActivityLogEntries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_uri': 'https://api.calendly.com/organizations/12345', - 'actions': ['create', 'delete'], - 'entry_categories': ['meeting', 'invite'], - 'filter_by_search_term': '(email) + (signup)', - 'number_of_rows_to_return': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_available_event_times_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/list_available_event_times_example_call_tool.js deleted file mode 100644 index 2f8db810e..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_available_event_times_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.ListAvailableEventTimes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "availability_start_time": "2023-10-01T09:00:00Z", - "availability_end_time": "2023-10-08T17:00:00Z", - "event_type_uri": "http://example.com/events/meeting" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_available_event_times_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/list_available_event_times_example_call_tool.py deleted file mode 100644 index 04fb0ea30..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_available_event_times_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.ListAvailableEventTimes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'availability_start_time': '2023-10-01T09:00:00Z', - 'availability_end_time': '2023-10-08T17:00:00Z', - 'event_type_uri': 'http://example.com/events/meeting' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_event_invitees_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/list_event_invitees_example_call_tool.js deleted file mode 100644 index 5223f79b0..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_event_invitees_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.ListEventInvitees"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_uuid": "123e4567-e89b-12d3-a456-426614174000", - "filter_by_email": "example@example.com", - "invitee_status": "active", - "number_of_invitees_to_return": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_event_invitees_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/list_event_invitees_example_call_tool.py deleted file mode 100644 index 79a6fc8cf..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_event_invitees_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.ListEventInvitees" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'filter_by_email': 'example@example.com', - 'invitee_status': 'active', - 'number_of_invitees_to_return': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_event_types_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/list_event_types_example_call_tool.js deleted file mode 100644 index 0716e1fe6..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_event_types_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.ListEventTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "number_of_event_types_to_return": 5, - "only_admin_managed": true, - "organization_uri": "https://calendly.com/organizations/12345", - "return_active_event_types_only": true, - "sort_event_types_by": "name:asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_event_types_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/list_event_types_example_call_tool.py deleted file mode 100644 index ce75a738b..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_event_types_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.ListEventTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'number_of_event_types_to_return': 5, - 'only_admin_managed': True, - 'organization_uri': 'https://calendly.com/organizations/12345', - 'return_active_event_types_only': True, - 'sort_event_types_by': 'name:asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_group_relationships_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/list_group_relationships_example_call_tool.js deleted file mode 100644 index f87b99f4c..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_group_relationships_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.ListGroupRelationships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_group": "group123", - "number_of_rows": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_group_relationships_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/list_group_relationships_example_call_tool.py deleted file mode 100644 index 8674192cc..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_group_relationships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.ListGroupRelationships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_group': 'group123', 'number_of_rows': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_organization_invitations_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/list_organization_invitations_example_call_tool.js deleted file mode 100644 index 08c0897a5..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_organization_invitations_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.ListOrganizationInvitations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_unique_identifier": "org-12345", - "filter_by_status": "pending", - "rows_to_return": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_organization_invitations_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/list_organization_invitations_example_call_tool.py deleted file mode 100644 index fa14fa7e7..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_organization_invitations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.ListOrganizationInvitations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_unique_identifier': 'org-12345', 'filter_by_status': 'pending', 'rows_to_return': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_routing_form_submissions_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/list_routing_form_submissions_example_call_tool.js deleted file mode 100644 index f353840f2..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_routing_form_submissions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.ListRoutingFormSubmissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "routing_form_uri": "https://calendly.com/forms/12345", - "number_of_rows_to_return": 10, - "sort_order": "created_at:desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_routing_form_submissions_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/list_routing_form_submissions_example_call_tool.py deleted file mode 100644 index ecee1fd6c..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_routing_form_submissions_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.ListRoutingFormSubmissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'routing_form_uri': 'https://calendly.com/forms/12345', - 'number_of_rows_to_return': 10, - 'sort_order': 'created_at:desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_routing_forms_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/list_routing_forms_example_call_tool.js deleted file mode 100644 index a780057e9..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_routing_forms_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.ListRoutingForms"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_uri": "https://api.example.com/organizations/123", - "number_of_rows": 10, - "sort_order": "created_at,asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_routing_forms_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/list_routing_forms_example_call_tool.py deleted file mode 100644 index b217f76ab..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_routing_forms_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.ListRoutingForms" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_uri': 'https://api.example.com/organizations/123', - 'number_of_rows': 10, - 'sort_order': 'created_at,asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_scheduled_events_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/list_scheduled_events_example_call_tool.js deleted file mode 100644 index 0a209d4e6..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_scheduled_events_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.ListScheduledEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_status": "active", - "events_sort_order": "start_time:asc", - "invitee_email": "example@example.com", - "number_of_rows_to_return": 10, - "user_uri": "https://calendly.com/users/12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_scheduled_events_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/list_scheduled_events_example_call_tool.py deleted file mode 100644 index 5aa31c4f7..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_scheduled_events_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.ListScheduledEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_status': 'active', - 'events_sort_order': 'start_time:asc', - 'invitee_email': 'example@example.com', - 'number_of_rows_to_return': 10, - 'user_uri': 'https://calendly.com/users/12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_user_busy_times_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/list_user_busy_times_example_call_tool.js deleted file mode 100644 index a871d2703..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_user_busy_times_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.ListUserBusyTimes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "availability_start_time": "2023-10-10T09:00:00Z", - "end_time": "2023-10-10T17:00:00Z", - "user_uri": "user:12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_user_busy_times_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/list_user_busy_times_example_call_tool.py deleted file mode 100644 index b00b6b340..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_user_busy_times_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.ListUserBusyTimes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'availability_start_time': '2023-10-10T09:00:00Z', - 'end_time': '2023-10-10T17:00:00Z', - 'user_uri': 'user:12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_webhook_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/list_webhook_subscriptions_example_call_tool.js deleted file mode 100644 index 450a9bf5c..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_webhook_subscriptions_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.ListWebhookSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_scope": "user", - "organization_id": "org_12345", - "filter_by_user": "user_67890", - "number_of_rows_to_return": 10, - "sort_by_field_and_direction": "created_at:desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/list_webhook_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/list_webhook_subscriptions_example_call_tool.py deleted file mode 100644 index 80232d2f7..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/list_webhook_subscriptions_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.ListWebhookSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_scope': 'user', - 'organization_id': 'org_12345', - 'filter_by_user': 'user_67890', - 'number_of_rows_to_return': 10, - 'sort_by_field_and_direction': 'created_at:desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/mark_invitee_no_show_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/mark_invitee_no_show_example_call_tool.js deleted file mode 100644 index 61cb3ab1d..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/mark_invitee_no_show_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.MarkInviteeNoShow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invitee_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/mark_invitee_no_show_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/mark_invitee_no_show_example_call_tool.py deleted file mode 100644 index fa4599698..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/mark_invitee_no_show_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.MarkInviteeNoShow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invitee_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/remove_user_from_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/remove_user_from_organization_example_call_tool.js deleted file mode 100644 index 4c03999ee..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/remove_user_from_organization_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.RemoveUserFromOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_membership_unique_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/remove_user_from_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/remove_user_from_organization_example_call_tool.py deleted file mode 100644 index be8979fb4..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/remove_user_from_organization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.RemoveUserFromOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_membership_unique_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/revoke_organization_invitation_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/revoke_organization_invitation_example_call_tool.js deleted file mode 100644 index 733ce9a9a..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/revoke_organization_invitation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.RevokeOrganizationInvitation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invitation_unique_identifier": "abc123", - "organization_unique_identifier": "org456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/revoke_organization_invitation_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/revoke_organization_invitation_example_call_tool.py deleted file mode 100644 index 403a25a51..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/revoke_organization_invitation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.RevokeOrganizationInvitation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invitation_unique_identifier': 'abc123', 'organization_unique_identifier': 'org456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/undo_invitee_no_show_status_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/undo_invitee_no_show_status_example_call_tool.js deleted file mode 100644 index c5c5c3a39..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/undo_invitee_no_show_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.UndoInviteeNoShowStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invitee_unique_id": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/undo_invitee_no_show_status_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/undo_invitee_no_show_status_example_call_tool.py deleted file mode 100644 index 54052ec97..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/undo_invitee_no_show_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.UndoInviteeNoShowStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invitee_unique_id': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/update_event_availability_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/update_event_availability_example_call_tool.js deleted file mode 100644 index 6d4b5b6b6..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/update_event_availability_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.UpdateEventAvailability"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "event_type_uri": "https://example.com/events/123", - "request_body": "{\"availability\":{\"days\":[\"Monday\",\"Wednesday\"],\"times\":[{\"start\":\"09:00\",\"end\":\"17:00\"}]}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/update_event_availability_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/update_event_availability_example_call_tool.py deleted file mode 100644 index ad15c065b..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/update_event_availability_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.UpdateEventAvailability" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'event_type_uri': 'https://example.com/events/123', - 'request_body': '{"availability":{"days":["Monday","Wednesday"],"times":[{"start":"09:00","end":"17:00"}]}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/calendly_api/update_event_type_example_call_tool.js b/public/examples/integrations/mcp-servers/calendly_api/update_event_type_example_call_tool.js deleted file mode 100644 index a5fb9d64d..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/update_event_type_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CalendlyApi.UpdateEventType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "event_type_uuid": "12345-abcde-67890-fghij", - "request_body": "{\"name\":\"Updated Event Name\",\"duration\":30}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/calendly_api/update_event_type_example_call_tool.py b/public/examples/integrations/mcp-servers/calendly_api/update_event_type_example_call_tool.py deleted file mode 100644 index 73f654e06..000000000 --- a/public/examples/integrations/mcp-servers/calendly_api/update_event_type_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CalendlyApi.UpdateEventType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'event_type_uuid': '12345-abcde-67890-fghij', - 'request_body': '{"name":"Updated Event Name","duration":30}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickhouse/discover_databases_example_call_tool.js b/public/examples/integrations/mcp-servers/clickhouse/discover_databases_example_call_tool.js deleted file mode 100644 index 7c6556b40..000000000 --- a/public/examples/integrations/mcp-servers/clickhouse/discover_databases_example_call_tool.js +++ /dev/null @@ -1,16 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickhouse.DiscoverSchemas"; - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/clickhouse/discover_databases_example_call_tool.py b/public/examples/integrations/mcp-servers/clickhouse/discover_databases_example_call_tool.py deleted file mode 100644 index 22ae0ae46..000000000 --- a/public/examples/integrations/mcp-servers/clickhouse/discover_databases_example_call_tool.py +++ /dev/null @@ -1,17 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Clickhouse.DiscoverSchemas" - -user_id = "{arcade_user_id}" - -tool_input = {} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/clickhouse/discover_schemas_example_call_tool.js b/public/examples/integrations/mcp-servers/clickhouse/discover_schemas_example_call_tool.js deleted file mode 100644 index 7c6556b40..000000000 --- a/public/examples/integrations/mcp-servers/clickhouse/discover_schemas_example_call_tool.js +++ /dev/null @@ -1,16 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickhouse.DiscoverSchemas"; - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/clickhouse/discover_schemas_example_call_tool.py b/public/examples/integrations/mcp-servers/clickhouse/discover_schemas_example_call_tool.py deleted file mode 100644 index 22ae0ae46..000000000 --- a/public/examples/integrations/mcp-servers/clickhouse/discover_schemas_example_call_tool.py +++ /dev/null @@ -1,17 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Clickhouse.DiscoverSchemas" - -user_id = "{arcade_user_id}" - -tool_input = {} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/clickhouse/discover_tables_example_call_tool.js b/public/examples/integrations/mcp-servers/clickhouse/discover_tables_example_call_tool.js deleted file mode 100644 index 6360e5890..000000000 --- a/public/examples/integrations/mcp-servers/clickhouse/discover_tables_example_call_tool.js +++ /dev/null @@ -1,18 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickhouse.DiscoverTables"; - -const toolInput = { - schema_name: "public", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/clickhouse/discover_tables_example_call_tool.py b/public/examples/integrations/mcp-servers/clickhouse/discover_tables_example_call_tool.py deleted file mode 100644 index 65aed5f65..000000000 --- a/public/examples/integrations/mcp-servers/clickhouse/discover_tables_example_call_tool.py +++ /dev/null @@ -1,19 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Clickhouse.DiscoverTables" - -user_id = "{arcade_user_id}" - -tool_input = { - "schema_name": "public", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/clickhouse/execute_select_query_example_call_tool.js b/public/examples/integrations/mcp-servers/clickhouse/execute_select_query_example_call_tool.js deleted file mode 100644 index d64a8adcd..000000000 --- a/public/examples/integrations/mcp-servers/clickhouse/execute_select_query_example_call_tool.js +++ /dev/null @@ -1,22 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickhouse.ExecuteSelectQuery"; - -const toolInput = { - select_clause: "id, name, email", - from_clause: "users", - where_clause: "active = true", - order_by_clause: "name", - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/clickhouse/execute_select_query_example_call_tool.py b/public/examples/integrations/mcp-servers/clickhouse/execute_select_query_example_call_tool.py deleted file mode 100644 index 6d2bf6509..000000000 --- a/public/examples/integrations/mcp-servers/clickhouse/execute_select_query_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Clickhouse.ExecuteSelectQuery" - -user_id = "{arcade_user_id}" - -tool_input = { - "select_clause": "id, name, email", - "from_clause": "users", - "where_clause": "active = true", - "order_by_clause": "name", - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/clickhouse/get_table_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/clickhouse/get_table_schema_example_call_tool.js deleted file mode 100644 index d28518f82..000000000 --- a/public/examples/integrations/mcp-servers/clickhouse/get_table_schema_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickhouse.GetTableSchema"; - -const toolInput = { - schema_name: "public", - table_name: "users", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/clickhouse/get_table_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/clickhouse/get_table_schema_example_call_tool.py deleted file mode 100644 index 73bdcdd17..000000000 --- a/public/examples/integrations/mcp-servers/clickhouse/get_table_schema_example_call_tool.py +++ /dev/null @@ -1,20 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Clickhouse.GetTableSchema" - -user_id = "{arcade_user_id}" - -tool_input = { - "schema_name": "public", - "table_name": "users", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/clickup/create_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/create_comment_example_call_tool.js deleted file mode 100644 index 75cad050b..000000000 --- a/public/examples/integrations/mcp-servers/clickup/create_comment_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.CreateComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "12345", - "comment_text": "This is a sample comment.", - "assignee_id": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/create_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/create_comment_example_call_tool.py deleted file mode 100644 index 15e644c7a..000000000 --- a/public/examples/integrations/mcp-servers/clickup/create_comment_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.CreateComment" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': '12345', 'comment_text': 'This is a sample comment.', 'assignee_id': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/create_comment_reply_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/create_comment_reply_example_call_tool.js deleted file mode 100644 index da38d69ab..000000000 --- a/public/examples/integrations/mcp-servers/clickup/create_comment_reply_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.CreateCommentReply"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": "12345", - "reply_text": "Thanks for the update!", - "assignee_id": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/create_comment_reply_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/create_comment_reply_example_call_tool.py deleted file mode 100644 index ea7523918..000000000 --- a/public/examples/integrations/mcp-servers/clickup/create_comment_reply_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.CreateCommentReply" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': '12345', 'reply_text': 'Thanks for the update!', 'assignee_id': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/create_task_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/create_task_comment_example_call_tool.js deleted file mode 100644 index 893d72757..000000000 --- a/public/examples/integrations/mcp-servers/clickup/create_task_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.CreateTaskComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "5k9z1a2b", - "comment_text": "Please review the API changes and update the integration tests accordingly.", - "assignee_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/create_task_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/create_task_comment_example_call_tool.py deleted file mode 100644 index 0f739b428..000000000 --- a/public/examples/integrations/mcp-servers/clickup/create_task_comment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.CreateTaskComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': '5k9z1a2b', - 'comment_text': 'Please review the API changes and update the integration tests accordingly.', - 'assignee_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/create_task_comment_reply_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/create_task_comment_reply_example_call_tool.js deleted file mode 100644 index ea97ea790..000000000 --- a/public/examples/integrations/mcp-servers/clickup/create_task_comment_reply_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.CreateTaskCommentReply"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": "cmt_987654321", - "reply_text": "Thanks — I’ve reviewed this and updated the spec. Please confirm the API endpoints by EOD.", - "assignee_id": 4321 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/create_task_comment_reply_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/create_task_comment_reply_example_call_tool.py deleted file mode 100644 index 67b448100..000000000 --- a/public/examples/integrations/mcp-servers/clickup/create_task_comment_reply_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.CreateTaskCommentReply" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': 'cmt_987654321', - 'reply_text': 'Thanks — I’ve reviewed this and updated the spec. Please confirm the API ' - 'endpoints by EOD.', - 'assignee_id': 4321 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/create_task_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/create_task_example_call_tool.js deleted file mode 100644 index e98344960..000000000 --- a/public/examples/integrations/mcp-servers/clickup/create_task_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.CreateTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345", - "task_title": "Prepare Q3 Marketing Plan", - "description": "Draft Q3 strategy, budget estimates, and channel plan. Assign owners and review schedule.", - "priority": "HIGH", - "status": "In Progress", - "start_date": "2025-09-01", - "due_date": "2025-09-15", - "sprint_points": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/create_task_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/create_task_example_call_tool.py deleted file mode 100644 index f3b38b80c..000000000 --- a/public/examples/integrations/mcp-servers/clickup/create_task_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.CreateTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345', - 'task_title': 'Prepare Q3 Marketing Plan', - 'description': 'Draft Q3 strategy, budget estimates, and channel plan. Assign owners and ' - 'review schedule.', - 'priority': 'HIGH', - 'status': 'In Progress', - 'start_date': '2025-09-01', - 'due_date': '2025-09-15', - 'sprint_points': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_folders_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/fuzzy_search_folders_by_name_example_call_tool.js deleted file mode 100644 index 0d7496ddd..000000000 --- a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_folders_by_name_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.FuzzySearchFoldersByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "name_to_search": "Marketing Campaigns Q3", - "workspace_id": "987654321", - "scan_size": 300, - "space_ids": [ - "12345", - "67890" - ], - "should_include_archived": false, - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_folders_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/fuzzy_search_folders_by_name_example_call_tool.py deleted file mode 100644 index adf34907c..000000000 --- a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_folders_by_name_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.FuzzySearchFoldersByName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'name_to_search': 'Marketing Campaigns Q3', - 'workspace_id': '987654321', - 'scan_size': 300, - 'space_ids': ['12345', '67890'], - 'should_include_archived': False, - 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_lists_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/fuzzy_search_lists_by_name_example_call_tool.js deleted file mode 100644 index 4033f7869..000000000 --- a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_lists_by_name_example_call_tool.js +++ /dev/null @@ -1,43 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.FuzzySearchListsByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "name_to_search": "Marketing Campaigns", - "workspace_id": "123456", - "scan_size": 200, - "space_ids": [ - "78910", - "78911" - ], - "folder_ids": [ - "555", - "556" - ], - "should_include_archived": false, - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_lists_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/fuzzy_search_lists_by_name_example_call_tool.py deleted file mode 100644 index 86b83d4e0..000000000 --- a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_lists_by_name_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.FuzzySearchListsByName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'name_to_search': 'Marketing Campaigns', - 'workspace_id': '123456', - 'scan_size': 200, - 'space_ids': ['78910', '78911'], - 'folder_ids': ['555', '556'], - 'should_include_archived': False, - 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_members_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/fuzzy_search_members_by_name_example_call_tool.js deleted file mode 100644 index 2e289ce72..000000000 --- a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_members_by_name_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.FuzzySearchMembersByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "name_to_search": "Jonathan Doe", - "workspace_id": "12345", - "scan_size": 300, - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_members_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/fuzzy_search_members_by_name_example_call_tool.py deleted file mode 100644 index eca77ff48..000000000 --- a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_members_by_name_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.FuzzySearchMembersByName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'name_to_search': 'Jonathan Doe', 'workspace_id': '12345', 'scan_size': 300, 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_tasks_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/fuzzy_search_tasks_by_name_example_call_tool.js deleted file mode 100644 index 325938b1c..000000000 --- a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_tasks_by_name_example_call_tool.js +++ /dev/null @@ -1,54 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.FuzzySearchTasksByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "name_to_search": "quarterly roadmap update", - "workspace_id": "123456", - "scan_size": 250, - "include_closed": false, - "statuses": [ - "In Progress", - "Backlog" - ], - "assignee_ids": [ - "78910", - "78911" - ], - "space_ids": [ - "111", - "112" - ], - "folder_ids": [ - "222" - ], - "list_ids": [ - "333", - "334" - ], - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_tasks_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/fuzzy_search_tasks_by_name_example_call_tool.py deleted file mode 100644 index 038e91393..000000000 --- a/public/examples/integrations/mcp-servers/clickup/fuzzy_search_tasks_by_name_example_call_tool.py +++ /dev/null @@ -1,38 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.FuzzySearchTasksByName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'name_to_search': 'quarterly roadmap update', - 'workspace_id': '123456', - 'scan_size': 250, - 'include_closed': False, - 'statuses': ['In Progress', 'Backlog'], - 'assignee_ids': ['78910', '78911'], - 'space_ids': ['111', '112'], - 'folder_ids': ['222'], - 'list_ids': ['333', '334'], - 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/get_comment_replies_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/get_comment_replies_example_call_tool.js deleted file mode 100644 index 749dc3d5e..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_comment_replies_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.GetCommentReplies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": "12345", - "offset": 0, - "limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/get_comment_replies_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/get_comment_replies_example_call_tool.py deleted file mode 100644 index 4c6e89c6c..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_comment_replies_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.GetCommentReplies" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': '12345', 'offset': 0, 'limit': 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/get_folders_for_space_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/get_folders_for_space_example_call_tool.js deleted file mode 100644 index 7ef13c5e5..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_folders_for_space_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.GetFoldersForSpace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "space_id": "space_987654321", - "workspace_id": "123456", - "offset": 0, - "limit": 25, - "include_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/get_folders_for_space_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/get_folders_for_space_example_call_tool.py deleted file mode 100644 index ba342a009..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_folders_for_space_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.GetFoldersForSpace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'space_id': 'space_987654321', - 'workspace_id': '123456', - 'offset': 0, - 'limit': 25, - 'include_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/get_lists_for_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/get_lists_for_folder_example_call_tool.js deleted file mode 100644 index c6f0121d5..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_lists_for_folder_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.GetListsForFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id": "f1234567890abcdef", - "workspace_id": "987654321", - "offset": 0, - "limit": 25, - "include_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/get_lists_for_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/get_lists_for_folder_example_call_tool.py deleted file mode 100644 index 59d883c69..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_lists_for_folder_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.GetListsForFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id': 'f1234567890abcdef', - 'workspace_id': '987654321', - 'offset': 0, - 'limit': 25, - 'include_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/get_lists_for_space_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/get_lists_for_space_example_call_tool.js deleted file mode 100644 index 081fc8e67..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_lists_for_space_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.GetListsForSpace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "space_id": "5f8d3a2b9c1e4b0012345678", - "workspace_id": "987654", - "offset": 0, - "limit": 50, - "include_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/get_lists_for_space_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/get_lists_for_space_example_call_tool.py deleted file mode 100644 index 4f4905404..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_lists_for_space_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.GetListsForSpace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'space_id': '5f8d3a2b9c1e4b0012345678', - 'workspace_id': '987654', - 'offset': 0, - 'limit': 50, - 'include_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/get_members_for_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/get_members_for_workspace_example_call_tool.js deleted file mode 100644 index ad373a952..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_members_for_workspace_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.GetMembersForWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "123456789", - "offset": 0, - "limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/get_members_for_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/get_members_for_workspace_example_call_tool.py deleted file mode 100644 index 5bdcb466b..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_members_for_workspace_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.GetMembersForWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': '123456789', 'offset': 0, 'limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/get_spaces_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/get_spaces_example_call_tool.js deleted file mode 100644 index dde7d3b62..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_spaces_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.GetSpaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "123456", - "offset": 0, - "limit": 25, - "include_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/get_spaces_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/get_spaces_example_call_tool.py deleted file mode 100644 index b3a9ed748..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_spaces_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.GetSpaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': '123456', 'offset': 0, 'limit': 25, 'include_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/get_statuses_for_list_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/get_statuses_for_list_example_call_tool.js deleted file mode 100644 index 97e8555a8..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_statuses_for_list_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.GetStatusesForList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "5f6a7b8c9d0123456789abcd" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/get_statuses_for_list_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/get_statuses_for_list_example_call_tool.py deleted file mode 100644 index 86c9d145b..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_statuses_for_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.GetStatusesForList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '5f6a7b8c9d0123456789abcd' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/get_system_guidance_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/get_system_guidance_example_call_tool.js deleted file mode 100644 index 1e5fe9bba..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_system_guidance_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.GetSystemGuidance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/get_system_guidance_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/get_system_guidance_example_call_tool.py deleted file mode 100644 index eb7429b60..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_system_guidance_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.GetSystemGuidance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/get_task_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/get_task_by_id_example_call_tool.js deleted file mode 100644 index a520e3ae1..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_task_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.GetTaskById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "T12345", - "include_subtasks": true, - "workspace_id_for_custom_id": "ws_98765" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/get_task_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/get_task_by_id_example_call_tool.py deleted file mode 100644 index 3588d8ee3..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_task_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.GetTaskById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': 'T12345', 'include_subtasks': True, 'workspace_id_for_custom_id': 'ws_98765' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/get_task_comment_replies_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/get_task_comment_replies_example_call_tool.js deleted file mode 100644 index e190aa643..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_task_comment_replies_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.GetTaskCommentReplies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": "5f6b8a12-3c4d-4e9a-9f1a-1234567890ab", - "offset": 0, - "limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/get_task_comment_replies_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/get_task_comment_replies_example_call_tool.py deleted file mode 100644 index 4925e9384..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_task_comment_replies_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.GetTaskCommentReplies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': '5f6b8a12-3c4d-4e9a-9f1a-1234567890ab', 'offset': 0, 'limit': 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/get_task_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/get_task_comments_example_call_tool.js deleted file mode 100644 index d24046b42..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_task_comments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.GetTaskComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "5f8d7a2b-1234-4abc-9ef0-abcdef123456", - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/get_task_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/get_task_comments_example_call_tool.py deleted file mode 100644 index 00257055e..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_task_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.GetTaskComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': '5f8d7a2b-1234-4abc-9ef0-abcdef123456', 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/get_tasks_by_assignees_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/get_tasks_by_assignees_example_call_tool.js deleted file mode 100644 index 3b7efe76e..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_tasks_by_assignees_example_call_tool.js +++ /dev/null @@ -1,48 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.GetTasksByAssignees"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "123456", - "assignees_ids": [ - "78910", - "11213" - ], - "offset": 0, - "limit": 25, - "order_by": "due_date", - "should_sort_by_reverse": true, - "statuses": [ - "in progress", - "review" - ], - "include_closed": false, - "due_date_gt": "2025-09-01", - "due_date_lt": "2025-09-30", - "date_created_gt": "2025-01-01", - "date_created_lt": "2025-08-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/get_tasks_by_assignees_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/get_tasks_by_assignees_example_call_tool.py deleted file mode 100644 index 8c8105ffe..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_tasks_by_assignees_example_call_tool.py +++ /dev/null @@ -1,40 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.GetTasksByAssignees" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': '123456', - 'assignees_ids': ['78910', '11213'], - 'offset': 0, - 'limit': 25, - 'order_by': 'due_date', - 'should_sort_by_reverse': True, - 'statuses': ['in progress', 'review'], - 'include_closed': False, - 'due_date_gt': '2025-09-01', - 'due_date_lt': '2025-09-30', - 'date_created_gt': '2025-01-01', - 'date_created_lt': '2025-08-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/get_tasks_by_scope_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/get_tasks_by_scope_example_call_tool.js deleted file mode 100644 index c152d1148..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_tasks_by_scope_example_call_tool.js +++ /dev/null @@ -1,48 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.GetTasksByScope"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "123456", - "scope": "lists", - "item_ids": [ - "78910" - ], - "offset": 0, - "limit": 20, - "order_by": "due_date", - "should_sort_by_reverse": true, - "statuses": [ - "in progress", - "review" - ], - "include_closed": false, - "due_date_gt": "2025-09-01", - "due_date_lt": "2025-09-30", - "date_created_gt": "2025-01-01", - "date_created_lt": "2025-08-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/get_tasks_by_scope_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/get_tasks_by_scope_example_call_tool.py deleted file mode 100644 index ea7d06011..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_tasks_by_scope_example_call_tool.py +++ /dev/null @@ -1,41 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.GetTasksByScope" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': '123456', - 'scope': 'lists', - 'item_ids': ['78910'], - 'offset': 0, - 'limit': 20, - 'order_by': 'due_date', - 'should_sort_by_reverse': True, - 'statuses': ['in progress', 'review'], - 'include_closed': False, - 'due_date_gt': '2025-09-01', - 'due_date_lt': '2025-09-30', - 'date_created_gt': '2025-01-01', - 'date_created_lt': '2025-08-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/get_workspace_insights_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/get_workspace_insights_example_call_tool.js deleted file mode 100644 index 9613a0ed1..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_workspace_insights_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.GetWorkspaceInsights"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/get_workspace_insights_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/get_workspace_insights_example_call_tool.py deleted file mode 100644 index 185cc8223..000000000 --- a/public/examples/integrations/mcp-servers/clickup/get_workspace_insights_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.GetWorkspaceInsights" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': '123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/update_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/update_comment_example_call_tool.js deleted file mode 100644 index 23890af3e..000000000 --- a/public/examples/integrations/mcp-servers/clickup/update_comment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.UpdateComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": "12345", - "task_id": "67890", - "comment_text": "Updated comment text.", - "assignee_id": 42 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/update_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/update_comment_example_call_tool.py deleted file mode 100644 index 9c322fca4..000000000 --- a/public/examples/integrations/mcp-servers/clickup/update_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.UpdateComment" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': '12345', - 'task_id': '67890', - 'comment_text': 'Updated comment text.', - 'assignee_id': 42 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/update_task_assignees_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/update_task_assignees_example_call_tool.js deleted file mode 100644 index dde6670c2..000000000 --- a/public/examples/integrations/mcp-servers/clickup/update_task_assignees_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.UpdateTaskAssignees"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "5f6a9b2c-1234-4d5e-8f00-abcdef123456", - "assignee_ids_to_add": [ - "user_789", - "user_456" - ], - "assignee_ids_to_remove": [ - "user_123" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/update_task_assignees_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/update_task_assignees_example_call_tool.py deleted file mode 100644 index a08b8567c..000000000 --- a/public/examples/integrations/mcp-servers/clickup/update_task_assignees_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.UpdateTaskAssignees" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': '5f6a9b2c-1234-4d5e-8f00-abcdef123456', - 'assignee_ids_to_add': ['user_789', 'user_456'], - 'assignee_ids_to_remove': ['user_123'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/update_task_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/update_task_comment_example_call_tool.js deleted file mode 100644 index db43b56fc..000000000 --- a/public/examples/integrations/mcp-servers/clickup/update_task_comment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.UpdateTaskComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": "cmt_987654321", - "task_id": "task_12345", - "comment_text": "Updated: Please review the latest changes and confirm.", - "assignee_id": 1024, - "resolution": "resolved" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/update_task_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/update_task_comment_example_call_tool.py deleted file mode 100644 index b7dbc1726..000000000 --- a/public/examples/integrations/mcp-servers/clickup/update_task_comment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.UpdateTaskComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': 'cmt_987654321', - 'task_id': 'task_12345', - 'comment_text': 'Updated: Please review the latest changes and confirm.', - 'assignee_id': 1024, - 'resolution': 'resolved' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/update_task_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/update_task_example_call_tool.js deleted file mode 100644 index 00b3fd304..000000000 --- a/public/examples/integrations/mcp-servers/clickup/update_task_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.UpdateTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "abc123", - "task_title": "Finalize onboarding docs", - "description": "Update docs for new hires: add checklist and links to resources.", - "priority": "HIGH", - "status": "In Progress", - "due_date": "2025-09-05", - "start_date": "2025-08-29 09:00", - "sprint_points": 3 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/update_task_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/update_task_example_call_tool.py deleted file mode 100644 index afce9292a..000000000 --- a/public/examples/integrations/mcp-servers/clickup/update_task_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.UpdateTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': 'abc123', - 'task_title': 'Finalize onboarding docs', - 'description': 'Update docs for new hires: add checklist and links to resources.', - 'priority': 'HIGH', - 'status': 'In Progress', - 'due_date': '2025-09-05', - 'start_date': '2025-08-29 09:00', - 'sprint_points': 3 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/who_am_i_example_call_tool.js deleted file mode 100644 index 36acfb228..000000000 --- a/public/examples/integrations/mcp-servers/clickup/who_am_i_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/who_am_i_example_call_tool.py deleted file mode 100644 index bdb088a50..000000000 --- a/public/examples/integrations/mcp-servers/clickup/who_am_i_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.WhoAmI" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup/who_i_am_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup/who_i_am_example_call_tool.js deleted file mode 100644 index be531ce05..000000000 --- a/public/examples/integrations/mcp-servers/clickup/who_i_am_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Clickup.WhoIAm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup/who_i_am_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup/who_i_am_example_call_tool.py deleted file mode 100644 index 85fe6e039..000000000 --- a/public/examples/integrations/mcp-servers/clickup/who_i_am_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Clickup.WhoIAm" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_chat_view_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_chat_view_comment_example_call_tool.js deleted file mode 100644 index 74c7f2504..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_chat_view_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddChatViewComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_text": "Great job on the project!", - "send_notifications_to_all": true, - "view_id": "view_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_chat_view_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_chat_view_comment_example_call_tool.py deleted file mode 100644 index d755dcb06..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_chat_view_comment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddChatViewComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_text': 'Great job on the project!', - 'send_notifications_to_all': True, - 'view_id': 'view_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_checklist_item_clickup_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_checklist_item_clickup_example_call_tool.js deleted file mode 100644 index 90ad2ee79..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_checklist_item_clickup_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddChecklistItemClickup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checklist_identifier": "123e4567-e89b-12d3-a456-426614174000", - "assignee_user_id": 42, - "checklist_item_name": "Review code" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_checklist_item_clickup_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_checklist_item_clickup_example_call_tool.py deleted file mode 100644 index e3356155e..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_checklist_item_clickup_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddChecklistItemClickup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checklist_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'assignee_user_id': 42, - 'checklist_item_name': 'Review code' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_checklist_to_task_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_checklist_to_task_example_call_tool.js deleted file mode 100644 index a77682e6e..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_checklist_to_task_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddChecklistToTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checklist_name": "Weekly Review", - "task_identifier": "12345", - "use_custom_task_ids": true, - "workspace_id_for_custom_task": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_checklist_to_task_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_checklist_to_task_example_call_tool.py deleted file mode 100644 index b5844e9f8..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_checklist_to_task_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddChecklistToTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checklist_name': 'Weekly Review', - 'task_identifier': '12345', - 'use_custom_task_ids': True, - 'workspace_id_for_custom_task': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_comment_to_list_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_comment_to_list_example_call_tool.js deleted file mode 100644 index 619d69280..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_comment_to_list_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddCommentToList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "assignee_id": 12345, - "comment_text": "Please review the latest updates.", - "list_identifier": 67890, - "notify_all": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_comment_to_list_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_comment_to_list_example_call_tool.py deleted file mode 100644 index 8126c53fd..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_comment_to_list_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddCommentToList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'assignee_id': 12345, - 'comment_text': 'Please review the latest updates.', - 'list_identifier': 67890, - 'notify_all': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_folderless_list_to_space_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_folderless_list_to_space_example_call_tool.js deleted file mode 100644 index 19413284e..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_folderless_list_to_space_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddFolderlessListToSpace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_name": "New Task List", - "space_id": 12345, - "due_date_timestamp": 1699996800, - "include_due_time": true, - "list_color_status": "#FF5733" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_folderless_list_to_space_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_folderless_list_to_space_example_call_tool.py deleted file mode 100644 index c6bafb82d..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_folderless_list_to_space_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddFolderlessListToSpace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_name': 'New Task List', - 'space_id': 12345, - 'due_date_timestamp': 1699996800, - 'include_due_time': True, - 'list_color_status': '#FF5733' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_guest_to_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_guest_to_folder_example_call_tool.js deleted file mode 100644 index ffaa25678..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_guest_to_folder_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddGuestToFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id": 12345, - "guest_identifier": 67890, - "guest_permission_level": "edit", - "include_shared_items": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_guest_to_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_guest_to_folder_example_call_tool.py deleted file mode 100644 index 405a9f79c..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_guest_to_folder_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddGuestToFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id': 12345, - 'guest_identifier': 67890, - 'guest_permission_level': 'edit', - 'include_shared_items': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_guest_to_list_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_guest_to_list_example_call_tool.js deleted file mode 100644 index 157dfdf62..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_guest_to_list_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddGuestToList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "guest_id": 12345, - "guest_permission_level": "edit", - "list_id": 67890, - "include_shared_details": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_guest_to_list_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_guest_to_list_example_call_tool.py deleted file mode 100644 index 329a647cf..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_guest_to_list_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddGuestToList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'guest_id': 12345, - 'guest_permission_level': 'edit', - 'list_id': 67890, - 'include_shared_details': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_space_task_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_space_task_tag_example_call_tool.js deleted file mode 100644 index 81eaa57e8..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_space_task_tag_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddSpaceTaskTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "space_identifier": 123, - "tag_background_color": "#FF5733", - "tag_foreground_color": "#FFFFFF", - "tag_name": "Urgent" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_space_task_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_space_task_tag_example_call_tool.py deleted file mode 100644 index 3c78c2d25..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_space_task_tag_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddSpaceTaskTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'space_identifier': 123, - 'tag_background_color': '#FF5733', - 'tag_foreground_color': '#FFFFFF', - 'tag_name': 'Urgent' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_space_view_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_space_view_example_call_tool.js deleted file mode 100644 index 5d64b0970..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_space_view_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddSpaceView"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "space_id": 12345, - "request_body": "{\"view_type\":\"List\",\"name\":\"New List View\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_space_view_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_space_view_example_call_tool.py deleted file mode 100644 index 8e2c06811..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_space_view_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddSpaceView" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'space_id': 12345, - 'request_body': '{"view_type":"List","name":"New List View"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_tag_to_task_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_tag_to_task_example_call_tool.js deleted file mode 100644 index 349680324..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_tag_to_task_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddTagToTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type": "application/json", - "tag_name": "urgent", - "task_identifier": "12345", - "use_custom_task_ids": true, - "workspace_id_if_custom_task_ids": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_tag_to_task_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_tag_to_task_example_call_tool.py deleted file mode 100644 index 42de99e93..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_tag_to_task_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddTagToTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type': 'application/json', - 'tag_name': 'urgent', - 'task_identifier': '12345', - 'use_custom_task_ids': True, - 'workspace_id_if_custom_task_ids': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_tag_to_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_tag_to_time_entry_example_call_tool.js deleted file mode 100644 index 289d51688..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_tag_to_time_entry_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddTagToTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "workspace_id": 12345, - "request_body": "{\"tag\":\"development\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_tag_to_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_tag_to_time_entry_example_call_tool.py deleted file mode 100644 index 474b8fc0d..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_tag_to_time_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddTagToTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'workspace_id': 12345, 'request_body': '{"tag":"development"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_target_to_goal_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_target_to_goal_example_call_tool.js deleted file mode 100644 index 0f3f1c2d1..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_target_to_goal_example_call_tool.js +++ /dev/null @@ -1,48 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddTargetToGoal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_identifier": "123e4567-e89b-12d3-a456-426614174000", - "initial_value_steps": 0, - "linked_task_ids": [ - "task_1", - "task_2" - ], - "list_ids": [ - "list_1", - "list_2" - ], - "target_name": "Increase User Engagement", - "target_owners_ids": [ - "user_1", - "user_2" - ], - "target_steps_end": 100, - "target_type": "percentage", - "target_unit": "%" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_target_to_goal_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_target_to_goal_example_call_tool.py deleted file mode 100644 index 529ca7ae4..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_target_to_goal_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddTargetToGoal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'initial_value_steps': 0, - 'linked_task_ids': ['task_1', 'task_2'], - 'list_ids': ['list_1', 'list_2'], - 'target_name': 'Increase User Engagement', - 'target_owners_ids': ['user_1', 'user_2'], - 'target_steps_end': 100, - 'target_type': 'percentage', - 'target_unit': '%' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_task_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_task_comment_example_call_tool.js deleted file mode 100644 index 0f7677e22..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_task_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddTaskComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_content": "This is a comment regarding the task update.", - "send_notifications_to_all": true, - "specific_task_id": "task_12345", - "assignee_group": "developers,designers" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_task_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_task_comment_example_call_tool.py deleted file mode 100644 index 4caf905d2..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_task_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddTaskComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_content': 'This is a comment regarding the task update.', - 'send_notifications_to_all': True, - 'specific_task_id': 'task_12345', - 'assignee_group': 'developers,designers' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_task_to_clickup_list_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_task_to_clickup_list_example_call_tool.js deleted file mode 100644 index ae4185a22..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_task_to_clickup_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddTaskToClickupList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_list_id": 123456, - "task_identifier": "task_7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_task_to_clickup_list_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_task_to_clickup_list_example_call_tool.py deleted file mode 100644 index f414d765f..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_task_to_clickup_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddTaskToClickupList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_list_id': 123456, 'task_identifier': 'task_7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_view_to_clickup_list_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_view_to_clickup_list_example_call_tool.js deleted file mode 100644 index b9d2ce6b3..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_view_to_clickup_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddViewToClickupList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "clickup_list_id": 12345, - "request_body": "{\"view_type\":\"board\",\"name\":\"New Board View\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_view_to_clickup_list_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_view_to_clickup_list_example_call_tool.py deleted file mode 100644 index 269e67f7e..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_view_to_clickup_list_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddViewToClickupList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'clickup_list_id': 12345, - 'request_body': '{"view_type":"board","name":"New Board View"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_view_to_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/add_view_to_folder_example_call_tool.js deleted file mode 100644 index f494bb4d8..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_view_to_folder_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.AddViewToFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "folder_id": 12345, - "request_body": "{\"view_type\":\"List\",\"name\":\"My List View\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/add_view_to_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/add_view_to_folder_example_call_tool.py deleted file mode 100644 index 1a1796013..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/add_view_to_folder_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.AddViewToFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'folder_id': 12345, - 'request_body': '{"view_type":"List","name":"My List View"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/clickup_legacy_time_tracking_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/clickup_legacy_time_tracking_example_call_tool.js deleted file mode 100644 index c3c216988..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/clickup_legacy_time_tracking_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ClickupLegacyTimeTracking"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "clickup_task_id": "abc-123", - "end_timestamp": 1697049600, - "start_time_unix_epoch": 1697046000, - "time_spent_seconds": 3600, - "use_custom_task_ids": true, - "workspace_id": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/clickup_legacy_time_tracking_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/clickup_legacy_time_tracking_example_call_tool.py deleted file mode 100644 index 988e1e127..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/clickup_legacy_time_tracking_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ClickupLegacyTimeTracking" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'clickup_task_id': 'abc-123', - 'end_timestamp': 1697049600, - 'start_time_unix_epoch': 1697046000, - 'time_spent_seconds': 3600, - 'use_custom_task_ids': True, - 'workspace_id': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/configure_workspace_guest_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/configure_workspace_guest_example_call_tool.js deleted file mode 100644 index 58526b7e1..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/configure_workspace_guest_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ConfigureWorkspaceGuest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "guest_identifier": 12345, - "workspace_id": 67890, - "allow_guest_to_edit_tags": true, - "allow_view_creation": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/configure_workspace_guest_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/configure_workspace_guest_example_call_tool.py deleted file mode 100644 index 68d2c1fc0..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/configure_workspace_guest_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ConfigureWorkspaceGuest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'guest_identifier': 12345, - 'workspace_id': 67890, - 'allow_guest_to_edit_tags': True, - 'allow_view_creation': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_clickup_list_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/create_clickup_list_example_call_tool.js deleted file mode 100644 index 5ee123f49..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_clickup_list_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.CreateClickupList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id": 12345, - "list_name": "New Project List", - "due_date_timestamp": 1699996800, - "formatted_list_description": "## Project Goals\n- Goal 1\n- Goal 2", - "include_time_in_due_date": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_clickup_list_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/create_clickup_list_example_call_tool.py deleted file mode 100644 index 504632374..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_clickup_list_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.CreateClickupList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id': 12345, - 'list_name': 'New Project List', - 'due_date_timestamp': 1699996800, - 'formatted_list_description': '## Project Goals\n- Goal 1\n- Goal 2', - 'include_time_in_due_date': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_folder_from_template_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/create_folder_from_template_example_call_tool.js deleted file mode 100644 index c07a9b5e9..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_folder_from_template_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.CreateFolderFromTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "clickup_space_id": "12345", - "folder_template_id": "template_67890", - "request_body": "{\"name\":\"New Folder\",\"description\":\"Created from template\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_folder_from_template_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/create_folder_from_template_example_call_tool.py deleted file mode 100644 index 42539ed32..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_folder_from_template_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.CreateFolderFromTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'clickup_space_id': '12345', - 'folder_template_id': 'template_67890', - 'request_body': '{"name":"New Folder","description":"Created from template"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_folder_in_space_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/create_folder_in_space_example_call_tool.js deleted file mode 100644 index 217f637a1..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_folder_in_space_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.CreateFolderInSpace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_name": "Project Alpha", - "space_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_folder_in_space_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/create_folder_in_space_example_call_tool.py deleted file mode 100644 index f40e0d90a..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_folder_in_space_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.CreateFolderInSpace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_name': 'Project Alpha', 'space_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_list_from_folder_template_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/create_list_from_folder_template_example_call_tool.js deleted file mode 100644 index eaeffb1b0..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_list_from_folder_template_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.CreateListFromFolderTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "folder_identifier": "12345", - "template_id_for_list_creation": "template_67890", - "request_body": "{\"name\":\"New List\",\"description\":\"This is a new list created from a template.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_list_from_folder_template_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/create_list_from_folder_template_example_call_tool.py deleted file mode 100644 index fc126469c..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_list_from_folder_template_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.CreateListFromFolderTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'folder_identifier': '12345', - 'template_id_for_list_creation': 'template_67890', - 'request_body': '{"name":"New List","description":"This is a new list created from a ' - 'template."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_list_from_template_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/create_list_from_template_example_call_tool.js deleted file mode 100644 index a0ca41cdc..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_list_from_template_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.CreateListFromTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "space_id_for_list_creation": "12345", - "template_id": "template_67890", - "request_body": "{\"name\":\"New List\",\"description\":\"This is a new list created from a template.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_list_from_template_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/create_list_from_template_example_call_tool.py deleted file mode 100644 index 510084dc1..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_list_from_template_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.CreateListFromTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'space_id_for_list_creation': '12345', - 'template_id': 'template_67890', - 'request_body': '{"name":"New List","description":"This is a new list created from a ' - 'template."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_new_clickup_task_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/create_new_clickup_task_example_call_tool.js deleted file mode 100644 index 1264a9b50..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_new_clickup_task_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.CreateNewClickupTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "target_list_id": 123, - "request_body": "{\"name\":\"New Task\",\"description\":\"This is a sample task.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_new_clickup_task_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/create_new_clickup_task_example_call_tool.py deleted file mode 100644 index d4203fced..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_new_clickup_task_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.CreateNewClickupTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'target_list_id': 123, - 'request_body': '{"name":"New Task","description":"This is a sample task."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_space_in_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/create_space_in_workspace_example_call_tool.js deleted file mode 100644 index 2c06e98af..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_space_in_workspace_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.CreateSpaceInWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "workspace_id": 123, - "request_body": "{\"name\":\"New Space\",\"color\":\"#FF5733\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_space_in_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/create_space_in_workspace_example_call_tool.py deleted file mode 100644 index c4fcdb17e..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_space_in_workspace_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.CreateSpaceInWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'workspace_id': 123, 'request_body': '{"name":"New Space","color":"#FF5733"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_task_from_template_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/create_task_from_template_example_call_tool.js deleted file mode 100644 index 97b4055f2..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_task_from_template_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.CreateTaskFromTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_list_id": 123, - "task_name": "New Feature Development", - "task_template_id": "template_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_task_from_template_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/create_task_from_template_example_call_tool.py deleted file mode 100644 index efeb3104b..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_task_from_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.CreateTaskFromTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_list_id': 123, 'task_name': 'New Feature Development', 'task_template_id': 'template_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_team_view_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/create_team_view_example_call_tool.js deleted file mode 100644 index 03bb69e53..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_team_view_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.CreateTeamView"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "workspace_id": 123, - "request_body": "{\"viewType\":\"List\",\"viewName\":\"My Tasks\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_team_view_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/create_team_view_example_call_tool.py deleted file mode 100644 index 63715d3ca..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_team_view_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.CreateTeamView" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'workspace_id': 123, - 'request_body': '{"viewType":"List","viewName":"My Tasks"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_threaded_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/create_threaded_comment_example_call_tool.js deleted file mode 100644 index c9c728c14..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_threaded_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.CreateThreadedComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "parent_comment_id": 12345, - "request_body": "{\"text\":\"This is a threaded comment reply.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_threaded_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/create_threaded_comment_example_call_tool.py deleted file mode 100644 index e0bb61be6..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_threaded_comment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.CreateThreadedComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'parent_comment_id': 12345, - 'request_body': '{"text":"This is a threaded comment reply."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/create_time_entry_example_call_tool.js deleted file mode 100644 index 520ce322f..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_time_entry_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.CreateTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_id_numeric": 123, - "request_body": "{\"task\":\"development\",\"duration\":2}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/create_time_entry_example_call_tool.py deleted file mode 100644 index 5baa3a1a4..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_time_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.CreateTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'team_id_numeric': 123, 'request_body': '{"task":"development","duration":2}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_user_group_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/create_user_group_example_call_tool.js deleted file mode 100644 index 2a6791fc1..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_user_group_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.CreateUserGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_name": "Developers", - "user_group_members": [ - 101, - 102, - 103 - ], - "workspace_id": 12345, - "group_handle": "devs_group" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_user_group_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/create_user_group_example_call_tool.py deleted file mode 100644 index 562e17a08..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_user_group_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.CreateUserGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_name': 'Developers', - 'user_group_members': [101, 102, 103], - 'workspace_id': 12345, - 'group_handle': 'devs_group' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_workspace_goal_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/create_workspace_goal_example_call_tool.js deleted file mode 100644 index 176dc806c..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_workspace_goal_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.CreateWorkspaceGoal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "allow_multiple_owners": true, - "due_date_timestamp": 1699996800000, - "goal_color": "#FF5733", - "goal_description": "Increase user engagement by 20% in Q4.", - "goal_name": "User Engagement Improvement", - "goal_owners": [ - 101, - 102 - ], - "workspace_id": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/create_workspace_goal_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/create_workspace_goal_example_call_tool.py deleted file mode 100644 index 4a164a7e6..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/create_workspace_goal_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.CreateWorkspaceGoal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'allow_multiple_owners': True, - 'due_date_timestamp': 1699996800000, - 'goal_color': '#FF5733', - 'goal_description': 'Increase user engagement by 20% in Q4.', - 'goal_name': 'User Engagement Improvement', - 'goal_owners': [101, 102], - 'workspace_id': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_checklist_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/delete_checklist_example_call_tool.js deleted file mode 100644 index ead5531fb..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_checklist_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.DeleteChecklist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checklist_id": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_checklist_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/delete_checklist_example_call_tool.py deleted file mode 100644 index 333d38f39..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_checklist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.DeleteChecklist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checklist_id': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_goal_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/delete_goal_example_call_tool.js deleted file mode 100644 index 70d691799..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_goal_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.DeleteGoal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type_header": "application/json", - "goal_identifier": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_goal_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/delete_goal_example_call_tool.py deleted file mode 100644 index 67ca31c5c..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_goal_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.DeleteGoal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type_header': 'application/json', - 'goal_identifier': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_goal_target_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/delete_goal_target_example_call_tool.js deleted file mode 100644 index fc8d8ab5c..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_goal_target_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.DeleteGoalTarget"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_target_id": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_goal_target_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/delete_goal_target_example_call_tool.py deleted file mode 100644 index 56141b185..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_goal_target_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.DeleteGoalTarget" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_target_id': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_space_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/delete_space_tag_example_call_tool.js deleted file mode 100644 index 528884c07..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_space_tag_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.DeleteSpaceTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "space_identifier": 123, - "tag_name_to_delete": "urgent", - "request_body": "{\"tag\":\"urgent\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_space_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/delete_space_tag_example_call_tool.py deleted file mode 100644 index da1e8408f..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_space_tag_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.DeleteSpaceTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'space_identifier': 123, - 'tag_name_to_delete': 'urgent', - 'request_body': '{"tag":"urgent"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_task_checklist_item_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/delete_task_checklist_item_example_call_tool.js deleted file mode 100644 index 065d56a9b..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_task_checklist_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.DeleteTaskChecklistItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checklist_identifier": "123e4567-e89b-12d3-a456-426614174000", - "checklist_item_uuid": "987e6543-e21b-32d3-a456-426614174001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_task_checklist_item_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/delete_task_checklist_item_example_call_tool.py deleted file mode 100644 index b05d52bf2..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_task_checklist_item_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.DeleteTaskChecklistItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checklist_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'checklist_item_uuid': '987e6543-e21b-32d3-a456-426614174001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_task_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/delete_task_comment_example_call_tool.js deleted file mode 100644 index fb428a905..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_task_comment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.DeleteTaskComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_task_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/delete_task_comment_example_call_tool.py deleted file mode 100644 index 0e91c49da..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_task_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.DeleteTaskComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_task_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/delete_task_example_call_tool.js deleted file mode 100644 index f9bf4b111..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_task_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.DeleteTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type": "application/json", - "task_id": "12345", - "use_custom_task_ids": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_task_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/delete_task_example_call_tool.py deleted file mode 100644 index 41a86583e..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.DeleteTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type': 'application/json', 'task_id': '12345', 'use_custom_task_ids': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/delete_time_entry_example_call_tool.js deleted file mode 100644 index e4f892cc9..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_time_entry_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.DeleteTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type_header": "application/json", - "timer_ids_to_delete": 12345, - "workspace_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/delete_time_entry_example_call_tool.py deleted file mode 100644 index 69b11f4b5..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_time_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.DeleteTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type_header': 'application/json', 'timer_ids_to_delete': 12345, 'workspace_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_user_group_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/delete_user_group_example_call_tool.js deleted file mode 100644 index 28b26eb6c..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_user_group_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.DeleteUserGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_group_id": "group_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_user_group_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/delete_user_group_example_call_tool.py deleted file mode 100644 index 891bb04ce..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_user_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.DeleteUserGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_group_id': 'group_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_view_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/delete_view_example_call_tool.js deleted file mode 100644 index 683498756..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_view_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.DeleteView"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "view_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_view_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/delete_view_example_call_tool.py deleted file mode 100644 index 6377e9b43..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_view_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.DeleteView" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'view_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/delete_webhook_example_call_tool.js deleted file mode 100644 index 89547a217..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_webhook_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.DeleteWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/delete_webhook_example_call_tool.py deleted file mode 100644 index 0b136f161..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.DeleteWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_folder_example_call_tool.js deleted file mode 100644 index 43eceb7c7..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_folder_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.DeleteWorkspaceFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_folder_example_call_tool.py deleted file mode 100644 index ee158bb1f..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.DeleteWorkspaceFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_list_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_list_example_call_tool.js deleted file mode 100644 index d25a8e929..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.DeleteWorkspaceList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type_header": "application/json", - "workspace_list_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_list_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_list_example_call_tool.py deleted file mode 100644 index 7622d3141..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.DeleteWorkspaceList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type_header': 'application/json', 'workspace_list_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_space_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_space_example_call_tool.js deleted file mode 100644 index 6c5b21e97..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_space_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.DeleteWorkspaceSpace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_space_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_space_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_space_example_call_tool.py deleted file mode 100644 index 5bffda517..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/delete_workspace_space_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.DeleteWorkspaceSpace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_space_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/edit_checklist_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/edit_checklist_example_call_tool.js deleted file mode 100644 index 464399dc0..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/edit_checklist_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.EditChecklist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checklist_id": "123e4567-e89b-12d3-a456-426614174000", - "checklist_name": "Updated Checklist", - "checklist_position": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/edit_checklist_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/edit_checklist_example_call_tool.py deleted file mode 100644 index cdada74ed..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/edit_checklist_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.EditChecklist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checklist_id': '123e4567-e89b-12d3-a456-426614174000', - 'checklist_name': 'Updated Checklist', - 'checklist_position': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/edit_legacy_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/edit_legacy_time_entry_example_call_tool.js deleted file mode 100644 index bd8dfc817..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/edit_legacy_time_entry_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.EditLegacyTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_time_epoch": 1697049600, - "legacy_time_interval_id": "abc123", - "start_timestamp": 1697046000000, - "task_identifier": "task_456", - "time_duration_in_seconds": 3600 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/edit_legacy_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/edit_legacy_time_entry_example_call_tool.py deleted file mode 100644 index 88b451a5f..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/edit_legacy_time_entry_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.EditLegacyTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_time_epoch': 1697049600, - 'legacy_time_interval_id': 'abc123', - 'start_timestamp': 1697046000000, - 'task_identifier': 'task_456', - 'time_duration_in_seconds': 3600 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_authorized_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_authorized_teams_example_call_tool.js deleted file mode 100644 index b80dbbedb..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_authorized_teams_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetAuthorizedTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_authorized_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_authorized_teams_example_call_tool.py deleted file mode 100644 index 519bcea9a..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_authorized_teams_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetAuthorizedTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_clickup_access_token_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_clickup_access_token_example_call_tool.js deleted file mode 100644 index dca94b596..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_clickup_access_token_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetClickupAccessToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"client_id\":\"12345\",\"client_secret\":\"abcde\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_clickup_access_token_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_clickup_access_token_example_call_tool.py deleted file mode 100644 index 48c5a4cf4..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_clickup_access_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetClickupAccessToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"client_id":"12345","client_secret":"abcde"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_clickup_user_details_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_clickup_user_details_example_call_tool.js deleted file mode 100644 index c7d002c73..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_clickup_user_details_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetClickupUserDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_clickup_user_details_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_clickup_user_details_example_call_tool.py deleted file mode 100644 index 6718cf14b..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_clickup_user_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetClickupUserDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_current_running_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_current_running_time_entry_example_call_tool.js deleted file mode 100644 index efa98311f..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_current_running_time_entry_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetCurrentRunningTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type_header": "application/json", - "workspace_id": 12345, - "assignee_user_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_current_running_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_current_running_time_entry_example_call_tool.py deleted file mode 100644 index f56157860..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_current_running_time_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetCurrentRunningTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type_header': 'application/json', 'workspace_id': 12345, 'assignee_user_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_filtered_team_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_filtered_team_tasks_example_call_tool.js deleted file mode 100644 index b45b6b9c6..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_filtered_team_tasks_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetFilteredTeamTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": 1, - "assignee_ids": [ - 12345, - 67890 - ], - "due_date_before": 1690000000000, - "include_closed_tasks": true, - "order_tasks_by": "due_date", - "page_number_to_fetch": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_filtered_team_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_filtered_team_tasks_example_call_tool.py deleted file mode 100644 index d76164253..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_filtered_team_tasks_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetFilteredTeamTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 1, - 'assignee_ids': [12345, 67890], - 'due_date_before': 1690000000000, - 'include_closed_tasks': True, - 'order_tasks_by': 'due_date', - 'page_number_to_fetch': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_folder_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_folder_custom_fields_example_call_tool.js deleted file mode 100644 index 8db574ba9..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_folder_custom_fields_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetFolderCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type": "application/json", - "folder_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_folder_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_folder_custom_fields_example_call_tool.py deleted file mode 100644 index a35f9f662..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_folder_custom_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetFolderCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type': 'application/json', 'folder_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_folder_views_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_folder_views_example_call_tool.js deleted file mode 100644 index 188ef58b0..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_folder_views_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetFolderViews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_folder_views_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_folder_views_example_call_tool.py deleted file mode 100644 index c567b0212..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_folder_views_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetFolderViews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_folderless_lists_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_folderless_lists_example_call_tool.js deleted file mode 100644 index f50a8f969..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_folderless_lists_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetFolderlessLists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "space_identifier": 123, - "include_archived_lists": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_folderless_lists_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_folderless_lists_example_call_tool.py deleted file mode 100644 index 09882e35a..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_folderless_lists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetFolderlessLists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'space_identifier': 123, 'include_archived_lists': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_goal_details_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_goal_details_example_call_tool.js deleted file mode 100644 index bb707fa56..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_goal_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetGoalDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_identifier": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_goal_details_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_goal_details_example_call_tool.py deleted file mode 100644 index 5fb1df5b6..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_goal_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetGoalDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_identifier': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_guest_information_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_guest_information_example_call_tool.js deleted file mode 100644 index 88bbb3095..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_guest_information_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetGuestInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "guest_identifier": 12345, - "workspace_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_guest_information_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_guest_information_example_call_tool.py deleted file mode 100644 index 121a3b9cc..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_guest_information_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetGuestInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'guest_identifier': 12345, 'workspace_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_list_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_list_comments_example_call_tool.js deleted file mode 100644 index 51db90a67..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_list_comments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetListComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": 12345, - "oldest_comment_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_list_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_list_comments_example_call_tool.py deleted file mode 100644 index 5e9d49ed3..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_list_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetListComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': 12345, 'oldest_comment_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_list_members_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_list_members_example_call_tool.js deleted file mode 100644 index ea4e56c44..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_list_members_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetListMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_list_members_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_list_members_example_call_tool.py deleted file mode 100644 index e0700a8f9..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_list_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetListMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_list_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_list_tasks_example_call_tool.js deleted file mode 100644 index abce09182..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_list_tasks_example_call_tool.js +++ /dev/null @@ -1,43 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetListTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_identifier": 12345, - "custom_task_type_filters": [ - 0, - 1 - ], - "display_tasks_in_reverse_order": true, - "filter_by_assignees": [ - 101, - 102 - ], - "include_archived_tasks": false, - "order_by_field": "due_date", - "page_number_to_fetch": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_list_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_list_tasks_example_call_tool.py deleted file mode 100644 index c6cc869a0..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_list_tasks_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetListTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_identifier': 12345, - 'custom_task_type_filters': [0, 1], - 'display_tasks_in_reverse_order': True, - 'filter_by_assignees': [101, 102], - 'include_archived_tasks': False, - 'order_by_field': 'due_date', - 'page_number_to_fetch': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_list_views_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_list_views_example_call_tool.js deleted file mode 100644 index 4f43a4802..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_list_views_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetListViews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_list_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_list_views_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_list_views_example_call_tool.py deleted file mode 100644 index 82d96ebcf..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_list_views_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetListViews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_list_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_space_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_space_custom_fields_example_call_tool.js deleted file mode 100644 index 06bbcb52a..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_space_custom_fields_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetSpaceCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type_header": "application/json", - "space_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_space_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_space_custom_fields_example_call_tool.py deleted file mode 100644 index abd7ad59a..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_space_custom_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetSpaceCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type_header': 'application/json', 'space_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_space_folders_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_space_folders_example_call_tool.js deleted file mode 100644 index daa7b91d6..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_space_folders_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetSpaceFolders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "space_id": 12345, - "include_archived_folders": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_space_folders_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_space_folders_example_call_tool.py deleted file mode 100644 index cf0175e86..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_space_folders_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetSpaceFolders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'space_id': 12345, 'include_archived_folders': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_space_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_space_tags_example_call_tool.js deleted file mode 100644 index 066ec34c5..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_space_tags_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetSpaceTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type_header": "application/json", - "space_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_space_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_space_tags_example_call_tool.py deleted file mode 100644 index 02aae8c43..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_space_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetSpaceTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type_header': 'application/json', 'space_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_space_views_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_space_views_example_call_tool.js deleted file mode 100644 index 82d002b53..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_space_views_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetSpaceViews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "space_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_space_views_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_space_views_example_call_tool.py deleted file mode 100644 index 43d6c7342..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_space_views_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetSpaceViews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'space_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_task_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_task_comments_example_call_tool.js deleted file mode 100644 index dadfc08cb..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_task_comments_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetTaskComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_identifier": "12345", - "comment_date_unix_time_ms": 1690000000000, - "use_custom_task_ids": true, - "workspace_id_for_custom_task": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_task_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_task_comments_example_call_tool.py deleted file mode 100644 index 9563e264d..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_task_comments_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetTaskComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_identifier': '12345', - 'comment_date_unix_time_ms': 1690000000000, - 'use_custom_task_ids': True, - 'workspace_id_for_custom_task': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_task_members_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_task_members_example_call_tool.js deleted file mode 100644 index ef8fddc1b..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_task_members_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetTaskMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_task_members_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_task_members_example_call_tool.py deleted file mode 100644 index 226b4f6a7..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_task_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetTaskMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_task_time_in_status_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_task_time_in_status_example_call_tool.js deleted file mode 100644 index f5aa50cb5..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_task_time_in_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetTaskTimeInStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type_header": "application/json", - "task_ids_list": "123,456,789", - "use_custom_task_ids": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_task_time_in_status_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_task_time_in_status_example_call_tool.py deleted file mode 100644 index 6d2e7b0c7..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_task_time_in_status_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetTaskTimeInStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type_header': 'application/json', - 'task_ids_list': '123,456,789', - 'use_custom_task_ids': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_team_views_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_team_views_example_call_tool.js deleted file mode 100644 index e8444983f..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_team_views_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetTeamViews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_team_views_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_team_views_example_call_tool.py deleted file mode 100644 index 1bea7d721..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_team_views_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetTeamViews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_time_entries_in_date_range_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_time_entries_in_date_range_example_call_tool.js deleted file mode 100644 index 129c20e9b..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_time_entries_in_date_range_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetTimeEntriesInDateRange"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type": "application/json", - "workspace_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_time_entries_in_date_range_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_time_entries_in_date_range_example_call_tool.py deleted file mode 100644 index fd3b8caec..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_time_entries_in_date_range_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetTimeEntriesInDateRange" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type': 'application/json', 'workspace_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_time_entry_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_time_entry_tags_example_call_tool.js deleted file mode 100644 index 9a6296ce1..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_time_entry_tags_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetTimeEntryTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type_header": "application/json", - "workspace_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_time_entry_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_time_entry_tags_example_call_tool.py deleted file mode 100644 index 602267748..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_time_entry_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetTimeEntryTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type_header': 'application/json', 'workspace_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_tracked_time_for_task_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_tracked_time_for_task_example_call_tool.js deleted file mode 100644 index a9ff0ae71..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_tracked_time_for_task_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetTrackedTimeForTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "set_content_type_header": "application/json", - "task_id": "12345", - "use_custom_task_ids": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_tracked_time_for_task_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_tracked_time_for_task_example_call_tool.py deleted file mode 100644 index f1986f127..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_tracked_time_for_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetTrackedTimeForTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'set_content_type_header': 'application/json', 'task_id': '12345', 'use_custom_task_ids': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_user_groups_in_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_user_groups_in_workspace_example_call_tool.js deleted file mode 100644 index 658742d69..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_user_groups_in_workspace_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetUserGroupsInWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": 12345, - "user_group_ids": "67890, 23456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_user_groups_in_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_user_groups_in_workspace_example_call_tool.py deleted file mode 100644 index 5d31cae21..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_user_groups_in_workspace_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetUserGroupsInWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 12345, 'user_group_ids': '67890, 23456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_visible_tasks_in_view_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_visible_tasks_in_view_example_call_tool.js deleted file mode 100644 index 4f61cfdd3..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_visible_tasks_in_view_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetVisibleTasksInView"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_page_number": 1, - "view_identifier": "view_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_visible_tasks_in_view_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_visible_tasks_in_view_example_call_tool.py deleted file mode 100644 index 92d138b08..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_visible_tasks_in_view_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetVisibleTasksInView" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_page_number': 1, 'view_identifier': 'view_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_custom_roles_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_workspace_custom_roles_example_call_tool.js deleted file mode 100644 index 6a4ef03dc..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_custom_roles_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetWorkspaceCustomRoles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": 12345, - "include_members": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_custom_roles_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_workspace_custom_roles_example_call_tool.py deleted file mode 100644 index d47cc2d17..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_custom_roles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetWorkspaceCustomRoles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 12345, 'include_members': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_custom_task_types_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_workspace_custom_task_types_example_call_tool.js deleted file mode 100644 index 019417607..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_custom_task_types_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetWorkspaceCustomTaskTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_custom_task_types_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_workspace_custom_task_types_example_call_tool.py deleted file mode 100644 index 75fb40694..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_custom_task_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetWorkspaceCustomTaskTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_plan_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_workspace_plan_example_call_tool.js deleted file mode 100644 index 56562c2a0..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_plan_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetWorkspacePlan"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_plan_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_workspace_plan_example_call_tool.py deleted file mode 100644 index 41346a204..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_plan_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetWorkspacePlan" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_seat_details_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_workspace_seat_details_example_call_tool.js deleted file mode 100644 index fdd6ee2e7..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_seat_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetWorkspaceSeatDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_seat_details_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_workspace_seat_details_example_call_tool.py deleted file mode 100644 index ef3a8401c..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_seat_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetWorkspaceSeatDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_spaces_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_workspace_spaces_example_call_tool.js deleted file mode 100644 index a5056b454..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_spaces_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetWorkspaceSpaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_space_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_spaces_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_workspace_spaces_example_call_tool.py deleted file mode 100644 index 78cac7574..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_spaces_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetWorkspaceSpaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_space_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_workspace_user_info_example_call_tool.js deleted file mode 100644 index 3d19dbc87..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_user_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetWorkspaceUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": 12345, - "workspace_id": 67890, - "show_shared_items": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_workspace_user_info_example_call_tool.py deleted file mode 100644 index cdd090e91..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_user_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetWorkspaceUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': 12345, 'workspace_id': 67890, 'show_shared_items': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_webhooks_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/get_workspace_webhooks_example_call_tool.js deleted file mode 100644 index 0326f770b..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_webhooks_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.GetWorkspaceWebhooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_webhooks_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/get_workspace_webhooks_example_call_tool.py deleted file mode 100644 index 8fdc8e6f0..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/get_workspace_webhooks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.GetWorkspaceWebhooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/invite_guest_to_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/invite_guest_to_workspace_example_call_tool.js deleted file mode 100644 index e864d778e..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/invite_guest_to_workspace_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.InviteGuestToWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "guest_email": "guest@example.com", - "workspace_id": 12345, - "allow_guest_to_create_views": true, - "allow_tag_editing": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/invite_guest_to_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/invite_guest_to_workspace_example_call_tool.py deleted file mode 100644 index ea9b159fa..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/invite_guest_to_workspace_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.InviteGuestToWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'guest_email': 'guest@example.com', - 'workspace_id': 12345, - 'allow_guest_to_create_views': True, - 'allow_tag_editing': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/invite_user_to_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/invite_user_to_workspace_example_call_tool.js deleted file mode 100644 index 287f2ebfc..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/invite_user_to_workspace_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.InviteUserToWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invite_as_admin": true, - "user_email": "example@domain.com", - "workspace_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/invite_user_to_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/invite_user_to_workspace_example_call_tool.py deleted file mode 100644 index f95eac8f2..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/invite_user_to_workspace_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.InviteUserToWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invite_as_admin': True, 'user_email': 'example@domain.com', 'workspace_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/link_tasks_clickup_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/link_tasks_clickup_example_call_tool.js deleted file mode 100644 index 4d6eb7a73..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/link_tasks_clickup_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.LinkTasksClickup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "source_task_id": "12345", - "task_to_link_to": "67890", - "use_custom_task_ids": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/link_tasks_clickup_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/link_tasks_clickup_example_call_tool.py deleted file mode 100644 index 1b2afe479..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/link_tasks_clickup_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.LinkTasksClickup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'source_task_id': '12345', 'task_to_link_to': '67890', 'use_custom_task_ids': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/merge_tasks_in_clickup_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/merge_tasks_in_clickup_example_call_tool.js deleted file mode 100644 index 14aca913f..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/merge_tasks_in_clickup_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.MergeTasksInClickup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "source_task_ids_to_merge": [ - "task_1", - "task_2", - "task_3" - ], - "target_task_id": "target_1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/merge_tasks_in_clickup_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/merge_tasks_in_clickup_example_call_tool.py deleted file mode 100644 index 2e3d405ac..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/merge_tasks_in_clickup_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.MergeTasksInClickup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'source_task_ids_to_merge': ['task_1', 'task_2', 'task_3'], 'target_task_id': 'target_1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_custom_field_value_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/remove_custom_field_value_example_call_tool.js deleted file mode 100644 index 2bbb3272c..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_custom_field_value_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RemoveCustomFieldValue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_field_id": "b8a8-48d8-a0c6-b4200788a683", - "task_identifier": "task_12345", - "use_custom_task_ids": true, - "workspace_id": 101 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_custom_field_value_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/remove_custom_field_value_example_call_tool.py deleted file mode 100644 index d9afea760..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_custom_field_value_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RemoveCustomFieldValue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_field_id': 'b8a8-48d8-a0c6-b4200788a683', - 'task_identifier': 'task_12345', - 'use_custom_task_ids': True, - 'workspace_id': 101 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_folder_example_call_tool.js deleted file mode 100644 index 883d791e2..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_folder_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RemoveGuestFromFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifier": 12345, - "guest_identifier": 67890, - "include_shared_items": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_folder_example_call_tool.py deleted file mode 100644 index 8882ff94b..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RemoveGuestFromFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifier': 12345, 'guest_identifier': 67890, 'include_shared_items': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_list_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_list_example_call_tool.js deleted file mode 100644 index 6011fcad8..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RemoveGuestFromList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "guest_user_id": 12345, - "list_identifier": 67890, - "include_shared_details": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_list_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_list_example_call_tool.py deleted file mode 100644 index b2064b247..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RemoveGuestFromList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'guest_user_id': 12345, 'list_identifier': 67890, 'include_shared_details': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_task_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_task_example_call_tool.js deleted file mode 100644 index f7d2e38e6..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_task_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RemoveGuestFromTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "guest_id": 123, - "task_id": "abc-456", - "include_shared_details": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_task_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_task_example_call_tool.py deleted file mode 100644 index 4e72f9b3f..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RemoveGuestFromTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'guest_id': 123, 'task_id': 'abc-456', 'include_shared_details': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_workspace_example_call_tool.js deleted file mode 100644 index 95cf958f4..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_workspace_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RemoveGuestFromWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "guest_id": 12345, - "workspace_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_workspace_example_call_tool.py deleted file mode 100644 index 721696a20..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_guest_from_workspace_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RemoveGuestFromWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'guest_id': 12345, 'workspace_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_tag_from_task_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/remove_tag_from_task_example_call_tool.js deleted file mode 100644 index 8ed81ba30..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_tag_from_task_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RemoveTagFromTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type_header": "application/json", - "tag_name_to_remove": "urgent", - "task_id": "12345", - "use_custom_task_ids": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_tag_from_task_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/remove_tag_from_task_example_call_tool.py deleted file mode 100644 index 0c263b7aa..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_tag_from_task_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RemoveTagFromTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type_header': 'application/json', - 'tag_name_to_remove': 'urgent', - 'task_id': '12345', - 'use_custom_task_ids': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_tags_from_time_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/remove_tags_from_time_entries_example_call_tool.js deleted file mode 100644 index 4ea5aa712..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_tags_from_time_entries_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RemoveTagsFromTimeEntries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "workspace_id": 123, - "request_body": "{\"time_entry_ids\":[1,2,3],\"labels\":[\"label1\",\"label2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_tags_from_time_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/remove_tags_from_time_entries_example_call_tool.py deleted file mode 100644 index bc9dee9e0..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_tags_from_time_entries_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RemoveTagsFromTimeEntries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'workspace_id': 123, - 'request_body': '{"time_entry_ids":[1,2,3],"labels":["label1","label2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_task_dependency_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/remove_task_dependency_example_call_tool.js deleted file mode 100644 index 2fe97067d..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_task_dependency_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RemoveTaskDependency"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dependent_task_id": "123", - "depends_on_task_id": "456", - "task_id_to_remove_dependency": "123", - "use_custom_task_ids": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_task_dependency_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/remove_task_dependency_example_call_tool.py deleted file mode 100644 index 3fdf443ad..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_task_dependency_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RemoveTaskDependency" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dependent_task_id': '123', - 'depends_on_task_id': '456', - 'task_id_to_remove_dependency': '123', - 'use_custom_task_ids': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_task_from_additional_list_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/remove_task_from_additional_list_example_call_tool.js deleted file mode 100644 index 2e4fec10b..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_task_from_additional_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RemoveTaskFromAdditionalList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "additional_list_id": 12345, - "task_identifier": "abc-123-def" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_task_from_additional_list_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/remove_task_from_additional_list_example_call_tool.py deleted file mode 100644 index e8783a6a2..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_task_from_additional_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RemoveTaskFromAdditionalList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'additional_list_id': 12345, 'task_identifier': 'abc-123-def' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_task_link_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/remove_task_link_example_call_tool.js deleted file mode 100644 index 2e8a399b4..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_task_link_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RemoveTaskLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "linked_task_id": "task_123", - "primary_task_id": "task_456", - "use_custom_task_ids": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_task_link_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/remove_task_link_example_call_tool.py deleted file mode 100644 index b27584c48..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_task_link_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RemoveTaskLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'linked_task_id': 'task_123', 'primary_task_id': 'task_456', 'use_custom_task_ids': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/remove_time_entry_example_call_tool.js deleted file mode 100644 index 5d6a3eb9a..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_time_entry_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RemoveTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type_header": "application/json", - "interval_id_for_removal": "12345", - "task_identifier": "task_67890", - "use_custom_task_ids": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/remove_time_entry_example_call_tool.py deleted file mode 100644 index 54ecc7887..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_time_entry_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RemoveTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type_header': 'application/json', - 'interval_id_for_removal': '12345', - 'task_identifier': 'task_67890', - 'use_custom_task_ids': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_user_from_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/remove_user_from_workspace_example_call_tool.js deleted file mode 100644 index 701fb1d88..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_user_from_workspace_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RemoveUserFromWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": 12345, - "workspace_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/remove_user_from_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/remove_user_from_workspace_example_call_tool.py deleted file mode 100644 index 96891ab22..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/remove_user_from_workspace_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RemoveUserFromWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': 12345, 'workspace_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/rename_clickup_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/rename_clickup_folder_example_call_tool.js deleted file mode 100644 index 712b7b4c4..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/rename_clickup_folder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RenameClickupFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id_clickup": 12345, - "new_folder_name": "Project Updates" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/rename_clickup_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/rename_clickup_folder_example_call_tool.py deleted file mode 100644 index aa60023f7..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/rename_clickup_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RenameClickupFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id_clickup': 12345, 'new_folder_name': 'Project Updates' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/rename_time_entry_label_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/rename_time_entry_label_example_call_tool.js deleted file mode 100644 index 331b11706..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/rename_time_entry_label_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RenameTimeEntryLabel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "current_label_name": "Work", - "foreground_color_for_tag": "#FF5733", - "label_background_color": "#C70039", - "new_label_name": "Project Work", - "workspace_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/rename_time_entry_label_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/rename_time_entry_label_example_call_tool.py deleted file mode 100644 index fff92619b..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/rename_time_entry_label_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RenameTimeEntryLabel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'current_label_name': 'Work', - 'foreground_color_for_tag': '#FF5733', - 'label_background_color': '#C70039', - 'new_label_name': 'Project Work', - 'workspace_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/retrieve_available_spaces_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/retrieve_available_spaces_example_call_tool.js deleted file mode 100644 index 5d3318632..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/retrieve_available_spaces_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.RetrieveAvailableSpaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": 12345, - "include_archived_spaces": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/retrieve_available_spaces_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/retrieve_available_spaces_example_call_tool.py deleted file mode 100644 index 96877d83e..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/retrieve_available_spaces_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.RetrieveAvailableSpaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 12345, 'include_archived_spaces': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/set_task_dependency_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/set_task_dependency_example_call_tool.js deleted file mode 100644 index 4d13234e2..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/set_task_dependency_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.SetTaskDependency"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id_of_dependency": "12345", - "dependent_task_id": "67890", - "use_custom_task_ids": true, - "workspace_id": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/set_task_dependency_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/set_task_dependency_example_call_tool.py deleted file mode 100644 index 807858fae..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/set_task_dependency_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.SetTaskDependency" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id_of_dependency': '12345', - 'dependent_task_id': '67890', - 'use_custom_task_ids': True, - 'workspace_id': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/setup_clickup_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/setup_clickup_webhook_example_call_tool.js deleted file mode 100644 index 3b913e25d..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/setup_clickup_webhook_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.SetupClickupWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_types": [ - "taskCreated", - "taskUpdated" - ], - "webhook_url": "https://example.com/webhook", - "workspace_id": 123456, - "folder_id": 78910 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/setup_clickup_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/setup_clickup_webhook_example_call_tool.py deleted file mode 100644 index 7deefcb1b..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/setup_clickup_webhook_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.SetupClickupWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_types': ['taskCreated', 'taskUpdated'], - 'webhook_url': 'https://example.com/webhook', - 'workspace_id': 123456, - 'folder_id': 78910 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/share_task_with_guest_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/share_task_with_guest_example_call_tool.js deleted file mode 100644 index 84bc06b4b..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/share_task_with_guest_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ShareTaskWithGuest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "guest_id": 12345, - "guest_permission_level": "edit", - "task_id": "task_67890", - "include_shared_details": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/share_task_with_guest_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/share_task_with_guest_example_call_tool.py deleted file mode 100644 index 870b0adf2..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/share_task_with_guest_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ShareTaskWithGuest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'guest_id': 12345, - 'guest_permission_level': 'edit', - 'task_id': 'task_67890', - 'include_shared_details': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/start_timer_clickup_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/start_timer_clickup_example_call_tool.js deleted file mode 100644 index 98575a631..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/start_timer_clickup_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.StartTimerClickup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "workspace_identifier": 123, - "request_body": "{\"task_id\":\"abc-123\",\"duration\":3600}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/start_timer_clickup_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/start_timer_clickup_example_call_tool.py deleted file mode 100644 index 2a38f8d7c..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/start_timer_clickup_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.StartTimerClickup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'workspace_identifier': 123, - 'request_body': '{"task_id":"abc-123","duration":3600}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/stop_timer_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/stop_timer_entry_example_call_tool.js deleted file mode 100644 index fe6f437f5..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/stop_timer_entry_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.StopTimerEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type": "application/json", - "workspace_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/stop_timer_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/stop_timer_entry_example_call_tool.py deleted file mode 100644 index 9911ea35a..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/stop_timer_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.StopTimerEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type': 'application/json', 'workspace_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/task_status_duration_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/task_status_duration_example_call_tool.js deleted file mode 100644 index 3763eeb3c..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/task_status_duration_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.TaskStatusDuration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type": "application/json", - "task_identifier": "task_12345", - "use_custom_task_ids": true, - "workspace_id": 101 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/task_status_duration_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/task_status_duration_example_call_tool.py deleted file mode 100644 index d703b1c18..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/task_status_duration_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.TaskStatusDuration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type': 'application/json', - 'task_identifier': 'task_12345', - 'use_custom_task_ids': True, - 'workspace_id': 101 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_checklist_item_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/update_checklist_item_example_call_tool.js deleted file mode 100644 index 53d30ac6a..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_checklist_item_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.UpdateChecklistItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checklist_item_uuid": "123e4567-e89b-12d3-a456-426614174000", - "checklist_unique_identifier": "b8a8-48d8-a0c6-b4200788a683", - "assign_item_to_user": "user_456", - "checklist_item_name": "Update documentation", - "mark_as_resolved": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_checklist_item_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/update_checklist_item_example_call_tool.py deleted file mode 100644 index 6e295e0bc..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_checklist_item_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.UpdateChecklistItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checklist_item_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'checklist_unique_identifier': 'b8a8-48d8-a0c6-b4200788a683', - 'assign_item_to_user': 'user_456', - 'checklist_item_name': 'Update documentation', - 'mark_as_resolved': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_clickup_list_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/update_clickup_list_example_call_tool.js deleted file mode 100644 index 127e1c48f..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_clickup_list_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.UpdateClickupList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_identifier": "12345", - "list_name": "Updated List Name", - "formatted_list_description": "## New Description\nThis is an updated description.", - "include_due_date_time": true, - "list_assignee_id": "user_67890", - "list_color": "#FF5733", - "list_due_date": 1699996800000, - "list_priority": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_clickup_list_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/update_clickup_list_example_call_tool.py deleted file mode 100644 index 8cbcb6c67..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_clickup_list_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.UpdateClickupList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_identifier': '12345', - 'list_name': 'Updated List Name', - 'formatted_list_description': '## New Description\nThis is an updated description.', - 'include_due_date_time': True, - 'list_assignee_id': 'user_67890', - 'list_color': '#FF5733', - 'list_due_date': 1699996800000, - 'list_priority': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_clickup_space_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/update_clickup_space_example_call_tool.js deleted file mode 100644 index 881d22219..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_clickup_space_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.UpdateClickupSpace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "space_identifier": 12345, - "request_body": "{\"name\":\"New Space Name\",\"color\":\"#FF5733\",\"clickapps\":{\"time_tracking\":true}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_clickup_space_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/update_clickup_space_example_call_tool.py deleted file mode 100644 index 5857b13c9..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_clickup_space_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.UpdateClickupSpace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'space_identifier': 12345, - 'request_body': '{"name":"New Space ' - 'Name","color":"#FF5733","clickapps":{"time_tracking":true}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_clickup_webhook_events_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/update_clickup_webhook_events_example_call_tool.js deleted file mode 100644 index aae83e707..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_clickup_webhook_events_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.UpdateClickupWebhookEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "monitored_events": "taskCreated,taskUpdated", - "webhook_endpoint_url": "https://example.com/webhook", - "webhook_identifier": "123e4567-e89b-12d3-a456-426614174000", - "webhook_status": "active" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_clickup_webhook_events_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/update_clickup_webhook_events_example_call_tool.py deleted file mode 100644 index 7eca6b02e..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_clickup_webhook_events_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.UpdateClickupWebhookEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'monitored_events': 'taskCreated,taskUpdated', - 'webhook_endpoint_url': 'https://example.com/webhook', - 'webhook_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'webhook_status': 'active' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_goal_details_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/update_goal_details_example_call_tool.js deleted file mode 100644 index 95d6d64da..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_goal_details_example_call_tool.js +++ /dev/null @@ -1,42 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.UpdateGoalDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_color": "#FF5733", - "goal_description": "Increase team productivity by 20%", - "goal_due_date": 1699996800, - "goal_id": "123e4567-e89b-12d3-a456-426614174000", - "goal_name": "Productivity Boost", - "new_owners_to_add": [ - "user_1", - "user_2" - ], - "remove_owners_user_ids": [ - "user_3" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_goal_details_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/update_goal_details_example_call_tool.py deleted file mode 100644 index 0433f86e6..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_goal_details_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.UpdateGoalDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_color': '#FF5733', - 'goal_description': 'Increase team productivity by 20%', - 'goal_due_date': 1699996800, - 'goal_id': '123e4567-e89b-12d3-a456-426614174000', - 'goal_name': 'Productivity Boost', - 'new_owners_to_add': ['user_1', 'user_2'], - 'remove_owners_user_ids': ['user_3'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_key_result_target_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/update_key_result_target_example_call_tool.js deleted file mode 100644 index 78c500448..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_key_result_target_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.UpdateKeyResultTarget"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "current_steps_value": 50, - "key_result_identifier": "123e4567-e89b-12d3-a456-426614174000", - "note_update_description": "Updated target for Q1 goals." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_key_result_target_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/update_key_result_target_example_call_tool.py deleted file mode 100644 index 627b41165..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_key_result_target_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.UpdateKeyResultTarget" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'current_steps_value': 50, - 'key_result_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'note_update_description': 'Updated target for Q1 goals.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_task_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/update_task_comment_example_call_tool.js deleted file mode 100644 index 8984a85e3..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_task_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.UpdateTaskComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "assignee_user_id": 12345, - "comment_identifier": 67890, - "mark_comment_as_resolved": true, - "new_comment_content": "Updated comment text." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_task_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/update_task_comment_example_call_tool.py deleted file mode 100644 index 88255a8c7..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_task_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.UpdateTaskComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'assignee_user_id': 12345, - 'comment_identifier': 67890, - 'mark_comment_as_resolved': True, - 'new_comment_content': 'Updated comment text.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_task_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/update_task_custom_field_example_call_tool.js deleted file mode 100644 index 35f2f9ef4..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_task_custom_field_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.UpdateTaskCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "task_id": "12345", - "custom_field_uuid": "abcde-12345-fghij-67890", - "workspace_id": 1, - "use_custom_task_id_reference": true, - "request_body": "{\"value\":\"New Value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_task_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/update_task_custom_field_example_call_tool.py deleted file mode 100644 index cfa0f2179..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_task_custom_field_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.UpdateTaskCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'task_id': '12345', - 'custom_field_uuid': 'abcde-12345-fghij-67890', - 'workspace_id': 1, - 'use_custom_task_id_reference': True, - 'request_body': '{"value":"New Value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_task_in_clickup_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/update_task_in_clickup_example_call_tool.js deleted file mode 100644 index 8bd947cd3..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_task_in_clickup_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.UpdateTaskInClickup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "task_identifier": "12345", - "request_body": "{\"name\":\"Updated Task Name\",\"status\":\"in progress\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_task_in_clickup_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/update_task_in_clickup_example_call_tool.py deleted file mode 100644 index b94d8ca81..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_task_in_clickup_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.UpdateTaskInClickup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'task_identifier': '12345', - 'request_body': '{"name":"Updated Task Name","status":"in progress"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_task_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/update_task_tag_example_call_tool.js deleted file mode 100644 index 01d64d9b4..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_task_tag_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.UpdateTaskTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "background_color_of_tag": "#FF5733", - "current_tag_name": "Urgent", - "new_tag_name": "High Priority", - "space_id": 12345, - "tag_foreground_color": "#FFFFFF" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_task_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/update_task_tag_example_call_tool.py deleted file mode 100644 index f5f935e75..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_task_tag_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.UpdateTaskTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'background_color_of_tag': '#FF5733', - 'current_tag_name': 'Urgent', - 'new_tag_name': 'High Priority', - 'space_id': 12345, - 'tag_foreground_color': '#FFFFFF' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/update_time_entry_example_call_tool.js deleted file mode 100644 index 8b1333f4f..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_time_entry_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.UpdateTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "workspace_id": 123, - "team_identifier": 456, - "timer_id": 789, - "use_custom_task_ids": true, - "request_body": "{\"duration\": 120, \"description\": \"Updated time entry\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/update_time_entry_example_call_tool.py deleted file mode 100644 index 0fdb6c755..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_time_entry_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.UpdateTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'workspace_id': 123, - 'team_identifier': 456, - 'timer_id': 789, - 'use_custom_task_ids': True, - 'request_body': '{"duration": 120, "description": "Updated time entry"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_user_group_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/update_user_group_example_call_tool.js deleted file mode 100644 index f9a48fe22..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_user_group_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.UpdateUserGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_group_id": "12345", - "add_member_ids": [ - 101, - 102 - ], - "remove_members_ids": [ - 103 - ], - "user_group_name": "Development Team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_user_group_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/update_user_group_example_call_tool.py deleted file mode 100644 index 20cedda00..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_user_group_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.UpdateUserGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_group_id': '12345', - 'add_member_ids': [101, 102], - 'remove_members_ids': [103], - 'user_group_name': 'Development Team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_user_workspace_details_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/update_user_workspace_details_example_call_tool.js deleted file mode 100644 index 32e2780af..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_user_workspace_details_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.UpdateUserWorkspaceDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "assign_admin_role": true, - "custom_role_id": 123, - "user_identifier": 456, - "user_name": "John Doe", - "workspace_id": 789 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_user_workspace_details_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/update_user_workspace_details_example_call_tool.py deleted file mode 100644 index bc7697e41..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_user_workspace_details_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.UpdateUserWorkspaceDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'assign_admin_role': True, - 'custom_role_id': 123, - 'user_identifier': 456, - 'user_name': 'John Doe', - 'workspace_id': 789 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_view_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/update_view_settings_example_call_tool.js deleted file mode 100644 index 38eeed119..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_view_settings_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.UpdateViewSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "view_identifier": "view_123", - "request_body": "{\"columns\":[{\"name\":\"column1\",\"visible\":true},{\"name\":\"column2\",\"visible\":false}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/update_view_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/update_view_settings_example_call_tool.py deleted file mode 100644 index 457c08c50..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/update_view_settings_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.UpdateViewSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'view_identifier': 'view_123', - 'request_body': '{"columns":[{"name":"column1","visible":true},{"name":"column2","visible":false}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_chat_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/view_chat_comments_example_call_tool.js deleted file mode 100644 index 109e62285..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_chat_comments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ViewChatComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "chat_view_id": "105", - "comment_start_date_unix_ms": 1690000000000 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_chat_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/view_chat_comments_example_call_tool.py deleted file mode 100644 index 84d3c3a99..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_chat_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ViewChatComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'chat_view_id': '105', 'comment_start_date_unix_ms': 1690000000000 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_folder_lists_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/view_folder_lists_example_call_tool.js deleted file mode 100644 index 05d3de5e9..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_folder_lists_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ViewFolderLists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_folder_lists_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/view_folder_lists_example_call_tool.py deleted file mode 100644 index 34a8395f8..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_folder_lists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ViewFolderLists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_list_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/view_list_custom_fields_example_call_tool.js deleted file mode 100644 index 6e1b414a2..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_list_custom_fields_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ViewListCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type": "application/json", - "list_id": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_list_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/view_list_custom_fields_example_call_tool.py deleted file mode 100644 index 5a5a9106d..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_list_custom_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ViewListCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type': 'application/json', 'list_id': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_list_details_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/view_list_details_example_call_tool.js deleted file mode 100644 index 3367319ab..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_list_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ViewListDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_list_details_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/view_list_details_example_call_tool.py deleted file mode 100644 index 04af4592b..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_list_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ViewListDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_lists_in_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/view_lists_in_folder_example_call_tool.js deleted file mode 100644 index 8aed20b19..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_lists_in_folder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ViewListsInFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id": 12345, - "include_archived_lists": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_lists_in_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/view_lists_in_folder_example_call_tool.py deleted file mode 100644 index 160eba3b2..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_lists_in_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ViewListsInFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id': 12345, 'include_archived_lists': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_shared_hierarchy_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/view_shared_hierarchy_example_call_tool.js deleted file mode 100644 index e4500f6b0..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_shared_hierarchy_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ViewSharedHierarchy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_shared_hierarchy_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/view_shared_hierarchy_example_call_tool.py deleted file mode 100644 index 4d913df38..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_shared_hierarchy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ViewSharedHierarchy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_task_details_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/view_task_details_example_call_tool.js deleted file mode 100644 index 5306d8e11..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_task_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ViewTaskDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_identifier": "12345", - "include_markdown_description": true, - "include_subtasks": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_task_details_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/view_task_details_example_call_tool.py deleted file mode 100644 index 03cff2e26..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_task_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ViewTaskDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_identifier': '12345', 'include_markdown_description': True, 'include_subtasks': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_task_or_page_info_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/view_task_or_page_info_example_call_tool.js deleted file mode 100644 index 14b7487a8..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_task_or_page_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ViewTaskOrPageInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "view_identifier": "view_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_task_or_page_info_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/view_task_or_page_info_example_call_tool.py deleted file mode 100644 index 29a03a980..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_task_or_page_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ViewTaskOrPageInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'view_identifier': 'view_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_task_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/view_task_templates_example_call_tool.js deleted file mode 100644 index a15440876..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_task_templates_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ViewTaskTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type_header": "application/json", - "page_number": 1, - "workspace_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_task_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/view_task_templates_example_call_tool.py deleted file mode 100644 index 938b17702..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_task_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ViewTaskTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type_header': 'application/json', 'page_number': 1, 'workspace_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_threaded_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/view_threaded_comments_example_call_tool.js deleted file mode 100644 index 68674c1c1..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_threaded_comments_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ViewThreadedComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "thread_comment_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_threaded_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/view_threaded_comments_example_call_tool.py deleted file mode 100644 index dcf97bfa8..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_threaded_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ViewThreadedComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'thread_comment_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_time_entry_changes_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/view_time_entry_changes_example_call_tool.js deleted file mode 100644 index d3a9de624..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_time_entry_changes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ViewTimeEntryChanges"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type_header": "application/json", - "time_entry_id": "12345", - "workspace_id": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_time_entry_changes_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/view_time_entry_changes_example_call_tool.py deleted file mode 100644 index ebaf1ebbd..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_time_entry_changes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ViewTimeEntryChanges" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type_header': 'application/json', 'time_entry_id': '12345', 'workspace_id': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/view_time_entry_example_call_tool.js deleted file mode 100644 index 21ce6fb82..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_time_entry_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ViewTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type": "application/json", - "time_entry_id": "12345", - "workspace_id": 678, - "include_approval_details": true, - "include_task_tags": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/view_time_entry_example_call_tool.py deleted file mode 100644 index be69877ed..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_time_entry_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ViewTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type': 'application/json', - 'time_entry_id': '12345', - 'workspace_id': 678, - 'include_approval_details': True, - 'include_task_tags': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_workspace_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/view_workspace_custom_fields_example_call_tool.js deleted file mode 100644 index 53aa9087f..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_workspace_custom_fields_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ViewWorkspaceCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type_header": "application/json", - "workspace_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_workspace_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/view_workspace_custom_fields_example_call_tool.py deleted file mode 100644 index 1933c8720..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_workspace_custom_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ViewWorkspaceCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type_header': 'application/json', 'workspace_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_workspace_goals_example_call_tool.js b/public/examples/integrations/mcp-servers/clickup_api/view_workspace_goals_example_call_tool.js deleted file mode 100644 index 2586bf5d0..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_workspace_goals_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ClickupApi.ViewWorkspaceGoals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": 12345, - "include_completed_goals": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/clickup_api/view_workspace_goals_example_call_tool.py b/public/examples/integrations/mcp-servers/clickup_api/view_workspace_goals_example_call_tool.py deleted file mode 100644 index 19f2ef4e4..000000000 --- a/public/examples/integrations/mcp-servers/clickup_api/view_workspace_goals_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ClickupApi.ViewWorkspaceGoals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 12345, 'include_completed_goals': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/confluence/create_page_example_call_tool.js b/public/examples/integrations/mcp-servers/confluence/create_page_example_call_tool.js deleted file mode 100644 index 8b3791c8f..000000000 --- a/public/examples/integrations/mcp-servers/confluence/create_page_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Confluence.CreatePage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - space_identifier: "YOUR_SPACE_IDENTIFIER", - title: "My new page", - content: "This is the content of the page", - parent_id: "YOUR_PARENT_ID", - is_private: false, - is_draft: false, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/confluence/create_page_example_call_tool.py b/public/examples/integrations/mcp-servers/confluence/create_page_example_call_tool.py deleted file mode 100644 index b558990f6..000000000 --- a/public/examples/integrations/mcp-servers/confluence/create_page_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Confluence.CreatePage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "space_identifier": "YOUR_SPACE_IDENTIFIER", - "title": "My new page", - "content": "This is the content of the page", - "parent_id": "YOUR_PARENT_ID", - "is_private": False, - "is_draft": False, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/confluence/get_attachments_for_page_example_call_tool.js b/public/examples/integrations/mcp-servers/confluence/get_attachments_for_page_example_call_tool.js deleted file mode 100644 index c0e8329c2..000000000 --- a/public/examples/integrations/mcp-servers/confluence/get_attachments_for_page_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Confluence.GetAttachmentsForPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - page_identifier: "YOUR_PAGE_IDENTIFIER", - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/confluence/get_attachments_for_page_example_call_tool.py b/public/examples/integrations/mcp-servers/confluence/get_attachments_for_page_example_call_tool.py deleted file mode 100644 index 3b1da1ab2..000000000 --- a/public/examples/integrations/mcp-servers/confluence/get_attachments_for_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Confluence.GetAttachmentsForPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "page_identifier": "YOUR_PAGE_IDENTIFIER", - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/confluence/get_page_example_call_tool.js b/public/examples/integrations/mcp-servers/confluence/get_page_example_call_tool.js deleted file mode 100644 index 1a523877c..000000000 --- a/public/examples/integrations/mcp-servers/confluence/get_page_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Confluence.GetPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - page_identifier: "YOUR_PAGE_IDENTIFIER", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/confluence/get_page_example_call_tool.py b/public/examples/integrations/mcp-servers/confluence/get_page_example_call_tool.py deleted file mode 100644 index 3fba2d893..000000000 --- a/public/examples/integrations/mcp-servers/confluence/get_page_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Confluence.GetPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "page_identifier": "YOUR_PAGE_IDENTIFIER", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/confluence/get_pages_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/confluence/get_pages_by_id_example_call_tool.js deleted file mode 100644 index 42e6f90c4..000000000 --- a/public/examples/integrations/mcp-servers/confluence/get_pages_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Confluence.GetPagesById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - page_ids: ["12345", "67890"], -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/confluence/get_pages_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/confluence/get_pages_by_id_example_call_tool.py deleted file mode 100644 index e0f1048f8..000000000 --- a/public/examples/integrations/mcp-servers/confluence/get_pages_by_id_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Confluence.GetPagesById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "page_ids": ["12345", "67890"], -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/confluence/get_space_example_call_tool.js b/public/examples/integrations/mcp-servers/confluence/get_space_example_call_tool.js deleted file mode 100644 index 2dbb06c5a..000000000 --- a/public/examples/integrations/mcp-servers/confluence/get_space_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Confluence.GetSpace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - space_identifier: "YOUR_SPACE_IDENTIFIER", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/confluence/get_space_example_call_tool.py b/public/examples/integrations/mcp-servers/confluence/get_space_example_call_tool.py deleted file mode 100644 index f2f88292e..000000000 --- a/public/examples/integrations/mcp-servers/confluence/get_space_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Confluence.GetSpace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "space_identifier": "YOUR_SPACE_IDENTIFIER", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/confluence/get_space_hierarchy_example_call_tool.js b/public/examples/integrations/mcp-servers/confluence/get_space_hierarchy_example_call_tool.js deleted file mode 100644 index b5caadda0..000000000 --- a/public/examples/integrations/mcp-servers/confluence/get_space_hierarchy_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Confluence.GetSpaceHierarchy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - space_identifier: "YOUR_SPACE_IDENTIFIER", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/confluence/get_space_hierarchy_example_call_tool.py b/public/examples/integrations/mcp-servers/confluence/get_space_hierarchy_example_call_tool.py deleted file mode 100644 index aad4db913..000000000 --- a/public/examples/integrations/mcp-servers/confluence/get_space_hierarchy_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Confluence.GetSpaceHierarchy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "space_identifier": "YOUR_SPACE_IDENTIFIER", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/confluence/list_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/confluence/list_attachments_example_call_tool.js deleted file mode 100644 index 5a5651545..000000000 --- a/public/examples/integrations/mcp-servers/confluence/list_attachments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Confluence.ListAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - sort_order: "created-date-newest-to-oldest", - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/confluence/list_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/confluence/list_attachments_example_call_tool.py deleted file mode 100644 index e6697015e..000000000 --- a/public/examples/integrations/mcp-servers/confluence/list_attachments_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Confluence.ListAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "sort_order": "created-date-newest-to-oldest", - "limit": 10, - "pagination_token": "YOUR_PAGINATION_TOKEN", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/confluence/list_pages_example_call_tool.js b/public/examples/integrations/mcp-servers/confluence/list_pages_example_call_tool.js deleted file mode 100644 index 34027766a..000000000 --- a/public/examples/integrations/mcp-servers/confluence/list_pages_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Confluence.ListPages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - sort_by: "created-date-newest-to-oldest", - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/confluence/list_pages_example_call_tool.py b/public/examples/integrations/mcp-servers/confluence/list_pages_example_call_tool.py deleted file mode 100644 index 0ef1a354a..000000000 --- a/public/examples/integrations/mcp-servers/confluence/list_pages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Confluence.ListPages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "sort_by": "created-date-newest-to-oldest", - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/confluence/list_spaces_example_call_tool.js b/public/examples/integrations/mcp-servers/confluence/list_spaces_example_call_tool.js deleted file mode 100644 index 0c719f13a..000000000 --- a/public/examples/integrations/mcp-servers/confluence/list_spaces_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Confluence.ListSpaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/confluence/list_spaces_example_call_tool.py b/public/examples/integrations/mcp-servers/confluence/list_spaces_example_call_tool.py deleted file mode 100644 index 529572fc3..000000000 --- a/public/examples/integrations/mcp-servers/confluence/list_spaces_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Confluence.ListSpaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/confluence/rename_page_example_call_tool.js b/public/examples/integrations/mcp-servers/confluence/rename_page_example_call_tool.js deleted file mode 100644 index 208b470aa..000000000 --- a/public/examples/integrations/mcp-servers/confluence/rename_page_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Confluence.RenamePage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - page_identifier: "My old page title", - title: "My new page title", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/confluence/rename_page_example_call_tool.py b/public/examples/integrations/mcp-servers/confluence/rename_page_example_call_tool.py deleted file mode 100644 index 51817e2fb..000000000 --- a/public/examples/integrations/mcp-servers/confluence/rename_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Confluence.RenamePage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "page_identifier": "My old page title", - "title": "My new page title", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/confluence/search_content_example_call_tool.js b/public/examples/integrations/mcp-servers/confluence/search_content_example_call_tool.js deleted file mode 100644 index b3e817ca9..000000000 --- a/public/examples/integrations/mcp-servers/confluence/search_content_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Confluence.SearchContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - must_contain_all: ["banana"], - can_contain_any: ["pancakes", "split"], -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/confluence/search_content_example_call_tool.py b/public/examples/integrations/mcp-servers/confluence/search_content_example_call_tool.py deleted file mode 100644 index 4b739f22f..000000000 --- a/public/examples/integrations/mcp-servers/confluence/search_content_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Confluence.SearchContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "must_contain_all": ["banana"], - "can_contain_any": ["pancakes", "split"], -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/confluence/update_page_content_example_call_tool.js b/public/examples/integrations/mcp-servers/confluence/update_page_content_example_call_tool.js deleted file mode 100644 index 490880e93..000000000 --- a/public/examples/integrations/mcp-servers/confluence/update_page_content_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Confluence.UpdatePageContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - page_identifier: "TODO list", - content: "- Get groceries", - update_mode: "append", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/confluence/update_page_content_example_call_tool.py b/public/examples/integrations/mcp-servers/confluence/update_page_content_example_call_tool.py deleted file mode 100644 index fba48dbbe..000000000 --- a/public/examples/integrations/mcp-servers/confluence/update_page_content_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Confluence.UpdatePageContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "page_identifier": "TODO list", - "content": "- Get groceries", - "update_mode": "append", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/cursor_agents_api/delete_background_agent_example_call_tool.js b/public/examples/integrations/mcp-servers/cursor_agents_api/delete_background_agent_example_call_tool.js deleted file mode 100644 index 186f360e2..000000000 --- a/public/examples/integrations/mcp-servers/cursor_agents_api/delete_background_agent_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CursorAgentsApi.DeleteBackgroundAgent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "background_agent_id": "agent_9f3b2a1c" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/cursor_agents_api/delete_background_agent_example_call_tool.py b/public/examples/integrations/mcp-servers/cursor_agents_api/delete_background_agent_example_call_tool.py deleted file mode 100644 index 518efc5ca..000000000 --- a/public/examples/integrations/mcp-servers/cursor_agents_api/delete_background_agent_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CursorAgentsApi.DeleteBackgroundAgent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'background_agent_id': 'agent_9f3b2a1c' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/cursor_agents_api/get_agent_conversation_history_example_call_tool.js b/public/examples/integrations/mcp-servers/cursor_agents_api/get_agent_conversation_history_example_call_tool.js deleted file mode 100644 index c6a77a97f..000000000 --- a/public/examples/integrations/mcp-servers/cursor_agents_api/get_agent_conversation_history_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CursorAgentsApi.GetAgentConversationHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "background_agent_id": "agent-73b9f2d1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/cursor_agents_api/get_agent_conversation_history_example_call_tool.py b/public/examples/integrations/mcp-servers/cursor_agents_api/get_agent_conversation_history_example_call_tool.py deleted file mode 100644 index 84bfaeb1f..000000000 --- a/public/examples/integrations/mcp-servers/cursor_agents_api/get_agent_conversation_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CursorAgentsApi.GetAgentConversationHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'background_agent_id': 'agent-73b9f2d1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/cursor_agents_api/get_agent_status_example_call_tool.js b/public/examples/integrations/mcp-servers/cursor_agents_api/get_agent_status_example_call_tool.js deleted file mode 100644 index 4d3876403..000000000 --- a/public/examples/integrations/mcp-servers/cursor_agents_api/get_agent_status_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CursorAgentsApi.GetAgentStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "background_agent_id": "agent-7f3a2c1b" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/cursor_agents_api/get_agent_status_example_call_tool.py b/public/examples/integrations/mcp-servers/cursor_agents_api/get_agent_status_example_call_tool.py deleted file mode 100644 index f231bd9ac..000000000 --- a/public/examples/integrations/mcp-servers/cursor_agents_api/get_agent_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CursorAgentsApi.GetAgentStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'background_agent_id': 'agent-7f3a2c1b' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/cursor_agents_api/list_background_agents_example_call_tool.js b/public/examples/integrations/mcp-servers/cursor_agents_api/list_background_agents_example_call_tool.js deleted file mode 100644 index fa7ba8b8a..000000000 --- a/public/examples/integrations/mcp-servers/cursor_agents_api/list_background_agents_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CursorAgentsApi.ListBackgroundAgents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_limit": 10, - "pagination_cursor": "cursor_abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/cursor_agents_api/list_background_agents_example_call_tool.py b/public/examples/integrations/mcp-servers/cursor_agents_api/list_background_agents_example_call_tool.py deleted file mode 100644 index 0daaaa9cd..000000000 --- a/public/examples/integrations/mcp-servers/cursor_agents_api/list_background_agents_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CursorAgentsApi.ListBackgroundAgents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_limit': 10, 'pagination_cursor': 'cursor_abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/cursor_agents_api/list_github_repositories_example_call_tool.js b/public/examples/integrations/mcp-servers/cursor_agents_api/list_github_repositories_example_call_tool.js deleted file mode 100644 index 68d082a97..000000000 --- a/public/examples/integrations/mcp-servers/cursor_agents_api/list_github_repositories_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CursorAgentsApi.ListGithubRepositories"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/cursor_agents_api/list_github_repositories_example_call_tool.py b/public/examples/integrations/mcp-servers/cursor_agents_api/list_github_repositories_example_call_tool.py deleted file mode 100644 index 81a9a6f56..000000000 --- a/public/examples/integrations/mcp-servers/cursor_agents_api/list_github_repositories_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CursorAgentsApi.ListGithubRepositories" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/cursor_agents_api/list_recommended_models_example_call_tool.js b/public/examples/integrations/mcp-servers/cursor_agents_api/list_recommended_models_example_call_tool.js deleted file mode 100644 index 982263afc..000000000 --- a/public/examples/integrations/mcp-servers/cursor_agents_api/list_recommended_models_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CursorAgentsApi.ListRecommendedModels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/cursor_agents_api/list_recommended_models_example_call_tool.py b/public/examples/integrations/mcp-servers/cursor_agents_api/list_recommended_models_example_call_tool.py deleted file mode 100644 index b8f2e4d1f..000000000 --- a/public/examples/integrations/mcp-servers/cursor_agents_api/list_recommended_models_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CursorAgentsApi.ListRecommendedModels" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/cursor_agents_api/retrieve_api_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/cursor_agents_api/retrieve_api_user_info_example_call_tool.js deleted file mode 100644 index 2c5edff1d..000000000 --- a/public/examples/integrations/mcp-servers/cursor_agents_api/retrieve_api_user_info_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CursorAgentsApi.RetrieveApiUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/cursor_agents_api/retrieve_api_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/cursor_agents_api/retrieve_api_user_info_example_call_tool.py deleted file mode 100644 index cdf81dc6b..000000000 --- a/public/examples/integrations/mcp-servers/cursor_agents_api/retrieve_api_user_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CursorAgentsApi.RetrieveApiUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/check_email_suppression_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/check_email_suppression_example_call_tool.js deleted file mode 100644 index 40b684f74..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/check_email_suppression_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.CheckEmailSuppression"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_to_check_suppression": "example@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/check_email_suppression_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/check_email_suppression_example_call_tool.py deleted file mode 100644 index aef19dcd2..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/check_email_suppression_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.CheckEmailSuppression" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_to_check_suppression': 'example@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/create_manual_segment_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/create_manual_segment_example_call_tool.js deleted file mode 100644 index 486c8d952..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/create_manual_segment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.CreateManualSegment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Segment\",\"description\":\"This is a new manual segment for organizing contacts.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/create_manual_segment_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/create_manual_segment_example_call_tool.py deleted file mode 100644 index 523ac3c1c..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/create_manual_segment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.CreateManualSegment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New Segment","description":"This is a new manual segment for ' - 'organizing contacts."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/create_new_collection_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/create_new_collection_example_call_tool.js deleted file mode 100644 index ab44a0901..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/create_new_collection_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.CreateNewCollection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Collection\",\"description\":\"A collection of customer data.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/create_new_collection_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/create_new_collection_example_call_tool.py deleted file mode 100644 index d2df75c14..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/create_new_collection_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.CreateNewCollection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New Collection","description":"A collection of customer data."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/create_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/create_webhook_example_call_tool.js deleted file mode 100644 index 438f4f7d3..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/create_webhook_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.CreateWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"url\":\"https://example.com/webhook\",\"event\":\"report_generated\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/create_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/create_webhook_example_call_tool.py deleted file mode 100644 index dc2e846a5..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/create_webhook_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.CreateWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"url":"https://example.com/webhook","event":"report_generated"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/delete_collection_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/delete_collection_example_call_tool.js deleted file mode 100644 index 9c1e67787..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/delete_collection_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.DeleteCollection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/delete_collection_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/delete_collection_example_call_tool.py deleted file mode 100644 index 642dad2fc..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/delete_collection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.DeleteCollection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/delete_manual_segment_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/delete_manual_segment_example_call_tool.js deleted file mode 100644 index 27a33a48b..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/delete_manual_segment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.DeleteManualSegment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "segment_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/delete_manual_segment_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/delete_manual_segment_example_call_tool.py deleted file mode 100644 index a98923bea..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/delete_manual_segment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.DeleteManualSegment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'segment_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/delete_newsletter_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/delete_newsletter_example_call_tool.js deleted file mode 100644 index 495d00e81..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/delete_newsletter_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.DeleteNewsletter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "newsletter_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/delete_newsletter_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/delete_newsletter_example_call_tool.py deleted file mode 100644 index e1dbfc039..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/delete_newsletter_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.DeleteNewsletter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'newsletter_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/delete_reporting_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/delete_reporting_webhook_example_call_tool.js deleted file mode 100644 index be6f3a707..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/delete_reporting_webhook_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.DeleteReportingWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/delete_reporting_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/delete_reporting_webhook_example_call_tool.py deleted file mode 100644 index dba485f45..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/delete_reporting_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.DeleteReportingWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/download_export_signed_link_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/download_export_signed_link_example_call_tool.js deleted file mode 100644 index a02e39ec2..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/download_export_signed_link_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.DownloadExportSignedLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "export_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/download_export_signed_link_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/download_export_signed_link_example_call_tool.py deleted file mode 100644 index 8a8e08cff..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/download_export_signed_link_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.DownloadExportSignedLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'export_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/export_customer_data_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/export_customer_data_example_call_tool.js deleted file mode 100644 index 8b95897c7..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/export_customer_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.ExportCustomerData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filters\":{\"status\":\"active\"},\"attributes\":[\"name\",\"email\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/export_customer_data_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/export_customer_data_example_call_tool.py deleted file mode 100644 index 2c592cf69..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/export_customer_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.ExportCustomerData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filters":{"status":"active"},"attributes":["name","email"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/export_delivery_data_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/export_delivery_data_example_call_tool.js deleted file mode 100644 index ca400dbff..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/export_delivery_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.ExportDeliveryData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"time_range\":\"last_30_days\",\"filters\":{\"campaign_id\":\"12345\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/export_delivery_data_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/export_delivery_data_example_call_tool.py deleted file mode 100644 index 210dfa38b..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/export_delivery_data_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.ExportDeliveryData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"time_range":"last_30_days","filters":{"campaign_id":"12345"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/fetch_message_deliveries_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/fetch_message_deliveries_example_call_tool.js deleted file mode 100644 index 9555a878f..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/fetch_message_deliveries_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.FetchMessageDeliveries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "beginning_timestamp": 1672531200, - "desired_metrics": "opened", - "ending_timestamp_for_query": 1675209600, - "filter_by_campaign_id": 12345, - "item_type_for_metrics": "email", - "results_per_page_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/fetch_message_deliveries_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/fetch_message_deliveries_example_call_tool.py deleted file mode 100644 index 45cf0167d..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/fetch_message_deliveries_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.FetchMessageDeliveries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'beginning_timestamp': 1672531200, - 'desired_metrics': 'opened', - 'ending_timestamp_for_query': 1675209600, - 'filter_by_campaign_id': 12345, - 'item_type_for_metrics': 'email', - 'results_per_page_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/filter_people_in_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/filter_people_in_workspace_example_call_tool.js deleted file mode 100644 index c03d31f0a..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/filter_people_in_workspace_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.FilterPeopleInWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "page_start_token": "abc123", - "results_per_page_limit": 100, - "request_body": "{\"filter\":{\"segment_id\":\"seg001\",\"attributes\":{\"role\":\"developer\"}}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/filter_people_in_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/filter_people_in_workspace_example_call_tool.py deleted file mode 100644 index b8227575c..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/filter_people_in_workspace_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.FilterPeopleInWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'page_start_token': 'abc123', - 'results_per_page_limit': 100, - 'request_body': '{"filter":{"segment_id":"seg001","attributes":{"role":"developer"}}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/find_segment_dependencies_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/find_segment_dependencies_example_call_tool.js deleted file mode 100644 index 7a98b47db..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/find_segment_dependencies_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.FindSegmentDependencies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "segment_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/find_segment_dependencies_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/find_segment_dependencies_example_call_tool.py deleted file mode 100644 index 37360501f..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/find_segment_dependencies_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.FindSegmentDependencies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'segment_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/find_suppressed_email_addresses_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/find_suppressed_email_addresses_example_call_tool.js deleted file mode 100644 index bb83ca739..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/find_suppressed_email_addresses_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.FindSuppressedEmailAddresses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "suppression_reason": "bounces", - "max_results_per_page": 100, - "skip_records": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/find_suppressed_email_addresses_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/find_suppressed_email_addresses_example_call_tool.py deleted file mode 100644 index 43867210c..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/find_suppressed_email_addresses_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.FindSuppressedEmailAddresses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'suppression_reason': 'bounces', 'max_results_per_page': 100, 'skip_records': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/find_workspace_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/find_workspace_objects_example_call_tool.js deleted file mode 100644 index 1407a4942..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/find_workspace_objects_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.FindWorkspaceObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "page_start_token": "abc123", - "maximum_results_per_page": 10, - "request_body": "{\"filter\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/find_workspace_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/find_workspace_objects_example_call_tool.py deleted file mode 100644 index 7e7480e5d..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/find_workspace_objects_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.FindWorkspaceObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'page_start_token': 'abc123', - 'maximum_results_per_page': 10, - 'request_body': '{"filter":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_all_segments_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_all_segments_example_call_tool.js deleted file mode 100644 index 193932aa8..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_all_segments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetAllSegments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_all_segments_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_all_segments_example_call_tool.py deleted file mode 100644 index b7f6518f0..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_all_segments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetAllSegments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_allowlist_ips_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_allowlist_ips_example_call_tool.js deleted file mode 100644 index 648490c68..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_allowlist_ips_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetAllowlistIps"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_allowlist_ips_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_allowlist_ips_example_call_tool.py deleted file mode 100644 index da6acfe76..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_allowlist_ips_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetAllowlistIps" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_archived_message_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_archived_message_example_call_tool.js deleted file mode 100644 index 6e3bb28b0..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_archived_message_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetArchivedMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "message_id": "msg_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_archived_message_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_archived_message_example_call_tool.py deleted file mode 100644 index 0a25c4817..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_archived_message_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetArchivedMessage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'message_id': 'msg_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_info_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_info_example_call_tool.js deleted file mode 100644 index 239e56990..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetBroadcastActionInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": 123, - "broadcast_identifier": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_info_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_info_example_call_tool.py deleted file mode 100644 index 68eb9dd2e..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetBroadcastActionInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': 123, 'broadcast_identifier': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_link_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_link_metrics_example_call_tool.js deleted file mode 100644 index c07b569b8..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_link_metrics_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetBroadcastActionLinkMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "broadcast_action_id": 12345, - "broadcast_identifier": 67890, - "item_type": "email", - "number_of_periods_to_return": 30, - "time_period_unit": "days" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_link_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_link_metrics_example_call_tool.py deleted file mode 100644 index 4d932f7f0..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_link_metrics_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetBroadcastActionLinkMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'broadcast_action_id': 12345, - 'broadcast_identifier': 67890, - 'item_type': 'email', - 'number_of_periods_to_return': 30, - 'time_period_unit': 'days' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_metrics_example_call_tool.js deleted file mode 100644 index 8a2a6f4d9..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_metrics_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetBroadcastActionMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "broadcast_identifier": 12345, - "lookup_action_id": 67890, - "metrics_item_type": "email", - "period_steps": 7, - "time_unit_for_report": "days" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_metrics_example_call_tool.py deleted file mode 100644 index 2e5682d65..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_action_metrics_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetBroadcastActionMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'broadcast_identifier': 12345, - 'lookup_action_id': 67890, - 'metrics_item_type': 'email', - 'period_steps': 7, - 'time_unit_for_report': 'days' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_actions_example_call_tool.js deleted file mode 100644 index 300de8c58..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_actions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetBroadcastActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "broadcast_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_actions_example_call_tool.py deleted file mode 100644 index 7af1a1451..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetBroadcastActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'broadcast_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_errors_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_errors_example_call_tool.js deleted file mode 100644 index e5de3d210..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_errors_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetBroadcastErrors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "broadcast_id": 12345, - "campaign_trigger_id": 67890, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_errors_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_errors_example_call_tool.py deleted file mode 100644 index 707b82f0e..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_errors_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetBroadcastErrors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'broadcast_id': 12345, 'campaign_trigger_id': 67890, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_link_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_link_metrics_example_call_tool.js deleted file mode 100644 index a7eb36614..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_link_metrics_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetBroadcastLinkMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "broadcast_identifier": 12345, - "period_steps": 7, - "report_period": "days", - "return_unique_customer_results": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_link_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_link_metrics_example_call_tool.py deleted file mode 100644 index e7750e9d6..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_link_metrics_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetBroadcastLinkMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'broadcast_identifier': 12345, - 'period_steps': 7, - 'report_period': 'days', - 'return_unique_customer_results': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_message_info_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_message_info_example_call_tool.js deleted file mode 100644 index a9198cf08..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_message_info_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetBroadcastMessageInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "broadcast_identifier": 12345, - "beginning_timestamp": 1672531200, - "ending_timestamp": 1672617600, - "broadcast_state": "sent", - "item_type": "email", - "maximum_results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_message_info_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_message_info_example_call_tool.py deleted file mode 100644 index 34fbc4110..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_message_info_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetBroadcastMessageInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'broadcast_identifier': 12345, - 'beginning_timestamp': 1672531200, - 'ending_timestamp': 1672617600, - 'broadcast_state': 'sent', - 'item_type': 'email', - 'maximum_results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_metadata_example_call_tool.js deleted file mode 100644 index 0b903c6b5..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_metadata_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetBroadcastMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "broadcast_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_metadata_example_call_tool.py deleted file mode 100644 index 5ff2c3605..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetBroadcastMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'broadcast_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_metrics_example_call_tool.js deleted file mode 100644 index 04042eb0f..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_metrics_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetBroadcastMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "broadcast_identifier": 12345, - "metric_type": "email", - "number_of_time_periods": 30, - "time_period_unit": "days" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_metrics_example_call_tool.py deleted file mode 100644 index 771006cbc..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_metrics_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetBroadcastMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'broadcast_identifier': 12345, - 'metric_type': 'email', - 'number_of_time_periods': 30, - 'time_period_unit': 'days' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_status_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_status_example_call_tool.js deleted file mode 100644 index 2c07d77d2..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetBroadcastStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "broadcast_identifier": 12345, - "campaign_trigger_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_status_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_status_example_call_tool.py deleted file mode 100644 index fe9984891..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetBroadcastStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'broadcast_identifier': 12345, 'campaign_trigger_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_translation_info_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_translation_info_example_call_tool.js deleted file mode 100644 index 8169ff18f..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_translation_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetBroadcastTranslationInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": 123, - "broadcast_identifier": 456, - "language_tag": "en" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_translation_info_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_translation_info_example_call_tool.py deleted file mode 100644 index cdc1c0df6..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_translation_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetBroadcastTranslationInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': 123, 'broadcast_identifier': 456, 'language_tag': 'en' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_triggers_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_triggers_example_call_tool.js deleted file mode 100644 index d008a750b..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_triggers_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetBroadcastTriggers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "broadcast_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_triggers_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_triggers_example_call_tool.py deleted file mode 100644 index 1025552f0..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_broadcast_triggers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetBroadcastTriggers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'broadcast_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_info_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_info_example_call_tool.js deleted file mode 100644 index 5318d76f7..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetCampaignActionInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": 123, - "campaign_identifier": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_info_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_info_example_call_tool.py deleted file mode 100644 index 29f04af59..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetCampaignActionInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': 123, 'campaign_identifier': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_link_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_link_metrics_example_call_tool.js deleted file mode 100644 index 0f53745fd..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_link_metrics_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetCampaignActionLinkMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_identifier": 123, - "campaign_id": 456, - "metric_item_type": "email", - "number_of_periods_to_return": 30 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_link_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_link_metrics_example_call_tool.py deleted file mode 100644 index af68ff63f..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_link_metrics_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetCampaignActionLinkMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_identifier': 123, - 'campaign_id': 456, - 'metric_item_type': 'email', - 'number_of_periods_to_return': 30 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_metrics_example_call_tool.js deleted file mode 100644 index a60553ec4..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_metrics_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetCampaignActionMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_identifier": 12345, - "campaign_id": 67890, - "metrics_api_version": "2", - "item_type_for_metrics": "email", - "metrics_start_timestamp": 1690000000, - "metrics_end_timestamp": 1692592000, - "metrics_resolution": "daily", - "timezone": "UTC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_metrics_example_call_tool.py deleted file mode 100644 index d415a1f6b..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_action_metrics_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetCampaignActionMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_identifier': 12345, - 'campaign_id': 67890, - 'metrics_api_version': '2', - 'item_type_for_metrics': 'email', - 'metrics_start_timestamp': 1690000000, - 'metrics_end_timestamp': 1692592000, - 'metrics_resolution': 'daily', - 'timezone': 'UTC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_journey_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_journey_metrics_example_call_tool.js deleted file mode 100644 index ec3d0d6f0..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_journey_metrics_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetCampaignJourneyMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": 12345, - "start_timestamp": 1672531200, - "end_timestamp": 1672617600, - "metrics_resolution": "daily" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_journey_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_journey_metrics_example_call_tool.py deleted file mode 100644 index 9f4f3463d..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_journey_metrics_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetCampaignJourneyMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': 12345, - 'start_timestamp': 1672531200, - 'end_timestamp': 1672617600, - 'metrics_resolution': 'daily' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_link_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_link_metrics_example_call_tool.js deleted file mode 100644 index 44b54e2e6..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_link_metrics_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetCampaignLinkMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_identifier": 12345, - "count_unique_customers": true, - "number_of_periods": 4, - "report_time_unit": "days" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_link_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_link_metrics_example_call_tool.py deleted file mode 100644 index 08a0bcd53..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_link_metrics_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetCampaignLinkMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_identifier': 12345, - 'count_unique_customers': True, - 'number_of_periods': 4, - 'report_time_unit': 'days' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_list_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_list_example_call_tool.js deleted file mode 100644 index d432b00c5..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_list_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetCampaignList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_list_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_list_example_call_tool.py deleted file mode 100644 index 2f4b37a44..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetCampaignList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_messages_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_messages_example_call_tool.js deleted file mode 100644 index 91a23539e..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_messages_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetCampaignMessages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": 12345, - "beginning_timestamp": 1672531200, - "end_timestamp": 1672617600, - "message_type": "email", - "metrics_to_return": "opened", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_messages_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_messages_example_call_tool.py deleted file mode 100644 index 0632caf63..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_messages_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetCampaignMessages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': 12345, - 'beginning_timestamp': 1672531200, - 'end_timestamp': 1672617600, - 'message_type': 'email', - 'metrics_to_return': 'opened', - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_metadata_example_call_tool.js deleted file mode 100644 index 1f8726e0a..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_metadata_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetCampaignMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_metadata_example_call_tool.py deleted file mode 100644 index 8a0c7397b..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetCampaignMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_metrics_example_call_tool.js deleted file mode 100644 index b945110f2..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_metrics_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetCampaignMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": 12345, - "metrics_api_version": "2", - "metrics_start_timestamp": 1690000000, - "end_time_unix": 1692592000, - "resolution": "daily", - "timezone_for_metrics": "America/New_York" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_campaign_metrics_example_call_tool.py deleted file mode 100644 index fde88bce7..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_campaign_metrics_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetCampaignMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': 12345, - 'metrics_api_version': '2', - 'metrics_start_timestamp': 1690000000, - 'end_time_unix': 1692592000, - 'resolution': 'daily', - 'timezone_for_metrics': 'America/New_York' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_customer_activities_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_customer_activities_example_call_tool.js deleted file mode 100644 index 7e4a607c6..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_customer_activities_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetCustomerActivities"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "12345", - "activity_type_filter": "attribute_change", - "max_results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_customer_activities_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_customer_activities_example_call_tool.py deleted file mode 100644 index 514901b32..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_customer_activities_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetCustomerActivities" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': '12345', 'activity_type_filter': 'attribute_change', 'max_results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_customer_info_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_customer_info_example_call_tool.js deleted file mode 100644 index 77c147d5d..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_customer_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetCustomerInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"customer_ids\":[\"123\",\"456\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_customer_info_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_customer_info_example_call_tool.py deleted file mode 100644 index de242c242..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_customer_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetCustomerInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"customer_ids":["123","456"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_customer_profile_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_customer_profile_attributes_example_call_tool.js deleted file mode 100644 index 654f26681..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_customer_profile_attributes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetCustomerProfileAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_identifier": "12345", - "customer_id_type": "email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_customer_profile_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_customer_profile_attributes_example_call_tool.py deleted file mode 100644 index fb292f6fc..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_customer_profile_attributes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetCustomerProfileAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_identifier': '12345', 'customer_id_type': 'email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_customer_segments_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_customer_segments_example_call_tool.js deleted file mode 100644 index 4591c8f60..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_customer_segments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetCustomerSegments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_identifier": "12345", - "customer_id_type": "email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_customer_segments_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_customer_segments_example_call_tool.py deleted file mode 100644 index 282adad9b..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_customer_segments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetCustomerSegments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_identifier': '12345', 'customer_id_type': 'email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_delivery_message_info_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_delivery_message_info_example_call_tool.js deleted file mode 100644 index fb109f684..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_delivery_message_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetDeliveryMessageInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "message_identifier": "msg_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_delivery_message_info_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_delivery_message_info_example_call_tool.py deleted file mode 100644 index a7bc399e0..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_delivery_message_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetDeliveryMessageInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'message_identifier': 'msg_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_export_info_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_export_info_example_call_tool.js deleted file mode 100644 index f8a90bf4c..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_export_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetExportInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "export_id_to_access": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_export_info_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_export_info_example_call_tool.py deleted file mode 100644 index 8af3a6d21..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_export_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetExportInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'export_id_to_access': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_import_status_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_import_status_example_call_tool.js deleted file mode 100644 index 742a5104f..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_import_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetImportStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "import_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_import_status_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_import_status_example_call_tool.py deleted file mode 100644 index 867a88713..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_import_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetImportStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'import_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_link_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_link_metrics_example_call_tool.js deleted file mode 100644 index 50ee858e8..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_link_metrics_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetNewsletterLinkMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "newsletter_identifier": 12345, - "include_unique_customers": true, - "number_of_periods": 4, - "time_unit_for_report": "weeks" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_link_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_link_metrics_example_call_tool.py deleted file mode 100644 index 63e2fdae8..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_link_metrics_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetNewsletterLinkMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'newsletter_identifier': 12345, - 'include_unique_customers': True, - 'number_of_periods': 4, - 'time_unit_for_report': 'weeks' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_message_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_message_metadata_example_call_tool.js deleted file mode 100644 index e36f1a9ca..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_message_metadata_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetNewsletterMessageMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "newsletter_identifier": 12345, - "begin_query_timestamp": 1672531200, - "metrics_to_return": "sent", - "results_per_page_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_message_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_message_metadata_example_call_tool.py deleted file mode 100644 index f3ed1db44..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_message_metadata_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetNewsletterMessageMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'newsletter_identifier': 12345, - 'begin_query_timestamp': 1672531200, - 'metrics_to_return': 'sent', - 'results_per_page_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_metrics_example_call_tool.js deleted file mode 100644 index 904a8e4fe..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_metrics_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetNewsletterMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "newsletter_identifier": 123, - "item_type_for_metrics": "email", - "number_of_time_periods": 7, - "time_period_unit": "days" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_metrics_example_call_tool.py deleted file mode 100644 index d6fd46fb1..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_metrics_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetNewsletterMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'newsletter_identifier': 123, - 'item_type_for_metrics': 'email', - 'number_of_time_periods': 7, - 'time_period_unit': 'days' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_test_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_test_groups_example_call_tool.js deleted file mode 100644 index 771d8baf7..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_test_groups_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetNewsletterTestGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "newsletter_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_test_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_test_groups_example_call_tool.py deleted file mode 100644 index ef47b862f..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_test_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetNewsletterTestGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'newsletter_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_click_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_click_metrics_example_call_tool.js deleted file mode 100644 index 1613c2b33..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_click_metrics_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetNewsletterVariantClickMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "message_content_identifier": 12345, - "newsletter_identifier": 67890, - "item_type_for_metrics": "email", - "number_of_periods": 30 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_click_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_click_metrics_example_call_tool.py deleted file mode 100644 index 4578df18e..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_click_metrics_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetNewsletterVariantClickMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'message_content_identifier': 12345, - 'newsletter_identifier': 67890, - 'item_type_for_metrics': 'email', - 'number_of_periods': 30 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_info_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_info_example_call_tool.js deleted file mode 100644 index 1f845adf1..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetNewsletterVariantInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "message_identifier_in_newsletter": 1, - "newsletter_identifier": 101 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_info_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_info_example_call_tool.py deleted file mode 100644 index c6f010809..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetNewsletterVariantInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'message_identifier_in_newsletter': 1, 'newsletter_identifier': 101 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_metrics_example_call_tool.js deleted file mode 100644 index 2bfddba95..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_metrics_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetNewsletterVariantMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "newsletter_identifier": 12345, - "newsletter_message_id": 67890, - "item_type_for_metrics": "email", - "number_of_period_steps": 3, - "reporting_period_unit": "days" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_metrics_example_call_tool.py deleted file mode 100644 index e6e344346..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_metrics_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetNewsletterVariantMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'newsletter_identifier': 12345, - 'newsletter_message_id': 67890, - 'item_type_for_metrics': 'email', - 'number_of_period_steps': 3, - 'reporting_period_unit': 'days' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_translation_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_translation_example_call_tool.js deleted file mode 100644 index a51ee0e91..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_translation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetNewsletterVariantTranslation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "language_tag": "fr", - "newsletter_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_translation_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_translation_example_call_tool.py deleted file mode 100644 index 77168cc19..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variant_translation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetNewsletterVariantTranslation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'language_tag': 'fr', 'newsletter_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variants_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variants_example_call_tool.js deleted file mode 100644 index 2d767144e..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variants_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetNewsletterVariants"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "newsletter_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variants_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variants_example_call_tool.py deleted file mode 100644 index 5d9ebe4f5..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletter_variants_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetNewsletterVariants" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'newsletter_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletters_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_newsletters_example_call_tool.js deleted file mode 100644 index 77dbade8d..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletters_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetNewsletters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_results_per_page": 10, - "sort_order": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_newsletters_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_newsletters_example_call_tool.py deleted file mode 100644 index 16bfb07c1..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_newsletters_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetNewsletters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_results_per_page': 10, 'sort_order': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_object_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_object_attributes_example_call_tool.js deleted file mode 100644 index c48149da5..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_object_attributes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetObjectAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_identifier": "12345", - "object_type_identifier": 1, - "object_id_type": "object_id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_object_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_object_attributes_example_call_tool.py deleted file mode 100644 index 2d65947d1..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_object_attributes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetObjectAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_identifier': '12345', 'object_type_identifier': 1, 'object_id_type': 'object_id' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_object_types_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_object_types_example_call_tool.js deleted file mode 100644 index 7925e9a2a..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_object_types_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetObjectTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_object_types_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_object_types_example_call_tool.py deleted file mode 100644 index ac76602ff..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_object_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetObjectTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_people_by_email_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_people_by_email_example_call_tool.js deleted file mode 100644 index c91a22ec7..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_people_by_email_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetPeopleByEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_email_address": "example@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_people_by_email_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_people_by_email_example_call_tool.py deleted file mode 100644 index fc601b681..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_people_by_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetPeopleByEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_email_address': 'example@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_person_relationships_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_person_relationships_example_call_tool.js deleted file mode 100644 index 655b9206c..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_person_relationships_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetPersonRelationships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "12345", - "max_results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_person_relationships_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_person_relationships_example_call_tool.py deleted file mode 100644 index 24ca7e29c..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_person_relationships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetPersonRelationships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': '12345', 'max_results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_related_people_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_related_people_example_call_tool.js deleted file mode 100644 index b0997daee..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_related_people_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetRelatedPeople"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_identifier": "12345", - "object_type_identifier": 1, - "maximum_results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_related_people_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_related_people_example_call_tool.py deleted file mode 100644 index 537d8f02d..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_related_people_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetRelatedPeople" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_identifier': '12345', 'object_type_identifier': 1, 'maximum_results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_segment_customer_count_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_segment_customer_count_example_call_tool.js deleted file mode 100644 index ef7264a14..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_segment_customer_count_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetSegmentCustomerCount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "segment_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_segment_customer_count_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_segment_customer_count_example_call_tool.py deleted file mode 100644 index a3699c546..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_segment_customer_count_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetSegmentCustomerCount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'segment_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_segment_info_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_segment_info_example_call_tool.js deleted file mode 100644 index 4d28ab3e2..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_segment_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetSegmentInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "segment_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_segment_info_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_segment_info_example_call_tool.py deleted file mode 100644 index 2488ab9de..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_segment_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetSegmentInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'segment_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_segment_members_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_segment_members_example_call_tool.js deleted file mode 100644 index 395fcdd69..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_segment_members_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetSegmentMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "segment_identifier": 12345, - "maximum_results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_segment_members_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_segment_members_example_call_tool.py deleted file mode 100644 index 9aa46b55d..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_segment_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetSegmentMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'segment_identifier': 12345, 'maximum_results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_sender_info_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_sender_info_example_call_tool.js deleted file mode 100644 index 1256ab12c..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_sender_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetSenderInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "sender_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_sender_info_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_sender_info_example_call_tool.py deleted file mode 100644 index a6e428ffd..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_sender_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetSenderInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'sender_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_sender_list_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_sender_list_example_call_tool.js deleted file mode 100644 index 19b3a85d6..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_sender_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetSenderList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_results_per_page": 10, - "results_sort_order": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_sender_list_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_sender_list_example_call_tool.py deleted file mode 100644 index 85f91aaf7..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_sender_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetSenderList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_results_per_page': 10, 'results_sort_order': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_sender_usage_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_sender_usage_example_call_tool.js deleted file mode 100644 index a1464244f..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_sender_usage_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetSenderUsage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "sender_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_sender_usage_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_sender_usage_example_call_tool.py deleted file mode 100644 index 92b692a00..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_sender_usage_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetSenderUsage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'sender_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_subscription_preferences_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_subscription_preferences_example_call_tool.js deleted file mode 100644 index bd870fbf2..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_subscription_preferences_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetSubscriptionPreferences"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_identifier": "12345", - "accept_language": "en", - "customer_id_type": "email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_subscription_preferences_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_subscription_preferences_example_call_tool.py deleted file mode 100644 index 2ed4ef1eb..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_subscription_preferences_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetSubscriptionPreferences" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_identifier': '12345', 'accept_language': 'en', 'customer_id_type': 'email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_subscription_topics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_subscription_topics_example_call_tool.js deleted file mode 100644 index 676d10fa1..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_subscription_topics_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetSubscriptionTopics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_subscription_topics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_subscription_topics_example_call_tool.py deleted file mode 100644 index b9846c853..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_subscription_topics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetSubscriptionTopics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_link_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_transactional_link_metrics_example_call_tool.js deleted file mode 100644 index 7378e56cf..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_link_metrics_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetTransactionalLinkMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transactional_message_id": 3, - "include_only_unique_customers": true, - "number_of_periods": 3, - "time_unit_for_report": "days" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_link_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_transactional_link_metrics_example_call_tool.py deleted file mode 100644 index 845675670..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_link_metrics_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetTransactionalLinkMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transactional_message_id': 3, - 'include_only_unique_customers': True, - 'number_of_periods': 3, - 'time_unit_for_report': 'days' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_deliveries_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_deliveries_example_call_tool.js deleted file mode 100644 index 35572bfdb..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_deliveries_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetTransactionalMessageDeliveries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transactional_message_id": 3, - "beginning_timestamp": 1690000000, - "broadcast_state": "sent", - "max_results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_deliveries_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_deliveries_example_call_tool.py deleted file mode 100644 index 0d0139c6d..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_deliveries_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetTransactionalMessageDeliveries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transactional_message_id': 3, - 'beginning_timestamp': 1690000000, - 'broadcast_state': 'sent', - 'max_results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_example_call_tool.js deleted file mode 100644 index b00977b57..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetTransactionalMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transactional_message_id": 3 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_example_call_tool.py deleted file mode 100644 index 825f56b3d..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetTransactionalMessage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transactional_message_id': 3 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_metrics_example_call_tool.js deleted file mode 100644 index 3091ddac3..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_metrics_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetTransactionalMessageMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transactional_message_id": 3, - "number_of_periods": 12, - "time_unit_for_report": "days" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_metrics_example_call_tool.py deleted file mode 100644 index 92ee82822..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetTransactionalMessageMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transactional_message_id': 3, 'number_of_periods': 12, 'time_unit_for_report': 'days' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_variants_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_variants_example_call_tool.js deleted file mode 100644 index 546a327ae..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_variants_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetTransactionalMessageVariants"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transactional_message_id": 3 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_variants_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_variants_example_call_tool.py deleted file mode 100644 index fcb8434da..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_message_variants_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetTransactionalMessageVariants" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transactional_message_id': 3 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_variant_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_transactional_variant_example_call_tool.js deleted file mode 100644 index 9b16635af..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_variant_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetTransactionalVariant"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "language_tag": "en", - "transactional_message_id": 3 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_variant_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_transactional_variant_example_call_tool.py deleted file mode 100644 index 142488b9c..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_transactional_variant_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetTransactionalVariant" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'language_tag': 'en', 'transactional_message_id': 3 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_webhook_info_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/get_webhook_info_example_call_tool.js deleted file mode 100644 index 12c2964aa..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_webhook_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.GetWebhookInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/get_webhook_info_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/get_webhook_info_example_call_tool.py deleted file mode 100644 index 6b44cdafe..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/get_webhook_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.GetWebhookInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_broadcasts_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/list_broadcasts_example_call_tool.js deleted file mode 100644 index 5d50b6402..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_broadcasts_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.ListBroadcasts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_broadcasts_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/list_broadcasts_example_call_tool.py deleted file mode 100644 index 632bfb216..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_broadcasts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.ListBroadcasts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_campaign_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/list_campaign_actions_example_call_tool.js deleted file mode 100644 index adc0d8610..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_campaign_actions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.ListCampaignActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": 12345, - "page_token": "next" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_campaign_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/list_campaign_actions_example_call_tool.py deleted file mode 100644 index 23c38ea6a..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_campaign_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.ListCampaignActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': 12345, 'page_token': 'next' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_collections_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/list_collections_example_call_tool.js deleted file mode 100644 index f27a8de02..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_collections_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.ListCollections"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_collections_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/list_collections_example_call_tool.py deleted file mode 100644 index f61ce14cc..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_collections_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.ListCollections" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/list_exports_example_call_tool.js deleted file mode 100644 index 5b3d323a7..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_exports_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.ListExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/list_exports_example_call_tool.py deleted file mode 100644 index 88d94b370..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_exports_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.ListExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_recent_activities_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/list_recent_activities_example_call_tool.js deleted file mode 100644 index b20e30ebd..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_recent_activities_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.ListRecentActivities"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "activity_type": "_o:123", - "customer_id_type": "email", - "event_or_attribute_name": "login", - "include_deleted_people": false, - "results_per_page_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_recent_activities_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/list_recent_activities_example_call_tool.py deleted file mode 100644 index d12b596df..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_recent_activities_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.ListRecentActivities" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'activity_type': '_o:123', - 'customer_id_type': 'email', - 'event_or_attribute_name': 'login', - 'include_deleted_people': False, - 'results_per_page_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_reporting_webhooks_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/list_reporting_webhooks_example_call_tool.js deleted file mode 100644 index 72acaad51..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_reporting_webhooks_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.ListReportingWebhooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_reporting_webhooks_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/list_reporting_webhooks_example_call_tool.py deleted file mode 100644 index c47d8540a..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_reporting_webhooks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.ListReportingWebhooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_snippets_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/list_snippets_workspace_example_call_tool.js deleted file mode 100644 index f4a6fce47..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_snippets_workspace_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.ListSnippetsWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_snippets_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/list_snippets_workspace_example_call_tool.py deleted file mode 100644 index d72b95b22..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_snippets_workspace_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.ListSnippetsWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_transactional_messages_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/list_transactional_messages_example_call_tool.js deleted file mode 100644 index 1ae4c03af..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_transactional_messages_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.ListTransactionalMessages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_transactional_messages_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/list_transactional_messages_example_call_tool.py deleted file mode 100644 index cb42a8f5f..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_transactional_messages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.ListTransactionalMessages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_workspaces_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/list_workspaces_example_call_tool.js deleted file mode 100644 index 21dbe80dc..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_workspaces_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.ListWorkspaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/list_workspaces_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/list_workspaces_example_call_tool.py deleted file mode 100644 index 84717498e..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/list_workspaces_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.ListWorkspaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/remove_email_suppression_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/remove_email_suppression_example_call_tool.js deleted file mode 100644 index efac76ecd..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/remove_email_suppression_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.RemoveEmailSuppression"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_address_to_remove": "example@example.com", - "suppression_reason": "bounces" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/remove_email_suppression_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/remove_email_suppression_example_call_tool.py deleted file mode 100644 index e3c8ee9f7..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/remove_email_suppression_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.RemoveEmailSuppression" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_address_to_remove': 'example@example.com', 'suppression_reason': 'bounces' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/remove_unused_snippet_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/remove_unused_snippet_example_call_tool.js deleted file mode 100644 index cc15faa5f..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/remove_unused_snippet_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.RemoveUnusedSnippet"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "snippet_name": "exampleSnippet" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/remove_unused_snippet_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/remove_unused_snippet_example_call_tool.py deleted file mode 100644 index 3c3d4ccbf..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/remove_unused_snippet_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.RemoveUnusedSnippet" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'snippet_name': 'exampleSnippet' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/replace_collection_contents_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/replace_collection_contents_example_call_tool.js deleted file mode 100644 index be7cda9fe..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/replace_collection_contents_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.ReplaceCollectionContents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "collection_identifier": 123, - "request_body": "{\"key1\":\"value1\",\"key2\":\"value2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/replace_collection_contents_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/replace_collection_contents_example_call_tool.py deleted file mode 100644 index 8bde4c167..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/replace_collection_contents_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.ReplaceCollectionContents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'collection_identifier': 123, - 'request_body': '{"key1":"value1","key2":"value2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/retrieve_collection_contents_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/retrieve_collection_contents_example_call_tool.js deleted file mode 100644 index 6fc736a6c..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/retrieve_collection_contents_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.RetrieveCollectionContents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/retrieve_collection_contents_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/retrieve_collection_contents_example_call_tool.py deleted file mode 100644 index 71de26e3c..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/retrieve_collection_contents_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.RetrieveCollectionContents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/retrieve_collection_details_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/retrieve_collection_details_example_call_tool.js deleted file mode 100644 index 2b00c494c..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/retrieve_collection_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.RetrieveCollectionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/retrieve_collection_details_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/retrieve_collection_details_example_call_tool.py deleted file mode 100644 index 316b8cebe..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/retrieve_collection_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.RetrieveCollectionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/retrieve_customer_messages_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/retrieve_customer_messages_example_call_tool.js deleted file mode 100644 index 688b31b3c..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/retrieve_customer_messages_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.RetrieveCustomerMessages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_identifier": "12345", - "customer_id_type": "email", - "max_results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/retrieve_customer_messages_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/retrieve_customer_messages_example_call_tool.py deleted file mode 100644 index 1be377492..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/retrieve_customer_messages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.RetrieveCustomerMessages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_identifier': '12345', 'customer_id_type': 'email', 'max_results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/retrieve_newsletter_language_variant_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/retrieve_newsletter_language_variant_example_call_tool.js deleted file mode 100644 index 20ff69d39..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/retrieve_newsletter_language_variant_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.RetrieveNewsletterLanguageVariant"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ab_test_group_id": "group_123", - "language_tag": "en", - "newsletter_identifier": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/retrieve_newsletter_language_variant_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/retrieve_newsletter_language_variant_example_call_tool.py deleted file mode 100644 index 9fa6c313b..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/retrieve_newsletter_language_variant_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.RetrieveNewsletterLanguageVariant" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ab_test_group_id': 'group_123', 'language_tag': 'en', 'newsletter_identifier': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/retrieve_newsletter_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/retrieve_newsletter_metadata_example_call_tool.js deleted file mode 100644 index 1d5c420de..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/retrieve_newsletter_metadata_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.RetrieveNewsletterMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "newsletter_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/retrieve_newsletter_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/retrieve_newsletter_metadata_example_call_tool.py deleted file mode 100644 index 817e51741..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/retrieve_newsletter_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.RetrieveNewsletterMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'newsletter_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/send_transactional_email_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/send_transactional_email_example_call_tool.js deleted file mode 100644 index 9d72c2f24..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/send_transactional_email_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.SendTransactionalEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"transactional_message_id\":\"12345\",\"to\":\"user@example.com\",\"subject\":\"Welcome!\",\"body\":\"Thank you for signing up!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/send_transactional_email_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/send_transactional_email_example_call_tool.py deleted file mode 100644 index c71ee9413..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/send_transactional_email_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.SendTransactionalEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"transactional_message_id":"12345","to":"user@example.com","subject":"Welcome!","body":"Thank ' - 'you for signing up!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/send_transactional_push_notification_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/send_transactional_push_notification_example_call_tool.js deleted file mode 100644 index 9bbb9dbb0..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/send_transactional_push_notification_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.SendTransactionalPushNotification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"transactional_message_id\":\"12345\",\"user_id\":\"user_001\",\"custom_data\":{\"key\":\"value\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/send_transactional_push_notification_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/send_transactional_push_notification_example_call_tool.py deleted file mode 100644 index 50cf284ec..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/send_transactional_push_notification_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.SendTransactionalPushNotification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"transactional_message_id":"12345","user_id":"user_001","custom_data":{"key":"value"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/send_transactional_sms_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/send_transactional_sms_example_call_tool.js deleted file mode 100644 index 460161fa6..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/send_transactional_sms_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.SendTransactionalSms"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"transactional_message_id\":\"12345\",\"recipient\":\"+1234567890\",\"message\":\"Your order has been shipped!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/send_transactional_sms_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/send_transactional_sms_example_call_tool.py deleted file mode 100644 index 05d6d5ff4..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/send_transactional_sms_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.SendTransactionalSms" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"transactional_message_id":"12345","recipient":"+1234567890","message":"Your ' - 'order has been shipped!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/suppress_email_at_esp_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/suppress_email_at_esp_example_call_tool.js deleted file mode 100644 index 905f5c2b8..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/suppress_email_at_esp_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.SuppressEmailAtEsp"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_address_to_suppress": "example@example.com", - "suppression_reason": "spam_reports" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/suppress_email_at_esp_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/suppress_email_at_esp_example_call_tool.py deleted file mode 100644 index 1e25f6bb5..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/suppress_email_at_esp_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.SuppressEmailAtEsp" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_address_to_suppress': 'example@example.com', 'suppression_reason': 'spam_reports' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/translate_campaign_message_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/translate_campaign_message_example_call_tool.js deleted file mode 100644 index da1de0a0f..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/translate_campaign_message_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.TranslateCampaignMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_action_id": 123, - "campaign_id": 456, - "target_language": "es" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/translate_campaign_message_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/translate_campaign_message_example_call_tool.py deleted file mode 100644 index 56b4f2390..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/translate_campaign_message_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.TranslateCampaignMessage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_action_id': 123, 'campaign_id': 456, 'target_language': 'es' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/trigger_broadcast_message_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/trigger_broadcast_message_example_call_tool.js deleted file mode 100644 index e7a1e8138..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/trigger_broadcast_message_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.TriggerBroadcastMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "broadcast_id": 12345, - "request_body": "{\"audience\":\"segment\",\"message\":\"Hello, this is a test broadcast!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/trigger_broadcast_message_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/trigger_broadcast_message_example_call_tool.py deleted file mode 100644 index bf2d45641..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/trigger_broadcast_message_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.TriggerBroadcastMessage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'broadcast_id': 12345, - 'request_body': '{"audience":"segment","message":"Hello, this is a test broadcast!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_broadcast_action_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/update_broadcast_action_example_call_tool.js deleted file mode 100644 index 0fe873daa..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_broadcast_action_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UpdateBroadcastAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "broadcast_id": 123, - "lookup_action_id": 456, - "request_body": "{\"message\":\"Updated content\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_broadcast_action_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/update_broadcast_action_example_call_tool.py deleted file mode 100644 index ec710c605..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_broadcast_action_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UpdateBroadcastAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'broadcast_id': 123, - 'lookup_action_id': 456, - 'request_body': '{"message":"Updated content"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_broadcast_action_language_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/update_broadcast_action_language_example_call_tool.js deleted file mode 100644 index 82ec746d7..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_broadcast_action_language_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UpdateBroadcastActionLanguage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "broadcast_identifier": 123, - "action_id": 456, - "broadcast_action_language": "en", - "request_body": "{\"message\":\"Hello, World!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_broadcast_action_language_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/update_broadcast_action_language_example_call_tool.py deleted file mode 100644 index 8562e60b4..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_broadcast_action_language_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UpdateBroadcastActionLanguage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'broadcast_identifier': 123, - 'action_id': 456, - 'broadcast_action_language': 'en', - 'request_body': '{"message":"Hello, World!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_campaign_action_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/update_campaign_action_example_call_tool.js deleted file mode 100644 index 0d03e8914..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_campaign_action_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UpdateCampaignAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "campaign_id": 123, - "action_id": 456, - "request_body": "{\"message\":\"Updated message content\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_campaign_action_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/update_campaign_action_example_call_tool.py deleted file mode 100644 index 7cdd3cb7f..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_campaign_action_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UpdateCampaignAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'campaign_id': 123, - 'action_id': 456, - 'request_body': '{"message":"Updated message content"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_campaign_action_translation_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/update_campaign_action_translation_example_call_tool.js deleted file mode 100644 index 2afe6c147..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_campaign_action_translation_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UpdateCampaignActionTranslation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "campaign_id": 123, - "action_id": 456, - "language_tag": "en", - "request_body": "{\"message\":\"Updated message content\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_campaign_action_translation_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/update_campaign_action_translation_example_call_tool.py deleted file mode 100644 index abc93970a..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_campaign_action_translation_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UpdateCampaignActionTranslation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'campaign_id': 123, - 'action_id': 456, - 'language_tag': 'en', - 'request_body': '{"message":"Updated message content"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_collection_info_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/update_collection_info_example_call_tool.js deleted file mode 100644 index d49a283cb..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_collection_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UpdateCollectionInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "collection_identifier": 123, - "request_body": "{\"name\":\"New Collection Name\",\"data\":[{\"key\":\"value\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_collection_info_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/update_collection_info_example_call_tool.py deleted file mode 100644 index 8a39c2601..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_collection_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UpdateCollectionInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'collection_identifier': 123, - 'request_body': '{"name":"New Collection Name","data":[{"key":"value"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_customer_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/update_customer_attributes_example_call_tool.js deleted file mode 100644 index 992746a2b..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_customer_attributes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UpdateCustomerAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"customer_id\":\"12345\",\"attributes\":{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_customer_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/update_customer_attributes_example_call_tool.py deleted file mode 100644 index b26ada020..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_customer_attributes_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UpdateCustomerAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"customer_id":"12345","attributes":{"name":"John ' - 'Doe","email":"john.doe@example.com"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_event_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/update_event_metadata_example_call_tool.js deleted file mode 100644 index 9f129e535..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_event_metadata_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UpdateEventMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event_name\":\"user_signup\",\"customer_id\":\"12345\",\"timestamp\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_event_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/update_event_metadata_example_call_tool.py deleted file mode 100644 index 99a66467c..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_event_metadata_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UpdateEventMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"event_name":"user_signup","customer_id":"12345","timestamp":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_content_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_content_example_call_tool.js deleted file mode 100644 index 86452ee45..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_content_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UpdateNewsletterContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "newsletter_identifier": 123, - "message_content_id": 456, - "request_body": "{\"title\":\"New Update\",\"body\":\"This is the updated content for the newsletter.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_content_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_content_example_call_tool.py deleted file mode 100644 index e95fc48eb..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_content_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UpdateNewsletterContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'newsletter_identifier': 123, - 'message_content_id': 456, - 'request_body': '{"title":"New Update","body":"This is the updated content for the ' - 'newsletter."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_test_translation_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_test_translation_example_call_tool.js deleted file mode 100644 index caf522310..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_test_translation_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UpdateNewsletterTestTranslation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "newsletter_identifier": 123, - "ab_test_group_id": "groupA", - "newsletter_language_tag": "en", - "request_body": "{\"content\":\"New translation for A/B test\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_test_translation_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_test_translation_example_call_tool.py deleted file mode 100644 index 5ea0ea085..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_test_translation_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UpdateNewsletterTestTranslation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'newsletter_identifier': 123, - 'ab_test_group_id': 'groupA', - 'newsletter_language_tag': 'en', - 'request_body': '{"content":"New translation for A/B test"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_variant_translation_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_variant_translation_example_call_tool.js deleted file mode 100644 index 94cace75b..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_variant_translation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UpdateNewsletterVariantTranslation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "newsletter_identifier": 123, - "language_tag": "en", - "request_body": "{\"title\":\"Weekly Update\",\"content\":\"This is the content of the newsletter.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_variant_translation_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_variant_translation_example_call_tool.py deleted file mode 100644 index 485a62ce1..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_newsletter_variant_translation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UpdateNewsletterVariantTranslation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'newsletter_identifier': 123, - 'language_tag': 'en', - 'request_body': '{"title":"Weekly Update","content":"This is the content of the newsletter."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_or_create_snippet_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/update_or_create_snippet_example_call_tool.js deleted file mode 100644 index c3f928342..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_or_create_snippet_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UpdateOrCreateSnippet"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"exampleSnippet\",\"value\":\"This is an example snippet.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_or_create_snippet_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/update_or_create_snippet_example_call_tool.py deleted file mode 100644 index 127b655bb..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_or_create_snippet_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UpdateOrCreateSnippet" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"exampleSnippet","value":"This is an example snippet."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_reporting_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/update_reporting_webhook_example_call_tool.js deleted file mode 100644 index 252f7f1b9..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_reporting_webhook_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UpdateReportingWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "webhook_identifier": 123, - "request_body": "{\"url\":\"https://example.com/webhook\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_reporting_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/update_reporting_webhook_example_call_tool.py deleted file mode 100644 index c7ee7675c..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_reporting_webhook_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UpdateReportingWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'webhook_identifier': 123, - 'request_body': '{"url":"https://example.com/webhook","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_transactional_email_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/update_transactional_email_example_call_tool.js deleted file mode 100644 index c77150607..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_transactional_email_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UpdateTransactionalEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "transactional_email_id": 12345, - "content_variant_id": 67890, - "request_body": "{\"subject\":\"New Subject\",\"body\":\"Updated email content.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_transactional_email_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/update_transactional_email_example_call_tool.py deleted file mode 100644 index 8b803ccf0..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_transactional_email_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UpdateTransactionalEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'transactional_email_id': 12345, - 'content_variant_id': 67890, - 'request_body': '{"subject":"New Subject","body":"Updated email content."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_transactional_message_variant_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/update_transactional_message_variant_example_call_tool.js deleted file mode 100644 index 0392f7315..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_transactional_message_variant_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UpdateTransactionalMessageVariant"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "transactional_message_id": 3, - "language_tag": "en", - "request_body": "{\"subject\":\"Welcome!\",\"body\":\"Thank you for joining us!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/update_transactional_message_variant_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/update_transactional_message_variant_example_call_tool.py deleted file mode 100644 index 973784be7..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/update_transactional_message_variant_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UpdateTransactionalMessageVariant" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'transactional_message_id': 3, - 'language_tag': 'en', - 'request_body': '{"subject":"Welcome!","body":"Thank you for joining us!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_api/upload_csv_to_customerio_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_api/upload_csv_to_customerio_example_call_tool.js deleted file mode 100644 index 022005252..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/upload_csv_to_customerio_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioApi.UploadCsvToCustomerio"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"file_url\":\"https://example.com/sample.csv\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_api/upload_csv_to_customerio_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_api/upload_csv_to_customerio_example_call_tool.py deleted file mode 100644 index 1c8551a00..000000000 --- a/public/examples/integrations/mcp-servers/customerio_api/upload_csv_to_customerio_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioApi.UploadCsvToCustomerio" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"file_url":"https://example.com/sample.csv"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_pipelines_api/add_to_group_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_pipelines_api/add_to_group_example_call_tool.js deleted file mode 100644 index 5664c21cb..000000000 --- a/public/examples/integrations/mcp-servers/customerio_pipelines_api/add_to_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioPipelinesApi.AddToGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enable_strict_validation": "1", - "request_body": "{\"user_id\":\"12345\",\"group_id\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_pipelines_api/add_to_group_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_pipelines_api/add_to_group_example_call_tool.py deleted file mode 100644 index 8e814c6ee..000000000 --- a/public/examples/integrations/mcp-servers/customerio_pipelines_api/add_to_group_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioPipelinesApi.AddToGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enable_strict_validation': '1', - 'request_body': '{"user_id":"12345","group_id":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_pipelines_api/alias_user_identity_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_pipelines_api/alias_user_identity_example_call_tool.js deleted file mode 100644 index 880105884..000000000 --- a/public/examples/integrations/mcp-servers/customerio_pipelines_api/alias_user_identity_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioPipelinesApi.AliasUserIdentity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enable_strict_validation": "True", - "request_body": "{\"anonymousId\":\"12345\",\"userId\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_pipelines_api/alias_user_identity_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_pipelines_api/alias_user_identity_example_call_tool.py deleted file mode 100644 index 295f0f205..000000000 --- a/public/examples/integrations/mcp-servers/customerio_pipelines_api/alias_user_identity_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioPipelinesApi.AliasUserIdentity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enable_strict_validation': 'True', - 'request_body': '{"anonymousId":"12345","userId":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_pipelines_api/identify_person_and_assign_traits_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_pipelines_api/identify_person_and_assign_traits_example_call_tool.js deleted file mode 100644 index 07b61d3ab..000000000 --- a/public/examples/integrations/mcp-servers/customerio_pipelines_api/identify_person_and_assign_traits_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioPipelinesApi.IdentifyPersonAndAssignTraits"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enable_strict_validation": "True", - "request_body": "{\"user_id\":\"12345\",\"traits\":{\"age\":30,\"gender\":\"female\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_pipelines_api/identify_person_and_assign_traits_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_pipelines_api/identify_person_and_assign_traits_example_call_tool.py deleted file mode 100644 index 52a948675..000000000 --- a/public/examples/integrations/mcp-servers/customerio_pipelines_api/identify_person_and_assign_traits_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioPipelinesApi.IdentifyPersonAndAssignTraits" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enable_strict_validation': 'True', - 'request_body': '{"user_id":"12345","traits":{"age":30,"gender":"female"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_batch_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_batch_requests_example_call_tool.js deleted file mode 100644 index dd46a525a..000000000 --- a/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_batch_requests_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioPipelinesApi.SendBatchRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enable_strict_mode": "True", - "request_body": "{\"requests\":[{\"type\":\"identify\",\"userId\":\"user123\"},{\"type\":\"track\",\"event\":\"purchase\",\"properties\":{\"value\":100}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_batch_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_batch_requests_example_call_tool.py deleted file mode 100644 index 8257b7038..000000000 --- a/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_batch_requests_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioPipelinesApi.SendBatchRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enable_strict_mode': 'True', - 'request_body': '{"requests":[{"type":"identify","userId":"user123"},{"type":"track","event":"purchase","properties":{"value":100}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_page_view_event_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_page_view_event_example_call_tool.js deleted file mode 100644 index e9adc6854..000000000 --- a/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_page_view_event_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioPipelinesApi.SendPageViewEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enable_strict_mode": "1", - "request_body": "{\"page\":\"home\",\"timestamp\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_page_view_event_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_page_view_event_example_call_tool.py deleted file mode 100644 index b3fb1abfc..000000000 --- a/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_page_view_event_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioPipelinesApi.SendPageViewEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enable_strict_mode': '1', - 'request_body': '{"page":"home","timestamp":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_screen_view_event_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_screen_view_event_example_call_tool.js deleted file mode 100644 index f753e97da..000000000 --- a/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_screen_view_event_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioPipelinesApi.SendScreenViewEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enable_strict_validation": "1", - "request_body": "{\"screen_name\":\"HomePage\",\"user_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_screen_view_event_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_screen_view_event_example_call_tool.py deleted file mode 100644 index e1579a39e..000000000 --- a/public/examples/integrations/mcp-servers/customerio_pipelines_api/send_screen_view_event_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioPipelinesApi.SendScreenViewEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enable_strict_validation': '1', - 'request_body': '{"screen_name":"HomePage","user_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_pipelines_api/track_user_event_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_pipelines_api/track_user_event_example_call_tool.js deleted file mode 100644 index bbcd15017..000000000 --- a/public/examples/integrations/mcp-servers/customerio_pipelines_api/track_user_event_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioPipelinesApi.TrackUserEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "enable_strict_validation": "True", - "request_body": "{\"event_name\":\"add_to_cart\",\"properties\":{\"item_id\":\"12345\",\"item_name\":\"Widget\",\"quantity\":1}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_pipelines_api/track_user_event_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_pipelines_api/track_user_event_example_call_tool.py deleted file mode 100644 index e803b6130..000000000 --- a/public/examples/integrations/mcp-servers/customerio_pipelines_api/track_user_event_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioPipelinesApi.TrackUserEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'enable_strict_validation': 'True', - 'request_body': '{"event_name":"add_to_cart","properties":{"item_id":"12345","item_name":"Widget","quantity":1}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/add_device_to_customer_profile_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/add_device_to_customer_profile_example_call_tool.js deleted file mode 100644 index 30313c157..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/add_device_to_customer_profile_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.AddDeviceToCustomerProfile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "unique_person_identifier": "cio_12345", - "request_body": "{\"device_type\":\"iOS\",\"device_id\":\"abc123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/add_device_to_customer_profile_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/add_device_to_customer_profile_example_call_tool.py deleted file mode 100644 index d1d492e43..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/add_device_to_customer_profile_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.AddDeviceToCustomerProfile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'unique_person_identifier': 'cio_12345', - 'request_body': '{"device_type":"iOS","device_id":"abc123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/add_people_to_segment_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/add_people_to_segment_example_call_tool.js deleted file mode 100644 index 276163c98..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/add_people_to_segment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.AddPeopleToSegment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "segment_identifier": 12345, - "identifier_type": "email", - "request_body": "{\"ids\":[\"user@example.com\",\"user2@example.com\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/add_people_to_segment_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/add_people_to_segment_example_call_tool.py deleted file mode 100644 index c2dc9dc50..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/add_people_to_segment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.AddPeopleToSegment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'segment_identifier': 12345, - 'identifier_type': 'email', - 'request_body': '{"ids":["user@example.com","user2@example.com"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/batch_process_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/batch_process_requests_example_call_tool.js deleted file mode 100644 index f06b9bbc5..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/batch_process_requests_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.BatchProcessRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"requests\":[{\"type\":\"person\",\"id\":\"123\",\"action\":\"update\",\"data\":{\"name\":\"John Doe\"}},{\"type\":\"object\",\"id\":\"456\",\"action\":\"associate\",\"data\":{\"personId\":\"123\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/batch_process_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/batch_process_requests_example_call_tool.py deleted file mode 100644 index 5964d8257..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/batch_process_requests_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.BatchProcessRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"requests":[{"type":"person","id":"123","action":"update","data":{"name":"John ' - 'Doe"}},{"type":"object","id":"456","action":"associate","data":{"personId":"123"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/delete_customer_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/delete_customer_example_call_tool.js deleted file mode 100644 index 794ee7a5d..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/delete_customer_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.DeleteCustomer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_identifier": "john.doe@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/delete_customer_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/delete_customer_example_call_tool.py deleted file mode 100644 index a5866832b..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/delete_customer_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.DeleteCustomer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_identifier': 'john.doe@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/get_track_api_region_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/get_track_api_region_example_call_tool.js deleted file mode 100644 index 59733f524..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/get_track_api_region_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.GetTrackApiRegion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/get_track_api_region_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/get_track_api_region_example_call_tool.py deleted file mode 100644 index de423b4c2..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/get_track_api_region_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.GetTrackApiRegion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/global_unsubscribe_user_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/global_unsubscribe_user_example_call_tool.js deleted file mode 100644 index 99d866a9e..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/global_unsubscribe_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.GlobalUnsubscribeUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "delivery_id_for_unsubscription": "12345", - "set_unsubscribed_attribute": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/global_unsubscribe_user_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/global_unsubscribe_user_example_call_tool.py deleted file mode 100644 index 81c71daac..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/global_unsubscribe_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.GlobalUnsubscribeUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'delivery_id_for_unsubscription': '12345', 'set_unsubscribed_attribute': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/manage_entity_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/manage_entity_example_call_tool.js deleted file mode 100644 index 9e7a8e70a..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/manage_entity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.ManageEntity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"action\":\"create\",\"entity_type\":\"person\",\"data\":{\"name\":\"John Doe\",\"age\":30}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/manage_entity_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/manage_entity_example_call_tool.py deleted file mode 100644 index 83e7ae286..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/manage_entity_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.ManageEntity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"action":"create","entity_type":"person","data":{"name":"John ' - 'Doe","age":30}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/merge_customer_profiles_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/merge_customer_profiles_example_call_tool.js deleted file mode 100644 index 9e7ab1d99..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/merge_customer_profiles_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.MergeCustomerProfiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"primary_profile_id\":\"12345\",\"secondary_profile_id\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/merge_customer_profiles_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/merge_customer_profiles_example_call_tool.py deleted file mode 100644 index 566f5480d..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/merge_customer_profiles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.MergeCustomerProfiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"primary_profile_id":"12345","secondary_profile_id":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/remove_customer_device_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/remove_customer_device_example_call_tool.js deleted file mode 100644 index ff178d7a0..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/remove_customer_device_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.RemoveCustomerDevice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_identifier": "john.doe@example.com", - "device_unique_id": "device_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/remove_customer_device_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/remove_customer_device_example_call_tool.py deleted file mode 100644 index fe285ecd4..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/remove_customer_device_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.RemoveCustomerDevice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_identifier': 'john.doe@example.com', 'device_unique_id': 'device_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/remove_user_from_segment_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/remove_user_from_segment_example_call_tool.js deleted file mode 100644 index f5c482fd9..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/remove_user_from_segment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.RemoveUserFromSegment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "segment_identifier": 123, - "identification_type": "email", - "request_body": "{\"user_ids\":[\"user1@example.com\",\"user2@example.com\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/remove_user_from_segment_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/remove_user_from_segment_example_call_tool.py deleted file mode 100644 index 70bb2c34a..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/remove_user_from_segment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.RemoveUserFromSegment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'segment_identifier': 123, - 'identification_type': 'email', - 'request_body': '{"user_ids":["user1@example.com","user2@example.com"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/report_custom_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/report_custom_metrics_example_call_tool.js deleted file mode 100644 index 4d918a133..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/report_custom_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.ReportCustomMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"metric\":\"user_clicks\",\"value\":100,\"timestamp\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/report_custom_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/report_custom_metrics_example_call_tool.py deleted file mode 100644 index 10252cd9f..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/report_custom_metrics_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.ReportCustomMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"metric":"user_clicks","value":100,"timestamp":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/send_customer_event_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/send_customer_event_example_call_tool.js deleted file mode 100644 index a738aeba1..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/send_customer_event_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.SendCustomerEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "customer_identifier": "customer123", - "request_body": "{\"event\":\"page_view\",\"timestamp\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/send_customer_event_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/send_customer_event_example_call_tool.py deleted file mode 100644 index 669a507ac..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/send_customer_event_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.SendCustomerEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'customer_identifier': 'customer123', - 'request_body': '{"event":"page_view","timestamp":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/submit_form_response_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/submit_form_response_example_call_tool.js deleted file mode 100644 index 4d93eef8d..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/submit_form_response_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.SubmitFormResponse"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "form_identifier": "contact_form_123", - "request_body": "{\"id\":\"user_456\",\"email\":\"user@example.com\",\"response\":\"This is a sample response.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/submit_form_response_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/submit_form_response_example_call_tool.py deleted file mode 100644 index fdcc5e18d..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/submit_form_response_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.SubmitFormResponse" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'form_identifier': 'contact_form_123', - 'request_body': '{"id":"user_456","email":"user@example.com","response":"This is a sample ' - 'response."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/suppress_customer_profile_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/suppress_customer_profile_example_call_tool.js deleted file mode 100644 index 68b646c2f..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/suppress_customer_profile_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.SuppressCustomerProfile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "unique_person_identifier": "cio_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/suppress_customer_profile_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/suppress_customer_profile_example_call_tool.py deleted file mode 100644 index 74b345ccf..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/suppress_customer_profile_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.SuppressCustomerProfile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'unique_person_identifier': 'cio_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/track_anonymous_event_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/track_anonymous_event_example_call_tool.js deleted file mode 100644 index 086bcb276..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/track_anonymous_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.TrackAnonymousEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event_type\":\"page\",\"event_name\":\"homepage_visit\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/track_anonymous_event_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/track_anonymous_event_example_call_tool.py deleted file mode 100644 index 0400fc9b4..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/track_anonymous_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.TrackAnonymousEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"event_type":"page","event_name":"homepage_visit"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/unsuppress_customer_profile_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/unsuppress_customer_profile_example_call_tool.js deleted file mode 100644 index 76ade2d32..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/unsuppress_customer_profile_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.UnsuppressCustomerProfile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_identifier": "john.doe@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/unsuppress_customer_profile_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/unsuppress_customer_profile_example_call_tool.py deleted file mode 100644 index 77bffb237..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/unsuppress_customer_profile_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.UnsuppressCustomerProfile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_identifier': 'john.doe@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/update_or_add_person_example_call_tool.js b/public/examples/integrations/mcp-servers/customerio_track_api/update_or_add_person_example_call_tool.js deleted file mode 100644 index 63dd14069..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/update_or_add_person_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "CustomerioTrackApi.UpdateOrAddPerson"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "person_identifier": "cio_12345", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/customerio_track_api/update_or_add_person_example_call_tool.py b/public/examples/integrations/mcp-servers/customerio_track_api/update_or_add_person_example_call_tool.py deleted file mode 100644 index 055409636..000000000 --- a/public/examples/integrations/mcp-servers/customerio_track_api/update_or_add_person_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "CustomerioTrackApi.UpdateOrAddPerson" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'person_identifier': 'cio_12345', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/acknowledge_on_call_page_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/acknowledge_on_call_page_example_call_tool.js deleted file mode 100644 index 3c526bd9b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/acknowledge_on_call_page_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AcknowledgeOnCallPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "on_call_page_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/acknowledge_on_call_page_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/acknowledge_on_call_page_example_call_tool.py deleted file mode 100644 index 4a22fe063..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/acknowledge_on_call_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AcknowledgeOnCallPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'on_call_page_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/activate_aws_scan_options_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/activate_aws_scan_options_example_call_tool.js deleted file mode 100644 index 571ae688b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/activate_aws_scan_options_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ActivateAwsScanOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "aws_account_id": "123456789012", - "enable_container_vulnerability_scanning": true, - "enable_lambda_function_scanning": true, - "enable_sensitive_data_scanning": false, - "enable_vulnerability_scan_host_os": true, - "resource_type": "aws_scan_options" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/activate_aws_scan_options_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/activate_aws_scan_options_example_call_tool.py deleted file mode 100644 index 7b087b6fb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/activate_aws_scan_options_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ActivateAwsScanOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'aws_account_id': '123456789012', - 'enable_container_vulnerability_scanning': True, - 'enable_lambda_function_scanning': True, - 'enable_sensitive_data_scanning': False, - 'enable_vulnerability_scan_host_os': True, - 'resource_type': 'aws_scan_options' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/activate_azure_scan_options_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/activate_azure_scan_options_example_call_tool.js deleted file mode 100644 index 6c5a0f616..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/activate_azure_scan_options_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ActivateAzureScanOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "azure_subscription_id": "12345678-1234-1234-1234-123456789abc", - "enable_container_vulnerability_scan": true, - "resource_type": "azure_scan_options" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/activate_azure_scan_options_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/activate_azure_scan_options_example_call_tool.py deleted file mode 100644 index 78db0a89a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/activate_azure_scan_options_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ActivateAzureScanOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'azure_subscription_id': '12345678-1234-1234-1234-123456789abc', - 'enable_container_vulnerability_scan': True, - 'resource_type': 'azure_scan_options' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/activate_gcp_scan_options_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/activate_gcp_scan_options_example_call_tool.js deleted file mode 100644 index f842fecfc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/activate_gcp_scan_options_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ActivateGcpScanOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_container_vulnerability_scanning": true, - "gcp_project_id": "my-gcp-project", - "gcp_scan_resource_type": "gcp_scan_options" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/activate_gcp_scan_options_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/activate_gcp_scan_options_example_call_tool.py deleted file mode 100644 index 690795c12..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/activate_gcp_scan_options_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ActivateGcpScanOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_container_vulnerability_scanning': True, - 'gcp_project_id': 'my-gcp-project', - 'gcp_scan_resource_type': 'gcp_scan_options' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_comment_to_case_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/add_comment_to_case_example_call_tool.js deleted file mode 100644 index 132b1b54a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_comment_to_case_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AddCommentToCase"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_identifier": "123e4567-e89b-12d3-a456-426614174000", - "comment_message": "This is a sample comment.", - "case_resource_type": "case" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_comment_to_case_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/add_comment_to_case_example_call_tool.py deleted file mode 100644 index 4d8145bdf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_comment_to_case_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AddCommentToCase" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'comment_message': 'This is a sample comment.', - 'case_resource_type': 'case' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_dashboards_to_list_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/add_dashboards_to_list_example_call_tool.js deleted file mode 100644 index bcf5c8e1f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_dashboards_to_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AddDashboardsToList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_list_identifier": 123, - "request_body": "{\"dashboards\":[\"dashboard1\",\"dashboard2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_dashboards_to_list_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/add_dashboards_to_list_example_call_tool.py deleted file mode 100644 index f75a16add..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_dashboards_to_list_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AddDashboardsToList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_list_identifier': 123, - 'request_body': '{"dashboards":["dashboard1","dashboard2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_member_team_to_super_team_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/add_member_team_to_super_team_example_call_tool.js deleted file mode 100644 index 28b604555..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_member_team_to_super_team_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AddMemberTeamToSuperTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_team_identifier": "team123", - "super_team_identifier": "superteam456", - "member_team_type": "member_teams" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_member_team_to_super_team_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/add_member_team_to_super_team_example_call_tool.py deleted file mode 100644 index 730ac1f0c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_member_team_to_super_team_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AddMemberTeamToSuperTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_team_identifier': 'team123', - 'super_team_identifier': 'superteam456', - 'member_team_type': 'member_teams' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_permission_to_role_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/add_permission_to_role_example_call_tool.js deleted file mode 100644 index 15687280d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_permission_to_role_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AddPermissionToRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "role_identifier": "admin_role", - "permission_id": "read_logs", - "permissions_resource_type": "permissions" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_permission_to_role_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/add_permission_to_role_example_call_tool.py deleted file mode 100644 index abae1cffb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_permission_to_role_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AddPermissionToRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'role_identifier': 'admin_role', - 'permission_id': 'read_logs', - 'permissions_resource_type': 'permissions' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_read_role_to_archive_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/add_read_role_to_archive_example_call_tool.js deleted file mode 100644 index a0e4de790..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_read_role_to_archive_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AddReadRoleToArchive"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "archive_id": "archive_12345", - "role_type": "roles", - "role_unique_identifier": "read_access" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_read_role_to_archive_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/add_read_role_to_archive_example_call_tool.py deleted file mode 100644 index d8f848206..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_read_role_to_archive_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AddReadRoleToArchive" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'archive_id': 'archive_12345', 'role_type': 'roles', 'role_unique_identifier': 'read_access' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_role_to_restriction_query_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/add_role_to_restriction_query_example_call_tool.js deleted file mode 100644 index 67ecce5b5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_role_to_restriction_query_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AddRoleToRestrictionQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "restriction_query_id": "12345", - "role_type": "roles", - "role_unique_identifier": "admin" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_role_to_restriction_query_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/add_role_to_restriction_query_example_call_tool.py deleted file mode 100644 index 8353f989b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_role_to_restriction_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AddRoleToRestrictionQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'restriction_query_id': '12345', 'role_type': 'roles', 'role_unique_identifier': 'admin' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_team_link_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/add_team_link_example_call_tool.js deleted file mode 100644 index 368b6c990..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_team_link_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AddTeamLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "link_label": "Documentation", - "link_url": "https://docs.example.com", - "target_team_id": "team-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_team_link_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/add_team_link_example_call_tool.py deleted file mode 100644 index ce9153bb3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_team_link_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AddTeamLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'link_label': 'Documentation', - 'link_url': 'https://docs.example.com', - 'target_team_id': 'team-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_user_to_role_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/add_user_to_role_example_call_tool.js deleted file mode 100644 index f7dc058e9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_user_to_role_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AddUserToRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "role_unique_identifier": "admin_role", - "user_unique_identifier": "user_123", - "users_resource_type": "users" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_user_to_role_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/add_user_to_role_example_call_tool.py deleted file mode 100644 index 12ba005ac..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_user_to_role_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AddUserToRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'role_unique_identifier': 'admin_role', - 'user_unique_identifier': 'user_123', - 'users_resource_type': 'users' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_user_to_team_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/add_user_to_team_example_call_tool.js deleted file mode 100644 index 88f19d81d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_user_to_team_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AddUserToTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "12345", - "user_id": "67890", - "user_role_in_team": "admin" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/add_user_to_team_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/add_user_to_team_example_call_tool.py deleted file mode 100644 index 7effa4859..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/add_user_to_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AddUserToTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': '12345', 'user_id': '67890', 'user_role_in_team': 'admin' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/aggregate_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/aggregate_logs_example_call_tool.js deleted file mode 100644 index 0c7e4433e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/aggregate_logs_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AggregateLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"log_level\":\"ERROR\",\"time_range\":\"last_24_hours\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/aggregate_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/aggregate_logs_example_call_tool.py deleted file mode 100644 index 763bca18b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/aggregate_logs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AggregateLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"log_level":"ERROR","time_range":"last_24_hours"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/aggregate_pipeline_events_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/aggregate_pipeline_events_example_call_tool.js deleted file mode 100644 index 2eebe68b5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/aggregate_pipeline_events_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AggregatePipelineEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"pipeline_id\":\"12345\",\"metrics\":[{\"name\":\"build_time\",\"value\":120},{\"name\":\"test_time\",\"value\":60}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/aggregate_pipeline_events_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/aggregate_pipeline_events_example_call_tool.py deleted file mode 100644 index e2e385abc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/aggregate_pipeline_events_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AggregatePipelineEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"pipeline_id":"12345","metrics":[{"name":"build_time","value":120},{"name":"test_time","value":60}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/aggregate_rum_events_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/aggregate_rum_events_example_call_tool.js deleted file mode 100644 index 1f6592361..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/aggregate_rum_events_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AggregateRumEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"eventType\":\"page_load\",\"duration\":1500,\"timestamp\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/aggregate_rum_events_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/aggregate_rum_events_example_call_tool.py deleted file mode 100644 index 80b2d070a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/aggregate_rum_events_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AggregateRumEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"eventType":"page_load","duration":1500,"timestamp":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/aggregate_spans_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/aggregate_spans_metrics_example_call_tool.js deleted file mode 100644 index 45b08910f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/aggregate_spans_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AggregateSpansMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"spans\":[{\"id\":\"span1\",\"duration\":150},{\"id\":\"span2\",\"duration\":200}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/aggregate_spans_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/aggregate_spans_metrics_example_call_tool.py deleted file mode 100644 index d6724f11a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/aggregate_spans_metrics_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AggregateSpansMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"spans":[{"id":"span1","duration":150},{"id":"span2","duration":200}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/aggregate_test_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/aggregate_test_metrics_example_call_tool.js deleted file mode 100644 index 15eeec261..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/aggregate_test_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AggregateTestMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"testResults\":[{\"testName\":\"test1\",\"status\":\"passed\"},{\"testName\":\"test2\",\"status\":\"failed\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/aggregate_test_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/aggregate_test_metrics_example_call_tool.py deleted file mode 100644 index 63edadbb7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/aggregate_test_metrics_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AggregateTestMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"testResults":[{"testName":"test1","status":"passed"},{"testName":"test2","status":"failed"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/archive_azure_cost_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/archive_azure_cost_account_example_call_tool.js deleted file mode 100644 index 71135aece..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/archive_azure_cost_account_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ArchiveAzureCostAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "azure_cloud_account_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/archive_azure_cost_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/archive_azure_cost_account_example_call_tool.py deleted file mode 100644 index 7a969c7c9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/archive_azure_cost_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ArchiveAzureCostAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'azure_cloud_account_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/archive_case_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/archive_case_example_call_tool.js deleted file mode 100644 index dda64668e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/archive_case_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ArchiveCase"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_unique_id": "12345", - "case_resource_type": "case" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/archive_case_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/archive_case_example_call_tool.py deleted file mode 100644 index db94b2628..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/archive_case_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ArchiveCase" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_unique_id': '12345', 'case_resource_type': 'case' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/archive_cloud_cost_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/archive_cloud_cost_account_example_call_tool.js deleted file mode 100644 index 5709c23b9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/archive_cloud_cost_account_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ArchiveCloudCostAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cloud_account_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/archive_cloud_cost_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/archive_cloud_cost_account_example_call_tool.py deleted file mode 100644 index 41b31db72..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/archive_cloud_cost_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ArchiveCloudCostAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cloud_account_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/archive_gcp_cost_management_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/archive_gcp_cost_management_account_example_call_tool.js deleted file mode 100644 index 9c58d9b63..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/archive_gcp_cost_management_account_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ArchiveGcpCostManagementAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cloud_account_identifier": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/archive_gcp_cost_management_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/archive_gcp_cost_management_account_example_call_tool.py deleted file mode 100644 index 924e3635b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/archive_gcp_cost_management_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ArchiveGcpCostManagementAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cloud_account_identifier': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/assign_case_to_user_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/assign_case_to_user_example_call_tool.js deleted file mode 100644 index c434a105a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/assign_case_to_user_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.AssignCaseToUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "assignee_user_id": "123e4567-e89b-12d3-a456-426614174000", - "case_id": "987e6543-e21b-12d3-a456-426614174001", - "case_resource_type": "case" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/assign_case_to_user_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/assign_case_to_user_example_call_tool.py deleted file mode 100644 index b37533e25..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/assign_case_to_user_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.AssignCaseToUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'assignee_user_id': '123e4567-e89b-12d3-a456-426614174000', - 'case_id': '987e6543-e21b-12d3-a456-426614174001', - 'case_resource_type': 'case' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/bulk_delete_datastore_items_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/bulk_delete_datastore_items_example_call_tool.js deleted file mode 100644 index 7fa0547f5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/bulk_delete_datastore_items_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.BulkDeleteDatastoreItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "datastore_identifier": "datastore_123", - "item_keys_to_delete": [ - "key1", - "key2", - "key3" - ], - "items_resource_type": "items" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/bulk_delete_datastore_items_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/bulk_delete_datastore_items_example_call_tool.py deleted file mode 100644 index 1013d3215..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/bulk_delete_datastore_items_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.BulkDeleteDatastoreItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'datastore_identifier': 'datastore_123', - 'item_keys_to_delete': ['key1', 'key2', 'key3'], - 'items_resource_type': 'items' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/bulk_update_datastore_items_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/bulk_update_datastore_items_example_call_tool.js deleted file mode 100644 index 5fcab11ef..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/bulk_update_datastore_items_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.BulkUpdateDatastoreItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "datastore_identifier": "my_datastore", - "request_body": "{\"items\":[{\"key\":\"item1\",\"value\":\"value1\"},{\"key\":\"item2\",\"value\":\"value2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/bulk_update_datastore_items_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/bulk_update_datastore_items_example_call_tool.py deleted file mode 100644 index cc6830869..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/bulk_update_datastore_items_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.BulkUpdateDatastoreItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'datastore_identifier': 'my_datastore', - 'request_body': '{"items":[{"key":"item1","value":"value1"},{"key":"item2","value":"value2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/cancel_downtime_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/cancel_downtime_example_call_tool.js deleted file mode 100644 index c1dc1e81a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/cancel_downtime_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CancelDowntime"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "downtime_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/cancel_downtime_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/cancel_downtime_example_call_tool.py deleted file mode 100644 index d3bb2de90..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/cancel_downtime_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CancelDowntime" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'downtime_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/cancel_historical_job_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/cancel_historical_job_example_call_tool.js deleted file mode 100644 index 5154212d7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/cancel_historical_job_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CancelHistoricalJob"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_id": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/cancel_historical_job_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/cancel_historical_job_example_call_tool.py deleted file mode 100644 index 7aac6a570..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/cancel_historical_job_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CancelHistoricalJob" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_id': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/cancel_workflow_instance_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/cancel_workflow_instance_example_call_tool.js deleted file mode 100644 index a4b591a24..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/cancel_workflow_instance_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CancelWorkflowInstance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workflow_id": "workflow_123", - "workflow_instance_id": "instance_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/cancel_workflow_instance_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/cancel_workflow_instance_example_call_tool.py deleted file mode 100644 index 907eb18ac..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/cancel_workflow_instance_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CancelWorkflowInstance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workflow_id': 'workflow_123', 'workflow_instance_id': 'instance_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/change_signal_state_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/change_signal_state_example_call_tool.js deleted file mode 100644 index 1cf9723ae..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/change_signal_state_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ChangeSignalState"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "new_triage_state": "under_review", - "signal_id": "sig-12345", - "archive_comment": "Reviewed for potential false positive", - "archive_reason": "false_positive" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/change_signal_state_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/change_signal_state_example_call_tool.py deleted file mode 100644 index 122439616..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/change_signal_state_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ChangeSignalState" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'new_triage_state': 'under_review', - 'signal_id': 'sig-12345', - 'archive_comment': 'Reviewed for potential false positive', - 'archive_reason': 'false_positive' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/clone_existing_role_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/clone_existing_role_example_call_tool.js deleted file mode 100644 index 994779bd5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/clone_existing_role_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CloneExistingRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "new_role_name": "Developer Clone", - "role_unique_identifier": "role_12345", - "role_type": "roles" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/clone_existing_role_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/clone_existing_role_example_call_tool.py deleted file mode 100644 index c8c50533c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/clone_existing_role_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CloneExistingRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'new_role_name': 'Developer Clone', 'role_unique_identifier': 'role_12345', 'role_type': 'roles' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/configure_bulk_tags_for_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/configure_bulk_tags_for_metrics_example_call_tool.js deleted file mode 100644 index ae7e85984..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/configure_bulk_tags_for_metrics_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ConfigureBulkTagsForMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metric_name_prefix": "app.performance", - "actively_queried_tags_window_seconds": 3600, - "exclude_configured_tags": false, - "notification_emails": [ - "admin@example.com", - "dev@example.com" - ], - "tags_to_apply": [ - "env:production", - "team:backend" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/configure_bulk_tags_for_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/configure_bulk_tags_for_metrics_example_call_tool.py deleted file mode 100644 index 8acede42f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/configure_bulk_tags_for_metrics_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ConfigureBulkTagsForMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metric_name_prefix': 'app.performance', - 'actively_queried_tags_window_seconds': 3600, - 'exclude_configured_tags': False, - 'notification_emails': ['admin@example.com', 'dev@example.com'], - 'tags_to_apply': ['env:production', 'team:backend'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/convert_job_result_to_signal_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/convert_job_result_to_signal_example_call_tool.js deleted file mode 100644 index 227c0e9ea..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/convert_job_result_to_signal_example_call_tool.js +++ /dev/null @@ -1,42 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ConvertJobResultToSignal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_result_ids": [ - "job123", - "job456" - ], - "notifications_sent": [ - "email", - "slack" - ], - "payload_type": "historicalDetectionsJobResultSignalConversion", - "request_id": "req789", - "signal_message": "Potential security issue detected.", - "signal_severity": "high" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/convert_job_result_to_signal_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/convert_job_result_to_signal_example_call_tool.py deleted file mode 100644 index 470898991..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/convert_job_result_to_signal_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ConvertJobResultToSignal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_result_ids': ['job123', 'job456'], - 'notifications_sent': ['email', 'slack'], - 'payload_type': 'historicalDetectionsJobResultSignalConversion', - 'request_id': 'req789', - 'signal_message': 'Potential security issue detected.', - 'signal_severity': 'high' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/convert_rule_json_to_terraform_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/convert_rule_json_to_terraform_example_call_tool.js deleted file mode 100644 index d147ea721..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/convert_rule_json_to_terraform_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ConvertRuleJsonToTerraform"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"rule_name\":\"example_rule\",\"conditions\":[{\"type\":\"threshold\",\"value\":5}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/convert_rule_json_to_terraform_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/convert_rule_json_to_terraform_example_call_tool.py deleted file mode 100644 index aec917f18..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/convert_rule_json_to_terraform_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ConvertRuleJsonToTerraform" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"rule_name":"example_rule","conditions":[{"type":"threshold","value":5}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/convert_security_rule_to_terraform_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/convert_security_rule_to_terraform_example_call_tool.js deleted file mode 100644 index 1a039f8e1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/convert_security_rule_to_terraform_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ConvertSecurityRuleToTerraform"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "rule_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/convert_security_rule_to_terraform_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/convert_security_rule_to_terraform_example_call_tool.py deleted file mode 100644 index 46aee64f4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/convert_security_rule_to_terraform_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ConvertSecurityRuleToTerraform" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'rule_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_action_connection_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_action_connection_example_call_tool.js deleted file mode 100644 index 007002e30..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_action_connection_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateActionConnection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Action Connection\",\"type\":\"webhook\",\"url\":\"https://example.com/webhook\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_action_connection_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_action_connection_example_call_tool.py deleted file mode 100644 index d41999694..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_action_connection_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateActionConnection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New Action ' - 'Connection","type":"webhook","url":"https://example.com/webhook"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_apm_retention_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_apm_retention_filter_example_call_tool.js deleted file mode 100644 index f0453ac68..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_apm_retention_filter_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateApmRetentionFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_retention_filter": true, - "retention_filter_name": "MyRetentionFilter", - "search_query": "service:my-service AND error:true", - "span_sample_rate": 0.5, - "resource_type": "apm_retention_filter" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_apm_retention_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_apm_retention_filter_example_call_tool.py deleted file mode 100644 index cf0316c27..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_apm_retention_filter_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateApmRetentionFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_retention_filter': True, - 'retention_filter_name': 'MyRetentionFilter', - 'search_query': 'service:my-service AND error:true', - 'span_sample_rate': 0.5, - 'resource_type': 'apm_retention_filter' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_authn_mapping_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_authn_mapping_example_call_tool.js deleted file mode 100644 index 0ac0a6fc1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_authn_mapping_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateAuthnMapping"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"example_mapping\",\"type\":\"saml\",\"attributes\":{\"email\":\"user@example.com\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_authn_mapping_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_authn_mapping_example_call_tool.py deleted file mode 100644 index 61e90424a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_authn_mapping_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateAuthnMapping" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"example_mapping","type":"saml","attributes":{"email":"user@example.com"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_aws_account_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_aws_account_integration_example_call_tool.js deleted file mode 100644 index 046c8f666..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_aws_account_integration_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateAwsAccountIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"account_id\":\"123456789012\",\"region\":\"us-east-1\",\"services\":[\"EC2\",\"S3\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_aws_account_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_aws_account_integration_example_call_tool.py deleted file mode 100644 index 35da2287a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_aws_account_integration_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateAwsAccountIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"account_id":"123456789012","region":"us-east-1","services":["EC2","S3"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_aws_cur_config_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_aws_cur_config_example_call_tool.js deleted file mode 100644 index e9a783cdc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_aws_cur_config_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateAwsCurConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "aws_account_id": "123456789012", - "aws_bucket_name_for_cur": "my-cost-reports-bucket", - "aws_cur_config_type": "aws_cur_config_post_request", - "bucket_region": "us-east-1", - "include_new_member_accounts": true, - "report_month": 10, - "report_name": "MonthlyCostReport", - "report_prefix": "cost-report-" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_aws_cur_config_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_aws_cur_config_example_call_tool.py deleted file mode 100644 index b0dfdca68..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_aws_cur_config_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateAwsCurConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'aws_account_id': '123456789012', - 'aws_bucket_name_for_cur': 'my-cost-reports-bucket', - 'aws_cur_config_type': 'aws_cur_config_post_request', - 'bucket_region': 'us-east-1', - 'include_new_member_accounts': True, - 'report_month': 10, - 'report_name': 'MonthlyCostReport', - 'report_prefix': 'cost-report-' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_azure_cost_management_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_azure_cost_management_account_example_call_tool.js deleted file mode 100644 index 1e76cf13e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_azure_cost_management_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateAzureCostManagementAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"accountName\":\"myCostManagementAccount\",\"resourceGroup\":\"myResourceGroup\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_azure_cost_management_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_azure_cost_management_account_example_call_tool.py deleted file mode 100644 index eba259c43..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_azure_cost_management_account_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateAzureCostManagementAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"accountName":"myCostManagementAccount","resourceGroup":"myResourceGroup"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_case_type_in_datadog_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_case_type_in_datadog_example_call_tool.js deleted file mode 100644 index beff179f4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_case_type_in_datadog_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateCaseTypeInDatadog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_type_name": "Bug", - "case_type_description": "A case type for tracking bugs", - "case_type_emoji": "🐞", - "case_type_resource_type": "case_type" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_case_type_in_datadog_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_case_type_in_datadog_example_call_tool.py deleted file mode 100644 index 04b22cfe6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_case_type_in_datadog_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateCaseTypeInDatadog" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_type_name': 'Bug', - 'case_type_description': 'A case type for tracking bugs', - 'case_type_emoji': '🐞', - 'case_type_resource_type': 'case_type' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_cloud_workload_security_agent_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_cloud_workload_security_agent_rule_example_call_tool.js deleted file mode 100644 index 1560ed76f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_cloud_workload_security_agent_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateCloudWorkloadSecurityAgentRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"ruleName\":\"SampleRule\",\"description\":\"This is a sample rule for monitoring.\",\"action\":\"alert\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_cloud_workload_security_agent_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_cloud_workload_security_agent_rule_example_call_tool.py deleted file mode 100644 index fab2820c9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_cloud_workload_security_agent_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateCloudWorkloadSecurityAgentRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"ruleName":"SampleRule","description":"This is a sample rule for ' - 'monitoring.","action":"alert"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_cloudflare_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_cloudflare_account_example_call_tool.js deleted file mode 100644 index aba7b36b4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_cloudflare_account_example_call_tool.js +++ /dev/null @@ -1,42 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateCloudflareAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cloudflare_account_name": "example-account", - "cloudflare_api_key": "abc123xyz", - "cloudflare_account_email": "user@example.com", - "json_api_type": "cloudflare-accounts", - "resources_allowlist": [ - "web", - "dns" - ], - "zone_allowlist": [ - "zone1", - "zone2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_cloudflare_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_cloudflare_account_example_call_tool.py deleted file mode 100644 index 4c90b68c2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_cloudflare_account_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateCloudflareAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cloudflare_account_name': 'example-account', - 'cloudflare_api_key': 'abc123xyz', - 'cloudflare_account_email': 'user@example.com', - 'json_api_type': 'cloudflare-accounts', - 'resources_allowlist': ['web', 'dns'], - 'zone_allowlist': ['zone1', 'zone2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_confluent_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_confluent_account_example_call_tool.js deleted file mode 100644 index 8a06a9a90..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_confluent_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateConfluentAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"account_name\":\"test_account\",\"region\":\"us-west\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_confluent_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_confluent_account_example_call_tool.py deleted file mode 100644 index 621d07e5a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_confluent_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateConfluentAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"account_name":"test_account","region":"us-west"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_confluent_resource_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_confluent_resource_example_call_tool.js deleted file mode 100644 index 4a774ffd4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_confluent_resource_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateConfluentResource"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "confluent_account_id": "account_12345", - "confluent_resource_id": "resource_67890", - "resource_type": "kafka", - "enable_custom_metrics": true, - "json_api_request_type": "confluent-cloud-resources", - "resource_tags": [ - "env:production", - "team:backend" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_confluent_resource_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_confluent_resource_example_call_tool.py deleted file mode 100644 index af16b7626..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_confluent_resource_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateConfluentResource" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'confluent_account_id': 'account_12345', - 'confluent_resource_id': 'resource_67890', - 'resource_type': 'kafka', - 'enable_custom_metrics': True, - 'json_api_request_type': 'confluent-cloud-resources', - 'resource_tags': ['env:production', 'team:backend'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_custom_allocation_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_custom_allocation_rule_example_call_tool.js deleted file mode 100644 index 4fb749776..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_custom_allocation_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateCustomAllocationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Custom Rule\",\"filters\":{\"service\":\"my-service\"},\"allocation_strategy\":\"proportional\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_custom_allocation_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_custom_allocation_rule_example_call_tool.py deleted file mode 100644 index ce7f1bdd3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_custom_allocation_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateCustomAllocationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Custom ' - 'Rule","filters":{"service":"my-service"},"allocation_strategy":"proportional"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_custom_attribute_config_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_custom_attribute_config_example_call_tool.js deleted file mode 100644 index a7b5ae1f6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_custom_attribute_config_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateCustomAttributeConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "allow_multiple_values": true, - "case_type_uuid": "123e4567-e89b-12d3-a456-426614174000", - "custom_attribute_display_name": "User Role", - "custom_attribute_key": "user_role", - "custom_attribute_type": "TEXT" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_custom_attribute_config_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_custom_attribute_config_example_call_tool.py deleted file mode 100644 index b0e583e66..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_custom_attribute_config_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateCustomAttributeConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'allow_multiple_values': True, - 'case_type_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'custom_attribute_display_name': 'User Role', - 'custom_attribute_key': 'user_role', - 'custom_attribute_type': 'TEXT' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_custom_log_destination_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_custom_log_destination_example_call_tool.js deleted file mode 100644 index f5d3630b9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_custom_log_destination_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateCustomLogDestination"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"custom-log-destination\",\"type\":\"http\",\"url\":\"https://example.com/logs\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_custom_log_destination_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_custom_log_destination_example_call_tool.py deleted file mode 100644 index 96956b8d7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_custom_log_destination_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateCustomLogDestination" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"custom-log-destination","type":"http","url":"https://example.com/logs"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_custom_security_framework_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_custom_security_framework_example_call_tool.js deleted file mode 100644 index ef9217b4d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_custom_security_framework_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateCustomSecurityFramework"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Custom Framework\",\"rules\":[{\"id\":\"rule1\",\"description\":\"Ensure strong passwords\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_custom_security_framework_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_custom_security_framework_example_call_tool.py deleted file mode 100644 index 5e93a0d75..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_custom_security_framework_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateCustomSecurityFramework" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Custom Framework","rules":[{"id":"rule1","description":"Ensure ' - 'strong passwords"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_api_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_datadog_api_key_example_call_tool.js deleted file mode 100644 index 29794e805..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_api_key_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateDatadogApiKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "api_key_name": "MyUniqueApiKey", - "api_keys_resource_type": "api_keys", - "apikey_category": "development", - "remote_config_read_enabled": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_api_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_datadog_api_key_example_call_tool.py deleted file mode 100644 index daf32b396..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_api_key_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateDatadogApiKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'api_key_name': 'MyUniqueApiKey', - 'api_keys_resource_type': 'api_keys', - 'apikey_category': 'development', - 'remote_config_read_enabled': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_gcp_principal_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_datadog_gcp_principal_example_call_tool.js deleted file mode 100644 index 4f812351f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_gcp_principal_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateDatadogGcpPrincipal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "delegate_service_account_data": { - "account_id": "my-service-account", - "display_name": "My Service Account", - "description": "Service account for Datadog integration" - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_gcp_principal_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_datadog_gcp_principal_example_call_tool.py deleted file mode 100644 index b52c6ebc8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_gcp_principal_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateDatadogGcpPrincipal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'delegate_service_account_data': { 'account_id': 'my-service-account', - 'display_name': 'My Service Account', - 'description': 'Service account for Datadog integration' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_restriction_query_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_datadog_restriction_query_example_call_tool.js deleted file mode 100644 index 78c36a362..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_restriction_query_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateDatadogRestrictionQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "restriction_query": "status:error", - "restriction_query_resource_type": "logs_restriction_queries" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_restriction_query_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_datadog_restriction_query_example_call_tool.py deleted file mode 100644 index 50d32d115..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_restriction_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateDatadogRestrictionQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'restriction_query': 'status:error', 'restriction_query_resource_type': 'logs_restriction_queries' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_datadog_workflow_example_call_tool.js deleted file mode 100644 index 0b1ca56cc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_workflow_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateDatadogWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Workflow\",\"type\":\"alert\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_datadog_workflow_example_call_tool.py deleted file mode 100644 index 1c437ca23..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_datadog_workflow_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateDatadogWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"name":"New Workflow","type":"alert","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_dataset_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_dataset_example_call_tool.js deleted file mode 100644 index b7a4dd8af..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_dataset_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateDataset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Sample Dataset\",\"type\":\"timeseries\",\"description\":\"A dataset for testing purposes.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_dataset_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_dataset_example_call_tool.py deleted file mode 100644 index 0ae9ed7be..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_dataset_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateDataset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Sample Dataset","type":"timeseries","description":"A dataset for ' - 'testing purposes."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_fastly_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_fastly_account_example_call_tool.js deleted file mode 100644 index 2052c85b7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_fastly_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateFastlyAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"account_name\":\"example_account\",\"email\":\"user@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_fastly_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_fastly_account_example_call_tool.py deleted file mode 100644 index 6e50a313d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_fastly_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateFastlyAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"account_name":"example_account","email":"user@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_fastly_service_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_fastly_service_example_call_tool.js deleted file mode 100644 index e074ce24e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_fastly_service_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateFastlyService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fastly_account_id": "123456", - "fastly_service_id": "service_789", - "fastly_service_tags": [ - "production", - "api" - ], - "jsonapi_type_for_fastly_service": "fastly-services" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_fastly_service_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_fastly_service_example_call_tool.py deleted file mode 100644 index 57605b570..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_fastly_service_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateFastlyService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fastly_account_id': '123456', - 'fastly_service_id': 'service_789', - 'fastly_service_tags': ['production', 'api'], - 'jsonapi_type_for_fastly_service': 'fastly-services' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_gcp_cost_management_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_gcp_cost_management_account_example_call_tool.js deleted file mode 100644 index 7e43b8218..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_gcp_cost_management_account_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateGcpCostManagementAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gcp_bucket_name": "my-gcp-bucket", - "gcp_usage_cost_export_dataset_name": "usage_cost_dataset", - "google_cloud_billing_account_id": "1234-5678-9012", - "usage_cost_config_type": "gcp_uc_config_post_request" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_gcp_cost_management_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_gcp_cost_management_account_example_call_tool.py deleted file mode 100644 index 55754faf3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_gcp_cost_management_account_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateGcpCostManagementAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gcp_bucket_name': 'my-gcp-bucket', - 'gcp_usage_cost_export_dataset_name': 'usage_cost_dataset', - 'google_cloud_billing_account_id': '1234-5678-9012', - 'usage_cost_config_type': 'gcp_uc_config_post_request' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_gcp_sts_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_gcp_sts_account_example_call_tool.js deleted file mode 100644 index 834d7c8f0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_gcp_sts_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateGcpStsAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"account_name\":\"my-gcp-account\",\"project_id\":\"my-project-id\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_gcp_sts_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_gcp_sts_account_example_call_tool.py deleted file mode 100644 index 508bfa9a7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_gcp_sts_account_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateGcpStsAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"account_name":"my-gcp-account","project_id":"my-project-id"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_incident_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_incident_example_call_tool.js deleted file mode 100644 index 9768fa3a6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_incident_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateIncident"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"Sample Incident\",\"status\":\"open\",\"priority\":\"high\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_incident_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_incident_example_call_tool.py deleted file mode 100644 index 9d1c10b06..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_incident_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateIncident" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"title":"Sample Incident","status":"open","priority":"high"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_incident_impact_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_incident_impact_example_call_tool.js deleted file mode 100644 index b2b7acf74..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_incident_impact_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateIncidentImpact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_uuid": "123e4567-e89b-12d3-a456-426614174000", - "included_resources": [ - "users", - "details" - ], - "request_body": "{\"impact\":\"High\",\"description\":\"Service outage affecting multiple users.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_incident_impact_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_incident_impact_example_call_tool.py deleted file mode 100644 index 09e512246..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_incident_impact_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateIncidentImpact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'included_resources': ['users', 'details'], - 'request_body': '{"impact":"High","description":"Service outage affecting multiple users."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_incident_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_incident_integration_example_call_tool.js deleted file mode 100644 index c1947ea64..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_incident_integration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateIncidentIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_uuid": "123e4567-e89b-12d3-a456-426614174000", - "request_body": "{\"integration\":\"example_integration\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_incident_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_incident_integration_example_call_tool.py deleted file mode 100644 index a4ddc7305..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_incident_integration_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateIncidentIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'request_body': '{"integration":"example_integration","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_incident_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_incident_notification_rule_example_call_tool.js deleted file mode 100644 index b960035af..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_incident_notification_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateIncidentNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"High CPU Usage Alert\",\"enabled\":true,\"notification_type\":\"email\",\"recipients\":[\"ops@example.com\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_incident_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_incident_notification_rule_example_call_tool.py deleted file mode 100644 index fb72f8a40..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_incident_notification_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateIncidentNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"High CPU Usage ' - 'Alert","enabled":true,"notification_type":"email","recipients":["ops@example.com"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_incident_notification_template_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_incident_notification_template_example_call_tool.js deleted file mode 100644 index d713a60cb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_incident_notification_template_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateIncidentNotificationTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_content_body": "This is a notification regarding the incident that occurred.", - "notification_subject": "Incident Alert: Immediate Attention Required", - "notification_template_category": "Critical", - "notification_template_name": "Critical Incident Notification", - "resource_type_notification_template": "notification_templates" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_incident_notification_template_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_incident_notification_template_example_call_tool.py deleted file mode 100644 index 531fbf6a7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_incident_notification_template_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateIncidentNotificationTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_content_body': 'This is a notification regarding the incident that occurred.', - 'notification_subject': 'Incident Alert: Immediate Attention Required', - 'notification_template_category': 'Critical', - 'notification_template_name': 'Critical Incident Notification', - 'resource_type_notification_template': 'notification_templates' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_incident_todo_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_incident_todo_example_call_tool.js deleted file mode 100644 index 5b95d9346..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_incident_todo_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateIncidentTodo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_uuid": "123e4567-e89b-12d3-a456-426614174000", - "request_body": "{\"task\":\"Investigate the issue\",\"assigned_to\":\"team@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_incident_todo_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_incident_todo_example_call_tool.py deleted file mode 100644 index fe6c23227..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_incident_todo_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateIncidentTodo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'request_body': '{"task":"Investigate the issue","assigned_to":"team@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_incident_type_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_incident_type_example_call_tool.js deleted file mode 100644 index 6479e7486..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_incident_type_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateIncidentType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_type_name": "Network Outage", - "creator_user_id": "user_123", - "incident_creation_timestamp": "2023-10-01T12:00:00Z", - "incident_title_prefix": "[Network]", - "incident_type_description": "Incidents related to network connectivity issues.", - "incident_type_resource_type": "incident_types", - "set_as_default_incident_type": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_incident_type_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_incident_type_example_call_tool.py deleted file mode 100644 index da6bee152..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_incident_type_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateIncidentType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_type_name': 'Network Outage', - 'creator_user_id': 'user_123', - 'incident_creation_timestamp': '2023-10-01T12:00:00Z', - 'incident_title_prefix': '[Network]', - 'incident_type_description': 'Incidents related to network connectivity issues.', - 'incident_type_resource_type': 'incident_types', - 'set_as_default_incident_type': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_log_based_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_log_based_metric_example_call_tool.js deleted file mode 100644 index f0c948e28..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_log_based_metric_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateLogBasedMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"my_metric\",\"query\":\"status:error\",\"type\":\"count\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_log_based_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_log_based_metric_example_call_tool.py deleted file mode 100644 index efd7c5f5a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_log_based_metric_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateLogBasedMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"name":"my_metric","query":"status:error","type":"count"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_logs_archive_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_logs_archive_example_call_tool.js deleted file mode 100644 index 5ad4ba42a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_logs_archive_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateLogsArchive"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"log_type\":\"error\",\"time_range\":\"last_30_days\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_logs_archive_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_logs_archive_example_call_tool.py deleted file mode 100644 index 3211760c0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_logs_archive_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateLogsArchive" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"log_type":"error","time_range":"last_30_days"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_metric_tag_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_metric_tag_configuration_example_call_tool.js deleted file mode 100644 index a13295055..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_metric_tag_configuration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateMetricTagConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "metric_name": "my.metric.name", - "request_body": "{\"tags\":[\"env:production\",\"role:frontend\"],\"exclude_tags_mode\":false}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_metric_tag_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_metric_tag_configuration_example_call_tool.py deleted file mode 100644 index 949937e8a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_metric_tag_configuration_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateMetricTagConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'metric_name': 'my.metric.name', - 'request_body': '{"tags":["env:production","role:frontend"],"exclude_tags_mode":false}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_monitor_config_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_monitor_config_policy_example_call_tool.js deleted file mode 100644 index bd344cc07..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_monitor_config_policy_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateMonitorConfigPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"CPU Usage Alert\",\"type\":\"metric alert\",\"query\":\"avg(last_5m):avg:system.cpu.idle{*} < 20\",\"message\":\"CPU usage is too high!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_monitor_config_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_monitor_config_policy_example_call_tool.py deleted file mode 100644 index ba28dc5b9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_monitor_config_policy_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateMonitorConfigPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"CPU Usage Alert","type":"metric ' - 'alert","query":"avg(last_5m):avg:system.cpu.idle{*} < 20","message":"CPU ' - 'usage is too high!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_monitor_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_monitor_notification_rule_example_call_tool.js deleted file mode 100644 index 226c3d841..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_monitor_notification_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateMonitorNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"monitor_id\":\"12345\",\"notification_type\":\"email\",\"recipients\":[\"example@example.com\"],\"threshold\":75}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_monitor_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_monitor_notification_rule_example_call_tool.py deleted file mode 100644 index 7595519ec..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_monitor_notification_rule_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateMonitorNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"monitor_id":"12345","notification_type":"email","recipients":["example@example.com"],"threshold":75}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_monitor_user_template_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_monitor_user_template_example_call_tool.js deleted file mode 100644 index 7b29ca5ad..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_monitor_user_template_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateMonitorUserTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Monitor User Template\",\"permissions\":[\"read\",\"write\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_monitor_user_template_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_monitor_user_template_example_call_tool.py deleted file mode 100644 index e9b23c181..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_monitor_user_template_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateMonitorUserTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New Monitor User Template","permissions":["read","write"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_new_app_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_new_app_example_call_tool.js deleted file mode 100644 index ecfe4b9f2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_new_app_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateNewApp"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"MyNewApp\",\"description\":\"This is a sample app.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_new_app_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_new_app_example_call_tool.py deleted file mode 100644 index 782a4241c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_new_app_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateNewApp" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"name":"MyNewApp","description":"This is a sample app."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_new_datastore_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_new_datastore_example_call_tool.js deleted file mode 100644 index 839484a53..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_new_datastore_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateNewDatastore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "datastore_description": "This datastore holds user activity logs.", - "datastore_display_name": "User Activity Logs", - "datastore_resource_type": "datastores", - "organization_access_level": "manager", - "primary_key_column_name": "user_id", - "primary_key_generation_strategy": "uuid" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_new_datastore_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_new_datastore_example_call_tool.py deleted file mode 100644 index 3d786bdf4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_new_datastore_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateNewDatastore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'datastore_description': 'This datastore holds user activity logs.', - 'datastore_display_name': 'User Activity Logs', - 'datastore_resource_type': 'datastores', - 'organization_access_level': 'manager', - 'primary_key_column_name': 'user_id', - 'primary_key_generation_strategy': 'uuid' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_new_team_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_new_team_example_call_tool.js deleted file mode 100644 index c30cd594b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_new_team_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateNewTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"team_name\":\"Dev Team\",\"members\":[\"user123\",\"user456\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_new_team_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_new_team_example_call_tool.py deleted file mode 100644 index 6d06bae62..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_new_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateNewTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"team_name":"Dev Team","members":["user123","user456"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_okta_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_okta_account_example_call_tool.js deleted file mode 100644 index 9cf44589f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_okta_account_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateOktaAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "okta_account_domain": "example.okta.com", - "okta_account_name": "John Doe", - "okta_auth_method": "OAuth2" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_okta_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_okta_account_example_call_tool.py deleted file mode 100644 index b20a816b3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_okta_account_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateOktaAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'okta_account_domain': 'example.okta.com', - 'okta_account_name': 'John Doe', - 'okta_auth_method': 'OAuth2' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_on_call_escalation_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_on_call_escalation_policy_example_call_tool.js deleted file mode 100644 index 0a3bccd48..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_on_call_escalation_policy_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateOnCallEscalationPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "include_relationships": "teams,steps", - "request_body": "{\"name\":\"Night Shift Escalation\",\"steps\":[{\"name\":\"First Alert\",\"targets\":[{\"type\":\"user\",\"id\":\"12345\"}]}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_on_call_escalation_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_on_call_escalation_policy_example_call_tool.py deleted file mode 100644 index a589cb5ce..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_on_call_escalation_policy_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateOnCallEscalationPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'include_relationships': 'teams,steps', - 'request_body': '{"name":"Night Shift Escalation","steps":[{"name":"First ' - 'Alert","targets":[{"type":"user","id":"12345"}]}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_on_call_schedule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_on_call_schedule_example_call_tool.js deleted file mode 100644 index 0df2a6d9d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_on_call_schedule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateOnCallSchedule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "include_relationships": "teams,layers", - "request_body": "{\"name\":\"On-Call Schedule\",\"start_date\":\"2023-10-01T00:00:00Z\",\"end_date\":\"2023-10-31T23:59:59Z\",\"time_zone\":\"UTC\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_on_call_schedule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_on_call_schedule_example_call_tool.py deleted file mode 100644 index 73b7f3cff..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_on_call_schedule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateOnCallSchedule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'include_relationships': 'teams,layers', - 'request_body': '{"name":"On-Call ' - 'Schedule","start_date":"2023-10-01T00:00:00Z","end_date":"2023-10-31T23:59:59Z","time_zone":"UTC"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_opsgenie_service_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_opsgenie_service_example_call_tool.js deleted file mode 100644 index 50718af80..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_opsgenie_service_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateOpsgenieService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "opsgenie_api_key": "abc123xyz", - "opsgenie_service_name": "Critical Alerts", - "opsgenie_service_region": "us" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_opsgenie_service_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_opsgenie_service_example_call_tool.py deleted file mode 100644 index bed6f764a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_opsgenie_service_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateOpsgenieService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'opsgenie_api_key': 'abc123xyz', - 'opsgenie_service_name': 'Critical Alerts', - 'opsgenie_service_region': 'us' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_or_update_service_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_or_update_service_definitions_example_call_tool.js deleted file mode 100644 index de47ff401..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_or_update_service_definitions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateOrUpdateServiceDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"service_name\":\"example-service\",\"description\":\"This is an example service.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_or_update_service_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_or_update_service_definitions_example_call_tool.py deleted file mode 100644 index 664b068ed..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_or_update_service_definitions_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateOrUpdateServiceDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"service_name":"example-service","description":"This is an example ' - 'service."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_org_connection_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_org_connection_example_call_tool.js deleted file mode 100644 index 7bafcd023..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_org_connection_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateOrgConnection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "connection_types": [ - "data_sharing", - "resource_link" - ], - "organization_connection_type": "org_connection" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_org_connection_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_org_connection_example_call_tool.py deleted file mode 100644 index 477b4be49..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_org_connection_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateOrgConnection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'connection_types': ['data_sharing', 'resource_link'], - 'organization_connection_type': 'org_connection' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_organization_user_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_organization_user_example_call_tool.js deleted file mode 100644 index bc0ac25d3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_organization_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateOrganizationUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"email\":\"user@example.com\",\"name\":\"John Doe\",\"role\":\"admin\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_organization_user_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_organization_user_example_call_tool.py deleted file mode 100644 index af280f2a3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_organization_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateOrganizationUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"email":"user@example.com","name":"John Doe","role":"admin"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_pipeline_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_pipeline_example_call_tool.js deleted file mode 100644 index c044a8b7b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_pipeline_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreatePipeline"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"my_pipeline\",\"type\":\"data_processing\",\"steps\":[{\"type\":\"filter\",\"parameters\":{\"condition\":\"status == 'active'\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_pipeline_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_pipeline_example_call_tool.py deleted file mode 100644 index 26b4091f7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_pipeline_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreatePipeline" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"my_pipeline","type":"data_processing","steps":[{"type":"filter","parameters":{"condition":"status ' - '== \'active\'"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_powerpack_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_powerpack_example_call_tool.js deleted file mode 100644 index ee62b2418..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_powerpack_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreatePowerpack"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Sample Powerpack\",\"description\":\"This is a sample powerpack for demonstration.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_powerpack_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_powerpack_example_call_tool.py deleted file mode 100644 index d17733db5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_powerpack_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreatePowerpack" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Sample Powerpack","description":"This is a sample powerpack for ' - 'demonstration."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_project_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_project_example_call_tool.js deleted file mode 100644 index 21718f4f8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_key": "proj123", - "project_name": "New Data Analysis Project", - "project_resource_type": "project" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_project_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_project_example_call_tool.py deleted file mode 100644 index 0dc40b8a4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_project_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_key': 'proj123', - 'project_name': 'New Data Analysis Project', - 'project_resource_type': 'project' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_reference_table_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_reference_table_example_call_tool.js deleted file mode 100644 index 362bd56ba..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_reference_table_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateReferenceTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"table_name\":\"example_table\",\"data_source\":\"csv\",\"columns\":[{\"name\":\"id\",\"type\":\"integer\"},{\"name\":\"name\",\"type\":\"string\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_reference_table_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_reference_table_example_call_tool.py deleted file mode 100644 index 6f73b678f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_reference_table_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateReferenceTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"table_name":"example_table","data_source":"csv","columns":[{"name":"id","type":"integer"},{"name":"name","type":"string"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_reference_table_upload_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_reference_table_upload_example_call_tool.js deleted file mode 100644 index d2468fc80..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_reference_table_upload_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateReferenceTableUpload"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_upload_headers": [ - "header1", - "header2", - "header3" - ], - "part_size_bytes": 5000000, - "reference_table_name": "SampleReferenceTable", - "upload_id": "12345-abcde", - "upload_part_count": 3, - "upload_resource_type": "upload" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_reference_table_upload_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_reference_table_upload_example_call_tool.py deleted file mode 100644 index 3459c51fd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_reference_table_upload_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateReferenceTableUpload" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_upload_headers': ['header1', 'header2', 'header3'], - 'part_size_bytes': 5000000, - 'reference_table_name': 'SampleReferenceTable', - 'upload_id': '12345-abcde', - 'upload_part_count': 3, - 'upload_resource_type': 'upload' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_role_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_role_example_call_tool.js deleted file mode 100644 index c5b58a1ac..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_role_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Role\",\"permissions\":[\"read\",\"write\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_role_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_role_example_call_tool.py deleted file mode 100644 index cf3465204..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_role_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"name":"New Role","permissions":["read","write"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_rum_application_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_rum_application_example_call_tool.js deleted file mode 100644 index 83889a77d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_rum_application_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateRumApplication"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "rum_application_name": "MyRUMApp", - "product_analytics_retention_state": "MAX", - "rum_application_type": "browser" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_rum_application_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_rum_application_example_call_tool.py deleted file mode 100644 index cb126e063..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_rum_application_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateRumApplication" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'rum_application_name': 'MyRUMApp', - 'product_analytics_retention_state': 'MAX', - 'rum_application_type': 'browser' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_rum_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_rum_metric_example_call_tool.js deleted file mode 100644 index cca91f5b0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_rum_metric_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateRumMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"page_load_time\",\"type\":\"gauge\",\"query\":\"avg:myapp.page_load_time{*}\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_rum_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_rum_metric_example_call_tool.py deleted file mode 100644 index 5c8aaeba5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_rum_metric_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateRumMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"page_load_time","type":"gauge","query":"avg:myapp.page_load_time{*}"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_rum_retention_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_rum_retention_filter_example_call_tool.js deleted file mode 100644 index dd9330538..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_rum_retention_filter_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateRumRetentionFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "rum_application_id": "app-12345", - "rum_event_type_filter": "session", - "rum_retention_filter_name": "DailyRetention", - "rum_retention_filter_sample_rate": 50, - "enable_retention_filter": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_rum_retention_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_rum_retention_filter_example_call_tool.py deleted file mode 100644 index 541ac12c2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_rum_retention_filter_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateRumRetentionFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'rum_application_id': 'app-12345', - 'rum_event_type_filter': 'session', - 'rum_retention_filter_name': 'DailyRetention', - 'rum_retention_filter_sample_rate': 50, - 'enable_retention_filter': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_scanning_group_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_scanning_group_example_call_tool.js deleted file mode 100644 index 27d8d6e01..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_scanning_group_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateScanningGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Scanning Group\",\"description\":\"This is a test group.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_scanning_group_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_scanning_group_example_call_tool.py deleted file mode 100644 index 29758c4a1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_scanning_group_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateScanningGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New Scanning Group","description":"This is a test group."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_scanning_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_scanning_rule_example_call_tool.js deleted file mode 100644 index 26ca0dd0b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_scanning_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateScanningRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"group_id\":\"12345\",\"pattern\":\"email\",\"excluded\":[] }" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_scanning_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_scanning_rule_example_call_tool.py deleted file mode 100644 index b96bac05f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_scanning_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateScanningRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"group_id":"12345","pattern":"email","excluded":[] }' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_scorecard_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_scorecard_rule_example_call_tool.js deleted file mode 100644 index 635432591..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_scorecard_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateScorecardRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Rule\",\"type\":\"performance\",\"criteria\":{\"threshold\":75}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_scorecard_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_scorecard_rule_example_call_tool.py deleted file mode 100644 index a7cfe19d5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_scorecard_rule_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateScorecardRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New Rule","type":"performance","criteria":{"threshold":75}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_security_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_security_filter_example_call_tool.js deleted file mode 100644 index 7c0b50ad6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_security_filter_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateSecurityFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filter_name\":\"example_filter\",\"conditions\":{\"ip_address\":\"192.168.1.1\",\"status\":\"allowed\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_security_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_security_filter_example_call_tool.py deleted file mode 100644 index e6f4a9f70..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_security_filter_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateSecurityFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"filter_name":"example_filter","conditions":{"ip_address":"192.168.1.1","status":"allowed"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_security_monitoring_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_security_monitoring_rule_example_call_tool.js deleted file mode 100644 index ea8cec162..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_security_monitoring_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateSecurityMonitoringRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Unauthorized Access Alert\",\"query\":\"source:aws AND status:unauthorized\",\"options\":{\"threshold\":5,\"timeframe\":\"last_1_hour\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_security_monitoring_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_security_monitoring_rule_example_call_tool.py deleted file mode 100644 index 11b8279b6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_security_monitoring_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateSecurityMonitoringRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Unauthorized Access Alert","query":"source:aws AND ' - 'status:unauthorized","options":{"threshold":5,"timeframe":"last_1_hour"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_service_account_app_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_service_account_app_key_example_call_tool.js deleted file mode 100644 index d92a26f35..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_service_account_app_key_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateServiceAccountAppKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_key_name": "MyAppKey", - "service_account_identifier": "service-account-123", - "application_key_scopes": [ - "read:metrics", - "write:events" - ], - "application_keys_resource_type": "application_keys" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_service_account_app_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_service_account_app_key_example_call_tool.py deleted file mode 100644 index 8a80368d8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_service_account_app_key_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateServiceAccountAppKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_key_name': 'MyAppKey', - 'service_account_identifier': 'service-account-123', - 'application_key_scopes': ['read:metrics', 'write:events'], - 'application_keys_resource_type': 'application_keys' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_service_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_service_account_example_call_tool.js deleted file mode 100644 index ae6af6003..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_service_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateServiceAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"account_name\":\"example-service-account\",\"permissions\":[\"read\",\"write\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_service_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_service_account_example_call_tool.py deleted file mode 100644 index 2a8e00792..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_service_account_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateServiceAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"account_name":"example-service-account","permissions":["read","write"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_slo_report_job_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_slo_report_job_example_call_tool.js deleted file mode 100644 index ffc71b83a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_slo_report_job_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateSloReportJob"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "from_timestamp_epoch_seconds": 1672531200, - "report_to_timestamp": 1672617600, - "slo_query_filter": "service:my-service", - "report_generation_frequency": "weekly", - "report_timezone": "UTC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_slo_report_job_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_slo_report_job_example_call_tool.py deleted file mode 100644 index 469a4e6f5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_slo_report_job_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateSloReportJob" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'from_timestamp_epoch_seconds': 1672531200, - 'report_to_timestamp': 1672617600, - 'slo_query_filter': 'service:my-service', - 'report_generation_frequency': 'weekly', - 'report_timezone': 'UTC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_span_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_span_metric_example_call_tool.js deleted file mode 100644 index 0a6e308ea..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_span_metric_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateSpanMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"metricName\":\"response_time\",\"spans\":[{\"id\":\"span1\",\"duration\":150},{\"id\":\"span2\",\"duration\":200}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_span_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_span_metric_example_call_tool.py deleted file mode 100644 index a250d09ce..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_span_metric_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateSpanMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"metricName":"response_time","spans":[{"id":"span1","duration":150},{"id":"span2","duration":200}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_support_case_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_support_case_example_call_tool.js deleted file mode 100644 index 94a7e3b13..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_support_case_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateSupportCase"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_title": "Issue with API integration", - "case_type_uuid": "123e4567-e89b-12d3-a456-426614174000", - "case_description": "The API is returning a 500 error when trying to fetch data.", - "case_priority": "P1", - "case_resource_type": "case" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_support_case_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_support_case_example_call_tool.py deleted file mode 100644 index e893e5e25..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_support_case_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateSupportCase" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_title': 'Issue with API integration', - 'case_type_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'case_description': 'The API is returning a 500 error when trying to fetch data.', - 'case_priority': 'P1', - 'case_resource_type': 'case' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_suppression_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_suppression_rule_example_call_tool.js deleted file mode 100644 index 347c04e6b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_suppression_rule_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateSuppressionRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_suppression_rule": true, - "rule_query": "security.alerts.type: 'malicious'", - "suppression_rule_name": "Suppress Malicious Alerts", - "suppression_rule_description": "Suppress alerts for known malicious activities.", - "expiration_date_unix_ms": 1710000000000 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_suppression_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_suppression_rule_example_call_tool.py deleted file mode 100644 index 8c413e0db..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_suppression_rule_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateSuppressionRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_suppression_rule': True, - 'rule_query': "security.alerts.type: 'malicious'", - 'suppression_rule_name': 'Suppress Malicious Alerts', - 'suppression_rule_description': 'Suppress alerts for known malicious activities.', - 'expiration_date_unix_ms': 1710000000000 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_tag_pipeline_ruleset_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_tag_pipeline_ruleset_example_call_tool.js deleted file mode 100644 index 0bb4070a4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_tag_pipeline_ruleset_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateTagPipelineRuleset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"rules\":[{\"tag\":\"env:production\",\"condition\":\"status:active\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_tag_pipeline_ruleset_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_tag_pipeline_ruleset_example_call_tool.py deleted file mode 100644 index 908e07007..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_tag_pipeline_ruleset_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateTagPipelineRuleset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"rules":[{"tag":"env:production","condition":"status:active"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_tenant_based_handle_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_tenant_based_handle_example_call_tool.js deleted file mode 100644 index 07a67880d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_tenant_based_handle_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateTenantBasedHandle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_id": "C1234567890", - "handle_name": "MyTenantHandle", - "team_id": "T1234567890", - "tenant_id": "tenant-12345", - "resource_type": "tenant-based-handle" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_tenant_based_handle_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_tenant_based_handle_example_call_tool.py deleted file mode 100644 index b0b6e2219..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_tenant_based_handle_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateTenantBasedHandle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_id': 'C1234567890', - 'handle_name': 'MyTenantHandle', - 'team_id': 'T1234567890', - 'tenant_id': 'tenant-12345', - 'resource_type': 'tenant-based-handle' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_user_application_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_user_application_key_example_call_tool.js deleted file mode 100644 index aaf0110e4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_user_application_key_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateUserApplicationKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_key_name": "MyAppKey", - "application_key_resource_type": "application_keys", - "application_key_scopes": [ - "read:metrics", - "write:events" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_user_application_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_user_application_key_example_call_tool.py deleted file mode 100644 index c8416ce00..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_user_application_key_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateUserApplicationKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_key_name': 'MyAppKey', - 'application_key_resource_type': 'application_keys', - 'application_key_scopes': ['read:metrics', 'write:events'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_waf_custom_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_waf_custom_rule_example_call_tool.js deleted file mode 100644 index 3d1cc205a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_waf_custom_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateWafCustomRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"ruleName\":\"blockSQLInjection\",\"priority\":1,\"action\":\"block\",\"conditions\":[{\"field\":\"requestBody\",\"operator\":\"contains\",\"value\":\"SELECT * FROM\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_waf_custom_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_waf_custom_rule_example_call_tool.py deleted file mode 100644 index cdbcf9579..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_waf_custom_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateWafCustomRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"ruleName":"blockSQLInjection","priority":1,"action":"block","conditions":[{"field":"requestBody","operator":"contains","value":"SELECT ' - '* FROM"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_waf_exclusion_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_waf_exclusion_filter_example_call_tool.js deleted file mode 100644 index 0b606d67b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_waf_exclusion_filter_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateWafExclusionFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filter_name\":\"example_filter\",\"criteria\":{\"path\":\"/api/example\",\"method\":\"GET\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_waf_exclusion_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_waf_exclusion_filter_example_call_tool.py deleted file mode 100644 index 2a9f0735a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_waf_exclusion_filter_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateWafExclusionFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"filter_name":"example_filter","criteria":{"path":"/api/example","method":"GET"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_workflow_webhook_handle_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_workflow_webhook_handle_example_call_tool.js deleted file mode 100644 index 2c0ff3bbe..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_workflow_webhook_handle_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateWorkflowWebhookHandle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_handle_name": "MyWebhookHandle", - "webhook_url": "https://example.com/webhook", - "webhook_handle_resource_type": "workflows-webhook-handle" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_workflow_webhook_handle_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_workflow_webhook_handle_example_call_tool.py deleted file mode 100644 index 21a8d1bd0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_workflow_webhook_handle_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateWorkflowWebhookHandle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_handle_name': 'MyWebhookHandle', - 'webhook_url': 'https://example.com/webhook', - 'webhook_handle_resource_type': 'workflows-webhook-handle' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_workload_protection_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_workload_protection_policy_example_call_tool.js deleted file mode 100644 index 50d979599..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_workload_protection_policy_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateWorkloadProtectionPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "policy_name": "MyWorkloadPolicy", - "host_tags_configuration": [ - "tag1", - "tag2" - ], - "policy_description": "This policy protects critical workloads.", - "policy_enabled": true, - "resource_type": "policy" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_workload_protection_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_workload_protection_policy_example_call_tool.py deleted file mode 100644 index 0318b6a90..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_workload_protection_policy_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateWorkloadProtectionPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'policy_name': 'MyWorkloadPolicy', - 'host_tags_configuration': ['tag1', 'tag2'], - 'policy_description': 'This policy protects critical workloads.', - 'policy_enabled': True, - 'resource_type': 'policy' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_workload_protection_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/create_workload_protection_rule_example_call_tool.js deleted file mode 100644 index 2e3a645ae..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_workload_protection_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.CreateWorkloadProtectionRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"ruleName\":\"SampleRule\",\"action\":\"block\",\"conditions\":{\"cpuUsage\":80}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/create_workload_protection_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/create_workload_protection_rule_example_call_tool.py deleted file mode 100644 index f1e2be1f2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/create_workload_protection_rule_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.CreateWorkloadProtectionRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"ruleName":"SampleRule","action":"block","conditions":{"cpuUsage":80}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_action_connection_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_action_connection_example_call_tool.js deleted file mode 100644 index 19b0563f9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_action_connection_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteActionConnection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_connection_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_action_connection_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_action_connection_example_call_tool.py deleted file mode 100644 index 6cdd005da..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_action_connection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteActionConnection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_connection_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_apm_retention_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_apm_retention_filter_example_call_tool.js deleted file mode 100644 index 3ea72434d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_apm_retention_filter_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteApmRetentionFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "retention_filter_id": "filter_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_apm_retention_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_apm_retention_filter_example_call_tool.py deleted file mode 100644 index 12430eb88..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_apm_retention_filter_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteApmRetentionFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'retention_filter_id': 'filter_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_app_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_app_example_call_tool.js deleted file mode 100644 index c31f3712e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_app_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteApp"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "app_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_app_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_app_example_call_tool.py deleted file mode 100644 index 648e283d2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_app_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteApp" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'app_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_authn_mapping_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_authn_mapping_example_call_tool.js deleted file mode 100644 index 55652f78f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_authn_mapping_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteAuthnMapping"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "authn_mapping_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_authn_mapping_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_authn_mapping_example_call_tool.py deleted file mode 100644 index 5e2d007a0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_authn_mapping_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteAuthnMapping" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'authn_mapping_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_aws_account_config_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_aws_account_config_example_call_tool.js deleted file mode 100644 index 289171d10..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_aws_account_config_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteAwsAccountConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "aws_account_configuration_id": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_aws_account_config_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_aws_account_config_example_call_tool.py deleted file mode 100644 index 2e94ea816..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_aws_account_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteAwsAccountConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'aws_account_configuration_id': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_aws_scan_options_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_aws_scan_options_example_call_tool.js deleted file mode 100644 index 31cfe2b6a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_aws_scan_options_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteAwsScanOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "aws_account_id": "123456789012" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_aws_scan_options_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_aws_scan_options_example_call_tool.py deleted file mode 100644 index ec4e4a489..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_aws_scan_options_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteAwsScanOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'aws_account_id': '123456789012' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_azure_subscription_scan_options_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_azure_subscription_scan_options_example_call_tool.js deleted file mode 100644 index 6dff2031b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_azure_subscription_scan_options_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteAzureSubscriptionScanOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "azure_subscription_id": "12345678-1234-1234-1234-123456789abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_azure_subscription_scan_options_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_azure_subscription_scan_options_example_call_tool.py deleted file mode 100644 index 7a9230e0d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_azure_subscription_scan_options_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteAzureSubscriptionScanOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'azure_subscription_id': '12345678-1234-1234-1234-123456789abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_budget_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_budget_example_call_tool.js deleted file mode 100644 index 4904b4de9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_budget_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteBudget"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "budget_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_budget_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_budget_example_call_tool.py deleted file mode 100644 index 594733927..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_budget_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteBudget" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'budget_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_bulk_tags_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_bulk_tags_metrics_example_call_tool.js deleted file mode 100644 index c8fb3844d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_bulk_tags_metrics_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteBulkTagsMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metric_name_prefix": "app.metric", - "metric_bulk_configure_tags_resource": "metric_bulk_configure_tags", - "notification_emails": [ - "user@example.com", - "admin@example.com" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_bulk_tags_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_bulk_tags_metrics_example_call_tool.py deleted file mode 100644 index 17f609981..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_bulk_tags_metrics_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteBulkTagsMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metric_name_prefix': 'app.metric', - 'metric_bulk_configure_tags_resource': 'metric_bulk_configure_tags', - 'notification_emails': ['user@example.com', 'admin@example.com'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_case_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_case_comment_example_call_tool.js deleted file mode 100644 index 7fd5a5369..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_case_comment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteCaseComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_identifier": "case-12345", - "timeline_cell_uuid": "uuid-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_case_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_case_comment_example_call_tool.py deleted file mode 100644 index ddabd7b3b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_case_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteCaseComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_identifier': 'case-12345', 'timeline_cell_uuid': 'uuid-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_case_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_case_custom_attribute_example_call_tool.js deleted file mode 100644 index 3dc90da26..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_case_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteCaseCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_custom_attribute_key": "priority", - "case_identifier": "case-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_case_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_case_custom_attribute_example_call_tool.py deleted file mode 100644 index 5e233fca8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_case_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteCaseCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_custom_attribute_key': 'priority', 'case_identifier': 'case-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_case_type_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_case_type_example_call_tool.js deleted file mode 100644 index 850223e43..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_case_type_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteCaseType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_type_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_case_type_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_case_type_example_call_tool.py deleted file mode 100644 index 3a46ac3e0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_case_type_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteCaseType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_type_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_catalog_entity_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_catalog_entity_example_call_tool.js deleted file mode 100644 index 07682f911..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_catalog_entity_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteCatalogEntity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "catalog_entity_identifier": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_catalog_entity_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_catalog_entity_example_call_tool.py deleted file mode 100644 index a5a97cc06..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_catalog_entity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteCatalogEntity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'catalog_entity_identifier': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_catalog_kind_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_catalog_kind_example_call_tool.js deleted file mode 100644 index 08f9b96ec..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_catalog_kind_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteCatalogKind"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "catalog_kind_identifier": "kind_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_catalog_kind_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_catalog_kind_example_call_tool.py deleted file mode 100644 index 11af55276..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_catalog_kind_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteCatalogKind" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'catalog_kind_identifier': 'kind_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_cloud_workload_security_agent_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_cloud_workload_security_agent_rule_example_call_tool.js deleted file mode 100644 index f1390776e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_cloud_workload_security_agent_rule_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteCloudWorkloadSecurityAgentRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_rule_identifier": "rule-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_cloud_workload_security_agent_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_cloud_workload_security_agent_rule_example_call_tool.py deleted file mode 100644 index a18d87ad2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_cloud_workload_security_agent_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteCloudWorkloadSecurityAgentRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_rule_identifier': 'rule-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_cloudflare_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_cloudflare_account_example_call_tool.js deleted file mode 100644 index dd67184a8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_cloudflare_account_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteCloudflareAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cloudflare_account_id": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_cloudflare_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_cloudflare_account_example_call_tool.py deleted file mode 100644 index fd037659e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_cloudflare_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteCloudflareAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cloudflare_account_id': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_confluent_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_confluent_account_example_call_tool.js deleted file mode 100644 index aec68b6f8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_confluent_account_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteConfluentAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "confluent_account_id": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_confluent_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_confluent_account_example_call_tool.py deleted file mode 100644 index bbfac4b1f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_confluent_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteConfluentAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'confluent_account_id': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_confluent_resource_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_confluent_resource_example_call_tool.js deleted file mode 100644 index 0f5a96c4a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_confluent_resource_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteConfluentResource"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "confluent_account_id": "12345", - "confluent_resource_id": "abcde-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_confluent_resource_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_confluent_resource_example_call_tool.py deleted file mode 100644 index a459147b0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_confluent_resource_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteConfluentResource" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'confluent_account_id': '12345', 'confluent_resource_id': 'abcde-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_allocation_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_custom_allocation_rule_example_call_tool.js deleted file mode 100644 index f01c855f4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_allocation_rule_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteCustomAllocationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_allocation_rule_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_allocation_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_custom_allocation_rule_example_call_tool.py deleted file mode 100644 index 9a74b5ee0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_allocation_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteCustomAllocationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_allocation_rule_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_attribute_config_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_custom_attribute_config_example_call_tool.js deleted file mode 100644 index 29d1b1177..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_attribute_config_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteCustomAttributeConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_type_uuid": "123e4567-e89b-12d3-a456-426614174000", - "custom_attribute_uuid": "987e6543-e21b-12d3-a456-426614174001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_attribute_config_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_custom_attribute_config_example_call_tool.py deleted file mode 100644 index 3a654921a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_attribute_config_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteCustomAttributeConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_type_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'custom_attribute_uuid': '987e6543-e21b-12d3-a456-426614174001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_cost_file_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_custom_cost_file_example_call_tool.js deleted file mode 100644 index 5d012c097..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_cost_file_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteCustomCostFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_cost_file_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_cost_file_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_custom_cost_file_example_call_tool.py deleted file mode 100644 index df51ea35b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_cost_file_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteCustomCostFile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_cost_file_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_framework_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_custom_framework_example_call_tool.js deleted file mode 100644 index 0ac3fdc85..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_framework_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteCustomFramework"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "framework_handle": "custom-framework-123", - "framework_version": "1.0.0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_framework_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_custom_framework_example_call_tool.py deleted file mode 100644 index 60907780f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_framework_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteCustomFramework" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'framework_handle': 'custom-framework-123', 'framework_version': '1.0.0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_log_destination_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_custom_log_destination_example_call_tool.js deleted file mode 100644 index a39dd22c1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_log_destination_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteCustomLogDestination"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_destination_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_log_destination_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_custom_log_destination_example_call_tool.py deleted file mode 100644 index 4a2faec6b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_custom_log_destination_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteCustomLogDestination" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_destination_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_dashboard_from_list_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_dashboard_from_list_example_call_tool.js deleted file mode 100644 index 8f9673727..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_dashboard_from_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteDashboardFromList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_list_identifier": 123, - "request_body": "{\"dashboards\":[\"dashboard1\",\"dashboard2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_dashboard_from_list_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_dashboard_from_list_example_call_tool.py deleted file mode 100644 index b6220ec9e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_dashboard_from_list_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteDashboardFromList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_list_identifier': 123, - 'request_body': '{"dashboards":["dashboard1","dashboard2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_data_pipeline_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_data_pipeline_example_call_tool.js deleted file mode 100644 index 6a6cd4f32..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_data_pipeline_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteDataPipeline"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pipeline_identifier": "pipeline_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_data_pipeline_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_data_pipeline_example_call_tool.py deleted file mode 100644 index a90913e38..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_data_pipeline_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteDataPipeline" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pipeline_identifier': 'pipeline_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_api_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_api_key_example_call_tool.js deleted file mode 100644 index 74710a561..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_api_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteDatadogApiKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "api_key_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_api_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_api_key_example_call_tool.py deleted file mode 100644 index e9753a7ae..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_api_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteDatadogApiKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'api_key_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_app_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_app_key_example_call_tool.js deleted file mode 100644 index 1229045a2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_app_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteDatadogAppKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_key_id": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_app_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_app_key_example_call_tool.py deleted file mode 100644 index fbf2f4bb4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_app_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteDatadogAppKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_key_id': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_datastore_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_datastore_example_call_tool.js deleted file mode 100644 index 43e61c9f5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_datastore_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteDatadogDatastore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "datastore_unique_id": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_datastore_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_datastore_example_call_tool.py deleted file mode 100644 index 53396796e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_datadog_datastore_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteDatadogDatastore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'datastore_unique_id': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_dataset_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_dataset_example_call_tool.js deleted file mode 100644 index ccece50ae..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_dataset_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteDataset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dataset_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_dataset_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_dataset_example_call_tool.py deleted file mode 100644 index c87b4a38e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_dataset_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteDataset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dataset_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_datastore_item_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_datastore_item_example_call_tool.js deleted file mode 100644 index 04adfc457..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_datastore_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteDatastoreItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "datastore_id": "12345", - "item_primary_key": "item_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_datastore_item_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_datastore_item_example_call_tool.py deleted file mode 100644 index 462a889cf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_datastore_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteDatastoreItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'datastore_id': '12345', 'item_primary_key': 'item_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_escalation_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_escalation_policy_example_call_tool.js deleted file mode 100644 index aa3ed71d1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_escalation_policy_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteEscalationPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "escalation_policy_id": "ep-123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_escalation_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_escalation_policy_example_call_tool.py deleted file mode 100644 index 525a4284e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_escalation_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteEscalationPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'escalation_policy_id': 'ep-123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_fastly_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_fastly_account_example_call_tool.js deleted file mode 100644 index 0122dda75..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_fastly_account_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteFastlyAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fastly_account_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_fastly_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_fastly_account_example_call_tool.py deleted file mode 100644 index c62275e03..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_fastly_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteFastlyAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fastly_account_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_fastly_service_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_fastly_service_example_call_tool.js deleted file mode 100644 index 5543365f5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_fastly_service_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteFastlyService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fastly_account_id": "123456", - "fastly_service_id": "abcde12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_fastly_service_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_fastly_service_example_call_tool.py deleted file mode 100644 index 08b87bbd1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_fastly_service_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteFastlyService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fastly_account_id': '123456', 'fastly_service_id': 'abcde12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_gcp_scan_options_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_gcp_scan_options_example_call_tool.js deleted file mode 100644 index 79e9f7ae2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_gcp_scan_options_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteGcpScanOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gcp_project_id": "my-gcp-project-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_gcp_scan_options_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_gcp_scan_options_example_call_tool.py deleted file mode 100644 index 9131650ce..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_gcp_scan_options_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteGcpScanOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gcp_project_id': 'my-gcp-project-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_gcp_sts_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_gcp_sts_account_example_call_tool.js deleted file mode 100644 index b10b1ba2f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_gcp_sts_account_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteGcpStsAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gcp_sts_account_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_gcp_sts_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_gcp_sts_account_example_call_tool.py deleted file mode 100644 index 25dbefebc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_gcp_sts_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteGcpStsAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gcp_sts_account_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_historical_detection_job_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_historical_detection_job_example_call_tool.js deleted file mode 100644 index 64ffb3fa2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_historical_detection_job_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteHistoricalDetectionJob"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_historical_detection_job_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_historical_detection_job_example_call_tool.py deleted file mode 100644 index 5393a814d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_historical_detection_job_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteHistoricalDetectionJob" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_incident_example_call_tool.js deleted file mode 100644 index 926955826..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteIncident"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_incident_example_call_tool.py deleted file mode 100644 index ed5a8bb6d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteIncident" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_impact_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_incident_impact_example_call_tool.js deleted file mode 100644 index 6d5f7ab4e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_impact_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteIncidentImpact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_id": "123e4567-e89b-12d3-a456-426614174000", - "incident_impact_uuid": "abc12345-def6-7890-ghij-klmnopqrstuv" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_impact_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_incident_impact_example_call_tool.py deleted file mode 100644 index 566b4c3b8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_impact_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteIncidentImpact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_id': '123e4567-e89b-12d3-a456-426614174000', - 'incident_impact_uuid': 'abc12345-def6-7890-ghij-klmnopqrstuv' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_integration_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_incident_integration_metadata_example_call_tool.js deleted file mode 100644 index 9c0fe8cf1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_integration_metadata_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteIncidentIntegrationMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_integration_metadata_uuid": "123e4567-e89b-12d3-a456-426614174000", - "incident_uuid": "987e6543-e21b-45d6-b123-456789abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_integration_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_incident_integration_metadata_example_call_tool.py deleted file mode 100644 index 9d8a8b9ef..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_integration_metadata_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteIncidentIntegrationMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_integration_metadata_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'incident_uuid': '987e6543-e21b-45d6-b123-456789abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_incident_notification_rule_example_call_tool.js deleted file mode 100644 index 572ddc456..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_notification_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteIncidentNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_rule_id": "12345", - "include_resources": "created_by_user,last_modified_by_user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_incident_notification_rule_example_call_tool.py deleted file mode 100644 index 043cbbb28..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_notification_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteIncidentNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_rule_id': '12345', 'include_resources': 'created_by_user,last_modified_by_user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_notification_template_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_incident_notification_template_example_call_tool.js deleted file mode 100644 index 4c81927c7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_notification_template_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteIncidentNotificationTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_template_id": "template_123", - "relationships_to_include": "created_by_user,last_modified_by_user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_notification_template_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_incident_notification_template_example_call_tool.py deleted file mode 100644 index 9c0578797..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_notification_template_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteIncidentNotificationTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_template_id': 'template_123', - 'relationships_to_include': 'created_by_user,last_modified_by_user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_todo_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_incident_todo_example_call_tool.js deleted file mode 100644 index 30c0a1dcd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_todo_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteIncidentTodo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_todo_uuid": "123e4567-e89b-12d3-a456-426614174000", - "incident_uuid": "987e6543-e21b-12d3-a456-426614174001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_todo_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_incident_todo_example_call_tool.py deleted file mode 100644 index b2aa16791..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_todo_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteIncidentTodo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_todo_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'incident_uuid': '987e6543-e21b-12d3-a456-426614174001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_type_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_incident_type_example_call_tool.js deleted file mode 100644 index ba5ef3eeb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_type_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteIncidentType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_type_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_type_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_incident_type_example_call_tool.py deleted file mode 100644 index acf91c229..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_incident_type_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteIncidentType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_type_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_log_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_log_metric_example_call_tool.js deleted file mode 100644 index 5190681bb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_log_metric_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteLogMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "log_metric_name": "error_count" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_log_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_log_metric_example_call_tool.py deleted file mode 100644 index 061352b81..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_log_metric_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteLogMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'log_metric_name': 'error_count' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_logs_archive_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_logs_archive_example_call_tool.js deleted file mode 100644 index 2093051c7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_logs_archive_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteLogsArchive"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "archive_id": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_logs_archive_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_logs_archive_example_call_tool.py deleted file mode 100644 index 7974673bf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_logs_archive_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteLogsArchive" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'archive_id': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_metric_tag_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_metric_tag_configuration_example_call_tool.js deleted file mode 100644 index 732fec33a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_metric_tag_configuration_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteMetricTagConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metric_name": "system.cpu.idle" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_metric_tag_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_metric_tag_configuration_example_call_tool.py deleted file mode 100644 index a5185575b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_metric_tag_configuration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteMetricTagConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metric_name': 'system.cpu.idle' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_notification_rule_example_call_tool.js deleted file mode 100644 index 93e291afa..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_notification_rule_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteMonitorNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "monitor_notification_rule_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_notification_rule_example_call_tool.py deleted file mode 100644 index cf8b4f824..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_notification_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteMonitorNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'monitor_notification_rule_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_policy_example_call_tool.js deleted file mode 100644 index f01bcea4e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_policy_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteMonitorPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "monitor_policy_id": "policy_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_policy_example_call_tool.py deleted file mode 100644 index 706ad2dd7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteMonitorPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'monitor_policy_id': 'policy_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_user_template_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_user_template_example_call_tool.js deleted file mode 100644 index 823a1c6c9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_user_template_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteMonitorUserTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "monitor_user_template_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_user_template_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_user_template_example_call_tool.py deleted file mode 100644 index 9e387a914..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_monitor_user_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteMonitorUserTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'monitor_user_template_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_ms_teams_tenant_handle_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_ms_teams_tenant_handle_example_call_tool.js deleted file mode 100644 index bf78de67b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_ms_teams_tenant_handle_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteMsTeamsTenantHandle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_handle_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_ms_teams_tenant_handle_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_ms_teams_tenant_handle_example_call_tool.py deleted file mode 100644 index c9809c82c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_ms_teams_tenant_handle_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteMsTeamsTenantHandle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_handle_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_multiple_datadog_apps_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_multiple_datadog_apps_example_call_tool.js deleted file mode 100644 index d3a16d375..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_multiple_datadog_apps_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteMultipleDatadogApps"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"app_ids\":[\"app1\",\"app2\",\"app3\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_multiple_datadog_apps_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_multiple_datadog_apps_example_call_tool.py deleted file mode 100644 index 23302c5b2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_multiple_datadog_apps_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteMultipleDatadogApps" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"app_ids":["app1","app2","app3"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_okta_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_okta_account_example_call_tool.js deleted file mode 100644 index 53dbfdd51..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_okta_account_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteOktaAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "okta_account_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_okta_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_okta_account_example_call_tool.py deleted file mode 100644 index ad7792bb2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_okta_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteOktaAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'okta_account_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_on_call_schedule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_on_call_schedule_example_call_tool.js deleted file mode 100644 index 492f0f583..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_on_call_schedule_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteOnCallSchedule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "schedule_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_on_call_schedule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_on_call_schedule_example_call_tool.py deleted file mode 100644 index 29b6c5201..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_on_call_schedule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteOnCallSchedule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'schedule_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_opsgenie_service_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_opsgenie_service_example_call_tool.js deleted file mode 100644 index 4f6283736..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_opsgenie_service_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteOpsgenieService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_opsgenie_service_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_opsgenie_service_example_call_tool.py deleted file mode 100644 index 7a82c8af3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_opsgenie_service_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteOpsgenieService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_org_connection_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_org_connection_example_call_tool.js deleted file mode 100644 index 517dccdce..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_org_connection_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteOrgConnection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "connection_id": "conn_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_org_connection_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_org_connection_example_call_tool.py deleted file mode 100644 index 30ec18b48..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_org_connection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteOrgConnection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'connection_id': 'conn_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_powerpack_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_powerpack_example_call_tool.js deleted file mode 100644 index 9cb6eca72..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_powerpack_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeletePowerpack"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "powerpack_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_powerpack_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_powerpack_example_call_tool.py deleted file mode 100644 index 5d0d7848a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_powerpack_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeletePowerpack" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'powerpack_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_reference_table_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_reference_table_example_call_tool.js deleted file mode 100644 index f501c0584..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_reference_table_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteReferenceTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "reference_table_id": "ref12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_reference_table_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_reference_table_example_call_tool.py deleted file mode 100644 index 85ef5614f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_reference_table_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteReferenceTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'reference_table_id': 'ref12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_restriction_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_restriction_policy_example_call_tool.js deleted file mode 100644 index 0349bdcad..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_restriction_policy_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteRestrictionPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_identifier": "dashboard:12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_restriction_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_restriction_policy_example_call_tool.py deleted file mode 100644 index dab2f641f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_restriction_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteRestrictionPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_identifier': 'dashboard:12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_restriction_query_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_restriction_query_example_call_tool.js deleted file mode 100644 index cb16cf756..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_restriction_query_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteRestrictionQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "restriction_query_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_restriction_query_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_restriction_query_example_call_tool.py deleted file mode 100644 index 138c84e48..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_restriction_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteRestrictionQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'restriction_query_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_rum_application_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_rum_application_example_call_tool.js deleted file mode 100644 index dd7ffcd8b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_rum_application_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteRumApplication"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "rum_application_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_rum_application_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_rum_application_example_call_tool.py deleted file mode 100644 index 4984273bf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_rum_application_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteRumApplication" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'rum_application_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_rum_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_rum_metric_example_call_tool.js deleted file mode 100644 index 6f5c20e73..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_rum_metric_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteRumMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "rum_metric_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_rum_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_rum_metric_example_call_tool.py deleted file mode 100644 index fbca2d91b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_rum_metric_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteRumMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'rum_metric_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_rum_retention_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_rum_retention_filter_example_call_tool.js deleted file mode 100644 index 80d43f9ac..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_rum_retention_filter_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteRumRetentionFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "retention_filter_id": "filter123", - "rum_application_id": "app456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_rum_retention_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_rum_retention_filter_example_call_tool.py deleted file mode 100644 index 5afa6b80f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_rum_retention_filter_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteRumRetentionFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'retention_filter_id': 'filter123', 'rum_application_id': 'app456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_scanning_group_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_scanning_group_example_call_tool.js deleted file mode 100644 index 02e643b21..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_scanning_group_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteScanningGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_id": "12345", - "api_version": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_scanning_group_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_scanning_group_example_call_tool.py deleted file mode 100644 index e51bd92e6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_scanning_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteScanningGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_id': '12345', 'api_version': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_scanning_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_scanning_rule_example_call_tool.js deleted file mode 100644 index 289600402..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_scanning_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteScanningRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "rule_id": "12345", - "api_version": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_scanning_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_scanning_rule_example_call_tool.py deleted file mode 100644 index d4e09d08d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_scanning_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteScanningRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'rule_id': '12345', 'api_version': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_scorecard_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_scorecard_rule_example_call_tool.js deleted file mode 100644 index cf84935a1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_scorecard_rule_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteScorecardRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "rule_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_scorecard_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_scorecard_rule_example_call_tool.py deleted file mode 100644 index 698e01e80..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_scorecard_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteScorecardRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'rule_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_security_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_security_filter_example_call_tool.js deleted file mode 100644 index 9dda2bf87..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_security_filter_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteSecurityFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "security_filter_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_security_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_security_filter_example_call_tool.py deleted file mode 100644 index 35d4f71ef..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_security_filter_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteSecurityFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'security_filter_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_security_monitoring_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_security_monitoring_rule_example_call_tool.js deleted file mode 100644 index 36bfadb42..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_security_monitoring_rule_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteSecurityMonitoringRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "security_rule_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_security_monitoring_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_security_monitoring_rule_example_call_tool.py deleted file mode 100644 index 3c909c608..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_security_monitoring_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteSecurityMonitoringRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'security_rule_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_service_account_app_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_service_account_app_key_example_call_tool.js deleted file mode 100644 index 5c81cc93e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_service_account_app_key_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteServiceAccountAppKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_key_id": "abc123", - "service_account_id": "service_account_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_service_account_app_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_service_account_app_key_example_call_tool.py deleted file mode 100644 index 8239d16d4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_service_account_app_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteServiceAccountAppKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_key_id': 'abc123', 'service_account_id': 'service_account_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_service_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_service_definition_example_call_tool.js deleted file mode 100644 index 1fc583210..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_service_definition_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteServiceDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_name": "example-service" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_service_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_service_definition_example_call_tool.py deleted file mode 100644 index 7b3c08c78..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_service_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteServiceDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_name': 'example-service' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_span_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_span_metric_example_call_tool.js deleted file mode 100644 index fa2f07365..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_span_metric_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteSpanMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metric_id": "metric_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_span_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_span_metric_example_call_tool.py deleted file mode 100644 index b8cb128a0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_span_metric_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteSpanMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metric_id': 'metric_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_suppression_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_suppression_rule_example_call_tool.js deleted file mode 100644 index 90a8853e7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_suppression_rule_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteSuppressionRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "suppression_rule_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_suppression_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_suppression_rule_example_call_tool.py deleted file mode 100644 index d649e22bb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_suppression_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteSuppressionRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'suppression_rule_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_tag_pipeline_ruleset_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_tag_pipeline_ruleset_example_call_tool.js deleted file mode 100644 index 712821490..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_tag_pipeline_ruleset_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteTagPipelineRuleset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ruleset_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_tag_pipeline_ruleset_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_tag_pipeline_ruleset_example_call_tool.py deleted file mode 100644 index 7f4c6e07e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_tag_pipeline_ruleset_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteTagPipelineRuleset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ruleset_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_team_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_team_example_call_tool.js deleted file mode 100644 index e6fb9900a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_team_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_identifier": "team_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_team_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_team_example_call_tool.py deleted file mode 100644 index bd0c80ae1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_identifier': 'team_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_user_application_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_user_application_key_example_call_tool.js deleted file mode 100644 index 6f53923cf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_user_application_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteUserApplicationKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_key_id": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_user_application_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_user_application_key_example_call_tool.py deleted file mode 100644 index a3991bd8d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_user_application_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteUserApplicationKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_key_id': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_waf_custom_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_waf_custom_rule_example_call_tool.js deleted file mode 100644 index 373620b2e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_waf_custom_rule_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteWafCustomRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_rule_id": "rule-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_waf_custom_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_waf_custom_rule_example_call_tool.py deleted file mode 100644 index 14f575d05..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_waf_custom_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteWafCustomRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_rule_id': 'rule-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_waf_exclusion_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_waf_exclusion_filter_example_call_tool.js deleted file mode 100644 index 8f005fb03..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_waf_exclusion_filter_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteWafExclusionFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "waf_exclusion_filter_id": "filter123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_waf_exclusion_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_waf_exclusion_filter_example_call_tool.py deleted file mode 100644 index b40cdee3f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_waf_exclusion_filter_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteWafExclusionFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'waf_exclusion_filter_id': 'filter123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_workflow_example_call_tool.js deleted file mode 100644 index 30adbe109..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_workflow_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workflow_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_workflow_example_call_tool.py deleted file mode 100644 index 7632a980d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_workflow_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workflow_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_workflow_webhook_handle_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_workflow_webhook_handle_example_call_tool.js deleted file mode 100644 index 55ab0ab53..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_workflow_webhook_handle_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteWorkflowWebhookHandle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_handle_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_workflow_webhook_handle_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_workflow_webhook_handle_example_call_tool.py deleted file mode 100644 index 809b836aa..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_workflow_webhook_handle_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteWorkflowWebhookHandle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_handle_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_workload_protection_agent_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_workload_protection_agent_rule_example_call_tool.js deleted file mode 100644 index d6320a05e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_workload_protection_agent_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteWorkloadProtectionAgentRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_rule_identifier": "rule-12345", - "agent_policy_id": "policy-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_workload_protection_agent_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_workload_protection_agent_rule_example_call_tool.py deleted file mode 100644 index deb6f480b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_workload_protection_agent_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteWorkloadProtectionAgentRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_rule_identifier': 'rule-12345', 'agent_policy_id': 'policy-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_workload_protection_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/delete_workload_protection_policy_example_call_tool.js deleted file mode 100644 index 55628caa1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_workload_protection_policy_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DeleteWorkloadProtectionPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_policy_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/delete_workload_protection_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/delete_workload_protection_policy_example_call_tool.py deleted file mode 100644 index d2dd33236..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/delete_workload_protection_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DeleteWorkloadProtectionPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_policy_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/disable_role_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/disable_role_example_call_tool.js deleted file mode 100644 index 651499856..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/disable_role_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DisableRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "role_identifier": "role-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/disable_role_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/disable_role_example_call_tool.py deleted file mode 100644 index 55e05ddb1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/disable_role_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DisableRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'role_identifier': 'role-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/disable_user_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/disable_user_example_call_tool.js deleted file mode 100644 index 4e75ab593..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/disable_user_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DisableUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/disable_user_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/disable_user_example_call_tool.py deleted file mode 100644 index f007e23d8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/disable_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DisableUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/download_cloud_workload_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/download_cloud_workload_policy_example_call_tool.js deleted file mode 100644 index 1ca90062f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/download_cloud_workload_policy_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DownloadCloudWorkloadPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/download_cloud_workload_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/download_cloud_workload_policy_example_call_tool.py deleted file mode 100644 index 787f7caf1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/download_cloud_workload_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DownloadCloudWorkloadPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/download_csm_threats_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/download_csm_threats_policy_example_call_tool.js deleted file mode 100644 index 90b7bbc20..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/download_csm_threats_policy_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DownloadCsmThreatsPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/download_csm_threats_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/download_csm_threats_policy_example_call_tool.py deleted file mode 100644 index 7b6e704d6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/download_csm_threats_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DownloadCsmThreatsPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/download_slo_report_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/download_slo_report_example_call_tool.js deleted file mode 100644 index a9e5d325a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/download_slo_report_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.DownloadSloReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "report_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/download_slo_report_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/download_slo_report_example_call_tool.py deleted file mode 100644 index cac306b61..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/download_slo_report_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.DownloadSloReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'report_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_authn_mapping_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/edit_authn_mapping_example_call_tool.js deleted file mode 100644 index fd3ddf01b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_authn_mapping_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.EditAuthnMapping"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "authn_mapping_uuid": "123e4567-e89b-12d3-a456-426614174000", - "request_body": "{\"name\":\"New Mapping\",\"type\":\"saml\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_authn_mapping_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/edit_authn_mapping_example_call_tool.py deleted file mode 100644 index 1781f4abf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_authn_mapping_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.EditAuthnMapping" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'authn_mapping_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'request_body': '{"name":"New Mapping","type":"saml"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_dataset_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/edit_dataset_example_call_tool.js deleted file mode 100644 index 248d47bc4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_dataset_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.EditDataset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dataset_id": "12345", - "request_body": "{\"name\":\"Updated Dataset\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_dataset_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/edit_dataset_example_call_tool.py deleted file mode 100644 index 9219ac608..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_dataset_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.EditDataset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dataset_id': '12345', - 'request_body': '{"name":"Updated Dataset","description":"This is an updated description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_monitor_config_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/edit_monitor_config_policy_example_call_tool.js deleted file mode 100644 index 4b356c735..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_monitor_config_policy_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.EditMonitorConfigPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "monitor_policy_id": "policy_123", - "request_body": "{\"name\":\"Updated Policy\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_monitor_config_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/edit_monitor_config_policy_example_call_tool.py deleted file mode 100644 index c5d866e31..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_monitor_config_policy_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.EditMonitorConfigPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'monitor_policy_id': 'policy_123', - 'request_body': '{"name":"Updated Policy","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_restriction_query_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/edit_restriction_query_example_call_tool.js deleted file mode 100644 index fd1d7690b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_restriction_query_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.EditRestrictionQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "restriction_query_id": "12345", - "restriction_query_string": "status:error" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_restriction_query_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/edit_restriction_query_example_call_tool.py deleted file mode 100644 index 1e1f86487..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_restriction_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.EditRestrictionQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'restriction_query_id': '12345', 'restriction_query_string': 'status:error' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_role_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/edit_role_example_call_tool.js deleted file mode 100644 index c1d15deb1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_role_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.EditRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "role_identifier": "admin_role_123", - "request_body": "{\"permissions\": [\"read\", \"write\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_role_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/edit_role_example_call_tool.py deleted file mode 100644 index d37842ebb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_role_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.EditRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'role_identifier': 'admin_role_123', - 'request_body': '{"permissions": ["read", "write"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_security_signal_incidents_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/edit_security_signal_incidents_example_call_tool.js deleted file mode 100644 index 10cdabeb9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_security_signal_incidents_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.EditSecuritySignalIncidents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_ids": [ - "inc123", - "inc456" - ], - "signal_id": "sig789", - "signal_version": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_security_signal_incidents_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/edit_security_signal_incidents_example_call_tool.py deleted file mode 100644 index 2a00f3645..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_security_signal_incidents_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.EditSecuritySignalIncidents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_ids': ['inc123', 'inc456'], 'signal_id': 'sig789', 'signal_version': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_service_account_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/edit_service_account_key_example_call_tool.js deleted file mode 100644 index 0656a3460..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_service_account_key_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.EditServiceAccountKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "app_key_identifier": "key123", - "application_key_id": "appKey456", - "service_account_id": "service789", - "application_key_name": "NewKeyName", - "application_key_scopes": [ - "read", - "write" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_service_account_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/edit_service_account_key_example_call_tool.py deleted file mode 100644 index 7b77765c6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_service_account_key_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.EditServiceAccountKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'app_key_identifier': 'key123', - 'application_key_id': 'appKey456', - 'service_account_id': 'service789', - 'application_key_name': 'NewKeyName', - 'application_key_scopes': ['read', 'write'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_signal_assignee_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/edit_signal_assignee_example_call_tool.js deleted file mode 100644 index 55cd33aa9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_signal_assignee_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.EditSignalAssignee"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "assignee_uuid": "123e4567-e89b-12d3-a456-426614174000", - "signal_id": "signal-789", - "assignee_name": "John Doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_signal_assignee_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/edit_signal_assignee_example_call_tool.py deleted file mode 100644 index 5bf2f4cd0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_signal_assignee_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.EditSignalAssignee" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'assignee_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'signal_id': 'signal-789', - 'assignee_name': 'John Doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_user_app_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/edit_user_app_key_example_call_tool.js deleted file mode 100644 index f815dab80..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_user_app_key_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.EditUserAppKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "app_key_identifier": "key123", - "application_key_id": "appKey456", - "application_key_name": "NewAppKeyName", - "application_key_scopes": [ - "read", - "write" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/edit_user_app_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/edit_user_app_key_example_call_tool.py deleted file mode 100644 index fbe8826f4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/edit_user_app_key_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.EditUserAppKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'app_key_identifier': 'key123', - 'application_key_id': 'appKey456', - 'application_key_name': 'NewAppKeyName', - 'application_key_scopes': ['read', 'write'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/escalate_on_call_page_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/escalate_on_call_page_example_call_tool.js deleted file mode 100644 index cb9de8dae..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/escalate_on_call_page_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.EscalateOnCallPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "on_call_page_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/escalate_on_call_page_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/escalate_on_call_page_example_call_tool.py deleted file mode 100644 index cf4b96388..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/escalate_on_call_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.EscalateOnCallPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'on_call_page_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/estimate_metrics_output_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/estimate_metrics_output_example_call_tool.js deleted file mode 100644 index c3453a9b2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/estimate_metrics_output_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.EstimateMetricsOutput"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metric_name": "request.count", - "filtered_tag_keys": "status,region", - "include_percentile_aggregators": true, - "lookback_hours": 24 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/estimate_metrics_output_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/estimate_metrics_output_example_call_tool.py deleted file mode 100644 index 8c2ef56e6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/estimate_metrics_output_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.EstimateMetricsOutput" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metric_name': 'request.count', - 'filtered_tag_keys': 'status,region', - 'include_percentile_aggregators': True, - 'lookback_hours': 24 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/execute_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/execute_workflow_example_call_tool.js deleted file mode 100644 index 33fe5a99a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/execute_workflow_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ExecuteWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "workflow_identifier": "12345", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/execute_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/execute_workflow_example_call_tool.py deleted file mode 100644 index 4e8ff7994..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/execute_workflow_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ExecuteWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'workflow_identifier': '12345', 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_all_scorecard_outcomes_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/fetch_all_scorecard_outcomes_example_call_tool.js deleted file mode 100644 index 99d30919f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_all_scorecard_outcomes_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.FetchAllScorecardOutcomes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_rule_id": "12345", - "filter_by_rule_name": "Critical Error", - "filter_outcomes_by_service_name": "PaymentService", - "filter_rule_enabled": true, - "include_rule_details": "true", - "outcome_state_filter": "success", - "page_offset": 0, - "page_size": 50, - "rule_fields_to_return": "name,status", - "specified_outcome_values": "outcome1,outcome2" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_all_scorecard_outcomes_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/fetch_all_scorecard_outcomes_example_call_tool.py deleted file mode 100644 index b5fe1165f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_all_scorecard_outcomes_example_call_tool.py +++ /dev/null @@ -1,38 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.FetchAllScorecardOutcomes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_rule_id': '12345', - 'filter_by_rule_name': 'Critical Error', - 'filter_outcomes_by_service_name': 'PaymentService', - 'filter_rule_enabled': True, - 'include_rule_details': 'true', - 'outcome_state_filter': 'success', - 'page_offset': 0, - 'page_size': 50, - 'rule_fields_to_return': 'name,status', - 'specified_outcome_values': 'outcome1,outcome2' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_aws_integration_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/fetch_aws_integration_permissions_example_call_tool.js deleted file mode 100644 index 288661fdc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_aws_integration_permissions_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.FetchAwsIntegrationPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_aws_integration_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/fetch_aws_integration_permissions_example_call_tool.py deleted file mode 100644 index 442151ece..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_aws_integration_permissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.FetchAwsIntegrationPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_aws_scan_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/fetch_aws_scan_settings_example_call_tool.js deleted file mode 100644 index 481218f3d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_aws_scan_settings_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.FetchAwsScanSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "aws_account_id": "123456789012" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_aws_scan_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/fetch_aws_scan_settings_example_call_tool.py deleted file mode 100644 index 01177d0ea..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_aws_scan_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.FetchAwsScanSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'aws_account_id': '123456789012' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_azure_scan_options_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/fetch_azure_scan_options_example_call_tool.js deleted file mode 100644 index 5c2e441b1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_azure_scan_options_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.FetchAzureScanOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_azure_scan_options_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/fetch_azure_scan_options_example_call_tool.py deleted file mode 100644 index 2675a9a7a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_azure_scan_options_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.FetchAzureScanOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_confluent_resource_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/fetch_confluent_resource_example_call_tool.js deleted file mode 100644 index 83440507a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_confluent_resource_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.FetchConfluentResource"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "confluent_account_id": "acc-12345", - "confluent_resource_id": "res-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_confluent_resource_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/fetch_confluent_resource_example_call_tool.py deleted file mode 100644 index 7cc4f8914..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_confluent_resource_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.FetchConfluentResource" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'confluent_account_id': 'acc-12345', 'confluent_resource_id': 'res-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_custom_costs_file_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/fetch_custom_costs_file_example_call_tool.js deleted file mode 100644 index 0543baa60..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_custom_costs_file_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.FetchCustomCostsFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_custom_costs_file_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/fetch_custom_costs_file_example_call_tool.py deleted file mode 100644 index 8e44eaa74..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_custom_costs_file_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.FetchCustomCostsFile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_dashboard_list_items_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/fetch_dashboard_list_items_example_call_tool.js deleted file mode 100644 index f6ac70d8c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_dashboard_list_items_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.FetchDashboardListItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_list_id": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_dashboard_list_items_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/fetch_dashboard_list_items_example_call_tool.py deleted file mode 100644 index df16cd5b6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_dashboard_list_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.FetchDashboardListItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_list_id': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_gcp_scan_options_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/fetch_gcp_scan_options_example_call_tool.js deleted file mode 100644 index 40a3232a2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_gcp_scan_options_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.FetchGcpScanOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_gcp_scan_options_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/fetch_gcp_scan_options_example_call_tool.py deleted file mode 100644 index bc6b66f06..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_gcp_scan_options_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.FetchGcpScanOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_monthly_cost_attribution_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/fetch_monthly_cost_attribution_example_call_tool.js deleted file mode 100644 index 39e888287..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_monthly_cost_attribution_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.FetchMonthlyCostAttribution"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cost_types_fields": "infra_host_on_demand_cost,infra_host_percentage_in_account", - "start_month": "2023-10", - "end_month": "2023-10", - "include_child_organization_costs": true, - "sort_by_billing_dimension": "infra_host", - "sort_by_direction": "asc", - "tag_keys_for_cost_grouping": "environment,project" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_monthly_cost_attribution_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/fetch_monthly_cost_attribution_example_call_tool.py deleted file mode 100644 index 4132356e7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_monthly_cost_attribution_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.FetchMonthlyCostAttribution" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cost_types_fields': 'infra_host_on_demand_cost,infra_host_percentage_in_account', - 'start_month': '2023-10', - 'end_month': '2023-10', - 'include_child_organization_costs': True, - 'sort_by_billing_dimension': 'infra_host', - 'sort_by_direction': 'asc', - 'tag_keys_for_cost_grouping': 'environment,project' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_recent_aws_on_demand_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/fetch_recent_aws_on_demand_tasks_example_call_tool.js deleted file mode 100644 index a6767793b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_recent_aws_on_demand_tasks_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.FetchRecentAwsOnDemandTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_recent_aws_on_demand_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/fetch_recent_aws_on_demand_tasks_example_call_tool.py deleted file mode 100644 index d78dfcb1e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_recent_aws_on_demand_tasks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.FetchRecentAwsOnDemandTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_scorecard_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/fetch_scorecard_rules_example_call_tool.js deleted file mode 100644 index fa5a804ce..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_scorecard_rules_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.FetchScorecardRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_custom_rules_only": true, - "filter_for_enabled_rules": false, - "filter_rule_by_id": "rule-123", - "filter_rule_description": "performance", - "filter_rules_by_name": "CPU Usage", - "include_scorecard_details": "true", - "page_offset": 0, - "page_size": 50, - "specific_rule_fields": "id,name,description", - "specific_scorecard_fields": "id,name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/fetch_scorecard_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/fetch_scorecard_rules_example_call_tool.py deleted file mode 100644 index c88836401..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/fetch_scorecard_rules_example_call_tool.py +++ /dev/null @@ -1,38 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.FetchScorecardRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_custom_rules_only': True, - 'filter_for_enabled_rules': False, - 'filter_rule_by_id': 'rule-123', - 'filter_rule_description': 'performance', - 'filter_rules_by_name': 'CPU Usage', - 'include_scorecard_details': 'true', - 'page_offset': 0, - 'page_size': 50, - 'specific_rule_fields': 'id,name,description', - 'specific_scorecard_fields': 'id,name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/find_security_alerts_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/find_security_alerts_example_call_tool.js deleted file mode 100644 index 3d427c2f3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/find_security_alerts_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.FindSecurityAlerts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_security_signals": 10, - "minimum_timestamp": "2023-01-01T00:00:00Z", - "search_query_for_security_signals": "unauthorized access", - "sort_order": "timestamp" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/find_security_alerts_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/find_security_alerts_example_call_tool.py deleted file mode 100644 index d43f6a63d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/find_security_alerts_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.FindSecurityAlerts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_security_signals': 10, - 'minimum_timestamp': '2023-01-01T00:00:00Z', - 'search_query_for_security_signals': 'unauthorized access', - 'sort_order': 'timestamp' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/generate_aws_external_id_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/generate_aws_external_id_example_call_tool.js deleted file mode 100644 index 4a4d975fe..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/generate_aws_external_id_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GenerateAwsExternalId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/generate_aws_external_id_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/generate_aws_external_id_example_call_tool.py deleted file mode 100644 index e5151a9f0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/generate_aws_external_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GenerateAwsExternalId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_action_connection_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_action_connection_example_call_tool.js deleted file mode 100644 index 199190f07..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_action_connection_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetActionConnection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_connection_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_action_connection_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_action_connection_example_call_tool.py deleted file mode 100644 index 5a6f2fb40..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_action_connection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetActionConnection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_connection_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_active_billing_dimensions_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_active_billing_dimensions_example_call_tool.js deleted file mode 100644 index 16981c5e9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_active_billing_dimensions_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetActiveBillingDimensions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_active_billing_dimensions_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_active_billing_dimensions_example_call_tool.py deleted file mode 100644 index 64f5ace18..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_active_billing_dimensions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetActiveBillingDimensions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_agentless_scan_options_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_agentless_scan_options_example_call_tool.js deleted file mode 100644 index 2ed74b3b8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_agentless_scan_options_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAgentlessScanOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "azure_subscription_id": "12345678-1234-1234-1234-123456789abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_agentless_scan_options_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_agentless_scan_options_example_call_tool.py deleted file mode 100644 index 443d33e01..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_agentless_scan_options_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAgentlessScanOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'azure_subscription_id': '12345678-1234-1234-1234-123456789abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aggregated_connections_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_aggregated_connections_example_call_tool.js deleted file mode 100644 index c0ba4daa1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aggregated_connections_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAggregatedConnections"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "connection_limit": 100, - "end_query_window": 1697049600, - "filter_by_tags": "env:production,service:web", - "group_by_fields": "host,service", - "start_time_unix_timestamp": 1697046000 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aggregated_connections_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_aggregated_connections_example_call_tool.py deleted file mode 100644 index ba27ad3d3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aggregated_connections_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAggregatedConnections" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'connection_limit': 100, - 'end_query_window': 1697049600, - 'filter_by_tags': 'env:production,service:web', - 'group_by_fields': 'host,service', - 'start_time_unix_timestamp': 1697046000 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aggregated_dns_traffic_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_aggregated_dns_traffic_example_call_tool.js deleted file mode 100644 index 27773d469..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aggregated_dns_traffic_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAggregatedDnsTraffic"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_timestamp": 1697049600, - "filter_dns_traffic_by_tags": "env:production,service:web", - "group_dns_traffic_by_fields": "network.dns_query,client_ip", - "max_dns_entries": 500, - "start_query_timestamp": 1697046000 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aggregated_dns_traffic_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_aggregated_dns_traffic_example_call_tool.py deleted file mode 100644 index 08fa1a443..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aggregated_dns_traffic_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAggregatedDnsTraffic" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_timestamp': 1697049600, - 'filter_dns_traffic_by_tags': 'env:production,service:web', - 'group_dns_traffic_by_fields': 'network.dns_query,client_ip', - 'max_dns_entries': 500, - 'start_query_timestamp': 1697046000 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_all_custom_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_all_custom_attributes_example_call_tool.js deleted file mode 100644 index 3014eb19e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_all_custom_attributes_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAllCustomAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_all_custom_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_all_custom_attributes_example_call_tool.py deleted file mode 100644 index 2d828a625..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_all_custom_attributes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAllCustomAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_all_datasets_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_all_datasets_example_call_tool.js deleted file mode 100644 index a945d6db2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_all_datasets_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAllDatasets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_all_datasets_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_all_datasets_example_call_tool.py deleted file mode 100644 index 34d914c15..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_all_datasets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAllDatasets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_all_monitor_user_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_all_monitor_user_templates_example_call_tool.js deleted file mode 100644 index 34d367bd1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_all_monitor_user_templates_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAllMonitorUserTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_all_monitor_user_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_all_monitor_user_templates_example_call_tool.py deleted file mode 100644 index 6bd5cdce2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_all_monitor_user_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAllMonitorUserTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_all_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_all_projects_example_call_tool.js deleted file mode 100644 index 15e535557..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_all_projects_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAllProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_all_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_all_projects_example_call_tool.py deleted file mode 100644 index 393044142..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_all_projects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAllProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_all_team_links_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_all_team_links_example_call_tool.js deleted file mode 100644 index 469fc6e71..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_all_team_links_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAllTeamLinks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_identifier": "team-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_all_team_links_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_all_team_links_example_call_tool.py deleted file mode 100644 index f7bbf7b16..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_all_team_links_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAllTeamLinks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_identifier': 'team-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_api_key_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_api_key_details_example_call_tool.js deleted file mode 100644 index 452e41304..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_api_key_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetApiKeyDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "api_key_id": "12345", - "include_related_resources": "created_by,modified_by" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_api_key_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_api_key_details_example_call_tool.py deleted file mode 100644 index 05006af5a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_api_key_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetApiKeyDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'api_key_id': '12345', 'include_related_resources': 'created_by,modified_by' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_apm_retention_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_apm_retention_filter_example_call_tool.js deleted file mode 100644 index 880d7bca6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_apm_retention_filter_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetApmRetentionFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "retention_filter_id": "filter123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_apm_retention_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_apm_retention_filter_example_call_tool.py deleted file mode 100644 index 815d9e5cd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_apm_retention_filter_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetApmRetentionFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'retention_filter_id': 'filter123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_apm_retention_filters_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_apm_retention_filters_example_call_tool.js deleted file mode 100644 index 92781cb31..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_apm_retention_filters_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetApmRetentionFilters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_apm_retention_filters_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_apm_retention_filters_example_call_tool.py deleted file mode 100644 index dced87f4b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_apm_retention_filters_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetApmRetentionFilters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_app_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_app_details_example_call_tool.js deleted file mode 100644 index e900f7cb6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_app_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAppDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_id": "12345", - "app_version": "latest" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_app_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_app_details_example_call_tool.py deleted file mode 100644 index c338df9dd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_app_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAppDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_id': '12345', 'app_version': 'latest' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_app_key_registration_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_app_key_registration_example_call_tool.js deleted file mode 100644 index 8a2136584..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_app_key_registration_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAppKeyRegistration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "app_key_id": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_app_key_registration_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_app_key_registration_example_call_tool.py deleted file mode 100644 index cc5a14fd6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_app_key_registration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAppKeyRegistration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'app_key_id': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_application_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_application_key_example_call_tool.js deleted file mode 100644 index 67b4ad12e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_application_key_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetApplicationKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_key_id": "12345", - "include_related_resource": "owned_by" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_application_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_application_key_example_call_tool.py deleted file mode 100644 index 9db96a7c1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_application_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetApplicationKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_key_id': '12345', 'include_related_resource': 'owned_by' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_archive_read_roles_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_archive_read_roles_example_call_tool.js deleted file mode 100644 index 85a2de7cd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_archive_read_roles_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetArchiveReadRoles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "archive_identifier": "archive_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_archive_read_roles_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_archive_read_roles_example_call_tool.py deleted file mode 100644 index 9c492afb6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_archive_read_roles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetArchiveReadRoles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'archive_identifier': 'archive_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_audit_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_audit_logs_example_call_tool.js deleted file mode 100644 index d0cc2733f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_audit_logs_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAuditLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "audit_logs_search_query": "error", - "max_events_per_response": 10, - "sort_order_of_events": "-timestamp" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_audit_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_audit_logs_example_call_tool.py deleted file mode 100644 index f8d3d5cee..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_audit_logs_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAuditLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'audit_logs_search_query': 'error', - 'max_events_per_response': 10, - 'sort_order_of_events': '-timestamp' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_authn_mapping_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_authn_mapping_example_call_tool.js deleted file mode 100644 index 701b62ece..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_authn_mapping_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAuthnMapping"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "authn_mapping_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_authn_mapping_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_authn_mapping_example_call_tool.py deleted file mode 100644 index 744ec8de2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_authn_mapping_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAuthnMapping" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'authn_mapping_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aws_account_integration_config_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_aws_account_integration_config_example_call_tool.js deleted file mode 100644 index 89863ef4e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aws_account_integration_config_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAwsAccountIntegrationConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "aws_account_integration_config_id": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aws_account_integration_config_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_aws_account_integration_config_example_call_tool.py deleted file mode 100644 index 4fbbe9e9e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aws_account_integration_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAwsAccountIntegrationConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'aws_account_integration_config_id': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aws_cloudwatch_namespaces_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_aws_cloudwatch_namespaces_example_call_tool.js deleted file mode 100644 index ba468bf47..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aws_cloudwatch_namespaces_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAwsCloudwatchNamespaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aws_cloudwatch_namespaces_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_aws_cloudwatch_namespaces_example_call_tool.py deleted file mode 100644 index c2ad06a44..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aws_cloudwatch_namespaces_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAwsCloudwatchNamespaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aws_cur_config_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_aws_cur_config_example_call_tool.js deleted file mode 100644 index 66a03dcd1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aws_cur_config_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAwsCurConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cloud_account_id": 123456789 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aws_cur_config_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_aws_cur_config_example_call_tool.py deleted file mode 100644 index e94073b8c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aws_cur_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAwsCurConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cloud_account_id': 123456789 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aws_iam_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_aws_iam_permissions_example_call_tool.js deleted file mode 100644 index 75304e6be..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aws_iam_permissions_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAwsIamPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aws_iam_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_aws_iam_permissions_example_call_tool.py deleted file mode 100644 index 42d290085..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aws_iam_permissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAwsIamPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aws_integration_iam_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_aws_integration_iam_permissions_example_call_tool.js deleted file mode 100644 index b4330a37c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aws_integration_iam_permissions_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAwsIntegrationIamPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aws_integration_iam_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_aws_integration_iam_permissions_example_call_tool.py deleted file mode 100644 index 35954e766..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aws_integration_iam_permissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAwsIntegrationIamPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aws_on_demand_task_data_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_aws_on_demand_task_data_example_call_tool.js deleted file mode 100644 index d6a177d33..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aws_on_demand_task_data_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAwsOnDemandTaskData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "aws_task_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aws_on_demand_task_data_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_aws_on_demand_task_data_example_call_tool.py deleted file mode 100644 index c63db5b5e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aws_on_demand_task_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAwsOnDemandTaskData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'aws_task_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aws_scan_options_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_aws_scan_options_example_call_tool.js deleted file mode 100644 index 02e88ae64..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aws_scan_options_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAwsScanOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_aws_scan_options_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_aws_scan_options_example_call_tool.py deleted file mode 100644 index 49cb8f2bc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_aws_scan_options_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAwsScanOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_azure_config_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_azure_config_example_call_tool.js deleted file mode 100644 index c97d41b80..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_azure_config_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetAzureConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "azure_cloud_account_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_azure_config_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_azure_config_example_call_tool.py deleted file mode 100644 index 323a8aa10..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_azure_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetAzureConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'azure_cloud_account_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_billing_dimension_mapping_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_billing_dimension_mapping_example_call_tool.js deleted file mode 100644 index bd8e4ab2a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_billing_dimension_mapping_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetBillingDimensionMapping"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "billing_dimension_view": "active", - "billing_month": "2023-10-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_billing_dimension_mapping_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_billing_dimension_mapping_example_call_tool.py deleted file mode 100644 index 8da428a2e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_billing_dimension_mapping_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetBillingDimensionMapping" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'billing_dimension_view': 'active', 'billing_month': '2023-10-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_budget_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_budget_details_example_call_tool.js deleted file mode 100644 index 91dbd9fd2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_budget_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetBudgetDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "budget_identifier": "budget_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_budget_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_budget_details_example_call_tool.py deleted file mode 100644 index f3a98fedf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_budget_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetBudgetDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'budget_identifier': 'budget_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_case_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_case_details_example_call_tool.js deleted file mode 100644 index dbdee477c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_case_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetCaseDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_identifier": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_case_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_case_details_example_call_tool.py deleted file mode 100644 index ca4c8d3c6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_case_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetCaseDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_identifier': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_cloud_accounts_coverage_analysis_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_cloud_accounts_coverage_analysis_example_call_tool.js deleted file mode 100644 index f10b329eb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_cloud_accounts_coverage_analysis_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetCloudAccountsCoverageAnalysis"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_cloud_accounts_coverage_analysis_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_cloud_accounts_coverage_analysis_example_call_tool.py deleted file mode 100644 index 87c3865b2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_cloud_accounts_coverage_analysis_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetCloudAccountsCoverageAnalysis" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_cloud_workload_security_agent_rule_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_cloud_workload_security_agent_rule_details_example_call_tool.js deleted file mode 100644 index 4c347bae7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_cloud_workload_security_agent_rule_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetCloudWorkloadSecurityAgentRuleDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_rule_identifier": "rule-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_cloud_workload_security_agent_rule_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_cloud_workload_security_agent_rule_details_example_call_tool.py deleted file mode 100644 index 35d6163b2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_cloud_workload_security_agent_rule_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetCloudWorkloadSecurityAgentRuleDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_rule_identifier': 'rule-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_cloudflare_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_cloudflare_account_example_call_tool.js deleted file mode 100644 index 8e0083c8f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_cloudflare_account_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetCloudflareAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cloudflare_account_id": "123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_cloudflare_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_cloudflare_account_example_call_tool.py deleted file mode 100644 index 2252ed0e7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_cloudflare_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetCloudflareAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cloudflare_account_id': '123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_confluent_account_info_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_confluent_account_info_example_call_tool.js deleted file mode 100644 index ffcfc5d5e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_confluent_account_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetConfluentAccountInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "confluent_account_id": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_confluent_account_info_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_confluent_account_info_example_call_tool.py deleted file mode 100644 index 5b7bf3907..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_confluent_account_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetConfluentAccountInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'confluent_account_id': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_confluent_resource_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_confluent_resource_example_call_tool.js deleted file mode 100644 index b62b3074e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_confluent_resource_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetConfluentResource"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "confluent_account_id": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_confluent_resource_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_confluent_resource_example_call_tool.py deleted file mode 100644 index e236861f5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_confluent_resource_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetConfluentResource" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'confluent_account_id': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_csm_coverage_analysis_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_csm_coverage_analysis_example_call_tool.js deleted file mode 100644 index 964726fd2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_csm_coverage_analysis_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetCsmCoverageAnalysis"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_csm_coverage_analysis_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_csm_coverage_analysis_example_call_tool.py deleted file mode 100644 index 6c738eff4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_csm_coverage_analysis_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetCsmCoverageAnalysis" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_current_archive_order_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_current_archive_order_example_call_tool.js deleted file mode 100644 index be274b14d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_current_archive_order_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetCurrentArchiveOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_current_archive_order_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_current_archive_order_example_call_tool.py deleted file mode 100644 index a94d147e2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_current_archive_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetCurrentArchiveOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_custom_allocation_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_custom_allocation_rule_example_call_tool.js deleted file mode 100644 index bb0c91d50..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_custom_allocation_rule_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetCustomAllocationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_allocation_rule_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_custom_allocation_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_custom_allocation_rule_example_call_tool.py deleted file mode 100644 index 4ffa1d20a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_custom_allocation_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetCustomAllocationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_allocation_rule_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_custom_attribute_configs_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_custom_attribute_configs_example_call_tool.js deleted file mode 100644 index f5722bba3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_custom_attribute_configs_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetCustomAttributeConfigs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_type_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_custom_attribute_configs_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_custom_attribute_configs_example_call_tool.py deleted file mode 100644 index e7d1c43ab..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_custom_attribute_configs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetCustomAttributeConfigs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_type_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_custom_destination_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_custom_destination_example_call_tool.js deleted file mode 100644 index caef40c87..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_custom_destination_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetCustomDestination"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_destination_id": "dest123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_custom_destination_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_custom_destination_example_call_tool.py deleted file mode 100644 index f87c46bdf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_custom_destination_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetCustomDestination" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_destination_id': 'dest123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_custom_framework_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_custom_framework_example_call_tool.js deleted file mode 100644 index e469ae60c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_custom_framework_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetCustomFramework"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "framework_handle": "custom-framework-123", - "framework_version": "1.0.0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_custom_framework_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_custom_framework_example_call_tool.py deleted file mode 100644 index 649d4e76e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_custom_framework_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetCustomFramework" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'framework_handle': 'custom-framework-123', 'framework_version': '1.0.0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_datadog_channel_info_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_datadog_channel_info_example_call_tool.js deleted file mode 100644 index 0ddce6cc9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_datadog_channel_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetDatadogChannelInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "datadog_channel_name": "alerts", - "team_name": "DevOps", - "tenant_name": "CompanyA" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_datadog_channel_info_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_datadog_channel_info_example_call_tool.py deleted file mode 100644 index a82fb43e4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_datadog_channel_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetDatadogChannelInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'datadog_channel_name': 'alerts', 'team_name': 'DevOps', 'tenant_name': 'CompanyA' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_datadog_service_account_app_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_datadog_service_account_app_key_example_call_tool.js deleted file mode 100644 index b7f4f246a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_datadog_service_account_app_key_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetDatadogServiceAccountAppKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_key_id": "app_key_123", - "service_account_id": "service_account_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_datadog_service_account_app_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_datadog_service_account_app_key_example_call_tool.py deleted file mode 100644 index 5c5dbc6cc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_datadog_service_account_app_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetDatadogServiceAccountAppKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_key_id': 'app_key_123', 'service_account_id': 'service_account_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_device_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_device_details_example_call_tool.js deleted file mode 100644 index eb522170e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_device_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetDeviceDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "device_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_device_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_device_details_example_call_tool.py deleted file mode 100644 index 3ec80bc32..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_device_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetDeviceDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'device_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_device_interfaces_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_device_interfaces_example_call_tool.js deleted file mode 100644 index 78d84e28b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_device_interfaces_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetDeviceInterfaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "device_identifier": "device123", - "include_ip_addresses": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_device_interfaces_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_device_interfaces_example_call_tool.py deleted file mode 100644 index 57b0b1e20..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_device_interfaces_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetDeviceInterfaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'device_identifier': 'device123', 'include_ip_addresses': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_device_list_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_device_list_example_call_tool.js deleted file mode 100644 index 6c854202d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_device_list_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetDeviceList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_tag": "env:production", - "page_number": 1, - "page_size": 50, - "sort_devices_by": "name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_device_list_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_device_list_example_call_tool.py deleted file mode 100644 index 7b231d0af..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_device_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetDeviceList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_tag': 'env:production', 'page_number': 1, 'page_size': 50, 'sort_devices_by': 'name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_device_user_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_device_user_tags_example_call_tool.js deleted file mode 100644 index 4c79b749e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_device_user_tags_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetDeviceUserTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "device_identifier": "device-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_device_user_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_device_user_tags_example_call_tool.py deleted file mode 100644 index ff7713674..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_device_user_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetDeviceUserTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'device_identifier': 'device-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_domain_allowlist_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_domain_allowlist_example_call_tool.js deleted file mode 100644 index 74a3fabbc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_domain_allowlist_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetDomainAllowlist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_domain_allowlist_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_domain_allowlist_example_call_tool.py deleted file mode 100644 index c0d97ac4d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_domain_allowlist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetDomainAllowlist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_downtime_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_downtime_details_example_call_tool.js deleted file mode 100644 index e14f9f725..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_downtime_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetDowntimeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "downtime_id": "12345", - "include_related_resources": "created_by,monitor" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_downtime_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_downtime_details_example_call_tool.py deleted file mode 100644 index 184f49a63..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_downtime_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetDowntimeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'downtime_id': '12345', 'include_related_resources': 'created_by,monitor' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_error_tracking_issue_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_error_tracking_issue_details_example_call_tool.js deleted file mode 100644 index 8436898f2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_error_tracking_issue_details_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetErrorTrackingIssueDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_identifier": "12345", - "include_relationship_objects": [ - "related_events", - "error_metrics" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_error_tracking_issue_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_error_tracking_issue_details_example_call_tool.py deleted file mode 100644 index 22ac7a019..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_error_tracking_issue_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetErrorTrackingIssueDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_identifier': '12345', 'include_relationship_objects': ['related_events', 'error_metrics'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_estimated_cost_datadog_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_estimated_cost_datadog_example_call_tool.js deleted file mode 100644 index 6d36ada61..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_estimated_cost_datadog_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetEstimatedCostDatadog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cost_end_month": "2023-10", - "cost_view_level": "summary", - "include_connected_accounts": true, - "initial_cost_month": "2023-09" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_estimated_cost_datadog_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_estimated_cost_datadog_example_call_tool.py deleted file mode 100644 index 7239bcf6b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_estimated_cost_datadog_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetEstimatedCostDatadog" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cost_end_month': '2023-10', - 'cost_view_level': 'summary', - 'include_connected_accounts': True, - 'initial_cost_month': '2023-09' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_event_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_event_details_example_call_tool.js deleted file mode 100644 index 969c53806..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_event_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetEventDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_unique_id": "evt-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_event_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_event_details_example_call_tool.py deleted file mode 100644 index a69da59f8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_event_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetEventDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_unique_id': 'evt-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_fastly_account_info_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_fastly_account_info_example_call_tool.js deleted file mode 100644 index 80f5ea917..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_fastly_account_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetFastlyAccountInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fastly_account_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_fastly_account_info_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_fastly_account_info_example_call_tool.py deleted file mode 100644 index 366db7d5e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_fastly_account_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetFastlyAccountInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fastly_account_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_fastly_service_info_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_fastly_service_info_example_call_tool.js deleted file mode 100644 index 1e86f1545..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_fastly_service_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetFastlyServiceInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fastly_account_id": "123456", - "fastly_service_id": "abcde12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_fastly_service_info_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_fastly_service_info_example_call_tool.py deleted file mode 100644 index 2fea687eb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_fastly_service_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetFastlyServiceInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fastly_account_id': '123456', 'fastly_service_id': 'abcde12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_future_rule_suppressions_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_future_rule_suppressions_example_call_tool.js deleted file mode 100644 index 89d0a7b1e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_future_rule_suppressions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetFutureRuleSuppressions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"rule_id\":\"12345\",\"suppressions\":[{\"type\":\"temporary\",\"reason\":\"false positive\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_future_rule_suppressions_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_future_rule_suppressions_example_call_tool.py deleted file mode 100644 index 9e65de541..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_future_rule_suppressions_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetFutureRuleSuppressions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"rule_id":"12345","suppressions":[{"type":"temporary","reason":"false ' - 'positive"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_gcp_sts_delegate_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_gcp_sts_delegate_example_call_tool.js deleted file mode 100644 index 12767c450..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_gcp_sts_delegate_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetGcpStsDelegate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_gcp_sts_delegate_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_gcp_sts_delegate_example_call_tool.py deleted file mode 100644 index b60872815..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_gcp_sts_delegate_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetGcpStsDelegate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_gcp_usage_cost_config_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_gcp_usage_cost_config_example_call_tool.js deleted file mode 100644 index 1a31eb4f1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_gcp_usage_cost_config_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetGcpUsageCostConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cloud_account_identifier": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_gcp_usage_cost_config_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_gcp_usage_cost_config_example_call_tool.py deleted file mode 100644 index e6d72b9ac..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_gcp_usage_cost_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetGcpUsageCostConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cloud_account_identifier': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_hist_signal_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_hist_signal_details_example_call_tool.js deleted file mode 100644 index a73c85644..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_hist_signal_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetHistSignalDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "historical_signal_id": "signal_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_hist_signal_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_hist_signal_details_example_call_tool.py deleted file mode 100644 index 2afb282d4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_hist_signal_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetHistSignalDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'historical_signal_id': 'signal_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_historical_cost_by_org_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_historical_cost_by_org_example_call_tool.js deleted file mode 100644 index 2d212a56a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_historical_cost_by_org_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetHistoricalCostByOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "start_month_utc": "2023-01", - "cost_view_level": "sub-org", - "end_month": "2023-03", - "include_connected_accounts": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_historical_cost_by_org_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_historical_cost_by_org_example_call_tool.py deleted file mode 100644 index 46fd89a43..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_historical_cost_by_org_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetHistoricalCostByOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'start_month_utc': '2023-01', - 'cost_view_level': 'sub-org', - 'end_month': '2023-03', - 'include_connected_accounts': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_historical_job_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_historical_job_details_example_call_tool.js deleted file mode 100644 index efe71dc51..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_historical_job_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetHistoricalJobDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_historical_job_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_historical_job_details_example_call_tool.py deleted file mode 100644 index c56b6aabe..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_historical_job_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetHistoricalJobDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_historical_security_signals_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_historical_security_signals_example_call_tool.js deleted file mode 100644 index 8ae221961..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_historical_security_signals_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetHistoricalSecuritySignals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_identifier": "job_12345", - "max_security_signals": 10, - "minimum_timestamp": "2023-10-01T00:00:00Z", - "signal_sort_order": "-timestamp" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_historical_security_signals_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_historical_security_signals_example_call_tool.py deleted file mode 100644 index b2feb855c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_historical_security_signals_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetHistoricalSecuritySignals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_identifier': 'job_12345', - 'max_security_signals': 10, - 'minimum_timestamp': '2023-10-01T00:00:00Z', - 'signal_sort_order': '-timestamp' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_hourly_usage_by_product_family_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_hourly_usage_by_product_family_example_call_tool.js deleted file mode 100644 index 1b7b349bf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_hourly_usage_by_product_family_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetHourlyUsageByProductFamily"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_families_to_retrieve": "all", - "start_timestamp": "2023-10-05T14", - "end_timestamp": "2023-10-05T15", - "include_connected_accounts": true, - "maximum_results_limit": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_hourly_usage_by_product_family_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_hourly_usage_by_product_family_example_call_tool.py deleted file mode 100644 index e104be305..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_hourly_usage_by_product_family_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetHourlyUsageByProductFamily" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_families_to_retrieve': 'all', - 'start_timestamp': '2023-10-05T14', - 'end_timestamp': '2023-10-05T15', - 'include_connected_accounts': True, - 'maximum_results_limit': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_incident_attachments_example_call_tool.js deleted file mode 100644 index f6b7177aa..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_attachments_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetIncidentAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_uuid": "123e4567-e89b-12d3-a456-426614174000", - "attachment_types_to_include": [ - "image/png", - "application/pdf" - ], - "include_related_objects": [ - "user", - "tags" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_incident_attachments_example_call_tool.py deleted file mode 100644 index f7f96ca5f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_attachments_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetIncidentAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'attachment_types_to_include': ['image/png', 'application/pdf'], - 'include_related_objects': ['user', 'tags'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_incident_details_example_call_tool.js deleted file mode 100644 index 11222b557..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_details_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetIncidentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_uuid": "123e4567-e89b-12d3-a456-426614174000", - "include_related_objects": [ - "users", - "logs" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_incident_details_example_call_tool.py deleted file mode 100644 index c2efd9d1d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetIncidentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'include_related_objects': ['users', 'logs'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_impacts_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_incident_impacts_example_call_tool.js deleted file mode 100644 index 339dae193..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_impacts_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetIncidentImpacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_uuid": "123e4567-e89b-12d3-a456-426614174000", - "include_related_resources": [ - "servers", - "databases" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_impacts_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_incident_impacts_example_call_tool.py deleted file mode 100644 index 8e79c2569..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_impacts_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetIncidentImpacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'include_related_resources': ['servers', 'databases'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_integration_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_incident_integration_details_example_call_tool.js deleted file mode 100644 index d3150fc20..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_integration_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetIncidentIntegrationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_integration_metadata_uuid": "123e4567-e89b-12d3-a456-426614174000", - "incident_uuid": "987e6543-e21b-12d3-a456-426614174001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_integration_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_incident_integration_details_example_call_tool.py deleted file mode 100644 index a8ed0e2a4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_integration_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetIncidentIntegrationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_integration_metadata_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'incident_uuid': '987e6543-e21b-12d3-a456-426614174001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_integrations_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_incident_integrations_example_call_tool.js deleted file mode 100644 index cfb369e2f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_integrations_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetIncidentIntegrations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_integrations_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_incident_integrations_example_call_tool.py deleted file mode 100644 index e75831e96..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_integrations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetIncidentIntegrations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_incident_notification_rule_example_call_tool.js deleted file mode 100644 index 320f8ec17..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_notification_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetIncidentNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_rule_id": "12345", - "include_resources": "created_by_user,last_modified_by_user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_incident_notification_rule_example_call_tool.py deleted file mode 100644 index 8146b223c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_notification_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetIncidentNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_rule_id': '12345', 'include_resources': 'created_by_user,last_modified_by_user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_notification_template_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_incident_notification_template_example_call_tool.js deleted file mode 100644 index ece678ca8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_notification_template_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetIncidentNotificationTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "template_id": "12345", - "include_relationships": "created_by_user,last_modified_by_user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_notification_template_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_incident_notification_template_example_call_tool.py deleted file mode 100644 index edfeae97d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_notification_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetIncidentNotificationTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'template_id': '12345', 'include_relationships': 'created_by_user,last_modified_by_user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_todo_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_incident_todo_details_example_call_tool.js deleted file mode 100644 index 10519d073..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_todo_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetIncidentTodoDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_todo_uuid": "123e4567-e89b-12d3-a456-426614174000", - "incident_uuid": "987e6543-e21b-12d3-a456-426614174001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_todo_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_incident_todo_details_example_call_tool.py deleted file mode 100644 index 508140c44..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_todo_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetIncidentTodoDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_todo_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'incident_uuid': '987e6543-e21b-12d3-a456-426614174001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_type_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_incident_type_details_example_call_tool.js deleted file mode 100644 index e98eef50f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_type_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetIncidentTypeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_type_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_type_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_incident_type_details_example_call_tool.py deleted file mode 100644 index f300eadfb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_type_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetIncidentTypeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_type_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_types_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_incident_types_example_call_tool.js deleted file mode 100644 index 111aa11bf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_types_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetIncidentTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_deleted": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_incident_types_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_incident_types_example_call_tool.py deleted file mode 100644 index 3ffef36a0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_incident_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetIncidentTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_deleted': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_ip_allowlist_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_ip_allowlist_example_call_tool.js deleted file mode 100644 index 0a5856366..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_ip_allowlist_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetIpAllowlist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_ip_allowlist_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_ip_allowlist_example_call_tool.py deleted file mode 100644 index 14de5705d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_ip_allowlist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetIpAllowlist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_log_based_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_log_based_metric_example_call_tool.js deleted file mode 100644 index f7b256eab..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_log_based_metric_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetLogBasedMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "log_based_metric_name": "error_count" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_log_based_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_log_based_metric_example_call_tool.py deleted file mode 100644 index 9c2178ca2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_log_based_metric_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetLogBasedMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'log_based_metric_name': 'error_count' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_logs_metrics_list_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_logs_metrics_list_example_call_tool.js deleted file mode 100644 index 0b777bd6d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_logs_metrics_list_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetLogsMetricsList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_logs_metrics_list_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_logs_metrics_list_example_call_tool.py deleted file mode 100644 index e3fa65fd6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_logs_metrics_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetLogsMetricsList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_metric_tag_cardinality_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_metric_tag_cardinality_example_call_tool.js deleted file mode 100644 index 2e7d3ce9b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_metric_tag_cardinality_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetMetricTagCardinality"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metric_name": "system.cpu.usage" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_metric_tag_cardinality_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_metric_tag_cardinality_example_call_tool.py deleted file mode 100644 index 70e5e8d93..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_metric_tag_cardinality_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetMetricTagCardinality" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metric_name': 'system.cpu.usage' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_metric_tag_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_metric_tag_configuration_example_call_tool.js deleted file mode 100644 index a4dd86ba0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_metric_tag_configuration_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetMetricTagConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metric_name": "system.cpu.idle" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_metric_tag_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_metric_tag_configuration_example_call_tool.py deleted file mode 100644 index 2a014c3c4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_metric_tag_configuration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetMetricTagConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metric_name': 'system.cpu.idle' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_configuration_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_monitor_configuration_policy_example_call_tool.js deleted file mode 100644 index fb3f85ebb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_configuration_policy_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetMonitorConfigurationPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "monitor_policy_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_configuration_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_monitor_configuration_policy_example_call_tool.py deleted file mode 100644 index 35b134bd1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_configuration_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetMonitorConfigurationPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'monitor_policy_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_monitor_notification_rule_example_call_tool.js deleted file mode 100644 index 7f956dde2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_notification_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetMonitorNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "monitor_rule_id": "12345", - "include_related_resources": "created_by,updated_by" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_monitor_notification_rule_example_call_tool.py deleted file mode 100644 index 30cbe0597..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_notification_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetMonitorNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'monitor_rule_id': '12345', 'include_related_resources': 'created_by,updated_by' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_notification_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_monitor_notification_rules_example_call_tool.js deleted file mode 100644 index 873d4a2dd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_notification_rules_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetMonitorNotificationRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_criteria": "{\"text\":\"error\",\"tags\":[\"env:production\"],\"recipients\":[\"team@example.com\"]}", - "include_related_resources": "created_by", - "number_of_rules_per_page": 50, - "sort_order": "name:asc", - "starting_page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_notification_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_monitor_notification_rules_example_call_tool.py deleted file mode 100644 index ac17e4b71..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_notification_rules_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetMonitorNotificationRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_criteria': '{"text":"error","tags":["env:production"],"recipients":["team@example.com"]}', - 'include_related_resources': 'created_by', - 'number_of_rules_per_page': 50, - 'sort_order': 'name:asc', - 'starting_page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_user_template_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_monitor_user_template_example_call_tool.js deleted file mode 100644 index 2e798d713..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_user_template_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetMonitorUserTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "template_id": "12345", - "include_all_versions": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_user_template_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_monitor_user_template_example_call_tool.py deleted file mode 100644 index 045050ade..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_monitor_user_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetMonitorUserTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'template_id': '12345', 'include_all_versions': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_ms_teams_workflow_webhook_name_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_ms_teams_workflow_webhook_name_example_call_tool.js deleted file mode 100644 index 48dd5d365..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_ms_teams_workflow_webhook_name_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetMsTeamsWorkflowWebhookName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workflow_webhook_handle_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_ms_teams_workflow_webhook_name_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_ms_teams_workflow_webhook_name_example_call_tool.py deleted file mode 100644 index 20e753634..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_ms_teams_workflow_webhook_name_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetMsTeamsWorkflowWebhookName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workflow_webhook_handle_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_okta_account_info_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_okta_account_info_example_call_tool.js deleted file mode 100644 index 4dfef16d3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_okta_account_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetOktaAccountInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "okta_account_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_okta_account_info_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_okta_account_info_example_call_tool.py deleted file mode 100644 index a928cd706..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_okta_account_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetOktaAccountInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'okta_account_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_on_call_escalation_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_on_call_escalation_policy_example_call_tool.js deleted file mode 100644 index eef6a2ed6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_on_call_escalation_policy_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetOnCallEscalationPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "escalation_policy_id": "policy_12345", - "include_relationships": "teams,steps" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_on_call_escalation_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_on_call_escalation_policy_example_call_tool.py deleted file mode 100644 index 1b073e2a3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_on_call_escalation_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetOnCallEscalationPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'escalation_policy_id': 'policy_12345', 'include_relationships': 'teams,steps' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_on_call_schedule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_on_call_schedule_example_call_tool.js deleted file mode 100644 index 1219734bc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_on_call_schedule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetOnCallSchedule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "schedule_id": "abc123", - "include_relationships": "teams,layers" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_on_call_schedule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_on_call_schedule_example_call_tool.py deleted file mode 100644 index 889b96b56..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_on_call_schedule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetOnCallSchedule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'schedule_id': 'abc123', 'include_relationships': 'teams,layers' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_on_call_user_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_on_call_user_example_call_tool.js deleted file mode 100644 index e1eb8e47c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_on_call_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetOnCallUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "schedule_id": "abc123", - "include_related_resources": "user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_on_call_user_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_on_call_user_example_call_tool.py deleted file mode 100644 index 9c1049ab2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_on_call_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetOnCallUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'schedule_id': 'abc123', 'include_related_resources': 'user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_on_demand_concurrency_cap_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_on_demand_concurrency_cap_example_call_tool.js deleted file mode 100644 index 8e6a94c2f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_on_demand_concurrency_cap_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetOnDemandConcurrencyCap"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_on_demand_concurrency_cap_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_on_demand_concurrency_cap_example_call_tool.py deleted file mode 100644 index b3ba9c438..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_on_demand_concurrency_cap_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetOnDemandConcurrencyCap" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_opsgenie_service_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_opsgenie_service_example_call_tool.js deleted file mode 100644 index 45c55df3f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_opsgenie_service_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetOpsgenieService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_opsgenie_service_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_opsgenie_service_example_call_tool.py deleted file mode 100644 index a076d2b4b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_opsgenie_service_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetOpsgenieService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_organization_config_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_organization_config_details_example_call_tool.js deleted file mode 100644 index 25d8da81c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_organization_config_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetOrganizationConfigDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_config_name": "my_org_config" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_organization_config_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_organization_config_details_example_call_tool.py deleted file mode 100644 index 7145a9157..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_organization_config_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetOrganizationConfigDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_config_name': 'my_org_config' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_organization_role_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_organization_role_example_call_tool.js deleted file mode 100644 index 80b807dd2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_organization_role_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetOrganizationRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "role_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_organization_role_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_organization_role_example_call_tool.py deleted file mode 100644 index 756a282c4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_organization_role_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetOrganizationRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'role_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_powerpack_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_powerpack_example_call_tool.js deleted file mode 100644 index 163aab595..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_powerpack_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetPowerpack"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "powerpack_identifier": "pp12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_powerpack_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_powerpack_example_call_tool.py deleted file mode 100644 index d7cbfc415..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_powerpack_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetPowerpack" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'powerpack_identifier': 'pp12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_project_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_project_details_example_call_tool.js deleted file mode 100644 index 0b9a05cde..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_project_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetProjectDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_project_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_project_details_example_call_tool.py deleted file mode 100644 index bf4e6a028..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_project_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetProjectDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_projected_cost_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_projected_cost_example_call_tool.js deleted file mode 100644 index a09cf3674..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_projected_cost_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetProjectedCost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cost_view_level": "sub-org", - "include_connected_accounts": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_projected_cost_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_projected_cost_example_call_tool.py deleted file mode 100644 index 313b08e7f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_projected_cost_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetProjectedCost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cost_view_level': 'sub-org', 'include_connected_accounts': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_reference_table_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_reference_table_example_call_tool.js deleted file mode 100644 index f54c50bc1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_reference_table_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetReferenceTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "reference_table_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_reference_table_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_reference_table_example_call_tool.py deleted file mode 100644 index 9edfb485c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_reference_table_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetReferenceTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'reference_table_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_restriction_query_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_restriction_query_example_call_tool.js deleted file mode 100644 index bbd7e9df3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_restriction_query_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetRestrictionQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "restriction_query_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_restriction_query_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_restriction_query_example_call_tool.py deleted file mode 100644 index ccf50954b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_restriction_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetRestrictionQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'restriction_query_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_restriction_query_roles_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_restriction_query_roles_example_call_tool.js deleted file mode 100644 index a3367bee6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_restriction_query_roles_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetRestrictionQueryRoles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "restriction_query_id": "rq-12345", - "page_number": 1, - "page_size": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_restriction_query_roles_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_restriction_query_roles_example_call_tool.py deleted file mode 100644 index 823677d78..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_restriction_query_roles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetRestrictionQueryRoles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'restriction_query_id': 'rq-12345', 'page_number': 1, 'page_size': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_role_restriction_query_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_role_restriction_query_example_call_tool.js deleted file mode 100644 index ed305500a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_role_restriction_query_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetRoleRestrictionQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "role_id": "admin_role_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_role_restriction_query_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_role_restriction_query_example_call_tool.py deleted file mode 100644 index 4672f4fab..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_role_restriction_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetRoleRestrictionQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'role_id': 'admin_role_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_rule_version_history_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_rule_version_history_example_call_tool.js deleted file mode 100644 index 1ee186ee8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_rule_version_history_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetRuleVersionHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "rule_id": "12345", - "page_number": 1, - "page_size": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_rule_version_history_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_rule_version_history_example_call_tool.py deleted file mode 100644 index d5e114ee2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_rule_version_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetRuleVersionHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'rule_id': '12345', 'page_number': 1, 'page_size': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_rum_application_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_rum_application_by_id_example_call_tool.js deleted file mode 100644 index 681708fb7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_rum_application_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetRumApplicationById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "rum_application_id": "app-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_rum_application_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_rum_application_by_id_example_call_tool.py deleted file mode 100644 index 6f6f801cf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_rum_application_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetRumApplicationById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'rum_application_id': 'app-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_rum_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_rum_metric_example_call_tool.js deleted file mode 100644 index efccaa4e1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_rum_metric_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetRumMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metric_identifier": "rum.metric.12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_rum_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_rum_metric_example_call_tool.py deleted file mode 100644 index ec5b04cdb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_rum_metric_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetRumMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metric_identifier': 'rum.metric.12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_rum_retention_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_rum_retention_filter_example_call_tool.js deleted file mode 100644 index c414b8e69..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_rum_retention_filter_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetRumRetentionFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "retention_filter_id": "filter123", - "rum_application_id": "app456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_rum_retention_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_rum_retention_filter_example_call_tool.py deleted file mode 100644 index 07563f0d0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_rum_retention_filter_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetRumRetentionFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'retention_filter_id': 'filter123', 'rum_application_id': 'app456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_rum_retention_filters_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_rum_retention_filters_example_call_tool.js deleted file mode 100644 index 9072470d6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_rum_retention_filters_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetRumRetentionFilters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "rum_application_id": "app-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_rum_retention_filters_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_rum_retention_filters_example_call_tool.py deleted file mode 100644 index 5024795b7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_rum_retention_filters_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetRumRetentionFilters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'rum_application_id': 'app-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_security_filter_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_security_filter_details_example_call_tool.js deleted file mode 100644 index 4d7bbc231..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_security_filter_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetSecurityFilterDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "security_filter_id": "filter_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_security_filter_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_security_filter_details_example_call_tool.py deleted file mode 100644 index 8239187b0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_security_filter_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetSecurityFilterDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'security_filter_id': 'filter_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_security_finding_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_security_finding_example_call_tool.js deleted file mode 100644 index 4179794bd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_security_finding_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetSecurityFinding"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "finding_id": "fnd-12345", - "snapshot_unix_timestamp": 1690000000000 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_security_finding_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_security_finding_example_call_tool.py deleted file mode 100644 index fb5d89fda..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_security_finding_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetSecurityFinding" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'finding_id': 'fnd-12345', 'snapshot_unix_timestamp': 1690000000000 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_security_monitoring_rule_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_security_monitoring_rule_details_example_call_tool.js deleted file mode 100644 index 442d2de10..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_security_monitoring_rule_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetSecurityMonitoringRuleDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "security_rule_id": "rule-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_security_monitoring_rule_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_security_monitoring_rule_details_example_call_tool.py deleted file mode 100644 index f97a1460e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_security_monitoring_rule_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetSecurityMonitoringRuleDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'security_rule_id': 'rule-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_security_signal_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_security_signal_details_example_call_tool.js deleted file mode 100644 index 22183a8a6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_security_signal_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetSecuritySignalDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "signal_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_security_signal_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_security_signal_details_example_call_tool.py deleted file mode 100644 index bd25779d3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_security_signal_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetSecuritySignalDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'signal_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_serverless_coverage_analysis_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_serverless_coverage_analysis_example_call_tool.js deleted file mode 100644 index be73d474f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_serverless_coverage_analysis_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetServerlessCoverageAnalysis"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_serverless_coverage_analysis_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_serverless_coverage_analysis_example_call_tool.py deleted file mode 100644 index 4a9aa967b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_serverless_coverage_analysis_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetServerlessCoverageAnalysis" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_service_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_service_definition_example_call_tool.js deleted file mode 100644 index 7495d23eb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_service_definition_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetServiceDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_name": "my-service", - "desired_schema_version": "v2" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_service_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_service_definition_example_call_tool.py deleted file mode 100644 index f004c27e5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_service_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetServiceDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_name': 'my-service', 'desired_schema_version': 'v2' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_service_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_service_definitions_example_call_tool.js deleted file mode 100644 index 73a750c6c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_service_definitions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetServiceDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number": 1, - "page_size": 50, - "response_schema_version": "v2" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_service_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_service_definitions_example_call_tool.py deleted file mode 100644 index 6cd00aa57..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_service_definitions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetServiceDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number': 1, 'page_size': 50, 'response_schema_version': 'v2' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_single_team_info_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_single_team_info_example_call_tool.js deleted file mode 100644 index 888697b93..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_single_team_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetSingleTeamInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "team_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_single_team_info_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_single_team_info_example_call_tool.py deleted file mode 100644 index 0a140a7d0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_single_team_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetSingleTeamInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': 'team_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_slo_report_status_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_slo_report_status_example_call_tool.js deleted file mode 100644 index 86602db20..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_slo_report_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetSloReportStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "slo_report_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_slo_report_status_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_slo_report_status_example_call_tool.py deleted file mode 100644 index cd9779f47..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_slo_report_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetSloReportStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'slo_report_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_span_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_span_metric_example_call_tool.js deleted file mode 100644 index a0cba8b0a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_span_metric_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetSpanMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metric_name": "span.request.duration" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_span_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_span_metric_example_call_tool.py deleted file mode 100644 index 4640fc17c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_span_metric_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetSpanMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metric_name': 'span.request.duration' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_spark_job_recommendations_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_spark_job_recommendations_example_call_tool.js deleted file mode 100644 index 43f204e0e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_spark_job_recommendations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetSparkJobRecommendations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "spark_job_service_name": "data-processing", - "spark_job_shard_identifier": "shard-1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_spark_job_recommendations_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_spark_job_recommendations_example_call_tool.py deleted file mode 100644 index 2788f0a21..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_spark_job_recommendations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetSparkJobRecommendations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'spark_job_service_name': 'data-processing', 'spark_job_shard_identifier': 'shard-1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_specific_logs_archive_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_specific_logs_archive_example_call_tool.js deleted file mode 100644 index 4f1ce0c36..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_specific_logs_archive_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetSpecificLogsArchive"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "archive_id": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_specific_logs_archive_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_specific_logs_archive_example_call_tool.py deleted file mode 100644 index 538e4b4e2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_specific_logs_archive_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetSpecificLogsArchive" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'archive_id': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_specific_pipeline_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_specific_pipeline_by_id_example_call_tool.js deleted file mode 100644 index 1c788989d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_specific_pipeline_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetSpecificPipelineById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pipeline_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_specific_pipeline_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_specific_pipeline_by_id_example_call_tool.py deleted file mode 100644 index f3da003e2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_specific_pipeline_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetSpecificPipelineById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pipeline_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_suppression_rule_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_suppression_rule_details_example_call_tool.js deleted file mode 100644 index 8f56786cb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_suppression_rule_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetSuppressionRuleDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "suppression_rule_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_suppression_rule_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_suppression_rule_details_example_call_tool.py deleted file mode 100644 index 0071b3dc9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_suppression_rule_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetSuppressionRuleDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'suppression_rule_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_suppressions_for_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_suppressions_for_rule_example_call_tool.js deleted file mode 100644 index 0880ea8f5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_suppressions_for_rule_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetSuppressionsForRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "rule_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_suppressions_for_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_suppressions_for_rule_example_call_tool.py deleted file mode 100644 index 5a35586df..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_suppressions_for_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetSuppressionsForRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'rule_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_table_rows_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_table_rows_by_id_example_call_tool.js deleted file mode 100644 index 6247a02a5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_table_rows_by_id_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetTableRowsById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "reference_table_id": "12345", - "row_ids_to_retrieve": [ - "row1", - "row2", - "row3" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_table_rows_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_table_rows_by_id_example_call_tool.py deleted file mode 100644 index b53751433..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_table_rows_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetTableRowsById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'reference_table_id': '12345', 'row_ids_to_retrieve': ['row1', 'row2', 'row3'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_tag_pipeline_ruleset_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_tag_pipeline_ruleset_example_call_tool.js deleted file mode 100644 index c94a6b13e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_tag_pipeline_ruleset_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetTagPipelineRuleset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ruleset_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_tag_pipeline_ruleset_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_tag_pipeline_ruleset_example_call_tool.py deleted file mode 100644 index 2ca28a80d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_tag_pipeline_ruleset_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetTagPipelineRuleset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ruleset_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_team_link_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_team_link_example_call_tool.js deleted file mode 100644 index 4b9dd6324..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_team_link_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetTeamLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "link_id": "link123", - "team_id": "team456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_team_link_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_team_link_example_call_tool.py deleted file mode 100644 index 9edad723d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_team_link_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetTeamLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'link_id': 'link123', 'team_id': 'team456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_team_members_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_team_members_example_call_tool.js deleted file mode 100644 index 966b3566a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_team_members_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetTeamMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "12345", - "page_number": 1, - "page_size": 10, - "search_query": "john.doe@example.com", - "sort_order": "name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_team_members_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_team_members_example_call_tool.py deleted file mode 100644 index 93fb5e5d5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_team_members_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetTeamMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': '12345', - 'page_number': 1, - 'page_size': 10, - 'search_query': 'john.doe@example.com', - 'sort_order': 'name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_team_on_call_routing_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_team_on_call_routing_rules_example_call_tool.js deleted file mode 100644 index 316b70460..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_team_on_call_routing_rules_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetTeamOnCallRoutingRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_identifier": "team-123", - "include_relationships": "rules" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_team_on_call_routing_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_team_on_call_routing_rules_example_call_tool.py deleted file mode 100644 index d2db88b13..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_team_on_call_routing_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetTeamOnCallRoutingRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_identifier': 'team-123', 'include_relationships': 'rules' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_team_on_call_users_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_team_on_call_users_example_call_tool.js deleted file mode 100644 index 33d2a1b2a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_team_on_call_users_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetTeamOnCallUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "team-123", - "include_relationships": "responders,escalations" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_team_on_call_users_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_team_on_call_users_example_call_tool.py deleted file mode 100644 index 7080d18fd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_team_on_call_users_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetTeamOnCallUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': 'team-123', 'include_relationships': 'responders,escalations' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_team_permission_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_team_permission_settings_example_call_tool.js deleted file mode 100644 index bed6d20d4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_team_permission_settings_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetTeamPermissionSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_identifier": "team-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_team_permission_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_team_permission_settings_example_call_tool.py deleted file mode 100644 index 3e58d31e7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_team_permission_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetTeamPermissionSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_identifier': 'team-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_teams_integration_info_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_teams_integration_info_example_call_tool.js deleted file mode 100644 index 4e98ae572..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_teams_integration_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetTeamsIntegrationInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_handle_id": "tenant123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_teams_integration_info_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_teams_integration_info_example_call_tool.py deleted file mode 100644 index 5ff0756b9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_teams_integration_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetTeamsIntegrationInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_handle_id': 'tenant123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_threat_protection_agent_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_threat_protection_agent_rule_example_call_tool.js deleted file mode 100644 index c1dba0d17..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_threat_protection_agent_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetThreatProtectionAgentRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_rule_id": "12345", - "agent_policy_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_threat_protection_agent_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_threat_protection_agent_rule_example_call_tool.py deleted file mode 100644 index 6582c345b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_threat_protection_agent_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetThreatProtectionAgentRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_rule_id': '12345', 'agent_policy_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_user_application_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_user_application_key_example_call_tool.js deleted file mode 100644 index afcf73746..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_user_application_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetUserApplicationKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_key_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_user_application_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_user_application_key_example_call_tool.py deleted file mode 100644 index fd1f9188a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_user_application_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetUserApplicationKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_key_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_user_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_user_details_example_call_tool.js deleted file mode 100644 index 6fbcbddd2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_user_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetUserDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_user_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_user_details_example_call_tool.py deleted file mode 100644 index 1bf988488..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_user_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetUserDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_user_invitation_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_user_invitation_example_call_tool.js deleted file mode 100644 index fb3d27c76..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_user_invitation_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetUserInvitation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_invitation_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_user_invitation_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_user_invitation_example_call_tool.py deleted file mode 100644 index 6f61f60e7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_user_invitation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetUserInvitation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_invitation_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_user_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_user_memberships_example_call_tool.js deleted file mode 100644 index f5e6031a5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_user_memberships_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetUserMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_user_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_user_memberships_example_call_tool.py deleted file mode 100644 index 40d3bb9ac..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_user_memberships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetUserMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_user_organizations_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_user_organizations_example_call_tool.js deleted file mode 100644 index b50a1ac66..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_user_organizations_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetUserOrganizations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "user_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_user_organizations_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_user_organizations_example_call_tool.py deleted file mode 100644 index 5f60badc8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_user_organizations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetUserOrganizations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'user_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_user_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_user_permissions_example_call_tool.js deleted file mode 100644 index 7e96561da..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_user_permissions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetUserPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "user@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_user_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_user_permissions_example_call_tool.py deleted file mode 100644 index 036513a8c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_user_permissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetUserPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'user@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_user_restriction_queries_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_user_restriction_queries_example_call_tool.js deleted file mode 100644 index ed758b7e5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_user_restriction_queries_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetUserRestrictionQueries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "user_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_user_restriction_queries_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_user_restriction_queries_example_call_tool.py deleted file mode 100644 index d9910bda3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_user_restriction_queries_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetUserRestrictionQueries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'user_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_waf_custom_rule_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_waf_custom_rule_by_id_example_call_tool.js deleted file mode 100644 index 2d5947a72..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_waf_custom_rule_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetWafCustomRuleById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_rule_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_waf_custom_rule_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_waf_custom_rule_by_id_example_call_tool.py deleted file mode 100644 index 59173a8b5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_waf_custom_rule_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetWafCustomRuleById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_rule_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_waf_exclusion_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_waf_exclusion_filter_example_call_tool.js deleted file mode 100644 index 5c8ec2cd7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_waf_exclusion_filter_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetWafExclusionFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "waf_exclusion_filter_id": "filter123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_waf_exclusion_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_waf_exclusion_filter_example_call_tool.py deleted file mode 100644 index 0a2d2eba5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_waf_exclusion_filter_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetWafExclusionFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'waf_exclusion_filter_id': 'filter123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_workflow_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_workflow_by_id_example_call_tool.js deleted file mode 100644 index bab81e277..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_workflow_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetWorkflowById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workflow_identifier": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_workflow_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_workflow_by_id_example_call_tool.py deleted file mode 100644 index 55fcef0a2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_workflow_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetWorkflowById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workflow_identifier': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_workflow_instance_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_workflow_instance_example_call_tool.js deleted file mode 100644 index 3757a565c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_workflow_instance_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetWorkflowInstance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workflow_id": "12345", - "workflow_instance_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_workflow_instance_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_workflow_instance_example_call_tool.py deleted file mode 100644 index cf0bb8670..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_workflow_instance_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetWorkflowInstance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workflow_id': '12345', 'workflow_instance_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_workload_protection_policy_details_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/get_workload_protection_policy_details_example_call_tool.js deleted file mode 100644 index 7adf95fbe..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_workload_protection_policy_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.GetWorkloadProtectionPolicyDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_policy_id": "wp-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/get_workload_protection_policy_details_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/get_workload_protection_policy_details_example_call_tool.py deleted file mode 100644 index e1cf6c288..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/get_workload_protection_policy_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.GetWorkloadProtectionPolicyDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_policy_id': 'wp-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_active_metric_configurations_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_active_metric_configurations_example_call_tool.js deleted file mode 100644 index b10f45fac..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_active_metric_configurations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListActiveMetricConfigurations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metric_name": "cpu_usage", - "lookback_seconds": 86400 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_active_metric_configurations_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_active_metric_configurations_example_call_tool.py deleted file mode 100644 index 6a0d0056b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_active_metric_configurations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListActiveMetricConfigurations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metric_name': 'cpu_usage', 'lookback_seconds': 86400 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_all_containers_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_all_containers_example_call_tool.js deleted file mode 100644 index 72d66026d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_all_containers_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListAllContainers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "container_sort_attribute": "creation_date", - "filter_by_tags": "env:production,team:backend", - "maximum_results_returned": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_all_containers_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_all_containers_example_call_tool.py deleted file mode 100644 index 211d51056..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_all_containers_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListAllContainers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'container_sort_attribute': 'creation_date', - 'filter_by_tags': 'env:production,team:backend', - 'maximum_results_returned': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_all_csm_agents_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_all_csm_agents_example_call_tool.js deleted file mode 100644 index 7c721213c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_all_csm_agents_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListAllCsmAgents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_query": "hostname:COMP-T2H4J27423", - "page_size": 10, - "results_sort_direction": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_all_csm_agents_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_all_csm_agents_example_call_tool.py deleted file mode 100644 index 58f4fbbd5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_all_csm_agents_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListAllCsmAgents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_query': 'hostname:COMP-T2H4J27423', 'page_size': 10, 'results_sort_direction': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_all_member_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_all_member_teams_example_call_tool.js deleted file mode 100644 index b30c01eb2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_all_member_teams_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListAllMemberTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "super_team_identifier": "super_team_123", - "fields_to_fetch": [ - "name", - "id" - ], - "page_number": 1, - "page_size": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_all_member_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_all_member_teams_example_call_tool.py deleted file mode 100644 index 37fcf08ab..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_all_member_teams_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListAllMemberTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'super_team_identifier': 'super_team_123', - 'fields_to_fetch': ['name', 'id'], - 'page_number': 1, - 'page_size': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_all_organization_processes_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_all_organization_processes_example_call_tool.js deleted file mode 100644 index c5121513c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_all_organization_processes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListAllOrganizationProcesses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_tags": "env:production,team:backend", - "max_results_per_page": 50, - "search_string_for_processes": "webserver" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_all_organization_processes_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_all_organization_processes_example_call_tool.py deleted file mode 100644 index af435486a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_all_organization_processes_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListAllOrganizationProcesses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_tags': 'env:production,team:backend', - 'max_results_per_page': 50, - 'search_string_for_processes': 'webserver' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_all_organization_users_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_all_organization_users_example_call_tool.js deleted file mode 100644 index ef56ed2fb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_all_organization_users_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListAllOrganizationUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "order_users_by": "name", - "page_number": 1, - "page_size": 50, - "sort_direction": "asc", - "user_filter_string": "john", - "user_status_filter": "Active,Disabled" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_all_organization_users_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_all_organization_users_example_call_tool.py deleted file mode 100644 index 80ab10a1d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_all_organization_users_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListAllOrganizationUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'order_users_by': 'name', - 'page_number': 1, - 'page_size': 50, - 'sort_direction': 'asc', - 'user_filter_string': 'john', - 'user_status_filter': 'Active,Disabled' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_api_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_api_keys_example_call_tool.js deleted file mode 100644 index 86184b805..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_api_keys_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListApiKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "api_key_filter": "test-key", - "created_after_date_filter": "2023-01-01", - "filter_api_keys_by_category": "production", - "filter_by_remote_config_read_enabled": true, - "page_size": 50, - "sort_by_attribute": "created_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_api_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_api_keys_example_call_tool.py deleted file mode 100644 index 6943083c0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_api_keys_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListApiKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'api_key_filter': 'test-key', - 'created_after_date_filter': '2023-01-01', - 'filter_api_keys_by_category': 'production', - 'filter_by_remote_config_read_enabled': True, - 'page_size': 50, - 'sort_by_attribute': 'created_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_app_key_registrations_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_app_key_registrations_example_call_tool.js deleted file mode 100644 index 89c7641aa..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_app_key_registrations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListAppKeyRegistrations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_app_key_registrations_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_app_key_registrations_example_call_tool.py deleted file mode 100644 index 441937cbd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_app_key_registrations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListAppKeyRegistrations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_application_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_application_keys_example_call_tool.js deleted file mode 100644 index 9aade474f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_application_keys_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListApplicationKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_after_date": "2023-01-01", - "filter_application_keys": "test", - "page_number": 1, - "sort_keys_by_attribute": "-created_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_application_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_application_keys_example_call_tool.py deleted file mode 100644 index b7333f794..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_application_keys_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListApplicationKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_after_date': '2023-01-01', - 'filter_application_keys': 'test', - 'page_number': 1, - 'sort_keys_by_attribute': '-created_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_apps_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_apps_example_call_tool.js deleted file mode 100644 index 9dc2b8862..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_apps_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListApps"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_app_name": "MyApp", - "filter_by_creator_email": "creator@example.com", - "filter_by_tags": "tag1,tag2", - "include_published_apps": true, - "page_number": 1, - "page_size": 10, - "sort_fields_and_directions": [ - "name:asc", - "created_at:desc" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_apps_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_apps_example_call_tool.py deleted file mode 100644 index 3b42c2a8d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_apps_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListApps" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_app_name': 'MyApp', - 'filter_by_creator_email': 'creator@example.com', - 'filter_by_tags': 'tag1,tag2', - 'include_published_apps': True, - 'page_number': 1, - 'page_size': 10, - 'sort_fields_and_directions': ['name:asc', 'created_at:desc'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_authn_mappings_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_authn_mappings_example_call_tool.js deleted file mode 100644 index 0d9166fcd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_authn_mappings_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListAuthnMappings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_authn_mappings": "admin", - "filter_by_resource_type": "team", - "page_number": 1, - "page_size": 50, - "sort_authn_mappings_by": "created_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_authn_mappings_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_authn_mappings_example_call_tool.py deleted file mode 100644 index 28ad4d8fa..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_authn_mappings_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListAuthnMappings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_authn_mappings': 'admin', - 'filter_by_resource_type': 'team', - 'page_number': 1, - 'page_size': 50, - 'sort_authn_mappings_by': 'created_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_aws_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_aws_accounts_example_call_tool.js deleted file mode 100644 index 0c1eb5cdb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_aws_accounts_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListAwsAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_aws_account_id": "123456789012" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_aws_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_aws_accounts_example_call_tool.py deleted file mode 100644 index 1e86acbc2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_aws_accounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListAwsAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_aws_account_id': '123456789012' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_aws_cur_configs_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_aws_cur_configs_example_call_tool.js deleted file mode 100644 index 1a65a7cd6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_aws_cur_configs_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListAwsCurConfigs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_aws_cur_configs_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_aws_cur_configs_example_call_tool.py deleted file mode 100644 index 82adc57eb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_aws_cur_configs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListAwsCurConfigs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_aws_logs_services_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_aws_logs_services_example_call_tool.js deleted file mode 100644 index e7e7a9619..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_aws_logs_services_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListAwsLogsServices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_aws_logs_services_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_aws_logs_services_example_call_tool.py deleted file mode 100644 index 9531a837a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_aws_logs_services_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListAwsLogsServices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_azure_configs_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_azure_configs_example_call_tool.js deleted file mode 100644 index c4d80c9fc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_azure_configs_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListAzureConfigs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_azure_configs_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_azure_configs_example_call_tool.py deleted file mode 100644 index b5b708ab3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_azure_configs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListAzureConfigs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_budgets_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_budgets_example_call_tool.js deleted file mode 100644 index fa329712d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_budgets_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListBudgets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_budgets_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_budgets_example_call_tool.py deleted file mode 100644 index 6622481f3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_budgets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListBudgets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_catalog_entity_relations_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_catalog_entity_relations_example_call_tool.js deleted file mode 100644 index 6491fb06b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_catalog_entity_relations_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListCatalogEntityRelations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_first_entity_reference": "serviceA", - "filter_relations_by_second_entity_reference": "serviceB", - "include_relationship_data": "entity", - "maximum_relations_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_catalog_entity_relations_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_catalog_entity_relations_example_call_tool.py deleted file mode 100644 index 1ba208985..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_catalog_entity_relations_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListCatalogEntityRelations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_first_entity_reference': 'serviceA', - 'filter_relations_by_second_entity_reference': 'serviceB', - 'include_relationship_data': 'entity', - 'maximum_relations_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_catalog_kinds_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_catalog_kinds_example_call_tool.js deleted file mode 100644 index a21191d37..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_catalog_kinds_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListCatalogKinds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_entity_name": "service", - "max_kinds_in_response": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_catalog_kinds_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_catalog_kinds_example_call_tool.py deleted file mode 100644 index 56c1570f0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_catalog_kinds_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListCatalogKinds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_entity_name': 'service', 'max_kinds_in_response': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_ci_pipeline_events_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_ci_pipeline_events_example_call_tool.js deleted file mode 100644 index 4ca8c2572..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_ci_pipeline_events_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListCiPipelineEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_order": "-timestamp", - "max_events_response": 10, - "search_query": "status:success" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_ci_pipeline_events_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_ci_pipeline_events_example_call_tool.py deleted file mode 100644 index c6ee7bb7c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_ci_pipeline_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListCiPipelineEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_order': '-timestamp', 'max_events_response': 10, 'search_query': 'status:success' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_ci_test_events_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_ci_test_events_example_call_tool.js deleted file mode 100644 index e4624da5a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_ci_test_events_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListCiTestEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_events_in_response": 10, - "search_query": "status:failed", - "sort_order": "-timestamp" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_ci_test_events_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_ci_test_events_example_call_tool.py deleted file mode 100644 index 5ad5e588f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_ci_test_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListCiTestEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_events_in_response': 10, 'search_query': 'status:failed', 'sort_order': '-timestamp' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_cloud_workload_security_agent_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_cloud_workload_security_agent_rules_example_call_tool.js deleted file mode 100644 index 7f7dabd01..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_cloud_workload_security_agent_rules_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListCloudWorkloadSecurityAgentRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_cloud_workload_security_agent_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_cloud_workload_security_agent_rules_example_call_tool.py deleted file mode 100644 index 781d1034b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_cloud_workload_security_agent_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListCloudWorkloadSecurityAgentRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_cloudflare_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_cloudflare_accounts_example_call_tool.js deleted file mode 100644 index ee7832f24..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_cloudflare_accounts_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListCloudflareAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_cloudflare_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_cloudflare_accounts_example_call_tool.py deleted file mode 100644 index c36d4403b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_cloudflare_accounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListCloudflareAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_confluent_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_confluent_accounts_example_call_tool.js deleted file mode 100644 index 4f0e18aaa..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_confluent_accounts_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListConfluentAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_confluent_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_confluent_accounts_example_call_tool.py deleted file mode 100644 index a676469ec..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_confluent_accounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListConfluentAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_container_images_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_container_images_example_call_tool.js deleted file mode 100644 index de20db999..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_container_images_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListContainerImages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_tags": "latest,production", - "max_results_per_page": 10, - "sort_container_images_by": "name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_container_images_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_container_images_example_call_tool.py deleted file mode 100644 index 4d6ed4ca3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_container_images_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListContainerImages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_tags': 'latest,production', 'max_results_per_page': 10, 'sort_container_images_by': 'name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_custom_allocation_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_custom_allocation_rules_example_call_tool.js deleted file mode 100644 index 017d0f2a2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_custom_allocation_rules_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListCustomAllocationRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_custom_allocation_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_custom_allocation_rules_example_call_tool.py deleted file mode 100644 index 64244ef79..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_custom_allocation_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListCustomAllocationRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_custom_costs_files_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_custom_costs_files_example_call_tool.js deleted file mode 100644 index a566726ed..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_custom_costs_files_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListCustomCostsFiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_file_status": "active", - "page_number": 1, - "pagination_page_size": 10, - "sort_key": "-created_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_custom_costs_files_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_custom_costs_files_example_call_tool.py deleted file mode 100644 index 89c3d4788..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_custom_costs_files_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListCustomCostsFiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_file_status': 'active', - 'page_number': 1, - 'pagination_page_size': 10, - 'sort_key': '-created_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_custom_log_destinations_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_custom_log_destinations_example_call_tool.js deleted file mode 100644 index 6e7cbac3d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_custom_log_destinations_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListCustomLogDestinations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_custom_log_destinations_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_custom_log_destinations_example_call_tool.py deleted file mode 100644 index b94d99501..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_custom_log_destinations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListCustomLogDestinations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_datadog_datastores_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_datadog_datastores_example_call_tool.js deleted file mode 100644 index cba053665..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_datadog_datastores_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListDatadogDatastores"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_datadog_datastores_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_datadog_datastores_example_call_tool.py deleted file mode 100644 index 933b57d9d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_datadog_datastores_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListDatadogDatastores" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_datadog_events_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_datadog_events_example_call_tool.js deleted file mode 100644 index 898841710..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_datadog_events_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListDatadogEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_search_query": "status:error", - "maximum_events_per_page": 50, - "sort_order": "-timestamp" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_datadog_events_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_datadog_events_example_call_tool.py deleted file mode 100644 index e869cfcc3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_datadog_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListDatadogEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_search_query': 'status:error', 'maximum_events_per_page': 50, 'sort_order': '-timestamp' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_datastore_items_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_datastore_items_example_call_tool.js deleted file mode 100644 index b3815da2e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_datastore_items_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListDatastoreItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "datastore_identifier": "my_datastore", - "item_limit_per_page": 10, - "pagination_offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_datastore_items_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_datastore_items_example_call_tool.py deleted file mode 100644 index 087eca10a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_datastore_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListDatastoreItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'datastore_identifier': 'my_datastore', 'item_limit_per_page': 10, 'pagination_offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_fastly_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_fastly_accounts_example_call_tool.js deleted file mode 100644 index 29cd9d90e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_fastly_accounts_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListFastlyAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_fastly_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_fastly_accounts_example_call_tool.py deleted file mode 100644 index 70bacf3c8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_fastly_accounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListFastlyAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_fastly_services_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_fastly_services_example_call_tool.js deleted file mode 100644 index d1601d3dd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_fastly_services_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListFastlyServices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fastly_account_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_fastly_services_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_fastly_services_example_call_tool.py deleted file mode 100644 index d8dde568b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_fastly_services_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListFastlyServices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fastly_account_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_findings_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_findings_example_call_tool.js deleted file mode 100644 index f80f77152..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_findings_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListFindings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_resource_type": "aws", - "filter_evaluation_status": "fail", - "include_detailed_findings": true, - "max_findings_limit": 100, - "status_filter": "critical" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_findings_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_findings_example_call_tool.py deleted file mode 100644 index 781a39ead..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_findings_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListFindings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_resource_type': 'aws', - 'filter_evaluation_status': 'fail', - 'include_detailed_findings': True, - 'max_findings_limit': 100, - 'status_filter': 'critical' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_gcp_sts_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_gcp_sts_accounts_example_call_tool.js deleted file mode 100644 index 84e29258e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_gcp_sts_accounts_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListGcpStsAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_gcp_sts_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_gcp_sts_accounts_example_call_tool.py deleted file mode 100644 index 6d955246d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_gcp_sts_accounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListGcpStsAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_gcp_usage_cost_configs_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_gcp_usage_cost_configs_example_call_tool.js deleted file mode 100644 index 0f45844eb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_gcp_usage_cost_configs_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListGcpUsageCostConfigs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_gcp_usage_cost_configs_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_gcp_usage_cost_configs_example_call_tool.py deleted file mode 100644 index 71b802675..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_gcp_usage_cost_configs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListGcpUsageCostConfigs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_historical_jobs_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_historical_jobs_example_call_tool.js deleted file mode 100644 index 9b61440e7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_historical_jobs_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListHistoricalJobs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_query": "status:success", - "page_number": 1, - "page_size": 50, - "sort_order": "descending" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_historical_jobs_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_historical_jobs_example_call_tool.py deleted file mode 100644 index f384ef6dc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_historical_jobs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListHistoricalJobs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_query': 'status:success', 'page_number': 1, 'page_size': 50, 'sort_order': 'descending' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_incident_notification_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_incident_notification_rules_example_call_tool.js deleted file mode 100644 index 9dbc37185..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_incident_notification_rules_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListIncidentNotificationRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resources_to_include": "created_by_user,last_modified_by_user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_incident_notification_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_incident_notification_rules_example_call_tool.py deleted file mode 100644 index c141b5539..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_incident_notification_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListIncidentNotificationRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resources_to_include': 'created_by_user,last_modified_by_user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_incident_notification_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_incident_notification_templates_example_call_tool.js deleted file mode 100644 index da0419043..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_incident_notification_templates_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListIncidentNotificationTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_type_id_filter": "12345", - "include_relationships": "created_by_user,last_modified_by_user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_incident_notification_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_incident_notification_templates_example_call_tool.py deleted file mode 100644 index 42fce91be..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_incident_notification_templates_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListIncidentNotificationTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_type_id_filter': '12345', - 'include_relationships': 'created_by_user,last_modified_by_user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_incident_todos_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_incident_todos_example_call_tool.js deleted file mode 100644 index 0cdae4ddf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_incident_todos_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListIncidentTodos"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_incident_todos_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_incident_todos_example_call_tool.py deleted file mode 100644 index 95241186f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_incident_todos_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListIncidentTodos" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_latest_spans_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_latest_spans_example_call_tool.js deleted file mode 100644 index 361361dce..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_latest_spans_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListLatestSpans"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_spans_limit": 10, - "minimum_timestamp": "2023-10-01T00:00:00Z", - "span_search_query": "service:my-service" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_latest_spans_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_latest_spans_example_call_tool.py deleted file mode 100644 index 4c9810b90..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_latest_spans_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListLatestSpans" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_spans_limit': 10, - 'minimum_timestamp': '2023-10-01T00:00:00Z', - 'span_search_query': 'service:my-service' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_logs_archives_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_logs_archives_example_call_tool.js deleted file mode 100644 index f61a4a889..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_logs_archives_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListLogsArchives"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_logs_archives_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_logs_archives_example_call_tool.py deleted file mode 100644 index c07238c3c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_logs_archives_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListLogsArchives" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_logs_example_call_tool.js deleted file mode 100644 index 4ce69f561..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_logs_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "indexes_to_search": [ - "logs_index" - ], - "maximum_logs_in_response": 50, - "minimum_time": "1633036800000", - "search_query": "error", - "sort_order": "-timestamp", - "query_timezone": "UTC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_logs_example_call_tool.py deleted file mode 100644 index 6be59694f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_logs_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'indexes_to_search': ['logs_index'], - 'maximum_logs_in_response': 50, - 'minimum_time': '1633036800000', - 'search_query': 'error', - 'sort_order': '-timestamp', - 'query_timezone': 'UTC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_logs_matching_query_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_logs_matching_query_example_call_tool.js deleted file mode 100644 index 5000344c9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_logs_matching_query_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListLogsMatchingQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maximum_logs_in_response": 100, - "minimum_timestamp_for_logs": "2023-01-01T00:00:00Z", - "search_query": "error", - "sort_order": "-timestamp" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_logs_matching_query_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_logs_matching_query_example_call_tool.py deleted file mode 100644 index f128a8c7c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_logs_matching_query_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListLogsMatchingQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maximum_logs_in_response': 100, - 'minimum_timestamp_for_logs': '2023-01-01T00:00:00Z', - 'search_query': 'error', - 'sort_order': '-timestamp' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_metric_assets_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_metric_assets_example_call_tool.js deleted file mode 100644 index f2872383a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_metric_assets_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListMetricAssets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metric_name": "system.cpu.idle" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_metric_assets_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_metric_assets_example_call_tool.py deleted file mode 100644 index 4799b7649..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_metric_assets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListMetricAssets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metric_name': 'system.cpu.idle' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_metric_tag_configurations_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_metric_tag_configurations_example_call_tool.js deleted file mode 100644 index 0aa9592e0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_metric_tag_configurations_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListMetricTagConfigurations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_query_status": true, - "filter_metrics_by_tags": "env:production", - "filter_metrics_used_in_assets": false, - "filter_tag_configurations": "tag1:value1", - "include_metrics_with_configured_tags": true, - "look_back_seconds": 7200, - "max_results_per_page": 50, - "metric_type_filter": "distribution", - "pagination_cursor": null -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_metric_tag_configurations_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_metric_tag_configurations_example_call_tool.py deleted file mode 100644 index cc98f46eb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_metric_tag_configurations_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListMetricTagConfigurations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_query_status': True, - 'filter_metrics_by_tags': 'env:production', - 'filter_metrics_used_in_assets': False, - 'filter_tag_configurations': 'tag1:value1', - 'include_metrics_with_configured_tags': True, - 'look_back_seconds': 7200, - 'max_results_per_page': 50, - 'metric_type_filter': 'distribution', - 'pagination_cursor': None -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_metric_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_metric_tags_example_call_tool.js deleted file mode 100644 index bac3d472a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_metric_tags_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListMetricTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metric_name": "system.cpu.usage" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_metric_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_metric_tags_example_call_tool.py deleted file mode 100644 index 182652bac..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_metric_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListMetricTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metric_name': 'system.cpu.usage' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_metric_volumes_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_metric_volumes_example_call_tool.js deleted file mode 100644 index 37a2426ec..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_metric_volumes_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListMetricVolumes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "metric_name": "CPU_Usage" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_metric_volumes_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_metric_volumes_example_call_tool.py deleted file mode 100644 index a2b2c6a59..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_metric_volumes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListMetricVolumes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'metric_name': 'CPU_Usage' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_monitor_config_policies_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_monitor_config_policies_example_call_tool.js deleted file mode 100644 index f2538a947..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_monitor_config_policies_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListMonitorConfigPolicies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_monitor_config_policies_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_monitor_config_policies_example_call_tool.py deleted file mode 100644 index 8dad13a11..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_monitor_config_policies_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListMonitorConfigPolicies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_monitor_downtimes_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_monitor_downtimes_example_call_tool.js deleted file mode 100644 index 79440eb9a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_monitor_downtimes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListMonitorDowntimes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "monitor_id": 12345, - "maximum_downtime_count": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_monitor_downtimes_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_monitor_downtimes_example_call_tool.py deleted file mode 100644 index c2095a6ee..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_monitor_downtimes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListMonitorDowntimes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'monitor_id': 12345, 'maximum_downtime_count': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_ms_teams_workflow_webhooks_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_ms_teams_workflow_webhooks_example_call_tool.js deleted file mode 100644 index 038eb6619..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_ms_teams_workflow_webhooks_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListMsTeamsWorkflowWebhooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_handle_name": "exampleWebhook" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_ms_teams_workflow_webhooks_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_ms_teams_workflow_webhooks_example_call_tool.py deleted file mode 100644 index 76b27a950..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_ms_teams_workflow_webhooks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListMsTeamsWorkflowWebhooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_handle_name': 'exampleWebhook' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_okta_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_okta_accounts_example_call_tool.js deleted file mode 100644 index 1c8c23b37..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_okta_accounts_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListOktaAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_okta_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_okta_accounts_example_call_tool.py deleted file mode 100644 index 7d85e1515..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_okta_accounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListOktaAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_opsgenie_services_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_opsgenie_services_example_call_tool.js deleted file mode 100644 index 75f8c2803..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_opsgenie_services_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListOpsgenieServices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_opsgenie_services_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_opsgenie_services_example_call_tool.py deleted file mode 100644 index 21631bd3b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_opsgenie_services_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListOpsgenieServices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_org_configs_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_org_configs_example_call_tool.js deleted file mode 100644 index 73abb8d21..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_org_configs_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListOrgConfigs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_org_configs_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_org_configs_example_call_tool.py deleted file mode 100644 index 6433f5a8f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_org_configs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListOrgConfigs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_org_connections_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_org_connections_example_call_tool.js deleted file mode 100644 index 5dac8262b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_org_connections_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListOrgConnections"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entry_limit": 100, - "pagination_offset": 0, - "source_organization_id": "org_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_org_connections_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_org_connections_example_call_tool.py deleted file mode 100644 index 12f0783c0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_org_connections_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListOrgConnections" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entry_limit': 100, 'pagination_offset': 0, 'source_organization_id': 'org_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_organization_incidents_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_organization_incidents_example_call_tool.js deleted file mode 100644 index 976056c0d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_organization_incidents_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListOrganizationIncidents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_related_objects": [ - "alerts", - "logs" - ], - "page_offset": 0, - "page_size": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_organization_incidents_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_organization_incidents_example_call_tool.py deleted file mode 100644 index 8bafe1be6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_organization_incidents_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListOrganizationIncidents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_related_objects': ['alerts', 'logs'], 'page_offset': 0, 'page_size': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_permissions_example_call_tool.js deleted file mode 100644 index b384f4a9a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_permissions_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_permissions_example_call_tool.py deleted file mode 100644 index 3a6de5b73..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_permissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_pipelines_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_pipelines_example_call_tool.js deleted file mode 100644 index 13b77b83e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_pipelines_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListPipelines"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number": 1, - "page_size": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_pipelines_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_pipelines_example_call_tool.py deleted file mode 100644 index f9dc57748..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_pipelines_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListPipelines" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number': 1, 'page_size': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_powerpacks_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_powerpacks_example_call_tool.js deleted file mode 100644 index a0ad8e8f9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_powerpacks_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListPowerpacks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_powerpacks_limit": 10, - "page_offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_powerpacks_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_powerpacks_example_call_tool.py deleted file mode 100644 index 829426892..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_powerpacks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListPowerpacks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_powerpacks_limit': 10, 'page_offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_reference_tables_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_reference_tables_example_call_tool.js deleted file mode 100644 index 0e7e1086a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_reference_tables_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListReferenceTables"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exact_table_name_filter": "users", - "filter_by_table_status": "active", - "number_of_tables_to_return": 10, - "sort_field_and_direction": "-updated_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_reference_tables_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_reference_tables_example_call_tool.py deleted file mode 100644 index 6b6790c37..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_reference_tables_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListReferenceTables" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exact_table_name_filter': 'users', - 'filter_by_table_status': 'active', - 'number_of_tables_to_return': 10, - 'sort_field_and_direction': '-updated_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_resource_filters_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_resource_filters_example_call_tool.js deleted file mode 100644 index feb686119..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_resource_filters_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListResourceFilters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cloud_provider_account_id": "123456789012", - "cloud_provider_filter": "aws", - "skip_cache_for_resource_filters": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_resource_filters_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_resource_filters_example_call_tool.py deleted file mode 100644 index 1a86deb60..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_resource_filters_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListResourceFilters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cloud_provider_account_id': '123456789012', - 'cloud_provider_filter': 'aws', - 'skip_cache_for_resource_filters': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_restriction_queries_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_restriction_queries_example_call_tool.js deleted file mode 100644 index b6fec63f5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_restriction_queries_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListRestrictionQueries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number": 1, - "page_size": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_restriction_queries_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_restriction_queries_example_call_tool.py deleted file mode 100644 index 5e0afbad5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_restriction_queries_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListRestrictionQueries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number': 1, 'page_size': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_role_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_role_permissions_example_call_tool.js deleted file mode 100644 index fd1941b57..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_role_permissions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListRolePermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "role_identifier": "admin" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_role_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_role_permissions_example_call_tool.py deleted file mode 100644 index c62e5f13a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_role_permissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListRolePermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'role_identifier': 'admin' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_role_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_role_templates_example_call_tool.js deleted file mode 100644 index 0f10dbbc3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_role_templates_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListRoleTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_role_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_role_templates_example_call_tool.py deleted file mode 100644 index 31084d0a6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_role_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListRoleTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_role_users_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_role_users_example_call_tool.js deleted file mode 100644 index 7bc74eee2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_role_users_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListRoleUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "role_identifier": "admin", - "page_number": 1, - "page_size": 50, - "user_sort_order": "name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_role_users_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_role_users_example_call_tool.py deleted file mode 100644 index 7e8941780..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_role_users_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListRoleUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'role_identifier': 'admin', 'page_number': 1, 'page_size': 50, 'user_sort_order': 'name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_rum_applications_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_rum_applications_example_call_tool.js deleted file mode 100644 index 1be519889..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_rum_applications_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListRumApplications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_rum_applications_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_rum_applications_example_call_tool.py deleted file mode 100644 index 96354e591..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_rum_applications_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListRumApplications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_rum_events_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_rum_events_example_call_tool.js deleted file mode 100644 index 7ad1dee41..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_rum_events_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListRumEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_sort_order": "-timestamp", - "maximum_event_count": 10, - "rum_search_query": "error" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_rum_events_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_rum_events_example_call_tool.py deleted file mode 100644 index ec99c5f03..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_rum_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListRumEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_sort_order': '-timestamp', 'maximum_event_count': 10, 'rum_search_query': 'error' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_rum_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_rum_metrics_example_call_tool.js deleted file mode 100644 index e3191aefd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_rum_metrics_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListRumMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_rum_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_rum_metrics_example_call_tool.py deleted file mode 100644 index a4b322ff0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_rum_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListRumMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_scanning_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_scanning_groups_example_call_tool.js deleted file mode 100644 index a00883288..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_scanning_groups_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListScanningGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_scanning_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_scanning_groups_example_call_tool.py deleted file mode 100644 index 962b03cb2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_scanning_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListScanningGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_scheduled_downtimes_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_scheduled_downtimes_example_call_tool.js deleted file mode 100644 index 685d9485d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_scheduled_downtimes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListScheduledDowntimes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_resources_in_response": "created_by,monitor", - "max_downtimes_in_response": 10, - "return_current_downtimes_only": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_scheduled_downtimes_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_scheduled_downtimes_example_call_tool.py deleted file mode 100644 index a7889db9e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_scheduled_downtimes_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListScheduledDowntimes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_resources_in_response': 'created_by,monitor', - 'max_downtimes_in_response': 10, - 'return_current_downtimes_only': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_security_filters_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_security_filters_example_call_tool.js deleted file mode 100644 index a55bad464..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_security_filters_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListSecurityFilters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_security_filters_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_security_filters_example_call_tool.py deleted file mode 100644 index 0757a587a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_security_filters_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListSecurityFilters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_security_monitoring_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_security_monitoring_rules_example_call_tool.js deleted file mode 100644 index fdc653127..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_security_monitoring_rules_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListSecurityMonitoringRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number": 1, - "page_size": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_security_monitoring_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_security_monitoring_rules_example_call_tool.py deleted file mode 100644 index ca9b2c44c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_security_monitoring_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListSecurityMonitoringRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number': 1, 'page_size': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_security_monitoring_signals_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_security_monitoring_signals_example_call_tool.js deleted file mode 100644 index e111b3731..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_security_monitoring_signals_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListSecurityMonitoringSignals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_security_signals": 50, - "maximum_timestamp_for_signals": "2023-10-01T00:00:00Z", - "minimum_timestamp": "2023-09-01T00:00:00Z", - "search_query": "malware", - "sort_order": "-timestamp" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_security_monitoring_signals_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_security_monitoring_signals_example_call_tool.py deleted file mode 100644 index add3bdf33..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_security_monitoring_signals_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListSecurityMonitoringSignals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_security_signals': 50, - 'maximum_timestamp_for_signals': '2023-10-01T00:00:00Z', - 'minimum_timestamp': '2023-09-01T00:00:00Z', - 'search_query': 'malware', - 'sort_order': '-timestamp' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_security_signals_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_security_signals_example_call_tool.js deleted file mode 100644 index ddc285802..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_security_signals_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListSecuritySignals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query_for_security_signals": "malware", - "max_security_signals_response": 10, - "result_sort_order": "-timestamp" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_security_signals_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_security_signals_example_call_tool.py deleted file mode 100644 index b9e2113a8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_security_signals_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListSecuritySignals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query_for_security_signals': 'malware', - 'max_security_signals_response': 10, - 'result_sort_order': '-timestamp' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_serverless_agents_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_serverless_agents_example_call_tool.js deleted file mode 100644 index 4d58747bb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_serverless_agents_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListServerlessAgents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_query": "hostname:COMP-T2H4J27423", - "items_per_page": 10, - "page_index": 0, - "sort_direction": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_serverless_agents_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_serverless_agents_example_call_tool.py deleted file mode 100644 index b25e640f5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_serverless_agents_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListServerlessAgents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_query': 'hostname:COMP-T2H4J27423', - 'items_per_page': 10, - 'page_index': 0, - 'sort_direction': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_service_account_app_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_service_account_app_keys_example_call_tool.js deleted file mode 100644 index 670fdd581..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_service_account_app_keys_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListServiceAccountAppKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_account_id": "12345", - "created_at_start_filter": "2023-01-01", - "page_number": 1, - "page_size": 50, - "sort_order_attribute": "-created_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_service_account_app_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_service_account_app_keys_example_call_tool.py deleted file mode 100644 index d85f18266..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_service_account_app_keys_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListServiceAccountAppKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_account_id': '12345', - 'created_at_start_filter': '2023-01-01', - 'page_number': 1, - 'page_size': 50, - 'sort_order_attribute': '-created_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_software_catalog_entities_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_software_catalog_entities_example_call_tool.js deleted file mode 100644 index 38a9fa91e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_software_catalog_entities_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListSoftwareCatalogEntities"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exclude_snapshotted_entities": "true", - "filter_by_kind": "library", - "max_entities_per_page": 10, - "pagination_offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_software_catalog_entities_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_software_catalog_entities_example_call_tool.py deleted file mode 100644 index 16879246f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_software_catalog_entities_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListSoftwareCatalogEntities" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exclude_snapshotted_entities': 'true', - 'filter_by_kind': 'library', - 'max_entities_per_page': 10, - 'pagination_offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_span_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_span_metrics_example_call_tool.js deleted file mode 100644 index 11b75135b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_span_metrics_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListSpanMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_span_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_span_metrics_example_call_tool.py deleted file mode 100644 index 4bcd728a1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_span_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListSpanMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_spans_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_spans_example_call_tool.js deleted file mode 100644 index 64700aaba..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_spans_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListSpans"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_time_filter": "2023-10-01T12:00:00Z", - "max_number_of_spans": 100, - "minimum_time_filter": "2023-10-01T00:00:00Z", - "pagination_cursor": "cursor123", - "resource_type": "search_request", - "sort_order_for_spans": "-timestamp", - "span_search_query": "service:my-service", - "time_offset_seconds": 3600, - "timezone_option": "UTC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_spans_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_spans_example_call_tool.py deleted file mode 100644 index 98b682f5b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_spans_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListSpans" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_time_filter': '2023-10-01T12:00:00Z', - 'max_number_of_spans': 100, - 'minimum_time_filter': '2023-10-01T00:00:00Z', - 'pagination_cursor': 'cursor123', - 'resource_type': 'search_request', - 'sort_order_for_spans': '-timestamp', - 'span_search_query': 'service:my-service', - 'time_offset_seconds': 3600, - 'timezone_option': 'UTC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_standard_patterns_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_standard_patterns_example_call_tool.js deleted file mode 100644 index 6b3f47178..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_standard_patterns_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListStandardPatterns"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_standard_patterns_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_standard_patterns_example_call_tool.py deleted file mode 100644 index 38b3ec60e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_standard_patterns_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListStandardPatterns" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_suppression_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_suppression_rules_example_call_tool.js deleted file mode 100644 index bf3c77dd4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_suppression_rules_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListSuppressionRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "suppression_query_string": "status:active" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_suppression_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_suppression_rules_example_call_tool.py deleted file mode 100644 index c38328581..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_suppression_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListSuppressionRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'suppression_query_string': 'status:active' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_tag_pipeline_rulesets_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_tag_pipeline_rulesets_example_call_tool.js deleted file mode 100644 index 47555908d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_tag_pipeline_rulesets_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListTagPipelineRulesets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_tag_pipeline_rulesets_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_tag_pipeline_rulesets_example_call_tool.py deleted file mode 100644 index 59ec6050f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_tag_pipeline_rulesets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListTagPipelineRulesets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_teams_example_call_tool.js deleted file mode 100644 index a0aec197d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_teams_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fields_to_fetch": [ - "name", - "id" - ], - "include_only_user_teams": true, - "page_number": 1, - "page_size": 10, - "search_query_for_teams": "dev", - "sort_order": "name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_teams_example_call_tool.py deleted file mode 100644 index edfd81078..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_teams_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fields_to_fetch': ['name', 'id'], - 'include_only_user_teams': True, - 'page_number': 1, - 'page_size': 10, - 'search_query_for_teams': 'dev', - 'sort_order': 'name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_tenant_based_handles_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_tenant_based_handles_example_call_tool.js deleted file mode 100644 index d03ba649b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_tenant_based_handles_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListTenantBasedHandles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_handle_name": "example_handle", - "tenant_identifier": "tenant_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_tenant_based_handles_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_tenant_based_handles_example_call_tool.py deleted file mode 100644 index fa33404f9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_tenant_based_handles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListTenantBasedHandles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_handle_name': 'example_handle', 'tenant_identifier': 'tenant_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_user_app_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_user_app_keys_example_call_tool.js deleted file mode 100644 index 805e44241..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_user_app_keys_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListUserAppKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_after_date": "2023-01-01", - "filter_by_string": "api", - "page_number": 1, - "page_size": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_user_app_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_user_app_keys_example_call_tool.py deleted file mode 100644 index c9788201c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_user_app_keys_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListUserAppKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_after_date': '2023-01-01', 'filter_by_string': 'api', 'page_number': 1, 'page_size': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_user_roles_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_user_roles_example_call_tool.js deleted file mode 100644 index bb51dd416..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_user_roles_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListUserRoles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number": 1, - "page_size": 50, - "role_filter_string": "admin", - "sort_roles_by": "-name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_user_roles_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_user_roles_example_call_tool.py deleted file mode 100644 index 657507afb..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_user_roles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListUserRoles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number': 1, 'page_size': 50, 'role_filter_string': 'admin', 'sort_roles_by': '-name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_waf_custom_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_waf_custom_rules_example_call_tool.js deleted file mode 100644 index 76613284d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_waf_custom_rules_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListWafCustomRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_waf_custom_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_waf_custom_rules_example_call_tool.py deleted file mode 100644 index 21bb5688c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_waf_custom_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListWafCustomRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_waf_exclusion_filters_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_waf_exclusion_filters_example_call_tool.js deleted file mode 100644 index aafd33dd9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_waf_exclusion_filters_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListWafExclusionFilters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_waf_exclusion_filters_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_waf_exclusion_filters_example_call_tool.py deleted file mode 100644 index c76de6fc4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_waf_exclusion_filters_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListWafExclusionFilters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_workflow_instances_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_workflow_instances_example_call_tool.js deleted file mode 100644 index effddce29..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_workflow_instances_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListWorkflowInstances"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workflow_id": "12345", - "page_number": 1, - "page_size": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_workflow_instances_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_workflow_instances_example_call_tool.py deleted file mode 100644 index 6a8aab5a5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_workflow_instances_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListWorkflowInstances" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workflow_id': '12345', 'page_number': 1, 'page_size': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_workload_protection_agent_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_workload_protection_agent_rules_example_call_tool.js deleted file mode 100644 index eb9fb2818..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_workload_protection_agent_rules_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListWorkloadProtectionAgentRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_policy_id": "policy_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_workload_protection_agent_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_workload_protection_agent_rules_example_call_tool.py deleted file mode 100644 index cea7d1a07..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_workload_protection_agent_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListWorkloadProtectionAgentRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_policy_id': 'policy_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_workload_protection_policies_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/list_workload_protection_policies_example_call_tool.js deleted file mode 100644 index 15027c921..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_workload_protection_policies_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ListWorkloadProtectionPolicies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/list_workload_protection_policies_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/list_workload_protection_policies_example_call_tool.py deleted file mode 100644 index 0617fc99a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/list_workload_protection_policies_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ListWorkloadProtectionPolicies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/manage_budget_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/manage_budget_example_call_tool.js deleted file mode 100644 index c1a51fae0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/manage_budget_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ManageBudget"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"budget_name\":\"Q1 Marketing\",\"amount\":5000,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/manage_budget_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/manage_budget_example_call_tool.py deleted file mode 100644 index a7352fe90..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/manage_budget_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ManageBudget" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"budget_name":"Q1 Marketing","amount":5000,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/manage_incident_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/manage_incident_attachments_example_call_tool.js deleted file mode 100644 index 4a31953be..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/manage_incident_attachments_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ManageIncidentAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_uuid": "123e4567-e89b-12d3-a456-426614174000", - "related_objects_inclusion": [ - "attachments" - ], - "request_body": "{\"attachments\":[{\"file_name\":\"example.txt\",\"file_content\":\"[file_content]\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/manage_incident_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/manage_incident_attachments_example_call_tool.py deleted file mode 100644 index 4b3a9b506..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/manage_incident_attachments_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ManageIncidentAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'related_objects_inclusion': ['attachments'], - 'request_body': '{"attachments":[{"file_name":"example.txt","file_content":"[file_content]"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/manage_software_catalog_entity_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/manage_software_catalog_entity_example_call_tool.js deleted file mode 100644 index cc607f268..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/manage_software_catalog_entity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ManageSoftwareCatalogEntity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Sample Entity\",\"type\":\"service\",\"description\":\"This is a sample service entity.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/manage_software_catalog_entity_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/manage_software_catalog_entity_example_call_tool.py deleted file mode 100644 index 61b2c1576..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/manage_software_catalog_entity_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ManageSoftwareCatalogEntity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Sample Entity","type":"service","description":"This is a sample ' - 'service entity."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/order_rum_retention_filters_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/order_rum_retention_filters_example_call_tool.js deleted file mode 100644 index 170d3a0ea..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/order_rum_retention_filters_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.OrderRumRetentionFilters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "rum_application_id": "app123", - "request_body": "{\"filters\":[{\"id\":\"filter1\",\"order\":1},{\"id\":\"filter2\",\"order\":2}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/order_rum_retention_filters_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/order_rum_retention_filters_example_call_tool.py deleted file mode 100644 index 6294bd725..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/order_rum_retention_filters_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.OrderRumRetentionFilters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'rum_application_id': 'app123', - 'request_body': '{"filters":[{"id":"filter1","order":1},{"id":"filter2","order":2}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/publish_app_on_datadog_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/publish_app_on_datadog_example_call_tool.js deleted file mode 100644 index d71106ffc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/publish_app_on_datadog_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.PublishAppOnDatadog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "app_id_of_app_to_publish": "app-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/publish_app_on_datadog_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/publish_app_on_datadog_example_call_tool.py deleted file mode 100644 index 2f1108d76..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/publish_app_on_datadog_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.PublishAppOnDatadog" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'app_id_of_app_to_publish': 'app-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/query_scalar_data_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/query_scalar_data_example_call_tool.js deleted file mode 100644 index 4503124c5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/query_scalar_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.QueryScalarData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"query\":\"SELECT value FROM data WHERE condition=true\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/query_scalar_data_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/query_scalar_data_example_call_tool.py deleted file mode 100644 index b9a363c2c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/query_scalar_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.QueryScalarData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"query":"SELECT value FROM data WHERE condition=true"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/query_timeseries_data_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/query_timeseries_data_example_call_tool.js deleted file mode 100644 index 54ac304fe..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/query_timeseries_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.QueryTimeseriesData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"query\":\"SELECT * FROM timeseries WHERE source='sensor1' AND time > '2023-01-01'\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/query_timeseries_data_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/query_timeseries_data_example_call_tool.py deleted file mode 100644 index 0ea08b19f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/query_timeseries_data_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.QueryTimeseriesData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"query":"SELECT * FROM timeseries WHERE source=\'sensor1\' AND time > ' - '\'2023-01-01\'"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/register_datadog_app_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/register_datadog_app_key_example_call_tool.js deleted file mode 100644 index d253c137b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/register_datadog_app_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RegisterDatadogAppKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "app_key_id": "my-app-key-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/register_datadog_app_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/register_datadog_app_key_example_call_tool.py deleted file mode 100644 index 87f4ee094..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/register_datadog_app_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RegisterDatadogAppKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'app_key_id': 'my-app-key-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_permission_from_role_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/remove_permission_from_role_example_call_tool.js deleted file mode 100644 index e2f2f8783..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_permission_from_role_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RemovePermissionFromRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "role_identifier": "admin_role", - "permission_id": "read_logs", - "permission_resource_type": "permissions" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_permission_from_role_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/remove_permission_from_role_example_call_tool.py deleted file mode 100644 index ce36e87ec..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_permission_from_role_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RemovePermissionFromRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'role_identifier': 'admin_role', - 'permission_id': 'read_logs', - 'permission_resource_type': 'permissions' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_project_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/remove_project_example_call_tool.js deleted file mode 100644 index fe2c59b15..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_project_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RemoveProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_project_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/remove_project_example_call_tool.py deleted file mode 100644 index e4d321622..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RemoveProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_role_from_archive_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/remove_role_from_archive_example_call_tool.js deleted file mode 100644 index 147fbee2a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_role_from_archive_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RemoveRoleFromArchive"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "archive_id": "12345", - "role_type": "roles" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_role_from_archive_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/remove_role_from_archive_example_call_tool.py deleted file mode 100644 index 9900c838e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_role_from_archive_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RemoveRoleFromArchive" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'archive_id': '12345', 'role_type': 'roles' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_role_from_restriction_query_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/remove_role_from_restriction_query_example_call_tool.js deleted file mode 100644 index 8b288c4f9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_role_from_restriction_query_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RemoveRoleFromRestrictionQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "restriction_query_id": "12345", - "role_type": "roles", - "role_unique_identifier": "admin" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_role_from_restriction_query_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/remove_role_from_restriction_query_example_call_tool.py deleted file mode 100644 index b34bf5271..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_role_from_restriction_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RemoveRoleFromRestrictionQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'restriction_query_id': '12345', 'role_type': 'roles', 'role_unique_identifier': 'admin' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_team_link_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/remove_team_link_example_call_tool.js deleted file mode 100644 index 3bca35ede..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_team_link_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RemoveTeamLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "link_identifier": "link123", - "team_id": "team456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_team_link_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/remove_team_link_example_call_tool.py deleted file mode 100644 index 37a745a9f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_team_link_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RemoveTeamLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'link_identifier': 'link123', 'team_id': 'team456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_team_member_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/remove_team_member_example_call_tool.js deleted file mode 100644 index f1383b5f3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_team_member_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RemoveTeamMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_team_identifier": "team123", - "super_team_id": "super456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_team_member_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/remove_team_member_example_call_tool.py deleted file mode 100644 index c2b39f5b4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_team_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RemoveTeamMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_team_identifier': 'team123', 'super_team_id': 'super456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_user_from_role_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/remove_user_from_role_example_call_tool.js deleted file mode 100644 index a36d90fdd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_user_from_role_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RemoveUserFromRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "role_identifier": "admin", - "user_identifier": "user123", - "user_resource_type": "users" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_user_from_role_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/remove_user_from_role_example_call_tool.py deleted file mode 100644 index 7f2e293dc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_user_from_role_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RemoveUserFromRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'role_identifier': 'admin', 'user_identifier': 'user123', 'user_resource_type': 'users' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_user_from_team_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/remove_user_from_team_example_call_tool.js deleted file mode 100644 index 47a2b9aa1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_user_from_team_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RemoveUserFromTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_identifier": "dev-team-123", - "user_identifier_for_removal": "user-456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/remove_user_from_team_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/remove_user_from_team_example_call_tool.py deleted file mode 100644 index 63fb12aa2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/remove_user_from_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RemoveUserFromTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_identifier': 'dev-team-123', 'user_identifier_for_removal': 'user-456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/reorder_apm_retention_filters_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/reorder_apm_retention_filters_example_call_tool.js deleted file mode 100644 index f265b975c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/reorder_apm_retention_filters_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ReorderApmRetentionFilters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filters\":[{\"id\":\"filter1\",\"order\":1},{\"id\":\"filter2\",\"order\":2}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/reorder_apm_retention_filters_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/reorder_apm_retention_filters_example_call_tool.py deleted file mode 100644 index 7b8236ba0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/reorder_apm_retention_filters_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ReorderApmRetentionFilters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"filters":[{"id":"filter1","order":1},{"id":"filter2","order":2}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/reorder_custom_allocation_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/reorder_custom_allocation_rules_example_call_tool.js deleted file mode 100644 index a234a5019..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/reorder_custom_allocation_rules_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ReorderCustomAllocationRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"rule_ids\":[\"rule1\",\"rule2\",\"rule3\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/reorder_custom_allocation_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/reorder_custom_allocation_rules_example_call_tool.py deleted file mode 100644 index f179c26b5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/reorder_custom_allocation_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ReorderCustomAllocationRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"rule_ids":["rule1","rule2","rule3"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/reorder_scanning_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/reorder_scanning_groups_example_call_tool.js deleted file mode 100644 index 8e448e1ed..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/reorder_scanning_groups_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ReorderScanningGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"groups\":[{\"id\":\"group1\",\"order\":1},{\"id\":\"group2\",\"order\":2}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/reorder_scanning_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/reorder_scanning_groups_example_call_tool.py deleted file mode 100644 index 9a178e6bd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/reorder_scanning_groups_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ReorderScanningGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"groups":[{"id":"group1","order":1},{"id":"group2","order":2}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/reorder_tag_pipeline_rulesets_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/reorder_tag_pipeline_rulesets_example_call_tool.js deleted file mode 100644 index 27ba74f93..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/reorder_tag_pipeline_rulesets_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ReorderTagPipelineRulesets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"rulesets\":[{\"id\":\"123\",\"order\":1},{\"id\":\"456\",\"order\":2}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/reorder_tag_pipeline_rulesets_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/reorder_tag_pipeline_rulesets_example_call_tool.py deleted file mode 100644 index d77694379..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/reorder_tag_pipeline_rulesets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ReorderTagPipelineRulesets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"rulesets":[{"id":"123","order":1},{"id":"456","order":2}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/resolve_on_call_page_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/resolve_on_call_page_example_call_tool.js deleted file mode 100644 index 968a6dab6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/resolve_on_call_page_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ResolveOnCallPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "on_call_page_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/resolve_on_call_page_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/resolve_on_call_page_example_call_tool.py deleted file mode 100644 index 1165a897d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/resolve_on_call_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ResolveOnCallPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'on_call_page_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/retrieve_dataset_info_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/retrieve_dataset_info_example_call_tool.js deleted file mode 100644 index 813f4fdcc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/retrieve_dataset_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RetrieveDatasetInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dataset_identifier": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/retrieve_dataset_info_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/retrieve_dataset_info_example_call_tool.py deleted file mode 100644 index b571990f3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/retrieve_dataset_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RetrieveDatasetInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dataset_identifier': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/retrieve_datastore_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/retrieve_datastore_example_call_tool.js deleted file mode 100644 index bdcae2706..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/retrieve_datastore_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RetrieveDatastore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "datastore_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/retrieve_datastore_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/retrieve_datastore_example_call_tool.py deleted file mode 100644 index 541547422..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/retrieve_datastore_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RetrieveDatastore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'datastore_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/retrieve_gcp_scan_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/retrieve_gcp_scan_settings_example_call_tool.js deleted file mode 100644 index 5c324aec4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/retrieve_gcp_scan_settings_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RetrieveGcpScanSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gcp_project_id": "my-gcp-project-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/retrieve_gcp_scan_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/retrieve_gcp_scan_settings_example_call_tool.py deleted file mode 100644 index c6c58b150..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/retrieve_gcp_scan_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RetrieveGcpScanSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gcp_project_id': 'my-gcp-project-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/retrieve_resource_restriction_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/retrieve_resource_restriction_policy_example_call_tool.js deleted file mode 100644 index 920ce1517..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/retrieve_resource_restriction_policy_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RetrieveResourceRestrictionPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_identifier": "dashboard:12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/retrieve_resource_restriction_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/retrieve_resource_restriction_policy_example_call_tool.py deleted file mode 100644 index 736868092..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/retrieve_resource_restriction_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RetrieveResourceRestrictionPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_identifier': 'dashboard:12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/retrieve_support_case_types_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/retrieve_support_case_types_example_call_tool.js deleted file mode 100644 index e460eee08..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/retrieve_support_case_types_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RetrieveSupportCaseTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/retrieve_support_case_types_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/retrieve_support_case_types_example_call_tool.py deleted file mode 100644 index 4e715c94e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/retrieve_support_case_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RetrieveSupportCaseTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/run_historical_detection_job_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/run_historical_detection_job_example_call_tool.js deleted file mode 100644 index 07df8ac2c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/run_historical_detection_job_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.RunHistoricalDetectionJob"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"query\":\"SELECT * FROM events WHERE timestamp > '2023-01-01'\",\"timeframe\":\"last_30_days\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/run_historical_detection_job_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/run_historical_detection_job_example_call_tool.py deleted file mode 100644 index 9f1cf6e44..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/run_historical_detection_job_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.RunHistoricalDetectionJob" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"query":"SELECT * FROM events WHERE timestamp > ' - '\'2023-01-01\'","timeframe":"last_30_days"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/schedule_downtime_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/schedule_downtime_example_call_tool.js deleted file mode 100644 index d75fa5d5d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/schedule_downtime_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ScheduleDowntime"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"scope\":\"service:my-service\",\"start\":\"2023-10-01T00:00:00Z\",\"end\":\"2023-10-01T01:00:00Z\",\"message\":\"Scheduled maintenance\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/schedule_downtime_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/schedule_downtime_example_call_tool.py deleted file mode 100644 index 4d2c572b0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/schedule_downtime_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ScheduleDowntime" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"scope":"service:my-service","start":"2023-10-01T00:00:00Z","end":"2023-10-01T01:00:00Z","message":"Scheduled ' - 'maintenance"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_audit_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/search_audit_logs_example_call_tool.js deleted file mode 100644 index 60ef26b20..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_audit_logs_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SearchAuditLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "audit_logs_search_query": "user:admin action:login", - "max_events_limit": 50, - "minimum_time": "2023-01-01T00:00:00Z", - "maximum_time_for_requested_events": "2023-01-31T23:59:59Z", - "sort_parameter": "-timestamp", - "timezone": "UTC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_audit_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/search_audit_logs_example_call_tool.py deleted file mode 100644 index 9bdc92a95..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_audit_logs_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SearchAuditLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'audit_logs_search_query': 'user:admin action:login', - 'max_events_limit': 50, - 'minimum_time': '2023-01-01T00:00:00Z', - 'maximum_time_for_requested_events': '2023-01-31T23:59:59Z', - 'sort_parameter': '-timestamp', - 'timezone': 'UTC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_cases_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/search_cases_example_call_tool.js deleted file mode 100644 index 1d0684b34..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_cases_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SearchCases"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "order_ascending": true, - "page_number": 1, - "page_size": 50, - "search_query": "network issue", - "sort_by_field": "created_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_cases_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/search_cases_example_call_tool.py deleted file mode 100644 index 3a13eb722..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_cases_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SearchCases" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'order_ascending': True, - 'page_number': 1, - 'page_size': 50, - 'search_query': 'network issue', - 'sort_by_field': 'created_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_ci_pipeline_events_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/search_ci_pipeline_events_example_call_tool.js deleted file mode 100644 index e12d1ef6e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_ci_pipeline_events_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SearchCiPipelineEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query": "status:success", - "max_events_per_page": 10, - "sort_events_by": "-timestamp", - "filter_to_time": "2023-10-01T00:00:00Z", - "timezone": "UTC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_ci_pipeline_events_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/search_ci_pipeline_events_example_call_tool.py deleted file mode 100644 index 502abccf7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_ci_pipeline_events_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SearchCiPipelineEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query': 'status:success', - 'max_events_per_page': 10, - 'sort_events_by': '-timestamp', - 'filter_to_time': '2023-10-01T00:00:00Z', - 'timezone': 'UTC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_ci_test_events_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/search_ci_test_events_example_call_tool.js deleted file mode 100644 index 735284ade..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_ci_test_events_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SearchCiTestEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maximum_event_time": "2023-10-01T12:00:00Z", - "maximum_events_in_response": 50, - "search_query": "status:failed", - "sort_order": "-timestamp", - "start_time_filter": "2023-09-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_ci_test_events_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/search_ci_test_events_example_call_tool.py deleted file mode 100644 index ec066cacc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_ci_test_events_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SearchCiTestEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maximum_event_time': '2023-10-01T12:00:00Z', - 'maximum_events_in_response': 50, - 'search_query': 'status:failed', - 'sort_order': '-timestamp', - 'start_time_filter': '2023-09-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_datadog_events_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/search_datadog_events_example_call_tool.js deleted file mode 100644 index 5bb73a171..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_datadog_events_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SearchDatadogEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_search_query": "status:error", - "max_event_time": "now", - "maximum_events_per_page": 50, - "sort_order": "-timestamp", - "start_time": "1h ago" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_datadog_events_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/search_datadog_events_example_call_tool.py deleted file mode 100644 index 285481d79..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_datadog_events_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SearchDatadogEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_search_query': 'status:error', - 'max_event_time': 'now', - 'maximum_events_per_page': 50, - 'sort_order': '-timestamp', - 'start_time': '1h ago' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_datadog_incidents_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/search_datadog_incidents_example_call_tool.js deleted file mode 100644 index b2f8908d3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_datadog_incidents_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SearchDatadogIncidents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_query": "state:active AND severity:(SEV-2 OR SEV-1)", - "include_related_objects": "users", - "page_size": 50, - "sort_order": "-created" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_datadog_incidents_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/search_datadog_incidents_example_call_tool.py deleted file mode 100644 index d5c76d9a4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_datadog_incidents_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SearchDatadogIncidents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_query': 'state:active AND severity:(SEV-2 OR SEV-1)', - 'include_related_objects': 'users', - 'page_size': 50, - 'sort_order': '-created' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_datadog_issues_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/search_datadog_issues_example_call_tool.js deleted file mode 100644 index c11603615..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_datadog_issues_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SearchDatadogIssues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_date": 1699996800000, - "object_type": "search_request", - "search_event_query": "status:error", - "start_date_millis": 1699900400000, - "event_track_to_query": "logs", - "include_relationship_objects": [ - "user", - "service" - ], - "search_persona": "ALL", - "sort_results_by": "PRIORITY" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_datadog_issues_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/search_datadog_issues_example_call_tool.py deleted file mode 100644 index 53ca49ac7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_datadog_issues_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SearchDatadogIssues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_date': 1699996800000, - 'object_type': 'search_request', - 'search_event_query': 'status:error', - 'start_date_millis': 1699900400000, - 'event_track_to_query': 'logs', - 'include_relationship_objects': ['user', 'service'], - 'search_persona': 'ALL', - 'sort_results_by': 'PRIORITY' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_flaky_tests_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/search_flaky_tests_example_call_tool.js deleted file mode 100644 index 85a254b39..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_flaky_tests_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SearchFlakyTests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_query": "@test.name:exampleTest", - "maximum_flaky_tests_limit": 10, - "sort_flaky_tests": "-failure_rate" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_flaky_tests_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/search_flaky_tests_example_call_tool.py deleted file mode 100644 index 87aefbdfa..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_flaky_tests_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SearchFlakyTests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_query': '@test.name:exampleTest', - 'maximum_flaky_tests_limit': 10, - 'sort_flaky_tests': '-failure_rate' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_rum_events_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/search_rum_events_example_call_tool.js deleted file mode 100644 index f3065da67..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_rum_events_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SearchRumEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_max_time": "2023-10-01T12:00:00Z", - "maximum_events_in_response": 50, - "minimum_event_time": "2023-09-01T00:00:00Z", - "rum_search_query": "error OR performance", - "sort_order": "-timestamp", - "timezone": "UTC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_rum_events_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/search_rum_events_example_call_tool.py deleted file mode 100644 index 80d729e59..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_rum_events_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SearchRumEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_max_time': '2023-10-01T12:00:00Z', - 'maximum_events_in_response': 50, - 'minimum_event_time': '2023-09-01T00:00:00Z', - 'rum_search_query': 'error OR performance', - 'sort_order': '-timestamp', - 'timezone': 'UTC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_security_signals_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/search_security_signals_example_call_tool.js deleted file mode 100644 index 51785bb69..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_security_signals_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SearchSecuritySignals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maximum_signals_per_response": 10, - "minimum_timestamp": "2023-10-01T00:00:00Z", - "search_query": "malware alert", - "sort_order": "-timestamp" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/search_security_signals_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/search_security_signals_example_call_tool.py deleted file mode 100644 index add91e603..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/search_security_signals_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SearchSecuritySignals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maximum_signals_per_response': 10, - 'minimum_timestamp': '2023-10-01T00:00:00Z', - 'search_query': 'malware alert', - 'sort_order': '-timestamp' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/send_invitations_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/send_invitations_example_call_tool.js deleted file mode 100644 index 2dc02685f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/send_invitations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SendInvitations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"emails\":[\"user1@example.com\",\"user2@example.com\"],\"organization_id\":\"org123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/send_invitations_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/send_invitations_example_call_tool.py deleted file mode 100644 index b5a8908d2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/send_invitations_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SendInvitations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"emails":["user1@example.com","user2@example.com"],"organization_id":"org123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/set_on_call_team_routing_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/set_on_call_team_routing_rules_example_call_tool.js deleted file mode 100644 index 87b28ffe8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/set_on_call_team_routing_rules_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SetOnCallTeamRoutingRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_identifier": "team123", - "include_relationships": "rules", - "request_body": "{\"rules\":[{\"name\":\"Night Shift\",\"schedule\":\"night\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/set_on_call_team_routing_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/set_on_call_team_routing_rules_example_call_tool.py deleted file mode 100644 index 37078981a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/set_on_call_team_routing_rules_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SetOnCallTeamRoutingRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_identifier': 'team123', - 'include_relationships': 'rules', - 'request_body': '{"rules":[{"name":"Night Shift","schedule":"night"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/set_on_demand_concurrency_cap_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/set_on_demand_concurrency_cap_example_call_tool.js deleted file mode 100644 index f96b9f7b9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/set_on_demand_concurrency_cap_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SetOnDemandConcurrencyCap"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "on_demand_concurrency_cap_value": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/set_on_demand_concurrency_cap_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/set_on_demand_concurrency_cap_example_call_tool.py deleted file mode 100644 index 2c584c0a9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/set_on_demand_concurrency_cap_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SetOnDemandConcurrencyCap" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'on_demand_concurrency_cap_value': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/set_service_rule_outcomes_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/set_service_rule_outcomes_batch_example_call_tool.js deleted file mode 100644 index 0dfd9fea8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/set_service_rule_outcomes_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SetServiceRuleOutcomesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"rules\":[{\"id\":\"rule1\",\"outcome\":\"allow\"},{\"id\":\"rule2\",\"outcome\":\"deny\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/set_service_rule_outcomes_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/set_service_rule_outcomes_batch_example_call_tool.py deleted file mode 100644 index 7540705ea..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/set_service_rule_outcomes_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SetServiceRuleOutcomesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"rules":[{"id":"rule1","outcome":"allow"},{"id":"rule2","outcome":"deny"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/sync_datadog_teams_with_github_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/sync_datadog_teams_with_github_example_call_tool.js deleted file mode 100644 index 5cff1327e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/sync_datadog_teams_with_github_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.SyncDatadogTeamsWithGithub"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "source_platform": "github", - "synchronization_type": "link", - "team_sync_bulk_type": "team_sync_bulk" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/sync_datadog_teams_with_github_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/sync_datadog_teams_with_github_example_call_tool.py deleted file mode 100644 index 35a25f147..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/sync_datadog_teams_with_github_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.SyncDatadogTeamsWithGithub" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'source_platform': 'github', - 'synchronization_type': 'link', - 'team_sync_bulk_type': 'team_sync_bulk' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/test_security_monitoring_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/test_security_monitoring_rule_example_call_tool.js deleted file mode 100644 index 81942861b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/test_security_monitoring_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.TestSecurityMonitoringRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "security_monitoring_rule_id": "12345", - "request_body": "{\"test\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/test_security_monitoring_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/test_security_monitoring_rule_example_call_tool.py deleted file mode 100644 index dc5cca430..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/test_security_monitoring_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.TestSecurityMonitoringRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'security_monitoring_rule_id': '12345', 'request_body': '{"test":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/test_security_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/test_security_rule_example_call_tool.js deleted file mode 100644 index f641022e6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/test_security_rule_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.TestSecurityRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "get_request_schema" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/test_security_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/test_security_rule_example_call_tool.py deleted file mode 100644 index a42cff47e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/test_security_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.TestSecurityRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'get_request_schema' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/trigger_aws_resource_scan_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/trigger_aws_resource_scan_example_call_tool.js deleted file mode 100644 index 91c70eb3b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/trigger_aws_resource_scan_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.TriggerAwsResourceScan"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "aws_resource_arn": "arn:aws:ec2:us-west-2:123456789012:instance/i-0abcd1234efgh5678", - "task_type": "aws_resource" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/trigger_aws_resource_scan_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/trigger_aws_resource_scan_example_call_tool.py deleted file mode 100644 index 3c6fefe51..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/trigger_aws_resource_scan_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.TriggerAwsResourceScan" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'aws_resource_arn': 'arn:aws:ec2:us-west-2:123456789012:instance/i-0abcd1234efgh5678', - 'task_type': 'aws_resource' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/trigger_on_call_page_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/trigger_on_call_page_example_call_tool.js deleted file mode 100644 index b5f97c80b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/trigger_on_call_page_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.TriggerOnCallPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_summary": "Database connection error", - "on_call_page_urgency_level": "high", - "page_title": "Urgent: DB Issue", - "tags_for_categorization": [ - "database", - "urgent" - ], - "target_identifier": "team_handle_123", - "target_type": "team_handle" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/trigger_on_call_page_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/trigger_on_call_page_example_call_tool.py deleted file mode 100644 index 58069c6bf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/trigger_on_call_page_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.TriggerOnCallPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_summary': 'Database connection error', - 'on_call_page_urgency_level': 'high', - 'page_title': 'Urgent: DB Issue', - 'tags_for_categorization': ['database', 'urgent'], - 'target_identifier': 'team_handle_123', - 'target_type': 'team_handle' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/unarchive_case_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/unarchive_case_example_call_tool.js deleted file mode 100644 index 36bbc5299..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/unarchive_case_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UnarchiveCase"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_identifier": "123e4567-e89b-12d3-a456-426614174000", - "case_resource_type": "case" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/unarchive_case_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/unarchive_case_example_call_tool.py deleted file mode 100644 index 069217c92..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/unarchive_case_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UnarchiveCase" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_identifier': '123e4567-e89b-12d3-a456-426614174000', 'case_resource_type': 'case' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/unassign_case_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/unassign_case_example_call_tool.js deleted file mode 100644 index 3b1083dd0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/unassign_case_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UnassignCase"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_identifier": "123e4567-e89b-12d3-a456-426614174000", - "case_resource_type": "case" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/unassign_case_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/unassign_case_example_call_tool.py deleted file mode 100644 index 3d29ebf57..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/unassign_case_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UnassignCase" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_identifier': '123e4567-e89b-12d3-a456-426614174000', 'case_resource_type': 'case' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/unpublish_app_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/unpublish_app_example_call_tool.js deleted file mode 100644 index 2324a5795..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/unpublish_app_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UnpublishApp"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "app_identifier": "com.example.myapp" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/unpublish_app_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/unpublish_app_example_call_tool.py deleted file mode 100644 index 28952618a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/unpublish_app_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UnpublishApp" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'app_identifier': 'com.example.myapp' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/unregister_app_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/unregister_app_key_example_call_tool.js deleted file mode 100644 index 2035df234..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/unregister_app_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UnregisterAppKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "app_key_id": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/unregister_app_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/unregister_app_key_example_call_tool.py deleted file mode 100644 index 920d81f97..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/unregister_app_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UnregisterAppKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'app_key_id': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_action_connection_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_action_connection_example_call_tool.js deleted file mode 100644 index ab1fc1c1b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_action_connection_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateActionConnection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "action_connection_id": "12345", - "request_body": "{\"name\":\"Updated Connection\",\"type\":\"http\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_action_connection_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_action_connection_example_call_tool.py deleted file mode 100644 index b3bcd31da..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_action_connection_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateActionConnection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'action_connection_id': '12345', - 'request_body': '{"name":"Updated Connection","type":"http"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_apm_retention_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_apm_retention_filter_example_call_tool.js deleted file mode 100644 index 37b00bf22..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_apm_retention_filter_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateApmRetentionFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_retention_filter": true, - "filter_id": "filter-123", - "filter_query": "service:my-service", - "retention_filter_id": "retention-456", - "retention_filter_name": "My Retention Filter", - "span_sample_rate": 0.5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_apm_retention_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_apm_retention_filter_example_call_tool.py deleted file mode 100644 index 559c02ccc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_apm_retention_filter_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateApmRetentionFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_retention_filter': True, - 'filter_id': 'filter-123', - 'filter_query': 'service:my-service', - 'retention_filter_id': 'retention-456', - 'retention_filter_name': 'My Retention Filter', - 'span_sample_rate': 0.5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_app_version_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_app_version_example_call_tool.js deleted file mode 100644 index b5d2553fa..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_app_version_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateAppVersion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "application_id": "app-12345", - "request_body": "{\"version\":\"1.0.1\",\"description\":\"Minor bug fixes\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_app_version_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_app_version_example_call_tool.py deleted file mode 100644 index d49962df6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_app_version_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateAppVersion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'application_id': 'app-12345', - 'request_body': '{"version":"1.0.1","description":"Minor bug fixes"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_archive_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_archive_configuration_example_call_tool.js deleted file mode 100644 index 547ecb317..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_archive_configuration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateArchiveConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "archive_identifier": "archive_123", - "request_body": "{\"setting\":\"new_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_archive_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_archive_configuration_example_call_tool.py deleted file mode 100644 index c0c2faa18..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_archive_configuration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateArchiveConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'archive_identifier': 'archive_123', 'request_body': '{"setting":"new_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_aws_account_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_aws_account_integration_example_call_tool.js deleted file mode 100644 index 4daccbe68..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_aws_account_integration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateAwsAccountIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "aws_account_integration_config_id": "12345", - "request_body": "{\"setting\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_aws_account_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_aws_account_integration_example_call_tool.py deleted file mode 100644 index a5903b20f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_aws_account_integration_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateAwsAccountIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'aws_account_integration_config_id': '12345', - 'request_body': '{"setting":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_aws_cur_config_status_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_aws_cur_config_status_example_call_tool.js deleted file mode 100644 index 8eba81e3e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_aws_cur_config_status_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateAwsCurConfigStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cloud_account_id": 123456, - "automatic_inclusion_of_new_accounts": true, - "excluded_aws_account_ids": [ - 789012, - 345678 - ], - "is_cost_management_enabled": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_aws_cur_config_status_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_aws_cur_config_status_example_call_tool.py deleted file mode 100644 index c5f2c87b7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_aws_cur_config_status_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateAwsCurConfigStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cloud_account_id': 123456, - 'automatic_inclusion_of_new_accounts': True, - 'excluded_aws_account_ids': [789012, 345678], - 'is_cost_management_enabled': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_aws_scan_options_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_aws_scan_options_example_call_tool.js deleted file mode 100644 index bf2387c9c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_aws_scan_options_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateAwsScanOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_identifier": "123456789012", - "aws_account_id": "123456789012", - "enable_lambda_scanning": true, - "enable_sensitive_data_scanning": false, - "resource_type": "aws_scan_options" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_aws_scan_options_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_aws_scan_options_example_call_tool.py deleted file mode 100644 index 592c6022c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_aws_scan_options_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateAwsScanOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_identifier': '123456789012', - 'aws_account_id': '123456789012', - 'enable_lambda_scanning': True, - 'enable_sensitive_data_scanning': False, - 'resource_type': 'aws_scan_options' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_azure_config_status_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_azure_config_status_example_call_tool.js deleted file mode 100644 index cabe84dd2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_azure_config_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateAzureConfigStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cloud_account_id": 123456, - "azure_config_patch_request_type": "azure_uc_config_patch_request", - "enable_cloud_cost_management": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_azure_config_status_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_azure_config_status_example_call_tool.py deleted file mode 100644 index e7680731b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_azure_config_status_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateAzureConfigStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cloud_account_id': 123456, - 'azure_config_patch_request_type': 'azure_uc_config_patch_request', - 'enable_cloud_cost_management': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_azure_scan_options_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_azure_scan_options_example_call_tool.js deleted file mode 100644 index 8a584bfb3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_azure_scan_options_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateAzureScanOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "azure_subscription_id": "sub-12345", - "enable_container_vulnerability_scanning": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_azure_scan_options_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_azure_scan_options_example_call_tool.py deleted file mode 100644 index 3d3eb2299..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_azure_scan_options_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateAzureScanOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'azure_subscription_id': 'sub-12345', 'enable_container_vulnerability_scanning': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_case_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_case_attributes_example_call_tool.js deleted file mode 100644 index ce437d578..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_case_attributes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateCaseAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "case_identifier": "case_12345", - "request_body": "{\"status\":\"resolved\",\"priority\":\"high\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_case_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_case_attributes_example_call_tool.py deleted file mode 100644 index 2685aad5c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_case_attributes_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateCaseAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'case_identifier': 'case_12345', - 'request_body': '{"status":"resolved","priority":"high"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_case_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_case_custom_attribute_example_call_tool.js deleted file mode 100644 index 3e442420c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_case_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateCaseCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "case_identifier": "123e4567-e89b-12d3-a456-426614174000", - "custom_attribute_key": "status", - "request_body": "{\"status\":\"resolved\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_case_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_case_custom_attribute_example_call_tool.py deleted file mode 100644 index b88357013..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_case_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateCaseCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'case_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'custom_attribute_key': 'status', - 'request_body': '{"status":"resolved"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_case_description_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_case_description_example_call_tool.js deleted file mode 100644 index 1b6954ad0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_case_description_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateCaseDescription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_uuid_or_key": "12345-abcde", - "new_case_description": "Updated description for the case.", - "case_resource_type": "case" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_case_description_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_case_description_example_call_tool.py deleted file mode 100644 index abd81f342..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_case_description_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateCaseDescription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_uuid_or_key': '12345-abcde', - 'new_case_description': 'Updated description for the case.', - 'case_resource_type': 'case' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_case_priority_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_case_priority_example_call_tool.js deleted file mode 100644 index e0401ac39..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_case_priority_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateCasePriority"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_identifier": "123e4567-e89b-12d3-a456-426614174000", - "case_priority": "P2" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_case_priority_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_case_priority_example_call_tool.py deleted file mode 100644 index 0af460d39..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_case_priority_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateCasePriority" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_identifier': '123e4567-e89b-12d3-a456-426614174000', 'case_priority': 'P2' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_case_status_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_case_status_example_call_tool.js deleted file mode 100644 index 25768bcc5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_case_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateCaseStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_status": "IN_PROGRESS", - "case_uuid_or_key": "123e4567-e89b-12d3-a456-426614174000", - "case_resource_type": "case" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_case_status_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_case_status_example_call_tool.py deleted file mode 100644 index 768a8b3f5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_case_status_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateCaseStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_status': 'IN_PROGRESS', - 'case_uuid_or_key': '123e4567-e89b-12d3-a456-426614174000', - 'case_resource_type': 'case' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_case_title_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_case_title_example_call_tool.js deleted file mode 100644 index 323fb6d9d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_case_title_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateCaseTitle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_identifier": "123e4567-e89b-12d3-a456-426614174000", - "new_case_title": "Updated Case Title", - "case_resource_type": "case" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_case_title_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_case_title_example_call_tool.py deleted file mode 100644 index 48d5a8d95..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_case_title_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateCaseTitle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'new_case_title': 'Updated Case Title', - 'case_resource_type': 'case' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_cloud_workload_security_agent_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_cloud_workload_security_agent_rule_example_call_tool.js deleted file mode 100644 index c2c355eee..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_cloud_workload_security_agent_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateCloudWorkloadSecurityAgentRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "agent_rule_identifier": "rule-12345", - "request_body": "{\"action\":\"update\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_cloud_workload_security_agent_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_cloud_workload_security_agent_rule_example_call_tool.py deleted file mode 100644 index fb2ee8f4c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_cloud_workload_security_agent_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateCloudWorkloadSecurityAgentRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'agent_rule_identifier': 'rule-12345', - 'request_body': '{"action":"update","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_cloudflare_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_cloudflare_account_example_call_tool.js deleted file mode 100644 index 4db6e0705..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_cloudflare_account_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateCloudflareAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cloudflare_account_id": "123456", - "allowed_resource_types_for_metrics": [ - "web", - "dns" - ], - "cloudflare_account_name": "My Cloudflare Account" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_cloudflare_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_cloudflare_account_example_call_tool.py deleted file mode 100644 index 745d858d9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_cloudflare_account_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateCloudflareAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cloudflare_account_id': '123456', - 'allowed_resource_types_for_metrics': ['web', 'dns'], - 'cloudflare_account_name': 'My Cloudflare Account' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_confluent_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_confluent_account_example_call_tool.js deleted file mode 100644 index 7402a254a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_confluent_account_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateConfluentAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "confluent_account_id": "12345", - "confluent_api_key": "abcde12345", - "confluent_api_secret": "secret12345", - "api_type": "confluent-cloud-accounts", - "tags_list": [ - "tag1", - "tag2:value2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_confluent_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_confluent_account_example_call_tool.py deleted file mode 100644 index 7381f239b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_confluent_account_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateConfluentAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'confluent_account_id': '12345', - 'confluent_api_key': 'abcde12345', - 'confluent_api_secret': 'secret12345', - 'api_type': 'confluent-cloud-accounts', - 'tags_list': ['tag1', 'tag2:value2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_confluent_resource_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_confluent_resource_example_call_tool.js deleted file mode 100644 index c6f8c8e6e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_confluent_resource_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateConfluentResource"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "confluent_account_id": "account-123", - "confluent_resource_id": "resource-456", - "resource_id": "res-789", - "resource_type": "kafka", - "enable_custom_metrics": true, - "tags_list": [ - "env:production", - "team:devops" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_confluent_resource_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_confluent_resource_example_call_tool.py deleted file mode 100644 index e27401c8b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_confluent_resource_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateConfluentResource" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'confluent_account_id': 'account-123', - 'confluent_resource_id': 'resource-456', - 'resource_id': 'res-789', - 'resource_type': 'kafka', - 'enable_custom_metrics': True, - 'tags_list': ['env:production', 'team:devops'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_custom_allocation_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_custom_allocation_rule_example_call_tool.js deleted file mode 100644 index 431d1327a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_custom_allocation_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateCustomAllocationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "custom_allocation_rule_id": 123, - "request_body": "{\"filters\":{\"status\":\"active\"},\"strategy\":\"PROPORTIONAL\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_custom_allocation_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_custom_allocation_rule_example_call_tool.py deleted file mode 100644 index f06b65a37..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_custom_allocation_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateCustomAllocationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'custom_allocation_rule_id': 123, - 'request_body': '{"filters":{"status":"active"},"strategy":"PROPORTIONAL"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_custom_framework_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_custom_framework_example_call_tool.js deleted file mode 100644 index 95583ecf2..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_custom_framework_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateCustomFramework"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "framework_handle": "my_framework", - "framework_version": "1.0", - "request_body": "{\"name\":\"Updated Framework\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_custom_framework_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_custom_framework_example_call_tool.py deleted file mode 100644 index 0f94ba1c9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_custom_framework_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateCustomFramework" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'framework_handle': 'my_framework', - 'framework_version': '1.0', - 'request_body': '{"name":"Updated Framework","description":"This is an updated description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_dashboard_list_items_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_dashboard_list_items_example_call_tool.js deleted file mode 100644 index 74dc91281..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_dashboard_list_items_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateDashboardListItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_list_identifier": 123, - "request_body": "{\"items\":[{\"id\":\"1\",\"name\":\"Dashboard 1\"},{\"id\":\"2\",\"name\":\"Dashboard 2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_dashboard_list_items_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_dashboard_list_items_example_call_tool.py deleted file mode 100644 index 0b9a93c7c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_dashboard_list_items_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateDashboardListItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_list_identifier': 123, - 'request_body': '{"items":[{"id":"1","name":"Dashboard 1"},{"id":"2","name":"Dashboard 2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_datadog_api_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_datadog_api_key_example_call_tool.js deleted file mode 100644 index 1f1a2035f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_datadog_api_key_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateDatadogApiKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "api_key_id": "12345", - "api_key_name": "NewAPIKeyName", - "key_id": "abcde12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_datadog_api_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_datadog_api_key_example_call_tool.py deleted file mode 100644 index 7a1a83081..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_datadog_api_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateDatadogApiKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'api_key_id': '12345', 'api_key_name': 'NewAPIKeyName', 'key_id': 'abcde12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_datadog_app_key_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_datadog_app_key_example_call_tool.js deleted file mode 100644 index 5198a6974..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_datadog_app_key_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateDatadogAppKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "app_key_id": "12345", - "application_key_id": "abcde", - "application_key_name": "NewAppKeyName", - "application_key_scopes": [ - "read", - "write" - ], - "application_keys_resource_type": "application_keys" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_datadog_app_key_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_datadog_app_key_example_call_tool.py deleted file mode 100644 index 3debc3e2c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_datadog_app_key_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateDatadogAppKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'app_key_id': '12345', - 'application_key_id': 'abcde', - 'application_key_name': 'NewAppKeyName', - 'application_key_scopes': ['read', 'write'], - 'application_keys_resource_type': 'application_keys' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_datadog_user_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_datadog_user_example_call_tool.js deleted file mode 100644 index ff3f432ed..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_datadog_user_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateDatadogUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "12345", - "user_identifier": "user_abc", - "disable_user": false, - "user_email": "user@example.com", - "user_name": "John Doe", - "user_resource_type": "users" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_datadog_user_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_datadog_user_example_call_tool.py deleted file mode 100644 index 484251eab..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_datadog_user_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateDatadogUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': '12345', - 'user_identifier': 'user_abc', - 'disable_user': False, - 'user_email': 'user@example.com', - 'user_name': 'John Doe', - 'user_resource_type': 'users' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_datastore_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_datastore_attributes_example_call_tool.js deleted file mode 100644 index a00da74cf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_datastore_attributes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateDatastoreAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "datastore_unique_identifier": "12345", - "datastore_description": "Main user database", - "datastore_display_name": "UserDB" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_datastore_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_datastore_attributes_example_call_tool.py deleted file mode 100644 index a9e065ead..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_datastore_attributes_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateDatastoreAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'datastore_unique_identifier': '12345', - 'datastore_description': 'Main user database', - 'datastore_display_name': 'UserDB' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_datastore_item_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_datastore_item_example_call_tool.js deleted file mode 100644 index 5a638740b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_datastore_item_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateDatastoreItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "datastore_identifier": "my_datastore_123", - "request_body": "{\"field\":\"new_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_datastore_item_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_datastore_item_example_call_tool.py deleted file mode 100644 index 53efc43a4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_datastore_item_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateDatastoreItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'datastore_identifier': 'my_datastore_123', - 'request_body': '{"field":"new_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_device_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_device_tags_example_call_tool.js deleted file mode 100644 index b8097df3b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_device_tags_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateDeviceTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "device_identifier": "device123", - "device_tags": [ - "tag1", - "tag2" - ], - "resource_type": "tags" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_device_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_device_tags_example_call_tool.py deleted file mode 100644 index 7b25000a3..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_device_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateDeviceTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'device_identifier': 'device123', 'device_tags': ['tag1', 'tag2'], 'resource_type': 'tags' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_domain_allowlist_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_domain_allowlist_example_call_tool.js deleted file mode 100644 index 68939d212..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_domain_allowlist_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateDomainAllowlist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "allowed_domains_list": [ - "example.com", - "test.com" - ], - "email_domain_allowlist_type": "domain_allowlist", - "enable_email_domain_allowlist": true, - "organization_identifier": "org123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_domain_allowlist_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_domain_allowlist_example_call_tool.py deleted file mode 100644 index 244f838d6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_domain_allowlist_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateDomainAllowlist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'allowed_domains_list': ['example.com', 'test.com'], - 'email_domain_allowlist_type': 'domain_allowlist', - 'enable_email_domain_allowlist': True, - 'organization_identifier': 'org123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_downtime_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_downtime_example_call_tool.js deleted file mode 100644 index 3eae44e0c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_downtime_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateDowntime"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "downtime_id": "12345", - "request_body": "{\"message\":\"Update downtime details\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_downtime_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_downtime_example_call_tool.py deleted file mode 100644 index ed8c57632..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_downtime_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateDowntime" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'downtime_id': '12345', 'request_body': '{"message":"Update downtime details"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_fastly_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_fastly_account_example_call_tool.js deleted file mode 100644 index 251544ab0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_fastly_account_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateFastlyAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fastly_account_id": "12345", - "fastly_account_name": "MyFastlyAccount", - "json_api_type": "fastly-accounts" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_fastly_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_fastly_account_example_call_tool.py deleted file mode 100644 index 96d95e44b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_fastly_account_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateFastlyAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fastly_account_id': '12345', - 'fastly_account_name': 'MyFastlyAccount', - 'json_api_type': 'fastly-accounts' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_fastly_service_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_fastly_service_example_call_tool.js deleted file mode 100644 index be874a2cf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_fastly_service_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateFastlyService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fastly_account_id": "123456", - "fastly_service_id": "abc123", - "fastly_service_identifier": "service-xyz", - "fastly_service_json_api_type": "fastly-services", - "fastly_service_tags": [ - "tag1", - "tag2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_fastly_service_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_fastly_service_example_call_tool.py deleted file mode 100644 index 190948491..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_fastly_service_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateFastlyService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fastly_account_id': '123456', - 'fastly_service_id': 'abc123', - 'fastly_service_identifier': 'service-xyz', - 'fastly_service_json_api_type': 'fastly-services', - 'fastly_service_tags': ['tag1', 'tag2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_gcp_scan_options_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_gcp_scan_options_example_call_tool.js deleted file mode 100644 index 440bb7c53..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_gcp_scan_options_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateGcpScanOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gcp_project_id": "my-gcp-project", - "enable_container_vulnerability_scanning": true, - "enable_host_vulnerability_scanning": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_gcp_scan_options_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_gcp_scan_options_example_call_tool.py deleted file mode 100644 index 200ac38b4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_gcp_scan_options_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateGcpScanOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gcp_project_id': 'my-gcp-project', - 'enable_container_vulnerability_scanning': True, - 'enable_host_vulnerability_scanning': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_gcp_sts_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_gcp_sts_account_example_call_tool.js deleted file mode 100644 index 1e1948f91..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_gcp_sts_account_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateGcpStsAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "service_account_id": "my-service-account-123", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_gcp_sts_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_gcp_sts_account_example_call_tool.py deleted file mode 100644 index a1783190e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_gcp_sts_account_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateGcpStsAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'service_account_id': 'my-service-account-123', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_gcp_usage_cost_status_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_gcp_usage_cost_status_example_call_tool.js deleted file mode 100644 index 4b4f91c3d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_gcp_usage_cost_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateGcpUsageCostStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cloud_account_id": 123456789, - "cloud_cost_management_enabled": true, - "gcp_usage_cost_config_request_type": "gcp_uc_config_patch_request" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_gcp_usage_cost_status_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_gcp_usage_cost_status_example_call_tool.py deleted file mode 100644 index 3877fad0e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_gcp_usage_cost_status_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateGcpUsageCostStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cloud_account_id': 123456789, - 'cloud_cost_management_enabled': True, - 'gcp_usage_cost_config_request_type': 'gcp_uc_config_patch_request' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_incident_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_incident_example_call_tool.js deleted file mode 100644 index 51d8b412b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_incident_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateIncident"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_uuid": "123e4567-e89b-12d3-a456-426614174000", - "include_related_objects": [ - "users", - "comments" - ], - "request_body": "{\"status\":\"resolved\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_incident_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_incident_example_call_tool.py deleted file mode 100644 index 6aec9aff5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_incident_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateIncident" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'include_related_objects': ['users', 'comments'], - 'request_body': '{"status":"resolved"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_incident_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_incident_integration_example_call_tool.js deleted file mode 100644 index 3b3306c42..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_incident_integration_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateIncidentIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_uuid": "123e4567-e89b-12d3-a456-426614174000", - "integration_metadata_uuid": "abc123", - "request_body": "{\"status\":\"resolved\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_incident_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_incident_integration_example_call_tool.py deleted file mode 100644 index f7b0bfbcc..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_incident_integration_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateIncidentIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'integration_metadata_uuid': 'abc123', - 'request_body': '{"status":"resolved"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_incident_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_incident_notification_rule_example_call_tool.js deleted file mode 100644 index c7eade974..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_incident_notification_rule_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateIncidentNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "notification_rule_id": "12345", - "include_resources": "created_by_user,last_modified_by_user", - "request_body": "{\"name\":\"High CPU Alert\",\"threshold\":80}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_incident_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_incident_notification_rule_example_call_tool.py deleted file mode 100644 index 256e0f2e1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_incident_notification_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateIncidentNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'notification_rule_id': '12345', - 'include_resources': 'created_by_user,last_modified_by_user', - 'request_body': '{"name":"High CPU Alert","threshold":80}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_incident_todo_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_incident_todo_example_call_tool.js deleted file mode 100644 index b127b031b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_incident_todo_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateIncidentTodo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_uuid": "123e4567-e89b-12d3-a456-426614174000", - "incident_todo_uuid": "987e6543-e21b-12d3-a456-426614174001", - "request_body": "{\"status\":\"completed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_incident_todo_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_incident_todo_example_call_tool.py deleted file mode 100644 index ad25633ef..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_incident_todo_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateIncidentTodo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'incident_todo_uuid': '987e6543-e21b-12d3-a456-426614174001', - 'request_body': '{"status":"completed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_incident_type_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_incident_type_example_call_tool.js deleted file mode 100644 index 9283c91e6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_incident_type_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateIncidentType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_type_uuid": "123e4567-e89b-12d3-a456-426614174000", - "request_body": "{\"name\":\"Updated Incident Type\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_incident_type_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_incident_type_example_call_tool.py deleted file mode 100644 index deea4be11..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_incident_type_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateIncidentType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_type_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'request_body': '{"name":"Updated Incident Type"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_ip_allowlist_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_ip_allowlist_example_call_tool.js deleted file mode 100644 index 64ec40c66..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_ip_allowlist_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateIpAllowlist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"ip\":\"192.168.1.1\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_ip_allowlist_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_ip_allowlist_example_call_tool.py deleted file mode 100644 index bf64707ce..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_ip_allowlist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateIpAllowlist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"ip":"192.168.1.1","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_issue_assignee_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_issue_assignee_example_call_tool.js deleted file mode 100644 index 580e8c71f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_issue_assignee_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateIssueAssignee"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_identifier": "12345", - "object_type": "assignee", - "user_identifier": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_issue_assignee_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_issue_assignee_example_call_tool.py deleted file mode 100644 index 018c906b7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_issue_assignee_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateIssueAssignee" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_identifier': '12345', 'object_type': 'assignee', 'user_identifier': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_issue_state_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_issue_state_example_call_tool.js deleted file mode 100644 index 0d2385ab1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_issue_state_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateIssueState"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_id_value": "12345", - "issue_identifier": "issue-abc", - "issue_object_type": "error_tracking_issue", - "issue_state": "RESOLVED" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_issue_state_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_issue_state_example_call_tool.py deleted file mode 100644 index fd6ab48e9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_issue_state_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateIssueState" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_id_value': '12345', - 'issue_identifier': 'issue-abc', - 'issue_object_type': 'error_tracking_issue', - 'issue_state': 'RESOLVED' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_log_based_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_log_based_metric_example_call_tool.js deleted file mode 100644 index 66b607401..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_log_based_metric_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateLogBasedMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "log_metric_name": "error_rate", - "request_body": "{\"threshold\": 0.05, \"enabled\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_log_based_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_log_based_metric_example_call_tool.py deleted file mode 100644 index 84cdee0bd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_log_based_metric_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateLogBasedMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'log_metric_name': 'error_rate', - 'request_body': '{"threshold": 0.05, "enabled": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_logs_archive_order_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_logs_archive_order_example_call_tool.js deleted file mode 100644 index 49520089b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_logs_archive_order_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateLogsArchiveOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "archive_ids_order": [ - "archive_1", - "archive_2", - "archive_3" - ], - "archive_order_type": "archive_order" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_logs_archive_order_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_logs_archive_order_example_call_tool.py deleted file mode 100644 index 7a11dda17..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_logs_archive_order_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateLogsArchiveOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'archive_ids_order': ['archive_1', 'archive_2', 'archive_3'], - 'archive_order_type': 'archive_order' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_logs_custom_destination_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_logs_custom_destination_example_call_tool.js deleted file mode 100644 index ec3cc5917..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_logs_custom_destination_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateLogsCustomDestination"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "custom_destination_id": "12345", - "request_body": "{\"name\":\"New Destination Name\",\"url\":\"https://example.com/logs\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_logs_custom_destination_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_logs_custom_destination_example_call_tool.py deleted file mode 100644 index 8bb665f35..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_logs_custom_destination_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateLogsCustomDestination" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'custom_destination_id': '12345', - 'request_body': '{"name":"New Destination Name","url":"https://example.com/logs"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_metric_tag_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_metric_tag_configuration_example_call_tool.js deleted file mode 100644 index e55f25083..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_metric_tag_configuration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateMetricTagConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "metric_name": "cpu.usage", - "request_body": "{\"tags\":{\"exclude\":[\"env:dev\"]}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_metric_tag_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_metric_tag_configuration_example_call_tool.py deleted file mode 100644 index 3d04fcce1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_metric_tag_configuration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateMetricTagConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'metric_name': 'cpu.usage', 'request_body': '{"tags":{"exclude":["env:dev"]}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_monitor_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_monitor_notification_rule_example_call_tool.js deleted file mode 100644 index 3b039e72c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_monitor_notification_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateMonitorNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "monitor_notification_rule_id": "12345", - "request_body": "{\"threshold\": 5, \"notify\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_monitor_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_monitor_notification_rule_example_call_tool.py deleted file mode 100644 index 9fe29cfc8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_monitor_notification_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateMonitorNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'monitor_notification_rule_id': '12345', - 'request_body': '{"threshold": 5, "notify": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_monitor_user_template_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_monitor_user_template_example_call_tool.js deleted file mode 100644 index 1f9d91d37..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_monitor_user_template_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateMonitorUserTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "monitor_user_template_id": "template_123", - "request_body": "{\"name\":\"Updated Template\",\"settings\":{\"threshold\":75}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_monitor_user_template_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_monitor_user_template_example_call_tool.py deleted file mode 100644 index 723086c44..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_monitor_user_template_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateMonitorUserTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'monitor_user_template_id': 'template_123', - 'request_body': '{"name":"Updated Template","settings":{"threshold":75}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_ms_teams_tenant_handle_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_ms_teams_tenant_handle_example_call_tool.js deleted file mode 100644 index b5f247423..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_ms_teams_tenant_handle_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateMsTeamsTenantHandle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_handle_id": "12345", - "channel_id": "67890", - "tenant_handle_name": "MyTenantHandle" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_ms_teams_tenant_handle_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_ms_teams_tenant_handle_example_call_tool.py deleted file mode 100644 index 02919a23a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_ms_teams_tenant_handle_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateMsTeamsTenantHandle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_handle_id': '12345', 'channel_id': '67890', 'tenant_handle_name': 'MyTenantHandle' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_notification_template_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_notification_template_example_call_tool.js deleted file mode 100644 index 78477377e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_notification_template_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateNotificationTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_template_id": "12345", - "notification_template_resource_type": "notification_templates", - "template_id": "abcde", - "notification_template_name": "Alert Notification", - "notification_template_subject": "Incident Alert: {{incident.title}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_notification_template_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_notification_template_example_call_tool.py deleted file mode 100644 index 890f12a3c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_notification_template_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateNotificationTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_template_id': '12345', - 'notification_template_resource_type': 'notification_templates', - 'template_id': 'abcde', - 'notification_template_name': 'Alert Notification', - 'notification_template_subject': 'Incident Alert: {{incident.title}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_okta_account_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_okta_account_example_call_tool.js deleted file mode 100644 index 69c1d3623..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_okta_account_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateOktaAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_id": "123456", - "account_type": "okta-accounts", - "okta_account_api_key": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_okta_account_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_okta_account_example_call_tool.py deleted file mode 100644 index 5063e0b96..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_okta_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateOktaAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_id': '123456', 'account_type': 'okta-accounts', 'okta_account_api_key': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_on_call_escalation_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_on_call_escalation_policy_example_call_tool.js deleted file mode 100644 index 6639479b5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_on_call_escalation_policy_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateOnCallEscalationPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "escalation_policy_id": "policy_123", - "include_relationships": "teams,steps", - "request_body": "{\"name\":\"New Policy Name\",\"description\":\"Updated description\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_on_call_escalation_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_on_call_escalation_policy_example_call_tool.py deleted file mode 100644 index 5ebe9a361..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_on_call_escalation_policy_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateOnCallEscalationPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'escalation_policy_id': 'policy_123', - 'include_relationships': 'teams,steps', - 'request_body': '{"name":"New Policy Name","description":"Updated description"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_on_call_schedule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_on_call_schedule_example_call_tool.js deleted file mode 100644 index 12df43b1b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_on_call_schedule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateOnCallSchedule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "schedule_id": "12345", - "request_body": "{\"name\":\"Updated Schedule\",\"time_zone\":\"UTC\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_on_call_schedule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_on_call_schedule_example_call_tool.py deleted file mode 100644 index 6a77c185f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_on_call_schedule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateOnCallSchedule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'schedule_id': '12345', - 'request_body': '{"name":"Updated Schedule","time_zone":"UTC"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_opsgenie_service_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_opsgenie_service_example_call_tool.js deleted file mode 100644 index a0fd4810d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_opsgenie_service_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateOpsgenieService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "opsgenie_service_id": "12345", - "service_uuid": "abcde-12345-fghij-67890", - "opsgenie_service_name": "Updated Service Name", - "opsgenie_service_region": "us" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_opsgenie_service_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_opsgenie_service_example_call_tool.py deleted file mode 100644 index bdc2d3bf9..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_opsgenie_service_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateOpsgenieService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'opsgenie_service_id': '12345', - 'service_uuid': 'abcde-12345-fghij-67890', - 'opsgenie_service_name': 'Updated Service Name', - 'opsgenie_service_region': 'us' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_org_config_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_org_config_example_call_tool.js deleted file mode 100644 index 4652a53ff..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_org_config_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateOrgConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "org_config_data_type": "org_configs", - "org_config_value": "new_feature_enabled", - "organization_configuration_name": "feature_toggle" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_org_config_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_org_config_example_call_tool.py deleted file mode 100644 index 7e07a8d53..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_org_config_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateOrgConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'org_config_data_type': 'org_configs', - 'org_config_value': 'new_feature_enabled', - 'organization_configuration_name': 'feature_toggle' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_org_connection_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_org_connection_example_call_tool.js deleted file mode 100644 index 219122864..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_org_connection_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateOrgConnection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "org_connection_id": "12345", - "org_connection_type": "org_connection", - "organization_connection_id": "67890", - "updated_connection_types": [ - "type1", - "type2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_org_connection_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_org_connection_example_call_tool.py deleted file mode 100644 index 2ae3eec23..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_org_connection_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateOrgConnection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'org_connection_id': '12345', - 'org_connection_type': 'org_connection', - 'organization_connection_id': '67890', - 'updated_connection_types': ['type1', 'type2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_pipeline_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_pipeline_example_call_tool.js deleted file mode 100644 index edecb5aee..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_pipeline_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdatePipeline"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "pipeline_id": "12345", - "request_body": "{\"name\":\"Updated Pipeline\",\"steps\":[{\"type\":\"process\",\"name\":\"Step 1\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_pipeline_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_pipeline_example_call_tool.py deleted file mode 100644 index 7b8466c06..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_pipeline_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdatePipeline" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'pipeline_id': '12345', - 'request_body': '{"name":"Updated Pipeline","steps":[{"type":"process","name":"Step 1"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_powerpack_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_powerpack_example_call_tool.js deleted file mode 100644 index f2074ef82..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_powerpack_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdatePowerpack"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "powerpack_id": "12345", - "request_body": "{\"name\":\"Updated Powerpack\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_powerpack_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_powerpack_example_call_tool.py deleted file mode 100644 index 3fc4290e6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_powerpack_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdatePowerpack" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'powerpack_id': '12345', - 'request_body': '{"name":"Updated Powerpack","description":"This is an updated description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_reference_table_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_reference_table_example_call_tool.js deleted file mode 100644 index 54d04eb91..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_reference_table_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateReferenceTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "reference_table_id": "table_123", - "request_body": "{\"data\":\"new data\",\"description\":\"Updated description\",\"tags\":[\"tag1\",\"tag2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_reference_table_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_reference_table_example_call_tool.py deleted file mode 100644 index 5b7e61043..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_reference_table_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateReferenceTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'reference_table_id': 'table_123', - 'request_body': '{"data":"new data","description":"Updated ' - 'description","tags":["tag1","tag2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_resource_filters_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_resource_filters_example_call_tool.js deleted file mode 100644 index 5740d03e5..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_resource_filters_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateResourceFilters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filter\":\"new_filter\",\"include\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_resource_filters_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_resource_filters_example_call_tool.py deleted file mode 100644 index 1c2e5c3cd..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_resource_filters_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateResourceFilters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filter":"new_filter","include":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_restriction_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_restriction_policy_example_call_tool.js deleted file mode 100644 index 81c38ada4..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_restriction_policy_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateRestrictionPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_identifier": "dashboard:12345", - "allow_self_lockout": true, - "request_body": "{\"permissions\":\"editor\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_restriction_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_restriction_policy_example_call_tool.py deleted file mode 100644 index 3ce8bd086..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_restriction_policy_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateRestrictionPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_identifier': 'dashboard:12345', - 'allow_self_lockout': True, - 'request_body': '{"permissions":"editor"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_rum_application_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_rum_application_example_call_tool.js deleted file mode 100644 index 863f4144f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_rum_application_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateRumApplication"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "rum_app_id": "12345", - "rum_application_id": "abcde", - "product_analytics_retention_state": "MAX", - "rum_application_name": "My RUM App" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_rum_application_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_rum_application_example_call_tool.py deleted file mode 100644 index 8de22beec..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_rum_application_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateRumApplication" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'rum_app_id': '12345', - 'rum_application_id': 'abcde', - 'product_analytics_retention_state': 'MAX', - 'rum_application_name': 'My RUM App' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_rum_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_rum_metric_example_call_tool.js deleted file mode 100644 index b62001831..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_rum_metric_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateRumMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "metric_name": "user_engagement", - "request_body": "{\"threshold\": 0.5, \"enabled\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_rum_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_rum_metric_example_call_tool.py deleted file mode 100644 index e39ec71b7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_rum_metric_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateRumMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'metric_name': 'user_engagement', - 'request_body': '{"threshold": 0.5, "enabled": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_rum_retention_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_rum_retention_filter_example_call_tool.js deleted file mode 100644 index 73a540920..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_rum_retention_filter_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateRumRetentionFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_id": "123e4567-e89b-12d3-a456-426614174000", - "retention_filter_id": "abc123", - "rum_application_id": "app456", - "enable_retention_filter": true, - "filter_name": "User Session Filter", - "resource_type": "retention_filters", - "rum_event_type_filter": "session", - "rum_retention_filter_query": "status:active", - "sample_rate": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_rum_retention_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_rum_retention_filter_example_call_tool.py deleted file mode 100644 index f7aca9f52..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_rum_retention_filter_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateRumRetentionFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_id': '123e4567-e89b-12d3-a456-426614174000', - 'retention_filter_id': 'abc123', - 'rum_application_id': 'app456', - 'enable_retention_filter': True, - 'filter_name': 'User Session Filter', - 'resource_type': 'retention_filters', - 'rum_event_type_filter': 'session', - 'rum_retention_filter_query': 'status:active', - 'sample_rate': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_scanning_group_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_scanning_group_example_call_tool.js deleted file mode 100644 index 084463e03..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_scanning_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateScanningGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "group_id": "12345", - "request_body": "{\"rules\":[{\"id\":\"rule1\",\"order\":1},{\"id\":\"rule2\",\"order\":2}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_scanning_group_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_scanning_group_example_call_tool.py deleted file mode 100644 index aefdf79ad..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_scanning_group_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateScanningGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'group_id': '12345', - 'request_body': '{"rules":[{"id":"rule1","order":1},{"id":"rule2","order":2}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_scanning_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_scanning_rule_example_call_tool.js deleted file mode 100644 index 3eddfd894..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_scanning_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateScanningRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "rule_id": "12345", - "request_body": "{\"name\":\"Updated Rule\",\"description\":\"This is an updated scanning rule.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_scanning_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_scanning_rule_example_call_tool.py deleted file mode 100644 index 63c9fb34b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_scanning_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateScanningRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'rule_id': '12345', - 'request_body': '{"name":"Updated Rule","description":"This is an updated scanning rule."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_scorecard_outcomes_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_scorecard_outcomes_example_call_tool.js deleted file mode 100644 index 90f8e7082..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_scorecard_outcomes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateScorecardOutcomes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"outcomes\":[{\"rule_id\":\"123\",\"outcome\":\"pass\"},{\"rule_id\":\"456\",\"outcome\":\"fail\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_scorecard_outcomes_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_scorecard_outcomes_example_call_tool.py deleted file mode 100644 index c419e00f0..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_scorecard_outcomes_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateScorecardOutcomes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"outcomes":[{"rule_id":"123","outcome":"pass"},{"rule_id":"456","outcome":"fail"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_scorecard_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_scorecard_rule_example_call_tool.js deleted file mode 100644 index 156d5ce6b..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_scorecard_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateScorecardRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "rule_id": "12345", - "request_body": "{\"name\":\"Updated Rule\",\"condition\":\"status:critical\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_scorecard_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_scorecard_rule_example_call_tool.py deleted file mode 100644 index 9fcaf4528..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_scorecard_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateScorecardRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'rule_id': '12345', - 'request_body': '{"name":"Updated Rule","condition":"status:critical"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_security_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_security_filter_example_call_tool.js deleted file mode 100644 index 6fdf8c318..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_security_filter_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateSecurityFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "security_filter_id": "filter123", - "request_body": "{\"name\":\"Updated Filter\",\"rules\":[{\"type\":\"allow\",\"value\":\"*\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_security_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_security_filter_example_call_tool.py deleted file mode 100644 index 53bc432e7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_security_filter_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateSecurityFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'security_filter_id': 'filter123', - 'request_body': '{"name":"Updated Filter","rules":[{"type":"allow","value":"*"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_security_monitoring_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_security_monitoring_rule_example_call_tool.js deleted file mode 100644 index 17aff681f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_security_monitoring_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateSecurityMonitoringRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "security_rule_id": "12345", - "request_body": "{\"name\":\"Updated Rule\",\"query\":\"avg(last_5m):avg:my.metric > 100\",\"options\":{\"notify\":true}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_security_monitoring_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_security_monitoring_rule_example_call_tool.py deleted file mode 100644 index 92ecef241..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_security_monitoring_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateSecurityMonitoringRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'security_rule_id': '12345', - 'request_body': '{"name":"Updated Rule","query":"avg(last_5m):avg:my.metric > ' - '100","options":{"notify":true}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_software_catalog_kind_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_software_catalog_kind_example_call_tool.js deleted file mode 100644 index 285e7e1d1..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_software_catalog_kind_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateSoftwareCatalogKind"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"kind\":\"new_kind\",\"description\":\"A new kind for the software catalog.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_software_catalog_kind_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_software_catalog_kind_example_call_tool.py deleted file mode 100644 index 1180f763f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_software_catalog_kind_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateSoftwareCatalogKind" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"kind":"new_kind","description":"A new kind for the software catalog."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_span_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_span_metric_example_call_tool.js deleted file mode 100644 index 6d1a5dc5d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_span_metric_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateSpanMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "span_metric_name": "my_metric", - "request_body": "{\"new_value\": 100}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_span_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_span_metric_example_call_tool.py deleted file mode 100644 index 1c50650ce..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_span_metric_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateSpanMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'span_metric_name': 'my_metric', 'request_body': '{"new_value": 100}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_suppression_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_suppression_rule_example_call_tool.js deleted file mode 100644 index 2874a5e99..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_suppression_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateSuppressionRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "suppression_rule_id": "12345", - "request_body": "{\"name\":\"Updated Rule\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_suppression_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_suppression_rule_example_call_tool.py deleted file mode 100644 index 81eceb683..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_suppression_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateSuppressionRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'suppression_rule_id': '12345', - 'request_body': '{"name":"Updated Rule","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_tag_pipeline_ruleset_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_tag_pipeline_ruleset_example_call_tool.js deleted file mode 100644 index 7504b104a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_tag_pipeline_ruleset_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateTagPipelineRuleset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "ruleset_identifier": "my_ruleset_123", - "request_body": "{\"rules\":[{\"tag\":\"env:production\",\"action\":\"allow\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_tag_pipeline_ruleset_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_tag_pipeline_ruleset_example_call_tool.py deleted file mode 100644 index 5233e3524..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_tag_pipeline_ruleset_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateTagPipelineRuleset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'ruleset_identifier': 'my_ruleset_123', - 'request_body': '{"rules":[{"tag":"env:production","action":"allow"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_team_info_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_team_info_example_call_tool.js deleted file mode 100644 index 088f5ae55..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_team_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateTeamInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_identifier": "team-123", - "request_body": "{\"links\":[{\"url\":\"https://example.com\",\"name\":\"Example Link\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_team_info_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_team_info_example_call_tool.py deleted file mode 100644 index 47677581e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_team_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateTeamInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_identifier': 'team-123', - 'request_body': '{"links":[{"url":"https://example.com","name":"Example Link"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_team_link_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_team_link_example_call_tool.js deleted file mode 100644 index 0a8800e39..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_team_link_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateTeamLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "link_identifier": "link123", - "link_label": "Documentation", - "link_url": "https://docs.example.com", - "team_identifier": "team456", - "link_position": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_team_link_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_team_link_example_call_tool.py deleted file mode 100644 index 34cb70712..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_team_link_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateTeamLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'link_identifier': 'link123', - 'link_label': 'Documentation', - 'link_url': 'https://docs.example.com', - 'team_identifier': 'team456', - 'link_position': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_team_permission_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_team_permission_example_call_tool.js deleted file mode 100644 index 0d0ab02ca..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_team_permission_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateTeamPermission"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_to_update": "edit_dashboard", - "team_identifier": "team_123", - "allowed_user_type_for_action": "members" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_team_permission_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_team_permission_example_call_tool.py deleted file mode 100644 index 8a36b4011..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_team_permission_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateTeamPermission" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_to_update': 'edit_dashboard', - 'team_identifier': 'team_123', - 'allowed_user_type_for_action': 'members' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_user_team_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_user_team_membership_example_call_tool.js deleted file mode 100644 index 3542a9dec..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_user_team_membership_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateUserTeamMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "team_123", - "user_identifier": "user_456", - "user_role_in_team": "admin" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_user_team_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_user_team_membership_example_call_tool.py deleted file mode 100644 index a8f638c48..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_user_team_membership_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateUserTeamMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': 'team_123', 'user_identifier': 'user_456', 'user_role_in_team': 'admin' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_waf_custom_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_waf_custom_rule_example_call_tool.js deleted file mode 100644 index 4a9b1992d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_waf_custom_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateWafCustomRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "custom_rule_id": "rule-12345", - "request_body": "{\"action\":\"allow\",\"conditions\":[{\"type\":\"ip\",\"value\":\"192.168.1.1\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_waf_custom_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_waf_custom_rule_example_call_tool.py deleted file mode 100644 index 2d5f17bb7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_waf_custom_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateWafCustomRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'custom_rule_id': 'rule-12345', - 'request_body': '{"action":"allow","conditions":[{"type":"ip","value":"192.168.1.1"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_waf_exclusion_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_waf_exclusion_filter_example_call_tool.js deleted file mode 100644 index 78c5b3a03..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_waf_exclusion_filter_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateWafExclusionFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "waf_exclusion_filter_identifier": "filter123", - "request_body": "{\"action\":\"update\",\"value\":\"new_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_waf_exclusion_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_waf_exclusion_filter_example_call_tool.py deleted file mode 100644 index 9fb62b020..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_waf_exclusion_filter_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateWafExclusionFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'waf_exclusion_filter_identifier': 'filter123', - 'request_body': '{"action":"update","value":"new_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_workflow_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_workflow_by_id_example_call_tool.js deleted file mode 100644 index f8132c383..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_workflow_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateWorkflowById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "workflow_identifier": "12345", - "request_body": "{\"name\":\"Updated Workflow\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_workflow_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_workflow_by_id_example_call_tool.py deleted file mode 100644 index 9c8e45f81..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_workflow_by_id_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateWorkflowById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'workflow_identifier': '12345', - 'request_body': '{"name":"Updated Workflow","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_workflows_webhook_handle_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_workflows_webhook_handle_example_call_tool.js deleted file mode 100644 index 59f64cdae..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_workflows_webhook_handle_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateWorkflowsWebhookHandle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_handle_id": "12345", - "webhook_handle_name": "My Webhook", - "workflows_webhook_url": "https://example.com/webhook" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_workflows_webhook_handle_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_workflows_webhook_handle_example_call_tool.py deleted file mode 100644 index 4b914aed6..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_workflows_webhook_handle_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateWorkflowsWebhookHandle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_handle_id': '12345', - 'webhook_handle_name': 'My Webhook', - 'workflows_webhook_url': 'https://example.com/webhook' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_workload_protection_agent_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_workload_protection_agent_rule_example_call_tool.js deleted file mode 100644 index a9b1710e8..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_workload_protection_agent_rule_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateWorkloadProtectionAgentRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "agent_rule_id": "rule123", - "agent_policy_id": "policy456", - "request_body": "{\"setting\":\"new_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_workload_protection_agent_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_workload_protection_agent_rule_example_call_tool.py deleted file mode 100644 index e55ef77cf..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_workload_protection_agent_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateWorkloadProtectionAgentRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'agent_rule_id': 'rule123', - 'agent_policy_id': 'policy456', - 'request_body': '{"setting":"new_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_workload_protection_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/update_workload_protection_policy_example_call_tool.js deleted file mode 100644 index 654b20e25..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_workload_protection_policy_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UpdateWorkloadProtectionPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_policy_id": "12345", - "host_tags_conditions": [ - "env:production", - "role:webserver" - ], - "policy_description": "This policy protects web servers in production.", - "policy_enabled": true, - "policy_name": "Web Server Protection" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/update_workload_protection_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/update_workload_protection_policy_example_call_tool.py deleted file mode 100644 index 67d769f69..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/update_workload_protection_policy_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UpdateWorkloadProtectionPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_policy_id': '12345', - 'host_tags_conditions': ['env:production', 'role:webserver'], - 'policy_description': 'This policy protects web servers in production.', - 'policy_enabled': True, - 'policy_name': 'Web Server Protection' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/upload_custom_costs_file_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/upload_custom_costs_file_example_call_tool.js deleted file mode 100644 index 799912828..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/upload_custom_costs_file_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.UploadCustomCostsFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"costs\":[{\"service\":\"serviceA\",\"cost\":100},{\"service\":\"serviceB\",\"cost\":200}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/upload_custom_costs_file_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/upload_custom_costs_file_example_call_tool.py deleted file mode 100644 index 60c2b445d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/upload_custom_costs_file_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.UploadCustomCostsFile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"costs":[{"service":"serviceA","cost":100},{"service":"serviceB","cost":200}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/validate_monitor_template_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/validate_monitor_template_example_call_tool.js deleted file mode 100644 index fa0e76d7a..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/validate_monitor_template_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ValidateMonitorTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/validate_monitor_template_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/validate_monitor_template_example_call_tool.py deleted file mode 100644 index 716fdca3c..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/validate_monitor_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ValidateMonitorTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/validate_monitor_user_template_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/validate_monitor_user_template_example_call_tool.js deleted file mode 100644 index 475ad3391..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/validate_monitor_user_template_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ValidateMonitorUserTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"template_name\":\"Sample Template\",\"version\":1,\"content\":{\"key\":\"value\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/validate_monitor_user_template_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/validate_monitor_user_template_example_call_tool.py deleted file mode 100644 index 8766bc406..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/validate_monitor_user_template_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ValidateMonitorUserTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"template_name":"Sample Template","version":1,"content":{"key":"value"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/validate_pipeline_config_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/validate_pipeline_config_example_call_tool.js deleted file mode 100644 index b97382f2d..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/validate_pipeline_config_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ValidatePipelineConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "get_request_schema" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/validate_pipeline_config_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/validate_pipeline_config_example_call_tool.py deleted file mode 100644 index b4acf0c12..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/validate_pipeline_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ValidatePipelineConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'get_request_schema' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/validate_security_monitoring_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/validate_security_monitoring_rule_example_call_tool.js deleted file mode 100644 index 06e46ebf7..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/validate_security_monitoring_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ValidateSecurityMonitoringRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"rule_name\":\"example_rule\",\"query\":\"avg(last_5m):avg:my.metric > 100\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/validate_security_monitoring_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/validate_security_monitoring_rule_example_call_tool.py deleted file mode 100644 index 8932c9a9f..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/validate_security_monitoring_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ValidateSecurityMonitoringRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"rule_name":"example_rule","query":"avg(last_5m):avg:my.metric > ' - '100","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/validate_suppression_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/validate_suppression_rule_example_call_tool.js deleted file mode 100644 index 126da9c66..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/validate_suppression_rule_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ValidateSuppressionRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "is_suppression_rule_enabled": true, - "suppression_rule_name": "BlockSQLInjection", - "suppression_rule_query": "query:sql_injection", - "exclusion_query_on_input_data": "status:error", - "resource_type": "suppressions" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/validate_suppression_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/validate_suppression_rule_example_call_tool.py deleted file mode 100644 index d544b6a10..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/validate_suppression_rule_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ValidateSuppressionRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'is_suppression_rule_enabled': True, - 'suppression_rule_name': 'BlockSQLInjection', - 'suppression_rule_query': 'query:sql_injection', - 'exclusion_query_on_input_data': 'status:error', - 'resource_type': 'suppressions' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/datadog_api/validate_tag_pipeline_query_example_call_tool.js b/public/examples/integrations/mcp-servers/datadog_api/validate_tag_pipeline_query_example_call_tool.js deleted file mode 100644 index 6c4962a39..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/validate_tag_pipeline_query_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "DatadogApi.ValidateTagPipelineQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "query_attributes": "SELECT * FROM tags WHERE status='active'", - "query_request_data_id": "req12345", - "query_resource_type": "validate_query" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/datadog_api/validate_tag_pipeline_query_example_call_tool.py b/public/examples/integrations/mcp-servers/datadog_api/validate_tag_pipeline_query_example_call_tool.py deleted file mode 100644 index f88965d0e..000000000 --- a/public/examples/integrations/mcp-servers/datadog_api/validate_tag_pipeline_query_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "DatadogApi.ValidateTagPipelineQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'query_attributes': "SELECT * FROM tags WHERE status='active'", - 'query_request_data_id': 'req12345', - 'query_resource_type': 'validate_query' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/dropbox/download_file_example_call_tool.js b/public/examples/integrations/mcp-servers/dropbox/download_file_example_call_tool.js deleted file mode 100644 index e1d8e1437..000000000 --- a/public/examples/integrations/mcp-servers/dropbox/download_file_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Dropbox.DownloadFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - file_path: "/My Documents/My Folder/quarterly report 2025.pdf", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/dropbox/download_file_example_call_tool.py b/public/examples/integrations/mcp-servers/dropbox/download_file_example_call_tool.py deleted file mode 100644 index ed9e02800..000000000 --- a/public/examples/integrations/mcp-servers/dropbox/download_file_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Dropbox.DownloadFile" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "file_path": "/My Documents/My Folder/quarterly report 2025.pdf", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/dropbox/list_items_in_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/dropbox/list_items_in_folder_example_call_tool.js deleted file mode 100644 index 511d01434..000000000 --- a/public/examples/integrations/mcp-servers/dropbox/list_items_in_folder_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Dropbox.ListItemsInFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - folder_path: "/My Documents/My Folder", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/dropbox/list_items_in_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/dropbox/list_items_in_folder_example_call_tool.py deleted file mode 100644 index 7a2259603..000000000 --- a/public/examples/integrations/mcp-servers/dropbox/list_items_in_folder_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Dropbox.ListItemsInFolder" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "folder_path": "/My Documents/My Folder", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/dropbox/search_files_and_folders_example_call_tool.js b/public/examples/integrations/mcp-servers/dropbox/search_files_and_folders_example_call_tool.js deleted file mode 100644 index 9d9710ee1..000000000 --- a/public/examples/integrations/mcp-servers/dropbox/search_files_and_folders_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Dropbox.SearchFilesAndFolders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - keywords: "quarterly report 2025", - search_in_folder_path: "/My Documents/My Folder", - filter_by_category: ["pdf", "document"], - limit: 5, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/dropbox/search_files_and_folders_example_call_tool.py b/public/examples/integrations/mcp-servers/dropbox/search_files_and_folders_example_call_tool.py deleted file mode 100644 index 4ac98da5c..000000000 --- a/public/examples/integrations/mcp-servers/dropbox/search_files_and_folders_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Dropbox.SearchFilesAndFolders" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "keywords": "quarterly report 2025", - "search_in_folder_path": "/My Documents/My Folder", - "filter_by_category": ["pdf", "document"], - "limit": 5, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/e2b/create_static_matplotlib_chart_example_call_tool.js b/public/examples/integrations/mcp-servers/e2b/create_static_matplotlib_chart_example_call_tool.js deleted file mode 100644 index 719932e7a..000000000 --- a/public/examples/integrations/mcp-servers/e2b/create_static_matplotlib_chart_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -// Initialize the Arcade client -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "E2b.CreateStaticMatplotlibChart"; - -// Define the code to create a chart -const chartCode = ` -import matplotlib.pyplot as plt - -labels = ['Apples', 'Bananas', 'Cherries', 'Dates'] -sizes = [30, 25, 20, 25] -colors = ['red', 'yellow', 'purple', 'brown'] - -plt.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%', startangle=90) - -plt.axis('equal') - -plt.title('Fruit Distribution') - -plt.savefig('fruit_pie_chart.png') -`; - -const toolInput = { - code: chartCode -}; - -// Execute the tool -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/e2b/create_static_matplotlib_chart_example_call_tool.py b/public/examples/integrations/mcp-servers/e2b/create_static_matplotlib_chart_example_call_tool.py deleted file mode 100644 index 6ddb2b1b4..000000000 --- a/public/examples/integrations/mcp-servers/e2b/create_static_matplotlib_chart_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -from arcadepy import Arcade - -# Initialize the Arcade client -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "E2b.CreateStaticMatplotlibChart" - -# Define the code to create a chart -chart_code = """ -import matplotlib.pyplot as plt - -labels = ['Apples', 'Bananas', 'Cherries', 'Dates'] -sizes = [30, 25, 20, 25] -colors = ['red', 'yellow', 'purple', 'brown'] - -plt.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%', startangle=90) - -plt.axis('equal') - -plt.title('Fruit Distribution') - -plt.savefig('fruit_pie_chart.png') -""" - -tool_input = {"code": chart_code} - -# Execute the tool -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/e2b/run_code_example_call_tool.js b/public/examples/integrations/mcp-servers/e2b/run_code_example_call_tool.js deleted file mode 100644 index 8dbcb7940..000000000 --- a/public/examples/integrations/mcp-servers/e2b/run_code_example_call_tool.js +++ /dev/null @@ -1,59 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -// Initialize the Arcade client -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "E2b.RunCode"; - -// Define the code to merge sort a list -const mergeSort = ` -function mergeSort(arr) { - if (arr.length <= 1) { - return arr; - } - - const mid = Math.floor(arr.length / 2); - const left = mergeSort(arr.slice(0, mid)); - const right = mergeSort(arr.slice(mid)); - - return merge(left, right); -} - -function merge(left, right) { - const result = []; - let i = 0; - let j = 0; - - while (i < left.length && j < right.length) { - if (left[i] < right[j]) { - result.push(left[i]); - i++; - } else { - result.push(right[j]); - j++; - } - } - - return [...result, ...left.slice(i), ...right.slice(j)]; -} - -const sampleList = ["banana", "apple", "cherry", "date", "elderberry"]; - -const sortedList = mergeSort(sampleList); -console.log("Sorted list:", sortedList); -`; - -const toolInput = { - code: mergeSort, - language: "js" -}; - -// Execute the tool -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/e2b/run_code_example_call_tool.py b/public/examples/integrations/mcp-servers/e2b/run_code_example_call_tool.py deleted file mode 100644 index 336bfcf9e..000000000 --- a/public/examples/integrations/mcp-servers/e2b/run_code_example_call_tool.py +++ /dev/null @@ -1,55 +0,0 @@ -from arcadepy import Arcade - -# Initialize the Arcade client -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "E2b.RunCode" - -# Define the code to merge sort a list -merge_sort = """ -def merge_sort(arr): - if len(arr) <= 1: - return arr - - mid = len(arr) // 2 - left = merge_sort(arr[:mid]) - right = merge_sort(arr[mid:]) - - return merge(left, right) - -def merge(left, right): - result = [] - i, j = 0, 0 - - while i < len(left) and j < len(right): - if left[i] < right[j]: - result.append(left[i]) - i += 1 - else: - result.append(right[j]) - j += 1 - - result.extend(left[i:]) - result.extend(right[j:]) - - return result - -sample_list = ["banana", "apple", "cherry", "date", "elderberry"] - -sorted_list = merge_sort(sample_list) -print("Sorted list:", sorted_list) -""" - -tool_input = { - "code": merge_sort, - "language": "python", -} - -# Execute the tool -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/engine_api/authorize_user_tool_access_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/authorize_user_tool_access_example_call_tool.js deleted file mode 100644 index f3b0645ed..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/authorize_user_tool_access_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.AuthorizeUserToolAccess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tool_name_for_authorization": "DataAnalysisTool", - "redirect_uri_after_authorization": "https://example.com/redirect", - "tool_version": "1.0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/authorize_user_tool_access_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/authorize_user_tool_access_example_call_tool.py deleted file mode 100644 index abd78ab0e..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/authorize_user_tool_access_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.AuthorizeUserToolAccess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tool_name_for_authorization': 'DataAnalysisTool', - 'redirect_uri_after_authorization': 'https://example.com/redirect', - 'tool_version': '1.0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/authorize_worker_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/authorize_worker_example_call_tool.js deleted file mode 100644 index fa8442484..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/authorize_worker_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.AuthorizeWorker"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "worker_id": "W12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/authorize_worker_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/authorize_worker_example_call_tool.py deleted file mode 100644 index 0471c7c2c..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/authorize_worker_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.AuthorizeWorker" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'worker_id': 'W12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/check_arcade_engine_health_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/check_arcade_engine_health_example_call_tool.js deleted file mode 100644 index 9ae3ecca9..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/check_arcade_engine_health_example_call_tool.js +++ /dev/null @@ -1,14 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "EngineApi.CheckArcadeEngineHealth"; - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/check_arcade_engine_health_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/check_arcade_engine_health_example_call_tool.py deleted file mode 100644 index daf791c64..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/check_arcade_engine_health_example_call_tool.py +++ /dev/null @@ -1,16 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "EngineApi.CheckArcadeEngineHealth" - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/check_auth_status_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/check_auth_status_example_call_tool.js deleted file mode 100644 index b4a6382c6..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/check_auth_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.CheckAuthStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "authorization_id": "auth_12345", - "timeout_in_seconds": 30 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/check_auth_status_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/check_auth_status_example_call_tool.py deleted file mode 100644 index 14697ce3c..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/check_auth_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.CheckAuthStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'authorization_id': 'auth_12345', 'timeout_in_seconds': 30 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/create_worker_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/create_worker_example_call_tool.js deleted file mode 100644 index 4042f66c9..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/create_worker_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.CreateWorker"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "worker_id": "worker_001", - "enable_worker": true, - "http_retry_attempts": 3, - "worker_http_uri": "http://example.com/worker", - "worker_type": "developer" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/create_worker_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/create_worker_example_call_tool.py deleted file mode 100644 index f54a46a3e..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/create_worker_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.CreateWorker" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'worker_id': 'worker_001', - 'enable_worker': True, - 'http_retry_attempts': 3, - 'worker_http_uri': 'http://example.com/worker', - 'worker_type': 'developer' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/delete_auth_provider_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/delete_auth_provider_example_call_tool.js deleted file mode 100644 index ab6f77e46..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/delete_auth_provider_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.DeleteAuthProvider"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "auth_provider_id": "auth123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/delete_auth_provider_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/delete_auth_provider_example_call_tool.py deleted file mode 100644 index 8f3a21e7f..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/delete_auth_provider_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.DeleteAuthProvider" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'auth_provider_id': 'auth123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/delete_mcp_endpoint_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/delete_mcp_endpoint_example_call_tool.js deleted file mode 100644 index 2259e30e9..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/delete_mcp_endpoint_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.DeleteMcpEndpoint"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/delete_mcp_endpoint_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/delete_mcp_endpoint_example_call_tool.py deleted file mode 100644 index caabc17b6..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/delete_mcp_endpoint_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.DeleteMcpEndpoint" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/delete_secret_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/delete_secret_by_id_example_call_tool.js deleted file mode 100644 index 64fc23745..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/delete_secret_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.DeleteSecretById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "secret_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/delete_secret_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/delete_secret_by_id_example_call_tool.py deleted file mode 100644 index b037f96b3..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/delete_secret_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.DeleteSecretById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'secret_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/delete_user_auth_connection_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/delete_user_auth_connection_example_call_tool.js deleted file mode 100644 index 6d9a49e61..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/delete_user_auth_connection_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.DeleteUserAuthConnection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "connection_id": "conn_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/delete_user_auth_connection_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/delete_user_auth_connection_example_call_tool.py deleted file mode 100644 index 9f22bfc5b..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/delete_user_auth_connection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.DeleteUserAuthConnection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'connection_id': 'conn_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/delete_worker_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/delete_worker_example_call_tool.js deleted file mode 100644 index 1908c392d..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/delete_worker_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.DeleteWorker"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "worker_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/delete_worker_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/delete_worker_example_call_tool.py deleted file mode 100644 index a59fd4e06..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/delete_worker_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.DeleteWorker" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'worker_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/execute_tool_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/execute_tool_example_call_tool.js deleted file mode 100644 index 23eb80bf5..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/execute_tool_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.ExecuteTool"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"tool_name\":\"SampleTool\",\"parameters\":{\"param1\":\"value1\",\"param2\":\"value2\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/execute_tool_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/execute_tool_example_call_tool.py deleted file mode 100644 index b354d0cbb..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/execute_tool_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.ExecuteTool" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"tool_name":"SampleTool","parameters":{"param1":"value1","param2":"value2"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/fetch_tools_page_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/fetch_tools_page_example_call_tool.js deleted file mode 100644 index f19910922..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/fetch_tools_page_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.FetchToolsPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "worker_id": "12345", - "number_of_items": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/fetch_tools_page_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/fetch_tools_page_example_call_tool.py deleted file mode 100644 index 175dcced5..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/fetch_tools_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.FetchToolsPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'worker_id': '12345', 'number_of_items': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/get_auth_provider_details_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/get_auth_provider_details_example_call_tool.js deleted file mode 100644 index 67747171c..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_auth_provider_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.GetAuthProviderDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "auth_provider_id": "provider123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/get_auth_provider_details_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/get_auth_provider_details_example_call_tool.py deleted file mode 100644 index f3f2abe26..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_auth_provider_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.GetAuthProviderDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'auth_provider_id': 'provider123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/get_formatted_tool_specification_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/get_formatted_tool_specification_example_call_tool.js deleted file mode 100644 index 3d5523aa7..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_formatted_tool_specification_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.GetFormattedToolSpecification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tool_name": "DataAnalyzer", - "provider_format": "JSON", - "user_id": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/get_formatted_tool_specification_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/get_formatted_tool_specification_example_call_tool.py deleted file mode 100644 index fb41a058d..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_formatted_tool_specification_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.GetFormattedToolSpecification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tool_name': 'DataAnalyzer', 'provider_format': 'JSON', 'user_id': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/get_openapi_specification_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/get_openapi_specification_example_call_tool.js deleted file mode 100644 index ec2740d72..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_openapi_specification_example_call_tool.js +++ /dev/null @@ -1,14 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "EngineApi.GetOpenAPISpecification"; - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/get_openapi_specification_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/get_openapi_specification_example_call_tool.py deleted file mode 100644 index c258a5316..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_openapi_specification_example_call_tool.py +++ /dev/null @@ -1,16 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "EngineApi.GetOpenAPISpecification" - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/get_project_details_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/get_project_details_example_call_tool.js deleted file mode 100644 index ed34d5e54..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_project_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.GetProjectDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "authorization_token": "Bearer abc123xyz", - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/get_project_details_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/get_project_details_example_call_tool.py deleted file mode 100644 index d67f0e52f..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_project_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.GetProjectDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'authorization_token': 'Bearer abc123xyz', 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/get_scheduled_tool_details_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/get_scheduled_tool_details_example_call_tool.js deleted file mode 100644 index ddca8e3bd..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_scheduled_tool_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.GetScheduledToolDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "scheduled_execution_id": "exec_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/get_scheduled_tool_details_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/get_scheduled_tool_details_example_call_tool.py deleted file mode 100644 index 82d3c4d4f..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_scheduled_tool_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.GetScheduledToolDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'scheduled_execution_id': 'exec_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/get_scheduled_tool_executions_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/get_scheduled_tool_executions_example_call_tool.js deleted file mode 100644 index b08781066..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_scheduled_tool_executions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.GetScheduledToolExecutions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "items_limit": 10, - "list_offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/get_scheduled_tool_executions_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/get_scheduled_tool_executions_example_call_tool.py deleted file mode 100644 index ef22adc74..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_scheduled_tool_executions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.GetScheduledToolExecutions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'items_limit': 10, 'list_offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/get_tool_specification_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/get_tool_specification_example_call_tool.js deleted file mode 100644 index 106b5bbbc..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_tool_specification_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.GetToolSpecification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tool_name": "ExampleTool", - "formats_to_include": [ - "json", - "xml" - ], - "user_identifier": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/get_tool_specification_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/get_tool_specification_example_call_tool.py deleted file mode 100644 index 0c9a5898e..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_tool_specification_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.GetToolSpecification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tool_name': 'ExampleTool', 'formats_to_include': ['json', 'xml'], 'user_identifier': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/get_tools_list_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/get_tools_list_example_call_tool.js deleted file mode 100644 index 3f5331f8a..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_tools_list_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.GetToolsList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_formats": [ - "format1", - "format2" - ], - "items_per_page": 10, - "start_offset": 0, - "toolkit_name": "default", - "user_id": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/get_tools_list_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/get_tools_list_example_call_tool.py deleted file mode 100644 index 3634a13b0..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_tools_list_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.GetToolsList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_formats': ['format1', 'format2'], - 'items_per_page': 10, - 'start_offset': 0, - 'toolkit_name': 'default', - 'user_id': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/get_worker_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/get_worker_by_id_example_call_tool.js deleted file mode 100644 index 0b7431d56..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_worker_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.GetWorkerById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "worker_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/get_worker_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/get_worker_by_id_example_call_tool.py deleted file mode 100644 index 269301a4e..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_worker_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.GetWorkerById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'worker_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/get_worker_health_status_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/get_worker_health_status_example_call_tool.js deleted file mode 100644 index 24918132d..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_worker_health_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.GetWorkerHealthStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "worker_id": "worker_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/get_worker_health_status_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/get_worker_health_status_example_call_tool.py deleted file mode 100644 index 5981296e5..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/get_worker_health_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.GetWorkerHealthStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'worker_id': 'worker_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/list_accessible_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/list_accessible_projects_example_call_tool.js deleted file mode 100644 index d4bab56d7..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/list_accessible_projects_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.ListAccessibleProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "bearer_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c", - "items_to_skip": 5, - "maximum_items_to_return": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/list_accessible_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/list_accessible_projects_example_call_tool.py deleted file mode 100644 index b427624fa..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/list_accessible_projects_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.ListAccessibleProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'bearer_token': 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c', - 'items_to_skip': 5, - 'maximum_items_to_return': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/list_auth_connections_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/list_auth_connections_example_call_tool.js deleted file mode 100644 index 5488590f1..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/list_auth_connections_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.ListAuthConnections"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_offset": 0, - "page_size": 10, - "provider_id": "auth_provider_123", - "user_id": "user_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/list_auth_connections_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/list_auth_connections_example_call_tool.py deleted file mode 100644 index ac19778ce..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/list_auth_connections_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.ListAuthConnections" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_offset': 0, 'page_size': 10, 'provider_id': 'auth_provider_123', 'user_id': 'user_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/list_available_auth_providers_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/list_available_auth_providers_example_call_tool.js deleted file mode 100644 index 0d0108177..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/list_available_auth_providers_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.ListAvailableAuthProviders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/list_available_auth_providers_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/list_available_auth_providers_example_call_tool.py deleted file mode 100644 index dd4b202a2..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/list_available_auth_providers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.ListAvailableAuthProviders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/list_workers_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/list_workers_example_call_tool.js deleted file mode 100644 index cd8f863cc..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/list_workers_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.ListWorkers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "number_of_items_to_return": 10, - "start_offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/list_workers_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/list_workers_example_call_tool.py deleted file mode 100644 index f0efe59be..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/list_workers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.ListWorkers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'number_of_items_to_return': 10, 'start_offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/retrieve_formatted_tools_list_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/retrieve_formatted_tools_list_example_call_tool.js deleted file mode 100644 index 0f474a904..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/retrieve_formatted_tools_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.RetrieveFormattedToolsList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_toolkit": "data_processing", - "number_of_items_to_return": 10, - "provider_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/retrieve_formatted_tools_list_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/retrieve_formatted_tools_list_example_call_tool.py deleted file mode 100644 index d8a32d0d5..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/retrieve_formatted_tools_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.RetrieveFormattedToolsList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_toolkit': 'data_processing', 'number_of_items_to_return': 10, 'provider_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/test_worker_connection_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/test_worker_connection_example_call_tool.js deleted file mode 100644 index 421e6cb50..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/test_worker_connection_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.TestWorkerConnection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "worker_connection_type": "database", - "http_uri": "http://example.com/api", - "mcp_uri": "mcp://example.com/connection" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/test_worker_connection_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/test_worker_connection_example_call_tool.py deleted file mode 100644 index a22d442a5..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/test_worker_connection_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.TestWorkerConnection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'worker_connection_type': 'database', - 'http_uri': 'http://example.com/api', - 'mcp_uri': 'mcp://example.com/connection' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/engine_api/update_session_verification_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/engine_api/update_session_verification_settings_example_call_tool.js deleted file mode 100644 index 8a8a042fb..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/update_session_verification_settings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "EngineApi.UpdateSessionVerificationSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "unsafe_skip_verification": true, - "verifier_url": "https://example.com/verifier" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/engine_api/update_session_verification_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/engine_api/update_session_verification_settings_example_call_tool.py deleted file mode 100644 index 643d10441..000000000 --- a/public/examples/integrations/mcp-servers/engine_api/update_session_verification_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "EngineApi.UpdateSessionVerificationSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'unsafe_skip_verification': True, 'verifier_url': 'https://example.com/verifier' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/cancel_enrichment_process_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/cancel_enrichment_process_example_call_tool.js deleted file mode 100644 index 2d1669c72..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/cancel_enrichment_process_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.CancelEnrichmentProcess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enrichment_id": "enrich_12345", - "webset_id": "webset_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/cancel_enrichment_process_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/cancel_enrichment_process_example_call_tool.py deleted file mode 100644 index 133192a2a..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/cancel_enrichment_process_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.CancelEnrichmentProcess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enrichment_id': 'enrich_12345', 'webset_id': 'webset_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/cancel_running_search_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/cancel_running_search_example_call_tool.js deleted file mode 100644 index ef4a675c5..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/cancel_running_search_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.CancelRunningSearch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_id": "abc123", - "webset_id": "webset456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/cancel_running_search_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/cancel_running_search_example_call_tool.py deleted file mode 100644 index dac760b25..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/cancel_running_search_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.CancelRunningSearch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_id': 'abc123', 'webset_id': 'webset456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/cancel_webset_operations_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/cancel_webset_operations_example_call_tool.js deleted file mode 100644 index b84f66a89..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/cancel_webset_operations_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.CancelWebsetOperations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webset_identifier": "webset_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/cancel_webset_operations_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/cancel_webset_operations_example_call_tool.py deleted file mode 100644 index 0c94dbdc1..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/cancel_webset_operations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.CancelWebsetOperations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webset_identifier': 'webset_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/create_data_import_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/create_data_import_example_call_tool.js deleted file mode 100644 index 0ff3f6eba..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/create_data_import_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.CreateDataImport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "data_import_details": { - "enrichment_fields": [ - "name", - "email" - ], - "searchable_fields": [ - "address", - "phone" - ], - "exclude_duplicates": true - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/create_data_import_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/create_data_import_example_call_tool.py deleted file mode 100644 index 29620bf54..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/create_data_import_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.CreateDataImport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'data_import_details': { 'enrichment_fields': ['name', 'email'], - 'searchable_fields': ['address', 'phone'], - 'exclude_duplicates': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/create_monitor_for_websets_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/create_monitor_for_websets_example_call_tool.js deleted file mode 100644 index f2a107d7d..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/create_monitor_for_websets_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.CreateMonitorForWebsets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "monitor_configuration": { - "schedule": "0 0 * * *", - "timezone": "UTC", - "operations": { - "search": "true", - "refresh": "true" - } - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/create_monitor_for_websets_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/create_monitor_for_websets_example_call_tool.py deleted file mode 100644 index 186e2f9a3..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/create_monitor_for_websets_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.CreateMonitorForWebsets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'monitor_configuration': { 'schedule': '0 0 * * *', - 'timezone': 'UTC', - 'operations': {'search': 'true', 'refresh': 'true' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/create_research_request_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/create_research_request_example_call_tool.js deleted file mode 100644 index 4aa4ddd33..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/create_research_request_example_call_tool.js +++ /dev/null @@ -1,43 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.CreateResearchRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "research_request_details": { - "topic": "AI advancements", - "parameters": { - "date_range": "2020-2023", - "fields": [ - "machine learning", - "natural language processing" - ] - }, - "criteria": { - "min_publications": 10 - } - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/create_research_request_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/create_research_request_example_call_tool.py deleted file mode 100644 index 36ec96de2..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/create_research_request_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.CreateResearchRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'research_request_details': { 'topic': 'AI advancements', - 'parameters': { 'date_range': '2020-2023', - 'fields': [ 'machine learning', - 'natural language processing']}, - 'criteria': {'min_publications': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/create_webhook_for_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/create_webhook_for_notifications_example_call_tool.js deleted file mode 100644 index 1a9a35b10..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/create_webhook_for_notifications_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.CreateWebhookForNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_configuration": { - "events": [ - "user_signup", - "order_placed" - ], - "url": "https://example.com/webhook" - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/create_webhook_for_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/create_webhook_for_notifications_example_call_tool.py deleted file mode 100644 index 61338aa25..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/create_webhook_for_notifications_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.CreateWebhookForNotifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_configuration': { 'events': ['user_signup', 'order_placed'], - 'url': 'https://example.com/webhook' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/create_webset_enrichment_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/create_webset_enrichment_example_call_tool.js deleted file mode 100644 index f14589f29..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/create_webset_enrichment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.CreateWebsetEnrichment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enrichment_details": { - "feature": "SEO Optimization", - "description": "Enhance webset with SEO tools and analytics." - }, - "webset_identifier": "webset_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/create_webset_enrichment_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/create_webset_enrichment_example_call_tool.py deleted file mode 100644 index 3cc23d1df..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/create_webset_enrichment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.CreateWebsetEnrichment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enrichment_details': { 'feature': 'SEO Optimization', - 'description': 'Enhance webset with SEO tools and analytics.'}, - 'webset_identifier': 'webset_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/create_webset_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/create_webset_example_call_tool.js deleted file mode 100644 index f4c4b167a..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/create_webset_example_call_tool.js +++ /dev/null @@ -1,47 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.CreateWebset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webset_configuration": { - "externalId": "12345", - "searchConfig": { - "enabled": true, - "filters": [ - "filter1", - "filter2" - ] - }, - "importConfig": { - "source": "api", - "format": "json" - }, - "enrichmentConfig": { - "enabled": false - } - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/create_webset_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/create_webset_example_call_tool.py deleted file mode 100644 index 2c85ebead..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/create_webset_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.CreateWebset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webset_configuration': { 'externalId': '12345', - 'searchConfig': { 'enabled': True, - 'filters': ['filter1', 'filter2']}, - 'importConfig': {'source': 'api', 'format': 'json'}, - 'enrichmentConfig': {'enabled': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/create_webset_search_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/create_webset_search_example_call_tool.js deleted file mode 100644 index d5deab5c0..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/create_webset_search_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.CreateWebsetSearch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_criteria": { - "keywords": "machine learning", - "date_range": "2022-01-01 to 2022-12-31" - }, - "webset_id": "webset_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/create_webset_search_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/create_webset_search_example_call_tool.py deleted file mode 100644 index b55599e6a..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/create_webset_search_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.CreateWebsetSearch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_criteria': {'keywords': 'machine learning', 'date_range': '2022-01-01 to 2022-12-31'}, - 'webset_id': 'webset_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/delete_enrichment_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/delete_enrichment_example_call_tool.js deleted file mode 100644 index bc95bb436..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/delete_enrichment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.DeleteEnrichment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enrichment_id": "enrich_12345", - "webset_id": "webset_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/delete_enrichment_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/delete_enrichment_example_call_tool.py deleted file mode 100644 index a60ae7077..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/delete_enrichment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.DeleteEnrichment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enrichment_id': 'enrich_12345', 'webset_id': 'webset_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/delete_import_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/delete_import_example_call_tool.js deleted file mode 100644 index a44a18588..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/delete_import_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.DeleteImport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "import_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/delete_import_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/delete_import_example_call_tool.py deleted file mode 100644 index 6d79c8cc5..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/delete_import_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.DeleteImport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'import_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/delete_monitor_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/delete_monitor_example_call_tool.js deleted file mode 100644 index 3dd75182d..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/delete_monitor_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.DeleteMonitor"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "monitor_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/delete_monitor_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/delete_monitor_example_call_tool.py deleted file mode 100644 index 861c3993a..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/delete_monitor_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.DeleteMonitor" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'monitor_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/delete_webset_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/delete_webset_example_call_tool.js deleted file mode 100644 index 066edbce0..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/delete_webset_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.DeleteWebset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webset_identifier": "webset_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/delete_webset_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/delete_webset_example_call_tool.py deleted file mode 100644 index d9aa95a81..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/delete_webset_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.DeleteWebset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webset_identifier': 'webset_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/delete_webset_item_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/delete_webset_item_example_call_tool.js deleted file mode 100644 index 4ccdab999..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/delete_webset_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.DeleteWebsetItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webset_identifier": "webset_123", - "webset_item_id": "item_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/delete_webset_item_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/delete_webset_item_example_call_tool.py deleted file mode 100644 index 3b0fd0f43..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/delete_webset_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.DeleteWebsetItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webset_identifier': 'webset_123', 'webset_item_id': 'item_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/find_similar_links_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/find_similar_links_example_call_tool.js deleted file mode 100644 index 0649f6dc9..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/find_similar_links_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.FindSimilarLinks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"link\":\"https://example.com\",\"retrieve_contents\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/find_similar_links_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/find_similar_links_example_call_tool.py deleted file mode 100644 index 7a854d3bb..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/find_similar_links_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.FindSimilarLinks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"link":"https://example.com","retrieve_contents":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/generate_answer_summary_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/generate_answer_summary_example_call_tool.js deleted file mode 100644 index af2b4d033..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/generate_answer_summary_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.GenerateAnswerSummary"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query": "What are the benefits of using solar energy?", - "enable_streaming_response": false, - "include_full_text": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/generate_answer_summary_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/generate_answer_summary_example_call_tool.py deleted file mode 100644 index 4786db3bd..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/generate_answer_summary_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.GenerateAnswerSummary" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query': 'What are the benefits of using solar energy?', - 'enable_streaming_response': False, - 'include_full_text': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/get_content_details_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/get_content_details_example_call_tool.js deleted file mode 100644 index 9c81e61ca..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_content_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.GetContentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"contentId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/get_content_details_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/get_content_details_example_call_tool.py deleted file mode 100644 index 7289acc40..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_content_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.GetContentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"contentId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/get_enrichment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/get_enrichment_details_example_call_tool.js deleted file mode 100644 index ce3638c9b..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_enrichment_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.GetEnrichmentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enrichment_id": "enrich123", - "webset_identifier": "webset456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/get_enrichment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/get_enrichment_details_example_call_tool.py deleted file mode 100644 index e40f79ea8..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_enrichment_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.GetEnrichmentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enrichment_id': 'enrich123', 'webset_identifier': 'webset456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/get_event_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/get_event_by_id_example_call_tool.js deleted file mode 100644 index 2dfbd7885..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_event_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.GetEventById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/get_event_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/get_event_by_id_example_call_tool.py deleted file mode 100644 index 74a6c72b9..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_event_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.GetEventById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/get_research_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/get_research_by_id_example_call_tool.js deleted file mode 100644 index cc71b5f75..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_research_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.GetResearchById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_streaming": "true", - "event_filter": "update,delete", - "research_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/get_research_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/get_research_by_id_example_call_tool.py deleted file mode 100644 index 69a550959..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_research_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.GetResearchById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_streaming': 'true', 'event_filter': 'update,delete', 'research_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/get_search_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/get_search_by_id_example_call_tool.js deleted file mode 100644 index 43e11398f..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_search_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.GetSearchById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_id": "12345", - "webset_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/get_search_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/get_search_by_id_example_call_tool.py deleted file mode 100644 index 817980cbe..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_search_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.GetSearchById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_id': '12345', 'webset_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/get_specific_import_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/get_specific_import_example_call_tool.js deleted file mode 100644 index 62a222e1f..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_specific_import_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.GetSpecificImport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "import_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/get_specific_import_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/get_specific_import_example_call_tool.py deleted file mode 100644 index 0c951aaa1..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_specific_import_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.GetSpecificImport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'import_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/get_specific_monitor_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/get_specific_monitor_example_call_tool.js deleted file mode 100644 index 36e7b3545..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_specific_monitor_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.GetSpecificMonitor"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "monitor_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/get_specific_monitor_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/get_specific_monitor_example_call_tool.py deleted file mode 100644 index ce696bed8..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_specific_monitor_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.GetSpecificMonitor" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'monitor_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/get_specific_monitor_run_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/get_specific_monitor_run_example_call_tool.js deleted file mode 100644 index b228aa150..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_specific_monitor_run_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.GetSpecificMonitorRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "monitor_id": "monitor_123", - "run_id": "run_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/get_specific_monitor_run_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/get_specific_monitor_run_example_call_tool.py deleted file mode 100644 index 678002396..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_specific_monitor_run_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.GetSpecificMonitorRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'monitor_id': 'monitor_123', 'run_id': 'run_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/get_webhook_info_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/get_webhook_info_example_call_tool.js deleted file mode 100644 index ed64cc5e9..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_webhook_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.GetWebhookInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/get_webhook_info_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/get_webhook_info_example_call_tool.py deleted file mode 100644 index 37437916b..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_webhook_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.GetWebhookInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/get_webhooks_list_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/get_webhooks_list_example_call_tool.js deleted file mode 100644 index e39189e16..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_webhooks_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.GetWebhooksList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor": "abc123", - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/get_webhooks_list_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/get_webhooks_list_example_call_tool.py deleted file mode 100644 index 967800ec0..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_webhooks_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.GetWebhooksList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor': 'abc123', 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/get_webset_details_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/get_webset_details_example_call_tool.js deleted file mode 100644 index 076d87da6..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_webset_details_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.GetWebsetDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webset_identifier": "webset_123", - "resources_to_expand": [ - "metadata", - "assets" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/get_webset_details_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/get_webset_details_example_call_tool.py deleted file mode 100644 index a78d0d9e2..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_webset_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.GetWebsetDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webset_identifier': 'webset_123', 'resources_to_expand': ['metadata', 'assets'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/get_webset_item_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/get_webset_item_example_call_tool.js deleted file mode 100644 index 746962b7c..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_webset_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.GetWebsetItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webset_identifier": "webset_123", - "webset_item_id": "item_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/get_webset_item_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/get_webset_item_example_call_tool.py deleted file mode 100644 index 51146c42f..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/get_webset_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.GetWebsetItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webset_identifier': 'webset_123', 'webset_item_id': 'item_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/list_imports_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/list_imports_example_call_tool.js deleted file mode 100644 index 17a1ec589..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_imports_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.ListImports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor": "abc123", - "results_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/list_imports_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/list_imports_example_call_tool.py deleted file mode 100644 index 31be4aec8..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_imports_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.ListImports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor': 'abc123', 'results_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/list_monitor_runs_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/list_monitor_runs_example_call_tool.js deleted file mode 100644 index 2eceae125..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_monitor_runs_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.ListMonitorRuns"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "monitor_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/list_monitor_runs_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/list_monitor_runs_example_call_tool.py deleted file mode 100644 index 74c608adf..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_monitor_runs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.ListMonitorRuns" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'monitor_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/list_research_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/list_research_requests_example_call_tool.js deleted file mode 100644 index fc3a6fdd0..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_research_requests_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.ListResearchRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor": "abc123", - "results_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/list_research_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/list_research_requests_example_call_tool.py deleted file mode 100644 index 3a27cd9f7..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_research_requests_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.ListResearchRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor': 'abc123', 'results_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/list_system_events_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/list_system_events_example_call_tool.js deleted file mode 100644 index ef336ccf8..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_system_events_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.ListSystemEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_after": "2023-10-01T00:00:00Z", - "event_types_filter": [ - "error", - "warning" - ], - "results_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/list_system_events_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/list_system_events_example_call_tool.py deleted file mode 100644 index a956031c8..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_system_events_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.ListSystemEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_after': '2023-10-01T00:00:00Z', - 'event_types_filter': ['error', 'warning'], - 'results_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/list_webhook_attempts_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/list_webhook_attempts_example_call_tool.js deleted file mode 100644 index 7ad42013d..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_webhook_attempts_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.ListWebhookAttempts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": "abc123", - "event_type_filter": "webset.created", - "filter_by_successful_attempts": true, - "results_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/list_webhook_attempts_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/list_webhook_attempts_example_call_tool.py deleted file mode 100644 index c180eb2fe..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_webhook_attempts_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.ListWebhookAttempts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': 'abc123', - 'event_type_filter': 'webset.created', - 'filter_by_successful_attempts': True, - 'results_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/list_webset_items_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/list_webset_items_example_call_tool.js deleted file mode 100644 index 0c30da64b..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_webset_items_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.ListWebsetItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webset_identifier": "webset_123", - "pagination_cursor": "cursor_456", - "result_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/list_webset_items_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/list_webset_items_example_call_tool.py deleted file mode 100644 index cae46206a..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_webset_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.ListWebsetItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webset_identifier': 'webset_123', 'pagination_cursor': 'cursor_456', 'result_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/list_websets_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/list_websets_example_call_tool.js deleted file mode 100644 index e24463a32..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_websets_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.ListWebsets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor": "abc123", - "websets_return_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/list_websets_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/list_websets_example_call_tool.py deleted file mode 100644 index 5ca31488c..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_websets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.ListWebsets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor': 'abc123', 'websets_return_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/list_website_monitors_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/list_website_monitors_example_call_tool.js deleted file mode 100644 index 846d0147e..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_website_monitors_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.ListWebsiteMonitors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webset_id": "12345", - "results_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/list_website_monitors_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/list_website_monitors_example_call_tool.py deleted file mode 100644 index 8a808738a..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/list_website_monitors_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.ListWebsiteMonitors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webset_id': '12345', 'results_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/perform_exa_search_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/perform_exa_search_example_call_tool.js deleted file mode 100644 index 39a09df51..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/perform_exa_search_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.PerformExaSearch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"query\":\"example search term\",\"include_details\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/perform_exa_search_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/perform_exa_search_example_call_tool.py deleted file mode 100644 index 15c52acbb..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/perform_exa_search_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.PerformExaSearch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"query":"example search term","include_details":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/preview_search_decomposition_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/preview_search_decomposition_example_call_tool.js deleted file mode 100644 index d4b9aa48e..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/preview_search_decomposition_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.PreviewSearchDecomposition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query_details": { - "search_string": "machine learning", - "additional_params": { - "filter": "recent", - "limit": 10 - } - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/preview_search_decomposition_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/preview_search_decomposition_example_call_tool.py deleted file mode 100644 index d187035ed..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/preview_search_decomposition_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.PreviewSearchDecomposition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query_details': { 'search_string': 'machine learning', - 'additional_params': {'filter': 'recent', 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/remove_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/remove_webhook_example_call_tool.js deleted file mode 100644 index 27973c2a9..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/remove_webhook_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.RemoveWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/remove_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/remove_webhook_example_call_tool.py deleted file mode 100644 index 4741eeaaa..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/remove_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.RemoveWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/update_imports_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/update_imports_configuration_example_call_tool.js deleted file mode 100644 index 280945a8e..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/update_imports_configuration_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.UpdateImportsConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "import_configuration_details": { - "setting1": "value1", - "setting2": "value2" - }, - "import_id": "import123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/update_imports_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/update_imports_configuration_example_call_tool.py deleted file mode 100644 index 966ed2409..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/update_imports_configuration_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.UpdateImportsConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'import_configuration_details': {'setting1': 'value1', 'setting2': 'value2'}, - 'import_id': 'import123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/update_monitor_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/update_monitor_configuration_example_call_tool.js deleted file mode 100644 index e76edb4d0..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/update_monitor_configuration_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.UpdateMonitorConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "monitor_configuration_details": { - "threshold": 75, - "alert": "email", - "frequency": "5m" - }, - "monitor_id": "monitor_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/update_monitor_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/update_monitor_configuration_example_call_tool.py deleted file mode 100644 index 2584b765d..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/update_monitor_configuration_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.UpdateMonitorConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'monitor_configuration_details': {'threshold': 75, 'alert': 'email', 'frequency': '5m'}, - 'monitor_id': 'monitor_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/update_webhook_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/update_webhook_settings_example_call_tool.js deleted file mode 100644 index 15ec1d491..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/update_webhook_settings_example_call_tool.js +++ /dev/null @@ -1,42 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.UpdateWebhookSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": "abc123", - "webhook_update_request_body": { - "url": "https://example.com/webhook", - "events": [ - "event1", - "event2" - ], - "metadata": { - "key1": "value1", - "key2": "value2" - } - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/update_webhook_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/update_webhook_settings_example_call_tool.py deleted file mode 100644 index bc4ac85e1..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/update_webhook_settings_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.UpdateWebhookSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': 'abc123', - 'webhook_update_request_body': { 'url': 'https://example.com/webhook', - 'events': ['event1', 'event2'], - 'metadata': {'key1': 'value1', 'key2': 'value2' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/update_webset_enrichment_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/update_webset_enrichment_example_call_tool.js deleted file mode 100644 index 75e568123..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/update_webset_enrichment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.UpdateWebsetEnrichment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enrichment_configuration_details": { - "key": "value" - }, - "enrichment_configuration_id": "config123", - "webset_identifier": "webset456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/update_webset_enrichment_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/update_webset_enrichment_example_call_tool.py deleted file mode 100644 index 36a072f80..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/update_webset_enrichment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.UpdateWebsetEnrichment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enrichment_configuration_details': {'key': 'value'}, - 'enrichment_configuration_id': 'config123', - 'webset_identifier': 'webset456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/exa_api/update_webset_example_call_tool.js b/public/examples/integrations/mcp-servers/exa_api/update_webset_example_call_tool.js deleted file mode 100644 index 20398eaf3..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/update_webset_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ExaApi.UpdateWebset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webset_details": { - "title": "New Webset Title", - "description": "Updated description for the webset." - }, - "webset_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/exa_api/update_webset_example_call_tool.py b/public/examples/integrations/mcp-servers/exa_api/update_webset_example_call_tool.py deleted file mode 100644 index 6d0e8b769..000000000 --- a/public/examples/integrations/mcp-servers/exa_api/update_webset_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ExaApi.UpdateWebset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webset_details': { 'title': 'New Webset Title', - 'description': 'Updated description for the webset.'}, - 'webset_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma/add_comment_or_reply_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/add_comment_or_reply_example_call_tool.js deleted file mode 100644 index 41e0c808e..000000000 --- a/public/examples/integrations/mcp-servers/figma/add_comment_or_reply_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Figma.AddCommentOrReply"; - -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -await client.auth.waitForCompletion(authResponse); - -// Example 1: Add a new comment to a node -const toolInput = { - file_key: "abc123xyz", // Replace with your Figma file key - message: "This design looks great!", - node_id: "0:1", // Optional: attach to a specific node - x: 100.0, // Optional: X position on the node - y: 200.0, // Optional: Y position on the node -}; - -// Example 2: Reply to an existing comment -// const toolInput = { -// file_key: "abc123xyz", -// message: "I agree!", -// parent_comment_id: "comment123", // Reply to this comment -// }; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/add_comment_or_reply_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/add_comment_or_reply_example_call_tool.py deleted file mode 100644 index 144df788e..000000000 --- a/public/examples/integrations/mcp-servers/figma/add_comment_or_reply_example_call_tool.py +++ /dev/null @@ -1,38 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Figma.AddCommentOrReply" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -client.auth.wait_for_completion(auth_response) - -# Example 1: Add a new comment to a node -tool_input = { - "file_key": "abc123xyz", # Replace with your Figma file key - "message": "This design looks great!", - "node_id": "0:1", # Optional: attach to a specific node - "x": 100.0, # Optional: X position on the node - "y": 200.0, # Optional: Y position on the node -} - -# Example 2: Reply to an existing comment -# tool_input = { -# "file_key": "abc123xyz", -# "message": "I agree!", -# "parent_comment_id": "comment123", # Reply to this comment -# } - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma/export_image_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/export_image_example_call_tool.js deleted file mode 100644 index 6a820502d..000000000 --- a/public/examples/integrations/mcp-servers/figma/export_image_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Figma.ExportImage"; - -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - file_key: "abc123xyz", // Replace with your Figma file key - node_ids: ["0:1", "1-2"], // Replace with node IDs to export - image_format: "png", // Options: png, jpg, svg, pdf - scale: 2.0, // Optional: scale factor for PNG/JPG (0.01 to 4.0) -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/export_image_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/export_image_example_call_tool.py deleted file mode 100644 index e0628596e..000000000 --- a/public/examples/integrations/mcp-servers/figma/export_image_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Figma.ExportImage" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -client.auth.wait_for_completion(auth_response) - -tool_input = { - "file_key": "abc123xyz", # Replace with your Figma file key - "node_ids": ["0:1", "1-2"], # Replace with node IDs to export - "image_format": "png", # Options: png, jpg, svg, pdf - "scale": 2.0, # Optional: scale factor for PNG/JPG (0.01 to 4.0) -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma/get_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/get_comments_example_call_tool.js deleted file mode 100644 index 7496dc3e6..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_comments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Figma.GetComments"; - -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - file_key: "abc123xyz", // Replace with your Figma file key - offset: 0, // Optional: starting offset for pagination - max_items: 10, // Optional: maximum number of comments (1-50) -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/get_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/get_comments_example_call_tool.py deleted file mode 100644 index 671f7550c..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_comments_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Figma.GetComments" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -client.auth.wait_for_completion(auth_response) - -tool_input = { - "file_key": "abc123xyz", # Replace with your Figma file key - "offset": 0, # Optional: starting offset for pagination - "max_items": 10, # Optional: maximum number of comments (1-50) -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma/get_component_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/get_component_example_call_tool.js deleted file mode 100644 index f1264e28c..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_component_example_call_tool.js +++ /dev/null @@ -1,27 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Figma.GetComponent"; - -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - component_key: "abc123xyz", // Replace with your component key -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/get_component_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/get_component_example_call_tool.py deleted file mode 100644 index b66870daa..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_component_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Figma.GetComponent" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -client.auth.wait_for_completion(auth_response) - -tool_input = { - "component_key": "abc123xyz", # Replace with your component key -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma/get_component_set_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/get_component_set_example_call_tool.js deleted file mode 100644 index 0e0605527..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_component_set_example_call_tool.js +++ /dev/null @@ -1,27 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Figma.GetComponentSet"; - -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - component_set_key: "abc123xyz", // Replace with your component set key -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/get_component_set_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/get_component_set_example_call_tool.py deleted file mode 100644 index 821ced5ea..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_component_set_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Figma.GetComponentSet" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -client.auth.wait_for_completion(auth_response) - -tool_input = { - "component_set_key": "abc123xyz", # Replace with your component set key -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma/get_component_sets_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/get_component_sets_example_call_tool.js deleted file mode 100644 index a880ab0d9..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_component_sets_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Figma.GetComponentSets"; - -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - source: "file", // Options: file, team - source_id: "abc123xyz", // File key or team ID - page_size: 10, // Optional: for team mode only - after_cursor: null, // Optional: for pagination in team mode -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/get_component_sets_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/get_component_sets_example_call_tool.py deleted file mode 100644 index 83f2b60b6..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_component_sets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Figma.GetComponentSets" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -client.auth.wait_for_completion(auth_response) - -tool_input = { - "source": "file", # Options: file, team - "source_id": "abc123xyz", # File key or team ID - "page_size": 10, # Optional: for team mode only - "after_cursor": None, # Optional: for pagination in team mode -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma/get_components_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/get_components_example_call_tool.js deleted file mode 100644 index d20f04c01..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_components_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Figma.GetComponents"; - -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - source: "file", // Options: file, team - source_id: "abc123xyz", // File key or team ID - page_size: 10, // Optional: for team mode only - after_cursor: null, // Optional: for pagination in team mode -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/get_components_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/get_components_example_call_tool.py deleted file mode 100644 index 7d19bef68..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_components_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Figma.GetComponents" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -client.auth.wait_for_completion(auth_response) - -tool_input = { - "source": "file", # Options: file, team - "source_id": "abc123xyz", # File key or team ID - "page_size": 10, # Optional: for team mode only - "after_cursor": None, # Optional: for pagination in team mode -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma/get_file_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/get_file_example_call_tool.js deleted file mode 100644 index 545890081..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_file_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Figma.GetFile"; - -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - file_key: "abc123xyz", // Replace with your Figma file key - depth: 2, // Optional: limit depth to pages and top-level frames -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/get_file_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/get_file_example_call_tool.py deleted file mode 100644 index b98ca4072..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_file_example_call_tool.py +++ /dev/null @@ -1,27 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Figma.GetFile" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -client.auth.wait_for_completion(auth_response) - -tool_input = { - "file_key": "abc123xyz", # Replace with your Figma file key - "depth": 2, # Optional: limit depth to pages and top-level frames -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma/get_file_nodes_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/get_file_nodes_example_call_tool.js deleted file mode 100644 index f112a8699..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_file_nodes_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Figma.GetFileNodes"; - -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - file_key: "abc123xyz", // Replace with your Figma file key - node_ids: ["0:1", "1-2"], // Replace with your node IDs - depth: 1, // Optional: limit to direct children only -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/get_file_nodes_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/get_file_nodes_example_call_tool.py deleted file mode 100644 index 65c7fafb7..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_file_nodes_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Figma.GetFileNodes" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -client.auth.wait_for_completion(auth_response) - -tool_input = { - "file_key": "abc123xyz", # Replace with your Figma file key - "node_ids": ["0:1", "1-2"], # Replace with your node IDs - "depth": 1, # Optional: limit to direct children only -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma/get_pages_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/get_pages_example_call_tool.js deleted file mode 100644 index 0a3c00ea7..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_pages_example_call_tool.js +++ /dev/null @@ -1,27 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Figma.GetPages"; - -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - file_key: "abc123xyz", // Replace with your Figma file key -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/get_pages_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/get_pages_example_call_tool.py deleted file mode 100644 index 837e21dda..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_pages_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Figma.GetPages" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -client.auth.wait_for_completion(auth_response) - -tool_input = { - "file_key": "abc123xyz", # Replace with your Figma file key -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma/get_project_files_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/get_project_files_example_call_tool.js deleted file mode 100644 index 019e292e2..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_project_files_example_call_tool.js +++ /dev/null @@ -1,27 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Figma.GetProjectFiles"; - -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - project_id: "123456789", // Replace with your Figma project ID -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/get_project_files_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/get_project_files_example_call_tool.py deleted file mode 100644 index 238683fe9..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_project_files_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Figma.GetProjectFiles" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -client.auth.wait_for_completion(auth_response) - -tool_input = { - "project_id": "123456789", # Replace with your Figma project ID -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma/get_style_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/get_style_example_call_tool.js deleted file mode 100644 index 09f2f253f..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_style_example_call_tool.js +++ /dev/null @@ -1,27 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Figma.GetStyle"; - -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - style_key: "abc123xyz", // Replace with your style key -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/get_style_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/get_style_example_call_tool.py deleted file mode 100644 index 8e47feb3e..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_style_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Figma.GetStyle" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -client.auth.wait_for_completion(auth_response) - -tool_input = { - "style_key": "abc123xyz", # Replace with your style key -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma/get_styles_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/get_styles_example_call_tool.js deleted file mode 100644 index 9686cc159..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_styles_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Figma.GetStyles"; - -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - source: "file", // Options: file, team - source_id: "abc123xyz", // File key or team ID - page_size: 10, // Optional: for team mode only - after_cursor: null, // Optional: for pagination in team mode -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/get_styles_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/get_styles_example_call_tool.py deleted file mode 100644 index b6816e416..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_styles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Figma.GetStyles" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -client.auth.wait_for_completion(auth_response) - -tool_input = { - "source": "file", # Options: file, team - "source_id": "abc123xyz", # File key or team ID - "page_size": 10, # Optional: for team mode only - "after_cursor": None, # Optional: for pagination in team mode -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma/get_team_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/get_team_projects_example_call_tool.js deleted file mode 100644 index 818d37ef6..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_team_projects_example_call_tool.js +++ /dev/null @@ -1,27 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Figma.GetTeamProjects"; - -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - team_id: "123456789", // Replace with your Figma team ID -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/get_team_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/get_team_projects_example_call_tool.py deleted file mode 100644 index f2459ae10..000000000 --- a/public/examples/integrations/mcp-servers/figma/get_team_projects_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Figma.GetTeamProjects" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -client.auth.wait_for_completion(auth_response) - -tool_input = { - "team_id": "123456789", # Replace with your Figma team ID -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/figma/who_am_i_example_call_tool.js deleted file mode 100644 index 423d1e577..000000000 --- a/public/examples/integrations/mcp-servers/figma/who_am_i_example_call_tool.js +++ /dev/null @@ -1,27 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Figma.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; // No parameters required - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/figma/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/figma/who_am_i_example_call_tool.py deleted file mode 100644 index 0eb7cebe8..000000000 --- a/public/examples/integrations/mcp-servers/figma/who_am_i_example_call_tool.py +++ /dev/null @@ -1,25 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Figma.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {} # No parameters required - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/figma_api/add_comment_to_figma_file_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/add_comment_to_figma_file_example_call_tool.js deleted file mode 100644 index 01ee7dc76..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/add_comment_to_figma_file_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.AddCommentToFigmaFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "figma_file_key": "123abc", - "request_body": "{\"comment\":\"This is a sample comment.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/add_comment_to_figma_file_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/add_comment_to_figma_file_example_call_tool.py deleted file mode 100644 index 436344ddb..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/add_comment_to_figma_file_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.AddCommentToFigmaFile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'figma_file_key': '123abc', - 'request_body': '{"comment":"This is a sample comment."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/add_figma_comment_reaction_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/add_figma_comment_reaction_example_call_tool.js deleted file mode 100644 index fa2f66245..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/add_figma_comment_reaction_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.AddFigmaCommentReaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "file_or_branch_key": "abc123", - "comment_id": "comment456", - "request_body": "{\"reaction\":\"👍\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/add_figma_comment_reaction_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/add_figma_comment_reaction_example_call_tool.py deleted file mode 100644 index 6e64fc500..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/add_figma_comment_reaction_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.AddFigmaCommentReaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'file_or_branch_key': 'abc123', - 'comment_id': 'comment456', - 'request_body': '{"reaction":"👍"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/bulk_update_figma_dev_resources_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/bulk_update_figma_dev_resources_example_call_tool.js deleted file mode 100644 index a1250cbec..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/bulk_update_figma_dev_resources_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.BulkUpdateFigmaDevResources"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"resources\":[{\"id\":\"resource1\",\"name\":\"Button\",\"properties\":{\"color\":\"#FF5733\"}},{\"id\":\"resource2\",\"name\":\"InputField\",\"properties\":{\"placeholder\":\"Enter text\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/bulk_update_figma_dev_resources_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/bulk_update_figma_dev_resources_example_call_tool.py deleted file mode 100644 index 5e34cc175..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/bulk_update_figma_dev_resources_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.BulkUpdateFigmaDevResources" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"resources":[{"id":"resource1","name":"Button","properties":{"color":"#FF5733"}},{"id":"resource2","name":"InputField","properties":{"placeholder":"Enter ' - 'text"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/create_bulk_dev_resources_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/create_bulk_dev_resources_example_call_tool.js deleted file mode 100644 index e106ee69a..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/create_bulk_dev_resources_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.CreateBulkDevResources"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"files\":[{\"file_key\":\"abc123\",\"resources\":[{\"type\":\"component\",\"url\":\"https://example.com/resource1\"},{\"type\":\"component\",\"url\":\"https://example.com/resource2\"}]}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/create_bulk_dev_resources_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/create_bulk_dev_resources_example_call_tool.py deleted file mode 100644 index 58d99bb4f..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/create_bulk_dev_resources_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.CreateBulkDevResources" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"files":[{"file_key":"abc123","resources":[{"type":"component","url":"https://example.com/resource1"},{"type":"component","url":"https://example.com/resource2"}]}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/create_figma_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/create_figma_webhook_example_call_tool.js deleted file mode 100644 index f083be9cd..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/create_figma_webhook_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.CreateFigmaWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"endpoint\":\"https://example.com/webhook\",\"event_type\":\"PING\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/create_figma_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/create_figma_webhook_example_call_tool.py deleted file mode 100644 index d1d99cec7..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/create_figma_webhook_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.CreateFigmaWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"endpoint":"https://example.com/webhook","event_type":"PING"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/delete_dev_resource_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/delete_dev_resource_example_call_tool.js deleted file mode 100644 index 3fb444023..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/delete_dev_resource_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.DeleteDevResource"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_file_key": "abc123", - "dev_resource_id": "res456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/delete_dev_resource_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/delete_dev_resource_example_call_tool.py deleted file mode 100644 index a22b7c58d..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/delete_dev_resource_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.DeleteDevResource" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_file_key': 'abc123', 'dev_resource_id': 'res456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/delete_figma_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/delete_figma_comment_example_call_tool.js deleted file mode 100644 index d0e12df8f..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/delete_figma_comment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.DeleteFigmaComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "figma_file_key": "abc123", - "comment_identifier": "comment456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/delete_figma_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/delete_figma_comment_example_call_tool.py deleted file mode 100644 index 8832b46d6..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/delete_figma_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.DeleteFigmaComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'figma_file_key': 'abc123', 'comment_identifier': 'comment456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/delete_figma_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/delete_figma_webhook_example_call_tool.js deleted file mode 100644 index 575f09eb5..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/delete_figma_webhook_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.DeleteFigmaWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id_to_delete": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/delete_figma_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/delete_figma_webhook_example_call_tool.py deleted file mode 100644 index 9e9a51a31..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/delete_figma_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.DeleteFigmaWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id_to_delete': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/delete_my_comment_reaction_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/delete_my_comment_reaction_example_call_tool.js deleted file mode 100644 index 5069abf1d..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/delete_my_comment_reaction_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.DeleteMyCommentReaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "reaction_emoji": "👍", - "file_or_branch_key": "abc123", - "comment_id": "comment456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/delete_my_comment_reaction_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/delete_my_comment_reaction_example_call_tool.py deleted file mode 100644 index df66425cb..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/delete_my_comment_reaction_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.DeleteMyCommentReaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'reaction_emoji': '👍', 'file_or_branch_key': 'abc123', 'comment_id': 'comment456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/fetch_comment_reactions_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/fetch_comment_reactions_example_call_tool.js deleted file mode 100644 index dd0b38dea..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/fetch_comment_reactions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.FetchCommentReactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_or_branch_key": "abc123", - "comment_id": "comment456", - "pagination_cursor": "cursor789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/fetch_comment_reactions_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/fetch_comment_reactions_example_call_tool.py deleted file mode 100644 index 64ede7fd7..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/fetch_comment_reactions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.FetchCommentReactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_or_branch_key': 'abc123', 'comment_id': 'comment456', 'pagination_cursor': 'cursor789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/fetch_component_usage_data_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/fetch_component_usage_data_example_call_tool.js deleted file mode 100644 index df906435a..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/fetch_component_usage_data_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.FetchComponentUsageData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_by_dimension": "component", - "library_file_key": "lib123", - "data_page_cursor": "cursor456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/fetch_component_usage_data_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/fetch_component_usage_data_example_call_tool.py deleted file mode 100644 index 8cbb0ab27..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/fetch_component_usage_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.FetchComponentUsageData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_by_dimension': 'component', 'library_file_key': 'lib123', 'data_page_cursor': 'cursor456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/fetch_figma_file_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/fetch_figma_file_example_call_tool.js deleted file mode 100644 index 423ab3423..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/fetch_figma_file_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.FetchFigmaFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_key": "abc123", - "version_id": "v1.0", - "traversal_depth": 2, - "export_vector_data": "paths", - "include_branch_metadata": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/fetch_figma_file_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/fetch_figma_file_example_call_tool.py deleted file mode 100644 index f71234cd9..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/fetch_figma_file_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.FetchFigmaFile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_key': 'abc123', - 'version_id': 'v1.0', - 'traversal_depth': 2, - 'export_vector_data': 'paths', - 'include_branch_metadata': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/fetch_file_version_history_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/fetch_file_version_history_example_call_tool.js deleted file mode 100644 index 832277fb4..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/fetch_file_version_history_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.FetchFileVersionHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_file_key": "abc123", - "number_of_items_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/fetch_file_version_history_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/fetch_file_version_history_example_call_tool.py deleted file mode 100644 index 1bb57f7cc..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/fetch_file_version_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.FetchFileVersionHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_file_key': 'abc123', 'number_of_items_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/fetch_image_fill_links_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/fetch_image_fill_links_example_call_tool.js deleted file mode 100644 index 34524dbea..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/fetch_image_fill_links_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.FetchImageFillLinks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_or_branch_key": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/fetch_image_fill_links_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/fetch_image_fill_links_example_call_tool.py deleted file mode 100644 index 4352e0811..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/fetch_image_fill_links_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.FetchImageFillLinks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_or_branch_key': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/fetch_library_analytics_variable_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/fetch_library_analytics_variable_actions_example_call_tool.js deleted file mode 100644 index d8ec9d7bc..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/fetch_library_analytics_variable_actions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.FetchLibraryAnalyticsVariableActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_by_dimension": "variable", - "library_file_key": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/fetch_library_analytics_variable_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/fetch_library_analytics_variable_actions_example_call_tool.py deleted file mode 100644 index d8fd1f6a9..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/fetch_library_analytics_variable_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.FetchLibraryAnalyticsVariableActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_by_dimension': 'variable', 'library_file_key': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/figma_get_team_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/figma_get_team_projects_example_call_tool.js deleted file mode 100644 index 440d88780..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/figma_get_team_projects_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.FigmaGetTeamProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/figma_get_team_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/figma_get_team_projects_example_call_tool.py deleted file mode 100644 index 9d12f3fdc..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/figma_get_team_projects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.FigmaGetTeamProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': '123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_dev_resources_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_dev_resources_example_call_tool.js deleted file mode 100644 index 0a5183111..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_dev_resources_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetDevResources"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_key": "123abc456def", - "target_node_ids": "node1,node2,node3" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_dev_resources_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_dev_resources_example_call_tool.py deleted file mode 100644 index 7fa9279df..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_dev_resources_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetDevResources" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_key': '123abc456def', 'target_node_ids': 'node1,node2,node3' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_component_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_figma_component_metadata_example_call_tool.js deleted file mode 100644 index 1f5cfdd0d..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_component_metadata_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetFigmaComponentMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "component_key": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_component_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_figma_component_metadata_example_call_tool.py deleted file mode 100644 index 97a00d7f6..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_component_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetFigmaComponentMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'component_key': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_component_set_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_figma_component_set_example_call_tool.js deleted file mode 100644 index e27cabbca..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_component_set_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetFigmaComponentSet"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "component_set_key": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_component_set_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_figma_component_set_example_call_tool.py deleted file mode 100644 index 550528f0c..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_component_set_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetFigmaComponentSet" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'component_set_key': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_file_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_figma_file_comments_example_call_tool.js deleted file mode 100644 index 6ec6a2a97..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_file_comments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetFigmaFileComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "figma_file_or_branch_key": "1234abcd", - "return_comments_as_markdown": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_file_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_figma_file_comments_example_call_tool.py deleted file mode 100644 index ba09a804d..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_file_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetFigmaFileComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'figma_file_or_branch_key': '1234abcd', 'return_comments_as_markdown': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_file_components_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_figma_file_components_example_call_tool.js deleted file mode 100644 index 7cf2494a0..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_file_components_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetFigmaFileComponents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_key": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_file_components_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_figma_file_components_example_call_tool.py deleted file mode 100644 index ca5fe569e..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_file_components_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetFigmaFileComponents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_key': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_file_nodes_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_figma_file_nodes_example_call_tool.js deleted file mode 100644 index 9ede5ba51..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_file_nodes_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetFigmaFileNodes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "node_ids_to_retrieve": "123,456", - "figma_file_key": "abc123", - "specific_version_id": "v1.0", - "node_tree_depth": 2, - "export_vector_data": "paths" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_file_nodes_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_figma_file_nodes_example_call_tool.py deleted file mode 100644 index c8143c389..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_file_nodes_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetFigmaFileNodes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'node_ids_to_retrieve': '123,456', - 'figma_file_key': 'abc123', - 'specific_version_id': 'v1.0', - 'node_tree_depth': 2, - 'export_vector_data': 'paths' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_project_files_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_figma_project_files_example_call_tool.js deleted file mode 100644 index cb4613ab1..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_project_files_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetFigmaProjectFiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "include_branch_metadata": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_project_files_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_figma_project_files_example_call_tool.py deleted file mode 100644 index 1628b315c..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_project_files_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetFigmaProjectFiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', 'include_branch_metadata': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_figma_webhook_example_call_tool.js deleted file mode 100644 index 9046e7cb7..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_webhook_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetFigmaWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_figma_webhook_example_call_tool.py deleted file mode 100644 index 3429dbd0d..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetFigmaWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_webhooks_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_figma_webhooks_example_call_tool.js deleted file mode 100644 index b7ec2c27f..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_webhooks_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetFigmaWebhooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_context": "team", - "context_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_figma_webhooks_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_figma_webhooks_example_call_tool.py deleted file mode 100644 index a9fa345b2..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_figma_webhooks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetFigmaWebhooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_context': 'team', 'context_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_file_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_file_metadata_example_call_tool.js deleted file mode 100644 index 3e21b47ef..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_file_metadata_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetFileMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_identifier": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_file_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_file_metadata_example_call_tool.py deleted file mode 100644 index a1bf28bf8..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_file_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetFileMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_identifier': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_library_analytics_component_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_library_analytics_component_actions_example_call_tool.js deleted file mode 100644 index 551c2e85c..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_library_analytics_component_actions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetLibraryAnalyticsComponentActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_by_dimension": "component", - "library_file_key": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_library_analytics_component_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_library_analytics_component_actions_example_call_tool.py deleted file mode 100644 index 1ec65f551..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_library_analytics_component_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetLibraryAnalyticsComponentActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_by_dimension': 'component', 'library_file_key': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_library_analytics_variable_usages_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_library_analytics_variable_usages_example_call_tool.js deleted file mode 100644 index 00f81d1c0..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_library_analytics_variable_usages_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetLibraryAnalyticsVariableUsages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_by_dimension": "variable", - "library_file_key": "lib123", - "page_cursor": "cursor456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_library_analytics_variable_usages_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_library_analytics_variable_usages_example_call_tool.py deleted file mode 100644 index 20828921d..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_library_analytics_variable_usages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetLibraryAnalyticsVariableUsages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_by_dimension': 'variable', 'library_file_key': 'lib123', 'page_cursor': 'cursor456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_library_style_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_library_style_actions_example_call_tool.js deleted file mode 100644 index 65bf79930..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_library_style_actions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetLibraryStyleActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_by_dimension": "style", - "library_file_key": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_library_style_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_library_style_actions_example_call_tool.py deleted file mode 100644 index d510726f0..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_library_style_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetLibraryStyleActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_by_dimension': 'style', 'library_file_key': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_library_style_usage_data_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_library_style_usage_data_example_call_tool.js deleted file mode 100644 index 1f1d4ade6..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_library_style_usage_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetLibraryStyleUsageData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_by_dimension": "style", - "library_file_key": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_library_style_usage_data_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_library_style_usage_data_example_call_tool.py deleted file mode 100644 index a6cae094b..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_library_style_usage_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetLibraryStyleUsageData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_by_dimension': 'style', 'library_file_key': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_published_component_sets_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_published_component_sets_example_call_tool.js deleted file mode 100644 index 9bba01ec9..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_published_component_sets_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetPublishedComponentSets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "main_file_key": "123abc456def" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_published_component_sets_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_published_component_sets_example_call_tool.py deleted file mode 100644 index 86282e20b..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_published_component_sets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetPublishedComponentSets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'main_file_key': '123abc456def' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_published_styles_from_file_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_published_styles_from_file_example_call_tool.js deleted file mode 100644 index 00f3539de..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_published_styles_from_file_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetPublishedStylesFromFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "main_file_key": "123abc456def" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_published_styles_from_file_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_published_styles_from_file_example_call_tool.py deleted file mode 100644 index 8afc925d1..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_published_styles_from_file_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetPublishedStylesFromFile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'main_file_key': '123abc456def' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_published_variables_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_published_variables_example_call_tool.js deleted file mode 100644 index f52be6680..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_published_variables_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetPublishedVariables"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "main_file_key": "12345-abcde-67890-fghij" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_published_variables_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_published_variables_example_call_tool.py deleted file mode 100644 index faf8e8868..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_published_variables_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetPublishedVariables" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'main_file_key': '12345-abcde-67890-fghij' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_recent_webhook_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_recent_webhook_requests_example_call_tool.js deleted file mode 100644 index bc860ad19..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_recent_webhook_requests_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetRecentWebhookRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_subscription_id": "sub_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_recent_webhook_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_recent_webhook_requests_example_call_tool.py deleted file mode 100644 index 1967e8820..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_recent_webhook_requests_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetRecentWebhookRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_subscription_id': 'sub_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_style_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_style_metadata_example_call_tool.js deleted file mode 100644 index 23fa5b220..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_style_metadata_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetStyleMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "style_key": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_style_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_style_metadata_example_call_tool.py deleted file mode 100644 index c84e96c9d..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_style_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetStyleMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'style_key': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_team_component_sets_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_team_component_sets_example_call_tool.js deleted file mode 100644 index 31b084605..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_team_component_sets_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetTeamComponentSets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "12345", - "number_of_items_per_page": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_team_component_sets_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_team_component_sets_example_call_tool.py deleted file mode 100644 index 1f41b900c..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_team_component_sets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetTeamComponentSets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': '12345', 'number_of_items_per_page': 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_team_components_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_team_components_example_call_tool.js deleted file mode 100644 index fcd5dd424..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_team_components_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetTeamComponents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "12345", - "number_of_items_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_team_components_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_team_components_example_call_tool.py deleted file mode 100644 index 0db29a117..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_team_components_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetTeamComponents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': '12345', 'number_of_items_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_team_styles_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_team_styles_example_call_tool.js deleted file mode 100644 index d330c63b2..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_team_styles_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetTeamStyles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "12345", - "items_per_page": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_team_styles_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_team_styles_example_call_tool.py deleted file mode 100644 index 0f8661acb..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_team_styles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetTeamStyles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': '12345', 'items_per_page': 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/get_user_information_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/get_user_information_example_call_tool.js deleted file mode 100644 index 782c04ceb..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_user_information_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.GetUserInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/get_user_information_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/get_user_information_example_call_tool.py deleted file mode 100644 index 9837b1e39..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/get_user_information_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.GetUserInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/manage_figma_variables_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/manage_figma_variables_example_call_tool.js deleted file mode 100644 index 4b495a9bd..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/manage_figma_variables_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.ManageFigmaVariables"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "file_identifier": "123abc", - "request_body": "{\"variables\":[{\"name\":\"primaryColor\",\"value\":\"#FF5733\"},{\"name\":\"fontSize\",\"value\":\"16px\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/manage_figma_variables_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/manage_figma_variables_example_call_tool.py deleted file mode 100644 index b09cf31f2..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/manage_figma_variables_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.ManageFigmaVariables" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'file_identifier': '123abc', - 'request_body': '{"variables":[{"name":"primaryColor","value":"#FF5733"},{"name":"fontSize","value":"16px"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/render_figma_images_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/render_figma_images_example_call_tool.js deleted file mode 100644 index 8b5780af1..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/render_figma_images_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.RenderFigmaImages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "node_ids_to_render": "123,456", - "figma_file_key": "abc123", - "version_id": "v1", - "image_scale_factor": 2, - "image_output_format": "png", - "render_text_as_outlines": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/render_figma_images_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/render_figma_images_example_call_tool.py deleted file mode 100644 index 2af66e9a6..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/render_figma_images_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.RenderFigmaImages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'node_ids_to_render': '123,456', - 'figma_file_key': 'abc123', - 'version_id': 'v1', - 'image_scale_factor': 2, - 'image_output_format': 'png', - 'render_text_as_outlines': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/retrieve_figma_local_variables_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/retrieve_figma_local_variables_example_call_tool.js deleted file mode 100644 index b7044b961..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/retrieve_figma_local_variables_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.RetrieveFigmaLocalVariables"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_or_branch_key": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/retrieve_figma_local_variables_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/retrieve_figma_local_variables_example_call_tool.py deleted file mode 100644 index 4756756f4..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/retrieve_figma_local_variables_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.RetrieveFigmaLocalVariables" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_or_branch_key': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/figma_api/update_figma_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/figma_api/update_figma_webhook_example_call_tool.js deleted file mode 100644 index 903d5c590..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/update_figma_webhook_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FigmaApi.UpdateFigmaWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "webhook_id_to_update": "12345", - "request_body": "{\"url\":\"https://example.com/webhook\",\"events\":[\"FILE_CREATED\",\"FILE_UPDATED\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/figma_api/update_figma_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/figma_api/update_figma_webhook_example_call_tool.py deleted file mode 100644 index 1c5cf46e8..000000000 --- a/public/examples/integrations/mcp-servers/figma_api/update_figma_webhook_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FigmaApi.UpdateFigmaWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'webhook_id_to_update': '12345', - 'request_body': '{"url":"https://example.com/webhook","events":["FILE_CREATED","FILE_UPDATED"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/firecrawl/cancel_crawl_example_call_tool.js b/public/examples/integrations/mcp-servers/firecrawl/cancel_crawl_example_call_tool.js deleted file mode 100644 index ccd4e90f0..000000000 --- a/public/examples/integrations/mcp-servers/firecrawl/cancel_crawl_example_call_tool.js +++ /dev/null @@ -1,18 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Firecrawl.CancelCrawl"; - -const toolInput = { - crawl_id: "your_crawl_id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/firecrawl/cancel_crawl_example_call_tool.py b/public/examples/integrations/mcp-servers/firecrawl/cancel_crawl_example_call_tool.py deleted file mode 100644 index 37f53771f..000000000 --- a/public/examples/integrations/mcp-servers/firecrawl/cancel_crawl_example_call_tool.py +++ /dev/null @@ -1,15 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Firecrawl.CancelCrawl" - -tool_input = {"crawl_id": "your_crawl_id"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/firecrawl/crawl_website_example_call_tool.js b/public/examples/integrations/mcp-servers/firecrawl/crawl_website_example_call_tool.js deleted file mode 100644 index f19d6a2e9..000000000 --- a/public/examples/integrations/mcp-servers/firecrawl/crawl_website_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Firecrawl.CrawlWebsite"; - -const toolInput = { - url: "https://example.com", - max_depth: 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/firecrawl/crawl_website_example_call_tool.py b/public/examples/integrations/mcp-servers/firecrawl/crawl_website_example_call_tool.py deleted file mode 100644 index 1fc3054b0..000000000 --- a/public/examples/integrations/mcp-servers/firecrawl/crawl_website_example_call_tool.py +++ /dev/null @@ -1,15 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Firecrawl.CrawlWebsite" - -tool_input = {"url": "https://example.com", "max_depth": 2} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/firecrawl/get_crawl_data_example_call_tool.js b/public/examples/integrations/mcp-servers/firecrawl/get_crawl_data_example_call_tool.js deleted file mode 100644 index f3dcc1c01..000000000 --- a/public/examples/integrations/mcp-servers/firecrawl/get_crawl_data_example_call_tool.js +++ /dev/null @@ -1,18 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Firecrawl.GetCrawlData"; - -const toolInput = { - crawl_id: "your_crawl_id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/firecrawl/get_crawl_data_example_call_tool.py b/public/examples/integrations/mcp-servers/firecrawl/get_crawl_data_example_call_tool.py deleted file mode 100644 index ba4dd53b1..000000000 --- a/public/examples/integrations/mcp-servers/firecrawl/get_crawl_data_example_call_tool.py +++ /dev/null @@ -1,15 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Firecrawl.GetCrawlData" - -tool_input = {"crawl_id": "your_crawl_id"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/firecrawl/get_crawl_status_example_call_tool.js b/public/examples/integrations/mcp-servers/firecrawl/get_crawl_status_example_call_tool.js deleted file mode 100644 index 9f0eec3d7..000000000 --- a/public/examples/integrations/mcp-servers/firecrawl/get_crawl_status_example_call_tool.js +++ /dev/null @@ -1,18 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Firecrawl.GetCrawlStatus"; - -const toolInput = { - crawl_id: "your_crawl_id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/firecrawl/get_crawl_status_example_call_tool.py b/public/examples/integrations/mcp-servers/firecrawl/get_crawl_status_example_call_tool.py deleted file mode 100644 index 22a6d838e..000000000 --- a/public/examples/integrations/mcp-servers/firecrawl/get_crawl_status_example_call_tool.py +++ /dev/null @@ -1,15 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Firecrawl.GetCrawlStatus" - -tool_input = {"crawl_id": "your_crawl_id"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/firecrawl/map_website_example_call_tool.js b/public/examples/integrations/mcp-servers/firecrawl/map_website_example_call_tool.js deleted file mode 100644 index 901f98230..000000000 --- a/public/examples/integrations/mcp-servers/firecrawl/map_website_example_call_tool.js +++ /dev/null @@ -1,18 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Firecrawl.MapWebsite"; - -const toolInput = { - url: "https://example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/firecrawl/map_website_example_call_tool.py b/public/examples/integrations/mcp-servers/firecrawl/map_website_example_call_tool.py deleted file mode 100644 index e4cab328f..000000000 --- a/public/examples/integrations/mcp-servers/firecrawl/map_website_example_call_tool.py +++ /dev/null @@ -1,15 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Firecrawl.MapWebsite" - -tool_input = {"url": "https://example.com"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/firecrawl/scrape_url_example_call_tool.js b/public/examples/integrations/mcp-servers/firecrawl/scrape_url_example_call_tool.js deleted file mode 100644 index 43d240f22..000000000 --- a/public/examples/integrations/mcp-servers/firecrawl/scrape_url_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Firecrawl.ScrapeUrl"; - -const toolInput = { - url: "https://example.com", - formats: "Formats.MARKDOWN" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/firecrawl/scrape_url_example_call_tool.py b/public/examples/integrations/mcp-servers/firecrawl/scrape_url_example_call_tool.py deleted file mode 100644 index 090b00f2d..000000000 --- a/public/examples/integrations/mcp-servers/firecrawl/scrape_url_example_call_tool.py +++ /dev/null @@ -1,15 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Firecrawl.ScrapeUrl" - -tool_input = {"url": "https://example.com", "formats": "Formats.MARKDOWN"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/activate_csat_survey_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/activate_csat_survey_example_call_tool.js deleted file mode 100644 index 31465580d..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/activate_csat_survey_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ActivateCsatSurvey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "csat_survey_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/activate_csat_survey_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/activate_csat_survey_example_call_tool.py deleted file mode 100644 index 197601e5b..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/activate_csat_survey_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ActivateCsatSurvey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'csat_survey_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/add_asset_component_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/add_asset_component_example_call_tool.js deleted file mode 100644 index d51252b6e..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/add_asset_component_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.AddAssetComponent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_display_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/add_asset_component_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/add_asset_component_example_call_tool.py deleted file mode 100644 index cc4e1ab6a..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/add_asset_component_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.AddAssetComponent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_display_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/archive_project_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/archive_project_example_call_tool.js deleted file mode 100644 index f8def5871..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/archive_project_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ArchiveProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/archive_project_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/archive_project_example_call_tool.py deleted file mode 100644 index a5dcffa14..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/archive_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ArchiveProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/convert_agent_to_requester_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/convert_agent_to_requester_example_call_tool.js deleted file mode 100644 index 04d274efe..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/convert_agent_to_requester_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ConvertAgentToRequester"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_id_for_conversion": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/convert_agent_to_requester_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/convert_agent_to_requester_example_call_tool.py deleted file mode 100644 index 3b6c528b4..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/convert_agent_to_requester_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ConvertAgentToRequester" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_id_for_conversion': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/convert_requester_to_agent_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/convert_requester_to_agent_example_call_tool.js deleted file mode 100644 index e87ea9fc7..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/convert_requester_to_agent_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ConvertRequesterToAgent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "requester_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/convert_requester_to_agent_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/convert_requester_to_agent_example_call_tool.py deleted file mode 100644 index 8edbba251..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/convert_requester_to_agent_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ConvertRequesterToAgent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'requester_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/deactivate_csat_survey_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/deactivate_csat_survey_example_call_tool.js deleted file mode 100644 index 3be356fa9..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/deactivate_csat_survey_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeactivateCsatSurvey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "survey_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/deactivate_csat_survey_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/deactivate_csat_survey_example_call_tool.py deleted file mode 100644 index 0e8cc7a55..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/deactivate_csat_survey_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeactivateCsatSurvey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'survey_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_agent_and_tickets_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_agent_and_tickets_example_call_tool.js deleted file mode 100644 index ea8f23e4a..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_agent_and_tickets_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteAgentAndTickets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_id_to_delete": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_agent_and_tickets_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_agent_and_tickets_example_call_tool.py deleted file mode 100644 index 171877a38..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_agent_and_tickets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteAgentAndTickets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_id_to_delete': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_agent_group_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_agent_group_example_call_tool.js deleted file mode 100644 index a9c9e6223..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_agent_group_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteAgentGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_group_id_to_delete": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_agent_group_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_agent_group_example_call_tool.py deleted file mode 100644 index 32af96e42..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_agent_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteAgentGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_group_id_to_delete': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_component_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_component_example_call_tool.js deleted file mode 100644 index 6ec46d0dc..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_component_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteAssetComponent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_display_id": 12345, - "component_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_component_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_component_example_call_tool.py deleted file mode 100644 index b20a6760f..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_component_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteAssetComponent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_display_id': 12345, 'component_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_example_call_tool.js deleted file mode 100644 index 866957a9d..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteAsset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_display_id": 4721 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_example_call_tool.py deleted file mode 100644 index 25251c310..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteAsset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_display_id': 4721 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_type_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_type_example_call_tool.js deleted file mode 100644 index 444a49913..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_type_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteAssetType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_type_id": 42 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_type_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_type_example_call_tool.py deleted file mode 100644 index 962d39469..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_asset_type_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteAssetType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_type_id': 42 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_canned_response_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_canned_response_example_call_tool.js deleted file mode 100644 index 69615e13c..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_canned_response_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteCannedResponse"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "canned_response_id": 1247 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_canned_response_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_canned_response_example_call_tool.py deleted file mode 100644 index 843301d10..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_canned_response_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteCannedResponse" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'canned_response_id': 1247 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_canned_response_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_canned_response_folder_example_call_tool.js deleted file mode 100644 index 668f91f03..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_canned_response_folder_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteCannedResponseFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "canned_response_folder_id": 789 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_canned_response_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_canned_response_folder_example_call_tool.py deleted file mode 100644 index 82267ad71..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_canned_response_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteCannedResponseFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'canned_response_folder_id': 789 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_change_note_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_change_note_example_call_tool.js deleted file mode 100644 index 2b413789a..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_change_note_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteChangeNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "change_request_id": 12345, - "note_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_change_note_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_change_note_example_call_tool.py deleted file mode 100644 index 8508f4723..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_change_note_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteChangeNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'change_request_id': 12345, 'note_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_change_time_entry_freshservice_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_change_time_entry_freshservice_example_call_tool.js deleted file mode 100644 index f7cbb4902..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_change_time_entry_freshservice_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteChangeTimeEntryFreshservice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "change_request_id": 12345, - "time_entry_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_change_time_entry_freshservice_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_change_time_entry_freshservice_example_call_tool.py deleted file mode 100644 index fc1425122..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_change_time_entry_freshservice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteChangeTimeEntryFreshservice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'change_request_id': 12345, 'time_entry_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_department_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_department_example_call_tool.js deleted file mode 100644 index 94ac0ecf5..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_department_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteDepartment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "department_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_department_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_department_example_call_tool.py deleted file mode 100644 index b34041cc3..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_department_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteDepartment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'department_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_existing_location_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_existing_location_example_call_tool.js deleted file mode 100644 index c1248f5eb..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_existing_location_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteExistingLocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_existing_location_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_existing_location_example_call_tool.py deleted file mode 100644 index 588b1b64f..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_existing_location_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteExistingLocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_existing_vendor_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_existing_vendor_example_call_tool.js deleted file mode 100644 index 636602319..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_existing_vendor_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteExistingVendor"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "vendor_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_existing_vendor_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_existing_vendor_example_call_tool.py deleted file mode 100644 index d5d0853dc..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_existing_vendor_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteExistingVendor" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'vendor_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_announcement_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_announcement_example_call_tool.js deleted file mode 100644 index a042b5b27..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_announcement_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteFreshserviceAnnouncement"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "announcement_id_to_delete": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_announcement_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_announcement_example_call_tool.py deleted file mode 100644 index b94890525..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_announcement_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteFreshserviceAnnouncement" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'announcement_id_to_delete': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_change_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_change_example_call_tool.js deleted file mode 100644 index 182732fa8..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_change_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteFreshserviceChange"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "change_request_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_change_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_change_example_call_tool.py deleted file mode 100644 index 11cfe95fb..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_change_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteFreshserviceChange" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'change_request_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_project_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_project_example_call_tool.js deleted file mode 100644 index f9fff7185..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_project_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteFreshserviceProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_project_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_project_example_call_tool.py deleted file mode 100644 index 232c74623..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteFreshserviceProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_release_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_release_example_call_tool.js deleted file mode 100644 index d1a94a588..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_release_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteFreshserviceRelease"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_id_for_deletion": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_release_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_release_example_call_tool.py deleted file mode 100644 index cb44c6853..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_freshservice_release_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteFreshserviceRelease" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_id_for_deletion': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_example_call_tool.js deleted file mode 100644 index dd4bbba8c..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteProblem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "problem_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_example_call_tool.py deleted file mode 100644 index 00ebb2012..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteProblem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'problem_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_note_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_note_example_call_tool.js deleted file mode 100644 index 1dd44b7b2..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_note_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteProblemNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "problem_id": 12345, - "note_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_note_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_note_example_call_tool.py deleted file mode 100644 index 408ab78ba..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_note_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteProblemNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'problem_id': 12345, 'note_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_task_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_task_example_call_tool.js deleted file mode 100644 index b58791f90..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_task_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteProblemTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "problem_id": 12345, - "task_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_task_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_task_example_call_tool.py deleted file mode 100644 index 027653374..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteProblemTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'problem_id': 12345, 'task_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_time_entry_example_call_tool.js deleted file mode 100644 index 3468db43f..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_time_entry_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteProblemTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "problem_identifier": 4821, - "time_entry_id": 92734 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_time_entry_example_call_tool.py deleted file mode 100644 index 2d3d1d3b2..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_problem_time_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteProblemTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'problem_identifier': 4821, 'time_entry_id': 92734 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_product_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_product_example_call_tool.js deleted file mode 100644 index f8866d9f0..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_product_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteProduct"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_product_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_product_example_call_tool.py deleted file mode 100644 index 6f2dbfc04..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_product_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteProduct" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_project_task_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_project_task_example_call_tool.js deleted file mode 100644 index 8d62e9998..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_project_task_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteProjectTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": 12345, - "task_id_to_delete": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_project_task_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_project_task_example_call_tool.py deleted file mode 100644 index 3c7d12d5d..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_project_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteProjectTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 12345, 'task_id_to_delete': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_purchase_order_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_purchase_order_example_call_tool.js deleted file mode 100644 index 118ebdafc..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_purchase_order_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeletePurchaseOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "purchase_order_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_purchase_order_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_purchase_order_example_call_tool.py deleted file mode 100644 index bbd782874..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_purchase_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeletePurchaseOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'purchase_order_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_release_note_freshservice_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_release_note_freshservice_example_call_tool.js deleted file mode 100644 index 4eb1c01ea..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_release_note_freshservice_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteReleaseNoteFreshservice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_id": 12345, - "note_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_release_note_freshservice_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_release_note_freshservice_example_call_tool.py deleted file mode 100644 index 4556cfce0..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_release_note_freshservice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteReleaseNoteFreshservice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_id': 12345, 'note_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_release_task_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_release_task_example_call_tool.js deleted file mode 100644 index 307d56ba3..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_release_task_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteReleaseTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_id": 12345, - "task_id_integer": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_release_task_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_release_task_example_call_tool.py deleted file mode 100644 index 3dac4effa..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_release_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteReleaseTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_id': 12345, 'task_id_integer': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_release_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_release_time_entry_example_call_tool.js deleted file mode 100644 index bc11d44c3..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_release_time_entry_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteReleaseTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_id": 1024, - "time_entry_id": 58 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_release_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_release_time_entry_example_call_tool.py deleted file mode 100644 index fc486c99b..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_release_time_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteReleaseTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_id': 1024, 'time_entry_id': 58 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_requester_and_tickets_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_requester_and_tickets_example_call_tool.js deleted file mode 100644 index 61e2fe6f9..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_requester_and_tickets_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteRequesterAndTickets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "requester_id_to_delete": 987654 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_requester_and_tickets_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_requester_and_tickets_example_call_tool.py deleted file mode 100644 index 85231fc34..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_requester_and_tickets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteRequesterAndTickets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'requester_id_to_delete': 987654 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_requester_from_freshservice_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_requester_from_freshservice_example_call_tool.js deleted file mode 100644 index 9cbf89487..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_requester_from_freshservice_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteRequesterFromFreshservice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "requester_id_to_delete": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_requester_from_freshservice_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_requester_from_freshservice_example_call_tool.py deleted file mode 100644 index 88b8cbe60..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_requester_from_freshservice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteRequesterFromFreshservice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'requester_id_to_delete': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_article_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_article_example_call_tool.js deleted file mode 100644 index 1bbeb6da0..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_article_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteSolutionArticle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "solution_article_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_article_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_article_example_call_tool.py deleted file mode 100644 index ba7e5660b..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_article_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteSolutionArticle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'solution_article_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_category_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_category_example_call_tool.js deleted file mode 100644 index 8bc6a3e9b..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_category_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteSolutionCategory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "solution_category_id": 98765 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_category_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_category_example_call_tool.py deleted file mode 100644 index 6e0db810a..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_category_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteSolutionCategory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'solution_category_id': 98765 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_folder_example_call_tool.js deleted file mode 100644 index 053b83d1e..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_folder_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteSolutionFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "solution_folder_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_folder_example_call_tool.py deleted file mode 100644 index 94ca14a9d..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_solution_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteSolutionFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'solution_folder_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_survey_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_survey_example_call_tool.js deleted file mode 100644 index bcd2d9af1..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_survey_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteSurvey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "survey_id_to_delete": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_survey_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_survey_example_call_tool.py deleted file mode 100644 index a372dae9f..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_survey_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteSurvey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'survey_id_to_delete': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_ticket_task_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_ticket_task_example_call_tool.js deleted file mode 100644 index 4a680d62c..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_ticket_task_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteTicketTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_id": 12345, - "task_id": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_ticket_task_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_ticket_task_example_call_tool.py deleted file mode 100644 index 395f22591..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_ticket_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteTicketTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_id': 12345, 'task_id': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_ticket_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/delete_ticket_time_entry_example_call_tool.js deleted file mode 100644 index 3c6ccfecc..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_ticket_time_entry_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.DeleteTicketTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_id": 12345, - "time_entry_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/delete_ticket_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/delete_ticket_time_entry_example_call_tool.py deleted file mode 100644 index 44beadabb..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/delete_ticket_time_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.DeleteTicketTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_id': 12345, 'time_entry_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/fetch_all_vendors_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/fetch_all_vendors_example_call_tool.js deleted file mode 100644 index 60fb215e5..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/fetch_all_vendors_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.FetchAllVendors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 50, - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/fetch_all_vendors_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/fetch_all_vendors_example_call_tool.py deleted file mode 100644 index e266af044..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/fetch_all_vendors_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.FetchAllVendors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 50, 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/fetch_announcement_details_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/fetch_announcement_details_example_call_tool.js deleted file mode 100644 index d0b6ce9e4..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/fetch_announcement_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.FetchAnnouncementDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "announcement_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/fetch_announcement_details_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/fetch_announcement_details_example_call_tool.py deleted file mode 100644 index 586154657..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/fetch_announcement_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.FetchAnnouncementDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'announcement_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/fetch_location_details_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/fetch_location_details_example_call_tool.js deleted file mode 100644 index e07278f2a..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/fetch_location_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.FetchLocationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_identifier": 42 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/fetch_location_details_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/fetch_location_details_example_call_tool.py deleted file mode 100644 index 51a5a8fc0..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/fetch_location_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.FetchLocationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_identifier': 42 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/fetch_release_note_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/fetch_release_note_example_call_tool.js deleted file mode 100644 index 3902622f8..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/fetch_release_note_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.FetchReleaseNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_id": 12345, - "note_id": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/fetch_release_note_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/fetch_release_note_example_call_tool.py deleted file mode 100644 index 7224f60c7..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/fetch_release_note_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.FetchReleaseNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_id': 12345, 'note_id': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/fetch_release_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/fetch_release_time_entry_example_call_tool.js deleted file mode 100644 index 5f7ac8078..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/fetch_release_time_entry_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.FetchReleaseTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_id": 12345, - "time_entry_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/fetch_release_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/fetch_release_time_entry_example_call_tool.py deleted file mode 100644 index c43af4cd1..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/fetch_release_time_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.FetchReleaseTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_id': 12345, 'time_entry_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/fetch_ticket_details_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/fetch_ticket_details_example_call_tool.js deleted file mode 100644 index 77483bc03..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/fetch_ticket_details_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.FetchTicketDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_id": 4821, - "include_fields_in_ticket_response": "requester,conversations,stats" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/fetch_ticket_details_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/fetch_ticket_details_example_call_tool.py deleted file mode 100644 index cc87d6df4..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/fetch_ticket_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.FetchTicketDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_id': 4821, 'include_fields_in_ticket_response': 'requester,conversations,stats' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/fetch_ticket_list_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/fetch_ticket_list_example_call_tool.js deleted file mode 100644 index df94e3ca4..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/fetch_ticket_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.FetchTicketList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_filter_type": "new_and_my_open", - "requester_email_filter": "jane.doe@example.com", - "filter_by_requester_id": 9876, - "filter_by_updated_since": "2025-10-01T00:00:00Z", - "fields_to_include_in_response": "requester", - "sort_order": "desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/fetch_ticket_list_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/fetch_ticket_list_example_call_tool.py deleted file mode 100644 index bf46c741c..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/fetch_ticket_list_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.FetchTicketList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_filter_type': 'new_and_my_open', - 'requester_email_filter': 'jane.doe@example.com', - 'filter_by_requester_id': 9876, - 'filter_by_updated_since': '2025-10-01T00:00:00Z', - 'fields_to_include_in_response': 'requester', - 'sort_order': 'desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_agent_group_info_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_agent_group_info_example_call_tool.js deleted file mode 100644 index 3ac46978d..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_agent_group_info_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetAgentGroupInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_group_identifier": 42 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_agent_group_info_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_agent_group_info_example_call_tool.py deleted file mode 100644 index 6de7f766d..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_agent_group_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetAgentGroupInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_group_identifier': 42 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_all_csat_surveys_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_all_csat_surveys_example_call_tool.js deleted file mode 100644 index 003c334e6..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_all_csat_surveys_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetAllCsatSurveys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_active_surveys": 1, - "entries_per_page": 25, - "survey_page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_all_csat_surveys_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_all_csat_surveys_example_call_tool.py deleted file mode 100644 index 54e8b8857..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_all_csat_surveys_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetAllCsatSurveys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_active_surveys': 1, 'entries_per_page': 25, 'survey_page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_all_freshservice_requesters_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_all_freshservice_requesters_example_call_tool.js deleted file mode 100644 index 689ba5f88..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_all_freshservice_requesters_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetAllFreshserviceRequesters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 50, - "page_number_to_retrieve": 1, - "requester_email": "jane.doe@example.com", - "filter_by_mobile_phone_number": "+15555551234", - "work_phone_number_for_requesters": "+15555559876", - "query_filter": "first_name%3DJane%26job_title%3DEngineer", - "filter_active_accounts": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_all_freshservice_requesters_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_all_freshservice_requesters_example_call_tool.py deleted file mode 100644 index 6d2423be2..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_all_freshservice_requesters_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetAllFreshserviceRequesters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 50, - 'page_number_to_retrieve': 1, - 'requester_email': 'jane.doe@example.com', - 'filter_by_mobile_phone_number': '+15555551234', - 'work_phone_number_for_requesters': '+15555559876', - 'query_filter': 'first_name%3DJane%26job_title%3DEngineer', - 'filter_active_accounts': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_all_locations_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_all_locations_example_call_tool.js deleted file mode 100644 index a1b87bb8b..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_all_locations_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetAllLocations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 50, - "page_number_to_retrieve": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_all_locations_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_all_locations_example_call_tool.py deleted file mode 100644 index 7d80647e1..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_all_locations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetAllLocations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 50, 'page_number_to_retrieve': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_application_licenses_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_application_licenses_example_call_tool.js deleted file mode 100644 index c3804ea36..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_application_licenses_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetApplicationLicenses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_application_licenses_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_application_licenses_example_call_tool.py deleted file mode 100644 index a1b454b86..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_application_licenses_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetApplicationLicenses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_contracts_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_asset_contracts_example_call_tool.js deleted file mode 100644 index 8f0249edf..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_contracts_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetAssetContracts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_display_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_contracts_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_asset_contracts_example_call_tool.py deleted file mode 100644 index 674e6650f..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_contracts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetAssetContracts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_display_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_details_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_asset_details_example_call_tool.js deleted file mode 100644 index d6bc43890..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetAssetDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_display_id": 1024 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_details_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_asset_details_example_call_tool.py deleted file mode 100644 index 072779e6b..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetAssetDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_display_id': 1024 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_asset_fields_example_call_tool.js deleted file mode 100644 index a2ea7ffc0..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_fields_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetAssetFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_type_identifier": 42 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_asset_fields_example_call_tool.py deleted file mode 100644 index 66670e072..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetAssetFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_type_identifier': 42 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_list_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_asset_list_example_call_tool.js deleted file mode 100644 index 9a519a8cb..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetAssetList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 50, - "page_number": 1, - "include_asset_type_fields": "warranty_status,model_number", - "apply_asset_filter": "asset_type_id=2&department_id=5", - "asset_search_query": "name:'Dell Monitor'", - "include_trashed_assets": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_list_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_asset_list_example_call_tool.py deleted file mode 100644 index 1ffc5e00c..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_list_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetAssetList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 50, - 'page_number': 1, - 'include_asset_type_fields': 'warranty_status,model_number', - 'apply_asset_filter': 'asset_type_id=2&department_id=5', - 'asset_search_query': "name:'Dell Monitor'", - 'include_trashed_assets': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_types_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_asset_types_example_call_tool.js deleted file mode 100644 index 49bb7db01..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_types_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetAssetTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 50, - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_types_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_asset_types_example_call_tool.py deleted file mode 100644 index 513f77f72..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_asset_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetAssetTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 50, 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_business_hours_config_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_business_hours_config_example_call_tool.js deleted file mode 100644 index 37cee6f23..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_business_hours_config_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetBusinessHoursConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "business_hours_configuration_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_business_hours_config_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_business_hours_config_example_call_tool.py deleted file mode 100644 index cc71fc9c5..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_business_hours_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetBusinessHoursConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'business_hours_configuration_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_business_hours_configs_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_business_hours_configs_example_call_tool.js deleted file mode 100644 index 6b34abe40..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_business_hours_configs_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetBusinessHoursConfigs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 25, - "requested_page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_business_hours_configs_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_business_hours_configs_example_call_tool.py deleted file mode 100644 index f7d2a7324..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_business_hours_configs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetBusinessHoursConfigs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 25, 'requested_page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_canned_response_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_canned_response_example_call_tool.js deleted file mode 100644 index 4ad1b0ec6..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_canned_response_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetCannedResponse"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "canned_response_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_canned_response_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_canned_response_example_call_tool.py deleted file mode 100644 index b7d691ac5..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_canned_response_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetCannedResponse" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'canned_response_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_canned_response_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_canned_response_folder_example_call_tool.js deleted file mode 100644 index 04696ed8c..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_canned_response_folder_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetCannedResponseFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "canned_response_folder_id": 42 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_canned_response_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_canned_response_folder_example_call_tool.py deleted file mode 100644 index 722d5e9d1..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_canned_response_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetCannedResponseFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'canned_response_folder_id': 42 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_canned_responses_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_canned_responses_example_call_tool.js deleted file mode 100644 index ce79ee7e8..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_canned_responses_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetCannedResponses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_canned_responses_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_canned_responses_example_call_tool.py deleted file mode 100644 index df5fc3b4e..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_canned_responses_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetCannedResponses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_catalog_item_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_catalog_item_fields_example_call_tool.js deleted file mode 100644 index 4b5d3e762..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_catalog_item_fields_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetCatalogItemFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_item_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_catalog_item_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_catalog_item_fields_example_call_tool.py deleted file mode 100644 index c74b93803..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_catalog_item_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetCatalogItemFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_item_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_change_form_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_change_form_fields_example_call_tool.js deleted file mode 100644 index 6787bcdc3..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_change_form_fields_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetChangeFormFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_change_form_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_change_form_fields_example_call_tool.py deleted file mode 100644 index 985368c80..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_change_form_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetChangeFormFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_change_time_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_change_time_entries_example_call_tool.js deleted file mode 100644 index 648159ce8..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_change_time_entries_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetChangeTimeEntries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "change_request_id": 12345, - "time_entries_per_page": 25, - "page_number_to_retrieve": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_change_time_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_change_time_entries_example_call_tool.py deleted file mode 100644 index a2fc92e2d..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_change_time_entries_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetChangeTimeEntries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'change_request_id': 12345, 'time_entries_per_page': 25, 'page_number_to_retrieve': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_component_types_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_component_types_example_call_tool.js deleted file mode 100644 index becc9ec3e..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_component_types_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetComponentTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 50, - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_component_types_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_component_types_example_call_tool.py deleted file mode 100644 index f561e5456..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_component_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetComponentTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 50, 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_csat_survey_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_csat_survey_example_call_tool.js deleted file mode 100644 index 063c73e28..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_csat_survey_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetCsatSurvey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "csat_survey_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_csat_survey_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_csat_survey_example_call_tool.py deleted file mode 100644 index c40bf1190..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_csat_survey_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetCsatSurvey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'csat_survey_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_department_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_department_fields_example_call_tool.js deleted file mode 100644 index bbc04eef6..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_department_fields_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetDepartmentFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_department_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_department_fields_example_call_tool.py deleted file mode 100644 index dfb3c6933..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_department_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetDepartmentFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_device_components_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_device_components_example_call_tool.js deleted file mode 100644 index ec6eb1b08..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_device_components_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetDeviceComponents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "device_display_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_device_components_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_device_components_example_call_tool.py deleted file mode 100644 index 59d674bcb..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_device_components_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetDeviceComponents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'device_display_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_agents_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_agents_example_call_tool.js deleted file mode 100644 index cb3e9ac98..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_agents_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetFreshserviceAgents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 50, - "page_number_to_retrieve": 1, - "requester_email": "admin@example.com", - "agent_type": "fulltime", - "agent_query_filter": "first_name=Alice%20&job_title=Support%20Engineer", - "filter_active_users": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_agents_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_agents_example_call_tool.py deleted file mode 100644 index df83e4e89..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_agents_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetFreshserviceAgents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 50, - 'page_number_to_retrieve': 1, - 'requester_email': 'admin@example.com', - 'agent_type': 'fulltime', - 'agent_query_filter': 'first_name=Alice%20&job_title=Support%20Engineer', - 'filter_active_users': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_announcements_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_announcements_example_call_tool.js deleted file mode 100644 index 07255453c..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_announcements_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetFreshserviceAnnouncements"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "announcement_state": "active", - "announcements_per_page": 25, - "retrieve_page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_announcements_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_announcements_example_call_tool.py deleted file mode 100644 index 5b23d516e..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_announcements_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetFreshserviceAnnouncements" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'announcement_state': 'active', 'announcements_per_page': 25, 'retrieve_page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_canned_response_folders_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_canned_response_folders_example_call_tool.js deleted file mode 100644 index 02fb31a50..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_canned_response_folders_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetFreshserviceCannedResponseFolders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_canned_response_folders_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_canned_response_folders_example_call_tool.py deleted file mode 100644 index 216ba43f8..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_canned_response_folders_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetFreshserviceCannedResponseFolders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_departments_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_departments_example_call_tool.js deleted file mode 100644 index f46957f1d..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_departments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetFreshserviceDepartments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 50, - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_departments_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_departments_example_call_tool.py deleted file mode 100644 index 1d3cb00cd..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_departments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetFreshserviceDepartments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 50, 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_requester_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_requester_example_call_tool.js deleted file mode 100644 index fb49f6173..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_requester_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetFreshserviceRequester"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "requester_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_requester_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_requester_example_call_tool.py deleted file mode 100644 index 81f82c4b3..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_freshservice_requester_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetFreshserviceRequester" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'requester_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_onboarding_request_tickets_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_onboarding_request_tickets_example_call_tool.js deleted file mode 100644 index 87e569749..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_onboarding_request_tickets_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetOnboardingRequestTickets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_onboarding_request_tickets_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_onboarding_request_tickets_example_call_tool.py deleted file mode 100644 index 7d4532614..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_onboarding_request_tickets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetOnboardingRequestTickets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_notes_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_problem_notes_example_call_tool.js deleted file mode 100644 index d27407e98..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_notes_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetProblemNotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "problem_id": 4821, - "notes_per_page": 25, - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_notes_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_problem_notes_example_call_tool.py deleted file mode 100644 index 2e16ddc19..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_notes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetProblemNotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'problem_id': 4821, 'notes_per_page': 25, 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_problem_tasks_example_call_tool.js deleted file mode 100644 index d01410b21..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_tasks_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetProblemTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "problem_id": 12345, - "tasks_per_page": 25, - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_problem_tasks_example_call_tool.py deleted file mode 100644 index d90447291..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_tasks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetProblemTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'problem_id': 12345, 'tasks_per_page': 25, 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_time_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_problem_time_entries_example_call_tool.js deleted file mode 100644 index 5eb3204d3..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_time_entries_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetProblemTimeEntries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "problem_id": 12345, - "entries_per_page": 25, - "page_number_to_retrieve": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_time_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_problem_time_entries_example_call_tool.py deleted file mode 100644 index 6302f7849..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_time_entries_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetProblemTimeEntries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'problem_id': 12345, 'entries_per_page': 25, 'page_number_to_retrieve': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_problem_time_entry_example_call_tool.js deleted file mode 100644 index f33864933..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_time_entry_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetProblemTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "problem_id": 1024, - "time_entry_id": 58 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_problem_time_entry_example_call_tool.py deleted file mode 100644 index 038053956..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_problem_time_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetProblemTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'problem_id': 1024, 'time_entry_id': 58 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_product_details_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_product_details_example_call_tool.js deleted file mode 100644 index 8a55b8986..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_product_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetProductDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_product_details_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_product_details_example_call_tool.py deleted file mode 100644 index 7bb1e2666..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_product_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetProductDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_project_task_details_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_project_task_details_example_call_tool.js deleted file mode 100644 index 2882224a9..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_project_task_details_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetProjectTaskDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": 4821, - "project_id": 310 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_project_task_details_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_project_task_details_example_call_tool.py deleted file mode 100644 index d744b01ca..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_project_task_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetProjectTaskDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': 4821, 'project_id': 310 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_purchase_order_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_purchase_order_example_call_tool.js deleted file mode 100644 index 3c1d336fa..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_purchase_order_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetPurchaseOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "purchase_order_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_purchase_order_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_purchase_order_example_call_tool.py deleted file mode 100644 index 66b47b976..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_purchase_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetPurchaseOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'purchase_order_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_release_details_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_release_details_example_call_tool.js deleted file mode 100644 index 7b57b4b27..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_release_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetReleaseDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_release_details_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_release_details_example_call_tool.py deleted file mode 100644 index 05355e253..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_release_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetReleaseDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_release_form_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_release_form_fields_example_call_tool.js deleted file mode 100644 index 3b7bea401..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_release_form_fields_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetReleaseFormFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_release_form_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_release_form_fields_example_call_tool.py deleted file mode 100644 index dd4b283ad..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_release_form_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetReleaseFormFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_release_notes_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_release_notes_example_call_tool.js deleted file mode 100644 index e2e8cc70c..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_release_notes_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetReleaseNotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_id": 12345, - "notes_per_page": 25, - "retrieve_page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_release_notes_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_release_notes_example_call_tool.py deleted file mode 100644 index 00e9b22b7..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_release_notes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetReleaseNotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_id': 12345, 'notes_per_page': 25, 'retrieve_page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_release_time_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_release_time_entries_example_call_tool.js deleted file mode 100644 index 88c3d0504..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_release_time_entries_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetReleaseTimeEntries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_id": 4821, - "entries_per_page": 50, - "page_number_to_retrieve": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_release_time_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_release_time_entries_example_call_tool.py deleted file mode 100644 index ebf319143..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_release_time_entries_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetReleaseTimeEntries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_id': 4821, 'entries_per_page': 50, 'page_number_to_retrieve': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_releases_list_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_releases_list_example_call_tool.js deleted file mode 100644 index 00812a789..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_releases_list_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetReleasesList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fetch_releases_updated_since": "2025-01-01", - "releases_per_page": 25, - "page_number_to_retrieve": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_releases_list_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_releases_list_example_call_tool.py deleted file mode 100644 index 16b5cf00d..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_releases_list_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetReleasesList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fetch_releases_updated_since': '2025-01-01', - 'releases_per_page': 25, - 'page_number_to_retrieve': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_requester_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_requester_fields_example_call_tool.js deleted file mode 100644 index 16665d3eb..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_requester_fields_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetRequesterFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 25, - "page_number_to_retrieve": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_requester_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_requester_fields_example_call_tool.py deleted file mode 100644 index a4ebfa671..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_requester_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetRequesterFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 25, 'page_number_to_retrieve': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_service_items_list_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_service_items_list_example_call_tool.js deleted file mode 100644 index 32bd89455..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_service_items_list_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetServiceItemsList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 25, - "page_number_to_retrieve": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_service_items_list_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_service_items_list_example_call_tool.py deleted file mode 100644 index c40a4792f..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_service_items_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetServiceItemsList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 25, 'page_number_to_retrieve': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_software_installation_list_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_software_installation_list_example_call_tool.js deleted file mode 100644 index 8f68b9676..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_software_installation_list_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetSoftwareInstallationList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "software_application_id": 4521 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_software_installation_list_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_software_installation_list_example_call_tool.py deleted file mode 100644 index 0a67ec924..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_software_installation_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetSoftwareInstallationList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'software_application_id': 4521 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_software_list_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_software_list_example_call_tool.js deleted file mode 100644 index ba46dbe93..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_software_list_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetSoftwareList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 50, - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_software_list_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_software_list_example_call_tool.py deleted file mode 100644 index 59a19f27c..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_software_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetSoftwareList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 50, 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_solution_articles_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_solution_articles_example_call_tool.js deleted file mode 100644 index c183c490a..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_solution_articles_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetSolutionArticles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 25, - "page_number": 1, - "folder_identifier": 42 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_solution_articles_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_solution_articles_example_call_tool.py deleted file mode 100644 index 53f276c89..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_solution_articles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetSolutionArticles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 25, 'page_number': 1, 'folder_identifier': 42 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_solution_categories_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_solution_categories_example_call_tool.js deleted file mode 100644 index c5c7c16e0..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_solution_categories_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetSolutionCategories"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 25, - "page_number_to_retrieve": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_solution_categories_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_solution_categories_example_call_tool.py deleted file mode 100644 index 7b798e776..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_solution_categories_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetSolutionCategories" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 25, 'page_number_to_retrieve': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_conversations_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_conversations_example_call_tool.js deleted file mode 100644 index 5f680e16a..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_conversations_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetTicketConversations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_conversations_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_conversations_example_call_tool.py deleted file mode 100644 index 1f3bc7447..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_conversations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetTicketConversations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_tasks_example_call_tool.js deleted file mode 100644 index 121168367..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_tasks_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetTicketTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_request_id": 12345, - "tasks_per_page": 25, - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_tasks_example_call_tool.py deleted file mode 100644 index 76044a6ce..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_tasks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetTicketTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_request_id': 12345, 'tasks_per_page': 25, 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_time_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_time_entries_example_call_tool.js deleted file mode 100644 index c7fbfc5b3..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_time_entries_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetTicketTimeEntries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_request_id": 12345, - "number_of_entries_per_page": 25, - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_time_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_time_entries_example_call_tool.py deleted file mode 100644 index 9ed063e88..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_time_entries_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetTicketTimeEntries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_request_id': 12345, 'number_of_entries_per_page': 25, 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_time_entry_example_call_tool.js deleted file mode 100644 index a99f29312..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_time_entry_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetTicketTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_request_id": 12345, - "time_entry_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_time_entry_example_call_tool.py deleted file mode 100644 index 3a76801a9..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_ticket_time_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetTicketTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_request_id': 12345, 'time_entry_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_user_onboarding_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_user_onboarding_requests_example_call_tool.js deleted file mode 100644 index e66a7c038..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_user_onboarding_requests_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetUserOnboardingRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_user_onboarding_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_user_onboarding_requests_example_call_tool.py deleted file mode 100644 index 200f3df56..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_user_onboarding_requests_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetUserOnboardingRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_vendor_details_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/get_vendor_details_example_call_tool.js deleted file mode 100644 index c0306f16a..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_vendor_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.GetVendorDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "vendor_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/get_vendor_details_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/get_vendor_details_example_call_tool.py deleted file mode 100644 index c1484c85c..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/get_vendor_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.GetVendorDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'vendor_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_all_products_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/list_all_products_example_call_tool.js deleted file mode 100644 index 5f9d230ea..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_all_products_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ListAllProducts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 50, - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_all_products_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/list_all_products_example_call_tool.py deleted file mode 100644 index d15ce25f6..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_all_products_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ListAllProducts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 50, 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_asset_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/list_asset_requests_example_call_tool.js deleted file mode 100644 index 5d59316ec..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_asset_requests_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ListAssetRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_display_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_asset_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/list_asset_requests_example_call_tool.py deleted file mode 100644 index 47ccf7d56..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_asset_requests_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ListAssetRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_display_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_canned_responses_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/list_canned_responses_example_call_tool.js deleted file mode 100644 index a0d82fe44..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_canned_responses_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ListCannedResponses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "canned_response_folder_id": 42 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_canned_responses_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/list_canned_responses_example_call_tool.py deleted file mode 100644 index 6df919ada..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_canned_responses_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ListCannedResponses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'canned_response_folder_id': 42 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_freshservice_agent_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/list_freshservice_agent_groups_example_call_tool.js deleted file mode 100644 index 401c2cd36..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_freshservice_agent_groups_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ListFreshserviceAgentGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 50, - "page_number_to_retrieve": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_freshservice_agent_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/list_freshservice_agent_groups_example_call_tool.py deleted file mode 100644 index 6b450ca91..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_freshservice_agent_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ListFreshserviceAgentGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 50, 'page_number_to_retrieve': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_freshservice_changes_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/list_freshservice_changes_example_call_tool.js deleted file mode 100644 index 155d46e01..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_freshservice_changes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ListFreshserviceChanges"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "change_filter_name": "my_open", - "requester_email": "alice@example.com", - "updated_since": "2025-10-01", - "page_size": 25, - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_freshservice_changes_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/list_freshservice_changes_example_call_tool.py deleted file mode 100644 index 3dc7c2c33..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_freshservice_changes_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ListFreshserviceChanges" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'change_filter_name': 'my_open', - 'requester_email': 'alice@example.com', - 'updated_since': '2025-10-01', - 'page_size': 25, - 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_installed_software_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/list_installed_software_example_call_tool.js deleted file mode 100644 index ff286efa2..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_installed_software_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ListInstalledSoftware"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "device_display_id": 42 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_installed_software_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/list_installed_software_example_call_tool.py deleted file mode 100644 index baf546088..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_installed_software_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ListInstalledSoftware" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'device_display_id': 42 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_project_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/list_project_tasks_example_call_tool.js deleted file mode 100644 index b0f2c46df..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_project_tasks_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ListProjectTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": 12345, - "entries_per_page": 25, - "page_number": 1, - "task_filter": "in_progress", - "task_parent_id": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_project_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/list_project_tasks_example_call_tool.py deleted file mode 100644 index 7d9957d58..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_project_tasks_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ListProjectTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 12345, - 'entries_per_page': 25, - 'page_number': 1, - 'task_filter': 'in_progress', - 'task_parent_id': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_purchase_orders_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/list_purchase_orders_example_call_tool.js deleted file mode 100644 index ebe7d64a4..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_purchase_orders_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ListPurchaseOrders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 50, - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_purchase_orders_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/list_purchase_orders_example_call_tool.py deleted file mode 100644 index 0239114fa..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_purchase_orders_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ListPurchaseOrders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 50, 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_solution_folders_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/list_solution_folders_example_call_tool.js deleted file mode 100644 index 0baad49f4..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_solution_folders_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ListSolutionFolders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "solution_category_id": 42, - "per_page_count": 25, - "page_number_to_retrieve": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/list_solution_folders_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/list_solution_folders_example_call_tool.py deleted file mode 100644 index 28ab22c95..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/list_solution_folders_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ListSolutionFolders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'solution_category_id': 42, 'per_page_count': 25, 'page_number_to_retrieve': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/merge_requesters_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/merge_requesters_example_call_tool.js deleted file mode 100644 index d36997f94..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/merge_requesters_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.MergeRequesters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "secondary_requester_ids": [ - 3421, - 3422, - 3423 - ], - "primary_requester_id": 3410 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/merge_requesters_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/merge_requesters_example_call_tool.py deleted file mode 100644 index 0db2403d8..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/merge_requesters_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.MergeRequesters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'secondary_requester_ids': [3421, 3422, 3423], 'primary_requester_id': 3410 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/remove_change_task_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/remove_change_task_example_call_tool.js deleted file mode 100644 index bd1d3c048..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/remove_change_task_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RemoveChangeTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "change_request_id": 12345, - "task_identifier": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/remove_change_task_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/remove_change_task_example_call_tool.py deleted file mode 100644 index 1b2de95dc..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/remove_change_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RemoveChangeTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'change_request_id': 12345, 'task_identifier': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/remove_freshservice_ticket_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/remove_freshservice_ticket_example_call_tool.js deleted file mode 100644 index 0304bcf09..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/remove_freshservice_ticket_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RemoveFreshserviceTicket"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_id_to_delete": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/remove_freshservice_ticket_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/remove_freshservice_ticket_example_call_tool.py deleted file mode 100644 index b1b01b1f3..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/remove_freshservice_ticket_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RemoveFreshserviceTicket" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_id_to_delete': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/remove_ticket_conversation_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/remove_ticket_conversation_example_call_tool.js deleted file mode 100644 index c2d599605..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/remove_ticket_conversation_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RemoveTicketConversation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_ticket_id": 12345, - "conversation_id_to_remove": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/remove_ticket_conversation_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/remove_ticket_conversation_example_call_tool.py deleted file mode 100644 index 2b81938b3..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/remove_ticket_conversation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RemoveTicketConversation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_ticket_id': 12345, 'conversation_id_to_remove': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/restore_archived_project_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/restore_archived_project_example_call_tool.js deleted file mode 100644 index a3a1bfa09..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/restore_archived_project_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RestoreArchivedProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/restore_archived_project_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/restore_archived_project_example_call_tool.py deleted file mode 100644 index 6532766a3..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/restore_archived_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RestoreArchivedProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/restore_deleted_ticket_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/restore_deleted_ticket_example_call_tool.js deleted file mode 100644 index c24c0a2f3..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/restore_deleted_ticket_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RestoreDeletedTicket"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_id_to_restore": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/restore_deleted_ticket_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/restore_deleted_ticket_example_call_tool.py deleted file mode 100644 index 8a5c3f914..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/restore_deleted_ticket_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RestoreDeletedTicket" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_id_to_restore': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_agent_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_agent_fields_example_call_tool.js deleted file mode 100644 index 32faf7d0a..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_agent_fields_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveAgentFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 50, - "page_number_to_retrieve": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_agent_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_agent_fields_example_call_tool.py deleted file mode 100644 index 59cebe8dd..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_agent_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveAgentFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 50, 'page_number_to_retrieve': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_all_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_all_projects_example_call_tool.js deleted file mode 100644 index 53fb41663..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_all_projects_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveAllProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entries_per_page": 25, - "page_number": 1, - "project_status_filter": "in_progress", - "filter_archived_projects": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_all_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_all_projects_example_call_tool.py deleted file mode 100644 index d185c5d87..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_all_projects_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveAllProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entries_per_page': 25, - 'page_number': 1, - 'project_status_filter': 'in_progress', - 'filter_archived_projects': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_asset_type_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_asset_type_example_call_tool.js deleted file mode 100644 index 8f8e0c3ba..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_asset_type_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveAssetType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_type_id": 42 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_asset_type_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_asset_type_example_call_tool.py deleted file mode 100644 index 7013533ab..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_asset_type_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveAssetType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_type_id': 42 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_note_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_note_example_call_tool.js deleted file mode 100644 index a1a1fdf14..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_note_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveChangeNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "change_request_id": 12345, - "note_identifier": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_note_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_note_example_call_tool.py deleted file mode 100644 index c30a4085d..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_note_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveChangeNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'change_request_id': 12345, 'note_identifier': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_notes_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_notes_example_call_tool.js deleted file mode 100644 index 6cb07989c..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_notes_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveChangeNotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "change_request_id": 12345, - "notes_per_page": 25, - "page_number_to_retrieve": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_notes_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_notes_example_call_tool.py deleted file mode 100644 index 87411db40..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_notes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveChangeNotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'change_request_id': 12345, 'notes_per_page': 25, 'page_number_to_retrieve': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_request_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_request_example_call_tool.js deleted file mode 100644 index 938051b64..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_request_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveChangeRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "change_request_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_request_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_request_example_call_tool.py deleted file mode 100644 index 78be64b03..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_request_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveChangeRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'change_request_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_request_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_request_time_entry_example_call_tool.js deleted file mode 100644 index 6a32fa1b8..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_request_time_entry_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveChangeRequestTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "change_request_id": 12345, - "time_entry_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_request_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_request_time_entry_example_call_tool.py deleted file mode 100644 index a8d39111f..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_request_time_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveChangeRequestTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'change_request_id': 12345, 'time_entry_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_task_info_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_task_info_example_call_tool.js deleted file mode 100644 index 704655a84..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_task_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveChangeTaskInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "change_request_id": 12345, - "task_identifier": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_task_info_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_task_info_example_call_tool.py deleted file mode 100644 index 1da30a36c..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_task_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveChangeTaskInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'change_request_id': 12345, 'task_identifier': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_tasks_example_call_tool.js deleted file mode 100644 index 3431c5da6..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_tasks_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveChangeTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "change_request_id": 12345, - "tasks_per_page": 25, - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_tasks_example_call_tool.py deleted file mode 100644 index 506c35129..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_change_tasks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveChangeTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'change_request_id': 12345, 'tasks_per_page': 25, 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_department_details_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_department_details_example_call_tool.js deleted file mode 100644 index 6d171d647..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_department_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveDepartmentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "department_id": 42 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_department_details_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_department_details_example_call_tool.py deleted file mode 100644 index 0d6cd0344..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_department_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveDepartmentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'department_id': 42 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_agent_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_agent_example_call_tool.js deleted file mode 100644 index e6b00454d..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_agent_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveFreshserviceAgent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_agent_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_agent_example_call_tool.py deleted file mode 100644 index b17250eed..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_agent_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveFreshserviceAgent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_problem_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_problem_example_call_tool.js deleted file mode 100644 index 5135a1b1d..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_problem_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveFreshserviceProblem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "problem_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_problem_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_problem_example_call_tool.py deleted file mode 100644 index a45f4e544..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_problem_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveFreshserviceProblem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'problem_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_problems_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_problems_example_call_tool.js deleted file mode 100644 index d909aaa78..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_problems_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveFreshserviceProblems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "updated_since": "2025-10-01", - "problems_per_page": 50, - "page_number_to_retrieve": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_problems_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_problems_example_call_tool.py deleted file mode 100644 index c33275dd8..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_problems_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveFreshserviceProblems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'updated_since': '2025-10-01', 'problems_per_page': 50, 'page_number_to_retrieve': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_project_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_project_example_call_tool.js deleted file mode 100644 index eefac1ddc..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_project_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveFreshserviceProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_project_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_project_example_call_tool.py deleted file mode 100644 index 899901b8c..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_freshservice_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveFreshserviceProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_onboarding_request_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_onboarding_request_example_call_tool.js deleted file mode 100644 index 0716383c4..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_onboarding_request_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveOnboardingRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "onboarding_request_id": 1024 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_onboarding_request_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_onboarding_request_example_call_tool.py deleted file mode 100644 index 4020f53d4..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_onboarding_request_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveOnboardingRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'onboarding_request_id': 1024 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_problem_note_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_problem_note_example_call_tool.js deleted file mode 100644 index cd5d25a4f..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_problem_note_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveProblemNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "problem_identifier": 12345, - "note_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_problem_note_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_problem_note_example_call_tool.py deleted file mode 100644 index e2c298c2f..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_problem_note_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveProblemNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'problem_identifier': 12345, 'note_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_problem_task_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_problem_task_example_call_tool.js deleted file mode 100644 index 1e5c45c34..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_problem_task_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveProblemTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "problem_id": 12345, - "task_id": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_problem_task_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_problem_task_example_call_tool.py deleted file mode 100644 index e1a1327fb..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_problem_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveProblemTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'problem_id': 12345, 'task_id': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_release_task_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_release_task_example_call_tool.js deleted file mode 100644 index d15bc71f9..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_release_task_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveReleaseTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_id": 12345, - "task_id": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_release_task_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_release_task_example_call_tool.py deleted file mode 100644 index bcd5688eb..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_release_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveReleaseTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_id': 12345, 'task_id': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_release_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_release_tasks_example_call_tool.js deleted file mode 100644 index 3b0d6fead..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_release_tasks_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveReleaseTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_id": 7890, - "tasks_per_page": 25, - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_release_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_release_tasks_example_call_tool.py deleted file mode 100644 index 9fc8aa587..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_release_tasks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveReleaseTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_id': 7890, 'tasks_per_page': 25, 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_software_application_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_software_application_example_call_tool.js deleted file mode 100644 index a27ba59d9..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_software_application_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveSoftwareApplication"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_software_application_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_software_application_example_call_tool.py deleted file mode 100644 index 88dda7762..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_software_application_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveSoftwareApplication" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_ticket_task_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_ticket_task_example_call_tool.js deleted file mode 100644 index 49e691e6a..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_ticket_task_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.RetrieveTicketTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_request_id": 12345, - "task_identifier": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_ticket_task_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/retrieve_ticket_task_example_call_tool.py deleted file mode 100644 index d6a11e0e8..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/retrieve_ticket_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.RetrieveTicketTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_request_id': 12345, 'task_identifier': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/update_asset_component_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/update_asset_component_example_call_tool.js deleted file mode 100644 index a91692c60..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/update_asset_component_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.UpdateAssetComponent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_display_id": 12345, - "component_identifier": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/update_asset_component_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/update_asset_component_example_call_tool.py deleted file mode 100644 index 6747f2628..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/update_asset_component_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.UpdateAssetComponent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_display_id': 12345, 'component_identifier': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/view_service_item_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/view_service_item_example_call_tool.js deleted file mode 100644 index f2184520e..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/view_service_item_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ViewServiceItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_item_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/view_service_item_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/view_service_item_example_call_tool.py deleted file mode 100644 index ca1a0597b..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/view_service_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ViewServiceItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_item_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/view_solution_article_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/view_solution_article_example_call_tool.js deleted file mode 100644 index b5168e7db..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/view_solution_article_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ViewSolutionArticle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "solution_article_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/view_solution_article_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/view_solution_article_example_call_tool.py deleted file mode 100644 index d2d4c232d..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/view_solution_article_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ViewSolutionArticle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'solution_article_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/view_solution_category_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/view_solution_category_example_call_tool.js deleted file mode 100644 index a65ff136c..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/view_solution_category_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ViewSolutionCategory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "solution_category_id": 42 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/view_solution_category_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/view_solution_category_example_call_tool.py deleted file mode 100644 index 1ed53f81d..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/view_solution_category_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ViewSolutionCategory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'solution_category_id': 42 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/freshservice_api/view_solution_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/freshservice_api/view_solution_folder_example_call_tool.js deleted file mode 100644 index 1498d07d0..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/view_solution_folder_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "FreshserviceApi.ViewSolutionFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "solution_folder_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/freshservice_api/view_solution_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/freshservice_api/view_solution_folder_example_call_tool.py deleted file mode 100644 index 72ec0e762..000000000 --- a/public/examples/integrations/mcp-servers/freshservice_api/view_solution_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "FreshserviceApi.ViewSolutionFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'solution_folder_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github/assign_pull_request_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github/assign_pull_request_user_example_call_tool.js deleted file mode 100644 index 779d4ee65..000000000 --- a/public/examples/integrations/mcp-servers/github/assign_pull_request_user_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.AssignPullRequestUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - pull_number: 123, - assignee_identifier: "john.doe@company.com", - search_mode: "email", // Options: username, email, name, id - auto_accept_matches: false, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/assign_pull_request_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github/assign_pull_request_user_example_call_tool.py deleted file mode 100644 index ba6d27adc..000000000 --- a/public/examples/integrations/mcp-servers/github/assign_pull_request_user_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.AssignPullRequestUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "pull_number": 123, - "assignee_identifier": "john.doe@company.com", - "search_mode": "email", # Options: username, email, name, id - "auto_accept_matches": False, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/check_pull_request_merge_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github/check_pull_request_merge_status_example_call_tool.js deleted file mode 100644 index 76677b646..000000000 --- a/public/examples/integrations/mcp-servers/github/check_pull_request_merge_status_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.CheckPullRequestMergeStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - pull_number: 123, - include_check_details: true, // Include individual check run details -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/check_pull_request_merge_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github/check_pull_request_merge_status_example_call_tool.py deleted file mode 100644 index ca6727b72..000000000 --- a/public/examples/integrations/mcp-servers/github/check_pull_request_merge_status_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.CheckPullRequestMergeStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "pull_number": 123, - "include_check_details": True, # Include individual check run details -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/count_stargazers_example_call_tool.js b/public/examples/integrations/mcp-servers/github/count_stargazers_example_call_tool.js deleted file mode 100644 index f3956253b..000000000 --- a/public/examples/integrations/mcp-servers/github/count_stargazers_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.CountStargazers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "ArcadeAI", - name: "arcade-ai" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/count_stargazers_example_call_tool.py b/public/examples/integrations/mcp-servers/github/count_stargazers_example_call_tool.py deleted file mode 100644 index 62910eb64..000000000 --- a/public/examples/integrations/mcp-servers/github/count_stargazers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.CountStargazers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "ArcadeAI", - "name": "arcade-ai", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/create_branch_example_call_tool.js b/public/examples/integrations/mcp-servers/github/create_branch_example_call_tool.js deleted file mode 100644 index f2d95a20d..000000000 --- a/public/examples/integrations/mcp-servers/github/create_branch_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.CreateBranch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - branch: "feature/new-feature", - from_branch: "main", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - - - - - - - diff --git a/public/examples/integrations/mcp-servers/github/create_branch_example_call_tool.py b/public/examples/integrations/mcp-servers/github/create_branch_example_call_tool.py deleted file mode 100644 index 4d785b8ca..000000000 --- a/public/examples/integrations/mcp-servers/github/create_branch_example_call_tool.py +++ /dev/null @@ -1,38 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.CreateBranch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "branch": "feature/new-feature", - "from_branch": "main", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - - - - - - - diff --git a/public/examples/integrations/mcp-servers/github/create_issue_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github/create_issue_comment_example_call_tool.js deleted file mode 100644 index 9b1a0b3ec..000000000 --- a/public/examples/integrations/mcp-servers/github/create_issue_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.CreateIssueComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "ArcadeAI", - repo: "example", - issue_number: 1, - body: "I scored over 9000!", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/create_issue_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github/create_issue_comment_example_call_tool.py deleted file mode 100644 index ba251865c..000000000 --- a/public/examples/integrations/mcp-servers/github/create_issue_comment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.CreateIssueComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "ArcadeAI", - "repo": "example", - "issue_number": 1, - "body": "I scored over 9000!", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/create_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/github/create_issue_example_call_tool.js deleted file mode 100644 index 5ec778d14..000000000 --- a/public/examples/integrations/mcp-servers/github/create_issue_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.CreateIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - title: "Bug: Login button not working", - body: "## Description\nThe login button on the main page doesn't respond to clicks.\n\n## Steps to Reproduce\n1. Go to homepage\n2. Click login button\n3. Nothing happens\n\n## Expected Behavior\nShould redirect to login page", - labels: ["bug", "high-priority"], - assignees: ["developer1"], -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/create_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/github/create_issue_example_call_tool.py deleted file mode 100644 index 9b4fab81b..000000000 --- a/public/examples/integrations/mcp-servers/github/create_issue_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.CreateIssue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "title": "Bug: Login button not working", - "body": "## Description\nThe login button on the main page doesn't respond to clicks.\n\n## Steps to Reproduce\n1. Go to homepage\n2. Click login button\n3. Nothing happens\n\n## Expected Behavior\nShould redirect to login page", - "labels": ["bug", "high-priority"], - "assignees": ["developer1"], -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/create_or_update_file_example_call_tool.js b/public/examples/integrations/mcp-servers/github/create_or_update_file_example_call_tool.js deleted file mode 100644 index 6dee8f109..000000000 --- a/public/examples/integrations/mcp-servers/github/create_or_update_file_example_call_tool.js +++ /dev/null @@ -1,43 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.CreateOrUpdateFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - path: "docs/new_doc.md", - content: "# New Documentation\n\nThis is a new file created via API.", - message: "docs: Add new documentation file", - branch: "feature/docs-update", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - - - - - - - diff --git a/public/examples/integrations/mcp-servers/github/create_or_update_file_example_call_tool.py b/public/examples/integrations/mcp-servers/github/create_or_update_file_example_call_tool.py deleted file mode 100644 index 1c22f36b9..000000000 --- a/public/examples/integrations/mcp-servers/github/create_or_update_file_example_call_tool.py +++ /dev/null @@ -1,40 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.CreateOrUpdateFile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "path": "docs/new_doc.md", - "content": "# New Documentation\n\nThis is a new file created via API.", - "message": "docs: Add new documentation file", - "branch": "feature/docs-update", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - - - - - - - diff --git a/public/examples/integrations/mcp-servers/github/create_pull_request_example_call_tool.js b/public/examples/integrations/mcp-servers/github/create_pull_request_example_call_tool.js deleted file mode 100644 index 076ac6003..000000000 --- a/public/examples/integrations/mcp-servers/github/create_pull_request_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.CreatePullRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - title: "Add new authentication feature", - head: "feature/auth", - base: "main", - body: "This PR implements OAuth2 authentication with the following changes:\n\n- Added OAuth2 provider\n- Updated login flow\n- Added tests", - draft: false, - reviewers: ["teammate1", "teammate2"], -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/create_pull_request_example_call_tool.py b/public/examples/integrations/mcp-servers/github/create_pull_request_example_call_tool.py deleted file mode 100644 index 3a075c843..000000000 --- a/public/examples/integrations/mcp-servers/github/create_pull_request_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.CreatePullRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "title": "Add new authentication feature", - "head": "feature/auth", - "base": "main", - "body": "This PR implements OAuth2 authentication with the following changes:\n\n- Added OAuth2 provider\n- Updated login flow\n- Added tests", - "draft": False, - "reviewers": ["teammate1", "teammate2"], -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/create_reply_for_review_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github/create_reply_for_review_comment_example_call_tool.js deleted file mode 100644 index fea0442a6..000000000 --- a/public/examples/integrations/mcp-servers/github/create_reply_for_review_comment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.CreateReplyForReviewComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "ArcadeAI", - repo: "example", - pull_number: 2, - comment_id: 1, - body: "This is a reply." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/create_reply_for_review_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github/create_reply_for_review_comment_example_call_tool.py deleted file mode 100644 index f3953da90..000000000 --- a/public/examples/integrations/mcp-servers/github/create_reply_for_review_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.CreateReplyForReviewComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "ArcadeAI", - "repo": "example", - "pull_number": 2, - "comment_id": 1, - "body": "This is a reply.", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/create_review_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github/create_review_comment_example_call_tool.js deleted file mode 100644 index 865046eb5..000000000 --- a/public/examples/integrations/mcp-servers/github/create_review_comment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.CreateReviewComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "ArcadeAI", - repo: "example", - pull_number: 2, - body: "This is a review comment.", - path: "README.md", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/create_review_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github/create_review_comment_example_call_tool.py deleted file mode 100644 index 0b7ded3f7..000000000 --- a/public/examples/integrations/mcp-servers/github/create_review_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.CreateReviewComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "ArcadeAI", - "repo": "example", - "pull_number": 2, - "body": "This is a review comment.", - "path": "README.md", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/get_file_contents_example_call_tool.js b/public/examples/integrations/mcp-servers/github/get_file_contents_example_call_tool.js deleted file mode 100644 index 7badfced0..000000000 --- a/public/examples/integrations/mcp-servers/github/get_file_contents_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.GetFileContents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - path: "README.md", - ref: "main", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - - - - - - - diff --git a/public/examples/integrations/mcp-servers/github/get_file_contents_example_call_tool.py b/public/examples/integrations/mcp-servers/github/get_file_contents_example_call_tool.py deleted file mode 100644 index e64285407..000000000 --- a/public/examples/integrations/mcp-servers/github/get_file_contents_example_call_tool.py +++ /dev/null @@ -1,38 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.GetFileContents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "path": "README.md", - "ref": "main", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - - - - - - - diff --git a/public/examples/integrations/mcp-servers/github/get_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/github/get_issue_example_call_tool.js deleted file mode 100644 index 604368e6b..000000000 --- a/public/examples/integrations/mcp-servers/github/get_issue_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.GetIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - issue_number: 42, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/get_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/github/get_issue_example_call_tool.py deleted file mode 100644 index 1de9d07af..000000000 --- a/public/examples/integrations/mcp-servers/github/get_issue_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.GetIssue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "issue_number": 42, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/get_notification_summary_example_call_tool.js b/public/examples/integrations/mcp-servers/github/get_notification_summary_example_call_tool.js deleted file mode 100644 index d438fe94e..000000000 --- a/public/examples/integrations/mcp-servers/github/get_notification_summary_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.GetNotificationSummary"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; // No parameters required - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/get_notification_summary_example_call_tool.py b/public/examples/integrations/mcp-servers/github/get_notification_summary_example_call_tool.py deleted file mode 100644 index 3de779ab0..000000000 --- a/public/examples/integrations/mcp-servers/github/get_notification_summary_example_call_tool.py +++ /dev/null @@ -1,27 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.GetNotificationSummary" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {} # No parameters required - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/get_pull_request_example_call_tool.js b/public/examples/integrations/mcp-servers/github/get_pull_request_example_call_tool.js deleted file mode 100644 index 479598dba..000000000 --- a/public/examples/integrations/mcp-servers/github/get_pull_request_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.GetPullRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "ArcadeAI", - repo: "example", - pull_number: 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/get_pull_request_example_call_tool.py b/public/examples/integrations/mcp-servers/github/get_pull_request_example_call_tool.py deleted file mode 100644 index f82dd1c9f..000000000 --- a/public/examples/integrations/mcp-servers/github/get_pull_request_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}}" -TOOL_NAME = "Github.GetPullRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"owner": "ArcadeAI", "repo": "example", "pull_number": 2} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/get_repository_example_call_tool.js b/public/examples/integrations/mcp-servers/github/get_repository_example_call_tool.js deleted file mode 100644 index f24eb10c5..000000000 --- a/public/examples/integrations/mcp-servers/github/get_repository_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.GetRepository"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "ArcadeAI", - repo: "arcade-ai", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/get_repository_example_call_tool.py b/public/examples/integrations/mcp-servers/github/get_repository_example_call_tool.py deleted file mode 100644 index ed2d0091d..000000000 --- a/public/examples/integrations/mcp-servers/github/get_repository_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.GetRepository" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"owner": "ArcadeAI", "repo": "arcade-ai"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/get_review_workload_example_call_tool.js b/public/examples/integrations/mcp-servers/github/get_review_workload_example_call_tool.js deleted file mode 100644 index d75f7ddba..000000000 --- a/public/examples/integrations/mcp-servers/github/get_review_workload_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.GetReviewWorkload"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; // No parameters required - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/get_review_workload_example_call_tool.py b/public/examples/integrations/mcp-servers/github/get_review_workload_example_call_tool.py deleted file mode 100644 index f85abff76..000000000 --- a/public/examples/integrations/mcp-servers/github/get_review_workload_example_call_tool.py +++ /dev/null @@ -1,27 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.GetReviewWorkload" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {} # No parameters required - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/get_user_open_items_example_call_tool.js b/public/examples/integrations/mcp-servers/github/get_user_open_items_example_call_tool.js deleted file mode 100644 index bb5ad6c8d..000000000 --- a/public/examples/integrations/mcp-servers/github/get_user_open_items_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.GetUserOpenItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - per_page: 30, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/get_user_open_items_example_call_tool.py b/public/examples/integrations/mcp-servers/github/get_user_open_items_example_call_tool.py deleted file mode 100644 index 058498aa1..000000000 --- a/public/examples/integrations/mcp-servers/github/get_user_open_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.GetUserOpenItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "per_page": 30, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/get_user_recent_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/github/get_user_recent_activity_example_call_tool.js deleted file mode 100644 index 4829008fb..000000000 --- a/public/examples/integrations/mcp-servers/github/get_user_recent_activity_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.GetUserRecentActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - days: 30, // Look back 30 days - per_page: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/get_user_recent_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/github/get_user_recent_activity_example_call_tool.py deleted file mode 100644 index 60b64ff16..000000000 --- a/public/examples/integrations/mcp-servers/github/get_user_recent_activity_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.GetUserRecentActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "days": 30, # Look back 30 days - "per_page": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/list_issues_example_call_tool.js b/public/examples/integrations/mcp-servers/github/list_issues_example_call_tool.js deleted file mode 100644 index 469960dbe..000000000 --- a/public/examples/integrations/mcp-servers/github/list_issues_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ListIssues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - state: "open", - labels: "bug,high-priority", - sort: "created", - direction: "desc", - per_page: 30, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/list_issues_example_call_tool.py b/public/examples/integrations/mcp-servers/github/list_issues_example_call_tool.py deleted file mode 100644 index af52b4e66..000000000 --- a/public/examples/integrations/mcp-servers/github/list_issues_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ListIssues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "state": "open", - "labels": "bug,high-priority", - "sort": "created", - "direction": "desc", - "per_page": 30, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/list_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/github/list_notifications_example_call_tool.js deleted file mode 100644 index 43aff42a2..000000000 --- a/public/examples/integrations/mcp-servers/github/list_notifications_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ListNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - page: 1, - per_page: 30, - all_notifications: false, // Include read notifications - participating: false, // Only notifications user is participating in -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/list_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/github/list_notifications_example_call_tool.py deleted file mode 100644 index 473c40cd1..000000000 --- a/public/examples/integrations/mcp-servers/github/list_notifications_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ListNotifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "page": 1, - "per_page": 30, - "all_notifications": False, # Include read notifications - "participating": False, # Only notifications user is participating in -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/list_org_repositories_example_call_tool.js b/public/examples/integrations/mcp-servers/github/list_org_repositories_example_call_tool.js deleted file mode 100644 index 805bb5d5e..000000000 --- a/public/examples/integrations/mcp-servers/github/list_org_repositories_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ListOrgRepositories"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - org: "ArcadeAI", - sort: "created", - sort_direction: "desc", - per_page: 100, - page: 1, - include_extra_data: false, -} - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/list_org_repositories_example_call_tool.py b/public/examples/integrations/mcp-servers/github/list_org_repositories_example_call_tool.py deleted file mode 100644 index ccd3c5e14..000000000 --- a/public/examples/integrations/mcp-servers/github/list_org_repositories_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ListOrgRepositories" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "org": "ArcadeAI", - "sort": "created", - "sort_direction": "desc", - "per_page": 100, - "page": 1, - "include_extra_data": False, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/list_project_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/github/list_project_fields_example_call_tool.js deleted file mode 100644 index 28f3d2ae4..000000000 --- a/public/examples/integrations/mcp-servers/github/list_project_fields_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ListProjectFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - project_search_mode: "number", - project_identifier: "1", - scope_target: "organization", - scope_identifier: "your-org", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/list_project_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/github/list_project_fields_example_call_tool.py deleted file mode 100644 index ac0947c7d..000000000 --- a/public/examples/integrations/mcp-servers/github/list_project_fields_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ListProjectFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "project_search_mode": "number", - "project_identifier": "1", - "scope_target": "organization", - "scope_identifier": "your-org", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/list_project_items_example_call_tool.js b/public/examples/integrations/mcp-servers/github/list_project_items_example_call_tool.js deleted file mode 100644 index fbf6c0a07..000000000 --- a/public/examples/integrations/mcp-servers/github/list_project_items_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ListProjectItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - project_search_mode: "number", - project_identifier: "1", - scope_target: "organization", - scope_identifier: "your-org", - filter_status: "In Progress", - filter_assignee: "@me", - per_page: 50, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/list_project_items_example_call_tool.py b/public/examples/integrations/mcp-servers/github/list_project_items_example_call_tool.py deleted file mode 100644 index 170d25e11..000000000 --- a/public/examples/integrations/mcp-servers/github/list_project_items_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ListProjectItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "project_search_mode": "number", - "project_identifier": "1", - "scope_target": "organization", - "scope_identifier": "your-org", - "filter_status": "In Progress", - "filter_assignee": "@me", - "per_page": 50, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/list_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/github/list_projects_example_call_tool.js deleted file mode 100644 index 92190e5f4..000000000 --- a/public/examples/integrations/mcp-servers/github/list_projects_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ListProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - search_mode: "name", - scope_target: "organization", - scope_identifier: "your-org", - project_identifier: "Engineering Board", - per_page: 30, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/list_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/github/list_projects_example_call_tool.py deleted file mode 100644 index 6f6391e42..000000000 --- a/public/examples/integrations/mcp-servers/github/list_projects_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ListProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "search_mode": "name", - "scope_target": "organization", - "scope_identifier": "your-org", - "project_identifier": "Engineering Board", - "per_page": 30, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/list_pull_request_commits_example_call_tool.js b/public/examples/integrations/mcp-servers/github/list_pull_request_commits_example_call_tool.js deleted file mode 100644 index e1fc752fe..000000000 --- a/public/examples/integrations/mcp-servers/github/list_pull_request_commits_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ListPullRequestCommits"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "ArcadeAI", - repo: "example", - pull_number: 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/list_pull_request_commits_example_call_tool.py b/public/examples/integrations/mcp-servers/github/list_pull_request_commits_example_call_tool.py deleted file mode 100644 index b36d14ed6..000000000 --- a/public/examples/integrations/mcp-servers/github/list_pull_request_commits_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ListPullRequestCommits" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"owner": "ArcadeAI", "repo": "example", "pull_number": 2} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/list_pull_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/github/list_pull_requests_example_call_tool.js deleted file mode 100644 index ffc288180..000000000 --- a/public/examples/integrations/mcp-servers/github/list_pull_requests_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}}"; -const TOOL_NAME = "Github.ListPullRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "ArcadeAI", - repo: "arcade-ai", - state: "open" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/list_pull_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/github/list_pull_requests_example_call_tool.py deleted file mode 100644 index 776511132..000000000 --- a/public/examples/integrations/mcp-servers/github/list_pull_requests_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ListPullRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"owner": "ArcadeAI", "repo": "arcade-ai", "state": "open"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/list_repository_activities_example_call_tool.js b/public/examples/integrations/mcp-servers/github/list_repository_activities_example_call_tool.js deleted file mode 100644 index 9c19ed4d7..000000000 --- a/public/examples/integrations/mcp-servers/github/list_repository_activities_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ListRepositoryActivities"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "ArcadeAI", - repo: "arcade-ai", - sort: "desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/list_repository_activities_example_call_tool.py b/public/examples/integrations/mcp-servers/github/list_repository_activities_example_call_tool.py deleted file mode 100644 index 8b2d20a85..000000000 --- a/public/examples/integrations/mcp-servers/github/list_repository_activities_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ListRepositoryActivities" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "ArcadeAI", - "repo": "arcade-ai", - "sort": "desc", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/list_repository_collaborators_example_call_tool.js b/public/examples/integrations/mcp-servers/github/list_repository_collaborators_example_call_tool.js deleted file mode 100644 index 7cdd53b39..000000000 --- a/public/examples/integrations/mcp-servers/github/list_repository_collaborators_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ListRepositoryCollaborators"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - affiliation: "all", - detail_level: "include_org_members", - include_teams: true, - per_page: 100, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/list_repository_collaborators_example_call_tool.py b/public/examples/integrations/mcp-servers/github/list_repository_collaborators_example_call_tool.py deleted file mode 100644 index d5b7fab41..000000000 --- a/public/examples/integrations/mcp-servers/github/list_repository_collaborators_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ListRepositoryCollaborators" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "affiliation": "all", - "detail_level": "include_org_members", - "include_teams": True, - "per_page": 100, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/list_repository_labels_example_call_tool.js b/public/examples/integrations/mcp-servers/github/list_repository_labels_example_call_tool.js deleted file mode 100644 index ea49bb426..000000000 --- a/public/examples/integrations/mcp-servers/github/list_repository_labels_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ListRepositoryLabels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - per_page: 50, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - - - - - - - diff --git a/public/examples/integrations/mcp-servers/github/list_repository_labels_example_call_tool.py b/public/examples/integrations/mcp-servers/github/list_repository_labels_example_call_tool.py deleted file mode 100644 index 792d4c317..000000000 --- a/public/examples/integrations/mcp-servers/github/list_repository_labels_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ListRepositoryLabels" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "per_page": 50, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - - - - - - - diff --git a/public/examples/integrations/mcp-servers/github/list_review_comments_in_a_repository_example_call_tool.js b/public/examples/integrations/mcp-servers/github/list_review_comments_in_a_repository_example_call_tool.js deleted file mode 100644 index df43bf6a4..000000000 --- a/public/examples/integrations/mcp-servers/github/list_review_comments_in_a_repository_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ListReviewCommentsInARepository"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "ArcadeAI", - repo: "arcade-ai", - sort: "created", - direction: "desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/list_review_comments_in_a_repository_example_call_tool.py b/public/examples/integrations/mcp-servers/github/list_review_comments_in_a_repository_example_call_tool.py deleted file mode 100644 index 000aa3c8e..000000000 --- a/public/examples/integrations/mcp-servers/github/list_review_comments_in_a_repository_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ListReviewCommentsInARepository" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "ArcadeAI", - "repo": "arcade-ai", - "sort": "created", - "direction": "desc", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/list_review_comments_on_pull_request_example_call_tool.js b/public/examples/integrations/mcp-servers/github/list_review_comments_on_pull_request_example_call_tool.js deleted file mode 100644 index 6e509e472..000000000 --- a/public/examples/integrations/mcp-servers/github/list_review_comments_on_pull_request_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ListReviewCommentsOnPullRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "ArcadeAI", - repo: "example", - pull_number: 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/list_review_comments_on_pull_request_example_call_tool.py b/public/examples/integrations/mcp-servers/github/list_review_comments_on_pull_request_example_call_tool.py deleted file mode 100644 index c8860434a..000000000 --- a/public/examples/integrations/mcp-servers/github/list_review_comments_on_pull_request_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ListReviewCommentsOnPullRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"owner": "ArcadeAI", "repo": "example", "pull_number": 2} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/list_stargazers_example_call_tool.js b/public/examples/integrations/mcp-servers/github/list_stargazers_example_call_tool.js deleted file mode 100644 index 502e4fddc..000000000 --- a/public/examples/integrations/mcp-servers/github/list_stargazers_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ListStargazers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "ArcadeAI", - repo: "arcade-ai", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/github/list_stargazers_example_call_tool.py b/public/examples/integrations/mcp-servers/github/list_stargazers_example_call_tool.py deleted file mode 100644 index 7ee27380b..000000000 --- a/public/examples/integrations/mcp-servers/github/list_stargazers_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ListStargazers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"owner": "ArcadeAI", "repo": "arcade-ai"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/manage_labels_example_call_tool.js b/public/examples/integrations/mcp-servers/github/manage_labels_example_call_tool.js deleted file mode 100644 index 4b88eff38..000000000 --- a/public/examples/integrations/mcp-servers/github/manage_labels_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ManageLabels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - number: 42, - "entity_type": "issue", - "add_labels": ["bug", "high-priority"], - "remove_labels": ["triage"], - "auto_accept_matches": true, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - - - - - - - diff --git a/public/examples/integrations/mcp-servers/github/manage_labels_example_call_tool.py b/public/examples/integrations/mcp-servers/github/manage_labels_example_call_tool.py deleted file mode 100644 index ccfe09e4b..000000000 --- a/public/examples/integrations/mcp-servers/github/manage_labels_example_call_tool.py +++ /dev/null @@ -1,41 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ManageLabels" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "number": 42, - "entity_type": "issue", - "add_labels": ["bug", "high-priority"], - "remove_labels": ["triage"], - "auto_accept_matches": True, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - - - - - - - diff --git a/public/examples/integrations/mcp-servers/github/manage_pull_request_example_call_tool.js b/public/examples/integrations/mcp-servers/github/manage_pull_request_example_call_tool.js deleted file mode 100644 index 353fa006b..000000000 --- a/public/examples/integrations/mcp-servers/github/manage_pull_request_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ManagePullRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - pull_number: 123, - title: "Updated: Add authentication feature", - body: "Additional changes based on review feedback", - append_body: true, // Append to existing body instead of replacing - state: "open", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/manage_pull_request_example_call_tool.py b/public/examples/integrations/mcp-servers/github/manage_pull_request_example_call_tool.py deleted file mode 100644 index adfb168e7..000000000 --- a/public/examples/integrations/mcp-servers/github/manage_pull_request_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ManagePullRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "pull_number": 123, - "title": "Updated: Add authentication feature", - "body": "Additional changes based on review feedback", - "append_body": True, # Append to existing body instead of replacing - "state": "open", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/manage_pull_request_reviewers_example_call_tool.js b/public/examples/integrations/mcp-servers/github/manage_pull_request_reviewers_example_call_tool.js deleted file mode 100644 index 7df593bff..000000000 --- a/public/examples/integrations/mcp-servers/github/manage_pull_request_reviewers_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ManagePullRequestReviewers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - pull_number: 123, - add_reviewers: ["user1", "user2"], - add_team_reviewers: ["backend-team"], - remove_reviewers: ["user3"], -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/manage_pull_request_reviewers_example_call_tool.py b/public/examples/integrations/mcp-servers/github/manage_pull_request_reviewers_example_call_tool.py deleted file mode 100644 index 1c32e54aa..000000000 --- a/public/examples/integrations/mcp-servers/github/manage_pull_request_reviewers_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ManagePullRequestReviewers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "pull_number": 123, - "add_reviewers": ["user1", "user2"], - "add_team_reviewers": ["backend-team"], - "remove_reviewers": ["user3"], -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/merge_pull_request_example_call_tool.js b/public/examples/integrations/mcp-servers/github/merge_pull_request_example_call_tool.js deleted file mode 100644 index a4e107fc6..000000000 --- a/public/examples/integrations/mcp-servers/github/merge_pull_request_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.MergePullRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - pull_number: 123, - merge_method: "squash", // Options: merge, squash, rebase - commit_title: "Add authentication feature (#123)", - commit_message: "Implemented OAuth2 authentication", - delete_branch: true, // Delete branch after merge -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/merge_pull_request_example_call_tool.py b/public/examples/integrations/mcp-servers/github/merge_pull_request_example_call_tool.py deleted file mode 100644 index 16d2f0a96..000000000 --- a/public/examples/integrations/mcp-servers/github/merge_pull_request_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.MergePullRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "pull_number": 123, - "merge_method": "squash", # Options: merge, squash, rebase - "commit_title": "Add authentication feature (#123)", - "commit_message": "Implemented OAuth2 authentication", - "delete_branch": True, # Delete branch after merge -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/resolve_review_thread_example_call_tool.js b/public/examples/integrations/mcp-servers/github/resolve_review_thread_example_call_tool.js deleted file mode 100644 index b9cf26307..000000000 --- a/public/examples/integrations/mcp-servers/github/resolve_review_thread_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.ResolveReviewThread"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - thread_id: "PRRT_kwDOABCDEF4ABCDEF", - resolved: true, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/resolve_review_thread_example_call_tool.py b/public/examples/integrations/mcp-servers/github/resolve_review_thread_example_call_tool.py deleted file mode 100644 index b3ff9af6a..000000000 --- a/public/examples/integrations/mcp-servers/github/resolve_review_thread_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.ResolveReviewThread" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "thread_id": "PRRT_kwDOABCDEF4ABCDEF", - "resolved": True, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/search_my_repos_example_call_tool.js b/public/examples/integrations/mcp-servers/github/search_my_repos_example_call_tool.js deleted file mode 100644 index 00caa0478..000000000 --- a/public/examples/integrations/mcp-servers/github/search_my_repos_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.SearchMyRepos"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - repo_name: "frontend", - scope: "organization", - organization: "your-org", - auto_accept_matches: false, - include_recent_branches: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/search_my_repos_example_call_tool.py b/public/examples/integrations/mcp-servers/github/search_my_repos_example_call_tool.py deleted file mode 100644 index 6eeede0eb..000000000 --- a/public/examples/integrations/mcp-servers/github/search_my_repos_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.SearchMyRepos" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "repo_name": "frontend", - "scope": "organization", - "organization": "your-org", - "auto_accept_matches": False, - "include_recent_branches": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/search_project_item_example_call_tool.js b/public/examples/integrations/mcp-servers/github/search_project_item_example_call_tool.js deleted file mode 100644 index 87cc5ec8c..000000000 --- a/public/examples/integrations/mcp-servers/github/search_project_item_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.SearchProjectItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - project_search_mode: "number", - project_identifier: "1", - item_search_mode: "title", - item_identifier: "Implement login feature", - scope_target: "organization", - scope_identifier: "your-org", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/search_project_item_example_call_tool.py b/public/examples/integrations/mcp-servers/github/search_project_item_example_call_tool.py deleted file mode 100644 index 2f49a6c07..000000000 --- a/public/examples/integrations/mcp-servers/github/search_project_item_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.SearchProjectItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "project_search_mode": "number", - "project_identifier": "1", - "item_search_mode": "title", - "item_identifier": "Implement login feature", - "scope_target": "organization", - "scope_identifier": "your-org", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/set_starred_example_call_tool.js b/public/examples/integrations/mcp-servers/github/set_starred_example_call_tool.js deleted file mode 100644 index cfe58df02..000000000 --- a/public/examples/integrations/mcp-servers/github/set_starred_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.SetStarred"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "ArcadeAI", - repo: "arcade-ai", - starred: true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/set_starred_example_call_tool.py b/public/examples/integrations/mcp-servers/github/set_starred_example_call_tool.py deleted file mode 100644 index 3f1e0d34c..000000000 --- a/public/examples/integrations/mcp-servers/github/set_starred_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.SetStarred" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"owner": "ArcadeAI", "name": "arcade-ai", "starred": True} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/github/submit_pull_request_review_example_call_tool.js b/public/examples/integrations/mcp-servers/github/submit_pull_request_review_example_call_tool.js deleted file mode 100644 index 323670a7f..000000000 --- a/public/examples/integrations/mcp-servers/github/submit_pull_request_review_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.SubmitPullRequestReview"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - pull_number: 123, - event: "APPROVE", // Options: APPROVE, REQUEST_CHANGES, COMMENT - body: "Looks good to me! Approved.", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/submit_pull_request_review_example_call_tool.py b/public/examples/integrations/mcp-servers/github/submit_pull_request_review_example_call_tool.py deleted file mode 100644 index 096619e34..000000000 --- a/public/examples/integrations/mcp-servers/github/submit_pull_request_review_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.SubmitPullRequestReview" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "pull_number": 123, - "event": "APPROVE", # Options: APPROVE, REQUEST_CHANGES, COMMENT - "body": "Looks good to me! Approved.", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/update_file_lines_example_call_tool.js b/public/examples/integrations/mcp-servers/github/update_file_lines_example_call_tool.js deleted file mode 100644 index e313bc4c6..000000000 --- a/public/examples/integrations/mcp-servers/github/update_file_lines_example_call_tool.js +++ /dev/null @@ -1,45 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.UpdateFileLines"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - path: "config.json", - branch: "main", - start_line: 10, - end_line: 12, - new_content: ' "timeout": 5000,\n "retry": 3', - message: "chore: Update timeout configuration", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - - - - - - - diff --git a/public/examples/integrations/mcp-servers/github/update_file_lines_example_call_tool.py b/public/examples/integrations/mcp-servers/github/update_file_lines_example_call_tool.py deleted file mode 100644 index 64b25d6cd..000000000 --- a/public/examples/integrations/mcp-servers/github/update_file_lines_example_call_tool.py +++ /dev/null @@ -1,42 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.UpdateFileLines" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "path": "config.json", - "branch": "main", - "start_line": 10, - "end_line": 12, - "new_content": ' "timeout": 5000,\n "retry": 3', - "message": "chore: Update timeout configuration", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - - - - - - - diff --git a/public/examples/integrations/mcp-servers/github/update_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/github/update_issue_example_call_tool.js deleted file mode 100644 index 26777117c..000000000 --- a/public/examples/integrations/mcp-servers/github/update_issue_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.UpdateIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "your-org", - repo: "your-repo", - issue_number: 42, - state: "closed", - labels: ["resolved", "bug"], - assignees: ["user1"], -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/update_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/github/update_issue_example_call_tool.py deleted file mode 100644 index e48ccefab..000000000 --- a/public/examples/integrations/mcp-servers/github/update_issue_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.UpdateIssue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "your-org", - "repo": "your-repo", - "issue_number": 42, - "state": "closed", - "labels": ["resolved", "bug"], - "assignees": ["user1"], -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/update_project_item_example_call_tool.js b/public/examples/integrations/mcp-servers/github/update_project_item_example_call_tool.js deleted file mode 100644 index 8372eeb9a..000000000 --- a/public/examples/integrations/mcp-servers/github/update_project_item_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.UpdateProjectItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - project_search_mode: "number", - project_identifier: "1", - item_search_mode: "title", - item_identifier: "Implement login feature", - scope_target: "organization", - scope_identifier: "your-org", - field_updates: { Status: "Done", Priority: "High" }, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/update_project_item_example_call_tool.py b/public/examples/integrations/mcp-servers/github/update_project_item_example_call_tool.py deleted file mode 100644 index 4f34e321e..000000000 --- a/public/examples/integrations/mcp-servers/github/update_project_item_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.UpdateProjectItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "project_search_mode": "number", - "project_identifier": "1", - "item_search_mode": "title", - "item_identifier": "Implement login feature", - "scope_target": "organization", - "scope_identifier": "your-org", - "field_updates": {"Status": "Done", "Priority": "High"}, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github/update_pull_request_example_call_tool.js b/public/examples/integrations/mcp-servers/github/update_pull_request_example_call_tool.js deleted file mode 100644 index 633e2318b..000000000 --- a/public/examples/integrations/mcp-servers/github/update_pull_request_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.UpdatePullRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - owner: "YourGitHubOrg", - repo: "your-repo", - pull_number: 1, - title: "Updated Title", - body: "Updated body content.", -} - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/github/update_pull_request_example_call_tool.py b/public/examples/integrations/mcp-servers/github/update_pull_request_example_call_tool.py deleted file mode 100644 index a198155b6..000000000 --- a/public/examples/integrations/mcp-servers/github/update_pull_request_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.UpdatePullRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "owner": "YourGitHubOrg", - "repo": "your-repo", - "pull_number": 1, - "title": "Updated Title", - "body": "Updated body content.", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response.output) diff --git a/public/examples/integrations/mcp-servers/github/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/github/who_am_i_example_call_tool.js deleted file mode 100644 index f665efbb1..000000000 --- a/public/examples/integrations/mcp-servers/github/who_am_i_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Github.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; // No parameters required - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/github/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/github/who_am_i_example_call_tool.py deleted file mode 100644 index 0139b2f99..000000000 --- a/public/examples/integrations/mcp-servers/github/who_am_i_example_call_tool.py +++ /dev/null @@ -1,27 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Github.WhoAmI" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {} # No parameters required - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/github_api/accept_github_repo_invitation_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/accept_github_repo_invitation_example_call_tool.js deleted file mode 100644 index 3551da022..000000000 --- a/public/examples/integrations/mcp-servers/github_api/accept_github_repo_invitation_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AcceptGithubRepoInvitation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invitation_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/accept_github_repo_invitation_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/accept_github_repo_invitation_example_call_tool.py deleted file mode 100644 index 50c487c9d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/accept_github_repo_invitation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AcceptGithubRepoInvitation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invitation_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_app_access_restrictions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_app_access_restrictions_example_call_tool.js deleted file mode 100644 index 608030d5f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_app_access_restrictions_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddAppAccessRestrictions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "branch_name": "main", - "request_body": "{\"app_id\": 12345, \"permissions\": {\"contents\": \"write\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_app_access_restrictions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_app_access_restrictions_example_call_tool.py deleted file mode 100644 index 2fc0005b3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_app_access_restrictions_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddAppAccessRestrictions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'branch_name': 'main', - 'request_body': '{"app_id": 12345, "permissions": {"contents": "write"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_custom_labels_to_runner_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_custom_labels_to_runner_example_call_tool.js deleted file mode 100644 index 0c6930d80..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_custom_labels_to_runner_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddCustomLabelsToRunner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_labels": [ - "label1", - "label2" - ], - "enterprise_identifier": "my-enterprise", - "runner_unique_id": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_custom_labels_to_runner_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_custom_labels_to_runner_example_call_tool.py deleted file mode 100644 index 76af149ee..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_custom_labels_to_runner_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddCustomLabelsToRunner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_labels': ['label1', 'label2'], - 'enterprise_identifier': 'my-enterprise', - 'runner_unique_id': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_email_to_github_account_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_email_to_github_account_example_call_tool.js deleted file mode 100644 index 4e31277c4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_email_to_github_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddEmailToGithubAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"email\":\"example@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_email_to_github_account_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_email_to_github_account_example_call_tool.py deleted file mode 100644 index 085ee99bb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_email_to_github_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddEmailToGithubAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"email":"example@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_github_authorized_ssh_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_github_authorized_ssh_key_example_call_tool.js deleted file mode 100644 index 931c8525f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_github_authorized_ssh_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddGithubAuthorizedSshKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "public_ssh_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC3... user@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_github_authorized_ssh_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_github_authorized_ssh_key_example_call_tool.py deleted file mode 100644 index 16aa5e24b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_github_authorized_ssh_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddGithubAuthorizedSshKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'public_ssh_key': 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC3... user@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_github_release_reaction_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_github_release_reaction_example_call_tool.js deleted file mode 100644 index 98ad2408f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_github_release_reaction_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddGithubReleaseReaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "reaction_type": "heart", - "release_identifier": 123, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_github_release_reaction_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_github_release_reaction_example_call_tool.py deleted file mode 100644 index b298791ec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_github_release_reaction_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddGithubReleaseReaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'reaction_type': 'heart', - 'release_identifier': 123, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_gpg_key_to_github_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_gpg_key_to_github_example_call_tool.js deleted file mode 100644 index b0a54292c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_gpg_key_to_github_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddGpgKeyToGithub"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gpg_key_ascii_armored_format": "-----BEGIN PGP PUBLIC KEY BLOCK-----\nVersion: GnuPG v1\n\nmQENB...IDAQAB\n-----END PGP PUBLIC KEY BLOCK-----", - "new_gpg_key_name": "My GPG Key" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_gpg_key_to_github_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_gpg_key_to_github_example_call_tool.py deleted file mode 100644 index 96bea4471..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_gpg_key_to_github_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddGpgKeyToGithub" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gpg_key_ascii_armored_format': '-----BEGIN PGP PUBLIC KEY BLOCK-----\n' - 'Version: GnuPG v1\n' - '\n' - 'mQENB...IDAQAB\n' - '-----END PGP PUBLIC KEY BLOCK-----', - 'new_gpg_key_name': 'My GPG Key' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_labels_to_github_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_labels_to_github_issue_example_call_tool.js deleted file mode 100644 index 842bc8805..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_labels_to_github_issue_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddLabelsToGithubIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "octocat", - "repository_name": "Hello-World", - "issue_number": 42, - "request_body": "{\"labels\":[\"bug\",\"help wanted\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_labels_to_github_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_labels_to_github_issue_example_call_tool.py deleted file mode 100644 index 4ca9c4c52..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_labels_to_github_issue_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddLabelsToGithubIssue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'octocat', - 'repository_name': 'Hello-World', - 'issue_number': 42, - 'request_body': '{"labels":["bug","help wanted"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_labels_to_runner_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_labels_to_runner_example_call_tool.js deleted file mode 100644 index 2ae7a13b2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_labels_to_runner_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddLabelsToRunner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_labels_to_add": [ - "linux", - "build", - "test" - ], - "organization_name": "example-org", - "runner_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_labels_to_runner_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_labels_to_runner_example_call_tool.py deleted file mode 100644 index 7ab8acf35..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_labels_to_runner_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddLabelsToRunner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_labels_to_add': ['linux', 'build', 'test'], - 'organization_name': 'example-org', - 'runner_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_or_update_github_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_or_update_github_collaborator_example_call_tool.js deleted file mode 100644 index 88f4a3509..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_or_update_github_collaborator_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddOrUpdateGithubCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe", - "repository_name": "sample-repo", - "repository_owner": "owner123", - "permission_level_for_github_collaborator": "write" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_or_update_github_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_or_update_github_collaborator_example_call_tool.py deleted file mode 100644 index 85c0a4f04..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_or_update_github_collaborator_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddOrUpdateGithubCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe', - 'repository_name': 'sample-repo', - 'repository_owner': 'owner123', - 'permission_level_for_github_collaborator': 'write' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_or_update_github_team_project_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_or_update_github_team_project_permissions_example_call_tool.js deleted file mode 100644 index c2f88cbe0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_or_update_github_team_project_permissions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddOrUpdateGithubTeamProjectPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "project_id": 12345, - "team_slug": "dev-team", - "project_permission_level": "write" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_or_update_github_team_project_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_or_update_github_team_project_permissions_example_call_tool.py deleted file mode 100644 index c27c7acdf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_or_update_github_team_project_permissions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddOrUpdateGithubTeamProjectPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'project_id': 12345, - 'team_slug': 'dev-team', - 'project_permission_level': 'write' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_org_access_to_runner_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_org_access_to_runner_group_example_call_tool.js deleted file mode 100644 index e0920c40a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_org_access_to_runner_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddOrgAccessToRunnerGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "organization_id": 12345, - "runner_group_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_org_access_to_runner_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_org_access_to_runner_group_example_call_tool.py deleted file mode 100644 index e533e0ea4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_org_access_to_runner_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddOrgAccessToRunnerGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'organization_id': 12345, 'runner_group_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_project_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_project_collaborator_example_call_tool.js deleted file mode 100644 index eda2adecd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_project_collaborator_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddProjectCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collaborator_username": "john_doe", - "project_id": 123, - "collaborator_permission_level": "write" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_project_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_project_collaborator_example_call_tool.py deleted file mode 100644 index d7b61c190..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_project_collaborator_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddProjectCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collaborator_username': 'john_doe', 'project_id': 123, 'collaborator_permission_level': 'write' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_commit_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_reaction_to_commit_comment_example_call_tool.js deleted file mode 100644 index ce3c1c03a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_commit_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddReactionToCommitComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": 12345, - "reaction_type": "+1", - "repository_name": "example-repo", - "repository_owner": "example-user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_commit_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_reaction_to_commit_comment_example_call_tool.py deleted file mode 100644 index 2695bcc38..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_commit_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddReactionToCommitComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': 12345, - 'reaction_type': '+1', - 'repository_name': 'example-repo', - 'repository_owner': 'example-user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_comment_example_call_tool.js deleted file mode 100644 index 7927fdbe6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddReactionToGithubComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_unique_identifier": 12345, - "reaction_type": "heart", - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_comment_example_call_tool.py deleted file mode 100644 index a2877921b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddReactionToGithubComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_unique_identifier': 12345, - 'reaction_type': 'heart', - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_issue_example_call_tool.js deleted file mode 100644 index f539a21d3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_issue_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddReactionToGithubIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_issue_number": 42, - "reaction_type_to_add": "heart", - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_issue_example_call_tool.py deleted file mode 100644 index 0f5529992..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_issue_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddReactionToGithubIssue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_issue_number': 42, - 'reaction_type_to_add': 'heart', - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_team_discussion_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_team_discussion_example_call_tool.js deleted file mode 100644 index a026295ad..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_team_discussion_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddReactionToGithubTeamDiscussion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "discussion_id": 12345, - "organization_name": "example-org", - "reaction_type": "heart", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_team_discussion_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_team_discussion_example_call_tool.py deleted file mode 100644 index d71a5caad..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_github_team_discussion_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddReactionToGithubTeamDiscussion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'discussion_id': 12345, - 'organization_name': 'example-org', - 'reaction_type': 'heart', - 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_pr_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_reaction_to_pr_comment_example_call_tool.js deleted file mode 100644 index 15c03eaad..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_pr_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddReactionToPrComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_unique_id": 12345, - "reaction_type_for_pr_comment": "+1", - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_pr_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_reaction_to_pr_comment_example_call_tool.py deleted file mode 100644 index 880a1a562..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_pr_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddReactionToPrComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_unique_id': 12345, - 'reaction_type_for_pr_comment': '+1', - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_team_discussion_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_reaction_to_team_discussion_comment_example_call_tool.js deleted file mode 100644 index e299e6a74..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_team_discussion_comment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddReactionToTeamDiscussionComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_identifier": 123, - "discussion_identifier": 456, - "organization_name": "example-org", - "reaction_type": "heart", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_team_discussion_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_reaction_to_team_discussion_comment_example_call_tool.py deleted file mode 100644 index fbb2209bb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_reaction_to_team_discussion_comment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddReactionToTeamDiscussionComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_identifier': 123, - 'discussion_identifier': 456, - 'organization_name': 'example-org', - 'reaction_type': 'heart', - 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_repo_access_to_runner_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_repo_access_to_runner_group_example_call_tool.js deleted file mode 100644 index cf3509430..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_repo_access_to_runner_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddRepoAccessToRunnerGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_unique_id": 123, - "runner_group_identifier": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_repo_access_to_runner_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_repo_access_to_runner_group_example_call_tool.py deleted file mode 100644 index 2820ce2d1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_repo_access_to_runner_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddRepoAccessToRunnerGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'repository_unique_id': 123, 'runner_group_identifier': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_repo_to_org_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_repo_to_org_secret_example_call_tool.js deleted file mode 100644 index 89a70aa7c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_repo_to_org_secret_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddRepoToOrgSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_id": 123456, - "secret_name": "my-secret" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_repo_to_org_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_repo_to_org_secret_example_call_tool.py deleted file mode 100644 index e896478c6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_repo_to_org_secret_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddRepoToOrgSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'repository_id': 123456, 'secret_name': 'my-secret' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_repo_to_org_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_repo_to_org_variable_example_call_tool.js deleted file mode 100644 index acb6bd96e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_repo_to_org_variable_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddRepoToOrgVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_id": 123456, - "variable_name": "API_KEY" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_repo_to_org_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_repo_to_org_variable_example_call_tool.py deleted file mode 100644 index dda1e6277..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_repo_to_org_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddRepoToOrgVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'repository_id': 123456, 'variable_name': 'API_KEY' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_repo_to_required_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_repo_to_required_workflow_example_call_tool.js deleted file mode 100644 index 166d1b94b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_repo_to_required_workflow_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddRepoToRequiredWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "exampleOrg", - "repository_unique_identifier": 12345, - "required_workflow_identifier": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_repo_to_required_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_repo_to_required_workflow_example_call_tool.py deleted file mode 100644 index e480f0f33..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_repo_to_required_workflow_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddRepoToRequiredWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'exampleOrg', - 'repository_unique_identifier': 12345, - 'required_workflow_identifier': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_repository_to_github_installation_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_repository_to_github_installation_example_call_tool.js deleted file mode 100644 index 3dda24c2a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_repository_to_github_installation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddRepositoryToGithubInstallation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "installation_id": 123456, - "repository_id": 789012 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_repository_to_github_installation_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_repository_to_github_installation_example_call_tool.py deleted file mode 100644 index f43973ec4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_repository_to_github_installation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddRepositoryToGithubInstallation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'installation_id': 123456, 'repository_id': 789012 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_repository_to_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_repository_to_secret_example_call_tool.js deleted file mode 100644 index 7bcfc42eb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_repository_to_secret_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddRepositoryToSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_id_for_org_secret": 123456, - "secret_name": "mySecret" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_repository_to_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_repository_to_secret_example_call_tool.py deleted file mode 100644 index ef38688a8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_repository_to_secret_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddRepositoryToSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repository_id_for_org_secret': 123456, - 'secret_name': 'mySecret' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_runner_to_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_runner_to_group_example_call_tool.js deleted file mode 100644 index ad8f89de2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_runner_to_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddRunnerToGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "runner_group_identifier": 123, - "runner_identifier": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_runner_to_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_runner_to_group_example_call_tool.py deleted file mode 100644 index c7aeb4494..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_runner_to_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddRunnerToGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'runner_group_identifier': 123, 'runner_identifier': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_security_manager_team_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_security_manager_team_example_call_tool.js deleted file mode 100644 index 24188c0c7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_security_manager_team_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddSecurityManagerTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "team_slug": "security-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_security_manager_team_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_security_manager_team_example_call_tool.py deleted file mode 100644 index 54a51cc9a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_security_manager_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddSecurityManagerTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'team_slug': 'security-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_self_hosted_runner_to_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_self_hosted_runner_to_group_example_call_tool.js deleted file mode 100644 index 93612b102..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_self_hosted_runner_to_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddSelfHostedRunnerToGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "runner_group_identifier": 123, - "self_hosted_runner_id": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_self_hosted_runner_to_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_self_hosted_runner_to_group_example_call_tool.py deleted file mode 100644 index e0cd13671..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_self_hosted_runner_to_group_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddSelfHostedRunnerToGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', - 'runner_group_identifier': 123, - 'self_hosted_runner_id': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_ssh_key_to_github_account_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_ssh_key_to_github_account_example_call_tool.js deleted file mode 100644 index 6acd908c6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_ssh_key_to_github_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddSshKeyToGithubAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "public_ssh_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC3... user@hostname", - "ssh_key_title": "My Laptop SSH Key" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_ssh_key_to_github_account_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_ssh_key_to_github_account_example_call_tool.py deleted file mode 100644 index c9c658497..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_ssh_key_to_github_account_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddSshKeyToGithubAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'public_ssh_key': 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC3... user@hostname', - 'ssh_key_title': 'My Laptop SSH Key' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_status_check_contexts_to_branch_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_status_check_contexts_to_branch_example_call_tool.js deleted file mode 100644 index 71bbeb5d4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_status_check_contexts_to_branch_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddStatusCheckContextsToBranch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "branch_name": "main", - "request_body": "{\"contexts\":[\"ci\",\"test\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_status_check_contexts_to_branch_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_status_check_contexts_to_branch_example_call_tool.py deleted file mode 100644 index 61d44f455..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_status_check_contexts_to_branch_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddStatusCheckContextsToBranch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'branch_name': 'main', - 'request_body': '{"contexts":["ci","test"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_team_access_to_branch_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_team_access_to_branch_example_call_tool.js deleted file mode 100644 index 2993ea9a4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_team_access_to_branch_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddTeamAccessToBranch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "branch_name": "main", - "request_body": "{\"teams\":[\"team1\",\"team2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_team_access_to_branch_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_team_access_to_branch_example_call_tool.py deleted file mode 100644 index 8529ff52d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_team_access_to_branch_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddTeamAccessToBranch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'branch_name': 'main', - 'request_body': '{"teams":["team1","team2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/add_update_github_team_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/add_update_github_team_membership_example_call_tool.js deleted file mode 100644 index aea5d40a0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_update_github_team_membership_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AddUpdateGithubTeamMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_team_slug": "dev-team", - "github_user_handle": "johnDoe123", - "organization_name": "exampleOrg", - "user_team_role": "member" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/add_update_github_team_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/add_update_github_team_membership_example_call_tool.py deleted file mode 100644 index d1a7a54db..000000000 --- a/public/examples/integrations/mcp-servers/github_api/add_update_github_team_membership_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AddUpdateGithubTeamMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_team_slug': 'dev-team', - 'github_user_handle': 'johnDoe123', - 'organization_name': 'exampleOrg', - 'user_team_role': 'member' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/approve_or_reject_pending_deployments_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/approve_or_reject_pending_deployments_example_call_tool.js deleted file mode 100644 index bbbd7e70c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/approve_or_reject_pending_deployments_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ApproveOrRejectPendingDeployments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_review_comment": "Looks good to me!", - "deployment_review_state": "approved", - "environment_ids": [ - 1, - 2, - 3 - ], - "repository_name": "example-repo", - "repository_owner": "example-owner", - "workflow_run_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/approve_or_reject_pending_deployments_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/approve_or_reject_pending_deployments_example_call_tool.py deleted file mode 100644 index d0ac94300..000000000 --- a/public/examples/integrations/mcp-servers/github_api/approve_or_reject_pending_deployments_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ApproveOrRejectPendingDeployments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_review_comment': 'Looks good to me!', - 'deployment_review_state': 'approved', - 'environment_ids': [1, 2, 3], - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'workflow_run_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/assign_github_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/assign_github_issue_example_call_tool.js deleted file mode 100644 index f8e91d571..000000000 --- a/public/examples/integrations/mcp-servers/github_api/assign_github_issue_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.AssignGithubIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_number": 42, - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "assignee_usernames": [ - "user1", - "user2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/assign_github_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/assign_github_issue_example_call_tool.py deleted file mode 100644 index f1c241981..000000000 --- a/public/examples/integrations/mcp-servers/github_api/assign_github_issue_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.AssignGithubIssue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_number': 42, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'assignee_usernames': ['user1', 'user2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/cancel_github_workflow_run_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/cancel_github_workflow_run_example_call_tool.js deleted file mode 100644 index ac4a03a8e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/cancel_github_workflow_run_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CancelGithubWorkflowRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "workflow_run_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/cancel_github_workflow_run_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/cancel_github_workflow_run_example_call_tool.py deleted file mode 100644 index 8582ffde0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/cancel_github_workflow_run_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CancelGithubWorkflowRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'workflow_run_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_branch_commit_signature_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_branch_commit_signature_status_example_call_tool.js deleted file mode 100644 index 7442ec5a8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_branch_commit_signature_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckBranchCommitSignatureStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_branch_commit_signature_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_branch_commit_signature_status_example_call_tool.py deleted file mode 100644 index b0ead617a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_branch_commit_signature_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckBranchCommitSignatureStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_commit_signature_verification_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_commit_signature_verification_example_call_tool.js deleted file mode 100644 index 426363db0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_commit_signature_verification_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckCommitSignatureVerification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "commit_author_filter": "author@example.com", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_commit_signature_verification_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_commit_signature_verification_example_call_tool.py deleted file mode 100644 index 7e33e4490..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_commit_signature_verification_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckCommitSignatureVerification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'commit_author_filter': 'author@example.com', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_config_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_config_status_example_call_tool.js deleted file mode 100644 index 2bd9e65c6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_config_status_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckConfigStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_config_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_config_status_example_call_tool.py deleted file mode 100644 index e86e86ad0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_config_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckConfigStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_github_org_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_github_org_membership_example_call_tool.js deleted file mode 100644 index 13dbf8a1f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_github_org_membership_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckGithubOrgMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123", - "organization_name": "OpenAI" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_github_org_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_github_org_membership_example_call_tool.py deleted file mode 100644 index ef7570ed3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_github_org_membership_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckGithubOrgMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123', 'organization_name': 'OpenAI' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_github_repo_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_github_repo_collaborator_example_call_tool.js deleted file mode 100644 index bfacbde8e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_github_repo_collaborator_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckGithubRepoCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe", - "repository_name": "sample-repo", - "repository_owner": "exampleOrg" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_github_repo_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_github_repo_collaborator_example_call_tool.py deleted file mode 100644 index d0dc7be08..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_github_repo_collaborator_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckGithubRepoCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe', - 'repository_name': 'sample-repo', - 'repository_owner': 'exampleOrg' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_github_token_validity_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_github_token_validity_example_call_tool.js deleted file mode 100644 index 3ab05ffae..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_github_token_validity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckGithubTokenValidity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_app_client_id": "1234567890abcdef", - "oauth_access_token": "gho_ABC1234567890xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_github_token_validity_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_github_token_validity_example_call_tool.py deleted file mode 100644 index 296839e93..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_github_token_validity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckGithubTokenValidity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_app_client_id': '1234567890abcdef', 'oauth_access_token': 'gho_ABC1234567890xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_if_gist_is_starred_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_if_gist_is_starred_example_call_tool.js deleted file mode 100644 index d8ff47be5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_if_gist_is_starred_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckIfGistIsStarred"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gist_identifier": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_if_gist_is_starred_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_if_gist_is_starred_example_call_tool.py deleted file mode 100644 index fecbe441f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_if_gist_is_starred_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckIfGistIsStarred" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gist_identifier': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_if_user_is_followed_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_if_user_is_followed_example_call_tool.js deleted file mode 100644 index c31326b71..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_if_user_is_followed_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckIfUserIsFollowed"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_if_user_is_followed_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_if_user_is_followed_example_call_tool.py deleted file mode 100644 index 9d49505fe..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_if_user_is_followed_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckIfUserIsFollowed" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_maintenance_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_maintenance_status_example_call_tool.js deleted file mode 100644 index 0476a1b44..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_maintenance_status_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckMaintenanceStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_maintenance_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_maintenance_status_example_call_tool.py deleted file mode 100644 index cb9fdfb36..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_maintenance_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckMaintenanceStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_org_migration_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_org_migration_status_example_call_tool.js deleted file mode 100644 index dde8e7544..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_org_migration_status_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckOrgMigrationStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "migration_id": 12345, - "organization_name": "example-org", - "exclude_attributes": [ - "created_at", - "updated_at" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_org_migration_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_org_migration_status_example_call_tool.py deleted file mode 100644 index 148ade32b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_org_migration_status_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckOrgMigrationStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'migration_id': 12345, - 'organization_name': 'example-org', - 'exclude_attributes': ['created_at', 'updated_at'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_pr_merge_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_pr_merge_status_example_call_tool.js deleted file mode 100644 index 875dfff8c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_pr_merge_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckPrMergeStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 42, - "repository_name": "example-repo", - "repository_owner": "example-user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_pr_merge_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_pr_merge_status_example_call_tool.py deleted file mode 100644 index 9b101837d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_pr_merge_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckPrMergeStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 42, 'repository_name': 'example-repo', 'repository_owner': 'example-user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_repo_collaborator_permission_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_repo_collaborator_permission_example_call_tool.js deleted file mode 100644 index b957a46bf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_repo_collaborator_permission_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckRepoCollaboratorPermission"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collaborator_username": "johnDoe", - "repository_name": "sample-repo", - "repository_owner": "owner123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_repo_collaborator_permission_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_repo_collaborator_permission_example_call_tool.py deleted file mode 100644 index d5d318fac..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_repo_collaborator_permission_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckRepoCollaboratorPermission" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collaborator_username': 'johnDoe', - 'repository_name': 'sample-repo', - 'repository_owner': 'owner123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_repo_starred_by_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_repo_starred_by_user_example_call_tool.js deleted file mode 100644 index 5483fa4fe..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_repo_starred_by_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckRepoStarredByUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner_account": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_repo_starred_by_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_repo_starred_by_user_example_call_tool.py deleted file mode 100644 index e485e6c94..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_repo_starred_by_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckRepoStarredByUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner_account': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_team_project_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_team_project_permissions_example_call_tool.js deleted file mode 100644 index a50393835..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_team_project_permissions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckTeamProjectPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "ExampleOrg", - "project_unique_identifier": 123, - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_team_project_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_team_project_permissions_example_call_tool.py deleted file mode 100644 index 85b1af854..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_team_project_permissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckTeamProjectPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'ExampleOrg', 'project_unique_identifier': 123, 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_team_repo_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_team_repo_permissions_example_call_tool.js deleted file mode 100644 index dc4150b86..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_team_repo_permissions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckTeamRepoPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_name": "example-repo", - "repository_owner": "example-owner", - "team_slug": "example-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_team_repo_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_team_repo_permissions_example_call_tool.py deleted file mode 100644 index d0d4446fa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_team_repo_permissions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckTeamRepoPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'team_slug': 'example-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_thread_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_thread_subscription_example_call_tool.js deleted file mode 100644 index 2cc534d94..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_thread_subscription_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckThreadSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_thread_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_thread_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_thread_subscription_example_call_tool.py deleted file mode 100644 index 1159caa41..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_thread_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckThreadSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_thread_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_user_assign_permission_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_user_assign_permission_example_call_tool.js deleted file mode 100644 index 54ec7204f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_user_assign_permission_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckUserAssignPermission"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "assignee_username": "johnDoe", - "issue_identifier": 42, - "repository_name": "sample-repo", - "repository_owner": "ownerName" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_user_assign_permission_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_user_assign_permission_example_call_tool.py deleted file mode 100644 index 558d90bfc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_user_assign_permission_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckUserAssignPermission" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'assignee_username': 'johnDoe', - 'issue_identifier': 42, - 'repository_name': 'sample-repo', - 'repository_owner': 'ownerName' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_user_assignment_permission_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_user_assignment_permission_example_call_tool.js deleted file mode 100644 index f0ceb0a09..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_user_assignment_permission_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckUserAssignmentPermission"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "user_assignee": "johnDoe123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_user_assignment_permission_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_user_assignment_permission_example_call_tool.py deleted file mode 100644 index 4cc030645..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_user_assignment_permission_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckUserAssignmentPermission" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'user_assignee': 'johnDoe123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_user_following_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_user_following_status_example_call_tool.js deleted file mode 100644 index 09e21625b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_user_following_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckUserFollowingStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "alice123", - "target_username": "bob456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_user_following_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_user_following_status_example_call_tool.py deleted file mode 100644 index de5001e81..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_user_following_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckUserFollowingStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'alice123', 'target_username': 'bob456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/check_user_membership_in_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/check_user_membership_in_org_example_call_tool.js deleted file mode 100644 index 52355ed93..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_user_membership_in_org_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CheckUserMembershipInOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123", - "organization_name": "OpenAI" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/check_user_membership_in_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/check_user_membership_in_org_example_call_tool.py deleted file mode 100644 index 753c3c174..000000000 --- a/public/examples/integrations/mcp-servers/github_api/check_user_membership_in_org_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CheckUserMembershipInOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123', 'organization_name': 'OpenAI' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/compare_dependency_changes_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/compare_dependency_changes_example_call_tool.js deleted file mode 100644 index 7aefa0f1b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/compare_dependency_changes_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CompareDependencyChanges"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_and_head_commit_specification": "abc123...def456", - "repository_name": "example-repo", - "repository_owner_name": "example-owner", - "dependency_manifest_file_path": "path/to/manifest.json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/compare_dependency_changes_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/compare_dependency_changes_example_call_tool.py deleted file mode 100644 index 8ea31c3e5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/compare_dependency_changes_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CompareDependencyChanges" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_and_head_commit_specification': 'abc123...def456', - 'repository_name': 'example-repo', - 'repository_owner_name': 'example-owner', - 'dependency_manifest_file_path': 'path/to/manifest.json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/compare_github_commits_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/compare_github_commits_example_call_tool.js deleted file mode 100644 index c934af608..000000000 --- a/public/examples/integrations/mcp-servers/github_api/compare_github_commits_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CompareGithubCommits"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_and_head_branch_comparison": "main...feature-branch", - "repository_name": "example-repo", - "repository_owner": "example-user", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/compare_github_commits_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/compare_github_commits_example_call_tool.py deleted file mode 100644 index c0e0b790e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/compare_github_commits_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CompareGithubCommits" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_and_head_branch_comparison': 'main...feature-branch', - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/complete_github_app_handshake_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/complete_github_app_handshake_example_call_tool.js deleted file mode 100644 index b32f94841..000000000 --- a/public/examples/integrations/mcp-servers/github_api/complete_github_app_handshake_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CompleteGithubAppHandshake"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "temporary_code_for_github_app": "temp_code_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/complete_github_app_handshake_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/complete_github_app_handshake_example_call_tool.py deleted file mode 100644 index b89ff9497..000000000 --- a/public/examples/integrations/mcp-servers/github_api/complete_github_app_handshake_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CompleteGithubAppHandshake" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'temporary_code_for_github_app': 'temp_code_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/configure_github_actions_cache_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/configure_github_actions_cache_example_call_tool.js deleted file mode 100644 index a189fd2a5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/configure_github_actions_cache_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ConfigureGithubActionsCache"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_cache_size_limit_gb": 5, - "repository_name": "example-repo", - "repository_owner": "example-user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/configure_github_actions_cache_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/configure_github_actions_cache_example_call_tool.py deleted file mode 100644 index f80099182..000000000 --- a/public/examples/integrations/mcp-servers/github_api/configure_github_actions_cache_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ConfigureGithubActionsCache" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_cache_size_limit_gb': 5, - 'repository_name': 'example-repo', - 'repository_owner': 'example-user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/configure_github_actions_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/configure_github_actions_permissions_example_call_tool.js deleted file mode 100644 index 312f031c6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/configure_github_actions_permissions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ConfigureGithubActionsPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_execution_policy": "all", - "allowed_actions_policy": "local_only" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/configure_github_actions_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/configure_github_actions_permissions_example_call_tool.py deleted file mode 100644 index 45e35a3ad..000000000 --- a/public/examples/integrations/mcp-servers/github_api/configure_github_actions_permissions_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ConfigureGithubActionsPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repository_execution_policy': 'all', - 'allowed_actions_policy': 'local_only' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/configure_github_pages_site_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/configure_github_pages_site_example_call_tool.js deleted file mode 100644 index 7cdce3269..000000000 --- a/public/examples/integrations/mcp-servers/github_api/configure_github_pages_site_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ConfigureGithubPagesSite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "request_body": "{\"theme\":\"minimal\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/configure_github_pages_site_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/configure_github_pages_site_example_call_tool.py deleted file mode 100644 index f25b2e1fe..000000000 --- a/public/examples/integrations/mcp-servers/github_api/configure_github_pages_site_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ConfigureGithubPagesSite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'request_body': '{"theme":"minimal"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/configure_github_token_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/configure_github_token_permissions_example_call_tool.js deleted file mode 100644 index ad36ec964..000000000 --- a/public/examples/integrations/mcp-servers/github_api/configure_github_token_permissions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ConfigureGithubTokenPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "default_workflow_permissions": "write", - "enable_pull_request_approval": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/configure_github_token_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/configure_github_token_permissions_example_call_tool.py deleted file mode 100644 index fa0e7ba26..000000000 --- a/public/examples/integrations/mcp-servers/github_api/configure_github_token_permissions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ConfigureGithubTokenPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'default_workflow_permissions': 'write', - 'enable_pull_request_approval': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/convert_member_to_outside_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/convert_member_to_outside_collaborator_example_call_tool.js deleted file mode 100644 index 2000df05e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/convert_member_to_outside_collaborator_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ConvertMemberToOutsideCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe", - "organization_name": "exampleOrg", - "perform_asynchronously": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/convert_member_to_outside_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/convert_member_to_outside_collaborator_example_call_tool.py deleted file mode 100644 index 08227928a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/convert_member_to_outside_collaborator_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ConvertMemberToOutsideCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe', 'organization_name': 'exampleOrg', 'perform_asynchronously': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_enterprise_scim_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_enterprise_scim_group_example_call_tool.js deleted file mode 100644 index ce6d4f880..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_enterprise_scim_group_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateEnterpriseScimGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Developers\",\"members\":[{\"id\":\"user123\",\"type\":\"external\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_enterprise_scim_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_enterprise_scim_group_example_call_tool.py deleted file mode 100644 index 30ef1094a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_enterprise_scim_group_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateEnterpriseScimGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Developers","members":[{"id":"user123","type":"external"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_enterprise_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_enterprise_user_example_call_tool.js deleted file mode 100644 index 139d48f4a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_enterprise_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateEnterpriseUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_username": "john-doe", - "user_email": "john.doe@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_enterprise_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_enterprise_user_example_call_tool.py deleted file mode 100644 index 187087368..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_enterprise_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateEnterpriseUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_username': 'john-doe', 'user_email': 'john.doe@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_gist_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_gist_comment_example_call_tool.js deleted file mode 100644 index 6fbaa30ec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_gist_comment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGistComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_text": "Great work on this gist!", - "gist_unique_identifier": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_gist_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_gist_comment_example_call_tool.py deleted file mode 100644 index cf211b7c7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_gist_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGistComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_text': 'Great work on this gist!', 'gist_unique_identifier': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_gist_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_gist_example_call_tool.js deleted file mode 100644 index 0a687327a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_gist_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"description\":\"Sample gist\",\"files\":{\"file1.txt\":{\"content\":\"Hello World\"}}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_gist_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_gist_example_call_tool.py deleted file mode 100644 index 71601da09..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_gist_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"description":"Sample gist","files":{"file1.txt":{"content":"Hello World"}}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_git_commit_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_git_commit_example_call_tool.js deleted file mode 100644 index 7cf3d23f9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_git_commit_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGitCommit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "request_body": "{\"message\":\"Initial commit\",\"author\":{\"name\":\"John Doe\",\"email\":\"john@example.com\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_git_commit_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_git_commit_example_call_tool.py deleted file mode 100644 index c5c9bf16a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_git_commit_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGitCommit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'request_body': '{"message":"Initial commit","author":{"name":"John ' - 'Doe","email":"john@example.com"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_git_reference_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_git_reference_example_call_tool.js deleted file mode 100644 index eb9d2a314..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_git_reference_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGitReference"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "full_reference_name": "refs/heads/new-feature", - "reference_sha": "abc123def4567890abcdef1234567890abcdef12", - "repository_name": "example-repo", - "repository_owner": "example-user", - "authentication_token": "ghp_ABC1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_git_reference_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_git_reference_example_call_tool.py deleted file mode 100644 index 2f6c0e5ec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_git_reference_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGitReference" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'full_reference_name': 'refs/heads/new-feature', - 'reference_sha': 'abc123def4567890abcdef1234567890abcdef12', - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'authentication_token': 'ghp_ABC1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_git_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_git_tag_example_call_tool.js deleted file mode 100644 index f3049637b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_git_tag_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGitTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "git_object_sha": "abc123def456", - "repository_name": "my-repo", - "repository_owner": "user123", - "tag_message": "Release version 1.0.0", - "tag_name": "v1.0.0", - "tag_object_type": "commit" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_git_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_git_tag_example_call_tool.py deleted file mode 100644 index f3cd09ca4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_git_tag_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGitTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'git_object_sha': 'abc123def456', - 'repository_name': 'my-repo', - 'repository_owner': 'user123', - 'tag_message': 'Release version 1.0.0', - 'tag_name': 'v1.0.0', - 'tag_object_type': 'commit' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_git_tree_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_git_tree_example_call_tool.js deleted file mode 100644 index 9441a2f4d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_git_tree_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGitTree"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "sampleRepo", - "request_body": "{\"tree\":[{\"path\":\"file.txt\",\"mode\":\"100644\",\"content\":\"Hello World\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_git_tree_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_git_tree_example_call_tool.py deleted file mode 100644 index d0c05f033..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_git_tree_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGitTree" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'sampleRepo', - 'request_body': '{"tree":[{"path":"file.txt","mode":"100644","content":"Hello World"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_app_installation_token_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_app_installation_token_example_call_tool.js deleted file mode 100644 index 734b28bf6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_app_installation_token_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubAppInstallationToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "installation_id": 123456, - "request_body": "{\"repository_ids\":[1,2,3]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_app_installation_token_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_app_installation_token_example_call_tool.py deleted file mode 100644 index ccf8e9038..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_app_installation_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubAppInstallationToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'installation_id': 123456, 'request_body': '{"repository_ids":[1,2,3]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_blob_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_blob_example_call_tool.js deleted file mode 100644 index 1919193fa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_blob_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubBlob"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blob_content": "Hello, World!", - "repository_name": "sample-repo", - "repository_owner": "user123", - "content_encoding": "utf-8" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_blob_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_blob_example_call_tool.py deleted file mode 100644 index f926ca560..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_blob_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubBlob" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blob_content': 'Hello, World!', - 'repository_name': 'sample-repo', - 'repository_owner': 'user123', - 'content_encoding': 'utf-8' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_check_run_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_check_run_example_call_tool.js deleted file mode 100644 index cf7ca6b23..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_check_run_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubCheckRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "request_body": "{\"name\":\"example-check\",\"head_sha\":\"abc123\",\"status\":\"in_progress\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_check_run_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_check_run_example_call_tool.py deleted file mode 100644 index 79f45ef72..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_check_run_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubCheckRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'request_body': '{"name":"example-check","head_sha":"abc123","status":"in_progress"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_check_suite_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_check_suite_example_call_tool.js deleted file mode 100644 index 1cbf5e0d9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_check_suite_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubCheckSuite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "head_commit_sha": "abc123def456", - "repository_name": "sample-repo", - "repository_owner_account": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_check_suite_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_check_suite_example_call_tool.py deleted file mode 100644 index 8916f4c41..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_check_suite_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubCheckSuite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'head_commit_sha': 'abc123def456', - 'repository_name': 'sample-repo', - 'repository_owner_account': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_commit_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_commit_comment_example_call_tool.js deleted file mode 100644 index 5f42a3a29..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_commit_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubCommitComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_content": "Great work on this commit!", - "commit_sha": "abc123def456", - "repository_name": "my-repo", - "repository_owner": "my-username" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_commit_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_commit_comment_example_call_tool.py deleted file mode 100644 index e1eed7922..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_commit_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubCommitComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_content': 'Great work on this commit!', - 'commit_sha': 'abc123def456', - 'repository_name': 'my-repo', - 'repository_owner': 'my-username' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_commit_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_commit_status_example_call_tool.js deleted file mode 100644 index 91d5fe36d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_commit_status_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubCommitStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "commit_sha": "abc123def456", - "repository_name": "my-repo", - "repository_owner": "myusername", - "status_state": "success", - "commit_status_target_url": "https://ci.example.com/build/123", - "status_description": "Build completed successfully.", - "status_label": "CI" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_commit_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_commit_status_example_call_tool.py deleted file mode 100644 index 016633b35..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_commit_status_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubCommitStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'commit_sha': 'abc123def456', - 'repository_name': 'my-repo', - 'repository_owner': 'myusername', - 'status_state': 'success', - 'commit_status_target_url': 'https://ci.example.com/build/123', - 'status_description': 'Build completed successfully.', - 'status_label': 'CI' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_deploy_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_deploy_key_example_call_tool.js deleted file mode 100644 index 2ee65d268..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_deploy_key_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubDeployKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deploy_key_contents": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC3...", - "repository_name": "my-repo", - "repository_owner": "my-username", - "key_title": "My Deploy Key", - "read_only_access": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_deploy_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_deploy_key_example_call_tool.py deleted file mode 100644 index 6bdac1550..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_deploy_key_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubDeployKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deploy_key_contents': 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC3...', - 'repository_name': 'my-repo', - 'repository_owner': 'my-username', - 'key_title': 'My Deploy Key', - 'read_only_access': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_deployment_branch_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_deployment_branch_policy_example_call_tool.js deleted file mode 100644 index bcc51e203..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_deployment_branch_policy_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubDeploymentBranchPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name_pattern": "main", - "environment_name": "production", - "repository_name": "my-repo", - "repository_owner": "my-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_deployment_branch_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_deployment_branch_policy_example_call_tool.py deleted file mode 100644 index 3a0520fcb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_deployment_branch_policy_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubDeploymentBranchPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name_pattern': 'main', - 'environment_name': 'production', - 'repository_name': 'my-repo', - 'repository_owner': 'my-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_deployment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_deployment_example_call_tool.js deleted file mode 100644 index ad6c337fb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_deployment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubDeployment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "request_body": "{\"ref\":\"main\",\"environment\":\"production\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_deployment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_deployment_example_call_tool.py deleted file mode 100644 index df6481417..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_deployment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubDeployment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'request_body': '{"ref":"main","environment":"production"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_deployment_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_deployment_status_example_call_tool.js deleted file mode 100644 index 1550731ec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_deployment_status_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubDeploymentStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_id": 12345, - "deployment_status_state": "success", - "repository_name": "example-repo", - "repository_owner": "example-owner", - "add_inactive_status_to_previous_deployments": true, - "deployment_environment": "production", - "status_description": "Deployment completed successfully." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_deployment_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_deployment_status_example_call_tool.py deleted file mode 100644 index 3c048f1eb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_deployment_status_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubDeploymentStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_id': 12345, - 'deployment_status_state': 'success', - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'add_inactive_status_to_previous_deployments': True, - 'deployment_environment': 'production', - 'status_description': 'Deployment completed successfully.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_enterprise_registration_token_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_enterprise_registration_token_example_call_tool.js deleted file mode 100644 index adcdaf076..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_enterprise_registration_token_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubEnterpriseRegistrationToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_slug_or_id": "my-enterprise" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_enterprise_registration_token_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_enterprise_registration_token_example_call_tool.py deleted file mode 100644 index e039e7e43..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_enterprise_registration_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubEnterpriseRegistrationToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_slug_or_id': 'my-enterprise' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_env_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_env_variable_example_call_tool.js deleted file mode 100644 index 9034f3398..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_env_variable_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubEnvVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_name": "production", - "repository_identifier": 123456, - "variable_name": "API_KEY", - "variable_value": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_env_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_env_variable_example_call_tool.py deleted file mode 100644 index 3a9b8c8ec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_env_variable_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubEnvVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_name': 'production', - 'repository_identifier': 123456, - 'variable_name': 'API_KEY', - 'variable_value': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_fork_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_fork_example_call_tool.js deleted file mode 100644 index 4b1e7c9ab..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_fork_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubFork"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "user123", - "fork_default_branch_only": true, - "new_fork_name": "my-sample-fork" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_fork_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_fork_example_call_tool.py deleted file mode 100644 index c4a76c8fd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_fork_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubFork" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'user123', - 'fork_default_branch_only': True, - 'new_fork_name': 'my-sample-fork' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_issue_example_call_tool.js deleted file mode 100644 index 7ba24bad6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_issue_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "sample-repo", - "request_body": "{\"title\":\"Sample Issue\",\"body\":\"This is a sample issue description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_issue_example_call_tool.py deleted file mode 100644 index 0fabd7ea9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_issue_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubIssue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'sample-repo', - 'request_body': '{"title":"Sample Issue","body":"This is a sample issue description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_label_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_label_example_call_tool.js deleted file mode 100644 index f18e99f63..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_label_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubLabel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "label_name": "bug🐛", - "repository_name": "issue-tracker", - "repository_owner": "octocat", - "label_color_hex": "ff0000", - "label_description": "Indicates a bug in the code." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_label_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_label_example_call_tool.py deleted file mode 100644 index 49c1cc2fd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_label_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubLabel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'label_name': 'bug🐛', - 'repository_name': 'issue-tracker', - 'repository_owner': 'octocat', - 'label_color_hex': 'ff0000', - 'label_description': 'Indicates a bug in the code.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_milestone_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_milestone_example_call_tool.js deleted file mode 100644 index a056e71c0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_milestone_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubMilestone"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "milestone_title": "Version 1.0", - "repository_name": "project-repo", - "repository_owner": "user123", - "milestone_description": "Initial release milestone", - "milestone_due_date": "2023-12-31T23:59:59Z", - "milestone_state": "open" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_milestone_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_milestone_example_call_tool.py deleted file mode 100644 index 8712d0ba4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_milestone_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubMilestone" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'milestone_title': 'Version 1.0', - 'repository_name': 'project-repo', - 'repository_owner': 'user123', - 'milestone_description': 'Initial release milestone', - 'milestone_due_date': '2023-12-31T23:59:59Z', - 'milestone_state': 'open' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_org_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_org_variable_example_call_tool.js deleted file mode 100644 index 90982a69b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_org_variable_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubOrgVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_access_visibility": "all", - "variable_name": "MY_SECRET", - "variable_value": "supersecretvalue" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_org_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_org_variable_example_call_tool.py deleted file mode 100644 index 334f3e08f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_org_variable_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubOrgVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repository_access_visibility': 'all', - 'variable_name': 'MY_SECRET', - 'variable_value': 'supersecretvalue' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_org_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_org_webhook_example_call_tool.js deleted file mode 100644 index f12131026..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_org_webhook_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubOrgWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_name": "example-org", - "request_body": "{\"url\":\"https://example.com/webhook\",\"events\":[\"push\",\"pull_request\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_org_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_org_webhook_example_call_tool.py deleted file mode 100644 index 10708ed4d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_org_webhook_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubOrgWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_name': 'example-org', - 'request_body': '{"url":"https://example.com/webhook","events":["push","pull_request"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_organization_example_call_tool.js deleted file mode 100644 index c7ce56f24..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_organization_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "admin_user_login": "john_doe", - "organization_username": "exampleorg", - "organization_display_name": "Example Organization" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_organization_example_call_tool.py deleted file mode 100644 index 2aa097a81..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_organization_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'admin_user_login': 'john_doe', - 'organization_username': 'exampleorg', - 'organization_display_name': 'Example Organization' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_organization_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_organization_repo_example_call_tool.js deleted file mode 100644 index 0da3f3e8d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_organization_repo_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubOrganizationRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_name": "example-org", - "request_body": "{\"name\":\"new-repo\",\"private\":false}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_organization_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_organization_repo_example_call_tool.py deleted file mode 100644 index 4fb15ea5e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_organization_repo_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubOrganizationRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_name': 'example-org', - 'request_body': '{"name":"new-repo","private":false}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_pages_deployment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_pages_deployment_example_call_tool.js deleted file mode 100644 index 24f9431e5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_pages_deployment_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubPagesDeployment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "artifact_url": "https://github.com/user/repo/releases/download/v1.0.0/assets.zip", - "oidc_token_for_deployment": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", - "repository_name": "my-repo", - "repository_owner": "user", - "build_version_identifier": "v1.0.0", - "target_environment_for_deployment": "production" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_pages_deployment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_pages_deployment_example_call_tool.py deleted file mode 100644 index 2deca7d53..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_pages_deployment_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubPagesDeployment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'artifact_url': 'https://github.com/user/repo/releases/download/v1.0.0/assets.zip', - 'oidc_token_for_deployment': 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...', - 'repository_name': 'my-repo', - 'repository_owner': 'user', - 'build_version_identifier': 'v1.0.0', - 'target_environment_for_deployment': 'production' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_project_board_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_project_board_example_call_tool.js deleted file mode 100644 index a4d048892..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_project_board_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubProjectBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_name": "New Features", - "repository_name": "my-repo", - "repository_owner": "user123", - "project_description": "A board for tracking new features development." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_project_board_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_project_board_example_call_tool.py deleted file mode 100644 index 3380916ef..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_project_board_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubProjectBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_name': 'New Features', - 'repository_name': 'my-repo', - 'repository_owner': 'user123', - 'project_description': 'A board for tracking new features development.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_project_card_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_project_card_example_call_tool.js deleted file mode 100644 index e18de1708..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_project_card_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubProjectCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "column_identifier": 123456, - "request_body": "{\"note\":\"New task to complete\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_project_card_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_project_card_example_call_tool.py deleted file mode 100644 index bfc388961..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_project_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubProjectCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'column_identifier': 123456, 'request_body': '{"note":"New task to complete"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_pull_request_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_pull_request_example_call_tool.js deleted file mode 100644 index ed77448fa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_pull_request_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubPullRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "source_branch": "feature-branch", - "target_branch": "main", - "is_draft": true, - "pull_request_title": "Add new feature" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_pull_request_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_pull_request_example_call_tool.py deleted file mode 100644 index 8fb5ccff7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_pull_request_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubPullRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'source_branch': 'feature-branch', - 'target_branch': 'main', - 'is_draft': True, - 'pull_request_title': 'Add new feature' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_pull_request_review_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_pull_request_review_example_call_tool.js deleted file mode 100644 index 23e11a054..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_pull_request_review_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubPullRequestReview"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "octocat", - "repository_name": "Hello-World", - "pull_request_number": 42, - "request_body": "{\"event\":\"APPROVE\",\"body\":\"Looks good to me!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_pull_request_review_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_pull_request_review_example_call_tool.py deleted file mode 100644 index 32307bb1e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_pull_request_review_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubPullRequestReview" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'octocat', - 'repository_name': 'Hello-World', - 'pull_request_number': 42, - 'request_body': '{"event":"APPROVE","body":"Looks good to me!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_release_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_release_example_call_tool.js deleted file mode 100644 index a4f7e60d9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_release_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubRelease"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "my-repo", - "repository_owner": "my-username", - "tag_name_for_release": "v1.0.0", - "release_name": "Initial Release", - "release_body_text": "This is the first release of the project." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_release_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_release_example_call_tool.py deleted file mode 100644 index 29994373b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_release_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubRelease" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'my-repo', - 'repository_owner': 'my-username', - 'tag_name_for_release': 'v1.0.0', - 'release_name': 'Initial Release', - 'release_body_text': 'This is the first release of the project.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_repo_for_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_repo_for_user_example_call_tool.js deleted file mode 100644 index f6b112552..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_repo_for_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubRepoForUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"my-repo\",\"private\":false}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_repo_for_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_repo_for_user_example_call_tool.py deleted file mode 100644 index f640b485e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_repo_for_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubRepoForUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"name":"my-repo","private":false}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_repo_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_repo_variable_example_call_tool.js deleted file mode 100644 index e3f129cb6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_repo_variable_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubRepoVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "my-repo", - "repository_owner": "my-username", - "variable_name": "API_KEY", - "variable_value": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_repo_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_repo_variable_example_call_tool.py deleted file mode 100644 index b7c995ba2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_repo_variable_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubRepoVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'my-repo', - 'repository_owner': 'my-username', - 'variable_name': 'API_KEY', - 'variable_value': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_repo_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_repo_webhook_example_call_tool.js deleted file mode 100644 index 52a7d376e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_repo_webhook_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubRepoWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "request_body": "{\"url\":\"https://example.com/webhook\",\"events\":[\"push\",\"pull_request\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_repo_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_repo_webhook_example_call_tool.py deleted file mode 100644 index c158fa8ac..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_repo_webhook_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubRepoWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'request_body': '{"url":"https://example.com/webhook","events":["push","pull_request"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_required_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_required_workflow_example_call_tool.js deleted file mode 100644 index 34d8dc54e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_required_workflow_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubRequiredWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_identifier": "123456", - "workflow_file_path": ".github/workflows/ci.yml", - "workflow_scope": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_required_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_required_workflow_example_call_tool.py deleted file mode 100644 index 5825f37fb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_required_workflow_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubRequiredWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repository_identifier': '123456', - 'workflow_file_path': '.github/workflows/ci.yml', - 'workflow_scope': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_scoped_token_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_scoped_token_example_call_tool.js deleted file mode 100644 index 423ef487e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_scoped_token_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubScopedToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "github_client_id": "abc123", - "request_body": "{\"name\":\"my-repo\",\"private\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_scoped_token_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_scoped_token_example_call_tool.py deleted file mode 100644 index 8fc828a3c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_scoped_token_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubScopedToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'github_client_id': 'abc123', - 'request_body': '{"name":"my-repo","private":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_team_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_team_example_call_tool.js deleted file mode 100644 index 5f21a43d1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_team_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "team_name": "dev-team", - "team_description": "Team responsible for development tasks.", - "repository_names_to_add_to_team": [ - "example-org/repo1", - "example-org/repo2" - ], - "team_privacy_level": "closed" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_team_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_team_example_call_tool.py deleted file mode 100644 index e33ae5497..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_team_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'team_name': 'dev-team', - 'team_description': 'Team responsible for development tasks.', - 'repository_names_to_add_to_team': ['example-org/repo1', 'example-org/repo2'], - 'team_privacy_level': 'closed' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_user_project_board_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_github_user_project_board_example_call_tool.js deleted file mode 100644 index f2c034f6e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_user_project_board_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGithubUserProjectBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_name": "My Project Board", - "project_body": "This board tracks the progress of my project." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_github_user_project_board_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_github_user_project_board_example_call_tool.py deleted file mode 100644 index 4254e93f4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_github_user_project_board_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGithubUserProjectBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_name': 'My Project Board', - 'project_body': 'This board tracks the progress of my project.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_global_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_global_webhook_example_call_tool.js deleted file mode 100644 index 631be9516..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_global_webhook_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateGlobalWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payload_delivery_url": "https://example.com/webhook", - "webhook_type": "web", - "hmac_key_for_signature": "my_secret_key", - "payload_content_type": "json", - "send_notifications": true, - "ssl_verification": "0", - "trigger_events": [ - "push", - "pull_request" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_global_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_global_webhook_example_call_tool.py deleted file mode 100644 index 45450ad92..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_global_webhook_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateGlobalWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payload_delivery_url': 'https://example.com/webhook', - 'webhook_type': 'web', - 'hmac_key_for_signature': 'my_secret_key', - 'payload_content_type': 'json', - 'send_notifications': True, - 'ssl_verification': '0', - 'trigger_events': ['push', 'pull_request'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_impersonation_oauth_token_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_impersonation_oauth_token_example_call_tool.js deleted file mode 100644 index 6273b35c3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_impersonation_oauth_token_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateImpersonationOauthToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe", - "oauth_scopes_list": [ - "repo", - "admin:org" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_impersonation_oauth_token_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_impersonation_oauth_token_example_call_tool.py deleted file mode 100644 index b0f2f7fff..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_impersonation_oauth_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateImpersonationOauthToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe', 'oauth_scopes_list': ['repo', 'admin:org'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_or_update_github_repo_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_or_update_github_repo_secret_example_call_tool.js deleted file mode 100644 index cdce81b85..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_or_update_github_repo_secret_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateOrUpdateGithubRepoSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "my-repo", - "repository_owner": "my-user", - "secret_name": "MY_SECRET", - "encrypted_secret_value": "[encrypted_value]" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_or_update_github_repo_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_or_update_github_repo_secret_example_call_tool.py deleted file mode 100644 index 5613fa0a9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_or_update_github_repo_secret_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateOrUpdateGithubRepoSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'my-repo', - 'repository_owner': 'my-user', - 'secret_name': 'MY_SECRET', - 'encrypted_secret_value': '[encrypted_value]' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_or_update_org_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_or_update_org_secret_example_call_tool.js deleted file mode 100644 index 62c25a03b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_or_update_org_secret_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateOrUpdateOrgSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_visibility": "selected", - "secret_name": "MY_SECRET", - "encrypted_secret_value": "[encrypted_value]", - "encryption_key_id": "key_12345", - "repository_ids_for_secret_access": [ - 123, - 456 - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_or_update_org_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_or_update_org_secret_example_call_tool.py deleted file mode 100644 index ed02e7f7a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_or_update_org_secret_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateOrUpdateOrgSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repository_visibility': 'selected', - 'secret_name': 'MY_SECRET', - 'encrypted_secret_value': '[encrypted_value]', - 'encryption_key_id': 'key_12345', - 'repository_ids_for_secret_access': [123, 456] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_org_project_github_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_org_project_github_example_call_tool.js deleted file mode 100644 index 51dcc7720..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_org_project_github_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateOrgProjectGithub"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "project_name": "New Project Board", - "project_description": "This board tracks the progress of our new features." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_org_project_github_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_org_project_github_example_call_tool.py deleted file mode 100644 index eab89af96..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_org_project_github_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateOrgProjectGithub" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'project_name': 'New Project Board', - 'project_description': 'This board tracks the progress of our new features.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_org_runner_registration_token_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_org_runner_registration_token_example_call_tool.js deleted file mode 100644 index 4efedec5e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_org_runner_registration_token_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateOrgRunnerRegistrationToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_org_runner_registration_token_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_org_runner_registration_token_example_call_tool.py deleted file mode 100644 index 02a0b4334..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_org_runner_registration_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateOrgRunnerRegistrationToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_pre_receive_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_pre_receive_environment_example_call_tool.js deleted file mode 100644 index 000d780c7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_pre_receive_environment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreatePreReceiveEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pre_receive_environment_name": "my-pre-receive-env", - "tarball_download_url": "https://example.com/path/to/tarball.tar.gz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_pre_receive_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_pre_receive_environment_example_call_tool.py deleted file mode 100644 index 1ed010168..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_pre_receive_environment_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreatePreReceiveEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pre_receive_environment_name': 'my-pre-receive-env', - 'tarball_download_url': 'https://example.com/path/to/tarball.tar.gz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_pre_receive_hook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_pre_receive_hook_example_call_tool.js deleted file mode 100644 index 7e165e4e6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_pre_receive_hook_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreatePreReceiveHook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"hook_name\":\"pre-receive-check\",\"enabled\":true,\"url\":\"https://example.com/hook\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_pre_receive_hook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_pre_receive_hook_example_call_tool.py deleted file mode 100644 index cea2992fb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_pre_receive_hook_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreatePreReceiveHook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"hook_name":"pre-receive-check","enabled":true,"url":"https://example.com/hook"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_project_column_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_project_column_example_call_tool.js deleted file mode 100644 index 3186a6d3b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_project_column_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateProjectColumn"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "column_name": "To Do", - "project_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_project_column_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_project_column_example_call_tool.py deleted file mode 100644 index a81b25c8e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_project_column_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateProjectColumn" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'column_name': 'To Do', 'project_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_pull_request_review_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_pull_request_review_comment_example_call_tool.js deleted file mode 100644 index 64d9b3f96..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_pull_request_review_comment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreatePullRequestReviewComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "octocat", - "repository_name": "Hello-World", - "pull_request_number": 42, - "request_body": "{\"body\":\"Great work on this!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_pull_request_review_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_pull_request_review_comment_example_call_tool.py deleted file mode 100644 index f0b4e9b90..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_pull_request_review_comment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreatePullRequestReviewComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'octocat', - 'repository_name': 'Hello-World', - 'pull_request_number': 42, - 'request_body': '{"body":"Great work on this!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_reply_to_review_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_reply_to_review_comment_example_call_tool.js deleted file mode 100644 index c41d45f1b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_reply_to_review_comment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateReplyToReviewComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "review_comment_text": "Thanks for the feedback! I'll make those changes.", - "review_comment_unique_id": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_reply_to_review_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_reply_to_review_comment_example_call_tool.py deleted file mode 100644 index eb556737f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_reply_to_review_comment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateReplyToReviewComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 123, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'review_comment_text': "Thanks for the feedback! I'll make those changes.", - 'review_comment_unique_id': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_repo_dependency_snapshot_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_repo_dependency_snapshot_example_call_tool.js deleted file mode 100644 index 5dc6aeb97..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_repo_dependency_snapshot_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateRepoDependencySnapshot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "request_body": "{\"dependencies\": [{\"name\": \"example-lib\",\"version\": \"1.0.0\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_repo_dependency_snapshot_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_repo_dependency_snapshot_example_call_tool.py deleted file mode 100644 index cba1a2e0b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_repo_dependency_snapshot_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateRepoDependencySnapshot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'request_body': '{"dependencies": [{"name": "example-lib","version": "1.0.0"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_repo_from_template_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_repo_from_template_example_call_tool.js deleted file mode 100644 index 61fb7ce12..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_repo_from_template_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateRepoFromTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "new_repository_name": "my-new-repo", - "template_repository_name": "template-repo", - "template_repository_owner": "template-owner", - "create_private_repository": true, - "repository_description": "This is a new repository created from a template." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_repo_from_template_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_repo_from_template_example_call_tool.py deleted file mode 100644 index 7081a19ff..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_repo_from_template_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateRepoFromTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'new_repository_name': 'my-new-repo', - 'template_repository_name': 'template-repo', - 'template_repository_owner': 'template-owner', - 'create_private_repository': True, - 'repository_description': 'This is a new repository created from a template.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_repo_registration_token_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_repo_registration_token_example_call_tool.js deleted file mode 100644 index 023540416..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_repo_registration_token_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateRepoRegistrationToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_repo_registration_token_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_repo_registration_token_example_call_tool.py deleted file mode 100644 index 1598ab470..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_repo_registration_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateRepoRegistrationToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_repository_autolink_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_repository_autolink_example_call_tool.js deleted file mode 100644 index 020b5f6a0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_repository_autolink_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateRepositoryAutolink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "autolink_key_prefix": "ISSUE-", - "repository_name": "example-repo", - "repository_owner_account": "example-owner", - "url_template_for_autolink": "https://example.com/issues/", - "match_alphanumeric_characters": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_repository_autolink_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_repository_autolink_example_call_tool.py deleted file mode 100644 index e2cc4b6cb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_repository_autolink_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateRepositoryAutolink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'autolink_key_prefix': 'ISSUE-', - 'repository_name': 'example-repo', - 'repository_owner_account': 'example-owner', - 'url_template_for_autolink': 'https://example.com/issues/', - 'match_alphanumeric_characters': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_repository_tag_protection_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_repository_tag_protection_example_call_tool.js deleted file mode 100644 index d41985b76..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_repository_tag_protection_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateRepositoryTagProtection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "tag_protection_pattern": "v1.*" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_repository_tag_protection_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_repository_tag_protection_example_call_tool.py deleted file mode 100644 index a4f17e88e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_repository_tag_protection_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateRepositoryTagProtection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'tag_protection_pattern': 'v1.*' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_runner_group_for_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_runner_group_for_org_example_call_tool.js deleted file mode 100644 index c38324428..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_runner_group_for_org_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateRunnerGroupForOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "runner_group_name": "CI-Runners", - "accessible_repository_ids": [ - 123, - 456 - ], - "allow_public_repositories": true, - "runner_group_visibility": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_runner_group_for_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_runner_group_for_org_example_call_tool.py deleted file mode 100644 index f373effea..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_runner_group_for_org_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateRunnerGroupForOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'runner_group_name': 'CI-Runners', - 'accessible_repository_ids': [123, 456], - 'allow_public_repositories': True, - 'runner_group_visibility': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_self_hosted_runner_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_self_hosted_runner_group_example_call_tool.js deleted file mode 100644 index ce3cf3d8a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_self_hosted_runner_group_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateSelfHostedRunnerGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_name_or_id": "my-enterprise", - "runner_group_name": "my-runner-group", - "allow_public_repository_use": true, - "organization_ids_for_access": [ - 123, - 456 - ], - "restrict_to_selected_workflows": false, - "runner_group_visibility": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_self_hosted_runner_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_self_hosted_runner_group_example_call_tool.py deleted file mode 100644 index 6a241e558..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_self_hosted_runner_group_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateSelfHostedRunnerGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_name_or_id': 'my-enterprise', - 'runner_group_name': 'my-runner-group', - 'allow_public_repository_use': True, - 'organization_ids_for_access': [123, 456], - 'restrict_to_selected_workflows': False, - 'runner_group_visibility': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_ssh_signing_key_github_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_ssh_signing_key_github_example_call_tool.js deleted file mode 100644 index a3221c11b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_ssh_signing_key_github_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateSshSigningKeyGithub"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "public_ssh_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC3... user@example.com", - "ssh_key_title": "My SSH Key" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_ssh_signing_key_github_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_ssh_signing_key_github_example_call_tool.py deleted file mode 100644 index 0e6e82ad2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_ssh_signing_key_github_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateSshSigningKeyGithub" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'public_ssh_key': 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC3... user@example.com', - 'ssh_key_title': 'My SSH Key' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_team_discussion_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_team_discussion_comment_example_call_tool.js deleted file mode 100644 index 209eed06a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_team_discussion_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateTeamDiscussionComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_body_text": "Great insights on the project!", - "discussion_number": 42, - "organization_name": "example-org", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_team_discussion_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_team_discussion_comment_example_call_tool.py deleted file mode 100644 index 7d23d1c2a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_team_discussion_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateTeamDiscussionComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_body_text': 'Great insights on the project!', - 'discussion_number': 42, - 'organization_name': 'example-org', - 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/create_team_discussion_github_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/create_team_discussion_github_example_call_tool.js deleted file mode 100644 index 532ed0438..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_team_discussion_github_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.CreateTeamDiscussionGithub"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "discussion_body_text": "This is a sample discussion about our project roadmap.", - "discussion_post_title": "Project Roadmap Discussion", - "organization_name": "ExampleOrg", - "team_slug": "dev-team", - "create_private_post": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/create_team_discussion_github_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/create_team_discussion_github_example_call_tool.py deleted file mode 100644 index 677e7de5c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/create_team_discussion_github_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.CreateTeamDiscussionGithub" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'discussion_body_text': 'This is a sample discussion about our project roadmap.', - 'discussion_post_title': 'Project Roadmap Discussion', - 'organization_name': 'ExampleOrg', - 'team_slug': 'dev-team', - 'create_private_post': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/decline_repo_invitation_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/decline_repo_invitation_example_call_tool.js deleted file mode 100644 index 5144e64aa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/decline_repo_invitation_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeclineRepoInvitation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invitation_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/decline_repo_invitation_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/decline_repo_invitation_example_call_tool.py deleted file mode 100644 index 3ad4cc844..000000000 --- a/public/examples/integrations/mcp-servers/github_api/decline_repo_invitation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeclineRepoInvitation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invitation_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_admin_branch_protection_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_admin_branch_protection_example_call_tool.js deleted file mode 100644 index dfe59cec6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_admin_branch_protection_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteAdminBranchProtection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_admin_branch_protection_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_admin_branch_protection_example_call_tool.py deleted file mode 100644 index 2eea1d8f2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_admin_branch_protection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteAdminBranchProtection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_branch_protection_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_branch_protection_example_call_tool.js deleted file mode 100644 index 7d5bec0f8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_branch_protection_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteBranchProtection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_branch_protection_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_branch_protection_example_call_tool.py deleted file mode 100644 index 7206cd87a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_branch_protection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteBranchProtection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_code_scanning_analysis_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_code_scanning_analysis_example_call_tool.js deleted file mode 100644 index f561b0553..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_code_scanning_analysis_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteCodeScanningAnalysis"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "analysis_id": 12345, - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "allow_final_analysis_deletion": "true" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_code_scanning_analysis_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_code_scanning_analysis_example_call_tool.py deleted file mode 100644 index 0e2ce5dc5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_code_scanning_analysis_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteCodeScanningAnalysis" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'analysis_id': 12345, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'allow_final_analysis_deletion': 'true' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_commit_comment_reaction_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_commit_comment_reaction_example_call_tool.js deleted file mode 100644 index 86fb5633c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_commit_comment_reaction_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteCommitCommentReaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_unique_identifier": 12345, - "reaction_unique_identifier": 67890, - "repository_name": "SampleRepo", - "repository_owner": "SampleOwner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_commit_comment_reaction_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_commit_comment_reaction_example_call_tool.py deleted file mode 100644 index c57348cee..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_commit_comment_reaction_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteCommitCommentReaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_unique_identifier': 12345, - 'reaction_unique_identifier': 67890, - 'repository_name': 'SampleRepo', - 'repository_owner': 'SampleOwner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_custom_runner_label_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_custom_runner_label_example_call_tool.js deleted file mode 100644 index a69a4575a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_custom_runner_label_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteCustomRunnerLabel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_label_name": "build", - "organization_name": "exampleOrg", - "runner_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_custom_runner_label_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_custom_runner_label_example_call_tool.py deleted file mode 100644 index c2df81663..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_custom_runner_label_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteCustomRunnerLabel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_label_name': 'build', 'organization_name': 'exampleOrg', 'runner_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_deployment_branch_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_deployment_branch_policy_example_call_tool.js deleted file mode 100644 index e4a420070..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_deployment_branch_policy_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteDeploymentBranchPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_policy_identifier": 12345, - "environment_name": "production", - "repository_name": "my-repo", - "repository_owner": "my-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_deployment_branch_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_deployment_branch_policy_example_call_tool.py deleted file mode 100644 index 4d8bd536a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_deployment_branch_policy_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteDeploymentBranchPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_policy_identifier': 12345, - 'environment_name': 'production', - 'repository_name': 'my-repo', - 'repository_owner': 'my-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_gist_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_gist_comment_example_call_tool.js deleted file mode 100644 index 6d719f0e5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_gist_comment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGistComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_identifier": 12345, - "gist_identifier": "abcde12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_gist_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_gist_comment_example_call_tool.py deleted file mode 100644 index cdee8fb70..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_gist_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGistComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_identifier': 12345, 'gist_identifier': 'abcde12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_git_reference_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_git_reference_example_call_tool.js deleted file mode 100644 index 3132d9bcc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_git_reference_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGitReference"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "git_reference_to_delete": "feature-branch", - "repository_name": "my-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_git_reference_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_git_reference_example_call_tool.py deleted file mode 100644 index 86e478554..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_git_reference_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGitReference" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'git_reference_to_delete': 'feature-branch', - 'repository_name': 'my-repo', - 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_actions_cache_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_actions_cache_example_call_tool.js deleted file mode 100644 index e80bb5ca6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_actions_cache_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubActionsCache"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_actions_cache_id": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_actions_cache_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_actions_cache_example_call_tool.py deleted file mode 100644 index 26235de39..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_actions_cache_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubActionsCache" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_actions_cache_id': 12345, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_artifact_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_artifact_example_call_tool.js deleted file mode 100644 index 6900b43fc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_artifact_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubArtifact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "artifact_unique_identifier": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_artifact_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_artifact_example_call_tool.py deleted file mode 100644 index 98a60b70f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_artifact_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubArtifact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'artifact_unique_identifier': 12345, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_commit_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_commit_comment_example_call_tool.js deleted file mode 100644 index 7ba2580e5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_commit_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubCommitComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": 12345, - "repository_name": "sample-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_commit_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_commit_comment_example_call_tool.py deleted file mode 100644 index 5d2d64fab..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_commit_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubCommitComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': 12345, 'repository_name': 'sample-repo', 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_deploy_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_deploy_key_example_call_tool.js deleted file mode 100644 index de2ce3756..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_deploy_key_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubDeployKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deploy_key_id": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_deploy_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_deploy_key_example_call_tool.py deleted file mode 100644 index d92862110..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_deploy_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubDeployKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deploy_key_id': 12345, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_deployment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_deployment_example_call_tool.js deleted file mode 100644 index 5a37a4829..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_deployment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubDeployment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_id": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_deployment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_deployment_example_call_tool.py deleted file mode 100644 index 3397111d3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_deployment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubDeployment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_id': 12345, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_enterprise_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_enterprise_user_example_call_tool.js deleted file mode 100644 index c9eede812..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_enterprise_user_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubEnterpriseUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_enterprise_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_enterprise_user_example_call_tool.py deleted file mode 100644 index ae25f1681..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_enterprise_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubEnterpriseUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_env_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_env_variable_example_call_tool.js deleted file mode 100644 index d5ce08bbd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_env_variable_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubEnvVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_name": "production", - "repository_id": 123456, - "variable_name": "API_KEY" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_env_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_env_variable_example_call_tool.py deleted file mode 100644 index f0fdb5004..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_env_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubEnvVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_name': 'production', 'repository_id': 123456, 'variable_name': 'API_KEY' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_environment_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_environment_secret_example_call_tool.js deleted file mode 100644 index e48327d39..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_environment_secret_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubEnvironmentSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_name": "production", - "repository_id": 123456, - "secret_name_to_delete": "API_KEY" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_environment_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_environment_secret_example_call_tool.py deleted file mode 100644 index 6cd62d2e2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_environment_secret_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubEnvironmentSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_name': 'production', 'repository_id': 123456, 'secret_name_to_delete': 'API_KEY' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_file_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_file_example_call_tool.js deleted file mode 100644 index fdc875b61..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_file_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "commit_message": "Remove obsolete configuration file", - "file_path": "config/old_config.yml", - "file_sha_to_delete": "abc123def456ghi789jkl", - "repository_name": "my-repo", - "repository_owner": "my-username", - "author_email": "author@example.com", - "author_name": "John Doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_file_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_file_example_call_tool.py deleted file mode 100644 index 2c5d97f7b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_file_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubFile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'commit_message': 'Remove obsolete configuration file', - 'file_path': 'config/old_config.yml', - 'file_sha_to_delete': 'abc123def456ghi789jkl', - 'repository_name': 'my-repo', - 'repository_owner': 'my-username', - 'author_email': 'author@example.com', - 'author_name': 'John Doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_gist_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_gist_example_call_tool.js deleted file mode 100644 index 1bf21566a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_gist_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubGist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gist_identifier": "abc123def456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_gist_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_gist_example_call_tool.py deleted file mode 100644 index ff8c01020..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_gist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubGist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gist_identifier': 'abc123def456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_issue_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_issue_comment_example_call_tool.js deleted file mode 100644 index cfcee9eb5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_issue_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubIssueComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_comment_id": 12345, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_issue_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_issue_comment_example_call_tool.py deleted file mode 100644 index 469ed0af8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_issue_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubIssueComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_comment_id': 12345, 'repository_name': 'sample-repo', 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_issue_comment_reaction_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_issue_comment_reaction_example_call_tool.js deleted file mode 100644 index a50a40786..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_issue_comment_reaction_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubIssueCommentReaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_comment_id": 12345, - "reaction_identifier": 67890, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_issue_comment_reaction_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_issue_comment_reaction_example_call_tool.py deleted file mode 100644 index 4386daea4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_issue_comment_reaction_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubIssueCommentReaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_comment_id': 12345, - 'reaction_identifier': 67890, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_issue_reaction_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_issue_reaction_example_call_tool.js deleted file mode 100644 index 3c8b28006..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_issue_reaction_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubIssueReaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_number": 42, - "reaction_identifier": 1, - "repository_name": "sample-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_issue_reaction_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_issue_reaction_example_call_tool.py deleted file mode 100644 index 635654024..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_issue_reaction_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubIssueReaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_number': 42, - 'reaction_identifier': 1, - 'repository_name': 'sample-repo', - 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_label_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_label_example_call_tool.js deleted file mode 100644 index 8c156490e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_label_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubLabel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "label_name": "bug", - "repository_name": "my-repo", - "repository_owner": "my-username" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_label_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_label_example_call_tool.py deleted file mode 100644 index 12668ea1e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_label_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubLabel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'label_name': 'bug', 'repository_name': 'my-repo', 'repository_owner': 'my-username' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_milestone_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_milestone_example_call_tool.js deleted file mode 100644 index a95cd3bfd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_milestone_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubMilestone"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "milestone_identifier": 1, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_milestone_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_milestone_example_call_tool.py deleted file mode 100644 index b78532996..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_milestone_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubMilestone" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'milestone_identifier': 1, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_org_migration_archive_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_org_migration_archive_example_call_tool.js deleted file mode 100644 index 83b104af1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_org_migration_archive_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubOrgMigrationArchive"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "migration_identifier": 12345, - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_org_migration_archive_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_org_migration_archive_example_call_tool.py deleted file mode 100644 index 755299314..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_org_migration_archive_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubOrgMigrationArchive" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'migration_identifier': 12345, 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_org_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_org_secret_example_call_tool.js deleted file mode 100644 index 293972e1b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_org_secret_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubOrgSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "secret_name": "my-secret" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_org_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_org_secret_example_call_tool.py deleted file mode 100644 index bb159698c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_org_secret_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubOrgSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'secret_name': 'my-secret' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_org_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_org_variable_example_call_tool.js deleted file mode 100644 index 48b82903a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_org_variable_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubOrgVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "variable_name": "example-variable" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_org_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_org_variable_example_call_tool.py deleted file mode 100644 index c5267e289..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_org_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubOrgVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'variable_name': 'example-variable' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_pages_site_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_pages_site_example_call_tool.js deleted file mode 100644 index 3f0c73dc7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_pages_site_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubPagesSite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_pages_site_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_pages_site_example_call_tool.py deleted file mode 100644 index c6bd4eddf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_pages_site_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubPagesSite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_personal_access_token_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_personal_access_token_example_call_tool.js deleted file mode 100644 index abff10019..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_personal_access_token_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubPersonalAccessToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_token_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_personal_access_token_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_personal_access_token_example_call_tool.py deleted file mode 100644 index 48792dab4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_personal_access_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubPersonalAccessToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_token_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_project_column_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_project_column_example_call_tool.js deleted file mode 100644 index 43a02d716..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_project_column_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubProjectColumn"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_column_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_project_column_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_project_column_example_call_tool.py deleted file mode 100644 index ed0646a8e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_project_column_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubProjectColumn" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_column_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_public_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_public_key_example_call_tool.js deleted file mode 100644 index a4f29e4fe..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_public_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubPublicKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "public_key_identifier": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_public_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_public_key_example_call_tool.py deleted file mode 100644 index 47ac94a8f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_public_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubPublicKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'public_key_identifier': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_pull_request_pending_review_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_pull_request_pending_review_example_call_tool.js deleted file mode 100644 index e40da0a69..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_pull_request_pending_review_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubPullRequestPendingReview"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 123, - "repository_name": "sample-repo", - "repository_owner_name": "user123", - "unique_review_identifier": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_pull_request_pending_review_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_pull_request_pending_review_example_call_tool.py deleted file mode 100644 index 787d9432f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_pull_request_pending_review_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubPullRequestPendingReview" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 123, - 'repository_name': 'sample-repo', - 'repository_owner_name': 'user123', - 'unique_review_identifier': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_release_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_release_example_call_tool.js deleted file mode 100644 index 0e506a76f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_release_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubRelease"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_identifier": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_release_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_release_example_call_tool.py deleted file mode 100644 index aae479430..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_release_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubRelease" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_identifier': 123, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_repo_autolink_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_repo_autolink_example_call_tool.js deleted file mode 100644 index 92f719e1d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_repo_autolink_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubRepoAutolink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "autolink_identifier": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_repo_autolink_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_repo_autolink_example_call_tool.py deleted file mode 100644 index 0efc20428..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_repo_autolink_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubRepoAutolink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'autolink_identifier': 12345, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_repo_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_repo_secret_example_call_tool.js deleted file mode 100644 index 02058ad12..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_repo_secret_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubRepoSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user", - "secret_name": "my-secret" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_repo_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_repo_secret_example_call_tool.py deleted file mode 100644 index c00bb87a1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_repo_secret_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubRepoSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-user', 'secret_name': 'my-secret' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_repo_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_repo_variable_example_call_tool.js deleted file mode 100644 index e7e123b3e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_repo_variable_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubRepoVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "variable_name": "API_KEY" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_repo_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_repo_variable_example_call_tool.py deleted file mode 100644 index 47c2e8ce2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_repo_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubRepoVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'variable_name': 'API_KEY' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_repository_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_repository_example_call_tool.js deleted file mode 100644 index e7e354f62..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_repository_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubRepository"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner_name": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_repository_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_repository_example_call_tool.py deleted file mode 100644 index cb5bc1c8e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_repository_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubRepository" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', 'repository_owner_name': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_required_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_required_workflow_example_call_tool.js deleted file mode 100644 index a544a8de2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_required_workflow_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubRequiredWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "workflow_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_required_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_required_workflow_example_call_tool.py deleted file mode 100644 index 4730eb67f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_required_workflow_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubRequiredWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'workflow_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_review_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_review_comment_example_call_tool.js deleted file mode 100644 index 18598d501..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_review_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubReviewComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_review_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_review_comment_example_call_tool.py deleted file mode 100644 index d150368f6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_review_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubReviewComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': 12345, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_ssh_signing_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_ssh_signing_key_example_call_tool.js deleted file mode 100644 index bc3222ff6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_ssh_signing_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubSshSigningKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ssh_signing_key_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_ssh_signing_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_ssh_signing_key_example_call_tool.py deleted file mode 100644 index 752b7ad25..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_ssh_signing_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubSshSigningKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ssh_signing_key_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_team_discussion_reaction_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_team_discussion_reaction_example_call_tool.js deleted file mode 100644 index 11aa63c9e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_team_discussion_reaction_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubTeamDiscussionReaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "discussion_number": 42, - "organization_name": "example-org", - "reaction_unique_identifier": 123456, - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_team_discussion_reaction_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_team_discussion_reaction_example_call_tool.py deleted file mode 100644 index 3a45578bd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_team_discussion_reaction_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubTeamDiscussionReaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'discussion_number': 42, - 'organization_name': 'example-org', - 'reaction_unique_identifier': 123456, - 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_workflow_run_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_workflow_run_example_call_tool.js deleted file mode 100644 index 84e4af4d8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_workflow_run_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubWorkflowRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "workflow_run_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_workflow_run_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_workflow_run_example_call_tool.py deleted file mode 100644 index 27b3b2b60..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_workflow_run_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubWorkflowRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'workflow_run_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_workflow_run_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_github_workflow_run_logs_example_call_tool.js deleted file mode 100644 index 40ba1a154..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_workflow_run_logs_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGithubWorkflowRunLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner_name": "example-owner", - "workflow_run_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_github_workflow_run_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_github_workflow_run_logs_example_call_tool.py deleted file mode 100644 index d9f62fb7a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_github_workflow_run_logs_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGithubWorkflowRunLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner_name': 'example-owner', - 'workflow_run_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_global_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_global_webhook_example_call_tool.js deleted file mode 100644 index fff3b8e71..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_global_webhook_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteGlobalWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_global_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_global_webhook_example_call_tool.py deleted file mode 100644 index 47bdb7d5d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_global_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteGlobalWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_impersonation_oauth_token_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_impersonation_oauth_token_example_call_tool.js deleted file mode 100644 index cc547b075..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_impersonation_oauth_token_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteImpersonationOauthToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_impersonation_oauth_token_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_impersonation_oauth_token_example_call_tool.py deleted file mode 100644 index c496095cd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_impersonation_oauth_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteImpersonationOauthToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_org_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_org_webhook_example_call_tool.js deleted file mode 100644 index 75ddd0a4d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_org_webhook_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteOrgWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "webhook_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_org_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_org_webhook_example_call_tool.py deleted file mode 100644 index e666fa990..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_org_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteOrgWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'webhook_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_pre_receive_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_pre_receive_environment_example_call_tool.js deleted file mode 100644 index b4af6a91f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_pre_receive_environment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeletePreReceiveEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pre_receive_environment_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_pre_receive_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_pre_receive_environment_example_call_tool.py deleted file mode 100644 index 58ae6a487..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_pre_receive_environment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeletePreReceiveEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pre_receive_environment_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_pre_receive_hook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_pre_receive_hook_example_call_tool.js deleted file mode 100644 index 486d6a6c1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_pre_receive_hook_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeletePreReceiveHook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pre_receive_hook_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_pre_receive_hook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_pre_receive_hook_example_call_tool.py deleted file mode 100644 index 1ce67e750..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_pre_receive_hook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeletePreReceiveHook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pre_receive_hook_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_project_board_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_project_board_example_call_tool.js deleted file mode 100644 index a6423e269..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_project_board_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteProjectBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_project_board_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_project_board_example_call_tool.py deleted file mode 100644 index a6e13f0e9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_project_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteProjectBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_project_card_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_project_card_example_call_tool.js deleted file mode 100644 index f7ea8bdc3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_project_card_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteProjectCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_project_card_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_project_card_example_call_tool.py deleted file mode 100644 index fb4f09ca5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_project_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteProjectCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_pull_request_comment_reaction_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_pull_request_comment_reaction_example_call_tool.js deleted file mode 100644 index 136cb748c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_pull_request_comment_reaction_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeletePullRequestCommentReaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_unique_id": 12345, - "reaction_unique_identifier": 67890, - "repository_name": "SampleRepo", - "repository_owner": "SampleOwner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_pull_request_comment_reaction_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_pull_request_comment_reaction_example_call_tool.py deleted file mode 100644 index 00528fbe7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_pull_request_comment_reaction_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeletePullRequestCommentReaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_unique_id': 12345, - 'reaction_unique_identifier': 67890, - 'repository_name': 'SampleRepo', - 'repository_owner': 'SampleOwner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_release_asset_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_release_asset_example_call_tool.js deleted file mode 100644 index 643d37470..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_release_asset_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteReleaseAsset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_identifier": 12345, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_release_asset_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_release_asset_example_call_tool.py deleted file mode 100644 index e592a7ff3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_release_asset_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteReleaseAsset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_identifier': 12345, 'repository_name': 'sample-repo', 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_release_reaction_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_release_reaction_example_call_tool.js deleted file mode 100644 index fe046b94b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_release_reaction_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteReleaseReaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "reaction_identifier": 12345, - "release_id": 67890, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_release_reaction_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_release_reaction_example_call_tool.py deleted file mode 100644 index a1873dafe..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_release_reaction_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteReleaseReaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'reaction_identifier': 12345, - 'release_id': 67890, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_repo_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_repo_environment_example_call_tool.js deleted file mode 100644 index 6d109ac44..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_repo_environment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteRepoEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_name": "staging", - "repository_name": "my-repo", - "repository_owner": "my-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_repo_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_repo_environment_example_call_tool.py deleted file mode 100644 index cdb4f792f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_repo_environment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteRepoEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_name': 'staging', 'repository_name': 'my-repo', 'repository_owner': 'my-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_repo_from_org_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_repo_from_org_secret_example_call_tool.js deleted file mode 100644 index f36480d1e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_repo_from_org_secret_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteRepoFromOrgSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_id": 123456, - "secret_name": "my_secret" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_repo_from_org_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_repo_from_org_secret_example_call_tool.py deleted file mode 100644 index 0fddda775..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_repo_from_org_secret_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteRepoFromOrgSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'repository_id': 123456, 'secret_name': 'my_secret' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_repo_invitation_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_repo_invitation_example_call_tool.js deleted file mode 100644 index be149814c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_repo_invitation_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteRepoInvitation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invitation_id": 12345, - "repository_name": "SampleRepo", - "repository_owner": "SampleOwner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_repo_invitation_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_repo_invitation_example_call_tool.py deleted file mode 100644 index c6a573f8c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_repo_invitation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteRepoInvitation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invitation_id': 12345, 'repository_name': 'SampleRepo', 'repository_owner': 'SampleOwner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_repo_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_repo_webhook_example_call_tool.js deleted file mode 100644 index 1375f649b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_repo_webhook_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteRepoWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "webhook_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_repo_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_repo_webhook_example_call_tool.py deleted file mode 100644 index 372208a7d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_repo_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteRepoWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', 'repository_owner': 'sample-owner', 'webhook_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_repository_tag_protection_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_repository_tag_protection_example_call_tool.js deleted file mode 100644 index 44da4cfe6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_repository_tag_protection_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteRepositoryTagProtection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "tag_protection_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_repository_tag_protection_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_repository_tag_protection_example_call_tool.py deleted file mode 100644 index 08927b345..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_repository_tag_protection_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteRepositoryTagProtection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'tag_protection_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_runner_group_from_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_runner_group_from_organization_example_call_tool.js deleted file mode 100644 index 44fefd597..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_runner_group_from_organization_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteRunnerGroupFromOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "runner_group_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_runner_group_from_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_runner_group_from_organization_example_call_tool.py deleted file mode 100644 index 2c70355a9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_runner_group_from_organization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteRunnerGroupFromOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'runner_group_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_scim_group_from_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_scim_group_from_enterprise_example_call_tool.js deleted file mode 100644 index 13c9eed71..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_scim_group_from_enterprise_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteScimGroupFromEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "scim_group_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_scim_group_from_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_scim_group_from_enterprise_example_call_tool.py deleted file mode 100644 index aa30b911b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_scim_group_from_enterprise_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteScimGroupFromEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'scim_group_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_self_hosted_runner_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_self_hosted_runner_group_example_call_tool.js deleted file mode 100644 index b7a65b2a4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_self_hosted_runner_group_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteSelfHostedRunnerGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "runner_group_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_self_hosted_runner_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_self_hosted_runner_group_example_call_tool.py deleted file mode 100644 index f0cd77f67..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_self_hosted_runner_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteSelfHostedRunnerGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'runner_group_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_comment_example_call_tool.js deleted file mode 100644 index b2eaf701f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteTeamDiscussionComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_identifier": 12345, - "discussion_identifier": 67890, - "organization_name": "example-org", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_comment_example_call_tool.py deleted file mode 100644 index 0e15d6006..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteTeamDiscussionComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_identifier': 12345, - 'discussion_identifier': 67890, - 'organization_name': 'example-org', - 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_comment_reaction_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_comment_reaction_example_call_tool.js deleted file mode 100644 index 6d3ec5ddc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_comment_reaction_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteTeamDiscussionCommentReaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_identifier": 42, - "discussion_identifier": 7, - "organization_name": "example-org", - "reaction_id": 123, - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_comment_reaction_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_comment_reaction_example_call_tool.py deleted file mode 100644 index 356d2b450..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_comment_reaction_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteTeamDiscussionCommentReaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_identifier': 42, - 'discussion_identifier': 7, - 'organization_name': 'example-org', - 'reaction_id': 123, - 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_example_call_tool.js deleted file mode 100644 index a363c8b37..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteTeamDiscussion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "discussion_number": 42, - "organization_name": "example-org", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_example_call_tool.py deleted file mode 100644 index 7f2f3b799..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_team_discussion_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteTeamDiscussion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'discussion_number': 42, 'organization_name': 'example-org', 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_team_in_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_team_in_org_example_call_tool.js deleted file mode 100644 index 7b15daa1f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_team_in_org_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteTeamInOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_team_in_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_team_in_org_example_call_tool.py deleted file mode 100644 index 34c77226d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_team_in_org_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteTeamInOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_user_email_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_user_email_example_call_tool.js deleted file mode 100644 index 6bd792fbf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_user_email_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteUserEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"email\":\"user@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_user_email_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_user_email_example_call_tool.py deleted file mode 100644 index 97201b788..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_user_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteUserEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"email":"user@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/delete_user_from_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/delete_user_from_enterprise_example_call_tool.js deleted file mode 100644 index 19d8f0135..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_user_from_enterprise_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DeleteUserFromEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "scim_user_identifier": "user_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/delete_user_from_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/delete_user_from_enterprise_example_call_tool.py deleted file mode 100644 index fef0c845c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/delete_user_from_enterprise_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DeleteUserFromEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'scim_user_identifier': 'user_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/demote_github_site_administrator_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/demote_github_site_administrator_example_call_tool.js deleted file mode 100644 index db4ee76ee..000000000 --- a/public/examples/integrations/mcp-servers/github_api/demote_github_site_administrator_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DemoteGithubSiteAdministrator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/demote_github_site_administrator_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/demote_github_site_administrator_example_call_tool.py deleted file mode 100644 index 1c8a696fa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/demote_github_site_administrator_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DemoteGithubSiteAdministrator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/disable_commit_signature_protection_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/disable_commit_signature_protection_example_call_tool.js deleted file mode 100644 index 346975dfc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/disable_commit_signature_protection_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DisableCommitSignatureProtection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/disable_commit_signature_protection_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/disable_commit_signature_protection_example_call_tool.py deleted file mode 100644 index 99eae5d9d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/disable_commit_signature_protection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DisableCommitSignatureProtection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/disable_github_actions_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/disable_github_actions_repo_example_call_tool.js deleted file mode 100644 index 4decd821d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/disable_github_actions_repo_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DisableGithubActionsRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_unique_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/disable_github_actions_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/disable_github_actions_repo_example_call_tool.py deleted file mode 100644 index b4f57fdf8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/disable_github_actions_repo_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DisableGithubActionsRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'repository_unique_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/disable_lfs_for_github_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/disable_lfs_for_github_repo_example_call_tool.js deleted file mode 100644 index 1d377910c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/disable_lfs_for_github_repo_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DisableLfsForGithubRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/disable_lfs_for_github_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/disable_lfs_for_github_repo_example_call_tool.py deleted file mode 100644 index aef0d4197..000000000 --- a/public/examples/integrations/mcp-servers/github_api/disable_lfs_for_github_repo_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DisableLfsForGithubRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/disable_org_github_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/disable_org_github_actions_example_call_tool.js deleted file mode 100644 index 6b57e0647..000000000 --- a/public/examples/integrations/mcp-servers/github_api/disable_org_github_actions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DisableOrgGithubActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "organization_unique_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/disable_org_github_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/disable_org_github_actions_example_call_tool.py deleted file mode 100644 index 89baa4235..000000000 --- a/public/examples/integrations/mcp-servers/github_api/disable_org_github_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DisableOrgGithubActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'organization_unique_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/dismiss_pull_request_review_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/dismiss_pull_request_review_example_call_tool.js deleted file mode 100644 index e14e1d52b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/dismiss_pull_request_review_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DismissPullRequestReview"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dismissal_message": "Changes requested due to issues in implementation.", - "pull_request_number": 42, - "repository_name": "example-repo", - "repository_owner": "example-user", - "review_identifier": 7, - "dismissal_event": "DISMISS" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/dismiss_pull_request_review_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/dismiss_pull_request_review_example_call_tool.py deleted file mode 100644 index 2496b9de6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/dismiss_pull_request_review_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DismissPullRequestReview" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dismissal_message': 'Changes requested due to issues in implementation.', - 'pull_request_number': 42, - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'review_identifier': 7, - 'dismissal_event': 'DISMISS' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/download_github_migration_archive_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/download_github_migration_archive_example_call_tool.js deleted file mode 100644 index c94b668c8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/download_github_migration_archive_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DownloadGithubMigrationArchive"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "migration_unique_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/download_github_migration_archive_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/download_github_migration_archive_example_call_tool.py deleted file mode 100644 index 4edd23f3b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/download_github_migration_archive_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DownloadGithubMigrationArchive" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'migration_unique_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/download_github_release_asset_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/download_github_release_asset_example_call_tool.js deleted file mode 100644 index 1d4596e88..000000000 --- a/public/examples/integrations/mcp-servers/github_api/download_github_release_asset_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DownloadGithubReleaseAsset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_unique_identifier": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/download_github_release_asset_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/download_github_release_asset_example_call_tool.py deleted file mode 100644 index 90423244b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/download_github_release_asset_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DownloadGithubReleaseAsset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_unique_identifier': 12345, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/download_github_repo_tarball_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/download_github_repo_tarball_example_call_tool.js deleted file mode 100644 index 6c8b46791..000000000 --- a/public/examples/integrations/mcp-servers/github_api/download_github_repo_tarball_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DownloadGithubRepoTarball"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_or_commit_ref": "main", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/download_github_repo_tarball_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/download_github_repo_tarball_example_call_tool.py deleted file mode 100644 index d93bf44c6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/download_github_repo_tarball_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DownloadGithubRepoTarball" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_or_commit_ref': 'main', - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/download_github_repo_zip_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/download_github_repo_zip_example_call_tool.js deleted file mode 100644 index e1ace2b1d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/download_github_repo_zip_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DownloadGithubRepoZip"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "example-user", - "repository_reference": "main" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/download_github_repo_zip_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/download_github_repo_zip_example_call_tool.py deleted file mode 100644 index 10f807bcb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/download_github_repo_zip_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DownloadGithubRepoZip" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'example-user', - 'repository_reference': 'main' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/download_github_workflow_job_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/download_github_workflow_job_logs_example_call_tool.js deleted file mode 100644 index 62bd16d81..000000000 --- a/public/examples/integrations/mcp-servers/github_api/download_github_workflow_job_logs_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DownloadGithubWorkflowJobLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "workflow_job_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/download_github_workflow_job_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/download_github_workflow_job_logs_example_call_tool.py deleted file mode 100644 index 080cee6d8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/download_github_workflow_job_logs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DownloadGithubWorkflowJobLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'workflow_job_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/download_workflow_run_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/download_workflow_run_logs_example_call_tool.js deleted file mode 100644 index 27540e950..000000000 --- a/public/examples/integrations/mcp-servers/github_api/download_workflow_run_logs_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.DownloadWorkflowRunLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "workflow_run_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/download_workflow_run_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/download_workflow_run_logs_example_call_tool.py deleted file mode 100644 index 531c00ea8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/download_workflow_run_logs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.DownloadWorkflowRunLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'workflow_run_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/edit_github_release_asset_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/edit_github_release_asset_example_call_tool.js deleted file mode 100644 index b774eef1c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/edit_github_release_asset_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.EditGithubReleaseAsset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_asset_identifier": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "alternate_asset_description": "Updated asset description" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/edit_github_release_asset_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/edit_github_release_asset_example_call_tool.py deleted file mode 100644 index 4f45c5589..000000000 --- a/public/examples/integrations/mcp-servers/github_api/edit_github_release_asset_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.EditGithubReleaseAsset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_asset_identifier': 12345, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'alternate_asset_description': 'Updated asset description' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/edit_github_review_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/edit_github_review_comment_example_call_tool.js deleted file mode 100644 index a0eba933d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/edit_github_review_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.EditGithubReviewComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_identifier": 12345, - "comment_text": "Updated comment text.", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/edit_github_review_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/edit_github_review_comment_example_call_tool.py deleted file mode 100644 index 9a2174fbd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/edit_github_review_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.EditGithubReviewComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_identifier': 12345, - 'comment_text': 'Updated comment text.', - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/enable_git_lfs_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/enable_git_lfs_example_call_tool.js deleted file mode 100644 index 979fb9f9b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/enable_git_lfs_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.EnableGitLfs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "my-repo", - "repository_owner": "my-account" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/enable_git_lfs_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/enable_git_lfs_example_call_tool.py deleted file mode 100644 index 4e4d5b6bd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/enable_git_lfs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.EnableGitLfs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'my-repo', 'repository_owner': 'my-account' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/enable_github_actions_for_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/enable_github_actions_for_org_example_call_tool.js deleted file mode 100644 index 4b25a8010..000000000 --- a/public/examples/integrations/mcp-servers/github_api/enable_github_actions_for_org_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.EnableGithubActionsForOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_slug_or_id": "my-enterprise", - "organization_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/enable_github_actions_for_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/enable_github_actions_for_org_example_call_tool.py deleted file mode 100644 index 1b5aecf63..000000000 --- a/public/examples/integrations/mcp-servers/github_api/enable_github_actions_for_org_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.EnableGithubActionsForOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_slug_or_id': 'my-enterprise', 'organization_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/enable_github_actions_for_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/enable_github_actions_for_repo_example_call_tool.js deleted file mode 100644 index 53ccd478f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/enable_github_actions_for_repo_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.EnableGithubActionsForRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_unique_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/enable_github_actions_for_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/enable_github_actions_for_repo_example_call_tool.py deleted file mode 100644 index 4673a7e8e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/enable_github_actions_for_repo_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.EnableGithubActionsForRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'repository_unique_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_commit_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/fetch_commit_info_example_call_tool.js deleted file mode 100644 index dfa6ea258..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_commit_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.FetchCommitInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "commit_sha": "abc123def456", - "repository_name": "SampleRepo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_commit_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/fetch_commit_info_example_call_tool.py deleted file mode 100644 index 26fc6db1b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_commit_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.FetchCommitInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'commit_sha': 'abc123def456', 'repository_name': 'SampleRepo', 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_deployment_status_github_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/fetch_deployment_status_github_example_call_tool.js deleted file mode 100644 index 9c4b2cccd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_deployment_status_github_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.FetchDeploymentStatusGithub"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_id": 12345, - "deployment_status_id": 67890, - "repository_name": "SampleRepo", - "repository_owner": "SampleOwner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_deployment_status_github_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/fetch_deployment_status_github_example_call_tool.py deleted file mode 100644 index 9e6962829..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_deployment_status_github_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.FetchDeploymentStatusGithub" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_id': 12345, - 'deployment_status_id': 67890, - 'repository_name': 'SampleRepo', - 'repository_owner': 'SampleOwner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_github_actions_cache_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/fetch_github_actions_cache_policy_example_call_tool.js deleted file mode 100644 index c596e8b92..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_github_actions_cache_policy_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.FetchGithubActionsCachePolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_github_actions_cache_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/fetch_github_actions_cache_policy_example_call_tool.py deleted file mode 100644 index b3aeb6531..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_github_actions_cache_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.FetchGithubActionsCachePolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_github_actions_perms_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/fetch_github_actions_perms_example_call_tool.js deleted file mode 100644 index 2a5e9fdd6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_github_actions_perms_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.FetchGithubActionsPerms"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_github_actions_perms_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/fetch_github_actions_perms_example_call_tool.py deleted file mode 100644 index 4cb9701ed..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_github_actions_perms_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.FetchGithubActionsPerms" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_github_issue_event_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/fetch_github_issue_event_example_call_tool.js deleted file mode 100644 index c67e90b35..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_github_issue_event_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.FetchGithubIssueEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_id": 12345, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_github_issue_event_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/fetch_github_issue_event_example_call_tool.py deleted file mode 100644 index 08b6d4923..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_github_issue_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.FetchGithubIssueEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_id': 12345, 'repository_name': 'sample-repo', 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_gitignore_template_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/fetch_gitignore_template_example_call_tool.js deleted file mode 100644 index 521d9119d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_gitignore_template_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.FetchGitignoreTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gitignore_template_name": "Python" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_gitignore_template_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/fetch_gitignore_template_example_call_tool.py deleted file mode 100644 index 0fb7d43fd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_gitignore_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.FetchGitignoreTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gitignore_template_name': 'Python' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_open_repo_invitations_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/fetch_open_repo_invitations_example_call_tool.js deleted file mode 100644 index 682edd9a7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_open_repo_invitations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.FetchOpenRepoInvitations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_open_repo_invitations_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/fetch_open_repo_invitations_example_call_tool.py deleted file mode 100644 index 0dc46cac3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_open_repo_invitations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.FetchOpenRepoInvitations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_org_actions_cache_usage_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/fetch_org_actions_cache_usage_example_call_tool.js deleted file mode 100644 index 676e653c3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_org_actions_cache_usage_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.FetchOrgActionsCacheUsage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_org_actions_cache_usage_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/fetch_org_actions_cache_usage_example_call_tool.py deleted file mode 100644 index 7b2902ac4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_org_actions_cache_usage_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.FetchOrgActionsCacheUsage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_org_migration_archive_url_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/fetch_org_migration_archive_url_example_call_tool.js deleted file mode 100644 index 16451ba82..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_org_migration_archive_url_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.FetchOrgMigrationArchiveUrl"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "migration_identifier": 12345, - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_org_migration_archive_url_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/fetch_org_migration_archive_url_example_call_tool.py deleted file mode 100644 index 4d788565c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_org_migration_archive_url_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.FetchOrgMigrationArchiveUrl" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'migration_identifier': 12345, 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_repo_readme_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/fetch_repo_readme_example_call_tool.js deleted file mode 100644 index c1abab49d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_repo_readme_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.FetchRepoReadme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "readme_directory_path": "docs", - "repository_name": "SampleRepo", - "repository_owner": "SampleOwner", - "commit_branch_or_tag_name": "main" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/fetch_repo_readme_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/fetch_repo_readme_example_call_tool.py deleted file mode 100644 index 58c6b1424..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fetch_repo_readme_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.FetchRepoReadme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'readme_directory_path': 'docs', - 'repository_name': 'SampleRepo', - 'repository_owner': 'SampleOwner', - 'commit_branch_or_tag_name': 'main' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/find_github_labels_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/find_github_labels_example_call_tool.js deleted file mode 100644 index 83c6284f2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/find_github_labels_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.FindGithubLabels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_id": 123456, - "search_keywords": "bug" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/find_github_labels_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/find_github_labels_example_call_tool.py deleted file mode 100644 index f1a0ac26a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/find_github_labels_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.FindGithubLabels" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_id': 123456, 'search_keywords': 'bug' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/follow_github_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/follow_github_user_example_call_tool.js deleted file mode 100644 index c8e4a5906..000000000 --- a/public/examples/integrations/mcp-servers/github_api/follow_github_user_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.FollowGithubUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/follow_github_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/follow_github_user_example_call_tool.py deleted file mode 100644 index f697b87a9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/follow_github_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.FollowGithubUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/fork_gist_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/fork_gist_example_call_tool.js deleted file mode 100644 index 63bfd9725..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fork_gist_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ForkGist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gist_unique_identifier": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/fork_gist_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/fork_gist_example_call_tool.py deleted file mode 100644 index 611e7d3e9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/fork_gist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ForkGist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gist_unique_identifier': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/generate_github_release_notes_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/generate_github_release_notes_example_call_tool.js deleted file mode 100644 index f0576bbd8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/generate_github_release_notes_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GenerateGithubReleaseNotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_tag_name": "v1.2.0", - "repository_name": "my-awesome-repo", - "repository_owner": "johnDoe", - "previous_tag_name": "v1.1.0", - "release_configuration_file_path": ".github/release.yml" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/generate_github_release_notes_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/generate_github_release_notes_example_call_tool.py deleted file mode 100644 index bc659fbef..000000000 --- a/public/examples/integrations/mcp-servers/github_api/generate_github_release_notes_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GenerateGithubReleaseNotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_tag_name': 'v1.2.0', - 'repository_name': 'my-awesome-repo', - 'repository_owner': 'johnDoe', - 'previous_tag_name': 'v1.1.0', - 'release_configuration_file_path': '.github/release.yml' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/generate_github_runner_remove_token_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/generate_github_runner_remove_token_example_call_tool.js deleted file mode 100644 index 775e29db4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/generate_github_runner_remove_token_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GenerateGithubRunnerRemoveToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/generate_github_runner_remove_token_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/generate_github_runner_remove_token_example_call_tool.py deleted file mode 100644 index 39db7994b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/generate_github_runner_remove_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GenerateGithubRunnerRemoveToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_admin_branch_protection_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_admin_branch_protection_status_example_call_tool.js deleted file mode 100644 index 26454fede..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_admin_branch_protection_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetAdminBranchProtectionStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_admin_branch_protection_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_admin_branch_protection_status_example_call_tool.py deleted file mode 100644 index b6c006934..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_admin_branch_protection_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetAdminBranchProtectionStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_advanced_security_committers_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_advanced_security_committers_example_call_tool.js deleted file mode 100644 index f9957191d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_advanced_security_committers_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetAdvancedSecurityCommitters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_advanced_security_committers_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_advanced_security_committers_example_call_tool.py deleted file mode 100644 index 777a9f62d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_advanced_security_committers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetAdvancedSecurityCommitters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_all_authorized_ssh_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_all_authorized_ssh_keys_example_call_tool.js deleted file mode 100644 index 5e1271ea1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_all_authorized_ssh_keys_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetAllAuthorizedSshKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_all_authorized_ssh_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_all_authorized_ssh_keys_example_call_tool.py deleted file mode 100644 index d85b76cb3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_all_authorized_ssh_keys_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetAllAuthorizedSshKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_all_github_codes_of_conduct_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_all_github_codes_of_conduct_example_call_tool.js deleted file mode 100644 index 799436d30..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_all_github_codes_of_conduct_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetAllGithubCodesOfConduct"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_all_github_codes_of_conduct_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_all_github_codes_of_conduct_example_call_tool.py deleted file mode 100644 index 87f70f337..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_all_github_codes_of_conduct_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetAllGithubCodesOfConduct" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_enterprise_example_call_tool.js deleted file mode 100644 index 94c7a9b21..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_enterprise_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetAllowedActionsForEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_enterprise_example_call_tool.py deleted file mode 100644 index d9ff83a83..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_enterprise_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetAllowedActionsForEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_organization_example_call_tool.js deleted file mode 100644 index 93f7561e3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_organization_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetAllowedActionsForOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_organization_example_call_tool.py deleted file mode 100644 index 6715a1c1e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_organization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetAllowedActionsForOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_repo_example_call_tool.js deleted file mode 100644 index 7027f9def..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_repo_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetAllowedActionsForRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_repo_example_call_tool.py deleted file mode 100644 index beff0ef54..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_allowed_actions_for_repo_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetAllowedActionsForRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_apps_with_branch_access_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_apps_with_branch_access_example_call_tool.js deleted file mode 100644 index 1781d0406..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_apps_with_branch_access_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetAppsWithBranchAccess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_apps_with_branch_access_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_apps_with_branch_access_example_call_tool.py deleted file mode 100644 index d0b826a95..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_apps_with_branch_access_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetAppsWithBranchAccess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_branch_access_restrictions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_branch_access_restrictions_example_call_tool.js deleted file mode 100644 index 1ed195ccf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_branch_access_restrictions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetBranchAccessRestrictions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_branch_access_restrictions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_branch_access_restrictions_example_call_tool.py deleted file mode 100644 index ba4a83636..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_branch_access_restrictions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetBranchAccessRestrictions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_branch_protection_status_checks_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_branch_protection_status_checks_example_call_tool.js deleted file mode 100644 index 2f86c6862..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_branch_protection_status_checks_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetBranchProtectionStatusChecks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_branch_protection_status_checks_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_branch_protection_status_checks_example_call_tool.py deleted file mode 100644 index 075830279..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_branch_protection_status_checks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetBranchProtectionStatusChecks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_code_of_conduct_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_code_of_conduct_example_call_tool.js deleted file mode 100644 index 17b89a473..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_code_of_conduct_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetCodeOfConduct"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conduct_code_key": "contributor-covenant" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_code_of_conduct_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_code_of_conduct_example_call_tool.py deleted file mode 100644 index 73d39e501..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_code_of_conduct_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetCodeOfConduct" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conduct_code_key': 'contributor-covenant' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_code_scanning_alert_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_code_scanning_alert_example_call_tool.js deleted file mode 100644 index 0e5e4a8c7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_code_scanning_alert_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetCodeScanningAlert"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alert_number": 123, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_code_scanning_alert_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_code_scanning_alert_example_call_tool.py deleted file mode 100644 index a39d2640e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_code_scanning_alert_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetCodeScanningAlert" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alert_number': 123, 'repository_name': 'sample-repo', 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_code_scanning_analysis_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_code_scanning_analysis_example_call_tool.js deleted file mode 100644 index 92ca2b1f3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_code_scanning_analysis_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetCodeScanningAnalysis"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "analysis_id": 12345, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_code_scanning_analysis_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_code_scanning_analysis_example_call_tool.py deleted file mode 100644 index 2b7e97177..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_code_scanning_analysis_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetCodeScanningAnalysis" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'analysis_id': 12345, 'repository_name': 'sample-repo', 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_combined_commit_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_combined_commit_status_example_call_tool.js deleted file mode 100644 index eb98afef5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_combined_commit_status_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetCombinedCommitStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "reference_specifier": "main", - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_combined_commit_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_combined_commit_status_example_call_tool.py deleted file mode 100644 index ba1839faa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_combined_commit_status_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetCombinedCommitStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'reference_specifier': 'main', - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_comment_statistics_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_comment_statistics_example_call_tool.js deleted file mode 100644 index c7180a96b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_comment_statistics_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetCommentStatistics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_comment_statistics_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_comment_statistics_example_call_tool.py deleted file mode 100644 index d3445822b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_comment_statistics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetCommentStatistics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_commit_activity_by_hour_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_commit_activity_by_hour_example_call_tool.js deleted file mode 100644 index 0f571df3f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_commit_activity_by_hour_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetCommitActivityByHour"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_commit_activity_by_hour_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_commit_activity_by_hour_example_call_tool.py deleted file mode 100644 index 73c014731..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_commit_activity_by_hour_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetCommitActivityByHour" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_commit_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_commit_activity_example_call_tool.js deleted file mode 100644 index b87bab1ca..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_commit_activity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetCommitActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_commit_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_commit_activity_example_call_tool.py deleted file mode 100644 index 3a968b6f2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_commit_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetCommitActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_commit_details_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_commit_details_example_call_tool.js deleted file mode 100644 index d73b25511..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_commit_details_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetCommitDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "commit_reference": "abc123", - "repository_name": "sample-repo", - "repository_owner": "user123", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_commit_details_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_commit_details_example_call_tool.py deleted file mode 100644 index 3cab96506..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_commit_details_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetCommitDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'commit_reference': 'abc123', - 'repository_name': 'sample-repo', - 'repository_owner': 'user123', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_commit_statuses_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_commit_statuses_example_call_tool.js deleted file mode 100644 index 9cdac0ce9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_commit_statuses_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetCommitStatuses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user", - "repository_reference": "main", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_commit_statuses_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_commit_statuses_example_call_tool.py deleted file mode 100644 index ebcebe0ed..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_commit_statuses_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetCommitStatuses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'repository_reference': 'main', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_commonly_used_licenses_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_commonly_used_licenses_example_call_tool.js deleted file mode 100644 index a0ee09328..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_commonly_used_licenses_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetCommonlyUsedLicenses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "only_featured_licenses": true, - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_commonly_used_licenses_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_commonly_used_licenses_example_call_tool.py deleted file mode 100644 index 03e17dafd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_commonly_used_licenses_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetCommonlyUsedLicenses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'only_featured_licenses': True, 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_default_github_actions_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_default_github_actions_permissions_example_call_tool.js deleted file mode 100644 index 18fac96ec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_default_github_actions_permissions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetDefaultGithubActionsPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_default_github_actions_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_default_github_actions_permissions_example_call_tool.py deleted file mode 100644 index 831a9e821..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_default_github_actions_permissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetDefaultGithubActionsPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_default_github_actions_workflow_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_default_github_actions_workflow_permissions_example_call_tool.js deleted file mode 100644 index d87b0fb5a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_default_github_actions_workflow_permissions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetDefaultGithubActionsWorkflowPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_default_github_actions_workflow_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_default_github_actions_workflow_permissions_example_call_tool.py deleted file mode 100644 index 49348ff0a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_default_github_actions_workflow_permissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetDefaultGithubActionsWorkflowPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_dependabot_alert_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_dependabot_alert_example_call_tool.js deleted file mode 100644 index 0eb25e57c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_dependabot_alert_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetDependabotAlert"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dependabot_alert_number": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_dependabot_alert_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_dependabot_alert_example_call_tool.py deleted file mode 100644 index 31719a7f3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_dependabot_alert_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetDependabotAlert" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dependabot_alert_number': 123, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_deployment_branch_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_deployment_branch_policy_example_call_tool.js deleted file mode 100644 index 75f6e6799..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_deployment_branch_policy_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetDeploymentBranchPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_policy_identifier": 1, - "environment_name": "production", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_deployment_branch_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_deployment_branch_policy_example_call_tool.py deleted file mode 100644 index a50d8ed71..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_deployment_branch_policy_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetDeploymentBranchPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_policy_identifier': 1, - 'environment_name': 'production', - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_enterprise_announcement_banner_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_enterprise_announcement_banner_example_call_tool.js deleted file mode 100644 index 61473a90a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_enterprise_announcement_banner_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetEnterpriseAnnouncementBanner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_enterprise_announcement_banner_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_enterprise_announcement_banner_example_call_tool.py deleted file mode 100644 index aaebbe511..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_enterprise_announcement_banner_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetEnterpriseAnnouncementBanner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_enterprise_audit_log_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_enterprise_audit_log_example_call_tool.js deleted file mode 100644 index 64124441f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_enterprise_audit_log_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetEnterpriseAuditLog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_slug_or_id": "my-enterprise", - "after_cursor": "abc123", - "audit_log_event_order": "asc", - "event_types_to_include": "all", - "result_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_enterprise_audit_log_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_enterprise_audit_log_example_call_tool.py deleted file mode 100644 index 837408a3e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_enterprise_audit_log_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetEnterpriseAuditLog" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_slug_or_id': 'my-enterprise', - 'after_cursor': 'abc123', - 'audit_log_event_order': 'asc', - 'event_types_to_include': 'all', - 'result_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_environment_secret_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_environment_secret_info_example_call_tool.js deleted file mode 100644 index 4ae28a6b6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_environment_secret_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetEnvironmentSecretInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_name": "production", - "repository_id": 123456, - "secret_name": "API_KEY" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_environment_secret_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_environment_secret_info_example_call_tool.py deleted file mode 100644 index f4651f09a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_environment_secret_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetEnvironmentSecretInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_name': 'production', 'repository_id': 123456, 'secret_name': 'API_KEY' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_gist_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_gist_comment_example_call_tool.js deleted file mode 100644 index 89eec78f7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_gist_comment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGistComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": 12345, - "gist_unique_id": "abcde12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_gist_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_gist_comment_example_call_tool.py deleted file mode 100644 index 66f1c6764..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_gist_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGistComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': 12345, 'gist_unique_id': 'abcde12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_gist_revision_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_gist_revision_example_call_tool.js deleted file mode 100644 index 186d951fa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_gist_revision_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGistRevision"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gist_identifier": "abc123", - "revision_sha": "def456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_gist_revision_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_gist_revision_example_call_tool.py deleted file mode 100644 index 2cb757c4c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_gist_revision_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGistRevision" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gist_identifier': 'abc123', 'revision_sha': 'def456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_git_gist_statistics_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_git_gist_statistics_example_call_tool.js deleted file mode 100644 index 374716eb8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_git_gist_statistics_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGitGistStatistics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_git_gist_statistics_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_git_gist_statistics_example_call_tool.py deleted file mode 100644 index 32cc87d6a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_git_gist_statistics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGitGistStatistics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_git_reference_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_git_reference_example_call_tool.js deleted file mode 100644 index 7bf91ef59..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_git_reference_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGitReference"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "git_reference": "heads/main", - "repository_name": "example-repo", - "repository_owner": "example-user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_git_reference_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_git_reference_example_call_tool.py deleted file mode 100644 index e83f8f79f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_git_reference_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGitReference" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'git_reference': 'heads/main', - 'repository_name': 'example-repo', - 'repository_owner': 'example-user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_git_tag_signature_verification_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_git_tag_signature_verification_example_call_tool.js deleted file mode 100644 index 349f5aae7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_git_tag_signature_verification_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGitTagSignatureVerification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "tag_sha": "abc123def456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_git_tag_signature_verification_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_git_tag_signature_verification_example_call_tool.py deleted file mode 100644 index 58fd8d3f8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_git_tag_signature_verification_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGitTagSignatureVerification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'tag_sha': 'abc123def456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_git_tree_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_git_tree_example_call_tool.js deleted file mode 100644 index 5791f438f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_git_tree_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGitTree"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "tree_sha": "abc123def456", - "enable_recursive_retrieval": "true" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_git_tree_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_git_tree_example_call_tool.py deleted file mode 100644 index ce3387355..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_git_tree_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGitTree" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'tree_sha': 'abc123def456', - 'enable_recursive_retrieval': 'true' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_policy_example_call_tool.js deleted file mode 100644 index b8b29c21e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_policy_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubActionsCachePolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_policy_example_call_tool.py deleted file mode 100644 index a59f36720..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubActionsCachePolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_example_call_tool.js deleted file mode 100644 index a988b948b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubActionsCacheUsage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_example_call_tool.py deleted file mode 100644 index af2259576..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubActionsCacheUsage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_for_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_for_enterprise_example_call_tool.js deleted file mode 100644 index 8fe8c712f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_for_enterprise_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubActionsCacheUsageForEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_for_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_for_enterprise_example_call_tool.py deleted file mode 100644 index 880c3afd7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_for_enterprise_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubActionsCacheUsageForEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_for_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_for_org_example_call_tool.js deleted file mode 100644 index cc9a0f99f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_for_org_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubActionsCacheUsageForOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_for_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_for_org_example_call_tool.py deleted file mode 100644 index 0841cd785..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_actions_cache_usage_for_org_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubActionsCacheUsageForOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_actions_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_actions_permissions_example_call_tool.js deleted file mode 100644 index fec81fe10..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_actions_permissions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubActionsPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_actions_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_actions_permissions_example_call_tool.py deleted file mode 100644 index 883d0fca3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_actions_permissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubActionsPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_actions_permissions_for_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_actions_permissions_for_organization_example_call_tool.js deleted file mode 100644 index 2ed5fdc84..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_actions_permissions_for_organization_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubActionsPermissionsForOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_actions_permissions_for_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_actions_permissions_for_organization_example_call_tool.py deleted file mode 100644 index 7f00af633..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_actions_permissions_for_organization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubActionsPermissionsForOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_actions_run_reviews_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_actions_run_reviews_example_call_tool.js deleted file mode 100644 index 8f821d73c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_actions_run_reviews_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubActionsRunReviews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "workflow_run_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_actions_run_reviews_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_actions_run_reviews_example_call_tool.py deleted file mode 100644 index 7a1a12642..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_actions_run_reviews_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubActionsRunReviews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'workflow_run_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_app_details_by_slug_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_app_details_by_slug_example_call_tool.js deleted file mode 100644 index 84691b5c6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_app_details_by_slug_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubAppDetailsBySlug"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_app_slug": "my-github-app" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_app_details_by_slug_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_app_details_by_slug_example_call_tool.py deleted file mode 100644 index 8e04ae8f5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_app_details_by_slug_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubAppDetailsBySlug" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_app_slug': 'my-github-app' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_app_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_app_info_example_call_tool.js deleted file mode 100644 index df235223b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_app_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubAppInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_app_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_app_info_example_call_tool.py deleted file mode 100644 index f9fad41ee..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_app_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubAppInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_app_installation_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_app_installation_info_example_call_tool.js deleted file mode 100644 index 93878fddb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_app_installation_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubAppInstallationInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "installation_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_app_installation_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_app_installation_info_example_call_tool.py deleted file mode 100644 index 7f9a9191e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_app_installation_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubAppInstallationInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'installation_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_app_installations_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_app_installations_example_call_tool.js deleted file mode 100644 index 8909fa53d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_app_installations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubAppInstallations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_app_installations_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_app_installations_example_call_tool.py deleted file mode 100644 index f2d00d4ef..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_app_installations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubAppInstallations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_app_repo_installation_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_app_repo_installation_example_call_tool.js deleted file mode 100644 index f21b9a28c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_app_repo_installation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubAppRepoInstallation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_app_repo_installation_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_app_repo_installation_example_call_tool.py deleted file mode 100644 index 71bb4c499..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_app_repo_installation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubAppRepoInstallation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_app_webhook_config_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_app_webhook_config_example_call_tool.js deleted file mode 100644 index 3f520ccb6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_app_webhook_config_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubAppWebhookConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_app_webhook_config_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_app_webhook_config_example_call_tool.py deleted file mode 100644 index 9c12edca7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_app_webhook_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubAppWebhookConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_app_webhook_delivery_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_app_webhook_delivery_example_call_tool.js deleted file mode 100644 index 3ba48b9a0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_app_webhook_delivery_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubAppWebhookDelivery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_delivery_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_app_webhook_delivery_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_app_webhook_delivery_example_call_tool.py deleted file mode 100644 index ac22da05f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_app_webhook_delivery_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubAppWebhookDelivery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_delivery_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_artifact_download_url_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_artifact_download_url_example_call_tool.js deleted file mode 100644 index 9823cd1a0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_artifact_download_url_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubArtifactDownloadUrl"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "archive_format_zip": "zip", - "artifact_id": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_artifact_download_url_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_artifact_download_url_example_call_tool.py deleted file mode 100644 index 464319764..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_artifact_download_url_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubArtifactDownloadUrl" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'archive_format_zip': 'zip', - 'artifact_id': 123, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_blob_content_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_blob_content_example_call_tool.js deleted file mode 100644 index 5fb4ad288..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_blob_content_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubBlobContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_sha_identifier": "abc123def456", - "repository_name": "sample-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_blob_content_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_blob_content_example_call_tool.py deleted file mode 100644 index 4cd02c373..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_blob_content_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubBlobContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_sha_identifier': 'abc123def456', - 'repository_name': 'sample-repo', - 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_branch_protection_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_branch_protection_example_call_tool.js deleted file mode 100644 index 931311ca3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_branch_protection_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubBranchProtection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_branch_protection_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_branch_protection_example_call_tool.py deleted file mode 100644 index 5ad2508ce..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_branch_protection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubBranchProtection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_check_run_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_check_run_example_call_tool.js deleted file mode 100644 index cc219f747..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_check_run_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubCheckRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "check_run_identifier": 12345, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_check_run_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_check_run_example_call_tool.py deleted file mode 100644 index cb1d282d0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_check_run_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubCheckRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'check_run_identifier': 12345, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_check_suite_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_check_suite_example_call_tool.js deleted file mode 100644 index edb1aaed0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_check_suite_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubCheckSuite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "check_suite_id": 123456, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_check_suite_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_check_suite_example_call_tool.py deleted file mode 100644 index 23733d4da..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_check_suite_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubCheckSuite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'check_suite_id': 123456, 'repository_name': 'sample-repo', 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_commit_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_commit_comment_example_call_tool.js deleted file mode 100644 index ffb49760a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_commit_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubCommitComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_identifier": 12345, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_commit_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_commit_comment_example_call_tool.py deleted file mode 100644 index b0824ae0f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_commit_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubCommitComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_identifier': 12345, 'repository_name': 'sample-repo', 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_contributor_stats_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_contributor_stats_example_call_tool.js deleted file mode 100644 index 24788c6c6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_contributor_stats_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubContributorStats"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_contributor_stats_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_contributor_stats_example_call_tool.py deleted file mode 100644 index 2552a95a0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_contributor_stats_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubContributorStats" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_deploy_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_deploy_key_example_call_tool.js deleted file mode 100644 index 55311f3eb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_deploy_key_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubDeployKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deploy_key_id": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_deploy_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_deploy_key_example_call_tool.py deleted file mode 100644 index e6b0b3572..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_deploy_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubDeployKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deploy_key_id': 12345, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_deployment_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_deployment_status_example_call_tool.js deleted file mode 100644 index 5dcdc82b8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_deployment_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubDeploymentStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_id": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_deployment_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_deployment_status_example_call_tool.py deleted file mode 100644 index 5b25d90fd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_deployment_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubDeploymentStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_id': 12345, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_meta_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_meta_info_example_call_tool.js deleted file mode 100644 index d8d846839..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_meta_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubEnterpriseMetaInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_meta_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_meta_info_example_call_tool.py deleted file mode 100644 index e6536a786..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_meta_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubEnterpriseMetaInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_settings_example_call_tool.js deleted file mode 100644 index 94874f9c8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_settings_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubEnterpriseSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_settings_example_call_tool.py deleted file mode 100644 index b80f232b2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubEnterpriseSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_stats_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_stats_example_call_tool.js deleted file mode 100644 index 12cc69c08..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_stats_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubEnterpriseStats"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_stats_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_stats_example_call_tool.py deleted file mode 100644 index ed2b51465..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_enterprise_stats_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubEnterpriseStats" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_env_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_env_variable_example_call_tool.js deleted file mode 100644 index 14f4ca621..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_env_variable_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubEnvVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_name": "production", - "repository_id": 123456, - "variable_name": "API_KEY" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_env_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_env_variable_example_call_tool.py deleted file mode 100644 index c28460f79..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_env_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubEnvVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_name': 'production', 'repository_id': 123456, 'variable_name': 'API_KEY' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_environment_public_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_environment_public_key_example_call_tool.js deleted file mode 100644 index 811b28243..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_environment_public_key_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubEnvironmentPublicKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_name": "production", - "repository_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_environment_public_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_environment_public_key_example_call_tool.py deleted file mode 100644 index 6fba54938..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_environment_public_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubEnvironmentPublicKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_name': 'production', 'repository_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_external_group_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_external_group_info_example_call_tool.js deleted file mode 100644 index 5b4eba278..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_external_group_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubExternalGroupInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_id": 12345, - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_external_group_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_external_group_info_example_call_tool.py deleted file mode 100644 index 7e5d5450c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_external_group_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubExternalGroupInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_id': 12345, 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_feeds_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_feeds_example_call_tool.js deleted file mode 100644 index 0b470d63f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_feeds_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubFeeds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_feeds_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_feeds_example_call_tool.py deleted file mode 100644 index ca11b467b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_feeds_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubFeeds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_gist_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_gist_example_call_tool.js deleted file mode 100644 index ef89ac66f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_gist_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubGist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gist_identifier": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_gist_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_gist_example_call_tool.py deleted file mode 100644 index 58986543b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_gist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubGist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gist_identifier': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_global_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_global_webhook_example_call_tool.js deleted file mode 100644 index 2d9edc7d8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_global_webhook_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubGlobalWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "global_webhook_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_global_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_global_webhook_example_call_tool.py deleted file mode 100644 index 8a354bc09..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_global_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubGlobalWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'global_webhook_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_issue_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_issue_comment_example_call_tool.js deleted file mode 100644 index 741dd7d85..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_issue_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubIssueComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_identifier": 12345, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_issue_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_issue_comment_example_call_tool.py deleted file mode 100644 index d4fc7ad0e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_issue_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubIssueComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_identifier': 12345, 'repository_name': 'sample-repo', 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_issue_details_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_issue_details_example_call_tool.js deleted file mode 100644 index ab4c3f960..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_issue_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubIssueDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_identifier": 42, - "repository_name": "sample-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_issue_details_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_issue_details_example_call_tool.py deleted file mode 100644 index 654ac4e32..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_issue_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubIssueDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_identifier': 42, 'repository_name': 'sample-repo', 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_issue_statistics_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_issue_statistics_example_call_tool.js deleted file mode 100644 index 42cc655a1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_issue_statistics_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubIssueStatistics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_issue_statistics_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_issue_statistics_example_call_tool.py deleted file mode 100644 index cdef199ca..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_issue_statistics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubIssueStatistics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_label_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_label_example_call_tool.js deleted file mode 100644 index a40efedce..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_label_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubLabel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "label_name": "bug", - "repository_name": "sample-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_label_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_label_example_call_tool.py deleted file mode 100644 index f692ef0ea..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_label_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubLabel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'label_name': 'bug', 'repository_name': 'sample-repo', 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_license_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_license_example_call_tool.js deleted file mode 100644 index a54090ef5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_license_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubLicense"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "license_key": "mit" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_license_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_license_example_call_tool.py deleted file mode 100644 index 5ed62e946..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_license_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubLicense" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'license_key': 'mit' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_milestone_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_milestone_example_call_tool.js deleted file mode 100644 index d50dff4e1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_milestone_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubMilestone"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "milestone_id": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_milestone_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_milestone_example_call_tool.py deleted file mode 100644 index a61d10a48..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_milestone_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubMilestone" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'milestone_id': 123, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_notification_thread_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_notification_thread_example_call_tool.js deleted file mode 100644 index 2262c22fc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_notification_thread_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubNotificationThread"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_thread_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_notification_thread_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_notification_thread_example_call_tool.py deleted file mode 100644 index d76a72230..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_notification_thread_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubNotificationThread" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_thread_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_org_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_org_info_example_call_tool.js deleted file mode 100644 index 42bb096fa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_org_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubOrgInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_org_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_org_info_example_call_tool.py deleted file mode 100644 index 287be5c55..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_org_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubOrgInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_org_installation_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_org_installation_info_example_call_tool.js deleted file mode 100644 index df38b691a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_org_installation_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubOrgInstallationInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_org_installation_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_org_installation_info_example_call_tool.py deleted file mode 100644 index f178aff28..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_org_installation_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubOrgInstallationInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_org_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_org_secret_example_call_tool.js deleted file mode 100644 index da78440ca..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_org_secret_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubOrgSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "secret_name": "my-secret" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_org_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_org_secret_example_call_tool.py deleted file mode 100644 index ea90d720c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_org_secret_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubOrgSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'secret_name': 'my-secret' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_org_stats_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_org_stats_example_call_tool.js deleted file mode 100644 index aa9db1be4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_org_stats_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubOrgStats"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_org_stats_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_org_stats_example_call_tool.py deleted file mode 100644 index 02ea3cefd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_org_stats_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubOrgStats" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_pages_build_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_pages_build_example_call_tool.js deleted file mode 100644 index 8f83d0a62..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_pages_build_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubPagesBuild"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "build_identifier": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_pages_build_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_pages_build_example_call_tool.py deleted file mode 100644 index f7c8ca526..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_pages_build_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubPagesBuild" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'build_identifier': 123, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_pages_site_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_pages_site_example_call_tool.js deleted file mode 100644 index 6e8e022b9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_pages_site_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubPagesSite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_pages_site_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_pages_site_example_call_tool.py deleted file mode 100644 index 90b91d9ae..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_pages_site_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubPagesSite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_pages_stats_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_pages_stats_example_call_tool.js deleted file mode 100644 index dded25fba..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_pages_stats_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubPagesStats"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_pages_stats_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_pages_stats_example_call_tool.py deleted file mode 100644 index 59b3713d4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_pages_stats_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubPagesStats" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_pre_receive_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_pre_receive_environment_example_call_tool.js deleted file mode 100644 index 31b16a0ce..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_pre_receive_environment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubPreReceiveEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pre_receive_environment_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_pre_receive_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_pre_receive_environment_example_call_tool.py deleted file mode 100644 index 46fac9463..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_pre_receive_environment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubPreReceiveEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pre_receive_environment_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_project_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_project_by_id_example_call_tool.js deleted file mode 100644 index fddf4f75d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_project_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubProjectById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_project_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_project_by_id_example_call_tool.py deleted file mode 100644 index 6c34ec15b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_project_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubProjectById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_project_column_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_project_column_example_call_tool.js deleted file mode 100644 index 4ff0dd0ad..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_project_column_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubProjectColumn"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_column_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_project_column_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_project_column_example_call_tool.py deleted file mode 100644 index e8e7f7c24..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_project_column_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubProjectColumn" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_column_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_rate_limit_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_rate_limit_example_call_tool.js deleted file mode 100644 index 349656c8e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_rate_limit_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubRateLimit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_rate_limit_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_rate_limit_example_call_tool.py deleted file mode 100644 index e4dbb59bb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_rate_limit_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubRateLimit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_release_by_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_release_by_tag_example_call_tool.js deleted file mode 100644 index 362c0a651..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_release_by_tag_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubReleaseByTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_tag": "v1.0.0", - "repository_name": "example-repo", - "repository_owner": "example-user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_release_by_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_release_by_tag_example_call_tool.py deleted file mode 100644 index 740794f52..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_release_by_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubReleaseByTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_tag': 'v1.0.0', 'repository_name': 'example-repo', 'repository_owner': 'example-user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_release_details_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_release_details_example_call_tool.js deleted file mode 100644 index 332ee1dc6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_release_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubReleaseDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_id": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_release_details_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_release_details_example_call_tool.py deleted file mode 100644 index ffe686131..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_release_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubReleaseDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_id': 123, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_releases_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_releases_example_call_tool.js deleted file mode 100644 index 8d7b86180..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_releases_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubReleases"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_releases_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_releases_example_call_tool.py deleted file mode 100644 index 39c7ffff7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_releases_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubReleases" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_repo_branch_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_repo_branch_example_call_tool.js deleted file mode 100644 index e9b083761..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_repo_branch_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubRepoBranch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_repo_branch_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_repo_branch_example_call_tool.py deleted file mode 100644 index 55033b060..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_repo_branch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubRepoBranch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_repo_content_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_repo_content_example_call_tool.js deleted file mode 100644 index 42c2497cc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_repo_content_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubRepoContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_or_directory_path": "src/index.js", - "repository_name": "example-repo", - "repository_owner": "example-user", - "commit_branch_or_tag": "main" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_repo_content_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_repo_content_example_call_tool.py deleted file mode 100644 index 89c359b25..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_repo_content_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubRepoContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_or_directory_path': 'src/index.js', - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'commit_branch_or_tag': 'main' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_repo_environment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_repo_environment_details_example_call_tool.js deleted file mode 100644 index dd9890cd8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_repo_environment_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubRepoEnvironmentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_name": "production", - "repository_name": "example-repo", - "repository_owner_account_name": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_repo_environment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_repo_environment_details_example_call_tool.py deleted file mode 100644 index 9c85ecc1d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_repo_environment_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubRepoEnvironmentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_name': 'production', - 'repository_name': 'example-repo', - 'repository_owner_account_name': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_repo_public_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_repo_public_key_example_call_tool.js deleted file mode 100644 index cd80a3801..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_repo_public_key_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubRepoPublicKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_repo_public_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_repo_public_key_example_call_tool.py deleted file mode 100644 index af0aaf3af..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_repo_public_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubRepoPublicKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_repo_required_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_repo_required_workflow_example_call_tool.js deleted file mode 100644 index 3711e7ef6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_repo_required_workflow_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubRepoRequiredWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "exampleOrg", - "repository_name": "exampleRepo", - "required_workflow_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_repo_required_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_repo_required_workflow_example_call_tool.py deleted file mode 100644 index bdbbe1cbe..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_repo_required_workflow_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubRepoRequiredWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'exampleOrg', 'repository_name': 'exampleRepo', 'required_workflow_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_repo_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_repo_variable_example_call_tool.js deleted file mode 100644 index aad04618f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_repo_variable_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubRepoVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "variable_name": "API_KEY" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_repo_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_repo_variable_example_call_tool.py deleted file mode 100644 index 457e4e642..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_repo_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubRepoVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'variable_name': 'API_KEY' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_repository_details_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_repository_details_example_call_tool.js deleted file mode 100644 index 28e788ad8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_repository_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubRepositoryDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "example-user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_repository_details_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_repository_details_example_call_tool.py deleted file mode 100644 index 62aa3cf32..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_repository_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubRepositoryDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', 'repository_owner': 'example-user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_review_comment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_review_comment_details_example_call_tool.js deleted file mode 100644 index 0daca115a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_review_comment_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubReviewCommentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": 12345, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_review_comment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_review_comment_details_example_call_tool.py deleted file mode 100644 index 2510fc184..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_review_comment_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubReviewCommentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': 12345, 'repository_name': 'sample-repo', 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_review_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_review_example_call_tool.js deleted file mode 100644 index e3d5bbd94..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_review_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubReview"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 123, - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "review_id": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_review_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_review_example_call_tool.py deleted file mode 100644 index 58e429976..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_review_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubReview" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 123, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'review_id': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_root_links_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_root_links_example_call_tool.js deleted file mode 100644 index 04ba68e99..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_root_links_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubRootLinks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_root_links_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_root_links_example_call_tool.py deleted file mode 100644 index 5425c8faf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_root_links_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubRootLinks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_secret_scanning_alert_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_secret_scanning_alert_example_call_tool.js deleted file mode 100644 index 0a59dd68e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_secret_scanning_alert_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubSecretScanningAlert"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alert_identifier": 12345, - "repository_name": "example-repo", - "repository_owner": "example-user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_secret_scanning_alert_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_secret_scanning_alert_example_call_tool.py deleted file mode 100644 index 14fc5e587..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_secret_scanning_alert_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubSecretScanningAlert" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alert_identifier': 12345, 'repository_name': 'example-repo', 'repository_owner': 'example-user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_security_billing_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_security_billing_info_example_call_tool.js deleted file mode 100644 index 04de0e04b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_security_billing_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubSecurityBillingInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_security_billing_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_security_billing_info_example_call_tool.py deleted file mode 100644 index 06d92d347..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_security_billing_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubSecurityBillingInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_status_check_contexts_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_status_check_contexts_example_call_tool.js deleted file mode 100644 index 91446e2fc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_status_check_contexts_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubStatusCheckContexts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_status_check_contexts_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_status_check_contexts_example_call_tool.py deleted file mode 100644 index c9d6324cc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_status_check_contexts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubStatusCheckContexts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_team_discussion_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_team_discussion_comment_example_call_tool.js deleted file mode 100644 index 19b612664..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_team_discussion_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubTeamDiscussionComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_identifier": 42, - "discussion_id": 123456, - "organization_name": "example-org", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_team_discussion_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_team_discussion_comment_example_call_tool.py deleted file mode 100644 index 8b178de73..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_team_discussion_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubTeamDiscussionComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_identifier': 42, - 'discussion_id': 123456, - 'organization_name': 'example-org', - 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_token_workflow_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_token_workflow_permissions_example_call_tool.js deleted file mode 100644 index 98f20de6b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_token_workflow_permissions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubTokenWorkflowPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_token_workflow_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_token_workflow_permissions_example_call_tool.py deleted file mode 100644 index 97462799c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_token_workflow_permissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubTokenWorkflowPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_user_hovercard_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_user_hovercard_info_example_call_tool.js deleted file mode 100644 index f510f8ce5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_user_hovercard_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubUserHovercardInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_username": "octocat", - "additional_info_type": "repository", - "subject_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_user_hovercard_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_user_hovercard_info_example_call_tool.py deleted file mode 100644 index f35ca6900..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_user_hovercard_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubUserHovercardInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_username': 'octocat', 'additional_info_type': 'repository', 'subject_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_user_info_example_call_tool.js deleted file mode 100644 index d36839bb7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_user_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_username": "octocat" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_user_info_example_call_tool.py deleted file mode 100644 index f624826c2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_user_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_username': 'octocat' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_user_installation_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_user_installation_example_call_tool.js deleted file mode 100644 index dcf413f81..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_user_installation_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubUserInstallation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_user_installation_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_user_installation_example_call_tool.py deleted file mode 100644 index 7d3db9300..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_user_installation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubUserInstallation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_user_profile_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_user_profile_example_call_tool.js deleted file mode 100644 index e79f5a5e7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_user_profile_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubUserProfile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_user_profile_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_user_profile_example_call_tool.py deleted file mode 100644 index 8098756df..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_user_profile_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubUserProfile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_user_stats_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_user_stats_example_call_tool.js deleted file mode 100644 index 71595ce8a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_user_stats_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubUserStats"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_user_stats_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_user_stats_example_call_tool.py deleted file mode 100644 index ffb1568b5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_user_stats_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubUserStats" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_webhook_delivery_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_webhook_delivery_example_call_tool.js deleted file mode 100644 index 83a73646c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_webhook_delivery_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubWebhookDelivery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hook_identifier": 12345, - "organization_name": "example-org", - "webhook_delivery_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_webhook_delivery_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_webhook_delivery_example_call_tool.py deleted file mode 100644 index 2f7c29418..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_webhook_delivery_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubWebhookDelivery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hook_identifier': 12345, 'organization_name': 'example-org', 'webhook_delivery_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_workflow_job_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_workflow_job_example_call_tool.js deleted file mode 100644 index 205025b5f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_workflow_job_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubWorkflowJob"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_identifier": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_workflow_job_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_workflow_job_example_call_tool.py deleted file mode 100644 index c8755913f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_workflow_job_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubWorkflowJob" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_identifier': 12345, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_workflow_run_attempt_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_workflow_run_attempt_example_call_tool.js deleted file mode 100644 index e4e1c0ed4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_workflow_run_attempt_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubWorkflowRunAttempt"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "workflow_attempt_number": 1, - "workflow_run_id": 123456, - "omit_pull_requests": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_workflow_run_attempt_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_workflow_run_attempt_example_call_tool.py deleted file mode 100644 index b91af38ba..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_workflow_run_attempt_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubWorkflowRunAttempt" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'workflow_attempt_number': 1, - 'workflow_run_id': 123456, - 'omit_pull_requests': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_workflow_run_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_github_workflow_run_example_call_tool.js deleted file mode 100644 index fcfa0245e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_workflow_run_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetGithubWorkflowRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "workflow_run_id": 12345, - "omit_pull_requests": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_github_workflow_run_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_github_workflow_run_example_call_tool.py deleted file mode 100644 index 81e221a17..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_github_workflow_run_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetGithubWorkflowRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'workflow_run_id': 12345, - 'omit_pull_requests': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_hooks_statistics_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_hooks_statistics_example_call_tool.js deleted file mode 100644 index 0353c9ecb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_hooks_statistics_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetHooksStatistics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_hooks_statistics_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_hooks_statistics_example_call_tool.py deleted file mode 100644 index 0c0150e88..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_hooks_statistics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetHooksStatistics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_issue_timeline_events_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_issue_timeline_events_example_call_tool.js deleted file mode 100644 index d176c136b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_issue_timeline_events_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetIssueTimelineEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_identifier": 42, - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_issue_timeline_events_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_issue_timeline_events_example_call_tool.py deleted file mode 100644 index 67993384a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_issue_timeline_events_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetIssueTimelineEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_identifier': 42, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_latest_github_pages_build_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_latest_github_pages_build_example_call_tool.js deleted file mode 100644 index 2c16c031b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_latest_github_pages_build_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetLatestGithubPagesBuild"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_latest_github_pages_build_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_latest_github_pages_build_example_call_tool.py deleted file mode 100644 index 10c867319..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_latest_github_pages_build_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetLatestGithubPagesBuild" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_latest_github_release_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_latest_github_release_example_call_tool.js deleted file mode 100644 index 7dc23662b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_latest_github_release_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetLatestGithubRelease"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_latest_github_release_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_latest_github_release_example_call_tool.py deleted file mode 100644 index 5995f9ea1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_latest_github_release_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetLatestGithubRelease" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_license_information_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_license_information_example_call_tool.js deleted file mode 100644 index 20ba3bcbc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_license_information_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetLicenseInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_license_information_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_license_information_example_call_tool.py deleted file mode 100644 index 0e1bc982a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_license_information_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetLicenseInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_milestone_statistics_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_milestone_statistics_example_call_tool.js deleted file mode 100644 index 4f6414517..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_milestone_statistics_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetMilestoneStatistics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_milestone_statistics_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_milestone_statistics_example_call_tool.py deleted file mode 100644 index 983e045e1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_milestone_statistics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetMilestoneStatistics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_octocat_ascii_art_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_octocat_ascii_art_example_call_tool.js deleted file mode 100644 index 2443865d2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_octocat_ascii_art_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOctocatAsciiArt"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "speech_bubble_text": "Hello, world!" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_octocat_ascii_art_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_octocat_ascii_art_example_call_tool.py deleted file mode 100644 index 733806b31..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_octocat_ascii_art_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOctocatAsciiArt" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'speech_bubble_text': 'Hello, world!' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_oidc_custom_sub_template_for_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_oidc_custom_sub_template_for_org_example_call_tool.js deleted file mode 100644 index f1a703623..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_oidc_custom_sub_template_for_org_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOidcCustomSubTemplateForOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_oidc_custom_sub_template_for_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_oidc_custom_sub_template_for_org_example_call_tool.py deleted file mode 100644 index 9e2620fe9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_oidc_custom_sub_template_for_org_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOidcCustomSubTemplateForOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_oidc_subject_claim_template_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_oidc_subject_claim_template_example_call_tool.js deleted file mode 100644 index 67f590b66..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_oidc_subject_claim_template_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOidcSubjectClaimTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "SampleOwner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_oidc_subject_claim_template_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_oidc_subject_claim_template_example_call_tool.py deleted file mode 100644 index 46529f7f4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_oidc_subject_claim_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOidcSubjectClaimTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', 'repository_owner': 'SampleOwner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_announcement_banner_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_org_announcement_banner_example_call_tool.js deleted file mode 100644 index 286531c6a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_announcement_banner_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOrgAnnouncementBanner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "ExampleOrg" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_announcement_banner_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_org_announcement_banner_example_call_tool.py deleted file mode 100644 index b5ea4568e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_announcement_banner_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOrgAnnouncementBanner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'ExampleOrg' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_audit_log_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_org_audit_log_example_call_tool.js deleted file mode 100644 index dac91c6c5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_audit_log_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOrgAuditLog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "event_order": "asc", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_audit_log_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_org_audit_log_example_call_tool.py deleted file mode 100644 index 9faf19b36..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_audit_log_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOrgAuditLog" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'event_order': 'asc', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_membership_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_org_membership_status_example_call_tool.js deleted file mode 100644 index 152d925cb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_membership_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOrgMembershipStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_membership_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_org_membership_status_example_call_tool.py deleted file mode 100644 index eaf4cbcf7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_membership_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOrgMembershipStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_pre_receive_hook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_org_pre_receive_hook_example_call_tool.js deleted file mode 100644 index 3ed1b9ee5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_pre_receive_hook_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOrgPreReceiveHook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "pre_receive_hook_unique_id": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_pre_receive_hook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_org_pre_receive_hook_example_call_tool.py deleted file mode 100644 index e881f5573..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_pre_receive_hook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOrgPreReceiveHook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'pre_receive_hook_unique_id': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_public_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_org_public_key_example_call_tool.js deleted file mode 100644 index e585602d1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_public_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOrgPublicKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_public_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_org_public_key_example_call_tool.py deleted file mode 100644 index f7c8bec5c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_public_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOrgPublicKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_runner_removal_token_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_org_runner_removal_token_example_call_tool.js deleted file mode 100644 index 94e79e0bb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_runner_removal_token_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOrgRunnerRemovalToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_runner_removal_token_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_org_runner_removal_token_example_call_tool.py deleted file mode 100644 index 57eab9e5d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_runner_removal_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOrgRunnerRemovalToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_secret_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_org_secret_info_example_call_tool.js deleted file mode 100644 index 54b0917ac..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_secret_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOrgSecretInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "organization_secret_name": "my-secret" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_secret_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_org_secret_info_example_call_tool.py deleted file mode 100644 index 00c8f927b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_secret_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOrgSecretInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'organization_secret_name': 'my-secret' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_self_hosted_runner_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_org_self_hosted_runner_example_call_tool.js deleted file mode 100644 index 07ca79244..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_self_hosted_runner_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOrgSelfHostedRunner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "runner_id": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_self_hosted_runner_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_org_self_hosted_runner_example_call_tool.py deleted file mode 100644 index aefdf1bc5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_self_hosted_runner_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOrgSelfHostedRunner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'runner_id': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_webhook_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_org_webhook_configuration_example_call_tool.js deleted file mode 100644 index 7989171fe..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_webhook_configuration_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOrgWebhookConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "webhook_hook_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_webhook_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_org_webhook_configuration_example_call_tool.py deleted file mode 100644 index 26dd18986..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_webhook_configuration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOrgWebhookConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'webhook_hook_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_webhook_details_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_org_webhook_details_example_call_tool.js deleted file mode 100644 index 90be8f0f9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_webhook_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOrgWebhookDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "webhook_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_org_webhook_details_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_org_webhook_details_example_call_tool.py deleted file mode 100644 index 28f320565..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_org_webhook_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOrgWebhookDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'webhook_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_organization_public_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_organization_public_key_example_call_tool.js deleted file mode 100644 index cab798794..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_organization_public_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOrganizationPublicKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_organization_public_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_organization_public_key_example_call_tool.py deleted file mode 100644 index 07c6822e1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_organization_public_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOrganizationPublicKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_organization_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_organization_variable_example_call_tool.js deleted file mode 100644 index feeb5f8d8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_organization_variable_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetOrganizationVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "variable_name": "API_KEY" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_organization_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_organization_variable_example_call_tool.py deleted file mode 100644 index 10ffad7c7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_organization_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetOrganizationVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'variable_name': 'API_KEY' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_pending_deployments_for_run_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_pending_deployments_for_run_example_call_tool.js deleted file mode 100644 index 139d00297..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_pending_deployments_for_run_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetPendingDeploymentsForRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "workflow_run_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_pending_deployments_for_run_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_pending_deployments_for_run_example_call_tool.py deleted file mode 100644 index 90cd219d4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_pending_deployments_for_run_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetPendingDeploymentsForRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'workflow_run_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_pre_receive_env_download_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_pre_receive_env_download_status_example_call_tool.js deleted file mode 100644 index d54e2e62b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_pre_receive_env_download_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetPreReceiveEnvDownloadStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pre_receive_environment_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_pre_receive_env_download_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_pre_receive_env_download_status_example_call_tool.py deleted file mode 100644 index 0e098bd2a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_pre_receive_env_download_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetPreReceiveEnvDownloadStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pre_receive_environment_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_pre_receive_hook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_pre_receive_hook_example_call_tool.js deleted file mode 100644 index d1c20714f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_pre_receive_hook_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetPreReceiveHook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pre_receive_hook_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_pre_receive_hook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_pre_receive_hook_example_call_tool.py deleted file mode 100644 index 8187b238c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_pre_receive_hook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetPreReceiveHook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pre_receive_hook_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_pre_receive_hook_for_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_pre_receive_hook_for_repo_example_call_tool.js deleted file mode 100644 index e0016db02..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_pre_receive_hook_for_repo_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetPreReceiveHookForRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pre_receive_hook_id": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_pre_receive_hook_for_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_pre_receive_hook_for_repo_example_call_tool.py deleted file mode 100644 index 3d6b9ec08..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_pre_receive_hook_for_repo_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetPreReceiveHookForRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pre_receive_hook_id': 123, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_project_card_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_project_card_example_call_tool.js deleted file mode 100644 index aa79fabf4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_project_card_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetProjectCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_card_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_project_card_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_project_card_example_call_tool.py deleted file mode 100644 index ac0f3a282..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_project_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetProjectCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_card_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_public_ssh_key_details_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_public_ssh_key_details_example_call_tool.js deleted file mode 100644 index d18bbb324..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_public_ssh_key_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetPublicSshKeyDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ssh_key_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_public_ssh_key_details_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_public_ssh_key_details_example_call_tool.py deleted file mode 100644 index 4f1be2ac6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_public_ssh_key_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetPublicSshKeyDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ssh_key_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_public_ssh_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_public_ssh_keys_example_call_tool.js deleted file mode 100644 index 8ffa47d30..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_public_ssh_keys_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetPublicSshKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_public_ssh_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_public_ssh_keys_example_call_tool.py deleted file mode 100644 index 4970b6de3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_public_ssh_keys_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetPublicSshKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat', 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_pull_request_details_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_pull_request_details_example_call_tool.js deleted file mode 100644 index 0c29a9220..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_pull_request_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetPullRequestDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 42, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_pull_request_details_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_pull_request_details_example_call_tool.py deleted file mode 100644 index 5c48cf151..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_pull_request_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetPullRequestDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 42, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_pull_request_review_protection_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_pull_request_review_protection_example_call_tool.js deleted file mode 100644 index d12691a3e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_pull_request_review_protection_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetPullRequestReviewProtection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_pull_request_review_protection_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_pull_request_review_protection_example_call_tool.py deleted file mode 100644 index 0ec2e84ef..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_pull_request_review_protection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetPullRequestReviewProtection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_pull_request_statistics_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_pull_request_statistics_example_call_tool.js deleted file mode 100644 index ffa4f986b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_pull_request_statistics_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetPullRequestStatistics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_pull_request_statistics_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_pull_request_statistics_example_call_tool.py deleted file mode 100644 index 863978d9a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_pull_request_statistics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetPullRequestStatistics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_random_github_zen_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_random_github_zen_example_call_tool.js deleted file mode 100644 index 812214efd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_random_github_zen_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRandomGithubZen"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_random_github_zen_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_random_github_zen_example_call_tool.py deleted file mode 100644 index 96455db37..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_random_github_zen_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRandomGithubZen" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_remove_token_for_enterprise_runner_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_remove_token_for_enterprise_runner_example_call_tool.js deleted file mode 100644 index 17262a242..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_remove_token_for_enterprise_runner_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRemoveTokenForEnterpriseRunner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_remove_token_for_enterprise_runner_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_remove_token_for_enterprise_runner_example_call_tool.py deleted file mode 100644 index c793d02ee..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_remove_token_for_enterprise_runner_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRemoveTokenForEnterpriseRunner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_autolinks_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repo_autolinks_example_call_tool.js deleted file mode 100644 index fbd345c83..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_autolinks_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepoAutolinks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_autolinks_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repo_autolinks_example_call_tool.py deleted file mode 100644 index ebdd787dd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_autolinks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepoAutolinks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'results_page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_code_frequency_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repo_code_frequency_example_call_tool.js deleted file mode 100644 index cb9e7b759..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_code_frequency_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepoCodeFrequency"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_code_frequency_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repo_code_frequency_example_call_tool.py deleted file mode 100644 index 9b0b68771..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_code_frequency_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepoCodeFrequency" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_commit_participation_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repo_commit_participation_example_call_tool.js deleted file mode 100644 index 0aaee281a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_commit_participation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepoCommitParticipation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_commit_participation_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repo_commit_participation_example_call_tool.py deleted file mode 100644 index d9def654a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_commit_participation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepoCommitParticipation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_license_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repo_license_example_call_tool.js deleted file mode 100644 index 0bacfe8cf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_license_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepoLicense"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_license_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repo_license_example_call_tool.py deleted file mode 100644 index f8812c372..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_license_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepoLicense" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repo_notifications_example_call_tool.js deleted file mode 100644 index 7e356ac3c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_notifications_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepoNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "include_read_notifications": true, - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repo_notifications_example_call_tool.py deleted file mode 100644 index 900088411..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_notifications_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepoNotifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'include_read_notifications': True, - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_public_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repo_public_key_example_call_tool.js deleted file mode 100644 index 393d66db1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_public_key_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepoPublicKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_public_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repo_public_key_example_call_tool.py deleted file mode 100644 index 9cb1b88a3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_public_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepoPublicKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_secret_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repo_secret_info_example_call_tool.js deleted file mode 100644 index ad2483d08..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_secret_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepoSecretInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "secret_name": "MY_SECRET" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_secret_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repo_secret_info_example_call_tool.py deleted file mode 100644 index d9d2c9ba7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_secret_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepoSecretInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'secret_name': 'MY_SECRET' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repo_subscription_example_call_tool.js deleted file mode 100644 index 021aaffb8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_subscription_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepoSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repo_subscription_example_call_tool.py deleted file mode 100644 index c5b68dfc4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepoSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_topics_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repo_topics_example_call_tool.js deleted file mode 100644 index 4a7f3b1aa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_topics_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepoTopics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_topics_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repo_topics_example_call_tool.py deleted file mode 100644 index 82a20986a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_topics_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepoTopics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_webhook_config_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repo_webhook_config_example_call_tool.js deleted file mode 100644 index 4026c7111..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_webhook_config_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepoWebhookConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hook_identifier": 123456, - "repository_name": "sample-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_webhook_config_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repo_webhook_config_example_call_tool.py deleted file mode 100644 index b787dc59b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_webhook_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepoWebhookConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hook_identifier': 123456, 'repository_name': 'sample-repo', 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repo_webhook_example_call_tool.js deleted file mode 100644 index 777f36e02..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_webhook_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepoWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "user123", - "webhook_id": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repo_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repo_webhook_example_call_tool.py deleted file mode 100644 index 64b9b2c8f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repo_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepoWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', 'repository_owner': 'user123', 'webhook_id': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repository_autolink_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repository_autolink_example_call_tool.js deleted file mode 100644 index 5ff6f2ff3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repository_autolink_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepositoryAutolink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "autolink_id": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repository_autolink_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repository_autolink_example_call_tool.py deleted file mode 100644 index c1c577098..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repository_autolink_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepositoryAutolink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'autolink_id': 12345, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repository_readme_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repository_readme_example_call_tool.js deleted file mode 100644 index 4952bba2a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repository_readme_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepositoryReadme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user", - "commit_branch_tag_name": "main" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repository_readme_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repository_readme_example_call_tool.py deleted file mode 100644 index 03cec0150..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repository_readme_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepositoryReadme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'commit_branch_tag_name': 'main' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repository_secret_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repository_secret_info_example_call_tool.js deleted file mode 100644 index d20590d42..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repository_secret_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepositorySecretInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "secret_name": "MY_SECRET" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repository_secret_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repository_secret_info_example_call_tool.py deleted file mode 100644 index 6b9765d5c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repository_secret_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepositorySecretInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'secret_name': 'MY_SECRET' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repository_statistics_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repository_statistics_example_call_tool.js deleted file mode 100644 index 913fa6d50..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repository_statistics_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepositoryStatistics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repository_statistics_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repository_statistics_example_call_tool.py deleted file mode 100644 index e069b5e68..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repository_statistics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepositoryStatistics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_repository_tag_protection_states_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_repository_tag_protection_states_example_call_tool.js deleted file mode 100644 index b1473edc4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repository_tag_protection_states_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRepositoryTagProtectionStates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_repository_tag_protection_states_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_repository_tag_protection_states_example_call_tool.py deleted file mode 100644 index ffaa7963d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_repository_tag_protection_states_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRepositoryTagProtectionStates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_requested_reviewers_for_pr_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_requested_reviewers_for_pr_example_call_tool.js deleted file mode 100644 index 6ae0f6f2e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_requested_reviewers_for_pr_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRequestedReviewersForPr"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 42, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_requested_reviewers_for_pr_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_requested_reviewers_for_pr_example_call_tool.py deleted file mode 100644 index 338c7bc87..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_requested_reviewers_for_pr_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRequestedReviewersForPr" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 42, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_required_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_required_workflow_example_call_tool.js deleted file mode 100644 index 743ba0c0e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_required_workflow_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetRequiredWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "workflow_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_required_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_required_workflow_example_call_tool.py deleted file mode 100644 index c7e3004d3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_required_workflow_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetRequiredWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'workflow_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_review_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_review_comments_example_call_tool.js deleted file mode 100644 index a2e8d887e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_review_comments_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetReviewComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 42, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "review_id": 101 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_review_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_review_comments_example_call_tool.py deleted file mode 100644 index 01dcdd945..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_review_comments_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetReviewComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 42, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'review_id': 101 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_sarif_analysis_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_sarif_analysis_info_example_call_tool.js deleted file mode 100644 index 40c357cbb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_sarif_analysis_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetSarifAnalysisInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "sarif_id": "12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_sarif_analysis_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_sarif_analysis_info_example_call_tool.py deleted file mode 100644 index 6df49edcf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_sarif_analysis_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetSarifAnalysisInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'sarif_id': '12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_scim_group_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_scim_group_info_example_call_tool.js deleted file mode 100644 index 895946d35..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_scim_group_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetScimGroupInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "scim_group_identifier": "group123", - "exclude_attributes": "members,roles" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_scim_group_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_scim_group_info_example_call_tool.py deleted file mode 100644 index 955573286..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_scim_group_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetScimGroupInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'scim_group_identifier': 'group123', 'exclude_attributes': 'members,roles' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_scim_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_scim_user_info_example_call_tool.js deleted file mode 100644 index 22636d19c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_scim_user_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetScimUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "scim_user_identifier": "user_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_scim_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_scim_user_info_example_call_tool.py deleted file mode 100644 index f9d6bb69f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_scim_user_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetScimUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'scim_user_identifier': 'user_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_security_analysis_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_security_analysis_settings_example_call_tool.js deleted file mode 100644 index cbcb396f1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_security_analysis_settings_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetSecurityAnalysisSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "example-enterprise" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_security_analysis_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_security_analysis_settings_example_call_tool.py deleted file mode 100644 index 2531e3716..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_security_analysis_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetSecurityAnalysisSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'example-enterprise' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_group_example_call_tool.js deleted file mode 100644 index 596977406..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_group_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetSelfHostedRunnerGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "runner_group_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_group_example_call_tool.py deleted file mode 100644 index aed997315..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetSelfHostedRunnerGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'runner_group_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_group_for_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_group_for_org_example_call_tool.js deleted file mode 100644 index cc37cd6d0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_group_for_org_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetSelfHostedRunnerGroupForOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "runner_group_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_group_for_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_group_for_org_example_call_tool.py deleted file mode 100644 index eb6a8860c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_group_for_org_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetSelfHostedRunnerGroupForOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'runner_group_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_info_example_call_tool.js deleted file mode 100644 index cca9fc385..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetSelfHostedRunnerInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "runner_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_info_example_call_tool.py deleted file mode 100644 index 9242b1cd2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_self_hosted_runner_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetSelfHostedRunnerInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'runner_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_ssh_signing_key_details_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_ssh_signing_key_details_example_call_tool.js deleted file mode 100644 index aad057704..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_ssh_signing_key_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetSshSigningKeyDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ssh_signing_key_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_ssh_signing_key_details_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_ssh_signing_key_details_example_call_tool.py deleted file mode 100644 index 354fc2bb2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_ssh_signing_key_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetSshSigningKeyDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ssh_signing_key_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_team_by_slug_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_team_by_slug_example_call_tool.js deleted file mode 100644 index aa5326f2f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_team_by_slug_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetTeamBySlug"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_team_by_slug_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_team_by_slug_example_call_tool.py deleted file mode 100644 index 64bdce227..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_team_by_slug_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetTeamBySlug" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_team_discussion_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_team_discussion_example_call_tool.js deleted file mode 100644 index d172f4ed4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_team_discussion_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetTeamDiscussion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "discussion_identifier_number": 42, - "organization_name": "example-org", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_team_discussion_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_team_discussion_example_call_tool.py deleted file mode 100644 index 8f89b1d48..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_team_discussion_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetTeamDiscussion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'discussion_identifier_number': 42, 'organization_name': 'example-org', 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_team_discussion_reactions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_team_discussion_reactions_example_call_tool.js deleted file mode 100644 index 4c138e5a5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_team_discussion_reactions_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetTeamDiscussionReactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "discussion_identifier": 42, - "organization_name": "example-org", - "team_slug": "dev-team", - "reaction_type": "+1", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_team_discussion_reactions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_team_discussion_reactions_example_call_tool.py deleted file mode 100644 index 71331d913..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_team_discussion_reactions_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetTeamDiscussionReactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'discussion_identifier': 42, - 'organization_name': 'example-org', - 'team_slug': 'dev-team', - 'reaction_type': '+1', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_teams_with_push_access_to_branch_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_teams_with_push_access_to_branch_example_call_tool.js deleted file mode 100644 index 7a5dc8f11..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_teams_with_push_access_to_branch_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetTeamsWithPushAccessToBranch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_teams_with_push_access_to_branch_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_teams_with_push_access_to_branch_example_call_tool.py deleted file mode 100644 index 18e7f3572..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_teams_with_push_access_to_branch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetTeamsWithPushAccessToBranch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_gists_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_user_gists_example_call_tool.js deleted file mode 100644 index cce1ab876..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_gists_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetUserGists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_gists_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_user_gists_example_call_tool.py deleted file mode 100644 index f508e7fd5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_gists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetUserGists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat', 'page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_gpg_key_details_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_user_gpg_key_details_example_call_tool.js deleted file mode 100644 index af189ae28..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_gpg_key_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetUserGpgKeyDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gpg_key_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_gpg_key_details_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_user_gpg_key_details_example_call_tool.py deleted file mode 100644 index d2ed0e7c3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_gpg_key_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetUserGpgKeyDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gpg_key_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_org_events_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_user_org_events_example_call_tool.js deleted file mode 100644 index d4827d906..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_org_events_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetUserOrgEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_username": "johnDoe", - "organization_name": "exampleOrg", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_org_events_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_user_org_events_example_call_tool.py deleted file mode 100644 index 8b1a83545..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_org_events_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetUserOrgEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_username': 'johnDoe', - 'organization_name': 'exampleOrg', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_org_membership_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_user_org_membership_status_example_call_tool.js deleted file mode 100644 index 8c03cc91c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_org_membership_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetUserOrgMembershipStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123", - "organization_name": "OpenAI" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_org_membership_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_user_org_membership_status_example_call_tool.py deleted file mode 100644 index 3fb6fda96..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_org_membership_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetUserOrgMembershipStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123', 'organization_name': 'OpenAI' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_project_permission_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_user_project_permission_example_call_tool.js deleted file mode 100644 index 221c08ef4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_project_permission_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetUserProjectPermission"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe", - "project_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_project_permission_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_user_project_permission_example_call_tool.py deleted file mode 100644 index 83b5df1f0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_project_permission_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetUserProjectPermission" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe', 'project_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_received_github_events_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_user_received_github_events_example_call_tool.js deleted file mode 100644 index e83c72edb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_received_github_events_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetUserReceivedGithubEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat", - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_received_github_events_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_user_received_github_events_example_call_tool.py deleted file mode 100644 index 4756777ec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_received_github_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetUserReceivedGithubEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat', 'result_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_repos_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_user_repos_example_call_tool.js deleted file mode 100644 index 998a24b4a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_repos_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetUserRepos"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat", - "page_number": 1, - "results_per_page": 10, - "sort_order": "asc", - "sort_results_by": "created" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_repos_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_user_repos_example_call_tool.py deleted file mode 100644 index 85e04b98a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_repos_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetUserRepos" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat', - 'page_number': 1, - 'results_per_page': 10, - 'sort_order': 'asc', - 'sort_results_by': 'created' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_team_membership_in_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_user_team_membership_in_org_example_call_tool.js deleted file mode 100644 index 5598193c6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_team_membership_in_org_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetUserTeamMembershipInOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_username": "johnDoe", - "organization_name": "OpenAI", - "team_slug": "developers" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_user_team_membership_in_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_user_team_membership_in_org_example_call_tool.py deleted file mode 100644 index f329acadd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_user_team_membership_in_org_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetUserTeamMembershipInOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_username': 'johnDoe', 'organization_name': 'OpenAI', 'team_slug': 'developers' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_webhook_delivery_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_webhook_delivery_example_call_tool.js deleted file mode 100644 index 6893628e5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_webhook_delivery_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetWebhookDelivery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hook_identifier": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "webhook_delivery_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_webhook_delivery_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_webhook_delivery_example_call_tool.py deleted file mode 100644 index bbccc4c57..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_webhook_delivery_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetWebhookDelivery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hook_identifier': 12345, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'webhook_delivery_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_webhook_event_deliveries_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_webhook_event_deliveries_example_call_tool.js deleted file mode 100644 index 4ffa56f3a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_webhook_event_deliveries_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetWebhookEventDeliveries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "webhook_hook_id": 12345, - "include_redeliveries": true, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_webhook_event_deliveries_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_webhook_event_deliveries_example_call_tool.py deleted file mode 100644 index 924ad51a4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_webhook_event_deliveries_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetWebhookEventDeliveries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'webhook_hook_id': 12345, - 'include_redeliveries': True, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_workflow_access_level_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_workflow_access_level_example_call_tool.js deleted file mode 100644 index c26fc7cb4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_workflow_access_level_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetWorkflowAccessLevel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_workflow_access_level_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_workflow_access_level_example_call_tool.py deleted file mode 100644 index be08ca374..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_workflow_access_level_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetWorkflowAccessLevel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_workflow_artifact_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_workflow_artifact_example_call_tool.js deleted file mode 100644 index 899513887..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_workflow_artifact_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetWorkflowArtifact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "artifact_identifier": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_workflow_artifact_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_workflow_artifact_example_call_tool.py deleted file mode 100644 index a804c1957..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_workflow_artifact_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetWorkflowArtifact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'artifact_identifier': 12345, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/get_workflow_run_attempt_logs_url_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/get_workflow_run_attempt_logs_url_example_call_tool.js deleted file mode 100644 index dc14ddba6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_workflow_run_attempt_logs_url_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GetWorkflowRunAttemptLogsUrl"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "workflow_attempt_number": 1, - "workflow_run_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/get_workflow_run_attempt_logs_url_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/get_workflow_run_attempt_logs_url_example_call_tool.py deleted file mode 100644 index dc50a149b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/get_workflow_run_attempt_logs_url_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GetWorkflowRunAttemptLogsUrl" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'workflow_attempt_number': 1, - 'workflow_run_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/github_create_issue_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/github_create_issue_comment_example_call_tool.js deleted file mode 100644 index 259722620..000000000 --- a/public/examples/integrations/mcp-servers/github_api/github_create_issue_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GithubCreateIssueComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_content": "This is a sample comment.", - "issue_identifier": 42, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/github_create_issue_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/github_create_issue_comment_example_call_tool.py deleted file mode 100644 index bc8a63769..000000000 --- a/public/examples/integrations/mcp-servers/github_api/github_create_issue_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GithubCreateIssueComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_content': 'This is a sample comment.', - 'issue_identifier': 42, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/github_manage_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/github_manage_environment_example_call_tool.js deleted file mode 100644 index acba5d1f1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/github_manage_environment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GithubManageEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "sample-repo", - "environment_name": "production", - "request_body": "{\"protection_rules\": {\"required_reviewers\": 2}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/github_manage_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/github_manage_environment_example_call_tool.py deleted file mode 100644 index b27346153..000000000 --- a/public/examples/integrations/mcp-servers/github_api/github_manage_environment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GithubManageEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'sample-repo', - 'environment_name': 'production', - 'request_body': '{"protection_rules": {"required_reviewers": 2}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/github_rerun_workflow_job_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/github_rerun_workflow_job_example_call_tool.js deleted file mode 100644 index bb16a4adc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/github_rerun_workflow_job_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GithubRerunWorkflowJob"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_identifier": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "enable_debug_logging": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/github_rerun_workflow_job_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/github_rerun_workflow_job_example_call_tool.py deleted file mode 100644 index 4292c5f9d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/github_rerun_workflow_job_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GithubRerunWorkflowJob" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_identifier': 12345, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'enable_debug_logging': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/github_search_users_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/github_search_users_example_call_tool.js deleted file mode 100644 index 945a5c36d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/github_search_users_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GithubSearchUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query": "language:python followers:>100", - "page_number": 1, - "results_per_page": 10, - "sort_by_criterion": "followers", - "sort_order": "desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/github_search_users_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/github_search_users_example_call_tool.py deleted file mode 100644 index c2a411d02..000000000 --- a/public/examples/integrations/mcp-servers/github_api/github_search_users_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GithubSearchUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query': 'language:python followers:>100', - 'page_number': 1, - 'results_per_page': 10, - 'sort_by_criterion': 'followers', - 'sort_order': 'desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/grant_push_access_github_branch_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/grant_push_access_github_branch_example_call_tool.js deleted file mode 100644 index 22560bac7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/grant_push_access_github_branch_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.GrantPushAccessGithubBranch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "branch_name": "main", - "request_body": "{\"users\":[\"user1\",\"user2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/grant_push_access_github_branch_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/grant_push_access_github_branch_example_call_tool.py deleted file mode 100644 index 45539c64a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/grant_push_access_github_branch_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.GrantPushAccessGithubBranch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'branch_name': 'main', - 'request_body': '{"users":["user1","user2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/initiate_user_migration_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/initiate_user_migration_example_call_tool.js deleted file mode 100644 index e4db3d71c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/initiate_user_migration_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.InitiateUserMigration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_list": [ - "repo1", - "repo2", - "repo3" - ], - "exclude_attachments": false, - "exclude_metadata": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/initiate_user_migration_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/initiate_user_migration_example_call_tool.py deleted file mode 100644 index 46dda907d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/initiate_user_migration_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.InitiateUserMigration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_list': ['repo1', 'repo2', 'repo3'], - 'exclude_attachments': False, - 'exclude_metadata': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/label_runner_for_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/label_runner_for_repo_example_call_tool.js deleted file mode 100644 index 8e9b7764b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/label_runner_for_repo_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.LabelRunnerForRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_labels_to_add": [ - "label1", - "label2" - ], - "repository_name": "example-repo", - "repository_owner": "example-owner", - "runner_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/label_runner_for_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/label_runner_for_repo_example_call_tool.py deleted file mode 100644 index 5019ec494..000000000 --- a/public/examples/integrations/mcp-servers/github_api/label_runner_for_repo_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.LabelRunnerForRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_labels_to_add': ['label1', 'label2'], - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'runner_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/link_external_group_to_team_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/link_external_group_to_team_example_call_tool.js deleted file mode 100644 index 60f1c2824..000000000 --- a/public/examples/integrations/mcp-servers/github_api/link_external_group_to_team_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.LinkExternalGroupToTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "external_group_id": 12345, - "organization_name": "example-org", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/link_external_group_to_team_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/link_external_group_to_team_example_call_tool.py deleted file mode 100644 index 31dab6687..000000000 --- a/public/examples/integrations/mcp-servers/github_api/link_external_group_to_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.LinkExternalGroupToTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'external_group_id': 12345, 'organization_name': 'example-org', 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_actions_enabled_orgs_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_actions_enabled_orgs_enterprise_example_call_tool.js deleted file mode 100644 index 25f5b184a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_actions_enabled_orgs_enterprise_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListActionsEnabledOrgsEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_actions_enabled_orgs_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_actions_enabled_orgs_enterprise_example_call_tool.py deleted file mode 100644 index e581d7f11..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_actions_enabled_orgs_enterprise_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListActionsEnabledOrgsEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_actions_enabled_repos_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_actions_enabled_repos_example_call_tool.js deleted file mode 100644 index 40a8f4683..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_actions_enabled_repos_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListActionsEnabledRepos"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "result_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_actions_enabled_repos_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_actions_enabled_repos_example_call_tool.py deleted file mode 100644 index 73a3afcce..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_actions_enabled_repos_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListActionsEnabledRepos" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'result_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_branches_for_commit_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_branches_for_commit_example_call_tool.js deleted file mode 100644 index cf0345ac0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_branches_for_commit_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListBranchesForCommit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "commit_sha": "abc123def456", - "repository_name": "sample-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_branches_for_commit_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_branches_for_commit_example_call_tool.py deleted file mode 100644 index 43ab59ac0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_branches_for_commit_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListBranchesForCommit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'commit_sha': 'abc123def456', 'repository_name': 'sample-repo', 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_check_run_annotations_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_check_run_annotations_example_call_tool.js deleted file mode 100644 index 1ea9eaccb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_check_run_annotations_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListCheckRunAnnotations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "check_run_identifier": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_check_run_annotations_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_check_run_annotations_example_call_tool.py deleted file mode 100644 index 20553d20e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_check_run_annotations_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListCheckRunAnnotations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'check_run_identifier': 12345, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_check_runs_for_commit_ref_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_check_runs_for_commit_ref_example_call_tool.js deleted file mode 100644 index c3d5bf96f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_check_runs_for_commit_ref_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListCheckRunsForCommitRef"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "commit_reference": "abc123def456", - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "application_id": 12345, - "check_run_status": "completed", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_check_runs_for_commit_ref_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_check_runs_for_commit_ref_example_call_tool.py deleted file mode 100644 index 2d67584af..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_check_runs_for_commit_ref_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListCheckRunsForCommitRef" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'commit_reference': 'abc123def456', - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'application_id': 12345, - 'check_run_status': 'completed', - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_check_suites_for_ref_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_check_suites_for_ref_example_call_tool.js deleted file mode 100644 index 6644c8b98..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_check_suites_for_ref_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListCheckSuitesForRef"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "commit_reference": "abc123def456", - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "github_app_id_filter": 12345, - "results_page_number": 1, - "results_per_page": 10, - "specific_check_name": "CI Check" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_check_suites_for_ref_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_check_suites_for_ref_example_call_tool.py deleted file mode 100644 index ede0f8ddc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_check_suites_for_ref_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListCheckSuitesForRef" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'commit_reference': 'abc123def456', - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'github_app_id_filter': 12345, - 'results_page_number': 1, - 'results_per_page': 10, - 'specific_check_name': 'CI Check' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_child_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_child_teams_example_call_tool.js deleted file mode 100644 index 48499e5ec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_child_teams_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListChildTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "team_identifier_slug": "dev-team", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_child_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_child_teams_example_call_tool.py deleted file mode 100644 index d2f67a188..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_child_teams_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListChildTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'team_identifier_slug': 'dev-team', - 'page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_code_scanning_alert_instances_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_code_scanning_alert_instances_example_call_tool.js deleted file mode 100644 index 5c1bc9d20..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_code_scanning_alert_instances_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListCodeScanningAlertInstances"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alert_identifier": 12345, - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "git_reference": "refs/heads/main", - "page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_code_scanning_alert_instances_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_code_scanning_alert_instances_example_call_tool.py deleted file mode 100644 index 41388bb03..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_code_scanning_alert_instances_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListCodeScanningAlertInstances" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alert_identifier': 12345, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'git_reference': 'refs/heads/main', - 'page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_code_scanning_alerts_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_code_scanning_alerts_example_call_tool.js deleted file mode 100644 index f195aa081..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_code_scanning_alerts_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListCodeScanningAlerts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "alert_state_filter": "open", - "filter_by_severity": "high", - "results_page_number": 1, - "results_per_page": 50, - "sort_by_property": "created", - "sort_direction": "desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_code_scanning_alerts_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_code_scanning_alerts_example_call_tool.py deleted file mode 100644 index 63d87092e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_code_scanning_alerts_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListCodeScanningAlerts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'alert_state_filter': 'open', - 'filter_by_severity': 'high', - 'results_page_number': 1, - 'results_per_page': 50, - 'sort_by_property': 'created', - 'sort_direction': 'desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_codeowners_errors_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_codeowners_errors_example_call_tool.js deleted file mode 100644 index f6ab94e6f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_codeowners_errors_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListCodeownersErrors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "version_reference": "main" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_codeowners_errors_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_codeowners_errors_example_call_tool.py deleted file mode 100644 index 2bf52fbc7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_codeowners_errors_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListCodeownersErrors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'version_reference': 'main' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_commit_comment_reactions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_commit_comment_reactions_example_call_tool.js deleted file mode 100644 index d9591b643..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_commit_comment_reactions_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListCommitCommentReactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "reaction_type": "thumbs_up", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_commit_comment_reactions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_commit_comment_reactions_example_call_tool.py deleted file mode 100644 index 019b2c02d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_commit_comment_reactions_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListCommitCommentReactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': 12345, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'reaction_type': 'thumbs_up', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_commit_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_commit_comments_example_call_tool.js deleted file mode 100644 index b276ea198..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_commit_comments_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListCommitComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "commit_sha": "abc123def456", - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_commit_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_commit_comments_example_call_tool.py deleted file mode 100644 index 1bfebc35e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_commit_comments_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListCommitComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'commit_sha': 'abc123def456', - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_dependabot_alerts_for_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_dependabot_alerts_for_organization_example_call_tool.js deleted file mode 100644 index 5846eb8bb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_dependabot_alerts_for_organization_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListDependabotAlertsForOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "alert_severity_filter": "high,critical", - "results_per_page": 50, - "sort_by_property": "created", - "sort_direction": "desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_dependabot_alerts_for_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_dependabot_alerts_for_organization_example_call_tool.py deleted file mode 100644 index 84fbd743d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_dependabot_alerts_for_organization_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListDependabotAlertsForOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'alert_severity_filter': 'high,critical', - 'results_per_page': 50, - 'sort_by_property': 'created', - 'sort_direction': 'desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_dependabot_alerts_for_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_dependabot_alerts_for_repo_example_call_tool.js deleted file mode 100644 index cc8100b60..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_dependabot_alerts_for_repo_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListDependabotAlertsForRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "alert_states_filter": "open", - "results_per_page": 50, - "sort_by": "created", - "sort_results_direction": "desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_dependabot_alerts_for_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_dependabot_alerts_for_repo_example_call_tool.py deleted file mode 100644 index fc8c4e75f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_dependabot_alerts_for_repo_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListDependabotAlertsForRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'alert_states_filter': 'open', - 'results_per_page': 50, - 'sort_by': 'created', - 'sort_results_direction': 'desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_deployment_branch_policies_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_deployment_branch_policies_example_call_tool.js deleted file mode 100644 index d96c4a253..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_deployment_branch_policies_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListDeploymentBranchPolicies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_name": "production", - "repository_name": "my-repo", - "repository_owner": "my-org", - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_deployment_branch_policies_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_deployment_branch_policies_example_call_tool.py deleted file mode 100644 index cbcac2089..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_deployment_branch_policies_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListDeploymentBranchPolicies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_name': 'production', - 'repository_name': 'my-repo', - 'repository_owner': 'my-org', - 'result_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_enterprise_code_scanning_alerts_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_enterprise_code_scanning_alerts_example_call_tool.js deleted file mode 100644 index 454c01ea8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_enterprise_code_scanning_alerts_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListEnterpriseCodeScanningAlerts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "alert_state_filter": "open", - "results_page_number": 1, - "results_per_page": 50, - "sort_direction": "desc", - "sort_property": "created" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_enterprise_code_scanning_alerts_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_enterprise_code_scanning_alerts_example_call_tool.py deleted file mode 100644 index fe98f517d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_enterprise_code_scanning_alerts_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListEnterpriseCodeScanningAlerts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', - 'alert_state_filter': 'open', - 'results_page_number': 1, - 'results_per_page': 50, - 'sort_direction': 'desc', - 'sort_property': 'created' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_enterprise_dependabot_alerts_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_enterprise_dependabot_alerts_example_call_tool.js deleted file mode 100644 index cb91b97a4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_enterprise_dependabot_alerts_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListEnterpriseDependabotAlerts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "alert_severities": "high,critical", - "alert_state_filter": "open", - "results_per_page": 50, - "sort_direction": "desc", - "sort_property_for_alerts": "created" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_enterprise_dependabot_alerts_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_enterprise_dependabot_alerts_example_call_tool.py deleted file mode 100644 index ff19b18c3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_enterprise_dependabot_alerts_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListEnterpriseDependabotAlerts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', - 'alert_severities': 'high,critical', - 'alert_state_filter': 'open', - 'results_per_page': 50, - 'sort_direction': 'desc', - 'sort_property_for_alerts': 'created' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_external_groups_for_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_external_groups_for_org_example_call_tool.js deleted file mode 100644 index 81117aa0d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_external_groups_for_org_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListExternalGroupsForOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "group_name_filter": "dev", - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_external_groups_for_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_external_groups_for_org_example_call_tool.py deleted file mode 100644 index 6d2a55c75..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_external_groups_for_org_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListExternalGroupsForOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'group_name_filter': 'dev', 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_followed_users_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_followed_users_example_call_tool.js deleted file mode 100644 index 2c02f93b7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_followed_users_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListFollowedUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_followed_users_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_followed_users_example_call_tool.py deleted file mode 100644 index 94c47f0eb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_followed_users_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListFollowedUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_followers_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_followers_example_call_tool.js deleted file mode 100644 index 3a7700e98..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_followers_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListFollowers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_followers_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_followers_example_call_tool.py deleted file mode 100644 index 62d9efb3c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_followers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListFollowers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_gist_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_gist_comments_example_call_tool.js deleted file mode 100644 index c42076a93..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_gist_comments_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGistComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gist_identifier": "abc123", - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_gist_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_gist_comments_example_call_tool.py deleted file mode 100644 index 9251721d1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_gist_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGistComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gist_identifier': 'abc123', 'result_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_gist_commits_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_gist_commits_example_call_tool.js deleted file mode 100644 index 24ecbbe9e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_gist_commits_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGistCommits"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gist_identifier": "abc123", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_gist_commits_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_gist_commits_example_call_tool.py deleted file mode 100644 index fb9c9e030..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_gist_commits_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGistCommits" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gist_identifier': 'abc123', 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_gist_forks_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_gist_forks_example_call_tool.js deleted file mode 100644 index 4a80531b0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_gist_forks_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGistForks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gist_unique_identifier": "abc123", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_gist_forks_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_gist_forks_example_call_tool.py deleted file mode 100644 index 59b02d26e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_gist_forks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGistForks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gist_unique_identifier': 'abc123', 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_git_matching_refs_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_git_matching_refs_example_call_tool.js deleted file mode 100644 index 9e73e6a63..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_git_matching_refs_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGitMatchingRefs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "reference_pattern": "refs/heads/", - "repository_name": "my-repo", - "repository_owner": "my-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_git_matching_refs_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_git_matching_refs_example_call_tool.py deleted file mode 100644 index ab019c660..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_git_matching_refs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGitMatchingRefs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'reference_pattern': 'refs/heads/', 'repository_name': 'my-repo', 'repository_owner': 'my-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_git_repo_secrets_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_git_repo_secrets_example_call_tool.js deleted file mode 100644 index a4acdfd98..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_git_repo_secrets_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGitRepoSecrets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_git_repo_secrets_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_git_repo_secrets_example_call_tool.py deleted file mode 100644 index 452b721b3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_git_repo_secrets_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGitRepoSecrets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_actions_caches_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_actions_caches_example_call_tool.js deleted file mode 100644 index 59f7d46fa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_actions_caches_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubActionsCaches"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "cache_key_or_prefix": "my-cache", - "git_reference": "refs/heads/main", - "results_page_number": 1, - "results_per_page": 50, - "sort_by_property": "created_at", - "sort_direction": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_actions_caches_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_actions_caches_example_call_tool.py deleted file mode 100644 index 88e3f6f4b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_actions_caches_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubActionsCaches" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'cache_key_or_prefix': 'my-cache', - 'git_reference': 'refs/heads/main', - 'results_page_number': 1, - 'results_per_page': 50, - 'sort_by_property': 'created_at', - 'sort_direction': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_app_accessible_repos_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_app_accessible_repos_example_call_tool.js deleted file mode 100644 index c8889ab61..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_app_accessible_repos_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubAppAccessibleRepos"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_app_accessible_repos_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_app_accessible_repos_example_call_tool.py deleted file mode 100644 index 0dec25532..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_app_accessible_repos_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubAppAccessibleRepos" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_app_installations_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_app_installations_example_call_tool.js deleted file mode 100644 index 078d0b0c3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_app_installations_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubAppInstallations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_outdated": "true", - "notifications_updated_since": "2023-10-01T00:00:00Z", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_app_installations_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_app_installations_example_call_tool.py deleted file mode 100644 index 1d34e0ffb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_app_installations_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubAppInstallations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_outdated': 'true', - 'notifications_updated_since': '2023-10-01T00:00:00Z', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_check_runs_for_suite_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_check_runs_for_suite_example_call_tool.js deleted file mode 100644 index 3532607a8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_check_runs_for_suite_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubCheckRunsForSuite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "check_suite_identifier": 123456, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "check_run_status": "completed", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_check_runs_for_suite_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_check_runs_for_suite_example_call_tool.py deleted file mode 100644 index 5824828ff..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_check_runs_for_suite_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubCheckRunsForSuite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'check_suite_identifier': 123456, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'check_run_status': 'completed', - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_custom_roles_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_custom_roles_example_call_tool.js deleted file mode 100644 index 5b3334085..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_custom_roles_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubCustomRoles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_custom_roles_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_custom_roles_example_call_tool.py deleted file mode 100644 index 8a700054e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_custom_roles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubCustomRoles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_deploy_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_deploy_keys_example_call_tool.js deleted file mode 100644 index 83780892e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_deploy_keys_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubDeployKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_deploy_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_deploy_keys_example_call_tool.py deleted file mode 100644 index 4a0d4b179..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_deploy_keys_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubDeployKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'result_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_deployment_statuses_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_deployment_statuses_example_call_tool.js deleted file mode 100644 index 282829748..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_deployment_statuses_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubDeploymentStatuses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_id": 12345, - "repository_name": "example-repo", - "repository_owner": "example-user", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_deployment_statuses_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_deployment_statuses_example_call_tool.py deleted file mode 100644 index 171ad6d4b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_deployment_statuses_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubDeploymentStatuses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_id': 12345, - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_deployments_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_deployments_example_call_tool.js deleted file mode 100644 index 47ae4e603..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_deployments_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubDeployments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "commit_sha": "abc123", - "deployment_environment": "production", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_deployments_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_deployments_example_call_tool.py deleted file mode 100644 index 428600633..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_deployments_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubDeployments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'commit_sha': 'abc123', - 'deployment_environment': 'production', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_emojis_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_emojis_example_call_tool.js deleted file mode 100644 index 32bf55546..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_emojis_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubEmojis"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_emojis_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_emojis_example_call_tool.py deleted file mode 100644 index 723961a35..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_emojis_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubEmojis" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_environment_secrets_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_environment_secrets_example_call_tool.js deleted file mode 100644 index f89eeb979..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_environment_secrets_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubEnvironmentSecrets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_name": "production", - "repository_unique_identifier": 123456, - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_environment_secrets_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_environment_secrets_example_call_tool.py deleted file mode 100644 index d314ccb66..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_environment_secrets_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubEnvironmentSecrets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_name': 'production', - 'repository_unique_identifier': 123456, - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_environment_variables_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_environment_variables_example_call_tool.js deleted file mode 100644 index f7c6d5be4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_environment_variables_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubEnvironmentVariables"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_name": "production", - "repository_id": 123456, - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_environment_variables_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_environment_variables_example_call_tool.py deleted file mode 100644 index bddd9bd00..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_environment_variables_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubEnvironmentVariables" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_name': 'production', - 'repository_id': 123456, - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_issue_assignees_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_issue_assignees_example_call_tool.js deleted file mode 100644 index cc934dabf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_issue_assignees_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubIssueAssignees"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_issue_assignees_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_issue_assignees_example_call_tool.py deleted file mode 100644 index c82e98402..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_issue_assignees_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubIssueAssignees" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_issue_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_issue_comments_example_call_tool.js deleted file mode 100644 index 9eaad3e0d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_issue_comments_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubIssueComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_number": 123, - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_issue_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_issue_comments_example_call_tool.py deleted file mode 100644 index 45248492e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_issue_comments_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubIssueComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_number': 123, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_issue_events_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_issue_events_example_call_tool.js deleted file mode 100644 index e575e220e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_issue_events_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubIssueEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_number": 42, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_issue_events_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_issue_events_example_call_tool.py deleted file mode 100644 index 9572c6bc5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_issue_events_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubIssueEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_number': 42, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_issues_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_issues_example_call_tool.js deleted file mode 100644 index b53e67021..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_issues_example_call_tool.js +++ /dev/null @@ -1,42 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubIssues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_collaborative_repositories": true, - "include_owned_repositories": true, - "include_pull_requests": false, - "issue_filter_type": "assigned", - "issue_labels": "bug,ui", - "issue_state": "open", - "organization_repositories": true, - "page_number": 1, - "results_per_page": 50, - "sort_direction": "desc", - "sort_issues_by": "updated", - "updated_since_timestamp": "2023-10-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_issues_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_issues_example_call_tool.py deleted file mode 100644 index 0370b6b39..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_issues_example_call_tool.py +++ /dev/null @@ -1,40 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubIssues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_collaborative_repositories': True, - 'include_owned_repositories': True, - 'include_pull_requests': False, - 'issue_filter_type': 'assigned', - 'issue_labels': 'bug,ui', - 'issue_state': 'open', - 'organization_repositories': True, - 'page_number': 1, - 'results_per_page': 50, - 'sort_direction': 'desc', - 'sort_issues_by': 'updated', - 'updated_since_timestamp': '2023-10-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_issues_for_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_issues_for_repo_example_call_tool.js deleted file mode 100644 index 0dc964c0d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_issues_for_repo_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubIssuesForRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "assignee_filter": "none", - "issue_state": "open", - "results_per_page": 10, - "sort_direction": "desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_issues_for_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_issues_for_repo_example_call_tool.py deleted file mode 100644 index d54351f54..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_issues_for_repo_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubIssuesForRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'assignee_filter': 'none', - 'issue_state': 'open', - 'results_per_page': 10, - 'sort_direction': 'desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_milestones_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_milestones_example_call_tool.js deleted file mode 100644 index a08bac8b4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_milestones_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubMilestones"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "milestone_state": "open", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_milestones_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_milestones_example_call_tool.py deleted file mode 100644 index 2a8664bc5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_milestones_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubMilestones" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'milestone_state': 'open', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_org_secrets_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_org_secrets_example_call_tool.js deleted file mode 100644 index e57ebaba3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_org_secrets_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubOrgSecrets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_org_secrets_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_org_secrets_example_call_tool.py deleted file mode 100644 index d2f777cfc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_org_secrets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubOrgSecrets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_organizations_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_organizations_example_call_tool.js deleted file mode 100644 index ff2079e8a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_organizations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubOrganizations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id_since": 100, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_organizations_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_organizations_example_call_tool.py deleted file mode 100644 index d5d409181..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_organizations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubOrganizations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id_since': 100, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_pages_builds_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_pages_builds_example_call_tool.js deleted file mode 100644 index 332b3a963..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_pages_builds_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubPagesBuilds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_pages_builds_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_pages_builds_example_call_tool.py deleted file mode 100644 index b1d29c0b1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_pages_builds_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubPagesBuilds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_project_columns_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_project_columns_example_call_tool.js deleted file mode 100644 index eb4589f79..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_project_columns_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubProjectColumns"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": 12345, - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_project_columns_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_project_columns_example_call_tool.py deleted file mode 100644 index 4f6eaa656..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_project_columns_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubProjectColumns" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 12345, 'page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_public_emails_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_public_emails_example_call_tool.js deleted file mode 100644 index 9fb2a3cd8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_public_emails_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubPublicEmails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_public_emails_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_public_emails_example_call_tool.py deleted file mode 100644 index 3bf5b1d30..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_public_emails_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubPublicEmails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_public_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_public_keys_example_call_tool.js deleted file mode 100644 index 544383bec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_public_keys_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubPublicKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_keys_accessed_since": "2023-01-01T00:00:00Z", - "page_number_to_fetch": 1, - "results_per_page": 50, - "sort_direction": "asc", - "sort_order": "created" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_public_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_public_keys_example_call_tool.py deleted file mode 100644 index d5af2a70a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_public_keys_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubPublicKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_keys_accessed_since': '2023-01-01T00:00:00Z', - 'page_number_to_fetch': 1, - 'results_per_page': 50, - 'sort_direction': 'asc', - 'sort_order': 'created' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_pull_request_files_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_pull_request_files_example_call_tool.js deleted file mode 100644 index 4a4e3d98d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_pull_request_files_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubPullRequestFiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 123, - "repository_name": "example-repo", - "repository_owner": "example-user", - "results_page_number": 1, - "results_per_page": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_pull_request_files_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_pull_request_files_example_call_tool.py deleted file mode 100644 index c10e9b1da..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_pull_request_files_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubPullRequestFiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 123, - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'results_page_number': 1, - 'results_per_page': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_pull_request_reviews_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_pull_request_reviews_example_call_tool.js deleted file mode 100644 index 598c6feb8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_pull_request_reviews_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubPullRequestReviews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 123, - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_pull_request_reviews_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_pull_request_reviews_example_call_tool.py deleted file mode 100644 index 28f3a3ff5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_pull_request_reviews_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubPullRequestReviews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 123, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_release_assets_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_release_assets_example_call_tool.js deleted file mode 100644 index dba0f351f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_release_assets_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubReleaseAssets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_identifier": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_release_assets_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_release_assets_example_call_tool.py deleted file mode 100644 index 7fa66d7fe..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_release_assets_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubReleaseAssets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_identifier': 123, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_release_reactions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_release_reactions_example_call_tool.js deleted file mode 100644 index 2719d5d71..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_release_reactions_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubReleaseReactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_identifier": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "reaction_type_filter": "heart", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_release_reactions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_release_reactions_example_call_tool.py deleted file mode 100644 index e5b3a47c0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_release_reactions_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubReleaseReactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_identifier': 123, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'reaction_type_filter': 'heart', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_artifacts_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_repo_artifacts_example_call_tool.js deleted file mode 100644 index 2421b01b3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_artifacts_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubRepoArtifacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "filter_artifacts_by_name": "build-artifact", - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_artifacts_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_repo_artifacts_example_call_tool.py deleted file mode 100644 index e703fd792..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_artifacts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubRepoArtifacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'filter_artifacts_by_name': 'build-artifact', - 'result_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_branches_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_repo_branches_example_call_tool.js deleted file mode 100644 index 225d50df2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_branches_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubRepoBranches"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_branches_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_repo_branches_example_call_tool.py deleted file mode 100644 index 84b9dc0af..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_branches_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubRepoBranches" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_collaborators_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_repo_collaborators_example_call_tool.js deleted file mode 100644 index 88fd6ec1a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_collaborators_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubRepoCollaborators"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "filter_by_affiliation": "all", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_collaborators_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_repo_collaborators_example_call_tool.py deleted file mode 100644 index ead8cc20f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_collaborators_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubRepoCollaborators" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'filter_by_affiliation': 'all', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_contributors_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_repo_contributors_example_call_tool.js deleted file mode 100644 index 1a16817a4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_contributors_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubRepoContributors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "include_anonymous_contributors": "true", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_contributors_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_repo_contributors_example_call_tool.py deleted file mode 100644 index 0bc0847a8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_contributors_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubRepoContributors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'include_anonymous_contributors': 'true', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_events_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_repo_events_example_call_tool.js deleted file mode 100644 index 89651c415..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_events_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubRepoEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner_name": "sample-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_events_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_repo_events_example_call_tool.py deleted file mode 100644 index 75281a284..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_events_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubRepoEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner_name': 'sample-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_forks_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_repo_forks_example_call_tool.js deleted file mode 100644 index 3f43d6daf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_forks_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubRepoForks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "results_page_number": 1, - "results_per_page": 10, - "sort_order": "newest" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_forks_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_repo_forks_example_call_tool.py deleted file mode 100644 index b48612261..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_forks_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubRepoForks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'results_page_number': 1, - 'results_per_page': 10, - 'sort_order': 'newest' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_issue_events_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_repo_issue_events_example_call_tool.js deleted file mode 100644 index 0cb1875ea..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_issue_events_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubRepoIssueEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_issue_events_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_repo_issue_events_example_call_tool.py deleted file mode 100644 index 9ff0835f6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_issue_events_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubRepoIssueEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_secret_alerts_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_repo_secret_alerts_example_call_tool.js deleted file mode 100644 index 7fc76abfd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_secret_alerts_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubRepoSecretAlerts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "my-repo", - "repository_owner": "my-username", - "alerts_state_filter": "open", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_secret_alerts_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_repo_secret_alerts_example_call_tool.py deleted file mode 100644 index 692859e93..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_secret_alerts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubRepoSecretAlerts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'my-repo', - 'repository_owner': 'my-username', - 'alerts_state_filter': 'open', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_repo_tags_example_call_tool.js deleted file mode 100644 index f1de53d59..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_tags_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubRepoTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_repo_tags_example_call_tool.py deleted file mode 100644 index c683e7ad9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_tags_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubRepoTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_variables_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_repo_variables_example_call_tool.js deleted file mode 100644 index 466bf5002..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_variables_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubRepoVariables"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_variables_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_repo_variables_example_call_tool.py deleted file mode 100644 index 28c1e9b26..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_variables_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubRepoVariables" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_workflows_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_repo_workflows_example_call_tool.js deleted file mode 100644 index aae39444d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_workflows_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubRepoWorkflows"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_repo_workflows_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_repo_workflows_example_call_tool.py deleted file mode 100644 index 23971f1e2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_repo_workflows_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubRepoWorkflows" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_runner_binaries_for_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_runner_binaries_for_org_example_call_tool.js deleted file mode 100644 index c7cde8da9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_runner_binaries_for_org_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubRunnerBinariesForOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_runner_binaries_for_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_runner_binaries_for_org_example_call_tool.py deleted file mode 100644 index 9b719c99e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_runner_binaries_for_org_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubRunnerBinariesForOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_user_public_events_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_user_public_events_example_call_tool.js deleted file mode 100644 index 74889f384..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_user_public_events_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubUserPublicEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_user_public_events_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_user_public_events_example_call_tool.py deleted file mode 100644 index 56ddba763..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_user_public_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubUserPublicEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat', 'page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_users_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_users_example_call_tool.js deleted file mode 100644 index 32c854354..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_users_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_per_page": 50, - "user_id_threshold": 1000 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_users_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_users_example_call_tool.py deleted file mode 100644 index f7a9ab330..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_users_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_per_page': 50, 'user_id_threshold': 1000 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_webhook_deliveries_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_webhook_deliveries_example_call_tool.js deleted file mode 100644 index 896186314..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_webhook_deliveries_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubWebhookDeliveries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "webhook_hook_id": 12345, - "include_redelivered_events": true, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_webhook_deliveries_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_webhook_deliveries_example_call_tool.py deleted file mode 100644 index e74ee516d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_webhook_deliveries_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubWebhookDeliveries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'webhook_hook_id': 12345, - 'include_redelivered_events': True, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_workflow_jobs_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_workflow_jobs_example_call_tool.js deleted file mode 100644 index e6229f926..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_workflow_jobs_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubWorkflowJobs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "workflow_run_id": 12345, - "job_filter_by_completion_time": "latest", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_workflow_jobs_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_workflow_jobs_example_call_tool.py deleted file mode 100644 index 881fee410..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_workflow_jobs_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubWorkflowJobs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'workflow_run_id': 12345, - 'job_filter_by_completion_time': 'latest', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_workflow_runs_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_github_workflow_runs_example_call_tool.js deleted file mode 100644 index 1bffc93cc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_workflow_runs_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGithubWorkflowRuns"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "actor_username": "john_doe", - "branch_name": "main", - "omit_pull_requests": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_github_workflow_runs_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_github_workflow_runs_example_call_tool.py deleted file mode 100644 index bc6c47220..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_github_workflow_runs_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGithubWorkflowRuns" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'actor_username': 'john_doe', - 'branch_name': 'main', - 'omit_pull_requests': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_gitignore_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_gitignore_templates_example_call_tool.js deleted file mode 100644 index 260049c49..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_gitignore_templates_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGitignoreTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_gitignore_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_gitignore_templates_example_call_tool.py deleted file mode 100644 index 91df63f5e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_gitignore_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGitignoreTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_global_webhooks_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_global_webhooks_example_call_tool.js deleted file mode 100644 index a890ea702..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_global_webhooks_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGlobalWebhooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_global_webhooks_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_global_webhooks_example_call_tool.py deleted file mode 100644 index ac7c4f8f8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_global_webhooks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGlobalWebhooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_gpg_keys_for_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_gpg_keys_for_user_example_call_tool.js deleted file mode 100644 index 6b3d93823..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_gpg_keys_for_user_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListGpgKeysForUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_gpg_keys_for_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_gpg_keys_for_user_example_call_tool.py deleted file mode 100644 index a1268bce1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_gpg_keys_for_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListGpgKeysForUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat', 'page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_issue_comment_reactions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_issue_comment_reactions_example_call_tool.js deleted file mode 100644 index 8a6f63625..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_issue_comment_reactions_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListIssueCommentReactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": 12345, - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "reaction_type": "+1", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_issue_comment_reactions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_issue_comment_reactions_example_call_tool.py deleted file mode 100644 index 88ead912f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_issue_comment_reactions_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListIssueCommentReactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_id': 12345, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'reaction_type': '+1', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_issue_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_issue_comments_example_call_tool.js deleted file mode 100644 index 3687eb13e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_issue_comments_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListIssueComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "results_page_number": 1, - "results_per_page": 50, - "sort_direction": "asc", - "sort_property": "created" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_issue_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_issue_comments_example_call_tool.py deleted file mode 100644 index 56db4691d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_issue_comments_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListIssueComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'results_page_number': 1, - 'results_per_page': 50, - 'sort_direction': 'asc', - 'sort_property': 'created' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_issue_reactions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_issue_reactions_example_call_tool.js deleted file mode 100644 index c552a1c42..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_issue_reactions_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListIssueReactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_number": 42, - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "reaction_type_to_filter": "heart", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_issue_reactions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_issue_reactions_example_call_tool.py deleted file mode 100644 index 4b3cff427..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_issue_reactions_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListIssueReactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_number': 42, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'reaction_type_to_filter': 'heart', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_labels_for_milestone_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_labels_for_milestone_example_call_tool.js deleted file mode 100644 index d4658f620..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_labels_for_milestone_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListLabelsForMilestone"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "milestone_number": 1, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_labels_for_milestone_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_labels_for_milestone_example_call_tool.py deleted file mode 100644 index d962f8c63..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_labels_for_milestone_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListLabelsForMilestone" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'milestone_number': 1, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_labels_for_runner_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_labels_for_runner_example_call_tool.js deleted file mode 100644 index 2e8f9c4d8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_labels_for_runner_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListLabelsForRunner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_slug_or_id": "my-enterprise", - "runner_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_labels_for_runner_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_labels_for_runner_example_call_tool.py deleted file mode 100644 index 8d194b214..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_labels_for_runner_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListLabelsForRunner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_slug_or_id': 'my-enterprise', 'runner_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_labels_on_github_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_labels_on_github_issue_example_call_tool.js deleted file mode 100644 index 15774e5ec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_labels_on_github_issue_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListLabelsOnGithubIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_number": 42, - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_labels_on_github_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_labels_on_github_issue_example_call_tool.py deleted file mode 100644 index 24b246b51..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_labels_on_github_issue_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListLabelsOnGithubIssue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_number': 42, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_linked_external_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_linked_external_groups_example_call_tool.js deleted file mode 100644 index 76b00bad8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_linked_external_groups_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListLinkedExternalGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_linked_external_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_linked_external_groups_example_call_tool.py deleted file mode 100644 index e36b48176..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_linked_external_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListLinkedExternalGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_access_runner_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_org_access_runner_group_example_call_tool.js deleted file mode 100644 index a0d65c943..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_access_runner_group_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrgAccessRunnerGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_slug_or_id": "my-enterprise", - "runner_group_id": 12345, - "page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_access_runner_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_org_access_runner_group_example_call_tool.py deleted file mode 100644 index e1c1781bf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_access_runner_group_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrgAccessRunnerGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_slug_or_id': 'my-enterprise', - 'runner_group_id': 12345, - 'page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_code_scanning_alerts_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_org_code_scanning_alerts_example_call_tool.js deleted file mode 100644 index 3de7e1913..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_code_scanning_alerts_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrgCodeScanningAlerts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "alert_severity": "high", - "alert_state": "open", - "results_page_number": 1, - "results_per_page": 50, - "sort_direction": "desc", - "sort_results_by": "created" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_code_scanning_alerts_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_org_code_scanning_alerts_example_call_tool.py deleted file mode 100644 index 65ba84e01..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_code_scanning_alerts_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrgCodeScanningAlerts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'alert_severity': 'high', - 'alert_state': 'open', - 'results_page_number': 1, - 'results_per_page': 50, - 'sort_direction': 'desc', - 'sort_results_by': 'created' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_members_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_org_members_example_call_tool.js deleted file mode 100644 index 06f43ec14..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_members_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrgMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "filter_members": "2fa_disabled", - "member_role_filter": "member", - "page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_members_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_org_members_example_call_tool.py deleted file mode 100644 index 07129e27c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_members_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrgMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'filter_members': '2fa_disabled', - 'member_role_filter': 'member', - 'page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_outside_collaborators_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_org_outside_collaborators_example_call_tool.js deleted file mode 100644 index 666ce65d5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_outside_collaborators_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrgOutsideCollaborators"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "filter_outside_collaborators": "2fa_disabled", - "result_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_outside_collaborators_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_org_outside_collaborators_example_call_tool.py deleted file mode 100644 index 1b0c0ee0c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_outside_collaborators_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrgOutsideCollaborators" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'filter_outside_collaborators': '2fa_disabled', - 'result_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_pre_receive_hooks_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_org_pre_receive_hooks_example_call_tool.js deleted file mode 100644 index 710a17378..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_pre_receive_hooks_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrgPreReceiveHooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "page_number": 1, - "results_per_page": 50, - "sort_direction": "asc", - "sort_order": "name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_pre_receive_hooks_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_org_pre_receive_hooks_example_call_tool.py deleted file mode 100644 index 84111dbe3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_pre_receive_hooks_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrgPreReceiveHooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'page_number': 1, - 'results_per_page': 50, - 'sort_direction': 'asc', - 'sort_order': 'name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_runner_group_runners_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_org_runner_group_runners_example_call_tool.js deleted file mode 100644 index 4a3b4128d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_runner_group_runners_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrgRunnerGroupRunners"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "runner_group_id": 123, - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_runner_group_runners_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_org_runner_group_runners_example_call_tool.py deleted file mode 100644 index c7358abd2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_runner_group_runners_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrgRunnerGroupRunners" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'runner_group_id': 123, - 'result_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_secret_scanning_alerts_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_org_secret_scanning_alerts_example_call_tool.js deleted file mode 100644 index 527922cec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_secret_scanning_alerts_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrgSecretScanningAlerts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "alert_resolution_filter": "false_positive,revoked", - "alert_state": "open", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_secret_scanning_alerts_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_org_secret_scanning_alerts_example_call_tool.py deleted file mode 100644 index 082d87ec4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_secret_scanning_alerts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrgSecretScanningAlerts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'alert_resolution_filter': 'false_positive,revoked', - 'alert_state': 'open', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_self_hosted_runners_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_org_self_hosted_runners_example_call_tool.js deleted file mode 100644 index ad37be046..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_self_hosted_runners_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrgSelfHostedRunners"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_self_hosted_runners_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_org_self_hosted_runners_example_call_tool.py deleted file mode 100644 index c667d6ea3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_self_hosted_runners_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrgSelfHostedRunners" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_variables_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_org_variables_example_call_tool.js deleted file mode 100644 index 75d4e200e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_variables_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrgVariables"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_org_variables_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_org_variables_example_call_tool.py deleted file mode 100644 index d4c7c5a78..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_org_variables_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrgVariables" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'result_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_organization_issues_for_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_organization_issues_for_user_example_call_tool.js deleted file mode 100644 index c8e8aeea9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_organization_issues_for_user_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrganizationIssuesForUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "issue_filter": "assigned", - "issues_state": "open", - "result_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_organization_issues_for_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_organization_issues_for_user_example_call_tool.py deleted file mode 100644 index 1b3021341..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_organization_issues_for_user_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrganizationIssuesForUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'issue_filter': 'assigned', - 'issues_state': 'open', - 'result_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_organization_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_organization_memberships_example_call_tool.js deleted file mode 100644 index 5002c079c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_organization_memberships_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrganizationMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "membership_state": "active", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_organization_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_organization_memberships_example_call_tool.py deleted file mode 100644 index aa2eb45b9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_organization_memberships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrganizationMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'membership_state': 'active', 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_organization_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_organization_projects_example_call_tool.js deleted file mode 100644 index dcf5519b8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_organization_projects_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrganizationProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "project_state": "open", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_organization_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_organization_projects_example_call_tool.py deleted file mode 100644 index 8eb56dc80..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_organization_projects_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrganizationProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'project_state': 'open', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_organization_repositories_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_organization_repositories_example_call_tool.js deleted file mode 100644 index 03aa7f2d5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_organization_repositories_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrganizationRepositories"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "page_number": 1, - "repository_type": "public", - "results_per_page": 50, - "sort_order": "asc", - "sort_property": "created" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_organization_repositories_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_organization_repositories_example_call_tool.py deleted file mode 100644 index 172830c0d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_organization_repositories_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrganizationRepositories" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'page_number': 1, - 'repository_type': 'public', - 'results_per_page': 50, - 'sort_order': 'asc', - 'sort_property': 'created' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_organization_secrets_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_organization_secrets_example_call_tool.js deleted file mode 100644 index 46f212331..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_organization_secrets_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrganizationSecrets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_organization_secrets_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_organization_secrets_example_call_tool.py deleted file mode 100644 index f3079a1c0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_organization_secrets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrganizationSecrets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_organization_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_organization_teams_example_call_tool.js deleted file mode 100644 index 904ce4ab8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_organization_teams_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrganizationTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_organization_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_organization_teams_example_call_tool.py deleted file mode 100644 index 29fc7fd72..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_organization_teams_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrganizationTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_organization_webhooks_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_organization_webhooks_example_call_tool.js deleted file mode 100644 index 48ac9021d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_organization_webhooks_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListOrganizationWebhooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "result_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_organization_webhooks_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_organization_webhooks_example_call_tool.py deleted file mode 100644 index 29beb27fa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_organization_webhooks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListOrganizationWebhooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'result_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_personal_access_tokens_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_personal_access_tokens_example_call_tool.js deleted file mode 100644 index f801cb5b2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_personal_access_tokens_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListPersonalAccessTokens"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_personal_access_tokens_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_personal_access_tokens_example_call_tool.py deleted file mode 100644 index dec04dcac..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_personal_access_tokens_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListPersonalAccessTokens" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_pre_receive_environments_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_pre_receive_environments_example_call_tool.js deleted file mode 100644 index 9b8717f23..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_pre_receive_environments_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListPreReceiveEnvironments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number": 1, - "results_per_page": 50, - "sort": "name", - "sort_direction": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_pre_receive_environments_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_pre_receive_environments_example_call_tool.py deleted file mode 100644 index 281a386d2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_pre_receive_environments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListPreReceiveEnvironments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number': 1, 'results_per_page': 50, 'sort': 'name', 'sort_direction': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_pre_receive_hooks_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_pre_receive_hooks_example_call_tool.js deleted file mode 100644 index 58d8c66fc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_pre_receive_hooks_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListPreReceiveHooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_page_number": 1, - "results_per_page": 50, - "sort_direction": "asc", - "sort_results_by": "name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_pre_receive_hooks_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_pre_receive_hooks_example_call_tool.py deleted file mode 100644 index d15c89865..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_pre_receive_hooks_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListPreReceiveHooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_page_number': 1, - 'results_per_page': 50, - 'sort_direction': 'asc', - 'sort_results_by': 'name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_project_cards_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_project_cards_example_call_tool.js deleted file mode 100644 index bf8dbbf85..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_project_cards_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListProjectCards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "column_identifier": 123, - "filter_by_archived_state": "not_archived", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_project_cards_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_project_cards_example_call_tool.py deleted file mode 100644 index fdb9fbcb8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_project_cards_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListProjectCards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'column_identifier': 123, - 'filter_by_archived_state': 'not_archived', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_project_collaborators_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_project_collaborators_example_call_tool.js deleted file mode 100644 index 53e755c2e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_project_collaborators_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListProjectCollaborators"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": 12345, - "collaborator_affiliation_filter": "all", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_project_collaborators_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_project_collaborators_example_call_tool.py deleted file mode 100644 index f4947a26e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_project_collaborators_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListProjectCollaborators" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 12345, - 'collaborator_affiliation_filter': 'all', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_provisioned_groups_for_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_provisioned_groups_for_enterprise_example_call_tool.js deleted file mode 100644 index 30fc56b80..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_provisioned_groups_for_enterprise_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListProvisionedGroupsForEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exclude_attribute_from_results": "members", - "filter_by_attribute": "externalId eq '9138790-10932-109120392-12321'", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_provisioned_groups_for_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_provisioned_groups_for_enterprise_example_call_tool.py deleted file mode 100644 index c42a1f3d8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_provisioned_groups_for_enterprise_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListProvisionedGroupsForEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exclude_attribute_from_results': 'members', - 'filter_by_attribute': "externalId eq '9138790-10932-109120392-12321'", - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_public_github_repositories_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_public_github_repositories_example_call_tool.js deleted file mode 100644 index 0bad034ef..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_public_github_repositories_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListPublicGithubRepositories"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_visibility": "public", - "starting_repository_id": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_public_github_repositories_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_public_github_repositories_example_call_tool.py deleted file mode 100644 index e1f5ac0f4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_public_github_repositories_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListPublicGithubRepositories" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_visibility': 'public', 'starting_repository_id': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_public_org_events_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_public_org_events_example_call_tool.js deleted file mode 100644 index f49a71958..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_public_org_events_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListPublicOrgEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_public_org_events_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_public_org_events_example_call_tool.py deleted file mode 100644 index 74b40688d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_public_org_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListPublicOrgEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_public_org_members_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_public_org_members_example_call_tool.js deleted file mode 100644 index e075d8a4a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_public_org_members_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListPublicOrgMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "OpenAI", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_public_org_members_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_public_org_members_example_call_tool.py deleted file mode 100644 index a1d01501b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_public_org_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListPublicOrgMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'OpenAI', 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_public_orgs_for_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_public_orgs_for_user_example_call_tool.js deleted file mode 100644 index 554100a2f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_public_orgs_for_user_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListPublicOrgsForUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_public_orgs_for_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_public_orgs_for_user_example_call_tool.py deleted file mode 100644 index e7ee72ce7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_public_orgs_for_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListPublicOrgsForUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat', 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_public_ssh_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_public_ssh_keys_example_call_tool.js deleted file mode 100644 index 30da6b15f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_public_ssh_keys_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListPublicSshKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_public_ssh_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_public_ssh_keys_example_call_tool.py deleted file mode 100644 index 9696b47ca..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_public_ssh_keys_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListPublicSshKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'result_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_pull_request_comment_reactions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_pull_request_comment_reactions_example_call_tool.js deleted file mode 100644 index 7e104c344..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_pull_request_comment_reactions_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListPullRequestCommentReactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_unique_identifier": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "filter_reaction_type": "thumbs_up", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_pull_request_comment_reactions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_pull_request_comment_reactions_example_call_tool.py deleted file mode 100644 index fae065ccf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_pull_request_comment_reactions_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListPullRequestCommentReactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_unique_identifier': 12345, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'filter_reaction_type': 'thumbs_up', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_pull_request_commits_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_pull_request_commits_example_call_tool.js deleted file mode 100644 index d7067a577..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_pull_request_commits_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListPullRequestCommits"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_pull_request_commits_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_pull_request_commits_example_call_tool.py deleted file mode 100644 index 33797216d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_pull_request_commits_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListPullRequestCommits" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 123, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_pull_request_review_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_pull_request_review_comments_example_call_tool.js deleted file mode 100644 index b9e24ad22..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_pull_request_review_comments_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListPullRequestReviewComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "notifications_since_timestamp": "2023-10-01T00:00:00Z", - "page_number_to_fetch": 1, - "results_per_page": 50, - "sort_direction": "asc", - "sort_results_by": "created" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_pull_request_review_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_pull_request_review_comments_example_call_tool.py deleted file mode 100644 index dfa1b3b5c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_pull_request_review_comments_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListPullRequestReviewComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 123, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'notifications_since_timestamp': '2023-10-01T00:00:00Z', - 'page_number_to_fetch': 1, - 'results_per_page': 50, - 'sort_direction': 'asc', - 'sort_results_by': 'created' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_pull_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_pull_requests_example_call_tool.js deleted file mode 100644 index aab9332bd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_pull_requests_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListPullRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "base_branch_name": "main", - "filter_by_state": "open", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_pull_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_pull_requests_example_call_tool.py deleted file mode 100644 index 60f286410..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_pull_requests_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListPullRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'base_branch_name': 'main', - 'filter_by_state': 'open', - 'page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_pull_requests_for_commit_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_pull_requests_for_commit_example_call_tool.js deleted file mode 100644 index fd6ce8c47..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_pull_requests_for_commit_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListPullRequestsForCommit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "commit_sha": "abc123def456", - "repository_name": "sample-repo", - "repository_owner": "user123", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_pull_requests_for_commit_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_pull_requests_for_commit_example_call_tool.py deleted file mode 100644 index 7cf425f0d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_pull_requests_for_commit_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListPullRequestsForCommit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'commit_sha': 'abc123def456', - 'repository_name': 'sample-repo', - 'repository_owner': 'user123', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_recent_code_scanning_analyses_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_recent_code_scanning_analyses_example_call_tool.js deleted file mode 100644 index a3afd2b3c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_recent_code_scanning_analyses_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRecentCodeScanningAnalyses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "code_scanning_tool_name": "CodeQL", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_recent_code_scanning_analyses_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_recent_code_scanning_analyses_example_call_tool.py deleted file mode 100644 index 606df0e70..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_recent_code_scanning_analyses_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRecentCodeScanningAnalyses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'code_scanning_tool_name': 'CodeQL', - 'page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_recent_github_events_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_recent_github_events_example_call_tool.js deleted file mode 100644 index 008bcd323..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_recent_github_events_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRecentGithubEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_recent_github_events_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_recent_github_events_example_call_tool.py deleted file mode 100644 index 1996ae25c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_recent_github_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRecentGithubEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_recent_github_migrations_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_recent_github_migrations_example_call_tool.js deleted file mode 100644 index 96649d8e3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_recent_github_migrations_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRecentGithubMigrations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "exclude_attributes": [ - "repositories" - ], - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_recent_github_migrations_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_recent_github_migrations_example_call_tool.py deleted file mode 100644 index 795749763..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_recent_github_migrations_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRecentGithubMigrations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'exclude_attributes': ['repositories'], - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_recent_public_gists_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_recent_public_gists_example_call_tool.js deleted file mode 100644 index 6a61f7218..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_recent_public_gists_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRecentPublicGists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_recent_public_gists_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_recent_public_gists_example_call_tool.py deleted file mode 100644 index 238f7380f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_recent_public_gists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRecentPublicGists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'result_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_cache_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repo_cache_status_example_call_tool.js deleted file mode 100644 index 9c5178b98..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_cache_status_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRepoCacheStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user", - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_cache_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repo_cache_status_example_call_tool.py deleted file mode 100644 index 42b5e172e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_cache_status_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRepoCacheStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'result_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_commit_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repo_commit_comments_example_call_tool.js deleted file mode 100644 index 5783b80dc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_commit_comments_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRepoCommitComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_commit_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repo_commit_comments_example_call_tool.py deleted file mode 100644 index 1036c30a1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_commit_comments_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRepoCommitComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_invitations_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repo_invitations_example_call_tool.js deleted file mode 100644 index f01f2fb56..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_invitations_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRepoInvitations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_invitations_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repo_invitations_example_call_tool.py deleted file mode 100644 index 6f63fe8bc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_invitations_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRepoInvitations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_languages_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repo_languages_example_call_tool.js deleted file mode 100644 index 3fcd05862..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_languages_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRepoLanguages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_languages_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repo_languages_example_call_tool.py deleted file mode 100644 index c1d2964ef..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_languages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRepoLanguages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_network_public_events_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repo_network_public_events_example_call_tool.js deleted file mode 100644 index c9689a4a3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_network_public_events_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRepoNetworkPublicEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_network_public_events_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repo_network_public_events_example_call_tool.py deleted file mode 100644 index 57154a480..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_network_public_events_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRepoNetworkPublicEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_pre_receive_hooks_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repo_pre_receive_hooks_example_call_tool.js deleted file mode 100644 index f5a776583..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_pre_receive_hooks_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRepoPreReceiveHooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "result_page_number": 1, - "results_per_page": 50, - "sort_direction": "asc", - "sort_hooks_by": "name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_pre_receive_hooks_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repo_pre_receive_hooks_example_call_tool.py deleted file mode 100644 index 6b5f5d402..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_pre_receive_hooks_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRepoPreReceiveHooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'result_page_number': 1, - 'results_per_page': 50, - 'sort_direction': 'asc', - 'sort_hooks_by': 'name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_required_workflows_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repo_required_workflows_example_call_tool.js deleted file mode 100644 index 03129bedb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_required_workflows_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRepoRequiredWorkflows"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "exampleOrg", - "repository_name": "exampleRepo", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_required_workflows_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repo_required_workflows_example_call_tool.py deleted file mode 100644 index d15d63bb6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_required_workflows_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRepoRequiredWorkflows" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'exampleOrg', - 'repository_name': 'exampleRepo', - 'page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_secrets_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repo_secrets_example_call_tool.js deleted file mode 100644 index 02bc4a686..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_secrets_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRepoSecrets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_secrets_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repo_secrets_example_call_tool.py deleted file mode 100644 index af944694e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_secrets_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRepoSecrets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_stargazers_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repo_stargazers_example_call_tool.js deleted file mode 100644 index 5cba0e33d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_stargazers_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRepoStargazers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repo_stargazers_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repo_stargazers_example_call_tool.py deleted file mode 100644 index 6cee3402d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repo_stargazers_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRepoStargazers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repos_for_org_migration_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repos_for_org_migration_example_call_tool.js deleted file mode 100644 index b888feeed..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repos_for_org_migration_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListReposForOrgMigration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "migration_unique_identifier": 12345, - "organization_name": "example-org", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repos_for_org_migration_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repos_for_org_migration_example_call_tool.py deleted file mode 100644 index 25986799e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repos_for_org_migration_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListReposForOrgMigration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'migration_unique_identifier': 12345, - 'organization_name': 'example-org', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repos_with_org_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repos_with_org_secret_example_call_tool.js deleted file mode 100644 index 08f643255..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repos_with_org_secret_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListReposWithOrgSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "secret_name": "my-secret", - "result_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repos_with_org_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repos_with_org_secret_example_call_tool.py deleted file mode 100644 index 1c08019a7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repos_with_org_secret_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListReposWithOrgSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'secret_name': 'my-secret', - 'result_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repos_with_org_variable_access_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repos_with_org_variable_access_example_call_tool.js deleted file mode 100644 index 743805429..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repos_with_org_variable_access_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListReposWithOrgVariableAccess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "variable_name": "API_KEY", - "result_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repos_with_org_variable_access_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repos_with_org_variable_access_example_call_tool.py deleted file mode 100644 index dee7b1453..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repos_with_org_variable_access_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListReposWithOrgVariableAccess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'variable_name': 'API_KEY', - 'result_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repos_with_runner_group_access_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repos_with_runner_group_access_example_call_tool.js deleted file mode 100644 index 74eae9c71..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repos_with_runner_group_access_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListReposWithRunnerGroupAccess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "runner_group_id": 12345, - "result_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repos_with_runner_group_access_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repos_with_runner_group_access_example_call_tool.py deleted file mode 100644 index 0924c7934..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repos_with_runner_group_access_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListReposWithRunnerGroupAccess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'runner_group_id': 12345, - 'result_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repository_environments_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repository_environments_example_call_tool.js deleted file mode 100644 index 2cffca306..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repository_environments_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRepositoryEnvironments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repository_environments_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repository_environments_example_call_tool.py deleted file mode 100644 index c88cfbc15..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repository_environments_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRepositoryEnvironments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repository_labels_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repository_labels_example_call_tool.js deleted file mode 100644 index caf6f242d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repository_labels_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRepositoryLabels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user", - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repository_labels_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repository_labels_example_call_tool.py deleted file mode 100644 index fdc8e2ad1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repository_labels_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRepositoryLabels" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'result_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repository_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repository_projects_example_call_tool.js deleted file mode 100644 index 836be6664..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repository_projects_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRepositoryProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "project_state": "open", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repository_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repository_projects_example_call_tool.py deleted file mode 100644 index 6c1a9e2c3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repository_projects_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRepositoryProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'project_state': 'open', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repository_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repository_teams_example_call_tool.js deleted file mode 100644 index 838173110..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repository_teams_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRepositoryTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repository_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repository_teams_example_call_tool.py deleted file mode 100644 index 5ab921d58..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repository_teams_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRepositoryTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'result_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_repository_webhooks_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_repository_webhooks_example_call_tool.js deleted file mode 100644 index 34046af77..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repository_webhooks_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRepositoryWebhooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_repository_webhooks_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_repository_webhooks_example_call_tool.py deleted file mode 100644 index b1384fd82..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_repository_webhooks_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRepositoryWebhooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'result_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_required_workflow_repositories_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_required_workflow_repositories_example_call_tool.js deleted file mode 100644 index fc729387b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_required_workflow_repositories_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRequiredWorkflowRepositories"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "workflow_unique_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_required_workflow_repositories_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_required_workflow_repositories_example_call_tool.py deleted file mode 100644 index cf5dd579e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_required_workflow_repositories_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRequiredWorkflowRepositories" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'workflow_unique_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_required_workflow_runs_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_required_workflow_runs_example_call_tool.js deleted file mode 100644 index c9bbe6fdf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_required_workflow_runs_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRequiredWorkflowRuns"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "required_workflow_id": 123456, - "branch_name": "main", - "exclude_pull_requests": true, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_required_workflow_runs_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_required_workflow_runs_example_call_tool.py deleted file mode 100644 index e02296330..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_required_workflow_runs_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRequiredWorkflowRuns" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'required_workflow_id': 123456, - 'branch_name': 'main', - 'exclude_pull_requests': True, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_required_workflows_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_required_workflows_example_call_tool.js deleted file mode 100644 index d4b116316..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_required_workflows_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRequiredWorkflows"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_required_workflows_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_required_workflows_example_call_tool.py deleted file mode 100644 index b2949028c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_required_workflows_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRequiredWorkflows" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_review_comments_for_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_review_comments_for_repo_example_call_tool.js deleted file mode 100644 index fa81f506a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_review_comments_for_repo_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListReviewCommentsForRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "page_number": 1, - "results_per_page": 50, - "sort_direction": "asc", - "sort_reviews": "created", - "updated_after": "2023-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_review_comments_for_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_review_comments_for_repo_example_call_tool.py deleted file mode 100644 index 8b5a729fb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_review_comments_for_repo_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListReviewCommentsForRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'page_number': 1, - 'results_per_page': 50, - 'sort_direction': 'asc', - 'sort_reviews': 'created', - 'updated_after': '2023-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_runner_apps_for_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_runner_apps_for_repo_example_call_tool.js deleted file mode 100644 index 242cb81c8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_runner_apps_for_repo_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRunnerAppsForRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_runner_apps_for_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_runner_apps_for_repo_example_call_tool.py deleted file mode 100644 index 247aede2a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_runner_apps_for_repo_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRunnerAppsForRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_runner_binaries_for_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_runner_binaries_for_enterprise_example_call_tool.js deleted file mode 100644 index c4d93b8a1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_runner_binaries_for_enterprise_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRunnerBinariesForEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_runner_binaries_for_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_runner_binaries_for_enterprise_example_call_tool.py deleted file mode 100644 index 5d97ebf6f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_runner_binaries_for_enterprise_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRunnerBinariesForEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_runner_groups_for_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_runner_groups_for_org_example_call_tool.js deleted file mode 100644 index b22b627eb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_runner_groups_for_org_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRunnerGroupsForOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_visibility_filter": "public", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_runner_groups_for_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_runner_groups_for_org_example_call_tool.py deleted file mode 100644 index 7dce8bb8e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_runner_groups_for_org_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRunnerGroupsForOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repository_visibility_filter': 'public', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_runner_labels_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_runner_labels_example_call_tool.js deleted file mode 100644 index 3da501167..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_runner_labels_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRunnerLabels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "self_hosted_runner_id": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_runner_labels_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_runner_labels_example_call_tool.py deleted file mode 100644 index fd7a23a95..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_runner_labels_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRunnerLabels" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'self_hosted_runner_id': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_runner_labels_for_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_runner_labels_for_org_example_call_tool.js deleted file mode 100644 index dc2214da4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_runner_labels_for_org_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListRunnerLabelsForOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "runner_unique_id": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_runner_labels_for_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_runner_labels_for_org_example_call_tool.py deleted file mode 100644 index f65ab483b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_runner_labels_for_org_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListRunnerLabelsForOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'runner_unique_id': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_scim_enterprise_members_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_scim_enterprise_members_example_call_tool.js deleted file mode 100644 index cdeee5773..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_scim_enterprise_members_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListScimEnterpriseMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exclude_attributes": "groups", - "filter_criteria": "userName eq 'john.doe'", - "pagination_start_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_scim_enterprise_members_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_scim_enterprise_members_example_call_tool.py deleted file mode 100644 index 8316a8f98..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_scim_enterprise_members_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListScimEnterpriseMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exclude_attributes': 'groups', - 'filter_criteria': "userName eq 'john.doe'", - 'pagination_start_index': 0, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_secret_scanning_alert_locations_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_secret_scanning_alert_locations_example_call_tool.js deleted file mode 100644 index 66d51d14a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_secret_scanning_alert_locations_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListSecretScanningAlertLocations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alert_number": 12345, - "repository_name": "my-repo", - "repository_owner": "my-username", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_secret_scanning_alert_locations_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_secret_scanning_alert_locations_example_call_tool.py deleted file mode 100644 index eb61359d9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_secret_scanning_alert_locations_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListSecretScanningAlertLocations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alert_number': 12345, - 'repository_name': 'my-repo', - 'repository_owner': 'my-username', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_secret_scanning_alerts_for_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_secret_scanning_alerts_for_enterprise_example_call_tool.js deleted file mode 100644 index a3bd0240f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_secret_scanning_alerts_for_enterprise_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListSecretScanningAlertsForEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "alert_resolution_filters": "false_positive,wont_fix", - "alert_state_filter": "open", - "results_per_page": 50, - "sort_by": "created", - "sort_direction": "desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_secret_scanning_alerts_for_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_secret_scanning_alerts_for_enterprise_example_call_tool.py deleted file mode 100644 index 87dbdcead..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_secret_scanning_alerts_for_enterprise_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListSecretScanningAlertsForEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', - 'alert_resolution_filters': 'false_positive,wont_fix', - 'alert_state_filter': 'open', - 'results_per_page': 50, - 'sort_by': 'created', - 'sort_direction': 'desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_security_manager_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_security_manager_teams_example_call_tool.js deleted file mode 100644 index a41f044bf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_security_manager_teams_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListSecurityManagerTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_security_manager_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_security_manager_teams_example_call_tool.py deleted file mode 100644 index a38ec7448..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_security_manager_teams_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListSecurityManagerTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_selected_repositories_for_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_selected_repositories_for_secret_example_call_tool.js deleted file mode 100644 index 84fb162f5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_selected_repositories_for_secret_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListSelectedRepositoriesForSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "secret_name": "my-secret", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_selected_repositories_for_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_selected_repositories_for_secret_example_call_tool.py deleted file mode 100644 index 5f80b0ccb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_selected_repositories_for_secret_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListSelectedRepositoriesForSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'secret_name': 'my-secret', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runner_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runner_groups_example_call_tool.js deleted file mode 100644 index 111938c88..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runner_groups_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListSelfHostedRunnerGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_slug": "my-enterprise", - "organization_filter": "my-org", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runner_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runner_groups_example_call_tool.py deleted file mode 100644 index fcab68574..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runner_groups_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListSelfHostedRunnerGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_slug': 'my-enterprise', - 'organization_filter': 'my-org', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_example_call_tool.js deleted file mode 100644 index 4f1e594df..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListSelfHostedRunners"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_example_call_tool.py deleted file mode 100644 index 2c7bc122d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListSelfHostedRunners" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_for_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_for_enterprise_example_call_tool.js deleted file mode 100644 index 16fa0a2f9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_for_enterprise_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListSelfHostedRunnersForEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_for_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_for_enterprise_example_call_tool.py deleted file mode 100644 index 5e63fe5e6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_for_enterprise_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListSelfHostedRunnersForEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_in_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_in_group_example_call_tool.js deleted file mode 100644 index d7603be3d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_in_group_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListSelfHostedRunnersInGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "runner_group_id": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_in_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_in_group_example_call_tool.py deleted file mode 100644 index 5f5d621d3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_self_hosted_runners_in_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListSelfHostedRunnersInGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'runner_group_id': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_ssh_signing_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_ssh_signing_keys_example_call_tool.js deleted file mode 100644 index 74ede71e8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_ssh_signing_keys_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListSshSigningKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_ssh_signing_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_ssh_signing_keys_example_call_tool.py deleted file mode 100644 index a33857b68..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_ssh_signing_keys_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListSshSigningKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_ssh_signing_keys_for_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_ssh_signing_keys_for_user_example_call_tool.js deleted file mode 100644 index 788997e08..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_ssh_signing_keys_for_user_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListSshSigningKeysForUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_username": "octocat", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_ssh_signing_keys_for_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_ssh_signing_keys_for_user_example_call_tool.py deleted file mode 100644 index 1850835a4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_ssh_signing_keys_for_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListSshSigningKeysForUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_username': 'octocat', 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_starred_gists_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_starred_gists_example_call_tool.js deleted file mode 100644 index b8c00b830..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_starred_gists_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListStarredGists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_starred_gists_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_starred_gists_example_call_tool.py deleted file mode 100644 index 3e5d70a0b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_starred_gists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListStarredGists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_starred_repos_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_starred_repos_example_call_tool.js deleted file mode 100644 index 656784655..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_starred_repos_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListStarredRepos"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat", - "page_number": 1, - "results_per_page": 10, - "sort_direction": "desc", - "sort_repositories_by": "created" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_starred_repos_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_starred_repos_example_call_tool.py deleted file mode 100644 index 537e8a498..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_starred_repos_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListStarredRepos" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat', - 'page_number': 1, - 'results_per_page': 10, - 'sort_direction': 'desc', - 'sort_repositories_by': 'created' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_starred_repositories_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_starred_repositories_example_call_tool.js deleted file mode 100644 index cf8dd1669..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_starred_repositories_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListStarredRepositories"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number_to_fetch": 1, - "results_per_page": 10, - "sort_by": "created", - "sort_direction": "desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_starred_repositories_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_starred_repositories_example_call_tool.py deleted file mode 100644 index 3255968c3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_starred_repositories_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListStarredRepositories" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number_to_fetch': 1, 'results_per_page': 10, 'sort_by': 'created', 'sort_direction': 'desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_team_discussion_comment_reactions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_team_discussion_comment_reactions_example_call_tool.js deleted file mode 100644 index 9427a185c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_team_discussion_comment_reactions_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListTeamDiscussionCommentReactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_identifier": 42, - "discussion_number": 7, - "organization_name": "example-org", - "team_slug": "dev-team", - "filter_by_reaction_type": "heart", - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_team_discussion_comment_reactions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_team_discussion_comment_reactions_example_call_tool.py deleted file mode 100644 index 58737da7d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_team_discussion_comment_reactions_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListTeamDiscussionCommentReactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_identifier': 42, - 'discussion_number': 7, - 'organization_name': 'example-org', - 'team_slug': 'dev-team', - 'filter_by_reaction_type': 'heart', - 'results_page_number': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_team_discussion_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_team_discussion_comments_example_call_tool.js deleted file mode 100644 index c56f8d78d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_team_discussion_comments_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListTeamDiscussionComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "discussion_id": 12345, - "organization_name": "example-org", - "team_slug": "dev-team", - "results_page_number": 1, - "results_per_page": 50, - "sort_direction": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_team_discussion_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_team_discussion_comments_example_call_tool.py deleted file mode 100644 index a0645cd20..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_team_discussion_comments_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListTeamDiscussionComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'discussion_id': 12345, - 'organization_name': 'example-org', - 'team_slug': 'dev-team', - 'results_page_number': 1, - 'results_per_page': 50, - 'sort_direction': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_team_discussions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_team_discussions_example_call_tool.js deleted file mode 100644 index a2b38f2a9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_team_discussions_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListTeamDiscussions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "team_slug": "dev-team", - "pinned_discussions_only": "false", - "results_page_number": 1, - "results_per_page": 10, - "sort_direction": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_team_discussions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_team_discussions_example_call_tool.py deleted file mode 100644 index 5bd9c88ab..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_team_discussions_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListTeamDiscussions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'team_slug': 'dev-team', - 'pinned_discussions_only': 'false', - 'results_page_number': 1, - 'results_per_page': 10, - 'sort_direction': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_team_members_in_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_team_members_in_org_example_call_tool.js deleted file mode 100644 index 47de92787..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_team_members_in_org_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListTeamMembersInOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "team_slug": "dev-team", - "filter_by_role": "member", - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_team_members_in_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_team_members_in_org_example_call_tool.py deleted file mode 100644 index 61d32716b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_team_members_in_org_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListTeamMembersInOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'team_slug': 'dev-team', - 'filter_by_role': 'member', - 'result_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_team_projects_in_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_team_projects_in_org_example_call_tool.js deleted file mode 100644 index 16edcb6a4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_team_projects_in_org_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListTeamProjectsInOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "AcmeCorp", - "team_slug": "dev-team", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_team_projects_in_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_team_projects_in_org_example_call_tool.py deleted file mode 100644 index 499dc2e1c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_team_projects_in_org_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListTeamProjectsInOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'AcmeCorp', - 'team_slug': 'dev-team', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_team_repositories_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_team_repositories_example_call_tool.js deleted file mode 100644 index 06c3664df..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_team_repositories_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListTeamRepositories"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "team_slug": "dev-team", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_team_repositories_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_team_repositories_example_call_tool.py deleted file mode 100644 index 4fed729b5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_team_repositories_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListTeamRepositories" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'team_slug': 'dev-team', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_accessible_repos_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_accessible_repos_example_call_tool.js deleted file mode 100644 index d3f28d785..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_accessible_repos_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserAccessibleRepos"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "installation_identifier": 123456, - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_accessible_repos_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_accessible_repos_example_call_tool.py deleted file mode 100644 index 65954d3e9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_accessible_repos_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserAccessibleRepos" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'installation_identifier': 123456, 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_email_addresses_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_email_addresses_example_call_tool.js deleted file mode 100644 index 2aaa7706f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_email_addresses_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserEmailAddresses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_email_addresses_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_email_addresses_example_call_tool.py deleted file mode 100644 index 8562519e1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_email_addresses_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserEmailAddresses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_followers_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_followers_example_call_tool.js deleted file mode 100644 index 8ff743afc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_followers_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserFollowers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_followers_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_followers_example_call_tool.py deleted file mode 100644 index ec1b2a7f8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_followers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserFollowers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat', 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_gists_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_gists_example_call_tool.js deleted file mode 100644 index 253731ede..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_gists_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserGists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number_to_fetch": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_gists_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_gists_example_call_tool.py deleted file mode 100644 index f2f042442..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_gists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserGists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number_to_fetch': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_github_events_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_github_events_example_call_tool.js deleted file mode 100644 index ae774d54f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_github_events_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserGithubEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_github_events_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_github_events_example_call_tool.py deleted file mode 100644 index b526d7dc5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_github_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserGithubEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat', 'page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_github_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_github_teams_example_call_tool.js deleted file mode 100644 index 3b2902af1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_github_teams_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserGithubTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_github_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_github_teams_example_call_tool.py deleted file mode 100644 index 6980abf31..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_github_teams_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserGithubTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_gpg_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_gpg_keys_example_call_tool.js deleted file mode 100644 index 72d6258c4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_gpg_keys_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserGpgKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_gpg_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_gpg_keys_example_call_tool.py deleted file mode 100644 index 37a540c9c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_gpg_keys_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserGpgKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_issues_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_issues_example_call_tool.js deleted file mode 100644 index 85b5f366d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_issues_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserIssues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_filter_type": "assigned", - "issue_state": "open", - "label_filter": "bug,ui", - "result_page_number": 1, - "results_per_page": 50, - "sort_by": "created", - "sort_direction": "desc", - "updated_since": "2023-10-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_issues_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_issues_example_call_tool.py deleted file mode 100644 index 16a8a40fa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_issues_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserIssues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_filter_type': 'assigned', - 'issue_state': 'open', - 'label_filter': 'bug,ui', - 'result_page_number': 1, - 'results_per_page': 50, - 'sort_by': 'created', - 'sort_direction': 'desc', - 'updated_since': '2023-10-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_migration_repos_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_migration_repos_example_call_tool.js deleted file mode 100644 index cf80b40b1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_migration_repos_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserMigrationRepos"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "migration_unique_identifier": 12345, - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_migration_repos_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_migration_repos_example_call_tool.py deleted file mode 100644 index 22b372e6f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_migration_repos_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserMigrationRepos" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'migration_unique_identifier': 12345, 'result_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_migrations_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_migrations_example_call_tool.js deleted file mode 100644 index 197d02635..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_migrations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserMigrations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_page_number": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_migrations_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_migrations_example_call_tool.py deleted file mode 100644 index bc94c750f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_migrations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserMigrations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_page_number': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_notifications_example_call_tool.js deleted file mode 100644 index 08dc68bc0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_notifications_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_notifications_before_date": "2023-10-01T00:00:00Z", - "include_read_notifications": true, - "notifications_since_timestamp": "2023-09-01T00:00:00Z", - "only_show_participating_notifications": false, - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_notifications_example_call_tool.py deleted file mode 100644 index a7cbd7983..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_notifications_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserNotifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_notifications_before_date': '2023-10-01T00:00:00Z', - 'include_read_notifications': True, - 'notifications_since_timestamp': '2023-09-01T00:00:00Z', - 'only_show_participating_notifications': False, - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_organizations_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_organizations_example_call_tool.js deleted file mode 100644 index f3b3643d9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_organizations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserOrganizations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number_to_fetch": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_organizations_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_organizations_example_call_tool.py deleted file mode 100644 index 579349ffa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_organizations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserOrganizations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number_to_fetch': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_projects_example_call_tool.js deleted file mode 100644 index 15988eb3f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_projects_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_username": "johnDoe", - "project_state": "open", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_projects_example_call_tool.py deleted file mode 100644 index 1fc366ed3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_projects_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_username': 'johnDoe', - 'project_state': 'open', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_received_public_events_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_received_public_events_example_call_tool.js deleted file mode 100644 index 4ebbf45a7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_received_public_events_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserReceivedPublicEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat", - "page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_received_public_events_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_received_public_events_example_call_tool.py deleted file mode 100644 index 8cf820d3f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_received_public_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserReceivedPublicEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat', 'page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_repositories_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_user_repositories_example_call_tool.js deleted file mode 100644 index 28d2ef378..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_repositories_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUserRepositories"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_repositories_before_timestamp": "2023-01-01T00:00:00Z", - "repository_affiliation_filter": "owner,collaborator", - "repository_type": "public", - "results_page_number": 1, - "results_per_page": 10, - "sort_order": "desc", - "sort_property": "updated" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_user_repositories_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_user_repositories_example_call_tool.py deleted file mode 100644 index f7a8237cc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_user_repositories_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUserRepositories" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_repositories_before_timestamp': '2023-01-01T00:00:00Z', - 'repository_affiliation_filter': 'owner,collaborator', - 'repository_type': 'public', - 'results_page_number': 1, - 'results_per_page': 10, - 'sort_order': 'desc', - 'sort_property': 'updated' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_users_with_branch_access_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_users_with_branch_access_example_call_tool.js deleted file mode 100644 index 9a1cc4a71..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_users_with_branch_access_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListUsersWithBranchAccess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_users_with_branch_access_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_users_with_branch_access_example_call_tool.py deleted file mode 100644 index 45aa0b528..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_users_with_branch_access_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListUsersWithBranchAccess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_watched_repos_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_watched_repos_example_call_tool.js deleted file mode 100644 index 9130c73b9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_watched_repos_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListWatchedRepos"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_watched_repos_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_watched_repos_example_call_tool.py deleted file mode 100644 index 7b56a31ef..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_watched_repos_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListWatchedRepos" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat', 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_watched_repositories_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_watched_repositories_example_call_tool.js deleted file mode 100644 index 7efde7c75..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_watched_repositories_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListWatchedRepositories"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_watched_repositories_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_watched_repositories_example_call_tool.py deleted file mode 100644 index d04a2f2dc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_watched_repositories_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListWatchedRepositories" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_watchers_for_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_watchers_for_repo_example_call_tool.js deleted file mode 100644 index 50b080309..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_watchers_for_repo_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListWatchersForRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_watchers_for_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_watchers_for_repo_example_call_tool.py deleted file mode 100644 index aa82ee4c9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_watchers_for_repo_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListWatchersForRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_webhook_deliveries_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_webhook_deliveries_example_call_tool.js deleted file mode 100644 index ee21ad716..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_webhook_deliveries_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListWebhookDeliveries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "only_redeliveries": true, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_webhook_deliveries_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_webhook_deliveries_example_call_tool.py deleted file mode 100644 index db66e2f1e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_webhook_deliveries_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListWebhookDeliveries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'only_redeliveries': True, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_workflow_artifacts_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_workflow_artifacts_example_call_tool.js deleted file mode 100644 index e861e088f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_workflow_artifacts_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListWorkflowArtifacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "workflow_run_id": 12345, - "page_number_to_fetch": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_workflow_artifacts_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_workflow_artifacts_example_call_tool.py deleted file mode 100644 index a56765009..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_workflow_artifacts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListWorkflowArtifacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'workflow_run_id': 12345, - 'page_number_to_fetch': 1, - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/list_workflow_run_jobs_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/list_workflow_run_jobs_example_call_tool.js deleted file mode 100644 index 5940b21f5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_workflow_run_jobs_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ListWorkflowRunJobs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "workflow_run_attempt_number": 1, - "workflow_run_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/list_workflow_run_jobs_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/list_workflow_run_jobs_example_call_tool.py deleted file mode 100644 index 74b9e2c48..000000000 --- a/public/examples/integrations/mcp-servers/github_api/list_workflow_run_jobs_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ListWorkflowRunJobs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'workflow_run_attempt_number': 1, - 'workflow_run_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/lock_github_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/lock_github_issue_example_call_tool.js deleted file mode 100644 index fdafdfc13..000000000 --- a/public/examples/integrations/mcp-servers/github_api/lock_github_issue_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.LockGithubIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_number": 42, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "issue_lock_reason": "spam" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/lock_github_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/lock_github_issue_example_call_tool.py deleted file mode 100644 index 88d4e1b71..000000000 --- a/public/examples/integrations/mcp-servers/github_api/lock_github_issue_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.LockGithubIssue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_number': 42, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'issue_lock_reason': 'spam' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/manage_enterprise_security_feature_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/manage_enterprise_security_feature_example_call_tool.js deleted file mode 100644 index e1849f526..000000000 --- a/public/examples/integrations/mcp-servers/github_api/manage_enterprise_security_feature_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ManageEnterpriseSecurityFeature"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "security_feature": "advanced_security", - "set_enablement_status": "enable_all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/manage_enterprise_security_feature_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/manage_enterprise_security_feature_example_call_tool.py deleted file mode 100644 index 8a534c97a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/manage_enterprise_security_feature_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ManageEnterpriseSecurityFeature" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', - 'security_feature': 'advanced_security', - 'set_enablement_status': 'enable_all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/manage_github_environment_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/manage_github_environment_secret_example_call_tool.js deleted file mode 100644 index 81ab37dcd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/manage_github_environment_secret_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ManageGithubEnvironmentSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "encrypted_secret_value": "gAAAAABgG1Y2...", - "encryption_key_id": "key_123456", - "environment_name": "production", - "repository_unique_id": 123456789, - "secret_name": "MY_SECRET" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/manage_github_environment_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/manage_github_environment_secret_example_call_tool.py deleted file mode 100644 index 1fba10f04..000000000 --- a/public/examples/integrations/mcp-servers/github_api/manage_github_environment_secret_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ManageGithubEnvironmentSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'encrypted_secret_value': 'gAAAAABgG1Y2...', - 'encryption_key_id': 'key_123456', - 'environment_name': 'production', - 'repository_unique_id': 123456789, - 'secret_name': 'MY_SECRET' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/manage_github_repo_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/manage_github_repo_secret_example_call_tool.js deleted file mode 100644 index 7d6968d94..000000000 --- a/public/examples/integrations/mcp-servers/github_api/manage_github_repo_secret_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ManageGithubRepoSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user", - "secret_name": "MY_SECRET", - "encrypted_secret_value": "[encrypted_value]" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/manage_github_repo_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/manage_github_repo_secret_example_call_tool.py deleted file mode 100644 index 954608483..000000000 --- a/public/examples/integrations/mcp-servers/github_api/manage_github_repo_secret_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ManageGithubRepoSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'secret_name': 'MY_SECRET', - 'encrypted_secret_value': '[encrypted_value]' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/manage_github_thread_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/manage_github_thread_notifications_example_call_tool.js deleted file mode 100644 index 28a6d22c4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/manage_github_thread_notifications_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ManageGithubThreadNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_thread_id": 123456, - "ignore_thread_notifications": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/manage_github_thread_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/manage_github_thread_notifications_example_call_tool.py deleted file mode 100644 index 1c91ffce9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/manage_github_thread_notifications_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ManageGithubThreadNotifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_thread_id': 123456, 'ignore_thread_notifications': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/manage_org_security_features_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/manage_org_security_features_example_call_tool.js deleted file mode 100644 index b067ca668..000000000 --- a/public/examples/integrations/mcp-servers/github_api/manage_org_security_features_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ManageOrgSecurityFeatures"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "security_feature": "dependabot_alerts", - "security_feature_action": "enable_all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/manage_org_security_features_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/manage_org_security_features_example_call_tool.py deleted file mode 100644 index 0790120a6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/manage_org_security_features_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ManageOrgSecurityFeatures" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'security_feature': 'dependabot_alerts', - 'security_feature_action': 'enable_all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/mark_github_notifications_as_read_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/mark_github_notifications_as_read_example_call_tool.js deleted file mode 100644 index 81c58068d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/mark_github_notifications_as_read_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.MarkGithubNotificationsAsRead"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mark_notifications_as_read": true, - "notifications_last_read_timestamp": "2023-10-01T12:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/mark_github_notifications_as_read_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/mark_github_notifications_as_read_example_call_tool.py deleted file mode 100644 index 3f212cf00..000000000 --- a/public/examples/integrations/mcp-servers/github_api/mark_github_notifications_as_read_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.MarkGithubNotificationsAsRead" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mark_notifications_as_read': True, 'notifications_last_read_timestamp': '2023-10-01T12:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/mark_github_thread_as_read_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/mark_github_thread_as_read_example_call_tool.js deleted file mode 100644 index 5b3f7d49a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/mark_github_thread_as_read_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.MarkGithubThreadAsRead"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_thread_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/mark_github_thread_as_read_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/mark_github_thread_as_read_example_call_tool.py deleted file mode 100644 index df80dc9c4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/mark_github_thread_as_read_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.MarkGithubThreadAsRead" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_thread_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/mark_repo_notifications_as_read_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/mark_repo_notifications_as_read_example_call_tool.js deleted file mode 100644 index ca11e2dd0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/mark_repo_notifications_as_read_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.MarkRepoNotificationsAsRead"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user", - "last_checked_timestamp": "2023-10-01T12:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/mark_repo_notifications_as_read_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/mark_repo_notifications_as_read_example_call_tool.py deleted file mode 100644 index 8564dea22..000000000 --- a/public/examples/integrations/mcp-servers/github_api/mark_repo_notifications_as_read_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.MarkRepoNotificationsAsRead" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'last_checked_timestamp': '2023-10-01T12:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/merge_github_branch_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/merge_github_branch_example_call_tool.js deleted file mode 100644 index 736100d99..000000000 --- a/public/examples/integrations/mcp-servers/github_api/merge_github_branch_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.MergeGithubBranch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base_branch_name": "main", - "head_branch_or_commit_sha": "feature-branch", - "repository_name": "example-repo", - "repository_owner": "user123", - "merge_commit_message": "Merging feature branch into main" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/merge_github_branch_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/merge_github_branch_example_call_tool.py deleted file mode 100644 index df30f5a74..000000000 --- a/public/examples/integrations/mcp-servers/github_api/merge_github_branch_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.MergeGithubBranch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base_branch_name': 'main', - 'head_branch_or_commit_sha': 'feature-branch', - 'repository_name': 'example-repo', - 'repository_owner': 'user123', - 'merge_commit_message': 'Merging feature branch into main' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/merge_github_pull_request_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/merge_github_pull_request_example_call_tool.js deleted file mode 100644 index 95afe9445..000000000 --- a/public/examples/integrations/mcp-servers/github_api/merge_github_pull_request_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.MergeGithubPullRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 42, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "commit_title": "Merging PR #42", - "merge_method": "squash" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/merge_github_pull_request_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/merge_github_pull_request_example_call_tool.py deleted file mode 100644 index 70502e7a4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/merge_github_pull_request_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.MergeGithubPullRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 42, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'commit_title': 'Merging PR #42', - 'merge_method': 'squash' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/move_github_project_column_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/move_github_project_column_example_call_tool.js deleted file mode 100644 index f4674b0dd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/move_github_project_column_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.MoveGithubProjectColumn"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "column_position": "after:123", - "project_column_id": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/move_github_project_column_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/move_github_project_column_example_call_tool.py deleted file mode 100644 index e3212bf96..000000000 --- a/public/examples/integrations/mcp-servers/github_api/move_github_project_column_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.MoveGithubProjectColumn" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'column_position': 'after:123', 'project_column_id': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/move_project_card_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/move_project_card_example_call_tool.js deleted file mode 100644 index 4108c26c0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/move_project_card_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.MoveProjectCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_identifier": 12345, - "card_position": "top", - "destination_column_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/move_project_card_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/move_project_card_example_call_tool.py deleted file mode 100644 index 57e516fc1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/move_project_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.MoveProjectCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_identifier': 12345, 'card_position': 'top', 'destination_column_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/mute_github_thread_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/mute_github_thread_notifications_example_call_tool.js deleted file mode 100644 index 101a4d343..000000000 --- a/public/examples/integrations/mcp-servers/github_api/mute_github_thread_notifications_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.MuteGithubThreadNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_thread_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/mute_github_thread_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/mute_github_thread_notifications_example_call_tool.py deleted file mode 100644 index 07aa2406d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/mute_github_thread_notifications_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.MuteGithubThreadNotifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_thread_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/organization_app_installations_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/organization_app_installations_example_call_tool.js deleted file mode 100644 index 49bbbef47..000000000 --- a/public/examples/integrations/mcp-servers/github_api/organization_app_installations_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.OrganizationAppInstallations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "page_number_to_fetch": 1, - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/organization_app_installations_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/organization_app_installations_example_call_tool.py deleted file mode 100644 index 189d763ce..000000000 --- a/public/examples/integrations/mcp-servers/github_api/organization_app_installations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.OrganizationAppInstallations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'page_number_to_fetch': 1, 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/promote_user_to_site_admin_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/promote_user_to_site_admin_example_call_tool.js deleted file mode 100644 index 8b82aa43d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/promote_user_to_site_admin_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.PromoteUserToSiteAdmin"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/promote_user_to_site_admin_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/promote_user_to_site_admin_example_call_tool.py deleted file mode 100644 index 80ebed826..000000000 --- a/public/examples/integrations/mcp-servers/github_api/promote_user_to_site_admin_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.PromoteUserToSiteAdmin" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/provision_enterprise_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/provision_enterprise_user_example_call_tool.js deleted file mode 100644 index 4c0648580..000000000 --- a/public/examples/integrations/mcp-servers/github_api/provision_enterprise_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ProvisionEnterpriseUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"userName\":\"jdoe\",\"emails\":[{\"value\":\"jdoe@example.com\"}],\"name\":{\"given\":\"John\",\"family\":\"Doe\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/provision_enterprise_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/provision_enterprise_user_example_call_tool.py deleted file mode 100644 index a057e7b64..000000000 --- a/public/examples/integrations/mcp-servers/github_api/provision_enterprise_user_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ProvisionEnterpriseUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"userName":"jdoe","emails":[{"value":"jdoe@example.com"}],"name":{"given":"John","family":"Doe"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/queue_ldap_sync_for_team_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/queue_ldap_sync_for_team_example_call_tool.js deleted file mode 100644 index b3787bf4c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/queue_ldap_sync_for_team_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.QueueLdapSyncForTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/queue_ldap_sync_for_team_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/queue_ldap_sync_for_team_example_call_tool.py deleted file mode 100644 index 260acc862..000000000 --- a/public/examples/integrations/mcp-servers/github_api/queue_ldap_sync_for_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.QueueLdapSyncForTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/redeliver_github_webhook_delivery_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/redeliver_github_webhook_delivery_example_call_tool.js deleted file mode 100644 index 3c1c23b50..000000000 --- a/public/examples/integrations/mcp-servers/github_api/redeliver_github_webhook_delivery_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RedeliverGithubWebhookDelivery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_delivery_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/redeliver_github_webhook_delivery_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/redeliver_github_webhook_delivery_example_call_tool.py deleted file mode 100644 index 6e2a02342..000000000 --- a/public/examples/integrations/mcp-servers/github_api/redeliver_github_webhook_delivery_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RedeliverGithubWebhookDelivery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_delivery_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/redeliver_github_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/redeliver_github_webhook_example_call_tool.js deleted file mode 100644 index f530c1284..000000000 --- a/public/examples/integrations/mcp-servers/github_api/redeliver_github_webhook_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RedeliverGithubWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hook_unique_identifier": 12345, - "repository_name": "sample-repo", - "repository_owner": "user123", - "webhook_delivery_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/redeliver_github_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/redeliver_github_webhook_example_call_tool.py deleted file mode 100644 index fba626605..000000000 --- a/public/examples/integrations/mcp-servers/github_api/redeliver_github_webhook_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RedeliverGithubWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hook_unique_identifier': 12345, - 'repository_name': 'sample-repo', - 'repository_owner': 'user123', - 'webhook_delivery_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/redeliver_webhook_delivery_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/redeliver_webhook_delivery_example_call_tool.js deleted file mode 100644 index 85a0d066d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/redeliver_webhook_delivery_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RedeliverWebhookDelivery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "ExampleOrg", - "webhook_delivery_id": 12345, - "webhook_hook_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/redeliver_webhook_delivery_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/redeliver_webhook_delivery_example_call_tool.py deleted file mode 100644 index e765e26c2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/redeliver_webhook_delivery_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RedeliverWebhookDelivery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'ExampleOrg', 'webhook_delivery_id': 12345, 'webhook_hook_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_actions_cache_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_actions_cache_key_example_call_tool.js deleted file mode 100644 index b083a926f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_actions_cache_key_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveActionsCacheKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cache_key": "my-cache-key", - "repository_name": "my-repo", - "repository_owner": "my-user", - "git_reference_for_cache_deletion": "refs/heads/main" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_actions_cache_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_actions_cache_key_example_call_tool.py deleted file mode 100644 index ee1edd27c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_actions_cache_key_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveActionsCacheKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cache_key': 'my-cache-key', - 'repository_name': 'my-repo', - 'repository_owner': 'my-user', - 'git_reference_for_cache_deletion': 'refs/heads/main' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_all_custom_labels_runner_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_all_custom_labels_runner_org_example_call_tool.js deleted file mode 100644 index d04ebac28..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_all_custom_labels_runner_org_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveAllCustomLabelsRunnerOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "runner_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_all_custom_labels_runner_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_all_custom_labels_runner_org_example_call_tool.py deleted file mode 100644 index ec3f1787f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_all_custom_labels_runner_org_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveAllCustomLabelsRunnerOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'runner_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_all_labels_from_github_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_all_labels_from_github_issue_example_call_tool.js deleted file mode 100644 index 0ee20cc74..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_all_labels_from_github_issue_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveAllLabelsFromGithubIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_issue_number": 42, - "repository_name": "example-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_all_labels_from_github_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_all_labels_from_github_issue_example_call_tool.py deleted file mode 100644 index a2639f514..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_all_labels_from_github_issue_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveAllLabelsFromGithubIssue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_issue_number': 42, 'repository_name': 'example-repo', 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_authorized_ssh_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_authorized_ssh_key_example_call_tool.js deleted file mode 100644 index ff126ca21..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_authorized_ssh_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveAuthorizedSshKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "public_ssh_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC3... user@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_authorized_ssh_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_authorized_ssh_key_example_call_tool.py deleted file mode 100644 index 677f52d70..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_authorized_ssh_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveAuthorizedSshKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'public_ssh_key': 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC3... user@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_branch_access_restriction_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_branch_access_restriction_example_call_tool.js deleted file mode 100644 index dc34b9641..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_branch_access_restriction_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveBranchAccessRestriction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_branch_access_restriction_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_branch_access_restriction_example_call_tool.py deleted file mode 100644 index be138fdca..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_branch_access_restriction_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveBranchAccessRestriction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_branch_status_check_contexts_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_branch_status_check_contexts_example_call_tool.js deleted file mode 100644 index 10544fbc5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_branch_status_check_contexts_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveBranchStatusCheckContexts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "branch_name": "main", - "request_body": "{\"contexts\":[\"ci-check\",\"test-check\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_branch_status_check_contexts_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_branch_status_check_contexts_example_call_tool.py deleted file mode 100644 index cbe865fc8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_branch_status_check_contexts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveBranchStatusCheckContexts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'branch_name': 'main', - 'request_body': '{"contexts":["ci-check","test-check"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_custom_label_from_runner_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_custom_label_from_runner_example_call_tool.js deleted file mode 100644 index 48d1a4e9c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_custom_label_from_runner_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveCustomLabelFromRunner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "runner_custom_label_name": "test-label", - "runner_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_custom_label_from_runner_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_custom_label_from_runner_example_call_tool.py deleted file mode 100644 index 3e3068e01..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_custom_label_from_runner_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveCustomLabelFromRunner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', - 'runner_custom_label_name': 'test-label', - 'runner_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_custom_labels_from_runner_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_custom_labels_from_runner_example_call_tool.js deleted file mode 100644 index f7b4a820e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_custom_labels_from_runner_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveCustomLabelsFromRunner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "runner_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_custom_labels_from_runner_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_custom_labels_from_runner_example_call_tool.py deleted file mode 100644 index ce53672fd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_custom_labels_from_runner_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveCustomLabelsFromRunner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'runner_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_custom_labels_runner_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_custom_labels_runner_repo_example_call_tool.js deleted file mode 100644 index 07943fdef..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_custom_labels_runner_repo_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveCustomLabelsRunnerRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "runner_unique_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_custom_labels_runner_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_custom_labels_runner_repo_example_call_tool.py deleted file mode 100644 index ad0bab939..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_custom_labels_runner_repo_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveCustomLabelsRunnerRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'runner_unique_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_enterprise_announcement_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_enterprise_announcement_example_call_tool.js deleted file mode 100644 index 2f8eb90ef..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_enterprise_announcement_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveEnterpriseAnnouncement"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_enterprise_announcement_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_enterprise_announcement_example_call_tool.py deleted file mode 100644 index 50b986eca..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_enterprise_announcement_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveEnterpriseAnnouncement" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_github_app_branch_access_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_github_app_branch_access_example_call_tool.js deleted file mode 100644 index 8874bb8fe..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_github_app_branch_access_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveGithubAppBranchAccess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner_account": "exampleUser", - "repository_name": "exampleRepo", - "branch_name": "main", - "request_body": "{\"app_id\": 12345}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_github_app_branch_access_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_github_app_branch_access_example_call_tool.py deleted file mode 100644 index 77442e70a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_github_app_branch_access_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveGithubAppBranchAccess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner_account': 'exampleUser', - 'repository_name': 'exampleRepo', - 'branch_name': 'main', - 'request_body': '{"app_id": 12345}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_github_app_suspension_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_github_app_suspension_example_call_tool.js deleted file mode 100644 index cd51e8d2d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_github_app_suspension_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveGithubAppSuspension"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "installation_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_github_app_suspension_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_github_app_suspension_example_call_tool.py deleted file mode 100644 index a195f3f90..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_github_app_suspension_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveGithubAppSuspension" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'installation_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_github_org_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_github_org_secret_example_call_tool.js deleted file mode 100644 index 9abd231a8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_github_org_secret_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveGithubOrgSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "secret_name_to_delete": "my-secret" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_github_org_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_github_org_secret_example_call_tool.py deleted file mode 100644 index 6b3138dbb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_github_org_secret_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveGithubOrgSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'secret_name_to_delete': 'my-secret' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_github_repo_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_github_repo_secret_example_call_tool.js deleted file mode 100644 index ff5f9052b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_github_repo_secret_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveGithubRepoSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "secret_name": "MY_SECRET" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_github_repo_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_github_repo_secret_example_call_tool.py deleted file mode 100644 index 34a9c4d41..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_github_repo_secret_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveGithubRepoSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'secret_name': 'MY_SECRET' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_github_ssh_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_github_ssh_key_example_call_tool.js deleted file mode 100644 index acac92055..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_github_ssh_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveGithubSshKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ssh_key_unique_identifier": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_github_ssh_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_github_ssh_key_example_call_tool.py deleted file mode 100644 index 6b73a0b87..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_github_ssh_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveGithubSshKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ssh_key_unique_identifier': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_gpg_key_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_gpg_key_example_call_tool.js deleted file mode 100644 index ed3f1899c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_gpg_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveGpgKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gpg_key_identifier": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_gpg_key_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_gpg_key_example_call_tool.py deleted file mode 100644 index d0a037fad..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_gpg_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveGpgKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gpg_key_identifier': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_issue_assignees_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_issue_assignees_example_call_tool.js deleted file mode 100644 index c0818a0c1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_issue_assignees_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveIssueAssignees"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_number": 42, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "assignees_to_remove": [ - "user1", - "user2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_issue_assignees_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_issue_assignees_example_call_tool.py deleted file mode 100644 index 6ce9c7c61..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_issue_assignees_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveIssueAssignees" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_number': 42, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'assignees_to_remove': ['user1', 'user2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_issue_label_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_issue_label_example_call_tool.js deleted file mode 100644 index 38d56f772..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_issue_label_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveIssueLabel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_number": 42, - "label_name": "bug", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_issue_label_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_issue_label_example_call_tool.py deleted file mode 100644 index c6e71ab0b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_issue_label_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveIssueLabel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_number': 42, - 'label_name': 'bug', - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_org_access_runner_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_org_access_runner_group_example_call_tool.js deleted file mode 100644 index 2397ec8fb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_org_access_runner_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveOrgAccessRunnerGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "organization_id": 12345, - "runner_group_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_org_access_runner_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_org_access_runner_group_example_call_tool.py deleted file mode 100644 index 6b6e33738..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_org_access_runner_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveOrgAccessRunnerGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'organization_id': 12345, 'runner_group_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_org_announcement_banner_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_org_announcement_banner_example_call_tool.js deleted file mode 100644 index 29b8bbdf0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_org_announcement_banner_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveOrgAnnouncementBanner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_org_announcement_banner_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_org_announcement_banner_example_call_tool.py deleted file mode 100644 index cc7752aad..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_org_announcement_banner_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveOrgAnnouncementBanner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_org_member_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_org_member_example_call_tool.js deleted file mode 100644 index 0373f93e9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_org_member_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveOrgMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_username": "johnDoe", - "organization_name": "OpenAI" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_org_member_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_org_member_example_call_tool.py deleted file mode 100644 index 3a7b110c4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_org_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveOrgMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_username': 'johnDoe', 'organization_name': 'OpenAI' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_org_outside_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_org_outside_collaborator_example_call_tool.js deleted file mode 100644 index 751244076..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_org_outside_collaborator_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveOrgOutsideCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123", - "organization_name": "exampleOrg" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_org_outside_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_org_outside_collaborator_example_call_tool.py deleted file mode 100644 index bda02a679..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_org_outside_collaborator_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveOrgOutsideCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123', 'organization_name': 'exampleOrg' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_org_pre_receive_hook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_org_pre_receive_hook_example_call_tool.js deleted file mode 100644 index 8789eac49..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_org_pre_receive_hook_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveOrgPreReceiveHook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "pre_receive_hook_id": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_org_pre_receive_hook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_org_pre_receive_hook_example_call_tool.py deleted file mode 100644 index 9562b1f87..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_org_pre_receive_hook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveOrgPreReceiveHook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'pre_receive_hook_id': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_organization_member_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_organization_member_example_call_tool.js deleted file mode 100644 index f9fb87e36..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_organization_member_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveOrganizationMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123", - "organization_name": "exampleOrg" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_organization_member_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_organization_member_example_call_tool.py deleted file mode 100644 index f84dd4d58..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_organization_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveOrganizationMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123', 'organization_name': 'exampleOrg' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_project_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_project_collaborator_example_call_tool.js deleted file mode 100644 index 9b3495b34..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_project_collaborator_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveProjectCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123", - "project_unique_identifier": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_project_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_project_collaborator_example_call_tool.py deleted file mode 100644 index 248e47114..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_project_collaborator_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveProjectCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123', 'project_unique_identifier': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_project_from_team_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_project_from_team_example_call_tool.js deleted file mode 100644 index af504e361..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_project_from_team_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveProjectFromTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "project_unique_identifier": 123, - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_project_from_team_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_project_from_team_example_call_tool.py deleted file mode 100644 index d569500fa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_project_from_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveProjectFromTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'project_unique_identifier': 123, 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_public_org_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_public_org_membership_example_call_tool.js deleted file mode 100644 index 6fc781a94..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_public_org_membership_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemovePublicOrgMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123", - "organization_name": "OpenSourceOrg" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_public_org_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_public_org_membership_example_call_tool.py deleted file mode 100644 index 940564efc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_public_org_membership_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemovePublicOrgMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123', 'organization_name': 'OpenSourceOrg' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_pull_request_review_protection_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_pull_request_review_protection_example_call_tool.js deleted file mode 100644 index 6d86ee258..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_pull_request_review_protection_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemovePullRequestReviewProtection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_pull_request_review_protection_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_pull_request_review_protection_example_call_tool.py deleted file mode 100644 index 641afb8bd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_pull_request_review_protection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemovePullRequestReviewProtection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_pull_request_reviewers_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_pull_request_reviewers_example_call_tool.js deleted file mode 100644 index cbc2880e1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_pull_request_reviewers_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemovePullRequestReviewers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "user_logins_to_remove": [ - "user1", - "user2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_pull_request_reviewers_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_pull_request_reviewers_example_call_tool.py deleted file mode 100644 index 6495154d5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_pull_request_reviewers_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemovePullRequestReviewers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 123, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'user_logins_to_remove': ['user1', 'user2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_access_from_runner_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_repo_access_from_runner_group_example_call_tool.js deleted file mode 100644 index e4cb387c7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_access_from_runner_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveRepoAccessFromRunnerGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_unique_id": 123, - "runner_group_unique_id": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_access_from_runner_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_repo_access_from_runner_group_example_call_tool.py deleted file mode 100644 index 7f8d3a3a8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_access_from_runner_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveRepoAccessFromRunnerGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'repository_unique_id': 123, 'runner_group_unique_id': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_repo_collaborator_example_call_tool.js deleted file mode 100644 index 22a71238e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_collaborator_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveRepoCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collaborator_username": "johnDoe", - "repository_name": "example-repo", - "repository_owner_name": "owner123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_repo_collaborator_example_call_tool.py deleted file mode 100644 index b38869e00..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_collaborator_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveRepoCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collaborator_username': 'johnDoe', - 'repository_name': 'example-repo', - 'repository_owner_name': 'owner123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_installation_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_repo_from_installation_example_call_tool.js deleted file mode 100644 index 230566d4b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_installation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveRepoFromInstallation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "installation_unique_identifier": 123456, - "repository_id": 78910 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_installation_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_repo_from_installation_example_call_tool.py deleted file mode 100644 index 4f2cbc872..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_installation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveRepoFromInstallation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'installation_unique_identifier': 123456, 'repository_id': 78910 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_org_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_repo_from_org_secret_example_call_tool.js deleted file mode 100644 index d9b15327f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_org_secret_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveRepoFromOrgSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_id": 12345, - "secret_name": "my_secret" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_org_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_repo_from_org_secret_example_call_tool.py deleted file mode 100644 index 05ec02b19..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_org_secret_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveRepoFromOrgSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'repository_id': 12345, 'secret_name': 'my_secret' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_org_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_repo_from_org_variable_example_call_tool.js deleted file mode 100644 index c835b5fed..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_org_variable_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveRepoFromOrgVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_id": 12345, - "variable_name": "example-variable" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_org_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_repo_from_org_variable_example_call_tool.py deleted file mode 100644 index 47152e7e6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_org_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveRepoFromOrgVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'repository_id': 12345, 'variable_name': 'example-variable' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_required_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_repo_from_required_workflow_example_call_tool.js deleted file mode 100644 index 6fe857edf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_required_workflow_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveRepoFromRequiredWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "exampleOrg", - "repository_identifier": 123, - "required_workflow_identifier": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_required_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_repo_from_required_workflow_example_call_tool.py deleted file mode 100644 index 4591aa972..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_required_workflow_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveRepoFromRequiredWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'exampleOrg', - 'repository_identifier': 123, - 'required_workflow_identifier': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_team_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_repo_from_team_example_call_tool.js deleted file mode 100644 index 9639044d0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_team_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveRepoFromTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_name": "sample-repo", - "repository_owner": "user123", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_team_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_repo_from_team_example_call_tool.py deleted file mode 100644 index 4dfcb6b8b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_from_team_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveRepoFromTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repository_name': 'sample-repo', - 'repository_owner': 'user123', - 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_hook_enforcement_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_repo_hook_enforcement_example_call_tool.js deleted file mode 100644 index 861761b5a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_hook_enforcement_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveRepoHookEnforcement"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pre_receive_hook_identifier": 123, - "repository_name": "example-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_repo_hook_enforcement_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_repo_hook_enforcement_example_call_tool.py deleted file mode 100644 index 1874b9b58..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_repo_hook_enforcement_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveRepoHookEnforcement" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pre_receive_hook_identifier': 123, - 'repository_name': 'example-repo', - 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_runner_from_enterprise_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_runner_from_enterprise_group_example_call_tool.js deleted file mode 100644 index de4eb5a4c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_runner_from_enterprise_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveRunnerFromEnterpriseGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "runner_group_id": 123, - "runner_identifier": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_runner_from_enterprise_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_runner_from_enterprise_group_example_call_tool.py deleted file mode 100644 index 6792bf1a6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_runner_from_enterprise_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveRunnerFromEnterpriseGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'runner_group_id': 123, 'runner_identifier': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_runner_from_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_runner_from_group_example_call_tool.js deleted file mode 100644 index 29cc598a7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_runner_from_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveRunnerFromGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "runner_group_identifier": 123, - "runner_id": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_runner_from_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_runner_from_group_example_call_tool.py deleted file mode 100644 index e60934923..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_runner_from_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveRunnerFromGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'runner_group_identifier': 123, 'runner_id': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_runner_label_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_runner_label_example_call_tool.js deleted file mode 100644 index da9178280..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_runner_label_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveRunnerLabel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "runner_custom_label_name": "build-label", - "runner_unique_identifier": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_runner_label_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_runner_label_example_call_tool.py deleted file mode 100644 index 4ae22ce4b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_runner_label_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveRunnerLabel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'runner_custom_label_name': 'build-label', - 'runner_unique_identifier': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_security_manager_role_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_security_manager_role_example_call_tool.js deleted file mode 100644 index 04d2b5c5d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_security_manager_role_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveSecurityManagerRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "team_identifier": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_security_manager_role_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_security_manager_role_example_call_tool.py deleted file mode 100644 index 185ed583b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_security_manager_role_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveSecurityManagerRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'team_identifier': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_example_call_tool.js deleted file mode 100644 index 6ebda74d5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveSelfHostedRunner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "runner_unique_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_example_call_tool.py deleted file mode 100644 index 56060d26b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveSelfHostedRunner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'runner_unique_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_from_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_from_enterprise_example_call_tool.js deleted file mode 100644 index d219df956..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_from_enterprise_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveSelfHostedRunnerFromEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "runner_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_from_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_from_enterprise_example_call_tool.py deleted file mode 100644 index 888b66171..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_from_enterprise_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveSelfHostedRunnerFromEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'runner_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_from_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_from_org_example_call_tool.js deleted file mode 100644 index 7c8ba52d7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_from_org_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveSelfHostedRunnerFromOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "runner_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_from_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_from_org_example_call_tool.py deleted file mode 100644 index 3d7589148..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_self_hosted_runner_from_org_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveSelfHostedRunnerFromOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'runner_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_status_check_protection_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_status_check_protection_example_call_tool.js deleted file mode 100644 index 2ec6a3a7b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_status_check_protection_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveStatusCheckProtection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "example-user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_status_check_protection_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_status_check_protection_example_call_tool.py deleted file mode 100644 index 476eb16ae..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_status_check_protection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveStatusCheckProtection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'example-user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_team_access_from_branch_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_team_access_from_branch_example_call_tool.js deleted file mode 100644 index 394926dcb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_team_access_from_branch_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveTeamAccessFromBranch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleOwner", - "repository_name": "exampleRepo", - "branch_name": "main", - "request_body": "{\"team\":\"exampleTeam\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_team_access_from_branch_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_team_access_from_branch_example_call_tool.py deleted file mode 100644 index eec58ac01..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_team_access_from_branch_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveTeamAccessFromBranch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleOwner', - 'repository_name': 'exampleRepo', - 'branch_name': 'main', - 'request_body': '{"team":"exampleTeam"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_team_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_team_membership_example_call_tool.js deleted file mode 100644 index 23c789b28..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_team_membership_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveTeamMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123", - "organization_name": "exampleOrg", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_team_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_team_membership_example_call_tool.py deleted file mode 100644 index 73e2924de..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_team_membership_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveTeamMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123', 'organization_name': 'exampleOrg', 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/remove_user_access_from_branch_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/remove_user_access_from_branch_example_call_tool.js deleted file mode 100644 index bd22ba4c0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_user_access_from_branch_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RemoveUserAccessFromBranch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "branch_name": "main", - "request_body": "{\"users\":[\"user1\",\"user2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/remove_user_access_from_branch_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/remove_user_access_from_branch_example_call_tool.py deleted file mode 100644 index 3fdf89207..000000000 --- a/public/examples/integrations/mcp-servers/github_api/remove_user_access_from_branch_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RemoveUserAccessFromBranch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'branch_name': 'main', - 'request_body': '{"users":["user1","user2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/rename_github_branch_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/rename_github_branch_example_call_tool.js deleted file mode 100644 index 6a6c800f2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/rename_github_branch_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RenameGithubBranch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "current_branch_name": "feature/old-name", - "new_branch_name": "feature/new-name", - "repository_name": "my-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/rename_github_branch_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/rename_github_branch_example_call_tool.py deleted file mode 100644 index b7ce71ea5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/rename_github_branch_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RenameGithubBranch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'current_branch_name': 'feature/old-name', - 'new_branch_name': 'feature/new-name', - 'repository_name': 'my-repo', - 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/render_markdown_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/render_markdown_example_call_tool.js deleted file mode 100644 index ecb3c442d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/render_markdown_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RenderMarkdown"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "markdown_text": "# Sample Title\nThis is a sample Markdown text.", - "rendering_mode": "gfm", - "repository_context": "octo-org/octo-repo" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/render_markdown_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/render_markdown_example_call_tool.py deleted file mode 100644 index 32f391efa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/render_markdown_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RenderMarkdown" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'markdown_text': '# Sample Title\nThis is a sample Markdown text.', - 'rendering_mode': 'gfm', - 'repository_context': 'octo-org/octo-repo' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/render_markdown_plain_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/render_markdown_plain_example_call_tool.js deleted file mode 100644 index d2372e8e3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/render_markdown_plain_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RenderMarkdownPlain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/render_markdown_plain_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/render_markdown_plain_example_call_tool.py deleted file mode 100644 index f6eee5199..000000000 --- a/public/examples/integrations/mcp-servers/github_api/render_markdown_plain_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RenderMarkdownPlain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/request_github_pages_build_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/request_github_pages_build_example_call_tool.js deleted file mode 100644 index a32933db5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/request_github_pages_build_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RequestGithubPagesBuild"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "my-github-pages", - "repository_owner_name": "johnDoe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/request_github_pages_build_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/request_github_pages_build_example_call_tool.py deleted file mode 100644 index 558735f7e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/request_github_pages_build_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RequestGithubPagesBuild" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'my-github-pages', 'repository_owner_name': 'johnDoe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/request_github_pull_request_reviewers_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/request_github_pull_request_reviewers_example_call_tool.js deleted file mode 100644 index 128b565e7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/request_github_pull_request_reviewers_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RequestGithubPullRequestReviewers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "octocat", - "repository_name": "Hello-World", - "pull_request_number": 42, - "request_body": "{\"reviewers\":[\"reviewer1\",\"reviewer2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/request_github_pull_request_reviewers_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/request_github_pull_request_reviewers_example_call_tool.py deleted file mode 100644 index 98bf40a52..000000000 --- a/public/examples/integrations/mcp-servers/github_api/request_github_pull_request_reviewers_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RequestGithubPullRequestReviewers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'octocat', - 'repository_name': 'Hello-World', - 'pull_request_number': 42, - 'request_body': '{"reviewers":["reviewer1","reviewer2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/require_signed_commits_on_branch_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/require_signed_commits_on_branch_example_call_tool.js deleted file mode 100644 index f8fb99261..000000000 --- a/public/examples/integrations/mcp-servers/github_api/require_signed_commits_on_branch_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RequireSignedCommitsOnBranch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/require_signed_commits_on_branch_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/require_signed_commits_on_branch_example_call_tool.py deleted file mode 100644 index 23926afa6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/require_signed_commits_on_branch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RequireSignedCommitsOnBranch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/rerequest_github_check_suite_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/rerequest_github_check_suite_example_call_tool.js deleted file mode 100644 index 381470602..000000000 --- a/public/examples/integrations/mcp-servers/github_api/rerequest_github_check_suite_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RerequestGithubCheckSuite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "check_suite_identifier": 123456, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/rerequest_github_check_suite_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/rerequest_github_check_suite_example_call_tool.py deleted file mode 100644 index ceaad5f87..000000000 --- a/public/examples/integrations/mcp-servers/github_api/rerequest_github_check_suite_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RerequestGithubCheckSuite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'check_suite_identifier': 123456, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/rerun_failed_github_workflow_jobs_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/rerun_failed_github_workflow_jobs_example_call_tool.js deleted file mode 100644 index 86526e6c7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/rerun_failed_github_workflow_jobs_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RerunFailedGithubWorkflowJobs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "workflow_run_id": 12345, - "enable_debug_logging": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/rerun_failed_github_workflow_jobs_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/rerun_failed_github_workflow_jobs_example_call_tool.py deleted file mode 100644 index 5324cf7ce..000000000 --- a/public/examples/integrations/mcp-servers/github_api/rerun_failed_github_workflow_jobs_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RerunFailedGithubWorkflowJobs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'workflow_run_id': 12345, - 'enable_debug_logging': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/rerun_github_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/rerun_github_workflow_example_call_tool.js deleted file mode 100644 index 52ebb19f1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/rerun_github_workflow_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RerunGithubWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "workflow_run_id": 12345, - "enable_debug_logging": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/rerun_github_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/rerun_github_workflow_example_call_tool.py deleted file mode 100644 index 571a0bf9b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/rerun_github_workflow_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RerunGithubWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'workflow_run_id': 12345, - 'enable_debug_logging': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/reset_github_oauth_token_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/reset_github_oauth_token_example_call_tool.js deleted file mode 100644 index 4cfdf4ab5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/reset_github_oauth_token_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ResetGithubOauthToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_app_client_id": "abc123", - "oauth_access_token": "token456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/reset_github_oauth_token_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/reset_github_oauth_token_example_call_tool.py deleted file mode 100644 index 5cbd9c018..000000000 --- a/public/examples/integrations/mcp-servers/github_api/reset_github_oauth_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ResetGithubOauthToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_app_client_id': 'abc123', 'oauth_access_token': 'token456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/retrieve_runner_details_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/retrieve_runner_details_example_call_tool.js deleted file mode 100644 index 05d249a60..000000000 --- a/public/examples/integrations/mcp-servers/github_api/retrieve_runner_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RetrieveRunnerDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "runner_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/retrieve_runner_details_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/retrieve_runner_details_example_call_tool.py deleted file mode 100644 index db6f7c65c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/retrieve_runner_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RetrieveRunnerDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner', 'runner_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/revoke_github_installation_token_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/revoke_github_installation_token_example_call_tool.js deleted file mode 100644 index 71d83f98b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/revoke_github_installation_token_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RevokeGithubInstallationToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/revoke_github_installation_token_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/revoke_github_installation_token_example_call_tool.py deleted file mode 100644 index abf5aa33c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/revoke_github_installation_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RevokeGithubInstallationToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/revoke_github_oauth_grant_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/revoke_github_oauth_grant_example_call_tool.js deleted file mode 100644 index 6dc660e5f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/revoke_github_oauth_grant_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RevokeGithubOauthGrant"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_app_client_id": "abc123", - "oauth_access_token": "token_xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/revoke_github_oauth_grant_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/revoke_github_oauth_grant_example_call_tool.py deleted file mode 100644 index eb77a05db..000000000 --- a/public/examples/integrations/mcp-servers/github_api/revoke_github_oauth_grant_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RevokeGithubOauthGrant" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_app_client_id': 'abc123', 'oauth_access_token': 'token_xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/revoke_github_oauth_token_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/revoke_github_oauth_token_example_call_tool.js deleted file mode 100644 index d04c8d787..000000000 --- a/public/examples/integrations/mcp-servers/github_api/revoke_github_oauth_token_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.RevokeGithubOauthToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_app_client_id": "abc123", - "oauth_access_token": "def456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/revoke_github_oauth_token_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/revoke_github_oauth_token_example_call_tool.py deleted file mode 100644 index f5ac87f23..000000000 --- a/public/examples/integrations/mcp-servers/github_api/revoke_github_oauth_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.RevokeGithubOauthToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_app_client_id': 'abc123', 'oauth_access_token': 'def456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/search_code_in_github_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/search_code_in_github_example_call_tool.js deleted file mode 100644 index 4888caeb6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/search_code_in_github_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SearchCodeInGithub"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query": "def my_function", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/search_code_in_github_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/search_code_in_github_example_call_tool.py deleted file mode 100644 index e5f5be115..000000000 --- a/public/examples/integrations/mcp-servers/github_api/search_code_in_github_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SearchCodeInGithub" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query': 'def my_function', 'results_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/search_github_commits_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/search_github_commits_example_call_tool.js deleted file mode 100644 index 532f83987..000000000 --- a/public/examples/integrations/mcp-servers/github_api/search_github_commits_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SearchGithubCommits"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "commit_search_query": "fix bug", - "result_order": "desc", - "results_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/search_github_commits_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/search_github_commits_example_call_tool.py deleted file mode 100644 index e9d626800..000000000 --- a/public/examples/integrations/mcp-servers/github_api/search_github_commits_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SearchGithubCommits" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'commit_search_query': 'fix bug', - 'result_order': 'desc', - 'results_page_number': 1, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/search_github_issues_and_prs_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/search_github_issues_and_prs_example_call_tool.js deleted file mode 100644 index f3aa635a0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/search_github_issues_and_prs_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SearchGithubIssuesAndPrs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query": "bug fix", - "results_page_number": 1, - "results_per_page": 10, - "sort_by": "created", - "sort_order": "desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/search_github_issues_and_prs_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/search_github_issues_and_prs_example_call_tool.py deleted file mode 100644 index 242a33544..000000000 --- a/public/examples/integrations/mcp-servers/github_api/search_github_issues_and_prs_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SearchGithubIssuesAndPrs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query': 'bug fix', - 'results_page_number': 1, - 'results_per_page': 10, - 'sort_by': 'created', - 'sort_order': 'desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/search_github_repositories_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/search_github_repositories_example_call_tool.js deleted file mode 100644 index 9671f2ee0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/search_github_repositories_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SearchGithubRepositories"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query": "machine learning", - "result_order": "desc", - "results_page_number": 1, - "results_per_page": 10, - "sort_by": "stars" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/search_github_repositories_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/search_github_repositories_example_call_tool.py deleted file mode 100644 index 535de0f74..000000000 --- a/public/examples/integrations/mcp-servers/github_api/search_github_repositories_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SearchGithubRepositories" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query': 'machine learning', - 'result_order': 'desc', - 'results_page_number': 1, - 'results_per_page': 10, - 'sort_by': 'stars' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/search_github_topics_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/search_github_topics_example_call_tool.js deleted file mode 100644 index e4b1ada84..000000000 --- a/public/examples/integrations/mcp-servers/github_api/search_github_topics_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SearchGithubTopics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query": "machine learning", - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/search_github_topics_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/search_github_topics_example_call_tool.py deleted file mode 100644 index c2f1116ae..000000000 --- a/public/examples/integrations/mcp-servers/github_api/search_github_topics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SearchGithubTopics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query': 'machine learning', 'result_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/send_github_hook_ping_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/send_github_hook_ping_example_call_tool.js deleted file mode 100644 index 4cabf4e15..000000000 --- a/public/examples/integrations/mcp-servers/github_api/send_github_hook_ping_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SendGithubHookPing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "webhook_hook_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/send_github_hook_ping_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/send_github_hook_ping_example_call_tool.py deleted file mode 100644 index 232db4e8d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/send_github_hook_ping_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SendGithubHookPing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'webhook_hook_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/send_ping_event_to_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/send_ping_event_to_webhook_example_call_tool.js deleted file mode 100644 index a5518bdcd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/send_ping_event_to_webhook_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SendPingEventToWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "SampleOwner", - "webhook_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/send_ping_event_to_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/send_ping_event_to_webhook_example_call_tool.py deleted file mode 100644 index 225475df1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/send_ping_event_to_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SendPingEventToWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', 'repository_owner': 'SampleOwner', 'webhook_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_admin_branch_protection_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_admin_branch_protection_example_call_tool.js deleted file mode 100644 index f8d090ab9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_admin_branch_protection_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetAdminBranchProtection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name": "main", - "repository_name": "example-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_admin_branch_protection_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_admin_branch_protection_example_call_tool.py deleted file mode 100644 index eca4e5f0e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_admin_branch_protection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetAdminBranchProtection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name': 'main', 'repository_name': 'example-repo', 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_allowed_actions_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_allowed_actions_enterprise_example_call_tool.js deleted file mode 100644 index c57987778..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_allowed_actions_enterprise_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetAllowedActionsEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "allow_github_owned_actions": true, - "allowed_action_patterns": [ - "*.yml", - "actions/*" - ], - "enterprise_identifier": "my-enterprise" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_allowed_actions_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_allowed_actions_enterprise_example_call_tool.py deleted file mode 100644 index fce9294e4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_allowed_actions_enterprise_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetAllowedActionsEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'allow_github_owned_actions': True, - 'allowed_action_patterns': ['*.yml', 'actions/*'], - 'enterprise_identifier': 'my-enterprise' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_allowed_actions_for_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_allowed_actions_for_organization_example_call_tool.js deleted file mode 100644 index 0924de729..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_allowed_actions_for_organization_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetAllowedActionsForOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_name": "example-org", - "request_body": "{\"allowed_actions\": [\"action1\", \"action2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_allowed_actions_for_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_allowed_actions_for_organization_example_call_tool.py deleted file mode 100644 index bea8b1a7e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_allowed_actions_for_organization_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetAllowedActionsForOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_name': 'example-org', - 'request_body': '{"allowed_actions": ["action1", "action2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_branch_app_access_restrictions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_branch_app_access_restrictions_example_call_tool.js deleted file mode 100644 index 007568af6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_branch_app_access_restrictions_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetBranchAppAccessRestrictions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "branch_name": "main", - "request_body": "{\"apps\":[\"app1\",\"app2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_branch_app_access_restrictions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_branch_app_access_restrictions_example_call_tool.py deleted file mode 100644 index c7958eecc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_branch_app_access_restrictions_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetBranchAppAccessRestrictions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'branch_name': 'main', - 'request_body': '{"apps":["app1","app2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_branch_status_check_contexts_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_branch_status_check_contexts_example_call_tool.js deleted file mode 100644 index bd9d41e07..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_branch_status_check_contexts_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetBranchStatusCheckContexts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "branch_name": "main", - "request_body": "{\"context\": [\"ci/test\",\"ci/lint\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_branch_status_check_contexts_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_branch_status_check_contexts_example_call_tool.py deleted file mode 100644 index ef602879a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_branch_status_check_contexts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetBranchStatusCheckContexts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'branch_name': 'main', - 'request_body': '{"context": ["ci/test","ci/lint"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_branch_user_access_restrictions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_branch_user_access_restrictions_example_call_tool.js deleted file mode 100644 index 12aab5096..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_branch_user_access_restrictions_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetBranchUserAccessRestrictions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "sampleRepo", - "branch_name": "main", - "request_body": "{\"users\":[\"user1\",\"user2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_branch_user_access_restrictions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_branch_user_access_restrictions_example_call_tool.py deleted file mode 100644 index 87acd44d8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_branch_user_access_restrictions_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetBranchUserAccessRestrictions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'sampleRepo', - 'branch_name': 'main', - 'request_body': '{"users":["user1","user2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_check_suite_preferences_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_check_suite_preferences_example_call_tool.js deleted file mode 100644 index 1a6f1e88f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_check_suite_preferences_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetCheckSuitePreferences"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "request_body": "{\"auto_create_check_suites\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_check_suite_preferences_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_check_suite_preferences_example_call_tool.py deleted file mode 100644 index ebedb34d3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_check_suite_preferences_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetCheckSuitePreferences" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'request_body': '{"auto_create_check_suites":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_custom_labels_for_self_hosted_runner_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_custom_labels_for_self_hosted_runner_example_call_tool.js deleted file mode 100644 index 304f65b5d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_custom_labels_for_self_hosted_runner_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetCustomLabelsForSelfHostedRunner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_labels": [ - "linux", - "ci", - "test" - ], - "enterprise_identifier": "my-enterprise", - "self_hosted_runner_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_custom_labels_for_self_hosted_runner_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_custom_labels_for_self_hosted_runner_example_call_tool.py deleted file mode 100644 index 504d216f3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_custom_labels_for_self_hosted_runner_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetCustomLabelsForSelfHostedRunner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_labels': ['linux', 'ci', 'test'], - 'enterprise_identifier': 'my-enterprise', - 'self_hosted_runner_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_custom_labels_runner_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_custom_labels_runner_org_example_call_tool.js deleted file mode 100644 index e06b3d283..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_custom_labels_runner_org_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetCustomLabelsRunnerOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_labels": [ - "label1", - "label2" - ], - "organization_name": "exampleOrg", - "runner_identifier": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_custom_labels_runner_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_custom_labels_runner_org_example_call_tool.py deleted file mode 100644 index d1ea63592..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_custom_labels_runner_org_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetCustomLabelsRunnerOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_labels': ['label1', 'label2'], 'organization_name': 'exampleOrg', 'runner_identifier': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_default_github_actions_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_default_github_actions_permissions_example_call_tool.js deleted file mode 100644 index 5b98ead36..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_default_github_actions_permissions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetDefaultGithubActionsPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "allow_actions_to_approve_pull_requests": true, - "default_github_token_permissions": "write" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_default_github_actions_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_default_github_actions_permissions_example_call_tool.py deleted file mode 100644 index fa8098e66..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_default_github_actions_permissions_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetDefaultGithubActionsPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'allow_actions_to_approve_pull_requests': True, - 'default_github_token_permissions': 'write' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_enterprise_workflow_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_enterprise_workflow_permissions_example_call_tool.js deleted file mode 100644 index 8ba26f87e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_enterprise_workflow_permissions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetEnterpriseWorkflowPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "allow_approve_pull_request_reviews": true, - "default_workflow_permissions": "write" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_enterprise_workflow_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_enterprise_workflow_permissions_example_call_tool.py deleted file mode 100644 index a17c38090..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_enterprise_workflow_permissions_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetEnterpriseWorkflowPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', - 'allow_approve_pull_request_reviews': True, - 'default_workflow_permissions': 'write' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_gh_org_access_to_runner_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_gh_org_access_to_runner_group_example_call_tool.js deleted file mode 100644 index db90c771c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_gh_org_access_to_runner_group_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetGhOrgAccessToRunnerGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "organization_ids_for_runner_access": [ - 12345, - 67890 - ], - "runner_group_identifier": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_gh_org_access_to_runner_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_gh_org_access_to_runner_group_example_call_tool.py deleted file mode 100644 index 2e7ca9926..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_gh_org_access_to_runner_group_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetGhOrgAccessToRunnerGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', - 'organization_ids_for_runner_access': [12345, 67890], - 'runner_group_identifier': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_actions_allowed_in_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_github_actions_allowed_in_repo_example_call_tool.js deleted file mode 100644 index 5d51c902c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_actions_allowed_in_repo_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetGithubActionsAllowedInRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "request_body": "{\"allowed_actions\": [\"action1\", \"action2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_actions_allowed_in_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_github_actions_allowed_in_repo_example_call_tool.py deleted file mode 100644 index da3b02793..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_actions_allowed_in_repo_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetGithubActionsAllowedInRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'request_body': '{"allowed_actions": ["action1", "action2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_actions_cache_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_github_actions_cache_policy_example_call_tool.js deleted file mode 100644 index 36ad3997e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_actions_cache_policy_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetGithubActionsCachePolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "default_repo_cache_size_limit_gb": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_actions_cache_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_github_actions_cache_policy_example_call_tool.py deleted file mode 100644 index a482532f2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_actions_cache_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetGithubActionsCachePolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'default_repo_cache_size_limit_gb': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_actions_enabled_orgs_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_github_actions_enabled_orgs_example_call_tool.js deleted file mode 100644 index 7b0d98872..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_actions_enabled_orgs_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetGithubActionsEnabledOrgs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_slug_or_id": "my-enterprise", - "organization_ids_for_github_actions": [ - 12345, - 67890 - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_actions_enabled_orgs_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_github_actions_enabled_orgs_example_call_tool.py deleted file mode 100644 index f149c61d5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_actions_enabled_orgs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetGithubActionsEnabledOrgs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_slug_or_id': 'my-enterprise', 'organization_ids_for_github_actions': [12345, 67890] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_actions_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_github_actions_permissions_example_call_tool.js deleted file mode 100644 index 98eac9088..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_actions_permissions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetGithubActionsPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enabled_organizations_policy": "selected", - "enterprise_identifier": "my-enterprise", - "actions_permission_policy": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_actions_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_github_actions_permissions_example_call_tool.py deleted file mode 100644 index 2fae464c5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_actions_permissions_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetGithubActionsPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enabled_organizations_policy': 'selected', - 'enterprise_identifier': 'my-enterprise', - 'actions_permission_policy': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_actions_repos_for_org_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_github_actions_repos_for_org_example_call_tool.js deleted file mode 100644 index 36e7add91..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_actions_repos_for_org_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetGithubActionsReposForOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_ids_for_github_actions": [ - 123456, - 789012 - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_actions_repos_for_org_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_github_actions_repos_for_org_example_call_tool.py deleted file mode 100644 index 6bc4cbc8e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_actions_repos_for_org_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetGithubActionsReposForOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'repository_ids_for_github_actions': [123456, 789012] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_announcement_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_github_announcement_example_call_tool.js deleted file mode 100644 index 98eee56af..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_announcement_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetGithubAnnouncement"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "announcement_text_gfm": "**Important Update:** System maintenance scheduled for this weekend.", - "announcement_expiration_time": "2023-10-15T23:59:59Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_announcement_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_github_announcement_example_call_tool.py deleted file mode 100644 index 76536e38a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_announcement_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetGithubAnnouncement" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'announcement_text_gfm': '**Important Update:** System maintenance scheduled for this weekend.', - 'announcement_expiration_time': '2023-10-15T23:59:59Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_branch_team_access_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_github_branch_team_access_example_call_tool.js deleted file mode 100644 index ca9ec25c4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_branch_team_access_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetGithubBranchTeamAccess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "branch_name": "main", - "request_body": "{\"teams\":[\"team1\",\"team2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_branch_team_access_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_github_branch_team_access_example_call_tool.py deleted file mode 100644 index f34de14ac..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_branch_team_access_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetGithubBranchTeamAccess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'branch_name': 'main', - 'request_body': '{"teams":["team1","team2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_enterprise_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_github_enterprise_settings_example_call_tool.js deleted file mode 100644 index 4be90ad50..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_enterprise_settings_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetGithubEnterpriseSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "new_settings_json_string": "{\"feature_flags\":{\"issues\":true,\"projects\":false},\"default_branch\":\"main\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_enterprise_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_github_enterprise_settings_example_call_tool.py deleted file mode 100644 index aab05c378..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_enterprise_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetGithubEnterpriseSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'new_settings_json_string': '{"feature_flags":{"issues":true,"projects":false},"default_branch":"main"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_issue_labels_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_github_issue_labels_example_call_tool.js deleted file mode 100644 index bbee7f922..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_issue_labels_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetGithubIssueLabels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "sample-repo", - "issue_number": 42, - "request_body": "{\"labels\": [\"bug\", \"enhancement\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_issue_labels_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_github_issue_labels_example_call_tool.py deleted file mode 100644 index d15cc0939..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_issue_labels_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetGithubIssueLabels" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'sample-repo', - 'issue_number': 42, - 'request_body': '{"labels": ["bug", "enhancement"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_oidc_subject_claim_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_github_oidc_subject_claim_example_call_tool.js deleted file mode 100644 index 524321c31..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_oidc_subject_claim_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetGithubOidcSubjectClaim"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner", - "use_default_template": true, - "claim_keys_to_include": [ - "user_id", - "email" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_oidc_subject_claim_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_github_oidc_subject_claim_example_call_tool.py deleted file mode 100644 index 211f3da19..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_oidc_subject_claim_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetGithubOidcSubjectClaim" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'use_default_template': True, - 'claim_keys_to_include': ['user_id', 'email'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_repos_for_required_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_github_repos_for_required_workflow_example_call_tool.js deleted file mode 100644 index b6bd1de1d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_repos_for_required_workflow_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetGithubReposForRequiredWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_ids_for_required_workflow": [ - 12345, - 67890 - ], - "required_workflow_identifier": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_repos_for_required_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_github_repos_for_required_workflow_example_call_tool.py deleted file mode 100644 index 3bbcf1e36..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_repos_for_required_workflow_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetGithubReposForRequiredWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repository_ids_for_required_workflow': [12345, 67890], - 'required_workflow_identifier': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_runner_group_repo_access_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_github_runner_group_repo_access_example_call_tool.js deleted file mode 100644 index 9156436b8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_runner_group_repo_access_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetGithubRunnerGroupRepoAccess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_ids_for_access": [ - 12345, - 67890 - ], - "runner_group_id": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_github_runner_group_repo_access_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_github_runner_group_repo_access_example_call_tool.py deleted file mode 100644 index baaba21cf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_github_runner_group_repo_access_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetGithubRunnerGroupRepoAccess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repository_ids_for_access': [12345, 67890], - 'runner_group_id': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_org_announcement_banner_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_org_announcement_banner_example_call_tool.js deleted file mode 100644 index 07b5b4c47..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_org_announcement_banner_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetOrgAnnouncementBanner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "announcement_text": "🚀 New features are coming soon! Check them out in our latest release notes.", - "organization_name": "example-org", - "announcement_expiry_time": "2023-12-31T23:59:59Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_org_announcement_banner_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_org_announcement_banner_example_call_tool.py deleted file mode 100644 index 19bec1801..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_org_announcement_banner_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetOrgAnnouncementBanner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'announcement_text': '🚀 New features are coming soon! Check them out in our latest release ' - 'notes.', - 'organization_name': 'example-org', - 'announcement_expiry_time': '2023-12-31T23:59:59Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_org_variable_repos_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_org_variable_repos_example_call_tool.js deleted file mode 100644 index d2469cb58..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_org_variable_repos_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetOrgVariableRepos"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_ids_for_access": [ - 101, - 202, - 303 - ], - "variable_name": "api_key" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_org_variable_repos_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_org_variable_repos_example_call_tool.py deleted file mode 100644 index d4c3bdb0e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_org_variable_repos_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetOrgVariableRepos" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repository_ids_for_access': [101, 202, 303], - 'variable_name': 'api_key' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_own_github_public_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_own_github_public_membership_example_call_tool.js deleted file mode 100644 index aa56001f1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_own_github_public_membership_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetOwnGithubPublicMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123", - "organization_name": "OpenAI" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_own_github_public_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_own_github_public_membership_example_call_tool.py deleted file mode 100644 index 7096729e1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_own_github_public_membership_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetOwnGithubPublicMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123', 'organization_name': 'OpenAI' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_repo_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_repo_subscription_example_call_tool.js deleted file mode 100644 index 96c0e9698..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_repo_subscription_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetRepoSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user", - "receive_notifications": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_repo_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_repo_subscription_example_call_tool.py deleted file mode 100644 index ab69516f0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_repo_subscription_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetRepoSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'receive_notifications': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_repos_for_org_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_repos_for_org_secret_example_call_tool.js deleted file mode 100644 index 724334019..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_repos_for_org_secret_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetReposForOrgSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "secret_name": "my-dependabot-secret", - "selected_repository_ids": [ - 123456, - 789012 - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_repos_for_org_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_repos_for_org_secret_example_call_tool.py deleted file mode 100644 index e8ac92d7e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_repos_for_org_secret_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetReposForOrgSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'secret_name': 'my-dependabot-secret', - 'selected_repository_ids': [123456, 789012] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_runner_labels_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_runner_labels_example_call_tool.js deleted file mode 100644 index 26e557a12..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_runner_labels_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetRunnerLabels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_labels_for_runner": [ - "linux", - "ci" - ], - "repository_name": "example-repo", - "repository_owner": "example-owner", - "runner_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_runner_labels_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_runner_labels_example_call_tool.py deleted file mode 100644 index 5bbb4fe26..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_runner_labels_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetRunnerLabels" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_labels_for_runner': ['linux', 'ci'], - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'runner_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/set_workflow_access_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/set_workflow_access_example_call_tool.js deleted file mode 100644 index e5ac9bcb8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_workflow_access_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SetWorkflowAccess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user", - "workflow_access_level": "user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/set_workflow_access_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/set_workflow_access_example_call_tool.py deleted file mode 100644 index 825fc0f90..000000000 --- a/public/examples/integrations/mcp-servers/github_api/set_workflow_access_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SetWorkflowAccess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'workflow_access_level': 'user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/star_github_gist_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/star_github_gist_example_call_tool.js deleted file mode 100644 index 7676db812..000000000 --- a/public/examples/integrations/mcp-servers/github_api/star_github_gist_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.StarGithubGist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gist_unique_id": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/star_github_gist_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/star_github_gist_example_call_tool.py deleted file mode 100644 index cc4ce3dc3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/star_github_gist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.StarGithubGist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gist_unique_id': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/star_github_repository_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/star_github_repository_example_call_tool.js deleted file mode 100644 index 6cb95f5b7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/star_github_repository_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.StarGithubRepository"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/star_github_repository_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/star_github_repository_example_call_tool.py deleted file mode 100644 index a77c1d59a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/star_github_repository_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.StarGithubRepository" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/start_github_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/start_github_configuration_example_call_tool.js deleted file mode 100644 index 525cc2772..000000000 --- a/public/examples/integrations/mcp-servers/github_api/start_github_configuration_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.StartGithubConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/start_github_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/start_github_configuration_example_call_tool.py deleted file mode 100644 index 0bdd76e1f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/start_github_configuration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.StartGithubConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/start_org_migration_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/start_org_migration_example_call_tool.js deleted file mode 100644 index 30e2ada48..000000000 --- a/public/examples/integrations/mcp-servers/github_api/start_org_migration_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.StartOrgMigration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repositories_to_migrate": [ - "repo1", - "repo2" - ], - "exclude_attachments": false, - "exclude_git_data": true, - "exclude_items": [ - "repositories" - ], - "lock_repositories": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/start_org_migration_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/start_org_migration_example_call_tool.py deleted file mode 100644 index 697bf8b10..000000000 --- a/public/examples/integrations/mcp-servers/github_api/start_org_migration_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.StartOrgMigration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repositories_to_migrate': ['repo1', 'repo2'], - 'exclude_attachments': False, - 'exclude_git_data': True, - 'exclude_items': ['repositories'], - 'lock_repositories': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/submit_pull_request_review_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/submit_pull_request_review_example_call_tool.js deleted file mode 100644 index e4f6e4d9f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/submit_pull_request_review_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SubmitPullRequestReview"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "review_action": "APPROVE", - "review_identifier": 456, - "review_body_text": "Looks good to me!" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/submit_pull_request_review_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/submit_pull_request_review_example_call_tool.py deleted file mode 100644 index 3a6e40129..000000000 --- a/public/examples/integrations/mcp-servers/github_api/submit_pull_request_review_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SubmitPullRequestReview" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 123, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'review_action': 'APPROVE', - 'review_identifier': 456, - 'review_body_text': 'Looks good to me!' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/suspend_github_app_installation_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/suspend_github_app_installation_example_call_tool.js deleted file mode 100644 index 504d6e362..000000000 --- a/public/examples/integrations/mcp-servers/github_api/suspend_github_app_installation_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SuspendGithubAppInstallation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "installation_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/suspend_github_app_installation_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/suspend_github_app_installation_example_call_tool.py deleted file mode 100644 index c95e44daf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/suspend_github_app_installation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SuspendGithubAppInstallation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'installation_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/suspend_github_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/suspend_github_user_example_call_tool.js deleted file mode 100644 index 6bea3a6f8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/suspend_github_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SuspendGithubUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "john_doe", - "suspension_reason": "Violation of community guidelines" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/suspend_github_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/suspend_github_user_example_call_tool.py deleted file mode 100644 index 2737a97a0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/suspend_github_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SuspendGithubUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'john_doe', 'suspension_reason': 'Violation of community guidelines' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/sync_fork_with_upstream_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/sync_fork_with_upstream_example_call_tool.js deleted file mode 100644 index a66ff477f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/sync_fork_with_upstream_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SyncForkWithUpstream"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name_to_sync": "main", - "repository_name": "my-repo", - "repository_owner": "my-username" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/sync_fork_with_upstream_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/sync_fork_with_upstream_example_call_tool.py deleted file mode 100644 index 11e9c86fb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/sync_fork_with_upstream_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SyncForkWithUpstream" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name_to_sync': 'main', 'repository_name': 'my-repo', 'repository_owner': 'my-username' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/sync_github_ldap_user_mapping_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/sync_github_ldap_user_mapping_example_call_tool.js deleted file mode 100644 index 6207eca56..000000000 --- a/public/examples/integrations/mcp-servers/github_api/sync_github_ldap_user_mapping_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.SyncGithubLdapUserMapping"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/sync_github_ldap_user_mapping_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/sync_github_ldap_user_mapping_example_call_tool.py deleted file mode 100644 index 1300a0c0b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/sync_github_ldap_user_mapping_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.SyncGithubLdapUserMapping" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/toggle_maintenance_mode_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/toggle_maintenance_mode_example_call_tool.js deleted file mode 100644 index 5f09ba7f9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/toggle_maintenance_mode_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.ToggleMaintenanceMode"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maintenance_mode_settings": "{\"enabled\": true, \"when\": \"now\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/toggle_maintenance_mode_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/toggle_maintenance_mode_example_call_tool.py deleted file mode 100644 index 47f45f9c0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/toggle_maintenance_mode_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.ToggleMaintenanceMode" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maintenance_mode_settings': '{"enabled": true, "when": "now"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/transfer_github_repository_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/transfer_github_repository_example_call_tool.js deleted file mode 100644 index 0e336f9ca..000000000 --- a/public/examples/integrations/mcp-servers/github_api/transfer_github_repository_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.TransferGithubRepository"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "new_owner_username_or_org": "newOwner123", - "repository_name": "sample-repo", - "repository_owner": "oldOwner456", - "new_repository_name": "new-sample-repo", - "team_ids_to_add": [ - 101, - 102 - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/transfer_github_repository_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/transfer_github_repository_example_call_tool.py deleted file mode 100644 index 63636cf09..000000000 --- a/public/examples/integrations/mcp-servers/github_api/transfer_github_repository_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.TransferGithubRepository" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'new_owner_username_or_org': 'newOwner123', - 'repository_name': 'sample-repo', - 'repository_owner': 'oldOwner456', - 'new_repository_name': 'new-sample-repo', - 'team_ids_to_add': [101, 102] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/trigger_environment_download_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/trigger_environment_download_example_call_tool.js deleted file mode 100644 index 2ac04acd8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/trigger_environment_download_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.TriggerEnvironmentDownload"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pre_receive_environment_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/trigger_environment_download_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/trigger_environment_download_example_call_tool.py deleted file mode 100644 index a6ab3e3ae..000000000 --- a/public/examples/integrations/mcp-servers/github_api/trigger_environment_download_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.TriggerEnvironmentDownload" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pre_receive_environment_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/trigger_github_check_rerequest_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/trigger_github_check_rerequest_example_call_tool.js deleted file mode 100644 index 3abbf41f0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/trigger_github_check_rerequest_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.TriggerGithubCheckRerequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "check_run_identifier": 123456, - "repository_name": "example-repo", - "repository_owner_account": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/trigger_github_check_rerequest_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/trigger_github_check_rerequest_example_call_tool.py deleted file mode 100644 index 6de2bd073..000000000 --- a/public/examples/integrations/mcp-servers/github_api/trigger_github_check_rerequest_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.TriggerGithubCheckRerequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'check_run_identifier': 123456, - 'repository_name': 'example-repo', - 'repository_owner_account': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/trigger_github_dispatch_event_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/trigger_github_dispatch_event_example_call_tool.js deleted file mode 100644 index dc600482e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/trigger_github_dispatch_event_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.TriggerGithubDispatchEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/trigger_github_dispatch_event_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/trigger_github_dispatch_event_example_call_tool.py deleted file mode 100644 index 7122b3edc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/trigger_github_dispatch_event_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.TriggerGithubDispatchEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/trigger_github_webhook_ping_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/trigger_github_webhook_ping_example_call_tool.js deleted file mode 100644 index 52f7af3a3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/trigger_github_webhook_ping_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.TriggerGithubWebhookPing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_hook_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/trigger_github_webhook_ping_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/trigger_github_webhook_ping_example_call_tool.py deleted file mode 100644 index 8457fbb65..000000000 --- a/public/examples/integrations/mcp-servers/github_api/trigger_github_webhook_ping_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.TriggerGithubWebhookPing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_hook_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/trigger_github_webhook_test_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/trigger_github_webhook_test_example_call_tool.js deleted file mode 100644 index 1f8cc7ef6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/trigger_github_webhook_test_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.TriggerGithubWebhookTest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "user123", - "webhook_identifier": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/trigger_github_webhook_test_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/trigger_github_webhook_test_example_call_tool.py deleted file mode 100644 index 51b7d7517..000000000 --- a/public/examples/integrations/mcp-servers/github_api/trigger_github_webhook_test_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.TriggerGithubWebhookTest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', 'repository_owner': 'user123', 'webhook_identifier': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/unfollow_github_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/unfollow_github_user_example_call_tool.js deleted file mode 100644 index 0b211dc9b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unfollow_github_user_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UnfollowGithubUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle_to_unfollow": "exampleUser123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/unfollow_github_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/unfollow_github_user_example_call_tool.py deleted file mode 100644 index 478683485..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unfollow_github_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UnfollowGithubUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle_to_unfollow': 'exampleUser123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/uninstall_github_app_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/uninstall_github_app_example_call_tool.js deleted file mode 100644 index 408e1473f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/uninstall_github_app_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UninstallGithubApp"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "installation_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/uninstall_github_app_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/uninstall_github_app_example_call_tool.py deleted file mode 100644 index ad93e49fc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/uninstall_github_app_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UninstallGithubApp" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'installation_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/unlink_external_idp_group_from_team_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/unlink_external_idp_group_from_team_example_call_tool.js deleted file mode 100644 index 2459eb9c9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unlink_external_idp_group_from_team_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UnlinkExternalIdpGroupFromTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/unlink_external_idp_group_from_team_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/unlink_external_idp_group_from_team_example_call_tool.py deleted file mode 100644 index 6d9764c02..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unlink_external_idp_group_from_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UnlinkExternalIdpGroupFromTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/unlock_github_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/unlock_github_issue_example_call_tool.js deleted file mode 100644 index 8f81f0e02..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unlock_github_issue_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UnlockGithubIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_id": 123, - "repository_name": "sample-repo", - "repository_owner": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/unlock_github_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/unlock_github_issue_example_call_tool.py deleted file mode 100644 index 637e1a62e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unlock_github_issue_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UnlockGithubIssue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issue_id': 123, 'repository_name': 'sample-repo', 'repository_owner': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/unlock_github_repo_for_org_migration_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/unlock_github_repo_for_org_migration_example_call_tool.js deleted file mode 100644 index f8f275f39..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unlock_github_repo_for_org_migration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UnlockGithubRepoForOrgMigration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "migration_unique_identifier": 12345, - "organization_name": "example-org", - "repository_name": "example-repo" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/unlock_github_repo_for_org_migration_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/unlock_github_repo_for_org_migration_example_call_tool.py deleted file mode 100644 index 71c252a6d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unlock_github_repo_for_org_migration_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UnlockGithubRepoForOrgMigration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'migration_unique_identifier': 12345, - 'organization_name': 'example-org', - 'repository_name': 'example-repo' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/unstar_github_gist_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/unstar_github_gist_example_call_tool.js deleted file mode 100644 index 9d4f3976c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unstar_github_gist_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UnstarGithubGist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gist_identifier": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/unstar_github_gist_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/unstar_github_gist_example_call_tool.py deleted file mode 100644 index 390b21fde..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unstar_github_gist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UnstarGithubGist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gist_identifier': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/unstar_github_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/unstar_github_repo_example_call_tool.js deleted file mode 100644 index eafc909ed..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unstar_github_repo_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UnstarGithubRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/unstar_github_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/unstar_github_repo_example_call_tool.py deleted file mode 100644 index 0cdbfa4e8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unstar_github_repo_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UnstarGithubRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/unsubscribe_from_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/unsubscribe_from_repo_example_call_tool.js deleted file mode 100644 index 46bb56a04..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unsubscribe_from_repo_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UnsubscribeFromRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/unsubscribe_from_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/unsubscribe_from_repo_example_call_tool.py deleted file mode 100644 index 0e337c51e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unsubscribe_from_repo_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UnsubscribeFromRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/unsuspend_github_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/unsuspend_github_user_example_call_tool.js deleted file mode 100644 index dd6d94269..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unsuspend_github_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UnsuspendGithubUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe", - "unsuspension_reason": "Restored access after review" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/unsuspend_github_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/unsuspend_github_user_example_call_tool.py deleted file mode 100644 index 30212a7d0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/unsuspend_github_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UnsuspendGithubUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe', 'unsuspension_reason': 'Restored access after review' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_branch_protection_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_branch_protection_example_call_tool.js deleted file mode 100644 index 2fdf06a4c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_branch_protection_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateBranchProtection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "branch_name": "main", - "request_body": "{\"required_status_checks\": {\"strict\": true, \"contexts\": [\"ci/test\"]}, \"enforce_admins\": true, \"required_pull_request_reviews\": {\"dismiss_stale_reviews\": true, \"require_code_owner_reviews\": true}, \"restrictions\": {\"users\": [\"user1\"], \"teams\": [\"team1\"]}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_branch_protection_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_branch_protection_example_call_tool.py deleted file mode 100644 index 9c6318901..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_branch_protection_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateBranchProtection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'branch_name': 'main', - 'request_body': '{"required_status_checks": {"strict": true, "contexts": ["ci/test"]}, ' - '"enforce_admins": true, "required_pull_request_reviews": ' - '{"dismiss_stale_reviews": true, "require_code_owner_reviews": true}, ' - '"restrictions": {"users": ["user1"], "teams": ["team1"]}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_branch_status_check_protection_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_branch_status_check_protection_example_call_tool.js deleted file mode 100644 index 5629e17ae..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_branch_status_check_protection_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateBranchStatusCheckProtection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "branch_name": "main", - "request_body": "{\"required_status_checks\": {\"strict\": true, \"contexts\": [\"ci/test\",\"ci/lint\"]}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_branch_status_check_protection_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_branch_status_check_protection_example_call_tool.py deleted file mode 100644 index 403c03635..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_branch_status_check_protection_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateBranchStatusCheckProtection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'branch_name': 'main', - 'request_body': '{"required_status_checks": {"strict": true, "contexts": ' - '["ci/test","ci/lint"]}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_check_run_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_check_run_status_example_call_tool.js deleted file mode 100644 index f9b4b5e04..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_check_run_status_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateCheckRunStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "octocat", - "repository_name": "Hello-World", - "check_run_identifier": 123, - "request_body": "{\"status\":\"completed\",\"conclusion\":\"success\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_check_run_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_check_run_status_example_call_tool.py deleted file mode 100644 index afa52cafa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_check_run_status_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateCheckRunStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'octocat', - 'repository_name': 'Hello-World', - 'check_run_identifier': 123, - 'request_body': '{"status":"completed","conclusion":"success"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_commit_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_commit_comment_example_call_tool.js deleted file mode 100644 index 488ef3e30..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_commit_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateCommitComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_contents": "Updated comment text", - "comment_unique_id": 12345, - "repository_name": "sample-repo", - "repository_owner": "sample-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_commit_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_commit_comment_example_call_tool.py deleted file mode 100644 index 94d79cbe0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_commit_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateCommitComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_contents': 'Updated comment text', - 'comment_unique_id': 12345, - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_deployment_branch_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_deployment_branch_policy_example_call_tool.js deleted file mode 100644 index 1e412a908..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_deployment_branch_policy_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateDeploymentBranchPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name_pattern": "feature/*", - "branch_policy_identifier": 123, - "environment_name": "production", - "repository_name": "my-repo", - "repository_owner": "my-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_deployment_branch_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_deployment_branch_policy_example_call_tool.py deleted file mode 100644 index 0e40a3a0d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_deployment_branch_policy_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateDeploymentBranchPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name_pattern': 'feature/*', - 'branch_policy_identifier': 123, - 'environment_name': 'production', - 'repository_name': 'my-repo', - 'repository_owner': 'my-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_enterprise_group_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_enterprise_group_attributes_example_call_tool.js deleted file mode 100644 index d16024aec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_enterprise_group_attributes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateEnterpriseGroupAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "scim_group_identifier": "group123", - "request_body": "{\"attributes\":[{\"op\":\"replace\",\"path\":\"displayName\",\"value\":\"New Group Name\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_enterprise_group_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_enterprise_group_attributes_example_call_tool.py deleted file mode 100644 index 5afb50b40..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_enterprise_group_attributes_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateEnterpriseGroupAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'scim_group_identifier': 'group123', - 'request_body': '{"attributes":[{"op":"replace","path":"displayName","value":"New Group ' - 'Name"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_enterprise_group_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_enterprise_group_info_example_call_tool.js deleted file mode 100644 index 09b4452ec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_enterprise_group_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateEnterpriseGroupInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "scim_group_identifier": "group123", - "request_body": "{\"name\":\"New Group Name\",\"members\":[{\"value\":\"user1\"},{\"value\":\"user2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_enterprise_group_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_enterprise_group_info_example_call_tool.py deleted file mode 100644 index aac1d1b8a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_enterprise_group_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateEnterpriseGroupInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'scim_group_identifier': 'group123', - 'request_body': '{"name":"New Group Name","members":[{"value":"user1"},{"value":"user2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_enterprise_user_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_enterprise_user_attribute_example_call_tool.js deleted file mode 100644 index 23ecb2fec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_enterprise_user_attribute_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateEnterpriseUserAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "scim_user_id": "12345", - "request_body": "{\"attributes\":{\"email\":\"newemail@example.com\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_enterprise_user_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_enterprise_user_attribute_example_call_tool.py deleted file mode 100644 index 62ffa100e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_enterprise_user_attribute_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateEnterpriseUserAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'scim_user_id': '12345', - 'request_body': '{"attributes":{"email":"newemail@example.com"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_gist_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_gist_comment_example_call_tool.js deleted file mode 100644 index fa82ea21e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_gist_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGistComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_identifier": 12345, - "comment_text": "Updated comment text.", - "gist_identifier": "abcde12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_gist_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_gist_comment_example_call_tool.py deleted file mode 100644 index 908d54ed1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_gist_comment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGistComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_identifier': 12345, - 'comment_text': 'Updated comment text.', - 'gist_identifier': 'abcde12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_git_reference_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_git_reference_example_call_tool.js deleted file mode 100644 index 8ef461866..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_git_reference_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGitReference"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fully_qualified_reference_name": "refs/heads/main", - "repository_name": "example-repo", - "repository_owner": "example-user", - "target_sha1_value": "abc123def4567890abcdef1234567890abcdef12", - "force_update": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_git_reference_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_git_reference_example_call_tool.py deleted file mode 100644 index 372872cdc..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_git_reference_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGitReference" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fully_qualified_reference_name': 'refs/heads/main', - 'repository_name': 'example-repo', - 'repository_owner': 'example-user', - 'target_sha1_value': 'abc123def4567890abcdef1234567890abcdef12', - 'force_update': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_actions_env_var_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_actions_env_var_example_call_tool.js deleted file mode 100644 index ae44fb5a3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_actions_env_var_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubActionsEnvVar"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_name": "production", - "repository_id": 123456, - "environment_variable_value": "new_value", - "variable_name": "API_KEY" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_actions_env_var_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_actions_env_var_example_call_tool.py deleted file mode 100644 index 60d7553a0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_actions_env_var_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubActionsEnvVar" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_name': 'production', - 'repository_id': 123456, - 'environment_variable_value': 'new_value', - 'variable_name': 'API_KEY' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_app_webhook_config_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_app_webhook_config_example_call_tool.js deleted file mode 100644 index 4f193b789..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_app_webhook_config_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubAppWebhookConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"url\":\"https://example.com/webhook\",\"secret\":\"mysecret\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_app_webhook_config_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_app_webhook_config_example_call_tool.py deleted file mode 100644 index 8b562ceb4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_app_webhook_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubAppWebhookConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"url":"https://example.com/webhook","secret":"mysecret"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_code_scanning_alert_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_code_scanning_alert_example_call_tool.js deleted file mode 100644 index 88412c260..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_code_scanning_alert_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubCodeScanningAlert"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alert_identifier_number": 12345, - "alert_state": "dismissed", - "repository_name": "example-repo", - "repository_owner": "example-owner", - "dismissal_comment": "This alert is a false positive.", - "dismissed_reason_for_alert": "false positive" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_code_scanning_alert_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_code_scanning_alert_example_call_tool.py deleted file mode 100644 index c9e203931..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_code_scanning_alert_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubCodeScanningAlert" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alert_identifier_number': 12345, - 'alert_state': 'dismissed', - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'dismissal_comment': 'This alert is a false positive.', - 'dismissed_reason_for_alert': 'false positive' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_dependabot_alert_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_dependabot_alert_example_call_tool.js deleted file mode 100644 index a88199066..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_dependabot_alert_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubDependabotAlert"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alert_identifier": 123, - "alert_state": "dismissed", - "repository_name": "example-repo", - "repository_owner": "example-owner", - "dismissed_alert_comment": "This alert is not relevant.", - "dismissed_reason_for_alert": "not_used" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_dependabot_alert_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_dependabot_alert_example_call_tool.py deleted file mode 100644 index 9e60d720b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_dependabot_alert_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubDependabotAlert" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alert_identifier': 123, - 'alert_state': 'dismissed', - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'dismissed_alert_comment': 'This alert is not relevant.', - 'dismissed_reason_for_alert': 'not_used' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_discussion_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_discussion_comment_example_call_tool.js deleted file mode 100644 index f2be4448f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_discussion_comment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubDiscussionComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_identifier": 12345, - "discussion_comment_body": "Updated comment text.", - "discussion_id": 67890, - "organization_name": "example-org", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_discussion_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_discussion_comment_example_call_tool.py deleted file mode 100644 index 628076400..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_discussion_comment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubDiscussionComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_identifier': 12345, - 'discussion_comment_body': 'Updated comment text.', - 'discussion_id': 67890, - 'organization_name': 'example-org', - 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_gist_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_gist_example_call_tool.js deleted file mode 100644 index 210d50d9d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_gist_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubGist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "gist_unique_identifier": "123456789abcdef", - "request_body": "{\"description\":\"Updated description\",\"files\":{\"file1.txt\":{\"content\":\"New content for file1\"}}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_gist_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_gist_example_call_tool.py deleted file mode 100644 index e31e9f8c3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_gist_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubGist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'gist_unique_identifier': '123456789abcdef', - 'request_body': '{"description":"Updated description","files":{"file1.txt":{"content":"New ' - 'content for file1"}}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_issue_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_issue_comment_example_call_tool.js deleted file mode 100644 index 85ec0604d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_issue_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubIssueComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_contents": "Updated comment text", - "comment_identifier": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_issue_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_issue_comment_example_call_tool.py deleted file mode 100644 index 3ecf2820c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_issue_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubIssueComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'comment_contents': 'Updated comment text', - 'comment_identifier': 12345, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_issue_example_call_tool.js deleted file mode 100644 index 8e3c08532..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_issue_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "octocat", - "repository_name": "Hello-World", - "issue_identifier": 42, - "request_body": "{\"title\":\"Updated issue title\",\"body\":\"This is the updated body of the issue.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_issue_example_call_tool.py deleted file mode 100644 index 854234da2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_issue_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubIssue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'octocat', - 'repository_name': 'Hello-World', - 'issue_identifier': 42, - 'request_body': '{"title":"Updated issue title","body":"This is the updated body of the ' - 'issue."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_label_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_label_example_call_tool.js deleted file mode 100644 index dfd08df14..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_label_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubLabel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "current_label_name": "bug", - "repository_name": "my-repo", - "repository_owner": "user123", - "label_color_hex_code": "ff0000", - "new_label_name": "issue" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_label_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_label_example_call_tool.py deleted file mode 100644 index 87f0d7f7a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_label_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubLabel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'current_label_name': 'bug', - 'repository_name': 'my-repo', - 'repository_owner': 'user123', - 'label_color_hex_code': 'ff0000', - 'new_label_name': 'issue' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_milestone_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_milestone_example_call_tool.js deleted file mode 100644 index 10d1a761e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_milestone_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubMilestone"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "milestone_id": 1, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "milestone_title": "Update API", - "milestone_due_date": "2023-12-31T23:59:59Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_milestone_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_milestone_example_call_tool.py deleted file mode 100644 index 23c223fa9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_milestone_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubMilestone" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'milestone_id': 1, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'milestone_title': 'Update API', - 'milestone_due_date': '2023-12-31T23:59:59Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_oidc_template_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_oidc_template_example_call_tool.js deleted file mode 100644 index ffe0d10e1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_oidc_template_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubOidcTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_claim_keys": [ - "user_id", - "email" - ], - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_oidc_template_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_oidc_template_example_call_tool.py deleted file mode 100644 index 11e5e3f7a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_oidc_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubOidcTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_claim_keys': ['user_id', 'email'], 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_org_action_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_org_action_variable_example_call_tool.js deleted file mode 100644 index 9f1b50f3c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_org_action_variable_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubOrgActionVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_visibility_type": "all", - "var_name": "API_KEY", - "variable_value": "new_value_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_org_action_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_org_action_variable_example_call_tool.py deleted file mode 100644 index 4ce760d37..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_org_action_variable_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubOrgActionVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repository_visibility_type': 'all', - 'var_name': 'API_KEY', - 'variable_value': 'new_value_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_org_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_org_membership_example_call_tool.js deleted file mode 100644 index 6e0491f22..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_org_membership_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubOrgMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "membership_state": "active", - "organization_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_org_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_org_membership_example_call_tool.py deleted file mode 100644 index 85f2a4c9e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_org_membership_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubOrgMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'membership_state': 'active', 'organization_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_org_name_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_org_name_example_call_tool.js deleted file mode 100644 index a229be54a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_org_name_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubOrgName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "current_organization_name": "OldOrgName", - "new_organization_name": "NewOrgName" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_org_name_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_org_name_example_call_tool.py deleted file mode 100644 index 59d10b0ce..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_org_name_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubOrgName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'current_organization_name': 'OldOrgName', 'new_organization_name': 'NewOrgName' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_org_secret_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_org_secret_example_call_tool.js deleted file mode 100644 index 88d814d66..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_org_secret_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubOrgSecret"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_access_type": "selected", - "secret_name": "my_secret", - "encrypted_secret_value": "[encrypted_value]", - "selected_repository_ids_to_include": [ - 123, - 456 - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_org_secret_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_org_secret_example_call_tool.py deleted file mode 100644 index 694ceea5e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_org_secret_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubOrgSecret" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repository_access_type': 'selected', - 'secret_name': 'my_secret', - 'encrypted_secret_value': '[encrypted_value]', - 'selected_repository_ids_to_include': [123, 456] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_org_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_org_webhook_example_call_tool.js deleted file mode 100644 index 3447a5ddf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_org_webhook_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubOrgWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_name": "example-org", - "webhook_identifier": 12345, - "request_body": "{\"url\":\"https://example.com/webhook\",\"secret\":\"mysecret\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_org_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_org_webhook_example_call_tool.py deleted file mode 100644 index f91c8f1c2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_org_webhook_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubOrgWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_name': 'example-org', - 'webhook_identifier': 12345, - 'request_body': '{"url":"https://example.com/webhook","secret":"mysecret"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_organization_example_call_tool.js deleted file mode 100644 index 40e0399a2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_organization_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_name": "example-org", - "request_body": "{\"profile\":{\"description\":\"A sample organization for demonstration.\"},\"member_privileges\":{\"repo_creation\":\"private\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_organization_example_call_tool.py deleted file mode 100644 index a434425ac..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_organization_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_name': 'example-org', - 'request_body': '{"profile":{"description":"A sample organization for ' - 'demonstration."},"member_privileges":{"repo_creation":"private"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_pages_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_pages_info_example_call_tool.js deleted file mode 100644 index f9d3eab8b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_pages_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubPagesInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "request_body": "{\"title\":\"My GitHub Pages Site\",\"description\":\"This is a sample GitHub Pages site.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_pages_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_pages_info_example_call_tool.py deleted file mode 100644 index 4e6b6c62d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_pages_info_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubPagesInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'request_body': '{"title":"My GitHub Pages Site","description":"This is a sample GitHub Pages ' - 'site."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_pre_receive_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_pre_receive_environment_example_call_tool.js deleted file mode 100644 index 72fcf02cd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_pre_receive_environment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubPreReceiveEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pre_receive_environment_id": 12345, - "new_environment_name": "staging-env" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_pre_receive_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_pre_receive_environment_example_call_tool.py deleted file mode 100644 index e09a7d25c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_pre_receive_environment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubPreReceiveEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pre_receive_environment_id': 12345, 'new_environment_name': 'staging-env' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_pre_receive_hook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_pre_receive_hook_example_call_tool.js deleted file mode 100644 index 13f580d34..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_pre_receive_hook_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubPreReceiveHook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "pre_receive_hook_id": 123, - "request_body": "{\"url\":\"https://example.com/hook\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_pre_receive_hook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_pre_receive_hook_example_call_tool.py deleted file mode 100644 index e34a10b02..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_pre_receive_hook_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubPreReceiveHook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'pre_receive_hook_id': 123, - 'request_body': '{"url":"https://example.com/hook","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_profile_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_profile_example_call_tool.js deleted file mode 100644 index 30ebe543f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_profile_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubProfile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "is_hireable": true, - "new_blog_url": "https://myblog.com", - "new_company_name": "Tech Innovations", - "new_location": "San Francisco, CA", - "new_twitter_username": "mytwitterhandle", - "new_user_biography": "Software engineer with a passion for open source.", - "new_user_name": "John Doe", - "public_visible_email_address": "john.doe@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_profile_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_profile_example_call_tool.py deleted file mode 100644 index 5da5d9d57..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_profile_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubProfile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'is_hireable': True, - 'new_blog_url': 'https://myblog.com', - 'new_company_name': 'Tech Innovations', - 'new_location': 'San Francisco, CA', - 'new_twitter_username': 'mytwitterhandle', - 'new_user_biography': 'Software engineer with a passion for open source.', - 'new_user_name': 'John Doe', - 'public_visible_email_address': 'john.doe@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_project_card_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_project_card_example_call_tool.js deleted file mode 100644 index 447195e7a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_project_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubProjectCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_identifier": 12345, - "card_note": "Updated note for the card." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_project_card_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_project_card_example_call_tool.py deleted file mode 100644 index 7e53f4fdb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_project_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubProjectCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_identifier': 12345, 'card_note': 'Updated note for the card.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_release_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_release_example_call_tool.js deleted file mode 100644 index 32290b906..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_release_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubRelease"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "release_identifier": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "release_name": "Updated Release Title", - "release_description": "This release includes important updates and fixes." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_release_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_release_example_call_tool.py deleted file mode 100644 index 74aa24e25..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_release_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubRelease" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'release_identifier': 123, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'release_name': 'Updated Release Title', - 'release_description': 'This release includes important updates and fixes.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_repo_topics_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_repo_topics_example_call_tool.js deleted file mode 100644 index c19a47bcd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_repo_topics_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubRepoTopics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "sample-repo", - "repository_owner": "SampleUser", - "repository_topic_names": [ - "ai", - "machine-learning", - "data-science" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_repo_topics_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_repo_topics_example_call_tool.py deleted file mode 100644 index abd9b34bb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_repo_topics_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubRepoTopics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'sample-repo', - 'repository_owner': 'SampleUser', - 'repository_topic_names': ['ai', 'machine-learning', 'data-science'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_repo_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_repo_variable_example_call_tool.js deleted file mode 100644 index 01e02305d..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_repo_variable_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubRepoVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repository_name": "my-repo", - "repository_owner": "my-user", - "env_variable_name": "API_KEY", - "repository_variable_value": "new_value" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_repo_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_repo_variable_example_call_tool.py deleted file mode 100644 index 71186583a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_repo_variable_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubRepoVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repository_name': 'my-repo', - 'repository_owner': 'my-user', - 'env_variable_name': 'API_KEY', - 'repository_variable_value': 'new_value' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_repo_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_repo_webhook_example_call_tool.js deleted file mode 100644 index 8825ef458..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_repo_webhook_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubRepoWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "octocat", - "repository_name": "Hello-World", - "webhook_unique_identifier": 123456, - "request_body": "{\"config\":{\"url\":\"https://example.com/webhook\",\"content_type\":\"json\"},\"events\":[\"push\",\"pull_request\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_repo_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_repo_webhook_example_call_tool.py deleted file mode 100644 index 164165238..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_repo_webhook_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubRepoWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'octocat', - 'repository_name': 'Hello-World', - 'webhook_unique_identifier': 123456, - 'request_body': '{"config":{"url":"https://example.com/webhook","content_type":"json"},"events":["push","pull_request"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_repository_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_repository_example_call_tool.js deleted file mode 100644 index 31159bc91..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_repository_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubRepository"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "sample-repo", - "request_body": "{\"description\":\"Updated repository description\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_repository_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_repository_example_call_tool.py deleted file mode 100644 index 7414319ca..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_repository_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubRepository" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'sample-repo', - 'request_body': '{"description":"Updated repository description"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_required_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_required_workflow_example_call_tool.js deleted file mode 100644 index 07d9ccdb8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_required_workflow_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubRequiredWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "required_workflow_identifier": 123, - "repository_id_for_workflow": "456", - "workflow_scope": "selected", - "repository_ids_for_workflow": [ - "789", - "101" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_required_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_required_workflow_example_call_tool.py deleted file mode 100644 index b7784bb59..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_required_workflow_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubRequiredWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'required_workflow_identifier': 123, - 'repository_id_for_workflow': '456', - 'workflow_scope': 'selected', - 'repository_ids_for_workflow': ['789', '101'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_team_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_team_example_call_tool.js deleted file mode 100644 index 0334401a2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_team_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "team_slug": "dev-team", - "team_name": "Development Team", - "team_privacy_level": "closed" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_team_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_team_example_call_tool.py deleted file mode 100644 index 72e1099df..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_team_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'team_slug': 'dev-team', - 'team_name': 'Development Team', - 'team_privacy_level': 'closed' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_username_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_github_username_example_call_tool.js deleted file mode 100644 index 93f92710e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_username_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGithubUsername"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "current_github_username": "old_username", - "new_github_username": "new_username" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_github_username_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_github_username_example_call_tool.py deleted file mode 100644 index 7ce0efe41..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_github_username_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGithubUsername" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'current_github_username': 'old_username', 'new_github_username': 'new_username' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_global_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_global_webhook_example_call_tool.js deleted file mode 100644 index 3c89f0ed8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_global_webhook_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateGlobalWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_identifier": 12345, - "hmac_secret_key": "my_secret_key", - "payload_delivery_url": "https://example.com/webhook", - "payload_media_type": "json", - "send_notifications_on_trigger": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_global_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_global_webhook_example_call_tool.py deleted file mode 100644 index 9d9d4e994..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_global_webhook_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateGlobalWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_identifier': 12345, - 'hmac_secret_key': 'my_secret_key', - 'payload_delivery_url': 'https://example.com/webhook', - 'payload_media_type': 'json', - 'send_notifications_on_trigger': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_hook_enforcement_for_repo_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_hook_enforcement_for_repo_example_call_tool.js deleted file mode 100644 index 598a494aa..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_hook_enforcement_for_repo_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateHookEnforcementForRepo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pre_receive_hook_id": 12345, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "hook_enforcement_state": "enabled" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_hook_enforcement_for_repo_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_hook_enforcement_for_repo_example_call_tool.py deleted file mode 100644 index 958b9887f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_hook_enforcement_for_repo_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateHookEnforcementForRepo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pre_receive_hook_id': 12345, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'hook_enforcement_state': 'enabled' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_ldap_mapping_for_team_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_ldap_mapping_for_team_example_call_tool.js deleted file mode 100644 index 54a570d54..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_ldap_mapping_for_team_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateLdapMappingForTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ldap_distinguished_name": "cn=developers,ou=groups,dc=example,dc=com", - "team_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_ldap_mapping_for_team_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_ldap_mapping_for_team_example_call_tool.py deleted file mode 100644 index 4472f9773..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_ldap_mapping_for_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateLdapMappingForTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ldap_distinguished_name': 'cn=developers,ou=groups,dc=example,dc=com', 'team_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_ldap_mapping_for_user_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_ldap_mapping_for_user_example_call_tool.js deleted file mode 100644 index f6c23d245..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_ldap_mapping_for_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateLdapMappingForUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123", - "ldap_distinguished_name": "cn=John Doe,ou=users,dc=example,dc=com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_ldap_mapping_for_user_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_ldap_mapping_for_user_example_call_tool.py deleted file mode 100644 index 583b3b008..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_ldap_mapping_for_user_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateLdapMappingForUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123', - 'ldap_distinguished_name': 'cn=John Doe,ou=users,dc=example,dc=com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_or_create_github_file_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_or_create_github_file_example_call_tool.js deleted file mode 100644 index fbed099b4..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_or_create_github_file_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateOrCreateGithubFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "sampleRepo", - "file_path_in_repository": "path/to/file.txt", - "request_body": "{\"content\":\"[file_content]\",\"message\":\"Update file content\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_or_create_github_file_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_or_create_github_file_example_call_tool.py deleted file mode 100644 index 2dd8c38b1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_or_create_github_file_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateOrCreateGithubFile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'sampleRepo', - 'file_path_in_repository': 'path/to/file.txt', - 'request_body': '{"content":"[file_content]","message":"Update file content"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_org_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_org_membership_example_call_tool.js deleted file mode 100644 index 754031217..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_org_membership_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateOrgMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "johnDoe123", - "organization_name": "OpenSourceOrg", - "user_role_in_organization": "member" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_org_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_org_membership_example_call_tool.py deleted file mode 100644 index f6bf074b7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_org_membership_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateOrgMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'johnDoe123', - 'organization_name': 'OpenSourceOrg', - 'user_role_in_organization': 'member' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_org_secret_repos_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_org_secret_repos_example_call_tool.js deleted file mode 100644 index c19a1964c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_org_secret_repos_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateOrgSecretRepos"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "repository_ids_for_access": [ - 12345, - 67890 - ], - "secret_name": "mySecret" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_org_secret_repos_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_org_secret_repos_example_call_tool.py deleted file mode 100644 index fb4c12bcb..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_org_secret_repos_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateOrgSecretRepos" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'repository_ids_for_access': [12345, 67890], - 'secret_name': 'mySecret' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_org_webhook_config_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_org_webhook_config_example_call_tool.js deleted file mode 100644 index 73bc99e7f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_org_webhook_config_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateOrgWebhookConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_name": "example-org", - "webhook_identifier": 12345, - "request_body": "{\"url\":\"https://example.com/webhook\",\"content_type\":\"json\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_org_webhook_config_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_org_webhook_config_example_call_tool.py deleted file mode 100644 index 4dbe3df65..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_org_webhook_config_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateOrgWebhookConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_name': 'example-org', - 'webhook_identifier': 12345, - 'request_body': '{"url":"https://example.com/webhook","content_type":"json"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_pre_receive_hook_enforcement_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_pre_receive_hook_enforcement_example_call_tool.js deleted file mode 100644 index 4735663d5..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_pre_receive_hook_enforcement_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdatePreReceiveHookEnforcement"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "pre_receive_hook_id": 123, - "allow_downstream_configuration": true, - "enforcement_state": "enabled" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_pre_receive_hook_enforcement_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_pre_receive_hook_enforcement_example_call_tool.py deleted file mode 100644 index 101aa36d8..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_pre_receive_hook_enforcement_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdatePreReceiveHookEnforcement" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'pre_receive_hook_id': 123, - 'allow_downstream_configuration': True, - 'enforcement_state': 'enabled' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_project_board_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_project_board_example_call_tool.js deleted file mode 100644 index e07f58522..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_project_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateProjectBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_unique_identifier": 12345, - "is_private": true, - "project_name": "New Project Title" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_project_board_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_project_board_example_call_tool.py deleted file mode 100644 index ccd661f69..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_project_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateProjectBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_unique_identifier': 12345, 'is_private': True, 'project_name': 'New Project Title' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_project_column_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_project_column_example_call_tool.js deleted file mode 100644 index abbc5520c..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_project_column_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateProjectColumn"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "column_identifier": 123, - "project_column_name": "In Progress" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_project_column_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_project_column_example_call_tool.py deleted file mode 100644 index 31dcd2e8e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_project_column_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateProjectColumn" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'column_identifier': 123, 'project_column_name': 'In Progress' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_provisioned_enterprise_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_provisioned_enterprise_user_info_example_call_tool.js deleted file mode 100644 index 7a2a344cd..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_provisioned_enterprise_user_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateProvisionedEnterpriseUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "scim_user_identifier": "user123", - "request_body": "{\"schemas\":[\"urn:ietf:params:scim:schemas:core:2.0:User\"],\"id\":\"user123\",\"userName\":\"jdoe\",\"name\":{\"given\":\"John\",\"family\":\"Doe\"},\"emails\":[{\"value\":\"jdoe@example.com\",\"primary\":true}],\"active\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_provisioned_enterprise_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_provisioned_enterprise_user_info_example_call_tool.py deleted file mode 100644 index 8eabef61f..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_provisioned_enterprise_user_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateProvisionedEnterpriseUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'scim_user_identifier': 'user123', - 'request_body': '{"schemas":["urn:ietf:params:scim:schemas:core:2.0:User"],"id":"user123","userName":"jdoe","name":{"given":"John","family":"Doe"},"emails":[{"value":"jdoe@example.com","primary":true}],"active":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_pull_request_branch_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_pull_request_branch_example_call_tool.js deleted file mode 100644 index 7833c0f82..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_pull_request_branch_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdatePullRequestBranch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_pull_request_branch_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_pull_request_branch_example_call_tool.py deleted file mode 100644 index fe6ce2a29..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_pull_request_branch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdatePullRequestBranch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 123, 'repository_name': 'example-repo', 'repository_owner': 'example-owner' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_pull_request_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_pull_request_example_call_tool.js deleted file mode 100644 index 1dd7bdb1b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_pull_request_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdatePullRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 42, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "pull_request_title": "Updated PR Title", - "pull_request_body": "This is the updated description of the pull request." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_pull_request_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_pull_request_example_call_tool.py deleted file mode 100644 index 608c80f6a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_pull_request_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdatePullRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 42, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'pull_request_title': 'Updated PR Title', - 'pull_request_body': 'This is the updated description of the pull request.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_pull_request_review_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_pull_request_review_example_call_tool.js deleted file mode 100644 index 00bf2e56b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_pull_request_review_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdatePullRequestReview"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pull_request_number": 123, - "repository_name": "example-repo", - "repository_owner": "example-owner", - "review_body_text": "Updated feedback on the pull request.", - "review_identifier": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_pull_request_review_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_pull_request_review_example_call_tool.py deleted file mode 100644 index 5a8d5fd2e..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_pull_request_review_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdatePullRequestReview" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pull_request_number': 123, - 'repository_name': 'example-repo', - 'repository_owner': 'example-owner', - 'review_body_text': 'Updated feedback on the pull request.', - 'review_identifier': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_pull_request_review_protection_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_pull_request_review_protection_example_call_tool.js deleted file mode 100644 index 1d68a29c6..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_pull_request_review_protection_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdatePullRequestReviewProtection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner_name": "exampleUser", - "repository_name": "exampleRepo", - "branch_name": "main", - "request_body": "{\"require_review\": true, \"dismiss_stale_reviews\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_pull_request_review_protection_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_pull_request_review_protection_example_call_tool.py deleted file mode 100644 index 28d483eea..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_pull_request_review_protection_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdatePullRequestReviewProtection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner_name': 'exampleUser', - 'repository_name': 'exampleRepo', - 'branch_name': 'main', - 'request_body': '{"require_review": true, "dismiss_stale_reviews": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_repo_actions_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_repo_actions_permissions_example_call_tool.js deleted file mode 100644 index 463d93141..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_repo_actions_permissions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateRepoActionsPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_github_actions": true, - "repository_name": "sample-repo", - "repository_owner": "user123", - "actions_permission_policy": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_repo_actions_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_repo_actions_permissions_example_call_tool.py deleted file mode 100644 index 574741433..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_repo_actions_permissions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateRepoActionsPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_github_actions': True, - 'repository_name': 'sample-repo', - 'repository_owner': 'user123', - 'actions_permission_policy': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_repo_invitation_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_repo_invitation_example_call_tool.js deleted file mode 100644 index 61391c290..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_repo_invitation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateRepoInvitation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invitation_id": 12345, - "repository_name": "sample-repo", - "repository_owner": "user123", - "user_permissions": "write" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_repo_invitation_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_repo_invitation_example_call_tool.py deleted file mode 100644 index 6877714ec..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_repo_invitation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateRepoInvitation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invitation_id': 12345, - 'repository_name': 'sample-repo', - 'repository_owner': 'user123', - 'user_permissions': 'write' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_repo_webhook_config_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_repo_webhook_config_example_call_tool.js deleted file mode 100644 index ae1f5567b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_repo_webhook_config_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateRepoWebhookConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "repository_owner": "exampleUser", - "repository_name": "exampleRepo", - "webhook_hook_id": 12345, - "request_body": "{\"url\":\"https://example.com/webhook\",\"content_type\":\"json\",\"secret\":\"mysecret\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_repo_webhook_config_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_repo_webhook_config_example_call_tool.py deleted file mode 100644 index faa590f83..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_repo_webhook_config_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateRepoWebhookConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'repository_owner': 'exampleUser', - 'repository_name': 'exampleRepo', - 'webhook_hook_id': 12345, - 'request_body': '{"url":"https://example.com/webhook","content_type":"json","secret":"mysecret"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_runner_group_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_runner_group_enterprise_example_call_tool.js deleted file mode 100644 index 2900db4df..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_runner_group_enterprise_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateRunnerGroupEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "runner_group_id": 12345, - "allow_public_repositories": true, - "runner_group_name": "Updated Runner Group", - "runner_group_visibility": "selected" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_runner_group_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_runner_group_enterprise_example_call_tool.py deleted file mode 100644 index 58cc97f5b..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_runner_group_enterprise_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateRunnerGroupEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', - 'runner_group_id': 12345, - 'allow_public_repositories': True, - 'runner_group_name': 'Updated Runner Group', - 'runner_group_visibility': 'selected' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_runner_group_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_runner_group_settings_example_call_tool.js deleted file mode 100644 index 2360696ee..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_runner_group_settings_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateRunnerGroupSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "runner_group_id": 12345, - "runner_group_name": "New Runner Group", - "allow_public_repository_usage": true, - "runner_group_visibility": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_runner_group_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_runner_group_settings_example_call_tool.py deleted file mode 100644 index 2978ec323..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_runner_group_settings_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateRunnerGroupSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', - 'runner_group_id': 12345, - 'runner_group_name': 'New Runner Group', - 'allow_public_repository_usage': True, - 'runner_group_visibility': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_secret_scanning_alert_status_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_secret_scanning_alert_status_example_call_tool.js deleted file mode 100644 index 77504abd9..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_secret_scanning_alert_status_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateSecretScanningAlertStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alert_identifier": 12345, - "alert_state": "resolved", - "repository_name": "my-repo", - "repository_owner": "my-org", - "alert_resolution_comment": "Resolved as false positive", - "resolution_reason_for_secret_scanning_alert": "false_positive" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_secret_scanning_alert_status_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_secret_scanning_alert_status_example_call_tool.py deleted file mode 100644 index d36130065..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_secret_scanning_alert_status_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateSecretScanningAlertStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alert_identifier': 12345, - 'alert_state': 'resolved', - 'repository_name': 'my-repo', - 'repository_owner': 'my-org', - 'alert_resolution_comment': 'Resolved as false positive', - 'resolution_reason_for_secret_scanning_alert': 'false_positive' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_security_settings_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_security_settings_enterprise_example_call_tool.js deleted file mode 100644 index e46785b66..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_security_settings_enterprise_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateSecuritySettingsEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "enable_dependabot_alerts_for_new_repositories": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_security_settings_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_security_settings_enterprise_example_call_tool.py deleted file mode 100644 index 7f4fdd460..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_security_settings_enterprise_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateSecuritySettingsEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', 'enable_dependabot_alerts_for_new_repositories': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_self_hosted_runners_for_org_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_self_hosted_runners_for_org_group_example_call_tool.js deleted file mode 100644 index ba535dad3..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_self_hosted_runners_for_org_group_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateSelfHostedRunnersForOrgGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "example-org", - "runner_group_id": 123, - "runner_ids_to_add": [ - 1, - 2, - 3 - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_self_hosted_runners_for_org_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_self_hosted_runners_for_org_group_example_call_tool.py deleted file mode 100644 index 2a0a35fb7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_self_hosted_runners_for_org_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateSelfHostedRunnersForOrgGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'example-org', 'runner_group_id': 123, 'runner_ids_to_add': [1, 2, 3] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_self_hosted_runners_in_group_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_self_hosted_runners_in_group_example_call_tool.js deleted file mode 100644 index 3a24a5160..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_self_hosted_runners_in_group_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateSelfHostedRunnersInGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_identifier": "my-enterprise", - "runner_group_identifier": 123, - "runner_ids_to_add": [ - 456, - 789 - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_self_hosted_runners_in_group_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_self_hosted_runners_in_group_example_call_tool.py deleted file mode 100644 index ffb74bb45..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_self_hosted_runners_in_group_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateSelfHostedRunnersInGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_identifier': 'my-enterprise', - 'runner_group_identifier': 123, - 'runner_ids_to_add': [456, 789] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_team_discussion_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_team_discussion_example_call_tool.js deleted file mode 100644 index 4a37d1aaf..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_team_discussion_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateTeamDiscussion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "discussion_id": 123, - "organization_name": "example-org", - "team_slug": "dev-team", - "discussion_body_text": "This is the updated content of the discussion.", - "discussion_title": "Updated Discussion Title" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_team_discussion_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_team_discussion_example_call_tool.py deleted file mode 100644 index 109fe70f0..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_team_discussion_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateTeamDiscussion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'discussion_id': 123, - 'organization_name': 'example-org', - 'team_slug': 'dev-team', - 'discussion_body_text': 'This is the updated content of the discussion.', - 'discussion_title': 'Updated Discussion Title' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/update_team_repo_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/update_team_repo_permissions_example_call_tool.js deleted file mode 100644 index 1eab8dce7..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_team_repo_permissions_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UpdateTeamRepoPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_name": "ExampleOrg", - "repository_name": "SampleRepo", - "repository_owner_account": "ExampleOwner", - "team_slug": "dev-team", - "team_repo_permission": "push" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/update_team_repo_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/update_team_repo_permissions_example_call_tool.py deleted file mode 100644 index de9f76c69..000000000 --- a/public/examples/integrations/mcp-servers/github_api/update_team_repo_permissions_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UpdateTeamRepoPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_name': 'ExampleOrg', - 'repository_name': 'SampleRepo', - 'repository_owner_account': 'ExampleOwner', - 'team_slug': 'dev-team', - 'team_repo_permission': 'push' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/upload_sarif_code_scanning_results_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/upload_sarif_code_scanning_results_example_call_tool.js deleted file mode 100644 index d4c6da1b1..000000000 --- a/public/examples/integrations/mcp-servers/github_api/upload_sarif_code_scanning_results_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UploadSarifCodeScanningResults"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "base64_compressed_sarif_data": "H4sIAAAAAAAAA6tWSs5M0UjOzy/1z8/8DgDgAIAAA=", - "commit_sha": "abc123def456ghi789jkl", - "git_reference": "refs/heads/main", - "repository_name": "sample-repo", - "repository_owner": "sample-owner", - "analysis_start_time": "2023-10-01T12:00:00Z", - "base_directory_for_analysis": "/src", - "tool_name": "CodeAnalyzer" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/upload_sarif_code_scanning_results_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/upload_sarif_code_scanning_results_example_call_tool.py deleted file mode 100644 index 8a3d05871..000000000 --- a/public/examples/integrations/mcp-servers/github_api/upload_sarif_code_scanning_results_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UploadSarifCodeScanningResults" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'base64_compressed_sarif_data': 'H4sIAAAAAAAAA6tWSs5M0UjOzy/1z8/8DgDgAIAAA=', - 'commit_sha': 'abc123def456ghi789jkl', - 'git_reference': 'refs/heads/main', - 'repository_name': 'sample-repo', - 'repository_owner': 'sample-owner', - 'analysis_start_time': '2023-10-01T12:00:00Z', - 'base_directory_for_analysis': '/src', - 'tool_name': 'CodeAnalyzer' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/github_api/user_following_list_example_call_tool.js b/public/examples/integrations/mcp-servers/github_api/user_following_list_example_call_tool.js deleted file mode 100644 index 932aa30d2..000000000 --- a/public/examples/integrations/mcp-servers/github_api/user_following_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GithubApi.UserFollowingList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "github_user_handle": "octocat", - "result_page_number": 1, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/github_api/user_following_list_example_call_tool.py b/public/examples/integrations/mcp-servers/github_api/user_following_list_example_call_tool.py deleted file mode 100644 index a34d8b27a..000000000 --- a/public/examples/integrations/mcp-servers/github_api/user_following_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GithubApi.UserFollowingList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'github_user_handle': 'octocat', 'result_page_number': 1, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/gmail/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/gmail/who_am_i_example_call_tool.js deleted file mode 100644 index 6f77952ba..000000000 --- a/public/examples/integrations/mcp-servers/gmail/who_am_i_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/gmail.readonly -// - https://www.googleapis.com/auth/userinfo.profile -// - https://www.googleapis.com/auth/userinfo.email - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Gmail.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/gmail/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/gmail/who_am_i_example_call_tool.py deleted file mode 100644 index e7b4ec01f..000000000 --- a/public/examples/integrations/mcp-servers/gmail/who_am_i_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/gmail.readonly -# - https://www.googleapis.com/auth/userinfo.profile -# - https://www.googleapis.com/auth/userinfo.email - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Gmail.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google/contacts/create_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/google/contacts/create_contact_example_call_tool.js deleted file mode 100644 index 8f7165ce8..000000000 --- a/public/examples/integrations/mcp-servers/google/contacts/create_contact_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/contacts - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleContacts.CreateContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - given_name: "John", - family_name: "Doe", - email: "john.doe@example.com", - phone_number: "+1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/contacts/create_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/google/contacts/create_contact_example_call_tool.py deleted file mode 100644 index 09c9fbf55..000000000 --- a/public/examples/integrations/mcp-servers/google/contacts/create_contact_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/contacts - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleContacts.CreateContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "given_name": "John", - "family_name": "Doe", - "email": "john.doe@example.com", - "phone_number": "+1234567890" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_email_example_call_tool.js b/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_email_example_call_tool.js deleted file mode 100644 index 23cdeb61b..000000000 --- a/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_email_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/contacts.readonly - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleContacts.SearchContactsByEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - email: "john.doe@example.com", - limit: 30, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_email_example_call_tool.py b/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_email_example_call_tool.py deleted file mode 100644 index 1684c67c6..000000000 --- a/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_email_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/contacts.readonly - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleContacts.SearchContactsByEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "email": "john.doe@example.com", - "limit": 30, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_name_example_call_tool.js deleted file mode 100644 index c382d2589..000000000 --- a/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_name_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/contacts.readonly - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleContacts.SearchContactsByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - name: "John Doe", - limit: 30, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_name_example_call_tool.py deleted file mode 100644 index 998930242..000000000 --- a/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_name_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/contacts.readonly - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleContacts.SearchContactsByName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "name": "John Doe", - "limit": 30, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_phone_number_example_call_tool.js b/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_phone_number_example_call_tool.js deleted file mode 100644 index 040099ad6..000000000 --- a/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_phone_number_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/contacts.readonly - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleContacts.SearchContactsByPhoneNumber"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - phone_number: "+1234567890", - limit: 30, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_phone_number_example_call_tool.py b/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_phone_number_example_call_tool.py deleted file mode 100644 index e39a143c0..000000000 --- a/public/examples/integrations/mcp-servers/google/contacts/search_contacts_by_phone_number_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/contacts.readonly - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleContacts.SearchContactsByPhoneNumber" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "phone_number": "+1234567890", - "limit": 30, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/docs/comment_on_document_example_call_tool.js b/public/examples/integrations/mcp-servers/google/docs/comment_on_document_example_call_tool.js deleted file mode 100644 index 70a66e29f..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/comment_on_document_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDocs.CommentOnDocument"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - document_id: "your_document_id_here", - comment_text: "This is a comment" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/docs/comment_on_document_example_call_tool.py b/public/examples/integrations/mcp-servers/google/docs/comment_on_document_example_call_tool.py deleted file mode 100644 index ae7f442d2..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/comment_on_document_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDocs.CommentOnDocument" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"document_id": "your_document_id_here", "comment_text": "This is a comment"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/docs/create_blank_document_example_call_tool.js b/public/examples/integrations/mcp-servers/google/docs/create_blank_document_example_call_tool.js deleted file mode 100644 index 0b7a62503..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/create_blank_document_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDocs.CreateBlankDocument"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - title: "New Document" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/docs/create_blank_document_example_call_tool.py b/public/examples/integrations/mcp-servers/google/docs/create_blank_document_example_call_tool.py deleted file mode 100644 index 23f521c10..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/create_blank_document_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDocs.CreateBlankDocument" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"title": "New Document"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/docs/create_document_from_text_example_call_tool.js b/public/examples/integrations/mcp-servers/google/docs/create_document_from_text_example_call_tool.js deleted file mode 100644 index ca376826b..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/create_document_from_text_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDocs.CreateDocumentFromText"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - title: "Project Plan", - text_content: "This is the project plan." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/docs/create_document_from_text_example_call_tool.py b/public/examples/integrations/mcp-servers/google/docs/create_document_from_text_example_call_tool.py deleted file mode 100644 index f57fc5c86..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/create_document_from_text_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDocs.CreateDocumentFromText" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"title": "Project Plan", "text_content": "This is the project plan."} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/docs/edit_document_example_call_tool.js b/public/examples/integrations/mcp-servers/google/docs/edit_document_example_call_tool.js deleted file mode 100644 index 486701553..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/edit_document_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDocs.EditDocument"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - document_id: "your_document_id_here", - edit_requests: ["Replace all occurances of 'lightning' with 'thunder'"], - reasoning_effort: "LOW", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/docs/edit_document_example_call_tool.py b/public/examples/integrations/mcp-servers/google/docs/edit_document_example_call_tool.py deleted file mode 100644 index a0ef87c9e..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/edit_document_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDocs.EditDocument" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "document_id": "your_document_id_here", - "edit_requests": ["Replace all occurances of 'lightning' with 'thunder'"], "reasoning_effort": "LOW" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/docs/get_document_as_doc_md_example_call_tool.js b/public/examples/integrations/mcp-servers/google/docs/get_document_as_doc_md_example_call_tool.js deleted file mode 100644 index 38abe2330..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/get_document_as_doc_md_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDocs.GetDocumentAsDocMD"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - document_id: "your_document_id_here", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/docs/get_document_as_doc_md_example_call_tool.py b/public/examples/integrations/mcp-servers/google/docs/get_document_as_doc_md_example_call_tool.py deleted file mode 100644 index b7c13e4bb..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/get_document_as_doc_md_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDocs.GetDocumentAsDocMD" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "document_id": "your_document_id_here", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/docs/get_document_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/google/docs/get_document_by_id_example_call_tool.js deleted file mode 100644 index a7d1b1e15..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/get_document_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDocs.GetDocumentById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - document_id: "your_document_id_here" // Document Ids can be found with the SearchDocuments tool -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/docs/get_document_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/google/docs/get_document_by_id_example_call_tool.py deleted file mode 100644 index e7981e681..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/get_document_by_id_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}}" -TOOL_NAME = "GoogleDocs.GetDocumentById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "document_id": "your_document_id_here" # Document Ids can be found with the SearchDocuments tool -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/docs/get_document_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/google/docs/get_document_metadata_example_call_tool.js deleted file mode 100644 index a874da5a8..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/get_document_metadata_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDocs.GetDocumentMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - document_id: "your_document_id_here" // Document Ids can be found with the SearchDocuments tool -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); - diff --git a/public/examples/integrations/mcp-servers/google/docs/get_document_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/google/docs/get_document_metadata_example_call_tool.py deleted file mode 100644 index 268c184d1..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/get_document_metadata_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDocs.GetDocumentMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "document_id": "your_document_id_here" # Document Ids can be found with the SearchDocuments tool -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) - diff --git a/public/examples/integrations/mcp-servers/google/docs/insert_text_at_end_of_document_example_call_tool.js b/public/examples/integrations/mcp-servers/google/docs/insert_text_at_end_of_document_example_call_tool.js deleted file mode 100644 index cdc3ecc23..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/insert_text_at_end_of_document_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}}"; -const TOOL_NAME = "GoogleDocs.InsertTextAtEndOfDocument"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - document_id: "your_document_id_here", // Document Ids can be found with the SearchDocuments tool - text_content: "Your text here" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/docs/insert_text_at_end_of_document_example_call_tool.py b/public/examples/integrations/mcp-servers/google/docs/insert_text_at_end_of_document_example_call_tool.py deleted file mode 100644 index 0146ac2de..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/insert_text_at_end_of_document_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDocs.InsertTextAtEndOfDocument" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "document_id": "your_document_id_here", # Document Ids can be found with the SearchDocuments tool - "text_content": "Your text here", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/docs/list_document_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/google/docs/list_document_comments_example_call_tool.js deleted file mode 100644 index b3657ac47..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/list_document_comments_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDocs.ListDocumentComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - document_id: "your_document_id_here", - include_deleted: false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/docs/list_document_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/google/docs/list_document_comments_example_call_tool.py deleted file mode 100644 index 651427812..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/list_document_comments_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDocs.ListDocumentComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"document_id": "your_document_id_here", "include_deleted": False} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/docs/search_and_retrieve_documents_example_call_tool.js b/public/examples/integrations/mcp-servers/google/docs/search_and_retrieve_documents_example_call_tool.js deleted file mode 100644 index 376bc98b9..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/search_and_retrieve_documents_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDocs.SearchAndRetrieveDocuments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - return_format: "markdown", - document_contains: ["report"], - document_not_contains: ["draft"], - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/docs/search_and_retrieve_documents_example_call_tool.py b/public/examples/integrations/mcp-servers/google/docs/search_and_retrieve_documents_example_call_tool.py deleted file mode 100644 index fae7190ea..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/search_and_retrieve_documents_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDocs.SearchAndRetrieveDocuments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "document_contains": ["report"], - "document_not_contains": ["draft"], - "limit": 10, -} - -response = client.tools.execute( - return_format="markdown", - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/docs/search_documents_example_call_tool.js b/public/examples/integrations/mcp-servers/google/docs/search_documents_example_call_tool.js deleted file mode 100644 index d64e3fb7b..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/search_documents_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDocs.SearchDocuments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - document_contains: ["report"], - document_not_contains: ["draft"], - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/docs/search_documents_example_call_tool.py b/public/examples/integrations/mcp-servers/google/docs/search_documents_example_call_tool.py deleted file mode 100644 index 7551e0252..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/search_documents_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDocs.SearchDocuments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "document_contains": ["report"], - "document_not_contains": ["draft"], - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/docs/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/google/docs/who_am_i_example_call_tool.js deleted file mode 100644 index 6e6e39eb0..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/who_am_i_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file -// - https://www.googleapis.com/auth/userinfo.profile -// - https://www.googleapis.com/auth/userinfo.email - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDocs.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/google/docs/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/google/docs/who_am_i_example_call_tool.py deleted file mode 100644 index b60d4497d..000000000 --- a/public/examples/integrations/mcp-servers/google/docs/who_am_i_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file -# - https://www.googleapis.com/auth/userinfo.profile -# - https://www.googleapis.com/auth/userinfo.email - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDocs.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/google/gmail/delete_draft_email_example_call_tool.js b/public/examples/integrations/mcp-servers/google/gmail/delete_draft_email_example_call_tool.js deleted file mode 100644 index 85c328740..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/delete_draft_email_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/gmail.compose - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Gmail.DeleteDraftEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - draft_email_id: "your_draft_id_here" // The ID of an email can be found with the ListDraftEmails tool -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/gmail/delete_draft_email_example_call_tool.py b/public/examples/integrations/mcp-servers/google/gmail/delete_draft_email_example_call_tool.py deleted file mode 100644 index 870f0194e..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/delete_draft_email_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/gmail.compose - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Gmail.DeleteDraftEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "draft_email_id": "your_draft_id_here" # The ID of an email can be found with the ListDraftEmails tool -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/gmail/get_thread_example_call_tool.js b/public/examples/integrations/mcp-servers/google/gmail/get_thread_example_call_tool.js deleted file mode 100644 index 741906ca4..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/get_thread_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/gmail.readonly - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Gmail.GetThread"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - thread_id: "your-thread-id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/gmail/get_thread_example_call_tool.py b/public/examples/integrations/mcp-servers/google/gmail/get_thread_example_call_tool.py deleted file mode 100644 index da2129dd6..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/get_thread_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/gmail.readonly - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Gmail.GetThread" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"thread_id": "your-thread-id"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/gmail/list_draft_emails_example_call_tool.js b/public/examples/integrations/mcp-servers/google/gmail/list_draft_emails_example_call_tool.js deleted file mode 100644 index c3f6f731e..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/list_draft_emails_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/gmail.readonly - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Gmail.ListDraftEmails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - n_drafts: 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/gmail/list_draft_emails_example_call_tool.py b/public/examples/integrations/mcp-servers/google/gmail/list_draft_emails_example_call_tool.py deleted file mode 100644 index d1738334b..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/list_draft_emails_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/gmail.readonly - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Gmail.ListDraftEmails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"n_drafts": 5} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/gmail/list_emails_by_header_example_call_tool.js b/public/examples/integrations/mcp-servers/google/gmail/list_emails_by_header_example_call_tool.js deleted file mode 100644 index 1815999f1..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/list_emails_by_header_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/gmail.readonly - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Gmail.ListEmailsByHeader"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - sender: "john.doe@example.com", - subject: "Meeting", - limit: 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/gmail/list_emails_by_header_example_call_tool.py b/public/examples/integrations/mcp-servers/google/gmail/list_emails_by_header_example_call_tool.py deleted file mode 100644 index b6072110f..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/list_emails_by_header_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/gmail.readonly - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Gmail.ListEmailsByHeader" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"sender": "john.doe@example.com", "subject": "Meeting", "limit": 10} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/gmail/list_emails_example_call_tool.js b/public/examples/integrations/mcp-servers/google/gmail/list_emails_example_call_tool.js deleted file mode 100644 index 4f2ba8c68..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/list_emails_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/gmail.readonly - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Gmail.ListEmails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - n_emails: 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/gmail/list_emails_example_call_tool.py b/public/examples/integrations/mcp-servers/google/gmail/list_emails_example_call_tool.py deleted file mode 100644 index 0d26e5492..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/list_emails_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/gmail.readonly - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Gmail.ListEmails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"n_emails": 5} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/gmail/list_threads_example_call_tool.js b/public/examples/integrations/mcp-servers/google/gmail/list_threads_example_call_tool.js deleted file mode 100644 index fcf4cb1ad..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/list_threads_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/gmail.readonly - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Gmail.ListThreads"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - max_results: 10, - include_spam_trash: false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/gmail/list_threads_example_call_tool.py b/public/examples/integrations/mcp-servers/google/gmail/list_threads_example_call_tool.py deleted file mode 100644 index a536a8ce6..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/list_threads_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/gmail.readonly - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Gmail.ListThreads" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "max_results": 10, - "include_spam_trash": False, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/gmail/search_threads_example_call_tool.js b/public/examples/integrations/mcp-servers/google/gmail/search_threads_example_call_tool.js deleted file mode 100644 index c4edda027..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/search_threads_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/gmail.readonly - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Gmail.SearchThreads"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - sender: "john.doe@example.com", - subject: "Meeting", - max_results: 10, - include_spam_trash: false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/gmail/search_threads_example_call_tool.py b/public/examples/integrations/mcp-servers/google/gmail/search_threads_example_call_tool.py deleted file mode 100644 index df39fcb7c..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/search_threads_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/gmail.readonly - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Gmail.SearchThreads" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "sender": "john.doe@example.com", - "subject": "Meeting", - "max_results": 10, - "include_spam_trash": False, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/gmail/send_draft_email_example_call_tool.js b/public/examples/integrations/mcp-servers/google/gmail/send_draft_email_example_call_tool.js deleted file mode 100644 index 1ecbc773d..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/send_draft_email_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/gmail.send - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Gmail.SendDraftEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - email_id: "your_draft_id_here" // The ID of a draft email can be found with the ListDraftEmails tool -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/gmail/send_draft_email_example_call_tool.py b/public/examples/integrations/mcp-servers/google/gmail/send_draft_email_example_call_tool.py deleted file mode 100644 index 30cfaa621..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/send_draft_email_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/gmail.send - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Gmail.SendDraftEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "email_id": "your_draft_id_here" # The ID of a draft email can be found with the ListDraftEmails tool -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/gmail/send_email_example_call_tool.js b/public/examples/integrations/mcp-servers/google/gmail/send_email_example_call_tool.js deleted file mode 100644 index 59c0bca4a..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/send_email_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/gmail.send - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Gmail.SendEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - subject: "Meeting Update", - body: "The meeting is rescheduled to 3 PM. Sorry for the inconvenience.", - recipient: "jane.doe@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/gmail/send_email_example_call_tool.py b/public/examples/integrations/mcp-servers/google/gmail/send_email_example_call_tool.py deleted file mode 100644 index 1aa8bff84..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/send_email_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/gmail.send - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Gmail.SendEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "subject": "Meeting Update", - "body": "The meeting is rescheduled to 3 PM. Sorry for the inconvenience.", - "recipient": "jane.doe@example.com", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/gmail/trash_email_example_call_tool.js b/public/examples/integrations/mcp-servers/google/gmail/trash_email_example_call_tool.js deleted file mode 100644 index ad67ee4bb..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/trash_email_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/gmail.modify - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Gmail.TrashEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - email_id: "your_email_id_here" // The ID of an email can be found with the ListEmails tool -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/gmail/trash_email_example_call_tool.py b/public/examples/integrations/mcp-servers/google/gmail/trash_email_example_call_tool.py deleted file mode 100644 index bdbbe8b67..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/trash_email_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/gmail.modify - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Gmail.TrashEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "email_id": "your_email_id_here" # The ID of an email can be found with the ListEmails tool -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/gmail/update_draft_email_example_call_tool.js b/public/examples/integrations/mcp-servers/google/gmail/update_draft_email_example_call_tool.js deleted file mode 100644 index 0af9fc323..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/update_draft_email_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/gmail.compose - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Gmail.UpdateDraftEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - draft_email_id: "your_draft_id_here", // The ID of a draft email can be found with the ListDraftEmails tool - subject: "Updated Project Update", - body: "Please find the updated project update attached.", - recipient: "john.doe@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/gmail/update_draft_email_example_call_tool.py b/public/examples/integrations/mcp-servers/google/gmail/update_draft_email_example_call_tool.py deleted file mode 100644 index 349b953fe..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/update_draft_email_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/gmail.compose - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Gmail.UpdateDraftEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "draft_email_id": "your_draft_id_here", # The ID of a draft email can be found with the ListDraftEmails tool - "subject": "Updated Project Update", - "body": "Please find the updated project update attached.", - "recipient": "john.doe@example.com", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/gmail/write_draft_email_example_call_tool.js b/public/examples/integrations/mcp-servers/google/gmail/write_draft_email_example_call_tool.js deleted file mode 100644 index f4b78d622..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/write_draft_email_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/gmail.compose - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Gmail.WriteDraftEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - subject: "Project Update", - body: "Please find the attached project update.", - recipient: "john.doe@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/gmail/write_draft_email_example_call_tool.py b/public/examples/integrations/mcp-servers/google/gmail/write_draft_email_example_call_tool.py deleted file mode 100644 index 0714d72b7..000000000 --- a/public/examples/integrations/mcp-servers/google/gmail/write_draft_email_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/gmail.compose - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Gmail.WriteDraftEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "subject": "Project Update", - "body": "Please find the attached project update.", - "recipient": "john.doe@example.com", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/slides/comment_on_presentation_example_call_tool.js b/public/examples/integrations/mcp-servers/google/slides/comment_on_presentation_example_call_tool.js deleted file mode 100644 index c8f380741..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/comment_on_presentation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSlides.CommentOnPresentation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - presentation_id: "your_presentation_id_here", - comment_text: "This is a comment" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/slides/comment_on_presentation_example_call_tool.py b/public/examples/integrations/mcp-servers/google/slides/comment_on_presentation_example_call_tool.py deleted file mode 100644 index f5b81c04c..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/comment_on_presentation_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSlides.CommentOnPresentation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"presentation_id": "your_presentation_id_here", "comment_text": "This is a comment"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/slides/create_presentation_example_call_tool.js b/public/examples/integrations/mcp-servers/google/slides/create_presentation_example_call_tool.js deleted file mode 100644 index 6966ae41f..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/create_presentation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSlides.CreatePresentation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - title: "New Presentation", - subtitle: "By {arcade_user_id}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/slides/create_presentation_example_call_tool.py b/public/examples/integrations/mcp-servers/google/slides/create_presentation_example_call_tool.py deleted file mode 100644 index 7d2048cf9..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/create_presentation_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSlides.CreatePresentation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"title": "New Presentation", "subtitle": "By {arcade_user_id}"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/slides/create_slide_example_call_tool.js b/public/examples/integrations/mcp-servers/google/slides/create_slide_example_call_tool.js deleted file mode 100644 index e5c943453..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/create_slide_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSlides.CreateSlide"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - presentation_id: "your_presentation_id_here", - slide_title: "How to learn", - slide_body: "* Talking point 1\n* Talking point 2\n* Talking point 3" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/slides/create_slide_example_call_tool.py b/public/examples/integrations/mcp-servers/google/slides/create_slide_example_call_tool.py deleted file mode 100644 index 25231dd28..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/create_slide_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSlides.CreateSlide" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "presentation_id": "your_presentation_id_here", - "slide_title": "How to learn", - "slide_body": "* Talking point 1\n* Talking point 2\n* Talking point 3" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/slides/generate_google_file_picker_url_example_call_tool.js b/public/examples/integrations/mcp-servers/google/slides/generate_google_file_picker_url_example_call_tool.js deleted file mode 100644 index da1d22dce..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/generate_google_file_picker_url_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSlides.GenerateGoogleFilePickerUrl"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google/slides/generate_google_file_picker_url_example_call_tool.py b/public/examples/integrations/mcp-servers/google/slides/generate_google_file_picker_url_example_call_tool.py deleted file mode 100644 index a9a96c420..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/generate_google_file_picker_url_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSlides.GenerateGoogleFilePickerUrl" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google/slides/get_presentation_as_markdown_example_call_tool.js b/public/examples/integrations/mcp-servers/google/slides/get_presentation_as_markdown_example_call_tool.js deleted file mode 100644 index ec77dfac2..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/get_presentation_as_markdown_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSlides.GetPresentationAsMarkdown"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - presentation_id: "your_presentation_id_here" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/slides/get_presentation_as_markdown_example_call_tool.py b/public/examples/integrations/mcp-servers/google/slides/get_presentation_as_markdown_example_call_tool.py deleted file mode 100644 index 312ae31c1..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/get_presentation_as_markdown_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSlides.GetPresentationAsMarkdown" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "presentation_id": "your_presentation_id_here" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/slides/list_presentation_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/google/slides/list_presentation_comments_example_call_tool.js deleted file mode 100644 index e3fa8680f..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/list_presentation_comments_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSlides.ListPresentationComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - presentation_id: "your_presentation_id_here", - include_deleted: false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/slides/list_presentation_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/google/slides/list_presentation_comments_example_call_tool.py deleted file mode 100644 index e60a902af..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/list_presentation_comments_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSlides.ListPresentationComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"presentation_id": "your_presentation_id_here", "include_deleted": False} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/slides/search_presentations_example_call_tool.js b/public/examples/integrations/mcp-servers/google/slides/search_presentations_example_call_tool.js deleted file mode 100644 index 526a38f0e..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/search_presentations_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSlides.SearchPresentations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - presentation_contains: ["report"], - presentation_not_contains: ["draft"], - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/google/slides/search_presentations_example_call_tool.py b/public/examples/integrations/mcp-servers/google/slides/search_presentations_example_call_tool.py deleted file mode 100644 index 1cb5d67dc..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/search_presentations_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSlides.SearchPresentations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "presentation_contains": ["report"], - "presentation_not_contains": ["draft"], - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/google/slides/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/google/slides/who_am_i_example_call_tool.js deleted file mode 100644 index 881848172..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/who_am_i_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file -// - https://www.googleapis.com/auth/userinfo.profile -// - https://www.googleapis.com/auth/userinfo.email - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSlides.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google/slides/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/google/slides/who_am_i_example_call_tool.py deleted file mode 100644 index da1024b6c..000000000 --- a/public/examples/integrations/mcp-servers/google/slides/who_am_i_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file -# - https://www.googleapis.com/auth/userinfo.profile -# - https://www.googleapis.com/auth/userinfo.email - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSlides.WhoAmI" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_calendar/create_event_example_call_tool.js b/public/examples/integrations/mcp-servers/google_calendar/create_event_example_call_tool.js deleted file mode 100644 index 2d18ef0aa..000000000 --- a/public/examples/integrations/mcp-servers/google_calendar/create_event_example_call_tool.js +++ /dev/null @@ -1,46 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/calendar.readonly -// - https://www.googleapis.com/auth/calendar.events - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleCalendar.CreateEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "summary": "Product roadmap sync", - "start_datetime": "2025-09-15T10:00:00", - "end_datetime": "2025-09-15T11:00:00", - "calendar_id": "primary", - "description": "Discuss Q4 roadmap, milestones, and blockers.", - "location": "Conference Room B", - "visibility": "private", - "attendee_emails": [ - "alice@example.com", - "bob@example.org" - ], - "send_notifications_to_attendees": "all", - "add_google_meet": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_calendar/create_event_example_call_tool.py b/public/examples/integrations/mcp-servers/google_calendar/create_event_example_call_tool.py deleted file mode 100644 index 15c2a710a..000000000 --- a/public/examples/integrations/mcp-servers/google_calendar/create_event_example_call_tool.py +++ /dev/null @@ -1,41 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/calendar.readonly -# - https://www.googleapis.com/auth/calendar.events - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleCalendar.CreateEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'summary': 'Product roadmap sync', - 'start_datetime': '2025-09-15T10:00:00', - 'end_datetime': '2025-09-15T11:00:00', - 'calendar_id': 'primary', - 'description': 'Discuss Q4 roadmap, milestones, and blockers.', - 'location': 'Conference Room B', - 'visibility': 'private', - 'attendee_emails': ['alice@example.com', 'bob@example.org'], - 'send_notifications_to_attendees': 'all', - 'add_google_meet': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_calendar/delete_event_example_call_tool.js b/public/examples/integrations/mcp-servers/google_calendar/delete_event_example_call_tool.js deleted file mode 100644 index a20490e2c..000000000 --- a/public/examples/integrations/mcp-servers/google_calendar/delete_event_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/calendar.events - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleCalendar.DeleteEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_id": "evt_9aBc123X", - "calendar_id": "primary", - "send_updates": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_calendar/delete_event_example_call_tool.py b/public/examples/integrations/mcp-servers/google_calendar/delete_event_example_call_tool.py deleted file mode 100644 index 9ce3cbf15..000000000 --- a/public/examples/integrations/mcp-servers/google_calendar/delete_event_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/calendar.events - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleCalendar.DeleteEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_id': 'evt_9aBc123X', 'calendar_id': 'primary', 'send_updates': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_calendar/find_time_slots_when_everyone_is_free_example_call_tool.js b/public/examples/integrations/mcp-servers/google_calendar/find_time_slots_when_everyone_is_free_example_call_tool.js deleted file mode 100644 index f961c4c90..000000000 --- a/public/examples/integrations/mcp-servers/google_calendar/find_time_slots_when_everyone_is_free_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/calendar.readonly - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleCalendar.FindTimeSlotsWhenEveryoneIsFree"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_addresses": [ - "alice@example.com", - "bob@example.com", - "carol@example.com" - ], - "start_date": "2025-09-15", - "end_date": "2025-09-19", - "start_time_boundary": "09:00", - "end_time_boundary": "17:00" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_calendar/find_time_slots_when_everyone_is_free_example_call_tool.py b/public/examples/integrations/mcp-servers/google_calendar/find_time_slots_when_everyone_is_free_example_call_tool.py deleted file mode 100644 index 210269b86..000000000 --- a/public/examples/integrations/mcp-servers/google_calendar/find_time_slots_when_everyone_is_free_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/calendar.readonly - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleCalendar.FindTimeSlotsWhenEveryoneIsFree" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_addresses': ['alice@example.com', 'bob@example.com', 'carol@example.com'], - 'start_date': '2025-09-15', - 'end_date': '2025-09-19', - 'start_time_boundary': '09:00', - 'end_time_boundary': '17:00' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_calendar/list_calendars_example_call_tool.js b/public/examples/integrations/mcp-servers/google_calendar/list_calendars_example_call_tool.js deleted file mode 100644 index 396d52a25..000000000 --- a/public/examples/integrations/mcp-servers/google_calendar/list_calendars_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/calendar.readonly -// - https://www.googleapis.com/auth/calendar.events - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleCalendar.ListCalendars"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_results": 50, - "show_deleted": false, - "show_hidden": false, - "next_page_token": "token_abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_calendar/list_calendars_example_call_tool.py b/public/examples/integrations/mcp-servers/google_calendar/list_calendars_example_call_tool.py deleted file mode 100644 index 468172906..000000000 --- a/public/examples/integrations/mcp-servers/google_calendar/list_calendars_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/calendar.readonly -# - https://www.googleapis.com/auth/calendar.events - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleCalendar.ListCalendars" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_results': 50, 'show_deleted': False, 'show_hidden': False, 'next_page_token': 'token_abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_calendar/list_events_example_call_tool.js b/public/examples/integrations/mcp-servers/google_calendar/list_events_example_call_tool.js deleted file mode 100644 index c5ab45f59..000000000 --- a/public/examples/integrations/mcp-servers/google_calendar/list_events_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/calendar.readonly -// - https://www.googleapis.com/auth/calendar.events - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleCalendar.ListEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "min_end_datetime": "2025-10-01T00:00:00", - "max_start_datetime": "2025-10-07T23:59:59", - "calendar_id": "team-calendar@example.com", - "max_results": 25 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_calendar/list_events_example_call_tool.py b/public/examples/integrations/mcp-servers/google_calendar/list_events_example_call_tool.py deleted file mode 100644 index 4f0a6cda2..000000000 --- a/public/examples/integrations/mcp-servers/google_calendar/list_events_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/calendar.readonly -# - https://www.googleapis.com/auth/calendar.events - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleCalendar.ListEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'min_end_datetime': '2025-10-01T00:00:00', - 'max_start_datetime': '2025-10-07T23:59:59', - 'calendar_id': 'team-calendar@example.com', - 'max_results': 25 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_calendar/update_event_example_call_tool.js b/public/examples/integrations/mcp-servers/google_calendar/update_event_example_call_tool.js deleted file mode 100644 index cf158a14a..000000000 --- a/public/examples/integrations/mcp-servers/google_calendar/update_event_example_call_tool.js +++ /dev/null @@ -1,49 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/calendar.events - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleCalendar.UpdateEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_id": "evt_12345", - "updated_start_datetime": "2025-10-01T09:00:00", - "updated_end_datetime": "2025-10-01T10:00:00", - "updated_calendar_id": "cal_team_engineering", - "updated_summary": "Quarterly Planning", - "updated_description": "Discuss Q4 roadmap and key milestones.", - "updated_location": "Conference Room B", - "updated_visibility": "private", - "attendee_emails_to_add": [ - "alice@example.com", - "bob@example.com" - ], - "attendee_emails_to_remove": [ - "charlie@example.com" - ], - "send_notifications_to_attendees": "all", - "updated_google_meet": "add" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_calendar/update_event_example_call_tool.py b/public/examples/integrations/mcp-servers/google_calendar/update_event_example_call_tool.py deleted file mode 100644 index e834a3e2b..000000000 --- a/public/examples/integrations/mcp-servers/google_calendar/update_event_example_call_tool.py +++ /dev/null @@ -1,42 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/calendar.events - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleCalendar.UpdateEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_id': 'evt_12345', - 'updated_start_datetime': '2025-10-01T09:00:00', - 'updated_end_datetime': '2025-10-01T10:00:00', - 'updated_calendar_id': 'cal_team_engineering', - 'updated_summary': 'Quarterly Planning', - 'updated_description': 'Discuss Q4 roadmap and key milestones.', - 'updated_location': 'Conference Room B', - 'updated_visibility': 'private', - 'attendee_emails_to_add': ['alice@example.com', 'bob@example.com'], - 'attendee_emails_to_remove': ['charlie@example.com'], - 'send_notifications_to_attendees': 'all', - 'updated_google_meet': 'add' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_calendar/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/google_calendar/who_am_i_example_call_tool.js deleted file mode 100644 index 950ca043d..000000000 --- a/public/examples/integrations/mcp-servers/google_calendar/who_am_i_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/calendar.readonly -// - https://www.googleapis.com/auth/userinfo.profile -// - https://www.googleapis.com/auth/userinfo.email - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleCalendar.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_calendar/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/google_calendar/who_am_i_example_call_tool.py deleted file mode 100644 index 1c06847f2..000000000 --- a/public/examples/integrations/mcp-servers/google_calendar/who_am_i_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/calendar.readonly -# - https://www.googleapis.com/auth/userinfo.profile -# - https://www.googleapis.com/auth/userinfo.email - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleCalendar.WhoAmI" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_contacts/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/google_contacts/who_am_i_example_call_tool.js deleted file mode 100644 index bba460e92..000000000 --- a/public/examples/integrations/mcp-servers/google_contacts/who_am_i_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/contacts.readonly -// - https://www.googleapis.com/auth/userinfo.profile -// - https://www.googleapis.com/auth/userinfo.email - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleContacts.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_contacts/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/google_contacts/who_am_i_example_call_tool.py deleted file mode 100644 index 1680880ab..000000000 --- a/public/examples/integrations/mcp-servers/google_contacts/who_am_i_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/contacts.readonly -# - https://www.googleapis.com/auth/userinfo.profile -# - https://www.googleapis.com/auth/userinfo.email - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleContacts.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_docs/generate_google_file_picker_url_example_call_tool.js b/public/examples/integrations/mcp-servers/google_docs/generate_google_file_picker_url_example_call_tool.js deleted file mode 100644 index e64021487..000000000 --- a/public/examples/integrations/mcp-servers/google_docs/generate_google_file_picker_url_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDocs.GenerateGoogleFilePickerUrl"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_docs/generate_google_file_picker_url_example_call_tool.py b/public/examples/integrations/mcp-servers/google_docs/generate_google_file_picker_url_example_call_tool.py deleted file mode 100644 index 3d24d9252..000000000 --- a/public/examples/integrations/mcp-servers/google_docs/generate_google_file_picker_url_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDocs.GenerateGoogleFilePickerUrl" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_docs/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/google_docs/who_am_i_example_call_tool.js deleted file mode 100644 index a552ae91a..000000000 --- a/public/examples/integrations/mcp-servers/google_docs/who_am_i_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file -// - https://www.googleapis.com/auth/userinfo.profile -// - https://www.googleapis.com/auth/userinfo.email - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDocs.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_docs/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/google_docs/who_am_i_example_call_tool.py deleted file mode 100644 index 7b07cde10..000000000 --- a/public/examples/integrations/mcp-servers/google_docs/who_am_i_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file -# - https://www.googleapis.com/auth/userinfo.profile -# - https://www.googleapis.com/auth/userinfo.email - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDocs.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_drive/create_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/google_drive/create_folder_example_call_tool.js deleted file mode 100644 index c3111c1ac..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/create_folder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDrive.CreateFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_name": "My New Folder", - "parent_folder_path_or_id": "Projects/2024" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/google_drive/create_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/google_drive/create_folder_example_call_tool.py deleted file mode 100644 index aaff3321e..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/create_folder_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDrive.CreateFolder" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "folder_name": "My New Folder", - "parent_folder_path_or_id": "Projects/2024" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/google_drive/download_file_chunk_example_call_tool.js b/public/examples/integrations/mcp-servers/google_drive/download_file_chunk_example_call_tool.js deleted file mode 100644 index 2c4113b17..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/download_file_chunk_example_call_tool.js +++ /dev/null @@ -1,112 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -import fs from "fs"; -import path from "path"; -import { fileURLToPath } from "url"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const FILE_ID = "Projects/report.pdf"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); - -// Authorize for download tools -const authResponse = await client.tools.authorize({ - tool_name: "GoogleDrive.DownloadFile", - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -// Step 1: Call download_file to get file info and possibly content -console.log(`Downloading file: ${FILE_ID}`); -const response = await client.tools.execute({ - tool_name: "GoogleDrive.DownloadFile", - input: { file_path_or_id: FILE_ID }, - user_id: USER_ID, -}); - -// Check for errors in the response -if (response.output.error) { - console.error(`Error: ${response.output.error}`); - process.exit(1); -} - -const result = response.output.value; -if (!result) { - console.error(`Unexpected response: ${JSON.stringify(response)}`); - process.exit(1); -} - -console.log(`File name: ${result.name}`); -console.log(`MIME type: ${result.mimeType}`); -console.log(`Size: ${result.size || "unknown"} bytes`); - -// Get file extension from the original filename -const originalName = result.name; -const ext = path.extname(originalName) || ".bin"; -const outputPath = path.join(__dirname, `downloaded_file${ext}`); - -let fileContent; - -// Step 2: Check if chunked download is required -if (result.requires_chunked_download) { - console.log("\nFile requires chunked download. Downloading in chunks..."); - const chunkSize = result.recommended_chunk_size; - - // Collect all chunks - const chunks = []; - let startByte = 0; - - while (true) { - console.log(`Downloading chunk starting at byte ${startByte}...`); - const chunkResponse = await client.tools.execute({ - tool_name: "GoogleDrive.DownloadFileChunk", - input: { - file_path_or_id: FILE_ID, - start_byte: startByte, - chunk_size: chunkSize, - }, - user_id: USER_ID, - }); - - if (chunkResponse.output.error) { - console.error(`Error downloading chunk: ${chunkResponse.output.error}`); - process.exit(1); - } - - const chunkResult = chunkResponse.output.value; - if (!chunkResult) { - console.error(`Unexpected chunk response: ${JSON.stringify(chunkResponse)}`); - process.exit(1); - } - - const chunkContent = Buffer.from(chunkResult.content, "base64"); - chunks.push(chunkContent); - - console.log(`Progress: ${chunkResult.progress_percent}%`); - - if (chunkResult.is_final_chunk) { - break; - } - - startByte = chunkResult.next_start_byte; - } - - // Combine all chunks - fileContent = Buffer.concat(chunks); -} else { - // Small file - content is included directly - console.log("\nFile content received directly (small file)."); - fileContent = Buffer.from(result.content, "base64"); -} - -// Save the file -fs.writeFileSync(outputPath, fileContent); - -console.log(`\nFile saved to: ${outputPath}`); -console.log(`Total bytes written: ${fileContent.length}`); diff --git a/public/examples/integrations/mcp-servers/google_drive/download_file_chunk_example_call_tool.py b/public/examples/integrations/mcp-servers/google_drive/download_file_chunk_example_call_tool.py deleted file mode 100644 index 96d981570..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/download_file_chunk_example_call_tool.py +++ /dev/null @@ -1,104 +0,0 @@ -import base64 -import os - -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -FILE_ID = "Projects/report.pdf" -OUTPUT_DIR = os.path.dirname(os.path.abspath(__file__)) - -# Authorize for download tools -auth_response = client.tools.authorize(tool_name="GoogleDrive.DownloadFile", user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -# Step 1: Call download_file to get file info and possibly content -print(f"Downloading file: {FILE_ID}") -response = client.tools.execute( - tool_name="GoogleDrive.DownloadFile", - input={"file_path_or_id": FILE_ID}, - user_id=USER_ID, -) - -# Check for errors in the response -if response.output.error: - print(f"Error: {response.output.error}") - exit(1) - -result = response.output.value -if result is None: - print(f"Unexpected response: {response}") - exit(1) - -print(f"File name: {result['name']}") -print(f"MIME type: {result['mimeType']}") -print(f"Size: {result.get('size', 'unknown')} bytes") - -# Get file extension from the original filename -original_name = result["name"] -_, ext = os.path.splitext(original_name) -if not ext: - ext = ".bin" # Default extension if none found - -output_path = os.path.join(OUTPUT_DIR, f"downloaded_file{ext}") - -# Step 2: Check if chunked download is required -if result.get("requires_chunked_download"): - print("\nFile requires chunked download. Downloading in chunks...") - total_size = result["total_size_bytes"] - chunk_size = result["recommended_chunk_size"] - - # Collect all chunks - chunks = [] - start_byte = 0 - - while True: - print(f"Downloading chunk starting at byte {start_byte}...") - chunk_response = client.tools.execute( - tool_name="GoogleDrive.DownloadFileChunk", - input={ - "file_path_or_id": FILE_ID, - "start_byte": start_byte, - "chunk_size": chunk_size, - }, - user_id=USER_ID, - ) - - if chunk_response.output.error: - print(f"Error downloading chunk: {chunk_response.output.error}") - exit(1) - - chunk_result = chunk_response.output.value - if chunk_result is None: - print(f"Unexpected chunk response: {chunk_response}") - exit(1) - - chunk_content = base64.b64decode(chunk_result["content"]) - chunks.append(chunk_content) - - print(f"Progress: {chunk_result['progress_percent']}%") - - if chunk_result["is_final_chunk"]: - break - - start_byte = chunk_result["next_start_byte"] - - # Combine all chunks and save - file_content = b"".join(chunks) -else: - # Small file - content is included directly - print("\nFile content received directly (small file).") - file_content = base64.b64decode(result["content"]) - -# Save the file -with open(output_path, "wb") as f: - f.write(file_content) - -print(f"\nFile saved to: {output_path}") -print(f"Total bytes written: {len(file_content)}") diff --git a/public/examples/integrations/mcp-servers/google_drive/download_file_example_call_tool.js b/public/examples/integrations/mcp-servers/google_drive/download_file_example_call_tool.js deleted file mode 100644 index 2c4113b17..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/download_file_example_call_tool.js +++ /dev/null @@ -1,112 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -import fs from "fs"; -import path from "path"; -import { fileURLToPath } from "url"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const FILE_ID = "Projects/report.pdf"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); - -// Authorize for download tools -const authResponse = await client.tools.authorize({ - tool_name: "GoogleDrive.DownloadFile", - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -// Step 1: Call download_file to get file info and possibly content -console.log(`Downloading file: ${FILE_ID}`); -const response = await client.tools.execute({ - tool_name: "GoogleDrive.DownloadFile", - input: { file_path_or_id: FILE_ID }, - user_id: USER_ID, -}); - -// Check for errors in the response -if (response.output.error) { - console.error(`Error: ${response.output.error}`); - process.exit(1); -} - -const result = response.output.value; -if (!result) { - console.error(`Unexpected response: ${JSON.stringify(response)}`); - process.exit(1); -} - -console.log(`File name: ${result.name}`); -console.log(`MIME type: ${result.mimeType}`); -console.log(`Size: ${result.size || "unknown"} bytes`); - -// Get file extension from the original filename -const originalName = result.name; -const ext = path.extname(originalName) || ".bin"; -const outputPath = path.join(__dirname, `downloaded_file${ext}`); - -let fileContent; - -// Step 2: Check if chunked download is required -if (result.requires_chunked_download) { - console.log("\nFile requires chunked download. Downloading in chunks..."); - const chunkSize = result.recommended_chunk_size; - - // Collect all chunks - const chunks = []; - let startByte = 0; - - while (true) { - console.log(`Downloading chunk starting at byte ${startByte}...`); - const chunkResponse = await client.tools.execute({ - tool_name: "GoogleDrive.DownloadFileChunk", - input: { - file_path_or_id: FILE_ID, - start_byte: startByte, - chunk_size: chunkSize, - }, - user_id: USER_ID, - }); - - if (chunkResponse.output.error) { - console.error(`Error downloading chunk: ${chunkResponse.output.error}`); - process.exit(1); - } - - const chunkResult = chunkResponse.output.value; - if (!chunkResult) { - console.error(`Unexpected chunk response: ${JSON.stringify(chunkResponse)}`); - process.exit(1); - } - - const chunkContent = Buffer.from(chunkResult.content, "base64"); - chunks.push(chunkContent); - - console.log(`Progress: ${chunkResult.progress_percent}%`); - - if (chunkResult.is_final_chunk) { - break; - } - - startByte = chunkResult.next_start_byte; - } - - // Combine all chunks - fileContent = Buffer.concat(chunks); -} else { - // Small file - content is included directly - console.log("\nFile content received directly (small file)."); - fileContent = Buffer.from(result.content, "base64"); -} - -// Save the file -fs.writeFileSync(outputPath, fileContent); - -console.log(`\nFile saved to: ${outputPath}`); -console.log(`Total bytes written: ${fileContent.length}`); diff --git a/public/examples/integrations/mcp-servers/google_drive/download_file_example_call_tool.py b/public/examples/integrations/mcp-servers/google_drive/download_file_example_call_tool.py deleted file mode 100644 index 96d981570..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/download_file_example_call_tool.py +++ /dev/null @@ -1,104 +0,0 @@ -import base64 -import os - -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -FILE_ID = "Projects/report.pdf" -OUTPUT_DIR = os.path.dirname(os.path.abspath(__file__)) - -# Authorize for download tools -auth_response = client.tools.authorize(tool_name="GoogleDrive.DownloadFile", user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -# Step 1: Call download_file to get file info and possibly content -print(f"Downloading file: {FILE_ID}") -response = client.tools.execute( - tool_name="GoogleDrive.DownloadFile", - input={"file_path_or_id": FILE_ID}, - user_id=USER_ID, -) - -# Check for errors in the response -if response.output.error: - print(f"Error: {response.output.error}") - exit(1) - -result = response.output.value -if result is None: - print(f"Unexpected response: {response}") - exit(1) - -print(f"File name: {result['name']}") -print(f"MIME type: {result['mimeType']}") -print(f"Size: {result.get('size', 'unknown')} bytes") - -# Get file extension from the original filename -original_name = result["name"] -_, ext = os.path.splitext(original_name) -if not ext: - ext = ".bin" # Default extension if none found - -output_path = os.path.join(OUTPUT_DIR, f"downloaded_file{ext}") - -# Step 2: Check if chunked download is required -if result.get("requires_chunked_download"): - print("\nFile requires chunked download. Downloading in chunks...") - total_size = result["total_size_bytes"] - chunk_size = result["recommended_chunk_size"] - - # Collect all chunks - chunks = [] - start_byte = 0 - - while True: - print(f"Downloading chunk starting at byte {start_byte}...") - chunk_response = client.tools.execute( - tool_name="GoogleDrive.DownloadFileChunk", - input={ - "file_path_or_id": FILE_ID, - "start_byte": start_byte, - "chunk_size": chunk_size, - }, - user_id=USER_ID, - ) - - if chunk_response.output.error: - print(f"Error downloading chunk: {chunk_response.output.error}") - exit(1) - - chunk_result = chunk_response.output.value - if chunk_result is None: - print(f"Unexpected chunk response: {chunk_response}") - exit(1) - - chunk_content = base64.b64decode(chunk_result["content"]) - chunks.append(chunk_content) - - print(f"Progress: {chunk_result['progress_percent']}%") - - if chunk_result["is_final_chunk"]: - break - - start_byte = chunk_result["next_start_byte"] - - # Combine all chunks and save - file_content = b"".join(chunks) -else: - # Small file - content is included directly - print("\nFile content received directly (small file).") - file_content = base64.b64decode(result["content"]) - -# Save the file -with open(output_path, "wb") as f: - f.write(file_content) - -print(f"\nFile saved to: {output_path}") -print(f"Total bytes written: {len(file_content)}") diff --git a/public/examples/integrations/mcp-servers/google_drive/generate_google_file_picker_url_example_call_tool.js b/public/examples/integrations/mcp-servers/google_drive/generate_google_file_picker_url_example_call_tool.js deleted file mode 100644 index eb83a895c..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/generate_google_file_picker_url_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDrive.GenerateGoogleFilePickerUrl"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_drive/generate_google_file_picker_url_example_call_tool.py b/public/examples/integrations/mcp-servers/google_drive/generate_google_file_picker_url_example_call_tool.py deleted file mode 100644 index e3863a966..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/generate_google_file_picker_url_example_call_tool.py +++ /dev/null @@ -1,24 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDrive.GenerateGoogleFilePickerUrl" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_drive/get_file_tree_structure_example_call_tool.js b/public/examples/integrations/mcp-servers/google_drive/get_file_tree_structure_example_call_tool.js deleted file mode 100644 index 08aef8151..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/get_file_tree_structure_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDrive.GetFileTreeStructure"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_shared_drives": true, - "order_by": ["name"], - "limit": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_drive/get_file_tree_structure_example_call_tool.py b/public/examples/integrations/mcp-servers/google_drive/get_file_tree_structure_example_call_tool.py deleted file mode 100644 index c339014c1..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/get_file_tree_structure_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDrive.GetFileTreeStructure" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "include_shared_drives": True, - "order_by": ["name"], - "limit": 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_drive/move_file_example_call_tool.js b/public/examples/integrations/mcp-servers/google_drive/move_file_example_call_tool.js deleted file mode 100644 index 579ef71ad..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/move_file_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDrive.MoveFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "source_file_path_or_id": "Downloads/report.pdf", - "destination_folder_path_or_id": "Projects/Archive", - "new_filename": "2024_report.pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/google_drive/move_file_example_call_tool.py b/public/examples/integrations/mcp-servers/google_drive/move_file_example_call_tool.py deleted file mode 100644 index 2f115c8a0..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/move_file_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDrive.MoveFile" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "source_file_path_or_id": "Downloads/report.pdf", - "destination_folder_path_or_id": "Projects/Archive", - "new_filename": "2024_report.pdf" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/google_drive/rename_file_example_call_tool.js b/public/examples/integrations/mcp-servers/google_drive/rename_file_example_call_tool.js deleted file mode 100644 index 9726ff84c..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/rename_file_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDrive.RenameFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_path_or_id": "Projects/old_report.pdf", - "new_filename": "Q4_Report_Final.pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/google_drive/rename_file_example_call_tool.py b/public/examples/integrations/mcp-servers/google_drive/rename_file_example_call_tool.py deleted file mode 100644 index ebe123311..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/rename_file_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDrive.RenameFile" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "file_path_or_id": "Projects/old_report.pdf", - "new_filename": "Q4_Report_Final.pdf" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/google_drive/search_files_example_call_tool.js b/public/examples/integrations/mcp-servers/google_drive/search_files_example_call_tool.js deleted file mode 100644 index 06fa68e26..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/search_files_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDrive.SearchFiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "query": "project report", - "include_shared_drives": true, - "limit": 10, - "file_types": ["document", "spreadsheet"] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_drive/search_files_example_call_tool.py b/public/examples/integrations/mcp-servers/google_drive/search_files_example_call_tool.py deleted file mode 100644 index 4ea5a0dd4..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/search_files_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDrive.SearchFiles" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "query": "project report", - "include_shared_drives": True, - "limit": 10, - "file_types": ["document", "spreadsheet"] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_drive/share_file_example_call_tool.js b/public/examples/integrations/mcp-servers/google_drive/share_file_example_call_tool.js deleted file mode 100644 index 5a2e0bdae..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/share_file_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDrive.ShareFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_path_or_id": "Projects/Q4_Report.pdf", - "email_addresses": ["colleague@example.com", "manager@example.com"], - "role": "writer", - "send_notification_email": true, - "message": "Please review the Q4 report" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/google_drive/share_file_example_call_tool.py b/public/examples/integrations/mcp-servers/google_drive/share_file_example_call_tool.py deleted file mode 100644 index cb659f5e5..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/share_file_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDrive.ShareFile" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "file_path_or_id": "Projects/Q4_Report.pdf", - "email_addresses": ["colleague@example.com", "manager@example.com"], - "role": "writer", - "send_notification_email": True, - "message": "Please review the Q4 report" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/google_drive/upload_file_example_call_tool.js b/public/examples/integrations/mcp-servers/google_drive/upload_file_example_call_tool.js deleted file mode 100644 index 62571bfef..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/upload_file_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDrive.UploadFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_name": "a_pretty_mountain.png", - "source_url": "https://upload.wikimedia.org/wikipedia/commons/3/3f/Fronalpstock_big.jpg", - "mime_type": "image/png", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/google_drive/upload_file_example_call_tool.py b/public/examples/integrations/mcp-servers/google_drive/upload_file_example_call_tool.py deleted file mode 100644 index fc4b77a83..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/upload_file_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDrive.UploadFile" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "file_name": "a_pretty_mountain.png", - "source_url": "https://upload.wikimedia.org/wikipedia/commons/3/3f/Fronalpstock_big.jpg", - "mime_type": "image/png", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/google_drive/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/google_drive/who_am_i_example_call_tool.js deleted file mode 100644 index 85af05105..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/who_am_i_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file -// - https://www.googleapis.com/auth/userinfo.profile -// - https://www.googleapis.com/auth/userinfo.email - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleDrive.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_drive/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/google_drive/who_am_i_example_call_tool.py deleted file mode 100644 index 0d1b750d2..000000000 --- a/public/examples/integrations/mcp-servers/google_drive/who_am_i_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file -# - https://www.googleapis.com/auth/userinfo.profile -# - https://www.googleapis.com/auth/userinfo.email - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleDrive.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_sheets/add_note_to_cell_example_call_tool.js b/public/examples/integrations/mcp-servers/google_sheets/add_note_to_cell_example_call_tool.js deleted file mode 100644 index 8e115d033..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/add_note_to_cell_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSheets.AddNoteToCell"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "spreadsheet_id": "ss123", - "column": "C", - "row": 7, - "note_text": "Check formula", - "sheet_id_or_name": "Sheet2" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_sheets/add_note_to_cell_example_call_tool.py b/public/examples/integrations/mcp-servers/google_sheets/add_note_to_cell_example_call_tool.py deleted file mode 100644 index b87e60341..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/add_note_to_cell_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSheets.AddNoteToCell" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'spreadsheet_id': 'ss123', - 'column': 'C', - 'row': 7, - 'note_text': 'Check formula', - 'sheet_id_or_name': 'Sheet2' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_sheets/create_spreadsheet_example_call_tool.js b/public/examples/integrations/mcp-servers/google_sheets/create_spreadsheet_example_call_tool.js deleted file mode 100644 index 31e0e442c..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/create_spreadsheet_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSheets.CreateSpreadsheet"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "title": "Team Roster", - "data": "{\"1\":{\"A\":\"Name\",\"B\":\"Active\"},\"2\":{\"A\":\"Alice\",\"B\":true},\"3\":{\"A\":\"Bob\",\"B\":false}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_sheets/create_spreadsheet_example_call_tool.py b/public/examples/integrations/mcp-servers/google_sheets/create_spreadsheet_example_call_tool.py deleted file mode 100644 index c69f82846..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/create_spreadsheet_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSheets.CreateSpreadsheet" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'title': 'Team Roster', - 'data': '{"1":{"A":"Name","B":"Active"},"2":{"A":"Alice","B":true},"3":{"A":"Bob","B":false}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_sheets/generate_google_file_picker_url_example_call_tool.js b/public/examples/integrations/mcp-servers/google_sheets/generate_google_file_picker_url_example_call_tool.js deleted file mode 100644 index 88cb97a4c..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/generate_google_file_picker_url_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSheets.GenerateGoogleFilePickerUrl"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_sheets/generate_google_file_picker_url_example_call_tool.py b/public/examples/integrations/mcp-servers/google_sheets/generate_google_file_picker_url_example_call_tool.py deleted file mode 100644 index 135d4ca1e..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/generate_google_file_picker_url_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSheets.GenerateGoogleFilePickerUrl" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_sheets/get_spreadsheet_example_call_tool.js b/public/examples/integrations/mcp-servers/google_sheets/get_spreadsheet_example_call_tool.js deleted file mode 100644 index 2ba63f81d..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/get_spreadsheet_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSheets.GetSpreadsheet"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "spreadsheet_id": "1AbCxyz", - "sheet_id_or_name": "Expenses", - "start_row": 2, - "start_col": "B", - "max_rows": 50, - "max_cols": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_sheets/get_spreadsheet_example_call_tool.py b/public/examples/integrations/mcp-servers/google_sheets/get_spreadsheet_example_call_tool.py deleted file mode 100644 index 27e71d450..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/get_spreadsheet_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSheets.GetSpreadsheet" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'spreadsheet_id': '1AbCxyz', - 'sheet_id_or_name': 'Expenses', - 'start_row': 2, - 'start_col': 'B', - 'max_rows': 50, - 'max_cols': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_sheets/get_spreadsheet_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/google_sheets/get_spreadsheet_metadata_example_call_tool.js deleted file mode 100644 index 56930b837..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/get_spreadsheet_metadata_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSheets.GetSpreadsheetMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "spreadsheet_id": "1abcDEF234567" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_sheets/get_spreadsheet_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/google_sheets/get_spreadsheet_metadata_example_call_tool.py deleted file mode 100644 index ce4582895..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/get_spreadsheet_metadata_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSheets.GetSpreadsheetMetadata" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'spreadsheet_id': '1abcDEF234567' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_sheets/search_spreadsheets_example_call_tool.js b/public/examples/integrations/mcp-servers/google_sheets/search_spreadsheets_example_call_tool.js deleted file mode 100644 index e78d0e73c..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/search_spreadsheets_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSheets.SearchSpreadsheets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "spreadsheet_contains": [ - "budget", - "Q3" - ], - "spreadsheet_not_contains": [ - "draft" - ], - "search_only_in_shared_drive_id": "0AOpXyz123DEFghIJK", - "include_shared_drives": true, - "include_organization_domain_spreadsheets": true, - "order_by": [ - "modifiedTime desc" - ], - "limit": 25, - "pagination_token": "tok123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_sheets/search_spreadsheets_example_call_tool.py b/public/examples/integrations/mcp-servers/google_sheets/search_spreadsheets_example_call_tool.py deleted file mode 100644 index a2794513b..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/search_spreadsheets_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSheets.SearchSpreadsheets" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'spreadsheet_contains': ['budget', 'Q3'], - 'spreadsheet_not_contains': ['draft'], - 'search_only_in_shared_drive_id': '0AOpXyz123DEFghIJK', - 'include_shared_drives': True, - 'include_organization_domain_spreadsheets': True, - 'order_by': ['modifiedTime desc'], - 'limit': 25, - 'pagination_token': 'tok123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_sheets/update_cells_example_call_tool.js b/public/examples/integrations/mcp-servers/google_sheets/update_cells_example_call_tool.js deleted file mode 100644 index 2bdc588a1..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/update_cells_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSheets.UpdateCells"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "spreadsheet_id": "1AbcXyZ123", - "data": "{\"1\":{\"A\":\"Name\",\"B\":\"Score\"},\"2\":{\"A\":\"Alice\",\"B\":42},\"3\":{\"A\":\"Bob\",\"B\":37.5}}", - "sheet_id_or_name": "Sheet2" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_sheets/update_cells_example_call_tool.py b/public/examples/integrations/mcp-servers/google_sheets/update_cells_example_call_tool.py deleted file mode 100644 index d85c2a4fa..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/update_cells_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSheets.UpdateCells" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'spreadsheet_id': '1AbcXyZ123', - 'data': '{"1":{"A":"Name","B":"Score"},"2":{"A":"Alice","B":42},"3":{"A":"Bob","B":37.5}}', - 'sheet_id_or_name': 'Sheet2' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_sheets/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/google_sheets/who_am_i_example_call_tool.js deleted file mode 100644 index 24132515e..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/who_am_i_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file -// - https://www.googleapis.com/auth/userinfo.profile -// - https://www.googleapis.com/auth/userinfo.email - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSheets.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_sheets/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/google_sheets/who_am_i_example_call_tool.py deleted file mode 100644 index feb2e4179..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/who_am_i_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file -# - https://www.googleapis.com/auth/userinfo.profile -# - https://www.googleapis.com/auth/userinfo.email - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSheets.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/google_sheets/write_to_cell_example_call_tool.js b/public/examples/integrations/mcp-servers/google_sheets/write_to_cell_example_call_tool.js deleted file mode 100644 index 3d2ef9c6b..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/write_to_cell_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; -// Required Google OAuth scopes: -// - https://www.googleapis.com/auth/drive.file - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSheets.WriteToCell"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "spreadsheet_id": "1a2b3c", - "column": "C", - "row": 7, - "value": "Hello", - "sheet_name": "Budget" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/google_sheets/write_to_cell_example_call_tool.py b/public/examples/integrations/mcp-servers/google_sheets/write_to_cell_example_call_tool.py deleted file mode 100644 index c04e92849..000000000 --- a/public/examples/integrations/mcp-servers/google_sheets/write_to_cell_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade -# Required Google OAuth scopes: -# - https://www.googleapis.com/auth/drive.file - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSheets.WriteToCell" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'spreadsheet_id': '1a2b3c', 'column': 'C', 'row': 7, 'value': 'Hello', 'sheet_name': 'Budget' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/associate_activity_to_deal_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/associate_activity_to_deal_example_call_tool.js deleted file mode 100644 index a4a2e2178..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/associate_activity_to_deal_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.AssociateActivityToDeal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "activity_type": "call", - "activity_id": 987654321, - "deal_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/associate_activity_to_deal_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/associate_activity_to_deal_example_call_tool.py deleted file mode 100644 index 13757469a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/associate_activity_to_deal_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.AssociateActivityToDeal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'activity_type': 'call', 'activity_id': 987654321, 'deal_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/associate_contact_to_deal_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/associate_contact_to_deal_example_call_tool.js deleted file mode 100644 index 072011ddb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/associate_contact_to_deal_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.AssociateContactToDeal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deal_id": 12345, - "contact_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/associate_contact_to_deal_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/associate_contact_to_deal_example_call_tool.py deleted file mode 100644 index 0b663e991..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/associate_contact_to_deal_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.AssociateContactToDeal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deal_id': 12345, 'contact_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/create_call_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/create_call_activity_example_call_tool.js deleted file mode 100644 index 69803224a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_call_activity_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.CreateCallActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "title": "Intro call with Acme", - "when_occurred": "2025-09-12T10:30:00", - "direction": "OUTBOUND", - "summary": "Discussed project scope and next steps; agreed to send proposal.", - "duration": 900, - "to_number": "+14155550123", - "from_number": "+14155550987", - "associate_to_contact_id": 7854, - "associate_to_company_id": 120 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/create_call_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/create_call_activity_example_call_tool.py deleted file mode 100644 index 8e44ca292..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_call_activity_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.CreateCallActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'title': 'Intro call with Acme', - 'when_occurred': '2025-09-12T10:30:00', - 'direction': 'OUTBOUND', - 'summary': 'Discussed project scope and next steps; agreed to send proposal.', - 'duration': 900, - 'to_number': '+14155550123', - 'from_number': '+14155550987', - 'associate_to_contact_id': 7854, - 'associate_to_company_id': 120 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/create_communication_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/create_communication_activity_example_call_tool.js deleted file mode 100644 index a0071f288..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_communication_activity_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.CreateCommunicationActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel": "WHATS_APP", - "when_occurred": "2025-09-12T14:30:00", - "body_text": "Sent product pricing and next steps. Awaiting confirmation.", - "associate_to_contact_id": 7421 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/create_communication_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/create_communication_activity_example_call_tool.py deleted file mode 100644 index 0b606a2c5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_communication_activity_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.CreateCommunicationActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel': 'WHATS_APP', - 'when_occurred': '2025-09-12T14:30:00', - 'body_text': 'Sent product pricing and next steps. Awaiting confirmation.', - 'associate_to_contact_id': 7421 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/create_company_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/create_company_example_call_tool.js deleted file mode 100644 index 5e77fa88a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_company_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.CreateCompany"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "company_name": "Acme Analytics", - "web_domain": "acme-analytics.com", - "industry_type": "technology", - "company_city": "San Francisco", - "company_state": "CA", - "company_country": "USA", - "phone_number": "+1-415-555-0102", - "website_url": "https://www.acme-analytics.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/create_company_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/create_company_example_call_tool.py deleted file mode 100644 index 7f9f3a6c5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_company_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.CreateCompany" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'company_name': 'Acme Analytics', - 'web_domain': 'acme-analytics.com', - 'industry_type': 'technology', - 'company_city': 'San Francisco', - 'company_state': 'CA', - 'company_country': 'USA', - 'phone_number': '+1-415-555-0102', - 'website_url': 'https://www.acme-analytics.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/create_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/create_contact_example_call_tool.js deleted file mode 100644 index f2ceedd9d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_contact_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.CreateContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "company_id": 12345, - "first_name": "Ava", - "last_name": "Lopez", - "email": "ava.lopez@example.com", - "phone": "+1-555-0123", - "mobile_phone": "+1-555-0456", - "job_title": "Product Manager" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/create_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/create_contact_example_call_tool.py deleted file mode 100644 index c4c2a224e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_contact_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.CreateContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'company_id': 12345, - 'first_name': 'Ava', - 'last_name': 'Lopez', - 'email': 'ava.lopez@example.com', - 'phone': '+1-555-0123', - 'mobile_phone': '+1-555-0456', - 'job_title': 'Product Manager' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/create_deal_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/create_deal_example_call_tool.js deleted file mode 100644 index f0e96e0ba..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_deal_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.CreateDeal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deal_name": "Website Redesign Contract", - "deal_amount": 25000, - "deal_stage": "stage_3", - "deal_type": "newbusiness", - "expected_close_date": "2025-10-15", - "pipeline_id": "123", - "deal_owner": "7890", - "priority_level": "high", - "deal_description": "Redesign of corporate website including CMS migration and SEO" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/create_deal_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/create_deal_example_call_tool.py deleted file mode 100644 index bc46b97c6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_deal_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.CreateDeal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deal_name': 'Website Redesign Contract', - 'deal_amount': 25000, - 'deal_stage': 'stage_3', - 'deal_type': 'newbusiness', - 'expected_close_date': '2025-10-15', - 'pipeline_id': '123', - 'deal_owner': '7890', - 'priority_level': 'high', - 'deal_description': 'Redesign of corporate website including CMS migration and SEO' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/create_email_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/create_email_activity_example_call_tool.js deleted file mode 100644 index 39a48e431..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_email_activity_example_call_tool.js +++ /dev/null @@ -1,50 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.CreateEmailActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subject": "Quarterly update and next steps", - "when_occurred": "2025-09-12T10:30:00", - "from_email": "alice@example.com", - "to_email": "bob@acme.com", - "body_text": "Hi Bob,\n\nPlease find the quarterly update attached. Let me know if you have questions.\n\nBest,\nAlice", - "body_html": "

Hi Bob,

Please find the quarterly update attached. Let me know if you have questions.

Best,
Alice

", - "from_first_name": "Alice", - "from_last_name": "Johnson", - "to_first_name": "Bob", - "to_last_name": "Smith", - "cc_emails": [ - "carol@example.com" - ], - "bcc_emails": [ - "audit@example.com" - ], - "direction": "EMAIL", - "status": "SENT", - "associate_to_contact_id": 12345, - "associate_to_company_id": 6789 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/create_email_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/create_email_activity_example_call_tool.py deleted file mode 100644 index 65315afcd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_email_activity_example_call_tool.py +++ /dev/null @@ -1,50 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.CreateEmailActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subject': 'Quarterly update and next steps', - 'when_occurred': '2025-09-12T10:30:00', - 'from_email': 'alice@example.com', - 'to_email': 'bob@acme.com', - 'body_text': 'Hi Bob,\n' - '\n' - 'Please find the quarterly update attached. Let me know if you have questions.\n' - '\n' - 'Best,\n' - 'Alice', - 'body_html': '

Hi Bob,

Please find the quarterly update attached. Let me know if you ' - 'have questions.

Best,
Alice

', - 'from_first_name': 'Alice', - 'from_last_name': 'Johnson', - 'to_first_name': 'Bob', - 'to_last_name': 'Smith', - 'cc_emails': ['carol@example.com'], - 'bcc_emails': ['audit@example.com'], - 'direction': 'EMAIL', - 'status': 'SENT', - 'associate_to_contact_id': 12345, - 'associate_to_company_id': 6789 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/create_meeting_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/create_meeting_activity_example_call_tool.js deleted file mode 100644 index 5e7a24ca8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_meeting_activity_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.CreateMeetingActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "title": "Product Demo", - "start_date": "2025-09-20", - "start_time": "14:30", - "duration": "0:45", - "location": "Conference Room B", - "outcome": "SCHEDULED", - "associate_to_contact_id": 4821, - "associate_to_company_id": 330 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/create_meeting_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/create_meeting_activity_example_call_tool.py deleted file mode 100644 index 294bd5a02..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_meeting_activity_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.CreateMeetingActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'title': 'Product Demo', - 'start_date': '2025-09-20', - 'start_time': '14:30', - 'duration': '0:45', - 'location': 'Conference Room B', - 'outcome': 'SCHEDULED', - 'associate_to_contact_id': 4821, - 'associate_to_company_id': 330 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/create_note_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/create_note_activity_example_call_tool.js deleted file mode 100644 index 0b946a86c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_note_activity_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.CreateNoteActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "body": "Called to follow up on partnership opportunity. Left voicemail and next steps outlined.", - "when_occurred": "2025-09-12T10:30:00", - "associate_to_contact_id": 78945, - "associate_to_company_id": 1120 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/create_note_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/create_note_activity_example_call_tool.py deleted file mode 100644 index 5456a4867..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/create_note_activity_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.CreateNoteActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'body': 'Called to follow up on partnership opportunity. Left voicemail and next steps ' - 'outlined.', - 'when_occurred': '2025-09-12T10:30:00', - 'associate_to_contact_id': 78945, - 'associate_to_company_id': 1120 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_all_users_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_all_users_example_call_tool.js deleted file mode 100644 index 1773325de..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_all_users_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetAllUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_all_users_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_all_users_example_call_tool.py deleted file mode 100644 index e81e4a8a1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_all_users_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetAllUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_available_industry_types_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_available_industry_types_example_call_tool.js deleted file mode 100644 index 271ffe8dc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_available_industry_types_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetAvailableIndustryTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_available_industry_types_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_available_industry_types_example_call_tool.py deleted file mode 100644 index 0967790aa..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_available_industry_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetAvailableIndustryTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_call_data_by_keywords_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_call_data_by_keywords_example_call_tool.js deleted file mode 100644 index 7d746be9d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_call_data_by_keywords_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetCallDataByKeywords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_terms": "error timeout payment", - "limit": 25, - "truncate_big_strings": true, - "next_page_token": "abc123token" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_call_data_by_keywords_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_call_data_by_keywords_example_call_tool.py deleted file mode 100644 index 60d80c4f4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_call_data_by_keywords_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetCallDataByKeywords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_terms': 'error timeout payment', - 'limit': 25, - 'truncate_big_strings': True, - 'next_page_token': 'abc123token' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_communication_data_by_keywords_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_communication_data_by_keywords_example_call_tool.js deleted file mode 100644 index 1329ae579..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_communication_data_by_keywords_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetCommunicationDataByKeywords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_terms": "password reset failed", - "limit": 5, - "truncate_big_strings": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_communication_data_by_keywords_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_communication_data_by_keywords_example_call_tool.py deleted file mode 100644 index 281c5b6e5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_communication_data_by_keywords_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetCommunicationDataByKeywords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_terms': 'password reset failed', 'limit': 5, 'truncate_big_strings': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_company_data_by_keywords_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_company_data_by_keywords_example_call_tool.js deleted file mode 100644 index d632850f8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_company_data_by_keywords_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetCompanyDataByKeywords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": "Acme Corp", - "limit": 5, - "next_page_token": null -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_company_data_by_keywords_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_company_data_by_keywords_example_call_tool.py deleted file mode 100644 index 8d145fbda..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_company_data_by_keywords_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetCompanyDataByKeywords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'keywords': 'Acme Corp', 'limit': 5, 'next_page_token': None -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_contact_data_by_keywords_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_contact_data_by_keywords_example_call_tool.js deleted file mode 100644 index 390cc97c9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_contact_data_by_keywords_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetContactDataByKeywords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": "Acme Corp", - "limit": 5, - "next_page_token": null -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_contact_data_by_keywords_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_contact_data_by_keywords_example_call_tool.py deleted file mode 100644 index 627d967fe..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_contact_data_by_keywords_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetContactDataByKeywords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'keywords': 'Acme Corp', 'limit': 5, 'next_page_token': None -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_deal_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_deal_by_id_example_call_tool.js deleted file mode 100644 index 80fb2dcf5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_deal_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetDealById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deal_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_deal_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_deal_by_id_example_call_tool.py deleted file mode 100644 index 10da1d41b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_deal_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetDealById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deal_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_deal_data_by_keywords_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_deal_data_by_keywords_example_call_tool.js deleted file mode 100644 index fc0189711..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_deal_data_by_keywords_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetDealDataByKeywords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": "quarterly renewal negotiation", - "limit": 5, - "next_page_token": null -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_deal_data_by_keywords_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_deal_data_by_keywords_example_call_tool.py deleted file mode 100644 index 0271cc55c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_deal_data_by_keywords_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetDealDataByKeywords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'keywords': 'quarterly renewal negotiation', 'limit': 5, 'next_page_token': None -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_deal_pipeline_stages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_deal_pipeline_stages_example_call_tool.js deleted file mode 100644 index 5d69d966e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_deal_pipeline_stages_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetDealPipelineStages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pipeline_id": "default" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_deal_pipeline_stages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_deal_pipeline_stages_example_call_tool.py deleted file mode 100644 index 8476e3094..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_deal_pipeline_stages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetDealPipelineStages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pipeline_id': 'default' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_deal_pipelines_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_deal_pipelines_example_call_tool.js deleted file mode 100644 index 9ebe30a52..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_deal_pipelines_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetDealPipelines"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search": "sales pipeline" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_deal_pipelines_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_deal_pipelines_example_call_tool.py deleted file mode 100644 index b5ca7eeb4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_deal_pipelines_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetDealPipelines" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search': 'sales pipeline' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_email_data_by_keywords_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_email_data_by_keywords_example_call_tool.js deleted file mode 100644 index 696c93062..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_email_data_by_keywords_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetEmailDataByKeywords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_terms": "invoice overdue payment", - "limit": 25, - "truncate_big_strings": true, - "next_page_token": "abc123token" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_email_data_by_keywords_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_email_data_by_keywords_example_call_tool.py deleted file mode 100644 index 794f066e5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_email_data_by_keywords_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetEmailDataByKeywords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_terms': 'invoice overdue payment', - 'limit': 25, - 'truncate_big_strings': True, - 'next_page_token': 'abc123token' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_meeting_data_by_keywords_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_meeting_data_by_keywords_example_call_tool.js deleted file mode 100644 index bf858d746..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_meeting_data_by_keywords_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetMeetingDataByKeywords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_terms": "budget review Q3", - "limit": 5, - "truncate_big_strings": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_meeting_data_by_keywords_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_meeting_data_by_keywords_example_call_tool.py deleted file mode 100644 index a72b730c3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_meeting_data_by_keywords_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetMeetingDataByKeywords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_terms': 'budget review Q3', 'limit': 5, 'truncate_big_strings': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_note_data_by_keywords_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_note_data_by_keywords_example_call_tool.js deleted file mode 100644 index 265b81cdd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_note_data_by_keywords_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetNoteDataByKeywords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_terms": "error backup failure", - "limit": 20, - "truncate_big_strings": true, - "next_page_token": "abc123token" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_note_data_by_keywords_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_note_data_by_keywords_example_call_tool.py deleted file mode 100644 index b648a7b0b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_note_data_by_keywords_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetNoteDataByKeywords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_terms': 'error backup failure', - 'limit': 20, - 'truncate_big_strings': True, - 'next_page_token': 'abc123token' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_task_data_by_keywords_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_task_data_by_keywords_example_call_tool.js deleted file mode 100644 index ef205140c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_task_data_by_keywords_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetTaskDataByKeywords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_terms": "invoice overdue client:Acme", - "limit": 20, - "truncate_big_strings": true, - "next_page_token": null -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_task_data_by_keywords_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_task_data_by_keywords_example_call_tool.py deleted file mode 100644 index ecebe3225..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_task_data_by_keywords_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetTaskDataByKeywords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_terms': 'invoice overdue client:Acme', - 'limit': 20, - 'truncate_big_strings': True, - 'next_page_token': None -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/get_user_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/get_user_by_id_example_call_tool.js deleted file mode 100644 index 5fb35ca8d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_user_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.GetUserById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "owner_id": 123456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/get_user_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/get_user_by_id_example_call_tool.py deleted file mode 100644 index ac15f57c0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/get_user_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.GetUserById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'owner_id': 123456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/list_companies_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/list_companies_example_call_tool.js deleted file mode 100644 index 5928e5380..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/list_companies_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.ListCompanies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 25, - "sort_order": "LATEST_MODIFIED", - "next_page_token": "abc123token" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/list_companies_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/list_companies_example_call_tool.py deleted file mode 100644 index f6eb5520c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/list_companies_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.ListCompanies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'limit': 25, 'sort_order': 'LATEST_MODIFIED', 'next_page_token': 'abc123token' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/list_contacts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/list_contacts_example_call_tool.js deleted file mode 100644 index df420cf39..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/list_contacts_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.ListContacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 25, - "company_id": 1024, - "sort_order": "LATEST_MODIFIED", - "next_page_token": "eyJwYWdlIjoxfQ==" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/list_contacts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/list_contacts_example_call_tool.py deleted file mode 100644 index 1d3598753..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/list_contacts_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.ListContacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'limit': 25, - 'company_id': 1024, - 'sort_order': 'LATEST_MODIFIED', - 'next_page_token': 'eyJwYWdlIjoxfQ==' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/list_deals_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/list_deals_example_call_tool.js deleted file mode 100644 index e31126747..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/list_deals_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.ListDeals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 20, - "contact_id": 12345, - "sort_order": "LATEST_MODIFIED", - "next_page_token": "eyJwbmciOiIyIn0=" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/list_deals_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/list_deals_example_call_tool.py deleted file mode 100644 index a49375617..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/list_deals_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.ListDeals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'limit': 20, - 'contact_id': 12345, - 'sort_order': 'LATEST_MODIFIED', - 'next_page_token': 'eyJwbmciOiIyIn0=' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/toolkit_enviroment_guidance_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/toolkit_enviroment_guidance_example_call_tool.js deleted file mode 100644 index a31bbdca3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/toolkit_enviroment_guidance_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.ToolkitEnviromentGuidance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/toolkit_enviroment_guidance_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/toolkit_enviroment_guidance_example_call_tool.py deleted file mode 100644 index f4cbecb42..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/toolkit_enviroment_guidance_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.ToolkitEnviromentGuidance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/update_call_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/update_call_activity_example_call_tool.js deleted file mode 100644 index 9f3dfa897..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_call_activity_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.UpdateCallActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "call_id": 12345, - "title": "Follow-up call with updated agenda", - "summary": "Discussed pricing and next steps. Customer requested proposal.", - "duration": 600 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_call_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/update_call_activity_example_call_tool.py deleted file mode 100644 index bb1402ce5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_call_activity_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.UpdateCallActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'call_id': 12345, - 'title': 'Follow-up call with updated agenda', - 'summary': 'Discussed pricing and next steps. Customer requested proposal.', - 'duration': 600 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_communication_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/update_communication_activity_example_call_tool.js deleted file mode 100644 index b0cd4366b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_communication_activity_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.UpdateCommunicationActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "communication_id": 12345, - "body_text": "Updated LinkedIn message with additional context about the partnership opportunity." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_communication_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/update_communication_activity_example_call_tool.py deleted file mode 100644 index 32f71cedd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_communication_activity_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.UpdateCommunicationActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'communication_id': 12345, - 'body_text': 'Updated LinkedIn message with additional context about the partnership opportunity.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_company_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/update_company_example_call_tool.js deleted file mode 100644 index 547b620d6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_company_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.UpdateCompany"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "company_id": 12345, - "company_name": "Updated Company Name Inc.", - "phone_number": "555-1234", - "website_url": "https://www.updatedcompany.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_company_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/update_company_example_call_tool.py deleted file mode 100644 index 10f547f1e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_company_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.UpdateCompany" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'company_id': 12345, - 'company_name': 'Updated Company Name Inc.', - 'phone_number': '555-1234', - 'website_url': 'https://www.updatedcompany.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/update_contact_example_call_tool.js deleted file mode 100644 index f01eff88a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_contact_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.UpdateContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id": 12345, - "email": "newemail@example.com", - "phone": "555-9876", - "job_title": "Senior Manager" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/update_contact_example_call_tool.py deleted file mode 100644 index bfa35aada..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_contact_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.UpdateContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id': 12345, - 'email': 'newemail@example.com', - 'phone': '555-9876', - 'job_title': 'Senior Manager' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_deal_close_date_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/update_deal_close_date_example_call_tool.js deleted file mode 100644 index bb00c79eb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_deal_close_date_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.UpdateDealCloseDate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deal_id": 123456, - "expected_close_date": "2025-10-15" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/update_deal_close_date_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/update_deal_close_date_example_call_tool.py deleted file mode 100644 index a61a2f763..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_deal_close_date_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.UpdateDealCloseDate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deal_id': 123456, 'expected_close_date': '2025-10-15' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/update_deal_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/update_deal_example_call_tool.js deleted file mode 100644 index aeab11d6a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_deal_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.UpdateDeal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deal_id": 12345, - "deal_name": "Updated Partnership Deal", - "deal_amount": 50000, - "expected_close_date": "2025-12-31", - "deal_description": "Updated deal description with new terms and conditions." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_deal_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/update_deal_example_call_tool.py deleted file mode 100644 index 03556c5e1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_deal_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.UpdateDeal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deal_id': 12345, - 'deal_name': 'Updated Partnership Deal', - 'deal_amount': 50000, - 'expected_close_date': '2025-12-31', - 'deal_description': 'Updated deal description with new terms and conditions.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_deal_stage_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/update_deal_stage_example_call_tool.js deleted file mode 100644 index 0a695a04f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_deal_stage_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.UpdateDealStage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deal_id": 987654, - "deal_stage": "appointmentscheduled", - "current_pipeline_id": "default-pipeline-1", - "allow_pipeline_change": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/update_deal_stage_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/update_deal_stage_example_call_tool.py deleted file mode 100644 index 071501919..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_deal_stage_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.UpdateDealStage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deal_id': 987654, - 'deal_stage': 'appointmentscheduled', - 'current_pipeline_id': 'default-pipeline-1', - 'allow_pipeline_change': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot/update_email_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/update_email_activity_example_call_tool.js deleted file mode 100644 index a0fc034a6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_email_activity_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.UpdateEmailActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_id": 12345, - "subject": "Updated: Proposal and Next Steps", - "body_text": "Please find the updated proposal attached. Looking forward to your feedback." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_email_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/update_email_activity_example_call_tool.py deleted file mode 100644 index 65e298cf1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_email_activity_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.UpdateEmailActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_id': 12345, - 'subject': 'Updated: Proposal and Next Steps', - 'body_text': 'Please find the updated proposal attached. Looking forward to your feedback.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_meeting_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/update_meeting_activity_example_call_tool.js deleted file mode 100644 index 63f5c473b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_meeting_activity_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.UpdateMeetingActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "meeting_id": 12345, - "title": "Product Demo - Rescheduled", - "start_date": "2025-09-15", - "start_time": "14:00", - "location": "Conference Room B" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_meeting_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/update_meeting_activity_example_call_tool.py deleted file mode 100644 index cede3630d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_meeting_activity_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.UpdateMeetingActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'meeting_id': 12345, - 'title': 'Product Demo - Rescheduled', - 'start_date': '2025-09-15', - 'start_time': '14:00', - 'location': 'Conference Room B' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_note_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/update_note_activity_example_call_tool.js deleted file mode 100644 index 59859ff01..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_note_activity_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.UpdateNoteActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "note_id": 12345, - "body": "Updated note content with additional follow-up information.", - "when_occurred": "2025-09-12T14:30:00" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/update_note_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/update_note_activity_example_call_tool.py deleted file mode 100644 index f4bafc0a0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/update_note_activity_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.UpdateNoteActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'note_id': 12345, - 'body': 'Updated note content with additional follow-up information.', - 'when_occurred': '2025-09-12T14:30:00' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - - - diff --git a/public/examples/integrations/mcp-servers/hubspot/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot/who_am_i_example_call_tool.js deleted file mode 100644 index 3a9448d72..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/who_am_i_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Hubspot.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot/who_am_i_example_call_tool.py deleted file mode 100644 index 0c4aa8382..000000000 --- a/public/examples/integrations/mcp-servers/hubspot/who_am_i_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Hubspot.WhoAmI" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/check_contact_enrollment_status_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_automation_api/check_contact_enrollment_status_example_call_tool.js deleted file mode 100644 index 4a3634bd6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/check_contact_enrollment_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotAutomationApi.CheckContactEnrollmentStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/check_contact_enrollment_status_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_automation_api/check_contact_enrollment_status_example_call_tool.py deleted file mode 100644 index c8bdd8c94..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/check_contact_enrollment_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotAutomationApi.CheckContactEnrollmentStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/complete_action_execution_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_automation_api/complete_action_execution_example_call_tool.js deleted file mode 100644 index 5bf3167dd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/complete_action_execution_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotAutomationApi.CompleteActionExecution"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "action_execution_id": "12345", - "request_body": "{\"status\":\"completed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/complete_action_execution_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_automation_api/complete_action_execution_example_call_tool.py deleted file mode 100644 index bdc2f0354..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/complete_action_execution_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotAutomationApi.CompleteActionExecution" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'action_execution_id': '12345', 'request_body': '{"status":"completed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/complete_batch_action_executions_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_automation_api/complete_batch_action_executions_example_call_tool.js deleted file mode 100644 index 29620b78b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/complete_batch_action_executions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotAutomationApi.CompleteBatchActionExecutions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"actionIds\":[\"123\",\"456\"],\"status\":\"completed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/complete_batch_action_executions_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_automation_api/complete_batch_action_executions_example_call_tool.py deleted file mode 100644 index f00d9e298..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/complete_batch_action_executions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotAutomationApi.CompleteBatchActionExecutions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"actionIds":["123","456"],"status":"completed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/enroll_contact_in_sequence_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_automation_api/enroll_contact_in_sequence_example_call_tool.js deleted file mode 100644 index 0252e3b04..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/enroll_contact_in_sequence_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotAutomationApi.EnrollContactInSequence"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id": "12345", - "sender_email": "sender@example.com", - "sequence_identifier": "seq-67890", - "sender_alias_address": "alias@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/enroll_contact_in_sequence_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_automation_api/enroll_contact_in_sequence_example_call_tool.py deleted file mode 100644 index e1a5914cf..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/enroll_contact_in_sequence_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotAutomationApi.EnrollContactInSequence" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id': '12345', - 'sender_email': 'sender@example.com', - 'sequence_identifier': 'seq-67890', - 'sender_alias_address': 'alias@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/fetch_email_campaigns_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_automation_api/fetch_email_campaigns_example_call_tool.js deleted file mode 100644 index 5378c8572..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/fetch_email_campaigns_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotAutomationApi.FetchEmailCampaigns"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_campaign_flow_ids": [ - "flow123", - "flow456" - ], - "start_date": "2023-01-01", - "max_results": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/fetch_email_campaigns_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_automation_api/fetch_email_campaigns_example_call_tool.py deleted file mode 100644 index 644b8090e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/fetch_email_campaigns_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotAutomationApi.FetchEmailCampaigns" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_campaign_flow_ids': ['flow123', 'flow456'], 'start_date': '2023-01-01', 'max_results': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_sequence_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_automation_api/get_sequence_details_example_call_tool.js deleted file mode 100644 index d23bbb654..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_sequence_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotAutomationApi.GetSequenceDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "sequence_id": "seq-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_sequence_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_automation_api/get_sequence_details_example_call_tool.py deleted file mode 100644 index 974239331..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_sequence_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotAutomationApi.GetSequenceDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'sequence_id': 'seq-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_user_sequences_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_automation_api/get_user_sequences_example_call_tool.js deleted file mode 100644 index 23d5e9608..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_user_sequences_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotAutomationApi.GetUserSequences"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_user_sequences_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_automation_api/get_user_sequences_example_call_tool.py deleted file mode 100644 index cd301388e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_user_sequences_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotAutomationApi.GetUserSequences" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_workflow_id_mappings_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_automation_api/get_workflow_id_mappings_example_call_tool.js deleted file mode 100644 index e870b000a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_workflow_id_mappings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotAutomationApi.GetWorkflowIdMappings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"workflowIds\":[\"12345\",\"67890\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_workflow_id_mappings_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_automation_api/get_workflow_id_mappings_example_call_tool.py deleted file mode 100644 index 035c15c7f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_workflow_id_mappings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotAutomationApi.GetWorkflowIdMappings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"workflowIds":["12345","67890"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_workflows_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_automation_api/get_workflows_example_call_tool.js deleted file mode 100644 index e155339da..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_workflows_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotAutomationApi.GetWorkflows"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"workflow_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_workflows_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_automation_api/get_workflows_example_call_tool.py deleted file mode 100644 index 225ef533e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_automation_api/get_workflows_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotAutomationApi.GetWorkflows" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"workflow_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/add_hubdb_table_row_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/add_hubdb_table_row_example_call_tool.js deleted file mode 100644 index 79daca461..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/add_hubdb_table_row_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.AddHubdbTableRow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "target_table_id_or_name": "my_table", - "request_body": "{\"column1\":\"value1\",\"column2\":\"value2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/add_hubdb_table_row_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/add_hubdb_table_row_example_call_tool.py deleted file mode 100644 index 62051f1ad..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/add_hubdb_table_row_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.AddHubdbTableRow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'target_table_id_or_name': 'my_table', - 'request_body': '{"column1":"value1","column2":"value2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/archive_blog_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/archive_blog_tags_example_call_tool.js deleted file mode 100644 index 7c5cfbc67..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/archive_blog_tags_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ArchiveBlogTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_tag_identifiers": [ - "tag1", - "tag2", - "tag3" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/archive_blog_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/archive_blog_tags_example_call_tool.py deleted file mode 100644 index 7d4a03871..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/archive_blog_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ArchiveBlogTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_tag_identifiers': ['tag1', 'tag2', 'tag3'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/archive_hubdb_table_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/archive_hubdb_table_example_call_tool.js deleted file mode 100644 index 4f092d0e0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/archive_hubdb_table_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ArchiveHubdbTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hubdb_table_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/archive_hubdb_table_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/archive_hubdb_table_example_call_tool.py deleted file mode 100644 index c52abf089..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/archive_hubdb_table_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ArchiveHubdbTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hubdb_table_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_author_to_multilang_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_author_to_multilang_group_example_call_tool.js deleted file mode 100644 index bab7a4bb1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_author_to_multilang_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.AttachAuthorToMultilangGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "author_object_id": "12345", - "designated_language": "en", - "primary_language_object_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_author_to_multilang_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_author_to_multilang_group_example_call_tool.py deleted file mode 100644 index c60c97d0b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_author_to_multilang_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.AttachAuthorToMultilangGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'author_object_id': '12345', 'designated_language': 'en', 'primary_language_object_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_blog_post_to_language_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_blog_post_to_language_group_example_call_tool.js deleted file mode 100644 index a34cef23d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_blog_post_to_language_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.AttachBlogPostToLanguageGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "designated_language": "fr", - "object_id": "12345", - "primary_language_object_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_blog_post_to_language_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_blog_post_to_language_group_example_call_tool.py deleted file mode 100644 index adcad3230..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_blog_post_to_language_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.AttachBlogPostToLanguageGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'designated_language': 'fr', 'object_id': '12345', 'primary_language_object_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_blog_to_language_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_blog_to_language_group_example_call_tool.js deleted file mode 100644 index 23fb44922..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_blog_to_language_group_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.AttachBlogToLanguageGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "designated_language": "fr", - "object_id_to_add": "12345", - "primary_language_object_id": "67890", - "primary_language": "en" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_blog_to_language_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_blog_to_language_group_example_call_tool.py deleted file mode 100644 index 2331ab750..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_blog_to_language_group_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.AttachBlogToLanguageGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'designated_language': 'fr', - 'object_id_to_add': '12345', - 'primary_language_object_id': '67890', - 'primary_language': 'en' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_landing_page_to_language_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_landing_page_to_language_group_example_call_tool.js deleted file mode 100644 index 4444ecaa6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_landing_page_to_language_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.AttachLandingPageToLanguageGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "designated_language_to_add": "fr", - "object_id_for_language_group": "12345", - "primary_language_object_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_landing_page_to_language_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_landing_page_to_language_group_example_call_tool.py deleted file mode 100644 index 742148f84..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_landing_page_to_language_group_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.AttachLandingPageToLanguageGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'designated_language_to_add': 'fr', - 'object_id_for_language_group': '12345', - 'primary_language_object_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_page_to_language_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_page_to_language_group_example_call_tool.js deleted file mode 100644 index b9adb4360..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_page_to_language_group_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.AttachPageToLanguageGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_id_to_add_to_language_group": "page123", - "page_language": "fr", - "primary_language_object_id": "lang456", - "primary_language_of_group": "en" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_page_to_language_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_page_to_language_group_example_call_tool.py deleted file mode 100644 index 364531df1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_page_to_language_group_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.AttachPageToLanguageGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_id_to_add_to_language_group': 'page123', - 'page_language': 'fr', - 'primary_language_object_id': 'lang456', - 'primary_language_of_group': 'en' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_tag_to_language_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_tag_to_language_group_example_call_tool.js deleted file mode 100644 index f25a8a089..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_tag_to_language_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.AttachTagToLanguageGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "designated_language": "fr", - "object_id_for_multilanguage_group": "12345", - "primary_language_object_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_tag_to_language_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_tag_to_language_group_example_call_tool.py deleted file mode 100644 index 89f85c0ea..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/attach_tag_to_language_group_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.AttachTagToLanguageGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'designated_language': 'fr', - 'object_id_for_multilanguage_group': '12345', - 'primary_language_object_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/batch_update_table_rows_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/batch_update_table_rows_hubspot_example_call_tool.js deleted file mode 100644 index 0eda5146f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/batch_update_table_rows_hubspot_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.BatchUpdateTableRowsHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "table_id_or_name": "my_table", - "request_body": "{\"rows\":[{\"id\":\"1\",\"data\":{\"field\":\"value1\"}},{\"id\":\"2\",\"data\":{\"field\":\"value2\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/batch_update_table_rows_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/batch_update_table_rows_hubspot_example_call_tool.py deleted file mode 100644 index bcb06df26..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/batch_update_table_rows_hubspot_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.BatchUpdateTableRowsHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'table_id_or_name': 'my_table', - 'request_body': '{"rows":[{"id":"1","data":{"field":"value1"}},{"id":"2","data":{"field":"value2"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/check_extraction_status_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/check_extraction_status_example_call_tool.js deleted file mode 100644 index 91a1fd880..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/check_extraction_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CheckExtractionStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "extraction_task_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/check_extraction_status_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/check_extraction_status_example_call_tool.py deleted file mode 100644 index 53f4d00ee..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/check_extraction_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CheckExtractionStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'extraction_task_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_blog_post_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_blog_post_example_call_tool.js deleted file mode 100644 index 694b0cfdc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_blog_post_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CloneBlogPost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_id": "12345", - "cloned_blog_post_name": "Copy of My First Blog Post" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_blog_post_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_blog_post_example_call_tool.py deleted file mode 100644 index 5ce573042..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_blog_post_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CloneBlogPost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_id': '12345', 'cloned_blog_post_name': 'Copy of My First Blog Post' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_draft_table_rows_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_draft_table_rows_hubspot_example_call_tool.js deleted file mode 100644 index cb3ea0886..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_draft_table_rows_hubspot_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CloneDraftTableRowsHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "hubdb_table_id_or_name": "12345", - "request_body": "{\"row_ids\":[\"row1\",\"row2\",\"row3\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_draft_table_rows_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_draft_table_rows_hubspot_example_call_tool.py deleted file mode 100644 index 0c733ed20..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_draft_table_rows_hubspot_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CloneDraftTableRowsHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'hubdb_table_id_or_name': '12345', - 'request_body': '{"row_ids":["row1","row2","row3"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_hubdb_draft_row_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_hubdb_draft_row_example_call_tool.js deleted file mode 100644 index a926d3659..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_hubdb_draft_row_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CloneHubdbDraftRow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "row_id_to_clone": "12345", - "table_id_or_name": "my_table", - "new_row_name": "Cloned Row 1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_hubdb_draft_row_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_hubdb_draft_row_example_call_tool.py deleted file mode 100644 index 8184c5d77..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_hubdb_draft_row_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CloneHubdbDraftRow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'row_id_to_clone': '12345', 'table_id_or_name': 'my_table', 'new_row_name': 'Cloned Row 1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_hubdb_table_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_hubdb_table_example_call_tool.js deleted file mode 100644 index 827704535..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_hubdb_table_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CloneHubdbTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "copy_rows": true, - "is_hubspot_defined": false, - "source_table_id_or_name": "existing_table_123", - "new_table_label": "Draft of Existing Table", - "new_table_name": "cloned_table_draft" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_hubdb_table_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_hubdb_table_example_call_tool.py deleted file mode 100644 index 398c1f14d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_hubdb_table_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CloneHubdbTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'copy_rows': True, - 'is_hubspot_defined': False, - 'source_table_id_or_name': 'existing_table_123', - 'new_table_label': 'Draft of Existing Table', - 'new_table_name': 'cloned_table_draft' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_landing_page_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_landing_page_hubspot_example_call_tool.js deleted file mode 100644 index 53ea9e405..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_landing_page_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CloneLandingPageHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345", - "cloned_landing_page_name": "Copy of Landing Page 1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_landing_page_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_landing_page_hubspot_example_call_tool.py deleted file mode 100644 index e0eb8a89d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_landing_page_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CloneLandingPageHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345', 'cloned_landing_page_name': 'Copy of Landing Page 1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_site_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_site_page_example_call_tool.js deleted file mode 100644 index 3b1b4fa13..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_site_page_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CloneSitePage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_id_to_clone": "12345", - "clone_name": "Cloned Page - 2023" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_site_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_site_page_example_call_tool.py deleted file mode 100644 index 1a5e7d5d0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/clone_site_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CloneSitePage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_id_to_clone': '12345', 'clone_name': 'Cloned Page - 2023' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_ab_test_variation_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_ab_test_variation_example_call_tool.js deleted file mode 100644 index fe3e170e8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_ab_test_variation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateAbTestVariation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ab_test_variation_name": "Variation A", - "object_test_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_ab_test_variation_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_ab_test_variation_example_call_tool.py deleted file mode 100644 index a34c82f52..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_ab_test_variation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateAbTestVariation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ab_test_variation_name': 'Variation A', 'object_test_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_attention_span_event_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_attention_span_event_example_call_tool.js deleted file mode 100644 index 17a42f520..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_attention_span_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateAttentionSpanEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"eventType\":\"view\",\"duration\":120,\"mediaId\":\"abc123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_attention_span_event_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_attention_span_event_example_call_tool.py deleted file mode 100644 index f3277b1a2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_attention_span_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateAttentionSpanEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"eventType":"view","duration":120,"mediaId":"abc123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_batch_blog_posts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_batch_blog_posts_example_call_tool.js deleted file mode 100644 index 062770a1f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_batch_blog_posts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateBatchBlogPosts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"posts\":[{\"title\":\"First Blog Post\",\"content\":\"This is the content of the first blog post.\"},{\"title\":\"Second Blog Post\",\"content\":\"This is the content of the second blog post.\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_batch_blog_posts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_batch_blog_posts_example_call_tool.py deleted file mode 100644 index 323ba0204..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_batch_blog_posts_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateBatchBlogPosts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"posts":[{"title":"First Blog Post","content":"This is the content of the ' - 'first blog post."},{"title":"Second Blog Post","content":"This is the content ' - 'of the second blog post."}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_author_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_author_example_call_tool.js deleted file mode 100644 index 856c45735..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_author_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateBlogAuthor"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"John Doe\",\"bio\":\"Tech blogger and software engineer.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_author_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_author_example_call_tool.py deleted file mode 100644 index c9b47bbc0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_author_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateBlogAuthor" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"John Doe","bio":"Tech blogger and software engineer."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_author_language_variation_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_author_language_variation_example_call_tool.js deleted file mode 100644 index 490501252..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_author_language_variation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateBlogAuthorLanguageVariation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"authorId\":\"12345\",\"language\":\"es\",\"variation\":\"Texto de ejemplo\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_author_language_variation_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_author_language_variation_example_call_tool.py deleted file mode 100644 index 6efdf7f55..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_author_language_variation_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateBlogAuthorLanguageVariation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"authorId":"12345","language":"es","variation":"Texto de ejemplo"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_authors_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_authors_batch_example_call_tool.js deleted file mode 100644 index 7bc158d93..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_authors_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateBlogAuthorsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "[{\"name\":\"John Doe\",\"email\":\"john@example.com\"},{\"name\":\"Jane Smith\",\"email\":\"jane@example.com\"}]" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_authors_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_authors_batch_example_call_tool.py deleted file mode 100644 index 578edf9a9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_authors_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateBlogAuthorsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '[{"name":"John Doe","email":"john@example.com"},{"name":"Jane ' - 'Smith","email":"jane@example.com"}]' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_language_variation_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_language_variation_example_call_tool.js deleted file mode 100644 index f18535f6c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_language_variation_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateBlogLanguageVariation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_id": "12345", - "blog_slug": "my-blog", - "target_language_for_blog_variant": "es" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_language_variation_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_language_variation_example_call_tool.py deleted file mode 100644 index b712191d0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_language_variation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateBlogLanguageVariation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_id': '12345', 'blog_slug': 'my-blog', 'target_language_for_blog_variant': 'es' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_post_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_post_example_call_tool.js deleted file mode 100644 index e0d6e72f3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_post_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateBlogPost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"My First Blog Post\",\"content\":\"This is the content of my first blog post.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_post_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_post_example_call_tool.py deleted file mode 100644 index 1cd1dd8e5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_post_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateBlogPost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"title":"My First Blog Post","content":"This is the content of my first blog ' - 'post."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tag_example_call_tool.js deleted file mode 100644 index 5ab871ed6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tag_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateBlogTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_tag_unique_id": "tag-12345", - "creation_timestamp": "2023-10-01T12:00:00Z", - "deletion_timestamp": "2023-10-31T12:00:00Z", - "language_code": "en", - "primary_tag_translation_id": 1, - "tag_name": "Tech", - "updated_timestamp": "2023-10-15T12:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tag_example_call_tool.py deleted file mode 100644 index defe15ae0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tag_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateBlogTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_tag_unique_id': 'tag-12345', - 'creation_timestamp': '2023-10-01T12:00:00Z', - 'deletion_timestamp': '2023-10-31T12:00:00Z', - 'language_code': 'en', - 'primary_tag_translation_id': 1, - 'tag_name': 'Tech', - 'updated_timestamp': '2023-10-15T12:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tag_language_variation_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tag_language_variation_example_call_tool.js deleted file mode 100644 index dcec8c000..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tag_language_variation_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateBlogTagLanguageVariation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_tag_id": "12345", - "new_blog_tag_name": "Tech", - "target_language_for_blog_tag_variation": "fr" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tag_language_variation_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tag_language_variation_example_call_tool.py deleted file mode 100644 index 0fb16b69d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tag_language_variation_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateBlogTagLanguageVariation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_tag_id': '12345', - 'new_blog_tag_name': 'Tech', - 'target_language_for_blog_tag_variation': 'fr' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tags_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tags_batch_example_call_tool.js deleted file mode 100644 index 323e5472f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tags_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateBlogTagsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"tags\":[{\"name\":\"Tech\"},{\"name\":\"Health\"},{\"name\":\"Travel\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tags_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tags_batch_example_call_tool.py deleted file mode 100644 index 3dea415ce..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_blog_tags_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateBlogTagsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"tags":[{"name":"Tech"},{"name":"Health"},{"name":"Travel"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_draft_table_rows_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_draft_table_rows_example_call_tool.js deleted file mode 100644 index 703b6e5eb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_draft_table_rows_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateDraftTableRows"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "table_id_or_name": "contacts_table", - "request_body": "[{\"name\":\"John Doe\",\"email\":\"john@example.com\"},{\"name\":\"Jane Smith\",\"email\":\"jane@example.com\"}]" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_draft_table_rows_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_draft_table_rows_example_call_tool.py deleted file mode 100644 index b28fd8c03..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_draft_table_rows_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateDraftTableRows" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'table_id_or_name': 'contacts_table', - 'request_body': '[{"name":"John Doe","email":"john@example.com"},{"name":"Jane ' - 'Smith","email":"jane@example.com"}]' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_hubdb_table_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_hubdb_table_example_call_tool.js deleted file mode 100644 index 2bd342d8b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_hubdb_table_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateHubdbTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"unique_table_name\",\"label\":\"Unique Table Label\",\"columns\":[{\"name\":\"column1\",\"type\":\"text\"},{\"name\":\"column2\",\"type\":\"number\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_hubdb_table_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_hubdb_table_example_call_tool.py deleted file mode 100644 index 085fec0e7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_hubdb_table_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateHubdbTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"unique_table_name","label":"Unique Table ' - 'Label","columns":[{"name":"column1","type":"text"},{"name":"column2","type":"number"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_example_call_tool.js deleted file mode 100644 index 4bd2dfaf6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateLandingPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"Sample Landing Page\",\"content\":\"[page_content]\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_example_call_tool.py deleted file mode 100644 index 429d4d321..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateLandingPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"title":"Sample Landing Page","content":"[page_content]"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_folder_example_call_tool.js deleted file mode 100644 index 4dd0cd941..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_folder_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateLandingPageFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deletion_timestamp": "", - "folder_category": 1, - "folder_creation_date": "2023-10-01T12:00:00Z", - "folder_name": "New Landing Page Folder", - "folder_unique_id": "folder-12345", - "parent_folder_id": 0, - "updated_timestamp": "2023-10-01T12:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_folder_example_call_tool.py deleted file mode 100644 index 8aa58e65b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_folder_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateLandingPageFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deletion_timestamp': '', - 'folder_category': 1, - 'folder_creation_date': '2023-10-01T12:00:00Z', - 'folder_name': 'New Landing Page Folder', - 'folder_unique_id': 'folder-12345', - 'parent_folder_id': 0, - 'updated_timestamp': '2023-10-01T12:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_folders_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_folders_example_call_tool.js deleted file mode 100644 index 45d11dcd6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_folders_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateLandingPageFolders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"folders\":[{\"name\":\"Landing Page 1\",\"description\":\"First landing page folder\"},{\"name\":\"Landing Page 2\",\"description\":\"Second landing page folder\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_folders_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_folders_example_call_tool.py deleted file mode 100644 index ba3a2d243..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_page_folders_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateLandingPageFolders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"folders":[{"name":"Landing Page 1","description":"First landing page ' - 'folder"},{"name":"Landing Page 2","description":"Second landing page ' - 'folder"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_pages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_pages_example_call_tool.js deleted file mode 100644 index 8b6149ce4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_pages_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateLandingPages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"Landing Page 1\",\"content\":\"[file_content]\",\"url\":\"/landing-page-1\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_pages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_pages_example_call_tool.py deleted file mode 100644 index aa67aa678..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_landing_pages_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateLandingPages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"title":"Landing Page 1","content":"[file_content]","url":"/landing-page-1"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_language_variation_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_language_variation_example_call_tool.js deleted file mode 100644 index 9d884c557..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_language_variation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateLanguageVariation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_id_to_clone": "12345", - "target_language": "fr" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_language_variation_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_language_variation_example_call_tool.py deleted file mode 100644 index 20c0f1fdd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_language_variation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateLanguageVariation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_id_to_clone': '12345', 'target_language': 'fr' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_media_played_event_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_media_played_event_example_call_tool.js deleted file mode 100644 index 49f095ec4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_media_played_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateMediaPlayedEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"userId\":\"12345\",\"mediaId\":\"abcde\",\"timestamp\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_media_played_event_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_media_played_event_example_call_tool.py deleted file mode 100644 index 284140f38..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_media_played_event_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateMediaPlayedEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"userId":"12345","mediaId":"abcde","timestamp":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_multilanguage_landing_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_multilanguage_landing_page_example_call_tool.js deleted file mode 100644 index f04910888..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_multilanguage_landing_page_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateMultilanguageLandingPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_id_to_clone": "12345", - "target_language": "fr" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_multilanguage_landing_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_multilanguage_landing_page_example_call_tool.py deleted file mode 100644 index 2ef83d77c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_multilanguage_landing_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateMultilanguageLandingPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_id_to_clone': '12345', 'target_language': 'fr' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_site_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_site_page_example_call_tool.js deleted file mode 100644 index e73eee095..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_site_page_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateSitePage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"New Page\",\"slug\":\"new-page\",\"content\":\"[file_content]\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_site_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_site_page_example_call_tool.py deleted file mode 100644 index 5aca85811..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_site_page_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateSitePage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"title":"New Page","slug":"new-page","content":"[file_content]"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_site_pages_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_site_pages_batch_example_call_tool.js deleted file mode 100644 index 29955a824..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_site_pages_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateSitePagesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"pages\":[{\"title\":\"Home\",\"content\":\"Welcome to our site!\"},{\"title\":\"About\",\"content\":\"About us page content.\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_site_pages_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_site_pages_batch_example_call_tool.py deleted file mode 100644 index 2d9c585f0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_site_pages_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateSitePagesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"pages":[{"title":"Home","content":"Welcome to our ' - 'site!"},{"title":"About","content":"About us page content."}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_url_redirect_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_url_redirect_example_call_tool.js deleted file mode 100644 index eb3c8c6e8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_url_redirect_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.CreateUrlRedirect"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "redirect_destination_url": "https://www.example.com/new-page", - "redirect_style": 301, - "route_prefix": "/old-page", - "apply_only_after_not_found": false, - "enable_pattern_matching": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_url_redirect_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/create_url_redirect_example_call_tool.py deleted file mode 100644 index 947087511..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/create_url_redirect_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.CreateUrlRedirect" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'redirect_destination_url': 'https://www.example.com/new-page', - 'redirect_style': 301, - 'route_prefix': '/old-page', - 'apply_only_after_not_found': False, - 'enable_pattern_matching': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_author_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_author_example_call_tool.js deleted file mode 100644 index 98d33b782..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_author_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DeleteBlogAuthor"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_author_id": "12345", - "return_archived_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_author_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_author_example_call_tool.py deleted file mode 100644 index 25d20f044..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_author_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DeleteBlogAuthor" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_author_id': '12345', 'return_archived_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_authors_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_authors_example_call_tool.js deleted file mode 100644 index 133ead44a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_authors_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DeleteBlogAuthors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_author_ids": [ - "12345", - "67890" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_authors_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_authors_example_call_tool.py deleted file mode 100644 index 6136c0136..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_authors_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DeleteBlogAuthors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_author_ids': ['12345', '67890'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_post_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_post_example_call_tool.js deleted file mode 100644 index 0662c84e1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_post_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DeleteBlogPost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_ids_to_delete": [ - "12345", - "67890" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_post_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_post_example_call_tool.py deleted file mode 100644 index 04398194b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_post_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DeleteBlogPost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_ids_to_delete': ['12345', '67890'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_tag_example_call_tool.js deleted file mode 100644 index 5f69a6885..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_tag_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DeleteBlogTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_tag_id": "12345", - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_tag_example_call_tool.py deleted file mode 100644 index 2cec9f0f5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_blog_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DeleteBlogTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_tag_id': '12345', 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_cms_site_pages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_cms_site_pages_example_call_tool.js deleted file mode 100644 index 4e8d612f8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_cms_site_pages_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DeleteCmsSitePages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_ids_to_delete": [ - "12345", - "67890", - "abcde" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_cms_site_pages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_cms_site_pages_example_call_tool.py deleted file mode 100644 index 1f416b75a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_cms_site_pages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DeleteCmsSitePages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_ids_to_delete': ['12345', '67890', 'abcde'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_draft_table_row_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_draft_table_row_hubspot_example_call_tool.js deleted file mode 100644 index f2d251e1e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_draft_table_row_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DeleteDraftTableRowHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "row_id": "12345", - "table_id_or_name": "my_draft_table" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_draft_table_row_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_draft_table_row_hubspot_example_call_tool.py deleted file mode 100644 index 8df57e2be..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_draft_table_row_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DeleteDraftTableRowHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'row_id': '12345', 'table_id_or_name': 'my_draft_table' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_file_in_cms_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_file_in_cms_environment_example_call_tool.js deleted file mode 100644 index d22f3af84..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_file_in_cms_environment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DeleteFileInCmsEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_environment": "draft", - "file_system_location": "/path/to/file.txt" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_file_in_cms_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_file_in_cms_environment_example_call_tool.py deleted file mode 100644 index 71a642be2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_file_in_cms_environment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DeleteFileInCmsEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_environment': 'draft', 'file_system_location': '/path/to/file.txt' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_example_call_tool.js deleted file mode 100644 index 136c97314..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DeleteLandingPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345", - "return_archived_results_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_example_call_tool.py deleted file mode 100644 index 6b99615f1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DeleteLandingPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345', 'return_archived_results_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_folder_example_call_tool.js deleted file mode 100644 index 9bfe357fb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_folder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DeleteLandingPageFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id": "12345", - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_folder_example_call_tool.py deleted file mode 100644 index ccd4019bb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DeleteLandingPageFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id': '12345', 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_folders_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_folders_example_call_tool.js deleted file mode 100644 index 6a19fdf56..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_folders_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DeleteLandingPageFolders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifiers": [ - "folder123", - "folder456" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_folders_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_folders_example_call_tool.py deleted file mode 100644 index 34b86e17e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_page_folders_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DeleteLandingPageFolders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifiers': ['folder123', 'folder456'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_pages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_pages_example_call_tool.js deleted file mode 100644 index 006481aa0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_pages_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DeleteLandingPages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_ids": [ - "12345", - "67890", - "abcde" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_pages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_pages_example_call_tool.py deleted file mode 100644 index e48371185..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_landing_pages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DeleteLandingPages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_ids': ['12345', '67890', 'abcde'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_site_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_site_page_example_call_tool.js deleted file mode 100644 index 442f9d38c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_site_page_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DeleteSitePage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site_page_id": "12345", - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_site_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_site_page_example_call_tool.py deleted file mode 100644 index 957f001b8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_site_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DeleteSitePage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site_page_id': '12345', 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_table_version_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_table_version_example_call_tool.js deleted file mode 100644 index a7c2ff725..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_table_version_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DeleteTableVersion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "table_identifier": "my_table", - "table_version_id": 3 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_table_version_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_table_version_example_call_tool.py deleted file mode 100644 index 23a0784a9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_table_version_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DeleteTableVersion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'table_identifier': 'my_table', 'table_version_id': 3 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_url_redirect_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_url_redirect_example_call_tool.js deleted file mode 100644 index 5051c792e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_url_redirect_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DeleteUrlRedirect"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "url_redirect_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_url_redirect_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_url_redirect_example_call_tool.py deleted file mode 100644 index 64e44a5b7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/delete_url_redirect_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DeleteUrlRedirect" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'url_redirect_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_author_from_lang_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_author_from_lang_group_example_call_tool.js deleted file mode 100644 index da1002589..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_author_from_lang_group_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DetachBlogAuthorFromLangGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "author_id_to_detach": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_author_from_lang_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_author_from_lang_group_example_call_tool.py deleted file mode 100644 index d6b16fd9d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_author_from_lang_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DetachBlogAuthorFromLangGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'author_id_to_detach': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_from_language_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_from_language_group_example_call_tool.js deleted file mode 100644 index 9b3fefdf0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_from_language_group_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DetachBlogFromLanguageGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_id_to_detach": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_from_language_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_from_language_group_example_call_tool.py deleted file mode 100644 index 0caa9a4cd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_from_language_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DetachBlogFromLanguageGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_id_to_detach': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_post_language_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_post_language_group_example_call_tool.js deleted file mode 100644 index 636afc743..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_post_language_group_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DetachBlogPostLanguageGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_id_to_detach_from_language_group": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_post_language_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_post_language_group_example_call_tool.py deleted file mode 100644 index 2eeae17ff..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_post_language_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DetachBlogPostLanguageGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_id_to_detach_from_language_group': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_tag_from_language_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_tag_from_language_group_example_call_tool.js deleted file mode 100644 index 135c5bee3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_tag_from_language_group_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DetachBlogTagFromLanguageGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_tag_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_tag_from_language_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_tag_from_language_group_example_call_tool.py deleted file mode 100644 index db43f67d4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_blog_tag_from_language_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DetachBlogTagFromLanguageGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_tag_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_landing_page_from_language_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_landing_page_from_language_group_example_call_tool.js deleted file mode 100644 index b66c08d33..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_landing_page_from_language_group_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DetachLandingPageFromLanguageGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_landing_page_from_language_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_landing_page_from_language_group_example_call_tool.py deleted file mode 100644 index 06d8ce29a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_landing_page_from_language_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DetachLandingPageFromLanguageGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_site_page_from_language_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_site_page_from_language_group_example_call_tool.js deleted file mode 100644 index fbe8f6afb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_site_page_from_language_group_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DetachSitePageFromLanguageGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_id_to_detach": "page_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_site_page_from_language_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_site_page_from_language_group_example_call_tool.py deleted file mode 100644 index cce81db17..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/detach_site_page_from_language_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DetachSitePageFromLanguageGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_id_to_detach': 'page_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/download_file_from_hubspot_cms_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/download_file_from_hubspot_cms_example_call_tool.js deleted file mode 100644 index d1bbaf0c3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/download_file_from_hubspot_cms_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.DownloadFileFromHubspotCms"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_environment": "published", - "file_system_path": "/assets/images/sample.png" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/download_file_from_hubspot_cms_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/download_file_from_hubspot_cms_example_call_tool.py deleted file mode 100644 index 2e483596d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/download_file_from_hubspot_cms_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.DownloadFileFromHubspotCms" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_environment': 'published', 'file_system_path': '/assets/images/sample.png' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/end_ab_test_select_winner_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/end_ab_test_select_winner_example_call_tool.js deleted file mode 100644 index 47c06cf9e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/end_ab_test_select_winner_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.EndAbTestSelectWinner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "test_id_to_end": "test_12345", - "winner_object_id": "variant_A" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/end_ab_test_select_winner_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/end_ab_test_select_winner_example_call_tool.py deleted file mode 100644 index 55f5d5699..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/end_ab_test_select_winner_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.EndAbTestSelectWinner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'test_id_to_end': 'test_12345', 'winner_object_id': 'variant_A' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/end_active_ab_test_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/end_active_ab_test_example_call_tool.js deleted file mode 100644 index b421e6296..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/end_active_ab_test_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.EndActiveAbTest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "test_id_to_end": "ab_test_123", - "winner_id": "variant_a" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/end_active_ab_test_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/end_active_ab_test_example_call_tool.py deleted file mode 100644 index 681b78e14..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/end_active_ab_test_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.EndActiveAbTest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'test_id_to_end': 'ab_test_123', 'winner_id': 'variant_a' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/export_hubdb_draft_table_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/export_hubdb_draft_table_example_call_tool.js deleted file mode 100644 index db2a054ab..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/export_hubdb_draft_table_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ExportHubdbDraftTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "table_id_or_name": "my_draft_table", - "export_file_format": "CSV" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/export_hubdb_draft_table_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/export_hubdb_draft_table_example_call_tool.py deleted file mode 100644 index 80d810670..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/export_hubdb_draft_table_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ExportHubdbDraftTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'table_id_or_name': 'my_draft_table', 'export_file_format': 'CSV' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/export_table_from_hubdb_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/export_table_from_hubdb_example_call_tool.js deleted file mode 100644 index 0e2f825fc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/export_table_from_hubdb_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ExportTableFromHubdb"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hubdb_table_id_or_name": "12345", - "file_format_to_export": "CSV" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/export_table_from_hubdb_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/export_table_from_hubdb_example_call_tool.py deleted file mode 100644 index 9568462d2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/export_table_from_hubdb_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ExportTableFromHubdb" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hubdb_table_id_or_name': '12345', 'file_format_to_export': 'CSV' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/extract_zip_file_async_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/extract_zip_file_async_example_call_tool.js deleted file mode 100644 index 13618a156..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/extract_zip_file_async_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ExtractZipFileAsync"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "zip_file_path": "/files/example.zip" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/extract_zip_file_async_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/extract_zip_file_async_example_call_tool.py deleted file mode 100644 index b3fd5bcc7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/extract_zip_file_async_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ExtractZipFileAsync" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'zip_file_path': '/files/example.zip' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/fetch_hubdb_table_rows_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/fetch_hubdb_table_rows_example_call_tool.js deleted file mode 100644 index 96f48036c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/fetch_hubdb_table_rows_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.FetchHubdbTableRows"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "table_identifier": "my_table", - "include_archived_rows": false, - "maximum_results_limit": 500, - "requested_columns": [ - "name", - "email" - ], - "sort_columns": [ - "-created_at" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/fetch_hubdb_table_rows_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/fetch_hubdb_table_rows_example_call_tool.py deleted file mode 100644 index 713dbb3d0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/fetch_hubdb_table_rows_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.FetchHubdbTableRows" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'table_identifier': 'my_table', - 'include_archived_rows': False, - 'maximum_results_limit': 500, - 'requested_columns': ['name', 'email'], - 'sort_columns': ['-created_at'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/fetch_url_redirects_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/fetch_url_redirects_example_call_tool.js deleted file mode 100644 index 526a1fbef..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/fetch_url_redirects_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.FetchUrlRedirects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_after_date": "2023-01-01", - "filter_updated_after": "2023-10-01", - "results_per_page_limit": 10, - "return_archived_only": false, - "sort_criteria": [ - "createdAt", - "updatedAt" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/fetch_url_redirects_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/fetch_url_redirects_example_call_tool.py deleted file mode 100644 index 56de62f60..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/fetch_url_redirects_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.FetchUrlRedirects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_after_date': '2023-01-01', - 'filter_updated_after': '2023-10-01', - 'results_per_page_limit': 10, - 'return_archived_only': False, - 'sort_criteria': ['createdAt', 'updatedAt'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_all_draft_tables_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_all_draft_tables_details_example_call_tool.js deleted file mode 100644 index 5636041dc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_all_draft_tables_details_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetAllDraftTablesDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type": "blog_post", - "created_after_date": "2023-01-01T00:00:00Z", - "include_archived_tables": true, - "maximum_results_limit": 500, - "sort_fields_for_results": [ - "name", - "createdAt" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_all_draft_tables_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_all_draft_tables_details_example_call_tool.py deleted file mode 100644 index 2402bc6dc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_all_draft_tables_details_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetAllDraftTablesDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type': 'blog_post', - 'created_after_date': '2023-01-01T00:00:00Z', - 'include_archived_tables': True, - 'maximum_results_limit': 500, - 'sort_fields_for_results': ['name', 'createdAt'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_all_hubdb_tables_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_all_hubdb_tables_example_call_tool.js deleted file mode 100644 index 4c9fac184..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_all_hubdb_tables_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetAllHubdbTables"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_type_filter": "blog_post", - "created_after": "2023-01-01T00:00:00Z", - "include_archived_tables": true, - "max_table_results": 500, - "sort_fields": [ - "name", - "createdAt" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_all_hubdb_tables_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_all_hubdb_tables_example_call_tool.py deleted file mode 100644 index 2a3967be1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_all_hubdb_tables_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetAllHubdbTables" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_type_filter': 'blog_post', - 'created_after': '2023-01-01T00:00:00Z', - 'include_archived_tables': True, - 'max_table_results': 500, - 'sort_fields': ['name', 'createdAt'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_author_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_author_by_id_example_call_tool.js deleted file mode 100644 index 4256daa2b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_author_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetBlogAuthorById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_author_id": "12345", - "include_deleted_blog_authors": false, - "specific_author_property": "name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_author_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_author_by_id_example_call_tool.py deleted file mode 100644 index f12313b0d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_author_by_id_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetBlogAuthorById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_author_id': '12345', - 'include_deleted_blog_authors': False, - 'specific_author_property': 'name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_authors_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_authors_example_call_tool.js deleted file mode 100644 index 309e345b2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_authors_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetBlogAuthors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_after": "2023-01-01T00:00:00Z", - "filter_by_last_updated_before": "2023-10-01T00:00:00Z", - "include_archived_authors": true, - "result_limit": 50, - "sort_fields": [ - "name", - "createdAt" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_authors_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_authors_example_call_tool.py deleted file mode 100644 index d169004c9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_authors_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetBlogAuthors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_after': '2023-01-01T00:00:00Z', - 'filter_by_last_updated_before': '2023-10-01T00:00:00Z', - 'include_archived_authors': True, - 'result_limit': 50, - 'sort_fields': ['name', 'createdAt'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_post_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_post_draft_example_call_tool.js deleted file mode 100644 index 8cd53086e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_post_draft_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetBlogPostDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_post_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_post_draft_example_call_tool.py deleted file mode 100644 index d4b7eb070..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_post_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetBlogPostDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_revision_history_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_revision_history_example_call_tool.js deleted file mode 100644 index ffa2d6e0f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_revision_history_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetBlogRevisionHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_id": "12345", - "revision_limit": 10, - "start_date_for_revisions": "2023-01-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_revision_history_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_revision_history_example_call_tool.py deleted file mode 100644 index be19168d9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_revision_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetBlogRevisionHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_id': '12345', 'revision_limit': 10, 'start_date_for_revisions': '2023-01-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_settings_example_call_tool.js deleted file mode 100644 index b9b791138..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_settings_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetBlogSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_settings_example_call_tool.py deleted file mode 100644 index 98df75868..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetBlogSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_tags_example_call_tool.js deleted file mode 100644 index 287134295..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_tags_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetBlogTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "additional_properties": "author,views", - "created_after_time": "2023-01-01T00:00:00Z", - "maximum_results_to_return": 50, - "sort_fields_for_results": [ - "name", - "createdAt" - ], - "include_archived_tags": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_tags_example_call_tool.py deleted file mode 100644 index 81820ad04..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_blog_tags_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetBlogTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'additional_properties': 'author,views', - 'created_after_time': '2023-01-01T00:00:00Z', - 'maximum_results_to_return': 50, - 'sort_fields_for_results': ['name', 'createdAt'], - 'include_archived_tags': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_domain_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_domain_by_id_example_call_tool.js deleted file mode 100644 index 8e53f710c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_domain_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetDomainById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_domain_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_domain_by_id_example_call_tool.py deleted file mode 100644 index 34607bbd8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_domain_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetDomainById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_hubdb_table_rows_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_hubdb_table_rows_example_call_tool.js deleted file mode 100644 index 7d7752752..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_hubdb_table_rows_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetDraftHubdbTableRows"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "table_id_or_name": "my_table", - "include_archived_rows": false, - "maximum_results_limit": 50, - "sort_columns": [ - "name", - "-date_created" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_hubdb_table_rows_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_hubdb_table_rows_example_call_tool.py deleted file mode 100644 index 807ee12dc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_hubdb_table_rows_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetDraftHubdbTableRows" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'table_id_or_name': 'my_table', - 'include_archived_rows': False, - 'maximum_results_limit': 50, - 'sort_columns': ['name', '-date_created'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_table_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_table_details_example_call_tool.js deleted file mode 100644 index ef947508c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_table_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetDraftTableDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "table_id_or_name": "example_table", - "include_foreign_ids": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_table_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_table_details_example_call_tool.py deleted file mode 100644 index f1f610f9d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_table_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetDraftTableDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'table_id_or_name': 'example_table', 'include_foreign_ids': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_table_row_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_table_row_by_id_example_call_tool.js deleted file mode 100644 index f624a89f9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_table_row_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetDraftTableRowById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "row_id": "12345", - "table_identifier": "my_table", - "include_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_table_row_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_table_row_by_id_example_call_tool.py deleted file mode 100644 index dce1c956e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_draft_table_row_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetDraftTableRowById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'row_id': '12345', 'table_identifier': 'my_table', 'include_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_existing_domains_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_existing_domains_example_call_tool.js deleted file mode 100644 index 0de1e5322..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_existing_domains_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetExistingDomains"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_at_date_filter": "2023-10-01", - "maximum_results_per_page": 10, - "return_archived": false, - "sort_criteria": [ - "createdAt", - "updatedAt" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_existing_domains_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_existing_domains_example_call_tool.py deleted file mode 100644 index 1bdcce3e7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_existing_domains_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetExistingDomains" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_at_date_filter': '2023-10-01', - 'maximum_results_per_page': 10, - 'return_archived': False, - 'sort_criteria': ['createdAt', 'updatedAt'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_file_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_file_metadata_example_call_tool.js deleted file mode 100644 index 38c1cc4ce..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_file_metadata_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetFileMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_environment": "published", - "file_path": "/assets/images/logo.png", - "include_properties": "size,type" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_file_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_file_metadata_example_call_tool.py deleted file mode 100644 index f0a7b9fc2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_file_metadata_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetFileMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_environment': 'published', - 'file_path': '/assets/images/logo.png', - 'include_properties': 'size,type' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_hubdb_draft_rows_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_hubdb_draft_rows_example_call_tool.js deleted file mode 100644 index 5bda89a2d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_hubdb_draft_rows_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetHubdbDraftRows"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "row_ids": [ - "123", - "456", - "789" - ], - "table_id_or_name": "my_table" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_hubdb_draft_rows_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_hubdb_draft_rows_example_call_tool.py deleted file mode 100644 index e0ba48b0f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_hubdb_draft_rows_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetHubdbDraftRows" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'row_ids': ['123', '456', '789'], 'table_id_or_name': 'my_table' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_hubdb_table_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_hubdb_table_details_example_call_tool.js deleted file mode 100644 index b763fce01..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_hubdb_table_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetHubdbTableDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "table_id_or_name": "example_table", - "get_localized_schema": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_hubdb_table_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_hubdb_table_details_example_call_tool.py deleted file mode 100644 index 304cf3edd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_hubdb_table_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetHubdbTableDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'table_id_or_name': 'example_table', 'get_localized_schema': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_by_id_example_call_tool.js deleted file mode 100644 index d2762c1f4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetLandingPageById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345", - "include_archived": false, - "landing_page_property": "title" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_by_id_example_call_tool.py deleted file mode 100644 index a20c870ad..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetLandingPageById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345', 'include_archived': False, 'landing_page_property': 'title' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_draft_example_call_tool.js deleted file mode 100644 index fa3820ca5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_draft_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetLandingPageDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_draft_example_call_tool.py deleted file mode 100644 index c3790e63f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetLandingPageDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_folder_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_folder_by_id_example_call_tool.js deleted file mode 100644 index 8345cb15a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_folder_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetLandingPageFolderById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id": "12345", - "filter_by_property": "name", - "include_archived_folders": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_folder_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_folder_by_id_example_call_tool.py deleted file mode 100644 index cb58df357..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_folder_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetLandingPageFolderById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id': '12345', 'filter_by_property': 'name', 'include_archived_folders': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_folders_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_folders_example_call_tool.js deleted file mode 100644 index 64707a875..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_folders_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetLandingPageFolders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_after": "2023-01-01T00:00:00Z", - "folder_property": "name,createdAt", - "include_deleted_folders": true, - "max_results_limit": 50, - "sort_criteria": [ - "name", - "createdAt" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_folders_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_folders_example_call_tool.py deleted file mode 100644 index bec576d54..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_folders_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetLandingPageFolders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_after': '2023-01-01T00:00:00Z', - 'folder_property': 'name,createdAt', - 'include_deleted_folders': True, - 'max_results_limit': 50, - 'sort_criteria': ['name', 'createdAt'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_previous_versions_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_previous_versions_example_call_tool.js deleted file mode 100644 index f163f5e84..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_previous_versions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetLandingPagePreviousVersions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345", - "max_results": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_previous_versions_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_previous_versions_example_call_tool.py deleted file mode 100644 index 267cf5e04..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_page_previous_versions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetLandingPagePreviousVersions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345', 'max_results': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_pages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_pages_example_call_tool.js deleted file mode 100644 index 5ce3d18b7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_pages_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetLandingPages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_after": "2023-01-01T00:00:00Z", - "max_results": 50, - "sort_fields_for_results": [ - "name", - "createdAt" - ], - "include_archived_pages": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_pages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_pages_example_call_tool.py deleted file mode 100644 index 0b94ef388..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_landing_pages_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetLandingPages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_after': '2023-01-01T00:00:00Z', - 'max_results': 50, - 'sort_fields_for_results': ['name', 'createdAt'], - 'include_archived_pages': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_blog_post_versions_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_blog_post_versions_example_call_tool.js deleted file mode 100644 index 645a25442..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_blog_post_versions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetPreviousBlogPostVersions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_id": "12345", - "before_timestamp": "2023-10-01T00:00:00Z", - "maximum_results_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_blog_post_versions_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_blog_post_versions_example_call_tool.py deleted file mode 100644 index 7788a32d6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_blog_post_versions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetPreviousBlogPostVersions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_id': '12345', 'before_timestamp': '2023-10-01T00:00:00Z', 'maximum_results_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_folder_versions_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_folder_versions_example_call_tool.js deleted file mode 100644 index 2c79cd7af..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_folder_versions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetPreviousFolderVersions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id": "12345", - "max_results": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_folder_versions_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_folder_versions_example_call_tool.py deleted file mode 100644 index 1d5817de7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_folder_versions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetPreviousFolderVersions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id': '12345', 'max_results': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_site_page_versions_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_site_page_versions_example_call_tool.js deleted file mode 100644 index e60b8ce66..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_site_page_versions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetPreviousSitePageVersions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site_page_id": "12345", - "max_results_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_site_page_versions_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_site_page_versions_example_call_tool.py deleted file mode 100644 index ae5dacc04..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_previous_site_page_versions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetPreviousSitePageVersions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site_page_id': '12345', 'max_results_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_site_page_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_site_page_draft_example_call_tool.js deleted file mode 100644 index b22084b15..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_site_page_draft_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetSitePageDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site_page_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_site_page_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_site_page_draft_example_call_tool.py deleted file mode 100644 index 16eb5da54..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_site_page_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetSitePageDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site_page_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_site_pages_list_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_site_pages_list_example_call_tool.js deleted file mode 100644 index 1be4046d8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_site_pages_list_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetSitePagesList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_before_date_time": "2023-10-01T00:00:00Z", - "filter_created_after": "2023-09-01T00:00:00Z", - "include_deleted_site_pages": true, - "maximum_results": 50, - "sort_fields_for_results": [ - "name", - "createdAt" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_site_pages_list_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_site_pages_list_example_call_tool.py deleted file mode 100644 index bad4a4006..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_site_pages_list_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetSitePagesList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_before_date_time': '2023-10-01T00:00:00Z', - 'filter_created_after': '2023-09-01T00:00:00Z', - 'include_deleted_site_pages': True, - 'maximum_results': 50, - 'sort_fields_for_results': ['name', 'createdAt'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_table_row_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_table_row_example_call_tool.js deleted file mode 100644 index 2b1fe39c9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_table_row_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetTableRow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "row_id": "12345", - "table_id_or_name": "my_table", - "archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_table_row_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_table_row_example_call_tool.py deleted file mode 100644 index 59808d235..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_table_row_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetTableRow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'row_id': '12345', 'table_id_or_name': 'my_table', 'archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_url_redirect_details_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_url_redirect_details_by_id_example_call_tool.js deleted file mode 100644 index cc4eaf4d3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_url_redirect_details_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.GetUrlRedirectDetailsById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "url_redirect_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_url_redirect_details_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/get_url_redirect_details_by_id_example_call_tool.py deleted file mode 100644 index 5180a93bb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/get_url_redirect_details_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.GetUrlRedirectDetailsById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'url_redirect_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/new_ab_test_variation_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/new_ab_test_variation_example_call_tool.js deleted file mode 100644 index 5ffe79e1c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/new_ab_test_variation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.NewAbTestVariation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ab_test_variation_name": "Homepage Variation 1", - "object_id_to_test": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/new_ab_test_variation_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/new_ab_test_variation_example_call_tool.py deleted file mode 100644 index 3b3e7b5ce..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/new_ab_test_variation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.NewAbTestVariation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ab_test_variation_name': 'Homepage Variation 1', 'object_id_to_test': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/new_language_blog_variation_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/new_language_blog_variation_example_call_tool.js deleted file mode 100644 index c445948ed..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/new_language_blog_variation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.NewLanguageBlogVariation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_id": "12345", - "target_language": "fr" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/new_language_blog_variation_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/new_language_blog_variation_example_call_tool.py deleted file mode 100644 index 8d250202b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/new_language_blog_variation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.NewLanguageBlogVariation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_id': '12345', 'target_language': 'fr' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/permanently_delete_hubdb_draft_rows_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/permanently_delete_hubdb_draft_rows_example_call_tool.js deleted file mode 100644 index 0baa94ae5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/permanently_delete_hubdb_draft_rows_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.PermanentlyDeleteHubdbDraftRows"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "row_ids_to_delete": [ - 1, - 2, - 3 - ], - "table_id_or_name": "my_table" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/permanently_delete_hubdb_draft_rows_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/permanently_delete_hubdb_draft_rows_example_call_tool.py deleted file mode 100644 index e0c9bfa01..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/permanently_delete_hubdb_draft_rows_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.PermanentlyDeleteHubdbDraftRows" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'row_ids_to_delete': [1, 2, 3], 'table_id_or_name': 'my_table' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_blog_post_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_blog_post_example_call_tool.js deleted file mode 100644 index 3d544c6b2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_blog_post_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.PublishBlogPost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_blog_post_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_blog_post_example_call_tool.py deleted file mode 100644 index 2645967d0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_blog_post_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.PublishBlogPost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_landing_page_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_landing_page_draft_example_call_tool.js deleted file mode 100644 index ee6bd7867..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_landing_page_draft_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.PublishLandingPageDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_landing_page_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_landing_page_draft_example_call_tool.py deleted file mode 100644 index 60866d670..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_landing_page_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.PublishLandingPageDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_site_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_site_page_example_call_tool.js deleted file mode 100644 index 9668cbc56..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_site_page_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.PublishSitePage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site_page_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_site_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_site_page_example_call_tool.py deleted file mode 100644 index 52a3ec6ad..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_site_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.PublishSitePage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site_page_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_table_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_table_draft_example_call_tool.js deleted file mode 100644 index ed573968f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_table_draft_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.PublishTableDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "table_identifier": "my_table_123", - "include_foreign_id_values": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_table_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_table_draft_example_call_tool.py deleted file mode 100644 index c404e8ead..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/publish_table_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.PublishTableDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'table_identifier': 'my_table_123', 'include_foreign_id_values': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/read_hubdb_table_rows_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/read_hubdb_table_rows_example_call_tool.js deleted file mode 100644 index a7b2c4660..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/read_hubdb_table_rows_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ReadHubdbTableRows"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hubdb_table_id_or_name": "my_table", - "row_ids": [ - "row1", - "row2", - "row3" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/read_hubdb_table_rows_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/read_hubdb_table_rows_example_call_tool.py deleted file mode 100644 index b4a421f33..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/read_hubdb_table_rows_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ReadHubdbTableRows" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hubdb_table_id_or_name': 'my_table', 'row_ids': ['row1', 'row2', 'row3'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/remove_blog_post_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/remove_blog_post_example_call_tool.js deleted file mode 100644 index f36beae85..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/remove_blog_post_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RemoveBlogPost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_id": "12345", - "only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/remove_blog_post_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/remove_blog_post_example_call_tool.py deleted file mode 100644 index db1ed07bc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/remove_blog_post_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RemoveBlogPost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_id': '12345', 'only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/replace_draft_table_row_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/replace_draft_table_row_example_call_tool.js deleted file mode 100644 index b9426c35e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/replace_draft_table_row_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ReplaceDraftTableRow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "table_id_or_name": "my_table", - "row_id": "123", - "request_body": "{\"column1\":\"value1\",\"column2\":\"value2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/replace_draft_table_row_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/replace_draft_table_row_example_call_tool.py deleted file mode 100644 index 439c1c1c4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/replace_draft_table_row_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ReplaceDraftTableRow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'table_id_or_name': 'my_table', - 'row_id': '123', - 'request_body': '{"column1":"value1","column2":"value2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/replace_draft_table_rows_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/replace_draft_table_rows_example_call_tool.js deleted file mode 100644 index e4a4d85c4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/replace_draft_table_rows_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ReplaceDraftTableRows"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "table_identifier": "draft_table_123", - "request_body": "{\"rows\":[{\"id\":\"row1\",\"data\":\"new data 1\"},{\"id\":\"row2\",\"data\":\"new data 2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/replace_draft_table_rows_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/replace_draft_table_rows_example_call_tool.py deleted file mode 100644 index a3eb8cf8b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/replace_draft_table_rows_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ReplaceDraftTableRows" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'table_identifier': 'draft_table_123', - 'request_body': '{"rows":[{"id":"row1","data":"new data 1"},{"id":"row2","data":"new data ' - '2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/rerun_previous_ab_test_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/rerun_previous_ab_test_example_call_tool.js deleted file mode 100644 index 17dbd2c80..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/rerun_previous_ab_test_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RerunPreviousAbTest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "test_id_to_rerun": "12345", - "variation_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/rerun_previous_ab_test_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/rerun_previous_ab_test_example_call_tool.py deleted file mode 100644 index e75758fba..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/rerun_previous_ab_test_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RerunPreviousAbTest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'test_id_to_rerun': '12345', 'variation_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_blog_post_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_blog_post_draft_example_call_tool.js deleted file mode 100644 index 538accfa9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_blog_post_draft_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ResetBlogPostDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_blog_post_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_blog_post_draft_example_call_tool.py deleted file mode 100644 index 86ed2a1a6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_blog_post_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ResetBlogPostDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_hubdb_draft_to_published_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_hubdb_draft_to_published_example_call_tool.js deleted file mode 100644 index 347e48663..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_hubdb_draft_to_published_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ResetHubdbDraftToPublished"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "table_identifier": "my_table_123", - "include_foreign_ids": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_hubdb_draft_to_published_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_hubdb_draft_to_published_example_call_tool.py deleted file mode 100644 index 7f3f8d76f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_hubdb_draft_to_published_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ResetHubdbDraftToPublished" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'table_identifier': 'my_table_123', 'include_foreign_ids': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_hubspot_page_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_hubspot_page_draft_example_call_tool.js deleted file mode 100644 index c4ee2b290..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_hubspot_page_draft_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ResetHubspotPageDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site_page_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_hubspot_page_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_hubspot_page_draft_example_call_tool.py deleted file mode 100644 index 8a65279f4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_hubspot_page_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ResetHubspotPageDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site_page_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_landing_page_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_landing_page_draft_example_call_tool.js deleted file mode 100644 index d207fe0a0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_landing_page_draft_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ResetLandingPageDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_landing_page_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_landing_page_draft_example_call_tool.py deleted file mode 100644 index fa0cfd331..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/reset_landing_page_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ResetLandingPageDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restart_ab_test_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/restart_ab_test_example_call_tool.js deleted file mode 100644 index 0b0b8b69f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restart_ab_test_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RestartAbTest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ab_test_id": "test_12345", - "test_variation_id": "variation_a" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restart_ab_test_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/restart_ab_test_example_call_tool.py deleted file mode 100644 index 7cf8d61fc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restart_ab_test_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RestartAbTest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ab_test_id': 'test_12345', 'test_variation_id': 'variation_a' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_blog_post_to_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_blog_post_to_draft_example_call_tool.js deleted file mode 100644 index 5abf654b2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_blog_post_to_draft_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RestoreBlogPostToDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_id": "12345", - "version_to_restore_id": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_blog_post_to_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_blog_post_to_draft_example_call_tool.py deleted file mode 100644 index 9f1b266f8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_blog_post_to_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RestoreBlogPostToDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_id': '12345', 'version_to_restore_id': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_blog_post_version_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_blog_post_version_example_call_tool.js deleted file mode 100644 index 902a23c53..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_blog_post_version_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RestoreBlogPostVersion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_id": "12345", - "version_to_restore_id": "v1.0.0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_blog_post_version_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_blog_post_version_example_call_tool.py deleted file mode 100644 index 16369e5b1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_blog_post_version_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RestoreBlogPostVersion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_id': '12345', 'version_to_restore_id': 'v1.0.0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_folder_version_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_folder_version_example_call_tool.js deleted file mode 100644 index 278e76605..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_folder_version_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RestoreFolderVersion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id": "12345", - "folder_version_id_to_restore": "v1.0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_folder_version_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_folder_version_example_call_tool.py deleted file mode 100644 index 068cf2b68..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_folder_version_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RestoreFolderVersion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id': '12345', 'folder_version_id_to_restore': 'v1.0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_landing_page_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_landing_page_draft_example_call_tool.js deleted file mode 100644 index d6984ad24..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_landing_page_draft_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RestoreLandingPageDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345", - "landing_page_version_id_to_restore": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_landing_page_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_landing_page_draft_example_call_tool.py deleted file mode 100644 index c964f6a23..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_landing_page_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RestoreLandingPageDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345', 'landing_page_version_id_to_restore': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_landing_page_version_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_landing_page_version_example_call_tool.js deleted file mode 100644 index a63f7f7fa..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_landing_page_version_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RestoreLandingPageVersion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345", - "landing_page_version_id": "v1.0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_landing_page_version_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_landing_page_version_example_call_tool.py deleted file mode 100644 index 1d73aaa64..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_landing_page_version_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RestoreLandingPageVersion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345', 'landing_page_version_id': 'v1.0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_page_version_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_page_version_example_call_tool.js deleted file mode 100644 index 02746e2fa..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_page_version_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RestorePageVersion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_version_to_restore": "v12345", - "site_page_id": "page_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_page_version_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_page_version_example_call_tool.py deleted file mode 100644 index 5e56f0fd0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_page_version_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RestorePageVersion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_version_to_restore': 'v12345', 'site_page_id': 'page_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_site_page_to_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_site_page_to_draft_example_call_tool.js deleted file mode 100644 index fce5a9b46..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_site_page_to_draft_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RestoreSitePageToDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site_page_id": "12345", - "site_page_version_id_to_restore": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_site_page_to_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_site_page_to_draft_example_call_tool.py deleted file mode 100644 index a20598744..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/restore_site_page_to_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RestoreSitePageToDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site_page_id': '12345', 'site_page_version_id_to_restore': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_audit_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_audit_logs_example_call_tool.js deleted file mode 100644 index 019c87c2a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_audit_logs_example_call_tool.js +++ /dev/null @@ -1,51 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrieveAuditLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_types": [ - "CREATED", - "UPDATED" - ], - "filter_by_object_ids": [ - "123", - "456" - ], - "filter_by_object_type": [ - "BLOG", - "LANDING_PAGE" - ], - "number_of_logs_to_return": 10, - "sort_direction": [ - "desc" - ], - "timestamp_after": "2023-01-01T00:00:00Z", - "user_ids_to_filter": [ - "user1", - "user2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_audit_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_audit_logs_example_call_tool.py deleted file mode 100644 index c9aaa5845..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_audit_logs_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrieveAuditLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_types': ['CREATED', 'UPDATED'], - 'filter_by_object_ids': ['123', '456'], - 'filter_by_object_type': ['BLOG', 'LANDING_PAGE'], - 'number_of_logs_to_return': 10, - 'sort_direction': ['desc'], - 'timestamp_after': '2023-01-01T00:00:00Z', - 'user_ids_to_filter': ['user1', 'user2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_authors_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_authors_example_call_tool.js deleted file mode 100644 index 0f8b50958..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_authors_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrieveBlogAuthors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "author_identifiers": [ - "author123", - "author456" - ], - "include_deleted_authors": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_authors_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_authors_example_call_tool.py deleted file mode 100644 index d440a1db8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_authors_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrieveBlogAuthors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'author_identifiers': ['author123', 'author456'], 'include_deleted_authors': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_post_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_post_by_id_example_call_tool.js deleted file mode 100644 index 810be788a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_post_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrieveBlogPostById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_id": "12345", - "include_archived_posts": false, - "return_specific_properties": "title,content" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_post_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_post_by_id_example_call_tool.py deleted file mode 100644 index 2b105c934..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_post_by_id_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrieveBlogPostById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_id': '12345', - 'include_archived_posts': False, - 'return_specific_properties': 'title,content' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_posts_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_posts_by_id_example_call_tool.js deleted file mode 100644 index d98d68f92..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_posts_by_id_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrieveBlogPostsById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_ids": [ - "123", - "456", - "789" - ], - "include_archived_posts": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_posts_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_posts_by_id_example_call_tool.py deleted file mode 100644 index ebe6caaf5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_posts_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrieveBlogPostsById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_ids': ['123', '456', '789'], 'include_archived_posts': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_posts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_posts_example_call_tool.js deleted file mode 100644 index 9cc9ec284..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_posts_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrieveBlogPosts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_after": "2023-01-01T00:00:00Z", - "max_results": 10, - "include_archived_posts": true, - "return_specific_properties": "title,author", - "sort_fields_for_results": [ - "createdAt", - "updatedAt" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_posts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_posts_example_call_tool.py deleted file mode 100644 index 358835e43..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_posts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrieveBlogPosts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_after': '2023-01-01T00:00:00Z', - 'max_results': 10, - 'include_archived_posts': True, - 'return_specific_properties': 'title,author', - 'sort_fields_for_results': ['createdAt', 'updatedAt'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_revision_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_revision_details_example_call_tool.js deleted file mode 100644 index db5c8b191..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_revision_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrieveBlogRevisionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_id": "12345", - "revision_id": "rev-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_revision_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_revision_details_example_call_tool.py deleted file mode 100644 index 47facea69..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_revision_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrieveBlogRevisionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_id': '12345', 'revision_id': 'rev-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_settings_example_call_tool.js deleted file mode 100644 index 0f8039d15..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_settings_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrieveBlogSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_before": "2023-01-01", - "include_archived": true, - "max_number_of_results": 10, - "sort_options": [ - "createdAt", - "-updatedAt" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_settings_example_call_tool.py deleted file mode 100644 index 3a0267eed..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_settings_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrieveBlogSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_before': '2023-01-01', - 'include_archived': True, - 'max_number_of_results': 10, - 'sort_options': ['createdAt', '-updatedAt'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_tag_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_tag_by_id_example_call_tool.js deleted file mode 100644 index c5243022e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_tag_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrieveBlogTagById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_tag_id": "12345", - "include_archived_blog_tags": false, - "property_name": "name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_tag_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_tag_by_id_example_call_tool.py deleted file mode 100644 index 9590bfe9e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_tag_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrieveBlogTagById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_tag_id': '12345', 'include_archived_blog_tags': False, 'property_name': 'name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_tags_example_call_tool.js deleted file mode 100644 index 4684db1a9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_tags_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrieveBlogTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_tag_ids": [ - "123", - "456", - "789" - ], - "include_deleted_tags": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_tags_example_call_tool.py deleted file mode 100644 index df22ffc42..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_blog_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrieveBlogTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_tag_ids': ['123', '456', '789'], 'include_deleted_tags': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_folder_previous_version_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_folder_previous_version_example_call_tool.js deleted file mode 100644 index 13eed766c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_folder_previous_version_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrieveFolderPreviousVersion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id": "12345", - "folder_version_id": "v1.0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_folder_previous_version_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_folder_previous_version_example_call_tool.py deleted file mode 100644 index 07a729191..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_folder_previous_version_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrieveFolderPreviousVersion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id': '12345', 'folder_version_id': 'v1.0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_indexed_data_by_content_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_indexed_data_by_content_id_example_call_tool.js deleted file mode 100644 index 952d4e856..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_indexed_data_by_content_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrieveIndexedDataByContentId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "document_id": "12345", - "document_type": "BLOG_POST" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_indexed_data_by_content_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_indexed_data_by_content_id_example_call_tool.py deleted file mode 100644 index 657094115..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_indexed_data_by_content_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrieveIndexedDataByContentId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'document_id': '12345', 'document_type': 'BLOG_POST' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_landing_pages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_landing_pages_example_call_tool.js deleted file mode 100644 index 7bd3eb7bc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_landing_pages_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrieveLandingPages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_ids": [ - "12345", - "67890" - ], - "return_archived_landing_pages": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_landing_pages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_landing_pages_example_call_tool.py deleted file mode 100644 index fab4d7c93..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_landing_pages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrieveLandingPages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_ids': ['12345', '67890'], 'return_archived_landing_pages': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_blog_version_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_blog_version_example_call_tool.js deleted file mode 100644 index 47584ec09..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_blog_version_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrievePreviousBlogVersion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_id": "12345", - "version_id": "v1.0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_blog_version_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_blog_version_example_call_tool.py deleted file mode 100644 index 6c676a7d5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_blog_version_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrievePreviousBlogVersion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_id': '12345', 'version_id': 'v1.0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_landing_page_version_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_landing_page_version_example_call_tool.js deleted file mode 100644 index 521c53fe8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_landing_page_version_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrievePreviousLandingPageVersion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345", - "landing_page_version_id": "v1.0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_landing_page_version_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_landing_page_version_example_call_tool.py deleted file mode 100644 index 9618de4e2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_landing_page_version_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrievePreviousLandingPageVersion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345', 'landing_page_version_id': 'v1.0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_site_page_version_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_site_page_version_example_call_tool.js deleted file mode 100644 index 2815cfb58..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_site_page_version_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrievePreviousSitePageVersion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site_page_id": "12345", - "site_page_revision_id": "rev67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_site_page_version_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_site_page_version_example_call_tool.py deleted file mode 100644 index 5b27dbc2e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_previous_site_page_version_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrievePreviousSitePageVersion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site_page_id': '12345', 'site_page_revision_id': 'rev67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_site_page_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_site_page_by_id_example_call_tool.js deleted file mode 100644 index e226518f0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_site_page_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrieveSitePageById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site_page_id": "12345", - "return_archived_site_pages": false, - "site_page_property": "" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_site_page_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_site_page_by_id_example_call_tool.py deleted file mode 100644 index 741399334..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_site_page_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrieveSitePageById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site_page_id': '12345', 'return_archived_site_pages': False, 'site_page_property': '' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_site_pages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_site_pages_example_call_tool.js deleted file mode 100644 index baecfd23f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_site_pages_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.RetrieveSitePages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_identifiers": [ - "page-123", - "page-456" - ], - "return_deleted_site_pages": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_site_pages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_site_pages_example_call_tool.py deleted file mode 100644 index 5996e584a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/retrieve_site_pages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.RetrieveSitePages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_identifiers': ['page-123', 'page-456'], 'return_deleted_site_pages': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_blog_post_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_blog_post_example_call_tool.js deleted file mode 100644 index b47687370..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_blog_post_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ScheduleBlogPost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_id": "12345", - "scheduled_publish_date": "2023-12-31T23:59:59" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_blog_post_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_blog_post_example_call_tool.py deleted file mode 100644 index fd4ad9a93..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_blog_post_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ScheduleBlogPost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_id': '12345', 'scheduled_publish_date': '2023-12-31T23:59:59' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_landing_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_landing_page_example_call_tool.js deleted file mode 100644 index 4c09ec506..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_landing_page_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ScheduleLandingPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345", - "publication_date": "2023-10-15" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_landing_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_landing_page_example_call_tool.py deleted file mode 100644 index 2ae27bb84..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_landing_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ScheduleLandingPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345', 'publication_date': '2023-10-15' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_site_page_publication_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_site_page_publication_example_call_tool.js deleted file mode 100644 index 1726ec198..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_site_page_publication_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.ScheduleSitePagePublication"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_id_to_schedule": "12345", - "publication_date": "2023-12-31T23:59:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_site_page_publication_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_site_page_publication_example_call_tool.py deleted file mode 100644 index e80a00e4b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/schedule_site_page_publication_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.ScheduleSitePagePublication" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_id_to_schedule': '12345', 'publication_date': '2023-12-31T23:59:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/search_website_content_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/search_website_content_example_call_tool.js deleted file mode 100644 index 4b70a6c58..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/search_website_content_example_call_tool.js +++ /dev/null @@ -1,61 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.SearchWebsiteContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_ids_to_search": [ - 123, - 456 - ], - "boost_recent_time_window": "10d", - "content_language_code": "en", - "content_type_filters": [ - "BLOG_POST", - "SITE_PAGE" - ], - "hubdb_table_id": 789, - "invert_path_prefix_filter": false, - "maximum_boost_limit": 5.0, - "pagination_offset": 0, - "path_prefixes": [ - "/blog", - "/articles" - ], - "popularity_boost": 2.0, - "result_length": "LONG", - "results_limit": 10, - "search_domains": [ - "example.com", - "test.com" - ], - "search_properties": [ - "title", - "description" - ], - "search_term": "marketing", - "show_autocomplete": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/search_website_content_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/search_website_content_example_call_tool.py deleted file mode 100644 index f69c35f4e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/search_website_content_example_call_tool.py +++ /dev/null @@ -1,44 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.SearchWebsiteContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_ids_to_search': [123, 456], - 'boost_recent_time_window': '10d', - 'content_language_code': 'en', - 'content_type_filters': ['BLOG_POST', 'SITE_PAGE'], - 'hubdb_table_id': 789, - 'invert_path_prefix_filter': False, - 'maximum_boost_limit': 5.0, - 'pagination_offset': 0, - 'path_prefixes': ['/blog', '/articles'], - 'popularity_boost': 2.0, - 'result_length': 'LONG', - 'results_limit': 10, - 'search_domains': ['example.com', 'test.com'], - 'search_properties': ['title', 'description'], - 'search_term': 'marketing', - 'show_autocomplete': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_blog_tag_primary_language_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/set_blog_tag_primary_language_example_call_tool.js deleted file mode 100644 index a087b30c8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_blog_tag_primary_language_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.SetBlogTagPrimaryLanguage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "primary_language_tag_id": "en" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_blog_tag_primary_language_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/set_blog_tag_primary_language_example_call_tool.py deleted file mode 100644 index f51c9e00c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_blog_tag_primary_language_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.SetBlogTagPrimaryLanguage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'primary_language_tag_id': 'en' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_new_blog_primary_language_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/set_new_blog_primary_language_example_call_tool.js deleted file mode 100644 index ff3f8b6ac..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_new_blog_primary_language_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.SetNewBlogPrimaryLanguage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "primary_language_object_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_new_blog_primary_language_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/set_new_blog_primary_language_example_call_tool.py deleted file mode 100644 index e71462178..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_new_blog_primary_language_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.SetNewBlogPrimaryLanguage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'primary_language_object_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_landing_page_language_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_landing_page_language_example_call_tool.js deleted file mode 100644 index 17f4dec96..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_landing_page_language_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.SetPrimaryLandingPageLanguage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_landing_page_language_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_landing_page_language_example_call_tool.py deleted file mode 100644 index bc8eef571..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_landing_page_language_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.SetPrimaryLandingPageLanguage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_blog_author_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_blog_author_example_call_tool.js deleted file mode 100644 index 54f0c5e7c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_blog_author_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.SetPrimaryLanguageBlogAuthor"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "primary_language_author_id": "author_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_blog_author_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_blog_author_example_call_tool.py deleted file mode 100644 index 2399049f9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_blog_author_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.SetPrimaryLanguageBlogAuthor" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'primary_language_author_id': 'author_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_blog_post_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_blog_post_example_call_tool.js deleted file mode 100644 index f7bf4b33b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_blog_post_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.SetPrimaryLanguageBlogPost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_post_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_blog_post_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_blog_post_example_call_tool.py deleted file mode 100644 index 9a567b847..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_blog_post_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.SetPrimaryLanguageBlogPost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_post_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_for_site_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_for_site_page_example_call_tool.js deleted file mode 100644 index ff1ea4c49..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_for_site_page_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.SetPrimaryLanguageForSitePage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_id_to_set_primary": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_for_site_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_for_site_page_example_call_tool.py deleted file mode 100644 index 50216f646..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/set_primary_language_for_site_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.SetPrimaryLanguageForSitePage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_id_to_set_primary': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/track_media_milestones_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/track_media_milestones_example_call_tool.js deleted file mode 100644 index e121b507e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/track_media_milestones_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.TrackMediaMilestones"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"userId\":\"12345\",\"mediaId\":\"abcde\",\"milestone\":\"quarterly\",\"timestamp\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/track_media_milestones_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/track_media_milestones_example_call_tool.py deleted file mode 100644 index ca92fefce..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/track_media_milestones_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.TrackMediaMilestones" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"userId":"12345","mediaId":"abcde","milestone":"quarterly","timestamp":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/unpublish_hubdb_table_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/unpublish_hubdb_table_example_call_tool.js deleted file mode 100644 index dfa69549d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/unpublish_hubdb_table_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UnpublishHubdbTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "table_identifier": "12345", - "include_foreign_ids": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/unpublish_hubdb_table_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/unpublish_hubdb_table_example_call_tool.py deleted file mode 100644 index 0d1db640b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/unpublish_hubdb_table_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UnpublishHubdbTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'table_identifier': '12345', 'include_foreign_ids': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_author_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_author_example_call_tool.js deleted file mode 100644 index 75bf89f37..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_author_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateBlogAuthor"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "blog_author_id": "12345", - "update_deleted_blog_authors": false, - "request_body": "{\"name\":\"John Doe\",\"bio\":\"Tech blogger\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_author_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_author_example_call_tool.py deleted file mode 100644 index 121d67024..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_author_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateBlogAuthor" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'blog_author_id': '12345', - 'update_deleted_blog_authors': False, - 'request_body': '{"name":"John Doe","bio":"Tech blogger"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_author_languages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_author_languages_example_call_tool.js deleted file mode 100644 index a5ebcbc78..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_author_languages_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateBlogAuthorLanguages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"authors\":[{\"id\":\"1\",\"languages\":[\"English\",\"Spanish\"]},{\"id\":\"2\",\"languages\":[\"French\"]}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_author_languages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_author_languages_example_call_tool.py deleted file mode 100644 index 916e835bb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_author_languages_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateBlogAuthorLanguages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"authors":[{"id":"1","languages":["English","Spanish"]},{"id":"2","languages":["French"]}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_authors_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_authors_batch_example_call_tool.js deleted file mode 100644 index 8e0a91527..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_authors_batch_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateBlogAuthorsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "update_deleted_blog_authors": true, - "request_body": "{\"authors\":[{\"id\":\"1\",\"name\":\"John Doe\"},{\"id\":\"2\",\"name\":\"Jane Smith\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_authors_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_authors_batch_example_call_tool.py deleted file mode 100644 index 540fca995..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_authors_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateBlogAuthorsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'update_deleted_blog_authors': True, - 'request_body': '{"authors":[{"id":"1","name":"John Doe"},{"id":"2","name":"Jane Smith"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_languages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_languages_example_call_tool.js deleted file mode 100644 index 7b15eea09..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_languages_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateBlogLanguages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"languages\":[\"en\",\"fr\",\"es\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_languages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_languages_example_call_tool.py deleted file mode 100644 index 07c25b630..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_languages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateBlogLanguages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"languages":["en","fr","es"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_draft_example_call_tool.js deleted file mode 100644 index 17ad94919..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_draft_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateBlogPostDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "blog_post_id": "12345", - "request_body": "{\"title\":\"Updated Blog Post Title\",\"content\":\"This is the updated content of the blog post.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_draft_example_call_tool.py deleted file mode 100644 index 152ee8587..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_draft_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateBlogPostDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'blog_post_id': '12345', - 'request_body': '{"title":"Updated Blog Post Title","content":"This is the updated content of ' - 'the blog post."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_example_call_tool.js deleted file mode 100644 index 1109d5f5a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateBlogPost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "blog_post_id": "12345", - "update_archived_posts": false, - "request_body": "{\"title\":\"Updated Blog Title\",\"content\":\"This is the updated content of the blog post.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_example_call_tool.py deleted file mode 100644 index 135e15163..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateBlogPost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'blog_post_id': '12345', - 'update_archived_posts': False, - 'request_body': '{"title":"Updated Blog Title","content":"This is the updated content of the ' - 'blog post."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_languages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_languages_example_call_tool.js deleted file mode 100644 index 228838db9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_languages_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateBlogPostLanguages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"postId\":\"12345\",\"languages\":[\"en\",\"fr\",\"es\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_languages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_languages_example_call_tool.py deleted file mode 100644 index 897dde1b1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_post_languages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateBlogPostLanguages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"postId":"12345","languages":["en","fr","es"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_posts_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_posts_batch_example_call_tool.js deleted file mode 100644 index 8ad7294fb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_posts_batch_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateBlogPostsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "update_archived_posts": true, - "request_body": "{\"posts\":[{\"id\":\"1\",\"title\":\"Updated Title 1\",\"content\":\"New content for post 1\"},{\"id\":\"2\",\"title\":\"Updated Title 2\",\"content\":\"New content for post 2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_posts_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_posts_batch_example_call_tool.py deleted file mode 100644 index 5dc9dba17..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_posts_batch_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateBlogPostsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'update_archived_posts': True, - 'request_body': '{"posts":[{"id":"1","title":"Updated Title 1","content":"New content for post ' - '1"},{"id":"2","title":"Updated Title 2","content":"New content for post 2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tag_example_call_tool.js deleted file mode 100644 index 6feb3a016..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tag_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateBlogTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blog_tag_id": "12345", - "blog_tag_unique_id": "tag-67890", - "created_timestamp": "2023-01-01T12:00:00Z", - "deleted_timestamp": "2023-10-01T12:00:00Z", - "language": "en", - "last_updated_timestamp": "2023-10-10T12:00:00Z", - "primary_tag_translated_from_id": 1, - "tag_name": "Updated Tag Name", - "update_deleted_blog_tags": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tag_example_call_tool.py deleted file mode 100644 index 638995a09..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tag_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateBlogTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blog_tag_id': '12345', - 'blog_tag_unique_id': 'tag-67890', - 'created_timestamp': '2023-01-01T12:00:00Z', - 'deleted_timestamp': '2023-10-01T12:00:00Z', - 'language': 'en', - 'last_updated_timestamp': '2023-10-10T12:00:00Z', - 'primary_tag_translated_from_id': 1, - 'tag_name': 'Updated Tag Name', - 'update_deleted_blog_tags': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tag_languages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tag_languages_example_call_tool.js deleted file mode 100644 index 34c435469..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tag_languages_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateBlogTagLanguages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"tags\":[{\"id\":\"1\",\"languages\":[\"en\",\"fr\"]},{\"id\":\"2\",\"languages\":[\"es\",\"de\"]}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tag_languages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tag_languages_example_call_tool.py deleted file mode 100644 index 674cd64ad..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tag_languages_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateBlogTagLanguages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"tags":[{"id":"1","languages":["en","fr"]},{"id":"2","languages":["es","de"]}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tags_example_call_tool.js deleted file mode 100644 index a26fd6865..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tags_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateBlogTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "update_deleted_blog_tags": true, - "request_body": "{\"tags\":[{\"id\":\"123\",\"name\":\"Tech\"},{\"id\":\"456\",\"name\":\"Health\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tags_example_call_tool.py deleted file mode 100644 index a2612a53d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_blog_tags_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateBlogTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'update_deleted_blog_tags': True, - 'request_body': '{"tags":[{"id":"123","name":"Tech"},{"id":"456","name":"Health"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_folder_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_folder_objects_example_call_tool.js deleted file mode 100644 index 595c19f67..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_folder_objects_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateFolderObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_identifiers": [ - "folder1", - "folder2", - "folder3" - ], - "include_archived_folders": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_folder_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_folder_objects_example_call_tool.py deleted file mode 100644 index b550a6808..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_folder_objects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateFolderObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_identifiers': ['folder1', 'folder2', 'folder3'], 'include_archived_folders': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_hubdb_draft_table_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_hubdb_draft_table_example_call_tool.js deleted file mode 100644 index 2ef9cd628..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_hubdb_draft_table_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateHubdbDraftTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "table_id_or_name": "my_table", - "return_archived_tables": false, - "request_body": "{\"columns\":[{\"name\":\"title\",\"type\":\"text\"},{\"name\":\"description\",\"type\":\"text\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_hubdb_draft_table_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_hubdb_draft_table_example_call_tool.py deleted file mode 100644 index 2dbe53f39..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_hubdb_draft_table_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateHubdbDraftTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'table_id_or_name': 'my_table', - 'return_archived_tables': False, - 'request_body': '{"columns":[{"name":"title","type":"text"},{"name":"description","type":"text"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_hubdb_row_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_hubdb_row_draft_example_call_tool.js deleted file mode 100644 index 06e7ea151..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_hubdb_row_draft_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateHubdbRowDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "table_identifier": "my_table", - "row_id": "123", - "request_body": "{\"field1\":\"value1\",\"field2\":\"value2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_hubdb_row_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_hubdb_row_draft_example_call_tool.py deleted file mode 100644 index 479a14f62..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_hubdb_row_draft_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateHubdbRowDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'table_identifier': 'my_table', - 'row_id': '123', - 'request_body': '{"field1":"value1","field2":"value2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_draft_example_call_tool.js deleted file mode 100644 index da11773e6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_draft_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateLandingPageDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "landing_page_id": "12345", - "request_body": "{\"title\":\"New Landing Page Title\",\"content\":\"[file_content]\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_draft_example_call_tool.py deleted file mode 100644 index c6e2a5e5e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_draft_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateLandingPageDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'landing_page_id': '12345', - 'request_body': '{"title":"New Landing Page Title","content":"[file_content]"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_example_call_tool.js deleted file mode 100644 index 81a642188..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateLandingPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "landing_page_id": "12345", - "update_archived_pages": false, - "request_body": "{\"title\":\"New Landing Page Title\",\"content\":\"Updated content here.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_example_call_tool.py deleted file mode 100644 index 4940fc0f6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateLandingPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'landing_page_id': '12345', - 'update_archived_pages': False, - 'request_body': '{"title":"New Landing Page Title","content":"Updated content here."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_folder_example_call_tool.js deleted file mode 100644 index 934156ff5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_folder_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateLandingPageFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "content_folder_unique_id": "12345", - "creation_timestamp": "2023-01-01T12:00:00Z", - "deletion_timestamp_iso8601": "2023-12-31T12:00:00Z", - "folder_category": 1, - "folder_id": "67890", - "folder_name": "New Landing Page Folder", - "parent_folder_id": 2, - "update_timestamp": "2023-10-01T12:00:00Z", - "update_deleted_folders": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_folder_example_call_tool.py deleted file mode 100644 index f0b6ac39d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_folder_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateLandingPageFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'content_folder_unique_id': '12345', - 'creation_timestamp': '2023-01-01T12:00:00Z', - 'deletion_timestamp_iso8601': '2023-12-31T12:00:00Z', - 'folder_category': 1, - 'folder_id': '67890', - 'folder_name': 'New Landing Page Folder', - 'parent_folder_id': 2, - 'update_timestamp': '2023-10-01T12:00:00Z', - 'update_deleted_folders': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_folders_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_folders_example_call_tool.js deleted file mode 100644 index 49d6089c9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_folders_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateLandingPageFolders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "only_include_archived_results": false, - "request_body": "{\"folders\":[{\"id\":\"123\",\"name\":\"New Folder\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_folders_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_folders_example_call_tool.py deleted file mode 100644 index 470b19c7d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_folders_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateLandingPageFolders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'only_include_archived_results': False, - 'request_body': '{"folders":[{"id":"123","name":"New Folder"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_languages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_languages_example_call_tool.js deleted file mode 100644 index 879b4b566..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_languages_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateLandingPageLanguages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"languages\":[\"en\",\"fr\",\"es\"],\"group_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_languages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_languages_example_call_tool.py deleted file mode 100644 index a915fe70c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_page_languages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateLandingPageLanguages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"languages":["en","fr","es"],"group_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_pages_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_pages_batch_example_call_tool.js deleted file mode 100644 index e906d8a0f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_pages_batch_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateLandingPagesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "update_deleted_landing_pages": true, - "request_body": "{\"landingPages\":[{\"id\":\"123\",\"title\":\"New Title\",\"content\":\"Updated content\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_pages_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_pages_batch_example_call_tool.py deleted file mode 100644 index e678b0fe3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_landing_pages_batch_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateLandingPagesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'update_deleted_landing_pages': True, - 'request_body': '{"landingPages":[{"id":"123","title":"New Title","content":"Updated ' - 'content"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_draft_example_call_tool.js deleted file mode 100644 index fff966c5b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_draft_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateSitePageDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "site_page_id": "12345", - "request_body": "{\"title\":\"Updated Page Title\",\"content\":\"[file_content]\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_draft_example_call_tool.py deleted file mode 100644 index faab35737..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_draft_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateSitePageDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'site_page_id': '12345', - 'request_body': '{"title":"Updated Page Title","content":"[file_content]"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_example_call_tool.js deleted file mode 100644 index a947a94eb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateSitePage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "site_page_id": "12345", - "update_deleted_site_pages": false, - "request_body": "{\"title\":\"Updated Title\",\"content\":\"New content for the page.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_example_call_tool.py deleted file mode 100644 index 7d6b1ce91..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateSitePage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'site_page_id': '12345', - 'update_deleted_site_pages': False, - 'request_body': '{"title":"Updated Title","content":"New content for the page."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_languages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_languages_example_call_tool.js deleted file mode 100644 index 6bb28ffe7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_languages_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateSitePageLanguages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"pageId\":\"123\",\"languages\":[\"en\",\"fr\",\"es\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_languages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_languages_example_call_tool.py deleted file mode 100644 index 7f883b34a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_page_languages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateSitePageLanguages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"pageId":"123","languages":["en","fr","es"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_pages_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_pages_batch_example_call_tool.js deleted file mode 100644 index e48d7ddb8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_pages_batch_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateSitePagesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "update_deleted_site_pages": true, - "request_body": "{\"pages\":[{\"id\":\"123\",\"title\":\"Updated Page Title\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_pages_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_pages_batch_example_call_tool.py deleted file mode 100644 index 1feeec24b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_site_pages_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateSitePagesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'update_deleted_site_pages': True, - 'request_body': '{"pages":[{"id":"123","title":"Updated Page Title"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_url_redirect_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_url_redirect_settings_example_call_tool.js deleted file mode 100644 index bd9d4adcb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_url_redirect_settings_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCmsApi.UpdateUrlRedirectSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "url_redirect_id": "12345", - "request_body": "{\"destination\":\"/new-url\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_url_redirect_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_cms_api/update_url_redirect_settings_example_call_tool.py deleted file mode 100644 index 050762ed3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_cms_api/update_url_redirect_settings_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCmsApi.UpdateUrlRedirectSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'url_redirect_id': '12345', - 'request_body': '{"destination":"/new-url","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/archive_conversation_thread_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/archive_conversation_thread_example_call_tool.js deleted file mode 100644 index 7f4562335..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/archive_conversation_thread_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.ArchiveConversationThread"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "thread_identifier": "thread_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/archive_conversation_thread_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/archive_conversation_thread_example_call_tool.py deleted file mode 100644 index 8582fada9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/archive_conversation_thread_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.ArchiveConversationThread" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'thread_identifier': 'thread_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/create_channel_account_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/create_channel_account_example_call_tool.js deleted file mode 100644 index 9091da492..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/create_channel_account_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.CreateChannelAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_name": "Support Account", - "channel_id": "channel_12345", - "inbox_id": "inbox_67890", - "is_authorized": true, - "delivery_identifier_type": "HS_EMAIL_ADDRESS", - "delivery_identifier_value": "support@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/create_channel_account_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/create_channel_account_example_call_tool.py deleted file mode 100644 index 643a91b10..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/create_channel_account_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.CreateChannelAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_name': 'Support Account', - 'channel_id': 'channel_12345', - 'inbox_id': 'inbox_67890', - 'is_authorized': True, - 'delivery_identifier_type': 'HS_EMAIL_ADDRESS', - 'delivery_identifier_value': 'support@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_channel_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_channel_account_details_example_call_tool.js deleted file mode 100644 index 7c4813d85..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_channel_account_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.GetChannelAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_account_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_channel_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_channel_account_details_example_call_tool.py deleted file mode 100644 index 7eee71324..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_channel_account_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.GetChannelAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_account_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_custom_channel_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_custom_channel_accounts_example_call_tool.js deleted file mode 100644 index 877747594..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_custom_channel_accounts_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.GetCustomChannelAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_channel_id": "channel_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_custom_channel_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_custom_channel_accounts_example_call_tool.py deleted file mode 100644 index 1b305c3c3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_custom_channel_accounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.GetCustomChannelAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_channel_id': 'channel_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_custom_channel_message_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_custom_channel_message_details_example_call_tool.js deleted file mode 100644 index d8702c980..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_custom_channel_message_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.GetCustomChannelMessageDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_id": "12345", - "message_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_custom_channel_message_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_custom_channel_message_details_example_call_tool.py deleted file mode 100644 index bb2704d59..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_custom_channel_message_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.GetCustomChannelMessageDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_id': '12345', 'message_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_inbox_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_inbox_details_example_call_tool.js deleted file mode 100644 index f41e4ec5f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_inbox_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.GetInboxDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "inbox_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_inbox_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_inbox_details_example_call_tool.py deleted file mode 100644 index ed1ad422b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_inbox_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.GetInboxDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'inbox_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_message_history_for_thread_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_message_history_for_thread_example_call_tool.js deleted file mode 100644 index 1acb56bd1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_message_history_for_thread_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.GetMessageHistoryForThread"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "thread_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_message_history_for_thread_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_message_history_for_thread_example_call_tool.py deleted file mode 100644 index 5a7140aad..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/get_message_history_for_thread_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.GetMessageHistoryForThread" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'thread_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/list_conversation_channels_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/list_conversation_channels_example_call_tool.js deleted file mode 100644 index df65eea24..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/list_conversation_channels_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.ListConversationChannels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/list_conversation_channels_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/list_conversation_channels_example_call_tool.py deleted file mode 100644 index 80f194da3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/list_conversation_channels_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.ListConversationChannels" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/list_conversation_inboxes_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/list_conversation_inboxes_example_call_tool.js deleted file mode 100644 index 74bc926d1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/list_conversation_inboxes_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.ListConversationInboxes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/list_conversation_inboxes_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/list_conversation_inboxes_example_call_tool.py deleted file mode 100644 index eadb0e782..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/list_conversation_inboxes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.ListConversationInboxes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/publish_custom_channel_message_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/publish_custom_channel_message_example_call_tool.js deleted file mode 100644 index e0db56fd3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/publish_custom_channel_message_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.PublishCustomChannelMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "custom_channel_id": "12345", - "request_body": "{\"message\":\"Hello, World!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/publish_custom_channel_message_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/publish_custom_channel_message_example_call_tool.py deleted file mode 100644 index f9aa261c9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/publish_custom_channel_message_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.PublishCustomChannelMessage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'custom_channel_id': '12345', 'request_body': '{"message":"Hello, World!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/resolve_conversation_actors_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/resolve_conversation_actors_example_call_tool.js deleted file mode 100644 index ef7cd808a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/resolve_conversation_actors_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.ResolveConversationActors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "actor_ids": [ - "actor_123", - "actor_456", - "actor_789" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/resolve_conversation_actors_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/resolve_conversation_actors_example_call_tool.py deleted file mode 100644 index 771ffd93e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/resolve_conversation_actors_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.ResolveConversationActors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'actor_ids': ['actor_123', 'actor_456', 'actor_789'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_actor_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_actor_details_example_call_tool.js deleted file mode 100644 index 9df1d9267..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_actor_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.RetrieveActorDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "actor_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_actor_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_actor_details_example_call_tool.py deleted file mode 100644 index e0b351686..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_actor_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.RetrieveActorDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'actor_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_account_details_example_call_tool.js deleted file mode 100644 index 6ce4f31d6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_account_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.RetrieveChannelAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_account_id": "12345", - "channel_identifier": "channel_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_account_details_example_call_tool.py deleted file mode 100644 index a38a4e00c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_account_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.RetrieveChannelAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_account_id': '12345', 'channel_identifier': 'channel_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_accounts_example_call_tool.js deleted file mode 100644 index f3f83b488..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_accounts_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.RetrieveChannelAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_accounts_example_call_tool.py deleted file mode 100644 index f2c05cb7d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_accounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.RetrieveChannelAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_details_example_call_tool.js deleted file mode 100644 index 8a48c0118..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.RetrieveChannelDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_details_example_call_tool.py deleted file mode 100644 index d6e39b15b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_channel_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.RetrieveChannelDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_conversation_threads_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_conversation_threads_example_call_tool.js deleted file mode 100644 index 32cbbadd2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_conversation_threads_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.RetrieveConversationThreads"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_conversation_threads_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_conversation_threads_example_call_tool.py deleted file mode 100644 index d7efddc6a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_conversation_threads_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.RetrieveConversationThreads" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_full_message_content_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_full_message_content_example_call_tool.js deleted file mode 100644 index 5c83e167d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_full_message_content_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.RetrieveFullMessageContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_thread_id": "12345", - "message_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_full_message_content_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_full_message_content_example_call_tool.py deleted file mode 100644 index 9911c82ea..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_full_message_content_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.RetrieveFullMessageContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_thread_id': '12345', 'message_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_thread_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_thread_by_id_example_call_tool.js deleted file mode 100644 index fb7d2bf70..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_thread_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.RetrieveThreadById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_thread_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_thread_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_thread_by_id_example_call_tool.py deleted file mode 100644 index 9dec4e652..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_thread_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.RetrieveThreadById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_thread_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_thread_message_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_thread_message_example_call_tool.js deleted file mode 100644 index 2a6b9dd09..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_thread_message_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.RetrieveThreadMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "message_id": "msg12345", - "thread_id": "thread67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_thread_message_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_thread_message_example_call_tool.py deleted file mode 100644 index 3b11af382..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/retrieve_thread_message_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.RetrieveThreadMessage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'message_id': 'msg12345', 'thread_id': 'thread67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/send_conversation_message_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/send_conversation_message_example_call_tool.js deleted file mode 100644 index 8b7b3dc12..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/send_conversation_message_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.SendConversationMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "thread_id": "12345", - "request_body": "{\"message\":\"Hello, this is a test message.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/send_conversation_message_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/send_conversation_message_example_call_tool.py deleted file mode 100644 index 8eb7731bc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/send_conversation_message_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.SendConversationMessage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'thread_id': '12345', - 'request_body': '{"message":"Hello, this is a test message."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_channel_account_info_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_channel_account_info_example_call_tool.js deleted file mode 100644 index cf2ce4bbc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_channel_account_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.UpdateChannelAccountInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_account_id": "12345", - "channel_id": "abcde", - "channel_account_name": "New Channel Name", - "set_authorization_status": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_channel_account_info_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_channel_account_info_example_call_tool.py deleted file mode 100644 index 3fc5bc097..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_channel_account_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.UpdateChannelAccountInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_account_id': '12345', - 'channel_id': 'abcde', - 'channel_account_name': 'New Channel Name', - 'set_authorization_status': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_channel_account_staging_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_channel_account_staging_example_call_tool.js deleted file mode 100644 index 2f25e9b1c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_channel_account_staging_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.UpdateChannelAccountStaging"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_name": "John Doe", - "account_token": "abc123token", - "channel_id": "channel_456", - "delivery_identifier_type": "HS_EMAIL_ADDRESS", - "delivery_identifier_value": "john.doe@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_channel_account_staging_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_channel_account_staging_example_call_tool.py deleted file mode 100644 index 9c92e099c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_channel_account_staging_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.UpdateChannelAccountStaging" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_name': 'John Doe', - 'account_token': 'abc123token', - 'channel_id': 'channel_456', - 'delivery_identifier_type': 'HS_EMAIL_ADDRESS', - 'delivery_identifier_value': 'john.doe@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_conversation_thread_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_conversation_thread_example_call_tool.js deleted file mode 100644 index f5c739707..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_conversation_thread_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.UpdateConversationThread"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "thread_identifier": "12345", - "is_thread_archived": false, - "thread_status": "OPEN" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_conversation_thread_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_conversation_thread_example_call_tool.py deleted file mode 100644 index 41e088f50..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_conversation_thread_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.UpdateConversationThread" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'thread_identifier': '12345', 'is_thread_archived': False, 'thread_status': 'OPEN' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_message_status_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_message_status_example_call_tool.js deleted file mode 100644 index 41b5c32cc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_message_status_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotConversationsApi.UpdateMessageStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_identifier": "channel_123", - "message_id": "msg_456", - "message_status": "FAILED", - "error_message_for_failed_status": "Network error" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_message_status_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_message_status_example_call_tool.py deleted file mode 100644 index c675ab921..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_conversations_api/update_message_status_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotConversationsApi.UpdateMessageStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_identifier': 'channel_123', - 'message_id': 'msg_456', - 'message_status': 'FAILED', - 'error_message_for_failed_status': 'Network error' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/add_all_from_source_list_to_destination_list_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/add_all_from_source_list_to_destination_list_example_call_tool.js deleted file mode 100644 index e23fce60b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/add_all_from_source_list_to_destination_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.AddAllFromSourceListToDestinationList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "destination_list_id": "12345", - "source_list_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/add_all_from_source_list_to_destination_list_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/add_all_from_source_list_to_destination_list_example_call_tool.py deleted file mode 100644 index 1cb4c2ba3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/add_all_from_source_list_to_destination_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.AddAllFromSourceListToDestinationList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'destination_list_id': '12345', 'source_list_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/add_to_hubspot_crm_list_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/add_to_hubspot_crm_list_example_call_tool.js deleted file mode 100644 index 61178d389..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/add_to_hubspot_crm_list_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.AddToHubspotCrmList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345", - "record_ids_to_add": [ - "abc123", - "def456", - "ghi789" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/add_to_hubspot_crm_list_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/add_to_hubspot_crm_list_example_call_tool.py deleted file mode 100644 index f46012c6f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/add_to_hubspot_crm_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.AddToHubspotCrmList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345', 'record_ids_to_add': ['abc123', 'def456', 'ghi789'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_call_in_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_call_in_hubspot_example_call_tool.js deleted file mode 100644 index f62c3805d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_call_in_hubspot_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveCallInHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "call_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_call_in_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_call_in_hubspot_example_call_tool.py deleted file mode 100644 index 6f6e855b3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_call_in_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveCallInHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'call_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_calls_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_calls_batch_example_call_tool.js deleted file mode 100644 index 9736944df..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_calls_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveCallsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"call_ids\":[\"12345\",\"67890\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_calls_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_calls_batch_example_call_tool.py deleted file mode 100644 index 9e5725bb7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_calls_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveCallsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"call_ids":["12345","67890"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_carts_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_carts_batch_example_call_tool.js deleted file mode 100644 index 560a54a91..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_carts_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveCartsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"cart_ids\":[\"cart123\",\"cart456\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_carts_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_carts_batch_example_call_tool.py deleted file mode 100644 index 326886e71..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_carts_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveCartsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"cart_ids":["cart123","cart456"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_commerce_payments_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_commerce_payments_batch_example_call_tool.js deleted file mode 100644 index 33f2ee454..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_commerce_payments_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveCommercePaymentsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"payment_ids\":[\"12345\",\"67890\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_commerce_payments_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_commerce_payments_batch_example_call_tool.py deleted file mode 100644 index 563734a5c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_commerce_payments_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveCommercePaymentsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"payment_ids":["12345","67890"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_communication_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_communication_example_call_tool.js deleted file mode 100644 index 03f50e43d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_communication_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveCommunication"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "communication_id": "comm_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_communication_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_communication_example_call_tool.py deleted file mode 100644 index 4d33ea8e5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_communication_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveCommunication" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'communication_id': 'comm_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_contacts_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_contacts_batch_example_call_tool.js deleted file mode 100644 index 5ff054fa2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_contacts_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveContactsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"contact_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_contacts_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_contacts_batch_example_call_tool.py deleted file mode 100644 index 9eb628ce3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_contacts_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveContactsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"contact_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_courses_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_courses_batch_example_call_tool.js deleted file mode 100644 index 6000795fd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_courses_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveCoursesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"course_ids\":[\"course_1\",\"course_2\",\"course_3\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_courses_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_courses_batch_example_call_tool.py deleted file mode 100644 index 94c589c00..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_courses_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveCoursesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"course_ids":["course_1","course_2","course_3"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_crm_properties_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_crm_properties_example_call_tool.js deleted file mode 100644 index fc318abff..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_crm_properties_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveCrmProperties"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "crm_object_type": "contacts", - "request_body": "{\"properties\":[\"email\",\"phone\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_crm_properties_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_crm_properties_example_call_tool.py deleted file mode 100644 index 93f11ed00..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_crm_properties_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveCrmProperties" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'crm_object_type': 'contacts', - 'request_body': '{"properties":["email","phone"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_deal_in_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_deal_in_hubspot_example_call_tool.js deleted file mode 100644 index d5788ce9a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_deal_in_hubspot_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveDealInHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deal_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_deal_in_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_deal_in_hubspot_example_call_tool.py deleted file mode 100644 index 7dfb97a84..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_deal_in_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveDealInHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deal_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_discounts_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_discounts_batch_example_call_tool.js deleted file mode 100644 index d1e29eeb0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_discounts_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveDiscountsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"discount_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_discounts_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_discounts_batch_example_call_tool.py deleted file mode 100644 index 9a6ec4d5b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_discounts_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveDiscountsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"discount_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_emails_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_emails_batch_example_call_tool.js deleted file mode 100644 index eedce1bad..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_emails_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveEmailsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"email_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_emails_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_emails_batch_example_call_tool.py deleted file mode 100644 index b7f675dcc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_emails_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveEmailsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"email_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_fees_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_fees_batch_example_call_tool.js deleted file mode 100644 index 6f8f463e6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_fees_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveFeesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"fee_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_fees_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_fees_batch_example_call_tool.py deleted file mode 100644 index 5651eed8c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_fees_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveFeesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"fee_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_goal_targets_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_goal_targets_batch_example_call_tool.js deleted file mode 100644 index 4e17efad9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_goal_targets_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveGoalTargetsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"goal_target_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_goal_targets_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_goal_targets_batch_example_call_tool.py deleted file mode 100644 index b8d4e8fff..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_goal_targets_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveGoalTargetsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"goal_target_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_lead_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_lead_example_call_tool.js deleted file mode 100644 index 1705ca0d4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_lead_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveHubspotLead"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "lead_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_lead_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_lead_example_call_tool.py deleted file mode 100644 index 45b46248c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_lead_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveHubspotLead" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'lead_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_objects_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_objects_batch_example_call_tool.js deleted file mode 100644 index b2f5d117a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_objects_batch_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveHubspotObjectsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "hubspot_object_type": "contacts", - "request_body": "{\"ids\":[\"123\",\"456\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_objects_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_objects_batch_example_call_tool.py deleted file mode 100644 index aacc199f3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_objects_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveHubspotObjectsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'hubspot_object_type': 'contacts', 'request_body': '{"ids":["123","456"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_tasks_example_call_tool.js deleted file mode 100644 index 2dadc1e73..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_tasks_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveHubspotTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"task_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_tasks_example_call_tool.py deleted file mode 100644 index 45e6fccc1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_hubspot_tasks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveHubspotTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"task_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_invoices_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_invoices_batch_example_call_tool.js deleted file mode 100644 index 46b65d9a9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_invoices_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveInvoicesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"invoice_ids\":[\"inv123\",\"inv456\",\"inv789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_invoices_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_invoices_batch_example_call_tool.py deleted file mode 100644 index a7789ac38..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_invoices_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveInvoicesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"invoice_ids":["inv123","inv456","inv789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_leads_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_leads_batch_example_call_tool.js deleted file mode 100644 index 776f0509c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_leads_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveLeadsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"lead_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_leads_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_leads_batch_example_call_tool.py deleted file mode 100644 index 06b66d315..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_leads_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveLeadsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"lead_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_line_items_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_line_items_batch_example_call_tool.js deleted file mode 100644 index 7cea6d482..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_line_items_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveLineItemsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"line_item_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_line_items_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_line_items_batch_example_call_tool.py deleted file mode 100644 index 5b30d14be..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_line_items_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveLineItemsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"line_item_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_meetings_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_meetings_batch_example_call_tool.js deleted file mode 100644 index a65a0137d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_meetings_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveMeetingsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"meeting_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_meetings_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_meetings_batch_example_call_tool.py deleted file mode 100644 index 6ee9339bb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_meetings_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveMeetingsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"meeting_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_appointments_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_appointments_example_call_tool.js deleted file mode 100644 index 8f45a0dab..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_appointments_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveMultipleAppointments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "appointment_object_type": "appointments", - "request_body": "{\"ids\":[\"123\",\"456\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_appointments_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_appointments_example_call_tool.py deleted file mode 100644 index e1d8ce6c8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_appointments_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveMultipleAppointments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'appointment_object_type': 'appointments', - 'request_body': '{"ids":["123","456"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_deals_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_deals_example_call_tool.js deleted file mode 100644 index add6502a6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_deals_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveMultipleDeals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"deal_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_deals_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_deals_example_call_tool.py deleted file mode 100644 index 4c6af5d2e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_deals_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveMultipleDeals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"deal_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_listings_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_listings_example_call_tool.js deleted file mode 100644 index 601fcb9a8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_listings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveMultipleListings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"listing_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_listings_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_listings_example_call_tool.py deleted file mode 100644 index c20fe75ec..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_multiple_listings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveMultipleListings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"listing_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_notes_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_notes_batch_example_call_tool.js deleted file mode 100644 index 6ebb14312..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_notes_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveNotesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"note_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_notes_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_notes_batch_example_call_tool.py deleted file mode 100644 index 01464ace5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_notes_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveNotesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"note_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_orders_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_orders_batch_example_call_tool.js deleted file mode 100644 index 0c752e2a6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_orders_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveOrdersBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"order_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_orders_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_orders_batch_example_call_tool.py deleted file mode 100644 index ca2eb0a6f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_orders_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveOrdersBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"order_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_postal_mail_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_postal_mail_batch_example_call_tool.js deleted file mode 100644 index eddffa36b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_postal_mail_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchivePostalMailBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_postal_mail_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_postal_mail_batch_example_call_tool.py deleted file mode 100644 index 229d37523..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_postal_mail_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchivePostalMailBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_postal_mail_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_postal_mail_example_call_tool.js deleted file mode 100644 index 1dcc01352..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_postal_mail_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchivePostalMail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "postal_mail_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_postal_mail_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_postal_mail_example_call_tool.py deleted file mode 100644 index 5bbc2de2a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_postal_mail_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchivePostalMail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'postal_mail_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_products_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_products_batch_example_call_tool.js deleted file mode 100644 index 15a5ac065..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_products_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveProductsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"product_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_products_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_products_batch_example_call_tool.py deleted file mode 100644 index 752165678..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_products_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveProductsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"product_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_quote_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_quote_example_call_tool.js deleted file mode 100644 index 8646d530c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_quote_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveQuote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "quote_identifier": "Q12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_quote_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_quote_example_call_tool.py deleted file mode 100644 index 454857020..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_quote_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveQuote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'quote_identifier': 'Q12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_quotes_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_quotes_batch_example_call_tool.js deleted file mode 100644 index ef7ae3a1d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_quotes_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveQuotesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"quoteIds\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_quotes_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_quotes_batch_example_call_tool.py deleted file mode 100644 index 53d6dff3b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_quotes_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveQuotesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"quoteIds":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_services_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_services_batch_example_call_tool.js deleted file mode 100644 index caf26b06b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_services_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveServicesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"service_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_services_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_services_batch_example_call_tool.py deleted file mode 100644 index 55f84ad7d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_services_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveServicesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"service_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_subscriptions_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_subscriptions_batch_example_call_tool.js deleted file mode 100644 index 56185c020..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_subscriptions_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveSubscriptionsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"subscription_ids\":[\"sub_123\",\"sub_456\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_subscriptions_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_subscriptions_batch_example_call_tool.py deleted file mode 100644 index 2ba1be83d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_subscriptions_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveSubscriptionsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"subscription_ids":["sub_123","sub_456"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_tax_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_tax_batch_example_call_tool.js deleted file mode 100644 index 56e6a972a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_tax_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveTaxBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"tax_ids\":[\"tax123\",\"tax456\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_tax_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_tax_batch_example_call_tool.py deleted file mode 100644 index 30ef3cf01..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_tax_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveTaxBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"tax_ids":["tax123","tax456"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_users_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_users_batch_example_call_tool.js deleted file mode 100644 index 96ede4638..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_users_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ArchiveUsersBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"user_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_users_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_users_batch_example_call_tool.py deleted file mode 100644 index 831246921..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/archive_users_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ArchiveUsersBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"user_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/associate_partner_client_with_object_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/associate_partner_client_with_object_example_call_tool.js deleted file mode 100644 index 0e45aa127..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/associate_partner_client_with_object_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.AssociatePartnerClientWithObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "association_type": "contact", - "partner_client_id": "partner123", - "target_object_id": "object456", - "target_object_type": "company" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/associate_partner_client_with_object_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/associate_partner_client_with_object_example_call_tool.py deleted file mode 100644 index 631fdf516..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/associate_partner_client_with_object_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.AssociatePartnerClientWithObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'association_type': 'contact', - 'partner_client_id': 'partner123', - 'target_object_id': 'object456', - 'target_object_type': 'company' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/associate_partner_service_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/associate_partner_service_example_call_tool.js deleted file mode 100644 index d3e37a22e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/associate_partner_service_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.AssociatePartnerService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "association_type": "owner", - "partner_service_id": "ps_12345", - "target_object_id": "obj_67890", - "target_object_type": "contacts" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/associate_partner_service_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/associate_partner_service_example_call_tool.py deleted file mode 100644 index 8a1055ae1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/associate_partner_service_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.AssociatePartnerService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'association_type': 'owner', - 'partner_service_id': 'ps_12345', - 'target_object_id': 'obj_67890', - 'target_object_type': 'contacts' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_create_timeline_events_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_create_timeline_events_example_call_tool.js deleted file mode 100644 index 940447b93..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_create_timeline_events_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.BatchCreateTimelineEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"events\":[{\"title\":\"Meeting\",\"start\":\"2023-10-01T10:00:00Z\",\"end\":\"2023-10-01T11:00:00Z\"},{\"title\":\"Workshop\",\"start\":\"2023-10-02T14:00:00Z\",\"end\":\"2023-10-02T16:00:00Z\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_create_timeline_events_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_create_timeline_events_example_call_tool.py deleted file mode 100644 index 7dd9476e3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_create_timeline_events_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.BatchCreateTimelineEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"events":[{"title":"Meeting","start":"2023-10-01T10:00:00Z","end":"2023-10-01T11:00:00Z"},{"title":"Workshop","start":"2023-10-02T14:00:00Z","end":"2023-10-02T16:00:00Z"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_associations_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_associations_example_call_tool.js deleted file mode 100644 index 579b500bb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_associations_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.BatchReadAssociations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "source_object_type": "contacts", - "destination_object_type": "companies", - "request_body": "{\"associations\":[{\"id\":1},{\"id\":2}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_associations_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_associations_example_call_tool.py deleted file mode 100644 index 6b1efd276..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_associations_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.BatchReadAssociations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'source_object_type': 'contacts', - 'destination_object_type': 'companies', - 'request_body': '{"associations":[{"id":1},{"id":2}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_contacts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_contacts_example_call_tool.js deleted file mode 100644 index c700cdcd8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_contacts_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.BatchReadContacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_archived_only": false, - "request_body": "{\"ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_contacts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_contacts_example_call_tool.py deleted file mode 100644 index 007dbb8f3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_contacts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.BatchReadContacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'return_archived_only': False, 'request_body': '{"ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_partner_clients_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_partner_clients_example_call_tool.js deleted file mode 100644 index ecd52c586..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_partner_clients_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.BatchReadPartnerClients"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "include_archived": true, - "request_body": "{\"client_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_partner_clients_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_partner_clients_example_call_tool.py deleted file mode 100644 index 9e508298d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_read_partner_clients_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.BatchReadPartnerClients" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'include_archived': True, 'request_body': '{"client_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_retrieve_hubspot_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_retrieve_hubspot_records_example_call_tool.js deleted file mode 100644 index db2c017fc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_retrieve_hubspot_records_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.BatchRetrieveHubspotRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "crm_object_type": "contact", - "return_archived_results": false, - "request_body": "{\"ids\":[\"123\",\"456\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_retrieve_hubspot_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_retrieve_hubspot_records_example_call_tool.py deleted file mode 100644 index 8186fd32d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_retrieve_hubspot_records_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.BatchRetrieveHubspotRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'crm_object_type': 'contact', - 'return_archived_results': False, - 'request_body': '{"ids":["123","456"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_update_notes_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_update_notes_example_call_tool.js deleted file mode 100644 index bcca18afc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_update_notes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.BatchUpdateNotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"notes\":[{\"id\":\"123\",\"content\":\"Updated note content\"},{\"id\":\"456\",\"content\":\"Another updated note\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_update_notes_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_update_notes_example_call_tool.py deleted file mode 100644 index bd040993d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_update_notes_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.BatchUpdateNotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"notes":[{"id":"123","content":"Updated note ' - 'content"},{"id":"456","content":"Another updated note"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_upsert_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_upsert_records_example_call_tool.js deleted file mode 100644 index 3ee50e49d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_upsert_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.BatchUpsertRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"records\":[{\"id\":\"123\",\"properties\":{\"name\":\"John Doe\",\"email\":\"john@example.com\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_upsert_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_upsert_records_example_call_tool.py deleted file mode 100644 index 2bef1f316..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/batch_upsert_records_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.BatchUpsertRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"records":[{"id":"123","properties":{"name":"John ' - 'Doe","email":"john@example.com"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_appointments_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_appointments_example_call_tool.js deleted file mode 100644 index 705517f49..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_appointments_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchAppointments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "appointment_object_type": "appointments", - "request_body": "{\"appointments\":[{\"date\":\"2023-10-01\",\"time\":\"10:00\",\"duration\":30},{\"date\":\"2023-10-02\",\"time\":\"11:00\",\"duration\":60}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_appointments_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_appointments_example_call_tool.py deleted file mode 100644 index c709f808b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_appointments_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchAppointments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'appointment_object_type': 'appointments', - 'request_body': '{"appointments":[{"date":"2023-10-01","time":"10:00","duration":30},{"date":"2023-10-02","time":"11:00","duration":60}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_associations_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_associations_hubspot_example_call_tool.js deleted file mode 100644 index 648992bf0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_associations_hubspot_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchAssociationsHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "from_object_type": "contact", - "target_object_type": "company", - "request_body": "{\"associations\":[{\"fromId\":1,\"toId\":2},{\"fromId\":3,\"toId\":4}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_associations_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_associations_hubspot_example_call_tool.py deleted file mode 100644 index 281d6548b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_associations_hubspot_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchAssociationsHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'from_object_type': 'contact', - 'target_object_type': 'company', - 'request_body': '{"associations":[{"fromId":1,"toId":2},{"fromId":3,"toId":4}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_commerce_payments_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_commerce_payments_example_call_tool.js deleted file mode 100644 index b288042a5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_commerce_payments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchCommercePayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"payments\":[{\"amount\":100,\"currency\":\"USD\",\"description\":\"Payment for services\"},{\"amount\":200,\"currency\":\"EUR\",\"description\":\"Payment for goods\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_commerce_payments_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_commerce_payments_example_call_tool.py deleted file mode 100644 index afd3ba901..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_commerce_payments_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchCommercePayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"payments":[{"amount":100,"currency":"USD","description":"Payment for ' - 'services"},{"amount":200,"currency":"EUR","description":"Payment for ' - 'goods"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_contacts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_contacts_example_call_tool.js deleted file mode 100644 index a12c074e1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_contacts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchContacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"contacts\":[{\"email\":\"john.doe@example.com\",\"firstName\":\"John\",\"lastName\":\"Doe\"},{\"email\":\"jane.smith@example.com\",\"firstName\":\"Jane\",\"lastName\":\"Smith\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_contacts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_contacts_example_call_tool.py deleted file mode 100644 index 553ddc5d3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_contacts_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchContacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"contacts":[{"email":"john.doe@example.com","firstName":"John","lastName":"Doe"},{"email":"jane.smith@example.com","firstName":"Jane","lastName":"Smith"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_discounts_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_discounts_hubspot_example_call_tool.js deleted file mode 100644 index 2507c098a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_discounts_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchDiscountsHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"discounts\":[{\"name\":\"Spring Sale\",\"amount\":10},{\"name\":\"Summer Discount\",\"amount\":15}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_discounts_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_discounts_hubspot_example_call_tool.py deleted file mode 100644 index b744451a0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_discounts_hubspot_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchDiscountsHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"discounts":[{"name":"Spring Sale","amount":10},{"name":"Summer ' - 'Discount","amount":15}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_fees_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_fees_example_call_tool.js deleted file mode 100644 index 4c8f8aa67..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_fees_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchFees"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"fees\":[{\"amount\":100,\"description\":\"Service Fee\"},{\"amount\":200,\"description\":\"Consultation Fee\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_fees_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_fees_example_call_tool.py deleted file mode 100644 index 3e3def5f5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_fees_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchFees" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"fees":[{"amount":100,"description":"Service ' - 'Fee"},{"amount":200,"description":"Consultation Fee"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_meetings_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_meetings_example_call_tool.js deleted file mode 100644 index 7e322b994..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_meetings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchMeetings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"meetings\":[{\"title\":\"Project Kickoff\",\"date\":\"2023-10-15T10:00:00Z\",\"duration\":60},{\"title\":\"Weekly Sync\",\"date\":\"2023-10-16T14:00:00Z\",\"duration\":30}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_meetings_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_meetings_example_call_tool.py deleted file mode 100644 index 137b2e3ae..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_meetings_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchMeetings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"meetings":[{"title":"Project ' - 'Kickoff","date":"2023-10-15T10:00:00Z","duration":60},{"title":"Weekly ' - 'Sync","date":"2023-10-16T14:00:00Z","duration":30}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_calls_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_calls_example_call_tool.js deleted file mode 100644 index 3c9c7f3ff..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_calls_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchOfCalls"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"calls\":[{\"subject\":\"Follow up\",\"body\":\"Discuss project updates\",\"associations\":{\"contactId\":\"12345\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_calls_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_calls_example_call_tool.py deleted file mode 100644 index bc540558f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_calls_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchOfCalls" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"calls":[{"subject":"Follow up","body":"Discuss project ' - 'updates","associations":{"contactId":"12345"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_carts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_carts_example_call_tool.js deleted file mode 100644 index c8c50e23a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_carts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchOfCarts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"carts\":[{\"id\":\"cart1\",\"items\":[{\"product_id\":\"prod1\",\"quantity\":2},{\"product_id\":\"prod2\",\"quantity\":1}]},{\"id\":\"cart2\",\"items\":[{\"product_id\":\"prod3\",\"quantity\":1}]}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_carts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_carts_example_call_tool.py deleted file mode 100644 index 17fad67ed..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_carts_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchOfCarts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"carts":[{"id":"cart1","items":[{"product_id":"prod1","quantity":2},{"product_id":"prod2","quantity":1}]},{"id":"cart2","items":[{"product_id":"prod3","quantity":1}]}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_companies_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_companies_example_call_tool.js deleted file mode 100644 index c126fc402..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_companies_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchOfCompanies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"companies\":[{\"name\":\"Company A\",\"industry\":\"Tech\"},{\"name\":\"Company B\",\"industry\":\"Finance\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_companies_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_companies_example_call_tool.py deleted file mode 100644 index c31e5ad8a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_companies_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchOfCompanies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"companies":[{"name":"Company A","industry":"Tech"},{"name":"Company ' - 'B","industry":"Finance"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_courses_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_courses_example_call_tool.js deleted file mode 100644 index bf4a679fa..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_courses_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchOfCourses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"courses\":[{\"title\":\"Course 1\",\"description\":\"Description of Course 1\"},{\"title\":\"Course 2\",\"description\":\"Description of Course 2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_courses_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_courses_example_call_tool.py deleted file mode 100644 index 75185aacf..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_courses_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchOfCourses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"courses":[{"title":"Course 1","description":"Description of Course ' - '1"},{"title":"Course 2","description":"Description of Course 2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_emails_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_emails_example_call_tool.js deleted file mode 100644 index 6c487037b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_emails_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchOfEmails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"emails\":[{\"to\":\"example@example.com\",\"subject\":\"Hello World\",\"body\":\"This is a test email.\"},{\"to\":\"test@test.com\",\"subject\":\"Greetings\",\"body\":\"This is another test email.\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_emails_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_emails_example_call_tool.py deleted file mode 100644 index d453dacc7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_emails_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchOfEmails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"emails":[{"to":"example@example.com","subject":"Hello World","body":"This ' - 'is a test email."},{"to":"test@test.com","subject":"Greetings","body":"This ' - 'is another test email."}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_invoices_example_call_tool.js deleted file mode 100644 index 85f7d2538..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_invoices_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchOfInvoices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"invoices\":[{\"amount\":100,\"currency\":\"USD\",\"customer_id\":\"12345\"},{\"amount\":200,\"currency\":\"USD\",\"customer_id\":\"67890\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_invoices_example_call_tool.py deleted file mode 100644 index a18d7d69f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_invoices_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchOfInvoices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"invoices":[{"amount":100,"currency":"USD","customer_id":"12345"},{"amount":200,"currency":"USD","customer_id":"67890"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_notes_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_notes_example_call_tool.js deleted file mode 100644 index 2fea140da..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_notes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchOfNotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"notes\":[{\"title\":\"Note 1\",\"content\":\"Content for note 1\"},{\"title\":\"Note 2\",\"content\":\"Content for note 2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_notes_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_notes_example_call_tool.py deleted file mode 100644 index 1b2ddd058..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_notes_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchOfNotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"notes":[{"title":"Note 1","content":"Content for note 1"},{"title":"Note ' - '2","content":"Content for note 2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_products_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_products_example_call_tool.js deleted file mode 100644 index 0cc3e7815..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_products_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchOfProducts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"products\":[{\"name\":\"Product 1\",\"price\":100},{\"name\":\"Product 2\",\"price\":150}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_products_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_products_example_call_tool.py deleted file mode 100644 index 95f761a9d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_products_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchOfProducts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"products":[{"name":"Product 1","price":100},{"name":"Product ' - '2","price":150}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_quotes_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_quotes_example_call_tool.js deleted file mode 100644 index ff8db1f13..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_quotes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchOfQuotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"quotes\":[{\"client\":\"Client A\",\"amount\":1000},{\"client\":\"Client B\",\"amount\":2000}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_quotes_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_quotes_example_call_tool.py deleted file mode 100644 index 9d40e0f34..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_quotes_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchOfQuotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"quotes":[{"client":"Client A","amount":1000},{"client":"Client ' - 'B","amount":2000}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_services_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_services_example_call_tool.js deleted file mode 100644 index ec06828f7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_services_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchOfServices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"services\":[{\"name\":\"Service A\",\"description\":\"Description of Service A\"},{\"name\":\"Service B\",\"description\":\"Description of Service B\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_services_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_services_example_call_tool.py deleted file mode 100644 index 75ffb8294..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_of_services_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchOfServices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"services":[{"name":"Service A","description":"Description of Service ' - 'A"},{"name":"Service B","description":"Description of Service B"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_orders_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_orders_example_call_tool.js deleted file mode 100644 index c068647be..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_orders_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchOrders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"orders\":[{\"product_id\":\"123\",\"quantity\":2},{\"product_id\":\"456\",\"quantity\":1}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_orders_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_orders_example_call_tool.py deleted file mode 100644 index 086f5b5fb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_orders_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchOrders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"orders":[{"product_id":"123","quantity":2},{"product_id":"456","quantity":1}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_properties_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_properties_example_call_tool.js deleted file mode 100644 index c6d3226c0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_properties_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchProperties"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "object_type": "contacts", - "request_body": "{\"properties\":[{\"name\":\"email\",\"label\":\"Email\",\"type\":\"string\"},{\"name\":\"firstname\",\"label\":\"First Name\",\"type\":\"string\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_properties_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_properties_example_call_tool.py deleted file mode 100644 index 41f1c2a81..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_properties_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchProperties" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'object_type': 'contacts', - 'request_body': '{"properties":[{"name":"email","label":"Email","type":"string"},{"name":"firstname","label":"First ' - 'Name","type":"string"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_subscriptions_example_call_tool.js deleted file mode 100644 index 1568592d2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_subscriptions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"subscriptions\":[{\"email\":\"test@example.com\",\"plan\":\"basic\"},{\"email\":\"user@example.com\",\"plan\":\"premium\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_subscriptions_example_call_tool.py deleted file mode 100644 index 5b29e6dae..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_subscriptions_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"subscriptions":[{"email":"test@example.com","plan":"basic"},{"email":"user@example.com","plan":"premium"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_tasks_example_call_tool.js deleted file mode 100644 index ce6235450..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_tasks_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"tasks\":[{\"title\":\"Follow up with client\",\"due_date\":\"2023-10-30\",\"priority\":\"high\"},{\"title\":\"Send proposal\",\"due_date\":\"2023-11-05\",\"priority\":\"medium\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_tasks_example_call_tool.py deleted file mode 100644 index 544dd5f54..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_tasks_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"tasks":[{"title":"Follow up with ' - 'client","due_date":"2023-10-30","priority":"high"},{"title":"Send ' - 'proposal","due_date":"2023-11-05","priority":"medium"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_tickets_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_tickets_example_call_tool.js deleted file mode 100644 index fd2709fa6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_tickets_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateBatchTickets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"tickets\":[{\"subject\":\"Issue with login\",\"status\":\"open\"},{\"subject\":\"Feature request\",\"status\":\"pending\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_tickets_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_tickets_example_call_tool.py deleted file mode 100644 index bdd7a133d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_batch_tickets_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateBatchTickets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"tickets":[{"subject":"Issue with ' - 'login","status":"open"},{"subject":"Feature request","status":"pending"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_cart_hubspot_crm_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_cart_hubspot_crm_example_call_tool.js deleted file mode 100644 index a760104af..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_cart_hubspot_crm_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateCartHubspotCrm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"customer_id\":\"12345\",\"items\":[{\"product_id\":\"abc\",\"quantity\":2}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_cart_hubspot_crm_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_cart_hubspot_crm_example_call_tool.py deleted file mode 100644 index b5b0bad7a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_cart_hubspot_crm_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateCartHubspotCrm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"customer_id":"12345","items":[{"product_id":"abc","quantity":2}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_commerce_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_commerce_payment_example_call_tool.js deleted file mode 100644 index 8e174b165..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_commerce_payment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateCommercePayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"amount\":100,\"currency\":\"USD\",\"payment_method\":\"credit_card\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_commerce_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_commerce_payment_example_call_tool.py deleted file mode 100644 index 24dbdae07..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_commerce_payment_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateCommercePayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"amount":100,"currency":"USD","payment_method":"credit_card"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_company_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_company_hubspot_example_call_tool.js deleted file mode 100644 index 89ca34e8a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_company_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateCompanyHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Sample Company\",\"domain\":\"samplecompany.com\",\"properties\":{\"industry\":\"Technology\",\"size\":\"50-100\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_company_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_company_hubspot_example_call_tool.py deleted file mode 100644 index cdfdeeb25..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_company_hubspot_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateCompanyHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Sample ' - 'Company","domain":"samplecompany.com","properties":{"industry":"Technology","size":"50-100"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_appointment_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_appointment_example_call_tool.js deleted file mode 100644 index 834b45486..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_appointment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateCrmAppointment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "appointment_object_type": "appointment", - "request_body": "{\"title\":\"Meeting with client\",\"date\":\"2023-10-15T10:00:00Z\",\"duration\":60}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_appointment_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_appointment_example_call_tool.py deleted file mode 100644 index 13937ad1e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_appointment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateCrmAppointment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'appointment_object_type': 'appointment', - 'request_body': '{"title":"Meeting with client","date":"2023-10-15T10:00:00Z","duration":60}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_association_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_association_example_call_tool.js deleted file mode 100644 index 777b6cd5e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_association_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateCrmObjectAssociation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "crm_object_type_schema": "crm.objects.contact", - "primary_object_type_id": "12345", - "target_object_type_id": "67890", - "association_name": "Contact to Company Link" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_association_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_association_example_call_tool.py deleted file mode 100644 index ca84514a6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_association_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateCrmObjectAssociation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'crm_object_type_schema': 'crm.objects.contact', - 'primary_object_type_id': '12345', - 'target_object_type_id': '67890', - 'association_name': 'Contact to Company Link' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_example_call_tool.js deleted file mode 100644 index 1d8fa6479..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateCrmObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "crm_object_type": "contact", - "request_body": "{\"properties\":{\"firstname\":\"John\",\"lastname\":\"Doe\",\"email\":\"john.doe@example.com\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_example_call_tool.py deleted file mode 100644 index afd62405f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateCrmObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'crm_object_type': 'contact', - 'request_body': '{"properties":{"firstname":"John","lastname":"Doe","email":"john.doe@example.com"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_schema_example_call_tool.js deleted file mode 100644 index 99a8ee27d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_schema_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateCrmObjectSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"CustomObject\",\"properties\":[{\"name\":\"property1\",\"type\":\"string\"},{\"name\":\"property2\",\"type\":\"number\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_schema_example_call_tool.py deleted file mode 100644 index a8fee8177..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_object_schema_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateCrmObjectSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"CustomObject","properties":[{"name":"property1","type":"string"},{"name":"property2","type":"number"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_pipeline_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_pipeline_example_call_tool.js deleted file mode 100644 index 06ae02f62..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_pipeline_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateCrmPipeline"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "pipeline_object_type": "deals", - "request_body": "{\"name\":\"New Sales Pipeline\",\"stages\":[{\"label\":\"Initial Contact\",\"probability\":0},{\"label\":\"Negotiation\",\"probability\":50},{\"label\":\"Closed Won\",\"probability\":100}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_pipeline_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_pipeline_example_call_tool.py deleted file mode 100644 index cde9b644e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_pipeline_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateCrmPipeline" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'pipeline_object_type': 'deals', - 'request_body': '{"name":"New Sales Pipeline","stages":[{"label":"Initial ' - 'Contact","probability":0},{"label":"Negotiation","probability":50},{"label":"Closed ' - 'Won","probability":100}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_user_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_user_example_call_tool.js deleted file mode 100644 index 06ee420f8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateCrmUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"role\":\"Sales\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_user_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_user_example_call_tool.py deleted file mode 100644 index 328c6cca6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_crm_user_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateCrmUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com","role":"Sales"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_discount_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_discount_example_call_tool.js deleted file mode 100644 index 2c2571dfd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_discount_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateDiscount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"discount_name\":\"Spring Sale\",\"discount_percentage\":20}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_discount_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_discount_example_call_tool.py deleted file mode 100644 index ed3046011..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_discount_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateDiscount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"discount_name":"Spring Sale","discount_percentage":20}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_fee_in_crm_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_fee_in_crm_example_call_tool.js deleted file mode 100644 index 86fb79ad2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_fee_in_crm_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateFeeInCrm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"feeAmount\":100,\"description\":\"Service fee\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_fee_in_crm_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_fee_in_crm_example_call_tool.py deleted file mode 100644 index d63669a8a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_fee_in_crm_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateFeeInCrm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"feeAmount":100,"description":"Service fee"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_folder_hubspot_crm_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_folder_hubspot_crm_example_call_tool.js deleted file mode 100644 index addab836b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_folder_hubspot_crm_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateFolderHubspotCrm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_name": "Project Documents", - "parent_folder_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_folder_hubspot_crm_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_folder_hubspot_crm_example_call_tool.py deleted file mode 100644 index 80e5a3039..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_folder_hubspot_crm_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateFolderHubspotCrm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_name': 'Project Documents', 'parent_folder_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_goal_target_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_goal_target_example_call_tool.js deleted file mode 100644 index 8901b1bea..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_goal_target_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateGoalTarget"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"goal_name\":\"Increase Sales\",\"target_value\":10000,\"time_frame\":\"Q1 2024\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_goal_target_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_goal_target_example_call_tool.py deleted file mode 100644 index ee503f63a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_goal_target_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateGoalTarget" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"goal_name":"Increase Sales","target_value":10000,"time_frame":"Q1 2024"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_goal_targets_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_goal_targets_batch_example_call_tool.js deleted file mode 100644 index fa003d128..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_goal_targets_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateGoalTargetsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"targets\":[{\"name\":\"Target 1\",\"value\":100},{\"name\":\"Target 2\",\"value\":200}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_goal_targets_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_goal_targets_batch_example_call_tool.py deleted file mode 100644 index b1055e238..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_goal_targets_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateGoalTargetsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"targets":[{"name":"Target 1","value":100},{"name":"Target 2","value":200}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_call_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_call_example_call_tool.js deleted file mode 100644 index a01de6d4a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_call_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotCall"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"subject\":\"Follow up call\",\"duration\":30,\"contactId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_call_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_call_example_call_tool.py deleted file mode 100644 index 81b6dddf4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_call_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotCall" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"subject":"Follow up call","duration":30,"contactId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_communication_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_communication_example_call_tool.js deleted file mode 100644 index 81b8d4878..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_communication_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotCommunication"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"subject\":\"Meeting Reminder\",\"body\":\"Don't forget about the meeting tomorrow at 10 AM.\",\"recipient\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_communication_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_communication_example_call_tool.py deleted file mode 100644 index 3ea43b9ac..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_communication_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotCommunication" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"subject":"Meeting Reminder","body":"Don\'t forget about the meeting ' - 'tomorrow at 10 AM.","recipient":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_contact_example_call_tool.js deleted file mode 100644 index 2b0a9abc5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_contact_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"properties\":{\"email\":\"john.doe@example.com\",\"firstname\":\"John\",\"lastname\":\"Doe\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_contact_example_call_tool.py deleted file mode 100644 index 522ae3cc4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_contact_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"properties":{"email":"john.doe@example.com","firstname":"John","lastname":"Doe"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_course_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_course_example_call_tool.js deleted file mode 100644 index 7dbc828b8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_course_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotCourse"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"course_name\":\"Introduction to AI\",\"description\":\"A beginner's course on AI concepts.\",\"duration\":\"4 weeks\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_course_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_course_example_call_tool.py deleted file mode 100644 index 54bf9523f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_course_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotCourse" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"course_name":"Introduction to AI","description":"A beginner\'s course on AI ' - 'concepts.","duration":"4 weeks"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_crm_property_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_crm_property_example_call_tool.js deleted file mode 100644 index 7457d84d1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_crm_property_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotCrmProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "object_type": "contact", - "request_body": "{\"name\":\"custom_property\",\"type\":\"string\",\"fieldType\":\"text\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_crm_property_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_crm_property_example_call_tool.py deleted file mode 100644 index 5fc59563d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_crm_property_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotCrmProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'object_type': 'contact', - 'request_body': '{"name":"custom_property","type":"string","fieldType":"text"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_deal_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_deal_example_call_tool.js deleted file mode 100644 index b603ca0c5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_deal_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotDeal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"dealName\":\"New Deal\",\"amount\":10000,\"stage\":\"Negotiation\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_deal_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_deal_example_call_tool.py deleted file mode 100644 index 7c9553381..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_deal_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotDeal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"dealName":"New Deal","amount":10000,"stage":"Negotiation"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_email_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_email_example_call_tool.js deleted file mode 100644 index b6c8812bf..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_email_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"subject\":\"Monthly Newsletter\",\"content\":\"Hello, this is our monthly newsletter!\",\"recipient_list\":[\"example@example.com\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_email_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_email_example_call_tool.py deleted file mode 100644 index 83e1a055c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_email_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"subject":"Monthly Newsletter","content":"Hello, this is our monthly ' - 'newsletter!","recipient_list":["example@example.com"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_invoice_example_call_tool.js deleted file mode 100644 index a951fbe3c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_invoice_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"customer_id\":\"12345\",\"amount\":250.00,\"currency\":\"USD\",\"line_items\":[{\"description\":\"Web Development Services\",\"quantity\":1,\"price\":250.00}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_invoice_example_call_tool.py deleted file mode 100644 index a1dd3ae17..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_invoice_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"customer_id":"12345","amount":250.00,"currency":"USD","line_items":[{"description":"Web ' - 'Development Services","quantity":1,"price":250.00}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_line_item_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_line_item_example_call_tool.js deleted file mode 100644 index 689c61f53..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_line_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotLineItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Sample Line Item\",\"price\":100,\"quantity\":1}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_line_item_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_line_item_example_call_tool.py deleted file mode 100644 index d485f8aa1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_line_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotLineItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"name":"Sample Line Item","price":100,"quantity":1}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_listing_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_listing_example_call_tool.js deleted file mode 100644 index 388178cfc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_listing_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotListing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Sample Listing\",\"description\":\"This is a sample listing for demonstration purposes.\",\"price\":100}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_listing_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_listing_example_call_tool.py deleted file mode 100644 index d5ef6156c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_listing_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotListing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Sample Listing","description":"This is a sample listing for ' - 'demonstration purposes.","price":100}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_meeting_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_meeting_example_call_tool.js deleted file mode 100644 index 5b535bba8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_meeting_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotMeeting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"subject\":\"Project Update\",\"start_time\":\"2023-10-10T10:00:00Z\",\"end_time\":\"2023-10-10T11:00:00Z\",\"participants\":[{\"email\":\"example@example.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_meeting_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_meeting_example_call_tool.py deleted file mode 100644 index 84f367ce3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_meeting_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotMeeting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"subject":"Project ' - 'Update","start_time":"2023-10-10T10:00:00Z","end_time":"2023-10-10T11:00:00Z","participants":[{"email":"example@example.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_messages_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_messages_batch_example_call_tool.js deleted file mode 100644 index a760387d8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_messages_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotMessagesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"messages\":[{\"to\":\"example@example.com\",\"subject\":\"Hello\",\"body\":\"This is a test message.\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_messages_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_messages_batch_example_call_tool.py deleted file mode 100644 index f7b04216e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_messages_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotMessagesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"messages":[{"to":"example@example.com","subject":"Hello","body":"This is a ' - 'test message."}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_objects_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_objects_batch_example_call_tool.js deleted file mode 100644 index 86823158a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_objects_batch_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotObjectsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "hubspot_object_type": "contacts", - "request_body": "{\"properties\":{\"email\":\"test@example.com\",\"firstname\":\"John\",\"lastname\":\"Doe\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_objects_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_objects_batch_example_call_tool.py deleted file mode 100644 index a48072dd2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_objects_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotObjectsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'hubspot_object_type': 'contacts', - 'request_body': '{"properties":{"email":"test@example.com","firstname":"John","lastname":"Doe"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_order_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_order_example_call_tool.js deleted file mode 100644 index 17b232805..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_order_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"customer_id\":\"12345\",\"product_id\":\"abcde\",\"quantity\":2,\"status\":\"pending\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_order_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_order_example_call_tool.py deleted file mode 100644 index 5d609d093..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_order_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"customer_id":"12345","product_id":"abcde","quantity":2,"status":"pending"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_quote_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_quote_example_call_tool.js deleted file mode 100644 index ece685950..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_quote_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotQuote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"quote_name\":\"Sample Quote\",\"amount\":1000,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_quote_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_quote_example_call_tool.py deleted file mode 100644 index 8c9caecd1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_quote_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotQuote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"quote_name":"Sample Quote","amount":1000,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_tax_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_tax_example_call_tool.js deleted file mode 100644 index 076bf3f29..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_tax_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateHubspotTax"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Sales Tax\",\"rate\":0.07}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_tax_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_tax_example_call_tool.py deleted file mode 100644 index 6fc693147..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_hubspot_tax_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateHubspotTax" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"name":"Sales Tax","rate":0.07}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_lead_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_lead_hubspot_example_call_tool.js deleted file mode 100644 index 5a9534516..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_lead_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateLeadHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"email\":\"test@example.com\",\"firstName\":\"John\",\"lastName\":\"Doe\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_lead_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_lead_hubspot_example_call_tool.py deleted file mode 100644 index 13445cbbf..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_lead_hubspot_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateLeadHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"email":"test@example.com","firstName":"John","lastName":"Doe"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_leads_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_leads_batch_example_call_tool.js deleted file mode 100644 index ad1817072..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_leads_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateLeadsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"leads\":[{\"name\":\"John Doe\",\"email\":\"john@example.com\"},{\"name\":\"Jane Smith\",\"email\":\"jane@example.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_leads_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_leads_batch_example_call_tool.py deleted file mode 100644 index 3506ff04c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_leads_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateLeadsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"leads":[{"name":"John Doe","email":"john@example.com"},{"name":"Jane ' - 'Smith","email":"jane@example.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_line_items_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_line_items_batch_example_call_tool.js deleted file mode 100644 index 955b92d7f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_line_items_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateLineItemsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"line_items\":[{\"name\":\"Item 1\",\"quantity\":2,\"price\":10.0},{\"name\":\"Item 2\",\"quantity\":1,\"price\":15.0}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_line_items_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_line_items_batch_example_call_tool.py deleted file mode 100644 index c4b6649f3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_line_items_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateLineItemsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"line_items":[{"name":"Item 1","quantity":2,"price":10.0},{"name":"Item ' - '2","quantity":1,"price":15.0}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_multiple_deals_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_multiple_deals_example_call_tool.js deleted file mode 100644 index 641d5b4f9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_multiple_deals_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateMultipleDeals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"deals\":[{\"name\":\"Deal 1\",\"amount\":1000},{\"name\":\"Deal 2\",\"amount\":2000}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_multiple_deals_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_multiple_deals_example_call_tool.py deleted file mode 100644 index e0a22f619..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_multiple_deals_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateMultipleDeals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"deals":[{"name":"Deal 1","amount":1000},{"name":"Deal 2","amount":2000}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_multiple_listings_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_multiple_listings_example_call_tool.js deleted file mode 100644 index 439504b0c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_multiple_listings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateMultipleListings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"listings\":[{\"title\":\"Listing 1\",\"description\":\"Description for listing 1\"},{\"title\":\"Listing 2\",\"description\":\"Description for listing 2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_multiple_listings_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_multiple_listings_example_call_tool.py deleted file mode 100644 index 58ad3032b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_multiple_listings_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateMultipleListings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"listings":[{"title":"Listing 1","description":"Description for listing ' - '1"},{"title":"Listing 2","description":"Description for listing 2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_note_in_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_note_in_hubspot_example_call_tool.js deleted file mode 100644 index eadc28ad9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_note_in_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateNoteInHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"note\":\"This is a sample note\",\"associations\":{\"contacts\":[12345]}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_note_in_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_note_in_hubspot_example_call_tool.py deleted file mode 100644 index 0021e00ca..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_note_in_hubspot_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateNoteInHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"note":"This is a sample note","associations":{"contacts":[12345]}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_object_association_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_object_association_example_call_tool.js deleted file mode 100644 index d5972484e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_object_association_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateObjectAssociation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "association_type": "contact_to_company", - "source_object_id": "12345", - "source_object_type": "contact", - "target_object_id": "67890", - "target_object_type": "company" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_object_association_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_object_association_example_call_tool.py deleted file mode 100644 index 607c171c6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_object_association_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateObjectAssociation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'association_type': 'contact_to_company', - 'source_object_id': '12345', - 'source_object_type': 'contact', - 'target_object_id': '67890', - 'target_object_type': 'company' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_batch_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_batch_records_example_call_tool.js deleted file mode 100644 index 9bec53f50..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_batch_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateOrUpdateBatchRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"records\":[{\"id\":\"1\",\"name\":\"John Doe\",\"email\":\"john@example.com\"},{\"id\":\"2\",\"name\":\"Jane Smith\",\"email\":\"jane@example.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_batch_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_batch_records_example_call_tool.py deleted file mode 100644 index 5fe68f158..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_batch_records_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateOrUpdateBatchRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"records":[{"id":"1","name":"John ' - 'Doe","email":"john@example.com"},{"id":"2","name":"Jane ' - 'Smith","email":"jane@example.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_companies_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_companies_example_call_tool.js deleted file mode 100644 index 2dc82bd79..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_companies_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateOrUpdateCompanies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"unique_id\":\"12345\",\"name\":\"Sample Company\",\"domain\":\"samplecompany.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_companies_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_companies_example_call_tool.py deleted file mode 100644 index 98f9fcc4c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_companies_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateOrUpdateCompanies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"unique_id":"12345","name":"Sample Company","domain":"samplecompany.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_hubspot_emails_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_hubspot_emails_example_call_tool.js deleted file mode 100644 index 43aab0fe1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_hubspot_emails_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateOrUpdateHubspotEmails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"emails\":[{\"id\":\"1\",\"subject\":\"Welcome Email\",\"content\":\"[email_content]\"},{\"id\":\"2\",\"subject\":\"Thank You Email\",\"content\":\"[email_content]\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_hubspot_emails_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_hubspot_emails_example_call_tool.py deleted file mode 100644 index f1d80d6da..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_hubspot_emails_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateOrUpdateHubspotEmails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"emails":[{"id":"1","subject":"Welcome ' - 'Email","content":"[email_content]"},{"id":"2","subject":"Thank You ' - 'Email","content":"[email_content]"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_hubspot_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_hubspot_records_example_call_tool.js deleted file mode 100644 index aa0dccf01..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_hubspot_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateOrUpdateHubspotRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"unique_id\":\"12345\",\"properties\":{\"name\":\"John Doe\",\"email\":\"john@example.com\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_hubspot_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_hubspot_records_example_call_tool.py deleted file mode 100644 index 186c6bc41..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_hubspot_records_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateOrUpdateHubspotRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"unique_id":"12345","properties":{"name":"John ' - 'Doe","email":"john@example.com"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_quotes_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_quotes_example_call_tool.js deleted file mode 100644 index 3b406982f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_quotes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateOrUpdateQuotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"idProperty\":\"quoteId\",\"amount\":1000,\"currency\":\"USD\",\"customer\":\"John Doe\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_quotes_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_quotes_example_call_tool.py deleted file mode 100644 index 18ac88b62..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_quotes_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateOrUpdateQuotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"idProperty":"quoteId","amount":1000,"currency":"USD","customer":"John Doe"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_tax_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_tax_records_example_call_tool.js deleted file mode 100644 index 17a2acda0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_tax_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateOrUpdateTaxRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"idProperty\":\"taxId\",\"amount\":1000,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_tax_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_tax_records_example_call_tool.py deleted file mode 100644 index 6bd33bdac..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_or_update_tax_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateOrUpdateTaxRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"idProperty":"taxId","amount":1000,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_pipeline_stage_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_pipeline_stage_example_call_tool.js deleted file mode 100644 index 89d552b4d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_pipeline_stage_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreatePipelineStage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "crm_object_type": "deals", - "pipeline_id": "12345", - "request_body": "{\"stage_name\":\"New Stage\",\"stage_order\":3}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_pipeline_stage_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_pipeline_stage_example_call_tool.py deleted file mode 100644 index 9b1acab0a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_pipeline_stage_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreatePipelineStage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'crm_object_type': 'deals', - 'pipeline_id': '12345', - 'request_body': '{"stage_name":"New Stage","stage_order":3}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_postal_mail_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_postal_mail_batch_example_call_tool.js deleted file mode 100644 index dead93dba..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_postal_mail_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreatePostalMailBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"mailItems\":[{\"recipient\":\"John Doe\",\"address\":\"123 Main St, Anytown, USA\",\"content\":\"Hello, this is a test mail.\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_postal_mail_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_postal_mail_batch_example_call_tool.py deleted file mode 100644 index 98d691dfd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_postal_mail_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreatePostalMailBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"mailItems":[{"recipient":"John Doe","address":"123 Main St, Anytown, ' - 'USA","content":"Hello, this is a test mail."}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_postal_mail_object_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_postal_mail_object_example_call_tool.js deleted file mode 100644 index bad16b7ee..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_postal_mail_object_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreatePostalMailObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"recipient\":\"John Doe\",\"address\":\"123 Main St, Anytown, USA\",\"content\":\"Hello, this is a test mail.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_postal_mail_object_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_postal_mail_object_example_call_tool.py deleted file mode 100644 index e13c9f132..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_postal_mail_object_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreatePostalMailObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"recipient":"John Doe","address":"123 Main St, Anytown, ' - 'USA","content":"Hello, this is a test mail."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_product_in_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_product_in_hubspot_example_call_tool.js deleted file mode 100644 index 0b7559477..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_product_in_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateProductInHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Sample Product\",\"price\":29.99,\"description\":\"A sample product for demonstration.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_product_in_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_product_in_hubspot_example_call_tool.py deleted file mode 100644 index dcd586fbd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_product_in_hubspot_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateProductInHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Sample Product","price":29.99,"description":"A sample product for ' - 'demonstration."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_property_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_property_group_example_call_tool.js deleted file mode 100644 index 7693ca186..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_property_group_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreatePropertyGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "internal_property_group_name": "group_001", - "object_type": "contacts", - "property_group_label": "Contact Information", - "property_group_display_order": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_property_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_property_group_example_call_tool.py deleted file mode 100644 index a4eb5f57d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_property_group_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreatePropertyGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'internal_property_group_name': 'group_001', - 'object_type': 'contacts', - 'property_group_label': 'Contact Information', - 'property_group_display_order': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_service_record_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_service_record_example_call_tool.js deleted file mode 100644 index 1c6c48cda..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_service_record_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateServiceRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"service_name\":\"Website Maintenance\",\"description\":\"Monthly maintenance for the website\",\"customer_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_service_record_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_service_record_example_call_tool.py deleted file mode 100644 index d820fb5ea..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_service_record_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateServiceRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"service_name":"Website Maintenance","description":"Monthly maintenance for ' - 'the website","customer_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_subscription_example_call_tool.js deleted file mode 100644 index b26eb538d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_subscription_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"subscriptionType\":\"monthly\",\"customerId\":\"12345\",\"startDate\":\"2023-10-01\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_subscription_example_call_tool.py deleted file mode 100644 index 955357a3d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_subscription_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"subscriptionType":"monthly","customerId":"12345","startDate":"2023-10-01"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_task_in_crm_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_task_in_crm_example_call_tool.js deleted file mode 100644 index d14834b8e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_task_in_crm_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateTaskInCrm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"task_name\":\"Follow up with client\",\"due_date\":\"2023-10-30\",\"priority\":\"high\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_task_in_crm_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_task_in_crm_example_call_tool.py deleted file mode 100644 index 85ca2a779..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_task_in_crm_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateTaskInCrm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"task_name":"Follow up with ' - 'client","due_date":"2023-10-30","priority":"high"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_tax_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_tax_batch_example_call_tool.js deleted file mode 100644 index 1c1c1a6ae..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_tax_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateTaxBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"taxes\":[{\"name\":\"Sales Tax\",\"rate\":0.07},{\"name\":\"Service Tax\",\"rate\":0.05}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_tax_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_tax_batch_example_call_tool.py deleted file mode 100644 index 2488e7ed8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_tax_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateTaxBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"taxes":[{"name":"Sales Tax","rate":0.07},{"name":"Service ' - 'Tax","rate":0.05}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_ticket_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_ticket_example_call_tool.js deleted file mode 100644 index 07321cef3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_ticket_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateTicket"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"subject\":\"Need help with billing\",\"description\":\"I have a question about my recent invoice.\",\"priority\":\"high\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_ticket_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_ticket_example_call_tool.py deleted file mode 100644 index 5c7aaafa7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_ticket_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateTicket" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"subject":"Need help with billing","description":"I have a question about my ' - 'recent invoice.","priority":"high"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_users_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_users_batch_example_call_tool.js deleted file mode 100644 index d2f87fb76..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_users_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.CreateUsersBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"users\":[{\"name\":\"John Doe\",\"email\":\"john@example.com\"},{\"name\":\"Jane Smith\",\"email\":\"jane@example.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_users_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/create_users_batch_example_call_tool.py deleted file mode 100644 index 23a031a1b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/create_users_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.CreateUsersBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"users":[{"name":"John Doe","email":"john@example.com"},{"name":"Jane ' - 'Smith","email":"jane@example.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_batch_messages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_batch_messages_example_call_tool.js deleted file mode 100644 index a9e16ed3b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_batch_messages_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteBatchMessages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"message_ids\":[\"msg1\",\"msg2\",\"msg3\"],\"restore\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_batch_messages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_batch_messages_example_call_tool.py deleted file mode 100644 index 441e7ae86..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_batch_messages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteBatchMessages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"message_ids":["msg1","msg2","msg3"],"restore":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_call_transcript_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_call_transcript_example_call_tool.js deleted file mode 100644 index 83a12377d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_call_transcript_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteCallTranscript"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transcript_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_call_transcript_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_call_transcript_example_call_tool.py deleted file mode 100644 index bc840efa5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_call_transcript_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteCallTranscript" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transcript_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_commerce_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_commerce_payment_example_call_tool.js deleted file mode 100644 index e7ea1cbaf..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_commerce_payment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteCommercePayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "commerce_payment_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_commerce_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_commerce_payment_example_call_tool.py deleted file mode 100644 index 904aa1263..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_commerce_payment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteCommercePayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'commerce_payment_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_companies_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_companies_batch_example_call_tool.js deleted file mode 100644 index a12047066..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_companies_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteCompaniesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_companies_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_companies_batch_example_call_tool.py deleted file mode 100644 index 1aeab252c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_companies_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteCompaniesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_company_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_company_example_call_tool.js deleted file mode 100644 index 1bf34dda3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_company_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteCompany"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "company_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_company_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_company_example_call_tool.py deleted file mode 100644 index 28ccddfba..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_company_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteCompany" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'company_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_contact_example_call_tool.js deleted file mode 100644 index e21b4b09b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_contact_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_contact_example_call_tool.py deleted file mode 100644 index 808f75214..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_contact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_course_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_course_example_call_tool.js deleted file mode 100644 index 150ebb457..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_course_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteCourse"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "course_id": "course_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_course_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_course_example_call_tool.py deleted file mode 100644 index 3851b6494..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_course_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteCourse" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'course_id': 'course_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_association_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_association_example_call_tool.js deleted file mode 100644 index ed306cf5a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_association_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteCrmAssociation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "association_id": "12345", - "schema_object_type": "contact" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_association_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_association_example_call_tool.py deleted file mode 100644 index 2ac5c2890..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_association_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteCrmAssociation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'association_id': '12345', 'schema_object_type': 'contact' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_folder_example_call_tool.js deleted file mode 100644 index d46859c59..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_folder_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteCrmFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id_to_delete": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_folder_example_call_tool.py deleted file mode 100644 index f68a6f107..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteCrmFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id_to_delete': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_object_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_object_example_call_tool.js deleted file mode 100644 index a4c1d0479..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_object_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteCrmObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "crm_object_id": "12345", - "crm_object_type": "contact" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_object_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_object_example_call_tool.py deleted file mode 100644 index 81a56f909..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_object_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteCrmObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'crm_object_id': '12345', 'crm_object_type': 'contact' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_object_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_object_schema_example_call_tool.js deleted file mode 100644 index e2e5de554..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_object_schema_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteCrmObjectSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type_identifier": "custom_object_123", - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_object_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_object_schema_example_call_tool.py deleted file mode 100644 index 8038aabf2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_crm_object_schema_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteCrmObjectSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type_identifier': 'custom_object_123', 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_discount_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_discount_example_call_tool.js deleted file mode 100644 index 7c2ff344e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_discount_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteDiscount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "discount_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_discount_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_discount_example_call_tool.py deleted file mode 100644 index c7d1b6b2c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_discount_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteDiscount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'discount_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_email_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_email_example_call_tool.js deleted file mode 100644 index 161ee7215..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_email_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_email_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_email_example_call_tool.py deleted file mode 100644 index 846599603..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_fee_object_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_fee_object_example_call_tool.js deleted file mode 100644 index 0d778c47d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_fee_object_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteFeeObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fee_id_to_delete": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_fee_object_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_fee_object_example_call_tool.py deleted file mode 100644 index 7f3d7fe22..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_fee_object_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteFeeObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fee_id_to_delete': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_goal_target_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_goal_target_example_call_tool.js deleted file mode 100644 index b6af19683..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_goal_target_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteGoalTarget"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_target_id": "gt-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_goal_target_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_goal_target_example_call_tool.py deleted file mode 100644 index cb0d34f50..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_goal_target_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteGoalTarget" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_target_id': 'gt-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_hubspot_tickets_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_hubspot_tickets_batch_example_call_tool.js deleted file mode 100644 index fc5ec8366..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_hubspot_tickets_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteHubspotTicketsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"ticket_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_hubspot_tickets_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_hubspot_tickets_batch_example_call_tool.py deleted file mode 100644 index 7983b303f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_hubspot_tickets_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteHubspotTicketsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"ticket_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_invoice_example_call_tool.js deleted file mode 100644 index 072668b8f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_invoice_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_identifier": "INV-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_invoice_example_call_tool.py deleted file mode 100644 index b31c556df..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_invoice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_identifier': 'INV-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_line_item_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_line_item_example_call_tool.js deleted file mode 100644 index 787142109..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_line_item_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteLineItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "line_item_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_line_item_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_line_item_example_call_tool.py deleted file mode 100644 index ff1e9385f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_line_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteLineItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'line_item_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_list_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_list_example_call_tool.js deleted file mode 100644 index 34f61a285..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_list_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id_to_delete": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_list_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_list_example_call_tool.py deleted file mode 100644 index 3247091f3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id_to_delete': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_meeting_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_meeting_example_call_tool.js deleted file mode 100644 index 5bacf7766..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_meeting_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteMeeting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "meeting_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_meeting_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_meeting_example_call_tool.py deleted file mode 100644 index 2b421ac1b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_meeting_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteMeeting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'meeting_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_note_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_note_hubspot_example_call_tool.js deleted file mode 100644 index a4be90909..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_note_hubspot_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteNoteHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "note_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_note_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_note_hubspot_example_call_tool.py deleted file mode 100644 index 1db75e4f8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_note_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteNoteHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'note_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_object_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_object_hubspot_example_call_tool.js deleted file mode 100644 index c20f671f3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_object_hubspot_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteObjectHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_service_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_object_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_object_hubspot_example_call_tool.py deleted file mode 100644 index a496624e0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_object_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteObjectHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_service_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_order_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_order_by_id_example_call_tool.js deleted file mode 100644 index dc808077d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_order_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteOrderById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "order_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_order_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_order_by_id_example_call_tool.py deleted file mode 100644 index 5e2c745b8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_order_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteOrderById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'order_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_pipeline_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_pipeline_example_call_tool.js deleted file mode 100644 index 938f4db24..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_pipeline_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeletePipeline"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pipeline_id": "12345", - "pipeline_object_type": "deals", - "validate_deal_stage_usages_before_deletion": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_pipeline_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_pipeline_example_call_tool.py deleted file mode 100644 index 6b66dda74..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_pipeline_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeletePipeline" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pipeline_id': '12345', - 'pipeline_object_type': 'deals', - 'validate_deal_stage_usages_before_deletion': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_pipeline_stage_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_pipeline_stage_example_call_tool.js deleted file mode 100644 index 947fbabdb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_pipeline_stage_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeletePipelineStage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type": "deals", - "pipeline_id": "12345", - "stage_identifier": "stage_1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_pipeline_stage_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_pipeline_stage_example_call_tool.py deleted file mode 100644 index 56e94cb3b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_pipeline_stage_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeletePipelineStage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type': 'deals', 'pipeline_id': '12345', 'stage_identifier': 'stage_1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_property_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_property_group_example_call_tool.js deleted file mode 100644 index 3483035af..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_property_group_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeletePropertyGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "crm_object_type": "contacts", - "property_group_name": "Customer Information" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_property_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_property_group_example_call_tool.py deleted file mode 100644 index d283e3f50..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_property_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeletePropertyGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'crm_object_type': 'contacts', 'property_group_name': 'Customer Information' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_property_hubspot_crm_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_property_hubspot_crm_example_call_tool.js deleted file mode 100644 index 0e874c6e2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_property_hubspot_crm_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeletePropertyHubspotCrm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type": "contacts", - "property_name": "email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_property_hubspot_crm_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_property_hubspot_crm_example_call_tool.py deleted file mode 100644 index a3ea8dda3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_property_hubspot_crm_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeletePropertyHubspotCrm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type': 'contacts', 'property_name': 'email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_scheduled_conversion_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_scheduled_conversion_example_call_tool.js deleted file mode 100644 index 2bff85d38..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_scheduled_conversion_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteScheduledConversion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_scheduled_conversion_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_scheduled_conversion_example_call_tool.py deleted file mode 100644 index 5080b15a0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_scheduled_conversion_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteScheduledConversion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_shopping_cart_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_shopping_cart_example_call_tool.js deleted file mode 100644 index 2c309f509..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_shopping_cart_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteShoppingCart"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cart_identifier": "cart_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_shopping_cart_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_shopping_cart_example_call_tool.py deleted file mode 100644 index fb35666e6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_shopping_cart_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteShoppingCart" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cart_identifier': 'cart_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_subscription_example_call_tool.js deleted file mode 100644 index c77e8acbc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_subscription_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_subscription_example_call_tool.py deleted file mode 100644 index ee1de6875..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_task_in_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_task_in_hubspot_example_call_tool.js deleted file mode 100644 index 47d3c376e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_task_in_hubspot_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteTaskInHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_task_in_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_task_in_hubspot_example_call_tool.py deleted file mode 100644 index 51b30cca4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_task_in_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteTaskInHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_tax_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_tax_entry_example_call_tool.js deleted file mode 100644 index 77e526d20..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_tax_entry_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteTaxEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tax_entry_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_tax_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_tax_entry_example_call_tool.py deleted file mode 100644 index 9f7b5379c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_tax_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteTaxEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tax_entry_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_ticket_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_ticket_example_call_tool.js deleted file mode 100644 index 27940c962..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_ticket_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteTicket"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_ticket_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_ticket_example_call_tool.py deleted file mode 100644 index 47bf5ac17..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_ticket_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteTicket" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_user_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_user_example_call_tool.js deleted file mode 100644 index 525921318..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_user_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.DeleteUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id_to_delete": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_user_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_user_example_call_tool.py deleted file mode 100644 index f3e1553fe..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/delete_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.DeleteUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id_to_delete': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/edit_hubspot_object_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/edit_hubspot_object_example_call_tool.js deleted file mode 100644 index 1804f52e3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/edit_hubspot_object_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.EditHubspotObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "object_identifier": "12345", - "request_body": "{\"property1\":\"value1\",\"property2\":\"value2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/edit_hubspot_object_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/edit_hubspot_object_example_call_tool.py deleted file mode 100644 index df867dbee..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/edit_hubspot_object_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.EditHubspotObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'object_identifier': '12345', - 'request_body': '{"property1":"value1","property2":"value2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/enable_object_type_in_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/enable_object_type_in_hubspot_example_call_tool.js deleted file mode 100644 index a2c7cec3a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/enable_object_type_in_hubspot_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.EnableObjectTypeInHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/enable_object_type_in_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/enable_object_type_in_hubspot_example_call_tool.py deleted file mode 100644 index ecf8a3f5f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/enable_object_type_in_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.EnableObjectTypeInHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_association_limit_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_association_limit_objects_example_call_tool.js deleted file mode 100644 index b6f2d9f7f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_association_limit_objects_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.FetchAssociationLimitObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "from_object_type_id": "contact" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_association_limit_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_association_limit_objects_example_call_tool.py deleted file mode 100644 index 051df1ca4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_association_limit_objects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.FetchAssociationLimitObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'from_object_type_id': 'contact' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_enablement_data_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_enablement_data_example_call_tool.js deleted file mode 100644 index b5027310c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_enablement_data_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.FetchEnablementData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_enablement_data_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_enablement_data_example_call_tool.py deleted file mode 100644 index 43db534fc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_enablement_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.FetchEnablementData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_list_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_list_by_id_example_call_tool.js deleted file mode 100644 index 01cc906c9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_list_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.FetchHubspotListById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345", - "include_filter_definitions": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_list_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_list_by_id_example_call_tool.py deleted file mode 100644 index b4cb1dbb3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_list_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.FetchHubspotListById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345', 'include_filter_definitions': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_list_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_list_memberships_example_call_tool.js deleted file mode 100644 index 37462e06b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_list_memberships_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.FetchHubspotListMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_identifier": "12345", - "number_of_records_to_return": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_list_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_list_memberships_example_call_tool.py deleted file mode 100644 index e61280aad..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_list_memberships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.FetchHubspotListMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_identifier': '12345', 'number_of_records_to_return': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_object_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_object_by_id_example_call_tool.js deleted file mode 100644 index a1d2b65d9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_object_by_id_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.FetchHubspotObjectById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_identifier": "12345", - "object_type": "contact", - "associated_object_types": [ - "company", - "deal" - ], - "return_properties": [ - "email", - "firstname", - "lastname" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_object_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_object_by_id_example_call_tool.py deleted file mode 100644 index a56907f53..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_object_by_id_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.FetchHubspotObjectById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_identifier': '12345', - 'object_type': 'contact', - 'associated_object_types': ['company', 'deal'], - 'return_properties': ['email', 'firstname', 'lastname'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_object_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_object_records_example_call_tool.js deleted file mode 100644 index 0263dbcc9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_object_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.FetchHubspotObjectRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_archived_only": false, - "request_body": "{\"id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_object_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_object_records_example_call_tool.py deleted file mode 100644 index 19a5f69a9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_object_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.FetchHubspotObjectRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'return_archived_only': False, 'request_body': '{"id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_records_example_call_tool.js deleted file mode 100644 index f1c580b5c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.FetchHubspotRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_archived_records_only": false, - "request_body": "{\"id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_records_example_call_tool.py deleted file mode 100644 index 4e1c9937f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_hubspot_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.FetchHubspotRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'return_archived_records_only': False, 'request_body': '{"id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_list_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_list_by_name_example_call_tool.js deleted file mode 100644 index b07bc349e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_list_by_name_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.FetchListByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_name": "My Contacts", - "object_type_id": "0-1", - "include_filters": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_list_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_list_by_name_example_call_tool.py deleted file mode 100644 index 3a88d1f79..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_list_by_name_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.FetchListByName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_name': 'My Contacts', 'object_type_id': '0-1', 'include_filters': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_list_memberships_ordered_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_list_memberships_ordered_example_call_tool.js deleted file mode 100644 index 8d066be06..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_list_memberships_ordered_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.FetchListMembershipsOrdered"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345", - "after_paging_offset_token": "abcde12345", - "record_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_list_memberships_ordered_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_list_memberships_ordered_example_call_tool.py deleted file mode 100644 index 403766dce..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_list_memberships_ordered_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.FetchListMembershipsOrdered" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345', 'after_paging_offset_token': 'abcde12345', 'record_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_property_validation_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_property_validation_example_call_tool.js deleted file mode 100644 index b7684a775..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_property_validation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.FetchPropertyValidation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type_id": "contacts", - "property_name": "email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_property_validation_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_property_validation_example_call_tool.py deleted file mode 100644 index 021056179..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_property_validation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.FetchPropertyValidation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type_id': 'contacts', 'property_name': 'email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_tickets_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_tickets_page_example_call_tool.js deleted file mode 100644 index 38f5a2889..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_tickets_page_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.FetchTicketsPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "contacts", - "companies" - ], - "include_properties": [ - "subject", - "status" - ], - "paging_cursor_token": "abc123", - "results_per_page": 10, - "return_only_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_tickets_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_tickets_page_example_call_tool.py deleted file mode 100644 index c63dc116a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/fetch_tickets_page_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.FetchTicketsPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['contacts', 'companies'], - 'include_properties': ['subject', 'status'], - 'paging_cursor_token': 'abc123', - 'results_per_page': 10, - 'return_only_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/gdpr_delete_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/gdpr_delete_contact_example_call_tool.js deleted file mode 100644 index 6cd0cc401..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/gdpr_delete_contact_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GdprDeleteContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_identifier": "john.doe@example.com", - "contact_identifier_property": "email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/gdpr_delete_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/gdpr_delete_contact_example_call_tool.py deleted file mode 100644 index 154d20731..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/gdpr_delete_contact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GdprDeleteContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_identifier': 'john.doe@example.com', 'contact_identifier_property': 'email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/gdpr_delete_object_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/gdpr_delete_object_example_call_tool.js deleted file mode 100644 index ab4d547e1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/gdpr_delete_object_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GdprDeleteObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_id": "12345", - "object_type_for_gdpr_deletion": "contacts", - "unique_property_name": "email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/gdpr_delete_object_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/gdpr_delete_object_example_call_tool.py deleted file mode 100644 index 4ad48b3f8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/gdpr_delete_object_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GdprDeleteObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_id': '12345', 'object_type_for_gdpr_deletion': 'contacts', 'unique_property_name': 'email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_all_pipelines_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_all_pipelines_example_call_tool.js deleted file mode 100644 index 1534a3951..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_all_pipelines_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetAllPipelines"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type": "deals" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_all_pipelines_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_all_pipelines_example_call_tool.py deleted file mode 100644 index b83ee0a8b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_all_pipelines_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetAllPipelines" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type': 'deals' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_appointments_data_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_appointments_data_example_call_tool.js deleted file mode 100644 index 96e56215e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_appointments_data_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetAppointmentsData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "appointment_object_type": "appointment", - "appointment_properties_to_return": [ - "subject", - "date", - "duration" - ], - "only_archived_results": false, - "results_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_appointments_data_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_appointments_data_example_call_tool.py deleted file mode 100644 index 2c6667fb8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_appointments_data_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetAppointmentsData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'appointment_object_type': 'appointment', - 'appointment_properties_to_return': ['subject', 'date', 'duration'], - 'only_archived_results': False, - 'results_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_association_limit_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_association_limit_records_example_call_tool.js deleted file mode 100644 index d165aa9b8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_association_limit_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetAssociationLimitRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "source_object_type_id": "123", - "to_object_type_id": "456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_association_limit_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_association_limit_records_example_call_tool.py deleted file mode 100644 index 6db369fad..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_association_limit_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetAssociationLimitRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'source_object_type_id': '123', 'to_object_type_id': '456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_association_types_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_association_types_example_call_tool.js deleted file mode 100644 index 9c41a91f4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_association_types_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetAssociationTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "source_object_type": "contact", - "target_object_type": "deal" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_association_types_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_association_types_example_call_tool.py deleted file mode 100644 index 331ca2ba3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_association_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetAssociationTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'source_object_type': 'contact', 'target_object_type': 'deal' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_associations_in_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_associations_in_hubspot_example_call_tool.js deleted file mode 100644 index 149ee0161..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_associations_in_hubspot_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetAssociationsInHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hubspot_object_id": "12345", - "object_type": "contact", - "target_object_type": "deal", - "include_full_associations": true, - "max_results": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_associations_in_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_associations_in_hubspot_example_call_tool.py deleted file mode 100644 index ea8b33dd9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_associations_in_hubspot_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetAssociationsInHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hubspot_object_id': '12345', - 'object_type': 'contact', - 'target_object_type': 'deal', - 'include_full_associations': True, - 'max_results': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_calculated_properties_limits_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_calculated_properties_limits_example_call_tool.js deleted file mode 100644 index 38b80a38d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_calculated_properties_limits_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetCalculatedPropertiesLimits"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_calculated_properties_limits_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_calculated_properties_limits_example_call_tool.py deleted file mode 100644 index e0d3666df..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_calculated_properties_limits_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetCalculatedPropertiesLimits" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_call_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_call_details_example_call_tool.js deleted file mode 100644 index 4293990e3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_call_details_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetCallDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "call_identifier": "12345", - "associated_object_types": [ - "contact", - "company" - ], - "only_archived_results": false, - "return_properties": [ - "duration", - "outcome" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_call_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_call_details_example_call_tool.py deleted file mode 100644 index 6e5a990f0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_call_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetCallDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'call_identifier': '12345', - 'associated_object_types': ['contact', 'company'], - 'only_archived_results': False, - 'return_properties': ['duration', 'outcome'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_calls_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_calls_page_example_call_tool.js deleted file mode 100644 index 50eb2da4f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_calls_page_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetCallsPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "contact", - "company" - ], - "call_properties": [ - "call_date", - "duration" - ], - "paging_cursor_token": "abc123", - "results_per_page": 10, - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_calls_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_calls_page_example_call_tool.py deleted file mode 100644 index 37e052d7b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_calls_page_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetCallsPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['contact', 'company'], - 'call_properties': ['call_date', 'duration'], - 'paging_cursor_token': 'abc123', - 'results_per_page': 10, - 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_cart_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_cart_details_example_call_tool.js deleted file mode 100644 index 0311129d3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_cart_details_example_call_tool.js +++ /dev/null @@ -1,45 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetCartDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cart_identifier": "cart_12345", - "associated_object_types": [ - "deals", - "contacts" - ], - "only_return_archived_results": false, - "properties_with_history": [ - "status", - "total" - ], - "return_properties": [ - "items", - "total_price" - ], - "unique_property_name": "custom_id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_cart_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_cart_details_example_call_tool.py deleted file mode 100644 index d7c52ab83..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_cart_details_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetCartDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cart_identifier': 'cart_12345', - 'associated_object_types': ['deals', 'contacts'], - 'only_return_archived_results': False, - 'properties_with_history': ['status', 'total'], - 'return_properties': ['items', 'total_price'], - 'unique_property_name': 'custom_id' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_commerce_payments_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_commerce_payments_example_call_tool.js deleted file mode 100644 index 318027c7e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_commerce_payments_example_call_tool.js +++ /dev/null @@ -1,46 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetCommercePayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associations_to_retrieve": [ - "contact", - "company" - ], - "paging_cursor_token": "abc123", - "properties_with_history": [ - "amount", - "status" - ], - "results_per_page": 10, - "returned_properties": [ - "id", - "amount", - "currency" - ], - "show_only_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_commerce_payments_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_commerce_payments_example_call_tool.py deleted file mode 100644 index f09f4de95..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_commerce_payments_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetCommercePayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associations_to_retrieve': ['contact', 'company'], - 'paging_cursor_token': 'abc123', - 'properties_with_history': ['amount', 'status'], - 'results_per_page': 10, - 'returned_properties': ['id', 'amount', 'currency'], - 'show_only_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_communication_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_communication_by_id_example_call_tool.js deleted file mode 100644 index 59cbcf472..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_communication_by_id_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetCommunicationById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "communication_identifier": "comm_12345", - "properties_to_return": [ - "subject", - "body" - ], - "return_only_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_communication_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_communication_by_id_example_call_tool.py deleted file mode 100644 index 845a98aae..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_communication_by_id_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetCommunicationById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'communication_identifier': 'comm_12345', - 'properties_to_return': ['subject', 'body'], - 'return_only_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_contact_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_contact_details_example_call_tool.js deleted file mode 100644 index aa426861e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_contact_details_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetContactDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_identifier": "12345", - "associated_object_types": [ - "company", - "deal" - ], - "return_properties": [ - "email", - "phone" - ], - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_contact_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_contact_details_example_call_tool.py deleted file mode 100644 index c43d098f3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_contact_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetContactDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_identifier': '12345', - 'associated_object_types': ['company', 'deal'], - 'return_properties': ['email', 'phone'], - 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_contacts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_contacts_example_call_tool.js deleted file mode 100644 index 3c6c7e017..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_contacts_example_call_tool.js +++ /dev/null @@ -1,45 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetContacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_properties_to_retrieve": [ - "firstname", - "lastname", - "email" - ], - "max_results_per_page": 10, - "paging_cursor_token": "abc123", - "properties_with_history": [ - "email" - ], - "retrieve_associated_ids": [ - "company", - "deal" - ], - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_contacts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_contacts_example_call_tool.py deleted file mode 100644 index a16d53bab..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_contacts_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetContacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_properties_to_retrieve': ['firstname', 'lastname', 'email'], - 'max_results_per_page': 10, - 'paging_cursor_token': 'abc123', - 'properties_with_history': ['email'], - 'retrieve_associated_ids': ['company', 'deal'], - 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_course_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_course_details_example_call_tool.js deleted file mode 100644 index 112a9b294..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_course_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetCourseDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "course_id": "CS101", - "include_properties": [ - "title", - "description" - ], - "return_only_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_course_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_course_details_example_call_tool.py deleted file mode 100644 index 89a7c5fec..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_course_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetCourseDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'course_id': 'CS101', - 'include_properties': ['title', 'description'], - 'return_only_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_courses_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_courses_example_call_tool.js deleted file mode 100644 index 1a5cda77a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_courses_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetCourses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maximum_results_per_page": 10, - "properties_to_return": [ - "name", - "description" - ], - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_courses_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_courses_example_call_tool.py deleted file mode 100644 index f90f6b73e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_courses_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetCourses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maximum_results_per_page': 10, - 'properties_to_return': ['name', 'description'], - 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_crm_fees_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_crm_fees_example_call_tool.js deleted file mode 100644 index b838828f3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_crm_fees_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetCrmFees"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "customer", - "invoice" - ], - "fee_properties_to_return": [ - "amount", - "type" - ], - "maximum_results_per_page": 10, - "return_archived_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_crm_fees_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_crm_fees_example_call_tool.py deleted file mode 100644 index ed8b27e9f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_crm_fees_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetCrmFees" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['customer', 'invoice'], - 'fee_properties_to_return': ['amount', 'type'], - 'maximum_results_per_page': 10, - 'return_archived_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_crm_object_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_crm_object_schema_example_call_tool.js deleted file mode 100644 index aa8570152..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_crm_object_schema_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetCrmObjectSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type": "contact" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_crm_object_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_crm_object_schema_example_call_tool.py deleted file mode 100644 index 397caba50..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_crm_object_schema_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetCrmObjectSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type': 'contact' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_association_labels_limits_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_association_labels_limits_example_call_tool.js deleted file mode 100644 index 40f253c15..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_association_labels_limits_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetCustomAssociationLabelsLimits"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "source_object_type_id": "123", - "target_object_type_id": "456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_association_labels_limits_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_association_labels_limits_example_call_tool.py deleted file mode 100644 index 11efa2a58..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_association_labels_limits_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetCustomAssociationLabelsLimits" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'source_object_type_id': '123', 'target_object_type_id': '456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_object_limits_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_object_limits_example_call_tool.js deleted file mode 100644 index 76f8ed029..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_object_limits_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetCustomObjectLimits"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_object_limits_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_object_limits_example_call_tool.py deleted file mode 100644 index 46aff5c1f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_object_limits_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetCustomObjectLimits" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_property_limits_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_property_limits_example_call_tool.js deleted file mode 100644 index b99f0b7a2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_property_limits_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetCustomPropertyLimits"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_property_limits_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_property_limits_example_call_tool.py deleted file mode 100644 index 1928f31e4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_custom_property_limits_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetCustomPropertyLimits" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_deals_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_deals_page_example_call_tool.js deleted file mode 100644 index d89f76b7a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_deals_page_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetDealsPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "contact", - "company" - ], - "deal_properties": [ - "amount", - "stage" - ], - "paging_cursor_token": "abc123", - "properties_with_history": [ - "amount" - ], - "results_limit_per_page": 10, - "return_archived_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_deals_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_deals_page_example_call_tool.py deleted file mode 100644 index 3dd3b34b3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_deals_page_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetDealsPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['contact', 'company'], - 'deal_properties': ['amount', 'stage'], - 'paging_cursor_token': 'abc123', - 'properties_with_history': ['amount'], - 'results_limit_per_page': 10, - 'return_archived_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_fee_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_fee_details_example_call_tool.js deleted file mode 100644 index 7b89ac43c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_fee_details_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetFeeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fee_identifier": "12345", - "associated_object_types": [ - "contact", - "company" - ], - "only_return_archived_results": false, - "return_properties": [ - "amount", - "currency" - ], - "unique_property_name": "fee_code" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_fee_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_fee_details_example_call_tool.py deleted file mode 100644 index f103cf4ea..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_fee_details_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetFeeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fee_identifier': '12345', - 'associated_object_types': ['contact', 'company'], - 'only_return_archived_results': False, - 'return_properties': ['amount', 'currency'], - 'unique_property_name': 'fee_code' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_feedback_submission_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_feedback_submission_by_id_example_call_tool.js deleted file mode 100644 index 9691628fc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_feedback_submission_by_id_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetFeedbackSubmissionById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "feedback_submission_id": "12345", - "associated_object_types": [ - "user", - "project" - ], - "return_archived_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_feedback_submission_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_feedback_submission_by_id_example_call_tool.py deleted file mode 100644 index 2fd7ab3d7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_feedback_submission_by_id_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetFeedbackSubmissionById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'feedback_submission_id': '12345', - 'associated_object_types': ['user', 'project'], - 'return_archived_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_feedback_submissions_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_feedback_submissions_example_call_tool.js deleted file mode 100644 index e6fc7bdbf..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_feedback_submissions_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetFeedbackSubmissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "contacts", - "companies" - ], - "max_results_per_page": 10, - "paging_cursor_token": "abc123", - "properties_to_return": [ - "submission_id", - "feedback_text" - ], - "properties_with_history": [ - "feedback_text" - ], - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_feedback_submissions_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_feedback_submissions_example_call_tool.py deleted file mode 100644 index 22f9974ac..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_feedback_submissions_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetFeedbackSubmissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['contacts', 'companies'], - 'max_results_per_page': 10, - 'paging_cursor_token': 'abc123', - 'properties_to_return': ['submission_id', 'feedback_text'], - 'properties_with_history': ['feedback_text'], - 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_goal_target_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_goal_target_by_id_example_call_tool.js deleted file mode 100644 index dbb1c5604..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_goal_target_by_id_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetGoalTargetById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "goal_target_id": "12345", - "archived_results": false, - "returned_properties": [ - "name", - "status" - ], - "unique_property_name": "goalName" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_goal_target_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_goal_target_by_id_example_call_tool.py deleted file mode 100644 index 484a26fbc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_goal_target_by_id_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetGoalTargetById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'goal_target_id': '12345', - 'archived_results': False, - 'returned_properties': ['name', 'status'], - 'unique_property_name': 'goalName' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_goal_targets_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_goal_targets_example_call_tool.js deleted file mode 100644 index c7da9189f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_goal_targets_example_call_tool.js +++ /dev/null @@ -1,45 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetGoalTargets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "contact", - "company" - ], - "paging_cursor_token": "abc123", - "properties_with_history": [ - "status", - "priority" - ], - "results_per_page_limit": 10, - "return_only_archived": false, - "returned_properties": [ - "name", - "due_date" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_goal_targets_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_goal_targets_example_call_tool.py deleted file mode 100644 index 0a023e914..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_goal_targets_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetGoalTargets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['contact', 'company'], - 'paging_cursor_token': 'abc123', - 'properties_with_history': ['status', 'priority'], - 'results_per_page_limit': 10, - 'return_only_archived': False, - 'returned_properties': ['name', 'due_date'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_crm_limits_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_crm_limits_records_example_call_tool.js deleted file mode 100644 index b1234a699..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_crm_limits_records_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetHubspotCrmLimitsRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_crm_limits_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_crm_limits_records_example_call_tool.py deleted file mode 100644 index f95706ff4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_crm_limits_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetHubspotCrmLimitsRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_crm_object_schemas_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_crm_object_schemas_example_call_tool.js deleted file mode 100644 index 2b7658e0c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_crm_object_schemas_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetHubspotCrmObjectSchemas"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "return_archived_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_crm_object_schemas_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_crm_object_schemas_example_call_tool.py deleted file mode 100644 index f494b219d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_crm_object_schemas_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetHubspotCrmObjectSchemas" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'return_archived_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_deal_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_deal_by_id_example_call_tool.js deleted file mode 100644 index 96ad6fd7a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_deal_by_id_example_call_tool.js +++ /dev/null @@ -1,45 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetHubspotDealById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deal_id": "12345", - "associated_object_types": [ - "contact", - "company" - ], - "properties_with_history": [ - "amount", - "stage" - ], - "return_archived_only": false, - "return_properties": [ - "name", - "status" - ], - "unique_property_name": "custom_id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_deal_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_deal_by_id_example_call_tool.py deleted file mode 100644 index 637220876..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_deal_by_id_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetHubspotDealById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deal_id': '12345', - 'associated_object_types': ['contact', 'company'], - 'properties_with_history': ['amount', 'stage'], - 'return_archived_only': False, - 'return_properties': ['name', 'status'], - 'unique_property_name': 'custom_id' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_discounts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_discounts_example_call_tool.js deleted file mode 100644 index 76755e0e4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_discounts_example_call_tool.js +++ /dev/null @@ -1,46 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetHubspotDiscounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "contact", - "company" - ], - "maximum_results_per_page": 10, - "paging_cursor_token": "abc123", - "properties_with_history": [ - "amount", - "expiration_date" - ], - "return_only_archived": false, - "returned_discount_properties": [ - "id", - "name", - "amount" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_discounts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_discounts_example_call_tool.py deleted file mode 100644 index 564f7fade..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_discounts_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetHubspotDiscounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['contact', 'company'], - 'maximum_results_per_page': 10, - 'paging_cursor_token': 'abc123', - 'properties_with_history': ['amount', 'expiration_date'], - 'return_only_archived': False, - 'returned_discount_properties': ['id', 'name', 'amount'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_leads_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_leads_page_example_call_tool.js deleted file mode 100644 index 21726a399..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_leads_page_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetHubspotLeadsPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "archived_leads_only": false, - "lead_properties_to_return": [ - "email", - "name" - ], - "results_limit_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_leads_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_leads_page_example_call_tool.py deleted file mode 100644 index 987d5366b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_leads_page_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetHubspotLeadsPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'archived_leads_only': False, - 'lead_properties_to_return': ['email', 'name'], - 'results_limit_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_object_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_object_by_id_example_call_tool.js deleted file mode 100644 index 68d3b1de9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_object_by_id_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetHubspotObjectById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hubspot_crm_service_id": "12345", - "associated_object_types": [ - "contact", - "company" - ], - "return_properties_list": [ - "name", - "email" - ], - "return_archived_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_object_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_object_by_id_example_call_tool.py deleted file mode 100644 index 26698d227..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_object_by_id_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetHubspotObjectById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hubspot_crm_service_id': '12345', - 'associated_object_types': ['contact', 'company'], - 'return_properties_list': ['name', 'email'], - 'return_archived_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_objects_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_objects_page_example_call_tool.js deleted file mode 100644 index 156880f22..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_objects_page_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetHubspotObjectsPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type": "contacts", - "max_results_per_page": 10, - "requested_properties": [ - "email", - "firstname", - "lastname" - ], - "return_archived_results_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_objects_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_objects_page_example_call_tool.py deleted file mode 100644 index 610085c7e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_hubspot_objects_page_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetHubspotObjectsPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type': 'contacts', - 'max_results_per_page': 10, - 'requested_properties': ['email', 'firstname', 'lastname'], - 'return_archived_results_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_invoice_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_invoice_by_id_example_call_tool.js deleted file mode 100644 index fc6231d5f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_invoice_by_id_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetInvoiceById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_identifier": "INV-12345", - "associated_object_types": [ - "customer", - "payment" - ], - "requested_properties": [ - "amount", - "date" - ], - "return_archived_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_invoice_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_invoice_by_id_example_call_tool.py deleted file mode 100644 index 3b717bbd5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_invoice_by_id_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetInvoiceById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_identifier': 'INV-12345', - 'associated_object_types': ['customer', 'payment'], - 'requested_properties': ['amount', 'date'], - 'return_archived_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_lead_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_lead_by_id_example_call_tool.js deleted file mode 100644 index 6db919e0d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_lead_by_id_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetLeadById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "lead_identifier": "12345", - "associated_object_types": [ - "contact", - "company" - ], - "only_archived_results": false, - "returned_properties": [ - "email", - "name" - ], - "unique_property_name": "custom_id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_lead_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_lead_by_id_example_call_tool.py deleted file mode 100644 index 0e39fe4f3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_lead_by_id_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetLeadById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'lead_identifier': '12345', - 'associated_object_types': ['contact', 'company'], - 'only_archived_results': False, - 'returned_properties': ['email', 'name'], - 'unique_property_name': 'custom_id' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_line_item_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_line_item_details_example_call_tool.js deleted file mode 100644 index c9be37afd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_line_item_details_example_call_tool.js +++ /dev/null @@ -1,45 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetLineItemDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "line_item_id": "12345", - "associated_object_types": [ - "contact", - "deal" - ], - "only_return_archived": false, - "properties_with_history": [ - "quantity", - "price" - ], - "return_properties": [ - "name", - "description" - ], - "unique_identifier_property": "sku" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_line_item_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_line_item_details_example_call_tool.py deleted file mode 100644 index 27f39e6f4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_line_item_details_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetLineItemDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'line_item_id': '12345', - 'associated_object_types': ['contact', 'deal'], - 'only_return_archived': False, - 'properties_with_history': ['quantity', 'price'], - 'return_properties': ['name', 'description'], - 'unique_identifier_property': 'sku' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_listing_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_listing_details_example_call_tool.js deleted file mode 100644 index 85d7fdb06..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_listing_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetListingDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "unique_listing_id": "12345", - "properties_to_return": [ - "name", - "price" - ], - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_listing_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_listing_details_example_call_tool.py deleted file mode 100644 index 92a7f1565..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_listing_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetListingDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'unique_listing_id': '12345', - 'properties_to_return': ['name', 'price'], - 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_meeting_details_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_meeting_details_by_id_example_call_tool.js deleted file mode 100644 index d28b9daee..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_meeting_details_by_id_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetMeetingDetailsById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "meeting_identifier": "12345", - "only_archived": false, - "return_properties": [ - "title", - "date", - "participants" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_meeting_details_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_meeting_details_by_id_example_call_tool.py deleted file mode 100644 index 972a3ab99..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_meeting_details_by_id_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetMeetingDetailsById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'meeting_identifier': '12345', - 'only_archived': False, - 'return_properties': ['title', 'date', 'participants'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_meetings_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_meetings_page_example_call_tool.js deleted file mode 100644 index 03e05cf2e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_meetings_page_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetMeetingsPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maximum_results_per_page": 10, - "paging_cursor_token": "abc123", - "properties": [ - "subject", - "start_time" - ], - "properties_with_history": [ - "duration" - ], - "retrieve_associated_object_ids": [ - "contacts", - "deals" - ], - "return_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_meetings_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_meetings_page_example_call_tool.py deleted file mode 100644 index 0f0e30987..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_meetings_page_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetMeetingsPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maximum_results_per_page': 10, - 'paging_cursor_token': 'abc123', - 'properties': ['subject', 'start_time'], - 'properties_with_history': ['duration'], - 'retrieve_associated_object_ids': ['contacts', 'deals'], - 'return_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_multiple_postal_mail_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_multiple_postal_mail_objects_example_call_tool.js deleted file mode 100644 index c168b3685..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_multiple_postal_mail_objects_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetMultiplePostalMailObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "include_archived": false, - "request_body": "{\"ids\":[\"123\",\"456\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_multiple_postal_mail_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_multiple_postal_mail_objects_example_call_tool.py deleted file mode 100644 index 34adddda0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_multiple_postal_mail_objects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetMultiplePostalMailObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'include_archived': False, 'request_body': '{"ids":["123","456"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_note_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_note_details_example_call_tool.js deleted file mode 100644 index 163010265..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_note_details_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetNoteDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "note_id": "12345", - "associated_object_types": [ - "contact", - "company" - ], - "properties_to_return": [ - "title", - "content" - ], - "return_archived_results_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_note_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_note_details_example_call_tool.py deleted file mode 100644 index 79b50600f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_note_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetNoteDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'note_id': '12345', - 'associated_object_types': ['contact', 'company'], - 'properties_to_return': ['title', 'content'], - 'return_archived_results_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_order_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_order_details_example_call_tool.js deleted file mode 100644 index 3774d2732..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_order_details_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetOrderDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "order_identifier": "12345", - "associated_object_types": [ - "contact", - "company" - ], - "return_properties": [ - "status", - "amount" - ], - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_order_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_order_details_example_call_tool.py deleted file mode 100644 index 33947f603..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_order_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetOrderDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'order_identifier': '12345', - 'associated_object_types': ['contact', 'company'], - 'return_properties': ['status', 'amount'], - 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_orders_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_orders_page_example_call_tool.js deleted file mode 100644 index f6a61d28c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_orders_page_example_call_tool.js +++ /dev/null @@ -1,45 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetOrdersPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "customer", - "product" - ], - "only_return_archived_orders": false, - "order_properties_to_return": [ - "id", - "status", - "total" - ], - "paging_cursor_token": "abc123", - "properties_with_history": [ - "status" - ], - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_orders_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_orders_page_example_call_tool.py deleted file mode 100644 index b9bf7d872..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_orders_page_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetOrdersPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['customer', 'product'], - 'only_return_archived_orders': False, - 'order_properties_to_return': ['id', 'status', 'total'], - 'paging_cursor_token': 'abc123', - 'properties_with_history': ['status'], - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_client_info_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_client_info_example_call_tool.js deleted file mode 100644 index fb5490fe3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_client_info_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetPartnerClientInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "partner_client_id": "12345", - "associated_objects": [ - "contacts", - "deals" - ], - "include_archived_data": true, - "optional_properties": [ - "name", - "email" - ], - "properties_with_history": [ - "status" - ], - "property_id": "custom_id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_client_info_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_client_info_example_call_tool.py deleted file mode 100644 index b306bdb1f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_client_info_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetPartnerClientInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'partner_client_id': '12345', - 'associated_objects': ['contacts', 'deals'], - 'include_archived_data': True, - 'optional_properties': ['name', 'email'], - 'properties_with_history': ['status'], - 'property_id': 'custom_id' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_clients_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_clients_example_call_tool.js deleted file mode 100644 index 86621b428..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_clients_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetPartnerClients"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "client_properties": [ - "name", - "email" - ], - "include_archived": false, - "include_associations": [ - "deals", - "tickets" - ], - "pagination_cursor": "abc123", - "properties_with_history": [ - "last_contacted" - ], - "retrieval_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_clients_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_clients_example_call_tool.py deleted file mode 100644 index 1e6d6daff..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_clients_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetPartnerClients" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'client_properties': ['name', 'email'], - 'include_archived': False, - 'include_associations': ['deals', 'tickets'], - 'pagination_cursor': 'abc123', - 'properties_with_history': ['last_contacted'], - 'retrieval_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_service_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_service_details_example_call_tool.js deleted file mode 100644 index 0fa33280b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_service_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetPartnerServiceDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "partner_service_id": "12345", - "properties_to_return": [ - "name", - "status" - ], - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_service_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_service_details_example_call_tool.py deleted file mode 100644 index c3caf73ce..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_service_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetPartnerServiceDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'partner_service_id': '12345', - 'properties_to_return': ['name', 'status'], - 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_services_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_services_example_call_tool.js deleted file mode 100644 index a703daf65..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_services_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetPartnerServices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maximum_results_per_page": 10, - "properties_with_history": [ - "name", - "status" - ], - "return_only_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_services_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_services_example_call_tool.py deleted file mode 100644 index 8d818df68..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_partner_services_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetPartnerServices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maximum_results_per_page': 10, - 'properties_with_history': ['name', 'status'], - 'return_only_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_payment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_payment_details_example_call_tool.js deleted file mode 100644 index d213a57fb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_payment_details_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetPaymentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_identifier": "12345", - "requested_properties": [ - "amount", - "currency" - ], - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_payment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_payment_details_example_call_tool.py deleted file mode 100644 index 9d07a0a72..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_payment_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetPaymentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_identifier': '12345', - 'requested_properties': ['amount', 'currency'], - 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_payment_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_payment_records_example_call_tool.js deleted file mode 100644 index 319c4675f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_payment_records_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetPaymentRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "archived_results_only": false, - "associated_object_types": [ - "contact", - "company" - ], - "results_per_page_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_payment_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_payment_records_example_call_tool.py deleted file mode 100644 index cd6e577a7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_payment_records_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetPaymentRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'archived_results_only': False, - 'associated_object_types': ['contact', 'company'], - 'results_per_page_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_audit_log_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_audit_log_example_call_tool.js deleted file mode 100644 index ae64edc19..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_audit_log_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetPipelineAuditLog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type": "deals", - "pipeline_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_audit_log_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_audit_log_example_call_tool.py deleted file mode 100644 index 2d41fe838..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_audit_log_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetPipelineAuditLog" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type': 'deals', 'pipeline_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_by_id_example_call_tool.js deleted file mode 100644 index 3bb62191e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetPipelineById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type_in_crm": "deals", - "pipeline_unique_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_by_id_example_call_tool.py deleted file mode 100644 index c9335b37b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetPipelineById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type_in_crm': 'deals', 'pipeline_unique_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stage_audit_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stage_audit_example_call_tool.js deleted file mode 100644 index fe59b9536..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stage_audit_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetPipelineStageAudit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type": "deals", - "pipeline_id": "12345", - "stage_identifier": "stage_1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stage_audit_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stage_audit_example_call_tool.py deleted file mode 100644 index 5626c4ddd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stage_audit_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetPipelineStageAudit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type': 'deals', 'pipeline_id': '12345', 'stage_identifier': 'stage_1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stage_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stage_by_id_example_call_tool.js deleted file mode 100644 index 857fb9056..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stage_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetPipelineStageById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type": "deals", - "pipeline_id": "12345", - "stage_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stage_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stage_by_id_example_call_tool.py deleted file mode 100644 index b7cfbbc86..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stage_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetPipelineStageById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type': 'deals', 'pipeline_id': '12345', 'stage_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stages_example_call_tool.js deleted file mode 100644 index 4b701eacc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stages_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetPipelineStages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type": "deals", - "pipeline_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stages_example_call_tool.py deleted file mode 100644 index b45f50212..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_pipeline_stages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetPipelineStages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type': 'deals', 'pipeline_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_postal_mail_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_postal_mail_by_id_example_call_tool.js deleted file mode 100644 index 60f960217..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_postal_mail_by_id_example_call_tool.js +++ /dev/null @@ -1,45 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetPostalMailById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "postal_mail_id": "12345", - "identify_by_id_property": "mail_id", - "include_archived": true, - "properties_with_history": [ - "status", - "delivery_date" - ], - "related_objects_associations": [ - "contact_1", - "company_2" - ], - "specified_properties": [ - "subject", - "sender" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_postal_mail_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_postal_mail_by_id_example_call_tool.py deleted file mode 100644 index 8f984452a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_postal_mail_by_id_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetPostalMailById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'postal_mail_id': '12345', - 'identify_by_id_property': 'mail_id', - 'include_archived': True, - 'properties_with_history': ['status', 'delivery_date'], - 'related_objects_associations': ['contact_1', 'company_2'], - 'specified_properties': ['subject', 'sender'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_postal_mail_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_postal_mail_records_example_call_tool.js deleted file mode 100644 index 686e2455b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_postal_mail_records_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetPostalMailRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_objects": [ - "contacts", - "companies" - ], - "include_archived_records": true, - "max_records": 50, - "retrieve_specific_properties": [ - "subject", - "date_sent" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_postal_mail_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_postal_mail_records_example_call_tool.py deleted file mode 100644 index ca761a07c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_postal_mail_records_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetPostalMailRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_objects': ['contacts', 'companies'], - 'include_archived_records': True, - 'max_records': 50, - 'retrieve_specific_properties': ['subject', 'date_sent'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_product_details_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_product_details_by_id_example_call_tool.js deleted file mode 100644 index af3b0605d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_product_details_by_id_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetProductDetailsById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_id": "12345", - "properties_to_return": [ - "name", - "price" - ], - "return_archived_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_product_details_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_product_details_by_id_example_call_tool.py deleted file mode 100644 index 1f90fe79f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_product_details_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetProductDetailsById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_id': '12345', 'properties_to_return': ['name', 'price'], 'return_archived_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_products_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_products_page_example_call_tool.js deleted file mode 100644 index 0b69fbccb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_products_page_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetProductsPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maximum_results_per_page": 10, - "product_properties_to_return": [ - "name", - "price" - ], - "return_archived_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_products_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_products_page_example_call_tool.py deleted file mode 100644 index 8cc6b9069..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_products_page_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetProductsPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maximum_results_per_page': 10, - 'product_properties_to_return': ['name', 'price'], - 'return_archived_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_property_validation_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_property_validation_rules_example_call_tool.js deleted file mode 100644 index 6d6500cf1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_property_validation_rules_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetPropertyValidationRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_property_validation_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_property_validation_rules_example_call_tool.py deleted file mode 100644 index 43fa04e1a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_property_validation_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetPropertyValidationRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_quote_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_quote_by_id_example_call_tool.js deleted file mode 100644 index 5fcee28a2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_quote_by_id_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetQuoteById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "quote_id": "12345", - "included_properties": [ - "amount", - "currency" - ], - "only_return_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_quote_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_quote_by_id_example_call_tool.py deleted file mode 100644 index f170ed175..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_quote_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetQuoteById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'quote_id': '12345', 'included_properties': ['amount', 'currency'], 'only_return_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_quotes_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_quotes_page_example_call_tool.js deleted file mode 100644 index 06e837c43..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_quotes_page_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetQuotesPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "paging_cursor_token": "abc123", - "quote_properties_to_return": [ - "id", - "text", - "author" - ], - "results_limit": 10, - "return_archived_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_quotes_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_quotes_page_example_call_tool.py deleted file mode 100644 index 573488d8c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_quotes_page_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetQuotesPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'paging_cursor_token': 'abc123', - 'quote_properties_to_return': ['id', 'text', 'author'], - 'results_limit': 10, - 'return_archived_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_record_list_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_record_list_memberships_example_call_tool.js deleted file mode 100644 index e353a1097..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_record_list_memberships_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetRecordListMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type_id": "contact", - "record_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_record_list_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_record_list_memberships_example_call_tool.py deleted file mode 100644 index b2363020c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_record_list_memberships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetRecordListMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type_id': 'contact', 'record_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_subscription_data_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_subscription_data_example_call_tool.js deleted file mode 100644 index e55aa9193..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_subscription_data_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetSubscriptionData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "contact", - "company" - ], - "max_results_per_page": 10, - "requested_properties": [ - "email", - "status" - ], - "return_only_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_subscription_data_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_subscription_data_example_call_tool.py deleted file mode 100644 index 0c4b43936..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_subscription_data_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetSubscriptionData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['contact', 'company'], - 'max_results_per_page': 10, - 'requested_properties': ['email', 'status'], - 'return_only_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_subscription_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_subscription_details_example_call_tool.js deleted file mode 100644 index a48c60077..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_subscription_details_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetSubscriptionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_12345", - "association_types_to_retrieve": [ - "user", - "plan" - ], - "only_archived_results": false, - "requested_properties": [ - "status", - "start_date" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_subscription_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_subscription_details_example_call_tool.py deleted file mode 100644 index 21f4d64ff..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_subscription_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetSubscriptionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_12345', - 'association_types_to_retrieve': ['user', 'plan'], - 'only_archived_results': False, - 'requested_properties': ['status', 'start_date'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_task_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_task_details_example_call_tool.js deleted file mode 100644 index bf832e29c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_task_details_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetTaskDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "task_id": "12345", - "associated_object_types": [ - "contact", - "company" - ], - "requested_properties": [ - "subject", - "due_date" - ], - "return_only_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_task_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_task_details_example_call_tool.py deleted file mode 100644 index e127ff6a1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_task_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetTaskDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'task_id': '12345', - 'associated_object_types': ['contact', 'company'], - 'requested_properties': ['subject', 'due_date'], - 'return_only_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_tasks_list_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_tasks_list_example_call_tool.js deleted file mode 100644 index 8d15326e4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_tasks_list_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetTasksList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_results_per_page": 10, - "properties_with_history": [ - "status", - "due_date" - ], - "return_only_archived_results": false, - "task_properties_to_return": [ - "title", - "description" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_tasks_list_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_tasks_list_example_call_tool.py deleted file mode 100644 index 2d56a9b32..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_tasks_list_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetTasksList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_results_per_page': 10, - 'properties_with_history': ['status', 'due_date'], - 'return_only_archived_results': False, - 'task_properties_to_return': ['title', 'description'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_tax_details_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_tax_details_by_id_example_call_tool.js deleted file mode 100644 index 40306c2db..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_tax_details_by_id_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetTaxDetailsById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tax_id": "12345", - "associated_object_types": [ - "invoice", - "payment" - ], - "return_archived_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_tax_details_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_tax_details_by_id_example_call_tool.py deleted file mode 100644 index 5546ab192..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_tax_details_by_id_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetTaxDetailsById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tax_id': '12345', - 'associated_object_types': ['invoice', 'payment'], - 'return_archived_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_taxes_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_taxes_page_example_call_tool.js deleted file mode 100644 index b2de73785..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_taxes_page_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetTaxesPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "archived_only": true, - "included_properties": [ - "name", - "amount" - ], - "max_results_per_page": 10, - "paging_cursor_token": "abc123", - "properties_with_history": [ - "amount" - ], - "retrieve_associated_object_ids": [ - "customer", - "invoice" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_taxes_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_taxes_page_example_call_tool.py deleted file mode 100644 index b8525f4c8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_taxes_page_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetTaxesPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'archived_only': True, - 'included_properties': ['name', 'amount'], - 'max_results_per_page': 10, - 'paging_cursor_token': 'abc123', - 'properties_with_history': ['amount'], - 'retrieve_associated_object_ids': ['customer', 'invoice'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_ticket_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_ticket_details_example_call_tool.js deleted file mode 100644 index 987bc97c6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_ticket_details_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetTicketDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_id": "12345", - "associated_object_types": [ - "contact", - "company" - ], - "only_return_archived": false, - "properties_to_return": [ - "subject", - "status" - ], - "properties_with_history": [ - "status" - ], - "unique_identifier_property": "ticket_number" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_ticket_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_ticket_details_example_call_tool.py deleted file mode 100644 index 19880ce4b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_ticket_details_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetTicketDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_id': '12345', - 'associated_object_types': ['contact', 'company'], - 'only_return_archived': False, - 'properties_to_return': ['subject', 'status'], - 'properties_with_history': ['status'], - 'unique_identifier_property': 'ticket_number' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_transcript_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_transcript_by_id_example_call_tool.js deleted file mode 100644 index e6ffd9ab9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_transcript_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetTranscriptById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transcript_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_transcript_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_transcript_by_id_example_call_tool.py deleted file mode 100644 index 537a2cb32..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_transcript_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetTranscriptById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transcript_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_user_info_example_call_tool.js deleted file mode 100644 index 4d0de59cd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_user_info_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "12345", - "object_associations": [ - "contact", - "deal" - ], - "properties_to_return": [ - "email", - "firstName" - ], - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_user_info_example_call_tool.py deleted file mode 100644 index 00227669b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_user_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': '12345', - 'object_associations': ['contact', 'deal'], - 'properties_to_return': ['email', 'firstName'], - 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_users_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_users_page_example_call_tool.js deleted file mode 100644 index 1ce46bc2d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_users_page_example_call_tool.js +++ /dev/null @@ -1,45 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.GetUsersPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "contact", - "company" - ], - "max_results_per_page": 10, - "paging_cursor_token": "abc123", - "properties_with_history": [ - "last_login", - "email" - ], - "return_only_archived": false, - "user_properties": [ - "name", - "role" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_users_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/get_users_page_example_call_tool.py deleted file mode 100644 index 925112ca7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/get_users_page_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.GetUsersPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['contact', 'company'], - 'max_results_per_page': 10, - 'paging_cursor_token': 'abc123', - 'properties_with_history': ['last_login', 'email'], - 'return_only_archived': False, - 'user_properties': ['name', 'role'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_batch_archive_associations_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_batch_archive_associations_example_call_tool.js deleted file mode 100644 index 09c00a297..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_batch_archive_associations_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.HubspotBatchArchiveAssociations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "source_object_type": "contacts", - "target_object_type": "companies", - "request_body": "{\"associations\":[{\"id\":\"123\",\"type\":\"company\"},{\"id\":\"456\",\"type\":\"company\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_batch_archive_associations_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_batch_archive_associations_example_call_tool.py deleted file mode 100644 index 9a1540191..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_batch_archive_associations_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.HubspotBatchArchiveAssociations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'source_object_type': 'contacts', - 'target_object_type': 'companies', - 'request_body': '{"associations":[{"id":"123","type":"company"},{"id":"456","type":"company"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_crm_search_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_crm_search_objects_example_call_tool.js deleted file mode 100644 index 70bff5aa5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_crm_search_objects_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.HubspotCrmSearchObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"objectType\":\"contact\",\"searchCriteria\":{\"email\":\"example@example.com\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_crm_search_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_crm_search_objects_example_call_tool.py deleted file mode 100644 index bccd54728..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_crm_search_objects_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.HubspotCrmSearchObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"objectType":"contact","searchCriteria":{"email":"example@example.com"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_crm_upsert_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_crm_upsert_records_example_call_tool.js deleted file mode 100644 index 7691f9e17..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_crm_upsert_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.HubspotCrmUpsertRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"uniqueIdentifier\":\"12345\",\"properties\":{\"name\":\"John Doe\",\"email\":\"john@example.com\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_crm_upsert_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_crm_upsert_records_example_call_tool.py deleted file mode 100644 index 7922e36e1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_crm_upsert_records_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.HubspotCrmUpsertRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"uniqueIdentifier":"12345","properties":{"name":"John ' - 'Doe","email":"john@example.com"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_search_custom_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_search_custom_objects_example_call_tool.js deleted file mode 100644 index 189942d4f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_search_custom_objects_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.HubspotSearchCustomObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"objectType\":\"contact\",\"properties\":{\"email\":\"example@example.com\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_search_custom_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_search_custom_objects_example_call_tool.py deleted file mode 100644 index db2d5f7e9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_search_custom_objects_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.HubspotSearchCustomObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"objectType":"contact","properties":{"email":"example@example.com"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_update_listing_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_update_listing_example_call_tool.js deleted file mode 100644 index f5ee338de..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_update_listing_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.HubspotUpdateListing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "listing_id": "12345", - "request_body": "{\"name\":\"Updated Listing Name\",\"description\":\"Updated description\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_update_listing_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_update_listing_example_call_tool.py deleted file mode 100644 index ff489d9c7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/hubspot_update_listing_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.HubspotUpdateListing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'listing_id': '12345', - 'request_body': '{"name":"Updated Listing Name","description":"Updated description"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/list_crm_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/list_crm_entries_example_call_tool.js deleted file mode 100644 index 4e255610c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/list_crm_entries_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ListCrmEntries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "contacts", - "deals" - ], - "include_only_archived_results": false, - "maximum_results_per_page": 10, - "properties_to_return": [ - "name", - "email", - "phone" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/list_crm_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/list_crm_entries_example_call_tool.py deleted file mode 100644 index 9345a19ab..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/list_crm_entries_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ListCrmEntries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['contacts', 'deals'], - 'include_only_archived_results': False, - 'maximum_results_per_page': 10, - 'properties_to_return': ['name', 'email', 'phone'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/list_partner_client_associations_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/list_partner_client_associations_example_call_tool.js deleted file mode 100644 index 0a130c3cd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/list_partner_client_associations_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ListPartnerClientAssociations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "partner_client_id": "12345", - "target_object_type": "contact", - "include_family_associations": true, - "max_results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/list_partner_client_associations_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/list_partner_client_associations_example_call_tool.py deleted file mode 100644 index 1b3c4c0b3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/list_partner_client_associations_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ListPartnerClientAssociations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'partner_client_id': '12345', - 'target_object_type': 'contact', - 'include_family_associations': True, - 'max_results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/list_partner_service_associations_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/list_partner_service_associations_example_call_tool.js deleted file mode 100644 index 65383a125..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/list_partner_service_associations_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ListPartnerServiceAssociations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "partner_service_id": "12345", - "target_object_type": "contacts", - "include_associated_fields": true, - "max_results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/list_partner_service_associations_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/list_partner_service_associations_example_call_tool.py deleted file mode 100644 index 84468bb16..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/list_partner_service_associations_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ListPartnerServiceAssociations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'partner_service_id': '12345', - 'target_object_type': 'contacts', - 'include_associated_fields': True, - 'max_results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/manage_deal_splits_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/manage_deal_splits_example_call_tool.js deleted file mode 100644 index 88a5668b7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/manage_deal_splits_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ManageDealSplits"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"dealId\":\"12345\",\"splits\":[{\"stakeholder\":\"Alice\",\"percentage\":50.0},{\"stakeholder\":\"Bob\",\"percentage\":50.0}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/manage_deal_splits_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/manage_deal_splits_example_call_tool.py deleted file mode 100644 index 8340d3e72..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/manage_deal_splits_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ManageDealSplits" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"dealId":"12345","splits":[{"stakeholder":"Alice","percentage":50.0},{"stakeholder":"Bob","percentage":50.0}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_company_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_company_records_example_call_tool.js deleted file mode 100644 index 506c4d867..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_company_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.MergeCompanyRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "company_id_to_merge": "12345", - "primary_company_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_company_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_company_records_example_call_tool.py deleted file mode 100644 index 93fa1a6c0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_company_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.MergeCompanyRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'company_id_to_merge': '12345', 'primary_company_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_contacts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_contacts_example_call_tool.js deleted file mode 100644 index 0cd99a724..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_contacts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.MergeContacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id_to_merge": "12345", - "primary_contact_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_contacts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_contacts_example_call_tool.py deleted file mode 100644 index 37e6b7ce5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_contacts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.MergeContacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id_to_merge': '12345', 'primary_contact_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_deals_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_deals_example_call_tool.js deleted file mode 100644 index 7d9ff46c8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_deals_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.MergeDeals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deal_id_to_merge": "12345", - "primary_deal_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_deals_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_deals_example_call_tool.py deleted file mode 100644 index b8c60ae41..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_deals_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.MergeDeals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deal_id_to_merge': '12345', 'primary_deal_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_hubspot_crm_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_hubspot_crm_objects_example_call_tool.js deleted file mode 100644 index 59f230ee2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_hubspot_crm_objects_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.MergeHubspotCrmObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hubspot_object_type": "contact", - "object_id_to_merge": "12345", - "primary_object_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_hubspot_crm_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_hubspot_crm_objects_example_call_tool.py deleted file mode 100644 index bfa0f3172..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_hubspot_crm_objects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.MergeHubspotCrmObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hubspot_object_type': 'contact', 'object_id_to_merge': '12345', 'primary_object_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_hubspot_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_hubspot_objects_example_call_tool.js deleted file mode 100644 index 2aabab387..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_hubspot_objects_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.MergeHubspotObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_id_to_merge": "12345", - "object_type_to_merge": "contacts", - "primary_object_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_hubspot_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_hubspot_objects_example_call_tool.py deleted file mode 100644 index b04ab1e9e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_hubspot_objects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.MergeHubspotObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_id_to_merge': '12345', 'object_type_to_merge': 'contacts', 'primary_object_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_support_tickets_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_support_tickets_example_call_tool.js deleted file mode 100644 index cb3c68a3b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_support_tickets_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.MergeSupportTickets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "primary_ticket_id": "TICKET-123", - "secondary_ticket_id": "TICKET-456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_support_tickets_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_support_tickets_example_call_tool.py deleted file mode 100644 index 3209cd4a9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/merge_support_tickets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.MergeSupportTickets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'primary_ticket_id': 'TICKET-123', 'secondary_ticket_id': 'TICKET-456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/modify_hubspot_object_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/modify_hubspot_object_example_call_tool.js deleted file mode 100644 index c4d4d22d7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/modify_hubspot_object_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ModifyHubspotObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "hubspot_object_type": "contacts", - "object_identifier": "12345", - "request_body": "{\"property\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/modify_hubspot_object_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/modify_hubspot_object_example_call_tool.py deleted file mode 100644 index 95da997d5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/modify_hubspot_object_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ModifyHubspotObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'hubspot_object_type': 'contacts', - 'object_identifier': '12345', - 'request_body': '{"property":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_folder_in_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/move_folder_in_hubspot_example_call_tool.js deleted file mode 100644 index 4aac173b2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_folder_in_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.MoveFolderInHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id_to_move": "12345", - "target_parent_folder_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_folder_in_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/move_folder_in_hubspot_example_call_tool.py deleted file mode 100644 index f1aa86bfa..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_folder_in_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.MoveFolderInHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id_to_move': '12345', 'target_parent_folder_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_list_to_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/move_list_to_folder_example_call_tool.js deleted file mode 100644 index 3ebaa9b4b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_list_to_folder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.MoveListToFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345", - "target_folder_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_list_to_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/move_list_to_folder_example_call_tool.py deleted file mode 100644 index 73dd65655..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_list_to_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.MoveListToFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345', 'target_folder_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_listing_to_recycle_bin_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/move_listing_to_recycle_bin_example_call_tool.js deleted file mode 100644 index 4a02ddc92..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_listing_to_recycle_bin_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.MoveListingToRecycleBin"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "listing_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_listing_to_recycle_bin_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/move_listing_to_recycle_bin_example_call_tool.py deleted file mode 100644 index e479dbd01..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_listing_to_recycle_bin_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.MoveListingToRecycleBin" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'listing_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_object_to_recycle_bin_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/move_object_to_recycle_bin_example_call_tool.js deleted file mode 100644 index f0b6761d3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_object_to_recycle_bin_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.MoveObjectToRecycleBin"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_id": "12345", - "object_type": "contacts" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_object_to_recycle_bin_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/move_object_to_recycle_bin_example_call_tool.py deleted file mode 100644 index 1733be468..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/move_object_to_recycle_bin_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.MoveObjectToRecycleBin" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_id': '12345', 'object_type': 'contacts' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/pipeline_limits_usage_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/pipeline_limits_usage_example_call_tool.js deleted file mode 100644 index ffcc3b836..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/pipeline_limits_usage_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.PipelineLimitsUsage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/pipeline_limits_usage_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/pipeline_limits_usage_example_call_tool.py deleted file mode 100644 index c9aed8ef8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/pipeline_limits_usage_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.PipelineLimitsUsage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_deal_splits_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_deal_splits_example_call_tool.js deleted file mode 100644 index b1006860f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_deal_splits_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ReadBatchDealSplits"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"deal_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_deal_splits_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_deal_splits_example_call_tool.py deleted file mode 100644 index 4aa2d9923..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_deal_splits_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ReadBatchDealSplits" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"deal_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_payments_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_payments_example_call_tool.js deleted file mode 100644 index 8696b7958..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_payments_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ReadBatchPayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "only_return_archived_results": false, - "request_body": "{\"payment_ids\":[\"123\",\"456\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_payments_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_payments_example_call_tool.py deleted file mode 100644 index c38698ae2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_payments_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ReadBatchPayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'only_return_archived_results': False, - 'request_body': '{"payment_ids":["123","456"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_properties_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_properties_example_call_tool.js deleted file mode 100644 index 86d4530ca..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_properties_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ReadBatchProperties"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "crm_object_type": "contacts", - "request_body": "{\"fields\":[\"name\",\"email\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_properties_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_properties_example_call_tool.py deleted file mode 100644 index 1e57b2c96..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_batch_properties_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ReadBatchProperties" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'crm_object_type': 'contacts', 'request_body': '{"fields":["name","email"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_communications_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/read_communications_page_example_call_tool.js deleted file mode 100644 index 9bc26e530..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_communications_page_example_call_tool.js +++ /dev/null @@ -1,45 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ReadCommunicationsPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "paging_cursor_token": "abc123", - "properties_with_history": [ - "status", - "last_contacted" - ], - "results_per_page": 10, - "retrieve_associations": [ - "contact", - "company" - ], - "return_only_archived_results": false, - "specified_properties": [ - "subject", - "body" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_communications_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/read_communications_page_example_call_tool.py deleted file mode 100644 index eade91456..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_communications_page_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ReadCommunicationsPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'paging_cursor_token': 'abc123', - 'properties_with_history': ['status', 'last_contacted'], - 'results_per_page': 10, - 'retrieve_associations': ['contact', 'company'], - 'return_only_archived_results': False, - 'specified_properties': ['subject', 'body'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_property_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/read_property_example_call_tool.js deleted file mode 100644 index 30882faf1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_property_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ReadProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "crm_object_type": "contact", - "property_name": "email", - "property_specifications": "label,fieldType", - "return_archived_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_property_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/read_property_example_call_tool.py deleted file mode 100644 index bf2bc71b2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_property_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ReadProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'crm_object_type': 'contact', - 'property_name': 'email', - 'property_specifications': 'label,fieldType', - 'return_archived_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_property_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/read_property_group_example_call_tool.js deleted file mode 100644 index 9d0b1d08a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_property_group_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ReadPropertyGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type": "contacts", - "property_group_name": "contact_information" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_property_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/read_property_group_example_call_tool.py deleted file mode 100644 index 19de9df03..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_property_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ReadPropertyGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type': 'contacts', 'property_group_name': 'contact_information' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_services_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/read_services_page_example_call_tool.js deleted file mode 100644 index 397c6b637..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_services_page_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ReadServicesPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "contact", - "company" - ], - "max_results_per_page": 10, - "requested_properties": [ - "name", - "description" - ], - "return_archived_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_services_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/read_services_page_example_call_tool.py deleted file mode 100644 index fd1f87816..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/read_services_page_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ReadServicesPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['contact', 'company'], - 'max_results_per_page': 10, - 'requested_properties': ['name', 'description'], - 'return_archived_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_all_list_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_all_list_memberships_example_call_tool.js deleted file mode 100644 index 04cef6d29..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_all_list_memberships_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RemoveAllListMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_all_list_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_all_list_memberships_example_call_tool.py deleted file mode 100644 index d7a4df695..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_all_list_memberships_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RemoveAllListMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_crm_association_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_crm_association_example_call_tool.js deleted file mode 100644 index 0d993ff15..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_crm_association_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RemoveCrmAssociation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "association_type": "contact-to-company", - "object_type": "contact", - "source_object_id": "12345", - "target_object_id": "67890", - "target_object_type": "company" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_crm_association_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_crm_association_example_call_tool.py deleted file mode 100644 index e2255d33d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_crm_association_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RemoveCrmAssociation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'association_type': 'contact-to-company', - 'object_type': 'contact', - 'source_object_id': '12345', - 'target_object_id': '67890', - 'target_object_type': 'company' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_partner_client_association_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_partner_client_association_example_call_tool.js deleted file mode 100644 index 31a159dbb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_partner_client_association_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RemovePartnerClientAssociation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "association_type": "partner", - "partner_client_id": "12345", - "target_object_id": "67890", - "target_object_type": "contacts" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_partner_client_association_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_partner_client_association_example_call_tool.py deleted file mode 100644 index 9ef2dc4dd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_partner_client_association_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RemovePartnerClientAssociation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'association_type': 'partner', - 'partner_client_id': '12345', - 'target_object_id': '67890', - 'target_object_type': 'contacts' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_partner_service_association_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_partner_service_association_example_call_tool.js deleted file mode 100644 index 4f5fd3280..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_partner_service_association_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RemovePartnerServiceAssociation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "association_type": "service_link", - "partner_service_id": "12345", - "target_object_id": "67890", - "target_object_type": "company" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_partner_service_association_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_partner_service_association_example_call_tool.py deleted file mode 100644 index 08ac24967..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_partner_service_association_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RemovePartnerServiceAssociation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'association_type': 'service_link', - 'partner_service_id': '12345', - 'target_object_id': '67890', - 'target_object_type': 'company' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_product_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_product_example_call_tool.js deleted file mode 100644 index 809b08d85..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_product_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RemoveProduct"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_product_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_product_example_call_tool.py deleted file mode 100644 index 979bac627..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_product_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RemoveProduct" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_records_from_list_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_records_from_list_example_call_tool.js deleted file mode 100644 index 8164db01c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_records_from_list_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RemoveRecordsFromList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345", - "record_ids_to_remove": [ - "67890", - "23456", - "78901" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_records_from_list_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_records_from_list_example_call_tool.py deleted file mode 100644 index bc3d643b2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/remove_records_from_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RemoveRecordsFromList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345', 'record_ids_to_remove': ['67890', '23456', '78901'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/rename_crm_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/rename_crm_folder_example_call_tool.js deleted file mode 100644 index 27ee2bf6f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/rename_crm_folder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RenameCrmFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_id": "12345", - "new_folder_name": "Updated Folder Name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/rename_crm_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/rename_crm_folder_example_call_tool.py deleted file mode 100644 index f47dced3b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/rename_crm_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RenameCrmFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_id': '12345', 'new_folder_name': 'Updated Folder Name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/replace_pipeline_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/replace_pipeline_hubspot_example_call_tool.js deleted file mode 100644 index cc4198c99..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/replace_pipeline_hubspot_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ReplacePipelineHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "object_type": "deals", - "pipeline_identifier": "12345", - "validate_references_before_deletion": true, - "request_body": "{\"name\":\"New Pipeline\",\"stages\":[{\"stage\":\"Initial Contact\",\"probability\":0.1},{\"stage\":\"Negotiation\",\"probability\":0.5}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/replace_pipeline_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/replace_pipeline_hubspot_example_call_tool.py deleted file mode 100644 index f81520a46..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/replace_pipeline_hubspot_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ReplacePipelineHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'object_type': 'deals', - 'pipeline_identifier': '12345', - 'validate_references_before_deletion': True, - 'request_body': '{"name":"New Pipeline","stages":[{"stage":"Initial ' - 'Contact","probability":0.1},{"stage":"Negotiation","probability":0.5}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/replace_pipeline_stage_properties_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/replace_pipeline_stage_properties_example_call_tool.js deleted file mode 100644 index 7d5ff81b7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/replace_pipeline_stage_properties_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ReplacePipelineStageProperties"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "crm_object_type": "deals", - "pipeline_id": "12345", - "pipeline_stage_id": "67890", - "request_body": "{\"name\":\"New Stage Name\",\"properties\":{\"probability\":0.75}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/replace_pipeline_stage_properties_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/replace_pipeline_stage_properties_example_call_tool.py deleted file mode 100644 index 1e68f1a8b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/replace_pipeline_stage_properties_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ReplacePipelineStageProperties" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'crm_object_type': 'deals', - 'pipeline_id': '12345', - 'pipeline_stage_id': '67890', - 'request_body': '{"name":"New Stage Name","properties":{"probability":0.75}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/restore_deleted_list_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/restore_deleted_list_example_call_tool.js deleted file mode 100644 index 452019ca3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/restore_deleted_list_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RestoreDeletedList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id_to_restore": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/restore_deleted_list_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/restore_deleted_list_example_call_tool.py deleted file mode 100644 index f3236f7ab..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/restore_deleted_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RestoreDeletedList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id_to_restore': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_all_companies_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_all_companies_example_call_tool.js deleted file mode 100644 index 7de062e81..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_all_companies_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveAllCompanies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "contact", - "deal" - ], - "paging_cursor_token": "abc123", - "properties_to_return": [ - "name", - "industry" - ], - "results_per_page_limit": 50, - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_all_companies_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_all_companies_example_call_tool.py deleted file mode 100644 index e38c49444..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_all_companies_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveAllCompanies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['contact', 'deal'], - 'paging_cursor_token': 'abc123', - 'properties_to_return': ['name', 'industry'], - 'results_per_page_limit': 50, - 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_communications_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_communications_example_call_tool.js deleted file mode 100644 index 3b22ddc9b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_communications_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveBatchCommunications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_archived_only": false, - "request_body": "{\"message_ids\":[\"12345\",\"67890\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_communications_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_communications_example_call_tool.py deleted file mode 100644 index 7d87ae300..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_communications_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveBatchCommunications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'return_archived_only': False, - 'request_body': '{"message_ids":["12345","67890"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_companies_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_companies_hubspot_example_call_tool.js deleted file mode 100644 index 4f5e8e7ad..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_companies_hubspot_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveBatchCompaniesHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_archived_only": false, - "request_body": "{\"ids\":[\"123\",\"456\"],\"properties\":[\"name\",\"industry\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_companies_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_companies_hubspot_example_call_tool.py deleted file mode 100644 index fa575e088..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_companies_hubspot_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveBatchCompaniesHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'return_archived_only': False, - 'request_body': '{"ids":["123","456"],"properties":["name","industry"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_line_items_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_line_items_example_call_tool.js deleted file mode 100644 index 074bd519f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_line_items_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveBatchLineItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"ids\":[\"123\",\"456\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_line_items_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_line_items_example_call_tool.py deleted file mode 100644 index 37deb00e2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_batch_line_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveBatchLineItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"ids":["123","456"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_calls_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_calls_batch_example_call_tool.js deleted file mode 100644 index 9652222f2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_calls_batch_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveCallsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_only_archived": false, - "request_body": "{\"call_ids\":[\"12345\",\"67890\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_calls_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_calls_batch_example_call_tool.py deleted file mode 100644 index e5ad20910..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_calls_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveCallsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'return_only_archived': False, 'request_body': '{"call_ids":["12345","67890"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_cart_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_cart_details_example_call_tool.js deleted file mode 100644 index bbbc2b46f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_cart_details_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveCartDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "product", - "discount" - ], - "cart_properties_to_return": [ - "total_price", - "item_count" - ], - "max_results_per_page": 10, - "paging_cursor_token": "abc123", - "properties_with_history_list": [ - "total_price" - ], - "return_only_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_cart_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_cart_details_example_call_tool.py deleted file mode 100644 index 412ccea5a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_cart_details_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveCartDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['product', 'discount'], - 'cart_properties_to_return': ['total_price', 'item_count'], - 'max_results_per_page': 10, - 'paging_cursor_token': 'abc123', - 'properties_with_history_list': ['total_price'], - 'return_only_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_cart_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_cart_records_example_call_tool.js deleted file mode 100644 index 3f61cd67c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_cart_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveCartRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "only_archived_results": false, - "request_body": "{\"recordId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_cart_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_cart_records_example_call_tool.py deleted file mode 100644 index a777bfc48..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_cart_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveCartRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'only_archived_results': False, 'request_body': '{"recordId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_commerce_payment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_commerce_payment_details_example_call_tool.js deleted file mode 100644 index d71606091..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_commerce_payment_details_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveCommercePaymentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "commerce_payment_id": "12345", - "associated_object_types": [ - "invoice", - "customer" - ], - "only_return_archived_results": false, - "return_properties": [ - "amount", - "status" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_commerce_payment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_commerce_payment_details_example_call_tool.py deleted file mode 100644 index 2dacf6cab..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_commerce_payment_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveCommercePaymentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'commerce_payment_id': '12345', - 'associated_object_types': ['invoice', 'customer'], - 'only_return_archived_results': False, - 'return_properties': ['amount', 'status'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_commerce_payment_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_commerce_payment_records_example_call_tool.js deleted file mode 100644 index ffaa06a20..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_commerce_payment_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveCommercePaymentRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"id\":\"12345\"}", - "return_archived_results_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_commerce_payment_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_commerce_payment_records_example_call_tool.py deleted file mode 100644 index 6d6d2de35..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_commerce_payment_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveCommercePaymentRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"id":"12345"}', 'return_archived_results_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_company_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_company_by_id_example_call_tool.js deleted file mode 100644 index b556be65d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_company_by_id_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveCompanyById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "company_identifier": "12345", - "associated_object_types": [ - "employee", - "project" - ], - "company_properties_to_retrieve": [ - "name", - "location" - ], - "return_only_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_company_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_company_by_id_example_call_tool.py deleted file mode 100644 index f5d96fb2a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_company_by_id_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveCompanyById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'company_identifier': '12345', - 'associated_object_types': ['employee', 'project'], - 'company_properties_to_retrieve': ['name', 'location'], - 'return_only_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_conversion_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_conversion_details_example_call_tool.js deleted file mode 100644 index 4d7c3dafa..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_conversion_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveConversionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_conversion_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_conversion_details_example_call_tool.py deleted file mode 100644 index 7b352ae2d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_conversion_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveConversionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_crm_object_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_crm_object_example_call_tool.js deleted file mode 100644 index 75a6353e4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_crm_object_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveCrmObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_id": "12345", - "object_type": "contacts", - "associated_object_types": [ - "companies", - "deals" - ], - "properties_list": [ - "name", - "email" - ], - "properties_with_history": [ - "status" - ], - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_crm_object_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_crm_object_example_call_tool.py deleted file mode 100644 index 28c919c97..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_crm_object_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveCrmObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_id': '12345', - 'object_type': 'contacts', - 'associated_object_types': ['companies', 'deals'], - 'properties_list': ['name', 'email'], - 'properties_with_history': ['status'], - 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_crm_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_crm_records_example_call_tool.js deleted file mode 100644 index 0e26c9d25..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_crm_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveCrmRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "retrieve_only_archived_records": false, - "request_body": "{\"id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_crm_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_crm_records_example_call_tool.py deleted file mode 100644 index 522cef832..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_crm_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveCrmRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'retrieve_only_archived_records': False, 'request_body': '{"id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_discount_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_discount_details_example_call_tool.js deleted file mode 100644 index 662a53209..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_discount_details_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveDiscountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "discount_identifier": "12345", - "archived_results_only": false, - "return_properties": [ - "name", - "amount" - ], - "unique_property_name": "code" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_discount_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_discount_details_example_call_tool.py deleted file mode 100644 index 21844ae63..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_discount_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveDiscountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'discount_identifier': '12345', - 'archived_results_only': False, - 'return_properties': ['name', 'amount'], - 'unique_property_name': 'code' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_discount_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_discount_records_example_call_tool.js deleted file mode 100644 index 374ea892a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_discount_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveDiscountRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"ids\":[\"123\",\"456\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_discount_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_discount_records_example_call_tool.py deleted file mode 100644 index 7071c0715..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_discount_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveDiscountRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"ids":["123","456"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_email_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_email_by_id_example_call_tool.js deleted file mode 100644 index 9ca75d6dd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_email_by_id_example_call_tool.js +++ /dev/null @@ -1,45 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveEmailById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_id": "12345", - "object_types_for_associated_ids": [ - "contact", - "company" - ], - "properties_with_history": [ - "subject", - "body" - ], - "return_only_archived_results": false, - "returned_properties": [ - "subject", - "from", - "to" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_email_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_email_by_id_example_call_tool.py deleted file mode 100644 index ac108c92a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_email_by_id_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveEmailById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_id': '12345', - 'object_types_for_associated_ids': ['contact', 'company'], - 'properties_with_history': ['subject', 'body'], - 'return_only_archived_results': False, - 'returned_properties': ['subject', 'from', 'to'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_email_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_email_records_example_call_tool.js deleted file mode 100644 index 195156af3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_email_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveEmailRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "only_archived_records": false, - "request_body": "{\"emailId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_email_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_email_records_example_call_tool.py deleted file mode 100644 index 5019614de..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_email_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveEmailRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'only_archived_records': False, 'request_body': '{"emailId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_emails_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_emails_page_example_call_tool.js deleted file mode 100644 index 5e014588e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_emails_page_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveEmailsPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_results_per_page": 10, - "returned_email_properties": [ - "subject", - "from", - "to" - ], - "return_only_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_emails_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_emails_page_example_call_tool.py deleted file mode 100644 index 1b172bde3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_emails_page_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveEmailsPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_results_per_page': 10, - 'returned_email_properties': ['subject', 'from', 'to'], - 'return_only_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_event_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_event_details_example_call_tool.js deleted file mode 100644 index c35ae7998..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_event_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveEventDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_id": "12345", - "event_template_id": "template_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_event_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_event_details_example_call_tool.py deleted file mode 100644 index f4f7826b0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_event_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveEventDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_id': '12345', 'event_template_id': 'template_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_event_instance_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_event_instance_example_call_tool.js deleted file mode 100644 index 47f5d5e75..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_event_instance_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveEventInstance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_id": "evt_12345", - "event_template_id": "tmpl_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_event_instance_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_event_instance_example_call_tool.py deleted file mode 100644 index 7cf64bb63..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_event_instance_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveEventInstance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_id': 'evt_12345', 'event_template_id': 'tmpl_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_fee_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_fee_records_example_call_tool.js deleted file mode 100644 index 12f222d8e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_fee_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveFeeRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_archived_only": false, - "request_body": "{\"ids\":[\"12345\",\"67890\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_fee_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_fee_records_example_call_tool.py deleted file mode 100644 index 2b08ddf1b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_fee_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveFeeRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'return_archived_only': False, 'request_body': '{"ids":["12345","67890"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_feedback_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_feedback_records_example_call_tool.js deleted file mode 100644 index dd428e70f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_feedback_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveFeedbackRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_archived_only": false, - "request_body": "{\"idProperty\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_feedback_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_feedback_records_example_call_tool.py deleted file mode 100644 index 9aeac3d39..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_feedback_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveFeedbackRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'return_archived_only': False, 'request_body': '{"idProperty":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_folders_with_child_nodes_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_folders_with_child_nodes_example_call_tool.js deleted file mode 100644 index cc79d3e97..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_folders_with_child_nodes_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveFoldersWithChildNodes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_folder_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_folders_with_child_nodes_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_folders_with_child_nodes_example_call_tool.py deleted file mode 100644 index 0fbe56510..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_folders_with_child_nodes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveFoldersWithChildNodes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_folder_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_goal_targets_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_goal_targets_example_call_tool.js deleted file mode 100644 index 98f869578..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_goal_targets_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveGoalTargets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"recordId\":\"12345\"}", - "return_only_archived_results": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_goal_targets_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_goal_targets_example_call_tool.py deleted file mode 100644 index b0c964258..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_goal_targets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveGoalTargets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"recordId":"12345"}', 'return_only_archived_results': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_crm_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_crm_records_example_call_tool.js deleted file mode 100644 index 9bc911447..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_crm_records_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveHubspotCrmRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "crm_object_type": "contacts", - "return_only_archived_records": false, - "request_body": "{\"idProperty\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_crm_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_crm_records_example_call_tool.py deleted file mode 100644 index 1ed5f2dfc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_crm_records_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveHubspotCrmRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'crm_object_type': 'contacts', - 'return_only_archived_records': False, - 'request_body': '{"idProperty":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_orders_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_orders_example_call_tool.js deleted file mode 100644 index 78fe387d5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_orders_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveHubspotOrders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_only_archived_orders": false, - "request_body": "{\"orderId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_orders_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_orders_example_call_tool.py deleted file mode 100644 index 1558d30d8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_orders_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveHubspotOrders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'return_only_archived_orders': False, 'request_body': '{"orderId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_product_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_product_records_example_call_tool.js deleted file mode 100644 index df2c6e134..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_product_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveHubspotProductRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "only_archived": false, - "request_body": "{\"id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_product_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_product_records_example_call_tool.py deleted file mode 100644 index 3351fa354..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_product_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveHubspotProductRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'only_archived': False, 'request_body': '{"id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_properties_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_properties_example_call_tool.js deleted file mode 100644 index d6305a818..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_properties_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveHubspotProperties"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type": "contact", - "return_archived_only": false, - "selected_properties": "firstname,lastname,email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_properties_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_properties_example_call_tool.py deleted file mode 100644 index e78cb579b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_properties_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveHubspotProperties" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type': 'contact', - 'return_archived_only': False, - 'selected_properties': 'firstname,lastname,email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_property_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_property_groups_example_call_tool.js deleted file mode 100644 index aa91bc399..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_property_groups_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveHubspotPropertyGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hubspot_object_type": "contacts" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_property_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_property_groups_example_call_tool.py deleted file mode 100644 index 1999572c9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_property_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveHubspotPropertyGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hubspot_object_type': 'contacts' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_records_example_call_tool.js deleted file mode 100644 index 9b1a212fe..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveHubspotRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_archived_records": false, - "request_body": "{\"idProperty\":\"email\",\"ids\":[\"example@example.com\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_records_example_call_tool.py deleted file mode 100644 index aa45a028d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_records_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveHubspotRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'return_archived_records': False, - 'request_body': '{"idProperty":"email","ids":["example@example.com"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_tasks_example_call_tool.js deleted file mode 100644 index 806cd9848..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_tasks_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveHubspotTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_archived_only": false, - "request_body": "{\"idProperty\":\"task_id\",\"ids\":[\"12345\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_tasks_example_call_tool.py deleted file mode 100644 index b6325257d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_tasks_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveHubspotTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'return_archived_only': False, - 'request_body': '{"idProperty":"task_id","ids":["12345"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_user_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_user_records_example_call_tool.js deleted file mode 100644 index 4c88a2dae..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_user_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveHubspotUserRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_only_archived_results": false, - "request_body": "{\"id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_user_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_user_records_example_call_tool.py deleted file mode 100644 index 50c4f42e4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_hubspot_user_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveHubspotUserRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'return_only_archived_results': False, 'request_body': '{"id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_invoice_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_invoice_records_example_call_tool.js deleted file mode 100644 index 2ef8cb584..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_invoice_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveInvoiceRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_archived_only": false, - "request_body": "{\"invoice_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_invoice_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_invoice_records_example_call_tool.py deleted file mode 100644 index a18d1f19f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_invoice_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveInvoiceRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'return_archived_only': False, 'request_body': '{"invoice_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_invoices_example_call_tool.js deleted file mode 100644 index eded00f59..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_invoices_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveInvoices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maximum_results_per_page": 10, - "return_archived_only": false, - "specified_properties": [ - "invoice_id", - "amount" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_invoices_example_call_tool.py deleted file mode 100644 index 28422c520..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_invoices_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveInvoices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maximum_results_per_page': 10, - 'return_archived_only': False, - 'specified_properties': ['invoice_id', 'amount'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_lead_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_lead_records_example_call_tool.js deleted file mode 100644 index ac503e605..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_lead_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveLeadRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_archived_only": false, - "request_body": "{\"id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_lead_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_lead_records_example_call_tool.py deleted file mode 100644 index 0e511513b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_lead_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveLeadRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'return_archived_only': False, 'request_body': '{"id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_limit_approaching_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_limit_approaching_records_example_call_tool.js deleted file mode 100644 index a37ebc633..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_limit_approaching_records_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveLimitApproachingRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_limit_approaching_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_limit_approaching_records_example_call_tool.py deleted file mode 100644 index 2726f0306..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_limit_approaching_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveLimitApproachingRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_line_items_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_line_items_page_example_call_tool.js deleted file mode 100644 index 211f532b9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_line_items_page_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveLineItemsPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "contact", - "company" - ], - "include_properties": [ - "name", - "amount" - ], - "max_results_per_page": 10, - "pagination_cursor_after": "abc123", - "properties_with_history": [ - "amount" - ], - "return_only_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_line_items_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_line_items_page_example_call_tool.py deleted file mode 100644 index 50a9722d0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_line_items_page_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveLineItemsPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['contact', 'company'], - 'include_properties': ['name', 'amount'], - 'max_results_per_page': 10, - 'pagination_cursor_after': 'abc123', - 'properties_with_history': ['amount'], - 'return_only_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_meeting_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_meeting_records_example_call_tool.js deleted file mode 100644 index 62c7a3f72..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_meeting_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveMeetingRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_only_archived_results": false, - "request_body": "{\"meeting_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_meeting_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_meeting_records_example_call_tool.py deleted file mode 100644 index 80672b87e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_meeting_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveMeetingRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'return_only_archived_results': False, 'request_body': '{"meeting_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_notes_page_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_notes_page_example_call_tool.js deleted file mode 100644 index 09be6b848..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_notes_page_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveNotesPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "associated_object_types": [ - "contact", - "company" - ], - "paging_cursor_token": "abc123", - "results_per_page": 10, - "return_only_archived_notes": false, - "returned_properties_list": [ - "title", - "content" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_notes_page_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_notes_page_example_call_tool.py deleted file mode 100644 index 781811be6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_notes_page_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveNotesPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'associated_object_types': ['contact', 'company'], - 'paging_cursor_token': 'abc123', - 'results_per_page': 10, - 'return_only_archived_notes': False, - 'returned_properties_list': ['title', 'content'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_notes_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_notes_records_example_call_tool.js deleted file mode 100644 index fa22dbff8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_notes_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveNotesRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_archived_only": false, - "request_body": "{\"id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_notes_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_notes_records_example_call_tool.py deleted file mode 100644 index 5e4b22085..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_notes_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveNotesRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'return_archived_only': False, 'request_body': '{"id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_owner_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_owner_details_example_call_tool.js deleted file mode 100644 index 071a4973d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_owner_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveOwnerDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "owner_id": 12345, - "include_archived": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_owner_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_owner_details_example_call_tool.py deleted file mode 100644 index f692fd6ed..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_owner_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveOwnerDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'owner_id': 12345, 'include_archived': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_owners_list_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_owners_list_example_call_tool.js deleted file mode 100644 index 00b56a20a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_owners_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveOwnersList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_email": "owner@example.com", - "include_archived": true, - "owners_list_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_owners_list_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_owners_list_example_call_tool.py deleted file mode 100644 index 0c79b5104..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_owners_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveOwnersList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_email': 'owner@example.com', 'include_archived': True, 'owners_list_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_partner_services_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_partner_services_records_example_call_tool.js deleted file mode 100644 index f9cb26bda..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_partner_services_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrievePartnerServicesRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_only_archived_records": false, - "request_body": "{\"id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_partner_services_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_partner_services_records_example_call_tool.py deleted file mode 100644 index ad6e14622..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_partner_services_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrievePartnerServicesRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'return_only_archived_records': False, 'request_body': '{"id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_quotes_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_quotes_batch_example_call_tool.js deleted file mode 100644 index 3f81abaff..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_quotes_batch_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveQuotesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "archived_results_only": false, - "request_body": "{\"quote_ids\":[\"123\",\"456\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_quotes_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_quotes_batch_example_call_tool.py deleted file mode 100644 index 2c7134b3b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_quotes_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveQuotesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'archived_results_only': False, 'request_body': '{"quote_ids":["123","456"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_subscription_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_subscription_records_example_call_tool.js deleted file mode 100644 index 84dca8305..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_subscription_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveSubscriptionRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "only_archived_records": false, - "request_body": "{\"subscriptionId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_subscription_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_subscription_records_example_call_tool.py deleted file mode 100644 index a33541e4a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_subscription_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveSubscriptionRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'only_archived_records': False, 'request_body': '{"subscriptionId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_tax_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_tax_records_example_call_tool.js deleted file mode 100644 index 87748bcb4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_tax_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveTaxRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_archived_only": false, - "request_body": "{\"recordId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_tax_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_tax_records_example_call_tool.py deleted file mode 100644 index 052c818ca..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_tax_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveTaxRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'return_archived_only': False, 'request_body': '{"recordId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_ticket_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_ticket_batch_example_call_tool.js deleted file mode 100644 index 84c0a3f44..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_ticket_batch_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.RetrieveTicketBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "return_archived_tickets_only": false, - "request_body": "{\"ticket_ids\":[\"123\",\"456\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_ticket_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_ticket_batch_example_call_tool.py deleted file mode 100644 index e82a67a35..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/retrieve_ticket_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.RetrieveTicketBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'return_archived_tickets_only': False, - 'request_body': '{"ticket_ids":["123","456"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/schedule_list_conversion_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/schedule_list_conversion_example_call_tool.js deleted file mode 100644 index 93753c9aa..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/schedule_list_conversion_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.ScheduleListConversion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "list_id": "12345", - "request_body": "{\"conversion_date\":\"2023-10-30\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/schedule_list_conversion_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/schedule_list_conversion_example_call_tool.py deleted file mode 100644 index 9460bb021..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/schedule_list_conversion_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.ScheduleListConversion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'list_id': '12345', 'request_body': '{"conversion_date":"2023-10-30"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_appointments_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_appointments_example_call_tool.js deleted file mode 100644 index 073b57689..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_appointments_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchAppointments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "appointment_search_criteria_type": "appointments", - "request_body": "{\"date\":\"2023-10-01\",\"status\":\"confirmed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_appointments_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_appointments_example_call_tool.py deleted file mode 100644 index 93967a932..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_appointments_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchAppointments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'appointment_search_criteria_type': 'appointments', - 'request_body': '{"date":"2023-10-01","status":"confirmed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_calls_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_calls_hubspot_example_call_tool.js deleted file mode 100644 index cc0ef56f3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_calls_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchCallsHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filters\":{\"status\":\"completed\"},\"sort\":\"date\",\"limit\":10}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_calls_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_calls_hubspot_example_call_tool.py deleted file mode 100644 index 3dfc0203a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_calls_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchCallsHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filters":{"status":"completed"},"sort":"date","limit":10}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_commerce_payments_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_commerce_payments_example_call_tool.js deleted file mode 100644 index 5ed823072..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_commerce_payments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchCommercePayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"paymentId\":\"12345\",\"amount\":100.0,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_commerce_payments_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_commerce_payments_example_call_tool.py deleted file mode 100644 index 2851532c1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_commerce_payments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchCommercePayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"paymentId":"12345","amount":100.0,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_companies_in_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_companies_in_hubspot_example_call_tool.js deleted file mode 100644 index b124cb856..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_companies_in_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchCompaniesInHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filters\":{\"industry\":\"Technology\"},\"sort\":\"name\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_companies_in_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_companies_in_hubspot_example_call_tool.py deleted file mode 100644 index 40a6f0e22..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_companies_in_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchCompaniesInHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filters":{"industry":"Technology"},"sort":"name"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_contacts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_contacts_example_call_tool.js deleted file mode 100644 index 5f32e0399..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_contacts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchContacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"query\":\"John Doe\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_contacts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_contacts_example_call_tool.py deleted file mode 100644 index fda7cf3cc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_contacts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchContacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"query":"John Doe"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_leads_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_leads_example_call_tool.js deleted file mode 100644 index a96ab7320..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_leads_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchCrmLeads"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"criteria\":\"new leads\",\"limit\":10}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_leads_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_leads_example_call_tool.py deleted file mode 100644 index aba73de76..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_leads_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchCrmLeads" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"criteria":"new leads","limit":10}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_messages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_messages_example_call_tool.js deleted file mode 100644 index 3d1a8a92b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_messages_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchCrmMessages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filter\":{\"status\":\"sent\"},\"sort\":\"date\",\"limit\":10}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_messages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_messages_example_call_tool.py deleted file mode 100644 index 4603b54d7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_messages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchCrmMessages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filter":{"status":"sent"},"sort":"date","limit":10}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_users_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_users_example_call_tool.js deleted file mode 100644 index 453e7217f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_users_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchCrmUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"criteria\":\"active_users\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_users_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_users_example_call_tool.py deleted file mode 100644 index 5f1b6ec43..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_crm_users_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchCrmUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"criteria":"active_users"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_deals_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_deals_example_call_tool.js deleted file mode 100644 index f68986230..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_deals_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchDeals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"criteria\":{\"status\":\"open\",\"amount\":{\"gte\":1000}}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_deals_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_deals_example_call_tool.py deleted file mode 100644 index ad90ae5c0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_deals_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchDeals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"criteria":{"status":"open","amount":{"gte":1000}}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_discounts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_discounts_example_call_tool.js deleted file mode 100644 index 4d1339ece..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_discounts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchDiscounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"criteria\":\"seasonal discounts\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_discounts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_discounts_example_call_tool.py deleted file mode 100644 index 3257f9740..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_discounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchDiscounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"criteria":"seasonal discounts"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_emails_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_emails_example_call_tool.js deleted file mode 100644 index 9011ee636..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_emails_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchEmails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"query\":\"from:example@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_emails_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_emails_example_call_tool.py deleted file mode 100644 index bd0471718..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_emails_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchEmails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"query":"from:example@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_feedback_submissions_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_feedback_submissions_example_call_tool.js deleted file mode 100644 index 95196eabc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_feedback_submissions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchFeedbackSubmissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"searchCriteria\":\"positive feedback\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_feedback_submissions_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_feedback_submissions_example_call_tool.py deleted file mode 100644 index 85407fec8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_feedback_submissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchFeedbackSubmissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"searchCriteria":"positive feedback"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_fees_in_crm_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_fees_in_crm_example_call_tool.js deleted file mode 100644 index 1f4a2808a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_fees_in_crm_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchFeesInCrm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"search_criteria\":\"fee_type: monthly\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_fees_in_crm_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_fees_in_crm_example_call_tool.py deleted file mode 100644 index a8227e900..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_fees_in_crm_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchFeesInCrm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"search_criteria":"fee_type: monthly"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_goal_targets_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_goal_targets_example_call_tool.js deleted file mode 100644 index 82e1017ce..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_goal_targets_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchGoalTargets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"criteria\":\"target_name:example\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_goal_targets_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_goal_targets_example_call_tool.py deleted file mode 100644 index 02aef1658..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_goal_targets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchGoalTargets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"criteria":"target_name:example"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_carts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_carts_example_call_tool.js deleted file mode 100644 index 2a304dc6b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_carts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchHubspotCarts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"search\":\"cart123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_carts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_carts_example_call_tool.py deleted file mode 100644 index 941b2023a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_carts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchHubspotCarts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"search":"cart123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_listings_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_listings_example_call_tool.js deleted file mode 100644 index 560c35ea7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_listings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchHubspotListings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filters\":{\"status\":\"active\"},\"properties\":[\"name\",\"price\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_listings_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_listings_example_call_tool.py deleted file mode 100644 index 6c3f8bd83..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_listings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchHubspotListings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filters":{"status":"active"},"properties":["name","price"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_lists_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_lists_example_call_tool.js deleted file mode 100644 index d96f5a75f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_lists_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchHubspotLists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_list_ids": [ - 123, - 456 - ], - "search_query": "Marketing", - "number_of_lists_to_return": 10, - "sort_order": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_lists_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_lists_example_call_tool.py deleted file mode 100644 index d9ca3195b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_lists_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchHubspotLists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_list_ids': [123, 456], - 'search_query': 'Marketing', - 'number_of_lists_to_return': 10, - 'sort_order': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_meetings_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_meetings_example_call_tool.js deleted file mode 100644 index f29629261..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_meetings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchHubspotMeetings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filter\":\"upcoming\",\"date_range\":\"2023-10-01 to 2023-10-31\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_meetings_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_meetings_example_call_tool.py deleted file mode 100644 index efa839e06..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_meetings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchHubspotMeetings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filter":"upcoming","date_range":"2023-10-01 to 2023-10-31"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_notes_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_notes_example_call_tool.js deleted file mode 100644 index 69958ba77..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_notes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchHubspotNotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"search\":\"meeting notes\",\"limit\":10}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_notes_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_notes_example_call_tool.py deleted file mode 100644 index 7aee27b4d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_notes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchHubspotNotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"search":"meeting notes","limit":10}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_objects_example_call_tool.js deleted file mode 100644 index cf73d8cf3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_objects_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchHubspotObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "object_type": "contacts", - "request_body": "{\"filter\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_objects_example_call_tool.py deleted file mode 100644 index 27105d36a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_objects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchHubspotObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'object_type': 'contacts', 'request_body': '{"filter":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_payments_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_payments_example_call_tool.js deleted file mode 100644 index f63aaeb4e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_payments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchHubspotPayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"paymentId\":\"12345\",\"amount\":100.0,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_payments_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_payments_example_call_tool.py deleted file mode 100644 index 1bf062247..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_payments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchHubspotPayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"paymentId":"12345","amount":100.0,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_products_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_products_example_call_tool.js deleted file mode 100644 index f6d47e0d6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_products_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchHubspotProducts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"query\":\"laptop\",\"limit\":10}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_products_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_products_example_call_tool.py deleted file mode 100644 index 467ad081d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_products_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchHubspotProducts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"query":"laptop","limit":10}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_subscriptions_example_call_tool.js deleted file mode 100644 index 5cc31cbd6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_subscriptions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchHubspotSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"subscriptionId\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_subscriptions_example_call_tool.py deleted file mode 100644 index d26638798..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_subscriptions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchHubspotSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"subscriptionId":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_tasks_example_call_tool.js deleted file mode 100644 index 3b2541249..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_tasks_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchHubspotTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"search_criteria\":\"follow-up tasks\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_tasks_example_call_tool.py deleted file mode 100644 index 657f196ee..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_hubspot_tasks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchHubspotTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"search_criteria":"follow-up tasks"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_invoices_example_call_tool.js deleted file mode 100644 index e072a6ce3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_invoices_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchInvoices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"customer_id\":\"12345\",\"status\":\"paid\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_invoices_example_call_tool.py deleted file mode 100644 index 4a551ee3f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_invoices_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchInvoices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"customer_id":"12345","status":"paid"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_line_items_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_line_items_example_call_tool.js deleted file mode 100644 index e486beebb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_line_items_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchLineItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"searchCriteria\":\"active\",\"limit\":10}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_line_items_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_line_items_example_call_tool.py deleted file mode 100644 index c144dfd18..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_line_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchLineItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"searchCriteria":"active","limit":10}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_order_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_order_records_example_call_tool.js deleted file mode 100644 index b0f971f87..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_order_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchOrderRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filter\":\"status:completed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_order_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_order_records_example_call_tool.py deleted file mode 100644 index 081bbd216..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_order_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchOrderRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filter":"status:completed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_partner_clients_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_partner_clients_example_call_tool.js deleted file mode 100644 index b90a36843..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_partner_clients_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchPartnerClients"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"search_criteria\":\"active_clients\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_partner_clients_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_partner_clients_example_call_tool.py deleted file mode 100644 index 03962ca70..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_partner_clients_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchPartnerClients" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"search_criteria":"active_clients"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_partner_services_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_partner_services_hubspot_example_call_tool.js deleted file mode 100644 index 465a9e2cb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_partner_services_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchPartnerServicesHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"criteria\":\"partner services\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_partner_services_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_partner_services_hubspot_example_call_tool.py deleted file mode 100644 index ab52ee4bd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_partner_services_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchPartnerServicesHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"criteria":"partner services"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_postal_mail_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_postal_mail_hubspot_example_call_tool.js deleted file mode 100644 index 27a29212b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_postal_mail_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchPostalMailHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"criteria\":\"recent_mail\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_postal_mail_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_postal_mail_hubspot_example_call_tool.py deleted file mode 100644 index 08020cd60..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_postal_mail_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchPostalMailHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"criteria":"recent_mail"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_quotes_in_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_quotes_in_hubspot_example_call_tool.js deleted file mode 100644 index df245cf1d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_quotes_in_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchQuotesInHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"criteria\":\"recent quotes\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_quotes_in_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_quotes_in_hubspot_example_call_tool.py deleted file mode 100644 index 91f83659d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_quotes_in_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchQuotesInHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"criteria":"recent quotes"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_taxes_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_taxes_example_call_tool.js deleted file mode 100644 index 737e85c7d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_taxes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchTaxes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"search_criteria\":\"tax_id:12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_taxes_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_taxes_example_call_tool.py deleted file mode 100644 index 3d386525a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_taxes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchTaxes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"search_criteria":"tax_id:12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_tickets_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_tickets_example_call_tool.js deleted file mode 100644 index 3a55a8c54..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_tickets_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SearchTickets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filter\":{\"status\":\"open\"},\"sort\":\"created_at\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_tickets_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/search_tickets_example_call_tool.py deleted file mode 100644 index d66da44be..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/search_tickets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SearchTickets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filter":{"status":"open"},"sort":"created_at"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/send_event_to_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/send_event_to_hubspot_example_call_tool.js deleted file mode 100644 index fd34ae9f7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/send_event_to_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.SendEventToHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"eventType\":\"page_view\",\"properties\":{\"url\":\"https://example.com\",\"title\":\"Example Page\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/send_event_to_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/send_event_to_hubspot_example_call_tool.py deleted file mode 100644 index 1e983c33d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/send_event_to_hubspot_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.SendEventToHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"eventType":"page_view","properties":{"url":"https://example.com","title":"Example ' - 'Page"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/translate_legacy_list_ids_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/translate_legacy_list_ids_batch_example_call_tool.js deleted file mode 100644 index 1e063897e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/translate_legacy_list_ids_batch_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.TranslateLegacyListIdsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "legacy_list_ids": [ - "legacy_id_1", - "legacy_id_2", - "legacy_id_3" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/translate_legacy_list_ids_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/translate_legacy_list_ids_batch_example_call_tool.py deleted file mode 100644 index 056724fe9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/translate_legacy_list_ids_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.TranslateLegacyListIdsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'legacy_list_ids': ['legacy_id_1', 'legacy_id_2', 'legacy_id_3'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/translate_legacy_to_new_list_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/translate_legacy_to_new_list_id_example_call_tool.js deleted file mode 100644 index c1b540897..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/translate_legacy_to_new_list_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.TranslateLegacyToNewListId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "legacy_list_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/translate_legacy_to_new_list_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/translate_legacy_to_new_list_id_example_call_tool.py deleted file mode 100644 index 65a6a2fbb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/translate_legacy_to_new_list_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.TranslateLegacyToNewListId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'legacy_list_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_calls_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_calls_example_call_tool.js deleted file mode 100644 index 333563d2e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_calls_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateBatchCalls"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"callIds\":[\"123\",\"456\"],\"updateFields\":{\"status\":\"completed\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_calls_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_calls_example_call_tool.py deleted file mode 100644 index ee93ade48..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_calls_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateBatchCalls" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"callIds":["123","456"],"updateFields":{"status":"completed"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_contacts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_contacts_example_call_tool.js deleted file mode 100644 index bfe39bd0d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_contacts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateBatchContacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"contacts\":[{\"id\":\"1\",\"properties\":{\"firstname\":\"John\",\"lastname\":\"Doe\"}},{\"id\":\"2\",\"properties\":{\"firstname\":\"Jane\",\"lastname\":\"Smith\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_contacts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_contacts_example_call_tool.py deleted file mode 100644 index 05dfb6ccf..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_contacts_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateBatchContacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"contacts":[{"id":"1","properties":{"firstname":"John","lastname":"Doe"}},{"id":"2","properties":{"firstname":"Jane","lastname":"Smith"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_emails_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_emails_example_call_tool.js deleted file mode 100644 index 75f555a0e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_emails_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateBatchEmails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"emails\":[{\"id\":\"123\",\"new_property\":\"value1\"},{\"id\":\"456\",\"new_property\":\"value2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_emails_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_emails_example_call_tool.py deleted file mode 100644 index c69c8f3a7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_emails_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateBatchEmails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"emails":[{"id":"123","new_property":"value1"},{"id":"456","new_property":"value2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_fees_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_fees_example_call_tool.js deleted file mode 100644 index 86e2bdc0c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_fees_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateBatchFees"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"fees\":[{\"id\":\"123\",\"amount\":100},{\"id\":\"456\",\"amount\":200}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_fees_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_fees_example_call_tool.py deleted file mode 100644 index c9e61f86f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_fees_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateBatchFees" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"fees":[{"id":"123","amount":100},{"id":"456","amount":200}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_goal_targets_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_goal_targets_example_call_tool.js deleted file mode 100644 index e9ff0be25..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_goal_targets_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateBatchGoalTargets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"goalTargets\":[{\"id\":\"123\",\"target\":100},{\"id\":\"456\",\"target\":200}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_goal_targets_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_goal_targets_example_call_tool.py deleted file mode 100644 index 50a8d6904..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_goal_targets_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateBatchGoalTargets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"goalTargets":[{"id":"123","target":100},{"id":"456","target":200}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_of_companies_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_of_companies_example_call_tool.js deleted file mode 100644 index 20427ec07..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_of_companies_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateBatchOfCompanies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"companies\":[{\"id\":\"123\",\"name\":\"Company A\",\"domain\":\"companya.com\"},{\"id\":\"456\",\"name\":\"Company B\",\"domain\":\"companyb.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_of_companies_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_of_companies_example_call_tool.py deleted file mode 100644 index 7ee64e0ac..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_of_companies_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateBatchOfCompanies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"companies":[{"id":"123","name":"Company ' - 'A","domain":"companya.com"},{"id":"456","name":"Company ' - 'B","domain":"companyb.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_tasks_example_call_tool.js deleted file mode 100644 index bdb33127b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_tasks_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateBatchTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"tasks\":[{\"id\":\"123\",\"status\":\"completed\"},{\"id\":\"456\",\"status\":\"in_progress\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_tasks_example_call_tool.py deleted file mode 100644 index 248d3d047..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_tasks_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateBatchTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"tasks":[{"id":"123","status":"completed"},{"id":"456","status":"in_progress"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_taxes_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_taxes_example_call_tool.js deleted file mode 100644 index 20ab5d1c8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_taxes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateBatchTaxes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"taxes\":[{\"id\":\"123\",\"rate\":0.07},{\"id\":\"456\",\"rate\":0.05}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_taxes_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_taxes_example_call_tool.py deleted file mode 100644 index 85c178fa8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_batch_taxes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateBatchTaxes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"taxes":[{"id":"123","rate":0.07},{"id":"456","rate":0.05}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_call_info_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_call_info_example_call_tool.js deleted file mode 100644 index 5553138a3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_call_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateCallInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "call_identifier": "12345", - "request_body": "{\"status\":\"completed\",\"duration\":300}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_call_info_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_call_info_example_call_tool.py deleted file mode 100644 index 9021f333c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_call_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateCallInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'call_identifier': '12345', - 'request_body': '{"status":"completed","duration":300}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_cart_properties_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_cart_properties_example_call_tool.js deleted file mode 100644 index 5d1cc9a6b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_cart_properties_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateCartProperties"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "cart_identifier": "cart_12345", - "unique_identifier_property": "cartId", - "request_body": "{\"property1\":\"value1\",\"property2\":\"value2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_cart_properties_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_cart_properties_example_call_tool.py deleted file mode 100644 index 4f3419659..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_cart_properties_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateCartProperties" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'cart_identifier': 'cart_12345', - 'unique_identifier_property': 'cartId', - 'request_body': '{"property1":"value1","property2":"value2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_carts_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_carts_batch_example_call_tool.js deleted file mode 100644 index 86b368855..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_carts_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateCartsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"carts\":[{\"id\":\"123\",\"items\":[{\"product_id\":\"abc\",\"quantity\":2}]}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_carts_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_carts_batch_example_call_tool.py deleted file mode 100644 index bb6852674..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_carts_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateCartsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"carts":[{"id":"123","items":[{"product_id":"abc","quantity":2}]}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_commerce_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_commerce_payment_example_call_tool.js deleted file mode 100644 index f745a4835..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_commerce_payment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateCommercePayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "commerce_payment_id": "12345", - "request_body": "{\"amount\":100,\"status\":\"completed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_commerce_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_commerce_payment_example_call_tool.py deleted file mode 100644 index 472de800e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_commerce_payment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateCommercePayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'commerce_payment_id': '12345', - 'request_body': '{"amount":100,"status":"completed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_commerce_payments_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_commerce_payments_batch_example_call_tool.js deleted file mode 100644 index 4f19531de..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_commerce_payments_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateCommercePaymentsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"payments\":[{\"id\":\"123\",\"amount\":100},{\"id\":\"456\",\"amount\":200}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_commerce_payments_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_commerce_payments_batch_example_call_tool.py deleted file mode 100644 index 0a096b410..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_commerce_payments_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateCommercePaymentsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"payments":[{"id":"123","amount":100},{"id":"456","amount":200}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_communication_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_communication_details_example_call_tool.js deleted file mode 100644 index 33bcf94f2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_communication_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateCommunicationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "communication_id": "12345", - "request_body": "{\"subject\":\"Updated Subject\",\"body\":\"Updated body content\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_communication_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_communication_details_example_call_tool.py deleted file mode 100644 index cec26dd60..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_communication_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateCommunicationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'communication_id': '12345', - 'request_body': '{"subject":"Updated Subject","body":"Updated body content"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_contact_information_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_contact_information_example_call_tool.js deleted file mode 100644 index 3a207940f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_contact_information_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateContactInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "contact_id": "12345", - "request_body": "{\"properties\":{\"email\":\"example@example.com\",\"phone\":\"123-456-7890\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_contact_information_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_contact_information_example_call_tool.py deleted file mode 100644 index 7cb4e46df..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_contact_information_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateContactInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'contact_id': '12345', - 'request_body': '{"properties":{"email":"example@example.com","phone":"123-456-7890"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_courses_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_courses_batch_example_call_tool.js deleted file mode 100644 index 8f2990a46..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_courses_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateCoursesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"courses\":[{\"id\":\"123\",\"name\":\"Math 101\",\"description\":\"Basic Mathematics\"},{\"id\":\"456\",\"name\":\"History 201\",\"description\":\"World History Overview\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_courses_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_courses_batch_example_call_tool.py deleted file mode 100644 index df91242c1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_courses_batch_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateCoursesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"courses":[{"id":"123","name":"Math 101","description":"Basic ' - 'Mathematics"},{"id":"456","name":"History 201","description":"World History ' - 'Overview"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_crm_object_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_crm_object_schema_example_call_tool.js deleted file mode 100644 index 5b27d7eae..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_crm_object_schema_example_call_tool.js +++ /dev/null @@ -1,49 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateCrmObjectSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type_identifier": "custom_object_123", - "clear_description": false, - "object_description": "This is a custom object for tracking user interactions.", - "object_singular_name": "Interaction", - "plural_labels": "Interactions", - "primary_display_property": "interaction_name", - "required_properties": [ - "user_id", - "timestamp" - ], - "restorable": true, - "searchable_properties": [ - "interaction_name", - "user_id" - ], - "secondary_display_properties": [ - "status", - "category" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_crm_object_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_crm_object_schema_example_call_tool.py deleted file mode 100644 index 0bcb4acc3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_crm_object_schema_example_call_tool.py +++ /dev/null @@ -1,38 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateCrmObjectSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type_identifier': 'custom_object_123', - 'clear_description': False, - 'object_description': 'This is a custom object for tracking user interactions.', - 'object_singular_name': 'Interaction', - 'plural_labels': 'Interactions', - 'primary_display_property': 'interaction_name', - 'required_properties': ['user_id', 'timestamp'], - 'restorable': True, - 'searchable_properties': ['interaction_name', 'user_id'], - 'secondary_display_properties': ['status', 'category'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_discount_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_discount_details_example_call_tool.js deleted file mode 100644 index 7bcdb4103..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_discount_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateDiscountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "discount_identifier": "12345", - "request_body": "{\"discountAmount\": 20}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_discount_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_discount_details_example_call_tool.py deleted file mode 100644 index 38f250b16..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_discount_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateDiscountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'discount_identifier': '12345', 'request_body': '{"discountAmount": 20}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_discounts_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_discounts_batch_example_call_tool.js deleted file mode 100644 index 6b954a458..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_discounts_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateDiscountsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"discounts\":[{\"id\":\"123\",\"amount\":10},{\"id\":\"456\",\"amount\":15}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_discounts_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_discounts_batch_example_call_tool.py deleted file mode 100644 index d0608088b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_discounts_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateDiscountsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"discounts":[{"id":"123","amount":10},{"id":"456","amount":15}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_email_in_hubspot_crm_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_email_in_hubspot_crm_example_call_tool.js deleted file mode 100644 index be89b17f9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_email_in_hubspot_crm_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateEmailInHubspotCrm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "email_identifier": "12345", - "request_body": "{\"subject\":\"New Subject\",\"body\":\"Updated email content\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_email_in_hubspot_crm_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_email_in_hubspot_crm_example_call_tool.py deleted file mode 100644 index 9f7055f9f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_email_in_hubspot_crm_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateEmailInHubspotCrm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'email_identifier': '12345', - 'request_body': '{"subject":"New Subject","body":"Updated email content"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_fee_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_fee_details_example_call_tool.js deleted file mode 100644 index 185ae3484..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_fee_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateFeeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "fee_identifier": "12345", - "request_body": "{\"amount\": 100, \"currency\": \"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_fee_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_fee_details_example_call_tool.py deleted file mode 100644 index 50c7df711..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_fee_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateFeeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'fee_identifier': '12345', 'request_body': '{"amount": 100, "currency": "USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_goal_target_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_goal_target_example_call_tool.js deleted file mode 100644 index 513ab0909..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_goal_target_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateGoalTarget"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "goal_target_id": "12345", - "request_body": "{\"target\":\"new_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_goal_target_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_goal_target_example_call_tool.py deleted file mode 100644 index 07fef8746..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_goal_target_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateGoalTarget" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'goal_target_id': '12345', 'request_body': '{"target":"new_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_company_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_company_example_call_tool.js deleted file mode 100644 index 40fb0c609..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_company_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateHubspotCompany"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "company_unique_identifier": "12345", - "request_body": "{\"name\":\"New Company Name\",\"address\":\"123 New St\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_company_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_company_example_call_tool.py deleted file mode 100644 index b0216dc14..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_company_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateHubspotCompany" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'company_unique_identifier': '12345', - 'request_body': '{"name":"New Company Name","address":"123 New St"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_course_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_course_example_call_tool.js deleted file mode 100644 index 41514d909..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_course_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateHubspotCourse"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "course_identifier": "12345", - "request_body": "{\"title\":\"Updated Course Title\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_course_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_course_example_call_tool.py deleted file mode 100644 index aa87da421..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_course_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateHubspotCourse" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'course_identifier': '12345', - 'request_body': '{"title":"Updated Course Title","description":"This is an updated ' - 'description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_deal_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_deal_example_call_tool.js deleted file mode 100644 index 36c31a966..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_deal_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateHubspotDeal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "deal_identifier": "12345", - "request_body": "{\"status\":\"closed-won\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_deal_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_deal_example_call_tool.py deleted file mode 100644 index c8a8c79ca..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_deal_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateHubspotDeal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'deal_identifier': '12345', 'request_body': '{"status":"closed-won"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_meeting_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_meeting_example_call_tool.js deleted file mode 100644 index 1d3c83cfb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_meeting_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateHubspotMeeting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "meeting_id": "12345", - "request_body": "{\"title\":\"Updated Meeting Title\",\"description\":\"Updated description\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_meeting_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_meeting_example_call_tool.py deleted file mode 100644 index 7399ce8ee..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_meeting_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateHubspotMeeting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'meeting_id': '12345', - 'request_body': '{"title":"Updated Meeting Title","description":"Updated description"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_note_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_note_example_call_tool.js deleted file mode 100644 index d9002ca36..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_note_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateHubspotNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "note_identifier": "12345", - "request_body": "{\"content\":\"Updated note content\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_note_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_note_example_call_tool.py deleted file mode 100644 index 6b6fc99a2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_note_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateHubspotNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'note_identifier': '12345', - 'request_body': '{"content":"Updated note content"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_object_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_object_example_call_tool.js deleted file mode 100644 index b9ee4f316..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_object_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateHubspotObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "object_type": "contacts", - "object_identifier": "12345", - "request_body": "{\"property\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_object_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_object_example_call_tool.py deleted file mode 100644 index 1396f7ba6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_object_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateHubspotObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'object_type': 'contacts', - 'object_identifier': '12345', - 'request_body': '{"property":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_objects_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_objects_batch_example_call_tool.js deleted file mode 100644 index f1ed71d66..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_objects_batch_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateHubspotObjectsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "object_type": "contacts", - "request_body": "{\"id\":123,\"properties\":{\"firstname\":\"John\",\"lastname\":\"Doe\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_objects_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_objects_batch_example_call_tool.py deleted file mode 100644 index d052b12ae..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_objects_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateHubspotObjectsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'object_type': 'contacts', - 'request_body': '{"id":123,"properties":{"firstname":"John","lastname":"Doe"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_orders_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_orders_batch_example_call_tool.js deleted file mode 100644 index 949035fc9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_orders_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateHubspotOrdersBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"orders\":[{\"id\":\"123\",\"status\":\"shipped\"},{\"id\":\"456\",\"status\":\"pending\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_orders_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_orders_batch_example_call_tool.py deleted file mode 100644 index 64e4d48e1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_orders_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateHubspotOrdersBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"orders":[{"id":"123","status":"shipped"},{"id":"456","status":"pending"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_products_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_products_batch_example_call_tool.js deleted file mode 100644 index 8e7a8394b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_products_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateHubspotProductsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"products\":[{\"id\":\"123\",\"name\":\"Product A\",\"price\":29.99},{\"id\":\"456\",\"name\":\"Product B\",\"price\":39.99}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_products_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_products_batch_example_call_tool.py deleted file mode 100644 index 3f1ae22c0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_products_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateHubspotProductsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"products":[{"id":"123","name":"Product ' - 'A","price":29.99},{"id":"456","name":"Product B","price":39.99}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_task_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_task_example_call_tool.js deleted file mode 100644 index 2b9d362f9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_task_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateHubspotTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "task_identifier": "12345", - "request_body": "{\"status\":\"completed\",\"priority\":\"high\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_task_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_task_example_call_tool.py deleted file mode 100644 index e1aaf1d81..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_task_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateHubspotTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'task_identifier': '12345', - 'request_body': '{"status":"completed","priority":"high"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_user_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_user_example_call_tool.js deleted file mode 100644 index e913985ff..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_user_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateHubspotUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_id": "12345", - "request_body": "{\"property\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_user_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_user_example_call_tool.py deleted file mode 100644 index 72b30060e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_hubspot_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateHubspotUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'user_id': '12345', 'request_body': '{"property":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_invoice_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_invoice_details_example_call_tool.js deleted file mode 100644 index 4c1304cdf..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_invoice_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateInvoiceDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "invoice_identifier": "12345", - "request_body": "{\"amount\": 250.00, \"status\": \"paid\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_invoice_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_invoice_details_example_call_tool.py deleted file mode 100644 index 6fb0b1950..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_invoice_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateInvoiceDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'invoice_identifier': '12345', - 'request_body': '{"amount": 250.00, "status": "paid"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_invoices_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_invoices_batch_example_call_tool.js deleted file mode 100644 index eea26ce16..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_invoices_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateInvoicesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"invoices\":[{\"id\":\"123\",\"amount\":100},{\"id\":\"456\",\"amount\":200}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_invoices_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_invoices_batch_example_call_tool.py deleted file mode 100644 index 7200951d7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_invoices_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateInvoicesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"invoices":[{"id":"123","amount":100},{"id":"456","amount":200}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_lead_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_lead_details_example_call_tool.js deleted file mode 100644 index ab2820294..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_lead_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateLeadDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "lead_identifier": "12345", - "request_body": "{\"email\":\"example@example.com\",\"firstName\":\"John\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_lead_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_lead_details_example_call_tool.py deleted file mode 100644 index 1efcce11a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_lead_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateLeadDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'lead_identifier': '12345', - 'request_body': '{"email":"example@example.com","firstName":"John"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_leads_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_leads_batch_example_call_tool.js deleted file mode 100644 index c355a9ffb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_leads_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateLeadsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"leads\":[{\"id\":\"123\",\"properties\":{\"status\":\"active\"}},{\"id\":\"456\",\"properties\":{\"status\":\"inactive\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_leads_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_leads_batch_example_call_tool.py deleted file mode 100644 index 71fd7711b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_leads_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateLeadsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"leads":[{"id":"123","properties":{"status":"active"}},{"id":"456","properties":{"status":"inactive"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_line_item_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_line_item_example_call_tool.js deleted file mode 100644 index 3bb8b014c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_line_item_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateLineItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "line_item_id": "12345", - "request_body": "{\"status\":\"updated\",\"amount\":150}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_line_item_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_line_item_example_call_tool.py deleted file mode 100644 index 7f500c89c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_line_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateLineItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'line_item_id': '12345', 'request_body': '{"status":"updated","amount":150}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_line_items_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_line_items_batch_example_call_tool.js deleted file mode 100644 index fc8354f00..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_line_items_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateLineItemsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"line_items\":[{\"id\":\"123\",\"property\":\"value\"},{\"id\":\"456\",\"property\":\"value2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_line_items_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_line_items_batch_example_call_tool.py deleted file mode 100644 index 8879a4ba4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_line_items_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateLineItemsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"line_items":[{"id":"123","property":"value"},{"id":"456","property":"value2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_list_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_list_memberships_example_call_tool.js deleted file mode 100644 index a8d18078f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_list_memberships_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateListMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_identifier": "12345", - "record_ids_to_add": [ - "abc123", - "def456" - ], - "record_ids_to_remove": [ - "ghi789", - "jkl012" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_list_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_list_memberships_example_call_tool.py deleted file mode 100644 index db4f9e5aa..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_list_memberships_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateListMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_identifier': '12345', - 'record_ids_to_add': ['abc123', 'def456'], - 'record_ids_to_remove': ['ghi789', 'jkl012'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_list_name_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_list_name_example_call_tool.js deleted file mode 100644 index 5f5684e34..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_list_name_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateListName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345", - "new_list_name": "Updated CRM List" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_list_name_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_list_name_example_call_tool.py deleted file mode 100644 index 39bc58055..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_list_name_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateListName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345', 'new_list_name': 'Updated CRM List' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_meetings_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_meetings_batch_example_call_tool.js deleted file mode 100644 index b2cd3a592..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_meetings_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateMeetingsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"meetings\":[{\"id\":\"123\",\"subject\":\"Team Sync\",\"start_time\":\"2023-10-01T10:00:00Z\",\"duration\":30},{\"id\":\"456\",\"subject\":\"Project Update\",\"start_time\":\"2023-10-01T11:00:00Z\",\"duration\":45}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_meetings_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_meetings_batch_example_call_tool.py deleted file mode 100644 index 7771aed5e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_meetings_batch_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateMeetingsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"meetings":[{"id":"123","subject":"Team ' - 'Sync","start_time":"2023-10-01T10:00:00Z","duration":30},{"id":"456","subject":"Project ' - 'Update","start_time":"2023-10-01T11:00:00Z","duration":45}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_messages_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_messages_batch_example_call_tool.js deleted file mode 100644 index db3f1be47..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_messages_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateMessagesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"communicationId\":\"12345\",\"properties\":{\"subject\":\"Updated Subject\",\"body\":\"New message content\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_messages_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_messages_batch_example_call_tool.py deleted file mode 100644 index fe89a92ab..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_messages_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateMessagesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"communicationId":"12345","properties":{"subject":"Updated ' - 'Subject","body":"New message content"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_crm_listings_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_crm_listings_example_call_tool.js deleted file mode 100644 index 08ffafda3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_crm_listings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateMultipleCrmListings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"listings\":[{\"id\":\"123\",\"property\":\"value1\"},{\"id\":\"456\",\"property\":\"value2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_crm_listings_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_crm_listings_example_call_tool.py deleted file mode 100644 index fc23f58ed..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_crm_listings_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateMultipleCrmListings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"listings":[{"id":"123","property":"value1"},{"id":"456","property":"value2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_deals_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_deals_example_call_tool.js deleted file mode 100644 index 3360fe29e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_deals_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateMultipleDeals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"deals\":[{\"id\":\"123\",\"properties\":{\"amount\":1000,\"stage\":\"closed_won\"}},{\"id\":\"456\",\"properties\":{\"amount\":2000,\"stage\":\"in_progress\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_deals_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_deals_example_call_tool.py deleted file mode 100644 index 71a761678..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_deals_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateMultipleDeals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"deals":[{"id":"123","properties":{"amount":1000,"stage":"closed_won"}},{"id":"456","properties":{"amount":2000,"stage":"in_progress"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_hubspot_appointments_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_hubspot_appointments_example_call_tool.js deleted file mode 100644 index 5a98f1712..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_hubspot_appointments_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateMultipleHubspotAppointments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "hubspot_object_type": "appointments", - "request_body": "{\"appointments\":[{\"id\":\"123\",\"status\":\"confirmed\"},{\"id\":\"456\",\"status\":\"rescheduled\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_hubspot_appointments_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_hubspot_appointments_example_call_tool.py deleted file mode 100644 index 0a4213b1b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_hubspot_appointments_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateMultipleHubspotAppointments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'hubspot_object_type': 'appointments', - 'request_body': '{"appointments":[{"id":"123","status":"confirmed"},{"id":"456","status":"rescheduled"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_postal_mails_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_postal_mails_example_call_tool.js deleted file mode 100644 index c42a6e787..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_postal_mails_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateMultiplePostalMails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"postalMails\":[{\"id\":\"1\",\"status\":\"delivered\"},{\"id\":\"2\",\"status\":\"in transit\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_postal_mails_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_postal_mails_example_call_tool.py deleted file mode 100644 index 1b5a8e542..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_postal_mails_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateMultiplePostalMails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"postalMails":[{"id":"1","status":"delivered"},{"id":"2","status":"in ' - 'transit"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_users_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_users_example_call_tool.js deleted file mode 100644 index 0c574111b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_users_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateMultipleUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"users\":[{\"id\":\"123\",\"properties\":{\"email\":\"user1@example.com\",\"name\":\"User One\"}},{\"id\":\"456\",\"properties\":{\"email\":\"user2@example.com\",\"name\":\"User Two\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_users_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_users_example_call_tool.py deleted file mode 100644 index 36058dbb9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_multiple_users_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateMultipleUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"users":[{"id":"123","properties":{"email":"user1@example.com","name":"User ' - 'One"}},{"id":"456","properties":{"email":"user2@example.com","name":"User ' - 'Two"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_or_create_hubspot_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_or_create_hubspot_records_example_call_tool.js deleted file mode 100644 index ec1ff61d0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_or_create_hubspot_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateOrCreateHubspotRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "crm_object_type": "contacts", - "request_body": "{\"email\":\"example@example.com\",\"firstname\":\"John\",\"lastname\":\"Doe\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_or_create_hubspot_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_or_create_hubspot_records_example_call_tool.py deleted file mode 100644 index c861e2fbb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_or_create_hubspot_records_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateOrCreateHubspotRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'crm_object_type': 'contacts', - 'request_body': '{"email":"example@example.com","firstname":"John","lastname":"Doe"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_order_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_order_details_example_call_tool.js deleted file mode 100644 index 12df05d5c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_order_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateOrderDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "order_id": "12345", - "request_body": "{\"status\":\"shipped\",\"tracking_number\":\"ABC123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_order_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_order_details_example_call_tool.py deleted file mode 100644 index 9ba138e46..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_order_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateOrderDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'order_id': '12345', - 'request_body': '{"status":"shipped","tracking_number":"ABC123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_client_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_client_example_call_tool.js deleted file mode 100644 index c7e658b56..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_client_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdatePartnerClient"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "partner_client_id": "12345", - "identifier_property": "email", - "request_body": "{\"name\":\"New Partner Name\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_client_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_client_example_call_tool.py deleted file mode 100644 index 7cb0d8dac..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_client_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdatePartnerClient" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'partner_client_id': '12345', - 'identifier_property': 'email', - 'request_body': '{"name":"New Partner Name","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_clients_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_clients_batch_example_call_tool.js deleted file mode 100644 index 0573e89c0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_clients_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdatePartnerClientsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"clients\":[{\"id\":\"123\",\"name\":\"Client A\",\"status\":\"active\"},{\"id\":\"456\",\"name\":\"Client B\",\"status\":\"inactive\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_clients_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_clients_batch_example_call_tool.py deleted file mode 100644 index 49b61d3af..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_clients_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdatePartnerClientsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"clients":[{"id":"123","name":"Client ' - 'A","status":"active"},{"id":"456","name":"Client B","status":"inactive"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_service_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_service_example_call_tool.js deleted file mode 100644 index f9bceff87..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_service_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdatePartnerService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "partner_service_id": "12345", - "request_body": "{\"name\":\"Updated Service\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_service_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_service_example_call_tool.py deleted file mode 100644 index cc3cf27ae..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_service_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdatePartnerService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'partner_service_id': '12345', - 'request_body': '{"name":"Updated Service","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_services_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_services_batch_example_call_tool.js deleted file mode 100644 index 326d9d01f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_services_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdatePartnerServicesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"services\":[{\"id\":\"123\",\"status\":\"active\"},{\"id\":\"456\",\"status\":\"inactive\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_services_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_services_batch_example_call_tool.py deleted file mode 100644 index 4b9b22deb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_partner_services_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdatePartnerServicesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"services":[{"id":"123","status":"active"},{"id":"456","status":"inactive"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_pipeline_in_crm_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_pipeline_in_crm_example_call_tool.js deleted file mode 100644 index 5081ecfde..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_pipeline_in_crm_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdatePipelineInCrm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "crm_object_type": "deals", - "pipeline_identifier": "pipeline_123", - "pipeline_label": "New Sales Pipeline" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_pipeline_in_crm_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_pipeline_in_crm_example_call_tool.py deleted file mode 100644 index 62b28281d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_pipeline_in_crm_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdatePipelineInCrm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'crm_object_type': 'deals', - 'pipeline_identifier': 'pipeline_123', - 'pipeline_label': 'New Sales Pipeline' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_pipeline_stage_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_pipeline_stage_example_call_tool.js deleted file mode 100644 index 7e378f3ee..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_pipeline_stage_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdatePipelineStage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "pipeline_object_type": "deals", - "pipeline_id": "pipeline_123", - "stage_id": "stage_456", - "request_body": "{\"name\":\"New Stage Name\",\"order\":2}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_pipeline_stage_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_pipeline_stage_example_call_tool.py deleted file mode 100644 index 08fe2d2eb..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_pipeline_stage_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdatePipelineStage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'pipeline_object_type': 'deals', - 'pipeline_id': 'pipeline_123', - 'stage_id': 'stage_456', - 'request_body': '{"name":"New Stage Name","order":2}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_postal_mail_record_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_postal_mail_record_example_call_tool.js deleted file mode 100644 index 23d977f94..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_postal_mail_record_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdatePostalMailRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "postal_mail_id": "12345", - "property_identifier": "status", - "request_body": "{\"status\":\"delivered\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_postal_mail_record_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_postal_mail_record_example_call_tool.py deleted file mode 100644 index d202618d2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_postal_mail_record_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdatePostalMailRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'postal_mail_id': '12345', - 'property_identifier': 'status', - 'request_body': '{"status":"delivered"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_product_info_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_product_info_example_call_tool.js deleted file mode 100644 index 0cc3560b2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_product_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateProductInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "product_id": "12345", - "request_body": "{\"name\":\"New Product Name\",\"price\":29.99}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_product_info_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_product_info_example_call_tool.py deleted file mode 100644 index a39e820c2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_product_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateProductInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'product_id': '12345', - 'request_body': '{"name":"New Product Name","price":29.99}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_property_group_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_property_group_example_call_tool.js deleted file mode 100644 index 09029acec..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_property_group_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdatePropertyGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_type": "contacts", - "property_group_name": "Contact Info", - "property_group_display_order": 1, - "property_group_label": "Contact Details" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_property_group_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_property_group_example_call_tool.py deleted file mode 100644 index aabc7f9a5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_property_group_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdatePropertyGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_type': 'contacts', - 'property_group_name': 'Contact Info', - 'property_group_display_order': 1, - 'property_group_label': 'Contact Details' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_property_value_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_property_value_example_call_tool.js deleted file mode 100644 index da6110243..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_property_value_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdatePropertyValue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "crm_object_type": "contacts", - "property_identifier": "email", - "request_body": "{\"value\":\"new_email@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_property_value_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_property_value_example_call_tool.py deleted file mode 100644 index ad07a962c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_property_value_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdatePropertyValue" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'crm_object_type': 'contacts', - 'property_identifier': 'email', - 'request_body': '{"value":"new_email@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_quote_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_quote_batch_example_call_tool.js deleted file mode 100644 index c62a0d347..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_quote_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateQuoteBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"quotes\":[{\"id\":\"123\",\"amount\":250.00},{\"id\":\"456\",\"amount\":300.00}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_quote_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_quote_batch_example_call_tool.py deleted file mode 100644 index 1612ae936..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_quote_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateQuoteBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"quotes":[{"id":"123","amount":250.00},{"id":"456","amount":300.00}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_quote_information_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_quote_information_example_call_tool.js deleted file mode 100644 index 682b9d582..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_quote_information_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateQuoteInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "quote_identifier": "12345", - "request_body": "{\"amount\": 5000, \"status\": \"approved\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_quote_information_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_quote_information_example_call_tool.py deleted file mode 100644 index d954027e4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_quote_information_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateQuoteInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'quote_identifier': '12345', - 'request_body': '{"amount": 5000, "status": "approved"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_services_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_services_batch_example_call_tool.js deleted file mode 100644 index 2ba0eb792..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_services_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateServicesBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"records\":[{\"id\":\"123\",\"property\":\"value\"},{\"id\":\"456\",\"property\":\"value2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_services_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_services_batch_example_call_tool.py deleted file mode 100644 index 1d8dbfa4e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_services_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateServicesBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"records":[{"id":"123","property":"value"},{"id":"456","property":"value2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_subscription_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_subscription_batch_example_call_tool.js deleted file mode 100644 index ab381482c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_subscription_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateSubscriptionBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"subscriptions\":[{\"id\":\"123\",\"property\":\"value1\"},{\"id\":\"456\",\"property\":\"value2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_subscription_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_subscription_batch_example_call_tool.py deleted file mode 100644 index 6168e5e08..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_subscription_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateSubscriptionBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"subscriptions":[{"id":"123","property":"value1"},{"id":"456","property":"value2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_subscription_example_call_tool.js deleted file mode 100644 index 8dc3a31c2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_subscription_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "subscription_id": "12345", - "request_body": "{\"status\":\"active\",\"plan\":\"premium\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_subscription_example_call_tool.py deleted file mode 100644 index cc7c80bb0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_subscription_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'subscription_id': '12345', - 'request_body': '{"status":"active","plan":"premium"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_tax_object_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_tax_object_example_call_tool.js deleted file mode 100644 index 23aa388c7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_tax_object_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateTaxObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "tax_object_identifier": "12345", - "request_body": "{\"property1\":\"value1\",\"property2\":\"value2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_tax_object_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_tax_object_example_call_tool.py deleted file mode 100644 index 8c21a2d96..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_tax_object_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateTaxObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'tax_object_identifier': '12345', - 'request_body': '{"property1":"value1","property2":"value2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_ticket_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_ticket_batch_example_call_tool.js deleted file mode 100644 index b1565f51b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_ticket_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateTicketBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"ticket_ids\":[\"123\",\"456\"],\"properties\":{\"status\":\"closed\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_ticket_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_ticket_batch_example_call_tool.py deleted file mode 100644 index 98eeb8159..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_ticket_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateTicketBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"ticket_ids":["123","456"],"properties":{"status":"closed"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_ticket_info_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_ticket_info_example_call_tool.js deleted file mode 100644 index 13db0dcf9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_ticket_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpdateTicketInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "ticket_id": "12345", - "request_body": "{\"status\":\"resolved\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_ticket_info_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/update_ticket_info_example_call_tool.py deleted file mode 100644 index cd5a790c4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/update_ticket_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpdateTicketInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'ticket_id': '12345', 'request_body': '{"status":"resolved"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upload_call_transcripts_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upload_call_transcripts_example_call_tool.js deleted file mode 100644 index 5d8359095..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upload_call_transcripts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UploadCallTranscripts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"transcript\":\"[call_transcript]\",\"call_id\":\"12345\",\"contact_id\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upload_call_transcripts_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upload_call_transcripts_example_call_tool.py deleted file mode 100644 index 3e5cf699f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upload_call_transcripts_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UploadCallTranscripts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"transcript":"[call_transcript]","call_id":"12345","contact_id":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_call_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_call_records_example_call_tool.js deleted file mode 100644 index 56552209e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_call_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertCallRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"idProperty\":\"callId\",\"records\":[{\"callId\":\"12345\",\"duration\":300,\"contactId\":\"67890\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_call_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_call_records_example_call_tool.py deleted file mode 100644 index 8f99e45de..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_call_records_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertCallRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"idProperty":"callId","records":[{"callId":"12345","duration":300,"contactId":"67890"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_cart_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_cart_records_example_call_tool.js deleted file mode 100644 index 3c1f979ae..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_cart_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertCartRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"idProperty\":\"cartId\",\"items\":[{\"productId\":\"123\",\"quantity\":2},{\"productId\":\"456\",\"quantity\":1}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_cart_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_cart_records_example_call_tool.py deleted file mode 100644 index def342504..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_cart_records_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertCartRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"idProperty":"cartId","items":[{"productId":"123","quantity":2},{"productId":"456","quantity":1}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_commerce_payments_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_commerce_payments_example_call_tool.js deleted file mode 100644 index 438189a80..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_commerce_payments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertCommercePayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"idProperty\":\"paymentId\",\"amount\":100,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_commerce_payments_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_commerce_payments_example_call_tool.py deleted file mode 100644 index af97f163b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_commerce_payments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertCommercePayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"idProperty":"paymentId","amount":100,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_communications_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_communications_records_example_call_tool.js deleted file mode 100644 index c0b6f0541..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_communications_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertCommunicationsRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"records\":[{\"id\":\"1\",\"type\":\"email\",\"content\":\"Hello World\"},{\"id\":\"2\",\"type\":\"call\",\"content\":\"Follow up on project\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_communications_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_communications_records_example_call_tool.py deleted file mode 100644 index 4e11a15ad..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_communications_records_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertCommunicationsRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"records":[{"id":"1","type":"email","content":"Hello ' - 'World"},{"id":"2","type":"call","content":"Follow up on project"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_contact_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_contact_batch_example_call_tool.js deleted file mode 100644 index d23b1b345..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_contact_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertContactBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"contacts\":[{\"email\":\"john.doe@example.com\",\"firstName\":\"John\",\"lastName\":\"Doe\"},{\"email\":\"jane.smith@example.com\",\"firstName\":\"Jane\",\"lastName\":\"Smith\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_contact_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_contact_batch_example_call_tool.py deleted file mode 100644 index f59cfd3e9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_contact_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertContactBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"contacts":[{"email":"john.doe@example.com","firstName":"John","lastName":"Doe"},{"email":"jane.smith@example.com","firstName":"Jane","lastName":"Smith"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_crm_tickets_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_crm_tickets_example_call_tool.js deleted file mode 100644 index e2372a3d2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_crm_tickets_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertCrmTickets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"tickets\":[{\"id\":\"123\",\"subject\":\"Issue with login\",\"status\":\"open\"},{\"id\":\"456\",\"subject\":\"Payment not processed\",\"status\":\"closed\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_crm_tickets_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_crm_tickets_example_call_tool.py deleted file mode 100644 index eb8b1470f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_crm_tickets_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertCrmTickets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"tickets":[{"id":"123","subject":"Issue with ' - 'login","status":"open"},{"id":"456","subject":"Payment not ' - 'processed","status":"closed"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_discount_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_discount_records_example_call_tool.js deleted file mode 100644 index 63ecaf77a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_discount_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertDiscountRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"idProperty\":\"discountId\",\"discountValue\":20,\"description\":\"Seasonal discount\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_discount_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_discount_records_example_call_tool.py deleted file mode 100644 index 499f9887d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_discount_records_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertDiscountRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"idProperty":"discountId","discountValue":20,"description":"Seasonal ' - 'discount"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_goal_targets_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_goal_targets_example_call_tool.js deleted file mode 100644 index 6ee0e9679..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_goal_targets_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertGoalTargets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"goalId\":\"12345\",\"targetValue\":100}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_goal_targets_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_goal_targets_example_call_tool.py deleted file mode 100644 index a55984bf2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_goal_targets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertGoalTargets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"goalId":"12345","targetValue":100}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_fees_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_fees_example_call_tool.js deleted file mode 100644 index 35b287363..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_fees_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertHubspotFees"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"idProperty\":\"feeId\",\"amount\":100,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_fees_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_fees_example_call_tool.py deleted file mode 100644 index 0b4d11427..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_fees_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertHubspotFees" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"idProperty":"feeId","amount":100,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_invoices_example_call_tool.js deleted file mode 100644 index 9ff55b99b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_invoices_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertHubspotInvoices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"invoices\":[{\"id\":\"123\",\"amount\":100.0,\"currency\":\"USD\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_invoices_example_call_tool.py deleted file mode 100644 index 439344f55..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_invoices_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertHubspotInvoices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"invoices":[{"id":"123","amount":100.0,"currency":"USD"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_products_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_products_batch_example_call_tool.js deleted file mode 100644 index 0d7df39f7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_products_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertHubspotProductsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"products\":[{\"id\":\"123\",\"name\":\"Product A\",\"price\":29.99},{\"id\":\"456\",\"name\":\"Product B\",\"price\":39.99}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_products_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_products_batch_example_call_tool.py deleted file mode 100644 index 180e9040f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_products_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertHubspotProductsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"products":[{"id":"123","name":"Product ' - 'A","price":29.99},{"id":"456","name":"Product B","price":39.99}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_records_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_records_example_call_tool.js deleted file mode 100644 index a2a0deec8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertHubspotRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "object_type": "contacts", - "request_body": "{\"email\":\"example@example.com\",\"firstname\":\"John\",\"lastname\":\"Doe\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_records_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_records_example_call_tool.py deleted file mode 100644 index ef294b0a9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_records_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertHubspotRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'object_type': 'contacts', - 'request_body': '{"email":"example@example.com","firstname":"John","lastname":"Doe"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_tasks_example_call_tool.js deleted file mode 100644 index d852f5207..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_tasks_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertHubspotTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"idProperty\":\"task_id\",\"taskDetails\":{\"title\":\"Follow up with client\",\"dueDate\":\"2023-10-30\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_tasks_example_call_tool.py deleted file mode 100644 index 8e8ba1b47..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_tasks_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertHubspotTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"idProperty":"task_id","taskDetails":{"title":"Follow up with ' - 'client","dueDate":"2023-10-30"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_users_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_users_example_call_tool.js deleted file mode 100644 index 23b62f1ca..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_users_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertHubspotUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"idProperty\":\"email\",\"properties\":{\"name\":\"John Doe\",\"role\":\"Developer\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_users_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_users_example_call_tool.py deleted file mode 100644 index 74069358d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_hubspot_users_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertHubspotUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"idProperty":"email","properties":{"name":"John Doe","role":"Developer"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_line_items_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_line_items_batch_example_call_tool.js deleted file mode 100644 index 971434cbe..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_line_items_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertLineItemsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"lineItems\":[{\"id\":\"item1\",\"quantity\":2},{\"id\":\"item2\",\"quantity\":5}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_line_items_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_line_items_batch_example_call_tool.py deleted file mode 100644 index 7cc2dbcd8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_line_items_batch_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertLineItemsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"lineItems":[{"id":"item1","quantity":2},{"id":"item2","quantity":5}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_meetings_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_meetings_example_call_tool.js deleted file mode 100644 index 2978b9dca..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_meetings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertMeetings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"meetingId\":\"12345\",\"title\":\"Project Update\",\"date\":\"2023-10-01T10:00:00Z\",\"participants\":[\"alice@example.com\",\"bob@example.com\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_meetings_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_meetings_example_call_tool.py deleted file mode 100644 index 97f08e5d5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_meetings_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertMeetings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"meetingId":"12345","title":"Project ' - 'Update","date":"2023-10-01T10:00:00Z","participants":["alice@example.com","bob@example.com"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_notes_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_notes_hubspot_example_call_tool.js deleted file mode 100644 index 41046bf2f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_notes_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertNotesHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"idProperty\":\"noteId\",\"content\":\"This is a sample note.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_notes_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_notes_hubspot_example_call_tool.py deleted file mode 100644 index 0bf5a21e6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_notes_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertNotesHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"idProperty":"noteId","content":"This is a sample note."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_orders_in_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_orders_in_hubspot_example_call_tool.js deleted file mode 100644 index 91e397832..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_orders_in_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertOrdersInHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"orders\":[{\"id\":\"123\",\"amount\":250},{\"id\":\"456\",\"amount\":150}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_orders_in_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_orders_in_hubspot_example_call_tool.py deleted file mode 100644 index 45ffc4db2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_orders_in_hubspot_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertOrdersInHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"orders":[{"id":"123","amount":250},{"id":"456","amount":150}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_postal_mail_in_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_postal_mail_in_hubspot_example_call_tool.js deleted file mode 100644 index 9bcb95156..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_postal_mail_in_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertPostalMailInHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"idProperty\":\"12345\",\"mailType\":\"letter\",\"recipient\":\"John Doe\",\"address\":\"123 Main St, Anytown, USA\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_postal_mail_in_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_postal_mail_in_hubspot_example_call_tool.py deleted file mode 100644 index 30a931605..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_postal_mail_in_hubspot_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertPostalMailInHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"idProperty":"12345","mailType":"letter","recipient":"John ' - 'Doe","address":"123 Main St, Anytown, USA"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_subscriptions_in_hubspot_crm_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_subscriptions_in_hubspot_crm_example_call_tool.js deleted file mode 100644 index 388637335..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_subscriptions_in_hubspot_crm_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotCrmApi.UpsertSubscriptionsInHubspotCrm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"subscriptions\":[{\"email\":\"test@example.com\",\"status\":\"active\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_subscriptions_in_hubspot_crm_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_subscriptions_in_hubspot_crm_example_call_tool.py deleted file mode 100644 index 4757e8005..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_crm_api/upsert_subscriptions_in_hubspot_crm_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotCrmApi.UpsertSubscriptionsInHubspotCrm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"subscriptions":[{"email":"test@example.com","status":"active"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/create_custom_event_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_events_api/create_custom_event_definition_example_call_tool.js deleted file mode 100644 index bf5175b3e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/create_custom_event_definition_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotEventsApi.CreateCustomEventDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"eventName\":\"custom_event\",\"properties\":{\"property1\":\"value1\",\"property2\":\"value2\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/create_custom_event_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_events_api/create_custom_event_definition_example_call_tool.py deleted file mode 100644 index 7e0614fa1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/create_custom_event_definition_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotEventsApi.CreateCustomEventDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"eventName":"custom_event","properties":{"property1":"value1","property2":"value2"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/create_event_property_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_events_api/create_event_property_example_call_tool.js deleted file mode 100644 index 609e98168..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/create_event_property_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotEventsApi.CreateEventProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "custom_event_internal_name": "user_signup", - "request_body": "{\"property_name\":\"signup_source\",\"property_type\":\"string\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/create_event_property_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_events_api/create_event_property_example_call_tool.py deleted file mode 100644 index 1b7fccb82..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/create_event_property_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotEventsApi.CreateEventProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'custom_event_internal_name': 'user_signup', - 'request_body': '{"property_name":"signup_source","property_type":"string"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/delete_custom_event_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_events_api/delete_custom_event_definition_example_call_tool.js deleted file mode 100644 index f62daf857..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/delete_custom_event_definition_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotEventsApi.DeleteCustomEventDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_name": "UserSignup" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/delete_custom_event_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_events_api/delete_custom_event_definition_example_call_tool.py deleted file mode 100644 index b9163992c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/delete_custom_event_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotEventsApi.DeleteCustomEventDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_name': 'UserSignup' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/delete_custom_event_property_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_events_api/delete_custom_event_property_example_call_tool.js deleted file mode 100644 index ff1b165b8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/delete_custom_event_property_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotEventsApi.DeleteCustomEventProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_event_internal_name": "user_signup", - "property_internal_name": "signup_source" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/delete_custom_event_property_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_events_api/delete_custom_event_property_example_call_tool.py deleted file mode 100644 index 15b6949ee..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/delete_custom_event_property_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotEventsApi.DeleteCustomEventProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_event_internal_name': 'user_signup', 'property_internal_name': 'signup_source' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/fetch_event_definition_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_events_api/fetch_event_definition_by_name_example_call_tool.js deleted file mode 100644 index e5ff3e3fa..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/fetch_event_definition_by_name_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotEventsApi.FetchEventDefinitionByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_name": "UserSignup" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/fetch_event_definition_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_events_api/fetch_event_definition_by_name_example_call_tool.py deleted file mode 100644 index f65b932c3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/fetch_event_definition_by_name_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotEventsApi.FetchEventDefinitionByName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_name': 'UserSignup' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/list_event_types_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_events_api/list_event_types_example_call_tool.js deleted file mode 100644 index 1c1b42778..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/list_event_types_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotEventsApi.ListEventTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/list_event_types_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_events_api/list_event_types_example_call_tool.py deleted file mode 100644 index 46104026f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/list_event_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotEventsApi.ListEventTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/retrieve_custom_event_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_events_api/retrieve_custom_event_definitions_example_call_tool.js deleted file mode 100644 index d9210d6fe..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/retrieve_custom_event_definitions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotEventsApi.RetrieveCustomEventDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_name_search_string": "purchase", - "include_event_properties": true, - "results_per_page_limit": 10, - "sort_order": "ASC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/retrieve_custom_event_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_events_api/retrieve_custom_event_definitions_example_call_tool.py deleted file mode 100644 index dfa845f45..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/retrieve_custom_event_definitions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotEventsApi.RetrieveCustomEventDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_name_search_string': 'purchase', - 'include_event_properties': True, - 'results_per_page_limit': 10, - 'sort_order': 'ASC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/retrieve_event_completions_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_events_api/retrieve_event_completions_example_call_tool.js deleted file mode 100644 index 520304909..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/retrieve_event_completions_example_call_tool.js +++ /dev/null @@ -1,49 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotEventsApi.RetrieveEventCompletions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "crm_object_id": 12345, - "crm_object_type": "contact", - "event_instance_ids": [ - 1, - 2, - 3 - ], - "event_property_filter": { - "hs_city": "portland" - }, - "event_type_name": "webinar", - "filter_events_occurred_before": "2023-12-31T23:59:59Z", - "max_results_per_page": 10, - "sort_direction": [ - "DESCENDING" - ], - "unique_identifier_property": { - "email": "example@domain.com" - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/retrieve_event_completions_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_events_api/retrieve_event_completions_example_call_tool.py deleted file mode 100644 index 4165b5d33..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/retrieve_event_completions_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotEventsApi.RetrieveEventCompletions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'crm_object_id': 12345, - 'crm_object_type': 'contact', - 'event_instance_ids': [1, 2, 3], - 'event_property_filter': {'hs_city': 'portland'}, - 'event_type_name': 'webinar', - 'filter_events_occurred_before': '2023-12-31T23:59:59Z', - 'max_results_per_page': 10, - 'sort_direction': ['DESCENDING'], - 'unique_identifier_property': {'email': 'example@domain.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/send_batch_events_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_events_api/send_batch_events_example_call_tool.js deleted file mode 100644 index da31dc89b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/send_batch_events_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotEventsApi.SendBatchEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"events\":[{\"eventType\":\"page_view\",\"timestamp\":\"2023-10-01T12:00:00Z\"},{\"eventType\":\"button_click\",\"timestamp\":\"2023-10-01T12:01:00Z\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/send_batch_events_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_events_api/send_batch_events_example_call_tool.py deleted file mode 100644 index af0c2e913..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/send_batch_events_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotEventsApi.SendBatchEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"events":[{"eventType":"page_view","timestamp":"2023-10-01T12:00:00Z"},{"eventType":"button_click","timestamp":"2023-10-01T12:01:00Z"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/send_event_data_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_events_api/send_event_data_example_call_tool.js deleted file mode 100644 index d670bf327..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/send_event_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotEventsApi.SendEventData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event\":\"user_signup\",\"timestamp\":\"2023-10-01T12:00:00Z\",\"user_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/send_event_data_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_events_api/send_event_data_example_call_tool.py deleted file mode 100644 index ab56b5e3a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/send_event_data_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotEventsApi.SendEventData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"event":"user_signup","timestamp":"2023-10-01T12:00:00Z","user_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/update_custom_event_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_events_api/update_custom_event_definition_example_call_tool.js deleted file mode 100644 index d0b4fd231..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/update_custom_event_definition_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotEventsApi.UpdateCustomEventDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "internal_event_name": "user_signup", - "event_description": "Triggered when a user signs up for the service.", - "event_label": "User Signup Event" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/update_custom_event_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_events_api/update_custom_event_definition_example_call_tool.py deleted file mode 100644 index 834ab1790..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/update_custom_event_definition_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotEventsApi.UpdateCustomEventDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'internal_event_name': 'user_signup', - 'event_description': 'Triggered when a user signs up for the service.', - 'event_label': 'User Signup Event' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/update_event_property_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_events_api/update_event_property_example_call_tool.js deleted file mode 100644 index 4632ff7c5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/update_event_property_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotEventsApi.UpdateEventProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "custom_event_name": "user_signup", - "property_name_to_update": "email", - "request_body": "{\"new_value\":\"example@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_events_api/update_event_property_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_events_api/update_event_property_example_call_tool.py deleted file mode 100644 index daa0347ff..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_events_api/update_event_property_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotEventsApi.UpdateEventProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'custom_event_name': 'user_signup', - 'property_name_to_update': 'email', - 'request_body': '{"new_value":"example@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/add_campaign_budget_item_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/add_campaign_budget_item_example_call_tool.js deleted file mode 100644 index 7635b14b4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/add_campaign_budget_item_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.AddCampaignBudgetItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "budget_amount": 1000, - "budget_item_name": "Social Media Ads", - "budget_item_order": 1, - "campaign_id": "12345", - "budget_item_description": "Budget for Facebook and Instagram ads." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/add_campaign_budget_item_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/add_campaign_budget_item_example_call_tool.py deleted file mode 100644 index 665200f90..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/add_campaign_budget_item_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.AddCampaignBudgetItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'budget_amount': 1000, - 'budget_item_name': 'Social Media Ads', - 'budget_item_order': 1, - 'campaign_id': '12345', - 'budget_item_description': 'Budget for Facebook and Instagram ads.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/archive_campaigns_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/archive_campaigns_batch_example_call_tool.js deleted file mode 100644 index 0135474f0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/archive_campaigns_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.ArchiveCampaignsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"campaign_ids\":[\"123\",\"456\",\"789\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/archive_campaigns_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/archive_campaigns_batch_example_call_tool.py deleted file mode 100644 index 44dbb73ff..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/archive_campaigns_batch_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.ArchiveCampaignsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"campaign_ids":["123","456","789"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/archive_marketing_form_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/archive_marketing_form_example_call_tool.js deleted file mode 100644 index d2eacd54a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/archive_marketing_form_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.ArchiveMarketingForm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "form_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/archive_marketing_form_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/archive_marketing_form_example_call_tool.py deleted file mode 100644 index 262e8692f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/archive_marketing_form_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.ArchiveMarketingForm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'form_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/associate_asset_with_campaign_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/associate_asset_with_campaign_example_call_tool.js deleted file mode 100644 index dec548d24..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/associate_asset_with_campaign_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.AssociateAssetWithCampaign"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_id": "12345", - "asset_type": "FORM", - "campaign_unique_identifier": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/associate_asset_with_campaign_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/associate_asset_with_campaign_example_call_tool.py deleted file mode 100644 index 2c6938471..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/associate_asset_with_campaign_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.AssociateAssetWithCampaign" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_id': '12345', - 'asset_type': 'FORM', - 'campaign_unique_identifier': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/associate_list_with_marketing_event_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/associate_list_with_marketing_event_example_call_tool.js deleted file mode 100644 index e335ad15e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/associate_list_with_marketing_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.AssociateListWithMarketingEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345", - "marketing_event_id": "event_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/associate_list_with_marketing_event_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/associate_list_with_marketing_event_example_call_tool.py deleted file mode 100644 index 8877238ff..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/associate_list_with_marketing_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.AssociateListWithMarketingEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345', 'marketing_event_id': 'event_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/cancel_marketing_event_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/cancel_marketing_event_example_call_tool.js deleted file mode 100644 index 000c1441b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/cancel_marketing_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.CancelMarketingEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "external_account_id": "12345", - "external_event_id": "event_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/cancel_marketing_event_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/cancel_marketing_event_example_call_tool.py deleted file mode 100644 index 67aa11c79..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/cancel_marketing_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.CancelMarketingEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'external_account_id': '12345', 'external_event_id': 'event_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/clone_hubspot_email_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/clone_hubspot_email_example_call_tool.js deleted file mode 100644 index f12387d15..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/clone_hubspot_email_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.CloneHubspotEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "original_email_id": "12345", - "cloned_email_name": "Spring Sale Announcement", - "email_language": "en" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/clone_hubspot_email_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/clone_hubspot_email_example_call_tool.py deleted file mode 100644 index 1216539e4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/clone_hubspot_email_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.CloneHubspotEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'original_email_id': '12345', - 'cloned_email_name': 'Spring Sale Announcement', - 'email_language': 'en' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_ab_test_email_variation_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_ab_test_email_variation_example_call_tool.js deleted file mode 100644 index 216589898..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_ab_test_email_variation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.CreateAbTestEmailVariation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_content_id": "12345", - "variation_name": "Subject Line Test" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_ab_test_email_variation_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_ab_test_email_variation_example_call_tool.py deleted file mode 100644 index cd8e518b3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_ab_test_email_variation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.CreateAbTestEmailVariation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_content_id': '12345', 'variation_name': 'Subject Line Test' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_campaign_spend_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_campaign_spend_example_call_tool.js deleted file mode 100644 index 1f6293202..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_campaign_spend_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.CreateCampaignSpend"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": "12345", - "spend_amount": 1500, - "spend_item_name": "Social Media Ads", - "spend_item_order": 1, - "spend_description": "Advertising on social media platforms" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_campaign_spend_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_campaign_spend_example_call_tool.py deleted file mode 100644 index e7b36e2a9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_campaign_spend_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.CreateCampaignSpend" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': '12345', - 'spend_amount': 1500, - 'spend_item_name': 'Social Media Ads', - 'spend_item_order': 1, - 'spend_description': 'Advertising on social media platforms' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_campaign_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_campaign_batch_example_call_tool.js deleted file mode 100644 index 375a93984..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_campaign_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.CreateMarketingCampaignBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"campaigns\":[{\"name\":\"Campaign 1\",\"description\":\"Description for campaign 1\"},{\"name\":\"Campaign 2\",\"description\":\"Description for campaign 2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_campaign_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_campaign_batch_example_call_tool.py deleted file mode 100644 index ccafdd545..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_campaign_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.CreateMarketingCampaignBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"campaigns":[{"name":"Campaign 1","description":"Description for campaign ' - '1"},{"name":"Campaign 2","description":"Description for campaign 2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_campaign_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_campaign_example_call_tool.js deleted file mode 100644 index 80b488fef..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_campaign_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.CreateMarketingCampaign"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"campaignName\":\"Summer Sale\",\"budget\":1000,\"targetAudience\":\"young adults\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_campaign_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_campaign_example_call_tool.py deleted file mode 100644 index 7c44a662e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_campaign_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.CreateMarketingCampaign" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"campaignName":"Summer Sale","budget":1000,"targetAudience":"young adults"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_email_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_email_example_call_tool.js deleted file mode 100644 index d6e016938..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_email_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.CreateMarketingEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"subject\":\"Spring Sale\",\"body\":\"Join us for our Spring Sale!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_email_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_email_example_call_tool.py deleted file mode 100644 index e159fd644..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_email_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.CreateMarketingEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"subject":"Spring Sale","body":"Join us for our Spring Sale!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_event_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_event_example_call_tool.js deleted file mode 100644 index 427c56277..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.CreateMarketingEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"eventName\":\"Product Launch\",\"eventDate\":\"2023-11-01\",\"location\":\"Online\",\"description\":\"Launch of the new product line.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_event_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_event_example_call_tool.py deleted file mode 100644 index 53be45a37..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_event_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.CreateMarketingEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"eventName":"Product ' - 'Launch","eventDate":"2023-11-01","location":"Online","description":"Launch of ' - 'the new product line."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_form_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_form_example_call_tool.js deleted file mode 100644 index f44ee174d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_form_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.CreateMarketingForm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"formName\":\"Contact Us\",\"fields\":[{\"label\":\"Name\",\"type\":\"text\"},{\"label\":\"Email\",\"type\":\"email\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_form_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_form_example_call_tool.py deleted file mode 100644 index f8046ecd4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_marketing_form_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.CreateMarketingForm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"formName":"Contact ' - 'Us","fields":[{"label":"Name","type":"text"},{"label":"Email","type":"email"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_smtp_api_token_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_smtp_api_token_example_call_tool.js deleted file mode 100644 index c310d9221..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_smtp_api_token_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.CreateSmtpApiToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_name": "Holiday Sale", - "create_contact_for_recipients": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_smtp_api_token_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_smtp_api_token_example_call_tool.py deleted file mode 100644 index 6413a5878..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/create_smtp_api_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.CreateSmtpApiToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_name': 'Holiday Sale', 'create_contact_for_recipients': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_campaign_budget_item_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_campaign_budget_item_example_call_tool.js deleted file mode 100644 index adec18d4c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_campaign_budget_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.DeleteCampaignBudgetItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "budget_item_id": 12345, - "campaign_guid": "abc-123-def-456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_campaign_budget_item_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_campaign_budget_item_example_call_tool.py deleted file mode 100644 index 1a3106dd5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_campaign_budget_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.DeleteCampaignBudgetItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'budget_item_id': 12345, 'campaign_guid': 'abc-123-def-456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_campaign_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_campaign_example_call_tool.js deleted file mode 100644 index 2914076dd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_campaign_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.DeleteMarketingCampaign"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_guid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_campaign_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_campaign_example_call_tool.py deleted file mode 100644 index 5024e235e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_campaign_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.DeleteMarketingCampaign" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_guid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_email_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_email_example_call_tool.js deleted file mode 100644 index f2817e641..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_email_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.DeleteMarketingEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_email_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_email_example_call_tool.py deleted file mode 100644 index 97bd70736..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.DeleteMarketingEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_event_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_event_example_call_tool.js deleted file mode 100644 index 98b644c13..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.DeleteMarketingEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "external_account_id": "12345", - "marketing_event_id": "event_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_event_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_event_example_call_tool.py deleted file mode 100644 index 1c1b7f8e1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.DeleteMarketingEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'external_account_id': '12345', 'marketing_event_id': 'event_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_events_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_events_example_call_tool.js deleted file mode 100644 index 76a29fd11..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_events_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.DeleteMarketingEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"object_ids\":[\"event1\",\"event2\",\"event3\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_events_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_events_example_call_tool.py deleted file mode 100644 index 9498c9c44..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_marketing_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.DeleteMarketingEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"object_ids":["event1","event2","event3"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_smtp_token_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_smtp_token_example_call_tool.js deleted file mode 100644 index a2d878f3b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_smtp_token_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.DeleteSmtpToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "smtp_token_id": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_smtp_token_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_smtp_token_example_call_tool.py deleted file mode 100644 index f2d88bd78..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/delete_smtp_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.DeleteSmtpToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'smtp_token_id': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_campaign_asset_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_campaign_asset_example_call_tool.js deleted file mode 100644 index b1c9ba9bd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_campaign_asset_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.DisassociateCampaignAsset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_id": "12345", - "asset_type": "FORM", - "campaign_unique_identifier": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_campaign_asset_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_campaign_asset_example_call_tool.py deleted file mode 100644 index 2f205305f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_campaign_asset_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.DisassociateCampaignAsset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_id': '12345', - 'asset_type': 'FORM', - 'campaign_unique_identifier': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_list_from_marketing_event_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_list_from_marketing_event_example_call_tool.js deleted file mode 100644 index fa78b0f86..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_list_from_marketing_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.DisassociateListFromMarketingEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_identifier": "list_12345", - "marketing_event_id": "event_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_list_from_marketing_event_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_list_from_marketing_event_example_call_tool.py deleted file mode 100644 index 4a5e41c1a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_list_from_marketing_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.DisassociateListFromMarketingEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_identifier': 'list_12345', 'marketing_event_id': 'event_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_marketing_event_list_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_marketing_event_list_example_call_tool.js deleted file mode 100644 index 6ab6543d9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_marketing_event_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.DisassociateMarketingEventList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "external_account_id": "12345", - "list_id": "67890", - "marketing_event_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_marketing_event_list_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_marketing_event_list_example_call_tool.py deleted file mode 100644 index 4c891c2ba..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/disassociate_marketing_event_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.DisassociateMarketingEventList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'external_account_id': '12345', 'list_id': '67890', 'marketing_event_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_campaign_contact_ids_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_campaign_contact_ids_example_call_tool.js deleted file mode 100644 index b6d7d71bd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_campaign_contact_ids_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.FetchCampaignContactIds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_identifier": "123e4567-e89b-12d3-a456-426614174000", - "contact_type_filter": "contactFirstTouch", - "contact_fetch_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_campaign_contact_ids_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_campaign_contact_ids_example_call_tool.py deleted file mode 100644 index 91aa42bbd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_campaign_contact_ids_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.FetchCampaignContactIds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'contact_type_filter': 'contactFirstTouch', - 'contact_fetch_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_email_statistics_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_email_statistics_example_call_tool.js deleted file mode 100644 index d1ceed39f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_email_statistics_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.FetchEmailStatistics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_email_statistics_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_email_statistics_example_call_tool.py deleted file mode 100644 index cc4637c92..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_email_statistics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.FetchEmailStatistics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_event_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_event_details_example_call_tool.js deleted file mode 100644 index 686041d58..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_event_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.FetchEventDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "marketing_event_object_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_event_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_event_details_example_call_tool.py deleted file mode 100644 index 7bd97a397..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_event_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.FetchEventDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'marketing_event_object_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_marketing_campaign_batches_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_marketing_campaign_batches_example_call_tool.js deleted file mode 100644 index 8e9ff8fae..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_marketing_campaign_batches_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.FetchMarketingCampaignBatches"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "fetch_start_date": "2023-01-01", - "end_date_for_asset_metrics": "2023-01-31", - "requested_properties": [ - "name", - "id", - "status" - ], - "request_body": "{\"campaigns\":[{\"id\":\"123\",\"name\":\"New Year Campaign\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_marketing_campaign_batches_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_marketing_campaign_batches_example_call_tool.py deleted file mode 100644 index 6fb2e82f7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/fetch_marketing_campaign_batches_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.FetchMarketingCampaignBatches" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'fetch_start_date': '2023-01-01', - 'end_date_for_asset_metrics': '2023-01-31', - 'requested_properties': ['name', 'id', 'status'], - 'request_body': '{"campaigns":[{"id":"123","name":"New Year Campaign"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/find_hubspot_marketing_events_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/find_hubspot_marketing_events_example_call_tool.js deleted file mode 100644 index 59435a729..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/find_hubspot_marketing_events_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.FindHubspotMarketingEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "external_event_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/find_hubspot_marketing_events_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/find_hubspot_marketing_events_example_call_tool.py deleted file mode 100644 index c77ea53b6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/find_hubspot_marketing_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.FindHubspotMarketingEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'external_event_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_all_marketing_events_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_all_marketing_events_example_call_tool.js deleted file mode 100644 index ef4119614..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_all_marketing_events_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetAllMarketingEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cursor_position_after": "abc123", - "response_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_all_marketing_events_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_all_marketing_events_example_call_tool.py deleted file mode 100644 index 7ae61ca04..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_all_marketing_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetAllMarketingEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cursor_position_after': 'abc123', 'response_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_attribution_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_attribution_metrics_example_call_tool.js deleted file mode 100644 index e8822aa82..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_attribution_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetCampaignAttributionMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_identifier": "123e4567-e89b-12d3-a456-426614174000", - "report_end_date": "2023-10-31" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_attribution_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_attribution_metrics_example_call_tool.py deleted file mode 100644 index 668f54252..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_attribution_metrics_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetCampaignAttributionMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'report_end_date': '2023-10-31' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_budget_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_budget_details_example_call_tool.js deleted file mode 100644 index 5702d52ad..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_budget_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetCampaignBudgetDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_identifier": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_budget_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_budget_details_example_call_tool.py deleted file mode 100644 index fd87135e5..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_budget_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetCampaignBudgetDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_identifier': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_budget_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_budget_example_call_tool.js deleted file mode 100644 index 0b15cd6b0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_budget_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetCampaignBudget"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "budget_item_id": 12345, - "campaign_guid": "abc-def-ghi-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_budget_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_budget_example_call_tool.py deleted file mode 100644 index ce96d9e23..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_budget_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetCampaignBudget" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'budget_item_id': 12345, 'campaign_guid': 'abc-def-ghi-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_details_example_call_tool.js deleted file mode 100644 index cd200f358..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_details_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetCampaignDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_guid": "123e4567-e89b-12d3-a456-426614174000", - "end_date_for_asset_metrics": "2023-12-31", - "metrics_start_date": "2023-01-01", - "properties_list": [ - "name", - "status", - "budget" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_details_example_call_tool.py deleted file mode 100644 index 66f40c501..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetCampaignDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_guid': '123e4567-e89b-12d3-a456-426614174000', - 'end_date_for_asset_metrics': '2023-12-31', - 'metrics_start_date': '2023-01-01', - 'properties_list': ['name', 'status', 'budget'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_revenue_report_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_revenue_report_example_call_tool.js deleted file mode 100644 index 0b0ff7d1f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_revenue_report_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetCampaignRevenueReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_identifier": "123e4567-e89b-12d3-a456-426614174000", - "attribution_model": "FIRST_INTERACTION", - "report_start_date": "2023-01-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_revenue_report_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_revenue_report_example_call_tool.py deleted file mode 100644 index 6971b02f8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_revenue_report_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetCampaignRevenueReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'attribution_model': 'FIRST_INTERACTION', - 'report_start_date': '2023-01-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_spend_item_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_spend_item_example_call_tool.js deleted file mode 100644 index 3bf85f969..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_spend_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetCampaignSpendItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_guid": "abc-123-def-456", - "spend_item_identifier": 789 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_spend_item_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_spend_item_example_call_tool.py deleted file mode 100644 index fff3bc427..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_campaign_spend_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetCampaignSpendItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_guid': 'abc-123-def-456', 'spend_item_identifier': 789 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_contact_participations_breakdown_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_contact_participations_breakdown_example_call_tool.js deleted file mode 100644 index 31e5b9996..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_contact_participations_breakdown_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetContactParticipationsBreakdown"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_identifier": "john.doe@example.com", - "pagination_cursor": "abc123", - "participation_state": "ATTENDED", - "response_size_limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_contact_participations_breakdown_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_contact_participations_breakdown_example_call_tool.py deleted file mode 100644 index bc2dc6051..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_contact_participations_breakdown_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetContactParticipationsBreakdown" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_identifier': 'john.doe@example.com', - 'pagination_cursor': 'abc123', - 'participation_state': 'ATTENDED', - 'response_size_limit': 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_ab_test_variation_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_ab_test_variation_example_call_tool.js deleted file mode 100644 index b392701f2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_ab_test_variation_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetEmailAbTestVariation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_identifier": "email_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_ab_test_variation_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_ab_test_variation_example_call_tool.py deleted file mode 100644 index f571d6047..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_ab_test_variation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetEmailAbTestVariation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_identifier': 'email_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_revisions_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_revisions_example_call_tool.js deleted file mode 100644 index b8a98d5b9..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_revisions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetEmailRevisions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_revisions_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_revisions_example_call_tool.py deleted file mode 100644 index 344f59fe1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_revisions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetEmailRevisions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_statistics_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_statistics_example_call_tool.js deleted file mode 100644 index 83c19c5b4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_statistics_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetEmailStatistics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_statistics_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_statistics_example_call_tool.py deleted file mode 100644 index 5ab17460f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_email_statistics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetEmailStatistics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_event_participation_counters_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_event_participation_counters_example_call_tool.js deleted file mode 100644 index e9590cbdf..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_event_participation_counters_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetEventParticipationCounters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_id": "event123", - "external_account_id": "account456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_event_participation_counters_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_event_participation_counters_example_call_tool.py deleted file mode 100644 index f3423df9b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_event_participation_counters_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetEventParticipationCounters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_id': 'event123', 'external_account_id': 'account456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_form_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_form_by_id_example_call_tool.js deleted file mode 100644 index 727121a11..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_form_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetFormById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "form_id": "12345", - "return_archived_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_form_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_form_by_id_example_call_tool.py deleted file mode 100644 index 5922b3a76..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_form_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetFormById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'form_id': '12345', 'return_archived_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_campaigns_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_campaigns_example_call_tool.js deleted file mode 100644 index 72bdbf322..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_campaigns_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetMarketingCampaigns"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_name_filter": "summer", - "max_results_limit": 20, - "sort_by": "-createdAt", - "requested_properties": [ - "name", - "status" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_campaigns_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_campaigns_example_call_tool.py deleted file mode 100644 index 6d07f4cf8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_campaigns_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetMarketingCampaigns" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_name_filter': 'summer', - 'max_results_limit': 20, - 'sort_by': '-createdAt', - 'requested_properties': ['name', 'status'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_email_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_email_details_example_call_tool.js deleted file mode 100644 index 0662b6704..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_email_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetMarketingEmailDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_email_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_email_details_example_call_tool.py deleted file mode 100644 index 6e81e5019..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_email_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetMarketingEmailDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_email_revision_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_email_revision_example_call_tool.js deleted file mode 100644 index 79ae5c14a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_email_revision_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetMarketingEmailRevision"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_id": "email_12345", - "email_revision_id": "rev_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_email_revision_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_email_revision_example_call_tool.py deleted file mode 100644 index abf65db39..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_email_revision_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetMarketingEmailRevision" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_id': 'email_12345', 'email_revision_id': 'rev_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_associated_lists_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_associated_lists_example_call_tool.js deleted file mode 100644 index d2a2db1fa..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_associated_lists_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetMarketingEventAssociatedLists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "external_account_id": "12345", - "external_event_id": "event_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_associated_lists_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_associated_lists_example_call_tool.py deleted file mode 100644 index 367d73f2d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_associated_lists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetMarketingEventAssociatedLists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'external_account_id': '12345', 'external_event_id': 'event_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_details_example_call_tool.js deleted file mode 100644 index bb1ef69b2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetMarketingEventDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "external_account_id": "12345", - "marketing_event_id": "event_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_details_example_call_tool.py deleted file mode 100644 index 4ac77277d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetMarketingEventDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'external_account_id': '12345', 'marketing_event_id': 'event_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_lists_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_lists_example_call_tool.js deleted file mode 100644 index 5725107f1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_lists_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetMarketingEventLists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "marketing_event_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_lists_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_lists_example_call_tool.py deleted file mode 100644 index 16b43ba98..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_lists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetMarketingEventLists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'marketing_event_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participation_breakdown_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participation_breakdown_example_call_tool.js deleted file mode 100644 index afd63ec44..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participation_breakdown_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetMarketingEventParticipationBreakdown"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "external_account_id": "acc_12345", - "external_event_id": "event_67890", - "contact_identifier": "user@example.com", - "participation_state_filter": "ATTENDED", - "response_size_limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participation_breakdown_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participation_breakdown_example_call_tool.py deleted file mode 100644 index 8fc367309..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participation_breakdown_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetMarketingEventParticipationBreakdown" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'external_account_id': 'acc_12345', - 'external_event_id': 'event_67890', - 'contact_identifier': 'user@example.com', - 'participation_state_filter': 'ATTENDED', - 'response_size_limit': 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participation_counters_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participation_counters_example_call_tool.js deleted file mode 100644 index fb389d71c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participation_counters_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetMarketingEventParticipationCounters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "marketing_event_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participation_counters_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participation_counters_example_call_tool.py deleted file mode 100644 index 169f70f81..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participation_counters_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetMarketingEventParticipationCounters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'marketing_event_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participations_breakdown_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participations_breakdown_example_call_tool.js deleted file mode 100644 index ef359327d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participations_breakdown_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetMarketingEventParticipationsBreakdown"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "marketing_event_id": 12345, - "contact_identifier": "example@example.com", - "participation_state": "ATTENDED", - "response_size_limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participations_breakdown_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participations_breakdown_example_call_tool.py deleted file mode 100644 index e3b32e9c6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_marketing_event_participations_breakdown_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetMarketingEventParticipationsBreakdown" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'marketing_event_id': 12345, - 'contact_identifier': 'example@example.com', - 'participation_state': 'ATTENDED', - 'response_size_limit': 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_smtp_token_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_smtp_token_by_id_example_call_tool.js deleted file mode 100644 index 231eb9bd8..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_smtp_token_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.GetSmtpTokenById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "smtp_token_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_smtp_token_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_smtp_token_by_id_example_call_tool.py deleted file mode 100644 index d05eb4e35..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/get_smtp_token_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.GetSmtpTokenById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'smtp_token_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/hubspot_marketing_email_filter_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/hubspot_marketing_email_filter_example_call_tool.js deleted file mode 100644 index 7c9bdf35f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/hubspot_marketing_email_filter_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.HubspotMarketingEmailFilter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/hubspot_marketing_email_filter_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/hubspot_marketing_email_filter_example_call_tool.py deleted file mode 100644 index 9972a0dbc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/hubspot_marketing_email_filter_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.HubspotMarketingEmailFilter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/link_list_to_event_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/link_list_to_event_example_call_tool.js deleted file mode 100644 index 81f3344c6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/link_list_to_event_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.LinkListToEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "external_account_id": "12345", - "external_event_id": "event_67890", - "ils_list_id": "list_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/link_list_to_event_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/link_list_to_event_example_call_tool.py deleted file mode 100644 index 7413a0b09..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/link_list_to_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.LinkListToEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'external_account_id': '12345', 'external_event_id': 'event_67890', 'ils_list_id': 'list_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/list_campaign_assets_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/list_campaign_assets_example_call_tool.js deleted file mode 100644 index b43a367d0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/list_campaign_assets_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.ListCampaignAssets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "asset_type": "email", - "campaign_identifier": "123e4567-e89b-12d3-a456-426614174000", - "metrics_start_date": "2023-01-01", - "end_date_for_asset_metrics": "2023-01-31", - "maximum_results_limit": "5" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/list_campaign_assets_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/list_campaign_assets_example_call_tool.py deleted file mode 100644 index c96a85f23..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/list_campaign_assets_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.ListCampaignAssets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'asset_type': 'email', - 'campaign_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'metrics_start_date': '2023-01-01', - 'end_date_for_asset_metrics': '2023-01-31', - 'maximum_results_limit': '5' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/list_hubspot_forms_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/list_hubspot_forms_example_call_tool.js deleted file mode 100644 index 205371ee6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/list_hubspot_forms_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.ListHubspotForms"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "included_form_types": [ - "hubspot", - "workflow" - ], - "results_per_page": 10, - "return_only_archived_forms": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/list_hubspot_forms_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/list_hubspot_forms_example_call_tool.py deleted file mode 100644 index cb52ac75d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/list_hubspot_forms_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.ListHubspotForms" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'included_form_types': ['hubspot', 'workflow'], - 'results_per_page': 10, - 'return_only_archived_forms': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/mark_marketing_event_completed_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/mark_marketing_event_completed_example_call_tool.js deleted file mode 100644 index 487d4707b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/mark_marketing_event_completed_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.MarkMarketingEventCompleted"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_end_datetime": "2023-10-01T15:00:00Z", - "event_start_date_time": "2023-10-01T14:00:00Z", - "external_account_id": "123456", - "marketing_event_id": "event_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/mark_marketing_event_completed_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/mark_marketing_event_completed_example_call_tool.py deleted file mode 100644 index 72d35c672..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/mark_marketing_event_completed_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.MarkMarketingEventCompleted" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_end_datetime': '2023-10-01T15:00:00Z', - 'event_start_date_time': '2023-10-01T14:00:00Z', - 'external_account_id': '123456', - 'marketing_event_id': 'event_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/modify_event_information_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/modify_event_information_example_call_tool.js deleted file mode 100644 index 9f2dffbc3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/modify_event_information_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.ModifyEventInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "event_internal_id": "12345", - "request_body": "{\"title\":\"Updated Event Title\",\"date\":\"2023-10-01\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/modify_event_information_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/modify_event_information_example_call_tool.py deleted file mode 100644 index 986d36a8e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/modify_event_information_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.ModifyEventInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'event_internal_id': '12345', - 'request_body': '{"title":"Updated Event Title","date":"2023-10-01"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/publish_hubspot_email_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/publish_hubspot_email_example_call_tool.js deleted file mode 100644 index 6c4b4869b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/publish_hubspot_email_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.PublishHubspotEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hubspot_email_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/publish_hubspot_email_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/publish_hubspot_email_example_call_tool.py deleted file mode 100644 index 0761d8c87..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/publish_hubspot_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.PublishHubspotEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hubspot_email_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/query_smtp_tokens_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/query_smtp_tokens_example_call_tool.js deleted file mode 100644 index fc0545ef2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/query_smtp_tokens_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.QuerySmtpTokens"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_name": "Spring Sale", - "email_campaign_id": "12345", - "maximum_tokens_to_return": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/query_smtp_tokens_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/query_smtp_tokens_example_call_tool.py deleted file mode 100644 index 1320fe016..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/query_smtp_tokens_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.QuerySmtpTokens" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_name': 'Spring Sale', 'email_campaign_id': '12345', 'maximum_tokens_to_return': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_event_attendance_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_event_attendance_example_call_tool.js deleted file mode 100644 index 76cde191a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_event_attendance_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.RecordEventAttendance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "marketing_event_id": "12345", - "attendance_state": "attend", - "request_body": "{\"contactIds\":[\"1\",\"2\",\"3\"],\"joinedAt\":\"2023-10-01T10:00:00Z\",\"leftAt\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_event_attendance_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_event_attendance_example_call_tool.py deleted file mode 100644 index c13f0ca3f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_event_attendance_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.RecordEventAttendance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'marketing_event_id': '12345', - 'attendance_state': 'attend', - 'request_body': '{"contactIds":["1","2","3"],"joinedAt":"2023-10-01T10:00:00Z","leftAt":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_event_participation_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_event_participation_hubspot_example_call_tool.js deleted file mode 100644 index 645d7aaf3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_event_participation_hubspot_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.RecordEventParticipationHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "external_event_id": "event123", - "subscriber_state": "attend", - "external_account_id": "account456", - "request_body": "{\"email\":\"test@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_event_participation_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_event_participation_hubspot_example_call_tool.py deleted file mode 100644 index fdc227fe3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_event_participation_hubspot_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.RecordEventParticipationHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'external_event_id': 'event123', - 'subscriber_state': 'attend', - 'external_account_id': 'account456', - 'request_body': '{"email":"test@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_hubspot_subscriber_state_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_hubspot_subscriber_state_example_call_tool.js deleted file mode 100644 index 0c5d52534..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_hubspot_subscriber_state_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.RecordHubspotSubscriberState"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "external_account_id": "12345", - "event_id_in_external_app": "event_67890", - "subscriber_state": "register", - "request_body": "{\"contacts\":[\"contact_1\",\"contact_2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_hubspot_subscriber_state_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_hubspot_subscriber_state_example_call_tool.py deleted file mode 100644 index 6f576f8ef..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_hubspot_subscriber_state_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.RecordHubspotSubscriberState" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'external_account_id': '12345', - 'event_id_in_external_app': 'event_67890', - 'subscriber_state': 'register', - 'request_body': '{"contacts":["contact_1","contact_2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_marketing_event_attendance_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_marketing_event_attendance_example_call_tool.js deleted file mode 100644 index 7c06d9470..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_marketing_event_attendance_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.RecordMarketingEventAttendance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "external_event_id": "event_123", - "new_subscriber_state": "attend", - "external_account_id": "account_456", - "request_body": "{\"contacts\":[{\"id\":\"contact_1\"},{\"id\":\"contact_2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_marketing_event_attendance_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_marketing_event_attendance_example_call_tool.py deleted file mode 100644 index 24cfb3ddd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_marketing_event_attendance_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.RecordMarketingEventAttendance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'external_event_id': 'event_123', - 'new_subscriber_state': 'attend', - 'external_account_id': 'account_456', - 'request_body': '{"contacts":[{"id":"contact_1"},{"id":"contact_2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_subscriber_state_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_subscriber_state_example_call_tool.js deleted file mode 100644 index 90aaa1694..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_subscriber_state_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.RecordSubscriberState"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "external_account_id": "12345", - "marketing_event_id": "event_001", - "subscriber_state": "register", - "request_body": "{\"email\":\"example@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_subscriber_state_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_subscriber_state_example_call_tool.py deleted file mode 100644 index 45326413b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/record_subscriber_state_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.RecordSubscriberState" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'external_account_id': '12345', - 'marketing_event_id': 'event_001', - 'subscriber_state': 'register', - 'request_body': '{"email":"example@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/register_event_participation_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/register_event_participation_example_call_tool.js deleted file mode 100644 index 4882fb903..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/register_event_participation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.RegisterEventParticipation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "marketing_event_id": "12345", - "attendance_state": "attend", - "request_body": "{\"email\":\"example@example.com\",\"joinedAt\":\"2023-10-01T10:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/register_event_participation_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/register_event_participation_example_call_tool.py deleted file mode 100644 index 3df2a1fdd..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/register_event_participation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.RegisterEventParticipation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'marketing_event_id': '12345', - 'attendance_state': 'attend', - 'request_body': '{"email":"example@example.com","joinedAt":"2023-10-01T10:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_campaign_spend_item_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_campaign_spend_item_example_call_tool.js deleted file mode 100644 index 697c9c125..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_campaign_spend_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.RemoveCampaignSpendItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_identifier": "campaign_12345", - "spend_item_id": 6789 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_campaign_spend_item_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_campaign_spend_item_example_call_tool.py deleted file mode 100644 index cb80affac..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_campaign_spend_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.RemoveCampaignSpendItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_identifier': 'campaign_12345', 'spend_item_id': 6789 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_marketing_event_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_marketing_event_example_call_tool.js deleted file mode 100644 index 416447cb6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_marketing_event_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.RemoveMarketingEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "marketing_event_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_marketing_event_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_marketing_event_example_call_tool.py deleted file mode 100644 index 3de419447..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_marketing_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.RemoveMarketingEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'marketing_event_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_marketing_events_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_marketing_events_example_call_tool.js deleted file mode 100644 index dd121da0c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_marketing_events_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.RemoveMarketingEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"external_account_id\":\"12345\",\"event_ids\":[\"event1\",\"event2\"],\"app_id\":\"app123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_marketing_events_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_marketing_events_example_call_tool.py deleted file mode 100644 index dd9333a07..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/remove_marketing_events_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.RemoveMarketingEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"external_account_id":"12345","event_ids":["event1","event2"],"app_id":"app123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/reset_email_draft_to_live_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/reset_email_draft_to_live_example_call_tool.js deleted file mode 100644 index 62c4f37a7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/reset_email_draft_to_live_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.ResetEmailDraftToLive"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/reset_email_draft_to_live_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/reset_email_draft_to_live_example_call_tool.py deleted file mode 100644 index fd5f0fcbc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/reset_email_draft_to_live_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.ResetEmailDraftToLive" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/reset_password_for_token_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/reset_password_for_token_example_call_tool.js deleted file mode 100644 index f15897838..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/reset_password_for_token_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.ResetPasswordForToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "token_identifier": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/reset_password_for_token_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/reset_password_for_token_example_call_tool.py deleted file mode 100644 index ce50c1606..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/reset_password_for_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.ResetPasswordForToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'token_identifier': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/restore_email_revision_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/restore_email_revision_example_call_tool.js deleted file mode 100644 index bf176b459..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/restore_email_revision_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.RestoreEmailRevision"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_id": "email_12345", - "revision_id": "rev_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/restore_email_revision_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/restore_email_revision_example_call_tool.py deleted file mode 100644 index 8e566bf72..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/restore_email_revision_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.RestoreEmailRevision" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_id': 'email_12345', 'revision_id': 'rev_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/restore_email_revision_to_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/restore_email_revision_to_draft_example_call_tool.js deleted file mode 100644 index 6b6b3e275..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/restore_email_revision_to_draft_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.RestoreEmailRevisionToDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_identifier": "12345-abcde", - "revision_id": "rev-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/restore_email_revision_to_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/restore_email_revision_to_draft_example_call_tool.py deleted file mode 100644 index 4c24a3189..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/restore_email_revision_to_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.RestoreEmailRevisionToDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_identifier': '12345-abcde', 'revision_id': 'rev-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/retrieve_email_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/retrieve_email_draft_example_call_tool.js deleted file mode 100644 index 71a72dd0b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/retrieve_email_draft_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.RetrieveEmailDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/retrieve_email_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/retrieve_email_draft_example_call_tool.py deleted file mode 100644 index d249e4401..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/retrieve_email_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.RetrieveEmailDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/search_marketing_events_by_external_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/search_marketing_events_by_external_id_example_call_tool.js deleted file mode 100644 index 8e5125511..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/search_marketing_events_by_external_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.SearchMarketingEventsByExternalId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "external_event_id": "evt_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/search_marketing_events_by_external_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/search_marketing_events_by_external_id_example_call_tool.py deleted file mode 100644 index 1487c6047..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/search_marketing_events_by_external_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.SearchMarketingEventsByExternalId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'external_event_id': 'evt_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/send_marketing_email_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/send_marketing_email_example_call_tool.js deleted file mode 100644 index 6a431312b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/send_marketing_email_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.SendMarketingEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"recipient_email\":\"example@example.com\",\"template_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/send_marketing_email_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/send_marketing_email_example_call_tool.py deleted file mode 100644 index 4e10df328..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/send_marketing_email_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.SendMarketingEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"recipient_email":"example@example.com","template_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/send_transactional_email_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/send_transactional_email_example_call_tool.js deleted file mode 100644 index 0770ef6da..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/send_transactional_email_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.SendTransactionalEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"to\":\"user@example.com\",\"subject\":\"Welcome!\",\"body\":\"Thank you for joining us!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/send_transactional_email_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/send_transactional_email_example_call_tool.py deleted file mode 100644 index b96dd4adc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/send_transactional_email_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.SendTransactionalEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"to":"user@example.com","subject":"Welcome!","body":"Thank you for joining ' - 'us!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/unpublish_marketing_email_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/unpublish_marketing_email_example_call_tool.js deleted file mode 100644 index e7811ebd2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/unpublish_marketing_email_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.UnpublishMarketingEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/unpublish_marketing_email_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/unpublish_marketing_email_example_call_tool.py deleted file mode 100644 index 08973235b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/unpublish_marketing_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.UnpublishMarketingEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_batch_example_call_tool.js deleted file mode 100644 index 9d92936e4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.UpdateCampaignBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"campaigns\":[{\"id\":\"1\",\"name\":\"Campaign A\",\"status\":\"active\"},{\"id\":\"2\",\"name\":\"Campaign B\",\"status\":\"paused\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_batch_example_call_tool.py deleted file mode 100644 index 6cfac9166..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.UpdateCampaignBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"campaigns":[{"id":"1","name":"Campaign ' - 'A","status":"active"},{"id":"2","name":"Campaign B","status":"paused"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_budget_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_budget_example_call_tool.js deleted file mode 100644 index 5214b1f56..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_budget_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.UpdateCampaignBudget"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "budget_amount": 1500, - "budget_id": 12345, - "budget_item_name": "Social Media Ads", - "campaign_guid": "abc-123-def-456", - "priority_order": 1, - "budget_item_description": "Budget for social media advertising campaigns." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_budget_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_budget_example_call_tool.py deleted file mode 100644 index 6ced51f4b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_budget_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.UpdateCampaignBudget" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'budget_amount': 1500, - 'budget_id': 12345, - 'budget_item_name': 'Social Media Ads', - 'campaign_guid': 'abc-123-def-456', - 'priority_order': 1, - 'budget_item_description': 'Budget for social media advertising campaigns.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_properties_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_properties_example_call_tool.js deleted file mode 100644 index a0b03e43f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_properties_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.UpdateCampaignProperties"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "campaign_uuid": "123e4567-e89b-12d3-a456-426614174000", - "request_body": "{\"property\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_properties_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_properties_example_call_tool.py deleted file mode 100644 index 6a39618e6..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_properties_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.UpdateCampaignProperties" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'campaign_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'request_body': '{"property":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_spend_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_spend_example_call_tool.js deleted file mode 100644 index b2f06923c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_spend_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.UpdateCampaignSpend"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_guid": "abc-123-campaign", - "spend_amount": 1500, - "spend_identifier": 1, - "spend_item_name": "Social Media Ads", - "spend_order": 2, - "spend_item_description": "Ads for social media platforms" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_spend_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_spend_example_call_tool.py deleted file mode 100644 index 3bf33ffca..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_campaign_spend_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.UpdateCampaignSpend" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_guid': 'abc-123-campaign', - 'spend_amount': 1500, - 'spend_identifier': 1, - 'spend_item_name': 'Social Media Ads', - 'spend_order': 2, - 'spend_item_description': 'Ads for social media platforms' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_email_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_email_draft_example_call_tool.js deleted file mode 100644 index 88d79b802..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_email_draft_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.UpdateEmailDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "email_id": "12345", - "request_body": "{\"subject\":\"New Marketing Campaign\",\"body\":\"Check out our latest offers!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_email_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_email_draft_example_call_tool.py deleted file mode 100644 index 064ed96f4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_email_draft_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.UpdateEmailDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'email_id': '12345', - 'request_body': '{"subject":"New Marketing Campaign","body":"Check out our latest offers!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_hubspot_form_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_hubspot_form_example_call_tool.js deleted file mode 100644 index e18132d55..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_hubspot_form_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.UpdateHubspotForm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "hubspot_form_id": "12345", - "request_body": "{\"fields\":[{\"name\":\"email\",\"label\":\"Email Address\",\"type\":\"text\"},{\"name\":\"first_name\",\"label\":\"First Name\",\"type\":\"text\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_hubspot_form_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_hubspot_form_example_call_tool.py deleted file mode 100644 index b0c05d317..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_hubspot_form_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.UpdateHubspotForm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'hubspot_form_id': '12345', - 'request_body': '{"fields":[{"name":"email","label":"Email ' - 'Address","type":"text"},{"name":"first_name","label":"First ' - 'Name","type":"text"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_hubspot_marketing_form_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_hubspot_marketing_form_example_call_tool.js deleted file mode 100644 index ad0c33f17..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_hubspot_marketing_form_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.UpdateHubspotMarketingForm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "form_id": "12345", - "request_body": "{\"title\":\"Updated Form Title\",\"fields\":[{\"name\":\"email\",\"type\":\"email\",\"required\":true}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_hubspot_marketing_form_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_hubspot_marketing_form_example_call_tool.py deleted file mode 100644 index 81694c552..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_hubspot_marketing_form_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.UpdateHubspotMarketingForm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'form_id': '12345', - 'request_body': '{"title":"Updated Form ' - 'Title","fields":[{"name":"email","type":"email","required":true}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_email_properties_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_email_properties_example_call_tool.js deleted file mode 100644 index e70f1837e..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_email_properties_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.UpdateMarketingEmailProperties"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "email_identifier": "email_12345", - "request_body": "{\"subject\":\"New Subject\",\"content\":\"Updated content for the email.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_email_properties_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_email_properties_example_call_tool.py deleted file mode 100644 index 11188f075..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_email_properties_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.UpdateMarketingEmailProperties" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'email_identifier': 'email_12345', - 'request_body': '{"subject":"New Subject","content":"Updated content for the email."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_event_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_event_details_example_call_tool.js deleted file mode 100644 index 378cf212f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_event_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.UpdateMarketingEventDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "external_account_id": "12345", - "external_event_id": "event_67890", - "request_body": "{\"title\":\"Updated Event Title\",\"date\":\"2023-10-01\",\"location\":\"New Location\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_event_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_event_details_example_call_tool.py deleted file mode 100644 index 42f6cd99f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_event_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.UpdateMarketingEventDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'external_account_id': '12345', - 'external_event_id': 'event_67890', - 'request_body': '{"title":"Updated Event Title","date":"2023-10-01","location":"New Location"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_events_batch_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_events_batch_example_call_tool.js deleted file mode 100644 index 14fe2001d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_events_batch_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.UpdateMarketingEventsBatch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"objectId\": [\"12345\", \"67890\"], \"eventDetails\": {\"name\": \"New Event Name\", \"date\": \"2023-10-01\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_events_batch_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_events_batch_example_call_tool.py deleted file mode 100644 index dc778f55d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/update_marketing_events_batch_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.UpdateMarketingEventsBatch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"objectId": ["12345", "67890"], "eventDetails": {"name": "New Event Name", ' - '"date": "2023-10-01"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/upsert_marketing_event_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/upsert_marketing_event_example_call_tool.js deleted file mode 100644 index 4ecc0077f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/upsert_marketing_event_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.UpsertMarketingEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "external_event_id": "event123", - "request_body": "{\"name\":\"Launch Event\",\"date\":\"2023-10-01\",\"location\":\"Online\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/upsert_marketing_event_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/upsert_marketing_event_example_call_tool.py deleted file mode 100644 index 9de94d9fc..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/upsert_marketing_event_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.UpsertMarketingEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'external_event_id': 'event123', - 'request_body': '{"name":"Launch Event","date":"2023-10-01","location":"Online"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/upsert_marketing_events_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_marketing_api/upsert_marketing_events_example_call_tool.js deleted file mode 100644 index 9c203b5c4..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/upsert_marketing_events_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMarketingApi.UpsertMarketingEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"events\":[{\"id\":\"1\",\"name\":\"Event 1\",\"date\":\"2023-10-01\"},{\"id\":\"2\",\"name\":\"Event 2\",\"date\":\"2023-10-02\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_marketing_api/upsert_marketing_events_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_marketing_api/upsert_marketing_events_example_call_tool.py deleted file mode 100644 index a77a07eb0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_marketing_api/upsert_marketing_events_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMarketingApi.UpsertMarketingEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"events":[{"id":"1","name":"Event ' - '1","date":"2023-10-01"},{"id":"2","name":"Event 2","date":"2023-10-02"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_meetings_api/book_hubspot_meeting_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_meetings_api/book_hubspot_meeting_example_call_tool.js deleted file mode 100644 index 83a8037c7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_meetings_api/book_hubspot_meeting_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMeetingsApi.BookHubspotMeeting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"meetingPageId\":\"12345\",\"attendees\":[{\"email\":\"example@example.com\"}],\"date\":\"2023-10-15T10:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_meetings_api/book_hubspot_meeting_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_meetings_api/book_hubspot_meeting_example_call_tool.py deleted file mode 100644 index 54698c7f3..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_meetings_api/book_hubspot_meeting_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMeetingsApi.BookHubspotMeeting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"meetingPageId":"12345","attendees":[{"email":"example@example.com"}],"date":"2023-10-15T10:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_meetings_api/get_meeting_scheduler_details_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_meetings_api/get_meeting_scheduler_details_example_call_tool.js deleted file mode 100644 index 38c32e08f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_meetings_api/get_meeting_scheduler_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMeetingsApi.GetMeetingSchedulerDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "meeting_slug": "weekly_team_sync" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_meetings_api/get_meeting_scheduler_details_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_meetings_api/get_meeting_scheduler_details_example_call_tool.py deleted file mode 100644 index 6f2d25ee0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_meetings_api/get_meeting_scheduler_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMeetingsApi.GetMeetingSchedulerDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'meeting_slug': 'weekly_team_sync' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_meetings_api/get_next_meeting_availability_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_meetings_api/get_next_meeting_availability_example_call_tool.js deleted file mode 100644 index 953be5c57..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_meetings_api/get_next_meeting_availability_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMeetingsApi.GetNextMeetingAvailability"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "availability_page_slug": "team-meeting-2023" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_meetings_api/get_next_meeting_availability_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_meetings_api/get_next_meeting_availability_example_call_tool.py deleted file mode 100644 index 17da01094..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_meetings_api/get_next_meeting_availability_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMeetingsApi.GetNextMeetingAvailability" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'availability_page_slug': 'team-meeting-2023' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_meetings_api/list_meeting_scheduling_pages_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_meetings_api/list_meeting_scheduling_pages_example_call_tool.js deleted file mode 100644 index 877f77f27..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_meetings_api/list_meeting_scheduling_pages_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMeetingsApi.ListMeetingSchedulingPages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_meetings_api/list_meeting_scheduling_pages_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_meetings_api/list_meeting_scheduling_pages_example_call_tool.py deleted file mode 100644 index 1b30341c7..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_meetings_api/list_meeting_scheduling_pages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMeetingsApi.ListMeetingSchedulingPages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_meetings_api/schedule_meeting_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_meetings_api/schedule_meeting_hubspot_example_call_tool.js deleted file mode 100644 index 4192319a1..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_meetings_api/schedule_meeting_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotMeetingsApi.ScheduleMeetingHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"meeting_title\":\"Project Update\",\"date\":\"2023-10-15\",\"time\":\"10:00\",\"duration\":30,\"participants\":[\"alice@example.com\",\"bob@example.com\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_meetings_api/schedule_meeting_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_meetings_api/schedule_meeting_hubspot_example_call_tool.py deleted file mode 100644 index be6bf7053..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_meetings_api/schedule_meeting_hubspot_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotMeetingsApi.ScheduleMeetingHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"meeting_title":"Project ' - 'Update","date":"2023-10-15","time":"10:00","duration":30,"participants":["alice@example.com","bob@example.com"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_users_api/create_hubspot_user_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_users_api/create_hubspot_user_example_call_tool.js deleted file mode 100644 index 0900ce358..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_users_api/create_hubspot_user_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotUsersApi.CreateHubspotUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_email": "john.doe@example.com", - "user_first_name": "John", - "last_name": "Doe", - "send_welcome_email": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_users_api/create_hubspot_user_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_users_api/create_hubspot_user_example_call_tool.py deleted file mode 100644 index 455599c12..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_users_api/create_hubspot_user_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotUsersApi.CreateHubspotUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_email': 'john.doe@example.com', - 'user_first_name': 'John', - 'last_name': 'Doe', - 'send_welcome_email': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_users_api/fetch_hubspot_users_list_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_users_api/fetch_hubspot_users_list_example_call_tool.js deleted file mode 100644 index 79cde3254..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_users_api/fetch_hubspot_users_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotUsersApi.FetchHubspotUsersList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_cursor_after": "abc123", - "user_retrieval_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_users_api/fetch_hubspot_users_list_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_users_api/fetch_hubspot_users_list_example_call_tool.py deleted file mode 100644 index e516fcb0c..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_users_api/fetch_hubspot_users_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotUsersApi.FetchHubspotUsersList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_cursor_after': 'abc123', 'user_retrieval_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_users_api/get_account_roles_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_users_api/get_account_roles_example_call_tool.js deleted file mode 100644 index b2feab28b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_users_api/get_account_roles_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotUsersApi.GetAccountRoles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_users_api/get_account_roles_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_users_api/get_account_roles_example_call_tool.py deleted file mode 100644 index 12b3d5dc2..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_users_api/get_account_roles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotUsersApi.GetAccountRoles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_users_api/remove_user_hubspot_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_users_api/remove_user_hubspot_example_call_tool.js deleted file mode 100644 index cb6c28804..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_users_api/remove_user_hubspot_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotUsersApi.RemoveUserHubspot"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "user@example.com", - "user_identifier_property": "EMAIL" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_users_api/remove_user_hubspot_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_users_api/remove_user_hubspot_example_call_tool.py deleted file mode 100644 index 81d826cca..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_users_api/remove_user_hubspot_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotUsersApi.RemoveUserHubspot" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'user@example.com', 'user_identifier_property': 'EMAIL' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_users_api/retrieve_hubspot_user_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_users_api/retrieve_hubspot_user_by_id_example_call_tool.js deleted file mode 100644 index a73e5c2c0..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_users_api/retrieve_hubspot_user_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotUsersApi.RetrieveHubspotUserById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "12345", - "user_identifier_property": "USER_ID" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_users_api/retrieve_hubspot_user_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_users_api/retrieve_hubspot_user_by_id_example_call_tool.py deleted file mode 100644 index 2c296257f..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_users_api/retrieve_hubspot_user_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotUsersApi.RetrieveHubspotUserById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': '12345', 'user_identifier_property': 'USER_ID' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_users_api/update_hubspot_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_users_api/update_hubspot_user_info_example_call_tool.js deleted file mode 100644 index d2d6f4e6a..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_users_api/update_hubspot_user_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotUsersApi.UpdateHubspotUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "user@example.com", - "first_name": "John", - "last_name": "Doe", - "user_primary_team_id": "team123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_users_api/update_hubspot_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_users_api/update_hubspot_user_info_example_call_tool.py deleted file mode 100644 index 5b6bab936..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_users_api/update_hubspot_user_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotUsersApi.UpdateHubspotUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'user@example.com', - 'first_name': 'John', - 'last_name': 'Doe', - 'user_primary_team_id': 'team123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/hubspot_users_api/view_account_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/hubspot_users_api/view_account_teams_example_call_tool.js deleted file mode 100644 index 907cf1b7b..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_users_api/view_account_teams_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "HubspotUsersApi.ViewAccountTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/hubspot_users_api/view_account_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/hubspot_users_api/view_account_teams_example_call_tool.py deleted file mode 100644 index e9115791d..000000000 --- a/public/examples/integrations/mcp-servers/hubspot_users_api/view_account_teams_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "HubspotUsersApi.ViewAccountTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/imgflip/create_meme_example_call_tool.js b/public/examples/integrations/mcp-servers/imgflip/create_meme_example_call_tool.js deleted file mode 100644 index 809c5e610..000000000 --- a/public/examples/integrations/mcp-servers/imgflip/create_meme_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Imgflip.CreateMeme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - template_id: "123456", - top_text: "Hello World", - bottom_text: "This is a test meme", - max_font_size: 50, - no_watermark: false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/imgflip/create_meme_example_call_tool.py b/public/examples/integrations/mcp-servers/imgflip/create_meme_example_call_tool.py deleted file mode 100644 index f84d607cf..000000000 --- a/public/examples/integrations/mcp-servers/imgflip/create_meme_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Imgflip.CreateMeme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "template_id": "123456", - "top_text": "Hello World", - "bottom_text": "This is a test meme", - "max_font_size": 50, - "no_watermark": False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/imgflip/get_popular_memes_example_call_tool.js b/public/examples/integrations/mcp-servers/imgflip/get_popular_memes_example_call_tool.js deleted file mode 100644 index 3049914a2..000000000 --- a/public/examples/integrations/mcp-servers/imgflip/get_popular_memes_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Imgflip.GetPopularMemes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - limit: 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/imgflip/get_popular_memes_example_call_tool.py b/public/examples/integrations/mcp-servers/imgflip/get_popular_memes_example_call_tool.py deleted file mode 100644 index 3e9a136ad..000000000 --- a/public/examples/integrations/mcp-servers/imgflip/get_popular_memes_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Imgflip.GetPopularMemes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "limit": 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/imgflip/search_memes_example_call_tool.js b/public/examples/integrations/mcp-servers/imgflip/search_memes_example_call_tool.js deleted file mode 100644 index 653a97ded..000000000 --- a/public/examples/integrations/mcp-servers/imgflip/search_memes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Imgflip.SearchMemes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - query: "doge", - include_nsfw: false, - limit: 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/imgflip/search_memes_example_call_tool.py b/public/examples/integrations/mcp-servers/imgflip/search_memes_example_call_tool.py deleted file mode 100644 index 47f7823d7..000000000 --- a/public/examples/integrations/mcp-servers/imgflip/search_memes_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Imgflip.SearchMemes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "query": "doge", - "include_nsfw": False, - "limit": 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/intercom_api/add_note_to_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/add_note_to_contact_example_call_tool.js deleted file mode 100644 index b645bf995..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/add_note_to_contact_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.AddNoteToContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "contact_id": 12345, - "request_body": "{\"note\":\"This is a sample note.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/add_note_to_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/add_note_to_contact_example_call_tool.py deleted file mode 100644 index e09655928..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/add_note_to_contact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.AddNoteToContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'contact_id': 12345, 'request_body': '{"note":"This is a sample note."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/archive_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/archive_contact_example_call_tool.js deleted file mode 100644 index be6250128..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/archive_contact_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ArchiveContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/archive_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/archive_contact_example_call_tool.py deleted file mode 100644 index f61bf190f..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/archive_contact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ArchiveContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/attach_company_to_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/attach_company_to_contact_example_call_tool.js deleted file mode 100644 index 834311007..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/attach_company_to_contact_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.AttachCompanyToContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "contact_unique_identifier": "contact_12345", - "request_body": "{\"company_id\":\"company_67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/attach_company_to_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/attach_company_to_contact_example_call_tool.py deleted file mode 100644 index 120d9e2d4..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/attach_company_to_contact_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.AttachCompanyToContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'contact_unique_identifier': 'contact_12345', - 'request_body': '{"company_id":"company_67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/attach_contact_to_conversation_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/attach_contact_to_conversation_example_call_tool.js deleted file mode 100644 index c4eec6ccc..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/attach_contact_to_conversation_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.AttachContactToConversation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "conversation_id": "conv_12345", - "request_body": "{\"contact_email\":\"example@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/attach_contact_to_conversation_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/attach_contact_to_conversation_example_call_tool.py deleted file mode 100644 index 51e27dddd..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/attach_contact_to_conversation_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.AttachContactToConversation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'conversation_id': 'conv_12345', - 'request_body': '{"contact_email":"example@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/auto_assign_intercom_conversation_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/auto_assign_intercom_conversation_example_call_tool.js deleted file mode 100644 index 2f7c9a73f..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/auto_assign_intercom_conversation_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.AutoAssignIntercomConversation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/auto_assign_intercom_conversation_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/auto_assign_intercom_conversation_example_call_tool.py deleted file mode 100644 index 388616e27..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/auto_assign_intercom_conversation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.AutoAssignIntercomConversation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/cancel_data_export_job_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/cancel_data_export_job_example_call_tool.js deleted file mode 100644 index f3c754e59..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/cancel_data_export_job_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CancelDataExportJob"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_identifier": "export_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/cancel_data_export_job_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/cancel_data_export_job_example_call_tool.py deleted file mode 100644 index 0a8fb60fd..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/cancel_data_export_job_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CancelDataExportJob" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_identifier': 'export_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/check_export_job_status_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/check_export_job_status_example_call_tool.js deleted file mode 100644 index 2bd296ab5..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/check_export_job_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CheckExportJobStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_identifier": "export_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/check_export_job_status_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/check_export_job_status_example_call_tool.py deleted file mode 100644 index d8538e0f4..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/check_export_job_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CheckExportJobStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_identifier': 'export_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/convert_visitor_to_user_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/convert_visitor_to_user_example_call_tool.js deleted file mode 100644 index 0c35269ff..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/convert_visitor_to_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ConvertVisitorToUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"visitor_id\":\"12345\",\"role\":\"lead\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/convert_visitor_to_user_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/convert_visitor_to_user_example_call_tool.py deleted file mode 100644 index 2b9825a46..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/convert_visitor_to_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ConvertVisitorToUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"visitor_id":"12345","role":"lead"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_admin_initiated_message_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/create_admin_initiated_message_example_call_tool.js deleted file mode 100644 index 15f32620a..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_admin_initiated_message_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CreateAdminInitiatedMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"message\":\"Hello, this is an admin message!\",\"type\":\"in_app\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_admin_initiated_message_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/create_admin_initiated_message_example_call_tool.py deleted file mode 100644 index 4ec444fb6..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_admin_initiated_message_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CreateAdminInitiatedMessage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"message":"Hello, this is an admin message!","type":"in_app"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_contact_conversation_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/create_contact_conversation_example_call_tool.js deleted file mode 100644 index 977c3edf2..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_contact_conversation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CreateContactConversation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"contact_id\":\"12345\",\"message\":\"Hello, how can I help you?\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_contact_conversation_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/create_contact_conversation_example_call_tool.py deleted file mode 100644 index 8f9c8c0ae..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_contact_conversation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CreateContactConversation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"contact_id":"12345","message":"Hello, how can I help you?"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_data_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/create_data_attribute_example_call_tool.js deleted file mode 100644 index 5dd3ea92c..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_data_attribute_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CreateDataAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"attribute_name\":\"new_attribute\",\"attribute_value\":\"sample_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_data_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/create_data_attribute_example_call_tool.py deleted file mode 100644 index 31c26ac11..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_data_attribute_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CreateDataAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"attribute_name":"new_attribute","attribute_value":"sample_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_event_summaries_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/create_event_summaries_example_call_tool.js deleted file mode 100644 index cbf59c34b..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_event_summaries_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CreateEventSummaries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_name_for_summaries": "updated-plan", - "event_occurrence_count": 5, - "first_event_timestamp": 1633036800, - "user_identifier": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_event_summaries_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/create_event_summaries_example_call_tool.py deleted file mode 100644 index ce540b9c5..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_event_summaries_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CreateEventSummaries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_name_for_summaries': 'updated-plan', - 'event_occurrence_count': 5, - 'first_event_timestamp': 1633036800, - 'user_identifier': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_help_center_collection_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/create_help_center_collection_example_call_tool.js deleted file mode 100644 index 634b67382..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_help_center_collection_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CreateHelpCenterCollection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"New Collection\",\"description\":\"This is a new help center collection.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_help_center_collection_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/create_help_center_collection_example_call_tool.py deleted file mode 100644 index 2a876a64d..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_help_center_collection_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CreateHelpCenterCollection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"title":"New Collection","description":"This is a new help center ' - 'collection."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_help_center_section_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/create_help_center_section_example_call_tool.js deleted file mode 100644 index 8d93a6eed..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_help_center_section_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CreateHelpCenterSection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"New Section\",\"description\":\"This section covers new topics.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_help_center_section_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/create_help_center_section_example_call_tool.py deleted file mode 100644 index b54d79ee6..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_help_center_section_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CreateHelpCenterSection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"title":"New Section","description":"This section covers new topics."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_intercom_article_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/create_intercom_article_example_call_tool.js deleted file mode 100644 index 30febddac..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_intercom_article_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CreateIntercomArticle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"Sample Article\",\"content\":\"This is a sample article content.\",\"category\":\"Knowledge Base\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_intercom_article_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/create_intercom_article_example_call_tool.py deleted file mode 100644 index 43fecde15..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_intercom_article_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CreateIntercomArticle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"title":"Sample Article","content":"This is a sample article ' - 'content.","category":"Knowledge Base"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_intercom_ticket_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/create_intercom_ticket_example_call_tool.js deleted file mode 100644 index 11e15225b..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_intercom_ticket_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CreateIntercomTicket"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"subject\":\"Issue with login\",\"description\":\"User unable to log in to their account.\",\"priority\":\"high\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_intercom_ticket_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/create_intercom_ticket_example_call_tool.py deleted file mode 100644 index 358e9faae..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_intercom_ticket_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CreateIntercomTicket" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"subject":"Issue with login","description":"User unable to log in to their ' - 'account.","priority":"high"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_message_data_export_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/create_message_data_export_example_call_tool.js deleted file mode 100644 index c12970dba..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_message_data_export_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CreateMessageDataExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"start_date\":\"2023-01-01\",\"end_date\":\"2023-01-31\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_message_data_export_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/create_message_data_export_example_call_tool.py deleted file mode 100644 index 9e340a284..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_message_data_export_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CreateMessageDataExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"start_date":"2023-01-01","end_date":"2023-01-31"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_new_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/create_new_contact_example_call_tool.js deleted file mode 100644 index 9529f2b47..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_new_contact_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CreateNewContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"phone\":\"1234567890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_new_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/create_new_contact_example_call_tool.py deleted file mode 100644 index 685afc354..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_new_contact_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CreateNewContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com","phone":"1234567890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_news_item_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/create_news_item_example_call_tool.js deleted file mode 100644 index 85090dbe3..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_news_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CreateNewsItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"New Feature Release\",\"content\":\"We are excited to announce the release of our new feature!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_news_item_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/create_news_item_example_call_tool.py deleted file mode 100644 index 61e1afa78..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_news_item_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CreateNewsItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"title":"New Feature Release","content":"We are excited to announce the ' - 'release of our new feature!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_or_update_company_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/create_or_update_company_example_call_tool.js deleted file mode 100644 index a3bf07f19..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_or_update_company_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CreateOrUpdateCompany"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"company_id\":\"12345\",\"name\":\"Acme Corp\",\"industry\":\"Technology\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_or_update_company_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/create_or_update_company_example_call_tool.py deleted file mode 100644 index 0a1ff0a87..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_or_update_company_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CreateOrUpdateCompany" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"company_id":"12345","name":"Acme Corp","industry":"Technology"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_ticket_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/create_ticket_attribute_example_call_tool.js deleted file mode 100644 index 3ebc55367..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_ticket_attribute_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CreateTicketAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "ticket_type_identifier": "ticket_123", - "request_body": "{\"name\":\"priority\",\"type\":\"string\",\"description\":\"The priority level of the ticket\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_ticket_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/create_ticket_attribute_example_call_tool.py deleted file mode 100644 index 3a12bb155..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_ticket_attribute_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CreateTicketAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'ticket_type_identifier': 'ticket_123', - 'request_body': '{"name":"priority","type":"string","description":"The priority level of the ' - 'ticket"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_ticket_type_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/create_ticket_type_example_call_tool.js deleted file mode 100644 index 6b8ca7c0d..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_ticket_type_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.CreateTicketType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"Bug Report\",\"description\":\"A report for a bug found in the application.\",\"emoji\":\"🐞\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/create_ticket_type_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/create_ticket_type_example_call_tool.py deleted file mode 100644 index cc13f43b9..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/create_ticket_type_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.CreateTicketType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"title":"Bug Report","description":"A report for a bug found in the ' - 'application.","emoji":"🐞"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/deflect_phone_calls_to_messenger_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/deflect_phone_calls_to_messenger_example_call_tool.js deleted file mode 100644 index fcb632fc2..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/deflect_phone_calls_to_messenger_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.DeflectPhoneCallsToMessenger"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"phone_number\":\"+1234567890\",\"message\":\"Please chat with us on Messenger!\",\"custom_attributes\":{\"source\":\"website\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/deflect_phone_calls_to_messenger_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/deflect_phone_calls_to_messenger_example_call_tool.py deleted file mode 100644 index 9ed9aa808..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/deflect_phone_calls_to_messenger_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.DeflectPhoneCallsToMessenger" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"phone_number":"+1234567890","message":"Please chat with us on ' - 'Messenger!","custom_attributes":{"source":"website"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/delete_collection_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/delete_collection_example_call_tool.js deleted file mode 100644 index 1405b41b2..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/delete_collection_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.DeleteCollection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/delete_collection_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/delete_collection_example_call_tool.py deleted file mode 100644 index 48ac1f349..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/delete_collection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.DeleteCollection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/delete_company_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/delete_company_example_call_tool.js deleted file mode 100644 index 1bf9ed2dd..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/delete_company_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.DeleteCompany"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "company_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/delete_company_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/delete_company_example_call_tool.py deleted file mode 100644 index 4bc5cccd3..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/delete_company_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.DeleteCompany" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'company_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/delete_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/delete_contact_example_call_tool.js deleted file mode 100644 index 960c68b77..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/delete_contact_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.DeleteContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/delete_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/delete_contact_example_call_tool.py deleted file mode 100644 index 006eaacab..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/delete_contact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.DeleteContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/delete_intercom_article_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/delete_intercom_article_example_call_tool.js deleted file mode 100644 index 2d21c330b..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/delete_intercom_article_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.DeleteIntercomArticle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "article_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/delete_intercom_article_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/delete_intercom_article_example_call_tool.py deleted file mode 100644 index 28cef9421..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/delete_intercom_article_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.DeleteIntercomArticle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'article_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/delete_intercom_section_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/delete_intercom_section_example_call_tool.js deleted file mode 100644 index 27ccb1cf1..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/delete_intercom_section_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.DeleteIntercomSection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "section_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/delete_intercom_section_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/delete_intercom_section_example_call_tool.py deleted file mode 100644 index b32823c9d..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/delete_intercom_section_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.DeleteIntercomSection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'section_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/delete_news_item_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/delete_news_item_example_call_tool.js deleted file mode 100644 index 4c9115c29..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/delete_news_item_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.DeleteNewsItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "news_item_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/delete_news_item_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/delete_news_item_example_call_tool.py deleted file mode 100644 index 22520167e..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/delete_news_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.DeleteNewsItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'news_item_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/detach_company_from_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/detach_company_from_contact_example_call_tool.js deleted file mode 100644 index c7972b5bb..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/detach_company_from_contact_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.DetachCompanyFromContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "company_id": "12345", - "contact_identifier": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/detach_company_from_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/detach_company_from_contact_example_call_tool.py deleted file mode 100644 index 490638907..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/detach_company_from_contact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.DetachCompanyFromContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'company_id': '12345', 'contact_identifier': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/detach_contact_from_conversation_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/detach_contact_from_conversation_example_call_tool.js deleted file mode 100644 index 433a48c70..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/detach_contact_from_conversation_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.DetachContactFromConversation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_identifier": "12345", - "conversation_identifier": "67890", - "admin_id": { - "id": "admin_001" - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/detach_contact_from_conversation_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/detach_contact_from_conversation_example_call_tool.py deleted file mode 100644 index 777970389..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/detach_contact_from_conversation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.DetachContactFromConversation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_identifier': '12345', 'conversation_identifier': '67890', 'admin_id': {'id': 'admin_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/download_intercom_data_export_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/download_intercom_data_export_example_call_tool.js deleted file mode 100644 index b3a6cbf40..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/download_intercom_data_export_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.DownloadIntercomDataExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_identifier": "export_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/download_intercom_data_export_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/download_intercom_data_export_example_call_tool.py deleted file mode 100644 index dd1b2b7a4..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/download_intercom_data_export_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.DownloadIntercomDataExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_identifier': 'export_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_all_contacts_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_all_contacts_example_call_tool.js deleted file mode 100644 index 73a2ef3bd..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_all_contacts_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchAllContacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_all_contacts_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_all_contacts_example_call_tool.py deleted file mode 100644 index 2102087d6..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_all_contacts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchAllContacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_all_newsfeeds_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_all_newsfeeds_example_call_tool.js deleted file mode 100644 index 3ccba82ad..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_all_newsfeeds_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchAllNewsfeeds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_all_newsfeeds_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_all_newsfeeds_example_call_tool.py deleted file mode 100644 index 60473dfa0..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_all_newsfeeds_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchAllNewsfeeds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_company_contacts_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_company_contacts_example_call_tool.js deleted file mode 100644 index edb85a539..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_company_contacts_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchCompanyContacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "company_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_company_contacts_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_company_contacts_example_call_tool.py deleted file mode 100644 index f516e8c95..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_company_contacts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchCompanyContacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'company_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_company_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_company_details_example_call_tool.js deleted file mode 100644 index f7e59c078..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_company_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchCompanyDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "company_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_company_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_company_details_example_call_tool.py deleted file mode 100644 index b0a1fd48a..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_company_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchCompanyDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'company_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_companies_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_companies_example_call_tool.js deleted file mode 100644 index 386f71a5f..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_companies_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchContactCompanies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_companies_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_companies_example_call_tool.py deleted file mode 100644 index 226177f3f..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_companies_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchContactCompanies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_details_example_call_tool.js deleted file mode 100644 index 1ed8aff94..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchContactDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_details_example_call_tool.py deleted file mode 100644 index 6cf9acca6..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchContactDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_notes_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_notes_example_call_tool.js deleted file mode 100644 index f743f331c..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_notes_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchContactNotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_notes_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_notes_example_call_tool.py deleted file mode 100644 index 63e9b090e..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_contact_notes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchContactNotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_conversation_list_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_conversation_list_example_call_tool.js deleted file mode 100644 index 252a58bc9..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_conversation_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchConversationList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_starting_cursor": "abc123", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_conversation_list_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_conversation_list_example_call_tool.py deleted file mode 100644 index fa0a5d415..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_conversation_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchConversationList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_starting_cursor': 'abc123', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_intercom_article_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_intercom_article_example_call_tool.js deleted file mode 100644 index a1c880fc6..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_intercom_article_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchIntercomArticle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "article_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_intercom_article_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_intercom_article_example_call_tool.py deleted file mode 100644 index 3ae71b60c..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_intercom_article_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchIntercomArticle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'article_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_intercom_collection_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_intercom_collection_details_example_call_tool.js deleted file mode 100644 index ff63659e5..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_intercom_collection_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchIntercomCollectionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_intercom_collection_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_intercom_collection_details_example_call_tool.py deleted file mode 100644 index 3360a43e2..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_intercom_collection_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchIntercomCollectionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_live_newsfeed_items_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_live_newsfeed_items_example_call_tool.js deleted file mode 100644 index e0fcebb7b..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_live_newsfeed_items_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchLiveNewsfeedItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "newsfeed_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_live_newsfeed_items_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_live_newsfeed_items_example_call_tool.py deleted file mode 100644 index 9b48ba84a..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_live_newsfeed_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchLiveNewsfeedItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'newsfeed_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_news_items_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_news_items_example_call_tool.js deleted file mode 100644 index e75e7dd94..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_news_items_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchNewsItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_news_items_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_news_items_example_call_tool.py deleted file mode 100644 index 77a84bd64..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_news_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchNewsItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_newsfeed_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_newsfeed_details_example_call_tool.js deleted file mode 100644 index 56357e30c..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_newsfeed_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchNewsfeedDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "newsfeed_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_newsfeed_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_newsfeed_details_example_call_tool.py deleted file mode 100644 index 9119197b1..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_newsfeed_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchNewsfeedDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'newsfeed_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_note_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_note_details_example_call_tool.js deleted file mode 100644 index cb52651db..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_note_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchNoteDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "note_id": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_note_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_note_details_example_call_tool.py deleted file mode 100644 index 993e9ea14..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_note_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchNoteDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'note_id': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_tag_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_tag_details_example_call_tool.js deleted file mode 100644 index 424e8be60..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_tag_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchTagDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tag_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_tag_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_tag_details_example_call_tool.py deleted file mode 100644 index 61dba2b29..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_tag_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchTagDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tag_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_ticket_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_ticket_details_example_call_tool.js deleted file mode 100644 index c5df23ac4..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_ticket_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchTicketDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_ticket_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_ticket_details_example_call_tool.py deleted file mode 100644 index f611b3856..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_ticket_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchTicketDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_ticket_type_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_ticket_type_details_example_call_tool.js deleted file mode 100644 index afaef4a75..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_ticket_type_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchTicketTypeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_type_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_ticket_type_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_ticket_type_details_example_call_tool.py deleted file mode 100644 index dfdf2efb1..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_ticket_type_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchTicketTypeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_type_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_visitor_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_visitor_details_example_call_tool.js deleted file mode 100644 index fb08d8e83..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_visitor_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchVisitorDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "visitor_user_id": "user_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_visitor_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_visitor_details_example_call_tool.py deleted file mode 100644 index cd572f458..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_visitor_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchVisitorDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'visitor_user_id': 'user_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_workspace_admins_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_workspace_admins_example_call_tool.js deleted file mode 100644 index 362298af2..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_workspace_admins_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchWorkspaceAdmins"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_workspace_admins_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_workspace_admins_example_call_tool.py deleted file mode 100644 index 55ea5cc4f..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_workspace_admins_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchWorkspaceAdmins" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_workspace_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/fetch_workspace_tags_example_call_tool.js deleted file mode 100644 index e7ce95ae6..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_workspace_tags_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.FetchWorkspaceTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/fetch_workspace_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/fetch_workspace_tags_example_call_tool.py deleted file mode 100644 index e274505ea..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/fetch_workspace_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.FetchWorkspaceTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_admin_activity_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/get_admin_activity_logs_example_call_tool.js deleted file mode 100644 index 0715827ad..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_admin_activity_logs_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.GetAdminActivityLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "start_date_unix_timestamp": "1672531200", - "end_date_unix_timestamp": "1672617600" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_admin_activity_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/get_admin_activity_logs_example_call_tool.py deleted file mode 100644 index a25951d21..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_admin_activity_logs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.GetAdminActivityLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'start_date_unix_timestamp': '1672531200', 'end_date_unix_timestamp': '1672617600' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_all_segments_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/get_all_segments_example_call_tool.js deleted file mode 100644 index 9af965c23..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_all_segments_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.GetAllSegments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_contact_count": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_all_segments_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/get_all_segments_example_call_tool.py deleted file mode 100644 index 81018b8df..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_all_segments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.GetAllSegments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_contact_count': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_company_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/get_company_details_example_call_tool.js deleted file mode 100644 index 163b31543..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_company_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.GetCompanyDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "company_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_company_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/get_company_details_example_call_tool.py deleted file mode 100644 index 87f0b0d56..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_company_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.GetCompanyDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'company_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_contact_segments_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/get_contact_segments_example_call_tool.js deleted file mode 100644 index 09ed2012c..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_contact_segments_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.GetContactSegments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_unique_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_contact_segments_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/get_contact_segments_example_call_tool.py deleted file mode 100644 index fc65101f1..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_contact_segments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.GetContactSegments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_unique_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_contact_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/get_contact_tags_example_call_tool.js deleted file mode 100644 index f8214de64..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_contact_tags_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.GetContactTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_unique_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_contact_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/get_contact_tags_example_call_tool.py deleted file mode 100644 index 21c465568..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_contact_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.GetContactTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_unique_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_conversation_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/get_conversation_details_example_call_tool.js deleted file mode 100644 index a806be3fa..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_conversation_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.GetConversationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_id": 12345, - "retrieve_plaintext_conversation": "plaintext" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_conversation_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/get_conversation_details_example_call_tool.py deleted file mode 100644 index c74bacdb6..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_conversation_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.GetConversationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_id': 12345, 'retrieve_plaintext_conversation': 'plaintext' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_current_admin_info_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/get_current_admin_info_example_call_tool.js deleted file mode 100644 index f3f9e85c9..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_current_admin_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.GetCurrentAdminInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_current_admin_info_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/get_current_admin_info_example_call_tool.py deleted file mode 100644 index 767de7890..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_current_admin_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.GetCurrentAdminInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_help_center_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/get_help_center_details_example_call_tool.js deleted file mode 100644 index e2951f8e3..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_help_center_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.GetHelpCenterDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "help_center_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_help_center_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/get_help_center_details_example_call_tool.py deleted file mode 100644 index ab729f37b..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_help_center_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.GetHelpCenterDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'help_center_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_news_item_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/get_news_item_details_example_call_tool.js deleted file mode 100644 index d37b89710..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_news_item_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.GetNewsItemDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "news_item_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_news_item_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/get_news_item_details_example_call_tool.py deleted file mode 100644 index fcbf7877f..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_news_item_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.GetNewsItemDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'news_item_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_recent_help_center_sections_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/get_recent_help_center_sections_example_call_tool.js deleted file mode 100644 index e0f0ef3d0..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_recent_help_center_sections_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.GetRecentHelpCenterSections"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_recent_help_center_sections_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/get_recent_help_center_sections_example_call_tool.py deleted file mode 100644 index 8b936d551..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_recent_help_center_sections_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.GetRecentHelpCenterSections" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_section_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/get_section_details_example_call_tool.js deleted file mode 100644 index 5f1d57084..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_section_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.GetSectionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "section_id": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_section_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/get_section_details_example_call_tool.py deleted file mode 100644 index 9550f6d0a..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_section_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.GetSectionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'section_id': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_segment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/get_segment_details_example_call_tool.js deleted file mode 100644 index d8a67b5e3..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_segment_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.GetSegmentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "segment_id": "seg_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_segment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/get_segment_details_example_call_tool.py deleted file mode 100644 index a73fc10ab..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_segment_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.GetSegmentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'segment_id': 'seg_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_team_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/get_team_details_example_call_tool.js deleted file mode 100644 index 5b369c6f7..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_team_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.GetTeamDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_unique_identifier": "team_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_team_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/get_team_details_example_call_tool.py deleted file mode 100644 index 7ecb6573a..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_team_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.GetTeamDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_unique_identifier': 'team_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_ticket_types_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/get_ticket_types_example_call_tool.js deleted file mode 100644 index 1dbfb98dd..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_ticket_types_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.GetTicketTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/get_ticket_types_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/get_ticket_types_example_call_tool.py deleted file mode 100644 index 512a748e5..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/get_ticket_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.GetTicketTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_app_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/list_app_teams_example_call_tool.js deleted file mode 100644 index e29f99f85..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_app_teams_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ListAppTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_app_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/list_app_teams_example_call_tool.py deleted file mode 100644 index c43d27d41..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_app_teams_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ListAppTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_collections_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/list_collections_example_call_tool.js deleted file mode 100644 index 1e1890597..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_collections_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ListCollections"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_collections_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/list_collections_example_call_tool.py deleted file mode 100644 index eaac90c96..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_collections_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ListCollections" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_companies_intercom_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/list_companies_intercom_example_call_tool.js deleted file mode 100644 index 6c5d71c71..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_companies_intercom_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ListCompaniesIntercom"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "page_number": 1, - "results_per_page": 10, - "sort_order": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_companies_intercom_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/list_companies_intercom_example_call_tool.py deleted file mode 100644 index 0879a7b42..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_companies_intercom_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ListCompaniesIntercom" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'page_number': 1, 'results_per_page': 10, 'sort_order': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_company_segments_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/list_company_segments_example_call_tool.js deleted file mode 100644 index 8b4a56abb..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_company_segments_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ListCompanySegments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "company_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_company_segments_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/list_company_segments_example_call_tool.py deleted file mode 100644 index 2de0abeba..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_company_segments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ListCompanySegments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'company_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_contact_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/list_contact_subscriptions_example_call_tool.js deleted file mode 100644 index f1d301103..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_contact_subscriptions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ListContactSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_contact_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/list_contact_subscriptions_example_call_tool.py deleted file mode 100644 index 8433a0cba..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_contact_subscriptions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ListContactSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_help_centers_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/list_help_centers_example_call_tool.js deleted file mode 100644 index 0a4503548..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_help_centers_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ListHelpCenters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_help_centers_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/list_help_centers_example_call_tool.py deleted file mode 100644 index b8bfdbc20..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_help_centers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ListHelpCenters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_recent_articles_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/list_recent_articles_example_call_tool.js deleted file mode 100644 index 973109f81..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_recent_articles_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ListRecentArticles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_recent_articles_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/list_recent_articles_example_call_tool.py deleted file mode 100644 index f6819c9b1..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_recent_articles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ListRecentArticles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_subscription_types_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/list_subscription_types_example_call_tool.js deleted file mode 100644 index ded60cad3..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_subscription_types_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ListSubscriptionTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_subscription_types_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/list_subscription_types_example_call_tool.py deleted file mode 100644 index ec13e67d2..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_subscription_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ListSubscriptionTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_workspace_data_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/list_workspace_data_attributes_example_call_tool.js deleted file mode 100644 index 8142fe8c9..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_workspace_data_attributes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ListWorkspaceDataAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "data_attribute_model": "contact", - "include_archived_attributes": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/list_workspace_data_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/list_workspace_data_attributes_example_call_tool.py deleted file mode 100644 index 4fa884013..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/list_workspace_data_attributes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ListWorkspaceDataAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'data_attribute_model': 'contact', 'include_archived_attributes': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/manage_contact_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/manage_contact_subscription_example_call_tool.js deleted file mode 100644 index 639a7563e..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/manage_contact_subscription_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ManageContactSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "contact_identifier": "12345", - "request_body": "{\"subscription_type\":\"newsletter\",\"opt_in\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/manage_contact_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/manage_contact_subscription_example_call_tool.py deleted file mode 100644 index 604dde058..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/manage_contact_subscription_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ManageContactSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'contact_identifier': '12345', - 'request_body': '{"subscription_type":"newsletter","opt_in":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/manage_conversation_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/manage_conversation_example_call_tool.js deleted file mode 100644 index 274c35905..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/manage_conversation_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ManageConversation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "conversation_id": "12345", - "request_body": "{\"status\":\"closed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/manage_conversation_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/manage_conversation_example_call_tool.py deleted file mode 100644 index 064048189..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/manage_conversation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ManageConversation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'conversation_id': '12345', 'request_body': '{"status":"closed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/manage_tag_operations_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/manage_tag_operations_example_call_tool.js deleted file mode 100644 index 9afceda11..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/manage_tag_operations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ManageTagOperations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"operation\":\"create\",\"tag\":\"new_tag\",\"target_type\":\"company\",\"target_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/manage_tag_operations_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/manage_tag_operations_example_call_tool.py deleted file mode 100644 index 40bc6e126..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/manage_tag_operations_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ManageTagOperations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"operation":"create","tag":"new_tag","target_type":"company","target_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/merge_contact_intercom_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/merge_contact_intercom_example_call_tool.js deleted file mode 100644 index bfa152875..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/merge_contact_intercom_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.MergeContactIntercom"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "lead_contact_id": "lead_12345", - "merge_into_user_id": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/merge_contact_intercom_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/merge_contact_intercom_example_call_tool.py deleted file mode 100644 index 1bbffa1b2..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/merge_contact_intercom_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.MergeContactIntercom" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'lead_contact_id': 'lead_12345', 'merge_into_user_id': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/redact_conversation_part_or_message_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/redact_conversation_part_or_message_example_call_tool.js deleted file mode 100644 index d399049d2..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/redact_conversation_part_or_message_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.RedactConversationPartOrMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"conversation_id\":\"12345\",\"message_id\":\"67890\",\"redaction_reason\":\"sensitive information\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/redact_conversation_part_or_message_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/redact_conversation_part_or_message_example_call_tool.py deleted file mode 100644 index d78eea62c..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/redact_conversation_part_or_message_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.RedactConversationPartOrMessage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"conversation_id":"12345","message_id":"67890","redaction_reason":"sensitive ' - 'information"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/remove_subscription_from_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/remove_subscription_from_contact_example_call_tool.js deleted file mode 100644 index c13936710..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/remove_subscription_from_contact_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.RemoveSubscriptionFromContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_identifier": "12345", - "subscription_type_id": "sub_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/remove_subscription_from_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/remove_subscription_from_contact_example_call_tool.py deleted file mode 100644 index b3f5633c4..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/remove_subscription_from_contact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.RemoveSubscriptionFromContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_identifier': '12345', 'subscription_type_id': 'sub_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/remove_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/remove_tag_example_call_tool.js deleted file mode 100644 index 96ab3fb6b..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/remove_tag_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.RemoveTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tag_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/remove_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/remove_tag_example_call_tool.py deleted file mode 100644 index fc9a1c308..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/remove_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.RemoveTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tag_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/remove_tag_from_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/remove_tag_from_contact_example_call_tool.js deleted file mode 100644 index 25e0593f5..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/remove_tag_from_contact_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.RemoveTagFromContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id": "12345", - "tag_identifier": "tag_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/remove_tag_from_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/remove_tag_from_contact_example_call_tool.py deleted file mode 100644 index 085fd02a0..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/remove_tag_from_contact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.RemoveTagFromContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id': '12345', 'tag_identifier': 'tag_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/remove_tag_from_conversation_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/remove_tag_from_conversation_example_call_tool.js deleted file mode 100644 index b155a78ef..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/remove_tag_from_conversation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.RemoveTagFromConversation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "conversation_id": "12345", - "tag_id": "67890", - "request_body": "{\"action\":\"remove\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/remove_tag_from_conversation_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/remove_tag_from_conversation_example_call_tool.py deleted file mode 100644 index 08fb761b5..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/remove_tag_from_conversation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.RemoveTagFromConversation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'conversation_id': '12345', - 'tag_id': '67890', - 'request_body': '{"action":"remove"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/reply_to_intercom_conversation_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/reply_to_intercom_conversation_example_call_tool.js deleted file mode 100644 index 34afdacdf..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/reply_to_intercom_conversation_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ReplyToIntercomConversation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "conversation_identifier": "last", - "request_body": "{\"message\":\"Hello, how can I assist you today?\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/reply_to_intercom_conversation_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/reply_to_intercom_conversation_example_call_tool.py deleted file mode 100644 index 3da986f84..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/reply_to_intercom_conversation_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ReplyToIntercomConversation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'conversation_identifier': 'last', - 'request_body': '{"message":"Hello, how can I assist you today?"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/reply_to_ticket_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/reply_to_ticket_example_call_tool.js deleted file mode 100644 index fdc2b1374..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/reply_to_ticket_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ReplyToTicket"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "ticket_id": "12345", - "request_body": "{\"note\":\"This is an admin update.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/reply_to_ticket_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/reply_to_ticket_example_call_tool.py deleted file mode 100644 index 0ed3bb0ae..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/reply_to_ticket_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ReplyToTicket" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'ticket_id': '12345', 'request_body': '{"note":"This is an admin update."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/retrieve_admin_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/retrieve_admin_details_example_call_tool.js deleted file mode 100644 index d116074fd..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/retrieve_admin_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.RetrieveAdminDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "admin_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/retrieve_admin_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/retrieve_admin_details_example_call_tool.py deleted file mode 100644 index b77277a7d..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/retrieve_admin_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.RetrieveAdminDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'admin_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/scroll_through_all_companies_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/scroll_through_all_companies_example_call_tool.js deleted file mode 100644 index 5f122f0b3..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/scroll_through_all_companies_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.ScrollThroughAllCompanies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "scroll_page_identifier": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/scroll_through_all_companies_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/scroll_through_all_companies_example_call_tool.py deleted file mode 100644 index 838e6a0ba..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/scroll_through_all_companies_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.ScrollThroughAllCompanies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'scroll_page_identifier': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/search_conversations_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/search_conversations_example_call_tool.js deleted file mode 100644 index c765efd86..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/search_conversations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.SearchConversations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filters\":{\"id\":\"12345\",\"created_date\":\"2023-10-01\"},\"pagination\":{\"page\":1,\"limit\":10}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/search_conversations_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/search_conversations_example_call_tool.py deleted file mode 100644 index 33cb94b9c..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/search_conversations_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.SearchConversations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"filters":{"id":"12345","created_date":"2023-10-01"},"pagination":{"page":1,"limit":10}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/search_intercom_contacts_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/search_intercom_contacts_example_call_tool.js deleted file mode 100644 index 18925fa85..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/search_intercom_contacts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.SearchIntercomContacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filters\":{\"email\":\"example@example.com\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/search_intercom_contacts_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/search_intercom_contacts_example_call_tool.py deleted file mode 100644 index 9c188d8f9..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/search_intercom_contacts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.SearchIntercomContacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"filters":{"email":"example@example.com"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/send_intercom_event_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/send_intercom_event_example_call_tool.js deleted file mode 100644 index 4f3df8509..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/send_intercom_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.SendIntercomEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event\":\"user_signup\",\"user_id\":\"12345\",\"metadata\":{\"source\":\"website\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/send_intercom_event_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/send_intercom_event_example_call_tool.py deleted file mode 100644 index ce761e835..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/send_intercom_event_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.SendIntercomEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"event":"user_signup","user_id":"12345","metadata":{"source":"website"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/set_admin_away_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/set_admin_away_example_call_tool.js deleted file mode 100644 index 91d6ef236..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/set_admin_away_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.SetAdminAway"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "admin_id": 123, - "request_body": "{\"status\":\"away\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/set_admin_away_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/set_admin_away_example_call_tool.py deleted file mode 100644 index 5b04659e7..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/set_admin_away_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.SetAdminAway" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'admin_id': 123, 'request_body': '{"status":"away"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/tag_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/tag_contact_example_call_tool.js deleted file mode 100644 index d37941106..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/tag_contact_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.TagContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "contact_id": "12345", - "request_body": "{\"tag\":\"new_customer\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/tag_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/tag_contact_example_call_tool.py deleted file mode 100644 index b2e913018..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/tag_contact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.TagContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'contact_id': '12345', 'request_body': '{"tag":"new_customer"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/tag_conversation_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/tag_conversation_example_call_tool.js deleted file mode 100644 index 5fabd9aa0..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/tag_conversation_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.TagConversation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "conversation_id": "12345", - "request_body": "{\"tag\":\"important\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/tag_conversation_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/tag_conversation_example_call_tool.py deleted file mode 100644 index 680429c69..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/tag_conversation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.TagConversation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'conversation_id': '12345', 'request_body': '{"tag":"important"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/unarchive_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/unarchive_contact_example_call_tool.js deleted file mode 100644 index 96b1e2353..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/unarchive_contact_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.UnarchiveContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/unarchive_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/unarchive_contact_example_call_tool.py deleted file mode 100644 index 482adf377..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/unarchive_contact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.UnarchiveContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_article_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/update_article_details_example_call_tool.js deleted file mode 100644 index 7d7970358..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_article_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.UpdateArticleDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "article_identifier": 123, - "request_body": "{\"title\":\"Updated Article Title\",\"content\":\"This is the updated content of the article.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_article_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/update_article_details_example_call_tool.py deleted file mode 100644 index 58d688224..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_article_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.UpdateArticleDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'article_identifier': 123, - 'request_body': '{"title":"Updated Article Title","content":"This is the updated content of ' - 'the article."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_collection_details_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/update_collection_details_example_call_tool.js deleted file mode 100644 index e8995cffb..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_collection_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.UpdateCollectionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "collection_id": 123, - "request_body": "{\"name\":\"Updated Collection\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_collection_details_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/update_collection_details_example_call_tool.py deleted file mode 100644 index 06f355920..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_collection_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.UpdateCollectionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'collection_id': 123, - 'request_body': '{"name":"Updated Collection","description":"This is an updated description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_company_info_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/update_company_info_example_call_tool.js deleted file mode 100644 index d4fc7aeea..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_company_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.UpdateCompanyInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "company_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_company_info_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/update_company_info_example_call_tool.py deleted file mode 100644 index 7186fcf3f..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_company_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.UpdateCompanyInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'company_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_conversation_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/update_conversation_example_call_tool.js deleted file mode 100644 index 709e17a98..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_conversation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.UpdateConversation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "conversation_id": 123, - "retrieve_messages_as_plaintext": "plaintext", - "request_body": "{\"title\":\"Updated Conversation Title\",\"participants\":[\"user1\",\"user2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_conversation_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/update_conversation_example_call_tool.py deleted file mode 100644 index 09425b398..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_conversation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.UpdateConversation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'conversation_id': 123, - 'retrieve_messages_as_plaintext': 'plaintext', - 'request_body': '{"title":"Updated Conversation Title","participants":["user1","user2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_data_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/update_data_attribute_example_call_tool.js deleted file mode 100644 index 19922f0d6..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_data_attribute_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.UpdateDataAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "data_attribute_id": 12345, - "allow_messenger_updates": true, - "attribute_description": "User subscription status" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_data_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/update_data_attribute_example_call_tool.py deleted file mode 100644 index 7352492b5..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_data_attribute_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.UpdateDataAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'data_attribute_id': 12345, - 'allow_messenger_updates': True, - 'attribute_description': 'User subscription status' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_help_center_section_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/update_help_center_section_example_call_tool.js deleted file mode 100644 index e5c819b1d..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_help_center_section_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.UpdateHelpCenterSection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "section_id": 123, - "request_body": "{\"title\":\"New Title\",\"content\":\"Updated content for the help section.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_help_center_section_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/update_help_center_section_example_call_tool.py deleted file mode 100644 index df9856e0e..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_help_center_section_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.UpdateHelpCenterSection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'section_id': 123, - 'request_body': '{"title":"New Title","content":"Updated content for the help section."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_intercom_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/update_intercom_contact_example_call_tool.js deleted file mode 100644 index 6cace0d7d..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_intercom_contact_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.UpdateIntercomContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "contact_id": "12345", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_intercom_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/update_intercom_contact_example_call_tool.py deleted file mode 100644 index a5df7d284..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_intercom_contact_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.UpdateIntercomContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'contact_id': '12345', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_news_item_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/update_news_item_example_call_tool.js deleted file mode 100644 index 5be5d9d7c..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_news_item_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.UpdateNewsItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "news_item_id": 123, - "request_body": "{\"title\":\"Updated News Title\",\"content\":\"This is the updated content of the news item.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_news_item_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/update_news_item_example_call_tool.py deleted file mode 100644 index 537ebac20..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_news_item_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.UpdateNewsItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'news_item_id': 123, - 'request_body': '{"title":"Updated News Title","content":"This is the updated content of the ' - 'news item."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_support_ticket_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/update_support_ticket_example_call_tool.js deleted file mode 100644 index 0ba79ee34..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_support_ticket_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.UpdateSupportTicket"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_id": "12345", - "assignee_id": "67890", - "ticket_details": { - "priority": "high", - "subject": "Issue with login" - }, - "ticket_state": "in_progress", - "ticket_visible_to_users": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_support_ticket_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/update_support_ticket_example_call_tool.py deleted file mode 100644 index 970e69a63..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_support_ticket_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.UpdateSupportTicket" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_id': '12345', - 'assignee_id': '67890', - 'ticket_details': {'priority': 'high', 'subject': 'Issue with login'}, - 'ticket_state': 'in_progress', - 'ticket_visible_to_users': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_ticket_type_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/update_ticket_type_attribute_example_call_tool.js deleted file mode 100644 index 150dd25f2..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_ticket_type_attribute_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.UpdateTicketTypeAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "ticket_type_identifier": "ticket_123", - "ticket_attribute_id": "attr_456", - "request_body": "{\"name\":\"New Attribute Name\",\"value\":\"New Value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_ticket_type_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/update_ticket_type_attribute_example_call_tool.py deleted file mode 100644 index 14f32f1ef..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_ticket_type_attribute_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.UpdateTicketTypeAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'ticket_type_identifier': 'ticket_123', - 'ticket_attribute_id': 'attr_456', - 'request_body': '{"name":"New Attribute Name","value":"New Value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_ticket_type_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/update_ticket_type_example_call_tool.js deleted file mode 100644 index 8f07e6578..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_ticket_type_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.UpdateTicketType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_type_id": "12345", - "ticket_type_icon": "🛠️", - "ticket_type_name": "Bug Fix", - "internal_use": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_ticket_type_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/update_ticket_type_example_call_tool.py deleted file mode 100644 index 928e8498b..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_ticket_type_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.UpdateTicketType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_type_id': '12345', - 'ticket_type_icon': '🛠️', - 'ticket_type_name': 'Bug Fix', - 'internal_use': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_visitor_info_example_call_tool.js b/public/examples/integrations/mcp-servers/intercom_api/update_visitor_info_example_call_tool.js deleted file mode 100644 index 8e9a16f6b..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_visitor_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "IntercomApi.UpdateVisitorInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"user_id\":\"12345\",\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/intercom_api/update_visitor_info_example_call_tool.py b/public/examples/integrations/mcp-servers/intercom_api/update_visitor_info_example_call_tool.py deleted file mode 100644 index 28bf2c771..000000000 --- a/public/examples/integrations/mcp-servers/intercom_api/update_visitor_info_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "IntercomApi.UpdateVisitorInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"user_id":"12345","name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/add_comment_to_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/add_comment_to_issue_example_call_tool.js deleted file mode 100644 index 46a4a1386..000000000 --- a/public/examples/integrations/mcp-servers/jira/add_comment_to_issue_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.AddCommentToIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "PROJ-123", - "body": "This is a comment on the issue.", - "reply_to_comment": "456", - "mention_users": [ - "john.doe@example.com", - "jane.smith@example.com" - ], - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/add_comment_to_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/add_comment_to_issue_example_call_tool.py deleted file mode 100644 index c641067bc..000000000 --- a/public/examples/integrations/mcp-servers/jira/add_comment_to_issue_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.AddCommentToIssue" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "PROJ-123", - "body": "This is a comment on the issue.", - "reply_to_comment": "456", - "mention_users": [ - "john.doe@example.com", - "jane.smith@example.com" - ], - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/add_issues_to_sprint_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/add_issues_to_sprint_example_call_tool.js deleted file mode 100644 index 26cf037a5..000000000 --- a/public/examples/integrations/mcp-servers/jira/add_issues_to_sprint_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Jira.AddIssuesToSprint"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "sprint_id": "123", - "issue_ids": [ - "ISSUE-1", - "ISSUE-2", - "ISSUE-3" - ], - "atlassian_cloud_id": "cloud-456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/add_issues_to_sprint_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/add_issues_to_sprint_example_call_tool.py deleted file mode 100644 index 7022041a0..000000000 --- a/public/examples/integrations/mcp-servers/jira/add_issues_to_sprint_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Jira.AddIssuesToSprint" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'sprint_id': '123', - 'issue_ids': ['ISSUE-1', 'ISSUE-2', 'ISSUE-3'], - 'atlassian_cloud_id': 'cloud-456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/add_labels_to_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/add_labels_to_issue_example_call_tool.js deleted file mode 100644 index 5b01586d6..000000000 --- a/public/examples/integrations/mcp-servers/jira/add_labels_to_issue_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.AddLabelsToIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "JIRA-123", - "labels": [ - "bug", - "urgent" - ], - "notify_watchers": true, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/add_labels_to_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/add_labels_to_issue_example_call_tool.py deleted file mode 100644 index 78ad9c516..000000000 --- a/public/examples/integrations/mcp-servers/jira/add_labels_to_issue_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.AddLabelsToIssue" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "JIRA-123", - "labels": [ - "bug", - "urgent" - ], - "notify_watchers": True, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/attach_file_to_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/attach_file_to_issue_example_call_tool.js deleted file mode 100644 index f302a101d..000000000 --- a/public/examples/integrations/mcp-servers/jira/attach_file_to_issue_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.AttachFileToIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "ISSUE-123", - "filename": "report.pdf", - "file_content_base64": "[base64_encoded_content]", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/attach_file_to_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/attach_file_to_issue_example_call_tool.py deleted file mode 100644 index a8dcf9bb0..000000000 --- a/public/examples/integrations/mcp-servers/jira/attach_file_to_issue_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.AttachFileToIssue" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "ISSUE-123", - "filename": "report.pdf", - "file_content_base64": "[base64_encoded_content]", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/create_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/create_issue_example_call_tool.js deleted file mode 100644 index 4ba073b38..000000000 --- a/public/examples/integrations/mcp-servers/jira/create_issue_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.CreateIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "title": "Bug in login feature", - "issue_type": "Bug", - "project": "PROJ123", - "due_date": "2025-01-15", - "description": "There is a bug that prevents users from logging in.", - "labels": [ - "login_issue", - "urgent" - ], - "assignee": "john.doe@example.com", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/create_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/create_issue_example_call_tool.py deleted file mode 100644 index c0318deea..000000000 --- a/public/examples/integrations/mcp-servers/jira/create_issue_example_call_tool.py +++ /dev/null @@ -1,38 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.CreateIssue" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "title": "Bug in login feature", - "issue_type": "Bug", - "project": "PROJ123", - "due_date": "2025-01-15", - "description": "There is a bug that prevents users from logging in.", - "labels": [ - "login_issue", - "urgent" - ], - "assignee": "john.doe@example.com", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/download_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/download_attachment_example_call_tool.js deleted file mode 100644 index 38487feac..000000000 --- a/public/examples/integrations/mcp-servers/jira/download_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.DownloadAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "attachment_id": "12345", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/download_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/download_attachment_example_call_tool.py deleted file mode 100644 index 5c9a7b8c9..000000000 --- a/public/examples/integrations/mcp-servers/jira/download_attachment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.DownloadAttachment" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "attachment_id": "12345", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_attachment_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_attachment_metadata_example_call_tool.js deleted file mode 100644 index cb71e0890..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_attachment_metadata_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.GetAttachmentMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "attachment_id": "att_12345", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_attachment_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_attachment_metadata_example_call_tool.py deleted file mode 100644 index 807d08ebb..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_attachment_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.GetAttachmentMetadata" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "attachment_id": "att_12345", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_available_atlassian_clouds_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_available_atlassian_clouds_example_call_tool.js deleted file mode 100644 index 08b418a06..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_available_atlassian_clouds_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Jira.GetAvailableAtlassianClouds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_available_atlassian_clouds_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_available_atlassian_clouds_example_call_tool.py deleted file mode 100644 index 4825a1cb6..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_available_atlassian_clouds_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Jira.GetAvailableAtlassianClouds" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_board_backlog_issues_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_board_backlog_issues_example_call_tool.js deleted file mode 100644 index f1aa10d99..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_board_backlog_issues_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Jira.GetBoardBacklogIssues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "limit": 50, - "offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_board_backlog_issues_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_board_backlog_issues_example_call_tool.py deleted file mode 100644 index 19c419b4d..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_board_backlog_issues_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Jira.GetBoardBacklogIssues" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'limit': 50, 'offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_boards_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_boards_example_call_tool.js deleted file mode 100644 index 5c65c7685..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_boards_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Jira.GetBoards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifiers_list": [ - "123", - "Project Board" - ], - "limit": 10, - "offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_boards_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_boards_example_call_tool.py deleted file mode 100644 index 01564404d..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_boards_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Jira.GetBoards" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifiers_list': ['123', 'Project Board'], 'limit': 10, 'offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_comment_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_comment_by_id_example_call_tool.js deleted file mode 100644 index 150d22276..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_comment_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.GetCommentById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_id": "ISSUE-123", - "comment_id": "COMMENT-456", - "include_adf_content": true, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_comment_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_comment_by_id_example_call_tool.py deleted file mode 100644 index e9411017b..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_comment_by_id_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.GetCommentById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue_id": "ISSUE-123", - "comment_id": "COMMENT-456", - "include_adf_content": True, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_issue_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_issue_by_id_example_call_tool.js deleted file mode 100644 index f682c0284..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_issue_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.GetIssueById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "JIRA-123", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_issue_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_issue_by_id_example_call_tool.py deleted file mode 100644 index bf06f71ee..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_issue_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.GetIssueById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "JIRA-123", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_issue_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_issue_comments_example_call_tool.js deleted file mode 100644 index efc220505..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_issue_comments_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.GetIssueComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "JIRA-123", - "limit": 10, - "order_by": "created_date_descending", - "include_adf_content": true, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_issue_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_issue_comments_example_call_tool.py deleted file mode 100644 index 384d06010..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_issue_comments_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.GetIssueComments" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "JIRA-123", - "limit": 10, - "order_by": "created_date_descending", - "include_adf_content": True, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_issue_type_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_issue_type_by_id_example_call_tool.js deleted file mode 100644 index bfbbf3caa..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_issue_type_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.GetIssueTypeById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_type_id": "12345", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_issue_type_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_issue_type_by_id_example_call_tool.py deleted file mode 100644 index fbdf91eeb..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_issue_type_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.GetIssueTypeById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue_type_id": "12345", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_issues_without_id_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_issues_without_id_example_call_tool.js deleted file mode 100644 index a598ace6a..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_issues_without_id_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.GetIssuesWithoutId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": "bug", - "due_from": "2023-10-01", - "status": "In Progress", - "assignee": "john.doe@example.com", - "project": "ProjectX", - "limit": 10, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_issues_without_id_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_issues_without_id_example_call_tool.py deleted file mode 100644 index f6366fa2c..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_issues_without_id_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.GetIssuesWithoutId" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "keywords": "bug", - "due_from": "2023-10-01", - "status": "In Progress", - "assignee": "john.doe@example.com", - "project": "ProjectX", - "limit": 10, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_priority_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_priority_by_id_example_call_tool.js deleted file mode 100644 index 8b9bfd119..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_priority_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.GetPriorityById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "priority_id": "12345", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_priority_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_priority_by_id_example_call_tool.py deleted file mode 100644 index 31ace286f..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_priority_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.GetPriorityById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "priority_id": "12345", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_project_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_project_by_id_example_call_tool.js deleted file mode 100644 index f8d8394d6..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_project_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.GetProjectById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project": "PROJ-123", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_project_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_project_by_id_example_call_tool.py deleted file mode 100644 index 5db5c95e0..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_project_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.GetProjectById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "project": "PROJ-123", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_sprint_issues_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_sprint_issues_example_call_tool.js deleted file mode 100644 index c917a6457..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_sprint_issues_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Jira.GetSprintIssues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "sprint_id": "12345", - "limit": 20, - "offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_sprint_issues_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_sprint_issues_example_call_tool.py deleted file mode 100644 index 4d9dd665e..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_sprint_issues_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Jira.GetSprintIssues" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'sprint_id': '12345', 'limit': 20, 'offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_transition_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_transition_by_id_example_call_tool.js deleted file mode 100644 index dfc06c1ac..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_transition_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.GetTransitionById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "ISSUE-123", - "transition_id": "TRANS-456", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_transition_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_transition_by_id_example_call_tool.py deleted file mode 100644 index 71515e188..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_transition_by_id_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.GetTransitionById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "ISSUE-123", - "transition_id": "TRANS-456", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_transition_by_status_name_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_transition_by_status_name_example_call_tool.js deleted file mode 100644 index f5c2063c1..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_transition_by_status_name_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.GetTransitionByStatusName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "ISSUE-123", - "transition": "In Progress", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_transition_by_status_name_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_transition_by_status_name_example_call_tool.py deleted file mode 100644 index 0b3bdbfde..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_transition_by_status_name_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.GetTransitionByStatusName" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "ISSUE-123", - "transition": "In Progress", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_transitions_available_for_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_transitions_available_for_issue_example_call_tool.js deleted file mode 100644 index 4b8ae088c..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_transitions_available_for_issue_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.GetTransitionsAvailableForIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "JIRA-123", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_transitions_available_for_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_transitions_available_for_issue_example_call_tool.py deleted file mode 100644 index 8e222d69e..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_transitions_available_for_issue_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.GetTransitionsAvailableForIssue" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "JIRA-123", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_user_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_user_by_id_example_call_tool.js deleted file mode 100644 index 3cf01ceec..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_user_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.GetUserById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "12345", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_user_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_user_by_id_example_call_tool.py deleted file mode 100644 index 6ac01c0eb..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_user_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.GetUserById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "user_id": "12345", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/get_users_without_id_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/get_users_without_id_example_call_tool.js deleted file mode 100644 index 7d53c29b1..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_users_without_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.GetUsersWithoutId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "name_or_email": "john", - "enforce_exact_match": false, - "limit": 10, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/get_users_without_id_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/get_users_without_id_example_call_tool.py deleted file mode 100644 index e7f8b4397..000000000 --- a/public/examples/integrations/mcp-servers/jira/get_users_without_id_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.GetUsersWithoutId" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "name_or_email": "john", - "enforce_exact_match": False, - "limit": 10, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/list_issue_attachments_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/list_issue_attachments_metadata_example_call_tool.js deleted file mode 100644 index a0ee91e77..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_issue_attachments_metadata_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.ListIssueAttachmentsMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "ISSUE-123", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/list_issue_attachments_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/list_issue_attachments_metadata_example_call_tool.py deleted file mode 100644 index 089989ab9..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_issue_attachments_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.ListIssueAttachmentsMetadata" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "ISSUE-123", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/list_issue_types_by_project_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/list_issue_types_by_project_example_call_tool.js deleted file mode 100644 index ec913a9ce..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_issue_types_by_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.ListIssueTypesByProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project": "ProjectX", - "limit": 10, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/list_issue_types_by_project_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/list_issue_types_by_project_example_call_tool.py deleted file mode 100644 index bf22c406e..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_issue_types_by_project_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.ListIssueTypesByProject" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "project": "ProjectX", - "limit": 10, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/list_issues_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/list_issues_example_call_tool.js deleted file mode 100644 index 6a545b32d..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_issues_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.ListIssues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project": "12345", - "limit": 10, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/list_issues_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/list_issues_example_call_tool.py deleted file mode 100644 index 7923cf9fe..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_issues_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.ListIssues" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "project": "12345", - "limit": 10, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/list_labels_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/list_labels_example_call_tool.js deleted file mode 100644 index 07c7d6a4b..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_labels_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.ListLabels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 50, - "offset": 10, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/list_labels_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/list_labels_example_call_tool.py deleted file mode 100644 index 9016c6d5d..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_labels_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.ListLabels" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "limit": 50, - "offset": 10, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/list_priorities_available_to_a_project_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/list_priorities_available_to_a_project_example_call_tool.js deleted file mode 100644 index dc870405e..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_priorities_available_to_a_project_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.ListPrioritiesAvailableToAProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project": "PROJ123", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/list_priorities_available_to_a_project_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/list_priorities_available_to_a_project_example_call_tool.py deleted file mode 100644 index 51563605d..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_priorities_available_to_a_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.ListPrioritiesAvailableToAProject" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "project": "PROJ123", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/list_priorities_available_to_an_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/list_priorities_available_to_an_issue_example_call_tool.js deleted file mode 100644 index 4bec115fa..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_priorities_available_to_an_issue_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.ListPrioritiesAvailableToAnIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "JIRA-123", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/list_priorities_available_to_an_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/list_priorities_available_to_an_issue_example_call_tool.py deleted file mode 100644 index cebf234dc..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_priorities_available_to_an_issue_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.ListPrioritiesAvailableToAnIssue" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "JIRA-123", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/list_priorities_by_scheme_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/list_priorities_by_scheme_example_call_tool.js deleted file mode 100644 index 0a56c05e9..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_priorities_by_scheme_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.ListPrioritiesByScheme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "scheme_id": "12345", - "limit": 10, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/list_priorities_by_scheme_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/list_priorities_by_scheme_example_call_tool.py deleted file mode 100644 index 324693688..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_priorities_by_scheme_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.ListPrioritiesByScheme" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "scheme_id": "12345", - "limit": 10, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/list_priority_schemes_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/list_priority_schemes_example_call_tool.js deleted file mode 100644 index 8ce8f8b18..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_priority_schemes_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.ListPrioritySchemes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "scheme_name": "High Priority", - "limit": 10, - "offset": 0, - "order_by": "name ascending", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/list_priority_schemes_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/list_priority_schemes_example_call_tool.py deleted file mode 100644 index 07b327ada..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_priority_schemes_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.ListPrioritySchemes" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "scheme_name": "High Priority", - "limit": 10, - "offset": 0, - "order_by": "name ascending", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/list_projects_by_scheme_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/list_projects_by_scheme_example_call_tool.js deleted file mode 100644 index d978457a0..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_projects_by_scheme_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.ListProjectsByScheme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "scheme_id": "12345", - "project": "proj-001", - "limit": 10, - "offset": 0, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/list_projects_by_scheme_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/list_projects_by_scheme_example_call_tool.py deleted file mode 100644 index 10b3c8b7a..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_projects_by_scheme_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.ListProjectsByScheme" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "scheme_id": "12345", - "project": "proj-001", - "limit": 10, - "offset": 0, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/list_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/list_projects_example_call_tool.js deleted file mode 100644 index 5f41978e3..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_projects_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.ListProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 10, - "offset": 5, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/list_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/list_projects_example_call_tool.py deleted file mode 100644 index 92bcbba3b..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_projects_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.ListProjects" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "limit": 10, - "offset": 5, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/list_sprints_for_boards_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/list_sprints_for_boards_example_call_tool.js deleted file mode 100644 index fab49a8e2..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_sprints_for_boards_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Jira.ListSprintsForBoards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifiers_list": [ - "123", - "456" - ], - "max_sprints_per_board": 10, - "state": "active", - "start_date": "2023-01-01", - "end_date": "2023-12-31" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/list_sprints_for_boards_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/list_sprints_for_boards_example_call_tool.py deleted file mode 100644 index bc8fc6134..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_sprints_for_boards_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Jira.ListSprintsForBoards" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifiers_list': ['123', '456'], - 'max_sprints_per_board': 10, - 'state': 'active', - 'start_date': '2023-01-01', - 'end_date': '2023-12-31' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/list_users_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/list_users_example_call_tool.js deleted file mode 100644 index 052718bc4..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_users_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.ListUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_type": "atlassian", - "limit": 10, - "offset": 0, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/list_users_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/list_users_example_call_tool.py deleted file mode 100644 index 704affc40..000000000 --- a/public/examples/integrations/mcp-servers/jira/list_users_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.ListUsers" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "account_type": "atlassian", - "limit": 10, - "offset": 0, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/move_issues_from_sprint_to_backlog_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/move_issues_from_sprint_to_backlog_example_call_tool.js deleted file mode 100644 index 9208b0b04..000000000 --- a/public/examples/integrations/mcp-servers/jira/move_issues_from_sprint_to_backlog_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Jira.MoveIssuesFromSprintToBacklog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "sprint_id": "123", - "issue_identifiers": [ - "ISSUE-1", - "ISSUE-2", - "ISSUE-3" - ], - "atlassian_cloud_id": "cloud-456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/move_issues_from_sprint_to_backlog_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/move_issues_from_sprint_to_backlog_example_call_tool.py deleted file mode 100644 index 3a65201cc..000000000 --- a/public/examples/integrations/mcp-servers/jira/move_issues_from_sprint_to_backlog_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Jira.MoveIssuesFromSprintToBacklog" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'sprint_id': '123', - 'issue_identifiers': ['ISSUE-1', 'ISSUE-2', 'ISSUE-3'], - 'atlassian_cloud_id': 'cloud-456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/remove_labels_from_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/remove_labels_from_issue_example_call_tool.js deleted file mode 100644 index 8cf9ba361..000000000 --- a/public/examples/integrations/mcp-servers/jira/remove_labels_from_issue_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.RemoveLabelsFromIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "PROJ-123", - "labels": [ - "bug", - "urgent" - ], - "notify_watchers": true, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/remove_labels_from_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/remove_labels_from_issue_example_call_tool.py deleted file mode 100644 index 942be6c17..000000000 --- a/public/examples/integrations/mcp-servers/jira/remove_labels_from_issue_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.RemoveLabelsFromIssue" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "PROJ-123", - "labels": [ - "bug", - "urgent" - ], - "notify_watchers": True, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/search_issues_with_jql_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/search_issues_with_jql_example_call_tool.js deleted file mode 100644 index 55443a418..000000000 --- a/public/examples/integrations/mcp-servers/jira/search_issues_with_jql_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.SearchIssuesWithJql"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "jql": "project = MYPROJECT AND status = 'Open'", - "limit": 10, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/search_issues_with_jql_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/search_issues_with_jql_example_call_tool.py deleted file mode 100644 index 4a8dcea64..000000000 --- a/public/examples/integrations/mcp-servers/jira/search_issues_with_jql_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.SearchIssuesWithJql" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "jql": "project = MYPROJECT AND status = 'Open'", - "limit": 10, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/search_issues_without_jql_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/search_issues_without_jql_example_call_tool.js deleted file mode 100644 index 727a20fd1..000000000 --- a/public/examples/integrations/mcp-servers/jira/search_issues_without_jql_example_call_tool.js +++ /dev/null @@ -1,42 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.SearchIssuesWithoutJql"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": "bug", - "due_from": "2023-10-01", - "status": "In Progress", - "priority": "Highest", - "assignee": "john.doe@example.com", - "project": "ProjectX", - "issue_type": "Task", - "labels": [ - "frontend", - "urgent" - ], - "limit": 10, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/search_issues_without_jql_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/search_issues_without_jql_example_call_tool.py deleted file mode 100644 index a50c14660..000000000 --- a/public/examples/integrations/mcp-servers/jira/search_issues_without_jql_example_call_tool.py +++ /dev/null @@ -1,40 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.SearchIssuesWithoutJql" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "keywords": "bug", - "due_from": "2023-10-01", - "status": "In Progress", - "priority": "Highest", - "assignee": "john.doe@example.com", - "project": "ProjectX", - "issue_type": "Task", - "labels": [ - "frontend", - "urgent" - ], - "limit": 10, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/search_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/search_projects_example_call_tool.js deleted file mode 100644 index 493762d9b..000000000 --- a/public/examples/integrations/mcp-servers/jira/search_projects_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.SearchProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": "development", - "limit": 10, - "offset": 0, - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/search_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/search_projects_example_call_tool.py deleted file mode 100644 index 89ca2ddae..000000000 --- a/public/examples/integrations/mcp-servers/jira/search_projects_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.SearchProjects" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "keywords": "development", - "limit": 10, - "offset": 0, - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/transition_issue_to_new_status_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/transition_issue_to_new_status_example_call_tool.js deleted file mode 100644 index ba733f79a..000000000 --- a/public/examples/integrations/mcp-servers/jira/transition_issue_to_new_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.TransitionIssueToNewStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "PROJ-123", - "transition": "In Progress", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/transition_issue_to_new_status_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/transition_issue_to_new_status_example_call_tool.py deleted file mode 100644 index 80581c0ff..000000000 --- a/public/examples/integrations/mcp-servers/jira/transition_issue_to_new_status_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.TransitionIssueToNewStatus" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "PROJ-123", - "transition": "In Progress", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/update_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/update_issue_example_call_tool.js deleted file mode 100644 index 9b2cda633..000000000 --- a/public/examples/integrations/mcp-servers/jira/update_issue_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Jira.UpdateIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "JIRA-123", - "title": "Fix login bug", - "assignee": "john.doe@example.com", - "priority": "High", - // Important: about the atlassian_cloud_id argument, please refer to the documentation at - // https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/update_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/update_issue_example_call_tool.py deleted file mode 100644 index 91c88e51a..000000000 --- a/public/examples/integrations/mcp-servers/jira/update_issue_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Jira.UpdateIssue" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "JIRA-123", - "title": "Fix login bug", - "assignee": "john.doe@example.com", - "priority": "High", - # Important: about the atlassian_cloud_id argument, please refer to the documentation at - # https://docs.arcade.dev/mcp-servers/productivity/jira#handling-multiple-atlassian-clouds - "atlassian_cloud_id": "13516a07-1725-4dc0-9ae7-13b5749dd747" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/jira/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/jira/who_am_i_example_call_tool.js deleted file mode 100644 index 1b455f381..000000000 --- a/public/examples/integrations/mcp-servers/jira/who_am_i_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Jira.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/jira/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/jira/who_am_i_example_call_tool.py deleted file mode 100644 index dcad3c8d2..000000000 --- a/public/examples/integrations/mcp-servers/jira/who_am_i_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Jira.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/linear/add_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/add_comment_example_call_tool.js deleted file mode 100644 index 0c3acb56a..000000000 --- a/public/examples/integrations/mcp-servers/linear/add_comment_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.AddComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "PROJ-123", - "body": "This is a comment in **Markdown** format." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/add_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/add_comment_example_call_tool.py deleted file mode 100644 index 66b605823..000000000 --- a/public/examples/integrations/mcp-servers/linear/add_comment_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.AddComment" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "PROJ-123", - "body": "This is a comment in **Markdown** format." -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/add_project_to_initiative_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/add_project_to_initiative_example_call_tool.js deleted file mode 100644 index 92ef77778..000000000 --- a/public/examples/integrations/mcp-servers/linear/add_project_to_initiative_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.AddProjectToInitiative"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "initiative": "Q4 Goals", - "project": "API Redesign", - "auto_accept_matches": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/add_project_to_initiative_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/add_project_to_initiative_example_call_tool.py deleted file mode 100644 index 26268f9cc..000000000 --- a/public/examples/integrations/mcp-servers/linear/add_project_to_initiative_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.AddProjectToInitiative" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "initiative": "Q4 Goals", - "project": "API Redesign", - "auto_accept_matches": True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/archive_initiative_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/archive_initiative_example_call_tool.js deleted file mode 100644 index be746651f..000000000 --- a/public/examples/integrations/mcp-servers/linear/archive_initiative_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.ArchiveInitiative"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "initiative": "Old Q3 Goals", - "auto_accept_matches": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/archive_initiative_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/archive_initiative_example_call_tool.py deleted file mode 100644 index 96face031..000000000 --- a/public/examples/integrations/mcp-servers/linear/archive_initiative_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.ArchiveInitiative" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "initiative": "Old Q3 Goals", - "auto_accept_matches": True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/archive_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/archive_issue_example_call_tool.js deleted file mode 100644 index b08ee5c74..000000000 --- a/public/examples/integrations/mcp-servers/linear/archive_issue_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.ArchiveIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "PROJ-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/archive_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/archive_issue_example_call_tool.py deleted file mode 100644 index 503c7fd9a..000000000 --- a/public/examples/integrations/mcp-servers/linear/archive_issue_example_call_tool.py +++ /dev/null @@ -1,27 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.ArchiveIssue" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "PROJ-123" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/archive_project_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/archive_project_example_call_tool.js deleted file mode 100644 index 5f16215df..000000000 --- a/public/examples/integrations/mcp-servers/linear/archive_project_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.ArchiveProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project": "Old Project", - "auto_accept_matches": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/archive_project_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/archive_project_example_call_tool.py deleted file mode 100644 index 7a718d8ed..000000000 --- a/public/examples/integrations/mcp-servers/linear/archive_project_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.ArchiveProject" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "project": "Old Project", - "auto_accept_matches": True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/create_initiative_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/create_initiative_example_call_tool.js deleted file mode 100644 index ddfcd5317..000000000 --- a/public/examples/integrations/mcp-servers/linear/create_initiative_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.CreateInitiative"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "name": "Q1 2025 Objectives", - "description": "Strategic goals for Q1 2025", - "status": "planned", - "target_date": "2025-03-31" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/create_initiative_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/create_initiative_example_call_tool.py deleted file mode 100644 index afa350d47..000000000 --- a/public/examples/integrations/mcp-servers/linear/create_initiative_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.CreateInitiative" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "name": "Q1 2025 Objectives", - "description": "Strategic goals for Q1 2025", - "status": "planned", - "target_date": "2025-03-31" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/create_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/create_issue_example_call_tool.js deleted file mode 100644 index 8ac5828e9..000000000 --- a/public/examples/integrations/mcp-servers/linear/create_issue_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.CreateIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team": "Engineering", - "title": "Implement new authentication flow", - "description": "Add OAuth2 support for third-party integrations", - "priority": "high", - "labels_to_add": ["feature", "security"], - "due_date": "2025-02-15" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/create_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/create_issue_example_call_tool.py deleted file mode 100644 index d65b891ef..000000000 --- a/public/examples/integrations/mcp-servers/linear/create_issue_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.CreateIssue" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "team": "Engineering", - "title": "Implement new authentication flow", - "description": "Add OAuth2 support for third-party integrations", - "priority": "high", - "labels_to_add": ["feature", "security"], - "due_date": "2025-02-15" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/create_issue_relation_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/create_issue_relation_example_call_tool.js deleted file mode 100644 index d1b90c3c4..000000000 --- a/public/examples/integrations/mcp-servers/linear/create_issue_relation_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.CreateIssueRelation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "PROJ-123", - "related_issue": "PROJ-456", - "relation_type": "blocks" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/create_issue_relation_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/create_issue_relation_example_call_tool.py deleted file mode 100644 index a2cad45d5..000000000 --- a/public/examples/integrations/mcp-servers/linear/create_issue_relation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.CreateIssueRelation" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "PROJ-123", - "related_issue": "PROJ-456", - "relation_type": "blocks" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/create_project_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/create_project_example_call_tool.js deleted file mode 100644 index 8ebdd561b..000000000 --- a/public/examples/integrations/mcp-servers/linear/create_project_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.CreateProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "name": "New API Redesign", - "team": "Engineering", - "description": "Complete overhaul of the REST API", - "state": "planned", - "start_date": "2025-01-01", - "target_date": "2025-06-30" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/create_project_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/create_project_example_call_tool.py deleted file mode 100644 index 446a9b2f1..000000000 --- a/public/examples/integrations/mcp-servers/linear/create_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.CreateProject" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "name": "New API Redesign", - "team": "Engineering", - "description": "Complete overhaul of the REST API", - "state": "planned", - "start_date": "2025-01-01", - "target_date": "2025-06-30" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/create_project_update_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/create_project_update_example_call_tool.js deleted file mode 100644 index 1ec298f37..000000000 --- a/public/examples/integrations/mcp-servers/linear/create_project_update_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.CreateProjectUpdate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "project-uuid-here", - "body": "## Weekly Progress Update\n\nCompleted the API integration this week.", - "health": "onTrack" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/create_project_update_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/create_project_update_example_call_tool.py deleted file mode 100644 index baa80dbcb..000000000 --- a/public/examples/integrations/mcp-servers/linear/create_project_update_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.CreateProjectUpdate" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "project_id": "project-uuid-here", - "body": "## Weekly Progress Update\n\nCompleted the API integration this week.", - "health": "onTrack" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/get_cycle_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/get_cycle_example_call_tool.js deleted file mode 100644 index 84e7c577c..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_cycle_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.GetCycle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cycle_id": "cycle-uuid-here" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/get_cycle_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/get_cycle_example_call_tool.py deleted file mode 100644 index 15c38006b..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_cycle_example_call_tool.py +++ /dev/null @@ -1,27 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.GetCycle" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "cycle_id": "cycle-uuid-here" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/get_initiative_description_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/get_initiative_description_example_call_tool.js deleted file mode 100644 index 5e8bce6d2..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_initiative_description_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.GetInitiativeDescription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "initiative_id": "initiative-uuid-here", - "offset": 0, - "limit": 5000 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/get_initiative_description_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/get_initiative_description_example_call_tool.py deleted file mode 100644 index 4a7bad8a5..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_initiative_description_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.GetInitiativeDescription" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "initiative_id": "initiative-uuid-here", - "offset": 0, - "limit": 5000 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/get_initiative_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/get_initiative_example_call_tool.js deleted file mode 100644 index 16fe04fea..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_initiative_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.GetInitiative"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "value": "Q4 Goals", - "lookup_by": "name", - "include_projects": true, - "auto_accept_matches": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/get_initiative_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/get_initiative_example_call_tool.py deleted file mode 100644 index 4a23f2838..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_initiative_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.GetInitiative" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "value": "Q4 Goals", - "lookup_by": "name", - "include_projects": True, - "auto_accept_matches": True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/get_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/get_issue_example_call_tool.js deleted file mode 100644 index a5a612212..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_issue_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.GetIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_id": "PROJ-123", - "include_comments": true, - "include_attachments": true, - "include_relations": true, - "include_children": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/linear/get_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/get_issue_example_call_tool.py deleted file mode 100644 index 1420008bc..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_issue_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.GetIssue" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue_id": "PROJ-123", - "include_comments": True, - "include_attachments": True, - "include_relations": True, - "include_children": True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/linear/get_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/get_notifications_example_call_tool.js deleted file mode 100644 index 3af106a16..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_notifications_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.GetNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "unread_only": true, - "limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/get_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/get_notifications_example_call_tool.py deleted file mode 100644 index d7c3c339f..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_notifications_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.GetNotifications" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "unread_only": True, - "limit": 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/get_project_description_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/get_project_description_example_call_tool.js deleted file mode 100644 index b919b71e7..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_project_description_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.GetProjectDescription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "project-uuid-here", - "offset": 0, - "limit": 5000 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/get_project_description_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/get_project_description_example_call_tool.py deleted file mode 100644 index 8f812a5c3..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_project_description_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.GetProjectDescription" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "project_id": "project-uuid-here", - "offset": 0, - "limit": 5000 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/get_project_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/get_project_example_call_tool.js deleted file mode 100644 index 0cb341a3d..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_project_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.GetProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "value": "API Redesign", - "lookup_by": "name", - "include_milestones": true, - "include_members": true, - "include_issues": true, - "auto_accept_matches": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/get_project_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/get_project_example_call_tool.py deleted file mode 100644 index b790075f9..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.GetProject" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "value": "API Redesign", - "lookup_by": "name", - "include_milestones": True, - "include_members": True, - "include_issues": True, - "auto_accept_matches": True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/get_recent_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/get_recent_activity_example_call_tool.js deleted file mode 100644 index 0bc5a4606..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_recent_activity_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.GetRecentActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "days": 30, - "limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/get_recent_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/get_recent_activity_example_call_tool.py deleted file mode 100644 index 5787ee0db..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_recent_activity_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.GetRecentActivity" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "days": 30, - "limit": 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/get_team_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/get_team_example_call_tool.js deleted file mode 100644 index 3dd4e00f4..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_team_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.GetTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "value": "Engineering", - "lookup_by": "name", - "auto_accept_matches": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/get_team_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/get_team_example_call_tool.py deleted file mode 100644 index 7ba7c6bf7..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.GetTeam" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "value": "Engineering", - "lookup_by": "name", - "auto_accept_matches": True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/get_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/get_teams_example_call_tool.js deleted file mode 100644 index 3c28c79e2..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_teams_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.ListTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": "Backend", - "include_archived": false, - "limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/get_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/get_teams_example_call_tool.py deleted file mode 100644 index 0f2dc5592..000000000 --- a/public/examples/integrations/mcp-servers/linear/get_teams_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.ListTeams" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "keywords": "Backend", - "include_archived": False, - "limit": 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/linear/link_github_to_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/link_github_to_issue_example_call_tool.js deleted file mode 100644 index a48eb5c05..000000000 --- a/public/examples/integrations/mcp-servers/linear/link_github_to_issue_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.LinkGithubToIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "PROJ-123", - "github_url": "https://github.com/owner/repo/pull/42", - "title": "Fix authentication bug" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/link_github_to_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/link_github_to_issue_example_call_tool.py deleted file mode 100644 index e1c583a3f..000000000 --- a/public/examples/integrations/mcp-servers/linear/link_github_to_issue_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.LinkGithubToIssue" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "PROJ-123", - "github_url": "https://github.com/owner/repo/pull/42", - "title": "Fix authentication bug" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/list_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/list_comments_example_call_tool.js deleted file mode 100644 index 343ff8325..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_comments_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.ListComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "PROJ-123", - "limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/list_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/list_comments_example_call_tool.py deleted file mode 100644 index 98161d4a9..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_comments_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.ListComments" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "PROJ-123", - "limit": 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/list_cycles_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/list_cycles_example_call_tool.js deleted file mode 100644 index aa2aca2de..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_cycles_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.ListCycles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team": "Engineering", - "active_only": true, - "limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/list_cycles_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/list_cycles_example_call_tool.py deleted file mode 100644 index ec88f0ec4..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_cycles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.ListCycles" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "team": "Engineering", - "active_only": True, - "limit": 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/list_initiatives_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/list_initiatives_example_call_tool.js deleted file mode 100644 index 02beda10c..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_initiatives_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.ListInitiatives"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": "Q4", - "state": "started", - "limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/list_initiatives_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/list_initiatives_example_call_tool.py deleted file mode 100644 index 13c5254b1..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_initiatives_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.ListInitiatives" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "keywords": "Q4", - "state": "started", - "limit": 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/list_issues_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/list_issues_example_call_tool.js deleted file mode 100644 index 2519e600e..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_issues_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.ListIssues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team": "Engineering", - "state": "In Progress", - "assignee": "@me", - "limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/list_issues_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/list_issues_example_call_tool.py deleted file mode 100644 index 71b0dfda2..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_issues_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.ListIssues" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "team": "Engineering", - "state": "In Progress", - "assignee": "@me", - "limit": 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/list_labels_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/list_labels_example_call_tool.js deleted file mode 100644 index c0f8f9e2d..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_labels_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.ListLabels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/list_labels_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/list_labels_example_call_tool.py deleted file mode 100644 index 9cc21b07c..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_labels_example_call_tool.py +++ /dev/null @@ -1,27 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.ListLabels" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "limit": 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/list_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/list_projects_example_call_tool.js deleted file mode 100644 index 178f07bf4..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_projects_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.ListProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": "API", - "state": "started", - "team": "Engineering", - "limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/list_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/list_projects_example_call_tool.py deleted file mode 100644 index dfb5544df..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_projects_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.ListProjects" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "keywords": "API", - "state": "started", - "team": "Engineering", - "limit": 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/list_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/list_teams_example_call_tool.js deleted file mode 100644 index d440ec14d..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_teams_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.ListTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": "Engineering", - "include_archived": false, - "limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/list_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/list_teams_example_call_tool.py deleted file mode 100644 index 5ad33ece0..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_teams_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.ListTeams" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "keywords": "Engineering", - "include_archived": False, - "limit": 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/list_workflow_states_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/list_workflow_states_example_call_tool.js deleted file mode 100644 index 06c2a8181..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_workflow_states_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.ListWorkflowStates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team": "Engineering", - "state_type": "started", - "limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/list_workflow_states_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/list_workflow_states_example_call_tool.py deleted file mode 100644 index 3fae94c81..000000000 --- a/public/examples/integrations/mcp-servers/linear/list_workflow_states_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.ListWorkflowStates" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "team": "Engineering", - "state_type": "started", - "limit": 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/manage_issue_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/manage_issue_subscription_example_call_tool.js deleted file mode 100644 index 0ad8e01a9..000000000 --- a/public/examples/integrations/mcp-servers/linear/manage_issue_subscription_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.ManageIssueSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "PROJ-123", - "subscribe": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/manage_issue_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/manage_issue_subscription_example_call_tool.py deleted file mode 100644 index 3b8ea96fa..000000000 --- a/public/examples/integrations/mcp-servers/linear/manage_issue_subscription_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.ManageIssueSubscription" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "PROJ-123", - "subscribe": True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/reply_to_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/reply_to_comment_example_call_tool.js deleted file mode 100644 index c2ec6aaec..000000000 --- a/public/examples/integrations/mcp-servers/linear/reply_to_comment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.ReplyToComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue": "PROJ-123", - "parent_comment_id": "parent-comment-uuid", - "body": "This is a threaded reply in **Markdown** format." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/reply_to_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/reply_to_comment_example_call_tool.py deleted file mode 100644 index 53343e77a..000000000 --- a/public/examples/integrations/mcp-servers/linear/reply_to_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.ReplyToComment" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue": "PROJ-123", - "parent_comment_id": "parent-comment-uuid", - "body": "This is a threaded reply in **Markdown** format." -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/transition_issue_state_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/transition_issue_state_example_call_tool.js deleted file mode 100644 index e901f4aba..000000000 --- a/public/examples/integrations/mcp-servers/linear/transition_issue_state_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.TransitionIssueState"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_id": "PROJ-123", - "target_state": "Done", - "auto_accept_matches": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/transition_issue_state_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/transition_issue_state_example_call_tool.py deleted file mode 100644 index 611ad072a..000000000 --- a/public/examples/integrations/mcp-servers/linear/transition_issue_state_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.TransitionIssueState" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue_id": "PROJ-123", - "target_state": "Done", - "auto_accept_matches": True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/update_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/update_comment_example_call_tool.js deleted file mode 100644 index 22f274bb7..000000000 --- a/public/examples/integrations/mcp-servers/linear/update_comment_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.UpdateComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "comment_id": "comment-uuid-here", - "body": "Updated comment content in **Markdown** format." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/update_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/update_comment_example_call_tool.py deleted file mode 100644 index 9b9985a5a..000000000 --- a/public/examples/integrations/mcp-servers/linear/update_comment_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.UpdateComment" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "comment_id": "comment-uuid-here", - "body": "Updated comment content in **Markdown** format." -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/update_initiative_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/update_initiative_example_call_tool.js deleted file mode 100644 index 229d6f4d1..000000000 --- a/public/examples/integrations/mcp-servers/linear/update_initiative_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.UpdateInitiative"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "initiative_id": "initiative-uuid-here", - "name": "Q1 2025 Objectives - Updated", - "status": "started" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/update_initiative_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/update_initiative_example_call_tool.py deleted file mode 100644 index ff599bc46..000000000 --- a/public/examples/integrations/mcp-servers/linear/update_initiative_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.UpdateInitiative" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "initiative_id": "initiative-uuid-here", - "name": "Q1 2025 Objectives - Updated", - "status": "started" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/update_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/update_issue_example_call_tool.js deleted file mode 100644 index a770a6ef5..000000000 --- a/public/examples/integrations/mcp-servers/linear/update_issue_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.UpdateIssue"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issue_id": "PROJ-123", - "title": "Updated title", - "priority": "urgent", - "labels_to_add": ["critical"], - "assignee": "john@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/update_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/update_issue_example_call_tool.py deleted file mode 100644 index ed610cf20..000000000 --- a/public/examples/integrations/mcp-servers/linear/update_issue_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.UpdateIssue" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "issue_id": "PROJ-123", - "title": "Updated title", - "priority": "urgent", - "labels_to_add": ["critical"], - "assignee": "john@example.com" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/update_project_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/update_project_example_call_tool.js deleted file mode 100644 index 6435ed5a2..000000000 --- a/public/examples/integrations/mcp-servers/linear/update_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.UpdateProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "project-uuid-here", - "name": "API Redesign v2", - "state": "started", - "lead": "john@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/update_project_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/update_project_example_call_tool.py deleted file mode 100644 index 3100e3e84..000000000 --- a/public/examples/integrations/mcp-servers/linear/update_project_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.UpdateProject" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "project_id": "project-uuid-here", - "name": "API Redesign v2", - "state": "started", - "lead": "john@example.com" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linear/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/linear/who_am_i_example_call_tool.js deleted file mode 100644 index 2a79fc87a..000000000 --- a/public/examples/integrations/mcp-servers/linear/who_am_i_example_call_tool.js +++ /dev/null @@ -1,27 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Linear.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; // No parameters required - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); - diff --git a/public/examples/integrations/mcp-servers/linear/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/linear/who_am_i_example_call_tool.py deleted file mode 100644 index a10bb3368..000000000 --- a/public/examples/integrations/mcp-servers/linear/who_am_i_example_call_tool.py +++ /dev/null @@ -1,25 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Linear.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {} # No parameters required - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) - diff --git a/public/examples/integrations/mcp-servers/linkedin/create_text_post_example_call_tool.js b/public/examples/integrations/mcp-servers/linkedin/create_text_post_example_call_tool.js deleted file mode 100644 index 09dc5994f..000000000 --- a/public/examples/integrations/mcp-servers/linkedin/create_text_post_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LinkedIn.CreateTextPost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - text: "Hello, world! This post was created programmatically with Arcade!" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/linkedin/create_text_post_example_call_tool.py b/public/examples/integrations/mcp-servers/linkedin/create_text_post_example_call_tool.py deleted file mode 100644 index ceb2dfb3a..000000000 --- a/public/examples/integrations/mcp-servers/linkedin/create_text_post_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LinkedIn.CreateTextPost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "text": "Hello, world! This post was created programmatically with Arcade!", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/luma_api/add_event_guests_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/add_event_guests_example_call_tool.js deleted file mode 100644 index f4741451e..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/add_event_guests_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.AddEventGuests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event_id\":\"12345\",\"guests\":[{\"name\":\"John Doe\",\"ticket_type\":\"VIP\"},{\"name\":\"Jane Smith\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/add_event_guests_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/add_event_guests_example_call_tool.py deleted file mode 100644 index cf484facf..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/add_event_guests_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.AddEventGuests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"event_id":"12345","guests":[{"name":"John ' - 'Doe","ticket_type":"VIP"},{"name":"Jane Smith"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/add_event_host_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/add_event_host_example_call_tool.js deleted file mode 100644 index 3e07a462c..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/add_event_host_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.AddEventHost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event_id\":\"12345\",\"host_name\":\"John Doe\",\"host_email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/add_event_host_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/add_event_host_example_call_tool.py deleted file mode 100644 index 61ab9fdc0..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/add_event_host_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.AddEventHost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"event_id":"12345","host_name":"John ' - 'Doe","host_email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/add_event_to_luma_calendar_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/add_event_to_luma_calendar_example_call_tool.js deleted file mode 100644 index f632538d1..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/add_event_to_luma_calendar_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.AddEventToLumaCalendar"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event_id\":\"12345\",\"calendar_id\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/add_event_to_luma_calendar_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/add_event_to_luma_calendar_example_call_tool.py deleted file mode 100644 index 0e90f9ce6..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/add_event_to_luma_calendar_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.AddEventToLumaCalendar" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"event_id":"12345","calendar_id":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/add_user_to_membership_tier_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/add_user_to_membership_tier_example_call_tool.js deleted file mode 100644 index 5a5be577e..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/add_user_to_membership_tier_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.AddUserToMembershipTier"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"user_id\":\"12345\",\"membership_tier\":\"free\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/add_user_to_membership_tier_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/add_user_to_membership_tier_example_call_tool.py deleted file mode 100644 index 63ddbb60f..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/add_user_to_membership_tier_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.AddUserToMembershipTier" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"user_id":"12345","membership_tier":"free"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/apply_tag_to_calendar_members_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/apply_tag_to_calendar_members_example_call_tool.js deleted file mode 100644 index 00dceb020..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/apply_tag_to_calendar_members_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.ApplyTagToCalendarMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tag_identifier": "tag-456", - "email_addresses": [ - "user1@example.com", - "user2@example.com" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/apply_tag_to_calendar_members_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/apply_tag_to_calendar_members_example_call_tool.py deleted file mode 100644 index bab182166..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/apply_tag_to_calendar_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.ApplyTagToCalendarMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tag_identifier': 'tag-456', 'email_addresses': ['user1@example.com', 'user2@example.com'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/check_event_existence_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/check_event_existence_example_call_tool.js deleted file mode 100644 index 94f98383f..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/check_event_existence_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.CheckEventExistence"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "calendar_platform_type": "luma", - "event_details_url": "https://example.com/event/123", - "event_identifier": "event_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/check_event_existence_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/check_event_existence_example_call_tool.py deleted file mode 100644 index 486f96d5c..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/check_event_existence_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.CheckEventExistence" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'calendar_platform_type': 'luma', - 'event_details_url': 'https://example.com/event/123', - 'event_identifier': 'event_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/create_event_coupon_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/create_event_coupon_example_call_tool.js deleted file mode 100644 index a5e558e5a..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/create_event_coupon_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.CreateEventCoupon"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event_id\":\"12345\",\"coupon_code\":\"SAVE20\",\"discount\":\"20%\",\"valid_until\":\"2023-12-31\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/create_event_coupon_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/create_event_coupon_example_call_tool.py deleted file mode 100644 index a94961a2a..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/create_event_coupon_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.CreateEventCoupon" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"event_id":"12345","coupon_code":"SAVE20","discount":"20%","valid_until":"2023-12-31"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/create_event_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/create_event_example_call_tool.js deleted file mode 100644 index e7ae09e1c..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/create_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.CreateEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event_name\":\"Team Meeting\",\"date\":\"2023-10-15\",\"time\":\"10:00 AM\",\"location\":\"Conference Room A\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/create_event_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/create_event_example_call_tool.py deleted file mode 100644 index d32cbc2f1..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/create_event_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.CreateEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"event_name":"Team Meeting","date":"2023-10-15","time":"10:00 ' - 'AM","location":"Conference Room A"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/create_event_ticket_type_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/create_event_ticket_type_example_call_tool.js deleted file mode 100644 index ad405ba02..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/create_event_ticket_type_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.CreateEventTicketType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event_id\":\"12345\",\"ticket_type\":\"VIP\",\"price\":100,\"quantity\":50}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/create_event_ticket_type_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/create_event_ticket_type_example_call_tool.py deleted file mode 100644 index 6fe6bcb74..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/create_event_ticket_type_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.CreateEventTicketType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"event_id":"12345","ticket_type":"VIP","price":100,"quantity":50}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/create_person_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/create_person_tag_example_call_tool.js deleted file mode 100644 index a23adf2ad..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/create_person_tag_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.CreatePersonTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"John Doe\",\"tag\":\"Friend\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/create_person_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/create_person_tag_example_call_tool.py deleted file mode 100644 index b832c987e..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/create_person_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.CreatePersonTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"name":"John Doe","tag":"Friend"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/delete_person_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/delete_person_tag_example_call_tool.js deleted file mode 100644 index c463d79a9..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/delete_person_tag_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.DeletePersonTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tag_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/delete_person_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/delete_person_tag_example_call_tool.py deleted file mode 100644 index e9aa0f56e..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/delete_person_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.DeletePersonTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tag_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/generate_event_coupon_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/generate_event_coupon_example_call_tool.js deleted file mode 100644 index 69c8ae2c5..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/generate_event_coupon_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.GenerateEventCoupon"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event_id\":\"12345\",\"coupon_code\":\"SAVE20\",\"discount\":\"20%\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/generate_event_coupon_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/generate_event_coupon_example_call_tool.py deleted file mode 100644 index 44da0cfee..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/generate_event_coupon_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.GenerateEventCoupon" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"event_id":"12345","coupon_code":"SAVE20","discount":"20%"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/generate_upload_url_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/generate_upload_url_example_call_tool.js deleted file mode 100644 index efac9b03d..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/generate_upload_url_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.GenerateUploadUrl"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"imageType\":\"jpeg\",\"size\":\"1024x768\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/generate_upload_url_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/generate_upload_url_example_call_tool.py deleted file mode 100644 index 843193ca2..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/generate_upload_url_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.GenerateUploadUrl" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"imageType":"jpeg","size":"1024x768"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/get_event_admin_info_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/get_event_admin_info_example_call_tool.js deleted file mode 100644 index dac355b93..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/get_event_admin_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.GetEventAdminInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_api_id": "evt-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/get_event_admin_info_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/get_event_admin_info_example_call_tool.py deleted file mode 100644 index 065a82e3b..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/get_event_admin_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.GetEventAdminInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_api_id': 'evt-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/get_event_guest_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/get_event_guest_example_call_tool.js deleted file mode 100644 index b49b53edb..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/get_event_guest_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.GetEventGuest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_api_id": "api-12345", - "guest_email": "guest@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/get_event_guest_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/get_event_guest_example_call_tool.py deleted file mode 100644 index f73abab23..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/get_event_guest_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.GetEventGuest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_api_id': 'api-12345', 'guest_email': 'guest@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/get_event_guests_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/get_event_guests_example_call_tool.js deleted file mode 100644 index ceeb607a7..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/get_event_guests_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.GetEventGuests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_api_id": "evt-12345", - "guest_approval_status": "approved", - "guest_sort_column": "name", - "items_to_return": 10, - "sort_order": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/get_event_guests_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/get_event_guests_example_call_tool.py deleted file mode 100644 index 4c42a3d21..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/get_event_guests_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.GetEventGuests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_api_id': 'evt-12345', - 'guest_approval_status': 'approved', - 'guest_sort_column': 'name', - 'items_to_return': 10, - 'sort_order': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/get_ticket_type_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/get_ticket_type_by_id_example_call_tool.js deleted file mode 100644 index 9c4498ae1..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/get_ticket_type_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.GetTicketTypeById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_ticket_type_api_id": "12345", - "ticket_type_id": "ett-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/get_ticket_type_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/get_ticket_type_by_id_example_call_tool.py deleted file mode 100644 index 2dfd7e12d..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/get_ticket_type_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.GetTicketTypeById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_ticket_type_api_id': '12345', 'ticket_type_id': 'ett-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/get_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/get_user_info_example_call_tool.js deleted file mode 100644 index 672f77972..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/get_user_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.GetUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/get_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/get_user_info_example_call_tool.py deleted file mode 100644 index 75ee9acc2..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/get_user_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.GetUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/import_people_to_calendar_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/import_people_to_calendar_example_call_tool.js deleted file mode 100644 index 49d9d8968..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/import_people_to_calendar_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.ImportPeopleToCalendar"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"contacts\":[{\"name\":\"John Doe\",\"email\":\"john@example.com\"},{\"name\":\"Jane Smith\",\"email\":\"jane@example.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/import_people_to_calendar_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/import_people_to_calendar_example_call_tool.py deleted file mode 100644 index 8c4495f86..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/import_people_to_calendar_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.ImportPeopleToCalendar" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"contacts":[{"name":"John Doe","email":"john@example.com"},{"name":"Jane ' - 'Smith","email":"jane@example.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/list_calendar_coupons_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/list_calendar_coupons_example_call_tool.js deleted file mode 100644 index 93df1d25c..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/list_calendar_coupons_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.ListCalendarCoupons"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "items_to_return": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/list_calendar_coupons_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/list_calendar_coupons_example_call_tool.py deleted file mode 100644 index 76ad1ee96..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/list_calendar_coupons_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.ListCalendarCoupons" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'items_to_return': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/list_event_coupons_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/list_event_coupons_example_call_tool.js deleted file mode 100644 index 9e144dd1f..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/list_event_coupons_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.ListEventCoupons"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_api_id": "evt-12345", - "item_return_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/list_event_coupons_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/list_event_coupons_example_call_tool.py deleted file mode 100644 index 44cfa113c..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/list_event_coupons_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.ListEventCoupons" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_api_id': 'evt-12345', 'item_return_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/list_event_ticket_types_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/list_event_ticket_types_example_call_tool.js deleted file mode 100644 index d4393cc53..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/list_event_ticket_types_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.ListEventTicketTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_id": "evt-12345", - "include_hidden_ticket_types": "true" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/list_event_ticket_types_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/list_event_ticket_types_example_call_tool.py deleted file mode 100644 index 9d425f407..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/list_event_ticket_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.ListEventTicketTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_id': 'evt-12345', 'include_hidden_ticket_types': 'true' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/list_luma_calendar_events_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/list_luma_calendar_events_example_call_tool.js deleted file mode 100644 index cc1fc9dfb..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/list_luma_calendar_events_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.ListLumaCalendarEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_sort_direction": "asc", - "filter_events_before": "2023-10-01T00:00:00.000Z", - "number_of_items_to_return": 10, - "sort_by_column": "start_at", - "start_date_after": "2023-09-01T00:00:00.000Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/list_luma_calendar_events_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/list_luma_calendar_events_example_call_tool.py deleted file mode 100644 index 82d59dc17..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/list_luma_calendar_events_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.ListLumaCalendarEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_sort_direction': 'asc', - 'filter_events_before': '2023-10-01T00:00:00.000Z', - 'number_of_items_to_return': 10, - 'sort_by_column': 'start_at', - 'start_date_after': '2023-09-01T00:00:00.000Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/list_membership_tiers_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/list_membership_tiers_example_call_tool.js deleted file mode 100644 index 8fa78f9b9..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/list_membership_tiers_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.ListMembershipTiers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "items_to_return_count": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/list_membership_tiers_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/list_membership_tiers_example_call_tool.py deleted file mode 100644 index 555edb71e..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/list_membership_tiers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.ListMembershipTiers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'items_to_return_count': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/list_people_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/list_people_example_call_tool.js deleted file mode 100644 index c3ff76a72..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/list_people_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.ListPeople"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "calendar_membership_status": "active", - "items_to_return": 10, - "search_query": "john.doe@example.com", - "sort_by_column": "name", - "sort_order": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/list_people_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/list_people_example_call_tool.py deleted file mode 100644 index 154c146f8..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/list_people_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.ListPeople" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'calendar_membership_status': 'active', - 'items_to_return': 10, - 'search_query': 'john.doe@example.com', - 'sort_by_column': 'name', - 'sort_order': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/list_person_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/list_person_tags_example_call_tool.js deleted file mode 100644 index 286c024a2..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/list_person_tags_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.ListPersonTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "items_to_return": 5, - "sort_by_column": "name", - "sorting_direction": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/list_person_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/list_person_tags_example_call_tool.py deleted file mode 100644 index eb51b1211..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/list_person_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.ListPersonTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'items_to_return': 5, 'sort_by_column': 'name', 'sorting_direction': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/luma_entity_lookup_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/luma_entity_lookup_example_call_tool.js deleted file mode 100644 index c8728d3d3..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/luma_entity_lookup_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.LumaEntityLookup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entity_slug": "example-entity" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/luma_entity_lookup_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/luma_entity_lookup_example_call_tool.py deleted file mode 100644 index 2d60e1a81..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/luma_entity_lookup_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.LumaEntityLookup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entity_slug': 'example-entity' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/modify_coupon_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/modify_coupon_example_call_tool.js deleted file mode 100644 index 303386aa0..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/modify_coupon_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.ModifyCoupon"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"coupon_id\":\"12345\",\"discount_value\":20,\"expiration_date\":\"2024-12-31\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/modify_coupon_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/modify_coupon_example_call_tool.py deleted file mode 100644 index 32af9c2b3..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/modify_coupon_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.ModifyCoupon" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"coupon_id":"12345","discount_value":20,"expiration_date":"2024-12-31"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/remove_tag_from_calendar_members_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/remove_tag_from_calendar_members_example_call_tool.js deleted file mode 100644 index c54322b61..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/remove_tag_from_calendar_members_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.RemoveTagFromCalendarMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tag_identifier": "tag-123", - "email_addresses_to_remove_tag": [ - "user1@example.com", - "user2@example.com" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/remove_tag_from_calendar_members_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/remove_tag_from_calendar_members_example_call_tool.py deleted file mode 100644 index 8b915da75..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/remove_tag_from_calendar_members_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.RemoveTagFromCalendarMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tag_identifier': 'tag-123', - 'email_addresses_to_remove_tag': ['user1@example.com', 'user2@example.com'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/send_guest_event_invite_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/send_guest_event_invite_example_call_tool.js deleted file mode 100644 index 82a8b4c3a..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/send_guest_event_invite_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.SendGuestEventInvite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"event_id\":\"12345\",\"guest_emails\":[\"guest1@example.com\",\"guest2@example.com\"],\"guest_sms\":[\"+1234567890\",\"+0987654321\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/send_guest_event_invite_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/send_guest_event_invite_example_call_tool.py deleted file mode 100644 index 3eb695ee1..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/send_guest_event_invite_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.SendGuestEventInvite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"event_id":"12345","guest_emails":["guest1@example.com","guest2@example.com"],"guest_sms":["+1234567890","+0987654321"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/soft_delete_ticket_type_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/soft_delete_ticket_type_example_call_tool.js deleted file mode 100644 index 4224a2dc3..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/soft_delete_ticket_type_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.SoftDeleteTicketType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_ticket_type_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/soft_delete_ticket_type_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/soft_delete_ticket_type_example_call_tool.py deleted file mode 100644 index 12da91018..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/soft_delete_ticket_type_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.SoftDeleteTicketType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_ticket_type_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/update_coupon_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/update_coupon_example_call_tool.js deleted file mode 100644 index e9d972c36..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/update_coupon_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.UpdateCoupon"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"couponId\":\"12345\",\"discount\":20,\"expiryDate\":\"2023-12-31\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/update_coupon_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/update_coupon_example_call_tool.py deleted file mode 100644 index 32d7f39f9..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/update_coupon_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.UpdateCoupon" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"couponId":"12345","discount":20,"expiryDate":"2023-12-31"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/update_event_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/update_event_example_call_tool.js deleted file mode 100644 index af73abd8f..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/update_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.UpdateEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"eventId\":\"12345\",\"title\":\"Updated Event Title\",\"date\":\"2023-10-01\",\"location\":\"New Location\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/update_event_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/update_event_example_call_tool.py deleted file mode 100644 index ed9642db5..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/update_event_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.UpdateEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"eventId":"12345","title":"Updated Event ' - 'Title","date":"2023-10-01","location":"New Location"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/update_guest_status_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/update_guest_status_example_call_tool.js deleted file mode 100644 index 9f1c469f0..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/update_guest_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.UpdateGuestStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"guestId\":\"12345\",\"status\":\"confirmed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/update_guest_status_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/update_guest_status_example_call_tool.py deleted file mode 100644 index 3c68dfc5e..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/update_guest_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.UpdateGuestStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"guestId":"12345","status":"confirmed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/update_membership_status_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/update_membership_status_example_call_tool.js deleted file mode 100644 index bbe8d8ac5..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/update_membership_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.UpdateMembershipStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "membership_status": "approved", - "user_identifier": "usr-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/update_membership_status_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/update_membership_status_example_call_tool.py deleted file mode 100644 index 7070ffdf9..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/update_membership_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.UpdateMembershipStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'membership_status': 'approved', 'user_identifier': 'usr-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/update_person_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/update_person_tag_example_call_tool.js deleted file mode 100644 index 0404cb9cb..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/update_person_tag_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.UpdatePersonTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "person_tag_api_id": "12345", - "tag_color": "blue", - "tag_name": "Project Manager" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/update_person_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/update_person_tag_example_call_tool.py deleted file mode 100644 index fc0cc4309..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/update_person_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.UpdatePersonTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'person_tag_api_id': '12345', 'tag_color': 'blue', 'tag_name': 'Project Manager' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/luma_api/update_ticket_type_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/luma_api/update_ticket_type_configuration_example_call_tool.js deleted file mode 100644 index c02117622..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/update_ticket_type_configuration_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "LumaApi.UpdateTicketTypeConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"ticketTypeId\":\"12345\",\"availability\":\"limited\",\"price\":50}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/luma_api/update_ticket_type_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/luma_api/update_ticket_type_configuration_example_call_tool.py deleted file mode 100644 index ef53e720f..000000000 --- a/public/examples/integrations/mcp-servers/luma_api/update_ticket_type_configuration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "LumaApi.UpdateTicketTypeConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"ticketTypeId":"12345","availability":"limited","price":50}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_audience_merge_field_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_audience_merge_field_example_call_tool.js deleted file mode 100644 index ad099e788..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_audience_merge_field_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddAudienceMergeField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "audience_list_id": "12345", - "request_body": "{\"merge_field\":\"new_field\",\"type\":\"text\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_audience_merge_field_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_audience_merge_field_example_call_tool.py deleted file mode 100644 index 8c9423dd1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_audience_merge_field_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddAudienceMergeField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'audience_list_id': '12345', - 'request_body': '{"merge_field":"new_field","type":"text"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_campaign_feedback_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_campaign_feedback_example_call_tool.js deleted file mode 100644 index b9b7d6d13..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_campaign_feedback_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddCampaignFeedback"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "feedback_content": "Great design, but the call-to-action could be stronger.", - "editable_block_id": 1, - "is_feedback_complete": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_campaign_feedback_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_campaign_feedback_example_call_tool.py deleted file mode 100644 index a4edac170..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_campaign_feedback_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddCampaignFeedback" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', - 'feedback_content': 'Great design, but the call-to-action could be stronger.', - 'editable_block_id': 1, - 'is_feedback_complete': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_cart_to_store_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_cart_to_store_example_call_tool.js deleted file mode 100644 index be8b14d62..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_cart_to_store_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddCartToStore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "request_body": "{\"items\":[{\"id\":\"item1\",\"quantity\":2},{\"id\":\"item2\",\"quantity\":1}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_cart_to_store_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_cart_to_store_example_call_tool.py deleted file mode 100644 index 49ae6f9cd..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_cart_to_store_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddCartToStore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'request_body': '{"items":[{"id":"item1","quantity":2},{"id":"item2","quantity":1}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_customer_to_store_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_customer_to_store_example_call_tool.js deleted file mode 100644 index 0de235fdb..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_customer_to_store_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddCustomerToStore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_customer_to_store_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_customer_to_store_example_call_tool.py deleted file mode 100644 index 54b693975..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_customer_to_store_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddCustomerToStore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'request_body': '{"name":"John Doe","email":"john@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_line_item_to_cart_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_line_item_to_cart_example_call_tool.js deleted file mode 100644 index 0a80281da..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_line_item_to_cart_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddLineItemToCart"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cart_identifier": "cart123", - "cart_line_item_identifier": "lineitem456", - "line_item_price": 19.99, - "line_item_quantity": 2, - "product_id": "prod789", - "product_variant_id": "variant001", - "store_identifier": "storeABC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_line_item_to_cart_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_line_item_to_cart_example_call_tool.py deleted file mode 100644 index 3fd4c9ac9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_line_item_to_cart_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddLineItemToCart" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cart_identifier': 'cart123', - 'cart_line_item_identifier': 'lineitem456', - 'line_item_price': 19.99, - 'line_item_quantity': 2, - 'product_id': 'prod789', - 'product_variant_id': 'variant001', - 'store_identifier': 'storeABC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_list_member_event_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_list_member_event_example_call_tool.js deleted file mode 100644 index 0befc5d59..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_list_member_event_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddListMemberEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "list_identifier": "123456", - "list_member_identifier": "d41d8cd98f00b204e9800998ecf8427e", - "request_body": "{\"event\":\"signup\",\"properties\":{\"source\":\"website\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_list_member_event_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_list_member_event_example_call_tool.py deleted file mode 100644 index 01cb8dd0b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_list_member_event_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddListMemberEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'list_identifier': '123456', - 'list_member_identifier': 'd41d8cd98f00b204e9800998ecf8427e', - 'request_body': '{"event":"signup","properties":{"source":"website"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_member_to_mailchimp_list_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_member_to_mailchimp_list_example_call_tool.js deleted file mode 100644 index 3795ba885..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_member_to_mailchimp_list_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddMemberToMailchimpList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "list_unique_id": "123456", - "bypass_merge_field_validation": "true", - "request_body": "{\"email_address\":\"example@example.com\",\"status\":\"subscribed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_member_to_mailchimp_list_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_member_to_mailchimp_list_example_call_tool.py deleted file mode 100644 index 679b76248..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_member_to_mailchimp_list_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddMemberToMailchimpList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'list_unique_id': '123456', - 'bypass_merge_field_validation': 'true', - 'request_body': '{"email_address":"example@example.com","status":"subscribed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_member_to_static_segment_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_member_to_static_segment_example_call_tool.js deleted file mode 100644 index 824255f0f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_member_to_static_segment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddMemberToStaticSegment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "segment_id": "seg456", - "subscriber_email_address": "example@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_member_to_static_segment_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_member_to_static_segment_example_call_tool.py deleted file mode 100644 index 82954d4a2..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_member_to_static_segment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddMemberToStaticSegment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'segment_id': 'seg456', - 'subscriber_email_address': 'example@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_new_ecommerce_store_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_new_ecommerce_store_example_call_tool.js deleted file mode 100644 index f7cefec0c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_new_ecommerce_store_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddNewEcommerceStore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"store_name\":\"My Online Store\",\"store_url\":\"https://myonlinestore.com\",\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_new_ecommerce_store_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_new_ecommerce_store_example_call_tool.py deleted file mode 100644 index e7b5eacad..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_new_ecommerce_store_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddNewEcommerceStore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"store_name":"My Online ' - 'Store","store_url":"https://myonlinestore.com","currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_note_to_subscriber_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_note_to_subscriber_example_call_tool.js deleted file mode 100644 index 65c6a1274..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_note_to_subscriber_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddNoteToSubscriber"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "subscriber_email_hash": "5d41402abc4b2a76b9719d911017c592", - "subscriber_note_content": "Follow up on the last purchase." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_note_to_subscriber_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_note_to_subscriber_example_call_tool.py deleted file mode 100644 index 64a99e3eb..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_note_to_subscriber_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddNoteToSubscriber" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'subscriber_email_hash': '5d41402abc4b2a76b9719d911017c592', - 'subscriber_note_content': 'Follow up on the last purchase.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_or_update_customer_in_store_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_or_update_customer_in_store_example_call_tool.js deleted file mode 100644 index 05e35cbeb..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_or_update_customer_in_store_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddOrUpdateCustomerInStore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "customer_identifier": "cust456", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_or_update_customer_in_store_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_or_update_customer_in_store_example_call_tool.py deleted file mode 100644 index 191e97ccc..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_or_update_customer_in_store_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddOrUpdateCustomerInStore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'customer_identifier': 'cust456', - 'request_body': '{"name":"John Doe","email":"john@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_or_update_list_member_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_or_update_list_member_example_call_tool.js deleted file mode 100644 index b1d2513a8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_or_update_list_member_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddOrUpdateListMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "unique_list_id": "123456789", - "subscriber_identifier": "example@example.com", - "bypass_merge_field_check": "false", - "request_body": "{\"email_address\":\"example@example.com\",\"status\":\"subscribed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_or_update_list_member_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_or_update_list_member_example_call_tool.py deleted file mode 100644 index 9f094d946..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_or_update_list_member_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddOrUpdateListMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'unique_list_id': '123456789', - 'subscriber_identifier': 'example@example.com', - 'bypass_merge_field_check': 'false', - 'request_body': '{"email_address":"example@example.com","status":"subscribed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_order_line_item_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_order_line_item_example_call_tool.js deleted file mode 100644 index b4c5961c5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_order_line_item_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddOrderLineItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "order_id": "order456", - "request_body": "{\"product_id\":\"prod789\",\"quantity\":2}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_order_line_item_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_order_line_item_example_call_tool.py deleted file mode 100644 index ebe2e3622..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_order_line_item_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddOrderLineItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'order_id': 'order456', - 'request_body': '{"product_id":"prod789","quantity":2}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_order_to_store_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_order_to_store_example_call_tool.js deleted file mode 100644 index d4d4bce83..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_order_to_store_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddOrderToStore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "request_body": "{\"product_id\":\"prod456\",\"quantity\":2,\"customer_id\":\"cust789\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_order_to_store_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_order_to_store_example_call_tool.py deleted file mode 100644 index 32b6986f8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_order_to_store_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddOrderToStore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'request_body': '{"product_id":"prod456","quantity":2,"customer_id":"cust789"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_image_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_image_example_call_tool.js deleted file mode 100644 index 9ad2e6c7d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_image_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddProductImage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_id": "12345", - "product_image_id": "img_001", - "product_image_url": "https://example.com/images/product12345.jpg", - "store_id": "store_001", - "product_variant_ids": [ - "variant_1", - "variant_2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_image_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_image_example_call_tool.py deleted file mode 100644 index d5090b99b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_image_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddProductImage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_id': '12345', - 'product_image_id': 'img_001', - 'product_image_url': 'https://example.com/images/product12345.jpg', - 'store_id': 'store_001', - 'product_variant_ids': ['variant_1', 'variant_2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_to_store_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_to_store_example_call_tool.js deleted file mode 100644 index 4e39f11c1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_to_store_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddProductToStore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_id": "12345", - "request_body": "{\"name\":\"New Product\",\"price\":19.99,\"description\":\"A great new product!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_to_store_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_to_store_example_call_tool.py deleted file mode 100644 index 17e4c2e52..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_to_store_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddProductToStore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_id': '12345', - 'request_body': '{"name":"New Product","price":19.99,"description":"A great new product!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_variant_mailchimp_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_variant_mailchimp_example_call_tool.js deleted file mode 100644 index c66edc19f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_variant_mailchimp_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddProductVariantMailchimp"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "product_id": "prod456", - "request_body": "{\"variant\":\"size\",\"value\":\"M\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_variant_mailchimp_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_variant_mailchimp_example_call_tool.py deleted file mode 100644 index 76f125c2d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_product_variant_mailchimp_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddProductVariantMailchimp" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'product_id': 'prod456', - 'request_body': '{"variant":"size","value":"M"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_promo_code_to_store_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_promo_code_to_store_example_call_tool.js deleted file mode 100644 index cd10ed950..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_promo_code_to_store_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddPromoCodeToStore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "promo_code": "SAVE20", - "promo_code_identifier": "promo_12345", - "promo_rule_identifier": "rule_67890", - "promotion_redemption_url": "https://example.com/redeem", - "store_identifier": "store_abc", - "is_promo_code_enabled": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_promo_code_to_store_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_promo_code_to_store_example_call_tool.py deleted file mode 100644 index 03d08333f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_promo_code_to_store_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddPromoCodeToStore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'promo_code': 'SAVE20', - 'promo_code_identifier': 'promo_12345', - 'promo_rule_identifier': 'rule_67890', - 'promotion_redemption_url': 'https://example.com/redeem', - 'store_identifier': 'store_abc', - 'is_promo_code_enabled': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_store_promo_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_store_promo_rule_example_call_tool.js deleted file mode 100644 index 38c476465..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_store_promo_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddStorePromoRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_id": "12345", - "request_body": "{\"promo_code\":\"SAVE20\",\"discount\":\"20%\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_store_promo_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_store_promo_rule_example_call_tool.py deleted file mode 100644 index fec272c26..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_store_promo_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddStorePromoRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'store_id': '12345', 'request_body': '{"promo_code":"SAVE20","discount":"20%"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_subscriber_to_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_subscriber_to_workflow_example_call_tool.js deleted file mode 100644 index 81c387ddd..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_subscriber_to_workflow_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddSubscriberToWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_workflow_id": "12345", - "subscriber_email_address": "example@example.com", - "workflow_email_id": "email_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_subscriber_to_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_subscriber_to_workflow_example_call_tool.py deleted file mode 100644 index 32aef1132..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_subscriber_to_workflow_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddSubscriberToWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_workflow_id': '12345', - 'subscriber_email_address': 'example@example.com', - 'workflow_email_id': 'email_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_verified_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_verified_domain_example_call_tool.js deleted file mode 100644 index a594762d4..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_verified_domain_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.AddVerifiedDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "verification_email_address": "admin@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_verified_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_verified_domain_example_call_tool.py deleted file mode 100644 index 0f451ceb1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/add_verified_domain_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.AddVerifiedDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'verification_email_address': 'admin@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_contact_mailchimp_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_contact_mailchimp_example_call_tool.js deleted file mode 100644 index ed390bd4b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_contact_mailchimp_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.ArchiveContactMailchimp"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "audience_unique_id": "abc123", - "contact_id": "contact456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_contact_mailchimp_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_contact_mailchimp_example_call_tool.py deleted file mode 100644 index b0dcdf0fb..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_contact_mailchimp_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.ArchiveContactMailchimp" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'audience_unique_id': 'abc123', 'contact_id': 'contact456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_list_member_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_list_member_example_call_tool.js deleted file mode 100644 index 265c7ed49..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_list_member_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.ArchiveListMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mailing_list_id": "1234567890abcdef", - "member_identifier": "example@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_list_member_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_list_member_example_call_tool.py deleted file mode 100644 index 7a207ff2f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_list_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.ArchiveListMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mailing_list_id': '1234567890abcdef', 'member_identifier': 'example@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_mailchimp_automation_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_mailchimp_automation_example_call_tool.js deleted file mode 100644 index e193b33b6..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_mailchimp_automation_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.ArchiveMailchimpAutomation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_workflow_id": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_mailchimp_automation_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_mailchimp_automation_example_call_tool.py deleted file mode 100644 index fcb421f13..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/archive_mailchimp_automation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.ArchiveMailchimpAutomation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_workflow_id': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/cancel_batch_request_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/cancel_batch_request_example_call_tool.js deleted file mode 100644 index 0504bf631..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/cancel_batch_request_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CancelBatchRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_request_id": "12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/cancel_batch_request_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/cancel_batch_request_example_call_tool.py deleted file mode 100644 index 1e409f766..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/cancel_batch_request_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CancelBatchRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_request_id': '12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/cancel_campaign_send_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/cancel_campaign_send_example_call_tool.js deleted file mode 100644 index 33493976c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/cancel_campaign_send_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CancelCampaignSend"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_identifier": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/cancel_campaign_send_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/cancel_campaign_send_example_call_tool.py deleted file mode 100644 index e3d04ed64..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/cancel_campaign_send_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CancelCampaignSend" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_identifier': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/check_mailchimp_api_health_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/check_mailchimp_api_health_example_call_tool.js deleted file mode 100644 index 1b0ab7378..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/check_mailchimp_api_health_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CheckMailchimpApiHealth"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/check_mailchimp_api_health_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/check_mailchimp_api_health_example_call_tool.py deleted file mode 100644 index 75a208945..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/check_mailchimp_api_health_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CheckMailchimpApiHealth" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/configure_webhook_on_batch_complete_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/configure_webhook_on_batch_complete_example_call_tool.js deleted file mode 100644 index be5118e4a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/configure_webhook_on_batch_complete_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.ConfigureWebhookOnBatchComplete"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_url": "https://example.com/webhook", - "webhook_enabled": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/configure_webhook_on_batch_complete_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/configure_webhook_on_batch_complete_example_call_tool.py deleted file mode 100644 index 1e57c4714..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/configure_webhook_on_batch_complete_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.ConfigureWebhookOnBatchComplete" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_url': 'https://example.com/webhook', 'webhook_enabled': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_audience_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_audience_contact_example_call_tool.js deleted file mode 100644 index 3a23bc536..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_audience_contact_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateAudienceContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "audience_unique_id": "12345", - "request_body": "{\"email_address\":\"example@example.com\",\"status\":\"subscribed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_audience_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_audience_contact_example_call_tool.py deleted file mode 100644 index 2dcd3f3d6..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_audience_contact_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateAudienceContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'audience_unique_id': '12345', - 'request_body': '{"email_address":"example@example.com","status":"subscribed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_campaign_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_campaign_folder_example_call_tool.js deleted file mode 100644 index 1b2297cc1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_campaign_folder_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateCampaignFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_name": "Summer Campaigns" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_campaign_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_campaign_folder_example_call_tool.py deleted file mode 100644 index bf5fddc73..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_campaign_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateCampaignFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_name': 'Summer Campaigns' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_interest_category_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_interest_category_example_call_tool.js deleted file mode 100644 index 904261a63..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_interest_category_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateInterestCategory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "category_description": "What are your interests?", - "category_display_type": "checkboxes", - "list_unique_id": "abc123", - "category_display_order": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_interest_category_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_interest_category_example_call_tool.py deleted file mode 100644 index a1339023a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_interest_category_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateInterestCategory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'category_description': 'What are your interests?', - 'category_display_type': 'checkboxes', - 'list_unique_id': 'abc123', - 'category_display_order': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_interest_group_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_interest_group_example_call_tool.js deleted file mode 100644 index 21bec57a1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_interest_group_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateInterestGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "interest_category_unique_id": "cat123", - "interest_group_name": "Tech Enthusiasts", - "list_unique_id": "list456", - "interest_display_order": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_interest_group_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_interest_group_example_call_tool.py deleted file mode 100644 index 0c514bad0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_interest_group_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateInterestGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'interest_category_unique_id': 'cat123', - 'interest_group_name': 'Tech Enthusiasts', - 'list_unique_id': 'list456', - 'interest_display_order': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_account_export_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_account_export_example_call_tool.js deleted file mode 100644 index 87fe772c4..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_account_export_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpAccountExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_export_stages": [ - "contacts", - "campaigns" - ], - "export_starting_date": "2023-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_account_export_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_account_export_example_call_tool.py deleted file mode 100644 index ee6307ca7..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_account_export_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpAccountExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_export_stages': ['contacts', 'campaigns'], 'export_starting_date': '2023-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_automation_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_automation_example_call_tool.js deleted file mode 100644 index f221d092a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_automation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpAutomation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_workflow_type": "abandonedCart", - "automation_from_name": "My Online Store", - "list_id": "123456", - "reply_to_email_address": "support@myonlinestore.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_automation_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_automation_example_call_tool.py deleted file mode 100644 index 723bb0b4e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_automation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpAutomation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_workflow_type': 'abandonedCart', - 'automation_from_name': 'My Online Store', - 'list_id': '123456', - 'reply_to_email_address': 'support@myonlinestore.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_campaign_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_campaign_example_call_tool.js deleted file mode 100644 index 0ab0aa735..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_campaign_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpCampaign"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"campaign_name\":\"Spring Sale\",\"subject_line\":\"Don't miss our Spring Sale!\",\"from_name\":\"Your Company\",\"reply_to\":\"info@yourcompany.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_campaign_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_campaign_example_call_tool.py deleted file mode 100644 index 7b6f796d8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_campaign_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpCampaign" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"campaign_name":"Spring Sale","subject_line":"Don\'t miss our Spring ' - 'Sale!","from_name":"Your Company","reply_to":"info@yourcompany.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_connected_site_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_connected_site_example_call_tool.js deleted file mode 100644 index 4d22a3c0e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_connected_site_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpConnectedSite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "connected_site_domain": "example.com", - "site_unique_identifier": "unique-site-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_connected_site_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_connected_site_example_call_tool.py deleted file mode 100644 index a5e21a56c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_connected_site_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpConnectedSite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'connected_site_domain': 'example.com', 'site_unique_identifier': 'unique-site-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_landing_page_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_landing_page_example_call_tool.js deleted file mode 100644 index 266550844..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_landing_page_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpLandingPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_name": "My New Landing Page", - "landing_page_title": "Welcome to My Page", - "landing_page_description": "This is a description of my new landing page.", - "track_with_mailchimp": true, - "use_account_default_list": "true" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_landing_page_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_landing_page_example_call_tool.py deleted file mode 100644 index 7f1c4bd79..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_landing_page_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpLandingPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_name': 'My New Landing Page', - 'landing_page_title': 'Welcome to My Page', - 'landing_page_description': 'This is a description of my new landing page.', - 'track_with_mailchimp': True, - 'use_account_default_list': 'true' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_list_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_list_example_call_tool.js deleted file mode 100644 index 184b0c2cc..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New List\",\"contact\":{\"company\":\"Company Name\",\"address1\":\"123 Main St\",\"city\":\"Anytown\",\"state\":\"CA\",\"zip\":\"12345\",\"country\":\"US\"},\"permission_reminder\":\"You are receiving this email because you signed up for updates.\",\"campaign_defaults\":{\"from_name\":\"Your Name\",\"from_email\":\"you@example.com\",\"subject\":\"Subject Line\",\"language\":\"en\"},\"email_type_option\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_list_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_list_example_call_tool.py deleted file mode 100644 index 23dc58af9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_list_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New List","contact":{"company":"Company Name","address1":"123 Main ' - 'St","city":"Anytown","state":"CA","zip":"12345","country":"US"},"permission_reminder":"You ' - 'are receiving this email because you signed up for ' - 'updates.","campaign_defaults":{"from_name":"Your ' - 'Name","from_email":"you@example.com","subject":"Subject ' - 'Line","language":"en"},"email_type_option":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_segment_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_segment_example_call_tool.js deleted file mode 100644 index aacc75559..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_segment_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpSegment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "segment_name": "Active Customers", - "emails_for_static_segment": [ - "customer1@example.com", - "customer2@example.com" - ], - "segment_match_conditions": [ - { - "field": "last_purchase_date", - "operator": ">", - "value": "2023-01-01" - } - ], - "segment_match_type": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_segment_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_segment_example_call_tool.py deleted file mode 100644 index 5e96d6b8c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_segment_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpSegment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'segment_name': 'Active Customers', - 'emails_for_static_segment': ['customer1@example.com', 'customer2@example.com'], - 'segment_match_conditions': [ { 'field': 'last_purchase_date', - 'operator': '>', - 'value': '2023-01-01'}], - 'segment_match_type': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_template_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_template_example_call_tool.js deleted file mode 100644 index 9d1da7d20..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_template_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "template_html_content": "

Welcome to Our Newsletter

Stay tuned for updates!

", - "template_name": "Monthly Newsletter", - "template_folder_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_template_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_template_example_call_tool.py deleted file mode 100644 index 2c5e1e333..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_template_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'template_html_content': '

Welcome to Our Newsletter

Stay tuned for ' - 'updates!

', - 'template_name': 'Monthly Newsletter', - 'template_folder_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_webhook_example_call_tool.js deleted file mode 100644 index 705737e56..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_webhook_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "mailchimp_list_id": "123456789", - "request_body": "{\"url\":\"https://example.com/webhook\",\"events\":[\"subscribe\",\"unsubscribe\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_webhook_example_call_tool.py deleted file mode 100644 index 683748838..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_mailchimp_webhook_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateMailchimpWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'mailchimp_list_id': '123456789', - 'request_body': '{"url":"https://example.com/webhook","events":["subscribe","unsubscribe"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_new_file_manager_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_new_file_manager_folder_example_call_tool.js deleted file mode 100644 index 059bef427..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_new_file_manager_folder_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateNewFileManagerFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_name": "NewFolder" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_new_file_manager_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_new_file_manager_folder_example_call_tool.py deleted file mode 100644 index 7dddeb322..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_new_file_manager_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateNewFileManagerFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_name': 'NewFolder' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_survey_campaign_email_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_survey_campaign_email_example_call_tool.js deleted file mode 100644 index a83d9844f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_survey_campaign_email_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateSurveyCampaignEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_identifier": "list_12345", - "survey_identifier": "survey_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_survey_campaign_email_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_survey_campaign_email_example_call_tool.py deleted file mode 100644 index a6c3870be..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_survey_campaign_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateSurveyCampaignEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_identifier': 'list_12345', 'survey_identifier': 'survey_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_template_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_template_folder_example_call_tool.js deleted file mode 100644 index 514a2ece6..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_template_folder_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CreateTemplateFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_name": "Marketing Templates" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_template_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_template_folder_example_call_tool.py deleted file mode 100644 index ecfda94d7..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/create_template_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CreateTemplateFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_name': 'Marketing Templates' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/customize_list_signup_form_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/customize_list_signup_form_example_call_tool.js deleted file mode 100644 index 57d072656..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/customize_list_signup_form_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.CustomizeListSignupForm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "list_unique_id": "abc123", - "request_body": "{\"form_title\":\"Join our newsletter\",\"fields\":[{\"type\":\"text\",\"label\":\"Email Address\",\"required\":true},{\"type\":\"text\",\"label\":\"First Name\",\"required\":false}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/customize_list_signup_form_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/customize_list_signup_form_example_call_tool.py deleted file mode 100644 index f68dcf036..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/customize_list_signup_form_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.CustomizeListSignupForm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'list_unique_id': 'abc123', - 'request_body': '{"form_title":"Join our newsletter","fields":[{"type":"text","label":"Email ' - 'Address","required":true},{"type":"text","label":"First ' - 'Name","required":false}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_campaign_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_campaign_folder_example_call_tool.js deleted file mode 100644 index 478ec75d5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_campaign_folder_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteCampaignFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_folder_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_campaign_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_campaign_folder_example_call_tool.py deleted file mode 100644 index 3fd7651eb..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_campaign_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteCampaignFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_folder_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_cart_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_cart_example_call_tool.js deleted file mode 100644 index 18d34414f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_cart_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteCart"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cart_id": "12345", - "store_identifier": "store_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_cart_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_cart_example_call_tool.py deleted file mode 100644 index 549a34d39..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_cart_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteCart" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cart_id': '12345', 'store_identifier': 'store_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_cart_line_item_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_cart_line_item_example_call_tool.js deleted file mode 100644 index 1ada16711..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_cart_line_item_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteCartLineItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cart_identifier": "cart123", - "line_item_id": "item456", - "store_identifier": "store789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_cart_line_item_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_cart_line_item_example_call_tool.py deleted file mode 100644 index 13c3c166e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_cart_line_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteCartLineItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cart_identifier': 'cart123', 'line_item_id': 'item456', 'store_identifier': 'store789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_ecommerce_product_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_ecommerce_product_example_call_tool.js deleted file mode 100644 index eb54dbd73..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_ecommerce_product_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteEcommerceProduct"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_id": "12345", - "store_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_ecommerce_product_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_ecommerce_product_example_call_tool.py deleted file mode 100644 index 67ce3aff3..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_ecommerce_product_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteEcommerceProduct" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_id': '12345', 'store_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_ecommerce_store_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_ecommerce_store_example_call_tool.js deleted file mode 100644 index e146d8ac9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_ecommerce_store_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteEcommerceStore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "store_identifier": "store_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_ecommerce_store_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_ecommerce_store_example_call_tool.py deleted file mode 100644 index 0c4a87178..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_ecommerce_store_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteEcommerceStore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'store_identifier': 'store_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_email_template_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_email_template_example_call_tool.js deleted file mode 100644 index 10310581b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_email_template_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteEmailTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "template_unique_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_email_template_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_email_template_example_call_tool.py deleted file mode 100644 index 044f2cc1a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_email_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteEmailTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'template_unique_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_file_manager_file_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_file_manager_file_example_call_tool.js deleted file mode 100644 index e63431453..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_file_manager_file_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteFileManagerFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_manager_file_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_file_manager_file_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_file_manager_file_example_call_tool.py deleted file mode 100644 index 4c0514fe4..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_file_manager_file_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteFileManagerFile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_manager_file_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_file_manager_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_file_manager_folder_example_call_tool.js deleted file mode 100644 index 561bc21a8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_file_manager_folder_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteFileManagerFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_manager_folder_id": "folder_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_file_manager_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_file_manager_folder_example_call_tool.py deleted file mode 100644 index 3bd7bfa57..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_file_manager_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteFileManagerFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_manager_folder_id': 'folder_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_interest_category_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_interest_category_example_call_tool.js deleted file mode 100644 index dab711fe9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_interest_category_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteInterestCategory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "interest_category_id": "abc123", - "list_id": "list456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_interest_category_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_interest_category_example_call_tool.py deleted file mode 100644 index dfd946b96..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_interest_category_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteInterestCategory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'interest_category_id': 'abc123', 'list_id': 'list456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_interest_from_category_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_interest_from_category_example_call_tool.js deleted file mode 100644 index fd4e8b1ac..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_interest_from_category_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteInterestFromCategory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "interest_category_id": "cat_12345", - "interest_identifier": "interest_67890", - "list_unique_id": "list_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_interest_from_category_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_interest_from_category_example_call_tool.py deleted file mode 100644 index 76fe32189..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_interest_from_category_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteInterestFromCategory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'interest_category_id': 'cat_12345', - 'interest_identifier': 'interest_67890', - 'list_unique_id': 'list_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_landing_page_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_landing_page_example_call_tool.js deleted file mode 100644 index 47a1df8af..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_landing_page_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteLandingPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_landing_page_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_landing_page_example_call_tool.py deleted file mode 100644 index e9bcaa0a0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_landing_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteLandingPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_campaign_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_campaign_example_call_tool.js deleted file mode 100644 index 7acde8a82..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_campaign_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteMailchimpCampaign"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_campaign_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_campaign_example_call_tool.py deleted file mode 100644 index 826838dbf..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_campaign_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteMailchimpCampaign" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_list_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_list_example_call_tool.js deleted file mode 100644 index 2fb0bc5c2..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_list_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteMailchimpList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_list_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_list_example_call_tool.py deleted file mode 100644 index 5c46061e5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteMailchimpList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_webhook_example_call_tool.js deleted file mode 100644 index fb16f1e8b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_webhook_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteMailchimpWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "abc123", - "webhook_id": "webhook456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_webhook_example_call_tool.py deleted file mode 100644 index 263533bf8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_mailchimp_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteMailchimpWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': 'abc123', 'webhook_id': 'webhook456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_member_data_permanently_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_member_data_permanently_example_call_tool.js deleted file mode 100644 index 7846103b8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_member_data_permanently_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteMemberDataPermanently"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "member_email_hash": "5d41402abc4b2a76b9719d911017c592" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_member_data_permanently_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_member_data_permanently_example_call_tool.py deleted file mode 100644 index e7301e06c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_member_data_permanently_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteMemberDataPermanently" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', 'member_email_hash': '5d41402abc4b2a76b9719d911017c592' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_member_note_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_member_note_example_call_tool.js deleted file mode 100644 index 097b675ee..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_member_note_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteMemberNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "member_identifier": "d41d8cd98f00b204e9800998ecf8427e", - "note_id": "note456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_member_note_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_member_note_example_call_tool.py deleted file mode 100644 index 3a5d06a51..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_member_note_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteMemberNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'member_identifier': 'd41d8cd98f00b204e9800998ecf8427e', - 'note_id': 'note456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_merge_field_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_merge_field_example_call_tool.js deleted file mode 100644 index 0be38418e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_merge_field_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteMergeField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "merge_field_id": "field456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_merge_field_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_merge_field_example_call_tool.py deleted file mode 100644 index cd61f91ea..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_merge_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteMergeField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', 'merge_field_id': 'field456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_order_in_ecommerce_store_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_order_in_ecommerce_store_example_call_tool.js deleted file mode 100644 index c2a53062f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_order_in_ecommerce_store_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteOrderInEcommerceStore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ecommerce_store_id": "store_12345", - "order_id": "order_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_order_in_ecommerce_store_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_order_in_ecommerce_store_example_call_tool.py deleted file mode 100644 index 4a5ce40be..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_order_in_ecommerce_store_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteOrderInEcommerceStore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ecommerce_store_id': 'store_12345', 'order_id': 'order_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_order_line_item_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_order_line_item_example_call_tool.js deleted file mode 100644 index d76597997..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_order_line_item_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteOrderLineItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "order_id": "12345", - "order_line_item_id": "67890", - "store_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_order_line_item_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_order_line_item_example_call_tool.py deleted file mode 100644 index 896b0c5ff..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_order_line_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteOrderLineItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'order_id': '12345', 'order_line_item_id': '67890', 'store_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_product_image_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_product_image_example_call_tool.js deleted file mode 100644 index cb91b5dc0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_product_image_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteProductImage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_id": "12345", - "product_image_id": "img67890", - "store_identifier": "store001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_product_image_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_product_image_example_call_tool.py deleted file mode 100644 index 900dbb4d1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_product_image_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteProductImage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_id': '12345', 'product_image_id': 'img67890', 'store_identifier': 'store001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_product_variant_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_product_variant_example_call_tool.js deleted file mode 100644 index 84244c7c0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_product_variant_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteProductVariant"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_id": "12345", - "product_variant_id": "67890", - "store_identifier": "store_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_product_variant_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_product_variant_example_call_tool.py deleted file mode 100644 index 927c9317a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_product_variant_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteProductVariant" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_id': '12345', 'product_variant_id': '67890', 'store_identifier': 'store_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_promo_rule_from_store_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_promo_rule_from_store_example_call_tool.js deleted file mode 100644 index e08726b86..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_promo_rule_from_store_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeletePromoRuleFromStore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "promo_rule_id": "promo123", - "store_id": "store456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_promo_rule_from_store_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_promo_rule_from_store_example_call_tool.py deleted file mode 100644 index 94dbc966a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_promo_rule_from_store_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeletePromoRuleFromStore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'promo_rule_id': 'promo123', 'store_id': 'store456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_specific_segment_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_specific_segment_example_call_tool.js deleted file mode 100644 index e42808e60..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_specific_segment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteSpecificSegment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "segment_unique_id": "seg456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_specific_segment_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_specific_segment_example_call_tool.py deleted file mode 100644 index 30351e482..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_specific_segment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteSpecificSegment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', 'segment_unique_id': 'seg456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_store_customer_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_store_customer_example_call_tool.js deleted file mode 100644 index 291f27d8b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_store_customer_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteStoreCustomer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_identifier": "cust_12345", - "store_identifier": "store_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_store_customer_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_store_customer_example_call_tool.py deleted file mode 100644 index 351e4ce5d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_store_customer_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteStoreCustomer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_identifier': 'cust_12345', 'store_identifier': 'store_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_store_promo_code_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_store_promo_code_example_call_tool.js deleted file mode 100644 index 7b4885fdc..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_store_promo_code_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteStorePromoCode"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "promo_code_id": "PROMO123", - "promo_rule_id": "RULE456", - "store_identifier": "STORE789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_store_promo_code_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_store_promo_code_example_call_tool.py deleted file mode 100644 index fe99816c4..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_store_promo_code_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteStorePromoCode" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'promo_code_id': 'PROMO123', 'promo_rule_id': 'RULE456', 'store_identifier': 'STORE789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_template_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_template_folder_example_call_tool.js deleted file mode 100644 index eeae0b53c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_template_folder_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteTemplateFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "template_folder_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_template_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_template_folder_example_call_tool.py deleted file mode 100644 index 28cb82d4a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_template_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteTemplateFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'template_folder_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_verified_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_verified_domain_example_call_tool.js deleted file mode 100644 index dc4ca6020..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_verified_domain_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.DeleteVerifiedDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_verified_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_verified_domain_example_call_tool.py deleted file mode 100644 index f3cf34a62..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/delete_verified_domain_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.DeleteVerifiedDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_abuse_report_details_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_abuse_report_details_example_call_tool.js deleted file mode 100644 index d9b4afa7a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_abuse_report_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.FetchAbuseReportDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "abuse_report_id": "12345", - "mailing_list_unique_id": "abcde-67890", - "fields_to_return": "subject,reporter", - "records_to_return": "5" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_abuse_report_details_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_abuse_report_details_example_call_tool.py deleted file mode 100644 index 4116b4cef..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_abuse_report_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.FetchAbuseReportDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'abuse_report_id': '12345', - 'mailing_list_unique_id': 'abcde-67890', - 'fields_to_return': 'subject,reporter', - 'records_to_return': '5' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_campaign_open_locations_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_campaign_open_locations_example_call_tool.js deleted file mode 100644 index e80b97d22..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_campaign_open_locations_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.FetchCampaignOpenLocations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "campaign_12345", - "fields_to_return": "location.name,location.country", - "number_of_records": "5" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_campaign_open_locations_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_campaign_open_locations_example_call_tool.py deleted file mode 100644 index 1f852ba3f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_campaign_open_locations_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.FetchCampaignOpenLocations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'campaign_12345', - 'fields_to_return': 'location.name,location.country', - 'number_of_records': '5' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_click_details_for_campaign_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_click_details_for_campaign_example_call_tool.js deleted file mode 100644 index bded5ecdb..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_click_details_for_campaign_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.FetchClickDetailsForCampaign"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": "12345", - "link_identifier": "abcde", - "exclude_fields_list": "email,phone", - "fields_to_return": "name,email", - "pagination_offset": "0", - "record_count": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_click_details_for_campaign_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_click_details_for_campaign_example_call_tool.py deleted file mode 100644 index 5baaf9640..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/fetch_click_details_for_campaign_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.FetchClickDetailsForCampaign" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': '12345', - 'link_identifier': 'abcde', - 'exclude_fields_list': 'email,phone', - 'fields_to_return': 'name,email', - 'pagination_offset': '0', - 'record_count': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/forget_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/forget_contact_example_call_tool.js deleted file mode 100644 index 74071e6ab..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/forget_contact_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.ForgetContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "audience_id": "aud12345", - "contact_id": "cont67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/forget_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/forget_contact_example_call_tool.py deleted file mode 100644 index d118c1905..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/forget_contact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.ForgetContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'audience_id': 'aud12345', 'contact_id': 'cont67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_abuse_reports_for_list_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_abuse_reports_for_list_example_call_tool.js deleted file mode 100644 index e6c7abada..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_abuse_reports_for_list_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAbuseReportsForList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "exclude_fields_from_result": "field1,field2", - "number_of_records_to_return": "20", - "pagination_offset": "0", - "return_fields": "field3,field4" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_abuse_reports_for_list_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_abuse_reports_for_list_example_call_tool.py deleted file mode 100644 index 8e55db6b9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_abuse_reports_for_list_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAbuseReportsForList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'exclude_fields_from_result': 'field1,field2', - 'number_of_records_to_return': '20', - 'pagination_offset': '0', - 'return_fields': 'field3,field4' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_account_export_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_account_export_info_example_call_tool.js deleted file mode 100644 index 8789d9835..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_account_export_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAccountExportInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_export_id": "12345", - "fields_to_exclude": "status,created_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_account_export_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_account_export_info_example_call_tool.py deleted file mode 100644 index 820a92a97..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_account_export_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAccountExportInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_export_id': '12345', 'fields_to_exclude': 'status,created_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_account_orders_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_account_orders_example_call_tool.js deleted file mode 100644 index 5a5feedb8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_account_orders_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAccountOrders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fields_to_return": "order_id,order_date,total_amount", - "number_of_records_to_return": "20", - "specific_customer_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_account_orders_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_account_orders_example_call_tool.py deleted file mode 100644 index 949dca45e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_account_orders_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAccountOrders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fields_to_return': 'order_id,order_date,total_amount', - 'number_of_records_to_return': '20', - 'specific_customer_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_batch_webhooks_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_batch_webhooks_example_call_tool.js deleted file mode 100644 index 99a9699e9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_batch_webhooks_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAllBatchWebhooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fields_to_exclude": "id,created_at", - "fields_to_return": "url,status", - "pagination_offset": "0", - "records_to_return": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_batch_webhooks_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_batch_webhooks_example_call_tool.py deleted file mode 100644 index b0f452ddd..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_batch_webhooks_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAllBatchWebhooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fields_to_exclude': 'id,created_at', - 'fields_to_return': 'url,status', - 'pagination_offset': '0', - 'records_to_return': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_landing_pages_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_landing_pages_example_call_tool.js deleted file mode 100644 index dd365e683..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_landing_pages_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAllLandingPages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exclude_fields_list": "created_at,updated_at", - "include_fields": "id,title,url", - "record_count": "20", - "sort_by_field": "title", - "sort_direction": "ascending" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_landing_pages_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_landing_pages_example_call_tool.py deleted file mode 100644 index c481c755b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_landing_pages_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAllLandingPages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exclude_fields_list': 'created_at,updated_at', - 'include_fields': 'id,title,url', - 'record_count': '20', - 'sort_by_field': 'title', - 'sort_direction': 'ascending' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_marketing_campaigns_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_marketing_campaigns_example_call_tool.js deleted file mode 100644 index d1041ce9d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_marketing_campaigns_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAllMarketingCampaigns"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_status": "sent", - "campaign_type": "regular", - "campaigns_created_after": "2023-01-01T00:00:00Z", - "number_of_records_to_return": "50", - "sort_by_field": "create_time", - "sort_order_direction": "DESC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_marketing_campaigns_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_marketing_campaigns_example_call_tool.py deleted file mode 100644 index 919093555..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_all_marketing_campaigns_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAllMarketingCampaigns" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_status': 'sent', - 'campaign_type': 'regular', - 'campaigns_created_after': '2023-01-01T00:00:00Z', - 'number_of_records_to_return': '50', - 'sort_by_field': 'create_time', - 'sort_order_direction': 'DESC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_contacts_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_contacts_example_call_tool.js deleted file mode 100644 index e2a7b12c0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_contacts_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAudienceContacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exclude_fields_list": "created_at,updated_at", - "include_fields": "id,name,email_address", - "pagination_offset": "0", - "records_to_return": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_contacts_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_contacts_example_call_tool.py deleted file mode 100644 index dd3b8092c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_contacts_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAudienceContacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exclude_fields_list': 'created_at,updated_at', - 'include_fields': 'id,name,email_address', - 'pagination_offset': '0', - 'records_to_return': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_info_example_call_tool.js deleted file mode 100644 index 240fb4e09..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAudienceInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "audience_id": "12345", - "exclude_fields_list": "members,stats", - "fields_to_return": "name,contact" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_info_example_call_tool.py deleted file mode 100644 index 709bbf98e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAudienceInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'audience_id': '12345', 'exclude_fields_list': 'members,stats', 'fields_to_return': 'name,contact' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_merge_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_merge_fields_example_call_tool.js deleted file mode 100644 index e70100e44..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_merge_fields_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAudienceMergeFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "audience_list_id": "123456", - "exclude_fields_list": "field1,field2", - "fields_to_return": "field3,field4", - "is_required_merge_field": "true", - "number_of_records_to_return": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_merge_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_merge_fields_example_call_tool.py deleted file mode 100644 index d09555bf9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_audience_merge_fields_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAudienceMergeFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'audience_list_id': '123456', - 'exclude_fields_list': 'field1,field2', - 'fields_to_return': 'field3,field4', - 'is_required_merge_field': 'true', - 'number_of_records_to_return': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_authorized_app_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_authorized_app_info_example_call_tool.js deleted file mode 100644 index fdaa3220c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_authorized_app_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAuthorizedAppInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "authorized_application_id": "12345", - "fields_to_exclude": "secret,token" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_authorized_app_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_authorized_app_info_example_call_tool.py deleted file mode 100644 index 3bc9dbfa9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_authorized_app_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAuthorizedAppInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'authorized_application_id': '12345', 'fields_to_exclude': 'secret,token' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_email_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_email_info_example_call_tool.js deleted file mode 100644 index 6d52a1e40..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_email_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAutomationEmailInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_email_unique_id": "email_12345", - "automation_workflow_id": "workflow_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_email_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_email_info_example_call_tool.py deleted file mode 100644 index 16be22acf..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_email_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAutomationEmailInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_email_unique_id': 'email_12345', 'automation_workflow_id': 'workflow_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_email_queue_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_email_queue_info_example_call_tool.js deleted file mode 100644 index ccdda02c6..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_email_queue_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAutomationEmailQueueInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_workflow_email_id": "email_12345", - "automation_workflow_id": "workflow_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_email_queue_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_email_queue_info_example_call_tool.py deleted file mode 100644 index 9c97cc9a0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_email_queue_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAutomationEmailQueueInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_workflow_email_id': 'email_12345', 'automation_workflow_id': 'workflow_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_emails_summary_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_emails_summary_example_call_tool.js deleted file mode 100644 index addade8b1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_emails_summary_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAutomationEmailsSummary"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_workflow_id": "workflow_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_emails_summary_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_emails_summary_example_call_tool.py deleted file mode 100644 index 7d53bd356..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_emails_summary_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAutomationEmailsSummary" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_workflow_id': 'workflow_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_subscriber_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_subscriber_info_example_call_tool.js deleted file mode 100644 index 67671beeb..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_subscriber_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAutomationSubscriberInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_workflow_email_id": "abc123", - "automation_workflow_id": "xyz789", - "subscriber_email_md5_hash": "d41d8cd98f00b204e9800998ecf8427e" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_subscriber_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_subscriber_info_example_call_tool.py deleted file mode 100644 index 09013f2a4..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_subscriber_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAutomationSubscriberInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_workflow_email_id': 'abc123', - 'automation_workflow_id': 'xyz789', - 'subscriber_email_md5_hash': 'd41d8cd98f00b204e9800998ecf8427e' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_summary_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_summary_example_call_tool.js deleted file mode 100644 index 8df52f613..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_summary_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAutomationSummary"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workflow_id": "12345", - "fields_to_exclude": "settings.trigger", - "include_fields": "name,status" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_summary_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_summary_example_call_tool.py deleted file mode 100644 index 6d017ecf8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_automation_summary_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAutomationSummary" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workflow_id': '12345', 'fields_to_exclude': 'settings.trigger', 'include_fields': 'name,status' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_available_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_available_templates_example_call_tool.js deleted file mode 100644 index 687d17a86..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_available_templates_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetAvailableTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_after_date": "2023-01-01T00:00:00+00:00", - "exclude_fields_list": "content,settings", - "fields_to_return": "id,name,category", - "filter_by_category": "newsletters", - "number_of_records_to_return": "20", - "pagination_offset": "0", - "sort_order_direction": "asc", - "sort_templates_by_field": "name", - "template_content_type": "multichannel" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_available_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_available_templates_example_call_tool.py deleted file mode 100644 index a0b137ac5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_available_templates_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetAvailableTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_after_date': '2023-01-01T00:00:00+00:00', - 'exclude_fields_list': 'content,settings', - 'fields_to_return': 'id,name,category', - 'filter_by_category': 'newsletters', - 'number_of_records_to_return': '20', - 'pagination_offset': '0', - 'sort_order_direction': 'asc', - 'sort_templates_by_field': 'name', - 'template_content_type': 'multichannel' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_status_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_status_example_call_tool.js deleted file mode 100644 index d0bede2a4..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetBatchStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_operation_id": "12345", - "excluded_fields_list": "status,created_at", - "return_fields": "id,status" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_status_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_status_example_call_tool.py deleted file mode 100644 index 9a5d78a51..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_status_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetBatchStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_operation_id': '12345', - 'excluded_fields_list': 'status,created_at', - 'return_fields': 'id,status' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_summaries_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_summaries_example_call_tool.js deleted file mode 100644 index 8ea30544a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_summaries_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetBatchSummaries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exclude_fields_to_return": "status,details", - "fields_to_return": "id,name", - "pagination_offset": "10", - "record_count_to_return": "20" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_summaries_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_summaries_example_call_tool.py deleted file mode 100644 index bc4b820c3..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_summaries_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetBatchSummaries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exclude_fields_to_return': 'status,details', - 'fields_to_return': 'id,name', - 'pagination_offset': '10', - 'record_count_to_return': '20' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_webhook_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_webhook_info_example_call_tool.js deleted file mode 100644 index 1d4bba6da..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_webhook_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetBatchWebhookInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_webhook_id": "12345", - "fields_to_exclude": "status,metadata" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_webhook_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_webhook_info_example_call_tool.py deleted file mode 100644 index c42180c45..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_batch_webhook_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetBatchWebhookInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_webhook_id': '12345', 'fields_to_exclude': 'status,metadata' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_abuse_report_details_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_abuse_report_details_example_call_tool.js deleted file mode 100644 index ff2850518..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_abuse_report_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignAbuseReportDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "abuse_report_id": "12345", - "campaign_unique_id": "abc-6789", - "exclude_fields_list": "field1,field2", - "include_fields": "field3,field4" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_abuse_report_details_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_abuse_report_details_example_call_tool.py deleted file mode 100644 index 661a11cf9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_abuse_report_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignAbuseReportDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'abuse_report_id': '12345', - 'campaign_unique_id': 'abc-6789', - 'exclude_fields_list': 'field1,field2', - 'include_fields': 'field3,field4' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_abuse_reports_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_abuse_reports_example_call_tool.js deleted file mode 100644 index 4bc4fa5e3..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_abuse_reports_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignAbuseReports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "12345", - "exclude_fields": "recipient.email,report.reason", - "include_fields": "recipient.name,report.date" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_abuse_reports_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_abuse_reports_example_call_tool.py deleted file mode 100644 index 6918b5134..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_abuse_reports_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignAbuseReports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': '12345', - 'exclude_fields': 'recipient.email,report.reason', - 'include_fields': 'recipient.name,report.date' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_advice_feedback_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_advice_feedback_example_call_tool.js deleted file mode 100644 index 33fb5a64d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_advice_feedback_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignAdviceFeedback"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": "12345", - "exclude_fields_to_return": "unsubscribes,bounces", - "include_fields": "open_rates,click_through_rates" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_advice_feedback_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_advice_feedback_example_call_tool.py deleted file mode 100644 index f29de4dc7..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_advice_feedback_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignAdviceFeedback" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': '12345', - 'exclude_fields_to_return': 'unsubscribes,bounces', - 'include_fields': 'open_rates,click_through_rates' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_click_details_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_click_details_example_call_tool.js deleted file mode 100644 index 6b31cf99d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_click_details_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignClickDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "fields_to_exclude": "field1,field2", - "number_of_records_to_return": "10", - "sort_by_field": "clicks", - "sort_direction": "descending" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_click_details_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_click_details_example_call_tool.py deleted file mode 100644 index d4ca83dfe..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_click_details_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignClickDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', - 'fields_to_exclude': 'field1,field2', - 'number_of_records_to_return': '10', - 'sort_by_field': 'clicks', - 'sort_direction': 'descending' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_content_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_content_example_call_tool.js deleted file mode 100644 index 5fe1b5ca8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_content_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": "12345", - "exclude_fields_list": "tags,recipients", - "included_fields": "html_content,plain_text_content" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_content_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_content_example_call_tool.py deleted file mode 100644 index 29639f578..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_content_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': '12345', - 'exclude_fields_list': 'tags,recipients', - 'included_fields': 'html_content,plain_text_content' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_details_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_details_example_call_tool.js deleted file mode 100644 index dcf1dbbca..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": "12345", - "fields_to_exclude": "details.cost,details.startDate", - "fields_to_return": "name,status,details", - "include_resend_shortcut_eligibility": "true" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_details_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_details_example_call_tool.py deleted file mode 100644 index ecf98c458..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': '12345', - 'fields_to_exclude': 'details.cost,details.startDate', - 'fields_to_return': 'name,status,details', - 'include_resend_shortcut_eligibility': 'true' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_domain_performance_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_domain_performance_example_call_tool.js deleted file mode 100644 index 87d5d06d1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_domain_performance_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignDomainPerformance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "12345", - "exclude_fields_from_report": "opens.clicks", - "fields_to_return": "domain,performance" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_domain_performance_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_domain_performance_example_call_tool.py deleted file mode 100644 index 1bce0146e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_domain_performance_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignDomainPerformance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': '12345', - 'exclude_fields_from_report': 'opens.clicks', - 'fields_to_return': 'domain,performance' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_email_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_email_activity_example_call_tool.js deleted file mode 100644 index ad72e0f2f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_email_activity_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignEmailActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "12345", - "subscriber_hash": "d41d8cd98f00b204e9800998ecf8427e", - "fields_to_return": "opens,clicks", - "restrict_activity_since": "2023-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_email_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_email_activity_example_call_tool.py deleted file mode 100644 index 3abcacb4f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_email_activity_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignEmailActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': '12345', - 'subscriber_hash': 'd41d8cd98f00b204e9800998ecf8427e', - 'fields_to_return': 'opens,clicks', - 'restrict_activity_since': '2023-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_feedback_message_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_feedback_message_example_call_tool.js deleted file mode 100644 index faa6a6952..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_feedback_message_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignFeedbackMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "campaign_123", - "feedback_message_id": "feedback_456", - "exclude_fields_from_feedback": "user.name,user.email", - "fields_to_return": "message,text" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_feedback_message_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_feedback_message_example_call_tool.py deleted file mode 100644 index 0f3da5b3a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_feedback_message_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignFeedbackMessage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'campaign_123', - 'feedback_message_id': 'feedback_456', - 'exclude_fields_from_feedback': 'user.name,user.email', - 'fields_to_return': 'message,text' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_folder_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_folder_info_example_call_tool.js deleted file mode 100644 index b3d58a155..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_folder_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignFolderInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_folder_id": "12345", - "exclude_fields": "created_at,updated_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_folder_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_folder_info_example_call_tool.py deleted file mode 100644 index 797c3c0db..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_folder_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignFolderInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_folder_id': '12345', 'exclude_fields': 'created_at,updated_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_folders_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_folders_example_call_tool.js deleted file mode 100644 index bc53b96a7..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_folders_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignFolders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exclude_fields": "created_at,updated_at", - "include_fields": "id,name", - "number_of_records_to_return": "20", - "pagination_offset": "0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_folders_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_folders_example_call_tool.py deleted file mode 100644 index 34eb5afb5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_folders_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignFolders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exclude_fields': 'created_at,updated_at', - 'include_fields': 'id,name', - 'number_of_records_to_return': '20', - 'pagination_offset': '0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_link_click_details_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_link_click_details_example_call_tool.js deleted file mode 100644 index f7c487f2d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_link_click_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignLinkClickDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "link_identifier": "link456", - "excluded_fields_list": "field1,field2", - "include_fields": "field3,field4" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_link_click_details_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_link_click_details_example_call_tool.py deleted file mode 100644 index 7c99fb578..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_link_click_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignLinkClickDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', - 'link_identifier': 'link456', - 'excluded_fields_list': 'field1,field2', - 'include_fields': 'field3,field4' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_open_details_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_open_details_example_call_tool.js deleted file mode 100644 index 0fc5900f8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_open_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignOpenDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "fields_to_return": "email,open_time", - "number_of_records_to_return": "20" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_open_details_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_open_details_example_call_tool.py deleted file mode 100644 index 734cb153e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_open_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignOpenDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', - 'fields_to_return': 'email,open_time', - 'number_of_records_to_return': '20' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_product_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_product_activity_example_call_tool.js deleted file mode 100644 index f60f71ae0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_product_activity_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignProductActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "exclude_fields_from_response": "field1,field2", - "number_of_records_to_return": "50" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_product_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_product_activity_example_call_tool.py deleted file mode 100644 index b96e0e091..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_product_activity_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignProductActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', - 'exclude_fields_from_response': 'field1,field2', - 'number_of_records_to_return': '50' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_recipient_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_recipient_info_example_call_tool.js deleted file mode 100644 index e7a0d54a0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_recipient_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignRecipientInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "recipient_subscriber_hash": "5d41402abc4b2a76b9719d911017c592", - "excluded_fields": "notes,activity", - "fields_to_return": "email_address,status" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_recipient_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_recipient_info_example_call_tool.py deleted file mode 100644 index 143524a23..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_recipient_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignRecipientInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', - 'recipient_subscriber_hash': '5d41402abc4b2a76b9719d911017c592', - 'excluded_fields': 'notes,activity', - 'fields_to_return': 'email_address,status' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_recipients_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_recipients_example_call_tool.js deleted file mode 100644 index 6e334bd5a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_recipients_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignRecipients"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_identifier": "campaign_12345", - "fields_to_exclude": "email,phone", - "include_fields": "name,status", - "number_of_records_to_return": "50" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_recipients_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_recipients_example_call_tool.py deleted file mode 100644 index 1b660a5c0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_recipients_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignRecipients" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_identifier': 'campaign_12345', - 'fields_to_exclude': 'email,phone', - 'include_fields': 'name,status', - 'number_of_records_to_return': '50' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_report_details_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_report_details_example_call_tool.js deleted file mode 100644 index 87d94ec0c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_report_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignReportDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "12345", - "exclude_fields_list": "clicks.opens", - "fields_to_return": "subject,send_time" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_report_details_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_report_details_example_call_tool.py deleted file mode 100644 index 1b4f6d63d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_report_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignReportDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': '12345', - 'exclude_fields_list': 'clicks.opens', - 'fields_to_return': 'subject,send_time' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_reports_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_reports_example_call_tool.js deleted file mode 100644 index 232479566..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_reports_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignReports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_type": "regular", - "exclude_fields_list": "tags,recipients", - "included_fields": "id,title,send_time", - "number_of_records_to_return": "50", - "restrict_to_campaigns_sent_after": "2023-01-01T00:00:00+00:00" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_reports_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_reports_example_call_tool.py deleted file mode 100644 index 5a8a15ddc..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_reports_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignReports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_type': 'regular', - 'exclude_fields_list': 'tags,recipients', - 'included_fields': 'id,title,send_time', - 'number_of_records_to_return': '50', - 'restrict_to_campaigns_sent_after': '2023-01-01T00:00:00+00:00' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_social_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_social_activity_example_call_tool.js deleted file mode 100644 index 93f9a8655..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_social_activity_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignSocialActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "fields_to_exclude": "likes,shares", - "fields_to_return": "summary,engagement" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_social_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_social_activity_example_call_tool.py deleted file mode 100644 index f301ce07b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_social_activity_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignSocialActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', - 'fields_to_exclude': 'likes,shares', - 'fields_to_return': 'summary,engagement' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_sub_reports_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_sub_reports_example_call_tool.js deleted file mode 100644 index 1f9c66b79..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_sub_reports_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignSubReports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "fields_to_exclude": "reports.summary, reports.details", - "return_fields": "reports.id, reports.title" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_sub_reports_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_sub_reports_example_call_tool.py deleted file mode 100644 index 5eff6136b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_sub_reports_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignSubReports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', - 'fields_to_exclude': 'reports.summary, reports.details', - 'return_fields': 'reports.id, reports.title' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_subscriber_open_details_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_subscriber_open_details_example_call_tool.js deleted file mode 100644 index b6c6fe7d1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_subscriber_open_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCampaignSubscriberOpenDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "12345", - "subscriber_email_hash": "d41d8cd98f00b204e9800998ecf8427e", - "exclude_fields_from_response": "details.open_time", - "fields_to_return": "details.open_time,details.device" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_subscriber_open_details_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_subscriber_open_details_example_call_tool.py deleted file mode 100644 index 73103ddb7..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_campaign_subscriber_open_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCampaignSubscriberOpenDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': '12345', - 'subscriber_email_hash': 'd41d8cd98f00b204e9800998ecf8427e', - 'exclude_fields_from_response': 'details.open_time', - 'fields_to_return': 'details.open_time,details.device' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_cart_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_cart_info_example_call_tool.js deleted file mode 100644 index 097c99089..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_cart_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCartInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cart_identifier": "cart123", - "store_identifier": "store456", - "fields_to_exclude": "discounts,promotions" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_cart_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_cart_info_example_call_tool.py deleted file mode 100644 index daf502d8e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_cart_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCartInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cart_identifier': 'cart123', - 'store_identifier': 'store456', - 'fields_to_exclude': 'discounts,promotions' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_cart_line_items_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_cart_line_items_info_example_call_tool.js deleted file mode 100644 index ef898e4d1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_cart_line_items_info_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCartLineItemsInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cart_id": "12345", - "store_identifier": "store_001", - "exclude_fields": "discounts,promo_codes", - "fields_to_return": "product_id,name,quantity", - "pagination_offset": "0", - "records_to_return": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_cart_line_items_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_cart_line_items_info_example_call_tool.py deleted file mode 100644 index 91fe03f0e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_cart_line_items_info_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCartLineItemsInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cart_id': '12345', - 'store_identifier': 'store_001', - 'exclude_fields': 'discounts,promo_codes', - 'fields_to_return': 'product_id,name,quantity', - 'pagination_offset': '0', - 'records_to_return': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_chimp_chatter_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_chimp_chatter_activity_example_call_tool.js deleted file mode 100644 index c482382dc..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_chimp_chatter_activity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetChimpChatterActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "number_of_records_to_return": "20", - "pagination_offset": "0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_chimp_chatter_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_chimp_chatter_activity_example_call_tool.py deleted file mode 100644 index 103b37c44..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_chimp_chatter_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetChimpChatterActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'number_of_records_to_return': '20', 'pagination_offset': '0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_classic_automations_summary_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_classic_automations_summary_example_call_tool.js deleted file mode 100644 index 07a740696..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_classic_automations_summary_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetClassicAutomationsSummary"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_status_filter": "active", - "created_after_time": "2023-01-01T00:00:00+00:00", - "fields_to_return": "id,name,status", - "number_of_records_to_return": "20" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_classic_automations_summary_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_classic_automations_summary_example_call_tool.py deleted file mode 100644 index 727a43f5b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_classic_automations_summary_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetClassicAutomationsSummary" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_status_filter': 'active', - 'created_after_time': '2023-01-01T00:00:00+00:00', - 'fields_to_return': 'id,name,status', - 'number_of_records_to_return': '20' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_apps_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_apps_example_call_tool.js deleted file mode 100644 index 7a199a2e8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_apps_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetConnectedApps"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fields_to_return": "id,name", - "number_of_records_to_return": "5", - "pagination_offset": "0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_apps_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_apps_example_call_tool.py deleted file mode 100644 index d878833c0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_apps_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetConnectedApps" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fields_to_return': 'id,name', 'number_of_records_to_return': '5', 'pagination_offset': '0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_site_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_site_info_example_call_tool.js deleted file mode 100644 index 4297c7328..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_site_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetConnectedSiteInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "connected_site_identifier": "site_123", - "exclude_fields_list": "password,token", - "fields_to_return": "name,location,status" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_site_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_site_info_example_call_tool.py deleted file mode 100644 index d37c01bdb..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_site_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetConnectedSiteInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'connected_site_identifier': 'site_123', - 'exclude_fields_list': 'password,token', - 'fields_to_return': 'name,location,status' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_sites_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_sites_example_call_tool.js deleted file mode 100644 index c80203369..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_sites_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetConnectedSites"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exclude_fields_list": "field1,field2", - "included_fields": "name,url", - "number_of_records_to_return": "20", - "pagination_offset": "0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_sites_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_sites_example_call_tool.py deleted file mode 100644 index 4a92968e8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_connected_sites_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetConnectedSites" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exclude_fields_list': 'field1,field2', - 'included_fields': 'name,url', - 'number_of_records_to_return': '20', - 'pagination_offset': '0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_customer_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_customer_info_example_call_tool.js deleted file mode 100644 index 660536f9f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_customer_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetCustomerInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "12345", - "store_id": "abcde", - "fields_to_exclude": "address.phone", - "return_fields": "name,email,transaction.history" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_customer_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_customer_info_example_call_tool.py deleted file mode 100644 index 3895916af..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_customer_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetCustomerInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': '12345', - 'store_id': 'abcde', - 'fields_to_exclude': 'address.phone', - 'return_fields': 'name,email,transaction.history' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_daily_list_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_daily_list_activity_example_call_tool.js deleted file mode 100644 index 68e84da84..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_daily_list_activity_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetDailyListActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "exclude_fields": "field1,field2", - "number_of_records_to_return": "20" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_daily_list_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_daily_list_activity_example_call_tool.py deleted file mode 100644 index 2bed684ee..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_daily_list_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetDailyListActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', 'exclude_fields': 'field1,field2', 'number_of_records_to_return': '20' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_domain_details_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_domain_details_example_call_tool.js deleted file mode 100644 index 7787257b9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_domain_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetDomainDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_domain_details_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_domain_details_example_call_tool.py deleted file mode 100644 index 3adaaaabd..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_domain_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetDomainDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_ecommerce_store_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_ecommerce_store_info_example_call_tool.js deleted file mode 100644 index 6d209e5cd..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_ecommerce_store_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetEcommerceStoreInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "store_id": "12345", - "excluded_fields_list": "shipping.address,inventory", - "fields_to_return": "name,domain" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_ecommerce_store_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_ecommerce_store_info_example_call_tool.py deleted file mode 100644 index 52834a3a6..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_ecommerce_store_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetEcommerceStoreInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'store_id': '12345', - 'excluded_fields_list': 'shipping.address,inventory', - 'fields_to_return': 'name,domain' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_ecommerce_stores_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_ecommerce_stores_info_example_call_tool.js deleted file mode 100644 index d2189aa58..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_ecommerce_stores_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetEcommerceStoresInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exclude_fields_list": "password,creditCardInfo", - "fields_to_return": "storeName,storeUrl", - "pagination_offset": "0", - "records_to_return": "50" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_ecommerce_stores_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_ecommerce_stores_info_example_call_tool.py deleted file mode 100644 index 3f7d1fad2..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_ecommerce_stores_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetEcommerceStoresInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exclude_fields_list': 'password,creditCardInfo', - 'fields_to_return': 'storeName,storeUrl', - 'pagination_offset': '0', - 'records_to_return': '50' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ad_details_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ad_details_example_call_tool.js deleted file mode 100644 index 2a6879ff7..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ad_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetFacebookAdDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "facebook_ad_outreach_id": "1234567890", - "exclude_fields_list": "insights,comments", - "fields_to_return": "id,name,status" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ad_details_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ad_details_example_call_tool.py deleted file mode 100644 index b9e54e1dd..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ad_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetFacebookAdDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'facebook_ad_outreach_id': '1234567890', - 'exclude_fields_list': 'insights,comments', - 'fields_to_return': 'id,name,status' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ad_report_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ad_report_example_call_tool.js deleted file mode 100644 index 0deb80674..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ad_report_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetFacebookAdReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "outreach_id": "123456789", - "fields_to_exclude": "impressions,clicks", - "include_fields": "ad_name,spend" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ad_report_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ad_report_example_call_tool.py deleted file mode 100644 index b762edd14..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ad_report_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetFacebookAdReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'outreach_id': '123456789', - 'fields_to_exclude': 'impressions,clicks', - 'include_fields': 'ad_name,spend' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_list_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_list_example_call_tool.js deleted file mode 100644 index 0528df2f4..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_list_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetFacebookAdsList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exclude_fields": "created_time,updated_time", - "fields_to_return": "id,name,status", - "pagination_offset": "0", - "records_count": "10", - "sort_by_field": "created_time", - "sort_direction": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_list_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_list_example_call_tool.py deleted file mode 100644 index 6dfe0228f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_list_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetFacebookAdsList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exclude_fields': 'created_time,updated_time', - 'fields_to_return': 'id,name,status', - 'pagination_offset': '0', - 'records_count': '10', - 'sort_by_field': 'created_time', - 'sort_direction': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_product_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_product_activity_example_call_tool.js deleted file mode 100644 index 937a71fef..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_product_activity_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetFacebookAdsProductActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "outreach_id": "123456789", - "exclude_fields": "field1,field2", - "fields_to_return": "field3,field4", - "number_of_records_to_return": "20" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_product_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_product_activity_example_call_tool.py deleted file mode 100644 index 767828bb7..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_product_activity_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetFacebookAdsProductActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'outreach_id': '123456789', - 'exclude_fields': 'field1,field2', - 'fields_to_return': 'field3,field4', - 'number_of_records_to_return': '20' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_reports_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_reports_example_call_tool.js deleted file mode 100644 index 899f907b0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_reports_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetFacebookAdsReports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_fields": "ad_id,ad_name,impressions,clicks", - "record_count": "20", - "sort_order_direction": "asc", - "sorting_field_for_results": "impressions" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_reports_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_reports_example_call_tool.py deleted file mode 100644 index f38ed3569..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_facebook_ads_reports_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetFacebookAdsReports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_fields': 'ad_id,ad_name,impressions,clicks', - 'record_count': '20', - 'sort_order_direction': 'asc', - 'sorting_field_for_results': 'impressions' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_file_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_file_info_example_call_tool.js deleted file mode 100644 index 185fdcec6..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_file_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetFileManagerFileInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_manager_file_id": "12345", - "exclude_fields_list": "size,metadata", - "return_fields": "name,url" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_file_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_file_info_example_call_tool.py deleted file mode 100644 index 3b081d991..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_file_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetFileManagerFileInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_manager_file_id': '12345', - 'exclude_fields_list': 'size,metadata', - 'return_fields': 'name,url' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_files_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_files_example_call_tool.js deleted file mode 100644 index f48c04151..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_files_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetFileManagerFiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_after_date": "2023-01-01T00:00:00+00:00", - "exclude_fields_list": "size,metadata", - "fields_to_return": "name,url,date", - "file_created_by_user": "user@example.com", - "file_sort_field": "date", - "file_type": "image/jpeg", - "number_of_records_to_return": "20", - "pagination_offset": "0", - "restrict_files_before_date": "2023-12-31T23:59:59+00:00", - "sort_order_direction": "ASC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_files_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_files_example_call_tool.py deleted file mode 100644 index bd0b7f2fb..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_files_example_call_tool.py +++ /dev/null @@ -1,38 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetFileManagerFiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_after_date': '2023-01-01T00:00:00+00:00', - 'exclude_fields_list': 'size,metadata', - 'fields_to_return': 'name,url,date', - 'file_created_by_user': 'user@example.com', - 'file_sort_field': 'date', - 'file_type': 'image/jpeg', - 'number_of_records_to_return': '20', - 'pagination_offset': '0', - 'restrict_files_before_date': '2023-12-31T23:59:59+00:00', - 'sort_order_direction': 'ASC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_folder_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_folder_info_example_call_tool.js deleted file mode 100644 index 7af510060..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_folder_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetFileManagerFolderInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_manager_folder_id": "12345", - "exclude_fields_list": "metadata.size,metadata.created_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_folder_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_folder_info_example_call_tool.py deleted file mode 100644 index c59195d01..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_file_manager_folder_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetFileManagerFolderInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_manager_folder_id': '12345', 'exclude_fields_list': 'metadata.size,metadata.created_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_folder_files_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_folder_files_example_call_tool.js deleted file mode 100644 index 246a3bc19..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_folder_files_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetFolderFiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_manager_folder_id": "12345", - "exclude_fields": "size,created_at", - "fields_to_return": "name,url", - "file_type": "image", - "number_of_records": "20", - "sort_by_field": "name", - "sort_order_direction": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_folder_files_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_folder_files_example_call_tool.py deleted file mode 100644 index bc915c649..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_folder_files_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetFolderFiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_manager_folder_id': '12345', - 'exclude_fields': 'size,created_at', - 'fields_to_return': 'name,url', - 'file_type': 'image', - 'number_of_records': '20', - 'sort_by_field': 'name', - 'sort_order_direction': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_category_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_category_info_example_call_tool.js deleted file mode 100644 index dd6f72080..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_category_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetInterestCategoryInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "interest_category_unique_id": "abc123", - "list_unique_id": "list456", - "fields_to_exclude": "field1,field2", - "fields_to_return": "name,description" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_category_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_category_info_example_call_tool.py deleted file mode 100644 index 838d27d59..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_category_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetInterestCategoryInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'interest_category_unique_id': 'abc123', - 'list_unique_id': 'list456', - 'fields_to_exclude': 'field1,field2', - 'fields_to_return': 'name,description' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_category_interests_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_category_interests_example_call_tool.js deleted file mode 100644 index 5a6f4f2b2..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_category_interests_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetInterestCategoryInterests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "interest_category_unique_id": "12345", - "list_unique_id": "abcde", - "excluded_fields": "field1,field2", - "fields_to_return": "name,id", - "number_of_records_to_return": "50" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_category_interests_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_category_interests_example_call_tool.py deleted file mode 100644 index 7d9eecf52..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_category_interests_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetInterestCategoryInterests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'interest_category_unique_id': '12345', - 'list_unique_id': 'abcde', - 'excluded_fields': 'field1,field2', - 'fields_to_return': 'name,id', - 'number_of_records_to_return': '50' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_group_names_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_group_names_example_call_tool.js deleted file mode 100644 index 9df426362..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_group_names_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetInterestGroupNames"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "interest_category_id": "12345", - "list_unique_id": "abcde12345", - "specific_interest_group_name": "Newsletter", - "exclude_fields": "field1,field2", - "include_fields": "field3,field4" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_group_names_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_group_names_example_call_tool.py deleted file mode 100644 index 4a2dadd49..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_interest_group_names_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetInterestGroupNames" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'interest_category_id': '12345', - 'list_unique_id': 'abcde12345', - 'specific_interest_group_name': 'Newsletter', - 'exclude_fields': 'field1,field2', - 'include_fields': 'field3,field4' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_html_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_html_example_call_tool.js deleted file mode 100644 index 454c3ca0e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_html_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetLandingPageHtml"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345", - "exclude_fields_list": "content,analytics", - "fields_to_return": "html,title" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_html_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_html_example_call_tool.py deleted file mode 100644 index 341adbe8d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_html_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetLandingPageHtml" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345', - 'exclude_fields_list': 'content,analytics', - 'fields_to_return': 'html,title' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_info_example_call_tool.js deleted file mode 100644 index 8ec79a87c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetLandingPageInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345", - "exclude_fields_list": "analytics,seo", - "fields_to_return": "title,content" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_info_example_call_tool.py deleted file mode 100644 index dbd348666..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetLandingPageInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345', - 'exclude_fields_list': 'analytics,seo', - 'fields_to_return': 'title,content' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_report_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_report_example_call_tool.js deleted file mode 100644 index 7d6955f46..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_report_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetLandingPageReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_outreach_id": "12345", - "exclude_report_fields": "clicks,impressions", - "fields_to_return": "title,conversion_rate" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_report_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_report_example_call_tool.py deleted file mode 100644 index 6da75c419..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_report_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetLandingPageReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_outreach_id': '12345', - 'exclude_report_fields': 'clicks,impressions', - 'fields_to_return': 'title,conversion_rate' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_reports_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_reports_example_call_tool.js deleted file mode 100644 index f3f97bd8c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_reports_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetLandingPageReports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fields_to_exclude": "clicks,opens", - "include_fields": "title,views", - "number_of_records_to_return": "20", - "records_to_skip": "0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_reports_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_reports_example_call_tool.py deleted file mode 100644 index 9c790f786..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_landing_page_reports_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetLandingPageReports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fields_to_exclude': 'clicks,opens', - 'include_fields': 'title,views', - 'number_of_records_to_return': '20', - 'records_to_skip': '0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_growth_summary_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_growth_summary_example_call_tool.js deleted file mode 100644 index 978287b5c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_growth_summary_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetListGrowthSummary"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "specific_month_of_growth_history": "2023-09", - "exclude_fields_list": "field1,field2", - "fields_to_return": "field3,field4" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_growth_summary_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_growth_summary_example_call_tool.py deleted file mode 100644 index 8d454e9df..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_growth_summary_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetListGrowthSummary" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'specific_month_of_growth_history': '2023-09', - 'exclude_fields_list': 'field1,field2', - 'fields_to_return': 'field3,field4' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_interest_categories_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_interest_categories_example_call_tool.js deleted file mode 100644 index 15fbdad3f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_interest_categories_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetListInterestCategories"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345", - "exclude_fields_list": "field1,field2", - "record_count": "50" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_interest_categories_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_interest_categories_example_call_tool.py deleted file mode 100644 index 10cfd3303..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_interest_categories_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetListInterestCategories" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345', 'exclude_fields_list': 'field1,field2', 'record_count': '50' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_member_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_member_info_example_call_tool.js deleted file mode 100644 index 84f9a57fc..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_member_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetListMemberInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "123456789", - "member_identifier": "example@example.com", - "fields_to_exclude": "status,location", - "fields_to_return": "email_address,status" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_member_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_member_info_example_call_tool.py deleted file mode 100644 index 120d10cc7..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_member_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetListMemberInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '123456789', - 'member_identifier': 'example@example.com', - 'fields_to_exclude': 'status,location', - 'fields_to_return': 'email_address,status' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_member_note_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_member_note_example_call_tool.js deleted file mode 100644 index 82a45df41..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_member_note_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetListMemberNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "list_12345", - "member_identifier": "d41d8cd98f00b204e9800998ecf8427e", - "note_id": "note_67890", - "exclude_fields": "createdAt,updatedAt", - "fields_to_return": "content,title" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_member_note_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_member_note_example_call_tool.py deleted file mode 100644 index a2b8135b4..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_member_note_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetListMemberNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'list_12345', - 'member_identifier': 'd41d8cd98f00b204e9800998ecf8427e', - 'note_id': 'note_67890', - 'exclude_fields': 'createdAt,updatedAt', - 'fields_to_return': 'content,title' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_segments_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_segments_info_example_call_tool.js deleted file mode 100644 index 47e378840..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_segments_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetListSegmentsInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_identifier": "12345", - "created_after_datetime": "2023-01-01T00:00:00+00:00", - "records_count": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_segments_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_segments_info_example_call_tool.py deleted file mode 100644 index 0a5e7b64b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_segments_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetListSegmentsInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_identifier': '12345', - 'created_after_datetime': '2023-01-01T00:00:00+00:00', - 'records_count': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_signup_forms_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_signup_forms_example_call_tool.js deleted file mode 100644 index 69e305ac5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_signup_forms_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetListSignupForms"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_signup_forms_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_signup_forms_example_call_tool.py deleted file mode 100644 index e831f4747..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_signup_forms_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetListSignupForms" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_subscriber_locations_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_subscriber_locations_example_call_tool.js deleted file mode 100644 index 5350d132b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_subscriber_locations_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetListSubscriberLocations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "exclude_fields": "email_address,merge_fields", - "include_fields": "country,ip_address" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_subscriber_locations_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_subscriber_locations_example_call_tool.py deleted file mode 100644 index 38f21a44f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_subscriber_locations_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetListSubscriberLocations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'exclude_fields': 'email_address,merge_fields', - 'include_fields': 'country,ip_address' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_surveys_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_surveys_info_example_call_tool.js deleted file mode 100644 index bbbacb7bf..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_surveys_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetListSurveysInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_surveys_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_surveys_info_example_call_tool.py deleted file mode 100644 index c4b39797a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_surveys_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetListSurveysInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_webhooks_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_webhooks_info_example_call_tool.js deleted file mode 100644 index 17b28c6ce..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_webhooks_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetListWebhooksInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_identifier": "list_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_webhooks_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_webhooks_info_example_call_tool.py deleted file mode 100644 index 2ef61177a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_list_webhooks_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetListWebhooksInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_identifier': 'list_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_account_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_account_exports_example_call_tool.js deleted file mode 100644 index 45b494d6f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_account_exports_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetMailchimpAccountExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fields_to_exclude": "email_address,created_at", - "fields_to_return": "id,name,export_type", - "number_of_records": "20" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_account_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_account_exports_example_call_tool.py deleted file mode 100644 index bd6f178f0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_account_exports_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetMailchimpAccountExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fields_to_exclude': 'email_address,created_at', - 'fields_to_return': 'id,name,export_type', - 'number_of_records': '20' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_api_resources_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_api_resources_example_call_tool.js deleted file mode 100644 index e079978b0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_api_resources_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetMailchimpApiResources"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exclude_fields": "lists.members,lists.settings", - "fields_to_return": "lists.id,lists.name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_api_resources_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_api_resources_example_call_tool.py deleted file mode 100644 index 9ccdcef4e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_api_resources_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetMailchimpApiResources" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exclude_fields': 'lists.members,lists.settings', 'fields_to_return': 'lists.id,lists.name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_campaign_feedback_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_campaign_feedback_example_call_tool.js deleted file mode 100644 index e4ee5c161..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_campaign_feedback_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetMailchimpCampaignFeedback"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": "12345", - "fields_to_exclude": "comments.created_at,comments.user", - "include_fields": "comments.text,comments.rating" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_campaign_feedback_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_campaign_feedback_example_call_tool.py deleted file mode 100644 index ccbb3141e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_campaign_feedback_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetMailchimpCampaignFeedback" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': '12345', - 'fields_to_exclude': 'comments.created_at,comments.user', - 'include_fields': 'comments.text,comments.rating' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_list_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_list_info_example_call_tool.js deleted file mode 100644 index 1084cf84c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_list_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetMailchimpListInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mailchimp_list_id": "123456789", - "exclude_fields_in_mailchimp": "stats.member_count", - "fields_to_return": "name,stats", - "include_total_contacts": "true" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_list_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_list_info_example_call_tool.py deleted file mode 100644 index 622ca6da9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_list_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetMailchimpListInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mailchimp_list_id': '123456789', - 'exclude_fields_in_mailchimp': 'stats.member_count', - 'fields_to_return': 'name,stats', - 'include_total_contacts': 'true' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_list_members_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_list_members_example_call_tool.js deleted file mode 100644 index 63c9bc010..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_list_members_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetMailchimpListMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "changed_after_timestamp": "2023-01-01T00:00:00+00:00", - "email_type": "html", - "number_of_records_to_return": "50" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_list_members_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_list_members_example_call_tool.py deleted file mode 100644 index 3e0d9a97a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_list_members_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetMailchimpListMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'changed_after_timestamp': '2023-01-01T00:00:00+00:00', - 'email_type': 'html', - 'number_of_records_to_return': '50' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_template_folders_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_template_folders_example_call_tool.js deleted file mode 100644 index 59e5d0db1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_template_folders_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetMailchimpTemplateFolders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exclude_fields_list": "id,created_at", - "include_fields": "name,updated_at", - "number_of_records_to_return": "20", - "pagination_offset": "0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_template_folders_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_template_folders_example_call_tool.py deleted file mode 100644 index 54d451097..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_template_folders_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetMailchimpTemplateFolders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exclude_fields_list': 'id,created_at', - 'include_fields': 'name,updated_at', - 'number_of_records_to_return': '20', - 'pagination_offset': '0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_template_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_template_info_example_call_tool.js deleted file mode 100644 index 81143dfe0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_template_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetMailchimpTemplateInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "template_id": "12345", - "fields_to_exclude": "content,settings" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_template_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_template_info_example_call_tool.py deleted file mode 100644 index a2de87ea4..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_mailchimp_template_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetMailchimpTemplateInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'template_id': '12345', 'fields_to_exclude': 'content,settings' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_activity_example_call_tool.js deleted file mode 100644 index 39ca20df0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_activity_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetMemberActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "member_identifier": "d41d8cd98f00b204e9800998ecf8427e", - "actions_to_return": "opens,clicks", - "exclude_fields_from_activity": "timestamp,ip_address" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_activity_example_call_tool.py deleted file mode 100644 index 4b49da89b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_activity_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetMemberActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'member_identifier': 'd41d8cd98f00b204e9800998ecf8427e', - 'actions_to_return': 'opens,clicks', - 'exclude_fields_from_activity': 'timestamp,ip_address' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_activity_feed_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_activity_feed_example_call_tool.js deleted file mode 100644 index c22b8393c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_activity_feed_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetMemberActivityFeed"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "member_identifier": "d41d8cd98f00b204e9800998ecf8427e", - "activity_type_filters": "open,click", - "number_of_records_to_return": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_activity_feed_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_activity_feed_example_call_tool.py deleted file mode 100644 index 49700f130..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_activity_feed_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetMemberActivityFeed" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'member_identifier': 'd41d8cd98f00b204e9800998ecf8427e', - 'activity_type_filters': 'open,click', - 'number_of_records_to_return': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_goal_events_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_goal_events_example_call_tool.js deleted file mode 100644 index d7f763916..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_goal_events_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetMemberGoalEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "member_identifier": "d41d8cd98f00b204e9800998ecf8427e", - "exclude_fields_list": "field1,field2", - "include_fields": "field3,field4" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_goal_events_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_goal_events_example_call_tool.py deleted file mode 100644 index e7040adc7..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_goal_events_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetMemberGoalEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'member_identifier': 'd41d8cd98f00b204e9800998ecf8427e', - 'exclude_fields_list': 'field1,field2', - 'include_fields': 'field3,field4' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_notes_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_notes_example_call_tool.js deleted file mode 100644 index 64fc24c8d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_notes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetMemberNotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "123456", - "subscriber_hash": "abcdef1234567890abcdef1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_notes_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_notes_example_call_tool.py deleted file mode 100644 index 15dd94dc4..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_member_notes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetMemberNotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '123456', 'subscriber_hash': 'abcdef1234567890abcdef1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_merge_field_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_merge_field_info_example_call_tool.js deleted file mode 100644 index 0406ce5b5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_merge_field_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetMergeFieldInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "123456", - "merge_field_id": "EMAIL", - "exclude_merge_fields": "address,phone", - "fields_to_return": "name,merge_fields" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_merge_field_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_merge_field_info_example_call_tool.py deleted file mode 100644 index fc0045644..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_merge_field_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetMergeFieldInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '123456', - 'merge_field_id': 'EMAIL', - 'exclude_merge_fields': 'address,phone', - 'fields_to_return': 'name,merge_fields' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_monthly_list_growth_summary_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_monthly_list_growth_summary_example_call_tool.js deleted file mode 100644 index d107701da..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_monthly_list_growth_summary_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetMonthlyListGrowthSummary"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "exclude_fields_to_return": "field1,field2", - "records_to_return": "20", - "sort_order_direction": "ascending" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_monthly_list_growth_summary_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_monthly_list_growth_summary_example_call_tool.py deleted file mode 100644 index 642fa5af5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_monthly_list_growth_summary_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetMonthlyListGrowthSummary" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'exclude_fields_to_return': 'field1,field2', - 'records_to_return': '20', - 'sort_order_direction': 'ascending' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_order_line_items_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_order_line_items_example_call_tool.js deleted file mode 100644 index f2b0cdafe..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_order_line_items_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetOrderLineItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "order_id": "12345", - "store_id": "abcde", - "exclude_fields": "shipping.address", - "fields_to_return": "item.name,item.price", - "number_of_records_to_return": "5" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_order_line_items_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_order_line_items_example_call_tool.py deleted file mode 100644 index f9ba88334..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_order_line_items_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetOrderLineItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'order_id': '12345', - 'store_id': 'abcde', - 'exclude_fields': 'shipping.address', - 'fields_to_return': 'item.name,item.price', - 'number_of_records_to_return': '5' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_image_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_image_info_example_call_tool.js deleted file mode 100644 index ac476d61b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_image_info_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetProductImageInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_identifier": "12345", - "product_image_id": "img67890", - "store_identifier": "store001", - "exclude_fields_list": "metadata.size,metadata.color", - "fields_to_return": "url,title,description" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_image_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_image_info_example_call_tool.py deleted file mode 100644 index 2afa582ac..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_image_info_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetProductImageInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_identifier': '12345', - 'product_image_id': 'img67890', - 'store_identifier': 'store001', - 'exclude_fields_list': 'metadata.size,metadata.color', - 'fields_to_return': 'url,title,description' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_images_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_images_example_call_tool.js deleted file mode 100644 index 85c11e744..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_images_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetProductImages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_identifier": "12345", - "store_id": "store_001", - "exclude_fields": "thumbnail.url", - "fields_to_return": "images.url,images.alt_text", - "number_of_records_to_return": "5" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_images_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_images_example_call_tool.py deleted file mode 100644 index 8394b97a5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_images_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetProductImages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_identifier': '12345', - 'store_id': 'store_001', - 'exclude_fields': 'thumbnail.url', - 'fields_to_return': 'images.url,images.alt_text', - 'number_of_records_to_return': '5' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_info_example_call_tool.js deleted file mode 100644 index 9ff0eef5a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetProductInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_id": "12345", - "store_identifier": "store987", - "fields_to_exclude": "reviews.rating,shipping", - "fields_to_return": "name,price,description" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_info_example_call_tool.py deleted file mode 100644 index 8e58be246..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetProductInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_id': '12345', - 'store_identifier': 'store987', - 'fields_to_exclude': 'reviews.rating,shipping', - 'fields_to_return': 'name,price,description' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_variant_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_variant_info_example_call_tool.js deleted file mode 100644 index eeaa25e6f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_variant_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetProductVariantInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_id": "12345", - "product_variant_id": "abcde", - "store_id": "store001", - "exclude_fields": "price,stock_status" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_variant_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_variant_info_example_call_tool.py deleted file mode 100644 index 9f8949f69..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_variant_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetProductVariantInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_id': '12345', - 'product_variant_id': 'abcde', - 'store_id': 'store001', - 'exclude_fields': 'price,stock_status' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_variants_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_variants_info_example_call_tool.js deleted file mode 100644 index b394edcfa..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_variants_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetProductVariantsInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_identifier": "12345", - "store_id": "store_001", - "fields_to_return": "variant_id,name,price", - "number_of_records_to_return": "5" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_variants_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_variants_info_example_call_tool.py deleted file mode 100644 index 074d9e3e8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_product_variants_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetProductVariantsInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_identifier': '12345', - 'store_id': 'store_001', - 'fields_to_return': 'variant_id,name,price', - 'number_of_records_to_return': '5' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_promo_code_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_promo_code_info_example_call_tool.js deleted file mode 100644 index 1e7b2c3f8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_promo_code_info_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetPromoCodeInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "promo_code_id": "ABC123", - "promo_rule_id": "RULE456", - "store_id": "STORE789", - "exclude_fields": "details.expiration_date", - "fields_to_return": "code,discount" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_promo_code_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_promo_code_info_example_call_tool.py deleted file mode 100644 index 0005f9d34..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_promo_code_info_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetPromoCodeInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'promo_code_id': 'ABC123', - 'promo_rule_id': 'RULE456', - 'store_id': 'STORE789', - 'exclude_fields': 'details.expiration_date', - 'fields_to_return': 'code,discount' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_promo_rule_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_promo_rule_info_example_call_tool.js deleted file mode 100644 index 3496f5410..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_promo_rule_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetPromoRuleInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "promo_rule_id": "promo123", - "store_id": "store456", - "exclude_fields": "discount,terms" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_promo_rule_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_promo_rule_info_example_call_tool.py deleted file mode 100644 index 3aec83dad..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_promo_rule_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetPromoRuleInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'promo_rule_id': 'promo123', 'store_id': 'store456', 'exclude_fields': 'discount,terms' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_removed_automation_subscribers_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_removed_automation_subscribers_example_call_tool.js deleted file mode 100644 index 1715b59fc..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_removed_automation_subscribers_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetRemovedAutomationSubscribers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_workflow_id": "12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_removed_automation_subscribers_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_removed_automation_subscribers_example_call_tool.py deleted file mode 100644 index a347f581b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_removed_automation_subscribers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetRemovedAutomationSubscribers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_workflow_id': '12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_removed_subscriber_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_removed_subscriber_info_example_call_tool.js deleted file mode 100644 index cbbd9d4de..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_removed_subscriber_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetRemovedSubscriberInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_workflow_id": "123456789", - "subscriber_hash": "d3b07384d113edec49eaa6238ad5ff00" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_removed_subscriber_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_removed_subscriber_info_example_call_tool.py deleted file mode 100644 index a81256991..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_removed_subscriber_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetRemovedSubscriberInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_workflow_id': '123456789', 'subscriber_hash': 'd3b07384d113edec49eaa6238ad5ff00' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_segment_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_segment_info_example_call_tool.js deleted file mode 100644 index 49039584a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_segment_info_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetSegmentInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "segment_id": "seg456", - "exclude_fields_list": "members.cleaned,members.transactional", - "fields_to_return": "members.id,members.email_address", - "include_cleaned_members": "true", - "include_transactional_members": "false" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_segment_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_segment_info_example_call_tool.py deleted file mode 100644 index 39937a85c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_segment_info_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetSegmentInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'segment_id': 'seg456', - 'exclude_fields_list': 'members.cleaned,members.transactional', - 'fields_to_return': 'members.id,members.email_address', - 'include_cleaned_members': 'true', - 'include_transactional_members': 'false' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_segment_members_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_segment_members_info_example_call_tool.js deleted file mode 100644 index 67bf726a1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_segment_members_info_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetSegmentMembersInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_identifier": "12345", - "segment_unique_id": "segment_001", - "fields_to_exclude": "email,phone", - "include_cleaned_members": "false", - "records_to_return": "50" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_segment_members_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_segment_members_info_example_call_tool.py deleted file mode 100644 index d065e429b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_segment_members_info_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetSegmentMembersInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_identifier': '12345', - 'segment_unique_id': 'segment_001', - 'fields_to_exclude': 'email,phone', - 'include_cleaned_members': 'false', - 'records_to_return': '50' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_specific_order_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_specific_order_info_example_call_tool.js deleted file mode 100644 index 8324bfb2f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_specific_order_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetSpecificOrderInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "order_id": "12345", - "store_identifier": "store_001", - "exclude_fields_list": "shipping_info,payment_details" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_specific_order_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_specific_order_info_example_call_tool.py deleted file mode 100644 index 438e1a18b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_specific_order_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetSpecificOrderInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'order_id': '12345', - 'store_identifier': 'store_001', - 'exclude_fields_list': 'shipping_info,payment_details' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_specific_order_line_item_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_specific_order_line_item_info_example_call_tool.js deleted file mode 100644 index 1ae7e776e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_specific_order_line_item_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetSpecificOrderLineItemInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "order_id": "12345", - "order_line_item_id": "67890", - "store_identifier": "store_001", - "exclude_fields": "shipping_info,payment_details" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_specific_order_line_item_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_specific_order_line_item_info_example_call_tool.py deleted file mode 100644 index 4708eded3..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_specific_order_line_item_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetSpecificOrderLineItemInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'order_id': '12345', - 'order_line_item_id': '67890', - 'store_identifier': 'store_001', - 'exclude_fields': 'shipping_info,payment_details' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_carts_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_carts_info_example_call_tool.js deleted file mode 100644 index 649ee2490..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_carts_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetStoreCartsInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "store_identifier": "store123", - "exclude_fields": "customerInfo.paymentDetails", - "fields_to_return": "cartId,items.productName", - "number_of_records_to_return": "20" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_carts_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_carts_info_example_call_tool.py deleted file mode 100644 index b73c7ec62..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_carts_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetStoreCartsInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'store_identifier': 'store123', - 'exclude_fields': 'customerInfo.paymentDetails', - 'fields_to_return': 'cartId,items.productName', - 'number_of_records_to_return': '20' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_customers_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_customers_info_example_call_tool.js deleted file mode 100644 index 47917cf75..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_customers_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetStoreCustomersInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "store_identifier": "store123", - "fields_to_return": "name,email", - "number_of_records_to_return": "20" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_customers_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_customers_info_example_call_tool.py deleted file mode 100644 index d345b41d5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_customers_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetStoreCustomersInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'store_identifier': 'store123', - 'fields_to_return': 'name,email', - 'number_of_records_to_return': '20' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_orders_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_orders_info_example_call_tool.js deleted file mode 100644 index 03a0b67bc..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_orders_info_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetStoreOrdersInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "store_identifier": "store_123", - "exclude_order_fields": "shipping.address", - "fields_to_return": "id,total,customer", - "filter_by_customer_id": "customer_456", - "number_of_records_to_return": "20" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_orders_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_orders_info_example_call_tool.py deleted file mode 100644 index 5b155d1f9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_orders_info_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetStoreOrdersInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'store_identifier': 'store_123', - 'exclude_order_fields': 'shipping.address', - 'fields_to_return': 'id,total,customer', - 'filter_by_customer_id': 'customer_456', - 'number_of_records_to_return': '20' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_products_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_products_info_example_call_tool.js deleted file mode 100644 index 2c7237961..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_products_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetStoreProductsInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "store_identifier": "store_123", - "exclude_fields_list": "price,stock", - "number_of_records_to_return": "5" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_products_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_products_info_example_call_tool.py deleted file mode 100644 index b2f4fc1c6..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_products_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetStoreProductsInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'store_identifier': 'store_123', - 'exclude_fields_list': 'price,stock', - 'number_of_records_to_return': '5' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_promo_codes_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_promo_codes_example_call_tool.js deleted file mode 100644 index 35b700536..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_promo_codes_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetStorePromoCodes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "promo_rule_id": "promo123", - "store_identifier": "store456", - "exclude_fields_list": "expiryDate,usageLimit", - "fields_to_return": "code,discount", - "number_of_records_to_return": "5" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_promo_codes_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_promo_codes_example_call_tool.py deleted file mode 100644 index a741726e6..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_promo_codes_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetStorePromoCodes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'promo_rule_id': 'promo123', - 'store_identifier': 'store456', - 'exclude_fields_list': 'expiryDate,usageLimit', - 'fields_to_return': 'code,discount', - 'number_of_records_to_return': '5' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_promo_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_promo_rules_example_call_tool.js deleted file mode 100644 index 2d5ff4577..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_promo_rules_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetStorePromoRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "store_identifier": "store123", - "exclude_fields_list": "discounts,terms.conditions", - "fields_to_return": "promo_code,start_date,end_date", - "pagination_offset": "0", - "records_to_return": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_promo_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_promo_rules_example_call_tool.py deleted file mode 100644 index 055cd5a03..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_store_promo_rules_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetStorePromoRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'store_identifier': 'store123', - 'exclude_fields_list': 'discounts,terms.conditions', - 'fields_to_return': 'promo_code,start_date,end_date', - 'pagination_offset': '0', - 'records_to_return': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_subscriber_click_details_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_subscriber_click_details_example_call_tool.js deleted file mode 100644 index 5f2006b35..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_subscriber_click_details_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetSubscriberClickDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": "12345", - "link_identifier": "link_1", - "subscriber_email_hash": "d41d8cd98f00b204e9800998ecf8427e", - "exclude_fields_list": "field1,field2", - "fields_to_return": "field3,field4" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_subscriber_click_details_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_subscriber_click_details_example_call_tool.py deleted file mode 100644 index d5665a3a5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_subscriber_click_details_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetSubscriberClickDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': '12345', - 'link_identifier': 'link_1', - 'subscriber_email_hash': 'd41d8cd98f00b204e9800998ecf8427e', - 'exclude_fields_list': 'field1,field2', - 'fields_to_return': 'field3,field4' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_details_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_details_example_call_tool.js deleted file mode 100644 index 7443a9144..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetSurveyDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "survey_id": "survey456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_details_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_details_example_call_tool.py deleted file mode 100644 index abfee58f9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetSurveyDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', 'survey_id': 'survey456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_answers_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_answers_example_call_tool.js deleted file mode 100644 index b55eaebd5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_answers_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetSurveyQuestionAnswers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "survey_identifier": "survey_12345", - "survey_question_id": "question_67890", - "exclude_fields": "respondent_id,created_at", - "fields_to_return": "answer,text", - "filter_by_respondent_familiarity": "high" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_answers_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_answers_example_call_tool.py deleted file mode 100644 index 0f9001af2..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_answers_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetSurveyQuestionAnswers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'survey_identifier': 'survey_12345', - 'survey_question_id': 'question_67890', - 'exclude_fields': 'respondent_id,created_at', - 'fields_to_return': 'answer,text', - 'filter_by_respondent_familiarity': 'high' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_report_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_report_example_call_tool.js deleted file mode 100644 index b62e32482..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_report_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetSurveyQuestionReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "survey_id": "12345", - "survey_question_id": "q1", - "fields_to_exclude": "responses.comments", - "fields_to_return": "responses.count,average_score" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_report_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_report_example_call_tool.py deleted file mode 100644 index e886e024c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_report_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetSurveyQuestionReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'survey_id': '12345', - 'survey_question_id': 'q1', - 'fields_to_exclude': 'responses.comments', - 'fields_to_return': 'responses.count,average_score' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_reports_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_reports_example_call_tool.js deleted file mode 100644 index 10af003b6..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_reports_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetSurveyQuestionReports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "survey_identifier": "survey_123", - "exclude_fields_from_report": "comments,metadata", - "include_fields": "question_id,response" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_reports_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_reports_example_call_tool.py deleted file mode 100644 index 50de71248..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_question_reports_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetSurveyQuestionReports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'survey_identifier': 'survey_123', - 'exclude_fields_from_report': 'comments,metadata', - 'include_fields': 'question_id,response' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_report_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_report_example_call_tool.js deleted file mode 100644 index cfd0db115..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_report_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetSurveyReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "survey_id": "12345", - "exclude_fields_list": "comments,metadata", - "fields_to_return": "responses,summary" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_report_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_report_example_call_tool.py deleted file mode 100644 index d5642dd51..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_report_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetSurveyReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'survey_id': '12345', - 'exclude_fields_list': 'comments,metadata', - 'fields_to_return': 'responses,summary' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_reports_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_reports_example_call_tool.js deleted file mode 100644 index 3d941a5e2..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_reports_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetSurveyReports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fields_to_exclude": "personal_info,comments", - "fields_to_return": "id,title,results", - "number_of_records": "20", - "pagination_offset": "0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_reports_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_reports_example_call_tool.py deleted file mode 100644 index 0d9ac744a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_reports_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetSurveyReports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fields_to_exclude': 'personal_info,comments', - 'fields_to_return': 'id,title,results', - 'number_of_records': '20', - 'pagination_offset': '0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_response_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_response_example_call_tool.js deleted file mode 100644 index e8242fced..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_response_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetSurveyResponse"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "survey_id": "survey123", - "survey_response_id": "response456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_response_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_response_example_call_tool.py deleted file mode 100644 index eaaa61846..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_response_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetSurveyResponse" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'survey_id': 'survey123', 'survey_response_id': 'response456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_responses_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_responses_example_call_tool.js deleted file mode 100644 index 1a9c08b44..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_responses_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetSurveyResponses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "survey_id": "12345", - "chosen_answer_id": "option_1", - "exclude_survey_fields": "comments,metadata", - "filter_by_respondent_familiarity": "expert", - "included_fields": "response.date,response.answer" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_responses_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_responses_example_call_tool.py deleted file mode 100644 index c21953e22..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_survey_responses_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetSurveyResponses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'survey_id': '12345', - 'chosen_answer_id': 'option_1', - 'exclude_survey_fields': 'comments,metadata', - 'filter_by_respondent_familiarity': 'expert', - 'included_fields': 'response.date,response.answer' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_template_editable_sections_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_template_editable_sections_example_call_tool.js deleted file mode 100644 index f03d61d7f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_template_editable_sections_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetTemplateEditableSections"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "template_unique_id": "12345", - "exclude_fields_list": "content.images", - "fields_to_return": "sections.default_content,sections.editable" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_template_editable_sections_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_template_editable_sections_example_call_tool.py deleted file mode 100644 index 1e4b05857..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_template_editable_sections_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetTemplateEditableSections" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'template_unique_id': '12345', - 'exclude_fields_list': 'content.images', - 'fields_to_return': 'sections.default_content,sections.editable' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_template_folder_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_template_folder_info_example_call_tool.js deleted file mode 100644 index 0cc083caa..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_template_folder_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetTemplateFolderInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "template_folder_id": "12345", - "exclude_fields_list": "created_at,updated_at", - "included_fields": "name,id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_template_folder_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_template_folder_info_example_call_tool.py deleted file mode 100644 index eb95e2019..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_template_folder_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetTemplateFolderInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'template_folder_id': '12345', - 'exclude_fields_list': 'created_at,updated_at', - 'included_fields': 'name,id' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_top_email_clients_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_top_email_clients_example_call_tool.js deleted file mode 100644 index fa47bb912..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_top_email_clients_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetTopEmailClients"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "12345", - "exclude_fields": "email,created_at", - "fields_to_return": "client_name,version" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_top_email_clients_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_top_email_clients_example_call_tool.py deleted file mode 100644 index a26a71a4d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_top_email_clients_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetTopEmailClients" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': '12345', - 'exclude_fields': 'email,created_at', - 'fields_to_return': 'client_name,version' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_unsubscribed_campaign_members_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_unsubscribed_campaign_members_example_call_tool.js deleted file mode 100644 index bb6683573..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_unsubscribed_campaign_members_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetUnsubscribedCampaignMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "campaign_12345", - "exclude_fields_list": "email,phone", - "fields_to_return": "name,status", - "number_of_records_to_return": "20" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_unsubscribed_campaign_members_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_unsubscribed_campaign_members_example_call_tool.py deleted file mode 100644 index d17d1ac74..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_unsubscribed_campaign_members_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetUnsubscribedCampaignMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'campaign_12345', - 'exclude_fields_list': 'email,phone', - 'fields_to_return': 'name,status', - 'number_of_records_to_return': '20' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_unsubscribed_member_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_unsubscribed_member_info_example_call_tool.js deleted file mode 100644 index 7a7cc358f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_unsubscribed_member_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetUnsubscribedMemberInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "subscriber_email_hash": "5d41402abc4b2a76b9719d911017c592", - "exclude_fields_list": "email_address,merge_fields", - "include_fields": "status,unsubscribed_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_unsubscribed_member_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_unsubscribed_member_info_example_call_tool.py deleted file mode 100644 index b46f7ed5c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_unsubscribed_member_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetUnsubscribedMemberInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', - 'subscriber_email_hash': '5d41402abc4b2a76b9719d911017c592', - 'exclude_fields_list': 'email_address,merge_fields', - 'include_fields': 'status,unsubscribed_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_verified_mailchimp_domains_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_verified_mailchimp_domains_example_call_tool.js deleted file mode 100644 index 6ff791019..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_verified_mailchimp_domains_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetVerifiedMailchimpDomains"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_verified_mailchimp_domains_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_verified_mailchimp_domains_example_call_tool.py deleted file mode 100644 index 11fa4878c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_verified_mailchimp_domains_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetVerifiedMailchimpDomains" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_webhook_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_webhook_info_example_call_tool.js deleted file mode 100644 index 29ddb73e9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_webhook_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.GetWebhookInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "webhook_id": "webhook456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_webhook_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_webhook_info_example_call_tool.py deleted file mode 100644 index a1422a3f9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/get_webhook_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.GetWebhookInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', 'webhook_id': 'webhook456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/list_file_manager_folders_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/list_file_manager_folders_example_call_tool.js deleted file mode 100644 index a5db1eb9e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/list_file_manager_folders_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.ListFileManagerFolders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_after_date": "2023-01-01T00:00:00Z", - "number_of_records_to_return": "20", - "fields_to_return": "name,created_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/list_file_manager_folders_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/list_file_manager_folders_example_call_tool.py deleted file mode 100644 index d2cec22fe..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/list_file_manager_folders_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.ListFileManagerFolders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_after_date': '2023-01-01T00:00:00Z', - 'number_of_records_to_return': '20', - 'fields_to_return': 'name,created_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/manage_mailchimp_list_members_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/manage_mailchimp_list_members_example_call_tool.js deleted file mode 100644 index a25f5fddb..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/manage_mailchimp_list_members_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.ManageMailchimpListMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "list_id": "123456", - "allow_incomplete_merge_fields": "true", - "ignore_duplicate_members": "false", - "request_body": "{\"members\":[{\"email_address\":\"example@example.com\",\"status\":\"subscribed\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/manage_mailchimp_list_members_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/manage_mailchimp_list_members_example_call_tool.py deleted file mode 100644 index d989a73ed..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/manage_mailchimp_list_members_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.ManageMailchimpListMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'list_id': '123456', - 'allow_incomplete_merge_fields': 'true', - 'ignore_duplicate_members': 'false', - 'request_body': '{"members":[{"email_address":"example@example.com","status":"subscribed"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/modify_product_variant_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/modify_product_variant_example_call_tool.js deleted file mode 100644 index 6e81992b6..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/modify_product_variant_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.ModifyProductVariant"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "product_identifier": "prod456", - "product_variant_id": "variant789", - "request_body": "{\"price\": 19.99, \"stock\": 50}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/modify_product_variant_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/modify_product_variant_example_call_tool.py deleted file mode 100644 index 035cb79db..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/modify_product_variant_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.ModifyProductVariant" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'product_identifier': 'prod456', - 'product_variant_id': 'variant789', - 'request_body': '{"price": 19.99, "stock": 50}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_automated_email_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_automated_email_example_call_tool.js deleted file mode 100644 index 14e93d344..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_automated_email_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.PauseAutomatedEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_workflow_email_id": "email_12345", - "automation_workflow_id": "workflow_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_automated_email_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_automated_email_example_call_tool.py deleted file mode 100644 index 3d1c54092..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_automated_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.PauseAutomatedEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_workflow_email_id': 'email_12345', 'automation_workflow_id': 'workflow_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_automation_emails_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_automation_emails_example_call_tool.js deleted file mode 100644 index 8c165fa8d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_automation_emails_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.PauseAutomationEmails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_workflow_id": "12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_automation_emails_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_automation_emails_example_call_tool.py deleted file mode 100644 index ce7923d45..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_automation_emails_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.PauseAutomationEmails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_workflow_id': '12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_rss_campaign_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_rss_campaign_example_call_tool.js deleted file mode 100644 index 59013b5c1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_rss_campaign_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.PauseRssCampaign"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_rss_campaign_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_rss_campaign_example_call_tool.py deleted file mode 100644 index 5eecd97f8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/pause_rss_campaign_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.PauseRssCampaign" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/publish_landing_page_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/publish_landing_page_example_call_tool.js deleted file mode 100644 index f54b62671..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/publish_landing_page_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.PublishLandingPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/publish_landing_page_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/publish_landing_page_example_call_tool.py deleted file mode 100644 index 09a8f4236..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/publish_landing_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.PublishLandingPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/publish_mailchimp_survey_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/publish_mailchimp_survey_example_call_tool.js deleted file mode 100644 index d7615853a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/publish_mailchimp_survey_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.PublishMailchimpSurvey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mailchimp_list_id": "abc123", - "survey_id": "survey456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/publish_mailchimp_survey_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/publish_mailchimp_survey_example_call_tool.py deleted file mode 100644 index 6409bac5e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/publish_mailchimp_survey_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.PublishMailchimpSurvey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mailchimp_list_id': 'abc123', 'survey_id': 'survey456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_batch_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_batch_webhook_example_call_tool.js deleted file mode 100644 index acf60504e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_batch_webhook_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.RemoveBatchWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_webhook_id": "12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_batch_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_batch_webhook_example_call_tool.py deleted file mode 100644 index d893c7dca..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_batch_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.RemoveBatchWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_webhook_id': '12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_campaign_feedback_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_campaign_feedback_example_call_tool.js deleted file mode 100644 index b7e75f7ab..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_campaign_feedback_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.RemoveCampaignFeedback"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "feedback_message_id": "feedback456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_campaign_feedback_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_campaign_feedback_example_call_tool.py deleted file mode 100644 index b299d8576..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_campaign_feedback_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.RemoveCampaignFeedback" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', 'feedback_message_id': 'feedback456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_classic_automation_email_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_classic_automation_email_example_call_tool.js deleted file mode 100644 index 0e90eb806..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_classic_automation_email_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.RemoveClassicAutomationEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_workflow_email_id": "email_12345", - "automation_workflow_id": "workflow_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_classic_automation_email_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_classic_automation_email_example_call_tool.py deleted file mode 100644 index 48700fdd7..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_classic_automation_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.RemoveClassicAutomationEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_workflow_email_id': 'email_12345', 'automation_workflow_id': 'workflow_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_mailchimp_connected_site_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_mailchimp_connected_site_example_call_tool.js deleted file mode 100644 index d6d4b994d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_mailchimp_connected_site_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.RemoveMailchimpConnectedSite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site_identifier": "site_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_mailchimp_connected_site_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_mailchimp_connected_site_example_call_tool.py deleted file mode 100644 index 2aad820df..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_mailchimp_connected_site_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.RemoveMailchimpConnectedSite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site_identifier': 'site_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_member_from_mailchimp_segment_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_member_from_mailchimp_segment_example_call_tool.js deleted file mode 100644 index 0eddd7881..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_member_from_mailchimp_segment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.RemoveMemberFromMailchimpSegment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_md5_hash": "5d41402abc4b2a76b9719d911017c592", - "list_unique_id": "1234567890abcdef", - "segment_unique_id": "abcdef1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_member_from_mailchimp_segment_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_member_from_mailchimp_segment_example_call_tool.py deleted file mode 100644 index 1ce95ad29..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_member_from_mailchimp_segment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.RemoveMemberFromMailchimpSegment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_md5_hash': '5d41402abc4b2a76b9719d911017c592', - 'list_unique_id': '1234567890abcdef', - 'segment_unique_id': 'abcdef1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_subscriber_from_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_subscriber_from_workflow_example_call_tool.js deleted file mode 100644 index c321545ef..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_subscriber_from_workflow_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.RemoveSubscriberFromWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_workflow_id": "123456", - "subscriber_email_address": "example@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_subscriber_from_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_subscriber_from_workflow_example_call_tool.py deleted file mode 100644 index 95f39323c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/remove_subscriber_from_workflow_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.RemoveSubscriberFromWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_workflow_id': '123456', 'subscriber_email_address': 'example@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/replicate_campaign_mailchimp_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/replicate_campaign_mailchimp_example_call_tool.js deleted file mode 100644 index 508b77dbc..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/replicate_campaign_mailchimp_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.ReplicateCampaignMailchimp"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/replicate_campaign_mailchimp_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/replicate_campaign_mailchimp_example_call_tool.py deleted file mode 100644 index d5c97f2b2..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/replicate_campaign_mailchimp_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.ReplicateCampaignMailchimp" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/resend_campaign_to_segments_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/resend_campaign_to_segments_example_call_tool.js deleted file mode 100644 index 482d42489..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/resend_campaign_to_segments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.ResendCampaignToSegments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "resend_shortcut_type": "to_new_subscribers" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/resend_campaign_to_segments_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/resend_campaign_to_segments_example_call_tool.py deleted file mode 100644 index 9435114db..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/resend_campaign_to_segments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.ResendCampaignToSegments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', 'resend_shortcut_type': 'to_new_subscribers' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/resume_rss_driven_campaign_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/resume_rss_driven_campaign_example_call_tool.js deleted file mode 100644 index f43cf96ee..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/resume_rss_driven_campaign_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.ResumeRssDrivenCampaign"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/resume_rss_driven_campaign_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/resume_rss_driven_campaign_example_call_tool.py deleted file mode 100644 index 0555b920c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/resume_rss_driven_campaign_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.ResumeRssDrivenCampaign" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_audience_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_audience_contact_example_call_tool.js deleted file mode 100644 index 29784d62e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_audience_contact_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.RetrieveAudienceContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "audience_unique_id": "audience_12345", - "unique_contact_identifier": "email:5d41402abc4b2a76b9719d911017c592", - "exclude_fields_list": "address,phone", - "fields_to_return": "name,email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_audience_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_audience_contact_example_call_tool.py deleted file mode 100644 index 01dc77aeb..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_audience_contact_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.RetrieveAudienceContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'audience_unique_id': 'audience_12345', - 'unique_contact_identifier': 'email:5d41402abc4b2a76b9719d911017c592', - 'exclude_fields_list': 'address,phone', - 'fields_to_return': 'name,email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_audience_contact_list_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_audience_contact_list_example_call_tool.js deleted file mode 100644 index dd2027621..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_audience_contact_list_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.RetrieveAudienceContactList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "audience_id": "audience_12345", - "created_before_datetime": "2023-01-01T00:00:00+00:00", - "fields_to_return": "name,email", - "number_of_records_to_return": "50" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_audience_contact_list_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_audience_contact_list_example_call_tool.py deleted file mode 100644 index 118877b77..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_audience_contact_list_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.RetrieveAudienceContactList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'audience_id': 'audience_12345', - 'created_before_datetime': '2023-01-01T00:00:00+00:00', - 'fields_to_return': 'name,email', - 'number_of_records_to_return': '50' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_campaign_subscriber_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_campaign_subscriber_activity_example_call_tool.js deleted file mode 100644 index b917a8080..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_campaign_subscriber_activity_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.RetrieveCampaignSubscriberActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "activity_since_timestamp": "2023-10-01T00:00:00Z", - "fields_to_return": "email,activity_type", - "number_of_records_to_return": "50" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_campaign_subscriber_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_campaign_subscriber_activity_example_call_tool.py deleted file mode 100644 index 6abbb22dd..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_campaign_subscriber_activity_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.RetrieveCampaignSubscriberActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', - 'activity_since_timestamp': '2023-10-01T00:00:00Z', - 'fields_to_return': 'email,activity_type', - 'number_of_records_to_return': '50' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_cart_line_item_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_cart_line_item_info_example_call_tool.js deleted file mode 100644 index 651a92dfe..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_cart_line_item_info_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.RetrieveCartLineItemInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cart_identifier": "cart123", - "cart_line_item_id": "item456", - "store_identifier": "store789", - "exclude_fields": "price,discount", - "fields_to_return": "name,quantity" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_cart_line_item_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_cart_line_item_info_example_call_tool.py deleted file mode 100644 index b31f8c7b9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_cart_line_item_info_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.RetrieveCartLineItemInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cart_identifier': 'cart123', - 'cart_line_item_id': 'item456', - 'store_identifier': 'store789', - 'exclude_fields': 'price,discount', - 'fields_to_return': 'name,quantity' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_contact_events_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_contact_events_example_call_tool.js deleted file mode 100644 index 62d59c827..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_contact_events_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.RetrieveContactEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_identifier": "example@example.com", - "list_unique_id": "1234567890abcdef", - "exclude_fields": "field1,field2", - "pagination_offset": "0", - "records_to_return_count": "10", - "return_field_list": "event_type,event_date" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_contact_events_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_contact_events_example_call_tool.py deleted file mode 100644 index af36cc450..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_contact_events_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.RetrieveContactEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_identifier': 'example@example.com', - 'list_unique_id': '1234567890abcdef', - 'exclude_fields': 'field1,field2', - 'pagination_offset': '0', - 'records_to_return_count': '10', - 'return_field_list': 'event_type,event_date' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_mailchimp_lists_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_mailchimp_lists_example_call_tool.js deleted file mode 100644 index 915f314fa..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_mailchimp_lists_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.RetrieveMailchimpLists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_after_date": "2023-01-01T00:00:00+00:00", - "fields_to_return": "id,name,created_at", - "records_to_return": "10", - "sort_direction": "asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_mailchimp_lists_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_mailchimp_lists_example_call_tool.py deleted file mode 100644 index 4fdcc5651..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_mailchimp_lists_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.RetrieveMailchimpLists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_after_date': '2023-01-01T00:00:00+00:00', - 'fields_to_return': 'id,name,created_at', - 'records_to_return': '10', - 'sort_direction': 'asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_member_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_member_tags_example_call_tool.js deleted file mode 100644 index f31ef3ba9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_member_tags_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.RetrieveMemberTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "12345", - "member_identifier": "d41d8cd98f00b204e9800998ecf8427e", - "exclude_specific_fields": "field1,field2", - "fields_to_return": "tags", - "pagination_offset": "0", - "record_count": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_member_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_member_tags_example_call_tool.py deleted file mode 100644 index 2a8947de0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/retrieve_member_tags_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.RetrieveMemberTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': '12345', - 'member_identifier': 'd41d8cd98f00b204e9800998ecf8427e', - 'exclude_specific_fields': 'field1,field2', - 'fields_to_return': 'tags', - 'pagination_offset': '0', - 'record_count': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/review_campaign_send_checklist_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/review_campaign_send_checklist_example_call_tool.js deleted file mode 100644 index 122e5833e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/review_campaign_send_checklist_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.ReviewCampaignSendChecklist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "fields_to_exclude": "settings.title,settings.subject_line", - "fields_to_return": "settings.title,settings.status" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/review_campaign_send_checklist_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/review_campaign_send_checklist_example_call_tool.py deleted file mode 100644 index 4f2aff309..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/review_campaign_send_checklist_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.ReviewCampaignSendChecklist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', - 'fields_to_exclude': 'settings.title,settings.subject_line', - 'fields_to_return': 'settings.title,settings.status' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/schedule_campaign_delivery_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/schedule_campaign_delivery_example_call_tool.js deleted file mode 100644 index 922d16006..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/schedule_campaign_delivery_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.ScheduleCampaignDelivery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "schedule_delivery_time": "2023-10-15T14:30:00Z", - "batch_delivery_delay": 10, - "number_of_batches_for_campaign": 3, - "use_timewarp": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/schedule_campaign_delivery_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/schedule_campaign_delivery_example_call_tool.py deleted file mode 100644 index 341e359e1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/schedule_campaign_delivery_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.ScheduleCampaignDelivery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', - 'schedule_delivery_time': '2023-10-15T14:30:00Z', - 'batch_delivery_delay': 10, - 'number_of_batches_for_campaign': 3, - 'use_timewarp': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_mailchimp_campaigns_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_mailchimp_campaigns_example_call_tool.js deleted file mode 100644 index 168efd8b8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_mailchimp_campaigns_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.SearchMailchimpCampaigns"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query": "summer sale", - "exclude_campaign_fields": "status,recipients", - "included_fields": "id,title,send_time" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_mailchimp_campaigns_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_mailchimp_campaigns_example_call_tool.py deleted file mode 100644 index a62bc62d1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_mailchimp_campaigns_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.SearchMailchimpCampaigns" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query': 'summer sale', - 'exclude_campaign_fields': 'status,recipients', - 'included_fields': 'id,title,send_time' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_mailchimp_members_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_mailchimp_members_example_call_tool.js deleted file mode 100644 index 3dbb2611b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_mailchimp_members_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.SearchMailchimpMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query": "john.doe@example.com", - "fields_to_exclude": "email,merge_fields", - "fields_to_return": "email,first_name,last_name", - "list_unique_id": "12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_mailchimp_members_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_mailchimp_members_example_call_tool.py deleted file mode 100644 index 2ae2a61f7..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_mailchimp_members_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.SearchMailchimpMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query': 'john.doe@example.com', - 'fields_to_exclude': 'email,merge_fields', - 'fields_to_return': 'email,first_name,last_name', - 'list_unique_id': '12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_tags_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_tags_by_name_example_call_tool.js deleted file mode 100644 index 46fc7ccbb..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_tags_by_name_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.SearchTagsByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "abc123", - "tag_name_search_query": "promo" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_tags_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_tags_by_name_example_call_tool.py deleted file mode 100644 index 4da4f66a6..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/search_tags_by_name_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.SearchTagsByName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': 'abc123', 'tag_name_search_query': 'promo' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/send_mailchimp_campaign_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/send_mailchimp_campaign_example_call_tool.js deleted file mode 100644 index 3798f6db9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/send_mailchimp_campaign_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.SendMailchimpCampaign"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/send_mailchimp_campaign_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/send_mailchimp_campaign_example_call_tool.py deleted file mode 100644 index 62cb15a9e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/send_mailchimp_campaign_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.SendMailchimpCampaign" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/send_test_email_campaign_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/send_test_email_campaign_example_call_tool.js deleted file mode 100644 index 5d609745c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/send_test_email_campaign_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.SendTestEmailCampaign"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_unique_id": "abc123", - "test_email_addresses": [ - "test@example.com", - "sample@example.com" - ], - "test_email_send_type": "html" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/send_test_email_campaign_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/send_test_email_campaign_example_call_tool.py deleted file mode 100644 index 04441ca6b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/send_test_email_campaign_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.SendTestEmailCampaign" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_unique_id': 'abc123', - 'test_email_addresses': ['test@example.com', 'sample@example.com'], - 'test_email_send_type': 'html' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/set_campaign_content_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/set_campaign_content_example_call_tool.js deleted file mode 100644 index 8fcfa3d2d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/set_campaign_content_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.SetCampaignContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "campaign_id": "12345", - "request_body": "{\"content\":\"New campaign content\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/set_campaign_content_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/set_campaign_content_example_call_tool.py deleted file mode 100644 index ea149615e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/set_campaign_content_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.SetCampaignContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'campaign_id': '12345', 'request_body': '{"content":"New campaign content"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_automated_email_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_automated_email_example_call_tool.js deleted file mode 100644 index bb36dbafd..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_automated_email_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.StartAutomatedEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_email_id": "email_12345", - "automation_workflow_id": "workflow_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_automated_email_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_automated_email_example_call_tool.py deleted file mode 100644 index 2a84b0123..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_automated_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.StartAutomatedEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_email_id': 'email_12345', 'automation_workflow_id': 'workflow_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_batch_processing_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_batch_processing_example_call_tool.js deleted file mode 100644 index db6f03dd5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_batch_processing_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.StartBatchProcessing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"campaign_id\":\"12345\",\"action\":\"send\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_batch_processing_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_batch_processing_example_call_tool.py deleted file mode 100644 index 53f143575..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_batch_processing_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.StartBatchProcessing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"campaign_id":"12345","action":"send"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_mailchimp_automation_emails_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_mailchimp_automation_emails_example_call_tool.js deleted file mode 100644 index e9d426a2e..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_mailchimp_automation_emails_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.StartMailchimpAutomationEmails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "automation_workflow_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_mailchimp_automation_emails_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_mailchimp_automation_emails_example_call_tool.py deleted file mode 100644 index 4c6fba145..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/start_mailchimp_automation_emails_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.StartMailchimpAutomationEmails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'automation_workflow_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/trigger_automation_step_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/trigger_automation_step_example_call_tool.js deleted file mode 100644 index 805179f6d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/trigger_automation_step_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.TriggerAutomationStep"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "flow_id": "abc123", - "list_member_email_address": "user@example.com", - "step_identifier": "step1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/trigger_automation_step_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/trigger_automation_step_example_call_tool.py deleted file mode 100644 index 96edfd258..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/trigger_automation_step_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.TriggerAutomationStep" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'flow_id': 'abc123', 'list_member_email_address': 'user@example.com', 'step_identifier': 'step1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unpublish_landing_page_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unpublish_landing_page_example_call_tool.js deleted file mode 100644 index 2c3369bad..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unpublish_landing_page_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UnpublishLandingPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unpublish_landing_page_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unpublish_landing_page_example_call_tool.py deleted file mode 100644 index 77ca381e8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unpublish_landing_page_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UnpublishLandingPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unpublish_mailchimp_survey_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unpublish_mailchimp_survey_example_call_tool.js deleted file mode 100644 index 89ce94d0c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unpublish_mailchimp_survey_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UnpublishMailchimpSurvey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mailchimp_list_id": "abc123", - "survey_id": "survey456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unpublish_mailchimp_survey_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unpublish_mailchimp_survey_example_call_tool.py deleted file mode 100644 index 7195a53ab..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unpublish_mailchimp_survey_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UnpublishMailchimpSurvey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mailchimp_list_id': 'abc123', 'survey_id': 'survey456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unschedule_campaign_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unschedule_campaign_example_call_tool.js deleted file mode 100644 index 407f7af15..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unschedule_campaign_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UnscheduleCampaign"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unschedule_campaign_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unschedule_campaign_example_call_tool.py deleted file mode 100644 index 6877473b8..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/unschedule_campaign_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UnscheduleCampaign" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_automation_email_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_automation_email_settings_example_call_tool.js deleted file mode 100644 index 47505de86..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_automation_email_settings_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateAutomationEmailSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "automation_workflow_id": "12345", - "automation_workflow_email_id": "email_67890", - "request_body": "{\"subject\":\"New Offer!\",\"content\":\"Check out our latest deals!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_automation_email_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_automation_email_settings_example_call_tool.py deleted file mode 100644 index c608185c1..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_automation_email_settings_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateAutomationEmailSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'automation_workflow_id': '12345', - 'automation_workflow_email_id': 'email_67890', - 'request_body': '{"subject":"New Offer!","content":"Check out our latest deals!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_batch_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_batch_webhook_example_call_tool.js deleted file mode 100644 index 1ac8b8a45..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_batch_webhook_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateBatchWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_webhook_unique_id": "abc123", - "enable_webhook": true, - "webhook_url": "https://example.com/webhook" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_batch_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_batch_webhook_example_call_tool.py deleted file mode 100644 index f36f61a3b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_batch_webhook_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateBatchWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_webhook_unique_id': 'abc123', - 'enable_webhook': True, - 'webhook_url': 'https://example.com/webhook' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_feedback_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_feedback_example_call_tool.js deleted file mode 100644 index aba9795b7..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_feedback_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateCampaignFeedback"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_id": "abc123", - "feedback_message_id": "msg456", - "feedback_message": "Updated feedback content." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_feedback_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_feedback_example_call_tool.py deleted file mode 100644 index 6aa846ab5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_feedback_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateCampaignFeedback" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_id': 'abc123', - 'feedback_message_id': 'msg456', - 'feedback_message': 'Updated feedback content.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_folder_example_call_tool.js deleted file mode 100644 index 31c211217..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_folder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateCampaignFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "campaign_folder_id": "12345", - "folder_name": "Summer Campaigns" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_folder_example_call_tool.py deleted file mode 100644 index e0a37b713..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateCampaignFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'campaign_folder_id': '12345', 'folder_name': 'Summer Campaigns' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_settings_example_call_tool.js deleted file mode 100644 index 55aa6efde..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_settings_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateCampaignSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "campaign_unique_id": "12345abcde", - "request_body": "{\"settings\":{\"subject_line\":\"New Subject Line\",\"title\":\"Updated Campaign Title\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_settings_example_call_tool.py deleted file mode 100644 index 2cb6575a7..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_campaign_settings_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateCampaignSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'campaign_unique_id': '12345abcde', - 'request_body': '{"settings":{"subject_line":"New Subject Line","title":"Updated Campaign ' - 'Title"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_cart_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_cart_example_call_tool.js deleted file mode 100644 index 36c0a8ea6..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_cart_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateCart"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_id": "12345", - "cart_identifier": "cart_001", - "request_body": "{\"items\":[{\"id\":\"item_1\",\"quantity\":2},{\"id\":\"item_2\",\"quantity\":1}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_cart_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_cart_example_call_tool.py deleted file mode 100644 index f1b64378d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_cart_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateCart" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_id': '12345', - 'cart_identifier': 'cart_001', - 'request_body': '{"items":[{"id":"item_1","quantity":2},{"id":"item_2","quantity":1}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_cart_line_item_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_cart_line_item_example_call_tool.js deleted file mode 100644 index 660e324c2..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_cart_line_item_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateCartLineItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cart_id": "cart_12345", - "cart_line_item_id": "item_67890", - "store_identifier": "store_abc", - "cart_line_item_quantity": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_cart_line_item_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_cart_line_item_example_call_tool.py deleted file mode 100644 index 487172b74..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_cart_line_item_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateCartLineItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cart_id': 'cart_12345', - 'cart_line_item_id': 'item_67890', - 'store_identifier': 'store_abc', - 'cart_line_item_quantity': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_contact_information_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_contact_information_example_call_tool.js deleted file mode 100644 index d717c4d7d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_contact_information_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateContactInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "audience_id": "12345", - "contact_id": "abcde", - "merge_field_validation_mode": "strict", - "data_processing_mode": "live", - "request_body": "{\"email\":\"example@example.com\",\"name\":\"John Doe\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_contact_information_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_contact_information_example_call_tool.py deleted file mode 100644 index 9bfb7d3f5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_contact_information_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateContactInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'audience_id': '12345', - 'contact_id': 'abcde', - 'merge_field_validation_mode': 'strict', - 'data_processing_mode': 'live', - 'request_body': '{"email":"example@example.com","name":"John Doe"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_customer_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_customer_info_example_call_tool.js deleted file mode 100644 index b3a79ecdd..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_customer_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateCustomerInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "customer_identifier": "cust456", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_customer_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_customer_info_example_call_tool.py deleted file mode 100644 index 35f42b2fb..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_customer_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateCustomerInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'customer_identifier': 'cust456', - 'request_body': '{"name":"John Doe","email":"john@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_order_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_order_example_call_tool.js deleted file mode 100644 index a7e16fae6..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_order_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateEcommerceOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "order_identifier": "order456", - "request_body": "{\"item\":\"widget\",\"quantity\":2,\"price\":19.99}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_order_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_order_example_call_tool.py deleted file mode 100644 index 208091a4d..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_order_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateEcommerceOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'order_identifier': 'order456', - 'request_body': '{"item":"widget","quantity":2,"price":19.99}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_product_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_product_example_call_tool.js deleted file mode 100644 index e0138cb96..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_product_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateEcommerceProduct"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "product_id": "prod456", - "request_body": "{\"price\": 19.99, \"inventory\": 100, \"description\": \"Updated product description\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_product_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_product_example_call_tool.py deleted file mode 100644 index 3942483d3..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_product_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateEcommerceProduct" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'product_id': 'prod456', - 'request_body': '{"price": 19.99, "inventory": 100, "description": "Updated product ' - 'description"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_store_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_store_example_call_tool.js deleted file mode 100644 index 405e0f0a3..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_store_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateEcommerceStore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "request_body": "{\"name\":\"New Store Name\",\"url\":\"https://newstore.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_store_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_store_example_call_tool.py deleted file mode 100644 index 814eff6be..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_ecommerce_store_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateEcommerceStore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'request_body': '{"name":"New Store Name","url":"https://newstore.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_email_template_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_email_template_example_call_tool.js deleted file mode 100644 index 5da0b10ab..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_email_template_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateEmailTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "template_html_content": "

Welcome to Our Newsletter

", - "template_name": "Monthly Newsletter", - "template_unique_id": "abc123xyz", - "destination_folder_id": "folder456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_email_template_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_email_template_example_call_tool.py deleted file mode 100644 index 4a74507ea..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_email_template_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateEmailTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'template_html_content': '

Welcome to Our Newsletter

', - 'template_name': 'Monthly Newsletter', - 'template_unique_id': 'abc123xyz', - 'destination_folder_id': 'folder456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_file_manager_file_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_file_manager_file_example_call_tool.js deleted file mode 100644 index b2c219894..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_file_manager_file_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateFileManagerFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_manager_file_id": "12345", - "file_name": "new_file_name.txt" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_file_manager_file_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_file_manager_file_example_call_tool.py deleted file mode 100644 index e4f92982a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_file_manager_file_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateFileManagerFile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_manager_file_id': '12345', 'file_name': 'new_file_name.txt' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_file_manager_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_file_manager_folder_example_call_tool.js deleted file mode 100644 index 82bc9c4d0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_file_manager_folder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateFileManagerFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_manager_folder_id": "12345", - "folder_name": "Updated Folder Name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_file_manager_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_file_manager_folder_example_call_tool.py deleted file mode 100644 index 1d574c452..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_file_manager_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateFileManagerFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_manager_folder_id': '12345', 'folder_name': 'Updated Folder Name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_interest_category_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_interest_category_example_call_tool.js deleted file mode 100644 index 074e4fa34..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_interest_category_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateInterestCategory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "category_display_type": "checkboxes", - "interest_category_id": "abc123", - "interest_category_title": "What are your interests?", - "list_unique_id": "list456", - "category_display_order": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_interest_category_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_interest_category_example_call_tool.py deleted file mode 100644 index 7b46feaab..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_interest_category_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateInterestCategory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'category_display_type': 'checkboxes', - 'interest_category_id': 'abc123', - 'interest_category_title': 'What are your interests?', - 'list_unique_id': 'list456', - 'category_display_order': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_interest_group_name_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_interest_group_name_example_call_tool.js deleted file mode 100644 index ea73c3ac4..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_interest_group_name_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateInterestGroupName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "interest_category_id": "cat123", - "interest_group_name": "New Interest Group", - "list_unique_id": "list456", - "specific_interest_id": "interest789", - "interest_display_order": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_interest_group_name_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_interest_group_name_example_call_tool.py deleted file mode 100644 index 2b6b59501..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_interest_group_name_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateInterestGroupName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'interest_category_id': 'cat123', - 'interest_group_name': 'New Interest Group', - 'list_unique_id': 'list456', - 'specific_interest_id': 'interest789', - 'interest_display_order': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_landing_page_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_landing_page_example_call_tool.js deleted file mode 100644 index 3491ab288..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_landing_page_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateLandingPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "landing_page_id": "12345", - "landing_page_name": "New Product Launch", - "enable_tracking_with_mailchimp": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_landing_page_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_landing_page_example_call_tool.py deleted file mode 100644 index 93d67c57c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_landing_page_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateLandingPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'landing_page_id': '12345', - 'landing_page_name': 'New Product Launch', - 'enable_tracking_with_mailchimp': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_member_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_member_info_example_call_tool.js deleted file mode 100644 index abf1161db..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_member_info_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateListMemberInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "list_unique_id": "123456789", - "member_identifier": "d41d8cd98f00b204e9800998ecf8427e", - "skip_merge_validation": "true", - "request_body": "{\"status\":\"subscribed\",\"email_address\":\"example@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_member_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_member_info_example_call_tool.py deleted file mode 100644 index 46c4158ab..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_member_info_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateListMemberInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'list_unique_id': '123456789', - 'member_identifier': 'd41d8cd98f00b204e9800998ecf8427e', - 'skip_merge_validation': 'true', - 'request_body': '{"status":"subscribed","email_address":"example@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_member_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_member_tags_example_call_tool.js deleted file mode 100644 index f7bf1c7e4..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_member_tags_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateListMemberTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "list_unique_id": "12345abcde", - "subscriber_email_hash": "5d41402abc4b2a76b9719d911017c592", - "request_body": "{\"tags\":[{\"name\":\"new_tag\",\"status\":\"active\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_member_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_member_tags_example_call_tool.py deleted file mode 100644 index 4a1755ccb..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_member_tags_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateListMemberTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'list_unique_id': '12345abcde', - 'subscriber_email_hash': '5d41402abc4b2a76b9719d911017c592', - 'request_body': '{"tags":[{"name":"new_tag","status":"active"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_segment_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_segment_example_call_tool.js deleted file mode 100644 index 4d85e3c83..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_segment_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateListSegment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "segment_unique_id": "seg456", - "emails_to_add_to_segment": [ - "user1@example.com", - "user2@example.com" - ], - "emails_to_remove_from_segment": [ - "user3@example.com" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_segment_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_segment_example_call_tool.py deleted file mode 100644 index eb008d3e5..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_list_segment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateListSegment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'segment_unique_id': 'seg456', - 'emails_to_add_to_segment': ['user1@example.com', 'user2@example.com'], - 'emails_to_remove_from_segment': ['user3@example.com'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_mailchimp_list_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_mailchimp_list_settings_example_call_tool.js deleted file mode 100644 index 6349db983..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_mailchimp_list_settings_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateMailchimpListSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "mailchimp_list_id": "123456", - "request_body": "{\"name\":\"Updated List Name\",\"contact\":{\"company\":\"New Company\",\"address1\":\"123 New St\"},\"permission_reminder\":\"You signed up for updates.\",\"campaign_defaults\":{\"from_name\":\"New Name\",\"from_email\":\"newemail@example.com\",\"subject\":\"New Subject\",\"language\":\"en\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_mailchimp_list_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_mailchimp_list_settings_example_call_tool.py deleted file mode 100644 index 286c11636..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_mailchimp_list_settings_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateMailchimpListSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'mailchimp_list_id': '123456', - 'request_body': '{"name":"Updated List Name","contact":{"company":"New ' - 'Company","address1":"123 New St"},"permission_reminder":"You signed up for ' - 'updates.","campaign_defaults":{"from_name":"New ' - 'Name","from_email":"newemail@example.com","subject":"New ' - 'Subject","language":"en"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_mailchimp_segment_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_mailchimp_segment_example_call_tool.js deleted file mode 100644 index a9e2f1f1a..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_mailchimp_segment_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateMailchimpSegment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "12345abcde", - "segment_name": "Updated Segment", - "segment_unique_id": "67890fghij", - "segment_conditions": [ - { - "field": "email", - "operator": "contains", - "value": "@example.com" - } - ], - "segment_match_type": "any" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_mailchimp_segment_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_mailchimp_segment_example_call_tool.py deleted file mode 100644 index a48b0471f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_mailchimp_segment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateMailchimpSegment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': '12345abcde', - 'segment_name': 'Updated Segment', - 'segment_unique_id': '67890fghij', - 'segment_conditions': [{'field': 'email', 'operator': 'contains', 'value': '@example.com'}], - 'segment_match_type': 'any' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_member_note_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_member_note_example_call_tool.js deleted file mode 100644 index c9721ed92..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_member_note_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateMemberNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_unique_id": "abc123", - "member_identifier": "john.doe@example.com", - "note_identifier": "note456", - "note_content": "Updated note content." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_member_note_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_member_note_example_call_tool.py deleted file mode 100644 index 73d861906..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_member_note_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateMemberNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_unique_id': 'abc123', - 'member_identifier': 'john.doe@example.com', - 'note_identifier': 'note456', - 'note_content': 'Updated note content.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_merge_field_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_merge_field_example_call_tool.js deleted file mode 100644 index 2766fa6b2..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_merge_field_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateMergeField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "list_id": "12345", - "merge_field_id": "field_1", - "request_body": "{\"name\":\"New Field Name\",\"type\":\"text\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_merge_field_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_merge_field_example_call_tool.py deleted file mode 100644 index 13b1603e2..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_merge_field_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateMergeField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'list_id': '12345', - 'merge_field_id': 'field_1', - 'request_body': '{"name":"New Field Name","type":"text"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_order_line_item_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_order_line_item_example_call_tool.js deleted file mode 100644 index 261fe38ff..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_order_line_item_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateOrderLineItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "line_item_id": "li_12345", - "order_id": "order_67890", - "store_identifier": "store_abc", - "line_item_discount_amount": 5.99, - "order_line_item_price": 19.99, - "order_line_item_quantity": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_order_line_item_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_order_line_item_example_call_tool.py deleted file mode 100644 index 7ad3ad0e9..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_order_line_item_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateOrderLineItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'line_item_id': 'li_12345', - 'order_id': 'order_67890', - 'store_identifier': 'store_abc', - 'line_item_discount_amount': 5.99, - 'order_line_item_price': 19.99, - 'order_line_item_quantity': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_order_mailchimp_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_order_mailchimp_example_call_tool.js deleted file mode 100644 index fbd63c86c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_order_mailchimp_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateOrderMailchimp"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "order_id": "order456", - "request_body": "{\"status\":\"shipped\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_order_mailchimp_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_order_mailchimp_example_call_tool.py deleted file mode 100644 index db5ee2a85..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_order_mailchimp_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateOrderMailchimp" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'order_id': 'order456', - 'request_body': '{"status":"shipped"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_image_mailchimp_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_image_mailchimp_example_call_tool.js deleted file mode 100644 index 54089a19b..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_image_mailchimp_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateProductImageMailchimp"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_identifier": "prod_12345", - "product_image_id": "img_67890", - "store_id": "store_abcde", - "product_image_url": "https://example.com/image.jpg" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_image_mailchimp_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_image_mailchimp_example_call_tool.py deleted file mode 100644 index fffca0f12..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_image_mailchimp_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateProductImageMailchimp" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_identifier': 'prod_12345', - 'product_image_id': 'img_67890', - 'store_id': 'store_abcde', - 'product_image_url': 'https://example.com/image.jpg' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_info_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_info_example_call_tool.js deleted file mode 100644 index 8d080bfd2..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateProductInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "product_identifier": "prod456", - "request_body": "{\"name\":\"New Product Name\",\"description\":\"Updated description\",\"price\":19.99}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_info_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_info_example_call_tool.py deleted file mode 100644 index d8ecb283c..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateProductInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'product_identifier': 'prod456', - 'request_body': '{"name":"New Product Name","description":"Updated description","price":19.99}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_variant_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_variant_example_call_tool.js deleted file mode 100644 index 8c102fd3f..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_variant_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateProductVariant"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "product_identifier": "product456", - "product_variant_id": "variant789", - "request_body": "{\"price\": 19.99, \"stock\": 100}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_variant_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_variant_example_call_tool.py deleted file mode 100644 index f7eeaf8cd..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_product_variant_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateProductVariant" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'product_identifier': 'product456', - 'product_variant_id': 'variant789', - 'request_body': '{"price": 19.99, "stock": 100}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_promo_code_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_promo_code_example_call_tool.js deleted file mode 100644 index f18434c08..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_promo_code_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdatePromoCode"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "promo_code_identifier": "SUMMER2023", - "promo_rule_identifier": "RULE123", - "store_identifier": "STORE456", - "discount_code": "SUMMER20", - "is_promo_code_enabled": true, - "promo_code_usage_count": 150 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_promo_code_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_promo_code_example_call_tool.py deleted file mode 100644 index d1acbd6e0..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_promo_code_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdatePromoCode" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'promo_code_identifier': 'SUMMER2023', - 'promo_rule_identifier': 'RULE123', - 'store_identifier': 'STORE456', - 'discount_code': 'SUMMER20', - 'is_promo_code_enabled': True, - 'promo_code_usage_count': 150 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_promo_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_promo_rule_example_call_tool.js deleted file mode 100644 index 417f4e656..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_promo_rule_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdatePromoRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "store_identifier": "store123", - "promo_rule_identifier": "promo456", - "request_body": "{\"discount\": 20, \"conditions\": {\"min_purchase\": 50}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_promo_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_promo_rule_example_call_tool.py deleted file mode 100644 index a8d219aea..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_promo_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdatePromoRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'store_identifier': 'store123', - 'promo_rule_identifier': 'promo456', - 'request_body': '{"discount": 20, "conditions": {"min_purchase": 50}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_template_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_template_folder_example_call_tool.js deleted file mode 100644 index b95d09187..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_template_folder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateTemplateFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_name": "New Folder Name", - "template_folder_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_template_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_template_folder_example_call_tool.py deleted file mode 100644 index b908a96bd..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_template_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateTemplateFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_name': 'New Folder Name', 'template_folder_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_webhook_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_webhook_settings_example_call_tool.js deleted file mode 100644 index 31a69a2d7..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_webhook_settings_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UpdateWebhookSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "list_id": "12345", - "webhook_identifier": "abcde", - "request_body": "{\"url\":\"https://example.com/webhook\",\"events\":[\"subscribe\",\"unsubscribe\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_webhook_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_webhook_settings_example_call_tool.py deleted file mode 100644 index a27bd6a81..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/update_webhook_settings_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UpdateWebhookSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'list_id': '12345', - 'webhook_identifier': 'abcde', - 'request_body': '{"url":"https://example.com/webhook","events":["subscribe","unsubscribe"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/upload_file_to_file_manager_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/upload_file_to_file_manager_example_call_tool.js deleted file mode 100644 index f349af079..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/upload_file_to_file_manager_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.UploadFileToFileManager"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_content_base64": "[file_content]", - "file_name": "example.txt", - "folder_id": 123 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/upload_file_to_file_manager_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/upload_file_to_file_manager_example_call_tool.py deleted file mode 100644 index 28d292e85..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/upload_file_to_file_manager_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.UploadFileToFileManager" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_content_base64': '[file_content]', 'file_name': 'example.txt', 'folder_id': 123 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/verify_script_installation_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/verify_script_installation_example_call_tool.js deleted file mode 100644 index 8051a2ccd..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/verify_script_installation_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.VerifyScriptInstallation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site_unique_identifier": "site_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/verify_script_installation_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/verify_script_installation_example_call_tool.py deleted file mode 100644 index cda5bab89..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/verify_script_installation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.VerifyScriptInstallation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site_unique_identifier': 'site_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/verify_sending_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/verify_sending_domain_example_call_tool.js deleted file mode 100644 index 9b3d2cf50..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/verify_sending_domain_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MailchimpMarketingApi.VerifySendingDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name_to_verify": "example.com", - "verification_code": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/verify_sending_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/mailchimp_marketing_api/verify_sending_domain_example_call_tool.py deleted file mode 100644 index a8eabacac..000000000 --- a/public/examples/integrations/mcp-servers/mailchimp_marketing_api/verify_sending_domain_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MailchimpMarketingApi.VerifySendingDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name_to_verify': 'example.com', 'verification_code': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/create_event_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/create_event_example_call_tool.js deleted file mode 100644 index 703209277..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/create_event_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Microsoft.CreateEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - subject: "Coffee chat", - body: "Let's catch up!", - start_date_time: "2025-04-28T13:00:00", - end_date_time: "2025-04-28T13:30:00", - attendee_emails: ["johndoe@example.com"], - is_online_meeting: true, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/create_event_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/create_event_example_call_tool.py deleted file mode 100644 index 5a558575a..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/create_event_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Microsoft.CreateEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "subject": "Coffee chat", - "body": "Let's catch up!", - "start_date_time": "2025-04-28T13:00:00", - "end_date_time": "2025-04-28T13:30:00", - "attendee_emails": ["johndoe@example.com"], - "is_online_meeting": True, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/get_event_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/get_event_example_call_tool.js deleted file mode 100644 index 9721e3f1d..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/get_event_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Microsoft.GetEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - event_id: "1234567890", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/get_event_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/get_event_example_call_tool.py deleted file mode 100644 index c571e2dfb..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/get_event_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Microsoft.GetEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "event_id": "1234567890", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/list_events_in_time_range_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/list_events_in_time_range_example_call_tool.js deleted file mode 100644 index e09acccb8..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/list_events_in_time_range_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Microsoft.ListEventsInTimeRange"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - start_date_time: "2025-04-28T00:00:00", - end_date_time: "2025-04-29T00:00:00", - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/list_events_in_time_range_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/list_events_in_time_range_example_call_tool.py deleted file mode 100644 index 82cc2b883..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_calendar/list_events_in_time_range_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Microsoft.ListEventsInTimeRange" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "start_date_time": "2025-04-28T00:00:00", - "end_date_time": "2025-04-29T00:00:00", - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/create_and_send_email_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/create_and_send_email_example_call_tool.js deleted file mode 100644 index 7b6856821..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/create_and_send_email_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Microsoft.CreateAndSendEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - subject: "Hey y'all!", - body: "This is a test email.", - to_recipients: ["johndoe@example.com"], - cc_recipients: ["him@example.com"], - bcc_recipients: ["her@example.com"], -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/create_and_send_email_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/create_and_send_email_example_call_tool.py deleted file mode 100644 index 40763f576..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/create_and_send_email_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Microsoft.CreateAndSendEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "subject": "Hey y'all!", - "body": "This is a test email.", - "to_recipients": ["johndoe@example.com"], - "cc_recipients": ["him@example.com"], - "bcc_recipients": ["her@example.com"], -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/create_draft_email_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/create_draft_email_example_call_tool.js deleted file mode 100644 index c2dbdb95e..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/create_draft_email_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Microsoft.CreateDraftEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - subject: "Hey y'all!", - body: "This is a test email that I'm drafting.", - to_recipients: ["johndoe@example.com"], - cc_recipients: ["him@example.com"], - bcc_recipients: ["her@example.com"], -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/create_draft_email_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/create_draft_email_example_call_tool.py deleted file mode 100644 index 39a2440a0..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/create_draft_email_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Microsoft.CreateDraftEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "subject": "Hey y'all!", - "body": "This is a test email that I'm drafting.", - "to_recipients": ["johndoe@example.com"], - "cc_recipients": ["him@example.com"], - "bcc_recipients": ["her@example.com"], -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_by_property_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_by_property_example_call_tool.js deleted file mode 100644 index 4d33b492c..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_by_property_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Microsoft.ListEmailsByProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - property: "sender", - operator: "contains", - value: "arcade.dev", - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_by_property_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_by_property_example_call_tool.py deleted file mode 100644 index ee7edfae8..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_by_property_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Microsoft.ListEmailsByProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "property": "sender", - "operator": "contains", - "value": "arcade.dev", - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_example_call_tool.js deleted file mode 100644 index 804c8ba52..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Microsoft.ListEmails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_example_call_tool.py deleted file mode 100644 index dad319be5..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Microsoft.ListEmails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_in_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_in_folder_example_call_tool.js deleted file mode 100644 index 98f5b2161..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_in_folder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Microsoft.ListEmailsInFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - well_known_folder_name: "inbox", - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_in_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_in_folder_example_call_tool.py deleted file mode 100644 index e0d897120..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/list_emails_in_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Microsoft.ListEmailsInFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "well_known_folder_name": "inbox", - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/reply_to_email_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/reply_to_email_example_call_tool.js deleted file mode 100644 index 082789783..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/reply_to_email_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Microsoft.ReplyToEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - message_id: "1234567890", - body: "I am replying to the sender of the email with id 1234567890 with this text.", - reply_type: "reply", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/reply_to_email_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/reply_to_email_example_call_tool.py deleted file mode 100644 index 8fcd3e62c..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/reply_to_email_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Microsoft.ReplyToEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "message_id": "1234567890", - "body": "I am replying to the sender of the email with id 1234567890 with this text.", - "reply_type": "reply", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/send_draft_email_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/send_draft_email_example_call_tool.js deleted file mode 100644 index b2bbc2a24..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/send_draft_email_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Microsoft.SendDraftEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - message_id: "1234567890", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/send_draft_email_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/send_draft_email_example_call_tool.py deleted file mode 100644 index 181ad83aa..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/send_draft_email_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Microsoft.SendDraftEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "message_id": "1234567890", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/update_draft_email_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/update_draft_email_example_call_tool.js deleted file mode 100644 index d10e194f2..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/update_draft_email_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Microsoft.UpdateDraftEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - message_id: "1234567890", - subject: "My new subject", - body: "My new body", - to_add: ["johndoe@example.com"], - to_remove: ["a@example.com"], - cc_add: ["b@example.com"], - cc_remove: ["c@example.com"], - bcc_add: ["d@example.com"], - bcc_remove: ["e@example.com"], -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/update_draft_email_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft/outlook_mail/update_draft_email_example_call_tool.py deleted file mode 100644 index 4659d5719..000000000 --- a/public/examples/integrations/mcp-servers/microsoft/outlook_mail/update_draft_email_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Microsoft.UpdateDraftEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "message_id": "1234567890", - "subject": "My new subject", - "body": "My new body", - "to_add": ["johndoe@example.com"], - "to_remove": ["a@example.com"], - "cc_add": ["b@example.com"], - "cc_remove": ["c@example.com"], - "bcc_add": ["d@example.com"], - "bcc_remove": ["e@example.com"], -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/create_chat_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/create_chat_example_call_tool.js deleted file mode 100644 index 4cca52da6..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/create_chat_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.CreateChat"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_ids": [ - "12345", - "67890" - ], - "user_names": [ - "Alice", - "Bob" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/create_chat_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/create_chat_example_call_tool.py deleted file mode 100644 index df0ae6629..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/create_chat_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.CreateChat" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_ids': ['12345', '67890'], 'user_names': ['Alice', 'Bob'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_message_replies_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_message_replies_example_call_tool.js deleted file mode 100644 index dc2de5468..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_message_replies_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.GetChannelMessageReplies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "message_id": "12345", - "channel_id_or_name": "general", - "team_id_or_name": "teamA" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_message_replies_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_message_replies_example_call_tool.py deleted file mode 100644 index c61e79233..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_message_replies_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.GetChannelMessageReplies" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'message_id': '12345', 'channel_id_or_name': 'general', 'team_id_or_name': 'teamA' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_messages_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_messages_example_call_tool.js deleted file mode 100644 index de6d74514..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_messages_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.GetChannelMessages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_id": "12345", - "limit": 50, - "team_id_or_name": "Engineering" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_messages_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_messages_example_call_tool.py deleted file mode 100644 index 0c3fffa1a..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_messages_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.GetChannelMessages" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_id': '12345', 'limit': 50, 'team_id_or_name': 'Engineering' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_metadata_example_call_tool.js deleted file mode 100644 index 1617e96df..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_metadata_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.GetChannelMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_id": "12345", - "team_id_or_name": "Engineering" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_metadata_example_call_tool.py deleted file mode 100644 index 281659706..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_channel_metadata_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.GetChannelMetadata" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_id': '12345', 'team_id_or_name': 'Engineering' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_message_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_message_by_id_example_call_tool.js deleted file mode 100644 index 0c5c5b7cd..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_message_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.GetChatMessageById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "message_id": "12345", - "chat_id": "67890", - "user_ids": [ - "user1", - "user2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_message_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_message_by_id_example_call_tool.py deleted file mode 100644 index 8c054a7b2..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_message_by_id_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.GetChatMessageById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'message_id': '12345', 'chat_id': '67890', 'user_ids': ['user1', 'user2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_messages_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_messages_example_call_tool.js deleted file mode 100644 index 1ce9134e7..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_messages_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.GetChatMessages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "chat_id": "12345", - "user_ids": [ - "user1", - "user2" - ], - "start_datetime": "2023-10-01 00:00:00", - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_messages_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_messages_example_call_tool.py deleted file mode 100644 index 8f9a78b5d..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_messages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.GetChatMessages" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'chat_id': '12345', - 'user_ids': ['user1', 'user2'], - 'start_datetime': '2023-10-01 00:00:00', - 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_metadata_example_call_tool.js deleted file mode 100644 index 66a9edb26..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_metadata_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.GetChatMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "chat_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_metadata_example_call_tool.py deleted file mode 100644 index f89e25870..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_chat_metadata_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.GetChatMetadata" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'chat_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_signed_in_user_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/get_signed_in_user_example_call_tool.js deleted file mode 100644 index e07ca7515..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_signed_in_user_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.GetSignedInUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_signed_in_user_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/get_signed_in_user_example_call_tool.py deleted file mode 100644 index 77ad95d22..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_signed_in_user_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.GetSignedInUser" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_team_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/get_team_example_call_tool.js deleted file mode 100644 index 4f6dc8ee0..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_team_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.GetTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/get_team_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/get_team_example_call_tool.py deleted file mode 100644 index 7267baa3a..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/get_team_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.GetTeam" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/list_channels_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/list_channels_example_call_tool.js deleted file mode 100644 index ad7607179..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/list_channels_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.ListChannels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 10, - "team_id_or_name": "Engineering Team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/list_channels_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/list_channels_example_call_tool.py deleted file mode 100644 index 3825c0831..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/list_channels_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.ListChannels" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'limit': 10, 'team_id_or_name': 'Engineering Team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/list_chats_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/list_chats_example_call_tool.js deleted file mode 100644 index d9425810b..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/list_chats_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.ListChats"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/list_chats_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/list_chats_example_call_tool.py deleted file mode 100644 index c46c6b65d..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/list_chats_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.ListChats" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'limit': 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/list_team_members_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/list_team_members_example_call_tool.js deleted file mode 100644 index 1369176e3..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/list_team_members_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.ListTeamMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "12345", - "limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/list_team_members_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/list_team_members_example_call_tool.py deleted file mode 100644 index 083dfee26..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/list_team_members_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.ListTeamMembers" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': '12345', 'limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/list_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/list_teams_example_call_tool.js deleted file mode 100644 index 704530437..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/list_teams_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.ListTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "membership_type": "direct_member_of_the_team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/list_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/list_teams_example_call_tool.py deleted file mode 100644 index 7b52be407..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/list_teams_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.ListTeams" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'membership_type': 'direct_member_of_the_team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/list_users_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/list_users_example_call_tool.js deleted file mode 100644 index e61521e68..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/list_users_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.ListUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 100, - "offset": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/list_users_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/list_users_example_call_tool.py deleted file mode 100644 index f72f5505d..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/list_users_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.ListUsers" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'limit': 100, 'offset': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/reply_to_channel_message_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/reply_to_channel_message_example_call_tool.js deleted file mode 100644 index a6caaf173..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/reply_to_channel_message_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.ReplyToChannelMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "reply_content": "Thanks for the update!", - "message_id": "12345", - "channel_id_or_name": "general", - "team_id_or_name": "Engineering Team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/reply_to_channel_message_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/reply_to_channel_message_example_call_tool.py deleted file mode 100644 index fd8498f48..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/reply_to_channel_message_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.ReplyToChannelMessage" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'reply_content': 'Thanks for the update!', - 'message_id': '12345', - 'channel_id_or_name': 'general', - 'team_id_or_name': 'Engineering Team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/reply_to_chat_message_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/reply_to_chat_message_example_call_tool.js deleted file mode 100644 index 98bf18eaa..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/reply_to_chat_message_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.ReplyToChatMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "reply_content": "Thanks for the update!", - "message_id": "msg12345", - "chat_id": "chat67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/reply_to_chat_message_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/reply_to_chat_message_example_call_tool.py deleted file mode 100644 index 0ae1b9f0c..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/reply_to_chat_message_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.ReplyToChatMessage" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'reply_content': 'Thanks for the update!', 'message_id': 'msg12345', 'chat_id': 'chat67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/search_channels_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/search_channels_example_call_tool.js deleted file mode 100644 index 4daa42be7..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/search_channels_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.SearchChannels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": [ - "project", - "updates" - ], - "match_type": "partial_match_all_keywords", - "limit": 10, - "team_id_or_name": "Engineering Team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/search_channels_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/search_channels_example_call_tool.py deleted file mode 100644 index f5596633a..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/search_channels_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.SearchChannels" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'keywords': ['project', 'updates'], - 'match_type': 'partial_match_all_keywords', - 'limit': 10, - 'team_id_or_name': 'Engineering Team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/search_messages_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/search_messages_example_call_tool.js deleted file mode 100644 index 821b95041..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/search_messages_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.SearchMessages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": "project update", - "limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/search_messages_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/search_messages_example_call_tool.py deleted file mode 100644 index 808b6f521..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/search_messages_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.SearchMessages" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'keywords': 'project update', 'limit': 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/search_people_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/search_people_example_call_tool.js deleted file mode 100644 index 4d3da3bea..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/search_people_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.SearchPeople"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": [ - "John Doe", - "Jane Smith" - ], - "match_type": "match_any_of_the_keywords", - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/search_people_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/search_people_example_call_tool.py deleted file mode 100644 index 75a147637..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/search_people_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.SearchPeople" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'keywords': ['John Doe', 'Jane Smith'], 'match_type': 'match_any_of_the_keywords', 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/search_team_members_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/search_team_members_example_call_tool.js deleted file mode 100644 index 5987ef8fd..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/search_team_members_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.SearchTeamMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_name_starts_with": "A", - "team_id": "12345", - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/search_team_members_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/search_team_members_example_call_tool.py deleted file mode 100644 index 90393b106..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/search_team_members_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.SearchTeamMembers" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_name_starts_with': 'A', 'team_id': '12345', 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/search_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/search_teams_example_call_tool.js deleted file mode 100644 index 1957a70fb..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/search_teams_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.SearchTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_name_starts_with": "Dev", - "limit": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/search_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/search_teams_example_call_tool.py deleted file mode 100644 index 5eae8c94e..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/search_teams_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.SearchTeams" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_name_starts_with': 'Dev', 'limit': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/search_users_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/search_users_example_call_tool.js deleted file mode 100644 index c6b032ae9..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/search_users_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.SearchUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": [ - "john", - "doe" - ], - "match_type": "match_any_of_the_keywords", - "limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/search_users_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/search_users_example_call_tool.py deleted file mode 100644 index ac7793b2a..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/search_users_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.SearchUsers" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'keywords': ['john', 'doe'], 'match_type': 'match_any_of_the_keywords', 'limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/send_message_to_channel_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/send_message_to_channel_example_call_tool.js deleted file mode 100644 index 3d5531b02..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/send_message_to_channel_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.SendMessageToChannel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "message": "Hello team!", - "channel_id_or_name": "general", - "team_id_or_name": "Engineering" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/send_message_to_channel_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/send_message_to_channel_example_call_tool.py deleted file mode 100644 index a0be0f842..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/send_message_to_channel_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.SendMessageToChannel" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'message': 'Hello team!', 'channel_id_or_name': 'general', 'team_id_or_name': 'Engineering' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/send_message_to_chat_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/send_message_to_chat_example_call_tool.js deleted file mode 100644 index 00634881d..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/send_message_to_chat_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.SendMessageToChat"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "message": "Hello team!", - "chat_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/send_message_to_chat_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/send_message_to_chat_example_call_tool.py deleted file mode 100644 index 1be64eef4..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/send_message_to_chat_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.SendMessageToChat" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'message': 'Hello team!', 'chat_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/microsoft_teams/who_am_i_example_call_tool.js deleted file mode 100644 index fbfee8dcc..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/who_am_i_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MicrosoftTeams.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/microsoft_teams/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/microsoft_teams/who_am_i_example_call_tool.py deleted file mode 100644 index f63365341..000000000 --- a/public/examples/integrations/mcp-servers/microsoft_teams/who_am_i_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MicrosoftTeams.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/add_app_card_to_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/add_app_card_to_board_example_call_tool.js deleted file mode 100644 index c5c39acbe..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_app_card_to_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AddAppCardToBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_identifier": "board_12345", - "request_body": "{\"title\":\"New App Card\",\"description\":\"This is a sample app card.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/add_app_card_to_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/add_app_card_to_board_example_call_tool.py deleted file mode 100644 index 2f518b8ed..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_app_card_to_board_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AddAppCardToBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'board_identifier': 'board_12345', - 'request_body': '{"title":"New App Card","description":"This is a sample app card."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/add_board_frame_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/add_board_frame_example_call_tool.js deleted file mode 100644 index d51cdf6f0..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_board_frame_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AddBoardFrame"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "frame_fill_color": "#f5f692", - "frame_title": "My Frame", - "frame_width_in_pixels": 300, - "frame_height_pixels": 200, - "x_axis_position_on_board": 50, - "position_y_coordinate": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/add_board_frame_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/add_board_frame_example_call_tool.py deleted file mode 100644 index 4a534c007..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_board_frame_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AddBoardFrame" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', - 'frame_fill_color': '#f5f692', - 'frame_title': 'My Frame', - 'frame_width_in_pixels': 300, - 'frame_height_pixels': 200, - 'x_axis_position_on_board': 50, - 'position_y_coordinate': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/add_card_to_miro_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/add_card_to_miro_board_example_call_tool.js deleted file mode 100644 index 2c8d1a7a0..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_card_to_miro_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AddCardToMiroBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "miro_board_id": "12345", - "request_body": "{\"title\":\"New Task\",\"description\":\"This is a new task card.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/add_card_to_miro_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/add_card_to_miro_board_example_call_tool.py deleted file mode 100644 index 94443a780..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_card_to_miro_board_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AddCardToMiroBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'miro_board_id': '12345', - 'request_body': '{"title":"New Task","description":"This is a new task card."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/add_connector_to_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/add_connector_to_board_example_call_tool.js deleted file mode 100644 index a91e89eb2..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_connector_to_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AddConnectorToBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_unique_id": "board_12345", - "request_body": "{\"type\":\"connector\",\"start\":{\"x\":100,\"y\":200},\"end\":{\"x\":300,\"y\":400}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/add_connector_to_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/add_connector_to_board_example_call_tool.py deleted file mode 100644 index 21f600a67..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_connector_to_board_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AddConnectorToBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'board_unique_id': 'board_12345', - 'request_body': '{"type":"connector","start":{"x":100,"y":200},"end":{"x":300,"y":400}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/add_document_to_board_by_url_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/add_document_to_board_by_url_example_call_tool.js deleted file mode 100644 index aa52ef1a1..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_document_to_board_by_url_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AddDocumentToBoardByUrl"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "document_title": "Project Plan", - "document_url": "https://example.com/project-plan.pdf", - "item_height_in_pixels": 600, - "item_width_in_pixels": 400 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/add_document_to_board_by_url_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/add_document_to_board_by_url_example_call_tool.py deleted file mode 100644 index 6c173698f..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_document_to_board_by_url_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AddDocumentToBoardByUrl" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', - 'document_title': 'Project Plan', - 'document_url': 'https://example.com/project-plan.pdf', - 'item_height_in_pixels': 600, - 'item_width_in_pixels': 400 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/add_embed_item_to_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/add_embed_item_to_board_example_call_tool.js deleted file mode 100644 index 280e0b0d2..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_embed_item_to_board_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AddEmbedItemToBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "content_url": "https://example.com/content", - "content_display_mode": "inline", - "embed_item_width_pixels": 300, - "item_height": 200 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/add_embed_item_to_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/add_embed_item_to_board_example_call_tool.py deleted file mode 100644 index 2cfa6f9fc..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_embed_item_to_board_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AddEmbedItemToBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', - 'content_url': 'https://example.com/content', - 'content_display_mode': 'inline', - 'embed_item_width_pixels': 300, - 'item_height': 200 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/add_flowchart_shape_to_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/add_flowchart_shape_to_board_example_call_tool.js deleted file mode 100644 index 3609c8ad2..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_flowchart_shape_to_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AddFlowchartShapeToBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_identifier": "board_12345", - "request_body": "{\"shape\":\"rectangle\",\"text\":\"Start\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/add_flowchart_shape_to_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/add_flowchart_shape_to_board_example_call_tool.py deleted file mode 100644 index 260a168c1..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_flowchart_shape_to_board_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AddFlowchartShapeToBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'board_identifier': 'board_12345', - 'request_body': '{"shape":"rectangle","text":"Start"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/add_image_to_miro_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/add_image_to_miro_board_example_call_tool.js deleted file mode 100644 index 0e1e3afc2..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_image_to_miro_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AddImageToMiroBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_unique_identifier": "board_12345", - "image_url": "https://example.com/image.png", - "image_title": "Sample Image" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/add_image_to_miro_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/add_image_to_miro_board_example_call_tool.py deleted file mode 100644 index 2f35350e8..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_image_to_miro_board_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AddImageToMiroBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_unique_identifier': 'board_12345', - 'image_url': 'https://example.com/image.png', - 'image_title': 'Sample Image' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/add_items_to_miro_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/add_items_to_miro_board_example_call_tool.js deleted file mode 100644 index 27dc6fcac..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_items_to_miro_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AddItemsToMiroBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "miro_board_identifier": "board_12345", - "request_body": "{\"items\":[{\"type\":\"sticky_note\",\"content\":\"Note 1\"},{\"type\":\"card\",\"content\":\"Card 1\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/add_items_to_miro_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/add_items_to_miro_board_example_call_tool.py deleted file mode 100644 index 5f4c68f5c..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_items_to_miro_board_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AddItemsToMiroBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'miro_board_identifier': 'board_12345', - 'request_body': '{"items":[{"type":"sticky_note","content":"Note ' - '1"},{"type":"card","content":"Card 1"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/add_mindmap_node_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/add_mindmap_node_example_call_tool.js deleted file mode 100644 index ccb14ec9b..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_mindmap_node_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AddMindmapNode"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "mindmap_node_content": "New Idea", - "node_type": "text", - "x_coordinate": 100, - "y_coordinate": 200 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/add_mindmap_node_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/add_mindmap_node_example_call_tool.py deleted file mode 100644 index 1451ce37e..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_mindmap_node_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AddMindmapNode" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', - 'mindmap_node_content': 'New Idea', - 'node_type': 'text', - 'x_coordinate': 100, - 'y_coordinate': 200 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/add_miro_project_member_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/add_miro_project_member_example_call_tool.js deleted file mode 100644 index 68f210b66..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_miro_project_member_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AddMiroProjectMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "project_id": "proj_67890", - "project_member_role": "editor", - "team_id": "team_54321", - "user_email_id": "user@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/add_miro_project_member_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/add_miro_project_member_example_call_tool.py deleted file mode 100644 index e2f37fb23..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_miro_project_member_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AddMiroProjectMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'project_id': 'proj_67890', - 'project_member_role': 'editor', - 'team_id': 'team_54321', - 'user_email_id': 'user@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/add_shape_to_miro_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/add_shape_to_miro_board_example_call_tool.js deleted file mode 100644 index 6aea4b97c..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_shape_to_miro_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AddShapeToMiroBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_id": "12345", - "request_body": "{\"shape\":\"rectangle\",\"color\":\"blue\",\"size\":\"large\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/add_shape_to_miro_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/add_shape_to_miro_board_example_call_tool.py deleted file mode 100644 index 15e3511a1..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_shape_to_miro_board_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AddShapeToMiroBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'board_id': '12345', - 'request_body': '{"shape":"rectangle","color":"blue","size":"large"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/add_sticky_note_to_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/add_sticky_note_to_board_example_call_tool.js deleted file mode 100644 index e933b12a2..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_sticky_note_to_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AddStickyNoteToBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_id": "board_123", - "request_body": "{\"text\":\"Sample sticky note\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/add_sticky_note_to_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/add_sticky_note_to_board_example_call_tool.py deleted file mode 100644 index 3e9a6d14e..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_sticky_note_to_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AddStickyNoteToBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'board_id': 'board_123', 'request_body': '{"text":"Sample sticky note"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/add_text_to_miro_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/add_text_to_miro_board_example_call_tool.js deleted file mode 100644 index e83825147..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_text_to_miro_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AddTextToMiroBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_identifier": "board_12345", - "request_body": "{\"text\":\"Hello, Miro!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/add_text_to_miro_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/add_text_to_miro_board_example_call_tool.py deleted file mode 100644 index a260dfaed..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/add_text_to_miro_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AddTextToMiroBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'board_identifier': 'board_12345', 'request_body': '{"text":"Hello, Miro!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/attach_tag_to_item_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/attach_tag_to_item_example_call_tool.js deleted file mode 100644 index 6d6373d7a..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/attach_tag_to_item_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.AttachTagToItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "item_identifier": "item_67890", - "tag_id": "tag_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/attach_tag_to_item_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/attach_tag_to_item_example_call_tool.py deleted file mode 100644 index 41890bc14..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/attach_tag_to_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.AttachTagToItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'item_identifier': 'item_67890', 'tag_id': 'tag_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/copy_miro_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/copy_miro_board_example_call_tool.js deleted file mode 100644 index a1a4672dd..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/copy_miro_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.CopyMiroBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "source_board_id": "12345", - "request_body": "{\"name\":\"Copy of Board 1\",\"description\":\"This is a copy of the original board.\",\"sharing_policy\":\"public\",\"permissions\":\"edit\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/copy_miro_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/copy_miro_board_example_call_tool.py deleted file mode 100644 index 0c3496e1f..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/copy_miro_board_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.CopyMiroBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'source_board_id': '12345', - 'request_body': '{"name":"Copy of Board 1","description":"This is a copy of the original ' - 'board.","sharing_policy":"public","permissions":"edit"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/create_board_export_job_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/create_board_export_job_example_call_tool.js deleted file mode 100644 index 53e7e935c..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/create_board_export_job_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.CreateBoardExportJob"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_export_request_id": "job_12345", - "organization_id": "org_67890", - "export_board_ids": [ - "board_1", - "board_2" - ], - "export_format": "PDF" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/create_board_export_job_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/create_board_export_job_example_call_tool.py deleted file mode 100644 index 4d26c3a3f..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/create_board_export_job_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.CreateBoardExportJob" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_export_request_id': 'job_12345', - 'organization_id': 'org_67890', - 'export_board_ids': ['board_1', 'board_2'], - 'export_format': 'PDF' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/create_board_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/create_board_subscription_example_call_tool.js deleted file mode 100644 index 359b826cd..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/create_board_subscription_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.CreateBoardSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "webhook_callback_url": "https://example.com/webhook", - "webhook_status": "enabled" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/create_board_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/create_board_subscription_example_call_tool.py deleted file mode 100644 index 42346eafc..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/create_board_subscription_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.CreateBoardSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', - 'webhook_callback_url': 'https://example.com/webhook', - 'webhook_status': 'enabled' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/create_board_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/create_board_tag_example_call_tool.js deleted file mode 100644 index 60cfccbef..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/create_board_tag_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.CreateBoardTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_unique_id": "12345", - "tag_title": "Urgent", - "tag_fill_color": "red" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/create_board_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/create_board_tag_example_call_tool.py deleted file mode 100644 index 519161b0a..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/create_board_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.CreateBoardTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_unique_id': '12345', 'tag_title': 'Urgent', 'tag_fill_color': 'red' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/create_enterprise_project_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/create_enterprise_project_example_call_tool.js deleted file mode 100644 index 7395164dc..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/create_enterprise_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.CreateEnterpriseProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "project_name": "New Marketing Strategy", - "team_id": "team_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/create_enterprise_project_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/create_enterprise_project_example_call_tool.py deleted file mode 100644 index b0e4642ca..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/create_enterprise_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.CreateEnterpriseProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'project_name': 'New Marketing Strategy', 'team_id': 'team_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/create_enterprise_team_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/create_enterprise_team_example_call_tool.js deleted file mode 100644 index 36d710b75..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/create_enterprise_team_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.CreateEnterpriseTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "team_name": "Development Team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/create_enterprise_team_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/create_enterprise_team_example_call_tool.py deleted file mode 100644 index 46ef700cf..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/create_enterprise_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.CreateEnterpriseTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'team_name': 'Development Team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/create_group_on_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/create_group_on_board_example_call_tool.js deleted file mode 100644 index f389e4a6d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/create_group_on_board_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.CreateGroupOnBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "item_ids": [ - "item_1", - "item_2", - "item_3" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/create_group_on_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/create_group_on_board_example_call_tool.py deleted file mode 100644 index 915af0a26..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/create_group_on_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.CreateGroupOnBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'item_ids': ['item_1', 'item_2', 'item_3'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/create_miro_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/create_miro_board_example_call_tool.js deleted file mode 100644 index b0dc338e0..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/create_miro_board_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.CreateMiroBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Board\",\"sharingPolicy\":\"private\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/create_miro_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/create_miro_board_example_call_tool.py deleted file mode 100644 index 2b055175e..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/create_miro_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.CreateMiroBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"name":"New Board","sharingPolicy":"private"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_app_card_from_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_app_card_from_board_example_call_tool.js deleted file mode 100644 index 635ec1c92..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_app_card_from_board_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteAppCardFromBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "board_12345", - "item_id": "item_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_app_card_from_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_app_card_from_board_example_call_tool.py deleted file mode 100644 index bf6d1ef70..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_app_card_from_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteAppCardFromBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': 'board_12345', 'item_id': 'item_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_board_connector_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_board_connector_example_call_tool.js deleted file mode 100644 index feefe968e..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_board_connector_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteBoardConnector"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_unique_identifier": "board_12345", - "connector_id": "connector_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_board_connector_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_board_connector_example_call_tool.py deleted file mode 100644 index e0eb03014..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_board_connector_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteBoardConnector" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_unique_identifier': 'board_12345', 'connector_id': 'connector_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_board_frame_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_board_frame_example_call_tool.js deleted file mode 100644 index 643cc0fdc..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_board_frame_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteBoardFrame"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "123456", - "frame_id": "frame789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_board_frame_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_board_frame_example_call_tool.py deleted file mode 100644 index 691ba78dd..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_board_frame_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteBoardFrame" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '123456', 'frame_id': 'frame789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_board_group_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_board_group_example_call_tool.js deleted file mode 100644 index 2488bd7d4..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_board_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteBoardGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "delete_items_with_group": true, - "group_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_board_group_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_board_group_example_call_tool.py deleted file mode 100644 index 4b723cf99..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_board_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteBoardGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'delete_items_with_group': True, 'group_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_board_image_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_board_image_example_call_tool.js deleted file mode 100644 index 5b2c9bd8d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_board_image_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteBoardImage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "image_item_id": "image_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_board_image_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_board_image_example_call_tool.py deleted file mode 100644 index 0dc29b1d6..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_board_image_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteBoardImage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'image_item_id': 'image_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_board_item_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_board_item_example_call_tool.js deleted file mode 100644 index 80a538660..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_board_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteBoardItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "item_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_board_item_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_board_item_example_call_tool.py deleted file mode 100644 index 05da7900a..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_board_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteBoardItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'item_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_board_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_board_tag_example_call_tool.js deleted file mode 100644 index 2bdf14dd9..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_board_tag_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteBoardTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "tag_id_to_delete": "tag_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_board_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_board_tag_example_call_tool.py deleted file mode 100644 index ecaa5a867..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_board_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteBoardTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'tag_id_to_delete': 'tag_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_card_item_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_card_item_example_call_tool.js deleted file mode 100644 index e39244f0e..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_card_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteCardItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "item_id": "item_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_card_item_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_card_item_example_call_tool.py deleted file mode 100644 index 426b441b6..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_card_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteCardItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'item_id': 'item_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_document_item_from_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_document_item_from_board_example_call_tool.js deleted file mode 100644 index 7b7a3b807..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_document_item_from_board_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteDocumentItemFromBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "item_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_document_item_from_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_document_item_from_board_example_call_tool.py deleted file mode 100644 index 614c9a33f..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_document_item_from_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteDocumentItemFromBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'item_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_enterprise_project_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_enterprise_project_example_call_tool.js deleted file mode 100644 index 74f7a51c9..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_enterprise_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteEnterpriseProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "project_id_to_delete": "proj_67890", - "team_id": "team_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_enterprise_project_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_enterprise_project_example_call_tool.py deleted file mode 100644 index 8f568b821..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_enterprise_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteEnterpriseProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'project_id_to_delete': 'proj_67890', 'team_id': 'team_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_enterprise_team_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_enterprise_team_example_call_tool.js deleted file mode 100644 index 333df155a..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_enterprise_team_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteEnterpriseTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "team_id": "team_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_enterprise_team_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_enterprise_team_example_call_tool.py deleted file mode 100644 index 859da8bd7..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_enterprise_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteEnterpriseTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'team_id': 'team_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_flowchart_shape_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_flowchart_shape_example_call_tool.js deleted file mode 100644 index ac6d79c30..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_flowchart_shape_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteFlowchartShape"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_unique_id": "board_12345", - "item_id": "shape_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_flowchart_shape_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_flowchart_shape_example_call_tool.py deleted file mode 100644 index 27160ea81..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_flowchart_shape_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteFlowchartShape" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_unique_id': 'board_12345', 'item_id': 'shape_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_mindmap_node_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_mindmap_node_example_call_tool.js deleted file mode 100644 index a2a2f864c..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_mindmap_node_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteMindmapNode"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "mindmap_node_id": "node_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_mindmap_node_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_mindmap_node_example_call_tool.py deleted file mode 100644 index ac22bb8cb..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_mindmap_node_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteMindmapNode" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'mindmap_node_id': 'node_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_miro_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_miro_board_example_call_tool.js deleted file mode 100644 index c7376dbd5..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_miro_board_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteMiroBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_miro_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_miro_board_example_call_tool.py deleted file mode 100644 index 779f1a71b..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_miro_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteMiroBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': '12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_miro_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_miro_webhook_subscription_example_call_tool.js deleted file mode 100644 index 6a901e528..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_miro_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteMiroWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_miro_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_miro_webhook_subscription_example_call_tool.py deleted file mode 100644 index caa177424..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_miro_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteMiroWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_shape_from_miro_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_shape_from_miro_board_example_call_tool.js deleted file mode 100644 index 657eddc68..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_shape_from_miro_board_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteShapeFromMiroBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "board_12345", - "item_id": "shape_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_shape_from_miro_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_shape_from_miro_board_example_call_tool.py deleted file mode 100644 index b44c5d885..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_shape_from_miro_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteShapeFromMiroBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': 'board_12345', 'item_id': 'shape_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_sticky_note_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/delete_sticky_note_example_call_tool.js deleted file mode 100644 index a71852656..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_sticky_note_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.DeleteStickyNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "board_123", - "sticky_note_id": "note_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/delete_sticky_note_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/delete_sticky_note_example_call_tool.py deleted file mode 100644 index 4ce56f13e..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/delete_sticky_note_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.DeleteStickyNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': 'board_123', 'sticky_note_id': 'note_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/fetch_board_content_changes_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/fetch_board_content_changes_example_call_tool.js deleted file mode 100644 index aa028b993..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/fetch_board_content_changes_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.FetchBoardContentChanges"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_modification_datetime": "2023-10-15T23:59:59Z", - "organization_id": "org_123456", - "start_date_time": "2023-10-01T00:00:00Z", - "board_ids": [ - "board_1", - "board_2" - ], - "max_results_per_call": 50, - "sort_order_by_date": "desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/fetch_board_content_changes_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/fetch_board_content_changes_example_call_tool.py deleted file mode 100644 index 40b6f921e..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/fetch_board_content_changes_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.FetchBoardContentChanges" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_modification_datetime': '2023-10-15T23:59:59Z', - 'organization_id': 'org_123456', - 'start_date_time': '2023-10-01T00:00:00Z', - 'board_ids': ['board_1', 'board_2'], - 'max_results_per_call': 50, - 'sort_order_by_date': 'desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_access_token_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_access_token_info_example_call_tool.js deleted file mode 100644 index cb34e8ccd..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_access_token_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetAccessTokenInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_access_token_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_access_token_info_example_call_tool.py deleted file mode 100644 index 8e7dee50e..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_access_token_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetAccessTokenInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_app_usage_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_app_usage_metrics_example_call_tool.js deleted file mode 100644 index 43d9ae496..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_app_usage_metrics_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetAppUsageMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_id": "app123", - "end_date": "2024-12-31", - "start_date_utc": "2024-01-01", - "group_data_by_period": "MONTH" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_app_usage_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_app_usage_metrics_example_call_tool.py deleted file mode 100644 index 1dd339375..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_app_usage_metrics_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetAppUsageMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_id': 'app123', - 'end_date': '2024-12-31', - 'start_date_utc': '2024-01-01', - 'group_data_by_period': 'MONTH' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_classification_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_board_classification_settings_example_call_tool.js deleted file mode 100644 index 0a0aa6dcf..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_classification_settings_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetBoardClassificationSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_classification_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_board_classification_settings_example_call_tool.py deleted file mode 100644 index 5c64c1613..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_classification_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetBoardClassificationSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_connectors_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_board_connectors_example_call_tool.js deleted file mode 100644 index 0c86bd668..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_connectors_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetBoardConnectors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_123", - "pagination_cursor": "cursor_456", - "result_limit": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_connectors_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_board_connectors_example_call_tool.py deleted file mode 100644 index 667bcf6af..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_connectors_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetBoardConnectors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_123', 'pagination_cursor': 'cursor_456', 'result_limit': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_frame_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_board_frame_info_example_call_tool.js deleted file mode 100644 index da009cfd4..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_frame_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetBoardFrameInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_unique_id": "board_12345", - "frame_id": "frame_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_frame_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_board_frame_info_example_call_tool.py deleted file mode 100644 index e43185dfd..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_frame_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetBoardFrameInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_unique_id': 'board_12345', 'frame_id': 'frame_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_board_groups_example_call_tool.js deleted file mode 100644 index 958c3f0ae..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_groups_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetBoardGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "max_items_to_return": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_board_groups_example_call_tool.py deleted file mode 100644 index f86c2bcb2..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetBoardGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'max_items_to_return': 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_item_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_board_item_info_example_call_tool.js deleted file mode 100644 index f8212f8b6..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_item_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetBoardItemInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "item_identifier": "item_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_item_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_board_item_info_example_call_tool.py deleted file mode 100644 index 3d565e936..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_item_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetBoardItemInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'item_identifier': 'item_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_items_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_board_items_example_call_tool.js deleted file mode 100644 index a28e5ae12..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_items_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetBoardItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "12345", - "item_type": "shape", - "pagination_limit": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_items_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_board_items_example_call_tool.py deleted file mode 100644 index 55c7e3a88..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetBoardItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': '12345', 'item_type': 'shape', 'pagination_limit': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_member_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_board_member_info_example_call_tool.js deleted file mode 100644 index 712d1bff7..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_member_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetBoardMemberInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "board_member_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_member_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_board_member_info_example_call_tool.py deleted file mode 100644 index e694fd36d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_member_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetBoardMemberInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'board_member_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_board_tags_example_call_tool.js deleted file mode 100644 index 2ce1776c9..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_tags_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetBoardTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "maximum_number_of_tags": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_board_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_board_tags_example_call_tool.py deleted file mode 100644 index 9c99324ad..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_board_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetBoardTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'maximum_number_of_tags': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_card_item_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_card_item_info_example_call_tool.js deleted file mode 100644 index 54829d2aa..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_card_item_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetCardItemInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "item_unique_id": "item_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_card_item_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_card_item_info_example_call_tool.py deleted file mode 100644 index c4925e3ca..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_card_item_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetCardItemInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'item_unique_id': 'item_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_default_team_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_default_team_settings_example_call_tool.js deleted file mode 100644 index 39ca2b55c..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_default_team_settings_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetDefaultTeamSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_default_team_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_default_team_settings_example_call_tool.py deleted file mode 100644 index 3c75512d5..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_default_team_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetDefaultTeamSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_embed_item_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_embed_item_info_example_call_tool.js deleted file mode 100644 index f62314048..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_embed_item_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetEmbedItemInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "embed_item_id": "embed_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_embed_item_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_embed_item_info_example_call_tool.py deleted file mode 100644 index 591d89907..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_embed_item_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetEmbedItemInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'embed_item_id': 'embed_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_enterprise_team_members_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_enterprise_team_members_example_call_tool.js deleted file mode 100644 index 16e282fb5..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_enterprise_team_members_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetEnterpriseTeamMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "team_identifier": "team_67890", - "filter_by_role": "admin", - "member_retrieval_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_enterprise_team_members_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_enterprise_team_members_example_call_tool.py deleted file mode 100644 index 1e7a751c1..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_enterprise_team_members_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetEnterpriseTeamMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'team_identifier': 'team_67890', - 'filter_by_role': 'admin', - 'member_retrieval_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_enterprise_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_enterprise_teams_example_call_tool.js deleted file mode 100644 index c5be318c9..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_enterprise_teams_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetEnterpriseTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "maximum_results_limit": 10, - "team_name_filter": "dev" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_enterprise_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_enterprise_teams_example_call_tool.py deleted file mode 100644 index beaf7528b..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_enterprise_teams_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetEnterpriseTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'maximum_results_limit': 10, 'team_name_filter': 'dev' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_export_job_status_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_export_job_status_example_call_tool.js deleted file mode 100644 index 414f1de27..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_export_job_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetExportJobStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_export_job_id": "job_12345", - "organization_id": "org_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_export_job_status_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_export_job_status_example_call_tool.py deleted file mode 100644 index 48d7bd09d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_export_job_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetExportJobStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_export_job_id': 'job_12345', 'organization_id': 'org_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_group_items_miro_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_group_items_miro_example_call_tool.js deleted file mode 100644 index 84e2e9fc4..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_group_items_miro_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetGroupItemsMiro"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_unique_identifier": "board_12345", - "group_id": "group_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_group_items_miro_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_group_items_miro_example_call_tool.py deleted file mode 100644 index c17893095..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_group_items_miro_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetGroupItemsMiro" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_unique_identifier': 'board_12345', 'group_id': 'group_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_image_item_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_image_item_info_example_call_tool.js deleted file mode 100644 index c33c90e69..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_image_item_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetImageItemInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_unique_id": "board_12345", - "image_item_id": "image_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_image_item_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_image_item_info_example_call_tool.py deleted file mode 100644 index 77258f3c9..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_image_item_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetImageItemInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_unique_id': 'board_12345', 'image_item_id': 'image_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_items_by_group_id_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_items_by_group_id_example_call_tool.js deleted file mode 100644 index d20f5e69d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_items_by_group_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetItemsByGroupId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "group_item_id": "group_67890", - "max_items_per_request": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_items_by_group_id_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_items_by_group_id_example_call_tool.py deleted file mode 100644 index d4fb9083d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_items_by_group_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetItemsByGroupId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'group_item_id': 'group_67890', 'max_items_per_request': 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_items_within_frame_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_items_within_frame_example_call_tool.js deleted file mode 100644 index df88392f5..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_items_within_frame_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetItemsWithinFrame"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "frame_id": "frame_1", - "item_retrieval_limit": "10", - "item_type_filter": "sticky_note" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_items_within_frame_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_items_within_frame_example_call_tool.py deleted file mode 100644 index 6807cdcbe..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_items_within_frame_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetItemsWithinFrame" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', - 'frame_id': 'frame_1', - 'item_retrieval_limit': '10', - 'item_type_filter': 'sticky_note' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_mindmap_nodes_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_mindmap_nodes_example_call_tool.js deleted file mode 100644 index fe8514953..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_mindmap_nodes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetMindmapNodes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "12345", - "maximum_results_limit": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_mindmap_nodes_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_mindmap_nodes_example_call_tool.py deleted file mode 100644 index fb8625bf7..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_mindmap_nodes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetMindmapNodes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': '12345', 'maximum_results_limit': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_miro_board_members_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_miro_board_members_example_call_tool.js deleted file mode 100644 index bb0199a1f..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_miro_board_members_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetMiroBoardMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "number_of_members_to_retrieve": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_miro_board_members_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_miro_board_members_example_call_tool.py deleted file mode 100644 index c039b7cd2..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_miro_board_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetMiroBoardMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'number_of_members_to_retrieve': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_miro_mindmap_node_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_miro_mindmap_node_example_call_tool.js deleted file mode 100644 index 822d19f04..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_miro_mindmap_node_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetMiroMindmapNode"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "mindmap_node_id": "node_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_miro_mindmap_node_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_miro_mindmap_node_example_call_tool.py deleted file mode 100644 index 1d51a4575..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_miro_mindmap_node_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetMiroMindmapNode" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'mindmap_node_id': 'node_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_miro_project_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_miro_project_info_example_call_tool.js deleted file mode 100644 index 8415fa9df..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_miro_project_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetMiroProjectInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "project_identifier": "proj_67890", - "team_id_for_project_info": "team_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_miro_project_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_miro_project_info_example_call_tool.py deleted file mode 100644 index 56564361e..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_miro_project_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetMiroProjectInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'project_identifier': 'proj_67890', - 'team_id_for_project_info': 'team_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_miro_subscription_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_miro_subscription_info_example_call_tool.js deleted file mode 100644 index 3c86bfc14..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_miro_subscription_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetMiroSubscriptionInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_miro_subscription_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_miro_subscription_info_example_call_tool.py deleted file mode 100644 index af134238d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_miro_subscription_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetMiroSubscriptionInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_organization_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_organization_info_example_call_tool.js deleted file mode 100644 index 031b2e27c..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_organization_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetOrganizationInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_organization_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_organization_info_example_call_tool.py deleted file mode 100644 index b3aa14279..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_organization_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetOrganizationInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_organization_member_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_organization_member_info_example_call_tool.js deleted file mode 100644 index 21f907a31..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_organization_member_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetOrganizationMemberInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "organization_member_id": "member_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_organization_member_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_organization_member_info_example_call_tool.py deleted file mode 100644 index ff74b6b2d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_organization_member_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetOrganizationMemberInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'organization_member_id': 'member_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_organization_members_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_organization_members_example_call_tool.js deleted file mode 100644 index aed7454d2..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_organization_members_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetOrganizationMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "include_only_active_members": true, - "result_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_organization_members_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_organization_members_example_call_tool.py deleted file mode 100644 index 74d193211..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_organization_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetOrganizationMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'include_only_active_members': True, 'result_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_project_member_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_project_member_info_example_call_tool.js deleted file mode 100644 index 27f6fa38f..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_project_member_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetProjectMemberInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id": "12345", - "organization_id": "org_67890", - "project_identifier": "proj_abc", - "team_identifier": "team_xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_project_member_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_project_member_info_example_call_tool.py deleted file mode 100644 index f55851bbe..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_project_member_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetProjectMemberInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id': '12345', - 'organization_id': 'org_67890', - 'project_identifier': 'proj_abc', - 'team_identifier': 'team_xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_project_members_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_project_members_example_call_tool.js deleted file mode 100644 index 47d68c473..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_project_members_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetProjectMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "project_identifier": "proj_67890", - "team_id": "team_abcde", - "maximum_results_per_call": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_project_members_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_project_members_example_call_tool.py deleted file mode 100644 index 51c6f2d74..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_project_members_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetProjectMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'project_identifier': 'proj_67890', - 'team_id': 'team_abcde', - 'maximum_results_per_call': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_project_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_project_settings_example_call_tool.js deleted file mode 100644 index 99471bd07..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_project_settings_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetProjectSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "project_id": "proj_67890", - "team_id": "team_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_project_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_project_settings_example_call_tool.py deleted file mode 100644 index 8daa49634..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_project_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetProjectSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'project_id': 'proj_67890', 'team_id': 'team_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_recent_audit_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_recent_audit_logs_example_call_tool.js deleted file mode 100644 index 40319b8de..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_recent_audit_logs_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetRecentAuditLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_date_for_audit_logs": "2023-10-01T12:00:00.000Z", - "start_date_time_for_audit_logs": "2023-09-01T12:00:00.000Z", - "maximum_results_limit": 50, - "sort_order": "DESC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_recent_audit_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_recent_audit_logs_example_call_tool.py deleted file mode 100644 index 081675857..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_recent_audit_logs_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetRecentAuditLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_date_for_audit_logs': '2023-10-01T12:00:00.000Z', - 'start_date_time_for_audit_logs': '2023-09-01T12:00:00.000Z', - 'maximum_results_limit': 50, - 'sort_order': 'DESC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_shape_information_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_shape_information_example_call_tool.js deleted file mode 100644 index 894029196..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_shape_information_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetShapeInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "shape_item_id": "shape_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_shape_information_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_shape_information_example_call_tool.py deleted file mode 100644 index 13a46c76c..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_shape_information_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetShapeInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'shape_item_id': 'shape_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_sticky_note_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_sticky_note_info_example_call_tool.js deleted file mode 100644 index d2e6e73ab..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_sticky_note_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetStickyNoteInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "miro_board_id": "board_12345", - "sticky_note_id": "note_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_sticky_note_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_sticky_note_info_example_call_tool.py deleted file mode 100644 index 886e6f58a..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_sticky_note_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetStickyNoteInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'miro_board_id': 'board_12345', 'sticky_note_id': 'note_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_tag_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_tag_info_example_call_tool.js deleted file mode 100644 index 3290e94cf..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_tag_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetTagInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "tag_identifier": "tag_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_tag_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_tag_info_example_call_tool.py deleted file mode 100644 index 36da15246..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_tag_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetTagInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'tag_identifier': 'tag_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_tags_from_item_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_tags_from_item_example_call_tool.js deleted file mode 100644 index 5038839ff..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_tags_from_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetTagsFromItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "item_identifier": "item_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_tags_from_item_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_tags_from_item_example_call_tool.py deleted file mode 100644 index 5b20f10dd..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_tags_from_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetTagsFromItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'item_identifier': 'item_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_team_board_classification_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_team_board_classification_settings_example_call_tool.js deleted file mode 100644 index d537d5f87..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_team_board_classification_settings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetTeamBoardClassificationSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "team_identifier": "team_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_team_board_classification_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_team_board_classification_settings_example_call_tool.py deleted file mode 100644 index 35c709e84..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_team_board_classification_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetTeamBoardClassificationSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'team_identifier': 'team_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_team_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_team_info_example_call_tool.js deleted file mode 100644 index 1f6e3ac81..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_team_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetTeamInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "team_id": "team_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_team_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_team_info_example_call_tool.py deleted file mode 100644 index d675c41ff..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_team_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetTeamInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'team_id': 'team_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_team_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_team_projects_example_call_tool.js deleted file mode 100644 index 500f613b5..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_team_projects_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetTeamProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "team_id": "team_67890", - "max_results_per_call": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_team_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_team_projects_example_call_tool.py deleted file mode 100644 index 601a38e99..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_team_projects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetTeamProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'team_id': 'team_67890', 'max_results_per_call': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_team_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_team_settings_example_call_tool.js deleted file mode 100644 index b0e0affcd..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_team_settings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetTeamSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "team_id": "team_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_team_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_team_settings_example_call_tool.py deleted file mode 100644 index 740dbfdaf..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_team_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetTeamSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'team_id': 'team_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_text_item_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_text_item_info_example_call_tool.js deleted file mode 100644 index edfa0c97e..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_text_item_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetTextItemInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "text_item_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_text_item_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_text_item_info_example_call_tool.py deleted file mode 100644 index 846a98975..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_text_item_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetTextItemInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'text_item_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/get_user_webhook_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/get_user_webhook_subscriptions_example_call_tool.js deleted file mode 100644 index 5290446c7..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_user_webhook_subscriptions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.GetUserWebhookSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor": "abc123", - "subscription_limit": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/get_user_webhook_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/get_user_webhook_subscriptions_example_call_tool.py deleted file mode 100644 index 4ede33eba..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/get_user_webhook_subscriptions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.GetUserWebhookSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor': 'abc123', 'subscription_limit': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/invite_miro_team_member_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/invite_miro_team_member_example_call_tool.js deleted file mode 100644 index 1a952e382..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/invite_miro_team_member_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.InviteMiroTeamMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "team_identifier": "team_67890", - "user_email_for_team_invitation": "user@example.com", - "team_member_role": "member" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/invite_miro_team_member_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/invite_miro_team_member_example_call_tool.py deleted file mode 100644 index 69ad1c23d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/invite_miro_team_member_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.InviteMiroTeamMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'team_identifier': 'team_67890', - 'user_email_for_team_invitation': 'user@example.com', - 'team_member_role': 'member' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/remove_board_item_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/remove_board_item_example_call_tool.js deleted file mode 100644 index 6d6ec8a85..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/remove_board_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RemoveBoardItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_unique_id": "board_12345", - "item_id": "item_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/remove_board_item_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/remove_board_item_example_call_tool.py deleted file mode 100644 index 3f4405adf..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/remove_board_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RemoveBoardItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_unique_id': 'board_12345', 'item_id': 'item_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/remove_board_member_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/remove_board_member_example_call_tool.js deleted file mode 100644 index 0ef61cebe..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/remove_board_member_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RemoveBoardMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_member_id": "member_12345", - "board_unique_id": "board_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/remove_board_member_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/remove_board_member_example_call_tool.py deleted file mode 100644 index 5f117bc11..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/remove_board_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RemoveBoardMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_member_id': 'member_12345', 'board_unique_id': 'board_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/remove_board_text_item_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/remove_board_text_item_example_call_tool.js deleted file mode 100644 index 2a090beb4..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/remove_board_text_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RemoveBoardTextItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "text_item_id": "text_item_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/remove_board_text_item_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/remove_board_text_item_example_call_tool.py deleted file mode 100644 index b8bef6ade..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/remove_board_text_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RemoveBoardTextItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'text_item_id': 'text_item_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/remove_embed_item_from_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/remove_embed_item_from_board_example_call_tool.js deleted file mode 100644 index 597b0217f..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/remove_embed_item_from_board_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RemoveEmbedItemFromBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "item_id_to_delete": "embed_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/remove_embed_item_from_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/remove_embed_item_from_board_example_call_tool.py deleted file mode 100644 index a87bcd830..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/remove_embed_item_from_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RemoveEmbedItemFromBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'item_id_to_delete': 'embed_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/remove_project_member_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/remove_project_member_example_call_tool.js deleted file mode 100644 index 4abf6d37c..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/remove_project_member_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RemoveProjectMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id": "12345", - "organization_id": "org_67890", - "project_identifier": "proj_abcde", - "team_id": "team_xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/remove_project_member_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/remove_project_member_example_call_tool.py deleted file mode 100644 index 969ab8aea..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/remove_project_member_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RemoveProjectMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id': '12345', - 'organization_id': 'org_67890', - 'project_identifier': 'proj_abcde', - 'team_id': 'team_xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/remove_tag_from_item_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/remove_tag_from_item_example_call_tool.js deleted file mode 100644 index c1742007f..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/remove_tag_from_item_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RemoveTagFromItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id_for_tag_removal": "board_12345", - "item_id": "item_67890", - "tag_unique_identifier": "tag_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/remove_tag_from_item_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/remove_tag_from_item_example_call_tool.py deleted file mode 100644 index e26988a42..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/remove_tag_from_item_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RemoveTagFromItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id_for_tag_removal': 'board_12345', - 'item_id': 'item_67890', - 'tag_unique_identifier': 'tag_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/remove_team_member_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/remove_team_member_example_call_tool.js deleted file mode 100644 index 737dff80a..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/remove_team_member_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RemoveTeamMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "team_identifier": "team_67890", - "team_member_id": "member_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/remove_team_member_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/remove_team_member_example_call_tool.py deleted file mode 100644 index 47e6c2704..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/remove_team_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RemoveTeamMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'team_identifier': 'team_67890', 'team_member_id': 'member_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/reset_user_sessions_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/reset_user_sessions_example_call_tool.js deleted file mode 100644 index fd97d71ee..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/reset_user_sessions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.ResetUserSessions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_email_for_session_reset": "user@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/reset_user_sessions_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/reset_user_sessions_example_call_tool.py deleted file mode 100644 index faee94dd9..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/reset_user_sessions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.ResetUserSessions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_email_for_session_reset': 'user@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_app_card_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_app_card_info_example_call_tool.js deleted file mode 100644 index 4051bee67..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_app_card_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveAppCardInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "item_identifier": "item_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_app_card_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_app_card_info_example_call_tool.py deleted file mode 100644 index 10ca8c36e..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_app_card_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveAppCardInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'item_identifier': 'item_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_app_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_app_metrics_example_call_tool.js deleted file mode 100644 index 51726bfc0..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_app_metrics_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveAppMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "app_id": "app_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_app_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_app_metrics_example_call_tool.py deleted file mode 100644 index 4ecbfbee1..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_app_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveAppMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'app_id': 'app_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_classification_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_board_classification_example_call_tool.js deleted file mode 100644 index 38671e123..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_classification_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveBoardClassification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "organization_id": "org_67890", - "team_id": "team_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_classification_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_board_classification_example_call_tool.py deleted file mode 100644 index e327754dd..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_classification_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveBoardClassification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'organization_id': 'org_67890', 'team_id': 'team_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_connector_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_board_connector_info_example_call_tool.js deleted file mode 100644 index f8c82459a..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_connector_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveBoardConnectorInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_unique_identifier": "board_12345", - "connector_unique_id": "connector_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_connector_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_board_connector_info_example_call_tool.py deleted file mode 100644 index b22f3fc61..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_connector_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveBoardConnectorInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_unique_identifier': 'board_12345', 'connector_unique_id': 'connector_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_board_info_example_call_tool.js deleted file mode 100644 index 54c51792e..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveBoardInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_unique_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_board_info_example_call_tool.py deleted file mode 100644 index f818130b8..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveBoardInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_unique_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_item_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_board_item_info_example_call_tool.js deleted file mode 100644 index 2a25d2084..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_item_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveBoardItemInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "item_id": "item_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_item_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_board_item_info_example_call_tool.py deleted file mode 100644 index 707bcbc44..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_item_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveBoardItemInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'item_id': 'item_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_items_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_board_items_example_call_tool.js deleted file mode 100644 index 9550022eb..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_items_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveBoardItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "12345", - "item_type_filter": "sticky_note", - "items_limit": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_items_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_board_items_example_call_tool.py deleted file mode 100644 index 8dbe44346..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_board_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveBoardItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': '12345', 'item_type_filter': 'sticky_note', 'items_limit': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_case_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_case_info_example_call_tool.js deleted file mode 100644 index db70b00a9..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_case_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveCaseInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_id": "case_12345", - "organization_id": "org_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_case_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_case_info_example_call_tool.py deleted file mode 100644 index 1fa6f94d3..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_case_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveCaseInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_id': 'case_12345', 'organization_id': 'org_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_document_item_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_document_item_info_example_call_tool.js deleted file mode 100644 index 081acb307..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_document_item_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveDocumentItemInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "document_item_id": "doc_item_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_document_item_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_document_item_info_example_call_tool.py deleted file mode 100644 index 5ecb2380a..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_document_item_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveDocumentItemInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'document_item_id': 'doc_item_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_ediscovery_cases_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_ediscovery_cases_example_call_tool.js deleted file mode 100644 index cca341fae..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_ediscovery_cases_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveEdiscoveryCases"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "maximum_items": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_ediscovery_cases_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_ediscovery_cases_example_call_tool.py deleted file mode 100644 index e668679f7..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_ediscovery_cases_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveEdiscoveryCases" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'maximum_items': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_items_by_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_items_by_tag_example_call_tool.js deleted file mode 100644 index 09f14810a..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_items_by_tag_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveItemsByTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "tag_identifier": "tag_001", - "max_items_to_retrieve": "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_items_by_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_items_by_tag_example_call_tool.py deleted file mode 100644 index ff8501c8c..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_items_by_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveItemsByTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'tag_identifier': 'tag_001', 'max_items_to_retrieve': '10' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_legal_hold_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_legal_hold_info_example_call_tool.js deleted file mode 100644 index 847ee35ae..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_legal_hold_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveLegalHoldInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_identifier": "case123", - "legal_hold_identifier": "hold456", - "organization_id": "org789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_legal_hold_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_legal_hold_info_example_call_tool.py deleted file mode 100644 index f2a159f16..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_legal_hold_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveLegalHoldInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_identifier': 'case123', 'legal_hold_identifier': 'hold456', 'organization_id': 'org789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_legal_holds_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_legal_holds_example_call_tool.js deleted file mode 100644 index d0f2bd220..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_legal_holds_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveLegalHolds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_id": "case123", - "organization_id": "org456", - "maximum_items_in_result": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_legal_holds_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_legal_holds_example_call_tool.py deleted file mode 100644 index 823f9b9e7..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_legal_holds_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveLegalHolds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_id': 'case123', 'organization_id': 'org456', 'maximum_items_in_result': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_miro_export_results_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_miro_export_results_example_call_tool.js deleted file mode 100644 index 65b6b7aad..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_miro_export_results_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveMiroExportResults"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_identifier": "export_12345", - "organization_unique_identifier": "org_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_miro_export_results_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_miro_export_results_example_call_tool.py deleted file mode 100644 index 4ee29c855..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_miro_export_results_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveMiroExportResults" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_identifier': 'export_12345', 'organization_unique_identifier': 'org_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_shape_information_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_shape_information_example_call_tool.js deleted file mode 100644 index 63e416ed3..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_shape_information_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveShapeInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "shape_item_id": "shape_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_shape_information_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_shape_information_example_call_tool.py deleted file mode 100644 index 3a51d7c61..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_shape_information_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveShapeInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', 'shape_item_id': 'shape_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_team_member_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_team_member_by_id_example_call_tool.js deleted file mode 100644 index 244f98324..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_team_member_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveTeamMemberById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "team_identifier": "team_67890", - "team_member_id": "member_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_team_member_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_team_member_by_id_example_call_tool.py deleted file mode 100644 index 809a03fe5..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_team_member_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveTeamMemberById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'team_identifier': 'team_67890', 'team_member_id': 'member_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_user_boards_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/retrieve_user_boards_example_call_tool.js deleted file mode 100644 index 4fb021861..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_user_boards_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RetrieveUserBoards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maximum_number_of_boards": "10", - "project_id_filter": "proj_123", - "sort_boards_by": "last_modified" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/retrieve_user_boards_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/retrieve_user_boards_example_call_tool.py deleted file mode 100644 index 9856a1467..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/retrieve_user_boards_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RetrieveUserBoards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maximum_number_of_boards': '10', - 'project_id_filter': 'proj_123', - 'sort_boards_by': 'last_modified' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/review_legal_hold_boards_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/review_legal_hold_boards_example_call_tool.js deleted file mode 100644 index f3c178040..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/review_legal_hold_boards_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.ReviewLegalHoldBoards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "case_id": "case123", - "legal_hold_identifier": "hold456", - "organization_id": "org789", - "maximum_items_in_result": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/review_legal_hold_boards_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/review_legal_hold_boards_example_call_tool.py deleted file mode 100644 index 66d3c4176..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/review_legal_hold_boards_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.ReviewLegalHoldBoards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'case_id': 'case123', - 'legal_hold_identifier': 'hold456', - 'organization_id': 'org789', - 'maximum_items_in_result': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/revoke_miro_access_token_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/revoke_miro_access_token_example_call_tool.js deleted file mode 100644 index 9849ceba7..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/revoke_miro_access_token_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.RevokeMiroAccessToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "client_id": "123456", - "client_secret": "abcde12345", - "miro_access_token": "token123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/revoke_miro_access_token_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/revoke_miro_access_token_example_call_tool.py deleted file mode 100644 index 5e62e5ef8..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/revoke_miro_access_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.RevokeMiroAccessToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'client_id': '123456', 'client_secret': 'abcde12345', 'miro_access_token': 'token123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/set_board_classification_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/set_board_classification_example_call_tool.js deleted file mode 100644 index 29c34a945..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/set_board_classification_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.SetBoardClassification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "organization_id": "org_67890", - "team_id": "team_abcde", - "data_classification_label_id": "label_1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/set_board_classification_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/set_board_classification_example_call_tool.py deleted file mode 100644 index 1219e8b67..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/set_board_classification_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.SetBoardClassification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', - 'organization_id': 'org_67890', - 'team_id': 'team_abcde', - 'data_classification_label_id': 'label_1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/share_miro_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/share_miro_board_example_call_tool.js deleted file mode 100644 index db7d2b002..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/share_miro_board_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.ShareMiroBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_unique_identifier": "12345-abcde", - "invitee_email_addresses": [ - "example1@example.com", - "example2@example.com" - ], - "board_member_role": "editor", - "invitation_message": "Join us on this Miro board for collaboration!" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/share_miro_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/share_miro_board_example_call_tool.py deleted file mode 100644 index 7145268f7..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/share_miro_board_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.ShareMiroBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_unique_identifier': '12345-abcde', - 'invitee_email_addresses': ['example1@example.com', 'example2@example.com'], - 'board_member_role': 'editor', - 'invitation_message': 'Join us on this Miro board for collaboration!' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/ungroup_items_on_miro_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/ungroup_items_on_miro_board_example_call_tool.js deleted file mode 100644 index ca27c77bb..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/ungroup_items_on_miro_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UngroupItemsOnMiroBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_id": "group_123", - "miro_board_id": "board_456", - "remove_items_after_ungrouping": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/ungroup_items_on_miro_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/ungroup_items_on_miro_board_example_call_tool.py deleted file mode 100644 index b9390a102..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/ungroup_items_on_miro_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UngroupItemsOnMiroBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_id': 'group_123', 'miro_board_id': 'board_456', 'remove_items_after_ungrouping': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_board_classification_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_board_classification_example_call_tool.js deleted file mode 100644 index c8dc6b797..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_board_classification_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateBoardClassification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "team_identifier": "team_67890", - "assign_to_not_classified_only": true, - "data_classification_label_id": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_board_classification_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_board_classification_example_call_tool.py deleted file mode 100644 index 69d9e5ea5..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_board_classification_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateBoardClassification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'team_identifier': 'team_67890', - 'assign_to_not_classified_only': True, - 'data_classification_label_id': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_board_group_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_board_group_example_call_tool.js deleted file mode 100644 index 98cf7e8ba..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_board_group_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateBoardGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_unique_id": "board_12345", - "group_id": "group_67890", - "item_ids": [ - "item_1", - "item_2", - "item_3" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_board_group_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_board_group_example_call_tool.py deleted file mode 100644 index 7b6c9c2c9..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_board_group_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateBoardGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_unique_id': 'board_12345', - 'group_id': 'group_67890', - 'item_ids': ['item_1', 'item_2', 'item_3'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_board_image_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_board_image_example_call_tool.js deleted file mode 100644 index f26db7d3c..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_board_image_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateBoardImage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "image_item_id": "image_67890", - "image_url": "https://example.com/image.png", - "image_title": "Updated Image" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_board_image_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_board_image_example_call_tool.py deleted file mode 100644 index d33dc9fed..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_board_image_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateBoardImage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', - 'image_item_id': 'image_67890', - 'image_url': 'https://example.com/image.png', - 'image_title': 'Updated Image' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_board_member_role_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_board_member_role_example_call_tool.js deleted file mode 100644 index 5646cdc9f..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_board_member_role_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateBoardMemberRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_member_unique_id": "member123", - "board_unique_identifier": "board456", - "board_member_role": "editor" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_board_member_role_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_board_member_role_example_call_tool.py deleted file mode 100644 index d78a08847..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_board_member_role_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateBoardMemberRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_member_unique_id': 'member123', - 'board_unique_identifier': 'board456', - 'board_member_role': 'editor' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_board_shape_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_board_shape_example_call_tool.js deleted file mode 100644 index 251f6098d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_board_shape_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateBoardShape"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_identifier": "board_123", - "shape_item_id": "shape_456", - "request_body": "{\"color\":\"blue\",\"text\":\"Updated Shape\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_board_shape_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_board_shape_example_call_tool.py deleted file mode 100644 index a5fff9f6d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_board_shape_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateBoardShape" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'board_identifier': 'board_123', - 'shape_item_id': 'shape_456', - 'request_body': '{"color":"blue","text":"Updated Shape"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_board_text_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_board_text_example_call_tool.js deleted file mode 100644 index b9388f713..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_board_text_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateBoardText"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_id": "board123", - "text_item_id": "text456", - "request_body": "{\"text\":\"Updated text content\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_board_text_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_board_text_example_call_tool.py deleted file mode 100644 index 04c320211..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_board_text_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateBoardText" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'board_id': 'board123', - 'text_item_id': 'text456', - 'request_body': '{"text":"Updated text content"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_board_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_board_webhook_subscription_example_call_tool.js deleted file mode 100644 index 706eae8fe..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_board_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateBoardWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_12345", - "webhook_callback_url": "https://example.com/webhook", - "webhook_status": "enabled" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_board_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_board_webhook_subscription_example_call_tool.py deleted file mode 100644 index c69d0ad25..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_board_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateBoardWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_12345', - 'webhook_callback_url': 'https://example.com/webhook', - 'webhook_status': 'enabled' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_card_on_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_card_on_board_example_call_tool.js deleted file mode 100644 index 649331c90..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_card_on_board_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateCardOnBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_identifier": "board_123", - "card_item_id": "card_456", - "request_body": "{\"title\":\"Updated Card Title\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_card_on_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_card_on_board_example_call_tool.py deleted file mode 100644 index e69c22ded..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_card_on_board_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateCardOnBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'board_identifier': 'board_123', - 'card_item_id': 'card_456', - 'request_body': '{"title":"Updated Card Title","description":"This is an updated ' - 'description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_connector_on_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_connector_on_board_example_call_tool.js deleted file mode 100644 index a95e8d7e6..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_connector_on_board_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateConnectorOnBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_identifier": "board_123", - "connector_identifier": "connector_456", - "request_body": "{\"color\":\"blue\",\"style\":\"dashed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_connector_on_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_connector_on_board_example_call_tool.py deleted file mode 100644 index 31f4a095b..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_connector_on_board_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateConnectorOnBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'board_identifier': 'board_123', - 'connector_identifier': 'connector_456', - 'request_body': '{"color":"blue","style":"dashed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_document_item_on_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_document_item_on_board_example_call_tool.js deleted file mode 100644 index db8b1e85d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_document_item_on_board_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateDocumentItemOnBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "item_identifier_to_update": "item678", - "document_hosting_url": "https://example.com/document", - "document_title": "Updated Document", - "item_height_pixels": 400, - "item_width_pixels": 300 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_document_item_on_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_document_item_on_board_example_call_tool.py deleted file mode 100644 index c8d1acf9d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_document_item_on_board_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateDocumentItemOnBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', - 'item_identifier_to_update': 'item678', - 'document_hosting_url': 'https://example.com/document', - 'document_title': 'Updated Document', - 'item_height_pixels': 400, - 'item_width_pixels': 300 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_embed_item_on_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_embed_item_on_board_example_call_tool.js deleted file mode 100644 index 53db3fd2b..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_embed_item_on_board_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateEmbedItemOnBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "board_123", - "embed_item_id": "embed_456", - "content_resource_url": "https://example.com/resource", - "embed_display_mode": "inline", - "item_height_in_pixels": 300, - "item_width_pixels": 400 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_embed_item_on_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_embed_item_on_board_example_call_tool.py deleted file mode 100644 index f6e467027..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_embed_item_on_board_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateEmbedItemOnBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': 'board_123', - 'embed_item_id': 'embed_456', - 'content_resource_url': 'https://example.com/resource', - 'embed_display_mode': 'inline', - 'item_height_in_pixels': 300, - 'item_width_pixels': 400 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_enterprise_team_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_enterprise_team_example_call_tool.js deleted file mode 100644 index f8ba1af49..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_enterprise_team_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateEnterpriseTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "team_identifier": "team_67890", - "new_team_name": "Engineering Team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_enterprise_team_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_enterprise_team_example_call_tool.py deleted file mode 100644 index 0e797202e..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_enterprise_team_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateEnterpriseTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'team_identifier': 'team_67890', - 'new_team_name': 'Engineering Team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_flowchart_shape_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_flowchart_shape_example_call_tool.js deleted file mode 100644 index 48ee63e4c..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_flowchart_shape_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateFlowchartShape"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_identifier": "board_123", - "item_id": "shape_456", - "request_body": "{\"text\":\"Updated Shape\",\"color\":\"#FF5733\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_flowchart_shape_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_flowchart_shape_example_call_tool.py deleted file mode 100644 index c591c1bf2..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_flowchart_shape_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateFlowchartShape" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'board_identifier': 'board_123', - 'item_id': 'shape_456', - 'request_body': '{"text":"Updated Shape","color":"#FF5733"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_item_position_parent_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_item_position_parent_example_call_tool.js deleted file mode 100644 index 849316ee1..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_item_position_parent_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateItemPositionParent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_123", - "item_id": "item_456", - "item_x_axis_coordinate": 100, - "y_axis_coordinate": 200 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_item_position_parent_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_item_position_parent_example_call_tool.py deleted file mode 100644 index 0a29c4e35..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_item_position_parent_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateItemPositionParent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_123', - 'item_id': 'item_456', - 'item_x_axis_coordinate': 100, - 'y_axis_coordinate': 200 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_miro_app_card_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_miro_app_card_example_call_tool.js deleted file mode 100644 index 0e703331d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_miro_app_card_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateMiroAppCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_identifier": "board_123", - "item_identifier_for_update": "item_456", - "request_body": "{\"title\":\"Updated Card Title\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_miro_app_card_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_miro_app_card_example_call_tool.py deleted file mode 100644 index 8e1ea7805..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_miro_app_card_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateMiroAppCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'board_identifier': 'board_123', - 'item_identifier_for_update': 'item_456', - 'request_body': '{"title":"Updated Card Title","description":"This is an updated ' - 'description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_miro_board_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_miro_board_example_call_tool.js deleted file mode 100644 index 845223c06..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_miro_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateMiroBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_identifier": "board_12345", - "request_body": "{\"title\":\"Updated Board Title\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_miro_board_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_miro_board_example_call_tool.py deleted file mode 100644 index 015fd67fe..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_miro_board_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateMiroBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'board_identifier': 'board_12345', - 'request_body': '{"title":"Updated Board Title","description":"This is an updated ' - 'description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_miro_board_frame_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_miro_board_frame_example_call_tool.js deleted file mode 100644 index 2e2219730..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_miro_board_frame_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateMiroBoardFrame"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_id": "board123", - "frame_id": "frame456", - "request_body": "{\"backgroundColor\":\"#FFFFFF\",\"width\":300,\"height\":200}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_miro_board_frame_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_miro_board_frame_example_call_tool.py deleted file mode 100644 index a8ad2843a..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_miro_board_frame_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateMiroBoardFrame" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'board_id': 'board123', - 'frame_id': 'frame456', - 'request_body': '{"backgroundColor":"#FFFFFF","width":300,"height":200}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_miro_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_miro_tag_example_call_tool.js deleted file mode 100644 index da3e67ae3..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_miro_tag_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateMiroTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_identifier": "board_12345", - "tag_unique_identifier": "tag_67890", - "tag_fill_color": "blue", - "tag_title": "Updated Tag" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_miro_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_miro_tag_example_call_tool.py deleted file mode 100644 index 0190c84a6..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_miro_tag_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateMiroTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_identifier': 'board_12345', - 'tag_unique_identifier': 'tag_67890', - 'tag_fill_color': 'blue', - 'tag_title': 'Updated Tag' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_project_info_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_project_info_example_call_tool.js deleted file mode 100644 index a00ce0d86..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_project_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateProjectInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "new_project_name": "New Project Alpha", - "organization_id": "org_12345", - "project_identifier": "proj_67890", - "team_id": "team_54321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_project_info_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_project_info_example_call_tool.py deleted file mode 100644 index 78ee4811b..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_project_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateProjectInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'new_project_name': 'New Project Alpha', - 'organization_id': 'org_12345', - 'project_identifier': 'proj_67890', - 'team_id': 'team_54321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_project_member_role_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_project_member_role_example_call_tool.js deleted file mode 100644 index b8cd432f0..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_project_member_role_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateProjectMemberRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id": "12345", - "organization_id": "org_67890", - "project_id": "proj_abcde", - "team_id": "team_001", - "project_member_role": "editor" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_project_member_role_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_project_member_role_example_call_tool.py deleted file mode 100644 index 4aadf04d7..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_project_member_role_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateProjectMemberRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id': '12345', - 'organization_id': 'org_67890', - 'project_id': 'proj_abcde', - 'team_id': 'team_001', - 'project_member_role': 'editor' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_project_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_project_settings_example_call_tool.js deleted file mode 100644 index 065689990..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_project_settings_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateProjectSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "project_identifier": "proj_67890", - "team_id": "team_abcde", - "team_access_level": "private" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_project_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_project_settings_example_call_tool.py deleted file mode 100644 index d6737a3dd..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_project_settings_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateProjectSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'project_identifier': 'proj_67890', - 'team_id': 'team_abcde', - 'team_access_level': 'private' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_sticky_note_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_sticky_note_example_call_tool.js deleted file mode 100644 index 1b931d048..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_sticky_note_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateStickyNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "board_id_for_update": "board123", - "sticky_note_id": "note456", - "request_body": "{\"text\":\"Updated note content\",\"color\":\"yellow\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_sticky_note_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_sticky_note_example_call_tool.py deleted file mode 100644 index ec30b8374..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_sticky_note_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateStickyNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'board_id_for_update': 'board123', - 'sticky_note_id': 'note456', - 'request_body': '{"text":"Updated note content","color":"yellow"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_team_board_classification_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_team_board_classification_settings_example_call_tool.js deleted file mode 100644 index 2be7c99f5..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_team_board_classification_settings_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateTeamBoardClassificationSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "team_identifier": "team_67890", - "data_classification_default_label_id": 1, - "enable_data_classification": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_team_board_classification_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_team_board_classification_settings_example_call_tool.py deleted file mode 100644 index 8739ff34f..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_team_board_classification_settings_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateTeamBoardClassificationSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'team_identifier': 'team_67890', - 'data_classification_default_label_id': 1, - 'enable_data_classification': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_team_member_role_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_team_member_role_example_call_tool.js deleted file mode 100644 index 95c577152..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_team_member_role_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateTeamMemberRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "team_identifier": "team_67890", - "team_member_id": "user_abcde", - "team_member_role": "admin" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_team_member_role_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_team_member_role_example_call_tool.py deleted file mode 100644 index 509f3410d..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_team_member_role_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateTeamMemberRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'team_identifier': 'team_67890', - 'team_member_id': 'user_abcde', - 'team_member_role': 'admin' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/miro_api/update_team_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/miro_api/update_team_settings_example_call_tool.js deleted file mode 100644 index 36655441c..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_team_settings_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "MiroApi.UpdateTeamSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "team_identifier": "team_67890", - "request_body": "{\"setting\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/miro_api/update_team_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/miro_api/update_team_settings_example_call_tool.py deleted file mode 100644 index fa42c5e79..000000000 --- a/public/examples/integrations/mcp-servers/miro_api/update_team_settings_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "MiroApi.UpdateTeamSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'team_identifier': 'team_67890', - 'request_body': '{"setting":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/mongodb/aggregate_documents_example_call_tool.js b/public/examples/integrations/mcp-servers/mongodb/aggregate_documents_example_call_tool.js deleted file mode 100644 index 8cc9a83ee..000000000 --- a/public/examples/integrations/mcp-servers/mongodb/aggregate_documents_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "MongoDB.AggregateDocuments"; - -const userId = "{arcade_user_id}"; - -const toolInput = { - database_name: "my_database", - collection_name: "users", - pipeline: [ - JSON.stringify({"$match": {"status": "active"}}), - JSON.stringify({"$group": {"_id": "$category", "count": {"$sum": 1}}}), - JSON.stringify({"$sort": {"count": -1}}) - ], - limit: 20 -}; - -const response = await client.tools.execute({ - toolName: TOOL_NAME, - input: toolInput, - userId: userId, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/mongodb/aggregate_documents_example_call_tool.py b/public/examples/integrations/mcp-servers/mongodb/aggregate_documents_example_call_tool.py deleted file mode 100644 index 644bf5868..000000000 --- a/public/examples/integrations/mcp-servers/mongodb/aggregate_documents_example_call_tool.py +++ /dev/null @@ -1,27 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "MongoDB.AggregateDocuments" - -user_id = "{arcade_user_id}" - -tool_input = { - "database_name": "my_database", - "collection_name": "users", - "pipeline": [ - json.dumps({"$match": {"status": "active"}}), - json.dumps({"$group": {"_id": "$category", "count": {"$sum": 1}}}), - json.dumps({"$sort": {"count": -1}}) - ], - "limit": 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/mongodb/count_documents_example_call_tool.js b/public/examples/integrations/mcp-servers/mongodb/count_documents_example_call_tool.js deleted file mode 100644 index 2984dc458..000000000 --- a/public/examples/integrations/mcp-servers/mongodb/count_documents_example_call_tool.js +++ /dev/null @@ -1,21 +0,0 @@ -import { Arcade } from "arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "MongoDB.CountDocuments"; - -const userId = "{arcade_user_id}"; - -const toolInput = { - database_name: "my_database", - collection_name: "users", - filter_dict: JSON.stringify({"status": "active"}) -}; - -const response = await client.tools.execute({ - toolName: TOOL_NAME, - input: toolInput, - userId: userId, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/mongodb/count_documents_example_call_tool.py b/public/examples/integrations/mcp-servers/mongodb/count_documents_example_call_tool.py deleted file mode 100644 index 331e37ea5..000000000 --- a/public/examples/integrations/mcp-servers/mongodb/count_documents_example_call_tool.py +++ /dev/null @@ -1,22 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "MongoDB.CountDocuments" - -user_id = "{arcade_user_id}" - -tool_input = { - "database_name": "my_database", - "collection_name": "users", - "filter_dict": json.dumps({"status": "active"}) -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/mongodb/discover_collections_example_call_tool.js b/public/examples/integrations/mcp-servers/mongodb/discover_collections_example_call_tool.js deleted file mode 100644 index 9580c3470..000000000 --- a/public/examples/integrations/mcp-servers/mongodb/discover_collections_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "MongoDB.DiscoverCollections"; - -const userId = "{arcade_user_id}"; - -const toolInput = { - database_name: "my_database" -}; - -const response = await client.tools.execute({ - toolName: TOOL_NAME, - input: toolInput, - userId: userId, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/mongodb/discover_collections_example_call_tool.py b/public/examples/integrations/mcp-servers/mongodb/discover_collections_example_call_tool.py deleted file mode 100644 index 6e72ab9e0..000000000 --- a/public/examples/integrations/mcp-servers/mongodb/discover_collections_example_call_tool.py +++ /dev/null @@ -1,19 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "MongoDB.DiscoverCollections" - -user_id = "{arcade_user_id}" - -tool_input = { - "database_name": "my_database" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/mongodb/discover_databases_example_call_tool.js b/public/examples/integrations/mcp-servers/mongodb/discover_databases_example_call_tool.js deleted file mode 100644 index 609f3d121..000000000 --- a/public/examples/integrations/mcp-servers/mongodb/discover_databases_example_call_tool.js +++ /dev/null @@ -1,17 +0,0 @@ -import { Arcade } from "arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "MongoDB.DiscoverDatabases"; - -const userId = "{arcade_user_id}"; - -const toolInput = {}; - -const response = await client.tools.execute({ - toolName: TOOL_NAME, - input: toolInput, - userId: userId, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/mongodb/discover_databases_example_call_tool.py b/public/examples/integrations/mcp-servers/mongodb/discover_databases_example_call_tool.py deleted file mode 100644 index c63c58b77..000000000 --- a/public/examples/integrations/mcp-servers/mongodb/discover_databases_example_call_tool.py +++ /dev/null @@ -1,17 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "MongoDB.DiscoverDatabases" - -user_id = "{arcade_user_id}" - -tool_input = {} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/mongodb/find_documents_example_call_tool.js b/public/examples/integrations/mcp-servers/mongodb/find_documents_example_call_tool.js deleted file mode 100644 index 8b39d5a6f..000000000 --- a/public/examples/integrations/mcp-servers/mongodb/find_documents_example_call_tool.js +++ /dev/null @@ -1,25 +0,0 @@ -import { Arcade } from "arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "MongoDB.FindDocuments"; - -const userId = "{arcade_user_id}"; - -const toolInput = { - database_name: "my_database", - collection_name: "users", - filter_dict: JSON.stringify({"status": "active", "age": {"$gte": 18}}), - projection: JSON.stringify({"name": 1, "email": 1, "_id": 0}), - sort: [JSON.stringify({"field": "name", "direction": 1})], - limit: 10, - skip: 0 -}; - -const response = await client.tools.execute({ - toolName: TOOL_NAME, - input: toolInput, - userId: userId, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/mongodb/find_documents_example_call_tool.py b/public/examples/integrations/mcp-servers/mongodb/find_documents_example_call_tool.py deleted file mode 100644 index 23f87f7cf..000000000 --- a/public/examples/integrations/mcp-servers/mongodb/find_documents_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "MongoDB.FindDocuments" - -user_id = "{arcade_user_id}" - -tool_input = { - "database_name": "my_database", - "collection_name": "users", - "filter_dict": json.dumps({"status": "active", "age": {"$gte": 18}}), - "projection": json.dumps({"name": 1, "email": 1, "_id": 0}), - "sort": [json.dumps({"field": "name", "direction": 1})], - "limit": 10, - "skip": 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/mongodb/get_collection_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/mongodb/get_collection_schema_example_call_tool.js deleted file mode 100644 index 951df995a..000000000 --- a/public/examples/integrations/mcp-servers/mongodb/get_collection_schema_example_call_tool.js +++ /dev/null @@ -1,21 +0,0 @@ -import { Arcade } from "arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "MongoDB.GetCollectionSchema"; - -const userId = "{arcade_user_id}"; - -const toolInput = { - database_name: "my_database", - collection_name: "users", - sample_size: 50 -}; - -const response = await client.tools.execute({ - toolName: TOOL_NAME, - input: toolInput, - userId: userId, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/mongodb/get_collection_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/mongodb/get_collection_schema_example_call_tool.py deleted file mode 100644 index 4cbcffa26..000000000 --- a/public/examples/integrations/mcp-servers/mongodb/get_collection_schema_example_call_tool.py +++ /dev/null @@ -1,21 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "MongoDB.GetCollectionSchema" - -user_id = "{arcade_user_id}" - -tool_input = { - "database_name": "my_database", - "collection_name": "users", - "sample_size": 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/notion/append_content_to_end_of_page.js b/public/examples/integrations/mcp-servers/notion/append_content_to_end_of_page.js deleted file mode 100644 index ae90b2b52..000000000 --- a/public/examples/integrations/mcp-servers/notion/append_content_to_end_of_page.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "NotionToolkit.AppendContentToEndOfPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - page_id_or_title: "YOUR_PAGE_ID_OR_TITLE", - content: "P.S. Never forget that you are a wizard." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/notion/append_content_to_end_of_page.py b/public/examples/integrations/mcp-servers/notion/append_content_to_end_of_page.py deleted file mode 100644 index f2a0c2849..000000000 --- a/public/examples/integrations/mcp-servers/notion/append_content_to_end_of_page.py +++ /dev/null @@ -1,29 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "NotionToolkit.AppendContentToEndOfPage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "page_id_or_title": "YOUR_PAGE_ID_OR_TITLE", - "content": "P.S. Never forget that you are a wizard." -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/notion/create_page_example_call_tool.js b/public/examples/integrations/mcp-servers/notion/create_page_example_call_tool.js deleted file mode 100644 index 2cee92aaf..000000000 --- a/public/examples/integrations/mcp-servers/notion/create_page_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "NotionToolkit.CreatePage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - parent_title: "YOUR_PARENT_PAGE_TITLE", - title: "YOUR_NEW_PAGE_TITLE", - content: "YOUR_NEW_PAGE_CONTENT" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/notion/create_page_example_call_tool.py b/public/examples/integrations/mcp-servers/notion/create_page_example_call_tool.py deleted file mode 100644 index a99c74270..000000000 --- a/public/examples/integrations/mcp-servers/notion/create_page_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "NotionToolkit.CreatePage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "parent_title": "YOUR_PARENT_PAGE_TITLE", - "title": "YOUR_NEW_PAGE_TITLE", - "content": "YOUR_NEW_PAGE_CONTENT" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/notion/get_object_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/notion/get_object_metadata_example_call_tool.js deleted file mode 100644 index 6940c052a..000000000 --- a/public/examples/integrations/mcp-servers/notion/get_object_metadata_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "NotionToolkit.GetObjectMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - object_title: "Arcade Toolkit Notes", - object_type: "page" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/notion/get_object_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/notion/get_object_metadata_example_call_tool.py deleted file mode 100644 index caf0a2e92..000000000 --- a/public/examples/integrations/mcp-servers/notion/get_object_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "NotionToolkit.GetObjectMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "object_title": "Arcade Toolkit Notes", - "object_type": "page" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/notion/get_page_content_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/notion/get_page_content_by_id_example_call_tool.js deleted file mode 100644 index 7b4255196..000000000 --- a/public/examples/integrations/mcp-servers/notion/get_page_content_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "NotionToolkit.GetPageContentById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - page_id: "YOUR_PAGE_ID" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/notion/get_page_content_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/notion/get_page_content_by_id_example_call_tool.py deleted file mode 100644 index 03c3b0aed..000000000 --- a/public/examples/integrations/mcp-servers/notion/get_page_content_by_id_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "NotionToolkit.GetPageContentById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "page_id": "YOUR_PAGE_ID" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/notion/get_page_content_by_title_example_call_tool.js b/public/examples/integrations/mcp-servers/notion/get_page_content_by_title_example_call_tool.js deleted file mode 100644 index 3e63be2ef..000000000 --- a/public/examples/integrations/mcp-servers/notion/get_page_content_by_title_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "NotionToolkit.GetPageContentByTitle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - title: "YOUR_PAGE_TITLE" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/notion/get_page_content_by_title_example_call_tool.py b/public/examples/integrations/mcp-servers/notion/get_page_content_by_title_example_call_tool.py deleted file mode 100644 index 48752efb5..000000000 --- a/public/examples/integrations/mcp-servers/notion/get_page_content_by_title_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "NotionToolkit.GetPageContentByTitle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "title": "YOUR_PAGE_TITLE" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/notion/get_workspace_structure_example_call_tool.js b/public/examples/integrations/mcp-servers/notion/get_workspace_structure_example_call_tool.js deleted file mode 100644 index 000a74006..000000000 --- a/public/examples/integrations/mcp-servers/notion/get_workspace_structure_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "NotionToolkit.GetWorkspaceStructure"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/notion/get_workspace_structure_example_call_tool.py b/public/examples/integrations/mcp-servers/notion/get_workspace_structure_example_call_tool.py deleted file mode 100644 index 722d5bf41..000000000 --- a/public/examples/integrations/mcp-servers/notion/get_workspace_structure_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "NotionToolkit.GetWorkspaceStructure" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/notion/search_by_title_example_call_tool.js b/public/examples/integrations/mcp-servers/notion/search_by_title_example_call_tool.js deleted file mode 100644 index dc6b57da5..000000000 --- a/public/examples/integrations/mcp-servers/notion/search_by_title_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "NotionToolkit.SearchByTitle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - query: "Arcade Toolkit Notes", - select: "page", - order_by: "descending", - limit: 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/notion/search_by_title_example_call_tool.py b/public/examples/integrations/mcp-servers/notion/search_by_title_example_call_tool.py deleted file mode 100644 index 3ed8ab6a7..000000000 --- a/public/examples/integrations/mcp-servers/notion/search_by_title_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "NotionToolkit.SearchByTitle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "query": "Arcade Toolkit Notes", - "select": "page", - "order_by": "descending", - "limit": 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/notion/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/notion/who_am_i_example_call_tool.js deleted file mode 100644 index 9a4339d1c..000000000 --- a/public/examples/integrations/mcp-servers/notion/who_am_i_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "NotionToolkit.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/notion/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/notion/who_am_i_example_call_tool.py deleted file mode 100644 index 435d8b822..000000000 --- a/public/examples/integrations/mcp-servers/notion/who_am_i_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "NotionToolkit.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/outlook_calendar/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/outlook_calendar/who_am_i_example_call_tool.js deleted file mode 100644 index f4a008538..000000000 --- a/public/examples/integrations/mcp-servers/outlook_calendar/who_am_i_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "OutlookCalendar.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/outlook_calendar/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/outlook_calendar/who_am_i_example_call_tool.py deleted file mode 100644 index c8bb496f0..000000000 --- a/public/examples/integrations/mcp-servers/outlook_calendar/who_am_i_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "OutlookCalendar.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/outlook_mail/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/outlook_mail/who_am_i_example_call_tool.js deleted file mode 100644 index 5f1194a20..000000000 --- a/public/examples/integrations/mcp-servers/outlook_mail/who_am_i_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "OutlookMail.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/outlook_mail/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/outlook_mail/who_am_i_example_call_tool.py deleted file mode 100644 index 36ff59de0..000000000 --- a/public/examples/integrations/mcp-servers/outlook_mail/who_am_i_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "OutlookMail.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty/get_escalation_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty/get_escalation_policy_example_call_tool.js deleted file mode 100644 index 5d8013549..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/get_escalation_policy_example_call_tool.js +++ /dev/null @@ -1,23 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerDuty.GetEscalationPolicy"; - -const authResponse = await client.tools.authorize({ tool_name: TOOL_NAME, user_id: USER_ID }); -if (authResponse.status !== "completed") { - console.log(`Authorize here: ${authResponse.url}`); -} -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - escalation_policy_id: "", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty/get_escalation_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty/get_escalation_policy_example_call_tool.py deleted file mode 100644 index b55f648f6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/get_escalation_policy_example_call_tool.py +++ /dev/null @@ -1,22 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerDuty.GetEscalationPolicy" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) -if auth_response.status != "completed": - print(f"Authorize here: {auth_response.url}") -client.auth.wait_for_completion(auth_response) - -tool_input = { - "escalation_policy_id": "", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty/get_incident_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty/get_incident_example_call_tool.js deleted file mode 100644 index bea0b6be9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/get_incident_example_call_tool.js +++ /dev/null @@ -1,23 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerDuty.GetIncident"; - -const authResponse = await client.tools.authorize({ tool_name: TOOL_NAME, user_id: USER_ID }); -if (authResponse.status !== "completed") { - console.log(`Authorize here: ${authResponse.url}`); -} -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - incident_id: "", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty/get_incident_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty/get_incident_example_call_tool.py deleted file mode 100644 index 0da8360f8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/get_incident_example_call_tool.py +++ /dev/null @@ -1,22 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerDuty.GetIncident" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) -if auth_response.status != "completed": - print(f"Authorize here: {auth_response.url}") -client.auth.wait_for_completion(auth_response) - -tool_input = { - "incident_id": "", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty/get_service_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty/get_service_example_call_tool.js deleted file mode 100644 index e4ca91dde..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/get_service_example_call_tool.js +++ /dev/null @@ -1,23 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerDuty.GetService"; - -const authResponse = await client.tools.authorize({ tool_name: TOOL_NAME, user_id: USER_ID }); -if (authResponse.status !== "completed") { - console.log(`Authorize here: ${authResponse.url}`); -} -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - service_id: "", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty/get_service_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty/get_service_example_call_tool.py deleted file mode 100644 index c18d58372..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/get_service_example_call_tool.py +++ /dev/null @@ -1,22 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerDuty.GetService" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) -if auth_response.status != "completed": - print(f"Authorize here: {auth_response.url}") -client.auth.wait_for_completion(auth_response) - -tool_input = { - "service_id": "", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty/get_team_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty/get_team_example_call_tool.js deleted file mode 100644 index 6121d4a97..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/get_team_example_call_tool.js +++ /dev/null @@ -1,23 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerDuty.GetTeam"; - -const authResponse = await client.tools.authorize({ tool_name: TOOL_NAME, user_id: USER_ID }); -if (authResponse.status !== "completed") { - console.log(`Authorize here: ${authResponse.url}`); -} -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - team_id: "", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty/get_team_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty/get_team_example_call_tool.py deleted file mode 100644 index 9594a47ce..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/get_team_example_call_tool.py +++ /dev/null @@ -1,22 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerDuty.GetTeam" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) -if auth_response.status != "completed": - print(f"Authorize here: {auth_response.url}") -client.auth.wait_for_completion(auth_response) - -tool_input = { - "team_id": "", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_escalation_policies_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty/list_escalation_policies_example_call_tool.js deleted file mode 100644 index 87ad9d982..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_escalation_policies_example_call_tool.js +++ /dev/null @@ -1,24 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerDuty.ListEscalationPolicies"; - -const authResponse = await client.tools.authorize({ tool_name: TOOL_NAME, user_id: USER_ID }); -if (authResponse.status !== "completed") { - console.log(`Authorize here: ${authResponse.url}`); -} -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - limit: 10, - offset: null, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_escalation_policies_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty/list_escalation_policies_example_call_tool.py deleted file mode 100644 index 34ec9873d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_escalation_policies_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerDuty.ListEscalationPolicies" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) -if auth_response.status != "completed": - print(f"Authorize here: {auth_response.url}") -client.auth.wait_for_completion(auth_response) - -tool_input = { - "limit": 10, - "offset": None, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_incidents_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty/list_incidents_example_call_tool.js deleted file mode 100644 index 6576caa5a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_incidents_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerDuty.ListIncidents"; - -const authResponse = await client.tools.authorize({ tool_name: TOOL_NAME, user_id: USER_ID }); -if (authResponse.status !== "completed") { - console.log(`Authorize here: ${authResponse.url}`); -} -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - status: null, - urgency: null, - service_ids: null, - team_ids: null, - since: null, - until: null, - limit: 10, - offset: null, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_incidents_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty/list_incidents_example_call_tool.py deleted file mode 100644 index 8c2a5cd8c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_incidents_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerDuty.ListIncidents" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) -if auth_response.status != "completed": - print(f"Authorize here: {auth_response.url}") -client.auth.wait_for_completion(auth_response) - -tool_input = { - "status": None, - "urgency": None, - "service_ids": None, - "team_ids": None, - "since": None, - "until": None, - "limit": 10, - "offset": None, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_log_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty/list_log_entries_example_call_tool.js deleted file mode 100644 index b7db7970d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_log_entries_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerDuty.ListLogEntries"; - -const authResponse = await client.tools.authorize({ tool_name: TOOL_NAME, user_id: USER_ID }); -if (authResponse.status !== "completed") { - console.log(`Authorize here: ${authResponse.url}`); -} -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - since: null, - until: null, - team_ids: null, - time_zone: null, - is_overview: true, - limit: 10, - offset: null, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_log_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty/list_log_entries_example_call_tool.py deleted file mode 100644 index 1363fb0e8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_log_entries_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerDuty.ListLogEntries" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) -if auth_response.status != "completed": - print(f"Authorize here: {auth_response.url}") -client.auth.wait_for_completion(auth_response) - -tool_input = { - "since": None, - "until": None, - "team_ids": None, - "time_zone": None, - "is_overview": True, - "limit": 10, - "offset": None, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_oncalls_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty/list_oncalls_example_call_tool.js deleted file mode 100644 index 803ea2faf..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_oncalls_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerDuty.ListOnCalls"; - -const authResponse = await client.tools.authorize({ tool_name: TOOL_NAME, user_id: USER_ID }); -if (authResponse.status !== "completed") { - console.log(`Authorize here: ${authResponse.url}`); -} -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - schedule_ids: null, - escalation_policy_ids: null, - team_ids: null, - time_zone: null, - since: null, - until: null, - limit: 10, - offset: null, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_oncalls_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty/list_oncalls_example_call_tool.py deleted file mode 100644 index 59ccf3612..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_oncalls_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerDuty.ListOnCalls" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) -if auth_response.status != "completed": - print(f"Authorize here: {auth_response.url}") -client.auth.wait_for_completion(auth_response) - -tool_input = { - "schedule_ids": None, - "escalation_policy_ids": None, - "team_ids": None, - "time_zone": None, - "since": None, - "until": None, - "limit": 10, - "offset": None, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_schedules_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty/list_schedules_example_call_tool.js deleted file mode 100644 index 81bc11fab..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_schedules_example_call_tool.js +++ /dev/null @@ -1,25 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerDuty.ListSchedules"; - -const authResponse = await client.tools.authorize({ tool_name: TOOL_NAME, user_id: USER_ID }); -if (authResponse.status !== "completed") { - console.log(`Authorize here: ${authResponse.url}`); -} -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - limit: 10, - offset: null, - time_zone: null, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_schedules_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty/list_schedules_example_call_tool.py deleted file mode 100644 index 8930baa67..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_schedules_example_call_tool.py +++ /dev/null @@ -1,24 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerDuty.ListSchedules" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) -if auth_response.status != "completed": - print(f"Authorize here: {auth_response.url}") -client.auth.wait_for_completion(auth_response) - -tool_input = { - "limit": 10, - "offset": None, - "time_zone": None, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_services_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty/list_services_example_call_tool.js deleted file mode 100644 index ec8c8ea70..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_services_example_call_tool.js +++ /dev/null @@ -1,25 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerDuty.ListServices"; - -const authResponse = await client.tools.authorize({ tool_name: TOOL_NAME, user_id: USER_ID }); -if (authResponse.status !== "completed") { - console.log(`Authorize here: ${authResponse.url}`); -} -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - query: null, - limit: 10, - offset: null, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_services_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty/list_services_example_call_tool.py deleted file mode 100644 index 5303d632e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_services_example_call_tool.py +++ /dev/null @@ -1,24 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerDuty.ListServices" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) -if auth_response.status != "completed": - print(f"Authorize here: {auth_response.url}") -client.auth.wait_for_completion(auth_response) - -tool_input = { - "query": None, - "limit": 10, - "offset": None, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty/list_teams_example_call_tool.js deleted file mode 100644 index 914118ecf..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_teams_example_call_tool.js +++ /dev/null @@ -1,24 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerDuty.ListTeams"; - -const authResponse = await client.tools.authorize({ tool_name: TOOL_NAME, user_id: USER_ID }); -if (authResponse.status !== "completed") { - console.log(`Authorize here: ${authResponse.url}`); -} -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - limit: 10, - offset: null, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty/list_teams_example_call_tool.py deleted file mode 100644 index 92e532959..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_teams_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerDuty.ListTeams" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) -if auth_response.status != "completed": - print(f"Authorize here: {auth_response.url}") -client.auth.wait_for_completion(auth_response) - -tool_input = { - "limit": 10, - "offset": None, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_users_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty/list_users_example_call_tool.js deleted file mode 100644 index 077a5a5f2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_users_example_call_tool.js +++ /dev/null @@ -1,24 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerDuty.ListUsers"; - -const authResponse = await client.tools.authorize({ tool_name: TOOL_NAME, user_id: USER_ID }); -if (authResponse.status !== "completed") { - console.log(`Authorize here: ${authResponse.url}`); -} -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - limit: 10, - offset: null, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty/list_users_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty/list_users_example_call_tool.py deleted file mode 100644 index e7e24f7d6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/list_users_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerDuty.ListUsers" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) -if auth_response.status != "completed": - print(f"Authorize here: {auth_response.url}") -client.auth.wait_for_completion(auth_response) - -tool_input = { - "limit": 10, - "offset": None, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty/search_users_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty/search_users_example_call_tool.js deleted file mode 100644 index e8f59ff56..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/search_users_example_call_tool.js +++ /dev/null @@ -1,24 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerDuty.SearchUsers"; - -const authResponse = await client.tools.authorize({ tool_name: TOOL_NAME, user_id: USER_ID }); -if (authResponse.status !== "completed") { - console.log(`Authorize here: ${authResponse.url}`); -} -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - query: "Alex", - auto_accept_matches: false, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty/search_users_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty/search_users_example_call_tool.py deleted file mode 100644 index a62cdbfe3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/search_users_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerDuty.SearchUsers" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) -if auth_response.status != "completed": - print(f"Authorize here: {auth_response.url}") -client.auth.wait_for_completion(auth_response) - -tool_input = { - "query": "Alex", - "auto_accept_matches": False, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty/whoami_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty/whoami_example_call_tool.js deleted file mode 100644 index 9e0b7d02d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/whoami_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerDuty.WhoAmI"; - -const authResponse = await client.tools.authorize({ tool_name: TOOL_NAME, user_id: USER_ID }); -if (authResponse.status !== "completed") { - console.log(`Authorize here: ${authResponse.url}`); -} -await client.auth.waitForCompletion(authResponse); - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: {}, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty/whoami_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty/whoami_example_call_tool.py deleted file mode 100644 index fec657a13..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty/whoami_example_call_tool.py +++ /dev/null @@ -1,18 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerDuty.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) -if auth_response.status != "completed": - print(f"Authorize here: {auth_response.url}") -client.auth.wait_for_completion(auth_response) - -response = client.tools.execute( - tool_name=TOOL_NAME, - input={}, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/add_cache_variable_to_service_event_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/add_cache_variable_to_service_event_example_call_tool.js deleted file mode 100644 index 4eaf4c276..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/add_cache_variable_to_service_event_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.AddCacheVariableToServiceEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_identifier": "svc-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/add_cache_variable_to_service_event_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/add_cache_variable_to_service_event_example_call_tool.py deleted file mode 100644 index 008966838..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/add_cache_variable_to_service_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.AddCacheVariableToServiceEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_identifier': 'svc-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/add_escalation_policy_to_team_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/add_escalation_policy_to_team_example_call_tool.js deleted file mode 100644 index 257816846..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/add_escalation_policy_to_team_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.AddEscalationPolicyToTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "escalation_policy_id": "policy_123", - "team_resource_id": "team_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/add_escalation_policy_to_team_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/add_escalation_policy_to_team_example_call_tool.py deleted file mode 100644 index 2efdf8a10..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/add_escalation_policy_to_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.AddEscalationPolicyToTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'escalation_policy_id': 'policy_123', 'team_resource_id': 'team_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/add_incident_note_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/add_incident_note_example_call_tool.js deleted file mode 100644 index 6c98c8289..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/add_incident_note_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.AddIncidentNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_id": "INC123456", - "user_email_address": "user@example.com", - "request_body": "{\"note\":\"This is a sample note for the incident.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/add_incident_note_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/add_incident_note_example_call_tool.py deleted file mode 100644 index 4ff0382ac..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/add_incident_note_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.AddIncidentNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_id': 'INC123456', - 'user_email_address': 'user@example.com', - 'request_body': '{"note":"This is a sample note for the incident."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/add_service_field_option_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/add_service_field_option_example_call_tool.js deleted file mode 100644 index ddc26e868..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/add_service_field_option_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.AddServiceFieldOption"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "field_identifier": "custom_field_123", - "request_body": "{\"option_name\":\"New Option\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/add_service_field_option_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/add_service_field_option_example_call_tool.py deleted file mode 100644 index 988b773e4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/add_service_field_option_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.AddServiceFieldOption" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'field_identifier': 'custom_field_123', - 'request_body': '{"option_name":"New Option"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/add_user_to_team_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/add_user_to_team_example_call_tool.js deleted file mode 100644 index c2f5f2697..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/add_user_to_team_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.AddUserToTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "T12345", - "user_id": "U67890", - "user_role_on_team": "responder" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/add_user_to_team_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/add_user_to_team_example_call_tool.py deleted file mode 100644 index 6604fb94c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/add_user_to_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.AddUserToTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': 'T12345', 'user_id': 'U67890', 'user_role_on_team': 'responder' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/assign_tags_to_pagerduty_entity_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/assign_tags_to_pagerduty_entity_example_call_tool.js deleted file mode 100644 index 46b97d0f0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/assign_tags_to_pagerduty_entity_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.AssignTagsToPagerdutyEntity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "entity_type": "users", - "resource_id": "user_123", - "request_body": "{\"tags\":[\"urgent\",\"support\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/assign_tags_to_pagerduty_entity_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/assign_tags_to_pagerduty_entity_example_call_tool.py deleted file mode 100644 index 06c703ff3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/assign_tags_to_pagerduty_entity_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.AssignTagsToPagerdutyEntity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'entity_type': 'users', - 'resource_id': 'user_123', - 'request_body': '{"tags":["urgent","support"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/associate_automation_action_with_service_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/associate_automation_action_with_service_example_call_tool.js deleted file mode 100644 index 0cbc67621..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/associate_automation_action_with_service_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.AssociateAutomationActionWithService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "request_body": "{\"action\":\"restart\",\"service_id\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/associate_automation_action_with_service_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/associate_automation_action_with_service_example_call_tool.py deleted file mode 100644 index 1d8c89f6e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/associate_automation_action_with_service_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.AssociateAutomationActionWithService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': '12345', - 'request_body': '{"action":"restart","service_id":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/associate_automation_action_with_team_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/associate_automation_action_with_team_example_call_tool.js deleted file mode 100644 index 6aeef89ba..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/associate_automation_action_with_team_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.AssociateAutomationActionWithTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "request_body": "{\"action\":\"link\",\"team_id\":\"team_1\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/associate_automation_action_with_team_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/associate_automation_action_with_team_example_call_tool.py deleted file mode 100644 index 32510b089..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/associate_automation_action_with_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.AssociateAutomationActionWithTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'resource_id': '12345', 'request_body': '{"action":"link","team_id":"team_1"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/associate_runner_with_team_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/associate_runner_with_team_example_call_tool.js deleted file mode 100644 index cf2d29dda..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/associate_runner_with_team_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.AssociateRunnerWithTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "request_body": "{\"runner_id\":\"runner_1\",\"team_id\":\"team_1\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/associate_runner_with_team_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/associate_runner_with_team_example_call_tool.py deleted file mode 100644 index 42d2f0ce7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/associate_runner_with_team_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.AssociateRunnerWithTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': '12345', - 'request_body': '{"runner_id":"runner_1","team_id":"team_1"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/associate_service_to_incident_workflow_trigger_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/associate_service_to_incident_workflow_trigger_example_call_tool.js deleted file mode 100644 index 01ab19cb5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/associate_service_to_incident_workflow_trigger_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.AssociateServiceToIncidentWorkflowTrigger"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "service_123", - "request_body": "{\"service_id\":\"service_123\",\"trigger_id\":\"trigger_456\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/associate_service_to_incident_workflow_trigger_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/associate_service_to_incident_workflow_trigger_example_call_tool.py deleted file mode 100644 index de707f0e6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/associate_service_to_incident_workflow_trigger_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.AssociateServiceToIncidentWorkflowTrigger" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'service_123', - 'request_body': '{"service_id":"service_123","trigger_id":"trigger_456"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/check_ability_status_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/check_ability_status_example_call_tool.js deleted file mode 100644 index d3424b877..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/check_ability_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CheckAbilityStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "ability_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/check_ability_status_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/check_ability_status_example_call_tool.py deleted file mode 100644 index 0df2aa07d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/check_ability_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CheckAbilityStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'ability_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/clear_business_service_priority_thresholds_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/clear_business_service_priority_thresholds_example_call_tool.js deleted file mode 100644 index 9402b3a2a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/clear_business_service_priority_thresholds_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ClearBusinessServicePriorityThresholds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/clear_business_service_priority_thresholds_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/clear_business_service_priority_thresholds_example_call_tool.py deleted file mode 100644 index 7d84b5578..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/clear_business_service_priority_thresholds_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ClearBusinessServicePriorityThresholds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/convert_service_event_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/convert_service_event_rules_example_call_tool.js deleted file mode 100644 index 7cba70415..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/convert_service_event_rules_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ConvertServiceEventRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "service-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/convert_service_event_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/convert_service_event_rules_example_call_tool.py deleted file mode 100644 index 69d593032..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/convert_service_event_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ConvertServiceEventRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'service-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_alert_grouping_setting_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_alert_grouping_setting_example_call_tool.js deleted file mode 100644 index 71eacca36..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_alert_grouping_setting_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateAlertGroupingSetting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"grouping_type\":\"service\",\"services\":[{\"id\":\"PABC123\"},{\"id\":\"PXYZ456\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_alert_grouping_setting_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_alert_grouping_setting_example_call_tool.py deleted file mode 100644 index 1f68df57d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_alert_grouping_setting_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateAlertGroupingSetting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"grouping_type":"service","services":[{"id":"PABC123"},{"id":"PXYZ456"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_alert_template_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_alert_template_example_call_tool.js deleted file mode 100644 index e0a0094fd..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_alert_template_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateAlertTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_body_html": "

This is a test alert template.

", - "email_subject": "Test Alert", - "short_message_template": "Alert: Test", - "template_description": "This template is used for testing alerts.", - "template_name": "Test Alert Template", - "template_type": "status_update" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_alert_template_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_alert_template_example_call_tool.py deleted file mode 100644 index 4ff84f6c7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_alert_template_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateAlertTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_body_html': '

This is a test alert template.

', - 'email_subject': 'Test Alert', - 'short_message_template': 'Alert: Test', - 'template_description': 'This template is used for testing alerts.', - 'template_name': 'Test Alert Template', - 'template_type': 'status_update' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_automation_action_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_automation_action_example_call_tool.js deleted file mode 100644 index 1031df81d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_automation_action_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateAutomationAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Sample Automation Action\",\"type\":\"script\",\"content\":\"echo 'Hello, World!'\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_automation_action_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_automation_action_example_call_tool.py deleted file mode 100644 index 5edce4d4d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_automation_action_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateAutomationAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Sample Automation Action","type":"script","content":"echo \'Hello, ' - 'World!\'"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_automation_runner_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_automation_runner_example_call_tool.js deleted file mode 100644 index 39d338ddb..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_automation_runner_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateAutomationRunner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Sample Automation Runner\",\"type\":\"Process\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_automation_runner_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_automation_runner_example_call_tool.py deleted file mode 100644 index 718d06228..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_automation_runner_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateAutomationRunner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"name":"Sample Automation Runner","type":"Process"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_business_service_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_business_service_example_call_tool.js deleted file mode 100644 index 478799782..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_business_service_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateBusinessService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "business_service_name": "Customer Support", - "business_service_description": "Handles all customer inquiries and support requests.", - "business_service_owner": "John Doe", - "team_id": "team_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_business_service_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_business_service_example_call_tool.py deleted file mode 100644 index 3e013c2a3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_business_service_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateBusinessService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'business_service_name': 'Customer Support', - 'business_service_description': 'Handles all customer inquiries and support requests.', - 'business_service_owner': 'John Doe', - 'team_id': 'team_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_cache_variable_event_orchestration_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_cache_variable_event_orchestration_example_call_tool.js deleted file mode 100644 index 4f1bd616a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_cache_variable_event_orchestration_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateCacheVariableEventOrchestration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_orchestration_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_cache_variable_event_orchestration_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_cache_variable_event_orchestration_example_call_tool.py deleted file mode 100644 index 71d84dc15..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_cache_variable_event_orchestration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateCacheVariableEventOrchestration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_orchestration_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_custom_field_option_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_custom_field_option_example_call_tool.js deleted file mode 100644 index dfd785537..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_custom_field_option_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateCustomFieldOption"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_type_id_or_name": "incident123", - "field_id": "field456", - "request_body": "{\"option\":\"New Option\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_custom_field_option_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_custom_field_option_example_call_tool.py deleted file mode 100644 index 335c3d341..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_custom_field_option_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateCustomFieldOption" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_type_id_or_name': 'incident123', - 'field_id': 'field456', - 'request_body': '{"option":"New Option"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_escalation_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_escalation_policy_example_call_tool.js deleted file mode 100644 index 64874cac3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_escalation_policy_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateEscalationPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "change_tracking_user_email": "user@example.com", - "request_body": "{\"escalation_rules\":[{\"escalation_level\":1,\"targets\":[{\"type\":\"user\",\"id\":\"PABC123\"}]}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_escalation_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_escalation_policy_example_call_tool.py deleted file mode 100644 index 17dbb8308..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_escalation_policy_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateEscalationPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'change_tracking_user_email': 'user@example.com', - 'request_body': '{"escalation_rules":[{"escalation_level":1,"targets":[{"type":"user","id":"PABC123"}]}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_event_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_event_integration_example_call_tool.js deleted file mode 100644 index cf6e28a92..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_event_integration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateEventIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "event_orchestration_id": "12345", - "request_body": "{\"name\":\"New Integration\",\"type\":\"webhook\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_event_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_event_integration_example_call_tool.py deleted file mode 100644 index b88aba821..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_event_integration_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateEventIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'event_orchestration_id': '12345', - 'request_body': '{"name":"New Integration","type":"webhook"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_event_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_event_rule_example_call_tool.js deleted file mode 100644 index 7408ef977..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_event_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateEventRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "request_body": "{\"event_type\":\"incident\",\"routing_key\":\"abcde\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_event_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_event_rule_example_call_tool.py deleted file mode 100644 index cef3cf4ec..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_event_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateEventRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': '12345', - 'request_body': '{"event_type":"incident","routing_key":"abcde"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_global_event_orchestration_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_global_event_orchestration_example_call_tool.js deleted file mode 100644 index 6e19e0708..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_global_event_orchestration_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateGlobalEventOrchestration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"global_rules\":[{\"rule_type\":\"filter\",\"conditions\":{\"severity\":\"critical\"}}],\"router_rules\":[{\"route_to\":\"serviceA\",\"conditions\":{\"source\":\"app1\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_global_event_orchestration_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_global_event_orchestration_example_call_tool.py deleted file mode 100644 index 46cf85696..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_global_event_orchestration_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateGlobalEventOrchestration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"global_rules":[{"rule_type":"filter","conditions":{"severity":"critical"}}],"router_rules":[{"route_to":"serviceA","conditions":{"source":"app1"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_handoff_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_handoff_notification_rule_example_call_tool.js deleted file mode 100644 index 19a0ccb42..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_handoff_notification_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateHandoffNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "user_123", - "request_body": "{\"notification_type\":\"email\",\"time\":\"09:00\",\"message\":\"Handoff to next user\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_handoff_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_handoff_notification_rule_example_call_tool.py deleted file mode 100644 index 51d54c4be..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_handoff_notification_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateHandoffNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'user_123', - 'request_body': '{"notification_type":"email","time":"09:00","message":"Handoff to next user"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_example_call_tool.js deleted file mode 100644 index c3dbaf7b1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateIncident"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_email": "user@example.com", - "request_body": "{\"incident\":{\"title\":\"Sample Incident\",\"service\":{\"id\":\"PABC123\"},\"urgency\":\"high\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_example_call_tool.py deleted file mode 100644 index 04a311257..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateIncident" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_email': 'user@example.com', - 'request_body': '{"incident":{"title":"Sample ' - 'Incident","service":{"id":"PABC123"},"urgency":"high"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_responder_request_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_responder_request_example_call_tool.js deleted file mode 100644 index 9d85bacc5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_responder_request_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateIncidentResponderRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_id": "INC123456", - "user_email": "user@example.com", - "request_body": "{\"description\":\"Need immediate assistance with the incident.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_responder_request_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_responder_request_example_call_tool.py deleted file mode 100644 index e87ef3d8e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_responder_request_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateIncidentResponderRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_id': 'INC123456', - 'user_email': 'user@example.com', - 'request_body': '{"description":"Need immediate assistance with the incident."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_type_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_type_custom_field_example_call_tool.js deleted file mode 100644 index 2ba2e4934..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_type_custom_field_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateIncidentTypeCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_type_id_or_name": "network_issue", - "request_body": "{\"field_name\":\"Severity\",\"field_type\":\"string\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_type_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_type_custom_field_example_call_tool.py deleted file mode 100644 index 6529b88b9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_type_custom_field_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateIncidentTypeCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_type_id_or_name': 'network_issue', - 'request_body': '{"field_name":"Severity","field_type":"string"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_type_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_type_example_call_tool.js deleted file mode 100644 index f84aefad4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_type_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateIncidentType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Security Incident\",\"description\":\"Incidents related to security breaches.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_type_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_type_example_call_tool.py deleted file mode 100644 index 7d3bf4052..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_type_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateIncidentType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Security Incident","description":"Incidents related to security ' - 'breaches."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_workflow_example_call_tool.js deleted file mode 100644 index d073be985..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_workflow_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateIncidentWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"incident_type\":\"network\",\"description\":\"Network outage in building 5\",\"steps\":[{\"action\":\"notify\",\"target\":\"team@example.com\"},{\"action\":\"escalate\",\"level\":2}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_workflow_example_call_tool.py deleted file mode 100644 index a89daf7ca..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_workflow_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateIncidentWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"incident_type":"network","description":"Network outage in building ' - '5","steps":[{"action":"notify","target":"team@example.com"},{"action":"escalate","level":2}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_workflow_trigger_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_workflow_trigger_example_call_tool.js deleted file mode 100644 index af51ff7bc..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_workflow_trigger_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateIncidentWorkflowTrigger"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"incident\":{\"title\":\"Sample Incident\",\"description\":\"This is a test incident.\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_workflow_trigger_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_workflow_trigger_example_call_tool.py deleted file mode 100644 index e05999172..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_incident_workflow_trigger_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateIncidentWorkflowTrigger" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"incident":{"title":"Sample Incident","description":"This is a test ' - 'incident."}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_maintenance_window_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_maintenance_window_example_call_tool.js deleted file mode 100644 index de8ecdab5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_maintenance_window_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateMaintenanceWindow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_email": "user@example.com", - "request_body": "{\"services\":[\"service1\",\"service2\"],\"start_time\":\"2023-10-01T00:00:00Z\",\"end_time\":\"2023-10-01T02:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_maintenance_window_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_maintenance_window_example_call_tool.py deleted file mode 100644 index 1888f82f0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_maintenance_window_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateMaintenanceWindow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_email': 'user@example.com', - 'request_body': '{"services":["service1","service2"],"start_time":"2023-10-01T00:00:00Z","end_time":"2023-10-01T02:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_new_service_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_new_service_example_call_tool.js deleted file mode 100644 index 189251d00..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_new_service_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateNewService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Service\",\"description\":\"Service for managing incidents\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_new_service_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_new_service_example_call_tool.py deleted file mode 100644 index 11bfced89..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_new_service_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateNewService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New Service","description":"Service for managing ' - 'incidents","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_new_team_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_new_team_example_call_tool.js deleted file mode 100644 index a9bfbafb4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_new_team_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateNewTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"team_name\":\"Dev Team\",\"users\":[{\"id\":\"user_1\"},{\"id\":\"user_2\"}],\"escalation_policy_id\":\"policy_1\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_new_team_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_new_team_example_call_tool.py deleted file mode 100644 index 83dad0b04..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_new_team_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateNewTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"team_name":"Dev ' - 'Team","users":[{"id":"user_1"},{"id":"user_2"}],"escalation_policy_id":"policy_1"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_oauth_client_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_oauth_client_example_call_tool.js deleted file mode 100644 index dff896e51..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_oauth_client_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateOauthClient"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "oauth_client_id": "123456", - "oauth_client_name": "MyWebhookClient", - "oauth_client_secret": "secret123", - "oauth_grant_type": "client_credentials", - "oauth_token_endpoint_url": "https://api.example.com/oauth/token", - "oauth_scopes_requested": "webhook:read,webhook:write" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_oauth_client_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_oauth_client_example_call_tool.py deleted file mode 100644 index edfda323b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_oauth_client_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateOauthClient" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'oauth_client_id': '123456', - 'oauth_client_name': 'MyWebhookClient', - 'oauth_client_secret': 'secret123', - 'oauth_grant_type': 'client_credentials', - 'oauth_token_endpoint_url': 'https://api.example.com/oauth/token', - 'oauth_scopes_requested': 'webhook:read,webhook:write' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_on_call_schedule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_on_call_schedule_example_call_tool.js deleted file mode 100644 index d391c59d9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_on_call_schedule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateOnCallSchedule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "allow_overflow": true, - "request_body": "{\"schedule\":{\"users\":[\"user1\",\"user2\"],\"time_periods\":[{\"start\":\"2023-10-01T00:00:00Z\",\"end\":\"2023-10-07T00:00:00Z\"}]}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_on_call_schedule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_on_call_schedule_example_call_tool.py deleted file mode 100644 index 676826190..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_on_call_schedule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateOnCallSchedule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'allow_overflow': True, - 'request_body': '{"schedule":{"users":["user1","user2"],"time_periods":[{"start":"2023-10-01T00:00:00Z","end":"2023-10-07T00:00:00Z"}]}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_pagerduty_user_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_pagerduty_user_example_call_tool.js deleted file mode 100644 index 746c228f2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_pagerduty_user_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreatePagerdutyUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "requester_email": "user@example.com", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"role\":\"admin\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_pagerduty_user_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_pagerduty_user_example_call_tool.py deleted file mode 100644 index e9b62194c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_pagerduty_user_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreatePagerdutyUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'requester_email': 'user@example.com', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com","role":"admin"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_ruleset_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_ruleset_example_call_tool.js deleted file mode 100644 index 6b2d498bb..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_ruleset_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateRuleset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Sample Ruleset\",\"rules\":[{\"event\":\"user.signup\",\"action\":\"send_welcome_email\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_ruleset_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_ruleset_example_call_tool.py deleted file mode 100644 index f2361a631..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_ruleset_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateRuleset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"Sample ' - 'Ruleset","rules":[{"event":"user.signup","action":"send_welcome_email"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_schedule_override_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_schedule_override_example_call_tool.js deleted file mode 100644 index 85f393cf9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_schedule_override_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateScheduleOverride"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "schedule_123", - "request_body": "{\"user_id\":\"user_456\",\"start_time\":\"2023-10-01T09:00:00Z\",\"end_time\":\"2023-10-01T17:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_schedule_override_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_schedule_override_example_call_tool.py deleted file mode 100644 index 9c5de2a69..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_schedule_override_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateScheduleOverride" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'schedule_123', - 'request_body': '{"user_id":"user_456","start_time":"2023-10-01T09:00:00Z","end_time":"2023-10-01T17:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_service_custom_field_example_call_tool.js deleted file mode 100644 index 3b5205f5d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_custom_field_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateServiceCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Custom Field\",\"type\":\"string\",\"options\":[\"Option 1\",\"Option 2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_service_custom_field_example_call_tool.py deleted file mode 100644 index ea56daec6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_custom_field_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateServiceCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New Custom Field","type":"string","options":["Option 1","Option 2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_dependency_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_service_dependency_example_call_tool.js deleted file mode 100644 index 9c47d48c0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_dependency_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateServiceDependency"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"service_id\":\"service_123\",\"dependent_service_id\":\"service_456\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_dependency_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_service_dependency_example_call_tool.py deleted file mode 100644 index f3b04bc4d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_dependency_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateServiceDependency" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"service_id":"service_123","dependent_service_id":"service_456"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_event_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_service_event_rule_example_call_tool.js deleted file mode 100644 index 2edab4a9b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_event_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateServiceEventRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "service_resource_id": "P123456", - "request_body": "{\"event_rule\":{\"name\":\"High CPU Usage\",\"conditions\":[{\"type\":\"metric\",\"metric\":\"cpu\",\"threshold\":80}]}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_event_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_service_event_rule_example_call_tool.py deleted file mode 100644 index 1ad1a9807..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_event_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateServiceEventRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'service_resource_id': 'P123456', - 'request_body': '{"event_rule":{"name":"High CPU ' - 'Usage","conditions":[{"type":"metric","metric":"cpu","threshold":80}]}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_extension_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_service_extension_example_call_tool.js deleted file mode 100644 index 48f244cfa..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_extension_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateServiceExtension"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Extension\",\"type\":\"webhook\",\"config\":{\"url\":\"https://example.com/webhook\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_extension_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_service_extension_example_call_tool.py deleted file mode 100644 index 95ce5eebb..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_extension_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateServiceExtension" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"name":"New ' - 'Extension","type":"webhook","config":{"url":"https://example.com/webhook"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_service_integration_example_call_tool.js deleted file mode 100644 index 167669d25..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_integration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateServiceIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "request_body": "{\"name\":\"New Integration\",\"type\":\"service\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_service_integration_example_call_tool.py deleted file mode 100644 index c515e6e56..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_service_integration_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateServiceIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': '12345', - 'request_body': '{"name":"New Integration","type":"service"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_post_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_post_example_call_tool.js deleted file mode 100644 index 4f13208a7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_post_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateStatusPagePost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "status_page_id": "12345", - "request_body": "{\"title\":\"Service Update\",\"content\":\"All systems operational.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_post_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_post_example_call_tool.py deleted file mode 100644 index d16563c23..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_post_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateStatusPagePost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'status_page_id': '12345', - 'request_body': '{"title":"Service Update","content":"All systems operational."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_post_update_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_post_update_example_call_tool.js deleted file mode 100644 index 05941e042..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_post_update_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateStatusPagePostUpdate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "status_page_post_id": "67890", - "request_body": "{\"update\":\"Service is back online.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_post_update_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_post_update_example_call_tool.py deleted file mode 100644 index b0d804de8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_post_update_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateStatusPagePostUpdate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': '12345', - 'status_page_post_id': '67890', - 'request_body': '{"update":"Service is back online."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_postmortem_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_postmortem_example_call_tool.js deleted file mode 100644 index e95adb4c6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_postmortem_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateStatusPagePostmortem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "status_page_post_id": "post_67890", - "request_body": "{\"summary\":\"Incident summary\",\"details\":\"Detailed explanation of the incident.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_postmortem_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_postmortem_example_call_tool.py deleted file mode 100644 index 739d717ba..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_postmortem_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateStatusPagePostmortem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': '12345', - 'status_page_post_id': 'post_67890', - 'request_body': '{"summary":"Incident summary","details":"Detailed explanation of the ' - 'incident."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_subscription_example_call_tool.js deleted file mode 100644 index e3a7ec4f3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_subscription_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateStatusPageSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "status_page_id": "12345", - "request_body": "{\"email\":\"user@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_subscription_example_call_tool.py deleted file mode 100644 index 19f051ed1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_status_page_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateStatusPageSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'status_page_id': '12345', 'request_body': '{"email":"user@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_tag_example_call_tool.js deleted file mode 100644 index f80ae1899..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_tag_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"tag\":\"urgent\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_tag_example_call_tool.py deleted file mode 100644 index 0d30e24ff..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"tag":"urgent"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_team_notification_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_team_notification_subscriptions_example_call_tool.js deleted file mode 100644 index ffd22dc68..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_team_notification_subscriptions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateTeamNotificationSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_id": "12345", - "request_body": "{\"subscriptionType\":\"email\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_team_notification_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_team_notification_subscriptions_example_call_tool.py deleted file mode 100644 index 2f30c2f5e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_team_notification_subscriptions_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateTeamNotificationSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_id': '12345', - 'request_body': '{"subscriptionType":"email","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_contact_method_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_user_contact_method_example_call_tool.js deleted file mode 100644 index b004169af..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_contact_method_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateUserContactMethod"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_id": "12345", - "request_body": "{\"type\":\"email\",\"value\":\"user@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_contact_method_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_user_contact_method_example_call_tool.py deleted file mode 100644 index b4931574d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_contact_method_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateUserContactMethod" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_id': '12345', - 'request_body': '{"type":"email","value":"user@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_user_notification_rule_example_call_tool.js deleted file mode 100644 index 7ce8cd158..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_notification_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateUserNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_resource_id": "user_12345", - "request_body": "{\"type\":\"email\",\"address\":\"user@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_user_notification_rule_example_call_tool.py deleted file mode 100644 index a4f59eccf..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_notification_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateUserNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_resource_id': 'user_12345', - 'request_body': '{"type":"email","address":"user@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_notification_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_user_notification_subscriptions_example_call_tool.js deleted file mode 100644 index eb8403891..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_notification_subscriptions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateUserNotificationSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "user_12345", - "request_body": "{\"subscription_type\":\"email\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_notification_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_user_notification_subscriptions_example_call_tool.py deleted file mode 100644 index 36a6608b2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_notification_subscriptions_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateUserNotificationSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'user_12345', - 'request_body': '{"subscription_type":"email","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_status_update_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_user_status_update_notification_rule_example_call_tool.js deleted file mode 100644 index d009b4e98..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_status_update_notification_rule_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateUserStatusUpdateNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "user_12345", - "status_update_notification_rule": { - "contact_method": "email", - "notification_preferences": { - "immediate": true, - "daily_summary": false - } - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_status_update_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_user_status_update_notification_rule_example_call_tool.py deleted file mode 100644 index 658cffe15..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_user_status_update_notification_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateUserStatusUpdateNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'user_12345', - 'status_update_notification_rule': { 'contact_method': 'email', - 'notification_preferences': { 'immediate': True, - 'daily_summary': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_webhook_subscription_example_call_tool.js deleted file mode 100644 index 7f8714280..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"webhook\":{\"name\":\"My Webhook\",\"url\":\"https://example.com/webhook\",\"events\":[\"incident.trigger\",\"incident.resolve\"]}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_webhook_subscription_example_call_tool.py deleted file mode 100644 index 436f8eafd..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"webhook":{"name":"My ' - 'Webhook","url":"https://example.com/webhook","events":["incident.trigger","incident.resolve"]}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_workflow_integration_connection_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/create_workflow_integration_connection_example_call_tool.js deleted file mode 100644 index 21dc117c9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_workflow_integration_connection_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.CreateWorkflowIntegrationConnection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workflow_integration_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/create_workflow_integration_connection_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/create_workflow_integration_connection_example_call_tool.py deleted file mode 100644 index 5a5ca73b0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/create_workflow_integration_connection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.CreateWorkflowIntegrationConnection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workflow_integration_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_alert_grouping_setting_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_alert_grouping_setting_example_call_tool.js deleted file mode 100644 index 41245cdb7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_alert_grouping_setting_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteAlertGroupingSetting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alert_grouping_setting_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_alert_grouping_setting_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_alert_grouping_setting_example_call_tool.py deleted file mode 100644 index 70474f805..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_alert_grouping_setting_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteAlertGroupingSetting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alert_grouping_setting_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_automation_action_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_automation_action_example_call_tool.js deleted file mode 100644 index 087d340ed..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_automation_action_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteAutomationAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_automation_action_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_automation_action_example_call_tool.py deleted file mode 100644 index 79ec291f6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_automation_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteAutomationAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_automation_action_runner_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_automation_action_runner_example_call_tool.js deleted file mode 100644 index e810ac54e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_automation_action_runner_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteAutomationActionRunner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "runner_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_automation_action_runner_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_automation_action_runner_example_call_tool.py deleted file mode 100644 index 6824614d7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_automation_action_runner_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteAutomationActionRunner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'runner_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_business_service_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_business_service_example_call_tool.js deleted file mode 100644 index 7d385210c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_business_service_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteBusinessService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "business_service_id": "BS12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_business_service_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_business_service_example_call_tool.py deleted file mode 100644 index 249ed8e18..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_business_service_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteBusinessService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'business_service_id': 'BS12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_cache_variable_global_event_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_cache_variable_global_event_example_call_tool.js deleted file mode 100644 index 9d519802b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_cache_variable_global_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteCacheVariableGlobalEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cache_variable_id": "var123", - "event_orchestration_id": "event456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_cache_variable_global_event_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_cache_variable_global_event_example_call_tool.py deleted file mode 100644 index ca80fa38a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_cache_variable_global_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteCacheVariableGlobalEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cache_variable_id': 'var123', 'event_orchestration_id': 'event456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_custom_field_option_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_custom_field_option_example_call_tool.js deleted file mode 100644 index 648903fa6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_custom_field_option_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteCustomFieldOption"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "field_identifier": "custom_field_123", - "field_option_id": "option_456", - "incident_type_identifier": "incident_type_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_custom_field_option_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_custom_field_option_example_call_tool.py deleted file mode 100644 index 342132e1a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_custom_field_option_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteCustomFieldOption" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'field_identifier': 'custom_field_123', - 'field_option_id': 'option_456', - 'incident_type_identifier': 'incident_type_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_escalation_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_escalation_policy_example_call_tool.js deleted file mode 100644 index 9fa91d4f1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_escalation_policy_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteEscalationPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "escalation_policy_id": "EP123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_escalation_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_escalation_policy_example_call_tool.py deleted file mode 100644 index 6fa4aee5c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_escalation_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteEscalationPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'escalation_policy_id': 'EP123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_event_orchestration_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_event_orchestration_example_call_tool.js deleted file mode 100644 index d3664e27a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_event_orchestration_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteEventOrchestration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_orchestration_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_event_orchestration_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_event_orchestration_example_call_tool.py deleted file mode 100644 index 5f1ea303e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_event_orchestration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteEventOrchestration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_orchestration_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_event_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_event_rule_example_call_tool.js deleted file mode 100644 index a4bc24682..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_event_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteEventRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_rule_id": "12345", - "resource_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_event_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_event_rule_example_call_tool.py deleted file mode 100644 index 31509070f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_event_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteEventRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_rule_id': '12345', 'resource_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_extension_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_extension_example_call_tool.js deleted file mode 100644 index 72d42f012..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_extension_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteExtension"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "ext-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_extension_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_extension_example_call_tool.py deleted file mode 100644 index 1ad04bc67..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_extension_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteExtension" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'ext-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_external_data_cache_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_external_data_cache_variable_example_call_tool.js deleted file mode 100644 index efd4015e2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_external_data_cache_variable_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteExternalDataCacheVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cache_variable_id": "var123", - "event_orchestration_id": "event456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_external_data_cache_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_external_data_cache_variable_example_call_tool.py deleted file mode 100644 index 654002fc9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_external_data_cache_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteExternalDataCacheVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cache_variable_id': 'var123', 'event_orchestration_id': 'event456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_type_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_type_custom_field_example_call_tool.js deleted file mode 100644 index 7102f8131..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_type_custom_field_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteIncidentTypeCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "field_id": "cf_12345", - "incident_type_id_or_name": "incident_type_1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_type_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_type_custom_field_example_call_tool.py deleted file mode 100644 index 09b3c69c8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_type_custom_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteIncidentTypeCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'field_id': 'cf_12345', 'incident_type_id_or_name': 'incident_type_1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_workflow_example_call_tool.js deleted file mode 100644 index ea5b6b248..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_workflow_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteIncidentWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_workflow_example_call_tool.py deleted file mode 100644 index 2f43e6a81..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_workflow_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteIncidentWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_workflow_trigger_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_workflow_trigger_example_call_tool.js deleted file mode 100644 index e90df8c9c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_workflow_trigger_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteIncidentWorkflowTrigger"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_workflow_trigger_id": "trigger_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_workflow_trigger_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_workflow_trigger_example_call_tool.py deleted file mode 100644 index bbafba3ce..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_incident_workflow_trigger_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteIncidentWorkflowTrigger" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_workflow_trigger_id': 'trigger_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_integration_routing_key_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_integration_routing_key_example_call_tool.js deleted file mode 100644 index f68985264..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_integration_routing_key_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteIntegrationRoutingKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_orchestration_id": "eo_123456", - "integration_id": "int_789012" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_integration_routing_key_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_integration_routing_key_example_call_tool.py deleted file mode 100644 index 9171e6f0a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_integration_routing_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteIntegrationRoutingKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_orchestration_id': 'eo_123456', 'integration_id': 'int_789012' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_maintenance_window_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_maintenance_window_example_call_tool.js deleted file mode 100644 index 4187b6a90..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_maintenance_window_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteMaintenanceWindow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maintenance_window_id": "MW123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_maintenance_window_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_maintenance_window_example_call_tool.py deleted file mode 100644 index e7edf9c2d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_maintenance_window_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteMaintenanceWindow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maintenance_window_id': 'MW123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_oauth_client_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_oauth_client_example_call_tool.js deleted file mode 100644 index e21580a77..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_oauth_client_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteOauthClient"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "client_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_oauth_client_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_oauth_client_example_call_tool.py deleted file mode 100644 index 55da32ad5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_oauth_client_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteOauthClient" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'client_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_oauth_delegations_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_oauth_delegations_example_call_tool.js deleted file mode 100644 index 62e6ce7b6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_oauth_delegations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteOauthDelegations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "delegation_type": "mobile,web", - "user_identifier": "user_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_oauth_delegations_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_oauth_delegations_example_call_tool.py deleted file mode 100644 index b3ab6119d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_oauth_delegations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteOauthDelegations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'delegation_type': 'mobile,web', 'user_identifier': 'user_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_pagerduty_session_configurations_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_pagerduty_session_configurations_example_call_tool.js deleted file mode 100644 index 12161459f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_pagerduty_session_configurations_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeletePagerdutySessionConfigurations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "session_configuration_type": "mobile,web" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_pagerduty_session_configurations_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_pagerduty_session_configurations_example_call_tool.py deleted file mode 100644 index 7a9345df9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_pagerduty_session_configurations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeletePagerdutySessionConfigurations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'session_configuration_type': 'mobile,web' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_postmortem_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_postmortem_example_call_tool.js deleted file mode 100644 index 730fe875c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_postmortem_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeletePostmortem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "pm_12345", - "status_page_post_id": "post_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_postmortem_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_postmortem_example_call_tool.py deleted file mode 100644 index 1f49caa59..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_postmortem_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeletePostmortem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'pm_12345', 'status_page_post_id': 'post_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_ruleset_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_ruleset_example_call_tool.js deleted file mode 100644 index adf43030d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_ruleset_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteRuleset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ruleset_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_ruleset_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_ruleset_example_call_tool.py deleted file mode 100644 index f0713fbac..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_ruleset_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteRuleset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ruleset_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_schedule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_schedule_example_call_tool.js deleted file mode 100644 index 76f228a05..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_schedule_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteSchedule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "schedule_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_schedule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_schedule_example_call_tool.py deleted file mode 100644 index 53414c538..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_schedule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteSchedule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'schedule_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_schedule_override_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_schedule_override_example_call_tool.js deleted file mode 100644 index 5cb958409..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_schedule_override_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteScheduleOverride"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "override_id": "12345", - "resource_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_schedule_override_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_schedule_override_example_call_tool.py deleted file mode 100644 index 67ad082dd..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_schedule_override_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteScheduleOverride" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'override_id': '12345', 'resource_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_cache_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_cache_variable_example_call_tool.js deleted file mode 100644 index ac9665785..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_cache_variable_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteServiceCacheVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cache_variable_id": "var123", - "service_identifier": "service456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_cache_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_cache_variable_example_call_tool.py deleted file mode 100644 index 36134ddaa..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_cache_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteServiceCacheVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cache_variable_id': 'var123', 'service_identifier': 'service456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_custom_field_example_call_tool.js deleted file mode 100644 index e39e53b75..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_custom_field_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteServiceCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "field_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_custom_field_example_call_tool.py deleted file mode 100644 index 97490551b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_custom_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteServiceCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'field_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_custom_field_option_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_custom_field_option_example_call_tool.js deleted file mode 100644 index 0c2ba5747..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_custom_field_option_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteServiceCustomFieldOption"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "field_identifier": "field_123", - "field_option_id": "option_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_custom_field_option_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_custom_field_option_example_call_tool.py deleted file mode 100644 index 50415ff88..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_custom_field_option_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteServiceCustomFieldOption" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'field_identifier': 'field_123', 'field_option_id': 'option_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_event_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_event_rule_example_call_tool.js deleted file mode 100644 index 59b164072..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_event_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteServiceEventRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_rule_id": "ER123456", - "service_id": "S789012" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_event_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_event_rule_example_call_tool.py deleted file mode 100644 index 096617c73..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_event_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteServiceEventRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_rule_id': 'ER123456', 'service_id': 'S789012' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_example_call_tool.js deleted file mode 100644 index 9bab15574..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_example_call_tool.py deleted file mode 100644 index 091cf747f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_service_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_post_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_post_example_call_tool.js deleted file mode 100644 index 23e15608e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_post_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteStatusPagePost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_page_id": "12345", - "status_page_post_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_post_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_post_example_call_tool.py deleted file mode 100644 index 0663685a8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_post_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteStatusPagePost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_page_id': '12345', 'status_page_post_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_post_update_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_post_update_example_call_tool.js deleted file mode 100644 index 30bf22114..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_post_update_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteStatusPagePostUpdate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "12345", - "status_page_post_id": "67890", - "status_page_post_update_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_post_update_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_post_update_example_call_tool.py deleted file mode 100644 index f8b3faecb..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_post_update_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteStatusPagePostUpdate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': '12345', 'status_page_post_id': '67890', 'status_page_post_update_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_subscription_example_call_tool.js deleted file mode 100644 index 5caf81d0b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_subscription_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteStatusPageSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "status_page_123", - "status_page_subscription_id": "subscription_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_subscription_example_call_tool.py deleted file mode 100644 index 92a5ecb17..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_status_page_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteStatusPageSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'status_page_123', 'status_page_subscription_id': 'subscription_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_team_in_pagerduty_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_team_in_pagerduty_example_call_tool.js deleted file mode 100644 index 0f9660265..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_team_in_pagerduty_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteTeamInPagerduty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "T12345", - "reassignment_team_id": "T67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_team_in_pagerduty_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_team_in_pagerduty_example_call_tool.py deleted file mode 100644 index 027508ba2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_team_in_pagerduty_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteTeamInPagerduty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': 'T12345', 'reassignment_team_id': 'T67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_template_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_template_example_call_tool.js deleted file mode 100644 index d266a4056..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_template_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "template_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_template_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_template_example_call_tool.py deleted file mode 100644 index e0e8cf5ed..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'template_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_user_handoff_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_user_handoff_notification_rule_example_call_tool.js deleted file mode 100644 index 7ce314d74..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_user_handoff_notification_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteUserHandoffNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "oncall_handoff_notification_rule_id": "rule_12345", - "user_resource_id": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_user_handoff_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_user_handoff_notification_rule_example_call_tool.py deleted file mode 100644 index 5666d601c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_user_handoff_notification_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteUserHandoffNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'oncall_handoff_notification_rule_id': 'rule_12345', 'user_resource_id': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_webhook_subscription_example_call_tool.js deleted file mode 100644 index d40ded4d1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_webhook_subscription_example_call_tool.py deleted file mode 100644 index 80a46c0c7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_workflow_integration_connection_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/delete_workflow_integration_connection_example_call_tool.js deleted file mode 100644 index 64f5cdc23..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_workflow_integration_connection_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DeleteWorkflowIntegrationConnection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "12345", - "workflow_integration_id": "abcde-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/delete_workflow_integration_connection_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/delete_workflow_integration_connection_example_call_tool.py deleted file mode 100644 index adae87837..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/delete_workflow_integration_connection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DeleteWorkflowIntegrationConnection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': '12345', 'workflow_integration_id': 'abcde-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_automation_action_from_service_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_automation_action_from_service_example_call_tool.js deleted file mode 100644 index debe2c91c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_automation_action_from_service_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DisassociateAutomationActionFromService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "action_123", - "service_id": "service_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_automation_action_from_service_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_automation_action_from_service_example_call_tool.py deleted file mode 100644 index c4b6e86c8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_automation_action_from_service_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DisassociateAutomationActionFromService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'action_123', 'service_id': 'service_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_automation_action_from_team_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_automation_action_from_team_example_call_tool.js deleted file mode 100644 index 948cc9643..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_automation_action_from_team_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DisassociateAutomationActionFromTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "action_123", - "team_id": "team_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_automation_action_from_team_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_automation_action_from_team_example_call_tool.py deleted file mode 100644 index 1eab4bb08..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_automation_action_from_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DisassociateAutomationActionFromTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'action_123', 'team_id': 'team_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_runner_from_team_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_runner_from_team_example_call_tool.js deleted file mode 100644 index b979acc94..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_runner_from_team_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.DisassociateRunnerFromTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "runner_12345", - "team_id": "team_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_runner_from_team_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_runner_from_team_example_call_tool.py deleted file mode 100644 index dc33c6ba1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/disassociate_runner_from_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.DisassociateRunnerFromTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'runner_12345', 'team_id': 'team_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/enable_pagerduty_extension_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/enable_pagerduty_extension_example_call_tool.js deleted file mode 100644 index 4fb1aa7b8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/enable_pagerduty_extension_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.EnablePagerdutyExtension"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "ext-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/enable_pagerduty_extension_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/enable_pagerduty_extension_example_call_tool.py deleted file mode 100644 index c55f545e0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/enable_pagerduty_extension_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.EnablePagerdutyExtension" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'ext-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/enable_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/enable_webhook_subscription_example_call_tool.js deleted file mode 100644 index 59de72ff5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/enable_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.EnableWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "webhook_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/enable_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/enable_webhook_subscription_example_call_tool.py deleted file mode 100644 index 1717e4623..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/enable_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.EnableWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'webhook_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/fetch_incident_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/fetch_incident_logs_example_call_tool.js deleted file mode 100644 index 78b3a65ca..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/fetch_incident_logs_example_call_tool.js +++ /dev/null @@ -1,42 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.FetchIncidentLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "additional_models_to_include": "incidents, services", - "include_total_in_pagination": true, - "pagination_offset": 10, - "render_results_in_time_zone": "UTC", - "results_per_page": 25, - "return_important_changes_only": false, - "search_end_date": "2023-10-31", - "start_date_range": "2023-10-01", - "team_ids": [ - "team1", - "team2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/fetch_incident_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/fetch_incident_logs_example_call_tool.py deleted file mode 100644 index a6516bebc..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/fetch_incident_logs_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.FetchIncidentLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'additional_models_to_include': 'incidents, services', - 'include_total_in_pagination': True, - 'pagination_offset': 10, - 'render_results_in_time_zone': 'UTC', - 'results_per_page': 25, - 'return_important_changes_only': False, - 'search_end_date': '2023-10-31', - 'start_date_range': '2023-10-01', - 'team_ids': ['team1', 'team2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/fetch_incident_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/fetch_incident_metrics_example_call_tool.js deleted file mode 100644 index 5958df36f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/fetch_incident_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.FetchIncidentMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"policy_id\":\"12345\",\"metrics\":[\"Seconds to Resolve\",\"Seconds to Engage\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/fetch_incident_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/fetch_incident_metrics_example_call_tool.py deleted file mode 100644 index 30ae32583..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/fetch_incident_metrics_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.FetchIncidentMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"policy_id":"12345","metrics":["Seconds to Resolve","Seconds to Engage"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/fetch_responder_team_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/fetch_responder_team_metrics_example_call_tool.js deleted file mode 100644 index 608a4bd11..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/fetch_responder_team_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.FetchResponderTeamMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"team_id\":\"12345\",\"metric_type\":\"response_time\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/fetch_responder_team_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/fetch_responder_team_metrics_example_call_tool.py deleted file mode 100644 index 008a21d34..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/fetch_responder_team_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.FetchResponderTeamMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"team_id":"12345","metric_type":"response_time"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_account_abilities_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_account_abilities_example_call_tool.js deleted file mode 100644 index d1a59b2bf..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_account_abilities_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetAccountAbilities"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_account_abilities_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_account_abilities_example_call_tool.py deleted file mode 100644 index cc127ce88..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_account_abilities_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetAccountAbilities" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_account_standards_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_account_standards_example_call_tool.js deleted file mode 100644 index 3e71a1fce..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_account_standards_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetAccountStandards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "active_standards_only": true, - "resource_type_filter": "technical_service" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_account_standards_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_account_standards_example_call_tool.py deleted file mode 100644 index e21f4df21..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_account_standards_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetAccountStandards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'active_standards_only': True, 'resource_type_filter': 'technical_service' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_addon_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_addon_details_example_call_tool.js deleted file mode 100644 index 22376351a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_addon_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetAddonDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "addon_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_addon_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_addon_details_example_call_tool.py deleted file mode 100644 index 6e14d612b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_addon_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetAddonDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'addon_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_aggregated_incident_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_aggregated_incident_metrics_example_call_tool.js deleted file mode 100644 index 2548db242..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_aggregated_incident_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetAggregatedIncidentMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"team_ids\":[\"team1\",\"team2\"],\"time_range\":\"last_30_days\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_aggregated_incident_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_aggregated_incident_metrics_example_call_tool.py deleted file mode 100644 index c052fcbbb..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_aggregated_incident_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetAggregatedIncidentMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"team_ids":["team1","team2"],"time_range":"last_30_days"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_alert_grouping_setting_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_alert_grouping_setting_example_call_tool.js deleted file mode 100644 index b1de3a630..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_alert_grouping_setting_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetAlertGroupingSetting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_alert_grouping_setting_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_alert_grouping_setting_example_call_tool.py deleted file mode 100644 index 41b3c6560..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_alert_grouping_setting_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetAlertGroupingSetting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_analytics_metrics_for_all_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_analytics_metrics_for_all_teams_example_call_tool.js deleted file mode 100644 index 3b7ae05f2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_analytics_metrics_for_all_teams_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetAnalyticsMetricsForAllTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"team_ids\":[\"team1\",\"team2\"],\"service_ids\":[\"service1\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_analytics_metrics_for_all_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_analytics_metrics_for_all_teams_example_call_tool.py deleted file mode 100644 index 76afb7e15..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_analytics_metrics_for_all_teams_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetAnalyticsMetricsForAllTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"team_ids":["team1","team2"],"service_ids":["service1"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_analytics_metrics_pd_advance_usage_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_analytics_metrics_pd_advance_usage_example_call_tool.js deleted file mode 100644 index c98c6b804..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_analytics_metrics_pd_advance_usage_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetAnalyticsMetricsPdAdvanceUsage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"feature\":\"PD Advance\",\"timeframe\":\"last_30_days\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_analytics_metrics_pd_advance_usage_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_analytics_metrics_pd_advance_usage_example_call_tool.py deleted file mode 100644 index c59b9b473..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_analytics_metrics_pd_advance_usage_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetAnalyticsMetricsPdAdvanceUsage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"feature":"PD Advance","timeframe":"last_30_days"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_example_call_tool.js deleted file mode 100644 index bcf81cc3f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetAutomationAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "action_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_example_call_tool.py deleted file mode 100644 index 7db8c1e58..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetAutomationAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'action_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_invocation_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_invocation_example_call_tool.js deleted file mode 100644 index c1a82adb4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_invocation_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetAutomationActionInvocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_invocation_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_invocation_example_call_tool.py deleted file mode 100644 index 6bbd2dea8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_invocation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetAutomationActionInvocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_runner_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_runner_example_call_tool.js deleted file mode 100644 index 2dcebcd60..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_runner_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetAutomationActionRunner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "runner_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_runner_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_runner_example_call_tool.py deleted file mode 100644 index eb2ea4913..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_runner_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetAutomationActionRunner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'runner_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_service_association_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_service_association_example_call_tool.js deleted file mode 100644 index 18211ef0b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_service_association_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetAutomationActionServiceAssociation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "action_12345", - "service_identifier": "service_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_service_association_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_service_association_example_call_tool.py deleted file mode 100644 index 5875e89cf..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_service_association_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetAutomationActionServiceAssociation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'action_12345', 'service_identifier': 'service_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_team_association_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_team_association_example_call_tool.js deleted file mode 100644 index 85a084940..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_team_association_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetAutomationActionTeamAssociation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "action_123", - "team_id": "team_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_team_association_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_team_association_example_call_tool.py deleted file mode 100644 index ed7ca2b41..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_automation_action_team_association_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetAutomationActionTeamAssociation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'action_123', 'team_id': 'team_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_dependencies_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_dependencies_example_call_tool.js deleted file mode 100644 index 83a87706b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_dependencies_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetBusinessServiceDependencies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_id": "BS12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_dependencies_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_dependencies_example_call_tool.py deleted file mode 100644 index 018b2e76e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_dependencies_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetBusinessServiceDependencies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_id': 'BS12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_details_example_call_tool.js deleted file mode 100644 index ac07b4c46..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetBusinessServiceDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "business_service_id": "BS12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_details_example_call_tool.py deleted file mode 100644 index b86f6f1e6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetBusinessServiceDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'business_service_id': 'BS12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_impacts_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_impacts_example_call_tool.js deleted file mode 100644 index b63db4ae3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_impacts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetBusinessServiceImpacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "business_service_ids": "12345,67890", - "include_additional_fields": "services.highest_impacting_priority" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_impacts_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_impacts_example_call_tool.py deleted file mode 100644 index 5c698ed42..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_impacts_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetBusinessServiceImpacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'business_service_ids': '12345,67890', - 'include_additional_fields': 'services.highest_impacting_priority' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_subscribers_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_subscribers_example_call_tool.js deleted file mode 100644 index 810fbf057..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_subscribers_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetBusinessServiceSubscribers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "business_service_id": "service_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_subscribers_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_subscribers_example_call_tool.py deleted file mode 100644 index de410de64..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_business_service_subscribers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetBusinessServiceSubscribers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'business_service_id': 'service_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_cache_variable_global_event_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_cache_variable_global_event_example_call_tool.js deleted file mode 100644 index 555630f70..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_cache_variable_global_event_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetCacheVariableGlobalEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cache_variable_identifier": "user_session_data", - "event_orchestration_id": "event_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_cache_variable_global_event_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_cache_variable_global_event_example_call_tool.py deleted file mode 100644 index 0df750a93..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_cache_variable_global_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetCacheVariableGlobalEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cache_variable_identifier': 'user_session_data', 'event_orchestration_id': 'event_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_change_event_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_change_event_details_example_call_tool.js deleted file mode 100644 index 16535bf25..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_change_event_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetChangeEventDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "change_event_id": "evt_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_change_event_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_change_event_details_example_call_tool.py deleted file mode 100644 index 54d655a21..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_change_event_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetChangeEventDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'change_event_id': 'evt_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_current_user_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_current_user_details_example_call_tool.js deleted file mode 100644 index b8a884f24..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_current_user_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetCurrentUserDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "additional_models_to_include": "teams" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_current_user_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_current_user_details_example_call_tool.py deleted file mode 100644 index caf3963d1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_current_user_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetCurrentUserDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'additional_models_to_include': 'teams' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_custom_field_option_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_custom_field_option_example_call_tool.js deleted file mode 100644 index df7f192e8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_custom_field_option_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetCustomFieldOption"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "field_id": "custom_field_123", - "field_option_id": "option_456", - "incident_type_identifier": "incident_type_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_custom_field_option_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_custom_field_option_example_call_tool.py deleted file mode 100644 index f05646e28..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_custom_field_option_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetCustomFieldOption" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'field_id': 'custom_field_123', - 'field_option_id': 'option_456', - 'incident_type_identifier': 'incident_type_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_custom_field_values_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_custom_field_values_example_call_tool.js deleted file mode 100644 index 7b238fa35..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_custom_field_values_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetCustomFieldValues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_id": "INC123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_custom_field_values_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_custom_field_values_example_call_tool.py deleted file mode 100644 index 5d58e7bcd..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_custom_field_values_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetCustomFieldValues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_id': 'INC123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_enriched_incident_data_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_enriched_incident_data_example_call_tool.js deleted file mode 100644 index 7ee880f5d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_enriched_incident_data_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetEnrichedIncidentData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_id": "INC123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_enriched_incident_data_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_enriched_incident_data_example_call_tool.py deleted file mode 100644 index 139648dbc..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_enriched_incident_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetEnrichedIncidentData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_id': 'INC123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_audit_records_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_audit_records_example_call_tool.js deleted file mode 100644 index 0f6e17e00..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_audit_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetEscalationPolicyAuditRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "escalation_policy_123", - "end_date_of_search": "2023-10-01", - "result_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_audit_records_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_audit_records_example_call_tool.py deleted file mode 100644 index c9f74f2ba..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_audit_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetEscalationPolicyAuditRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'escalation_policy_123', 'end_date_of_search': '2023-10-01', 'result_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_example_call_tool.js deleted file mode 100644 index cbb9135a9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetEscalationPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "policy_123", - "include_models": "services,teams" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_example_call_tool.py deleted file mode 100644 index 5bcca7645..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetEscalationPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'policy_123', 'include_models': 'services,teams' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_metrics_example_call_tool.js deleted file mode 100644 index 854afa07d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetEscalationPolicyMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"escalation_policy_id\":\"12345\",\"time_frame\":\"last_30_days\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_metrics_example_call_tool.py deleted file mode 100644 index e579e6483..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_escalation_policy_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetEscalationPolicyMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"escalation_policy_id":"12345","time_frame":"last_30_days"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_event_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_event_rule_example_call_tool.js deleted file mode 100644 index 8bb6bec7d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_event_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetEventRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_rule_id": "12345", - "resource_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_event_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_event_rule_example_call_tool.py deleted file mode 100644 index 758014df0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_event_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetEventRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_rule_id': '12345', 'resource_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_event_rule_from_service_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_event_rule_from_service_example_call_tool.js deleted file mode 100644 index 20726d1da..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_event_rule_from_service_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetEventRuleFromService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_rule_id": "12345", - "resource_id": "service_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_event_rule_from_service_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_event_rule_from_service_example_call_tool.py deleted file mode 100644 index 530e2e579..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_event_rule_from_service_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetEventRuleFromService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_rule_id': '12345', 'resource_id': 'service_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_extension_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_extension_details_example_call_tool.js deleted file mode 100644 index fd741ddc4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_extension_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetExtensionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "ext-12345", - "include_additional_details": "extension_schemas" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_extension_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_extension_details_example_call_tool.py deleted file mode 100644 index 572d989e8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_extension_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetExtensionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'ext-12345', 'include_additional_details': 'extension_schemas' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_extension_vendor_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_extension_vendor_details_example_call_tool.js deleted file mode 100644 index 56e3dd9ae..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_extension_vendor_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetExtensionVendorDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "vendor_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_extension_vendor_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_extension_vendor_details_example_call_tool.py deleted file mode 100644 index cdff034ad..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_extension_vendor_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetExtensionVendorDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'vendor_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_external_data_cache_var_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_external_data_cache_var_example_call_tool.js deleted file mode 100644 index 61a448916..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_external_data_cache_var_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetExternalDataCacheVar"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cache_variable_id": "var123", - "event_orchestration_id": "event456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_external_data_cache_var_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_external_data_cache_var_example_call_tool.py deleted file mode 100644 index 013c00c87..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_external_data_cache_var_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetExternalDataCacheVar" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cache_variable_id': 'var123', 'event_orchestration_id': 'event456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_global_event_orchestration_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_global_event_orchestration_example_call_tool.js deleted file mode 100644 index 3bd636526..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_global_event_orchestration_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetGlobalEventOrchestration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_orchestration_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_global_event_orchestration_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_global_event_orchestration_example_call_tool.py deleted file mode 100644 index c16ea1556..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_global_event_orchestration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetGlobalEventOrchestration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_orchestration_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_global_orchestration_routing_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_global_orchestration_routing_rules_example_call_tool.js deleted file mode 100644 index 90ead38fd..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_global_orchestration_routing_rules_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetGlobalOrchestrationRoutingRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_orchestration_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_global_orchestration_routing_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_global_orchestration_routing_rules_example_call_tool.py deleted file mode 100644 index b8488e69c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_global_orchestration_routing_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetGlobalOrchestrationRoutingRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_orchestration_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_global_orchestration_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_global_orchestration_rules_example_call_tool.js deleted file mode 100644 index af7b49159..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_global_orchestration_rules_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetGlobalOrchestrationRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_orchestration_id": "event123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_global_orchestration_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_global_orchestration_rules_example_call_tool.py deleted file mode 100644 index ccb330d63..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_global_orchestration_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetGlobalOrchestrationRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_orchestration_id': 'event123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_impacted_business_services_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_impacted_business_services_example_call_tool.js deleted file mode 100644 index 1725b1557..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_impacted_business_services_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetImpactedBusinessServices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_id": "INC123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_impacted_business_services_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_impacted_business_services_example_call_tool.py deleted file mode 100644 index b26c80477..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_impacted_business_services_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetImpactedBusinessServices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_id': 'INC123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_impacted_services_dashboard_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_impacted_services_dashboard_example_call_tool.js deleted file mode 100644 index 4e5bdc0df..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_impacted_services_dashboard_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetImpactedServicesDashboard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_dashboard_id": "dashboard_123", - "include_additional_fields": "total_impacted_count" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_impacted_services_dashboard_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_impacted_services_dashboard_example_call_tool.py deleted file mode 100644 index a7220be7a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_impacted_services_dashboard_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetImpactedServicesDashboard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_dashboard_id': 'dashboard_123', 'include_additional_fields': 'total_impacted_count' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_alert_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_alert_details_example_call_tool.js deleted file mode 100644 index 87e103dac..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_alert_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIncidentAlertDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alert_identifier": "ALERT12345", - "resource_id": "RESOURCE67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_alert_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_alert_details_example_call_tool.py deleted file mode 100644 index 9485d7cd2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_alert_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIncidentAlertDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alert_identifier': 'ALERT12345', 'resource_id': 'RESOURCE67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_analytics_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_analytics_example_call_tool.js deleted file mode 100644 index 23bda361f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_analytics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIncidentAnalytics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"team_ids\":[\"team_123\"],\"metrics\":[\"seconds_to_resolve\",\"sleep_hour_interruptions\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_analytics_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_analytics_example_call_tool.py deleted file mode 100644 index 257650715..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_analytics_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIncidentAnalytics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"team_ids":["team_123"],"metrics":["seconds_to_resolve","sleep_hour_interruptions"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_analytics_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_analytics_metrics_example_call_tool.js deleted file mode 100644 index d4de3bea5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_analytics_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIncidentAnalyticsMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"service_id\":\"12345\",\"time_unit\":\"week\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_analytics_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_analytics_metrics_example_call_tool.py deleted file mode 100644 index 7034808b4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_analytics_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIncidentAnalyticsMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"service_id":"12345","time_unit":"week"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_details_example_call_tool.js deleted file mode 100644 index 60d77c127..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIncidentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_id": "INC123456", - "include_details": "acknowledgers,assignees" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_details_example_call_tool.py deleted file mode 100644 index 9b304c471..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIncidentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_id': 'INC123456', 'include_details': 'acknowledgers,assignees' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_log_entry_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_log_entry_details_example_call_tool.js deleted file mode 100644 index ce4780c3e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_log_entry_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIncidentLogEntryDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "INC123456", - "additional_models_to_include": "services,teams", - "render_results_in_time_zone": "UTC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_log_entry_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_log_entry_details_example_call_tool.py deleted file mode 100644 index a5992241f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_log_entry_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIncidentLogEntryDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'INC123456', - 'additional_models_to_include': 'services,teams', - 'render_results_in_time_zone': 'UTC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_metrics_example_call_tool.js deleted file mode 100644 index 785942356..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIncidentMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"team_ids\":[\"team1\",\"team2\"],\"time_period\":\"last_month\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_metrics_example_call_tool.py deleted file mode 100644 index d3f627855..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIncidentMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"team_ids":["team1","team2"],"time_period":"last_month"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_notification_subscribers_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_notification_subscribers_example_call_tool.js deleted file mode 100644 index 4ec308749..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_notification_subscribers_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIncidentNotificationSubscribers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_id": "inc-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_notification_subscribers_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_notification_subscribers_example_call_tool.py deleted file mode 100644 index df2924305..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_notification_subscribers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIncidentNotificationSubscribers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_id': 'inc-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_related_change_events_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_related_change_events_example_call_tool.js deleted file mode 100644 index bd94c8227..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_related_change_events_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIncidentRelatedChangeEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_id": "INC123456", - "results_per_page_limit": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_related_change_events_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_related_change_events_example_call_tool.py deleted file mode 100644 index a67183e1a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_related_change_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIncidentRelatedChangeEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_id': 'INC123456', 'results_per_page_limit': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_response_analytics_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_response_analytics_example_call_tool.js deleted file mode 100644 index 56837e43e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_response_analytics_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIncidentResponseAnalytics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_id": "INC123456", - "display_order": "asc", - "results_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_response_analytics_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_response_analytics_example_call_tool.py deleted file mode 100644 index 6eb49fb7a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_response_analytics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIncidentResponseAnalytics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_id': 'INC123456', 'display_order': 'asc', 'results_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_type_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_type_custom_field_example_call_tool.js deleted file mode 100644 index ee0bd308c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_type_custom_field_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIncidentTypeCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "field_id": "custom_field_123", - "incident_type_id_or_name": "network_issue", - "include_field_details": "field_options" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_type_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_type_custom_field_example_call_tool.py deleted file mode 100644 index f284f5e57..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_type_custom_field_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIncidentTypeCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'field_id': 'custom_field_123', - 'incident_type_id_or_name': 'network_issue', - 'include_field_details': 'field_options' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_type_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_type_details_example_call_tool.js deleted file mode 100644 index 87d1d0396..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_type_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIncidentTypeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_type_identifier": "security" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_type_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_type_details_example_call_tool.py deleted file mode 100644 index 8f59179cc..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_type_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIncidentTypeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_type_identifier': 'security' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_action_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_action_example_call_tool.js deleted file mode 100644 index 6f0101562..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_action_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIncidentWorkflowAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_action_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_action_example_call_tool.py deleted file mode 100644 index d373c69af..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIncidentWorkflowAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_example_call_tool.js deleted file mode 100644 index 9dd1a6595..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIncidentWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_workflow_id": "workflow_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_example_call_tool.py deleted file mode 100644 index 6a58a6d5c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIncidentWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_workflow_id': 'workflow_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_trigger_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_trigger_example_call_tool.js deleted file mode 100644 index 9886b2725..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_trigger_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIncidentWorkflowTrigger"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_workflow_trigger_id": "trigger_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_trigger_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_trigger_example_call_tool.py deleted file mode 100644 index 80437f6d6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_incident_workflow_trigger_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIncidentWorkflowTrigger" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_workflow_trigger_id': 'trigger_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_integration_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_integration_details_example_call_tool.js deleted file mode 100644 index d96997fde..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_integration_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetIntegrationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_orchestration_id": "eo_123456", - "integration_id": "int_789012" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_integration_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_integration_details_example_call_tool.py deleted file mode 100644 index 6f6b03bce..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_integration_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetIntegrationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_orchestration_id': 'eo_123456', 'integration_id': 'int_789012' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_latest_team_audit_records_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_latest_team_audit_records_example_call_tool.js deleted file mode 100644 index 54fd60d6a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_latest_team_audit_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetLatestTeamAuditRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "team_123", - "end_date_for_search_range": "2023-10-31", - "number_of_records_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_latest_team_audit_records_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_latest_team_audit_records_example_call_tool.py deleted file mode 100644 index ed184db31..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_latest_team_audit_records_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetLatestTeamAuditRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'team_123', - 'end_date_for_search_range': '2023-10-31', - 'number_of_records_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_maintenance_window_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_maintenance_window_example_call_tool.js deleted file mode 100644 index b10b669c7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_maintenance_window_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetMaintenanceWindow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maintenance_window_id": "MW12345", - "include_models": "services" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_maintenance_window_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_maintenance_window_example_call_tool.py deleted file mode 100644 index ce7a39065..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_maintenance_window_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetMaintenanceWindow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maintenance_window_id': 'MW12345', 'include_models': 'services' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_oauth_client_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_oauth_client_details_example_call_tool.js deleted file mode 100644 index 5c6a0462d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_oauth_client_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetOauthClientDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "oauth_client_id": "client_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_oauth_client_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_oauth_client_details_example_call_tool.py deleted file mode 100644 index e04a8a06a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_oauth_client_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetOauthClientDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'oauth_client_id': 'client_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_outlier_incident_info_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_outlier_incident_info_example_call_tool.js deleted file mode 100644 index c189297e7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_outlier_incident_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetOutlierIncidentInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_resource_id": "inc-12345", - "include_additional_incident_details": "severity, status", - "start_date_range": "2023-01-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_outlier_incident_info_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_outlier_incident_info_example_call_tool.py deleted file mode 100644 index 2db7934d4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_outlier_incident_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetOutlierIncidentInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_resource_id': 'inc-12345', - 'include_additional_incident_details': 'severity, status', - 'start_date_range': '2023-01-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_paused_incident_report_alerts_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_paused_incident_report_alerts_example_call_tool.js deleted file mode 100644 index bb81f01b8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_paused_incident_report_alerts_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetPausedIncidentReportAlerts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_date_range": "2023-10-01", - "filter_by_suspend_method": "Auto Pause", - "service_identifier": "service-123", - "start_date": "2023-04-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_paused_incident_report_alerts_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_paused_incident_report_alerts_example_call_tool.py deleted file mode 100644 index f804f0e38..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_paused_incident_report_alerts_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetPausedIncidentReportAlerts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_date_range': '2023-10-01', - 'filter_by_suspend_method': 'Auto Pause', - 'service_identifier': 'service-123', - 'start_date': '2023-04-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_paused_incident_report_counts_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_paused_incident_report_counts_example_call_tool.js deleted file mode 100644 index e1c652e58..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_paused_incident_report_counts_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetPausedIncidentReportCounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_date": "2023-10-31", - "start_date": "2023-10-01", - "filter_by_suspended_type": "Auto Pause" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_paused_incident_report_counts_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_paused_incident_report_counts_example_call_tool.py deleted file mode 100644 index f0c0e6121..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_paused_incident_report_counts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetPausedIncidentReportCounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_date': '2023-10-31', 'start_date': '2023-10-01', 'filter_by_suspended_type': 'Auto Pause' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_post_update_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_post_update_example_call_tool.js deleted file mode 100644 index 0ff2d0a34..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_post_update_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetPostUpdate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "post_update_id": "update_123", - "resource_id": "resource_456", - "status_page_post_id": "post_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_post_update_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_post_update_example_call_tool.py deleted file mode 100644 index bf43bd1c0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_post_update_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetPostUpdate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'post_update_id': 'update_123', 'resource_id': 'resource_456', 'status_page_post_id': 'post_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_postmortem_by_post_id_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_postmortem_by_post_id_example_call_tool.js deleted file mode 100644 index c7d1a8758..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_postmortem_by_post_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetPostmortemByPostId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "12345", - "status_page_post_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_postmortem_by_post_id_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_postmortem_by_post_id_example_call_tool.py deleted file mode 100644 index 22fdf8480..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_postmortem_by_post_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetPostmortemByPostId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': '12345', 'status_page_post_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_priority_thresholds_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_priority_thresholds_example_call_tool.js deleted file mode 100644 index 92ffe5301..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_priority_thresholds_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetPriorityThresholds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_priority_thresholds_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_priority_thresholds_example_call_tool.py deleted file mode 100644 index 7c9999ec5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_priority_thresholds_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetPriorityThresholds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_related_incidents_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_related_incidents_example_call_tool.js deleted file mode 100644 index 479aefc82..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_related_incidents_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetRelatedIncidents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "abc123", - "additional_attributes": "incident" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_related_incidents_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_related_incidents_example_call_tool.py deleted file mode 100644 index 36d41a85c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_related_incidents_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetRelatedIncidents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'abc123', 'additional_attributes': 'incident' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_resource_standards_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_resource_standards_example_call_tool.js deleted file mode 100644 index 9b7ae372f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_resource_standards_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetResourceStandards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "12345", - "resource_type": "technical_services" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_resource_standards_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_resource_standards_example_call_tool.py deleted file mode 100644 index f9383b60e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_resource_standards_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetResourceStandards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': '12345', 'resource_type': 'technical_services' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_responder_incident_analytics_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_responder_incident_analytics_example_call_tool.js deleted file mode 100644 index f1971eb3a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_responder_incident_analytics_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetResponderIncidentAnalytics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "responder_id": "responder_123", - "request_body": "{\"date_range\":\"last_30_days\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_responder_incident_analytics_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_responder_incident_analytics_example_call_tool.py deleted file mode 100644 index 63d67014a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_responder_incident_analytics_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetResponderIncidentAnalytics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'responder_id': 'responder_123', - 'request_body': '{"date_range":"last_30_days"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_ruleset_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_ruleset_example_call_tool.js deleted file mode 100644 index bfd0168ae..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_ruleset_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetRuleset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ruleset_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_ruleset_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_ruleset_example_call_tool.py deleted file mode 100644 index 6b23975c0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_ruleset_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetRuleset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ruleset_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_runner_team_association_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_runner_team_association_example_call_tool.js deleted file mode 100644 index faa5862de..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_runner_team_association_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetRunnerTeamAssociation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "runner_123", - "team_identifier": "team_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_runner_team_association_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_runner_team_association_example_call_tool.py deleted file mode 100644 index 4fdcddf93..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_runner_team_association_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetRunnerTeamAssociation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'runner_123', 'team_identifier': 'team_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_runner_team_associations_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_runner_team_associations_example_call_tool.js deleted file mode 100644 index 3384cd131..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_runner_team_associations_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetRunnerTeamAssociations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "runner_resource_id": "runner_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_runner_team_associations_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_runner_team_associations_example_call_tool.py deleted file mode 100644 index 9e2cb17d3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_runner_team_associations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetRunnerTeamAssociations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'runner_resource_id': 'runner_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_schedule_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_schedule_details_example_call_tool.js deleted file mode 100644 index 8949e43a8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_schedule_details_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetScheduleDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "schedule_id": "12345", - "allow_schedule_overflow": true, - "date_range_start": "2023-10-01", - "end_date_for_schedule_entries": "2023-10-15", - "results_time_zone": "UTC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_schedule_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_schedule_details_example_call_tool.py deleted file mode 100644 index 3e9cbb7b6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_schedule_details_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetScheduleDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'schedule_id': '12345', - 'allow_schedule_overflow': True, - 'date_range_start': '2023-10-01', - 'end_date_for_schedule_entries': '2023-10-15', - 'results_time_zone': 'UTC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_info_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_info_example_call_tool.js deleted file mode 100644 index d07a28cb2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetServiceCustomFieldInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "field_id": "12345", - "include_field_details": "field_options" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_info_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_info_example_call_tool.py deleted file mode 100644 index 798125dac..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetServiceCustomFieldInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'field_id': '12345', 'include_field_details': 'field_options' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_option_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_option_example_call_tool.js deleted file mode 100644 index 99a06a0c4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_option_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetServiceCustomFieldOption"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "field_id": "12345", - "field_option_identifier": "option_1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_option_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_option_example_call_tool.py deleted file mode 100644 index d1b180025..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_option_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetServiceCustomFieldOption" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'field_id': '12345', 'field_option_identifier': 'option_1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_values_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_values_example_call_tool.js deleted file mode 100644 index 8b592af70..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_values_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetServiceCustomFieldValues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_id": "P123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_values_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_values_example_call_tool.py deleted file mode 100644 index 5458480e9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_custom_field_values_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetServiceCustomFieldValues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_id': 'P123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_dependencies_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_dependencies_example_call_tool.js deleted file mode 100644 index 2b4d530a7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_dependencies_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetServiceDependencies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "service-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_dependencies_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_dependencies_example_call_tool.py deleted file mode 100644 index 22abff135..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_dependencies_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetServiceDependencies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'service-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_details_example_call_tool.js deleted file mode 100644 index 94a9e71d9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetServiceDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_id": "svc-12345", - "additional_details_to_include": "escalation policies, teams" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_details_example_call_tool.py deleted file mode 100644 index 98bc9429a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetServiceDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_id': 'svc-12345', 'additional_details_to_include': 'escalation policies, teams' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_event_cache_data_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_event_cache_data_example_call_tool.js deleted file mode 100644 index f3cc9d8a1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_event_cache_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetServiceEventCacheData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cache_variable_id": "12345", - "service_identifier": "service-abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_event_cache_data_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_event_cache_data_example_call_tool.py deleted file mode 100644 index 91c2240eb..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_event_cache_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetServiceEventCacheData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cache_variable_id': '12345', 'service_identifier': 'service-abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_event_cache_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_event_cache_variable_example_call_tool.js deleted file mode 100644 index 1dcd850d0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_event_cache_variable_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetServiceEventCacheVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cache_variable_id": "var123", - "service_identifier": "service456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_event_cache_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_event_cache_variable_example_call_tool.py deleted file mode 100644 index 86005925a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_event_cache_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetServiceEventCacheVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cache_variable_id': 'var123', 'service_identifier': 'service456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_impacts_by_url_slug_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_impacts_by_url_slug_example_call_tool.js deleted file mode 100644 index ddb8e11a1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_impacts_by_url_slug_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetServiceImpactsByUrlSlug"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_dashboard_url_slug": "service-status-2023", - "include_additional_fields": "total_impacted_count" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_impacts_by_url_slug_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_impacts_by_url_slug_example_call_tool.py deleted file mode 100644 index 4ec8e0187..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_impacts_by_url_slug_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetServiceImpactsByUrlSlug" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_dashboard_url_slug': 'service-status-2023', - 'include_additional_fields': 'total_impacted_count' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_integration_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_integration_details_example_call_tool.js deleted file mode 100644 index d9907415b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_integration_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetServiceIntegrationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": "int_12345", - "resource_id": "res_67890", - "include_additional_details": "services" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_integration_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_integration_details_example_call_tool.py deleted file mode 100644 index c5c14ad5e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_integration_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetServiceIntegrationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 'int_12345', - 'resource_id': 'res_67890', - 'include_additional_details': 'services' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_orchestration_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_orchestration_example_call_tool.js deleted file mode 100644 index a068a3db5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_orchestration_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetServiceOrchestration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_identifier": "service-123", - "include_models_in_response": "migrated_metadata" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_orchestration_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_orchestration_example_call_tool.py deleted file mode 100644 index 0627d4c07..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_orchestration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetServiceOrchestration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_identifier': 'service-123', 'include_models_in_response': 'migrated_metadata' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_orchestration_status_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_orchestration_status_example_call_tool.js deleted file mode 100644 index 58c2e0769..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_orchestration_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetServiceOrchestrationStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_id": "service_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_orchestration_status_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_orchestration_status_example_call_tool.py deleted file mode 100644 index 1dc3d4af5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_orchestration_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetServiceOrchestrationStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_id': 'service_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_references_for_automation_action_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_references_for_automation_action_example_call_tool.js deleted file mode 100644 index 5ccde3efc..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_references_for_automation_action_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetServiceReferencesForAutomationAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "action_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_references_for_automation_action_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_service_references_for_automation_action_example_call_tool.py deleted file mode 100644 index 3e7316ca5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_service_references_for_automation_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetServiceReferencesForAutomationAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'action_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboard_by_slug_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboard_by_slug_example_call_tool.js deleted file mode 100644 index e2f514959..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboard_by_slug_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetStatusDashboardBySlug"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_dashboard_url_slug": "system-status" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboard_by_slug_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboard_by_slug_example_call_tool.py deleted file mode 100644 index 2d385acbd..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboard_by_slug_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetStatusDashboardBySlug" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_dashboard_url_slug': 'system-status' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboard_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboard_example_call_tool.js deleted file mode 100644 index 100bbcf20..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboard_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetStatusDashboard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_dashboard_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboard_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboard_example_call_tool.py deleted file mode 100644 index 89c2cc140..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboard_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetStatusDashboard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_dashboard_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboards_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboards_example_call_tool.js deleted file mode 100644 index 587057b52..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboards_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetStatusDashboards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboards_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboards_example_call_tool.py deleted file mode 100644 index ebde8f51c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_dashboards_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetStatusDashboards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_impact_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_impact_example_call_tool.js deleted file mode 100644 index 5edabf526..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_impact_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetStatusPageImpact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_page_id": "12345", - "status_page_impact_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_impact_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_impact_example_call_tool.py deleted file mode 100644 index 886fc02b2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_impact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetStatusPageImpact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_page_id': '12345', 'status_page_impact_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_post_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_post_example_call_tool.js deleted file mode 100644 index 2dcd4a93d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_post_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetStatusPagePost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_page_id": "12345", - "status_page_post_id": "abcde", - "include_models": [ - "model1", - "model2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_post_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_post_example_call_tool.py deleted file mode 100644 index 8557f92fa..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_post_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetStatusPagePost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_page_id': '12345', 'status_page_post_id': 'abcde', 'include_models': ['model1', 'model2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_service_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_service_example_call_tool.js deleted file mode 100644 index bdf1543c9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_service_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetStatusPageService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "12345", - "status_page_service_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_service_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_service_example_call_tool.py deleted file mode 100644 index 76316c553..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_service_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetStatusPageService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': '12345', 'status_page_service_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_severity_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_severity_example_call_tool.js deleted file mode 100644 index 8897f720d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_severity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetStatusPageSeverity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_page_id": "abc123", - "status_page_severity_id": "sev456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_severity_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_severity_example_call_tool.py deleted file mode 100644 index 6b5b48117..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_severity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetStatusPageSeverity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_page_id': 'abc123', 'status_page_severity_id': 'sev456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_status_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_status_example_call_tool.js deleted file mode 100644 index d95c89b1d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetStatusPageStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "12345", - "status_page_status_id": "active" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_status_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_status_example_call_tool.py deleted file mode 100644 index e9d333088..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetStatusPageStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': '12345', 'status_page_status_id': 'active' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_subscription_example_call_tool.js deleted file mode 100644 index ec935d450..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_subscription_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetStatusPageSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "status_page_123", - "status_page_subscription_id": "sub_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_subscription_example_call_tool.py deleted file mode 100644 index 1ff00ba38..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_status_page_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetStatusPageSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'status_page_123', 'status_page_subscription_id': 'sub_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_tag_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_tag_details_example_call_tool.js deleted file mode 100644 index 4eb904b6e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_tag_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetTagDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "tag_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_tag_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_tag_details_example_call_tool.py deleted file mode 100644 index ad8068304..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_tag_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetTagDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'tag_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_tags_by_entity_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_tags_by_entity_example_call_tool.js deleted file mode 100644 index 89e4140ea..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_tags_by_entity_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetTagsByEntity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entity_type": "users", - "resource_id": "12345", - "include_total_in_pagination": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_tags_by_entity_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_tags_by_entity_example_call_tool.py deleted file mode 100644 index a3d5bded2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_tags_by_entity_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetTagsByEntity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entity_type': 'users', - 'resource_id': '12345', - 'include_total_in_pagination': True, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_tags_by_entity_id_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_tags_by_entity_id_example_call_tool.js deleted file mode 100644 index 1e7ac66c6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_tags_by_entity_id_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetTagsByEntityId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entity_id": "12345", - "entity_type": "users", - "include_total_in_response": true, - "pagination_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_tags_by_entity_id_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_tags_by_entity_id_example_call_tool.py deleted file mode 100644 index a0ea4e95c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_tags_by_entity_id_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetTagsByEntityId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entity_id': '12345', - 'entity_type': 'users', - 'include_total_in_response': True, - 'pagination_offset': 0, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_team_details_example_call_tool.js deleted file mode 100644 index 14a9973e3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetTeamDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "12345", - "include_additional_models": "privileges" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_team_details_example_call_tool.py deleted file mode 100644 index aa2288c23..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetTeamDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': '12345', 'include_additional_models': 'privileges' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_incident_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_team_incident_metrics_example_call_tool.js deleted file mode 100644 index 6c0b525f2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_incident_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetTeamIncidentMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"team_id\":\"12345\",\"time_unit\":\"week\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_incident_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_team_incident_metrics_example_call_tool.py deleted file mode 100644 index 5708d6de3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_incident_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetTeamIncidentMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"team_id":"12345","time_unit":"week"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_notification_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_team_notification_subscriptions_example_call_tool.js deleted file mode 100644 index b31ecf97e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_notification_subscriptions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetTeamNotificationSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "T123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_notification_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_team_notification_subscriptions_example_call_tool.py deleted file mode 100644 index 893fa25f9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_notification_subscriptions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetTeamNotificationSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': 'T123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_references_for_automation_action_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_team_references_for_automation_action_example_call_tool.js deleted file mode 100644 index f70493208..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_references_for_automation_action_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetTeamReferencesForAutomationAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "action_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_references_for_automation_action_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_team_references_for_automation_action_example_call_tool.py deleted file mode 100644 index e4896b383..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_team_references_for_automation_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetTeamReferencesForAutomationAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'action_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_template_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_template_details_example_call_tool.js deleted file mode 100644 index d7138d061..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_template_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetTemplateDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "template_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_template_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_template_details_example_call_tool.py deleted file mode 100644 index 28957d314..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_template_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetTemplateDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'template_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_template_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_template_fields_example_call_tool.js deleted file mode 100644 index 55d005b23..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_template_fields_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetTemplateFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_template_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_template_fields_example_call_tool.py deleted file mode 100644 index 8fddd5647..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_template_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetTemplateFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_template_list_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_template_list_example_call_tool.js deleted file mode 100644 index 3637d9820..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_template_list_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetTemplateList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_template_type": "incident", - "include_total_in_response": true, - "pagination_offset": 0, - "results_per_page": 10, - "search_template_query": "alert", - "sort_by_field_and_direction": "name:asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_template_list_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_template_list_example_call_tool.py deleted file mode 100644 index 3f6a271c1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_template_list_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetTemplateList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_template_type': 'incident', - 'include_total_in_response': True, - 'pagination_offset': 0, - 'results_per_page': 10, - 'search_template_query': 'alert', - 'sort_by_field_and_direction': 'name:asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_top_level_impactors_for_business_services_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_top_level_impactors_for_business_services_example_call_tool.js deleted file mode 100644 index e8431b186..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_top_level_impactors_for_business_services_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetTopLevelImpactorsForBusinessServices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "business_service_ids": "12345,67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_top_level_impactors_for_business_services_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_top_level_impactors_for_business_services_example_call_tool.py deleted file mode 100644 index cd2c9b1ef..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_top_level_impactors_for_business_services_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetTopLevelImpactorsForBusinessServices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'business_service_ids': '12345,67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_unrouted_event_orchestration_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_unrouted_event_orchestration_rules_example_call_tool.js deleted file mode 100644 index b56f79ca4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_unrouted_event_orchestration_rules_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetUnroutedEventOrchestrationRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_orchestration_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_unrouted_event_orchestration_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_unrouted_event_orchestration_rules_example_call_tool.py deleted file mode 100644 index 60f5ab4e7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_unrouted_event_orchestration_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetUnroutedEventOrchestrationRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_orchestration_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_active_sessions_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_active_sessions_example_call_tool.js deleted file mode 100644 index 745acdd47..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_active_sessions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetUserActiveSessions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "P123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_active_sessions_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_active_sessions_example_call_tool.py deleted file mode 100644 index c30edf6e2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_active_sessions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetUserActiveSessions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': 'P123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_audit_records_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_audit_records_example_call_tool.js deleted file mode 100644 index 415f3f2b0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_audit_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetUserAuditRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "12345", - "result_limit": 10, - "start_date": "2023-10-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_audit_records_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_audit_records_example_call_tool.py deleted file mode 100644 index dec62ea9b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_audit_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetUserAuditRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': '12345', 'result_limit': 10, 'start_date': '2023-10-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_contact_method_info_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_contact_method_info_example_call_tool.js deleted file mode 100644 index b6adf9129..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_contact_method_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetUserContactMethodInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "user_12345", - "user_contact_method_id": "contact_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_contact_method_info_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_contact_method_info_example_call_tool.py deleted file mode 100644 index f7235085a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_contact_method_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetUserContactMethodInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'user_12345', 'user_contact_method_id': 'contact_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_contact_methods_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_contact_methods_example_call_tool.js deleted file mode 100644 index 457b17941..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_contact_methods_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetUserContactMethods"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "P123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_contact_methods_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_contact_methods_example_call_tool.py deleted file mode 100644 index 3354ab50a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_contact_methods_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetUserContactMethods" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': 'P123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_details_example_call_tool.js deleted file mode 100644 index bf976ab9f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetUserDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "P123456", - "additional_models_to_include": "contact_methods" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_details_example_call_tool.py deleted file mode 100644 index 0e530ff40..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetUserDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': 'P123456', 'additional_models_to_include': 'contact_methods' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_handoff_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_handoff_notification_rule_example_call_tool.js deleted file mode 100644 index b0096e131..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_handoff_notification_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetUserHandoffNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "oncall_handoff_notification_rule_id": "12345", - "user_id": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_handoff_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_handoff_notification_rule_example_call_tool.py deleted file mode 100644 index ba72fa8fe..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_handoff_notification_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetUserHandoffNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'oncall_handoff_notification_rule_id': '12345', 'user_id': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_license_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_license_example_call_tool.js deleted file mode 100644 index f99a4c6f5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_license_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetUserLicense"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_license_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_license_example_call_tool.py deleted file mode 100644 index e7533d379..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_license_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetUserLicense" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_rule_example_call_tool.js deleted file mode 100644 index 9a524df9e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetUserNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_rule_id": "12345", - "user_id": "67890", - "include_additional_details": "contact_methods" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_rule_example_call_tool.py deleted file mode 100644 index 9e0781317..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetUserNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_rule_id': '12345', - 'user_id': '67890', - 'include_additional_details': 'contact_methods' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_rules_example_call_tool.js deleted file mode 100644 index 3afb08787..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_rules_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetUserNotificationRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "12345", - "include_additional_details": "contact_methods" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_rules_example_call_tool.py deleted file mode 100644 index 23600954a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetUserNotificationRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': '12345', 'include_additional_details': 'contact_methods' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_subscriptions_example_call_tool.js deleted file mode 100644 index 4736f1fda..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_subscriptions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetUserNotificationSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_subscriptions_example_call_tool.py deleted file mode 100644 index e5f5a5fc5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_notification_subscriptions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetUserNotificationSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_session_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_session_details_example_call_tool.js deleted file mode 100644 index dabc0ebf3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_session_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetUserSessionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "user_12345", - "session_type": "admin", - "user_session_id": "session_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_session_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_session_details_example_call_tool.py deleted file mode 100644 index 97189a5b1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_session_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetUserSessionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'user_12345', 'session_type': 'admin', 'user_session_id': 'session_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_status_update_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_status_update_notification_rule_example_call_tool.js deleted file mode 100644 index fce2b46ce..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_status_update_notification_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetUserStatusUpdateNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_update_notification_rule_id": "rule_12345", - "user_id": "user_67890", - "include_contact_methods": "contact_methods" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_status_update_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_user_status_update_notification_rule_example_call_tool.py deleted file mode 100644 index 970e34fca..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_user_status_update_notification_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetUserStatusUpdateNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_update_notification_rule_id': 'rule_12345', - 'user_id': 'user_67890', - 'include_contact_methods': 'contact_methods' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_vendor_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_vendor_details_example_call_tool.js deleted file mode 100644 index 547e68d64..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_vendor_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetVendorDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "vendor_id": "aws_cloudwatch" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_vendor_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_vendor_details_example_call_tool.py deleted file mode 100644 index 92a4b9bec..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_vendor_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetVendorDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'vendor_id': 'aws_cloudwatch' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_webhook_subscription_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_webhook_subscription_details_example_call_tool.js deleted file mode 100644 index b94901c6e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_webhook_subscription_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetWebhookSubscriptionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "sub_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_webhook_subscription_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_webhook_subscription_details_example_call_tool.py deleted file mode 100644 index f20ac775d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_webhook_subscription_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetWebhookSubscriptionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'sub_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_connections_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_connections_example_call_tool.js deleted file mode 100644 index 90fe2008b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_connections_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetWorkflowConnections"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workflow_integration_id": "12345", - "filter_by_partial_name": "sales", - "result_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_connections_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_connections_example_call_tool.py deleted file mode 100644 index 462fd7e21..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_connections_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetWorkflowConnections" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workflow_integration_id': '12345', 'filter_by_partial_name': 'sales', 'result_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_integration_connection_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_integration_connection_details_example_call_tool.js deleted file mode 100644 index b2127550d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_integration_connection_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetWorkflowIntegrationConnectionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "12345", - "workflow_integration_id": "abcde-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_integration_connection_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_integration_connection_details_example_call_tool.py deleted file mode 100644 index 0d8aa0dbe..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_integration_connection_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetWorkflowIntegrationConnectionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': '12345', 'workflow_integration_id': 'abcde-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_integration_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_integration_details_example_call_tool.js deleted file mode 100644 index adefa706e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_integration_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.GetWorkflowIntegrationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_integration_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_integration_details_example_call_tool.py deleted file mode 100644 index 7c3f0ce2b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/get_workflow_integration_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.GetWorkflowIntegrationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/install_pagerduty_addon_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/install_pagerduty_addon_example_call_tool.js deleted file mode 100644 index b463f5dce..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/install_pagerduty_addon_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.InstallPagerdutyAddon"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"addon_name\":\"Example Addon\",\"iframe_url\":\"https://example.com/addon\",\"description\":\"This is an example addon for PagerDuty.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/install_pagerduty_addon_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/install_pagerduty_addon_example_call_tool.py deleted file mode 100644 index 157a11460..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/install_pagerduty_addon_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.InstallPagerdutyAddon" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"addon_name":"Example ' - 'Addon","iframe_url":"https://example.com/addon","description":"This is an ' - 'example addon for PagerDuty."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/invoke_automation_action_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/invoke_automation_action_example_call_tool.js deleted file mode 100644 index 645c138cd..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/invoke_automation_action_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.InvokeAutomationAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_id": "INC123456", - "resource_id": "RES78910", - "alert_id_metadata": "ALERT001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/invoke_automation_action_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/invoke_automation_action_example_call_tool.py deleted file mode 100644 index 0a88f5378..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/invoke_automation_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.InvokeAutomationAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_id': 'INC123456', 'resource_id': 'RES78910', 'alert_id_metadata': 'ALERT001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_account_licenses_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_account_licenses_example_call_tool.js deleted file mode 100644 index e7041254c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_account_licenses_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListAccountLicenses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_account_licenses_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_account_licenses_example_call_tool.py deleted file mode 100644 index 30d2f70d5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_account_licenses_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListAccountLicenses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_account_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_account_tags_example_call_tool.js deleted file mode 100644 index 346638a49..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_account_tags_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListAccountTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_total_in_pagination": true, - "pagination_offset": 0, - "results_per_page": 10, - "tag_filter_query": "urgent" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_account_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_account_tags_example_call_tool.py deleted file mode 100644 index 193744c36..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_account_tags_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListAccountTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_total_in_pagination': True, - 'pagination_offset': 0, - 'results_per_page': 10, - 'tag_filter_query': 'urgent' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_addons_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_addons_example_call_tool.js deleted file mode 100644 index f074e78bb..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_addons_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListAddons"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "addon_type_filter": "full_page_addon", - "filter_by_service_ids": [ - 12345, - 67890 - ], - "include_additional_models": "services", - "include_total_field": true, - "pagination_start_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_addons_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_addons_example_call_tool.py deleted file mode 100644 index d08936c57..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_addons_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListAddons" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'addon_type_filter': 'full_page_addon', - 'filter_by_service_ids': [12345, 67890], - 'include_additional_models': 'services', - 'include_total_field': True, - 'pagination_start_offset': 0, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_alert_grouping_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_alert_grouping_settings_example_call_tool.js deleted file mode 100644 index e485cadac..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_alert_grouping_settings_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListAlertGroupingSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_total_in_response": true, - "results_per_page": 10, - "service_id_list": [ - "service_1", - "service_2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_alert_grouping_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_alert_grouping_settings_example_call_tool.py deleted file mode 100644 index 7b73d2e4a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_alert_grouping_settings_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListAlertGroupingSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_total_in_response': True, - 'results_per_page': 10, - 'service_id_list': ['service_1', 'service_2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_all_vendors_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_all_vendors_example_call_tool.js deleted file mode 100644 index 1fe54d88e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_all_vendors_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListAllVendors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_total_in_pagination": true, - "pagination_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_all_vendors_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_all_vendors_example_call_tool.py deleted file mode 100644 index 249501d1e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_all_vendors_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListAllVendors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_total_in_pagination': True, 'pagination_offset': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_audit_records_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_audit_records_example_call_tool.js deleted file mode 100644 index 7017b7a4d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_audit_records_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListAuditRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_filters": "update", - "actor_type_filter": "user_reference", - "start_date": "2023-10-01T00:00:00Z", - "end_date_range": "2023-10-02T00:00:00Z", - "record_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_audit_records_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_audit_records_example_call_tool.py deleted file mode 100644 index 6516d3122..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_audit_records_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListAuditRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_filters': 'update', - 'actor_type_filter': 'user_reference', - 'start_date': '2023-10-01T00:00:00Z', - 'end_date_range': '2023-10-02T00:00:00Z', - 'record_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_action_invocations_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_action_invocations_example_call_tool.js deleted file mode 100644 index 9e01aca9f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_action_invocations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListAutomationActionInvocations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "12345", - "filter_by_invocation_state": "running" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_action_invocations_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_action_invocations_example_call_tool.py deleted file mode 100644 index b74b831ba..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_action_invocations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListAutomationActionInvocations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '12345', 'filter_by_invocation_state': 'running' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_action_runners_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_action_runners_example_call_tool.js deleted file mode 100644 index 6d8c6e46c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_action_runners_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListAutomationActionRunners"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_additional_data_elements": [ - "status", - "last_run" - ], - "result_limit": 10, - "runner_name_filter": "backup" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_action_runners_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_action_runners_example_call_tool.py deleted file mode 100644 index d358c78db..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_action_runners_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListAutomationActionRunners" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_additional_data_elements': ['status', 'last_run'], - 'result_limit': 10, - 'runner_name_filter': 'backup' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_actions_example_call_tool.js deleted file mode 100644 index 6c53b16a5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_actions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListAutomationActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "classification_filter": "remediation", - "filter_by_action_type": "script", - "max_results": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_actions_example_call_tool.py deleted file mode 100644 index f50ee3169..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_automation_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListAutomationActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'classification_filter': 'remediation', 'filter_by_action_type': 'script', 'max_results': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_business_services_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_business_services_example_call_tool.js deleted file mode 100644 index 6ccfd54a5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_business_services_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListBusinessServices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_total_count": true, - "pagination_offset": 10, - "results_per_page": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_business_services_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_business_services_example_call_tool.py deleted file mode 100644 index 072b6fa29..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_business_services_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListBusinessServices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_total_count': True, 'pagination_offset': 10, 'results_per_page': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_cache_variables_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_cache_variables_example_call_tool.js deleted file mode 100644 index d2a17cd70..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_cache_variables_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListCacheVariables"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_orchestration_id": "event_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_cache_variables_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_cache_variables_example_call_tool.py deleted file mode 100644 index 750ab3fa9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_cache_variables_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListCacheVariables" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_orchestration_id': 'event_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_cache_variables_for_service_event_orchestration_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_cache_variables_for_service_event_orchestration_example_call_tool.js deleted file mode 100644 index 8dd15a2f7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_cache_variables_for_service_event_orchestration_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListCacheVariablesForServiceEventOrchestration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_id": "svc_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_cache_variables_for_service_event_orchestration_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_cache_variables_for_service_event_orchestration_example_call_tool.py deleted file mode 100644 index 2a9ecc0ee..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_cache_variables_for_service_event_orchestration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListCacheVariablesForServiceEventOrchestration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_id': 'svc_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_change_events_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_change_events_example_call_tool.js deleted file mode 100644 index 137dff467..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_change_events_example_call_tool.js +++ /dev/null @@ -1,42 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListChangeEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_date_utc": "2023-10-31T23:59:59Z", - "include_total_in_pagination": true, - "integration_ids": [ - "int_123", - "int_456" - ], - "pagination_offset": 0, - "results_per_page": 10, - "start_date_time_utc": "2023-10-01T00:00:00Z", - "team_ids": [ - "team_789" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_change_events_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_change_events_example_call_tool.py deleted file mode 100644 index 05dd04f00..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_change_events_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListChangeEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_date_utc': '2023-10-31T23:59:59Z', - 'include_total_in_pagination': True, - 'integration_ids': ['int_123', 'int_456'], - 'pagination_offset': 0, - 'results_per_page': 10, - 'start_date_time_utc': '2023-10-01T00:00:00Z', - 'team_ids': ['team_789'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_custom_field_options_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_custom_field_options_example_call_tool.js deleted file mode 100644 index 2539099b0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_custom_field_options_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListCustomFieldOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "field_identifier": "custom_field_123", - "incident_type_identifier": "incident_type_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_custom_field_options_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_custom_field_options_example_call_tool.py deleted file mode 100644 index b5dc780e1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_custom_field_options_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListCustomFieldOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'field_identifier': 'custom_field_123', 'incident_type_identifier': 'incident_type_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_escalation_policies_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_escalation_policies_example_call_tool.js deleted file mode 100644 index e92bef8d0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_escalation_policies_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListEscalationPolicies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "additional_models_to_include": "services", - "filter_by_user_ids": [ - "user123", - "user456" - ], - "include_total_in_pagination": true, - "name_filter_query": "Critical Alerts", - "pagination_offset": 0, - "results_per_page": 10, - "sort_by_field": "name:asc", - "team_ids": [ - "team1", - "team2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_escalation_policies_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_escalation_policies_example_call_tool.py deleted file mode 100644 index a416c658d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_escalation_policies_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListEscalationPolicies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'additional_models_to_include': 'services', - 'filter_by_user_ids': ['user123', 'user456'], - 'include_total_in_pagination': True, - 'name_filter_query': 'Critical Alerts', - 'pagination_offset': 0, - 'results_per_page': 10, - 'sort_by_field': 'name:asc', - 'team_ids': ['team1', 'team2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_event_orchestration_enablings_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_event_orchestration_enablings_example_call_tool.js deleted file mode 100644 index 36f5127df..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_event_orchestration_enablings_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListEventOrchestrationEnablings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_orchestration_id": "eo_123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_event_orchestration_enablings_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_event_orchestration_enablings_example_call_tool.py deleted file mode 100644 index 89639535c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_event_orchestration_enablings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListEventOrchestrationEnablings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_orchestration_id': 'eo_123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_event_orchestrations_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_event_orchestrations_example_call_tool.js deleted file mode 100644 index 4a92717cb..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_event_orchestrations_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListEventOrchestrations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_offset": 0, - "results_per_page": 10, - "sort_field_with_order": "created_at:asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_event_orchestrations_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_event_orchestrations_example_call_tool.py deleted file mode 100644 index 42c0e6682..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_event_orchestrations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListEventOrchestrations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_offset': 0, 'results_per_page': 10, 'sort_field_with_order': 'created_at:asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_event_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_event_rules_example_call_tool.js deleted file mode 100644 index 8a1287c07..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_event_rules_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListEventRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ruleset_id": "12345", - "include_total_in_response": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_event_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_event_rules_example_call_tool.py deleted file mode 100644 index c967cb82e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_event_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListEventRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ruleset_id': '12345', 'include_total_in_response': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_existing_incidents_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_existing_incidents_example_call_tool.js deleted file mode 100644 index 2ac9d68cc..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_existing_incidents_example_call_tool.js +++ /dev/null @@ -1,52 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListExistingIncidents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "additional_details_to_include": "acknowledgers", - "assigned_user_ids": [ - "user123", - "user456" - ], - "end_date_range": "2023-10-31", - "filter_by_team_ids": [ - "team1", - "team2" - ], - "incident_statuses": "triggered,acknowledged", - "include_total_in_response": true, - "pagination_offset": 0, - "results_per_page": 50, - "service_ids": [ - "service1", - "service2" - ], - "sort_incidents_by": [ - "created_at:desc" - ], - "start_date_range": "2023-09-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_existing_incidents_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_existing_incidents_example_call_tool.py deleted file mode 100644 index d2a08a885..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_existing_incidents_example_call_tool.py +++ /dev/null @@ -1,39 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListExistingIncidents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'additional_details_to_include': 'acknowledgers', - 'assigned_user_ids': ['user123', 'user456'], - 'end_date_range': '2023-10-31', - 'filter_by_team_ids': ['team1', 'team2'], - 'incident_statuses': 'triggered,acknowledged', - 'include_total_in_response': True, - 'pagination_offset': 0, - 'results_per_page': 50, - 'service_ids': ['service1', 'service2'], - 'sort_incidents_by': ['created_at:desc'], - 'start_date_range': '2023-09-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_extension_schemas_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_extension_schemas_example_call_tool.js deleted file mode 100644 index 48ba98d15..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_extension_schemas_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListExtensionSchemas"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_total_in_response": true, - "pagination_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_extension_schemas_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_extension_schemas_example_call_tool.py deleted file mode 100644 index 0bcaaf1ae..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_extension_schemas_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListExtensionSchemas" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_total_in_response': True, 'pagination_offset': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_extensions_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_extensions_example_call_tool.js deleted file mode 100644 index 5e10770a0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_extensions_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListExtensions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_extension_vendor_id": "vendor123", - "include_details": "extension_objects", - "include_total_in_response": true, - "pagination_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_extensions_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_extensions_example_call_tool.py deleted file mode 100644 index da3f3fed4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_extensions_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListExtensions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_extension_vendor_id': 'vendor123', - 'include_details': 'extension_objects', - 'include_total_in_response': True, - 'pagination_offset': 0, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_alerts_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_alerts_example_call_tool.js deleted file mode 100644 index 0265f4cfa..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_alerts_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListIncidentAlerts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_id": "INC123456", - "filter_by_statuses": "triggered", - "results_per_page": 10, - "include_pagination_total": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_alerts_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_alerts_example_call_tool.py deleted file mode 100644 index 9f1da1379..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_alerts_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListIncidentAlerts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_id': 'INC123456', - 'filter_by_statuses': 'triggered', - 'results_per_page': 10, - 'include_pagination_total': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_log_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_log_entries_example_call_tool.js deleted file mode 100644 index f1f88e003..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_log_entries_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListIncidentLogEntries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_id": "INC123456", - "additional_models_to_include": "services", - "end_date": "2023-10-01", - "include_total_in_response": true, - "pagination_start_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_log_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_log_entries_example_call_tool.py deleted file mode 100644 index 740b234ba..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_log_entries_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListIncidentLogEntries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_id': 'INC123456', - 'additional_models_to_include': 'services', - 'end_date': '2023-10-01', - 'include_total_in_response': True, - 'pagination_start_offset': 0, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_notes_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_notes_example_call_tool.js deleted file mode 100644 index fa0ff968b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_notes_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListIncidentNotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_id": "INC123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_notes_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_notes_example_call_tool.py deleted file mode 100644 index 33c452bf9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_notes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListIncidentNotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_id': 'INC123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_priorities_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_priorities_example_call_tool.js deleted file mode 100644 index 9b837c4aa..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_priorities_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListIncidentPriorities"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_total_in_response": true, - "pagination_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_priorities_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_priorities_example_call_tool.py deleted file mode 100644 index 3e79e176c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_priorities_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListIncidentPriorities" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_total_in_response': True, 'pagination_offset': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_type_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_type_custom_fields_example_call_tool.js deleted file mode 100644 index 6dba78b9b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_type_custom_fields_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListIncidentTypeCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_type_id_or_name": "network_outage", - "include_additional_details": "field_options" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_type_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_type_custom_fields_example_call_tool.py deleted file mode 100644 index ecd24a46b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_type_custom_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListIncidentTypeCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_type_id_or_name': 'network_outage', 'include_additional_details': 'field_options' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_types_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_types_example_call_tool.js deleted file mode 100644 index 95c3c6b6f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_types_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListIncidentTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_type_filter": "enabled" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_types_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_types_example_call_tool.py deleted file mode 100644 index 275145090..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListIncidentTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_type_filter': 'enabled' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflow_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflow_actions_example_call_tool.js deleted file mode 100644 index 1f0a9b7e5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflow_actions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListIncidentWorkflowActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_keyword": "escalation", - "max_results_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflow_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflow_actions_example_call_tool.py deleted file mode 100644 index f9e048656..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflow_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListIncidentWorkflowActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_keyword': 'escalation', 'max_results_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflow_triggers_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflow_triggers_example_call_tool.js deleted file mode 100644 index b3fc97117..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflow_triggers_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListIncidentWorkflowTriggers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_service_id": "service_123", - "filter_by_trigger_type": "manual", - "maximum_results": 10, - "sort_triggers_by": "workflow_name asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflow_triggers_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflow_triggers_example_call_tool.py deleted file mode 100644 index 578fa407b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflow_triggers_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListIncidentWorkflowTriggers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_service_id': 'service_123', - 'filter_by_trigger_type': 'manual', - 'maximum_results': 10, - 'sort_triggers_by': 'workflow_name asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflows_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflows_example_call_tool.js deleted file mode 100644 index 5b1b9251a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflows_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListIncidentWorkflows"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_name": "Network Issue", - "include_additional_details": "steps", - "include_total_in_pagination": true, - "pagination_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflows_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflows_example_call_tool.py deleted file mode 100644 index 6a0ecff95..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_incident_workflows_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListIncidentWorkflows" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_name': 'Network Issue', - 'include_additional_details': 'steps', - 'include_total_in_pagination': True, - 'pagination_offset': 0, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_maintenance_windows_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_maintenance_windows_example_call_tool.js deleted file mode 100644 index f7e284ba3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_maintenance_windows_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListMaintenanceWindows"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_name": "Weekly Maintenance", - "filter_by_service_ids": [ - "service_123", - "service_456" - ], - "include_models": "services", - "include_total_in_response": true, - "maintenance_window_state": "future", - "pagination_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_maintenance_windows_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_maintenance_windows_example_call_tool.py deleted file mode 100644 index 43b1f320f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_maintenance_windows_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListMaintenanceWindows" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_name': 'Weekly Maintenance', - 'filter_by_service_ids': ['service_123', 'service_456'], - 'include_models': 'services', - 'include_total_in_response': True, - 'maintenance_window_state': 'future', - 'pagination_offset': 0, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_notifications_example_call_tool.js deleted file mode 100644 index 09484c9e8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_notifications_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_date_for_search": "2023-10-31", - "start_date": "2023-10-01", - "notification_type_filter": "email", - "include_total_in_response": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_notifications_example_call_tool.py deleted file mode 100644 index fac8777d4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_notifications_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListNotifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_date_for_search': '2023-10-31', - 'start_date': '2023-10-01', - 'notification_type_filter': 'email', - 'include_total_in_response': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_oauth_clients_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_oauth_clients_example_call_tool.js deleted file mode 100644 index bc1fa74c6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_oauth_clients_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListOauthClients"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_oauth_clients_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_oauth_clients_example_call_tool.py deleted file mode 100644 index dc2bb2cb9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_oauth_clients_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListOauthClients" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_entries_example_call_tool.js deleted file mode 100644 index 092a94b8c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_entries_example_call_tool.js +++ /dev/null @@ -1,50 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListOnCallEntries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "additional_details_to_include": "escalation policies", - "end_time_for_on_call_search": "2023-12-31T23:59:59Z", - "filter_by_escalation_policy_ids": [ - "policy1", - "policy2" - ], - "filter_user_ids": [ - "user123", - "user456" - ], - "include_total_in_response": true, - "pagination_offset": 0, - "results_per_page": 10, - "results_time_zone": "UTC", - "return_earliest_on_call": false, - "schedule_ids_filter": [ - "schedule1", - null - ], - "start_time_range": "2023-12-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_entries_example_call_tool.py deleted file mode 100644 index a67eab2f9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_entries_example_call_tool.py +++ /dev/null @@ -1,39 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListOnCallEntries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'additional_details_to_include': 'escalation policies', - 'end_time_for_on_call_search': '2023-12-31T23:59:59Z', - 'filter_by_escalation_policy_ids': ['policy1', 'policy2'], - 'filter_user_ids': ['user123', 'user456'], - 'include_total_in_response': True, - 'pagination_offset': 0, - 'results_per_page': 10, - 'results_time_zone': 'UTC', - 'return_earliest_on_call': False, - 'schedule_ids_filter': ['schedule1', None], - 'start_time_range': '2023-12-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_schedules_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_schedules_example_call_tool.js deleted file mode 100644 index 4ce8f79b6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_schedules_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListOnCallSchedules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "additional_details_to_include": "schedule_layers", - "end_date_range": "2023-11-15", - "filter_by_name": "John Doe", - "include_total_in_pagination": true, - "pagination_offset": 0, - "render_results_in_time_zone": "UTC", - "results_per_page": 10, - "start_date_for_schedule_entries": "2023-11-01", - "user_id_for_next_oncall": "user_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_schedules_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_schedules_example_call_tool.py deleted file mode 100644 index 2886fa6f0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_schedules_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListOnCallSchedules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'additional_details_to_include': 'schedule_layers', - 'end_date_range': '2023-11-15', - 'filter_by_name': 'John Doe', - 'include_total_in_pagination': True, - 'pagination_offset': 0, - 'render_results_in_time_zone': 'UTC', - 'results_per_page': 10, - 'start_date_for_schedule_entries': '2023-11-01', - 'user_id_for_next_oncall': 'user_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_users_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_users_example_call_tool.js deleted file mode 100644 index b6ce07bb9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_users_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListOnCallUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "schedule_resource_id": "schedule_123", - "start_date_range": "2023-10-01", - "end_date_range": "2023-10-31" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_users_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_users_example_call_tool.py deleted file mode 100644 index 430db763b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_on_call_users_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListOnCallUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'schedule_resource_id': 'schedule_123', - 'start_date_range': '2023-10-01', - 'end_date_range': '2023-10-31' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_orchestration_integrations_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_orchestration_integrations_example_call_tool.js deleted file mode 100644 index 08823923f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_orchestration_integrations_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListOrchestrationIntegrations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_orchestration_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_orchestration_integrations_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_orchestration_integrations_example_call_tool.py deleted file mode 100644 index 0dfc160a4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_orchestration_integrations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListOrchestrationIntegrations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_orchestration_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_pagerduty_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_pagerduty_teams_example_call_tool.js deleted file mode 100644 index 039acbcb1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_pagerduty_teams_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListPagerdutyTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_name_query": "Dev", - "include_total_in_response": true, - "pagination_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_pagerduty_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_pagerduty_teams_example_call_tool.py deleted file mode 100644 index b506676b6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_pagerduty_teams_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListPagerdutyTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_name_query': 'Dev', - 'include_total_in_response': True, - 'pagination_offset': 0, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_pagerduty_users_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_pagerduty_users_example_call_tool.js deleted file mode 100644 index baf338fc2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_pagerduty_users_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListPagerdutyUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "additional_models_to_include": "teams", - "include_total_in_response": true, - "pagination_offset": 10, - "results_per_page": 25, - "team_ids": [ - "team_1", - "team_2" - ], - "user_name_filter": "john" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_pagerduty_users_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_pagerduty_users_example_call_tool.py deleted file mode 100644 index ad3cdacba..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_pagerduty_users_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListPagerdutyUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'additional_models_to_include': 'teams', - 'include_total_in_response': True, - 'pagination_offset': 10, - 'results_per_page': 25, - 'team_ids': ['team_1', 'team_2'], - 'user_name_filter': 'john' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_resource_standards_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_resource_standards_example_call_tool.js deleted file mode 100644 index 313ab6016..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_resource_standards_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListResourceStandards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_ids": [ - "res123", - "res456", - "res789" - ], - "resource_type": "technical_services" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_resource_standards_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_resource_standards_example_call_tool.py deleted file mode 100644 index c4a908876..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_resource_standards_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListResourceStandards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_ids': ['res123', 'res456', 'res789'], 'resource_type': 'technical_services' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_rulesets_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_rulesets_example_call_tool.js deleted file mode 100644 index 17575d540..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_rulesets_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListRulesets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_total_count": true, - "pagination_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_rulesets_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_rulesets_example_call_tool.py deleted file mode 100644 index 82fceedc4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_rulesets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListRulesets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_total_count': True, 'pagination_offset': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_schedule_audit_records_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_schedule_audit_records_example_call_tool.js deleted file mode 100644 index be4123ca4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_schedule_audit_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListScheduleAuditRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "schedule_12345", - "end_of_date_range": "2023-10-01", - "maximum_records_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_schedule_audit_records_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_schedule_audit_records_example_call_tool.py deleted file mode 100644 index cbb7c181e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_schedule_audit_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListScheduleAuditRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'schedule_12345', 'end_of_date_range': '2023-10-01', 'maximum_records_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_schedule_overrides_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_schedule_overrides_example_call_tool.js deleted file mode 100644 index ca9a285a9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_schedule_overrides_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListScheduleOverrides"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_date_range": "2023-10-31", - "resource_id": "schedule_123", - "start_date": "2023-10-01", - "include_overflown_entries": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_schedule_overrides_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_schedule_overrides_example_call_tool.py deleted file mode 100644 index 5c485ebe7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_schedule_overrides_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListScheduleOverrides" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_date_range': '2023-10-31', - 'resource_id': 'schedule_123', - 'start_date': '2023-10-01', - 'include_overflown_entries': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_audit_records_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_service_audit_records_example_call_tool.js deleted file mode 100644 index 8515d48c9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_audit_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListServiceAuditRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "service_123", - "end_date": "2023-10-01", - "result_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_audit_records_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_service_audit_records_example_call_tool.py deleted file mode 100644 index 367efc5e0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_audit_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListServiceAuditRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'service_123', 'end_date': '2023-10-01', 'result_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_change_events_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_service_change_events_example_call_tool.js deleted file mode 100644 index ad8d8dd94..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_change_events_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListServiceChangeEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "service_123", - "end_date_utc": "2023-10-31T23:59:59Z", - "filter_by_integration_ids": [ - "integration_1", - "integration_2" - ], - "include_total_in_response": true, - "pagination_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_change_events_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_service_change_events_example_call_tool.py deleted file mode 100644 index 469b195f6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_change_events_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListServiceChangeEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'service_123', - 'end_date_utc': '2023-10-31T23:59:59Z', - 'filter_by_integration_ids': ['integration_1', 'integration_2'], - 'include_total_in_response': True, - 'pagination_offset': 0, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_custom_field_options_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_service_custom_field_options_example_call_tool.js deleted file mode 100644 index 0ec1d07e3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_custom_field_options_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListServiceCustomFieldOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "field_id": "custom_field_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_custom_field_options_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_service_custom_field_options_example_call_tool.py deleted file mode 100644 index 8de77ff10..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_custom_field_options_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListServiceCustomFieldOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'field_id': 'custom_field_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_service_custom_fields_example_call_tool.js deleted file mode 100644 index 64fd4a52f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_custom_fields_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListServiceCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_additional_details": "field_options" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_service_custom_fields_example_call_tool.py deleted file mode 100644 index 4c02b86bb..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_custom_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListServiceCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_additional_details': 'field_options' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_event_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_service_event_rules_example_call_tool.js deleted file mode 100644 index 8d10682af..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_event_rules_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListServiceEventRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_id": "abc123", - "include_additional_models": "migrated_metadata", - "pagination_offset": 0, - "populate_total_field": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_event_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_service_event_rules_example_call_tool.py deleted file mode 100644 index b7e881cd7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_event_rules_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListServiceEventRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_id': 'abc123', - 'include_additional_models': 'migrated_metadata', - 'pagination_offset': 0, - 'populate_total_field': True, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_feature_enablements_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_service_feature_enablements_example_call_tool.js deleted file mode 100644 index b71aee4bf..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_feature_enablements_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListServiceFeatureEnablements"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_id": "service_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_feature_enablements_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_service_feature_enablements_example_call_tool.py deleted file mode 100644 index 5e423834b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_service_feature_enablements_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListServiceFeatureEnablements" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_id': 'service_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_services_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_services_example_call_tool.js deleted file mode 100644 index 3aa59bdce..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_services_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListServices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_service_name": "DatabaseService", - "filter_by_team_ids": [ - "team1", - "team2" - ], - "include_additional_details": "teams", - "include_total_in_response": true, - "pagination_offset": 0, - "results_per_page": 10, - "sort_results_by": "name:asc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_services_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_services_example_call_tool.py deleted file mode 100644 index 5b6d290fc..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_services_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListServices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_service_name': 'DatabaseService', - 'filter_by_team_ids': ['team1', 'team2'], - 'include_additional_details': 'teams', - 'include_total_in_response': True, - 'pagination_offset': 0, - 'results_per_page': 10, - 'sort_results_by': 'name:asc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_impacts_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_impacts_example_call_tool.js deleted file mode 100644 index 1a8f0cdc9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_impacts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListStatusPageImpacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_page_id": "12345", - "filter_by_post_type": "incident" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_impacts_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_impacts_example_call_tool.py deleted file mode 100644 index e9e47368f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_impacts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListStatusPageImpacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_page_id': '12345', 'filter_by_post_type': 'incident' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_posts_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_posts_example_call_tool.js deleted file mode 100644 index 3adf9a413..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_posts_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListStatusPagePosts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_page_id": "12345", - "filter_by_post_type": "incident", - "status_identifiers": [ - "operational", - "degraded_performance" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_posts_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_posts_example_call_tool.py deleted file mode 100644 index e039a7d07..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_posts_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListStatusPagePosts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_page_id': '12345', - 'filter_by_post_type': 'incident', - 'status_identifiers': ['operational', 'degraded_performance'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_services_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_services_example_call_tool.js deleted file mode 100644 index 2ca2186c6..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_services_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListStatusPageServices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_page_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_services_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_services_example_call_tool.py deleted file mode 100644 index edd3df0ca..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_services_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListStatusPageServices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_page_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_severities_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_severities_example_call_tool.js deleted file mode 100644 index a69b16e61..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_severities_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListStatusPageSeverities"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_page_id": "12345", - "post_type_filter": "incident" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_severities_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_severities_example_call_tool.py deleted file mode 100644 index 213088183..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_severities_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListStatusPageSeverities" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_page_id': '12345', 'post_type_filter': 'incident' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_statuses_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_statuses_example_call_tool.js deleted file mode 100644 index bd5441381..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_statuses_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListStatusPageStatuses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_page_id": "12345", - "filter_by_post_type": "incident" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_statuses_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_statuses_example_call_tool.py deleted file mode 100644 index b1a0e2635..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_statuses_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListStatusPageStatuses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_page_id': '12345', 'filter_by_post_type': 'incident' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_subscriptions_example_call_tool.js deleted file mode 100644 index f5e47ff71..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_subscriptions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListStatusPageSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_page_id": "12345", - "subscription_channel_filter": "email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_subscriptions_example_call_tool.py deleted file mode 100644 index 1ce8a0ef2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_page_subscriptions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListStatusPageSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_page_id': '12345', 'subscription_channel_filter': 'email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_pages_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_pages_example_call_tool.js deleted file mode 100644 index cde4f1686..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_pages_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListStatusPages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status_page_type": "public" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_pages_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_pages_example_call_tool.py deleted file mode 100644 index 39e0b1d2c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_pages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListStatusPages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status_page_type': 'public' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_updates_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_updates_example_call_tool.js deleted file mode 100644 index ccead4a82..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_updates_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListStatusUpdates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "12345", - "status_page_post_id": "67890", - "filter_by_reviewed_status": "approved" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_updates_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_status_updates_example_call_tool.py deleted file mode 100644 index 3652c4816..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_status_updates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListStatusUpdates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': '12345', 'status_page_post_id': '67890', 'filter_by_reviewed_status': 'approved' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_team_members_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_team_members_example_call_tool.js deleted file mode 100644 index 8553adc1b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_team_members_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListTeamMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "12345", - "include_total_in_pagination": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_team_members_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_team_members_example_call_tool.py deleted file mode 100644 index 200b43444..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_team_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListTeamMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': '12345', 'include_total_in_pagination': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_user_handoff_notification_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_user_handoff_notification_rules_example_call_tool.js deleted file mode 100644 index 62c30e2e2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_user_handoff_notification_rules_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListUserHandoffNotificationRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "P123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_user_handoff_notification_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_user_handoff_notification_rules_example_call_tool.py deleted file mode 100644 index 56d08e5bd..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_user_handoff_notification_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListUserHandoffNotificationRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': 'P123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_user_license_allocations_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_user_license_allocations_example_call_tool.js deleted file mode 100644 index 82dc5f3ad..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_user_license_allocations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListUserLicenseAllocations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_user_license_allocations_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_user_license_allocations_example_call_tool.py deleted file mode 100644 index 4a83dbce5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_user_license_allocations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListUserLicenseAllocations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_offset': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_user_notification_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_user_notification_rules_example_call_tool.js deleted file mode 100644 index 4f8d9a371..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_user_notification_rules_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListUserNotificationRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_resource_id": "P123456", - "incident_urgency": "low", - "include_additional_details": "contact_methods" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_user_notification_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_user_notification_rules_example_call_tool.py deleted file mode 100644 index 5dc24cc7a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_user_notification_rules_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListUserNotificationRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_resource_id': 'P123456', - 'incident_urgency': 'low', - 'include_additional_details': 'contact_methods' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_webhook_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_webhook_subscriptions_example_call_tool.js deleted file mode 100644 index e0028d689..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_webhook_subscriptions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListWebhookSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_total_in_pagination": true, - "resource_filter_id": "12345", - "resource_filter_type": "service", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_webhook_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_webhook_subscriptions_example_call_tool.py deleted file mode 100644 index bbd02f8cf..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_webhook_subscriptions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListWebhookSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_total_in_pagination': True, - 'resource_filter_id': '12345', - 'resource_filter_type': 'service', - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_workflow_integration_connections_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_workflow_integration_connections_example_call_tool.js deleted file mode 100644 index 0aa4e2c9a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_workflow_integration_connections_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListWorkflowIntegrationConnections"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_partial_name": "incident", - "next_results_cursor": "abc123", - "response_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_workflow_integration_connections_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_workflow_integration_connections_example_call_tool.py deleted file mode 100644 index 39928cfdf..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_workflow_integration_connections_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListWorkflowIntegrationConnections" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_partial_name': 'incident', 'next_results_cursor': 'abc123', 'response_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_workflow_integrations_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/list_workflow_integrations_example_call_tool.js deleted file mode 100644 index d2d6a58d1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_workflow_integrations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ListWorkflowIntegrations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_deprecated_integrations": true, - "result_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/list_workflow_integrations_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/list_workflow_integrations_example_call_tool.py deleted file mode 100644 index 9794a189b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/list_workflow_integrations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ListWorkflowIntegrations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_deprecated_integrations': True, 'result_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/manage_incident_status_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/manage_incident_status_example_call_tool.js deleted file mode 100644 index 673571ffb..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/manage_incident_status_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ManageIncidentStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_id": "INC123456", - "user_email_for_request": "user@example.com", - "request_body": "{\"status\":\"resolved\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/manage_incident_status_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/manage_incident_status_example_call_tool.py deleted file mode 100644 index 2e9cadce4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/manage_incident_status_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ManageIncidentStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_id': 'INC123456', - 'user_email_for_request': 'user@example.com', - 'request_body': '{"status":"resolved"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/merge_incidents_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/merge_incidents_example_call_tool.js deleted file mode 100644 index df4412ee0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/merge_incidents_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.MergeIncidents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "incident_12345", - "user_email_address": "user@example.com", - "request_body": "{\"source_incidents\":[\"incident_67890\",\"incident_54321\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/merge_incidents_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/merge_incidents_example_call_tool.py deleted file mode 100644 index 077105486..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/merge_incidents_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.MergeIncidents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'incident_12345', - 'user_email_address': 'user@example.com', - 'request_body': '{"source_incidents":["incident_67890","incident_54321"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/migrate_integration_to_event_orchestration_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/migrate_integration_to_event_orchestration_example_call_tool.js deleted file mode 100644 index d3968a98a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/migrate_integration_to_event_orchestration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.MigrateIntegrationToEventOrchestration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "event_orchestration_id": "12345", - "request_body": "{\"integrationId\":\"abc\",\"routingKey\":\"xyz\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/migrate_integration_to_event_orchestration_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/migrate_integration_to_event_orchestration_example_call_tool.py deleted file mode 100644 index 315ce8145..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/migrate_integration_to_event_orchestration_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.MigrateIntegrationToEventOrchestration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'event_orchestration_id': '12345', - 'request_body': '{"integrationId":"abc","routingKey":"xyz"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/modify_status_page_post_update_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/modify_status_page_post_update_example_call_tool.js deleted file mode 100644 index 63b39626b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/modify_status_page_post_update_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ModifyStatusPagePostUpdate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "status_page_post_id": "post_67890", - "status_page_post_update_id": "update_abcde", - "request_body": "{\"status\":\"operational\",\"message\":\"All systems are functioning normally.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/modify_status_page_post_update_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/modify_status_page_post_update_example_call_tool.py deleted file mode 100644 index 2109f7ae7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/modify_status_page_post_update_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ModifyStatusPagePostUpdate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': '12345', - 'status_page_post_id': 'post_67890', - 'status_page_post_update_id': 'update_abcde', - 'request_body': '{"status":"operational","message":"All systems are functioning normally."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/preview_on_call_schedule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/preview_on_call_schedule_example_call_tool.js deleted file mode 100644 index e030d7a9e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/preview_on_call_schedule_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.PreviewOnCallSchedule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "start_date_range": "2023-10-01T10:00:00Z", - "end_date": "2023-10-07T10:00:00Z", - "include_overflow_entries": false, - "request_body": "{\"team\":\"devops\",\"shifts\":[{\"member\":\"Alice\",\"start\":\"2023-10-01T10:00:00Z\",\"end\":\"2023-10-02T10:00:00Z\"},{\"member\":\"Bob\",\"start\":\"2023-10-02T10:00:00Z\",\"end\":\"2023-10-03T10:00:00Z\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/preview_on_call_schedule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/preview_on_call_schedule_example_call_tool.py deleted file mode 100644 index 996dbfec8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/preview_on_call_schedule_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.PreviewOnCallSchedule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'start_date_range': '2023-10-01T10:00:00Z', - 'end_date': '2023-10-07T10:00:00Z', - 'include_overflow_entries': False, - 'request_body': '{"team":"devops","shifts":[{"member":"Alice","start":"2023-10-01T10:00:00Z","end":"2023-10-02T10:00:00Z"},{"member":"Bob","start":"2023-10-02T10:00:00Z","end":"2023-10-03T10:00:00Z"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_addon_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/remove_addon_example_call_tool.js deleted file mode 100644 index b44d2b925..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_addon_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RemoveAddon"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "addon_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_addon_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/remove_addon_example_call_tool.py deleted file mode 100644 index 616fa64e0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_addon_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RemoveAddon" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'addon_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_cache_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_cache_variable_example_call_tool.js deleted file mode 100644 index c25daea83..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_cache_variable_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RemoveServiceCacheVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cache_variable_id": "var123", - "service_identifier": "service456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_cache_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_cache_variable_example_call_tool.py deleted file mode 100644 index 146af147e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_cache_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RemoveServiceCacheVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cache_variable_id': 'var123', 'service_identifier': 'service456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_dependency_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_dependency_example_call_tool.js deleted file mode 100644 index abb603c0f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_dependency_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RemoveServiceDependency"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"service_id\":\"12345\",\"dependent_service_id\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_dependency_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_dependency_example_call_tool.py deleted file mode 100644 index 4f5f68395..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_dependency_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RemoveServiceDependency" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"service_id":"12345","dependent_service_id":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_from_incident_trigger_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_from_incident_trigger_example_call_tool.js deleted file mode 100644 index 6b575c51c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_from_incident_trigger_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RemoveServiceFromIncidentTrigger"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_identifier": "service_123", - "trigger_identifier": "trigger_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_from_incident_trigger_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_from_incident_trigger_example_call_tool.py deleted file mode 100644 index 27564534f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_service_from_incident_trigger_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RemoveServiceFromIncidentTrigger" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_identifier': 'service_123', 'trigger_identifier': 'trigger_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/remove_tag_example_call_tool.js deleted file mode 100644 index e74301e4e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_tag_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RemoveTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "tag_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/remove_tag_example_call_tool.py deleted file mode 100644 index aae621b7e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RemoveTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'tag_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_team_escalation_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/remove_team_escalation_policy_example_call_tool.js deleted file mode 100644 index 0903acab8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_team_escalation_policy_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RemoveTeamEscalationPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "escalation_policy_id": "ep_123456", - "resource_id": "team_78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_team_escalation_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/remove_team_escalation_policy_example_call_tool.py deleted file mode 100644 index f82060050..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_team_escalation_policy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RemoveTeamEscalationPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'escalation_policy_id': 'ep_123456', 'resource_id': 'team_78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_contact_method_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_contact_method_example_call_tool.js deleted file mode 100644 index f0a15c5a7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_contact_method_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RemoveUserContactMethod"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_method_id": "cm_123456", - "user_resource_id": "user_78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_contact_method_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_contact_method_example_call_tool.py deleted file mode 100644 index 3c84c900c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_contact_method_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RemoveUserContactMethod" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_method_id': 'cm_123456', 'user_resource_id': 'user_78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_from_pagerduty_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_from_pagerduty_example_call_tool.js deleted file mode 100644 index ddcf22473..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_from_pagerduty_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RemoveUserFromPagerduty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_from_pagerduty_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_from_pagerduty_example_call_tool.py deleted file mode 100644 index 9c0190674..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_from_pagerduty_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RemoveUserFromPagerduty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_from_team_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_from_team_example_call_tool.js deleted file mode 100644 index 26eccc7ae..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_from_team_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RemoveUserFromTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "T12345", - "team_user_id": "U67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_from_team_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_from_team_example_call_tool.py deleted file mode 100644 index 4ef62a658..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_from_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RemoveUserFromTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': 'T12345', 'team_user_id': 'U67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_notification_rule_example_call_tool.js deleted file mode 100644 index cea95795e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_notification_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RemoveUserNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_rule_identifier": "rule_12345", - "resource_id": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_notification_rule_example_call_tool.py deleted file mode 100644 index d57418ff4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_notification_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RemoveUserNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_rule_identifier': 'rule_12345', 'resource_id': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_status_update_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_status_update_notification_rule_example_call_tool.js deleted file mode 100644 index f93549fa1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_status_update_notification_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RemoveUserStatusUpdateNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "user_12345", - "status_update_notification_rule_id": "rule_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_status_update_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_status_update_notification_rule_example_call_tool.py deleted file mode 100644 index c34fe0e21..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/remove_user_status_update_notification_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RemoveUserStatusUpdateNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'user_12345', 'status_update_notification_rule_id': 'rule_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/render_status_update_template_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/render_status_update_template_example_call_tool.js deleted file mode 100644 index fc0d11264..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/render_status_update_template_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RenderStatusUpdateTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_id": "INC12345", - "request_body": "{\"status\":\"resolved\",\"details\":\"Incident has been resolved successfully.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/render_status_update_template_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/render_status_update_template_example_call_tool.py deleted file mode 100644 index 6649f95f2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/render_status_update_template_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RenderStatusUpdateTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_id': 'INC12345', - 'request_body': '{"status":"resolved","details":"Incident has been resolved successfully."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/resolve_or_reassociate_incident_alerts_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/resolve_or_reassociate_incident_alerts_example_call_tool.js deleted file mode 100644 index b41a954b9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/resolve_or_reassociate_incident_alerts_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ResolveOrReassociateIncidentAlerts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_resource_id": "INC123456", - "user_email": "user@example.com", - "results_per_page": 50, - "pagination_offset": 0, - "populate_total": true, - "request_body": "{\"alerts\":[{\"id\":\"ALERT1\"},{\"id\":\"ALERT2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/resolve_or_reassociate_incident_alerts_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/resolve_or_reassociate_incident_alerts_example_call_tool.py deleted file mode 100644 index a4999e2e1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/resolve_or_reassociate_incident_alerts_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ResolveOrReassociateIncidentAlerts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_resource_id': 'INC123456', - 'user_email': 'user@example.com', - 'results_per_page': 50, - 'pagination_offset': 0, - 'populate_total': True, - 'request_body': '{"alerts":[{"id":"ALERT1"},{"id":"ALERT2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/resolve_or_update_incident_alert_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/resolve_or_update_incident_alert_example_call_tool.js deleted file mode 100644 index d8de66e16..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/resolve_or_update_incident_alert_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.ResolveOrUpdateIncidentAlert"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "alert_id": "alert-67890", - "user_email_address": "user@example.com", - "request_body": "{\"status\":\"resolved\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/resolve_or_update_incident_alert_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/resolve_or_update_incident_alert_example_call_tool.py deleted file mode 100644 index 5042c6005..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/resolve_or_update_incident_alert_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.ResolveOrUpdateIncidentAlert" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': '12345', - 'alert_id': 'alert-67890', - 'user_email_address': 'user@example.com', - 'request_body': '{"status":"resolved"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_analytics_data_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_analytics_data_example_call_tool.js deleted file mode 100644 index 29e3d51c5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_analytics_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RetrieveAnalyticsData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"responders\":[\"responder1\",\"responder2\"],\"metrics\":[\"Seconds to Resolve\",\"Seconds to Engage\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_analytics_data_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_analytics_data_example_call_tool.py deleted file mode 100644 index e0f8816ad..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_analytics_data_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RetrieveAnalyticsData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"responders":["responder1","responder2"],"metrics":["Seconds to ' - 'Resolve","Seconds to Engage"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_impactful_supporting_business_services_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_impactful_supporting_business_services_example_call_tool.js deleted file mode 100644 index 48aa6bd4d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_impactful_supporting_business_services_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RetrieveImpactfulSupportingBusinessServices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "service_id": "svc-12345", - "include_additional_fields": "total_impacted_count" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_impactful_supporting_business_services_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_impactful_supporting_business_services_example_call_tool.py deleted file mode 100644 index ce3f1b380..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_impactful_supporting_business_services_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RetrieveImpactfulSupportingBusinessServices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'service_id': 'svc-12345', 'include_additional_fields': 'total_impacted_count' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_past_incidents_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_past_incidents_example_call_tool.js deleted file mode 100644 index bc8e17dba..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_past_incidents_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RetrievePastIncidents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "incident_id": "INC123456", - "include_total_past_incidents": true, - "results_limit": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_past_incidents_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_past_incidents_example_call_tool.py deleted file mode 100644 index bb088686a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_past_incidents_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RetrievePastIncidents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'incident_id': 'INC123456', 'include_total_past_incidents': True, 'results_limit': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_session_configurations_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_session_configurations_example_call_tool.js deleted file mode 100644 index 4520c083d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_session_configurations_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.RetrieveSessionConfigurations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "session_configuration_type": "mobile" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_session_configurations_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_session_configurations_example_call_tool.py deleted file mode 100644 index 75f668977..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/retrieve_session_configurations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.RetrieveSessionConfigurations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'session_configuration_type': 'mobile' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/send_change_event_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/send_change_event_example_call_tool.js deleted file mode 100644 index f1a8fed9f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/send_change_event_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.SendChangeEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/send_change_event_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/send_change_event_example_call_tool.py deleted file mode 100644 index 845114337..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/send_change_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.SendChangeEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/set_business_service_priority_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/set_business_service_priority_example_call_tool.js deleted file mode 100644 index 2f4496b88..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/set_business_service_priority_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.SetBusinessServicePriority"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"service_id\":\"12345\",\"priority\":\"high\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/set_business_service_priority_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/set_business_service_priority_example_call_tool.py deleted file mode 100644 index 20db990f4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/set_business_service_priority_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.SetBusinessServicePriority" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"service_id":"12345","priority":"high"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/set_service_custom_field_values_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/set_service_custom_field_values_example_call_tool.js deleted file mode 100644 index 262be9c7c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/set_service_custom_field_values_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.SetServiceCustomFieldValues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "service_id": "P123456", - "request_body": "{\"custom_field\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/set_service_custom_field_values_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/set_service_custom_field_values_example_call_tool.py deleted file mode 100644 index e827439ac..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/set_service_custom_field_values_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.SetServiceCustomFieldValues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'service_id': 'P123456', 'request_body': '{"custom_field":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/snooze_incident_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/snooze_incident_example_call_tool.js deleted file mode 100644 index 5729ee5d3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/snooze_incident_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.SnoozeIncident"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_id": "12345", - "user_email": "user@example.com", - "request_body": "{\"snooze_duration\":\"2 hours\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/snooze_incident_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/snooze_incident_example_call_tool.py deleted file mode 100644 index 82417f904..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/snooze_incident_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.SnoozeIncident" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_id': '12345', - 'user_email': 'user@example.com', - 'request_body': '{"snooze_duration":"2 hours"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/start_incident_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/start_incident_workflow_example_call_tool.js deleted file mode 100644 index 5f83db35d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/start_incident_workflow_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.StartIncidentWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "incident_123", - "request_body": "{\"description\":\"Incident occurred\",\"severity\":\"high\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/start_incident_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/start_incident_workflow_example_call_tool.py deleted file mode 100644 index 5a24abd86..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/start_incident_workflow_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.StartIncidentWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'incident_123', - 'request_body': '{"description":"Incident occurred","severity":"high"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_business_service_entities_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_business_service_entities_example_call_tool.js deleted file mode 100644 index 449ca2849..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_business_service_entities_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.SubscribeBusinessServiceEntities"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "service_123", - "request_body": "{\"entities\":[\"entity_1\",\"entity_2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_business_service_entities_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_business_service_entities_example_call_tool.py deleted file mode 100644 index 2622ab609..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_business_service_entities_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.SubscribeBusinessServiceEntities" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'service_123', - 'request_body': '{"entities":["entity_1","entity_2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_incident_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_incident_notifications_example_call_tool.js deleted file mode 100644 index b7161fdc5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_incident_notifications_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.SubscribeIncidentNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "incident_123", - "request_body": "{\"subscribers\":[\"user@example.com\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_incident_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_incident_notifications_example_call_tool.py deleted file mode 100644 index 2679c9549..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_incident_notifications_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.SubscribeIncidentNotifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'incident_123', - 'request_body': '{"subscribers":["user@example.com"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_to_business_service_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_to_business_service_example_call_tool.js deleted file mode 100644 index be468b639..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_to_business_service_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.SubscribeToBusinessService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "BS12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_to_business_service_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_to_business_service_example_call_tool.py deleted file mode 100644 index daa26c350..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/subscribe_to_business_service_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.SubscribeToBusinessService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'BS12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/test_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/test_webhook_subscription_example_call_tool.js deleted file mode 100644 index 84ff02074..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/test_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.TestWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "sub_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/test_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/test_webhook_subscription_example_call_tool.py deleted file mode 100644 index 557fa542e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/test_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.TestWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'sub_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_business_service_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_business_service_notifications_example_call_tool.js deleted file mode 100644 index 6d74f49e1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_business_service_notifications_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UnsubscribeBusinessServiceNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "request_body": "{\"user_id\":\"user@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_business_service_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_business_service_notifications_example_call_tool.py deleted file mode 100644 index 09ec657f7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_business_service_notifications_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UnsubscribeBusinessServiceNotifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'resource_id': '12345', 'request_body': '{"user_id":"user@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_from_business_service_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_from_business_service_example_call_tool.js deleted file mode 100644 index 0bdbab034..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_from_business_service_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UnsubscribeFromBusinessService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "business_service_id": "service_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_from_business_service_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_from_business_service_example_call_tool.py deleted file mode 100644 index 3fd39f00c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_from_business_service_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UnsubscribeFromBusinessService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'business_service_id': 'service_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_incident_notification_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_incident_notification_example_call_tool.js deleted file mode 100644 index 04396ff44..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_incident_notification_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UnsubscribeIncidentNotification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "incident_123", - "request_body": "{\"user_id\":\"user_456\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_incident_notification_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_incident_notification_example_call_tool.py deleted file mode 100644 index 8688c7dce..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_incident_notification_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UnsubscribeIncidentNotification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'resource_id': 'incident_123', 'request_body': '{"user_id":"user_456"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_team_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_team_notifications_example_call_tool.js deleted file mode 100644 index 91109a17e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_team_notifications_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UnsubscribeTeamNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "team123", - "request_body": "{\"notifications\": [\"email\", \"slack\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_team_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_team_notifications_example_call_tool.py deleted file mode 100644 index d31c77a72..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_team_notifications_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UnsubscribeTeamNotifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'team123', - 'request_body': '{"notifications": ["email", "slack"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_user_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_user_notifications_example_call_tool.js deleted file mode 100644 index 409978cec..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_user_notifications_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UnsubscribeUserNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "user123", - "request_body": "{\"unsubscribe\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_user_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_user_notifications_example_call_tool.py deleted file mode 100644 index b973e86c9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/unsubscribe_user_notifications_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UnsubscribeUserNotifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'resource_id': 'user123', 'request_body': '{"unsubscribe": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_alert_grouping_setting_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_alert_grouping_setting_example_call_tool.js deleted file mode 100644 index c516654e8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_alert_grouping_setting_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateAlertGroupingSetting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "request_body": "{\"grouping\":\"new_grouping_setting\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_alert_grouping_setting_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_alert_grouping_setting_example_call_tool.py deleted file mode 100644 index a06f37993..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_alert_grouping_setting_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateAlertGroupingSetting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'resource_id': '12345', 'request_body': '{"grouping":"new_grouping_setting"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_automation_action_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_automation_action_example_call_tool.js deleted file mode 100644 index a7256b2e9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_automation_action_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateAutomationAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "action_123", - "request_body": "{\"name\":\"Updated Action\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_automation_action_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_automation_action_example_call_tool.py deleted file mode 100644 index 0260029e8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_automation_action_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateAutomationAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'action_123', - 'request_body': '{"name":"Updated Action","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_automation_action_runner_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_automation_action_runner_example_call_tool.js deleted file mode 100644 index cd78bfee1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_automation_action_runner_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateAutomationActionRunner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "runner_123", - "request_body": "{\"status\":\"active\",\"parameters\":{\"timeout\":30}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_automation_action_runner_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_automation_action_runner_example_call_tool.py deleted file mode 100644 index b2de918e0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_automation_action_runner_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateAutomationActionRunner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'runner_123', - 'request_body': '{"status":"active","parameters":{"timeout":30}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_business_service_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_business_service_example_call_tool.js deleted file mode 100644 index f7bfd6084..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_business_service_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateBusinessService"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "bs-12345", - "business_service_name": "Customer Support", - "business_service_owner": "John Doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_business_service_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_business_service_example_call_tool.py deleted file mode 100644 index 7e14d5730..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_business_service_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateBusinessService" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'bs-12345', - 'business_service_name': 'Customer Support', - 'business_service_owner': 'John Doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_cache_variable_data_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_cache_variable_data_example_call_tool.js deleted file mode 100644 index b6dce5518..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_cache_variable_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateCacheVariableData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cache_variable_id": "var123", - "service_identifier": "service456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_cache_variable_data_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_cache_variable_data_example_call_tool.py deleted file mode 100644 index 6e44d83fd..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_cache_variable_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateCacheVariableData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cache_variable_id': 'var123', 'service_identifier': 'service456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_cache_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_cache_variable_example_call_tool.js deleted file mode 100644 index f2afbb569..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_cache_variable_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateCacheVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cache_variable_id": "var123", - "event_orchestration_id": "eo456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_cache_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_cache_variable_example_call_tool.py deleted file mode 100644 index b221cab92..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_cache_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateCacheVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cache_variable_id': 'var123', 'event_orchestration_id': 'eo456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_change_event_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_change_event_example_call_tool.js deleted file mode 100644 index 5212cc4e5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_change_event_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateChangeEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "request_body": "{\"status\":\"resolved\",\"description\":\"Updated change event description\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_change_event_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_change_event_example_call_tool.py deleted file mode 100644 index de0be5dc1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_change_event_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateChangeEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': '12345', - 'request_body': '{"status":"resolved","description":"Updated change event description"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_custom_field_option_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_custom_field_option_example_call_tool.js deleted file mode 100644 index 600305e80..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_custom_field_option_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateCustomFieldOption"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_type_id_or_name": "incident123", - "field_option_identifier": "option456", - "field_id": "field789", - "request_body": "{\"name\":\"Updated Option\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_custom_field_option_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_custom_field_option_example_call_tool.py deleted file mode 100644 index 7c395e05e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_custom_field_option_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateCustomFieldOption" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_type_id_or_name': 'incident123', - 'field_option_identifier': 'option456', - 'field_id': 'field789', - 'request_body': '{"name":"Updated Option"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_escalation_policy_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_escalation_policy_example_call_tool.js deleted file mode 100644 index 10d0b9c48..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_escalation_policy_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateEscalationPolicy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "escalation_policy_id": "policy_123", - "request_body": "{\"alert_user\":\"user@example.com\",\"alert_time\":\"5m\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_escalation_policy_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_escalation_policy_example_call_tool.py deleted file mode 100644 index 7a8aa7df0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_escalation_policy_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateEscalationPolicy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'escalation_policy_id': 'policy_123', - 'request_body': '{"alert_user":"user@example.com","alert_time":"5m"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_event_integration_example_call_tool.js deleted file mode 100644 index cc3590783..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_integration_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateEventIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "event_orchestration_id": "12345", - "integration_id_for_update": "abcde", - "request_body": "{\"setting\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_event_integration_example_call_tool.py deleted file mode 100644 index 644a76d0b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_integration_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateEventIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'event_orchestration_id': '12345', - 'integration_id_for_update': 'abcde', - 'request_body': '{"setting":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_example_call_tool.js deleted file mode 100644 index 803681b61..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateEventOrchestration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_example_call_tool.py deleted file mode 100644 index 4b307df58..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateEventOrchestration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_features_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_features_example_call_tool.js deleted file mode 100644 index 8eaac4945..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_features_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateEventOrchestrationFeatures"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "event_orchestration_id": "12345", - "feature_enablement_identifier": "aiops", - "request_body": "{\"enabled\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_features_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_features_example_call_tool.py deleted file mode 100644 index 82e57b60f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_features_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateEventOrchestrationFeatures" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'event_orchestration_id': '12345', - 'feature_enablement_identifier': 'aiops', - 'request_body': '{"enabled": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_global_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_global_rules_example_call_tool.js deleted file mode 100644 index 6815814a4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_global_rules_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateEventOrchestrationGlobalRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "event_orchestration_id": "12345", - "request_body": "{\"rule\":\"update\",\"condition\":\"status == 'active'\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_global_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_global_rules_example_call_tool.py deleted file mode 100644 index b359d3732..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_orchestration_global_rules_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateEventOrchestrationGlobalRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'event_orchestration_id': '12345', - 'request_body': '{"rule":"update","condition":"status == \'active\'"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_event_rule_example_call_tool.js deleted file mode 100644 index 2edb0537f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_rule_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateEventRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "ruleset_123", - "event_rule_id": "event_rule_456", - "request_body": "{\"name\":\"Updated Event Rule\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_event_rule_example_call_tool.py deleted file mode 100644 index 56fa699c5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_event_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateEventRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'ruleset_123', - 'event_rule_id': 'event_rule_456', - 'request_body': '{"name":"Updated Event Rule","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_extension_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_extension_example_call_tool.js deleted file mode 100644 index 24ac27911..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_extension_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateExtension"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "ext-12345", - "request_body": "{\"name\":\"Updated Extension\",\"type\":\"webhook\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_extension_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_extension_example_call_tool.py deleted file mode 100644 index 0ffcce450..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_extension_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateExtension" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'ext-12345', - 'request_body': '{"name":"Updated Extension","type":"webhook"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_external_data_cache_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_external_data_cache_variable_example_call_tool.js deleted file mode 100644 index 3e3145f2c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_external_data_cache_variable_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateExternalDataCacheVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cache_variable_id": "var123", - "event_orchestration_id": "event456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_external_data_cache_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_external_data_cache_variable_example_call_tool.py deleted file mode 100644 index 1e2701d4c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_external_data_cache_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateExternalDataCacheVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cache_variable_id': 'var123', 'event_orchestration_id': 'event456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_custom_field_example_call_tool.js deleted file mode 100644 index f8ff63762..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_custom_field_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateIncidentCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_type_identifier": "incident_123", - "field_identifier": "field_456", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_custom_field_example_call_tool.py deleted file mode 100644 index b9c979b31..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_custom_field_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateIncidentCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_type_identifier': 'incident_123', - 'field_identifier': 'field_456', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_custom_fields_example_call_tool.js deleted file mode 100644 index 685149fe2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_custom_fields_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateIncidentCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_id": "P123456", - "request_body": "{\"custom_field\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_custom_fields_example_call_tool.py deleted file mode 100644 index dd29e42a0..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_custom_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateIncidentCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'incident_id': 'P123456', 'request_body': '{"custom_field":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_log_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_log_entry_example_call_tool.js deleted file mode 100644 index 21d7f625e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_log_entry_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateIncidentLogEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_resource_id": "INC123456", - "user_email": "user@example.com", - "request_body": "{\"channel\":\"email\",\"message\":\"Updated log entry\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_log_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_log_entry_example_call_tool.py deleted file mode 100644 index 7e74c6077..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_log_entry_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateIncidentLogEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_resource_id': 'INC123456', - 'user_email': 'user@example.com', - 'request_body': '{"channel":"email","message":"Updated log entry"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_service_impact_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_service_impact_example_call_tool.js deleted file mode 100644 index 39b3a1335..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_service_impact_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateIncidentServiceImpact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "incident123", - "business_service_id": "service456", - "request_body": "{\"impact_level\":\"high\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_service_impact_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_service_impact_example_call_tool.py deleted file mode 100644 index 2e65b8037..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_service_impact_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateIncidentServiceImpact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'incident123', - 'business_service_id': 'service456', - 'request_body': '{"impact_level":"high"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_status_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_status_example_call_tool.js deleted file mode 100644 index baec37715..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_status_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateIncidentStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_id": "INC123456", - "requestor_email": "user@example.com", - "request_body": "{\"status\":\"resolved\",\"note\":\"Incident has been resolved.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_status_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_status_example_call_tool.py deleted file mode 100644 index 24ad5a88b..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_status_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateIncidentStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_id': 'INC123456', - 'requestor_email': 'user@example.com', - 'request_body': '{"status":"resolved","note":"Incident has been resolved."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_type_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_type_example_call_tool.js deleted file mode 100644 index c5d627943..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_type_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateIncidentType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_type_id_or_name": "security_incident", - "request_body": "{\"category\":\"security\",\"description\":\"Updated security incident type\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_type_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_type_example_call_tool.py deleted file mode 100644 index 0b74c2713..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_type_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateIncidentType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_type_id_or_name': 'security_incident', - 'request_body': '{"category":"security","description":"Updated security incident type"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_workflow_example_call_tool.js deleted file mode 100644 index 72344d153..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_workflow_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateIncidentWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "incident_workflow_id": "12345", - "request_body": "{\"status\":\"active\",\"steps\":[{\"type\":\"notify\",\"action\":\"email\",\"recipient\":\"team@example.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_workflow_example_call_tool.py deleted file mode 100644 index 10125e1d4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_workflow_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateIncidentWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'incident_workflow_id': '12345', - 'request_body': '{"status":"active","steps":[{"type":"notify","action":"email","recipient":"team@example.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_workflow_trigger_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_workflow_trigger_example_call_tool.js deleted file mode 100644 index 946b52a8c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_workflow_trigger_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateIncidentWorkflowTrigger"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "trigger_12345", - "request_body": "{\"name\":\"Updated Trigger\",\"conditions\":{\"status\":\"active\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_workflow_trigger_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_workflow_trigger_example_call_tool.py deleted file mode 100644 index 433c9605e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incident_workflow_trigger_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateIncidentWorkflowTrigger" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'trigger_12345', - 'request_body': '{"name":"Updated Trigger","conditions":{"status":"active"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incidents_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_incidents_example_call_tool.js deleted file mode 100644 index a0cd9436e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incidents_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateIncidents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_email": "user@example.com", - "results_per_page": 10, - "request_body": "{\"incidents\":[{\"id\":\"1\",\"status\":\"resolved\"},{\"id\":\"2\",\"status\":\"acknowledged\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_incidents_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_incidents_example_call_tool.py deleted file mode 100644 index 76e616e48..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_incidents_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateIncidents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_email': 'user@example.com', - 'results_per_page': 10, - 'request_body': '{"incidents":[{"id":"1","status":"resolved"},{"id":"2","status":"acknowledged"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_maintenance_window_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_maintenance_window_example_call_tool.js deleted file mode 100644 index dca01b176..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_maintenance_window_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateMaintenanceWindow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "mw-12345", - "request_body": "{\"start_time\":\"2023-10-01T00:00:00Z\",\"end_time\":\"2023-10-01T02:00:00Z\",\"services\":[\"serviceA\",\"serviceB\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_maintenance_window_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_maintenance_window_example_call_tool.py deleted file mode 100644 index 49de201ed..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_maintenance_window_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateMaintenanceWindow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'mw-12345', - 'request_body': '{"start_time":"2023-10-01T00:00:00Z","end_time":"2023-10-01T02:00:00Z","services":["serviceA","serviceB"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_oauth_client_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_oauth_client_example_call_tool.js deleted file mode 100644 index eaefdbee3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_oauth_client_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateOauthClient"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "client_12345", - "oauth_client_id": "oauth_id_67890", - "oauth_client_name": "My OAuth Client", - "oauth_grant_type": "client_credentials", - "oauth_scopes_requested": "read write", - "oauth_token_endpoint_url": "https://example.com/token" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_oauth_client_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_oauth_client_example_call_tool.py deleted file mode 100644 index 2c91622a8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_oauth_client_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateOauthClient" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'client_12345', - 'oauth_client_id': 'oauth_id_67890', - 'oauth_client_name': 'My OAuth Client', - 'oauth_grant_type': 'client_credentials', - 'oauth_scopes_requested': 'read write', - 'oauth_token_endpoint_url': 'https://example.com/token' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_on_call_schedule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_on_call_schedule_example_call_tool.js deleted file mode 100644 index 35f343e5e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_on_call_schedule_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateOnCallSchedule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "schedule_id": "abc123", - "allow_schedule_overflow": true, - "request_body": "{\"time_periods\":[{\"start\":\"2023-10-01T00:00:00Z\",\"end\":\"2023-10-07T00:00:00Z\",\"user_id\":\"user_456\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_on_call_schedule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_on_call_schedule_example_call_tool.py deleted file mode 100644 index 81490adab..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_on_call_schedule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateOnCallSchedule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'schedule_id': 'abc123', - 'allow_schedule_overflow': True, - 'request_body': '{"time_periods":[{"start":"2023-10-01T00:00:00Z","end":"2023-10-07T00:00:00Z","user_id":"user_456"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_orchestration_routing_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_orchestration_routing_rules_example_call_tool.js deleted file mode 100644 index 09c382e97..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_orchestration_routing_rules_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateOrchestrationRoutingRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "event_orchestration_id": "12345", - "request_body": "{\"rules\":[{\"event_type\":\"incident\",\"service_id\":\"service_1\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_orchestration_routing_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_orchestration_routing_rules_example_call_tool.py deleted file mode 100644 index e5466c463..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_orchestration_routing_rules_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateOrchestrationRoutingRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'event_orchestration_id': '12345', - 'request_body': '{"rules":[{"event_type":"incident","service_id":"service_1"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_pagerduty_addon_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_pagerduty_addon_example_call_tool.js deleted file mode 100644 index b3ec74f11..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_pagerduty_addon_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdatePagerdutyAddon"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "addon_12345", - "request_body": "{\"url\":\"https://example.com\",\"title\":\"Updated Add-on\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_pagerduty_addon_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_pagerduty_addon_example_call_tool.py deleted file mode 100644 index 9427bd697..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_pagerduty_addon_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdatePagerdutyAddon" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'addon_12345', - 'request_body': '{"url":"https://example.com","title":"Updated Add-on"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_pagerduty_user_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_pagerduty_user_example_call_tool.js deleted file mode 100644 index 122bf0a39..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_pagerduty_user_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdatePagerdutyUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_id": "12345", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_pagerduty_user_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_pagerduty_user_example_call_tool.py deleted file mode 100644 index 67f8d8532..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_pagerduty_user_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdatePagerdutyUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_id': '12345', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_ruleset_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_ruleset_example_call_tool.js deleted file mode 100644 index ecb78ad0d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_ruleset_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateRuleset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "ruleset_123", - "request_body": "{\"name\":\"Updated Ruleset\",\"conditions\":[{\"type\":\"event_type\",\"value\":\"incident\"}],\"actions\":[{\"type\":\"notify\",\"target\":\"team@example.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_ruleset_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_ruleset_example_call_tool.py deleted file mode 100644 index 43398f4c9..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_ruleset_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateRuleset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'ruleset_123', - 'request_body': '{"name":"Updated ' - 'Ruleset","conditions":[{"type":"event_type","value":"incident"}],"actions":[{"type":"notify","target":"team@example.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_custom_field_example_call_tool.js deleted file mode 100644 index e43acf6c3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_custom_field_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateServiceCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "service_field_id": "custom_field_123", - "request_body": "{\"value\":\"new_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_custom_field_example_call_tool.py deleted file mode 100644 index 31e99de64..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_custom_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateServiceCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'service_field_id': 'custom_field_123', 'request_body': '{"value":"new_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_custom_field_option_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_custom_field_option_example_call_tool.js deleted file mode 100644 index 855418234..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_custom_field_option_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateServiceCustomFieldOption"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "field_id": "12345", - "field_option_id": "67890", - "request_body": "{\"name\":\"Updated Option\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_custom_field_option_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_custom_field_option_example_call_tool.py deleted file mode 100644 index 06e211767..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_custom_field_option_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateServiceCustomFieldOption" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'field_id': '12345', - 'field_option_id': '67890', - 'request_body': '{"name":"Updated Option"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_details_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_details_example_call_tool.js deleted file mode 100644 index 492cd3c59..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateServiceDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "service_id": "svc_12345", - "request_body": "{\"name\":\"New Service Name\",\"description\":\"Updated description\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_details_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_details_example_call_tool.py deleted file mode 100644 index da43fe8f1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateServiceDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'service_id': 'svc_12345', - 'request_body': '{"name":"New Service Name","description":"Updated description"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_event_cache_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_event_cache_variable_example_call_tool.js deleted file mode 100644 index 6c0a14915..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_event_cache_variable_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateServiceEventCacheVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cache_variable_id": "var123", - "service_identifier": "service456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_event_cache_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_event_cache_variable_example_call_tool.py deleted file mode 100644 index f70bc83c2..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_event_cache_variable_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateServiceEventCacheVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cache_variable_id': 'var123', 'service_identifier': 'service456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_event_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_event_rule_example_call_tool.js deleted file mode 100644 index 1d9f1dd32..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_event_rule_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateServiceEventRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "service_123", - "event_rule_id": "rule_456", - "request_body": "{\"enabled\": true, \"conditions\": {\"type\": \"error\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_event_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_event_rule_example_call_tool.py deleted file mode 100644 index 05d668b01..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_event_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateServiceEventRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'service_123', - 'event_rule_id': 'rule_456', - 'request_body': '{"enabled": true, "conditions": {"type": "error"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_feature_enablement_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_feature_enablement_example_call_tool.js deleted file mode 100644 index 3efa6efe3..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_feature_enablement_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateServiceFeatureEnablement"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "P123456", - "feature_enablement_identifier": "aiops", - "request_body": "{\"enabled\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_feature_enablement_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_feature_enablement_example_call_tool.py deleted file mode 100644 index 4d3b5e022..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_feature_enablement_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateServiceFeatureEnablement" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'P123456', - 'feature_enablement_identifier': 'aiops', - 'request_body': '{"enabled": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_integration_example_call_tool.js deleted file mode 100644 index 16cb6f431..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_integration_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateServiceIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "service_integration_id": "abcde", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_integration_example_call_tool.py deleted file mode 100644 index 037280418..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_integration_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateServiceIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': '12345', - 'service_integration_id': 'abcde', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_orchestration_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_orchestration_example_call_tool.js deleted file mode 100644 index 8f28d54c1..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_orchestration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateServiceOrchestration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "service_identifier": "service_123", - "request_body": "{\"event_rules\":[{\"type\":\"error\",\"action\":\"notify\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_orchestration_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_orchestration_example_call_tool.py deleted file mode 100644 index 8f0721eba..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_orchestration_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateServiceOrchestration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'service_identifier': 'service_123', - 'request_body': '{"event_rules":[{"type":"error","action":"notify"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_orchestration_status_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_orchestration_status_example_call_tool.js deleted file mode 100644 index 0c33ddf0e..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_orchestration_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateServiceOrchestrationStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "service_id": "12345", - "request_body": "{\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_orchestration_status_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_service_orchestration_status_example_call_tool.py deleted file mode 100644 index a5856ae15..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_service_orchestration_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateServiceOrchestrationStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'service_id': '12345', 'request_body': '{"status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_session_configurations_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_session_configurations_example_call_tool.js deleted file mode 100644 index 4f6e67e5c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_session_configurations_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateSessionConfigurations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "absolute_session_time_to_live_seconds": 300, - "idle_session_time_to_live": 180, - "session_configuration_type": "web,mobile" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_session_configurations_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_session_configurations_example_call_tool.py deleted file mode 100644 index 93bd5026d..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_session_configurations_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateSessionConfigurations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'absolute_session_time_to_live_seconds': 300, - 'idle_session_time_to_live': 180, - 'session_configuration_type': 'web,mobile' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_standard_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_standard_example_call_tool.js deleted file mode 100644 index 5c703277f..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_standard_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateStandard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "standard_id": "std_12345", - "request_body": "{\"name\":\"Updated Standard\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_standard_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_standard_example_call_tool.py deleted file mode 100644 index 584f494d4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_standard_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateStandard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'standard_id': 'std_12345', - 'request_body': '{"name":"Updated Standard","description":"This is an updated description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_status_page_post_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_status_page_post_example_call_tool.js deleted file mode 100644 index 10514acec..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_status_page_post_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateStatusPagePost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "status_page_post_id": "67890", - "request_body": "{\"title\":\"Updated Title\",\"content\":\"This is the updated content.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_status_page_post_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_status_page_post_example_call_tool.py deleted file mode 100644 index 1739c28fc..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_status_page_post_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateStatusPagePost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': '12345', - 'status_page_post_id': '67890', - 'request_body': '{"title":"Updated Title","content":"This is the updated content."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_status_page_postmortem_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_status_page_postmortem_example_call_tool.js deleted file mode 100644 index 5fa3686cd..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_status_page_postmortem_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateStatusPagePostmortem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "12345", - "status_page_post_id": "67890", - "request_body": "{\"status\":\"resolved\",\"body\":\"Postmortem details here.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_status_page_postmortem_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_status_page_postmortem_example_call_tool.py deleted file mode 100644 index ae51f9517..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_status_page_postmortem_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateStatusPagePostmortem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': '12345', - 'status_page_post_id': '67890', - 'request_body': '{"status":"resolved","body":"Postmortem details here."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_team_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_team_example_call_tool.js deleted file mode 100644 index 6679c44b8..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_team_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_id": "team_123", - "request_body": "{\"name\":\"Development Team\",\"members\":[\"user1\",\"user2\"],\"escalation_policy\":\"policy_456\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_team_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_team_example_call_tool.py deleted file mode 100644 index 8dd0e77f7..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_team_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_id': 'team_123', - 'request_body': '{"name":"Development ' - 'Team","members":["user1","user2"],"escalation_policy":"policy_456"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_template_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_template_example_call_tool.js deleted file mode 100644 index 4c8d77879..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_template_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "template_123", - "email_subject": "Incident Update", - "template_name": "Incident Notification" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_template_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_template_example_call_tool.py deleted file mode 100644 index cbadb929c..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_template_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': 'template_123', - 'email_subject': 'Incident Update', - 'template_name': 'Incident Notification' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_unrouted_event_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_unrouted_event_rules_example_call_tool.js deleted file mode 100644 index adf97e7b4..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_unrouted_event_rules_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateUnroutedEventRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "event_orchestration_id": "12345", - "request_body": "{\"rule\":\"update\",\"condition\":\"unrouted\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_unrouted_event_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_unrouted_event_rules_example_call_tool.py deleted file mode 100644 index 736f5370a..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_unrouted_event_rules_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateUnroutedEventRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'event_orchestration_id': '12345', - 'request_body': '{"rule":"update","condition":"unrouted"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_contact_method_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_user_contact_method_example_call_tool.js deleted file mode 100644 index e4dd3c400..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_contact_method_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateUserContactMethod"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "user_12345", - "user_contact_method_id": "contact_67890", - "request_body": "{\"type\":\"email\",\"value\":\"new_email@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_contact_method_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_user_contact_method_example_call_tool.py deleted file mode 100644 index 14aff3863..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_contact_method_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateUserContactMethod" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'user_12345', - 'user_contact_method_id': 'contact_67890', - 'request_body': '{"type":"email","value":"new_email@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_handoff_notification_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_user_handoff_notification_example_call_tool.js deleted file mode 100644 index 929d1fed5..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_handoff_notification_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateUserHandoffNotification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "user_123", - "handoff_notification_rule_id": "rule_456", - "request_body": "{\"contact_method\":\"email\",\"schedule\":\"daily\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_handoff_notification_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_user_handoff_notification_example_call_tool.py deleted file mode 100644 index f952161af..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_handoff_notification_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateUserHandoffNotification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'user_123', - 'handoff_notification_rule_id': 'rule_456', - 'request_body': '{"contact_method":"email","schedule":"daily"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_user_notification_rule_example_call_tool.js deleted file mode 100644 index 45f99d597..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_notification_rule_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateUserNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "user_123", - "notification_rule_id": "rule_456", - "request_body": "{\"type\":\"email\",\"address\":\"user@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_user_notification_rule_example_call_tool.py deleted file mode 100644 index 45f513516..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_notification_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateUserNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'user_123', - 'notification_rule_id': 'rule_456', - 'request_body': '{"type":"email","address":"user@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_status_notification_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_user_status_notification_rule_example_call_tool.js deleted file mode 100644 index 7becd0723..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_status_notification_rule_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateUserStatusNotificationRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "resource_id": "user_123", - "status_update_notification_rule_id": "rule_456", - "request_body": "{\"notification_type\":\"email\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_status_notification_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_user_status_notification_rule_example_call_tool.py deleted file mode 100644 index 596a49c49..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_user_status_notification_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateUserStatusNotificationRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'resource_id': 'user_123', - 'status_update_notification_rule_id': 'rule_456', - 'request_body': '{"notification_type":"email","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_webhook_subscription_example_call_tool.js deleted file mode 100644 index 596693264..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "resource_id": "12345", - "filter_object_id": "67890", - "filter_object_type": "service_reference", - "webhook_events": [ - "incident.trigger", - "incident.resolve" - ], - "webhook_subscription_description": "Updated subscription for incident events" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_webhook_subscription_example_call_tool.py deleted file mode 100644 index d0e704853..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'resource_id': '12345', - 'filter_object_id': '67890', - 'filter_object_type': 'service_reference', - 'webhook_events': ['incident.trigger', 'incident.resolve'], - 'webhook_subscription_description': 'Updated subscription for incident events' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_workflow_integration_connection_example_call_tool.js b/public/examples/integrations/mcp-servers/pagerduty_api/update_workflow_integration_connection_example_call_tool.js deleted file mode 100644 index c44de1cee..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_workflow_integration_connection_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PagerdutyApi.UpdateWorkflowIntegrationConnection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": "int_12345", - "resource_id": "res_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pagerduty_api/update_workflow_integration_connection_example_call_tool.py b/public/examples/integrations/mcp-servers/pagerduty_api/update_workflow_integration_connection_example_call_tool.py deleted file mode 100644 index 93fcb1a77..000000000 --- a/public/examples/integrations/mcp-servers/pagerduty_api/update_workflow_integration_connection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PagerdutyApi.UpdateWorkflowIntegrationConnection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 'int_12345', 'resource_id': 'res_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/postgres/discover_schemas_example_call_tool.js b/public/examples/integrations/mcp-servers/postgres/discover_schemas_example_call_tool.js deleted file mode 100644 index d12a1f9db..000000000 --- a/public/examples/integrations/mcp-servers/postgres/discover_schemas_example_call_tool.js +++ /dev/null @@ -1,16 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Postgres.DiscoverSchemas"; - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/postgres/discover_schemas_example_call_tool.py b/public/examples/integrations/mcp-servers/postgres/discover_schemas_example_call_tool.py deleted file mode 100644 index b05cb4380..000000000 --- a/public/examples/integrations/mcp-servers/postgres/discover_schemas_example_call_tool.py +++ /dev/null @@ -1,17 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Postgres.DiscoverSchemas" - -user_id = "{arcade_user_id}" - -tool_input = {} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/postgres/discover_tables_example_call_tool.js b/public/examples/integrations/mcp-servers/postgres/discover_tables_example_call_tool.js deleted file mode 100644 index 36ec56fba..000000000 --- a/public/examples/integrations/mcp-servers/postgres/discover_tables_example_call_tool.js +++ /dev/null @@ -1,18 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Postgres.DiscoverTables"; - -const toolInput = { - schema_name: "public", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/postgres/discover_tables_example_call_tool.py b/public/examples/integrations/mcp-servers/postgres/discover_tables_example_call_tool.py deleted file mode 100644 index ebd14ad7a..000000000 --- a/public/examples/integrations/mcp-servers/postgres/discover_tables_example_call_tool.py +++ /dev/null @@ -1,19 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Postgres.DiscoverTables" - -user_id = "{arcade_user_id}" - -tool_input = { - "schema_name": "public", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/postgres/execute_select_query_example_call_tool.js b/public/examples/integrations/mcp-servers/postgres/execute_select_query_example_call_tool.js deleted file mode 100644 index 9da12c5cb..000000000 --- a/public/examples/integrations/mcp-servers/postgres/execute_select_query_example_call_tool.js +++ /dev/null @@ -1,22 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Postgres.ExecuteSelectQuery"; - -const toolInput = { - select_clause: "id, name, email", - from_clause: "users", - where_clause: "active = true", - order_by_clause: "name", - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/postgres/execute_select_query_example_call_tool.py b/public/examples/integrations/mcp-servers/postgres/execute_select_query_example_call_tool.py deleted file mode 100644 index 99c96b6e2..000000000 --- a/public/examples/integrations/mcp-servers/postgres/execute_select_query_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Postgres.ExecuteSelectQuery" - -user_id = "{arcade_user_id}" - -tool_input = { - "select_clause": "id, name, email", - "from_clause": "users", - "where_clause": "active = true", - "order_by_clause": "name", - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/postgres/get_table_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/postgres/get_table_schema_example_call_tool.js deleted file mode 100644 index 8e278b231..000000000 --- a/public/examples/integrations/mcp-servers/postgres/get_table_schema_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Postgres.GetTableSchema"; - -const toolInput = { - schema_name: "public", - table_name: "users", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/postgres/get_table_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/postgres/get_table_schema_example_call_tool.py deleted file mode 100644 index 2731bda28..000000000 --- a/public/examples/integrations/mcp-servers/postgres/get_table_schema_example_call_tool.py +++ /dev/null @@ -1,20 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Postgres.GetTableSchema" - -user_id = "{arcade_user_id}" - -tool_input = { - "schema_name": "public", - "table_name": "users", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=user_id, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/posthog_api/add_dashboard_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/add_dashboard_collaborator_example_call_tool.js deleted file mode 100644 index 7fa2534ba..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/add_dashboard_collaborator_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.AddDashboardCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_id": 123, - "project_id": "proj_456", - "request_body": "{\"email\":\"collaborator@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/add_dashboard_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/add_dashboard_collaborator_example_call_tool.py deleted file mode 100644 index 5d4369314..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/add_dashboard_collaborator_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.AddDashboardCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_id': 123, - 'project_id': 'proj_456', - 'request_body': '{"email":"collaborator@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/add_data_color_theme_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/add_data_color_theme_example_call_tool.js deleted file mode 100644 index 0bc6a2176..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/add_data_color_theme_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.AddDataColorTheme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"theme_name\":\"CustomTheme\",\"colors\":{\"primary\":\"#FF5733\",\"secondary\":\"#33FF57\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/add_data_color_theme_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/add_data_color_theme_example_call_tool.py deleted file mode 100644 index e4a699ef9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/add_data_color_theme_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.AddDataColorTheme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"theme_name":"CustomTheme","colors":{"primary":"#FF5733","secondary":"#33FF57"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/add_persons_funnel_correlation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/add_persons_funnel_correlation_example_call_tool.js deleted file mode 100644 index b0db468dd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/add_persons_funnel_correlation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.AddPersonsFunnelCorrelation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "response_format": "json", - "request_body": "{\"person_id\":\"67890\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/add_persons_funnel_correlation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/add_persons_funnel_correlation_example_call_tool.py deleted file mode 100644 index 70961d058..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/add_persons_funnel_correlation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.AddPersonsFunnelCorrelation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'response_format': 'json', - 'request_body': '{"person_id":"67890","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/add_persons_to_static_cohort_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/add_persons_to_static_cohort_example_call_tool.js deleted file mode 100644 index 4cabbc430..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/add_persons_to_static_cohort_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.AddPersonsToStaticCohort"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cohort_id": 12345, - "project_identifier": "project_abc", - "person_uuids_to_add": [ - "uuid-1", - "uuid-2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/add_persons_to_static_cohort_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/add_persons_to_static_cohort_example_call_tool.py deleted file mode 100644 index f6e870688..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/add_persons_to_static_cohort_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.AddPersonsToStaticCohort" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cohort_id': 12345, - 'project_identifier': 'project_abc', - 'person_uuids_to_add': ['uuid-1', 'uuid-2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/add_session_recording_to_playlist_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/add_session_recording_to_playlist_example_call_tool.js deleted file mode 100644 index e4a4958e5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/add_session_recording_to_playlist_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.AddSessionRecordingToPlaylist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "session_recording_identifier": "abc-123", - "request_body": "{\"playlistId\":\"playlist1\",\"recordingId\":\"abc-123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/add_session_recording_to_playlist_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/add_session_recording_to_playlist_example_call_tool.py deleted file mode 100644 index 543d239e9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/add_session_recording_to_playlist_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.AddSessionRecordingToPlaylist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'session_recording_identifier': 'abc-123', - 'request_body': '{"playlistId":"playlist1","recordingId":"abc-123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/add_warehouse_saved_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/add_warehouse_saved_query_example_call_tool.js deleted file mode 100644 index ba890e30a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/add_warehouse_saved_query_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.AddWarehouseSavedQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id_for_access": "12345", - "request_body": "{\"query\":\"SELECT * FROM warehouse_data\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/add_warehouse_saved_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/add_warehouse_saved_query_example_call_tool.py deleted file mode 100644 index 5473447e6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/add_warehouse_saved_query_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.AddWarehouseSavedQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id_for_access': '12345', - 'request_body': '{"query":"SELECT * FROM warehouse_data"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/add_warehouse_table_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/add_warehouse_table_example_call_tool.js deleted file mode 100644 index 083b4d793..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/add_warehouse_table_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.AddWarehouseTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "proj123", - "request_body": "{\"table_name\":\"inventory\",\"columns\":[{\"name\":\"item_id\",\"type\":\"integer\"},{\"name\":\"item_name\",\"type\":\"string\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/add_warehouse_table_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/add_warehouse_table_example_call_tool.py deleted file mode 100644 index eb21bb30b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/add_warehouse_table_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.AddWarehouseTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': 'proj123', - 'request_body': '{"table_name":"inventory","columns":[{"name":"item_id","type":"integer"},{"name":"item_name","type":"string"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/append_task_run_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/append_task_run_logs_example_call_tool.js deleted file mode 100644 index 2d9ba2f45..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/append_task_run_logs_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.AppendTaskRunLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "task_run_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_1", - "task_run_task_id": "task_42", - "request_body": "{\"log\":\"Task completed successfully.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/append_task_run_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/append_task_run_logs_example_call_tool.py deleted file mode 100644 index 26c5ffd2b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/append_task_run_logs_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.AppendTaskRunLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'task_run_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_1', - 'task_run_task_id': 'task_42', - 'request_body': '{"log":"Task completed successfully."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/bulk_delete_persons_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/bulk_delete_persons_example_call_tool.js deleted file mode 100644 index 594af05c0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/bulk_delete_persons_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.BulkDeletePersons"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "distinct_ids_list": [ - "id1", - "id2", - "id3" - ], - "response_format": "json", - "delete_associated_events": true, - "request_body": "{\"ids\":[\"id1\",\"id2\",\"id3\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/bulk_delete_persons_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/bulk_delete_persons_example_call_tool.py deleted file mode 100644 index 057e07973..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/bulk_delete_persons_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.BulkDeletePersons" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'distinct_ids_list': ['id1', 'id2', 'id3'], - 'response_format': 'json', - 'delete_associated_events': True, - 'request_body': '{"ids":["id1","id2","id3"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/bulk_delete_persons_in_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/bulk_delete_persons_in_environment_example_call_tool.js deleted file mode 100644 index c9a279770..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/bulk_delete_persons_in_environment_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.BulkDeletePersonsInEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "target_project_id": "12345", - "distinct_ids_to_delete": [ - "id1", - "id2", - "id3" - ], - "response_format": "json", - "posthog_person_ids": [ - "ph_id1", - "ph_id2" - ], - "delete_events": true, - "request_body": "{\"ids\":[\"id1\",\"id2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/bulk_delete_persons_in_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/bulk_delete_persons_in_environment_example_call_tool.py deleted file mode 100644 index c89e7501e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/bulk_delete_persons_in_environment_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.BulkDeletePersonsInEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'target_project_id': '12345', - 'distinct_ids_to_delete': ['id1', 'id2', 'id3'], - 'response_format': 'json', - 'posthog_person_ids': ['ph_id1', 'ph_id2'], - 'delete_events': True, - 'request_body': '{"ids":["id1","id2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/cancel_batch_export_backfill_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/cancel_batch_export_backfill_example_call_tool.js deleted file mode 100644 index 54d9c623a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/cancel_batch_export_backfill_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CancelBatchExportBackfill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_identifier": "export_123", - "batch_export_backfill_id": "550e8400-e29b-41d4-a716-446655440000", - "project_id": "project_456", - "request_body": "{\"action\":\"cancel\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/cancel_batch_export_backfill_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/cancel_batch_export_backfill_example_call_tool.py deleted file mode 100644 index e47821db9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/cancel_batch_export_backfill_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CancelBatchExportBackfill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_identifier': 'export_123', - 'batch_export_backfill_id': '550e8400-e29b-41d4-a716-446655440000', - 'project_id': 'project_456', - 'request_body': '{"action":"cancel"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/cancel_batch_export_run_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/cancel_batch_export_run_example_call_tool.js deleted file mode 100644 index 4459a9af6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/cancel_batch_export_run_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CancelBatchExportRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_run_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"action\":\"cancel\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/cancel_batch_export_run_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/cancel_batch_export_run_example_call_tool.py deleted file mode 100644 index 011e0e187..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/cancel_batch_export_run_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CancelBatchExportRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_run_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"action":"cancel"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/cancel_email_change_request_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/cancel_email_change_request_example_call_tool.js deleted file mode 100644 index bf71cc0b7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/cancel_email_change_request_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CancelEmailChangeRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"user_id\":\"12345\",\"request_id\":\"abcde\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/cancel_email_change_request_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/cancel_email_change_request_example_call_tool.py deleted file mode 100644 index 38437cc76..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/cancel_email_change_request_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CancelEmailChangeRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"user_id":"12345","request_id":"abcde"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/cancel_insight_creation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/cancel_insight_creation_example_call_tool.js deleted file mode 100644 index f587f66b5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/cancel_insight_creation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CancelInsightCreation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "12345", - "response_format": "json", - "request_body": "{\"cancel\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/cancel_insight_creation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/cancel_insight_creation_example_call_tool.py deleted file mode 100644 index e77b26660..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/cancel_insight_creation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CancelInsightCreation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': '12345', - 'response_format': 'json', - 'request_body': '{"cancel": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/cancel_invitation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/cancel_invitation_example_call_tool.js deleted file mode 100644 index 88b85e911..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/cancel_invitation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CancelInvitation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invite_identifier_uuid": "123e4567-e89b-12d3-a456-426614174000", - "organization_id": "org-987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/cancel_invitation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/cancel_invitation_example_call_tool.py deleted file mode 100644 index d324e938c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/cancel_invitation_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CancelInvitation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invite_identifier_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'organization_id': 'org-987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/cancel_running_saved_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/cancel_running_saved_query_example_call_tool.js deleted file mode 100644 index 1210951f7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/cancel_running_saved_query_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CancelRunningSavedQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "saved_query_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-1", - "request_body": "{\"action\":\"cancel\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/cancel_running_saved_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/cancel_running_saved_query_example_call_tool.py deleted file mode 100644 index 9a2c96c66..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/cancel_running_saved_query_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CancelRunningSavedQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'saved_query_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project-1', - 'request_body': '{"action":"cancel"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/cancel_saved_query_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/cancel_saved_query_workflow_example_call_tool.js deleted file mode 100644 index 2523f8cd7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/cancel_saved_query_workflow_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CancelSavedQueryWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "saved_query_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-1", - "request_body": "{\"action\":\"cancel\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/cancel_saved_query_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/cancel_saved_query_workflow_example_call_tool.py deleted file mode 100644 index fd18baf7c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/cancel_saved_query_workflow_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CancelSavedQueryWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'saved_query_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project-1', - 'request_body': '{"action":"cancel"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/check_async_auth_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/check_async_auth_example_call_tool.js deleted file mode 100644 index 19a8cfc6f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/check_async_auth_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CheckAsyncAuth"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_for_auth_check": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/check_async_auth_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/check_async_auth_example_call_tool.py deleted file mode 100644 index 1463055fe..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/check_async_auth_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CheckAsyncAuth" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_for_auth_check': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/check_demo_data_generation_status_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/check_demo_data_generation_status_example_call_tool.js deleted file mode 100644 index b60f84889..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/check_demo_data_generation_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CheckDemoDataGenerationStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org123", - "project_identifier": 456 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/check_demo_data_generation_status_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/check_demo_data_generation_status_example_call_tool.py deleted file mode 100644 index ebb7eb3aa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/check_demo_data_generation_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CheckDemoDataGenerationStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org123', 'project_identifier': 456 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/check_posthog_env_authentication_async_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/check_posthog_env_authentication_async_example_call_tool.js deleted file mode 100644 index dd6bc8303..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/check_posthog_env_authentication_async_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CheckPosthogEnvAuthenticationAsync"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "posthog_project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/check_posthog_env_authentication_async_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/check_posthog_env_authentication_async_example_call_tool.py deleted file mode 100644 index d13bb0ec7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/check_posthog_env_authentication_async_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CheckPosthogEnvAuthenticationAsync" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'posthog_project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/check_property_event_association_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/check_property_event_association_example_call_tool.js deleted file mode 100644 index 0f611e78e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/check_property_event_association_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CheckPropertyEventAssociation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/check_property_event_association_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/check_property_event_association_example_call_tool.py deleted file mode 100644 index 6f3e02be2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/check_property_event_association_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CheckPropertyEventAssociation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/complete_project_onboarding_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/complete_project_onboarding_example_call_tool.js deleted file mode 100644 index 2903f2796..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/complete_project_onboarding_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CompleteProjectOnboarding"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "environment_id": 123, - "project_identifier": "proj-456", - "request_body": "{\"status\":\"completed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/complete_project_onboarding_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/complete_project_onboarding_example_call_tool.py deleted file mode 100644 index 76ab8656e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/complete_project_onboarding_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CompleteProjectOnboarding" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'environment_id': 123, - 'project_identifier': 'proj-456', - 'request_body': '{"status":"completed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/complete_symbol_set_upload_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/complete_symbol_set_upload_example_call_tool.js deleted file mode 100644 index 9f1b592a8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/complete_symbol_set_upload_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CompleteSymbolSetUpload"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_for_symbol_set": "12345", - "reference_id": "ref-67890", - "symbol_set_id": "uuid-abcde-12345", - "team_identifier": 42, - "upload_created_at_timestamp": "2023-10-01T12:00:00Z", - "upload_session_id": "session-xyz-98765" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/complete_symbol_set_upload_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/complete_symbol_set_upload_example_call_tool.py deleted file mode 100644 index 5624961fa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/complete_symbol_set_upload_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CompleteSymbolSetUpload" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_for_symbol_set': '12345', - 'reference_id': 'ref-67890', - 'symbol_set_id': 'uuid-abcde-12345', - 'team_identifier': 42, - 'upload_created_at_timestamp': '2023-10-01T12:00:00Z', - 'upload_session_id': 'session-xyz-98765' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/complete_symbol_sets_upload_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/complete_symbol_sets_upload_example_call_tool.js deleted file mode 100644 index ea39d0221..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/complete_symbol_sets_upload_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CompleteSymbolSetsUpload"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "reference_identifier": "ref-abc-123", - "symbol_set_id": "symbol-set-001", - "team_identifier": 42, - "upload_completion_timestamp": "2023-10-01T12:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/complete_symbol_sets_upload_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/complete_symbol_sets_upload_example_call_tool.py deleted file mode 100644 index 915822f67..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/complete_symbol_sets_upload_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CompleteSymbolSetsUpload" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'reference_identifier': 'ref-abc-123', - 'symbol_set_id': 'symbol-set-001', - 'team_identifier': 42, - 'upload_completion_timestamp': '2023-10-01T12:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/count_files_in_directory_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/count_files_in_directory_example_call_tool.js deleted file mode 100644 index 69bc98411..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/count_files_in_directory_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CountFilesInDirectory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "12345", - "request_body": "{\"folder_path\":\"/src/files\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/count_files_in_directory_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/count_files_in_directory_example_call_tool.py deleted file mode 100644 index 114c900cc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/count_files_in_directory_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CountFilesInDirectory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'project_identifier': '12345', 'request_body': '{"folder_path":"/src/files"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_annotation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_annotation_example_call_tool.js deleted file mode 100644 index b77fbd182..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_annotation_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateAnnotation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"text\":\"Important note about the project.\",\"timestamp\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_annotation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_annotation_example_call_tool.py deleted file mode 100644 index 9681759e8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_annotation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateAnnotation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"text":"Important note about the ' - 'project.","timestamp":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_backfill_for_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_backfill_for_batch_export_example_call_tool.js deleted file mode 100644 index 2fa210b70..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_backfill_for_batch_export_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateBackfillForBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_identifier": "export_123", - "project_id": "project_456", - "request_body": "{\"data\":\"sample data\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_backfill_for_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_backfill_for_batch_export_example_call_tool.py deleted file mode 100644 index 1ae7b4aa3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_backfill_for_batch_export_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateBackfillForBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_identifier': 'export_123', - 'project_id': 'project_456', - 'request_body': '{"data":"sample data"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_backfill_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_backfill_example_call_tool.js deleted file mode 100644 index 869968058..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_backfill_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateBatchExportBackfill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_identifier": "export_123", - "project_identifier": "project_456", - "request_body": "{\"data\":\"sample data\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_backfill_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_backfill_example_call_tool.py deleted file mode 100644 index 471e7e319..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_backfill_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateBatchExportBackfill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_identifier': 'export_123', - 'project_identifier': 'project_456', - 'request_body': '{"data":"sample data"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_example_call_tool.js deleted file mode 100644 index 5e3fab5b4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"export_type\":\"full\",\"format\":\"csv\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_example_call_tool.py deleted file mode 100644 index 1b3f2f192..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'project_id': '12345', 'request_body': '{"export_type":"full","format":"csv"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_for_environments_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_for_environments_example_call_tool.js deleted file mode 100644 index 08ea993ae..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_for_environments_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateBatchExportForEnvironments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"environments\":[\"prod\",\"staging\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_for_environments_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_for_environments_example_call_tool.py deleted file mode 100644 index 3429515ed..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_batch_export_for_environments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateBatchExportForEnvironments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'project_id': '12345', 'request_body': '{"environments":["prod","staging"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_batch_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_batch_exports_example_call_tool.js deleted file mode 100644 index d4e278383..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_batch_exports_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateBatchExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "request_body": "{\"export_type\":\"full\",\"format\":\"csv\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_batch_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_batch_exports_example_call_tool.py deleted file mode 100644 index 7ef9340bd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_batch_exports_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateBatchExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'request_body': '{"export_type":"full","format":"csv"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_bulk_invites_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_bulk_invites_example_call_tool.js deleted file mode 100644 index ddf2392b1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_bulk_invites_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateBulkInvites"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org-12345", - "request_body": "{\"emails\":[\"user1@example.com\",\"user2@example.com\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_bulk_invites_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_bulk_invites_example_call_tool.py deleted file mode 100644 index 73eb375b5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_bulk_invites_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateBulkInvites" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org-12345', - 'request_body': '{"emails":["user1@example.com","user2@example.com"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_chat_completion_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_chat_completion_example_call_tool.js deleted file mode 100644 index 693e63140..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_chat_completion_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateChatCompletion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "12345", - "response_format": "json", - "request_body": "{\"messages\":[{\"role\":\"user\",\"content\":\"Hello!\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_chat_completion_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_chat_completion_example_call_tool.py deleted file mode 100644 index 1d5413307..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_chat_completion_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateChatCompletion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': '12345', - 'response_format': 'json', - 'request_body': '{"messages":[{"role":"user","content":"Hello!"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_cohort_tracking_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_cohort_tracking_example_call_tool.js deleted file mode 100644 index df93a1d56..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_cohort_tracking_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateCohortTracking"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"viewed_at\":\"2023-10-01T12:00:00Z\",\"resource_id\":\"abcde\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_cohort_tracking_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_cohort_tracking_example_call_tool.py deleted file mode 100644 index 959ba60eb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_cohort_tracking_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateCohortTracking" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"viewed_at":"2023-10-01T12:00:00Z","resource_id":"abcde"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_collaborator_example_call_tool.js deleted file mode 100644 index 7097f8c8c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_collaborator_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateDashboardCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_identifier": 123, - "project_identifier": "proj_456", - "request_body": "{\"email\":\"collaborator@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_collaborator_example_call_tool.py deleted file mode 100644 index 790030c6d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_collaborator_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateDashboardCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_identifier': 123, - 'project_identifier': 'proj_456', - 'request_body': '{"email":"collaborator@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_example_call_tool.js deleted file mode 100644 index 41672a705..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateDashboard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_example_call_tool.py deleted file mode 100644 index b73d0eda5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateDashboard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_from_template_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_from_template_example_call_tool.js deleted file mode 100644 index 727f1eb6b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_from_template_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateDashboardFromTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "response_format": "json", - "request_body": "{\"template\":\"default\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_from_template_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_from_template_example_call_tool.py deleted file mode 100644 index 28e8ad407..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_from_template_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateDashboardFromTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'response_format': 'json', - 'request_body': '{"template":"default"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_sharing_password_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_sharing_password_example_call_tool.js deleted file mode 100644 index 07a7a892e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_sharing_password_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateDashboardSharingPassword"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_identifier": 123, - "project_identifier": "proj_456", - "request_body": "{\"password\":\"securePassword123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_sharing_password_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_sharing_password_example_call_tool.py deleted file mode 100644 index 8af48ed44..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_sharing_password_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateDashboardSharingPassword" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_identifier': 123, - 'project_identifier': 'proj_456', - 'request_body': '{"password":"securePassword123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_template_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_template_example_call_tool.js deleted file mode 100644 index 6053a8a92..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_template_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateDashboardTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_template_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_template_example_call_tool.py deleted file mode 100644 index 73445449e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_dashboard_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateDashboardTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_data_color_theme_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_data_color_theme_example_call_tool.js deleted file mode 100644 index e7fbe858f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_data_color_theme_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateDataColorTheme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "12345", - "request_body": "{\"themeName\":\"DarkMode\",\"colors\":{\"background\":\"#000000\",\"text\":\"#FFFFFF\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_data_color_theme_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_data_color_theme_example_call_tool.py deleted file mode 100644 index f8e602458..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_data_color_theme_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateDataColorTheme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': '12345', - 'request_body': '{"themeName":"DarkMode","colors":{"background":"#000000","text":"#FFFFFF"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_dataset_item_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_dataset_item_example_call_tool.js deleted file mode 100644 index 59372bd90..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_dataset_item_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateDatasetItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"name\":\"Sample Item\",\"value\":42}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_dataset_item_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_dataset_item_example_call_tool.py deleted file mode 100644 index 3e0de26ce..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_dataset_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateDatasetItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'project_id': '12345', 'request_body': '{"name":"Sample Item","value":42}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_dataset_project_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_dataset_project_example_call_tool.js deleted file mode 100644 index ed6e69375..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_dataset_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateDatasetProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"name\":\"New Dataset\",\"description\":\"Sample dataset for testing\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_dataset_project_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_dataset_project_example_call_tool.py deleted file mode 100644 index 887cb7ac5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_dataset_project_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateDatasetProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"name":"New Dataset","description":"Sample dataset for testing"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_default_evaluation_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_default_evaluation_tags_example_call_tool.js deleted file mode 100644 index 1b5d269a1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_default_evaluation_tags_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateDefaultEvaluationTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "environment_id": 123, - "project_identifier": "proj-456", - "request_body": "{\"tags\":[\"tag1\",\"tag2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_default_evaluation_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_default_evaluation_tags_example_call_tool.py deleted file mode 100644 index 8552a5f9e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_default_evaluation_tags_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateDefaultEvaluationTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'environment_id': 123, - 'project_identifier': 'proj-456', - 'request_body': '{"tags":["tag1","tag2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_domain_in_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_domain_in_organization_example_call_tool.js deleted file mode 100644 index 699a9fe5d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_domain_in_organization_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateDomainInOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "request_body": "{\"domain\":\"example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_domain_in_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_domain_in_organization_example_call_tool.py deleted file mode 100644 index 325ddeca6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_domain_in_organization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateDomainInOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'organization_id': 'org_12345', 'request_body': '{"domain":"example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_early_access_feature_tracking_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_early_access_feature_tracking_example_call_tool.js deleted file mode 100644 index e2ba7aed7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_early_access_feature_tracking_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEarlyAccessFeatureTracking"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"feature\":\"new_dashboard\",\"views\":10}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_early_access_feature_tracking_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_early_access_feature_tracking_example_call_tool.py deleted file mode 100644 index 3adba32fe..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_early_access_feature_tracking_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEarlyAccessFeatureTracking" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'project_id': '12345', 'request_body': '{"feature":"new_dashboard","views":10}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_email_verification_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_email_verification_integration_example_call_tool.js deleted file mode 100644 index cc9056294..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_email_verification_integration_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEmailVerificationIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_id": 123, - "project_id": "proj_456", - "request_body": "{\"email\":\"user@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_email_verification_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_email_verification_integration_example_call_tool.py deleted file mode 100644 index ac0dd5ff5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_email_verification_integration_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEmailVerificationIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'integration_id': 123, - 'project_id': 'proj_456', - 'request_body': '{"email":"user@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_environment_batch_export_example_call_tool.js deleted file mode 100644 index f68336dc1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_batch_export_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEnvironmentBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"exportType\":\"full\",\"includeDependencies\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_environment_batch_export_example_call_tool.py deleted file mode 100644 index e7a6ab69e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_batch_export_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEnvironmentBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"exportType":"full","includeDependencies":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dashboard_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_environment_dashboard_example_call_tool.js deleted file mode 100644 index 0a2d3a84b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dashboard_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEnvironmentDashboard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dashboard_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_environment_dashboard_example_call_tool.py deleted file mode 100644 index 3d52b7c35..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dashboard_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEnvironmentDashboard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dashboard_from_template_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_environment_dashboard_from_template_example_call_tool.js deleted file mode 100644 index ab676120c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dashboard_from_template_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEnvironmentDashboardFromTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "12345", - "response_format": "json", - "request_body": "{\"template\":\"sample_template\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dashboard_from_template_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_environment_dashboard_from_template_example_call_tool.py deleted file mode 100644 index fd93e5c3c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dashboard_from_template_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEnvironmentDashboardFromTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': '12345', - 'response_format': 'json', - 'request_body': '{"template":"sample_template"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dataset_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_environment_dataset_example_call_tool.js deleted file mode 100644 index a4360be05..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dataset_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEnvironmentDataset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id_for_environment": "12345", - "request_body": "{\"name\":\"Sample Dataset\",\"type\":\"environment\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dataset_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_environment_dataset_example_call_tool.py deleted file mode 100644 index a6434d3a5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dataset_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEnvironmentDataset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id_for_environment': '12345', - 'request_body': '{"name":"Sample Dataset","type":"environment"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dataset_item_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_environment_dataset_item_example_call_tool.js deleted file mode 100644 index 40e4f371d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dataset_item_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEnvironmentDatasetItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"name\":\"Sample Item\",\"description\":\"This is a sample dataset item.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dataset_item_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_environment_dataset_item_example_call_tool.py deleted file mode 100644 index 379e38fab..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_dataset_item_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEnvironmentDatasetItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"name":"Sample Item","description":"This is a sample dataset item."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_evaluation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_environment_evaluation_example_call_tool.js deleted file mode 100644 index ed5e6b90b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_evaluation_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEnvironmentEvaluation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"environment\":\"production\",\"config\":\"[config_data]\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_evaluation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_environment_evaluation_example_call_tool.py deleted file mode 100644 index 1faab393e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_evaluation_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEnvironmentEvaluation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"environment":"production","config":"[config_data]"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_environment_exports_example_call_tool.js deleted file mode 100644 index f0f9b4c0b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_exports_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEnvironmentExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"export_type\":\"full\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_environment_exports_example_call_tool.py deleted file mode 100644 index 790549b18..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_exports_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEnvironmentExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'project_id': '12345', 'request_body': '{"export_type":"full"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_file_system_link_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_environment_file_system_link_example_call_tool.js deleted file mode 100644 index 8a28c5391..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_file_system_link_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEnvironmentFileSystemLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "file_system_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"link\":\"/path/to/resource\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_file_system_link_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_environment_file_system_link_example_call_tool.py deleted file mode 100644 index c0b02019f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_file_system_link_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEnvironmentFileSystemLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'file_system_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"link":"/path/to/resource"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_file_system_log_view_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_environment_file_system_log_view_example_call_tool.js deleted file mode 100644 index 99b06c103..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_file_system_log_view_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEnvironmentFileSystemLogView"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"logLevel\":\"info\",\"logPath\":\"/var/logs/project\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_file_system_log_view_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_environment_file_system_log_view_example_call_tool.py deleted file mode 100644 index 7d2c8b20c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_file_system_log_view_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEnvironmentFileSystemLogView" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"logLevel":"info","logPath":"/var/logs/project"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_group_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_environment_group_example_call_tool.js deleted file mode 100644 index fafdf78f0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_group_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEnvironmentGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_group_key": "prod-env-group", - "group_type_index": 1, - "project_identifier": "project-123", - "environment_group_properties": "{\"setting1\":\"value1\",\"setting2\":\"value2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_group_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_environment_group_example_call_tool.py deleted file mode 100644 index 78d1b8335..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_group_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEnvironmentGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_group_key': 'prod-env-group', - 'group_type_index': 1, - 'project_identifier': 'project-123', - 'environment_group_properties': '{"setting1":"value1","setting2":"value2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_insight_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_environment_insight_example_call_tool.js deleted file mode 100644 index b89c6e2a4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_insight_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEnvironmentInsight"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "output_format": "json", - "request_body": "{\"insight\":\"New environment insight\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_insight_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_environment_insight_example_call_tool.py deleted file mode 100644 index 6a19fffc3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_insight_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEnvironmentInsight" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'output_format': 'json', - 'request_body': '{"insight":"New environment insight"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_environment_integration_example_call_tool.js deleted file mode 100644 index df6b2dcae..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_integration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEnvironmentIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "12345", - "request_body": "{\"integration\":\"example_integration\",\"settings\":{\"key\":\"value\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_environment_integration_example_call_tool.py deleted file mode 100644 index dce7aee6d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_integration_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEnvironmentIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': '12345', - 'request_body': '{"integration":"example_integration","settings":{"key":"value"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_log_sparkline_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_environment_log_sparkline_example_call_tool.js deleted file mode 100644 index 2bf07a8b4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_log_sparkline_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEnvironmentLogSparkline"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_for_log_sparkline": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_log_sparkline_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_environment_log_sparkline_example_call_tool.py deleted file mode 100644 index 89a093b35..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_log_sparkline_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEnvironmentLogSparkline" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_for_log_sparkline': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_environment_subscription_example_call_tool.js deleted file mode 100644 index 1799e796f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_subscription_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEnvironmentSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"subscription_type\":\"email\",\"notification_settings\":{\"enabled\":true,\"frequency\":\"daily\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_environment_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_environment_subscription_example_call_tool.py deleted file mode 100644 index e36bf7d39..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_environment_subscription_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEnvironmentSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"subscription_type":"email","notification_settings":{"enabled":true,"frequency":"daily"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_assignment_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_assignment_rule_example_call_tool.js deleted file mode 100644 index 204f75646..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_assignment_rule_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateErrorTrackingAssignmentRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "assignee_username": "john_doe", - "assignment_rule_filters": "error_type:critical", - "order_key_priority": 1, - "project_id": "proj_12345", - "rule_id": "rule_67890", - "disabled_data_state": "false" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_assignment_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_assignment_rule_example_call_tool.py deleted file mode 100644 index c8854d884..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_assignment_rule_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateErrorTrackingAssignmentRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'assignee_username': 'john_doe', - 'assignment_rule_filters': 'error_type:critical', - 'order_key_priority': 1, - 'project_id': 'proj_12345', - 'rule_id': 'rule_67890', - 'disabled_data_state': 'false' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_grouping_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_grouping_rule_example_call_tool.js deleted file mode 100644 index c63fb0ab9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_grouping_rule_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateErrorTrackingGroupingRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "assignee_identifier": "user123", - "error_tracking_filters": "error_type:critical", - "order_priority_key": 1, - "project_id": "proj456", - "rule_identifier": "group_rule_789", - "grouping_rule_disabled_data": "false" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_grouping_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_grouping_rule_example_call_tool.py deleted file mode 100644 index b5c4ec5e0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_grouping_rule_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateErrorTrackingGroupingRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'assignee_identifier': 'user123', - 'error_tracking_filters': 'error_type:critical', - 'order_priority_key': 1, - 'project_id': 'proj456', - 'rule_identifier': 'group_rule_789', - 'grouping_rule_disabled_data': 'false' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_release_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_release_example_call_tool.js deleted file mode 100644 index c7ba0d2af..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_release_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateErrorTrackingRelease"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "error_release_id": "release-12345", - "hash_identifier": "hash-abcde", - "project_id": "project-67890", - "project_name": "Sample Project", - "release_creation_timestamp": "2023-10-02T14:48:00Z", - "release_version": "1.0.0", - "team_identifier": 42, - "release_metadata": "Initial release for error tracking" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_release_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_release_example_call_tool.py deleted file mode 100644 index fb1712af5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_release_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateErrorTrackingRelease" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'error_release_id': 'release-12345', - 'hash_identifier': 'hash-abcde', - 'project_id': 'project-67890', - 'project_name': 'Sample Project', - 'release_creation_timestamp': '2023-10-02T14:48:00Z', - 'release_version': '1.0.0', - 'team_identifier': 42, - 'release_metadata': 'Initial release for error tracking' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_suppression_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_suppression_rule_example_call_tool.js deleted file mode 100644 index da28b0766..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_suppression_rule_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateErrorTrackingSuppressionRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "suppress_rule_order_key": 1, - "suppression_rule_filters": "error.type='Critical'", - "suppression_rule_id": "rule-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_suppression_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_suppression_rule_example_call_tool.py deleted file mode 100644 index a549d93ee..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_error_tracking_suppression_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateErrorTrackingSuppressionRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'suppress_rule_order_key': 1, - 'suppression_rule_filters': "error.type='Critical'", - 'suppression_rule_id': 'rule-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_evaluation_run_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_evaluation_run_example_call_tool.js deleted file mode 100644 index d7bffb799..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_evaluation_run_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateEvaluationRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_evaluation_run_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_evaluation_run_example_call_tool.py deleted file mode 100644 index a457c3c8b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_evaluation_run_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateEvaluationRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_holdout_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_experiment_holdout_example_call_tool.js deleted file mode 100644 index 12317decc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_holdout_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateExperimentHoldout"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"holdout_percentage\": 20, \"description\": \"Control group for A/B testing\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_holdout_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_experiment_holdout_example_call_tool.py deleted file mode 100644 index 4012746f7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_holdout_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateExperimentHoldout" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"holdout_percentage": 20, "description": "Control group for A/B testing"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_in_project_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_experiment_in_project_example_call_tool.js deleted file mode 100644 index 70bb68e21..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_in_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateExperimentInProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id_for_experiment_creation": "12345", - "request_body": "{\"name\":\"New Experiment\",\"description\":\"This is a test experiment.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_in_project_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_experiment_in_project_example_call_tool.py deleted file mode 100644 index ca801c8cb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_in_project_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateExperimentInProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id_for_experiment_creation': '12345', - 'request_body': '{"name":"New Experiment","description":"This is a test experiment."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_saved_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_experiment_saved_metrics_example_call_tool.js deleted file mode 100644 index 9787a806c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_saved_metrics_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateExperimentSavedMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"metric_name\":\"accuracy\",\"value\":0.95}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_saved_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_experiment_saved_metrics_example_call_tool.py deleted file mode 100644 index 0361f8f8b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_saved_metrics_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateExperimentSavedMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"metric_name":"accuracy","value":0.95}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_timeseries_recalculation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_experiment_timeseries_recalculation_example_call_tool.js deleted file mode 100644 index 718116f73..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_timeseries_recalculation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateExperimentTimeseriesRecalculation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "experiment_id": 123, - "project_identifier": "proj_456", - "request_body": "{\"metric\":\"accuracy\",\"value\":0.95}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_timeseries_recalculation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_experiment_timeseries_recalculation_example_call_tool.py deleted file mode 100644 index 4e5a0dd39..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_experiment_timeseries_recalculation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateExperimentTimeseriesRecalculation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'experiment_id': 123, - 'project_identifier': 'proj_456', - 'request_body': '{"metric":"accuracy","value":0.95}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_exports_example_call_tool.js deleted file mode 100644 index 82e49dfd0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_exports_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"export_type\":\"full\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_exports_example_call_tool.py deleted file mode 100644 index 3fe48da44..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_exports_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'project_id': '12345', 'request_body': '{"export_type":"full"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_exposure_cohort_for_experiment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_exposure_cohort_for_experiment_example_call_tool.js deleted file mode 100644 index 7a773fa4b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_exposure_cohort_for_experiment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateExposureCohortForExperiment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "experiment_id": 123, - "project_identifier": "proj_456", - "request_body": "{\"cohort_name\":\"test_cohort\",\"criteria\":{\"age\":18}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_exposure_cohort_for_experiment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_exposure_cohort_for_experiment_example_call_tool.py deleted file mode 100644 index 11b81a62f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_exposure_cohort_for_experiment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateExposureCohortForExperiment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'experiment_id': 123, - 'project_identifier': 'proj_456', - 'request_body': '{"cohort_name":"test_cohort","criteria":{"age":18}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_blast_radius_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_blast_radius_example_call_tool.js deleted file mode 100644 index fa27b7a54..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_blast_radius_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateFeatureFlagBlastRadius"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "feature_flag_project_id": "12345", - "request_body": "{\"blast_radius\":\"10\",\"feature_flag\":\"new_feature\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_blast_radius_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_blast_radius_example_call_tool.py deleted file mode 100644 index 1e01c682e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_blast_radius_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateFeatureFlagBlastRadius" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'feature_flag_project_id': '12345', - 'request_body': '{"blast_radius":"10","feature_flag":"new_feature"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_example_call_tool.js deleted file mode 100644 index f225f514f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateFeatureFlag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_unique_identifier": "proj-123", - "request_body": "{\"name\":\"new-feature-flag\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_example_call_tool.py deleted file mode 100644 index ad36abf97..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateFeatureFlag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_unique_identifier': 'proj-123', - 'request_body': '{"name":"new-feature-flag","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_usage_dashboard_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_usage_dashboard_example_call_tool.js deleted file mode 100644 index 8dce6c9ce..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_usage_dashboard_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateFeatureFlagUsageDashboard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "feature_flag_id": 123, - "project_id": "proj_456", - "request_body": "{\"name\":\"New Feature Flag\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_usage_dashboard_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_usage_dashboard_example_call_tool.py deleted file mode 100644 index 0fac6aa3b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flag_usage_dashboard_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateFeatureFlagUsageDashboard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'feature_flag_id': 123, - 'project_id': 'proj_456', - 'request_body': '{"name":"New Feature Flag","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flags_dashboard_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_feature_flags_dashboard_example_call_tool.js deleted file mode 100644 index cb037b969..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flags_dashboard_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateFeatureFlagsDashboard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "feature_flag_id": 123, - "project_identifier": "proj_456", - "request_body": "{\"name\":\"New Feature\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flags_dashboard_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_feature_flags_dashboard_example_call_tool.py deleted file mode 100644 index 3062c2372..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_feature_flags_dashboard_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateFeatureFlagsDashboard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'feature_flag_id': 123, - 'project_identifier': 'proj_456', - 'request_body': '{"name":"New Feature","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_file_system_environment_example_call_tool.js deleted file mode 100644 index 36117810a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_environment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateFileSystemEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"name\":\"test_env\",\"type\":\"storage\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_file_system_environment_example_call_tool.py deleted file mode 100644 index 19577de15..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_environment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateFileSystemEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'project_id': '12345', 'request_body': '{"name":"test_env","type":"storage"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_link_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_file_system_link_example_call_tool.js deleted file mode 100644 index 41380e099..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_link_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateFileSystemLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "file_system_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"link\":\"/path/to/file\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_link_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_file_system_link_example_call_tool.py deleted file mode 100644 index c6cf2d535..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_link_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateFileSystemLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'file_system_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"link":"/path/to/file"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_log_view_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_file_system_log_view_example_call_tool.js deleted file mode 100644 index cdaa30772..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_log_view_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateFileSystemLogView"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "target_project_id": "12345", - "request_body": "{\"log_view_name\":\"example_log_view\",\"log_level\":\"info\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_log_view_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_file_system_log_view_example_call_tool.py deleted file mode 100644 index a846b8566..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_log_view_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateFileSystemLogView" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'target_project_id': '12345', - 'request_body': '{"log_view_name":"example_log_view","log_level":"info"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_shortcut_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_file_system_shortcut_example_call_tool.js deleted file mode 100644 index db872d98a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_shortcut_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateFileSystemShortcut"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "creation_timestamp": "2023-10-01T12:00:00Z", - "file_system_path": "/projects/my_project/env", - "project_identifier": "proj-12345", - "shortcut_identifier": "shortcut-001", - "reference_name": "My Project Shortcut", - "shortcut_type": "folder" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_shortcut_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_file_system_shortcut_example_call_tool.py deleted file mode 100644 index d940570db..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_file_system_shortcut_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateFileSystemShortcut" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'creation_timestamp': '2023-10-01T12:00:00Z', - 'file_system_path': '/projects/my_project/env', - 'project_identifier': 'proj-12345', - 'shortcut_identifier': 'shortcut-001', - 'reference_name': 'My Project Shortcut', - 'shortcut_type': 'folder' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_group_type_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_group_type_metric_example_call_tool.js deleted file mode 100644 index eb9439054..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_group_type_metric_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateGroupTypeMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_type_index": 1, - "group_type_metric_id": "metric_001", - "metric_filters": "status:active", - "metric_name": "Active Users", - "project_id": "project_123", - "display_format": "number" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_group_type_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_group_type_metric_example_call_tool.py deleted file mode 100644 index 5a1305a60..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_group_type_metric_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateGroupTypeMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_type_index': 1, - 'group_type_metric_id': 'metric_001', - 'metric_filters': 'status:active', - 'metric_name': 'Active Users', - 'project_id': 'project_123', - 'display_format': 'number' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_broadcast_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_broadcast_example_call_tool.js deleted file mode 100644 index a58cebf85..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_broadcast_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateHogFunctionBroadcast"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "hog_function_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_1", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_broadcast_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_broadcast_example_call_tool.py deleted file mode 100644 index 273a2ecf4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_broadcast_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateHogFunctionBroadcast" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'hog_function_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_1', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_environment_example_call_tool.js deleted file mode 100644 index 164ca9222..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_environment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateHogFunctionEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"view\":\"new_view\",\"timestamp\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_environment_example_call_tool.py deleted file mode 100644 index c85b7cd5e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_environment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateHogFunctionEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"view":"new_view","timestamp":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_example_call_tool.js deleted file mode 100644 index 733effa89..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateHogFunction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "proj_123", - "request_body": "{\"view\":\"new_view\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_example_call_tool.py deleted file mode 100644 index 34a13bc0f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_hog_function_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateHogFunction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'project_identifier': 'proj_123', 'request_body': '{"view":"new_view"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_insight_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_insight_entry_example_call_tool.js deleted file mode 100644 index 11926925a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_insight_entry_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateInsightEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "proj123", - "response_format": "json", - "request_body": "{\"view\":\"file_system_view_data\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_insight_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_insight_entry_example_call_tool.py deleted file mode 100644 index 8aa77775a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_insight_entry_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateInsightEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': 'proj123', - 'response_format': 'json', - 'request_body': '{"view":"file_system_view_data"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_insights_sharing_password_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_insights_sharing_password_example_call_tool.js deleted file mode 100644 index bf1e8ac48..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_insights_sharing_password_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateInsightsSharingPassword"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "insight_identifier": 123, - "project_identifier": "proj_456", - "request_body": "{\"password\":\"newSecurePassword123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_insights_sharing_password_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_insights_sharing_password_example_call_tool.py deleted file mode 100644 index 0074ef54d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_insights_sharing_password_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateInsightsSharingPassword" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'insight_identifier': 123, - 'project_identifier': 'proj_456', - 'request_body': '{"password":"newSecurePassword123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_log_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_log_query_example_call_tool.js deleted file mode 100644 index 6684880e2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_log_query_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateLogQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_log_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_log_query_example_call_tool.py deleted file mode 100644 index 1c0cbf174..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_log_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateLogQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_logs_query_for_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_logs_query_for_environment_example_call_tool.js deleted file mode 100644 index 9f3ba4d0a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_logs_query_for_environment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateLogsQueryForEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_logs_query_for_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_logs_query_for_environment_example_call_tool.py deleted file mode 100644 index 82c92b594..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_logs_query_for_environment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateLogsQueryForEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_logs_sparkline_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_logs_sparkline_example_call_tool.js deleted file mode 100644 index e2464f1e7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_logs_sparkline_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateLogsSparkline"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_logs_sparkline_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_logs_sparkline_example_call_tool.py deleted file mode 100644 index de5200aef..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_logs_sparkline_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateLogsSparkline" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_max_tools_insight_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_max_tools_insight_example_call_tool.js deleted file mode 100644 index 7745bb4c0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_max_tools_insight_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateMaxToolsInsight"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_max_tools_insight_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_max_tools_insight_example_call_tool.py deleted file mode 100644 index 055debff5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_max_tools_insight_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateMaxToolsInsight" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_message_with_claude_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_message_with_claude_example_call_tool.js deleted file mode 100644 index 38f545546..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_message_with_claude_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateMessageWithClaude"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "12345", - "message_format": "json", - "request_body": "{\"text\":\"Hello, Claude!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_message_with_claude_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_message_with_claude_example_call_tool.py deleted file mode 100644 index 02bb54fc9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_message_with_claude_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateMessageWithClaude" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': '12345', - 'message_format': 'json', - 'request_body': '{"text":"Hello, Claude!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_notebook_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_notebook_example_call_tool.js deleted file mode 100644 index 7c1c6b4e7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_notebook_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateNotebook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "12345", - "request_body": "{\"title\":\"New Notebook\",\"content\":\"[file_content]\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_notebook_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_notebook_example_call_tool.py deleted file mode 100644 index 2944602c0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_notebook_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateNotebook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': '12345', - 'request_body': '{"title":"New Notebook","content":"[file_content]"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_or_update_persons_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_or_update_persons_example_call_tool.js deleted file mode 100644 index a6b64d4e7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_or_update_persons_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateOrUpdatePersons"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "response_format": "json", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_or_update_persons_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_or_update_persons_example_call_tool.py deleted file mode 100644 index 3aef8de48..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_or_update_persons_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateOrUpdatePersons" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'response_format': 'json', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_organization_example_call_tool.js deleted file mode 100644 index 872d96372..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_organization_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"NewOrg\",\"description\":\"This is a new organization.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_organization_example_call_tool.py deleted file mode 100644 index 62e83a984..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_organization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"name":"NewOrg","description":"This is a new organization."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_organization_invite_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_organization_invite_example_call_tool.js deleted file mode 100644 index f28084b52..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_organization_invite_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateOrganizationInvite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org-12345", - "request_body": "{\"email\":\"user@example.com\",\"role\":\"member\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_organization_invite_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_organization_invite_example_call_tool.py deleted file mode 100644 index d1671b50a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_organization_invite_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateOrganizationInvite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org-12345', - 'request_body': '{"email":"user@example.com","role":"member"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_organization_project_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_organization_project_example_call_tool.js deleted file mode 100644 index c949b7a71..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_organization_project_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateOrganizationProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_unique_id": 123, - "organization_identifier": "org-456", - "request_body": "{\"name\":\"New Project\",\"description\":\"Project description here\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_organization_project_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_organization_project_example_call_tool.py deleted file mode 100644 index f977a5fa2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_organization_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateOrganizationProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_unique_id': 123, - 'organization_identifier': 'org-456', - 'request_body': '{"name":"New Project","description":"Project description here"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_persisted_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_persisted_folder_example_call_tool.js deleted file mode 100644 index a8ce680e9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_persisted_folder_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreatePersistedFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_creation_timestamp": "2023-10-01T12:00:00Z", - "folder_id": "folder-12345", - "folder_type": "home", - "folder_updated_at": "2023-10-01T12:00:00Z", - "project_identifier": "project-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_persisted_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_persisted_folder_example_call_tool.py deleted file mode 100644 index 9d49041ad..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_persisted_folder_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreatePersistedFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_creation_timestamp': '2023-10-01T12:00:00Z', - 'folder_id': 'folder-12345', - 'folder_type': 'home', - 'folder_updated_at': '2023-10-01T12:00:00Z', - 'project_identifier': 'project-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_persons_funnel_correlation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_persons_funnel_correlation_example_call_tool.js deleted file mode 100644 index 0c47b3e51..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_persons_funnel_correlation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreatePersonsFunnelCorrelation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "output_format": "json", - "request_body": "{\"funnel\":\"signup\",\"correlation\":\"age,location\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_persons_funnel_correlation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_persons_funnel_correlation_example_call_tool.py deleted file mode 100644 index 0bc014c81..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_persons_funnel_correlation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreatePersonsFunnelCorrelation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'output_format': 'json', - 'request_body': '{"funnel":"signup","correlation":"age,location"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_persons_funnel_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_persons_funnel_example_call_tool.js deleted file mode 100644 index 997838612..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_persons_funnel_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreatePersonsFunnel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "target_project_id": "12345", - "output_format": "json", - "request_body": "{\"name\":\"Sample Funnel\",\"description\":\"A funnel for tracking sample persons.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_persons_funnel_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_persons_funnel_example_call_tool.py deleted file mode 100644 index 3a136a815..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_persons_funnel_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreatePersonsFunnel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'target_project_id': '12345', - 'output_format': 'json', - 'request_body': '{"name":"Sample Funnel","description":"A funnel for tracking sample ' - 'persons."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_project_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_project_environment_example_call_tool.js deleted file mode 100644 index f1966f56c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_project_environment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateProjectEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"env_name\":\"dev\",\"settings\":{\"debug\":true}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_project_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_project_environment_example_call_tool.py deleted file mode 100644 index 3ec4afe05..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_project_environment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateProjectEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"env_name":"dev","settings":{"debug":true}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_project_file_system_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_project_file_system_example_call_tool.js deleted file mode 100644 index dedc5c81d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_project_file_system_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateProjectFileSystem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"name\":\"New File System\",\"type\":\"ext4\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_project_file_system_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_project_file_system_example_call_tool.py deleted file mode 100644 index fb7810b0e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_project_file_system_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateProjectFileSystem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"name":"New File System","type":"ext4"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_project_for_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_project_for_organization_example_call_tool.js deleted file mode 100644 index 87c9e3e06..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_project_for_organization_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateProjectForOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "request_body": "{\"name\":\"New Project\",\"description\":\"This is a sample project.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_project_for_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_project_for_organization_example_call_tool.py deleted file mode 100644 index a7c98d874..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_project_for_organization_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateProjectForOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'request_body': '{"name":"New Project","description":"This is a sample project."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_project_group_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_project_group_example_call_tool.js deleted file mode 100644 index 650ea5c91..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_project_group_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateProjectGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_identifier_key": "dev_team_2023", - "group_type_identifier": 1, - "project_identifier": "proj_12345", - "group_properties": "{\"description\":\"Development Team for 2023 projects\",\"members\":[\"user1\",\"user2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_project_group_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_project_group_example_call_tool.py deleted file mode 100644 index b442f95ed..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_project_group_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateProjectGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_identifier_key': 'dev_team_2023', - 'group_type_identifier': 1, - 'project_identifier': 'proj_12345', - 'group_properties': '{"description":"Development Team for 2023 ' - 'projects","members":["user1","user2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_project_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_project_integration_example_call_tool.js deleted file mode 100644 index fe3a97088..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_project_integration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateProjectIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"integration_type\":\"webhook\",\"url\":\"https://example.com/hook\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_project_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_project_integration_example_call_tool.py deleted file mode 100644 index 20294df49..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_project_integration_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateProjectIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"integration_type":"webhook","url":"https://example.com/hook"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_project_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_project_subscription_example_call_tool.js deleted file mode 100644 index 93bbf7fa0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_project_subscription_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateProjectSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "12345", - "request_body": "{\"subscriptionType\":\"monthly\",\"userId\":\"user_001\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_project_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_project_subscription_example_call_tool.py deleted file mode 100644 index 4b33f0d58..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_project_subscription_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateProjectSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': '12345', - 'request_body': '{"subscriptionType":"monthly","userId":"user_001"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_project_task_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_project_task_example_call_tool.js deleted file mode 100644 index f9e6856b9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_project_task_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateProjectTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "12345", - "request_body": "{\"task_name\":\"New Task\",\"description\":\"This is a new task.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_project_task_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_project_task_example_call_tool.py deleted file mode 100644 index db589b042..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_project_task_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateProjectTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': '12345', - 'request_body': '{"task_name":"New Task","description":"This is a new task."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_proxy_records_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_proxy_records_example_call_tool.js deleted file mode 100644 index 588849690..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_proxy_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateProxyRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org-12345", - "request_body": "{\"proxy_name\":\"example-proxy\",\"ip_address\":\"192.168.1.1\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_proxy_records_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_proxy_records_example_call_tool.py deleted file mode 100644 index 50cb4eeca..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_proxy_records_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateProxyRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org-12345', - 'request_body': '{"proxy_name":"example-proxy","ip_address":"192.168.1.1"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_recording_share_password_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_recording_share_password_example_call_tool.js deleted file mode 100644 index 3aca9d674..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_recording_share_password_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateRecordingSharePassword"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "recording_id": "abcde", - "request_body": "{\"password\":\"securePassword123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_recording_share_password_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_recording_share_password_example_call_tool.py deleted file mode 100644 index 070508e39..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_recording_share_password_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateRecordingSharePassword" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'recording_id': 'abcde', - 'request_body': '{"password":"securePassword123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_role_in_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_role_in_organization_example_call_tool.js deleted file mode 100644 index b9b701253..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_role_in_organization_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateRoleInOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "request_body": "{\"role_name\":\"Developer\",\"permissions\":[\"read\",\"write\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_role_in_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_role_in_organization_example_call_tool.py deleted file mode 100644 index 74d2282d6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_role_in_organization_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateRoleInOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'request_body': '{"role_name":"Developer","permissions":["read","write"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_role_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_role_membership_example_call_tool.js deleted file mode 100644 index ce9fc1679..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_role_membership_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateRoleMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "role_identifier": "role_admin", - "request_body": "{\"user_id\":\"user_67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_role_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_role_membership_example_call_tool.py deleted file mode 100644 index 9a81f1ccf..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_role_membership_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateRoleMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'role_identifier': 'role_admin', - 'request_body': '{"user_id":"user_67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_session_recording_playlist_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_session_recording_playlist_entry_example_call_tool.js deleted file mode 100644 index 9cba0a86d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_session_recording_playlist_entry_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateSessionRecordingPlaylistEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "session_recording_id": "abcde", - "session_recording_short_id": "short_1", - "request_body": "{\"title\":\"New Recording\",\"description\":\"Session recording details\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_session_recording_playlist_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_session_recording_playlist_entry_example_call_tool.py deleted file mode 100644 index dea036297..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_session_recording_playlist_entry_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateSessionRecordingPlaylistEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'session_recording_id': 'abcde', - 'session_recording_short_id': 'short_1', - 'request_body': '{"title":"New Recording","description":"Session recording details"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_session_recording_playlist_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_session_recording_playlist_example_call_tool.js deleted file mode 100644 index bf189963c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_session_recording_playlist_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateSessionRecordingPlaylist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"name\":\"My Playlist\",\"description\":\"A session recording playlist for testing.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_session_recording_playlist_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_session_recording_playlist_example_call_tool.py deleted file mode 100644 index b0ff4061e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_session_recording_playlist_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateSessionRecordingPlaylist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"name":"My Playlist","description":"A session recording playlist for ' - 'testing."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_sharing_password_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_sharing_password_example_call_tool.js deleted file mode 100644 index d55b4524e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_sharing_password_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateSharingPassword"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "insight_identifier": 123, - "project_id": "456", - "request_body": "{\"password\":\"new_password\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_sharing_password_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_sharing_password_example_call_tool.py deleted file mode 100644 index c0317c916..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_sharing_password_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateSharingPassword" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'insight_identifier': 123, - 'project_id': '456', - 'request_body': '{"password":"new_password"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_static_cohort_copy_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_static_cohort_copy_example_call_tool.js deleted file mode 100644 index f386bf4a8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_static_cohort_copy_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateStaticCohortCopy"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cohort_identifier": 123, - "project_identifier": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_static_cohort_copy_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_static_cohort_copy_example_call_tool.py deleted file mode 100644 index 36cedb6d4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_static_cohort_copy_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateStaticCohortCopy" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cohort_identifier': 123, 'project_identifier': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_static_cohort_for_feature_flag_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_static_cohort_for_feature_flag_example_call_tool.js deleted file mode 100644 index 65a6ed3e3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_static_cohort_for_feature_flag_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateStaticCohortForFeatureFlag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "feature_flag_id": 123, - "project_id": "proj_456", - "request_body": "{\"cohort_name\":\"test_cohort\",\"user_ids\":[\"user_1\",\"user_2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_static_cohort_for_feature_flag_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_static_cohort_for_feature_flag_example_call_tool.py deleted file mode 100644 index e5d67c751..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_static_cohort_for_feature_flag_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateStaticCohortForFeatureFlag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'feature_flag_id': 123, - 'project_id': 'proj_456', - 'request_body': '{"cohort_name":"test_cohort","user_ids":["user_1","user_2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_survey_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_survey_example_call_tool.js deleted file mode 100644 index c57e64844..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_survey_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateSurvey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"title\":\"Customer Feedback\",\"questions\":[{\"question\":\"How satisfied are you with our service?\",\"type\":\"rating\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_survey_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_survey_example_call_tool.py deleted file mode 100644 index 6c8de5794..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_survey_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateSurvey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"title":"Customer Feedback","questions":[{"question":"How satisfied are you ' - 'with our service?","type":"rating"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_symbol_set_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_symbol_set_example_call_tool.js deleted file mode 100644 index bc7a9b931..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_symbol_set_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateSymbolSet"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_symbol_set_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_symbol_set_example_call_tool.py deleted file mode 100644 index a3d1cd293..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_symbol_set_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateSymbolSet" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_task_run_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_task_run_example_call_tool.js deleted file mode 100644 index 82d42ba16..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_task_run_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateTaskRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "task_id": "task_67890", - "request_body": "{\"param1\":\"value1\",\"param2\":\"value2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_task_run_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_task_run_example_call_tool.py deleted file mode 100644 index 74cf811ef..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_task_run_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateTaskRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'task_id': 'task_67890', - 'request_body': '{"param1":"value1","param2":"value2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_user_interview_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_user_interview_environment_example_call_tool.js deleted file mode 100644 index 819261b0b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_user_interview_environment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateUserInterviewEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "access_project_id": "12345", - "request_body": "{\"name\":\"User Interview Environment\",\"description\":\"Environment for user interviews\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_user_interview_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_user_interview_environment_example_call_tool.py deleted file mode 100644 index ebab8faef..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_user_interview_environment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateUserInterviewEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'access_project_id': '12345', - 'request_body': '{"name":"User Interview Environment","description":"Environment for user ' - 'interviews"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_user_scene_personalization_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_user_scene_personalization_example_call_tool.js deleted file mode 100644 index 1f61040ea..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_user_scene_personalization_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateUserScenePersonalization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_uuid": "123e4567-e89b-12d3-a456-426614174000", - "request_body": "{\"theme\":\"dark\",\"fontSize\":\"medium\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_user_scene_personalization_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_user_scene_personalization_example_call_tool.py deleted file mode 100644 index bf02c5338..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_user_scene_personalization_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateUserScenePersonalization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'request_body': '{"theme":"dark","fontSize":"medium"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_warehouse_saved_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_warehouse_saved_query_example_call_tool.js deleted file mode 100644 index c16cc5d39..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_warehouse_saved_query_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateWarehouseSavedQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"query\":\"SELECT * FROM warehouse\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_warehouse_saved_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_warehouse_saved_query_example_call_tool.py deleted file mode 100644 index 3f19fe1bf..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_warehouse_saved_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateWarehouseSavedQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'project_id': '12345', 'request_body': '{"query":"SELECT * FROM warehouse"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_warehouse_table_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_warehouse_table_example_call_tool.js deleted file mode 100644 index a8ebc5ed4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_warehouse_table_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateWarehouseTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "12345", - "request_body": "{\"table_name\":\"inventory\",\"columns\":[{\"name\":\"item_id\",\"type\":\"integer\"},{\"name\":\"item_name\",\"type\":\"string\"},{\"name\":\"quantity\",\"type\":\"integer\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_warehouse_table_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_warehouse_table_example_call_tool.py deleted file mode 100644 index 772f54f44..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_warehouse_table_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateWarehouseTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': '12345', - 'request_body': '{"table_name":"inventory","columns":[{"name":"item_id","type":"integer"},{"name":"item_name","type":"string"},{"name":"quantity","type":"integer"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_web_experiment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/create_web_experiment_example_call_tool.js deleted file mode 100644 index 63de9f072..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_web_experiment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.CreateWebExperiment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "experiment_id": 12345, - "experiment_name": "New Feature Test", - "feature_flag_key": "new_feature_flag", - "project_id": "proj_67890", - "web_experiment_variants": "{\"variantA\": {\"rollout\": 50}, \"variantB\": {\"rollout\": 50}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/create_web_experiment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/create_web_experiment_example_call_tool.py deleted file mode 100644 index e0d4ffe2f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/create_web_experiment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.CreateWebExperiment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'experiment_id': 12345, - 'experiment_name': 'New Feature Test', - 'feature_flag_key': 'new_feature_flag', - 'project_id': 'proj_67890', - 'web_experiment_variants': '{"variantA": {"rollout": 50}, "variantB": {"rollout": 50}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_annotation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_annotation_example_call_tool.js deleted file mode 100644 index 0ef06b723..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_annotation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteAnnotation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "annotation_id": 12345, - "project_id_for_annotation": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_annotation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_annotation_example_call_tool.py deleted file mode 100644 index 97a5729a2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_annotation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteAnnotation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'annotation_id': 12345, 'project_id_for_annotation': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_batch_export_example_call_tool.js deleted file mode 100644 index 79086c7dc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_batch_export_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_batch_export_example_call_tool.py deleted file mode 100644 index 08048a186..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_batch_export_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_collaborator_from_dashboard_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_collaborator_from_dashboard_example_call_tool.js deleted file mode 100644 index 7c7eabd11..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_collaborator_from_dashboard_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteCollaboratorFromDashboard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_id": 123, - "project_id": "proj_456", - "user_uuid": "user-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_collaborator_from_dashboard_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_collaborator_from_dashboard_example_call_tool.py deleted file mode 100644 index 2628ab12c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_collaborator_from_dashboard_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteCollaboratorFromDashboard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_id': 123, 'project_id': 'proj_456', 'user_uuid': 'user-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_example_call_tool.js deleted file mode 100644 index 30f43a563..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteDashboard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_id": 123, - "project_id": "proj_456", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_example_call_tool.py deleted file mode 100644 index 6154e3028..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteDashboard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_id': 123, 'project_id': 'proj_456', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_sharing_password_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_sharing_password_example_call_tool.js deleted file mode 100644 index 8a152ee7d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_sharing_password_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteDashboardSharingPassword"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_identifier": 123, - "password_identifier": "pass_456", - "project_identifier": "proj_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_sharing_password_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_sharing_password_example_call_tool.py deleted file mode 100644 index 090bd0822..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_sharing_password_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteDashboardSharingPassword" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_identifier': 123, 'password_identifier': 'pass_456', 'project_identifier': 'proj_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_template_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_template_example_call_tool.js deleted file mode 100644 index 20130eb11..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_template_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteDashboardTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_template_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-abc-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_template_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_template_example_call_tool.py deleted file mode 100644 index ef664226e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_dashboard_template_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteDashboardTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_template_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project-abc-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_data_color_theme_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_data_color_theme_example_call_tool.js deleted file mode 100644 index 16ca91ca8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_data_color_theme_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteDataColorTheme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "data_color_theme_id": 123, - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_data_color_theme_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_data_color_theme_example_call_tool.py deleted file mode 100644 index 3d7de555b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_data_color_theme_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteDataColorTheme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'data_color_theme_id': 123, 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_dataset_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_dataset_by_id_example_call_tool.js deleted file mode 100644 index c50187888..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_dataset_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteDatasetById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dataset_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_dataset_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_dataset_by_id_example_call_tool.py deleted file mode 100644 index a6d87bd3e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_dataset_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteDatasetById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dataset_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'project-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_dataset_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_dataset_example_call_tool.js deleted file mode 100644 index 35ebfbe11..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_dataset_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteDataset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dataset_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_dataset_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_dataset_example_call_tool.py deleted file mode 100644 index 04c5cf6d8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_dataset_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteDataset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dataset_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'project-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_default_evaluation_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_default_evaluation_tags_example_call_tool.js deleted file mode 100644 index 836a7c523..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_default_evaluation_tags_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteDefaultEvaluationTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_identifier": 123, - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_default_evaluation_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_default_evaluation_tags_example_call_tool.py deleted file mode 100644 index ccc1fd063..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_default_evaluation_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteDefaultEvaluationTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_identifier': 123, 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_domain_example_call_tool.js deleted file mode 100644 index 22641f60e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_domain_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_uuid": "123e4567-e89b-12d3-a456-426614174000", - "organization_identifier": "org-987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_domain_example_call_tool.py deleted file mode 100644 index f1d99ce2b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_domain_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_uuid': '123e4567-e89b-12d3-a456-426614174000', 'organization_identifier': 'org-987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_env_secret_token_backup_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_env_secret_token_backup_example_call_tool.js deleted file mode 100644 index 1eeef91bd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_env_secret_token_backup_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteEnvSecretTokenBackup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "environment_id": 123, - "project_identifier": "proj-456", - "request_body": "{\"token\":\"abc123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_env_secret_token_backup_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_env_secret_token_backup_example_call_tool.py deleted file mode 100644 index 0a42aa0f6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_env_secret_token_backup_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteEnvSecretTokenBackup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'environment_id': 123, - 'project_identifier': 'proj-456', - 'request_body': '{"token":"abc123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_color_theme_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_color_theme_example_call_tool.js deleted file mode 100644 index 0fe2e9695..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_color_theme_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteEnvironmentColorTheme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "data_color_theme_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_color_theme_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_color_theme_example_call_tool.py deleted file mode 100644 index 92983ca73..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_color_theme_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteEnvironmentColorTheme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'data_color_theme_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_dataset_item_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_dataset_item_example_call_tool.js deleted file mode 100644 index 131fd72ef..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_dataset_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteEnvironmentDatasetItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dataset_item_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_dataset_item_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_dataset_item_example_call_tool.py deleted file mode 100644 index 02e8fd773..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_dataset_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteEnvironmentDatasetItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dataset_item_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_example_call_tool.js deleted file mode 100644 index 4ba2784a3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_id": 123, - "project_identifier": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_example_call_tool.py deleted file mode 100644 index 626a95fa4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_id': 123, 'project_identifier': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_group_property_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_group_property_example_call_tool.js deleted file mode 100644 index e33add25d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_group_property_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteEnvironmentGroupProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "creation_date": "2023-10-01T12:00:00Z", - "environment_group_type_index": 1, - "group_key": "prod-environment", - "group_key_for_deletion": "property_to_delete", - "group_type_index": 2, - "project_id": "project-12345", - "group_properties_to_delete": "property1,property2" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_group_property_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_group_property_example_call_tool.py deleted file mode 100644 index 7f3921272..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_group_property_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteEnvironmentGroupProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'creation_date': '2023-10-01T12:00:00Z', - 'environment_group_type_index': 1, - 'group_key': 'prod-environment', - 'group_key_for_deletion': 'property_to_delete', - 'group_type_index': 2, - 'project_id': 'project-12345', - 'group_properties_to_delete': 'property1,property2' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_insight_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_insight_example_call_tool.js deleted file mode 100644 index aebdda708..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_insight_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteEnvironmentInsight"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "insight_id": 12345, - "project_identification": "proj_67890", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_insight_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_insight_example_call_tool.py deleted file mode 100644 index 3f9827ea4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_insight_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteEnvironmentInsight" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'insight_id': 12345, 'project_identification': 'proj_67890', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_integration_example_call_tool.js deleted file mode 100644 index ac68ca8b4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_integration_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteEnvironmentIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_identifier": "proj-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_integration_example_call_tool.py deleted file mode 100644 index dde055187..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_integration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteEnvironmentIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_identifier': 'proj-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_query_example_call_tool.js deleted file mode 100644 index de2e49f27..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_query_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteEnvironmentQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_access": "proj_12345", - "query_id": "query_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_query_example_call_tool.py deleted file mode 100644 index 469cffdd6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteEnvironmentQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_access': 'proj_12345', 'query_id': 'query_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_subscription_example_call_tool.js deleted file mode 100644 index 78820bbea..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_subscription_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteEnvironmentSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "subscription_id": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_environment_subscription_example_call_tool.py deleted file mode 100644 index 3882551cc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_environment_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteEnvironmentSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'subscription_id': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_error_fingerprint_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_error_fingerprint_example_call_tool.js deleted file mode 100644 index 8b09a4ec7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_error_fingerprint_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteErrorFingerprint"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "error_fingerprint_uuid": "123e4567-e89b-12d3-a456-426614174000", - "posthog_project_id": "project_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_error_fingerprint_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_error_fingerprint_example_call_tool.py deleted file mode 100644 index 63654001e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_error_fingerprint_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteErrorFingerprint" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'error_fingerprint_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'posthog_project_id': 'project_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_error_tracking_release_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_error_tracking_release_example_call_tool.js deleted file mode 100644 index 6e1545838..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_error_tracking_release_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteErrorTrackingRelease"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "error_tracking_release_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_error_tracking_release_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_error_tracking_release_example_call_tool.py deleted file mode 100644 index 925942c4e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_error_tracking_release_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteErrorTrackingRelease" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'error_tracking_release_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_error_tracking_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_error_tracking_rule_example_call_tool.js deleted file mode 100644 index c2955071a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_error_tracking_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteErrorTrackingRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "rule_id": "abcde-12345-fghij-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_error_tracking_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_error_tracking_rule_example_call_tool.py deleted file mode 100644 index f11242120..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_error_tracking_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteErrorTrackingRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'rule_id': 'abcde-12345-fghij-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_evaluation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_evaluation_example_call_tool.js deleted file mode 100644 index 6530067ab..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_evaluation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteEvaluation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "evaluation_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_evaluation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_evaluation_example_call_tool.py deleted file mode 100644 index fb6da6917..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_evaluation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteEvaluation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'evaluation_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'project-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_event_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_event_definition_example_call_tool.js deleted file mode 100644 index 250ababbd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_event_definition_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteEventDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_definition_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_event_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_event_definition_example_call_tool.py deleted file mode 100644 index 047e8b886..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_event_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteEventDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_definition_id': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'project-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_experiment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_experiment_example_call_tool.js deleted file mode 100644 index 90732e004..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_experiment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteExperiment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "experiment_id": 123, - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_experiment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_experiment_example_call_tool.py deleted file mode 100644 index ff7a0cc55..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_experiment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteExperiment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'experiment_id': 123, 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_experiment_holdout_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_experiment_holdout_example_call_tool.js deleted file mode 100644 index ebe9834cb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_experiment_holdout_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteExperimentHoldout"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "experiment_holdout_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_experiment_holdout_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_experiment_holdout_example_call_tool.py deleted file mode 100644 index 876d4ff36..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_experiment_holdout_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteExperimentHoldout" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'experiment_holdout_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_file_system_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_file_system_example_call_tool.js deleted file mode 100644 index 055708a95..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_file_system_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteFileSystem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_system_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_file_system_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_file_system_example_call_tool.py deleted file mode 100644 index 06f4e1e6d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_file_system_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteFileSystem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_system_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_file_system_shortcut_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_file_system_shortcut_example_call_tool.js deleted file mode 100644 index 7451cc2b6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_file_system_shortcut_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteFileSystemShortcut"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_system_shortcut_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_file_system_shortcut_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_file_system_shortcut_example_call_tool.py deleted file mode 100644 index 14c423712..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_file_system_shortcut_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteFileSystemShortcut" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_system_shortcut_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_filesystem_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_filesystem_environment_example_call_tool.js deleted file mode 100644 index abda24f82..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_filesystem_environment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteFilesystemEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filesystem_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_filesystem_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_filesystem_environment_example_call_tool.py deleted file mode 100644 index a4d96e0a4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_filesystem_environment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteFilesystemEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filesystem_id': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_group_property_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_group_property_example_call_tool.js deleted file mode 100644 index 85e124af5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_group_property_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteGroupProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_identifier_key": "group_123", - "group_index_type": 1, - "group_key_for_deletion": "property_key_456", - "group_type_index": 0, - "project_id": "project_789", - "property_creation_date": "2023-10-01T12:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_group_property_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_group_property_example_call_tool.py deleted file mode 100644 index 87bc3ed92..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_group_property_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteGroupProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_identifier_key': 'group_123', - 'group_index_type': 1, - 'group_key_for_deletion': 'property_key_456', - 'group_type_index': 0, - 'project_id': 'project_789', - 'property_creation_date': '2023-10-01T12:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_group_type_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_group_type_example_call_tool.js deleted file mode 100644 index 4758b6a0a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_group_type_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteGroupType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_type_index": 2, - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_group_type_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_group_type_example_call_tool.py deleted file mode 100644 index 1cdc0a526..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_group_type_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteGroupType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_type_index': 2, 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_group_type_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_group_type_metric_example_call_tool.js deleted file mode 100644 index 697ae1cbe..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_group_type_metric_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteGroupTypeMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_type_index": 1, - "metric_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_group_type_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_group_type_metric_example_call_tool.py deleted file mode 100644 index d5dbfd2c7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_group_type_metric_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteGroupTypeMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_type_index': 1, - 'metric_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_hog_function_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_hog_function_example_call_tool.js deleted file mode 100644 index b746d1aab..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_hog_function_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteHogFunction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hog_function_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-abc-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_hog_function_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_hog_function_example_call_tool.py deleted file mode 100644 index c267a26cd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_hog_function_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteHogFunction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hog_function_id': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'project-abc-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_insight_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_insight_example_call_tool.js deleted file mode 100644 index ac01c4979..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_insight_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteInsight"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "insight_id": 12345, - "project_identifier": "proj_67890", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_insight_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_insight_example_call_tool.py deleted file mode 100644 index a065d263f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_insight_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteInsight" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'insight_id': 12345, 'project_identifier': 'proj_67890', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_insight_sharing_password_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_insight_sharing_password_example_call_tool.js deleted file mode 100644 index ea54a13ba..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_insight_sharing_password_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteInsightSharingPassword"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "insight_identifier": 12345, - "password_identifier": "abc123", - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_insight_sharing_password_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_insight_sharing_password_example_call_tool.py deleted file mode 100644 index ec477a3c0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_insight_sharing_password_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteInsightSharingPassword" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'insight_identifier': 12345, 'password_identifier': 'abc123', 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_integration_example_call_tool.js deleted file mode 100644 index 1bda5dc39..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_integration_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 123, - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_integration_example_call_tool.py deleted file mode 100644 index 3a026f0df..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_integration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 123, 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_notebook_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_notebook_example_call_tool.js deleted file mode 100644 index 3acde7526..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_notebook_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteNotebook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notebook_short_id": "nb123", - "project_id": "proj456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_notebook_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_notebook_example_call_tool.py deleted file mode 100644 index 30f2a0df0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_notebook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteNotebook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notebook_short_id': 'nb123', 'project_id': 'proj456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_organization_example_call_tool.js deleted file mode 100644 index 04ba3b753..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_organization_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_organization_example_call_tool.py deleted file mode 100644 index 8b459a908..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_organization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_password_from_sharing_config_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_password_from_sharing_config_example_call_tool.js deleted file mode 100644 index 07b6a3336..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_password_from_sharing_config_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeletePasswordFromSharingConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "insight_identifier": 12345, - "project_identifier": "proj_67890", - "sharing_password_id": "pass_abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_password_from_sharing_config_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_password_from_sharing_config_example_call_tool.py deleted file mode 100644 index 3371a90df..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_password_from_sharing_config_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeletePasswordFromSharingConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'insight_identifier': 12345, - 'project_identifier': 'proj_67890', - 'sharing_password_id': 'pass_abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_persisted_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_persisted_folder_example_call_tool.js deleted file mode 100644 index 5ad5cd8a9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_persisted_folder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeletePersistedFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "persisted_folder_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_persisted_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_persisted_folder_example_call_tool.py deleted file mode 100644 index bc8564824..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_persisted_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeletePersistedFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'persisted_folder_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_person_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_person_example_call_tool.js deleted file mode 100644 index 27619f5bb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_person_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeletePerson"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "person_id": 123, - "project_id": "proj_456", - "delete_events": true, - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_person_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_person_example_call_tool.py deleted file mode 100644 index 7f0a0d0b0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_person_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeletePerson" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'person_id': 123, 'project_id': 'proj_456', 'delete_events': True, 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_person_property_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_person_property_example_call_tool.js deleted file mode 100644 index ee39c4c69..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_person_property_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeletePersonProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "property_key_to_delete": "email", - "person_identifier": 123, - "project_id": "proj_456", - "response_format": "json", - "request_body": "{\"delete\":\"true\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_person_property_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_person_property_example_call_tool.py deleted file mode 100644 index 1de401200..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_person_property_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeletePersonProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'property_key_to_delete': 'email', - 'person_identifier': 123, - 'project_id': 'proj_456', - 'response_format': 'json', - 'request_body': '{"delete":"true"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_person_record_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_person_record_example_call_tool.js deleted file mode 100644 index e38cb599f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_person_record_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeletePersonRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "person_id": 123, - "project_id": "proj_456", - "delete_events_task": true, - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_person_record_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_person_record_example_call_tool.py deleted file mode 100644 index 6e76bf315..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_person_record_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeletePersonRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'person_id': 123, 'project_id': 'proj_456', 'delete_events_task': True, 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_person_recordings_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_person_recordings_example_call_tool.js deleted file mode 100644 index 1965f5387..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_person_recordings_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeletePersonRecordings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "person_id": 123, - "project_identifier": "proj_456", - "response_format": "json", - "request_body": "{\"delete\":\"all\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_person_recordings_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_person_recordings_example_call_tool.py deleted file mode 100644 index 670ed699c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_person_recordings_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeletePersonRecordings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'person_id': 123, - 'project_identifier': 'proj_456', - 'response_format': 'json', - 'request_body': '{"delete":"all"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_project_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_project_example_call_tool.js deleted file mode 100644 index 178f4bbe2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "project_id": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_project_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_project_example_call_tool.py deleted file mode 100644 index 742a692cc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'project_id': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_project_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_project_query_example_call_tool.js deleted file mode 100644 index 47a438d85..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_project_query_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteProjectQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "query_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_project_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_project_query_example_call_tool.py deleted file mode 100644 index 209b66724..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_project_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteProjectQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'query_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_project_task_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_project_task_example_call_tool.js deleted file mode 100644 index bf4c13556..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_project_task_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteProjectTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "task_uuid": "task-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_project_task_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_project_task_example_call_tool.py deleted file mode 100644 index bf90ee871..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_project_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteProjectTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'task_uuid': 'task-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_property_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_property_definition_example_call_tool.js deleted file mode 100644 index 4d7e17b04..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_property_definition_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeletePropertyDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "property_definition_id": "a1b2c3d4-e5f6-7g8h-9i0j-k1l2m3n4o5p6" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_property_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_property_definition_example_call_tool.py deleted file mode 100644 index c7941058c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_property_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeletePropertyDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'property_definition_id': 'a1b2c3d4-e5f6-7g8h-9i0j-k1l2m3n4o5p6' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_proxy_record_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_proxy_record_example_call_tool.js deleted file mode 100644 index 25241ff32..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_proxy_record_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteProxyRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org-12345", - "proxy_record_id": "proxy-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_proxy_record_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_proxy_record_example_call_tool.py deleted file mode 100644 index def8604d4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_proxy_record_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteProxyRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org-12345', 'proxy_record_id': 'proxy-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_role_in_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_role_in_organization_example_call_tool.js deleted file mode 100644 index 7f178f900..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_role_in_organization_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteRoleInOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org-12345", - "role_id": "role-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_role_in_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_role_in_organization_example_call_tool.py deleted file mode 100644 index 23cc0986b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_role_in_organization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteRoleInOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org-12345', 'role_id': 'role-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_saved_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_saved_metric_example_call_tool.js deleted file mode 100644 index 5bd754804..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_saved_metric_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteSavedMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "experiment_metric_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_saved_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_saved_metric_example_call_tool.py deleted file mode 100644 index 8605f04e8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_saved_metric_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteSavedMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'experiment_metric_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_saved_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_saved_query_example_call_tool.js deleted file mode 100644 index 25ab72ec8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_saved_query_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteSavedQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "saved_query_uuid": "e7b0c3f2-4a1b-4c2b-9c3e-1f2a3b4c5d6e" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_saved_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_saved_query_example_call_tool.py deleted file mode 100644 index cb4626691..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_saved_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteSavedQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'saved_query_uuid': 'e7b0c3f2-4a1b-4c2b-9c3e-1f2a3b4c5d6e' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_secret_token_backup_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_secret_token_backup_example_call_tool.js deleted file mode 100644 index 412b376d3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_secret_token_backup_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteSecretTokenBackup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": 123, - "organization_id": "org_456", - "request_body": "{\"backup_id\":\"backup_789\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_secret_token_backup_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_secret_token_backup_example_call_tool.py deleted file mode 100644 index ffb8d37ad..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_secret_token_backup_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteSecretTokenBackup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': 123, - 'organization_id': 'org_456', - 'request_body': '{"backup_id":"backup_789"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording2_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording2_example_call_tool.js deleted file mode 100644 index 9bf16913c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording2_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteSessionRecording2"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "session_recording_id": "abcde12345", - "session_recording_short_id": "short123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording2_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording2_example_call_tool.py deleted file mode 100644 index 89e46a70c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording2_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteSessionRecording2" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'session_recording_id': 'abcde12345', - 'session_recording_short_id': 'short123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording_example_call_tool.js deleted file mode 100644 index 177bf820d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteSessionRecording"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "session_recording_identifier": "abcde-12345-fghij-67890", - "session_recording_short_id": "short-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording_example_call_tool.py deleted file mode 100644 index b58ccf16b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteSessionRecording" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'session_recording_identifier': 'abcde-12345-fghij-67890', - 'session_recording_short_id': 'short-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording_playlist_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording_playlist_example_call_tool.js deleted file mode 100644 index fae56378a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording_playlist_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteSessionRecordingPlaylist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "session_recording_playlist_short_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording_playlist_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording_playlist_example_call_tool.py deleted file mode 100644 index 006eecd95..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_session_recording_playlist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteSessionRecordingPlaylist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'session_recording_playlist_short_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_sharing_password_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_sharing_password_example_call_tool.js deleted file mode 100644 index dadc3dcf6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_sharing_password_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteSharingPassword"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "password_identifier": "pwd123", - "recording_id": "rec456", - "target_project_id": "proj789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_sharing_password_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_sharing_password_example_call_tool.py deleted file mode 100644 index c9eb8dc82..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_sharing_password_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteSharingPassword" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'password_identifier': 'pwd123', 'recording_id': 'rec456', 'target_project_id': 'proj789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_survey_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_survey_example_call_tool.js deleted file mode 100644 index af7860b73..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_survey_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteSurvey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "survey_uuid": "survey-67890-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_survey_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_survey_example_call_tool.py deleted file mode 100644 index a5d3033f2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_survey_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteSurvey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'survey_uuid': 'survey-67890-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_symbol_set_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_symbol_set_example_call_tool.js deleted file mode 100644 index 6a053fcfd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_symbol_set_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteSymbolSet"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "symbol_set_id": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_symbol_set_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_symbol_set_example_call_tool.py deleted file mode 100644 index 350c1518a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_symbol_set_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteSymbolSet" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', 'symbol_set_id': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_user_account_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_user_account_example_call_tool.js deleted file mode 100644 index 64c387845..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_user_account_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteUserAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_user_account_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_user_account_example_call_tool.py deleted file mode 100644 index 0f6f110a5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_user_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteUserAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_user_interview_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_user_interview_example_call_tool.js deleted file mode 100644 index 175946a85..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_user_interview_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteUserInterview"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "user_interview_id": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_user_interview_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_user_interview_example_call_tool.py deleted file mode 100644 index 87f5d2ed2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_user_interview_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteUserInterview" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'user_interview_id': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_warehouse_saved_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_warehouse_saved_query_example_call_tool.js deleted file mode 100644 index e8480bc4c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_warehouse_saved_query_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteWarehouseSavedQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_to_access": "proj_12345", - "saved_query_uuid": "uuid_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_warehouse_saved_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_warehouse_saved_query_example_call_tool.py deleted file mode 100644 index 0fafb679d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_warehouse_saved_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteWarehouseSavedQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_to_access': 'proj_12345', 'saved_query_uuid': 'uuid_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_warehouse_table_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_warehouse_table_example_call_tool.js deleted file mode 100644 index 560658c16..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_warehouse_table_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteWarehouseTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "proj_12345", - "warehouse_table_id": "uuid-67890-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_warehouse_table_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_warehouse_table_example_call_tool.py deleted file mode 100644 index 7ef9224e5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_warehouse_table_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteWarehouseTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 'proj_12345', 'warehouse_table_id': 'uuid-67890-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_web_experiment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/delete_web_experiment_example_call_tool.js deleted file mode 100644 index 1d4aff5b1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_web_experiment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DeleteWebExperiment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj_12345", - "web_experiment_id": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/delete_web_experiment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/delete_web_experiment_example_call_tool.py deleted file mode 100644 index 454c0d169..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/delete_web_experiment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DeleteWebExperiment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj_12345', 'web_experiment_id': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/demo_data_status_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/demo_data_status_example_call_tool.js deleted file mode 100644 index 4f03efc5c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/demo_data_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DemoDataStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_id": 1, - "project_identifier": "proj_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/demo_data_status_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/demo_data_status_example_call_tool.py deleted file mode 100644 index b40e3a924..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/demo_data_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DemoDataStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_id': 1, 'project_identifier': 'proj_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/destroy_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/destroy_batch_export_example_call_tool.js deleted file mode 100644 index 3c3970c1d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/destroy_batch_export_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DestroyBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/destroy_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/destroy_batch_export_example_call_tool.py deleted file mode 100644 index d53785b52..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/destroy_batch_export_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DestroyBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/destroy_session_recording_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/destroy_session_recording_example_call_tool.js deleted file mode 100644 index 0ff587a82..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/destroy_session_recording_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DestroySessionRecording"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "session_recording_id": "abcde12345-fghij67890-klmno12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/destroy_session_recording_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/destroy_session_recording_example_call_tool.py deleted file mode 100644 index da5ff7657..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/destroy_session_recording_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DestroySessionRecording" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'session_recording_id': 'abcde12345-fghij67890-klmno12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/disable_user2fa_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/disable_user2fa_example_call_tool.js deleted file mode 100644 index c519b6527..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/disable_user2fa_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DisableUser2fa"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_unique_identifier": "user123", - "request_body": "{\"disable_2fa\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/disable_user2fa_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/disable_user2fa_example_call_tool.py deleted file mode 100644 index 95ab5f84c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/disable_user2fa_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DisableUser2fa" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'user_unique_identifier': 'user123', 'request_body': '{"disable_2fa":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/duplicate_experiment_posthog_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/duplicate_experiment_posthog_example_call_tool.js deleted file mode 100644 index 898ba378e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/duplicate_experiment_posthog_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DuplicateExperimentPosthog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "experiment_id": 123, - "project_identifier": "project_456", - "request_body": "{\"name\":\"Duplicate Experiment\",\"description\":\"This is a copy of the original experiment.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/duplicate_experiment_posthog_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/duplicate_experiment_posthog_example_call_tool.py deleted file mode 100644 index 9a613de3d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/duplicate_experiment_posthog_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DuplicateExperimentPosthog" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'experiment_id': 123, - 'project_identifier': 'project_456', - 'request_body': '{"name":"Duplicate Experiment","description":"This is a copy of the original ' - 'experiment."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/duplicate_survey_to_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/duplicate_survey_to_projects_example_call_tool.js deleted file mode 100644 index 8170ac056..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/duplicate_survey_to_projects_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.DuplicateSurveyToProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "survey_uuid": "123e4567-e89b-12d3-a456-426614174000", - "target_project_id": "proj_001", - "request_body": "{\"title\":\"Sample Survey\",\"questions\":[{\"question\":\"What is your favorite color?\",\"type\":\"multiple_choice\",\"options\":[\"Red\",\"Blue\",\"Green\"]}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/duplicate_survey_to_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/duplicate_survey_to_projects_example_call_tool.py deleted file mode 100644 index ec1f1d655..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/duplicate_survey_to_projects_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.DuplicateSurveyToProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'survey_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'target_project_id': 'proj_001', - 'request_body': '{"title":"Sample Survey","questions":[{"question":"What is your favorite ' - 'color?","type":"multiple_choice","options":["Red","Blue","Green"]}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/edit_batch_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/edit_batch_exports_example_call_tool.js deleted file mode 100644 index 75ad012a3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/edit_batch_exports_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.EditBatchExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj_001", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/edit_batch_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/edit_batch_exports_example_call_tool.py deleted file mode 100644 index b7de512b9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/edit_batch_exports_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.EditBatchExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj_001', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/edit_project_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/edit_project_environment_example_call_tool.js deleted file mode 100644 index 16212f846..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/edit_project_environment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.EditProjectEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "environment_identifier": 123, - "project_identifier": "proj-456", - "request_body": "{\"setting\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/edit_project_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/edit_project_environment_example_call_tool.py deleted file mode 100644 index b27e1f8c6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/edit_project_environment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.EditProjectEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'environment_identifier': 123, - 'project_identifier': 'proj-456', - 'request_body': '{"setting":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/edit_session_playlist_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/edit_session_playlist_example_call_tool.js deleted file mode 100644 index 9346aa2a0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/edit_session_playlist_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.EditSessionPlaylist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "proj_123", - "playlist_short_id": "playlist_456", - "request_body": "{\"name\":\"Updated Playlist Name\",\"description\":\"New description for the playlist.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/edit_session_playlist_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/edit_session_playlist_example_call_tool.py deleted file mode 100644 index dcca09714..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/edit_session_playlist_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.EditSessionPlaylist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': 'proj_123', - 'playlist_short_id': 'playlist_456', - 'request_body': '{"name":"Updated Playlist Name","description":"New description for the ' - 'playlist."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/edit_session_recording_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/edit_session_recording_example_call_tool.js deleted file mode 100644 index 249bf6077..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/edit_session_recording_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.EditSessionRecording"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "session_recording_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj_001", - "request_body": "{\"status\":\"completed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/edit_session_recording_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/edit_session_recording_example_call_tool.py deleted file mode 100644 index 154bd2de6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/edit_session_recording_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.EditSessionRecording" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'session_recording_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj_001', - 'request_body': '{"status":"completed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/edit_warehouse_saved_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/edit_warehouse_saved_query_example_call_tool.js deleted file mode 100644 index 38c810276..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/edit_warehouse_saved_query_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.EditWarehouseSavedQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "saved_query_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj_001", - "request_body": "{\"query\":\"SELECT * FROM users\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/edit_warehouse_saved_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/edit_warehouse_saved_query_example_call_tool.py deleted file mode 100644 index 61c3f8f0d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/edit_warehouse_saved_query_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.EditWarehouseSavedQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'saved_query_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj_001', - 'request_body': '{"query":"SELECT * FROM users"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/edit_warehouse_table_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/edit_warehouse_table_example_call_tool.js deleted file mode 100644 index 80ded3301..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/edit_warehouse_table_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.EditWarehouseTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "warehouse_table_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"column\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/edit_warehouse_table_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/edit_warehouse_table_example_call_tool.py deleted file mode 100644 index 5ee150720..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/edit_warehouse_table_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.EditWarehouseTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'warehouse_table_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"column":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/environment_exports_overview_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/environment_exports_overview_example_call_tool.js deleted file mode 100644 index c3868f8b8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/environment_exports_overview_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.EnvironmentExportsOverview"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "result_start_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/environment_exports_overview_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/environment_exports_overview_example_call_tool.py deleted file mode 100644 index 9d1aae730..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/environment_exports_overview_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.EnvironmentExportsOverview" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'result_start_index': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/execute_saved_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/execute_saved_query_example_call_tool.js deleted file mode 100644 index 6ba7a47d5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/execute_saved_query_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ExecuteSavedQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "query_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_1", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/execute_saved_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/execute_saved_query_example_call_tool.py deleted file mode 100644 index 7daa01e91..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/execute_saved_query_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ExecuteSavedQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'query_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_1', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_batch_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_batch_exports_example_call_tool.js deleted file mode 100644 index 6591a39ba..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_batch_exports_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchBatchExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_batch_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_batch_exports_example_call_tool.py deleted file mode 100644 index 75755415c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_batch_exports_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchBatchExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_data_color_themes_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_data_color_themes_example_call_tool.js deleted file mode 100644 index ab9d1d7b3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_data_color_themes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchDataColorThemes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_data_color_themes_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_data_color_themes_example_call_tool.py deleted file mode 100644 index 43ab60155..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_data_color_themes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchDataColorThemes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_endpoint_run_status_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_endpoint_run_status_example_call_tool.js deleted file mode 100644 index c17b12636..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_endpoint_run_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchEndpointRunStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "endpoint_name": "user_login", - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_endpoint_run_status_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_endpoint_run_status_example_call_tool.py deleted file mode 100644 index 512be59a3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_endpoint_run_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchEndpointRunStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'endpoint_name': 'user_login', 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_environment_insights_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_environment_insights_example_call_tool.js deleted file mode 100644 index dba45448c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_environment_insights_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchEnvironmentInsights"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "insight_identifier": 123, - "project_identifier": "proj_456", - "dashboard_id_context": 789, - "insight_refresh_strategy": "async", - "output_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_environment_insights_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_environment_insights_example_call_tool.py deleted file mode 100644 index 8568f17bd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_environment_insights_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchEnvironmentInsights" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'insight_identifier': 123, - 'project_identifier': 'proj_456', - 'dashboard_id_context': 789, - 'insight_refresh_strategy': 'async', - 'output_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_file_count_by_path_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_file_count_by_path_example_call_tool.js deleted file mode 100644 index 057716d50..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_file_count_by_path_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchFileCountByPath"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "12345", - "request_body": "{\"path\":\"/src/files\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_file_count_by_path_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_file_count_by_path_example_call_tool.py deleted file mode 100644 index 637bd83c7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_file_count_by_path_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchFileCountByPath" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'project_identifier': '12345', 'request_body': '{"path":"/src/files"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_folder_file_count_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_folder_file_count_example_call_tool.js deleted file mode 100644 index 86eb90899..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_folder_file_count_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchFolderFileCount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "file_system_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"folder_path\":\"/path/to/folder\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_folder_file_count_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_folder_file_count_example_call_tool.py deleted file mode 100644 index 6092c9a9e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_folder_file_count_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchFolderFileCount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'file_system_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"folder_path":"/path/to/folder"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_github_repos_for_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_github_repos_for_integration_example_call_tool.js deleted file mode 100644 index 9294cbcdc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_github_repos_for_integration_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchGithubReposForIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_identifier": "project-abc-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_github_repos_for_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_github_repos_for_integration_example_call_tool.py deleted file mode 100644 index 418c7f863..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_github_repos_for_integration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchGithubReposForIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_identifier': 'project-abc-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_metrics_history_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_metrics_history_example_call_tool.js deleted file mode 100644 index 6e4877b09..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_metrics_history_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchMetricsHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "plugin_configuration_identifier": "plugin_123", - "project_identifier": "project_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_metrics_history_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_metrics_history_example_call_tool.py deleted file mode 100644 index 8424edaec..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_metrics_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchMetricsHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'plugin_configuration_identifier': 'plugin_123', 'project_identifier': 'project_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_persons_funnel_data_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_persons_funnel_data_example_call_tool.js deleted file mode 100644 index b4dd5ad08..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_persons_funnel_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchPersonsFunnelData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "output_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_persons_funnel_data_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_persons_funnel_data_example_call_tool.py deleted file mode 100644 index f5cc28100..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_persons_funnel_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchPersonsFunnelData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'output_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_recent_execution_times_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_recent_execution_times_example_call_tool.js deleted file mode 100644 index cefe380fa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_recent_execution_times_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchRecentExecutionTimes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "endpoint_names": [ - "/api/users", - "/api/orders", - "/api/products" - ], - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_recent_execution_times_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_recent_execution_times_example_call_tool.py deleted file mode 100644 index 4354064c4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_recent_execution_times_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchRecentExecutionTimes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'endpoint_names': ['/api/users', '/api/orders', '/api/products'], 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_saved_query_ancestors_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_saved_query_ancestors_example_call_tool.js deleted file mode 100644 index 9db528dee..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_saved_query_ancestors_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchSavedQueryAncestors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "saved_query_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"level\": 2}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_saved_query_ancestors_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_saved_query_ancestors_example_call_tool.py deleted file mode 100644 index fe34bec2c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_saved_query_ancestors_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchSavedQueryAncestors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'saved_query_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"level": 2}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_session_recording_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_session_recording_example_call_tool.js deleted file mode 100644 index a8b2c29b7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_session_recording_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchSessionRecording"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "session_recording_id": "abcde12345-6789-0fgh-ijkl-mnopqrstuv" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_session_recording_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_session_recording_example_call_tool.py deleted file mode 100644 index ede43baa4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_session_recording_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchSessionRecording" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'session_recording_id': 'abcde12345-6789-0fgh-ijkl-mnopqrstuv' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_session_recordings_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_session_recordings_example_call_tool.js deleted file mode 100644 index 8c996d7ef..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_session_recordings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchSessionRecordings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_session_recordings_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_session_recordings_example_call_tool.py deleted file mode 100644 index 136d55335..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_session_recordings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchSessionRecordings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_survey_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_survey_activity_example_call_tool.js deleted file mode 100644 index 30d6cb8de..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_survey_activity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchSurveyActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "survey_uuid": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_survey_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_survey_activity_example_call_tool.py deleted file mode 100644 index 3ac103b36..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_survey_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchSurveyActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'survey_uuid': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_web_analytics_breakdown_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/fetch_web_analytics_breakdown_example_call_tool.js deleted file mode 100644 index 9810a2d2d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_web_analytics_breakdown_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FetchWebAnalyticsBreakdown"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "breakdown_property": "Browser", - "end_date": "2023-10-31", - "project_id_for_access": "12345", - "start_date": "2023-10-01", - "apply_url_path_cleaning": true, - "results_limit": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/fetch_web_analytics_breakdown_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/fetch_web_analytics_breakdown_example_call_tool.py deleted file mode 100644 index 20e73ed0d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/fetch_web_analytics_breakdown_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FetchWebAnalyticsBreakdown" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'breakdown_property': 'Browser', - 'end_date': '2023-10-31', - 'project_id_for_access': '12345', - 'start_date': '2023-10-01', - 'apply_url_path_cleaning': True, - 'results_limit': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/file_system_shortcut_create_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/file_system_shortcut_create_example_call_tool.js deleted file mode 100644 index 090953bb0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/file_system_shortcut_create_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FileSystemShortcutCreate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_system_shortcut_path": "/projects/my_project/shortcut", - "project_id": "12345", - "shortcut_creation_timestamp": "2023-10-01T12:00:00Z", - "shortcut_id": "shortcut-001", - "reference_id": "ref-001", - "shortcut_type": "link", - "shortcut_url": "http://example.com/resource" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/file_system_shortcut_create_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/file_system_shortcut_create_example_call_tool.py deleted file mode 100644 index 42f8ac1e2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/file_system_shortcut_create_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FileSystemShortcutCreate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_system_shortcut_path': '/projects/my_project/shortcut', - 'project_id': '12345', - 'shortcut_creation_timestamp': '2023-10-01T12:00:00Z', - 'shortcut_id': 'shortcut-001', - 'reference_id': 'ref-001', - 'shortcut_type': 'link', - 'shortcut_url': 'http://example.com/resource' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/find_environment_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/find_environment_groups_example_call_tool.js deleted file mode 100644 index f4d8b5b3c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/find_environment_groups_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FindEnvironmentGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_group_key": "prod", - "group_type_to_find": 1, - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/find_environment_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/find_environment_groups_example_call_tool.py deleted file mode 100644 index 090b381a5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/find_environment_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FindEnvironmentGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_group_key': 'prod', 'group_type_to_find': 1, 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/funnel_correlation_persons_retrieve_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/funnel_correlation_persons_retrieve_example_call_tool.js deleted file mode 100644 index 48a0c7ba4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/funnel_correlation_persons_retrieve_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.FunnelCorrelationPersonsRetrieve"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/funnel_correlation_persons_retrieve_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/funnel_correlation_persons_retrieve_example_call_tool.py deleted file mode 100644 index 826fa0914..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/funnel_correlation_persons_retrieve_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.FunnelCorrelationPersonsRetrieve" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/generate_backup_codes_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/generate_backup_codes_example_call_tool.js deleted file mode 100644 index 02bb2a99c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/generate_backup_codes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GenerateBackupCodes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_uuid": "123e4567-e89b-12d3-a456-426614174000", - "request_body": "{\"count\": 10}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/generate_backup_codes_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/generate_backup_codes_example_call_tool.py deleted file mode 100644 index 46b500d48..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/generate_backup_codes_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GenerateBackupCodes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'request_body': '{"count": 10}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/generate_individual_session_summary_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/generate_individual_session_summary_example_call_tool.js deleted file mode 100644 index 40dbf67a5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/generate_individual_session_summary_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GenerateIndividualSessionSummary"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "session_ids_to_summarize": [ - "session1", - "session2", - "session3" - ], - "summarization_focus_area": "key insights" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/generate_individual_session_summary_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/generate_individual_session_summary_example_call_tool.py deleted file mode 100644 index b18436c33..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/generate_individual_session_summary_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GenerateIndividualSessionSummary" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'session_ids_to_summarize': ['session1', 'session2', 'session3'], - 'summarization_focus_area': 'key insights' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/generate_recording_password_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/generate_recording_password_example_call_tool.js deleted file mode 100644 index 7874363f6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/generate_recording_password_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GenerateRecordingPassword"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "proj_123", - "recording_id": "rec_456", - "request_body": "{\"password\":\"securePassword123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/generate_recording_password_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/generate_recording_password_example_call_tool.py deleted file mode 100644 index e09968bd7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/generate_recording_password_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GenerateRecordingPassword" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': 'proj_123', - 'recording_id': 'rec_456', - 'request_body': '{"password":"securePassword123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/generate_session_summaries_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/generate_session_summaries_example_call_tool.js deleted file mode 100644 index cd0324f99..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/generate_session_summaries_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GenerateSessionSummaries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "session_id_list": [ - "session1", - "session2", - "session3" - ], - "summarization_focus_area": "user engagement" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/generate_session_summaries_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/generate_session_summaries_example_call_tool.py deleted file mode 100644 index 19596062d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/generate_session_summaries_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GenerateSessionSummaries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'session_id_list': ['session1', 'session2', 'session3'], - 'summarization_focus_area': 'user engagement' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_ancestors_of_saved_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_ancestors_of_saved_query_example_call_tool.js deleted file mode 100644 index bcc70d4b6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_ancestors_of_saved_query_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetAncestorsOfSavedQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "data_warehouse_query_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_ancestors_of_saved_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_ancestors_of_saved_query_example_call_tool.py deleted file mode 100644 index 1226621a5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_ancestors_of_saved_query_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetAncestorsOfSavedQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'data_warehouse_query_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_app_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_app_metrics_example_call_tool.js deleted file mode 100644 index 1b7ebb7a1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_app_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetAppMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "plugin_config_id": 12345, - "project_id_for_app_metrics": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_app_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_app_metrics_example_call_tool.py deleted file mode 100644 index 0e26fc5aa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_app_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetAppMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'plugin_config_id': 12345, 'project_id_for_app_metrics': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_available_dashboards_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_available_dashboards_example_call_tool.js deleted file mode 100644 index b9c71f4cd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_available_dashboards_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetAvailableDashboards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "project_123", - "response_format": "json", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_available_dashboards_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_available_dashboards_example_call_tool.py deleted file mode 100644 index 81e0e7462..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_available_dashboards_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetAvailableDashboards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'project_123', 'response_format': 'json', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_batch_export_backfill_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_batch_export_backfill_example_call_tool.js deleted file mode 100644 index 987b48bf4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_batch_export_backfill_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetBatchExportBackfill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_backfill_id": "123e4567-e89b-12d3-a456-426614174000", - "batch_export_identifier": "export_001", - "project_id": "proj_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_batch_export_backfill_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_batch_export_backfill_example_call_tool.py deleted file mode 100644 index 009a1e046..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_batch_export_backfill_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetBatchExportBackfill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_backfill_id': '123e4567-e89b-12d3-a456-426614174000', - 'batch_export_identifier': 'export_001', - 'project_id': 'proj_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_clickup_lists_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_clickup_lists_example_call_tool.js deleted file mode 100644 index 8df19367e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_clickup_lists_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetClickupLists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_identifier": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_clickup_lists_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_clickup_lists_example_call_tool.py deleted file mode 100644 index 086f45d83..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_clickup_lists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetClickupLists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_identifier': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_clickup_spaces_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_clickup_spaces_example_call_tool.js deleted file mode 100644 index b01a7e0ca..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_clickup_spaces_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetClickupSpaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_identifier": 12345, - "project_identifier": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_clickup_spaces_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_clickup_spaces_example_call_tool.py deleted file mode 100644 index 2311464f2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_clickup_spaces_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetClickupSpaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_identifier': 12345, 'project_identifier': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_clickup_workspaces_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_clickup_workspaces_example_call_tool.js deleted file mode 100644 index 305086f9b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_clickup_workspaces_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetClickupWorkspaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "clickup_project_id": "12345", - "integration_id": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_clickup_workspaces_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_clickup_workspaces_example_call_tool.py deleted file mode 100644 index 9f82613d2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_clickup_workspaces_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetClickupWorkspaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'clickup_project_id': '12345', 'integration_id': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_cohort_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_cohort_activity_example_call_tool.js deleted file mode 100644 index c8c2f713e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_cohort_activity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetCohortActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cohort_id": 123, - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_cohort_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_cohort_activity_example_call_tool.py deleted file mode 100644 index e2cb96139..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_cohort_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetCohortActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cohort_id': 123, 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_cohort_persons_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_cohort_persons_example_call_tool.js deleted file mode 100644 index 2d4c32561..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_cohort_persons_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetCohortPersons"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cohort_id": 123, - "project_id": "proj_456", - "output_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_cohort_persons_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_cohort_persons_example_call_tool.py deleted file mode 100644 index 6b9045ac1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_cohort_persons_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetCohortPersons" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cohort_id': 123, 'project_id': 'proj_456', 'output_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_current_org_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_current_org_projects_example_call_tool.js deleted file mode 100644 index 412e84ff5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_current_org_projects_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetCurrentOrgProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_current_org_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_current_org_projects_example_call_tool.py deleted file mode 100644 index 0a4af3082..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_current_org_projects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetCurrentOrgProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_dashboard_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_dashboard_details_example_call_tool.js deleted file mode 100644 index a7845e35e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_dashboard_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetDashboardDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_id": 12345, - "project_id": "proj_67890", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_dashboard_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_dashboard_details_example_call_tool.py deleted file mode 100644 index 719327345..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_dashboard_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetDashboardDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_id': 12345, 'project_id': 'proj_67890', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_descendants_saved_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_descendants_saved_query_example_call_tool.js deleted file mode 100644 index 11c9d7d2b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_descendants_saved_query_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetDescendantsSavedQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "saved_query_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"depth\": 2}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_descendants_saved_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_descendants_saved_query_example_call_tool.py deleted file mode 100644 index f0d90bd54..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_descendants_saved_query_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetDescendantsSavedQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'saved_query_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"depth": 2}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_early_access_features_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_early_access_features_example_call_tool.js deleted file mode 100644 index 7a698c740..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_early_access_features_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetEarlyAccessFeatures"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "number_of_results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_early_access_features_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_early_access_features_example_call_tool.py deleted file mode 100644 index 2891045c0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_early_access_features_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetEarlyAccessFeatures" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'number_of_results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_environment_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_environment_activity_example_call_tool.js deleted file mode 100644 index 64af147ad..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_environment_activity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetEnvironmentActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_id": 123, - "project_identifier": "proj-456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_environment_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_environment_activity_example_call_tool.py deleted file mode 100644 index a6fef3444..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_environment_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetEnvironmentActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_id': 123, 'project_identifier': 'proj-456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_environment_dashboard_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_environment_dashboard_example_call_tool.js deleted file mode 100644 index b04847618..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_environment_dashboard_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetEnvironmentDashboard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_id": 123, - "project_id": "proj_456", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_environment_dashboard_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_environment_dashboard_example_call_tool.py deleted file mode 100644 index 243ac4226..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_environment_dashboard_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetEnvironmentDashboard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_id': 123, 'project_id': 'proj_456', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_environment_file_system_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_environment_file_system_details_example_call_tool.js deleted file mode 100644 index f2617d004..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_environment_file_system_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetEnvironmentFileSystemDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_system_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_environment_file_system_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_environment_file_system_details_example_call_tool.py deleted file mode 100644 index 96462e2ed..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_environment_file_system_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetEnvironmentFileSystemDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_system_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_environment_insights_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_environment_insights_example_call_tool.js deleted file mode 100644 index 2ed821807..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_environment_insights_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetEnvironmentInsights"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "created_by_user_id": 678, - "refresh_method": "async", - "response_format": "json", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_environment_insights_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_environment_insights_example_call_tool.py deleted file mode 100644 index 3a8895455..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_environment_insights_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetEnvironmentInsights" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'created_by_user_id': 678, - 'refresh_method': 'async', - 'response_format': 'json', - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_environment_query_results_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_environment_query_results_example_call_tool.js deleted file mode 100644 index f05d99884..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_environment_query_results_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetEnvironmentQueryResults"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "query_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_environment_query_results_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_environment_query_results_example_call_tool.py deleted file mode 100644 index e2e638ae9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_environment_query_results_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetEnvironmentQueryResults" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'query_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_environment_session_values_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_environment_session_values_example_call_tool.js deleted file mode 100644 index 5aac97aee..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_environment_session_values_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetEnvironmentSessionValues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_environment_session_values_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_environment_session_values_example_call_tool.py deleted file mode 100644 index 38b284a89..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_environment_session_values_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetEnvironmentSessionValues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_environments_batch_export_status_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_environments_batch_export_status_example_call_tool.js deleted file mode 100644 index c541ebad7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_environments_batch_export_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetEnvironmentsBatchExportStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_for_export_status": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_environments_batch_export_status_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_environments_batch_export_status_example_call_tool.py deleted file mode 100644 index 9e3caecae..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_environments_batch_export_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetEnvironmentsBatchExportStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_for_export_status': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_error_details_for_app_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_error_details_for_app_metrics_example_call_tool.js deleted file mode 100644 index 86e75d9ac..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_error_details_for_app_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetErrorDetailsForAppMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "plugin_config_id": 12345, - "project_identifier": "proj-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_error_details_for_app_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_error_details_for_app_metrics_example_call_tool.py deleted file mode 100644 index 05b23a822..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_error_details_for_app_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetErrorDetailsForAppMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'plugin_config_id': 12345, 'project_identifier': 'proj-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_error_tracking_fingerprint_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_error_tracking_fingerprint_example_call_tool.js deleted file mode 100644 index 073b6804a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_error_tracking_fingerprint_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetErrorTrackingFingerprint"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "error_tracking_fingerprint_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_error_tracking_fingerprint_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_error_tracking_fingerprint_example_call_tool.py deleted file mode 100644 index 4460662d0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_error_tracking_fingerprint_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetErrorTrackingFingerprint" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'error_tracking_fingerprint_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_experiment_holdout_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_experiment_holdout_example_call_tool.js deleted file mode 100644 index 11cc5c0ec..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_experiment_holdout_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetExperimentHoldout"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "experiment_holdout_id": 123, - "project_identifier": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_experiment_holdout_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_experiment_holdout_example_call_tool.py deleted file mode 100644 index 65bf3d0d7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_experiment_holdout_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetExperimentHoldout" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'experiment_holdout_id': 123, 'project_identifier': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_experiment_holdouts_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_experiment_holdouts_example_call_tool.js deleted file mode 100644 index 6a88fa85b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_experiment_holdouts_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetExperimentHoldouts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "initial_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_experiment_holdouts_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_experiment_holdouts_example_call_tool.py deleted file mode 100644 index 24b2c0731..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_experiment_holdouts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetExperimentHoldouts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'initial_index': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_feature_flag_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_feature_flag_keys_example_call_tool.js deleted file mode 100644 index cc9fe9e84..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_feature_flag_keys_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetFeatureFlagKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"feature_flag_ids\":[\"flag1\",\"flag2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_feature_flag_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_feature_flag_keys_example_call_tool.py deleted file mode 100644 index 079e91208..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_feature_flag_keys_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetFeatureFlagKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'project_id': '12345', 'request_body': '{"feature_flag_ids":["flag1","flag2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_feature_flag_values_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_feature_flag_values_example_call_tool.js deleted file mode 100644 index 2fc23af41..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_feature_flag_values_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetFeatureFlagValues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_feature_flag_values_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_feature_flag_values_example_call_tool.py deleted file mode 100644 index 6d4f610db..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_feature_flag_values_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetFeatureFlagValues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_feature_flags_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_feature_flags_example_call_tool.js deleted file mode 100644 index 5251c1072..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_feature_flags_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetFeatureFlags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_feature_flags_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_feature_flags_example_call_tool.py deleted file mode 100644 index f12c624d1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_feature_flags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetFeatureFlags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_file_count_in_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_file_count_in_folder_example_call_tool.js deleted file mode 100644 index 2dad27c56..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_file_count_in_folder_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetFileCountInFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "file_system_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"folder_path\":\"/src\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_file_count_in_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_file_count_in_folder_example_call_tool.py deleted file mode 100644 index 4b7ff275d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_file_count_in_folder_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetFileCountInFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'file_system_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"folder_path":"/src"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_file_shortcuts_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_file_shortcuts_example_call_tool.js deleted file mode 100644 index 5a964d173..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_file_shortcuts_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetFileShortcuts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "initial_result_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_file_shortcuts_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_file_shortcuts_example_call_tool.py deleted file mode 100644 index 36beb31e2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_file_shortcuts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetFileShortcuts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'initial_result_index': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_file_system_shortcut_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_file_system_shortcut_example_call_tool.js deleted file mode 100644 index 2072c2841..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_file_system_shortcut_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetFileSystemShortcut"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "shortcut_id": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_file_system_shortcut_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_file_system_shortcut_example_call_tool.py deleted file mode 100644 index 21ae8d2a6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_file_system_shortcut_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetFileSystemShortcut" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'shortcut_id': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_github_repos_for_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_github_repos_for_integration_example_call_tool.js deleted file mode 100644 index d677b5430..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_github_repos_for_integration_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetGithubReposForIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_github_repos_for_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_github_repos_for_integration_example_call_tool.py deleted file mode 100644 index 68634e197..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_github_repos_for_integration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetGithubReposForIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_google_accessible_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_google_accessible_accounts_example_call_tool.js deleted file mode 100644 index d39999bab..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_google_accessible_accounts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetGoogleAccessibleAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_google_accessible_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_google_accessible_accounts_example_call_tool.py deleted file mode 100644 index 18386d3d7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_google_accessible_accounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetGoogleAccessibleAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_google_conversion_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_google_conversion_actions_example_call_tool.js deleted file mode 100644 index 9df9330d8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_google_conversion_actions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetGoogleConversionActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_identifier": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_google_conversion_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_google_conversion_actions_example_call_tool.py deleted file mode 100644 index 68eecee7b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_google_conversion_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetGoogleConversionActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_identifier': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_group_type_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_group_type_metrics_example_call_tool.js deleted file mode 100644 index 5ff29f35f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_group_type_metrics_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetGroupTypeMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_type_index": 1, - "project_identifier": "project-12345", - "results_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_group_type_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_group_type_metrics_example_call_tool.py deleted file mode 100644 index 6c3642c9c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_group_type_metrics_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetGroupTypeMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_type_index': 1, - 'project_identifier': 'project-12345', - 'results_offset': 0, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_hog_function_icon_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_hog_function_icon_example_call_tool.js deleted file mode 100644 index 9e6c47182..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_hog_function_icon_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetHogFunctionIcon"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_hog_function_icon_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_hog_function_icon_example_call_tool.py deleted file mode 100644 index b1f1c9d41..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_hog_function_icon_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetHogFunctionIcon" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_hog_function_metrics_totals_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_hog_function_metrics_totals_example_call_tool.js deleted file mode 100644 index 73e53b55b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_hog_function_metrics_totals_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetHogFunctionMetricsTotals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hog_function_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-abc-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_hog_function_metrics_totals_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_hog_function_metrics_totals_example_call_tool.py deleted file mode 100644 index 3cdfb5a51..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_hog_function_metrics_totals_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetHogFunctionMetricsTotals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hog_function_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project-abc-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_insights_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_insights_activity_example_call_tool.js deleted file mode 100644 index 3cb2df228..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_insights_activity_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetInsightsActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "insight_id": 123, - "project_id_for_access": "proj_456", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_insights_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_insights_activity_example_call_tool.py deleted file mode 100644 index 94bb352d9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_insights_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetInsightsActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'insight_id': 123, 'project_id_for_access': 'proj_456', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_integration_authorization_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_integration_authorization_example_call_tool.js deleted file mode 100644 index 2e203bd9c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_integration_authorization_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetIntegrationAuthorization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_integration_authorization_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_integration_authorization_example_call_tool.py deleted file mode 100644 index 68dfddd49..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_integration_authorization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetIntegrationAuthorization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_integration_channels_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_integration_channels_example_call_tool.js deleted file mode 100644 index 57e69978a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_integration_channels_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetIntegrationChannels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_identifier": "project_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_integration_channels_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_integration_channels_example_call_tool.py deleted file mode 100644 index b08748caa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_integration_channels_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetIntegrationChannels" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_identifier': 'project_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_integration_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_integration_details_example_call_tool.js deleted file mode 100644 index 04a2d85e0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_integration_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetIntegrationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_integration_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_integration_details_example_call_tool.py deleted file mode 100644 index b952cc0f3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_integration_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetIntegrationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_last_execution_times_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_last_execution_times_example_call_tool.js deleted file mode 100644 index 2ea3c0e7e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_last_execution_times_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetLastExecutionTimes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "endpoint_names": [ - "/api/users", - "/api/orders", - "/api/products" - ], - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_last_execution_times_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_last_execution_times_example_call_tool.py deleted file mode 100644 index f17de2092..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_last_execution_times_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetLastExecutionTimes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'endpoint_names': ['/api/users', '/api/orders', '/api/products'], 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_linkedin_ads_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_linkedin_ads_accounts_example_call_tool.js deleted file mode 100644 index f6de0a830..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_linkedin_ads_accounts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetLinkedinAdsAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_linkedin_ads_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_linkedin_ads_accounts_example_call_tool.py deleted file mode 100644 index ddffd94fa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_linkedin_ads_accounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetLinkedinAdsAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_linkedin_ads_conversion_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_linkedin_ads_conversion_rules_example_call_tool.js deleted file mode 100644 index 6dd33c5d9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_linkedin_ads_conversion_rules_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetLinkedinAdsConversionRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_linkedin_ads_conversion_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_linkedin_ads_conversion_rules_example_call_tool.py deleted file mode 100644 index e3e771c29..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_linkedin_ads_conversion_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetLinkedinAdsConversionRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_notebook_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_notebook_activity_example_call_tool.js deleted file mode 100644 index 175f9f2ae..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_notebook_activity_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetNotebookActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_notebook_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_notebook_activity_example_call_tool.py deleted file mode 100644 index 207a12ada..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_notebook_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetNotebookActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_organization_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_organization_details_example_call_tool.js deleted file mode 100644 index b804b231e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_organization_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetOrganizationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_organization_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_organization_details_example_call_tool.py deleted file mode 100644 index fdffe7c44..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_organization_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetOrganizationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_organization_project_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_organization_project_details_example_call_tool.js deleted file mode 100644 index 8e5a65d9b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_organization_project_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetOrganizationProjectDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org-12345", - "project_id": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_organization_project_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_organization_project_details_example_call_tool.py deleted file mode 100644 index 0910b7cdc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_organization_project_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetOrganizationProjectDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org-12345', 'project_id': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_persisted_folders_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_persisted_folders_example_call_tool.js deleted file mode 100644 index b642c97db..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_persisted_folders_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetPersistedFolders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_persisted_folders_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_persisted_folders_example_call_tool.py deleted file mode 100644 index 528d85acf..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_persisted_folders_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetPersistedFolders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_person_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_person_activity_example_call_tool.js deleted file mode 100644 index ab9e0357b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_person_activity_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetPersonActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "person_identifier": 12345, - "project_id": "proj_67890", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_person_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_person_activity_example_call_tool.py deleted file mode 100644 index d3306fc5c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_person_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetPersonActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'person_identifier': 12345, 'project_id': 'proj_67890', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_person_info_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_person_info_example_call_tool.js deleted file mode 100644 index 8d1d99b27..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_person_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetPersonInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_person_info_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_person_info_example_call_tool.py deleted file mode 100644 index 27dc5b584..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_person_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetPersonInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_person_trends_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_person_trends_example_call_tool.js deleted file mode 100644 index 44d59354f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_person_trends_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetPersonTrends"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj123", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_person_trends_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_person_trends_example_call_tool.py deleted file mode 100644 index a90d41b2e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_person_trends_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetPersonTrends" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj123', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_persons_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_persons_activity_example_call_tool.js deleted file mode 100644 index f4a81f7da..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_persons_activity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetPersonsActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_persons_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_persons_activity_example_call_tool.py deleted file mode 100644 index 713f1cc3a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_persons_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetPersonsActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_persons_cohorts_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_persons_cohorts_example_call_tool.js deleted file mode 100644 index 4968f2456..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_persons_cohorts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetPersonsCohorts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_persons_cohorts_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_persons_cohorts_example_call_tool.py deleted file mode 100644 index 28900fe60..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_persons_cohorts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetPersonsCohorts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_persons_lifecycle_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_persons_lifecycle_example_call_tool.js deleted file mode 100644 index 6af40298b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_persons_lifecycle_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetPersonsLifecycle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_persons_lifecycle_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_persons_lifecycle_example_call_tool.py deleted file mode 100644 index a766d26d3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_persons_lifecycle_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetPersonsLifecycle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_project_activity_log_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_project_activity_log_example_call_tool.js deleted file mode 100644 index 7aa1b9d35..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_project_activity_log_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetProjectActivityLog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_project_activity_log_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_project_activity_log_example_call_tool.py deleted file mode 100644 index a02ea781e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_project_activity_log_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetProjectActivityLog" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_project_environment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_project_environment_details_example_call_tool.js deleted file mode 100644 index 17382bbc2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_project_environment_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetProjectEnvironmentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_id": 42, - "project_identifier": "proj-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_project_environment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_project_environment_details_example_call_tool.py deleted file mode 100644 index 9d32aab3c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_project_environment_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetProjectEnvironmentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_id': 42, 'project_identifier': 'proj-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_project_event_restrictions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_project_event_restrictions_example_call_tool.js deleted file mode 100644 index f8990eed5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_project_event_restrictions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetProjectEventRestrictions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_identifier": 1, - "project_identifier": "proj_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_project_event_restrictions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_project_event_restrictions_example_call_tool.py deleted file mode 100644 index 0bd077aab..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_project_event_restrictions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetProjectEventRestrictions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_identifier': 1, 'project_identifier': 'proj_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_project_experiment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_project_experiment_details_example_call_tool.js deleted file mode 100644 index ceac58b36..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_project_experiment_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetProjectExperimentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "experiment_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_project_experiment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_project_experiment_details_example_call_tool.py deleted file mode 100644 index 754bcb585..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_project_experiment_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetProjectExperimentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'experiment_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_project_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_project_subscriptions_example_call_tool.js deleted file mode 100644 index 554ed0820..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_project_subscriptions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetProjectSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_project_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_project_subscriptions_example_call_tool.py deleted file mode 100644 index be5e833e7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_project_subscriptions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetProjectSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_project_surveys_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_project_surveys_example_call_tool.js deleted file mode 100644 index 6d81a9b61..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_project_surveys_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetProjectSurveys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "initial_result_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_project_surveys_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_project_surveys_example_call_tool.py deleted file mode 100644 index 544bf84eb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_project_surveys_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetProjectSurveys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'initial_result_index': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_project_task_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_project_task_details_example_call_tool.js deleted file mode 100644 index f8b04f55d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_project_task_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetProjectTaskDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "task_id": "task-67890-uuid" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_project_task_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_project_task_details_example_call_tool.py deleted file mode 100644 index 9f4351037..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_project_task_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetProjectTaskDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'task_id': 'task-67890-uuid' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_proxy_records_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_proxy_records_example_call_tool.js deleted file mode 100644 index 619c39766..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_proxy_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetProxyRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_proxy_records_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_proxy_records_example_call_tool.py deleted file mode 100644 index 85c0cd898..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_proxy_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetProxyRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_query_descendants_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_query_descendants_example_call_tool.js deleted file mode 100644 index 27c159987..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_query_descendants_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetQueryDescendants"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "query_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"level\":1}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_query_descendants_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_query_descendants_example_call_tool.py deleted file mode 100644 index 47bb0db50..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_query_descendants_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetQueryDescendants" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'query_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"level":1}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_query_log_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_query_log_details_example_call_tool.js deleted file mode 100644 index 20732a4b5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_query_log_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetQueryLogDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "query_id": "abcde12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_query_log_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_query_log_details_example_call_tool.py deleted file mode 100644 index 6abf08573..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_query_log_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetQueryLogDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'query_id': 'abcde12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_related_environment_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_related_environment_groups_example_call_tool.js deleted file mode 100644 index 16a9320c9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_related_environment_groups_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetRelatedEnvironmentGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_type_identifier": 1, - "project_id": "proj_12345", - "user_id_for_group_search": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_related_environment_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_related_environment_groups_example_call_tool.py deleted file mode 100644 index 8ff2c8cf9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_related_environment_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetRelatedEnvironmentGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_type_identifier': 1, 'project_id': 'proj_12345', 'user_id_for_group_search': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_saved_queries_list_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_saved_queries_list_example_call_tool.js deleted file mode 100644 index 44335a64f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_saved_queries_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetSavedQueriesList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "current_page_number": 1, - "search_term": "error" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_saved_queries_list_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_saved_queries_list_example_call_tool.py deleted file mode 100644 index 4b64c7c18..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_saved_queries_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetSavedQueriesList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'current_page_number': 1, 'search_term': 'error' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_session_recordings_sharing_links_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_session_recordings_sharing_links_example_call_tool.js deleted file mode 100644 index 98aae90cb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_session_recordings_sharing_links_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetSessionRecordingsSharingLinks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "session_recording_id": "abcde12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_session_recordings_sharing_links_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_session_recordings_sharing_links_example_call_tool.py deleted file mode 100644 index ae9c2e8e1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_session_recordings_sharing_links_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetSessionRecordingsSharingLinks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'session_recording_id': 'abcde12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_subscription_info_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_subscription_info_example_call_tool.js deleted file mode 100644 index 774004953..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_subscription_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetSubscriptionInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "proj_12345", - "subscription_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_subscription_info_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_subscription_info_example_call_tool.py deleted file mode 100644 index f55db3d16..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_subscription_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetSubscriptionInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 'proj_12345', 'subscription_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_suppression_rule_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_suppression_rule_details_example_call_tool.js deleted file mode 100644 index 9ef2ac4b2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_suppression_rule_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetSuppressionRuleDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "suppression_rule_uuid": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_suppression_rule_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_suppression_rule_details_example_call_tool.py deleted file mode 100644 index 091dc06b6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_suppression_rule_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetSuppressionRuleDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', - 'suppression_rule_uuid': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_survey_response_count_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_survey_response_count_example_call_tool.js deleted file mode 100644 index e45940a9f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_survey_response_count_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetSurveyResponseCount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_survey_response_count_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_survey_response_count_example_call_tool.py deleted file mode 100644 index 1c7576688..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_survey_response_count_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetSurveyResponseCount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_survey_response_statistics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_survey_response_statistics_example_call_tool.js deleted file mode 100644 index 3e44bc90a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_survey_response_statistics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetSurveyResponseStatistics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "survey_uuid": "e7b3c1f2-4a5e-4b8e-9c3d-1f2e3a4b5c6d" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_survey_response_statistics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_survey_response_statistics_example_call_tool.py deleted file mode 100644 index cc64394da..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_survey_response_statistics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetSurveyResponseStatistics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'survey_uuid': 'e7b3c1f2-4a5e-4b8e-9c3d-1f2e3a4b5c6d' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_survey_statistics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_survey_statistics_example_call_tool.js deleted file mode 100644 index f14ecea8b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_survey_statistics_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetSurveyStatistics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_survey_statistics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_survey_statistics_example_call_tool.py deleted file mode 100644 index 14000d132..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_survey_statistics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetSurveyStatistics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_task_run_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_task_run_details_example_call_tool.js deleted file mode 100644 index b64422ee3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_task_run_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetTaskRunDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "task_identifier": "task-67890", - "task_run_id": "run-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_task_run_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_task_run_details_example_call_tool.py deleted file mode 100644 index fc3aa4a11..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_task_run_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetTaskRunDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'task_identifier': 'task-67890', 'task_run_id': 'run-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_twilio_phone_numbers_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_twilio_phone_numbers_example_call_tool.js deleted file mode 100644 index 603dc5ff0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_twilio_phone_numbers_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetTwilioPhoneNumbers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_identifier": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_twilio_phone_numbers_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_twilio_phone_numbers_example_call_tool.py deleted file mode 100644 index c64b78ea6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_twilio_phone_numbers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetTwilioPhoneNumbers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_identifier': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_warehouse_saved_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_warehouse_saved_query_example_call_tool.js deleted file mode 100644 index 0eb4a849e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_warehouse_saved_query_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetWarehouseSavedQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "saved_query_id": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_warehouse_saved_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_warehouse_saved_query_example_call_tool.py deleted file mode 100644 index 833a77446..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_warehouse_saved_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetWarehouseSavedQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'saved_query_id': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_warehouse_table_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_warehouse_table_example_call_tool.js deleted file mode 100644 index cc5c8aa4d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_warehouse_table_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetWarehouseTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "warehouse_table_id": "table-67890-uuid" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_warehouse_table_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_warehouse_table_example_call_tool.py deleted file mode 100644 index 644127cec..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_warehouse_table_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetWarehouseTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'warehouse_table_id': 'table-67890-uuid' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_web_analytics_overview_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/get_web_analytics_overview_example_call_tool.js deleted file mode 100644 index 3eb546001..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_web_analytics_overview_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.GetWebAnalyticsOverview"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_date_query": "2023-10-31", - "project_id": "proj_12345", - "start_date": "2023-10-01", - "filter_test_accounts": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/get_web_analytics_overview_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/get_web_analytics_overview_example_call_tool.py deleted file mode 100644 index fe0baf5b7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/get_web_analytics_overview_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.GetWebAnalyticsOverview" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_date_query': '2023-10-31', - 'project_id': 'proj_12345', - 'start_date': '2023-10-01', - 'filter_test_accounts': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/halt_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/halt_batch_export_example_call_tool.js deleted file mode 100644 index a0c58b77d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/halt_batch_export_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.HaltBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "organization_identifier": "987e6543-e21b-12d3-a456-426614174001", - "request_body": "{\"action\":\"pause\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/halt_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/halt_batch_export_example_call_tool.py deleted file mode 100644 index cd711b42f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/halt_batch_export_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.HaltBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', - 'organization_identifier': '987e6543-e21b-12d3-a456-426614174001', - 'request_body': '{"action":"pause"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/initiate_export_backfill_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/initiate_export_backfill_example_call_tool.js deleted file mode 100644 index 1821a11bd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/initiate_export_backfill_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.InitiateExportBackfill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "organization_identifier": "org-001", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/initiate_export_backfill_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/initiate_export_backfill_example_call_tool.py deleted file mode 100644 index 09f1abfbf..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/initiate_export_backfill_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.InitiateExportBackfill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', - 'organization_identifier': 'org-001', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/initiate_task_workflow_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/initiate_task_workflow_example_call_tool.js deleted file mode 100644 index 744888937..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/initiate_task_workflow_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.InitiateTaskWorkflow"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "task_uuid": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/initiate_task_workflow_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/initiate_task_workflow_example_call_tool.py deleted file mode 100644 index 4b88a0d58..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/initiate_task_workflow_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.InitiateTaskWorkflow" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'task_uuid': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/initiate_user2fa_setup_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/initiate_user2fa_setup_example_call_tool.js deleted file mode 100644 index ff05beaa0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/initiate_user2fa_setup_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.InitiateUser2faSetup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/initiate_user2fa_setup_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/initiate_user2fa_setup_example_call_tool.py deleted file mode 100644 index 2b42fbc2f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/initiate_user2fa_setup_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.InitiateUser2faSetup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_annotations_for_project_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_annotations_for_project_example_call_tool.js deleted file mode 100644 index e5b75db0d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_annotations_for_project_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListAnnotationsForProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "initial_result_index": 0, - "results_limit_per_page": 10, - "search_term": "error" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_annotations_for_project_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_annotations_for_project_example_call_tool.py deleted file mode 100644 index 880364a7a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_annotations_for_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListAnnotationsForProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'initial_result_index': 0, - 'results_limit_per_page': 10, - 'search_term': 'error' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_available_agents_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_available_agents_example_call_tool.js deleted file mode 100644 index e757365f2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_available_agents_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListAvailableAgents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identification": "proj_12345", - "result_start_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_available_agents_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_available_agents_example_call_tool.py deleted file mode 100644 index 6a89794e8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_available_agents_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListAvailableAgents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identification': 'proj_12345', 'result_start_index': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_backfill_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_backfill_exports_example_call_tool.js deleted file mode 100644 index b65335e40..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_backfill_exports_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListBackfillExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_identifier": "export_123", - "project_identifier": "project_456", - "ordering_field_for_results": "created_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_backfill_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_backfill_exports_example_call_tool.py deleted file mode 100644 index 5c8f4dfd1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_backfill_exports_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListBackfillExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_identifier': 'export_123', - 'project_identifier': 'project_456', - 'ordering_field_for_results': 'created_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_batch_export_backfills_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_batch_export_backfills_example_call_tool.js deleted file mode 100644 index 629ae541c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_batch_export_backfills_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListBatchExportBackfills"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_identifier": "export_123", - "project_id": "project_456", - "pagination_cursor": "cursor_789", - "results_ordering_field": "created_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_batch_export_backfills_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_batch_export_backfills_example_call_tool.py deleted file mode 100644 index a920e1d38..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_batch_export_backfills_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListBatchExportBackfills" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_identifier': 'export_123', - 'project_id': 'project_456', - 'pagination_cursor': 'cursor_789', - 'results_ordering_field': 'created_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_batch_export_runs_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_batch_export_runs_example_call_tool.js deleted file mode 100644 index 633c1819a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_batch_export_runs_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListBatchExportRuns"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_identifier": "export_12345", - "project_id": "project_67890", - "pagination_cursor": "cursor_abc", - "results_ordering_field": "date" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_batch_export_runs_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_batch_export_runs_example_call_tool.py deleted file mode 100644 index 9bb36e12f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_batch_export_runs_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListBatchExportRuns" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_identifier': 'export_12345', - 'project_id': 'project_67890', - 'pagination_cursor': 'cursor_abc', - 'results_ordering_field': 'date' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_batch_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_batch_exports_example_call_tool.js deleted file mode 100644 index 4d5158305..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_batch_exports_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListBatchExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "result_offset": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_batch_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_batch_exports_example_call_tool.py deleted file mode 100644 index b7b62e5a4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_batch_exports_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListBatchExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'result_offset': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_collaborators_on_dashboard_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_collaborators_on_dashboard_example_call_tool.js deleted file mode 100644 index 713a68231..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_collaborators_on_dashboard_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListCollaboratorsOnDashboard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_identifier": 123, - "project_identifier": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_collaborators_on_dashboard_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_collaborators_on_dashboard_example_call_tool.py deleted file mode 100644 index 3f6738538..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_collaborators_on_dashboard_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListCollaboratorsOnDashboard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_identifier': 123, 'project_identifier': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_collaborators_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_collaborators_example_call_tool.js deleted file mode 100644 index 5064dd6f5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_collaborators_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListDashboardCollaborators"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_identifier": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_collaborators_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_collaborators_example_call_tool.py deleted file mode 100644 index d545de443..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_collaborators_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListDashboardCollaborators" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_identifier': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_shares_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_shares_example_call_tool.js deleted file mode 100644 index cdf67e64e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_shares_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListDashboardShares"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_identifier": 123, - "project_identifier": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_shares_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_shares_example_call_tool.py deleted file mode 100644 index bb6ad5e43..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_shares_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListDashboardShares" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_identifier': 123, 'project_identifier': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_templates_example_call_tool.js deleted file mode 100644 index d5eb509ea..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_templates_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListDashboardTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_templates_example_call_tool.py deleted file mode 100644 index a56a80899..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_dashboard_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListDashboardTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_data_color_themes_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_data_color_themes_example_call_tool.js deleted file mode 100644 index 43c460b2d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_data_color_themes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListDataColorThemes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "initial_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_data_color_themes_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_data_color_themes_example_call_tool.py deleted file mode 100644 index 49fbd3e77..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_data_color_themes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListDataColorThemes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'initial_index': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_datasets_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_datasets_example_call_tool.js deleted file mode 100644 index c8c7e0df5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_datasets_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListDatasets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "dataset_ids": [ - "dataset1", - "dataset2" - ], - "initial_result_index": 0, - "order_datasets_by": [ - "created_at" - ], - "results_per_page": 10, - "search_query": "example" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_datasets_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_datasets_example_call_tool.py deleted file mode 100644 index 323845c99..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_datasets_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListDatasets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'dataset_ids': ['dataset1', 'dataset2'], - 'initial_result_index': 0, - 'order_datasets_by': ['created_at'], - 'results_per_page': 10, - 'search_query': 'example' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_env_batch_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_env_batch_exports_example_call_tool.js deleted file mode 100644 index 9b28163fb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_env_batch_exports_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListEnvBatchExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "initial_result_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_env_batch_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_env_batch_exports_example_call_tool.py deleted file mode 100644 index b25703112..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_env_batch_exports_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListEnvBatchExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'initial_result_index': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_dashboards_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_environment_dashboards_example_call_tool.js deleted file mode 100644 index 8eb36e31a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_dashboards_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListEnvironmentDashboards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "initial_index_for_results": 0, - "response_format": "json", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_dashboards_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_environment_dashboards_example_call_tool.py deleted file mode 100644 index e5526755e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_dashboards_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListEnvironmentDashboards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'initial_index_for_results': 0, - 'response_format': 'json', - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_dataset_items_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_environment_dataset_items_example_call_tool.js deleted file mode 100644 index 9a865f0d4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_dataset_items_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListEnvironmentDatasetItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "filter_by_dataset_id": "67890", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_dataset_items_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_environment_dataset_items_example_call_tool.py deleted file mode 100644 index d976413d5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_dataset_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListEnvironmentDatasetItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', 'filter_by_dataset_id': '67890', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_datasets_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_environment_datasets_example_call_tool.js deleted file mode 100644 index fc620538f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_datasets_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListEnvironmentDatasets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "dataset_ids": [ - "dataset1", - "dataset2" - ], - "ordering_criteria": [ - "created_at" - ], - "results_limit_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_datasets_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_environment_datasets_example_call_tool.py deleted file mode 100644 index d1cd23ed3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_datasets_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListEnvironmentDatasets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'dataset_ids': ['dataset1', 'dataset2'], - 'ordering_criteria': ['created_at'], - 'results_limit_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_evaluations_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_environment_evaluations_example_call_tool.js deleted file mode 100644 index cb44aa0ab..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_evaluations_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListEnvironmentEvaluations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "evaluation_ids": [ - "eval1", - "eval2" - ], - "evaluation_ordering": [ - "created_at" - ], - "filter_by_enabled_status": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_evaluations_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_environment_evaluations_example_call_tool.py deleted file mode 100644 index ac818f928..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_evaluations_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListEnvironmentEvaluations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', - 'evaluation_ids': ['eval1', 'eval2'], - 'evaluation_ordering': ['created_at'], - 'filter_by_enabled_status': True, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_environment_exports_example_call_tool.js deleted file mode 100644 index bb51116d0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_exports_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListEnvironmentExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_identifier": "export_123", - "project_id": "project_456", - "order_by_field": "created_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_environment_exports_example_call_tool.py deleted file mode 100644 index 3e682a9e0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_exports_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListEnvironmentExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_identifier': 'export_123', - 'project_id': 'project_456', - 'order_by_field': 'created_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_environment_groups_example_call_tool.js deleted file mode 100644 index 1b786fc0b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_groups_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListEnvironmentGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_type_index": 1, - "project_id": "12345", - "search_group_name": "dev" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_environment_groups_example_call_tool.py deleted file mode 100644 index 393f636ee..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListEnvironmentGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_type_index': 1, 'project_id': '12345', 'search_group_name': 'dev' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_insights_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_environment_insights_example_call_tool.js deleted file mode 100644 index 1aaf91de4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_insights_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListEnvironmentInsights"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "insight_id": 123, - "project_identifier": "proj-456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_insights_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_environment_insights_example_call_tool.py deleted file mode 100644 index 800f593b6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_insights_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListEnvironmentInsights" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'insight_id': 123, 'project_identifier': 'proj-456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_integrations_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_environment_integrations_example_call_tool.js deleted file mode 100644 index 6f1887608..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_integrations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListEnvironmentIntegrations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_integrations_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_environment_integrations_example_call_tool.py deleted file mode 100644 index 6d2db4572..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_integrations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListEnvironmentIntegrations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_plugin_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_environment_plugin_logs_example_call_tool.js deleted file mode 100644 index 613793a87..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_plugin_logs_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListEnvironmentPluginLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "plugin_configuration_id": "plugin123", - "project_id": "project456", - "results_offset_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_plugin_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_environment_plugin_logs_example_call_tool.py deleted file mode 100644 index 457708a64..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_plugin_logs_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListEnvironmentPluginLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'plugin_configuration_id': 'plugin123', - 'project_id': 'project456', - 'results_offset_index': 0, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_environment_subscriptions_example_call_tool.js deleted file mode 100644 index ab20d8d63..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_subscriptions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListEnvironmentSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "result_start_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_environment_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_environment_subscriptions_example_call_tool.py deleted file mode 100644 index 490dc102f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_environment_subscriptions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListEnvironmentSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'result_start_index': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_assignment_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_assignment_rules_example_call_tool.js deleted file mode 100644 index 49ea38db6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_assignment_rules_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListErrorTrackingAssignmentRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_assignment_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_assignment_rules_example_call_tool.py deleted file mode 100644 index 77ed84ffd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_assignment_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListErrorTrackingAssignmentRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_fingerprints_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_fingerprints_example_call_tool.js deleted file mode 100644 index 455da8297..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_fingerprints_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListErrorTrackingFingerprints"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj_12345", - "initial_index_for_results": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_fingerprints_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_fingerprints_example_call_tool.py deleted file mode 100644 index 99bfff881..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_fingerprints_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListErrorTrackingFingerprints" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj_12345', 'initial_index_for_results': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_grouping_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_grouping_rules_example_call_tool.js deleted file mode 100644 index d8a19f9b9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_grouping_rules_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListErrorTrackingGroupingRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "initial_index_for_results": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_grouping_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_grouping_rules_example_call_tool.py deleted file mode 100644 index 9466391c5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_grouping_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListErrorTrackingGroupingRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'initial_index_for_results': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_releases_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_releases_example_call_tool.js deleted file mode 100644 index c80615fb2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_releases_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListErrorTrackingReleases"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_releases_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_releases_example_call_tool.py deleted file mode 100644 index d1fac29e5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_releases_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListErrorTrackingReleases" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_suppression_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_suppression_rules_example_call_tool.js deleted file mode 100644 index 05527388c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_suppression_rules_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListErrorTrackingSuppressionRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_suppression_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_suppression_rules_example_call_tool.py deleted file mode 100644 index 77ececf15..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_suppression_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListErrorTrackingSuppressionRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_symbol_sets_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_symbol_sets_example_call_tool.js deleted file mode 100644 index a6f6fd121..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_symbol_sets_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListErrorTrackingSymbolSets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_symbol_sets_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_symbol_sets_example_call_tool.py deleted file mode 100644 index 9baec0c83..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_error_tracking_symbol_sets_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListErrorTrackingSymbolSets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_experiment_saved_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_experiment_saved_metrics_example_call_tool.js deleted file mode 100644 index 29fafade7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_experiment_saved_metrics_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListExperimentSavedMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "initial_result_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_experiment_saved_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_experiment_saved_metrics_example_call_tool.py deleted file mode 100644 index 9c6da8ff4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_experiment_saved_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListExperimentSavedMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'initial_result_index': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_experiments_eligible_feature_flags_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_experiments_eligible_feature_flags_example_call_tool.js deleted file mode 100644 index ecf1c24d9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_experiments_eligible_feature_flags_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListExperimentsEligibleFeatureFlags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_experiments_eligible_feature_flags_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_experiments_eligible_feature_flags_example_call_tool.py deleted file mode 100644 index f601874b5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_experiments_eligible_feature_flags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListExperimentsEligibleFeatureFlags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_feature_flags_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_feature_flags_example_call_tool.js deleted file mode 100644 index 17a7275d0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_feature_flags_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListFeatureFlags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "project_123", - "exclude_feature_flag_keys": "[\"flag1\",\"flag2\"]", - "filter_by_active_status": "true", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_feature_flags_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_feature_flags_example_call_tool.py deleted file mode 100644 index a0cde7560..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_feature_flags_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListFeatureFlags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'project_123', - 'exclude_feature_flag_keys': '["flag1","flag2"]', - 'filter_by_active_status': 'true', - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_file_system_shortcuts_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_file_system_shortcuts_example_call_tool.js deleted file mode 100644 index bd45405cb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_file_system_shortcuts_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListFileSystemShortcuts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "result_start_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_file_system_shortcuts_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_file_system_shortcuts_example_call_tool.py deleted file mode 100644 index 9eaae45c1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_file_system_shortcuts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListFileSystemShortcuts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'result_start_index': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_file_systems_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_file_systems_example_call_tool.js deleted file mode 100644 index 1b1e676e9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_file_systems_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListFileSystems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10, - "search_term": "backup" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_file_systems_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_file_systems_example_call_tool.py deleted file mode 100644 index c7bfc9480..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_file_systems_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListFileSystems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10, 'search_term': 'backup' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_group_types_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_group_types_example_call_tool.js deleted file mode 100644 index bf6d25bdf..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_group_types_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListGroupTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "project_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_group_types_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_group_types_example_call_tool.py deleted file mode 100644 index ac5d592ab..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_group_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListGroupTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'project_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_groups_by_type_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_groups_by_type_example_call_tool.js deleted file mode 100644 index c40cf3b1a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_groups_by_type_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListGroupsByType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_type_to_list": 1, - "project_id": "12345", - "search_group_name": "dev" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_groups_by_type_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_groups_by_type_example_call_tool.py deleted file mode 100644 index 3aee17432..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_groups_by_type_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListGroupsByType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_type_to_list': 1, 'project_id': '12345', 'search_group_name': 'dev' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_hog_functions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_hog_functions_example_call_tool.js deleted file mode 100644 index 546628430..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_hog_functions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListHogFunctions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "created_at": "2023-10-01", - "include_only_enabled_functions": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_hog_functions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_hog_functions_example_call_tool.py deleted file mode 100644 index 3f03033eb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_hog_functions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListHogFunctions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', - 'created_at': '2023-10-01', - 'include_only_enabled_functions': True, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_insight_sharing_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_insight_sharing_example_call_tool.js deleted file mode 100644 index 395f2344a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_insight_sharing_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListInsightSharing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "insight_identifier": 123, - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_insight_sharing_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_insight_sharing_example_call_tool.py deleted file mode 100644 index 828f5035a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_insight_sharing_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListInsightSharing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'insight_identifier': 123, 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_organization_domains_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_organization_domains_example_call_tool.js deleted file mode 100644 index 38a081ea2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_organization_domains_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListOrganizationDomains"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "initial_index_for_results": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_organization_domains_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_organization_domains_example_call_tool.py deleted file mode 100644 index f4af052d3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_organization_domains_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListOrganizationDomains" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'initial_index_for_results': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_organization_invites_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_organization_invites_example_call_tool.js deleted file mode 100644 index fcc73d818..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_organization_invites_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListOrganizationInvites"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_organization_invites_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_organization_invites_example_call_tool.py deleted file mode 100644 index 011a92f65..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_organization_invites_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListOrganizationInvites" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_organization_members_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_organization_members_example_call_tool.js deleted file mode 100644 index 1ac2724e9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_organization_members_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListOrganizationMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org-12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_organization_members_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_organization_members_example_call_tool.py deleted file mode 100644 index 3ed1919ce..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_organization_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListOrganizationMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org-12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_organization_roles_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_organization_roles_example_call_tool.js deleted file mode 100644 index adf71ec12..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_organization_roles_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListOrganizationRoles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_organization_roles_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_organization_roles_example_call_tool.py deleted file mode 100644 index 297d33efa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_organization_roles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListOrganizationRoles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_organizations_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_organizations_example_call_tool.js deleted file mode 100644 index 8dbfa1d65..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_organizations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListOrganizations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_per_page": 10, - "results_start_index": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_organizations_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_organizations_example_call_tool.py deleted file mode 100644 index 1c4b28408..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_organizations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListOrganizations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_per_page': 10, 'results_start_index': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_persisted_folders_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_persisted_folders_example_call_tool.js deleted file mode 100644 index 10b07e3aa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_persisted_folders_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListPersistedFolders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_persisted_folders_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_persisted_folders_example_call_tool.py deleted file mode 100644 index 4414287c3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_persisted_folders_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListPersistedFolders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_plugin_config_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_plugin_config_logs_example_call_tool.js deleted file mode 100644 index 2f9e1153c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_plugin_config_logs_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListPluginConfigLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "plugin_configuration_id": "config123", - "project_id": "project456", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_plugin_config_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_plugin_config_logs_example_call_tool.py deleted file mode 100644 index f4807edc3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_plugin_config_logs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListPluginConfigLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'plugin_configuration_id': 'config123', 'project_id': 'project456', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_posthog_experiments_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_posthog_experiments_example_call_tool.js deleted file mode 100644 index 2d42ad1c2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_posthog_experiments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListPosthogExperiments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "page_result_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_posthog_experiments_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_posthog_experiments_example_call_tool.py deleted file mode 100644 index f9d8605b6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_posthog_experiments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListPosthogExperiments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'page_result_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_posthog_notebooks_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_posthog_notebooks_example_call_tool.js deleted file mode 100644 index 40c7afdb5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_posthog_notebooks_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListPosthogNotebooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "filter_by_logged_in_user": "true", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_posthog_notebooks_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_posthog_notebooks_example_call_tool.py deleted file mode 100644 index d7501dc2c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_posthog_notebooks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListPosthogNotebooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'filter_by_logged_in_user': 'true', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_project_actions_example_call_tool.js deleted file mode 100644 index 46ad67a8a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_actions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListProjectActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "response_format": "json", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_project_actions_example_call_tool.py deleted file mode 100644 index e2acc5964..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListProjectActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', 'response_format': 'json', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_cohorts_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_project_cohorts_example_call_tool.js deleted file mode 100644 index a58a7d79d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_cohorts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListProjectCohorts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_cohorts_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_project_cohorts_example_call_tool.py deleted file mode 100644 index b53e4c5c2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_cohorts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListProjectCohorts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_dataset_items_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_project_dataset_items_example_call_tool.js deleted file mode 100644 index cea0e8dda..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_dataset_items_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListProjectDatasetItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "filter_by_dataset_id": "dataset_1", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_dataset_items_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_project_dataset_items_example_call_tool.py deleted file mode 100644 index e15e3d3e5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_dataset_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListProjectDatasetItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'filter_by_dataset_id': 'dataset_1', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_environments_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_project_environments_example_call_tool.js deleted file mode 100644 index 51f304b79..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_environments_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListProjectEnvironments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "initial_result_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_environments_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_project_environments_example_call_tool.py deleted file mode 100644 index 33b00f0a3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_environments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListProjectEnvironments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'initial_result_index': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_project_exports_example_call_tool.js deleted file mode 100644 index 27f5235af..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_exports_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListProjectExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_project_exports_example_call_tool.py deleted file mode 100644 index 59e6f841f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_exports_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListProjectExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_file_systems_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_project_file_systems_example_call_tool.js deleted file mode 100644 index afbeb6946..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_file_systems_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListProjectFileSystems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "initial_result_index": 0, - "results_per_page_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_file_systems_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_project_file_systems_example_call_tool.py deleted file mode 100644 index e0f824370..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_file_systems_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListProjectFileSystems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', 'initial_result_index': 0, 'results_per_page_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_hog_functions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_project_hog_functions_example_call_tool.js deleted file mode 100644 index edb76bf7f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_hog_functions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListProjectHogFunctions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "created_at": "2023-10-11T15:00:00Z", - "include_enabled_functions": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_hog_functions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_project_hog_functions_example_call_tool.py deleted file mode 100644 index eb720ab60..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_hog_functions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListProjectHogFunctions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', - 'created_at': '2023-10-11T15:00:00Z', - 'include_enabled_functions': True, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_insights_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_project_insights_example_call_tool.js deleted file mode 100644 index 57f240405..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_insights_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListProjectInsights"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "creator_user_id": 678, - "insights_refresh_mode": "async", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_insights_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_project_insights_example_call_tool.py deleted file mode 100644 index a1f6486c9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_insights_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListProjectInsights" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'creator_user_id': 678, - 'insights_refresh_mode': 'async', - 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_integrations_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_project_integrations_example_call_tool.js deleted file mode 100644 index 9bef4e4f2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_integrations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListProjectIntegrations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_integrations_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_project_integrations_example_call_tool.py deleted file mode 100644 index e33f339ee..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_integrations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListProjectIntegrations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_project_tasks_example_call_tool.js deleted file mode 100644 index 2bf584f08..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_tasks_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListProjectTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj_12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_project_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_project_tasks_example_call_tool.py deleted file mode 100644 index 547912a8b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_project_tasks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListProjectTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj_12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_property_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_property_definitions_example_call_tool.js deleted file mode 100644 index c1f432da9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_property_definitions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListPropertyDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "event_names_json": "[\"event1\",\"event2\"]", - "exclude_core_properties": true, - "filter_properties_by_event_names": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_property_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_property_definitions_example_call_tool.py deleted file mode 100644 index 0bce7f800..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_property_definitions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListPropertyDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'event_names_json': '["event1","event2"]', - 'exclude_core_properties': True, - 'filter_properties_by_event_names': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_role_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_role_memberships_example_call_tool.js deleted file mode 100644 index df3c8b9f5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_role_memberships_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListRoleMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "role_identifier": "role_admin", - "result_start_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_role_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_role_memberships_example_call_tool.py deleted file mode 100644 index 14293a62b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_role_memberships_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListRoleMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'role_identifier': 'role_admin', - 'result_start_index': 0, - 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_session_playlists_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_session_playlists_example_call_tool.js deleted file mode 100644 index a6b6c51b5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_session_playlists_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListSessionPlaylists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "created_by_user_id": 678, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_session_playlists_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_session_playlists_example_call_tool.py deleted file mode 100644 index 5b5d88963..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_session_playlists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListSessionPlaylists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', 'created_by_user_id': 678, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_session_recording_sharing_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_session_recording_sharing_example_call_tool.js deleted file mode 100644 index da7e7e290..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_session_recording_sharing_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListSessionRecordingSharing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "session_recording_id": "abcde12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_session_recording_sharing_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_session_recording_sharing_example_call_tool.py deleted file mode 100644 index 0b6c07b5a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_session_recording_sharing_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListSessionRecordingSharing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'session_recording_id': 'abcde12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_session_recordings_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_session_recordings_example_call_tool.js deleted file mode 100644 index 1c1269ca1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_session_recordings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListSessionRecordings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_session_recordings_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_session_recordings_example_call_tool.py deleted file mode 100644 index fa6d12d8b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_session_recordings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListSessionRecordings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_shared_dashboards_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_shared_dashboards_example_call_tool.js deleted file mode 100644 index 13c1310e9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_shared_dashboards_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListSharedDashboards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_identifier": 123, - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_shared_dashboards_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_shared_dashboards_example_call_tool.py deleted file mode 100644 index 46944b7f8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_shared_dashboards_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListSharedDashboards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_identifier': 123, 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_synthetic_playlists_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_synthetic_playlists_example_call_tool.js deleted file mode 100644 index 860c91d93..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_synthetic_playlists_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListSyntheticPlaylists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "created_by_user_id": 42, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_synthetic_playlists_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_synthetic_playlists_example_call_tool.py deleted file mode 100644 index b4e53c4ef..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_synthetic_playlists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListSyntheticPlaylists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'created_by_user_id': 42, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_task_runs_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_task_runs_example_call_tool.js deleted file mode 100644 index 87e0b23de..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_task_runs_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListTaskRuns"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "task_identifier": "task_67890", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_task_runs_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_task_runs_example_call_tool.py deleted file mode 100644 index d1e8aeb74..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_task_runs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListTaskRuns" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'task_identifier': 'task_67890', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_user_interviews_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_user_interviews_example_call_tool.js deleted file mode 100644 index 95fd6a706..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_user_interviews_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListUserInterviews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "result_start_index": 0, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_user_interviews_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_user_interviews_example_call_tool.py deleted file mode 100644 index fb8016ac3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_user_interviews_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListUserInterviews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'result_start_index': 0, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_users_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_users_example_call_tool.js deleted file mode 100644 index 6e2dfdcf4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_users_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_staff_only": true, - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_users_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_users_example_call_tool.py deleted file mode 100644 index 82f73ea1d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_users_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_staff_only': True, 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_warehouse_saved_queries_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_warehouse_saved_queries_example_call_tool.js deleted file mode 100644 index 5baea7b41..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_warehouse_saved_queries_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListWarehouseSavedQueries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "page_number": 1, - "search_term": "sales" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_warehouse_saved_queries_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_warehouse_saved_queries_example_call_tool.py deleted file mode 100644 index 24e73a515..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_warehouse_saved_queries_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListWarehouseSavedQueries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'page_number': 1, 'search_term': 'sales' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_warehouse_tables_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_warehouse_tables_example_call_tool.js deleted file mode 100644 index 3e0aade9b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_warehouse_tables_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListWarehouseTables"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj_12345", - "results_per_page": 10, - "search_term": "sales" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_warehouse_tables_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_warehouse_tables_example_call_tool.py deleted file mode 100644 index 53e9baded..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_warehouse_tables_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListWarehouseTables" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj_12345', 'results_per_page': 10, 'search_term': 'sales' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_web_experiments_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/list_web_experiments_example_call_tool.js deleted file mode 100644 index 3c103adc4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_web_experiments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ListWebExperiments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/list_web_experiments_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/list_web_experiments_example_call_tool.py deleted file mode 100644 index da0c23628..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/list_web_experiments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ListWebExperiments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/log_track_filesystem_views_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/log_track_filesystem_views_example_call_tool.js deleted file mode 100644 index f18cd41c1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/log_track_filesystem_views_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.LogTrackFilesystemViews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "response_format": "json", - "request_body": "{\"file\":\"/path/to/file.txt\",\"action\":\"view\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/log_track_filesystem_views_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/log_track_filesystem_views_example_call_tool.py deleted file mode 100644 index 0f11f2a24..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/log_track_filesystem_views_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.LogTrackFilesystemViews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'response_format': 'json', - 'request_body': '{"file":"/path/to/file.txt","action":"view"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/manage_warehouse_table_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/manage_warehouse_table_example_call_tool.js deleted file mode 100644 index b22825b62..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/manage_warehouse_table_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ManageWarehouseTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "12345", - "request_body": "{\"table_name\":\"inventory\",\"columns\":[{\"name\":\"item_id\",\"type\":\"integer\"},{\"name\":\"item_name\",\"type\":\"string\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/manage_warehouse_table_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/manage_warehouse_table_example_call_tool.py deleted file mode 100644 index 012294c46..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/manage_warehouse_table_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ManageWarehouseTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': '12345', - 'request_body': '{"table_name":"inventory","columns":[{"name":"item_id","type":"integer"},{"name":"item_name","type":"string"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/mark_action_as_deleted_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/mark_action_as_deleted_example_call_tool.js deleted file mode 100644 index f323f6480..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/mark_action_as_deleted_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.MarkActionAsDeleted"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": 12345, - "project_identifier": "proj_67890", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/mark_action_as_deleted_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/mark_action_as_deleted_example_call_tool.py deleted file mode 100644 index e5c6329ff..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/mark_action_as_deleted_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.MarkActionAsDeleted" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': 12345, 'project_identifier': 'proj_67890', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/mark_feature_flag_deleted_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/mark_feature_flag_deleted_example_call_tool.js deleted file mode 100644 index 4cf1703b9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/mark_feature_flag_deleted_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.MarkFeatureFlagDeleted"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "feature_flag_id": 123, - "project_identifier": "project_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/mark_feature_flag_deleted_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/mark_feature_flag_deleted_example_call_tool.py deleted file mode 100644 index c2358d301..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/mark_feature_flag_deleted_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.MarkFeatureFlagDeleted" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'feature_flag_id': 123, 'project_identifier': 'project_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_annotation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_annotation_example_call_tool.js deleted file mode 100644 index 3c463bdda..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_annotation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyAnnotation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "annotation_id": 123, - "project_id": "proj_456", - "request_body": "{\"title\":\"Updated Annotation\",\"content\":\"This is the updated content.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_annotation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_annotation_example_call_tool.py deleted file mode 100644 index 331d2a9a0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_annotation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyAnnotation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'annotation_id': 123, - 'project_id': 'proj_456', - 'request_body': '{"title":"Updated Annotation","content":"This is the updated content."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_batch_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_batch_exports_example_call_tool.js deleted file mode 100644 index 795be1c50..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_batch_exports_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyBatchExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "organization_identifier": "org-001", - "request_body": "{\"export_type\":\"full\",\"schedule\":\"daily\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_batch_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_batch_exports_example_call_tool.py deleted file mode 100644 index c296b1066..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_batch_exports_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyBatchExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', - 'organization_identifier': 'org-001', - 'request_body': '{"export_type":"full","schedule":"daily"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_cohort_views_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_cohort_views_example_call_tool.js deleted file mode 100644 index 6cafea8c6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_cohort_views_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyCohortViews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "cohort_identifier": 123, - "project_identifier": "proj_456", - "request_body": "{\"accessed\": true, \"timestamp\": \"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_cohort_views_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_cohort_views_example_call_tool.py deleted file mode 100644 index 2bef0b907..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_cohort_views_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyCohortViews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'cohort_identifier': 123, - 'project_identifier': 'proj_456', - 'request_body': '{"accessed": true, "timestamp": "2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_dashboard_template_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_dashboard_template_example_call_tool.js deleted file mode 100644 index 3f74af098..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_dashboard_template_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyDashboardTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_dashboard_template_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_dashboard_template_example_call_tool.py deleted file mode 100644 index aa48b0638..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_dashboard_template_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyDashboardTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_data_theme_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_data_theme_example_call_tool.js deleted file mode 100644 index e86adf7a2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_data_theme_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyDataTheme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "theme_id": 1, - "project_id": "12345", - "request_body": "{\"color\":\"#FF5733\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_data_theme_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_data_theme_example_call_tool.py deleted file mode 100644 index e39f0c897..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_data_theme_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyDataTheme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'theme_id': 1, 'project_id': '12345', 'request_body': '{"color":"#FF5733"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_dataset_item_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_dataset_item_example_call_tool.js deleted file mode 100644 index 8b5c2e563..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_dataset_item_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyDatasetItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dataset_item_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj_001", - "request_body": "{\"name\":\"Updated Item\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_dataset_item_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_dataset_item_example_call_tool.py deleted file mode 100644 index 3ea399a56..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_dataset_item_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyDatasetItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dataset_item_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj_001', - 'request_body': '{"name":"Updated Item","description":"This is an updated description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_early_access_feature_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_early_access_feature_example_call_tool.js deleted file mode 100644 index 48b1dcdef..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_early_access_feature_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyEarlyAccessFeature"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "early_access_feature_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"name\":\"New Feature\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_early_access_feature_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_early_access_feature_example_call_tool.py deleted file mode 100644 index 2c9bc19fe..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_early_access_feature_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyEarlyAccessFeature" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'early_access_feature_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"name":"New Feature","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_env_file_system_shortcut_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_env_file_system_shortcut_example_call_tool.js deleted file mode 100644 index a59fa5b95..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_env_file_system_shortcut_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyEnvFileSystemShortcut"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "file_system_shortcut_id": "shortcut_001", - "shortcut_file_path": "/path/to/shortcut", - "shortcut_href": "http://example.com/shortcut" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_env_file_system_shortcut_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_env_file_system_shortcut_example_call_tool.py deleted file mode 100644 index 2f4d8c776..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_env_file_system_shortcut_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyEnvFileSystemShortcut" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'file_system_shortcut_id': 'shortcut_001', - 'shortcut_file_path': '/path/to/shortcut', - 'shortcut_href': 'http://example.com/shortcut' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_env_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_env_folder_example_call_tool.js deleted file mode 100644 index 1f0e86f45..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_env_folder_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyEnvFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "environment_folder_id": "env-folder-67890", - "folder_path": "/new/path/to/folder" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_env_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_env_folder_example_call_tool.py deleted file mode 100644 index 760d03083..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_env_folder_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyEnvFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'environment_folder_id': 'env-folder-67890', - 'folder_path': '/new/path/to/folder' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_dataset_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_environment_dataset_example_call_tool.js deleted file mode 100644 index e5725d507..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_dataset_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyEnvironmentDataset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dataset_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_1", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_dataset_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_environment_dataset_example_call_tool.py deleted file mode 100644 index b3ad804fe..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_dataset_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyEnvironmentDataset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dataset_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_1', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_dataset_item_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_environment_dataset_item_example_call_tool.js deleted file mode 100644 index 8a2b48e07..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_dataset_item_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyEnvironmentDatasetItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dataset_item_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"field\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_dataset_item_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_environment_dataset_item_example_call_tool.py deleted file mode 100644 index 3f444a3eb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_dataset_item_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyEnvironmentDatasetItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dataset_item_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"field":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_evaluation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_environment_evaluation_example_call_tool.js deleted file mode 100644 index 3b69c40d2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_evaluation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyEnvironmentEvaluation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "evaluation_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"status\":\"updated\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_evaluation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_environment_evaluation_example_call_tool.py deleted file mode 100644 index 0e323c650..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_evaluation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyEnvironmentEvaluation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'evaluation_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"status":"updated"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_file_system_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_environment_file_system_example_call_tool.js deleted file mode 100644 index b35f386ca..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_file_system_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyEnvironmentFileSystem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "file_system_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_file_system_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_environment_file_system_example_call_tool.py deleted file mode 100644 index 95a75a274..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_file_system_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyEnvironmentFileSystem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'file_system_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_environment_subscription_example_call_tool.js deleted file mode 100644 index 9d9ac9f1d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_subscription_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyEnvironmentSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "subscription_id": 123, - "project_id": "proj_456", - "request_body": "{\"preference\":\"new_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_environment_subscription_example_call_tool.py deleted file mode 100644 index 5dce58024..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_environment_subscription_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyEnvironmentSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'subscription_id': 123, - 'project_id': 'proj_456', - 'request_body': '{"preference":"new_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_event_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_event_definition_example_call_tool.js deleted file mode 100644 index e49004caa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_event_definition_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyEventDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_definition_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_event_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_event_definition_example_call_tool.py deleted file mode 100644 index 009819028..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_event_definition_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyEventDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_definition_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_experiment_holdout_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_experiment_holdout_example_call_tool.js deleted file mode 100644 index 05c573453..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_experiment_holdout_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyExperimentHoldout"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "experiment_holdout_id": 123, - "target_project_id": "proj_456", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_experiment_holdout_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_experiment_holdout_example_call_tool.py deleted file mode 100644 index 703af7205..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_experiment_holdout_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyExperimentHoldout" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'experiment_holdout_id': 123, - 'target_project_id': 'proj_456', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_feature_flags_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_feature_flags_example_call_tool.js deleted file mode 100644 index ead970eea..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_feature_flags_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyFeatureFlags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "feature_flag_id": 123, - "project_id": "proj_456", - "request_body": "{\"enabled\": true, \"conditions\": [{\"type\": \"user\", \"value\": \"user@example.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_feature_flags_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_feature_flags_example_call_tool.py deleted file mode 100644 index fad4a552e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_feature_flags_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyFeatureFlags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'feature_flag_id': 123, - 'project_id': 'proj_456', - 'request_body': '{"enabled": true, "conditions": [{"type": "user", "value": ' - '"user@example.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_file_system_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_file_system_example_call_tool.js deleted file mode 100644 index d08a54af7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_file_system_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyFileSystem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "file_system_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"update\":\"details\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_file_system_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_file_system_example_call_tool.py deleted file mode 100644 index fa6a42ea4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_file_system_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyFileSystem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'file_system_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"update":"details"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_file_system_shortcut_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_file_system_shortcut_example_call_tool.js deleted file mode 100644 index 664b0dfb6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_file_system_shortcut_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyFileSystemShortcut"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "creation_timestamp": "2023-10-01T12:00:00Z", - "file_system_path": "/projects/my_project/shortcuts/my_shortcut", - "file_system_shortcut_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "shortcut_id": "shortcut-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_file_system_shortcut_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_file_system_shortcut_example_call_tool.py deleted file mode 100644 index 875503430..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_file_system_shortcut_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyFileSystemShortcut" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'creation_timestamp': '2023-10-01T12:00:00Z', - 'file_system_path': '/projects/my_project/shortcuts/my_shortcut', - 'file_system_shortcut_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'shortcut_id': 'shortcut-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_grouping_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_grouping_rules_example_call_tool.js deleted file mode 100644 index 6f47b5f06..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_grouping_rules_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyGroupingRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "assigned_user": "john_doe", - "error_tracking_rule_uuid": "550e8400-e29b-41d4-a716-446655440000", - "filters_string": "status:error", - "grouping_rule_order_key": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_grouping_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_grouping_rules_example_call_tool.py deleted file mode 100644 index 3caa84966..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_grouping_rules_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyGroupingRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'assigned_user': 'john_doe', - 'error_tracking_rule_uuid': '550e8400-e29b-41d4-a716-446655440000', - 'filters_string': 'status:error', - 'grouping_rule_order_key': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_hog_functions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_hog_functions_example_call_tool.js deleted file mode 100644 index 2f7cb3386..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_hog_functions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyHogFunctions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "hog_function_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_1", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_hog_functions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_hog_functions_example_call_tool.py deleted file mode 100644 index 5fc04f45c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_hog_functions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyHogFunctions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'hog_function_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_1', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_interview_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_interview_environment_example_call_tool.js deleted file mode 100644 index 3020b4670..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_interview_environment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyInterviewEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_interview_id": "123e4567-e89b-12d3-a456-426614174000", - "target_project_id": "proj-001", - "request_body": "{\"status\":\"updated\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_interview_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_interview_environment_example_call_tool.py deleted file mode 100644 index 38cf43a77..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_interview_environment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyInterviewEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_interview_id': '123e4567-e89b-12d3-a456-426614174000', - 'target_project_id': 'proj-001', - 'request_body': '{"status":"updated"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_person_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_person_details_example_call_tool.js deleted file mode 100644 index 151925afe..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_person_details_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyPersonDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "person_id": 123, - "project_identifier": "proj_456", - "response_format": "json", - "request_body": "{\"name\":\"John Doe\",\"age\":30}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_person_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_person_details_example_call_tool.py deleted file mode 100644 index 80a95bd2e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_person_details_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyPersonDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'person_id': 123, - 'project_identifier': 'proj_456', - 'response_format': 'json', - 'request_body': '{"name":"John Doe","age":30}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_persons_in_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_persons_in_environment_example_call_tool.js deleted file mode 100644 index ad6c174ef..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_persons_in_environment_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyPersonsInEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_of_target_environment": "proj_12345", - "distinct_ids_list": [ - "id_1", - "id_2" - ], - "person_id": 101, - "person_name": "John Doe", - "person_properties": "{\"email\":\"john@example.com\"}", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_persons_in_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_persons_in_environment_example_call_tool.py deleted file mode 100644 index be75bfc6b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_persons_in_environment_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyPersonsInEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_of_target_environment': 'proj_12345', - 'distinct_ids_list': ['id_1', 'id_2'], - 'person_id': 101, - 'person_name': 'John Doe', - 'person_properties': '{"email":"john@example.com"}', - 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_project_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_project_environment_example_call_tool.js deleted file mode 100644 index dd60f15f3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_project_environment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyProjectEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "environment_identifier": 1, - "project_identifier": "12345", - "request_body": "{\"setting\":\"new_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_project_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_project_environment_example_call_tool.py deleted file mode 100644 index 79ce19fbf..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_project_environment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyProjectEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'environment_identifier': 1, - 'project_identifier': '12345', - 'request_body': '{"setting":"new_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_proxy_record_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_proxy_record_example_call_tool.js deleted file mode 100644 index 418c35232..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_proxy_record_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyProxyRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "proxy_record_id": "12345", - "organization_id": "org_67890", - "request_body": "{\"field\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_proxy_record_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_proxy_record_example_call_tool.py deleted file mode 100644 index 240dedf5a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_proxy_record_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyProxyRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'proxy_record_id': '12345', - 'organization_id': 'org_67890', - 'request_body': '{"field":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_recording_playlist_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_recording_playlist_example_call_tool.js deleted file mode 100644 index 5fad830f6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_recording_playlist_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyRecordingPlaylist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "session_recording_short_id": "abc123", - "request_body": "{\"name\":\"Updated Playlist\",\"description\":\"This is an updated playlist.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_recording_playlist_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_recording_playlist_example_call_tool.py deleted file mode 100644 index 4a8187301..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_recording_playlist_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyRecordingPlaylist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'session_recording_short_id': 'abc123', - 'request_body': '{"name":"Updated Playlist","description":"This is an updated playlist."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_session_recording_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_session_recording_example_call_tool.js deleted file mode 100644 index f0330b4ca..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_session_recording_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifySessionRecording"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "session_recording_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_1", - "request_body": "{\"status\":\"updated\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_session_recording_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_session_recording_example_call_tool.py deleted file mode 100644 index 941970221..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_session_recording_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifySessionRecording" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'session_recording_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_1', - 'request_body': '{"status":"updated"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_session_recording_playlist_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_session_recording_playlist_example_call_tool.js deleted file mode 100644 index 8e0d32232..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_session_recording_playlist_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifySessionRecordingPlaylist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "playlist_short_identifier": "playlist_1", - "request_body": "{\"name\":\"Updated Playlist\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_session_recording_playlist_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_session_recording_playlist_example_call_tool.py deleted file mode 100644 index 3f1e76ec1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_session_recording_playlist_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifySessionRecordingPlaylist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'playlist_short_identifier': 'playlist_1', - 'request_body': '{"name":"Updated Playlist","description":"This is an updated description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_table_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_table_schema_example_call_tool.js deleted file mode 100644 index 5d599300a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_table_schema_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyTableSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "table_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"add_columns\":[{\"name\":\"new_column\",\"type\":\"string\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_table_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_table_schema_example_call_tool.py deleted file mode 100644 index df4b5a8ce..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_table_schema_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyTableSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'table_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"add_columns":[{"name":"new_column","type":"string"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_user_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_user_attribute_example_call_tool.js deleted file mode 100644 index 2936ec894..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_user_attribute_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyUserAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "property_key": "email", - "property_value": "new_email@example.com", - "person_identifier": 123, - "project_identifier": "proj_456", - "response_format": "json", - "request_body": "{\"email\":\"new_email@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_user_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_user_attribute_example_call_tool.py deleted file mode 100644 index 4d344e255..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_user_attribute_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyUserAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'property_key': 'email', - 'property_value': 'new_email@example.com', - 'person_identifier': 123, - 'project_identifier': 'proj_456', - 'response_format': 'json', - 'request_body': '{"email":"new_email@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_warehouse_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_warehouse_query_example_call_tool.js deleted file mode 100644 index efa2fef68..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_warehouse_query_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyWarehouseQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "query_identifier": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"name\":\"Updated Query\",\"filters\":{\"status\":\"active\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_warehouse_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_warehouse_query_example_call_tool.py deleted file mode 100644 index 6604b7453..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_warehouse_query_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyWarehouseQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'query_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"name":"Updated Query","filters":{"status":"active"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_warehouse_table_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/modify_warehouse_table_example_call_tool.js deleted file mode 100644 index 77962a8a6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_warehouse_table_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ModifyWarehouseTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "warehouse_table_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_1", - "request_body": "{\"name\":\"Updated Table\",\"columns\":[{\"name\":\"column1\",\"type\":\"string\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/modify_warehouse_table_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/modify_warehouse_table_example_call_tool.py deleted file mode 100644 index c0bc49625..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/modify_warehouse_table_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ModifyWarehouseTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'warehouse_table_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_1', - 'request_body': '{"name":"Updated Table","columns":[{"name":"column1","type":"string"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/move_dashboard_tile_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/move_dashboard_tile_example_call_tool.js deleted file mode 100644 index 90e80205a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/move_dashboard_tile_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.MoveDashboardTile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_id": 123, - "project_id": "proj_456", - "response_format": "json", - "request_body": "{\"tile_id\":\"tile_789\",\"position\":{\"x\":1,\"y\":2}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/move_dashboard_tile_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/move_dashboard_tile_example_call_tool.py deleted file mode 100644 index 1df2f2fdd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/move_dashboard_tile_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.MoveDashboardTile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_id': 123, - 'project_id': 'proj_456', - 'response_format': 'json', - 'request_body': '{"tile_id":"tile_789","position":{"x":1,"y":2}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/move_file_system_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/move_file_system_entry_example_call_tool.js deleted file mode 100644 index 74fdd61a6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/move_file_system_entry_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.MoveFileSystemEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "file_system_id": "123e4567-e89b-12d3-a456-426614174000", - "target_project_id": "456e7890-e12b-34d5-b678-426614174001", - "request_body": "{\"new_location\":\"/new/path/to/file\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/move_file_system_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/move_file_system_entry_example_call_tool.py deleted file mode 100644 index 4dbb06777..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/move_file_system_entry_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.MoveFileSystemEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'file_system_id': '123e4567-e89b-12d3-a456-426614174000', - 'target_project_id': '456e7890-e12b-34d5-b678-426614174001', - 'request_body': '{"new_location":"/new/path/to/file"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/move_file_within_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/move_file_within_environment_example_call_tool.js deleted file mode 100644 index 78a845d0f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/move_file_within_environment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.MoveFileWithinEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "file_system_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"source\":\"/old/path/file.txt\",\"destination\":\"/new/path/file.txt\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/move_file_within_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/move_file_within_environment_example_call_tool.py deleted file mode 100644 index 31771f13f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/move_file_within_environment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.MoveFileWithinEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'file_system_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"source":"/old/path/file.txt","destination":"/new/path/file.txt"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/new_session_recording_playlist_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/new_session_recording_playlist_example_call_tool.js deleted file mode 100644 index 087eebb4b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/new_session_recording_playlist_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.NewSessionRecordingPlaylist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"name\":\"My Playlist\",\"description\":\"A new session recording playlist\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/new_session_recording_playlist_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/new_session_recording_playlist_example_call_tool.py deleted file mode 100644 index d43e85ca5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/new_session_recording_playlist_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.NewSessionRecordingPlaylist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"name":"My Playlist","description":"A new session recording playlist"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/pause_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/pause_batch_export_example_call_tool.js deleted file mode 100644 index d62543c81..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/pause_batch_export_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.PauseBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"action\":\"pause\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/pause_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/pause_batch_export_example_call_tool.py deleted file mode 100644 index 8d475b5d2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/pause_batch_export_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.PauseBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"action":"pause"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/persist_folder_creation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/persist_folder_creation_example_call_tool.js deleted file mode 100644 index b16463d7e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/persist_folder_creation_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.PersistFolderCreation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_category": "home", - "folder_creation_date": "2023-10-01T12:00:00Z", - "folder_last_updated": "2023-10-01T12:00:00Z", - "folder_type": "home", - "project_identifier": "project-123", - "folder_path": "/assets/folder1", - "folder_protocol": "HTTP" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/persist_folder_creation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/persist_folder_creation_example_call_tool.py deleted file mode 100644 index acd6fc84f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/persist_folder_creation_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.PersistFolderCreation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_category': 'home', - 'folder_creation_date': '2023-10-01T12:00:00Z', - 'folder_last_updated': '2023-10-01T12:00:00Z', - 'folder_type': 'home', - 'project_identifier': 'project-123', - 'folder_path': '/assets/folder1', - 'folder_protocol': 'HTTP' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/person_activity_info_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/person_activity_info_example_call_tool.js deleted file mode 100644 index 6ae8f6221..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/person_activity_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.PersonActivityInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "access_project_id": "12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/person_activity_info_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/person_activity_info_example_call_tool.py deleted file mode 100644 index 500451213..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/person_activity_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.PersonActivityInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'access_project_id': '12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/queue_person_event_deletion_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/queue_person_event_deletion_example_call_tool.js deleted file mode 100644 index 0af7b7e1c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/queue_person_event_deletion_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.QueuePersonEventDeletion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "person_identifier": 123, - "project_identifier": "proj_456", - "response_format": "json", - "request_body": "{\"delete_events\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/queue_person_event_deletion_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/queue_person_event_deletion_example_call_tool.py deleted file mode 100644 index e39ecfed6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/queue_person_event_deletion_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.QueuePersonEventDeletion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'person_identifier': 123, - 'project_identifier': 'proj_456', - 'response_format': 'json', - 'request_body': '{"delete_events":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/queue_person_events_deletion_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/queue_person_events_deletion_example_call_tool.js deleted file mode 100644 index 4b21e2eff..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/queue_person_events_deletion_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.QueuePersonEventsDeletion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "person_identifier": 123, - "project_id": "proj_456", - "events_export_format": "json", - "request_body": "{\"delete\":\"all\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/queue_person_events_deletion_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/queue_person_events_deletion_example_call_tool.py deleted file mode 100644 index b8db55567..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/queue_person_events_deletion_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.QueuePersonEventsDeletion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'person_identifier': 123, - 'project_id': 'proj_456', - 'events_export_format': 'json', - 'request_body': '{"delete":"all"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/reactivate_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/reactivate_batch_export_example_call_tool.js deleted file mode 100644 index a915b7e36..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reactivate_batch_export_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ReactivateBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"action\":\"unpause\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/reactivate_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/reactivate_batch_export_example_call_tool.py deleted file mode 100644 index d5702d514..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reactivate_batch_export_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ReactivateBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"action":"unpause"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/read_or_delete_person_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/read_or_delete_person_example_call_tool.js deleted file mode 100644 index 5dbcbd35e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/read_or_delete_person_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ReadOrDeletePerson"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "person_id": 123, - "project_identifier": "proj_456", - "output_format": "json", - "request_body": "{\"action\":\"delete\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/read_or_delete_person_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/read_or_delete_person_example_call_tool.py deleted file mode 100644 index 2d259ca53..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/read_or_delete_person_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ReadOrDeletePerson" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'person_id': 123, - 'project_identifier': 'proj_456', - 'output_format': 'json', - 'request_body': '{"action":"delete"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/record_insight_views_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/record_insight_views_example_call_tool.js deleted file mode 100644 index b684cc2dd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/record_insight_views_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RecordInsightViews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "response_format": "json", - "request_body": "{\"insight_ids\":[\"insight1\",\"insight2\"],\"timestamp\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/record_insight_views_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/record_insight_views_example_call_tool.py deleted file mode 100644 index f18a86a2b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/record_insight_views_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RecordInsightViews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'response_format': 'json', - 'request_body': '{"insight_ids":["insight1","insight2"],"timestamp":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/refresh_dashboard_sharing_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/refresh_dashboard_sharing_example_call_tool.js deleted file mode 100644 index e6f109792..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/refresh_dashboard_sharing_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RefreshDashboardSharing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_id": 12345, - "project_id": "proj_67890", - "request_body": "{\"sharing\":\"public\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/refresh_dashboard_sharing_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/refresh_dashboard_sharing_example_call_tool.py deleted file mode 100644 index 8d8f0f999..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/refresh_dashboard_sharing_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RefreshDashboardSharing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_id': 12345, - 'project_id': 'proj_67890', - 'request_body': '{"sharing":"public"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/refresh_dashboard_sharing_link_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/refresh_dashboard_sharing_link_example_call_tool.js deleted file mode 100644 index e67147355..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/refresh_dashboard_sharing_link_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RefreshDashboardSharingLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_identification_number": 123, - "project_identifier": "proj_456", - "request_body": "{\"update\":\"true\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/refresh_dashboard_sharing_link_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/refresh_dashboard_sharing_link_example_call_tool.py deleted file mode 100644 index f74cc6a48..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/refresh_dashboard_sharing_link_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RefreshDashboardSharingLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_identification_number': 123, - 'project_identifier': 'proj_456', - 'request_body': '{"update":"true"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/refresh_insight_sharing_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/refresh_insight_sharing_example_call_tool.js deleted file mode 100644 index 787c0b6c9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/refresh_insight_sharing_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RefreshInsightSharing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "insight_identifier": 123, - "project_id": "proj_456", - "request_body": "{\"sharing\":\"updated\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/refresh_insight_sharing_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/refresh_insight_sharing_example_call_tool.py deleted file mode 100644 index aaac18b29..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/refresh_insight_sharing_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RefreshInsightSharing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'insight_identifier': 123, - 'project_id': 'proj_456', - 'request_body': '{"sharing":"updated"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/refresh_insights_sharing_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/refresh_insights_sharing_example_call_tool.js deleted file mode 100644 index cb1f06bfb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/refresh_insights_sharing_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RefreshInsightsSharing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "insight_id": 123, - "project_id": "proj_456", - "request_body": "{\"refresh\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/refresh_insights_sharing_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/refresh_insights_sharing_example_call_tool.py deleted file mode 100644 index 356223985..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/refresh_insights_sharing_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RefreshInsightsSharing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'insight_id': 123, 'project_id': 'proj_456', 'request_body': '{"refresh":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/refresh_session_recording_sharing_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/refresh_session_recording_sharing_example_call_tool.js deleted file mode 100644 index a3a3f0cc1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/refresh_session_recording_sharing_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RefreshSessionRecordingSharing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "session_recording_id": "abcde", - "request_body": "{\"update\":\"refresh\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/refresh_session_recording_sharing_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/refresh_session_recording_sharing_example_call_tool.py deleted file mode 100644 index 1d86d4da1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/refresh_session_recording_sharing_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RefreshSessionRecordingSharing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'session_recording_id': 'abcde', - 'request_body': '{"update":"refresh"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/refresh_warehouse_table_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/refresh_warehouse_table_schema_example_call_tool.js deleted file mode 100644 index 5f95d9b67..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/refresh_warehouse_table_schema_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RefreshWarehouseTableSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "warehouse_table_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"schema\":\"updated_schema\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/refresh_warehouse_table_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/refresh_warehouse_table_schema_example_call_tool.py deleted file mode 100644 index d13e80b88..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/refresh_warehouse_table_schema_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RefreshWarehouseTableSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'warehouse_table_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"schema":"updated_schema"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_batch_export_example_call_tool.js deleted file mode 100644 index 4e9e35421..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_batch_export_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "organization_id": "org-987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_batch_export_example_call_tool.py deleted file mode 100644 index 706640fa7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_batch_export_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', 'organization_id': 'org-987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_collaborator_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_collaborator_example_call_tool.js deleted file mode 100644 index 4bed31cea..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_collaborator_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveDashboardCollaborator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collaborator_user_uuid": "123e4567-e89b-12d3-a456-426614174000", - "dashboard_id": 42, - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_collaborator_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_collaborator_example_call_tool.py deleted file mode 100644 index 6be057826..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_collaborator_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveDashboardCollaborator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collaborator_user_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'dashboard_id': 42, - 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_example_call_tool.js deleted file mode 100644 index 2ccb71d28..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveDashboard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_id": 12345, - "project_identifier": "proj_67890", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_example_call_tool.py deleted file mode 100644 index 703f204b2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveDashboard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_id': 12345, 'project_identifier': 'proj_67890', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_sharing_password_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_sharing_password_example_call_tool.js deleted file mode 100644 index cfccdc6e5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_sharing_password_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveDashboardSharingPassword"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_identifier": 123, - "password_identifier": "pass_456", - "project_id": "proj_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_sharing_password_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_sharing_password_example_call_tool.py deleted file mode 100644 index a6f7ae615..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_dashboard_sharing_password_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveDashboardSharingPassword" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_identifier': 123, 'password_identifier': 'pass_456', 'project_id': 'proj_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_early_access_feature_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_early_access_feature_example_call_tool.js deleted file mode 100644 index 1d312044c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_early_access_feature_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveEarlyAccessFeature"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "early_access_feature_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id_for_removal": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_early_access_feature_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_early_access_feature_example_call_tool.py deleted file mode 100644 index bfa9b0787..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_early_access_feature_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveEarlyAccessFeature" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'early_access_feature_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id_for_removal': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_error_suppression_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_error_suppression_rule_example_call_tool.js deleted file mode 100644 index dc41f2b7a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_error_suppression_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveErrorSuppressionRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "suppression_rule_uuid": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_error_suppression_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_error_suppression_rule_example_call_tool.py deleted file mode 100644 index 28e0d47b8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_error_suppression_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveErrorSuppressionRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', 'suppression_rule_uuid': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_error_tracking_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_error_tracking_rule_example_call_tool.js deleted file mode 100644 index b52c0b961..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_error_tracking_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveErrorTrackingRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "error_tracking_rule_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_error_tracking_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_error_tracking_rule_example_call_tool.py deleted file mode 100644 index 4aaa54b45..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_error_tracking_rule_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveErrorTrackingRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'error_tracking_rule_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project-abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_file_system_shortcut_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_file_system_shortcut_example_call_tool.js deleted file mode 100644 index 265547bfa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_file_system_shortcut_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveFileSystemShortcut"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_system_shortcut_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_file_system_shortcut_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_file_system_shortcut_example_call_tool.py deleted file mode 100644 index 83c23f7e5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_file_system_shortcut_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveFileSystemShortcut" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_system_shortcut_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_folder_example_call_tool.js deleted file mode 100644 index 9d1b3e90f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_folder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "persisted_folder_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_folder_example_call_tool.py deleted file mode 100644 index 4a4e7b063..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'persisted_folder_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_hog_function_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_hog_function_example_call_tool.js deleted file mode 100644 index c01d256f6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_hog_function_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveHogFunction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hog_function_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id_for_deletion": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_hog_function_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_hog_function_example_call_tool.py deleted file mode 100644 index 771d966ea..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_hog_function_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveHogFunction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hog_function_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id_for_deletion': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_organization_member_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_organization_member_example_call_tool.js deleted file mode 100644 index eb8e46f3e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_organization_member_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveOrganizationMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org-12345", - "user_uuid": "user-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_organization_member_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_organization_member_example_call_tool.py deleted file mode 100644 index fd2c73a8a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_organization_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveOrganizationMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org-12345', 'user_uuid': 'user-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_person_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_person_attribute_example_call_tool.js deleted file mode 100644 index 79ccc81dd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_person_attribute_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemovePersonAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "property_key_to_delete": "email", - "person_identifier": 123, - "project_identifier": "proj_456", - "response_format": "json", - "request_body": "{\"delete\":\"email\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_person_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_person_attribute_example_call_tool.py deleted file mode 100644 index ea0b065c3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_person_attribute_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemovePersonAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'property_key_to_delete': 'email', - 'person_identifier': 123, - 'project_identifier': 'proj_456', - 'response_format': 'json', - 'request_body': '{"delete":"email"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_person_from_static_cohort_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_person_from_static_cohort_example_call_tool.js deleted file mode 100644 index a6b577204..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_person_from_static_cohort_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemovePersonFromStaticCohort"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cohort_id": 123, - "project_id": "proj_456", - "person_uuid_to_remove": "uuid-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_person_from_static_cohort_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_person_from_static_cohort_example_call_tool.py deleted file mode 100644 index b3d51bc3e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_person_from_static_cohort_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemovePersonFromStaticCohort" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cohort_id': 123, 'project_id': 'proj_456', 'person_uuid_to_remove': 'uuid-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_person_recordings_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_person_recordings_example_call_tool.js deleted file mode 100644 index a66ea4d04..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_person_recordings_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemovePersonRecordings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "person_identifier": 123, - "project_id": "proj_456", - "file_format": "json", - "request_body": "{\"delete\":\"all\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_person_recordings_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_person_recordings_example_call_tool.py deleted file mode 100644 index 650a65365..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_person_recordings_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemovePersonRecordings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'person_identifier': 123, - 'project_id': 'proj_456', - 'file_format': 'json', - 'request_body': '{"delete":"all"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_role_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_role_membership_example_call_tool.js deleted file mode 100644 index 921a8a863..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_role_membership_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveRoleMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org-12345", - "role_id": "role-67890", - "role_membership_id": "membership-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_role_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_role_membership_example_call_tool.py deleted file mode 100644 index 8e96ed566..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_role_membership_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveRoleMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org-12345', - 'role_id': 'role-67890', - 'role_membership_id': 'membership-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_session_recording_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_session_recording_example_call_tool.js deleted file mode 100644 index b90d097a5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_session_recording_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveSessionRecording"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "session_recording_id": "e7b3c1f2-4a5e-4c3b-8c1e-5f3a1e2b3c4d" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_session_recording_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_session_recording_example_call_tool.py deleted file mode 100644 index ff47fab4a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_session_recording_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveSessionRecording" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'session_recording_id': 'e7b3c1f2-4a5e-4c3b-8c1e-5f3a1e2b3c4d' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_session_recording_playlist_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_session_recording_playlist_example_call_tool.js deleted file mode 100644 index 1e10e72a4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_session_recording_playlist_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveSessionRecordingPlaylist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj_12345", - "session_recording_playlist_short_id": "playlist_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_session_recording_playlist_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_session_recording_playlist_example_call_tool.py deleted file mode 100644 index 789813c5a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_session_recording_playlist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveSessionRecordingPlaylist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj_12345', 'session_recording_playlist_short_id': 'playlist_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_sharing_password_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_sharing_password_example_call_tool.js deleted file mode 100644 index aecf61b59..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_sharing_password_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveSharingPassword"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "password_identifier": "pwd_12345", - "project_identifier": "proj_67890", - "session_recording_id": "rec_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_sharing_password_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_sharing_password_example_call_tool.py deleted file mode 100644 index 73c38b4a3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_sharing_password_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveSharingPassword" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'password_identifier': 'pwd_12345', - 'project_identifier': 'proj_67890', - 'session_recording_id': 'rec_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_warehouse_table_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/remove_warehouse_table_example_call_tool.js deleted file mode 100644 index b609402fc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_warehouse_table_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RemoveWarehouseTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "warehouse_table_uuid": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/remove_warehouse_table_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/remove_warehouse_table_example_call_tool.py deleted file mode 100644 index 5372ee3bf..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/remove_warehouse_table_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RemoveWarehouseTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'warehouse_table_uuid': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/reorder_assignment_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/reorder_assignment_rules_example_call_tool.js deleted file mode 100644 index c776f859d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reorder_assignment_rules_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ReorderAssignmentRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "rule_id": "rule_1", - "rule_order_position": 2, - "target_assignee": "user_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/reorder_assignment_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/reorder_assignment_rules_example_call_tool.py deleted file mode 100644 index 80b7b2986..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reorder_assignment_rules_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ReorderAssignmentRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'rule_id': 'rule_1', - 'rule_order_position': 2, - 'target_assignee': 'user_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/reorder_error_tracking_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/reorder_error_tracking_rules_example_call_tool.js deleted file mode 100644 index e3103b87d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reorder_error_tracking_rules_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ReorderErrorTrackingRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-123", - "error_tracking_rule_id": "rule-456", - "new_order_key": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/reorder_error_tracking_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/reorder_error_tracking_rules_example_call_tool.py deleted file mode 100644 index bea10c2ef..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reorder_error_tracking_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ReorderErrorTrackingRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-123', 'error_tracking_rule_id': 'rule-456', 'new_order_key': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/reorder_error_tracking_suppression_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/reorder_error_tracking_suppression_rules_example_call_tool.js deleted file mode 100644 index 6f61e7edd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reorder_error_tracking_suppression_rules_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ReorderErrorTrackingSuppressionRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "error_tracking_filters": "status:active", - "new_order_key": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/reorder_error_tracking_suppression_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/reorder_error_tracking_suppression_rules_example_call_tool.py deleted file mode 100644 index 2134540b5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reorder_error_tracking_suppression_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ReorderErrorTrackingSuppressionRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'error_tracking_filters': 'status:active', 'new_order_key': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/request_email_verification_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/request_email_verification_example_call_tool.js deleted file mode 100644 index fa4cc44d6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/request_email_verification_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RequestEmailVerification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"email\":\"user@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/request_email_verification_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/request_email_verification_example_call_tool.py deleted file mode 100644 index 171e7d517..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/request_email_verification_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RequestEmailVerification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"email":"user@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/reset_distinct_id_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/reset_distinct_id_example_call_tool.js deleted file mode 100644 index bc9636d26..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reset_distinct_id_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ResetDistinctId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "response_format": "json", - "request_body": "{\"distinct_id\":\"abc123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/reset_distinct_id_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/reset_distinct_id_example_call_tool.py deleted file mode 100644 index 341a37a0d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reset_distinct_id_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ResetDistinctId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'response_format': 'json', - 'request_body': '{"distinct_id":"abc123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/reset_person_distinct_id_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/reset_person_distinct_id_example_call_tool.js deleted file mode 100644 index 2b72beb4e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reset_person_distinct_id_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ResetPersonDistinctId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "response_format": "json", - "request_body": "{\"distinct_id\":\"abc123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/reset_person_distinct_id_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/reset_person_distinct_id_example_call_tool.py deleted file mode 100644 index ac81b250c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reset_person_distinct_id_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ResetPersonDistinctId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'response_format': 'json', - 'request_body': '{"distinct_id":"abc123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/reset_project_environment_token_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/reset_project_environment_token_example_call_tool.js deleted file mode 100644 index 49672dfae..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reset_project_environment_token_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ResetProjectEnvironmentToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "environment_identifier": 1, - "project_id": "12345", - "request_body": "{\"token\":\"new_token_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/reset_project_environment_token_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/reset_project_environment_token_example_call_tool.py deleted file mode 100644 index 4b19ae7a7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reset_project_environment_token_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ResetProjectEnvironmentToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'environment_identifier': 1, - 'project_id': '12345', - 'request_body': '{"token":"new_token_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/reset_project_token_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/reset_project_token_example_call_tool.js deleted file mode 100644 index 157344803..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reset_project_token_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ResetProjectToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": 123, - "organization_id": "org_456", - "request_body": "{\"token\":\"new_token_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/reset_project_token_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/reset_project_token_example_call_tool.py deleted file mode 100644 index ec9895ea6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/reset_project_token_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ResetProjectToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': 123, - 'organization_id': 'org_456', - 'request_body': '{"token":"new_token_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/resolve_github_file_links_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/resolve_github_file_links_example_call_tool.js deleted file mode 100644 index e7de72c2a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/resolve_github_file_links_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ResolveGithubFileLinks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/resolve_github_file_links_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/resolve_github_file_links_example_call_tool.py deleted file mode 100644 index 32e40357d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/resolve_github_file_links_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ResolveGithubFileLinks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/resume_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/resume_batch_export_example_call_tool.js deleted file mode 100644 index a5bce5dec..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/resume_batch_export_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ResumeBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "organization_identifier": "org-001", - "request_body": "{\"status\":\"resumed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/resume_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/resume_batch_export_example_call_tool.py deleted file mode 100644 index d16e0c36e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/resume_batch_export_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ResumeBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', - 'organization_identifier': 'org-001', - 'request_body': '{"status":"resumed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve2fa_status_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve2fa_status_example_call_tool.js deleted file mode 100644 index fa38af2e4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve2fa_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.Retrieve2faStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve2fa_status_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve2fa_status_example_call_tool.py deleted file mode 100644 index 75817359e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve2fa_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.Retrieve2faStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_agent_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_agent_definition_example_call_tool.js deleted file mode 100644 index 12edc40aa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_agent_definition_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveAgentDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "agent_id": "agent_123", - "project_id": "project_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_agent_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_agent_definition_example_call_tool.py deleted file mode 100644 index ad215b8ea..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_agent_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveAgentDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'agent_id': 'agent_123', 'project_id': 'project_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_error_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_error_details_example_call_tool.js deleted file mode 100644 index bf9b855aa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_error_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveAppMetricsErrorDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "plugin_config_id": 12345, - "project_id": "proj-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_error_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_error_details_example_call_tool.py deleted file mode 100644 index ecddfd74f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_error_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveAppMetricsErrorDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'plugin_config_id': 12345, 'project_id': 'proj-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_example_call_tool.js deleted file mode 100644 index 0227e75c7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveAppMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "plugin_config_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_example_call_tool.py deleted file mode 100644 index 6ddfdacbc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveAppMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'plugin_config_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_exports_example_call_tool.js deleted file mode 100644 index a4471bb0d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_exports_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveAppMetricsExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "plugin_configuration_id": "config_12345", - "project_id_of_the_posthog_project": "project_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_exports_example_call_tool.py deleted file mode 100644 index 150e2f4b0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_exports_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveAppMetricsExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'plugin_configuration_id': 'config_12345', 'project_id_of_the_posthog_project': 'project_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_historical_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_historical_exports_example_call_tool.js deleted file mode 100644 index f527d6d59..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_historical_exports_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveAppMetricsHistoricalExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "export_id": "export_12345", - "plugin_configuration_id": "plugin_67890", - "project_identifier": "project_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_historical_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_historical_exports_example_call_tool.py deleted file mode 100644 index 2594da469..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_app_metrics_historical_exports_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveAppMetricsHistoricalExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'export_id': 'export_12345', - 'plugin_configuration_id': 'plugin_67890', - 'project_identifier': 'project_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_backfill_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_backfill_example_call_tool.js deleted file mode 100644 index cc3878687..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_backfill_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveBatchExportBackfill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_backfill_uuid": "123e4567-e89b-12d3-a456-426614174000", - "batch_export_identifier": "export_2023_01", - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_backfill_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_backfill_example_call_tool.py deleted file mode 100644 index db8f1629e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_backfill_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveBatchExportBackfill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_backfill_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'batch_export_identifier': 'export_2023_01', - 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_details_example_call_tool.js deleted file mode 100644 index d458844b6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveBatchExportDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "organization_id": "org-987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_details_example_call_tool.py deleted file mode 100644 index 122846db3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveBatchExportDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', 'organization_id': 'org-987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_logs_example_call_tool.js deleted file mode 100644 index e6f9861ea..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_logs_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveBatchExportLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "organization_id": "org-987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_logs_example_call_tool.py deleted file mode 100644 index eaefd8e79..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_logs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveBatchExportLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', 'organization_id': 'org-987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_run_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_run_example_call_tool.js deleted file mode 100644 index cd25151d3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_run_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveBatchExportRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_id": "export_12345", - "batch_export_run_uuid": "550e8400-e29b-41d4-a716-446655440000", - "project_id": "project_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_run_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_run_example_call_tool.py deleted file mode 100644 index 6d12a0d88..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_run_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveBatchExportRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_id': 'export_12345', - 'batch_export_run_uuid': '550e8400-e29b-41d4-a716-446655440000', - 'project_id': 'project_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_run_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_run_logs_example_call_tool.js deleted file mode 100644 index 26d3c9dba..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_run_logs_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveBatchExportRunLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_identifier": "export_12345", - "batch_export_run_id": "550e8400-e29b-41d4-a716-446655440000", - "project_id": "project_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_run_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_run_logs_example_call_tool.py deleted file mode 100644 index 9a0a26e0f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_run_logs_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveBatchExportRunLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_identifier': 'export_12345', - 'batch_export_run_id': '550e8400-e29b-41d4-a716-446655440000', - 'project_id': 'project_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_tests_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_tests_example_call_tool.js deleted file mode 100644 index 1ec4722a8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_tests_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveBatchExportTests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_tests_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_tests_example_call_tool.py deleted file mode 100644 index 300984a06..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_export_tests_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveBatchExportTests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_exports_test_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_exports_test_example_call_tool.js deleted file mode 100644 index a521e389d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_exports_test_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveBatchExportsTest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_exports_test_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_exports_test_example_call_tool.py deleted file mode 100644 index 50f4eb98f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_batch_exports_test_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveBatchExportsTest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_lists_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_lists_example_call_tool.js deleted file mode 100644 index 44cfbf2b1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_lists_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveClickupLists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_lists_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_lists_example_call_tool.py deleted file mode 100644 index 0648d8bc1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_lists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveClickupLists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_spaces_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_spaces_example_call_tool.js deleted file mode 100644 index 9ca6f656c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_spaces_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveClickupSpaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_spaces_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_spaces_example_call_tool.py deleted file mode 100644 index dfd7b974c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_spaces_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveClickupSpaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_workspaces_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_workspaces_example_call_tool.js deleted file mode 100644 index 529cffb27..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_workspaces_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveClickupWorkspaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_unique_identifier": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_workspaces_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_workspaces_example_call_tool.py deleted file mode 100644 index 50f5dc0b6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_clickup_workspaces_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveClickupWorkspaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_unique_identifier': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohort_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohort_activity_example_call_tool.js deleted file mode 100644 index 08201851e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohort_activity_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveCohortActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohort_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohort_activity_example_call_tool.py deleted file mode 100644 index 60d7c5722..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohort_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveCohortActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohort_calculation_history_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohort_calculation_history_example_call_tool.js deleted file mode 100644 index 472eec4f0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohort_calculation_history_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveCohortCalculationHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cohort_id": 123, - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohort_calculation_history_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohort_calculation_history_example_call_tool.py deleted file mode 100644 index e34efa407..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohort_calculation_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveCohortCalculationHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cohort_id': 123, 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohorts_data_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohorts_data_example_call_tool.js deleted file mode 100644 index 2005199ce..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohorts_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveCohortsData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cohort_identifier": 123, - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohorts_data_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohorts_data_example_call_tool.py deleted file mode 100644 index 975876432..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_cohorts_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveCohortsData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cohort_identifier': 123, 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_template_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_template_example_call_tool.js deleted file mode 100644 index d7f830e6c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_template_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveDashboardTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_template_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_template_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_template_example_call_tool.py deleted file mode 100644 index 33f802a48..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_template_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveDashboardTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_template_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_template_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_template_schema_example_call_tool.js deleted file mode 100644 index 61e0d69ad..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_template_schema_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveDashboardTemplateSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_template_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_template_schema_example_call_tool.py deleted file mode 100644 index b8f52d58a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_template_schema_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveDashboardTemplateSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_tiles_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_tiles_example_call_tool.js deleted file mode 100644 index 911c1beea..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_tiles_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveDashboardTiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_id": 123, - "project_id": "proj_456", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_tiles_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_tiles_example_call_tool.py deleted file mode 100644 index b2d9c9b99..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dashboard_tiles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveDashboardTiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_id': 123, 'project_id': 'proj_456', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_data_color_theme_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_data_color_theme_example_call_tool.js deleted file mode 100644 index c2488c711..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_data_color_theme_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveDataColorTheme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "data_color_theme_id": 1, - "project_identifier": "proj_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_data_color_theme_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_data_color_theme_example_call_tool.py deleted file mode 100644 index 8070066ad..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_data_color_theme_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveDataColorTheme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'data_color_theme_id': 1, 'project_identifier': 'proj_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dataset_info_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_dataset_info_example_call_tool.js deleted file mode 100644 index b07d6aad8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dataset_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveDatasetInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dataset_identifier": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dataset_info_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_dataset_info_example_call_tool.py deleted file mode 100644 index 690bb6207..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dataset_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveDatasetInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dataset_identifier': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dataset_item_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_dataset_item_example_call_tool.js deleted file mode 100644 index 60e55831c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dataset_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveDatasetItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dataset_item_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dataset_item_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_dataset_item_example_call_tool.py deleted file mode 100644 index 42132edb3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_dataset_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveDatasetItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dataset_item_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_default_evaluation_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_default_evaluation_tags_example_call_tool.js deleted file mode 100644 index c78d2bfdc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_default_evaluation_tags_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveDefaultEvaluationTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_id": 123, - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_default_evaluation_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_default_evaluation_tags_example_call_tool.py deleted file mode 100644 index 6fc893426..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_default_evaluation_tags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveDefaultEvaluationTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_id': 123, 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_domain_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_domain_details_example_call_tool.js deleted file mode 100644 index 8e48e35e7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_domain_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveDomainDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_id": "123e4567-e89b-12d3-a456-426614174000", - "organization_id": "org-987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_domain_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_domain_details_example_call_tool.py deleted file mode 100644 index aa0d6b45a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_domain_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveDomainDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_id': '123e4567-e89b-12d3-a456-426614174000', 'organization_id': 'org-987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_draft_sql_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_draft_sql_query_example_call_tool.js deleted file mode 100644 index f459d754c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_draft_sql_query_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveDraftSqlQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_draft_sql_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_draft_sql_query_example_call_tool.py deleted file mode 100644 index 34769a1a7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_draft_sql_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveDraftSqlQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_early_access_feature_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_early_access_feature_example_call_tool.js deleted file mode 100644 index 84905694e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_early_access_feature_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEarlyAccessFeature"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "feature_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_early_access_feature_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_early_access_feature_example_call_tool.py deleted file mode 100644 index bfcdcae87..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_early_access_feature_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEarlyAccessFeature" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'feature_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'project-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_batch_export_example_call_tool.js deleted file mode 100644 index a7ef7eaf3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_batch_export_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_batch_export_example_call_tool.py deleted file mode 100644 index fac249339..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_batch_export_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_batch_export_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_batch_export_logs_example_call_tool.js deleted file mode 100644 index 004b3c8ec..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_batch_export_logs_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentBatchExportLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_identifier": "export_12345", - "batch_export_run_id": "550e8400-e29b-41d4-a716-446655440000", - "project_identifier": "project_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_batch_export_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_batch_export_logs_example_call_tool.py deleted file mode 100644 index ece0b5a37..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_batch_export_logs_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentBatchExportLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_identifier': 'export_12345', - 'batch_export_run_id': '550e8400-e29b-41d4-a716-446655440000', - 'project_identifier': 'project_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_color_theme_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_color_theme_example_call_tool.js deleted file mode 100644 index 985cde99a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_color_theme_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentColorTheme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "color_theme_id": 1, - "project_identifier": "project_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_color_theme_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_color_theme_example_call_tool.py deleted file mode 100644 index f98832ee6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_color_theme_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentColorTheme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'color_theme_id': 1, 'project_identifier': 'project_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_dataset_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_dataset_example_call_tool.js deleted file mode 100644 index 2b3c0f62d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_dataset_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentDataset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_dataset_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_dataset_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_dataset_example_call_tool.py deleted file mode 100644 index b17359a24..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_dataset_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentDataset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_dataset_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_dataset_item_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_dataset_item_example_call_tool.js deleted file mode 100644 index 552510fa5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_dataset_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentDatasetItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dataset_item_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_dataset_item_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_dataset_item_example_call_tool.py deleted file mode 100644 index 34b4fd0c9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_dataset_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentDatasetItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dataset_item_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_draft_sql_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_draft_sql_example_call_tool.js deleted file mode 100644 index dde7c259a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_draft_sql_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentDraftSql"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_draft_sql_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_draft_sql_example_call_tool.py deleted file mode 100644 index 0cbb14a41..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_draft_sql_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentDraftSql" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_evaluation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_evaluation_example_call_tool.js deleted file mode 100644 index 8a5079ece..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_evaluation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentEvaluation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "evaluation_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_evaluation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_evaluation_example_call_tool.py deleted file mode 100644 index ef78abf11..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_evaluation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentEvaluation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'evaluation_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_event_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_event_example_call_tool.js deleted file mode 100644 index 1d3fa4503..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_event_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentEvent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_id": "evt_12345", - "project_identifier": "proj_67890", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_event_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_event_example_call_tool.py deleted file mode 100644 index a65207acb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_event_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentEvent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_id': 'evt_12345', 'project_identifier': 'proj_67890', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_event_values_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_event_values_example_call_tool.js deleted file mode 100644 index 8e44004b2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_event_values_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentEventValues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "output_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_event_values_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_event_values_example_call_tool.py deleted file mode 100644 index 7627755cb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_event_values_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentEventValues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'output_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_export_content_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_export_content_example_call_tool.js deleted file mode 100644 index e79ea3ade..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_export_content_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentExportContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exported_asset_id": 12345, - "project_identifier": "proj-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_export_content_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_export_content_example_call_tool.py deleted file mode 100644 index 7da2a6cff..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_export_content_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentExportContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exported_asset_id': 12345, 'project_identifier': 'proj-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_export_run_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_export_run_example_call_tool.js deleted file mode 100644 index 2debc0fec..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_export_run_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentExportRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "batch_export_run_id": "987e6543-e21b-45d6-b123-456789abcdef", - "project_id": "proj-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_export_run_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_export_run_example_call_tool.py deleted file mode 100644 index 21b9ef875..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_export_run_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentExportRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', - 'batch_export_run_id': '987e6543-e21b-45d6-b123-456789abcdef', - 'project_id': 'proj-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_exports_example_call_tool.js deleted file mode 100644 index 7e281d964..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_exports_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "export_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_exports_example_call_tool.py deleted file mode 100644 index 9898719d5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_exports_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'export_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_group_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_group_activity_example_call_tool.js deleted file mode 100644 index 302097494..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_group_activity_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentGroupActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_type_index": 1, - "project_id": "proj_12345", - "user_id_for_group_retrieval": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_group_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_group_activity_example_call_tool.py deleted file mode 100644 index 6b7600c4c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_group_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentGroupActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_type_index': 1, 'project_id': 'proj_12345', 'user_id_for_group_retrieval': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_hog_function_icons_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_hog_function_icons_example_call_tool.js deleted file mode 100644 index 6ee9c373c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_hog_function_icons_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentHogFunctionIcons"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_hog_function_icons_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_hog_function_icons_example_call_tool.py deleted file mode 100644 index ffcfce297..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_hog_function_icons_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentHogFunctionIcons" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_insight_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_insight_activity_example_call_tool.js deleted file mode 100644 index e1fe27510..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_insight_activity_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentInsightActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "insight_id": 123, - "project_id": "proj_456", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_insight_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_insight_activity_example_call_tool.py deleted file mode 100644 index d801a99a3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_insight_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentInsightActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'insight_id': 123, 'project_id': 'proj_456', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_log_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_log_attributes_example_call_tool.js deleted file mode 100644 index 105ba390a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_log_attributes_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentLogAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_log_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_log_attributes_example_call_tool.py deleted file mode 100644 index 6953fd002..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_log_attributes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentLogAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_logs_example_call_tool.js deleted file mode 100644 index 7f40f1636..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_logs_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_logs_example_call_tool.py deleted file mode 100644 index 53a37f068..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_logs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_logs_values_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_logs_values_example_call_tool.js deleted file mode 100644 index 0360c3d0e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_logs_values_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentLogsValues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_logs_values_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_logs_values_example_call_tool.py deleted file mode 100644 index f046fa457..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_logs_values_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentLogsValues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_property_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_property_definitions_example_call_tool.js deleted file mode 100644 index 74a0a2ee9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_property_definitions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentPropertyDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_property_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_property_definitions_example_call_tool.py deleted file mode 100644 index acb2a7341..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_property_definitions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentPropertyDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_property_values_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_property_values_example_call_tool.js deleted file mode 100644 index 2e32876f6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_property_values_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentPropertyValues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_property_values_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_property_values_example_call_tool.py deleted file mode 100644 index 88c78f33a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_property_values_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentPropertyValues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_query_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_query_activity_example_call_tool.js deleted file mode 100644 index c2d394d28..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_query_activity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentQueryActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "query_id": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_query_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_query_activity_example_call_tool.py deleted file mode 100644 index d76eb3f86..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_query_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentQueryActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'query_id': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_session_properties_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_session_properties_example_call_tool.js deleted file mode 100644 index 7d96dc984..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_session_properties_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEnvironmentSessionProperties"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_session_properties_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_session_properties_example_call_tool.py deleted file mode 100644 index 1e7f28b50..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_environment_session_properties_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEnvironmentSessionProperties" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_grouping_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_grouping_rules_example_call_tool.js deleted file mode 100644 index dc47712b0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_grouping_rules_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveErrorGroupingRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "grouping_rule_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id_for_access": "proj_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_grouping_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_grouping_rules_example_call_tool.py deleted file mode 100644 index 818ed5f09..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_grouping_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveErrorGroupingRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'grouping_rule_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id_for_access': 'proj_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_assignment_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_assignment_rules_example_call_tool.js deleted file mode 100644 index 06bd2d5a7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_assignment_rules_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveErrorTrackingAssignmentRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "error_tracking_rule_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_assignment_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_assignment_rules_example_call_tool.py deleted file mode 100644 index 743bc7134..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_assignment_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveErrorTrackingAssignmentRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'error_tracking_rule_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_release_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_release_example_call_tool.js deleted file mode 100644 index f1f954ecb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_release_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveErrorTrackingRelease"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-123", - "release_uuid": "e7b3c1a2-4f5e-4b6a-8c3d-1f2e3a4b5c6d" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_release_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_release_example_call_tool.py deleted file mode 100644 index f760b4f18..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_release_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveErrorTrackingRelease" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-123', 'release_uuid': 'e7b3c1a2-4f5e-4b6a-8c3d-1f2e3a4b5c6d' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_release_hash_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_release_hash_example_call_tool.js deleted file mode 100644 index cfcb3275e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_release_hash_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveErrorTrackingReleaseHash"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "release_hash_id": "abcde12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_release_hash_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_release_hash_example_call_tool.py deleted file mode 100644 index 3c4f4b26d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_release_hash_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveErrorTrackingReleaseHash" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'release_hash_id': 'abcde12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_symbol_set_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_symbol_set_example_call_tool.js deleted file mode 100644 index 7a9b22360..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_symbol_set_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveErrorTrackingSymbolSet"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "error_tracking_symbol_set_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_symbol_set_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_symbol_set_example_call_tool.py deleted file mode 100644 index ff059ab36..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_error_tracking_symbol_set_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveErrorTrackingSymbolSet" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'error_tracking_symbol_set_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definition_example_call_tool.js deleted file mode 100644 index 8a0f97f8e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definition_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEventDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_definition_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definition_example_call_tool.py deleted file mode 100644 index 05bba499b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEventDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_definition_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definition_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definition_metrics_example_call_tool.js deleted file mode 100644 index 1b5d4eb86..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definition_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEventDefinitionMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_definition_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definition_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definition_metrics_example_call_tool.py deleted file mode 100644 index 93beba0a3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definition_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEventDefinitionMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_definition_id': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'project-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definitions_example_call_tool.js deleted file mode 100644 index 84e1da42f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definitions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEventDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definitions_example_call_tool.py deleted file mode 100644 index 13f891e8d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_definitions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEventDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_details_example_call_tool.js deleted file mode 100644 index 738a395ff..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEventDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_id": "evt123", - "project_identifier": "proj456", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_details_example_call_tool.py deleted file mode 100644 index 89ef101d8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEventDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_id': 'evt123', 'project_identifier': 'proj456', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_values_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_values_example_call_tool.js deleted file mode 100644 index 6d1192991..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_values_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveEventValues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "output_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_values_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_values_example_call_tool.py deleted file mode 100644 index 30f353ccb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_event_values_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveEventValues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'output_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiment_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiment_metrics_example_call_tool.js deleted file mode 100644 index fd7a6f539..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiment_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveExperimentMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "experiment_metric_id": 12345, - "project_identifier": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiment_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiment_metrics_example_call_tool.py deleted file mode 100644 index 7781bea21..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiment_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveExperimentMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'experiment_metric_id': 12345, 'project_identifier': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiment_timeseries_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiment_timeseries_example_call_tool.js deleted file mode 100644 index ed8be02b6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiment_timeseries_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveExperimentTimeseries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "experiment_id": 123, - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiment_timeseries_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiment_timeseries_example_call_tool.py deleted file mode 100644 index c03aea818..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiment_timeseries_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveExperimentTimeseries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'experiment_id': 123, 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiments_flag_status_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiments_flag_status_example_call_tool.js deleted file mode 100644 index 31bd7dc3e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiments_flag_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveExperimentsFlagStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiments_flag_status_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiments_flag_status_example_call_tool.py deleted file mode 100644 index 94f4d0d09..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_experiments_flag_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveExperimentsFlagStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_exported_content_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_exported_content_example_call_tool.js deleted file mode 100644 index 28d2856c6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_exported_content_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveExportedContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exported_asset_id": 12345, - "project_identifier": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_exported_content_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_exported_content_example_call_tool.py deleted file mode 100644 index a6b757606..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_exported_content_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveExportedContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exported_asset_id': 12345, 'project_identifier': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_activity_example_call_tool.js deleted file mode 100644 index 0c2cc14b0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_activity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveFeatureFlagActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "feature_flag_id": 123, - "project_identifier": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_activity_example_call_tool.py deleted file mode 100644 index 142083266..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveFeatureFlagActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'feature_flag_id': 123, 'project_identifier': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_config_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_config_example_call_tool.js deleted file mode 100644 index cc28f1493..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_config_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveFeatureFlagConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "feature_flag_identifier": 123, - "project_identifier": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_config_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_config_example_call_tool.py deleted file mode 100644 index fec65c718..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveFeatureFlagConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'feature_flag_identifier': 123, 'project_identifier': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_status_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_status_example_call_tool.js deleted file mode 100644 index 47752773e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveFeatureFlagStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "feature_flag_id": 123, - "project_identifier": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_status_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_status_example_call_tool.py deleted file mode 100644 index f12b38606..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flag_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveFeatureFlagStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'feature_flag_id': 123, 'project_identifier': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_activity_example_call_tool.js deleted file mode 100644 index d14ab9e64..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_activity_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveFeatureFlagsActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "project-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_activity_example_call_tool.py deleted file mode 100644 index d48ef7450..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveFeatureFlagsActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'project-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_evaluation_reasons_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_evaluation_reasons_example_call_tool.js deleted file mode 100644 index 75d7e12b2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_evaluation_reasons_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveFeatureFlagsEvaluationReasons"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_for_feature_flags": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_evaluation_reasons_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_evaluation_reasons_example_call_tool.py deleted file mode 100644 index 64b912a4a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_evaluation_reasons_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveFeatureFlagsEvaluationReasons" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_for_feature_flags': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_example_call_tool.js deleted file mode 100644 index 24fee539a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveFeatureFlags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "feature_flag_identifier": 123, - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_example_call_tool.py deleted file mode 100644 index bca7c8b4f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_feature_flags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveFeatureFlags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'feature_flag_identifier': 123, 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_file_system_info_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_file_system_info_example_call_tool.js deleted file mode 100644 index 12f84dbcb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_file_system_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveFileSystemInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_system_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_file_system_info_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_file_system_info_example_call_tool.py deleted file mode 100644 index 41ee9cace..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_file_system_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveFileSystemInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_system_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_file_system_shortcut_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_file_system_shortcut_example_call_tool.js deleted file mode 100644 index d30f61113..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_file_system_shortcut_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveFileSystemShortcut"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_system_shortcut_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_file_system_shortcut_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_file_system_shortcut_example_call_tool.py deleted file mode 100644 index 0f31e53b2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_file_system_shortcut_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveFileSystemShortcut" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_system_shortcut_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_google_accessible_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_google_accessible_accounts_example_call_tool.js deleted file mode 100644 index 9dc700b20..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_google_accessible_accounts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveGoogleAccessibleAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_id": "proj-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_google_accessible_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_google_accessible_accounts_example_call_tool.py deleted file mode 100644 index 71fed1ace..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_google_accessible_accounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveGoogleAccessibleAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_id': 'proj-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_google_conversion_data_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_google_conversion_data_example_call_tool.js deleted file mode 100644 index d8f9440a1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_google_conversion_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveGoogleConversionData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_id": "proj-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_google_conversion_data_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_google_conversion_data_example_call_tool.py deleted file mode 100644 index 24efea045..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_google_conversion_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveGoogleConversionData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_id': 'proj-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_activity_example_call_tool.js deleted file mode 100644 index f63977fb4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_activity_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveGroupActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_type_id": 1, - "project_identifier": "proj-12345", - "user_id_for_group_retrieval": "user-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_activity_example_call_tool.py deleted file mode 100644 index 7b0936d80..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_activity_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveGroupActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_type_id': 1, - 'project_identifier': 'proj-12345', - 'user_id_for_group_retrieval': 'user-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_property_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_property_definitions_example_call_tool.js deleted file mode 100644 index 62a4bb054..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_property_definitions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveGroupPropertyDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_property_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_property_definitions_example_call_tool.py deleted file mode 100644 index 61c515d2c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_property_definitions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveGroupPropertyDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_property_values_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_property_values_example_call_tool.js deleted file mode 100644 index 38f63295d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_property_values_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveGroupPropertyValues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_property_values_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_property_values_example_call_tool.py deleted file mode 100644 index c1967e46c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_property_values_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveGroupPropertyValues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_type_metric_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_type_metric_example_call_tool.js deleted file mode 100644 index 1627d89df..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_type_metric_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveGroupTypeMetric"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_type_index": 1, - "group_usage_metric_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_type_metric_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_type_metric_example_call_tool.py deleted file mode 100644 index 869ba5b22..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_group_type_metric_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveGroupTypeMetric" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_type_index': 1, - 'group_usage_metric_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_historical_app_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_historical_app_metrics_example_call_tool.js deleted file mode 100644 index ec2628593..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_historical_app_metrics_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveHistoricalAppMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "export_id": "export_12345", - "plugin_configuration_id": "plugin_67890", - "project_id": "project_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_historical_app_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_historical_app_metrics_example_call_tool.py deleted file mode 100644 index 977b03787..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_historical_app_metrics_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveHistoricalAppMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'export_id': 'export_12345', - 'plugin_configuration_id': 'plugin_67890', - 'project_id': 'project_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_icon_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_icon_example_call_tool.js deleted file mode 100644 index 1faccc3e5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_icon_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveHogFunctionIcon"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_icon_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_icon_example_call_tool.py deleted file mode 100644 index 744dc727b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_icon_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveHogFunctionIcon" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_logs_example_call_tool.js deleted file mode 100644 index e95f906f3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_logs_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveHogFunctionLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hog_function_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-abc-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_logs_example_call_tool.py deleted file mode 100644 index 3ca5e358c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_logs_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveHogFunctionLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hog_function_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project-abc-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_metrics_example_call_tool.js deleted file mode 100644 index 27d74f844..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_metrics_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveHogFunctionMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hog_function_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_metrics_example_call_tool.py deleted file mode 100644 index 9e3ff6701..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_metrics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveHogFunctionMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hog_function_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'project-xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_metrics_totals_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_metrics_totals_example_call_tool.js deleted file mode 100644 index 261febc75..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_metrics_totals_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveHogFunctionMetricsTotals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hog_function_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_metrics_totals_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_metrics_totals_example_call_tool.py deleted file mode 100644 index cf6127e5e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_hog_function_metrics_totals_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveHogFunctionMetricsTotals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hog_function_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_insight_data_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_insight_data_example_call_tool.js deleted file mode 100644 index edd427892..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_insight_data_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveInsightData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "insight_id": 1, - "project_id": "proj_123", - "output_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_insight_data_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_insight_data_example_call_tool.py deleted file mode 100644 index 45438e308..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_insight_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveInsightData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'insight_id': 1, 'project_id': 'proj_123', 'output_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_insights_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_insights_activity_example_call_tool.js deleted file mode 100644 index ae63f2661..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_insights_activity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveInsightsActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "output_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_insights_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_insights_activity_example_call_tool.py deleted file mode 100644 index 5c4c86341..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_insights_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveInsightsActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'output_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_authorization_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_authorization_example_call_tool.js deleted file mode 100644 index ec04a3d3d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_authorization_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveIntegrationAuthorization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_authorization_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_authorization_example_call_tool.py deleted file mode 100644 index 1a73223a5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_authorization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveIntegrationAuthorization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_channels_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_channels_example_call_tool.js deleted file mode 100644 index c701016d1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_channels_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveIntegrationChannels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_channels_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_channels_example_call_tool.py deleted file mode 100644 index e0befda03..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_channels_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveIntegrationChannels" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_details_example_call_tool.js deleted file mode 100644 index 4e812da0c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveIntegrationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_identifier": "proj-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_details_example_call_tool.py deleted file mode 100644 index 2c017924e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveIntegrationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_identifier': 'proj-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_teams_example_call_tool.js deleted file mode 100644 index d80e9be23..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_teams_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveIntegrationTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 123, - "project_id": "proj_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_teams_example_call_tool.py deleted file mode 100644 index 2a3727173..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_integration_teams_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveIntegrationTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 123, 'project_id': 'proj_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_last_viewed_insights_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_last_viewed_insights_example_call_tool.js deleted file mode 100644 index 45174db95..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_last_viewed_insights_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveLastViewedInsights"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_last_viewed_insights_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_last_viewed_insights_example_call_tool.py deleted file mode 100644 index 0988e5387..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_last_viewed_insights_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveLastViewedInsights" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_linear_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_linear_teams_example_call_tool.js deleted file mode 100644 index 82f049a1f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_linear_teams_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveLinearTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_identifier": "proj-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_linear_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_linear_teams_example_call_tool.py deleted file mode 100644 index 282e84e2c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_linear_teams_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveLinearTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_identifier': 'proj-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_linkedin_ads_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_linkedin_ads_accounts_example_call_tool.js deleted file mode 100644 index aaa4d7012..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_linkedin_ads_accounts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveLinkedinAdsAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_linkedin_ads_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_linkedin_ads_accounts_example_call_tool.py deleted file mode 100644 index fa795ea2e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_linkedin_ads_accounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveLinkedinAdsAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_linkedin_ads_conversion_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_linkedin_ads_conversion_rules_example_call_tool.js deleted file mode 100644 index 499b7b77b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_linkedin_ads_conversion_rules_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveLinkedinAdsConversionRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_linkedin_ads_conversion_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_linkedin_ads_conversion_rules_example_call_tool.py deleted file mode 100644 index e285d3ccd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_linkedin_ads_conversion_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveLinkedinAdsConversionRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_local_feature_flags_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_local_feature_flags_example_call_tool.js deleted file mode 100644 index 01cae9dcb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_local_feature_flags_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveLocalFeatureFlags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "project_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_local_feature_flags_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_local_feature_flags_example_call_tool.py deleted file mode 100644 index 38700ce5f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_local_feature_flags_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveLocalFeatureFlags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'project_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_attributes_example_call_tool.js deleted file mode 100644 index d12d88f49..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_attributes_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveLogAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_attributes_example_call_tool.py deleted file mode 100644 index dc3388f27..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_attributes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveLogAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_exports_example_call_tool.js deleted file mode 100644 index f1d351030..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_exports_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveLogExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_exports_example_call_tool.py deleted file mode 100644 index c373f7e38..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_exports_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveLogExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_values_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_values_example_call_tool.js deleted file mode 100644 index f7bd55e9e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_values_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveLogValues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_values_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_values_example_call_tool.py deleted file mode 100644 index df8386ac5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_log_values_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveLogValues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_logs_for_file_system_views_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_logs_for_file_system_views_example_call_tool.js deleted file mode 100644 index 69c25c4bf..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_logs_for_file_system_views_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveLogsForFileSystemViews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hog_function_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_logs_for_file_system_views_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_logs_for_file_system_views_example_call_tool.py deleted file mode 100644 index 776dc015b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_logs_for_file_system_views_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveLogsForFileSystemViews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hog_function_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'proj-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_member_scoped_api_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_member_scoped_api_keys_example_call_tool.js deleted file mode 100644 index 18dc90806..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_member_scoped_api_keys_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveMemberScopedApiKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "user_uuid": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_member_scoped_api_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_member_scoped_api_keys_example_call_tool.py deleted file mode 100644 index 2d490dab2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_member_scoped_api_keys_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveMemberScopedApiKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'user_uuid': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_activity_example_call_tool.js deleted file mode 100644 index 701fcaa77..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_activity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveNotebookActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notebook_short_id": "nb123", - "project_id": "proj456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_activity_example_call_tool.py deleted file mode 100644 index 5ba6db04c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveNotebookActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notebook_short_id': 'nb123', 'project_id': 'proj456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_comments_example_call_tool.js deleted file mode 100644 index 8b20db9f3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_comments_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveNotebookComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_comments_example_call_tool.py deleted file mode 100644 index 912e4e0d5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveNotebookComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_details_example_call_tool.js deleted file mode 100644 index 39e80403b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveNotebookDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notebook_short_id": "nb123", - "project_identifier": "proj456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_details_example_call_tool.py deleted file mode 100644 index a5c9bfc65..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_notebook_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveNotebookDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notebook_short_id': 'nb123', 'project_identifier': 'proj456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persisted_environment_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persisted_environment_folder_example_call_tool.js deleted file mode 100644 index ffbd163be..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persisted_environment_folder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersistedEnvironmentFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "persisted_folder_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-abc-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persisted_environment_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persisted_environment_folder_example_call_tool.py deleted file mode 100644 index bbd09c169..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persisted_environment_folder_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersistedEnvironmentFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'persisted_folder_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project-abc-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persisted_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persisted_folder_example_call_tool.js deleted file mode 100644 index 63ee044f4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persisted_folder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersistedFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "persisted_folder_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persisted_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persisted_folder_example_call_tool.py deleted file mode 100644 index 72cb16076..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persisted_folder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersistedFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'persisted_folder_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_activity_example_call_tool.js deleted file mode 100644 index 898ae474f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_activity_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersonActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "person_id": 12345, - "project_id": "proj_67890", - "output_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_activity_example_call_tool.py deleted file mode 100644 index fc04362df..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersonActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'person_id': 12345, 'project_id': 'proj_67890', 'output_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_data_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_data_example_call_tool.js deleted file mode 100644 index b93cb7eb1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_data_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersonData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "person_identifier": 12345, - "project_id": "proj_67890", - "output_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_data_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_data_example_call_tool.py deleted file mode 100644 index f4d2733b0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersonData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'person_identifier': 12345, 'project_id': 'proj_67890', 'output_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_details_example_call_tool.js deleted file mode 100644 index 37d87b0f5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersonDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "person_id": 12345, - "project_identifier": "proj_67890", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_details_example_call_tool.py deleted file mode 100644 index d79c7b4eb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersonDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'person_id': 12345, 'project_identifier': 'proj_67890', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_properties_timeline_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_properties_timeline_example_call_tool.js deleted file mode 100644 index 3fa08aaeb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_properties_timeline_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersonPropertiesTimeline"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "person_id": 12345, - "project_id": "proj_67890", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_properties_timeline_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_properties_timeline_example_call_tool.py deleted file mode 100644 index 3c909aa74..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_properties_timeline_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersonPropertiesTimeline" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'person_id': 12345, 'project_id': 'proj_67890', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_property_timeline_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_property_timeline_example_call_tool.js deleted file mode 100644 index 443ffb540..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_property_timeline_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersonPropertyTimeline"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "person_identifier": 12345, - "project_id": "proj_67890", - "output_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_property_timeline_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_property_timeline_example_call_tool.py deleted file mode 100644 index 0a6ebc06f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_property_timeline_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersonPropertyTimeline" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'person_identifier': 12345, 'project_id': 'proj_67890', 'output_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_stickiness_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_stickiness_example_call_tool.js deleted file mode 100644 index 1d31ad18c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_stickiness_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersonStickiness"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj_12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_stickiness_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_stickiness_example_call_tool.py deleted file mode 100644 index c8fa19b63..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_person_stickiness_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersonStickiness" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj_12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_cohorts_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_cohorts_example_call_tool.js deleted file mode 100644 index 6efed87d1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_cohorts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersonsCohorts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_cohorts_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_cohorts_example_call_tool.py deleted file mode 100644 index ac293b6cd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_cohorts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersonsCohorts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_data_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_data_example_call_tool.js deleted file mode 100644 index d6882c4e0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersonsData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_data_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_data_example_call_tool.py deleted file mode 100644 index 438a23294..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersonsData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_funnel_correlation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_funnel_correlation_example_call_tool.js deleted file mode 100644 index b872e15db..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_funnel_correlation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersonsFunnelCorrelation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_funnel_correlation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_funnel_correlation_example_call_tool.py deleted file mode 100644 index bd15dd22d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_funnel_correlation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersonsFunnelCorrelation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_funnel_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_funnel_example_call_tool.js deleted file mode 100644 index 23b4ae681..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_funnel_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersonsFunnel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "output_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_funnel_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_funnel_example_call_tool.py deleted file mode 100644 index 10c254cd5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_funnel_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersonsFunnel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'output_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_lifecycle_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_lifecycle_example_call_tool.js deleted file mode 100644 index b5ec7eb55..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_lifecycle_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersonsLifecycle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_lifecycle_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_lifecycle_example_call_tool.py deleted file mode 100644 index 1972b6112..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_lifecycle_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersonsLifecycle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_stickiness_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_stickiness_example_call_tool.js deleted file mode 100644 index 63f414f26..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_stickiness_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersonsStickiness"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_stickiness_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_stickiness_example_call_tool.py deleted file mode 100644 index 1e71afaa3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_stickiness_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersonsStickiness" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_trends_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_trends_example_call_tool.js deleted file mode 100644 index 5e931c176..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_trends_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePersonsTrends"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_trends_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_trends_example_call_tool.py deleted file mode 100644 index 1db9f441f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_persons_trends_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePersonsTrends" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_posthog_batch_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_posthog_batch_exports_example_call_tool.js deleted file mode 100644 index 131b993dc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_posthog_batch_exports_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePosthogBatchExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_posthog_batch_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_posthog_batch_exports_example_call_tool.py deleted file mode 100644 index fd65a712b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_posthog_batch_exports_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePosthogBatchExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_posthog_endpoint_run_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_posthog_endpoint_run_example_call_tool.js deleted file mode 100644 index 785884fed..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_posthog_endpoint_run_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePosthogEndpointRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "endpoint_name": "user_signup", - "project_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_posthog_endpoint_run_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_posthog_endpoint_run_example_call_tool.py deleted file mode 100644 index eacc872f4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_posthog_endpoint_run_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePosthogEndpointRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'endpoint_name': 'user_signup', 'project_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_action_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_action_example_call_tool.js deleted file mode 100644 index 3ed1e5b14..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_action_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveProjectAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": 123, - "project_id": "proj_456", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_action_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_action_example_call_tool.py deleted file mode 100644 index 95f9c6d61..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveProjectAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': 123, 'project_id': 'proj_456', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_activity_example_call_tool.js deleted file mode 100644 index 45871d4b8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_activity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveProjectActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org-12345", - "project_id": 987 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_activity_example_call_tool.py deleted file mode 100644 index a7347f794..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveProjectActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org-12345', 'project_id': 987 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_annotation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_annotation_example_call_tool.js deleted file mode 100644 index 4afda5adc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_annotation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveProjectAnnotation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "annotation_id": 12345, - "project_identifier": "project_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_annotation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_annotation_example_call_tool.py deleted file mode 100644 index bfcdea845..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_annotation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveProjectAnnotation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'annotation_id': 12345, 'project_identifier': 'project_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_export_example_call_tool.js deleted file mode 100644 index 104936e4e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_export_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveProjectExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "export_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_export_example_call_tool.py deleted file mode 100644 index 606c2f59a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_export_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveProjectExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'export_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_groups_example_call_tool.js deleted file mode 100644 index c8da8948b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_groups_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveProjectGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_key_to_find": "dev_team", - "group_type_index": 1, - "project_id": "proj_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_groups_example_call_tool.py deleted file mode 100644 index e8e8b4926..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveProjectGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_key_to_find': 'dev_team', 'group_type_index': 1, 'project_id': 'proj_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_hog_function_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_hog_function_example_call_tool.js deleted file mode 100644 index 0710f5641..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_hog_function_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveProjectHogFunction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hog_function_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_hog_function_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_hog_function_example_call_tool.py deleted file mode 100644 index 234976db2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_hog_function_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveProjectHogFunction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hog_function_id': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_icons_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_icons_example_call_tool.js deleted file mode 100644 index fe4dd4ac0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_icons_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveProjectIcons"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_icons_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_icons_example_call_tool.py deleted file mode 100644 index 617b251eb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_icons_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveProjectIcons" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_session_values_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_session_values_example_call_tool.js deleted file mode 100644 index ba2dd05e5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_session_values_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveProjectSessionValues"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_session_values_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_session_values_example_call_tool.py deleted file mode 100644 index 9e6206ae4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_project_session_values_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveProjectSessionValues" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_property_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_property_definitions_example_call_tool.js deleted file mode 100644 index f24d73840..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_property_definitions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrievePropertyDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "property_definition_id": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_property_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_property_definitions_example_call_tool.py deleted file mode 100644 index 5a82cbfd3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_property_definitions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrievePropertyDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'property_definition_id': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_proxy_record_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_proxy_record_example_call_tool.js deleted file mode 100644 index cf43e5977..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_proxy_record_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveProxyRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "proxy_record_id": "proxy_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_proxy_record_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_proxy_record_example_call_tool.py deleted file mode 100644 index bad5722d7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_proxy_record_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveProxyRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'proxy_record_id': 'proxy_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_query_from_project_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_query_from_project_example_call_tool.js deleted file mode 100644 index 734818a4a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_query_from_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveQueryFromProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "query_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_query_from_project_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_query_from_project_example_call_tool.py deleted file mode 100644 index c1d7d3194..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_query_from_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveQueryFromProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'query_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_query_log_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_query_log_details_example_call_tool.js deleted file mode 100644 index 83a78c8ee..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_query_log_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveQueryLogDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "query_id": "abcde12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_query_log_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_query_log_details_example_call_tool.py deleted file mode 100644 index 32b005ef8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_query_log_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveQueryLogDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'query_id': 'abcde12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_recently_viewed_insights_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_recently_viewed_insights_example_call_tool.js deleted file mode 100644 index c9209bf6e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_recently_viewed_insights_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveRecentlyViewedInsights"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_recently_viewed_insights_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_recently_viewed_insights_example_call_tool.py deleted file mode 100644 index ab373711a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_recently_viewed_insights_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveRecentlyViewedInsights" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_recording_playlist_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_recording_playlist_example_call_tool.js deleted file mode 100644 index c488c57f7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_recording_playlist_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveRecordingPlaylist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "playlist_short_id": "abc123", - "project_id": "proj456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_recording_playlist_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_recording_playlist_example_call_tool.py deleted file mode 100644 index 5b14c7cc1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_recording_playlist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveRecordingPlaylist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'playlist_short_id': 'abc123', 'project_id': 'proj456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_recording_playlist_views_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_recording_playlist_views_example_call_tool.js deleted file mode 100644 index 5ca8d2b4d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_recording_playlist_views_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveRecordingPlaylistViews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "recording_short_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_recording_playlist_views_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_recording_playlist_views_example_call_tool.py deleted file mode 100644 index f87d978fc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_recording_playlist_views_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveRecordingPlaylistViews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'recording_short_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_related_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_related_groups_example_call_tool.js deleted file mode 100644 index 468d9c03b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_related_groups_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveRelatedGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_type_index": 1, - "project_id": "12345", - "user_id_to_find_groups": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_related_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_related_groups_example_call_tool.py deleted file mode 100644 index abb503bb4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_related_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveRelatedGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_type_index': 1, 'project_id': '12345', 'user_id_to_find_groups': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_role_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_role_details_example_call_tool.js deleted file mode 100644 index 597d4885d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_role_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveRoleDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org-12345", - "role_id": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_role_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_role_details_example_call_tool.py deleted file mode 100644 index d0c896d49..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_role_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveRoleDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org-12345', 'role_id': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_saved_query_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_saved_query_activity_example_call_tool.js deleted file mode 100644 index e1cd0a89f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_saved_query_activity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveSavedQueryActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "saved_query_id": "e7b3c1f2-4a5e-4b8e-9c3d-8f1e2a3b4c5d" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_saved_query_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_saved_query_activity_example_call_tool.py deleted file mode 100644 index 68f0084c5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_saved_query_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveSavedQueryActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'saved_query_id': 'e7b3c1f2-4a5e-4b8e-9c3d-8f1e2a3b4c5d' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_property_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_property_definitions_example_call_tool.js deleted file mode 100644 index 89743d222..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_property_definitions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveSessionPropertyDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_property_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_property_definitions_example_call_tool.py deleted file mode 100644 index 485ea4aa8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_property_definitions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveSessionPropertyDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recording_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recording_example_call_tool.js deleted file mode 100644 index e79bfc77f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recording_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveSessionRecording"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "session_recording_id": "abcde12345-fghij67890-klmno" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recording_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recording_example_call_tool.py deleted file mode 100644 index eaa12ce46..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recording_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveSessionRecording" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'session_recording_id': 'abcde12345-fghij67890-klmno' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recording_playlists_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recording_playlists_example_call_tool.js deleted file mode 100644 index a3237db1a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recording_playlists_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveSessionRecordingPlaylists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "playlist_short_id": "abc123", - "project_id": "proj456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recording_playlists_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recording_playlists_example_call_tool.py deleted file mode 100644 index 354c779ed..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recording_playlists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveSessionRecordingPlaylists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'playlist_short_id': 'abc123', 'project_id': 'proj456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recordings_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recordings_example_call_tool.js deleted file mode 100644 index 2a20c053a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recordings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveSessionRecordings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "playlist_short_id": "abc123", - "project_id": "proj456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recordings_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recordings_example_call_tool.py deleted file mode 100644 index 35e7de11b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_session_recordings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveSessionRecordings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'playlist_short_id': 'abc123', 'project_id': 'proj456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_subscription_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_subscription_details_example_call_tool.js deleted file mode 100644 index 2d75e7904..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_subscription_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveSubscriptionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "subscription_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_subscription_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_subscription_details_example_call_tool.py deleted file mode 100644 index b80560692..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_subscription_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveSubscriptionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'subscription_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_survey_data_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_survey_data_example_call_tool.js deleted file mode 100644 index 5a99a0c65..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_survey_data_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveSurveyData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "survey_uuid": "abcde-12345-fghij-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_survey_data_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_survey_data_example_call_tool.py deleted file mode 100644 index 342bd4c78..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_survey_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveSurveyData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'survey_uuid': 'abcde-12345-fghij-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_twilio_phone_numbers_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_twilio_phone_numbers_example_call_tool.js deleted file mode 100644 index 500089dea..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_twilio_phone_numbers_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveTwilioPhoneNumbers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_id": 12345, - "project_id_for_twilio_integration": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_twilio_phone_numbers_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_twilio_phone_numbers_example_call_tool.py deleted file mode 100644 index 3a1fe26f1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_twilio_phone_numbers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveTwilioPhoneNumbers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_id': 12345, 'project_id_for_twilio_integration': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_unfiled_file_system_items_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_unfiled_file_system_items_example_call_tool.js deleted file mode 100644 index 0bbb07f00..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_unfiled_file_system_items_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveUnfiledFileSystemItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_unfiled_file_system_items_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_unfiled_file_system_items_example_call_tool.py deleted file mode 100644 index 1622da4d1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_unfiled_file_system_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveUnfiledFileSystemItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_unfiled_files_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_unfiled_files_example_call_tool.js deleted file mode 100644 index e47aa175a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_unfiled_files_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveUnfiledFiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_unfiled_files_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_unfiled_files_example_call_tool.py deleted file mode 100644 index 3f10dc8ad..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_unfiled_files_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveUnfiledFiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user2fa_setup_status_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_user2fa_setup_status_example_call_tool.js deleted file mode 100644 index 3c75ced2d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user2fa_setup_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveUser2faSetupStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user2fa_setup_status_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_user2fa_setup_status_example_call_tool.py deleted file mode 100644 index 32774626d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user2fa_setup_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveUser2faSetupStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_hedgehog_config_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_hedgehog_config_example_call_tool.js deleted file mode 100644 index 12a4c51d5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_hedgehog_config_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveUserHedgehogConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_hedgehog_config_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_hedgehog_config_example_call_tool.py deleted file mode 100644 index 10986c860..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_hedgehog_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveUserHedgehogConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_information_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_information_example_call_tool.js deleted file mode 100644 index 57a046b61..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_information_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveUserInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_unique_identifier": "user_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_information_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_information_example_call_tool.py deleted file mode 100644 index 4bca0d807..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_information_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveUserInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_unique_identifier': 'user_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_interview_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_interview_example_call_tool.js deleted file mode 100644 index 235d293d9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_interview_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveUserInterview"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "interview_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_interview_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_interview_example_call_tool.py deleted file mode 100644 index eb974161d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_user_interview_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveUserInterview" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'interview_id': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_warehouse_saved_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_warehouse_saved_query_example_call_tool.js deleted file mode 100644 index 486de0775..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_warehouse_saved_query_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveWarehouseSavedQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "proj-12345", - "query_uuid": "uuid-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_warehouse_saved_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_warehouse_saved_query_example_call_tool.py deleted file mode 100644 index 9193b3c70..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_warehouse_saved_query_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveWarehouseSavedQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 'proj-12345', 'query_uuid': 'uuid-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_warehouse_table_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_warehouse_table_example_call_tool.js deleted file mode 100644 index 4a760f17f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_warehouse_table_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveWarehouseTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "proj-12345", - "warehouse_table_id": "table-67890-uuid" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_warehouse_table_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_warehouse_table_example_call_tool.py deleted file mode 100644 index d11e319c1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_warehouse_table_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveWarehouseTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 'proj-12345', 'warehouse_table_id': 'table-67890-uuid' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_web_experiment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_web_experiment_example_call_tool.js deleted file mode 100644 index 0e9b7ce6c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_web_experiment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveWebExperiment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "web_experiment_id": 678 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_web_experiment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_web_experiment_example_call_tool.py deleted file mode 100644 index 12024d7cd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_web_experiment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveWebExperiment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'web_experiment_id': 678 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_web_vitals_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retrieve_web_vitals_example_call_tool.js deleted file mode 100644 index 23e46a33e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_web_vitals_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetrieveWebVitals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_pathname": "/home", - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retrieve_web_vitals_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retrieve_web_vitals_example_call_tool.py deleted file mode 100644 index e4457121b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retrieve_web_vitals_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetrieveWebVitals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_pathname': '/home', 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retry_batch_export_run_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retry_batch_export_run_example_call_tool.js deleted file mode 100644 index 7b17eef58..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retry_batch_export_run_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetryBatchExportRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_identifier": "123e4567-e89b-12d3-a456-426614174000", - "batch_export_run_id": "456e7890-e12b-34d5-b678-426614174001", - "project_id": "789e0123-e45f-67g8-h901-426614174002", - "request_body": "{\"status\":\"retry\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retry_batch_export_run_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retry_batch_export_run_example_call_tool.py deleted file mode 100644 index dc9d2eafb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retry_batch_export_run_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetryBatchExportRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'batch_export_run_id': '456e7890-e12b-34d5-b678-426614174001', - 'project_id': '789e0123-e45f-67g8-h901-426614174002', - 'request_body': '{"status":"retry"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/retry_export_run_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/retry_export_run_example_call_tool.js deleted file mode 100644 index 22db45ac3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retry_export_run_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RetryExportRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_identifier": "export_123", - "batch_export_run_id": "550e8400-e29b-41d4-a716-446655440000", - "project_id": "project_456", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/retry_export_run_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/retry_export_run_example_call_tool.py deleted file mode 100644 index 98991f01e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/retry_export_run_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RetryExportRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_identifier': 'export_123', - 'batch_export_run_id': '550e8400-e29b-41d4-a716-446655440000', - 'project_id': 'project_456', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/rollback_environments_migration_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/rollback_environments_migration_example_call_tool.js deleted file mode 100644 index 8aede6c25..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/rollback_environments_migration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RollbackEnvironmentsMigration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_uuid": "123e4567-e89b-12d3-a456-426614174000", - "request_body": "{\"source_env_id\":\"env1\",\"target_env_id\":\"env2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/rollback_environments_migration_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/rollback_environments_migration_example_call_tool.py deleted file mode 100644 index 365c00463..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/rollback_environments_migration_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RollbackEnvironmentsMigration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'request_body': '{"source_env_id":"env1","target_env_id":"env2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/rotate_environment_secret_token_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/rotate_environment_secret_token_example_call_tool.js deleted file mode 100644 index 1146fb9f3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/rotate_environment_secret_token_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RotateEnvironmentSecretToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "environment_id": 123, - "project_id": "proj_456", - "request_body": "{\"token\":\"new_secret_token\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/rotate_environment_secret_token_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/rotate_environment_secret_token_example_call_tool.py deleted file mode 100644 index 3ed079506..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/rotate_environment_secret_token_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RotateEnvironmentSecretToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'environment_id': 123, - 'project_id': 'proj_456', - 'request_body': '{"token":"new_secret_token"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/rotate_secret_token_for_project_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/rotate_secret_token_for_project_example_call_tool.js deleted file mode 100644 index 8ee49680e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/rotate_secret_token_for_project_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RotateSecretTokenForProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": 123, - "organization_id": "org_456", - "request_body": "{\"token\":\"new_secret_token\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/rotate_secret_token_for_project_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/rotate_secret_token_for_project_example_call_tool.py deleted file mode 100644 index bef8b7838..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/rotate_secret_token_for_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RotateSecretTokenForProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': 123, - 'organization_id': 'org_456', - 'request_body': '{"token":"new_secret_token"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/run_batch_export_test_step_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/run_batch_export_test_step_example_call_tool.js deleted file mode 100644 index 88451274a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/run_batch_export_test_step_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RunBatchExportTestStep"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_uuid": "123e4567-e89b-12d3-a456-426614174000", - "organization_id": "org-123", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/run_batch_export_test_step_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/run_batch_export_test_step_example_call_tool.py deleted file mode 100644 index 5f847ec9e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/run_batch_export_test_step_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RunBatchExportTestStep" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'organization_id': 'org-123', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/run_batch_exports_test_step_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/run_batch_exports_test_step_example_call_tool.js deleted file mode 100644 index 52cb70e5f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/run_batch_exports_test_step_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RunBatchExportsTestStep"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"exportType\":\"full\",\"includeMetadata\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/run_batch_exports_test_step_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/run_batch_exports_test_step_example_call_tool.py deleted file mode 100644 index 799ebe045..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/run_batch_exports_test_step_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RunBatchExportsTestStep" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"exportType":"full","includeMetadata":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/run_environment_test_step_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/run_environment_test_step_example_call_tool.js deleted file mode 100644 index 01797097a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/run_environment_test_step_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RunEnvironmentTestStep"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"testStep\":\"runTests\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/run_environment_test_step_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/run_environment_test_step_example_call_tool.py deleted file mode 100644 index af3f22201..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/run_environment_test_step_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RunEnvironmentTestStep" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"testStep":"runTests"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/run_saved_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/run_saved_query_example_call_tool.js deleted file mode 100644 index 347ee5dfc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/run_saved_query_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RunSavedQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "saved_query_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/run_saved_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/run_saved_query_example_call_tool.py deleted file mode 100644 index 3ded58cbd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/run_saved_query_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RunSavedQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'saved_query_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/run_test_step_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/run_test_step_batch_export_example_call_tool.js deleted file mode 100644 index 2eaeb747a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/run_test_step_batch_export_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RunTestStepBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/run_test_step_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/run_test_step_batch_export_example_call_tool.py deleted file mode 100644 index 4f658920b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/run_test_step_batch_export_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RunTestStepBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/run_test_step_new_for_batch_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/run_test_step_new_for_batch_exports_example_call_tool.js deleted file mode 100644 index 23a2e7546..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/run_test_step_new_for_batch_exports_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.RunTestStepNewForBatchExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org-12345", - "request_body": "{\"exportType\":\"full\",\"includeMetadata\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/run_test_step_new_for_batch_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/run_test_step_new_for_batch_exports_example_call_tool.py deleted file mode 100644 index 089a31082..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/run_test_step_new_for_batch_exports_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.RunTestStepNewForBatchExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org-12345', - 'request_body': '{"exportType":"full","includeMetadata":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/set_cohort_deleted_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/set_cohort_deleted_example_call_tool.js deleted file mode 100644 index 5d6c2907d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/set_cohort_deleted_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.SetCohortDeleted"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cohort_id": 12345, - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/set_cohort_deleted_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/set_cohort_deleted_example_call_tool.py deleted file mode 100644 index 90a83c62d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/set_cohort_deleted_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.SetCohortDeleted" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cohort_id': 12345, 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/set_dashboard_sharing_password_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/set_dashboard_sharing_password_example_call_tool.js deleted file mode 100644 index c698617ac..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/set_dashboard_sharing_password_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.SetDashboardSharingPassword"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_identifier": 123, - "project_id": "proj_456", - "request_body": "{\"password\":\"new_secure_password\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/set_dashboard_sharing_password_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/set_dashboard_sharing_password_example_call_tool.py deleted file mode 100644 index f9eba474b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/set_dashboard_sharing_password_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.SetDashboardSharingPassword" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_identifier': 123, - 'project_id': 'proj_456', - 'request_body': '{"password":"new_secure_password"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/set_dataset_item_deleted_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/set_dataset_item_deleted_example_call_tool.js deleted file mode 100644 index 8bdcf783c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/set_dataset_item_deleted_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.SetDatasetItemDeleted"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dataset_item_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/set_dataset_item_deleted_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/set_dataset_item_deleted_example_call_tool.py deleted file mode 100644 index 1815abcd4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/set_dataset_item_deleted_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.SetDatasetItemDeleted" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dataset_item_uuid': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'project-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/split_person_entity_create_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/split_person_entity_create_example_call_tool.js deleted file mode 100644 index 647c6f68c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/split_person_entity_create_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.SplitPersonEntityCreate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "person_identifier": 123, - "project_identifier": "proj_456", - "output_format": "json", - "request_body": "{\"name\":\"John Doe\",\"age\":30}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/split_person_entity_create_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/split_person_entity_create_example_call_tool.py deleted file mode 100644 index 34ad0c00d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/split_person_entity_create_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.SplitPersonEntityCreate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'person_identifier': 123, - 'project_identifier': 'proj_456', - 'output_format': 'json', - 'request_body': '{"name":"John Doe","age":30}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/start_batch_export_backfill_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/start_batch_export_backfill_example_call_tool.js deleted file mode 100644 index 8e7ca34d6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/start_batch_export_backfill_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.StartBatchExportBackfill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj_001", - "request_body": "{\"data\":\"sample\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/start_batch_export_backfill_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/start_batch_export_backfill_example_call_tool.py deleted file mode 100644 index 55f4a00f2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/start_batch_export_backfill_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.StartBatchExportBackfill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj_001', - 'request_body': '{"data":"sample"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/start_error_tracking_upload_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/start_error_tracking_upload_example_call_tool.js deleted file mode 100644 index 1cc2e3dfc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/start_error_tracking_upload_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.StartErrorTrackingUpload"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "team_id": 678, - "upload_creation_timestamp": "2023-10-01T12:00:00Z", - "upload_reference": "upload_001", - "upload_task_id": "task_001", - "storage_pointer": "s3://bucket/path/to/symbols" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/start_error_tracking_upload_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/start_error_tracking_upload_example_call_tool.py deleted file mode 100644 index d11fa4370..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/start_error_tracking_upload_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.StartErrorTrackingUpload" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'team_id': 678, - 'upload_creation_timestamp': '2023-10-01T12:00:00Z', - 'upload_reference': 'upload_001', - 'upload_task_id': 'task_001', - 'storage_pointer': 's3://bucket/path/to/symbols' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/start_symbol_upload_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/start_symbol_upload_example_call_tool.js deleted file mode 100644 index 3ab2db4ab..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/start_symbol_upload_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.StartSymbolUpload"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/start_symbol_upload_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/start_symbol_upload_example_call_tool.py deleted file mode 100644 index 34e3cda8b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/start_symbol_upload_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.StartSymbolUpload" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/stop_batch_export_run_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/stop_batch_export_run_example_call_tool.js deleted file mode 100644 index 34bf8bb58..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/stop_batch_export_run_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.StopBatchExportRun"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_run_identifier": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"cancel\":\"true\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/stop_batch_export_run_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/stop_batch_export_run_example_call_tool.py deleted file mode 100644 index 54de5619f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/stop_batch_export_run_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.StopBatchExportRun" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_run_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"cancel":"true"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/stop_insight_process_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/stop_insight_process_example_call_tool.js deleted file mode 100644 index 4f6b8101e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/stop_insight_process_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.StopInsightProcess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "proj_12345", - "response_format": "json", - "request_body": "{\"action\":\"cancel\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/stop_insight_process_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/stop_insight_process_example_call_tool.py deleted file mode 100644 index 08860f566..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/stop_insight_process_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.StopInsightProcess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': 'proj_12345', - 'response_format': 'json', - 'request_body': '{"action":"cancel"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/stream_dashboard_tiles_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/stream_dashboard_tiles_example_call_tool.js deleted file mode 100644 index 6a2775d7c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/stream_dashboard_tiles_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.StreamDashboardTiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dashboard_id": 123, - "project_id": "proj_456", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/stream_dashboard_tiles_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/stream_dashboard_tiles_example_call_tool.py deleted file mode 100644 index 42b471c72..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/stream_dashboard_tiles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.StreamDashboardTiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dashboard_id': 123, 'project_id': 'proj_456', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/summarize_survey_responses_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/summarize_survey_responses_example_call_tool.js deleted file mode 100644 index a36a418a0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/summarize_survey_responses_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.SummarizeSurveyResponses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "survey_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_001", - "request_body": "{\"summary\":\"This is a summary of the survey responses.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/summarize_survey_responses_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/summarize_survey_responses_example_call_tool.py deleted file mode 100644 index 7eee5bee2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/summarize_survey_responses_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.SummarizeSurveyResponses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'survey_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_001', - 'request_body': '{"summary":"This is a summary of the survey responses."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/suspend_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/suspend_batch_export_example_call_tool.js deleted file mode 100644 index 7cb4860a3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/suspend_batch_export_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.SuspendBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_1", - "request_body": "{\"action\":\"pause\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/suspend_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/suspend_batch_export_example_call_tool.py deleted file mode 100644 index aa5279709..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/suspend_batch_export_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.SuspendBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_1', - 'request_body': '{"action":"pause"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/terminate_batch_export_backfill_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/terminate_batch_export_backfill_example_call_tool.js deleted file mode 100644 index c404674e5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/terminate_batch_export_backfill_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.TerminateBatchExportBackfill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_identifier": "export_123", - "backfill_id": "550e8400-e29b-41d4-a716-446655440000", - "project_identifier": "project_456", - "request_body": "{\"cancel\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/terminate_batch_export_backfill_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/terminate_batch_export_backfill_example_call_tool.py deleted file mode 100644 index cd16dfcd7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/terminate_batch_export_backfill_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.TerminateBatchExportBackfill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_identifier': 'export_123', - 'backfill_id': '550e8400-e29b-41d4-a716-446655440000', - 'project_identifier': 'project_456', - 'request_body': '{"cancel": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/track_environment_insights_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/track_environment_insights_example_call_tool.js deleted file mode 100644 index c4201d2e9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/track_environment_insights_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.TrackEnvironmentInsights"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_project_id": "proj-12345", - "output_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/track_environment_insights_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/track_environment_insights_example_call_tool.py deleted file mode 100644 index fe1b2a50f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/track_environment_insights_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.TrackEnvironmentInsights" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_project_id': 'proj-12345', 'output_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/track_file_system_view_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/track_file_system_view_example_call_tool.js deleted file mode 100644 index d80dc89a8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/track_file_system_view_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.TrackFileSystemView"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "hog_function_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"action\":\"view\",\"resource\":\"/files/documents\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/track_file_system_view_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/track_file_system_view_example_call_tool.py deleted file mode 100644 index b04b3c92f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/track_file_system_view_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.TrackFileSystemView" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'hog_function_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"action":"view","resource":"/files/documents"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/track_file_system_views_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/track_file_system_views_example_call_tool.js deleted file mode 100644 index be580c228..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/track_file_system_views_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.TrackFileSystemViews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hog_function_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/track_file_system_views_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/track_file_system_views_example_call_tool.py deleted file mode 100644 index 73983efce..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/track_file_system_views_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.TrackFileSystemViews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hog_function_id': '123e4567-e89b-12d3-a456-426614174000', 'project_identifier': 'proj-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/track_fs_view_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/track_fs_view_example_call_tool.js deleted file mode 100644 index f8ccbdec5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/track_fs_view_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.TrackFsView"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "hog_function_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"action\":\"view\",\"resource\":\"file.txt\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/track_fs_view_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/track_fs_view_example_call_tool.py deleted file mode 100644 index a880d4047..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/track_fs_view_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.TrackFsView" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'hog_function_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"action":"view","resource":"file.txt"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/track_hog_function_invocation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/track_hog_function_invocation_example_call_tool.js deleted file mode 100644 index 2a0f65ea7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/track_hog_function_invocation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.TrackHogFunctionInvocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "hog_function_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/track_hog_function_invocation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/track_hog_function_invocation_example_call_tool.py deleted file mode 100644 index d41c1da05..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/track_hog_function_invocation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.TrackHogFunctionInvocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'hog_function_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/track_hog_function_views_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/track_hog_function_views_example_call_tool.js deleted file mode 100644 index a22415eaf..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/track_hog_function_views_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.TrackHogFunctionViews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "hog_function_uuid": "123e4567-e89b-12d3-a456-426614174000", - "target_project_id": "proj_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/track_hog_function_views_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/track_hog_function_views_example_call_tool.py deleted file mode 100644 index 1731d1488..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/track_hog_function_views_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.TrackHogFunctionViews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'hog_function_uuid': '123e4567-e89b-12d3-a456-426614174000', 'target_project_id': 'proj_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/track_survey_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/track_survey_activity_example_call_tool.js deleted file mode 100644 index 6215314d0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/track_survey_activity_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.TrackSurveyActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/track_survey_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/track_survey_activity_example_call_tool.py deleted file mode 100644 index 704b36d20..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/track_survey_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.TrackSurveyActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/trigger_batch_export_backfill_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/trigger_batch_export_backfill_example_call_tool.js deleted file mode 100644 index cbec601a3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/trigger_batch_export_backfill_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.TriggerBatchExportBackfill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/trigger_batch_export_backfill_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/trigger_batch_export_backfill_example_call_tool.py deleted file mode 100644 index c552191c3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/trigger_batch_export_backfill_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.TriggerBatchExportBackfill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/undo_materialization_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/undo_materialization_example_call_tool.js deleted file mode 100644 index db5268ad1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/undo_materialization_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UndoMaterialization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "saved_query_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"action\":\"undo\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/undo_materialization_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/undo_materialization_example_call_tool.py deleted file mode 100644 index c4bffd7b3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/undo_materialization_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UndoMaterialization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'saved_query_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"action":"undo"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/undo_materialization_posthog_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/undo_materialization_posthog_example_call_tool.js deleted file mode 100644 index b05323151..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/undo_materialization_posthog_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UndoMaterializationPosthog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "saved_query_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id_for_access": "proj-001", - "request_body": "{\"action\":\"revert\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/undo_materialization_posthog_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/undo_materialization_posthog_example_call_tool.py deleted file mode 100644 index 41ef013e4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/undo_materialization_posthog_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UndoMaterializationPosthog" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'saved_query_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id_for_access': 'proj-001', - 'request_body': '{"action":"revert"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/unpause_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/unpause_batch_export_example_call_tool.js deleted file mode 100644 index 01966046c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/unpause_batch_export_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UnpauseBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"status\":\"unpaused\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/unpause_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/unpause_batch_export_example_call_tool.py deleted file mode 100644 index 930f3dc63..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/unpause_batch_export_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UnpauseBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"status":"unpaused"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/unsubscribe_from_project_alerts_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/unsubscribe_from_project_alerts_example_call_tool.js deleted file mode 100644 index 854857a61..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/unsubscribe_from_project_alerts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UnsubscribeFromProjectAlerts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj_12345", - "subscription_id": 67890 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/unsubscribe_from_project_alerts_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/unsubscribe_from_project_alerts_example_call_tool.py deleted file mode 100644 index 9b065cd91..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/unsubscribe_from_project_alerts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UnsubscribeFromProjectAlerts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj_12345', 'subscription_id': 67890 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_action_partial_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_action_partial_example_call_tool.js deleted file mode 100644 index abdab4fb5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_action_partial_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateActionPartial"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "action_id": 123, - "project_identifier": "proj_456", - "response_format": "json", - "request_body": "{\"viewed\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_action_partial_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_action_partial_example_call_tool.py deleted file mode 100644 index bcef61293..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_action_partial_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateActionPartial" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'action_id': 123, - 'project_identifier': 'proj_456', - 'response_format': 'json', - 'request_body': '{"viewed":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_annotation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_annotation_example_call_tool.js deleted file mode 100644 index a8d9f5d65..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_annotation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateAnnotation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "annotation_id": 123, - "project_identifier": "proj_456", - "request_body": "{\"text\":\"Updated annotation text\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_annotation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_annotation_example_call_tool.py deleted file mode 100644 index 99561f3ac..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_annotation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateAnnotation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'annotation_id': 123, - 'project_identifier': 'proj_456', - 'request_body': '{"text":"Updated annotation text"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_batch_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_batch_export_example_call_tool.js deleted file mode 100644 index 891e0129e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_batch_export_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateBatchExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"setting\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_batch_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_batch_export_example_call_tool.py deleted file mode 100644 index 2dfacc3bf..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_batch_export_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateBatchExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"setting":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_batch_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_batch_exports_example_call_tool.js deleted file mode 100644 index 9bd5b116a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_batch_exports_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateBatchExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "organization_identifier": "org_001", - "request_body": "{\"setting\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_batch_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_batch_exports_example_call_tool.py deleted file mode 100644 index e27d8249e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_batch_exports_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateBatchExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', - 'organization_identifier': 'org_001', - 'request_body': '{"setting":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_cohort_views_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_cohort_views_example_call_tool.js deleted file mode 100644 index 51cc67126..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_cohort_views_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateCohortViews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "cohort_id": 123, - "project_id": "proj_456", - "request_body": "{\"viewed\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_cohort_views_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_cohort_views_example_call_tool.py deleted file mode 100644 index 3dd9d890a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_cohort_views_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateCohortViews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'cohort_id': 123, 'project_id': 'proj_456', 'request_body': '{"viewed": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_environment_example_call_tool.js deleted file mode 100644 index bead462e0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_environment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateDashboardEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_id": 123, - "project_identifier": "proj_456", - "response_format": "json", - "request_body": "{\"setting\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_environment_example_call_tool.py deleted file mode 100644 index 3955df54c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_environment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateDashboardEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_id': 123, - 'project_identifier': 'proj_456', - 'response_format': 'json', - 'request_body': '{"setting":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_example_call_tool.js deleted file mode 100644 index f1a5b817e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateDashboard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_example_call_tool.py deleted file mode 100644 index 813c0b3bd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateDashboard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_partial_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_partial_example_call_tool.js deleted file mode 100644 index ecb25dbb5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_partial_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateDashboardPartial"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_id": 123, - "project_id": "456", - "response_format": "json", - "request_body": "{\"title\":\"Updated Dashboard Title\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_partial_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_partial_example_call_tool.py deleted file mode 100644 index d800c5936..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_partial_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateDashboardPartial" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_id': 123, - 'project_id': '456', - 'response_format': 'json', - 'request_body': '{"title":"Updated Dashboard Title"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_template_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_template_example_call_tool.js deleted file mode 100644 index 9e651fb5d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_template_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateDashboardTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_template_id": "123e4567-e89b-12d3-a456-426614174000", - "dashboard_project_id": "proj-001", - "request_body": "{\"title\":\"Updated Dashboard Title\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_template_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_template_example_call_tool.py deleted file mode 100644 index ca8d2bebb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_template_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateDashboardTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_template_id': '123e4567-e89b-12d3-a456-426614174000', - 'dashboard_project_id': 'proj-001', - 'request_body': '{"title":"Updated Dashboard Title"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_tile_position_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_tile_position_example_call_tool.js deleted file mode 100644 index bb4e3b687..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_tile_position_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateDashboardTilePosition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_id": 123, - "project_id": "proj_456", - "response_format": "json", - "request_body": "{\"tile_id\": \"tile_789\", \"position\": {\"x\": 1, \"y\": 2}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_tile_position_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_tile_position_example_call_tool.py deleted file mode 100644 index 3c61a1685..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dashboard_tile_position_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateDashboardTilePosition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_id': 123, - 'project_id': 'proj_456', - 'response_format': 'json', - 'request_body': '{"tile_id": "tile_789", "position": {"x": 1, "y": 2}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_data_color_theme_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_data_color_theme_example_call_tool.js deleted file mode 100644 index e6bc08a9e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_data_color_theme_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateDataColorTheme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "color_theme_id": 1, - "project_identifier": "project_123", - "request_body": "{\"color\":\"#FF5733\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_data_color_theme_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_data_color_theme_example_call_tool.py deleted file mode 100644 index 8957725f0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_data_color_theme_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateDataColorTheme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'color_theme_id': 1, - 'project_identifier': 'project_123', - 'request_body': '{"color":"#FF5733"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dataset_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_dataset_example_call_tool.js deleted file mode 100644 index 7cd9e5c49..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dataset_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateDataset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dataset_identifier": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"name\":\"Updated Dataset\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dataset_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_dataset_example_call_tool.py deleted file mode 100644 index 8aebe2a4a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dataset_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateDataset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dataset_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"name":"Updated Dataset","description":"This is an updated description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dataset_info_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_dataset_info_example_call_tool.js deleted file mode 100644 index 4f4656294..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dataset_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateDatasetInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dataset_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_1", - "request_body": "{\"name\":\"Updated Dataset\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dataset_info_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_dataset_info_example_call_tool.py deleted file mode 100644 index bb721f1c6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dataset_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateDatasetInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dataset_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_1', - 'request_body': '{"name":"Updated Dataset","description":"This is an updated description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dataset_item_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_dataset_item_example_call_tool.js deleted file mode 100644 index a0f12305c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dataset_item_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateDatasetItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dataset_item_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-001", - "request_body": "{\"name\":\"Updated Item\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_dataset_item_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_dataset_item_example_call_tool.py deleted file mode 100644 index c322b6745..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_dataset_item_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateDatasetItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dataset_item_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project-001', - 'request_body': '{"name":"Updated Item","description":"This is an updated description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_default_group_columns_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_default_group_columns_example_call_tool.js deleted file mode 100644 index 51651b4dd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_default_group_columns_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateDefaultGroupColumns"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"default_columns\":[\"name\",\"status\",\"due_date\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_default_group_columns_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_default_group_columns_example_call_tool.py deleted file mode 100644 index 3af3025e0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_default_group_columns_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateDefaultGroupColumns" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"default_columns":["name","status","due_date"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_domain_partial_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_domain_partial_example_call_tool.js deleted file mode 100644 index 00b17bad0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_domain_partial_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateDomainPartial"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "domain_id": "123e4567-e89b-12d3-a456-426614174000", - "organization_identifier": "org-001", - "request_body": "{\"name\":\"example.com\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_domain_partial_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_domain_partial_example_call_tool.py deleted file mode 100644 index c7db86fd0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_domain_partial_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateDomainPartial" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'domain_id': '123e4567-e89b-12d3-a456-426614174000', - 'organization_identifier': 'org-001', - 'request_body': '{"name":"example.com","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_early_access_feature_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_early_access_feature_example_call_tool.js deleted file mode 100644 index 90da6eca1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_early_access_feature_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEarlyAccessFeature"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "early_access_feature_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"feature\":\"new-ui\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_early_access_feature_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_early_access_feature_example_call_tool.py deleted file mode 100644 index 05b6ed1e1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_early_access_feature_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEarlyAccessFeature" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'early_access_feature_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"feature":"new-ui","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_endpoint_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_endpoint_example_call_tool.js deleted file mode 100644 index e996a6461..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_endpoint_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEndpoint"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "endpoint_name": "updateUser", - "project_id": "12345", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_endpoint_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_endpoint_example_call_tool.py deleted file mode 100644 index afacadf18..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_endpoint_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEndpoint" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'endpoint_name': 'updateUser', - 'project_id': '12345', - 'request_body': '{"name":"John Doe","email":"john@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_env_file_system_shortcut_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_env_file_system_shortcut_example_call_tool.js deleted file mode 100644 index 144136358..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_env_file_system_shortcut_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvFileSystemShortcut"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "creation_timestamp": "2023-10-01T12:00:00Z", - "file_system_path": "/user/documents/shortcut", - "file_system_shortcut_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "shortcut_id": "shortcut-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_env_file_system_shortcut_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_env_file_system_shortcut_example_call_tool.py deleted file mode 100644 index 958f35d4d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_env_file_system_shortcut_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvFileSystemShortcut" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'creation_timestamp': '2023-10-01T12:00:00Z', - 'file_system_path': '/user/documents/shortcut', - 'file_system_shortcut_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'shortcut_id': 'shortcut-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_batch_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_batch_exports_example_call_tool.js deleted file mode 100644 index bec7107e0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_batch_exports_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentBatchExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"exportName\":\"Monthly Report\",\"format\":\"CSV\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_batch_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_batch_exports_example_call_tool.py deleted file mode 100644 index e526aaf23..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_batch_exports_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentBatchExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"exportName":"Monthly Report","format":"CSV"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_color_theme_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_color_theme_example_call_tool.js deleted file mode 100644 index cc6cdfa61..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_color_theme_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentColorTheme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "data_color_theme_id": 1, - "project_id": "12345", - "request_body": "{\"theme\":\"dark\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_color_theme_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_color_theme_example_call_tool.py deleted file mode 100644 index b5db38aa3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_color_theme_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentColorTheme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'data_color_theme_id': 1, - 'project_id': '12345', - 'request_body': '{"theme":"dark"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_dashboard_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_dashboard_example_call_tool.js deleted file mode 100644 index db116df17..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_dashboard_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentDashboard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dashboard_id": 123, - "project_id": "proj_456", - "response_format": "json", - "request_body": "{\"setting\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_dashboard_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_dashboard_example_call_tool.py deleted file mode 100644 index aecee8b84..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_dashboard_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentDashboard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dashboard_id': 123, - 'project_id': 'proj_456', - 'response_format': 'json', - 'request_body': '{"setting":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_dataset_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_dataset_example_call_tool.js deleted file mode 100644 index 808a60c42..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_dataset_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentDataset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dataset_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"name\":\"Updated Dataset\",\"description\":\"This is an updated dataset.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_dataset_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_dataset_example_call_tool.py deleted file mode 100644 index eba6309da..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_dataset_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentDataset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dataset_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"name":"Updated Dataset","description":"This is an updated dataset."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_dataset_item_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_dataset_item_example_call_tool.js deleted file mode 100644 index 3f4ae4550..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_dataset_item_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentDatasetItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dataset_item_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"name\":\"Updated Item\",\"value\":42}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_dataset_item_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_dataset_item_example_call_tool.py deleted file mode 100644 index feaff6c02..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_dataset_item_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentDatasetItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dataset_item_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"name":"Updated Item","value":42}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_endpoint_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_endpoint_example_call_tool.js deleted file mode 100644 index dddb9625e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_endpoint_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentEndpoint"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "endpoint_name": "my-endpoint", - "project_id": "12345", - "request_body": "{\"config\":\"new-config\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_endpoint_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_endpoint_example_call_tool.py deleted file mode 100644 index b5e04f2f2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_endpoint_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentEndpoint" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'endpoint_name': 'my-endpoint', - 'project_id': '12345', - 'request_body': '{"config":"new-config"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_evaluation_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_evaluation_example_call_tool.js deleted file mode 100644 index 93ceb73b9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_evaluation_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentEvaluation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "evaluation_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"status\":\"updated\",\"comments\":\"Evaluation updated successfully.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_evaluation_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_evaluation_example_call_tool.py deleted file mode 100644 index d083be410..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_evaluation_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentEvaluation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'evaluation_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"status":"updated","comments":"Evaluation updated successfully."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_export_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_export_example_call_tool.js deleted file mode 100644 index 71eaafba4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_export_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "batch_export_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_export_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_export_example_call_tool.py deleted file mode 100644 index 141b3e74a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_export_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'batch_export_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_file_system_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_file_system_example_call_tool.js deleted file mode 100644 index 362e0fa92..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_file_system_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentFileSystem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "file_system_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "abc123", - "request_body": "{\"update\":\"new_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_file_system_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_file_system_example_call_tool.py deleted file mode 100644 index 8292d1447..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_file_system_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentFileSystem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'file_system_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'abc123', - 'request_body': '{"update":"new_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_folder_example_call_tool.js deleted file mode 100644 index e54173f70..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_folder_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_creation_date": "2023-10-12T14:23:30Z", - "folder_id": "folder-123", - "folder_type": "home", - "folder_update_timestamp": "2023-10-15T10:00:00Z", - "folder_uuid": "550e8400-e29b-41d4-a716-446655440000", - "project_identifier": "project-456", - "folder_path": "/path/to/folder", - "folder_protocol_type": "http" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_folder_example_call_tool.py deleted file mode 100644 index 586d350f4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_folder_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_creation_date': '2023-10-12T14:23:30Z', - 'folder_id': 'folder-123', - 'folder_type': 'home', - 'folder_update_timestamp': '2023-10-15T10:00:00Z', - 'folder_uuid': '550e8400-e29b-41d4-a716-446655440000', - 'project_identifier': 'project-456', - 'folder_path': '/path/to/folder', - 'folder_protocol_type': 'http' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_group_property_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_group_property_example_call_tool.js deleted file mode 100644 index 448f391bd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_group_property_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentGroupProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "creation_timestamp": "2023-10-05T14:48:00Z", - "environment_group_key": "env-group-123", - "group_key": "group-456", - "group_type_identifier": 1, - "group_type_index_identifier": 0, - "project_id": "project-789", - "group_properties": "{\"property1\": \"value1\", \"property2\": \"value2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_group_property_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_group_property_example_call_tool.py deleted file mode 100644 index 8f6f41391..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_group_property_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentGroupProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'creation_timestamp': '2023-10-05T14:48:00Z', - 'environment_group_key': 'env-group-123', - 'group_key': 'group-456', - 'group_type_identifier': 1, - 'group_type_index_identifier': 0, - 'project_id': 'project-789', - 'group_properties': '{"property1": "value1", "property2": "value2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_insights_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_insights_example_call_tool.js deleted file mode 100644 index 9962f1b74..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_insights_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentInsights"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "insight_identifier": 123, - "project_identifier": "proj_456", - "output_format": "json", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_insights_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_insights_example_call_tool.py deleted file mode 100644 index d5d1feb64..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_insights_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentInsights" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'insight_identifier': 123, - 'project_identifier': 'proj_456', - 'output_format': 'json', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_insights_log_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_insights_log_example_call_tool.js deleted file mode 100644 index 36e2b200f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_insights_log_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentInsightsLog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "insight_identifier": 123, - "project_identifier": "proj_456", - "output_format": "json", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_insights_log_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_insights_log_example_call_tool.py deleted file mode 100644 index fa8cb2741..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_insights_log_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentInsightsLog" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'insight_identifier': 123, - 'project_identifier': 'proj_456', - 'output_format': 'json', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_subscription_example_call_tool.js deleted file mode 100644 index beed3888b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_subscription_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "subscription_identifier": 123, - "project_id": "proj_456", - "request_body": "{\"setting\":\"new_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_subscription_example_call_tool.py deleted file mode 100644 index e491d40d3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_subscription_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'subscription_identifier': 123, - 'project_id': 'proj_456', - 'request_body': '{"setting":"new_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_symbol_set_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_symbol_set_example_call_tool.js deleted file mode 100644 index 01a864351..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_symbol_set_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentSymbolSet"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "error_tracking_symbol_set_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id_for_symbol_set_update": "proj-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_symbol_set_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_symbol_set_example_call_tool.py deleted file mode 100644 index 88712b6ac..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_symbol_set_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentSymbolSet" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'error_tracking_symbol_set_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id_for_symbol_set_update': 'proj-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_theme_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_environment_theme_example_call_tool.js deleted file mode 100644 index bc46cedfe..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_theme_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEnvironmentTheme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "color_theme_id": 1, - "project_identifier": "project_123", - "request_body": "{\"theme\":\"dark\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_environment_theme_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_environment_theme_example_call_tool.py deleted file mode 100644 index bd589d97c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_environment_theme_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEnvironmentTheme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'color_theme_id': 1, - 'project_identifier': 'project_123', - 'request_body': '{"theme":"dark"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_suppression_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_error_suppression_rule_example_call_tool.js deleted file mode 100644 index 9c9ae7856..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_suppression_rule_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateErrorSuppressionRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "rule_id": "abcde", - "rule_order_key": 1, - "suppression_rule_filters": "error_type:critical" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_suppression_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_error_suppression_rule_example_call_tool.py deleted file mode 100644 index 082435929..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_suppression_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateErrorSuppressionRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'rule_id': 'abcde', - 'rule_order_key': 1, - 'suppression_rule_filters': 'error_type:critical' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_assignment_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_assignment_rules_example_call_tool.js deleted file mode 100644 index da851794b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_assignment_rules_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateErrorTrackingAssignmentRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "assignee_for_error_tracking": "user_67890", - "error_tracking_rule_id": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_assignment_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_assignment_rules_example_call_tool.py deleted file mode 100644 index ebee84eeb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_assignment_rules_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateErrorTrackingAssignmentRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', - 'assignee_for_error_tracking': 'user_67890', - 'error_tracking_rule_id': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_grouping_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_grouping_rules_example_call_tool.js deleted file mode 100644 index 35f7e5123..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_grouping_rules_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateErrorTrackingGroupingRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "assignee_user_id": "user_12345", - "filters_for_grouping_rules": "error_type:critical,severity:high", - "grouping_rule_id": "uuid-1234-5678-90ab-cdef12345678", - "priority_order_key": 1, - "project_id": "project_98765", - "rule_id": "rule_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_grouping_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_grouping_rules_example_call_tool.py deleted file mode 100644 index a184c3799..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_grouping_rules_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateErrorTrackingGroupingRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'assignee_user_id': 'user_12345', - 'filters_for_grouping_rules': 'error_type:critical,severity:high', - 'grouping_rule_id': 'uuid-1234-5678-90ab-cdef12345678', - 'priority_order_key': 1, - 'project_id': 'project_98765', - 'rule_id': 'rule_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_release_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_release_example_call_tool.js deleted file mode 100644 index 44e040761..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_release_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateErrorTrackingRelease"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "error_tracking_release_id": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "release_creation_date": "2023-10-31T14:30:00Z", - "release_version": "1.0.0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_release_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_release_example_call_tool.py deleted file mode 100644 index 2026a9858..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_release_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateErrorTrackingRelease" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'error_tracking_release_id': 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', - 'release_creation_date': '2023-10-31T14:30:00Z', - 'release_version': '1.0.0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_releases_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_releases_example_call_tool.js deleted file mode 100644 index 308ed2c02..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_releases_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateErrorTrackingReleases"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "created_at_timestamp": "2023-09-23T18:25:43.511Z", - "project_identifier": "12345", - "project_key": "my_project", - "release_hash_id": "abc123", - "release_id": "550e8400-e29b-41d4-a716-446655440000", - "release_version": "1.0.0", - "team_identifier": 42, - "update_id": "update_001", - "metadata_description": "Initial release for the project." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_releases_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_releases_example_call_tool.py deleted file mode 100644 index 0c995263b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_releases_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateErrorTrackingReleases" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'created_at_timestamp': '2023-09-23T18:25:43.511Z', - 'project_identifier': '12345', - 'project_key': 'my_project', - 'release_hash_id': 'abc123', - 'release_id': '550e8400-e29b-41d4-a716-446655440000', - 'release_version': '1.0.0', - 'team_identifier': 42, - 'update_id': 'update_001', - 'metadata_description': 'Initial release for the project.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_rules_example_call_tool.js deleted file mode 100644 index 3db713538..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_rules_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateErrorTrackingRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "assignee_identifier": "user123", - "assignment_rule_id": "550e8400-e29b-41d4-a716-446655440000", - "environment_id": "env-prod", - "filter_criteria": "error.type == 'critical'", - "project_id": "proj-456", - "update_order_key": 1, - "disable_error_data": "false" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_rules_example_call_tool.py deleted file mode 100644 index e91f6d8fa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_rules_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateErrorTrackingRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'assignee_identifier': 'user123', - 'assignment_rule_id': '550e8400-e29b-41d4-a716-446655440000', - 'environment_id': 'env-prod', - 'filter_criteria': "error.type == 'critical'", - 'project_id': 'proj-456', - 'update_order_key': 1, - 'disable_error_data': 'false' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_suppression_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_suppression_rules_example_call_tool.js deleted file mode 100644 index b9416e22e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_suppression_rules_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateErrorTrackingSuppressionRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filters": "error.status:500", - "project_identifier": "12345", - "rule_id": "rule-67890", - "suppression_rule_id": "uuid-abcde-12345", - "suppression_rule_order_key": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_suppression_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_suppression_rules_example_call_tool.py deleted file mode 100644 index abee4aed5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_suppression_rules_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateErrorTrackingSuppressionRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filters': 'error.status:500', - 'project_identifier': '12345', - 'rule_id': 'rule-67890', - 'suppression_rule_id': 'uuid-abcde-12345', - 'suppression_rule_order_key': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_symbols_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_symbols_example_call_tool.js deleted file mode 100644 index b583300b0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_symbols_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateErrorTrackingSymbols"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "error_tracking_symbol_set_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project-abc-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_symbols_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_symbols_example_call_tool.py deleted file mode 100644 index 89fbde868..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_error_tracking_symbols_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateErrorTrackingSymbols" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'error_tracking_symbol_set_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project-abc-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_event_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_event_definition_example_call_tool.js deleted file mode 100644 index 204239ca2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_event_definition_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateEventDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_definition_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_event_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_event_definition_example_call_tool.py deleted file mode 100644 index 831cf040b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_event_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateEventDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_definition_id': '123e4567-e89b-12d3-a456-426614174000', 'project_id': 'proj-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_experiment_details_example_call_tool.js deleted file mode 100644 index 1b0a41f3d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateExperimentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "experiment_id": 123, - "project_id": "proj_456", - "request_body": "{\"name\":\"Updated Experiment\",\"status\":\"running\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_experiment_details_example_call_tool.py deleted file mode 100644 index e26bc06c3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateExperimentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'experiment_id': 123, - 'project_id': 'proj_456', - 'request_body': '{"name":"Updated Experiment","status":"running"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_experiment_example_call_tool.js deleted file mode 100644 index af0807a4f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateExperiment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "experiment_id": 123, - "project_identifier": "project_abc", - "request_body": "{\"name\":\"Updated Experiment\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_experiment_example_call_tool.py deleted file mode 100644 index cee970908..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateExperiment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'experiment_id': 123, - 'project_identifier': 'project_abc', - 'request_body': '{"name":"Updated Experiment","description":"This is an updated description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_holdout_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_experiment_holdout_example_call_tool.js deleted file mode 100644 index 500b9b084..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_holdout_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateExperimentHoldout"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "experiment_holdout_id": 123, - "project_id": "proj_456", - "request_body": "{\"name\":\"Updated Holdout\",\"description\":\"This is an updated holdout.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_holdout_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_experiment_holdout_example_call_tool.py deleted file mode 100644 index f0aea9336..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_holdout_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateExperimentHoldout" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'experiment_holdout_id': 123, - 'project_id': 'proj_456', - 'request_body': '{"name":"Updated Holdout","description":"This is an updated holdout."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_experiment_metrics_example_call_tool.js deleted file mode 100644 index 7e350810c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_metrics_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateExperimentMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "experiment_metric_id": 123, - "project_identifier": "proj_456", - "request_body": "{\"metric\":\"accuracy\",\"value\":0.95}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_experiment_metrics_example_call_tool.py deleted file mode 100644 index 67ea2322d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_metrics_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateExperimentMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'experiment_metric_id': 123, - 'project_identifier': 'proj_456', - 'request_body': '{"metric":"accuracy","value":0.95}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_saved_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_experiment_saved_metrics_example_call_tool.js deleted file mode 100644 index dc36f3eaa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_saved_metrics_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateExperimentSavedMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "experiment_metric_id": 123, - "project_id": "proj_456", - "request_body": "{\"metric\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_saved_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_experiment_saved_metrics_example_call_tool.py deleted file mode 100644 index 545c9ae67..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_experiment_saved_metrics_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateExperimentSavedMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'experiment_metric_id': 123, - 'project_id': 'proj_456', - 'request_body': '{"metric":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_feature_flags_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_feature_flags_example_call_tool.js deleted file mode 100644 index 6cc522ff2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_feature_flags_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateFeatureFlags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "feature_flag_id": 123, - "project_identifier": "project_abc", - "request_body": "{\"enabled\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_feature_flags_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_feature_flags_example_call_tool.py deleted file mode 100644 index 51d453cb0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_feature_flags_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateFeatureFlags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'feature_flag_id': 123, - 'project_identifier': 'project_abc', - 'request_body': '{"enabled": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_file_system_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_file_system_example_call_tool.js deleted file mode 100644 index 52d4c63a7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_file_system_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateFileSystem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "file_system_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"setting\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_file_system_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_file_system_example_call_tool.py deleted file mode 100644 index 08936778f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_file_system_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateFileSystem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'file_system_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"setting":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_file_system_shortcut_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_file_system_shortcut_example_call_tool.js deleted file mode 100644 index 48a0a0a70..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_file_system_shortcut_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateFileSystemShortcut"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "file_system_shortcut_link": "https://example.com/shortcut", - "shortcut_id": "abcde-12345-fghij-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_file_system_shortcut_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_file_system_shortcut_example_call_tool.py deleted file mode 100644 index 7a5af6386..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_file_system_shortcut_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateFileSystemShortcut" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'file_system_shortcut_link': 'https://example.com/shortcut', - 'shortcut_id': 'abcde-12345-fghij-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_folder_info_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_folder_info_example_call_tool.js deleted file mode 100644 index 9e0135c75..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_folder_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateFolderInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "folder_id": "folder_67890", - "folder_path": "/my/folder", - "folder_type": "home" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_folder_info_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_folder_info_example_call_tool.py deleted file mode 100644 index 103e25fd4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_folder_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateFolderInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'folder_id': 'folder_67890', - 'folder_path': '/my/folder', - 'folder_type': 'home' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_group_dashboard_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_group_dashboard_example_call_tool.js deleted file mode 100644 index 2a34502e8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_group_dashboard_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateGroupDashboard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"dashboardName\":\"New Dashboard\",\"settings\":{\"theme\":\"dark\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_group_dashboard_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_group_dashboard_example_call_tool.py deleted file mode 100644 index f58dafbdf..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_group_dashboard_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateGroupDashboard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"dashboardName":"New Dashboard","settings":{"theme":"dark"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_group_property_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_group_property_example_call_tool.js deleted file mode 100644 index a4eb30889..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_group_property_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateGroupProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_identifier": "group_123", - "group_identifier_key": "unique_key_456", - "group_property_creation_date": "2023-10-05T14:48:00Z", - "group_type_index": 1, - "index_of_group_type": 0, - "project_id": "project_789", - "group_properties_value": "Updated group settings" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_group_property_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_group_property_example_call_tool.py deleted file mode 100644 index 938eec9d5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_group_property_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateGroupProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_identifier': 'group_123', - 'group_identifier_key': 'unique_key_456', - 'group_property_creation_date': '2023-10-05T14:48:00Z', - 'group_type_index': 1, - 'index_of_group_type': 0, - 'project_id': 'project_789', - 'group_properties_value': 'Updated group settings' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_group_type_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_group_type_metadata_example_call_tool.js deleted file mode 100644 index 81d2f30db..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_group_type_metadata_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateGroupTypeMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "default_columns": [ - "Name", - "Status", - "Created Date" - ], - "group_type_name_plural": "Tasks" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_group_type_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_group_type_metadata_example_call_tool.py deleted file mode 100644 index b910321c1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_group_type_metadata_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateGroupTypeMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', - 'default_columns': ['Name', 'Status', 'Created Date'], - 'group_type_name_plural': 'Tasks' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_group_type_metrics_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_group_type_metrics_example_call_tool.js deleted file mode 100644 index a3803713d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_group_type_metrics_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateGroupTypeMetrics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filters_criteria": "status='active'", - "group_type_index": 1, - "group_usage_metric_id": "123e4567-e89b-12d3-a456-426614174000", - "metric_id": "metric-001", - "metric_name": "Active Users", - "project_id": "project-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_group_type_metrics_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_group_type_metrics_example_call_tool.py deleted file mode 100644 index b8b015445..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_group_type_metrics_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateGroupTypeMetrics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filters_criteria': "status='active'", - 'group_type_index': 1, - 'group_usage_metric_id': '123e4567-e89b-12d3-a456-426614174000', - 'metric_id': 'metric-001', - 'metric_name': 'Active Users', - 'project_id': 'project-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_hog_function_view_log_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_hog_function_view_log_example_call_tool.js deleted file mode 100644 index 0c15629f2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_hog_function_view_log_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateHogFunctionViewLog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "hog_function_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_1", - "request_body": "{\"viewed_at\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_hog_function_view_log_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_hog_function_view_log_example_call_tool.py deleted file mode 100644 index 5d398ff00..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_hog_function_view_log_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateHogFunctionViewLog" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'hog_function_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_1', - 'request_body': '{"viewed_at":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_hog_function_views_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_hog_function_views_example_call_tool.js deleted file mode 100644 index c72a34019..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_hog_function_views_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateHogFunctionViews"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "hog_function_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"viewed_at\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_hog_function_views_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_hog_function_views_example_call_tool.py deleted file mode 100644 index 221693801..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_hog_function_views_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateHogFunctionViews" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'hog_function_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"viewed_at":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_hog_functions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_hog_functions_example_call_tool.js deleted file mode 100644 index d7c50524a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_hog_functions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateHogFunctions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "hog_function_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_1", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_hog_functions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_hog_functions_example_call_tool.py deleted file mode 100644 index c5619f9e7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_hog_functions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateHogFunctions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'hog_function_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_1', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_hog_functions_order_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_hog_functions_order_example_call_tool.js deleted file mode 100644 index 4288150fd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_hog_functions_order_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateHogFunctionsOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "request_body": "{\"functions_order\":[\"functionA\",\"functionB\",\"functionC\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_hog_functions_order_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_hog_functions_order_example_call_tool.py deleted file mode 100644 index 3e74ac559..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_hog_functions_order_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateHogFunctionsOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'request_body': '{"functions_order":["functionA","functionB","functionC"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_hogfunction_order_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_hogfunction_order_example_call_tool.js deleted file mode 100644 index c4b232b96..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_hogfunction_order_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateHogfunctionOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "proj123", - "request_body": "{\"functions\":[{\"id\":\"func1\",\"order\":1},{\"id\":\"func2\",\"order\":2}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_hogfunction_order_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_hogfunction_order_example_call_tool.py deleted file mode 100644 index 2afd82da0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_hogfunction_order_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateHogfunctionOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': 'proj123', - 'request_body': '{"functions":[{"id":"func1","order":1},{"id":"func2","order":2}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_insight_view_timestamps_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_insight_view_timestamps_example_call_tool.js deleted file mode 100644 index b301f343e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_insight_view_timestamps_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateInsightViewTimestamps"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "12345", - "response_format": "json", - "request_body": "{\"insight_ids\":[\"insight1\",\"insight2\"],\"timestamp\":\"2023-10-01T12:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_insight_view_timestamps_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_insight_view_timestamps_example_call_tool.py deleted file mode 100644 index 482ff013c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_insight_view_timestamps_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateInsightViewTimestamps" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': '12345', - 'response_format': 'json', - 'request_body': '{"insight_ids":["insight1","insight2"],"timestamp":"2023-10-01T12:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_insights_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_insights_example_call_tool.js deleted file mode 100644 index 599ae310d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_insights_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateInsights"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "insight_id": 123, - "project_id": "proj_456", - "output_format": "json", - "request_body": "{\"viewCount\":1}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_insights_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_insights_example_call_tool.py deleted file mode 100644 index fed99448b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_insights_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateInsights" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'insight_id': 123, - 'project_id': 'proj_456', - 'output_format': 'json', - 'request_body': '{"viewCount":1}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_insights_view_log_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_insights_view_log_example_call_tool.js deleted file mode 100644 index cdb1c8c74..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_insights_view_log_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateInsightsViewLog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "insight_id": 123, - "project_id": "proj_456", - "response_format": "json", - "request_body": "{\"viewed\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_insights_view_log_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_insights_view_log_example_call_tool.py deleted file mode 100644 index cd324f228..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_insights_view_log_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateInsightsViewLog" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'insight_id': 123, - 'project_id': 'proj_456', - 'response_format': 'json', - 'request_body': '{"viewed": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_metrics_for_group_type_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_metrics_for_group_type_example_call_tool.js deleted file mode 100644 index 69f5e08c2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_metrics_for_group_type_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateMetricsForGroupType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_type_position": 1, - "project_id": "12345", - "filter_conditions": "status:active", - "group_metric_name": "response_time" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_metrics_for_group_type_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_metrics_for_group_type_example_call_tool.py deleted file mode 100644 index 646e31a5c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_metrics_for_group_type_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateMetricsForGroupType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_type_position': 1, - 'project_id': '12345', - 'filter_conditions': 'status:active', - 'group_metric_name': 'response_time' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_notebook_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_notebook_details_example_call_tool.js deleted file mode 100644 index d599b1280..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_notebook_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateNotebookDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "target_project_id": "12345", - "notebook_short_id": "notebook_1", - "request_body": "{\"title\":\"Updated Notebook Title\",\"content\":\"[file_content]\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_notebook_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_notebook_details_example_call_tool.py deleted file mode 100644 index e19b2c7de..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_notebook_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateNotebookDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'target_project_id': '12345', - 'notebook_short_id': 'notebook_1', - 'request_body': '{"title":"Updated Notebook Title","content":"[file_content]"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_notebook_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_notebook_example_call_tool.js deleted file mode 100644 index 624f74542..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_notebook_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateNotebook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "notebook_short_id": "notebook1", - "request_body": "{\"title\":\"Updated Notebook Title\",\"content\":\"[file_content]\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_notebook_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_notebook_example_call_tool.py deleted file mode 100644 index d95eeb0d1..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_notebook_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateNotebook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'notebook_short_id': 'notebook1', - 'request_body': '{"title":"Updated Notebook Title","content":"[file_content]"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_organization_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_organization_details_example_call_tool.js deleted file mode 100644 index 98d302547..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_organization_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateOrganizationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123e4567-e89b-12d3-a456-426614174000", - "request_body": "{\"name\":\"New Organization Name\",\"address\":\"123 Main St\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_organization_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_organization_details_example_call_tool.py deleted file mode 100644 index a706c7b7f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_organization_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateOrganizationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123e4567-e89b-12d3-a456-426614174000', - 'request_body': '{"name":"New Organization Name","address":"123 Main St"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_organization_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_organization_domain_example_call_tool.js deleted file mode 100644 index 6ef3af0aa..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_organization_domain_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateOrganizationDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "domain_uuid": "123e4567-e89b-12d3-a456-426614174000", - "organization_id": "org-001", - "request_body": "{\"new_domain\":\"example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_organization_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_organization_domain_example_call_tool.py deleted file mode 100644 index 4c7635169..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_organization_domain_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateOrganizationDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'domain_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'organization_id': 'org-001', - 'request_body': '{"new_domain":"example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_organization_info_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_organization_info_example_call_tool.js deleted file mode 100644 index 6ae2485a8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_organization_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateOrganizationInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123e4567-e89b-12d3-a456-426614174000", - "request_body": "{\"name\":\"New Organization Name\",\"address\":\"123 New St\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_organization_info_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_organization_info_example_call_tool.py deleted file mode 100644 index 3ce6c76c3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_organization_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateOrganizationInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123e4567-e89b-12d3-a456-426614174000', - 'request_body': '{"name":"New Organization Name","address":"123 New St"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_organization_member_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_organization_member_details_example_call_tool.js deleted file mode 100644 index d2992e549..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_organization_member_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateOrganizationMemberDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org-12345", - "member_user_uuid": "user-67890", - "request_body": "{\"role\":\"admin\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_organization_member_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_organization_member_details_example_call_tool.py deleted file mode 100644 index a2ccafe6d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_organization_member_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateOrganizationMemberDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org-12345', - 'member_user_uuid': 'user-67890', - 'request_body': '{"role":"admin"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_organization_member_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_organization_member_example_call_tool.js deleted file mode 100644 index 74dc4c627..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_organization_member_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateOrganizationMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org-12345", - "user_uuid": "user-67890", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_organization_member_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_organization_member_example_call_tool.py deleted file mode 100644 index a0e5c0a18..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_organization_member_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateOrganizationMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org-12345', - 'user_uuid': 'user-67890', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_organization_project_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_organization_project_example_call_tool.js deleted file mode 100644 index ae04c013e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_organization_project_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateOrganizationProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": 123, - "organization_identifier": "org_456", - "request_body": "{\"name\":\"New Project Name\",\"description\":\"Updated project description\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_organization_project_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_organization_project_example_call_tool.py deleted file mode 100644 index cee4f16d2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_organization_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateOrganizationProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': 123, - 'organization_identifier': 'org_456', - 'request_body': '{"name":"New Project Name","description":"Updated project description"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_organization_role_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_organization_role_example_call_tool.js deleted file mode 100644 index 61ec5131f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_organization_role_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateOrganizationRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "role_uuid": "123e4567-e89b-12d3-a456-426614174000", - "organization_id": "org-001", - "request_body": "{\"permissions\": [\"read\", \"write\"], \"role_name\": \"Editor\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_organization_role_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_organization_role_example_call_tool.py deleted file mode 100644 index 6bb468967..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_organization_role_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateOrganizationRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'role_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'organization_id': 'org-001', - 'request_body': '{"permissions": ["read", "write"], "role_name": "Editor"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_persisted_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_persisted_folder_example_call_tool.js deleted file mode 100644 index b3b8005ca..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_persisted_folder_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdatePersistedFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "folder_creation_date": "2023-01-15T10:00:00Z", - "folder_id": "folder-123", - "folder_type": "home", - "persisted_folder_id": "uuid-456", - "project_id": "project-789", - "update_timestamp": "2023-10-01T12:34:56Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_persisted_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_persisted_folder_example_call_tool.py deleted file mode 100644 index 4654456e8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_persisted_folder_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdatePersistedFolder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'folder_creation_date': '2023-01-15T10:00:00Z', - 'folder_id': 'folder-123', - 'folder_type': 'home', - 'persisted_folder_id': 'uuid-456', - 'project_id': 'project-789', - 'update_timestamp': '2023-10-01T12:34:56Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_person_info_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_person_info_example_call_tool.js deleted file mode 100644 index bd626805d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_person_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdatePersonInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "person_name": "John Doe", - "person_properties": "{\"age\":30,\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_person_info_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_person_info_example_call_tool.py deleted file mode 100644 index c210177cd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_person_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdatePersonInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'person_name': 'John Doe', - 'person_properties': '{"age":30,"email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_person_properties_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_person_properties_example_call_tool.js deleted file mode 100644 index 96c2e8ea2..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_person_properties_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdatePersonProperties"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "person_id": 123, - "project_id": "proj_456", - "response_format": "json", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_person_properties_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_person_properties_example_call_tool.py deleted file mode 100644 index 7e33b661b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_person_properties_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdatePersonProperties" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'person_id': 123, - 'project_id': 'proj_456', - 'response_format': 'json', - 'request_body': '{"name":"John Doe","email":"john@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_person_property_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_person_property_example_call_tool.js deleted file mode 100644 index a3869febd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_person_property_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdatePersonProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "property_key": "email", - "property_value": "new_email@example.com", - "person_identifier": 123, - "project_identifier": "proj_456", - "output_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_person_property_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_person_property_example_call_tool.py deleted file mode 100644 index d03d46c5f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_person_property_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdatePersonProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'property_key': 'email', - 'property_value': 'new_email@example.com', - 'person_identifier': 123, - 'project_identifier': 'proj_456', - 'output_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_project_action_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_project_action_example_call_tool.js deleted file mode 100644 index b2c8cc106..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_project_action_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateProjectAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "action_id": 123, - "project_identifier": "proj_456", - "output_format": "json", - "request_body": "{\"name\":\"Update Action\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_project_action_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_project_action_example_call_tool.py deleted file mode 100644 index 70f42548e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_project_action_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateProjectAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'action_id': 123, - 'project_identifier': 'proj_456', - 'output_format': 'json', - 'request_body': '{"name":"Update Action","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_project_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_project_details_example_call_tool.js deleted file mode 100644 index 254e0d40b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_project_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateProjectDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": 123, - "organization_identifier": "org_456", - "request_body": "{\"name\":\"New Project Name\",\"description\":\"Updated project description\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_project_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_project_details_example_call_tool.py deleted file mode 100644 index 3b323dccc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_project_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateProjectDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': 123, - 'organization_identifier': 'org_456', - 'request_body': '{"name":"New Project Name","description":"Updated project description"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_project_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_project_environment_example_call_tool.js deleted file mode 100644 index 167046e63..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_project_environment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateProjectEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "environment_identifier": 1, - "project_identifier": "12345", - "request_body": "{\"intent\":\"update\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_project_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_project_environment_example_call_tool.py deleted file mode 100644 index f5d900f98..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_project_environment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateProjectEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'environment_identifier': 1, - 'project_identifier': '12345', - 'request_body': '{"intent":"update"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_project_onboarding_status_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_project_onboarding_status_example_call_tool.js deleted file mode 100644 index 78f894f77..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_project_onboarding_status_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateProjectOnboardingStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": 123, - "organization_identifier": "org_456", - "request_body": "{\"status\":\"completed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_project_onboarding_status_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_project_onboarding_status_example_call_tool.py deleted file mode 100644 index 84cc4d494..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_project_onboarding_status_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateProjectOnboardingStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': 123, - 'organization_identifier': 'org_456', - 'request_body': '{"status":"completed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_project_product_intent_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_project_product_intent_example_call_tool.js deleted file mode 100644 index a8ab4dae7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_project_product_intent_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateProjectProductIntent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": 123, - "organization_identifier": "org_456", - "request_body": "{\"intent\":\"update product details\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_project_product_intent_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_project_product_intent_example_call_tool.py deleted file mode 100644 index 3a05f36e3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_project_product_intent_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateProjectProductIntent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': 123, - 'organization_identifier': 'org_456', - 'request_body': '{"intent":"update product details"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_project_task_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_project_task_example_call_tool.js deleted file mode 100644 index 8a966d3ae..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_project_task_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateProjectTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "task_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"status\":\"in_progress\",\"priority\":\"high\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_project_task_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_project_task_example_call_tool.py deleted file mode 100644 index 6941d507f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_project_task_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateProjectTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'task_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"status":"in_progress","priority":"high"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_property_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_property_definition_example_call_tool.js deleted file mode 100644 index d43b6d766..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_property_definition_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdatePropertyDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "property_definition_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"name\":\"Updated Property\",\"type\":\"string\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_property_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_property_definition_example_call_tool.py deleted file mode 100644 index c52f0f08e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_property_definition_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdatePropertyDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'property_definition_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"name":"Updated Property","type":"string"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_property_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_property_definitions_example_call_tool.js deleted file mode 100644 index 87e3dc8df..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_property_definitions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdatePropertyDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "property_definition_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"name\":\"New Property\",\"type\":\"string\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_property_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_property_definitions_example_call_tool.py deleted file mode 100644 index a048be6e0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_property_definitions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdatePropertyDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'property_definition_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"name":"New Property","type":"string"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_proxy_record_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_proxy_record_example_call_tool.js deleted file mode 100644 index 40945d613..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_proxy_record_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateProxyRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "proxy_record_id": "12345", - "organization_id": "org-67890", - "request_body": "{\"name\":\"Updated Proxy\",\"type\":\"http\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_proxy_record_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_proxy_record_example_call_tool.py deleted file mode 100644 index 0bc67c655..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_proxy_record_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateProxyRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'proxy_record_id': '12345', - 'organization_id': 'org-67890', - 'request_body': '{"name":"Updated Proxy","type":"http"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_role_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_role_details_example_call_tool.js deleted file mode 100644 index d8b220d60..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_role_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateRoleDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "role_uuid": "123e4567-e89b-12d3-a456-426614174000", - "organization_id": "org-001", - "request_body": "{\"permissions\": [\"read\", \"write\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_role_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_role_details_example_call_tool.py deleted file mode 100644 index 4ee8c5eaf..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_role_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateRoleDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'role_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'organization_id': 'org-001', - 'request_body': '{"permissions": ["read", "write"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording2_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_session_recording2_example_call_tool.js deleted file mode 100644 index 76f3fc890..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording2_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateSessionRecording2"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "session_recording_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_1", - "request_body": "{\"name\":\"Updated Session Recording\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording2_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_session_recording2_example_call_tool.py deleted file mode 100644 index 8011475d0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording2_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateSessionRecording2" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'session_recording_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_1', - 'request_body': '{"name":"Updated Session Recording","description":"This is an updated ' - 'description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_example_call_tool.js deleted file mode 100644 index 5c427b1f5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateSessionRecording"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "session_recording_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_1", - "request_body": "{\"status\":\"updated\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_example_call_tool.py deleted file mode 100644 index 1c6091179..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateSessionRecording" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'session_recording_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_1', - 'request_body': '{"status":"updated"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_playlist_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_playlist_example_call_tool.js deleted file mode 100644 index 85a426af0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_playlist_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateSessionRecordingPlaylist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "playlist_short_id": "abcde", - "request_body": "{\"name\":\"Updated Playlist\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_playlist_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_playlist_example_call_tool.py deleted file mode 100644 index f21e5a457..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_playlist_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateSessionRecordingPlaylist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'playlist_short_id': 'abcde', - 'request_body': '{"name":"Updated Playlist","description":"This is an updated description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_sharing_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_sharing_example_call_tool.js deleted file mode 100644 index aa413f3ec..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_sharing_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateSessionRecordingSharing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "session_recording_id": "abcde", - "request_body": "{\"sharing_status\":\"public\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_sharing_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_sharing_example_call_tool.py deleted file mode 100644 index 70b53a218..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_session_recording_sharing_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateSessionRecordingSharing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'session_recording_id': 'abcde', - 'request_body': '{"sharing_status":"public"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_subscription_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_subscription_details_example_call_tool.js deleted file mode 100644 index 5312d6d88..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_subscription_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateSubscriptionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "subscription_id": 12345, - "project_identifier": "proj_001", - "request_body": "{\"name\":\"New Subscription Name\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_subscription_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_subscription_details_example_call_tool.py deleted file mode 100644 index 257a264d0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_subscription_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateSubscriptionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'subscription_id': 12345, - 'project_identifier': 'proj_001', - 'request_body': '{"name":"New Subscription Name","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_subscription_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_subscription_settings_example_call_tool.js deleted file mode 100644 index 8909929f4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_subscription_settings_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateSubscriptionSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "subscription_id": 123, - "project_id": "proj_456", - "request_body": "{\"setting\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_subscription_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_subscription_settings_example_call_tool.py deleted file mode 100644 index 250156b9d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_subscription_settings_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateSubscriptionSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'subscription_id': 123, - 'project_id': 'proj_456', - 'request_body': '{"setting":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_survey_info_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_survey_info_example_call_tool.js deleted file mode 100644 index 67b8b9159..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_survey_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateSurveyInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "survey_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"name\":\"Customer Feedback\",\"description\":\"Annual survey for customer satisfaction.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_survey_info_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_survey_info_example_call_tool.py deleted file mode 100644 index 16ed91538..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_survey_info_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateSurveyInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'survey_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"name":"Customer Feedback","description":"Annual survey for customer ' - 'satisfaction."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_survey_tracking_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_survey_tracking_example_call_tool.js deleted file mode 100644 index 727b13b37..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_survey_tracking_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateSurveyTracking"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "survey_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"viewed\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_survey_tracking_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_survey_tracking_example_call_tool.py deleted file mode 100644 index b6fc1a458..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_survey_tracking_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateSurveyTracking" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'survey_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"viewed": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_table_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_table_schema_example_call_tool.js deleted file mode 100644 index 00e91722b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_table_schema_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateTableSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "warehouse_table_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"schema\":\"updated_schema\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_table_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_table_schema_example_call_tool.py deleted file mode 100644 index d80c3504d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_table_schema_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateTableSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'warehouse_table_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"schema":"updated_schema"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_task_in_project_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_task_in_project_example_call_tool.js deleted file mode 100644 index d899ada03..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_task_in_project_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateTaskInProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "task_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"status\":\"completed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_task_in_project_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_task_in_project_example_call_tool.py deleted file mode 100644 index 08d888b8d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_task_in_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateTaskInProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'task_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"status":"completed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_task_position_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_task_position_example_call_tool.js deleted file mode 100644 index f1a0092d7..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_task_position_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateTaskPosition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-12345", - "task_identifier": "task-67890", - "new_task_position": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_task_position_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_task_position_example_call_tool.py deleted file mode 100644 index 5f7cc90d4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_task_position_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateTaskPosition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-12345', 'task_identifier': 'task-67890', 'new_task_position': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_task_run_output_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_task_run_output_example_call_tool.js deleted file mode 100644 index 0c441b227..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_task_run_output_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateTaskRunOutput"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-123", - "task_identifier": "task-456", - "task_run_id": "550e8400-e29b-41d4-a716-446655440000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_task_run_output_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_task_run_output_example_call_tool.py deleted file mode 100644 index 419748074..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_task_run_output_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateTaskRunOutput" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-123', - 'task_identifier': 'task-456', - 'task_run_id': '550e8400-e29b-41d4-a716-446655440000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_task_run_status_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_task_run_status_example_call_tool.js deleted file mode 100644 index 63f6a89cd..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_task_run_status_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateTaskRunStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "task_run_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "task_run_task_identifier": "task-001", - "request_body": "{\"status\":\"completed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_task_run_status_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_task_run_status_example_call_tool.py deleted file mode 100644 index e4f494cd5..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_task_run_status_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateTaskRunStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'task_run_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'task_run_task_identifier': 'task-001', - 'request_body': '{"status":"completed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_user_details_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_user_details_example_call_tool.js deleted file mode 100644 index 615a6231a..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_user_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateUserDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_uuid": "123e4567-e89b-12d3-a456-426614174000", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_user_details_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_user_details_example_call_tool.py deleted file mode 100644 index 9e42fd1e9..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_user_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateUserDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_user_hedgehog_config_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_user_hedgehog_config_example_call_tool.js deleted file mode 100644 index e9300ad14..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_user_hedgehog_config_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateUserHedgehogConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_uuid": "123e4567-e89b-12d3-a456-426614174000", - "request_body": "{\"setting\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_user_hedgehog_config_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_user_hedgehog_config_example_call_tool.py deleted file mode 100644 index 917bf75eb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_user_hedgehog_config_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateUserHedgehogConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'request_body': '{"setting":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_user_info_example_call_tool.js deleted file mode 100644 index acac092d4..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_user_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_uuid": "123e4567-e89b-12d3-a456-426614174000", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_user_info_example_call_tool.py deleted file mode 100644 index 985cfb3e6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_user_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_user_interview_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_user_interview_environment_example_call_tool.js deleted file mode 100644 index ab5e4a8a8..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_user_interview_environment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateUserInterviewEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_interview_id": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"environment\":\"staging\",\"details\":\"Updated environment for testing.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_user_interview_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_user_interview_environment_example_call_tool.py deleted file mode 100644 index ba88873ac..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_user_interview_environment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateUserInterviewEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_interview_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"environment":"staging","details":"Updated environment for testing."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_query_example_call_tool.js deleted file mode 100644 index 023d2807f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_query_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateWarehouseQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "saved_query_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"query\":\"SELECT * FROM warehouse\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_query_example_call_tool.py deleted file mode 100644 index aa7e9af8c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_query_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateWarehouseQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'saved_query_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"query":"SELECT * FROM warehouse"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_saved_query_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_saved_query_example_call_tool.js deleted file mode 100644 index 587a45c4d..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_saved_query_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateWarehouseSavedQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "saved_query_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_id": "proj-001", - "request_body": "{\"query\":\"SELECT * FROM table\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_saved_query_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_saved_query_example_call_tool.py deleted file mode 100644 index eabc92563..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_saved_query_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateWarehouseSavedQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'saved_query_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_id': 'proj-001', - 'request_body': '{"query":"SELECT * FROM table"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table2_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table2_example_call_tool.js deleted file mode 100644 index b4a1230e3..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table2_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateWarehouseTable2"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "warehouse_table_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"field\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table2_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table2_example_call_tool.py deleted file mode 100644 index f555815be..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table2_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateWarehouseTable2" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'warehouse_table_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"field":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table_example_call_tool.js deleted file mode 100644 index 0221a2354..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateWarehouseTable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "warehouse_table_uuid": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "proj-001", - "request_body": "{\"update\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table_example_call_tool.py deleted file mode 100644 index 1fc918475..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateWarehouseTable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'warehouse_table_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'proj-001', - 'request_body': '{"update":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table_schema_example_call_tool.js deleted file mode 100644 index 9ab0de628..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table_schema_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateWarehouseTableSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "warehouse_table_id": "123e4567-e89b-12d3-a456-426614174000", - "project_identifier": "project_1", - "request_body": "{\"columns\":[{\"name\":\"new_column\",\"type\":\"string\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table_schema_example_call_tool.py deleted file mode 100644 index 91a5b4d6f..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_warehouse_table_schema_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateWarehouseTableSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'warehouse_table_id': '123e4567-e89b-12d3-a456-426614174000', - 'project_identifier': 'project_1', - 'request_body': '{"columns":[{"name":"new_column","type":"string"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_web_experiment_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_web_experiment_example_call_tool.js deleted file mode 100644 index 210f8cf43..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_web_experiment_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateWebExperiment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "experiment_id": 123, - "experiment_name": "New Experiment", - "feature_flag_key": "feature_abc", - "project_id": "proj_456", - "web_experiment_id": 789, - "web_experiment_variants": "{\"control\": {}, \"transforms\": [], \"conditions\": [], \"rollout_percentage\": 50}", - "creation_timestamp": "2023-10-01T12:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_web_experiment_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_web_experiment_example_call_tool.py deleted file mode 100644 index e44349bea..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_web_experiment_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateWebExperiment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'experiment_id': 123, - 'experiment_name': 'New Experiment', - 'feature_flag_key': 'feature_abc', - 'project_id': 'proj_456', - 'web_experiment_id': 789, - 'web_experiment_variants': '{"control": {}, "transforms": [], "conditions": [], ' - '"rollout_percentage": 50}', - 'creation_timestamp': '2023-10-01T12:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_web_experiment_status_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/update_web_experiment_status_example_call_tool.js deleted file mode 100644 index fe91089dc..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_web_experiment_status_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.UpdateWebExperimentStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_for_access": "proj_12345", - "creation_timestamp": "2023-10-05T14:48:00.000Z", - "experiment_identifier": 1, - "experiment_name": "Homepage Redesign", - "feature_flag_key": "homepage_redesign", - "web_experiment_id": 101, - "web_experiment_variants": "{\"control\": {\"transforms\": [{\"text\": \"Welcome to our new homepage!\",\"html\": \"\",\"selector\": \"#main-header\"}],\"conditions\": \"None\",\"rollout_percentage\": 50}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/update_web_experiment_status_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/update_web_experiment_status_example_call_tool.py deleted file mode 100644 index e30bffa83..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/update_web_experiment_status_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.UpdateWebExperimentStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_for_access': 'proj_12345', - 'creation_timestamp': '2023-10-05T14:48:00.000Z', - 'experiment_identifier': 1, - 'experiment_name': 'Homepage Redesign', - 'feature_flag_key': 'homepage_redesign', - 'web_experiment_id': 101, - 'web_experiment_variants': '{"control": {"transforms": [{"text": "Welcome to our new ' - 'homepage!","html": "","selector": "#main-header"}],"conditions": ' - '"None","rollout_percentage": 50}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/validate_two_factor_authentication_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/validate_two_factor_authentication_example_call_tool.js deleted file mode 100644 index 222b7c92b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/validate_two_factor_authentication_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ValidateTwoFactorAuthentication"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_identifier": "user123", - "request_body": "{\"code\":\"123456\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/validate_two_factor_authentication_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/validate_two_factor_authentication_example_call_tool.py deleted file mode 100644 index 1f0701f7b..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/validate_two_factor_authentication_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ValidateTwoFactorAuthentication" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'user_identifier': 'user123', 'request_body': '{"code":"123456"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/validate_user2fa_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/validate_user2fa_example_call_tool.js deleted file mode 100644 index 34e8438e6..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/validate_user2fa_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.ValidateUser2fa"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "user_uuid": "123e4567-e89b-12d3-a456-426614174000", - "request_body": "{\"validate\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/validate_user2fa_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/validate_user2fa_example_call_tool.py deleted file mode 100644 index 9b2349bbb..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/validate_user2fa_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.ValidateUser2fa" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'user_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'request_body': '{"validate": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/verify_domain_for_org_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/verify_domain_for_org_example_call_tool.js deleted file mode 100644 index c5b83703e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/verify_domain_for_org_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.VerifyDomainForOrg"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "domain_uuid": "123e4567-e89b-12d3-a456-426614174000", - "organization_identifier": "org-001", - "request_body": "{\"verification\":\"true\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/verify_domain_for_org_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/verify_domain_for_org_example_call_tool.py deleted file mode 100644 index fd0bea4ec..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/verify_domain_for_org_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.VerifyDomainForOrg" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'domain_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'organization_identifier': 'org-001', - 'request_body': '{"verification":"true"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/verify_email_integration_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/verify_email_integration_example_call_tool.js deleted file mode 100644 index b3b00db76..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/verify_email_integration_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.VerifyEmailIntegration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_id": 123, - "project_id": "proj_456", - "request_body": "{\"email\":\"test@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/verify_email_integration_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/verify_email_integration_example_call_tool.py deleted file mode 100644 index 66e199cd0..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/verify_email_integration_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.VerifyEmailIntegration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'integration_id': 123, - 'project_id': 'proj_456', - 'request_body': '{"email":"test@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/verify_user_email_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/verify_user_email_example_call_tool.js deleted file mode 100644 index 636cc7767..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/verify_user_email_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.VerifyUserEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"email\":\"user@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/verify_user_email_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/verify_user_email_example_call_tool.py deleted file mode 100644 index 7259fac97..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/verify_user_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.VerifyUserEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"email":"user@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/warehouse_table_file_operations_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/warehouse_table_file_operations_example_call_tool.js deleted file mode 100644 index c15b0ee66..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/warehouse_table_file_operations_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.WarehouseTableFileOperations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id_for_access": "12345", - "request_body": "{\"table_name\":\"sales_data\",\"columns\":[{\"name\":\"id\",\"type\":\"integer\"},{\"name\":\"amount\",\"type\":\"float\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/warehouse_table_file_operations_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/warehouse_table_file_operations_example_call_tool.py deleted file mode 100644 index 83b301697..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/warehouse_table_file_operations_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.WarehouseTableFileOperations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id_for_access': '12345', - 'request_body': '{"table_name":"sales_data","columns":[{"name":"id","type":"integer"},{"name":"amount","type":"float"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/posthog_api/warehouse_tables_overview_example_call_tool.js b/public/examples/integrations/mcp-servers/posthog_api/warehouse_tables_overview_example_call_tool.js deleted file mode 100644 index bf562075c..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/warehouse_tables_overview_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "PosthogApi.WarehouseTablesOverview"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj_12345", - "results_per_page": 10, - "search_term": "inventory" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/posthog_api/warehouse_tables_overview_example_call_tool.py b/public/examples/integrations/mcp-servers/posthog_api/warehouse_tables_overview_example_call_tool.py deleted file mode 100644 index 83a672d5e..000000000 --- a/public/examples/integrations/mcp-servers/posthog_api/warehouse_tables_overview_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "PosthogApi.WarehouseTablesOverview" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj_12345', 'results_per_page': 10, 'search_term': 'inventory' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pylon/add_message_example_call_tool.js b/public/examples/integrations/mcp-servers/pylon/add_message_example_call_tool.js deleted file mode 100644 index 5f213d479..000000000 --- a/public/examples/integrations/mcp-servers/pylon/add_message_example_call_tool.js +++ /dev/null @@ -1,20 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Pylon.AddMessage"; - -const toolInput = { - issue_id: "ISSUE_ID_OR_NUMBER", - body: "Following up on this issue.", - as_html: false, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, - secrets: { PYLON_API_TOKEN: "" }, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pylon/add_message_example_call_tool.py b/public/examples/integrations/mcp-servers/pylon/add_message_example_call_tool.py deleted file mode 100644 index 47c9a83d7..000000000 --- a/public/examples/integrations/mcp-servers/pylon/add_message_example_call_tool.py +++ /dev/null @@ -1,22 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Pylon.AddMessage" - -tool_input = { - "issue_id": "ISSUE_ID_OR_NUMBER", - "body": "Following up on this issue.", - "as_html": False, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, - secrets={"PYLON_API_TOKEN": ""}, -) - -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pylon/assign_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/pylon/assign_issue_example_call_tool.js deleted file mode 100644 index eee8a0661..000000000 --- a/public/examples/integrations/mcp-servers/pylon/assign_issue_example_call_tool.js +++ /dev/null @@ -1,22 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Pylon.AssignIssue"; - -const toolInput = { - issue_lookup_by: "id", // "id" or "search" - issue_value: "ISSUE_ID_OR_KEYWORDS", - user_lookup_by: "name", // "id" or "name" - user_value: "Alex Doe", - auto_accept_matches: false, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, - secrets: { PYLON_API_TOKEN: "" }, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pylon/assign_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/pylon/assign_issue_example_call_tool.py deleted file mode 100644 index eb40e3630..000000000 --- a/public/examples/integrations/mcp-servers/pylon/assign_issue_example_call_tool.py +++ /dev/null @@ -1,24 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Pylon.AssignIssue" - -tool_input = { - "issue_lookup_by": "id", # "id" or "search" - "issue_value": "ISSUE_ID_OR_KEYWORDS", - "user_lookup_by": "name", # "id" or "name" - "user_value": "Alex Doe", - "auto_accept_matches": False, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, - secrets={"PYLON_API_TOKEN": ""}, -) - -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pylon/get_issue_example_call_tool.js b/public/examples/integrations/mcp-servers/pylon/get_issue_example_call_tool.js deleted file mode 100644 index 479f474d6..000000000 --- a/public/examples/integrations/mcp-servers/pylon/get_issue_example_call_tool.js +++ /dev/null @@ -1,20 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Pylon.GetIssue"; - -const toolInput = { - lookup_by: "id", // "id" or "search" - value: "ISSUE_ID_OR_KEYWORDS", - auto_accept_matches: false, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, - secrets: { PYLON_API_TOKEN: "" }, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pylon/get_issue_example_call_tool.py b/public/examples/integrations/mcp-servers/pylon/get_issue_example_call_tool.py deleted file mode 100644 index fd2b76b4b..000000000 --- a/public/examples/integrations/mcp-servers/pylon/get_issue_example_call_tool.py +++ /dev/null @@ -1,22 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Pylon.GetIssue" - -tool_input = { - "lookup_by": "id", # "id" or "search" - "value": "ISSUE_ID_OR_KEYWORDS", - "auto_accept_matches": False, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, - secrets={"PYLON_API_TOKEN": ""}, -) - -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pylon/get_team_and_assignment_example_call_tool.js b/public/examples/integrations/mcp-servers/pylon/get_team_and_assignment_example_call_tool.js deleted file mode 100644 index 9dfd67867..000000000 --- a/public/examples/integrations/mcp-servers/pylon/get_team_and_assignment_example_call_tool.js +++ /dev/null @@ -1,20 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Pylon.GetTeamAndAssignment"; - -const toolInput = { - lookup_by: "id", // "id" or "name" - value: "TEAM_ID_OR_NAME", - auto_accept_matches: false, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, - secrets: { PYLON_API_TOKEN: "" }, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pylon/get_team_and_assignment_example_call_tool.py b/public/examples/integrations/mcp-servers/pylon/get_team_and_assignment_example_call_tool.py deleted file mode 100644 index dc71cbf88..000000000 --- a/public/examples/integrations/mcp-servers/pylon/get_team_and_assignment_example_call_tool.py +++ /dev/null @@ -1,22 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Pylon.GetTeamAndAssignment" - -tool_input = { - "lookup_by": "id", # "id" or "name" - "value": "TEAM_ID_OR_NAME", - "auto_accept_matches": False, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, - secrets={"PYLON_API_TOKEN": ""}, -) - -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pylon/list_contacts_example_call_tool.js b/public/examples/integrations/mcp-servers/pylon/list_contacts_example_call_tool.js deleted file mode 100644 index 651fa5d53..000000000 --- a/public/examples/integrations/mcp-servers/pylon/list_contacts_example_call_tool.js +++ /dev/null @@ -1,18 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Pylon.ListContacts"; - -const toolInput = { - cursor: null, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, - secrets: { PYLON_API_TOKEN: "" }, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pylon/list_contacts_example_call_tool.py b/public/examples/integrations/mcp-servers/pylon/list_contacts_example_call_tool.py deleted file mode 100644 index 67681aff6..000000000 --- a/public/examples/integrations/mcp-servers/pylon/list_contacts_example_call_tool.py +++ /dev/null @@ -1,20 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Pylon.ListContacts" - -tool_input = { - "cursor": None, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, - secrets={"PYLON_API_TOKEN": ""}, -) - -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pylon/list_issues_example_call_tool.js b/public/examples/integrations/mcp-servers/pylon/list_issues_example_call_tool.js deleted file mode 100644 index 665936fab..000000000 --- a/public/examples/integrations/mcp-servers/pylon/list_issues_example_call_tool.js +++ /dev/null @@ -1,24 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Pylon.ListIssues"; - -const toolInput = { - state: null, - assignee_id: null, - team_id: null, - tags: null, - start_time: null, - end_time: null, - cursor: null, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, - secrets: { PYLON_API_TOKEN: "" }, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pylon/list_issues_example_call_tool.py b/public/examples/integrations/mcp-servers/pylon/list_issues_example_call_tool.py deleted file mode 100644 index 89afd57e9..000000000 --- a/public/examples/integrations/mcp-servers/pylon/list_issues_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Pylon.ListIssues" - -tool_input = { - "state": None, # e.g., "open", "closed" - "assignee_id": None, - "team_id": None, - "tags": None, - "start_time": None, - "end_time": None, - "cursor": None, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, - secrets={"PYLON_API_TOKEN": ""}, -) - -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pylon/list_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/pylon/list_teams_example_call_tool.js deleted file mode 100644 index 44307847b..000000000 --- a/public/examples/integrations/mcp-servers/pylon/list_teams_example_call_tool.js +++ /dev/null @@ -1,18 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Pylon.ListTeams"; - -const toolInput = { - cursor: null, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, - secrets: { PYLON_API_TOKEN: "" }, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pylon/list_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/pylon/list_teams_example_call_tool.py deleted file mode 100644 index 00059b1fd..000000000 --- a/public/examples/integrations/mcp-servers/pylon/list_teams_example_call_tool.py +++ /dev/null @@ -1,20 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Pylon.ListTeams" - -tool_input = { - "cursor": None, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, - secrets={"PYLON_API_TOKEN": ""}, -) - -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pylon/list_users_example_call_tool.js b/public/examples/integrations/mcp-servers/pylon/list_users_example_call_tool.js deleted file mode 100644 index 7b950eab3..000000000 --- a/public/examples/integrations/mcp-servers/pylon/list_users_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Pylon.ListUsers"; - -const toolInput = { - cursor: null, - limit: 20, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, - secrets: { PYLON_API_TOKEN: "" }, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pylon/list_users_example_call_tool.py b/public/examples/integrations/mcp-servers/pylon/list_users_example_call_tool.py deleted file mode 100644 index 38e52766d..000000000 --- a/public/examples/integrations/mcp-servers/pylon/list_users_example_call_tool.py +++ /dev/null @@ -1,21 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Pylon.ListUsers" - -tool_input = { - "cursor": None, - "limit": 20, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, - secrets={"PYLON_API_TOKEN": ""}, -) - -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pylon/search_contacts_example_call_tool.js b/public/examples/integrations/mcp-servers/pylon/search_contacts_example_call_tool.js deleted file mode 100644 index 8f1bdfe60..000000000 --- a/public/examples/integrations/mcp-servers/pylon/search_contacts_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Pylon.SearchContacts"; - -const toolInput = { - query: "alex@example.com", - auto_accept_matches: false, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, - secrets: { PYLON_API_TOKEN: "" }, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pylon/search_contacts_example_call_tool.py b/public/examples/integrations/mcp-servers/pylon/search_contacts_example_call_tool.py deleted file mode 100644 index adce5d4ba..000000000 --- a/public/examples/integrations/mcp-servers/pylon/search_contacts_example_call_tool.py +++ /dev/null @@ -1,21 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Pylon.SearchContacts" - -tool_input = { - "query": "alex@example.com", - "auto_accept_matches": False, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, - secrets={"PYLON_API_TOKEN": ""}, -) - -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pylon/search_issues_example_call_tool.js b/public/examples/integrations/mcp-servers/pylon/search_issues_example_call_tool.js deleted file mode 100644 index 6e6dc1dcb..000000000 --- a/public/examples/integrations/mcp-servers/pylon/search_issues_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Pylon.SearchIssues"; - -const toolInput = { - query: "login timeout", - auto_accept_matches: false, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, - secrets: { PYLON_API_TOKEN: "" }, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pylon/search_issues_example_call_tool.py b/public/examples/integrations/mcp-servers/pylon/search_issues_example_call_tool.py deleted file mode 100644 index 6465da008..000000000 --- a/public/examples/integrations/mcp-servers/pylon/search_issues_example_call_tool.py +++ /dev/null @@ -1,21 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Pylon.SearchIssues" - -tool_input = { - "query": "login timeout", - "auto_accept_matches": False, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, - secrets={"PYLON_API_TOKEN": ""}, -) - -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pylon/search_users_example_call_tool.js b/public/examples/integrations/mcp-servers/pylon/search_users_example_call_tool.js deleted file mode 100644 index 8a7618780..000000000 --- a/public/examples/integrations/mcp-servers/pylon/search_users_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Pylon.SearchUsers"; - -const toolInput = { - query: "Alex", - auto_accept_matches: false, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, - secrets: { PYLON_API_TOKEN: "" }, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pylon/search_users_example_call_tool.py b/public/examples/integrations/mcp-servers/pylon/search_users_example_call_tool.py deleted file mode 100644 index e6c3c603e..000000000 --- a/public/examples/integrations/mcp-servers/pylon/search_users_example_call_tool.py +++ /dev/null @@ -1,21 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Pylon.SearchUsers" - -tool_input = { - "query": "Alex", - "auto_accept_matches": False, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, - secrets={"PYLON_API_TOKEN": ""}, -) - -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pylon/update_issue_status_example_call_tool.js b/public/examples/integrations/mcp-servers/pylon/update_issue_status_example_call_tool.js deleted file mode 100644 index 04dea21bf..000000000 --- a/public/examples/integrations/mcp-servers/pylon/update_issue_status_example_call_tool.js +++ /dev/null @@ -1,21 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Pylon.UpdateIssueStatus"; - -const toolInput = { - state: "open", // e.g., "open", "closed" - lookup_by: "id", // "id" or "search" - value: "ISSUE_ID_OR_KEYWORDS", - auto_accept_matches: false, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, - secrets: { PYLON_API_TOKEN: "" }, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pylon/update_issue_status_example_call_tool.py b/public/examples/integrations/mcp-servers/pylon/update_issue_status_example_call_tool.py deleted file mode 100644 index fdec2b69c..000000000 --- a/public/examples/integrations/mcp-servers/pylon/update_issue_status_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Pylon.UpdateIssueStatus" - -tool_input = { - "state": "open", # e.g., "open", "closed" - "lookup_by": "id", # "id" or "search" - "value": "ISSUE_ID_OR_KEYWORDS", - "auto_accept_matches": False, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, - secrets={"PYLON_API_TOKEN": ""}, -) - -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/pylon/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/pylon/who_am_i_example_call_tool.js deleted file mode 100644 index d172d0413..000000000 --- a/public/examples/integrations/mcp-servers/pylon/who_am_i_example_call_tool.js +++ /dev/null @@ -1,14 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Pylon.WhoAmI"; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: {}, - user_id: USER_ID, - secrets: { PYLON_API_TOKEN: "" }, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/pylon/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/pylon/who_am_i_example_call_tool.py deleted file mode 100644 index e0aa337be..000000000 --- a/public/examples/integrations/mcp-servers/pylon/who_am_i_example_call_tool.py +++ /dev/null @@ -1,16 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Pylon.WhoAmI" - -response = client.tools.execute( - tool_name=TOOL_NAME, - input={}, - user_id=USER_ID, - secrets={"PYLON_API_TOKEN": ""}, -) - -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/reddit/check_subreddit_access_example_call_tool.js b/public/examples/integrations/mcp-servers/reddit/check_subreddit_access_example_call_tool.js deleted file mode 100644 index 353beb301..000000000 --- a/public/examples/integrations/mcp-servers/reddit/check_subreddit_access_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Reddit.CheckSubredditAccess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -// TODO: Replace with a real subreddit -const toolInput = { - subreddit: "TestSubreddit", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/reddit/check_subreddit_access_example_call_tool.py b/public/examples/integrations/mcp-servers/reddit/check_subreddit_access_example_call_tool.py deleted file mode 100644 index 6dc5baaa4..000000000 --- a/public/examples/integrations/mcp-servers/reddit/check_subreddit_access_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Reddit.CheckSubredditAccess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -# TODO: Replace with a real subreddit -tool_input = { - "subreddit": "TestSubreddit", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/reddit/comment_on_post_example_call_tool.js b/public/examples/integrations/mcp-servers/reddit/comment_on_post_example_call_tool.js deleted file mode 100644 index 81265ea01..000000000 --- a/public/examples/integrations/mcp-servers/reddit/comment_on_post_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Reddit.CommentOnPost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -// TODO: Replace with an identifier for a real post -const toolInput = { - post_identifier: "https://www.reddit.com/r/TestSubreddit/comments/1abcdefg/", - text: "This is a test comment on a non-existent subreddit." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/reddit/comment_on_post_example_call_tool.py b/public/examples/integrations/mcp-servers/reddit/comment_on_post_example_call_tool.py deleted file mode 100644 index 4a029e0dd..000000000 --- a/public/examples/integrations/mcp-servers/reddit/comment_on_post_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Reddit.CommentOnPost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -# TODO: Replace with an identifier for a real post -tool_input = { - "post_identifier": "https://www.reddit.com/r/TestSubreddit/comments/1abcdefg/", - "text": "This is a test comment on a non-existent subreddit." -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/reddit/get_content_of_multiple_posts_example_call_tool.js b/public/examples/integrations/mcp-servers/reddit/get_content_of_multiple_posts_example_call_tool.js deleted file mode 100644 index 9d10b8155..000000000 --- a/public/examples/integrations/mcp-servers/reddit/get_content_of_multiple_posts_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Reddit.GetContentOfMultiplePosts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -// TODO: Replace with an identifier for a real post -const toolInput = { - post_identifiers: [ - "https://www.reddit.com/r/TestSubreddit/comments/1abcdefg/", - "https://www.reddit.com/r/TestSubreddit/comments/2asdfefg/", - ], -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/reddit/get_content_of_multiple_posts_example_call_tool.py b/public/examples/integrations/mcp-servers/reddit/get_content_of_multiple_posts_example_call_tool.py deleted file mode 100644 index 023e46e71..000000000 --- a/public/examples/integrations/mcp-servers/reddit/get_content_of_multiple_posts_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Reddit.GetContentOfMultiplePosts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -# TODO: Replace with an identifier for a real post -tool_input = { - "post_identifiers": [ - "https://www.reddit.com/r/TestSubreddit/comments/1abcdefg/", - "https://www.reddit.com/r/TestSubreddit/comments/2asdfefg/", - ], -} -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/reddit/get_content_of_post_example_call_tool.js b/public/examples/integrations/mcp-servers/reddit/get_content_of_post_example_call_tool.js deleted file mode 100644 index 5bc88841a..000000000 --- a/public/examples/integrations/mcp-servers/reddit/get_content_of_post_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Reddit.GetContentOfPost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -// TODO: Replace with an identifier for a real post -const toolInput = { - post_identifier: "https://www.reddit.com/r/TestSubreddit/comments/1abcdefg/", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/reddit/get_content_of_post_example_call_tool.py b/public/examples/integrations/mcp-servers/reddit/get_content_of_post_example_call_tool.py deleted file mode 100644 index ac40f8e29..000000000 --- a/public/examples/integrations/mcp-servers/reddit/get_content_of_post_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Reddit.GetContentOfPost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -# TODO: Replace with an identifier for a real post -tool_input = { - "post_identifier": "https://www.reddit.com/r/TestSubreddit/comments/1abcdefg/", -} -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/reddit/get_my_posts_example_call_tool.js b/public/examples/integrations/mcp-servers/reddit/get_my_posts_example_call_tool.js deleted file mode 100644 index 5300c0338..000000000 --- a/public/examples/integrations/mcp-servers/reddit/get_my_posts_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Reddit.GetMyPosts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - limit: 10, - include_body: true, - cursor: null -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/reddit/get_my_posts_example_call_tool.py b/public/examples/integrations/mcp-servers/reddit/get_my_posts_example_call_tool.py deleted file mode 100644 index f4d6c227e..000000000 --- a/public/examples/integrations/mcp-servers/reddit/get_my_posts_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Reddit.GetMyPosts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "limit": 10, - "include_body": True, - "cursor": None -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/reddit/get_my_username_example_call_tool.js b/public/examples/integrations/mcp-servers/reddit/get_my_username_example_call_tool.js deleted file mode 100644 index 9f489d926..000000000 --- a/public/examples/integrations/mcp-servers/reddit/get_my_username_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Reddit.GetMyUsername"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/reddit/get_my_username_example_call_tool.py b/public/examples/integrations/mcp-servers/reddit/get_my_username_example_call_tool.py deleted file mode 100644 index ed5eb7acb..000000000 --- a/public/examples/integrations/mcp-servers/reddit/get_my_username_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Reddit.GetMyUsername" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/reddit/get_posts_in_subreddit_example_call_tool.js b/public/examples/integrations/mcp-servers/reddit/get_posts_in_subreddit_example_call_tool.js deleted file mode 100644 index 072d7f52a..000000000 --- a/public/examples/integrations/mcp-servers/reddit/get_posts_in_subreddit_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Reddit.GetPostsInSubreddit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - subreddit: "TestSubreddit", - listing: "top", - time_range: "TODAY", - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/reddit/get_posts_in_subreddit_example_call_tool.py b/public/examples/integrations/mcp-servers/reddit/get_posts_in_subreddit_example_call_tool.py deleted file mode 100644 index c05f85c60..000000000 --- a/public/examples/integrations/mcp-servers/reddit/get_posts_in_subreddit_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Reddit.GetPostsInSubreddit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "subreddit": "TestSubreddit", - "listing": "top", - "time_range": "TODAY", - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/reddit/get_subreddit_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/reddit/get_subreddit_rules_example_call_tool.js deleted file mode 100644 index 5253b3ba5..000000000 --- a/public/examples/integrations/mcp-servers/reddit/get_subreddit_rules_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Reddit.GetSubredditRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -// TODO: Replace with a real subreddit -const toolInput = { - subreddit: "TestSubreddit", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/reddit/get_subreddit_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/reddit/get_subreddit_rules_example_call_tool.py deleted file mode 100644 index 20c79add1..000000000 --- a/public/examples/integrations/mcp-servers/reddit/get_subreddit_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Reddit.GetSubredditRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -# TODO: Replace with a real subreddit -tool_input = { - "subreddit": "TestSubreddit", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/reddit/get_top_level_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/reddit/get_top_level_comments_example_call_tool.js deleted file mode 100644 index 82c3952f2..000000000 --- a/public/examples/integrations/mcp-servers/reddit/get_top_level_comments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Reddit.GetTopLevelComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -// TODO: Replace with an identifier for a real post -const toolInput = { - post_identifier: "https://www.reddit.com/r/TestSubreddit/comments/1abcdefg/", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/reddit/get_top_level_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/reddit/get_top_level_comments_example_call_tool.py deleted file mode 100644 index 11f058156..000000000 --- a/public/examples/integrations/mcp-servers/reddit/get_top_level_comments_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Reddit.GetTopLevelComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -# TODO: Replace with an identifier for a real post -tool_input = { - "post_identifier": "https://www.reddit.com/r/TestSubreddit/comments/1abcdefg/", -} -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/reddit/reply_to_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/reddit/reply_to_comment_example_call_tool.js deleted file mode 100644 index c44ba7761..000000000 --- a/public/examples/integrations/mcp-servers/reddit/reply_to_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Reddit.ReplyToComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -// TODO: Replace with an identifier for a real comment -const toolInput = { - comment_identifier: "https://www.reddit.com/r/TestSubreddit/comments/1abcdefg/comment/3abcdefg/", - text: "This is a test reply to a non-existent comment." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/reddit/reply_to_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/reddit/reply_to_comment_example_call_tool.py deleted file mode 100644 index 41a61cf1e..000000000 --- a/public/examples/integrations/mcp-servers/reddit/reply_to_comment_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Reddit.ReplyToComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -# TODO: Replace with an identifier for a real comment -tool_input = { - "comment_identifier": "https://www.reddit.com/r/TestSubreddit/comments/1abcdefg/comment/3abcdefg/", - "text": "This is a test reply to a non-existent comment." -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/reddit/submit_text_post_example_call_tool.js b/public/examples/integrations/mcp-servers/reddit/submit_text_post_example_call_tool.js deleted file mode 100644 index c2d273747..000000000 --- a/public/examples/integrations/mcp-servers/reddit/submit_text_post_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Reddit.SubmitTextPost"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - subreddit: "TestSubreddit", - title: "Why is the sky blue?", - body: "This is something I've been wondering about for a while. Wrong answers only.", - nsfw: false, - spoiler: false, - send_replies: true, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/reddit/submit_text_post_example_call_tool.py b/public/examples/integrations/mcp-servers/reddit/submit_text_post_example_call_tool.py deleted file mode 100644 index 114d577fb..000000000 --- a/public/examples/integrations/mcp-servers/reddit/submit_text_post_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Reddit.SubmitTextPost" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "subreddit": "TestSubreddit", - "title": "Why is the sky blue?", - "body": "This is something I've been wondering about for a while. Wrong answers only.", - "nsfw": False, - "spoiler": False, - "send_replies": True, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) - -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/salesforce/create_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/salesforce/create_contact_example_call_tool.js deleted file mode 100644 index a3dc2e345..000000000 --- a/public/examples/integrations/mcp-servers/salesforce/create_contact_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade({ baseURL: "http://localhost:9099" }); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Salesforce.CreateContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - account_id: "001111111111111111", - first_name: "John", - last_name: "Doe", - email: "john.doe@example.com", - phone: "1234567890", - mobile_phone: "1234567890", - title: "Director of Marketing", - department: "Marketing", - description: "John Doe is the Director of Marketing of Acme Inc.", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/salesforce/create_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/salesforce/create_contact_example_call_tool.py deleted file mode 100644 index 4ad42c155..000000000 --- a/public/examples/integrations/mcp-servers/salesforce/create_contact_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -from arcadepy import Arcade - -client = Arcade(base_url="http://localhost:9099") # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Salesforce.CreateContact" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "account_id": "001111111111111111", - "first_name": "John", - "last_name": "Doe", - "email": "john.doe@example.com", - "phone": "1234567890", - "mobile_phone": "1234567890", - "title": "Director of Marketing", - "department": "Marketing", - "description": "John Doe is the Director of Marketing of Acme Inc.", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/salesforce/create_contact_example_llm_oai.js b/public/examples/integrations/mcp-servers/salesforce/create_contact_example_llm_oai.js deleted file mode 100644 index 99bc624dc..000000000 --- a/public/examples/integrations/mcp-servers/salesforce/create_contact_example_llm_oai.js +++ /dev/null @@ -1,20 +0,0 @@ -import OpenAI from 'openai'; - -const PROMPT = "Create a contact for the account with the id '001111111111111111': John Doe, email john.doe@acme.inc"; -const TOOL_NAME = "Salesforce.CreateContact"; - -const client = new OpenAI({ - baseURL: 'http://localhost:9099/v1', - apiKey: process.env.ARCADE_API_KEY -}); - -const response = await client.chat.completions.create({ - messages: [ - { role: 'user', content: PROMPT } - ], - model: 'gpt-4o-mini', - tools: [TOOL_NAME], - tool_choice: 'generate' -}); - -console.log(response.choices[0].message.content); diff --git a/public/examples/integrations/mcp-servers/salesforce/create_contact_example_llm_oai.py b/public/examples/integrations/mcp-servers/salesforce/create_contact_example_llm_oai.py deleted file mode 100644 index df03f4762..000000000 --- a/public/examples/integrations/mcp-servers/salesforce/create_contact_example_llm_oai.py +++ /dev/null @@ -1,19 +0,0 @@ -import os -from openai import OpenAI - -PROMPT = "Create a contact for the account with the id '001111111111111111': John Doe, email john.doe@acme.inc" -TOOL_NAME = "Salesforce.CreateContact" - -client = OpenAI( - base_url="http://localhost:9099/v1", api_key=os.environ.get("ARCADE_API_KEY") -) - -response = client.chat.completions.create( - messages=[ - {"role": "user", "content": PROMPT}, - ], - model="gpt-4o-mini", - tools=[TOOL_NAME], - tool_choice="generate", -) -print(response.choices[0].message.content) diff --git a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_id_example_call_tool.js deleted file mode 100644 index b9378814f..000000000 --- a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_id_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade({ baseURL: "http://localhost:9099" }); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Salesforce.GetAccountDataById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - account_id: "001111111111111111", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_id_example_call_tool.py deleted file mode 100644 index 05210f2ff..000000000 --- a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_id_example_call_tool.py +++ /dev/null @@ -1,25 +0,0 @@ -from arcadepy import Arcade - -client = Arcade(base_url="http://localhost:9099") # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Salesforce.GetAccountDataById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "account_id": "001111111111111111", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_id_example_llm_oai.js b/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_id_example_llm_oai.js deleted file mode 100644 index 159634b23..000000000 --- a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_id_example_llm_oai.js +++ /dev/null @@ -1,20 +0,0 @@ -import OpenAI from 'openai'; - -const PROMPT = "Get the data for the account with the id '001111111111111111'"; -const TOOL_NAME = "Salesforce.GetAccountDataById"; - -const client = new OpenAI({ - baseURL: 'http://localhost:9099/v1', - apiKey: process.env.ARCADE_API_KEY -}); - -const response = await client.chat.completions.create({ - messages: [ - { role: 'user', content: PROMPT } - ], - model: 'gpt-4o-mini', - tools: [TOOL_NAME], - tool_choice: 'generate' -}); - -console.log(response.choices[0].message.content); diff --git a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_id_example_llm_oai.py b/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_id_example_llm_oai.py deleted file mode 100644 index de8c0d41b..000000000 --- a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_id_example_llm_oai.py +++ /dev/null @@ -1,19 +0,0 @@ -import os -from openai import OpenAI - -PROMPT = "Get the data for the account with the id '001111111111111111'" -TOOL_NAME = "Salesforce.GetAccountDataById" - -client = OpenAI( - base_url="http://localhost:9099/v1", api_key=os.environ.get("ARCADE_API_KEY") -) - -response = client.chat.completions.create( - messages=[ - {"role": "user", "content": PROMPT}, - ], - model="gpt-4o-mini", - tools=[TOOL_NAME], - tool_choice="generate", -) -print(response.choices[0].message.content) diff --git a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_keywords_example_call_tool.js b/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_keywords_example_call_tool.js deleted file mode 100644 index dd7d599ff..000000000 --- a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_keywords_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade({ baseURL: "http://localhost:9099" }); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Salesforce.GetAccountDataByKeywords"; -const USER_ID = "{arcade_user_id}"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - query: "Acme Inc", - limit: 1, - page: 1, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response.output.value); diff --git a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_keywords_example_call_tool.py b/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_keywords_example_call_tool.py deleted file mode 100644 index 9812d870b..000000000 --- a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_keywords_example_call_tool.py +++ /dev/null @@ -1,27 +0,0 @@ -from arcadepy import Arcade - -client = Arcade(base_url="http://localhost:9099") # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Salesforce.GetAccountDataByKeywords" -USER_ID = "{arcade_user_id}" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "query": "Acme Inc", - "limit": 1, - "page": 1, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response.output.value) diff --git a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_keywords_example_llm_oai.js b/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_keywords_example_llm_oai.js deleted file mode 100644 index ada42281b..000000000 --- a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_keywords_example_llm_oai.js +++ /dev/null @@ -1,20 +0,0 @@ -import OpenAI from 'openai'; - -const PROMPT = "Get the data for the account with the name 'Acme Inc'"; -const TOOL_NAME = "Salesforce.GetAccountDataByKeywords"; - -const client = new OpenAI({ - baseURL: 'http://localhost:9099/v1', - apiKey: process.env.ARCADE_API_KEY -}); - -const response = await client.chat.completions.create({ - messages: [ - { role: 'user', content: PROMPT } - ], - model: 'gpt-4o-mini', - tools: [TOOL_NAME], - tool_choice: 'generate' -}); - -console.log(response.choices[0].message.content); diff --git a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_keywords_example_llm_oai.py b/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_keywords_example_llm_oai.py deleted file mode 100644 index 2d2d8782b..000000000 --- a/public/examples/integrations/mcp-servers/salesforce/get_account_data_by_keywords_example_llm_oai.py +++ /dev/null @@ -1,19 +0,0 @@ -import os -from openai import OpenAI - -PROMPT = "Get the data for the account with the name 'Acme Inc'" -TOOL_NAME = "Salesforce.GetAccountDataByKeywords" - -client = OpenAI( - base_url="http://localhost:9099/v1", api_key=os.environ.get("ARCADE_API_KEY") -) - -response = client.chat.completions.create( - messages=[ - {"role": "user", "content": PROMPT}, - ], - model="gpt-4o-mini", - tools=[TOOL_NAME], - tool_choice="generate", -) -print(response.choices[0].message.content) diff --git a/public/examples/integrations/mcp-servers/search/google_finance/get_stock_historical_data_example_call_tool.js b/public/examples/integrations/mcp-servers/search/google_finance/get_stock_historical_data_example_call_tool.js deleted file mode 100644 index 527a6aaa3..000000000 --- a/public/examples/integrations/mcp-servers/search/google_finance/get_stock_historical_data_example_call_tool.js +++ /dev/null @@ -1,20 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleFinance.GetStockHistoricalData"; - -const toolInput = { - ticker_symbol: "GOOG", - exchange_identifier: "NASDAQ", - window: "ONE_MONTH", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/google_finance/get_stock_historical_data_example_call_tool.py b/public/examples/integrations/mcp-servers/search/google_finance/get_stock_historical_data_example_call_tool.py deleted file mode 100644 index 04daaed56..000000000 --- a/public/examples/integrations/mcp-servers/search/google_finance/get_stock_historical_data_example_call_tool.py +++ /dev/null @@ -1,19 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleFinance.GetStockHistoricalData" - -tool_input = { - "ticker_symbol": "GOOG", - "exchange_identifier": "NASDAQ", - "window": "ONE_MONTH", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/search/google_finance/get_stock_summary_example_call_tool.js b/public/examples/integrations/mcp-servers/search/google_finance/get_stock_summary_example_call_tool.js deleted file mode 100644 index 93a0863c3..000000000 --- a/public/examples/integrations/mcp-servers/search/google_finance/get_stock_summary_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleFinance.GetStockSummary"; - -const toolInput = { - ticker_symbol: "GOOG", - exchange_identifier: "NASDAQ", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/google_finance/get_stock_summary_example_call_tool.py b/public/examples/integrations/mcp-servers/search/google_finance/get_stock_summary_example_call_tool.py deleted file mode 100644 index be46b0aa2..000000000 --- a/public/examples/integrations/mcp-servers/search/google_finance/get_stock_summary_example_call_tool.py +++ /dev/null @@ -1,18 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleFinance.GetStockSummary" - -tool_input = { - "ticker_symbol": "GOOG", - "exchange_identifier": "NASDAQ", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/search/google_flights/search_one_way_flights_example_call_tool.js b/public/examples/integrations/mcp-servers/search/google_flights/search_one_way_flights_example_call_tool.js deleted file mode 100644 index cd29c34fb..000000000 --- a/public/examples/integrations/mcp-servers/search/google_flights/search_one_way_flights_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleFlights.SearchOneWayFlights"; - -const toolInput = { - departure_airport_code: "LAX", - arrival_airport_code: "SFO", - outbound_date: "2025-09-01", - currency_code: "USD", - travel_class: "ECONOMY", - num_adults: 1, - num_children: 0, - max_stops: "ANY", - sort_by: "TOP_FLIGHTS", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/google_flights/search_one_way_flights_example_call_tool.py b/public/examples/integrations/mcp-servers/search/google_flights/search_one_way_flights_example_call_tool.py deleted file mode 100644 index 549049547..000000000 --- a/public/examples/integrations/mcp-servers/search/google_flights/search_one_way_flights_example_call_tool.py +++ /dev/null @@ -1,25 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Search.SearchOneWayFlights" - -tool_input = { - "departure_airport_code": "LAX", - "arrival_airport_code": "SFO", - "outbound_date": "2025-09-01", - "currency_code": "USD", - "travel_class": "ECONOMY", - "num_adults": 1, - "num_children": 0, - "max_stops": "ANY", - "sort_by": "TOP_FLIGHTS", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/search/google_flights/search_roundtrip_flights_example_call_tool.js b/public/examples/integrations/mcp-servers/search/google_flights/search_roundtrip_flights_example_call_tool.js deleted file mode 100644 index f7da95bec..000000000 --- a/public/examples/integrations/mcp-servers/search/google_flights/search_roundtrip_flights_example_call_tool.js +++ /dev/null @@ -1,27 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Search.SearchRoundtripFlights"; - -const toolInput = { - departure_airport_code: "LAX", - arrival_airport_code: "SFO", - outbound_date: "2025-09-01", - return_date: "2025-09-05", - currency_code: "USD", - travel_class: "ECONOMY", - num_adults: 1, - num_children: 0, - max_stops: "ANY", - sort_by: "TOP_FLIGHTS", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/google_flights/search_roundtrip_flights_example_call_tool.py b/public/examples/integrations/mcp-servers/search/google_flights/search_roundtrip_flights_example_call_tool.py deleted file mode 100644 index 16f8f56a9..000000000 --- a/public/examples/integrations/mcp-servers/search/google_flights/search_roundtrip_flights_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Search.SearchRoundtripFlights" - -tool_input = { - "departure_airport_code": "LAX", - "arrival_airport_code": "SFO", - "outbound_date": "2025-09-01", - "return_date": "2025-09-05", - "currency_code": "USD", - "travel_class": "ECONOMY", - "num_adults": 1, - "num_children": 0, - "max_stops": "ANY", - "sort_by": "TOP_FLIGHTS", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/search/google_hotels/search_hotels_example_call_tool.js b/public/examples/integrations/mcp-servers/search/google_hotels/search_hotels_example_call_tool.js deleted file mode 100644 index d077900ba..000000000 --- a/public/examples/integrations/mcp-servers/search/google_hotels/search_hotels_example_call_tool.js +++ /dev/null @@ -1,27 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleHotels.SearchHotels"; - -const toolInput = { - location: "New York, NY", - check_in_date: "2025-09-01", - check_out_date: "2025-09-02", - query: "hotel", - currency: "USD", - min_price: 100, - max_price: 500, - num_adults: 2, - num_children: 0, - sort_by: "RELEVANCE", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/google_hotels/search_hotels_example_call_tool.py b/public/examples/integrations/mcp-servers/search/google_hotels/search_hotels_example_call_tool.py deleted file mode 100644 index b4a457f96..000000000 --- a/public/examples/integrations/mcp-servers/search/google_hotels/search_hotels_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleHotels.SearchHotels" - -tool_input = { - "location": "New York, NY", - "check_in_date": "2025-09-01", - "check_out_date": "2025-09-02", - "query": "hotel", - "currency": "USD", - "min_price": 100, - "max_price": 500, - "num_adults": 2, - "num_children": 0, - "sort_by": "RELEVANCE", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/search/google_jobs/search_jobs_example_call_tool.js b/public/examples/integrations/mcp-servers/search/google_jobs/search_jobs_example_call_tool.js deleted file mode 100644 index cb948678c..000000000 --- a/public/examples/integrations/mcp-servers/search/google_jobs/search_jobs_example_call_tool.js +++ /dev/null @@ -1,21 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleJobs.SearchJobs"; - -const toolInput = { - query: "software engineer", - location: "United States", - language: "en", - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/google_jobs/search_jobs_example_call_tool.py b/public/examples/integrations/mcp-servers/search/google_jobs/search_jobs_example_call_tool.py deleted file mode 100644 index a0fb5f6b5..000000000 --- a/public/examples/integrations/mcp-servers/search/google_jobs/search_jobs_example_call_tool.py +++ /dev/null @@ -1,20 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleJobs.SearchJobs" - -tool_input = { - "query": "software engineer", - "location": "United States", - "language": "en", - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/search/google_maps/get_directions_between_addresses_example_call_tool.js b/public/examples/integrations/mcp-servers/search/google_maps/get_directions_between_addresses_example_call_tool.js deleted file mode 100644 index a14d812db..000000000 --- a/public/examples/integrations/mcp-servers/search/google_maps/get_directions_between_addresses_example_call_tool.js +++ /dev/null @@ -1,21 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleMaps.GetDirectionsBetweenAddresses"; - -const toolInput = { - origin_address: "123 Main St, New York, NY 10001", - destination_address: "456 Main St, New York, NY 10001", - distance_unit: "KM", - travel_mode: "BEST", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/google_maps/get_directions_between_addresses_example_call_tool.py b/public/examples/integrations/mcp-servers/search/google_maps/get_directions_between_addresses_example_call_tool.py deleted file mode 100644 index fad6312a1..000000000 --- a/public/examples/integrations/mcp-servers/search/google_maps/get_directions_between_addresses_example_call_tool.py +++ /dev/null @@ -1,20 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleMaps.GetDirectionsBetweenAddresses" - -tool_input = { - "origin_address": "123 Main St, New York, NY 10001", - "destination_address": "456 Main St, New York, NY 10001", - "distance_unit": "KM", - "travel_mode": "BEST", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/search/google_maps/get_directions_between_coordinates_example_call_tool.js b/public/examples/integrations/mcp-servers/search/google_maps/get_directions_between_coordinates_example_call_tool.js deleted file mode 100644 index 5c5e9d406..000000000 --- a/public/examples/integrations/mcp-servers/search/google_maps/get_directions_between_coordinates_example_call_tool.js +++ /dev/null @@ -1,23 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleMaps.GetDirectionsBetweenCoordinates"; - -const toolInput = { - origin_latitude: 37.7879, - origin_longitude: -122.4076, - destination_latitude: 37.8219, - destination_longitude: -122.4789, - distance_unit: "KM", - travel_mode: "BEST", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/google_maps/get_directions_between_coordinates_example_call_tool.py b/public/examples/integrations/mcp-servers/search/google_maps/get_directions_between_coordinates_example_call_tool.py deleted file mode 100644 index 29c4d8be1..000000000 --- a/public/examples/integrations/mcp-servers/search/google_maps/get_directions_between_coordinates_example_call_tool.py +++ /dev/null @@ -1,22 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleMaps.GetDirectionsBetweenCoordinates" - -tool_input = { - "origin_latitude": 37.7879, - "origin_longitude": -122.4076, - "destination_latitude": 37.8219, - "destination_longitude": -122.4789, - "distance_unit": "KM", - "travel_mode": "BEST", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/search/google_news/search_news_example_call_tool.js b/public/examples/integrations/mcp-servers/search/google_news/search_news_example_call_tool.js deleted file mode 100644 index 351a78387..000000000 --- a/public/examples/integrations/mcp-servers/search/google_news/search_news_example_call_tool.js +++ /dev/null @@ -1,18 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleNews.SearchNewsStories"; - -const toolInput = { - keywords: "Apple's new iPhone", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/google_news/search_news_example_call_tool.py b/public/examples/integrations/mcp-servers/search/google_news/search_news_example_call_tool.py deleted file mode 100644 index 0052a6d25..000000000 --- a/public/examples/integrations/mcp-servers/search/google_news/search_news_example_call_tool.py +++ /dev/null @@ -1,17 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleNews.SearchNewsStories" - -tool_input = { - "keywords": "Apple's new iPhone", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/search/google_search/search_google_example_call_tool.js b/public/examples/integrations/mcp-servers/search/google_search/search_google_example_call_tool.js deleted file mode 100644 index f358eb035..000000000 --- a/public/examples/integrations/mcp-servers/search/google_search/search_google_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "GoogleSearch.Search"; - -const toolInput = { - query: "Arcade documentation", - n_results: 5, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/google_search/search_google_example_call_tool.py b/public/examples/integrations/mcp-servers/search/google_search/search_google_example_call_tool.py deleted file mode 100644 index 2eb3e32b5..000000000 --- a/public/examples/integrations/mcp-servers/search/google_search/search_google_example_call_tool.py +++ /dev/null @@ -1,15 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "GoogleSearch.Search" - -tool_input = {"query": "Arcade documentation", "n_results": 5} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/search/google_shopping/search_shopping_products_example_call_tool.js b/public/examples/integrations/mcp-servers/search/google_shopping/search_shopping_products_example_call_tool.js deleted file mode 100644 index 91171d855..000000000 --- a/public/examples/integrations/mcp-servers/search/google_shopping/search_shopping_products_example_call_tool.js +++ /dev/null @@ -1,18 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "GoogleShopping.SearchProducts"; - -const toolInput = { - keywords: "Apple iPhone", - language_code: "en", - country_code: "us", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/google_shopping/search_shopping_products_example_call_tool.py b/public/examples/integrations/mcp-servers/search/google_shopping/search_shopping_products_example_call_tool.py deleted file mode 100644 index 5702971db..000000000 --- a/public/examples/integrations/mcp-servers/search/google_shopping/search_shopping_products_example_call_tool.py +++ /dev/null @@ -1,17 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "GoogleShopping.SearchProducts" - -tool_input = { - "keywords": "Apple iPhone", - "language_code": "en", - "country_code": "us", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/search/walmart/get_walmart_product_details_example_call_tool.js b/public/examples/integrations/mcp-servers/search/walmart/get_walmart_product_details_example_call_tool.js deleted file mode 100644 index c2b6e7201..000000000 --- a/public/examples/integrations/mcp-servers/search/walmart/get_walmart_product_details_example_call_tool.js +++ /dev/null @@ -1,16 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Walmart.GetProductDetails"; - -const toolInput = { - item_id: "1234567890", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/walmart/get_walmart_product_details_example_call_tool.py b/public/examples/integrations/mcp-servers/search/walmart/get_walmart_product_details_example_call_tool.py deleted file mode 100644 index f34406fa2..000000000 --- a/public/examples/integrations/mcp-servers/search/walmart/get_walmart_product_details_example_call_tool.py +++ /dev/null @@ -1,16 +0,0 @@ -from arcadepy import Arcade -from arcade_search.enums import WalmartSortBy - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Walmart.GetProductDetails" - -tool_input = { - "item_id": "1234567890", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/search/walmart/search_walmart_products_example_call_tool.js b/public/examples/integrations/mcp-servers/search/walmart/search_walmart_products_example_call_tool.js deleted file mode 100644 index 977435057..000000000 --- a/public/examples/integrations/mcp-servers/search/walmart/search_walmart_products_example_call_tool.js +++ /dev/null @@ -1,20 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Walmart.SearchProducts"; - -const toolInput = { - query: "Apple iPhone", - sort_by: "lowest_price_first", - max_price: 250, - next_day_delivery: true, - page: 1, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/walmart/search_walmart_products_example_call_tool.py b/public/examples/integrations/mcp-servers/search/walmart/search_walmart_products_example_call_tool.py deleted file mode 100644 index 8ccbf246a..000000000 --- a/public/examples/integrations/mcp-servers/search/walmart/search_walmart_products_example_call_tool.py +++ /dev/null @@ -1,20 +0,0 @@ -from arcadepy import Arcade -from arcade_search.enums import WalmartSortBy - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Walmart.SearchProducts" - -tool_input = { - "query": "Apple iPhone", - "sort_by": WalmartSortBy.PRICE_LOW_TO_HIGH.value, - "max_price": 250, - "next_day_delivery": True, - "page": 1, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/search/youtube/get_youtube_video_details_example_call_tool.js b/public/examples/integrations/mcp-servers/search/youtube/get_youtube_video_details_example_call_tool.js deleted file mode 100644 index 2892ddbce..000000000 --- a/public/examples/integrations/mcp-servers/search/youtube/get_youtube_video_details_example_call_tool.js +++ /dev/null @@ -1,16 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Youtube.GetYoutubeVideoDetails"; - -const toolInput = { - video_id: "dQw4w9WgXcQ", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/youtube/get_youtube_video_details_example_call_tool.py b/public/examples/integrations/mcp-servers/search/youtube/get_youtube_video_details_example_call_tool.py deleted file mode 100644 index 2d0a99980..000000000 --- a/public/examples/integrations/mcp-servers/search/youtube/get_youtube_video_details_example_call_tool.py +++ /dev/null @@ -1,15 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Youtube.GetYoutubeVideoDetails" - -tool_input = { - "video_id": "dQw4w9WgXcQ", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/search/youtube/search_youtube_videos_example_call_tool.js b/public/examples/integrations/mcp-servers/search/youtube/search_youtube_videos_example_call_tool.js deleted file mode 100644 index 0e31e677f..000000000 --- a/public/examples/integrations/mcp-servers/search/youtube/search_youtube_videos_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const TOOL_NAME = "Youtube.SearchForVideos"; - -const toolInput = { - keywords: "Apple iPhone", - language_code: "en", - country_code: "us", - next_page_token: null, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/search/youtube/search_youtube_videos_example_call_tool.py b/public/examples/integrations/mcp-servers/search/youtube/search_youtube_videos_example_call_tool.py deleted file mode 100644 index 84b0d98b0..000000000 --- a/public/examples/integrations/mcp-servers/search/youtube/search_youtube_videos_example_call_tool.py +++ /dev/null @@ -1,18 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -TOOL_NAME = "Youtube.SearchForVideos" - -tool_input = { - "keywords": "Apple iPhone", - "language_code": "en", - "country_code": "us", - "next_page_token": None, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/sharepoint/download_file_from_drive_example_call_tool.js b/public/examples/integrations/mcp-servers/sharepoint/download_file_from_drive_example_call_tool.js deleted file mode 100644 index 30c6bcb8b..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/download_file_from_drive_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Sharepoint.DownloadFileFromDrive"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "drive_id": "12345", - "file_id": "abcde", - "encoding": "utf-8" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/sharepoint/download_file_from_drive_example_call_tool.py b/public/examples/integrations/mcp-servers/sharepoint/download_file_from_drive_example_call_tool.py deleted file mode 100644 index aa9f1b921..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/download_file_from_drive_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Sharepoint.DownloadFileFromDrive" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'drive_id': '12345', 'file_id': 'abcde', 'encoding': 'utf-8' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/sharepoint/get_drives_from_site_example_call_tool.js b/public/examples/integrations/mcp-servers/sharepoint/get_drives_from_site_example_call_tool.js deleted file mode 100644 index c54cbe6ce..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/get_drives_from_site_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Sharepoint.GetDrivesFromSite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site": "https://example.sharepoint.com/sites/sample-site" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/sharepoint/get_drives_from_site_example_call_tool.py b/public/examples/integrations/mcp-servers/sharepoint/get_drives_from_site_example_call_tool.py deleted file mode 100644 index 58ac9bd45..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/get_drives_from_site_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Sharepoint.GetDrivesFromSite" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site': 'https://example.sharepoint.com/sites/sample-site' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/sharepoint/get_followed_sites_example_call_tool.js b/public/examples/integrations/mcp-servers/sharepoint/get_followed_sites_example_call_tool.js deleted file mode 100644 index 983bd58e9..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/get_followed_sites_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Sharepoint.GetFollowedSites"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/sharepoint/get_followed_sites_example_call_tool.py b/public/examples/integrations/mcp-servers/sharepoint/get_followed_sites_example_call_tool.py deleted file mode 100644 index 03d08f2ab..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/get_followed_sites_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Sharepoint.GetFollowedSites" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'limit': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/sharepoint/get_items_from_list_example_call_tool.js b/public/examples/integrations/mcp-servers/sharepoint/get_items_from_list_example_call_tool.js deleted file mode 100644 index e2bad672d..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/get_items_from_list_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Sharepoint.GetItemsFromList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site": "https://example.sharepoint.com/sites/sample-site", - "list_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/sharepoint/get_items_from_list_example_call_tool.py b/public/examples/integrations/mcp-servers/sharepoint/get_items_from_list_example_call_tool.py deleted file mode 100644 index f4a0f6dd1..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/get_items_from_list_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Sharepoint.GetItemsFromList" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site': 'https://example.sharepoint.com/sites/sample-site', 'list_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/sharepoint/get_lists_from_site_example_call_tool.js b/public/examples/integrations/mcp-servers/sharepoint/get_lists_from_site_example_call_tool.js deleted file mode 100644 index 53036388e..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/get_lists_from_site_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Sharepoint.GetListsFromSite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site": "https://example.sharepoint.com/sites/sample-site" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/sharepoint/get_lists_from_site_example_call_tool.py b/public/examples/integrations/mcp-servers/sharepoint/get_lists_from_site_example_call_tool.py deleted file mode 100644 index 7e489ff9a..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/get_lists_from_site_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Sharepoint.GetListsFromSite" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site': 'https://example.sharepoint.com/sites/sample-site' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/sharepoint/get_page_example_call_tool.js b/public/examples/integrations/mcp-servers/sharepoint/get_page_example_call_tool.js deleted file mode 100644 index ce919661b..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/get_page_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Sharepoint.GetPage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site": "https://example.sharepoint.com/sites/sample-site", - "page_id": "12345", - "include_page_content": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/sharepoint/get_page_example_call_tool.py b/public/examples/integrations/mcp-servers/sharepoint/get_page_example_call_tool.py deleted file mode 100644 index 5193f6f6a..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/get_page_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Sharepoint.GetPage" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site': 'https://example.sharepoint.com/sites/sample-site', - 'page_id': '12345', - 'include_page_content': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/sharepoint/get_site_example_call_tool.js b/public/examples/integrations/mcp-servers/sharepoint/get_site_example_call_tool.js deleted file mode 100644 index ba01312c3..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/get_site_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Sharepoint.GetSite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site": "https://example.sharepoint.com/sites/sample-site" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/sharepoint/get_site_example_call_tool.py b/public/examples/integrations/mcp-servers/sharepoint/get_site_example_call_tool.py deleted file mode 100644 index 1e866961b..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/get_site_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Sharepoint.GetSite" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site': 'https://example.sharepoint.com/sites/sample-site' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/sharepoint/list_items_in_folder_example_call_tool.js b/public/examples/integrations/mcp-servers/sharepoint/list_items_in_folder_example_call_tool.js deleted file mode 100644 index c2c6380a6..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/list_items_in_folder_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Sharepoint.ListItemsInFolder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "drive_id": "12345", - "folder_id": "67890", - "limit": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/sharepoint/list_items_in_folder_example_call_tool.py b/public/examples/integrations/mcp-servers/sharepoint/list_items_in_folder_example_call_tool.py deleted file mode 100644 index f3504e17b..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/list_items_in_folder_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Sharepoint.ListItemsInFolder" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'drive_id': '12345', 'folder_id': '67890', 'limit': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/sharepoint/list_pages_example_call_tool.js b/public/examples/integrations/mcp-servers/sharepoint/list_pages_example_call_tool.js deleted file mode 100644 index 1c194f659..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/list_pages_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Sharepoint.ListPages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site": "example-site-id", - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/sharepoint/list_pages_example_call_tool.py b/public/examples/integrations/mcp-servers/sharepoint/list_pages_example_call_tool.py deleted file mode 100644 index aae298ea6..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/list_pages_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Sharepoint.ListPages" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site': 'example-site-id', 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/sharepoint/list_root_items_in_drive_example_call_tool.js b/public/examples/integrations/mcp-servers/sharepoint/list_root_items_in_drive_example_call_tool.js deleted file mode 100644 index 99b585a83..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/list_root_items_in_drive_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Sharepoint.ListRootItemsInDrive"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "drive_id": "12345", - "limit": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/sharepoint/list_root_items_in_drive_example_call_tool.py b/public/examples/integrations/mcp-servers/sharepoint/list_root_items_in_drive_example_call_tool.py deleted file mode 100644 index aa2e4ba8b..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/list_root_items_in_drive_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Sharepoint.ListRootItemsInDrive" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'drive_id': '12345', 'limit': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/sharepoint/list_sites_example_call_tool.js b/public/examples/integrations/mcp-servers/sharepoint/list_sites_example_call_tool.js deleted file mode 100644 index dcee6b0a2..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/list_sites_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Sharepoint.ListSites"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 25, - "offset": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/sharepoint/list_sites_example_call_tool.py b/public/examples/integrations/mcp-servers/sharepoint/list_sites_example_call_tool.py deleted file mode 100644 index 0f792fca4..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/list_sites_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Sharepoint.ListSites" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'limit': 25, 'offset': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/sharepoint/search_drive_items_example_call_tool.js b/public/examples/integrations/mcp-servers/sharepoint/search_drive_items_example_call_tool.js deleted file mode 100644 index 38c8b62df..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/search_drive_items_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Sharepoint.SearchDriveItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": "project report", - "drive_id": "12345", - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/sharepoint/search_drive_items_example_call_tool.py b/public/examples/integrations/mcp-servers/sharepoint/search_drive_items_example_call_tool.py deleted file mode 100644 index 1314677bd..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/search_drive_items_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Sharepoint.SearchDriveItems" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'keywords': 'project report', 'drive_id': '12345', 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/sharepoint/search_sites_example_call_tool.js b/public/examples/integrations/mcp-servers/sharepoint/search_sites_example_call_tool.js deleted file mode 100644 index f1d151be4..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/search_sites_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Sharepoint.SearchSites"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": "project", - "limit": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/sharepoint/search_sites_example_call_tool.py b/public/examples/integrations/mcp-servers/sharepoint/search_sites_example_call_tool.py deleted file mode 100644 index 394411000..000000000 --- a/public/examples/integrations/mcp-servers/sharepoint/search_sites_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Sharepoint.SearchSites" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'keywords': 'project', 'limit': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_channel_metadata_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_channel_metadata_by_name_example_call_tool.js deleted file mode 100644 index 64c932c6c..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_channel_metadata_by_name_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.GetChannelMetadataByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_name": "general", - "next_cursor": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_channel_metadata_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_channel_metadata_by_name_example_call_tool.py deleted file mode 100644 index b42c35a4d..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_channel_metadata_by_name_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.GetChannelMetadataByName" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_name': 'general', 'next_cursor': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_conversation_history_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_conversation_history_by_id_example_call_tool.js deleted file mode 100644 index 832ec7658..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_conversation_history_by_id_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.GetConversationHistoryById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - conversation_id: "C1234567890", - limit: 100, - oldest_datetime: "2023-01-01 00:00:00", - latest_datetime: "2023-01-31 23:59:59", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/slack/get_conversation_history_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_conversation_history_by_id_example_call_tool.py deleted file mode 100644 index 175914538..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_conversation_history_by_id_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.GetConversationHistoryById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "conversation_id": "C1234567890", - "limit": 100, - "oldest_datetime": "2023-01-01 00:00:00", - "latest_datetime": "2023-01-31 23:59:59", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/slack/get_conversation_history_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_conversation_history_by_name_example_call_tool.js deleted file mode 100644 index 1d240b0fd..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_conversation_history_by_name_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.GetConversationHistoryByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - conversation_name: "general", - limit: 100, - oldest_datetime: "2023-01-01 00:00:00", - latest_datetime: "2023-01-31 23:59:59" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/slack/get_conversation_history_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_conversation_history_by_name_example_call_tool.py deleted file mode 100644 index c65480338..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_conversation_history_by_name_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.GetConversationHistoryByName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "conversation_name": "general", - "limit": 100, - "oldest_datetime": "2023-01-01 00:00:00", - "latest_datetime": "2023-01-31 23:59:59", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/slack/get_conversation_metadata_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_conversation_metadata_by_id_example_call_tool.js deleted file mode 100644 index 587904677..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_conversation_metadata_by_id_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.GetConversationMetadataById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_id": "C1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_conversation_metadata_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_conversation_metadata_by_id_example_call_tool.py deleted file mode 100644 index 1f888de08..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_conversation_metadata_by_id_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.GetConversationMetadataById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_id': 'C1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_conversation_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_conversation_metadata_example_call_tool.js deleted file mode 100644 index 06d5c335e..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_conversation_metadata_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "user@example.com"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Slack.GetConversationMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_id": "C1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_conversation_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_conversation_metadata_example_call_tool.py deleted file mode 100644 index 955ba96a1..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_conversation_metadata_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "user@example.com" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Slack.GetConversationMetadata" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_id': 'C1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_direct_message_conversation_metadata_by_username_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_direct_message_conversation_metadata_by_username_example_call_tool.js deleted file mode 100644 index 9ec858aa0..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_direct_message_conversation_metadata_by_username_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.GetDirectMessageConversationMetadataByUsername"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "username": "john_doe", - "next_cursor": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_direct_message_conversation_metadata_by_username_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_direct_message_conversation_metadata_by_username_example_call_tool.py deleted file mode 100644 index e8f78c627..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_direct_message_conversation_metadata_by_username_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.GetDirectMessageConversationMetadataByUsername" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'username': 'john_doe', 'next_cursor': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_members_in_channel_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_members_in_channel_by_name_example_call_tool.js deleted file mode 100644 index 2f06291af..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_members_in_channel_by_name_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.GetMembersInChannelByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_name": "general", - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_members_in_channel_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_members_in_channel_by_name_example_call_tool.py deleted file mode 100644 index b7ed797df..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_members_in_channel_by_name_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.GetMembersInChannelByName" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_name': 'general', 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_members_in_conversation_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_members_in_conversation_by_id_example_call_tool.js deleted file mode 100644 index da5113060..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_members_in_conversation_by_id_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.GetMembersInConversationById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_id": "C1234567890", - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_members_in_conversation_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_members_in_conversation_by_id_example_call_tool.py deleted file mode 100644 index 9f88cfeb7..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_members_in_conversation_by_id_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.GetMembersInConversationById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_id': 'C1234567890', 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_messages_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_messages_example_call_tool.js deleted file mode 100644 index cf9cef993..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_messages_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "user@example.com"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Slack.GetMessages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_name": "general", - "oldest_relative": "01:00:00", - "limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_messages_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_messages_example_call_tool.py deleted file mode 100644 index 6daab0f0c..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_messages_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "user@example.com" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Slack.GetMessages" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_name': 'general', - 'oldest_relative': '01:00:00', - 'limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_messages_in_channel_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_messages_in_channel_by_name_example_call_tool.js deleted file mode 100644 index b3af39ddb..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_messages_in_channel_by_name_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.GetMessagesInChannelByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_name": "general", - "oldest_relative": "1:00:00", - "limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_messages_in_channel_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_messages_in_channel_by_name_example_call_tool.py deleted file mode 100644 index c186a1571..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_messages_in_channel_by_name_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.GetMessagesInChannelByName" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_name': 'general', 'oldest_relative': '1:00:00', 'limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_messages_in_conversation_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_messages_in_conversation_by_id_example_call_tool.js deleted file mode 100644 index 1681e4d30..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_messages_in_conversation_by_id_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.GetMessagesInConversationById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_id": "C1234567890", - "oldest_relative": "01:00:00", - "limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_messages_in_conversation_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_messages_in_conversation_by_id_example_call_tool.py deleted file mode 100644 index 09e2adf1a..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_messages_in_conversation_by_id_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.GetMessagesInConversationById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_id': 'C1234567890', 'oldest_relative': '01:00:00', 'limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_messages_in_direct_message_conversation_by_username_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_messages_in_direct_message_conversation_by_username_example_call_tool.js deleted file mode 100644 index a0f0989e7..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_messages_in_direct_message_conversation_by_username_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.GetMessagesInDirectMessageConversationByUsername"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "username": "john_doe", - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_messages_in_direct_message_conversation_by_username_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_messages_in_direct_message_conversation_by_username_example_call_tool.py deleted file mode 100644 index b977c6b69..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_messages_in_direct_message_conversation_by_username_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.GetMessagesInDirectMessageConversationByUsername" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'username': 'john_doe', 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_messages_in_multi_person_dm_conversation_by_username_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_messages_in_multi_person_dm_conversation_by_username_example_call_tool.js deleted file mode 100644 index c7ccdbc05..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_messages_in_multi_person_dm_conversation_by_username_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.GetMessagesInMultiPersonDmConversationByUsername"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - usernames: ["john_doe", "jane_doe"], - limit: 100, - oldest_datetime: "2023-01-01 00:00:00", - latest_datetime: "2023-01-31 23:59:59" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/slack/get_messages_in_multi_person_dm_conversation_by_username_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_messages_in_multi_person_dm_conversation_by_username_example_call_tool.py deleted file mode 100644 index bc6502612..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_messages_in_multi_person_dm_conversation_by_username_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.GetMessagesInMultiPersonDmConversationByUsername" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "usernames": ["john_doe", "jane_doe"], - "limit": 100, - "oldest_datetime": "2023-01-01 00:00:00", - "latest_datetime": "2023-01-31 23:59:59", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/slack/get_messages_in_multi_person_dm_conversation_by_usernames_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_messages_in_multi_person_dm_conversation_by_usernames_example_call_tool.js deleted file mode 100644 index 90511f3b4..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_messages_in_multi_person_dm_conversation_by_usernames_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "user@example.com"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Slack.GetMessagesInMultiPersonDmConversationByUsernames"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "usernames": [ - "user1", - "user2" - ], - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_messages_in_multi_person_dm_conversation_by_usernames_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_messages_in_multi_person_dm_conversation_by_usernames_example_call_tool.py deleted file mode 100644 index 676a29a6f..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_messages_in_multi_person_dm_conversation_by_usernames_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "user@example.com" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Slack.GetMessagesInMultiPersonDmConversationByUsernames" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'usernames': ['user1', 'user2'], 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_multi_person_dm_conversation_metadata_by_usernames_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_multi_person_dm_conversation_metadata_by_usernames_example_call_tool.js deleted file mode 100644 index 2b3226315..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_multi_person_dm_conversation_metadata_by_usernames_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.GetMultiPersonDmConversationMetadataByUsername"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "usernames": [ - "alice", - "bob", - "charlie" - ], - "next_cursor": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_multi_person_dm_conversation_metadata_by_usernames_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_multi_person_dm_conversation_metadata_by_usernames_example_call_tool.py deleted file mode 100644 index ea60a60b2..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_multi_person_dm_conversation_metadata_by_usernames_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.GetMultiPersonDmConversationMetadataByUsername" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'usernames': ['alice', 'bob', 'charlie'], 'next_cursor': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_user_info_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_user_info_by_id_example_call_tool.js deleted file mode 100644 index a5d52cbeb..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_user_info_by_id_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.GetUserInfoById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "U12345678" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_user_info_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_user_info_by_id_example_call_tool.py deleted file mode 100644 index 5ceeda3b7..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_user_info_by_id_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.GetUserInfoById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': 'U12345678' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_users_in_conversation_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_users_in_conversation_example_call_tool.js deleted file mode 100644 index bb0cf4723..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_users_in_conversation_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "user@example.com"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Slack.GetUsersInConversation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_id": "C1234567890", - "limit": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_users_in_conversation_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_users_in_conversation_example_call_tool.py deleted file mode 100644 index 7fbc50cd8..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_users_in_conversation_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "user@example.com" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Slack.GetUsersInConversation" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_id': 'C1234567890', 'limit': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/get_users_info_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/get_users_info_example_call_tool.js deleted file mode 100644 index 48874bd87..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_users_info_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "user@example.com"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Slack.GetUsersInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_ids": [ - "U12345", - "U67890" - ], - "usernames": [ - "john_doe", - "jane_smith" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/get_users_info_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/get_users_info_example_call_tool.py deleted file mode 100644 index f0858d210..000000000 --- a/public/examples/integrations/mcp-servers/slack/get_users_info_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "user@example.com" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Slack.GetUsersInfo" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_ids': ['U12345', 'U67890'], 'usernames': ['john_doe', 'jane_smith'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/list_conversations_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/list_conversations_example_call_tool.js deleted file mode 100644 index f775031e4..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_conversations_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "user@example.com"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Slack.ListConversations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_types": [ - "public_channel", - "direct_message" - ], - "limit": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/list_conversations_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/list_conversations_example_call_tool.py deleted file mode 100644 index a627840b9..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_conversations_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "user@example.com" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Slack.ListConversations" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_types': ['public_channel', 'direct_message'], 'limit': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/list_conversations_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/list_conversations_metadata_example_call_tool.js deleted file mode 100644 index 5430eafdd..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_conversations_metadata_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.ListConversationsMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_types": [ - "public_channel", - "direct_message" - ], - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/list_conversations_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/list_conversations_metadata_example_call_tool.py deleted file mode 100644 index 3916646af..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_conversations_metadata_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.ListConversationsMetadata" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_types': ['public_channel', 'direct_message'], 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/list_direct_message_channels_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/list_direct_message_channels_metadata_example_call_tool.js deleted file mode 100644 index 684df3d4b..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_direct_message_channels_metadata_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.ListDirectMessageChannelsMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - limit: 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/slack/list_direct_message_channels_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/list_direct_message_channels_metadata_example_call_tool.py deleted file mode 100644 index 08639bf56..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_direct_message_channels_metadata_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.ListDirectMessageChannelsMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"limit": 100} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/slack/list_direct_message_conversations_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/list_direct_message_conversations_metadata_example_call_tool.js deleted file mode 100644 index 89d809990..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_direct_message_conversations_metadata_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.ListDirectMessageConversationsMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/list_direct_message_conversations_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/list_direct_message_conversations_metadata_example_call_tool.py deleted file mode 100644 index 29ee5e0dc..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_direct_message_conversations_metadata_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.ListDirectMessageConversationsMetadata" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'limit': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/list_group_direct_message_channels_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/list_group_direct_message_channels_metadata_example_call_tool.js deleted file mode 100644 index 1dda86336..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_group_direct_message_channels_metadata_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.ListGroupDirectMessageChannelsMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - limit: 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/slack/list_group_direct_message_channels_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/list_group_direct_message_channels_metadata_example_call_tool.py deleted file mode 100644 index 2680aac39..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_group_direct_message_channels_metadata_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.ListGroupDirectMessageChannelsMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"limit": 100} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/slack/list_group_direct_message_conversations_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/list_group_direct_message_conversations_metadata_example_call_tool.js deleted file mode 100644 index 9bd722ae0..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_group_direct_message_conversations_metadata_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.ListGroupDirectMessageConversationsMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/list_group_direct_message_conversations_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/list_group_direct_message_conversations_metadata_example_call_tool.py deleted file mode 100644 index b0a9151af..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_group_direct_message_conversations_metadata_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.ListGroupDirectMessageConversationsMetadata" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'limit': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/list_private_channels_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/list_private_channels_metadata_example_call_tool.js deleted file mode 100644 index c78b15608..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_private_channels_metadata_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.ListPrivateChannelsMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/list_private_channels_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/list_private_channels_metadata_example_call_tool.py deleted file mode 100644 index fd4d9f540..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_private_channels_metadata_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.ListPrivateChannelsMetadata" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'limit': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/list_public_channels_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/list_public_channels_metadata_example_call_tool.js deleted file mode 100644 index 33fb0f018..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_public_channels_metadata_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.ListPublicChannelsMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "limit": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/list_public_channels_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/list_public_channels_metadata_example_call_tool.py deleted file mode 100644 index b3813be80..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_public_channels_metadata_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.ListPublicChannelsMetadata" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'limit': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/list_users_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/list_users_example_call_tool.js deleted file mode 100644 index ef7c4db7f..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_users_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.ListUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exclude_bots": true, - "limit": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/list_users_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/list_users_example_call_tool.py deleted file mode 100644 index dd4fa04e2..000000000 --- a/public/examples/integrations/mcp-servers/slack/list_users_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.ListUsers" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exclude_bots': True, 'limit': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/send_dm_to_user_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/send_dm_to_user_example_call_tool.js deleted file mode 100644 index dd9fb0601..000000000 --- a/public/examples/integrations/mcp-servers/slack/send_dm_to_user_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.SendDmToUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_name": "john_doe", - "message": "Hello, how are you?" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/send_dm_to_user_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/send_dm_to_user_example_call_tool.py deleted file mode 100644 index f8e13c67e..000000000 --- a/public/examples/integrations/mcp-servers/slack/send_dm_to_user_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.SendDmToUser" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_name': 'john_doe', 'message': 'Hello, how are you?' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/send_message_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/send_message_example_call_tool.js deleted file mode 100644 index 0e512c247..000000000 --- a/public/examples/integrations/mcp-servers/slack/send_message_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "user@example.com"; // Unique identifier for your user (email, UUID, etc.) -const TOOL_NAME = "Slack.SendMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "message": "Hello, team!", - "channel_name": "general" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/send_message_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/send_message_example_call_tool.py deleted file mode 100644 index cfe268456..000000000 --- a/public/examples/integrations/mcp-servers/slack/send_message_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "user@example.com" # Unique identifier for your user (email, UUID, etc.) -TOOL_NAME = "Slack.SendMessage" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'message': 'Hello, team!', 'channel_name': 'general' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/send_message_to_channel_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/send_message_to_channel_example_call_tool.js deleted file mode 100644 index 5ddc89009..000000000 --- a/public/examples/integrations/mcp-servers/slack/send_message_to_channel_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.SendMessageToChannel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_name": "general", - "message": "Hello, team!" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/send_message_to_channel_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/send_message_to_channel_example_call_tool.py deleted file mode 100644 index e538c8b42..000000000 --- a/public/examples/integrations/mcp-servers/slack/send_message_to_channel_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.SendMessageToChannel" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_name': 'general', 'message': 'Hello, team!' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/slack/who_am_i_example_call_tool.js deleted file mode 100644 index 5c0c4875a..000000000 --- a/public/examples/integrations/mcp-servers/slack/who_am_i_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Slack.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/slack/who_am_i_example_call_tool.py deleted file mode 100644 index 01a9a9104..000000000 --- a/public/examples/integrations/mcp-servers/slack/who_am_i_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Slack.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/accept_slack_invite_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/accept_slack_invite_example_call_tool.js deleted file mode 100644 index d4cfe2060..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/accept_slack_invite_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.AcceptSlackInvite"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_name": "partner-project", - "slack_channel_id_to_accept": "C1234567890", - "workspace_id": "T9876543210", - "is_channel_private": false, - "use_free_trial": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/accept_slack_invite_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/accept_slack_invite_example_call_tool.py deleted file mode 100644 index 57ba74aee..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/accept_slack_invite_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.AcceptSlackInvite" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_name': 'partner-project', - 'slack_channel_id_to_accept': 'C1234567890', - 'workspace_id': 'T9876543210', - 'is_channel_private': False, - 'use_free_trial': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/add_call_participants_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/add_call_participants_example_call_tool.js deleted file mode 100644 index b24d085d2..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/add_call_participants_example_call_tool.js +++ /dev/null @@ -1,43 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.AddCallParticipants"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "call_id": "C12345678", - "participant_users": [ - { - "slack_id": "U23456789", - "display_name": "Alice Chen", - "avatar_url": "https://example.com/alice.jpg" - }, - { - "external_id": "external-987", - "display_name": "Bob Martín", - "avatar_url": "https://example.com/bob.png" - } - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/add_call_participants_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/add_call_participants_example_call_tool.py deleted file mode 100644 index 535c8d9da..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/add_call_participants_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.AddCallParticipants" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'call_id': 'C12345678', - 'participant_users': [ { 'slack_id': 'U23456789', - 'display_name': 'Alice Chen', - 'avatar_url': 'https://example.com/alice.jpg'}, - { 'external_id': 'external-987', - 'display_name': 'Bob Martín', - 'avatar_url': 'https://example.com/bob.png'}] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/add_slack_emoji_alias_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/add_slack_emoji_alias_example_call_tool.js deleted file mode 100644 index beae5e42b..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/add_slack_emoji_alias_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.AddSlackEmojiAlias"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "emoji_alias_name": "party_parrot_alt", - "target_emoji_name": "party_parrot" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/add_slack_emoji_alias_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/add_slack_emoji_alias_example_call_tool.py deleted file mode 100644 index 441c62e8a..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/add_slack_emoji_alias_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.AddSlackEmojiAlias" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'emoji_alias_name': 'party_parrot_alt', 'target_emoji_name': 'party_parrot' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/add_slack_reaction_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/add_slack_reaction_example_call_tool.js deleted file mode 100644 index 859f24c95..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/add_slack_reaction_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.AddSlackReaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "slack_channel_id": "C024BE7LR", - "reaction_emoji_name": "thumbsup", - "message_timestamp": "1623867600.000200" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/add_slack_reaction_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/add_slack_reaction_example_call_tool.py deleted file mode 100644 index 7743b4de2..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/add_slack_reaction_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.AddSlackReaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'slack_channel_id': 'C024BE7LR', - 'reaction_emoji_name': 'thumbsup', - 'message_timestamp': '1623867600.000200' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/approve_slack_channel_invitation_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/approve_slack_channel_invitation_example_call_tool.js deleted file mode 100644 index e7859e3fa..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/approve_slack_channel_invitation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ApproveSlackChannelInvitation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shared_channel_invite_id": "SINV-1234567890", - "other_party_team_id": "T12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/approve_slack_channel_invitation_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/approve_slack_channel_invitation_example_call_tool.py deleted file mode 100644 index eeae4267b..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/approve_slack_channel_invitation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ApproveSlackChannelInvitation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shared_channel_invite_id': 'SINV-1234567890', 'other_party_team_id': 'T12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/check_api_calling_code_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/check_api_calling_code_example_call_tool.js deleted file mode 100644 index 56fa3a67d..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/check_api_calling_code_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.CheckApiCallingCode"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "simulate_error_response": "invalid_auth" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/check_api_calling_code_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/check_api_calling_code_example_call_tool.py deleted file mode 100644 index 91375aa14..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/check_api_calling_code_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.CheckApiCallingCode" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'simulate_error_response': 'invalid_auth' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/check_slack_discoverability_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/check_slack_discoverability_example_call_tool.js deleted file mode 100644 index a8e7b04d3..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/check_slack_discoverability_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.CheckSlackDiscoverability"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "email_to_check": "alice@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/check_slack_discoverability_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/check_slack_discoverability_example_call_tool.py deleted file mode 100644 index ff977e7b8..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/check_slack_discoverability_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.CheckSlackDiscoverability" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'email_to_check': 'alice@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/create_slack_conversation_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/create_slack_conversation_example_call_tool.js deleted file mode 100644 index e29c2f685..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/create_slack_conversation_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.CreateSlackConversation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_name": "project_alpha_updates", - "encoded_team_id": "T12345ORG", - "create_private_channel": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/create_slack_conversation_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/create_slack_conversation_example_call_tool.py deleted file mode 100644 index 508156472..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/create_slack_conversation_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.CreateSlackConversation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_name': 'project_alpha_updates', - 'encoded_team_id': 'T12345ORG', - 'create_private_channel': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/create_slack_user_group_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/create_slack_user_group_example_call_tool.js deleted file mode 100644 index 4905c847a..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/create_slack_user_group_example_call_tool.js +++ /dev/null @@ -1,43 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.CreateSlackUserGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_group_name": "oncall-engineers", - "default_channel_ids": [ - "C01234567", - "C08901234" - ], - "custom_additional_channels": [ - "C05555555" - ], - "user_group_description": "Engineers responsible for on-call rotations and incident response.", - "unique_mention_handle": "oncall", - "team_id_for_user_group_creation": "T012ABCDEF", - "include_user_count": true, - "enable_display_as_sidebar_section": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/create_slack_user_group_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/create_slack_user_group_example_call_tool.py deleted file mode 100644 index 869bbdda0..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/create_slack_user_group_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.CreateSlackUserGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_group_name': 'oncall-engineers', - 'default_channel_ids': ['C01234567', 'C08901234'], - 'custom_additional_channels': ['C05555555'], - 'user_group_description': 'Engineers responsible for on-call rotations and incident response.', - 'unique_mention_handle': 'oncall', - 'team_id_for_user_group_creation': 'T012ABCDEF', - 'include_user_count': True, - 'enable_display_as_sidebar_section': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/custom_unfurl_slack_urls_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/custom_unfurl_slack_urls_example_call_tool.js deleted file mode 100644 index 66a59f9d3..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/custom_unfurl_slack_urls_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.CustomUnfurlSlackUrls"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_id": "C1234567890", - "message_timestamp": "1623864557.000200", - "unfurl_url_map": "{\"https://example.com/item/42\": {\"attachments\": [{\"text\": \"Item 42 details\",\"actions\": [{\"type\": \"button\",\"text\": \"View\",\"url\": \"https://example.com/item/42\"}] }]}}", - "authentication_invitation_message": "Please *connect* your account to view detailed previews. ", - "custom_authentication_url": "https://example.com/auth?return_to=%2Fapp", - "user_authentication_blocks": "[{\"type\":\"section\",\"text\":{\"type\":\"mrkdwn\",\"text\":\"Click below to connect your account.\"}},{\"type\":\"actions\",\"elements\":[{\"type\":\"button\",\"text\":{\"type\":\"plain_text\",\"text\":\"Authenticate\"},\"url\":\"https://example.com/auth\"}]}]", - "unfurl_link_id": "LNK-98765", - "link_source": "conversations_history", - "require_user_authentication": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/custom_unfurl_slack_urls_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/custom_unfurl_slack_urls_example_call_tool.py deleted file mode 100644 index 3fc997514..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/custom_unfurl_slack_urls_example_call_tool.py +++ /dev/null @@ -1,42 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.CustomUnfurlSlackUrls" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_id': 'C1234567890', - 'message_timestamp': '1623864557.000200', - 'unfurl_url_map': '{"https://example.com/item/42": {"attachments": [{"text": "Item 42 ' - 'details","actions": [{"type": "button","text": "View","url": ' - '"https://example.com/item/42"}] }]}}', - 'authentication_invitation_message': 'Please *connect* your account to view detailed previews. ' - '', - 'custom_authentication_url': 'https://example.com/auth?return_to=%2Fapp', - 'user_authentication_blocks': '[{"type":"section","text":{"type":"mrkdwn","text":"Click below ' - 'to connect your ' - 'account."}},{"type":"actions","elements":[{"type":"button","text":{"type":"plain_text","text":"Authenticate"},"url":"https://example.com/auth"}]}]', - 'unfurl_link_id': 'LNK-98765', - 'link_source': 'conversations_history', - 'require_user_authentication': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/delete_scheduled_slack_message_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/delete_scheduled_slack_message_example_call_tool.js deleted file mode 100644 index 519baa1a3..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/delete_scheduled_slack_message_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.DeleteScheduledSlackMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_id": "C1234567890", - "scheduled_message_id": "Q1298391293", - "delete_as_authenticated_user": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/delete_scheduled_slack_message_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/delete_scheduled_slack_message_example_call_tool.py deleted file mode 100644 index 600803617..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/delete_scheduled_slack_message_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.DeleteScheduledSlackMessage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_id': 'C1234567890', - 'scheduled_message_id': 'Q1298391293', - 'delete_as_authenticated_user': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/deny_shared_invite_request_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/deny_shared_invite_request_example_call_tool.js deleted file mode 100644 index edf7cf281..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/deny_shared_invite_request_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.DenySharedInviteRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shared_channel_invite_id": "SCI1234567890", - "deny_invite_message": "We cannot approve external members for this channel at this time." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/deny_shared_invite_request_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/deny_shared_invite_request_example_call_tool.py deleted file mode 100644 index 66a03a238..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/deny_shared_invite_request_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.DenySharedInviteRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shared_channel_invite_id': 'SCI1234567890', - 'deny_invite_message': 'We cannot approve external members for this channel at this time.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/disable_user_group_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/disable_user_group_example_call_tool.js deleted file mode 100644 index ab848013b..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/disable_user_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.DisableUserGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_group_id": "S12345G", - "team_id": "T67890", - "include_user_count": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/disable_user_group_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/disable_user_group_example_call_tool.py deleted file mode 100644 index f00c249cb..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/disable_user_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.DisableUserGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_group_id': 'S12345G', 'team_id': 'T67890', 'include_user_count': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/edit_slack_bookmark_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/edit_slack_bookmark_example_call_tool.js deleted file mode 100644 index c24b47d47..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/edit_slack_bookmark_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.EditSlackBookmark"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "slack_channel_id": "C12345678", - "target_bookmark_id": "BKMK-98765", - "bookmark_title": "Design Spec - Q4", - "bookmark_link": "https://example.com/design-spec-q4", - "emoji_tag": ":bookmark:" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/edit_slack_bookmark_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/edit_slack_bookmark_example_call_tool.py deleted file mode 100644 index 296d7876f..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/edit_slack_bookmark_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.EditSlackBookmark" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'slack_channel_id': 'C12345678', - 'target_bookmark_id': 'BKMK-98765', - 'bookmark_title': 'Design Spec - Q4', - 'bookmark_link': 'https://example.com/design-spec-q4', - 'emoji_tag': ':bookmark:' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/enable_slack_file_sharing_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/enable_slack_file_sharing_example_call_tool.js deleted file mode 100644 index 32bc4abc3..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/enable_slack_file_sharing_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.EnableSlackFileSharing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_id_to_share": "F1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/enable_slack_file_sharing_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/enable_slack_file_sharing_example_call_tool.py deleted file mode 100644 index 11cfee6a4..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/enable_slack_file_sharing_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.EnableSlackFileSharing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_id_to_share': 'F1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/enable_slack_user_group_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/enable_slack_user_group_example_call_tool.js deleted file mode 100644 index 98a50b8a0..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/enable_slack_user_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.EnableSlackUserGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_group_id": "S01234567", - "team_id": "T98765432", - "include_user_count": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/enable_slack_user_group_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/enable_slack_user_group_example_call_tool.py deleted file mode 100644 index 40adcef06..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/enable_slack_user_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.EnableSlackUserGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_group_id': 'S01234567', 'team_id': 'T98765432', 'include_user_count': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/fetch_workspace_settings_info_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/fetch_workspace_settings_info_example_call_tool.js deleted file mode 100644 index 64e0c90ef..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/fetch_workspace_settings_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.FetchWorkspaceSettingsInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "slack_team_id": "T12345678" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/fetch_workspace_settings_info_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/fetch_workspace_settings_info_example_call_tool.py deleted file mode 100644 index 9ec7fc5fd..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/fetch_workspace_settings_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.FetchWorkspaceSettingsInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'slack_team_id': 'T12345678' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/find_slack_user_by_email_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/find_slack_user_by_email_example_call_tool.js deleted file mode 100644 index 58b61c170..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/find_slack_user_by_email_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.FindSlackUserByEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_email_address": "jane.doe@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/find_slack_user_by_email_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/find_slack_user_by_email_example_call_tool.py deleted file mode 100644 index cb63ea95b..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/find_slack_user_by_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.FindSlackUserByEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_email_address': 'jane.doe@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_call_information_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_call_information_example_call_tool.js deleted file mode 100644 index 73fa8dd27..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_call_information_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetCallInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "call_id": "R0lGODlhM0A0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_call_information_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_call_information_example_call_tool.py deleted file mode 100644 index f6431482a..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_call_information_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetCallInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'call_id': 'R0lGODlhM0A0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_conversation_info_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_conversation_info_example_call_tool.js deleted file mode 100644 index 9818bbb49..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_conversation_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetConversationInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_id": "C01234567", - "include_locale": true, - "include_member_count": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_conversation_info_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_conversation_info_example_call_tool.py deleted file mode 100644 index ebea94bee..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_conversation_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetConversationInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_id': 'C01234567', 'include_locale': True, 'include_member_count': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_current_slack_team_info_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_current_slack_team_info_example_call_tool.js deleted file mode 100644 index 0f21525ee..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_current_slack_team_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetCurrentSlackTeamInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "query_by_domain": "engineering.example.com,design.example.com", - "specific_team_id": "T1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_current_slack_team_info_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_current_slack_team_info_example_call_tool.py deleted file mode 100644 index 4ff06ed28..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_current_slack_team_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetCurrentSlackTeamInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'query_by_domain': 'engineering.example.com,design.example.com', 'specific_team_id': 'T1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_external_file_upload_url_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_external_file_upload_url_example_call_tool.js deleted file mode 100644 index f20fae875..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_external_file_upload_url_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetExternalFileUploadUrl"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_size_in_bytes": 204800, - "file_name": "error_log.txt", - "snippet_syntax_type": "text", - "alt_text_description": "Application error log file from 2025-09-23" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_external_file_upload_url_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_external_file_upload_url_example_call_tool.py deleted file mode 100644 index 8688164e4..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_external_file_upload_url_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetExternalFileUploadUrl" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_size_in_bytes': 204800, - 'file_name': 'error_log.txt', - 'snippet_syntax_type': 'text', - 'alt_text_description': 'Application error log file from 2025-09-23' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_integration_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_integration_logs_example_call_tool.js deleted file mode 100644 index d97bf6ade..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_integration_logs_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetIntegrationLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_app_id": "A12345678", - "filter_by_change_type": "updated", - "result_count": "50", - "result_page_number": "1", - "filter_by_service_id": "SVC987", - "encoded_team_id": "T12345ENC", - "filter_by_user": "U23456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_integration_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_integration_logs_example_call_tool.py deleted file mode 100644 index a3989bd5d..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_integration_logs_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetIntegrationLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_app_id': 'A12345678', - 'filter_by_change_type': 'updated', - 'result_count': '50', - 'result_page_number': '1', - 'filter_by_service_id': 'SVC987', - 'encoded_team_id': 'T12345ENC', - 'filter_by_user': 'U23456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_remote_file_info_slack_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_remote_file_info_slack_example_call_tool.js deleted file mode 100644 index bb551be4d..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_remote_file_info_slack_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetRemoteFileInfoSlack"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_id": "F1234567890", - "file_external_identifier": "external-guid-abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_remote_file_info_slack_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_remote_file_info_slack_example_call_tool.py deleted file mode 100644 index 2adaacfd9..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_remote_file_info_slack_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetRemoteFileInfoSlack" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_id': 'F1234567890', 'file_external_identifier': 'external-guid-abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_bot_info_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_slack_bot_info_example_call_tool.js deleted file mode 100644 index 435c51569..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_bot_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetSlackBotInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_bot_id": "B0123ABCD", - "team_id_for_org_token_use": "T9876XYZ" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_bot_info_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_slack_bot_info_example_call_tool.py deleted file mode 100644 index 7fb6d6bc2..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_bot_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetSlackBotInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_bot_id': 'B0123ABCD', 'team_id_for_org_token_use': 'T9876XYZ' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_conversation_members_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_slack_conversation_members_example_call_tool.js deleted file mode 100644 index 2504a4af7..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_conversation_members_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetSlackConversationMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_id": "C1234567890", - "pagination_cursor": "dXNlcjpVMEc5V0ZYTlo=", - "max_items_to_return": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_conversation_members_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_slack_conversation_members_example_call_tool.py deleted file mode 100644 index 5758adca8..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_conversation_members_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetSlackConversationMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_id': 'C1234567890', - 'pagination_cursor': 'dXNlcjpVMEc5V0ZYTlo=', - 'max_items_to_return': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_message_permalink_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_slack_message_permalink_example_call_tool.js deleted file mode 100644 index 954816311..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_message_permalink_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetSlackMessagePermalink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_id": "C1234567890", - "message_timestamp": "1627384957.000200" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_message_permalink_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_slack_message_permalink_example_call_tool.py deleted file mode 100644 index d66eb98bd..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_message_permalink_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetSlackMessagePermalink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_id': 'C1234567890', 'message_timestamp': '1627384957.000200' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_remote_files_info_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_slack_remote_files_info_example_call_tool.js deleted file mode 100644 index cfb7b6abe..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_remote_files_info_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetSlackRemoteFilesInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_channel_id": "C04567ABCD", - "pagination_cursor": "dXNlcjoxMjM0NTY3OA==", - "maximum_items_to_return": 25, - "filter_files_from_timestamp": "1691000000", - "timestamp_filter_end": "1693600000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_remote_files_info_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_slack_remote_files_info_example_call_tool.py deleted file mode 100644 index ef11c31c8..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_remote_files_info_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetSlackRemoteFilesInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_channel_id': 'C04567ABCD', - 'pagination_cursor': 'dXNlcjoxMjM0NTY3OA==', - 'maximum_items_to_return': 25, - 'filter_files_from_timestamp': '1691000000', - 'timestamp_filter_end': '1693600000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_team_preferences_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_slack_team_preferences_example_call_tool.js deleted file mode 100644 index 1e54111c7..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_team_preferences_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetSlackTeamPreferences"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_team_preferences_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_slack_team_preferences_example_call_tool.py deleted file mode 100644 index fa6d08a84..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_team_preferences_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetSlackTeamPreferences" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_thread_messages_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_slack_thread_messages_example_call_tool.js deleted file mode 100644 index a7712cff8..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_thread_messages_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetSlackThreadMessages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_id": "C1234567890", - "thread_message_timestamp": "1622547800.000200", - "pagination_cursor": "dXNlcjpVMDYxTkZUQw==", - "latest_message_timestamp": "1622551400", - "maximum_items_to_return": 25, - "start_time_unix_timestamp": "1622540000", - "include_all_message_metadata": true, - "include_boundary_timestamps": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_thread_messages_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_slack_thread_messages_example_call_tool.py deleted file mode 100644 index 099baf58b..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_thread_messages_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetSlackThreadMessages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_id': 'C1234567890', - 'thread_message_timestamp': '1622547800.000200', - 'pagination_cursor': 'dXNlcjpVMDYxTkZUQw==', - 'latest_message_timestamp': '1622551400', - 'maximum_items_to_return': 25, - 'start_time_unix_timestamp': '1622540000', - 'include_all_message_metadata': True, - 'include_boundary_timestamps': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_user_presence_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_slack_user_presence_example_call_tool.js deleted file mode 100644 index ac0ce0e7a..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_user_presence_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetSlackUserPresence"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_user_id": "U12345678" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_user_presence_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_slack_user_presence_example_call_tool.py deleted file mode 100644 index 720ebccf3..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_user_presence_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetSlackUserPresence" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_user_id': 'U12345678' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_user_profile_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_slack_user_profile_example_call_tool.js deleted file mode 100644 index 928ef559e..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_user_profile_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetSlackUserProfile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_user_id": "U12345678", - "include_labels": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_slack_user_profile_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_slack_user_profile_example_call_tool.py deleted file mode 100644 index 9fc4095b0..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_slack_user_profile_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetSlackUserProfile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_user_id': 'U12345678', 'include_labels': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_team_billable_users_info_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_team_billable_users_info_example_call_tool.js deleted file mode 100644 index efa004bec..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_team_billable_users_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetTeamBillableUsersInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor": "abc123cursor", - "maximum_items_to_return": 50, - "specific_user_id": "U12345678", - "encoded_team_id": "T12345encoded" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_team_billable_users_info_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_team_billable_users_info_example_call_tool.py deleted file mode 100644 index 6b86f2ac9..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_team_billable_users_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetTeamBillableUsersInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor': 'abc123cursor', - 'maximum_items_to_return': 50, - 'specific_user_id': 'U12345678', - 'encoded_team_id': 'T12345encoded' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_team_profile_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_team_profile_example_call_tool.js deleted file mode 100644 index 3609cb4c9..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_team_profile_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetTeamProfile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "visibility_filter": "visible" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_team_profile_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_team_profile_example_call_tool.py deleted file mode 100644 index 98c2ffb76..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_team_profile_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetTeamProfile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'visibility_filter': 'visible' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/get_user_identity_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/get_user_identity_example_call_tool.js deleted file mode 100644 index de47d931c..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_user_identity_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.GetUserIdentity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/get_user_identity_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/get_user_identity_example_call_tool.py deleted file mode 100644 index b6a182c24..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/get_user_identity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.GetUserIdentity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/invite_user_to_slack_channel_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/invite_user_to_slack_channel_example_call_tool.js deleted file mode 100644 index fbe293634..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/invite_user_to_slack_channel_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.InviteUserToSlackChannel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "slack_channel_id": "C01234567", - "user_ids_list": "U23456789,U34567890", - "continue_with_valid_users": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/invite_user_to_slack_channel_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/invite_user_to_slack_channel_example_call_tool.py deleted file mode 100644 index ec6555769..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/invite_user_to_slack_channel_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.InviteUserToSlackChannel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'slack_channel_id': 'C01234567', - 'user_ids_list': 'U23456789,U34567890', - 'continue_with_valid_users': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/join_slack_conversation_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/join_slack_conversation_example_call_tool.js deleted file mode 100644 index f89adbd13..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/join_slack_conversation_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.JoinSlackConversation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "conversation_id": "C0456ABCDEF" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/join_slack_conversation_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/join_slack_conversation_example_call_tool.py deleted file mode 100644 index 87cdabee9..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/join_slack_conversation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.JoinSlackConversation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'conversation_id': 'C0456ABCDEF' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_accessible_slack_conversations_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_accessible_slack_conversations_example_call_tool.js deleted file mode 100644 index a9aaa82ee..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_accessible_slack_conversations_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListAccessibleSlackConversations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor": "dXNlcjpVMEc5V00=", - "maximum_items_to_return": 100, - "slack_team_id": "T012AB3CDE", - "channel_types": "public_channel,private_channel,im", - "specific_user_id": "U234BCD56", - "exclude_archived_channels": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_accessible_slack_conversations_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_accessible_slack_conversations_example_call_tool.py deleted file mode 100644 index de15f058c..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_accessible_slack_conversations_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListAccessibleSlackConversations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor': 'dXNlcjpVMEc5V00=', - 'maximum_items_to_return': 100, - 'slack_team_id': 'T012AB3CDE', - 'channel_types': 'public_channel,private_channel,im', - 'specific_user_id': 'U234BCD56', - 'exclude_archived_channels': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_approved_workspace_invite_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_approved_workspace_invite_requests_example_call_tool.js deleted file mode 100644 index 8f8c7f37c..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_approved_workspace_invite_requests_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListApprovedWorkspaceInviteRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "T12345678", - "pagination_cursor": "dXNlcjpVMDYxTkZUVD0=", - "result_limit": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_approved_workspace_invite_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_approved_workspace_invite_requests_example_call_tool.py deleted file mode 100644 index 2ee3bdb62..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_approved_workspace_invite_requests_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListApprovedWorkspaceInviteRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 'T12345678', 'pagination_cursor': 'dXNlcjpVMDYxTkZUVD0=', 'result_limit': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_channels_for_usergroup_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_channels_for_usergroup_example_call_tool.js deleted file mode 100644 index 79bc5e24e..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_channels_for_usergroup_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListChannelsForUsergroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "usergroup_id": "S12345", - "workspace_id": "T98765", - "include_member_count_in_channels": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_channels_for_usergroup_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_channels_for_usergroup_example_call_tool.py deleted file mode 100644 index 5e03daccf..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_channels_for_usergroup_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListChannelsForUsergroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'usergroup_id': 'S12345', 'workspace_id': 'T98765', 'include_member_count_in_channels': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_custom_emoji_for_team_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_custom_emoji_for_team_example_call_tool.js deleted file mode 100644 index 2cd6c1550..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_custom_emoji_for_team_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListCustomEmojiForTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_emoji_categories": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_custom_emoji_for_team_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_custom_emoji_for_team_example_call_tool.py deleted file mode 100644 index 904c0755c..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_custom_emoji_for_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListCustomEmojiForTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_emoji_categories': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_denied_slack_invite_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_denied_slack_invite_requests_example_call_tool.js deleted file mode 100644 index ead071090..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_denied_slack_invite_requests_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListDeniedSlackInviteRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_team_id": "T12345678", - "pagination_cursor": "dXNlcjpVMDYxTkZUQT0=", - "result_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_denied_slack_invite_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_denied_slack_invite_requests_example_call_tool.py deleted file mode 100644 index 1ca357e2b..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_denied_slack_invite_requests_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListDeniedSlackInviteRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_team_id': 'T12345678', 'pagination_cursor': 'dXNlcjpVMDYxTkZUQT0=', 'result_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_pending_workspace_invites_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_pending_workspace_invites_example_call_tool.js deleted file mode 100644 index 93130e6e5..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_pending_workspace_invites_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListPendingWorkspaceInvites"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "T1234567890", - "pagination_cursor": "dXNlcjpVMDYxTkY=", - "result_limit": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_pending_workspace_invites_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_pending_workspace_invites_example_call_tool.py deleted file mode 100644 index 84cd23425..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_pending_workspace_invites_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListPendingWorkspaceInvites" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 'T1234567890', 'pagination_cursor': 'dXNlcjpVMDYxTkY=', 'result_limit': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_pinned_items_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_pinned_items_example_call_tool.js deleted file mode 100644 index f86425fbc..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_pinned_items_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListPinnedItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_id": "C01234567" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_pinned_items_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_pinned_items_example_call_tool.py deleted file mode 100644 index 56b43450b..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_pinned_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListPinnedItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_id': 'C01234567' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_scheduled_messages_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_scheduled_messages_example_call_tool.js deleted file mode 100644 index 904d62b02..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_scheduled_messages_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListScheduledMessages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_id": "C1234567890", - "pagination_cursor": "dXNlcjpVMDYxTkY=", - "latest_timestamp": "1735689600", - "max_number_of_entries": 25, - "oldest_timestamp": "1735603200", - "team_id": "T123ABC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_scheduled_messages_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_scheduled_messages_example_call_tool.py deleted file mode 100644 index c9c158fa9..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_scheduled_messages_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListScheduledMessages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_id': 'C1234567890', - 'pagination_cursor': 'dXNlcjpVMDYxTkY=', - 'latest_timestamp': '1735689600', - 'max_number_of_entries': 25, - 'oldest_timestamp': '1735603200', - 'team_id': 'T123ABC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_shared_channel_invites_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_shared_channel_invites_example_call_tool.js deleted file mode 100644 index af9fd19d0..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_shared_channel_invites_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListSharedChannelInvites"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_team_id": "T12345678", - "maximum_invites_to_return": 25, - "pagination_cursor": "dXNlcjpVMEc5V0ZYT0Q=" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_shared_channel_invites_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_shared_channel_invites_example_call_tool.py deleted file mode 100644 index 7a7bcd63b..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_shared_channel_invites_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListSharedChannelInvites" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_team_id': 'T12345678', - 'maximum_invites_to_return': 25, - 'pagination_cursor': 'dXNlcjpVMEc5V0ZYT0Q=' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_slack_channels_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_slack_channels_example_call_tool.js deleted file mode 100644 index 8916e5f94..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_slack_channels_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListSlackChannels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor": "dXNlcjpVMEc5V0ZYTlo=", - "maximum_number_of_channels": 200, - "channel_types": "public_channel,private_channel", - "exclude_archived_channels": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_slack_channels_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_slack_channels_example_call_tool.py deleted file mode 100644 index 5b2d183ad..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_slack_channels_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListSlackChannels" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor': 'dXNlcjpVMEc5V0ZYTlo=', - 'maximum_number_of_channels': 200, - 'channel_types': 'public_channel,private_channel', - 'exclude_archived_channels': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_slack_enterprise_emojis_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_slack_enterprise_emojis_example_call_tool.js deleted file mode 100644 index 1ddd88689..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_slack_enterprise_emojis_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListSlackEnterpriseEmojis"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor": "dXNlcjpVMEc5V0ZYTlo=", - "max_items_to_return": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_slack_enterprise_emojis_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_slack_enterprise_emojis_example_call_tool.py deleted file mode 100644 index 10100e8fc..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_slack_enterprise_emojis_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListSlackEnterpriseEmojis" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor': 'dXNlcjpVMEc5V0ZYTlo=', 'max_items_to_return': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_slack_team_users_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_slack_team_users_example_call_tool.js deleted file mode 100644 index 66e45e3b4..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_slack_team_users_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListSlackTeamUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor": "dXNlcjpVMDYxTkYxR0Y=", - "maximum_items_to_return": 100, - "slack_team_id": "T12345678", - "include_user_locale": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_slack_team_users_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_slack_team_users_example_call_tool.py deleted file mode 100644 index 181959d6e..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_slack_team_users_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListSlackTeamUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor': 'dXNlcjpVMDYxTkYxR0Y=', - 'maximum_items_to_return': 100, - 'slack_team_id': 'T12345678', - 'include_user_locale': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_slack_user_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_slack_user_groups_example_call_tool.js deleted file mode 100644 index db0f96d94..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_slack_user_groups_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListSlackUserGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id_for_org_token": "T12345ORG", - "include_user_count": true, - "include_disabled_groups": false, - "include_users_in_group": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_slack_user_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_slack_user_groups_example_call_tool.py deleted file mode 100644 index dda1f0251..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_slack_user_groups_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListSlackUserGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id_for_org_token': 'T12345ORG', - 'include_user_count': True, - 'include_disabled_groups': False, - 'include_users_in_group': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_slack_workspace_owners_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_slack_workspace_owners_example_call_tool.js deleted file mode 100644 index 90fd03e7d..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_slack_workspace_owners_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListSlackWorkspaceOwners"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "T12345678", - "maximum_items_to_return": 100, - "pagination_cursor": "" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_slack_workspace_owners_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_slack_workspace_owners_example_call_tool.py deleted file mode 100644 index 7b4df859e..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_slack_workspace_owners_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListSlackWorkspaceOwners" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 'T12345678', 'maximum_items_to_return': 100, 'pagination_cursor': '' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_teams_in_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_teams_in_enterprise_example_call_tool.js deleted file mode 100644 index 0a38c7e76..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_teams_in_enterprise_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListTeamsInEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maximum_items_to_return": 100, - "pagination_cursor": "dXNlcjoxMjM0NTY3ODkw" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_teams_in_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_teams_in_enterprise_example_call_tool.py deleted file mode 100644 index 414d916db..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_teams_in_enterprise_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListTeamsInEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maximum_items_to_return': 100, 'pagination_cursor': 'dXNlcjoxMjM0NTY3ODkw' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/list_workspace_users_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/list_workspace_users_example_call_tool.js deleted file mode 100644 index 9de6084a4..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_workspace_users_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ListWorkspaceUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_team_id": "T12345678", - "pagination_cursor": "dXNlcjpVMDYxTkZUQjA=", - "user_retrieval_limit": 50, - "return_only_active_users": true, - "include_deactivated_user_workspaces": false, - "return_only_guest_users": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/list_workspace_users_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/list_workspace_users_example_call_tool.py deleted file mode 100644 index 99e327b08..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/list_workspace_users_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ListWorkspaceUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_team_id': 'T12345678', - 'pagination_cursor': 'dXNlcjpVMDYxTkZUQjA=', - 'user_retrieval_limit': 50, - 'return_only_active_users': True, - 'include_deactivated_user_workspaces': False, - 'return_only_guest_users': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/open_or_resume_slack_conversation_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/open_or_resume_slack_conversation_example_call_tool.js deleted file mode 100644 index b3c004d10..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/open_or_resume_slack_conversation_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.OpenOrResumeSlackConversation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_user_ids": "U12345,U23456", - "return_full_im_channel_definition": true, - "prevent_creation": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/open_or_resume_slack_conversation_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/open_or_resume_slack_conversation_example_call_tool.py deleted file mode 100644 index 9d9880a28..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/open_or_resume_slack_conversation_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.OpenOrResumeSlackConversation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_user_ids': 'U12345,U23456', - 'return_full_im_channel_definition': True, - 'prevent_creation': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/pin_item_to_slack_channel_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/pin_item_to_slack_channel_example_call_tool.js deleted file mode 100644 index e8b5da71d..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/pin_item_to_slack_channel_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.PinItemToSlackChannel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_id": "C1234567890", - "message_timestamp": "1623861234.000200" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/pin_item_to_slack_channel_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/pin_item_to_slack_channel_example_call_tool.py deleted file mode 100644 index 96cbb66aa..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/pin_item_to_slack_channel_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.PinItemToSlackChannel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_id': 'C1234567890', 'message_timestamp': '1623861234.000200' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/register_slack_call_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/register_slack_call_example_call_tool.js deleted file mode 100644 index ceedf8b60..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/register_slack_call_example_call_tool.js +++ /dev/null @@ -1,51 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.RegisterSlackCall"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "unique_call_id": "call_3p_7890", - "call_join_url": "https://meet.example.com/j/abc123", - "optional_human_readable_display_id": "TeamSync-0925", - "desktop_app_join_url": "slackcall://launch?room=abc123", - "call_start_timestamp": 1764364800, - "call_title": "Weekly Team Sync", - "call_creator_user_id": "U12345678", - "participants_info": [ - { - "slack_id": "U23456789", - "external_id": "ext_001", - "display_name": "Alice Johnson", - "avatar_url": "https://example.com/avatars/alice.jpg" - }, - { - "slack_id": "U34567890", - "external_id": "ext_002", - "display_name": "Bob Lee", - "avatar_url": "https://example.com/avatars/bob.jpg" - } - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/register_slack_call_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/register_slack_call_example_call_tool.py deleted file mode 100644 index f6f13e933..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/register_slack_call_example_call_tool.py +++ /dev/null @@ -1,43 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.RegisterSlackCall" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'unique_call_id': 'call_3p_7890', - 'call_join_url': 'https://meet.example.com/j/abc123', - 'optional_human_readable_display_id': 'TeamSync-0925', - 'desktop_app_join_url': 'slackcall://launch?room=abc123', - 'call_start_timestamp': 1764364800, - 'call_title': 'Weekly Team Sync', - 'call_creator_user_id': 'U12345678', - 'participants_info': [ { 'slack_id': 'U23456789', - 'external_id': 'ext_001', - 'display_name': 'Alice Johnson', - 'avatar_url': 'https://example.com/avatars/alice.jpg'}, - { 'slack_id': 'U34567890', - 'external_id': 'ext_002', - 'display_name': 'Bob Lee', - 'avatar_url': 'https://example.com/avatars/bob.jpg'}] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/remove_call_participants_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/remove_call_participants_example_call_tool.js deleted file mode 100644 index 34f76107b..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/remove_call_participants_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.RemoveCallParticipants"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "call_id": "C1234567890", - "users_to_remove": [ - "U2345678901", - "U3456789012" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/remove_call_participants_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/remove_call_participants_example_call_tool.py deleted file mode 100644 index 4481dcdb9..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/remove_call_participants_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.RemoveCallParticipants" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'call_id': 'C1234567890', 'users_to_remove': ['U2345678901', 'U3456789012'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/remove_reaction_from_item_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/remove_reaction_from_item_example_call_tool.js deleted file mode 100644 index 52ddedf6a..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/remove_reaction_from_item_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.RemoveReactionFromItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "reaction_emoji_name": "thumbsup", - "message_channel_id": "C024BE91L", - "message_timestamp": "1623850247.000200" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/remove_reaction_from_item_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/remove_reaction_from_item_example_call_tool.py deleted file mode 100644 index f53788b9f..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/remove_reaction_from_item_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.RemoveReactionFromItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'reaction_emoji_name': 'thumbsup', - 'message_channel_id': 'C024BE91L', - 'message_timestamp': '1623850247.000200' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/remove_slack_bookmark_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/remove_slack_bookmark_example_call_tool.js deleted file mode 100644 index 8c11bb2c3..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/remove_slack_bookmark_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.RemoveSlackBookmark"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "slack_channel_id_to_remove_bookmark": "C1234567890", - "bookmark_id_to_remove": "bkmk_987654321", - "quip_section_id": "qs_13579" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/remove_slack_bookmark_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/remove_slack_bookmark_example_call_tool.py deleted file mode 100644 index e7c7ba5be..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/remove_slack_bookmark_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.RemoveSlackBookmark" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'slack_channel_id_to_remove_bookmark': 'C1234567890', - 'bookmark_id_to_remove': 'bkmk_987654321', - 'quip_section_id': 'qs_13579' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/rename_slack_emoji_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/rename_slack_emoji_example_call_tool.js deleted file mode 100644 index 89b3e7d20..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/rename_slack_emoji_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.RenameSlackEmoji"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "current_emoji_name": "party_parrot", - "new_emoji_name": "celebration_parrot" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/rename_slack_emoji_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/rename_slack_emoji_example_call_tool.py deleted file mode 100644 index 7148e3abc..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/rename_slack_emoji_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.RenameSlackEmoji" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'current_emoji_name': 'party_parrot', 'new_emoji_name': 'celebration_parrot' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/revoke_slack_token_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/revoke_slack_token_example_call_tool.js deleted file mode 100644 index 6143c7b5f..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/revoke_slack_token_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.RevokeSlackToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "trigger_testing_mode": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/revoke_slack_token_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/revoke_slack_token_example_call_tool.py deleted file mode 100644 index 91140c4ba..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/revoke_slack_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.RevokeSlackToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'trigger_testing_mode': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/schedule_slack_message_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/schedule_slack_message_example_call_tool.js deleted file mode 100644 index c5bbbd1af..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/schedule_slack_message_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ScheduleSlackMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "slack_channel_id_or_name": "#project-updates", - "schedule_time_unix_timestamp": 1767225600, - "structured_blocks_json": "%5B%7B%22type%22%3A%22section%22%2C%22text%22%3A%7B%22type%22%3A%22mrkdwn%22%2C%22text%22%3A%22Daily%20standup%20reminder%20%E2%9C%85%22%7D%7D%5D", - "message_text": "Reminder: daily standup in 15 minutes. Please post your updates.", - "enable_group_linking": false, - "make_reply_visible_to_everyone": false, - "enable_link_unfurling": true, - "disable_unfurling_of_media_content": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/schedule_slack_message_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/schedule_slack_message_example_call_tool.py deleted file mode 100644 index ddc9f7158..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/schedule_slack_message_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ScheduleSlackMessage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'slack_channel_id_or_name': '#project-updates', - 'schedule_time_unix_timestamp': 1767225600, - 'structured_blocks_json': '%5B%7B%22type%22%3A%22section%22%2C%22text%22%3A%7B%22type%22%3A%22mrkdwn%22%2C%22text%22%3A%22Daily%20standup%20reminder%20%E2%9C%85%22%7D%7D%5D', - 'message_text': 'Reminder: daily standup in 15 minutes. Please post your updates.', - 'enable_group_linking': False, - 'make_reply_visible_to_everyone': False, - 'enable_link_unfurling': True, - 'disable_unfurling_of_media_content': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/search_files_in_slack_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/search_files_in_slack_example_call_tool.js deleted file mode 100644 index 4b6dae0cf..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/search_files_in_slack_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.SearchFilesInSlack"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query": "quarterly financial report Q2", - "items_per_page": 25, - "results_page_number": 1, - "sort_files_by": "timestamp", - "sort_direction": "desc", - "encoded_team_id": "T12345XYZ", - "enable_query_highlight": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/search_files_in_slack_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/search_files_in_slack_example_call_tool.py deleted file mode 100644 index 65342cfdf..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/search_files_in_slack_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.SearchFilesInSlack" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query': 'quarterly financial report Q2', - 'items_per_page': 25, - 'results_page_number': 1, - 'sort_files_by': 'timestamp', - 'sort_direction': 'desc', - 'encoded_team_id': 'T12345XYZ', - 'enable_query_highlight': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/search_slack_messages_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/search_slack_messages_example_call_tool.js deleted file mode 100644 index 9c1962e6a..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/search_slack_messages_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.SearchSlackMessages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query": "deploy rollback bug in production", - "results_per_page": 25, - "page_number": 1, - "pagination_cursor": "*", - "sort_results_by": "score", - "sort_direction": "desc", - "enable_query_highlighting": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/search_slack_messages_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/search_slack_messages_example_call_tool.py deleted file mode 100644 index 6e95d0df7..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/search_slack_messages_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.SearchSlackMessages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query': 'deploy rollback bug in production', - 'results_per_page': 25, - 'page_number': 1, - 'pagination_cursor': '*', - 'sort_results_by': 'score', - 'sort_direction': 'desc', - 'enable_query_highlighting': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/send_ephemeral_message_slack_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/send_ephemeral_message_slack_example_call_tool.js deleted file mode 100644 index a2c80d868..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/send_ephemeral_message_slack_example_call_tool.js +++ /dev/null @@ -1,59 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.SendEphemeralMessageSlack"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_channel": "C1234567890", - "recipient_user_id": "U2345678901", - "structured_blocks": [ - { - "type": "section", - "text": { - "type": "mrkdwn", - "text": "Hey <@U2345678901>, here's an update just for you." - } - }, - { - "type": "actions", - "elements": [ - { - "type": "button", - "text": { - "type": "plain_text", - "text": "View Details" - }, - "value": "view_details", - "action_id": "view_details" - } - ] - } - ], - "message_icon_emoji": ":bell:", - "ephemeral_message_text": "Quick update: your report is ready.", - "bot_username": "notify-bot", - "link_names_auto_link": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/send_ephemeral_message_slack_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/send_ephemeral_message_slack_example_call_tool.py deleted file mode 100644 index 11c7fb3a3..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/send_ephemeral_message_slack_example_call_tool.py +++ /dev/null @@ -1,44 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.SendEphemeralMessageSlack" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_channel': 'C1234567890', - 'recipient_user_id': 'U2345678901', - 'structured_blocks': [ { 'type': 'section', - 'text': { 'type': 'mrkdwn', - 'text': "Hey <@U2345678901>, here's an update just " - 'for you.'}}, - { 'type': 'actions', - 'elements': [ { 'type': 'button', - 'text': { 'type': 'plain_text', - 'text': 'View Details'}, - 'value': 'view_details', - 'action_id': 'view_details'}]}], - 'message_icon_emoji': ':bell:', - 'ephemeral_message_text': 'Quick update: your report is ready.', - 'bot_username': 'notify-bot', - 'link_names_auto_link': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/send_slack_message_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/send_slack_message_example_call_tool.js deleted file mode 100644 index 30db63e64..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/send_slack_message_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.SendSlackMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_channel_id_or_name": "#project-updates", - "message_text": "Deployment completed successfully. All services are healthy.", - "structured_blocks": "[{\"type\":\"section\",\"text\":{\"type\":\"mrkdwn\",\"text\":\"*Deployment Complete*\\nAll services are healthy.\"}},{\"type\":\"context\",\"elements\":[{\"type\":\"mrkdwn\",\"text\":\"<@U12345> • 2m ago\"}]}]", - "emoji_icon_for_message": ":rocket:", - "bot_username": "deploy-bot", - "enable_slack_markup_parsing": true, - "broadcast_reply_to_channel": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/send_slack_message_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/send_slack_message_example_call_tool.py deleted file mode 100644 index fcb38d4a3..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/send_slack_message_example_call_tool.py +++ /dev/null @@ -1,38 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.SendSlackMessage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_channel_id_or_name': '#project-updates', - 'message_text': 'Deployment completed successfully. All services are healthy.', - 'structured_blocks': '[{"type":"section","text":{"type":"mrkdwn","text":"*Deployment ' - 'Complete*\\nAll services are ' - 'healthy."}},{"type":"context","elements":[{"type":"mrkdwn","text":"<@U12345> ' - '• 2m ago"}]}]', - 'emoji_icon_for_message': ':rocket:', - 'bot_username': 'deploy-bot', - 'enable_slack_markup_parsing': True, - 'broadcast_reply_to_channel': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/set_slack_channel_read_cursor_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/set_slack_channel_read_cursor_example_call_tool.js deleted file mode 100644 index 5032b1826..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/set_slack_channel_read_cursor_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.SetSlackChannelReadCursor"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_id": "C12345678", - "timestamp_of_message_to_mark_as_read": "1657890123.000200" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/set_slack_channel_read_cursor_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/set_slack_channel_read_cursor_example_call_tool.py deleted file mode 100644 index 818789829..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/set_slack_channel_read_cursor_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.SetSlackChannelReadCursor" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_id': 'C12345678', 'timestamp_of_message_to_mark_as_read': '1657890123.000200' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/set_slack_profile_photo_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/set_slack_profile_photo_example_call_tool.js deleted file mode 100644 index 4df4ef922..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/set_slack_profile_photo_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.SetSlackProfilePhoto"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "crop_box_size": "128", - "crop_box_x_coordinate": "10", - "crop_y_coordinate": "20", - "profile_photo_image": "[image_data_placeholder]" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/set_slack_profile_photo_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/set_slack_profile_photo_example_call_tool.py deleted file mode 100644 index aa5f85a61..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/set_slack_profile_photo_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.SetSlackProfilePhoto" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'crop_box_size': '128', - 'crop_box_x_coordinate': '10', - 'crop_y_coordinate': '20', - 'profile_photo_image': '[image_data_placeholder]' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/set_slack_workspace_name_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/set_slack_workspace_name_example_call_tool.js deleted file mode 100644 index 763df999e..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/set_slack_workspace_name_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.SetSlackWorkspaceName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "T01234567", - "new_workspace_name": "Acme Corp Workspace" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/set_slack_workspace_name_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/set_slack_workspace_name_example_call_tool.py deleted file mode 100644 index 01cc2be25..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/set_slack_workspace_name_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.SetSlackWorkspaceName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 'T01234567', 'new_workspace_name': 'Acme Corp Workspace' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/set_workspace_description_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/set_workspace_description_example_call_tool.js deleted file mode 100644 index 101d25d31..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/set_workspace_description_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.SetWorkspaceDescription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id": "T12345678", - "workspace_description": "Project Alpha workspace for cross-team collaboration and weekly syncs. Focus: product roadmap, docs, and deployment updates." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/set_workspace_description_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/set_workspace_description_example_call_tool.py deleted file mode 100644 index 378e47982..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/set_workspace_description_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.SetWorkspaceDescription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id': 'T12345678', - 'workspace_description': 'Project Alpha workspace for cross-team collaboration and weekly ' - 'syncs. Focus: product roadmap, docs, and deployment updates.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/share_remote_file_in_channel_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/share_remote_file_in_channel_example_call_tool.js deleted file mode 100644 index 680b1e393..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/share_remote_file_in_channel_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.ShareRemoteFileInChannel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_channel_ids": "C12345678,C87654321", - "file_external_identifier": "app-file-guid-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/share_remote_file_in_channel_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/share_remote_file_in_channel_example_call_tool.py deleted file mode 100644 index 94cb34163..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/share_remote_file_in_channel_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.ShareRemoteFileInChannel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_channel_ids': 'C12345678,C87654321', 'file_external_identifier': 'app-file-guid-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/update_slack_user_group_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/update_slack_user_group_example_call_tool.js deleted file mode 100644 index 4716b7670..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/update_slack_user_group_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.UpdateSlackUserGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_group_id": "S12345G", - "default_channel_ids": [ - "C11111", - "C22222" - ], - "additional_channel_ids": [ - "C33333" - ], - "user_group_description": "On-call engineers for backend services", - "user_group_handle": "oncall-backend", - "user_group_name": "Backend Oncall", - "team_id_for_org_token": "T98765", - "include_user_count": true, - "enable_sidebar_section": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/update_slack_user_group_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/update_slack_user_group_example_call_tool.py deleted file mode 100644 index 445be8a75..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/update_slack_user_group_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.UpdateSlackUserGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_group_id': 'S12345G', - 'default_channel_ids': ['C11111', 'C22222'], - 'additional_channel_ids': ['C33333'], - 'user_group_description': 'On-call engineers for backend services', - 'user_group_handle': 'oncall-backend', - 'user_group_name': 'Backend Oncall', - 'team_id_for_org_token': 'T98765', - 'include_user_count': True, - 'enable_sidebar_section': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/slack_api/update_slack_usergroup_users_example_call_tool.js b/public/examples/integrations/mcp-servers/slack_api/update_slack_usergroup_users_example_call_tool.js deleted file mode 100644 index 24d323190..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/update_slack_usergroup_users_example_call_tool.js +++ /dev/null @@ -1,43 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SlackApi.UpdateSlackUsergroupUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_group_id": "S0614K5ZC", - "user_ids_list": [ - "U12345678", - "U23456789", - "U34567890" - ], - "team_id_for_org_token": "T012AB3C4", - "update_additional_channels": [ - "C01AB2C3D", - "C02EF3G4H" - ], - "include_user_count": true, - "is_shared_section": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/slack_api/update_slack_usergroup_users_example_call_tool.py b/public/examples/integrations/mcp-servers/slack_api/update_slack_usergroup_users_example_call_tool.py deleted file mode 100644 index 8a733574c..000000000 --- a/public/examples/integrations/mcp-servers/slack_api/update_slack_usergroup_users_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SlackApi.UpdateSlackUsergroupUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_group_id': 'S0614K5ZC', - 'user_ids_list': ['U12345678', 'U23456789', 'U34567890'], - 'team_id_for_org_token': 'T012AB3C4', - 'update_additional_channels': ['C01AB2C3D', 'C02EF3G4H'], - 'include_user_count': True, - 'is_shared_section': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/spotify/adjust_playback_position_example_call_tool.js b/public/examples/integrations/mcp-servers/spotify/adjust_playback_position_example_call_tool.js deleted file mode 100644 index cfded04cc..000000000 --- a/public/examples/integrations/mcp-servers/spotify/adjust_playback_position_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Spotify.AdjustPlaybackPosition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - relative_position_ms: -10000, // Rewinds track by 10 seconds -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/spotify/adjust_playback_position_example_call_tool.py b/public/examples/integrations/mcp-servers/spotify/adjust_playback_position_example_call_tool.py deleted file mode 100644 index 153d292b9..000000000 --- a/public/examples/integrations/mcp-servers/spotify/adjust_playback_position_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Spotify.AdjustPlaybackPosition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"relative_position_ms": -10000} # Rewinds track by 10 seconds - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/spotify/get_available_devices_example_call_tool.js b/public/examples/integrations/mcp-servers/spotify/get_available_devices_example_call_tool.js deleted file mode 100644 index be35a21e7..000000000 --- a/public/examples/integrations/mcp-servers/spotify/get_available_devices_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Spotify.GetAvailableDevices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/spotify/get_available_devices_example_call_tool.py b/public/examples/integrations/mcp-servers/spotify/get_available_devices_example_call_tool.py deleted file mode 100644 index ec53dcb73..000000000 --- a/public/examples/integrations/mcp-servers/spotify/get_available_devices_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Spotify.GetAvailableDevices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -response = client.tools.execute( - tool_name=TOOL_NAME, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/spotify/get_currently_playing_example_call_tool.js b/public/examples/integrations/mcp-servers/spotify/get_currently_playing_example_call_tool.js deleted file mode 100644 index 83976f8d4..000000000 --- a/public/examples/integrations/mcp-servers/spotify/get_currently_playing_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Spotify.GetCurrentlyPlaying"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/spotify/get_currently_playing_example_call_tool.py b/public/examples/integrations/mcp-servers/spotify/get_currently_playing_example_call_tool.py deleted file mode 100644 index 758dc5cad..000000000 --- a/public/examples/integrations/mcp-servers/spotify/get_currently_playing_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Spotify.GetCurrentlyPlaying" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -response = client.tools.execute( - tool_name=TOOL_NAME, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/spotify/get_playback_state_example_call_tool.js b/public/examples/integrations/mcp-servers/spotify/get_playback_state_example_call_tool.js deleted file mode 100644 index ebfc7b072..000000000 --- a/public/examples/integrations/mcp-servers/spotify/get_playback_state_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Spotify.GetPlaybackState"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/spotify/get_playback_state_example_call_tool.py b/public/examples/integrations/mcp-servers/spotify/get_playback_state_example_call_tool.py deleted file mode 100644 index 15a266d12..000000000 --- a/public/examples/integrations/mcp-servers/spotify/get_playback_state_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Spotify.GetPlaybackState" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -response = client.tools.execute( - tool_name=TOOL_NAME, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/spotify/get_track_from_id_example_call_tool.js b/public/examples/integrations/mcp-servers/spotify/get_track_from_id_example_call_tool.js deleted file mode 100644 index 833c08ea0..000000000 --- a/public/examples/integrations/mcp-servers/spotify/get_track_from_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Spotify.GetTrackFromId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - track_id: "123" // Track IDs can be retrieved via other tools such as GetCurrentlyPlaying -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/spotify/get_track_from_id_example_call_tool.py b/public/examples/integrations/mcp-servers/spotify/get_track_from_id_example_call_tool.py deleted file mode 100644 index 61df74442..000000000 --- a/public/examples/integrations/mcp-servers/spotify/get_track_from_id_example_call_tool.py +++ /dev/null @@ -1,28 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Spotify.GetTrackFromId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - "track_id": "123" -} # Track IDs can be retrieved via other tools such as GetCurrentlyPlaying - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/spotify/pause_playback_example_call_tool.js b/public/examples/integrations/mcp-servers/spotify/pause_playback_example_call_tool.js deleted file mode 100644 index 22a2bee25..000000000 --- a/public/examples/integrations/mcp-servers/spotify/pause_playback_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Spotify.PausePlayback"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/spotify/pause_playback_example_call_tool.py b/public/examples/integrations/mcp-servers/spotify/pause_playback_example_call_tool.py deleted file mode 100644 index 57e756ee0..000000000 --- a/public/examples/integrations/mcp-servers/spotify/pause_playback_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Spotify.PausePlayback" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -response = client.tools.execute( - tool_name=TOOL_NAME, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/spotify/play_artist_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/spotify/play_artist_by_name_example_call_tool.js deleted file mode 100644 index 085e9a51a..000000000 --- a/public/examples/integrations/mcp-servers/spotify/play_artist_by_name_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Spotify.PlayArtistByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - name: "Jack Johnson" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/spotify/play_artist_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/spotify/play_artist_by_name_example_call_tool.py deleted file mode 100644 index 39cde8787..000000000 --- a/public/examples/integrations/mcp-servers/spotify/play_artist_by_name_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Spotify.PlayArtistByName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"name": "Jack Johnson"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/spotify/play_track_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/spotify/play_track_by_name_example_call_tool.js deleted file mode 100644 index 577a6e66d..000000000 --- a/public/examples/integrations/mcp-servers/spotify/play_track_by_name_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Spotify.PlayTrackByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - track_name: "Banana Pancakes", - artist_name: "Jack Johnson" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/spotify/play_track_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/spotify/play_track_by_name_example_call_tool.py deleted file mode 100644 index 019547c9e..000000000 --- a/public/examples/integrations/mcp-servers/spotify/play_track_by_name_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Spotify.PlayTrackByName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"track_name": "Banana Pancakes", "artist_name": "Jack Johnson"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/spotify/resume_playback_example_call_tool.js b/public/examples/integrations/mcp-servers/spotify/resume_playback_example_call_tool.js deleted file mode 100644 index 5e4213dc4..000000000 --- a/public/examples/integrations/mcp-servers/spotify/resume_playback_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Spotify.ResumePlayback"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/spotify/resume_playback_example_call_tool.py b/public/examples/integrations/mcp-servers/spotify/resume_playback_example_call_tool.py deleted file mode 100644 index 4c96742ea..000000000 --- a/public/examples/integrations/mcp-servers/spotify/resume_playback_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Spotify.ResumePlayback" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -response = client.tools.execute( - tool_name=TOOL_NAME, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/spotify/search_example_call_tool.js b/public/examples/integrations/mcp-servers/spotify/search_example_call_tool.js deleted file mode 100644 index f1c02d744..000000000 --- a/public/examples/integrations/mcp-servers/spotify/search_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Spotify.Search"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - q: "artist:Miles Davis", - types: "track", - limit: "10" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/spotify/search_example_call_tool.py b/public/examples/integrations/mcp-servers/spotify/search_example_call_tool.py deleted file mode 100644 index 31e924d25..000000000 --- a/public/examples/integrations/mcp-servers/spotify/search_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Spotify.Search" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"q": "artist:Miles Davis", "types": "track", "limit": "10"} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/spotify/skip_to_next_track_example_call_tool.js b/public/examples/integrations/mcp-servers/spotify/skip_to_next_track_example_call_tool.js deleted file mode 100644 index 09d8a542f..000000000 --- a/public/examples/integrations/mcp-servers/spotify/skip_to_next_track_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Spotify.SkipToNextTrack"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/spotify/skip_to_next_track_example_call_tool.py b/public/examples/integrations/mcp-servers/spotify/skip_to_next_track_example_call_tool.py deleted file mode 100644 index de83c4b1c..000000000 --- a/public/examples/integrations/mcp-servers/spotify/skip_to_next_track_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Spotify.SkipToNextTrack" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -response = client.tools.execute( - tool_name=TOOL_NAME, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/spotify/skip_to_previous_track_example_call_tool.js b/public/examples/integrations/mcp-servers/spotify/skip_to_previous_track_example_call_tool.js deleted file mode 100644 index a6c09a86b..000000000 --- a/public/examples/integrations/mcp-servers/spotify/skip_to_previous_track_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Spotify.SkipToPreviousTrack"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/spotify/skip_to_previous_track_example_call_tool.py b/public/examples/integrations/mcp-servers/spotify/skip_to_previous_track_example_call_tool.py deleted file mode 100644 index 94a5b923f..000000000 --- a/public/examples/integrations/mcp-servers/spotify/skip_to_previous_track_example_call_tool.py +++ /dev/null @@ -1,23 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Spotify.SkipToPreviousTrack" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -response = client.tools.execute( - tool_name=TOOL_NAME, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/spotify/start_tracks_playback_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/spotify/start_tracks_playback_by_id_example_call_tool.js deleted file mode 100644 index a785f4dcc..000000000 --- a/public/examples/integrations/mcp-servers/spotify/start_tracks_playback_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Spotify.StartTracksPlaybackById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - track_ids: ["123", "456"], - position_ms: 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/spotify/start_tracks_playback_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/spotify/start_tracks_playback_by_id_example_call_tool.py deleted file mode 100644 index faef2d05d..000000000 --- a/public/examples/integrations/mcp-servers/spotify/start_tracks_playback_by_id_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Spotify.StartTracksPlaybackById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = {"track_ids": ["123", "456"], "position_ms": 0} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/squareup_api/accept_dispute_loss_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/accept_dispute_loss_example_call_tool.js deleted file mode 100644 index 21a236e28..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/accept_dispute_loss_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.AcceptDisputeLoss"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dispute_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/accept_dispute_loss_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/accept_dispute_loss_example_call_tool.py deleted file mode 100644 index b81647fe7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/accept_dispute_loss_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.AcceptDisputeLoss" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dispute_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/accumulate_loyalty_points_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/accumulate_loyalty_points_example_call_tool.js deleted file mode 100644 index c6b76342a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/accumulate_loyalty_points_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.AccumulateLoyaltyPoints"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "loyalty_account_id": "123456", - "purchase_location_id": "loc789", - "unique_request_id": "req001", - "order_id_for_accumulation": "order123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/accumulate_loyalty_points_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/accumulate_loyalty_points_example_call_tool.py deleted file mode 100644 index 0318f6493..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/accumulate_loyalty_points_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.AccumulateLoyaltyPoints" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'loyalty_account_id': '123456', - 'purchase_location_id': 'loc789', - 'unique_request_id': 'req001', - 'order_id_for_accumulation': 'order123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/activate_domain_for_apple_pay_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/activate_domain_for_apple_pay_example_call_tool.js deleted file mode 100644 index d0785d520..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/activate_domain_for_apple_pay_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ActivateDomainForApplePay"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "apple_pay_domain_name": "example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/activate_domain_for_apple_pay_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/activate_domain_for_apple_pay_example_call_tool.py deleted file mode 100644 index bed6f2369..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/activate_domain_for_apple_pay_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ActivateDomainForApplePay" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'apple_pay_domain_name': 'example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/add_card_to_merchant_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/add_card_to_merchant_example_call_tool.js deleted file mode 100644 index b988a8b0a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/add_card_to_merchant_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.AddCardToMerchant"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"merchant_id\":\"12345\",\"card_number\":\"4111111111111111\",\"expiry_date\":\"12/25\",\"cvv\":\"123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/add_card_to_merchant_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/add_card_to_merchant_example_call_tool.py deleted file mode 100644 index 1eadcca88..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/add_card_to_merchant_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.AddCardToMerchant" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"merchant_id":"12345","card_number":"4111111111111111","expiry_date":"12/25","cvv":"123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/add_group_to_customer_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/add_group_to_customer_example_call_tool.js deleted file mode 100644 index 0e7b086eb..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/add_group_to_customer_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.AddGroupToCustomer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_group_id": "group123", - "customer_id": "cust456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/add_group_to_customer_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/add_group_to_customer_example_call_tool.py deleted file mode 100644 index c420afaca..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/add_group_to_customer_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.AddGroupToCustomer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_group_id': 'group123', 'customer_id': 'cust456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/add_or_update_square_online_snippet_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/add_or_update_square_online_snippet_example_call_tool.js deleted file mode 100644 index 6d780b5f3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/add_or_update_square_online_snippet_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.AddOrUpdateSquareOnlineSnippet"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site_id_for_snippet": "site_12345", - "snippet_code_content": "" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/add_or_update_square_online_snippet_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/add_or_update_square_online_snippet_example_call_tool.py deleted file mode 100644 index fcf08e792..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/add_or_update_square_online_snippet_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.AddOrUpdateSquareOnlineSnippet" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site_id_for_snippet': 'site_12345', - 'snippet_code_content': "" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/adjust_loyalty_points_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/adjust_loyalty_points_example_call_tool.js deleted file mode 100644 index 6c1ebb124..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/adjust_loyalty_points_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.AdjustLoyaltyPoints"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "loyalty_account_id": "12345", - "points_adjustment_amount": 50, - "unique_request_identifier": "req-67890", - "adjustment_reason": "customer courtesy", - "allow_negative_balance": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/adjust_loyalty_points_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/adjust_loyalty_points_example_call_tool.py deleted file mode 100644 index 34627de5a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/adjust_loyalty_points_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.AdjustLoyaltyPoints" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'loyalty_account_id': '12345', - 'points_adjustment_amount': 50, - 'unique_request_identifier': 'req-67890', - 'adjustment_reason': 'customer courtesy', - 'allow_negative_balance': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/apply_inventory_adjustments_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/apply_inventory_adjustments_example_call_tool.js deleted file mode 100644 index 776ab8fe3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/apply_inventory_adjustments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ApplyInventoryAdjustments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"item_id\":\"12345\",\"adjustment_quantity\":10}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/apply_inventory_adjustments_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/apply_inventory_adjustments_example_call_tool.py deleted file mode 100644 index 8877daa92..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/apply_inventory_adjustments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ApplyInventoryAdjustments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"item_id":"12345","adjustment_quantity":10}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/batch_upsert_catalog_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/batch_upsert_catalog_objects_example_call_tool.js deleted file mode 100644 index cd0319778..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/batch_upsert_catalog_objects_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BatchUpsertCatalogObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"objects\":[{\"id\":\"1\",\"type\":\"ITEM\",\"title\":\"Sample Item 1\"},{\"id\":\"2\",\"type\":\"ITEM\",\"title\":\"Sample Item 2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/batch_upsert_catalog_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/batch_upsert_catalog_objects_example_call_tool.py deleted file mode 100644 index 64b985fa5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/batch_upsert_catalog_objects_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BatchUpsertCatalogObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"objects":[{"id":"1","type":"ITEM","title":"Sample Item ' - '1"},{"id":"2","type":"ITEM","title":"Sample Item 2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_create_customers_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_create_customers_example_call_tool.js deleted file mode 100644 index de7997b53..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_create_customers_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkCreateCustomers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"customers\":[{\"given_name\":\"John\",\"family_name\":\"Doe\",\"email\":\"john.doe@example.com\"},{\"given_name\":\"Jane\",\"family_name\":\"Smith\",\"phone\":\"123-456-7890\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_create_customers_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_create_customers_example_call_tool.py deleted file mode 100644 index 1177522ab..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_create_customers_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkCreateCustomers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"customers":[{"given_name":"John","family_name":"Doe","email":"john.doe@example.com"},{"given_name":"Jane","family_name":"Smith","phone":"123-456-7890"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_create_team_members_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_create_team_members_example_call_tool.js deleted file mode 100644 index b763f5593..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_create_team_members_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkCreateTeamMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"members\":[{\"name\":\"John Doe\",\"email\":\"john@example.com\"},{\"name\":\"Jane Smith\",\"email\":\"jane@example.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_create_team_members_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_create_team_members_example_call_tool.py deleted file mode 100644 index 20799420e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_create_team_members_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkCreateTeamMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"members":[{"name":"John Doe","email":"john@example.com"},{"name":"Jane ' - 'Smith","email":"jane@example.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_create_vendors_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_create_vendors_example_call_tool.js deleted file mode 100644 index 44ab1f7c4..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_create_vendors_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkCreateVendors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"vendors\":[{\"name\":\"Vendor A\",\"contact\":\"contact@vendora.com\"},{\"name\":\"Vendor B\",\"contact\":\"contact@vendorb.com\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_create_vendors_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_create_vendors_example_call_tool.py deleted file mode 100644 index 0411b1704..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_create_vendors_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkCreateVendors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"vendors":[{"name":"Vendor ' - 'A","contact":"contact@vendora.com"},{"name":"Vendor ' - 'B","contact":"contact@vendorb.com"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_booking_custom_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_booking_custom_attributes_example_call_tool.js deleted file mode 100644 index 36eb368ef..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_booking_custom_attributes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkDeleteBookingCustomAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"bookingIds\":[\"123\",\"456\"],\"attributeKeys\":[\"customAttr1\",\"customAttr2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_booking_custom_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_booking_custom_attributes_example_call_tool.py deleted file mode 100644 index b8abe1e1c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_booking_custom_attributes_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkDeleteBookingCustomAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"bookingIds":["123","456"],"attributeKeys":["customAttr1","customAttr2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_customers_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_customers_example_call_tool.js deleted file mode 100644 index c4530345a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_customers_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkDeleteCustomers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_profile_ids": [ - "cust123", - "cust456", - "cust789" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_customers_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_customers_example_call_tool.py deleted file mode 100644 index 873313ce5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_customers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkDeleteCustomers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_profile_ids': ['cust123', 'cust456', 'cust789'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_location_custom_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_location_custom_attributes_example_call_tool.js deleted file mode 100644 index 574df7f24..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_location_custom_attributes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkDeleteLocationCustomAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"locations\":[{\"id\":\"loc123\",\"attributes\":[{\"key\":\"attr1\"},{\"key\":\"attr2\"}]}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_location_custom_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_location_custom_attributes_example_call_tool.py deleted file mode 100644 index 65e85e8fa..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_location_custom_attributes_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkDeleteLocationCustomAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"locations":[{"id":"loc123","attributes":[{"key":"attr1"},{"key":"attr2"}]}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_merchant_custom_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_merchant_custom_attributes_example_call_tool.js deleted file mode 100644 index b0ad2fe5d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_merchant_custom_attributes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkDeleteMerchantCustomAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"merchantId\":\"12345\",\"attributes\":[{\"key\":\"color\",\"value\":\"red\"},{\"key\":\"size\",\"value\":\"M\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_merchant_custom_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_merchant_custom_attributes_example_call_tool.py deleted file mode 100644 index bd1eb0014..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_merchant_custom_attributes_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkDeleteMerchantCustomAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"merchantId":"12345","attributes":[{"key":"color","value":"red"},{"key":"size","value":"M"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_order_custom_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_order_custom_attributes_example_call_tool.js deleted file mode 100644 index 3203b48c8..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_order_custom_attributes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkDeleteOrderCustomAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"order_ids\":[\"123\",\"456\"],\"attributes\":[\"color\",\"size\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_order_custom_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_order_custom_attributes_example_call_tool.py deleted file mode 100644 index 1fd78f459..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_delete_order_custom_attributes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkDeleteOrderCustomAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"order_ids":["123","456"],"attributes":["color","size"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_publish_scheduled_shifts_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_publish_scheduled_shifts_example_call_tool.js deleted file mode 100644 index 97341232c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_publish_scheduled_shifts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkPublishScheduledShifts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"shifts\":[{\"start_time\":\"2023-10-01T09:00:00Z\",\"end_time\":\"2023-10-01T17:00:00Z\",\"employee_id\":\"emp123\"},{\"start_time\":\"2023-10-02T09:00:00Z\",\"end_time\":\"2023-10-02T17:00:00Z\",\"employee_id\":\"emp456\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_publish_scheduled_shifts_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_publish_scheduled_shifts_example_call_tool.py deleted file mode 100644 index 21b0d5542..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_publish_scheduled_shifts_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkPublishScheduledShifts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"shifts":[{"start_time":"2023-10-01T09:00:00Z","end_time":"2023-10-01T17:00:00Z","employee_id":"emp123"},{"start_time":"2023-10-02T09:00:00Z","end_time":"2023-10-02T17:00:00Z","employee_id":"emp456"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_retrieve_bookings_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_retrieve_bookings_example_call_tool.js deleted file mode 100644 index 1faaced01..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_retrieve_bookings_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkRetrieveBookings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "booking_ids": [ - "12345", - "67890", - "abcde" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_retrieve_bookings_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_retrieve_bookings_example_call_tool.py deleted file mode 100644 index 381b3f638..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_retrieve_bookings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkRetrieveBookings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'booking_ids': ['12345', '67890', 'abcde'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_retrieve_customers_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_retrieve_customers_example_call_tool.js deleted file mode 100644 index b3663c8db..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_retrieve_customers_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkRetrieveCustomers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_ids": [ - "123", - "456", - "789" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_retrieve_customers_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_retrieve_customers_example_call_tool.py deleted file mode 100644 index f4347645d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_retrieve_customers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkRetrieveCustomers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_ids': ['123', '456', '789'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_swap_subscription_plan_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_swap_subscription_plan_example_call_tool.js deleted file mode 100644 index 9ef1febe9..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_swap_subscription_plan_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkSwapSubscriptionPlan"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_id_association": "loc_12345", - "new_plan_variation_id": "plan_67890", - "old_plan_variation_id": "plan_54321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_swap_subscription_plan_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_swap_subscription_plan_example_call_tool.py deleted file mode 100644 index 5cf42ce6e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_swap_subscription_plan_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkSwapSubscriptionPlan" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_id_association': 'loc_12345', - 'new_plan_variation_id': 'plan_67890', - 'old_plan_variation_id': 'plan_54321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_update_team_members_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_update_team_members_example_call_tool.js deleted file mode 100644 index 2fb5fe8ce..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_update_team_members_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkUpdateTeamMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"teamMembers\":[{\"id\":\"1\",\"name\":\"Alice\",\"role\":\"Developer\"},{\"id\":\"2\",\"name\":\"Bob\",\"role\":\"Designer\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_update_team_members_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_update_team_members_example_call_tool.py deleted file mode 100644 index f28c2cf09..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_update_team_members_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkUpdateTeamMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"teamMembers":[{"id":"1","name":"Alice","role":"Developer"},{"id":"2","name":"Bob","role":"Designer"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_update_vendors_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_update_vendors_example_call_tool.js deleted file mode 100644 index e780ef751..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_update_vendors_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkUpdateVendors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"vendors\":[{\"id\":\"vendor1\",\"name\":\"Vendor One\",\"status\":\"active\"},{\"id\":\"vendor2\",\"name\":\"Vendor Two\",\"status\":\"inactive\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_update_vendors_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_update_vendors_example_call_tool.py deleted file mode 100644 index 034947407..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_update_vendors_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkUpdateVendors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"vendors":[{"id":"vendor1","name":"Vendor ' - 'One","status":"active"},{"id":"vendor2","name":"Vendor ' - 'Two","status":"inactive"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_booking_custom_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_booking_custom_attributes_example_call_tool.js deleted file mode 100644 index eff026fca..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_booking_custom_attributes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkUpsertBookingCustomAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"bookings\":[{\"id\":\"123\",\"customAttributes\":{\"key1\":\"value1\",\"key2\":\"value2\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_booking_custom_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_booking_custom_attributes_example_call_tool.py deleted file mode 100644 index ad881aca9..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_booking_custom_attributes_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkUpsertBookingCustomAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"bookings":[{"id":"123","customAttributes":{"key1":"value1","key2":"value2"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_customer_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_customer_attributes_example_call_tool.js deleted file mode 100644 index aa3e17506..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_customer_attributes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkUpsertCustomerAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"customer_id\":\"12345\",\"attributes\":{\"loyalty_points\":100,\"membership_level\":\"gold\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_customer_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_customer_attributes_example_call_tool.py deleted file mode 100644 index 151d5abe0..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_customer_attributes_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkUpsertCustomerAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"customer_id":"12345","attributes":{"loyalty_points":100,"membership_level":"gold"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_location_custom_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_location_custom_attributes_example_call_tool.js deleted file mode 100644 index e2c3cbeeb..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_location_custom_attributes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkUpsertLocationCustomAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"locations\":[{\"id\":\"loc_1\",\"custom_attributes\":{\"key1\":\"value1\"}},{\"id\":\"loc_2\",\"custom_attributes\":{\"key2\":\"value2\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_location_custom_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_location_custom_attributes_example_call_tool.py deleted file mode 100644 index b3a6c64e8..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_location_custom_attributes_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkUpsertLocationCustomAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"locations":[{"id":"loc_1","custom_attributes":{"key1":"value1"}},{"id":"loc_2","custom_attributes":{"key2":"value2"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_order_custom_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_order_custom_attributes_example_call_tool.js deleted file mode 100644 index 6562851ab..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_order_custom_attributes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.BulkUpsertOrderCustomAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"orders\":[{\"order_id\":\"123\",\"custom_attributes\":{\"color\":\"red\",\"size\":\"M\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_order_custom_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_order_custom_attributes_example_call_tool.py deleted file mode 100644 index afa74b000..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/bulk_upsert_order_custom_attributes_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.BulkUpsertOrderCustomAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"orders":[{"order_id":"123","custom_attributes":{"color":"red","size":"M"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/calculate_loyalty_points_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/calculate_loyalty_points_example_call_tool.js deleted file mode 100644 index f301c741e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/calculate_loyalty_points_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CalculateLoyaltyPoints"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "loyalty_program_id": "LP123", - "transaction_amount_in_smallest_denomination": 5000 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/calculate_loyalty_points_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/calculate_loyalty_points_example_call_tool.py deleted file mode 100644 index c2c1041a5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/calculate_loyalty_points_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CalculateLoyaltyPoints" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'loyalty_program_id': 'LP123', 'transaction_amount_in_smallest_denomination': 5000 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_booking_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/cancel_booking_example_call_tool.js deleted file mode 100644 index 39a70778e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_booking_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CancelBooking"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "booking_id": "12345", - "booking_revision_number": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_booking_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/cancel_booking_example_call_tool.py deleted file mode 100644 index 70709c9e6..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_booking_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CancelBooking" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'booking_id': '12345', 'booking_revision_number': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/cancel_invoice_example_call_tool.js deleted file mode 100644 index 1b31e70e5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_invoice_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CancelInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_id": "INV123456", - "invoice_version_to_cancel": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/cancel_invoice_example_call_tool.py deleted file mode 100644 index 6eeae8036..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_invoice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CancelInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_id': 'INV123456', 'invoice_version_to_cancel': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_loyalty_promotion_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/cancel_loyalty_promotion_example_call_tool.js deleted file mode 100644 index f3393b6b8..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_loyalty_promotion_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CancelLoyaltyPromotion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "loyalty_program_id": "12345", - "loyalty_promotion_id": "ACTIVE" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_loyalty_promotion_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/cancel_loyalty_promotion_example_call_tool.py deleted file mode 100644 index d19886a98..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_loyalty_promotion_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CancelLoyaltyPromotion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'loyalty_program_id': '12345', 'loyalty_promotion_id': 'ACTIVE' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_payment_by_idempotency_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/cancel_payment_by_idempotency_example_call_tool.js deleted file mode 100644 index 4ef3a8ab4..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_payment_by_idempotency_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CancelPaymentByIdempotency"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_idempotency_key": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_payment_by_idempotency_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/cancel_payment_by_idempotency_example_call_tool.py deleted file mode 100644 index 0df8eb8fc..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_payment_by_idempotency_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CancelPaymentByIdempotency" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_idempotency_key': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/cancel_payment_example_call_tool.js deleted file mode 100644 index 9df9a4893..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_payment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CancelPayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_id_to_cancel": "12345-abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/cancel_payment_example_call_tool.py deleted file mode 100644 index 33acf2bac..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_payment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CancelPayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_id_to_cancel': '12345-abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/cancel_subscription_example_call_tool.js deleted file mode 100644 index 290c4430e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_subscription_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CancelSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/cancel_subscription_example_call_tool.py deleted file mode 100644 index b9e038af1..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CancelSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_action_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_action_example_call_tool.js deleted file mode 100644 index 9353c3095..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_action_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CancelTerminalAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "terminal_action_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_action_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_action_example_call_tool.py deleted file mode 100644 index 638569d9f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CancelTerminalAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'terminal_action_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_checkout_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_checkout_example_call_tool.js deleted file mode 100644 index 84b18c9de..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_checkout_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CancelTerminalCheckout"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "terminal_checkout_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_checkout_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_checkout_example_call_tool.py deleted file mode 100644 index 81b9511bb..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_checkout_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CancelTerminalCheckout" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'terminal_checkout_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_refund_example_call_tool.js deleted file mode 100644 index 96e799161..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_refund_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CancelTerminalRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "refund_request_id": "12345ABC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_refund_example_call_tool.py deleted file mode 100644 index 533565a24..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_terminal_refund_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CancelTerminalRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'refund_request_id': '12345ABC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_transfer_order_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/cancel_transfer_order_example_call_tool.js deleted file mode 100644 index 6aacb2e90..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_transfer_order_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CancelTransferOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transfer_order_id": "TO12345", - "unique_request_key": "req_67890", - "transfer_order_version": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/cancel_transfer_order_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/cancel_transfer_order_example_call_tool.py deleted file mode 100644 index 79b12d642..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/cancel_transfer_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CancelTransferOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transfer_order_id': 'TO12345', 'unique_request_key': 'req_67890', 'transfer_order_version': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/change_billing_anchor_date_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/change_billing_anchor_date_example_call_tool.js deleted file mode 100644 index ea1f9f6a2..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/change_billing_anchor_date_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ChangeBillingAnchorDate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_12345", - "billing_anchor_day": 15 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/change_billing_anchor_date_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/change_billing_anchor_date_example_call_tool.py deleted file mode 100644 index 29e937e19..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/change_billing_anchor_date_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ChangeBillingAnchorDate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_12345', 'billing_anchor_day': 15 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/clone_order_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/clone_order_draft_example_call_tool.js deleted file mode 100644 index 25adbd014..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/clone_order_draft_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CloneOrderDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "order_id_to_clone": "12345", - "clone_request_idempotency_key": "unique-key-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/clone_order_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/clone_order_draft_example_call_tool.py deleted file mode 100644 index 43ca8fd13..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/clone_order_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CloneOrderDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'order_id_to_clone': '12345', 'clone_request_idempotency_key': 'unique-key-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/complete_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/complete_payment_example_call_tool.js deleted file mode 100644 index 1525ba420..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/complete_payment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CompletePayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_identifier": "pay_123456", - "current_payment_version_token": "v1.0.0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/complete_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/complete_payment_example_call_tool.py deleted file mode 100644 index 85dd8c752..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/complete_payment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CompletePayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_identifier': 'pay_123456', 'current_payment_version_token': 'v1.0.0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_booking_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_booking_custom_attribute_example_call_tool.js deleted file mode 100644 index f4de8faa3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_booking_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateBookingCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "attribute_schema_json": "{\"type\":\"object\",\"properties\":{\"example_property\":{\"type\":\"string\"}}}", - "custom_attribute_definition_name": "BookingType", - "custom_attribute_key": "booking_type", - "custom_attribute_visibility": "VISIBILITY_READ_WRITE_VALUES", - "idempotency_key": "unique-request-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_booking_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_booking_custom_attribute_example_call_tool.py deleted file mode 100644 index 8321b0f4d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_booking_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateBookingCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'attribute_schema_json': '{"type":"object","properties":{"example_property":{"type":"string"}}}', - 'custom_attribute_definition_name': 'BookingType', - 'custom_attribute_key': 'booking_type', - 'custom_attribute_visibility': 'VISIBILITY_READ_WRITE_VALUES', - 'idempotency_key': 'unique-request-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_booking_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_booking_example_call_tool.js deleted file mode 100644 index a43719a61..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_booking_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateBooking"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"location\":\"New York\",\"start_time\":\"2023-10-15T10:00:00Z\",\"team_member\":\"John Doe\",\"service_variation\":\"Standard\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_booking_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_booking_example_call_tool.py deleted file mode 100644 index 9fc4adc45..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_booking_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateBooking" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"location":"New ' - 'York","start_time":"2023-10-15T10:00:00Z","team_member":"John ' - 'Doe","service_variation":"Standard"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_break_type_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_break_type_example_call_tool.js deleted file mode 100644 index 17c9619c9..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_break_type_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateBreakType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "break_expected_duration": "PT30M", - "break_name": "Lunch Break", - "is_break_paid": true, - "location_id": "loc_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_break_type_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_break_type_example_call_tool.py deleted file mode 100644 index 23d779fb2..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_break_type_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateBreakType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'break_expected_duration': 'PT30M', - 'break_name': 'Lunch Break', - 'is_break_paid': True, - 'location_id': 'loc_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_customer_attribute_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_customer_attribute_definition_example_call_tool.js deleted file mode 100644 index b1f12a5b6..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_customer_attribute_definition_example_call_tool.js +++ /dev/null @@ -1,43 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateCustomerAttributeDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "attribute_definition_name": "LoyaltyPoints", - "custom_attribute_key": "loyalty.points", - "custom_attribute_schema": { - "type": "object", - "properties": { - "points": { - "type": "integer" - } - } - }, - "custom_attribute_visibility": "VISIBILITY_READ_WRITE_VALUES", - "customer_attribute_description": "Points earned through purchases", - "idempotency_key": "unique-request-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_customer_attribute_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_customer_attribute_definition_example_call_tool.py deleted file mode 100644 index 68fd820f7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_customer_attribute_definition_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateCustomerAttributeDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'attribute_definition_name': 'LoyaltyPoints', - 'custom_attribute_key': 'loyalty.points', - 'custom_attribute_schema': {'type': 'object', 'properties': {'points': {'type': 'integer'}}}, - 'custom_attribute_visibility': 'VISIBILITY_READ_WRITE_VALUES', - 'customer_attribute_description': 'Points earned through purchases', - 'idempotency_key': 'unique-request-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_customer_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_customer_example_call_tool.js deleted file mode 100644 index 4fe5f7d42..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_customer_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateCustomer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"given_name\":\"John\",\"email\":\"john@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_customer_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_customer_example_call_tool.py deleted file mode 100644 index cbec0af19..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_customer_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateCustomer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"given_name":"John","email":"john@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_customer_group_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_customer_group_example_call_tool.js deleted file mode 100644 index 58c76b80b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_customer_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateCustomerGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_group_name": "VIP Customers", - "customer_group_id": "12345", - "idempotency_key": "abc-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_customer_group_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_customer_group_example_call_tool.py deleted file mode 100644 index b6f3b781f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_customer_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateCustomerGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_group_name': 'VIP Customers', 'customer_group_id': '12345', 'idempotency_key': 'abc-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_customer_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_customer_subscription_example_call_tool.js deleted file mode 100644 index 85223a71e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_customer_subscription_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateCustomerSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"customer_id\":\"12345\",\"subscription_plan\":\"premium\",\"start_date\":\"2023-10-01\",\"location_id\":\"loc_001\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_customer_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_customer_subscription_example_call_tool.py deleted file mode 100644 index 20b750ca1..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_customer_subscription_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateCustomerSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"customer_id":"12345","subscription_plan":"premium","start_date":"2023-10-01","location_id":"loc_001"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_draft_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_draft_invoice_example_call_tool.js deleted file mode 100644 index 250aa88a5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_draft_invoice_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateDraftInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"order_id\":\"12345\",\"amount\":100.00,\"currency\":\"USD\",\"customer_email\":\"customer@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_draft_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_draft_invoice_example_call_tool.py deleted file mode 100644 index 2664273b8..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_draft_invoice_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateDraftInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"order_id":"12345","amount":100.00,"currency":"USD","customer_email":"customer@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_gift_card_activity_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_gift_card_activity_example_call_tool.js deleted file mode 100644 index db43e5120..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_gift_card_activity_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateGiftCardActivity"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"giftCardId\":\"12345\",\"action\":\"activate\",\"amount\":100}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_gift_card_activity_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_gift_card_activity_example_call_tool.py deleted file mode 100644 index b7a2e2b16..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_gift_card_activity_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateGiftCardActivity" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"giftCardId":"12345","action":"activate","amount":100}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_gift_card_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_gift_card_example_call_tool.js deleted file mode 100644 index 79b9bd1b7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_gift_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateGiftCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"amount\":100,\"currency\":\"USD\",\"recipient\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_gift_card_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_gift_card_example_call_tool.py deleted file mode 100644 index f0ad74782..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_gift_card_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateGiftCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"amount":100,"currency":"USD","recipient":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_job_in_seller_account_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_job_in_seller_account_example_call_tool.js deleted file mode 100644 index 06cfc318f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_job_in_seller_account_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateJobInSellerAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "unique_creation_request_id": "req_12345", - "job_title": "Barista", - "is_tip_eligible": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_job_in_seller_account_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_job_in_seller_account_example_call_tool.py deleted file mode 100644 index 9abb14185..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_job_in_seller_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateJobInSellerAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'unique_creation_request_id': 'req_12345', 'job_title': 'Barista', 'is_tip_eligible': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_location_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_location_custom_attribute_example_call_tool.js deleted file mode 100644 index 17439445b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_location_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateLocationCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "app_id:custom_attr_1", - "custom_attribute_name": "Custom Attribute 1", - "custom_attribute_visibility": "VISIBILITY_READ_WRITE_VALUES", - "custom_attribute_schema": { - "type": "string" - }, - "unique_request_id": "req_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_location_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_location_custom_attribute_example_call_tool.py deleted file mode 100644 index 0897ef6e2..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_location_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateLocationCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'app_id:custom_attr_1', - 'custom_attribute_name': 'Custom Attribute 1', - 'custom_attribute_visibility': 'VISIBILITY_READ_WRITE_VALUES', - 'custom_attribute_schema': {'type': 'string'}, - 'unique_request_id': 'req_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_account_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_account_example_call_tool.js deleted file mode 100644 index fb0fcbe1f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateLoyaltyAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"program_id\":\"12345\",\"phone_number\":\"+1234567890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_account_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_account_example_call_tool.py deleted file mode 100644 index 0003f4027..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateLoyaltyAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"program_id":"12345","phone_number":"+1234567890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_promotion_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_promotion_example_call_tool.js deleted file mode 100644 index 74b038b54..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_promotion_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateLoyaltyPromotion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "loyalty_program_id": "12345", - "request_body": "{\"promotionName\":\"Summer Sale\",\"pointsEarned\":100,\"status\":\"ACTIVE\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_promotion_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_promotion_example_call_tool.py deleted file mode 100644 index f1cde5a42..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_promotion_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateLoyaltyPromotion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'loyalty_program_id': '12345', - 'request_body': '{"promotionName":"Summer Sale","pointsEarned":100,"status":"ACTIVE"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_reward_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_reward_example_call_tool.js deleted file mode 100644 index 4b284b477..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_reward_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateLoyaltyReward"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "loyalty_account_id": "123456789", - "reward_tier_id": "tier_001", - "unique_request_key": "req_abc123", - "number_of_loyalty_points": 100, - "order_id": "order_987654" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_reward_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_reward_example_call_tool.py deleted file mode 100644 index f4d30259d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_loyalty_reward_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateLoyaltyReward" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'loyalty_account_id': '123456789', - 'reward_tier_id': 'tier_001', - 'unique_request_key': 'req_abc123', - 'number_of_loyalty_points': 100, - 'order_id': 'order_987654' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_merchant_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_merchant_custom_attribute_example_call_tool.js deleted file mode 100644 index b4a8e6ef6..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_merchant_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,45 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateMerchantCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "attribute_visibility_level": "VISIBILITY_READ_WRITE_VALUES", - "custom_attribute_key": "app_123:custom_attr", - "custom_attribute_name": "Loyalty Points", - "custom_attribute_json_schema": { - "type": "object", - "properties": { - "points": { - "type": "integer" - } - }, - "required": [ - "points" - ] - }, - "idempotency_key": "unique-request-identifier" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_merchant_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_merchant_custom_attribute_example_call_tool.py deleted file mode 100644 index 3405a1e2c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_merchant_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateMerchantCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'attribute_visibility_level': 'VISIBILITY_READ_WRITE_VALUES', - 'custom_attribute_key': 'app_123:custom_attr', - 'custom_attribute_name': 'Loyalty Points', - 'custom_attribute_json_schema': { 'type': 'object', - 'properties': {'points': {'type': 'integer'}}, - 'required': ['points']}, - 'idempotency_key': 'unique-request-identifier' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_new_location_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_new_location_example_call_tool.js deleted file mode 100644 index 6028d510b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_new_location_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateNewLocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"New Location\",\"address\":\"123 Main St, Anytown, USA\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_new_location_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_new_location_example_call_tool.py deleted file mode 100644 index 35d201e2d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_new_location_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateNewLocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"name":"New Location","address":"123 Main St, Anytown, USA"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_order_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_order_custom_attribute_example_call_tool.js deleted file mode 100644 index 4d3b5cfa3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_order_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateOrderCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "creation_timestamp": "2023-10-01T12:00:00Z", - "custom_attribute_definition_key": "order_priority", - "custom_attribute_definition_name": "Order Priority", - "custom_attribute_description": "Indicates the priority level of the order.", - "custom_attribute_schema": { - "type": "string", - "enum": [ - "low", - "medium", - "high" - ] - }, - "custom_attribute_visibility": "VISIBILITY_READ_WRITE_VALUES", - "unique_request_id": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_order_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_order_custom_attribute_example_call_tool.py deleted file mode 100644 index 73899399c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_order_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateOrderCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'creation_timestamp': '2023-10-01T12:00:00Z', - 'custom_attribute_definition_key': 'order_priority', - 'custom_attribute_definition_name': 'Order Priority', - 'custom_attribute_description': 'Indicates the priority level of the order.', - 'custom_attribute_schema': {'type': 'string', 'enum': ['low', 'medium', 'high']}, - 'custom_attribute_visibility': 'VISIBILITY_READ_WRITE_VALUES', - 'unique_request_id': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_order_for_purchase_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_order_for_purchase_example_call_tool.js deleted file mode 100644 index 4eedee16a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_order_for_purchase_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateOrderForPurchase"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"product_id\":\"12345\",\"quantity\":2,\"price\":19.99}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_order_for_purchase_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_order_for_purchase_example_call_tool.py deleted file mode 100644 index a9a7a353d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_order_for_purchase_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateOrderForPurchase" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"product_id":"12345","quantity":2,"price":19.99}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_payment_example_call_tool.js deleted file mode 100644 index 3eb356357..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_payment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreatePayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"amount\":100,\"currency\":\"USD\",\"source\":\"card_12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_payment_example_call_tool.py deleted file mode 100644 index 6d57c2e77..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_payment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreatePayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"amount":100,"currency":"USD","source":"card_12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_payment_link_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_payment_link_example_call_tool.js deleted file mode 100644 index bbfd553b7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_payment_link_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreatePaymentLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"amount\":1000,\"currency\":\"USD\",\"description\":\"Payment for services\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_payment_link_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_payment_link_example_call_tool.py deleted file mode 100644 index 7187ef3c5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_payment_link_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreatePaymentLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"amount":1000,"currency":"USD","description":"Payment for services"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_scheduled_shift_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_scheduled_shift_example_call_tool.js deleted file mode 100644 index d4da20174..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_scheduled_shift_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateScheduledShift"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"location_id\":\"loc123\",\"job_id\":\"job456\",\"start_time\":\"2023-10-01T09:00:00Z\",\"end_time\":\"2023-10-01T17:00:00Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_scheduled_shift_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_scheduled_shift_example_call_tool.py deleted file mode 100644 index a2dbd8ac4..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_scheduled_shift_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateScheduledShift" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"location_id":"loc123","job_id":"job456","start_time":"2023-10-01T09:00:00Z","end_time":"2023-10-01T17:00:00Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_square_terminal_device_code_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_square_terminal_device_code_example_call_tool.js deleted file mode 100644 index d95638e1c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_square_terminal_device_code_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateSquareTerminalDeviceCode"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"device_id\":\"12345\",\"location_id\":\"67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_square_terminal_device_code_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_square_terminal_device_code_example_call_tool.py deleted file mode 100644 index 88e651751..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_square_terminal_device_code_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateSquareTerminalDeviceCode" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"device_id":"12345","location_id":"67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_team_member_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_team_member_example_call_tool.js deleted file mode 100644 index 88e275712..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_team_member_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateTeamMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"given_name\":\"John\",\"family_name\":\"Doe\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_team_member_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_team_member_example_call_tool.py deleted file mode 100644 index 7052e874b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_team_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateTeamMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"given_name":"John","family_name":"Doe"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_team_member_timecard_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_team_member_timecard_example_call_tool.js deleted file mode 100644 index 01851025e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_team_member_timecard_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateTeamMemberTimecard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"team_member_id\":\"12345\",\"date\":\"2023-10-01\",\"hours_worked\":8}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_team_member_timecard_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_team_member_timecard_example_call_tool.py deleted file mode 100644 index a67703df7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_team_member_timecard_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateTeamMemberTimecard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"team_member_id":"12345","date":"2023-10-01","hours_worked":8}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_terminal_action_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_terminal_action_example_call_tool.js deleted file mode 100644 index 204b9c059..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_terminal_action_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateTerminalAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"action\":\"start\",\"device_id\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_terminal_action_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_terminal_action_example_call_tool.py deleted file mode 100644 index f57dc8210..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_terminal_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateTerminalAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"action":"start","device_id":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_terminal_checkout_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_terminal_checkout_example_call_tool.js deleted file mode 100644 index 14f90fa7c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_terminal_checkout_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateTerminalCheckout"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"amount\":1000,\"currency\":\"USD\",\"device_id\":\"abc123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_terminal_checkout_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_terminal_checkout_example_call_tool.py deleted file mode 100644 index 06f9757bf..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_terminal_checkout_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateTerminalCheckout" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"amount":1000,"currency":"USD","device_id":"abc123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_terminal_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_terminal_refund_example_call_tool.js deleted file mode 100644 index 86467433d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_terminal_refund_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateTerminalRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"amount\":1000,\"currency\":\"CAD\",\"payment_id\":\"123456789\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_terminal_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_terminal_refund_example_call_tool.py deleted file mode 100644 index b11c26059..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_terminal_refund_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateTerminalRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"amount":1000,"currency":"CAD","payment_id":"123456789"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_transfer_order_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_transfer_order_example_call_tool.js deleted file mode 100644 index 741b9cc38..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_transfer_order_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateTransferOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"from_location\":\"Warehouse A\",\"to_location\":\"Store B\",\"items\":[{\"item_id\":\"123\",\"quantity\":10},{\"item_id\":\"456\",\"quantity\":5}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_transfer_order_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_transfer_order_example_call_tool.py deleted file mode 100644 index 29d3bd5bf..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_transfer_order_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateTransferOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"from_location":"Warehouse A","to_location":"Store ' - 'B","items":[{"item_id":"123","quantity":10},{"item_id":"456","quantity":5}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_vendor_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_vendor_example_call_tool.js deleted file mode 100644 index b1ce7cd14..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_vendor_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateVendor"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"vendor_name\":\"Acme Corp\",\"contact_email\":\"contact@acmecorp.com\",\"phone_number\":\"123-456-7890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_vendor_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_vendor_example_call_tool.py deleted file mode 100644 index 9b5d56e76..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_vendor_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateVendor" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"vendor_name":"Acme ' - 'Corp","contact_email":"contact@acmecorp.com","phone_number":"123-456-7890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/create_webhook_subscription_example_call_tool.js deleted file mode 100644 index 48e743aaf..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.CreateWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "api_version": "v1", - "enable_subscription": true, - "event_types": [ - "order.created", - "order.updated" - ], - "subscription_name": "MyWebhookSubscription", - "webhook_notification_url": "https://example.com/webhook" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/create_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/create_webhook_subscription_example_call_tool.py deleted file mode 100644 index c08420e6b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/create_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.CreateWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'api_version': 'v1', - 'enable_subscription': True, - 'event_types': ['order.created', 'order.updated'], - 'subscription_name': 'MyWebhookSubscription', - 'webhook_notification_url': 'https://example.com/webhook' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_booking_custom_attribute_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_booking_custom_attribute_definition_example_call_tool.js deleted file mode 100644 index f6d529094..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_booking_custom_attribute_definition_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteBookingCustomAttributeDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "customer_feedback" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_booking_custom_attribute_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_booking_custom_attribute_definition_example_call_tool.py deleted file mode 100644 index 59e99e847..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_booking_custom_attribute_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteBookingCustomAttributeDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'customer_feedback' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_booking_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_booking_custom_attribute_example_call_tool.js deleted file mode 100644 index 16ea32ab6..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_booking_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteBookingCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "booking_id": "12345", - "custom_attribute_key": "special_request" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_booking_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_booking_custom_attribute_example_call_tool.py deleted file mode 100644 index 9af7d233e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_booking_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteBookingCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'booking_id': '12345', 'custom_attribute_key': 'special_request' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_break_type_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_break_type_example_call_tool.js deleted file mode 100644 index 3f45270d6..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_break_type_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteBreakType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "break_type_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_break_type_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_break_type_example_call_tool.py deleted file mode 100644 index 55d5eeaa3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_break_type_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteBreakType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'break_type_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_catalog_items_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_catalog_items_example_call_tool.js deleted file mode 100644 index c196d9e66..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_catalog_items_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteCatalogItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "catalog_object_ids_to_delete": [ - "id1", - "id2", - "id3" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_catalog_items_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_catalog_items_example_call_tool.py deleted file mode 100644 index 3f09282f2..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_catalog_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteCatalogItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'catalog_object_ids_to_delete': ['id1', 'id2', 'id3'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_catalog_object_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_catalog_object_example_call_tool.js deleted file mode 100644 index e4b2e8a04..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_catalog_object_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteCatalogObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "catalog_object_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_catalog_object_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_catalog_object_example_call_tool.py deleted file mode 100644 index a14a9cfce..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_catalog_object_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteCatalogObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'catalog_object_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_attribute_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_customer_attribute_definition_example_call_tool.js deleted file mode 100644 index c7b47c8a7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_attribute_definition_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteCustomerAttributeDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "loyalty_points" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_attribute_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_customer_attribute_definition_example_call_tool.py deleted file mode 100644 index 2f6b58a7b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_attribute_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteCustomerAttributeDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'loyalty_points' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_customer_custom_attribute_example_call_tool.js deleted file mode 100644 index f54f9dd19..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteCustomerCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "loyalty_points", - "customer_profile_id": "CUST123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_customer_custom_attribute_example_call_tool.py deleted file mode 100644 index 1779d032f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteCustomerCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'loyalty_points', 'customer_profile_id': 'CUST123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_group_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_customer_group_example_call_tool.js deleted file mode 100644 index b1a2bcd98..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_group_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteCustomerGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_group_id": "group123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_group_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_customer_group_example_call_tool.py deleted file mode 100644 index aea8ba747..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteCustomerGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_group_id': 'group123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_profile_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_customer_profile_example_call_tool.js deleted file mode 100644 index 9a8024e59..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_profile_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteCustomerProfile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "12345", - "customer_profile_version": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_profile_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_customer_profile_example_call_tool.py deleted file mode 100644 index 55ef23e98..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_customer_profile_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteCustomerProfile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': '12345', 'customer_profile_version': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_draft_transfer_order_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_draft_transfer_order_example_call_tool.js deleted file mode 100644 index e0ede4052..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_draft_transfer_order_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteDraftTransferOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transfer_order_id": "12345", - "optimistic_concurrency_version": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_draft_transfer_order_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_draft_transfer_order_example_call_tool.py deleted file mode 100644 index cdf6b10ad..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_draft_transfer_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteDraftTransferOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transfer_order_id': '12345', 'optimistic_concurrency_version': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_invoice_example_call_tool.js deleted file mode 100644 index 3a6da20b0..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_invoice_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_id": "inv_12345", - "invoice_version": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_invoice_example_call_tool.py deleted file mode 100644 index dc4625650..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_invoice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_id': 'inv_12345', 'invoice_version': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_location_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_location_custom_attribute_example_call_tool.js deleted file mode 100644 index ba26d5915..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_location_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteLocationCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "location_color" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_location_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_location_custom_attribute_example_call_tool.py deleted file mode 100644 index f3fb05a44..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_location_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteLocationCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'location_color' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_loyalty_reward_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_loyalty_reward_example_call_tool.js deleted file mode 100644 index 61bcd8d3f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_loyalty_reward_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteLoyaltyReward"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "loyalty_reward_id": "reward123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_loyalty_reward_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_loyalty_reward_example_call_tool.py deleted file mode 100644 index e430e44b2..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_loyalty_reward_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteLoyaltyReward" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'loyalty_reward_id': 'reward123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_merchant_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_merchant_custom_attribute_example_call_tool.js deleted file mode 100644 index c9cbe8cc4..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_merchant_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteMerchantCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "loyalty_points" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_merchant_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_merchant_custom_attribute_example_call_tool.py deleted file mode 100644 index 3678460f3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_merchant_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteMerchantCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'loyalty_points' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_order_custom_attribute_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_order_custom_attribute_definition_example_call_tool.js deleted file mode 100644 index e22690b7b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_order_custom_attribute_definition_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteOrderCustomAttributeDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "order_priority" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_order_custom_attribute_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_order_custom_attribute_definition_example_call_tool.py deleted file mode 100644 index 27cd53168..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_order_custom_attribute_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteOrderCustomAttributeDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'order_priority' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_order_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_order_custom_attribute_example_call_tool.js deleted file mode 100644 index 23d42c130..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_order_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteOrderCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "color", - "order_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_order_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_order_custom_attribute_example_call_tool.py deleted file mode 100644 index ae2baf0da..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_order_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteOrderCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'color', 'order_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_payment_link_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_payment_link_example_call_tool.js deleted file mode 100644 index 92ef65580..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_payment_link_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeletePaymentLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_link_id": "pl_123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_payment_link_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_payment_link_example_call_tool.py deleted file mode 100644 index 195cbb9c0..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_payment_link_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeletePaymentLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_link_id': 'pl_123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_square_snippet_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_square_snippet_example_call_tool.js deleted file mode 100644 index 510107b5e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_square_snippet_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteSquareSnippet"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site_id": "site_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_square_snippet_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_square_snippet_example_call_tool.py deleted file mode 100644 index 48df883d3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_square_snippet_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteSquareSnippet" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site_id': 'site_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_subscription_action_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_subscription_action_example_call_tool.js deleted file mode 100644 index 37e387320..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_subscription_action_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteSubscriptionAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_12345", - "targeted_action_id": "action_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_subscription_action_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_subscription_action_example_call_tool.py deleted file mode 100644 index 2c3d3a48c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_subscription_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteSubscriptionAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_12345', 'targeted_action_id': 'action_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_timecard_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_timecard_example_call_tool.js deleted file mode 100644 index 658e38619..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_timecard_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteTimecard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "timecard_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_timecard_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_timecard_example_call_tool.py deleted file mode 100644 index 1f1e770b0..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_timecard_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteTimecard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'timecard_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/delete_webhook_subscription_example_call_tool.js deleted file mode 100644 index 69828d914..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DeleteWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_subscription_id": "sub_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/delete_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/delete_webhook_subscription_example_call_tool.py deleted file mode 100644 index f4e7ddb16..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/delete_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DeleteWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_subscription_id': 'sub_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/disable_credit_card_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/disable_credit_card_example_call_tool.js deleted file mode 100644 index 64cdbe06d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/disable_credit_card_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DisableCreditCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "credit_card_id": "1234-5678-9012-3456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/disable_credit_card_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/disable_credit_card_example_call_tool.py deleted file mode 100644 index f6be80338..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/disable_credit_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DisableCreditCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'credit_card_id': '1234-5678-9012-3456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/disable_searchable_events_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/disable_searchable_events_example_call_tool.js deleted file mode 100644 index 79c0f7289..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/disable_searchable_events_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DisableSearchableEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/disable_searchable_events_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/disable_searchable_events_example_call_tool.py deleted file mode 100644 index ffc4b00d1..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/disable_searchable_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DisableSearchableEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_action_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_action_example_call_tool.js deleted file mode 100644 index 931a0b7ed..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_action_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DismissTerminalAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "terminal_action_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_action_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_action_example_call_tool.py deleted file mode 100644 index 30b1c972e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DismissTerminalAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'terminal_action_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_checkout_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_checkout_example_call_tool.js deleted file mode 100644 index 1d9a84d0d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_checkout_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DismissTerminalCheckout"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "terminal_checkout_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_checkout_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_checkout_example_call_tool.py deleted file mode 100644 index f1486d7bf..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_checkout_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DismissTerminalCheckout" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'terminal_checkout_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_refund_example_call_tool.js deleted file mode 100644 index d78dcad2f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_refund_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.DismissTerminalRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "terminal_refund_unique_id": "refund_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_refund_example_call_tool.py deleted file mode 100644 index 33b7153c5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/dismiss_terminal_refund_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.DismissTerminalRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'terminal_refund_unique_id': 'refund_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/enable_events_search_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/enable_events_search_example_call_tool.js deleted file mode 100644 index 6d2f90811..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/enable_events_search_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.EnableEventsSearch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/enable_events_search_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/enable_events_search_example_call_tool.py deleted file mode 100644 index bad0d3fa0..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/enable_events_search_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.EnableEventsSearch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/fetch_inventory_changes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/fetch_inventory_changes_example_call_tool.js deleted file mode 100644 index dfe9f3eee..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/fetch_inventory_changes_example_call_tool.js +++ /dev/null @@ -1,42 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.FetchInventoryChanges"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_catalog_object_ids": [ - "catalog_id_1", - "catalog_id_2" - ], - "filter_by_location_ids": [ - "location_id_1" - ], - "filter_by_updated_before_timestamp": "2023-10-01T00:00:00Z", - "filter_inventory_change_types": [ - "PHYSICAL_COUNT" - ], - "number_of_records_to_return": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/fetch_inventory_changes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/fetch_inventory_changes_example_call_tool.py deleted file mode 100644 index 668ebb513..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/fetch_inventory_changes_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.FetchInventoryChanges" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_catalog_object_ids': ['catalog_id_1', 'catalog_id_2'], - 'filter_by_location_ids': ['location_id_1'], - 'filter_by_updated_before_timestamp': '2023-10-01T00:00:00Z', - 'filter_inventory_change_types': ['PHYSICAL_COUNT'], - 'number_of_records_to_return': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_account_disputes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_account_disputes_example_call_tool.js deleted file mode 100644 index 7ca7a2417..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_account_disputes_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetAccountDisputes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dispute_states_filter": "INQUIRY_CLOSED", - "location_id": "loc_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_account_disputes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_account_disputes_example_call_tool.py deleted file mode 100644 index 66f87cced..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_account_disputes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetAccountDisputes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dispute_states_filter': 'INQUIRY_CLOSED', 'location_id': 'loc_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_bank_account_details_by_v1_id_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_bank_account_details_by_v1_id_example_call_tool.js deleted file mode 100644 index 5fcf786c3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_bank_account_details_by_v1_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetBankAccountDetailsByV1Id"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "v1_bank_account_id": "123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_bank_account_details_by_v1_id_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_bank_account_details_by_v1_id_example_call_tool.py deleted file mode 100644 index cc9d07665..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_bank_account_details_by_v1_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetBankAccountDetailsByV1Id" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'v1_bank_account_id': '123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_bank_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_bank_account_details_example_call_tool.js deleted file mode 100644 index d704c1878..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_bank_account_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetBankAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "bank_account_id": "BA123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_bank_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_bank_account_details_example_call_tool.py deleted file mode 100644 index e942e4288..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_bank_account_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetBankAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'bank_account_id': 'BA123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_break_type_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_break_type_by_id_example_call_tool.js deleted file mode 100644 index 5d91ee15c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_break_type_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetBreakTypeById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "break_type_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_break_type_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_break_type_by_id_example_call_tool.py deleted file mode 100644 index a68d24e08..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_break_type_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetBreakTypeById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'break_type_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_catalog_item_info_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_catalog_item_info_example_call_tool.js deleted file mode 100644 index a25ecfa00..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_catalog_item_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetCatalogItemInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "catalog_object_id": "item_12345", - "catalog_version": 1, - "include_related_objects": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_catalog_item_info_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_catalog_item_info_example_call_tool.py deleted file mode 100644 index fa96fea83..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_catalog_item_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetCatalogItemInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'catalog_object_id': 'item_12345', 'catalog_version': 1, 'include_related_objects': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_customer_custom_attribute_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_customer_custom_attribute_definition_example_call_tool.js deleted file mode 100644 index aba23a671..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_customer_custom_attribute_definition_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetCustomerCustomAttributeDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "loyalty_points", - "custom_attribute_version": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_customer_custom_attribute_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_customer_custom_attribute_definition_example_call_tool.py deleted file mode 100644 index c7c066c53..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_customer_custom_attribute_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetCustomerCustomAttributeDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'loyalty_points', 'custom_attribute_version': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_customer_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_customer_custom_attribute_example_call_tool.js deleted file mode 100644 index 063f3778f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_customer_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetCustomerCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "loyalty_points", - "customer_profile_id": "CUST123456", - "attribute_version": 1, - "include_custom_attribute_definition": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_customer_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_customer_custom_attribute_example_call_tool.py deleted file mode 100644 index c704f96bc..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_customer_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetCustomerCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'loyalty_points', - 'customer_profile_id': 'CUST123456', - 'attribute_version': 1, - 'include_custom_attribute_definition': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_customer_group_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_customer_group_example_call_tool.js deleted file mode 100644 index e5100f76b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_customer_group_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetCustomerGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_group_id": "group123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_customer_group_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_customer_group_example_call_tool.py deleted file mode 100644 index ef8f4e65f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_customer_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetCustomerGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_group_id': 'group123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_customer_segment_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_customer_segment_example_call_tool.js deleted file mode 100644 index 4cf69deed..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_customer_segment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetCustomerSegment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_segment_id": "seg_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_customer_segment_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_customer_segment_example_call_tool.py deleted file mode 100644 index 6ea82f83d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_customer_segment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetCustomerSegment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_segment_id': 'seg_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_dispute_evidence_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_dispute_evidence_example_call_tool.js deleted file mode 100644 index 5a71d7d50..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_dispute_evidence_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetDisputeEvidence"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dispute_id": "12345", - "pagination_cursor": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_dispute_evidence_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_dispute_evidence_example_call_tool.py deleted file mode 100644 index d1eb6a4e8..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_dispute_evidence_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetDisputeEvidence" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dispute_id': '12345', 'pagination_cursor': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_dispute_evidence_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_dispute_evidence_metadata_example_call_tool.js deleted file mode 100644 index 19094d586..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_dispute_evidence_metadata_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetDisputeEvidenceMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dispute_id": "12345", - "evidence_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_dispute_evidence_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_dispute_evidence_metadata_example_call_tool.py deleted file mode 100644 index 74401588c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_dispute_evidence_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetDisputeEvidenceMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dispute_id': '12345', 'evidence_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_inventory_count_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_inventory_count_example_call_tool.js deleted file mode 100644 index 504782ad4..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_inventory_count_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetInventoryCount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "catalog_object_id": "item_12345", - "location_ids": "loc_1,loc_2" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_inventory_count_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_inventory_count_example_call_tool.py deleted file mode 100644 index bddb7d0da..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_inventory_count_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetInventoryCount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'catalog_object_id': 'item_12345', 'location_ids': 'loc_1,loc_2' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_inventory_physical_count_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_inventory_physical_count_example_call_tool.js deleted file mode 100644 index 2fecfb047..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_inventory_physical_count_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetInventoryPhysicalCount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "inventory_physical_count_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_inventory_physical_count_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_inventory_physical_count_example_call_tool.py deleted file mode 100644 index f8eb945e3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_inventory_physical_count_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetInventoryPhysicalCount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'inventory_physical_count_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_location_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_location_custom_attribute_example_call_tool.js deleted file mode 100644 index f8b73f47e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_location_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetLocationCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "loyalty_points", - "target_location_id": "location_123", - "custom_attribute_version": 1, - "include_custom_attribute_definition": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_location_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_location_custom_attribute_example_call_tool.py deleted file mode 100644 index 4bd8f895e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_location_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetLocationCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'loyalty_points', - 'target_location_id': 'location_123', - 'custom_attribute_version': 1, - 'include_custom_attribute_definition': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_loyalty_program_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_loyalty_program_example_call_tool.js deleted file mode 100644 index f18d840bb..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_loyalty_program_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetLoyaltyProgram"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "loyalty_program_identifier": "main" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_loyalty_program_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_loyalty_program_example_call_tool.py deleted file mode 100644 index b9b6ef7d0..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_loyalty_program_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetLoyaltyProgram" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'loyalty_program_identifier': 'main' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_loyalty_reward_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_loyalty_reward_example_call_tool.js deleted file mode 100644 index 4a34091ab..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_loyalty_reward_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetLoyaltyReward"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "loyalty_reward_id": "RW12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_loyalty_reward_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_loyalty_reward_example_call_tool.py deleted file mode 100644 index 42ed3580f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_loyalty_reward_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetLoyaltyReward" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'loyalty_reward_id': 'RW12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_merchant_custom_attribute_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_merchant_custom_attribute_definition_example_call_tool.js deleted file mode 100644 index 64bffa931..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_merchant_custom_attribute_definition_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetMerchantCustomAttributeDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "loyalty_points", - "custom_attribute_version": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_merchant_custom_attribute_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_merchant_custom_attribute_definition_example_call_tool.py deleted file mode 100644 index 1c7117846..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_merchant_custom_attribute_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetMerchantCustomAttributeDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'loyalty_points', 'custom_attribute_version': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_merchant_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_merchant_details_example_call_tool.js deleted file mode 100644 index 233af0e20..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_merchant_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetMerchantDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "previous_response_cursor": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_merchant_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_merchant_details_example_call_tool.py deleted file mode 100644 index 12127b6fc..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_merchant_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetMerchantDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'previous_response_cursor': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_payment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_payment_details_example_call_tool.js deleted file mode 100644 index 2412d9180..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_payment_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetPaymentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_payment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_payment_details_example_call_tool.py deleted file mode 100644 index dfc957dd5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_payment_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetPaymentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_payout_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_payout_details_example_call_tool.js deleted file mode 100644 index 6654b35a6..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_payout_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetPayoutDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payout_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_payout_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_payout_details_example_call_tool.py deleted file mode 100644 index 129886c27..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_payout_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetPayoutDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payout_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_square_catalog_info_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_square_catalog_info_example_call_tool.js deleted file mode 100644 index fca54863d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_square_catalog_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetSquareCatalogInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_square_catalog_info_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_square_catalog_info_example_call_tool.py deleted file mode 100644 index d8732927c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_square_catalog_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetSquareCatalogInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_team_member_booking_profile_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_team_member_booking_profile_example_call_tool.js deleted file mode 100644 index 64ee42f8a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_team_member_booking_profile_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetTeamMemberBookingProfile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_member_unique_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_team_member_booking_profile_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_team_member_booking_profile_example_call_tool.py deleted file mode 100644 index 293ad3963..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_team_member_booking_profile_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetTeamMemberBookingProfile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_member_unique_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_team_member_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_team_member_details_example_call_tool.js deleted file mode 100644 index 0242aa075..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_team_member_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetTeamMemberDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_member_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_team_member_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_team_member_details_example_call_tool.py deleted file mode 100644 index 5209d576a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_team_member_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetTeamMemberDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_member_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_team_member_wage_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_team_member_wage_example_call_tool.js deleted file mode 100644 index 7921752ab..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_team_member_wage_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetTeamMemberWage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_member_wage_id": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_team_member_wage_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_team_member_wage_example_call_tool.py deleted file mode 100644 index b52cfd8fc..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_team_member_wage_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetTeamMemberWage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_member_wage_id': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_terminal_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_terminal_refund_example_call_tool.js deleted file mode 100644 index 271d5f297..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_terminal_refund_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetTerminalRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "terminal_refund_id": "refund_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_terminal_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_terminal_refund_example_call_tool.py deleted file mode 100644 index 9e9c26dec..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_terminal_refund_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetTerminalRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'terminal_refund_id': 'refund_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_timecard_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/get_timecard_by_id_example_call_tool.js deleted file mode 100644 index 3d82db7fe..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_timecard_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.GetTimecardById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "timecard_id": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/get_timecard_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/get_timecard_by_id_example_call_tool.py deleted file mode 100644 index 208852284..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/get_timecard_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.GetTimecardById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'timecard_id': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/link_customer_to_gift_card_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/link_customer_to_gift_card_example_call_tool.js deleted file mode 100644 index 8f4dc8b03..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/link_customer_to_gift_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.LinkCustomerToGiftCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "C12345", - "gift_card_identifier": "GIFT67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/link_customer_to_gift_card_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/link_customer_to_gift_card_example_call_tool.py deleted file mode 100644 index 5186de6aa..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/link_customer_to_gift_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.LinkCustomerToGiftCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'C12345', 'gift_card_identifier': 'GIFT67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_all_locations_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_all_locations_example_call_tool.js deleted file mode 100644 index 98a037bd4..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_all_locations_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListAllLocations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_all_locations_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_all_locations_example_call_tool.py deleted file mode 100644 index aeeceb599..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_all_locations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListAllLocations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_bank_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_bank_accounts_example_call_tool.js deleted file mode 100644 index 4d6127e71..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_bank_accounts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListBankAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_id_filter": "loc_123", - "max_bank_accounts": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_bank_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_bank_accounts_example_call_tool.py deleted file mode 100644 index da7ece37f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_bank_accounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListBankAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_id_filter': 'loc_123', 'max_bank_accounts': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_booking_custom_attribute_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_booking_custom_attribute_definitions_example_call_tool.js deleted file mode 100644 index d31bf1611..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_booking_custom_attribute_definitions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListBookingCustomAttributeDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor": "abc123", - "result_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_booking_custom_attribute_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_booking_custom_attribute_definitions_example_call_tool.py deleted file mode 100644 index 1e3fb784c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_booking_custom_attribute_definitions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListBookingCustomAttributeDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor': 'abc123', 'result_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_booking_custom_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_booking_custom_attributes_example_call_tool.js deleted file mode 100644 index 0ded4e40e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_booking_custom_attributes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListBookingCustomAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "booking_id": "12345", - "include_custom_attribute_definitions": true, - "maximum_results_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_booking_custom_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_booking_custom_attributes_example_call_tool.py deleted file mode 100644 index b1bf54c70..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_booking_custom_attributes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListBookingCustomAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'booking_id': '12345', 'include_custom_attribute_definitions': True, 'maximum_results_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_booking_profiles_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_booking_profiles_example_call_tool.js deleted file mode 100644 index bf8bfe40d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_booking_profiles_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListBookingProfiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_location_id": "12345", - "include_only_bookable_members": true, - "maximum_results_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_booking_profiles_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_booking_profiles_example_call_tool.py deleted file mode 100644 index b655cf05d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_booking_profiles_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListBookingProfiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_location_id': '12345', - 'include_only_bookable_members': True, - 'maximum_results_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_break_types_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_break_types_example_call_tool.js deleted file mode 100644 index 21d086a54..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_break_types_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListBreakTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_location_id": "12345", - "max_results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_break_types_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_break_types_example_call_tool.py deleted file mode 100644 index bef036522..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_break_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListBreakTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_location_id': '12345', 'max_results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_cash_drawer_shift_events_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_cash_drawer_shift_events_example_call_tool.js deleted file mode 100644 index eb7292d8e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_cash_drawer_shift_events_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListCashDrawerShiftEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_id": "loc_123", - "shift_id": "shift_456", - "max_results_per_page": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_cash_drawer_shift_events_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_cash_drawer_shift_events_example_call_tool.py deleted file mode 100644 index 65afac956..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_cash_drawer_shift_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListCashDrawerShiftEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_id': 'loc_123', 'shift_id': 'shift_456', 'max_results_per_page': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_cash_drawer_shifts_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_cash_drawer_shifts_example_call_tool.js deleted file mode 100644 index e283b83dd..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_cash_drawer_shifts_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListCashDrawerShifts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_id": "loc_12345", - "start_time": "2023-10-01T00:00:00Z", - "exclusive_query_end_time": "2023-10-31T23:59:59Z", - "results_per_page": 100, - "sort_order": "DESC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_cash_drawer_shifts_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_cash_drawer_shifts_example_call_tool.py deleted file mode 100644 index 67e90beda..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_cash_drawer_shifts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListCashDrawerShifts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_id': 'loc_12345', - 'start_time': '2023-10-01T00:00:00Z', - 'exclusive_query_end_time': '2023-10-31T23:59:59Z', - 'results_per_page': 100, - 'sort_order': 'DESC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_catalog_items_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_catalog_items_example_call_tool.js deleted file mode 100644 index 6f6e8449d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_catalog_items_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListCatalogItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "catalog_object_types": "ITEM,ITEM_VARIATION", - "catalog_version_number": 5, - "pagination_cursor": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_catalog_items_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_catalog_items_example_call_tool.py deleted file mode 100644 index 0cd504cc4..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_catalog_items_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListCatalogItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'catalog_object_types': 'ITEM,ITEM_VARIATION', - 'catalog_version_number': 5, - 'pagination_cursor': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_customer_custom_attribute_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_customer_custom_attribute_definitions_example_call_tool.js deleted file mode 100644 index 01e8d90a9..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_customer_custom_attribute_definitions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListCustomerCustomAttributeDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_results_per_page": 50, - "pagination_cursor": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_customer_custom_attribute_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_customer_custom_attribute_definitions_example_call_tool.py deleted file mode 100644 index 4b50c985b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_customer_custom_attribute_definitions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListCustomerCustomAttributeDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_results_per_page': 50, 'pagination_cursor': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_customer_custom_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_customer_custom_attributes_example_call_tool.js deleted file mode 100644 index 09659969f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_customer_custom_attributes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListCustomerCustomAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_profile_id": "12345", - "include_attribute_definitions": true, - "maximum_results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_customer_custom_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_customer_custom_attributes_example_call_tool.py deleted file mode 100644 index 1e8b105bc..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_customer_custom_attributes_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListCustomerCustomAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_profile_id': '12345', - 'include_attribute_definitions': True, - 'maximum_results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_customer_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_customer_groups_example_call_tool.js deleted file mode 100644 index 7a4f3ce8f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_customer_groups_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListCustomerGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_results_per_page": 10, - "pagination_cursor": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_customer_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_customer_groups_example_call_tool.py deleted file mode 100644 index 7cd8bbf25..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_customer_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListCustomerGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_results_per_page': 10, 'pagination_cursor': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_customer_profiles_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_customer_profiles_example_call_tool.js deleted file mode 100644 index 0d7c0b1f5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_customer_profiles_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListCustomerProfiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_sort_field": "CREATED_AT", - "customer_sort_order": "DESC", - "include_total_customer_count": true, - "max_results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_customer_profiles_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_customer_profiles_example_call_tool.py deleted file mode 100644 index e0fe64bf1..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_customer_profiles_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListCustomerProfiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_sort_field': 'CREATED_AT', - 'customer_sort_order': 'DESC', - 'include_total_customer_count': True, - 'max_results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_customer_segments_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_customer_segments_example_call_tool.js deleted file mode 100644 index feee66bc0..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_customer_segments_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListCustomerSegments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_results_per_page": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_customer_segments_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_customer_segments_example_call_tool.py deleted file mode 100644 index c831c2a41..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_customer_segments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListCustomerSegments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_results_per_page': 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_device_codes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_device_codes_example_call_tool.js deleted file mode 100644 index 8ca8f51a5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_device_codes_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListDeviceCodes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "device_code_status": "PAIRED", - "location_id_filter": "loc123", - "pagination_cursor": "cursor456", - "product_type_filter": "TERMINAL_API" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_device_codes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_device_codes_example_call_tool.py deleted file mode 100644 index d12026b85..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_device_codes_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListDeviceCodes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'device_code_status': 'PAIRED', - 'location_id_filter': 'loc123', - 'pagination_cursor': 'cursor456', - 'product_type_filter': 'TERMINAL_API' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_event_types_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_event_types_example_call_tool.js deleted file mode 100644 index cd3376728..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_event_types_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListEventTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "api_version": "2023-10-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_event_types_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_event_types_example_call_tool.py deleted file mode 100644 index 8c4fef4b6..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_event_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListEventTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'api_version': '2023-10-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_gift_card_activities_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_gift_card_activities_example_call_tool.js deleted file mode 100644 index 4815d5ba7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_gift_card_activities_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListGiftCardActivities"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "activity_sort_order": "ASC", - "end_time_rfc3339": "2023-10-01T00:00:00Z", - "filter_by_activity_type": "purchase", - "results_limit_per_page": 20, - "specific_gift_card_id": "GC123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_gift_card_activities_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_gift_card_activities_example_call_tool.py deleted file mode 100644 index be818be20..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_gift_card_activities_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListGiftCardActivities" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'activity_sort_order': 'ASC', - 'end_time_rfc3339': '2023-10-01T00:00:00Z', - 'filter_by_activity_type': 'purchase', - 'results_limit_per_page': 20, - 'specific_gift_card_id': 'GC123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_gift_cards_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_gift_cards_example_call_tool.js deleted file mode 100644 index 2879e9bf4..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_gift_cards_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListGiftCards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_customer_id": "12345", - "gift_card_state": "active", - "results_per_page_limit": 30 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_gift_cards_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_gift_cards_example_call_tool.py deleted file mode 100644 index cabec0695..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_gift_cards_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListGiftCards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_customer_id': '12345', 'gift_card_state': 'active', 'results_per_page_limit': 30 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_invoices_example_call_tool.js deleted file mode 100644 index 4279b535c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_invoices_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListInvoices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_identifier": "loc_123", - "maximum_invoices_to_return": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_invoices_example_call_tool.py deleted file mode 100644 index 48823bfe7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_invoices_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListInvoices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_identifier': 'loc_123', 'maximum_invoices_to_return': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_jobs_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_jobs_example_call_tool.js deleted file mode 100644 index 3b94d5797..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_jobs_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListJobs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_jobs_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_jobs_example_call_tool.py deleted file mode 100644 index 930094c0b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_jobs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListJobs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_location_custom_attribute_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_location_custom_attribute_definitions_example_call_tool.js deleted file mode 100644 index c7e28ce51..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_location_custom_attribute_definitions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListLocationCustomAttributeDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_visibility": "READ", - "maximum_results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_location_custom_attribute_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_location_custom_attribute_definitions_example_call_tool.py deleted file mode 100644 index 2ec701170..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_location_custom_attribute_definitions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListLocationCustomAttributeDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_visibility': 'READ', 'maximum_results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_location_custom_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_location_custom_attributes_example_call_tool.js deleted file mode 100644 index 27bd72680..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_location_custom_attributes_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListLocationCustomAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_id": "loc_12345", - "filter_by_visibility": "READ", - "include_custom_attribute_definitions": true, - "maximum_results_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_location_custom_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_location_custom_attributes_example_call_tool.py deleted file mode 100644 index a33e5a4f1..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_location_custom_attributes_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListLocationCustomAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_id': 'loc_12345', - 'filter_by_visibility': 'READ', - 'include_custom_attribute_definitions': True, - 'maximum_results_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_loyalty_promotions_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_loyalty_promotions_example_call_tool.js deleted file mode 100644 index 1f5bb6752..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_loyalty_promotions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListLoyaltyPromotions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "loyalty_program_id": "12345", - "max_results_per_page": 10, - "promotion_status_filter": "ACTIVE" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_loyalty_promotions_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_loyalty_promotions_example_call_tool.py deleted file mode 100644 index 6cc32e1af..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_loyalty_promotions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListLoyaltyPromotions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'loyalty_program_id': '12345', 'max_results_per_page': 10, 'promotion_status_filter': 'ACTIVE' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_merchant_custom_attribute_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_merchant_custom_attribute_definitions_example_call_tool.js deleted file mode 100644 index b4a0a4923..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_merchant_custom_attribute_definitions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListMerchantCustomAttributeDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_results_per_page": 50, - "visibility_filter_option": "ALL" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_merchant_custom_attribute_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_merchant_custom_attribute_definitions_example_call_tool.py deleted file mode 100644 index b737418f0..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_merchant_custom_attribute_definitions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListMerchantCustomAttributeDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_results_per_page': 50, 'visibility_filter_option': 'ALL' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_merchant_custom_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_merchant_custom_attributes_example_call_tool.js deleted file mode 100644 index 4d3d801bb..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_merchant_custom_attributes_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListMerchantCustomAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "merchant_identifier": "merchant_123", - "filter_custom_attribute_visibility": "READ", - "include_custom_attribute_definitions": true, - "maximum_results_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_merchant_custom_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_merchant_custom_attributes_example_call_tool.py deleted file mode 100644 index 5eb88310d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_merchant_custom_attributes_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListMerchantCustomAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'merchant_identifier': 'merchant_123', - 'filter_custom_attribute_visibility': 'READ', - 'include_custom_attribute_definitions': True, - 'maximum_results_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_merchant_devices_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_merchant_devices_example_call_tool.js deleted file mode 100644 index c05e1cf18..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_merchant_devices_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListMerchantDevices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "device_listing_order": "ASC", - "filter_by_location_id": "loc_123", - "results_page_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_merchant_devices_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_merchant_devices_example_call_tool.py deleted file mode 100644 index a45440f87..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_merchant_devices_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListMerchantDevices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'device_listing_order': 'ASC', 'filter_by_location_id': 'loc_123', 'results_page_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_order_custom_attribute_definitions_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_order_custom_attribute_definitions_example_call_tool.js deleted file mode 100644 index f805f3af2..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_order_custom_attribute_definitions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListOrderCustomAttributeDefinitions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_visibility_filter": "READ", - "maximum_results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_order_custom_attribute_definitions_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_order_custom_attribute_definitions_example_call_tool.py deleted file mode 100644 index 1ffbf2a16..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_order_custom_attribute_definitions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListOrderCustomAttributeDefinitions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_visibility_filter': 'READ', 'maximum_results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_order_custom_attributes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_order_custom_attributes_example_call_tool.js deleted file mode 100644 index 6c03c0512..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_order_custom_attributes_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListOrderCustomAttributes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "target_order_id": "12345", - "custom_attributes_visibility": "ALL", - "include_custom_attribute_definitions": true, - "max_results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_order_custom_attributes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_order_custom_attributes_example_call_tool.py deleted file mode 100644 index 343004408..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_order_custom_attributes_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListOrderCustomAttributes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'target_order_id': '12345', - 'custom_attributes_visibility': 'ALL', - 'include_custom_attribute_definitions': True, - 'max_results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_payment_links_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_payment_links_example_call_tool.js deleted file mode 100644 index 07a18a4d7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_payment_links_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListPaymentLinks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor": "abc123", - "results_per_page_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_payment_links_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_payment_links_example_call_tool.py deleted file mode 100644 index e5d7b792c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_payment_links_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListPaymentLinks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor': 'abc123', 'results_per_page_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_payment_refunds_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_payment_refunds_example_call_tool.js deleted file mode 100644 index 457a3c50e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_payment_refunds_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListPaymentRefunds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_time_rfc3339": "2023-10-01T12:00:00Z", - "limit_results_to_location_id": "loc_123", - "maximum_results_per_page": 50, - "refund_status_filter": "COMPLETED", - "results_sort_order": "DESC", - "sort_results_by_field": "CREATED_AT" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_payment_refunds_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_payment_refunds_example_call_tool.py deleted file mode 100644 index fd37d2867..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_payment_refunds_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListPaymentRefunds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_time_rfc3339': '2023-10-01T12:00:00Z', - 'limit_results_to_location_id': 'loc_123', - 'maximum_results_per_page': 50, - 'refund_status_filter': 'COMPLETED', - 'results_sort_order': 'DESC', - 'sort_results_by_field': 'CREATED_AT' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_payout_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_payout_entries_example_call_tool.js deleted file mode 100644 index b2f7c807b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_payout_entries_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListPayoutEntries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payout_id": "payout_12345", - "maximum_results_per_page": 50, - "payout_entries_sort_order": "ASC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_payout_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_payout_entries_example_call_tool.py deleted file mode 100644 index dc50dc72e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_payout_entries_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListPayoutEntries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payout_id': 'payout_12345', 'maximum_results_per_page': 50, 'payout_entries_sort_order': 'ASC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_payouts_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_payouts_example_call_tool.js deleted file mode 100644 index fcfcfb81d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_payouts_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListPayouts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "begin_timestamp": "2022-01-01T00:00:00Z", - "end_time_rfc3339": "2023-01-01T00:00:00Z", - "filter_payout_status": "PAID", - "location_identifier": "loc_123", - "payout_sort_order": "DESC", - "results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_payouts_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_payouts_example_call_tool.py deleted file mode 100644 index 7e3215015..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_payouts_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListPayouts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'begin_timestamp': '2022-01-01T00:00:00Z', - 'end_time_rfc3339': '2023-01-01T00:00:00Z', - 'filter_payout_status': 'PAID', - 'location_identifier': 'loc_123', - 'payout_sort_order': 'DESC', - 'results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_sales_channels_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_sales_channels_example_call_tool.js deleted file mode 100644 index 942a2fbda..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_sales_channels_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListSalesChannels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_reference_type": "ONLINE_SITE", - "channel_status": "ACTIVE", - "maximum_results_limit": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_sales_channels_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_sales_channels_example_call_tool.py deleted file mode 100644 index 04385ac57..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_sales_channels_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListSalesChannels" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_reference_type': 'ONLINE_SITE', 'channel_status': 'ACTIVE', 'maximum_results_limit': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_scheduled_shifts_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_scheduled_shifts_example_call_tool.js deleted file mode 100644 index 2895aaed7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_scheduled_shifts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListScheduledShifts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"filters\":{\"date\":\"2023-10-01\"},\"pagination\":{\"page\":1,\"limit\":10}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_scheduled_shifts_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_scheduled_shifts_example_call_tool.py deleted file mode 100644 index 5dc827d68..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_scheduled_shifts_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListScheduledShifts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"filters":{"date":"2023-10-01"},"pagination":{"page":1,"limit":10}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_seller_booking_profiles_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_seller_booking_profiles_example_call_tool.js deleted file mode 100644 index b84910569..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_seller_booking_profiles_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListSellerBookingProfiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_results_per_page": 10, - "pagination_cursor": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_seller_booking_profiles_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_seller_booking_profiles_example_call_tool.py deleted file mode 100644 index 9612df4a0..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_seller_booking_profiles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListSellerBookingProfiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_results_per_page': 10, 'pagination_cursor': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_square_online_sites_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_square_online_sites_example_call_tool.js deleted file mode 100644 index 97c07735e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_square_online_sites_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListSquareOnlineSites"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_square_online_sites_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_square_online_sites_example_call_tool.py deleted file mode 100644 index 6b0b904e2..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_square_online_sites_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListSquareOnlineSites" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_subscription_events_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_subscription_events_example_call_tool.js deleted file mode 100644 index 7d4fa8973..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_subscription_events_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListSubscriptionEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_12345", - "event_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_subscription_events_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_subscription_events_example_call_tool.py deleted file mode 100644 index ba70a6baf..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_subscription_events_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListSubscriptionEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_12345', 'event_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_team_member_wages_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_team_member_wages_example_call_tool.js deleted file mode 100644 index 7f03a4d35..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_team_member_wages_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListTeamMemberWages"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_team_member_id": "12345", - "max_results_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_team_member_wages_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_team_member_wages_example_call_tool.py deleted file mode 100644 index 7c2caab57..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_team_member_wages_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListTeamMemberWages" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_team_member_id': '12345', 'max_results_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_user_cards_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_user_cards_example_call_tool.js deleted file mode 100644 index fdf0bf6c3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_user_cards_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListUserCards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_customer_id": "12345", - "include_disabled_cards": true, - "sort_order": "DESC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_user_cards_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_user_cards_example_call_tool.py deleted file mode 100644 index 997550f6a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_user_cards_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListUserCards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_customer_id': '12345', 'include_disabled_cards': True, 'sort_order': 'DESC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_webhook_event_types_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_webhook_event_types_example_call_tool.js deleted file mode 100644 index e01b0eb7c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_webhook_event_types_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListWebhookEventTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "api_version_for_event_types": "v1.0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_webhook_event_types_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_webhook_event_types_example_call_tool.py deleted file mode 100644 index 6be90a2b3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_webhook_event_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListWebhookEventTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'api_version_for_event_types': 'v1.0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_webhook_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_webhook_subscriptions_example_call_tool.js deleted file mode 100644 index 37e256870..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_webhook_subscriptions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListWebhookSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_disabled_subscriptions": true, - "maximum_results_per_page": 50, - "sort_order": "DESC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_webhook_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_webhook_subscriptions_example_call_tool.py deleted file mode 100644 index 8eb9c1de0..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_webhook_subscriptions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListWebhookSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_disabled_subscriptions': True, 'maximum_results_per_page': 50, 'sort_order': 'DESC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_workweek_configs_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/list_workweek_configs_example_call_tool.js deleted file mode 100644 index 3b7baa508..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_workweek_configs_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ListWorkweekConfigs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maximum_results_per_page": 10, - "pagination_cursor": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/list_workweek_configs_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/list_workweek_configs_example_call_tool.py deleted file mode 100644 index a0a42e1eb..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/list_workweek_configs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ListWorkweekConfigs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maximum_results_per_page': 10, 'pagination_cursor': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/obtain_oauth_token_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/obtain_oauth_token_example_call_tool.js deleted file mode 100644 index 2eb3e2d1f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/obtain_oauth_token_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ObtainOauthToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_id": "app_123456", - "oauth_grant_type": "authorization_code", - "application_client_secret": "secret_abc", - "application_redirect_url": "https://example.com/callback", - "authorization_code": "auth_code_xyz", - "expire_token_in_24_hours": true, - "requested_scopes": [ - "MERCHANT_PROFILE_READ", - "PAYMENTS_READ" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/obtain_oauth_token_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/obtain_oauth_token_example_call_tool.py deleted file mode 100644 index 665595eee..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/obtain_oauth_token_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ObtainOauthToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_id': 'app_123456', - 'oauth_grant_type': 'authorization_code', - 'application_client_secret': 'secret_abc', - 'application_redirect_url': 'https://example.com/callback', - 'authorization_code': 'auth_code_xyz', - 'expire_token_in_24_hours': True, - 'requested_scopes': ['MERCHANT_PROFILE_READ', 'PAYMENTS_READ'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/pause_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/pause_subscription_example_call_tool.js deleted file mode 100644 index bc5ca993c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/pause_subscription_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.PauseSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_12345", - "pause_cycle_count": 2, - "pause_reason": "Temporary break" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/pause_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/pause_subscription_example_call_tool.py deleted file mode 100644 index 7108da91d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/pause_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.PauseSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_12345', 'pause_cycle_count': 2, 'pause_reason': 'Temporary break' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/pay_order_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/pay_order_example_call_tool.js deleted file mode 100644 index 0285b2448..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/pay_order_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.PayOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "order_id": "12345", - "unique_transaction_identifier": "txn_67890", - "order_version": 1, - "payment_ids_to_collect": [ - "pay_abc", - "pay_def" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/pay_order_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/pay_order_example_call_tool.py deleted file mode 100644 index ad555f28f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/pay_order_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.PayOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'order_id': '12345', - 'unique_transaction_identifier': 'txn_67890', - 'order_version': 1, - 'payment_ids_to_collect': ['pay_abc', 'pay_def'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/preview_order_pricing_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/preview_order_pricing_example_call_tool.js deleted file mode 100644 index 410495a31..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/preview_order_pricing_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.PreviewOrderPricing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"item_id\":\"12345\",\"quantity\":2}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/preview_order_pricing_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/preview_order_pricing_example_call_tool.py deleted file mode 100644 index fc8427be3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/preview_order_pricing_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.PreviewOrderPricing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"item_id":"12345","quantity":2}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/publish_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/publish_invoice_example_call_tool.js deleted file mode 100644 index a1e477b86..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/publish_invoice_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.PublishInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_id": "inv_12345", - "invoice_version": 1, - "unique_request_identifier": "req_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/publish_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/publish_invoice_example_call_tool.py deleted file mode 100644 index 23b8bbfa8..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/publish_invoice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.PublishInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_id': 'inv_12345', 'invoice_version': 1, 'unique_request_identifier': 'req_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/publish_scheduled_shift_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/publish_scheduled_shift_example_call_tool.js deleted file mode 100644 index 7d0ee5e9a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/publish_scheduled_shift_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.PublishScheduledShift"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "scheduled_shift_id": "shift_12345", - "unique_idempotency_key": "idempotency_67890", - "current_shift_version": 1, - "notification_audience": "ALL" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/publish_scheduled_shift_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/publish_scheduled_shift_example_call_tool.py deleted file mode 100644 index 8ed5625d5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/publish_scheduled_shift_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.PublishScheduledShift" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'scheduled_shift_id': 'shift_12345', - 'unique_idempotency_key': 'idempotency_67890', - 'current_shift_version': 1, - 'notification_audience': 'ALL' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/record_transfer_order_receipt_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/record_transfer_order_receipt_example_call_tool.js deleted file mode 100644 index d988e67e7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/record_transfer_order_receipt_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RecordTransferOrderReceipt"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "transfer_order_id": "TO12345", - "request_body": "{\"items\":[{\"item_id\":\"item1\",\"quantity\":10,\"condition\":\"new\"},{\"item_id\":\"item2\",\"quantity\":5,\"condition\":\"damaged\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/record_transfer_order_receipt_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/record_transfer_order_receipt_example_call_tool.py deleted file mode 100644 index 571c63e77..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/record_transfer_order_receipt_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RecordTransferOrderReceipt" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'transfer_order_id': 'TO12345', - 'request_body': '{"items":[{"item_id":"item1","quantity":10,"condition":"new"},{"item_id":"item2","quantity":5,"condition":"damaged"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/redeem_loyalty_reward_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/redeem_loyalty_reward_example_call_tool.js deleted file mode 100644 index c58457bed..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/redeem_loyalty_reward_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RedeemLoyaltyReward"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "idempotency_key": "unique_request_12345", - "location_id": "loc_001", - "loyalty_reward_id": "reward_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/redeem_loyalty_reward_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/redeem_loyalty_reward_example_call_tool.py deleted file mode 100644 index 374713dd8..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/redeem_loyalty_reward_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RedeemLoyaltyReward" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'idempotency_key': 'unique_request_12345', - 'location_id': 'loc_001', - 'loyalty_reward_id': 'reward_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/refund_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/refund_payment_example_call_tool.js deleted file mode 100644 index 8a8e61dc8..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/refund_payment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RefundPayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"payment_id\":\"12345\",\"amount\":50.00,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/refund_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/refund_payment_example_call_tool.py deleted file mode 100644 index 4d6f8a3aa..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/refund_payment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RefundPayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"payment_id":"12345","amount":50.00,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/remove_customer_group_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/remove_customer_group_example_call_tool.js deleted file mode 100644 index deeca33cd..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/remove_customer_group_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RemoveCustomerGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cust123", - "group_id": "group456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/remove_customer_group_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/remove_customer_group_example_call_tool.py deleted file mode 100644 index 902c882f8..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/remove_customer_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RemoveCustomerGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cust123', 'group_id': 'group456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/remove_dispute_evidence_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/remove_dispute_evidence_example_call_tool.js deleted file mode 100644 index ef36f8517..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/remove_dispute_evidence_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RemoveDisputeEvidence"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dispute_id": "d12345", - "evidence_id": "e67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/remove_dispute_evidence_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/remove_dispute_evidence_example_call_tool.py deleted file mode 100644 index 61b2486e3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/remove_dispute_evidence_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RemoveDisputeEvidence" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dispute_id': 'd12345', 'evidence_id': 'e67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/remove_invoice_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/remove_invoice_attachment_example_call_tool.js deleted file mode 100644 index 7cebd9abf..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/remove_invoice_attachment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RemoveInvoiceAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "attachment_id": "att_12345", - "invoice_identifier": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/remove_invoice_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/remove_invoice_attachment_example_call_tool.py deleted file mode 100644 index aab5d32f1..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/remove_invoice_attachment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RemoveInvoiceAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'attachment_id': 'att_12345', 'invoice_identifier': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/remove_location_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/remove_location_custom_attribute_example_call_tool.js deleted file mode 100644 index e93c68ac7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/remove_location_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RemoveLocationCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "loyalty_points", - "location_id": "location_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/remove_location_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/remove_location_custom_attribute_example_call_tool.py deleted file mode 100644 index b46b68003..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/remove_location_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RemoveLocationCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'loyalty_points', 'location_id': 'location_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/remove_merchant_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/remove_merchant_attribute_example_call_tool.js deleted file mode 100644 index b838a6c65..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/remove_merchant_attribute_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RemoveMerchantAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "custom_attr_123", - "merchant_id": "merchant_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/remove_merchant_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/remove_merchant_attribute_example_call_tool.py deleted file mode 100644 index 0d1b306fc..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/remove_merchant_attribute_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RemoveMerchantAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'custom_attr_123', 'merchant_id': 'merchant_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/resume_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/resume_subscription_example_call_tool.js deleted file mode 100644 index ece959309..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/resume_subscription_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.ResumeSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_12345", - "resume_change_timing": "IMMEDIATE" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/resume_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/resume_subscription_example_call_tool.py deleted file mode 100644 index 1d1627f09..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/resume_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.ResumeSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_12345', 'resume_change_timing': 'IMMEDIATE' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_custom_attribute_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_custom_attribute_definition_example_call_tool.js deleted file mode 100644 index 7a87e22e2..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_custom_attribute_definition_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveBookingCustomAttributeDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "booking_special_requests", - "current_version_of_custom_attribute_definition": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_custom_attribute_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_custom_attribute_definition_example_call_tool.py deleted file mode 100644 index eb6160f54..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_custom_attribute_definition_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveBookingCustomAttributeDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'booking_special_requests', - 'current_version_of_custom_attribute_definition': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_custom_attribute_example_call_tool.js deleted file mode 100644 index 49c51d312..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveBookingCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "booking_id": "12345", - "custom_attribute_key": "special_request", - "custom_attribute_version": 1, - "include_custom_attribute_definition": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_custom_attribute_example_call_tool.py deleted file mode 100644 index 19492b63c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveBookingCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'booking_id': '12345', - 'custom_attribute_key': 'special_request', - 'custom_attribute_version': 1, - 'include_custom_attribute_definition': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_example_call_tool.js deleted file mode 100644 index 0f15af63a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveBooking"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "booking_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_example_call_tool.py deleted file mode 100644 index 5b5914529..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveBooking" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'booking_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_profile_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_profile_example_call_tool.js deleted file mode 100644 index 686925cea..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_profile_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveBookingProfile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_profile_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_profile_example_call_tool.py deleted file mode 100644 index 71f14e0c2..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_booking_profile_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveBookingProfile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_bookings_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_bookings_example_call_tool.js deleted file mode 100644 index 0d4bf83b4..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_bookings_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveBookings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id_for_bookings": "12345", - "earliest_start_time": "2023-10-01T00:00:00Z", - "max_results_per_page": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_bookings_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_bookings_example_call_tool.py deleted file mode 100644 index 786b86a5a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_bookings_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveBookings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id_for_bookings': '12345', - 'earliest_start_time': '2023-10-01T00:00:00Z', - 'max_results_per_page': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_card_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_card_details_example_call_tool.js deleted file mode 100644 index 6cf7b25d8..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_card_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveCardDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_card_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_card_details_example_call_tool.py deleted file mode 100644 index 18dcb6797..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_card_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveCardDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_cash_drawer_shift_summary_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_cash_drawer_shift_summary_example_call_tool.js deleted file mode 100644 index 78957271a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_cash_drawer_shift_summary_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveCashDrawerShiftSummary"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_identifier": "loc_123", - "shift_identifier": "shift_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_cash_drawer_shift_summary_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_cash_drawer_shift_summary_example_call_tool.py deleted file mode 100644 index 0dca03d5f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_cash_drawer_shift_summary_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveCashDrawerShiftSummary" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_identifier': 'loc_123', 'shift_identifier': 'shift_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_catalog_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_catalog_objects_example_call_tool.js deleted file mode 100644 index 1eda350ea..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_catalog_objects_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveCatalogObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "catalog_object_ids": [ - "id1", - "id2", - "id3" - ], - "catalog_version": 1, - "include_category_path_to_root": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_catalog_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_catalog_objects_example_call_tool.py deleted file mode 100644 index da8dea3f5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_catalog_objects_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveCatalogObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'catalog_object_ids': ['id1', 'id2', 'id3'], - 'catalog_version': 1, - 'include_category_path_to_root': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_channel_info_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_channel_info_example_call_tool.js deleted file mode 100644 index 30ab76534..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_channel_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveChannelInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_channel_info_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_channel_info_example_call_tool.py deleted file mode 100644 index 0a7786eec..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_channel_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveChannelInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_customer_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_customer_details_example_call_tool.js deleted file mode 100644 index 9997b2321..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_customer_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveCustomerDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_customer_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_customer_details_example_call_tool.py deleted file mode 100644 index 4134119aa..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_customer_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveCustomerDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_device_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_device_by_id_example_call_tool.js deleted file mode 100644 index 5339625ef..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_device_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveDeviceById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "device_identifier": "device_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_device_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_device_by_id_example_call_tool.py deleted file mode 100644 index 6b4504dc4..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_device_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveDeviceById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'device_identifier': 'device_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_device_code_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_device_code_example_call_tool.js deleted file mode 100644 index 226e13883..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_device_code_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveDeviceCode"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "device_code_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_device_code_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_device_code_example_call_tool.py deleted file mode 100644 index 39178d484..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_device_code_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveDeviceCode" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'device_code_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_dispute_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_dispute_details_example_call_tool.js deleted file mode 100644 index 4ad808482..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_dispute_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveDisputeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dispute_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_dispute_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_dispute_details_example_call_tool.py deleted file mode 100644 index 0290722f7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_dispute_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveDisputeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dispute_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_example_call_tool.js deleted file mode 100644 index 9d1926cf4..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveGiftCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gift_card_account_number": "1234567890123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_example_call_tool.py deleted file mode 100644 index 7488a66fc..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveGiftCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gift_card_account_number': '1234567890123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_from_token_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_from_token_example_call_tool.js deleted file mode 100644 index bec1c657c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_from_token_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveGiftCardFromToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "secure_payment_token": "abc123securetoken" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_from_token_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_from_token_example_call_tool.py deleted file mode 100644 index 375a7bd67..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_from_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveGiftCardFromToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'secure_payment_token': 'abc123securetoken' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_squareup_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_squareup_example_call_tool.js deleted file mode 100644 index 2febcc81e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_squareup_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveGiftCardSquareup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "gift_card_id": "GC123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_squareup_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_squareup_example_call_tool.py deleted file mode 100644 index 717a977a6..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_gift_card_squareup_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveGiftCardSquareup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'gift_card_id': 'GC123456789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_adjustment_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_adjustment_example_call_tool.js deleted file mode 100644 index f1cdf41a9..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_adjustment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveInventoryAdjustment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "inventory_adjustment_id": "adj_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_adjustment_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_adjustment_example_call_tool.py deleted file mode 100644 index 825bc5709..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_adjustment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveInventoryAdjustment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'inventory_adjustment_id': 'adj_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_counts_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_counts_example_call_tool.js deleted file mode 100644 index cf70595c9..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_counts_example_call_tool.js +++ /dev/null @@ -1,43 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveInventoryCounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_catalog_object_ids": [ - "catalog_id_1", - "catalog_id_2" - ], - "filter_by_location_ids": [ - "location_id_1" - ], - "filter_by_updated_after_timestamp": "2023-10-01T00:00:00Z", - "inventory_state_filters": [ - "AVAILABLE", - "RESERVED" - ], - "record_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_counts_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_counts_example_call_tool.py deleted file mode 100644 index 2316edd0f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_counts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveInventoryCounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_catalog_object_ids': ['catalog_id_1', 'catalog_id_2'], - 'filter_by_location_ids': ['location_id_1'], - 'filter_by_updated_after_timestamp': '2023-10-01T00:00:00Z', - 'inventory_state_filters': ['AVAILABLE', 'RESERVED'], - 'record_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_transfer_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_transfer_example_call_tool.js deleted file mode 100644 index 595608a4d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_transfer_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveInventoryTransfer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "inventory_transfer_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_transfer_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_transfer_example_call_tool.py deleted file mode 100644 index 091c0d330..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_inventory_transfer_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveInventoryTransfer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'inventory_transfer_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_invoice_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_invoice_by_id_example_call_tool.js deleted file mode 100644 index c04a0b0af..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_invoice_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveInvoiceById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_id": "INV123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_invoice_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_invoice_by_id_example_call_tool.py deleted file mode 100644 index 8bb836b26..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_invoice_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveInvoiceById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_id': 'INV123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_job_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_job_details_example_call_tool.js deleted file mode 100644 index 2fac2614b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_job_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveJobDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_identifier": "job_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_job_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_job_details_example_call_tool.py deleted file mode 100644 index 6cd8ff1ea..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_job_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveJobDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_identifier': 'job_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_custom_attribute_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_custom_attribute_definition_example_call_tool.js deleted file mode 100644 index 79dfd91ff..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_custom_attribute_definition_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveLocationCustomAttributeDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "location.custom.attribute.1", - "current_custom_attribute_version": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_custom_attribute_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_custom_attribute_definition_example_call_tool.py deleted file mode 100644 index c6b2cac7a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_custom_attribute_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveLocationCustomAttributeDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'location.custom.attribute.1', 'current_custom_attribute_version': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_details_example_call_tool.js deleted file mode 100644 index b6e7c77a7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveLocationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_id": "main" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_details_example_call_tool.py deleted file mode 100644 index ee98d60be..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveLocationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_id': 'main' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_settings_example_call_tool.js deleted file mode 100644 index 58734c199..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_settings_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveLocationSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_id": "loc_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_settings_example_call_tool.py deleted file mode 100644 index 77cc77c67..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_location_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveLocationSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_id': 'loc_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_loyalty_account_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_loyalty_account_example_call_tool.js deleted file mode 100644 index 9b9fa3088..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_loyalty_account_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveLoyaltyAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "loyalty_account_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_loyalty_account_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_loyalty_account_example_call_tool.py deleted file mode 100644 index f62983154..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_loyalty_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveLoyaltyAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'loyalty_account_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_loyalty_promotion_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_loyalty_promotion_example_call_tool.js deleted file mode 100644 index e7f1a9520..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_loyalty_promotion_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveLoyaltyPromotion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "loyalty_program_id": "12345", - "promotion_id": "promo67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_loyalty_promotion_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_loyalty_promotion_example_call_tool.py deleted file mode 100644 index f4fe7a3b5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_loyalty_promotion_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveLoyaltyPromotion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'loyalty_program_id': '12345', 'promotion_id': 'promo67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_merchant_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_merchant_custom_attribute_example_call_tool.js deleted file mode 100644 index 278c21d7d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_merchant_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveMerchantCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "loyalty_points", - "merchant_identifier": "merchant_12345", - "include_custom_attribute_definition": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_merchant_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_merchant_custom_attribute_example_call_tool.py deleted file mode 100644 index aaea416c5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_merchant_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveMerchantCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'loyalty_points', - 'merchant_identifier': 'merchant_12345', - 'include_custom_attribute_definition': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_merchant_info_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_merchant_info_example_call_tool.js deleted file mode 100644 index b0b1b3911..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_merchant_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveMerchantInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "merchant_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_merchant_info_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_merchant_info_example_call_tool.py deleted file mode 100644 index 33dce0ab6..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_merchant_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveMerchantInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'merchant_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_multiple_orders_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_multiple_orders_example_call_tool.js deleted file mode 100644 index 5c1342e83..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_multiple_orders_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveMultipleOrders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "order_ids_list": [ - "order_123", - "order_456", - "order_789" - ], - "location_id": "location_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_multiple_orders_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_multiple_orders_example_call_tool.py deleted file mode 100644 index ff1f65902..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_multiple_orders_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveMultipleOrders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'order_ids_list': ['order_123', 'order_456', 'order_789'], 'location_id': 'location_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_online_site_snippet_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_online_site_snippet_example_call_tool.js deleted file mode 100644 index efa6f1488..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_online_site_snippet_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveOnlineSiteSnippet"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "site_identifier": "site_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_online_site_snippet_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_online_site_snippet_example_call_tool.py deleted file mode 100644 index cd9c591dc..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_online_site_snippet_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveOnlineSiteSnippet" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'site_identifier': 'site_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_by_id_example_call_tool.js deleted file mode 100644 index df9754d68..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveOrderById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "order_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_by_id_example_call_tool.py deleted file mode 100644 index 55cc9bd7a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveOrderById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'order_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_custom_attribute_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_custom_attribute_definition_example_call_tool.js deleted file mode 100644 index 959ce1984..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_custom_attribute_definition_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveOrderCustomAttributeDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "order_color", - "current_custom_attribute_version": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_custom_attribute_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_custom_attribute_definition_example_call_tool.py deleted file mode 100644 index 04d4712a3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_custom_attribute_definition_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveOrderCustomAttributeDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'order_color', 'current_custom_attribute_version': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_custom_attribute_example_call_tool.js deleted file mode 100644 index e62842930..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveOrderCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "color", - "order_id": "12345", - "include_custom_attribute_definition": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_custom_attribute_example_call_tool.py deleted file mode 100644 index e64baa276..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_order_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveOrderCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'color', 'order_id': '12345', 'include_custom_attribute_definition': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_payment_link_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_payment_link_example_call_tool.js deleted file mode 100644 index 33b60efc5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_payment_link_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrievePaymentLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_link_id": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_payment_link_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_payment_link_example_call_tool.py deleted file mode 100644 index 86a5b1898..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_payment_link_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrievePaymentLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_link_id': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_payments_list_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_payments_list_example_call_tool.js deleted file mode 100644 index 2a4744056..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_payments_list_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrievePaymentsList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_last_four_digits": "1234", - "end_time": "2023-10-01T12:00:00Z", - "is_offline_payment": true, - "max_results_per_page": 50, - "payment_card_brand": "VISA", - "results_sort_order": "DESC", - "start_time_range": "2023-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_payments_list_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_payments_list_example_call_tool.py deleted file mode 100644 index e7513e0d5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_payments_list_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrievePaymentsList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_last_four_digits': '1234', - 'end_time': '2023-10-01T12:00:00Z', - 'is_offline_payment': True, - 'max_results_per_page': 50, - 'payment_card_brand': 'VISA', - 'results_sort_order': 'DESC', - 'start_time_range': '2023-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_refund_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_refund_details_example_call_tool.js deleted file mode 100644 index 5b92da0de..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_refund_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveRefundDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "refund_unique_id": "refund_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_refund_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_refund_details_example_call_tool.py deleted file mode 100644 index ba8930939..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_refund_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveRefundDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'refund_unique_id': 'refund_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_sales_channels_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_sales_channels_example_call_tool.js deleted file mode 100644 index 3af59a916..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_sales_channels_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveSalesChannels"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "channel_identifiers": [ - "channel_1", - "channel_2", - "channel_3" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_sales_channels_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_sales_channels_example_call_tool.py deleted file mode 100644 index 9a085439d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_sales_channels_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveSalesChannels" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'channel_identifiers': ['channel_1', 'channel_2', 'channel_3'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_scheduled_shift_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_scheduled_shift_example_call_tool.js deleted file mode 100644 index 72ef89281..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_scheduled_shift_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveScheduledShift"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "scheduled_shift_id": "shift_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_scheduled_shift_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_scheduled_shift_example_call_tool.py deleted file mode 100644 index a8a373dc9..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_scheduled_shift_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveScheduledShift" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'scheduled_shift_id': 'shift_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_seller_location_booking_profile_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_seller_location_booking_profile_example_call_tool.js deleted file mode 100644 index 655d295dc..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_seller_location_booking_profile_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveSellerLocationBookingProfile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_id": "loc_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_seller_location_booking_profile_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_seller_location_booking_profile_example_call_tool.py deleted file mode 100644 index 77ffbefb6..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_seller_location_booking_profile_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveSellerLocationBookingProfile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_id': 'loc_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_square_merchant_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_square_merchant_settings_example_call_tool.js deleted file mode 100644 index 2e89b68fe..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_square_merchant_settings_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveSquareMerchantSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_square_merchant_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_square_merchant_settings_example_call_tool.py deleted file mode 100644 index c9b06e72c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_square_merchant_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveSquareMerchantSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_subscription_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_subscription_details_example_call_tool.js deleted file mode 100644 index 152326eeb..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_subscription_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveSubscriptionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_12345", - "include_related_info": "actions" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_subscription_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_subscription_details_example_call_tool.py deleted file mode 100644 index 1244912c1..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_subscription_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveSubscriptionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_12345', 'include_related_info': 'actions' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_team_booking_profiles_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_team_booking_profiles_example_call_tool.js deleted file mode 100644 index 90a8525ce..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_team_booking_profiles_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveTeamBookingProfiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_member_ids": [ - "123", - "456", - "789" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_team_booking_profiles_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_team_booking_profiles_example_call_tool.py deleted file mode 100644 index f661e1faf..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_team_booking_profiles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveTeamBookingProfiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_member_ids': ['123', '456', '789'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_team_member_wage_setting_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_team_member_wage_setting_example_call_tool.js deleted file mode 100644 index 65b0b05e4..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_team_member_wage_setting_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveTeamMemberWageSetting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_member_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_team_member_wage_setting_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_team_member_wage_setting_example_call_tool.py deleted file mode 100644 index 172ccbe25..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_team_member_wage_setting_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveTeamMemberWageSetting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_member_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_terminal_action_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_terminal_action_example_call_tool.js deleted file mode 100644 index f2219f5c7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_terminal_action_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveTerminalAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "terminal_action_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_terminal_action_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_terminal_action_example_call_tool.py deleted file mode 100644 index ac22fe398..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_terminal_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveTerminalAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'terminal_action_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_terminal_checkout_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_terminal_checkout_example_call_tool.js deleted file mode 100644 index 99802bb65..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_terminal_checkout_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveTerminalCheckout"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checkout_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_terminal_checkout_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_terminal_checkout_example_call_tool.py deleted file mode 100644 index bfca3adbb..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_terminal_checkout_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveTerminalCheckout" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checkout_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_token_status_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_token_status_example_call_tool.js deleted file mode 100644 index 347ca4547..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_token_status_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveTokenStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_token_status_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_token_status_example_call_tool.py deleted file mode 100644 index 09173e47d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_token_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveTokenStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_transfer_order_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_transfer_order_details_example_call_tool.js deleted file mode 100644 index a930f4671..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_transfer_order_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveTransferOrderDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transfer_order_id": "TO123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_transfer_order_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_transfer_order_details_example_call_tool.py deleted file mode 100644 index 085e1f37e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_transfer_order_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveTransferOrderDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transfer_order_id': 'TO123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_vendor_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_vendor_details_example_call_tool.js deleted file mode 100644 index edfe0eb52..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_vendor_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveVendorDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "vendor_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_vendor_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_vendor_details_example_call_tool.py deleted file mode 100644 index 8c8c7e5a1..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_vendor_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveVendorDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'vendor_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_vendors_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_vendors_example_call_tool.js deleted file mode 100644 index cfe055c69..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_vendors_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveVendors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "vendor_ids": [ - "vendor123", - "vendor456" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_vendors_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_vendors_example_call_tool.py deleted file mode 100644 index 967f4abe1..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_vendors_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveVendors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'vendor_ids': ['vendor123', 'vendor456'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/retrieve_webhook_subscription_example_call_tool.js deleted file mode 100644 index e69745e06..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RetrieveWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_subscription_id": "sub_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/retrieve_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/retrieve_webhook_subscription_example_call_tool.py deleted file mode 100644 index 59114a7ab..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/retrieve_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RetrieveWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_subscription_id': 'sub_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/revoke_oauth_access_token_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/revoke_oauth_access_token_example_call_tool.js deleted file mode 100644 index 642fb702d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/revoke_oauth_access_token_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.RevokeOauthAccessToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_client_id": "abc123", - "merchant_access_token": "token_xyz", - "terminate_single_access_token": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/revoke_oauth_access_token_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/revoke_oauth_access_token_example_call_tool.py deleted file mode 100644 index 861869ae0..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/revoke_oauth_access_token_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.RevokeOauthAccessToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_client_id': 'abc123', - 'merchant_access_token': 'token_xyz', - 'terminate_single_access_token': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_booking_availability_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_booking_availability_example_call_tool.js deleted file mode 100644 index 1fb9df98c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_booking_availability_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchBookingAvailability"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"date\":\"2023-10-15\",\"service\":\"consultation\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_booking_availability_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_booking_availability_example_call_tool.py deleted file mode 100644 index fe0eb9dbb..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_booking_availability_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchBookingAvailability" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"date":"2023-10-15","service":"consultation"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_catalog_items_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_catalog_items_example_call_tool.js deleted file mode 100644 index 1d70e7f07..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_catalog_items_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchCatalogItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"search_filters\":{\"category\":\"electronics\",\"price_range\":\"100-500\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_catalog_items_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_catalog_items_example_call_tool.py deleted file mode 100644 index 3163695e6..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_catalog_items_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchCatalogItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"search_filters":{"category":"electronics","price_range":"100-500"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_catalog_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_catalog_objects_example_call_tool.js deleted file mode 100644 index 3de651bfb..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_catalog_objects_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchCatalogObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"query\":\"example query\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_catalog_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_catalog_objects_example_call_tool.py deleted file mode 100644 index ea8f08313..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_catalog_objects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchCatalogObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"query":"example query"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_invoices_example_call_tool.js deleted file mode 100644 index a54a29718..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_invoices_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchInvoices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_id": [ - "loc123" - ], - "customer_id": [ - "cust456" - ], - "maximum_invoice_count": 50, - "sort_by_field": "INVOICE_SORT_AMOUNT", - "sort_order": "DESC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_invoices_example_call_tool.py deleted file mode 100644 index 7fc036e3a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_invoices_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchInvoices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_id': ['loc123'], - 'customer_id': ['cust456'], - 'maximum_invoice_count': 50, - 'sort_by_field': 'INVOICE_SORT_AMOUNT', - 'sort_order': 'DESC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_accounts_example_call_tool.js deleted file mode 100644 index cd054ef40..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_accounts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchLoyaltyAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"phone_number\":\"1234567890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_accounts_example_call_tool.py deleted file mode 100644 index 71ce2589a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_accounts_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchLoyaltyAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"phone_number":"1234567890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_events_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_events_example_call_tool.js deleted file mode 100644 index 1ed40247b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_events_example_call_tool.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchLoyaltyEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_time": "2023-10-31T23:59:59Z", - "location_ids_for_events_query": [ - "loc_123", - "loc_456" - ], - "loyalty_account_id": "acc_789", - "loyalty_event_types": [ - "points_earned", - "points_redeemed" - ], - "max_results_count": 10, - "order_id_filter": "order_001", - "pagination_cursor": "cursor_abc", - "start_datetime": "2023-10-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_events_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_events_example_call_tool.py deleted file mode 100644 index e8d1f27ff..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_events_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchLoyaltyEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_time': '2023-10-31T23:59:59Z', - 'location_ids_for_events_query': ['loc_123', 'loc_456'], - 'loyalty_account_id': 'acc_789', - 'loyalty_event_types': ['points_earned', 'points_redeemed'], - 'max_results_count': 10, - 'order_id_filter': 'order_001', - 'pagination_cursor': 'cursor_abc', - 'start_datetime': '2023-10-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_rewards_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_rewards_example_call_tool.js deleted file mode 100644 index 8afa88d98..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_rewards_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchLoyaltyRewards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "loyalty_account_id": "12345", - "maximum_results": 10, - "reward_status": "ISSUED" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_rewards_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_rewards_example_call_tool.py deleted file mode 100644 index 1c9f81f54..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_loyalty_rewards_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchLoyaltyRewards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'loyalty_account_id': '12345', 'maximum_results': 10, 'reward_status': 'ISSUED' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_square_customers_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_square_customers_example_call_tool.js deleted file mode 100644 index 9469c0141..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_square_customers_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchSquareCustomers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"query\":\"John Doe\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_square_customers_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_square_customers_example_call_tool.py deleted file mode 100644 index 829113831..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_square_customers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchSquareCustomers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"query":"John Doe"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_square_events_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_square_events_example_call_tool.js deleted file mode 100644 index d2b8803da..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_square_events_example_call_tool.js +++ /dev/null @@ -1,47 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchSquareEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "end_time_range": "2023-10-31T23:59:59Z", - "filter_by_location_ids": [ - "loc_123", - "loc_456" - ], - "filter_event_types": [ - "payment", - "refund" - ], - "maximum_events_per_page": 50, - "merchant_ids_filter": [ - "merch_789" - ], - "pagination_cursor": "cursor_abc", - "sort_key_for_event_search": "DEFAULT", - "sort_order": "ASC", - "time_range_start": "2023-10-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_square_events_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_square_events_example_call_tool.py deleted file mode 100644 index 0bd14e3b9..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_square_events_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchSquareEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'end_time_range': '2023-10-31T23:59:59Z', - 'filter_by_location_ids': ['loc_123', 'loc_456'], - 'filter_event_types': ['payment', 'refund'], - 'maximum_events_per_page': 50, - 'merchant_ids_filter': ['merch_789'], - 'pagination_cursor': 'cursor_abc', - 'sort_key_for_event_search': 'DEFAULT', - 'sort_order': 'ASC', - 'time_range_start': '2023-10-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_square_orders_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_square_orders_example_call_tool.js deleted file mode 100644 index 9fac8d193..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_square_orders_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchSquareOrders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"location_id\":\"12345\",\"status\":\"completed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_square_orders_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_square_orders_example_call_tool.py deleted file mode 100644 index 6621911a4..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_square_orders_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchSquareOrders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"location_id":"12345","status":"completed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_subscriptions_example_call_tool.js deleted file mode 100644 index dc1a3ab9c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_subscriptions_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_ids_to_filter": [ - "cust123", - "cust456" - ], - "filter_by_location_ids": [ - "loc789" - ], - "max_subscriptions_returned": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_subscriptions_example_call_tool.py deleted file mode 100644 index 2f6a351bc..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_subscriptions_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_ids_to_filter': ['cust123', 'cust456'], - 'filter_by_location_ids': ['loc789'], - 'max_subscriptions_returned': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_team_members_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_team_members_example_call_tool.js deleted file mode 100644 index 78041ed22..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_team_members_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchTeamMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_location_ids": [ - "loc123", - "loc456" - ], - "maximum_team_members_per_page": 50, - "return_account_owner_only": false, - "team_member_status": "ACTIVE" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_team_members_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_team_members_example_call_tool.py deleted file mode 100644 index f16b343fc..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_team_members_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchTeamMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_location_ids': ['loc123', 'loc456'], - 'maximum_team_members_per_page': 50, - 'return_account_owner_only': False, - 'team_member_status': 'ACTIVE' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_terminal_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_terminal_actions_example_call_tool.js deleted file mode 100644 index 420df55f0..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_terminal_actions_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchTerminalActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "device_id_filter": "12345", - "end_time_rfc3339": "2023-10-01T12:00:00Z", - "filter_terminal_action_status": "COMPLETED", - "result_limit": 10, - "result_sort_order": "DESC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_terminal_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_terminal_actions_example_call_tool.py deleted file mode 100644 index 697b6604b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_terminal_actions_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchTerminalActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'device_id_filter': '12345', - 'end_time_rfc3339': '2023-10-01T12:00:00Z', - 'filter_terminal_action_status': 'COMPLETED', - 'result_limit': 10, - 'result_sort_order': 'DESC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_terminal_checkouts_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_terminal_checkouts_example_call_tool.js deleted file mode 100644 index c462d67fe..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_terminal_checkouts_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchTerminalCheckouts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checkout_status_filter": "COMPLETED", - "result_limit": 10, - "result_sort_order": "DESC", - "start_time_range": "2023-10-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_terminal_checkouts_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_terminal_checkouts_example_call_tool.py deleted file mode 100644 index 76ecb5560..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_terminal_checkouts_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchTerminalCheckouts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checkout_status_filter': 'COMPLETED', - 'result_limit': 10, - 'result_sort_order': 'DESC', - 'start_time_range': '2023-10-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_terminal_refunds_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_terminal_refunds_example_call_tool.js deleted file mode 100644 index 08fe08813..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_terminal_refunds_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchTerminalRefunds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "device_id_filter": "12345", - "end_time_range": "2023-10-31T23:59:59Z", - "filter_terminal_refund_status": "COMPLETED", - "result_limit": 10, - "sort_order": "DESC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_terminal_refunds_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_terminal_refunds_example_call_tool.py deleted file mode 100644 index bf11b01ae..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_terminal_refunds_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchTerminalRefunds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'device_id_filter': '12345', - 'end_time_range': '2023-10-31T23:59:59Z', - 'filter_terminal_refund_status': 'COMPLETED', - 'result_limit': 10, - 'sort_order': 'DESC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_timecards_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_timecards_example_call_tool.js deleted file mode 100644 index 5bf4eb0d5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_timecards_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchTimecards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"location_ids\":[\"loc123\"],\"team_member_ids\":[\"tm456\"],\"status\":\"approved\",\"start_time\":\"2023-01-01T00:00:00Z\",\"end_time\":\"2023-01-31T23:59:59Z\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_timecards_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_timecards_example_call_tool.py deleted file mode 100644 index 2bc733f60..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_timecards_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchTimecards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"location_ids":["loc123"],"team_member_ids":["tm456"],"status":"approved","start_time":"2023-01-01T00:00:00Z","end_time":"2023-01-31T23:59:59Z"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_transfer_orders_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_transfer_orders_example_call_tool.js deleted file mode 100644 index 546af3c84..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_transfer_orders_example_call_tool.js +++ /dev/null @@ -1,41 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchTransferOrders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "destination_location_ids": [ - "loc123", - "loc456" - ], - "filter_by_order_statuses": [ - "PENDING", - "COMPLETED" - ], - "maximum_results": 50, - "sort_by_field": "CREATED_AT", - "sort_order": "DESC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_transfer_orders_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_transfer_orders_example_call_tool.py deleted file mode 100644 index e50d39433..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_transfer_orders_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchTransferOrders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'destination_location_ids': ['loc123', 'loc456'], - 'filter_by_order_statuses': ['PENDING', 'COMPLETED'], - 'maximum_results': 50, - 'sort_by_field': 'CREATED_AT', - 'sort_order': 'DESC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_vendors_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/search_vendors_example_call_tool.js deleted file mode 100644 index fdbe50e83..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_vendors_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SearchVendors"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor": "abc123", - "sort_field_for_vendors": "NAME", - "sort_order": "ASC", - "vendor_names_to_filter": [ - "VendorA", - "VendorB" - ], - "vendor_statuses": [ - "ACTIVE" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/search_vendors_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/search_vendors_example_call_tool.py deleted file mode 100644 index 88237648c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/search_vendors_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SearchVendors" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor': 'abc123', - 'sort_field_for_vendors': 'NAME', - 'sort_order': 'ASC', - 'vendor_names_to_filter': ['VendorA', 'VendorB'], - 'vendor_statuses': ['ACTIVE'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/set_booking_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/set_booking_custom_attribute_example_call_tool.js deleted file mode 100644 index ed8fa67cc..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/set_booking_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SetBookingCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "booking_id": "12345", - "custom_attribute_key": "customer_note", - "request_body": "{\"note\":\"This is a sample note.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/set_booking_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/set_booking_custom_attribute_example_call_tool.py deleted file mode 100644 index fbbd41a22..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/set_booking_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SetBookingCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'booking_id': '12345', - 'custom_attribute_key': 'customer_note', - 'request_body': '{"note":"This is a sample note."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/start_transfer_order_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/start_transfer_order_example_call_tool.js deleted file mode 100644 index cb58ba497..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/start_transfer_order_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.StartTransferOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transfer_order_id": "TO12345", - "unique_request_identifier": "req-67890", - "optimistic_concurrency_version": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/start_transfer_order_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/start_transfer_order_example_call_tool.py deleted file mode 100644 index 669db7b07..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/start_transfer_order_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.StartTransferOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transfer_order_id': 'TO12345', - 'unique_request_identifier': 'req-67890', - 'optimistic_concurrency_version': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/submit_evidence_to_bank_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/submit_evidence_to_bank_example_call_tool.js deleted file mode 100644 index 9528bddd6..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/submit_evidence_to_bank_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SubmitEvidenceToBank"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dispute_identifier": "DISPUTE12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/submit_evidence_to_bank_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/submit_evidence_to_bank_example_call_tool.py deleted file mode 100644 index cf7c34c4e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/submit_evidence_to_bank_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SubmitEvidenceToBank" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dispute_identifier': 'DISPUTE12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/swap_subscription_plan_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/swap_subscription_plan_example_call_tool.js deleted file mode 100644 index 64c738cac..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/swap_subscription_plan_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.SwapSubscriptionPlan"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "subscription_id": "sub_12345", - "request_body": "{\"plan\":\"premium\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/swap_subscription_plan_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/swap_subscription_plan_example_call_tool.py deleted file mode 100644 index 181210580..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/swap_subscription_plan_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.SwapSubscriptionPlan" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'subscription_id': 'sub_12345', 'request_body': '{"plan":"premium"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/test_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/test_webhook_subscription_example_call_tool.js deleted file mode 100644 index f70320a99..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/test_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.TestWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_subscription_id": "sub_12345", - "test_event_type": "user.created" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/test_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/test_webhook_subscription_example_call_tool.py deleted file mode 100644 index 6d627885d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/test_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.TestWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_subscription_id': 'sub_12345', 'test_event_type': 'user.created' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/unlink_customer_from_gift_card_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/unlink_customer_from_gift_card_example_call_tool.js deleted file mode 100644 index cd1a21a75..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/unlink_customer_from_gift_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UnlinkCustomerFromGiftCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id_to_unlink": "cust_12345", - "gift_card_id_to_unlink": "gc_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/unlink_customer_from_gift_card_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/unlink_customer_from_gift_card_example_call_tool.py deleted file mode 100644 index e63634c2f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/unlink_customer_from_gift_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UnlinkCustomerFromGiftCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id_to_unlink': 'cust_12345', 'gift_card_id_to_unlink': 'gc_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_booking_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_booking_custom_attribute_example_call_tool.js deleted file mode 100644 index 293df88bc..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_booking_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateBookingCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "booking:custom_attr_1", - "custom_attribute_definition_name": "Booking Type", - "custom_attribute_description": "Type of booking for the appointment", - "visibility_level": "VISIBILITY_READ_WRITE_VALUES" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_booking_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_booking_custom_attribute_example_call_tool.py deleted file mode 100644 index 661e54cd3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_booking_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateBookingCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'booking:custom_attr_1', - 'custom_attribute_definition_name': 'Booking Type', - 'custom_attribute_description': 'Type of booking for the appointment', - 'visibility_level': 'VISIBILITY_READ_WRITE_VALUES' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_booking_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_booking_example_call_tool.js deleted file mode 100644 index 0060aedba..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_booking_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateBooking"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "booking_identifier": "12345", - "request_body": "{\"newDetails\":\"Updated booking details\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_booking_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_booking_example_call_tool.py deleted file mode 100644 index 7a0c9cd0d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_booking_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateBooking" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'booking_identifier': '12345', - 'request_body': '{"newDetails":"Updated booking details"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_break_type_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_break_type_example_call_tool.js deleted file mode 100644 index 93ceddbb4..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_break_type_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateBreakType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "break_counts_for_compensation": true, - "break_duration_rfc3339": "PT30M", - "break_name": "Lunch Break", - "break_type_uuid": "123e4567-e89b-12d3-a456-426614174000", - "business_location_id": "loc_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_break_type_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_break_type_example_call_tool.py deleted file mode 100644 index d0b8fc54e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_break_type_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateBreakType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'break_counts_for_compensation': True, - 'break_duration_rfc3339': 'PT30M', - 'break_name': 'Lunch Break', - 'break_type_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'business_location_id': 'loc_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_checkout_location_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_checkout_location_settings_example_call_tool.js deleted file mode 100644 index 91a74b68c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_checkout_location_settings_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateCheckoutLocationSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "location_id": "loc_12345", - "request_body": "{\"currency\":\"USD\",\"enabled\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_checkout_location_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_checkout_location_settings_example_call_tool.py deleted file mode 100644 index d45c88887..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_checkout_location_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateCheckoutLocationSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'location_id': 'loc_12345', 'request_body': '{"currency":"USD","enabled":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_customer_attribute_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_customer_attribute_definition_example_call_tool.js deleted file mode 100644 index 2234a52e7..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_customer_attribute_definition_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateCustomerAttributeDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "customer_age", - "attribute_description": "Age of the customer, must be a positive integer.", - "attribute_visibility": "VISIBILITY_READ_WRITE_VALUES", - "current_version": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_customer_attribute_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_customer_attribute_definition_example_call_tool.py deleted file mode 100644 index 42ddb527b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_customer_attribute_definition_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateCustomerAttributeDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'customer_age', - 'attribute_description': 'Age of the customer, must be a positive integer.', - 'attribute_visibility': 'VISIBILITY_READ_WRITE_VALUES', - 'current_version': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_customer_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_customer_custom_attribute_example_call_tool.js deleted file mode 100644 index a84870dba..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_customer_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateCustomerCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "customer_identifier": "cus_123456", - "custom_attribute_key": "loyalty_points", - "request_body": "{\"points\": 100}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_customer_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_customer_custom_attribute_example_call_tool.py deleted file mode 100644 index 920c9f4c2..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_customer_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateCustomerCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'customer_identifier': 'cus_123456', - 'custom_attribute_key': 'loyalty_points', - 'request_body': '{"points": 100}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_customer_group_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_customer_group_example_call_tool.js deleted file mode 100644 index 68d75238f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_customer_group_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateCustomerGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_group_id": "12345", - "customer_group_name": "VIP Customers" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_customer_group_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_customer_group_example_call_tool.py deleted file mode 100644 index abf7e2a78..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_customer_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateCustomerGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_group_id': '12345', 'customer_group_name': 'VIP Customers' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_customer_profile_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_customer_profile_example_call_tool.js deleted file mode 100644 index bd5a23016..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_customer_profile_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateCustomerProfile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "customer_id": "12345", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_customer_profile_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_customer_profile_example_call_tool.py deleted file mode 100644 index 9ec482cab..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_customer_profile_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateCustomerProfile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'customer_id': '12345', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_invoice_example_call_tool.js deleted file mode 100644 index 68aff1a24..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_invoice_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "invoice_id": "inv_12345", - "request_body": "{\"amount\":150.00,\"status\":\"paid\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_invoice_example_call_tool.py deleted file mode 100644 index d1446c85f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_invoice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'invoice_id': 'inv_12345', 'request_body': '{"amount":150.00,"status":"paid"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_item_modifier_lists_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_item_modifier_lists_example_call_tool.js deleted file mode 100644 index 54ad24584..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_item_modifier_lists_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateItemModifierLists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "catalog_item_ids": [ - "item123", - "item456" - ], - "modifier_list_ids_to_enable": [ - "modList1", - "modList2" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_item_modifier_lists_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_item_modifier_lists_example_call_tool.py deleted file mode 100644 index b92c0915d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_item_modifier_lists_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateItemModifierLists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'catalog_item_ids': ['item123', 'item456'], - 'modifier_list_ids_to_enable': ['modList1', 'modList2'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_item_taxes_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_item_taxes_example_call_tool.js deleted file mode 100644 index d5829128a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_item_taxes_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateItemTaxes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "catalog_item_ids": [ - "item123", - "item456" - ], - "tax_ids_to_enable": [ - "tax789" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_item_taxes_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_item_taxes_example_call_tool.py deleted file mode 100644 index 8f668b94b..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_item_taxes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateItemTaxes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'catalog_item_ids': ['item123', 'item456'], 'tax_ids_to_enable': ['tax789'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_job_details_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_job_details_example_call_tool.js deleted file mode 100644 index f6662ee7e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_job_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateJobDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "job_id_to_update": "job_12345", - "enable_tips_for_job": true, - "job_title": "Senior Developer" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_job_details_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_job_details_example_call_tool.py deleted file mode 100644 index af5713765..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_job_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateJobDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'job_id_to_update': 'job_12345', 'enable_tips_for_job': True, 'job_title': 'Senior Developer' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_location_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_location_custom_attribute_example_call_tool.js deleted file mode 100644 index 11f227b7f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_location_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateLocationCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "location_attr_123", - "current_version": 1, - "custom_attribute_name": "Location Attribute", - "custom_attribute_visibility_level": "VISIBILITY_READ_WRITE_VALUES" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_location_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_location_custom_attribute_example_call_tool.py deleted file mode 100644 index 60e90d884..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_location_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateLocationCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'location_attr_123', - 'current_version': 1, - 'custom_attribute_name': 'Location Attribute', - 'custom_attribute_visibility_level': 'VISIBILITY_READ_WRITE_VALUES' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_location_squareup_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_location_squareup_example_call_tool.js deleted file mode 100644 index 59b0f53e8..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_location_squareup_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateLocationSquareup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "location_id": "loc_12345", - "request_body": "{\"name\":\"New Location Name\",\"address\":\"123 New St\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_location_squareup_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_location_squareup_example_call_tool.py deleted file mode 100644 index 9a42a1962..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_location_squareup_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateLocationSquareup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'location_id': 'loc_12345', - 'request_body': '{"name":"New Location Name","address":"123 New St"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_merchant_custom_attribute_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_merchant_custom_attribute_definition_example_call_tool.js deleted file mode 100644 index c6c330901..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_merchant_custom_attribute_definition_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateMerchantCustomAttributeDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "custom_attr_123", - "custom_attribute_definition_name": "New Attribute Name", - "custom_attribute_visibility": "VISIBILITY_READ_WRITE_VALUES" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_merchant_custom_attribute_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_merchant_custom_attribute_definition_example_call_tool.py deleted file mode 100644 index 681935d40..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_merchant_custom_attribute_definition_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateMerchantCustomAttributeDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'custom_attr_123', - 'custom_attribute_definition_name': 'New Attribute Name', - 'custom_attribute_visibility': 'VISIBILITY_READ_WRITE_VALUES' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_merchant_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_merchant_settings_example_call_tool.js deleted file mode 100644 index 18c366e2e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_merchant_settings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateMerchantSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"merchant_id\":\"12345\",\"settings\":{\"currency\":\"USD\",\"checkout_url\":\"https://example.com/checkout\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_merchant_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_merchant_settings_example_call_tool.py deleted file mode 100644 index cff2184f5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_merchant_settings_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateMerchantSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"merchant_id":"12345","settings":{"currency":"USD","checkout_url":"https://example.com/checkout"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_multiple_customer_profiles_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_multiple_customer_profiles_example_call_tool.js deleted file mode 100644 index 0d4d659bf..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_multiple_customer_profiles_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateMultipleCustomerProfiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"updates\":[{\"customerId\":\"123\",\"profile\":{\"name\":\"John Doe\",\"email\":\"john@example.com\"}},{\"customerId\":\"456\",\"profile\":{\"name\":\"Jane Smith\",\"email\":\"jane@example.com\"}}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_multiple_customer_profiles_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_multiple_customer_profiles_example_call_tool.py deleted file mode 100644 index 05904d26e..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_multiple_customer_profiles_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateMultipleCustomerProfiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"updates":[{"customerId":"123","profile":{"name":"John ' - 'Doe","email":"john@example.com"}},{"customerId":"456","profile":{"name":"Jane ' - 'Smith","email":"jane@example.com"}}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_order_custom_attribute_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_order_custom_attribute_definition_example_call_tool.js deleted file mode 100644 index f649ee39d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_order_custom_attribute_definition_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateOrderCustomAttributeDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_attribute_key": "order_color", - "custom_attribute_name": "Order Color", - "custom_attribute_description": "The color of the order item", - "custom_attribute_visibility": "VISIBILITY_READ_WRITE_VALUES" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_order_custom_attribute_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_order_custom_attribute_definition_example_call_tool.py deleted file mode 100644 index 3edc31e37..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_order_custom_attribute_definition_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateOrderCustomAttributeDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_attribute_key': 'order_color', - 'custom_attribute_name': 'Order Color', - 'custom_attribute_description': 'The color of the order item', - 'custom_attribute_visibility': 'VISIBILITY_READ_WRITE_VALUES' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_order_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_order_custom_attribute_example_call_tool.js deleted file mode 100644 index 85b3f155f..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_order_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateOrderCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "order_id": "12345", - "custom_attribute_key": "color", - "request_body": "{\"value\":\"red\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_order_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_order_custom_attribute_example_call_tool.py deleted file mode 100644 index c41965a38..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_order_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateOrderCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'order_id': '12345', - 'custom_attribute_key': 'color', - 'request_body': '{"value":"red"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_order_square_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_order_square_example_call_tool.js deleted file mode 100644 index c66099b6a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_order_square_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateOrderSquare"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "order_id": "12345", - "request_body": "{\"status\":\"completed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_order_square_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_order_square_example_call_tool.py deleted file mode 100644 index c37b7f869..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_order_square_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateOrderSquare" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'order_id': '12345', 'request_body': '{"status":"completed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_payment_link_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_payment_link_example_call_tool.js deleted file mode 100644 index 2cc47930c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_payment_link_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdatePaymentLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "payment_link_id": "link_12345", - "request_body": "{\"description\":\"Updated payment link description\",\"checkout_options\":{\"currency\":\"USD\",\"amount\":100}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_payment_link_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_payment_link_example_call_tool.py deleted file mode 100644 index 0d937d53c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_payment_link_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdatePaymentLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'payment_link_id': 'link_12345', - 'request_body': '{"description":"Updated payment link ' - 'description","checkout_options":{"currency":"USD","amount":100}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_payment_status_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_payment_status_example_call_tool.js deleted file mode 100644 index f09396e67..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_payment_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdatePaymentStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "payment_identifier": "pay_12345", - "request_body": "{\"amount_money\":1000,\"tip_money\":100}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_payment_status_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_payment_status_example_call_tool.py deleted file mode 100644 index aef2e37fb..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_payment_status_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdatePaymentStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'payment_identifier': 'pay_12345', - 'request_body': '{"amount_money":1000,"tip_money":100}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_scheduled_shift_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_scheduled_shift_example_call_tool.js deleted file mode 100644 index eca7fc770..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_scheduled_shift_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateScheduledShift"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "scheduled_shift_id": "shift_12345", - "request_body": "{\"location\":\"Office\",\"job\":\"Developer\",\"start_time\":\"2023-10-01T09:00:00Z\",\"end_time\":\"2023-10-01T17:00:00Z\",\"team_member\":\"John Doe\",\"notes\":\"Weekly team meeting\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_scheduled_shift_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_scheduled_shift_example_call_tool.py deleted file mode 100644 index d4f268a45..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_scheduled_shift_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateScheduledShift" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'scheduled_shift_id': 'shift_12345', - 'request_body': '{"location":"Office","job":"Developer","start_time":"2023-10-01T09:00:00Z","end_time":"2023-10-01T17:00:00Z","team_member":"John ' - 'Doe","notes":"Weekly team meeting"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_subscription_example_call_tool.js deleted file mode 100644 index 75cc395be..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_subscription_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "subscription_id": "sub_12345", - "request_body": "{\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_subscription_example_call_tool.py deleted file mode 100644 index 2ecf529d5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_subscription_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'subscription_id': 'sub_12345', 'request_body': '{"status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_team_member_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_team_member_example_call_tool.js deleted file mode 100644 index 1ebb3658d..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_team_member_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateTeamMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_member_id": "12345", - "request_body": "{\"name\":\"John Doe\",\"role\":\"Developer\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_team_member_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_team_member_example_call_tool.py deleted file mode 100644 index 1c13c3994..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_team_member_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateTeamMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_member_id': '12345', - 'request_body': '{"name":"John Doe","role":"Developer"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_timecard_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_timecard_example_call_tool.js deleted file mode 100644 index 4ae352f5c..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_timecard_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateTimecard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "timecard_id": "12345", - "request_body": "{\"breaks\":[{\"start_at\":\"2023-10-01T12:00:00Z\",\"end_at\":\"2023-10-01T12:30:00Z\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_timecard_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_timecard_example_call_tool.py deleted file mode 100644 index bdf751c77..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_timecard_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateTimecard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'timecard_id': '12345', - 'request_body': '{"breaks":[{"start_at":"2023-10-01T12:00:00Z","end_at":"2023-10-01T12:30:00Z"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_transfer_order_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_transfer_order_example_call_tool.js deleted file mode 100644 index e04c1afb8..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_transfer_order_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateTransferOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "transfer_order_identifier": "TO12345", - "request_body": "{\"status\":\"shipped\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_transfer_order_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_transfer_order_example_call_tool.py deleted file mode 100644 index b963b2059..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_transfer_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateTransferOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'transfer_order_identifier': 'TO12345', 'request_body': '{"status":"shipped"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_vendor_info_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_vendor_info_example_call_tool.js deleted file mode 100644 index 529c26e16..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_vendor_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateVendorInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"vendor_id\":\"12345\",\"name\":\"Acme Corp\",\"contact_email\":\"contact@acmecorp.com\",\"phone\":\"123-456-7890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_vendor_info_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_vendor_info_example_call_tool.py deleted file mode 100644 index f55d6499a..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_vendor_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateVendorInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"vendor_id":"12345","name":"Acme ' - 'Corp","contact_email":"contact@acmecorp.com","phone":"123-456-7890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_wage_setting_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_wage_setting_example_call_tool.js deleted file mode 100644 index c6f9707e8..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_wage_setting_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateWageSetting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_member_id": "12345", - "request_body": "{\"wage\": 50000, \"currency\": \"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_wage_setting_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_wage_setting_example_call_tool.py deleted file mode 100644 index 9b27a2577..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_wage_setting_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateWageSetting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'team_member_id': '12345', 'request_body': '{"wage": 50000, "currency": "USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_webhook_signature_key_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_webhook_signature_key_example_call_tool.js deleted file mode 100644 index 2980bfb86..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_webhook_signature_key_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateWebhookSignatureKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_subscription_id": "sub_12345", - "unique_request_identifier": "req_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_webhook_signature_key_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_webhook_signature_key_example_call_tool.py deleted file mode 100644 index aa1005fc3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_webhook_signature_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateWebhookSignatureKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_subscription_id': 'sub_12345', 'unique_request_identifier': 'req_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_webhook_subscription_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_webhook_subscription_example_call_tool.js deleted file mode 100644 index 643e83dfd..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_webhook_subscription_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateWebhookSubscription"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_12345", - "event_types": [ - "payment.created", - "payment.updated" - ], - "subscription_enabled": true, - "webhook_notification_url": "https://example.com/webhook" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_webhook_subscription_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_webhook_subscription_example_call_tool.py deleted file mode 100644 index eefe33f22..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_webhook_subscription_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateWebhookSubscription" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_12345', - 'event_types': ['payment.created', 'payment.updated'], - 'subscription_enabled': True, - 'webhook_notification_url': 'https://example.com/webhook' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_workweek_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/update_workweek_configuration_example_call_tool.js deleted file mode 100644 index b3f821939..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_workweek_configuration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpdateWorkweekConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workweek_config_id": "123e4567-e89b-12d3-a456-426614174000", - "workweek_start_day": "MON", - "workweek_start_time_local": "09:00" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/update_workweek_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/update_workweek_configuration_example_call_tool.py deleted file mode 100644 index a25583dde..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/update_workweek_configuration_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpdateWorkweekConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workweek_config_id': '123e4567-e89b-12d3-a456-426614174000', - 'workweek_start_day': 'MON', - 'workweek_start_time_local': '09:00' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/upload_dispute_evidence_text_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/upload_dispute_evidence_text_example_call_tool.js deleted file mode 100644 index 229759ffd..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/upload_dispute_evidence_text_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UploadDisputeEvidenceText"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dispute_id": "12345", - "evidence_text_string": "This is the evidence text for the dispute.", - "unique_request_key": "req_67890", - "dispute_evidence_type": "GENERIC_EVIDENCE" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/upload_dispute_evidence_text_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/upload_dispute_evidence_text_example_call_tool.py deleted file mode 100644 index b695fcc32..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/upload_dispute_evidence_text_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UploadDisputeEvidenceText" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dispute_id': '12345', - 'evidence_text_string': 'This is the evidence text for the dispute.', - 'unique_request_key': 'req_67890', - 'dispute_evidence_type': 'GENERIC_EVIDENCE' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/upsert_catalog_object_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/upsert_catalog_object_example_call_tool.js deleted file mode 100644 index de60ff263..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/upsert_catalog_object_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpsertCatalogObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/upsert_catalog_object_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/upsert_catalog_object_example_call_tool.py deleted file mode 100644 index e32aca3b0..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/upsert_catalog_object_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpsertCatalogObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/upsert_location_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/upsert_location_custom_attribute_example_call_tool.js deleted file mode 100644 index d97bf4688..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/upsert_location_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpsertLocationCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "location_id": "loc_12345", - "custom_attribute_key": "custom_attr_1", - "request_body": "{\"value\":\"Sample Value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/upsert_location_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/upsert_location_custom_attribute_example_call_tool.py deleted file mode 100644 index 530a20dc1..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/upsert_location_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpsertLocationCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'location_id': 'loc_12345', - 'custom_attribute_key': 'custom_attr_1', - 'request_body': '{"value":"Sample Value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/upsert_merchant_custom_attribute_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/upsert_merchant_custom_attribute_example_call_tool.js deleted file mode 100644 index 80f4433b5..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/upsert_merchant_custom_attribute_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpsertMerchantCustomAttribute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "merchant_id": "12345", - "custom_attribute_key": "loyalty_points", - "request_body": "{\"points\":100}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/upsert_merchant_custom_attribute_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/upsert_merchant_custom_attribute_example_call_tool.py deleted file mode 100644 index bffa36efe..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/upsert_merchant_custom_attribute_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpsertMerchantCustomAttribute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'merchant_id': '12345', - 'custom_attribute_key': 'loyalty_points', - 'request_body': '{"points":100}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/squareup_api/upsert_merchant_custom_attributes_bulk_example_call_tool.js b/public/examples/integrations/mcp-servers/squareup_api/upsert_merchant_custom_attributes_bulk_example_call_tool.js deleted file mode 100644 index 3ffcd08f3..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/upsert_merchant_custom_attributes_bulk_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "SquareupApi.UpsertMerchantCustomAttributesBulk"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"merchant_id\":\"12345\",\"attributes\":[{\"id\":\"attr1\",\"value\":\"value1\"},{\"id\":\"attr2\",\"value\":\"value2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/squareup_api/upsert_merchant_custom_attributes_bulk_example_call_tool.py b/public/examples/integrations/mcp-servers/squareup_api/upsert_merchant_custom_attributes_bulk_example_call_tool.py deleted file mode 100644 index 8280006f0..000000000 --- a/public/examples/integrations/mcp-servers/squareup_api/upsert_merchant_custom_attributes_bulk_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "SquareupApi.UpsertMerchantCustomAttributesBulk" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"merchant_id":"12345","attributes":[{"id":"attr1","value":"value1"},{"id":"attr2","value":"value2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe/create_billing_portal_session_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/create_billing_portal_session_example_call_tool.js deleted file mode 100644 index 39c17c5c4..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_billing_portal_session_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.CreateBillingPortalSession"; - -const toolInput = { - customer: "cus_123456789", - return_url: "https://example.com/billing" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/stripe/create_billing_portal_session_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/create_billing_portal_session_example_call_tool.py deleted file mode 100644 index ae8217eda..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_billing_portal_session_example_call_tool.py +++ /dev/null @@ -1,18 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.CreateBillingPortalSession" - -tool_input = { - "customer": "cus_123456789", - "return_url": "https://example.com/billing" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/stripe/create_customer_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/create_customer_example_call_tool.js deleted file mode 100644 index 50a497015..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_customer_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.CreateCustomer"; - -const toolInput = { - name: "John Doe", - email: "john.doe@example.com", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/stripe/create_customer_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/create_customer_example_call_tool.py deleted file mode 100644 index 262116870..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_customer_example_call_tool.py +++ /dev/null @@ -1,18 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.CreateCustomer" - -tool_input = { - "name": "John Doe", - "email": "john.doe@example.com", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/stripe/create_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/create_invoice_example_call_tool.js deleted file mode 100644 index 4ab149508..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_invoice_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.CreateInvoice"; - -const toolInput = { - customer: "cus_123456789", - days_until_due: 30 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/stripe/create_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/create_invoice_example_call_tool.py deleted file mode 100644 index a8a7fa5f9..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_invoice_example_call_tool.py +++ /dev/null @@ -1,18 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.CreateInvoice" - -tool_input = { - "customer": "cus_123456789", - "days_until_due": 30 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/stripe/create_invoice_item_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/create_invoice_item_example_call_tool.js deleted file mode 100644 index f815a5ab3..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_invoice_item_example_call_tool.js +++ /dev/null @@ -1,20 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.CreateInvoiceItem"; - -const toolInput = { - customer: "cus_123456789", - price: "price_123456789", - invoice: "in_123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/stripe/create_invoice_item_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/create_invoice_item_example_call_tool.py deleted file mode 100644 index 6ec42eb03..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_invoice_item_example_call_tool.py +++ /dev/null @@ -1,19 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.CreateInvoiceItem" - -tool_input = { - "customer": "cus_123456789", - "price": "price_123456789", - "invoice": "in_123456789" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/stripe/create_payment_link_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/create_payment_link_example_call_tool.js deleted file mode 100644 index 2873ed84b..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_payment_link_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.CreatePaymentLink"; - -const toolInput = { - price: "price_456", - quantity: 1, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/stripe/create_payment_link_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/create_payment_link_example_call_tool.py deleted file mode 100644 index 4e3ca79ba..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_payment_link_example_call_tool.py +++ /dev/null @@ -1,18 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.CreatePaymentLink" - -tool_input = { - "price": "price_456", - "quantity": 1, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/stripe/create_price_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/create_price_example_call_tool.js deleted file mode 100644 index 8af64ed42..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_price_example_call_tool.js +++ /dev/null @@ -1,20 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.CreatePrice"; - -const toolInput = { - product: "prod_123", - unit_amount: 5000, - currency: "usd", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/stripe/create_price_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/create_price_example_call_tool.py deleted file mode 100644 index aa8c12228..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_price_example_call_tool.py +++ /dev/null @@ -1,19 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.CreatePrice" - -tool_input = { - "product": "prod_123", - "unit_amount": 5000, - "currency": "usd", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/stripe/create_product_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/create_product_example_call_tool.js deleted file mode 100644 index 353dc343c..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_product_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.CreateProduct"; - -const toolInput = { - name: "Premium Subscription", - description: "Access to premium features", -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/stripe/create_product_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/create_product_example_call_tool.py deleted file mode 100644 index 07c7489df..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_product_example_call_tool.py +++ /dev/null @@ -1,18 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.CreateProduct" - -tool_input = { - "name": "Premium Subscription", - "description": "Access to premium features", -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/stripe/create_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/create_refund_example_call_tool.js deleted file mode 100644 index 0069200e0..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_refund_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.CreateRefund"; - -const toolInput = { - payment_intent: "pi_123456789", - amount: 1000 // Refund $10.00 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/stripe/create_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/create_refund_example_call_tool.py deleted file mode 100644 index fa8593765..000000000 --- a/public/examples/integrations/mcp-servers/stripe/create_refund_example_call_tool.py +++ /dev/null @@ -1,18 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.CreateRefund" - -tool_input = { - "payment_intent": "pi_123456789", - "amount": 1000 # Refund $10.00 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/stripe/finalize_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/finalize_invoice_example_call_tool.js deleted file mode 100644 index 540e4a458..000000000 --- a/public/examples/integrations/mcp-servers/stripe/finalize_invoice_example_call_tool.js +++ /dev/null @@ -1,18 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.FinalizeInvoice"; - -const toolInput = { - invoice: "in_123456789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/stripe/finalize_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/finalize_invoice_example_call_tool.py deleted file mode 100644 index 2bba19f5c..000000000 --- a/public/examples/integrations/mcp-servers/stripe/finalize_invoice_example_call_tool.py +++ /dev/null @@ -1,17 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.FinalizeInvoice" - -tool_input = { - "invoice": "in_123456789" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/stripe/list_customers_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/list_customers_example_call_tool.js deleted file mode 100644 index 4bcac6613..000000000 --- a/public/examples/integrations/mcp-servers/stripe/list_customers_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.ListCustomers"; - -const toolInput = { - limit: 10, - email: "example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/stripe/list_customers_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/list_customers_example_call_tool.py deleted file mode 100644 index df2adb5f5..000000000 --- a/public/examples/integrations/mcp-servers/stripe/list_customers_example_call_tool.py +++ /dev/null @@ -1,18 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.ListCustomers" - -tool_input = { - "limit": 10, - "email": "example.com" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/stripe/list_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/list_invoices_example_call_tool.js deleted file mode 100644 index 615ffc449..000000000 --- a/public/examples/integrations/mcp-servers/stripe/list_invoices_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.ListInvoices"; - -const toolInput = { - customer: "cus_123456789", - limit: 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/stripe/list_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/list_invoices_example_call_tool.py deleted file mode 100644 index 229df0f0b..000000000 --- a/public/examples/integrations/mcp-servers/stripe/list_invoices_example_call_tool.py +++ /dev/null @@ -1,18 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.ListInvoices" - -tool_input = { - "customer": "cus_123456789", - "limit": 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/stripe/list_payment_intents_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/list_payment_intents_example_call_tool.js deleted file mode 100644 index dfa63fadb..000000000 --- a/public/examples/integrations/mcp-servers/stripe/list_payment_intents_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.ListPaymentIntents"; - -const toolInput = { - customer: "cus_123456789", - limit: 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/stripe/list_payment_intents_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/list_payment_intents_example_call_tool.py deleted file mode 100644 index a81858837..000000000 --- a/public/examples/integrations/mcp-servers/stripe/list_payment_intents_example_call_tool.py +++ /dev/null @@ -1,18 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.ListPaymentIntents" - -tool_input = { - "customer": "cus_123456789", - "limit": 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/stripe/list_prices_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/list_prices_example_call_tool.js deleted file mode 100644 index 2d0f609ac..000000000 --- a/public/examples/integrations/mcp-servers/stripe/list_prices_example_call_tool.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.ListPrices"; - -const toolInput = { - product: "prod_123", - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/stripe/list_prices_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/list_prices_example_call_tool.py deleted file mode 100644 index ae4a03ef3..000000000 --- a/public/examples/integrations/mcp-servers/stripe/list_prices_example_call_tool.py +++ /dev/null @@ -1,18 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.ListPrices" - -tool_input = { - "product": "prod_123", - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/stripe/list_products_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/list_products_example_call_tool.js deleted file mode 100644 index 6b7187366..000000000 --- a/public/examples/integrations/mcp-servers/stripe/list_products_example_call_tool.js +++ /dev/null @@ -1,18 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.ListProducts"; - -const toolInput = { - limit: 10, -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/stripe/list_products_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/list_products_example_call_tool.py deleted file mode 100644 index 3acaf8573..000000000 --- a/public/examples/integrations/mcp-servers/stripe/list_products_example_call_tool.py +++ /dev/null @@ -1,17 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.ListProducts" - -tool_input = { - "limit": 10, -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) \ No newline at end of file diff --git a/public/examples/integrations/mcp-servers/stripe/retrieve_balance_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe/retrieve_balance_example_call_tool.js deleted file mode 100644 index b1de1b8a7..000000000 --- a/public/examples/integrations/mcp-servers/stripe/retrieve_balance_example_call_tool.js +++ /dev/null @@ -1,16 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Stripe.RetrieveBalance"; - -const toolInput = {}; // No input required for this tool - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(response); diff --git a/public/examples/integrations/mcp-servers/stripe/retrieve_balance_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe/retrieve_balance_example_call_tool.py deleted file mode 100644 index c9d1033ed..000000000 --- a/public/examples/integrations/mcp-servers/stripe/retrieve_balance_example_call_tool.py +++ /dev/null @@ -1,15 +0,0 @@ -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Stripe.RetrieveBalance" - -tool_input = {} # No input required for this tool - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(response) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_account_person_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_account_person_example_call_tool.js deleted file mode 100644 index 758917647..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_account_person_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteAccountPerson"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_id": "acct_1Gqj58LzExample", - "person_id": "person_Abc12345XYZ" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_account_person_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_account_person_example_call_tool.py deleted file mode 100644 index e36288d86..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_account_person_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteAccountPerson" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_id': 'acct_1Gqj58LzExample', 'person_id': 'person_Abc12345XYZ' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_account_person_relationship_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_account_person_relationship_example_call_tool.js deleted file mode 100644 index d34a8ac59..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_account_person_relationship_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteAccountPersonRelationship"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_id": "acct_1Gqj58XXXXXXXXXX", - "person_id": "person_1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_account_person_relationship_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_account_person_relationship_example_call_tool.py deleted file mode 100644 index af6e09312..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_account_person_relationship_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteAccountPersonRelationship" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_id': 'acct_1Gqj58XXXXXXXXXX', 'person_id': 'person_1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_apple_pay_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_apple_pay_domain_example_call_tool.js deleted file mode 100644 index 1e033eabb..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_apple_pay_domain_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteApplePayDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "apple_pay_domain_to_delete": "shop.example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_apple_pay_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_apple_pay_domain_example_call_tool.py deleted file mode 100644 index 7700a2495..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_apple_pay_domain_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteApplePayDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'apple_pay_domain_to_delete': 'shop.example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_customer_tax_id_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_customer_tax_id_example_call_tool.js deleted file mode 100644 index e76bd3317..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_customer_tax_id_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteCustomerTaxId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_identifier": "cus_12345ABCDE", - "tax_id": "txi_67890FGHIJ" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_customer_tax_id_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_customer_tax_id_example_call_tool.py deleted file mode 100644 index 530667129..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_customer_tax_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteCustomerTaxId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_identifier': 'cus_12345ABCDE', 'tax_id': 'txi_67890FGHIJ' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_external_account_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_external_account_example_call_tool.js deleted file mode 100644 index 41cc94117..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_external_account_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteExternalAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_identifier": "acct_12345", - "external_account_id": "ext_acc_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_external_account_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_external_account_example_call_tool.py deleted file mode 100644 index 130869fbe..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_external_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteExternalAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_identifier': 'acct_12345', 'external_account_id': 'ext_acc_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_external_bank_account_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_external_bank_account_example_call_tool.js deleted file mode 100644 index 92f25cff9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_external_bank_account_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteExternalBankAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_identifier": "acct_123456789", - "external_account_id": "extacct_987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_external_bank_account_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_external_bank_account_example_call_tool.py deleted file mode 100644 index c681398c3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_external_bank_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteExternalBankAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_identifier': 'acct_123456789', 'external_account_id': 'extacct_987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_invoice_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_invoice_draft_example_call_tool.js deleted file mode 100644 index 2d1da33f3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_invoice_draft_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteInvoiceDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_id": "draft_inv_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_invoice_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_invoice_draft_example_call_tool.py deleted file mode 100644 index 411e8f77f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_invoice_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteInvoiceDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_id': 'draft_inv_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_invoice_item_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_invoice_item_example_call_tool.js deleted file mode 100644 index 3449db64a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_invoice_item_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteInvoiceItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_item_id": "ii_1Hh1XY2eZvKYlo2C0abc1234" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_invoice_item_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_invoice_item_example_call_tool.py deleted file mode 100644 index e19be6bb3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_invoice_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteInvoiceItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_item_id': 'ii_1Hh1XY2eZvKYlo2C0abc1234' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_product_feature_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_product_feature_example_call_tool.js deleted file mode 100644 index 91b92b6f9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_product_feature_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteProductFeature"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "feature_id": "feat_9b2f1a", - "product_id": "prod_47c3e8" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_product_feature_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_product_feature_example_call_tool.py deleted file mode 100644 index 01dd7df53..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_product_feature_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteProductFeature" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'feature_id': 'feat_9b2f1a', 'product_id': 'prod_47c3e8' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_connected_account_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_connected_account_example_call_tool.js deleted file mode 100644 index af166faf6..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_connected_account_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteStripeConnectedAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_id_to_delete": "acct_1Hh1YZ2eZvKYlo2C" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_connected_account_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_connected_account_example_call_tool.py deleted file mode 100644 index f2eaf5452..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_connected_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteStripeConnectedAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_id_to_delete': 'acct_1Hh1YZ2eZvKYlo2C' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_coupon_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_coupon_example_call_tool.js deleted file mode 100644 index 6c98d42ce..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_coupon_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteStripeCoupon"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "coupon_id": "SUMMER21" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_coupon_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_coupon_example_call_tool.py deleted file mode 100644 index e461e3b46..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_coupon_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteStripeCoupon" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'coupon_id': 'SUMMER21' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_customer_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_customer_example_call_tool.js deleted file mode 100644 index dc656caad..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_customer_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteStripeCustomer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_customer_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_customer_example_call_tool.py deleted file mode 100644 index eebe54467..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_customer_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteStripeCustomer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_plan_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_plan_example_call_tool.js deleted file mode 100644 index 14c00ef05..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_plan_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteStripePlan"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "plan_id": "plan_Gh7x3a9L" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_plan_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_plan_example_call_tool.py deleted file mode 100644 index 335a65013..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_plan_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteStripePlan" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'plan_id': 'plan_Gh7x3a9L' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_product_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_product_example_call_tool.js deleted file mode 100644 index 44e8df9e5..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_product_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteStripeProduct"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_id_to_delete": "prod_J5k9xT2aBc1yz0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_product_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_product_example_call_tool.py deleted file mode 100644 index 1fee6b8f6..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_product_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteStripeProduct" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_id_to_delete': 'prod_J5k9xT2aBc1yz0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_value_list_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_value_list_example_call_tool.js deleted file mode 100644 index abb7db7c8..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_value_list_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteStripeValueList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "value_list_id": "vl_1J2k3a4b5c6D7e8F" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_value_list_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_value_list_example_call_tool.py deleted file mode 100644 index eca90a0ac..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_value_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteStripeValueList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'value_list_id': 'vl_1J2k3a4b5c6D7e8F' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_webhook_endpoint_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_webhook_endpoint_example_call_tool.js deleted file mode 100644 index dd40cd4c3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_webhook_endpoint_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteStripeWebhookEndpoint"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_endpoint_id": "we_1J2kLmNopQrsTuvWxyZabCde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_webhook_endpoint_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_webhook_endpoint_example_call_tool.py deleted file mode 100644 index 19d81a66a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_stripe_webhook_endpoint_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteStripeWebhookEndpoint" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_endpoint_id': 'we_1J2kLmNopQrsTuvWxyZabCde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_tax_id_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_tax_id_example_call_tool.js deleted file mode 100644 index 91af7da94..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_tax_id_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteTaxId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tax_id": "txi_1JH3a2Bc4dEFgHiJkLmNopqr" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_tax_id_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_tax_id_example_call_tool.py deleted file mode 100644 index 3801847ec..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_tax_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteTaxId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tax_id': 'txi_1JH3a2Bc4dEFgHiJkLmNopqr' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_configuration_example_call_tool.js deleted file mode 100644 index f99c743cf..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_configuration_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteTerminalConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "configuration_id_to_delete": "tc_1J2k3l4m5n6o7p8q" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_configuration_example_call_tool.py deleted file mode 100644 index c27c6c228..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_configuration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteTerminalConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'configuration_id_to_delete': 'tc_1J2k3l4m5n6o7p8q' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_location_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_location_example_call_tool.js deleted file mode 100644 index 61c391dea..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_location_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteTerminalLocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_identifier": "tml_1A2b3C4d5E6f7G8h" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_location_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_location_example_call_tool.py deleted file mode 100644 index 56253b245..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_location_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteTerminalLocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_identifier': 'tml_1A2b3C4d5E6f7G8h' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_reader_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_reader_example_call_tool.js deleted file mode 100644 index 43d4783d1..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_reader_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteTerminalReader"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "terminal_reader_id": "tmr_1A2b3C4d5E6f" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_reader_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_reader_example_call_tool.py deleted file mode 100644 index 6d84ca10c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_terminal_reader_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteTerminalReader" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'terminal_reader_id': 'tmr_1A2b3C4d5E6f' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_test_clock_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/delete_test_clock_example_call_tool.js deleted file mode 100644 index 330a2b5b0..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_test_clock_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DeleteTestClock"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "test_clock_id": "clock_1A2b3C4d5E6f7G" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/delete_test_clock_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/delete_test_clock_example_call_tool.py deleted file mode 100644 index d30094d78..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/delete_test_clock_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DeleteTestClock" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'test_clock_id': 'clock_1A2b3C4d5E6f7G' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/download_quote_pdf_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/download_quote_pdf_example_call_tool.js deleted file mode 100644 index 32940eda6..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/download_quote_pdf_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.DownloadQuotePdf"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "quote_id": "qto_1J2kLm3NoPqRsT", - "expand_fields": [ - "customer", - "invoice" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/download_quote_pdf_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/download_quote_pdf_example_call_tool.py deleted file mode 100644 index 419c7d97a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/download_quote_pdf_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.DownloadQuotePdf" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'quote_id': 'qto_1J2kLm3NoPqRsT', 'expand_fields': ['customer', 'invoice'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_account_capabilities_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_account_capabilities_example_call_tool.js deleted file mode 100644 index 726a083d6..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_account_capabilities_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetAccountCapabilities"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_id": "acct_1GqIC8LzX0example", - "fields_to_expand": [ - "data.requirements", - "data.settings" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_account_capabilities_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_account_capabilities_example_call_tool.py deleted file mode 100644 index 341bb0ec3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_account_capabilities_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetAccountCapabilities" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_id': 'acct_1GqIC8LzX0example', 'fields_to_expand': ['data.requirements', 'data.settings'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_account_capability_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_account_capability_details_example_call_tool.js deleted file mode 100644 index 602644f3f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_account_capability_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetAccountCapabilityDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_id": "acct_1GqIC8LJ5aX0eZ", - "account_capability_identifier": "card_payments", - "expand_fields": [ - "requirements", - "pending_capability_reason" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_account_capability_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_account_capability_details_example_call_tool.py deleted file mode 100644 index 8e7df4dc5..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_account_capability_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetAccountCapabilityDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_id': 'acct_1GqIC8LJ5aX0eZ', - 'account_capability_identifier': 'card_payments', - 'expand_fields': ['requirements', 'pending_capability_reason'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_active_entitlements_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_active_entitlements_example_call_tool.js deleted file mode 100644 index 76d3c4e4b..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_active_entitlements_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetActiveEntitlements"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz", - "max_number_of_entitlements": 25, - "expand_fields_in_response": [ - "data.product", - "data.price" - ], - "pagination_starting_after": "ent_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_active_entitlements_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_active_entitlements_example_call_tool.py deleted file mode 100644 index 95fca59e3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_active_entitlements_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetActiveEntitlements" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz', - 'max_number_of_entitlements': 25, - 'expand_fields_in_response': ['data.product', 'data.price'], - 'pagination_starting_after': 'ent_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_application_fee_refunds_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_application_fee_refunds_example_call_tool.js deleted file mode 100644 index d41a9bb74..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_application_fee_refunds_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetApplicationFeeRefunds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_fee_id": "fee_12345ABCDE", - "maximum_number_of_refunds": 25, - "fields_to_expand": [ - "data.object.charge", - "data.object.invoice" - ], - "pagination_starting_after": "fr_67890FGHIJ" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_application_fee_refunds_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_application_fee_refunds_example_call_tool.py deleted file mode 100644 index 469084cbb..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_application_fee_refunds_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetApplicationFeeRefunds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_fee_id': 'fee_12345ABCDE', - 'maximum_number_of_refunds': 25, - 'fields_to_expand': ['data.object.charge', 'data.object.invoice'], - 'pagination_starting_after': 'fr_67890FGHIJ' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_balance_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_balance_settings_example_call_tool.js deleted file mode 100644 index b3c27a4b3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_balance_settings_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetBalanceSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fields_to_expand": [ - "settings.payouts", - "settings.reconciliation_settings" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_balance_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_balance_settings_example_call_tool.py deleted file mode 100644 index 82fd7603d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_balance_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetBalanceSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fields_to_expand': ['settings.payouts', 'settings.reconciliation_settings'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_balance_transaction_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_balance_transaction_by_id_example_call_tool.js deleted file mode 100644 index 2a59b1008..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_balance_transaction_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetBalanceTransactionById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transaction_id": "txn_1A2b3C4d5E6f7G8h", - "fields_to_expand": [ - "source_transfer", - "balance_transaction.source" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_balance_transaction_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_balance_transaction_by_id_example_call_tool.py deleted file mode 100644 index 25cd029d2..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_balance_transaction_by_id_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetBalanceTransactionById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transaction_id': 'txn_1A2b3C4d5E6f7G8h', - 'fields_to_expand': ['source_transfer', 'balance_transaction.source'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_billing_alert_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_billing_alert_example_call_tool.js deleted file mode 100644 index 53bb8237a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_billing_alert_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetBillingAlert"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "billing_alert_id": "ba_1J2K3L4M5N6O7P8Q", - "expand_fields": [ - "thresholds", - "notifications" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_billing_alert_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_billing_alert_example_call_tool.py deleted file mode 100644 index 961550a35..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_billing_alert_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetBillingAlert" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'billing_alert_id': 'ba_1J2K3L4M5N6O7P8Q', 'expand_fields': ['thresholds', 'notifications'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_billing_alerts_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_billing_alerts_example_call_tool.js deleted file mode 100644 index 514d6a7da..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_billing_alerts_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetBillingAlerts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_alert_type": "usage_threshold", - "result_limit": 25, - "expand_response_fields": [ - "creator", - "conditions" - ], - "filter_by_meter": "api_calls", - "pagination_starting_after": "ba_1JH2x2Example" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_billing_alerts_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_billing_alerts_example_call_tool.py deleted file mode 100644 index 2b885b086..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_billing_alerts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetBillingAlerts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_alert_type': 'usage_threshold', - 'result_limit': 25, - 'expand_response_fields': ['creator', 'conditions'], - 'filter_by_meter': 'api_calls', - 'pagination_starting_after': 'ba_1JH2x2Example' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_billing_credit_grants_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_billing_credit_grants_example_call_tool.js deleted file mode 100644 index c2fd69757..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_billing_credit_grants_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetBillingCreditGrants"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123def456", - "fields_to_expand": [ - "customer", - "credit_grant_details" - ], - "credit_grant_limit": 25, - "pagination_starting_after_cursor": "cg_789xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_billing_credit_grants_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_billing_credit_grants_example_call_tool.py deleted file mode 100644 index 24428852a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_billing_credit_grants_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetBillingCreditGrants" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123def456', - 'fields_to_expand': ['customer', 'credit_grant_details'], - 'credit_grant_limit': 25, - 'pagination_starting_after_cursor': 'cg_789xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_billing_meter_event_summaries_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_billing_meter_event_summaries_example_call_tool.js deleted file mode 100644 index beb5bb73b..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_billing_meter_event_summaries_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetBillingMeterEventSummaries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cust_12345", - "stop_aggregating_until": 1700000400, - "start_time_timestamp": 1699996800, - "meter_id": "meter_cpu_hours", - "pagination_ending_before_id": "evt_98765", - "fields_to_expand": [ - "usage_details", - "price_components" - ], - "number_of_objects_limit": 25, - "pagination_starting_after_id": "evt_12345", - "granularity_for_event_summaries": "hour" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_billing_meter_event_summaries_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_billing_meter_event_summaries_example_call_tool.py deleted file mode 100644 index 82cf3cbe7..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_billing_meter_event_summaries_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetBillingMeterEventSummaries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cust_12345', - 'stop_aggregating_until': 1700000400, - 'start_time_timestamp': 1699996800, - 'meter_id': 'meter_cpu_hours', - 'pagination_ending_before_id': 'evt_98765', - 'fields_to_expand': ['usage_details', 'price_components'], - 'number_of_objects_limit': 25, - 'pagination_starting_after_id': 'evt_12345', - 'granularity_for_event_summaries': 'hour' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_billing_meters_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_billing_meters_example_call_tool.js deleted file mode 100644 index 1a758d3b7..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_billing_meters_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetBillingMeters"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_ending_before": "bmtr_00000000000000", - "fields_to_expand": [ - "pricing", - "tiers" - ], - "number_of_billing_meters": 25, - "pagination_starting_after_cursor": "bmtr_00000000000025", - "filter_status": "active" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_billing_meters_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_billing_meters_example_call_tool.py deleted file mode 100644 index d974d0df0..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_billing_meters_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetBillingMeters" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_ending_before': 'bmtr_00000000000000', - 'fields_to_expand': ['pricing', 'tiers'], - 'number_of_billing_meters': 25, - 'pagination_starting_after_cursor': 'bmtr_00000000000025', - 'filter_status': 'active' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_billing_portal_configurations_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_billing_portal_configurations_example_call_tool.js deleted file mode 100644 index 13862258c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_billing_portal_configurations_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetBillingPortalConfigurations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fields_to_expand": [ - "features", - "business_profile" - ], - "result_limit": 5, - "only_active_configurations": true, - "pagination_start_after_id": "bpc_12345ABC", - "return_default_configurations_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_billing_portal_configurations_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_billing_portal_configurations_example_call_tool.py deleted file mode 100644 index f078ba183..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_billing_portal_configurations_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetBillingPortalConfigurations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fields_to_expand': ['features', 'business_profile'], - 'result_limit': 5, - 'only_active_configurations': True, - 'pagination_start_after_id': 'bpc_12345ABC', - 'return_default_configurations_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_charge_dispute_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_charge_dispute_details_example_call_tool.js deleted file mode 100644 index 01ab41441..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_charge_dispute_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetChargeDisputeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "charge_id": "ch_1J2aBc3D4eFgHi5Jk6Lm", - "fields_to_expand_in_dispute_response": [ - "evidence", - "balance_transactions" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_charge_dispute_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_charge_dispute_details_example_call_tool.py deleted file mode 100644 index 8263d9ad7..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_charge_dispute_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetChargeDisputeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'charge_id': 'ch_1J2aBc3D4eFgHi5Jk6Lm', - 'fields_to_expand_in_dispute_response': ['evidence', 'balance_transactions'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_charge_refunds_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_charge_refunds_example_call_tool.js deleted file mode 100644 index 71976afa2..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_charge_refunds_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetChargeRefunds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "charge_id": "ch_1K2xYzAbCdEfGhIj", - "pagination_ending_before": "re_1J2kLmNoPqRsTuVw", - "fields_to_expand": [ - "data.balance_transaction", - "data.charge" - ], - "object_return_limit": 25, - "pagination_starting_after": "re_1K3lMnOpQrStUvWx" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_charge_refunds_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_charge_refunds_example_call_tool.py deleted file mode 100644 index 04da2050f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_charge_refunds_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetChargeRefunds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'charge_id': 'ch_1K2xYzAbCdEfGhIj', - 'pagination_ending_before': 're_1J2kLmNoPqRsTuVw', - 'fields_to_expand': ['data.balance_transaction', 'data.charge'], - 'object_return_limit': 25, - 'pagination_starting_after': 're_1K3lMnOpQrStUvWx' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_checkout_session_line_items_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_checkout_session_line_items_example_call_tool.js deleted file mode 100644 index 8c5a2ab7a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_checkout_session_line_items_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCheckoutSessionLineItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checkout_session_id": "cs_test_a1b2c3d4e5", - "fields_to_expand": [ - "data.price.product", - "data.tax_rates" - ], - "item_limit": 20, - "pagination_starting_after": "li_1J2K3L4M5N" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_checkout_session_line_items_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_checkout_session_line_items_example_call_tool.py deleted file mode 100644 index 6cfdafabf..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_checkout_session_line_items_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCheckoutSessionLineItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checkout_session_id': 'cs_test_a1b2c3d4e5', - 'fields_to_expand': ['data.price.product', 'data.tax_rates'], - 'item_limit': 20, - 'pagination_starting_after': 'li_1J2K3L4M5N' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_climate_order_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_climate_order_details_example_call_tool.js deleted file mode 100644 index 5fbdd1fd7..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_climate_order_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetClimateOrderDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "order_id": "ord_ABC123xyz", - "fields_to_expand": [ - "customer", - "line_items" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_climate_order_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_climate_order_details_example_call_tool.py deleted file mode 100644 index 9a8d4f72a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_climate_order_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetClimateOrderDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'order_id': 'ord_ABC123xyz', 'fields_to_expand': ['customer', 'line_items'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_confirmation_token_info_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_confirmation_token_info_example_call_tool.js deleted file mode 100644 index 329c309f4..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_confirmation_token_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetConfirmationTokenInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "confirmation_token": "ctok_1JH2abC3deFghIjK", - "fields_to_expand": [ - "payment_method", - "customer" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_confirmation_token_info_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_confirmation_token_info_example_call_tool.py deleted file mode 100644 index 7c2a1adfa..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_confirmation_token_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetConfirmationTokenInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'confirmation_token': 'ctok_1JH2abC3deFghIjK', 'fields_to_expand': ['payment_method', 'customer'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_country_specifications_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_country_specifications_example_call_tool.js deleted file mode 100644 index c465a23e1..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_country_specifications_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCountrySpecifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "country_code": "US", - "fields_to_expand": [ - "address_format", - "bank_account_rules" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_country_specifications_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_country_specifications_example_call_tool.py deleted file mode 100644 index 62bfa439c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_country_specifications_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCountrySpecifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'country_code': 'US', 'fields_to_expand': ['address_format', 'bank_account_rules'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_coupon_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_coupon_details_example_call_tool.js deleted file mode 100644 index 36019c56c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_coupon_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCouponDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "coupon_id": "coupon_1A2b3C4d5E6f", - "expanded_fields": [ - "metadata", - "applies_to" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_coupon_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_coupon_details_example_call_tool.py deleted file mode 100644 index fcf2085d0..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_coupon_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCouponDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'coupon_id': 'coupon_1A2b3C4d5E6f', 'expanded_fields': ['metadata', 'applies_to'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_credit_balance_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_credit_balance_transaction_example_call_tool.js deleted file mode 100644 index 584fbce5d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_credit_balance_transaction_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCreditBalanceTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transaction_id": "cbtxn_12345abcde", - "fields_to_expand": [ - "customer", - "refunds" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_credit_balance_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_credit_balance_transaction_example_call_tool.py deleted file mode 100644 index 23cf03e96..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_credit_balance_transaction_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCreditBalanceTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transaction_id': 'cbtxn_12345abcde', 'fields_to_expand': ['customer', 'refunds'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_credit_balance_transactions_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_credit_balance_transactions_example_call_tool.js deleted file mode 100644 index 895df84de..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_credit_balance_transactions_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCreditBalanceTransactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz", - "credit_grant_id": "cgrant_01F2gh", - "pagination_ending_cursor": "cbtxn_0001", - "fields_to_expand": [ - "credit_grant", - "invoice" - ], - "max_transactions_to_return": 25, - "pagination_starting_after": "cbtxn_0025" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_credit_balance_transactions_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_credit_balance_transactions_example_call_tool.py deleted file mode 100644 index 9a8633fb3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_credit_balance_transactions_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCreditBalanceTransactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz', - 'credit_grant_id': 'cgrant_01F2gh', - 'pagination_ending_cursor': 'cbtxn_0001', - 'fields_to_expand': ['credit_grant', 'invoice'], - 'max_transactions_to_return': 25, - 'pagination_starting_after': 'cbtxn_0025' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_credit_reversal_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_credit_reversal_details_example_call_tool.js deleted file mode 100644 index 03bd8fc05..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_credit_reversal_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCreditReversalDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "credit_reversal_id": "cr_123abc456def", - "fields_to_expand": [ - "merchant", - "original_transaction" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_credit_reversal_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_credit_reversal_details_example_call_tool.py deleted file mode 100644 index 37a08053b..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_credit_reversal_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCreditReversalDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'credit_reversal_id': 'cr_123abc456def', 'fields_to_expand': ['merchant', 'original_transaction'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_credit_reversals_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_credit_reversals_example_call_tool.js deleted file mode 100644 index e491b73a3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_credit_reversals_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCreditReversals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "financial_account_id": "fa_12345ABCDE", - "pagination_ending_before": "cr_98765XYZ", - "fields_to_expand": [ - "received_credit", - "financial_account" - ], - "max_objects_returned": 25, - "filter_by_received_credit_id": "rc_54321LMN", - "pagination_starting_after_cursor": "cr_12345NEXT", - "credit_reversal_status": "processing" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_credit_reversals_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_credit_reversals_example_call_tool.py deleted file mode 100644 index 4a7b9c2c9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_credit_reversals_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCreditReversals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'financial_account_id': 'fa_12345ABCDE', - 'pagination_ending_before': 'cr_98765XYZ', - 'fields_to_expand': ['received_credit', 'financial_account'], - 'max_objects_returned': 25, - 'filter_by_received_credit_id': 'rc_54321LMN', - 'pagination_starting_after_cursor': 'cr_12345NEXT', - 'credit_reversal_status': 'processing' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_current_account_balance_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_current_account_balance_example_call_tool.js deleted file mode 100644 index 38b54e7d1..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_current_account_balance_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCurrentAccountBalance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "fields_to_expand": [ - "available", - "pending" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_current_account_balance_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_current_account_balance_example_call_tool.py deleted file mode 100644 index 24c35a7e9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_current_account_balance_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCurrentAccountBalance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'fields_to_expand': ['available', 'pending'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_balance_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_customer_balance_transaction_example_call_tool.js deleted file mode 100644 index 691ab9568..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_balance_transaction_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCustomerBalanceTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_J5k9a1b2c3d4e", - "transaction_id": "cbtxn_1MXYZ2AbCdEfGhIJ", - "fields_to_expand": [ - "balance_transaction", - "invoice" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_balance_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_customer_balance_transaction_example_call_tool.py deleted file mode 100644 index 2dbe0b154..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_balance_transaction_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCustomerBalanceTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_J5k9a1b2c3d4e', - 'transaction_id': 'cbtxn_1MXYZ2AbCdEfGhIJ', - 'fields_to_expand': ['balance_transaction', 'invoice'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_balance_transactions_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_customer_balance_transactions_example_call_tool.js deleted file mode 100644 index e031b2621..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_balance_transactions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCustomerBalanceTransactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz", - "result_limit": 20, - "fields_to_expand": [ - "data.source", - "data.invoice" - ], - "pagination_starting_after_cursor": "txn_001122" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_balance_transactions_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_customer_balance_transactions_example_call_tool.py deleted file mode 100644 index cdd6a9932..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_balance_transactions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCustomerBalanceTransactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz', - 'result_limit': 20, - 'fields_to_expand': ['data.source', 'data.invoice'], - 'pagination_starting_after_cursor': 'txn_001122' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_bank_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_customer_bank_account_details_example_call_tool.js deleted file mode 100644 index 4e12f5d87..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_bank_account_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCustomerBankAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz", - "bank_account_id": "ba_01F2G3H4I5J6K7L8", - "fields_to_expand": [ - "metadata", - "holder_name" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_bank_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_customer_bank_account_details_example_call_tool.py deleted file mode 100644 index b2580280d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_bank_account_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCustomerBankAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz', - 'bank_account_id': 'ba_01F2G3H4I5J6K7L8', - 'fields_to_expand': ['metadata', 'holder_name'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_bank_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_customer_bank_accounts_example_call_tool.js deleted file mode 100644 index 0b75d696e..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_bank_accounts_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCustomerBankAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cust_abc123", - "pagination_ending_before": "ba_000oldcursor", - "fields_to_expand": [ - "owner", - "bank_details" - ], - "result_limit": 25, - "pagination_cursor_starting_after": "ba_000newcursor" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_bank_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_customer_bank_accounts_example_call_tool.py deleted file mode 100644 index 84800ff5f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_bank_accounts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCustomerBankAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cust_abc123', - 'pagination_ending_before': 'ba_000oldcursor', - 'fields_to_expand': ['owner', 'bank_details'], - 'result_limit': 25, - 'pagination_cursor_starting_after': 'ba_000newcursor' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_card_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_customer_card_details_example_call_tool.js deleted file mode 100644 index 90a1c6052..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_card_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCustomerCardDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz", - "card_id": "card_01FGhI2jK", - "fields_to_expand": [ - "billing_address", - "metadata" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_card_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_customer_card_details_example_call_tool.py deleted file mode 100644 index beb5cdfda..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_card_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCustomerCardDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz', - 'card_id': 'card_01FGhI2jK', - 'fields_to_expand': ['billing_address', 'metadata'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_cards_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_customer_cards_example_call_tool.js deleted file mode 100644 index 9de104481..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_cards_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCustomerCards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz", - "pagination_ending_before": "card_000old", - "fields_to_expand": [ - "data.billing_details", - "data.wallet" - ], - "card_retrieval_limit": 25, - "pagination_starting_after_cursor": "card_000next" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_cards_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_customer_cards_example_call_tool.py deleted file mode 100644 index 847136696..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_cards_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCustomerCards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz', - 'pagination_ending_before': 'card_000old', - 'fields_to_expand': ['data.billing_details', 'data.wallet'], - 'card_retrieval_limit': 25, - 'pagination_starting_after_cursor': 'card_000next' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_cash_balance_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_customer_cash_balance_example_call_tool.js deleted file mode 100644 index eca0e5447..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_cash_balance_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCustomerCashBalance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_1234567890abcdef", - "fields_to_expand": [ - "settings", - "balances" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_cash_balance_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_customer_cash_balance_example_call_tool.py deleted file mode 100644 index 9e6d24198..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_cash_balance_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCustomerCashBalance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_1234567890abcdef', 'fields_to_expand': ['settings', 'balances'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_cash_balance_transactions_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_customer_cash_balance_transactions_example_call_tool.js deleted file mode 100644 index bf22fdb5c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_cash_balance_transactions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCustomerCashBalanceTransactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz", - "transaction_limit": 25, - "expand_fields": [ - "balance_transaction", - "invoice" - ], - "pagination_starting_after_cursor": "tx_0009" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_cash_balance_transactions_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_customer_cash_balance_transactions_example_call_tool.py deleted file mode 100644 index 6c455fd84..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_cash_balance_transactions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCustomerCashBalanceTransactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz', - 'transaction_limit': 25, - 'expand_fields': ['balance_transaction', 'invoice'], - 'pagination_starting_after_cursor': 'tx_0009' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_payment_method_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_customer_payment_method_example_call_tool.js deleted file mode 100644 index 1dd3c97a2..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_payment_method_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCustomerPaymentMethod"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_J5k9a1b2c3D4eF", - "payment_method_id": "pm_1KxYzL2e3fGhI9J0", - "fields_to_expand": [ - "card", - "billing_details" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_payment_method_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_customer_payment_method_example_call_tool.py deleted file mode 100644 index 53d72c822..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_payment_method_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCustomerPaymentMethod" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_J5k9a1b2c3D4eF', - 'payment_method_id': 'pm_1KxYzL2e3fGhI9J0', - 'fields_to_expand': ['card', 'billing_details'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_payment_methods_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_customer_payment_methods_example_call_tool.js deleted file mode 100644 index 1a1c37212..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_payment_methods_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCustomerPaymentMethods"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz", - "enable_redisplay_setting": "limited", - "pagination_ending_before_id": "pm_000987", - "response_fields_to_expand": [ - "data.card", - "data.billing_details" - ], - "max_payment_methods_returned": 20, - "pagination_starting_after_cursor": "pm_000450", - "payment_method_type_filter": "card" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_payment_methods_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_customer_payment_methods_example_call_tool.py deleted file mode 100644 index e980ffe54..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_payment_methods_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCustomerPaymentMethods" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz', - 'enable_redisplay_setting': 'limited', - 'pagination_ending_before_id': 'pm_000987', - 'response_fields_to_expand': ['data.card', 'data.billing_details'], - 'max_payment_methods_returned': 20, - 'pagination_starting_after_cursor': 'pm_000450', - 'payment_method_type_filter': 'card' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_portal_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_customer_portal_configuration_example_call_tool.js deleted file mode 100644 index 595c842f8..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_portal_configuration_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCustomerPortalConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "configuration_id": "cfg_12345abcde", - "expand_fields_in_response": [ - "features", - "pricing_tiers" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_portal_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_customer_portal_configuration_example_call_tool.py deleted file mode 100644 index c5e7826fd..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_portal_configuration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCustomerPortalConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'configuration_id': 'cfg_12345abcde', 'expand_fields_in_response': ['features', 'pricing_tiers'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_customer_subscriptions_example_call_tool.js deleted file mode 100644 index 8835b3f7f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_subscriptions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCustomerSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cust_12345", - "subscription_limit": 20, - "fields_to_expand": [ - "latest_invoice", - "plan.product" - ], - "pagination_starting_after_object_id": "sub_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_customer_subscriptions_example_call_tool.py deleted file mode 100644 index 35f296b7c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_subscriptions_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCustomerSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cust_12345', - 'subscription_limit': 20, - 'fields_to_expand': ['latest_invoice', 'plan.product'], - 'pagination_starting_after_object_id': 'sub_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_tax_id_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_customer_tax_id_example_call_tool.js deleted file mode 100644 index 45c1be94b..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_tax_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCustomerTaxId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_identifier": "cus_12345", - "tax_id_identifier": "txi_67890", - "expand_response_fields": [ - "verification", - "metadata" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_tax_id_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_customer_tax_id_example_call_tool.py deleted file mode 100644 index 483d44cdb..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_tax_id_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCustomerTaxId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_identifier': 'cus_12345', - 'tax_id_identifier': 'txi_67890', - 'expand_response_fields': ['verification', 'metadata'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_tax_ids_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_customer_tax_ids_example_call_tool.js deleted file mode 100644 index 5b64d3c8c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_tax_ids_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetCustomerTaxIds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz", - "expand_fields": [ - "data.verifications" - ], - "max_number_of_tax_ids": 5, - "pagination_starting_after": "txi_0001", - "pagination_ending_before": "txi_0099" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_customer_tax_ids_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_customer_tax_ids_example_call_tool.py deleted file mode 100644 index 3770f2f41..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_customer_tax_ids_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetCustomerTaxIds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz', - 'expand_fields': ['data.verifications'], - 'max_number_of_tax_ids': 5, - 'pagination_starting_after': 'txi_0001', - 'pagination_ending_before': 'txi_0099' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_debit_reversals_list_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_debit_reversals_list_example_call_tool.js deleted file mode 100644 index ee7e4ff23..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_debit_reversals_list_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetDebitReversalsList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "financial_account_id": "fa_12345", - "pagination_ending_before_cursor": "dr_abcde_prev", - "fields_to_expand": [ - "received_debit", - "transaction" - ], - "max_number_of_debit_reversals": 25, - "filter_by_received_debit_id": "rd_67890", - "resolution_status": "lost", - "pagination_starting_after_cursor": "dr_fghij_next", - "filter_by_status": "completed" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_debit_reversals_list_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_debit_reversals_list_example_call_tool.py deleted file mode 100644 index 49bd288f1..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_debit_reversals_list_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetDebitReversalsList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'financial_account_id': 'fa_12345', - 'pagination_ending_before_cursor': 'dr_abcde_prev', - 'fields_to_expand': ['received_debit', 'transaction'], - 'max_number_of_debit_reversals': 25, - 'filter_by_received_debit_id': 'rd_67890', - 'resolution_status': 'lost', - 'pagination_starting_after_cursor': 'dr_fghij_next', - 'filter_by_status': 'completed' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_deprecated_exchange_rates_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_deprecated_exchange_rates_example_call_tool.js deleted file mode 100644 index cb8b525c4..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_deprecated_exchange_rates_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetDeprecatedExchangeRates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "currency_rate_id": "USD", - "expand_fields": [ - "rates", - "data" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_deprecated_exchange_rates_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_deprecated_exchange_rates_example_call_tool.py deleted file mode 100644 index c0477edc2..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_deprecated_exchange_rates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetDeprecatedExchangeRates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'currency_rate_id': 'USD', 'expand_fields': ['rates', 'data'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_exchange_rates_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_exchange_rates_example_call_tool.js deleted file mode 100644 index 8831d41f2..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_exchange_rates_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetExchangeRates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_starting_currency": "EUR", - "result_limit": 5, - "response_fields_to_expand": [ - "rates.usd", - "rates.gbp" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_exchange_rates_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_exchange_rates_example_call_tool.py deleted file mode 100644 index 22444be45..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_exchange_rates_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetExchangeRates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_starting_currency': 'EUR', - 'result_limit': 5, - 'response_fields_to_expand': ['rates.usd', 'rates.gbp'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_external_bank_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_external_bank_account_details_example_call_tool.js deleted file mode 100644 index 3d748cd27..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_external_bank_account_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetExternalBankAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_id": "acct_12345", - "external_account_id": "ba_98765", - "fields_to_expand": [ - "bank_name", - "metadata" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_external_bank_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_external_bank_account_details_example_call_tool.py deleted file mode 100644 index 567bcce96..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_external_bank_account_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetExternalBankAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_id': 'acct_12345', - 'external_account_id': 'ba_98765', - 'fields_to_expand': ['bank_name', 'metadata'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_file_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_file_details_example_call_tool.js deleted file mode 100644 index 06f69d047..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_file_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetFileDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_id": "file_1K2l3M4n5O6p7Q8r", - "fields_to_expand": [ - "metadata", - "links" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_file_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_file_details_example_call_tool.py deleted file mode 100644 index 7119e0d8a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_file_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetFileDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_id': 'file_1K2l3M4n5O6p7Q8r', 'fields_to_expand': ['metadata', 'links'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_details_example_call_tool.js deleted file mode 100644 index 25d2318d3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetFinancialAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "financial_account_id": "fa_123456789", - "fields_to_expand": [ - "transactions", - "owner", - "metadata" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_details_example_call_tool.py deleted file mode 100644 index 4d72c7007..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetFinancialAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'financial_account_id': 'fa_123456789', 'fields_to_expand': ['transactions', 'owner', 'metadata'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_features_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_features_example_call_tool.js deleted file mode 100644 index 37dd797b8..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_features_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetFinancialAccountFeatures"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "financial_account_id": "fa_1JXyZa2eZvKYlo2C9b0xYzAb", - "expand_response_fields": [ - "features", - "owner_account" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_features_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_features_example_call_tool.py deleted file mode 100644 index a052c3f44..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_features_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetFinancialAccountFeatures" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'financial_account_id': 'fa_1JXyZa2eZvKYlo2C9b0xYzAb', - 'expand_response_fields': ['features', 'owner_account'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_owners_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_owners_example_call_tool.js deleted file mode 100644 index 3751324ea..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_owners_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetFinancialAccountOwners"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ownership_object_id": "own_abc123", - "account_id": "acct_987654", - "object_limit": 25, - "fields_to_expand": [ - "owner_details", - "verification_status" - ], - "pagination_starting_after_cursor": "owner_00045" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_owners_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_owners_example_call_tool.py deleted file mode 100644 index ad91e6612..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_financial_account_owners_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetFinancialAccountOwners" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ownership_object_id': 'own_abc123', - 'account_id': 'acct_987654', - 'object_limit': 25, - 'fields_to_expand': ['owner_details', 'verification_status'], - 'pagination_starting_after_cursor': 'owner_00045' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_financial_connections_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_financial_connections_account_details_example_call_tool.js deleted file mode 100644 index e33736363..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_financial_connections_account_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetFinancialConnectionsAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "financial_account_identifier": "fa_1J2kLm3N4opQrStUvWxYz", - "fields_to_expand": [ - "balances", - "institution", - "owners" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_financial_connections_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_financial_connections_account_details_example_call_tool.py deleted file mode 100644 index b45521dce..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_financial_connections_account_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetFinancialConnectionsAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'financial_account_identifier': 'fa_1J2kLm3N4opQrStUvWxYz', - 'fields_to_expand': ['balances', 'institution', 'owners'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_financial_transaction_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_financial_transaction_details_example_call_tool.js deleted file mode 100644 index f7151d57d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_financial_transaction_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetFinancialTransactionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transaction_id": "txn_01H2X8Z9aBcDeFGhIjKl0", - "fields_to_expand": [ - "merchant", - "account" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_financial_transaction_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_financial_transaction_details_example_call_tool.py deleted file mode 100644 index c6005e8a6..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_financial_transaction_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetFinancialTransactionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transaction_id': 'txn_01H2X8Z9aBcDeFGhIjKl0', 'fields_to_expand': ['merchant', 'account'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_inbound_transfers_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_inbound_transfers_example_call_tool.js deleted file mode 100644 index 2daef5e43..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_inbound_transfers_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetInboundTransfers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "financial_account_id": "fa_123456789", - "pagination_ending_before_id": "it_987654321", - "expand_response_fields": [ - "data.source_transaction", - "data.destination_payment_method" - ], - "transfer_limit": 25, - "pagination_starting_after_object_id": "it_123450987", - "filter_by_transfer_status": "succeeded" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_inbound_transfers_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_inbound_transfers_example_call_tool.py deleted file mode 100644 index 9cc278aee..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_inbound_transfers_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetInboundTransfers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'financial_account_id': 'fa_123456789', - 'pagination_ending_before_id': 'it_987654321', - 'expand_response_fields': ['data.source_transaction', 'data.destination_payment_method'], - 'transfer_limit': 25, - 'pagination_starting_after_object_id': 'it_123450987', - 'filter_by_transfer_status': 'succeeded' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_invoice_item_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_invoice_item_details_example_call_tool.js deleted file mode 100644 index e15a8093f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_invoice_item_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetInvoiceItemDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_item_id": "ii_1J2kLm3N4oPqRsTuVwXyZabC", - "fields_to_expand": [ - "customer", - "subscription" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_invoice_item_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_invoice_item_details_example_call_tool.py deleted file mode 100644 index 1eeaf856d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_invoice_item_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetInvoiceItemDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_item_id': 'ii_1J2kLm3N4oPqRsTuVwXyZabC', 'fields_to_expand': ['customer', 'subscription'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_invoice_line_items_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_invoice_line_items_example_call_tool.js deleted file mode 100644 index ee00d5479..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_invoice_line_items_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetInvoiceLineItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_id": "inv_12345ABC", - "pagination_ending_before_cursor": "li_98765YXZ", - "fields_to_expand": [ - "subscription", - "price.product" - ], - "max_line_items_to_return": 25, - "pagination_start_after": "li_12345DEF" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_invoice_line_items_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_invoice_line_items_example_call_tool.py deleted file mode 100644 index 9e553d232..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_invoice_line_items_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetInvoiceLineItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_id': 'inv_12345ABC', - 'pagination_ending_before_cursor': 'li_98765YXZ', - 'fields_to_expand': ['subscription', 'price.product'], - 'max_line_items_to_return': 25, - 'pagination_start_after': 'li_12345DEF' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_invoice_rendering_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_invoice_rendering_templates_example_call_tool.js deleted file mode 100644 index d63d76d7d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_invoice_rendering_templates_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetInvoiceRenderingTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_ending_before": "tpl_00123", - "fields_to_expand": [ - "default_layout", - "owner" - ], - "result_limit": 25, - "pagination_starting_after": "tpl_00100", - "template_status": "active" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_invoice_rendering_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_invoice_rendering_templates_example_call_tool.py deleted file mode 100644 index 3611bb4cb..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_invoice_rendering_templates_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetInvoiceRenderingTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_ending_before': 'tpl_00123', - 'fields_to_expand': ['default_layout', 'owner'], - 'result_limit': 25, - 'pagination_starting_after': 'tpl_00100', - 'template_status': 'active' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_issuing_card_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_issuing_card_details_example_call_tool.js deleted file mode 100644 index 6465a17ff..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_issuing_card_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetIssuingCardDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "ic_1JX2ab3CdEfGhIjK", - "fields_to_expand": [ - "brand", - "transactions" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_issuing_card_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_issuing_card_details_example_call_tool.py deleted file mode 100644 index 4a6963d9c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_issuing_card_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetIssuingCardDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': 'ic_1JX2ab3CdEfGhIjK', 'fields_to_expand': ['brand', 'transactions'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_issuing_token_info_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_issuing_token_info_example_call_tool.js deleted file mode 100644 index 0628c420c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_issuing_token_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetIssuingTokenInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "issuing_token_id": "itkn_1JXxY2AbCdEfGhIjKLmnOpQR", - "fields_to_expand": [ - "card", - "cardholder" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_issuing_token_info_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_issuing_token_info_example_call_tool.py deleted file mode 100644 index 718ca6c59..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_issuing_token_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetIssuingTokenInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'issuing_token_id': 'itkn_1JXxY2AbCdEfGhIjKLmnOpQR', 'fields_to_expand': ['card', 'cardholder'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_latest_physical_bundles_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_latest_physical_bundles_example_call_tool.js deleted file mode 100644 index fddb9ff25..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_latest_physical_bundles_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetLatestPhysicalBundles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "number_of_bundles_limit": 25, - "fields_to_expand": [ - "creator", - "items" - ], - "filter_status": "active", - "filter_by_bundle_type": "custom", - "pagination_starting_after_id": "pb_1JqYzZ2eZvKYlo2C9a1b2c3d" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_latest_physical_bundles_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_latest_physical_bundles_example_call_tool.py deleted file mode 100644 index 7242a6b46..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_latest_physical_bundles_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetLatestPhysicalBundles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'number_of_bundles_limit': 25, - 'fields_to_expand': ['creator', 'items'], - 'filter_status': 'active', - 'filter_by_bundle_type': 'custom', - 'pagination_starting_after_id': 'pb_1JqYzZ2eZvKYlo2C9a1b2c3d' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_linked_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_linked_account_details_example_call_tool.js deleted file mode 100644 index 2227bd762..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_linked_account_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetLinkedAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_id": "fcon_1Hh1YZ2eZvKYlo2C3abc123", - "expand_fields": [ - "owner", - "balances" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_linked_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_linked_account_details_example_call_tool.py deleted file mode 100644 index e3ddf4d8c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_linked_account_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetLinkedAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_id': 'fcon_1Hh1YZ2eZvKYlo2C3abc123', 'expand_fields': ['owner', 'balances'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_linked_account_owners_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_linked_account_owners_example_call_tool.js deleted file mode 100644 index 0d7132cc9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_linked_account_owners_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetLinkedAccountOwners"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ownership_object_id": "ownobj_12345", - "linked_account_id": "acct_67890", - "number_of_owners_to_return": 25, - "expanded_fields": [ - "email", - "role" - ], - "pagination_starting_after": "owner_100", - "pagination_ending_before": "owner_075" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_linked_account_owners_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_linked_account_owners_example_call_tool.py deleted file mode 100644 index 6bb2899b3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_linked_account_owners_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetLinkedAccountOwners" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ownership_object_id': 'ownobj_12345', - 'linked_account_id': 'acct_67890', - 'number_of_owners_to_return': 25, - 'expanded_fields': ['email', 'role'], - 'pagination_starting_after': 'owner_100', - 'pagination_ending_before': 'owner_075' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_outbound_transfer_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_outbound_transfer_details_example_call_tool.js deleted file mode 100644 index c02bfe812..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_outbound_transfer_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetOutboundTransferDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "outbound_transfer_id": "ot_1234567890abcdef", - "fields_to_expand": [ - "destination_payment_method", - "related_transactions" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_outbound_transfer_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_outbound_transfer_details_example_call_tool.py deleted file mode 100644 index 342e63377..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_outbound_transfer_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetOutboundTransferDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'outbound_transfer_id': 'ot_1234567890abcdef', - 'fields_to_expand': ['destination_payment_method', 'related_transactions'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_outbound_transfers_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_outbound_transfers_example_call_tool.js deleted file mode 100644 index 54668cc1a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_outbound_transfers_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetOutboundTransfers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "financial_account_id": "fa_123456789", - "limit_transfers": 25, - "fields_to_expand": [ - "destination_payment_method", - "failure_details" - ], - "pagination_starting_after": "ot_987654321", - "outbound_transfer_status_filter": "posted" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_outbound_transfers_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_outbound_transfers_example_call_tool.py deleted file mode 100644 index 824831ab0..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_outbound_transfers_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetOutboundTransfers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'financial_account_id': 'fa_123456789', - 'limit_transfers': 25, - 'fields_to_expand': ['destination_payment_method', 'failure_details'], - 'pagination_starting_after': 'ot_987654321', - 'outbound_transfer_status_filter': 'posted' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_payment_link_line_items_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_payment_link_line_items_example_call_tool.js deleted file mode 100644 index b90c38d11..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_payment_link_line_items_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetPaymentLinkLineItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_link_id": "plink_1ExampleA2b3C4d5", - "item_limit": 5, - "fields_to_expand": [ - "data.price.product", - "data.price.tier" - ], - "pagination_starting_after": "li_1ExampleLastItem", - "pagination_ending_before": "li_1ExamplePrevItem" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_payment_link_line_items_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_payment_link_line_items_example_call_tool.py deleted file mode 100644 index e2f1b2c68..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_payment_link_line_items_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetPaymentLinkLineItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_link_id': 'plink_1ExampleA2b3C4d5', - 'item_limit': 5, - 'fields_to_expand': ['data.price.product', 'data.price.tier'], - 'pagination_starting_after': 'li_1ExampleLastItem', - 'pagination_ending_before': 'li_1ExamplePrevItem' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_payment_method_domain_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_payment_method_domain_details_example_call_tool.js deleted file mode 100644 index 97f19c3c6..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_payment_method_domain_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetPaymentMethodDomainDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_method_domain_id": "pm_domain_12345", - "fields_to_expand": [ - "ownership_verification", - "settings" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_payment_method_domain_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_payment_method_domain_details_example_call_tool.py deleted file mode 100644 index 6e0a0600d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_payment_method_domain_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetPaymentMethodDomainDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_method_domain_id': 'pm_domain_12345', - 'fields_to_expand': ['ownership_verification', 'settings'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_product_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_product_details_example_call_tool.js deleted file mode 100644 index fd3c490da..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_product_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetProductDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_id": "prod_ABC123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_product_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_product_details_example_call_tool.py deleted file mode 100644 index a503afde5..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_product_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetProductDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_id': 'prod_ABC123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_product_feature_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_product_feature_details_example_call_tool.js deleted file mode 100644 index ec5a2d5e7..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_product_feature_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetProductFeatureDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_feature_id": "feat_98765", - "product_id": "prod_12345", - "fields_to_expand": [ - "owner", - "pricing", - "auditTrail" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_product_feature_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_product_feature_details_example_call_tool.py deleted file mode 100644 index 98218a462..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_product_feature_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetProductFeatureDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_feature_id': 'feat_98765', - 'product_id': 'prod_12345', - 'fields_to_expand': ['owner', 'pricing', 'auditTrail'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_product_features_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_product_features_example_call_tool.js deleted file mode 100644 index 2a9dbede9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_product_features_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetProductFeatures"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_id": "prod_ABC123", - "pagination_ending_cursor": "feat_0009", - "fields_to_expand": [ - "metadata", - "pricing_tiers" - ], - "number_of_features_to_return": 10, - "pagination_starting_after_cursor": "feat_0019" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_product_features_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_product_features_example_call_tool.py deleted file mode 100644 index fa0bfe280..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_product_features_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetProductFeatures" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_id': 'prod_ABC123', - 'pagination_ending_cursor': 'feat_0009', - 'fields_to_expand': ['metadata', 'pricing_tiers'], - 'number_of_features_to_return': 10, - 'pagination_starting_after_cursor': 'feat_0019' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_promotion_code_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_promotion_code_details_example_call_tool.js deleted file mode 100644 index bbbaec739..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_promotion_code_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetPromotionCodeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "promotion_code_id": "promo_ABC12345", - "fields_to_expand": [ - "coupon", - "customer" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_promotion_code_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_promotion_code_details_example_call_tool.py deleted file mode 100644 index bf8cdde44..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_promotion_code_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetPromotionCodeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'promotion_code_id': 'promo_ABC12345', 'fields_to_expand': ['coupon', 'customer'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_quote_line_items_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_quote_line_items_example_call_tool.js deleted file mode 100644 index e0e01f42d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_quote_line_items_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetQuoteLineItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "quote_identifier": "qt_12345ABC", - "pagination_cursor_ending_before": "li_98765XYZ", - "fields_to_expand": [ - "product", - "pricing_details" - ], - "max_items_to_return": 25, - "pagination_starting_after_cursor": "li_12345DEF" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_quote_line_items_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_quote_line_items_example_call_tool.py deleted file mode 100644 index e46e164fd..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_quote_line_items_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetQuoteLineItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'quote_identifier': 'qt_12345ABC', - 'pagination_cursor_ending_before': 'li_98765XYZ', - 'fields_to_expand': ['product', 'pricing_details'], - 'max_items_to_return': 25, - 'pagination_starting_after_cursor': 'li_12345DEF' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_received_credit_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_received_credit_details_example_call_tool.js deleted file mode 100644 index 6c0076c40..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_received_credit_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetReceivedCreditDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "received_credit_id": "rc_1J2aBcD4eFgHiJkL", - "fields_to_expand": [ - "incoming_transaction", - "account" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_received_credit_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_received_credit_details_example_call_tool.py deleted file mode 100644 index 7c2c3dfba..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_received_credit_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetReceivedCreditDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'received_credit_id': 'rc_1J2aBcD4eFgHiJkL', - 'fields_to_expand': ['incoming_transaction', 'account'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_received_debits_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_received_debits_example_call_tool.js deleted file mode 100644 index 9fa47e959..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_received_debits_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetReceivedDebits"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "financial_account_id": "fa_12345ABC", - "max_number_of_debits": 25, - "expand_fields": [ - "data.transaction", - "data.network_details" - ], - "debit_status_filter": "succeeded", - "pagination_starting_after": "rd_98765XYZ" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_received_debits_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_received_debits_example_call_tool.py deleted file mode 100644 index 1081dcc40..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_received_debits_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetReceivedDebits" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'financial_account_id': 'fa_12345ABC', - 'max_number_of_debits': 25, - 'expand_fields': ['data.transaction', 'data.network_details'], - 'debit_status_filter': 'succeeded', - 'pagination_starting_after': 'rd_98765XYZ' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_report_run_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_report_run_details_example_call_tool.js deleted file mode 100644 index 036709b26..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_report_run_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetReportRunDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "report_run_id": "rpt_run_1A2b3C4d5E6f", - "fields_to_expand": [ - "result", - "error" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_report_run_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_report_run_details_example_call_tool.py deleted file mode 100644 index 2586c83ae..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_report_run_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetReportRunDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'report_run_id': 'rpt_run_1A2b3C4d5E6f', 'fields_to_expand': ['result', 'error'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_review_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_review_details_example_call_tool.js deleted file mode 100644 index fb95ccbe9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_review_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetReviewDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "review_identifier": "prv_1J2kLm3NoPqRsTuvWXyZabC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_review_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_review_details_example_call_tool.py deleted file mode 100644 index 0fe79bda9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_review_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetReviewDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'review_identifier': 'prv_1J2kLm3NoPqRsTuvWXyZabC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_scheduled_query_runs_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_scheduled_query_runs_example_call_tool.js deleted file mode 100644 index 2382c82db..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_scheduled_query_runs_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetScheduledQueryRuns"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor_ending_before": "sqr_12345abcde", - "fields_to_expand": [ - "scheduled_query", - "result_file" - ], - "object_limit": 25, - "pagination_starting_after": "sqr_12340vwxyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_scheduled_query_runs_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_scheduled_query_runs_example_call_tool.py deleted file mode 100644 index d5122e522..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_scheduled_query_runs_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetScheduledQueryRuns" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor_ending_before': 'sqr_12345abcde', - 'fields_to_expand': ['scheduled_query', 'result_file'], - 'object_limit': 25, - 'pagination_starting_after': 'sqr_12340vwxyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_source_transactions_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_source_transactions_example_call_tool.js deleted file mode 100644 index a0c134667..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_source_transactions_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetSourceTransactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "source_id": "src_1A2b3C4d5E", - "pagination_ending_before": "txn_0001", - "fields_to_expand": [ - "source.charge", - "customer" - ], - "transaction_limit": 25, - "pagination_starting_after": "txn_0025" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_source_transactions_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_source_transactions_example_call_tool.py deleted file mode 100644 index 72b026817..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_source_transactions_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetSourceTransactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'source_id': 'src_1A2b3C4d5E', - 'pagination_ending_before': 'txn_0001', - 'fields_to_expand': ['source.charge', 'customer'], - 'transaction_limit': 25, - 'pagination_starting_after': 'txn_0025' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_specific_transfer_reversal_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_specific_transfer_reversal_details_example_call_tool.js deleted file mode 100644 index 76643690c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_specific_transfer_reversal_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetSpecificTransferReversalDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "reversal_id": "trr_12345abcd", - "transfer_id": "trf_67890wxyz", - "expand_fields": [ - "balance_transaction", - "destination_payment" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_specific_transfer_reversal_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_specific_transfer_reversal_details_example_call_tool.py deleted file mode 100644 index 75e3bdf16..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_specific_transfer_reversal_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetSpecificTransferReversalDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'reversal_id': 'trr_12345abcd', - 'transfer_id': 'trf_67890wxyz', - 'expand_fields': ['balance_transaction', 'destination_payment'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_account_details_example_call_tool.js deleted file mode 100644 index 375911b33..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_account_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetStripeAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "expand_fields": [ - "business_profile", - "settings.payouts", - "requirements" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_account_details_example_call_tool.py deleted file mode 100644 index f8d0f3904..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_account_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetStripeAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'expand_fields': ['business_profile', 'settings.payouts', 'requirements'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_entitlement_features_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_entitlement_features_example_call_tool.js deleted file mode 100644 index 8f1005c57..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_entitlement_features_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetStripeEntitlementFeatures"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_ending_before": "feat_01HxyzABCdef", - "fields_to_expand": [ - "metadata", - "pricing_details" - ], - "object_return_limit": 25, - "filter_by_lookup_key": "beta_access", - "pagination_starting_after": "feat_01HuvwXYZghi", - "include_archived_features": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_entitlement_features_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_entitlement_features_example_call_tool.py deleted file mode 100644 index 1374e71aa..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_entitlement_features_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetStripeEntitlementFeatures" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_ending_before': 'feat_01HxyzABCdef', - 'fields_to_expand': ['metadata', 'pricing_details'], - 'object_return_limit': 25, - 'filter_by_lookup_key': 'beta_access', - 'pagination_starting_after': 'feat_01HuvwXYZghi', - 'include_archived_features': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_external_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_external_account_details_example_call_tool.js deleted file mode 100644 index 5a083e3d4..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_external_account_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetStripeExternalAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "stripe_account_id": "acct_1ExampleA2b3C4d5", - "external_account_id": "ba_1Fexample6G7h8I9", - "fields_to_expand": [ - "customer", - "metadata" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_external_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_external_account_details_example_call_tool.py deleted file mode 100644 index 49fea8451..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_external_account_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetStripeExternalAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'stripe_account_id': 'acct_1ExampleA2b3C4d5', - 'external_account_id': 'ba_1Fexample6G7h8I9', - 'fields_to_expand': ['customer', 'metadata'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_payment_links_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_payment_links_example_call_tool.js deleted file mode 100644 index 3bf07b47a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_payment_links_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetStripePaymentLinks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_ending_before": "plink_1A2b3C4d5E", - "fields_to_expand": [ - "data.line_items", - "data.url" - ], - "object_return_limit": 25, - "pagination_starting_after_cursor": "plink_9Z8y7X6w5V", - "include_active_payment_links": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_payment_links_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_payment_links_example_call_tool.py deleted file mode 100644 index 8021850d5..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_payment_links_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetStripePaymentLinks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_ending_before': 'plink_1A2b3C4d5E', - 'fields_to_expand': ['data.line_items', 'data.url'], - 'object_return_limit': 25, - 'pagination_starting_after_cursor': 'plink_9Z8y7X6w5V', - 'include_active_payment_links': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_payout_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_payout_details_example_call_tool.js deleted file mode 100644 index 18613fa0b..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_payout_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetStripePayoutDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payout_id": "po_1J2aBc3DeFGhijkLmnOPqrs4", - "fields_to_expand": [ - "destination", - "balance_transaction" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_payout_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_payout_details_example_call_tool.py deleted file mode 100644 index 62aaec07d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_payout_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetStripePayoutDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payout_id': 'po_1J2aBc3DeFGhijkLmnOPqrs4', - 'fields_to_expand': ['destination', 'balance_transaction'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_report_type_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_report_type_details_example_call_tool.js deleted file mode 100644 index 42129322a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_report_type_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetStripeReportTypeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "stripe_report_type_id": "activity.summary.1", - "fields_to_expand": [ - "data_sources", - "schema" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_report_type_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_report_type_details_example_call_tool.py deleted file mode 100644 index 8aaaec534..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_report_type_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetStripeReportTypeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'stripe_report_type_id': 'activity.summary.1', 'fields_to_expand': ['data_sources', 'schema'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_report_types_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_report_types_example_call_tool.js deleted file mode 100644 index ddff3219d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_report_types_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetStripeReportTypes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "expand_fields": [ - "data.columns", - "data.default_columns" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_report_types_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_report_types_example_call_tool.py deleted file mode 100644 index 53398b2b2..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_report_types_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetStripeReportTypes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'expand_fields': ['data.columns', 'data.default_columns'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_source_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_source_transaction_example_call_tool.js deleted file mode 100644 index 1e8a0dd78..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_source_transaction_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetStripeSourceTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "source_id": "src_1Gqj58LxYz9a2b", - "stripe_source_transaction_id": "stx_1HkY2PLx9aZ3b", - "fields_to_expand": [ - "customer", - "source.owner" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_source_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_source_transaction_example_call_tool.py deleted file mode 100644 index bbc5e535a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_source_transaction_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetStripeSourceTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'source_id': 'src_1Gqj58LxYz9a2b', - 'stripe_source_transaction_id': 'stx_1HkY2PLx9aZ3b', - 'fields_to_expand': ['customer', 'source.owner'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_webhook_endpoints_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_webhook_endpoints_example_call_tool.js deleted file mode 100644 index e7edeb59b..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_webhook_endpoints_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetStripeWebhookEndpoints"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_ending_before": "we_123prev", - "expand_fields": [ - "associated_objects", - "delivery_settings" - ], - "object_limit": 20, - "pagination_starting_after_id": "we_456next" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_webhook_endpoints_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_stripe_webhook_endpoints_example_call_tool.py deleted file mode 100644 index e67e5da63..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_stripe_webhook_endpoints_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetStripeWebhookEndpoints" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_ending_before': 'we_123prev', - 'expand_fields': ['associated_objects', 'delivery_settings'], - 'object_limit': 20, - 'pagination_starting_after_id': 'we_456next' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_subscription_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_subscription_details_example_call_tool.js deleted file mode 100644 index 28d45f43d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_subscription_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetSubscriptionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_12345abcde", - "fields_to_expand": [ - "customer", - "latest_invoice" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_subscription_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_subscription_details_example_call_tool.py deleted file mode 100644 index f22c6c529..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_subscription_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetSubscriptionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_12345abcde', 'fields_to_expand': ['customer', 'latest_invoice'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_subscription_discount_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_subscription_discount_example_call_tool.js deleted file mode 100644 index 40f33b1c8..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_subscription_discount_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetSubscriptionDiscount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_K7y2b1A9x0Qv4z", - "subscription_id": "sub_J3m9p2Lq8wR6tV", - "fields_to_expand": [ - "discount.coupon", - "invoice" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_subscription_discount_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_subscription_discount_example_call_tool.py deleted file mode 100644 index 479b9b1a1..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_subscription_discount_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetSubscriptionDiscount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_K7y2b1A9x0Qv4z', - 'subscription_id': 'sub_J3m9p2Lq8wR6tV', - 'fields_to_expand': ['discount.coupon', 'invoice'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_subscription_items_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_subscription_items_example_call_tool.js deleted file mode 100644 index ef769e7cb..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_subscription_items_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetSubscriptionItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_ABC123xyz", - "max_items_to_return": 25, - "expand_fields": [ - "price", - "plan" - ], - "pagination_starting_after": "si_0000000000001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_subscription_items_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_subscription_items_example_call_tool.py deleted file mode 100644 index 7ac6dc5f7..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_subscription_items_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetSubscriptionItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_ABC123xyz', - 'max_items_to_return': 25, - 'expand_fields': ['price', 'plan'], - 'pagination_starting_after': 'si_0000000000001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_tax_code_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_tax_code_details_example_call_tool.js deleted file mode 100644 index ebd6cdc90..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_tax_code_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetTaxCodeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tax_code_id": "txcd_12345", - "fields_to_expand": [ - "products", - "rates" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_tax_code_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_tax_code_details_example_call_tool.py deleted file mode 100644 index d23d4e2d3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_tax_code_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetTaxCodeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tax_code_id': 'txcd_12345', 'fields_to_expand': ['products', 'rates'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_tax_codes_list_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_tax_codes_list_example_call_tool.js deleted file mode 100644 index a2c536f42..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_tax_codes_list_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetTaxCodesList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor_ending_before": "txcd_1Kq9X2Example", - "fields_to_expand": [ - "data.product", - "data.tax_behavior" - ], - "object_return_limit": 25, - "pagination_starting_after_cursor": "txcd_1Kq9Y3Example" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_tax_codes_list_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_tax_codes_list_example_call_tool.py deleted file mode 100644 index d41915daa..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_tax_codes_list_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetTaxCodesList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor_ending_before': 'txcd_1Kq9X2Example', - 'fields_to_expand': ['data.product', 'data.tax_behavior'], - 'object_return_limit': 25, - 'pagination_starting_after_cursor': 'txcd_1Kq9Y3Example' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_tax_registration_info_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_tax_registration_info_example_call_tool.js deleted file mode 100644 index c32990d6c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_tax_registration_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetTaxRegistrationInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "registration_id": "reg_8a7f3c12", - "fields_to_expand": [ - "owner", - "addresses" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_tax_registration_info_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_tax_registration_info_example_call_tool.py deleted file mode 100644 index 9c4d5dcac..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_tax_registration_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetTaxRegistrationInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'registration_id': 'reg_8a7f3c12', 'fields_to_expand': ['owner', 'addresses'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_tax_registrations_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_tax_registrations_example_call_tool.js deleted file mode 100644 index a3f29b9c0..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_tax_registrations_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetTaxRegistrations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_ending_before": "tr_1JHabc2D3EfGhIjK", - "response_fields_to_expand": [ - "jurisdiction_details", - "entity_profile" - ], - "object_limit": 25, - "pagination_starting_after_object_id": "tr_1JHxyz9A0BcDeFgH", - "tax_registration_status": "active" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_tax_registrations_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_tax_registrations_example_call_tool.py deleted file mode 100644 index 68f273d49..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_tax_registrations_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetTaxRegistrations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_ending_before': 'tr_1JHabc2D3EfGhIjK', - 'response_fields_to_expand': ['jurisdiction_details', 'entity_profile'], - 'object_limit': 25, - 'pagination_starting_after_object_id': 'tr_1JHxyz9A0BcDeFgH', - 'tax_registration_status': 'active' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_tax_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_tax_settings_example_call_tool.js deleted file mode 100644 index 32dae93e3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_tax_settings_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetTaxSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "expand_fields": [ - "automatic_tax.status", - "tax_id_collection.enabled" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_tax_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_tax_settings_example_call_tool.py deleted file mode 100644 index f98991353..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_tax_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetTaxSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'expand_fields': ['automatic_tax.status', 'tax_id_collection.enabled'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_terminal_configurations_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_terminal_configurations_example_call_tool.js deleted file mode 100644 index b1b7fda28..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_terminal_configurations_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetTerminalConfigurations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_ending_before": "cfg_1Gq2xL2eZvKYlo2C0a1b2c3d", - "fields_to_expand": [ - "merchant_profile", - "device_settings" - ], - "maximum_objects_to_return": 25, - "pagination_starting_after_id": "cfg_1Gq2wK3eZvKYlo2C9d8e7f6g", - "only_return_account_default_configurations": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_terminal_configurations_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_terminal_configurations_example_call_tool.py deleted file mode 100644 index 457787c60..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_terminal_configurations_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetTerminalConfigurations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_ending_before': 'cfg_1Gq2xL2eZvKYlo2C0a1b2c3d', - 'fields_to_expand': ['merchant_profile', 'device_settings'], - 'maximum_objects_to_return': 25, - 'pagination_starting_after_id': 'cfg_1Gq2wK3eZvKYlo2C9d8e7f6g', - 'only_return_account_default_configurations': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_terminal_locations_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_terminal_locations_example_call_tool.js deleted file mode 100644 index 4d661264f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_terminal_locations_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetTerminalLocations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "results_limit": 10, - "fields_to_expand": [ - "address", - "devices" - ], - "pagination_starting_after": "loc_1GqIC8Iy0qyl6X" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_terminal_locations_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_terminal_locations_example_call_tool.py deleted file mode 100644 index 41512c523..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_terminal_locations_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetTerminalLocations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'results_limit': 10, - 'fields_to_expand': ['address', 'devices'], - 'pagination_starting_after': 'loc_1GqIC8Iy0qyl6X' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_terminal_readers_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_terminal_readers_example_call_tool.js deleted file mode 100644 index 07c3beaa5..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_terminal_readers_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetTerminalReaders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_device_type": "stripe_s700", - "object_return_limit": 25, - "filter_by_location_id": "loc_1A2b3C4d", - "filter_by_status": "online", - "expand_response_fields": [ - "configuration", - "last_connection" - ], - "pagination_start_object_id": "trr_0001", - "filter_by_serial_number": "SN12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_terminal_readers_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_terminal_readers_example_call_tool.py deleted file mode 100644 index 5c31b1418..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_terminal_readers_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetTerminalReaders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_device_type': 'stripe_s700', - 'object_return_limit': 25, - 'filter_by_location_id': 'loc_1A2b3C4d', - 'filter_by_status': 'online', - 'expand_response_fields': ['configuration', 'last_connection'], - 'pagination_start_object_id': 'trr_0001', - 'filter_by_serial_number': 'SN12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_test_clocks_list_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_test_clocks_list_example_call_tool.js deleted file mode 100644 index 3731a0d8a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_test_clocks_list_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetTestClocksList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_cursor_ending_before": "clock_1A2b3C", - "expand_response_fields": [ - "data.customer", - "data.pending_actions" - ], - "number_of_objects_limit": 25, - "pagination_starting_after_cursor": "clock_4D5e6F" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_test_clocks_list_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_test_clocks_list_example_call_tool.py deleted file mode 100644 index c65cf60a8..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_test_clocks_list_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetTestClocksList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_cursor_ending_before': 'clock_1A2b3C', - 'expand_response_fields': ['data.customer', 'data.pending_actions'], - 'number_of_objects_limit': 25, - 'pagination_starting_after_cursor': 'clock_4D5e6F' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_transaction_line_items_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_transaction_line_items_example_call_tool.js deleted file mode 100644 index 03845a851..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_transaction_line_items_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetTransactionLineItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transaction_id": "txn_1A2b3C4d5E6f", - "pagination_ending_id": "li_9Z8y7X6w5V", - "expand_fields": [ - "data.price.product", - "data.tax_rates" - ], - "number_of_items_to_return": 5, - "pagination_starting_after": "li_0A1b2C3d4E" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_transaction_line_items_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_transaction_line_items_example_call_tool.py deleted file mode 100644 index 56f5e27d7..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_transaction_line_items_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetTransactionLineItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transaction_id': 'txn_1A2b3C4d5E6f', - 'pagination_ending_id': 'li_9Z8y7X6w5V', - 'expand_fields': ['data.price.product', 'data.tax_rates'], - 'number_of_items_to_return': 5, - 'pagination_starting_after': 'li_0A1b2C3d4E' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_transfer_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_transfer_details_example_call_tool.js deleted file mode 100644 index 5196f7f62..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_transfer_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetTransferDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transfer_id": "trf_01H2ABCDEFGijklmno", - "fields_to_expand": [ - "recipient", - "metadata" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_transfer_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_transfer_details_example_call_tool.py deleted file mode 100644 index 87d6f2576..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_transfer_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetTransferDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transfer_id': 'trf_01H2ABCDEFGijklmno', 'fields_to_expand': ['recipient', 'metadata'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_transfer_reversals_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_transfer_reversals_example_call_tool.js deleted file mode 100644 index 3931916d9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_transfer_reversals_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetTransferReversals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transfer_id": "tr_1A2b3C4d5E6f7G8h", - "fetch_limit": 25, - "pagination_start_cursor": "trr_9Z8y7X6w5V4u3T2s", - "expand_fields_in_response": [ - "balance_transaction", - "destination_payment" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_transfer_reversals_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_transfer_reversals_example_call_tool.py deleted file mode 100644 index 18d7025fe..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_transfer_reversals_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetTransferReversals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transfer_id': 'tr_1A2b3C4d5E6f7G8h', - 'fetch_limit': 25, - 'pagination_start_cursor': 'trr_9Z8y7X6w5V4u3T2s', - 'expand_fields_in_response': ['balance_transaction', 'destination_payment'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_treasury_payment_methods_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_treasury_payment_methods_example_call_tool.js deleted file mode 100644 index 0cc919cdf..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_treasury_payment_methods_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetTreasuryPaymentMethods"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz", - "pagination_ending_before": "pm_000prev", - "expand_response_fields": [ - "owner", - "billing_details" - ], - "result_limit": 25, - "starting_after_payment_method": "pm_000next", - "filter_payment_method_type": "card" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_treasury_payment_methods_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_treasury_payment_methods_example_call_tool.py deleted file mode 100644 index 72be9c89b..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_treasury_payment_methods_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetTreasuryPaymentMethods" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz', - 'pagination_ending_before': 'pm_000prev', - 'expand_response_fields': ['owner', 'billing_details'], - 'result_limit': 25, - 'starting_after_payment_method': 'pm_000next', - 'filter_payment_method_type': 'card' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_upfront_quote_line_items_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/get_upfront_quote_line_items_example_call_tool.js deleted file mode 100644 index f940f3eff..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_upfront_quote_line_items_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.GetUpfrontQuoteLineItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "quote_id": "qt_1A2b3C4d5E", - "pagination_ending_before_id": "li_9Z8y7X6w5V", - "fields_to_expand": [ - "invoice", - "price.product" - ], - "max_line_items_to_return": 20, - "pagination_starting_object_id": "obj_abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/get_upfront_quote_line_items_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/get_upfront_quote_line_items_example_call_tool.py deleted file mode 100644 index 20133d1e9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/get_upfront_quote_line_items_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.GetUpfrontQuoteLineItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'quote_id': 'qt_1A2b3C4d5E', - 'pagination_ending_before_id': 'li_9Z8y7X6w5V', - 'fields_to_expand': ['invoice', 'price.product'], - 'max_line_items_to_return': 20, - 'pagination_starting_object_id': 'obj_abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_apple_pay_domains_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/list_apple_pay_domains_example_call_tool.js deleted file mode 100644 index b6bb1adc6..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_apple_pay_domains_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.ListApplePayDomains"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name_filter": "shop.example.com", - "pagination_ending_before_id": null, - "expand_fields": [ - "verification.status" - ], - "max_domains_to_return": 25, - "pagination_starting_after_cursor": "apd_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_apple_pay_domains_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/list_apple_pay_domains_example_call_tool.py deleted file mode 100644 index cb352f34b..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_apple_pay_domains_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.ListApplePayDomains" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name_filter': 'shop.example.com', - 'pagination_ending_before_id': None, - 'expand_fields': ['verification.status'], - 'max_domains_to_return': 25, - 'pagination_starting_after_cursor': 'apd_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_climate_orders_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/list_climate_orders_example_call_tool.js deleted file mode 100644 index 65c989c82..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_climate_orders_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.ListClimateOrders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_ending_before_cursor": "co_1JHxyzABC123", - "expand_fields": [ - "data.line_items", - "customer" - ], - "maximum_objects_to_return": 20, - "pagination_starting_after_cursor": "co_1JHxyZ789DEF" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_climate_orders_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/list_climate_orders_example_call_tool.py deleted file mode 100644 index baa6ed737..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_climate_orders_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.ListClimateOrders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_ending_before_cursor': 'co_1JHxyzABC123', - 'expand_fields': ['data.line_items', 'customer'], - 'maximum_objects_to_return': 20, - 'pagination_starting_after_cursor': 'co_1JHxyZ789DEF' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_climate_products_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/list_climate_products_example_call_tool.js deleted file mode 100644 index e7686a07f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_climate_products_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.ListClimateProducts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_ending_before": "prod_abc123", - "fields_to_expand": [ - "data.default_offset", - "data.attributes" - ], - "objects_limit": 25, - "pagination_starting_after_id": "prod_def456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_climate_products_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/list_climate_products_example_call_tool.py deleted file mode 100644 index 1c6d3a01b..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_climate_products_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.ListClimateProducts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_ending_before': 'prod_abc123', - 'fields_to_expand': ['data.default_offset', 'data.attributes'], - 'objects_limit': 25, - 'pagination_starting_after_id': 'prod_def456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_climate_suppliers_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/list_climate_suppliers_example_call_tool.js deleted file mode 100644 index a71b13275..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_climate_suppliers_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.ListClimateSuppliers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_ending_before": "sup_12345", - "fields_to_expand": [ - "locations", - "pricing_tiers" - ], - "result_limit": 25, - "pagination_starting_after_cursor": "sup_12344" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_climate_suppliers_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/list_climate_suppliers_example_call_tool.py deleted file mode 100644 index 2acb48195..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_climate_suppliers_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.ListClimateSuppliers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_ending_before': 'sup_12345', - 'fields_to_expand': ['locations', 'pricing_tiers'], - 'result_limit': 25, - 'pagination_starting_after_cursor': 'sup_12344' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_customer_payment_sources_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/list_customer_payment_sources_example_call_tool.js deleted file mode 100644 index 14dccbfc9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_customer_payment_sources_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.ListCustomerPaymentSources"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz", - "max_payment_sources_to_return": 25, - "filter_by_object_type": "card", - "expand_response_fields": [ - "data.card", - "data.billing_details" - ], - "pagination_start_cursor": "card_1JH2xyZ4aBcD", - "pagination_ending_before": "card_1JH2wxY9zEfG" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_customer_payment_sources_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/list_customer_payment_sources_example_call_tool.py deleted file mode 100644 index f7336561c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_customer_payment_sources_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.ListCustomerPaymentSources" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz', - 'max_payment_sources_to_return': 25, - 'filter_by_object_type': 'card', - 'expand_response_fields': ['data.card', 'data.billing_details'], - 'pagination_start_cursor': 'card_1JH2xyZ4aBcD', - 'pagination_ending_before': 'card_1JH2wxY9zEfG' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_external_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/list_external_accounts_example_call_tool.js deleted file mode 100644 index 159de5a10..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_external_accounts_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.ListExternalAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "stripe_account_id": "acct_1ExampleID", - "max_results_per_page": 25, - "filter_by_object_type": "bank_account", - "expand_response_fields": [ - "data.bank_account", - "data.customer" - ], - "pagination_starting_after_object_id": "ba_1LastSeenID" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_external_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/list_external_accounts_example_call_tool.py deleted file mode 100644 index c45366c9c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_external_accounts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.ListExternalAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'stripe_account_id': 'acct_1ExampleID', - 'max_results_per_page': 25, - 'filter_by_object_type': 'bank_account', - 'expand_response_fields': ['data.bank_account', 'data.customer'], - 'pagination_starting_after_object_id': 'ba_1LastSeenID' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_payment_method_configurations_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/list_payment_method_configurations_example_call_tool.js deleted file mode 100644 index a8fe74d35..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_payment_method_configurations_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.ListPaymentMethodConfigurations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_connect_application": "ca_1Gqj2XExample", - "pagination_ending_before_id": "pmc_001122334455", - "expand_fields": [ - "data.default_price", - "data.supported_currencies" - ], - "max_results": 25, - "pagination_starting_after_id": "pmc_556677889900" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_payment_method_configurations_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/list_payment_method_configurations_example_call_tool.py deleted file mode 100644 index 0a0fcebee..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_payment_method_configurations_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.ListPaymentMethodConfigurations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_connect_application': 'ca_1Gqj2XExample', - 'pagination_ending_before_id': 'pmc_001122334455', - 'expand_fields': ['data.default_price', 'data.supported_currencies'], - 'max_results': 25, - 'pagination_starting_after_id': 'pmc_556677889900' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_payment_method_domains_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/list_payment_method_domains_example_call_tool.js deleted file mode 100644 index 81fd4c363..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_payment_method_domains_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.ListPaymentMethodDomains"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "payments.example.com", - "pagination_cursor_ending_before": "cursor_abc123", - "fields_to_expand": [ - "webhooks", - "settings" - ], - "limit_number_of_returned_objects": 25, - "pagination_cursor_starting_after": "cursor_def456", - "include_enabled_domains": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/list_payment_method_domains_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/list_payment_method_domains_example_call_tool.py deleted file mode 100644 index de4c71580..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/list_payment_method_domains_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.ListPaymentMethodDomains" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'payments.example.com', - 'pagination_cursor_ending_before': 'cursor_abc123', - 'fields_to_expand': ['webhooks', 'settings'], - 'limit_number_of_returned_objects': 25, - 'pagination_cursor_starting_after': 'cursor_def456', - 'include_enabled_domains': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/remove_customer_discount_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/remove_customer_discount_example_call_tool.js deleted file mode 100644 index 12da2e0d7..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/remove_customer_discount_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RemoveCustomerDiscount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cust_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/remove_customer_discount_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/remove_customer_discount_example_call_tool.py deleted file mode 100644 index 8e80dcf72..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/remove_customer_discount_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RemoveCustomerDiscount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cust_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/remove_customer_subscription_discount_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/remove_customer_subscription_discount_example_call_tool.js deleted file mode 100644 index 088188b02..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/remove_customer_subscription_discount_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RemoveCustomerSubscriptionDiscount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_12345", - "subscription_id": "sub_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/remove_customer_subscription_discount_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/remove_customer_subscription_discount_example_call_tool.py deleted file mode 100644 index d6b8a43da..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/remove_customer_subscription_discount_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RemoveCustomerSubscriptionDiscount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_12345', 'subscription_id': 'sub_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/remove_radar_value_list_item_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/remove_radar_value_list_item_example_call_tool.js deleted file mode 100644 index 21b7ae4fc..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/remove_radar_value_list_item_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RemoveRadarValueListItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "radar_value_list_item_id": "rli_1KxyZ2ABcdEFghIj" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/remove_radar_value_list_item_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/remove_radar_value_list_item_example_call_tool.py deleted file mode 100644 index e76242fc5..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/remove_radar_value_list_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RemoveRadarValueListItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'radar_value_list_item_id': 'rli_1KxyZ2ABcdEFghIj' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/remove_subscription_discount_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/remove_subscription_discount_example_call_tool.js deleted file mode 100644 index 87d646682..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/remove_subscription_discount_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RemoveSubscriptionDiscount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_id": "sub_1J2abc34D5efG6" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/remove_subscription_discount_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/remove_subscription_discount_example_call_tool.py deleted file mode 100644 index e2ed2813f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/remove_subscription_discount_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RemoveSubscriptionDiscount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_id': 'sub_1J2abc34D5efG6' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_account_details_example_call_tool.js deleted file mode 100644 index 0d056071e..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_account_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_id": "acct_12345", - "fields_to_expand": [ - "billing", - "contacts" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_account_details_example_call_tool.py deleted file mode 100644 index 2e2cb81a6..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_account_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_id': 'acct_12345', 'fields_to_expand': ['billing', 'contacts'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_active_entitlement_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_active_entitlement_example_call_tool.js deleted file mode 100644 index 2393f03ee..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_active_entitlement_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveActiveEntitlement"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "entitlement_id": "ae_12345ABCDE", - "fields_to_expand": [ - "user", - "plan" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_active_entitlement_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_active_entitlement_example_call_tool.py deleted file mode 100644 index 255b474e2..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_active_entitlement_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveActiveEntitlement" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'entitlement_id': 'ae_12345ABCDE', 'fields_to_expand': ['user', 'plan'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_apple_pay_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_apple_pay_domain_example_call_tool.js deleted file mode 100644 index bf3d33f84..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_apple_pay_domain_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveApplePayDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "apple_pay_domain_name": "payments.example.com", - "fields_to_expand": [ - "verification_status", - "created_by" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_apple_pay_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_apple_pay_domain_example_call_tool.py deleted file mode 100644 index 3a4e68117..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_apple_pay_domain_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveApplePayDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'apple_pay_domain_name': 'payments.example.com', - 'fields_to_expand': ['verification_status', 'created_by'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_application_fee_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_application_fee_details_example_call_tool.js deleted file mode 100644 index ad2bf8185..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_application_fee_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveApplicationFeeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_fee_id": "fee_1JHh2X2eZvKYlo2C3aB4dEfG", - "fields_to_expand": [ - "balance_transaction", - "refunded_transactions" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_application_fee_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_application_fee_details_example_call_tool.py deleted file mode 100644 index e31ef4cb9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_application_fee_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveApplicationFeeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_fee_id': 'fee_1JHh2X2eZvKYlo2C3aB4dEfG', - 'fields_to_expand': ['balance_transaction', 'refunded_transactions'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_application_fee_refund_detail_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_application_fee_refund_detail_example_call_tool.js deleted file mode 100644 index 8709711fd..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_application_fee_refund_detail_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveApplicationFeeRefundDetail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_fee_id": "fee_1A2b3C4d5E6f", - "refund_id": "re_7G8h9I0j1K2l", - "fields_to_expand": [ - "balance_transaction", - "charge" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_application_fee_refund_detail_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_application_fee_refund_detail_example_call_tool.py deleted file mode 100644 index 5d4e69ea9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_application_fee_refund_detail_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveApplicationFeeRefundDetail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_fee_id': 'fee_1A2b3C4d5E6f', - 'refund_id': 're_7G8h9I0j1K2l', - 'fields_to_expand': ['balance_transaction', 'charge'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_balance_transaction_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_balance_transaction_by_id_example_call_tool.js deleted file mode 100644 index cedc83dd5..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_balance_transaction_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveBalanceTransactionById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "balance_transaction_id": "txn_1JH3yz2eZvKYlo2C9xexample", - "fields_to_expand": [ - "source", - "fee_details" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_balance_transaction_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_balance_transaction_by_id_example_call_tool.py deleted file mode 100644 index 0a6240dd8..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_balance_transaction_by_id_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveBalanceTransactionById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'balance_transaction_id': 'txn_1JH3yz2eZvKYlo2C9xexample', - 'fields_to_expand': ['source', 'fee_details'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_billing_meter_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_billing_meter_example_call_tool.js deleted file mode 100644 index c606eb219..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_billing_meter_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveBillingMeter"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "billing_meter_id": "meter_12345", - "fields_to_expand": [ - "pricing_tiers", - "usage_limits" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_billing_meter_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_billing_meter_example_call_tool.py deleted file mode 100644 index 0527c3819..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_billing_meter_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveBillingMeter" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'billing_meter_id': 'meter_12345', 'fields_to_expand': ['pricing_tiers', 'usage_limits'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_cash_balance_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_cash_balance_transaction_example_call_tool.js deleted file mode 100644 index 9df1e7367..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_cash_balance_transaction_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveCashBalanceTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz", - "transaction_id": "cbtxn_01H2XYZabc456", - "expand_fields_in_response": [ - "balance_transaction", - "customer" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_cash_balance_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_cash_balance_transaction_example_call_tool.py deleted file mode 100644 index 0f3e7d4e0..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_cash_balance_transaction_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveCashBalanceTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz', - 'transaction_id': 'cbtxn_01H2XYZabc456', - 'expand_fields_in_response': ['balance_transaction', 'customer'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_checkout_session_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_checkout_session_example_call_tool.js deleted file mode 100644 index 1a667b410..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_checkout_session_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveCheckoutSession"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "session_id": "cs_test_a1b2c3d4e5f6g7h8", - "fields_to_expand": [ - "payment_intent", - "line_items.data.price.product" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_checkout_session_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_checkout_session_example_call_tool.py deleted file mode 100644 index 7cceadc1e..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_checkout_session_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveCheckoutSession" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'session_id': 'cs_test_a1b2c3d4e5f6g7h8', - 'fields_to_expand': ['payment_intent', 'line_items.data.price.product'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_climate_product_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_climate_product_details_example_call_tool.js deleted file mode 100644 index 471a1c046..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_climate_product_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveClimateProductDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "product_id": "cl_prod_12345ABCDE", - "fields_to_expand": [ - "pricing", - "metadata" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_climate_product_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_climate_product_details_example_call_tool.py deleted file mode 100644 index d575927a3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_climate_product_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveClimateProductDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'product_id': 'cl_prod_12345ABCDE', 'fields_to_expand': ['pricing', 'metadata'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_climate_supplier_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_climate_supplier_example_call_tool.js deleted file mode 100644 index 3bc78fadc..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_climate_supplier_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveClimateSupplier"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "supplier_identifier": "clm_sup_12345", - "fields_to_expand": [ - "profile", - "projects" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_climate_supplier_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_climate_supplier_example_call_tool.py deleted file mode 100644 index 8c6a79cb2..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_climate_supplier_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveClimateSupplier" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'supplier_identifier': 'clm_sup_12345', 'fields_to_expand': ['profile', 'projects'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_country_specs_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_country_specs_example_call_tool.js deleted file mode 100644 index d5bd1402c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_country_specs_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveCountrySpecs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "pagination_ending_before": "cs_12345", - "expand_response_fields": [ - "data.verified_rules", - "data.supported_payment_methods" - ], - "number_of_country_specs_to_return": 25, - "pagination_starting_after_id": "cs_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_country_specs_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_country_specs_example_call_tool.py deleted file mode 100644 index e123653d3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_country_specs_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveCountrySpecs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'pagination_ending_before': 'cs_12345', - 'expand_response_fields': ['data.verified_rules', 'data.supported_payment_methods'], - 'number_of_country_specs_to_return': 25, - 'pagination_starting_after_id': 'cs_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_grant_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_grant_example_call_tool.js deleted file mode 100644 index 416888126..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_grant_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveCreditGrant"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "credit_grant_id": "cg_01F2AB3CD4EFGH5I6J7K8L9M", - "fields_to_expand": [ - "customer", - "subscription" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_grant_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_grant_example_call_tool.py deleted file mode 100644 index edd574a4d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_grant_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveCreditGrant" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'credit_grant_id': 'cg_01F2AB3CD4EFGH5I6J7K8L9M', 'fields_to_expand': ['customer', 'subscription'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_note_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_note_example_call_tool.js deleted file mode 100644 index b179fbb48..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_note_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveCreditNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "credit_note_id": "cn_1J2kXy4eZvKYlo2C9abcdef", - "fields_to_expand": [ - "invoice", - "customer" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_note_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_note_example_call_tool.py deleted file mode 100644 index bbad7ae19..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_note_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveCreditNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'credit_note_id': 'cn_1J2kXy4eZvKYlo2C9abcdef', 'fields_to_expand': ['invoice', 'customer'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_note_lines_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_note_lines_example_call_tool.js deleted file mode 100644 index 546a957ef..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_note_lines_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveCreditNoteLines"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "credit_note_id": "cn_1Hh1X2AbCdEfGhIjK7L9mN2p", - "fields_to_expand": [ - "invoice", - "tax_rates" - ], - "max_objects_to_return": 25, - "pagination_starting_after": "cnli_1Hh1Y9ZxYzAbCdEfGhIjK" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_note_lines_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_note_lines_example_call_tool.py deleted file mode 100644 index 34d547cb5..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_credit_note_lines_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveCreditNoteLines" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'credit_note_id': 'cn_1Hh1X2AbCdEfGhIjK7L9mN2p', - 'fields_to_expand': ['invoice', 'tax_rates'], - 'max_objects_to_return': 25, - 'pagination_starting_after': 'cnli_1Hh1Y9ZxYzAbCdEfGhIjK' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_details_example_call_tool.js deleted file mode 100644 index 029a93d59..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveCustomerDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_J5k2a1b9XyZ0qP", - "expand_response_fields": [ - "subscriptions", - "invoice_settings.default_payment_method" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_details_example_call_tool.py deleted file mode 100644 index e868d7d91..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveCustomerDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_J5k2a1b9XyZ0qP', - 'expand_response_fields': ['subscriptions', 'invoice_settings.default_payment_method'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_discount_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_discount_example_call_tool.js deleted file mode 100644 index 50a319056..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_discount_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveCustomerDiscount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_J5k2b1aX9Qv2Lm", - "fields_to_expand": [ - "invoice", - "coupon" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_discount_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_discount_example_call_tool.py deleted file mode 100644 index 53ab14df0..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_discount_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveCustomerDiscount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_J5k2b1aX9Qv2Lm', 'fields_to_expand': ['invoice', 'coupon'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_payment_source_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_payment_source_example_call_tool.js deleted file mode 100644 index 6fe00de2c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_payment_source_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveCustomerPaymentSource"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_12345ABCdef", - "source_id": "src_67890XYZghi", - "fields_to_expand": [ - "customer", - "metadata" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_payment_source_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_payment_source_example_call_tool.py deleted file mode 100644 index b191bdaef..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_customer_payment_source_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveCustomerPaymentSource" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_12345ABCdef', - 'source_id': 'src_67890XYZghi', - 'fields_to_expand': ['customer', 'metadata'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_debit_reversal_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_debit_reversal_example_call_tool.js deleted file mode 100644 index 5f0ea8e50..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_debit_reversal_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveDebitReversal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "debit_reversal_id": "dr_1234567890abcdef", - "expand_fields": [ - "payment", - "origin_transaction" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_debit_reversal_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_debit_reversal_example_call_tool.py deleted file mode 100644 index e8b3ca76a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_debit_reversal_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveDebitReversal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'debit_reversal_id': 'dr_1234567890abcdef', 'expand_fields': ['payment', 'origin_transaction'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_dispute_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_dispute_by_id_example_call_tool.js deleted file mode 100644 index 2ae4492f7..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_dispute_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveDisputeById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dispute_id": "dp_12345abcde", - "fields_to_expand": [ - "evidence", - "transactions" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_dispute_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_dispute_by_id_example_call_tool.py deleted file mode 100644 index c4bc8721a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_dispute_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveDisputeById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dispute_id': 'dp_12345abcde', 'fields_to_expand': ['evidence', 'transactions'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_early_fraud_warning_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_early_fraud_warning_details_example_call_tool.js deleted file mode 100644 index f076a055f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_early_fraud_warning_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveEarlyFraudWarningDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "early_fraud_warning_id": "efw_1234567890", - "fields_to_expand": [ - "associated_transaction", - "customer_details" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_early_fraud_warning_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_early_fraud_warning_details_example_call_tool.py deleted file mode 100644 index 9b8770598..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_early_fraud_warning_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveEarlyFraudWarningDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'early_fraud_warning_id': 'efw_1234567890', - 'fields_to_expand': ['associated_transaction', 'customer_details'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_feature_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_feature_details_example_call_tool.js deleted file mode 100644 index 4acb2c730..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_feature_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveFeatureDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "feature_id": "feat_123abc", - "fields_to_expand": [ - "owner", - "usage_limits" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_feature_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_feature_details_example_call_tool.py deleted file mode 100644 index cefa67531..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_feature_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveFeatureDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'feature_id': 'feat_123abc', 'fields_to_expand': ['owner', 'usage_limits'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_file_link_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_file_link_example_call_tool.js deleted file mode 100644 index e0e6b6b45..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_file_link_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveFileLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "file_link_id": "fl_1JHk2a3b4cD5eF6g", - "fields_to_expand": [ - "file", - "metadata" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_file_link_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_file_link_example_call_tool.py deleted file mode 100644 index 8cc26f969..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_file_link_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveFileLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'file_link_id': 'fl_1JHk2a3b4cD5eF6g', 'fields_to_expand': ['file', 'metadata'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_financial_connections_session_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_financial_connections_session_example_call_tool.js deleted file mode 100644 index 50d7df566..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_financial_connections_session_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveFinancialConnectionsSession"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "financial_connection_session_id": "fcs_1JXy2a3b4CdeF6g7H8i9J0kL", - "fields_to_expand": [ - "account_holder", - "accounts" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_financial_connections_session_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_financial_connections_session_example_call_tool.py deleted file mode 100644 index 5e1e3ed23..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_financial_connections_session_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveFinancialConnectionsSession" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'financial_connection_session_id': 'fcs_1JXy2a3b4CdeF6g7H8i9J0kL', - 'fields_to_expand': ['account_holder', 'accounts'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_financial_session_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_financial_session_details_example_call_tool.js deleted file mode 100644 index 05b053d95..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_financial_session_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveFinancialSessionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "session_identifier": "fc_sess_12345abcde", - "fields_to_expand": [ - "account_holder", - "transactions" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_financial_session_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_financial_session_details_example_call_tool.py deleted file mode 100644 index e0a901056..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_financial_session_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveFinancialSessionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'session_identifier': 'fc_sess_12345abcde', 'fields_to_expand': ['account_holder', 'transactions'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_forwarding_request_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_forwarding_request_example_call_tool.js deleted file mode 100644 index dad60c0db..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_forwarding_request_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveForwardingRequest"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "forwarding_request_id": "fr_1Hh1YZ2eZvKYlo2C3bXyZ9aP", - "fields_to_expand": [ - "destination_payment_method", - "customer" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_forwarding_request_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_forwarding_request_example_call_tool.py deleted file mode 100644 index 8ccf4f357..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_forwarding_request_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveForwardingRequest" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'forwarding_request_id': 'fr_1Hh1YZ2eZvKYlo2C3bXyZ9aP', - 'fields_to_expand': ['destination_payment_method', 'customer'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_inbound_transfer_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_inbound_transfer_details_example_call_tool.js deleted file mode 100644 index 6bd4654bc..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_inbound_transfer_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveInboundTransferDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "inbound_transfer_id": "inbound_transfer_12345", - "expand_fields": [ - "balance_transaction", - "statement_descriptor" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_inbound_transfer_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_inbound_transfer_details_example_call_tool.py deleted file mode 100644 index c53b02df6..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_inbound_transfer_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveInboundTransferDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'inbound_transfer_id': 'inbound_transfer_12345', - 'expand_fields': ['balance_transaction', 'statement_descriptor'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_by_id_example_call_tool.js deleted file mode 100644 index a85dc67bd..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveInvoiceById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_id": "inv_1234567890", - "expand_fields_in_response": [ - "customer", - "line_items" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_by_id_example_call_tool.py deleted file mode 100644 index 969968fb5..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveInvoiceById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_id': 'inv_1234567890', 'expand_fields_in_response': ['customer', 'line_items'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_payment_example_call_tool.js deleted file mode 100644 index 8e67616b3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_payment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveInvoicePayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_payment_id": "in_pay_1234567890", - "fields_to_expand": [ - "invoice", - "customer" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_payment_example_call_tool.py deleted file mode 100644 index d6cf8ed2f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_payment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveInvoicePayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_payment_id': 'in_pay_1234567890', 'fields_to_expand': ['invoice', 'customer'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_template_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_template_example_call_tool.js deleted file mode 100644 index b350d775d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_template_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveInvoiceTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_template_id": "tmpl_1A2b3C4d5E6f", - "fields_to_expand": [ - "default_settings", - "latest_version" - ], - "template_version": 2 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_template_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_template_example_call_tool.py deleted file mode 100644 index a633010f4..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_invoice_template_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveInvoiceTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_template_id': 'tmpl_1A2b3C4d5E6f', - 'fields_to_expand': ['default_settings', 'latest_version'], - 'template_version': 2 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_authorization_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_authorization_example_call_tool.js deleted file mode 100644 index dd4ed5091..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_authorization_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveIssuingAuthorization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "authorization_id": "iauth_1J2k3L4m5N6o7P8q", - "expand_fields": [ - "card", - "transaction" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_authorization_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_authorization_example_call_tool.py deleted file mode 100644 index 5407d7aac..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_authorization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveIssuingAuthorization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'authorization_id': 'iauth_1J2k3L4m5N6o7P8q', 'expand_fields': ['card', 'transaction'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_cardholder_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_cardholder_example_call_tool.js deleted file mode 100644 index cfc7589ad..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_cardholder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveIssuingCardholder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "cardholder_id": "ich_1J2kL3Mn4OpQ5rSt", - "fields_to_expand": [ - "billing", - "cards" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_cardholder_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_cardholder_example_call_tool.py deleted file mode 100644 index 337b0b010..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_cardholder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveIssuingCardholder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'cardholder_id': 'ich_1J2kL3Mn4OpQ5rSt', 'fields_to_expand': ['billing', 'cards'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_dispute_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_dispute_example_call_tool.js deleted file mode 100644 index ced2a2542..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_dispute_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveIssuingDispute"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dispute_id": "idp_1K2abc3D4efGhIJ5klmnopQR", - "fields_to_expand": [ - "transactions", - "evidence.submitted_documents" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_dispute_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_dispute_example_call_tool.py deleted file mode 100644 index 69f78a1b3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_dispute_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveIssuingDispute" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dispute_id': 'idp_1K2abc3D4efGhIJ5klmnopQR', - 'fields_to_expand': ['transactions', 'evidence.submitted_documents'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_settlement_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_settlement_example_call_tool.js deleted file mode 100644 index c18cab99a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_settlement_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveIssuingSettlement"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "settlement_id": "iss_settle_12345", - "fields_to_expand": [ - "transactions", - "pending_transactions" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_settlement_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_settlement_example_call_tool.py deleted file mode 100644 index 40706ec75..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_settlement_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveIssuingSettlement" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'settlement_id': 'iss_settle_12345', 'fields_to_expand': ['transactions', 'pending_transactions'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_transaction_example_call_tool.js deleted file mode 100644 index 3affddfb7..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_transaction_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveIssuingTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transaction_id": "itxn_12345ABCDE", - "fields_to_expand": [ - "cardholder", - "card", - "merchant" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_transaction_example_call_tool.py deleted file mode 100644 index 7a2f91c22..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_issuing_transaction_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveIssuingTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transaction_id': 'itxn_12345ABCDE', 'fields_to_expand': ['cardholder', 'card', 'merchant'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_mandate_info_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_mandate_info_example_call_tool.js deleted file mode 100644 index a92396b00..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_mandate_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveMandateInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mandate_id": "mandate_1JzEx2ABcdEFgHiJ", - "fields_to_expand": [ - "customer", - "payment_method" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_mandate_info_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_mandate_info_example_call_tool.py deleted file mode 100644 index 9886a8057..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_mandate_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveMandateInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mandate_id': 'mandate_1JzEx2ABcdEFgHiJ', 'fields_to_expand': ['customer', 'payment_method'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_outbound_payment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_outbound_payment_details_example_call_tool.js deleted file mode 100644 index 78dbf6e07..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_outbound_payment_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveOutboundPaymentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "outbound_payment_id": "op_1JHxy2AbCdEFghIjKLmN0pQr", - "fields_to_expand": [ - "destination", - "originating_transaction" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_outbound_payment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_outbound_payment_details_example_call_tool.py deleted file mode 100644 index d9c934f93..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_outbound_payment_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveOutboundPaymentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'outbound_payment_id': 'op_1JHxy2AbCdEFghIjKLmN0pQr', - 'fields_to_expand': ['destination', 'originating_transaction'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_intent_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_intent_details_example_call_tool.js deleted file mode 100644 index a4e83fddf..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_intent_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrievePaymentIntentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_intent_id": "pi_1Hh1YZ2eZvKYlo2C3qX7a9b0", - "payment_intent_client_secret": "pi_1Hh1YZ2eZvKYlo2C3qX7a9b0_secret_123", - "fields_to_expand": [ - "charges.data.balance_transaction", - "latest_charge.payment_method_details" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_intent_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_intent_details_example_call_tool.py deleted file mode 100644 index d52def303..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_intent_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrievePaymentIntentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_intent_id': 'pi_1Hh1YZ2eZvKYlo2C3qX7a9b0', - 'payment_intent_client_secret': 'pi_1Hh1YZ2eZvKYlo2C3qX7a9b0_secret_123', - 'fields_to_expand': [ 'charges.data.balance_transaction', - 'latest_charge.payment_method_details'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_link_info_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_link_info_example_call_tool.js deleted file mode 100644 index 325a9be5f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_link_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrievePaymentLinkInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_link_id": "plink_1Hh1X2AbCdEfGhIj", - "expand_fields": [ - "line_items", - "customer" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_link_info_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_link_info_example_call_tool.py deleted file mode 100644 index d067d6439..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_link_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrievePaymentLinkInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_link_id': 'plink_1Hh1X2AbCdEfGhIj', 'expand_fields': ['line_items', 'customer'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_method_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_method_configuration_example_call_tool.js deleted file mode 100644 index c33247f1e..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_method_configuration_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrievePaymentMethodConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_method_configuration_id": "pmcfg_123abcXYZ", - "fields_to_expand": [ - "payment_method_details", - "billing_settings" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_method_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_method_configuration_example_call_tool.py deleted file mode 100644 index 6f444bcc8..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_payment_method_configuration_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrievePaymentMethodConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_method_configuration_id': 'pmcfg_123abcXYZ', - 'fields_to_expand': ['payment_method_details', 'billing_settings'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_person_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_person_account_details_example_call_tool.js deleted file mode 100644 index e70c875cf..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_person_account_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrievePersonAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_id": "acct_1Hh1YZ2eZvKYlo2C", - "person_identifier": "person_Ab3xYz9LpQwRST", - "fields_to_expand": [ - "relationship", - "verification.document" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_person_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_person_account_details_example_call_tool.py deleted file mode 100644 index 60533929c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_person_account_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrievePersonAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_id': 'acct_1Hh1YZ2eZvKYlo2C', - 'person_identifier': 'person_Ab3xYz9LpQwRST', - 'fields_to_expand': ['relationship', 'verification.document'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_person_information_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_person_information_example_call_tool.js deleted file mode 100644 index 2d4799cde..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_person_information_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrievePersonInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "stripe_account_id": "acct_1Gqj58L2eZvKYlo2", - "person_identifier": "person_12345ABC", - "fields_to_expand": [ - "verifications", - "relationship" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_person_information_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_person_information_example_call_tool.py deleted file mode 100644 index ba11acdea..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_person_information_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrievePersonInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'stripe_account_id': 'acct_1Gqj58L2eZvKYlo2', - 'person_identifier': 'person_12345ABC', - 'fields_to_expand': ['verifications', 'relationship'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_personalization_design_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_personalization_design_example_call_tool.js deleted file mode 100644 index 43ed40154..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_personalization_design_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrievePersonalizationDesign"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "personalization_design_id": "pd_12345ABC", - "fields_to_expand": [ - "assets", - "created_by" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_personalization_design_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_personalization_design_example_call_tool.py deleted file mode 100644 index 6e75138d9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_personalization_design_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrievePersonalizationDesign" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'personalization_design_id': 'pd_12345ABC', 'fields_to_expand': ['assets', 'created_by'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_physical_bundle_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_physical_bundle_example_call_tool.js deleted file mode 100644 index 914e4badf..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_physical_bundle_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrievePhysicalBundle"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "physical_bundle_id": "pbnd_12345abcde", - "fields_to_expand": [ - "cards", - "shipping.address" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_physical_bundle_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_physical_bundle_example_call_tool.py deleted file mode 100644 index 58361a542..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_physical_bundle_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrievePhysicalBundle" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'physical_bundle_id': 'pbnd_12345abcde', 'fields_to_expand': ['cards', 'shipping.address'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_quote_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_quote_by_id_example_call_tool.js deleted file mode 100644 index d23ad5931..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_quote_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveQuoteById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "quote_id": "qt_12345", - "fields_to_expand": [ - "customer", - "items" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_quote_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_quote_by_id_example_call_tool.py deleted file mode 100644 index cfd3f6a53..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_quote_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveQuoteById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'quote_id': 'qt_12345', 'fields_to_expand': ['customer', 'items'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_quotes_list_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_quotes_list_example_call_tool.js deleted file mode 100644 index 79f5dbec5..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_quotes_list_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveQuotesList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz", - "result_limit": 25, - "quote_status": "open", - "fields_to_expand": [ - "data.customer", - "data.line_items" - ], - "pagination_starting_after": "qt_00000000000001", - "pagination_ending_before_cursor": null, - "test_clock_id": null -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_quotes_list_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_quotes_list_example_call_tool.py deleted file mode 100644 index 181a586d7..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_quotes_list_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveQuotesList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz', - 'result_limit': 25, - 'quote_status': 'open', - 'fields_to_expand': ['data.customer', 'data.line_items'], - 'pagination_starting_after': 'qt_00000000000001', - 'pagination_ending_before_cursor': None, - 'test_clock_id': None -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_radar_valuelist_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_radar_valuelist_example_call_tool.js deleted file mode 100644 index ded1a59fd..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_radar_valuelist_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveRadarValuelist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "identifier_of_radar_valuelist": "valuelist_12345", - "expand_fields": [ - "items", - "created_by" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_radar_valuelist_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_radar_valuelist_example_call_tool.py deleted file mode 100644 index a2f2e38f2..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_radar_valuelist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveRadarValuelist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'identifier_of_radar_valuelist': 'valuelist_12345', 'expand_fields': ['items', 'created_by'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_received_debit_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_received_debit_details_example_call_tool.js deleted file mode 100644 index c65eeb806..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_received_debit_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveReceivedDebitDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "received_debit_id": "rd_12345abcde", - "fields_to_expand": [ - "initiator", - "payment_method" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_received_debit_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_received_debit_details_example_call_tool.py deleted file mode 100644 index a7152ff3e..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_received_debit_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveReceivedDebitDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'received_debit_id': 'rd_12345abcde', 'fields_to_expand': ['initiator', 'payment_method'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_refund_details_by_charge_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_refund_details_by_charge_example_call_tool.js deleted file mode 100644 index 32df12dc5..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_refund_details_by_charge_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveRefundDetailsByCharge"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "charge_id": "ch_1Hh1YZ2eZvKYlo2C0a1b2c3d", - "refund_id": "rf_1Hh1Za2eZvKYlo2C4d5e6f7g", - "fields_to_expand": [ - "payment_method", - "transaction_details" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_refund_details_by_charge_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_refund_details_by_charge_example_call_tool.py deleted file mode 100644 index 29c58e420..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_refund_details_by_charge_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveRefundDetailsByCharge" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'charge_id': 'ch_1Hh1YZ2eZvKYlo2C0a1b2c3d', - 'refund_id': 'rf_1Hh1Za2eZvKYlo2C4d5e6f7g', - 'fields_to_expand': ['payment_method', 'transaction_details'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_refund_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_refund_details_example_call_tool.js deleted file mode 100644 index b20a053ff..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_refund_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveRefundDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "refund_id": "re_12345abcdef", - "expand_fields": [ - "payment", - "metadata" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_refund_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_refund_details_example_call_tool.py deleted file mode 100644 index 2ecf0be09..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_refund_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveRefundDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'refund_id': 're_12345abcdef', 'expand_fields': ['payment', 'metadata'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_scheduled_query_run_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_scheduled_query_run_details_example_call_tool.js deleted file mode 100644 index 7cf100647..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_scheduled_query_run_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveScheduledQueryRunDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "scheduled_query_run_id": "sqr_12345abcde", - "fields_to_expand": [ - "scheduled_query", - "result_connection" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_scheduled_query_run_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_scheduled_query_run_details_example_call_tool.py deleted file mode 100644 index c469fd064..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_scheduled_query_run_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveScheduledQueryRunDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'scheduled_query_run_id': 'sqr_12345abcde', - 'fields_to_expand': ['scheduled_query', 'result_connection'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_setup_intent_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_setup_intent_details_example_call_tool.js deleted file mode 100644 index 60bce82a8..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_setup_intent_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveSetupIntentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "setup_intent_id": "seti_1J2abc34DEFghI", - "setup_intent_client_secret": "seti_client_secret_7b9XyZ", - "fields_to_expand": [ - "payment_method", - "latest_attempt.payment_method" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_setup_intent_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_setup_intent_details_example_call_tool.py deleted file mode 100644 index 9184c77c1..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_setup_intent_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveSetupIntentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'setup_intent_id': 'seti_1J2abc34DEFghI', - 'setup_intent_client_secret': 'seti_client_secret_7b9XyZ', - 'fields_to_expand': ['payment_method', 'latest_attempt.payment_method'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_shipping_rate_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_shipping_rate_details_example_call_tool.js deleted file mode 100644 index f31c7c7d9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_shipping_rate_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveShippingRateDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shipping_rate_id": "shr_1N2abcD3EfGhIjK4", - "fields_to_expand": [ - "display_name", - "delivery_estimate" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_shipping_rate_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_shipping_rate_details_example_call_tool.py deleted file mode 100644 index b6473bddc..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_shipping_rate_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveShippingRateDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shipping_rate_id': 'shr_1N2abcD3EfGhIjK4', - 'fields_to_expand': ['display_name', 'delivery_estimate'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_source_mandate_notification_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_source_mandate_notification_example_call_tool.js deleted file mode 100644 index 926ebdb83..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_source_mandate_notification_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveSourceMandateNotification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mandate_notification_id": "mnd_1Gq2xYz6abc123", - "source_id": "src_1Hk9LmN0def456", - "fields_to_expand": [ - "source.mandate", - "source.owner" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_source_mandate_notification_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_source_mandate_notification_example_call_tool.py deleted file mode 100644 index 503df886c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_source_mandate_notification_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveSourceMandateNotification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mandate_notification_id': 'mnd_1Gq2xYz6abc123', - 'source_id': 'src_1Hk9LmN0def456', - 'fields_to_expand': ['source.mandate', 'source.owner'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_charge_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_charge_details_example_call_tool.js deleted file mode 100644 index 569b4d773..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_charge_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveStripeChargeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "charge_id": "ch_1J2k3L4m5N6o7P8q9R0s", - "fields_to_expand": [ - "payment_method", - "balance_transaction" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_charge_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_charge_details_example_call_tool.py deleted file mode 100644 index a13a9164c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_charge_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveStripeChargeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'charge_id': 'ch_1J2k3L4m5N6o7P8q9R0s', - 'fields_to_expand': ['payment_method', 'balance_transaction'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_event_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_event_details_example_call_tool.js deleted file mode 100644 index 76556474d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_event_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveStripeEventDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "event_identifier": "evt_1JHh8L2eZvKYlo2C4a1b2c3d", - "fields_to_expand_in_response": [ - "data.object.payment_intent", - "data.object.customer" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_event_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_event_details_example_call_tool.py deleted file mode 100644 index 2721e40d1..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_event_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveStripeEventDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'event_identifier': 'evt_1JHh8L2eZvKYlo2C4a1b2c3d', - 'fields_to_expand_in_response': ['data.object.payment_intent', 'data.object.customer'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_payment_method_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_payment_method_example_call_tool.js deleted file mode 100644 index bc5e58271..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_payment_method_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveStripePaymentMethod"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_method_id": "pm_1KqExample12345", - "fields_to_expand": [ - "customer", - "billing_details" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_payment_method_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_payment_method_example_call_tool.py deleted file mode 100644 index 29798b258..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_payment_method_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveStripePaymentMethod" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_method_id': 'pm_1KqExample12345', 'fields_to_expand': ['customer', 'billing_details'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_plan_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_plan_example_call_tool.js deleted file mode 100644 index 43e245577..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_plan_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveStripePlan"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "stripe_plan_id": "plan_1Hh1YZ2eZvKYlo2C3xample", - "fields_to_expand": [ - "product", - "tiers" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_plan_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_plan_example_call_tool.py deleted file mode 100644 index 3dfc4dad8..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_plan_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveStripePlan" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'stripe_plan_id': 'plan_1Hh1YZ2eZvKYlo2C3xample', 'fields_to_expand': ['product', 'tiers'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_price_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_price_example_call_tool.js deleted file mode 100644 index 7b00153c5..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_price_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveStripePrice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "price_id": "price_1Hh1YZ2eZvKYlo2C3aB4dEf", - "fields_to_expand": [ - "product", - "tiers" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_price_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_price_example_call_tool.py deleted file mode 100644 index b422eee03..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_price_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveStripePrice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'price_id': 'price_1Hh1YZ2eZvKYlo2C3aB4dEf', 'fields_to_expand': ['product', 'tiers'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_source_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_source_example_call_tool.js deleted file mode 100644 index 8753516e3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_source_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveStripeSource"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "stripe_source_id": "src_1GqIC8Lz0qyl3a", - "source_client_secret": "src_client_secret_12345", - "fields_to_expand": [ - "metadata", - "owner" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_source_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_source_example_call_tool.py deleted file mode 100644 index 079391fb8..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_source_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveStripeSource" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'stripe_source_id': 'src_1GqIC8Lz0qyl3a', - 'source_client_secret': 'src_client_secret_12345', - 'fields_to_expand': ['metadata', 'owner'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_subscription_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_subscription_by_id_example_call_tool.js deleted file mode 100644 index bfabb7177..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_subscription_by_id_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveStripeSubscriptionById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "customer_id": "cus_ABC123xyz", - "subscription_id": "sub_01F2G3H4I5J6K7L8", - "fields_to_expand": [ - "latest_invoice.payment_intent", - "default_payment_method" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_subscription_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_subscription_by_id_example_call_tool.py deleted file mode 100644 index bb3be0ae9..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_subscription_by_id_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveStripeSubscriptionById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'customer_id': 'cus_ABC123xyz', - 'subscription_id': 'sub_01F2G3H4I5J6K7L8', - 'fields_to_expand': ['latest_invoice.payment_intent', 'default_payment_method'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_token_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_token_example_call_tool.js deleted file mode 100644 index 154ffc749..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_token_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveStripeToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "stripe_token_id": "tok_1Hh1Xa2eZvKYlo2C3b4d5Ef6", - "fields_to_expand": [ - "card", - "client_ip" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_token_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_token_example_call_tool.py deleted file mode 100644 index 2cfb25f62..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveStripeToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'stripe_token_id': 'tok_1Hh1Xa2eZvKYlo2C3b4d5Ef6', 'fields_to_expand': ['card', 'client_ip'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_topup_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_topup_details_example_call_tool.js deleted file mode 100644 index 393816622..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_topup_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveStripeTopupDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "topup_id": "tu_1J2kLm3NpQ4rStUvWxYz", - "expand_fields": [ - "balance_transaction", - "source_transfer" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_topup_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_topup_details_example_call_tool.py deleted file mode 100644 index 1205e80bf..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_topup_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveStripeTopupDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'topup_id': 'tu_1J2kLm3NpQ4rStUvWxYz', 'expand_fields': ['balance_transaction', 'source_transfer'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_verification_report_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_verification_report_example_call_tool.js deleted file mode 100644 index fe221b187..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_verification_report_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveStripeVerificationReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "verification_report_id": "vr_1J2kL9aBcD3EfGhI", - "fields_to_expand": [ - "checks", - "document", - "identity_checks" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_verification_report_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_verification_report_example_call_tool.py deleted file mode 100644 index 25bf7f980..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_stripe_verification_report_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveStripeVerificationReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'verification_report_id': 'vr_1J2kL9aBcD3EfGhI', - 'fields_to_expand': ['checks', 'document', 'identity_checks'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_subscription_item_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_subscription_item_example_call_tool.js deleted file mode 100644 index be2ab51a4..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_subscription_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveSubscriptionItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_item_id": "si_12345abcde", - "fields_to_expand": [ - "price.product", - "subscription" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_subscription_item_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_subscription_item_example_call_tool.py deleted file mode 100644 index 088633d9e..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_subscription_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveSubscriptionItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_item_id': 'si_12345abcde', 'fields_to_expand': ['price.product', 'subscription'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_subscription_schedule_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_subscription_schedule_example_call_tool.js deleted file mode 100644 index e3aedec66..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_subscription_schedule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveSubscriptionSchedule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "subscription_schedule_id": "sub_sched_12345", - "fields_to_expand_in_response": [ - "phases", - "customer" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_subscription_schedule_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_subscription_schedule_example_call_tool.py deleted file mode 100644 index 899dbe8fb..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_subscription_schedule_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveSubscriptionSchedule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'subscription_schedule_id': 'sub_sched_12345', - 'fields_to_expand_in_response': ['phases', 'customer'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_calculation_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_calculation_example_call_tool.js deleted file mode 100644 index 0907be8f1..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_calculation_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveTaxCalculation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tax_calculation_id": "txcalc_12345", - "fields_to_expand": [ - "lines", - "jurisdictions" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_calculation_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_calculation_example_call_tool.py deleted file mode 100644 index 515b9204c..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_calculation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveTaxCalculation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tax_calculation_id': 'txcalc_12345', 'fields_to_expand': ['lines', 'jurisdictions'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_calculation_line_items_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_calculation_line_items_example_call_tool.js deleted file mode 100644 index df0e21d3e..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_calculation_line_items_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveTaxCalculationLineItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tax_calculation_id": "txcl_1KxYz2AbCdEfGhIj", - "pagination_cursor_ending_before": "tli_00000000000001", - "fields_to_expand": [ - "lines.data.tax_rate", - "customer" - ], - "object_return_limit": 25, - "pagination_starting_after_item_id": "tli_00000000000025" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_calculation_line_items_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_calculation_line_items_example_call_tool.py deleted file mode 100644 index fef88f537..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_calculation_line_items_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveTaxCalculationLineItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tax_calculation_id': 'txcl_1KxYz2AbCdEfGhIj', - 'pagination_cursor_ending_before': 'tli_00000000000001', - 'fields_to_expand': ['lines.data.tax_rate', 'customer'], - 'object_return_limit': 25, - 'pagination_starting_after_item_id': 'tli_00000000000025' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_id_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_id_example_call_tool.js deleted file mode 100644 index 1622ceb0e..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveTaxId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tax_id_identifier": "txi_1J2aBc3DeFGhIJ4KlmnoPqr", - "fields_to_expand": [ - "customer", - "verification" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_id_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_id_example_call_tool.py deleted file mode 100644 index 69310c9c2..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_id_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveTaxId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tax_id_identifier': 'txi_1J2aBc3DeFGhIJ4KlmnoPqr', - 'fields_to_expand': ['customer', 'verification'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_rate_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_rate_example_call_tool.js deleted file mode 100644 index 4b7f6bab5..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_rate_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveTaxRate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tax_rate_id": "txr_1J2eXyAbCdEfGhIj", - "expand_fields": [ - "product", - "countries" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_rate_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_rate_example_call_tool.py deleted file mode 100644 index 45b93858b..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_rate_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveTaxRate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tax_rate_id': 'txr_1J2eXyAbCdEfGhIj', 'expand_fields': ['product', 'countries'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_transaction_example_call_tool.js deleted file mode 100644 index 8f3f118cd..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_transaction_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveTaxTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transaction_id": "tx_1JYb2e2eZvKYlo2C8a9fP0qX", - "expand_response_fields": [ - "lines", - "customer", - "livemode" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_transaction_example_call_tool.py deleted file mode 100644 index e1bdaa068..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_tax_transaction_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveTaxTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transaction_id': 'tx_1JYb2e2eZvKYlo2C8a9fP0qX', - 'expand_response_fields': ['lines', 'customer', 'livemode'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_configuration_example_call_tool.js deleted file mode 100644 index 27db2d0eb..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_configuration_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveTerminalConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "configuration_id": "tconf_12345", - "expand_fields": [ - "details", - "reader_settings" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_configuration_example_call_tool.py deleted file mode 100644 index f8d413bf3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_configuration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveTerminalConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'configuration_id': 'tconf_12345', 'expand_fields': ['details', 'reader_settings'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_location_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_location_example_call_tool.js deleted file mode 100644 index e4fb9163f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_location_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveTerminalLocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "location_id": "tml_1A2b3C4d5E6f7G8h", - "fields_to_expand": [ - "address", - "hardware" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_location_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_location_example_call_tool.py deleted file mode 100644 index ad069be18..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_location_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveTerminalLocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'location_id': 'tml_1A2b3C4d5E6f7G8h', 'fields_to_expand': ['address', 'hardware'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_reader_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_reader_example_call_tool.js deleted file mode 100644 index 460712bda..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_reader_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveTerminalReader"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "terminal_reader_id": "tmr_1A2b3C4d5E6f7G8h", - "fields_to_expand": [ - "location", - "configuration" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_reader_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_reader_example_call_tool.py deleted file mode 100644 index d7c4ff07f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_terminal_reader_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveTerminalReader" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'terminal_reader_id': 'tmr_1A2b3C4d5E6f7G8h', 'fields_to_expand': ['location', 'configuration'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_test_clock_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_test_clock_example_call_tool.js deleted file mode 100644 index bd91b2949..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_test_clock_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveTestClock"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "test_clock_id": "clock_1J2a3b4c5d6e7f8g", - "expand_fields": [ - "frozen_time", - "created_by" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_test_clock_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_test_clock_example_call_tool.py deleted file mode 100644 index 4f721f72d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_test_clock_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveTestClock" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'test_clock_id': 'clock_1J2a3b4c5d6e7f8g', 'expand_fields': ['frozen_time', 'created_by'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_transaction_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_transaction_entry_example_call_tool.js deleted file mode 100644 index ae6577d8b..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_transaction_entry_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveTransactionEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transaction_entry_id": "trea_txn_12345abcde", - "fields_to_expand": [ - "pending_transaction", - "related_payment" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_transaction_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_transaction_entry_example_call_tool.py deleted file mode 100644 index ef078f672..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_transaction_entry_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveTransactionEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transaction_entry_id': 'trea_txn_12345abcde', - 'fields_to_expand': ['pending_transaction', 'related_payment'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_treasury_transaction_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_treasury_transaction_details_example_call_tool.js deleted file mode 100644 index 40e64a9ee..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_treasury_transaction_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveTreasuryTransactionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "transaction_id": "trxn_1Jk2Ab3CdE45Fg6", - "fields_to_expand": [ - "financial_account", - "network_details" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_treasury_transaction_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_treasury_transaction_details_example_call_tool.py deleted file mode 100644 index dacbdbff3..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_treasury_transaction_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveTreasuryTransactionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'transaction_id': 'trxn_1Jk2Ab3CdE45Fg6', - 'fields_to_expand': ['financial_account', 'network_details'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_value_list_item_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_value_list_item_example_call_tool.js deleted file mode 100644 index 404f1e348..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_value_list_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveValueListItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "value_list_item_id": "rli_1JH2x2aBcD3EfGhI", - "fields_to_expand": [ - "created_by", - "value_list" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_value_list_item_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_value_list_item_example_call_tool.py deleted file mode 100644 index 3d5e2e1b5..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_value_list_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveValueListItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'value_list_item_id': 'rli_1JH2x2aBcD3EfGhI', 'fields_to_expand': ['created_by', 'value_list'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_verification_session_details_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_verification_session_details_example_call_tool.js deleted file mode 100644 index 9871b791f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_verification_session_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveVerificationSessionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "verification_session_id": "vs_1J2kL8AbCdEfGhIjKlMnOpQr", - "expand_response_fields": [ - "client_secret", - "last_error" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_verification_session_details_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_verification_session_details_example_call_tool.py deleted file mode 100644 index b945f1851..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_verification_session_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveVerificationSessionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'verification_session_id': 'vs_1J2kL8AbCdEfGhIjKlMnOpQr', - 'expand_response_fields': ['client_secret', 'last_error'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_webhook_endpoint_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/retrieve_webhook_endpoint_example_call_tool.js deleted file mode 100644 index 65a1fb1df..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_webhook_endpoint_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.RetrieveWebhookEndpoint"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_endpoint_id": "we_1NexAmPlEid", - "fields_to_expand": [ - "clicks", - "metadata" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/retrieve_webhook_endpoint_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/retrieve_webhook_endpoint_example_call_tool.py deleted file mode 100644 index c5bc2ff2f..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/retrieve_webhook_endpoint_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.RetrieveWebhookEndpoint" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_endpoint_id': 'we_1NexAmPlEid', 'fields_to_expand': ['clicks', 'metadata'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_customers_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/search_stripe_customers_example_call_tool.js deleted file mode 100644 index 5e1f1b01b..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_customers_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.SearchStripeCustomers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query_string": "email:'alice@example.com' OR metadata['account_id']:'acct_12345'", - "expand_response_fields": [ - "subscriptions", - "default_source" - ], - "customer_result_limit": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_customers_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/search_stripe_customers_example_call_tool.py deleted file mode 100644 index 367a4404a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_customers_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.SearchStripeCustomers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query_string': "email:'alice@example.com' OR metadata['account_id']:'acct_12345'", - 'expand_response_fields': ['subscriptions', 'default_source'], - 'customer_result_limit': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/search_stripe_invoices_example_call_tool.js deleted file mode 100644 index 7e186403d..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_invoices_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.SearchStripeInvoices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query_string": "status:'open' AND amount_due:>5000", - "fields_to_expand": [ - "customer", - "payment_intent" - ], - "result_limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/search_stripe_invoices_example_call_tool.py deleted file mode 100644 index 63cd41046..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_invoices_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.SearchStripeInvoices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query_string': "status:'open' AND amount_due:>5000", - 'fields_to_expand': ['customer', 'payment_intent'], - 'result_limit': 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_payment_intents_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/search_stripe_payment_intents_example_call_tool.js deleted file mode 100644 index bd7c85953..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_payment_intents_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.SearchStripePaymentIntents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query_string": "status:'requires_capture' AND amount>=1000", - "expand_fields": [ - "charges.data.balance_transaction", - "customer" - ], - "result_limit": 25, - "pagination_cursor": "cursor_abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_payment_intents_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/search_stripe_payment_intents_example_call_tool.py deleted file mode 100644 index d2210081e..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_payment_intents_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.SearchStripePaymentIntents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query_string': "status:'requires_capture' AND amount>=1000", - 'expand_fields': ['charges.data.balance_transaction', 'customer'], - 'result_limit': 25, - 'pagination_cursor': 'cursor_abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_prices_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/search_stripe_prices_example_call_tool.js deleted file mode 100644 index 7b823a848..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_prices_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.SearchStripePrices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query_string": "active:'true' AND currency:'usd' AND product:'prod_ABC123'", - "fields_to_expand": [ - "data.product" - ], - "result_limit": 25, - "pagination_cursor": "" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_prices_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/search_stripe_prices_example_call_tool.py deleted file mode 100644 index 6a21ffe9a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_prices_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.SearchStripePrices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query_string': "active:'true' AND currency:'usd' AND product:'prod_ABC123'", - 'fields_to_expand': ['data.product'], - 'result_limit': 25, - 'pagination_cursor': '' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_products_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/search_stripe_products_example_call_tool.js deleted file mode 100644 index a807c6123..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_products_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.SearchStripeProducts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query_string": "name:'Premium Plan' AND active:true", - "response_fields_to_expand": [ - "default_price", - "metadata" - ], - "results_limit": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_products_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/search_stripe_products_example_call_tool.py deleted file mode 100644 index ca2ced799..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_products_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.SearchStripeProducts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query_string': "name:'Premium Plan' AND active:true", - 'response_fields_to_expand': ['default_price', 'metadata'], - 'results_limit': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_subscriptions_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/search_stripe_subscriptions_example_call_tool.js deleted file mode 100644 index a05eabfbd..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_subscriptions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.SearchStripeSubscriptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query_string": "status:'active' AND metadata['team']:'engineering'", - "expand_fields": [ - "customer", - "latest_invoice.payment_intent" - ], - "result_limit": 25 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_subscriptions_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/search_stripe_subscriptions_example_call_tool.py deleted file mode 100644 index bc88c9b56..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/search_stripe_subscriptions_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.SearchStripeSubscriptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query_string': "status:'active' AND metadata['team']:'engineering'", - 'expand_fields': ['customer', 'latest_invoice.payment_intent'], - 'result_limit': 25 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/stripe_api/stripe_search_charges_example_call_tool.js b/public/examples/integrations/mcp-servers/stripe_api/stripe_search_charges_example_call_tool.js deleted file mode 100644 index 32ba2946a..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/stripe_search_charges_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "StripeApi.StripeSearchCharges"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query_string": "amount>1000 AND status:'succeeded' AND created>2024-01-01", - "fields_to_expand": [ - "payment_method", - "invoice" - ], - "result_limit": 20 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/stripe_api/stripe_search_charges_example_call_tool.py b/public/examples/integrations/mcp-servers/stripe_api/stripe_search_charges_example_call_tool.py deleted file mode 100644 index 2cbba3ecf..000000000 --- a/public/examples/integrations/mcp-servers/stripe_api/stripe_search_charges_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "StripeApi.StripeSearchCharges" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query_string': "amount>1000 AND status:'succeeded' AND created>2024-01-01", - 'fields_to_expand': ['payment_method', 'invoice'], - 'result_limit': 20 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ticktick_api/create_project_in_ticktick_example_call_tool.js b/public/examples/integrations/mcp-servers/ticktick_api/create_project_in_ticktick_example_call_tool.js deleted file mode 100644 index 4fb725e5c..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/create_project_in_ticktick_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TicktickApi.CreateProjectInTicktick"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_name": "New Project", - "project_color": "#FF5733", - "project_kind": "TASK", - "project_sort_order": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ticktick_api/create_project_in_ticktick_example_call_tool.py b/public/examples/integrations/mcp-servers/ticktick_api/create_project_in_ticktick_example_call_tool.py deleted file mode 100644 index 2815e3286..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/create_project_in_ticktick_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TicktickApi.CreateProjectInTicktick" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_name': 'New Project', - 'project_color': '#FF5733', - 'project_kind': 'TASK', - 'project_sort_order': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ticktick_api/create_task_ticktick_example_call_tool.js b/public/examples/integrations/mcp-servers/ticktick_api/create_task_ticktick_example_call_tool.js deleted file mode 100644 index c1d4827a8..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/create_task_ticktick_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TicktickApi.CreateTaskTicktick"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"title\":\"Buy groceries\",\"content\":\"Milk, Bread, Eggs\",\"due_date\":\"2023-10-15\",\"reminders\":[{\"time\":\"2023-10-14T09:00:00\"}],\"subtasks\":[{\"title\":\"Check pantry\"}],\"project\":\"Shopping\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ticktick_api/create_task_ticktick_example_call_tool.py b/public/examples/integrations/mcp-servers/ticktick_api/create_task_ticktick_example_call_tool.py deleted file mode 100644 index 1eea2bb58..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/create_task_ticktick_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TicktickApi.CreateTaskTicktick" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"title":"Buy groceries","content":"Milk, Bread, ' - 'Eggs","due_date":"2023-10-15","reminders":[{"time":"2023-10-14T09:00:00"}],"subtasks":[{"title":"Check ' - 'pantry"}],"project":"Shopping"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ticktick_api/delete_specific_task_example_call_tool.js b/public/examples/integrations/mcp-servers/ticktick_api/delete_specific_task_example_call_tool.js deleted file mode 100644 index 70987959b..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/delete_specific_task_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TicktickApi.DeleteSpecificTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "task_identifier_to_delete": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ticktick_api/delete_specific_task_example_call_tool.py b/public/examples/integrations/mcp-servers/ticktick_api/delete_specific_task_example_call_tool.py deleted file mode 100644 index 7b14ae214..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/delete_specific_task_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TicktickApi.DeleteSpecificTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'task_identifier_to_delete': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ticktick_api/delete_ticktick_project_example_call_tool.js b/public/examples/integrations/mcp-servers/ticktick_api/delete_ticktick_project_example_call_tool.js deleted file mode 100644 index 1f6169e28..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/delete_ticktick_project_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TicktickApi.DeleteTicktickProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ticktick_api/delete_ticktick_project_example_call_tool.py b/public/examples/integrations/mcp-servers/ticktick_api/delete_ticktick_project_example_call_tool.py deleted file mode 100644 index 84e6ca926..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/delete_ticktick_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TicktickApi.DeleteTicktickProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ticktick_api/get_ticktick_project_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/ticktick_api/get_ticktick_project_by_id_example_call_tool.js deleted file mode 100644 index 89f011665..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/get_ticktick_project_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TicktickApi.GetTicktickProjectById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ticktick_api/get_ticktick_project_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/ticktick_api/get_ticktick_project_by_id_example_call_tool.py deleted file mode 100644 index b9d779da1..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/get_ticktick_project_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TicktickApi.GetTicktickProjectById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ticktick_api/get_user_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/ticktick_api/get_user_projects_example_call_tool.js deleted file mode 100644 index db1dd9e64..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/get_user_projects_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TicktickApi.GetUserProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ticktick_api/get_user_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/ticktick_api/get_user_projects_example_call_tool.py deleted file mode 100644 index a21e2e669..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/get_user_projects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TicktickApi.GetUserProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ticktick_api/mark_task_complete_example_call_tool.js b/public/examples/integrations/mcp-servers/ticktick_api/mark_task_complete_example_call_tool.js deleted file mode 100644 index 847d7d207..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/mark_task_complete_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TicktickApi.MarkTaskComplete"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "task_identifier": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ticktick_api/mark_task_complete_example_call_tool.py b/public/examples/integrations/mcp-servers/ticktick_api/mark_task_complete_example_call_tool.py deleted file mode 100644 index 3a8991114..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/mark_task_complete_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TicktickApi.MarkTaskComplete" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'task_identifier': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ticktick_api/retrieve_project_with_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/ticktick_api/retrieve_project_with_tasks_example_call_tool.js deleted file mode 100644 index 8a9574e69..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/retrieve_project_with_tasks_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TicktickApi.RetrieveProjectWithTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ticktick_api/retrieve_project_with_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/ticktick_api/retrieve_project_with_tasks_example_call_tool.py deleted file mode 100644 index c6c6f115b..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/retrieve_project_with_tasks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TicktickApi.RetrieveProjectWithTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ticktick_api/retrieve_task_details_example_call_tool.js b/public/examples/integrations/mcp-servers/ticktick_api/retrieve_task_details_example_call_tool.js deleted file mode 100644 index 787b67925..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/retrieve_task_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TicktickApi.RetrieveTaskDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "proj-123", - "task_identifier": "task-456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ticktick_api/retrieve_task_details_example_call_tool.py b/public/examples/integrations/mcp-servers/ticktick_api/retrieve_task_details_example_call_tool.py deleted file mode 100644 index 6f6ad7ae6..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/retrieve_task_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TicktickApi.RetrieveTaskDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'proj-123', 'task_identifier': 'task-456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ticktick_api/update_project_properties_example_call_tool.js b/public/examples/integrations/mcp-servers/ticktick_api/update_project_properties_example_call_tool.js deleted file mode 100644 index 652274884..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/update_project_properties_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TicktickApi.UpdateProjectProperties"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "12345", - "project_color": "#FF5733", - "project_name": "New Project Name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ticktick_api/update_project_properties_example_call_tool.py b/public/examples/integrations/mcp-servers/ticktick_api/update_project_properties_example_call_tool.py deleted file mode 100644 index 14d291065..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/update_project_properties_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TicktickApi.UpdateProjectProperties" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': '12345', 'project_color': '#FF5733', 'project_name': 'New Project Name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/ticktick_api/update_task_properties_example_call_tool.js b/public/examples/integrations/mcp-servers/ticktick_api/update_task_properties_example_call_tool.js deleted file mode 100644 index b543a31f5..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/update_task_properties_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TicktickApi.UpdateTaskProperties"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "task_identifier": "12345", - "request_body": "{\"title\":\"New Task Title\",\"status\":\"completed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/ticktick_api/update_task_properties_example_call_tool.py b/public/examples/integrations/mcp-servers/ticktick_api/update_task_properties_example_call_tool.py deleted file mode 100644 index db1604e8b..000000000 --- a/public/examples/integrations/mcp-servers/ticktick_api/update_task_properties_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TicktickApi.UpdateTaskProperties" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'task_identifier': '12345', - 'request_body': '{"title":"New Task Title","status":"completed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/add_attachment_to_trello_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/add_attachment_to_trello_card_example_call_tool.js deleted file mode 100644 index 6136f24fc..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_attachment_to_trello_card_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.AddAttachmentToTrelloCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345", - "attachment_url": "https://example.com/file.pdf", - "use_as_card_cover": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/add_attachment_to_trello_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/add_attachment_to_trello_card_example_call_tool.py deleted file mode 100644 index e7002f0c4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_attachment_to_trello_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.AddAttachmentToTrelloCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345', 'attachment_url': 'https://example.com/file.pdf', 'use_as_card_cover': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/add_comment_to_trello_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/add_comment_to_trello_card_example_call_tool.js deleted file mode 100644 index 1a7530aca..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_comment_to_trello_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.AddCommentToTrelloCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345abcde", - "comment_text": "This is a sample comment." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/add_comment_to_trello_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/add_comment_to_trello_card_example_call_tool.py deleted file mode 100644 index 7306a15ce..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_comment_to_trello_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.AddCommentToTrelloCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345abcde', 'comment_text': 'This is a sample comment.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/add_dropdown_option_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/add_dropdown_option_custom_field_example_call_tool.js deleted file mode 100644 index 994b530b7..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_dropdown_option_custom_field_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.AddDropdownOptionCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_field_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/add_dropdown_option_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/add_dropdown_option_custom_field_example_call_tool.py deleted file mode 100644 index cb15fed1d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_dropdown_option_custom_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.AddDropdownOptionCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_field_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/add_label_to_trello_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/add_label_to_trello_card_example_call_tool.js deleted file mode 100644 index 4c357a760..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_label_to_trello_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.AddLabelToTrelloCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345", - "label_id": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/add_label_to_trello_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/add_label_to_trello_card_example_call_tool.py deleted file mode 100644 index a22a60527..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_label_to_trello_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.AddLabelToTrelloCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345', 'label_id': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/add_member_to_board_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/add_member_to_board_example_call_tool.js deleted file mode 100644 index 1b4acd0aa..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_member_to_board_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.AddMemberToBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "member_id_to_add": "67890", - "member_role_type": "normal", - "allow_billable_guest": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/add_member_to_board_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/add_member_to_board_example_call_tool.py deleted file mode 100644 index 85fea29d6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_member_to_board_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.AddMemberToBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', - 'member_id_to_add': '67890', - 'member_role_type': 'normal', - 'allow_billable_guest': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/add_member_to_trello_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/add_member_to_trello_card_example_call_tool.js deleted file mode 100644 index 19b23ff8f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_member_to_trello_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.AddMemberToTrelloCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345", - "member_id_to_add": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/add_member_to_trello_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/add_member_to_trello_card_example_call_tool.py deleted file mode 100644 index 85e75a84b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_member_to_trello_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.AddMemberToTrelloCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345', 'member_id_to_add': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/add_or_update_workspace_member_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/add_or_update_workspace_member_example_call_tool.js deleted file mode 100644 index fb8c5fea1..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_or_update_workspace_member_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.AddOrUpdateWorkspaceMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "member_role_type": "admin", - "organization_id_or_name": "my_organization" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/add_or_update_workspace_member_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/add_or_update_workspace_member_example_call_tool.py deleted file mode 100644 index 0e8a7383f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_or_update_workspace_member_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.AddOrUpdateWorkspaceMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', - 'member_role_type': 'admin', - 'organization_id_or_name': 'my_organization' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/add_reaction_to_trello_action_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/add_reaction_to_trello_action_example_call_tool.js deleted file mode 100644 index 14ca30ebe..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_reaction_to_trello_action_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.AddReactionToTrelloAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "12345", - "emoji_short_name": "thumbsup" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/add_reaction_to_trello_action_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/add_reaction_to_trello_action_example_call_tool.py deleted file mode 100644 index 8887b283f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_reaction_to_trello_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.AddReactionToTrelloAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '12345', 'emoji_short_name': 'thumbsup' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/add_sticker_to_trello_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/add_sticker_to_trello_card_example_call_tool.js deleted file mode 100644 index 61e3bb81e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_sticker_to_trello_card_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.AddStickerToTrelloCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345", - "sticker_identifier": "taco-cool", - "sticker_left_position": 10, - "sticker_top_position": 20, - "sticker_z_index": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/add_sticker_to_trello_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/add_sticker_to_trello_card_example_call_tool.py deleted file mode 100644 index 379182e2d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_sticker_to_trello_card_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.AddStickerToTrelloCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345', - 'sticker_identifier': 'taco-cool', - 'sticker_left_position': 10, - 'sticker_top_position': 20, - 'sticker_z_index': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/add_trello_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/add_trello_webhook_example_call_tool.js deleted file mode 100644 index 06f87b659..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_trello_webhook_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.AddTrelloWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "callback_url": "https://example.com/webhook", - "model_id_to_monitor": "123456789", - "is_webhook_active": true, - "webhook_description": "Webhook for monitoring card updates." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/add_trello_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/add_trello_webhook_example_call_tool.py deleted file mode 100644 index 750987e26..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/add_trello_webhook_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.AddTrelloWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'callback_url': 'https://example.com/webhook', - 'model_id_to_monitor': '123456789', - 'is_webhook_active': True, - 'webhook_description': 'Webhook for monitoring card updates.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/archive_all_cards_in_list_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/archive_all_cards_in_list_example_call_tool.js deleted file mode 100644 index bed2a7aa0..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/archive_all_cards_in_list_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ArchiveAllCardsInList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/archive_all_cards_in_list_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/archive_all_cards_in_list_example_call_tool.py deleted file mode 100644 index 45dec1b31..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/archive_all_cards_in_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ArchiveAllCardsInList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/archive_or_unarchive_trello_list_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/archive_or_unarchive_trello_list_example_call_tool.js deleted file mode 100644 index 47559b855..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/archive_or_unarchive_trello_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ArchiveOrUnarchiveTrelloList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345", - "archive_list": "true" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/archive_or_unarchive_trello_list_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/archive_or_unarchive_trello_list_example_call_tool.py deleted file mode 100644 index 15cd7ae91..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/archive_or_unarchive_trello_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ArchiveOrUnarchiveTrelloList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345', 'archive_list': 'true' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/check_board_billable_guests_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/check_board_billable_guests_example_call_tool.js deleted file mode 100644 index 563e95e2e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/check_board_billable_guests_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CheckBoardBillableGuests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345abcde", - "organization_id_or_name": "MyOrg" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/check_board_billable_guests_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/check_board_billable_guests_example_call_tool.py deleted file mode 100644 index 77f362f30..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/check_board_billable_guests_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CheckBoardBillableGuests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345abcde', 'organization_id_or_name': 'MyOrg' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/check_organization_transferability_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/check_organization_transferability_example_call_tool.js deleted file mode 100644 index 4c453ccf6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/check_organization_transferability_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CheckOrganizationTransferability"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "ent123", - "organization_id": "org456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/check_organization_transferability_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/check_organization_transferability_example_call_tool.py deleted file mode 100644 index c78e2bea1..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/check_organization_transferability_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CheckOrganizationTransferability" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': 'ent123', 'organization_id': 'org456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_board_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_board_tag_example_call_tool.js deleted file mode 100644 index 18e890604..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_board_tag_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateBoardTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "123456789", - "organization_tag_id": "987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_board_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_board_tag_example_call_tool.py deleted file mode 100644 index a1899f5cf..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_board_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateBoardTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '123456789', 'organization_tag_id': '987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_checkitem_in_checklist_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_checkitem_in_checklist_example_call_tool.js deleted file mode 100644 index cf2ef35a5..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_checkitem_in_checklist_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateCheckitemInChecklist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checkitem_name": "Review code", - "checklist_id": "abc123", - "checkitem_due_date": "2023-10-30", - "checkitem_position": "bottom", - "due_reminder_minutes": 10, - "is_checkitem_checked": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_checkitem_in_checklist_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_checkitem_in_checklist_example_call_tool.py deleted file mode 100644 index b87bbf5a2..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_checkitem_in_checklist_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateCheckitemInChecklist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checkitem_name': 'Review code', - 'checklist_id': 'abc123', - 'checkitem_due_date': '2023-10-30', - 'checkitem_position': 'bottom', - 'due_reminder_minutes': 10, - 'is_checkitem_checked': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_checklist_on_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_checklist_on_card_example_call_tool.js deleted file mode 100644 index 2e2525a64..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_checklist_on_card_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateChecklistOnCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345", - "checklist_name": "To Do", - "checklist_position": "top" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_checklist_on_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_checklist_on_card_example_call_tool.py deleted file mode 100644 index b5cb4628b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_checklist_on_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateChecklistOnCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345', 'checklist_name': 'To Do', 'checklist_position': 'top' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_custom_emoji_trello_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_custom_emoji_trello_example_call_tool.js deleted file mode 100644 index dd490ea7a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_custom_emoji_trello_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateCustomEmojiTrello"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "emoji_image_file": "https://example.com/emoji.png", - "emoji_name": "CoolEmoji", - "member_identifier": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_custom_emoji_trello_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_custom_emoji_trello_example_call_tool.py deleted file mode 100644 index 48535dad7..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_custom_emoji_trello_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateCustomEmojiTrello" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'emoji_image_file': 'https://example.com/emoji.png', - 'emoji_name': 'CoolEmoji', - 'member_identifier': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_enterprise_auth_token_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_enterprise_auth_token_example_call_tool.js deleted file mode 100644 index 2f4c472a4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_enterprise_auth_token_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateEnterpriseAuthToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "123456789", - "token_expiration": "1day" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_enterprise_auth_token_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_enterprise_auth_token_example_call_tool.py deleted file mode 100644 index 6e9052114..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_enterprise_auth_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateEnterpriseAuthToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': '123456789', 'token_expiration': '1day' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_label_on_board_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_label_on_board_example_call_tool.js deleted file mode 100644 index a38e3190c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_label_on_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateLabelOnBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "label_color": "green", - "label_name": "In Progress" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_label_on_board_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_label_on_board_example_call_tool.py deleted file mode 100644 index 1c6df2dab..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_label_on_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateLabelOnBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'label_color': 'green', 'label_name': 'In Progress' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_member_avatar_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_member_avatar_example_call_tool.js deleted file mode 100644 index 900bcfbbc..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_member_avatar_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateMemberAvatar"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "avatar_image_file": "[base64_image_data]", - "member_id_or_username": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_member_avatar_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_member_avatar_example_call_tool.py deleted file mode 100644 index ebc790456..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_member_avatar_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateMemberAvatar" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'avatar_image_file': '[base64_image_data]', 'member_id_or_username': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_new_label_on_board_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_new_label_on_board_example_call_tool.js deleted file mode 100644 index 60959917c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_new_label_on_board_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateNewLabelOnBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "123456789", - "label_color": "blue", - "label_name": "In Progress" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_new_label_on_board_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_new_label_on_board_example_call_tool.py deleted file mode 100644 index f20514cb0..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_new_label_on_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateNewLabelOnBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '123456789', 'label_color': 'blue', 'label_name': 'In Progress' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_organization_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_organization_tag_example_call_tool.js deleted file mode 100644 index 3b19996f0..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_organization_tag_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateOrganizationTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id_or_name": "org_123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_organization_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_organization_tag_example_call_tool.py deleted file mode 100644 index 9687ca530..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_organization_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateOrganizationTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id_or_name': 'org_123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_saved_search_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_saved_search_example_call_tool.js deleted file mode 100644 index 39b796c94..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_saved_search_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateSavedSearch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "saved_search_name": "Important Tasks", - "saved_search_position": "top", - "search_query": "is:open" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_saved_search_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_saved_search_example_call_tool.py deleted file mode 100644 index 11031821e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_saved_search_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateSavedSearch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', - 'saved_search_name': 'Important Tasks', - 'saved_search_position': 'top', - 'search_query': 'is:open' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_board_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_trello_board_example_call_tool.js deleted file mode 100644 index 2e34baa9c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_board_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateTrelloBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_name": "Project Alpha", - "add_default_lists": true, - "board_background_color": "blue", - "board_description": "This board is for managing Project Alpha tasks.", - "board_permission_level": "private", - "enable_card_covers": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_board_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_trello_board_example_call_tool.py deleted file mode 100644 index 9248cf3cd..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_board_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateTrelloBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_name': 'Project Alpha', - 'add_default_lists': True, - 'board_background_color': 'blue', - 'board_description': 'This board is for managing Project Alpha tasks.', - 'board_permission_level': 'private', - 'enable_card_covers': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_board_list_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_trello_board_list_example_call_tool.js deleted file mode 100644 index 1d2708a94..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_board_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateTrelloBoardList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "1234567890abcdef", - "list_name": "To Do", - "list_position": "top" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_board_list_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_trello_board_list_example_call_tool.py deleted file mode 100644 index f3078480f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_board_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateTrelloBoardList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '1234567890abcdef', 'list_name': 'To Do', 'list_position': 'top' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_card_label_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_trello_card_label_example_call_tool.js deleted file mode 100644 index 148b039a3..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_card_label_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateTrelloCardLabel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "1234567890", - "label_color": "green", - "label_name": "In Progress" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_card_label_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_trello_card_label_example_call_tool.py deleted file mode 100644 index 60b70db52..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_card_label_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateTrelloCardLabel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '1234567890', 'label_color': 'green', 'label_name': 'In Progress' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_checklist_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_trello_checklist_example_call_tool.js deleted file mode 100644 index 54f705f88..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_checklist_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateTrelloChecklist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "1234567890", - "checklist_name": "To Do", - "checklist_position": "top" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_checklist_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_trello_checklist_example_call_tool.py deleted file mode 100644 index b520edfce..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_checklist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateTrelloChecklist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '1234567890', 'checklist_name': 'To Do', 'checklist_position': 'top' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_trello_custom_field_example_call_tool.js deleted file mode 100644 index 63f0ff422..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_custom_field_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateTrelloCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Priority\",\"type\":\"list\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_trello_custom_field_example_call_tool.py deleted file mode 100644 index 8a703aa90..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_custom_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateTrelloCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"name":"Priority","type":"list"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_list_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_trello_list_example_call_tool.js deleted file mode 100644 index bd9246d49..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateTrelloList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "1234567890abcdef", - "list_name": "To Do", - "list_position": "top" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_list_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_trello_list_example_call_tool.py deleted file mode 100644 index eb9433366..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateTrelloList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '1234567890abcdef', 'list_name': 'To Do', 'list_position': 'top' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_plugin_listing_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_trello_plugin_listing_example_call_tool.js deleted file mode 100644 index 058ec76d0..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_plugin_listing_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateTrelloPluginListing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "power_up_id": "12345", - "listing_locale": "en-US", - "locale_description": "A powerful tool for managing tasks", - "overview_for_locale": "Manage your projects efficiently with our Power-Up", - "plugin_locale_name": "Task Manager" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_plugin_listing_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_trello_plugin_listing_example_call_tool.py deleted file mode 100644 index 0d945d613..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_plugin_listing_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateTrelloPluginListing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'power_up_id': '12345', - 'listing_locale': 'en-US', - 'locale_description': 'A powerful tool for managing tasks', - 'overview_for_locale': 'Manage your projects efficiently with our Power-Up', - 'plugin_locale_name': 'Task Manager' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_trello_webhook_example_call_tool.js deleted file mode 100644 index 1285a3561..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_webhook_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateTrelloWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "object_id_for_webhook": "123456", - "trello_token": "abc123xyz", - "webhook_callback_url": "https://example.com/webhook", - "webhook_description": "Webhook for tracking card updates" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_trello_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_trello_webhook_example_call_tool.py deleted file mode 100644 index 68947673a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_trello_webhook_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateTrelloWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'object_id_for_webhook': '123456', - 'trello_token': 'abc123xyz', - 'webhook_callback_url': 'https://example.com/webhook', - 'webhook_description': 'Webhook for tracking card updates' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/create_workspace_trello_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/create_workspace_trello_example_call_tool.js deleted file mode 100644 index c56db0e6a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_workspace_trello_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.CreateWorkspaceTrello"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "display_name": "Project Alpha", - "website_url": "https://projectalpha.com", - "workspace_description": "Workspace for managing Project Alpha tasks and resources." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/create_workspace_trello_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/create_workspace_trello_example_call_tool.py deleted file mode 100644 index b4e6dbdd8..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/create_workspace_trello_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.CreateWorkspaceTrello" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'display_name': 'Project Alpha', - 'website_url': 'https://projectalpha.com', - 'workspace_description': 'Workspace for managing Project Alpha tasks and resources.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/deactivate_enterprise_member_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/deactivate_enterprise_member_example_call_tool.js deleted file mode 100644 index 97ded6cf8..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/deactivate_enterprise_member_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeactivateEnterpriseMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deactivate_member": true, - "enterprise_id": "ent12345", - "member_id_to_deactivate": "mem67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/deactivate_enterprise_member_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/deactivate_enterprise_member_example_call_tool.py deleted file mode 100644 index 34b11f003..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/deactivate_enterprise_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeactivateEnterpriseMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deactivate_member': True, 'enterprise_id': 'ent12345', 'member_id_to_deactivate': 'mem67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_board_background_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_board_background_example_call_tool.js deleted file mode 100644 index bec1f7cbf..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_board_background_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteBoardBackground"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_background_id": "bg_12345", - "member_id_or_username": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_board_background_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_board_background_example_call_tool.py deleted file mode 100644 index bbbdb4106..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_board_background_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteBoardBackground" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_background_id': 'bg_12345', 'member_id_or_username': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_board_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_board_example_call_tool.js deleted file mode 100644 index 0e3f7187f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_board_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id_to_delete": "12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_board_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_board_example_call_tool.py deleted file mode 100644 index 1a82115a1..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id_to_delete': '12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_card_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_card_attachment_example_call_tool.js deleted file mode 100644 index 44347cd91..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_card_attachment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteCardAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "attachment_id_to_delete": "att12345", - "card_id": "card67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_card_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_card_attachment_example_call_tool.py deleted file mode 100644 index 39f72b9cc..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_card_attachment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteCardAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'attachment_id_to_delete': 'att12345', 'card_id': 'card67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_checklist_item_on_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_checklist_item_on_card_example_call_tool.js deleted file mode 100644 index 0af896976..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_checklist_item_on_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteChecklistItemOnCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345abcde", - "checklist_item_id": "item67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_checklist_item_on_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_checklist_item_on_card_example_call_tool.py deleted file mode 100644 index 348db54ef..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_checklist_item_on_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteChecklistItemOnCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345abcde', 'checklist_item_id': 'item67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_comment_on_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_comment_on_card_example_call_tool.js deleted file mode 100644 index 65137d634..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_comment_on_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteCommentOnCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345abcde", - "comment_action_id": "67890fghij" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_comment_on_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_comment_on_card_example_call_tool.py deleted file mode 100644 index 9d2e06bcf..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_comment_on_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteCommentOnCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345abcde', 'comment_action_id': '67890fghij' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_custom_field_option_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_custom_field_option_example_call_tool.js deleted file mode 100644 index f4af0f5af..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_custom_field_option_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteCustomFieldOption"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_field_item_id": "1234567890abcdef", - "custom_field_option_id": "abcdef1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_custom_field_option_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_custom_field_option_example_call_tool.py deleted file mode 100644 index a10cda2eb..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_custom_field_option_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteCustomFieldOption" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_field_item_id': '1234567890abcdef', 'custom_field_option_id': 'abcdef1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_custom_sticker_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_custom_sticker_example_call_tool.js deleted file mode 100644 index a4115354b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_custom_sticker_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteCustomSticker"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "sticker_id": "sticker_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_custom_sticker_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_custom_sticker_example_call_tool.py deleted file mode 100644 index f4463c744..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_custom_sticker_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteCustomSticker" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', 'sticker_id': 'sticker_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_label_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_label_by_id_example_call_tool.js deleted file mode 100644 index bcd4610f2..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_label_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteLabelById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "label_id": "123abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_label_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_label_by_id_example_call_tool.py deleted file mode 100644 index ec21f21ef..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_label_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteLabelById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'label_id': '123abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_member_from_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_member_from_workspace_example_call_tool.js deleted file mode 100644 index f8b72bc64..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_member_from_workspace_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteMemberFromWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_to_remove": "12345", - "organization_id_or_name": "my_workspace" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_member_from_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_member_from_workspace_example_call_tool.py deleted file mode 100644 index bed7f52cd..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_member_from_workspace_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteMemberFromWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_to_remove': '12345', 'organization_id_or_name': 'my_workspace' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_organization_tag_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_organization_tag_example_call_tool.js deleted file mode 100644 index d1ba543af..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_organization_tag_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteOrganizationTag"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id_or_name": "org_12345", - "tag_id_to_delete": "tag_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_organization_tag_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_organization_tag_example_call_tool.py deleted file mode 100644 index 0582359be..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_organization_tag_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteOrganizationTag" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id_or_name': 'org_12345', 'tag_id_to_delete': 'tag_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_saved_search_on_trello_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_saved_search_on_trello_example_call_tool.js deleted file mode 100644 index 4e5eaac37..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_saved_search_on_trello_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteSavedSearchOnTrello"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "saved_search_id": "search_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_saved_search_on_trello_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_saved_search_on_trello_example_call_tool.py deleted file mode 100644 index f3a478a58..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_saved_search_on_trello_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteSavedSearchOnTrello" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', 'saved_search_id': 'search_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_action_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_trello_action_example_call_tool.js deleted file mode 100644 index 9dd8ae5b3..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_action_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteTrelloAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_action_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_trello_action_example_call_tool.py deleted file mode 100644 index 0ed007c7b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteTrelloAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_card_checklist_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_trello_card_checklist_example_call_tool.js deleted file mode 100644 index cfd9808ad..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_card_checklist_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteTrelloCardChecklist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "123abc", - "checklist_id": "456def" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_card_checklist_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_trello_card_checklist_example_call_tool.py deleted file mode 100644 index fe0836f8a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_card_checklist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteTrelloCardChecklist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '123abc', 'checklist_id': '456def' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_trello_card_example_call_tool.js deleted file mode 100644 index 2fac0ab77..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_card_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteTrelloCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "123abc456def" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_trello_card_example_call_tool.py deleted file mode 100644 index 0bf88408d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteTrelloCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '123abc456def' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_checklist_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_trello_checklist_example_call_tool.js deleted file mode 100644 index e0c984c8c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_checklist_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteTrelloChecklist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checklist_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_checklist_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_trello_checklist_example_call_tool.py deleted file mode 100644 index 0421531b6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_checklist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteTrelloChecklist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checklist_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_trello_custom_field_example_call_tool.js deleted file mode 100644 index c8c601d00..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_custom_field_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteTrelloCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_field_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_trello_custom_field_example_call_tool.py deleted file mode 100644 index 78a96d4c6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_custom_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteTrelloCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_field_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_trello_organization_example_call_tool.js deleted file mode 100644 index c8514a349..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_organization_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteTrelloOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_trello_organization_example_call_tool.py deleted file mode 100644 index e692d223b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_organization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteTrelloOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_reaction_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_trello_reaction_example_call_tool.js deleted file mode 100644 index 784533c61..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_reaction_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteTrelloReaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "1234567890abcdef", - "reaction_id": "abcdef1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_reaction_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_trello_reaction_example_call_tool.py deleted file mode 100644 index 0cde95706..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_reaction_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteTrelloReaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '1234567890abcdef', 'reaction_id': 'abcdef1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_token_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_trello_token_example_call_tool.js deleted file mode 100644 index e7881a848..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_token_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteTrelloToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "trello_token_to_delete": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_token_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_trello_token_example_call_tool.py deleted file mode 100644 index a7ebc17c2..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteTrelloToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'trello_token_to_delete': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_trello_webhook_example_call_tool.js deleted file mode 100644 index 169875075..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_webhook_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteTrelloWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "access_token": "abc123xyz", - "webhook_id": "webhook_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_trello_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_trello_webhook_example_call_tool.py deleted file mode 100644 index 306f4fd53..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_trello_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteTrelloWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'access_token': 'abc123xyz', 'webhook_id': 'webhook_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_workspace_logo_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/delete_workspace_logo_example_call_tool.js deleted file mode 100644 index 1faf94503..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_workspace_logo_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DeleteWorkspaceLogo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id_or_name": "my-trello-workspace" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/delete_workspace_logo_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/delete_workspace_logo_example_call_tool.py deleted file mode 100644 index 7eb2b1ec6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/delete_workspace_logo_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DeleteWorkspaceLogo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id_or_name': 'my-trello-workspace' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/dismiss_trello_message_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/dismiss_trello_message_example_call_tool.js deleted file mode 100644 index c48270d7f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/dismiss_trello_message_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.DismissTrelloMessage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "message_to_dismiss": "You have a new task assigned to you." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/dismiss_trello_message_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/dismiss_trello_message_example_call_tool.py deleted file mode 100644 index 82f885a96..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/dismiss_trello_message_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.DismissTrelloMessage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', 'message_to_dismiss': 'You have a new task assigned to you.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/generate_board_calendar_key_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/generate_board_calendar_key_example_call_tool.js deleted file mode 100644 index 90cabc12b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/generate_board_calendar_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GenerateBoardCalendarKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/generate_board_calendar_key_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/generate_board_calendar_key_example_call_tool.py deleted file mode 100644 index f62c32c04..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/generate_board_calendar_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GenerateBoardCalendarKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/generate_board_email_key_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/generate_board_email_key_example_call_tool.js deleted file mode 100644 index 4b6543807..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/generate_board_email_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GenerateBoardEmailKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/generate_board_email_key_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/generate_board_email_key_example_call_tool.py deleted file mode 100644 index aeb7bf9c9..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/generate_board_email_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GenerateBoardEmailKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_action_creator_member_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_action_creator_member_example_call_tool.js deleted file mode 100644 index 31ffb4eaa..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_action_creator_member_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetActionCreatorMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "12345", - "member_fields": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_action_creator_member_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_action_creator_member_example_call_tool.py deleted file mode 100644 index eb1e80335..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_action_creator_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetActionCreatorMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '12345', 'member_fields': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_action_list_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_action_list_example_call_tool.js deleted file mode 100644 index 37cc6aa5e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_action_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetActionList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "123456", - "list_fields": "id,name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_action_list_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_action_list_example_call_tool.py deleted file mode 100644 index 8dd306e88..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_action_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetActionList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '123456', 'list_fields': 'id,name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_action_member_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_action_member_example_call_tool.js deleted file mode 100644 index 524e4c53c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_action_member_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetActionMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "1234567890abcdef", - "member_fields": "fullName,email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_action_member_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_action_member_example_call_tool.py deleted file mode 100644 index 44632913d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_action_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetActionMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '1234567890abcdef', 'member_fields': 'fullName,email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_action_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_action_organization_example_call_tool.js deleted file mode 100644 index fe0de025c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_action_organization_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetActionOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "123456789", - "organization_fields": "id,name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_action_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_action_organization_example_call_tool.py deleted file mode 100644 index fb86b5e12..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_action_organization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetActionOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '123456789', 'organization_fields': 'id,name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_action_property_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_action_property_example_call_tool.js deleted file mode 100644 index 1afeac46d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_action_property_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetActionProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_field": "type", - "action_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_action_property_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_action_property_example_call_tool.py deleted file mode 100644 index f0ec0e514..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_action_property_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetActionProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_field': 'type', 'action_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_action_reactions_summary_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_action_reactions_summary_example_call_tool.js deleted file mode 100644 index a0efedbd4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_action_reactions_summary_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetActionReactionsSummary"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_action_reactions_summary_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_action_reactions_summary_example_call_tool.py deleted file mode 100644 index 2ebe4b26e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_action_reactions_summary_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetActionReactionsSummary" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_application_compliance_data_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_application_compliance_data_example_call_tool.js deleted file mode 100644 index a7060e0b1..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_application_compliance_data_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetApplicationComplianceData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_key": "app123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_application_compliance_data_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_application_compliance_data_example_call_tool.py deleted file mode 100644 index 01be6da50..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_application_compliance_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetApplicationComplianceData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_key': 'app123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_associated_organization_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_associated_organization_notifications_example_call_tool.js deleted file mode 100644 index 9cf46654e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_associated_organization_notifications_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetAssociatedOrganizationNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_id": "12345", - "organization_fields": "id,name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_associated_organization_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_associated_organization_notifications_example_call_tool.py deleted file mode 100644 index 1b4a819df..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_associated_organization_notifications_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetAssociatedOrganizationNotifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_id': '12345', 'organization_fields': 'id,name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_checklists_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_board_checklists_example_call_tool.js deleted file mode 100644 index d329f0b26..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_checklists_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetBoardChecklists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_checklists_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_board_checklists_example_call_tool.py deleted file mode 100644 index af5dbecb4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_checklists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetBoardChecklists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_board_custom_fields_example_call_tool.js deleted file mode 100644 index dc3259174..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_custom_fields_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetBoardCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_board_custom_fields_example_call_tool.py deleted file mode 100644 index fe85450e1..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_custom_fields_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetBoardCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_for_action_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_board_for_action_example_call_tool.js deleted file mode 100644 index 58b2c65d8..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_for_action_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetBoardForAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "123456789", - "board_fields": "id,name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_for_action_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_board_for_action_example_call_tool.py deleted file mode 100644 index 410c774b0..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_for_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetBoardForAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '123456789', 'board_fields': 'id,name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_for_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_board_for_card_example_call_tool.js deleted file mode 100644 index fbea9bf31..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_for_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetBoardForCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "1234567890abcdef", - "board_fields": "name,desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_for_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_board_for_card_example_call_tool.py deleted file mode 100644 index 680631f1a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_for_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetBoardForCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '1234567890abcdef', 'board_fields': 'name,desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_from_checklist_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_board_from_checklist_example_call_tool.js deleted file mode 100644 index 4d089be41..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_from_checklist_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetBoardFromChecklist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checklist_id": "abc123", - "board_fields_selection": "name,id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_from_checklist_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_board_from_checklist_example_call_tool.py deleted file mode 100644 index b668dbe42..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_from_checklist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetBoardFromChecklist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checklist_id': 'abc123', 'board_fields_selection': 'name,id' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_from_notification_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_board_from_notification_example_call_tool.js deleted file mode 100644 index 558265add..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_from_notification_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetBoardFromNotification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_id": "12345", - "board_fields": "name,url" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_from_notification_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_board_from_notification_example_call_tool.py deleted file mode 100644 index 45bf8331c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_from_notification_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetBoardFromNotification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_id': '12345', 'board_fields': 'name,url' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_members_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_board_members_example_call_tool.js deleted file mode 100644 index ddf9ea6e0..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_members_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetBoardMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_members_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_board_members_example_call_tool.py deleted file mode 100644 index 7041b66d1..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetBoardMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_board_memberships_example_call_tool.js deleted file mode 100644 index c16fb67cc..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_memberships_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetBoardMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "123456789", - "include_activity": true, - "include_member_object": true, - "member_fields_to_show": "fullName", - "membership_filter": "all", - "show_org_member_type": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_board_memberships_example_call_tool.py deleted file mode 100644 index b40520559..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_memberships_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetBoardMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '123456789', - 'include_activity': True, - 'include_member_object': True, - 'member_fields_to_show': 'fullName', - 'membership_filter': 'all', - 'show_org_member_type': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_of_list_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_board_of_list_example_call_tool.js deleted file mode 100644 index 20e5da9d2..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_of_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetBoardOfList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "1234567890abcdef", - "board_fields": "name,id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_of_list_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_board_of_list_example_call_tool.py deleted file mode 100644 index 60e45c387..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_of_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetBoardOfList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '1234567890abcdef', 'board_fields': 'name,id' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_power_ups_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_board_power_ups_example_call_tool.js deleted file mode 100644 index cd778bc05..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_power_ups_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetBoardPowerUps"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_power_ups_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_board_power_ups_example_call_tool.py deleted file mode 100644 index 7b2430103..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_power_ups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetBoardPowerUps" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_stars_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_board_stars_example_call_tool.js deleted file mode 100644 index 6ca50af6d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_stars_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetBoardStars"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345abcde", - "board_star_filter": "mine" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_board_stars_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_board_stars_example_call_tool.py deleted file mode 100644 index 5104464c2..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_board_stars_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetBoardStars" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345abcde', 'board_star_filter': 'mine' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_card_actions_example_call_tool.js deleted file mode 100644 index 4f18703e6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_actions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetCardActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345", - "action_type_filter": "comment,move", - "actions_page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_card_actions_example_call_tool.py deleted file mode 100644 index a07fb8da7..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetCardActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345', 'action_type_filter': 'comment,move', 'actions_page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_checklist_completion_status_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_card_checklist_completion_status_example_call_tool.js deleted file mode 100644 index 9d367fec7..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_checklist_completion_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetCardChecklistCompletionStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "1234567890abcdef", - "checklist_item_fields": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_checklist_completion_status_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_card_checklist_completion_status_example_call_tool.py deleted file mode 100644 index 90e3fc7c4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_checklist_completion_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetCardChecklistCompletionStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '1234567890abcdef', 'checklist_item_fields': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_checklists_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_card_checklists_example_call_tool.js deleted file mode 100644 index e01d560e5..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_checklists_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetCardChecklists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "1234567890abcdef", - "card_fields": "idCard,name", - "include_all_checklists": "all", - "include_check_items": "none" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_checklists_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_card_checklists_example_call_tool.py deleted file mode 100644 index cfec75f19..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_checklists_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetCardChecklists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '1234567890abcdef', - 'card_fields': 'idCard,name', - 'include_all_checklists': 'all', - 'include_check_items': 'none' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_custom_field_items_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_card_custom_field_items_example_call_tool.js deleted file mode 100644 index e73b3bcbe..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_custom_field_items_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetCardCustomFieldItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_custom_field_items_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_card_custom_field_items_example_call_tool.py deleted file mode 100644 index 43694a79c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_custom_field_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetCardCustomFieldItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_from_checklist_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_card_from_checklist_example_call_tool.js deleted file mode 100644 index 3d4770988..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_from_checklist_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetCardFromChecklist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checklist_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_from_checklist_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_card_from_checklist_example_call_tool.py deleted file mode 100644 index fc3864d5f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_from_checklist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetCardFromChecklist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checklist_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_list_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_card_list_example_call_tool.js deleted file mode 100644 index ca48d992f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetCardList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "1234567890abcdef", - "list_fields": "name,id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_list_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_card_list_example_call_tool.py deleted file mode 100644 index dc85cb785..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetCardList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '1234567890abcdef', 'list_fields': 'name,id' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_members_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_card_members_example_call_tool.js deleted file mode 100644 index 1f22c09e0..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_members_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetCardMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345", - "member_fields": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_members_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_card_members_example_call_tool.py deleted file mode 100644 index bee66e755..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetCardMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345', 'member_fields': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_stickers_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_card_stickers_example_call_tool.js deleted file mode 100644 index 6e0051227..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_stickers_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetCardStickers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345", - "sticker_fields": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_card_stickers_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_card_stickers_example_call_tool.py deleted file mode 100644 index c56ceabd4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_card_stickers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetCardStickers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345', 'sticker_fields': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_checklist_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_checklist_by_id_example_call_tool.js deleted file mode 100644 index f80546427..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_checklist_by_id_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetChecklistById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checklist_id": "abc123", - "checkitem_fields_to_return": "name,due", - "checklist_fields": "all", - "include_cards": "open", - "return_check_items": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_checklist_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_checklist_by_id_example_call_tool.py deleted file mode 100644 index 5cbd92431..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_checklist_by_id_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetChecklistById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checklist_id': 'abc123', - 'checkitem_fields_to_return': 'name,due', - 'checklist_fields': 'all', - 'include_cards': 'open', - 'return_check_items': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_checklist_checkitems_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_checklist_checkitems_example_call_tool.js deleted file mode 100644 index ac811ab92..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_checklist_checkitems_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetChecklistCheckitems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checklist_id": "abc123", - "fields_to_retrieve": "all", - "list_checkitems_filter": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_checklist_checkitems_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_checklist_checkitems_example_call_tool.py deleted file mode 100644 index f872af53d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_checklist_checkitems_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetChecklistCheckitems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checklist_id': 'abc123', 'fields_to_retrieve': 'all', 'list_checkitems_filter': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_checklist_field_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_checklist_field_example_call_tool.js deleted file mode 100644 index 69ebbbcff..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_checklist_field_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetChecklistField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checklist_field_to_retrieve": "name", - "checklist_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_checklist_field_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_checklist_field_example_call_tool.py deleted file mode 100644 index 2075de6e0..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_checklist_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetChecklistField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checklist_field_to_retrieve': 'name', 'checklist_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_checklist_item_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_checklist_item_example_call_tool.js deleted file mode 100644 index 7857aaf88..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_checklist_item_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetChecklistItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "check_item_id": "abc123", - "checklist_id": "def456", - "checkitem_fields": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_checklist_item_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_checklist_item_example_call_tool.py deleted file mode 100644 index 02654af9c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_checklist_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetChecklistItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'check_item_id': 'abc123', 'checklist_id': 'def456', 'checkitem_fields': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_claimable_workspaces_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_claimable_workspaces_example_call_tool.js deleted file mode 100644 index 04e7e1728..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_claimable_workspaces_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetClaimableWorkspaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id_to_retrieve_workspaces": "12345", - "active_since_date": "2023-01-01", - "maximum_workspaces": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_claimable_workspaces_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_claimable_workspaces_example_call_tool.py deleted file mode 100644 index 693ff7cfe..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_claimable_workspaces_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetClaimableWorkspaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id_to_retrieve_workspaces': '12345', - 'active_since_date': '2023-01-01', - 'maximum_workspaces': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_custom_board_background_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_custom_board_background_example_call_tool.js deleted file mode 100644 index cc18b72fe..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_custom_board_background_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetCustomBoardBackground"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_background_id": "bg_12345", - "member_id_or_username": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_custom_board_background_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_custom_board_background_example_call_tool.py deleted file mode 100644 index dc57a4c33..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_custom_board_background_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetCustomBoardBackground" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_background_id': 'bg_12345', 'member_id_or_username': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_custom_board_backgrounds_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_custom_board_backgrounds_example_call_tool.js deleted file mode 100644 index cac4f531f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_custom_board_backgrounds_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetCustomBoardBackgrounds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_identifier": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_custom_board_backgrounds_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_custom_board_backgrounds_example_call_tool.py deleted file mode 100644 index 21250678e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_custom_board_backgrounds_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetCustomBoardBackgrounds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_identifier': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_custom_field_example_call_tool.js deleted file mode 100644 index 5b4555025..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_custom_field_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_field_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_custom_field_example_call_tool.py deleted file mode 100644 index ec7ce34aa..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_custom_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_field_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_custom_field_option_trello_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_custom_field_option_trello_example_call_tool.js deleted file mode 100644 index 0809b8bd5..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_custom_field_option_trello_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetCustomFieldOptionTrello"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_field_item_id": "1234567890abcdef", - "custom_field_option_id": "abcdef1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_custom_field_option_trello_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_custom_field_option_trello_example_call_tool.py deleted file mode 100644 index a777234f6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_custom_field_option_trello_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetCustomFieldOptionTrello" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_field_item_id': '1234567890abcdef', 'custom_field_option_id': 'abcdef1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_custom_field_options_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_custom_field_options_example_call_tool.js deleted file mode 100644 index 74633176d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_custom_field_options_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetCustomFieldOptions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_field_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_custom_field_options_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_custom_field_options_example_call_tool.py deleted file mode 100644 index 57f10560b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_custom_field_options_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetCustomFieldOptions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_field_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_admins_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_admins_example_call_tool.js deleted file mode 100644 index 39fe456f5..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_admins_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetEnterpriseAdmins"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "12345", - "admin_fields": "fullName,email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_admins_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_admins_example_call_tool.py deleted file mode 100644 index 9df6918a2..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_admins_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetEnterpriseAdmins" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': '12345', 'admin_fields': 'fullName,email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_audit_log_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_audit_log_example_call_tool.js deleted file mode 100644 index 2646c5ba4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_audit_log_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetEnterpriseAuditLog"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_audit_log_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_audit_log_example_call_tool.py deleted file mode 100644 index 8e8b97e7b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_audit_log_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetEnterpriseAuditLog" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_by_id_example_call_tool.js deleted file mode 100644 index a6264098f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_by_id_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetEnterpriseById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "12345", - "enterprise_fields": "id,name", - "include_paid_account_information": true, - "member_count": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_by_id_example_call_tool.py deleted file mode 100644 index da84bd64d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_by_id_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetEnterpriseById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': '12345', - 'enterprise_fields': 'id,name', - 'include_paid_account_information': True, - 'member_count': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_member_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_member_example_call_tool.js deleted file mode 100644 index 1b973aa39..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_member_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetEnterpriseMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "ent123", - "member_id": "mem456", - "board_fields": "name,desc", - "member_field_values": "email,fullName" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_member_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_member_example_call_tool.py deleted file mode 100644 index 7fa202c1c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_member_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetEnterpriseMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': 'ent123', - 'member_id': 'mem456', - 'board_fields': 'name,desc', - 'member_field_values': 'email,fullName' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_members_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_members_example_call_tool.js deleted file mode 100644 index a088acdf4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_members_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetEnterpriseMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "12345", - "member_field_list": "fullName,email", - "start_index": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_members_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_members_example_call_tool.py deleted file mode 100644 index 98f26584b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetEnterpriseMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': '12345', 'member_field_list': 'fullName,email', 'start_index': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_organizations_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_organizations_example_call_tool.js deleted file mode 100644 index c45a2654d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_organizations_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetEnterpriseOrganizations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "12345", - "number_of_organizations_to_retrieve": 10, - "organization_fields": "id,name", - "organization_filter": "active", - "starting_index": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_organizations_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_organizations_example_call_tool.py deleted file mode 100644 index 20eeb5cdd..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_organizations_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetEnterpriseOrganizations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': '12345', - 'number_of_organizations_to_retrieve': 10, - 'organization_fields': 'id,name', - 'organization_filter': 'active', - 'starting_index': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_signup_url_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_signup_url_example_call_tool.js deleted file mode 100644 index 224d47dd7..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_signup_url_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetEnterpriseSignupUrl"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "12345", - "authenticate": true, - "redirect_url": "https://example.com/redirect" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_signup_url_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_signup_url_example_call_tool.py deleted file mode 100644 index 5ec1f871c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_signup_url_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetEnterpriseSignupUrl" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': '12345', 'authenticate': True, 'redirect_url': 'https://example.com/redirect' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_users_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_users_example_call_tool.js deleted file mode 100644 index 479772752..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_users_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetEnterpriseUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "12345", - "active_date_filter": "2023-01-01", - "licensed_members_only": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_users_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_enterprise_users_example_call_tool.py deleted file mode 100644 index f1b4e7d99..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_enterprise_users_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetEnterpriseUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': '12345', 'active_date_filter': '2023-01-01', 'licensed_members_only': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_filtered_board_cards_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_filtered_board_cards_example_call_tool.js deleted file mode 100644 index b501157d8..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_filtered_board_cards_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetFilteredBoardCards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "1234567890abcdef", - "card_filter": "open" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_filtered_board_cards_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_filtered_board_cards_example_call_tool.py deleted file mode 100644 index 590fce6ce..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_filtered_board_cards_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetFilteredBoardCards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '1234567890abcdef', 'card_filter': 'open' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_filtered_board_lists_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_filtered_board_lists_example_call_tool.js deleted file mode 100644 index 22579414e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_filtered_board_lists_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetFilteredBoardLists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "1234567890abcdef", - "list_filter": "open" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_filtered_board_lists_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_filtered_board_lists_example_call_tool.py deleted file mode 100644 index 63bb5580b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_filtered_board_lists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetFilteredBoardLists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '1234567890abcdef', 'list_filter': 'open' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_invited_workspaces_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_invited_workspaces_example_call_tool.js deleted file mode 100644 index 5e9208ccb..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_invited_workspaces_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetInvitedWorkspaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_identifier": "john_doe", - "organization_fields": "id,name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_invited_workspaces_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_invited_workspaces_example_call_tool.py deleted file mode 100644 index 35565de4a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_invited_workspaces_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetInvitedWorkspaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_identifier': 'john_doe', 'organization_fields': 'id,name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_app_tokens_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_member_app_tokens_example_call_tool.js deleted file mode 100644 index 06569bfa8..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_app_tokens_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetMemberAppTokens"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "include_webhooks": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_app_tokens_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_member_app_tokens_example_call_tool.py deleted file mode 100644 index c07a175ef..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_app_tokens_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetMemberAppTokens" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', 'include_webhooks': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_board_background_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_member_board_background_example_call_tool.js deleted file mode 100644 index 8d1b184e5..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_board_background_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetMemberBoardBackground"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_background_id": "bg_12345", - "member_id_or_username": "user_67890", - "fields_to_retrieve": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_board_background_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_member_board_background_example_call_tool.py deleted file mode 100644 index 710a9394c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_board_background_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetMemberBoardBackground" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_background_id': 'bg_12345', - 'member_id_or_username': 'user_67890', - 'fields_to_retrieve': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_board_backgrounds_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_member_board_backgrounds_example_call_tool.js deleted file mode 100644 index 862fcc579..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_board_backgrounds_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetMemberBoardBackgrounds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "board_background_filter": "custom" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_board_backgrounds_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_member_board_backgrounds_example_call_tool.py deleted file mode 100644 index e60d5a6d2..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_board_backgrounds_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetMemberBoardBackgrounds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', 'board_background_filter': 'custom' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_cards_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_member_cards_example_call_tool.js deleted file mode 100644 index 45487f9ec..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_cards_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetMemberCards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "card_status_filter": "open" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_cards_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_member_cards_example_call_tool.py deleted file mode 100644 index 90420199a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_cards_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetMemberCards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', 'card_status_filter': 'open' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_custom_emoji_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_member_custom_emoji_example_call_tool.js deleted file mode 100644 index b955df633..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_custom_emoji_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetMemberCustomEmoji"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_emoji_id": "abc123", - "member_id_or_username": "john_doe", - "emoji_fields": "name,url" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_custom_emoji_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_member_custom_emoji_example_call_tool.py deleted file mode 100644 index 760d99a43..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_custom_emoji_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetMemberCustomEmoji" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_emoji_id': 'abc123', 'member_id_or_username': 'john_doe', 'emoji_fields': 'name,url' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_custom_emojis_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_member_custom_emojis_example_call_tool.js deleted file mode 100644 index 9e91d64fe..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_custom_emojis_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetMemberCustomEmojis"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_custom_emojis_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_member_custom_emojis_example_call_tool.py deleted file mode 100644 index dd67687fb..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_custom_emojis_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetMemberCustomEmojis" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_custom_sticker_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_member_custom_sticker_example_call_tool.js deleted file mode 100644 index f9ed845df..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_custom_sticker_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetMemberCustomSticker"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "sticker_id": "sticker123", - "sticker_fields": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_custom_sticker_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_member_custom_sticker_example_call_tool.py deleted file mode 100644 index 1ae59aa61..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_custom_sticker_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetMemberCustomSticker" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', 'sticker_id': 'sticker123', 'sticker_fields': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_invited_boards_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_member_invited_boards_example_call_tool.js deleted file mode 100644 index 7320e1449..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_invited_boards_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetMemberInvitedBoards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_identifier": "john_doe", - "board_fields_option": "id,name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_invited_boards_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_member_invited_boards_example_call_tool.py deleted file mode 100644 index b0fedc0b2..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_invited_boards_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetMemberInvitedBoards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_identifier': 'john_doe', 'board_fields_option': 'id,name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_notification_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_member_notification_settings_example_call_tool.js deleted file mode 100644 index 6053a0584..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_notification_settings_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetMemberNotificationSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_identifier": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_notification_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_member_notification_settings_example_call_tool.py deleted file mode 100644 index e0fcd654f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_notification_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetMemberNotificationSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_identifier': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_notifications_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_member_notifications_example_call_tool.js deleted file mode 100644 index 841df152f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_notifications_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetMemberNotifications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_identifier": "user123", - "include_display": true, - "notification_limit": 50, - "notification_filter": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_notifications_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_member_notifications_example_call_tool.py deleted file mode 100644 index bee23a424..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_notifications_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetMemberNotifications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_identifier': 'user123', - 'include_display': True, - 'notification_limit': 50, - 'notification_filter': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_property_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_member_property_example_call_tool.js deleted file mode 100644 index 6aeb4a2b1..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_property_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetMemberProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_field_name": "username", - "member_id_or_username": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_property_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_member_property_example_call_tool.py deleted file mode 100644 index 3f5845ce4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_property_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetMemberProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_field_name': 'username', 'member_id_or_username': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_uploaded_stickers_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_member_uploaded_stickers_example_call_tool.js deleted file mode 100644 index 7b29b6b1a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_uploaded_stickers_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetMemberUploadedStickers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_uploaded_stickers_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_member_uploaded_stickers_example_call_tool.py deleted file mode 100644 index ef4a2a9ce..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_uploaded_stickers_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetMemberUploadedStickers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_workspaces_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_member_workspaces_example_call_tool.js deleted file mode 100644 index 14f21a135..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_workspaces_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetMemberWorkspaces"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "include_paid_account_info": true, - "organization_fields": "id,name", - "workspace_filter": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_member_workspaces_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_member_workspaces_example_call_tool.py deleted file mode 100644 index 1b6231bd7..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_member_workspaces_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetMemberWorkspaces" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', - 'include_paid_account_info': True, - 'organization_fields': 'id,name', - 'workspace_filter': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_members_who_voted_on_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_members_who_voted_on_card_example_call_tool.js deleted file mode 100644 index 250012050..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_members_who_voted_on_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetMembersWhoVotedOnCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345abcde", - "member_fields": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_members_who_voted_on_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_members_who_voted_on_card_example_call_tool.py deleted file mode 100644 index 81d0d4a96..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_members_who_voted_on_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetMembersWhoVotedOnCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345abcde', 'member_fields': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_notification_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_notification_card_example_call_tool.js deleted file mode 100644 index 08ebae96a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_notification_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetNotificationCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_id": "12345", - "card_fields": "id,name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_notification_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_notification_card_example_call_tool.py deleted file mode 100644 index 1e93974f8..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_notification_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetNotificationCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_id': '12345', 'card_fields': 'id,name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_notification_creator_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_notification_creator_example_call_tool.js deleted file mode 100644 index c97625323..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_notification_creator_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetNotificationCreator"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_id": "12345", - "member_fields": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_notification_creator_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_notification_creator_example_call_tool.py deleted file mode 100644 index 96dc2769c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_notification_creator_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetNotificationCreator" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_id': '12345', 'member_fields': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_notification_member_details_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_notification_member_details_example_call_tool.js deleted file mode 100644 index 02ab49efe..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_notification_member_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetNotificationMemberDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_id": "12345", - "member_fields": "fullName,email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_notification_member_details_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_notification_member_details_example_call_tool.py deleted file mode 100644 index 9e2afdc8a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_notification_member_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetNotificationMemberDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_id': '12345', 'member_fields': 'fullName,email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_open_cards_on_board_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_open_cards_on_board_example_call_tool.js deleted file mode 100644 index 1dc590f5b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_open_cards_on_board_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetOpenCardsOnBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_open_cards_on_board_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_open_cards_on_board_example_call_tool.py deleted file mode 100644 index 497b0b997..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_open_cards_on_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetOpenCardsOnBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_organization_details_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_organization_details_example_call_tool.js deleted file mode 100644 index d965c5f54..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_organization_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetOrganizationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id_or_name": "org_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_organization_details_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_organization_details_example_call_tool.py deleted file mode 100644 index 93a23872c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_organization_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetOrganizationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id_or_name': 'org_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_organization_field_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_organization_field_example_call_tool.js deleted file mode 100644 index 6626c524c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_organization_field_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetOrganizationField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_field": "name", - "organization_identifier": "my-organization" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_organization_field_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_organization_field_example_call_tool.py deleted file mode 100644 index b52375312..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_organization_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetOrganizationField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_field': 'name', 'organization_identifier': 'my-organization' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_organization_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_organization_membership_example_call_tool.js deleted file mode 100644 index 17e08028b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_organization_membership_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetOrganizationMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "membership_id": "12345", - "organization_id_or_name": "my-org", - "include_member_object": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_organization_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_organization_membership_example_call_tool.py deleted file mode 100644 index b59f6eb67..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_organization_membership_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetOrganizationMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'membership_id': '12345', 'organization_id_or_name': 'my-org', 'include_member_object': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_pending_workspaces_by_enterprise_id_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_pending_workspaces_by_enterprise_id_example_call_tool.js deleted file mode 100644 index 374e9ac1f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_pending_workspaces_by_enterprise_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetPendingWorkspacesByEnterpriseId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "12345", - "active_since_date": "2023-01-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_pending_workspaces_by_enterprise_id_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_pending_workspaces_by_enterprise_id_example_call_tool.py deleted file mode 100644 index 3569f08b3..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_pending_workspaces_by_enterprise_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetPendingWorkspacesByEnterpriseId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': '12345', 'active_since_date': '2023-01-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_plugin_member_privacy_compliance_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_plugin_member_privacy_compliance_example_call_tool.js deleted file mode 100644 index c31be581d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_plugin_member_privacy_compliance_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetPluginMemberPrivacyCompliance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "power_up_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_plugin_member_privacy_compliance_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_plugin_member_privacy_compliance_example_call_tool.py deleted file mode 100644 index bf2227d4d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_plugin_member_privacy_compliance_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetPluginMemberPrivacyCompliance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'power_up_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_reaction_info_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_reaction_info_example_call_tool.js deleted file mode 100644 index 3471e8d52..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_reaction_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetReactionInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "123456789", - "reaction_id": "987654321", - "include_emoji_as_nested_resource": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_reaction_info_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_reaction_info_example_call_tool.py deleted file mode 100644 index 50412ce94..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_reaction_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetReactionInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '123456789', 'reaction_id': '987654321', 'include_emoji_as_nested_resource': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_saved_search_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_saved_search_example_call_tool.js deleted file mode 100644 index 5e251972b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_saved_search_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetSavedSearch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "saved_search_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_saved_search_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_saved_search_example_call_tool.py deleted file mode 100644 index 8d60d8899..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_saved_search_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetSavedSearch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', 'saved_search_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_specific_board_star_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_specific_board_star_example_call_tool.js deleted file mode 100644 index 8422624b1..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_specific_board_star_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetSpecificBoardStar"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_star_id": "12345", - "member_id_or_username": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_specific_board_star_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_specific_board_star_example_call_tool.py deleted file mode 100644 index da73366f4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_specific_board_star_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetSpecificBoardStar" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_star_id': '12345', 'member_id_or_username': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_specific_checkitem_on_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_specific_checkitem_on_card_example_call_tool.js deleted file mode 100644 index 47225bb38..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_specific_checkitem_on_card_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetSpecificCheckitemOnCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "1234567890abcdef", - "checkitem_id": "abcdef1234567890", - "checkitem_fields": "name,state" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_specific_checkitem_on_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_specific_checkitem_on_card_example_call_tool.py deleted file mode 100644 index 3c91ff548..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_specific_checkitem_on_card_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetSpecificCheckitemOnCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '1234567890abcdef', - 'checkitem_id': 'abcdef1234567890', - 'checkitem_fields': 'name,state' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_action_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_action_example_call_tool.js deleted file mode 100644 index a9fbb0827..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_action_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "123456", - "action_fields": "all", - "include_display_info": true, - "include_entities": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_action_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_action_example_call_tool.py deleted file mode 100644 index 07ab4cdc3..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_action_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '123456', - 'action_fields': 'all', - 'include_display_info': True, - 'include_entities': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_board_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_board_example_call_tool.js deleted file mode 100644 index 2d437f48d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_board_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "board_fields_to_include": "all", - "include_cards_resource": "true", - "include_labels": "true" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_board_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_board_example_call_tool.py deleted file mode 100644 index b6a0cb361..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_board_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', - 'board_fields_to_include': 'all', - 'include_cards_resource': 'true', - 'include_labels': 'true' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_board_field_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_board_field_example_call_tool.js deleted file mode 100644 index 259b04cc7..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_board_field_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloBoardField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_field": "name", - "board_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_board_field_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_board_field_example_call_tool.py deleted file mode 100644 index 55724be7f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_board_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloBoardField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_field': 'name', 'board_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_board_lists_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_board_lists_example_call_tool.js deleted file mode 100644 index 05cfe076e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_board_lists_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloBoardLists"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "123456789", - "card_filter": "open", - "list_fields": "name,id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_board_lists_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_board_lists_example_call_tool.py deleted file mode 100644 index d29dc894d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_board_lists_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloBoardLists" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '123456789', 'card_filter': 'open', 'list_fields': 'name,id' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_card_by_id_example_call_tool.js deleted file mode 100644 index 130a3a402..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_by_id_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloCardById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "1234567890abcdef", - "attachment_fields_list": "all", - "card_fields": "desc,due", - "include_check_item_states": true, - "include_members": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_card_by_id_example_call_tool.py deleted file mode 100644 index 8c6991cbb..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_by_id_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloCardById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '1234567890abcdef', - 'attachment_fields_list': 'all', - 'card_fields': 'desc,due', - 'include_check_item_states': True, - 'include_members': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_for_action_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_card_for_action_example_call_tool.js deleted file mode 100644 index 6f3f5f895..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_for_action_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloCardForAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "12345", - "card_fields": "id,name,shortUrl" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_for_action_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_card_for_action_example_call_tool.py deleted file mode 100644 index 7a5705ea6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_for_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloCardForAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '12345', 'card_fields': 'id,name,shortUrl' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_plugin_data_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_card_plugin_data_example_call_tool.js deleted file mode 100644 index 84c20ade5..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_plugin_data_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloCardPluginData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_plugin_data_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_card_plugin_data_example_call_tool.py deleted file mode 100644 index 6c77d1d21..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_plugin_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloCardPluginData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_property_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_card_property_example_call_tool.js deleted file mode 100644 index 088d0ea6c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_property_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloCardProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345abcde", - "desired_card_field": "desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_property_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_card_property_example_call_tool.py deleted file mode 100644 index 654454074..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_property_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloCardProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345abcde', 'desired_card_field': 'desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_sticker_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_card_sticker_example_call_tool.js deleted file mode 100644 index d8fb031ff..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_sticker_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloCardSticker"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345", - "sticker_id": "abcde", - "sticker_fields": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_sticker_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_card_sticker_example_call_tool.py deleted file mode 100644 index 2c73c51b0..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_card_sticker_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloCardSticker" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345', 'sticker_id': 'abcde', 'sticker_fields': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_label_info_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_label_info_example_call_tool.js deleted file mode 100644 index cb5877e26..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_label_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloLabelInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "label_id": "12345", - "label_fields": "name,color" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_label_info_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_label_info_example_call_tool.py deleted file mode 100644 index f7a2e9292..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_label_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloLabelInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'label_id': '12345', 'label_fields': 'name,color' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_list_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_list_actions_example_call_tool.js deleted file mode 100644 index b5c9e79f7..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_list_actions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloListActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "1234567890abcdef", - "action_types": "createCard,updateCard" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_list_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_list_actions_example_call_tool.py deleted file mode 100644 index 478668f4f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_list_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloListActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '1234567890abcdef', 'action_types': 'createCard,updateCard' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_list_info_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_list_info_example_call_tool.js deleted file mode 100644 index f75a27870..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_list_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloListInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345", - "list_fields": "name,id" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_list_info_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_list_info_example_call_tool.py deleted file mode 100644 index 882122b70..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_list_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloListInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345', 'list_fields': 'name,id' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_member_info_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_member_info_example_call_tool.js deleted file mode 100644 index c6f47f47d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_member_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloMemberInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "board_backgrounds_option": "all", - "include_actions": "true", - "include_boards_details": "false" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_member_info_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_member_info_example_call_tool.py deleted file mode 100644 index dd3b9385a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_member_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloMemberInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', - 'board_backgrounds_option': 'all', - 'include_actions': 'true', - 'include_boards_details': 'false' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_member_notification_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_member_notification_settings_example_call_tool.js deleted file mode 100644 index e4770eb28..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_member_notification_settings_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloMemberNotificationSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "notification_channel": "email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_member_notification_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_member_notification_settings_example_call_tool.py deleted file mode 100644 index a18fd5fc5..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_member_notification_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloMemberNotificationSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', 'notification_channel': 'email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_example_call_tool.js deleted file mode 100644 index 69014047f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloNotification"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_id": "12345", - "board_fields_list": "name,id", - "include_card": true, - "include_creator_member": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_example_call_tool.py deleted file mode 100644 index b2e02f5c0..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloNotification" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_id': '12345', - 'board_fields_list': 'name,id', - 'include_card': True, - 'include_creator_member': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_list_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_list_example_call_tool.js deleted file mode 100644 index b1fc69edb..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloNotificationList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_id": "12345", - "notification_fields": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_list_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_list_example_call_tool.py deleted file mode 100644 index 74bf3082e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloNotificationList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_id': '12345', 'notification_fields': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_property_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_property_example_call_tool.js deleted file mode 100644 index 6f67eb2bc..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_property_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloNotificationProperty"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_id": "123456789", - "notification_property_field": "unread" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_property_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_property_example_call_tool.py deleted file mode 100644 index 1ad3840af..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_notification_property_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloNotificationProperty" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_id': '123456789', 'notification_property_field': 'unread' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_plugin_info_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_plugin_info_example_call_tool.js deleted file mode 100644 index 99d48927b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_plugin_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloPluginInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id_or_name": "my_organization" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_plugin_info_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_plugin_info_example_call_tool.py deleted file mode 100644 index 355fb7422..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_plugin_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloPluginInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id_or_name': 'my_organization' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_token_owner_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_token_owner_example_call_tool.js deleted file mode 100644 index 5060b673c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_token_owner_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloTokenOwner"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "trello_token": "abc123xyz", - "retrieve_fields": "id,fullName" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_token_owner_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_token_owner_example_call_tool.py deleted file mode 100644 index cc5a2768b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_token_owner_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloTokenOwner" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'trello_token': 'abc123xyz', 'retrieve_fields': 'id,fullName' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_webhook_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_trello_webhook_by_id_example_call_tool.js deleted file mode 100644 index da7f5d87d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_webhook_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetTrelloWebhookById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": "12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_trello_webhook_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_trello_webhook_by_id_example_call_tool.py deleted file mode 100644 index 1ba1798d6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_trello_webhook_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetTrelloWebhookById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': '12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_webhook_field_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_webhook_field_example_call_tool.js deleted file mode 100644 index d4027c7fe..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_webhook_field_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetWebhookField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_field_to_retrieve": "callbackURL", - "webhook_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_webhook_field_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_webhook_field_example_call_tool.py deleted file mode 100644 index 10401f08e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_webhook_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetWebhookField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_field_to_retrieve': 'callbackURL', 'webhook_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/get_workspace_plugin_data_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/get_workspace_plugin_data_example_call_tool.js deleted file mode 100644 index f3265597e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_workspace_plugin_data_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.GetWorkspacePluginData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id_or_name": "org_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/get_workspace_plugin_data_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/get_workspace_plugin_data_example_call_tool.py deleted file mode 100644 index 8ec8e57c4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/get_workspace_plugin_data_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.GetWorkspacePluginData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id_or_name': 'org_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/invite_member_to_trello_board_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/invite_member_to_trello_board_example_call_tool.js deleted file mode 100644 index b345267f4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/invite_member_to_trello_board_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.InviteMemberToTrelloBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "member_email_address": "example@example.com", - "member_access_type": "normal", - "user_full_name": "John Doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/invite_member_to_trello_board_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/invite_member_to_trello_board_example_call_tool.py deleted file mode 100644 index 67a853369..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/invite_member_to_trello_board_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.InviteMemberToTrelloBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', - 'member_email_address': 'example@example.com', - 'member_access_type': 'normal', - 'user_full_name': 'John Doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/list_available_emoji_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/list_available_emoji_example_call_tool.js deleted file mode 100644 index bf661b27d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_available_emoji_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ListAvailableEmoji"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_spritesheet_urls": true, - "locale_for_emoji": "en-US" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/list_available_emoji_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/list_available_emoji_example_call_tool.py deleted file mode 100644 index 715ae3f5e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_available_emoji_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ListAvailableEmoji" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_spritesheet_urls': True, 'locale_for_emoji': 'en-US' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/list_board_power_ups_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/list_board_power_ups_example_call_tool.js deleted file mode 100644 index d6c46948c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_board_power_ups_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ListBoardPowerUps"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "1234567890abcdef", - "power_up_filter": "enabled" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/list_board_power_ups_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/list_board_power_ups_example_call_tool.py deleted file mode 100644 index 954b9d4df..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_board_power_ups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ListBoardPowerUps" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '1234567890abcdef', 'power_up_filter': 'enabled' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/list_card_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/list_card_attachments_example_call_tool.js deleted file mode 100644 index 7f2f6924d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_card_attachments_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ListCardAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "1234567890abcdef", - "attachment_fields": "name,url", - "restrict_to_cover_attachment": "cover" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/list_card_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/list_card_attachments_example_call_tool.py deleted file mode 100644 index e23c6b62a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_card_attachments_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ListCardAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '1234567890abcdef', - 'attachment_fields': 'name,url', - 'restrict_to_cover_attachment': 'cover' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/list_member_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/list_member_actions_example_call_tool.js deleted file mode 100644 index 1750694cc..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_member_actions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ListMemberActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_identifier": "12345", - "action_types_filter": "createCard,updateCard" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/list_member_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/list_member_actions_example_call_tool.py deleted file mode 100644 index 5d57597b7..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_member_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ListMemberActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_identifier': '12345', 'action_types_filter': 'createCard,updateCard' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/list_member_board_stars_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/list_member_board_stars_example_call_tool.js deleted file mode 100644 index f6fbe42e4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_member_board_stars_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ListMemberBoardStars"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/list_member_board_stars_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/list_member_board_stars_example_call_tool.py deleted file mode 100644 index 72c475ebc..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_member_board_stars_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ListMemberBoardStars" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/list_member_saved_searches_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/list_member_saved_searches_example_call_tool.js deleted file mode 100644 index f8babb8c6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_member_saved_searches_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ListMemberSavedSearches"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/list_member_saved_searches_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/list_member_saved_searches_example_call_tool.py deleted file mode 100644 index 73d9c3ffd..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_member_saved_searches_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ListMemberSavedSearches" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/list_organization_collections_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/list_organization_collections_example_call_tool.js deleted file mode 100644 index 2b2b47de7..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_organization_collections_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ListOrganizationCollections"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id_or_name": "org123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/list_organization_collections_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/list_organization_collections_example_call_tool.py deleted file mode 100644 index 1b7aa028c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_organization_collections_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ListOrganizationCollections" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id_or_name': 'org123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/list_reactions_for_action_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/list_reactions_for_action_example_call_tool.js deleted file mode 100644 index 966785491..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_reactions_for_action_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ListReactionsForAction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "12345", - "include_member_as_nested_resource": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/list_reactions_for_action_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/list_reactions_for_action_example_call_tool.py deleted file mode 100644 index 4738bdf26..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_reactions_for_action_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ListReactionsForAction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '12345', 'include_member_as_nested_resource': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/list_trello_cards_in_list_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/list_trello_cards_in_list_example_call_tool.js deleted file mode 100644 index 5a5c3fe89..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_trello_cards_in_list_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ListTrelloCardsInList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "1234567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/list_trello_cards_in_list_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/list_trello_cards_in_list_example_call_tool.py deleted file mode 100644 index 02b177244..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_trello_cards_in_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ListTrelloCardsInList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '1234567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/list_user_boards_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/list_user_boards_example_call_tool.js deleted file mode 100644 index c7012ed60..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_user_boards_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ListUserBoards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_identifier": "john_doe", - "board_fields": "id,name,url", - "board_filter": "open", - "include_lists": "all", - "include_organization": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/list_user_boards_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/list_user_boards_example_call_tool.py deleted file mode 100644 index 29311d093..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_user_boards_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ListUserBoards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_identifier': 'john_doe', - 'board_fields': 'id,name,url', - 'board_filter': 'open', - 'include_lists': 'all', - 'include_organization': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/list_workspace_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/list_workspace_actions_example_call_tool.js deleted file mode 100644 index a3c5e3f9d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_workspace_actions_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ListWorkspaceActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id_or_name": "my-trello-workspace" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/list_workspace_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/list_workspace_actions_example_call_tool.py deleted file mode 100644 index 3a5f4092b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_workspace_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ListWorkspaceActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id_or_name': 'my-trello-workspace' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/list_workspace_boards_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/list_workspace_boards_example_call_tool.js deleted file mode 100644 index 045fd246c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_workspace_boards_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ListWorkspaceBoards"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_identifier": "12345", - "board_fields": "id,name", - "board_filter": "open,closed" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/list_workspace_boards_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/list_workspace_boards_example_call_tool.py deleted file mode 100644 index fac827ea8..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_workspace_boards_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ListWorkspaceBoards" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_identifier': '12345', 'board_fields': 'id,name', 'board_filter': 'open,closed' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/list_workspace_members_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/list_workspace_members_example_call_tool.js deleted file mode 100644 index 8b34168b1..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_workspace_members_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ListWorkspaceMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id_or_name": "workspace_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/list_workspace_members_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/list_workspace_members_example_call_tool.py deleted file mode 100644 index fcbc2f461..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_workspace_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ListWorkspaceMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id_or_name': 'workspace_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/list_workspace_memberships_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/list_workspace_memberships_example_call_tool.js deleted file mode 100644 index 0d2b1d1c7..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_workspace_memberships_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ListWorkspaceMemberships"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id_or_name": "my-trello-workspace", - "include_member_objects": true, - "membership_filter": "active,admin" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/list_workspace_memberships_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/list_workspace_memberships_example_call_tool.py deleted file mode 100644 index c8c29ff19..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/list_workspace_memberships_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ListWorkspaceMemberships" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id_or_name': 'my-trello-workspace', - 'include_member_objects': True, - 'membership_filter': 'active,admin' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/make_member_admin_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/make_member_admin_enterprise_example_call_tool.js deleted file mode 100644 index 34d6a7cf1..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/make_member_admin_enterprise_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.MakeMemberAdminEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "ent123456", - "member_id_to_promote": "user7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/make_member_admin_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/make_member_admin_enterprise_example_call_tool.py deleted file mode 100644 index dbde0d64c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/make_member_admin_enterprise_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.MakeMemberAdminEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': 'ent123456', 'member_id_to_promote': 'user7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/mark_all_notifications_read_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/mark_all_notifications_read_example_call_tool.js deleted file mode 100644 index 6f63933a3..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/mark_all_notifications_read_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.MarkAllNotificationsRead"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mark_as_read": true, - "notification_ids": [ - "notif_1", - "notif_2", - "notif_3" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/mark_all_notifications_read_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/mark_all_notifications_read_example_call_tool.py deleted file mode 100644 index 8cb734dfa..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/mark_all_notifications_read_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.MarkAllNotificationsRead" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mark_as_read': True, 'notification_ids': ['notif_1', 'notif_2', 'notif_3'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/mark_notification_as_unread_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/mark_notification_as_unread_example_call_tool.js deleted file mode 100644 index da0d2e43a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/mark_notification_as_unread_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.MarkNotificationAsUnread"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_id": "12345", - "notification_read_status": "" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/mark_notification_as_unread_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/mark_notification_as_unread_example_call_tool.py deleted file mode 100644 index 5b82804b4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/mark_notification_as_unread_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.MarkNotificationAsUnread" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_id': '12345', 'notification_read_status': '' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/mark_trello_board_as_viewed_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/mark_trello_board_as_viewed_example_call_tool.js deleted file mode 100644 index c81d64652..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/mark_trello_board_as_viewed_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.MarkTrelloBoardAsViewed"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/mark_trello_board_as_viewed_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/mark_trello_board_as_viewed_example_call_tool.py deleted file mode 100644 index be815ac97..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/mark_trello_board_as_viewed_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.MarkTrelloBoardAsViewed" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/mark_trello_card_notifications_read_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/mark_trello_card_notifications_read_example_call_tool.js deleted file mode 100644 index ff747bf6c..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/mark_trello_card_notifications_read_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.MarkTrelloCardNotificationsRead"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "123abc456def" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/mark_trello_card_notifications_read_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/mark_trello_card_notifications_read_example_call_tool.py deleted file mode 100644 index 7b4f07530..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/mark_trello_card_notifications_read_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.MarkTrelloCardNotificationsRead" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '123abc456def' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/modify_member_notifications_trello_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/modify_member_notifications_trello_example_call_tool.js deleted file mode 100644 index fb8dd4816..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/modify_member_notifications_trello_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ModifyMemberNotificationsTrello"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "blocked_notification_keys": "notification_comment_card,notification_added_a_due_date", - "member_id_or_username": "john_doe", - "notification_channel": "email" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/modify_member_notifications_trello_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/modify_member_notifications_trello_example_call_tool.py deleted file mode 100644 index 9d3ab6390..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/modify_member_notifications_trello_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ModifyMemberNotificationsTrello" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'blocked_notification_keys': 'notification_comment_card,notification_added_a_due_date', - 'member_id_or_username': 'john_doe', - 'notification_channel': 'email' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/modify_trello_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/modify_trello_comment_example_call_tool.js deleted file mode 100644 index 2e7e9c8cf..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/modify_trello_comment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ModifyTrelloComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id_to_update": "12345", - "new_comment_text": "Updated comment text." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/modify_trello_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/modify_trello_comment_example_call_tool.py deleted file mode 100644 index 7a2813cdf..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/modify_trello_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ModifyTrelloComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id_to_update': '12345', 'new_comment_text': 'Updated comment text.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/modify_trello_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/modify_trello_webhook_example_call_tool.js deleted file mode 100644 index 4f9242df8..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/modify_trello_webhook_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.ModifyTrelloWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": "12345", - "activate_webhook": true, - "callback_url": "https://example.com/webhook" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/modify_trello_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/modify_trello_webhook_example_call_tool.py deleted file mode 100644 index 0919509fa..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/modify_trello_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.ModifyTrelloWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': '12345', 'activate_webhook': True, 'callback_url': 'https://example.com/webhook' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/move_trello_list_to_board_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/move_trello_list_to_board_example_call_tool.js deleted file mode 100644 index 967159802..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/move_trello_list_to_board_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.MoveTrelloListToBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id_for_list_movement": "1234567890abcdef", - "list_id": "abcdef1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/move_trello_list_to_board_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/move_trello_list_to_board_example_call_tool.py deleted file mode 100644 index 3e7ed7aa9..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/move_trello_list_to_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.MoveTrelloListToBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id_for_list_movement': '1234567890abcdef', 'list_id': 'abcdef1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_card_sticker_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/remove_card_sticker_example_call_tool.js deleted file mode 100644 index 830e97de5..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_card_sticker_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RemoveCardSticker"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345", - "sticker_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_card_sticker_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/remove_card_sticker_example_call_tool.py deleted file mode 100644 index 6fa8e9806..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_card_sticker_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RemoveCardSticker" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345', 'sticker_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_checklist_item_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/remove_checklist_item_example_call_tool.js deleted file mode 100644 index b8c255331..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_checklist_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RemoveChecklistItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "check_item_id": "abc123", - "checklist_id": "def456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_checklist_item_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/remove_checklist_item_example_call_tool.py deleted file mode 100644 index f1211a7c1..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_checklist_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RemoveChecklistItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'check_item_id': 'abc123', 'checklist_id': 'def456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_custom_board_background_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/remove_custom_board_background_example_call_tool.js deleted file mode 100644 index 3ce58e1a6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_custom_board_background_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RemoveCustomBoardBackground"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_background_id": "bg_12345", - "member_id_or_username": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_custom_board_background_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/remove_custom_board_background_example_call_tool.py deleted file mode 100644 index e3d6b5aef..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_custom_board_background_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RemoveCustomBoardBackground" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_background_id': 'bg_12345', 'member_id_or_username': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_email_domain_restriction_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/remove_email_domain_restriction_example_call_tool.js deleted file mode 100644 index 11227f8a3..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_email_domain_restriction_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RemoveEmailDomainRestriction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id_or_name": "my-trello-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_email_domain_restriction_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/remove_email_domain_restriction_example_call_tool.py deleted file mode 100644 index 062f7907a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_email_domain_restriction_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RemoveEmailDomainRestriction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id_or_name': 'my-trello-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_enterprise_admin_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/remove_enterprise_admin_example_call_tool.js deleted file mode 100644 index d643b0d0d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_enterprise_admin_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RemoveEnterpriseAdmin"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "ent123456", - "member_id_to_remove": "user7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_enterprise_admin_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/remove_enterprise_admin_example_call_tool.py deleted file mode 100644 index 3877641d4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_enterprise_admin_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RemoveEnterpriseAdmin" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': 'ent123456', 'member_id_to_remove': 'user7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_label_from_trello_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/remove_label_from_trello_card_example_call_tool.js deleted file mode 100644 index 8438863be..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_label_from_trello_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RemoveLabelFromTrelloCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345abcde", - "label_id_to_remove": "67890fghij" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_label_from_trello_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/remove_label_from_trello_card_example_call_tool.py deleted file mode 100644 index 94558f000..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_label_from_trello_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RemoveLabelFromTrelloCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345abcde', 'label_id_to_remove': '67890fghij' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_member_from_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/remove_member_from_card_example_call_tool.js deleted file mode 100644 index 28013a47e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_member_from_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RemoveMemberFromCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345abcde", - "member_id_to_remove": "67890fghij" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_member_from_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/remove_member_from_card_example_call_tool.py deleted file mode 100644 index 18775a5ce..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_member_from_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RemoveMemberFromCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345abcde', 'member_id_to_remove': '67890fghij' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_member_from_trello_board_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/remove_member_from_trello_board_example_call_tool.js deleted file mode 100644 index 75f823b78..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_member_from_trello_board_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RemoveMemberFromTrelloBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "member_id_to_remove": "67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_member_from_trello_board_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/remove_member_from_trello_board_example_call_tool.py deleted file mode 100644 index d13845c4d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_member_from_trello_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RemoveMemberFromTrelloBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', 'member_id_to_remove': '67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_member_from_workspace_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/remove_member_from_workspace_example_call_tool.js deleted file mode 100644 index 5d7722bdc..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_member_from_workspace_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RemoveMemberFromWorkspace"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id": "12345", - "workspace_identifier": "workspace_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_member_from_workspace_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/remove_member_from_workspace_example_call_tool.py deleted file mode 100644 index a37706e98..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_member_from_workspace_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RemoveMemberFromWorkspace" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id': '12345', 'workspace_identifier': 'workspace_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_member_vote_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/remove_member_vote_example_call_tool.js deleted file mode 100644 index 6c651e9f5..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_member_vote_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RemoveMemberVote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "abc123", - "member_id_to_remove_vote": "user456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_member_vote_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/remove_member_vote_example_call_tool.py deleted file mode 100644 index fe3f811b5..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_member_vote_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RemoveMemberVote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': 'abc123', 'member_id_to_remove_vote': 'user456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_organization_from_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/remove_organization_from_enterprise_example_call_tool.js deleted file mode 100644 index c91de82bd..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_organization_from_enterprise_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RemoveOrganizationFromEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "ent12345", - "organization_id_to_remove": "org67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_organization_from_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/remove_organization_from_enterprise_example_call_tool.py deleted file mode 100644 index 041fb90cc..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_organization_from_enterprise_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RemoveOrganizationFromEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': 'ent12345', 'organization_id_to_remove': 'org67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_trello_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/remove_trello_webhook_example_call_tool.js deleted file mode 100644 index 65d03e19f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_trello_webhook_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RemoveTrelloWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_trello_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/remove_trello_webhook_example_call_tool.py deleted file mode 100644 index fdfd1d7f6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_trello_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RemoveTrelloWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_workspace_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/remove_workspace_domain_example_call_tool.js deleted file mode 100644 index 5b959107b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_workspace_domain_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RemoveWorkspaceDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id_or_name": "example-org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/remove_workspace_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/remove_workspace_domain_example_call_tool.py deleted file mode 100644 index 8c3663562..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/remove_workspace_domain_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RemoveWorkspaceDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id_or_name': 'example-org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/rename_trello_list_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/rename_trello_list_example_call_tool.js deleted file mode 100644 index 5217c3db8..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/rename_trello_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RenameTrelloList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_field_to_update": "name", - "trello_list_id": "12345", - "new_list_name": "Updated List Title" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/rename_trello_list_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/rename_trello_list_example_call_tool.py deleted file mode 100644 index f930cf08f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/rename_trello_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RenameTrelloList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_field_to_update': 'name', 'trello_list_id': '12345', 'new_list_name': 'Updated List Title' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/retrieve_organization_exports_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/retrieve_organization_exports_example_call_tool.js deleted file mode 100644 index 9f0f98b47..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/retrieve_organization_exports_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RetrieveOrganizationExports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_identifier": "my-trello-workspace" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/retrieve_organization_exports_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/retrieve_organization_exports_example_call_tool.py deleted file mode 100644 index 522dbcddc..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/retrieve_organization_exports_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RetrieveOrganizationExports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_identifier': 'my-trello-workspace' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/retrieve_token_webhooks_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/retrieve_token_webhooks_example_call_tool.js deleted file mode 100644 index 20eff5d44..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/retrieve_token_webhooks_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RetrieveTokenWebhooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "trello_token": "abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/retrieve_token_webhooks_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/retrieve_token_webhooks_example_call_tool.py deleted file mode 100644 index 4485454e4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/retrieve_token_webhooks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RetrieveTokenWebhooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'trello_token': 'abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/retrieve_trello_token_info_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/retrieve_trello_token_info_example_call_tool.js deleted file mode 100644 index 18d981fa6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/retrieve_trello_token_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RetrieveTrelloTokenInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "trello_token": "abc123xyz", - "include_webhooks": true, - "retrieve_fields": "all" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/retrieve_trello_token_info_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/retrieve_trello_token_info_example_call_tool.py deleted file mode 100644 index 94386e6eb..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/retrieve_trello_token_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RetrieveTrelloTokenInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'trello_token': 'abc123xyz', 'include_webhooks': True, 'retrieve_fields': 'all' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/retrieve_trello_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/retrieve_trello_webhook_example_call_tool.js deleted file mode 100644 index a7a4e5ee5..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/retrieve_trello_webhook_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.RetrieveTrelloWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "trello_token": "abc123xyz", - "webhook_id": "webhook_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/retrieve_trello_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/retrieve_trello_webhook_example_call_tool.py deleted file mode 100644 index 5cd5c100b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/retrieve_trello_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.RetrieveTrelloWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'trello_token': 'abc123xyz', 'webhook_id': 'webhook_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/search_trello_members_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/search_trello_members_example_call_tool.js deleted file mode 100644 index d4aa0a878..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/search_trello_members_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.SearchTrelloMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query": "john doe", - "board_id": "12345", - "restrict_to_organization_members": true, - "result_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/search_trello_members_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/search_trello_members_example_call_tool.py deleted file mode 100644 index cfc2aa446..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/search_trello_members_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.SearchTrelloMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query': 'john doe', - 'board_id': '12345', - 'restrict_to_organization_members': True, - 'result_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/set_trello_email_list_default_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/set_trello_email_list_default_example_call_tool.js deleted file mode 100644 index 004a3a165..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/set_trello_email_list_default_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.SetTrelloEmailListDefault"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id_to_update": "1234567890abcdef", - "email_list_id": "abcdef1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/set_trello_email_list_default_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/set_trello_email_list_default_example_call_tool.py deleted file mode 100644 index 866e22d8b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/set_trello_email_list_default_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.SetTrelloEmailListDefault" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id_to_update': '1234567890abcdef', 'email_list_id': 'abcdef1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/set_workplace_logo_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/set_workplace_logo_example_call_tool.js deleted file mode 100644 index 9754b9aee..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/set_workplace_logo_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.SetWorkplaceLogo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_identifier": "workspace123", - "logo_image_file": "http://example.com/logo.png" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/set_workplace_logo_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/set_workplace_logo_example_call_tool.py deleted file mode 100644 index c89a052a7..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/set_workplace_logo_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.SetWorkplaceLogo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_identifier': 'workspace123', 'logo_image_file': 'http://example.com/logo.png' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/star_trello_board_for_member_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/star_trello_board_for_member_example_call_tool.js deleted file mode 100644 index 2bbe6a21e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/star_trello_board_for_member_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.StarTrelloBoardForMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id_to_star": "12345abcde", - "board_star_position": "top", - "member_id_or_username": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/star_trello_board_for_member_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/star_trello_board_for_member_example_call_tool.py deleted file mode 100644 index 54fab707e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/star_trello_board_for_member_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.StarTrelloBoardForMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id_to_star': '12345abcde', - 'board_star_position': 'top', - 'member_id_or_username': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/start_organization_csv_export_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/start_organization_csv_export_example_call_tool.js deleted file mode 100644 index ae4570f97..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/start_organization_csv_export_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.StartOrganizationCsvExport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_id_or_name": "MyWorkspace", - "include_attachments": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/start_organization_csv_export_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/start_organization_csv_export_example_call_tool.py deleted file mode 100644 index f84ccb042..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/start_organization_csv_export_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.StartOrganizationCsvExport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_id_or_name': 'MyWorkspace', 'include_attachments': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/transfer_organization_to_enterprise_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/transfer_organization_to_enterprise_example_call_tool.js deleted file mode 100644 index ec84ab1df..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/transfer_organization_to_enterprise_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.TransferOrganizationToEnterprise"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "ent12345", - "organization_id": "org67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/transfer_organization_to_enterprise_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/transfer_organization_to_enterprise_example_call_tool.py deleted file mode 100644 index d47e4142a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/transfer_organization_to_enterprise_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.TransferOrganizationToEnterprise" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': 'ent12345', 'organization_id': 'org67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/trello_get_batch_requests_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/trello_get_batch_requests_example_call_tool.js deleted file mode 100644 index 8cce2292d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/trello_get_batch_requests_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.TrelloGetBatchRequests"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "urls_list_for_batching": "/members/trello,/cards/12345,/boards/67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/trello_get_batch_requests_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/trello_get_batch_requests_example_call_tool.py deleted file mode 100644 index 0085a1d36..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/trello_get_batch_requests_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.TrelloGetBatchRequests" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'urls_list_for_batching': '/members/trello,/cards/12345,/boards/67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/trello_move_all_cards_in_list_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/trello_move_all_cards_in_list_example_call_tool.js deleted file mode 100644 index 974d97db8..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/trello_move_all_cards_in_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.TrelloMoveAllCardsInList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "destination_board_id": "1234567890abcdef", - "source_list_id": "abcdef1234567890", - "target_list_id": "fedcba0987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/trello_move_all_cards_in_list_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/trello_move_all_cards_in_list_example_call_tool.py deleted file mode 100644 index dda2f4e0f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/trello_move_all_cards_in_list_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.TrelloMoveAllCardsInList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'destination_board_id': '1234567890abcdef', - 'source_list_id': 'abcdef1234567890', - 'target_list_id': 'fedcba0987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/trello_search_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/trello_search_example_call_tool.js deleted file mode 100644 index 19b8507a2..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/trello_search_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.TrelloSearch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "search_query": "project update", - "board_fields_selection": "all", - "card_fields": "desc,labels", - "enable_partial_search": true, - "maximum_cards_to_return": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/trello_search_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/trello_search_example_call_tool.py deleted file mode 100644 index 1282f6a12..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/trello_search_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.TrelloSearch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'search_query': 'project update', - 'board_fields_selection': 'all', - 'card_fields': 'desc,labels', - 'enable_partial_search': True, - 'maximum_cards_to_return': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/unstar_board_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/unstar_board_example_call_tool.js deleted file mode 100644 index 39df117b4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/unstar_board_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UnstarBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_star_id": "12345abcde", - "member_id": "user123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/unstar_board_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/unstar_board_example_call_tool.py deleted file mode 100644 index 407d7ea6b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/unstar_board_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UnstarBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_star_id': '12345abcde', 'member_id': 'user123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_board_background_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_board_background_example_call_tool.js deleted file mode 100644 index 1873cd5ef..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_board_background_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateBoardBackground"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_background_id": "bg123", - "member_id_or_username": "user456", - "background_brightness": "light", - "tile_background": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_board_background_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_board_background_example_call_tool.py deleted file mode 100644 index 93b3c980e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_board_background_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateBoardBackground" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_background_id': 'bg123', - 'member_id_or_username': 'user456', - 'background_brightness': 'light', - 'tile_background': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_board_email_position_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_board_email_position_example_call_tool.js deleted file mode 100644 index c262b22e4..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_board_email_position_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateBoardEmailPosition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345abcde", - "email_position": "top" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_board_email_position_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_board_email_position_example_call_tool.py deleted file mode 100644 index 9ba0b55ad..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_board_email_position_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateBoardEmailPosition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345abcde', 'email_position': 'top' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_board_membership_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_board_membership_example_call_tool.js deleted file mode 100644 index 3fce22c11..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_board_membership_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateBoardMembership"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "membership_id": "67890", - "membership_type": "admin", - "member_fields_to_update": "fullName" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_board_membership_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_board_membership_example_call_tool.py deleted file mode 100644 index f41216a45..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_board_membership_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateBoardMembership" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', - 'membership_id': '67890', - 'membership_type': 'admin', - 'member_fields_to_update': 'fullName' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_card_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_card_comment_example_call_tool.js deleted file mode 100644 index 6484c906b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_card_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateCardComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345", - "comment_action_id": "67890", - "new_comment_text": "Updated comment text." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_card_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_card_comment_example_call_tool.py deleted file mode 100644 index 025d06427..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_card_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateCardComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345', 'comment_action_id': '67890', 'new_comment_text': 'Updated comment text.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_checklist_field_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_checklist_field_example_call_tool.js deleted file mode 100644 index a1f120c37..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_checklist_field_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateChecklistField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checklist_field": "name", - "checklist_id": "abc123", - "checklist_name_value": "Updated Checklist Name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_checklist_field_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_checklist_field_example_call_tool.py deleted file mode 100644 index ab5a7ad20..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_checklist_field_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateChecklistField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checklist_field': 'name', - 'checklist_id': 'abc123', - 'checklist_name_value': 'Updated Checklist Name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_checklist_item_trello_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_checklist_item_trello_example_call_tool.js deleted file mode 100644 index e27bdc273..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_checklist_item_trello_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateChecklistItemTrello"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "1234567890abcdef", - "checkitem_id": "abcdef1234567890", - "checklist_item_new_name": "Updated Checklist Item", - "checklist_item_due_date": "2023-12-31T23:59:59Z", - "completion_state": "complete" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_checklist_item_trello_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_checklist_item_trello_example_call_tool.py deleted file mode 100644 index 440aef900..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_checklist_item_trello_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateChecklistItemTrello" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '1234567890abcdef', - 'checkitem_id': 'abcdef1234567890', - 'checklist_item_new_name': 'Updated Checklist Item', - 'checklist_item_due_date': '2023-12-31T23:59:59Z', - 'completion_state': 'complete' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_custom_board_background_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_custom_board_background_example_call_tool.js deleted file mode 100644 index a9594e214..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_custom_board_background_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateCustomBoardBackground"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_background_id": "bg12345", - "member_id_or_username": "user123", - "background_brightness": "light", - "tile_background": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_custom_board_background_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_custom_board_background_example_call_tool.py deleted file mode 100644 index bd660e0b8..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_custom_board_background_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateCustomBoardBackground" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_background_id': 'bg12345', - 'member_id_or_username': 'user123', - 'background_brightness': 'light', - 'tile_background': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_custom_field_definition_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_custom_field_definition_example_call_tool.js deleted file mode 100644 index 06c65b4dc..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_custom_field_definition_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateCustomFieldDefinition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "custom_field_id": "12345", - "request_body": "{\"name\":\"Updated Field Name\",\"type\":\"text\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_custom_field_definition_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_custom_field_definition_example_call_tool.py deleted file mode 100644 index 5382d9c3f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_custom_field_definition_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateCustomFieldDefinition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'custom_field_id': '12345', - 'request_body': '{"name":"Updated Field Name","type":"text"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_enterprise_member_license_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_enterprise_member_license_example_call_tool.js deleted file mode 100644 index 14ef3889e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_enterprise_member_license_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateEnterpriseMemberLicense"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enterprise_id": "ent12345", - "grant_enterprise_license": true, - "member_id": "mem67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_enterprise_member_license_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_enterprise_member_license_example_call_tool.py deleted file mode 100644 index 85ff27b9f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_enterprise_member_license_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateEnterpriseMemberLicense" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enterprise_id': 'ent12345', 'grant_enterprise_license': True, 'member_id': 'mem67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_member_notification_blocked_keys_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_member_notification_blocked_keys_example_call_tool.js deleted file mode 100644 index dcb016fe9..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_member_notification_blocked_keys_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateMemberNotificationBlockedKeys"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "member_identifier": "user123", - "request_body": "{\"blockedKeys\":[\"key1\",\"key2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_member_notification_blocked_keys_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_member_notification_blocked_keys_example_call_tool.py deleted file mode 100644 index 1558fe330..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_member_notification_blocked_keys_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateMemberNotificationBlockedKeys" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'member_identifier': 'user123', - 'request_body': '{"blockedKeys":["key1","key2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_notification_read_status_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_notification_read_status_example_call_tool.js deleted file mode 100644 index 744dc6594..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_notification_read_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateNotificationReadStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "notification_id": "12345", - "mark_as_unread": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_notification_read_status_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_notification_read_status_example_call_tool.py deleted file mode 100644 index 67543c198..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_notification_read_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateNotificationReadStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'notification_id': '12345', 'mark_as_unread': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_organization_members_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_organization_members_example_call_tool.js deleted file mode 100644 index f52bc21dd..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_organization_members_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateOrganizationMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_email": "john.doe@example.com", - "member_full_name": "John Doe", - "organization_id_or_name": "Team Alpha", - "member_role": "admin" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_organization_members_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_organization_members_example_call_tool.py deleted file mode 100644 index 6f6c83258..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_organization_members_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateOrganizationMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_email': 'john.doe@example.com', - 'member_full_name': 'John Doe', - 'organization_id_or_name': 'Team Alpha', - 'member_role': 'admin' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_organization_trello_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_organization_trello_example_call_tool.js deleted file mode 100644 index a43f83929..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_organization_trello_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateOrganizationTrello"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id_or_name": "my-org", - "new_display_name": "My Updated Org", - "organization_description": "This is a description of my updated organization.", - "organization_website": "https://myorg.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_organization_trello_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_organization_trello_example_call_tool.py deleted file mode 100644 index 93038dd86..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_organization_trello_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateOrganizationTrello" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id_or_name': 'my-org', - 'new_display_name': 'My Updated Org', - 'organization_description': 'This is a description of my updated organization.', - 'organization_website': 'https://myorg.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_power_up_listing_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_power_up_listing_example_call_tool.js deleted file mode 100644 index aa3fa87d1..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_power_up_listing_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdatePowerUpListing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "listing_id": "12345", - "power_up_id": "abcde", - "listing_description": "Updated description for the Power-Up.", - "listing_locale": "en", - "localized_name": "Updated Power-Up Name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_power_up_listing_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_power_up_listing_example_call_tool.py deleted file mode 100644 index a01897aba..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_power_up_listing_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdatePowerUpListing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'listing_id': '12345', - 'power_up_id': 'abcde', - 'listing_description': 'Updated description for the Power-Up.', - 'listing_locale': 'en', - 'localized_name': 'Updated Power-Up Name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_saved_search_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_saved_search_example_call_tool.js deleted file mode 100644 index d9cb67df6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_saved_search_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateSavedSearch"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "saved_search_id": "12345", - "new_position_for_saved_search": "top", - "new_saved_search_name": "Updated Search" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_saved_search_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_saved_search_example_call_tool.py deleted file mode 100644 index e2461caca..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_saved_search_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateSavedSearch" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', - 'saved_search_id': '12345', - 'new_position_for_saved_search': 'top', - 'new_saved_search_name': 'Updated Search' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_actions_preference_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_sidebar_actions_preference_example_call_tool.js deleted file mode 100644 index ebc91efc6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_actions_preference_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateSidebarActionsPreference"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345abcde", - "show_sidebar_board_actions": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_actions_preference_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_sidebar_actions_preference_example_call_tool.py deleted file mode 100644 index 0a8fa98c9..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_actions_preference_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateSidebarActionsPreference" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345abcde', 'show_sidebar_board_actions': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_activity_preference_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_sidebar_activity_preference_example_call_tool.js deleted file mode 100644 index a0f652f30..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_activity_preference_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateSidebarActivityPreference"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345abcde", - "show_sidebar_activity": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_activity_preference_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_sidebar_activity_preference_example_call_tool.py deleted file mode 100644 index e3dce117a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_activity_preference_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateSidebarActivityPreference" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345abcde', 'show_sidebar_activity': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_members_pref_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_sidebar_members_pref_example_call_tool.js deleted file mode 100644 index 373de3b8f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_members_pref_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateSidebarMembersPref"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345abcde", - "show_sidebar_members": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_members_pref_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_sidebar_members_pref_example_call_tool.py deleted file mode 100644 index 95b0807d6..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_members_pref_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateSidebarMembersPref" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345abcde', 'show_sidebar_members': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_preference_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_sidebar_preference_example_call_tool.js deleted file mode 100644 index 5b5117d5a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_preference_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateSidebarPreference"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345abcde", - "show_sidebar": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_preference_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_sidebar_preference_example_call_tool.py deleted file mode 100644 index 5ca25a747..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_sidebar_preference_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateSidebarPreference" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345abcde', 'show_sidebar': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_starred_board_position_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_starred_board_position_example_call_tool.js deleted file mode 100644 index d9e992991..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_starred_board_position_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateStarredBoardPosition"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_star_id": "12345", - "member_id_or_username": "john_doe", - "new_board_position": "top" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_starred_board_position_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_starred_board_position_example_call_tool.py deleted file mode 100644 index 3e8526068..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_starred_board_position_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateStarredBoardPosition" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_star_id': '12345', 'member_id_or_username': 'john_doe', 'new_board_position': 'top' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_board_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_trello_board_example_call_tool.js deleted file mode 100644 index 00997a93d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_board_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateTrelloBoard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "board_id": "12345", - "new_board_name": "Updated Board Name", - "allow_workspace_members_to_join": true, - "background_preference": "blue", - "board_description": "This is an updated description for the board." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_board_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_trello_board_example_call_tool.py deleted file mode 100644 index d83e6d9a2..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_board_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateTrelloBoard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'board_id': '12345', - 'new_board_name': 'Updated Board Name', - 'allow_workspace_members_to_join': True, - 'background_preference': 'blue', - 'board_description': 'This is an updated description for the board.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_card_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_trello_card_custom_field_example_call_tool.js deleted file mode 100644 index 6dd399d82..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_card_custom_field_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateTrelloCardCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "card_id": "12345abcde", - "custom_field_id": "67890fghij", - "request_body": "{\"value\":\"Updated Value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_card_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_trello_card_custom_field_example_call_tool.py deleted file mode 100644 index 9c86bf3ce..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_card_custom_field_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateTrelloCardCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'card_id': '12345abcde', - 'custom_field_id': '67890fghij', - 'request_body': '{"value":"Updated Value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_card_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_trello_card_custom_fields_example_call_tool.js deleted file mode 100644 index 4a5a87d5e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_card_custom_fields_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateTrelloCardCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"cardId\":\"12345\",\"customFields\":{\"field1\":\"value1\",\"field2\":\"value2\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_card_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_trello_card_custom_fields_example_call_tool.py deleted file mode 100644 index 2afa6ef85..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_card_custom_fields_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateTrelloCardCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"cardId":"12345","customFields":{"field1":"value1","field2":"value2"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_card_sticker_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_trello_card_sticker_example_call_tool.js deleted file mode 100644 index 5a2107c51..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_card_sticker_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateTrelloCardSticker"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345", - "sticker_id": "abcde", - "sticker_left_position": 10, - "sticker_top_position": 20, - "sticker_z_index": 1, - "sticker_rotation": 45 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_card_sticker_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_trello_card_sticker_example_call_tool.py deleted file mode 100644 index 8375c615b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_card_sticker_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateTrelloCardSticker" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345', - 'sticker_id': 'abcde', - 'sticker_left_position': 10, - 'sticker_top_position': 20, - 'sticker_z_index': 1, - 'sticker_rotation': 45 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_checklist_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_trello_checklist_example_call_tool.js deleted file mode 100644 index adfac40f8..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_checklist_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateTrelloChecklist"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "checklist_id": "abc123", - "checklist_name": "Updated Checklist", - "checklist_position": "top" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_checklist_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_trello_checklist_example_call_tool.py deleted file mode 100644 index 084cc86b3..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_checklist_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateTrelloChecklist" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'checklist_id': 'abc123', 'checklist_name': 'Updated Checklist', 'checklist_position': 'top' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_checklist_item_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_trello_checklist_item_example_call_tool.js deleted file mode 100644 index ae616b1a2..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_checklist_item_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateTrelloChecklistItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345", - "checklist_id": "67890", - "checklist_item_id": "abcde", - "position_in_checklist": "top" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_checklist_item_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_trello_checklist_item_example_call_tool.py deleted file mode 100644 index 326f83867..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_checklist_item_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateTrelloChecklistItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345', - 'checklist_id': '67890', - 'checklist_item_id': 'abcde', - 'position_in_checklist': 'top' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_trello_comment_example_call_tool.js deleted file mode 100644 index fac72dfbb..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_comment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateTrelloComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "action_id": "12345", - "new_comment_text": "Updated comment text." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_trello_comment_example_call_tool.py deleted file mode 100644 index b944bdf26..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateTrelloComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'action_id': '12345', 'new_comment_text': 'Updated comment text.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_label_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_trello_label_example_call_tool.js deleted file mode 100644 index b7d23497a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_label_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateTrelloLabel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "label_id": "12345", - "label_color": "blue", - "new_label_name": "In Progress" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_label_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_trello_label_example_call_tool.py deleted file mode 100644 index 051c76d38..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_label_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateTrelloLabel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'label_id': '12345', 'label_color': 'blue', 'new_label_name': 'In Progress' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_label_field_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_trello_label_field_example_call_tool.js deleted file mode 100644 index 4a7ddbb64..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_label_field_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateTrelloLabelField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "label_field_to_update": "color", - "label_id": "12345abc", - "new_field_value": "blue" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_label_field_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_trello_label_field_example_call_tool.py deleted file mode 100644 index 3e710f162..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_label_field_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateTrelloLabelField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'label_field_to_update': 'color', 'label_id': '12345abc', 'new_field_value': 'blue' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_list_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_trello_list_example_call_tool.js deleted file mode 100644 index d58b5d790..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateTrelloList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "list_id": "12345", - "archive_list": false, - "new_list_name": "Updated List Name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_list_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_trello_list_example_call_tool.py deleted file mode 100644 index f190073c1..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateTrelloList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'list_id': '12345', 'archive_list': False, 'new_list_name': 'Updated List Name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_member_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_trello_member_example_call_tool.js deleted file mode 100644 index ebd3ceb6f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_member_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateTrelloMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "member_id_or_username": "john_doe", - "new_full_name": "John Doe", - "member_bio": "Software Engineer at XYZ", - "avatar_source": "gravatar", - "enable_color_blind_mode": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_member_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_trello_member_example_call_tool.py deleted file mode 100644 index ce04dd0eb..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_member_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateTrelloMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'member_id_or_username': 'john_doe', - 'new_full_name': 'John Doe', - 'member_bio': 'Software Engineer at XYZ', - 'avatar_source': 'gravatar', - 'enable_color_blind_mode': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_member_notification_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_trello_member_notification_settings_example_call_tool.js deleted file mode 100644 index 13b29d6f9..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_member_notification_settings_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateTrelloMemberNotificationSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "member_id_or_username": "john_doe", - "notification_channel": "email", - "request_body": "{\"blocked_notifications\": [\"comment\", \"mention\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_member_notification_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_trello_member_notification_settings_example_call_tool.py deleted file mode 100644 index 1b64790f2..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_member_notification_settings_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateTrelloMemberNotificationSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'member_id_or_username': 'john_doe', - 'notification_channel': 'email', - 'request_body': '{"blocked_notifications": ["comment", "mention"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_plugin_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_trello_plugin_example_call_tool.js deleted file mode 100644 index 0a663a5b8..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_plugin_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateTrelloPlugin"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_plugin_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_trello_plugin_example_call_tool.py deleted file mode 100644 index 7b6b22431..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_plugin_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateTrelloPlugin" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_trello_webhook_example_call_tool.js deleted file mode 100644 index d63899915..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_webhook_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateTrelloWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "authentication_token": "abc123token", - "webhook_id": "webhook456", - "callback_url": "https://example.com/webhook" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_trello_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_trello_webhook_example_call_tool.py deleted file mode 100644 index e9808b155..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_trello_webhook_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateTrelloWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'authentication_token': 'abc123token', - 'webhook_id': 'webhook456', - 'callback_url': 'https://example.com/webhook' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/update_workspace_member_status_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/update_workspace_member_status_example_call_tool.js deleted file mode 100644 index 517572eec..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_workspace_member_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UpdateWorkspaceMemberStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deactivate_member": true, - "member_id_or_username": "john_doe", - "organization_id_or_name": "my_organization" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/update_workspace_member_status_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/update_workspace_member_status_example_call_tool.py deleted file mode 100644 index 5b2eeb21e..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/update_workspace_member_status_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UpdateWorkspaceMemberStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deactivate_member': True, - 'member_id_or_username': 'john_doe', - 'organization_id_or_name': 'my_organization' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/upload_custom_board_background_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/upload_custom_board_background_example_call_tool.js deleted file mode 100644 index b756e3e3f..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/upload_custom_board_background_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UploadCustomBoardBackground"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "background_file_upload": "https://example.com/background.jpg", - "member_id_or_username": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/upload_custom_board_background_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/upload_custom_board_background_example_call_tool.py deleted file mode 100644 index e2f9c356d..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/upload_custom_board_background_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UploadCustomBoardBackground" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'background_file_upload': 'https://example.com/background.jpg', - 'member_id_or_username': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/upload_custom_sticker_to_trello_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/upload_custom_sticker_to_trello_example_call_tool.js deleted file mode 100644 index 9c2e4be8b..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/upload_custom_sticker_to_trello_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UploadCustomStickerToTrello"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_sticker_file_path": "https://example.com/sticker.png", - "member_id_or_username": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/upload_custom_sticker_to_trello_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/upload_custom_sticker_to_trello_example_call_tool.py deleted file mode 100644 index 6864a1ab3..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/upload_custom_sticker_to_trello_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UploadCustomStickerToTrello" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_sticker_file_path': 'https://example.com/sticker.png', 'member_id_or_username': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/upload_trello_board_background_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/upload_trello_board_background_example_call_tool.js deleted file mode 100644 index d5a4fd502..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/upload_trello_board_background_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.UploadTrelloBoardBackground"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "background_image_file_path": "https://example.com/background.jpg", - "member_id_or_username": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/upload_trello_board_background_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/upload_trello_board_background_example_call_tool.py deleted file mode 100644 index a072c8315..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/upload_trello_board_background_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.UploadTrelloBoardBackground" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'background_image_file_path': 'https://example.com/background.jpg', - 'member_id_or_username': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/trello_api/vote_on_trello_card_example_call_tool.js b/public/examples/integrations/mcp-servers/trello_api/vote_on_trello_card_example_call_tool.js deleted file mode 100644 index 7acf4b27a..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/vote_on_trello_card_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "TrelloApi.VoteOnTrelloCard"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "card_id": "12345abcde", - "member_id_for_vote": "67890fghij" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/trello_api/vote_on_trello_card_example_call_tool.py b/public/examples/integrations/mcp-servers/trello_api/vote_on_trello_card_example_call_tool.py deleted file mode 100644 index 467de49f8..000000000 --- a/public/examples/integrations/mcp-servers/trello_api/vote_on_trello_card_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "TrelloApi.VoteOnTrelloCard" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'card_id': '12345abcde', 'member_id_for_vote': '67890fghij' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/accept_project_transfer_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/accept_project_transfer_example_call_tool.js deleted file mode 100644 index dbe44f5a9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/accept_project_transfer_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.AcceptProjectTransfer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_transfer_code": "ABC123", - "team_identifier": "team_456", - "request_body": "{\"accept\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/accept_project_transfer_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/accept_project_transfer_example_call_tool.py deleted file mode 100644 index 37de24c1e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/accept_project_transfer_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.AcceptProjectTransfer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_transfer_code': 'ABC123', - 'team_identifier': 'team_456', - 'request_body': '{"accept": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/add_edge_config_token_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/add_edge_config_token_example_call_tool.js deleted file mode 100644 index 00ca7c6e5..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/add_edge_config_token_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.AddEdgeConfigToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "edge_config_id": "ec_12345", - "token_label": "NewAccessToken", - "team_identifier": "team_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/add_edge_config_token_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/add_edge_config_token_example_call_tool.py deleted file mode 100644 index df35a48ab..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/add_edge_config_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.AddEdgeConfigToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'edge_config_id': 'ec_12345', 'token_label': 'NewAccessToken', 'team_identifier': 'team_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/add_new_domain_vercel_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/add_new_domain_vercel_example_call_tool.js deleted file mode 100644 index 9a8d26ef2..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/add_new_domain_vercel_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.AddNewDomainVercel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_identifier": "12345", - "request_body": "{\"domain\":\"example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/add_new_domain_vercel_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/add_new_domain_vercel_example_call_tool.py deleted file mode 100644 index b71d9d112..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/add_new_domain_vercel_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.AddNewDomainVercel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'team_identifier': '12345', 'request_body': '{"domain":"example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/add_project_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/add_project_domain_example_call_tool.js deleted file mode 100644 index 73a124c70..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/add_project_domain_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.AddProjectDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_domain_name": "example.com", - "project_identifier_or_name": "my-vercel-project", - "git_branch_to_link_domain": "main", - "redirect_status_code": 301, - "redirect_target_domain": "target.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/add_project_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/add_project_domain_example_call_tool.py deleted file mode 100644 index b2613eb8f..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/add_project_domain_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.AddProjectDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_domain_name': 'example.com', - 'project_identifier_or_name': 'my-vercel-project', - 'git_branch_to_link_domain': 'main', - 'redirect_status_code': 301, - 'redirect_target_domain': 'target.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/add_project_member_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/add_project_member_example_call_tool.js deleted file mode 100644 index d691819a1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/add_project_member_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.AddProjectMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id_or_name": "my-vercel-project", - "team_identifier": "team-123", - "request_body": "{\"email\":\"newmember@example.com\",\"role\":\"developer\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/add_project_member_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/add_project_member_example_call_tool.py deleted file mode 100644 index 02c7ba3b3..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/add_project_member_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.AddProjectMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id_or_name': 'my-vercel-project', - 'team_identifier': 'team-123', - 'request_body': '{"email":"newmember@example.com","role":"developer"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/advance_rollout_stage_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/advance_rollout_stage_example_call_tool.js deleted file mode 100644 index 6cb7feb2b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/advance_rollout_stage_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.AdvanceRolloutStage"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "my-project", - "team_identifier": "team-123", - "request_body": "{\"approval\":\"manual\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/advance_rollout_stage_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/advance_rollout_stage_example_call_tool.py deleted file mode 100644 index 4faa47d2f..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/advance_rollout_stage_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.AdvanceRolloutStage" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': 'my-project', - 'team_identifier': 'team-123', - 'request_body': '{"approval":"manual"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/cancel_deployment_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/cancel_deployment_example_call_tool.js deleted file mode 100644 index 244d8f96e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/cancel_deployment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CancelDeployment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_id": "12345", - "team_identifier": "team_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/cancel_deployment_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/cancel_deployment_example_call_tool.py deleted file mode 100644 index e4bfa3ef6..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/cancel_deployment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CancelDeployment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_id': '12345', 'team_identifier': 'team_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/check_domain_availability_bulk_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/check_domain_availability_bulk_example_call_tool.js deleted file mode 100644 index b486ebba3..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/check_domain_availability_bulk_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CheckDomainAvailabilityBulk"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_names": [ - "example.com", - "testsite.org", - "mywebsite.net" - ], - "team_identifier": "team123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/check_domain_availability_bulk_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/check_domain_availability_bulk_example_call_tool.py deleted file mode 100644 index 7c7f58526..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/check_domain_availability_bulk_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CheckDomainAvailabilityBulk" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_names': ['example.com', 'testsite.org', 'mywebsite.net'], 'team_identifier': 'team123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/check_domain_availability_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/check_domain_availability_example_call_tool.js deleted file mode 100644 index 405b1a12c..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/check_domain_availability_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CheckDomainAvailability"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com", - "team_identifier": "team123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/check_domain_availability_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/check_domain_availability_example_call_tool.py deleted file mode 100644 index 0d2c259ae..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/check_domain_availability_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CheckDomainAvailability" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com', 'team_identifier': 'team123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/check_domain_transfer_status_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/check_domain_transfer_status_example_call_tool.js deleted file mode 100644 index 530e27757..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/check_domain_transfer_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CheckDomainTransferStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com", - "team_id": "team123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/check_domain_transfer_status_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/check_domain_transfer_status_example_call_tool.py deleted file mode 100644 index 1e32cdfd9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/check_domain_transfer_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CheckDomainTransferStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com', 'team_id': 'team123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/check_remote_caching_status_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/check_remote_caching_status_example_call_tool.js deleted file mode 100644 index 58093a56f..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/check_remote_caching_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CheckRemoteCachingStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_identifier": "12345", - "team_slug": "my-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/check_remote_caching_status_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/check_remote_caching_status_example_call_tool.py deleted file mode 100644 index 5cce3755d..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/check_remote_caching_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CheckRemoteCachingStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_identifier': '12345', 'team_slug': 'my-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/check_team_access_status_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/check_team_access_status_example_call_tool.js deleted file mode 100644 index 1ab4a8c37..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/check_team_access_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CheckTeamAccessStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "team_123", - "user_id": "user_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/check_team_access_status_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/check_team_access_status_example_call_tool.py deleted file mode 100644 index b5abcf58e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/check_team_access_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CheckTeamAccessStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': 'team_123', 'user_id': 'user_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/connect_integration_resource_to_project_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/connect_integration_resource_to_project_example_call_tool.js deleted file mode 100644 index 417141df5..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/connect_integration_resource_to_project_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ConnectIntegrationResourceToProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_configuration_id": "config123", - "resource_id": "resource456", - "team_identifier": "team789", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/connect_integration_resource_to_project_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/connect_integration_resource_to_project_example_call_tool.py deleted file mode 100644 index b4a464e5c..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/connect_integration_resource_to_project_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ConnectIntegrationResourceToProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'integration_configuration_id': 'config123', - 'resource_id': 'resource456', - 'team_identifier': 'team789', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_access_group_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_access_group_example_call_tool.js deleted file mode 100644 index 0e44bc85d..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_access_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateAccessGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_identifier": "team_123", - "request_body": "{\"name\":\"New Access Group\",\"permissions\":[\"read\",\"write\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_access_group_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_access_group_example_call_tool.py deleted file mode 100644 index 87968a2da..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_access_group_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateAccessGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_identifier': 'team_123', - 'request_body': '{"name":"New Access Group","permissions":["read","write"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_access_group_project_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_access_group_project_example_call_tool.js deleted file mode 100644 index 3e713bbb6..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_access_group_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateAccessGroupProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "access_group_id_or_name": "dev-team", - "project_id": "proj-12345", - "project_role": "ADMIN" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_access_group_project_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_access_group_project_example_call_tool.py deleted file mode 100644 index a32a5bcd3..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_access_group_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateAccessGroupProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'access_group_id_or_name': 'dev-team', 'project_id': 'proj-12345', 'project_role': 'ADMIN' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_auth_token_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_auth_token_example_call_tool.js deleted file mode 100644 index 2c49d27a4..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_auth_token_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateAuthToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "token_name": "user_access_token", - "expiration_timestamp": 1700000000 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_auth_token_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_auth_token_example_call_tool.py deleted file mode 100644 index ef434da6e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_auth_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateAuthToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'token_name': 'user_access_token', 'expiration_timestamp': 1700000000 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_custom_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_custom_environment_example_call_tool.js deleted file mode 100644 index 2401b1e03..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_custom_environment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateCustomEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_unique_identifier_or_name": "my-vercel-project", - "custom_environment_slug": "staging", - "environment_description": "Staging environment for testing", - "git_branch_name_pattern": "feature/*" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_custom_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_custom_environment_example_call_tool.py deleted file mode 100644 index 989122711..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_custom_environment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateCustomEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_unique_identifier_or_name': 'my-vercel-project', - 'custom_environment_slug': 'staging', - 'environment_description': 'Staging environment for testing', - 'git_branch_name_pattern': 'feature/*' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_dns_record_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_dns_record_example_call_tool.js deleted file mode 100644 index 3e82436c9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_dns_record_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateDnsRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "domain_name_for_dns_record": "example.com", - "team_identifier": "team123", - "team_slug": "dev-team", - "request_body": "{\"type\":\"A\",\"value\":\"192.0.2.1\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_dns_record_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_dns_record_example_call_tool.py deleted file mode 100644 index 951c18704..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_dns_record_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateDnsRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'domain_name_for_dns_record': 'example.com', - 'team_identifier': 'team123', - 'team_slug': 'dev-team', - 'request_body': '{"type":"A","value":"192.0.2.1"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_edge_config_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_edge_config_example_call_tool.js deleted file mode 100644 index b298ac36a..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_edge_config_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateEdgeConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_identifier": "team_123", - "request_body": "{\"name\":\"MyEdgeConfig\",\"settings\":{\"cache\":\"max-age=3600\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_edge_config_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_edge_config_example_call_tool.py deleted file mode 100644 index 09ab2feb3..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_edge_config_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateEdgeConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_identifier': 'team_123', - 'request_body': '{"name":"MyEdgeConfig","settings":{"cache":"max-age=3600"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_experimentation_items_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_experimentation_items_example_call_tool.js deleted file mode 100644 index 97967b44e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_experimentation_items_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateExperimentationItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_configuration_id": "12345", - "resource_identifier": "resource_1", - "request_body": "{\"experiment\":\"test_experiment\",\"data\":\"sample_data\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_experimentation_items_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_experimentation_items_example_call_tool.py deleted file mode 100644 index 30232182b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_experimentation_items_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateExperimentationItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'integration_configuration_id': '12345', - 'resource_identifier': 'resource_1', - 'request_body': '{"experiment":"test_experiment","data":"sample_data"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_firewall_bypass_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_firewall_bypass_rule_example_call_tool.js deleted file mode 100644 index e11f86e62..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_firewall_bypass_rule_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateFirewallBypassRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "team_identifier": "team_1", - "request_body": "{\"rule\":\"allow\",\"port\":80}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_firewall_bypass_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_firewall_bypass_rule_example_call_tool.py deleted file mode 100644 index 76b01e97e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_firewall_bypass_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateFirewallBypassRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'team_identifier': 'team_1', - 'request_body': '{"rule":"allow","port":80}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_integration_log_drain_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_integration_log_drain_example_call_tool.js deleted file mode 100644 index 86e45f23b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_integration_log_drain_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateIntegrationLogDrain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_identifier": "team_123", - "request_body": "{\"logDrainUrl\":\"https://example.com/logs\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_integration_log_drain_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_integration_log_drain_example_call_tool.py deleted file mode 100644 index e973854e1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_integration_log_drain_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateIntegrationLogDrain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_identifier': 'team_123', - 'request_body': '{"logDrainUrl":"https://example.com/logs"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_integration_store_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_integration_store_example_call_tool.js deleted file mode 100644 index ff6dd42bb..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_integration_store_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateIntegrationStore"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_identifier": "12345", - "team_slug": "my-team", - "request_body": "{\"plan\":\"free\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_integration_store_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_integration_store_example_call_tool.py deleted file mode 100644 index 12704e873..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_integration_store_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateIntegrationStore" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_identifier': '12345', - 'team_slug': 'my-team', - 'request_body': '{"plan":"free"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_new_deployment_check_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_new_deployment_check_example_call_tool.js deleted file mode 100644 index b007c2b05..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_new_deployment_check_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateNewDeploymentCheck"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "block_deployment_on_failure": true, - "check_name": "Smoke Test", - "deployment_id": "abc123", - "allow_rerun_request": false, - "details_url": "https://example.com/check-details" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_new_deployment_check_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_new_deployment_check_example_call_tool.py deleted file mode 100644 index 13d911441..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_new_deployment_check_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateNewDeploymentCheck" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'block_deployment_on_failure': True, - 'check_name': 'Smoke Test', - 'deployment_id': 'abc123', - 'allow_rerun_request': False, - 'details_url': 'https://example.com/check-details' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_new_project_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_new_project_example_call_tool.js deleted file mode 100644 index c530c9843..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_new_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateNewProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_identifier": "team123", - "request_body": "{\"projectName\":\"New Project\",\"description\":\"This is a sample project.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_new_project_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_new_project_example_call_tool.py deleted file mode 100644 index db360a177..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_new_project_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateNewProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_identifier': 'team123', - 'request_body': '{"projectName":"New Project","description":"This is a sample project."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_project_environment_variables_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_project_environment_variables_example_call_tool.js deleted file mode 100644 index 55e82053d..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_project_environment_variables_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateProjectEnvironmentVariables"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier_or_name": "my-vercel-project", - "allow_override_existing_variable": "true", - "request_body": "{\"key\":\"API_KEY\",\"value\":\"12345\",\"type\":\"secret\",\"target\":\"production\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_project_environment_variables_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_project_environment_variables_example_call_tool.py deleted file mode 100644 index c7192a398..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_project_environment_variables_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateProjectEnvironmentVariables" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier_or_name': 'my-vercel-project', - 'allow_override_existing_variable': 'true', - 'request_body': '{"key":"API_KEY","value":"12345","type":"secret","target":"production"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_vercel_deployment_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_vercel_deployment_example_call_tool.js deleted file mode 100644 index 2c3c93a08..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_vercel_deployment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateVercelDeployment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "force_new_deployment": "true", - "request_body": "{\"files\":[{\"name\":\"index.html\",\"content\":\"

Hello World

\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_vercel_deployment_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_vercel_deployment_example_call_tool.py deleted file mode 100644 index 2d2bcd5ff..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_vercel_deployment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateVercelDeployment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'force_new_deployment': 'true', - 'request_body': '{"files":[{"name":"index.html","content":"

Hello World

"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_vercel_team_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_vercel_team_example_call_tool.js deleted file mode 100644 index 48aa039c9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_vercel_team_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateVercelTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_slug": "my-new-team", - "team_name": "My New Team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_vercel_team_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_vercel_team_example_call_tool.py deleted file mode 100644 index d4e9116c7..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_vercel_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateVercelTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_slug': 'my-new-team', 'team_name': 'My New Team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_vercel_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/create_vercel_webhook_example_call_tool.js deleted file mode 100644 index ecc51b630..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_vercel_webhook_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.CreateVercelWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "events_list": [ - "deploy succeeded", - "deploy failed" - ], - "webhook_url": "https://example.com/webhook", - "project_ids": [ - "proj_123", - "proj_456" - ], - "team_identifier": "team_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/create_vercel_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/create_vercel_webhook_example_call_tool.py deleted file mode 100644 index 1f65ead46..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/create_vercel_webhook_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.CreateVercelWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'events_list': ['deploy succeeded', 'deploy failed'], - 'webhook_url': 'https://example.com/webhook', - 'project_ids': ['proj_123', 'proj_456'], - 'team_identifier': 'team_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_access_group_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_access_group_example_call_tool.js deleted file mode 100644 index c8358844f..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_access_group_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteAccessGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_id_or_name": "example-access-group", - "team_identifier": "team-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_access_group_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_access_group_example_call_tool.py deleted file mode 100644 index 6c7cd0cfd..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_access_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteAccessGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_id_or_name': 'example-access-group', 'team_identifier': 'team-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_access_group_project_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_access_group_project_example_call_tool.js deleted file mode 100644 index 40eda7785..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_access_group_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteAccessGroupProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "access_group_id_or_name": "dev-team", - "project_id": "proj-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_access_group_project_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_access_group_project_example_call_tool.py deleted file mode 100644 index 99cc7aba4..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_access_group_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteAccessGroupProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'access_group_id_or_name': 'dev-team', 'project_id': 'proj-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_alias_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_alias_by_id_example_call_tool.js deleted file mode 100644 index e3a5ea676..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_alias_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteAliasById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alias_id_to_remove": "alias123", - "team_identifier": "team456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_alias_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_alias_by_id_example_call_tool.py deleted file mode 100644 index d281a03c3..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_alias_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteAliasById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alias_id_to_remove': 'alias123', 'team_identifier': 'team456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_cache_by_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_cache_by_tags_example_call_tool.js deleted file mode 100644 index 3fe5469db..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_cache_by_tags_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteCacheByTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id_or_name": "project123", - "team_identifier": "team456", - "request_body": "{\"tags\":[\"tag1\",\"tag2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_cache_by_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_cache_by_tags_example_call_tool.py deleted file mode 100644 index 8745aed52..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_cache_by_tags_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteCacheByTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id_or_name': 'project123', - 'team_identifier': 'team456', - 'request_body': '{"tags":["tag1","tag2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_deployment_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_deployment_example_call_tool.js deleted file mode 100644 index 5a518e64a..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_deployment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteDeployment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_deployment_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_deployment_example_call_tool.py deleted file mode 100644 index 6a97a2094..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_deployment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteDeployment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_example_call_tool.js deleted file mode 100644 index 8c5068432..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteEdgeConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "edge_config_id": "abc123", - "team_identifier": "team_xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_example_call_tool.py deleted file mode 100644 index f50c84286..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteEdgeConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'edge_config_id': 'abc123', 'team_identifier': 'team_xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_schema_example_call_tool.js deleted file mode 100644 index 92488325d..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_schema_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteEdgeConfigSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "edge_config_id": "abc123", - "team_slug": "my-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_schema_example_call_tool.py deleted file mode 100644 index 7e9dad80a..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_schema_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteEdgeConfigSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'edge_config_id': 'abc123', 'team_slug': 'my-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_tokens_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_tokens_example_call_tool.js deleted file mode 100644 index aa283a5c2..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_tokens_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteEdgeConfigTokens"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "edge_config_id": "ec_12345", - "tokens_to_delete": [ - "token1", - "token2" - ], - "team_identifier": "team_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_tokens_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_tokens_example_call_tool.py deleted file mode 100644 index b13927f6d..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_edge_config_tokens_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteEdgeConfigTokens" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'edge_config_id': 'ec_12345', - 'tokens_to_delete': ['token1', 'token2'], - 'team_identifier': 'team_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_experimentation_item_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_experimentation_item_example_call_tool.js deleted file mode 100644 index d30b3a886..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_experimentation_item_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteExperimentationItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "experiment_item_id": "item123", - "integration_configuration_id": "config456", - "resource_id": "resource789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_experimentation_item_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_experimentation_item_example_call_tool.py deleted file mode 100644 index 74b7539f1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_experimentation_item_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteExperimentationItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'experiment_item_id': 'item123', - 'integration_configuration_id': 'config456', - 'resource_id': 'resource789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_integration_log_drain_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_integration_log_drain_example_call_tool.js deleted file mode 100644 index 98c7de8e1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_integration_log_drain_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteIntegrationLogDrain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "log_drain_id": "12345", - "team_identifier": "team_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_integration_log_drain_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_integration_log_drain_example_call_tool.py deleted file mode 100644 index dcfae89e1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_integration_log_drain_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteIntegrationLogDrain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'log_drain_id': '12345', 'team_identifier': 'team_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_integration_resource_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_integration_resource_example_call_tool.js deleted file mode 100644 index 06e0b8af3..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_integration_resource_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteIntegrationResource"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_installation_id": "inst_12345", - "resource_id": "res_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_integration_resource_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_integration_resource_example_call_tool.py deleted file mode 100644 index 4d4afe35c..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_integration_resource_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteIntegrationResource" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_installation_id': 'inst_12345', 'resource_id': 'res_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_project_env_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_project_env_variable_example_call_tool.js deleted file mode 100644 index 3a710de95..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_project_env_variable_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteProjectEnvVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_variable_identifier": "env_var_123", - "project_identifier_or_name": "project_alpha", - "custom_environment_identifier": "custom_env_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_project_env_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_project_env_variable_example_call_tool.py deleted file mode 100644 index a5f5a014f..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_project_env_variable_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteProjectEnvVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_variable_identifier': 'env_var_123', - 'project_identifier_or_name': 'project_alpha', - 'custom_environment_identifier': 'custom_env_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_project_env_variables_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_project_env_variables_example_call_tool.js deleted file mode 100644 index e63e15882..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_project_env_variables_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteProjectEnvVariables"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id_or_name": "my-project", - "request_body": "{\"variables\":[\"VAR1\",\"VAR2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_project_env_variables_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_project_env_variables_example_call_tool.py deleted file mode 100644 index 90da38263..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_project_env_variables_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteProjectEnvVariables" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id_or_name': 'my-project', - 'request_body': '{"variables":["VAR1","VAR2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_project_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_project_example_call_tool.js deleted file mode 100644 index 582ac07db..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier_or_name": "my-awesome-project", - "team_identifier": "team_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_project_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_project_example_call_tool.py deleted file mode 100644 index 1066b0ed4..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier_or_name': 'my-awesome-project', 'team_identifier': 'team_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_team_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_team_example_call_tool.js deleted file mode 100644 index e65446cd1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_team_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_identifier": "team_12345", - "new_default_team_id": "team_67890", - "request_body": "{\"reason\":\"No longer needed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_team_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_team_example_call_tool.py deleted file mode 100644 index efae6a160..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_team_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_identifier': 'team_12345', - 'new_default_team_id': 'team_67890', - 'request_body': '{"reason":"No longer needed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_team_invite_code_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_team_invite_code_example_call_tool.js deleted file mode 100644 index 6f25ecb01..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_team_invite_code_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteTeamInviteCode"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_identifier": "team_12345", - "team_invite_code_id": "invite_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_team_invite_code_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_team_invite_code_example_call_tool.py deleted file mode 100644 index 31776a4e1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_team_invite_code_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteTeamInviteCode" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_identifier': 'team_12345', 'team_invite_code_id': 'invite_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_vercel_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_vercel_domain_example_call_tool.js deleted file mode 100644 index 42bec15dc..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_vercel_domain_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteVercelDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com", - "team_identifier": "team_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_vercel_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_vercel_domain_example_call_tool.py deleted file mode 100644 index 1ecae08d3..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_vercel_domain_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteVercelDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com', 'team_identifier': 'team_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_vercel_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/delete_vercel_webhook_example_call_tool.js deleted file mode 100644 index 340048a92..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_vercel_webhook_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DeleteVercelWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/delete_vercel_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/delete_vercel_webhook_example_call_tool.py deleted file mode 100644 index f7ca03cd9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/delete_vercel_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DeleteVercelWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/disable_rolling_releases_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/disable_rolling_releases_example_call_tool.js deleted file mode 100644 index 49d1b13f9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/disable_rolling_releases_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DisableRollingReleases"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_or_name": "my-vercel-project", - "team_identifier": "team123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/disable_rolling_releases_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/disable_rolling_releases_example_call_tool.py deleted file mode 100644 index 27df24f79..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/disable_rolling_releases_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DisableRollingReleases" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_or_name': 'my-vercel-project', 'team_identifier': 'team123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/domain_availability_status_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/domain_availability_status_example_call_tool.js deleted file mode 100644 index af4793b43..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/domain_availability_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DomainAvailabilityStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name_to_check_availability": "example.com", - "team_identifier": "team123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/domain_availability_status_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/domain_availability_status_example_call_tool.py deleted file mode 100644 index e06aa2e4f..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/domain_availability_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DomainAvailabilityStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name_to_check_availability': 'example.com', 'team_identifier': 'team123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/download_cache_artifact_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/download_cache_artifact_example_call_tool.js deleted file mode 100644 index 9d93cb67f..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/download_cache_artifact_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.DownloadCacheArtifact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "artifact_hash": "abc123hash", - "ci_environment": "production", - "interactive_shell_client": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/download_cache_artifact_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/download_cache_artifact_example_call_tool.py deleted file mode 100644 index bdd7313bd..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/download_cache_artifact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.DownloadCacheArtifact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'artifact_hash': 'abc123hash', 'ci_environment': 'production', 'interactive_shell_client': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/edit_project_environment_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/edit_project_environment_variable_example_call_tool.js deleted file mode 100644 index 86910866c..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/edit_project_environment_variable_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.EditProjectEnvironmentVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id_or_name": "my-project", - "environment_variable_id": "env_var_123", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/edit_project_environment_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/edit_project_environment_variable_example_call_tool.py deleted file mode 100644 index 918780809..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/edit_project_environment_variable_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.EditProjectEnvironmentVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id_or_name': 'my-project', - 'environment_variable_id': 'env_var_123', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/exchange_sso_token_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/exchange_sso_token_example_call_tool.js deleted file mode 100644 index bad676981..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/exchange_sso_token_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ExchangeSsoToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "authorization_code": "abc123xyz", - "integration_client_id": "client_456", - "integration_client_secret": "secret789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/exchange_sso_token_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/exchange_sso_token_example_call_tool.py deleted file mode 100644 index 3f378ff60..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/exchange_sso_token_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ExchangeSsoToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'authorization_code': 'abc123xyz', - 'integration_client_id': 'client_456', - 'integration_client_secret': 'secret789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/fetch_account_info_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/fetch_account_info_example_call_tool.js deleted file mode 100644 index 0daf1c912..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/fetch_account_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.FetchAccountInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_configuration_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/fetch_account_info_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/fetch_account_info_example_call_tool.py deleted file mode 100644 index 8a170d650..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/fetch_account_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.FetchAccountInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_configuration_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/fetch_deployment_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/fetch_deployment_logs_example_call_tool.js deleted file mode 100644 index 262492908..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/fetch_deployment_logs_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.FetchDeploymentLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_identifier_or_hostname": "deployment123", - "enable_live_streaming": 1, - "event_order": "forward" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/fetch_deployment_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/fetch_deployment_logs_example_call_tool.py deleted file mode 100644 index 7e5292d2a..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/fetch_deployment_logs_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.FetchDeploymentLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_identifier_or_hostname': 'deployment123', - 'enable_live_streaming': 1, - 'event_order': 'forward' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/fetch_domain_price_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/fetch_domain_price_example_call_tool.js deleted file mode 100644 index f67487928..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/fetch_domain_price_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.FetchDomainPrice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com", - "number_of_years": "2" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/fetch_domain_price_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/fetch_domain_price_example_call_tool.py deleted file mode 100644 index 71f137504..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/fetch_domain_price_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.FetchDomainPrice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com', 'number_of_years': '2' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/fetch_domain_transfer_availability_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/fetch_domain_transfer_availability_example_call_tool.js deleted file mode 100644 index 7a993650e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/fetch_domain_transfer_availability_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.FetchDomainTransferAvailability"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com", - "team_identifier": "team123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/fetch_domain_transfer_availability_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/fetch_domain_transfer_availability_example_call_tool.py deleted file mode 100644 index e6da87517..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/fetch_domain_transfer_availability_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.FetchDomainTransferAvailability" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com', 'team_identifier': 'team123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/fetch_integration_resource_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/fetch_integration_resource_example_call_tool.js deleted file mode 100644 index e9ac16c4e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/fetch_integration_resource_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.FetchIntegrationResource"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_configuration_id": "config_12345", - "third_party_resource_id": "resource_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/fetch_integration_resource_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/fetch_integration_resource_example_call_tool.py deleted file mode 100644 index 8c5dfefe2..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/fetch_integration_resource_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.FetchIntegrationResource" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_configuration_id': 'config_12345', 'third_party_resource_id': 'resource_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/fetch_project_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/fetch_project_domain_example_call_tool.js deleted file mode 100644 index 2cc50a6d0..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/fetch_project_domain_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.FetchProjectDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_domain_name": "example.com", - "project_id_or_name": "project123", - "team_identifier": "team456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/fetch_project_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/fetch_project_domain_example_call_tool.py deleted file mode 100644 index a4685b0d5..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/fetch_project_domain_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.FetchProjectDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_domain_name': 'example.com', - 'project_id_or_name': 'project123', - 'team_identifier': 'team456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/force_complete_rolling_release_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/force_complete_rolling_release_example_call_tool.js deleted file mode 100644 index ec83e58b9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/force_complete_rolling_release_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ForceCompleteRollingRelease"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "my-vercel-project", - "team_identifier": "team123", - "request_body": "{\"finalize\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/force_complete_rolling_release_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/force_complete_rolling_release_example_call_tool.py deleted file mode 100644 index 01bc85083..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/force_complete_rolling_release_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ForceCompleteRollingRelease" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': 'my-vercel-project', - 'team_identifier': 'team123', - 'request_body': '{"finalize":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_access_group_project_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_access_group_project_example_call_tool.js deleted file mode 100644 index c75a10444..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_access_group_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetAccessGroupProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "access_group_id_or_name": "dev-team", - "project_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_access_group_project_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_access_group_project_example_call_tool.py deleted file mode 100644 index 4aa0f61fb..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_access_group_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetAccessGroupProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'access_group_id_or_name': 'dev-team', 'project_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_active_attack_status_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_active_attack_status_example_call_tool.js deleted file mode 100644 index 6ff12830c..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_active_attack_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetActiveAttackStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "active_days_since": 3 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_active_attack_status_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_active_attack_status_example_call_tool.py deleted file mode 100644 index 5b0b271a1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_active_attack_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetActiveAttackStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'active_days_since': 3 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_authenticated_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_authenticated_user_info_example_call_tool.js deleted file mode 100644 index 6505ee628..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_authenticated_user_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetAuthenticatedUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_authenticated_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_authenticated_user_info_example_call_tool.py deleted file mode 100644 index 2e603f6ab..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_authenticated_user_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetAuthenticatedUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_custom_project_environments_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_custom_project_environments_example_call_tool.js deleted file mode 100644 index 59d84a68b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_custom_project_environments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetCustomProjectEnvironments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_or_name": "my-awesome-project", - "git_branch_name": "feature-branch" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_custom_project_environments_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_custom_project_environments_example_call_tool.py deleted file mode 100644 index 4fd297e06..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_custom_project_environments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetCustomProjectEnvironments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_or_name': 'my-awesome-project', 'git_branch_name': 'feature-branch' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_aliases_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_deployment_aliases_example_call_tool.js deleted file mode 100644 index d764b93ff..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_aliases_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetDeploymentAliases"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_id": "abc123", - "team_identifier": "team_xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_aliases_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_deployment_aliases_example_call_tool.py deleted file mode 100644 index 02d43d787..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_aliases_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetDeploymentAliases" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_id': 'abc123', 'team_identifier': 'team_xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_check_details_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_deployment_check_details_example_call_tool.js deleted file mode 100644 index a74c1107a..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_check_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetDeploymentCheckDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "check_identifier": "check-123", - "deployment_id": "deploy-456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_check_details_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_deployment_check_details_example_call_tool.py deleted file mode 100644 index acf9795f7..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_check_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetDeploymentCheckDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'check_identifier': 'check-123', 'deployment_id': 'deploy-456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_info_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_deployment_info_example_call_tool.js deleted file mode 100644 index 44ba4185c..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetDeploymentInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_id_or_url": "https://vercel.com/my-deployment", - "include_git_repo_information": "true", - "team_identifier": "team_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_info_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_deployment_info_example_call_tool.py deleted file mode 100644 index 6f949ea50..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_info_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetDeploymentInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_id_or_url': 'https://vercel.com/my-deployment', - 'include_git_repo_information': 'true', - 'team_identifier': 'team_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_runtime_logs_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_deployment_runtime_logs_example_call_tool.js deleted file mode 100644 index 660f59ba1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_runtime_logs_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetDeploymentRuntimeLogs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_id": "dep-12345", - "project_id": "proj-67890", - "team_identifier": "team-abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_runtime_logs_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_deployment_runtime_logs_example_call_tool.py deleted file mode 100644 index 13f795609..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_deployment_runtime_logs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetDeploymentRuntimeLogs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_id': 'dep-12345', 'project_id': 'proj-67890', 'team_identifier': 'team-abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_dns_records_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_dns_records_example_call_tool.js deleted file mode 100644 index 97d9cd65b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_dns_records_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetDnsRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com", - "maximum_records_to_list": "10", - "team_identifier": "team123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_dns_records_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_dns_records_example_call_tool.py deleted file mode 100644 index 060dcf3b2..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_dns_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetDnsRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com', 'maximum_records_to_list': '10', 'team_identifier': 'team123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_domain_auth_code_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_domain_auth_code_example_call_tool.js deleted file mode 100644 index 9b05d175d..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_domain_auth_code_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetDomainAuthCode"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com", - "team_id": "team_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_domain_auth_code_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_domain_auth_code_example_call_tool.py deleted file mode 100644 index 18a399898..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_domain_auth_code_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetDomainAuthCode" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com', 'team_id': 'team_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_domain_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_domain_configuration_example_call_tool.js deleted file mode 100644 index 557d92735..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_domain_configuration_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetDomainConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com", - "include_only_assigned_nameservers": "true", - "project_id_or_name": "my-project" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_domain_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_domain_configuration_example_call_tool.py deleted file mode 100644 index 9f72ef5e4..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_domain_configuration_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetDomainConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com', - 'include_only_assigned_nameservers': 'true', - 'project_id_or_name': 'my-project' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_domain_contact_info_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_domain_contact_info_schema_example_call_tool.js deleted file mode 100644 index 589b76e91..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_domain_contact_info_schema_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetDomainContactInfoSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com", - "team_id": "team_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_domain_contact_info_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_domain_contact_info_schema_example_call_tool.py deleted file mode 100644 index 1bdb0afe0..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_domain_contact_info_schema_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetDomainContactInfoSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com', 'team_id': 'team_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_domain_info_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_domain_info_example_call_tool.js deleted file mode 100644 index 949883d61..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_domain_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetDomainInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com", - "team_identifier": "team123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_domain_info_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_domain_info_example_call_tool.py deleted file mode 100644 index e9a0f8de5..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_domain_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetDomainInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com', 'team_identifier': 'team123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_domain_order_info_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_domain_order_info_example_call_tool.js deleted file mode 100644 index 8c56b1eb5..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_domain_order_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetDomainOrderInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "order_id": "12345", - "team_id": "team_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_domain_order_info_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_domain_order_info_example_call_tool.py deleted file mode 100644 index 189739ffd..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_domain_order_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetDomainOrderInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'order_id': '12345', 'team_id': 'team_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_domain_price_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_domain_price_example_call_tool.js deleted file mode 100644 index 7bc51a1cc..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_domain_price_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetDomainPrice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com", - "domain_status_for_pricing": "new" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_domain_price_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_domain_price_example_call_tool.py deleted file mode 100644 index cca866a89..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_domain_price_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetDomainPrice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com', 'domain_status_for_pricing': 'new' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_backups_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_backups_example_call_tool.js deleted file mode 100644 index 157ccbc10..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_backups_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetEdgeConfigBackups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "edge_config_id": "abc123", - "backup_limit": 5, - "include_metadata": "true" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_backups_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_backups_example_call_tool.py deleted file mode 100644 index afaf54b50..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_backups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetEdgeConfigBackups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'edge_config_id': 'abc123', 'backup_limit': 5, 'include_metadata': 'true' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_example_call_tool.js deleted file mode 100644 index 68aa28c80..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetEdgeConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "edge_config_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_example_call_tool.py deleted file mode 100644 index 60feb3b89..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetEdgeConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'edge_config_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_item_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_item_example_call_tool.js deleted file mode 100644 index 095ca53fd..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetEdgeConfigItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "edge_config_id": "config123", - "edge_config_item_key": "item456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_item_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_item_example_call_tool.py deleted file mode 100644 index 0937ff919..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetEdgeConfigItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'edge_config_id': 'config123', 'edge_config_item_key': 'item456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_items_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_items_example_call_tool.js deleted file mode 100644 index 50b9da294..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_items_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetEdgeConfigItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "edge_config_id": "abc123", - "team_slug": "my-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_items_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_items_example_call_tool.py deleted file mode 100644 index 10ec94000..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_items_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetEdgeConfigItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'edge_config_id': 'abc123', 'team_slug': 'my-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_schema_example_call_tool.js deleted file mode 100644 index eaf3defcf..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_schema_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetEdgeConfigSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "edge_config_id": "config123", - "team_identifier": "team456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_schema_example_call_tool.py deleted file mode 100644 index 34b6d6d44..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_schema_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetEdgeConfigSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'edge_config_id': 'config123', 'team_identifier': 'team456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_token_info_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_token_info_example_call_tool.js deleted file mode 100644 index e8c1545c6..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_token_info_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetEdgeConfigTokenInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "edge_config_id": "config123", - "edge_config_token": "token456", - "team_identifier": "team789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_token_info_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_token_info_example_call_tool.py deleted file mode 100644 index d03050e55..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_token_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetEdgeConfigTokenInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'edge_config_id': 'config123', 'edge_config_token': 'token456', 'team_identifier': 'team789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_tokens_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_tokens_example_call_tool.js deleted file mode 100644 index 4932d99f5..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_tokens_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetEdgeConfigTokens"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "edge_config_id": "12345", - "team_identifier": "team_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_tokens_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_tokens_example_call_tool.py deleted file mode 100644 index deae2a432..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_config_tokens_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetEdgeConfigTokens" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'edge_config_id': '12345', 'team_identifier': 'team_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_configs_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_edge_configs_example_call_tool.js deleted file mode 100644 index 9f7c19f34..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_configs_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetEdgeConfigs"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_identifier": "team_123", - "team_slug": "my-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_edge_configs_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_edge_configs_example_call_tool.py deleted file mode 100644 index 9e22cd27b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_edge_configs_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetEdgeConfigs" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_identifier': 'team_123', 'team_slug': 'my-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_firewall_config_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_firewall_config_example_call_tool.js deleted file mode 100644 index c661795c5..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_firewall_config_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetFirewallConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "firewall_configuration_version": "v1.0", - "project_id": "proj-12345", - "team_identifier": "team-abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_firewall_config_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_firewall_config_example_call_tool.py deleted file mode 100644 index 44c139f51..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_firewall_config_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetFirewallConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'firewall_configuration_version': 'v1.0', - 'project_id': 'proj-12345', - 'team_identifier': 'team-abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_integration_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_integration_configuration_example_call_tool.js deleted file mode 100644 index f8fd827ad..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_integration_configuration_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetIntegrationConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "configuration_id": "config123", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_integration_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_integration_configuration_example_call_tool.py deleted file mode 100644 index fdcc6c258..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_integration_configuration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetIntegrationConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'configuration_id': 'config123', 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_integration_resources_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_integration_resources_example_call_tool.js deleted file mode 100644 index c24e49727..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_integration_resources_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetIntegrationResources"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "installation_id": "inst-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_integration_resources_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_integration_resources_example_call_tool.py deleted file mode 100644 index 6a8e5bf3e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_integration_resources_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetIntegrationResources" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'installation_id': 'inst-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_invoice_details_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_invoice_details_example_call_tool.js deleted file mode 100644 index 266977fa3..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_invoice_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetInvoiceDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_configuration_id": "config_12345", - "invoice_id": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_invoice_details_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_invoice_details_example_call_tool.py deleted file mode 100644 index 5e56cf956..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_invoice_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetInvoiceDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_configuration_id': 'config_12345', 'invoice_id': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_last_promote_aliases_status_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_last_promote_aliases_status_example_call_tool.js deleted file mode 100644 index 433c09f46..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_last_promote_aliases_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetLastPromoteAliasesStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "aliases_created_before_timestamp": 1690000000, - "filter_failed_aliases": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_last_promote_aliases_status_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_last_promote_aliases_status_example_call_tool.py deleted file mode 100644 index 7f3ce91a2..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_last_promote_aliases_status_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetLastPromoteAliasesStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', - 'aliases_created_before_timestamp': 1690000000, - 'filter_failed_aliases': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_member_role_info_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_member_role_info_example_call_tool.js deleted file mode 100644 index 53510ef23..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_member_role_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetMemberRoleInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_configuration_id": "abc123", - "member_id": "user456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_member_role_info_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_member_role_info_example_call_tool.py deleted file mode 100644 index 3d59fc553..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_member_role_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetMemberRoleInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_configuration_id': 'abc123', 'member_id': 'user456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_project_environment_variables_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_project_environment_variables_example_call_tool.js deleted file mode 100644 index cf19461c8..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_project_environment_variables_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetProjectEnvironmentVariables"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_or_name": "my_project", - "caller_source": "script", - "decrypt_values": "true" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_project_environment_variables_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_project_environment_variables_example_call_tool.py deleted file mode 100644 index 32f03e236..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_project_environment_variables_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetProjectEnvironmentVariables" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_or_name': 'my_project', 'caller_source': 'script', 'decrypt_values': 'true' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_project_info_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_project_info_example_call_tool.js deleted file mode 100644 index 22b791346..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_project_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetProjectInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier_or_name": "my-awesome-project", - "team_identifier": "team-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_project_info_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_project_info_example_call_tool.py deleted file mode 100644 index b82463f6e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_project_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetProjectInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier_or_name': 'my-awesome-project', 'team_identifier': 'team-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_registered_domains_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_registered_domains_example_call_tool.js deleted file mode 100644 index 59b8c5161..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_registered_domains_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetRegisteredDomains"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "maximum_domains_to_list": 10, - "team_id": "team_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_registered_domains_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_registered_domains_example_call_tool.py deleted file mode 100644 index 7f677046a..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_registered_domains_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetRegisteredDomains" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'maximum_domains_to_list': 10, 'team_id': 'team_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_billing_status_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_billing_status_example_call_tool.js deleted file mode 100644 index 820d6608a..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_billing_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetRollingReleaseBillingStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_or_name": "my-project", - "team_identifier": "team123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_billing_status_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_billing_status_example_call_tool.py deleted file mode 100644 index fe44c0336..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_billing_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetRollingReleaseBillingStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_or_name': 'my-project', 'team_identifier': 'team123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_config_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_config_example_call_tool.js deleted file mode 100644 index 928854ec8..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_config_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetRollingReleaseConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_identifier": "my-project", - "team_identifier": "team123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_config_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_config_example_call_tool.py deleted file mode 100644 index 568d03a4a..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetRollingReleaseConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_identifier': 'my-project', 'team_identifier': 'team123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_example_call_tool.js deleted file mode 100644 index a311d6ea8..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetRollingRelease"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_or_name": "my_project", - "filter_by_release_state": "ACTIVE" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_example_call_tool.py deleted file mode 100644 index a6af27c8f..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_rolling_release_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetRollingRelease" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_or_name': 'my_project', 'filter_by_release_state': 'ACTIVE' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_supported_tlds_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_supported_tlds_example_call_tool.js deleted file mode 100644 index 4df444a5f..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_supported_tlds_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetSupportedTlds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_supported_tlds_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_supported_tlds_example_call_tool.py deleted file mode 100644 index 07351f9a0..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_supported_tlds_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetSupportedTlds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_team_info_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_team_info_example_call_tool.js deleted file mode 100644 index cdd24a6ac..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_team_info_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetTeamInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_identifier": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_team_info_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_team_info_example_call_tool.py deleted file mode 100644 index d1de14fd5..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_team_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetTeamInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_identifier': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_team_members_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_team_members_example_call_tool.js deleted file mode 100644 index 4578557f7..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_team_members_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetTeamMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "added_since_timestamp": 1622505600000, - "filter_by_team_role": "MEMBER", - "member_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_team_members_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_team_members_example_call_tool.py deleted file mode 100644 index d562e3ac1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_team_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetTeamMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'added_since_timestamp': 1622505600000, 'filter_by_team_role': 'MEMBER', 'member_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_tld_price_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_tld_price_example_call_tool.js deleted file mode 100644 index b5b6746e2..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_tld_price_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetTldPrice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "top_level_domain": "com", - "registration_years": "2" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_tld_price_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_tld_price_example_call_tool.py deleted file mode 100644 index 608490cbf..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_tld_price_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetTldPrice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'top_level_domain': 'com', 'registration_years': '2' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_user_teams_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_user_teams_example_call_tool.js deleted file mode 100644 index 078f3fd12..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_user_teams_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetUserTeams"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "max_number_of_teams": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_user_teams_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_user_teams_example_call_tool.py deleted file mode 100644 index 8ac8769d7..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_user_teams_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetUserTeams" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'max_number_of_teams': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_vercel_deployment_files_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_vercel_deployment_files_example_call_tool.js deleted file mode 100644 index 8a28f8dc9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_vercel_deployment_files_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetVercelDeploymentFiles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_identifier": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_vercel_deployment_files_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_vercel_deployment_files_example_call_tool.py deleted file mode 100644 index b840d922b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_vercel_deployment_files_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetVercelDeploymentFiles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_identifier': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_webhook_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/get_webhook_example_call_tool.js deleted file mode 100644 index 32b8b1a0c..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_webhook_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.GetWebhook"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "webhook_id": "abc123", - "team_identifier": "team_xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/get_webhook_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/get_webhook_example_call_tool.py deleted file mode 100644 index 432d9c55b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/get_webhook_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.GetWebhook" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'webhook_id': 'abc123', 'team_identifier': 'team_xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/import_resource_to_vercel_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/import_resource_to_vercel_example_call_tool.js deleted file mode 100644 index 045b38021..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/import_resource_to_vercel_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ImportResourceToVercel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_configuration_id": "12345", - "resource_identifier": "abcde", - "request_body": "{\"name\":\"example-resource\",\"type\":\"static\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/import_resource_to_vercel_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/import_resource_to_vercel_example_call_tool.py deleted file mode 100644 index 222c71021..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/import_resource_to_vercel_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ImportResourceToVercel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'integration_configuration_id': '12345', - 'resource_identifier': 'abcde', - 'request_body': '{"name":"example-resource","type":"static"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/initiate_project_transfer_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/initiate_project_transfer_example_call_tool.js deleted file mode 100644 index 21c692e73..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/initiate_project_transfer_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.InitiateProjectTransfer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_or_name": "my-awesome-project", - "team_identifier": "team-123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/initiate_project_transfer_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/initiate_project_transfer_example_call_tool.py deleted file mode 100644 index 204c59a6c..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/initiate_project_transfer_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.InitiateProjectTransfer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_or_name': 'my-awesome-project', 'team_identifier': 'team-123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/initiate_user_deletion_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/initiate_user_deletion_example_call_tool.js deleted file mode 100644 index d6c6ebadd..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/initiate_user_deletion_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.InitiateUserDeletion"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"user_id\":\"12345\",\"confirmation_email\":\"user@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/initiate_user_deletion_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/initiate_user_deletion_example_call_tool.py deleted file mode 100644 index efb853ccf..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/initiate_user_deletion_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.InitiateUserDeletion" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"user_id":"12345","confirmation_email":"user@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/invalidate_auth_token_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/invalidate_auth_token_example_call_tool.js deleted file mode 100644 index 2a9198f52..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/invalidate_auth_token_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.InvalidateAuthToken"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "token_id": "current" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/invalidate_auth_token_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/invalidate_auth_token_example_call_tool.py deleted file mode 100644 index 7d81fd0c7..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/invalidate_auth_token_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.InvalidateAuthToken" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'token_id': 'current' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/invalidate_cache_by_tags_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/invalidate_cache_by_tags_example_call_tool.js deleted file mode 100644 index 69c6210ea..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/invalidate_cache_by_tags_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.InvalidateCacheByTags"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id_or_name": "project123", - "team_id": "team456", - "request_body": "{\"tags\":[\"tag1\",\"tag2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/invalidate_cache_by_tags_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/invalidate_cache_by_tags_example_call_tool.py deleted file mode 100644 index 5597b6a6e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/invalidate_cache_by_tags_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.InvalidateCacheByTags" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id_or_name': 'project123', - 'team_id': 'team456', - 'request_body': '{"tags":["tag1","tag2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/invite_user_to_team_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/invite_user_to_team_example_call_tool.js deleted file mode 100644 index 2c8115060..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/invite_user_to_team_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.InviteUserToTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_id": "team_12345", - "request_body": "{\"email\":\"user@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/invite_user_to_team_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/invite_user_to_team_example_call_tool.py deleted file mode 100644 index 010cf34ee..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/invite_user_to_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.InviteUserToTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'team_id': 'team_12345', 'request_body': '{"email":"user@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/issue_vercel_certificate_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/issue_vercel_certificate_example_call_tool.js deleted file mode 100644 index 5ac312400..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/issue_vercel_certificate_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.IssueVercelCertificate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "common_names_for_certificate": [ - "example.com", - "www.example.com" - ], - "team_id": "12345", - "team_slug": "my-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/issue_vercel_certificate_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/issue_vercel_certificate_example_call_tool.py deleted file mode 100644 index 353edff32..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/issue_vercel_certificate_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.IssueVercelCertificate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'common_names_for_certificate': ['example.com', 'www.example.com'], - 'team_id': '12345', - 'team_slug': 'my-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/join_vercel_team_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/join_vercel_team_example_call_tool.js deleted file mode 100644 index 1344423d1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/join_vercel_team_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.JoinVercelTeam"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/join_vercel_team_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/join_vercel_team_example_call_tool.py deleted file mode 100644 index db0eb36c0..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/join_vercel_team_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.JoinVercelTeam" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_access_group_members_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/list_access_group_members_example_call_tool.js deleted file mode 100644 index 4d953a754..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_access_group_members_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ListAccessGroupMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "access_group_id_or_name": "dev-team", - "member_limit": 10, - "member_search_query": "john.doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_access_group_members_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/list_access_group_members_example_call_tool.py deleted file mode 100644 index a2668b657..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_access_group_members_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ListAccessGroupMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'access_group_id_or_name': 'dev-team', 'member_limit': 10, 'member_search_query': 'john.doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_access_group_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/list_access_group_projects_example_call_tool.js deleted file mode 100644 index afc576392..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_access_group_projects_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ListAccessGroupProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "access_group_identifier": "group123", - "max_project_count": 5 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_access_group_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/list_access_group_projects_example_call_tool.py deleted file mode 100644 index 7f262aaed..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_access_group_projects_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ListAccessGroupProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'access_group_identifier': 'group123', 'max_project_count': 5 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_access_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/list_access_groups_example_call_tool.js deleted file mode 100644 index 78ab78b35..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_access_groups_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ListAccessGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "access_groups_limit": 10, - "search_access_groups_by_name": "dev", - "team_slug": "my-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_access_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/list_access_groups_example_call_tool.py deleted file mode 100644 index aa725de7f..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_access_groups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ListAccessGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'access_groups_limit': 10, 'search_access_groups_by_name': 'dev', 'team_slug': 'my-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_aliases_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/list_aliases_example_call_tool.js deleted file mode 100644 index efaac6a06..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_aliases_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ListAliases"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_domain": "example.com", - "maximum_aliases_to_list": 5, - "team_identifier": "team123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_aliases_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/list_aliases_example_call_tool.py deleted file mode 100644 index 94c03960c..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_aliases_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ListAliases" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_domain': 'example.com', 'maximum_aliases_to_list': 5, 'team_identifier': 'team123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_deployment_checks_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/list_deployment_checks_example_call_tool.js deleted file mode 100644 index b1f52f032..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_deployment_checks_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ListDeploymentChecks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_id": "12345", - "team_identifier": "team-abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_deployment_checks_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/list_deployment_checks_example_call_tool.py deleted file mode 100644 index 417bdd54e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_deployment_checks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ListDeploymentChecks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_id': '12345', 'team_identifier': 'team-abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_integration_configuration_products_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/list_integration_configuration_products_example_call_tool.js deleted file mode 100644 index 7c34a9646..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_integration_configuration_products_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ListIntegrationConfigurationProducts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_configuration_id": "config-12345", - "team_identifier": "team-abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_integration_configuration_products_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/list_integration_configuration_products_example_call_tool.py deleted file mode 100644 index d0a2454da..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_integration_configuration_products_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ListIntegrationConfigurationProducts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_configuration_id': 'config-12345', 'team_identifier': 'team-abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_project_members_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/list_project_members_example_call_tool.js deleted file mode 100644 index c2efd941e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_project_members_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ListProjectMembers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_or_name": "my-awesome-project", - "added_since_timestamp": 1633036800000, - "member_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_project_members_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/list_project_members_example_call_tool.py deleted file mode 100644 index 8bbb6f3f0..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_project_members_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ListProjectMembers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_or_name': 'my-awesome-project', - 'added_since_timestamp': 1633036800000, - 'member_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_user_events_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/list_user_events_example_call_tool.js deleted file mode 100644 index 5036e838b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_user_events_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ListUserEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deprecated_user_id": "user123", - "end_time_filter": "2023-10-01T12:00:00Z", - "event_types_filter": "login,deploy", - "filter_by_principal_id": "principal456", - "include_event_payload": "true", - "maximum_items_to_return": 50, - "team_identifier": "team789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_user_events_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/list_user_events_example_call_tool.py deleted file mode 100644 index 7b25b17f2..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_user_events_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ListUserEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deprecated_user_id': 'user123', - 'end_time_filter': '2023-10-01T12:00:00Z', - 'event_types_filter': 'login,deploy', - 'filter_by_principal_id': 'principal456', - 'include_event_payload': 'true', - 'maximum_items_to_return': 50, - 'team_identifier': 'team789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_vercel_deployments_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/list_vercel_deployments_example_call_tool.js deleted file mode 100644 index 24271ae52..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_vercel_deployments_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ListVercelDeployments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branch_name_filter": "main", - "created_after_timestamp": 1690000000000, - "deployment_state_filter": "READY", - "filter_by_project_id": "project-123", - "maximum_deployments_to_list": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_vercel_deployments_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/list_vercel_deployments_example_call_tool.py deleted file mode 100644 index ca399e87a..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_vercel_deployments_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ListVercelDeployments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branch_name_filter': 'main', - 'created_after_timestamp': 1690000000000, - 'deployment_state_filter': 'READY', - 'filter_by_project_id': 'project-123', - 'maximum_deployments_to_list': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_vercel_webhooks_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/list_vercel_webhooks_example_call_tool.js deleted file mode 100644 index cf92da5b7..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_vercel_webhooks_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ListVercelWebhooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "12345", - "team_slug": "my-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/list_vercel_webhooks_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/list_vercel_webhooks_example_call_tool.py deleted file mode 100644 index 6148fc590..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/list_vercel_webhooks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ListVercelWebhooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': '12345', 'team_slug': 'my-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/move_project_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/move_project_domain_example_call_tool.js deleted file mode 100644 index 1c183905c..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/move_project_domain_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.MoveProjectDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id_or_name": "project123", - "project_domain_name": "example.com", - "team_identifier": "team456", - "request_body": "{\"redirects\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/move_project_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/move_project_domain_example_call_tool.py deleted file mode 100644 index 6ffa2a567..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/move_project_domain_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.MoveProjectDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id_or_name': 'project123', - 'project_domain_name': 'example.com', - 'team_identifier': 'team456', - 'request_body': '{"redirects":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/notify_vercel_of_updates_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/notify_vercel_of_updates_example_call_tool.js deleted file mode 100644 index 0b6e5b523..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/notify_vercel_of_updates_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.NotifyVercelOfUpdates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_configuration_id": "12345", - "request_body": "{\"event\":\"resource.updated\",\"data\":{\"resourceId\":\"abcde\",\"changes\":{\"name\":\"new-database-name\"}}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/notify_vercel_of_updates_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/notify_vercel_of_updates_example_call_tool.py deleted file mode 100644 index 8887f8243..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/notify_vercel_of_updates_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.NotifyVercelOfUpdates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'integration_configuration_id': '12345', - 'request_body': '{"event":"resource.updated","data":{"resourceId":"abcde","changes":{"name":"new-database-name"}}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/pause_project_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/pause_project_example_call_tool.js deleted file mode 100644 index 326fc647a..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/pause_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.PauseProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "proj_12345", - "team_identifier": "team_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/pause_project_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/pause_project_example_call_tool.py deleted file mode 100644 index c220313d4..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/pause_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.PauseProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 'proj_12345', 'team_identifier': 'team_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/promote_deployment_to_production_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/promote_deployment_to_production_example_call_tool.js deleted file mode 100644 index 9ec864a3a..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/promote_deployment_to_production_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.PromoteDeploymentToProduction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_identifier": "abc123", - "project_id": "proj456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/promote_deployment_to_production_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/promote_deployment_to_production_example_call_tool.py deleted file mode 100644 index 06d070012..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/promote_deployment_to_production_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.PromoteDeploymentToProduction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_identifier': 'abc123', 'project_id': 'proj456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/purchase_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/purchase_domain_example_call_tool.js deleted file mode 100644 index 12237be68..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/purchase_domain_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.PurchaseDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_identifier": "12345", - "request_body": "{\"domain\":\"example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/purchase_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/purchase_domain_example_call_tool.py deleted file mode 100644 index fe36e338d..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/purchase_domain_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.PurchaseDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'team_identifier': '12345', 'request_body': '{"domain":"example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/purchase_domain_vercel_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/purchase_domain_vercel_example_call_tool.js deleted file mode 100644 index a8bb2d85a..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/purchase_domain_vercel_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.PurchaseDomainVercel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "domain_name": "example.com", - "team_id": "team_123", - "request_body": "{\"data\":\"sample data\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/purchase_domain_vercel_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/purchase_domain_vercel_example_call_tool.py deleted file mode 100644 index 634c4f9c4..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/purchase_domain_vercel_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.PurchaseDomainVercel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'domain_name': 'example.com', - 'team_id': 'team_123', - 'request_body': '{"data":"sample data"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/purchase_multiple_domains_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/purchase_multiple_domains_example_call_tool.js deleted file mode 100644 index c81195719..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/purchase_multiple_domains_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.PurchaseMultipleDomains"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_id": "team_123", - "request_body": "{\"domains\":[\"example1.com\",\"example2.com\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/purchase_multiple_domains_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/purchase_multiple_domains_example_call_tool.py deleted file mode 100644 index 556987ff1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/purchase_multiple_domains_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.PurchaseMultipleDomains" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_id': 'team_123', - 'request_body': '{"domains":["example1.com","example2.com"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/push_edge_config_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/push_edge_config_example_call_tool.js deleted file mode 100644 index 9fb8ac872..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/push_edge_config_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.PushEdgeConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_configuration_id": "config123", - "resource_identifier": "resource456", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/push_edge_config_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/push_edge_config_example_call_tool.py deleted file mode 100644 index f157540da..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/push_edge_config_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.PushEdgeConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'integration_configuration_id': 'config123', - 'resource_identifier': 'resource456', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/query_artifacts_info_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/query_artifacts_info_example_call_tool.js deleted file mode 100644 index 5a4f45bc6..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/query_artifacts_info_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.QueryArtifactsInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "artifact_hashes": [ - "hash1", - "hash2", - "hash3" - ], - "team_identifier": "team_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/query_artifacts_info_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/query_artifacts_info_example_call_tool.py deleted file mode 100644 index 66a5ffe30..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/query_artifacts_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.QueryArtifactsInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'artifact_hashes': ['hash1', 'hash2', 'hash3'], 'team_identifier': 'team_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/read_access_group_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/read_access_group_example_call_tool.js deleted file mode 100644 index 650590d64..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/read_access_group_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.ReadAccessGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "access_group_id_or_name": "group123", - "team_identifier": "team456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/read_access_group_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/read_access_group_example_call_tool.py deleted file mode 100644 index 454af0ea4..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/read_access_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.ReadAccessGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'access_group_id_or_name': 'group123', 'team_identifier': 'team456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/record_cache_events_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/record_cache_events_example_call_tool.js deleted file mode 100644 index 08aac49ae..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/record_cache_events_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RecordCacheEvents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_identifier": "team123", - "request_body": "{\"eventType\":\"HIT\",\"source\":\"LOCAL\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/record_cache_events_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/record_cache_events_example_call_tool.py deleted file mode 100644 index 84b6d17a5..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/record_cache_events_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RecordCacheEvents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_identifier': 'team123', - 'request_body': '{"eventType":"HIT","source":"LOCAL"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_bypass_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/remove_bypass_rule_example_call_tool.js deleted file mode 100644 index d399ef092..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_bypass_rule_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RemoveBypassRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "team_identifier": "team_abc", - "request_body": "{\"rule_id\":\"bypass_1\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_bypass_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/remove_bypass_rule_example_call_tool.py deleted file mode 100644 index b6e8b633b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_bypass_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RemoveBypassRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'team_identifier': 'team_abc', - 'request_body': '{"rule_id":"bypass_1"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_certificate_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/remove_certificate_example_call_tool.js deleted file mode 100644 index 08987fea3..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_certificate_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RemoveCertificate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "certificate_id": "cert_12345", - "team_slug": "my-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_certificate_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/remove_certificate_example_call_tool.py deleted file mode 100644 index e5a56c506..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_certificate_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RemoveCertificate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'certificate_id': 'cert_12345', 'team_slug': 'my-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_custom_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/remove_custom_environment_example_call_tool.js deleted file mode 100644 index 9dc7f9640..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_custom_environment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RemoveCustomEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_environment_identifier": "staging-env", - "project_identifier_or_name": "my-vercel-project", - "delete_unassigned_environment_variables": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_custom_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/remove_custom_environment_example_call_tool.py deleted file mode 100644 index 55312cf59..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_custom_environment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RemoveCustomEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_environment_identifier': 'staging-env', - 'project_identifier_or_name': 'my-vercel-project', - 'delete_unassigned_environment_variables': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_dns_record_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/remove_dns_record_example_call_tool.js deleted file mode 100644 index d9434faf9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_dns_record_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RemoveDnsRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "dns_record_id": "abc123", - "domain_name": "example.com", - "team_identifier": "team_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_dns_record_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/remove_dns_record_example_call_tool.py deleted file mode 100644 index 6e521f036..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_dns_record_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RemoveDnsRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'dns_record_id': 'abc123', 'domain_name': 'example.com', 'team_identifier': 'team_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_project_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/remove_project_domain_example_call_tool.js deleted file mode 100644 index 613fbbdef..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_project_domain_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RemoveProjectDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_domain_name": "example.com", - "project_id_or_name": "my-project-123", - "remove_redirects": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_project_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/remove_project_domain_example_call_tool.py deleted file mode 100644 index 7e19da828..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_project_domain_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RemoveProjectDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_domain_name': 'example.com', - 'project_id_or_name': 'my-project-123', - 'remove_redirects': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_project_member_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/remove_project_member_example_call_tool.js deleted file mode 100644 index 8d61813bc..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_project_member_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RemoveProjectMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_or_name": "project-123", - "user_id": "user-456", - "team_identifier": "team-789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_project_member_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/remove_project_member_example_call_tool.py deleted file mode 100644 index f96f39e75..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_project_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RemoveProjectMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_or_name': 'project-123', 'user_id': 'user-456', 'team_identifier': 'team-789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_team_member_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/remove_team_member_example_call_tool.js deleted file mode 100644 index c1d6d7a03..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_team_member_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RemoveTeamMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_id": "team_123", - "user_id": "user_456", - "new_default_team_id": "team_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_team_member_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/remove_team_member_example_call_tool.py deleted file mode 100644 index 740762d0e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_team_member_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RemoveTeamMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_id': 'team_123', 'user_id': 'user_456', 'new_default_team_id': 'team_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_vercel_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/remove_vercel_configuration_example_call_tool.js deleted file mode 100644 index 1dfd6475e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_vercel_configuration_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RemoveVercelConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "configuration_id": "config_12345", - "team_identifier": "team_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/remove_vercel_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/remove_vercel_configuration_example_call_tool.py deleted file mode 100644 index 1014d1f75..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/remove_vercel_configuration_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RemoveVercelConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'configuration_id': 'config_12345', 'team_identifier': 'team_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/renew_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/renew_domain_example_call_tool.js deleted file mode 100644 index b679bde92..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/renew_domain_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RenewDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "domain_name": "example.com", - "team_identifier": "team123", - "request_body": "{\"renewal_period\":\"1 year\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/renew_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/renew_domain_example_call_tool.py deleted file mode 100644 index fc84da3c9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/renew_domain_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RenewDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'domain_name': 'example.com', - 'team_identifier': 'team123', - 'request_body': '{"renewal_period":"1 year"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/request_team_access_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/request_team_access_example_call_tool.js deleted file mode 100644 index a9d188b63..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/request_team_access_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RequestTeamAccess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_id": "team_12345", - "request_body": "{\"reason\":\"I want to contribute to the project.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/request_team_access_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/request_team_access_example_call_tool.py deleted file mode 100644 index 6ed5d040b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/request_team_access_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RequestTeamAccess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_id': 'team_12345', - 'request_body': '{"reason":"I want to contribute to the project."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/request_vercel_invoice_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/request_vercel_invoice_refund_example_call_tool.js deleted file mode 100644 index 0eeb3b4b3..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/request_vercel_invoice_refund_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RequestVercelInvoiceRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "vercel_integration_configuration_id": "config_12345", - "invoice_id": "inv_67890", - "request_body": "{\"reason\":\"Service not as expected\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/request_vercel_invoice_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/request_vercel_invoice_refund_example_call_tool.py deleted file mode 100644 index 4a216c6c0..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/request_vercel_invoice_refund_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RequestVercelInvoiceRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'vercel_integration_configuration_id': 'config_12345', - 'invoice_id': 'inv_67890', - 'request_body': '{"reason":"Service not as expected"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/rerequest_check_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/rerequest_check_example_call_tool.js deleted file mode 100644 index c430c6004..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/rerequest_check_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RerequestCheck"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "check_to_rerun_id": "check_123", - "deployment_id": "deploy_456", - "mark_check_as_running": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/rerequest_check_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/rerequest_check_example_call_tool.py deleted file mode 100644 index 59335147b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/rerequest_check_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RerequestCheck" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'check_to_rerun_id': 'check_123', 'deployment_id': 'deploy_456', 'mark_check_as_running': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_auth_token_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/retrieve_auth_token_metadata_example_call_tool.js deleted file mode 100644 index 06ae81d73..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_auth_token_metadata_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RetrieveAuthTokenMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "authentication_token_identifier": "current" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_auth_token_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/retrieve_auth_token_metadata_example_call_tool.py deleted file mode 100644 index f3834ab85..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_auth_token_metadata_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RetrieveAuthTokenMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'authentication_token_identifier': 'current' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_auth_tokens_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/retrieve_auth_tokens_example_call_tool.js deleted file mode 100644 index 3924925bc..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_auth_tokens_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RetrieveAuthTokens"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_auth_tokens_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/retrieve_auth_tokens_example_call_tool.py deleted file mode 100644 index f4fdea7dd..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_auth_tokens_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RetrieveAuthTokens" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_billing_plans_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/retrieve_billing_plans_example_call_tool.js deleted file mode 100644 index 308232def..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_billing_plans_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RetrieveBillingPlans"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "integration_identifier_or_slug": "payment_gateway", - "product_id_or_slug": "premium_subscription", - "additional_metadata": "Requesting latest plans", - "team_identifier": "team_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_billing_plans_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/retrieve_billing_plans_example_call_tool.py deleted file mode 100644 index 124c0317e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_billing_plans_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RetrieveBillingPlans" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'integration_identifier_or_slug': 'payment_gateway', - 'product_id_or_slug': 'premium_subscription', - 'additional_metadata': 'Requesting latest plans', - 'team_identifier': 'team_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_certificate_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/retrieve_certificate_by_id_example_call_tool.js deleted file mode 100644 index d45664033..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_certificate_by_id_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RetrieveCertificateById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "certificate_id": "cert_12345", - "team_slug": "my-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_certificate_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/retrieve_certificate_by_id_example_call_tool.py deleted file mode 100644 index 8ad252fac..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_certificate_by_id_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RetrieveCertificateById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'certificate_id': 'cert_12345', 'team_slug': 'my-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_custom_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/retrieve_custom_environment_example_call_tool.js deleted file mode 100644 index b2f41cb58..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_custom_environment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RetrieveCustomEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_environment_identifier": "dev-env-123", - "project_identifier_or_name": "my-awesome-project", - "team_identifier": "team-456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_custom_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/retrieve_custom_environment_example_call_tool.py deleted file mode 100644 index a2facad79..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_custom_environment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RetrieveCustomEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_environment_identifier': 'dev-env-123', - 'project_identifier_or_name': 'my-awesome-project', - 'team_identifier': 'team-456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_deployment_file_contents_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/retrieve_deployment_file_contents_example_call_tool.js deleted file mode 100644 index ead21a4db..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_deployment_file_contents_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RetrieveDeploymentFileContents"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_unique_identifier": "abc123", - "file_identifier": "file456", - "file_path": "/src/index.js" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_deployment_file_contents_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/retrieve_deployment_file_contents_example_call_tool.py deleted file mode 100644 index 52310f2a7..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_deployment_file_contents_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RetrieveDeploymentFileContents" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_unique_identifier': 'abc123', - 'file_identifier': 'file456', - 'file_path': '/src/index.js' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_edge_config_backup_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/retrieve_edge_config_backup_example_call_tool.js deleted file mode 100644 index 9332056e1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_edge_config_backup_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RetrieveEdgeConfigBackup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "edge_config_backup_version_id": "v1.0.3", - "edge_config_id": "config123", - "team_identifier": "team456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_edge_config_backup_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/retrieve_edge_config_backup_example_call_tool.py deleted file mode 100644 index 09c18efe4..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_edge_config_backup_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RetrieveEdgeConfigBackup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'edge_config_backup_version_id': 'v1.0.3', - 'edge_config_id': 'config123', - 'team_identifier': 'team456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_integration_configurations_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/retrieve_integration_configurations_example_call_tool.js deleted file mode 100644 index 20e1e6d63..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_integration_configurations_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RetrieveIntegrationConfigurations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "configuration_view_type": "account", - "installation_type": "marketplace", - "integration_id": "my-integration", - "team_identifier": "team123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_integration_configurations_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/retrieve_integration_configurations_example_call_tool.py deleted file mode 100644 index 006f99be2..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_integration_configurations_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RetrieveIntegrationConfigurations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'configuration_view_type': 'account', - 'installation_type': 'marketplace', - 'integration_id': 'my-integration', - 'team_identifier': 'team123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_integration_log_drains_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/retrieve_integration_log_drains_example_call_tool.js deleted file mode 100644 index 8494062c4..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_integration_log_drains_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RetrieveIntegrationLogDrains"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "team_identifier": "team_123", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_integration_log_drains_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/retrieve_integration_log_drains_example_call_tool.py deleted file mode 100644 index ec140a030..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_integration_log_drains_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RetrieveIntegrationLogDrains" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'team_identifier': 'team_123', 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_bypass_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_bypass_rules_example_call_tool.js deleted file mode 100644 index e107a6ab4..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_bypass_rules_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RetrieveProjectBypassRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "proj_12345", - "filter_by_domain": "example.com", - "result_limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_bypass_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_bypass_rules_example_call_tool.py deleted file mode 100644 index f1a6429f2..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_bypass_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RetrieveProjectBypassRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 'proj_12345', 'filter_by_domain': 'example.com', 'result_limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_domains_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_domains_example_call_tool.js deleted file mode 100644 index cedcf2a31..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_domains_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RetrieveProjectDomains"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_or_name": "project123", - "created_before_timestamp": 1672531199000, - "max_domains_to_list": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_domains_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_domains_example_call_tool.py deleted file mode 100644 index 940bfeef1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_domains_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RetrieveProjectDomains" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_or_name': 'project123', - 'created_before_timestamp': 1672531199000, - 'max_domains_to_list': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_environment_variable_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_environment_variable_example_call_tool.js deleted file mode 100644 index c3e576062..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_environment_variable_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RetrieveProjectEnvironmentVariable"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "environment_variable_id": "env_var_123", - "project_identifier_or_name": "project_alpha", - "team_identifier": "team_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_environment_variable_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_environment_variable_example_call_tool.py deleted file mode 100644 index da5ac02a2..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_project_environment_variable_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RetrieveProjectEnvironmentVariable" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'environment_variable_id': 'env_var_123', - 'project_identifier_or_name': 'project_alpha', - 'team_identifier': 'team_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_projects_list_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/retrieve_projects_list_example_call_tool.js deleted file mode 100644 index b52f1bf36..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_projects_list_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RetrieveProjectsList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "exclude_repositories": "repo1,repo2", - "filter_by_edge_config_id": "edge-config-123", - "max_projects_returned": "10", - "search_by_project_name": "my-project", - "team_slug": "my-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_projects_list_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/retrieve_projects_list_example_call_tool.py deleted file mode 100644 index 1d9574fed..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_projects_list_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RetrieveProjectsList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'exclude_repositories': 'repo1,repo2', - 'filter_by_edge_config_id': 'edge-config-123', - 'max_projects_returned': '10', - 'search_by_project_name': 'my-project', - 'team_slug': 'my-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_vercel_alias_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/retrieve_vercel_alias_example_call_tool.js deleted file mode 100644 index e73c4c98d..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_vercel_alias_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.RetrieveVercelAlias"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alias_identifier": "example-alias", - "project_id": "proj_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/retrieve_vercel_alias_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/retrieve_vercel_alias_example_call_tool.py deleted file mode 100644 index 80d08e29b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/retrieve_vercel_alias_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.RetrieveVercelAlias" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alias_identifier': 'example-alias', 'project_id': 'proj_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/set_deployment_alias_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/set_deployment_alias_example_call_tool.js deleted file mode 100644 index e88ffa593..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/set_deployment_alias_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.SetDeploymentAlias"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "deployment_id": "abc123", - "deployment_alias": "my-new-alias", - "redirect_hostname": "example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/set_deployment_alias_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/set_deployment_alias_example_call_tool.py deleted file mode 100644 index d4c875b00..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/set_deployment_alias_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.SetDeploymentAlias" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'deployment_id': 'abc123', 'deployment_alias': 'my-new-alias', 'redirect_hostname': 'example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/set_firewall_configuration_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/set_firewall_configuration_example_call_tool.js deleted file mode 100644 index 43cf0239f..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/set_firewall_configuration_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.SetFirewallConfiguration"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id": "12345", - "team_identifier": "team_abc", - "request_body": "{\"rules\":[{\"action\":\"allow\",\"source\":\"0.0.0.0/0\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/set_firewall_configuration_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/set_firewall_configuration_example_call_tool.py deleted file mode 100644 index 5b9db47cb..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/set_firewall_configuration_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.SetFirewallConfiguration" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id': '12345', - 'team_identifier': 'team_abc', - 'request_body': '{"rules":[{"action":"allow","source":"0.0.0.0/0"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/submit_billing_data_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/submit_billing_data_example_call_tool.js deleted file mode 100644 index 3944856eb..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/submit_billing_data_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.SubmitBillingData"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_configuration_id": "config_12345", - "request_body": "{\"billingAmount\":100,\"usageHours\":5}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/submit_billing_data_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/submit_billing_data_example_call_tool.py deleted file mode 100644 index b9498e312..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/submit_billing_data_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.SubmitBillingData" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'integration_configuration_id': 'config_12345', - 'request_body': '{"billingAmount":100,"usageHours":5}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/submit_invoice_to_vercel_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/submit_invoice_to_vercel_example_call_tool.js deleted file mode 100644 index 703ab3278..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/submit_invoice_to_vercel_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.SubmitInvoiceToVercel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_configuration_id": "12345", - "request_body": "{\"invoice_id\":\"inv_001\",\"amount\":100.0,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/submit_invoice_to_vercel_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/submit_invoice_to_vercel_example_call_tool.py deleted file mode 100644 index a96511de9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/submit_invoice_to_vercel_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.SubmitInvoiceToVercel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'integration_configuration_id': '12345', - 'request_body': '{"invoice_id":"inv_001","amount":100.0,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/submit_prepayment_balances_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/submit_prepayment_balances_example_call_tool.js deleted file mode 100644 index 7250837b0..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/submit_prepayment_balances_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.SubmitPrepaymentBalances"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_configuration_id": "abc123", - "request_body": "{\"balance\":1000}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/submit_prepayment_balances_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/submit_prepayment_balances_example_call_tool.py deleted file mode 100644 index 7768ba6a5..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/submit_prepayment_balances_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.SubmitPrepaymentBalances" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'integration_configuration_id': 'abc123', 'request_body': '{"balance":1000}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/transfer_domain_to_vercel_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/transfer_domain_to_vercel_example_call_tool.js deleted file mode 100644 index 4f97fe859..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/transfer_domain_to_vercel_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.TransferDomainToVercel"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "domain_name": "example.com", - "team_identifier": "team123", - "request_body": "{\"authCode\":\"123456\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/transfer_domain_to_vercel_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/transfer_domain_to_vercel_example_call_tool.py deleted file mode 100644 index 209a4b7b1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/transfer_domain_to_vercel_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.TransferDomainToVercel" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'domain_name': 'example.com', - 'team_identifier': 'team123', - 'request_body': '{"authCode":"123456"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/unpause_project_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/unpause_project_example_call_tool.js deleted file mode 100644 index 021e74cbf..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/unpause_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UnpauseProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "proj_12345", - "team_slug": "my-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/unpause_project_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/unpause_project_example_call_tool.py deleted file mode 100644 index 74d802cbd..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/unpause_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UnpauseProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 'proj_12345', 'team_slug': 'my-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_access_group_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_access_group_example_call_tool.js deleted file mode 100644 index 5181e5dcd..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_access_group_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateAccessGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "access_group_id_or_name": "group123", - "team_identifier": "team456", - "request_body": "{\"name\":\"Updated Group\",\"permissions\":[\"read\",\"write\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_access_group_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_access_group_example_call_tool.py deleted file mode 100644 index 03aa464d9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_access_group_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateAccessGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'access_group_id_or_name': 'group123', - 'team_identifier': 'team456', - 'request_body': '{"name":"Updated Group","permissions":["read","write"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_access_group_project_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_access_group_project_example_call_tool.js deleted file mode 100644 index e48073e7e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_access_group_project_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateAccessGroupProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "access_group_id_or_name": "dev-team", - "project_id": "proj-12345", - "project_role": "PROJECT_DEVELOPER", - "team_identifier": "team-abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_access_group_project_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_access_group_project_example_call_tool.py deleted file mode 100644 index 8d88001a5..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_access_group_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateAccessGroupProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'access_group_id_or_name': 'dev-team', - 'project_id': 'proj-12345', - 'project_role': 'PROJECT_DEVELOPER', - 'team_identifier': 'team-abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_apex_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_apex_domain_example_call_tool.js deleted file mode 100644 index 27dab0ec7..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_apex_domain_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateApexDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "apex_domain_name": "example.com", - "team_identifier": "team123", - "request_body": "{\"config\":\"new_config\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_apex_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_apex_domain_example_call_tool.py deleted file mode 100644 index 2f3aa0fcb..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_apex_domain_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateApexDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'apex_domain_name': 'example.com', - 'team_identifier': 'team123', - 'request_body': '{"config":"new_config"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_attack_challenge_mode_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_attack_challenge_mode_example_call_tool.js deleted file mode 100644 index cd5c8ee01..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_attack_challenge_mode_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateAttackChallengeMode"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "enable_attack_challenge_mode": true, - "project_id": "proj_12345", - "attack_mode_active_until": 1710000000 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_attack_challenge_mode_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_attack_challenge_mode_example_call_tool.py deleted file mode 100644 index 60457c579..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_attack_challenge_mode_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateAttackChallengeMode" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'enable_attack_challenge_mode': True, - 'project_id': 'proj_12345', - 'attack_mode_active_until': 1710000000 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_custom_environment_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_custom_environment_example_call_tool.js deleted file mode 100644 index ed68e9ed9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_custom_environment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateCustomEnvironment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "custom_environment_id": "env_12345", - "project_identifier_or_name": "my-vercel-project", - "branch_matcher_type": "startsWith", - "branch_name_pattern": "feature/", - "custom_environment_description": "This is a custom environment for feature development." -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_custom_environment_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_custom_environment_example_call_tool.py deleted file mode 100644 index 87694b522..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_custom_environment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateCustomEnvironment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'custom_environment_id': 'env_12345', - 'project_identifier_or_name': 'my-vercel-project', - 'branch_matcher_type': 'startsWith', - 'branch_name_pattern': 'feature/', - 'custom_environment_description': 'This is a custom environment for feature development.' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_dns_record_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_dns_record_example_call_tool.js deleted file mode 100644 index e62e22b2f..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_dns_record_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateDnsRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "dns_record_id": "12345", - "team_identifier": "team_001", - "team_slug": "dev-team", - "request_body": "{\"type\":\"A\",\"value\":\"192.0.2.1\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_dns_record_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_dns_record_example_call_tool.py deleted file mode 100644 index 07d31a844..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_dns_record_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateDnsRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'dns_record_id': '12345', - 'team_identifier': 'team_001', - 'team_slug': 'dev-team', - 'request_body': '{"type":"A","value":"192.0.2.1"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_domain_auto_renew_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_domain_auto_renew_example_call_tool.js deleted file mode 100644 index f485fa5c1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_domain_auto_renew_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateDomainAutoRenew"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com", - "enable_auto_renew": true, - "team_id": "team123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_domain_auto_renew_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_domain_auto_renew_example_call_tool.py deleted file mode 100644 index deb0c0a06..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_domain_auto_renew_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateDomainAutoRenew" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com', 'enable_auto_renew': True, 'team_id': 'team123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_domain_nameservers_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_domain_nameservers_example_call_tool.js deleted file mode 100644 index 945bae305..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_domain_nameservers_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateDomainNameservers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "domain_name": "example.com", - "nameservers_list": [ - "ns1.vercel.com", - "ns2.vercel.com" - ], - "team_id": "team_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_domain_nameservers_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_domain_nameservers_example_call_tool.py deleted file mode 100644 index 81b712770..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_domain_nameservers_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateDomainNameservers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'domain_name': 'example.com', - 'nameservers_list': ['ns1.vercel.com', 'ns2.vercel.com'], - 'team_id': 'team_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_example_call_tool.js deleted file mode 100644 index fa182497e..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateEdgeConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "edge_config_identifier": "config123", - "edge_config_slug": "my-edge-config", - "team_slug": "dev-team" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_example_call_tool.py deleted file mode 100644 index 5017b2628..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateEdgeConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'edge_config_identifier': 'config123', - 'edge_config_slug': 'my-edge-config', - 'team_slug': 'dev-team' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_items_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_items_example_call_tool.js deleted file mode 100644 index f6c3ff2f1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_items_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateEdgeConfigItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "edge_config_identifier": "config123", - "team_identifier": "team456", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_items_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_items_example_call_tool.py deleted file mode 100644 index e2fe06226..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_items_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateEdgeConfigItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'edge_config_identifier': 'config123', - 'team_identifier': 'team456', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_schema_example_call_tool.js deleted file mode 100644 index e3db8cde9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_schema_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateEdgeConfigSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "edge_config_identifier": "config123", - "edge_config_schema_definition": "{\"type\":\"object\",\"properties\":{\"key1\":{\"type\":\"string\"},\"key2\":{\"type\":\"integer\"}}}", - "enable_dry_run": "true" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_schema_example_call_tool.py deleted file mode 100644 index c24b6c0b5..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_edge_config_schema_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateEdgeConfigSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'edge_config_identifier': 'config123', - 'edge_config_schema_definition': '{"type":"object","properties":{"key1":{"type":"string"},"key2":{"type":"integer"}}}', - 'enable_dry_run': 'true' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_existing_check_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_existing_check_example_call_tool.js deleted file mode 100644 index 71cba344c..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_existing_check_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateExistingCheck"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "deployment_id": "12345", - "check_identifier": "check_1", - "request_body": "{\"status\":\"updated\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_existing_check_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_existing_check_example_call_tool.py deleted file mode 100644 index 60cf3fe11..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_existing_check_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateExistingCheck" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'deployment_id': '12345', - 'check_identifier': 'check_1', - 'request_body': '{"status":"updated"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_experimentation_item_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_experimentation_item_example_call_tool.js deleted file mode 100644 index 3e962baa2..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_experimentation_item_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateExperimentationItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_configuration_id": "config123", - "resource_identifier": "resource456", - "experiment_item_id": "item789", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_experimentation_item_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_experimentation_item_example_call_tool.py deleted file mode 100644 index d8ee0d0b9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_experimentation_item_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateExperimentationItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'integration_configuration_id': 'config123', - 'resource_identifier': 'resource456', - 'experiment_item_id': 'item789', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_firewall_config_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_firewall_config_example_call_tool.js deleted file mode 100644 index 39a27d172..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_firewall_config_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateFirewallConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier": "proj123", - "team_identifier": "team456", - "request_body": "{\"firewall_rules\":[{\"action\":\"allow\",\"port\":80},{\"action\":\"deny\",\"port\":22}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_firewall_config_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_firewall_config_example_call_tool.py deleted file mode 100644 index 31899d930..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_firewall_config_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateFirewallConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier': 'proj123', - 'team_identifier': 'team456', - 'request_body': '{"firewall_rules":[{"action":"allow","port":80},{"action":"deny","port":22}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_integration_deployment_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_integration_deployment_example_call_tool.js deleted file mode 100644 index 122cce975..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_integration_deployment_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateIntegrationDeployment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "deployment_id": "12345", - "integration_configuration_id": "config_67890", - "resource_id": "resource_abc", - "deployment_action": "update", - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_integration_deployment_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_integration_deployment_example_call_tool.py deleted file mode 100644 index 9337f385d..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_integration_deployment_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateIntegrationDeployment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'deployment_id': '12345', - 'integration_configuration_id': 'config_67890', - 'resource_id': 'resource_abc', - 'deployment_action': 'update', - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_integration_installation_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_integration_installation_example_call_tool.js deleted file mode 100644 index c4d7f9f6b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_integration_installation_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateIntegrationInstallation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_configuration_id": "abc123", - "request_body": "{\"setting\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_integration_installation_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_integration_installation_example_call_tool.py deleted file mode 100644 index e8eaa128a..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_integration_installation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateIntegrationInstallation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'integration_configuration_id': 'abc123', 'request_body': '{"setting":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_project_data_cache_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_project_data_cache_example_call_tool.js deleted file mode 100644 index 966059fdb..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_project_data_cache_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateProjectDataCache"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id": "proj_12345", - "disable_data_cache": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_project_data_cache_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_project_data_cache_example_call_tool.py deleted file mode 100644 index 1afbfb4f0..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_project_data_cache_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateProjectDataCache" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id': 'proj_12345', 'disable_data_cache': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_project_details_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_project_details_example_call_tool.js deleted file mode 100644 index 30f5200f1..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_project_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateProjectDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id_or_name": "my-project", - "request_body": "{\"name\":\"Updated Project Name\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_project_details_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_project_details_example_call_tool.py deleted file mode 100644 index 3000f8e73..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_project_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateProjectDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id_or_name': 'my-project', - 'request_body': '{"name":"Updated Project Name","description":"This is an updated ' - 'description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_project_domain_config_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_project_domain_config_example_call_tool.js deleted file mode 100644 index 5802c8405..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_project_domain_config_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateProjectDomainConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_domain_name": "example.com", - "project_identifier_or_name": "my_project", - "linked_git_branch": "main", - "redirect_status_code": 301, - "redirect_target_domain": "example.org" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_project_domain_config_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_project_domain_config_example_call_tool.py deleted file mode 100644 index 4a4d7357b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_project_domain_config_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateProjectDomainConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_domain_name': 'example.com', - 'project_identifier_or_name': 'my_project', - 'linked_git_branch': 'main', - 'redirect_status_code': 301, - 'redirect_target_domain': 'example.org' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_project_network_links_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_project_network_links_example_call_tool.js deleted file mode 100644 index 8a67cf147..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_project_network_links_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateProjectNetworkLinks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_identifier_or_name": "my-project", - "team_identifier": "team-123", - "request_body": "{\"network\":\"secure-network\",\"action\":\"update\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_project_network_links_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_project_network_links_example_call_tool.py deleted file mode 100644 index 0337b7104..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_project_network_links_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateProjectNetworkLinks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_identifier_or_name': 'my-project', - 'team_identifier': 'team-123', - 'request_body': '{"network":"secure-network","action":"update"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_project_protection_bypass_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_project_protection_bypass_example_call_tool.js deleted file mode 100644 index e2d7cd4ab..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_project_protection_bypass_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateProjectProtectionBypass"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_or_name": "my-vercel-project", - "create_new_automation_bypass": true, - "revoke_automation_bypass": "old_secret_value" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_project_protection_bypass_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_project_protection_bypass_example_call_tool.py deleted file mode 100644 index 2917bc5f0..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_project_protection_bypass_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateProjectProtectionBypass" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_or_name': 'my-vercel-project', - 'create_new_automation_bypass': True, - 'revoke_automation_bypass': 'old_secret_value' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_resource_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_resource_example_call_tool.js deleted file mode 100644 index 62ea29c35..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_resource_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateResource"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_configuration_id": "config123", - "resource_id": "resource456", - "request_body": "{\"name\":\"Updated Resource\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_resource_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_resource_example_call_tool.py deleted file mode 100644 index 25765b2f3..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_resource_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateResource" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'integration_configuration_id': 'config123', - 'resource_id': 'resource456', - 'request_body': '{"name":"Updated Resource","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_resource_secrets_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_resource_secrets_example_call_tool.js deleted file mode 100644 index 82958f2b4..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_resource_secrets_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateResourceSecrets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_configuration_id": "config123", - "integration_product_id_or_slug": "product456", - "resource_id": "resource789", - "request_body": "{\"secret\":\"newSecretValue\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_resource_secrets_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_resource_secrets_example_call_tool.py deleted file mode 100644 index b370f1e59..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_resource_secrets_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateResourceSecrets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'integration_configuration_id': 'config123', - 'integration_product_id_or_slug': 'product456', - 'resource_id': 'resource789', - 'request_body': '{"secret":"newSecretValue"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_rolling_release_config_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_rolling_release_config_example_call_tool.js deleted file mode 100644 index 5a00aba97..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_rolling_release_config_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateRollingReleaseConfig"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_or_name": "my-vercel-project", - "team_identifier": "team_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_rolling_release_config_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_rolling_release_config_example_call_tool.py deleted file mode 100644 index 55edbbc98..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_rolling_release_config_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateRollingReleaseConfig" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_or_name': 'my-vercel-project', 'team_identifier': 'team_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_secrets_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_secrets_by_id_example_call_tool.js deleted file mode 100644 index decedaae3..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_secrets_by_id_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateSecretsById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "integration_configuration_id": "abc123", - "resource_id": "res456", - "request_body": "{\"secret\":\"new_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_secrets_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_secrets_by_id_example_call_tool.py deleted file mode 100644 index fe3de435c..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_secrets_by_id_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateSecretsById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'integration_configuration_id': 'abc123', - 'resource_id': 'res456', - 'request_body': '{"secret":"new_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_team_info_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_team_info_example_call_tool.js deleted file mode 100644 index 7efd749fb..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_team_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateTeamInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_identifier": "team123", - "team_slug": "dev-team", - "request_body": "{\"name\":\"Development Team\",\"description\":\"Handles all development tasks.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_team_info_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_team_info_example_call_tool.py deleted file mode 100644 index e0d8f7d6c..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_team_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateTeamInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_identifier': 'team123', - 'team_slug': 'dev-team', - 'request_body': '{"name":"Development Team","description":"Handles all development tasks."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_team_member_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_team_member_example_call_tool.js deleted file mode 100644 index 59425f00b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_team_member_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateTeamMember"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "member_id": "12345", - "team_id": "team_001", - "request_body": "{\"role\":\"developer\",\"status\":\"confirmed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_team_member_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_team_member_example_call_tool.py deleted file mode 100644 index 412d589f7..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_team_member_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateTeamMember" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'member_id': '12345', - 'team_id': 'team_001', - 'request_body': '{"role":"developer","status":"confirmed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_url_protection_bypass_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/update_url_protection_bypass_example_call_tool.js deleted file mode 100644 index 49b4e9510..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_url_protection_bypass_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UpdateUrlProtectionBypass"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "alias_or_deployment_id": "abc123", - "team_identifier": "team_456", - "request_body": "{\"access\":\"user\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/update_url_protection_bypass_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/update_url_protection_bypass_example_call_tool.py deleted file mode 100644 index 1177889b3..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/update_url_protection_bypass_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UpdateUrlProtectionBypass" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'alias_or_deployment_id': 'abc123', - 'team_identifier': 'team_456', - 'request_body': '{"access":"user"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/upload_certificate_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/upload_certificate_example_call_tool.js deleted file mode 100644 index 78ae8f1c9..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/upload_certificate_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UploadCertificate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "team_identifier": "team_123", - "request_body": "{\"certificate\":\"[file_content]\",\"privateKey\":\"[private_key]\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/upload_certificate_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/upload_certificate_example_call_tool.py deleted file mode 100644 index 6254454c2..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/upload_certificate_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UploadCertificate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'team_identifier': 'team_123', - 'request_body': '{"certificate":"[file_content]","privateKey":"[private_key]"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/upload_client_cert_to_project_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/upload_client_cert_to_project_example_call_tool.js deleted file mode 100644 index ff2558aad..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/upload_client_cert_to_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.UploadClientCertToProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "project_id_or_name": "my-vercel-project", - "request_body": "{\"certificate\":\"[file_content]\",\"private_key\":\"[private_key_content]\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/upload_client_cert_to_project_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/upload_client_cert_to_project_example_call_tool.py deleted file mode 100644 index 630d02036..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/upload_client_cert_to_project_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.UploadClientCertToProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'project_id_or_name': 'my-vercel-project', - 'request_body': '{"certificate":"[file_content]","private_key":"[private_key_content]"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/vercel_api/verify_project_domain_example_call_tool.js b/public/examples/integrations/mcp-servers/vercel_api/verify_project_domain_example_call_tool.js deleted file mode 100644 index efcd7b62b..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/verify_project_domain_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "VercelApi.VerifyProjectDomain"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "project_id_or_name": "my_project", - "verify_domain_name": "example.com", - "team_identifier": "team_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/vercel_api/verify_project_domain_example_call_tool.py b/public/examples/integrations/mcp-servers/vercel_api/verify_project_domain_example_call_tool.py deleted file mode 100644 index 980e3d0e4..000000000 --- a/public/examples/integrations/mcp-servers/vercel_api/verify_project_domain_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "VercelApi.VerifyProjectDomain" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'project_id_or_name': 'my_project', - 'verify_domain_name': 'example.com', - 'team_identifier': 'team_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/activate_database_user_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/activate_database_user_example_call_tool.js deleted file mode 100644 index 422c2454b..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/activate_database_user_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.ActivateDatabaseUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_name": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/activate_database_user_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/activate_database_user_example_call_tool.py deleted file mode 100644 index 9cf6fec3f..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/activate_database_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.ActivateDatabaseUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_name': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/add_permissions_to_role_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/add_permissions_to_role_example_call_tool.js deleted file mode 100644 index 2be32fd34..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/add_permissions_to_role_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.AddPermissionsToRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "role_id": "12345", - "request_body": "{\"permissions\":[\"read\",\"write\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/add_permissions_to_role_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/add_permissions_to_role_example_call_tool.py deleted file mode 100644 index c52c39013..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/add_permissions_to_role_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.AddPermissionsToRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'role_id': '12345', 'request_body': '{"permissions":["read","write"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/add_property_to_collection_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/add_property_to_collection_example_call_tool.js deleted file mode 100644 index aae13e632..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/add_property_to_collection_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.AddPropertyToCollection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "collection_name": "User", - "request_body": "{\"newProperty\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/add_property_to_collection_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/add_property_to_collection_example_call_tool.py deleted file mode 100644 index 6f54859ec..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/add_property_to_collection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.AddPropertyToCollection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'collection_name': 'User', 'request_body': '{"newProperty":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/add_reference_to_object_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/add_reference_to_object_example_call_tool.js deleted file mode 100644 index d7376c2eb..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/add_reference_to_object_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.AddReferenceToObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "source_class_name": "Product", - "source_object_uuid": "123e4567-e89b-12d3-a456-426614174000", - "reference_property_name": "relatedProducts", - "required_consistency_level": "1", - "tenant_identifier": "tenant_1", - "request_body": "{\"referenceId\":\"456e7890-e12b-34d5-a678-426614174001\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/add_reference_to_object_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/add_reference_to_object_example_call_tool.py deleted file mode 100644 index 66d3c6528..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/add_reference_to_object_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.AddReferenceToObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'source_class_name': 'Product', - 'source_object_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'reference_property_name': 'relatedProducts', - 'required_consistency_level': '1', - 'tenant_identifier': 'tenant_1', - 'request_body': '{"referenceId":"456e7890-e12b-34d5-a678-426614174001"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/assign_role_to_group_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/assign_role_to_group_example_call_tool.js deleted file mode 100644 index e1b33ddd9..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/assign_role_to_group_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.AssignRoleToGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_name": "Developers", - "group_type": "oidc", - "roles_to_assign": [ - "admin", - "editor" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/assign_role_to_group_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/assign_role_to_group_example_call_tool.py deleted file mode 100644 index a572fd944..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/assign_role_to_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.AssignRoleToGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_name': 'Developers', 'group_type': 'oidc', 'roles_to_assign': ['admin', 'editor'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/assign_roles_to_user_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/assign_roles_to_user_example_call_tool.js deleted file mode 100644 index 5e94cbfa4..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/assign_roles_to_user_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.AssignRolesToUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_name": "john_doe", - "assigned_roles": [ - "admin", - "editor" - ], - "user_type": "db" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/assign_roles_to_user_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/assign_roles_to_user_example_call_tool.py deleted file mode 100644 index 2cde69cb5..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/assign_roles_to_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.AssignRolesToUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_name': 'john_doe', 'assigned_roles': ['admin', 'editor'], 'user_type': 'db' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/batch_create_references_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/batch_create_references_example_call_tool.js deleted file mode 100644 index 49a409b69..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/batch_create_references_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.BatchCreateReferences"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "consistency_level": "quorum", - "request_body": "{\"references\":[{\"source\":\"item1\",\"target\":\"item2\"},{\"source\":\"item3\",\"target\":\"item4\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/batch_create_references_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/batch_create_references_example_call_tool.py deleted file mode 100644 index 77daa28b2..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/batch_create_references_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.BatchCreateReferences" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'consistency_level': 'quorum', - 'request_body': '{"references":[{"source":"item1","target":"item2"},{"source":"item3","target":"item4"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/batch_register_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/batch_register_objects_example_call_tool.js deleted file mode 100644 index b458494d2..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/batch_register_objects_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.BatchRegisterObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "consistency_level": "quorum", - "request_body": "[{\"uuid\":\"123e4567-e89b-12d3-a456-426614174000\",\"data\":{\"name\":\"Object1\",\"value\":100}},{\"uuid\":\"123e4567-e89b-12d3-a456-426614174001\",\"data\":{\"name\":\"Object2\",\"value\":200}}]" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/batch_register_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/batch_register_objects_example_call_tool.py deleted file mode 100644 index 322582e79..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/batch_register_objects_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.BatchRegisterObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'consistency_level': 'quorum', - 'request_body': '[{"uuid":"123e4567-e89b-12d3-a456-426614174000","data":{"name":"Object1","value":100}},{"uuid":"123e4567-e89b-12d3-a456-426614174001","data":{"name":"Object2","value":200}}]' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/cancel_backup_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/cancel_backup_example_call_tool.js deleted file mode 100644 index a8c1fe1d2..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/cancel_backup_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CancelBackup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "backup_id": "abc123_backup", - "storage_backend_system": "s3", - "backup_subpath": "backups/2023/", - "specified_bucket_name": "my-backup-bucket" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/cancel_backup_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/cancel_backup_example_call_tool.py deleted file mode 100644 index c93038daa..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/cancel_backup_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CancelBackup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'backup_id': 'abc123_backup', - 'storage_backend_system': 's3', - 'backup_subpath': 'backups/2023/', - 'specified_bucket_name': 'my-backup-bucket' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/cancel_replication_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/cancel_replication_example_call_tool.js deleted file mode 100644 index 9fb5345c8..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/cancel_replication_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CancelReplication"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "replication_operation_id": "op12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/cancel_replication_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/cancel_replication_example_call_tool.py deleted file mode 100644 index ad66ee095..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/cancel_replication_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CancelReplication" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'replication_operation_id': 'op12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/cancel_replication_operation_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/cancel_replication_operation_example_call_tool.js deleted file mode 100644 index 3cded46ae..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/cancel_replication_operation_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CancelReplicationOperation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "replication_operation_id": "op-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/cancel_replication_operation_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/cancel_replication_operation_example_call_tool.py deleted file mode 100644 index e72c9b5c8..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/cancel_replication_operation_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CancelReplicationOperation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'replication_operation_id': 'op-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/check_backup_restore_status_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/check_backup_restore_status_example_call_tool.js deleted file mode 100644 index e93924cf7..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/check_backup_restore_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CheckBackupRestoreStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "backend_storage_system": "s3", - "backup_id": "abc123_backup", - "backup_bucket_name": "my-backup-bucket" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/check_backup_restore_status_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/check_backup_restore_status_example_call_tool.py deleted file mode 100644 index b04e1a3e1..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/check_backup_restore_status_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CheckBackupRestoreStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'backend_storage_system': 's3', - 'backup_id': 'abc123_backup', - 'backup_bucket_name': 'my-backup-bucket' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/check_backup_status_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/check_backup_status_example_call_tool.js deleted file mode 100644 index 47b758f4b..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/check_backup_status_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CheckBackupStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "backup_backend_system": "s3", - "backup_identifier": "backup_12345", - "backup_storage_path": "backups/2023/", - "bucket_name": "my-backup-bucket" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/check_backup_status_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/check_backup_status_example_call_tool.py deleted file mode 100644 index 560c6b746..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/check_backup_status_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CheckBackupStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'backup_backend_system': 's3', - 'backup_identifier': 'backup_12345', - 'backup_storage_path': 'backups/2023/', - 'bucket_name': 'my-backup-bucket' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/check_role_permission_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/check_role_permission_example_call_tool.js deleted file mode 100644 index 1a60ade2e..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/check_role_permission_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CheckRolePermission"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "role_name": "admin", - "request_body": "{\"permissions\":[\"read\",\"write\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/check_role_permission_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/check_role_permission_example_call_tool.py deleted file mode 100644 index 9a4a79b78..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/check_role_permission_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CheckRolePermission" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'role_name': 'admin', 'request_body': '{"permissions":["read","write"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/check_weaviate_liveness_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/check_weaviate_liveness_example_call_tool.js deleted file mode 100644 index 190d3ace8..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/check_weaviate_liveness_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CheckWeaviateLiveness"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/check_weaviate_liveness_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/check_weaviate_liveness_example_call_tool.py deleted file mode 100644 index a5086395b..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/check_weaviate_liveness_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CheckWeaviateLiveness" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/check_weaviate_readiness_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/check_weaviate_readiness_example_call_tool.js deleted file mode 100644 index 09e485242..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/check_weaviate_readiness_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CheckWeaviateReadiness"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/check_weaviate_readiness_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/check_weaviate_readiness_example_call_tool.py deleted file mode 100644 index 8d3474cdc..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/check_weaviate_readiness_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CheckWeaviateReadiness" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/create_alias_mapping_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/create_alias_mapping_example_call_tool.js deleted file mode 100644 index 03721f63a..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/create_alias_mapping_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CreateAliasMapping"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alias_name": "myAlias", - "collection_class_name": "MyCollection" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/create_alias_mapping_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/create_alias_mapping_example_call_tool.py deleted file mode 100644 index 5bef7ab1a..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/create_alias_mapping_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CreateAliasMapping" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alias_name': 'myAlias', 'collection_class_name': 'MyCollection' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/create_backup_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/create_backup_example_call_tool.js deleted file mode 100644 index 64bc22d99..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/create_backup_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CreateBackup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "backend_storage_system": "s3", - "backup_chunk_size": 256, - "backup_id": "my_backup_001", - "bucket_name": "my-backup-bucket", - "collections_to_include_in_backup": [ - "users", - "orders" - ], - "compression_level": "BestCompression", - "cpu_utilization_percentage": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/create_backup_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/create_backup_example_call_tool.py deleted file mode 100644 index c6e0caa7b..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/create_backup_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CreateBackup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'backend_storage_system': 's3', - 'backup_chunk_size': 256, - 'backup_id': 'my_backup_001', - 'bucket_name': 'my-backup-bucket', - 'collections_to_include_in_backup': ['users', 'orders'], - 'compression_level': 'BestCompression', - 'cpu_utilization_percentage': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/create_database_user_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/create_database_user_example_call_tool.js deleted file mode 100644 index d51f87e07..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/create_database_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CreateDatabaseUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_name": "new_user", - "disable_import_experimental": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/create_database_user_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/create_database_user_example_call_tool.py deleted file mode 100644 index 3da78018c..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/create_database_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CreateDatabaseUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_name': 'new_user', 'disable_import_experimental': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/create_object_in_weaviate_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/create_object_in_weaviate_example_call_tool.js deleted file mode 100644 index b2f4af302..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/create_object_in_weaviate_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CreateObjectInWeaviate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "consistency_level_replica_acknowledgement": "2", - "request_body": "{\"id\":\"123\",\"name\":\"Sample Object\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/create_object_in_weaviate_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/create_object_in_weaviate_example_call_tool.py deleted file mode 100644 index ccd3b81dc..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/create_object_in_weaviate_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CreateObjectInWeaviate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'consistency_level_replica_acknowledgement': '2', - 'request_body': '{"id":"123","name":"Sample Object"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/create_role_with_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/create_role_with_permissions_example_call_tool.js deleted file mode 100644 index 5599bc6bd..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/create_role_with_permissions_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CreateRoleWithPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"role_name\":\"developer\",\"permissions\":[\"read\",\"write\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/create_role_with_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/create_role_with_permissions_example_call_tool.py deleted file mode 100644 index a4df6a5c3..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/create_role_with_permissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CreateRoleWithPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"role_name":"developer","permissions":["read","write"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/create_schema_object_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/create_schema_object_example_call_tool.js deleted file mode 100644 index f773c7e24..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/create_schema_object_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CreateSchemaObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"class\":\"ExampleClass\",\"properties\":[{\"name\":\"exampleProperty\",\"dataType\":[\"string\"]}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/create_schema_object_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/create_schema_object_example_call_tool.py deleted file mode 100644 index 8c36c7d6e..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/create_schema_object_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CreateSchemaObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"class":"ExampleClass","properties":[{"name":"exampleProperty","dataType":["string"]}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/create_tenants_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/create_tenants_example_call_tool.js deleted file mode 100644 index f1d4c1895..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/create_tenants_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.CreateTenants"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "collection_name": "tenant_collection", - "request_body": "{\"name\":\"Tenant1\",\"description\":\"First tenant\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/create_tenants_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/create_tenants_example_call_tool.py deleted file mode 100644 index 56adc13d7..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/create_tenants_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.CreateTenants" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'collection_name': 'tenant_collection', - 'request_body': '{"name":"Tenant1","description":"First tenant"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/deactivate_database_user_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/deactivate_database_user_example_call_tool.js deleted file mode 100644 index 2c5506bf7..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/deactivate_database_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.DeactivateDatabaseUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "database_user_id": "user_12345", - "revoke_api_key": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/deactivate_database_user_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/deactivate_database_user_example_call_tool.py deleted file mode 100644 index 8b23475b2..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/deactivate_database_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.DeactivateDatabaseUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'database_user_id': 'user_12345', 'revoke_api_key': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_alias_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/delete_alias_example_call_tool.js deleted file mode 100644 index 29bbbc99e..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_alias_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.DeleteAlias"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alias_name": "old_alias" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_alias_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/delete_alias_example_call_tool.py deleted file mode 100644 index 1c900dcbb..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_alias_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.DeleteAlias" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alias_name': 'old_alias' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_all_replications_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/delete_all_replications_example_call_tool.js deleted file mode 100644 index 1d0ea9e55..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_all_replications_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.DeleteAllReplications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_all_replications_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/delete_all_replications_example_call_tool.py deleted file mode 100644 index 86b01815d..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_all_replications_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.DeleteAllReplications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_data_object_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/delete_data_object_example_call_tool.js deleted file mode 100644 index 1d78dfad2..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_data_object_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.DeleteDataObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_name": "UserProfiles", - "object_uuid": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_data_object_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/delete_data_object_example_call_tool.py deleted file mode 100644 index fb7cd4b80..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_data_object_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.DeleteDataObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_name': 'UserProfiles', 'object_uuid': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_database_user_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/delete_database_user_example_call_tool.js deleted file mode 100644 index 798413501..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_database_user_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.DeleteDatabaseUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "old_user" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_database_user_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/delete_database_user_example_call_tool.py deleted file mode 100644 index 9170d772c..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_database_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.DeleteDatabaseUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'old_user' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_multiple_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/delete_multiple_objects_example_call_tool.js deleted file mode 100644 index 2d41faea0..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_multiple_objects_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.DeleteMultipleObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "replica_acknowledgement_level": "2", - "target_tenant": "tenant123", - "request_body": "{\"filter\":{\"type\":\"obsolete\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_multiple_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/delete_multiple_objects_example_call_tool.py deleted file mode 100644 index b595bea3e..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_multiple_objects_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.DeleteMultipleObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'replica_acknowledgement_level': '2', - 'target_tenant': 'tenant123', - 'request_body': '{"filter":{"type":"obsolete"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_reference_from_object_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/delete_reference_from_object_example_call_tool.js deleted file mode 100644 index 1bd9d7549..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_reference_from_object_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.DeleteReferenceFromObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "collection_name": "UserCollection", - "source_object_uuid": "123e4567-e89b-12d3-a456-426614174000", - "reference_property_name": "friends", - "required_consistency_level": "quorum", - "tenant_identifier": "tenant123", - "request_body": "{\"referenceId\":\"456e7890-e12b-34d5-a678-426614174001\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_reference_from_object_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/delete_reference_from_object_example_call_tool.py deleted file mode 100644 index f6e7a3d5f..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_reference_from_object_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.DeleteReferenceFromObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'collection_name': 'UserCollection', - 'source_object_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'reference_property_name': 'friends', - 'required_consistency_level': 'quorum', - 'tenant_identifier': 'tenant123', - 'request_body': '{"referenceId":"456e7890-e12b-34d5-a678-426614174001"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_role_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/delete_role_example_call_tool.js deleted file mode 100644 index 8125a8438..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_role_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.DeleteRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "role_name": "admin" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_role_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/delete_role_example_call_tool.py deleted file mode 100644 index eda678c9c..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_role_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.DeleteRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'role_name': 'admin' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_schema_collection_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/delete_schema_collection_example_call_tool.js deleted file mode 100644 index 4fe900260..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_schema_collection_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.DeleteSchemaCollection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_name_to_delete": "user_profiles" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_schema_collection_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/delete_schema_collection_example_call_tool.py deleted file mode 100644 index 11c3870a6..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_schema_collection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.DeleteSchemaCollection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_name_to_delete': 'user_profiles' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_tenants_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/delete_tenants_example_call_tool.js deleted file mode 100644 index 669f45623..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_tenants_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.DeleteTenants"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_name": "user_data", - "tenant_names_to_delete": [ - "tenant1", - "tenant2", - "tenant3" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/delete_tenants_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/delete_tenants_example_call_tool.py deleted file mode 100644 index 392426f04..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/delete_tenants_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.DeleteTenants" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_name': 'user_data', 'tenant_names_to_delete': ['tenant1', 'tenant2', 'tenant3'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/discover_api_endpoints_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/discover_api_endpoints_example_call_tool.js deleted file mode 100644 index 2f740939f..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/discover_api_endpoints_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.DiscoverApiEndpoints"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/discover_api_endpoints_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/discover_api_endpoints_example_call_tool.py deleted file mode 100644 index 3875e9a99..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/discover_api_endpoints_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.DiscoverApiEndpoints" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/execute_graphql_batch_queries_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/execute_graphql_batch_queries_example_call_tool.js deleted file mode 100644 index ccbf57984..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/execute_graphql_batch_queries_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.ExecuteGraphqlBatchQueries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"queries\":[{\"query\":\"{ users { id name } }\"},{\"query\":\"{ posts { id title } }\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/execute_graphql_batch_queries_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/execute_graphql_batch_queries_example_call_tool.py deleted file mode 100644 index 3962eb27a..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/execute_graphql_batch_queries_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.ExecuteGraphqlBatchQueries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"queries":[{"query":"{ users { id name } }"},{"query":"{ posts { id title } ' - '}"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/execute_graphql_query_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/execute_graphql_query_example_call_tool.js deleted file mode 100644 index 61db452ef..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/execute_graphql_query_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.ExecuteGraphqlQuery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "graphql_query": "{ getArticles { title author } }", - "operation_name": "getArticles", - "query_variables": { - "limit": 10 - } -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/execute_graphql_query_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/execute_graphql_query_example_call_tool.py deleted file mode 100644 index 5ef77c566..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/execute_graphql_query_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.ExecuteGraphqlQuery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'graphql_query': '{ getArticles { title author } }', - 'operation_name': 'getArticles', - 'query_variables': {'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/fetch_replication_status_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/fetch_replication_status_example_call_tool.js deleted file mode 100644 index 8cd04c0f2..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/fetch_replication_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.FetchReplicationStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "replication_operation_id": "op12345", - "include_history": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/fetch_replication_status_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/fetch_replication_status_example_call_tool.py deleted file mode 100644 index b2303b3da..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/fetch_replication_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.FetchReplicationStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'replication_operation_id': 'op12345', 'include_history': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/fetch_role_by_name_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/fetch_role_by_name_example_call_tool.js deleted file mode 100644 index ccc259a81..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/fetch_role_by_name_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.FetchRoleByName"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "role_name": "admin" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/fetch_role_by_name_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/fetch_role_by_name_example_call_tool.py deleted file mode 100644 index aa68d5db8..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/fetch_role_by_name_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.FetchRoleByName" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'role_name': 'admin' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/fetch_sharding_state_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/fetch_sharding_state_example_call_tool.js deleted file mode 100644 index 87b06f6f9..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/fetch_sharding_state_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.FetchShardingState"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_name": "users", - "target_shard": "shard1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/fetch_sharding_state_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/fetch_sharding_state_example_call_tool.py deleted file mode 100644 index 690894ebd..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/fetch_sharding_state_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.FetchShardingState" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_name': 'users', 'target_shard': 'shard1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/force_delete_replications_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/force_delete_replications_example_call_tool.js deleted file mode 100644 index 2edf1ccb2..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/force_delete_replications_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.ForceDeleteReplications"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_name": "my_collection", - "dry_run": true, - "replication_operation_id": "op12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/force_delete_replications_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/force_delete_replications_example_call_tool.py deleted file mode 100644 index c616da89b..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/force_delete_replications_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.ForceDeleteReplications" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_name': 'my_collection', 'dry_run': True, 'replication_operation_id': 'op12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_authenticated_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_authenticated_user_info_example_call_tool.js deleted file mode 100644 index da67178b8..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_authenticated_user_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetAuthenticatedUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_authenticated_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_authenticated_user_info_example_call_tool.py deleted file mode 100644 index bd4a7f6b6..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_authenticated_user_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetAuthenticatedUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_classification_status_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_classification_status_example_call_tool.js deleted file mode 100644 index 6303f3380..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_classification_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetClassificationStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "classification_task_id": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_classification_status_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_classification_status_example_call_tool.py deleted file mode 100644 index beb23568a..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_classification_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetClassificationStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'classification_task_id': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_cluster_node_status_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_cluster_node_status_example_call_tool.js deleted file mode 100644 index c9307d5ae..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_cluster_node_status_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetClusterNodeStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "output_verbosity": "verbose" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_cluster_node_status_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_cluster_node_status_example_call_tool.py deleted file mode 100644 index 0b9b49eea..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_cluster_node_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetClusterNodeStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'output_verbosity': 'verbose' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_collection_shard_status_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_collection_shard_status_example_call_tool.js deleted file mode 100644 index 6b04a89bc..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_collection_shard_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetCollectionShardStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_name": "myCollection", - "tenant_name": "tenantA" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_collection_shard_status_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_collection_shard_status_example_call_tool.py deleted file mode 100644 index 501a1b275..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_collection_shard_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetCollectionShardStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_name': 'myCollection', 'tenant_name': 'tenantA' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_collection_tenants_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_collection_tenants_example_call_tool.js deleted file mode 100644 index 7ba5615c4..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_collection_tenants_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetCollectionTenants"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_name": "example_collection" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_collection_tenants_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_collection_tenants_example_call_tool.py deleted file mode 100644 index a86d16deb..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_collection_tenants_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetCollectionTenants" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_name': 'example_collection' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_data_object_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_data_object_example_call_tool.js deleted file mode 100644 index de413491a..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_data_object_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetDataObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_name": "users", - "object_uuid": "123e4567-e89b-12d3-a456-426614174000", - "include_additional_information": "classification" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_data_object_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_data_object_example_call_tool.py deleted file mode 100644 index 59b086208..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_data_object_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetDataObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_name': 'users', - 'object_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'include_additional_information': 'classification' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_database_user_info_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_database_user_info_example_call_tool.js deleted file mode 100644 index ab39e51fc..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_database_user_info_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetDatabaseUserInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "database_user_name": "john_doe", - "include_last_used_time": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_database_user_info_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_database_user_info_example_call_tool.py deleted file mode 100644 index 24816bf68..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_database_user_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetDatabaseUserInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'database_user_name': 'john_doe', 'include_last_used_time': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_groups_for_role_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_groups_for_role_example_call_tool.js deleted file mode 100644 index e4eaf817c..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_groups_for_role_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetGroupsForRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "role_name": "admin" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_groups_for_role_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_groups_for_role_example_call_tool.py deleted file mode 100644 index 72d470dc4..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_groups_for_role_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetGroupsForRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'role_name': 'admin' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_oidc_discovery_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_oidc_discovery_example_call_tool.js deleted file mode 100644 index c34be0240..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_oidc_discovery_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetOidcDiscovery"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_oidc_discovery_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_oidc_discovery_example_call_tool.py deleted file mode 100644 index 614219277..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_oidc_discovery_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetOidcDiscovery" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_roles_and_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_roles_and_permissions_example_call_tool.js deleted file mode 100644 index ebd30da71..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_roles_and_permissions_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetRolesAndPermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_roles_and_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_roles_and_permissions_example_call_tool.py deleted file mode 100644 index 98212afab..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_roles_and_permissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetRolesAndPermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_roles_for_group_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_roles_for_group_example_call_tool.js deleted file mode 100644 index dd4c8dbc6..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_roles_for_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetRolesForGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_name": "admins", - "group_type": "db", - "include_full_role_definitions": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_roles_for_group_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_roles_for_group_example_call_tool.py deleted file mode 100644 index af16746d7..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_roles_for_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetRolesForGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_name': 'admins', 'group_type': 'db', 'include_full_role_definitions': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_shard_host_nodes_status_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_shard_host_nodes_status_example_call_tool.js deleted file mode 100644 index 32cce69b4..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_shard_host_nodes_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetShardHostNodesStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_class_name": "UserCollection", - "output_verbosity": "verbose", - "shard_name": "ShardA" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_shard_host_nodes_status_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_shard_host_nodes_status_example_call_tool.py deleted file mode 100644 index 7cb8b3639..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_shard_host_nodes_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetShardHostNodesStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_class_name': 'UserCollection', 'output_verbosity': 'verbose', 'shard_name': 'ShardA' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_tenant_details_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_tenant_details_example_call_tool.js deleted file mode 100644 index 50ff3598c..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_tenant_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetTenantDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_name": "ResidentialTenants", - "tenant_name": "JohnDoe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_tenant_details_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_tenant_details_example_call_tool.py deleted file mode 100644 index faad45fee..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_tenant_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetTenantDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_name': 'ResidentialTenants', 'tenant_name': 'JohnDoe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_user_roles_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_user_roles_example_call_tool.js deleted file mode 100644 index aef2aaf86..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_user_roles_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetUserRoles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "user123", - "user_type": "oidc", - "include_detailed_role_information": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_user_roles_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_user_roles_example_call_tool.py deleted file mode 100644 index 1fc77d74f..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_user_roles_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetUserRoles" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': 'user123', 'user_type': 'oidc', 'include_detailed_role_information': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_users_by_role_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_users_by_role_example_call_tool.js deleted file mode 100644 index 0482cf877..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_users_by_role_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetUsersByRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "role_id": "admin" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_users_by_role_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_users_by_role_example_call_tool.py deleted file mode 100644 index 0d082a7d7..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_users_by_role_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetUsersByRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'role_id': 'admin' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_weaviate_cluster_statistics_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_weaviate_cluster_statistics_example_call_tool.js deleted file mode 100644 index e123e4398..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_weaviate_cluster_statistics_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetWeaviateClusterStatistics"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_weaviate_cluster_statistics_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_weaviate_cluster_statistics_example_call_tool.py deleted file mode 100644 index 860db29f3..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_weaviate_cluster_statistics_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetWeaviateClusterStatistics" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_weaviate_instance_meta_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/get_weaviate_instance_meta_example_call_tool.js deleted file mode 100644 index 575156fca..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_weaviate_instance_meta_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.GetWeaviateInstanceMeta"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/get_weaviate_instance_meta_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/get_weaviate_instance_meta_example_call_tool.py deleted file mode 100644 index 2838b5828..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/get_weaviate_instance_meta_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.GetWeaviateInstanceMeta" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/initiate_classification_task_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/initiate_classification_task_example_call_tool.js deleted file mode 100644 index 7a13a6c36..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/initiate_classification_task_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.InitiateClassificationTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"task_name\":\"image_classification\",\"data_source\":\"s3://mybucket/images/\",\"labels\":[\"cat\",\"dog\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/initiate_classification_task_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/initiate_classification_task_example_call_tool.py deleted file mode 100644 index c56316e2b..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/initiate_classification_task_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.InitiateClassificationTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'request_body': '{"task_name":"image_classification","data_source":"s3://mybucket/images/","labels":["cat","dog"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/list_backups_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/list_backups_example_call_tool.js deleted file mode 100644 index 9db6e11b7..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/list_backups_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.ListBackups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "backend_storage_system": "s3" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/list_backups_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/list_backups_example_call_tool.py deleted file mode 100644 index 2eee49da8..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/list_backups_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.ListBackups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'backend_storage_system': 's3' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/list_data_objects_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/list_data_objects_example_call_tool.js deleted file mode 100644 index 447832c56..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/list_data_objects_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.ListDataObjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_name": "users", - "include_additional_information": "classification", - "maximum_items_per_page": 10, - "sort_order": "desc", - "sort_properties": "created_at" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/list_data_objects_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/list_data_objects_example_call_tool.py deleted file mode 100644 index 33fe98ba4..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/list_data_objects_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.ListDataObjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_name': 'users', - 'include_additional_information': 'classification', - 'maximum_items_per_page': 10, - 'sort_order': 'desc', - 'sort_properties': 'created_at' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/list_db_users_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/list_db_users_example_call_tool.js deleted file mode 100644 index 5606cf693..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/list_db_users_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.ListDbUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "include_last_used_time": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/list_db_users_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/list_db_users_example_call_tool.py deleted file mode 100644 index 77f92091d..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/list_db_users_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.ListDbUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'include_last_used_time': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/list_distributed_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/list_distributed_tasks_example_call_tool.js deleted file mode 100644 index b8ca52cad..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/list_distributed_tasks_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.ListDistributedTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/list_distributed_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/list_distributed_tasks_example_call_tool.py deleted file mode 100644 index 0b72c17f7..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/list_distributed_tasks_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.ListDistributedTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/list_replication_status_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/list_replication_status_example_call_tool.js deleted file mode 100644 index a9d82b4e9..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/list_replication_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.ListReplicationStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_name": "my_collection", - "include_replication_history": true, - "shard_name": "shard_1" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/list_replication_status_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/list_replication_status_example_call_tool.py deleted file mode 100644 index 9376bac6e..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/list_replication_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.ListReplicationStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_name': 'my_collection', 'include_replication_history': True, 'shard_name': 'shard_1' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/replace_object_references_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/replace_object_references_example_call_tool.js deleted file mode 100644 index 63528f096..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/replace_object_references_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.ReplaceObjectReferences"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "collection_name": "my_collection", - "source_object_uuid": "123e4567-e89b-12d3-a456-426614174000", - "reference_property_name": "related_items", - "consistency_level": "one", - "tenant_identifier": "tenant_1", - "request_body": "{\"newReferences\":[\"ref1\",\"ref2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/replace_object_references_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/replace_object_references_example_call_tool.py deleted file mode 100644 index 2efce234c..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/replace_object_references_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.ReplaceObjectReferences" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'collection_name': 'my_collection', - 'source_object_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'reference_property_name': 'related_items', - 'consistency_level': 'one', - 'tenant_identifier': 'tenant_1', - 'request_body': '{"newReferences":["ref1","ref2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/replicate_shard_replica_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/replicate_shard_replica_example_call_tool.js deleted file mode 100644 index 067138cd7..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/replicate_shard_replica_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.ReplicateShardReplica"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "shard_name": "shard1", - "source_node": "nodeA", - "target_collection_name": "collection1", - "target_weaviate_node": "nodeB", - "replication_operation_type": "MOVE" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/replicate_shard_replica_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/replicate_shard_replica_example_call_tool.py deleted file mode 100644 index d7edee89f..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/replicate_shard_replica_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.ReplicateShardReplica" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'shard_name': 'shard1', - 'source_node': 'nodeA', - 'target_collection_name': 'collection1', - 'target_weaviate_node': 'nodeB', - 'replication_operation_type': 'MOVE' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/restore_backup_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/restore_backup_example_call_tool.js deleted file mode 100644 index 8e6354eea..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/restore_backup_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.RestoreBackup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "backup_backend_storage": "s3", - "backup_identifier": "my_backup_123", - "request_body": "{\"collections\":[\"collection1\",\"collection2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/restore_backup_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/restore_backup_example_call_tool.py deleted file mode 100644 index 933bb0df0..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/restore_backup_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.RestoreBackup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'backup_backend_storage': 's3', - 'backup_identifier': 'my_backup_123', - 'request_body': '{"collections":["collection1","collection2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_alias_details_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/retrieve_alias_details_example_call_tool.js deleted file mode 100644 index 268807950..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_alias_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.RetrieveAliasDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alias_name": "exampleAlias" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_alias_details_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/retrieve_alias_details_example_call_tool.py deleted file mode 100644 index c26ed3eda..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_alias_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.RetrieveAliasDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alias_name': 'exampleAlias' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_aliases_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/retrieve_aliases_example_call_tool.js deleted file mode 100644 index 26b4e5bad..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_aliases_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.RetrieveAliases"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_by_collection_name": "User" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_aliases_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/retrieve_aliases_example_call_tool.py deleted file mode 100644 index bb794daf8..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_aliases_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.RetrieveAliases" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_by_collection_name': 'User' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_collection_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/retrieve_collection_schema_example_call_tool.js deleted file mode 100644 index b24eedafe..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_collection_schema_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.RetrieveCollectionSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_name": "users" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_collection_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/retrieve_collection_schema_example_call_tool.py deleted file mode 100644 index 3a6b773db..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_collection_schema_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.RetrieveCollectionSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_name': 'users' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_database_schema_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/retrieve_database_schema_example_call_tool.js deleted file mode 100644 index df58c23af..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_database_schema_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.RetrieveDatabaseSchema"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_database_schema_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/retrieve_database_schema_example_call_tool.py deleted file mode 100644 index 4aed33cf8..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_database_schema_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.RetrieveDatabaseSchema" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_group_names_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/retrieve_group_names_example_call_tool.js deleted file mode 100644 index cdb98ee8b..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_group_names_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.RetrieveGroupNames"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_type": "oidc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_group_names_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/retrieve_group_names_example_call_tool.py deleted file mode 100644 index 1c7b38e45..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/retrieve_group_names_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.RetrieveGroupNames" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_type': 'oidc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/revoke_role_from_group_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/revoke_role_from_group_example_call_tool.js deleted file mode 100644 index 75a187e96..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/revoke_role_from_group_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.RevokeRoleFromGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "group_name": "developers", - "group_type": "OIDC", - "roles_to_revoke": [ - "admin", - "editor" - ] -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/revoke_role_from_group_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/revoke_role_from_group_example_call_tool.py deleted file mode 100644 index be1bb4f1a..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/revoke_role_from_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.RevokeRoleFromGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'group_name': 'developers', 'group_type': 'OIDC', 'roles_to_revoke': ['admin', 'editor'] -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/revoke_role_permissions_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/revoke_role_permissions_example_call_tool.js deleted file mode 100644 index c65569ce7..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/revoke_role_permissions_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.RevokeRolePermissions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "role_name": "editor", - "request_body": "{\"permissions\":[]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/revoke_role_permissions_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/revoke_role_permissions_example_call_tool.py deleted file mode 100644 index 6e6ce965e..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/revoke_role_permissions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.RevokeRolePermissions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'role_name': 'editor', 'request_body': '{"permissions":[]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/revoke_user_role_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/revoke_user_role_example_call_tool.js deleted file mode 100644 index bc23e6bae..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/revoke_user_role_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.RevokeUserRole"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_id": "12345", - "roles_to_revoke": [ - "admin", - "editor" - ], - "user_type": "db" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/revoke_user_role_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/revoke_user_role_example_call_tool.py deleted file mode 100644 index bb4559443..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/revoke_user_role_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.RevokeUserRole" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_id': '12345', 'roles_to_revoke': ['admin', 'editor'], 'user_type': 'db' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/rotate_user_api_key_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/rotate_user_api_key_example_call_tool.js deleted file mode 100644 index be07a4ed0..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/rotate_user_api_key_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.RotateUserApiKey"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "database_user_name": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/rotate_user_api_key_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/rotate_user_api_key_example_call_tool.py deleted file mode 100644 index 192a9e6b7..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/rotate_user_api_key_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.RotateUserApiKey" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'database_user_name': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/update_collection_alias_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/update_collection_alias_example_call_tool.js deleted file mode 100644 index 86e82a911..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/update_collection_alias_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.UpdateCollectionAlias"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "alias_name": "myAlias", - "new_collection_name": "newCollection" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/update_collection_alias_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/update_collection_alias_example_call_tool.py deleted file mode 100644 index 3b589420c..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/update_collection_alias_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.UpdateCollectionAlias" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'alias_name': 'myAlias', 'new_collection_name': 'newCollection' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/update_collection_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/update_collection_settings_example_call_tool.js deleted file mode 100644 index a55b76d0d..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/update_collection_settings_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.UpdateCollectionSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "collection_name_to_update": "myCollection", - "request_body": "{\"setting1\":\"value1\",\"setting2\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/update_collection_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/update_collection_settings_example_call_tool.py deleted file mode 100644 index c15ce267f..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/update_collection_settings_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.UpdateCollectionSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'collection_name_to_update': 'myCollection', - 'request_body': '{"setting1":"value1","setting2":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/update_data_object_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/update_data_object_example_call_tool.js deleted file mode 100644 index 46d5c0ec6..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/update_data_object_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.UpdateDataObject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "collection_name": "users", - "object_uuid": "123e4567-e89b-12d3-a456-426614174000", - "consistency_level": "quorum", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/update_data_object_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/update_data_object_example_call_tool.py deleted file mode 100644 index 75401a383..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/update_data_object_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.UpdateDataObject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'collection_name': 'users', - 'object_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'consistency_level': 'quorum', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/update_object_properties_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/update_object_properties_example_call_tool.js deleted file mode 100644 index b21394724..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/update_object_properties_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.UpdateObjectProperties"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "collection_name": "User", - "object_uuid": "123e4567-e89b-12d3-a456-426614174000", - "required_replica_acknowledgement": "2", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/update_object_properties_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/update_object_properties_example_call_tool.py deleted file mode 100644 index 9aa2a5815..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/update_object_properties_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.UpdateObjectProperties" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'collection_name': 'User', - 'object_uuid': '123e4567-e89b-12d3-a456-426614174000', - 'required_replica_acknowledgement': '2', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/update_shard_status_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/update_shard_status_example_call_tool.js deleted file mode 100644 index d0291c213..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/update_shard_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.UpdateShardStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "collection_name": "my_collection", - "shard_name": "shard_1", - "shard_status": "READY" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/update_shard_status_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/update_shard_status_example_call_tool.py deleted file mode 100644 index e3c305abe..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/update_shard_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.UpdateShardStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'collection_name': 'my_collection', 'shard_name': 'shard_1', 'shard_status': 'READY' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/update_tenant_status_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/update_tenant_status_example_call_tool.js deleted file mode 100644 index 225f7790f..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/update_tenant_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.UpdateTenantStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "collection_name": "Tenants", - "request_body": "{\"tenantIds\":[\"tenant1\",\"tenant2\"],\"status\":\"ACTIVE\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/update_tenant_status_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/update_tenant_status_example_call_tool.py deleted file mode 100644 index f2368dbd9..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/update_tenant_status_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.UpdateTenantStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'collection_name': 'Tenants', - 'request_body': '{"tenantIds":["tenant1","tenant2"],"status":"ACTIVE"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/weaviate_api/validate_data_object_structure_example_call_tool.js b/public/examples/integrations/mcp-servers/weaviate_api/validate_data_object_structure_example_call_tool.js deleted file mode 100644 index 14ffcb8cc..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/validate_data_object_structure_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "WeaviateApi.ValidateDataObjectStructure"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "request_body": "{\"name\":\"Sample Object\",\"type\":\"example\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/weaviate_api/validate_data_object_structure_example_call_tool.py b/public/examples/integrations/mcp-servers/weaviate_api/validate_data_object_structure_example_call_tool.py deleted file mode 100644 index 6cf6c5d5f..000000000 --- a/public/examples/integrations/mcp-servers/weaviate_api/validate_data_object_structure_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "WeaviateApi.ValidateDataObjectStructure" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'request_body': '{"name":"Sample Object","type":"example"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/x/delete_tweet_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/x/delete_tweet_by_id_example_call_tool.js deleted file mode 100644 index 238e6c8c8..000000000 --- a/public/examples/integrations/mcp-servers/x/delete_tweet_by_id_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "X.DeleteTweetById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tweet_id": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/x/delete_tweet_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/x/delete_tweet_by_id_example_call_tool.py deleted file mode 100644 index 7d34c2622..000000000 --- a/public/examples/integrations/mcp-servers/x/delete_tweet_by_id_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "X.DeleteTweetById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tweet_id': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/x/lookup_single_user_by_username_example_call_tool.js b/public/examples/integrations/mcp-servers/x/lookup_single_user_by_username_example_call_tool.js deleted file mode 100644 index c1e497cbf..000000000 --- a/public/examples/integrations/mcp-servers/x/lookup_single_user_by_username_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "X.LookupSingleUserByUsername"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "username": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/x/lookup_single_user_by_username_example_call_tool.py b/public/examples/integrations/mcp-servers/x/lookup_single_user_by_username_example_call_tool.py deleted file mode 100644 index 6c58839d0..000000000 --- a/public/examples/integrations/mcp-servers/x/lookup_single_user_by_username_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "X.LookupSingleUserByUsername" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'username': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/x/lookup_tweet_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/x/lookup_tweet_by_id_example_call_tool.js deleted file mode 100644 index d073913df..000000000 --- a/public/examples/integrations/mcp-servers/x/lookup_tweet_by_id_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "X.LookupTweetById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tweet_id": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/x/lookup_tweet_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/x/lookup_tweet_by_id_example_call_tool.py deleted file mode 100644 index 60357cec0..000000000 --- a/public/examples/integrations/mcp-servers/x/lookup_tweet_by_id_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "X.LookupTweetById" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tweet_id': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/x/post_tweet_example_call_tool.js b/public/examples/integrations/mcp-servers/x/post_tweet_example_call_tool.js deleted file mode 100644 index 5e167b70a..000000000 --- a/public/examples/integrations/mcp-servers/x/post_tweet_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "X.PostTweet"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tweet_text": "Excited to share my latest project!", - "quote_tweet_id": "1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/x/post_tweet_example_call_tool.py b/public/examples/integrations/mcp-servers/x/post_tweet_example_call_tool.py deleted file mode 100644 index adc7aa9ad..000000000 --- a/public/examples/integrations/mcp-servers/x/post_tweet_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "X.PostTweet" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tweet_text': 'Excited to share my latest project!', 'quote_tweet_id': '1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/x/reply_to_tweet_example_call_tool.js b/public/examples/integrations/mcp-servers/x/reply_to_tweet_example_call_tool.js deleted file mode 100644 index 767364211..000000000 --- a/public/examples/integrations/mcp-servers/x/reply_to_tweet_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "X.ReplyToTweet"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tweet_id": "1234567890", - "tweet_text": "This is a reply to your tweet!", - "quote_tweet_id": "0987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/x/reply_to_tweet_example_call_tool.py b/public/examples/integrations/mcp-servers/x/reply_to_tweet_example_call_tool.py deleted file mode 100644 index 590f010d9..000000000 --- a/public/examples/integrations/mcp-servers/x/reply_to_tweet_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "X.ReplyToTweet" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tweet_id': '1234567890', - 'tweet_text': 'This is a reply to your tweet!', - 'quote_tweet_id': '0987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/x/search_recent_tweets_by_keywords_example_call_tool.js b/public/examples/integrations/mcp-servers/x/search_recent_tweets_by_keywords_example_call_tool.js deleted file mode 100644 index a0ed7e725..000000000 --- a/public/examples/integrations/mcp-servers/x/search_recent_tweets_by_keywords_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "X.SearchRecentTweetsByKeywords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "keywords": [ - "AI", - "machine learning" - ], - "max_results": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/x/search_recent_tweets_by_keywords_example_call_tool.py b/public/examples/integrations/mcp-servers/x/search_recent_tweets_by_keywords_example_call_tool.py deleted file mode 100644 index 58a67e466..000000000 --- a/public/examples/integrations/mcp-servers/x/search_recent_tweets_by_keywords_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "X.SearchRecentTweetsByKeywords" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'keywords': ['AI', 'machine learning'], 'max_results': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/x/search_recent_tweets_by_username_example_call_tool.js b/public/examples/integrations/mcp-servers/x/search_recent_tweets_by_username_example_call_tool.js deleted file mode 100644 index cf73a1a91..000000000 --- a/public/examples/integrations/mcp-servers/x/search_recent_tweets_by_username_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "X.SearchRecentTweetsByUsername"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "username": "example_user", - "max_results": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/x/search_recent_tweets_by_username_example_call_tool.py b/public/examples/integrations/mcp-servers/x/search_recent_tweets_by_username_example_call_tool.py deleted file mode 100644 index 7e73464ae..000000000 --- a/public/examples/integrations/mcp-servers/x/search_recent_tweets_by_username_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "X.SearchRecentTweetsByUsername" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'username': 'example_user', 'max_results': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/add_contact_history_record_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/add_contact_history_record_example_call_tool.js deleted file mode 100644 index a258447b5..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/add_contact_history_record_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.AddContactHistoryRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_unique_identifier": "4f8a2b9e-1c3d-4a6b-9f2e-abc123def456", - "tenant_identifier": "tenant_7890xyz", - "idempotency_key": "addhistory-2025-10-06-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/add_contact_history_record_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/add_contact_history_record_example_call_tool.py deleted file mode 100644 index cc04b5a11..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/add_contact_history_record_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.AddContactHistoryRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_unique_identifier': '4f8a2b9e-1c3d-4a6b-9f2e-abc123def456', - 'tenant_identifier': 'tenant_7890xyz', - 'idempotency_key': 'addhistory-2025-10-06-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/add_expense_claim_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/add_expense_claim_history_example_call_tool.js deleted file mode 100644 index 977858d06..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/add_expense_claim_history_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.AddExpenseClaimHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "expense_claim_id": "ec-7890", - "xero_tenant_id": "tenant-12345", - "idempotency_key": "retry-20251006-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/add_expense_claim_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/add_expense_claim_history_example_call_tool.py deleted file mode 100644 index b5a64f782..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/add_expense_claim_history_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.AddExpenseClaimHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'expense_claim_id': 'ec-7890', - 'xero_tenant_id': 'tenant-12345', - 'idempotency_key': 'retry-20251006-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/add_quote_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/add_quote_history_example_call_tool.js deleted file mode 100644 index d471f996e..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/add_quote_history_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.AddQuoteHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "quote_identifier": "Q-2025-0001", - "xero_tenant_id": "tenant_12ab34cd-56ef-78gh", - "idempotency_key": "addhist-20251006-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/add_quote_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/add_quote_history_example_call_tool.py deleted file mode 100644 index 74c89889e..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/add_quote_history_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.AddQuoteHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'quote_identifier': 'Q-2025-0001', - 'xero_tenant_id': 'tenant_12ab34cd-56ef-78gh', - 'idempotency_key': 'addhist-20251006-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/create_bank_transaction_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/create_bank_transaction_history_example_call_tool.js deleted file mode 100644 index cb6d176c9..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_bank_transaction_history_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.CreateBankTransactionHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "bank_transaction_id": "btrx_9f8e7d6c", - "tenant_id": "tenant_12345", - "idempotency_key": "create-history-2025-10-06-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/create_bank_transaction_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/create_bank_transaction_history_example_call_tool.py deleted file mode 100644 index e217ea041..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_bank_transaction_history_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.CreateBankTransactionHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'bank_transaction_id': 'btrx_9f8e7d6c', - 'tenant_id': 'tenant_12345', - 'idempotency_key': 'create-history-2025-10-06-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/create_bank_transfer_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/create_bank_transfer_history_example_call_tool.js deleted file mode 100644 index 206731329..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_bank_transfer_history_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.CreateBankTransferHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "bank_transfer_id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", - "xero_tenant_id": "tenant-9f8e7d6c5b4a", - "idempotency_key": "retry-2025-10-06-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/create_bank_transfer_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/create_bank_transfer_history_example_call_tool.py deleted file mode 100644 index d0882b4b4..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_bank_transfer_history_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.CreateBankTransferHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'bank_transfer_id': 'a1b2c3d4-e5f6-7890-ab12-cd34ef567890', - 'xero_tenant_id': 'tenant-9f8e7d6c5b4a', - 'idempotency_key': 'retry-2025-10-06-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/create_batch_payment_history_record_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/create_batch_payment_history_record_example_call_tool.js deleted file mode 100644 index c3be17636..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_batch_payment_history_record_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.CreateBatchPaymentHistoryRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_payment_id": "bp_9f8a7c3e", - "xero_tenant_identifier": "tenant_12345abcd", - "idempotency_key": "create-history-2025-10-06-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/create_batch_payment_history_record_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/create_batch_payment_history_record_example_call_tool.py deleted file mode 100644 index d7ba1fdf9..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_batch_payment_history_record_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.CreateBatchPaymentHistoryRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_payment_id': 'bp_9f8a7c3e', - 'xero_tenant_identifier': 'tenant_12345abcd', - 'idempotency_key': 'create-history-2025-10-06-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/create_invoice_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/create_invoice_history_example_call_tool.js deleted file mode 100644 index fae00a32a..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_invoice_history_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.CreateInvoiceHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", - "tenant_identifier": "a1b2c3d4-tenant-5678", - "idempotency_key": "retry-2025-10-06-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/create_invoice_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/create_invoice_history_example_call_tool.py deleted file mode 100644 index 65c5a54da..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_invoice_history_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.CreateInvoiceHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479', - 'tenant_identifier': 'a1b2c3d4-tenant-5678', - 'idempotency_key': 'retry-2025-10-06-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/create_item_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/create_item_history_example_call_tool.js deleted file mode 100644 index 076e41681..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_item_history_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.CreateItemHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "item_id": "a1b2c3d4-item-9876", - "tenant_identifier": "tenant-12345", - "idempotency_key": "create-history-2025-10-06-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/create_item_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/create_item_history_example_call_tool.py deleted file mode 100644 index 6925a0ef9..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_item_history_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.CreateItemHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'item_id': 'a1b2c3d4-item-9876', - 'tenant_identifier': 'tenant-12345', - 'idempotency_key': 'create-history-2025-10-06-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/create_journal_history_record_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/create_journal_history_record_example_call_tool.js deleted file mode 100644 index 15bfe5268..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_journal_history_record_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.CreateJournalHistoryRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "manual_journal_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "tenant_identifier": "tenant_987654321", - "idempotency_key": "retry-2025-10-06-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/create_journal_history_record_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/create_journal_history_record_example_call_tool.py deleted file mode 100644 index 9108d44a9..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_journal_history_record_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.CreateJournalHistoryRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'manual_journal_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', - 'tenant_identifier': 'tenant_987654321', - 'idempotency_key': 'retry-2025-10-06-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/create_payment_history_record_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/create_payment_history_record_example_call_tool.js deleted file mode 100644 index 35c388150..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_payment_history_record_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.CreatePaymentHistoryRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_identifier": "a1b2c3d4-5e6f-7890-ab12-cd34ef567890", - "xero_tenant_id": "d9f8e7c6-b5a4-3210-9fed-cba987654321", - "idempotency_key": "payment-history-2025-10-06-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/create_payment_history_record_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/create_payment_history_record_example_call_tool.py deleted file mode 100644 index 22828c025..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_payment_history_record_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.CreatePaymentHistoryRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_identifier': 'a1b2c3d4-5e6f-7890-ab12-cd34ef567890', - 'xero_tenant_id': 'd9f8e7c6-b5a4-3210-9fed-cba987654321', - 'idempotency_key': 'payment-history-2025-10-06-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/create_prepayment_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/create_prepayment_history_example_call_tool.js deleted file mode 100644 index 8171df7d6..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_prepayment_history_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.CreatePrepaymentHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "prepayment_id": "3f9a1b2e-4c7d-4a8b-91f2-abc123def456", - "xero_tenant_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", - "idempotency_key": "create-history-2025-10-06-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/create_prepayment_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/create_prepayment_history_example_call_tool.py deleted file mode 100644 index d9e1eafbc..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_prepayment_history_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.CreatePrepaymentHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'prepayment_id': '3f9a1b2e-4c7d-4a8b-91f2-abc123def456', - 'xero_tenant_id': 'a1b2c3d4-e5f6-7890-abcd-ef1234567890', - 'idempotency_key': 'create-history-2025-10-06-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/create_purchase_order_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/create_purchase_order_history_example_call_tool.js deleted file mode 100644 index 087d34169..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_purchase_order_history_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.CreatePurchaseOrderHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "purchase_order_id": "PO-48291", - "tenant_identifier": "tenant_9f8a7b3c", - "idempotency_key": "retry-20251006-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/create_purchase_order_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/create_purchase_order_history_example_call_tool.py deleted file mode 100644 index 162b99088..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_purchase_order_history_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.CreatePurchaseOrderHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'purchase_order_id': 'PO-48291', - 'tenant_identifier': 'tenant_9f8a7b3c', - 'idempotency_key': 'retry-20251006-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/create_repeating_invoice_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/create_repeating_invoice_history_example_call_tool.js deleted file mode 100644 index fec76239e..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_repeating_invoice_history_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.CreateRepeatingInvoiceHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repeating_invoice_id": "rptinv_9a1b2c3d4e", - "tenant_identifier": "tenant_12345", - "idempotency_key": "try-20251006-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/create_repeating_invoice_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/create_repeating_invoice_history_example_call_tool.py deleted file mode 100644 index 2e66440ca..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/create_repeating_invoice_history_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.CreateRepeatingInvoiceHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repeating_invoice_id': 'rptinv_9a1b2c3d4e', - 'tenant_identifier': 'tenant_12345', - 'idempotency_key': 'try-20251006-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_account_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/delete_account_example_call_tool.js deleted file mode 100644 index 769b6589b..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_account_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.DeleteAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", - "xero_tenant_identifier": "a1b2c3d4-e5f6-7890-ab12-34567890cdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_account_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/delete_account_example_call_tool.py deleted file mode 100644 index 9740859d1..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_account_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.DeleteAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479', - 'xero_tenant_identifier': 'a1b2c3d4-e5f6-7890-ab12-34567890cdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_credit_note_allocation_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/delete_credit_note_allocation_example_call_tool.js deleted file mode 100644 index 2b6b4ee8c..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_credit_note_allocation_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.DeleteCreditNoteAllocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "credit_note_unique_id": "c9f1e8b2-4a6d-4f3b-9a2e-1b2c3d4e5f60", - "allocation_id": "a7d3f9b1-2c4e-4a8b-9f0d-6e7b8c9d0e1f", - "xero_tenant_id": "b2d3c4e5-6789-0123-4567-89abcdef0123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_credit_note_allocation_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/delete_credit_note_allocation_example_call_tool.py deleted file mode 100644 index 461b54e6a..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_credit_note_allocation_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.DeleteCreditNoteAllocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'credit_note_unique_id': 'c9f1e8b2-4a6d-4f3b-9a2e-1b2c3d4e5f60', - 'allocation_id': 'a7d3f9b1-2c4e-4a8b-9f0d-6e7b8c9d0e1f', - 'xero_tenant_id': 'b2d3c4e5-6789-0123-4567-89abcdef0123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_inventory_item_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/delete_inventory_item_example_call_tool.js deleted file mode 100644 index 60cd6c273..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_inventory_item_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.DeleteInventoryItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "item_id": "INV-1001", - "tenant_identifier": "tenant-abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_inventory_item_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/delete_inventory_item_example_call_tool.py deleted file mode 100644 index f4ed1ecee..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_inventory_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.DeleteInventoryItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'item_id': 'INV-1001', 'tenant_identifier': 'tenant-abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_linked_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/delete_linked_transaction_example_call_tool.js deleted file mode 100644 index 1026ec9ff..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_linked_transaction_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.DeleteLinkedTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "linked_transaction_id": "a1b2c3d4-e5f6-7890-ab12-345cdef67890", - "xero_tenant_identifier": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_linked_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/delete_linked_transaction_example_call_tool.py deleted file mode 100644 index ae8c05bb3..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_linked_transaction_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.DeleteLinkedTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'linked_transaction_id': 'a1b2c3d4-e5f6-7890-ab12-345cdef67890', - 'xero_tenant_identifier': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_overpayment_allocation_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/delete_overpayment_allocation_example_call_tool.js deleted file mode 100644 index a111455b3..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_overpayment_allocation_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.DeleteOverpaymentAllocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "overpayment_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "allocation_id": "alloc-98765", - "xero_tenant_identifier": "tenant-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_overpayment_allocation_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/delete_overpayment_allocation_example_call_tool.py deleted file mode 100644 index 525b8b755..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_overpayment_allocation_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.DeleteOverpaymentAllocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'overpayment_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', - 'allocation_id': 'alloc-98765', - 'xero_tenant_identifier': 'tenant-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_prepayment_allocation_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/delete_prepayment_allocation_example_call_tool.js deleted file mode 100644 index 37ad7bd4c..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_prepayment_allocation_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.DeletePrepaymentAllocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "prepayment_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "allocation_id": "f0e1d2c3-b4a5-6789-0abc-def123456789", - "xero_tenant_identifier": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_prepayment_allocation_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/delete_prepayment_allocation_example_call_tool.py deleted file mode 100644 index 674210821..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_prepayment_allocation_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.DeletePrepaymentAllocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'prepayment_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', - 'allocation_id': 'f0e1d2c3-b4a5-6789-0abc-def123456789', - 'xero_tenant_identifier': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_tenant_connection_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/delete_tenant_connection_example_call_tool.js deleted file mode 100644 index e68971f36..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_tenant_connection_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.DeleteTenantConnection"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_connection_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_tenant_connection_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/delete_tenant_connection_example_call_tool.py deleted file mode 100644 index a4fc308f5..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_tenant_connection_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.DeleteTenantConnection" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_connection_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_tracking_option_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/delete_tracking_option_example_call_tool.js deleted file mode 100644 index 5f5b30e7a..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_tracking_option_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.DeleteTrackingOption"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tracking_category_id": "d3f9a7b2-1c4e-4a9b-8f2e", - "tracking_option_id": "opt-42b7c1", - "xero_tenant_id": "tenant-8a12" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/delete_tracking_option_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/delete_tracking_option_example_call_tool.py deleted file mode 100644 index b8504cd6e..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/delete_tracking_option_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.DeleteTrackingOption" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tracking_category_id': 'd3f9a7b2-1c4e-4a9b-8f2e', - 'tracking_option_id': 'opt-42b7c1', - 'xero_tenant_id': 'tenant-8a12' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/fetch_all_xero_contacts_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/fetch_all_xero_contacts_example_call_tool.js deleted file mode 100644 index 195137d9d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/fetch_all_xero_contacts_example_call_tool.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.FetchAllXeroContacts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_identifier": "org_abc123", - "filter_by_element": "EmailAddress.EndsWith('@example.com')", - "sort_order": "Name ASC", - "contact_ids": [ - "c1f8a9b2-3d4e-11ec-9bbc-0242ac130002", - "d2f9b0c3-4e5f-11ec-9bbc-0242ac130003" - ], - "pagination_page_number": 1, - "search_term": "Acme", - "records_per_page": 50, - "modified_since_timestamp": "2025-01-01T00:00:00Z", - "include_archived_contacts": false, - "retrieve_summary_only_contacts": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/fetch_all_xero_contacts_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/fetch_all_xero_contacts_example_call_tool.py deleted file mode 100644 index 8a793d553..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/fetch_all_xero_contacts_example_call_tool.py +++ /dev/null @@ -1,38 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.FetchAllXeroContacts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_identifier': 'org_abc123', - 'filter_by_element': "EmailAddress.EndsWith('@example.com')", - 'sort_order': 'Name ASC', - 'contact_ids': ['c1f8a9b2-3d4e-11ec-9bbc-0242ac130002', 'd2f9b0c3-4e5f-11ec-9bbc-0242ac130003'], - 'pagination_page_number': 1, - 'search_term': 'Acme', - 'records_per_page': 50, - 'modified_since_timestamp': '2025-01-01T00:00:00Z', - 'include_archived_contacts': False, - 'retrieve_summary_only_contacts': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/fetch_bank_transfer_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/fetch_bank_transfer_attachment_example_call_tool.js deleted file mode 100644 index ef19e3274..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/fetch_bank_transfer_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.FetchBankTransferAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "bank_transfer_unique_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", - "attachment_id": "att_9b8f7e6d", - "tenant_identifier": "tenant_12345", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/fetch_bank_transfer_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/fetch_bank_transfer_attachment_example_call_tool.py deleted file mode 100644 index 007efe623..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/fetch_bank_transfer_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.FetchBankTransferAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'bank_transfer_unique_id': '3fa85f64-5717-4562-b3fc-2c963f66afa6', - 'attachment_id': 'att_9b8f7e6d', - 'tenant_identifier': 'tenant_12345', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/fetch_credit_note_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/fetch_credit_note_history_example_call_tool.js deleted file mode 100644 index abf0880e7..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/fetch_credit_note_history_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.FetchCreditNoteHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "credit_note_id": "cnote-98765", - "xero_tenant_id": "tenant-12345", - "idempotency_key": "retry-req-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/fetch_credit_note_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/fetch_credit_note_history_example_call_tool.py deleted file mode 100644 index eeba354f5..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/fetch_credit_note_history_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.FetchCreditNoteHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'credit_note_id': 'cnote-98765', - 'xero_tenant_id': 'tenant-12345', - 'idempotency_key': 'retry-req-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/fetch_invoice_payments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/fetch_invoice_payments_example_call_tool.js deleted file mode 100644 index e8a679452..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/fetch_invoice_payments_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.FetchInvoicePayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_identifier": "a1b2c3d4-5678-90ab-cdef-EXAMPLETENANT", - "filter_condition": "Status==\"AUTHORISED\" AND Amount>100", - "order_by": "Date DESC", - "page_number": 1, - "records_per_page": 50, - "modified_since_timestamp": "2025-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/fetch_invoice_payments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/fetch_invoice_payments_example_call_tool.py deleted file mode 100644 index 4690a521c..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/fetch_invoice_payments_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.FetchInvoicePayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_identifier': 'a1b2c3d4-5678-90ab-cdef-EXAMPLETENANT', - 'filter_condition': 'Status=="AUTHORISED" AND Amount>100', - 'order_by': 'Date DESC', - 'page_number': 1, - 'records_per_page': 50, - 'modified_since_timestamp': '2025-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/fetch_purchase_order_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/fetch_purchase_order_attachment_example_call_tool.js deleted file mode 100644 index c18e6aa66..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/fetch_purchase_order_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.FetchPurchaseOrderAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "purchase_order_id": "PO-8f3a2b", - "attachment_id": "ATT-4c9d1e", - "xero_tenant_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/fetch_purchase_order_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/fetch_purchase_order_attachment_example_call_tool.py deleted file mode 100644 index 9d01da832..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/fetch_purchase_order_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.FetchPurchaseOrderAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'purchase_order_id': 'PO-8f3a2b', - 'attachment_id': 'ATT-4c9d1e', - 'xero_tenant_id': 'a1b2c3d4-e5f6-7890-abcd-ef1234567890', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_aged_payables_report_by_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_aged_payables_report_by_contact_example_call_tool.js deleted file mode 100644 index f3f321106..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_aged_payables_report_by_contact_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetAgedPayablesReportByContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_identifier": "c12345", - "xero_tenant_identifier": "t67890", - "report_date": "2025-09-30", - "report_from_date": "2025-09-01", - "report_end_date": "2025-09-30" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_aged_payables_report_by_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_aged_payables_report_by_contact_example_call_tool.py deleted file mode 100644 index 8b60dda7f..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_aged_payables_report_by_contact_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetAgedPayablesReportByContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_identifier': 'c12345', - 'xero_tenant_identifier': 't67890', - 'report_date': '2025-09-30', - 'report_from_date': '2025-09-01', - 'report_end_date': '2025-09-30' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_aged_receivables_report_by_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_aged_receivables_report_by_contact_example_call_tool.js deleted file mode 100644 index 1b3ead500..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_aged_receivables_report_by_contact_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetAgedReceivablesReportByContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_identifier": "c7890abc-def1-2345-6789-abcdef012345", - "tenant_identifier": "tnt-11223344-5566-7788", - "report_date": "2025-09-30", - "start_date_filter": "2025-07-01", - "filter_by_to_date": "2025-09-30" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_aged_receivables_report_by_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_aged_receivables_report_by_contact_example_call_tool.py deleted file mode 100644 index 7a176d5ab..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_aged_receivables_report_by_contact_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetAgedReceivablesReportByContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_identifier': 'c7890abc-def1-2345-6789-abcdef012345', - 'tenant_identifier': 'tnt-11223344-5566-7788', - 'report_date': '2025-09-30', - 'start_date_filter': '2025-07-01', - 'filter_by_to_date': '2025-09-30' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_balance_sheet_report_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_balance_sheet_report_example_call_tool.js deleted file mode 100644 index 7e5e3a751..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_balance_sheet_report_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetBalanceSheetReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_identifier": "a1b2c3d4-tenant", - "report_date": "2025-09-30", - "number_of_periods": 3, - "comparison_timeframe": "MONTH", - "balance_sheet_tracking_option_id_1": "track-01", - "tracking_option_id_2": "track-02", - "use_standard_layout": true, - "return_cash_basis": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_balance_sheet_report_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_balance_sheet_report_example_call_tool.py deleted file mode 100644 index e28d0ca62..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_balance_sheet_report_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetBalanceSheetReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_identifier': 'a1b2c3d4-tenant', - 'report_date': '2025-09-30', - 'number_of_periods': 3, - 'comparison_timeframe': 'MONTH', - 'balance_sheet_tracking_option_id_1': 'track-01', - 'tracking_option_id_2': 'track-02', - 'use_standard_layout': True, - 'return_cash_basis': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_bank_summary_report_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_bank_summary_report_example_call_tool.js deleted file mode 100644 index f70e502ea..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_bank_summary_report_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetBankSummaryReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "start_date_filter": "2025-09-01", - "end_date_filter": "2025-09-30" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_bank_summary_report_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_bank_summary_report_example_call_tool.py deleted file mode 100644 index ce22abf87..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_bank_summary_report_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetBankSummaryReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', - 'start_date_filter': '2025-09-01', - 'end_date_filter': '2025-09-30' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_bank_transaction_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_bank_transaction_attachment_example_call_tool.js deleted file mode 100644 index 4a2cf27c0..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_bank_transaction_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetBankTransactionAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "bank_transaction_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "attachment_filename": "receipt.pdf", - "xero_tenant_identifier": "tenant-98f7b6a5", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_bank_transaction_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_bank_transaction_attachment_example_call_tool.py deleted file mode 100644 index 103bf7b51..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_bank_transaction_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetBankTransactionAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'bank_transaction_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', - 'attachment_filename': 'receipt.pdf', - 'xero_tenant_identifier': 'tenant-98f7b6a5', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_bank_transaction_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_bank_transaction_history_example_call_tool.js deleted file mode 100644 index 57858b90d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_bank_transaction_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetBankTransactionHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "bank_transaction_id": "d3f9a8b2-1c4e-4f6a-9b2e-123456abcdef", - "tenant_identifier": "tenant_7890abcd" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_bank_transaction_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_bank_transaction_history_example_call_tool.py deleted file mode 100644 index 133f339ae..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_bank_transaction_history_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetBankTransactionHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'bank_transaction_id': 'd3f9a8b2-1c4e-4f6a-9b2e-123456abcdef', - 'tenant_identifier': 'tenant_7890abcd' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_bank_transfer_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_bank_transfer_history_example_call_tool.js deleted file mode 100644 index 10f2e5d4c..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_bank_transfer_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetBankTransferHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "bank_transfer_id": "btrf-9f47c3a2", - "tenant_identifier": "tenant-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_bank_transfer_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_bank_transfer_history_example_call_tool.py deleted file mode 100644 index 51eb171d4..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_bank_transfer_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetBankTransferHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'bank_transfer_id': 'btrf-9f47c3a2', 'tenant_identifier': 'tenant-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_batch_payment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_batch_payment_details_example_call_tool.js deleted file mode 100644 index 8f7d5b64e..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_batch_payment_details_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetBatchPaymentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_payment_id": "bpay_12345", - "xero_tenant_id": "tenant_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_batch_payment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_batch_payment_details_example_call_tool.py deleted file mode 100644 index a54efe07f..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_batch_payment_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetBatchPaymentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_payment_id': 'bpay_12345', 'xero_tenant_id': 'tenant_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_branding_themes_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_branding_themes_example_call_tool.js deleted file mode 100644 index a1c03b132..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_branding_themes_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetBrandingThemes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_id": "d0f8e6a2-1234-4b9f-9c3e-7a1b2c3d4e5f" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_branding_themes_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_branding_themes_example_call_tool.py deleted file mode 100644 index c9066648a..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_branding_themes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetBrandingThemes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_id': 'd0f8e6a2-1234-4b9f-9c3e-7a1b2c3d4e5f' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_budget_summary_report_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_budget_summary_report_example_call_tool.js deleted file mode 100644 index 934bd6e61..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_budget_summary_report_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetBudgetSummaryReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_identifier": "a1b2c3d4-tenant-uuid", - "report_date": "2025-09-30", - "number_of_periods_to_compare": 3, - "comparison_timeframe": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_budget_summary_report_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_budget_summary_report_example_call_tool.py deleted file mode 100644 index 6f7349d17..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_budget_summary_report_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetBudgetSummaryReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_identifier': 'a1b2c3d4-tenant-uuid', - 'report_date': '2025-09-30', - 'number_of_periods_to_compare': 3, - 'comparison_timeframe': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_cis_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_cis_settings_example_call_tool.js deleted file mode 100644 index 65a367d86..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_cis_settings_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetCisSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organisation_id": "a1b2c3d4-e5f6-7890-abcd-ef0123456789", - "xero_tenant_identifier": "tenant-9876543210" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_cis_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_cis_settings_example_call_tool.py deleted file mode 100644 index c0bc7bfde..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_cis_settings_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetCisSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organisation_id': 'a1b2c3d4-e5f6-7890-abcd-ef0123456789', - 'xero_tenant_identifier': 'tenant-9876543210' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_connected_tenants_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_connected_tenants_example_call_tool.js deleted file mode 100644 index 478127c50..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_connected_tenants_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetConnectedTenants"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "filter_auth_event_id": "authevt_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_connected_tenants_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_connected_tenants_example_call_tool.py deleted file mode 100644 index bb7fc4559..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_connected_tenants_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetConnectedTenants" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'filter_auth_event_id': 'authevt_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_contact_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_contact_attachment_example_call_tool.js deleted file mode 100644 index 2905d7776..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_contact_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetContactAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_identifier": "c1a2b3d4-5678-90ab-cdef-111213141516", - "attachment_file_name": "contract.pdf", - "xero_tenant_identifier": "tnt-99887766", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_contact_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_contact_attachment_example_call_tool.py deleted file mode 100644 index 8d73f0e82..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_contact_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetContactAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_identifier': 'c1a2b3d4-5678-90ab-cdef-111213141516', - 'attachment_file_name': 'contract.pdf', - 'xero_tenant_identifier': 'tnt-99887766', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_contact_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_contact_attachments_example_call_tool.js deleted file mode 100644 index 0c2eaabf5..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_contact_attachments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetContactAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id": "c3f9a8b2-4e6d-4a1b-9f2d-123456789abc", - "xero_tenant_identifier": "b7d2e9f0-8c4a-4f3b-9a1e-987654321def" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_contact_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_contact_attachments_example_call_tool.py deleted file mode 100644 index 6e63d6b10..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_contact_attachments_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetContactAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id': 'c3f9a8b2-4e6d-4a1b-9f2d-123456789abc', - 'xero_tenant_identifier': 'b7d2e9f0-8c4a-4f3b-9a1e-987654321def' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_contact_cis_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_contact_cis_settings_example_call_tool.js deleted file mode 100644 index 3a6fc5b6e..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_contact_cis_settings_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetContactCisSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_identifier": "f3a1c9e2-7b4d-4a2f-9c1e-8b2d5e6f1234", - "tenant_identifier": "a1b2c3d4-5678-90ab-cdef-111213141516" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_contact_cis_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_contact_cis_settings_example_call_tool.py deleted file mode 100644 index 529a45eaa..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_contact_cis_settings_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetContactCisSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_identifier': 'f3a1c9e2-7b4d-4a2f-9c1e-8b2d5e6f1234', - 'tenant_identifier': 'a1b2c3d4-5678-90ab-cdef-111213141516' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_contact_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_contact_history_example_call_tool.js deleted file mode 100644 index ddd825674..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_contact_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetContactHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id": "c12345", - "tenant_identifier": "tenant_98765" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_contact_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_contact_history_example_call_tool.py deleted file mode 100644 index 4cd916b72..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_contact_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetContactHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id': 'c12345', 'tenant_identifier': 'tenant_98765' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_credit_note_attachment_example_call_tool.js deleted file mode 100644 index e2ec56ab4..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetCreditNoteAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "credit_note_id": "CN-2025-001", - "attachment_id": "ATT-9f8b7c", - "xero_tenant_identifier": "tenant_12345", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_credit_note_attachment_example_call_tool.py deleted file mode 100644 index c15f5c2a2..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetCreditNoteAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'credit_note_id': 'CN-2025-001', - 'attachment_id': 'ATT-9f8b7c', - 'xero_tenant_identifier': 'tenant_12345', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_credit_note_attachments_example_call_tool.js deleted file mode 100644 index 8d1394848..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_attachments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetCreditNoteAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "credit_note_id": "c6f8a9b2-1234-4e56-9abc-0d1e2f3a4b5c", - "tenant_identifier": "b7f3e9d4-9876-4c21-8f65-2a1b3c4d5e6f" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_credit_note_attachments_example_call_tool.py deleted file mode 100644 index 2983fe5d6..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_attachments_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetCreditNoteAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'credit_note_id': 'c6f8a9b2-1234-4e56-9abc-0d1e2f3a4b5c', - 'tenant_identifier': 'b7f3e9d4-9876-4c21-8f65-2a1b3c4d5e6f' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_credit_note_history_example_call_tool.js deleted file mode 100644 index 6c2a7e7ba..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetCreditNoteHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "credit_note_id": "cn_7f3a2b1e", - "xero_tenant_id": "tenant_9c5d4a2b" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_credit_note_history_example_call_tool.py deleted file mode 100644 index 318f67390..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetCreditNoteHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'credit_note_id': 'cn_7f3a2b1e', 'xero_tenant_id': 'tenant_9c5d4a2b' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_pdf_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_credit_note_pdf_example_call_tool.js deleted file mode 100644 index dc9296e4d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_pdf_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetCreditNotePdf"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "credit_note_id": "c9f8a7b2-1234-4e56-8abc-0d1e2f3a4b5c", - "tenant_identifier": "xero-tenant-7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_pdf_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_credit_note_pdf_example_call_tool.py deleted file mode 100644 index b6a2bc835..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_credit_note_pdf_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetCreditNotePdf" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'credit_note_id': 'c9f8a7b2-1234-4e56-8abc-0d1e2f3a4b5c', 'tenant_identifier': 'xero-tenant-7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_credit_notes_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_credit_notes_example_call_tool.js deleted file mode 100644 index 7457eeb13..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_credit_notes_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetCreditNotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_identifier": "abc123-tenant", - "filter_by_element": "Status==\"AUTHORISED\"", - "sort_credit_notes": "Date DESC", - "page_number": 1, - "unit_decimal_places": 4, - "number_of_records_per_page": 50, - "modified_since_timestamp": "2025-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_credit_notes_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_credit_notes_example_call_tool.py deleted file mode 100644 index afdf1c56e..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_credit_notes_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetCreditNotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_identifier': 'abc123-tenant', - 'filter_by_element': 'Status=="AUTHORISED"', - 'sort_credit_notes': 'Date DESC', - 'page_number': 1, - 'unit_decimal_places': 4, - 'number_of_records_per_page': 50, - 'modified_since_timestamp': '2025-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_draft_expense_receipts_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_draft_expense_receipts_example_call_tool.js deleted file mode 100644 index 1f34844bc..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_draft_expense_receipts_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetDraftExpenseReceipts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_id": "a1b2c3d4-tenant-5678", - "filter_condition": "status==\"DRAFT\" AND totalAmount>50", - "order_receipts_by": "date desc", - "unit_decimal_places": 2, - "modified_since_timestamp": "2025-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_draft_expense_receipts_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_draft_expense_receipts_example_call_tool.py deleted file mode 100644 index ec297424e..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_draft_expense_receipts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetDraftExpenseReceipts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_id': 'a1b2c3d4-tenant-5678', - 'filter_condition': 'status=="DRAFT" AND totalAmount>50', - 'order_receipts_by': 'date desc', - 'unit_decimal_places': 2, - 'modified_since_timestamp': '2025-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_expense_receipt_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_expense_receipt_attachment_example_call_tool.js deleted file mode 100644 index 05ed0a6c7..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_expense_receipt_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetExpenseReceiptAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "receipt_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "attachment_file_name": "receipt_photo.jpg", - "xero_tenant_identifier": "01234567-89ab-cdef-0123-456789abcdef", - "attachment_mime_type": "image/jpeg" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_expense_receipt_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_expense_receipt_attachment_example_call_tool.py deleted file mode 100644 index 175674275..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_expense_receipt_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetExpenseReceiptAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'receipt_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', - 'attachment_file_name': 'receipt_photo.jpg', - 'xero_tenant_identifier': '01234567-89ab-cdef-0123-456789abcdef', - 'attachment_mime_type': 'image/jpeg' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_financial_journals_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_financial_journals_example_call_tool.js deleted file mode 100644 index ad446ecdc..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_financial_journals_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetFinancialJournals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_identifier": "a1b2c3d4-tenant-uuid", - "journal_number_offset": 150, - "modified_since_timestamp": "2025-09-01T00:00:00Z", - "retrieve_cash_basis_journals": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_financial_journals_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_financial_journals_example_call_tool.py deleted file mode 100644 index f3be984da..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_financial_journals_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetFinancialJournals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_identifier': 'a1b2c3d4-tenant-uuid', - 'journal_number_offset': 150, - 'modified_since_timestamp': '2025-09-01T00:00:00Z', - 'retrieve_cash_basis_journals': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_invoice_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_invoice_attachment_example_call_tool.js deleted file mode 100644 index cce260fcf..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_invoice_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetInvoiceAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_id": "inv_12345", - "attachment_file_name": "receipt.pdf", - "tenant_identifier": "tenant_abcde", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_invoice_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_invoice_attachment_example_call_tool.py deleted file mode 100644 index 6d47cd65b..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_invoice_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetInvoiceAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_id': 'inv_12345', - 'attachment_file_name': 'receipt.pdf', - 'tenant_identifier': 'tenant_abcde', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_invoice_details_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_invoice_details_example_call_tool.js deleted file mode 100644 index c1244bd32..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_invoice_details_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetInvoiceDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_identifier": "INV-2025-1001", - "xero_tenant_id": "a1b2c3d4-5678-90ef-1234-abcdef678901", - "unit_decimal_places": 4 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_invoice_details_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_invoice_details_example_call_tool.py deleted file mode 100644 index 605e15cbe..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_invoice_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetInvoiceDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_identifier': 'INV-2025-1001', - 'xero_tenant_id': 'a1b2c3d4-5678-90ef-1234-abcdef678901', - 'unit_decimal_places': 4 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_invoice_reminder_settings_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_invoice_reminder_settings_example_call_tool.js deleted file mode 100644 index 751cc6b06..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_invoice_reminder_settings_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetInvoiceReminderSettings"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_id": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_invoice_reminder_settings_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_invoice_reminder_settings_example_call_tool.py deleted file mode 100644 index 0eaddf611..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_invoice_reminder_settings_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetInvoiceReminderSettings" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_id': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_item_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_item_history_example_call_tool.js deleted file mode 100644 index 0a845ce27..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_item_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetItemHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "item_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "xero_tenant_id": "01234567-89ab-cdef-0123-456789abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_item_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_item_history_example_call_tool.py deleted file mode 100644 index eaabc1159..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_item_history_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetItemHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'item_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', - 'xero_tenant_id': '01234567-89ab-cdef-0123-456789abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_items_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_items_example_call_tool.js deleted file mode 100644 index c029e83f0..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_items_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_id": "123e4567-e89b-12d3-a456-426614174000", - "filter_criteria": "Status==\"ACTIVE\" AND InventoryAssetAccountCode==\"200\"", - "order_by_element": "Name ASC", - "unit_decimal_places": 4, - "modified_since_timestamp": "2024-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_items_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_items_example_call_tool.py deleted file mode 100644 index 9c4f04fd2..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_items_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_id': '123e4567-e89b-12d3-a456-426614174000', - 'filter_criteria': 'Status=="ACTIVE" AND InventoryAssetAccountCode=="200"', - 'order_by_element': 'Name ASC', - 'unit_decimal_places': 4, - 'modified_since_timestamp': '2024-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_journal_attachment_by_filename_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_journal_attachment_by_filename_example_call_tool.js deleted file mode 100644 index 17de2c48c..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_journal_attachment_by_filename_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetJournalAttachmentByFilename"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "manual_journal_id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", - "attachment_file_name": "invoice-123.pdf", - "xero_tenant_identifier": "11111111-2222-3333-4444-555555555555", - "attachment_file_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_journal_attachment_by_filename_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_journal_attachment_by_filename_example_call_tool.py deleted file mode 100644 index 3bb5d0bb0..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_journal_attachment_by_filename_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetJournalAttachmentByFilename" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'manual_journal_id': 'a1b2c3d4-e5f6-7890-ab12-cd34ef567890', - 'attachment_file_name': 'invoice-123.pdf', - 'xero_tenant_identifier': '11111111-2222-3333-4444-555555555555', - 'attachment_file_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_linked_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_linked_transaction_example_call_tool.js deleted file mode 100644 index 2b79fe01d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_linked_transaction_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetLinkedTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "linked_transaction_id": "a1b2c3d4-e5f6-7890-ab12-345678cdef90", - "tenant_id": "12345678-90ab-cdef-1234-567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_linked_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_linked_transaction_example_call_tool.py deleted file mode 100644 index de6281093..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_linked_transaction_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetLinkedTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'linked_transaction_id': 'a1b2c3d4-e5f6-7890-ab12-345678cdef90', - 'tenant_id': '12345678-90ab-cdef-1234-567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_manual_journal_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_manual_journal_history_example_call_tool.js deleted file mode 100644 index 9a0328d0e..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_manual_journal_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetManualJournalHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "manual_journal_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", - "xero_tenant_id": "3bb2f6e8-9d4a-4c2a-8f1e-123456789abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_manual_journal_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_manual_journal_history_example_call_tool.py deleted file mode 100644 index 75919fa02..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_manual_journal_history_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetManualJournalHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'manual_journal_id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479', - 'xero_tenant_id': '3bb2f6e8-9d4a-4c2a-8f1e-123456789abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_overpayment_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_overpayment_history_example_call_tool.js deleted file mode 100644 index c7c69ead2..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_overpayment_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetOverpaymentHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "overpayment_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "xero_tenant_id": "tenant-98765" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_overpayment_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_overpayment_history_example_call_tool.py deleted file mode 100644 index 91cd29f6f..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_overpayment_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetOverpaymentHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'overpayment_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', 'xero_tenant_id': 'tenant-98765' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_payment_services_for_branding_theme_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_payment_services_for_branding_theme_example_call_tool.js deleted file mode 100644 index 07da50dc4..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_payment_services_for_branding_theme_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetPaymentServicesForBrandingTheme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branding_theme_id": "theme_92b1", - "xero_tenant_id": "tenant_7f3a" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_payment_services_for_branding_theme_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_payment_services_for_branding_theme_example_call_tool.py deleted file mode 100644 index ecd1b57a1..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_payment_services_for_branding_theme_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetPaymentServicesForBrandingTheme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branding_theme_id': 'theme_92b1', 'xero_tenant_id': 'tenant_7f3a' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_prepayment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_prepayment_details_example_call_tool.js deleted file mode 100644 index 23c6359d6..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_prepayment_details_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetPrepaymentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "prepayment_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "xero_tenant_id": "tenant-9876543210" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_prepayment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_prepayment_details_example_call_tool.py deleted file mode 100644 index 22cf89a2c..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_prepayment_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetPrepaymentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'prepayment_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', 'xero_tenant_id': 'tenant-9876543210' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_prepayment_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_prepayment_history_example_call_tool.js deleted file mode 100644 index b27cf57de..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_prepayment_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetPrepaymentHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "prepayment_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "xero_tenant_id": "tenant-9876543210" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_prepayment_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_prepayment_history_example_call_tool.py deleted file mode 100644 index fc214cb23..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_prepayment_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetPrepaymentHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'prepayment_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', 'xero_tenant_id': 'tenant-9876543210' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_profit_and_loss_report_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_profit_and_loss_report_example_call_tool.js deleted file mode 100644 index 799c69f01..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_profit_and_loss_report_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetProfitAndLossReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_identifier": "abc123-tenant", - "from_date": "2024-01-01", - "end_date": "2024-06-30", - "number_of_comparison_periods": 2, - "comparison_timeframe": "MONTH", - "tracking_category_id": "tc-987", - "secondary_tracking_category_id": "tc-654", - "tracking_option_1_id": "opt-12", - "tracking_option_id_2": "opt-34", - "return_standard_layout": true, - "return_cash_basis_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_profit_and_loss_report_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_profit_and_loss_report_example_call_tool.py deleted file mode 100644 index 552fa01d3..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_profit_and_loss_report_example_call_tool.py +++ /dev/null @@ -1,39 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetProfitAndLossReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_identifier': 'abc123-tenant', - 'from_date': '2024-01-01', - 'end_date': '2024-06-30', - 'number_of_comparison_periods': 2, - 'comparison_timeframe': 'MONTH', - 'tracking_category_id': 'tc-987', - 'secondary_tracking_category_id': 'tc-654', - 'tracking_option_1_id': 'opt-12', - 'tracking_option_id_2': 'opt-34', - 'return_standard_layout': True, - 'return_cash_basis_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_purchase_order_pdf_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_purchase_order_pdf_example_call_tool.js deleted file mode 100644 index 2cf9d8502..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_purchase_order_pdf_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetPurchaseOrderPdf"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "purchase_order_id": "PO-2025-000123", - "tenant_identifier": "xero-tenant-89ab" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_purchase_order_pdf_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_purchase_order_pdf_example_call_tool.py deleted file mode 100644 index 09cfb1e5a..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_purchase_order_pdf_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetPurchaseOrderPdf" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'purchase_order_id': 'PO-2025-000123', 'tenant_identifier': 'xero-tenant-89ab' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_quote_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_quote_attachment_example_call_tool.js deleted file mode 100644 index 181703677..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_quote_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetQuoteAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "quote_id": "QTE-7890", - "attachment_id": "ATT-4512", - "xero_tenant_identifier": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", - "attachment_content_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_quote_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_quote_attachment_example_call_tool.py deleted file mode 100644 index e38705e55..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_quote_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetQuoteAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'quote_id': 'QTE-7890', - 'attachment_id': 'ATT-4512', - 'xero_tenant_identifier': 'a1b2c3d4-e5f6-7890-abcd-ef1234567890', - 'attachment_content_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_receipt_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_receipt_attachments_example_call_tool.js deleted file mode 100644 index b9dda8459..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_receipt_attachments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetReceiptAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "receipt_id": "rcpt_987654321", - "tenant_identifier": "tenant_12345abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_receipt_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_receipt_attachments_example_call_tool.py deleted file mode 100644 index a7e7a9395..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_receipt_attachments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetReceiptAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'receipt_id': 'rcpt_987654321', 'tenant_identifier': 'tenant_12345abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoice_example_call_tool.js deleted file mode 100644 index 616a9c473..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoice_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetRepeatingInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repeating_invoice_id": "RPT-8901", - "tenant_id": "tenant_4b2f1a" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoice_example_call_tool.py deleted file mode 100644 index fbdc5130a..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetRepeatingInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repeating_invoice_id': 'RPT-8901', 'tenant_id': 'tenant_4b2f1a' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoice_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoice_history_example_call_tool.js deleted file mode 100644 index add9344a7..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoice_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetRepeatingInvoiceHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repeating_invoice_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", - "xero_tenant_id": "a1b2c3d4-e5f6-7890-ab12-cd34ef56gh78" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoice_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoice_history_example_call_tool.py deleted file mode 100644 index 4eebe7036..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoice_history_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetRepeatingInvoiceHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repeating_invoice_id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479', - 'xero_tenant_id': 'a1b2c3d4-e5f6-7890-ab12-cd34ef56gh78' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoices_example_call_tool.js deleted file mode 100644 index e7a5b503d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoices_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetRepeatingInvoices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_identifier": "123e4567-e89b-12d3-a456-426614174000", - "filter_by_element": "Status==\"ACTIVE\"", - "order_by_element": "NextInvoiceDate DESC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoices_example_call_tool.py deleted file mode 100644 index ada816304..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_repeating_invoices_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetRepeatingInvoices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'filter_by_element': 'Status=="ACTIVE"', - 'order_by_element': 'NextInvoiceDate DESC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_tax_rate_by_tax_type_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_tax_rate_by_tax_type_example_call_tool.js deleted file mode 100644 index 091481793..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_tax_rate_by_tax_type_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetTaxRateByTaxType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tax_type_code": "OUTPUT2", - "xero_tenant_identifier": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_tax_rate_by_tax_type_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_tax_rate_by_tax_type_example_call_tool.py deleted file mode 100644 index cbe70da3d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_tax_rate_by_tax_type_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetTaxRateByTaxType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tax_type_code': 'OUTPUT2', 'xero_tenant_identifier': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_tracking_categories_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_tracking_categories_example_call_tool.js deleted file mode 100644 index 574dc4359..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_tracking_categories_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetTrackingCategories"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_identifier": "123e4567-e89b-12d3-a456-426614174000", - "filter_conditions": "Name.StartsWith(\"Region\")", - "order_by_element": "Name", - "include_archived_categories": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_tracking_categories_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_tracking_categories_example_call_tool.py deleted file mode 100644 index 199f66f43..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_tracking_categories_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetTrackingCategories" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'filter_conditions': 'Name.StartsWith("Region")', - 'order_by_element': 'Name', - 'include_archived_categories': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_tracking_category_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_tracking_category_example_call_tool.js deleted file mode 100644 index d897a1a91..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_tracking_category_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetTrackingCategory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tracking_category_id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", - "xero_tenant_id": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_tracking_category_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_tracking_category_example_call_tool.py deleted file mode 100644 index 3b3f649d5..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_tracking_category_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetTrackingCategory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tracking_category_id': 'a1b2c3d4-e5f6-7890-ab12-cd34ef567890', - 'xero_tenant_id': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_trial_balance_report_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_trial_balance_report_example_call_tool.js deleted file mode 100644 index 050166b81..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_trial_balance_report_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetTrialBalanceReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_identifier": "123e4567-e89b-12d3-a456-426614174000", - "report_date": "2025-09-30", - "return_cash_basis_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_trial_balance_report_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_trial_balance_report_example_call_tool.py deleted file mode 100644 index 153e30d23..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_trial_balance_report_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetTrialBalanceReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'report_date': '2025-09-30', - 'return_cash_basis_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_xero_contact_by_number_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_xero_contact_by_number_example_call_tool.js deleted file mode 100644 index 79be524d6..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_xero_contact_by_number_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetXeroContactByNumber"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_number": "CUST-1001", - "xero_tenant_identifier": "123e4567-e89b-12d3-a456-426614174000" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_xero_contact_by_number_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_xero_contact_by_number_example_call_tool.py deleted file mode 100644 index 75c4c355b..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_xero_contact_by_number_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetXeroContactByNumber" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_number': 'CUST-1001', 'xero_tenant_identifier': '123e4567-e89b-12d3-a456-426614174000' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_xero_currencies_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_xero_currencies_example_call_tool.js deleted file mode 100644 index c2eb25bdd..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_xero_currencies_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetXeroCurrencies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_identifier": "a1b2c3d4-tenant-id", - "filter_criteria": "code eq \"USD\"", - "order_by": "name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_xero_currencies_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_xero_currencies_example_call_tool.py deleted file mode 100644 index a99b3d25a..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_xero_currencies_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetXeroCurrencies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_identifier': 'a1b2c3d4-tenant-id', - 'filter_criteria': 'code eq "USD"', - 'order_by': 'name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/get_xero_organisation_details_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/get_xero_organisation_details_example_call_tool.js deleted file mode 100644 index bf9661f8e..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_xero_organisation_details_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.GetXeroOrganisationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_id": "f1a2b3c4-5678-90ab-cdef-1234567890ab" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/get_xero_organisation_details_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/get_xero_organisation_details_example_call_tool.py deleted file mode 100644 index 999be4c27..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/get_xero_organisation_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.GetXeroOrganisationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_id': 'f1a2b3c4-5678-90ab-cdef-1234567890ab' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/record_overpayment_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/record_overpayment_history_example_call_tool.js deleted file mode 100644 index 4a6781c33..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/record_overpayment_history_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RecordOverpaymentHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "overpayment_id": "opay_7890abcd", - "xero_tenant_id": "tenant_12345ef", - "idempotency_key": "retry-2025-10-06-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/record_overpayment_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/record_overpayment_history_example_call_tool.py deleted file mode 100644 index 0823db14f..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/record_overpayment_history_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RecordOverpaymentHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'overpayment_id': 'opay_7890abcd', - 'xero_tenant_id': 'tenant_12345ef', - 'idempotency_key': 'retry-2025-10-06-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/record_receipt_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/record_receipt_history_example_call_tool.js deleted file mode 100644 index 06f0484a8..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/record_receipt_history_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RecordReceiptHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "receipt_id": "rcpt_7890", - "tenant_identifier": "tenant_12345", - "idempotency_key": "retry-2025-10-06-01" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/record_receipt_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/record_receipt_history_example_call_tool.py deleted file mode 100644 index 0177f8374..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/record_receipt_history_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RecordReceiptHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'receipt_id': 'rcpt_7890', - 'tenant_identifier': 'tenant_12345', - 'idempotency_key': 'retry-2025-10-06-01' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/remove_contact_from_group_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/remove_contact_from_group_example_call_tool.js deleted file mode 100644 index eca49fe60..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/remove_contact_from_group_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RemoveContactFromGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_group_id": "grp_8a2f1c", - "contact_identifier": "cnt_47b9a2", - "tenant_identifier": "tn_3f9d1e" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/remove_contact_from_group_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/remove_contact_from_group_example_call_tool.py deleted file mode 100644 index fad633092..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/remove_contact_from_group_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RemoveContactFromGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_group_id': 'grp_8a2f1c', - 'contact_identifier': 'cnt_47b9a2', - 'tenant_identifier': 'tn_3f9d1e' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/remove_contacts_from_group_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/remove_contacts_from_group_example_call_tool.js deleted file mode 100644 index 304edd093..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/remove_contacts_from_group_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RemoveContactsFromGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_group_id": "a1b2c3d4-e5f6-7890-abcd-1234567890ab", - "xero_tenant_identifier": "3f2e1d4c-5b6a-7890-cdef-0987654321ba" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/remove_contacts_from_group_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/remove_contacts_from_group_example_call_tool.py deleted file mode 100644 index acf0401f6..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/remove_contacts_from_group_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RemoveContactsFromGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_group_id': 'a1b2c3d4-e5f6-7890-abcd-1234567890ab', - 'xero_tenant_identifier': '3f2e1d4c-5b6a-7890-cdef-0987654321ba' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/remove_tracking_category_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/remove_tracking_category_example_call_tool.js deleted file mode 100644 index 75ec23273..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/remove_tracking_category_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RemoveTrackingCategory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tracking_category_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "xero_tenant_identifier": "67890abc-def1-2345-6789-abcdef012345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/remove_tracking_category_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/remove_tracking_category_example_call_tool.py deleted file mode 100644 index af3fe7ce3..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/remove_tracking_category_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RemoveTrackingCategory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tracking_category_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', - 'xero_tenant_identifier': '67890abc-def1-2345-6789-abcdef012345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve1099_reports_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve1099_reports_example_call_tool.js deleted file mode 100644 index 79f787eb6..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve1099_reports_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.Retrieve1099Reports"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_identifier": "a1b2c3d4-tenant-5678", - "report_year": "2024" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve1099_reports_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve1099_reports_example_call_tool.py deleted file mode 100644 index 5ddc52056..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve1099_reports_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.Retrieve1099Reports" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_identifier': 'a1b2c3d4-tenant-5678', 'report_year': '2024' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachment_by_filename_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachment_by_filename_example_call_tool.js deleted file mode 100644 index fe8f6cc26..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachment_by_filename_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveAccountAttachmentByFilename"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_id": "f8b2c9e4-3a1d-4b2f-9c7a-1e2d3f4a5b6c", - "attachment_file_name": "invoice-12345.pdf", - "tenant_identifier": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", - "mime_type_of_attachment": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachment_by_filename_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachment_by_filename_example_call_tool.py deleted file mode 100644 index 73c36b5ae..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachment_by_filename_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveAccountAttachmentByFilename" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_id': 'f8b2c9e4-3a1d-4b2f-9c7a-1e2d3f4a5b6c', - 'attachment_file_name': 'invoice-12345.pdf', - 'tenant_identifier': 'a1b2c3d4-e5f6-7890-abcd-ef1234567890', - 'mime_type_of_attachment': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachment_example_call_tool.js deleted file mode 100644 index d09b05c66..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveAccountAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_unique_identifier": "acc-0a1b2c3d4e", - "attachment_id": "att-9f8e7d6c5b", - "xero_tenant_identifier": "tenant-12345", - "mime_type_of_attachment": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachment_example_call_tool.py deleted file mode 100644 index d1334ab65..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveAccountAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_unique_identifier': 'acc-0a1b2c3d4e', - 'attachment_id': 'att-9f8e7d6c5b', - 'xero_tenant_identifier': 'tenant-12345', - 'mime_type_of_attachment': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachments_example_call_tool.js deleted file mode 100644 index 97593ecbf..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveAccountAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "tenant_identifier": "tenant-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachments_example_call_tool.py deleted file mode 100644 index 7a1aedba3..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_attachments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveAccountAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', 'tenant_identifier': 'tenant-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_account_details_example_call_tool.js deleted file mode 100644 index 1c69d3135..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_details_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", - "xero_tenant_identifier": "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_account_details_example_call_tool.py deleted file mode 100644 index 4e8ad9ebe..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_account_details_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_id': '3fa85f64-5717-4562-b3fc-2c963f66afa6', - 'xero_tenant_identifier': 'a1b2c3d4-e5f6-7890-abcd-ef1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_attachment_example_call_tool.js deleted file mode 100644 index 314810d67..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveBankTransactionAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "bank_transaction_id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", - "attachment_id": "att-9876543210", - "xero_tenant_identifier": "tenant-12345", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_attachment_example_call_tool.py deleted file mode 100644 index 6f2507c41..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveBankTransactionAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'bank_transaction_id': 'a1b2c3d4-e5f6-7890-ab12-cd34ef567890', - 'attachment_id': 'att-9876543210', - 'xero_tenant_identifier': 'tenant-12345', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_attachments_example_call_tool.js deleted file mode 100644 index 6cc891132..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_attachments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveBankTransactionAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "bank_transaction_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "xero_tenant_id": "9f8e7d6c-5b4a-3210-fedc-ba9876543210" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_attachments_example_call_tool.py deleted file mode 100644 index 625e8765d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_attachments_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveBankTransactionAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'bank_transaction_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', - 'xero_tenant_id': '9f8e7d6c-5b4a-3210-fedc-ba9876543210' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_example_call_tool.js deleted file mode 100644 index bd61a90d1..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveBankTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "bank_transaction_id": "f3a9b2d4-6c1e-4a7b-9f2e-1234567890ab", - "xero_tenant_id": "c0ffee12-3456-789a-bcde-0123456789ab", - "use_four_decimal_places": 4 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_example_call_tool.py deleted file mode 100644 index 5ddd3fc55..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transaction_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveBankTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'bank_transaction_id': 'f3a9b2d4-6c1e-4a7b-9f2e-1234567890ab', - 'xero_tenant_id': 'c0ffee12-3456-789a-bcde-0123456789ab', - 'use_four_decimal_places': 4 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transactions_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transactions_example_call_tool.js deleted file mode 100644 index f49408e45..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transactions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveBankTransactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_id": "123e4567-e89b-12d3-a456-426614174000", - "filter_by_element": "Status==\"AUTHORISED\" AND Amount>0", - "order_transactions_by": "Date DESC", - "transaction_page_number": 1, - "use_four_decimal_places": 1, - "records_per_page": 50, - "modified_since_timestamp": "2025-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transactions_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transactions_example_call_tool.py deleted file mode 100644 index c58c49326..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transactions_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveBankTransactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_id': '123e4567-e89b-12d3-a456-426614174000', - 'filter_by_element': 'Status=="AUTHORISED" AND Amount>0', - 'order_transactions_by': 'Date DESC', - 'transaction_page_number': 1, - 'use_four_decimal_places': 1, - 'records_per_page': 50, - 'modified_since_timestamp': '2025-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_attachment_example_call_tool.js deleted file mode 100644 index 39499a261..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveBankTransferAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "bank_transfer_id": "b3f9c2d4-8a1e-4f2b-9c7a-2d5e6f7a8b90", - "attachment_file_name": "receipt-2025-09-30.pdf", - "xero_tenant_identifier": "a1b2c3d4-e5f6-7890-ab12-cd34ef56gh78", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_attachment_example_call_tool.py deleted file mode 100644 index c1bccab50..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveBankTransferAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'bank_transfer_id': 'b3f9c2d4-8a1e-4f2b-9c7a-2d5e6f7a8b90', - 'attachment_file_name': 'receipt-2025-09-30.pdf', - 'xero_tenant_identifier': 'a1b2c3d4-e5f6-7890-ab12-cd34ef56gh78', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_attachments_example_call_tool.js deleted file mode 100644 index 7b7f59bd3..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_attachments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveBankTransferAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "bank_transfer_id": "b3f1c2d4-5e6a-7b89-0c1d-2e3f4a5b6c7d", - "tenant_identifier": "01234567-89ab-cdef-0123-456789abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_attachments_example_call_tool.py deleted file mode 100644 index d72dd756c..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_attachments_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveBankTransferAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'bank_transfer_id': 'b3f1c2d4-5e6a-7b89-0c1d-2e3f4a5b6c7d', - 'tenant_identifier': '01234567-89ab-cdef-0123-456789abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_example_call_tool.js deleted file mode 100644 index 26ff6dac2..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveBankTransfer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "bank_transfer_id": "a1b2c3d4-e5f6-7890-ab12-cd34ef56gh78", - "tenant_id": "12345678-90ab-cdef-1234-567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_example_call_tool.py deleted file mode 100644 index c9a4709d3..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfer_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveBankTransfer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'bank_transfer_id': 'a1b2c3d4-e5f6-7890-ab12-cd34ef56gh78', - 'tenant_id': '12345678-90ab-cdef-1234-567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfers_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfers_example_call_tool.js deleted file mode 100644 index 88daac64e..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfers_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveBankTransfers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_identifier": "tenant_12345", - "filter_bank_transfers": "Status==\"RECONCILED\" AND Date>=2025-01-01", - "order_by_element": "Date DESC", - "modified_since_timestamp": "2025-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfers_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfers_example_call_tool.py deleted file mode 100644 index d25278315..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_bank_transfers_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveBankTransfers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_identifier': 'tenant_12345', - 'filter_bank_transfers': 'Status=="RECONCILED" AND Date>=2025-01-01', - 'order_by_element': 'Date DESC', - 'modified_since_timestamp': '2025-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_batch_payment_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_batch_payment_history_example_call_tool.js deleted file mode 100644 index 877c9a867..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_batch_payment_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveBatchPaymentHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "batch_payment_id": "bpay_9f8a7c3d", - "xero_tenant_id": "tenant_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_batch_payment_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_batch_payment_history_example_call_tool.py deleted file mode 100644 index 7eb742303..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_batch_payment_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveBatchPaymentHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'batch_payment_id': 'bpay_9f8a7c3d', 'xero_tenant_id': 'tenant_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_batch_payments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_batch_payments_example_call_tool.js deleted file mode 100644 index 140f4bd5f..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_batch_payments_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveBatchPayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_identifier": "123e4567-e89b-12d3-a456-426614174000", - "filter_by_element": "Status==\"PAID\"", - "order_by_element": "PaymentDate DESC", - "modified_since_timestamp": "2025-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_batch_payments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_batch_payments_example_call_tool.py deleted file mode 100644 index 9ca6aeafe..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_batch_payments_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveBatchPayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_identifier': '123e4567-e89b-12d3-a456-426614174000', - 'filter_by_element': 'Status=="PAID"', - 'order_by_element': 'PaymentDate DESC', - 'modified_since_timestamp': '2025-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_branding_theme_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_branding_theme_example_call_tool.js deleted file mode 100644 index fa34a217d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_branding_theme_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveBrandingTheme"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "branding_theme_id": "bt-5f8d3a12", - "tenant_identifier": "tenant_01a2b3c4" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_branding_theme_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_branding_theme_example_call_tool.py deleted file mode 100644 index 07774a7e1..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_branding_theme_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveBrandingTheme" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'branding_theme_id': 'bt-5f8d3a12', 'tenant_identifier': 'tenant_01a2b3c4' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_budget_details_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_budget_details_example_call_tool.js deleted file mode 100644 index c6b3a89d9..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_budget_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveBudgetDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "budget_identifier": "bgt_98765", - "tenant_identifier": "tenant_12345", - "filter_start_date": "2025-01-01", - "filter_end_date": "2025-12-31" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_budget_details_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_budget_details_example_call_tool.py deleted file mode 100644 index b752d5641..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_budget_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveBudgetDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'budget_identifier': 'bgt_98765', - 'tenant_identifier': 'tenant_12345', - 'filter_start_date': '2025-01-01', - 'filter_end_date': '2025-12-31' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_budgets_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_budgets_example_call_tool.js deleted file mode 100644 index b8fcd5bc3..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_budgets_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveBudgets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_identifier": "a1b2c3d4-tenant", - "filter_by_budget_id": "budget-9876", - "filter_start_date": "2025-01-01", - "filter_by_end_date": "2025-12-31" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_budgets_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_budgets_example_call_tool.py deleted file mode 100644 index fea7089c8..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_budgets_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveBudgets" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_identifier': 'a1b2c3d4-tenant', - 'filter_by_budget_id': 'budget-9876', - 'filter_start_date': '2025-01-01', - 'filter_by_end_date': '2025-12-31' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_attachment_example_call_tool.js deleted file mode 100644 index e47661e5f..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveContactAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id": "c1a2b3d4-e5f6-7890-ab12-345678cdef90", - "attachment_id": "a9b8c7d6-e5f4-3210-ba98-76543210fedc", - "tenant_identifier": "tnt-12345-xyz", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_attachment_example_call_tool.py deleted file mode 100644 index 2eb6b4238..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveContactAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id': 'c1a2b3d4-e5f6-7890-ab12-345678cdef90', - 'attachment_id': 'a9b8c7d6-e5f4-3210-ba98-76543210fedc', - 'tenant_identifier': 'tnt-12345-xyz', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_group_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_group_example_call_tool.js deleted file mode 100644 index c0f216b37..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_group_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveContactGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_group_id": "cgrp-8a7f2b3d", - "xero_tenant_id": "tenant-4f12a9" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_group_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_group_example_call_tool.py deleted file mode 100644 index dc02e3823..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveContactGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_group_id': 'cgrp-8a7f2b3d', 'xero_tenant_id': 'tenant-4f12a9' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_groups_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_groups_example_call_tool.js deleted file mode 100644 index e3ee94541..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_groups_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveContactGroups"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_identifier": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "filter_criteria": "Name.StartsWith(\"Clients\")", - "order_by": "Name ASC" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_groups_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_groups_example_call_tool.py deleted file mode 100644 index ecee649e3..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_contact_groups_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveContactGroups" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_identifier': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', - 'filter_criteria': 'Name.StartsWith("Clients")', - 'order_by': 'Name ASC' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_credit_note_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_credit_note_attachment_example_call_tool.js deleted file mode 100644 index 18d6d557d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_credit_note_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveCreditNoteAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "credit_note_id": "cnote_7890", - "attachment_file_name": "receipt.pdf", - "xero_tenant_identifier": "tenant_12345", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_credit_note_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_credit_note_attachment_example_call_tool.py deleted file mode 100644 index 4cd5ce661..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_credit_note_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveCreditNoteAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'credit_note_id': 'cnote_7890', - 'attachment_file_name': 'receipt.pdf', - 'xero_tenant_identifier': 'tenant_12345', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_credit_note_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_credit_note_example_call_tool.js deleted file mode 100644 index 0c85c259a..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_credit_note_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveCreditNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "credit_note_id": "c8f3b2a1-9e4d-4f6b-a2d1-1234567890ab", - "tenant_identifier": "a1b2c3d4-5678-90ab-cdef-111213141516", - "use_four_decimal_places": 0 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_credit_note_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_credit_note_example_call_tool.py deleted file mode 100644 index 748aa86b9..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_credit_note_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveCreditNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'credit_note_id': 'c8f3b2a1-9e4d-4f6b-a2d1-1234567890ab', - 'tenant_identifier': 'a1b2c3d4-5678-90ab-cdef-111213141516', - 'use_four_decimal_places': 0 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_draft_expense_claim_receipt_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_draft_expense_claim_receipt_example_call_tool.js deleted file mode 100644 index 780673326..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_draft_expense_claim_receipt_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveDraftExpenseClaimReceipt"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "receipt_id": "drcf_987654321", - "tenant_identifier": "xero-tenant-12345", - "use_four_decimal_places": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_draft_expense_claim_receipt_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_draft_expense_claim_receipt_example_call_tool.py deleted file mode 100644 index 088983890..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_draft_expense_claim_receipt_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveDraftExpenseClaimReceipt" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'receipt_id': 'drcf_987654321', - 'tenant_identifier': 'xero-tenant-12345', - 'use_four_decimal_places': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_executive_summary_report_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_executive_summary_report_example_call_tool.js deleted file mode 100644 index 004be9830..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_executive_summary_report_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveExecutiveSummaryReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_identifier": "a1b2c3d4-tenant-id", - "report_date": "2025-09-30" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_executive_summary_report_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_executive_summary_report_example_call_tool.py deleted file mode 100644 index c33388c27..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_executive_summary_report_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveExecutiveSummaryReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_identifier': 'a1b2c3d4-tenant-id', 'report_date': '2025-09-30' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claim_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claim_example_call_tool.js deleted file mode 100644 index 9b95bfef6..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claim_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveExpenseClaim"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "expense_claim_id": "EC-2025-00421", - "xero_tenant_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claim_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claim_example_call_tool.py deleted file mode 100644 index 7fdd21a08..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claim_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveExpenseClaim" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'expense_claim_id': 'EC-2025-00421', 'xero_tenant_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claim_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claim_history_example_call_tool.js deleted file mode 100644 index 9f7d5ce11..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claim_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveExpenseClaimHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "expense_claim_id": "ec-7890", - "xero_tenant_id": "tenant-12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claim_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claim_history_example_call_tool.py deleted file mode 100644 index 4a4596699..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claim_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveExpenseClaimHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'expense_claim_id': 'ec-7890', 'xero_tenant_id': 'tenant-12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claims_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claims_example_call_tool.js deleted file mode 100644 index 0154484de..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claims_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveExpenseClaims"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_identifier": "3f8a9b2e-1c4d-4a6f-9b2e-abcdef123456", - "filter_by_element": "status==\"AUTHORISED\"", - "order_by": "date DESC", - "modified_since_timestamp": "2025-09-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claims_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claims_example_call_tool.py deleted file mode 100644 index 46806e0a5..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_expense_claims_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveExpenseClaims" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_identifier': '3f8a9b2e-1c4d-4a6f-9b2e-abcdef123456', - 'filter_by_element': 'status=="AUTHORISED"', - 'order_by': 'date DESC', - 'modified_since_timestamp': '2025-09-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_full_chart_of_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_full_chart_of_accounts_example_call_tool.js deleted file mode 100644 index 232665716..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_full_chart_of_accounts_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveFullChartOfAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_identifier": "3b9f6a2e-7d4c-4a1b-9f2a-1234567890ab", - "filter_by_attribute": "AccountType==\"EXPENSE\" OR AccountType==\"REVENUE\"", - "order_by_element": "Name", - "only_modified_since_timestamp": "2025-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_full_chart_of_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_full_chart_of_accounts_example_call_tool.py deleted file mode 100644 index 017b42d71..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_full_chart_of_accounts_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveFullChartOfAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_identifier': '3b9f6a2e-7d4c-4a1b-9f2a-1234567890ab', - 'filter_by_attribute': 'AccountType=="EXPENSE" OR AccountType=="REVENUE"', - 'order_by_element': 'Name', - 'only_modified_since_timestamp': '2025-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_attachment_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_attachment_by_id_example_call_tool.js deleted file mode 100644 index 89f25c934..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_attachment_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveInvoiceAttachmentById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_id": "a1b2c3d4-e5f6-7890-ab12-cdef34567890", - "attachment_id": "att-9876543210", - "tenant_identifier": "tenant-12345", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_attachment_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_attachment_by_id_example_call_tool.py deleted file mode 100644 index e62932e58..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_attachment_by_id_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveInvoiceAttachmentById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_id': 'a1b2c3d4-e5f6-7890-ab12-cdef34567890', - 'attachment_id': 'att-9876543210', - 'tenant_identifier': 'tenant-12345', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_attachments_example_call_tool.js deleted file mode 100644 index a28ea3dcd..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_attachments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveInvoiceAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", - "tenant_identifier": "a1b2c3d4-5678-90ab-cdef-111213141516" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_attachments_example_call_tool.py deleted file mode 100644 index b2ac8b246..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_attachments_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveInvoiceAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_id': '3fa85f64-5717-4562-b3fc-2c963f66afa6', - 'tenant_identifier': 'a1b2c3d4-5678-90ab-cdef-111213141516' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_history_example_call_tool.js deleted file mode 100644 index 25873025d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveInvoiceHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_id": "INV-2025-00123", - "tenant_identifier": "tenant_abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_history_example_call_tool.py deleted file mode 100644 index 0972c279d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveInvoiceHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_id': 'INV-2025-00123', 'tenant_identifier': 'tenant_abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_payment_example_call_tool.js deleted file mode 100644 index b58369e32..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_payment_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveInvoicePayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_id": "b1a3f9d2-6c4e-4f2a-9a1e-2d5c3b7e8f90", - "xero_tenant_id": "3f8a7b6c-1d2e-4f90-9a8b-5c6d7e8f9012" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_payment_example_call_tool.py deleted file mode 100644 index b7c779326..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_payment_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveInvoicePayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_id': 'b1a3f9d2-6c4e-4f2a-9a1e-2d5c3b7e8f90', - 'xero_tenant_id': '3f8a7b6c-1d2e-4f90-9a8b-5c6d7e8f9012' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_pdf_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_pdf_example_call_tool.js deleted file mode 100644 index 24b147d37..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_pdf_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveInvoicePdf"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_id": "8f3a2b6d-1c4e-4a9b-9d2f-1234567890ab", - "tenant_identifier": "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_pdf_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_pdf_example_call_tool.py deleted file mode 100644 index 37da79b49..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoice_pdf_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveInvoicePdf" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_id': '8f3a2b6d-1c4e-4a9b-9d2f-1234567890ab', - 'tenant_identifier': 'a1b2c3d4-e5f6-7890-abcd-ef1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_invoices_example_call_tool.js deleted file mode 100644 index cde63f4b9..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoices_example_call_tool.js +++ /dev/null @@ -1,54 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveInvoices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_id": "123e4567-e89b-12d3-a456-426614174000", - "filter_by_condition": "Status==\"AUTHORISED\" AND Date>=DateTime(2025,01,01)", - "order_by": "Date DESC", - "invoice_ids": [ - "inv-001", - "inv-002" - ], - "filter_by_invoice_numbers": [ - "1001", - "1002" - ], - "filter_contact_ids": [ - "c-abc123", - "c-def456" - ], - "filter_by_statuses": [ - "AUTHORISED", - "PAID" - ], - "page_number": 1, - "unit_decimal_places": 4, - "records_per_page": 50, - "search_term": "consulting", - "modified_since_timestamp": "2025-01-01T00:00:00", - "include_archived_invoices": false, - "filter_by_created_by_my_app": true, - "retrieve_summary_only": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_invoices_example_call_tool.py deleted file mode 100644 index a7e38ffcf..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_invoices_example_call_tool.py +++ /dev/null @@ -1,43 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveInvoices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_id': '123e4567-e89b-12d3-a456-426614174000', - 'filter_by_condition': 'Status=="AUTHORISED" AND Date>=DateTime(2025,01,01)', - 'order_by': 'Date DESC', - 'invoice_ids': ['inv-001', 'inv-002'], - 'filter_by_invoice_numbers': ['1001', '1002'], - 'filter_contact_ids': ['c-abc123', 'c-def456'], - 'filter_by_statuses': ['AUTHORISED', 'PAID'], - 'page_number': 1, - 'unit_decimal_places': 4, - 'records_per_page': 50, - 'search_term': 'consulting', - 'modified_since_timestamp': '2025-01-01T00:00:00', - 'include_archived_invoices': False, - 'filter_by_created_by_my_app': True, - 'retrieve_summary_only': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_attachment_example_call_tool.js deleted file mode 100644 index 9c574c2d3..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveJournalAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "manual_journal_id": "MJ-2025-0123", - "attachment_id": "attch_9b8f7a", - "xero_tenant_id": "tenant_0a1b2c3d", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_attachment_example_call_tool.py deleted file mode 100644 index d172b9577..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveJournalAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'manual_journal_id': 'MJ-2025-0123', - 'attachment_id': 'attch_9b8f7a', - 'xero_tenant_id': 'tenant_0a1b2c3d', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_attachments_example_call_tool.js deleted file mode 100644 index 465eecc22..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_attachments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveJournalAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "manual_journal_id": "a1b2c3d4-e5f6-7890-ab12-cdef34567890", - "tenant_id": "12345678-90ab-cdef-1234-567890abcdef" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_attachments_example_call_tool.py deleted file mode 100644 index b99e61378..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_attachments_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveJournalAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'manual_journal_id': 'a1b2c3d4-e5f6-7890-ab12-cdef34567890', - 'tenant_id': '12345678-90ab-cdef-1234-567890abcdef' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_by_number_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_by_number_example_call_tool.js deleted file mode 100644 index 0396fe115..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_by_number_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveJournalByNumber"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "journal_number": 12345, - "tenant_identifier": "tenant_abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_by_number_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_by_number_example_call_tool.py deleted file mode 100644 index 3ae1f0d05..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_journal_by_number_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveJournalByNumber" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'journal_number': 12345, 'tenant_identifier': 'tenant_abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_linked_transactions_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_linked_transactions_example_call_tool.js deleted file mode 100644 index 59a34bb2d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_linked_transactions_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveLinkedTransactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_identifier": "a1b2c3d4-tenant", - "page_number": 1, - "linked_transaction_id": "ltx-987654", - "source_transaction_id": "src-inv-12345", - "filter_by_contact_id": "ct-555aaa", - "filter_by_status": "AUTHORISED", - "filter_by_target_transaction_id": "tgt-inv-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_linked_transactions_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_linked_transactions_example_call_tool.py deleted file mode 100644 index 82fe3c24e..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_linked_transactions_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveLinkedTransactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_identifier': 'a1b2c3d4-tenant', - 'page_number': 1, - 'linked_transaction_id': 'ltx-987654', - 'source_transaction_id': 'src-inv-12345', - 'filter_by_contact_id': 'ct-555aaa', - 'filter_by_status': 'AUTHORISED', - 'filter_by_target_transaction_id': 'tgt-inv-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_manual_journal_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_manual_journal_example_call_tool.js deleted file mode 100644 index d938f3150..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_manual_journal_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveManualJournal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "manual_journal_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "xero_tenant_id": "tenant-98765" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_manual_journal_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_manual_journal_example_call_tool.py deleted file mode 100644 index d7b5964fa..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_manual_journal_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveManualJournal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'manual_journal_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', 'xero_tenant_id': 'tenant-98765' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_manual_journals_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_manual_journals_example_call_tool.js deleted file mode 100644 index 906fc9d83..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_manual_journals_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveManualJournals"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_identifier": "3b2f1a8e-9c4d-4f2a-8a1e-0d5b6c7e8f90", - "filter_criteria": "date>=2025-01-01 AND amount>1000", - "order_by_element": "date", - "page_number": 1, - "records_per_page": 50, - "modified_since_timestamp": "2025-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_manual_journals_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_manual_journals_example_call_tool.py deleted file mode 100644 index a256c2e90..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_manual_journals_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveManualJournals" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_identifier': '3b2f1a8e-9c4d-4f2a-8a1e-0d5b6c7e8f90', - 'filter_criteria': 'date>=2025-01-01 AND amount>1000', - 'order_by_element': 'date', - 'page_number': 1, - 'records_per_page': 50, - 'modified_since_timestamp': '2025-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_online_invoice_url_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_online_invoice_url_example_call_tool.js deleted file mode 100644 index 3222ffff0..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_online_invoice_url_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveOnlineInvoiceUrl"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "invoice_identifier": "INV-2025-1001", - "xero_tenant_id": "a1b2c3d4-e5f6-7890-ab12-cdef34567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_online_invoice_url_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_online_invoice_url_example_call_tool.py deleted file mode 100644 index cd9358590..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_online_invoice_url_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveOnlineInvoiceUrl" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'invoice_identifier': 'INV-2025-1001', 'xero_tenant_id': 'a1b2c3d4-e5f6-7890-ab12-cdef34567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_overpayments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_overpayments_example_call_tool.js deleted file mode 100644 index dfc5af799..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_overpayments_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveOverpayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "tenant_identifier": "a1b2c3d4-tenant", - "filter_criteria": "Status=AUTHORISED", - "order_by_element": "Date", - "page_number": 1, - "unit_decimal_places": 2, - "records_per_page": 50, - "records_modified_since": "2025-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_overpayments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_overpayments_example_call_tool.py deleted file mode 100644 index 62abfe068..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_overpayments_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveOverpayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'tenant_identifier': 'a1b2c3d4-tenant', - 'filter_criteria': 'Status=AUTHORISED', - 'order_by_element': 'Date', - 'page_number': 1, - 'unit_decimal_places': 2, - 'records_per_page': 50, - 'records_modified_since': '2025-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_payment_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_payment_history_example_call_tool.js deleted file mode 100644 index 1c456f6d2..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_payment_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrievePaymentHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "payment_identifier": "pay_8f3b2a", - "tenant_identifier": "tenant_91b4c" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_payment_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_payment_history_example_call_tool.py deleted file mode 100644 index 744f333a3..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_payment_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrievePaymentHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'payment_identifier': 'pay_8f3b2a', 'tenant_identifier': 'tenant_91b4c' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_payment_services_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_payment_services_example_call_tool.js deleted file mode 100644 index dad62537d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_payment_services_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrievePaymentServices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_id": "a1b2c3d4-tenant-5678" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_payment_services_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_payment_services_example_call_tool.py deleted file mode 100644 index b51e93ff4..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_payment_services_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrievePaymentServices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_id': 'a1b2c3d4-tenant-5678' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_po_attachment_by_filename_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_po_attachment_by_filename_example_call_tool.js deleted file mode 100644 index d1f79047f..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_po_attachment_by_filename_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrievePoAttachmentByFilename"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "purchase_order_id": "PO-12345", - "attachment_file_name": "invoice_12345.pdf", - "xero_tenant_identifier": "tenant-9876abcd", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_po_attachment_by_filename_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_po_attachment_by_filename_example_call_tool.py deleted file mode 100644 index 19e4f3390..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_po_attachment_by_filename_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrievePoAttachmentByFilename" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'purchase_order_id': 'PO-12345', - 'attachment_file_name': 'invoice_12345.pdf', - 'xero_tenant_identifier': 'tenant-9876abcd', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_prepayments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_prepayments_example_call_tool.js deleted file mode 100644 index 25e237203..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_prepayments_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrievePrepayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_identifier": "abc123-tenant-id", - "filter_condition": "Status==\"AUTHORISED\" AND Amount>1000", - "order_criteria": "Date DESC", - "page_number": 1, - "unit_decimal_places": 4, - "records_per_page": 50, - "modified_since_timestamp": "2024-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_prepayments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_prepayments_example_call_tool.py deleted file mode 100644 index a7400bd2c..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_prepayments_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrievePrepayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_identifier': 'abc123-tenant-id', - 'filter_condition': 'Status=="AUTHORISED" AND Amount>1000', - 'order_criteria': 'Date DESC', - 'page_number': 1, - 'unit_decimal_places': 4, - 'records_per_page': 50, - 'modified_since_timestamp': '2024-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_attachments_example_call_tool.js deleted file mode 100644 index 9478354b9..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_attachments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrievePurchaseOrderAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "purchase_order_id": "PO-73a9f4b2", - "xero_tenant_id": "d4f2c1e8-9b7a-4f3e-8123-0a1b2c3d4e5f" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_attachments_example_call_tool.py deleted file mode 100644 index 4cf1aaa81..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_attachments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrievePurchaseOrderAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'purchase_order_id': 'PO-73a9f4b2', 'xero_tenant_id': 'd4f2c1e8-9b7a-4f3e-8123-0a1b2c3d4e5f' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_by_number_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_by_number_example_call_tool.js deleted file mode 100644 index 6d0ce05b1..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_by_number_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrievePurchaseOrderByNumber"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "purchase_order_number": "PO-2025-0789", - "xero_tenant_id": "a1b2c3d4-e5f6-7890-ab12-cdef34567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_by_number_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_by_number_example_call_tool.py deleted file mode 100644 index 4ff53b37f..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_by_number_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrievePurchaseOrderByNumber" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'purchase_order_number': 'PO-2025-0789', 'xero_tenant_id': 'a1b2c3d4-e5f6-7890-ab12-cdef34567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_example_call_tool.js deleted file mode 100644 index 1ce4eb5fc..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrievePurchaseOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "purchase_order_id": "PO-2025-00047", - "xero_tenant_id": "a1b2c3d4-e5f6-47ab-9cde-0123456789ab" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_example_call_tool.py deleted file mode 100644 index c1ed6e43f..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrievePurchaseOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'purchase_order_id': 'PO-2025-00047', 'xero_tenant_id': 'a1b2c3d4-e5f6-47ab-9cde-0123456789ab' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_history_example_call_tool.js deleted file mode 100644 index 1cf0f6312..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrievePurchaseOrderHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "purchase_order_id": "PO-2025-00047", - "tenant_identifier": "tenant_78a3b2" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_history_example_call_tool.py deleted file mode 100644 index e4d3562e6..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_order_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrievePurchaseOrderHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'purchase_order_id': 'PO-2025-00047', 'tenant_identifier': 'tenant_78a3b2' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_orders_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_orders_example_call_tool.js deleted file mode 100644 index 84fbe8dc9..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_orders_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrievePurchaseOrders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_id": "a1b2c3d4-tenant-0001", - "filter_by_status": "AUTHORISED", - "filter_by_start_date": "2025-01-01", - "filter_by_end_date": "2025-09-30", - "order_by_element": "Date", - "page_number": 1, - "records_per_page": 50, - "modified_since_timestamp": "2025-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_orders_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_orders_example_call_tool.py deleted file mode 100644 index b24c8cf30..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_purchase_orders_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrievePurchaseOrders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_id': 'a1b2c3d4-tenant-0001', - 'filter_by_status': 'AUTHORISED', - 'filter_by_start_date': '2025-01-01', - 'filter_by_end_date': '2025-09-30', - 'order_by_element': 'Date', - 'page_number': 1, - 'records_per_page': 50, - 'modified_since_timestamp': '2025-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_attachment_by_filename_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_attachment_by_filename_example_call_tool.js deleted file mode 100644 index ee16d7e1f..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_attachment_by_filename_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveQuoteAttachmentByFilename"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "quote_identifier": "Q-2025-00042", - "attachment_filename": "signed_quote.pdf", - "xero_tenant_identifier": "a1b2c3d4-5678-90ef-1234-567890abcdef", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_attachment_by_filename_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_attachment_by_filename_example_call_tool.py deleted file mode 100644 index cf5effa0e..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_attachment_by_filename_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveQuoteAttachmentByFilename" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'quote_identifier': 'Q-2025-00042', - 'attachment_filename': 'signed_quote.pdf', - 'xero_tenant_identifier': 'a1b2c3d4-5678-90ef-1234-567890abcdef', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_attachments_example_call_tool.js deleted file mode 100644 index c416ff7b4..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_attachments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveQuoteAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "quote_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "tenant_identifier": "0b12c34d-56ef-78ab-90cd-ef1234567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_attachments_example_call_tool.py deleted file mode 100644 index 85301ad6b..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_attachments_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveQuoteAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'quote_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', - 'tenant_identifier': '0b12c34d-56ef-78ab-90cd-ef1234567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_example_call_tool.js deleted file mode 100644 index 3dec2be79..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveQuote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "quote_id": "Q-2025-000123", - "xero_tenant_id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_example_call_tool.py deleted file mode 100644 index 43b6ee0d1..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveQuote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'quote_id': 'Q-2025-000123', 'xero_tenant_id': 'a1b2c3d4-e5f6-7890-ab12-cd34ef567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_history_example_call_tool.js deleted file mode 100644 index 14ccdda51..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveQuoteHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "quote_id": "QUO-12345", - "xero_tenant_identifier": "a1b2c3d4-5678-90ab-cdef-1234567890ab" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_history_example_call_tool.py deleted file mode 100644 index fb680081d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveQuoteHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'quote_id': 'QUO-12345', 'xero_tenant_identifier': 'a1b2c3d4-5678-90ab-cdef-1234567890ab' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_pdf_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_pdf_example_call_tool.js deleted file mode 100644 index ca263d878..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_pdf_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveQuotePdf"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "quote_id": "Q-2025-000123", - "tenant_identifier": "tenant_abc123xyz" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_pdf_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_pdf_example_call_tool.py deleted file mode 100644 index 27f029173..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_quote_pdf_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveQuotePdf" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'quote_id': 'Q-2025-000123', 'tenant_identifier': 'tenant_abc123xyz' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_receipt_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_receipt_attachment_example_call_tool.js deleted file mode 100644 index 8b36e76fa..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_receipt_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveReceiptAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "receipt_id": "rcpt_7890", - "attachment_id": "att_4567", - "xero_tenant_id": "tenant_ab12cd34", - "attachment_mime_type": "image/jpeg" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_receipt_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_receipt_attachment_example_call_tool.py deleted file mode 100644 index d92ad0ebc..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_receipt_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveReceiptAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'receipt_id': 'rcpt_7890', - 'attachment_id': 'att_4567', - 'xero_tenant_id': 'tenant_ab12cd34', - 'attachment_mime_type': 'image/jpeg' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_receipt_history_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_receipt_history_example_call_tool.js deleted file mode 100644 index 57a461596..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_receipt_history_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveReceiptHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "receipt_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "tenant_identifier": "0b9a8f7e-6d5c-4b3a-9f0e-123456789abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_receipt_history_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_receipt_history_example_call_tool.py deleted file mode 100644 index fbe8402bf..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_receipt_history_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveReceiptHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'receipt_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', - 'tenant_identifier': '0b9a8f7e-6d5c-4b3a-9f0e-123456789abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachment_by_id_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachment_by_id_example_call_tool.js deleted file mode 100644 index 2889b69d8..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachment_by_id_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveRepeatingInvoiceAttachmentById"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repeating_invoice_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "attachment_id": "att-98765", - "xero_tenant_identifier": "01234567-89ab-cdef-0123-456789abcdef", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachment_by_id_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachment_by_id_example_call_tool.py deleted file mode 100644 index 7c417b6de..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachment_by_id_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveRepeatingInvoiceAttachmentById" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repeating_invoice_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', - 'attachment_id': 'att-98765', - 'xero_tenant_identifier': '01234567-89ab-cdef-0123-456789abcdef', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachment_example_call_tool.js deleted file mode 100644 index dc30e12e8..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachment_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveRepeatingInvoiceAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repeating_invoice_id": "a1b2c3d4-e5f6-7890-ab12-cd34ef56gh78", - "attachment_file_name": "invoice-attachment.pdf", - "xero_tenant_identifier": "12345678-90ab-cdef-1234-567890abcdef", - "attachment_mime_type": "application/pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachment_example_call_tool.py deleted file mode 100644 index 41b2d9829..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveRepeatingInvoiceAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repeating_invoice_id': 'a1b2c3d4-e5f6-7890-ab12-cd34ef56gh78', - 'attachment_file_name': 'invoice-attachment.pdf', - 'xero_tenant_identifier': '12345678-90ab-cdef-1234-567890abcdef', - 'attachment_mime_type': 'application/pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachments_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachments_example_call_tool.js deleted file mode 100644 index 0c26c1c25..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachments_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveRepeatingInvoiceAttachments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "repeating_invoice_id": "d4f7b2a9-8c3e-4b6a-9f1a-0c2e5b7a1234", - "xero_tenant_identifier": "a1b2c3d4-e5f6-7890-ab12-cdef34567890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachments_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachments_example_call_tool.py deleted file mode 100644 index 05876bf08..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_repeating_invoice_attachments_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveRepeatingInvoiceAttachments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'repeating_invoice_id': 'd4f7b2a9-8c3e-4b6a-9f1a-0c2e5b7a1234', - 'xero_tenant_identifier': 'a1b2c3d4-e5f6-7890-ab12-cdef34567890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_sales_quotes_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_sales_quotes_example_call_tool.js deleted file mode 100644 index 03b7e8c02..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_sales_quotes_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveSalesQuotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_id": "tenant_abc123", - "filter_start_date": "2025-01-01", - "filter_date_to": "2025-09-30", - "expiry_date_after": "2025-10-01", - "filter_expiry_date_before": "2025-12-31", - "contact_id": "contact_789", - "quote_status": "SENT", - "page_number": 1, - "order_by_element": "Date", - "quote_number_filter": "QU-042", - "modified_since_timestamp": "2025-08-15T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_sales_quotes_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_sales_quotes_example_call_tool.py deleted file mode 100644 index 0ea3169f8..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_sales_quotes_example_call_tool.py +++ /dev/null @@ -1,39 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveSalesQuotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_id': 'tenant_abc123', - 'filter_start_date': '2025-01-01', - 'filter_date_to': '2025-09-30', - 'expiry_date_after': '2025-10-01', - 'filter_expiry_date_before': '2025-12-31', - 'contact_id': 'contact_789', - 'quote_status': 'SENT', - 'page_number': 1, - 'order_by_element': 'Date', - 'quote_number_filter': 'QU-042', - 'modified_since_timestamp': '2025-08-15T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_journal_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_journal_example_call_tool.js deleted file mode 100644 index 613c56737..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_journal_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveSpecificJournal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "journal_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "xero_tenant_identifier": "tenant_98765" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_journal_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_journal_example_call_tool.py deleted file mode 100644 index 4de87238a..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_journal_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveSpecificJournal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'journal_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', 'xero_tenant_identifier': 'tenant_98765' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_overpayment_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_overpayment_example_call_tool.js deleted file mode 100644 index 4d121a8a6..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_overpayment_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveSpecificOverpayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "overpayment_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", - "xero_tenant_identifier": "a1b2c3d4-e5f6-7890-ab12-3456789cdef0" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_overpayment_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_overpayment_example_call_tool.py deleted file mode 100644 index 103548f0d..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_overpayment_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveSpecificOverpayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'overpayment_id': '3fa85f64-5717-4562-b3fc-2c963f66afa6', - 'xero_tenant_identifier': 'a1b2c3d4-e5f6-7890-ab12-3456789cdef0' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_report_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_report_example_call_tool.js deleted file mode 100644 index 3626e7fef..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_report_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveSpecificReport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "report_id": "RPT-2025-09-001", - "xero_tenant_id": "3b8f9a2c-4d1e-4f6a-9c2b-abcdef123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_report_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_report_example_call_tool.py deleted file mode 100644 index ceb50a018..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_report_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveSpecificReport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'report_id': 'RPT-2025-09-001', 'xero_tenant_id': '3b8f9a2c-4d1e-4f6a-9c2b-abcdef123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_user_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_user_example_call_tool.js deleted file mode 100644 index 8092c0e84..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_user_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveSpecificUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "user_identifier": "a1b2c3d4-5678-90ab-cdef-1234567890ab", - "xero_tenant_identifier": "tenant-9f8e7d6c-5432" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_user_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_user_example_call_tool.py deleted file mode 100644 index 35dced0c9..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_specific_user_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveSpecificUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'user_identifier': 'a1b2c3d4-5678-90ab-cdef-1234567890ab', - 'xero_tenant_identifier': 'tenant-9f8e7d6c-5432' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_tax_rates_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_tax_rates_example_call_tool.js deleted file mode 100644 index 514e1fb5c..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_tax_rates_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveTaxRates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_id": "123e4567-e89b-12d3-a456-426614174000", - "filter_by_element": "Status==\"ACTIVE\"", - "order_by_element": "Name" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_tax_rates_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_tax_rates_example_call_tool.py deleted file mode 100644 index db32f1a7a..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_tax_rates_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveTaxRates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_id': '123e4567-e89b-12d3-a456-426614174000', - 'filter_by_element': 'Status=="ACTIVE"', - 'order_by_element': 'Name' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_unique_reports_list_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_unique_reports_list_example_call_tool.js deleted file mode 100644 index 1543306dc..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_unique_reports_list_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveUniqueReportsList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_unique_reports_list_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_unique_reports_list_example_call_tool.py deleted file mode 100644 index d6ca5eab2..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_unique_reports_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveUniqueReportsList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_id': '3fa85f64-5717-4562-b3fc-2c963f66afa6' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_contact_example_call_tool.js deleted file mode 100644 index 6a2ac7940..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_contact_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveXeroContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "contact_id": "3f8a1b2d-9c4e-4b6a-8f2d-1234567890ab", - "xero_tenant_identifier": "abcd1234-tenant-5678" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_contact_example_call_tool.py deleted file mode 100644 index c834f9bd9..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_contact_example_call_tool.py +++ /dev/null @@ -1,30 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveXeroContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'contact_id': '3f8a1b2d-9c4e-4b6a-8f2d-1234567890ab', - 'xero_tenant_identifier': 'abcd1234-tenant-5678' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_item_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_item_example_call_tool.js deleted file mode 100644 index 198d4b325..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_item_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveXeroItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "item_identifier": "a1b2c3d4-e5f6-7890-ab12-cd34ef56gh78", - "xero_tenant_identifier": "tenant_12345", - "use_unit_decimal_places": 4 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_item_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_item_example_call_tool.py deleted file mode 100644 index 8f42d1cc5..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_item_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveXeroItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'item_identifier': 'a1b2c3d4-e5f6-7890-ab12-cd34ef56gh78', - 'xero_tenant_identifier': 'tenant_12345', - 'use_unit_decimal_places': 4 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_organisation_actions_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_organisation_actions_example_call_tool.js deleted file mode 100644 index 130192282..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_organisation_actions_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveXeroOrganisationActions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_organisation_actions_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_organisation_actions_example_call_tool.py deleted file mode 100644 index 95f791abf..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_organisation_actions_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveXeroOrganisationActions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_id': 'a1b2c3d4-5678-90ab-cdef-1234567890ab' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_users_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_users_example_call_tool.js deleted file mode 100644 index 2890255a2..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_users_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.RetrieveXeroUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_identifier": "a1b2c3d4-tenant-uuid", - "filter_by_criteria": "Role==\"Advisor\" AND Status==\"ACTIVE\"", - "order_by_element": "Name", - "modified_since_timestamp": "2024-01-01T00:00:00Z" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_users_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_users_example_call_tool.py deleted file mode 100644 index a24a1eb78..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/retrieve_xero_users_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.RetrieveXeroUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_identifier': 'a1b2c3d4-tenant-uuid', - 'filter_by_criteria': 'Role=="Advisor" AND Status=="ACTIVE"', - 'order_by_element': 'Name', - 'modified_since_timestamp': '2024-01-01T00:00:00Z' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/xero_api/set_financial_setup_example_call_tool.js b/public/examples/integrations/mcp-servers/xero_api/set_financial_setup_example_call_tool.js deleted file mode 100644 index 378ad3289..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/set_financial_setup_example_call_tool.js +++ /dev/null @@ -1,80 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "XeroApi.SetFinancialSetup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "xero_tenant_identifier": "abcd1234-tenant", - "financial_setup_details": { - "conversion_date": "2025-01-01", - "accounts": [ - { - "code": "1000", - "name": "Cash at Bank", - "type": "ASSET", - "tax_type": "NONE" - }, - { - "code": "2000", - "name": "Accounts Payable", - "type": "LIABILITY", - "tax_type": "NONE" - }, - { - "code": "3000", - "name": "Revenue", - "type": "REVENUE", - "tax_type": "OUTPUT" - }, - { - "code": "4000", - "name": "Expenses", - "type": "EXPENSE", - "tax_type": "NONE" - } - ], - "conversion_balances": [ - { - "account_code": "1000", - "balance": 15000.0, - "currency": "USD" - }, - { - "account_code": "2000", - "balance": -4500.0, - "currency": "USD" - }, - { - "account_code": "3000", - "balance": 0.0, - "currency": "USD" - }, - { - "account_code": "4000", - "balance": 0.0, - "currency": "USD" - } - ] - }, - "idempotency_key": "setup-2025-01-01-unique" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/xero_api/set_financial_setup_example_call_tool.py b/public/examples/integrations/mcp-servers/xero_api/set_financial_setup_example_call_tool.py deleted file mode 100644 index dbe7e4007..000000000 --- a/public/examples/integrations/mcp-servers/xero_api/set_financial_setup_example_call_tool.py +++ /dev/null @@ -1,59 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "XeroApi.SetFinancialSetup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'xero_tenant_identifier': 'abcd1234-tenant', - 'financial_setup_details': { 'conversion_date': '2025-01-01', - 'accounts': [ { 'code': '1000', - 'name': 'Cash at Bank', - 'type': 'ASSET', - 'tax_type': 'NONE'}, - { 'code': '2000', - 'name': 'Accounts Payable', - 'type': 'LIABILITY', - 'tax_type': 'NONE'}, - { 'code': '3000', - 'name': 'Revenue', - 'type': 'REVENUE', - 'tax_type': 'OUTPUT'}, - { 'code': '4000', - 'name': 'Expenses', - 'type': 'EXPENSE', - 'tax_type': 'NONE'}], - 'conversion_balances': [ { 'account_code': '1000', - 'balance': 15000.0, - 'currency': 'USD'}, - { 'account_code': '2000', - 'balance': -4500.0, - 'currency': 'USD'}, - { 'account_code': '3000', - 'balance': 0.0, - 'currency': 'USD'}, - { 'account_code': '4000', - 'balance': 0.0, - 'currency': 'USD'}]}, - 'idempotency_key': 'setup-2025-01-01-unique' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zendesk/add_ticket_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zendesk/add_ticket_comment_example_call_tool.js deleted file mode 100644 index f6fd05b1f..000000000 --- a/public/examples/integrations/mcp-servers/zendesk/add_ticket_comment_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Zendesk.AddTicketComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_id": 12345, - "comment_body": "This is a sample comment.", - "public": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zendesk/add_ticket_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zendesk/add_ticket_comment_example_call_tool.py deleted file mode 100644 index 2db77257f..000000000 --- a/public/examples/integrations/mcp-servers/zendesk/add_ticket_comment_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Zendesk.AddTicketComment" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_id': 12345, 'comment_body': 'This is a sample comment.', 'public': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zendesk/get_ticket_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/zendesk/get_ticket_comments_example_call_tool.js deleted file mode 100644 index f85f734a3..000000000 --- a/public/examples/integrations/mcp-servers/zendesk/get_ticket_comments_example_call_tool.js +++ /dev/null @@ -1,28 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Zendesk.GetTicketComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_id": 12345 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zendesk/get_ticket_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/zendesk/get_ticket_comments_example_call_tool.py deleted file mode 100644 index ddd3ddcfa..000000000 --- a/public/examples/integrations/mcp-servers/zendesk/get_ticket_comments_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Zendesk.GetTicketComments" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_id': 12345 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zendesk/list_tickets_example_call_tool.js b/public/examples/integrations/mcp-servers/zendesk/list_tickets_example_call_tool.js deleted file mode 100644 index 58b7f3164..000000000 --- a/public/examples/integrations/mcp-servers/zendesk/list_tickets_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Zendesk.ListTickets"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "status": "open", - "limit": 10, - "offset": 0, - "sort_order": "desc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zendesk/list_tickets_example_call_tool.py b/public/examples/integrations/mcp-servers/zendesk/list_tickets_example_call_tool.py deleted file mode 100644 index 31fbdedf6..000000000 --- a/public/examples/integrations/mcp-servers/zendesk/list_tickets_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Zendesk.ListTickets" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'status': 'open', 'limit': 10, 'offset': 0, 'sort_order': 'desc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zendesk/mark_ticket_solved_example_call_tool.js b/public/examples/integrations/mcp-servers/zendesk/mark_ticket_solved_example_call_tool.js deleted file mode 100644 index abe463ebb..000000000 --- a/public/examples/integrations/mcp-servers/zendesk/mark_ticket_solved_example_call_tool.js +++ /dev/null @@ -1,30 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Zendesk.MarkTicketSolved"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "ticket_id": 12345, - "comment_body": "Issue resolved, thank you!", - "comment_public": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zendesk/mark_ticket_solved_example_call_tool.py b/public/examples/integrations/mcp-servers/zendesk/mark_ticket_solved_example_call_tool.py deleted file mode 100644 index f4cf0a6fb..000000000 --- a/public/examples/integrations/mcp-servers/zendesk/mark_ticket_solved_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Zendesk.MarkTicketSolved" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'ticket_id': 12345, 'comment_body': 'Issue resolved, thank you!', 'comment_public': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zendesk/search_articles_example_call_tool.js b/public/examples/integrations/mcp-servers/zendesk/search_articles_example_call_tool.js deleted file mode 100644 index 8307b1bd6..000000000 --- a/public/examples/integrations/mcp-servers/zendesk/search_articles_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Zendesk.SearchArticles"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME, user_id: USER_ID}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "query": "account setup", - "label_names": [ - "setup", - "account" - ], - "created_after": "2023-01-01", - "sort_by": "created_at", - "sort_order": "desc", - "limit": 10 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zendesk/search_articles_example_call_tool.py b/public/examples/integrations/mcp-servers/zendesk/search_articles_example_call_tool.py deleted file mode 100644 index 7fe1d6452..000000000 --- a/public/examples/integrations/mcp-servers/zendesk/search_articles_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Zendesk.SearchArticles" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME, user_id=USER_ID) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'query': 'account setup', - 'label_names': ['setup', 'account'], - 'created_after': '2023-01-01', - 'sort_by': 'created_at', - 'sort_order': 'desc', - 'limit': 10 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zendesk/who_am_i_example_call_tool.js b/public/examples/integrations/mcp-servers/zendesk/who_am_i_example_call_tool.js deleted file mode 100644 index 5eb6c4679..000000000 --- a/public/examples/integrations/mcp-servers/zendesk/who_am_i_example_call_tool.js +++ /dev/null @@ -1,26 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "Zendesk.WhoAmI"; - -// Start the authorization process -const authResponse = await client.tools.authorize({tool_name: TOOL_NAME}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zendesk/who_am_i_example_call_tool.py b/public/examples/integrations/mcp-servers/zendesk/who_am_i_example_call_tool.py deleted file mode 100644 index 3320b0508..000000000 --- a/public/examples/integrations/mcp-servers/zendesk/who_am_i_example_call_tool.py +++ /dev/null @@ -1,26 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "Zendesk.WhoAmI" - -auth_response = client.tools.authorize(tool_name=TOOL_NAME) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/accept_estimate_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/accept_estimate_example_call_tool.js deleted file mode 100644 index 7450ef030..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/accept_estimate_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AcceptEstimate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "estimate_identifier": "est_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/accept_estimate_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/accept_estimate_example_call_tool.py deleted file mode 100644 index fe3319e3c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/accept_estimate_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AcceptEstimate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'estimate_identifier': 'est_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_bank_account_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/activate_bank_account_example_call_tool.js deleted file mode 100644 index 281a762e4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_bank_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ActivateBankAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bank_account_id": "bank_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_bank_account_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/activate_bank_account_example_call_tool.py deleted file mode 100644 index 7db95ebf7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_bank_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ActivateBankAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'bank_account_id': 'bank_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_chart_of_account_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/activate_chart_of_account_example_call_tool.js deleted file mode 100644 index dd9d8297a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_chart_of_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ActivateChartOfAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "account_unique_identifier": "acc_78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_chart_of_account_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/activate_chart_of_account_example_call_tool.py deleted file mode 100644 index a213cd267..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_chart_of_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ActivateChartOfAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'account_unique_identifier': 'acc_78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/activate_contact_example_call_tool.js deleted file mode 100644 index fefb02ee9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_contact_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ActivateContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "contact_identifier": "contact_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/activate_contact_example_call_tool.py deleted file mode 100644 index 60139abd3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_contact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ActivateContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'contact_identifier': 'contact_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_fixed_asset_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/activate_fixed_asset_example_call_tool.js deleted file mode 100644 index 0d56139d8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_fixed_asset_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ActivateFixedAsset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "fixed_asset_id": "asset_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_fixed_asset_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/activate_fixed_asset_example_call_tool.py deleted file mode 100644 index a48e56eb1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_fixed_asset_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ActivateFixedAsset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'fixed_asset_id': 'asset_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_inactive_item_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/activate_inactive_item_example_call_tool.js deleted file mode 100644 index e9425f206..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_inactive_item_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ActivateInactiveItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "item_identifier": "item_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_inactive_item_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/activate_inactive_item_example_call_tool.py deleted file mode 100644 index 74582124c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_inactive_item_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ActivateInactiveItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'item_identifier': 'item_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_inactive_user_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/activate_inactive_user_example_call_tool.js deleted file mode 100644 index e1971ff72..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_inactive_user_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ActivateInactiveUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "user_identifier": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_inactive_user_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/activate_inactive_user_example_call_tool.py deleted file mode 100644 index ea56f0757..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_inactive_user_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ActivateInactiveUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'user_identifier': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_invoice_reminder_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/activate_invoice_reminder_example_call_tool.js deleted file mode 100644 index 360340310..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_invoice_reminder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ActivateInvoiceReminder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_identifier": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_invoice_reminder_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/activate_invoice_reminder_example_call_tool.py deleted file mode 100644 index b07069975..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_invoice_reminder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ActivateInvoiceReminder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'invoice_identifier': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_location_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/activate_location_example_call_tool.js deleted file mode 100644 index cfc6311df..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_location_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ActivateLocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "location_identifier": "loc_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_location_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/activate_location_example_call_tool.py deleted file mode 100644 index a0dbaec7a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_location_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ActivateLocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'location_identifier': 'loc_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_project_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/activate_project_example_call_tool.js deleted file mode 100644 index efc7310c0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ActivateProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "project_identifier": "proj_7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/activate_project_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/activate_project_example_call_tool.py deleted file mode 100644 index 4c09a507f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/activate_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ActivateProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'project_identifier': 'proj_7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_comment_to_bill_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/add_comment_to_bill_example_call_tool.js deleted file mode 100644 index 126667192..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_comment_to_bill_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AddCommentToBill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "bill_identifier": "bill_67890", - "request_body": "{\"comment\":\"This is a comment about the bill.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_comment_to_bill_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/add_comment_to_bill_example_call_tool.py deleted file mode 100644 index 5a75cacbd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_comment_to_bill_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AddCommentToBill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'bill_identifier': 'bill_67890', - 'request_body': '{"comment":"This is a comment about the bill."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_contact_address_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/add_contact_address_example_call_tool.js deleted file mode 100644 index a35330c2b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_contact_address_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AddContactAddress"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "12345", - "contact_id": "67890", - "request_body": "{\"address\":\"123 Main St, Springfield, IL, 62701\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_contact_address_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/add_contact_address_example_call_tool.py deleted file mode 100644 index 17c962a9c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_contact_address_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AddContactAddress" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '12345', - 'contact_id': '67890', - 'request_body': '{"address":"123 Main St, Springfield, IL, 62701"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_credit_note_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/add_credit_note_comment_example_call_tool.js deleted file mode 100644 index bdf3f5215..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_credit_note_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AddCreditNoteComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "credit_note_id": "cn_67890", - "request_body": "{\"comment\":\"This is a sample comment.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_credit_note_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/add_credit_note_comment_example_call_tool.py deleted file mode 100644 index ac6c851d2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_credit_note_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AddCreditNoteComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'credit_note_id': 'cn_67890', - 'request_body': '{"comment":"This is a sample comment."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_estimate_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/add_estimate_comment_example_call_tool.js deleted file mode 100644 index c24a882c4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_estimate_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AddEstimateComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "estimate_identifier": "est_67890", - "request_body": "{\"comment\":\"This is a sample comment for the estimate.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_estimate_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/add_estimate_comment_example_call_tool.py deleted file mode 100644 index 17a98d8ce..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_estimate_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AddEstimateComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'estimate_identifier': 'est_67890', - 'request_body': '{"comment":"This is a sample comment for the estimate."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_fixed_asset_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/add_fixed_asset_comment_example_call_tool.js deleted file mode 100644 index d4974a08e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_fixed_asset_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AddFixedAssetComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "fixed_asset_identifier": "asset_001", - "request_body": "{\"comment\":\"This is a sample comment.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_fixed_asset_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/add_fixed_asset_comment_example_call_tool.py deleted file mode 100644 index a09f06207..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_fixed_asset_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AddFixedAssetComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'fixed_asset_identifier': 'asset_001', - 'request_body': '{"comment":"This is a sample comment."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_invoice_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/add_invoice_comment_example_call_tool.js deleted file mode 100644 index 6ef7faad7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_invoice_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AddInvoiceComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "invoice_identifier": "inv_67890", - "request_body": "{\"comment\":\"This is a comment for the invoice.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_invoice_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/add_invoice_comment_example_call_tool.py deleted file mode 100644 index 39c1b7e59..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_invoice_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AddInvoiceComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'invoice_identifier': 'inv_67890', - 'request_body': '{"comment":"This is a comment for the invoice."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_journal_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/add_journal_comment_example_call_tool.js deleted file mode 100644 index f43724d43..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_journal_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AddJournalComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "journal_unique_id": "78910", - "request_body": "{\"comment\":\"This is a sample comment.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_journal_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/add_journal_comment_example_call_tool.py deleted file mode 100644 index 3233b9f53..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_journal_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AddJournalComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'journal_unique_id': '78910', - 'request_body': '{"comment":"This is a sample comment."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_project_task_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/add_project_task_example_call_tool.js deleted file mode 100644 index d3db407c9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_project_task_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AddProjectTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "project_identifier": "proj_67890", - "request_body": "{\"task_name\":\"New Task\",\"due_date\":\"2023-12-31\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_project_task_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/add_project_task_example_call_tool.py deleted file mode 100644 index 358ad95b7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_project_task_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AddProjectTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'project_identifier': 'proj_67890', - 'request_body': '{"task_name":"New Task","due_date":"2023-12-31"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_purchase_order_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/add_purchase_order_comment_example_call_tool.js deleted file mode 100644 index a01848ebd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_purchase_order_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AddPurchaseOrderComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "12345", - "purchase_order_identifier": "PO-67890", - "request_body": "{\"comment\":\"This is a sample comment.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_purchase_order_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/add_purchase_order_comment_example_call_tool.py deleted file mode 100644 index 2e7250f23..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_purchase_order_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AddPurchaseOrderComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '12345', - 'purchase_order_identifier': 'PO-67890', - 'request_body': '{"comment":"This is a sample comment."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_retainer_invoice_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/add_retainer_invoice_comment_example_call_tool.js deleted file mode 100644 index 3f5ac0c74..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_retainer_invoice_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AddRetainerInvoiceComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "retainer_invoice_id": "inv_67890", - "request_body": "{\"comment\":\"This is a sample comment for the retainer invoice.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_retainer_invoice_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/add_retainer_invoice_comment_example_call_tool.py deleted file mode 100644 index fc82106f4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_retainer_invoice_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AddRetainerInvoiceComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'retainer_invoice_id': 'inv_67890', - 'request_body': '{"comment":"This is a sample comment for the retainer invoice."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_sales_order_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/add_sales_order_comment_example_call_tool.js deleted file mode 100644 index f197329bd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_sales_order_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AddSalesOrderComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "sales_order_id": "SO78910", - "request_body": "{\"comment\":\"This is a sample comment.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_sales_order_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/add_sales_order_comment_example_call_tool.py deleted file mode 100644 index 778835301..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_sales_order_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AddSalesOrderComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'sales_order_id': 'SO78910', - 'request_body': '{"comment":"This is a sample comment."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_vendor_credit_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/add_vendor_credit_comment_example_call_tool.js deleted file mode 100644 index da59681bc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_vendor_credit_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AddVendorCreditComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "12345", - "vendor_credit_identifier": "vc_67890", - "request_body": "{\"comment\":\"This is a sample comment.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/add_vendor_credit_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/add_vendor_credit_comment_example_call_tool.py deleted file mode 100644 index ee20bcbf9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/add_vendor_credit_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AddVendorCreditComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '12345', - 'vendor_credit_identifier': 'vc_67890', - 'request_body': '{"comment":"This is a sample comment."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/apply_credit_note_to_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/apply_credit_note_to_invoice_example_call_tool.js deleted file mode 100644 index 6f184ed1e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/apply_credit_note_to_invoice_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ApplyCreditNoteToInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "credit_note_id": "CN7890", - "request_body": "{\"invoice_id\":\"INV1234\",\"amount\":100}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/apply_credit_note_to_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/apply_credit_note_to_invoice_example_call_tool.py deleted file mode 100644 index 4fa8a4e9a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/apply_credit_note_to_invoice_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ApplyCreditNoteToInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'credit_note_id': 'CN7890', - 'request_body': '{"invoice_id":"INV1234","amount":100}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/apply_credits_to_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/apply_credits_to_invoice_example_call_tool.js deleted file mode 100644 index 55e4d9528..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/apply_credits_to_invoice_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ApplyCreditsToInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "invoice_unique_identifier": "inv_67890", - "request_body": "{\"credits\":[{\"amount\":100,\"note\":\"Credit from payment\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/apply_credits_to_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/apply_credits_to_invoice_example_call_tool.py deleted file mode 100644 index 03f3c9ae2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/apply_credits_to_invoice_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ApplyCreditsToInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'invoice_unique_identifier': 'inv_67890', - 'request_body': '{"credits":[{"amount":100,"note":"Credit from payment"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/apply_vendor_credit_to_bill_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/apply_vendor_credit_to_bill_example_call_tool.js deleted file mode 100644 index 3633f4f31..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/apply_vendor_credit_to_bill_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ApplyVendorCreditToBill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "12345", - "vendor_credit_identifier": "vc_67890", - "request_body": "{\"amount\":100,\"bill_id\":\"bill_123\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/apply_vendor_credit_to_bill_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/apply_vendor_credit_to_bill_example_call_tool.py deleted file mode 100644 index 0b1bb2b75..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/apply_vendor_credit_to_bill_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ApplyVendorCreditToBill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '12345', - 'vendor_credit_identifier': 'vc_67890', - 'request_body': '{"amount":100,"bill_id":"bill_123"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/apply_vendor_credits_to_bill_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/apply_vendor_credits_to_bill_example_call_tool.js deleted file mode 100644 index 712c89607..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/apply_vendor_credits_to_bill_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ApplyVendorCreditsToBill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "bill_identifier": "bill_67890", - "request_body": "{\"credits\":[{\"amount\":100,\"description\":\"Credit for overpayment\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/apply_vendor_credits_to_bill_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/apply_vendor_credits_to_bill_example_call_tool.py deleted file mode 100644 index cfc2bae7d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/apply_vendor_credits_to_bill_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ApplyVendorCreditsToBill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'bill_identifier': 'bill_67890', - 'request_body': '{"credits":[{"amount":100,"description":"Credit for overpayment"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_bill_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/approve_bill_example_call_tool.js deleted file mode 100644 index 6ca58a995..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_bill_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ApproveBill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "bill_identifier": "bill_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_bill_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/approve_bill_example_call_tool.py deleted file mode 100644 index 0288baac7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_bill_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ApproveBill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'bill_identifier': 'bill_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_credit_note_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/approve_credit_note_example_call_tool.js deleted file mode 100644 index e67ff21ba..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_credit_note_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ApproveCreditNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "credit_note_identifier": "cn_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_credit_note_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/approve_credit_note_example_call_tool.py deleted file mode 100644 index 1488eed28..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_credit_note_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ApproveCreditNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'credit_note_identifier': 'cn_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_estimate_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/approve_estimate_example_call_tool.js deleted file mode 100644 index 5e6188958..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_estimate_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ApproveEstimate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "estimate_identifier": "est_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_estimate_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/approve_estimate_example_call_tool.py deleted file mode 100644 index 4a5798bd9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_estimate_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ApproveEstimate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'estimate_identifier': 'est_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/approve_invoice_example_call_tool.js deleted file mode 100644 index 1a9904888..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_invoice_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ApproveInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "invoice_identifier": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/approve_invoice_example_call_tool.py deleted file mode 100644 index 4a83a8eed..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_invoice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ApproveInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'invoice_identifier': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_purchase_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/approve_purchase_order_example_call_tool.js deleted file mode 100644 index dd6e339dc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_purchase_order_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ApprovePurchaseOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "purchase_order_identifier": "po_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_purchase_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/approve_purchase_order_example_call_tool.py deleted file mode 100644 index 3de7b831b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_purchase_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ApprovePurchaseOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'purchase_order_identifier': 'po_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_retainer_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/approve_retainer_invoice_example_call_tool.js deleted file mode 100644 index ed9ea6796..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_retainer_invoice_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ApproveRetainerInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "retainer_invoice_id": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_retainer_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/approve_retainer_invoice_example_call_tool.py deleted file mode 100644 index b4bec0c8c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_retainer_invoice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ApproveRetainerInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'retainer_invoice_id': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_sales_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/approve_sales_order_example_call_tool.js deleted file mode 100644 index 8945dd557..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_sales_order_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ApproveSalesOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "sales_order_id": "so_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_sales_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/approve_sales_order_example_call_tool.py deleted file mode 100644 index ef742cc06..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_sales_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ApproveSalesOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'sales_order_id': 'so_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_vendor_credit_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/approve_vendor_credit_example_call_tool.js deleted file mode 100644 index 8f1be749c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_vendor_credit_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ApproveVendorCredit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "vendor_credit_identifier": "vc_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/approve_vendor_credit_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/approve_vendor_credit_example_call_tool.py deleted file mode 100644 index e0718709b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/approve_vendor_credit_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ApproveVendorCredit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'vendor_credit_identifier': 'vc_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/assign_users_to_project_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/assign_users_to_project_example_call_tool.js deleted file mode 100644 index 8b1aa7be3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/assign_users_to_project_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AssignUsersToProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "project_identifier": "proj_789", - "request_body": "{\"users\":[{\"id\":\"user_1\"},{\"id\":\"user_2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/assign_users_to_project_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/assign_users_to_project_example_call_tool.py deleted file mode 100644 index 1fcd1a1c7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/assign_users_to_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AssignUsersToProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'project_identifier': 'proj_789', - 'request_body': '{"users":[{"id":"user_1"},{"id":"user_2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/associate_invoice_with_sales_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/associate_invoice_with_sales_order_example_call_tool.js deleted file mode 100644 index 015399d9e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/associate_invoice_with_sales_order_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AssociateInvoiceWithSalesOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "request_body": "{\"invoice_id\":\"inv_67890\",\"sales_order_ids\":[\"so_111\",\"so_222\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/associate_invoice_with_sales_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/associate_invoice_with_sales_order_example_call_tool.py deleted file mode 100644 index 2a4d4fbfa..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/associate_invoice_with_sales_order_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AssociateInvoiceWithSalesOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'request_body': '{"invoice_id":"inv_67890","sales_order_ids":["so_111","so_222"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/attach_expense_receipt_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/attach_expense_receipt_example_call_tool.js deleted file mode 100644 index f79fedff6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/attach_expense_receipt_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AttachExpenseReceipt"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "expense_id": "exp_67890", - "expense_receipt_file": "[file_content]" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/attach_expense_receipt_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/attach_expense_receipt_example_call_tool.py deleted file mode 100644 index 1116e46a2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/attach_expense_receipt_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AttachExpenseReceipt" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'expense_id': 'exp_67890', - 'expense_receipt_file': '[file_content]' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_bill_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_bill_example_call_tool.js deleted file mode 100644 index fa06113cd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_bill_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AttachFileToBill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "bill_id": "bill_67890", - "file_attachment": "[file_content]" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_bill_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_bill_example_call_tool.py deleted file mode 100644 index 143ac4a0f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_bill_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AttachFileToBill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'bill_id': 'bill_67890', - 'file_attachment': '[file_content]' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_invoice_example_call_tool.js deleted file mode 100644 index d86203347..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_invoice_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AttachFileToInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "retainer_invoice_identifier": "inv_67890", - "request_body": "{\"file_name\":\"document.pdf\",\"file_content\":\"[file_content]\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_invoice_example_call_tool.py deleted file mode 100644 index 92a7b76c7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_invoice_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AttachFileToInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'retainer_invoice_identifier': 'inv_67890', - 'request_body': '{"file_name":"document.pdf","file_content":"[file_content]"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_journal_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_journal_example_call_tool.js deleted file mode 100644 index 3b85e1353..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_journal_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AttachFileToJournal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "journal_unique_identifier": "journal_67890", - "attachment_file_path": "/path/to/file.pdf", - "total_number_of_files": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_journal_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_journal_example_call_tool.py deleted file mode 100644 index f7c59baa7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_journal_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AttachFileToJournal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'journal_unique_identifier': 'journal_67890', - 'attachment_file_path': '/path/to/file.pdf', - 'total_number_of_files': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_purchase_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_purchase_order_example_call_tool.js deleted file mode 100644 index 3b31b1677..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_purchase_order_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AttachFileToPurchaseOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "purchase_order_id": "PO78910", - "file_attachment": "[file_content]" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_purchase_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_purchase_order_example_call_tool.py deleted file mode 100644 index 85d9fa7ec..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_purchase_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AttachFileToPurchaseOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'purchase_order_id': 'PO78910', 'file_attachment': '[file_content]' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_sales_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_sales_order_example_call_tool.js deleted file mode 100644 index af44afe67..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_sales_order_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AttachFileToSalesOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "sales_order_identifier": "SO-78910", - "file_to_attach": "file.pdf", - "number_of_files": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_sales_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_sales_order_example_call_tool.py deleted file mode 100644 index 975cbefa0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/attach_file_to_sales_order_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AttachFileToSalesOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', - 'sales_order_identifier': 'SO-78910', - 'file_to_attach': 'file.pdf', - 'number_of_files': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/attach_invoice_file_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/attach_invoice_file_example_call_tool.js deleted file mode 100644 index 385422bb0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/attach_invoice_file_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.AttachInvoiceFile"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "invoice_identifier": "inv_67890", - "file_to_attach": "invoice.pdf", - "send_attachment_in_email": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/attach_invoice_file_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/attach_invoice_file_example_call_tool.py deleted file mode 100644 index e246f2569..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/attach_invoice_file_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.AttachInvoiceFile" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'invoice_identifier': 'inv_67890', - 'file_to_attach': 'invoice.pdf', - 'send_attachment_in_email': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/bulk_delete_customer_payments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/bulk_delete_customer_payments_example_call_tool.js deleted file mode 100644 index b56c320b2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/bulk_delete_customer_payments_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.BulkDeleteCustomerPayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "payment_ids_to_delete": "pay_001,pay_002,pay_003", - "perform_bulk_delete": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/bulk_delete_customer_payments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/bulk_delete_customer_payments_example_call_tool.py deleted file mode 100644 index 7b5611a38..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/bulk_delete_customer_payments_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.BulkDeleteCustomerPayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'payment_ids_to_delete': 'pay_001,pay_002,pay_003', - 'perform_bulk_delete': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/cancel_fixed_asset_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/cancel_fixed_asset_example_call_tool.js deleted file mode 100644 index b53d57ec9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/cancel_fixed_asset_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CancelFixedAsset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "fixed_asset_id": "asset_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/cancel_fixed_asset_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/cancel_fixed_asset_example_call_tool.py deleted file mode 100644 index 6bb52cb40..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/cancel_fixed_asset_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CancelFixedAsset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'fixed_asset_id': 'asset_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/cancel_purchase_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/cancel_purchase_order_example_call_tool.js deleted file mode 100644 index df1558ef0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/cancel_purchase_order_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CancelPurchaseOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "purchase_order_id": "po_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/cancel_purchase_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/cancel_purchase_order_example_call_tool.py deleted file mode 100644 index 855471072..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/cancel_purchase_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CancelPurchaseOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'purchase_order_id': 'po_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/cancel_write_off_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/cancel_write_off_invoice_example_call_tool.js deleted file mode 100644 index 7ea3f5e2c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/cancel_write_off_invoice_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CancelWriteOffInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "invoice_unique_identifier": "INV-78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/cancel_write_off_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/cancel_write_off_invoice_example_call_tool.py deleted file mode 100644 index 6eaedf0a3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/cancel_write_off_invoice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CancelWriteOffInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'invoice_unique_identifier': 'INV-78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_as_expense_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_as_expense_example_call_tool.js deleted file mode 100644 index f3405fae7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_as_expense_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CategorizeBankTransactionAsExpense"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "bank_transaction_id": "txn_67890", - "attachment_document": "[file_content]", - "total_number_of_files": 1, - "document_identifiers": 101, - "request_body": "{\"amount\":100,\"category\":\"Office Supplies\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_as_expense_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_as_expense_example_call_tool.py deleted file mode 100644 index 77c7d12db..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_as_expense_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CategorizeBankTransactionAsExpense" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'bank_transaction_id': 'txn_67890', - 'attachment_document': '[file_content]', - 'total_number_of_files': 1, - 'document_identifiers': 101, - 'request_body': '{"amount":100,"category":"Office Supplies"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_example_call_tool.js deleted file mode 100644 index cd6769ce3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CategorizeBankTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "bank_transaction_id": "txn_67890", - "request_body": "{\"category\":\"groceries\",\"amount\":50.00}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_example_call_tool.py deleted file mode 100644 index 933e3d7b4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CategorizeBankTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'bank_transaction_id': 'txn_67890', - 'request_body': '{"category":"groceries","amount":50.00}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_payment_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_payment_refund_example_call_tool.js deleted file mode 100644 index 6d5f39cfd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_payment_refund_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CategorizeBankTransactionPaymentRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "bank_statement_line_id": "line_67890", - "request_body": "{\"category\":\"payment_refund\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_payment_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_payment_refund_example_call_tool.py deleted file mode 100644 index 426392aed..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_bank_transaction_payment_refund_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CategorizeBankTransactionPaymentRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'bank_statement_line_id': 'line_67890', - 'request_body': '{"category":"payment_refund"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_refund_vendor_credit_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_refund_vendor_credit_example_call_tool.js deleted file mode 100644 index 6ea953742..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_refund_vendor_credit_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CategorizeRefundVendorCredit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "12345", - "bank_transaction_id": "txn_67890", - "request_body": "{\"amount\":100,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_refund_vendor_credit_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_refund_vendor_credit_example_call_tool.py deleted file mode 100644 index eba5d2f1c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_refund_vendor_credit_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CategorizeRefundVendorCredit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '12345', - 'bank_transaction_id': 'txn_67890', - 'request_body': '{"amount":100,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_payment_example_call_tool.js deleted file mode 100644 index 7a2972dbc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_payment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CategorizeTransactionAsPayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "bank_transaction_id": "txn_7890", - "request_body": "{\"amount\":100,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_payment_example_call_tool.py deleted file mode 100644 index 248684b90..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_payment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CategorizeTransactionAsPayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'bank_transaction_id': 'txn_7890', - 'request_body': '{"amount":100,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_refund_example_call_tool.js deleted file mode 100644 index 425275ecc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_refund_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CategorizeTransactionAsRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "transaction_id": "txn_67890", - "request_body": "{\"amount\":100,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_refund_example_call_tool.py deleted file mode 100644 index 99371ddb1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_refund_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CategorizeTransactionAsRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'transaction_id': 'txn_67890', - 'request_body': '{"amount":100,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_vendor_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_vendor_payment_example_call_tool.js deleted file mode 100644 index cf17c2367..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_vendor_payment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CategorizeTransactionAsVendorPayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "transaction_id": "txn_67890", - "request_body": "{\"amount\":100,\"vendor_id\":\"vendor_abc\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_vendor_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_vendor_payment_example_call_tool.py deleted file mode 100644 index 8eb01b5a2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_transaction_as_vendor_payment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CategorizeTransactionAsVendorPayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'transaction_id': 'txn_67890', - 'request_body': '{"amount":100,"vendor_id":"vendor_abc"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_vendor_payment_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_vendor_payment_refund_example_call_tool.js deleted file mode 100644 index 8bd708d63..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_vendor_payment_refund_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CategorizeVendorPaymentRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "bank_statement_line_id": "line_67890", - "request_body": "{\"amount\":100,\"currency\":\"USD\",\"vendor\":\"Vendor A\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_vendor_payment_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/categorize_vendor_payment_refund_example_call_tool.py deleted file mode 100644 index 9e49e7c85..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/categorize_vendor_payment_refund_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CategorizeVendorPaymentRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'bank_statement_line_id': 'line_67890', - 'request_body': '{"amount":100,"currency":"USD","vendor":"Vendor A"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/clone_project_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/clone_project_example_call_tool.js deleted file mode 100644 index 3d165298c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/clone_project_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CloneProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "project_unique_identifier": "proj_789", - "request_body": "{\"name\":\"Cloned Project\",\"description\":\"This is a clone of the original project.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/clone_project_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/clone_project_example_call_tool.py deleted file mode 100644 index e793dbcda..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/clone_project_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CloneProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'project_unique_identifier': 'proj_789', - 'request_body': '{"name":"Cloned Project","description":"This is a clone of the original ' - 'project."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/convert_credit_note_to_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/convert_credit_note_to_draft_example_call_tool.js deleted file mode 100644 index 80fc06eed..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/convert_credit_note_to_draft_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ConvertCreditNoteToDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "credit_note_id": "CN7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/convert_credit_note_to_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/convert_credit_note_to_draft_example_call_tool.py deleted file mode 100644 index c3720bc19..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/convert_credit_note_to_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ConvertCreditNoteToDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'credit_note_id': 'CN7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/convert_purchase_order_to_bill_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/convert_purchase_order_to_bill_example_call_tool.js deleted file mode 100644 index 6ca6a2bcf..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/convert_purchase_order_to_bill_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ConvertPurchaseOrderToBill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "purchase_order_ids": "po_67890,po_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/convert_purchase_order_to_bill_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/convert_purchase_order_to_bill_example_call_tool.py deleted file mode 100644 index 065fb28a2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/convert_purchase_order_to_bill_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ConvertPurchaseOrderToBill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'purchase_order_ids': 'po_67890,po_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_associated_tax_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_associated_tax_example_call_tool.js deleted file mode 100644 index 8bed23dbf..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_associated_tax_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateAssociatedTax"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"tax_name\":\"Sales Tax\",\"rate\":5.0}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_associated_tax_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_associated_tax_example_call_tool.py deleted file mode 100644 index 0afa66bea..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_associated_tax_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateAssociatedTax" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"tax_name":"Sales Tax","rate":5.0}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_bank_account_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_bank_account_example_call_tool.js deleted file mode 100644 index 802f2b1f8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_bank_account_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateBankAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "request_body": "{\"account_type\":\"bank\",\"account_name\":\"Main Checking Account\",\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_bank_account_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_bank_account_example_call_tool.py deleted file mode 100644 index 4767ef9ef..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_bank_account_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateBankAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'request_body': '{"account_type":"bank","account_name":"Main Checking ' - 'Account","currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_bank_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_bank_transaction_example_call_tool.js deleted file mode 100644 index 06a0be7d3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_bank_transaction_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateBankTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"transaction_type\":\"debit\",\"amount\":100.00,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_bank_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_bank_transaction_example_call_tool.py deleted file mode 100644 index 2623b1ea6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_bank_transaction_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateBankTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"transaction_type":"debit","amount":100.00,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_business_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_business_contact_example_call_tool.js deleted file mode 100644 index 76afbbda6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_business_contact_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateBusinessContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "request_body": "{\"name\":\"John Doe\",\"company\":\"Doe Enterprises\",\"email\":\"john@example.com\",\"phone\":\"123-456-7890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_business_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_business_contact_example_call_tool.py deleted file mode 100644 index 67a70641c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_business_contact_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateBusinessContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'request_body': '{"name":"John Doe","company":"Doe ' - 'Enterprises","email":"john@example.com","phone":"123-456-7890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_chart_of_account_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_chart_of_account_example_call_tool.js deleted file mode 100644 index 9e1c45259..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_chart_of_account_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateChartOfAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "request_body": "{\"accountType\":\"savings\",\"accountName\":\"Main Savings Account\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_chart_of_account_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_chart_of_account_example_call_tool.py deleted file mode 100644 index 75843d8b0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_chart_of_account_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateChartOfAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'request_body': '{"accountType":"savings","accountName":"Main Savings Account"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_contact_person_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_contact_person_example_call_tool.js deleted file mode 100644 index 30f175870..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_contact_person_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateContactPerson"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"phone\":\"123-456-7890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_contact_person_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_contact_person_example_call_tool.py deleted file mode 100644 index 9d897161a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_contact_person_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateContactPerson" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com","phone":"123-456-7890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_credit_note_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_credit_note_example_call_tool.js deleted file mode 100644 index 468095a83..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_credit_note_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateCreditNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "invoice_id": "inv_67890", - "use_custom_credit_note_number": true, - "request_body": "{\"amount\":100,\"currency\":\"USD\",\"reason\":\"Returned Item\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_credit_note_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_credit_note_example_call_tool.py deleted file mode 100644 index 185443943..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_credit_note_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateCreditNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'invoice_id': 'inv_67890', - 'use_custom_credit_note_number': True, - 'request_body': '{"amount":100,"currency":"USD","reason":"Returned Item"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_currency_adjustment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_currency_adjustment_example_call_tool.js deleted file mode 100644 index a91bd6f65..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_currency_adjustment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateCurrencyAdjustment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "account_identifiers": "acc_67890,acc_54321", - "request_body": "{\"currency\":\"USD\",\"amount\":1000}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_currency_adjustment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_currency_adjustment_example_call_tool.py deleted file mode 100644 index cd53353d4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_currency_adjustment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateCurrencyAdjustment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'account_identifiers': 'acc_67890,acc_54321', - 'request_body': '{"currency":"USD","amount":1000}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_currency_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_currency_example_call_tool.js deleted file mode 100644 index affdc36a1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_currency_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateCurrency"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "12345", - "request_body": "{\"currency_name\":\"Euro\",\"currency_code\":\"EUR\",\"symbol\":\"€\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_currency_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_currency_example_call_tool.py deleted file mode 100644 index 6c7710584..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_currency_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateCurrency" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '12345', - 'request_body': '{"currency_name":"Euro","currency_code":"EUR","symbol":"€"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_custom_module_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_custom_module_example_call_tool.js deleted file mode 100644 index 18ea746de..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_custom_module_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateCustomModule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "custom_module_name": "Invoices", - "request_body": "{\"fields\":[{\"name\":\"Invoice Number\",\"type\":\"string\"},{\"name\":\"Amount\",\"type\":\"number\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_custom_module_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_custom_module_example_call_tool.py deleted file mode 100644 index 86401caad..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_custom_module_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateCustomModule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'custom_module_name': 'Invoices', - 'request_body': '{"fields":[{"name":"Invoice ' - 'Number","type":"string"},{"name":"Amount","type":"number"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_debit_note_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_debit_note_example_call_tool.js deleted file mode 100644 index 04c02b193..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_debit_note_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateCustomerDebitNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "send_debit_note": true, - "request_body": "{\"invoice_id\":\"inv_67890\",\"amount\":100.00,\"reason\":\"Adjustment for additional charges\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_debit_note_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_debit_note_example_call_tool.py deleted file mode 100644 index c8c7d0643..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_debit_note_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateCustomerDebitNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'send_debit_note': True, - 'request_body': '{"invoice_id":"inv_67890","amount":100.00,"reason":"Adjustment for additional ' - 'charges"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_estimate_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_estimate_example_call_tool.js deleted file mode 100644 index 7f48b1e80..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_estimate_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateCustomerEstimate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "send_estimate_to_contact": true, - "request_body": "{\"customer_id\":\"78910\",\"items\":[{\"item_id\":\"item1\",\"quantity\":2,\"rate\":100}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_estimate_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_estimate_example_call_tool.py deleted file mode 100644 index 1c9dce4f3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_estimate_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateCustomerEstimate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'send_estimate_to_contact': True, - 'request_body': '{"customer_id":"78910","items":[{"item_id":"item1","quantity":2,"rate":100}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_invoice_example_call_tool.js deleted file mode 100644 index 1b3d41680..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_invoice_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateCustomerInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "send_invoice_to_contacts": true, - "request_body": "{\"customer_id\":\"cust_67890\",\"amount\":100.0,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_invoice_example_call_tool.py deleted file mode 100644 index 43666fc35..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_invoice_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateCustomerInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'send_invoice_to_contacts': True, - 'request_body': '{"customer_id":"cust_67890","amount":100.0,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_payment_example_call_tool.js deleted file mode 100644 index 97061f2f2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_payment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateCustomerPayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"customer_id\":\"78910\",\"amount\":100.0,\"payment_mode\":\"credit_card\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_payment_example_call_tool.py deleted file mode 100644 index 9bf689205..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_customer_payment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateCustomerPayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"customer_id":"78910","amount":100.0,"payment_mode":"credit_card"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_employee_for_expense_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_employee_for_expense_example_call_tool.js deleted file mode 100644 index 6361d5117..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_employee_for_expense_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateEmployeeForExpense"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"role\":\"Developer\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_employee_for_expense_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_employee_for_expense_example_call_tool.py deleted file mode 100644 index fa036e4ae..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_employee_for_expense_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateEmployeeForExpense" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com","role":"Developer"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_exchange_rate_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_exchange_rate_example_call_tool.js deleted file mode 100644 index 6165638e3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_exchange_rate_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateExchangeRate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "currency_identifier": "USD", - "request_body": "{\"rate\":1.2}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_exchange_rate_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_exchange_rate_example_call_tool.py deleted file mode 100644 index e36c101e2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_exchange_rate_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateExchangeRate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'currency_identifier': 'USD', - 'request_body': '{"rate":1.2}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_expense_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_expense_example_call_tool.js deleted file mode 100644 index 2ea1d07aa..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_expense_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateExpense"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "expense_receipt_file": "http://example.com/receipt.jpg", - "request_body": "{\"amount\":100,\"description\":\"Office supplies\",\"billable\":true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_expense_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_expense_example_call_tool.py deleted file mode 100644 index 9d69bc5e5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_expense_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateExpense" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'expense_receipt_file': 'http://example.com/receipt.jpg', - 'request_body': '{"amount":100,"description":"Office supplies","billable":true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_financial_account_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_financial_account_rule_example_call_tool.js deleted file mode 100644 index 1c413a681..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_financial_account_rule_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateFinancialAccountRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "request_body": "{\"ruleType\":\"deposit\",\"amount\":1000,\"description\":\"Monthly salary deposit\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_financial_account_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_financial_account_rule_example_call_tool.py deleted file mode 100644 index 4a5bf2353..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_financial_account_rule_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateFinancialAccountRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'request_body': '{"ruleType":"deposit","amount":1000,"description":"Monthly salary deposit"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_fixed_asset_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_fixed_asset_example_call_tool.js deleted file mode 100644 index 5a07cd196..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_fixed_asset_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateFixedAsset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"name\":\"Office Equipment\",\"value\":1000,\"purchase_date\":\"2023-01-01\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_fixed_asset_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_fixed_asset_example_call_tool.py deleted file mode 100644 index 5044db07a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_fixed_asset_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateFixedAsset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"name":"Office Equipment","value":1000,"purchase_date":"2023-01-01"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_fixed_asset_type_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_fixed_asset_type_example_call_tool.js deleted file mode 100644 index 7f61ce16a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_fixed_asset_type_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateFixedAssetType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"name\":\"Office Equipment\",\"description\":\"Assets used in the office\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_fixed_asset_type_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_fixed_asset_type_example_call_tool.py deleted file mode 100644 index 4aa847b2a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_fixed_asset_type_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateFixedAssetType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"name":"Office Equipment","description":"Assets used in the office"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_invoice_from_sales_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_invoice_from_sales_order_example_call_tool.js deleted file mode 100644 index 80ac3186f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_invoice_from_sales_order_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateInvoiceFromSalesOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "sales_order_id": "SO123456", - "organization_id": "ORG78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_invoice_from_sales_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_invoice_from_sales_order_example_call_tool.py deleted file mode 100644 index 3bcb6f262..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_invoice_from_sales_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateInvoiceFromSalesOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'sales_order_id': 'SO123456', 'organization_id': 'ORG78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_journal_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_journal_entry_example_call_tool.js deleted file mode 100644 index 00ac7e29c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_journal_entry_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateJournalEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"date\":\"2023-10-01\",\"amount\":100.00,\"description\":\"Office Supplies\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_journal_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_journal_entry_example_call_tool.py deleted file mode 100644 index 1285e76b2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_journal_entry_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateJournalEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"date":"2023-10-01","amount":100.00,"description":"Office Supplies"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_new_zoho_item_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_new_zoho_item_example_call_tool.js deleted file mode 100644 index 929ca9c29..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_new_zoho_item_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateNewZohoItem"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"name\":\"New Item\",\"price\":10.99}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_new_zoho_item_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_new_zoho_item_example_call_tool.py deleted file mode 100644 index 982cbd0e7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_new_zoho_item_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateNewZohoItem" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"name":"New Item","price":10.99}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_opening_balance_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_opening_balance_example_call_tool.js deleted file mode 100644 index 15c07428e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_opening_balance_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateOpeningBalance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"account_id\":\"acc_001\",\"amount\":1000,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_opening_balance_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_opening_balance_example_call_tool.py deleted file mode 100644 index 9b679a40e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_opening_balance_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateOpeningBalance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"account_id":"acc_001","amount":1000,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_organization_in_zoho_books_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_organization_in_zoho_books_example_call_tool.js deleted file mode 100644 index 239f11341..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_organization_in_zoho_books_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateOrganizationInZohoBooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "request_body": "{\"name\":\"Sample Organization\",\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_organization_in_zoho_books_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_organization_in_zoho_books_example_call_tool.py deleted file mode 100644 index 0a53d1e2e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_organization_in_zoho_books_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateOrganizationInZohoBooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'request_body': '{"name":"Sample Organization","currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_organization_user_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_organization_user_example_call_tool.js deleted file mode 100644 index ea164e54f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_organization_user_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateOrganizationUser"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_organization_user_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_organization_user_example_call_tool.py deleted file mode 100644 index 648167f1b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_organization_user_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateOrganizationUser" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_project_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_project_example_call_tool.js deleted file mode 100644 index 7a7ddb001..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"name\":\"New Project\",\"description\":\"This is a sample project.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_project_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_project_example_call_tool.py deleted file mode 100644 index 25c3527dd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_project_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"name":"New Project","description":"This is a sample project."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_bill_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_bill_example_call_tool.js deleted file mode 100644 index d044288e3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_bill_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateRecurringBill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"amount\":100,\"currency\":\"USD\",\"frequency\":\"monthly\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_bill_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_bill_example_call_tool.py deleted file mode 100644 index 3a4856b05..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_bill_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateRecurringBill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"amount":100,"currency":"USD","frequency":"monthly"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_expense_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_expense_example_call_tool.js deleted file mode 100644 index 1e574ffbb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_expense_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateRecurringExpense"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"expense_name\":\"Office Supplies\",\"amount\":100,\"recurrence\":\"monthly\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_expense_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_expense_example_call_tool.py deleted file mode 100644 index 6fb2bd0e8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_expense_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateRecurringExpense" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"expense_name":"Office Supplies","amount":100,"recurrence":"monthly"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_invoice_example_call_tool.js deleted file mode 100644 index 3afa7c000..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_invoice_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateRecurringInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"customer_id\":\"78910\",\"amount\":100.0,\"currency\":\"USD\",\"frequency\":\"monthly\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_invoice_example_call_tool.py deleted file mode 100644 index cff3ff21a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_recurring_invoice_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateRecurringInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"customer_id":"78910","amount":100.0,"currency":"USD","frequency":"monthly"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_retainer_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_retainer_invoice_example_call_tool.js deleted file mode 100644 index 717765478..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_retainer_invoice_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateRetainerInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "ignore_auto_number_generation": false, - "request_body": "{\"customer_id\":\"78910\",\"amount\":500,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_retainer_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_retainer_invoice_example_call_tool.py deleted file mode 100644 index 71f325fcf..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_retainer_invoice_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateRetainerInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'ignore_auto_number_generation': False, - 'request_body': '{"customer_id":"78910","amount":500,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_sales_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_sales_order_example_call_tool.js deleted file mode 100644 index 0168de3cf..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_sales_order_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateSalesOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "total_number_of_files": 2, - "document_attachment": "[file_content]", - "ignore_auto_number_generation": false, - "can_send_via_email": true, - "request_body": "{\"customer_id\":\"cust_001\",\"items\":[{\"item_id\":\"item_001\",\"quantity\":1,\"price\":100}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_sales_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_sales_order_example_call_tool.py deleted file mode 100644 index ec84ee86f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_sales_order_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateSalesOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'total_number_of_files': 2, - 'document_attachment': '[file_content]', - 'ignore_auto_number_generation': False, - 'can_send_via_email': True, - 'request_body': '{"customer_id":"cust_001","items":[{"item_id":"item_001","quantity":1,"price":100}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_sales_receipt_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_sales_receipt_example_call_tool.js deleted file mode 100644 index d30380e65..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_sales_receipt_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateSalesReceipt"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "ignore_auto_number_generation": false, - "send_receipt_via_email": true, - "request_body": "{\"item\":\"Widget\",\"amount\":19.99,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_sales_receipt_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_sales_receipt_example_call_tool.py deleted file mode 100644 index 4cd3acf59..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_sales_receipt_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateSalesReceipt" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'ignore_auto_number_generation': False, - 'send_receipt_via_email': True, - 'request_body': '{"item":"Widget","amount":19.99,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_authority_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_authority_example_call_tool.js deleted file mode 100644 index bbcc7c92e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_authority_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateTaxAuthority"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "12345", - "request_body": "{\"name\":\"Tax Authority Name\",\"country\":\"Country Name\",\"rate\":0.15}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_authority_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_authority_example_call_tool.py deleted file mode 100644 index 048c1155f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_authority_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateTaxAuthority" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '12345', - 'request_body': '{"name":"Tax Authority Name","country":"Country Name","rate":0.15}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_exemption_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_exemption_example_call_tool.js deleted file mode 100644 index 64b31be54..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_exemption_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateTaxExemption"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"exemption_type\":\"non_profit\",\"description\":\"Tax exemption for non-profit organization\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_exemption_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_exemption_example_call_tool.py deleted file mode 100644 index c80044e9d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_exemption_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateTaxExemption" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"exemption_type":"non_profit","description":"Tax exemption for non-profit ' - 'organization"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_group_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_group_example_call_tool.js deleted file mode 100644 index 183b68a32..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_group_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateTaxGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"name\":\"Sales Tax Group\",\"taxes\":[{\"id\":\"tax1\"},{\"id\":\"tax2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_group_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_group_example_call_tool.py deleted file mode 100644 index e78e8185f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_tax_group_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateTaxGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"name":"Sales Tax Group","taxes":[{"id":"tax1"},{"id":"tax2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_bill_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_bill_example_call_tool.js deleted file mode 100644 index 2f9323aa1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_bill_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateVendorBill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "attachment_file_path": "/path/to/invoice.pdf", - "request_body": "{\"amount\": 100.00, \"currency\": \"USD\", \"vendor_id\": \"vendor_67890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_bill_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_bill_example_call_tool.py deleted file mode 100644 index 45a58cd72..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_bill_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateVendorBill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'attachment_file_path': '/path/to/invoice.pdf', - 'request_body': '{"amount": 100.00, "currency": "USD", "vendor_id": "vendor_67890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_credit_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_credit_example_call_tool.js deleted file mode 100644 index 9886006df..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_credit_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateVendorCredit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "bill_id": "bill_67890", - "ignore_auto_number_generation": false, - "request_body": "{\"amount\":100,\"currency\":\"USD\",\"description\":\"Return of defective item\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_credit_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_credit_example_call_tool.py deleted file mode 100644 index 2b809f7f4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_credit_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateVendorCredit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'bill_id': 'bill_67890', - 'ignore_auto_number_generation': False, - 'request_body': '{"amount":100,"currency":"USD","description":"Return of defective item"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_payment_example_call_tool.js deleted file mode 100644 index 0a1c5c363..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_payment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateVendorPayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "request_body": "{\"vendor_id\":\"vendor_67890\",\"amount\":1500,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_payment_example_call_tool.py deleted file mode 100644 index 38b7e2353..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_payment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateVendorPayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'request_body': '{"vendor_id":"vendor_67890","amount":1500,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_purchase_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_purchase_order_example_call_tool.js deleted file mode 100644 index c3a5c2ac5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_purchase_order_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateVendorPurchaseOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "file_attachment": "http://example.com/file.pdf", - "ignore_auto_number_generation": false, - "request_body": "{\"vendor_id\":\"vendor_001\",\"items\":[{\"item_id\":\"item_001\",\"quantity\":10,\"price\":100}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_purchase_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_purchase_order_example_call_tool.py deleted file mode 100644 index efc6335db..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_vendor_purchase_order_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateVendorPurchaseOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'file_attachment': 'http://example.com/file.pdf', - 'ignore_auto_number_generation': False, - 'request_body': '{"vendor_id":"vendor_001","items":[{"item_id":"item_001","quantity":10,"price":100}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_zoho_book_location_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/create_zoho_book_location_example_call_tool.js deleted file mode 100644 index 467c6b088..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_zoho_book_location_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreateZohoBookLocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"name\":\"New Location\",\"address\":\"123 Main St, City, Country\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/create_zoho_book_location_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/create_zoho_book_location_example_call_tool.py deleted file mode 100644 index 04b5afcb3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/create_zoho_book_location_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreateZohoBookLocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'request_body': '{"name":"New Location","address":"123 Main St, City, Country"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/credit_note_refund_listing_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/credit_note_refund_listing_example_call_tool.js deleted file mode 100644 index 70e23c31b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/credit_note_refund_listing_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CreditNoteRefundListing"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "customer_identifier": "cust_67890", - "refunds_sort_column": "date", - "pagination_page_number": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/credit_note_refund_listing_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/credit_note_refund_listing_example_call_tool.py deleted file mode 100644 index 40efa1de3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/credit_note_refund_listing_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CreditNoteRefundListing" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'customer_identifier': 'cust_67890', - 'refunds_sort_column': 'date', - 'pagination_page_number': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/crm_to_books_contact_import_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/crm_to_books_contact_import_example_call_tool.js deleted file mode 100644 index 840695ecb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/crm_to_books_contact_import_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.CrmToBooksContactImport"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456789", - "zoho_crm_contact_id": "987654321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/crm_to_books_contact_import_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/crm_to_books_contact_import_example_call_tool.py deleted file mode 100644 index c9304ad1c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/crm_to_books_contact_import_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.CrmToBooksContactImport" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456789', 'zoho_crm_contact_id': '987654321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_bank_account_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_bank_account_example_call_tool.js deleted file mode 100644 index d11d7c256..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_bank_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeactivateBankAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "bank_account_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_bank_account_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_bank_account_example_call_tool.py deleted file mode 100644 index 8bdd46a5f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_bank_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeactivateBankAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'bank_account_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_chart_of_account_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_chart_of_account_example_call_tool.js deleted file mode 100644 index da69fafcf..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_chart_of_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeactivateChartOfAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "account_identifier": "acc_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_chart_of_account_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_chart_of_account_example_call_tool.py deleted file mode 100644 index 59f4563e6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_chart_of_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeactivateChartOfAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'account_identifier': 'acc_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_project_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_project_example_call_tool.js deleted file mode 100644 index e475d6d73..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeactivateProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "project_id": "proj_7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_project_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_project_example_call_tool.py deleted file mode 100644 index 0731b1bde..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeactivateProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'project_id': 'proj_7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_user_account_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_user_account_example_call_tool.js deleted file mode 100644 index 7e22708dc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_user_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeactivateUserAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "user_unique_identifier": "user@example.com" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_user_account_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_user_account_example_call_tool.py deleted file mode 100644 index 8b4c2258d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/deactivate_user_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeactivateUserAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'user_unique_identifier': 'user@example.com' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/decline_estimate_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/decline_estimate_example_call_tool.js deleted file mode 100644 index 4955fb418..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/decline_estimate_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeclineEstimate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "estimate_identifier": "est_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/decline_estimate_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/decline_estimate_example_call_tool.py deleted file mode 100644 index 8019e1e00..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/decline_estimate_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeclineEstimate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'estimate_identifier': 'est_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_account_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_account_example_call_tool.js deleted file mode 100644 index ca7d655ae..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "account_identifier": "acc_7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_account_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_account_example_call_tool.py deleted file mode 100644 index 81aa21578..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'account_identifier': 'acc_7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_asset_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_asset_comment_example_call_tool.js deleted file mode 100644 index 067311717..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_asset_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteAssetComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "fixed_asset_identifier": "asset_789", - "comment_id": "comment_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_asset_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_asset_comment_example_call_tool.py deleted file mode 100644 index 1c6a3c8f5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_asset_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteAssetComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'fixed_asset_identifier': 'asset_789', 'comment_id': 'comment_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_account_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_account_example_call_tool.js deleted file mode 100644 index aa0faafee..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_account_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteBankAccount"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bank_account_unique_id": "bank_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_account_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_account_example_call_tool.py deleted file mode 100644 index e8c8027c9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_account_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteBankAccount" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'bank_account_unique_id': 'bank_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_account_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_account_rule_example_call_tool.js deleted file mode 100644 index aea16f2bd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_account_rule_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteBankAccountRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "bank_account_rule_id": "rule_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_account_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_account_rule_example_call_tool.py deleted file mode 100644 index e13f45b0f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_account_rule_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteBankAccountRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'bank_account_rule_id': 'rule_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_transaction_example_call_tool.js deleted file mode 100644 index 0ccf4aeae..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_transaction_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteBankTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bank_transaction_id": "txn_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_transaction_example_call_tool.py deleted file mode 100644 index 890cc8830..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bank_transaction_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteBankTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'bank_transaction_id': 'txn_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_attachment_example_call_tool.js deleted file mode 100644 index b8c4781f8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_attachment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteBillAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bill_unique_identifier": "bill_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_attachment_example_call_tool.py deleted file mode 100644 index 535d94811..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_attachment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteBillAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'bill_unique_identifier': 'bill_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_comment_example_call_tool.js deleted file mode 100644 index dafae48af..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteBillComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bill_identifier": "bill_67890", - "comment_id": "comment_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_comment_example_call_tool.py deleted file mode 100644 index 52e9c7cdd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteBillComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'bill_identifier': 'bill_67890', 'comment_id': 'comment_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_payment_example_call_tool.js deleted file mode 100644 index 7ccf6bb02..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_payment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteBillPayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bill_identifier": "bill_67890", - "bill_payment_identifier": "payment_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_payment_example_call_tool.py deleted file mode 100644 index 92f7c59e2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_bill_payment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteBillPayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'bill_identifier': 'bill_67890', - 'bill_payment_identifier': 'payment_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_address_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_address_example_call_tool.js deleted file mode 100644 index c1e366336..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_address_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteContactAddress"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "contact_unique_id": "contact_67890", - "address_identifier": "addr_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_address_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_address_example_call_tool.py deleted file mode 100644 index 579c3f6d0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_address_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteContactAddress" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'contact_unique_id': 'contact_67890', - 'address_identifier': 'addr_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_example_call_tool.js deleted file mode 100644 index ef81a9fd7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "contact_unique_identifier": "contact_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_example_call_tool.py deleted file mode 100644 index 592189fba..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'contact_unique_identifier': 'contact_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_person_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_person_example_call_tool.js deleted file mode 100644 index 1e48f9468..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_person_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteContactPerson"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "contact_person_id": "cp_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_person_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_person_example_call_tool.py deleted file mode 100644 index 747b3bf6b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_contact_person_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteContactPerson" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'contact_person_id': 'cp_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_comment_example_call_tool.js deleted file mode 100644 index 9287c2c0a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteCreditNoteComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "credit_note_id": "cn_67890", - "comment_unique_identifier": "comment_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_comment_example_call_tool.py deleted file mode 100644 index 9c6065c08..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_comment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteCreditNoteComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'credit_note_id': 'cn_67890', - 'comment_unique_identifier': 'comment_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_example_call_tool.js deleted file mode 100644 index fb06c9c1c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteCreditNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "credit_note_id": "cn_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_example_call_tool.py deleted file mode 100644 index b5221ac8b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteCreditNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'credit_note_id': 'cn_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_invoice_example_call_tool.js deleted file mode 100644 index adb543eda..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_invoice_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteCreditNoteInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "credit_note_unique_id": "cn_67890", - "credit_note_invoice_id": "cni_54321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_invoice_example_call_tool.py deleted file mode 100644 index 5e3b4968e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_invoice_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteCreditNoteInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'credit_note_unique_id': 'cn_67890', - 'credit_note_invoice_id': 'cni_54321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_refund_example_call_tool.js deleted file mode 100644 index 710d06ed9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_refund_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteCreditNoteRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "credit_note_id": "cn_67890", - "credit_note_refund_id": "cr_54321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_refund_example_call_tool.py deleted file mode 100644 index 586f15fe1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_credit_note_refund_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteCreditNoteRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'credit_note_id': 'cn_67890', 'credit_note_refund_id': 'cr_54321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_currency_adjustment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_currency_adjustment_example_call_tool.js deleted file mode 100644 index 29ca8754c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_currency_adjustment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteCurrencyAdjustment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "base_currency_adjustment_id": "adj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_currency_adjustment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_currency_adjustment_example_call_tool.py deleted file mode 100644 index 306473bf4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_currency_adjustment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteCurrencyAdjustment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'base_currency_adjustment_id': 'adj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_custom_module_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_custom_module_example_call_tool.js deleted file mode 100644 index 57222e948..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_custom_module_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteCustomModule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "module_name": "Invoices" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_custom_module_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_custom_module_example_call_tool.py deleted file mode 100644 index 28b003efb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_custom_module_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteCustomModule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'module_name': 'Invoices' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_custom_module_record_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_custom_module_record_example_call_tool.js deleted file mode 100644 index d7f9a8a0a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_custom_module_record_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteCustomModuleRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "module_name": "Invoices", - "custom_module_id": 789 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_custom_module_record_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_custom_module_record_example_call_tool.py deleted file mode 100644 index b2322c8f9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_custom_module_record_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteCustomModuleRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'module_name': 'Invoices', 'custom_module_id': 789 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_debit_note_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_debit_note_example_call_tool.js deleted file mode 100644 index 09e877bba..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_debit_note_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteCustomerDebitNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "debit_note_unique_id": "DN7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_debit_note_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_debit_note_example_call_tool.py deleted file mode 100644 index c03750f2c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_debit_note_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteCustomerDebitNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'debit_note_unique_id': 'DN7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_payment_example_call_tool.js deleted file mode 100644 index 77bb53fcc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_payment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteCustomerPayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "payment_identifier": "pay_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_payment_example_call_tool.py deleted file mode 100644 index a9ef4f24a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_payment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteCustomerPayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'payment_identifier': 'pay_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_payment_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_payment_refund_example_call_tool.js deleted file mode 100644 index b6d31b7ab..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_payment_refund_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteCustomerPaymentRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "customer_payment_identifier": "payment_789", - "refund_identifier": "refund_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_payment_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_payment_refund_example_call_tool.py deleted file mode 100644 index 80094db7d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_customer_payment_refund_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteCustomerPaymentRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', - 'customer_payment_identifier': 'payment_789', - 'refund_identifier': 'refund_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_employee_record_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_employee_record_example_call_tool.js deleted file mode 100644 index aa3aba2c3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_employee_record_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteEmployeeRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "employee_identifier": "emp_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_employee_record_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_employee_record_example_call_tool.py deleted file mode 100644 index a870025f9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_employee_record_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteEmployeeRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'employee_identifier': 'emp_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_estimate_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_estimate_comment_example_call_tool.js deleted file mode 100644 index f992d028b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_estimate_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteEstimateComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "estimate_unique_id": "est_78910", - "comment_unique_identifier": "com_111213" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_estimate_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_estimate_comment_example_call_tool.py deleted file mode 100644 index 809cb2741..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_estimate_comment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteEstimateComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', - 'estimate_unique_id': 'est_78910', - 'comment_unique_identifier': 'com_111213' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_estimate_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_estimate_example_call_tool.js deleted file mode 100644 index 0dd425411..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_estimate_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteEstimate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "estimate_id": "est_78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_estimate_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_estimate_example_call_tool.py deleted file mode 100644 index 52e69c805..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_estimate_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteEstimate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'estimate_id': 'est_78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_exchange_rate_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_exchange_rate_example_call_tool.js deleted file mode 100644 index f8ab178dd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_exchange_rate_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteExchangeRate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "currency_identifier": "USD", - "exchange_rate_identifier": "rate_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_exchange_rate_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_exchange_rate_example_call_tool.py deleted file mode 100644 index 4864c975c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_exchange_rate_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteExchangeRate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'currency_identifier': 'USD', - 'exchange_rate_identifier': 'rate_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_existing_bill_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_existing_bill_example_call_tool.js deleted file mode 100644 index 4de3eaa78..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_existing_bill_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteExistingBill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "bill_identifier": "bill_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_existing_bill_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_existing_bill_example_call_tool.py deleted file mode 100644 index ddc4b84ed..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_existing_bill_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteExistingBill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'bill_identifier': 'bill_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_expense_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_expense_entry_example_call_tool.js deleted file mode 100644 index ae85da899..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_expense_entry_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteExpenseEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "expense_identifier": "exp_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_expense_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_expense_entry_example_call_tool.py deleted file mode 100644 index adcc279ec..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_expense_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteExpenseEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'expense_identifier': 'exp_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_expense_receipt_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_expense_receipt_example_call_tool.js deleted file mode 100644 index ee16747e7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_expense_receipt_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteExpenseReceipt"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "expense_id": "exp_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_expense_receipt_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_expense_receipt_example_call_tool.py deleted file mode 100644 index 753c02157..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_expense_receipt_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteExpenseReceipt" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'expense_id': 'exp_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_fixed_asset_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_fixed_asset_example_call_tool.js deleted file mode 100644 index 71c30ba57..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_fixed_asset_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteFixedAsset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "fixed_asset_identifier": "asset_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_fixed_asset_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_fixed_asset_example_call_tool.py deleted file mode 100644 index 1ea2a7ea9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_fixed_asset_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteFixedAsset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'fixed_asset_identifier': 'asset_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_fixed_asset_type_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_fixed_asset_type_example_call_tool.js deleted file mode 100644 index 8796853e8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_fixed_asset_type_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteFixedAssetType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "fixed_asset_type_identifier": "asset_type_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_fixed_asset_type_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_fixed_asset_type_example_call_tool.py deleted file mode 100644 index 7fc4f8a85..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_fixed_asset_type_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteFixedAssetType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'fixed_asset_type_identifier': 'asset_type_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_attachment_example_call_tool.js deleted file mode 100644 index 2ff701752..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_attachment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteInvoiceAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "invoice_identifier": "INV-78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_attachment_example_call_tool.py deleted file mode 100644 index 007256230..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_attachment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteInvoiceAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'invoice_identifier': 'INV-78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_comment_example_call_tool.js deleted file mode 100644 index 28c9e99fa..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteInvoiceComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_identifier": "inv_67890", - "comment_unique_identifier": "comment_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_comment_example_call_tool.py deleted file mode 100644 index bb51f4b28..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_comment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteInvoiceComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'invoice_identifier': 'inv_67890', - 'comment_unique_identifier': 'comment_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_document_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_document_example_call_tool.js deleted file mode 100644 index b580381f5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_document_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteInvoiceDocument"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_id": "inv_67890", - "invoice_document_id": "doc_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_document_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_document_example_call_tool.py deleted file mode 100644 index ec419ce50..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_document_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteInvoiceDocument" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'invoice_id': 'inv_67890', 'invoice_document_id': 'doc_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_expense_receipt_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_expense_receipt_example_call_tool.js deleted file mode 100644 index 72607742f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_expense_receipt_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteInvoiceExpenseReceipt"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "expense_identifier": "exp_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_expense_receipt_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_expense_receipt_example_call_tool.py deleted file mode 100644 index f0b4e55ed..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_expense_receipt_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteInvoiceExpenseReceipt" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'expense_identifier': 'exp_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_in_zoho_books_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_in_zoho_books_example_call_tool.js deleted file mode 100644 index 26d09fd8f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_in_zoho_books_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteInvoiceInZohoBooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "invoice_identifier": "INV-78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_in_zoho_books_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_in_zoho_books_example_call_tool.py deleted file mode 100644 index 8376770df..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_in_zoho_books_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteInvoiceInZohoBooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'invoice_identifier': 'INV-78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_payment_example_call_tool.js deleted file mode 100644 index b7d3ccc81..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_payment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteInvoicePayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "invoice_identifier": "INV-2023-001", - "invoice_payment_identifier": "PAY-2023-001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_payment_example_call_tool.py deleted file mode 100644 index 1e5dc5601..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_invoice_payment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteInvoicePayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', - 'invoice_identifier': 'INV-2023-001', - 'invoice_payment_identifier': 'PAY-2023-001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_item_in_zoho_books_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_item_in_zoho_books_example_call_tool.js deleted file mode 100644 index 899590f46..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_item_in_zoho_books_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteItemInZohoBooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "item_identifier": "item_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_item_in_zoho_books_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_item_in_zoho_books_example_call_tool.py deleted file mode 100644 index 0f4407e24..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_item_in_zoho_books_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteItemInZohoBooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'item_identifier': 'item_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_journal_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_journal_comment_example_call_tool.js deleted file mode 100644 index dafb66f45..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_journal_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteJournalComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "journal_unique_id": "journal_67890", - "comment_id": "comment_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_journal_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_journal_comment_example_call_tool.py deleted file mode 100644 index ba7a58b37..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_journal_comment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteJournalComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'journal_unique_id': 'journal_67890', - 'comment_id': 'comment_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_journal_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_journal_entry_example_call_tool.js deleted file mode 100644 index c838ddd31..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_journal_entry_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteJournalEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "journal_entry_id": "78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_journal_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_journal_entry_example_call_tool.py deleted file mode 100644 index 913ca4e27..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_journal_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteJournalEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'journal_entry_id': '78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_last_imported_bank_statement_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_last_imported_bank_statement_example_call_tool.js deleted file mode 100644 index b19ef2bf4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_last_imported_bank_statement_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteLastImportedBankStatement"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bank_account_unique_identifier": "account_67890", - "bank_statement_id": "statement_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_last_imported_bank_statement_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_last_imported_bank_statement_example_call_tool.py deleted file mode 100644 index e672c4199..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_last_imported_bank_statement_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteLastImportedBankStatement" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'bank_account_unique_identifier': 'account_67890', - 'bank_statement_id': 'statement_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_location_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_location_example_call_tool.js deleted file mode 100644 index d87b8b765..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_location_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteLocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "location_id": "loc_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_location_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_location_example_call_tool.py deleted file mode 100644 index 8fc31f6cf..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_location_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteLocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'location_id': 'loc_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_logged_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_logged_time_entry_example_call_tool.js deleted file mode 100644 index 0271f5c99..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_logged_time_entry_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteLoggedTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "time_entry_identifier": "entry_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_logged_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_logged_time_entry_example_call_tool.py deleted file mode 100644 index eed4cbb7c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_logged_time_entry_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteLoggedTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'time_entry_identifier': 'entry_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_multiple_vendor_payments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_multiple_vendor_payments_example_call_tool.js deleted file mode 100644 index bb773d1d1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_multiple_vendor_payments_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteMultipleVendorPayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "vendor_payment_ids": "vp_67890,vp_12345,vp_54321", - "bulk_delete": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_multiple_vendor_payments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_multiple_vendor_payments_example_call_tool.py deleted file mode 100644 index 1f0ce24f5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_multiple_vendor_payments_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteMultipleVendorPayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'vendor_payment_ids': 'vp_67890,vp_12345,vp_54321', - 'bulk_delete': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_opening_balance_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_opening_balance_example_call_tool.js deleted file mode 100644 index f0e2c4394..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_opening_balance_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteOpeningBalance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_opening_balance_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_opening_balance_example_call_tool.py deleted file mode 100644 index 6709d5ff5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_opening_balance_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteOpeningBalance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_comment_example_call_tool.js deleted file mode 100644 index d34cfec2f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteProjectComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "project_identifier": "proj_67890", - "comment_unique_identifier": "comment_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_comment_example_call_tool.py deleted file mode 100644 index c5f69cba1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_comment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteProjectComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'project_identifier': 'proj_67890', - 'comment_unique_identifier': 'comment_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_example_call_tool.js deleted file mode 100644 index 68c89bd26..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "project_id": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_example_call_tool.py deleted file mode 100644 index c59aaba7c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'project_id': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_task_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_task_example_call_tool.js deleted file mode 100644 index df378e413..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_task_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteProjectTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "project_identifier": "proj_67890", - "task_identifier": "task_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_task_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_task_example_call_tool.py deleted file mode 100644 index 02bef67dc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_project_task_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteProjectTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'project_identifier': 'proj_67890', - 'task_identifier': 'task_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_attachment_example_call_tool.js deleted file mode 100644 index fe34e0481..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_attachment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeletePurchaseOrderAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "purchase_order_id": "po_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_attachment_example_call_tool.py deleted file mode 100644 index c87e20761..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_attachment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeletePurchaseOrderAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'purchase_order_id': 'po_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_comment_example_call_tool.js deleted file mode 100644 index bd60d5d5c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeletePurchaseOrderComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "purchase_order_id": "po_67890", - "comment_unique_identifier": "comment_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_comment_example_call_tool.py deleted file mode 100644 index 2c1e15f39..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_comment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeletePurchaseOrderComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'purchase_order_id': 'po_67890', - 'comment_unique_identifier': 'comment_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_example_call_tool.js deleted file mode 100644 index 6f946fdc9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeletePurchaseOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "purchase_order_identifier": "po_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_example_call_tool.py deleted file mode 100644 index 341ebe948..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_purchase_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeletePurchaseOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'purchase_order_identifier': 'po_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_bill_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_bill_example_call_tool.js deleted file mode 100644 index 6188817f9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_bill_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteRecurringBill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "recurring_bill_identifier": "bill_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_bill_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_bill_example_call_tool.py deleted file mode 100644 index 2013c918a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_bill_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteRecurringBill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'recurring_bill_identifier': 'bill_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_expense_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_expense_example_call_tool.js deleted file mode 100644 index 2683da6dd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_expense_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteRecurringExpense"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "recurring_expense_id": "rec_exp_7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_expense_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_expense_example_call_tool.py deleted file mode 100644 index c6ea7bba6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_expense_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteRecurringExpense" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'recurring_expense_id': 'rec_exp_7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_invoice_example_call_tool.js deleted file mode 100644 index eb02e8fd4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_invoice_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteRecurringInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "recurring_invoice_id": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_invoice_example_call_tool.py deleted file mode 100644 index 6e67368ae..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_recurring_invoice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteRecurringInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'recurring_invoice_id': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_attachment_example_call_tool.js deleted file mode 100644 index bd5ebc8d3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_attachment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteRetainerInvoiceAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "retainer_invoice_id": "inv_78910", - "document_id": "doc_abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_attachment_example_call_tool.py deleted file mode 100644 index 87da58aa7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_attachment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteRetainerInvoiceAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'retainer_invoice_id': 'inv_78910', 'document_id': 'doc_abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_comment_example_call_tool.js deleted file mode 100644 index 148b232ae..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteRetainerInvoiceComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "retainer_invoice_id": "inv_67890", - "comment_identifier": "comment_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_comment_example_call_tool.py deleted file mode 100644 index 12fb0c4bf..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_comment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteRetainerInvoiceComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'retainer_invoice_id': 'inv_67890', - 'comment_identifier': 'comment_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_example_call_tool.js deleted file mode 100644 index c4e1b906f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteRetainerInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "retainer_invoice_identifier": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_example_call_tool.py deleted file mode 100644 index 3acd8f80a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_retainer_invoice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteRetainerInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'retainer_invoice_identifier': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_attachment_example_call_tool.js deleted file mode 100644 index c3bfa1d9d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_attachment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteSalesOrderAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "sales_order_id": "SO78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_attachment_example_call_tool.py deleted file mode 100644 index 42a8935c3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_attachment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteSalesOrderAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'sales_order_id': 'SO78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_comment_example_call_tool.js deleted file mode 100644 index fa6786eef..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteSalesOrderComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "sales_order_id": "so_67890", - "comment_identifier": "comment_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_comment_example_call_tool.py deleted file mode 100644 index f893464c6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteSalesOrderComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'sales_order_id': 'so_67890', 'comment_identifier': 'comment_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_example_call_tool.js deleted file mode 100644 index 171d6e498..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteSalesOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "sales_order_id": "so_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_example_call_tool.py deleted file mode 100644 index 7f48a40af..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteSalesOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'sales_order_id': 'so_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_receipt_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_receipt_example_call_tool.js deleted file mode 100644 index 7e62dfb96..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_receipt_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteSalesReceipt"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "sales_receipt_id": "abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_receipt_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_receipt_example_call_tool.py deleted file mode 100644 index 47f96508c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_sales_receipt_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteSalesReceipt" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'sales_receipt_id': 'abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_authority_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_authority_example_call_tool.js deleted file mode 100644 index a13329ef1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_authority_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteTaxAuthority"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "tax_authority_identifier": "tax_auth_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_authority_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_authority_example_call_tool.py deleted file mode 100644 index 923d3f44c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_authority_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteTaxAuthority" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'tax_authority_identifier': 'tax_auth_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_example_call_tool.js deleted file mode 100644 index b29f09715..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteTax"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "tax_identifier": "tax_7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_example_call_tool.py deleted file mode 100644 index c513d24ed..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteTax" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'tax_identifier': 'tax_7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_exemption_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_exemption_example_call_tool.js deleted file mode 100644 index 9d6ec5fd9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_exemption_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteTaxExemption"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "tax_exemption_identifier": "exemption_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_exemption_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_exemption_example_call_tool.py deleted file mode 100644 index 9db74471a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_exemption_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteTaxExemption" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'tax_exemption_identifier': 'exemption_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_group_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_group_example_call_tool.js deleted file mode 100644 index bc95f3ca0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_group_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteTaxGroup"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "tax_group_identifier": "tax_group_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_group_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_group_example_call_tool.py deleted file mode 100644 index 8918c3ee9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_tax_group_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteTaxGroup" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'tax_group_identifier': 'tax_group_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_time_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_time_entries_example_call_tool.js deleted file mode 100644 index b3d6c39c9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_time_entries_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteTimeEntries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_time_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_time_entries_example_call_tool.py deleted file mode 100644 index ec56fcecb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_time_entries_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteTimeEntries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_transaction_example_call_tool.js deleted file mode 100644 index 5325413bc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_transaction_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "transaction_identifier": "txn_7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_transaction_example_call_tool.py deleted file mode 100644 index 76537e306..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_transaction_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'transaction_identifier': 'txn_7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_comment_example_call_tool.js deleted file mode 100644 index 158c946e7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_comment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteVendorCreditComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "vendor_credit_id": "vc78910", - "comment_id": "cmt54321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_comment_example_call_tool.py deleted file mode 100644 index 49c2fc5e2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_comment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteVendorCreditComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'vendor_credit_id': 'vc78910', 'comment_id': 'cmt54321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_example_call_tool.js deleted file mode 100644 index b457a4aa7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteVendorCredit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "vendor_credit_identifier": "vc_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_example_call_tool.py deleted file mode 100644 index fe7974849..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteVendorCredit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'vendor_credit_identifier': 'vc_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_refund_example_call_tool.js deleted file mode 100644 index 1efaac371..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_refund_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteVendorCreditRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "vendor_credit_identifier": "VC78910", - "vendor_credit_refund_id": "RFD112233" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_refund_example_call_tool.py deleted file mode 100644 index a88c44bf3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_credit_refund_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteVendorCreditRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', - 'vendor_credit_identifier': 'VC78910', - 'vendor_credit_refund_id': 'RFD112233' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_payment_example_call_tool.js deleted file mode 100644 index 503840fdb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_payment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteVendorPayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "vendor_payment_id": "78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_payment_example_call_tool.py deleted file mode 100644 index 89720f1b3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_payment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteVendorPayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'vendor_payment_id': '78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_payment_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_payment_refund_example_call_tool.js deleted file mode 100644 index ef6fe6bd3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_payment_refund_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DeleteVendorPaymentRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "payment_identifier": "pay_67890", - "vendor_payment_refund_id": "refund_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_payment_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_payment_refund_example_call_tool.py deleted file mode 100644 index 05be3119c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/delete_vendor_payment_refund_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DeleteVendorPaymentRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'payment_identifier': 'pay_67890', - 'vendor_payment_refund_id': 'refund_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/disable_contact_payment_reminder_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/disable_contact_payment_reminder_example_call_tool.js deleted file mode 100644 index c1bc7015c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/disable_contact_payment_reminder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DisableContactPaymentReminder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "contact_unique_identifier": "contact_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/disable_contact_payment_reminder_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/disable_contact_payment_reminder_example_call_tool.py deleted file mode 100644 index 8d8be53ab..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/disable_contact_payment_reminder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DisableContactPaymentReminder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'contact_unique_identifier': 'contact_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/disable_invoice_payment_reminder_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/disable_invoice_payment_reminder_example_call_tool.js deleted file mode 100644 index 51a15ebbb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/disable_invoice_payment_reminder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.DisableInvoicePaymentReminder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_identifier": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/disable_invoice_payment_reminder_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/disable_invoice_payment_reminder_example_call_tool.py deleted file mode 100644 index 0ffda1326..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/disable_invoice_payment_reminder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.DisableInvoicePaymentReminder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'invoice_identifier': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/email_contact_statement_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/email_contact_statement_example_call_tool.js deleted file mode 100644 index 938975082..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/email_contact_statement_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.EmailContactStatement"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "contact_identifier": "contact_67890", - "statement_start_date": "2023-01-01", - "statement_end_date": "2023-01-31", - "attachment_files": "[file_content]", - "request_body": "{\"type\":\"financial_statement\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/email_contact_statement_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/email_contact_statement_example_call_tool.py deleted file mode 100644 index 8ddab21aa..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/email_contact_statement_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.EmailContactStatement" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'contact_identifier': 'contact_67890', - 'statement_start_date': '2023-01-01', - 'statement_end_date': '2023-01-31', - 'attachment_files': '[file_content]', - 'request_body': '{"type":"financial_statement"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/email_credit_note_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/email_credit_note_example_call_tool.js deleted file mode 100644 index d8ccf662f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/email_credit_note_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.EmailCreditNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "credit_note_id": "cn_67890", - "customer_id_for_credit_note": "cust_54321", - "email_attachments": "[file_path]", - "request_body": "{\"amount\":100,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/email_credit_note_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/email_credit_note_example_call_tool.py deleted file mode 100644 index 4ee730c42..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/email_credit_note_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.EmailCreditNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'credit_note_id': 'cn_67890', - 'customer_id_for_credit_note': 'cust_54321', - 'email_attachments': '[file_path]', - 'request_body': '{"amount":100,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/email_retainer_invoice_to_customer_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/email_retainer_invoice_to_customer_example_call_tool.js deleted file mode 100644 index 09b7a49f3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/email_retainer_invoice_to_customer_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.EmailRetainerInvoiceToCustomer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "retainer_invoice_id": "inv_67890", - "email_attachments": "[file_path]", - "send_customer_statement": true, - "attach_invoice_to_email": true, - "request_body": "{\"customer_email\":\"customer@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/email_retainer_invoice_to_customer_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/email_retainer_invoice_to_customer_example_call_tool.py deleted file mode 100644 index c34959d7a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/email_retainer_invoice_to_customer_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.EmailRetainerInvoiceToCustomer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'retainer_invoice_id': 'inv_67890', - 'email_attachments': '[file_path]', - 'send_customer_statement': True, - 'attach_invoice_to_email': True, - 'request_body': '{"customer_email":"customer@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/email_sales_order_to_customer_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/email_sales_order_to_customer_example_call_tool.js deleted file mode 100644 index c9b4a9f03..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/email_sales_order_to_customer_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.EmailSalesOrderToCustomer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org123", - "sales_order_id": "so456", - "sales_order_identifier": "so789", - "sales_order_attachments": "[attachment_url]", - "file_name": "order.pdf", - "include_sales_order_attachment": true, - "request_body": "{\"customer_email\":\"customer@example.com\",\"subject\":\"Your Sales Order\",\"body\":\"Thank you for your order!\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/email_sales_order_to_customer_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/email_sales_order_to_customer_example_call_tool.py deleted file mode 100644 index f8a7ec55f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/email_sales_order_to_customer_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.EmailSalesOrderToCustomer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org123', - 'sales_order_id': 'so456', - 'sales_order_identifier': 'so789', - 'sales_order_attachments': '[attachment_url]', - 'file_name': 'order.pdf', - 'include_sales_order_attachment': True, - 'request_body': '{"customer_email":"customer@example.com","subject":"Your Sales ' - 'Order","body":"Thank you for your order!"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/email_sales_receipt_to_customer_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/email_sales_receipt_to_customer_example_call_tool.js deleted file mode 100644 index 00767bb2a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/email_sales_receipt_to_customer_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.EmailSalesReceiptToCustomer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "sales_receipt_identifier": "12345", - "attach_pdf": true, - "request_body": "{\"customer_email\":\"customer@example.com\",\"amount\":100.00}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/email_sales_receipt_to_customer_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/email_sales_receipt_to_customer_example_call_tool.py deleted file mode 100644 index 13d2b9089..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/email_sales_receipt_to_customer_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.EmailSalesReceiptToCustomer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'sales_receipt_identifier': '12345', - 'attach_pdf': True, - 'request_body': '{"customer_email":"customer@example.com","amount":100.00}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/enable_contact_portal_access_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/enable_contact_portal_access_example_call_tool.js deleted file mode 100644 index 5ca1f709e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/enable_contact_portal_access_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.EnableContactPortalAccess"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "contact_unique_id": "abc-123", - "request_body": "{\"access\":\"enabled\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/enable_contact_portal_access_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/enable_contact_portal_access_example_call_tool.py deleted file mode 100644 index 1becb12b4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/enable_contact_portal_access_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.EnableContactPortalAccess" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'contact_unique_id': 'abc-123', - 'request_body': '{"access":"enabled"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/enable_organization_locations_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/enable_organization_locations_example_call_tool.js deleted file mode 100644 index bec077f0c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/enable_organization_locations_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.EnableOrganizationLocations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/enable_organization_locations_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/enable_organization_locations_example_call_tool.py deleted file mode 100644 index b71442b5c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/enable_organization_locations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.EnableOrganizationLocations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/enable_payment_reminder_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/enable_payment_reminder_example_call_tool.js deleted file mode 100644 index 32a254f33..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/enable_payment_reminder_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.EnablePaymentReminder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "contact_unique_identifier": "contact_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/enable_payment_reminder_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/enable_payment_reminder_example_call_tool.py deleted file mode 100644 index 96867bacf..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/enable_payment_reminder_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.EnablePaymentReminder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'contact_unique_identifier': 'contact_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/exclude_bank_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/exclude_bank_transaction_example_call_tool.js deleted file mode 100644 index 0816b3557..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/exclude_bank_transaction_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ExcludeBankTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "transaction_id": "txn_67890", - "account_id_for_transaction_exclusion": "acc_54321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/exclude_bank_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/exclude_bank_transaction_example_call_tool.py deleted file mode 100644 index 90c69d844..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/exclude_bank_transaction_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ExcludeBankTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'transaction_id': 'txn_67890', - 'account_id_for_transaction_exclusion': 'acc_54321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/export_and_print_estimates_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/export_and_print_estimates_example_call_tool.js deleted file mode 100644 index 42f9af11d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/export_and_print_estimates_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ExportAndPrintEstimates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "estimate_ids_to_export": "est_001,est_002,est_003" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/export_and_print_estimates_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/export_and_print_estimates_example_call_tool.py deleted file mode 100644 index 4951d4c1d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/export_and_print_estimates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ExportAndPrintEstimates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'estimate_ids_to_export': 'est_001,est_002,est_003' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/export_and_print_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/export_and_print_invoices_example_call_tool.js deleted file mode 100644 index 1f8c9d049..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/export_and_print_invoices_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ExportAndPrintInvoices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_identifiers": "inv_001,inv_002,inv_003" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/export_and_print_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/export_and_print_invoices_example_call_tool.py deleted file mode 100644 index ca7bbc709..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/export_and_print_invoices_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ExportAndPrintInvoices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'invoice_identifiers': 'inv_001,inv_002,inv_003' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/export_estimates_as_pdf_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/export_estimates_as_pdf_example_call_tool.js deleted file mode 100644 index a7371bdf6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/export_estimates_as_pdf_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ExportEstimatesAsPdf"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "estimate_ids": "est_001,est_002,est_003" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/export_estimates_as_pdf_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/export_estimates_as_pdf_example_call_tool.py deleted file mode 100644 index 84a756060..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/export_estimates_as_pdf_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ExportEstimatesAsPdf" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'estimate_ids': 'est_001,est_002,est_003' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/export_invoices_as_pdf_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/export_invoices_as_pdf_example_call_tool.js deleted file mode 100644 index 78e67e881..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/export_invoices_as_pdf_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ExportInvoicesAsPdf"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "invoice_ids": "inv_001,inv_002,inv_003" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/export_invoices_as_pdf_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/export_invoices_as_pdf_example_call_tool.py deleted file mode 100644 index 5a5136dff..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/export_invoices_as_pdf_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ExportInvoicesAsPdf" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'invoice_ids': 'inv_001,inv_002,inv_003' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/export_print_sales_orders_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/export_print_sales_orders_example_call_tool.js deleted file mode 100644 index 9eb20278b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/export_print_sales_orders_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ExportPrintSalesOrders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/export_print_sales_orders_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/export_print_sales_orders_example_call_tool.py deleted file mode 100644 index 13b2d1de6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/export_print_sales_orders_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ExportPrintSalesOrders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/export_sales_orders_pdf_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/export_sales_orders_pdf_example_call_tool.js deleted file mode 100644 index ad60c5233..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/export_sales_orders_pdf_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ExportSalesOrdersPdf"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/export_sales_orders_pdf_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/export_sales_orders_pdf_example_call_tool.py deleted file mode 100644 index 1cb16dc7a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/export_sales_orders_pdf_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ExportSalesOrdersPdf" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_asset_history_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/fetch_asset_history_example_call_tool.js deleted file mode 100644 index 6003e069d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_asset_history_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.FetchAssetHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "fixed_asset_identifier": "asset_67890", - "page_number": 1, - "records_per_page": 200 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_asset_history_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/fetch_asset_history_example_call_tool.py deleted file mode 100644 index 26a077f21..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_asset_history_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.FetchAssetHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'fixed_asset_identifier': 'asset_67890', - 'page_number': 1, - 'records_per_page': 200 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_bank_account_rules_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/fetch_bank_account_rules_example_call_tool.js deleted file mode 100644 index 9086cb6fa..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_bank_account_rules_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.FetchBankAccountRules"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bank_account_id": 987654321 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_bank_account_rules_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/fetch_bank_account_rules_example_call_tool.py deleted file mode 100644 index 89d1a4d02..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_bank_account_rules_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.FetchBankAccountRules" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'bank_account_id': 987654321 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_bank_transaction_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/fetch_bank_transaction_details_example_call_tool.js deleted file mode 100644 index 2521bc2d2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_bank_transaction_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.FetchBankTransactionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bank_transaction_id": "txn_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_bank_transaction_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/fetch_bank_transaction_details_example_call_tool.py deleted file mode 100644 index 63a4cb24f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_bank_transaction_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.FetchBankTransactionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'bank_transaction_id': 'txn_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_employee_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/fetch_employee_details_example_call_tool.js deleted file mode 100644 index 23b199fdb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_employee_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.FetchEmployeeDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "employee_unique_id": "emp_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_employee_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/fetch_employee_details_example_call_tool.py deleted file mode 100644 index 6e3536bbc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_employee_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.FetchEmployeeDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'employee_unique_id': 'emp_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_vendor_credit_refunds_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/fetch_vendor_credit_refunds_example_call_tool.js deleted file mode 100644 index c5f4d285e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_vendor_credit_refunds_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.FetchVendorCreditRefunds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "search_vendor_credits_by_customer_id": 67890, - "sort_vendor_credits_by_column": "date", - "pagination_page_number": 2, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_vendor_credit_refunds_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/fetch_vendor_credit_refunds_example_call_tool.py deleted file mode 100644 index 12aac5f01..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_vendor_credit_refunds_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.FetchVendorCreditRefunds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'search_vendor_credits_by_customer_id': 67890, - 'sort_vendor_credits_by_column': 'date', - 'pagination_page_number': 2, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_vendor_payment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/fetch_vendor_payment_details_example_call_tool.js deleted file mode 100644 index 14519b52e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_vendor_payment_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.FetchVendorPaymentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "payment_identifier": "pay_67890", - "include_tax_information": true, - "print_payment": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_vendor_payment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/fetch_vendor_payment_details_example_call_tool.py deleted file mode 100644 index 565062b69..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/fetch_vendor_payment_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.FetchVendorPaymentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'payment_identifier': 'pay_67890', - 'include_tax_information': True, - 'print_payment': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/find_matching_bank_transactions_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/find_matching_bank_transactions_example_call_tool.js deleted file mode 100644 index ec7a84eca..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/find_matching_bank_transactions_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.FindMatchingBankTransactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "transaction_id": "txn_67890", - "bank_transaction_id": "bank_txn_54321", - "transaction_type": "deposit", - "filter_date_after": "2023-01-01", - "minimum_transaction_amount": 100.0, - "page_number_to_fetch": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/find_matching_bank_transactions_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/find_matching_bank_transactions_example_call_tool.py deleted file mode 100644 index 739bafde2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/find_matching_bank_transactions_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.FindMatchingBankTransactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'transaction_id': 'txn_67890', - 'bank_transaction_id': 'bank_txn_54321', - 'transaction_type': 'deposit', - 'filter_date_after': '2023-01-01', - 'minimum_transaction_amount': 100.0, - 'page_number_to_fetch': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/generate_invoice_payment_link_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/generate_invoice_payment_link_example_call_tool.js deleted file mode 100644 index 2d50133f9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/generate_invoice_payment_link_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GenerateInvoicePaymentLink"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "invoice_transaction_id": "inv_67890", - "transaction_type": "Invoice", - "link_type": "Public", - "payment_link_expiry_date": "2023-12-31" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/generate_invoice_payment_link_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/generate_invoice_payment_link_example_call_tool.py deleted file mode 100644 index 29328dd02..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/generate_invoice_payment_link_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GenerateInvoicePaymentLink" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'invoice_transaction_id': 'inv_67890', - 'transaction_type': 'Invoice', - 'link_type': 'Public', - 'payment_link_expiry_date': '2023-12-31' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_account_details_example_call_tool.js deleted file mode 100644 index 9c9efd8ee..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_account_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "account_unique_id": "acc_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_account_details_example_call_tool.py deleted file mode 100644 index 3b654150c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_account_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'account_unique_id': 'acc_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_asset_depreciation_summary_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_asset_depreciation_summary_example_call_tool.js deleted file mode 100644 index 35e6f4638..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_asset_depreciation_summary_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetAssetDepreciationSummary"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "fixed_asset_identifier": "asset_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_asset_depreciation_summary_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_asset_depreciation_summary_example_call_tool.py deleted file mode 100644 index 358de36b7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_asset_depreciation_summary_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetAssetDepreciationSummary" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'fixed_asset_identifier': 'asset_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_account_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_account_details_example_call_tool.js deleted file mode 100644 index e7a47c41d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_account_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetBankAccountDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "bank_account_id": "acc_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_account_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_account_details_example_call_tool.py deleted file mode 100644 index d11455f1a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_account_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetBankAccountDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'bank_account_id': 'acc_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_account_rule_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_account_rule_details_example_call_tool.js deleted file mode 100644 index 217dfe2aa..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_account_rule_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetBankAccountRuleDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bank_account_rule_id": "rule_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_account_rule_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_account_rule_details_example_call_tool.py deleted file mode 100644 index 6731cc012..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_account_rule_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetBankAccountRuleDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'bank_account_rule_id': 'rule_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_transactions_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_transactions_example_call_tool.js deleted file mode 100644 index 6616c4cee..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_transactions_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetBankTransactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bank_account_id": 67890, - "transaction_type_filter": "expense", - "transaction_date_range": "2023-01-01 to 2023-12-31", - "sort_transactions_by": "date" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_transactions_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_transactions_example_call_tool.py deleted file mode 100644 index 4b826b17d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_bank_transactions_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetBankTransactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'bank_account_id': 67890, - 'transaction_type_filter': 'expense', - 'transaction_date_range': '2023-01-01 to 2023-12-31', - 'sort_transactions_by': 'date' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_base_currency_adjustment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_base_currency_adjustment_details_example_call_tool.js deleted file mode 100644 index f8f193665..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_base_currency_adjustment_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetBaseCurrencyAdjustmentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "base_currency_adjustment_identifier": "adjust_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_base_currency_adjustment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_base_currency_adjustment_details_example_call_tool.py deleted file mode 100644 index e36ff413e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_base_currency_adjustment_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetBaseCurrencyAdjustmentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'base_currency_adjustment_identifier': 'adjust_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_bill_history_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_bill_history_example_call_tool.js deleted file mode 100644 index 08004762a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_bill_history_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetBillHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bill_identifier": "bill_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_bill_history_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_bill_history_example_call_tool.py deleted file mode 100644 index 88eb13b5d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_bill_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetBillHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'bill_identifier': 'bill_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_bill_payments_list_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_bill_payments_list_example_call_tool.js deleted file mode 100644 index 88d78d75e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_bill_payments_list_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetBillPaymentsList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bill_identifier": "bill_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_bill_payments_list_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_bill_payments_list_example_call_tool.py deleted file mode 100644 index 4099de80d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_bill_payments_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetBillPaymentsList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'bill_identifier': 'bill_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_activity_recent_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_activity_recent_comments_example_call_tool.js deleted file mode 100644 index 095234a3e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_activity_recent_comments_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetContactActivityRecentComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "contact_unique_identifier": "contact_67890", - "page_number_to_fetch": 1, - "records_per_page": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_activity_recent_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_activity_recent_comments_example_call_tool.py deleted file mode 100644 index 18700403c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_activity_recent_comments_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetContactActivityRecentComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'contact_unique_identifier': 'contact_67890', - 'page_number_to_fetch': 1, - 'records_per_page': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_addresses_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_addresses_example_call_tool.js deleted file mode 100644 index c5e00379d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_addresses_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetContactAddresses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "contact_id": "contact_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_addresses_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_addresses_example_call_tool.py deleted file mode 100644 index 050906771..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_addresses_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetContactAddresses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'contact_id': 'contact_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_person_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_person_details_example_call_tool.js deleted file mode 100644 index 160d03a78..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_person_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetContactPersonDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "contact_identifier": "78910", - "contact_person_identifier": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_person_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_person_details_example_call_tool.py deleted file mode 100644 index 57b58e48a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_person_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetContactPersonDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'contact_identifier': '78910', 'contact_person_identifier': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_refund_history_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_refund_history_example_call_tool.js deleted file mode 100644 index 4270d9c83..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_refund_history_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetContactRefundHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "contact_unique_identifier": "contact_789", - "page_number": 1, - "records_per_page": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_refund_history_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_refund_history_example_call_tool.py deleted file mode 100644 index a9ab70e57..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_refund_history_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetContactRefundHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', - 'contact_unique_identifier': 'contact_789', - 'page_number': 1, - 'records_per_page': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_statement_mail_content_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_statement_mail_content_example_call_tool.js deleted file mode 100644 index be6fe3acf..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_statement_mail_content_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetContactStatementMailContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "contact_unique_identifier": "contact_67890", - "statement_start_date": "2023-10-01", - "statement_end_date": "2023-10-31" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_statement_mail_content_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_statement_mail_content_example_call_tool.py deleted file mode 100644 index 67f7fd434..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_contact_statement_mail_content_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetContactStatementMailContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'contact_unique_identifier': 'contact_67890', - 'statement_start_date': '2023-10-01', - 'statement_end_date': '2023-10-31' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_comments_example_call_tool.js deleted file mode 100644 index 02de306fc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_comments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetCreditNoteComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "credit_note_id": "cn_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_comments_example_call_tool.py deleted file mode 100644 index 7c5282701..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetCreditNoteComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'credit_note_id': 'cn_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_details_example_call_tool.js deleted file mode 100644 index 56971cdd9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetCreditNoteDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "credit_note_id": "cn_67890", - "response_format": "json", - "export_with_default_print_option": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_details_example_call_tool.py deleted file mode 100644 index b8d4c0260..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetCreditNoteDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'credit_note_id': 'cn_67890', - 'response_format': 'json', - 'export_with_default_print_option': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_email_content_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_email_content_example_call_tool.js deleted file mode 100644 index ad4f1a234..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_email_content_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetCreditNoteEmailContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "credit_note_id": "cn_67890", - "specified_email_template_id": "template_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_email_content_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_email_content_example_call_tool.py deleted file mode 100644 index 6a9b716a4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_email_content_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetCreditNoteEmailContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'credit_note_id': 'cn_67890', - 'specified_email_template_id': 'template_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_pdf_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_pdf_templates_example_call_tool.js deleted file mode 100644 index 20d4223f8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_pdf_templates_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetCreditNotePdfTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_pdf_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_pdf_templates_example_call_tool.py deleted file mode 100644 index 9b431ada5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_pdf_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetCreditNotePdfTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_refund_example_call_tool.js deleted file mode 100644 index c4129a0d3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_refund_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetCreditNoteRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "credit_note_id": "cn_67890", - "credit_note_refund_id": "cr_54321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_refund_example_call_tool.py deleted file mode 100644 index d4cc31f7a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_credit_note_refund_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetCreditNoteRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'credit_note_id': 'cn_67890', 'credit_note_refund_id': 'cr_54321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_currency_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_currency_details_example_call_tool.js deleted file mode 100644 index 2720f2708..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_currency_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetCurrencyDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "currency_identifier": "usd" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_currency_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_currency_details_example_call_tool.py deleted file mode 100644 index 70c30b521..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_currency_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetCurrencyDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'currency_identifier': 'usd' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_currency_exchange_rate_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_currency_exchange_rate_example_call_tool.js deleted file mode 100644 index da422338a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_currency_exchange_rate_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetCurrencyExchangeRate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "currency_unique_identifier": "USD", - "exchange_rate_unique_id": "rate_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_currency_exchange_rate_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_currency_exchange_rate_example_call_tool.py deleted file mode 100644 index 8a72ad63b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_currency_exchange_rate_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetCurrencyExchangeRate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'currency_unique_identifier': 'USD', - 'exchange_rate_unique_id': 'rate_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_current_running_timer_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_current_running_timer_example_call_tool.js deleted file mode 100644 index 7b7710dc6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_current_running_timer_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetCurrentRunningTimer"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_current_running_timer_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_current_running_timer_example_call_tool.py deleted file mode 100644 index fab38313d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_current_running_timer_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetCurrentRunningTimer" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_current_user_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_current_user_details_example_call_tool.js deleted file mode 100644 index de5bf43de..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_current_user_details_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetCurrentUserDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_current_user_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_current_user_details_example_call_tool.py deleted file mode 100644 index d1143f744..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_current_user_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetCurrentUserDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_custom_module_record_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_custom_module_record_details_example_call_tool.js deleted file mode 100644 index d48a06506..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_custom_module_record_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetCustomModuleRecordDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "module_name": "Invoices", - "custom_module_id": 101 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_custom_module_record_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_custom_module_record_details_example_call_tool.py deleted file mode 100644 index dab2e4902..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_custom_module_record_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetCustomModuleRecordDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'module_name': 'Invoices', 'custom_module_id': 101 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_debit_note_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_debit_note_example_call_tool.js deleted file mode 100644 index cdb98f18d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_debit_note_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetCustomerDebitNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "debit_note_unique_id": "DN78910", - "response_format": "json", - "print_pdf": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_debit_note_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_debit_note_example_call_tool.py deleted file mode 100644 index c77d308c9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_debit_note_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetCustomerDebitNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', - 'debit_note_unique_id': 'DN78910', - 'response_format': 'json', - 'print_pdf': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_payment_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_payment_details_example_call_tool.js deleted file mode 100644 index bd5dc1acc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_payment_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetCustomerPaymentDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "payment_identifier": "pay_67890", - "response_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_payment_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_payment_details_example_call_tool.py deleted file mode 100644 index cae1a7d23..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_payment_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetCustomerPaymentDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'payment_identifier': 'pay_67890', 'response_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_payment_refund_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_payment_refund_details_example_call_tool.js deleted file mode 100644 index 1ba4b71a8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_payment_refund_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetCustomerPaymentRefundDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "customer_payment_unique_id": "payment_67890", - "refund_identifier": "refund_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_payment_refund_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_payment_refund_details_example_call_tool.py deleted file mode 100644 index 8b47fde36..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_customer_payment_refund_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetCustomerPaymentRefundDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'customer_payment_unique_id': 'payment_67890', - 'refund_identifier': 'refund_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_comments_example_call_tool.js deleted file mode 100644 index 0e5a36c1f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_comments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetEstimateComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "estimate_identifier": "est_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_comments_example_call_tool.py deleted file mode 100644 index 088a0dd09..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetEstimateComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'estimate_identifier': 'est_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_email_content_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_email_content_example_call_tool.js deleted file mode 100644 index 9717a1a5a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_email_content_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetEstimateEmailContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "email_template_id": "template_67890", - "estimate_id": "estimate_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_email_content_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_email_content_example_call_tool.py deleted file mode 100644 index d197bfea2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_email_content_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetEstimateEmailContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'email_template_id': 'template_67890', - 'estimate_id': 'estimate_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_templates_example_call_tool.js deleted file mode 100644 index 805cf283a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_templates_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetEstimateTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_templates_example_call_tool.py deleted file mode 100644 index 9643d6570..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_estimate_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetEstimateTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_expense_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_expense_comments_example_call_tool.js deleted file mode 100644 index 07dc2061d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_expense_comments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetExpenseComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "expense_unique_id": "exp_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_expense_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_expense_comments_example_call_tool.py deleted file mode 100644 index 684309419..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_expense_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetExpenseComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'expense_unique_id': 'exp_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_expense_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_expense_details_example_call_tool.js deleted file mode 100644 index 0fe72fa13..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_expense_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetExpenseDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "expense_identifier": "exp_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_expense_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_expense_details_example_call_tool.py deleted file mode 100644 index 3f1a90ad6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_expense_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetExpenseDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'expense_identifier': 'exp_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_asset_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_asset_details_example_call_tool.js deleted file mode 100644 index 261216302..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_asset_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetFixedAssetDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "12345", - "fixed_asset_identifier": "FA-67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_asset_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_asset_details_example_call_tool.py deleted file mode 100644 index 69c9b944f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_asset_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetFixedAssetDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '12345', 'fixed_asset_identifier': 'FA-67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_asset_type_list_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_asset_type_list_example_call_tool.js deleted file mode 100644 index c2a2f6051..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_asset_type_list_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetFixedAssetTypeList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "page_number_to_fetch": 1, - "records_per_page": 200 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_asset_type_list_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_asset_type_list_example_call_tool.py deleted file mode 100644 index 4efcbbd29..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_asset_type_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetFixedAssetTypeList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'page_number_to_fetch': 1, 'records_per_page': 200 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_assets_list_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_assets_list_example_call_tool.js deleted file mode 100644 index d0b1d82e6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_assets_list_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetFixedAssetsList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "filter_fixed_asset_status": "Status.Active", - "sort_by_column": "asset_name", - "sort_order": "A", - "page_number": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_assets_list_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_assets_list_example_call_tool.py deleted file mode 100644 index e142876f4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_fixed_assets_list_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetFixedAssetsList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', - 'filter_fixed_asset_status': 'Status.Active', - 'sort_by_column': 'asset_name', - 'sort_order': 'A', - 'page_number': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_attachment_example_call_tool.js deleted file mode 100644 index 7458893a1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_attachment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetInvoiceAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_identifier": "inv_67890", - "get_thumbnail": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_attachment_example_call_tool.py deleted file mode 100644 index 1e65de4e9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_attachment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetInvoiceAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'invoice_identifier': 'inv_67890', 'get_thumbnail': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_comments_example_call_tool.js deleted file mode 100644 index e8f4b83b1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_comments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetInvoiceComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_identifier": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_comments_example_call_tool.py deleted file mode 100644 index 8febaf1c6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetInvoiceComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'invoice_identifier': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_credits_applied_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_credits_applied_example_call_tool.js deleted file mode 100644 index 9d683b55f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_credits_applied_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetInvoiceCreditsApplied"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_identifier": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_credits_applied_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_credits_applied_example_call_tool.py deleted file mode 100644 index 2e4655490..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_credits_applied_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetInvoiceCreditsApplied" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'invoice_identifier': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_details_example_call_tool.js deleted file mode 100644 index 90c95184b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetInvoiceDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_identifier": "inv_67890", - "format_type": "pdf", - "print_pdf": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_details_example_call_tool.py deleted file mode 100644 index 4b7e6f9fd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetInvoiceDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'invoice_identifier': 'inv_67890', - 'format_type': 'pdf', - 'print_pdf': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_email_content_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_email_content_example_call_tool.js deleted file mode 100644 index e79c07fd0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_email_content_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetInvoiceEmailContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "invoice_identifier": "inv_67890", - "email_template_id": "template_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_email_content_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_email_content_example_call_tool.py deleted file mode 100644 index 21fbf82d1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_email_content_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetInvoiceEmailContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'invoice_identifier': 'inv_67890', - 'email_template_id': 'template_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_list_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_list_example_call_tool.js deleted file mode 100644 index 5d62b1263..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_list_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetInvoiceList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "search_by_invoice_number": "INV-2023-001", - "sort_by_column": "date", - "page_number": 1, - "records_per_page": 200 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_list_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_list_example_call_tool.py deleted file mode 100644 index dd3ff0b8c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_list_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetInvoiceList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', - 'search_by_invoice_number': 'INV-2023-001', - 'sort_by_column': 'date', - 'page_number': 1, - 'records_per_page': 200 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_payments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_payments_example_call_tool.js deleted file mode 100644 index 3cc9df4dd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_payments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetInvoicePayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_identifier": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_payments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_payments_example_call_tool.py deleted file mode 100644 index 243e19aa8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_invoice_payments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetInvoicePayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'invoice_identifier': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_journal_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_journal_details_example_call_tool.js deleted file mode 100644 index 70fcbdcd8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_journal_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetJournalDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "journal_unique_id": "journal_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_journal_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_journal_details_example_call_tool.py deleted file mode 100644 index 16859dbe0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_journal_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetJournalDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'journal_unique_id': 'journal_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_journal_list_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_journal_list_example_call_tool.js deleted file mode 100644 index 4d7fc0f0a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_journal_list_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetJournalList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "journal_entry_number": "entry_001", - "filter_journals_by_date": "JournalDate.ThisMonth", - "page_number_to_fetch": 1, - "records_per_page": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_journal_list_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_journal_list_example_call_tool.py deleted file mode 100644 index db4a4c182..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_journal_list_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetJournalList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'journal_entry_number': 'entry_001', - 'filter_journals_by_date': 'JournalDate.ThisMonth', - 'page_number_to_fetch': 1, - 'records_per_page': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_last_imported_bank_statement_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_last_imported_bank_statement_example_call_tool.js deleted file mode 100644 index 4bcf0a02b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_last_imported_bank_statement_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetLastImportedBankStatement"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bank_account_id": "acc_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_last_imported_bank_statement_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_last_imported_bank_statement_example_call_tool.py deleted file mode 100644 index 24b181401..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_last_imported_bank_statement_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetLastImportedBankStatement" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'bank_account_id': 'acc_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_opening_balance_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_opening_balance_example_call_tool.js deleted file mode 100644 index 1e3f6fadd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_opening_balance_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetOpeningBalance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_opening_balance_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_opening_balance_example_call_tool.py deleted file mode 100644 index b8e98b60e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_opening_balance_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetOpeningBalance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_organization_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_organization_details_example_call_tool.js deleted file mode 100644 index 85f26c824..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_organization_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetOrganizationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "12345", - "org_id": "abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_organization_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_organization_details_example_call_tool.py deleted file mode 100644 index c039e83cb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_organization_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetOrganizationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '12345', 'org_id': 'abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_organization_users_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_organization_users_example_call_tool.js deleted file mode 100644 index f0ccd44c9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_organization_users_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetOrganizationUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "user_status_filter": "Status.Active", - "sort_users_by_column": "name", - "page_number": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_organization_users_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_organization_users_example_call_tool.py deleted file mode 100644 index 9868feecc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_organization_users_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetOrganizationUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'user_status_filter': 'Status.Active', - 'sort_users_by_column': 'name', - 'page_number': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_payment_reminder_email_content_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_payment_reminder_email_content_example_call_tool.js deleted file mode 100644 index 0516889aa..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_payment_reminder_email_content_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetPaymentReminderEmailContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "invoice_identifier": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_payment_reminder_email_content_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_payment_reminder_email_content_example_call_tool.py deleted file mode 100644 index d6db58aa7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_payment_reminder_email_content_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetPaymentReminderEmailContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'invoice_identifier': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_project_comments_example_call_tool.js deleted file mode 100644 index 42b5de317..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_comments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetProjectComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org123", - "project_identifier": "proj456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_project_comments_example_call_tool.py deleted file mode 100644 index 0864c3e23..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetProjectComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org123', 'project_identifier': 'proj456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_project_details_example_call_tool.js deleted file mode 100644 index db0333302..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetProjectDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org123", - "project_unique_identifier": "proj456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_project_details_example_call_tool.py deleted file mode 100644 index f3010460b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetProjectDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org123', 'project_unique_identifier': 'proj456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_tasks_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_project_tasks_example_call_tool.js deleted file mode 100644 index b900a72cc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_tasks_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetProjectTasks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "project_unique_id": "proj_67890", - "fetch_page_number": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_tasks_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_project_tasks_example_call_tool.py deleted file mode 100644 index 8205af5c6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_tasks_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetProjectTasks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'project_unique_id': 'proj_67890', - 'fetch_page_number': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_user_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_project_user_details_example_call_tool.js deleted file mode 100644 index 8806e3f3e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_user_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetProjectUserDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "project_identifier": "proj_67890", - "user_identifier": "user_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_user_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_project_user_details_example_call_tool.py deleted file mode 100644 index 39c893114..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_project_user_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetProjectUserDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'project_identifier': 'proj_67890', - 'user_identifier': 'user_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_comments_example_call_tool.js deleted file mode 100644 index 711f93d3a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_comments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetPurchaseOrderComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "purchase_order_id": "po_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_comments_example_call_tool.py deleted file mode 100644 index a393ae9e9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetPurchaseOrderComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'purchase_order_id': 'po_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_email_content_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_email_content_example_call_tool.js deleted file mode 100644 index 16cd2360b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_email_content_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetPurchaseOrderEmailContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "purchase_order_id": "po_67890", - "email_template_id": "template_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_email_content_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_email_content_example_call_tool.py deleted file mode 100644 index 4752e7f73..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_email_content_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetPurchaseOrderEmailContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'purchase_order_id': 'po_67890', - 'email_template_id': 'template_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_templates_example_call_tool.js deleted file mode 100644 index cd0b7e7a5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_templates_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetPurchaseOrderTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_templates_example_call_tool.py deleted file mode 100644 index 36b47697c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_purchase_order_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetPurchaseOrderTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_bill_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_bill_details_example_call_tool.js deleted file mode 100644 index 51340639a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_bill_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetRecurringBillDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "recurring_bill_unique_id": "bill_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_bill_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_bill_details_example_call_tool.py deleted file mode 100644 index 630a8194c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_bill_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetRecurringBillDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'recurring_bill_unique_id': 'bill_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_bill_history_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_bill_history_example_call_tool.js deleted file mode 100644 index f991b3af4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_bill_history_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetRecurringBillHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "recurring_bill_identifier": "bill_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_bill_history_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_bill_history_example_call_tool.py deleted file mode 100644 index c025bd847..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_bill_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetRecurringBillHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'recurring_bill_identifier': 'bill_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_expense_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_expense_details_example_call_tool.js deleted file mode 100644 index 62a061d61..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_expense_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetRecurringExpenseDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "recurring_expense_id": "exp_7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_expense_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_expense_details_example_call_tool.py deleted file mode 100644 index 3cd33760a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_expense_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetRecurringExpenseDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'recurring_expense_id': 'exp_7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_expense_history_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_expense_history_example_call_tool.js deleted file mode 100644 index 42c8c9841..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_expense_history_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetRecurringExpenseHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "recurring_expense_id": "rec_exp_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_expense_history_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_expense_history_example_call_tool.py deleted file mode 100644 index bb37a1a79..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_expense_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetRecurringExpenseHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'recurring_expense_id': 'rec_exp_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_invoice_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_invoice_details_example_call_tool.js deleted file mode 100644 index 9dd8311cc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_invoice_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetRecurringInvoiceDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "recurring_invoice_identifier": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_invoice_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_invoice_details_example_call_tool.py deleted file mode 100644 index 6ea3e88ee..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_invoice_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetRecurringInvoiceDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'recurring_invoice_identifier': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_invoice_history_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_invoice_history_example_call_tool.js deleted file mode 100644 index c0c8920e0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_invoice_history_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetRecurringInvoiceHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "recurring_invoice_id": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_invoice_history_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_invoice_history_example_call_tool.py deleted file mode 100644 index a817b625d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_recurring_invoice_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetRecurringInvoiceHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'recurring_invoice_id': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_attachment_example_call_tool.js deleted file mode 100644 index 24eacba9c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_attachment_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetRetainerInvoiceAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "retainer_invoice_id": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_attachment_example_call_tool.py deleted file mode 100644 index 76fbc85a0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_attachment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetRetainerInvoiceAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'retainer_invoice_id': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_details_example_call_tool.js deleted file mode 100644 index 576583144..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetRetainerInvoiceDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "retainer_invoice_id": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_details_example_call_tool.py deleted file mode 100644 index b4b707f5b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetRetainerInvoiceDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'retainer_invoice_id': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_history_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_history_example_call_tool.js deleted file mode 100644 index 642a23b0a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_history_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetRetainerInvoiceHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "retainer_invoice_id": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_history_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_history_example_call_tool.py deleted file mode 100644 index dc7bbea25..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetRetainerInvoiceHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'retainer_invoice_id': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_templates_example_call_tool.js deleted file mode 100644 index fe1b6db6e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_templates_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetRetainerInvoiceTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_templates_example_call_tool.py deleted file mode 100644 index b390eb915..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_retainer_invoice_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetRetainerInvoiceTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_attachment_example_call_tool.js deleted file mode 100644 index 81d765a83..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_attachment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetSalesOrderAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "sales_order_id": "SO78910", - "require_preview_of_sales_order": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_attachment_example_call_tool.py deleted file mode 100644 index b641e6dde..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_attachment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetSalesOrderAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'sales_order_id': 'SO78910', 'require_preview_of_sales_order': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_comments_example_call_tool.js deleted file mode 100644 index 9be01594f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_comments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetSalesOrderComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "sales_order_id": "so_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_comments_example_call_tool.py deleted file mode 100644 index a1197c59b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetSalesOrderComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'sales_order_id': 'so_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_details_example_call_tool.js deleted file mode 100644 index 25e940e99..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetSalesOrderDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "sales_order_id": "so_67890", - "output_format": "json", - "print_pdf": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_details_example_call_tool.py deleted file mode 100644 index 6365b5f75..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetSalesOrderDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'sales_order_id': 'so_67890', - 'output_format': 'json', - 'print_pdf': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_email_content_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_email_content_example_call_tool.js deleted file mode 100644 index c08830750..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_email_content_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetSalesOrderEmailContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "sales_order_id": "so_67890", - "email_template_id": "template_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_email_content_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_email_content_example_call_tool.py deleted file mode 100644 index 12db36d3b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_email_content_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetSalesOrderEmailContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'sales_order_id': 'so_67890', 'email_template_id': 'template_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_templates_example_call_tool.js deleted file mode 100644 index 959672538..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_templates_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetSalesOrderTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_templates_example_call_tool.py deleted file mode 100644 index 38b6a28f7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_order_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetSalesOrderTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_receipt_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_receipt_details_example_call_tool.js deleted file mode 100644 index 714e223d5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_receipt_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetSalesReceiptDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "sales_receipt_id": "receipt_67890", - "output_format": "json" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_receipt_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_receipt_details_example_call_tool.py deleted file mode 100644 index 74674116a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_sales_receipt_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetSalesReceiptDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'sales_receipt_id': 'receipt_67890', - 'output_format': 'json' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_task_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_task_details_example_call_tool.js deleted file mode 100644 index 94a576895..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_task_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetTaskDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "project_id": "proj_67890", - "task_unique_identifier": "task_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_task_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_task_details_example_call_tool.py deleted file mode 100644 index 26b6d3e2b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_task_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetTaskDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'project_id': 'proj_67890', 'task_unique_identifier': 'task_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_authorities_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_authorities_example_call_tool.js deleted file mode 100644 index a3ce9d14e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_authorities_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetTaxAuthorities"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_authorities_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_authorities_example_call_tool.py deleted file mode 100644 index 5adc632fd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_authorities_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetTaxAuthorities" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_authority_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_authority_details_example_call_tool.js deleted file mode 100644 index 56c1f65f9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_authority_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetTaxAuthorityDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "tax_authority_unique_id": "tax_auth_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_authority_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_authority_details_example_call_tool.py deleted file mode 100644 index 5bf12060a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_authority_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetTaxAuthorityDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'tax_authority_unique_id': 'tax_auth_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_details_example_call_tool.js deleted file mode 100644 index b917d6f54..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetTaxDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "tax_identifier": "tax_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_details_example_call_tool.py deleted file mode 100644 index f91b0aded..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetTaxDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'tax_identifier': 'tax_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_exemption_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_exemption_details_example_call_tool.js deleted file mode 100644 index 94cc62d49..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_exemption_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetTaxExemptionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "tax_exemption_identifier": "tax_exempt_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_exemption_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_exemption_details_example_call_tool.py deleted file mode 100644 index 210bd95ec..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_exemption_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetTaxExemptionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'tax_exemption_identifier': 'tax_exempt_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_exemptions_list_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_exemptions_list_example_call_tool.js deleted file mode 100644 index b373b7acb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_exemptions_list_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetTaxExemptionsList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_exemptions_list_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_exemptions_list_example_call_tool.py deleted file mode 100644 index fcadc46f3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_tax_exemptions_list_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetTaxExemptionsList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_time_entry_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_time_entry_details_example_call_tool.js deleted file mode 100644 index b1d10047b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_time_entry_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetTimeEntryDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "time_entry_identifier": "entry_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_time_entry_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_time_entry_details_example_call_tool.py deleted file mode 100644 index adaf955dc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_time_entry_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetTimeEntryDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'time_entry_identifier': 'entry_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_user_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_user_details_example_call_tool.js deleted file mode 100644 index 1a7d50a48..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_user_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetUserDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "user_unique_identifier": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_user_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_user_details_example_call_tool.py deleted file mode 100644 index 99137d823..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_user_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetUserDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'user_unique_identifier': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_comments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_comments_example_call_tool.js deleted file mode 100644 index c7441b587..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_comments_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetVendorCreditComments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "vendor_credit_identifier": "vc_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_comments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_comments_example_call_tool.py deleted file mode 100644 index 6963f308f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_comments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetVendorCreditComments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'vendor_credit_identifier': 'vc_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_details_example_call_tool.js deleted file mode 100644 index 115b0e87f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetVendorCreditDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "vendor_credit_id": "vc_67890", - "output_format": "json", - "export_vendor_credit_pdf": "true" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_details_example_call_tool.py deleted file mode 100644 index c48822332..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetVendorCreditDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'vendor_credit_id': 'vc_67890', - 'output_format': 'json', - 'export_vendor_credit_pdf': 'true' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_refund_example_call_tool.js deleted file mode 100644 index 885a79518..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_refund_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetVendorCreditRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "vendor_credit_identifier": "vc_67890", - "vendor_credit_refund_id": "refund_abc123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_refund_example_call_tool.py deleted file mode 100644 index 2154fe958..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_credit_refund_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetVendorCreditRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'vendor_credit_identifier': 'vc_67890', - 'vendor_credit_refund_id': 'refund_abc123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_payment_email_content_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_payment_email_content_example_call_tool.js deleted file mode 100644 index 46d76d72a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_payment_email_content_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetVendorPaymentEmailContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "vendor_payment_id": "payment_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_payment_email_content_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_payment_email_content_example_call_tool.py deleted file mode 100644 index 76e5fa055..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_payment_email_content_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetVendorPaymentEmailContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'vendor_payment_id': 'payment_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_payment_refund_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_payment_refund_details_example_call_tool.js deleted file mode 100644 index 4f84e11d7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_payment_refund_details_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.GetVendorPaymentRefundDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "payment_identifier": "pay_67890", - "vendor_payment_refund_id": "refund_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_payment_refund_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_payment_refund_details_example_call_tool.py deleted file mode 100644 index df77c9358..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/get_vendor_payment_refund_details_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.GetVendorPaymentRefundDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'payment_identifier': 'pay_67890', - 'vendor_payment_refund_id': 'refund_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/import_bank_statements_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/import_bank_statements_example_call_tool.js deleted file mode 100644 index 32a4d81f2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/import_bank_statements_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ImportBankStatements"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "request_body": "{\"statements\":[{\"date\":\"2023-01-01\",\"amount\":-100.00,\"description\":\"Grocery Store\"},{\"date\":\"2023-01-02\",\"amount\":-50.00,\"description\":\"Gas Station\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/import_bank_statements_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/import_bank_statements_example_call_tool.py deleted file mode 100644 index ba2c9483c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/import_bank_statements_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ImportBankStatements" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'request_body': '{"statements":[{"date":"2023-01-01","amount":-100.00,"description":"Grocery ' - 'Store"},{"date":"2023-01-02","amount":-50.00,"description":"Gas Station"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/import_crm_product_to_zoho_books_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/import_crm_product_to_zoho_books_example_call_tool.js deleted file mode 100644 index f55957f05..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/import_crm_product_to_zoho_books_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ImportCrmProductToZohoBooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "crm_product_id": "prod_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/import_crm_product_to_zoho_books_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/import_crm_product_to_zoho_books_example_call_tool.py deleted file mode 100644 index d1bc0eda1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/import_crm_product_to_zoho_books_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ImportCrmProductToZohoBooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'crm_product_id': 'prod_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/import_customer_from_crm_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/import_customer_from_crm_example_call_tool.js deleted file mode 100644 index 526d28724..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/import_customer_from_crm_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ImportCustomerFromCrm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "crm_account_id": "abc-123-def-456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/import_customer_from_crm_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/import_customer_from_crm_example_call_tool.py deleted file mode 100644 index cd2bc942f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/import_customer_from_crm_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ImportCustomerFromCrm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'crm_account_id': 'abc-123-def-456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/import_vendor_from_crm_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/import_vendor_from_crm_example_call_tool.js deleted file mode 100644 index 49889b7e2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/import_vendor_from_crm_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ImportVendorFromCrm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "zoho_crm_vendor_id": "crm_vendor_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/import_vendor_from_crm_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/import_vendor_from_crm_example_call_tool.py deleted file mode 100644 index 8562e4e5b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/import_vendor_from_crm_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ImportVendorFromCrm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'zoho_crm_vendor_id': 'crm_vendor_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/invite_user_to_project_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/invite_user_to_project_example_call_tool.js deleted file mode 100644 index 520561b2c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/invite_user_to_project_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.InviteUserToProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "project_unique_identifier": "proj_789", - "request_body": "{\"email\":\"user@example.com\",\"role\":\"developer\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/invite_user_to_project_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/invite_user_to_project_example_call_tool.py deleted file mode 100644 index a685e129b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/invite_user_to_project_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.InviteUserToProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'project_unique_identifier': 'proj_789', - 'request_body': '{"email":"user@example.com","role":"developer"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_account_transactions_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_account_transactions_example_call_tool.js deleted file mode 100644 index 45c397db3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_account_transactions_example_call_tool.js +++ /dev/null @@ -1,39 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListAccountTransactions"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "account_id": "acc_67890", - "transaction_date_range": "2023-01-01 to 2023-12-31", - "amount_range": 1000, - "filter_by_account_type": "AccountType.Active", - "transaction_type": "invoice", - "sort_by": "account_name", - "page_number": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_account_transactions_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_account_transactions_example_call_tool.py deleted file mode 100644 index 556c37cd3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_account_transactions_example_call_tool.py +++ /dev/null @@ -1,37 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListAccountTransactions" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'account_id': 'acc_67890', - 'transaction_date_range': '2023-01-01 to 2023-12-31', - 'amount_range': 1000, - 'filter_by_account_type': 'AccountType.Active', - 'transaction_type': 'invoice', - 'sort_by': 'account_name', - 'page_number': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_active_inventory_items_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_active_inventory_items_example_call_tool.js deleted file mode 100644 index bdad5d4de..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_active_inventory_items_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListActiveInventoryItems"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "item_name_search": "widget", - "filter_items_by_status": "Status.Active", - "page_number_to_fetch": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_active_inventory_items_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_active_inventory_items_example_call_tool.py deleted file mode 100644 index 237222333..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_active_inventory_items_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListActiveInventoryItems" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'item_name_search': 'widget', - 'filter_items_by_status': 'Status.Active', - 'page_number_to_fetch': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_all_bills_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_all_bills_example_call_tool.js deleted file mode 100644 index 80a70bad7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_all_bills_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListAllBills"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "filter_by_bill_number": "bill_number_startswith:2023", - "page_number": 1, - "bills_per_page": 50, - "sort_by_column": "date", - "sorting_order": "D" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_all_bills_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_all_bills_example_call_tool.py deleted file mode 100644 index fe863702f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_all_bills_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListAllBills" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'filter_by_bill_number': 'bill_number_startswith:2023', - 'page_number': 1, - 'bills_per_page': 50, - 'sort_by_column': 'date', - 'sorting_order': 'D' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_bank_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_bank_accounts_example_call_tool.js deleted file mode 100644 index e03ce999f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_bank_accounts_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListBankAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "account_status_filter": "Status.Active", - "sort_by": "account_name", - "page_number": 1, - "records_per_page": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_bank_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_bank_accounts_example_call_tool.py deleted file mode 100644 index 87da62bdc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_bank_accounts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListBankAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'account_status_filter': 'Status.Active', - 'sort_by': 'account_name', - 'page_number': 1, - 'records_per_page': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_base_currency_adjustments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_base_currency_adjustments_example_call_tool.js deleted file mode 100644 index c350d400f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_base_currency_adjustments_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListBaseCurrencyAdjustments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "filter_by_date": "Date.ThisMonth", - "sort_currency_adjustment_list_by": "adjustment_date", - "fetch_page_number": 1, - "records_per_page": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_base_currency_adjustments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_base_currency_adjustments_example_call_tool.py deleted file mode 100644 index 51a710baf..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_base_currency_adjustments_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListBaseCurrencyAdjustments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'filter_by_date': 'Date.ThisMonth', - 'sort_currency_adjustment_list_by': 'adjustment_date', - 'fetch_page_number': 1, - 'records_per_page': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_bills_with_vendor_credit_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_bills_with_vendor_credit_example_call_tool.js deleted file mode 100644 index cd0bf98c1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_bills_with_vendor_credit_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListBillsWithVendorCredit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "vendor_credit_id": "vc_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_bills_with_vendor_credit_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_bills_with_vendor_credit_example_call_tool.py deleted file mode 100644 index aa8abcc6c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_bills_with_vendor_credit_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListBillsWithVendorCredit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'vendor_credit_id': 'vc_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_chart_of_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_chart_of_accounts_example_call_tool.js deleted file mode 100644 index 943f2f05e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_chart_of_accounts_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListChartOfAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "account_type_filter": "AccountType.Active", - "sort_accounts_by": "account_name", - "page_number": 1, - "records_per_page": 100, - "include_balance": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_chart_of_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_chart_of_accounts_example_call_tool.py deleted file mode 100644 index fb85e98a6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_chart_of_accounts_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListChartOfAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'account_type_filter': 'AccountType.Active', - 'sort_accounts_by': 'account_name', - 'page_number': 1, - 'records_per_page': 100, - 'include_balance': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_child_expenses_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_child_expenses_example_call_tool.js deleted file mode 100644 index 570ad4f20..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_child_expenses_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListChildExpenses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "recurring_expense_identifier": "rec_exp_67890", - "sort_expenses_by": "next_expense_date", - "fetch_page_number": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_child_expenses_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_child_expenses_example_call_tool.py deleted file mode 100644 index 31c8c1925..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_child_expenses_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListChildExpenses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'recurring_expense_identifier': 'rec_exp_67890', - 'sort_expenses_by': 'next_expense_date', - 'fetch_page_number': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_company_employees_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_company_employees_example_call_tool.js deleted file mode 100644 index 400c1f457..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_company_employees_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListCompanyEmployees"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "page_number": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_company_employees_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_company_employees_example_call_tool.py deleted file mode 100644 index 66ff7562f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_company_employees_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListCompanyEmployees" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'page_number': 1, 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_configured_currencies_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_configured_currencies_example_call_tool.js deleted file mode 100644 index cddee4100..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_configured_currencies_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListConfiguredCurrencies"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "exclude_base_currency_filter": "Currencies.ExcludeBaseCurrency", - "page_number": 1, - "records_per_page": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_configured_currencies_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_configured_currencies_example_call_tool.py deleted file mode 100644 index ac30eb065..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_configured_currencies_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListConfiguredCurrencies" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', - 'exclude_base_currency_filter': 'Currencies.ExcludeBaseCurrency', - 'page_number': 1, - 'records_per_page': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_contact_persons_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_contact_persons_example_call_tool.js deleted file mode 100644 index 80755cf69..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_contact_persons_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListContactPersons"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "contact_identifier": "contact_67890", - "page_number": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_contact_persons_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_contact_persons_example_call_tool.py deleted file mode 100644 index 5be120fe6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_contact_persons_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListContactPersons" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'contact_identifier': 'contact_67890', - 'page_number': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_note_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_note_invoices_example_call_tool.js deleted file mode 100644 index 85ccf7b33..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_note_invoices_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListCreditNoteInvoices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "credit_note_id": "cn_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_note_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_note_invoices_example_call_tool.py deleted file mode 100644 index b9e377b68..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_note_invoices_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListCreditNoteInvoices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'credit_note_id': 'cn_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_note_refunds_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_note_refunds_example_call_tool.js deleted file mode 100644 index 6c1bf6ead..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_note_refunds_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListCreditNoteRefunds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "credit_note_id": "cn_67890", - "page_number": 1, - "results_per_page": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_note_refunds_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_note_refunds_example_call_tool.py deleted file mode 100644 index 283abd77a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_note_refunds_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListCreditNoteRefunds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'credit_note_id': 'cn_67890', - 'page_number': 1, - 'results_per_page': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_notes_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_notes_example_call_tool.js deleted file mode 100644 index 5f2b7743a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_notes_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListCreditNotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "filter_by_status": "open", - "sort_credit_notes_by_column": "date", - "page_number": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_notes_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_notes_example_call_tool.py deleted file mode 100644 index e8b9d9505..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_credit_notes_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListCreditNotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'filter_by_status': 'open', - 'sort_credit_notes_by_column': 'date', - 'page_number': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_currency_adjustment_accounts_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_currency_adjustment_accounts_example_call_tool.js deleted file mode 100644 index b986789aa..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_currency_adjustment_accounts_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListCurrencyAdjustmentAccounts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "currency_id_for_adjustment": "curr_67890", - "adjustment_date": "2023-10-01", - "exchange_rate": 1.25, - "adjustment_notes": "Quarterly currency adjustment" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_currency_adjustment_accounts_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_currency_adjustment_accounts_example_call_tool.py deleted file mode 100644 index 942cc7ce1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_currency_adjustment_accounts_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListCurrencyAdjustmentAccounts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'currency_id_for_adjustment': 'curr_67890', - 'adjustment_date': '2023-10-01', - 'exchange_rate': 1.25, - 'adjustment_notes': 'Quarterly currency adjustment' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_currency_exchange_rates_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_currency_exchange_rates_example_call_tool.js deleted file mode 100644 index 01482e3e9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_currency_exchange_rates_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListCurrencyExchangeRates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "currency_identifier": "USD", - "exchange_rate_from_date": "2023-01-01", - "sort_by_column": "effective_date", - "return_current_date_exchange_rate_only": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_currency_exchange_rates_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_currency_exchange_rates_example_call_tool.py deleted file mode 100644 index 45bc54503..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_currency_exchange_rates_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListCurrencyExchangeRates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'currency_identifier': 'USD', - 'exchange_rate_from_date': '2023-01-01', - 'sort_by_column': 'effective_date', - 'return_current_date_exchange_rate_only': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_custom_module_records_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_custom_module_records_example_call_tool.js deleted file mode 100644 index 5b46a2244..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_custom_module_records_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListCustomModuleRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456789", - "custom_module_name": "Invoices" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_custom_module_records_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_custom_module_records_example_call_tool.py deleted file mode 100644 index a97cdcb97..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_custom_module_records_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListCustomModuleRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456789', 'custom_module_name': 'Invoices' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_debit_notes_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_debit_notes_example_call_tool.js deleted file mode 100644 index c6273780e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_debit_notes_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListCustomerDebitNotes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "search_item_name": "widget", - "page_number_to_fetch": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_debit_notes_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_debit_notes_example_call_tool.py deleted file mode 100644 index bca83ce8d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_debit_notes_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListCustomerDebitNotes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'search_item_name': 'widget', - 'page_number_to_fetch': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_payment_refunds_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_payment_refunds_example_call_tool.js deleted file mode 100644 index 177d329db..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_payment_refunds_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListCustomerPaymentRefunds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "customer_payment_identifier": "cp_67890", - "page_number": 1, - "records_per_page": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_payment_refunds_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_payment_refunds_example_call_tool.py deleted file mode 100644 index ca35e8e3e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_payment_refunds_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListCustomerPaymentRefunds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'customer_payment_identifier': 'cp_67890', - 'page_number': 1, - 'records_per_page': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_payments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_payments_example_call_tool.js deleted file mode 100644 index b4c0e7b6b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_payments_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListCustomerPayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "search_customer_name": "John", - "payment_date": "2023-10-01", - "sort_column": "amount", - "page_number_to_fetch": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_payments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_payments_example_call_tool.py deleted file mode 100644 index 0303b2e8b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_customer_payments_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListCustomerPayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'search_customer_name': 'John', - 'payment_date': '2023-10-01', - 'sort_column': 'amount', - 'page_number_to_fetch': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_estimates_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_estimates_example_call_tool.js deleted file mode 100644 index 0f870ac33..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_estimates_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListEstimates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "estimate_number_filter": "EST-001", - "customer_name": "John Doe", - "page_number": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_estimates_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_estimates_example_call_tool.py deleted file mode 100644 index b2f15d2f2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_estimates_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListEstimates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', - 'estimate_number_filter': 'EST-001', - 'customer_name': 'John Doe', - 'page_number': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_expenses_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_expenses_example_call_tool.js deleted file mode 100644 index e8a5bcab2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_expenses_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListExpenses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "search_by_description": "travel", - "page_number": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_expenses_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_expenses_example_call_tool.py deleted file mode 100644 index 28c10ffc8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_expenses_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListExpenses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'search_by_description': 'travel', - 'page_number': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_inventory_locations_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_inventory_locations_example_call_tool.js deleted file mode 100644 index 35def049f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_inventory_locations_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListInventoryLocations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_inventory_locations_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_inventory_locations_example_call_tool.py deleted file mode 100644 index f31f9dc91..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_inventory_locations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListInventoryLocations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_invoice_templates_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_invoice_templates_example_call_tool.js deleted file mode 100644 index 035ec0614..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_invoice_templates_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListInvoiceTemplates"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_invoice_templates_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_invoice_templates_example_call_tool.py deleted file mode 100644 index 01039bf3c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_invoice_templates_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListInvoiceTemplates" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_organizations_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_organizations_example_call_tool.js deleted file mode 100644 index a8ed54c87..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_organizations_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListOrganizations"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_organizations_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_organizations_example_call_tool.py deleted file mode 100644 index 1768ab0da..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_organizations_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListOrganizations" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_project_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_project_invoices_example_call_tool.js deleted file mode 100644 index f5f84529c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_project_invoices_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListProjectInvoices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "project_unique_identifier": "proj_67890", - "sort_invoices_by": "date", - "page_number_to_fetch": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_project_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_project_invoices_example_call_tool.py deleted file mode 100644 index 894b90a14..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_project_invoices_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListProjectInvoices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'project_unique_identifier': 'proj_67890', - 'sort_invoices_by': 'date', - 'page_number_to_fetch': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_project_users_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_project_users_example_call_tool.js deleted file mode 100644 index f13e02a03..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_project_users_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListProjectUsers"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "project_identifier": "proj_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_project_users_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_project_users_example_call_tool.py deleted file mode 100644 index 62ef6bce8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_project_users_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListProjectUsers" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'project_identifier': 'proj_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_projects_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_projects_example_call_tool.js deleted file mode 100644 index afee82c4d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_projects_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListProjects"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "12345", - "filter_projects_by_status": "Status.Active", - "page_number": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_projects_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_projects_example_call_tool.py deleted file mode 100644 index 59a32551f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_projects_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListProjects" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '12345', - 'filter_projects_by_status': 'Status.Active', - 'page_number': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_purchase_orders_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_purchase_orders_example_call_tool.js deleted file mode 100644 index c9586b74e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_purchase_orders_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListPurchaseOrders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "search_by_purchaseorder_number": "PO-2023-001", - "creation_date": "2023-10-01", - "purchase_order_status": "open", - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_purchase_orders_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_purchase_orders_example_call_tool.py deleted file mode 100644 index eb62b3698..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_purchase_orders_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListPurchaseOrders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'search_by_purchaseorder_number': 'PO-2023-001', - 'creation_date': '2023-10-01', - 'purchase_order_status': 'open', - 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_recurring_expenses_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_recurring_expenses_example_call_tool.js deleted file mode 100644 index 216dba911..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_recurring_expenses_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListRecurringExpenses"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "recurring_expense_name_filter": "rent", - "search_by_last_created_date": "last_created_date_after:2023-01-01", - "expense_status": "active", - "page_number_to_fetch": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_recurring_expenses_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_recurring_expenses_example_call_tool.py deleted file mode 100644 index 66ffdca79..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_recurring_expenses_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListRecurringExpenses" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'recurring_expense_name_filter': 'rent', - 'search_by_last_created_date': 'last_created_date_after:2023-01-01', - 'expense_status': 'active', - 'page_number_to_fetch': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_recurring_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_recurring_invoices_example_call_tool.js deleted file mode 100644 index 3fce1cd28..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_recurring_invoices_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListRecurringInvoices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "recurrence_unique_name": "monthly_subscription", - "customer_name": "John Doe", - "recurring_invoice_status": "active", - "page_number": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_recurring_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_recurring_invoices_example_call_tool.py deleted file mode 100644 index c4620aa21..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_recurring_invoices_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListRecurringInvoices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'recurrence_unique_name': 'monthly_subscription', - 'customer_name': 'John Doe', - 'recurring_invoice_status': 'active', - 'page_number': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_retainer_invoices_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_retainer_invoices_example_call_tool.js deleted file mode 100644 index 0dc0f1ec6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_retainer_invoices_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListRetainerInvoices"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "sort_by_column": "date", - "filter_invoices_by_status_or_date": "Status.Paid", - "sorting_order": "asc", - "page_number": 1, - "records_per_page": 50, - "print_pdf": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_retainer_invoices_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_retainer_invoices_example_call_tool.py deleted file mode 100644 index d26b4135d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_retainer_invoices_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListRetainerInvoices" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'sort_by_column': 'date', - 'filter_invoices_by_status_or_date': 'Status.Paid', - 'sorting_order': 'asc', - 'page_number': 1, - 'records_per_page': 50, - 'print_pdf': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_sales_orders_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_sales_orders_example_call_tool.js deleted file mode 100644 index c2748fe8f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_sales_orders_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListSalesOrders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "sort_column": "customer_name", - "cross_field_search_text": "order", - "filter_sales_order_by_status": "Open", - "response_format": "json", - "page_number": 1, - "max_sales_orders_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_sales_orders_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_sales_orders_example_call_tool.py deleted file mode 100644 index 996563ffd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_sales_orders_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListSalesOrders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'sort_column': 'customer_name', - 'cross_field_search_text': 'order', - 'filter_sales_order_by_status': 'Open', - 'response_format': 'json', - 'page_number': 1, - 'max_sales_orders_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_sales_receipts_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_sales_receipts_example_call_tool.js deleted file mode 100644 index efe08926c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_sales_receipts_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListSalesReceipts"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "search_receipt_by_number": "REC-001", - "sort_by_column": "date", - "page_number": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_sales_receipts_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_sales_receipts_example_call_tool.py deleted file mode 100644 index 060ebd092..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_sales_receipts_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListSalesReceipts" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'search_receipt_by_number': 'REC-001', - 'sort_by_column': 'date', - 'page_number': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_taxes_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_taxes_example_call_tool.js deleted file mode 100644 index 66191d266..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_taxes_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListTaxes"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "page_number": 1, - "records_per_page": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_taxes_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_taxes_example_call_tool.py deleted file mode 100644 index b3baaf633..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_taxes_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListTaxes" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'page_number': 1, 'records_per_page': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_time_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_time_entries_example_call_tool.js deleted file mode 100644 index 1e9cdc8bc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_time_entries_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListTimeEntries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org123", - "start_date_for_time_entries": "2023-01-01", - "end_date_for_time_entries": "2023-12-31", - "filter_time_entries_by": "Date.ThisMonth", - "page_number_to_fetch": 1, - "records_per_page": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_time_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_time_entries_example_call_tool.py deleted file mode 100644 index 2a5da5bf1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_time_entries_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListTimeEntries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org123', - 'start_date_for_time_entries': '2023-01-01', - 'end_date_for_time_entries': '2023-12-31', - 'filter_time_entries_by': 'Date.ThisMonth', - 'page_number_to_fetch': 1, - 'records_per_page': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_credit_refunds_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_credit_refunds_example_call_tool.js deleted file mode 100644 index 6231f15eb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_credit_refunds_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListVendorCreditRefunds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "vendor_credit_id": "vc_67890", - "page_number": 1, - "records_per_page": 100 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_credit_refunds_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_credit_refunds_example_call_tool.py deleted file mode 100644 index 6b753c814..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_credit_refunds_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListVendorCreditRefunds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'vendor_credit_id': 'vc_67890', - 'page_number': 1, - 'records_per_page': 100 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_credits_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_credits_example_call_tool.js deleted file mode 100644 index 047276fc4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_credits_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListVendorCredits"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "vendor_credit_number_filter": "contains:VC-", - "filter_by_creation_date": "2023-01-01", - "vendor_credit_status": "open", - "pagination_page_number": 1, - "pagination_records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_credits_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_credits_example_call_tool.py deleted file mode 100644 index 7c0b46a6e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_credits_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListVendorCredits" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', - 'vendor_credit_number_filter': 'contains:VC-', - 'filter_by_creation_date': '2023-01-01', - 'vendor_credit_status': 'open', - 'pagination_page_number': 1, - 'pagination_records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_payment_refunds_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_payment_refunds_example_call_tool.js deleted file mode 100644 index eda304b67..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_payment_refunds_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListVendorPaymentRefunds"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "payment_identifier": "pay_78910", - "page_number": 1, - "records_per_page": 50 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_payment_refunds_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_payment_refunds_example_call_tool.py deleted file mode 100644 index 08e0a9a29..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_payment_refunds_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListVendorPaymentRefunds" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', - 'payment_identifier': 'pay_78910', - 'page_number': 1, - 'records_per_page': 50 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_payments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_payments_example_call_tool.js deleted file mode 100644 index 70a4345ba..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_payments_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ListVendorPayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "vendor_name_query": "Acme", - "payment_date_filter": "date_after", - "sort_payments_by": "date", - "page_number_to_fetch": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_payments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_payments_example_call_tool.py deleted file mode 100644 index 38e1d1ef6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/list_vendor_payments_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ListVendorPayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'vendor_name_query': 'Acme', - 'payment_date_filter': 'date_after', - 'sort_payments_by': 'date', - 'page_number_to_fetch': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/log_time_entries_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/log_time_entries_example_call_tool.js deleted file mode 100644 index 283771487..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/log_time_entries_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.LogTimeEntries"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "request_body": "{\"project_id\":\"proj_67890\",\"time_spent\":120,\"description\":\"Development work\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/log_time_entries_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/log_time_entries_example_call_tool.py deleted file mode 100644 index 0498da83a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/log_time_entries_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.LogTimeEntries" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'request_body': '{"project_id":"proj_67890","time_spent":120,"description":"Development work"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_bill_open_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_bill_open_example_call_tool.js deleted file mode 100644 index d1081332b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_bill_open_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkBillOpen"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "bill_id": "78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_bill_open_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_bill_open_example_call_tool.py deleted file mode 100644 index 970ec41f1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_bill_open_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkBillOpen" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'bill_id': '78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_bill_void_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_bill_void_example_call_tool.js deleted file mode 100644 index 73f244792..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_bill_void_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkBillVoid"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "bill_identifier": "BILL-7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_bill_void_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_bill_void_example_call_tool.py deleted file mode 100644 index 0dd76c392..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_bill_void_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkBillVoid" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'bill_identifier': 'BILL-7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_contact_inactive_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_contact_inactive_example_call_tool.js deleted file mode 100644 index 5dc570cb8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_contact_inactive_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkContactInactive"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "contact_identifier": "contact_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_contact_inactive_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_contact_inactive_example_call_tool.py deleted file mode 100644 index 1a13c3af3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_contact_inactive_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkContactInactive" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'contact_identifier': 'contact_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_credit_note_open_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_credit_note_open_example_call_tool.js deleted file mode 100644 index 919d54e61..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_credit_note_open_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkCreditNoteOpen"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "credit_note_id": "CN7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_credit_note_open_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_credit_note_open_example_call_tool.py deleted file mode 100644 index ee3a4732a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_credit_note_open_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkCreditNoteOpen" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'credit_note_id': 'CN7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_credit_note_void_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_credit_note_void_example_call_tool.js deleted file mode 100644 index 7534381c3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_credit_note_void_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkCreditNoteVoid"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "credit_note_identifier": "CN-7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_credit_note_void_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_credit_note_void_example_call_tool.py deleted file mode 100644 index 38389eccb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_credit_note_void_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkCreditNoteVoid" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'credit_note_identifier': 'CN-7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_estimate_as_sent_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_estimate_as_sent_example_call_tool.js deleted file mode 100644 index 769dd1e7f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_estimate_as_sent_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkEstimateAsSent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "estimate_identifier": "EST-7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_estimate_as_sent_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_estimate_as_sent_example_call_tool.py deleted file mode 100644 index 0601616c6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_estimate_as_sent_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkEstimateAsSent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'estimate_identifier': 'EST-7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_fixed_asset_as_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_fixed_asset_as_draft_example_call_tool.js deleted file mode 100644 index 282b6dfed..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_fixed_asset_as_draft_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkFixedAssetAsDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "fixed_asset_identifier": "FA-7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_fixed_asset_as_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_fixed_asset_as_draft_example_call_tool.py deleted file mode 100644 index b381d02d9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_fixed_asset_as_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkFixedAssetAsDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'fixed_asset_identifier': 'FA-7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_as_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_as_draft_example_call_tool.js deleted file mode 100644 index 13338c46f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_as_draft_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkInvoiceAsDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "invoice_identifier": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_as_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_as_draft_example_call_tool.py deleted file mode 100644 index 11212cce0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_as_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkInvoiceAsDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'invoice_identifier': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_as_sent_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_as_sent_example_call_tool.js deleted file mode 100644 index 1a1009e3b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_as_sent_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkInvoiceAsSent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_unique_identifier": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_as_sent_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_as_sent_example_call_tool.py deleted file mode 100644 index 92e753502..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_as_sent_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkInvoiceAsSent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'invoice_unique_identifier': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_sent_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_sent_example_call_tool.js deleted file mode 100644 index 475a520d7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_sent_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkInvoiceSent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "retainer_invoice_id": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_sent_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_sent_example_call_tool.py deleted file mode 100644 index d406775f0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_invoice_sent_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkInvoiceSent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'retainer_invoice_id': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_item_inactive_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_item_inactive_example_call_tool.js deleted file mode 100644 index 832cd91cd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_item_inactive_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkItemInactive"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "item_identifier": "item_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_item_inactive_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_item_inactive_example_call_tool.py deleted file mode 100644 index 5a25e8a7d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_item_inactive_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkItemInactive" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'item_identifier': 'item_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_location_inactive_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_location_inactive_example_call_tool.js deleted file mode 100644 index 6a40e1380..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_location_inactive_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkLocationInactive"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "location_identifier": "loc789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_location_inactive_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_location_inactive_example_call_tool.py deleted file mode 100644 index 66e54975d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_location_inactive_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkLocationInactive" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'location_identifier': 'loc789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_primary_contact_person_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_primary_contact_person_example_call_tool.js deleted file mode 100644 index aacd721df..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_primary_contact_person_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkPrimaryContactPerson"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "contact_person_identifier": "contact_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_primary_contact_person_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_primary_contact_person_example_call_tool.py deleted file mode 100644 index 7ee2bb7e0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_primary_contact_person_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkPrimaryContactPerson" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'contact_person_identifier': 'contact_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_purchase_order_billed_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_purchase_order_billed_example_call_tool.js deleted file mode 100644 index 63bc82721..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_purchase_order_billed_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkPurchaseOrderBilled"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "purchase_order_id": "PO-78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_purchase_order_billed_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_purchase_order_billed_example_call_tool.py deleted file mode 100644 index d12e231ba..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_purchase_order_billed_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkPurchaseOrderBilled" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'purchase_order_id': 'PO-78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_retainer_invoice_as_draft_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_retainer_invoice_as_draft_example_call_tool.js deleted file mode 100644 index a0e81ec8a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_retainer_invoice_as_draft_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkRetainerInvoiceAsDraft"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "retainer_invoice_id": "78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_retainer_invoice_as_draft_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_retainer_invoice_as_draft_example_call_tool.py deleted file mode 100644 index e3a905d6d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_retainer_invoice_as_draft_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkRetainerInvoiceAsDraft" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'retainer_invoice_id': '78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_sales_order_as_void_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_sales_order_as_void_example_call_tool.js deleted file mode 100644 index d6a0834f9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_sales_order_as_void_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkSalesOrderAsVoid"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "sales_order_id": "SO78910", - "request_body": "{\"status\":\"void\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_sales_order_as_void_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_sales_order_as_void_example_call_tool.py deleted file mode 100644 index bbb5ab931..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_sales_order_as_void_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkSalesOrderAsVoid" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'sales_order_id': 'SO78910', - 'request_body': '{"status":"void"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_vendor_credit_void_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/mark_vendor_credit_void_example_call_tool.js deleted file mode 100644 index 0ea1f301c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_vendor_credit_void_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MarkVendorCreditVoid"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "vendor_credit_identifier": "VC-78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/mark_vendor_credit_void_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/mark_vendor_credit_void_example_call_tool.py deleted file mode 100644 index 939e8630e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/mark_vendor_credit_void_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MarkVendorCreditVoid" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'vendor_credit_identifier': 'VC-78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/match_bank_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/match_bank_transaction_example_call_tool.js deleted file mode 100644 index 2ee129e4c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/match_bank_transaction_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.MatchBankTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "bank_transaction_id": "txn_67890", - "account_id": "acc_54321", - "request_body": "{\"match\":\"true\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/match_bank_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/match_bank_transaction_example_call_tool.py deleted file mode 100644 index 63ce16666..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/match_bank_transaction_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.MatchBankTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'bank_transaction_id': 'txn_67890', - 'account_id': 'acc_54321', - 'request_body': '{"match":"true"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/modify_invoice_address_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/modify_invoice_address_example_call_tool.js deleted file mode 100644 index 8ab9ca33f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/modify_invoice_address_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ModifyInvoiceAddress"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "invoice_identifier": "inv_67890", - "request_body": "{\"billing_address\":{\"street\":\"123 Main St\",\"city\":\"Anytown\",\"state\":\"CA\",\"zip\":\"90210\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/modify_invoice_address_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/modify_invoice_address_example_call_tool.py deleted file mode 100644 index b60894dcc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/modify_invoice_address_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ModifyInvoiceAddress" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'invoice_identifier': 'inv_67890', - 'request_body': '{"billing_address":{"street":"123 Main ' - 'St","city":"Anytown","state":"CA","zip":"90210"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/modify_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/modify_invoice_example_call_tool.js deleted file mode 100644 index abc9a1969..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/modify_invoice_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ModifyInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "retainer_invoice_id": "inv_67890", - "request_body": "{\"amount\": 1500, \"status\": \"paid\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/modify_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/modify_invoice_example_call_tool.py deleted file mode 100644 index 2f8ba9d2a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/modify_invoice_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ModifyInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'retainer_invoice_id': 'inv_67890', - 'request_body': '{"amount": 1500, "status": "paid"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/modify_recurring_expense_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/modify_recurring_expense_example_call_tool.js deleted file mode 100644 index 4bfaffe34..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/modify_recurring_expense_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ModifyRecurringExpense"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "12345", - "recurring_expense_identifier": "exp_67890", - "request_body": "{\"amount\": 150.00, \"description\": \"Monthly Subscription\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/modify_recurring_expense_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/modify_recurring_expense_example_call_tool.py deleted file mode 100644 index 96b656620..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/modify_recurring_expense_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ModifyRecurringExpense" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '12345', - 'recurring_expense_identifier': 'exp_67890', - 'request_body': '{"amount": 150.00, "description": "Monthly Subscription"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/modify_retainer_invoice_template_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/modify_retainer_invoice_template_example_call_tool.js deleted file mode 100644 index 75543f8ad..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/modify_retainer_invoice_template_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ModifyRetainerInvoiceTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "retainer_invoice_id": "inv_67890", - "retainer_invoice_template_id": "temp_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/modify_retainer_invoice_template_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/modify_retainer_invoice_template_example_call_tool.py deleted file mode 100644 index 31cf16b5c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/modify_retainer_invoice_template_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ModifyRetainerInvoiceTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'retainer_invoice_id': 'inv_67890', - 'retainer_invoice_template_id': 'temp_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/open_purchase_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/open_purchase_order_example_call_tool.js deleted file mode 100644 index a40f4b368..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/open_purchase_order_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.OpenPurchaseOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "purchase_order_identifier": "po_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/open_purchase_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/open_purchase_order_example_call_tool.py deleted file mode 100644 index 590aa7ee6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/open_purchase_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.OpenPurchaseOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'purchase_order_identifier': 'po_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/open_sales_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/open_sales_order_example_call_tool.js deleted file mode 100644 index d1c2634a3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/open_sales_order_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.OpenSalesOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "sales_order_id": "SO78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/open_sales_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/open_sales_order_example_call_tool.py deleted file mode 100644 index e222c53dd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/open_sales_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.OpenSalesOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'sales_order_id': 'SO78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/open_vendor_credit_status_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/open_vendor_credit_status_example_call_tool.js deleted file mode 100644 index 6ef26fde6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/open_vendor_credit_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.OpenVendorCreditStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "vendor_credit_identifier": "VC7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/open_vendor_credit_status_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/open_vendor_credit_status_example_call_tool.py deleted file mode 100644 index 0d51dde8c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/open_vendor_credit_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.OpenVendorCreditStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'vendor_credit_identifier': 'VC7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/post_project_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/post_project_comment_example_call_tool.js deleted file mode 100644 index d398d8d6c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/post_project_comment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.PostProjectComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "project_unique_identifier": "proj_67890", - "request_body": "{\"comment\":\"This is a sample comment.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/post_project_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/post_project_comment_example_call_tool.py deleted file mode 100644 index 6a3f8d59e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/post_project_comment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.PostProjectComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'project_unique_identifier': 'proj_67890', - 'request_body': '{"comment":"This is a sample comment."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/publish_draft_journal_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/publish_draft_journal_example_call_tool.js deleted file mode 100644 index f0f64d394..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/publish_draft_journal_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.PublishDraftJournal"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "journal_identifier": "journal_789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/publish_draft_journal_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/publish_draft_journal_example_call_tool.py deleted file mode 100644 index dbd198972..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/publish_draft_journal_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.PublishDraftJournal" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'journal_identifier': 'journal_789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/refund_credit_note_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/refund_credit_note_example_call_tool.js deleted file mode 100644 index 737d64f0d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/refund_credit_note_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RefundCreditNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "credit_note_id": "CN7890", - "request_body": "{\"amount\":100,\"reason\":\"Product return\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/refund_credit_note_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/refund_credit_note_example_call_tool.py deleted file mode 100644 index dfdec56cd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/refund_credit_note_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RefundCreditNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'credit_note_id': 'CN7890', - 'request_body': '{"amount":100,"reason":"Product return"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/refund_excess_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/refund_excess_payment_example_call_tool.js deleted file mode 100644 index 0a1c47ad0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/refund_excess_payment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RefundExcessPayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "customer_payment_identifier": "payment_67890", - "request_body": "{\"refund_amount\":100.00}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/refund_excess_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/refund_excess_payment_example_call_tool.py deleted file mode 100644 index 0676f6d0b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/refund_excess_payment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RefundExcessPayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'customer_payment_identifier': 'payment_67890', - 'request_body': '{"refund_amount":100.00}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/refund_vendor_credit_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/refund_vendor_credit_example_call_tool.js deleted file mode 100644 index 02fafa8de..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/refund_vendor_credit_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RefundVendorCredit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "vendor_credit_identifier": "vc_67890", - "request_body": "{\"amount\":100,\"reason\":\"Product return\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/refund_vendor_credit_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/refund_vendor_credit_example_call_tool.py deleted file mode 100644 index 710170def..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/refund_vendor_credit_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RefundVendorCredit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'vendor_credit_identifier': 'vc_67890', - 'request_body': '{"amount":100,"reason":"Product return"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/refund_vendor_overpayment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/refund_vendor_overpayment_example_call_tool.js deleted file mode 100644 index b19b719d3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/refund_vendor_overpayment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RefundVendorOverpayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "vendor_payment_id": "payment_67890", - "request_body": "{\"amount\":100,\"reason\":\"overpayment\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/refund_vendor_overpayment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/refund_vendor_overpayment_example_call_tool.py deleted file mode 100644 index 4a5d189ed..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/refund_vendor_overpayment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RefundVendorOverpayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'vendor_payment_id': 'payment_67890', - 'request_body': '{"amount":100,"reason":"overpayment"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/reject_purchase_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/reject_purchase_order_example_call_tool.js deleted file mode 100644 index 535101514..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/reject_purchase_order_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RejectPurchaseOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "purchase_order_id": "po_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/reject_purchase_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/reject_purchase_order_example_call_tool.py deleted file mode 100644 index d72281569..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/reject_purchase_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RejectPurchaseOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'purchase_order_id': 'po_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/remind_customer_invoice_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/remind_customer_invoice_payment_example_call_tool.js deleted file mode 100644 index ce70c4c09..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/remind_customer_invoice_payment_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RemindCustomerInvoicePayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "invoice_identifier": "inv_67890", - "email_attachments": "http://example.com/file1.pdf,http://example.com/file2.pdf", - "include_customer_statement_pdf": true, - "request_body": "{\"reminder\":\"This is a reminder for your unpaid invoice.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/remind_customer_invoice_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/remind_customer_invoice_payment_example_call_tool.py deleted file mode 100644 index 230a0ab14..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/remind_customer_invoice_payment_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RemindCustomerInvoicePayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'invoice_identifier': 'inv_67890', - 'email_attachments': 'http://example.com/file1.pdf,http://example.com/file2.pdf', - 'include_customer_statement_pdf': True, - 'request_body': '{"reminder":"This is a reminder for your unpaid invoice."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/remove_currency_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/remove_currency_example_call_tool.js deleted file mode 100644 index 9881a350d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/remove_currency_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RemoveCurrency"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "currency_identifier": "curr_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/remove_currency_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/remove_currency_example_call_tool.py deleted file mode 100644 index a5c866459..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/remove_currency_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RemoveCurrency" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'currency_identifier': 'curr_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/remove_invoice_credit_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/remove_invoice_credit_example_call_tool.js deleted file mode 100644 index 6d755bfbd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/remove_invoice_credit_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RemoveInvoiceCredit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_identifier": "inv_67890", - "credit_note_invoice_id": "credit_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/remove_invoice_credit_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/remove_invoice_credit_example_call_tool.py deleted file mode 100644 index 40dd0be01..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/remove_invoice_credit_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RemoveInvoiceCredit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'invoice_identifier': 'inv_67890', - 'credit_note_invoice_id': 'credit_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/remove_user_from_organization_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/remove_user_from_organization_example_call_tool.js deleted file mode 100644 index e689cbe08..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/remove_user_from_organization_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RemoveUserFromOrganization"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "user_unique_identifier": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/remove_user_from_organization_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/remove_user_from_organization_example_call_tool.py deleted file mode 100644 index 001a1b36a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/remove_user_from_organization_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RemoveUserFromOrganization" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'user_unique_identifier': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/remove_user_from_project_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/remove_user_from_project_example_call_tool.js deleted file mode 100644 index d8d5536d8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/remove_user_from_project_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RemoveUserFromProject"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "project_identifier": "proj_67890", - "user_identifier": "user_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/remove_user_from_project_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/remove_user_from_project_example_call_tool.py deleted file mode 100644 index f7b3f0c68..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/remove_user_from_project_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RemoveUserFromProject" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'project_identifier': 'proj_67890', 'user_identifier': 'user_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/remove_vendor_bill_credit_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/remove_vendor_bill_credit_example_call_tool.js deleted file mode 100644 index 189ae86f3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/remove_vendor_bill_credit_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RemoveVendorBillCredit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "vendor_credit_identifier": "credit_67890", - "vendor_credit_bill_identifier": "bill_54321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/remove_vendor_bill_credit_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/remove_vendor_bill_credit_example_call_tool.py deleted file mode 100644 index 82bcb1e29..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/remove_vendor_bill_credit_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RemoveVendorBillCredit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'vendor_credit_identifier': 'credit_67890', - 'vendor_credit_bill_identifier': 'bill_54321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/restore_bank_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/restore_bank_transaction_example_call_tool.js deleted file mode 100644 index d415878d3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/restore_bank_transaction_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RestoreBankTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "bank_transaction_id": "txn_78910", - "account_id": "acc_112233" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/restore_bank_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/restore_bank_transaction_example_call_tool.py deleted file mode 100644 index 12a4230af..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/restore_bank_transaction_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RestoreBankTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'bank_transaction_id': 'txn_78910', 'account_id': 'acc_112233' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_bill_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_bill_example_call_tool.js deleted file mode 100644 index 240947f5c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_bill_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ResumeRecurringBill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "recurring_bill_identifier": "rec_bill_7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_bill_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_bill_example_call_tool.py deleted file mode 100644 index 12356e953..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_bill_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ResumeRecurringBill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'recurring_bill_identifier': 'rec_bill_7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_expense_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_expense_example_call_tool.js deleted file mode 100644 index 089271705..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_expense_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ResumeRecurringExpense"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "recurring_expense_id": "rec_exp_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_expense_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_expense_example_call_tool.py deleted file mode 100644 index 24b4ea4da..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_expense_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ResumeRecurringExpense" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'recurring_expense_id': 'rec_exp_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_invoice_example_call_tool.js deleted file mode 100644 index bad50189b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_invoice_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.ResumeRecurringInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "recurring_invoice_id": "inv_67890", - "request_body": "{\"status\":\"resumed\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_invoice_example_call_tool.py deleted file mode 100644 index 9f65218f3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/resume_recurring_invoice_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.ResumeRecurringInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'recurring_invoice_id': 'inv_67890', - 'request_body': '{"status":"resumed"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_bill_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_bill_attachment_example_call_tool.js deleted file mode 100644 index 9abcaabb6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_bill_attachment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RetrieveBillAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "12345", - "bill_identifier": "bill_67890", - "get_thumbnail": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_bill_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_bill_attachment_example_call_tool.py deleted file mode 100644 index fccca39c7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_bill_attachment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RetrieveBillAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '12345', 'bill_identifier': 'bill_67890', 'get_thumbnail': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_bill_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_bill_details_example_call_tool.js deleted file mode 100644 index 325ae9e4b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_bill_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RetrieveBillDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bill_identifier": "bill_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_bill_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_bill_details_example_call_tool.py deleted file mode 100644 index bdb5244b0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_bill_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RetrieveBillDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'bill_identifier': 'bill_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_contact_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_contact_details_example_call_tool.js deleted file mode 100644 index 6930f7eb8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_contact_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RetrieveContactDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "contact_id": "contact_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_contact_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_contact_details_example_call_tool.py deleted file mode 100644 index 86367de03..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_contact_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RetrieveContactDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'contact_id': 'contact_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_contact_list_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_contact_list_example_call_tool.js deleted file mode 100644 index c57c86709..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_contact_list_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RetrieveContactList"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "filter_contact_by_type": "customer", - "contact_name_filter": "John", - "sort_by_column": "contact_name", - "page_number_to_fetch": 1 -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_contact_list_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_contact_list_example_call_tool.py deleted file mode 100644 index 8fd5c7216..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_contact_list_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RetrieveContactList" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'filter_contact_by_type': 'customer', - 'contact_name_filter': 'John', - 'sort_by_column': 'contact_name', - 'page_number_to_fetch': 1 -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_credit_note_email_history_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_credit_note_email_history_example_call_tool.js deleted file mode 100644 index 7df6d59de..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_credit_note_email_history_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RetrieveCreditNoteEmailHistory"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "credit_note_id": "cn_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_credit_note_email_history_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_credit_note_email_history_example_call_tool.py deleted file mode 100644 index c68afcf49..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_credit_note_email_history_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RetrieveCreditNoteEmailHistory" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'credit_note_id': 'cn_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_estimate_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_estimate_details_example_call_tool.js deleted file mode 100644 index fdad56548..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_estimate_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RetrieveEstimateDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "estimate_id": "est_78910", - "response_format": "json", - "print_pdf": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_estimate_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_estimate_details_example_call_tool.py deleted file mode 100644 index 53a8e0f3c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_estimate_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RetrieveEstimateDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', - 'estimate_id': 'est_78910', - 'response_format': 'json', - 'print_pdf': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_expense_receipt_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_expense_receipt_example_call_tool.js deleted file mode 100644 index c2051d17f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_expense_receipt_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RetrieveExpenseReceipt"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "expense_identifier": "exp_67890", - "get_receipt_thumbnail": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_expense_receipt_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_expense_receipt_example_call_tool.py deleted file mode 100644 index bb3b3fcc5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_expense_receipt_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RetrieveExpenseReceipt" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'expense_identifier': 'exp_67890', - 'get_receipt_thumbnail': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_invoice_document_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_invoice_document_example_call_tool.js deleted file mode 100644 index e1a4c0252..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_invoice_document_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RetrieveInvoiceDocument"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_id": "inv_67890", - "invoice_document_id": "doc_abcde", - "response_format": "pdf" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_invoice_document_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_invoice_document_example_call_tool.py deleted file mode 100644 index a77fd2ccd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_invoice_document_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RetrieveInvoiceDocument" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'invoice_id': 'inv_67890', - 'invoice_document_id': 'doc_abcde', - 'response_format': 'pdf' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_item_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_item_details_example_call_tool.js deleted file mode 100644 index aaaccc8f3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_item_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RetrieveItemDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "item_unique_identifier": "item_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_item_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_item_details_example_call_tool.py deleted file mode 100644 index afe87560b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_item_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RetrieveItemDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'item_unique_identifier': 'item_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_purchase_order_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_purchase_order_attachment_example_call_tool.js deleted file mode 100644 index 5a80e529d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_purchase_order_attachment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RetrievePurchaseOrderAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "purchase_order_id": "po_67890", - "get_thumbnail": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_purchase_order_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_purchase_order_attachment_example_call_tool.py deleted file mode 100644 index 3f8fb9847..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_purchase_order_attachment_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RetrievePurchaseOrderAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'purchase_order_id': 'po_67890', 'get_thumbnail': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_purchase_order_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_purchase_order_details_example_call_tool.js deleted file mode 100644 index 140250d7b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_purchase_order_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RetrievePurchaseOrderDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org123", - "purchase_order_id": "po456", - "response_format": "json", - "print_pdf": false -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_purchase_order_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_purchase_order_details_example_call_tool.py deleted file mode 100644 index ad8543179..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_purchase_order_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RetrievePurchaseOrderDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org123', - 'purchase_order_id': 'po456', - 'response_format': 'json', - 'print_pdf': False -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_retainer_invoice_email_content_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_retainer_invoice_email_content_example_call_tool.js deleted file mode 100644 index 0eddcd5c9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_retainer_invoice_email_content_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RetrieveRetainerInvoiceEmailContent"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "retainer_invoice_id": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_retainer_invoice_email_content_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_retainer_invoice_email_content_example_call_tool.py deleted file mode 100644 index 7da48b69d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_retainer_invoice_email_content_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RetrieveRetainerInvoiceEmailContent" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'retainer_invoice_id': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_tax_group_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_tax_group_details_example_call_tool.js deleted file mode 100644 index c73e616ce..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_tax_group_details_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RetrieveTaxGroupDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "tax_group_identifier": "tax_group_001" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_tax_group_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_tax_group_details_example_call_tool.py deleted file mode 100644 index bb48afced..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_tax_group_details_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RetrieveTaxGroupDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'tax_group_identifier': 'tax_group_001' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_unused_retainer_payments_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_unused_retainer_payments_example_call_tool.js deleted file mode 100644 index 0d90d9354..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_unused_retainer_payments_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.RetrieveUnusedRetainerPayments"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "contact_id": "contact_67890", - "filter_by_currency_id": "usd" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_unused_retainer_payments_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_unused_retainer_payments_example_call_tool.py deleted file mode 100644 index ecc9d46b1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/retrieve_unused_retainer_payments_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.RetrieveUnusedRetainerPayments" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'contact_id': 'contact_67890', 'filter_by_currency_id': 'usd' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/sell_fixed_asset_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/sell_fixed_asset_example_call_tool.js deleted file mode 100644 index 682b9d527..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/sell_fixed_asset_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SellFixedAsset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "fixed_asset_identifier": "asset_67890", - "request_body": "{\"sale_price\": 10000, \"currency\": \"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/sell_fixed_asset_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/sell_fixed_asset_example_call_tool.py deleted file mode 100644 index 6b2cba4a8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/sell_fixed_asset_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SellFixedAsset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'fixed_asset_identifier': 'asset_67890', - 'request_body': '{"sale_price": 10000, "currency": "USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_email_to_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/send_email_to_contact_example_call_tool.js deleted file mode 100644 index c36850e25..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_email_to_contact_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SendEmailToContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "contact_id": "contact_67890", - "send_customer_statement_with_email": true, - "request_body": "{\"subject\":\"Hello\",\"body\":\"This is a test email.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_email_to_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/send_email_to_contact_example_call_tool.py deleted file mode 100644 index 6cf057253..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_email_to_contact_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SendEmailToContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'contact_id': 'contact_67890', - 'send_customer_statement_with_email': True, - 'request_body': '{"subject":"Hello","body":"This is a test email."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_estimate_email_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/send_estimate_email_example_call_tool.js deleted file mode 100644 index df99ff9fb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_estimate_email_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SendEstimateEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "estimate_identifier": "est_67890", - "email_attachments": "http://example.com/attachment.pdf", - "request_body": "{\"customer\":\"John Doe\",\"amount\":1500}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_estimate_email_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/send_estimate_email_example_call_tool.py deleted file mode 100644 index e1de36e8a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_estimate_email_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SendEstimateEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'estimate_identifier': 'est_67890', - 'email_attachments': 'http://example.com/attachment.pdf', - 'request_body': '{"customer":"John Doe","amount":1500}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_estimates_email_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/send_estimates_email_example_call_tool.js deleted file mode 100644 index 7cd6b5f54..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_estimates_email_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SendEstimatesEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "estimate_ids_to_email": "est_001,est_002,est_003" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_estimates_email_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/send_estimates_email_example_call_tool.py deleted file mode 100644 index 85ce592b9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_estimates_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SendEstimatesEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'estimate_ids_to_email': 'est_001,est_002,est_003' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_invitation_email_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/send_invitation_email_example_call_tool.js deleted file mode 100644 index ab536af86..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_invitation_email_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SendInvitationEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "user_unique_identifier": "user_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_invitation_email_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/send_invitation_email_example_call_tool.py deleted file mode 100644 index b18d2769c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_invitation_email_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SendInvitationEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'user_unique_identifier': 'user_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_invoice_email_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/send_invoice_email_example_call_tool.js deleted file mode 100644 index 6ddb6ada5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_invoice_email_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SendInvoiceEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "invoice_identifier": "inv_67890", - "invoice_email_attachments": "/path/to/attachment1.pdf,/path/to/attachment2.pdf", - "send_customer_statement": true, - "send_invoice_attachment": true, - "request_body": "{\"subject\":\"Invoice for your purchase\",\"body\":\"Please find attached your invoice.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_invoice_email_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/send_invoice_email_example_call_tool.py deleted file mode 100644 index 1f059d4d8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_invoice_email_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SendInvoiceEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'invoice_identifier': 'inv_67890', - 'invoice_email_attachments': '/path/to/attachment1.pdf,/path/to/attachment2.pdf', - 'send_customer_statement': True, - 'send_invoice_attachment': True, - 'request_body': '{"subject":"Invoice for your purchase","body":"Please find attached your ' - 'invoice."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_invoice_reminders_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/send_invoice_reminders_example_call_tool.js deleted file mode 100644 index 6280c2b59..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_invoice_reminders_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SendInvoiceReminders"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "invoice_ids": "inv_67890,inv_67891,inv_67892" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_invoice_reminders_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/send_invoice_reminders_example_call_tool.py deleted file mode 100644 index 14ca5f85c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_invoice_reminders_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SendInvoiceReminders" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'invoice_ids': 'inv_67890,inv_67891,inv_67892' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_invoices_email_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/send_invoices_email_example_call_tool.js deleted file mode 100644 index 9e5a4ed89..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_invoices_email_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SendInvoicesEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "comma_separated_invoice_ids": "inv_001,inv_002,inv_003", - "request_body": "{\"subject\":\"Invoice\",\"body\":\"Please find your invoice attached.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_invoices_email_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/send_invoices_email_example_call_tool.py deleted file mode 100644 index efe778030..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_invoices_email_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SendInvoicesEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'comma_separated_invoice_ids': 'inv_001,inv_002,inv_003', - 'request_body': '{"subject":"Invoice","body":"Please find your invoice attached."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_purchase_order_email_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/send_purchase_order_email_example_call_tool.js deleted file mode 100644 index 1f94258b4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_purchase_order_email_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SendPurchaseOrderEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org123", - "purchase_order_id": "po456", - "email_attachments": "http://example.com/file1.pdf,http://example.com/file2.pdf", - "attachment_file_name": "purchase_order.pdf", - "send_purchase_order_attachment": true, - "request_body": "{\"key\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_purchase_order_email_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/send_purchase_order_email_example_call_tool.py deleted file mode 100644 index 4d3205a5a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_purchase_order_email_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SendPurchaseOrderEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org123', - 'purchase_order_id': 'po456', - 'email_attachments': 'http://example.com/file1.pdf,http://example.com/file2.pdf', - 'attachment_file_name': 'purchase_order.pdf', - 'send_purchase_order_attachment': True, - 'request_body': '{"key":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_vendor_payment_email_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/send_vendor_payment_email_example_call_tool.js deleted file mode 100644 index 567cbbb8f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_vendor_payment_email_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SendVendorPaymentEmail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "vendor_payment_id": "vp_67890", - "email_attachments": "/path/to/attachment.pdf", - "attached_file_name": "receipt.pdf", - "send_vendor_payment_attachment": true, - "request_body": "{\"subject\":\"Payment Receipt\",\"body\":\"Thank you for your payment.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/send_vendor_payment_email_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/send_vendor_payment_email_example_call_tool.py deleted file mode 100644 index 01e5fb46e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/send_vendor_payment_email_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SendVendorPaymentEmail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'vendor_payment_id': 'vp_67890', - 'email_attachments': '/path/to/attachment.pdf', - 'attached_file_name': 'receipt.pdf', - 'send_vendor_payment_attachment': True, - 'request_body': '{"subject":"Payment Receipt","body":"Thank you for your payment."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/set_invoice_attachment_preference_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/set_invoice_attachment_preference_example_call_tool.js deleted file mode 100644 index 6ddc6b94b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/set_invoice_attachment_preference_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SetInvoiceAttachmentPreference"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_identifier": "inv_67890", - "send_attachment_with_email": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/set_invoice_attachment_preference_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/set_invoice_attachment_preference_example_call_tool.py deleted file mode 100644 index 9c66c62f8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/set_invoice_attachment_preference_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SetInvoiceAttachmentPreference" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'invoice_identifier': 'inv_67890', - 'send_attachment_with_email': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/set_primary_location_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/set_primary_location_example_call_tool.js deleted file mode 100644 index 45424ff15..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/set_primary_location_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SetPrimaryLocation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "location_identifier": "loc789" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/set_primary_location_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/set_primary_location_example_call_tool.py deleted file mode 100644 index 71b9f770a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/set_primary_location_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SetPrimaryLocation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'location_identifier': 'loc789' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/set_sales_order_attachment_preference_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/set_sales_order_attachment_preference_example_call_tool.js deleted file mode 100644 index ccb651925..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/set_sales_order_attachment_preference_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SetSalesOrderAttachmentPreference"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "sales_order_id": "so_67890", - "allow_attachment_in_email": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/set_sales_order_attachment_preference_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/set_sales_order_attachment_preference_example_call_tool.py deleted file mode 100644 index 3deafe8f5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/set_sales_order_attachment_preference_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SetSalesOrderAttachmentPreference" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'sales_order_id': 'so_67890', 'allow_attachment_in_email': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/start_time_tracking_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/start_time_tracking_example_call_tool.js deleted file mode 100644 index 5ce9c50b6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/start_time_tracking_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.StartTimeTracking"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "time_entry_identifier": "entry_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/start_time_tracking_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/start_time_tracking_example_call_tool.py deleted file mode 100644 index 34d74a831..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/start_time_tracking_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.StartTimeTracking" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'time_entry_identifier': 'entry_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/stop1099_tracking_for_vendor_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/stop1099_tracking_for_vendor_example_call_tool.js deleted file mode 100644 index 2ef1e1e0e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/stop1099_tracking_for_vendor_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.Stop1099TrackingForVendor"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "vendor_contact_id": "vendor_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/stop1099_tracking_for_vendor_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/stop1099_tracking_for_vendor_example_call_tool.py deleted file mode 100644 index 30b129577..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/stop1099_tracking_for_vendor_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.Stop1099TrackingForVendor" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'vendor_contact_id': 'vendor_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_bill_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_bill_example_call_tool.js deleted file mode 100644 index 08b3918f0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_bill_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.StopRecurringBill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "recurring_bill_identifier": "rec_bill_7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_bill_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_bill_example_call_tool.py deleted file mode 100644 index 1823091b1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_bill_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.StopRecurringBill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'recurring_bill_identifier': 'rec_bill_7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_expense_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_expense_example_call_tool.js deleted file mode 100644 index fcaf31d04..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_expense_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.StopRecurringExpense"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "recurring_expense_identifier": "rec_exp_7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_expense_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_expense_example_call_tool.py deleted file mode 100644 index a4dbd1a66..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_expense_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.StopRecurringExpense" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'recurring_expense_identifier': 'rec_exp_7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_invoice_example_call_tool.js deleted file mode 100644 index bb432efc7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_invoice_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.StopRecurringInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "recurring_invoice_id": "inv_78910", - "request_body": "{\"status\":\"stopped\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_invoice_example_call_tool.py deleted file mode 100644 index 6751bf025..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/stop_recurring_invoice_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.StopRecurringInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'recurring_invoice_id': 'inv_78910', - 'request_body': '{"status":"stopped"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/stop_time_tracking_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/stop_time_tracking_example_call_tool.js deleted file mode 100644 index faac91730..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/stop_time_tracking_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.StopTimeTracking"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/stop_time_tracking_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/stop_time_tracking_example_call_tool.py deleted file mode 100644 index 098a6244c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/stop_time_tracking_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.StopTimeTracking" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_bill_for_approval_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/submit_bill_for_approval_example_call_tool.js deleted file mode 100644 index 489126d37..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_bill_for_approval_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SubmitBillForApproval"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "bill_identifier": "BILL-7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_bill_for_approval_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/submit_bill_for_approval_example_call_tool.py deleted file mode 100644 index b2f1e2e7a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_bill_for_approval_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SubmitBillForApproval" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'bill_identifier': 'BILL-7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_credit_note_for_approval_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/submit_credit_note_for_approval_example_call_tool.js deleted file mode 100644 index f6b7017fd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_credit_note_for_approval_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SubmitCreditNoteForApproval"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "credit_note_id": "CN7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_credit_note_for_approval_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/submit_credit_note_for_approval_example_call_tool.py deleted file mode 100644 index 53622e5ad..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_credit_note_for_approval_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SubmitCreditNoteForApproval" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'credit_note_id': 'CN7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_estimate_for_approval_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/submit_estimate_for_approval_example_call_tool.js deleted file mode 100644 index d014416f2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_estimate_for_approval_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SubmitEstimateForApproval"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "estimate_identifier": "est_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_estimate_for_approval_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/submit_estimate_for_approval_example_call_tool.py deleted file mode 100644 index 30758d4d7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_estimate_for_approval_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SubmitEstimateForApproval" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'estimate_identifier': 'est_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_invoice_for_approval_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/submit_invoice_for_approval_example_call_tool.js deleted file mode 100644 index 5ebcad33c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_invoice_for_approval_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SubmitInvoiceForApproval"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "invoice_unique_id": "INV-7890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_invoice_for_approval_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/submit_invoice_for_approval_example_call_tool.py deleted file mode 100644 index 894d13e9d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_invoice_for_approval_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SubmitInvoiceForApproval" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'invoice_unique_id': 'INV-7890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_purchase_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/submit_purchase_order_example_call_tool.js deleted file mode 100644 index 6b8234eb9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_purchase_order_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SubmitPurchaseOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "purchase_order_id": "po_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_purchase_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/submit_purchase_order_example_call_tool.py deleted file mode 100644 index fe1d41e6f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_purchase_order_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SubmitPurchaseOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'purchase_order_id': 'po_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_retainer_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/submit_retainer_invoice_example_call_tool.js deleted file mode 100644 index 2fb87bc7a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_retainer_invoice_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SubmitRetainerInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "retainer_invoice_unique_id": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_retainer_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/submit_retainer_invoice_example_call_tool.py deleted file mode 100644 index 1e73bbd6f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_retainer_invoice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SubmitRetainerInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'retainer_invoice_unique_id': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_sales_order_for_approval_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/submit_sales_order_for_approval_example_call_tool.js deleted file mode 100644 index f2ea3c79a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_sales_order_for_approval_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SubmitSalesOrderForApproval"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "sales_order_id": "so_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_sales_order_for_approval_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/submit_sales_order_for_approval_example_call_tool.py deleted file mode 100644 index 23a68e166..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_sales_order_for_approval_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SubmitSalesOrderForApproval" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', 'sales_order_id': 'so_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_vendor_credit_for_approval_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/submit_vendor_credit_for_approval_example_call_tool.js deleted file mode 100644 index b5ee87caf..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_vendor_credit_for_approval_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.SubmitVendorCreditForApproval"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "vendor_credit_unique_id": "vc_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/submit_vendor_credit_for_approval_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/submit_vendor_credit_for_approval_example_call_tool.py deleted file mode 100644 index 5bf3e0521..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/submit_vendor_credit_for_approval_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.SubmitVendorCreditForApproval" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'vendor_credit_unique_id': 'vc_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/track_contact_for1099_reporting_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/track_contact_for1099_reporting_example_call_tool.js deleted file mode 100644 index 8db8e16c2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/track_contact_for1099_reporting_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.TrackContactFor1099Reporting"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_123456", - "contact_unique_id": "contact_78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/track_contact_for1099_reporting_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/track_contact_for1099_reporting_example_call_tool.py deleted file mode 100644 index 7901718a0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/track_contact_for1099_reporting_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.TrackContactFor1099Reporting" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_123456', 'contact_unique_id': 'contact_78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/uncategorize_bank_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/uncategorize_bank_transaction_example_call_tool.js deleted file mode 100644 index 957611c6c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/uncategorize_bank_transaction_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UncategorizeBankTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "bank_transaction_id": "txn_67890", - "account_id_for_transactions": "acc_54321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/uncategorize_bank_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/uncategorize_bank_transaction_example_call_tool.py deleted file mode 100644 index a2189130b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/uncategorize_bank_transaction_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UncategorizeBankTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'bank_transaction_id': 'txn_67890', - 'account_id_for_transactions': 'acc_54321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/unmatch_bank_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/unmatch_bank_transaction_example_call_tool.js deleted file mode 100644 index 2fecd83b9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/unmatch_bank_transaction_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UnmatchBankTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "transaction_id": "txn_67890", - "account_id_for_transactions": "acc_54321" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/unmatch_bank_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/unmatch_bank_transaction_example_call_tool.py deleted file mode 100644 index 7564edd81..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/unmatch_bank_transaction_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UnmatchBankTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'transaction_id': 'txn_67890', - 'account_id_for_transactions': 'acc_54321' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_account_info_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_account_info_example_call_tool.js deleted file mode 100644 index 2b442b367..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_account_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateAccountInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "account_identifier": "acc_67890", - "request_body": "{\"name\":\"New Account Name\",\"code\":\"1234\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_account_info_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_account_info_example_call_tool.py deleted file mode 100644 index acfe423d9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_account_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateAccountInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'account_identifier': 'acc_67890', - 'request_body': '{"name":"New Account Name","code":"1234"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_account_rule_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_account_rule_example_call_tool.js deleted file mode 100644 index 94246165c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_account_rule_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateBankAccountRule"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "bank_account_rule_id": "rule_789", - "request_body": "{\"criteria\":\"new_criteria\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_account_rule_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_account_rule_example_call_tool.py deleted file mode 100644 index a0c2104c5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_account_rule_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateBankAccountRule" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'bank_account_rule_id': 'rule_789', - 'request_body': '{"criteria":"new_criteria"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_account_zoho_books_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_account_zoho_books_example_call_tool.js deleted file mode 100644 index 7474678dd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_account_zoho_books_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateBankAccountZohoBooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "bank_account_id": "abc-123", - "request_body": "{\"account_name\":\"Updated Bank Account\",\"account_type\":\"Checking\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_account_zoho_books_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_account_zoho_books_example_call_tool.py deleted file mode 100644 index 1d46e7163..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_account_zoho_books_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateBankAccountZohoBooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'bank_account_id': 'abc-123', - 'request_body': '{"account_name":"Updated Bank Account","account_type":"Checking"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_transaction_example_call_tool.js deleted file mode 100644 index e46ceca3e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_transaction_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateBankTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "bank_transaction_identifier": "txn_67890", - "request_body": "{\"amount\":100,\"description\":\"Payment for services\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_transaction_example_call_tool.py deleted file mode 100644 index b3485fb3e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_bank_transaction_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateBankTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'bank_transaction_identifier': 'txn_67890', - 'request_body': '{"amount":100,"description":"Payment for services"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_bill_by_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_bill_by_custom_field_example_call_tool.js deleted file mode 100644 index 5119a4e39..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_bill_by_custom_field_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateBillByCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "unique_identifier_key": "custom_field_1", - "custom_field_unique_value": "unique_value_abc", - "enable_upsert": true, - "request_body": "{\"amount\": 100, \"description\": \"Monthly subscription\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_bill_by_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_bill_by_custom_field_example_call_tool.py deleted file mode 100644 index 3d22a5958..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_bill_by_custom_field_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateBillByCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'unique_identifier_key': 'custom_field_1', - 'custom_field_unique_value': 'unique_value_abc', - 'enable_upsert': True, - 'request_body': '{"amount": 100, "description": "Monthly subscription"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_bill_in_zoho_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_bill_in_zoho_example_call_tool.js deleted file mode 100644 index 6790c2023..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_bill_in_zoho_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateBillInZoho"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "bill_unique_identifier": "bill_67890", - "request_body": "{\"amount\": 150.00, \"status\": \"paid\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_bill_in_zoho_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_bill_in_zoho_example_call_tool.py deleted file mode 100644 index da86efc52..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_bill_in_zoho_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateBillInZoho" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'bill_unique_identifier': 'bill_67890', - 'request_body': '{"amount": 150.00, "status": "paid"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_billing_address_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_billing_address_example_call_tool.js deleted file mode 100644 index d248f448c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_billing_address_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateBillingAddress"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "bill_unique_identifier": "bill_67890", - "request_body": "{\"address\":\"123 Main St, Anytown, USA\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_billing_address_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_billing_address_example_call_tool.py deleted file mode 100644 index 32421ce47..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_billing_address_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateBillingAddress" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'bill_unique_identifier': 'bill_67890', - 'request_body': '{"address":"123 Main St, Anytown, USA"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_billing_address_retainer_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_billing_address_retainer_invoice_example_call_tool.js deleted file mode 100644 index 7225f93d8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_billing_address_retainer_invoice_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateBillingAddressRetainerInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "retainer_invoice_id": "inv_67890", - "request_body": "{\"billing_address\":\"123 Main St, Anytown, USA\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_billing_address_retainer_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_billing_address_retainer_invoice_example_call_tool.py deleted file mode 100644 index 95a069d26..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_billing_address_retainer_invoice_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateBillingAddressRetainerInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'retainer_invoice_id': 'inv_67890', - 'request_body': '{"billing_address":"123 Main St, Anytown, USA"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_business_contact_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_business_contact_example_call_tool.js deleted file mode 100644 index 769e95f7c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_business_contact_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateBusinessContact"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "contact_id": "contact_67890", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john@example.com\",\"phone\":\"123-456-7890\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_business_contact_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_business_contact_example_call_tool.py deleted file mode 100644 index a9cd6ced0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_business_contact_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateBusinessContact" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'contact_id': 'contact_67890', - 'request_body': '{"name":"John Doe","email":"john@example.com","phone":"123-456-7890"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_address_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_address_example_call_tool.js deleted file mode 100644 index b1dc79e20..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_address_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateContactAddress"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "contact_identifier": "contact_67890", - "address_identifier": "address_abcde", - "request_body": "{\"street\":\"123 Main St\",\"city\":\"Anytown\",\"zip\":\"12345\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_address_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_address_example_call_tool.py deleted file mode 100644 index 52a07999e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_address_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateContactAddress" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'contact_identifier': 'contact_67890', - 'address_identifier': 'address_abcde', - 'request_body': '{"street":"123 Main St","city":"Anytown","zip":"12345"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_by_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_by_custom_field_example_call_tool.js deleted file mode 100644 index 12ff30aa0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_by_custom_field_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateContactByCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "custom_field_api_name": "custom_field_1", - "unique_custom_field_value": "unique_value_123", - "create_contact_if_not_found": true, - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_by_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_by_custom_field_example_call_tool.py deleted file mode 100644 index 7cfa72855..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_by_custom_field_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateContactByCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'custom_field_api_name': 'custom_field_1', - 'unique_custom_field_value': 'unique_value_123', - 'create_contact_if_not_found': True, - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_person_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_person_example_call_tool.js deleted file mode 100644 index b81bfc5ae..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_person_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateContactPerson"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org123", - "contact_person_identifier": "cp456", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_person_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_person_example_call_tool.py deleted file mode 100644 index c2b31621b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_contact_person_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateContactPerson" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org123', - 'contact_person_identifier': 'cp456', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_billing_address_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_billing_address_example_call_tool.js deleted file mode 100644 index e1105993d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_billing_address_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateCreditNoteBillingAddress"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "credit_note_identifier": "CN-7890", - "request_body": "{\"billing_address\":{\"street\":\"123 Main St\",\"city\":\"Anytown\",\"state\":\"CA\",\"zip\":\"90210\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_billing_address_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_billing_address_example_call_tool.py deleted file mode 100644 index 8100e1749..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_billing_address_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateCreditNoteBillingAddress" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'credit_note_identifier': 'CN-7890', - 'request_body': '{"billing_address":{"street":"123 Main ' - 'St","city":"Anytown","state":"CA","zip":"90210"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_details_example_call_tool.js deleted file mode 100644 index 7134b2010..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_details_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateCreditNoteDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "credit_note_unique_identifier": "cn_67890", - "ignore_auto_number_generation": true, - "request_body": "{\"amount\":100,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_details_example_call_tool.py deleted file mode 100644 index 61871f6f7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_details_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateCreditNoteDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'credit_note_unique_identifier': 'cn_67890', - 'ignore_auto_number_generation': True, - 'request_body': '{"amount":100,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_shipping_address_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_shipping_address_example_call_tool.js deleted file mode 100644 index 7eb08a6ab..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_shipping_address_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateCreditNoteShippingAddress"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "credit_note_id": "cn_67890", - "request_body": "{\"address\":\"123 Main St, Anytown, USA\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_shipping_address_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_shipping_address_example_call_tool.py deleted file mode 100644 index 3e6a6ddc4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_shipping_address_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateCreditNoteShippingAddress" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'credit_note_id': 'cn_67890', - 'request_body': '{"address":"123 Main St, Anytown, USA"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_template_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_template_example_call_tool.js deleted file mode 100644 index 5da9df492..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_template_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateCreditNoteTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "credit_note_id": "cn_67890", - "credit_note_template_id": "template_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_template_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_template_example_call_tool.py deleted file mode 100644 index 7a96fc54f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_template_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateCreditNoteTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'credit_note_id': 'cn_67890', - 'credit_note_template_id': 'template_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_with_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_with_custom_field_example_call_tool.js deleted file mode 100644 index 835f307ae..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_with_custom_field_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateCreditNoteWithCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "unique_custom_field_key": "invoice_number", - "custom_field_unique_value": "INV-001", - "create_new_credit_note_if_not_found": true, - "request_body": "{\"amount\":100,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_with_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_with_custom_field_example_call_tool.py deleted file mode 100644 index 83156f19c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_credit_note_with_custom_field_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateCreditNoteWithCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'unique_custom_field_key': 'invoice_number', - 'custom_field_unique_value': 'INV-001', - 'create_new_credit_note_if_not_found': True, - 'request_body': '{"amount":100,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_currency_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_currency_details_example_call_tool.js deleted file mode 100644 index 0a1485869..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_currency_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateCurrencyDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "12345", - "currency_unique_identifier": "USD", - "request_body": "{\"name\":\"US Dollar\",\"symbol\":\"$\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_currency_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_currency_details_example_call_tool.py deleted file mode 100644 index ee6ba11a6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_currency_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateCurrencyDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '12345', - 'currency_unique_identifier': 'USD', - 'request_body': '{"name":"US Dollar","symbol":"$"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_fields_in_bill_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_fields_in_bill_example_call_tool.js deleted file mode 100644 index 735c43524..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_fields_in_bill_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateCustomFieldsInBill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "bill_identifier": "bill_67890", - "request_body": "{\"customField1\":\"value1\",\"customField2\":\"value2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_fields_in_bill_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_fields_in_bill_example_call_tool.py deleted file mode 100644 index 2342ebae2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_fields_in_bill_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateCustomFieldsInBill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'bill_identifier': 'bill_67890', - 'request_body': '{"customField1":"value1","customField2":"value2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_fields_purchase_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_fields_purchase_order_example_call_tool.js deleted file mode 100644 index f24c35ec2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_fields_purchase_order_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateCustomFieldsPurchaseOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "purchase_order_id": "po_67890", - "request_body": "{\"custom_field\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_fields_purchase_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_fields_purchase_order_example_call_tool.py deleted file mode 100644 index fb3d359e7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_fields_purchase_order_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateCustomFieldsPurchaseOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'purchase_order_id': 'po_67890', - 'request_body': '{"custom_field":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_module_record_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_module_record_example_call_tool.js deleted file mode 100644 index b6943f229..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_module_record_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateCustomModuleRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "module_name": "Invoices", - "custom_module_id": 789, - "request_body": "{\"field\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_module_record_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_module_record_example_call_tool.py deleted file mode 100644 index 899289c20..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_module_record_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateCustomModuleRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'module_name': 'Invoices', - 'custom_module_id': 789, - 'request_body': '{"field":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_module_records_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_module_records_example_call_tool.js deleted file mode 100644 index af45d8fe6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_module_records_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateCustomModuleRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "module_name": "custom_module_1", - "request_body": "{\"records\":[{\"id\":\"rec_1\",\"field\":\"value1\"},{\"id\":\"rec_2\",\"field\":\"value2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_module_records_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_module_records_example_call_tool.py deleted file mode 100644 index e1fbd52a6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_custom_module_records_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateCustomModuleRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'module_name': 'custom_module_1', - 'request_body': '{"records":[{"id":"rec_1","field":"value1"},{"id":"rec_2","field":"value2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_debit_note_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_debit_note_example_call_tool.js deleted file mode 100644 index 34988f08e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_debit_note_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateCustomerDebitNote"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "debit_note_unique_identifier": "DN-7890", - "ignore_auto_number_generation": false, - "request_body": "{\"line_items\":[{\"item_id\":\"item_1\",\"quantity\":2,\"rate\":100}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_debit_note_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_debit_note_example_call_tool.py deleted file mode 100644 index 29f004bb0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_debit_note_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateCustomerDebitNote" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'debit_note_unique_identifier': 'DN-7890', - 'ignore_auto_number_generation': False, - 'request_body': '{"line_items":[{"item_id":"item_1","quantity":2,"rate":100}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_payment_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_payment_custom_fields_example_call_tool.js deleted file mode 100644 index 669456fad..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_payment_custom_fields_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateCustomerPaymentCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "customer_payment_identifier": "payment_789", - "request_body": "{\"custom_field\":\"value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_payment_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_payment_custom_fields_example_call_tool.py deleted file mode 100644 index f108372bb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_payment_custom_fields_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateCustomerPaymentCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'customer_payment_identifier': 'payment_789', - 'request_body': '{"custom_field":"value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_payment_info_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_payment_info_example_call_tool.js deleted file mode 100644 index fb8b66412..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_payment_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateCustomerPaymentInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "payment_unique_identifier": "pay_67890", - "request_body": "{\"card_number\":\"4111111111111111\",\"expiry_date\":\"12/25\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_payment_info_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_payment_info_example_call_tool.py deleted file mode 100644 index 68ec1a17e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_customer_payment_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateCustomerPaymentInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'payment_unique_identifier': 'pay_67890', - 'request_body': '{"card_number":"4111111111111111","expiry_date":"12/25"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_billing_address_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_billing_address_example_call_tool.js deleted file mode 100644 index 28d14e3e0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_billing_address_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateEstimateBillingAddress"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "estimate_identifier": "est_78910", - "request_body": "{\"billing_address\":{\"street\":\"123 Main St\",\"city\":\"Anytown\",\"state\":\"CA\",\"zip\":\"90210\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_billing_address_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_billing_address_example_call_tool.py deleted file mode 100644 index a2ef60e2d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_billing_address_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateEstimateBillingAddress" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'estimate_identifier': 'est_78910', - 'request_body': '{"billing_address":{"street":"123 Main ' - 'St","city":"Anytown","state":"CA","zip":"90210"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_comment_example_call_tool.js deleted file mode 100644 index 6415b1829..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_comment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateEstimateComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_123", - "estimate_identifier": "est_456", - "comment_unique_identifier": "comment_789", - "request_body": "{\"comment\":\"Updated comment text\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_comment_example_call_tool.py deleted file mode 100644 index 14d955962..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_comment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateEstimateComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_123', - 'estimate_identifier': 'est_456', - 'comment_unique_identifier': 'comment_789', - 'request_body': '{"comment":"Updated comment text"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_custom_fields_example_call_tool.js deleted file mode 100644 index d00971362..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_custom_fields_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateEstimateCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "estimate_identifier": "est_67890", - "request_body": "{\"customField1\":\"value1\",\"customField2\":\"value2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_custom_fields_example_call_tool.py deleted file mode 100644 index a40370d3f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_custom_fields_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateEstimateCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'estimate_identifier': 'est_67890', - 'request_body': '{"customField1":"value1","customField2":"value2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_example_call_tool.js deleted file mode 100644 index 2fba109e4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateEstimate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "estimate_unique_id": "est_78910", - "ignore_auto_number_generation": false, - "request_body": "{\"line_items\":[{\"item_id\":\"item_1\",\"quantity\":2,\"rate\":100}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_example_call_tool.py deleted file mode 100644 index 901487de6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateEstimate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'estimate_unique_id': 'est_78910', - 'ignore_auto_number_generation': False, - 'request_body': '{"line_items":[{"item_id":"item_1","quantity":2,"rate":100}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_shipping_address_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_shipping_address_example_call_tool.js deleted file mode 100644 index 37bfb3194..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_shipping_address_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateEstimateShippingAddress"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "estimate_identifier": "est_78910", - "request_body": "{\"address\":\"123 Main St, Springfield, IL, 62701\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_shipping_address_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_shipping_address_example_call_tool.py deleted file mode 100644 index 64ed64dc8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_shipping_address_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateEstimateShippingAddress" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'estimate_identifier': 'est_78910', - 'request_body': '{"address":"123 Main St, Springfield, IL, 62701"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_template_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_template_example_call_tool.js deleted file mode 100644 index c85e0f578..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_template_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateEstimateTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "estimate_identifier": "est_67890", - "estimate_template_identifier": "temp_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_template_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_template_example_call_tool.py deleted file mode 100644 index 1ad2a6d98..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_template_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateEstimateTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'estimate_identifier': 'est_67890', - 'estimate_template_identifier': 'temp_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_with_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_with_custom_field_example_call_tool.js deleted file mode 100644 index 3719ef86b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_with_custom_field_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateEstimateWithCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "unique_custom_field_api_name": "estimate_id", - "unique_custom_field_value": "est_67890", - "create_new_estimate_if_not_found": true, - "request_body": "{\"amount\": 1000, \"currency\": \"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_with_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_with_custom_field_example_call_tool.py deleted file mode 100644 index 46c18e0fd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_estimate_with_custom_field_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateEstimateWithCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'unique_custom_field_api_name': 'estimate_id', - 'unique_custom_field_value': 'est_67890', - 'create_new_estimate_if_not_found': True, - 'request_body': '{"amount": 1000, "currency": "USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_exchange_rate_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_exchange_rate_example_call_tool.js deleted file mode 100644 index 7a70c72a7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_exchange_rate_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateExchangeRate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "12345", - "currency_unique_identifier": "USD", - "exchange_rate_identifier": "rate_001", - "request_body": "{\"exchange_rate\": 1.2}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_exchange_rate_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_exchange_rate_example_call_tool.py deleted file mode 100644 index c96f3024b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_exchange_rate_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateExchangeRate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '12345', - 'currency_unique_identifier': 'USD', - 'exchange_rate_identifier': 'rate_001', - 'request_body': '{"exchange_rate": 1.2}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_existing_expense_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_existing_expense_example_call_tool.js deleted file mode 100644 index 2e9c467da..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_existing_expense_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateExistingExpense"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "expense_identifier": "exp_78910", - "expense_receipt_file": "path/to/receipt.jpg", - "delete_receipt": false, - "request_body": "{\"amount\":100,\"description\":\"Updated expense description\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_existing_expense_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_existing_expense_example_call_tool.py deleted file mode 100644 index 75c2525d9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_existing_expense_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateExistingExpense" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'expense_identifier': 'exp_78910', - 'expense_receipt_file': 'path/to/receipt.jpg', - 'delete_receipt': False, - 'request_body': '{"amount":100,"description":"Updated expense description"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_expense_with_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_expense_with_custom_field_example_call_tool.js deleted file mode 100644 index a497332cb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_expense_with_custom_field_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateExpenseWithCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "custom_field_api_name": "expense_id", - "unique_custom_field_value": "exp_67890", - "allow_upsert_new_expense": true, - "request_body": "{\"amount\":100,\"description\":\"Office supplies\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_expense_with_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_expense_with_custom_field_example_call_tool.py deleted file mode 100644 index 995d75fef..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_expense_with_custom_field_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateExpenseWithCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'custom_field_api_name': 'expense_id', - 'unique_custom_field_value': 'exp_67890', - 'allow_upsert_new_expense': True, - 'request_body': '{"amount":100,"description":"Office supplies"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_fixed_asset_info_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_fixed_asset_info_example_call_tool.js deleted file mode 100644 index 87ab78774..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_fixed_asset_info_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateFixedAssetInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "fixed_asset_identifier": "asset_001", - "request_body": "{\"name\":\"Updated Asset Name\",\"value\":10000}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_fixed_asset_info_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_fixed_asset_info_example_call_tool.py deleted file mode 100644 index e4502c5da..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_fixed_asset_info_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateFixedAssetInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'fixed_asset_identifier': 'asset_001', - 'request_body': '{"name":"Updated Asset Name","value":10000}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_fixed_asset_type_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_fixed_asset_type_example_call_tool.js deleted file mode 100644 index 71d26b115..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_fixed_asset_type_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateFixedAssetType"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "fixed_asset_type_identifier": "asset_67890", - "request_body": "{\"name\":\"Updated Asset Type\",\"description\":\"This is an updated description.\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_fixed_asset_type_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_fixed_asset_type_example_call_tool.py deleted file mode 100644 index 503038116..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_fixed_asset_type_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateFixedAssetType" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'fixed_asset_type_identifier': 'asset_67890', - 'request_body': '{"name":"Updated Asset Type","description":"This is an updated description."}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_by_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_by_custom_field_example_call_tool.js deleted file mode 100644 index 379723d59..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_by_custom_field_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateInvoiceByCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "unique_custom_field_api_name": "invoice_number", - "custom_field_value": "INV-001", - "create_new_invoice_if_not_found": true, - "request_body": "{\"amount\":100,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_by_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_by_custom_field_example_call_tool.py deleted file mode 100644 index 6845495d2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_by_custom_field_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateInvoiceByCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'unique_custom_field_api_name': 'invoice_number', - 'custom_field_value': 'INV-001', - 'create_new_invoice_if_not_found': True, - 'request_body': '{"amount":100,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_comment_example_call_tool.js deleted file mode 100644 index 2a7550c76..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_comment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateInvoiceComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_123", - "invoice_unique_id": "inv_456", - "comment_id": "com_789", - "request_body": "{\"comment\":\"Updated comment text\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_comment_example_call_tool.py deleted file mode 100644 index 25efed675..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_comment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateInvoiceComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_123', - 'invoice_unique_id': 'inv_456', - 'comment_id': 'com_789', - 'request_body': '{"comment":"Updated comment text"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_custom_fields_example_call_tool.js deleted file mode 100644 index 178154e7c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_custom_fields_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateInvoiceCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "invoice_identifier": "inv_67890", - "request_body": "{\"custom_field_1\":\"value1\",\"custom_field_2\":\"value2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_custom_fields_example_call_tool.py deleted file mode 100644 index 915edc648..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_custom_fields_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateInvoiceCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'invoice_identifier': 'inv_67890', - 'request_body': '{"custom_field_1":"value1","custom_field_2":"value2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_example_call_tool.js deleted file mode 100644 index 1f9611392..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "invoice_id": "inv_67890", - "ignore_auto_invoice_number_generation": false, - "request_body": "{\"line_items\":[{\"item_id\":\"item_1\",\"quantity\":2,\"price\":50}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_example_call_tool.py deleted file mode 100644 index bffc1b1b8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'invoice_id': 'inv_67890', - 'ignore_auto_invoice_number_generation': False, - 'request_body': '{"line_items":[{"item_id":"item_1","quantity":2,"price":50}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_shipping_address_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_shipping_address_example_call_tool.js deleted file mode 100644 index aaf3b40ed..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_shipping_address_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateInvoiceShippingAddress"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "invoice_unique_identifier": "inv_67890", - "request_body": "{\"shipping_address\":{\"street\":\"123 Main St\",\"city\":\"Anytown\",\"state\":\"CA\",\"zip\":\"90210\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_shipping_address_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_shipping_address_example_call_tool.py deleted file mode 100644 index f10f92200..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_shipping_address_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateInvoiceShippingAddress" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'invoice_unique_identifier': 'inv_67890', - 'request_body': '{"shipping_address":{"street":"123 Main ' - 'St","city":"Anytown","state":"CA","zip":"90210"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_template_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_template_example_call_tool.js deleted file mode 100644 index b23b02cdd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_template_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateInvoiceTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "invoice_identifier": "inv_67890", - "invoice_template_id": "temp_abcde" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_template_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_template_example_call_tool.py deleted file mode 100644 index a6368bff4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_invoice_template_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateInvoiceTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'invoice_identifier': 'inv_67890', - 'invoice_template_id': 'temp_abcde' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_item_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_item_custom_fields_example_call_tool.js deleted file mode 100644 index 576ba2f5f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_item_custom_fields_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateItemCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "12345", - "item_identifier": "item_001", - "request_body": "{\"custom_field\":\"new_value\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_item_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_item_custom_fields_example_call_tool.py deleted file mode 100644 index 14676b060..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_item_custom_fields_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateItemCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '12345', - 'item_identifier': 'item_001', - 'request_body': '{"custom_field":"new_value"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_item_via_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_item_via_custom_field_example_call_tool.js deleted file mode 100644 index 715db98d1..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_item_via_custom_field_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateItemViaCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "unique_custom_field_api_name": "custom_field_1", - "unique_custom_field_value": "value_123", - "create_item_if_not_found": true, - "request_body": "{\"name\":\"Sample Item\",\"price\":100}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_item_via_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_item_via_custom_field_example_call_tool.py deleted file mode 100644 index 8601872c5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_item_via_custom_field_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateItemViaCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'unique_custom_field_api_name': 'custom_field_1', - 'unique_custom_field_value': 'value_123', - 'create_item_if_not_found': True, - 'request_body': '{"name":"Sample Item","price":100}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_journal_in_zoho_books_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_journal_in_zoho_books_example_call_tool.js deleted file mode 100644 index 6d3e71912..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_journal_in_zoho_books_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateJournalInZohoBooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "journal_identifier": "78910", - "request_body": "{\"amount\": 100, \"description\": \"Updated journal entry\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_journal_in_zoho_books_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_journal_in_zoho_books_example_call_tool.py deleted file mode 100644 index 19483e09d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_journal_in_zoho_books_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateJournalInZohoBooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'journal_identifier': '78910', - 'request_body': '{"amount": 100, "description": "Updated journal entry"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_location_in_zoho_books_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_location_in_zoho_books_example_call_tool.js deleted file mode 100644 index e86d58d26..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_location_in_zoho_books_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateLocationInZohoBooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "location_identifier": "loc789", - "request_body": "{\"name\":\"New Location\",\"address\":\"123 Main St\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_location_in_zoho_books_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_location_in_zoho_books_example_call_tool.py deleted file mode 100644 index 1fa357f59..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_location_in_zoho_books_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateLocationInZohoBooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'location_identifier': 'loc789', - 'request_body': '{"name":"New Location","address":"123 Main St"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_opening_balance_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_opening_balance_example_call_tool.js deleted file mode 100644 index f3cac4d20..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_opening_balance_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateOpeningBalance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "request_body": "{\"opening_balance\": 1000}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_opening_balance_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_opening_balance_example_call_tool.py deleted file mode 100644 index c859fc0f8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_opening_balance_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateOpeningBalance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', 'organization_id': '123456', 'request_body': '{"opening_balance": 1000}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_organization_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_organization_details_example_call_tool.js deleted file mode 100644 index 7013660ff..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_organization_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateOrganizationDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "12345", - "organization_identifier": "org-001", - "request_body": "{\"name\":\"New Organization Name\",\"address\":\"123 Main St\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_organization_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_organization_details_example_call_tool.py deleted file mode 100644 index 7a4edfaf7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_organization_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateOrganizationDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '12345', - 'organization_identifier': 'org-001', - 'request_body': '{"name":"New Organization Name","address":"123 Main St"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_payment_by_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_payment_by_custom_field_example_call_tool.js deleted file mode 100644 index 883cd8729..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_payment_by_custom_field_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdatePaymentByCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "unique_custom_field_api_name": "payment_id", - "unique_custom_field_value": "pay_67890", - "create_new_payment_if_not_found": true, - "request_body": "{\"amount\":100,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_payment_by_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_payment_by_custom_field_example_call_tool.py deleted file mode 100644 index 0e13c24e5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_payment_by_custom_field_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdatePaymentByCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'unique_custom_field_api_name': 'payment_id', - 'unique_custom_field_value': 'pay_67890', - 'create_new_payment_if_not_found': True, - 'request_body': '{"amount":100,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_payment_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_payment_refund_example_call_tool.js deleted file mode 100644 index eeadde372..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_payment_refund_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdatePaymentRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "customer_payment_identifier": "payment_67890", - "refund_identifier": "refund_abcde", - "request_body": "{\"amount\": 100, \"currency\": \"USD\", \"status\": \"refunded\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_payment_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_payment_refund_example_call_tool.py deleted file mode 100644 index 5c3d09f01..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_payment_refund_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdatePaymentRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'customer_payment_identifier': 'payment_67890', - 'refund_identifier': 'refund_abcde', - 'request_body': '{"amount": 100, "currency": "USD", "status": "refunded"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_project_details_example_call_tool.js deleted file mode 100644 index a85a2d6f3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateProjectDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "project_unique_identifier": "proj_789", - "request_body": "{\"name\":\"New Project Name\",\"status\":\"active\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_project_details_example_call_tool.py deleted file mode 100644 index ce78efca5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateProjectDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'project_unique_identifier': 'proj_789', - 'request_body': '{"name":"New Project Name","status":"active"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_task_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_project_task_example_call_tool.js deleted file mode 100644 index 09f936592..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_task_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateProjectTask"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "12345", - "project_identifier": "proj_001", - "task_identifier": "task_001", - "request_body": "{\"status\":\"completed\",\"due_date\":\"2023-10-31\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_task_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_project_task_example_call_tool.py deleted file mode 100644 index 1b483bec7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_task_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateProjectTask" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '12345', - 'project_identifier': 'proj_001', - 'task_identifier': 'task_001', - 'request_body': '{"status":"completed","due_date":"2023-10-31"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_user_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_project_user_details_example_call_tool.js deleted file mode 100644 index 28eb44b1f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_user_details_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateProjectUserDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "project_identifier": "proj_67890", - "user_identifier": "user_abc", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_user_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_project_user_details_example_call_tool.py deleted file mode 100644 index 1e77a637a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_user_details_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateProjectUserDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'project_identifier': 'proj_67890', - 'user_identifier': 'user_abc', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_with_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_project_with_custom_field_example_call_tool.js deleted file mode 100644 index 925586081..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_with_custom_field_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateProjectWithCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "unique_custom_field_api_name": "project_code", - "unique_custom_field_value": "ABC-123", - "create_new_project_if_not_found": true, - "request_body": "{\"name\":\"New Project\",\"description\":\"Project description here\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_with_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_project_with_custom_field_example_call_tool.py deleted file mode 100644 index a242a1a2f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_project_with_custom_field_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateProjectWithCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'unique_custom_field_api_name': 'project_code', - 'unique_custom_field_value': 'ABC-123', - 'create_new_project_if_not_found': True, - 'request_body': '{"name":"New Project","description":"Project description here"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_billing_address_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_billing_address_example_call_tool.js deleted file mode 100644 index 136052f92..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_billing_address_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdatePurchaseOrderBillingAddress"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "purchase_order_identifier": "PO-78910", - "request_body": "{\"billing_address\":{\"street\":\"123 Main St\",\"city\":\"Anytown\",\"state\":\"CA\",\"zip\":\"90210\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_billing_address_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_billing_address_example_call_tool.py deleted file mode 100644 index 22e04f622..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_billing_address_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdatePurchaseOrderBillingAddress" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'purchase_order_identifier': 'PO-78910', - 'request_body': '{"billing_address":{"street":"123 Main ' - 'St","city":"Anytown","state":"CA","zip":"90210"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_by_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_by_custom_field_example_call_tool.js deleted file mode 100644 index 7030fdced..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_by_custom_field_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdatePurchaseOrderByCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "unique_custom_field_api_name": "customField1", - "unique_custom_field_value": "value_abc", - "create_new_order_if_not_found": true, - "request_body": "{\"item\":\"widget\",\"quantity\":10}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_by_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_by_custom_field_example_call_tool.py deleted file mode 100644 index c4615b977..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_by_custom_field_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdatePurchaseOrderByCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'unique_custom_field_api_name': 'customField1', - 'unique_custom_field_value': 'value_abc', - 'create_new_order_if_not_found': True, - 'request_body': '{"item":"widget","quantity":10}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_comment_example_call_tool.js deleted file mode 100644 index 759dae487..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_comment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdatePurchaseOrderComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "purchase_order_id": "PO-78910", - "comment_identifier": "comment-001", - "request_body": "{\"comment\":\"Updated comment text\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_comment_example_call_tool.py deleted file mode 100644 index ffdb828de..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_comment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdatePurchaseOrderComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'purchase_order_id': 'PO-78910', - 'comment_identifier': 'comment-001', - 'request_body': '{"comment":"Updated comment text"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_email_attachment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_email_attachment_example_call_tool.js deleted file mode 100644 index 912cb9fbf..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_email_attachment_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdatePurchaseOrderEmailAttachment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "purchase_order_id": "po_67890", - "include_attachment_with_email": true -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_email_attachment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_email_attachment_example_call_tool.py deleted file mode 100644 index d3fb7766c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_email_attachment_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdatePurchaseOrderEmailAttachment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'purchase_order_id': 'po_67890', - 'include_attachment_with_email': True -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_example_call_tool.js deleted file mode 100644 index 18dd9c918..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdatePurchaseOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "purchase_order_identifier": "PO-78910", - "attachment_file_path": "/path/to/attachment.pdf", - "ignore_auto_number_generation": false, - "request_body": "{\"status\":\"updated\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_example_call_tool.py deleted file mode 100644 index fde7e216f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_purchase_order_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdatePurchaseOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'purchase_order_identifier': 'PO-78910', - 'attachment_file_path': '/path/to/attachment.pdf', - 'ignore_auto_number_generation': False, - 'request_body': '{"status":"updated"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_bill_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_bill_custom_field_example_call_tool.js deleted file mode 100644 index 08151ffe0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_bill_custom_field_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateRecurringBillCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "custom_field_unique_identifier_key": "billing_id", - "unique_custom_field_value": "bill_67890", - "allow_creation_if_missing": true, - "request_body": "{\"amount\": 100, \"currency\": \"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_bill_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_bill_custom_field_example_call_tool.py deleted file mode 100644 index d306a3b0f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_bill_custom_field_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateRecurringBillCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'custom_field_unique_identifier_key': 'billing_id', - 'unique_custom_field_value': 'bill_67890', - 'allow_creation_if_missing': True, - 'request_body': '{"amount": 100, "currency": "USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_bill_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_bill_example_call_tool.js deleted file mode 100644 index e70623003..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_bill_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateRecurringBill"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "recurring_bill_identifier": "bill_789", - "request_body": "{\"amount\": 100.0, \"description\": \"Monthly Subscription\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_bill_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_bill_example_call_tool.py deleted file mode 100644 index b085118af..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_bill_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateRecurringBill" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'recurring_bill_identifier': 'bill_789', - 'request_body': '{"amount": 100.0, "description": "Monthly Subscription"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_expense_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_expense_example_call_tool.js deleted file mode 100644 index 0171ccffb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_expense_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateRecurringExpense"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "unique_custom_field_api_name": "expense_id", - "unique_custom_field_value": "exp_67890", - "create_new_recurring_if_not_found": true, - "request_body": "{\"amount\": 100, \"description\": \"Monthly subscription\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_expense_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_expense_example_call_tool.py deleted file mode 100644 index 04e8f2938..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_expense_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateRecurringExpense" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'unique_custom_field_api_name': 'expense_id', - 'unique_custom_field_value': 'exp_67890', - 'create_new_recurring_if_not_found': True, - 'request_body': '{"amount": 100, "description": "Monthly subscription"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_custom_field_example_call_tool.js deleted file mode 100644 index 8c1180ddd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_custom_field_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateRecurringInvoiceCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "unique_custom_field_api_name": "invoice_id", - "unique_custom_field_value": "inv_67890", - "enable_upsert": true, - "request_body": "{\"amount\": 100, \"currency\": \"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_custom_field_example_call_tool.py deleted file mode 100644 index ff7f6fb6a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_custom_field_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateRecurringInvoiceCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'unique_custom_field_api_name': 'invoice_id', - 'unique_custom_field_value': 'inv_67890', - 'enable_upsert': True, - 'request_body': '{"amount": 100, "currency": "USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_example_call_tool.js deleted file mode 100644 index ec56486ab..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateRecurringInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "123456", - "recurring_invoice_id": "inv_78910", - "request_body": "{\"amount\": 150.00, \"currency\": \"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_example_call_tool.py deleted file mode 100644 index 836e912c2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateRecurringInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': '123456', - 'recurring_invoice_id': 'inv_78910', - 'request_body': '{"amount": 150.00, "currency": "USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_template_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_template_example_call_tool.js deleted file mode 100644 index dfedbd841..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_template_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateRecurringInvoiceTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "recurring_invoice_identifier": "inv_67890", - "invoice_template_id": "temp_abcde", - "request_body": "{\"template\":\"new_template_data\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_template_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_template_example_call_tool.py deleted file mode 100644 index aa78a1a55..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_recurring_invoice_template_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateRecurringInvoiceTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'recurring_invoice_identifier': 'inv_67890', - 'invoice_template_id': 'temp_abcde', - 'request_body': '{"template":"new_template_data"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_refund_transaction_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_refund_transaction_example_call_tool.js deleted file mode 100644 index e3f3f4400..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_refund_transaction_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateRefundTransaction"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "credit_note_identifier": "cn_67890", - "credit_note_refund_id": "cr_54321", - "request_body": "{\"amount\":100,\"currency\":\"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_refund_transaction_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_refund_transaction_example_call_tool.py deleted file mode 100644 index 11f9137b5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_refund_transaction_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateRefundTransaction" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'credit_note_identifier': 'cn_67890', - 'credit_note_refund_id': 'cr_54321', - 'request_body': '{"amount":100,"currency":"USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_retainer_invoice_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_retainer_invoice_comment_example_call_tool.js deleted file mode 100644 index 46f6b692f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_retainer_invoice_comment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateRetainerInvoiceComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "retainer_invoice_id": "inv_67890", - "comment_identifier": "comment_abc", - "request_body": "{\"comment\":\"Updated comment text\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_retainer_invoice_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_retainer_invoice_comment_example_call_tool.py deleted file mode 100644 index 4f7e584ac..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_retainer_invoice_comment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateRetainerInvoiceComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'retainer_invoice_id': 'inv_67890', - 'comment_identifier': 'comment_abc', - 'request_body': '{"comment":"Updated comment text"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_billing_address_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_billing_address_example_call_tool.js deleted file mode 100644 index af1850c0e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_billing_address_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateSalesOrderBillingAddress"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "sales_order_identifier": "order_67890", - "request_body": "{\"billing_address\": {\"street\": \"123 Main St\", \"city\": \"Anytown\", \"state\": \"CA\", \"zip\": \"90210\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_billing_address_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_billing_address_example_call_tool.py deleted file mode 100644 index 8eb825cf3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_billing_address_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateSalesOrderBillingAddress" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'sales_order_identifier': 'order_67890', - 'request_body': '{"billing_address": {"street": "123 Main St", "city": "Anytown", "state": ' - '"CA", "zip": "90210"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_comment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_comment_example_call_tool.js deleted file mode 100644 index ed4512db9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_comment_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateSalesOrderComment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "sales_order_id": "so_67890", - "comment_id": "comment_abc", - "request_body": "{\"comment\":\"Updated comment text\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_comment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_comment_example_call_tool.py deleted file mode 100644 index ce8b93a93..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_comment_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateSalesOrderComment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'sales_order_id': 'so_67890', - 'comment_id': 'comment_abc', - 'request_body': '{"comment":"Updated comment text"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_custom_fields_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_custom_fields_example_call_tool.js deleted file mode 100644 index 55071258c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_custom_fields_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateSalesOrderCustomFields"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "sales_order_id": "so_67890", - "request_body": "{\"customField\":\"newValue\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_custom_fields_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_custom_fields_example_call_tool.py deleted file mode 100644 index 648ae73ad..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_custom_fields_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateSalesOrderCustomFields" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'sales_order_id': 'so_67890', - 'request_body': '{"customField":"newValue"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_in_zoho_books_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_in_zoho_books_example_call_tool.js deleted file mode 100644 index 9c145fefa..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_in_zoho_books_example_call_tool.js +++ /dev/null @@ -1,38 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateSalesOrderInZohoBooks"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "sales_order_id": "SO78910", - "total_number_of_files": 2, - "attach_document": "http://example.com/document.pdf", - "ignore_auto_number_generation": false, - "allow_email_sending": true, - "request_body": "{\"line_items\":[{\"item_id\":\"item123\",\"quantity\":2,\"price\":50}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_in_zoho_books_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_in_zoho_books_example_call_tool.py deleted file mode 100644 index 3453193ad..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_in_zoho_books_example_call_tool.py +++ /dev/null @@ -1,36 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateSalesOrderInZohoBooks" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'sales_order_id': 'SO78910', - 'total_number_of_files': 2, - 'attach_document': 'http://example.com/document.pdf', - 'ignore_auto_number_generation': False, - 'allow_email_sending': True, - 'request_body': '{"line_items":[{"item_id":"item123","quantity":2,"price":50}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_sub_status_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_sub_status_example_call_tool.js deleted file mode 100644 index a8def1b9b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_sub_status_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateSalesOrderSubStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_identifier": "org_12345", - "sales_order_id": "so_67890", - "sales_order_status_code": "shipped" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_sub_status_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_sub_status_example_call_tool.py deleted file mode 100644 index ac75901bb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_sub_status_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateSalesOrderSubStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_identifier': 'org_12345', - 'sales_order_id': 'so_67890', - 'sales_order_status_code': 'shipped' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_template_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_template_example_call_tool.js deleted file mode 100644 index ee6a4eb9a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_template_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateSalesOrderTemplate"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "sales_order_id": "so_67890", - "sales_order_template_id": "template_abc" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_template_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_template_example_call_tool.py deleted file mode 100644 index 56d4441c2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_template_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateSalesOrderTemplate" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', - 'sales_order_id': 'so_67890', - 'sales_order_template_id': 'template_abc' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_with_custom_field_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_with_custom_field_example_call_tool.js deleted file mode 100644 index 47c03f0b3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_with_custom_field_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateSalesOrderWithCustomField"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "unique_custom_field_api_name": "custom_field_1", - "unique_custom_field_value": "value_123", - "allow_creation_if_not_found": true, - "request_body": "{\"order_id\":\"SO123\",\"amount\":100.0}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_with_custom_field_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_with_custom_field_example_call_tool.py deleted file mode 100644 index 6930a7b8b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_order_with_custom_field_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateSalesOrderWithCustomField" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'unique_custom_field_api_name': 'custom_field_1', - 'unique_custom_field_value': 'value_123', - 'allow_creation_if_not_found': True, - 'request_body': '{"order_id":"SO123","amount":100.0}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_receipt_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_receipt_example_call_tool.js deleted file mode 100644 index a500fabbd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_receipt_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateSalesReceipt"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "sales_receipt_identifier": "receipt_789", - "request_body": "{\"amount\":100.00,\"date\":\"2023-10-01\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_receipt_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_receipt_example_call_tool.py deleted file mode 100644 index fa5636087..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_sales_receipt_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateSalesReceipt" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'sales_receipt_identifier': 'receipt_789', - 'request_body': '{"amount":100.00,"date":"2023-10-01"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_shipping_address_sales_order_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_shipping_address_sales_order_example_call_tool.js deleted file mode 100644 index f9e181e3a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_shipping_address_sales_order_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateShippingAddressSalesOrder"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "sales_order_identifier": "so_67890", - "request_body": "{\"address\":\"123 Main St, Springfield, IL, 62701\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_shipping_address_sales_order_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_shipping_address_sales_order_example_call_tool.py deleted file mode 100644 index 2d509eaef..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_shipping_address_sales_order_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateShippingAddressSalesOrder" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'sales_order_identifier': 'so_67890', - 'request_body': '{"address":"123 Main St, Springfield, IL, 62701"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_authority_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_authority_details_example_call_tool.js deleted file mode 100644 index 2679f4a29..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_authority_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateTaxAuthorityDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "tax_authority_identifier": "tax_auth_67890", - "request_body": "{\"name\":\"Updated Tax Authority\",\"address\":\"123 Tax St, Tax City, TX\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_authority_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_authority_details_example_call_tool.py deleted file mode 100644 index 7cbc3e188..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_authority_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateTaxAuthorityDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'tax_authority_identifier': 'tax_auth_67890', - 'request_body': '{"name":"Updated Tax Authority","address":"123 Tax St, Tax City, TX"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_details_example_call_tool.js deleted file mode 100644 index 42ae90d51..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateTaxDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org123", - "tax_identifier": "tax456", - "request_body": "{\"rate\":0.15,\"type\":\"sales\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_details_example_call_tool.py deleted file mode 100644 index 08bd9faad..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateTaxDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org123', - 'tax_identifier': 'tax456', - 'request_body': '{"rate":0.15,"type":"sales"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_exemption_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_exemption_details_example_call_tool.js deleted file mode 100644 index b8c20232a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_exemption_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateTaxExemptionDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "tax_exemption_identifier": "tax_exempt_67890", - "request_body": "{\"exemptionType\":\"non_profit\",\"validUntil\":\"2025-12-31\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_exemption_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_exemption_details_example_call_tool.py deleted file mode 100644 index e144270e8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_exemption_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateTaxExemptionDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'tax_exemption_identifier': 'tax_exempt_67890', - 'request_body': '{"exemptionType":"non_profit","validUntil":"2025-12-31"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_group_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_group_details_example_call_tool.js deleted file mode 100644 index 1eda36b89..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_group_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateTaxGroupDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "tax_group_identifier": "tax_group_1", - "request_body": "{\"name\":\"Updated Tax Group\",\"rate\":15}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_group_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_group_details_example_call_tool.py deleted file mode 100644 index 3551e40a2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_tax_group_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateTaxGroupDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'tax_group_identifier': 'tax_group_1', - 'request_body': '{"name":"Updated Tax Group","rate":15}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_time_entry_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_time_entry_example_call_tool.js deleted file mode 100644 index 81d20a83a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_time_entry_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateTimeEntry"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "time_entry_identifier": "entry_67890", - "request_body": "{\"hours\": 5, \"description\": \"Updated work log\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_time_entry_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_time_entry_example_call_tool.py deleted file mode 100644 index 73f3fc611..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_time_entry_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateTimeEntry" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'time_entry_identifier': 'entry_67890', - 'request_body': '{"hours": 5, "description": "Updated work log"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_user_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_user_details_example_call_tool.js deleted file mode 100644 index 4874a33b2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_user_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateUserDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "user_identifier": "user_67890", - "request_body": "{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_user_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_user_details_example_call_tool.py deleted file mode 100644 index b8046e87e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_user_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateUserDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'user_identifier': 'user_67890', - 'request_body': '{"name":"John Doe","email":"john.doe@example.com"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_credit_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_credit_example_call_tool.js deleted file mode 100644 index 870f2a7ed..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_credit_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateVendorCredit"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_identifier": "org_12345", - "vendor_credit_id": "vc_67890", - "request_body": "{\"amount\":100,\"description\":\"Updated vendor credit\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_credit_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_credit_example_call_tool.py deleted file mode 100644 index 59ca88ec5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_credit_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateVendorCredit" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_identifier': 'org_12345', - 'vendor_credit_id': 'vc_67890', - 'request_body': '{"amount":100,"description":"Updated vendor credit"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_credit_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_credit_refund_example_call_tool.js deleted file mode 100644 index a991c8544..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_credit_refund_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateVendorCreditRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "vendor_credit_identifier": "vc_67890", - "vendor_credit_refund_identifier": "vcr_54321", - "request_body": "{\"amount\":100,\"reason\":\"Product returned\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_credit_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_credit_refund_example_call_tool.py deleted file mode 100644 index 9cb97fc75..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_credit_refund_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateVendorCreditRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'vendor_credit_identifier': 'vc_67890', - 'vendor_credit_refund_identifier': 'vcr_54321', - 'request_body': '{"amount":100,"reason":"Product returned"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_example_call_tool.js deleted file mode 100644 index 671dd45f2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateVendorPayment"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "payment_identifier": "pay_67890", - "request_body": "{\"amount\": 1500, \"status\": \"updated\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_example_call_tool.py deleted file mode 100644 index e8c65e907..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateVendorPayment" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'payment_identifier': 'pay_67890', - 'request_body': '{"amount": 1500, "status": "updated"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_refund_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_refund_example_call_tool.js deleted file mode 100644 index c95437ee2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_refund_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateVendorPaymentRefund"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "payment_identifier": "pay_67890", - "vendor_payment_refund_id": "refund_abcde", - "request_body": "{\"amount\":100,\"reason\":\"Duplicate payment\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_refund_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_refund_example_call_tool.py deleted file mode 100644 index 512b3b85d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_refund_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateVendorPaymentRefund" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'payment_identifier': 'pay_67890', - 'vendor_payment_refund_id': 'refund_abcde', - 'request_body': '{"amount":100,"reason":"Duplicate payment"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_with_custom_id_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_with_custom_id_example_call_tool.js deleted file mode 100644 index c5f4ad584..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_with_custom_id_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateVendorPaymentWithCustomId"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "custom_field_api_name": "vendor_id", - "custom_field_unique_value": "unique_value_67890", - "create_new_record_if_not_exists": true, - "request_body": "{\"amount\": 100, \"currency\": \"USD\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_with_custom_id_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_with_custom_id_example_call_tool.py deleted file mode 100644 index 0c82abd91..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_vendor_payment_with_custom_id_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateVendorPaymentWithCustomId" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'custom_field_api_name': 'vendor_id', - 'custom_field_unique_value': 'unique_value_67890', - 'create_new_record_if_not_exists': True, - 'request_body': '{"amount": 100, "currency": "USD"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_zoho_item_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/update_zoho_item_details_example_call_tool.js deleted file mode 100644 index 5e6868fb3..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_zoho_item_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.UpdateZohoItemDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "123456", - "item_identifier": "item_001", - "request_body": "{\"name\":\"Updated Item Name\",\"price\":20.99}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/update_zoho_item_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/update_zoho_item_details_example_call_tool.py deleted file mode 100644 index f13d68809..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/update_zoho_item_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.UpdateZohoItemDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': '123456', - 'item_identifier': 'item_001', - 'request_body': '{"name":"Updated Item Name","price":20.99}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/void_invoice_status_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/void_invoice_status_example_call_tool.js deleted file mode 100644 index a6589d205..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/void_invoice_status_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.VoidInvoiceStatus"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "invoice_unique_identifier": "INV-78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/void_invoice_status_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/void_invoice_status_example_call_tool.py deleted file mode 100644 index 3115b0b17..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/void_invoice_status_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.VoidInvoiceStatus" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'invoice_unique_identifier': 'INV-78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/void_retainer_invoice_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/void_retainer_invoice_example_call_tool.js deleted file mode 100644 index d46f3f04c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/void_retainer_invoice_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.VoidRetainerInvoice"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "org_12345", - "retainer_invoice_id": "inv_67890" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/void_retainer_invoice_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/void_retainer_invoice_example_call_tool.py deleted file mode 100644 index 99c6517a8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/void_retainer_invoice_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.VoidRetainerInvoice" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': 'org_12345', 'retainer_invoice_id': 'inv_67890' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/write_off_fixed_asset_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/write_off_fixed_asset_example_call_tool.js deleted file mode 100644 index f07b11d09..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/write_off_fixed_asset_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.WriteOffFixedAsset"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "organization_id": "org_12345", - "fixed_asset_identifier": "asset_67890", - "request_body": "{\"reason\":\"Obsolete asset\",\"date\":\"2023-10-01\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/write_off_fixed_asset_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/write_off_fixed_asset_example_call_tool.py deleted file mode 100644 index 8c0a8ca0f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/write_off_fixed_asset_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.WriteOffFixedAsset" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'organization_id': 'org_12345', - 'fixed_asset_identifier': 'asset_67890', - 'request_body': '{"reason":"Obsolete asset","date":"2023-10-01"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/write_off_invoice_balance_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_books_api/write_off_invoice_balance_example_call_tool.js deleted file mode 100644 index af41daae8..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/write_off_invoice_balance_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoBooksApi.WriteOffInvoiceBalance"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "organization_id": "123456", - "invoice_identifier": "INV-78910" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_books_api/write_off_invoice_balance_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_books_api/write_off_invoice_balance_example_call_tool.py deleted file mode 100644 index 67e692da4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_books_api/write_off_invoice_balance_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoBooksApi.WriteOffInvoiceBalance" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'organization_id': '123456', 'invoice_identifier': 'INV-78910' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/add_records_to_zoho_form_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/add_records_to_zoho_form_example_call_tool.js deleted file mode 100644 index 2e50555c6..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/add_records_to_zoho_form_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.AddRecordsToZohoForm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "form_private_link": "abc123", - "zoho_account_owner_name": "John Doe", - "application_link_name": "my_app", - "zoho_form_link_name": "my_form", - "request_body": "[{\"field1\":\"value1\",\"field2\":\"value2\"},{\"field1\":\"value3\",\"field2\":\"value4\"}]" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/add_records_to_zoho_form_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/add_records_to_zoho_form_example_call_tool.py deleted file mode 100644 index 277f23528..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/add_records_to_zoho_form_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.AddRecordsToZohoForm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'form_private_link': 'abc123', - 'zoho_account_owner_name': 'John Doe', - 'application_link_name': 'my_app', - 'zoho_form_link_name': 'my_form', - 'request_body': '[{"field1":"value1","field2":"value2"},{"field1":"value3","field2":"value4"}]' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/create_bulk_read_job_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/create_bulk_read_job_example_call_tool.js deleted file mode 100644 index dae375ebc..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/create_bulk_read_job_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.CreateBulkReadJob"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "account_owner_name": "John Doe", - "application_link_name": "SalesApp", - "report_reference_name": "MonthlySalesReport", - "request_body": "{\"filters\":{\"status\":\"active\"}}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/create_bulk_read_job_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/create_bulk_read_job_example_call_tool.py deleted file mode 100644 index aef1f55e7..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/create_bulk_read_job_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.CreateBulkReadJob" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'account_owner_name': 'John Doe', - 'application_link_name': 'SalesApp', - 'report_reference_name': 'MonthlySalesReport', - 'request_body': '{"filters":{"status":"active"}}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/delete_report_records_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/delete_report_records_example_call_tool.js deleted file mode 100644 index 0d277acee..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/delete_report_records_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.DeleteReportRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "account_owner_name": "John Doe", - "application_link_name": "my_app", - "report_identifier": "sales_report", - "process_records_up_to_limit": true, - "request_body": "{\"ids\":[\"record1\",\"record2\"]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/delete_report_records_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/delete_report_records_example_call_tool.py deleted file mode 100644 index a385859e0..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/delete_report_records_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.DeleteReportRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'account_owner_name': 'John Doe', - 'application_link_name': 'my_app', - 'report_identifier': 'sales_report', - 'process_records_up_to_limit': True, - 'request_body': '{"ids":["record1","record2"]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/delete_zoho_record_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/delete_zoho_record_example_call_tool.js deleted file mode 100644 index ad425549f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/delete_zoho_record_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.DeleteZohoRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "zoho_account_owner_name": "John Doe", - "application_link_name": "my_app", - "report_link_name": "my_report", - "record_id": "12345", - "request_body": "{\"delete\": true}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/delete_zoho_record_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/delete_zoho_record_example_call_tool.py deleted file mode 100644 index e826f5edd..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/delete_zoho_record_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.DeleteZohoRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'zoho_account_owner_name': 'John Doe', - 'application_link_name': 'my_app', - 'report_link_name': 'my_report', - 'record_id': '12345', - 'request_body': '{"delete": true}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_record_detail_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_record_detail_example_call_tool.js deleted file mode 100644 index b4002254e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_record_detail_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.FetchRecordDetail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "application_private_link": "private_link_123", - "account_owner_name": "John Doe", - "application_link_name": "my_zoho_app", - "report_link_name": "sales_report", - "record_id": "record_456" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_record_detail_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_record_detail_example_call_tool.py deleted file mode 100644 index 679addf78..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_record_detail_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.FetchRecordDetail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'application_private_link': 'private_link_123', - 'account_owner_name': 'John Doe', - 'application_link_name': 'my_zoho_app', - 'report_link_name': 'sales_report', - 'record_id': 'record_456' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_workspace_app_meta_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_workspace_app_meta_example_call_tool.js deleted file mode 100644 index b82672e38..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_workspace_app_meta_example_call_tool.js +++ /dev/null @@ -1,31 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.FetchWorkspaceAppMeta"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "workspace_account_owner_name": "john_doe" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_workspace_app_meta_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_workspace_app_meta_example_call_tool.py deleted file mode 100644 index 6d36523c9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_workspace_app_meta_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.FetchWorkspaceAppMeta" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'workspace_account_owner_name': 'john_doe' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_app_sections_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_app_sections_example_call_tool.js deleted file mode 100644 index 8087fd18d..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_app_sections_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.FetchZohoAppSections"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "zoho_account_owner_name": "john_doe", - "zoho_application_link_name": "my_app" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_app_sections_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_app_sections_example_call_tool.py deleted file mode 100644 index 822a8aeca..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_app_sections_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.FetchZohoAppSections" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'zoho_account_owner_name': 'john_doe', 'zoho_application_link_name': 'my_app' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_creator_pages_meta_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_creator_pages_meta_example_call_tool.js deleted file mode 100644 index 50ed5a0ba..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_creator_pages_meta_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.FetchZohoCreatorPagesMeta"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_owner_name": "John Doe", - "zoho_app_link_name": "my_app_123" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_creator_pages_meta_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_creator_pages_meta_example_call_tool.py deleted file mode 100644 index f2c6eb4a5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_creator_pages_meta_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.FetchZohoCreatorPagesMeta" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_owner_name': 'John Doe', 'zoho_app_link_name': 'my_app_123' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_form_fields_metadata_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_form_fields_metadata_example_call_tool.js deleted file mode 100644 index f28cbe85f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_form_fields_metadata_example_call_tool.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.FetchZohoFormFieldsMetadata"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_owner_name": "john_doe", - "application_link_name": "my_app", - "form_identifier": "contact_form" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_form_fields_metadata_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_form_fields_metadata_example_call_tool.py deleted file mode 100644 index fbb9c5f5b..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_form_fields_metadata_example_call_tool.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.FetchZohoFormFieldsMetadata" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_owner_name': 'john_doe', - 'application_link_name': 'my_app', - 'form_identifier': 'contact_form' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_form_meta_information_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_form_meta_information_example_call_tool.js deleted file mode 100644 index d8c464bf9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_form_meta_information_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.FetchZohoFormMetaInformation"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "zoho_account_owner_name": "john.doe", - "zoho_app_link_name": "my_app" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_form_meta_information_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_form_meta_information_example_call_tool.py deleted file mode 100644 index 82224edc4..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_form_meta_information_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.FetchZohoFormMetaInformation" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'zoho_account_owner_name': 'john.doe', 'zoho_app_link_name': 'my_app' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_record_detail_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_record_detail_example_call_tool.js deleted file mode 100644 index d4ce426b2..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_record_detail_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.FetchZohoRecordDetail"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_owner_name": "John Doe", - "application_identifier": "SalesApp", - "report_link_name": "SalesReport", - "record_id": "12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_record_detail_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_record_detail_example_call_tool.py deleted file mode 100644 index 14c658e6c..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_record_detail_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.FetchZohoRecordDetail" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_owner_name': 'John Doe', - 'application_identifier': 'SalesApp', - 'report_link_name': 'SalesReport', - 'record_id': '12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_records_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_records_example_call_tool.js deleted file mode 100644 index 6f382eec5..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_records_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.FetchZohoRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_owner_identifier": "owner123", - "application_link_name": "app456", - "report_link_name": "report789", - "start_record_index": 0, - "record_limit": 100, - "filter_criteria": "status='active'" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_records_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_records_example_call_tool.py deleted file mode 100644 index 3de949dde..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_records_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.FetchZohoRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_owner_identifier': 'owner123', - 'application_link_name': 'app456', - 'report_link_name': 'report789', - 'start_record_index': 0, - 'record_limit': 100, - 'filter_criteria': "status='active'" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_report_records_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_report_records_example_call_tool.js deleted file mode 100644 index eabd9c02f..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_report_records_example_call_tool.js +++ /dev/null @@ -1,37 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.FetchZohoReportRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "zoho_private_link": "https://creator.zoho.com/private/report/12345", - "account_owner_name": "john_doe", - "zoho_application_link_name": "my_app", - "report_link_name": "sales_report", - "record_fetch_start_index": 0, - "record_limit": 100, - "filter_criteria": "status = 'active'" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_report_records_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_report_records_example_call_tool.py deleted file mode 100644 index d166ce1ce..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_report_records_example_call_tool.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.FetchZohoReportRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'zoho_private_link': 'https://creator.zoho.com/private/report/12345', - 'account_owner_name': 'john_doe', - 'zoho_application_link_name': 'my_app', - 'report_link_name': 'sales_report', - 'record_fetch_start_index': 0, - 'record_limit': 100, - 'filter_criteria': "status = 'active'" -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_reports_meta_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_reports_meta_example_call_tool.js deleted file mode 100644 index da08d9ee9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_reports_meta_example_call_tool.js +++ /dev/null @@ -1,32 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.FetchZohoReportsMeta"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "zoho_account_owner_name": "john_doe", - "zoho_app_link_name": "my_app" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_reports_meta_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_reports_meta_example_call_tool.py deleted file mode 100644 index eb43b1668..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/fetch_zoho_reports_meta_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.FetchZohoReportsMeta" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'zoho_account_owner_name': 'john_doe', 'zoho_app_link_name': 'my_app' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/get_application_meta_info_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/get_application_meta_info_example_call_tool.js deleted file mode 100644 index 7d117e953..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/get_application_meta_info_example_call_tool.js +++ /dev/null @@ -1,29 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.GetApplicationMetaInfo"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = {}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/get_application_meta_info_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/get_application_meta_info_example_call_tool.py deleted file mode 100644 index 860caf342..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/get_application_meta_info_example_call_tool.py +++ /dev/null @@ -1,29 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.GetApplicationMetaInfo" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/get_bulk_read_job_details_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/get_bulk_read_job_details_example_call_tool.js deleted file mode 100644 index fe3230873..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/get_bulk_read_job_details_example_call_tool.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.GetBulkReadJobDetails"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "account_owner_name": "John Doe", - "application_link_name": "SalesApp", - "report_link_name": "MonthlySales", - "job_id": "job_12345" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/get_bulk_read_job_details_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/get_bulk_read_job_details_example_call_tool.py deleted file mode 100644 index 9149df0d9..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/get_bulk_read_job_details_example_call_tool.py +++ /dev/null @@ -1,32 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.GetBulkReadJobDetails" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'account_owner_name': 'John Doe', - 'application_link_name': 'SalesApp', - 'report_link_name': 'MonthlySales', - 'job_id': 'job_12345' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/insert_records_in_zoho_form_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/insert_records_in_zoho_form_example_call_tool.js deleted file mode 100644 index afaedf83a..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/insert_records_in_zoho_form_example_call_tool.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.InsertRecordsInZohoForm"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "zoho_account_owner_name": "John Doe", - "application_link_name": "my_app", - "form_link_name": "my_form", - "request_body": "[{\"field1\":\"value1\",\"field2\":\"value2\"}]" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/insert_records_in_zoho_form_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/insert_records_in_zoho_form_example_call_tool.py deleted file mode 100644 index 9c83cf669..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/insert_records_in_zoho_form_example_call_tool.py +++ /dev/null @@ -1,33 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.InsertRecordsInZohoForm" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'zoho_account_owner_name': 'John Doe', - 'application_link_name': 'my_app', - 'form_link_name': 'my_form', - 'request_body': '[{"field1":"value1","field2":"value2"}]' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/update_zoho_creator_report_records_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/update_zoho_creator_report_records_example_call_tool.js deleted file mode 100644 index 269522c35..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/update_zoho_creator_report_records_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.UpdateZohoCreatorReportRecords"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "account_owner_name": "john_doe", - "application_link_name": "my_app", - "report_link_name": "sales_report", - "process_until_limit_enabled": true, - "request_body": "{\"records\":[{\"id\":\"1\",\"field\":\"value1\"},{\"id\":\"2\",\"field\":\"value2\"}]}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/update_zoho_creator_report_records_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/update_zoho_creator_report_records_example_call_tool.py deleted file mode 100644 index c95ecb843..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/update_zoho_creator_report_records_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.UpdateZohoCreatorReportRecords" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'account_owner_name': 'john_doe', - 'application_link_name': 'my_app', - 'report_link_name': 'sales_report', - 'process_until_limit_enabled': True, - 'request_body': '{"records":[{"id":"1","field":"value1"},{"id":"2","field":"value2"}]}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/update_zoho_record_example_call_tool.js b/public/examples/integrations/mcp-servers/zoho_creator_api/update_zoho_record_example_call_tool.js deleted file mode 100644 index 74c0190cb..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/update_zoho_record_example_call_tool.js +++ /dev/null @@ -1,36 +0,0 @@ -import { Arcade } from "@arcadeai/arcadejs"; - -const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable - -const USER_ID = "{arcade_user_id}"; -const TOOL_NAME = "ZohoCreatorApi.UpdateZohoRecord"; - -// Start the authorization process -const authResponse = await client.tools.authorize({ - tool_name: TOOL_NAME, - user_id: USER_ID, -}); - -if (authResponse.status !== "completed") { - console.log(`Click this link to authorize: ${authResponse.url}`); -} - -// Wait for the authorization to complete -await client.auth.waitForCompletion(authResponse); - -const toolInput = { - "mode": "execute", - "zoho_account_owner_name": "John Doe", - "application_link_name": "my_app", - "report_link_name": "my_report", - "record_id": "12345", - "request_body": "{\"field1\":\"value1\",\"field2\":\"value2\"}" -}; - -const response = await client.tools.execute({ - tool_name: TOOL_NAME, - input: toolInput, - user_id: USER_ID, -}); - -console.log(JSON.stringify(response.output.value, null, 2)); diff --git a/public/examples/integrations/mcp-servers/zoho_creator_api/update_zoho_record_example_call_tool.py b/public/examples/integrations/mcp-servers/zoho_creator_api/update_zoho_record_example_call_tool.py deleted file mode 100644 index 4a705442e..000000000 --- a/public/examples/integrations/mcp-servers/zoho_creator_api/update_zoho_record_example_call_tool.py +++ /dev/null @@ -1,34 +0,0 @@ -import json -from arcadepy import Arcade - -client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable - -USER_ID = "{arcade_user_id}" -TOOL_NAME = "ZohoCreatorApi.UpdateZohoRecord" - -auth_response = client.tools.authorize( - tool_name=TOOL_NAME, - user_id=USER_ID, -) - -if auth_response.status != "completed": - print(f"Click this link to authorize: {auth_response.url}") - -# Wait for the authorization to complete -client.auth.wait_for_completion(auth_response) - -tool_input = { - 'mode': 'execute', - 'zoho_account_owner_name': 'John Doe', - 'application_link_name': 'my_app', - 'report_link_name': 'my_report', - 'record_id': '12345', - 'request_body': '{"field1":"value1","field2":"value2"}' -} - -response = client.tools.execute( - tool_name=TOOL_NAME, - input=tool_input, - user_id=USER_ID, -) -print(json.dumps(response.output.value, indent=2)) diff --git a/public/llms.txt b/public/llms.txt index bdf1df91a..4779e8434 100644 --- a/public/llms.txt +++ b/public/llms.txt @@ -1,4 +1,4 @@ - + # Arcade @@ -66,41 +66,23 @@ Arcade delivers three core capabilities: Deploy agents even your security team w - [Add user authorization to your MCP tools](https://docs.arcade.dev/en/guides/create-tools/tool-basics/create-tool-auth.md): This documentation page guides users on how to implement user authorization in their custom MCP tools using Arcade, OAuth, and various authentication providers, such as Reddit. It covers the necessary prerequisites, the functioning of auth providers, and step-by-step instructions for creating an - [Adding Resource Server Auth to Your MCP Server](https://docs.arcade.dev/en/guides/security/secure-your-mcp-server.md): This documentation page provides guidance on securing your HTTP MCP server using OAuth 2.1 Resource Server authentication, ensuring that only authorized users can access your tools. It outlines the necessary prerequisites, explains the importance of Resource Server auth, and details how to configure - [Agentic Development](https://docs.arcade.dev/en/get-started/setup/connect-arcade-docs.md): This documentation page provides guidance on utilizing Agentic Development to enhance coding efficiency in AI-integrated IDEs by leveraging Arcade.dev's resources. It explains how to configure the LLMs.txt file for easy access to documentation and introduces Context7, a server -- [AirtableApi](https://docs.arcade.dev/en/resources/integrations/productivity/airtable-api.md): The AirtableApi documentation provides users with a comprehensive guide to tools that enable interaction with the Airtable API, focusing on managing SCIM groups, users, webhooks, and bases. Users can learn to perform various actions such as creating, updating, - [Arcade Cloud Infrastructure](https://docs.arcade.dev/en/guides/deployment-hosting/arcade-cloud.md): This documentation page provides an overview of the infrastructure supporting Arcade Cloud, detailing essential information such as egress IP addresses and the availability of VPC Peering for enterprise customers. Users can learn how to manage traffic and explore options for enhanced connectivity. -- [Arcade for Slack](https://docs.arcade.dev/en/resources/integrations/social-communication/slack/install.md): The documentation page for Arcade for Slack provides users with guidance on integrating Arcade's AI tools into their Slack workspace to enhance team efficiency. It outlines the installation process, functionalities such as sending messages, finding information, and generating content, while also advising on the -- [Arcade for Zoom](https://docs.arcade.dev/en/resources/integrations/social-communication/zoom/install.md): The "Arcade for Zoom" documentation page provides users with guidance on integrating Arcade's AI tools with their Zoom accounts to enhance meeting management and information retrieval. It outlines the functionalities available, such as listing upcoming meetings and retrieving invitation details, while also addressing - [Arcade Gateway Assistant](https://docs.arcade.dev/en/guides/mcp-gateways/create-via-ai.md): The Arcade Gateway Assistant documentation guides users in creating and managing MCP Gateways through a chat interface using natural language. It outlines the prerequisites for setup, including creating an Arcade account and connecting compatible chat clients, and provides step-by-step instructions for authentication and gateway - [Arcade Glossary](https://docs.arcade.dev/en/resources/glossary.md): The Arcade Glossary documentation provides definitions and explanations of key terms and concepts related to the Arcade platform, including agents, tools, and MCP servers. It aims to help users understand the components necessary for building, testing, and deploying applications that utilize large language - [Arcade with Agent Frameworks and MCP Clients](https://docs.arcade.dev/en/get-started/agent-frameworks.md): This documentation page provides developers with guidance on integrating Arcade with various agent frameworks and MCP clients to enhance their AI applications. It includes authentication procedures, tool loading, and execution instructions, along with code examples and configuration steps for quick implementation. Users can explore specific - [Arcade with Google ADK](https://docs.arcade.dev/en/get-started/agent-frameworks/google-adk/overview.md): This documentation page provides a comprehensive guide for integrating the `google-adk-arcade` package with the Google ADK library, enabling users to enhance their AI agents with various Arcade tools such as Google Mail and GitHub. It covers installation, key - [Arcade with OpenAI Agents](https://docs.arcade.dev/en/get-started/agent-frameworks/openai-agents/overview.md): This documentation page provides a comprehensive guide for integrating Arcade with the OpenAI Agents library, enabling users to enhance their AI agents with various tools like Gmail, LinkedIn, and GitHub. It covers installation, key features, basic usage examples, and handling -- [ArcadeEngineApi](https://docs.arcade.dev/en/resources/integrations/development/arcade-engine-api.md): The ArcadeEngineApi documentation provides users with a comprehensive guide to the tools available for interacting with the Arcade Engine API, focusing on managing authentication providers, secrets, and worker configurations. It outlines various actions users and LLMs can perform, such as retrieving -- [Asana](https://docs.arcade.dev/en/resources/integrations/productivity/asana.md): This documentation page provides users with a comprehensive guide to the Arcade Asana MCP Server, enabling them to build agents and AI applications that interact with Asana tasks, projects, and workspaces. Users can learn how to manage teams, create and update tasks -- [Asana Reference](https://docs.arcade.dev/en/resources/integrations/productivity/asana/reference.md): The Asana Reference documentation provides a comprehensive list of enumerations related to tag colors, task sorting options, and sort orders used in the Asana MCP Server. Users can utilize this reference to understand and implement the various color codes and sorting parameters effectively in -- [AsanaApi](https://docs.arcade.dev/en/resources/integrations/productivity/asana-api.md): The AsanaApi documentation provides users with tools and resources to effectively interact with the Asana API, enabling various actions such as managing access requests, allocations, custom fields, and goal relationships. It outlines a comprehensive set of functionalities that facilitate project management tasks -- [AshbyApi](https://docs.arcade.dev/en/resources/integrations/productivity/ashby-api.md): The AshbyApi documentation provides a comprehensive guide for users to effectively manage recruitment processes within the Ashby platform using various API tools. It enables users to create and update job applications, retrieve candidate information, manage interview schedules, and streamline hiring workflows through a - [Authorized Tool Calling](https://docs.arcade.dev/en/guides/tool-calling/custom-apps/auth-tool-calling.md): The "Authorized Tool Calling" documentation provides a comprehensive guide for developers on how to securely authorize AI agents to access external services using OAuth 2.0, API keys, and user tokens. It outlines the steps for initializing the Arcade client, obtaining user -- [BoxApi](https://docs.arcade.dev/en/resources/integrations/productivity/box-api.md): The BoxApi documentation provides users with tools to manage and automate various aspects of Box content, including file management, metadata handling, collaboration, document generation, and enterprise operations. It outlines capabilities for interacting with Box's API, enabling users to build applications or -- [Brightdata](https://docs.arcade.dev/en/resources/integrations/development/brightdata.md): The Brightdata documentation page provides users with tools and guidance for scraping, searching, and extracting structured data from various websites at scale without being blocked. It outlines specific functionalities such as scraping web pages in Markdown format, performing advanced searches across major search engines, - [Build a Tool](https://docs.arcade.dev/en/guides/create-tools/tool-basics.md): This documentation page provides a comprehensive guide on building custom tools using Arcade's MCP Server framework, enabling users to enhance AI agents with new functionalities. It serves as a starting point for those looking to create their first tool or expand existing capabilities. Users will learn - [Build an AI Chatbot with Arcade and Vercel AI SDK](https://docs.arcade.dev/en/get-started/agent-frameworks/vercelai.md): This documentation page provides a step-by-step guide for building a browser-based AI chatbot using the Vercel AI SDK and Arcade tools to integrate with Gmail and Slack. Users will learn how to set up a Next.js project, handle authentication, and implement - [Build MCP Server QuickStart](https://docs.arcade.dev/en/get-started/quickstarts/mcp-server-quickstart.md): The "Build MCP Server QuickStart" documentation provides a step-by-step guide for users to create and run a custom MCP Server using the Arcade MCP framework. It covers prerequisites, installation instructions, server setup, and how to connect and authorize tools, enabling -- [CalendlyApi](https://docs.arcade.dev/en/resources/integrations/productivity/calendly-api.md): The CalendlyApi documentation provides tools and resources for developers to integrate and manage scheduling and event-related tasks within the Calendly platform using OAuth2 authentication. Users can learn how to create, retrieve, and update event types, manage invitees, and handle - [Call a tool in your IDE/MCP Client](https://docs.arcade.dev/en/get-started/quickstarts/call-tool-client.md): This documentation page guides users on how to create and utilize an MCP Gateway in their IDE or MCP Client to streamline the process of calling tools from multiple MCP servers. It covers the steps to set up the gateway, select relevant tools, and connect it to - [Call tools from MCP clients](https://docs.arcade.dev/en/guides/create-tools/tool-basics/call-tools-mcp.md): This documentation page guides users on how to configure MCP clients to call tools from an MCP server, detailing necessary prerequisites and configuration steps. Users will learn to utilize the `arcade configure` command for setting up their clients, including options for different transport types - [Calling tools in your agent with Arcade](https://docs.arcade.dev/en/get-started/quickstarts/call-tool-agent.md): This documentation page provides a comprehensive guide on how to use Arcade to enable AI agents to call various hosted tools, such as sending emails or updating documents. Users will learn to install the Arcade client, set up workflows, and implement authorization for tool calls. - [Capture mode](https://docs.arcade.dev/en/guides/create-tools/evaluate-tools/capture-mode.md): This documentation page explains how to use Capture mode to record tool calls without scoring, enabling users to bootstrap test expectations, debug model behavior, and explore new tools. It provides a step-by-step guide on setting up evaluations in Capture mode, reviewing captured outputs - [Checking Tool Authorization Status](https://docs.arcade.dev/en/guides/tool-calling/custom-apps/check-auth-status.md): This documentation page provides a comprehensive guide on how to check the authorization status of tools, enabling users to determine the necessary permissions and availability before execution. It includes instructions for initializing the client, checking the status for all tools or specific tools, and understanding various -- [Clickhouse](https://docs.arcade.dev/en/resources/integrations/databases/clickhouse.md): This documentation page provides users with a comprehensive guide to the Arcade Clickhouse MCP Server, which enables read-only interactions with Clickhouse databases. It outlines key features such as schema discovery, table exploration, and safe query execution, along with detailed instructions on using -- [Clickhouse](https://docs.arcade.dev/en/resources/integrations/databases/postgres/clickhouse.md): This documentation page provides a comprehensive guide for using the Arcade Clickhouse MCP Server, which enables agents to interact with Clickhouse databases in a read-only capacity. Users can learn how to discover database schemas, explore table structures, and execute safe SELECT queries, -- [Clickup](https://docs.arcade.dev/en/resources/integrations/productivity/clickup.md): This documentation page provides users with tools and guidance for integrating and interacting with ClickUp workspaces, enabling the creation, modification, and management of tasks, comments, and project structures. It outlines various functionalities available through the ClickUp MCP Server, including task -- [Clickup Reference](https://docs.arcade.dev/en/resources/integrations/productivity/clickup/reference.md): The Clickup Reference documentation provides users with a comprehensive list of enumerations for various tools within the Clickup MCP Server, including task priorities, filter scopes, task ordering, and comment resolutions. It helps users understand the predefined values they can utilize when creating -- [ClickupApi](https://docs.arcade.dev/en/resources/integrations/productivity/clickup-api.md): The ClickupApi documentation provides a suite of tools that enable users to interact with the ClickUp API for efficient task and project management. Users can learn how to authenticate via OAuth2 and utilize various functionalities, such as managing checklists, comments, custom -- [Close.io](https://docs.arcade.dev/en/resources/integrations/productivity/closeio.md): This documentation page for Close.io provides an overview of the CRM's capabilities, specifically focusing on managing leads, contacts, and deals. However, the content is currently marked as "Coming Soon," indicating that detailed information and guidance will be available in the future - [Comparative evaluations](https://docs.arcade.dev/en/guides/create-tools/evaluate-tools/comparative-evaluations.md): The "Comparative Evaluations" documentation page guides users in testing and comparing the performance of AI models across different tool implementations using isolated tool registries, known as tracks. It outlines how to set up comparative evaluations, register tools, create test cases, - [Compare MCP Server Types](https://docs.arcade.dev/en/guides/create-tools/tool-basics/compare-server-types.md): This documentation page provides a comparative overview of different MCP server types offered by Arcade, detailing their functionalities based on transport method and deployment options. Users can learn about the capabilities of each server type, including the availability of tools with or without authentication and secrets. -- [Confluence](https://docs.arcade.dev/en/resources/integrations/productivity/confluence.md): This documentation page provides a comprehensive overview of the Arcade Confluence MCP Server, which enables users to build agents and AI applications that interact with Confluence. It details various tools available for managing pages, spaces, and attachments, as well as searching for content - [Connect Arcade to your LLM](https://docs.arcade.dev/en/get-started/agent-frameworks/setup-arcade-with-your-llm-python.md): This documentation page provides a step-by-step guide for integrating Arcade with a Large Language Model (LLM) using Python. It outlines the necessary prerequisites, including API keys and package installations, and teaches users how to create a harness that facilitates communication between the - [Connect to MCP Clients](https://docs.arcade.dev/en/get-started/mcp-clients.md): This documentation page provides guidance on connecting MCP servers to various MCP-compatible clients and development environments, enabling users to enhance their agent workflows. - [Contact Us](https://docs.arcade.dev/en/resources/contact-us.md): This documentation page provides users with information on how to connect with the Arcade team for support through various channels. It aims to facilitate communication and assistance for users and their agents. @@ -108,109 +90,43 @@ Arcade delivers three core capabilities: Deploy agents even your security team w - [Create an MCP tool with secrets](https://docs.arcade.dev/en/guides/create-tools/tool-basics/create-tool-secrets.md): This documentation page guides users on how to create custom MCP tools that securely handle sensitive information, or "secrets," using the Arcade platform. It covers the process of reading secrets from various sources, such as environment variables and the Arcade Dashboard, and provides - [Create via Dashboard](https://docs.arcade.dev/en/guides/mcp-gateways/create-via-dashboard.md): This documentation page guides users through the process of creating and configuring MCP Gateways using the Arcade dashboard, providing detailed instructions on selecting tools, setting authentication modes, and customizing gateway settings. It also outlines prerequisites for creating a gateway and offers post-creation steps - [Creating an MCP Server with Arcade](https://docs.arcade.dev/en/guides/create-tools/tool-basics/build-mcp-server.md): This documentation page provides a comprehensive guide for users to create, test, deploy, and publish a custom MCP Server using the Arcade framework. It details the installation of necessary tools, the scaffolding of a server project, and the setup of environment configurations, -- [CursorAgentsApi](https://docs.arcade.dev/en/resources/integrations/development/cursor-agents-api.md): The CursorAgentsApi documentation provides users with tools to manage and interact with background agents via the cursor_agents API, including functionalities for listing, inspecting, and deleting agents, retrieving their statuses and conversation histories, and accessing authentication and model recommendations. It serves as -- [CustomerioApi](https://docs.arcade.dev/en/resources/integrations/customer-support/customerio-api.md): The CustomerioApi documentation provides users with a comprehensive set of tools to interact with the Customer.io platform, enabling management of customer communications and marketing campaigns. It outlines various functionalities, such as triggering broadcasts, sending transactional messages, and retrieving campaign metrics, all -- [CustomerioPipelinesApi](https://docs.arcade.dev/en/resources/integrations/customer-support/customerio-pipelines-api.md): The CustomerioPipelinesApi documentation provides tools for integrating with the Customer.io Track API, enabling users to manage user data and track interactions effectively. It outlines various functionalities, such as identifying users, tracking events, and managing user groups, along with code -- [CustomerioTrackApi](https://docs.arcade.dev/en/resources/integrations/customer-support/customerio-track-api.md): The CustomerioTrackApi documentation provides a comprehensive overview of tools that enable users to manage customer data and interactions within the Customer.io platform. It includes detailed descriptions of various functionalities, such as adding or updating customer profiles, deleting customers, and tracking events, -- [DatadogApi](https://docs.arcade.dev/en/resources/integrations/development/datadog-api.md): The DatadogApi documentation provides users with tools and instructions for interacting with the Datadog API, enabling them to manage various aspects of Datadog services such as datastores and application keys. It includes guidance on authentication requirements and a comprehensive - [Deploying to the cloud with Arcade Deploy](https://docs.arcade.dev/en/guides/deployment-hosting/arcade-deploy.md): This documentation page provides a comprehensive guide on deploying an MCP server to the cloud using Arcade Deploy, enabling users to access their server from any MCP client and support multiple users without the complexities of local server management. It outlines the prerequisites, deployment steps, and - [Directly call third-party APIs](https://docs.arcade.dev/en/guides/tool-calling/call-third-party-apis.md): This documentation page provides a comprehensive guide on how to obtain user authorization tokens to directly call third-party APIs, specifically using the Gmail API as an example. Users will learn to manage authentication flows, handle authorization requests, and utilize tokens with external services, all -- [Discord](https://docs.arcade.dev/en/resources/integrations/social-communication/discord.md): This documentation page provides guidance on configuring and using the Discord authentication provider with Arcade, enabling users to call the Discord API on behalf of their users. It outlines the steps for creating a Discord application, integrating it with the Arcade Dashboard, and utilizing the Discord -- [Dropbox](https://docs.arcade.dev/en/resources/integrations/productivity/dropbox.md): This documentation page provides users with tools and guidance for integrating Dropbox functionalities into agents and AI applications. It outlines how to browse, search, and download files and folders from Dropbox using pre-built tools, along with code examples in Python and JavaScript. Additionally -- [E2B](https://docs.arcade.dev/en/resources/integrations/development/e2b.md): The E2B documentation page provides users with tools and guidance for running code in a sandboxed environment, specifically designed for building agents and AI applications. It details two main functionalities: executing code safely and generating static matplotlib charts, along with examples and authentication - [Engine Configuration](https://docs.arcade.dev/en/guides/deployment-hosting/configure-engine.md): This documentation page provides advanced configuration options for enterprise customers self-hosting the Arcade Engine, detailing how to set up and customize engine settings using configuration files. Users will learn how to install the engine on various platforms, manage the `engine.yaml` and ` -- [Environment Variables](https://docs.arcade.dev/en/resources/integrations/social-communication/slack/environment-variables.md): This documentation page provides guidance on configuring environment variables related to Slack API interactions, specifically `SLACK_MAX_CONCURRENT_REQUESTS`, `MAX_PAGINATION_SIZE_LIMIT`, and `MAX_PAGINATION_TIMEOUT_SECONDS`. Users will learn how to adjust these settings - [Evaluate Tools](https://docs.arcade.dev/en/guides/create-tools/evaluate-tools.md): The "Evaluate Tools" documentation page provides guidance on systematically testing and enhancing tools using Arcade's evaluation framework. It helps users validate the performance of their tools after initial development and offers techniques for iterative improvements to ensure reliability in production. -- [ExaApi](https://docs.arcade.dev/en/resources/integrations/search/exa-api.md): The ExaApi documentation provides users with a comprehensive guide to utilizing the Exa.ai Search API, enabling them to conduct searches, manage websets, and handle research requests effectively. It outlines various tools available within the API, detailing their functionalities such as -- [Figma](https://docs.arcade.dev/en/resources/integrations/development/figma.md): This documentation page provides users with a comprehensive guide to the Figma MCP Server, enabling interaction with Figma's design files, components, and collaboration features through the Figma REST API. Users can learn to access file structures, manage components, add comments -- [FigmaApi](https://docs.arcade.dev/en/resources/integrations/productivity/figma-api.md): The FigmaApi documentation provides a comprehensive guide for developers to utilize tools that enable interaction with the Figma API, facilitating efficient management of design assets and collaboration on projects. Users can learn how to perform various actions such as retrieving Figma files, managing -- [Firecrawl](https://docs.arcade.dev/en/resources/integrations/development/firecrawl.md): The Firecrawl documentation provides users with a comprehensive guide to utilizing the Arcade Firecrawl MCP Server, enabling them to build agents and AI applications for scraping, crawling, and mapping websites. It outlines available tools, including functionalities for scraping URLs, crawling websites, - [Frequently Asked Questions](https://docs.arcade.dev/en/resources/faq.md): This documentation page provides answers to frequently asked questions about the Arcade platform, helping users understand how to create and contribute tools, differentiate between various API keys and tools, and manage OAuth authentication. It guides users on building custom tools, collaborating effectively with project API -- [FreshserviceApi](https://docs.arcade.dev/en/resources/integrations/customer-support/freshservice-api.md): The FreshserviceApi documentation provides a comprehensive set of tools for programmatically interacting with the Freshservice platform, enabling users to manage various aspects such as organizational data, assets, software, service catalogs, users, and tickets. It outlines specific API endpoints that - [Get Formatted Tool Definitions](https://docs.arcade.dev/en/guides/tool-calling/custom-apps/get-tool-definitions.md): This documentation page provides guidance on retrieving formatted tool definitions using the Arcade Client, enabling users to obtain single or multiple tool definitions in specific model provider formats, such as OpenAI. It also explains how to convert these definitions into Zod schemas for enhanced type - [Getting Your API Key](https://docs.arcade.dev/en/get-started/setup/api-keys.md): This documentation page guides users on how to obtain and manage their Arcade API key, detailing the steps for generating keys via both the Arcade dashboard and CLI. It emphasizes the importance of securely storing API keys, as they serve as administrator credentials for accessing Arcade services -- [GitHub](https://docs.arcade.dev/en/resources/integrations/development/github.md): This documentation page provides a comprehensive guide for using the Arcade GitHub MCP Server, enabling users to build agents and AI applications that interact with GitHub repositories, issues, and pull requests. It outlines the necessary configurations, permissions, and features available for both -- [GithubApi](https://docs.arcade.dev/en/resources/integrations/development/github-api.md): The GitHubApi documentation provides tools for users to interact with the GitHub API, facilitating the management of repositories, issues, pull requests, and various administrative tasks within GitHub Enterprise. It outlines a range of functionalities, including creating and managing webhooks - [Gmail](https://docs.arcade.dev/en/resources/integrations/productivity/gmail.md): This documentation page provides a comprehensive overview of the Arcade Gmail MCP Server, which enables users to build agents and AI applications that can send, read, and manage emails in Gmail. It details the available tools, their functionalities, and the necessary OAuth scopes required -- [Gmail Reference](https://docs.arcade.dev/en/resources/integrations/productivity/gmail/reference.md): The Gmail Reference documentation provides users with a list of enumerations related to the Gmail MCP Server, specifically detailing options for reply recipients and date ranges. This reference helps users understand and utilize specific parameters effectively in their Gmail-related tools. -- [Google Calendar](https://docs.arcade.dev/en/resources/integrations/productivity/google-calendar.md): This documentation page provides a comprehensive guide for developers to utilize the Arcade Google Calendar MCP Server, enabling them to create applications that interact with users' Google Calendar accounts. It outlines available tools for managing calendars and events, such as listing calendars, creating and updating -- [Google Contacts](https://docs.arcade.dev/en/resources/integrations/productivity/google-contacts.md): This documentation page provides a comprehensive guide for using the Arcade Google Contacts MCP Server, enabling users to build agents and AI applications that interact with Google Contacts. Users can learn how to create new contacts and search for existing ones by name, email, or phone -- [Google Docs](https://docs.arcade.dev/en/resources/integrations/productivity/google-docs.md): This documentation page provides an overview of the Arcade Google Docs MCP Server, enabling users to build agents and AI applications that interact with Google Docs. It outlines available tools for creating, editing, and managing documents, as well as accessing metadata and comments. Additionally -- [Google Drive](https://docs.arcade.dev/en/resources/integrations/productivity/google-drive.md): This documentation page provides users with tools and guidelines for interacting with Google Drive through the MCP Server, enabling efficient file management and access. Users can learn how to retrieve file structures, search for files, create and manage folders, and share files, all while -- [Google Drive Reference](https://docs.arcade.dev/en/resources/integrations/productivity/google-drive/reference.md): The Google Drive Reference documentation provides users with a comprehensive guide to the enumerations used in the Google Drive MCP Server, including options for sorting files, filtering by file types, defining permission roles, and supported upload MIME types. This resource helps users effectively manage -- [Google Finance](https://docs.arcade.dev/en/resources/integrations/search/google_finance.md): The Google Finance documentation page provides users with the tools and instructions necessary to retrieve real-time and historical stock data through the Arcade platform. It outlines specific API functions for obtaining stock summaries and historical data, along with code examples for implementation. Additionally, it offers -- [Google Flights](https://docs.arcade.dev/en/resources/integrations/search/google_flights.md): This documentation page provides users with the tools and instructions to integrate Google Flights search functionality into their applications using the Arcade platform. It specifically focuses on enabling the retrieval of one-way flight search results, detailing required parameters and optional settings for customization. Additionally, it -- [Google Hotels](https://docs.arcade.dev/en/resources/integrations/search/google_hotels.md): The Google Hotels documentation provides users with the tools and guidance needed to integrate hotel search functionality into their applications using the Arcade platform. It details the parameters and options available for the GoogleHotels.SearchHotels API, enabling users to retrieve hotel search results based on various -- [Google Jobs](https://docs.arcade.dev/en/resources/integrations/search/google_jobs.md): This documentation page provides users with tools and instructions for integrating the Arcade Google Jobs MCP Server, enabling them to search for job openings using the Google Jobs API. It outlines the available functionalities, including how to configure search parameters and authentication requirements. Users can learn -- [Google Maps](https://docs.arcade.dev/en/resources/integrations/search/google_maps.md): This documentation page provides tools for integrating Google Maps functionality into applications, specifically enabling users to obtain directions between two locations using either addresses or latitude/longitude coordinates. It outlines available tools, their parameters, and includes code examples for implementation in Python and JavaScript -- [Google News](https://docs.arcade.dev/en/resources/integrations/search/google_news.md): This documentation page provides users with tools to integrate Google News search functionality into their applications using the Arcade Google News MCP Server. It outlines how to use the `GoogleNews.SearchNewsStories` tool to search for news articles based on specified keywords, language, -- [Google Search](https://docs.arcade.dev/en/resources/integrations/search/google_search.md): This documentation page provides users with the tools and instructions needed to perform Google searches using the Arcade Search MCP Server and SerpAPI. It outlines how to implement the GoogleSearch.Search tool to retrieve organic search results, including necessary parameters and authentication details. Users -- [Google Sheets](https://docs.arcade.dev/en/resources/integrations/productivity/google-sheets.md): This documentation page provides a comprehensive overview of the Arcade Google Sheets MCP Server, enabling users to build agents and AI applications that interact with Google Sheets. It details various tools for creating, reading, and updating spreadsheets, as well as managing metadata and user profiles -- [Google Shopping Search](https://docs.arcade.dev/en/resources/integrations/search/google_shopping.md): The Google Shopping Search documentation provides users with tools and guidance to enable agents to search for products on Google Shopping using the Arcade platform. It outlines the available functionalities, including the required parameters for product searches, authentication details, and default settings for language and country -- [Google Slides](https://docs.arcade.dev/en/resources/integrations/productivity/google-slides.md): This documentation page provides users with tools and instructions for interacting with Google Slides presentations through the GoogleSlides MCP Server. Users can learn to create presentations, add slides, comment on specific slides, search for presentations in Google Drive, and convert content to markdown format -- [GoogleCalendar Reference](https://docs.arcade.dev/en/resources/integrations/productivity/google-calendar/reference.md): The GoogleCalendar Reference documentation provides a concise overview of key enumerations related to event visibility, update options for sending notifications, and managing Google Meet settings within the GoogleCalendar MCP Server. Users can reference these enumerations to effectively configure and manage calendar events and -- [GoogleDocs Reference](https://docs.arcade.dev/en/resources/integrations/productivity/google-docs/reference.md): The GoogleDocs Reference documentation provides a comprehensive list of enumerations used in the GoogleDocs MCP Server, specifically focusing on sorting options and document formats. Users can learn about various order criteria, such as creation and modification times, as well as supported document formats -- [GoogleSheets Reference](https://docs.arcade.dev/en/resources/integrations/productivity/google-sheets/reference.md): The GoogleSheets Reference documentation provides a comprehensive list of enumerations related to sorting and ordering data within the GoogleSheets MCP Server. Users can learn about various order criteria, such as creation time, modification time, and name, along with their corresponding identifiers for - [Handle Errors](https://docs.arcade.dev/en/guides/create-tools/error-handling.md): This documentation page teaches users how to implement effective error handling in their tools to enhance user experience and ensure resilience in production environments. It outlines strategies for managing various error types and encourages the adoption of robust patterns for improved reliability. - [Hosting Optoions Overview](https://docs.arcade.dev/en/guides/deployment-hosting.md): This documentation page provides an overview of the various hosting options available for the Arcade platform, including the Arcade Cloud service and on-premise deployments. Users can learn how to quickly set up and manage their applications with zero infrastructure through Arcade Cloud or configure on-prem - [How to contribute a MCP Server](https://docs.arcade.dev/en/resources/integrations/contribute-a-server.md): This documentation page provides a step-by-step guide for developers on how to contribute their MCP Server to the Arcade documentation. It outlines the prerequisites for submission, including building and publishing the MCP Server, and details the process for opening a pull request and ensuring it -- [Hubspot](https://docs.arcade.dev/en/resources/integrations/sales/hubspot.md): This documentation page provides users with tools and guidance for integrating and automating interactions with HubSpot CRM through the HubSpot MCP Server. Users can learn how to perform various actions such as creating, updating, and retrieving data related to users, contacts, deals -- [Hubspot Reference](https://docs.arcade.dev/en/resources/integrations/sales/hubspot/reference.md): The Hubspot Reference documentation provides a comprehensive list of enumerations used in the Hubspot MCP Server, including various categories such as call directions, email statuses, meeting outcomes, and activity types. This reference helps users understand and implement the correct enumerations in -- [HubspotAutomationApi](https://docs.arcade.dev/en/resources/integrations/sales/hubspot-automation-api.md): The HubspotAutomationApi documentation provides users with tools to manage and automate workflows within HubSpot, enabling tasks such as completing blocked action executions, retrieving email campaign details, and enrolling contacts in sequences. It offers a suite of API functionalities designed to streamline marketing -- [HubspotCmsApi](https://docs.arcade.dev/en/resources/integrations/sales/hubspot-cms-api.md): The HubspotCmsApi documentation provides users with a set of tools designed to manage and optimize content within the HubSpot CMS efficiently. It enables users to create, update, and delete various content types, manage blog authors and tags, and handle multi-language -- [HubspotConversationsApi](https://docs.arcade.dev/en/resources/integrations/sales/hubspot-conversations-api.md): The HubspotConversationsApi documentation provides users with tools and guidance for managing and interacting with conversation threads and channels within HubSpot. It enables users to perform actions such as retrieving conversation inboxes, sending messages, updating thread statuses, and accessing detailed message -- [HubspotCrmApi](https://docs.arcade.dev/en/resources/integrations/sales/hubspot-crm-api.md): The HubspotCrmApi documentation provides tools for users to interact with the HubSpot CRM API, enabling efficient management of CRM records such as contacts, companies, deals, and appointments. Users can perform various operations including creating, updating, deleting records, -- [HubspotEventsApi](https://docs.arcade.dev/en/resources/integrations/sales/hubspot-events-api.md): The Hubspot Events API documentation provides tools and guidance for managing and analyzing event data within HubSpot, enabling users to efficiently track engagement, create and manage custom events, and send event completion data. It outlines various functionalities, including retrieving event completions, -- [HubspotMarketingApi](https://docs.arcade.dev/en/resources/integrations/sales/hubspot-marketing-api.md): The HubspotMarketingApi documentation provides users with tools to efficiently manage and analyze marketing campaigns within the HubSpot platform. It enables actions such as creating, updating, and deleting campaigns, managing budgets, and retrieving performance metrics. This resource is essential for users -- [HubspotMeetingsApi](https://docs.arcade.dev/en/resources/integrations/sales/hubspot-meetings-api.md): The HubspotMeetingsApi documentation provides users with tools and instructions for managing meetings through Hubspot's scheduling system. It enables users to schedule, book, and retrieve meeting details, as well as access available scheduling links and upcoming availability times. This page -- [HubspotUsersApi](https://docs.arcade.dev/en/resources/integrations/sales/hubspot-users-api.md): The HubspotUsersApi documentation provides users with tools to efficiently manage users and teams within a HubSpot account, including functionalities for retrieving user lists, creating and updating user accounts, and removing users. It offers detailed descriptions of available API tools, along with -- [Imgflip](https://docs.arcade.dev/en/resources/integrations/entertainment/imgflip.md): The Imgflip documentation provides users with tools to create and manage memes using the Imgflip API, enabling the development of agents and AI applications. Users can search for meme templates, retrieve popular memes, and create custom memes by adding text to existing templates. -- [Imgflip](https://docs.arcade.dev/en/resources/integrations/entertainment/spotify/imgflip.md): The Imgflip documentation page provides users with tools to create and manage memes using the Imgflip API, allowing them to search for meme templates, retrieve popular templates, and create custom memes. It outlines the available features, including a premium search option and customizable - [In Custom Applications](https://docs.arcade.dev/en/guides/tool-calling/custom-apps.md): This documentation page provides guidance on integrating Arcade tools into custom applications, focusing on user authentication, authorization status checking, and managing tool definitions. It serves as a resource for developers building tool-calling interfaces to ensure proper implementation and functionality. - [Initialize the Arcade client](https://docs.arcade.dev/en/get-started/agent-frameworks/google-adk/use-arcade-tools.md): This documentation page provides a comprehensive guide for integrating Arcade tools into Google ADK applications, detailing the necessary prerequisites, environment setup, and configuration steps. Users will learn how to create and manage Arcade tools, authorize them for agents, and run these agents with -- [IntercomApi](https://docs.arcade.dev/en/resources/integrations/customer-support/intercom-api.md): The IntercomApi documentation provides a comprehensive guide to tools that enable users to interact with the Intercom platform using OAuth2 authentication. It details various functionalities, such as managing admin information, creating and updating articles, and handling company data, allowing users to -- [Jira](https://docs.arcade.dev/en/resources/integrations/productivity/jira.md): This documentation page provides a comprehensive overview of the Jira MCP Server, which enables users and AI applications to efficiently manage Jira issues and projects. It outlines various functionalities such as creating, updating, and searching for issues, managing labels and attachments, and transitioning issues -- [Jira Environment Variables](https://docs.arcade.dev/en/resources/integrations/productivity/jira/environment-variables.md): This documentation page provides essential information on configuring Jira environment variables to optimize API interactions, specifically focusing on controlling the maximum concurrent requests, API request timeout, and cache size for improved performance during tool execution. Users will learn how to set numeric string values for these -- [Jira Reference](https://docs.arcade.dev/en/resources/integrations/productivity/jira/reference.md): This documentation page provides a reference for enumerations used in the Jira MCP Server, specifically detailing the various sprint states, priority scheme ordering, and issue comment ordering options available through the Jira API. Users can learn how to effectively filter and sort data within Jira -- [Linear](https://docs.arcade.dev/en/resources/integrations/productivity/linear.md): This documentation page provides users with a comprehensive guide to the Linear MCP Server, enabling them to effectively interact with Linear's issue tracking, project management, and team collaboration features. Users can learn how to create, manage, and update issues, projects, initiatives -- [LinkedIn](https://docs.arcade.dev/en/resources/integrations/social-communication/linkedin.md): This documentation page provides an overview of the Arcade LinkedIn MCP Server, which enables users to build agents and AI applications that interact with LinkedIn, specifically for creating text posts. It includes details on available tools, authentication methods, and example code for implementing -- [LumaApi](https://docs.arcade.dev/en/resources/integrations/productivity/luma-api.md): The LumaApi documentation provides users with tools and guidance for managing events and calendars within the Luma platform via its API. It covers functionalities such as creating and updating events, managing guest information, and handling invitations and coupons, all aimed at enhancing event -- [MailchimpMarketingApi](https://docs.arcade.dev/en/resources/integrations/productivity/mailchimp-marketing-api.md): The Mailchimp Marketing API documentation provides users with a set of tools for managing and optimizing their email marketing campaigns through direct interaction with the Mailchimp platform. Users can learn how to retrieve account information, manage audience contacts, create and automate marketing workflows, and - [MCP Gateways](https://docs.arcade.dev/en/guides/mcp-gateways.md): This documentation page provides guidance on using MCP Gateways to connect multiple MCP servers to an agent, application, or IDE, enabling users to federate tools for streamlined management and access. It outlines the benefits of using MCP Gateways, details the creation process -- [Microsoft Teams](https://docs.arcade.dev/en/resources/integrations/social-communication/microsoft-teams.md): This documentation page provides users with a comprehensive guide to the Microsoft Teams MCP Server, enabling them to effectively manage teams, channels, and chats within Microsoft Teams. Users can learn how to retrieve information, send messages, and manage users and interactions, streamlining -- [MicrosoftTeams Reference](https://docs.arcade.dev/en/resources/integrations/social-communication/microsoft-teams/reference.md): The MicrosoftTeams Reference documentation provides a comprehensive overview of key enumerations used in the MicrosoftTeams MCP Server, including types for matching criteria and team membership. Users can learn about specific values such as `PARTIAL_ALL`, `EXACT`, and `DIRECT - [Migrate from toolkits to MCP servers](https://docs.arcade.dev/en/guides/create-tools/migrate-toolkits.md): This documentation page provides a comprehensive guide for users looking to migrate their existing Arcade toolkits to the new MCP Server framework. It outlines the necessary changes in terminology, package dependencies, and code structure, while offering step-by-step instructions for updating imports, creating -- [MiroApi](https://docs.arcade.dev/en/resources/integrations/productivity/miro-api.md): The MiroApi documentation provides users with a comprehensive set of tools to manage and interact with Miro boards and organizational settings through the Miro API. It details various functionalities, including retrieving board information, managing access tokens, and handling legal holds, enabling -- [MongoDB](https://docs.arcade.dev/en/resources/integrations/databases/mongodb.md): This documentation page provides a comprehensive overview of the Arcade MongoDB MCP Server, which enables users to interact with MongoDB databases in a read-only capacity. It outlines key features such as database discovery, collection exploration, and safe query execution, while also offering -- [MongoDB](https://docs.arcade.dev/en/resources/integrations/databases/postgres/mongodb.md): This documentation page provides a comprehensive guide for using the Arcade MongoDB MCP Server, which enables agents to interact with MongoDB databases in a read-only capacity. Users will learn how to discover databases and collections, explore document structures, and execute safe queries, -- [Notion](https://docs.arcade.dev/en/resources/integrations/productivity/notion.md): This documentation page provides users with a comprehensive guide to the Arcade Notion MCP Server, which enables the creation and management of agents and AI applications that interact with Notion. Users can learn how to utilize various tools to retrieve page content, create new pages -- [Obsidian](https://docs.arcade.dev/en/resources/integrations/productivity/obsidian.md): This documentation page provides an overview of the Arcade Obsidian Toolkit, a community-contributed MCP Sever verified by the Arcade team. It guides users to learn more about the toolkit by directing them to the associated GitHub repository. - [On-premise MCP Servers](https://docs.arcade.dev/en/guides/deployment-hosting/on-prem.md): This documentation page provides guidance on deploying on-premises MCP servers within a hybrid architecture, enabling users to utilize Arcade's cloud infrastructure while maintaining control over their private resources and data security. Users will learn how to set up their MCP servers, create secure tunnels - [Or set it directly when initializing the client](https://docs.arcade.dev/en/get-started/agent-frameworks/openai-agents/use-arcade-tools.md): This documentation page provides a comprehensive guide on integrating Arcade tools into OpenAI Agents applications, detailing the necessary prerequisites, environment setup, and configuration steps. Users will learn how to create and manage Arcade tools, set up agents with these tools, handle authentication, - [Organize your MCP server and tools](https://docs.arcade.dev/en/guides/create-tools/tool-basics/organize-mcp-tools.md): This documentation page provides best practices for organizing your MCP server and tools, including how to define and import tools from separate files and other packages. Users will learn to maintain a clean project structure by keeping tools in a dedicated directory and using decorators effectively. Additionally -- [Outlook Calendar](https://docs.arcade.dev/en/resources/integrations/productivity/outlook-calendar.md): The Outlook Calendar documentation page provides users with tools to create, list, and retrieve events in their Outlook Calendar using the Outlook API. It includes detailed descriptions of available tools, such as creating events and fetching event details, along with example code snippets for implementation -- [Outlook Mail](https://docs.arcade.dev/en/resources/integrations/productivity/outlook-mail.md): The Outlook Mail documentation page provides users with tools to interact with the Outlook API, enabling them to read, write, and send emails efficiently. It details various functionalities, such as creating drafts, sending emails, and listing messages, along with code examples for -- [OutlookMail Reference](https://docs.arcade.dev/en/resources/integrations/productivity/outlook-mail/reference.md): The OutlookMail Reference documentation provides a comprehensive list of enumerations, folder names, email filter properties, and filter operators used in the OutlookMail MCP Server. It helps users understand and utilize these elements effectively when working with OutlookMail tools. This reference is - [page](https://docs.arcade.dev/en/resources/examples.md): This documentation page showcases a collection of example applications that utilize Arcade's tools and MCP servers, providing users with practical implementations and templates for various workflows and agent functionalities. Users can explore detailed descriptions and links to GitHub repositories for each app, enabling them to - [page](https://docs.arcade.dev/en/resources/integrations.md): This documentation page provides a comprehensive registry of all MCP Servers within the Arcade ecosystem, helping users to easily identify and access the available servers. - [page](https://docs.arcade.dev/en/get-started/agent-frameworks/mastra.md): This documentation page guides users in building a TypeScript AI agent and workflow using the Mastra framework and Arcade tools to interact with Gmail and Slack. Users will learn how to create an agent capable of reading emails, sending messages, and summarizing content, - [page](https://docs.arcade.dev/en/get-started/agent-frameworks/crewai/use-arcade-tools.md): This documentation page provides a comprehensive guide on integrating Arcade tools into CrewAI applications, detailing the necessary prerequisites, setup, and configuration steps. Users will learn how to manage tool authorization and effectively utilize these tools within their CrewAI agent teams. Additionally, it - [page](https://docs.arcade.dev/en/get-started/agent-frameworks/langchain/auth-langchain-tools.md): This documentation page provides a step-by-step guide on how to authorize existing LangChain tools, such as the `GmailToolkit`, using the Arcade platform. It outlines the prerequisites, installation of necessary packages, and detailed instructions for the authorization process in both -- [page](https://docs.arcade.dev/en/resources/integrations/productivity/dropbox/reference.md): This documentation page defines the various item categories used in Dropbox, including types such as image, document, PDF, spreadsheet, presentation, audio, video, folder, and paper. It helps users understand the classification of files within the Dropbox system. -- [PagerDuty](https://docs.arcade.dev/en/resources/integrations/customer-support/pagerduty.md): This documentation page provides guidance on using the PagerDuty MCP Server, which enables agents to access and manage incidents, on-call information, services, and teams through read-only API tools. It includes details on OAuth configuration, available tools with descriptions, and code -- [PagerdutyApi](https://docs.arcade.dev/en/resources/integrations/development/pagerduty-api.md): The PagerDutyApi documentation provides a comprehensive overview of tools that enable users to manage incidents, services, and integrations within the PagerDuty platform using the API. It outlines various functionalities, such as assigning tags, retrieving metrics, and managing add-ons, allowing -- [Postgres](https://docs.arcade.dev/en/resources/integrations/databases/postgres.md): This documentation page provides users with a comprehensive guide to the Arcade Postgres MCP Server, which enables agents to interact with PostgreSQL databases in a read-only manner. Users can learn how to discover database schemas, explore table structures, and execute safe SELECT queries -- [PosthogApi](https://docs.arcade.dev/en/resources/integrations/development/posthog-api.md): The PosthogApi documentation provides users with tools and guidance for managing and analyzing data within the PostHog platform via its API. It details the necessary configuration, including authentication secrets, and outlines various available tools for retrieving metrics, managing exports, and handling +- [page](https://docs.arcade.dev/en/resources/integrations/customer-support/[toolkitId].md): This documentation page provides an overview of the MCP server, detailing its generated documentation and the key components involved, such as dynamic parameters and metadata generation. Users can learn how to utilize these features within the MCP server framework. +- [page](https://docs.arcade.dev/en/resources/integrations/databases/[toolkitId].md): This documentation page provides an overview of the MCP server, detailing its generated documentation and the components involved in its implementation. Users will learn about the key functions, such as dynamic parameters and metadata generation, that facilitate the server's operation. +- [page](https://docs.arcade.dev/en/resources/integrations/development/[toolkitId].md): This documentation page provides an overview of the MCP server, detailing its generated documentation and the associated functionalities. Users can learn about the implementation of dynamic parameters, metadata generation, and static parameters within the MCP server context. The page serves as a reference for developers +- [page](https://docs.arcade.dev/en/resources/integrations/entertainment/[toolkitId].md): This documentation page provides an overview of the MCP server, including generated documentation and key functionalities such as dynamic parameters, metadata generation, and static parameter generation. Users can learn how to implement and utilize these features within their own applications. +- [page](https://docs.arcade.dev/en/resources/integrations/others/[toolkitId].md): This documentation page provides an overview of the MCP server, including its generated documentation and essential components such as dynamic parameters and metadata generation functions. Users can learn how to implement and utilize these features in their applications. +- [page](https://docs.arcade.dev/en/resources/integrations/payments/[toolkitId].md): This documentation page provides an overview of the MCP server, detailing its generated documentation and the components involved in its implementation. Users can learn about the functionalities of dynamic parameters, metadata generation, and static parameters related to the MCP server. The page serves as a +- [page](https://docs.arcade.dev/en/resources/integrations/productivity/[toolkitId].md): This documentation page provides an overview of the MCP server, detailing its generated documentation and the key components involved, such as dynamic parameters and metadata generation. Users can learn how to implement and utilize these features within the MCP server framework. +- [page](https://docs.arcade.dev/en/resources/integrations/sales/[toolkitId].md): This documentation page provides an overview of the MCP server, detailing its generated documentation and the associated components for implementing dynamic parameters, metadata generation, and static parameters. Users can learn how to utilize these features in their applications effectively. +- [page](https://docs.arcade.dev/en/resources/integrations/search/[toolkitId].md): This documentation page provides an overview of the MCP server, including its generated documentation and key functionalities. It outlines the components available for importing, such as dynamic parameters and metadata generation, to assist users in effectively utilizing the MCP server. +- [page](https://docs.arcade.dev/en/resources/integrations/social/[toolkitId].md): This documentation page provides an overview of the MCP server, including its generated documentation and key functionalities. Users can learn about the components involved, such as dynamic parameters and metadata generation, to effectively implement and utilize the MCP server. - [Provide the tool manager callback to the ArcadeToolManager](https://docs.arcade.dev/en/get-started/agent-frameworks/crewai/custom-auth-flow.md): This documentation page provides a comprehensive guide on creating a custom authorization flow for the ArcadeToolManager within a CrewAI agent team. It outlines the necessary prerequisites, setup steps, and code examples to help users implement tailored authorization processes for executing Arcade tools. By - [Providing useful tool errors](https://docs.arcade.dev/en/guides/create-tools/error-handling/useful-tool-errors.md): This documentation page teaches developers how to effectively handle errors when building tools with Arcade MCP, emphasizing the automatic error adaptation feature that reduces boilerplate code. It outlines the error handling philosophy, explains the use of error adapters, and provides guidance on when to raise -- [Pylon](https://docs.arcade.dev/en/resources/integrations/customer-support/pylon.md): The Pylon documentation provides agents with the necessary tools and API functionalities to manage issues, contacts, users, and teams within the Pylon MCP Server. Users can learn how to list and search issues, assign ownership, and interact with user and team data -- [Reddit](https://docs.arcade.dev/en/resources/integrations/social-communication/reddit.md): This documentation page provides users with a comprehensive guide to the Arcade Reddit MCP Server, which enables the development of agents and AI applications that can interact with Reddit. It details various tools available for actions such as submitting posts, commenting, retrieving content, and checking -- [Reference](https://docs.arcade.dev/en/resources/integrations/social-communication/slack/reference.md): This documentation page provides a reference for the enumerations related to conversation types used in the Slack MCP Server, including definitions for public channels, private channels, multi-person direct messages, and direct messages. Users can refer to this information to understand the different conversation -- [Reference](https://docs.arcade.dev/en/resources/integrations/social-communication/twilio/reference.md): This documentation page provides a reference for the `arcade_twilio` package, which enables users to integrate Twilio services for sending SMS and WhatsApp messages. It includes installation instructions, a brief description of the package, and detailed usage guidelines for the -- [Reference for Firecrawl Toolkit](https://docs.arcade.dev/en/resources/integrations/development/firecrawl/reference.md): This documentation page provides a reference for the Firecrawl Toolkit, detailing the various output formats available for scraped web pages, including Markdown, HTML, raw HTML, links, and screenshot options. Users can learn how to customize their data extraction by selecting the desired - [RetryableToolError in Arcade](https://docs.arcade.dev/en/guides/create-tools/error-handling/retry-tools.md): This documentation page explains how to utilize the `RetryableToolError` in the Arcade Tool SDK to enhance tool call outcomes by providing additional context for input parameters. It outlines when to raise this error and includes an example demonstrating its application in a tool that - [Run evaluations](https://docs.arcade.dev/en/guides/create-tools/evaluate-tools/run-evaluations.md): This documentation page provides guidance on using the `arcade evals` command to run evaluation suites across multiple providers and models, allowing users to discover, execute, and analyze evaluations with various output formats. It covers basic usage, multi-provider support, API -- [Salesforce CRM](https://docs.arcade.dev/en/resources/integrations/sales/salesforce.md): This documentation page provides guidance on using the Arcade Salesforce CRM MCP Server, which enables users to interact with Salesforce accounts, leads, and contacts through a set of pre-built tools. It outlines the steps for creating a custom Salesforce Auth Provider, self-hosting - [Secure and Brand the Auth Flow in Production](https://docs.arcade.dev/en/guides/user-facing-agents/secure-auth-production.md): This documentation page guides users on how to secure and customize their authentication flows using Arcade.dev in production environments. It explains the use of the default Arcade user verifier for development and the implementation of a custom user verifier for production applications, ensuring user verification and enhancing - [Securing Arcade MCP Deployments](https://docs.arcade.dev/en/guides/security/securing-arcade-mcp.md): This documentation page provides guidance on securing Arcade MCP deployments, detailing two primary methods: deploying the MCP server to the Arcade platform for built-in security features and implementing OAuth 2.1 Resource Server authentication for self-hosted environments. Users will learn how to - [Security](https://docs.arcade.dev/en/guides/security.md): This documentation page provides users with best practices for ensuring the security of MCP servers and Arcade tools, particularly when handling sensitive data or operating in production environments. It also highlights the importance of security in tool development and outlines the resources available for implementing robust security measures @@ -219,38 +135,15 @@ Arcade delivers three core capabilities: Deploy agents even your security team w - [Set your API key](https://docs.arcade.dev/en/get-started/agent-frameworks/openai-agents/user-auth-interrupts.md): This documentation page provides a comprehensive guide on managing user authorization for Arcade tools within OpenAI Agents applications. It outlines the steps to obtain an API key, configure the environment, handle authorization errors, and implement a complete authorization flow. Users will learn how to - [Setup Arcade with LangChain](https://docs.arcade.dev/en/get-started/agent-frameworks/langchain/use-arcade-with-langchain.md): This documentation page guides users on how to integrate Arcade tools into LangChain agents, enabling them to leverage Arcade's capabilities within the LangChain framework. Users will learn to set up their environment, create a LangChain agent, and manage tool authorization and execution - [Setup Arcade with OpenAI Agents SDK](https://docs.arcade.dev/en/get-started/agent-frameworks/openai-agents/use-arcade-with-openai-agents.md): This documentation page provides a comprehensive guide on integrating Arcade tools with the OpenAI Agents SDK to build AI agents. Users will learn how to set up a project, implement a command-line interface (CLI) agent, and manage tool authorization seamlessly. By following -- [Sharepoint](https://docs.arcade.dev/en/resources/integrations/productivity/sharepoint.md): This documentation page provides a comprehensive guide for using the SharePoint MCP Server, enabling users to efficiently interact with SharePoint sites and their contents through various tools. Users can learn to retrieve lists, items, pages, and metadata, as well as search for -- [Slack](https://docs.arcade.dev/en/resources/integrations/social-communication/slack.md): This documentation page provides users with tools and functionalities to integrate and interact with the Slack platform, enabling efficient management of conversations and user information. It outlines various capabilities, such as retrieving user details, sending messages, and accessing conversation metadata, all aimed at enhancing -- [SlackApi](https://docs.arcade.dev/en/resources/integrations/social-communication/slack_api.md): The SlackApi documentation provides a comprehensive guide for administrators and applications to manage and automate various aspects of Slack workspaces, including user management, messaging, channel operations, and file sharing. It outlines key functionalities such as creating teams, managing user profiles, sending -- [SlackApi](https://docs.arcade.dev/en/resources/integrations/social-communication/slack-api.md): The SlackApi documentation provides a comprehensive guide for administrators and developers to effectively manage and automate various aspects of Slack workspaces, including user management, messaging, channel operations, and file sharing. It outlines key functionalities such as creating teams, managing user profiles, -- [Spotify](https://docs.arcade.dev/en/resources/integrations/entertainment/spotify.md): This documentation page provides tools for developers to integrate Spotify functionalities into their applications using the Arcade platform. Users can learn how to retrieve track information, control playback, and search the Spotify catalog through a set of pre-built tools, all requiring a self-hosted -- [SquareupApi](https://docs.arcade.dev/en/resources/integrations/productivity/squareup-api.md): The SquareupApi documentation provides users with tools and functionalities to interact with the Square platform, enabling management of payments, customer information, and bookings through an OAuth2 authentication process. Users can learn how to perform various actions such as obtaining OAuth tokens, managing -- [Stripe](https://docs.arcade.dev/en/resources/integrations/payments/stripe.md): This documentation page provides users with tools and guidance to interact with the Stripe API, enabling the creation and management of customers, products, invoices, and payment processing. Users can learn how to implement various functionalities, such as creating customers or products, listing invoices -- [StripeApi](https://docs.arcade.dev/en/resources/integrations/payments/stripe_api.md): The StripeApi documentation provides tools for developers to interact with the Stripe API, enabling them to manage accounts, customers, payments, billing, and various Stripe resources programmatically. Users can perform a wide range of operations, including retrieving account details, managing payment -- [Teams Reference](https://docs.arcade.dev/en/resources/integrations/social-communication/teams/reference.md): The Teams Reference documentation provides a comprehensive list of enumerations related to matching types and team membership within the Teams MCP Server. Users can learn about different match criteria, such as exact and partial matches, as well as the types of team memberships available. This - [The Arcade Registry](https://docs.arcade.dev/en/resources/registry-early-access.md): The Arcade Registry documentation page provides an overview of the Arcade Registry, a platform for developers to share and monetize their tools for agentic applications. It explains how the registry collects usage metrics and feedback to enhance tool effectiveness, while inviting users to participate in the -- [TicktickApi](https://docs.arcade.dev/en/resources/integrations/productivity/ticktick-api.md): The TicktickApi documentation provides a set of tools for developers to manage tasks and projects within the Ticktick platform using OAuth2 authentication. Users can learn how to create, update, delete, and retrieve tasks and projects through various API endpoints, enabling seamless - [Tool error handling](https://docs.arcade.dev/en/guides/tool-calling/error-handling.md): This documentation page provides guidance on effectively handling errors when using tools with Arcade's Tool Development Kit (TDK). It outlines the error handling philosophy, describes various error types, and offers best practices for implementing robust error management in applications. Users will learn how +- [Toolkit documentation previews](https://docs.arcade.dev/en/resources/integrations/preview.md): This documentation page provides users with the ability to preview generated toolkit documentation based on JSON data. It serves as an index for accessing various toolkit previews, allowing users to review the content before finalizing it. - [Tools](https://docs.arcade.dev/en/resources/tools.md): This documentation page provides an overview of Arcade's ecosystem of AI tools, enabling users to explore a catalog of pre-built integrations, create custom tools, and contribute to the community. It outlines the benefits of using Arcade tools, including built-in authentication and universal -- [TrelloApi](https://docs.arcade.dev/en/resources/integrations/productivity/trello-api.md): The TrelloApi documentation provides users with a comprehensive set of tools for interacting with the Trello API, enabling efficient management of boards, cards, lists, and members. It outlines various functionalities, such as fetching and updating actions, retrieving board details, -- [Twilio](https://docs.arcade.dev/en/resources/integrations/social-communication/twilio.md): This documentation page provides users with a comprehensive guide to using Twilio for sending SMS and WhatsApp messages through an MCP Server, including setup prerequisites and configuration details. It outlines the necessary credentials required for integration and offers practical usage examples to demonstrate the server's -- [Twitch auth provider](https://docs.arcade.dev/en/resources/integrations/entertainment/twitch.md): The Twitch auth provider documentation page guides users in creating a custom authentication provider to access the Twitch API using their own OAuth 2.0 credentials. It outlines the steps to configure Twitch authentication within the Arcade platform, including creating a Twitch application and integrating it - [Types of Tools](https://docs.arcade.dev/en/guides/create-tools/improve/types-of-tools.md): This documentation page explains the two types of tools offered by Arcade: Optimized tools and Starter tools. It highlights the differences in design and functionality, emphasizing that Optimized tools are tailored for AI-powered chat interfaces to improve performance, while Starter tools provide more - [Understanding `Context` and tools](https://docs.arcade.dev/en/guides/create-tools/tool-basics/runtime-data-access.md): This documentation page explains the `Context` class used in Arcade tools, detailing how to access runtime capabilities and tool-specific data securely. Users will learn how to utilize the `Context` object to retrieve OAuth tokens, secrets, user information, and to log - [Use Arcade in Claude Desktop](https://docs.arcade.dev/en/get-started/mcp-clients/claude-desktop.md): This documentation page provides a step-by-step guide for users to connect Claude Desktop to an Arcade MCP Gateway, enabling them to utilize custom connectors. It outlines the prerequisites for setup, including creating an Arcade account and obtaining an API key, as well as detailed - [Use Arcade in Cursor](https://docs.arcade.dev/en/get-started/mcp-clients/cursor.md): This documentation page provides a step-by-step guide for connecting Cursor to an Arcade MCP Gateway, enabling users to utilize Arcade tools within the Cursor environment. It outlines the prerequisites for setup, including creating an Arcade account and obtaining an API key, as well as - [Use Arcade in Microsoft Copilot Studio](https://docs.arcade.dev/en/get-started/mcp-clients/copilot-studio.md): This documentation page guides users on how to connect Microsoft Copilot Studio to an Arcade MCP Gateway, enabling the integration of Arcade tools into their agents. It outlines the prerequisites, step-by-step instructions for creating or opening an agent, adding an MCP tool, - [Use Arcade in Visual Studio Code](https://docs.arcade.dev/en/get-started/mcp-clients/visual-studio-code.md): This documentation page provides a step-by-step guide for connecting Visual Studio Code to an Arcade MCP Gateway, enabling users to set up and run an MCP server within the IDE. It outlines prerequisites, setup instructions, and authentication processes to ensure successful integration. By -- [VercelApi](https://docs.arcade.dev/en/resources/integrations/development/vercel-api.md): The VercelApi documentation provides a comprehensive guide for users to manage their Vercel projects, domains, and integrations through various API tools. It outlines available functionalities such as creating and managing access groups, handling deployments, and managing DNS records, enabling -- [Walmart Search](https://docs.arcade.dev/en/resources/integrations/search/walmart.md): The Walmart Search documentation provides tools for developers to integrate product search and details retrieval from Walmart into their applications. It outlines how to use the `Walmart.SearchProducts` and `Walmart.GetProductDetails` tools, including parameters for customizing searches and retrieving -- [WeaviateApi](https://docs.arcade.dev/en/resources/integrations/databases/weaviate-api.md): The WeaviateApi documentation provides users with essential tools and instructions for managing and interacting with the Weaviate vector search engine via its API. It covers authentication requirements, including obtaining API keys, and offers a comprehensive list of available API endpoints for various - [What are tools?](https://docs.arcade.dev/en/guides/tool-calling.md): This documentation page provides an overview of tool calling in language models, explaining how users can leverage external tools to enhance the capabilities of AI models for tasks like data retrieval, scheduling, and email communication. It outlines the process of integrating these tools through the Arcade - [Why evaluate tools?](https://docs.arcade.dev/en/guides/create-tools/evaluate-tools/why-evaluate.md): This documentation page explains the importance of evaluating tools for AI models to ensure they select the correct tools and provide accurate parameters in production. It outlines the evaluation process, scoring components, and potential pitfalls of inadequate evaluations, while also providing guidance on creating evaluation suites -- [X (formerly Twitter)](https://docs.arcade.dev/en/resources/integrations/social-communication/x.md): This documentation page provides users with tools and guidance for interacting with X (formerly Twitter) through the Arcade MCP Server, enabling the creation of agents and AI applications. Users can learn how to post, reply to, delete tweets, and search for tweets by -- [XeroApi](https://docs.arcade.dev/en/resources/integrations/productivity/xero-api.md): The XeroApi documentation provides tools for developers to interact with the Xero accounting API, enabling the management of various accounting entities such as invoices, payments, and financial reports. Users can access, create, and manage resources, retrieve attachments, and perform -- [YouTube Search](https://docs.arcade.dev/en/resources/integrations/search/youtube.md): The YouTube Search documentation page provides users with tools to easily search for videos on YouTube and retrieve video details using the Arcade YouTube Search MCP Server. It outlines the available functionalities, including parameters for customizing searches, and offers guidance on authentication and default -- [Zendesk](https://docs.arcade.dev/en/resources/integrations/customer-support/zendesk.md): This documentation page provides users with tools and guidance for integrating and managing customer support tickets through Zendesk. Users can learn how to list, comment on, and solve tickets, as well as search for knowledge base articles, streamlining their customer support processes. -- [Zendesk Reference](https://docs.arcade.dev/en/resources/integrations/customer-support/zendesk/reference.md): The Zendesk Reference documentation provides a comprehensive list of enumerations related to ticket statuses, sorting orders, and article sorting options used within the Zendesk MCP Server. Users can refer to this page to understand the specific values and their corresponding meanings, facilitating effective -- [ZohoBooksApi](https://docs.arcade.dev/en/resources/integrations/payments/zoho-books-api.md): The ZohoBooksApi documentation provides users with tools and guidance for managing financial transactions and accounting tasks within Zoho Books, utilizing OAuth2 for authentication. It outlines various functionalities, including creating, updating, and deleting bank accounts and transactions, as well as -- [ZohoCreatorApi](https://docs.arcade.dev/en/resources/integrations/development/zoho-creator-api.md): The ZohoCreatorApi documentation provides users with a set of tools designed to facilitate interaction with Zoho Creator applications through the API, enabling efficient data management and manipulation. Users can learn how to perform various actions such as fetching records, updating data, and -- [Zoom](https://docs.arcade.dev/en/resources/integrations/social-communication/zoom.md): This documentation page provides guidance on using the Arcade Zoom MCP Server, which allows users to build agents and AI applications that interact with Zoom by listing upcoming meetings and retrieving meeting invitations. It details the available tools, their functionalities, and necessary authentication processes for accessing diff --git a/public/robots.txt b/public/robots.txt index de18d7439..96b3d924a 100644 --- a/public/robots.txt +++ b/public/robots.txt @@ -8,5 +8,4 @@ Host: https://docs.arcade.dev # Sitemaps Sitemap: https://docs.arcade.dev/sitemap.xml -# AI Agent Resources -# https://docs.arcade.dev/llms.txt +# https://docs.arcade.dev/llms.txt \ No newline at end of file diff --git a/scripts/__tests__/check-redirects-utils.test.ts b/scripts/__tests__/check-redirects-utils.test.ts new file mode 100644 index 000000000..d7d299aa0 --- /dev/null +++ b/scripts/__tests__/check-redirects-utils.test.ts @@ -0,0 +1,412 @@ +import { describe, expect, it, vi } from "vitest"; +import { + fileToUrl, + urlToFile, + dynamicFileToUrlPattern, + dynamicRouteExists, + pageExists, + parseDynamicRouteMoves, + isMoveCoveredByRedirect, + parseRedirects, + checkWildcardMatch, + type DynamicRouteMove, + type Redirect, +} from "../check-redirects-utils"; + +describe("fileToUrl", () => { + it("converts file path to URL path", () => { + expect(fileToUrl("app/en/guides/foo/page.mdx")).toBe("/:locale/guides/foo"); + }); + + it("handles nested paths", () => { + expect( + fileToUrl("app/en/resources/integrations/productivity/gmail/page.mdx") + ).toBe("/:locale/resources/integrations/productivity/gmail"); + }); + + it("handles root page", () => { + expect(fileToUrl("app/en/page.mdx")).toBe("/:locale"); + }); + + it("handles .md extension", () => { + expect(fileToUrl("app/en/guides/foo/page.md")).toBe("/:locale/guides/foo"); + }); + + it("handles different locales", () => { + expect(fileToUrl("app/pt/guides/foo/page.mdx")).toBe("/:locale/guides/foo"); + }); +}); + +describe("urlToFile", () => { + it("converts URL path to file path", () => { + expect(urlToFile("/:locale/guides/foo")).toBe("app/en/guides/foo/page.mdx"); + }); + + it("handles nested paths", () => { + expect(urlToFile("/:locale/resources/integrations/productivity/gmail")).toBe( + "app/en/resources/integrations/productivity/gmail/page.mdx" + ); + }); + + it("handles root URL", () => { + expect(urlToFile("/:locale")).toBe("app/en/page.mdx"); + expect(urlToFile("/:locale/")).toBe("app/en/page.mdx"); + }); +}); + +describe("dynamicFileToUrlPattern", () => { + it("converts dynamic route to URL pattern", () => { + expect( + dynamicFileToUrlPattern( + "app/en/resources/integrations/productivity/[toolkitId]/page.mdx" + ) + ).toBe("/:locale/resources/integrations/productivity/:toolkitId"); + }); + + it("handles catch-all routes", () => { + expect(dynamicFileToUrlPattern("app/en/docs/[...slug]/page.mdx")).toBe( + "/:locale/docs/:slug*" + ); + }); + + it("handles multiple dynamic segments", () => { + expect( + dynamicFileToUrlPattern("app/en/[category]/[id]/page.mdx") + ).toBe("/:locale/:category/:id"); + }); + + it("handles static paths", () => { + expect(dynamicFileToUrlPattern("app/en/about/page.mdx")).toBe( + "/:locale/about" + ); + }); + + it("handles root with dynamic segment", () => { + expect(dynamicFileToUrlPattern("app/en/[slug]/page.mdx")).toBe( + "/:locale/:slug" + ); + }); +}); + +describe("dynamicRouteExists", () => { + it("returns true when dynamic route exists", () => { + const mockExists = vi.fn((path: string) => { + return path === "app/en/resources/integrations/productivity/[toolkitId]/page.mdx"; + }); + + expect( + dynamicRouteExists( + "/:locale/resources/integrations/productivity/gmail", + mockExists + ) + ).toBe(true); + }); + + it("returns false when no dynamic route exists", () => { + const mockExists = vi.fn(() => false); + + expect( + dynamicRouteExists("/:locale/some/nonexistent/path", mockExists) + ).toBe(false); + }); + + it("checks multiple dynamic patterns", () => { + const checkedPaths: string[] = []; + const mockExists = vi.fn((path: string) => { + checkedPaths.push(path); + return false; + }); + + dynamicRouteExists("/:locale/docs/page", mockExists); + + // Should check [toolkitId], [slug], [id], [...slug] for each segment + expect(checkedPaths).toContain("app/en/docs/[toolkitId]/page.mdx"); + expect(checkedPaths).toContain("app/en/docs/[slug]/page.mdx"); + expect(checkedPaths).toContain("app/en/[toolkitId]/page/page.mdx"); + }); + + it("also checks .md extension", () => { + const mockExists = vi.fn((path: string) => { + return path === "app/en/docs/[slug]/page.md"; + }); + + expect(dynamicRouteExists("/:locale/docs/intro", mockExists)).toBe(true); + }); + + it("returns true when nested dynamic route exists", () => { + const mockExists = vi.fn((path: string) => { + // The function checks [toolkitId], [slug], [id], [...slug] patterns + return path === "app/en/[slug]/test/page.mdx"; + }); + + // It should check multiple positions, including replacing the first segment + expect(dynamicRouteExists("/:locale/guides/test", mockExists)).toBe(true); + }); +}); + +describe("pageExists", () => { + it("returns true for paths with :path* wildcard", () => { + const mockExists = vi.fn(() => false); + expect(pageExists("/:locale/api/:path*", mockExists)).toBe(true); + expect(mockExists).not.toHaveBeenCalled(); + }); + + it("returns true for paths with :path parameter", () => { + const mockExists = vi.fn(() => false); + expect(pageExists("/:locale/docs/:path", mockExists)).toBe(true); + }); + + it("returns true when static page exists", () => { + const mockExists = vi.fn((path: string) => { + return path === "app/en/about/page.mdx"; + }); + + expect(pageExists("/:locale/about", mockExists)).toBe(true); + }); + + it("returns true when .md page exists", () => { + const mockExists = vi.fn((path: string) => { + return path === "app/en/about/page.md"; + }); + + expect(pageExists("/:locale/about", mockExists)).toBe(true); + }); + + it("returns true when dynamic route serves the path", () => { + const mockExists = vi.fn((path: string) => { + return path === "app/en/resources/[toolkitId]/page.mdx"; + }); + + expect(pageExists("/:locale/resources/gmail", mockExists)).toBe(true); + }); + + it("returns false when no page serves the path", () => { + const mockExists = vi.fn(() => false); + expect(pageExists("/:locale/nonexistent", mockExists)).toBe(false); + }); +}); + +describe("parseDynamicRouteMoves", () => { + it("detects renamed dynamic route files", () => { + const gitDiff = `R100\tapp/en/old/[toolkitId]/page.mdx\tapp/en/new/[toolkitId]/page.mdx`; + + const moves = parseDynamicRouteMoves(gitDiff); + + expect(moves).toHaveLength(1); + expect(moves[0]).toEqual({ + oldPath: "app/en/old/[toolkitId]/page.mdx", + newPath: "app/en/new/[toolkitId]/page.mdx", + oldUrl: "/:locale/old/:toolkitId", + newUrl: "/:locale/new/:toolkitId", + }); + }); + + it("ignores moves where URL pattern stays the same", () => { + // Renaming [id] to [toolkitId] in same location doesn't change URL + const gitDiff = `R100\tapp/en/resources/[id]/page.mdx\tapp/en/resources/[toolkitId]/page.mdx`; + + const moves = parseDynamicRouteMoves(gitDiff); + + // Both result in /:locale/resources/:id and /:locale/resources/:toolkitId + // These are different, so it should be detected + expect(moves).toHaveLength(1); + }); + + it("ignores non-page files", () => { + const gitDiff = `R100\tapp/en/old/[toolkitId]/index.ts\tapp/en/new/[toolkitId]/index.ts`; + + const moves = parseDynamicRouteMoves(gitDiff); + + expect(moves).toHaveLength(0); + }); + + it("ignores deleted files (D status)", () => { + const gitDiff = `D\tapp/en/old/[toolkitId]/page.mdx`; + + const moves = parseDynamicRouteMoves(gitDiff); + + expect(moves).toHaveLength(0); + }); + + it("handles multiple moves", () => { + const gitDiff = [ + `R100\tapp/en/old1/[id]/page.mdx\tapp/en/new1/[id]/page.mdx`, + `R095\tapp/en/old2/[slug]/page.mdx\tapp/en/new2/[slug]/page.mdx`, + ].join("\n"); + + const moves = parseDynamicRouteMoves(gitDiff); + + expect(moves).toHaveLength(2); + }); + + it("handles empty output", () => { + expect(parseDynamicRouteMoves("")).toHaveLength(0); + }); + + it("detects when static page moves to dynamic route location", () => { + const gitDiff = `R100\tapp/en/tools/gmail/page.mdx\tapp/en/tools/[toolkitId]/page.mdx`; + + const moves = parseDynamicRouteMoves(gitDiff); + + expect(moves).toHaveLength(1); + expect(moves[0].oldUrl).toBe("/:locale/tools/gmail"); + expect(moves[0].newUrl).toBe("/:locale/tools/:toolkitId"); + }); +}); + +describe("isMoveCoveredByRedirect", () => { + const move: DynamicRouteMove = { + oldPath: "app/en/old/[toolkitId]/page.mdx", + newPath: "app/en/new/[toolkitId]/page.mdx", + oldUrl: "/:locale/old/:toolkitId", + newUrl: "/:locale/new/:toolkitId", + }; + + it("returns true for exact match", () => { + const redirects: Redirect[] = [ + { source: "/:locale/old/:toolkitId", destination: "/:locale/new/:toolkitId" }, + ]; + + expect(isMoveCoveredByRedirect(move, redirects)).toBe(true); + }); + + it("returns true when wildcard covers the path", () => { + const redirects: Redirect[] = [ + { source: "/:locale/old/:path*", destination: "/:locale/new/:path*" }, + ]; + + expect(isMoveCoveredByRedirect(move, redirects)).toBe(true); + }); + + it("returns false when no redirect covers the move", () => { + const redirects: Redirect[] = [ + { source: "/:locale/other/:path*", destination: "/:locale/somewhere/:path*" }, + ]; + + expect(isMoveCoveredByRedirect(move, redirects)).toBe(false); + }); + + it("returns false for empty redirects", () => { + expect(isMoveCoveredByRedirect(move, [])).toBe(false); + }); + + it("handles multiple redirects", () => { + const redirects: Redirect[] = [ + { source: "/:locale/unrelated", destination: "/:locale/other" }, + { source: "/:locale/old/:toolkitId", destination: "/:locale/new/:toolkitId" }, + ]; + + expect(isMoveCoveredByRedirect(move, redirects)).toBe(true); + }); +}); + +describe("parseRedirects", () => { + it("parses standard format redirects", () => { + const content = ` + { + source: "/:locale/old", + destination: "/:locale/new", + permanent: true, + }, + `; + + const redirects = parseRedirects(content); + + expect(redirects).toHaveLength(1); + expect(redirects[0]).toEqual({ + source: "/:locale/old", + destination: "/:locale/new", + }); + }); + + it("parses reversed format redirects", () => { + const content = ` + { + destination: "/:locale/new", + source: "/:locale/old", + permanent: true, + }, + `; + + const redirects = parseRedirects(content); + + expect(redirects).toHaveLength(1); + expect(redirects[0]).toEqual({ + source: "/:locale/old", + destination: "/:locale/new", + }); + }); + + it("parses multiple redirects", () => { + const content = ` + { + source: "/:locale/a", + destination: "/:locale/b", + }, + { + source: "/:locale/c", + destination: "/:locale/d", + }, + `; + + const redirects = parseRedirects(content); + + expect(redirects).toHaveLength(2); + }); + + it("handles single quotes", () => { + const content = ` + { + source: '/:locale/old', + destination: '/:locale/new', + }, + `; + + const redirects = parseRedirects(content); + + expect(redirects).toHaveLength(1); + expect(redirects[0].source).toBe("/:locale/old"); + }); + + it("handles empty content", () => { + expect(parseRedirects("")).toHaveLength(0); + }); +}); + +describe("checkWildcardMatch", () => { + it("returns true when wildcard prefix matches", () => { + const redirects: Redirect[] = [ + { source: "/:locale/old/:path*", destination: "/:locale/new/:path*" }, + ]; + + expect(checkWildcardMatch("/:locale/old/foo/bar", redirects)).toBe(true); + }); + + it("returns true for exact prefix match", () => { + const redirects: Redirect[] = [ + { source: "/:locale/old/:path*", destination: "/:locale/new/:path*" }, + ]; + + expect(checkWildcardMatch("/:locale/old", redirects)).toBe(true); + }); + + it("returns false when no wildcard matches", () => { + const redirects: Redirect[] = [ + { source: "/:locale/other/:path*", destination: "/:locale/new/:path*" }, + ]; + + expect(checkWildcardMatch("/:locale/old/foo", redirects)).toBe(false); + }); + + it("ignores non-wildcard redirects", () => { + const redirects: Redirect[] = [ + { source: "/:locale/old", destination: "/:locale/new" }, + ]; + + expect(checkWildcardMatch("/:locale/old/foo", redirects)).toBe(false); + }); + + it("returns false for empty redirects", () => { + expect(checkWildcardMatch("/:locale/anything", [])).toBe(false); + }); +}); diff --git a/scripts/__tests__/generate-toolkit-markdown.test.ts b/scripts/__tests__/generate-toolkit-markdown.test.ts new file mode 100644 index 000000000..a205c7d8c --- /dev/null +++ b/scripts/__tests__/generate-toolkit-markdown.test.ts @@ -0,0 +1,103 @@ +import { mkdtemp, readFile, rm } from "node:fs/promises"; +import { tmpdir } from "node:os"; +import { join } from "node:path"; +import { afterEach, describe, expect, it } from "vitest"; + +import { generateToolkitMarkdown } from "../generate-toolkit-markdown"; +import type { ToolkitData } from "@/app/_components/toolkit-docs/types"; + +const createToolkit = (overrides: Partial = {}): ToolkitData => ({ + id: "Github", + label: "GitHub", + version: "1.0.0", + description: null, + metadata: { + category: "development", + iconUrl: "https://design-system.arcade.dev/icons/github.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.arcade.dev", + isComingSoon: false, + isHidden: false, + }, + auth: null, + tools: [], + documentationChunks: [], + customImports: [], + subPages: [], + generatedAt: new Date().toISOString(), + ...overrides, +}); + +const createTempDir = async (): Promise => + mkdtemp(join(tmpdir(), "toolkit-markdown-")); + +const cleanupTempDir = async (dir: string | null) => { + if (dir) { + await rm(dir, { recursive: true, force: true }); + } +}; + +describe("generateToolkitMarkdown", () => { + let tempDir: string | null = null; + + afterEach(async () => { + await cleanupTempDir(tempDir); + tempDir = null; + }); + + it("fails when no routes exist and failOnEmptyRoutes is true", async () => { + tempDir = await createTempDir(); + await expect( + generateToolkitMarkdown({ + routes: [], + outputRoot: tempDir, + failOnEmptyRoutes: true, + }) + ).rejects.toThrow("No toolkit routes found"); + }); + + it("writes markdown for available toolkits and skips missing data", async () => { + tempDir = await createTempDir(); + + const routes = [ + { category: "development", toolkitId: "github" }, + { category: "sales", toolkitId: "hubspot" }, + ]; + + const result = await generateToolkitMarkdown({ + outputRoot: tempDir, + routes, + readToolkitDataFn: async (toolkitId: string) => { + if (toolkitId === "github") { + return createToolkit({ id: "Github", label: "GitHub" }); + } + return null; + }, + toMarkdown: () => "# Generated\n", + failOnEmptyRoutes: false, + }); + + const outputPath = join(tempDir, "development", "github.md"); + const content = await readFile(outputPath, "utf-8"); + + expect(content).toBe("# Generated\n"); + expect(result.written).toBe(1); + expect(result.skipped).toBe(1); + }); + + it("fails when no markdown is written and failOnEmptyRoutes is true", async () => { + tempDir = await createTempDir(); + + await expect( + generateToolkitMarkdown({ + outputRoot: tempDir, + routes: [{ category: "development", toolkitId: "github" }], + readToolkitDataFn: async () => null, + toMarkdown: () => "# Generated\n", + failOnEmptyRoutes: true, + }) + ).rejects.toThrow("No toolkit markdown generated"); + }); +}); diff --git a/scripts/__tests__/pagefind-toolkit-content.test.ts b/scripts/__tests__/pagefind-toolkit-content.test.ts new file mode 100644 index 000000000..c3547ca75 --- /dev/null +++ b/scripts/__tests__/pagefind-toolkit-content.test.ts @@ -0,0 +1,367 @@ +import { describe, expect, it } from "vitest"; + +import type { + ToolkitData, + ToolDefinition, + ToolParameter, +} from "@/app/_components/toolkit-docs/types"; +import { toolkitDataToSearchMarkdown } from "../pagefind-toolkit-content"; + +const makeTool = ( + qualifiedName: string, + options?: { + parameters?: ToolParameter[]; + auth?: ToolDefinition["auth"]; + secrets?: string[]; + secretsInfo?: ToolDefinition["secretsInfo"]; + output?: ToolDefinition["output"]; + codeExample?: ToolDefinition["codeExample"]; + } +): ToolDefinition => ({ + name: qualifiedName.split(".")[1] ?? qualifiedName, + qualifiedName, + fullyQualifiedName: `${qualifiedName}@1.0.0`, + description: "Does something useful.", + parameters: options?.parameters ?? [], + auth: options?.auth ?? null, + secrets: options?.secrets ?? [], + secretsInfo: options?.secretsInfo, + output: options?.output ?? null, + documentationChunks: [], + codeExample: options?.codeExample, +}); + +const makeToolkit = ( + tools: ToolDefinition[], + options?: { + auth?: ToolkitData["auth"]; + summary?: string; + documentationChunks?: ToolkitData["documentationChunks"]; + } +): ToolkitData => + ({ + id: "Github", + label: "GitHub", + version: "1.0.0", + description: "Arcade tools for GitHub.", + metadata: { + category: "development", + iconUrl: "https://example.com/icon.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.arcade.dev", + isComingSoon: false, + isHidden: false, + }, + auth: options?.auth ?? null, + tools, + customImports: [], + subPages: [], + summary: options?.summary, + documentationChunks: options?.documentationChunks, + }) satisfies ToolkitData; + +describe("toolkitDataToSearchMarkdown", () => { + it("includes the toolkit title, version, description, and tool list", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([makeTool("Github.CreateIssue")]) + ); + + expect(markdown).toContain("# GitHub"); + expect(markdown).toContain("**Version:** 1.0.0"); + expect(markdown).toContain("Arcade tools for GitHub."); + expect(markdown).toContain("## Tools"); + expect(markdown).toContain("`Github.CreateIssue`"); + expect(markdown).toContain("Does something useful."); + }); + + it("truncates very large toolkits to keep the search index manageable", () => { + const tools = Array.from({ length: 501 }, (_, index) => + makeTool(`Github.Tool${index}`) + ); + + const markdown = toolkitDataToSearchMarkdown(makeToolkit(tools)); + + expect(markdown).toContain("*... and 1 more tools.*"); + }); + + it("includes OAuth authentication details", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([makeTool("Github.CreateIssue")], { + auth: { + type: "oauth2", + providerId: "github", + allScopes: ["repo", "user:email"], + }, + }) + ); + + expect(markdown).toContain("## Authentication"); + expect(markdown).toContain("**Type:** OAuth 2.0"); + expect(markdown).toContain("**Provider:** github"); + expect(markdown).toContain("**Required scopes:**"); + expect(markdown).toContain("- `repo`"); + expect(markdown).toContain("- `user:email`"); + }); + + it("includes overview summary when available", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([makeTool("Github.CreateIssue")], { + summary: "This is a toolkit for managing GitHub resources.", + }) + ); + + expect(markdown).toContain("## Overview"); + expect(markdown).toContain( + "This is a toolkit for managing GitHub resources." + ); + }); + + it("includes tool parameters with types, required flags, and descriptions", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([ + makeTool("Github.CreateIssue", { + parameters: [ + { + name: "repo", + type: "string", + required: true, + description: "The repository name.", + enum: null, + }, + { + name: "title", + type: "string", + required: true, + description: "The issue title.", + enum: null, + }, + { + name: "labels", + type: "array", + innerType: "string", + required: false, + description: "Labels to assign.", + enum: null, + }, + ], + }), + ]) + ); + + expect(markdown).toContain("**Parameters:**"); + expect(markdown).toContain("- `repo`: `string` *(required)*"); + expect(markdown).toContain(" - The repository name."); + expect(markdown).toContain("- `title`: `string` *(required)*"); + expect(markdown).toContain("- `labels`: `array[string]` *(optional)*"); + expect(markdown).toContain(" - Labels to assign."); + }); + + it("includes enum values for parameters", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([ + makeTool("Github.ListIssues", { + parameters: [ + { + name: "state", + type: "string", + required: false, + description: "Filter by state.", + enum: ["open", "closed", "all"], + }, + ], + }), + ]) + ); + + expect(markdown).toContain( + "- Allowed values: `open`, `closed`, `all`" + ); + }); + + it("includes per-tool OAuth scopes", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([ + makeTool("Github.CreateIssue", { + auth: { + providerId: "github", + providerType: "oauth2", + scopes: ["repo", "write:issues"], + }, + }), + ]) + ); + + expect(markdown).toContain("**OAuth Scopes:**"); + expect(markdown).toContain("- `repo`"); + expect(markdown).toContain("- `write:issues`"); + }); + + it("includes required secrets with type classification", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([ + makeTool("Stripe.CreateCustomer", { + secrets: ["STRIPE_SECRET_KEY"], + secretsInfo: [{ name: "STRIPE_SECRET_KEY", type: "api_key" }], + }), + ]) + ); + + expect(markdown).toContain("**Required Secrets:**"); + expect(markdown).toContain("- `STRIPE_SECRET_KEY` (api_key)"); + }); + + it("includes output type and description", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([ + makeTool("Github.CreateIssue", { + output: { + type: "json", + description: "The created issue object.", + }, + }), + ]) + ); + + expect(markdown).toContain("**Output:** `json`"); + expect(markdown).toContain("- The created issue object."); + }); + + it("includes code examples as JSON with scopes and secrets", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([ + makeTool("Github.CreateIssue", { + auth: { + providerId: "github", + providerType: "oauth2", + scopes: ["repo", "write:issues"], + }, + codeExample: { + toolName: "Github.CreateIssue", + parameters: { + repo: { value: "my-repo", type: "string", required: true }, + title: { value: "Bug fix", type: "string", required: true }, + }, + requiresAuth: true, + authProvider: "github", + }, + }), + ]) + ); + + expect(markdown).toContain("**Example:**"); + expect(markdown).toContain("```json"); + expect(markdown).toContain('"tool": "Github.CreateIssue"'); + expect(markdown).toContain('"repo": "my-repo"'); + expect(markdown).toContain('"title": "Bug fix"'); + expect(markdown).toContain('"requires_auth": true'); + expect(markdown).toContain('"auth_provider": "github"'); + expect(markdown).toContain('"scopes"'); + expect(markdown).toContain('"repo"'); + expect(markdown).toContain('"write:issues"'); + expect(markdown).toContain("```"); + }); + + it("includes secrets in code example JSON", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([ + makeTool("Stripe.CreateCustomer", { + secrets: ["STRIPE_SECRET_KEY"], + secretsInfo: [{ name: "STRIPE_SECRET_KEY", type: "api_key" }], + codeExample: { + toolName: "Stripe.CreateCustomer", + parameters: { + name: { value: "John Doe", type: "string", required: true }, + }, + requiresAuth: false, + }, + }), + ]) + ); + + expect(markdown).toContain("**Example:**"); + expect(markdown).toContain('"secrets"'); + expect(markdown).toContain('"name": "STRIPE_SECRET_KEY"'); + expect(markdown).toContain('"type": "api_key"'); + }); + + it("marks requires_auth when scopes exist, even if example flags false", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([ + makeTool("Github.CreateIssue", { + auth: { + providerId: "github", + providerType: "oauth2", + scopes: ["repo"], + }, + codeExample: { + toolName: "Github.CreateIssue", + parameters: { + repo: { value: "my-repo", type: "string", required: true }, + }, + requiresAuth: false, + }, + }), + ]) + ); + + expect(markdown).toContain('"requires_auth": true'); + expect(markdown).toContain('"scopes"'); + expect(markdown).toContain('"repo"'); + }); + + it("includes toolkit-level documentation chunks", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([makeTool("Stripe.CreateCustomer")], { + documentationChunks: [ + { + type: "markdown", + location: "auth", + position: "after", + content: + "## Auth\n\n**Required secret:** `STRIPE_SECRET_KEY`", + }, + ], + }) + ); + + expect(markdown).toContain("## Auth"); + expect(markdown).toContain("**Required secret:** `STRIPE_SECRET_KEY`"); + }); + + it("shows Parameters: None for tools without parameters", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([makeTool("Stripe.RetrieveBalance")]) + ); + + expect(markdown).toContain("**Parameters:** None"); + }); + + it("includes quick reference section with links", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([ + makeTool("Github.CreateIssue"), + makeTool("Github.ListIssues"), + ]) + ); + + expect(markdown).toContain("### Quick Reference"); + expect(markdown).toContain( + "- [`Github.CreateIssue`](#githubcreateissue)" + ); + expect(markdown).toContain( + "- [`Github.ListIssues`](#githublistissues)" + ); + }); + + it("includes Tool Details section", () => { + const markdown = toolkitDataToSearchMarkdown( + makeToolkit([makeTool("Github.CreateIssue")]) + ); + + expect(markdown).toContain("## Tool Details"); + expect(markdown).toContain("### Github.CreateIssue"); + }); +}); + diff --git a/scripts/check-redirects-utils.ts b/scripts/check-redirects-utils.ts new file mode 100644 index 000000000..ef538e6c1 --- /dev/null +++ b/scripts/check-redirects-utils.ts @@ -0,0 +1,303 @@ +/** + * Utility functions for check-redirects.ts + * Extracted for testability. + */ + +import { existsSync } from "node:fs"; + +// Regex patterns +export const APP_LOCALE_PREFIX_REGEX = /^app\/[a-z]{2}\//; +export const PAGE_FILE_SUFFIX_REGEX = /\/?page\.mdx?$/; +export const LOCALE_PREFIX_REGEX = /^\/:locale\/?/; +export const PAGE_FILE_MATCH_REGEX = /page\.mdx?$/; +export const LOCALE_PATH_PREFIX_REGEX = /^\/:locale\//; +export const WILDCARD_PATH_REGEX = /\/:path\*.*$/; +export const MDX_EXTENSION_REGEX = /\.mdx$/; +export const DYNAMIC_ROUTE_REGEX = /\[[^\]]+\]/; +export const REDIRECT_REGEX = + /\{\s*source:\s*["']([^"']+)["']\s*,\s*destination:\s*["']([^"']+)["']/g; +export const REVERSED_REDIRECT_REGEX = + /\{\s*destination:\s*["']([^"']+)["']\s*,\s*source:\s*["']([^"']+)["']/g; + +export type Redirect = { + source: string; + destination: string; + permanent?: boolean; +}; + +export type DynamicRouteMove = { + oldPath: string; + newPath: string; + oldUrl: string; + newUrl: string; +}; + +/** + * Convert file path to URL path + * e.g., app/en/guides/foo/page.mdx -> /:locale/guides/foo + */ +export function fileToUrl(filePath: string): string { + const urlPath = filePath + .replace(APP_LOCALE_PREFIX_REGEX, "") + .replace(PAGE_FILE_SUFFIX_REGEX, ""); + + return urlPath ? `/:locale/${urlPath}` : "/:locale"; +} + +/** + * Convert URL path to file path + * e.g., /:locale/guides/foo -> app/en/guides/foo/page.mdx + */ +export function urlToFile(urlPath: string): string { + const pathWithoutLocale = urlPath.replace(LOCALE_PREFIX_REGEX, ""); + return pathWithoutLocale + ? `app/en/${pathWithoutLocale}/page.mdx` + : "app/en/page.mdx"; +} + +/** + * Convert a file path containing a dynamic route to a URL pattern. + * Replaces [param] with :param and [...param] with :param* + * e.g., app/en/resources/[toolkitId]/page.mdx -> /:locale/resources/:toolkitId + */ +export function dynamicFileToUrlPattern(filePath: string): string { + const urlPath = filePath + .replace(APP_LOCALE_PREFIX_REGEX, "") + .replace(PAGE_FILE_SUFFIX_REGEX, ""); + + // Replace [...param] with :param* (catch-all routes) + // Replace [param] with :param (dynamic segments) + const patternPath = urlPath + .replace(/\[\.\.\.([^\]]+)\]/g, ":$1*") + .replace(/\[([^\]]+)\]/g, ":$1"); + + return patternPath ? `/:locale/${patternPath}` : "/:locale"; +} + +/** + * Check if a dynamic route exists that could serve this URL path. + * e.g., for /resources/integrations/productivity/gmail, + * check if /resources/integrations/productivity/[toolkitId]/page.mdx exists + * + * @param urlPath - The URL path to check + * @param checkExists - Function to check if a file exists (defaults to fs.existsSync) + */ +export function dynamicRouteExists( + urlPath: string, + checkExists: (path: string) => boolean = existsSync +): boolean { + const pathWithoutLocale = urlPath.replace(LOCALE_PREFIX_REGEX, ""); + const segments = pathWithoutLocale.split("/").filter(Boolean); + + // Try replacing segments with common dynamic route patterns + const dynamicPatterns = ["[toolkitId]", "[slug]", "[id]", "[...slug]"]; + + for (let i = segments.length - 1; i >= 0; i--) { + for (const pattern of dynamicPatterns) { + const testSegments = [...segments]; + testSegments[i] = pattern; + const testPath = `app/en/${testSegments.join("/")}/page.mdx`; + if (checkExists(testPath)) { + return true; + } + const testPathMd = testPath.replace(MDX_EXTENSION_REGEX, ".md"); + if (checkExists(testPathMd)) { + return true; + } + } + } + + return false; +} + +/** + * Check if a page exists on disk + * + * @param urlPath - The URL path to check + * @param checkExists - Function to check if a file exists (defaults to fs.existsSync) + */ +export function pageExists( + urlPath: string, + checkExists: (path: string) => boolean = existsSync +): boolean { + if (urlPath.includes(":path*") || urlPath.includes(":path")) { + return true; + } + + const filePath = urlToFile(urlPath); + if (checkExists(filePath)) { + return true; + } + + const mdPath = filePath.replace(MDX_EXTENSION_REGEX, ".md"); + if (checkExists(mdPath)) { + return true; + } + + // Check if a dynamic route could serve this URL + if (dynamicRouteExists(urlPath, checkExists)) { + return true; + } + + return false; +} + +/** + * Parse git diff output for renamed dynamic route page files. + * Detects when a page.mdx inside a dynamic route folder is moved. + */ +export function parseDynamicRouteMoves(output: string): DynamicRouteMove[] { + const moves: DynamicRouteMove[] = []; + + for (const line of output.split("\n")) { + if (!line) { + continue; + } + const parts = line.split("\t"); + const status = parts[0]; + + // Only look at renames (R followed by similarity percentage) + if (!status?.startsWith("R")) { + continue; + } + + const oldPath = parts[1]; + const newPath = parts[2]; + + if (!oldPath || !newPath) { + continue; + } + + // Check if either path contains a dynamic route segment + const oldHasDynamic = DYNAMIC_ROUTE_REGEX.test(oldPath); + const newHasDynamic = DYNAMIC_ROUTE_REGEX.test(newPath); + + // We care about moves where the URL pattern changes + if (!PAGE_FILE_MATCH_REGEX.test(oldPath)) { + continue; + } + + const oldUrl = dynamicFileToUrlPattern(oldPath); + const newUrl = dynamicFileToUrlPattern(newPath); + + // Skip if the URL pattern hasn't actually changed + if (oldUrl === newUrl) { + continue; + } + + // Record the move if either path has a dynamic route + // or if the directory structure changed significantly + if (oldHasDynamic || newHasDynamic) { + moves.push({ oldPath, newPath, oldUrl, newUrl }); + } + } + + return moves; +} + +/** + * Check if a wildcard redirect already covers a dynamic route move + */ +export function isMoveCoveredByRedirect( + move: DynamicRouteMove, + redirects: Redirect[] +): boolean { + // Check for exact match or wildcard that covers the path + for (const redirect of redirects) { + // Exact pattern match + if (redirect.source === move.oldUrl) { + return true; + } + + // Check if a wildcard redirect covers this path + if (redirect.source.includes(":path*")) { + const prefix = redirect.source + .replace(WILDCARD_PATH_REGEX, "") + .replace(LOCALE_PATH_PREFIX_REGEX, ""); + const movePrefix = move.oldUrl.replace(LOCALE_PATH_PREFIX_REGEX, ""); + + if (movePrefix.startsWith(`${prefix}/`) || movePrefix === prefix) { + return true; + } + } + } + + return false; +} + +/** + * Execute regex and collect all matches + */ +export function collectRegexMatches( + regex: RegExp, + content: string, + sourceIndex: number, + destIndex: number +): Array<{ source: string; destination: string }> { + const results: Array<{ source: string; destination: string }> = []; + regex.lastIndex = 0; + + let match = regex.exec(content); + while (match !== null) { + results.push({ + source: match[sourceIndex], + destination: match[destIndex], + }); + match = regex.exec(content); + } + + return results; +} + +/** + * Parse redirects from next.config.ts content + */ +export function parseRedirects(content: string): Redirect[] { + const results: Redirect[] = []; + + // Collect standard format: { source: "...", destination: "..." } + const standardMatches = collectRegexMatches(REDIRECT_REGEX, content, 1, 2); + for (const m of standardMatches) { + results.push(m); + } + + // Collect reversed format: { destination: "...", source: "..." } + const reversedMatches = collectRegexMatches( + REVERSED_REDIRECT_REGEX, + content, + 2, + 1 + ); + for (const m of reversedMatches) { + results.push(m); + } + + return results; +} + +/** + * Check if a wildcard redirect covers a path + */ +export function checkWildcardMatch( + path: string, + redirectList: Redirect[] +): boolean { + const pathWithoutLocale = path.replace(LOCALE_PATH_PREFIX_REGEX, ""); + + for (const redirect of redirectList) { + if (redirect.source.includes(":path*")) { + const prefix = redirect.source + .replace(WILDCARD_PATH_REGEX, "") + .replace(LOCALE_PATH_PREFIX_REGEX, ""); + + if ( + pathWithoutLocale.startsWith(`${prefix}/`) || + pathWithoutLocale === prefix + ) { + return true; + } + } + } + + return false; +} diff --git a/scripts/check-redirects.ts b/scripts/check-redirects.ts index 093003ea2..23b9716af 100644 --- a/scripts/check-redirects.ts +++ b/scripts/check-redirects.ts @@ -49,6 +49,7 @@ const REDIRECT_REGEX = /\{\s*source:\s*["']([^"']+)["']\s*,\s*destination:\s*["']([^"']+)["']/g; const REVERSED_REDIRECT_REGEX = /\{\s*destination:\s*["']([^"']+)["']\s*,\s*source:\s*["']([^"']+)["']/g; +const DYNAMIC_ROUTE_REGEX = /\[[^\]]+\]/; type Redirect = { source: string; @@ -62,6 +63,13 @@ type RedirectChain = { newDest: string; }; +type DynamicRouteMove = { + oldPath: string; + newPath: string; + oldUrl: string; + newUrl: string; +}; + /** * Convert file path to URL path * e.g., app/en/guides/foo/page.mdx -> /:locale/guides/foo @@ -85,6 +93,36 @@ function urlToFile(urlPath: string): string { : "app/en/page.mdx"; } +/** + * Check if a dynamic route exists that could serve this URL path. + * e.g., for /resources/integrations/productivity/gmail, + * check if /resources/integrations/productivity/[toolkitId]/page.mdx exists + */ +function dynamicRouteExists(urlPath: string): boolean { + const pathWithoutLocale = urlPath.replace(LOCALE_PREFIX_REGEX, ""); + const segments = pathWithoutLocale.split("/").filter(Boolean); + + // Try replacing the last segment with common dynamic route patterns + const dynamicPatterns = ["[toolkitId]", "[slug]", "[id]", "[...slug]"]; + + for (let i = segments.length - 1; i >= 0; i--) { + for (const pattern of dynamicPatterns) { + const testSegments = [...segments]; + testSegments[i] = pattern; + const testPath = `app/en/${testSegments.join("/")}/page.mdx`; + if (existsSync(testPath)) { + return true; + } + const testPathMd = testPath.replace(MDX_EXTENSION_REGEX, ".md"); + if (existsSync(testPathMd)) { + return true; + } + } + } + + return false; +} + /** * Check if a page exists on disk */ @@ -103,6 +141,11 @@ function pageExists(urlPath: string): boolean { return true; } + // Check if a dynamic route could serve this URL + if (dynamicRouteExists(urlPath)) { + return true; + } + return false; } @@ -184,6 +227,159 @@ function parseGitDiffOutput( } } +/** + * Convert a file path containing a dynamic route to a URL pattern. + * Replaces [param] with :param and [...param] with :param* + * e.g., app/en/resources/[toolkitId]/page.mdx -> /:locale/resources/:toolkitId + */ +function dynamicFileToUrlPattern(filePath: string): string { + const urlPath = filePath + .replace(APP_LOCALE_PREFIX_REGEX, "") + .replace(PAGE_FILE_SUFFIX_REGEX, ""); + + // Replace [...param] with :param* (catch-all routes) + // Replace [param] with :param (dynamic segments) + const patternPath = urlPath + .replace(/\[\.\.\.([^\]]+)\]/g, ":$1*") + .replace(/\[([^\]]+)\]/g, ":$1"); + + return patternPath ? `/:locale/${patternPath}` : "/:locale"; +} + +/** + * Parse git diff output for renamed dynamic route page files. + * Detects when a page.mdx inside a dynamic route folder is moved. + */ +function parseDynamicRouteMoves( + output: string, + moves: DynamicRouteMove[] +): void { + for (const line of output.split("\n")) { + if (!line) { + continue; + } + const parts = line.split("\t"); + const status = parts[0]; + + // Only look at renames (R followed by similarity percentage) + if (!status?.startsWith("R")) { + continue; + } + + const oldPath = parts[1]; + const newPath = parts[2]; + + if (!oldPath || !newPath) { + continue; + } + + // Check if either path contains a dynamic route segment + const oldHasDynamic = DYNAMIC_ROUTE_REGEX.test(oldPath); + const newHasDynamic = DYNAMIC_ROUTE_REGEX.test(newPath); + + // We care about moves where the URL pattern changes + if (!PAGE_FILE_MATCH_REGEX.test(oldPath)) { + continue; + } + + const oldUrl = dynamicFileToUrlPattern(oldPath); + const newUrl = dynamicFileToUrlPattern(newPath); + + // Skip if the URL pattern hasn't actually changed + if (oldUrl === newUrl) { + continue; + } + + // Record the move if either path has a dynamic route + // or if the directory structure changed significantly + if (oldHasDynamic || newHasDynamic) { + moves.push({ oldPath, newPath, oldUrl, newUrl }); + } + } +} + +/** + * Get moved dynamic routes by comparing branches + */ +function getMovedDynamicRoutes( + branch: string, + checkStagedOnly: boolean +): DynamicRouteMove[] { + const moves: DynamicRouteMove[] = []; + + if (checkStagedOnly) { + try { + const stagedChanges = execSync("git diff --cached --name-status", { + encoding: "utf-8", + }); + parseDynamicRouteMoves(stagedChanges, moves); + } catch { + // Ignore errors + } + } else { + ensureBranchExists(branch); + + try { + const committedChanges = execSync( + `git diff --name-status ${branch}...HEAD`, + { encoding: "utf-8" } + ); + parseDynamicRouteMoves(committedChanges, moves); + } catch { + // Ignore errors + } + + try { + const uncommittedChanges = execSync("git diff --name-status HEAD", { + encoding: "utf-8", + }); + parseDynamicRouteMoves(uncommittedChanges, moves); + } catch { + // Ignore errors + } + } + + // Deduplicate by oldUrl + const seen = new Set(); + return moves.filter((move) => { + if (seen.has(move.oldUrl)) { + return false; + } + seen.add(move.oldUrl); + return true; + }); +} + +/** + * Check if a wildcard redirect already covers a dynamic route move + */ +function isMoveCoveredByRedirect( + move: DynamicRouteMove, + redirects: Redirect[] +): boolean { + // Check for exact match or wildcard that covers the path + for (const redirect of redirects) { + // Exact pattern match + if (redirect.source === move.oldUrl) { + return true; + } + + // Check if a wildcard redirect covers this path + if (redirect.source.includes(":path*")) { + const prefix = redirect.source + .replace(WILDCARD_PATH_REGEX, "") + .replace(LOCALE_PATH_PREFIX_REGEX, ""); + const movePrefix = move.oldUrl.replace(LOCALE_PATH_PREFIX_REGEX, ""); + + if (movePrefix.startsWith(`${prefix}/`) || movePrefix === prefix) { + return true; + } + } + } + + return false; +} + /** * Ensure base branch exists locally */ @@ -489,6 +685,7 @@ for (const file of allDeletedOrRenamed) { const hasExactRedirect = latestRedirects.some((r) => r.source === urlPath); const hasWildcardRedirect = checkWildcardMatch(urlPath, latestRedirects); + const servedByDynamicRoute = dynamicRouteExists(urlPath); if (hasExactRedirect) { console.log(colors.green(`✓ Redirect exists for: ${urlPath}`)); @@ -496,6 +693,10 @@ for (const file of allDeletedOrRenamed) { console.log( colors.green(`✓ Redirect exists for: ${urlPath} (via wildcard)`) ); + } else if (servedByDynamicRoute) { + console.log( + colors.green(`✓ URL still served by dynamic route: ${urlPath}`) + ); } else { console.log(colors.red(`✗ Missing redirect for: ${urlPath}`)); missingRedirects.push(urlPath); @@ -635,6 +836,64 @@ if (invalidRedirects.length > 0) { console.log(" (Check that the path exists under app/en/)"); } +// ============================================================ +// PART 4: Check for moved dynamic routes +// ============================================================ +const movedDynamicRoutes = getMovedDynamicRoutes(baseBranch, stagedOnly); +const uncoveredMoves = movedDynamicRoutes.filter( + (move) => !isMoveCoveredByRedirect(move, latestRedirects) +); + +if (uncoveredMoves.length > 0) { + console.log(""); + console.log( + colors.yellow( + "══════════════════════════════════════════════════════════════" + ) + ); + console.log( + colors.yellow( + `⚠ Found ${uncoveredMoves.length} moved dynamic route(s) without redirects` + ) + ); + console.log( + colors.yellow( + "══════════════════════════════════════════════════════════════" + ) + ); + console.log(""); + console.log("Dynamic routes were moved to new locations. Consider adding"); + console.log("wildcard redirects to preserve existing URLs:"); + console.log(""); + + for (const move of uncoveredMoves) { + console.log(colors.blue(` ${move.oldPath}`)); + console.log(colors.blue(` → ${move.newPath}`)); + console.log(""); + console.log(colors.yellow(" Suggested redirect:")); + console.log(` { + source: "${move.oldUrl}/:path*", + destination: "${move.newUrl}/:path*", + permanent: true, + },`); + console.log(""); + } + + console.log( + colors.yellow( + "NOTE: Review these suggestions carefully. Wildcard redirects" + ) + ); + console.log( + colors.yellow("affect all URLs under the source path. Only add them if") + ); + console.log(colors.yellow("you want to preserve all existing URLs.")); + console.log(""); + + // This is a warning, not an error - don't set exitCode = 1 + // because moved dynamic routes might be intentional breaks +} + if (exitCode === 0) { console.log( colors.green( diff --git a/scripts/generate-toolkit-markdown.ts b/scripts/generate-toolkit-markdown.ts new file mode 100644 index 000000000..015f2db91 --- /dev/null +++ b/scripts/generate-toolkit-markdown.ts @@ -0,0 +1,92 @@ +import { mkdir, rm, writeFile } from "node:fs/promises"; +import { join } from "node:path"; + +import { readToolkitData } from "../app/_lib/toolkit-data"; +import { listToolkitRoutes } from "../app/_lib/toolkit-static-params"; + +import { toolkitDataToSearchMarkdown } from "./pagefind-toolkit-content"; + +const DEFAULT_OUTPUT_ROOT = join(process.cwd(), "public", "toolkit-markdown"); + +export type GenerateToolkitMarkdownOptions = { + outputRoot?: string; + routes?: Array<{ category: string; toolkitId: string }>; + readToolkitDataFn?: typeof readToolkitData; + listToolkitRoutesFn?: typeof listToolkitRoutes; + toMarkdown?: (toolkit: Awaited>) => string; + failOnEmptyRoutes?: boolean; +}; + +type GenerateResult = { + outputRoot: string; + written: number; + skipped: number; +}; + +const shouldFailOnEmptyRoutes = (flag?: boolean): boolean => + flag ?? Boolean(process.env.CI || process.env.VERCEL); + +async function ensureCleanOutput(outputRoot: string) { + await rm(outputRoot, { recursive: true, force: true }); + await mkdir(outputRoot, { recursive: true }); +} + +export async function generateToolkitMarkdown( + options: GenerateToolkitMarkdownOptions = {} +): Promise { + const outputRoot = options.outputRoot ?? DEFAULT_OUTPUT_ROOT; + const routes = + options.routes ?? + (await (options.listToolkitRoutesFn ?? listToolkitRoutes)()); + const failOnEmpty = shouldFailOnEmptyRoutes(options.failOnEmptyRoutes); + + if (routes.length === 0) { + const message = "No toolkit routes found. Skipping markdown generation."; + if (failOnEmpty) { + throw new Error(message); + } + console.warn(message); + return { outputRoot, written: 0, skipped: 0 }; + } + + await ensureCleanOutput(outputRoot); + + let written = 0; + let skipped = 0; + + for (const route of routes) { + const data = await (options.readToolkitDataFn ?? readToolkitData)( + route.toolkitId + ); + if (!data) { + skipped += 1; + continue; + } + + const markdown = (options.toMarkdown ?? toolkitDataToSearchMarkdown)(data); + const outputDir = join(outputRoot, route.category); + const outputPath = join(outputDir, `${route.toolkitId}.md`); + + await mkdir(outputDir, { recursive: true }); + await writeFile(outputPath, markdown, "utf-8"); + written += 1; + } + + if (written === 0 && failOnEmpty) { + throw new Error( + "No toolkit markdown generated. Check data/toolkits output." + ); + } + + console.log(`Generated ${written} toolkit markdown files.`); + return { outputRoot, written, skipped }; +} + +async function main() { + await generateToolkitMarkdown(); +} + +main().catch((error) => { + console.error("Failed to generate toolkit markdown:", error); + process.exitCode = 1; +}); diff --git a/scripts/merge-custom-sections.ts b/scripts/merge-custom-sections.ts new file mode 100644 index 000000000..8f3efd1cc --- /dev/null +++ b/scripts/merge-custom-sections.ts @@ -0,0 +1,361 @@ +#!/usr/bin/env tsx + +/** + * Merge Custom Sections into Toolkit JSON Files + * + * This script: + * 1. Creates a backup of data/toolkits to data/toolkits.backup + * 2. Reads custom sections from extract-custom-sections/custom_sections.json + * 3. Merges custom sections into the corresponding toolkit JSON files + * 4. Writes updated JSON files back to data/toolkits + * + * Usage: + * npm run merge-custom-sections + * # or + * tsx scripts/merge-custom-sections.ts + * + * Options: + * --dry-run Show what would be merged without writing files + * --restore Restore from backup (data/toolkits.backup -> data/toolkits) + */ + +import { + cpSync, + existsSync, + readdirSync, + readFileSync, + rmSync, + writeFileSync, +} from "node:fs"; +import { dirname, join } from "node:path"; +import { fileURLToPath } from "node:url"; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = dirname(__filename); + +// ============================================================================= +// Types +// ============================================================================= + +type DocumentationChunk = { + type: string; + location: string; + position: string; + content: string; + header?: string; +}; + +type SubPage = { + type: string; + content: string; + relativePath: string; +}; + +type CustomSection = { + toolkitId: string; + category: string; + customImports: string[]; + documentationChunks: DocumentationChunk[]; + subPages: SubPage[]; +}; + +type CustomSectionsData = { + toolkits: Record; +}; + +type ToolkitJson = { + id: string; + label: string; + version: string; + description?: string; + summary?: string; + metadata: Record; + auth?: Record; + tools: Array>; + documentationChunks?: DocumentationChunk[]; + customImports?: string[]; + subPages?: SubPage[]; + [key: string]: unknown; +}; + +// ============================================================================= +// Configuration +// ============================================================================= + +const WORKSPACE_ROOT = join(__dirname, ".."); +const DATA_DIR = join(WORKSPACE_ROOT, "data", "toolkits"); +const BACKUP_DIR = join(WORKSPACE_ROOT, "data", "toolkits.backup"); +const CUSTOM_SECTIONS_FILE = join( + WORKSPACE_ROOT, + "extract-custom-sections", + "custom_sections.json" +); + +// ============================================================================= +// Utilities +// ============================================================================= + +function normalizeToolkitName(name: string): string { + return name + .toLowerCase() + .replace(/\s+/g, "") + .replace(/\(.*?\)/g, "") // Remove parentheses content + .replace(/[^a-z0-9]/g, ""); +} + +function findToolkitJsonFile( + toolkitLabel: string, + toolkitId: string +): string | null { + const files = readdirSync(DATA_DIR).filter( + (f) => f.endsWith(".json") && f !== "index.json" + ); + + // Try exact match with toolkitId first + const normalizedId = normalizeToolkitName(toolkitId); + const exactMatch = files.find( + (f) => normalizeToolkitName(f.replace(".json", "")) === normalizedId + ); + if (exactMatch) { + return exactMatch; + } + + // Try matching with label + const normalizedLabel = normalizeToolkitName(toolkitLabel); + const labelMatch = files.find( + (f) => normalizeToolkitName(f.replace(".json", "")) === normalizedLabel + ); + if (labelMatch) { + return labelMatch; + } + + // Try reading each file and checking the id or label + for (const file of files) { + try { + const content = readFileSync(join(DATA_DIR, file), "utf-8"); + const json = JSON.parse(content) as ToolkitJson; + if ( + normalizeToolkitName(json.id) === normalizedId || + normalizeToolkitName(json.id) === normalizedLabel || + (json.label && normalizeToolkitName(json.label) === normalizedLabel) + ) { + return file; + } + } catch (error) {} + } + + return null; +} + +function createBackup(dryRun: boolean): void { + if (dryRun) { + console.log(`[DRY RUN] Would create backup: ${BACKUP_DIR}`); + return; + } + + if (existsSync(BACKUP_DIR)) { + console.log(`⚠️ Backup already exists at: ${BACKUP_DIR}`); + console.log(" Removing old backup..."); + rmSync(BACKUP_DIR, { recursive: true, force: true }); + } + + console.log(`📦 Creating backup: ${BACKUP_DIR}`); + cpSync(DATA_DIR, BACKUP_DIR, { recursive: true }); + console.log("✅ Backup created successfully\n"); +} + +function restoreFromBackup(): void { + if (!existsSync(BACKUP_DIR)) { + console.error("❌ No backup found at:", BACKUP_DIR); + process.exit(1); + } + + console.log(`♻️ Restoring from backup: ${BACKUP_DIR}`); + + // Remove current data dir + if (existsSync(DATA_DIR)) { + rmSync(DATA_DIR, { recursive: true, force: true }); + } + + // Copy backup to data dir + cpSync(BACKUP_DIR, DATA_DIR, { recursive: true }); + console.log("✅ Restored successfully from backup\n"); +} + +function mergeCustomSections( + toolkit: ToolkitJson, + customSection: CustomSection +): ToolkitJson { + const merged = { ...toolkit }; + + // Merge documentationChunks + if ( + customSection.documentationChunks && + customSection.documentationChunks.length > 0 + ) { + merged.documentationChunks = [ + ...(merged.documentationChunks || []), + ...customSection.documentationChunks, + ]; + } + + // Merge customImports + if (customSection.customImports && customSection.customImports.length > 0) { + merged.customImports = [ + ...(merged.customImports || []), + ...customSection.customImports, + ]; + } + + // Merge subPages + if (customSection.subPages && customSection.subPages.length > 0) { + merged.subPages = [...(merged.subPages || []), ...customSection.subPages]; + } + + return merged; +} + +function formatJson(data: unknown): string { + return JSON.stringify(data, null, 2) + "\n"; +} + +// ============================================================================= +// Main +// ============================================================================= + +function main(): void { + const args = process.argv.slice(2); + const dryRun = args.includes("--dry-run"); + const restore = args.includes("--restore"); + + console.log("🔧 Merge Custom Sections Script\n"); + console.log(`Working directory: ${WORKSPACE_ROOT}`); + console.log(`Data directory: ${DATA_DIR}`); + console.log(`Backup directory: ${BACKUP_DIR}`); + console.log(`Custom sections: ${CUSTOM_SECTIONS_FILE}\n`); + + // Handle restore mode + if (restore) { + restoreFromBackup(); + return; + } + + // Verify directories exist + if (!existsSync(DATA_DIR)) { + console.error("❌ Data directory not found:", DATA_DIR); + process.exit(1); + } + + if (!existsSync(CUSTOM_SECTIONS_FILE)) { + console.error("❌ Custom sections file not found:", CUSTOM_SECTIONS_FILE); + process.exit(1); + } + + // Create backup + createBackup(dryRun); + + // Read custom sections + console.log("📖 Reading custom sections..."); + const customSectionsContent = readFileSync(CUSTOM_SECTIONS_FILE, "utf-8"); + const customSectionsData = JSON.parse( + customSectionsContent + ) as CustomSectionsData; + const toolkitCount = Object.keys(customSectionsData.toolkits).length; + console.log(` Found ${toolkitCount} toolkits with custom sections\n`); + + // Process each toolkit + let processedCount = 0; + let skippedCount = 0; + let errorCount = 0; + + for (const [toolkitLabel, customSection] of Object.entries( + customSectionsData.toolkits + )) { + console.log( + `\n📝 Processing: ${toolkitLabel} (ID: ${customSection.toolkitId})` + ); + + // Find the corresponding JSON file + const jsonFile = findToolkitJsonFile(toolkitLabel, customSection.toolkitId); + if (!jsonFile) { + console.log(" ⚠️ No matching JSON file found - SKIPPED"); + skippedCount++; + continue; + } + + console.log(` Found file: ${jsonFile}`); + + try { + // Read the toolkit JSON + const toolkitPath = join(DATA_DIR, jsonFile); + const toolkitContent = readFileSync(toolkitPath, "utf-8"); + const toolkitJson = JSON.parse(toolkitContent) as ToolkitJson; + + // Check if there's anything to merge + const hasDocChunks = customSection.documentationChunks?.length > 0; + const hasImports = customSection.customImports?.length > 0; + const hasSubPages = customSection.subPages?.length > 0; + + if (!(hasDocChunks || hasImports || hasSubPages)) { + console.log(" ℹ️ No custom sections to merge - SKIPPED"); + skippedCount++; + continue; + } + + console.log(" Merging:"); + if (hasDocChunks) { + console.log( + ` - ${customSection.documentationChunks.length} documentation chunks` + ); + } + if (hasImports) { + console.log( + ` - ${customSection.customImports.length} custom imports` + ); + } + if (hasSubPages) { + console.log(` - ${customSection.subPages.length} sub-pages`); + } + + // Merge the custom sections + const mergedToolkit = mergeCustomSections(toolkitJson, customSection); + + // Write the merged JSON + if (dryRun) { + console.log(" [DRY RUN] Would write merged JSON"); + } else { + writeFileSync(toolkitPath, formatJson(mergedToolkit)); + console.log(" ✅ Merged successfully"); + } + + processedCount++; + } catch (error) { + console.error(" ❌ Error processing toolkit:", error); + errorCount++; + } + } + + // Summary + console.log("\n" + "=".repeat(60)); + console.log("📊 Summary"); + console.log("=".repeat(60)); + console.log(`Total toolkits in custom_sections.json: ${toolkitCount}`); + console.log(`✅ Successfully processed: ${processedCount}`); + console.log(`⚠️ Skipped (no match or no content): ${skippedCount}`); + console.log(`❌ Errors: ${errorCount}`); + console.log("=".repeat(60)); + + if (dryRun) { + console.log("\n⚠️ DRY RUN MODE - No files were modified"); + console.log(" Run without --dry-run to apply changes"); + } else { + console.log("\n✅ Custom sections merged successfully!"); + console.log(` Backup available at: ${BACKUP_DIR}`); + console.log( + " To restore backup: npm run merge-custom-sections -- --restore" + ); + } +} + +// Run the script +main(); diff --git a/scripts/pagefind-toolkit-content.ts b/scripts/pagefind-toolkit-content.ts new file mode 100644 index 000000000..7f82656b1 --- /dev/null +++ b/scripts/pagefind-toolkit-content.ts @@ -0,0 +1,339 @@ +import type { + ToolkitData, + ToolDefinition, + ToolParameter, + ToolAuth, + ToolkitAuth, + ToolSecret, + ToolCodeExample, +} from "@/app/_components/toolkit-docs/types"; + +const TOOL_LIMIT = 500; + +// ============================================================================ +// Helper Functions +// ============================================================================ + +/** + * Format a parameter type with innerType for arrays + */ +function formatParameterType(param: ToolParameter): string { + if (param.type === "array" && param.innerType) { + return `array[${param.innerType}]`; + } + return param.type; +} + +/** + * Format authentication information for toolkit level + */ +function formatToolkitAuth(auth: ToolkitAuth | null): string[] { + if (!auth) { + return []; + } + + const lines: string[] = ["", "## Authentication", ""]; + + if (auth.type === "oauth2") { + lines.push(`**Type:** OAuth 2.0`); + if (auth.providerId) { + lines.push(`**Provider:** ${auth.providerId}`); + } + if (auth.allScopes && auth.allScopes.length > 0) { + lines.push("", "**Required scopes:**"); + for (const scope of auth.allScopes) { + lines.push(`- \`${scope}\``); + } + } + } else if (auth.type === "api_key") { + lines.push(`**Type:** API Key`); + if (auth.providerId) { + lines.push(`**Provider:** ${auth.providerId}`); + } + } else if (auth.type === "mixed") { + lines.push(`**Type:** Mixed (OAuth 2.0 and API Keys)`); + if (auth.providerId) { + lines.push(`**Provider:** ${auth.providerId}`); + } + if (auth.allScopes && auth.allScopes.length > 0) { + lines.push("", "**OAuth scopes used:**"); + for (const scope of auth.allScopes) { + lines.push(`- \`${scope}\``); + } + } + } + + return lines; +} + +/** + * Format tool-level authentication (scopes) + */ +function formatToolAuth(auth: ToolAuth | null): string[] { + if (!auth || !auth.scopes || auth.scopes.length === 0) { + return []; + } + + const lines: string[] = [ + "", + "**OAuth Scopes:**", + ...auth.scopes.map((scope) => `- \`${scope}\``), + ]; + + return lines; +} + +/** + * Format secrets information + */ +function formatSecrets( + secrets: string[], + secretsInfo?: ToolSecret[] +): string[] { + if (!secrets || secrets.length === 0) { + return []; + } + + const lines: string[] = ["", "**Required Secrets:**"]; + + for (const secretName of secrets) { + const info = secretsInfo?.find((s) => s.name === secretName); + const typeLabel = info?.type ? ` (${info.type})` : ""; + lines.push(`- \`${secretName}\`${typeLabel}`); + } + + return lines; +} + +/** + * Format parameters as a detailed schema + */ +function formatParameters(parameters: ToolParameter[]): string[] { + if (!parameters || parameters.length === 0) { + return ["", "**Parameters:** None"]; + } + + const lines: string[] = ["", "**Parameters:**", ""]; + + for (const param of parameters) { + const requiredLabel = param.required ? " *(required)*" : " *(optional)*"; + const typeStr = formatParameterType(param); + + lines.push(`- \`${param.name}\`: \`${typeStr}\`${requiredLabel}`); + + if (param.description) { + lines.push(` - ${param.description}`); + } + + if (param.enum && param.enum.length > 0) { + lines.push(` - Allowed values: ${param.enum.map((v) => `\`${v}\``).join(", ")}`); + } + + if (param.default !== undefined) { + lines.push(` - Default: \`${JSON.stringify(param.default)}\``); + } + } + + return lines; +} + +/** + * Format output schema + */ +function formatOutput(output: { type: string; description: string | null } | null): string[] { + if (!output) { + return []; + } + + const lines: string[] = ["", `**Output:** \`${output.type}\``]; + if (output.description) { + lines.push(`- ${output.description}`); + } + + return lines; +} + +/** + * Format code example as JSON schema with full tool metadata + */ +function formatCodeExample( + codeExample: ToolCodeExample | undefined, + auth: ToolAuth | null, + secrets: string[], + secretsInfo?: ToolSecret[] +): string[] { + if (!codeExample) { + return []; + } + + const lines: string[] = ["", "**Example:**", ""]; + + // Create a simplified example object for parameters + const exampleParams: Record = {}; + for (const [key, val] of Object.entries(codeExample.parameters)) { + exampleParams[key] = val.value; + } + + // Build the full tool JSON schema + const toolSchema: Record = { + tool: codeExample.toolName, + parameters: exampleParams, + }; + + // Add authentication info + const hasAuthScopes = Boolean(auth?.scopes && auth.scopes.length > 0); + if (codeExample.requiresAuth || hasAuthScopes) { + toolSchema.requires_auth = codeExample.requiresAuth || hasAuthScopes; + if (codeExample.authProvider) { + toolSchema.auth_provider = codeExample.authProvider; + } + if (hasAuthScopes) { + toolSchema.scopes = auth.scopes; + } + } + + // Add secrets info + if (secrets && secrets.length > 0) { + const secretsWithTypes = secrets.map((secretName) => { + const info = secretsInfo?.find((s) => s.name === secretName); + return { + name: secretName, + type: info?.type ?? "unknown", + }; + }); + toolSchema.secrets = secretsWithTypes; + } + + const exampleJson = JSON.stringify(toolSchema, null, 2); + + lines.push("```json", exampleJson, "```"); + + return lines; +} + +/** + * Format a complete tool definition with all details + */ +function formatToolDefinition(tool: ToolDefinition): string[] { + const lines: string[] = []; + + // Tool header + lines.push(`### ${tool.qualifiedName}`); + lines.push(""); + + // Version info + if (tool.fullyQualifiedName && tool.fullyQualifiedName !== tool.qualifiedName) { + const version = tool.fullyQualifiedName.split("@")[1]; + if (version) { + lines.push(`**Version:** ${version}`); + } + } + + // Description + if (tool.description) { + lines.push(""); + lines.push(tool.description); + } + + // Parameters + lines.push(...formatParameters(tool.parameters)); + + // Auth scopes + lines.push(...formatToolAuth(tool.auth)); + + // Secrets + lines.push(...formatSecrets(tool.secrets, tool.secretsInfo)); + + // Output + lines.push(...formatOutput(tool.output)); + + // Code example with auth and secrets + lines.push(...formatCodeExample(tool.codeExample, tool.auth, tool.secrets, tool.secretsInfo)); + + lines.push(""); + + return lines; +} + +// ============================================================================ +// Main Export +// ============================================================================ + +/** + * Convert toolkit data to comprehensive markdown documentation + * Includes all available information: parameters, auth, secrets, examples + */ +export function toolkitDataToSearchMarkdown(toolkit: ToolkitData): string { + const title = toolkit.label || toolkit.id; + const sections: string[] = []; + + // Title + sections.push(`# ${title}`); + + // Version + if (toolkit.version) { + sections.push(`**Version:** ${toolkit.version}`); + } + + // Description + if (toolkit.description) { + sections.push("", toolkit.description); + } + + // Summary (LLM-generated overview) + if (toolkit.summary) { + sections.push("", "## Overview", "", toolkit.summary); + } + + // Authentication + sections.push(...formatToolkitAuth(toolkit.auth)); + + // Toolkit-level documentation chunks + if (toolkit.documentationChunks && toolkit.documentationChunks.length > 0) { + for (const chunk of toolkit.documentationChunks) { + if (chunk.content) { + sections.push("", chunk.content); + } + } + } + + // Tools section + const toolsToInclude = toolkit.tools.slice(0, TOOL_LIMIT); + const truncatedCount = Math.max(0, toolkit.tools.length - toolsToInclude.length); + + sections.push("", "## Tools", ""); + sections.push(`This toolkit provides **${toolkit.tools.length} tools**:`); + sections.push(""); + + // Quick reference list + sections.push("### Quick Reference"); + sections.push(""); + for (const tool of toolsToInclude) { + const desc = tool.description ? ` — ${tool.description.split("\n")[0]}` : ""; + sections.push(`- [\`${tool.qualifiedName}\`](#${tool.qualifiedName.toLowerCase().replace(/\./g, "")})${desc}`); + } + + if (truncatedCount > 0) { + sections.push(""); + sections.push(`*... and ${truncatedCount} more tools.*`); + } + + // Detailed tool definitions + sections.push("", "---", ""); + sections.push("## Tool Details"); + sections.push(""); + + for (const tool of toolsToInclude) { + sections.push(...formatToolDefinition(tool)); + sections.push("---", ""); + } + + // Footer + if (toolkit.generatedAt) { + sections.push(""); + sections.push(`*Documentation generated: ${toolkit.generatedAt}*`); + } + + return sections.join("\n"); +} + diff --git a/scripts/pagefind.ts b/scripts/pagefind.ts index 0b19c0e09..e5cdf1d6f 100644 --- a/scripts/pagefind.ts +++ b/scripts/pagefind.ts @@ -6,6 +6,9 @@ import { createIndex } from "pagefind"; import rehypeStringify from "rehype-stringify"; import { remark } from "remark"; import remarkRehype from "remark-rehype"; +import { readToolkitData } from "@/app/_lib/toolkit-data"; +import { listToolkitRoutes } from "@/app/_lib/toolkit-static-params"; +import { toolkitDataToSearchMarkdown } from "./pagefind-toolkit-content"; const __filename = fileURLToPath(import.meta.url); const __dirname = dirname(__filename); @@ -100,6 +103,14 @@ for (const language of languages) { console.log(`Adding directory: ${searchPath}`); for (const entry of glob.sync("**/*.mdx", { cwd: searchPath })) { + // Skip dynamic templates (we index concrete toolkit pages separately). + if ( + entry.includes("resources/integrations") && + entry.includes("[toolkitId]/page.mdx") + ) { + continue; + } + const filePath = path.join(searchPath, entry); const url = `/${language}/${entry.split("/page.mdx")[0]}`; const mdxContent = await fs.readFile(filePath, "utf-8"); @@ -122,6 +133,39 @@ for (const language of languages) { page_count += 1; } + + // Index toolkit docs pages (rendered from JSON), so search can find tools. + // These pages live under /en/resources/integrations//. + if (language === "en") { + const toolkitRoutes = await listToolkitRoutes(); + for (const route of toolkitRoutes) { + const toolkitData = await readToolkitData(route.toolkitId); + if (!toolkitData) { + continue; + } + + const url = `/en/resources/integrations/${route.category}/${route.toolkitId}`; + const markdown = toolkitDataToSearchMarkdown(toolkitData); + const htmlContent = await markdownToHtml(markdown); + + const { errors, file } = await index.addHTMLFile({ + url, + content: `${htmlContent}`, + }); + + const fileInfo = file + ? ` (${file.uniqueWords} words${file.meta?.title ? `, title: ${file.meta.title}` : ""})` + : ""; + console.log(`Adding page: ${url}${fileInfo}`); + + if (errors.length > 0) { + console.error(`Error adding page: ${url}`); + console.error(errors); + } + + page_count += 1; + } + } } console.log(`Added ${page_count} pages`); diff --git a/scripts/tsconfig.json b/scripts/tsconfig.json new file mode 100644 index 000000000..e3f891ef2 --- /dev/null +++ b/scripts/tsconfig.json @@ -0,0 +1,15 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "baseUrl": "..", + "paths": { + "@/*": ["./*"] + } + }, + "include": [ + "./**/*.ts" + ], + "exclude": [ + "node_modules" + ] +} diff --git a/scripts/validate-merge.ts b/scripts/validate-merge.ts new file mode 100644 index 000000000..a779e923f --- /dev/null +++ b/scripts/validate-merge.ts @@ -0,0 +1,125 @@ +#!/usr/bin/env tsx + +/** + * Validate Merged Custom Sections + * + * This script validates that custom sections were properly merged into toolkit JSON files. + * It checks for the presence of expected fields and provides a summary. + * + * Usage: + * tsx scripts/validate-merge.ts + */ + +import { existsSync, readdirSync, readFileSync } from "node:fs"; +import { dirname, join } from "node:path"; +import { fileURLToPath } from "node:url"; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = dirname(__filename); + +const WORKSPACE_ROOT = join(__dirname, ".."); +const DATA_DIR = join(WORKSPACE_ROOT, "data", "toolkits"); + +type ToolkitJson = { + id: string; + label: string; + documentationChunks?: Array>; + customImports?: string[]; + subPages?: Array>; +}; + +function main(): void { + console.log("🔍 Validating Merged Custom Sections\n"); + + if (!existsSync(DATA_DIR)) { + console.error("❌ Data directory not found:", DATA_DIR); + process.exit(1); + } + + const files = readdirSync(DATA_DIR).filter( + (f) => f.endsWith(".json") && f !== "index.json" + ); + + let totalToolkits = 0; + let withDocChunks = 0; + let withCustomImports = 0; + let withSubPages = 0; + const detailedResults: Array<{ + file: string; + label: string; + hasDocChunks: boolean; + hasImports: boolean; + hasSubPages: boolean; + docChunksCount: number; + importsCount: number; + subPagesCount: number; + }> = []; + + for (const file of files) { + try { + const content = readFileSync(join(DATA_DIR, file), "utf-8"); + const json = JSON.parse(content) as ToolkitJson; + totalToolkits++; + + const hasDocChunks = (json.documentationChunks?.length ?? 0) > 0; + const hasImports = (json.customImports?.length ?? 0) > 0; + const hasSubPages = (json.subPages?.length ?? 0) > 0; + + if (hasDocChunks) withDocChunks++; + if (hasImports) withCustomImports++; + if (hasSubPages) withSubPages++; + + if (hasDocChunks || hasImports || hasSubPages) { + detailedResults.push({ + file, + label: json.label || json.id, + hasDocChunks, + hasImports, + hasSubPages, + docChunksCount: json.documentationChunks?.length ?? 0, + importsCount: json.customImports?.length ?? 0, + subPagesCount: json.subPages?.length ?? 0, + }); + } + } catch (error) { + console.error(`⚠️ Error reading ${file}:`, error); + } + } + + // Summary + console.log("=".repeat(60)); + console.log("📊 Summary"); + console.log("=".repeat(60)); + console.log(`Total toolkit JSON files: ${totalToolkits}`); + console.log(`With documentation chunks: ${withDocChunks}`); + console.log(`With custom imports: ${withCustomImports}`); + console.log(`With sub-pages: ${withSubPages}`); + console.log(`Total with custom sections: ${detailedResults.length}`); + console.log("=".repeat(60)); + + if (detailedResults.length > 0) { + console.log("\n📝 Toolkits with Custom Sections:\n"); + + for (const result of detailedResults.sort((a, b) => + a.label.localeCompare(b.label) + )) { + const badges: string[] = []; + if (result.hasDocChunks) + badges.push(`📄 ${result.docChunksCount} doc chunks`); + if (result.hasImports) badges.push(`📦 ${result.importsCount} imports`); + if (result.hasSubPages) + badges.push(`📑 ${result.subPagesCount} sub-pages`); + + console.log(` ${result.label}`); + console.log(` ${badges.join(" | ")}`); + } + } else { + console.log("\n⚠️ No toolkits found with custom sections."); + console.log(" Did you run the merge script? Run:"); + console.log(" npm run merge-custom-sections"); + } + + console.log("\n✅ Validation complete!"); +} + +main(); diff --git a/tests/broken-link-check.test.ts b/tests/broken-link-check.test.ts index 6bcacb1f2..943652ca9 100644 --- a/tests/broken-link-check.test.ts +++ b/tests/broken-link-check.test.ts @@ -1,4 +1,4 @@ -import { readFileSync } from "node:fs"; +import { existsSync, readFileSync } from "node:fs"; import { join } from "node:path"; import fg from "fast-glob"; import { scanURLs, validateFiles } from "next-validate-link"; @@ -8,6 +8,8 @@ const TIMEOUT = 30_000; const staticFiles = ["/llms.txt", "/robots.txt", "/sitemap.xml"]; +const toolkitDataDir = join(process.cwd(), "data", "toolkits"); + // Function to validate anchor fragments by checking file content function validateAnchorFragment(filePath: string, fragment: string): boolean { try { @@ -40,6 +42,88 @@ function validateAnchorFragment(filePath: string, fragment: string): boolean { } } +function toToolAnchorId(value: string): string { + return value.toLowerCase().replace(/\s+/g, "-").replace(".", ""); +} + +const SUPPORTED_LOCALES = ["en", "es", "pt-BR"] as const; +const SUPPORTED_INTEGRATION_CATEGORIES = [ + "productivity", + "development", + "social", + "databases", + "search", + "sales", + "payments", + "customer-support", + "entertainment", + "others", +] as const; + +function validateToolkitIntegrationRoute( + urlPath: string, + fragment?: string +): boolean { + // urlPath can be: + // - /resources/integrations// + // - /en/resources/integrations// + // (toolkitSlug is the lowercased toolkit id, e.g. githubapi) + const parts = urlPath.split("/").filter(Boolean); + + let cursor = 0; + const maybeLocale = parts[cursor]; + if ( + maybeLocale && + (SUPPORTED_LOCALES as readonly string[]).includes(maybeLocale) + ) { + cursor += 1; + } + + if (parts[cursor] !== "resources" || parts[cursor + 1] !== "integrations") { + return false; + } + + const category = parts[cursor + 2]; + const slug = parts[cursor + 3]; + if (!(category && slug)) { + return false; + } + + if ( + !(SUPPORTED_INTEGRATION_CATEGORIES as readonly string[]).includes(category) + ) { + return false; + } + + const jsonPath = join(toolkitDataDir, `${slug}.json`); + if (!existsSync(jsonPath)) { + return false; + } + + if (!fragment) { + return true; + } + + const normalized = fragment.toLowerCase(); + if (normalized === "available-tools" || normalized === "get-building") { + return true; + } + + try { + const content = readFileSync(jsonPath, "utf-8"); + const toolkit = JSON.parse(content) as { + tools?: Array<{ qualifiedName: string }>; + }; + const anchors = new Set(); + for (const tool of toolkit.tools ?? []) { + anchors.add(toToolAnchorId(tool.qualifiedName)); + } + return anchors.has(normalized); + } catch { + return false; + } +} + test( "check for broken links", async () => { @@ -56,6 +140,18 @@ test( url.startsWith("/es/") || url.startsWith("/pt-BR/") ) { + // Special-case dynamic toolkit preview routes (not enumerated by scanURLs). + const [path, fragment] = url.split("#"); + if (path.startsWith("/en/resources/integrations/")) { + return validateToolkitIntegrationRoute(path, fragment); + } + if (path.startsWith("/es/resources/integrations/")) { + return validateToolkitIntegrationRoute(path, fragment); + } + if (path.startsWith("/pt-BR/resources/integrations/")) { + return validateToolkitIntegrationRoute(path, fragment); + } + return false; // Let the normal validation handle these } @@ -66,6 +162,12 @@ test( if (url.startsWith("/")) { // Split URL and anchor fragment const [path, fragment] = url.split("#"); + + // Special-case dynamic toolkit integration routes (not enumerated by scanURLs). + if (path.startsWith("/resources/integrations/")) { + return validateToolkitIntegrationRoute(path, fragment); + } + const localeUrl = `/en${path}`; if (staticFiles.includes(path)) { diff --git a/tests/workflows/generate-toolkit-docs-porter.test.ts b/tests/workflows/generate-toolkit-docs-porter.test.ts new file mode 100644 index 000000000..8b4e58d46 --- /dev/null +++ b/tests/workflows/generate-toolkit-docs-porter.test.ts @@ -0,0 +1,25 @@ +import { readFileSync } from "node:fs"; +import { join } from "node:path"; +import { expect, test } from "vitest"; + +const workflowPath = join( + process.cwd(), + ".github", + "workflows", + "generate-toolkit-docs-porter.yml" +); + +const workflowContents = readFileSync(workflowPath, "utf-8"); + +test("porter workflow includes required triggers", () => { + expect(workflowContents).toContain("repository_dispatch"); + expect(workflowContents).toContain("porter_deploy_succeeded"); + expect(workflowContents).toContain("workflow_dispatch"); +}); + +test("porter workflow generates docs and opens a PR", () => { + expect(workflowContents).toContain("pnpm start generate"); + expect(workflowContents).toContain("--skip-unchanged"); + expect(workflowContents).toContain("peter-evans/create-pull-request"); + expect(workflowContents).toContain("pull-requests: write"); +}); diff --git a/toolkit-docs-generator/.cursorrules b/toolkit-docs-generator/.cursorrules new file mode 100644 index 000000000..bb9de7b58 --- /dev/null +++ b/toolkit-docs-generator/.cursorrules @@ -0,0 +1,157 @@ +# Toolkit Docs Generator - Agent Rules + +This document contains rules and guidelines for AI agents working on this project. + +## General Code Quality Rules + +### 1. Testing Philosophy + +**CRITICAL: Avoid mocks whenever possible.** + +- Prefer **real implementations** over mocks +- Use **in-memory implementations** of interfaces for testing (e.g., `InMemoryToolDataSource`) +- Use **test fixtures** with realistic data instead of mocked responses +- Only use mocks when absolutely necessary (e.g., external HTTP calls that can't be avoided) +- When mocks are unavoidable, document why in a comment + +**Good example:** +```typescript +// Use real implementation with test data +const source = new InMemoryToolDataSource(testFixtures.tools); +const result = await source.fetchToolsByToolkit('Github'); +expect(result).toHaveLength(5); +``` + +**Bad example:** +```typescript +// Avoid this - don't mock the interface +const mockSource = vi.fn().mockResolvedValue(tools); +``` + +### 2. Functional Programming Principles + +- Prefer **pure functions** over classes with mutable state +- Use **immutable data structures** (spread operator, Object.freeze) +- Favor **composition** over inheritance +- Use **pipeline/pipe** patterns for data transformations +- Avoid side effects in core logic; isolate them at boundaries + +### 3. TypeScript Strict Mode + +- Enable all strict checks in tsconfig.json +- Never use `any` type - use `unknown` and narrow properly +- Always define explicit return types for public functions +- Use `readonly` for arrays and objects that shouldn't be mutated + +### 4. Error Handling + +- Use typed error classes (extend `Error`) +- Never throw generic errors - always provide context +- Use `Result` pattern for operations that can fail predictably +- Log errors with sufficient context for debugging + +## Project-Specific Rules + +### 5. Data Source Abstraction + +When implementing data sources: +- Always implement the interface completely +- Provide an in-memory implementation for testing +- Handle null/undefined gracefully with defaults +- Normalize IDs for case-insensitive matching + +### 6. CLI Input Format + +The CLI accepts providers and versions as input: +```bash +# Single provider with version +toolkit-docs-generator generate --providers "Github:1.0.0" + +# Multiple providers with versions +toolkit-docs-generator generate --providers "Github:1.0.0,Slack:2.1.0,Linear:1.5.0" + +# All providers (latest versions) +toolkit-docs-generator generate-all +``` + +### 7. Output JSON Schema + +Always validate output against Zod schemas before writing files. + +### 8. Verification Commands + +Before committing changes, ALWAYS run: +```bash +pnpm lint # Check code style +pnpm typecheck # Verify types +pnpm test # Run all tests +``` + +Or use make commands from the root docs project: +```bash +make test # Run tests +``` + +## Code Style + +### 9. Imports + +- Use `.js` extension for local imports (ES modules) +- Group imports: external packages first, then local modules +- Use named exports, avoid default exports + +### 10. Naming Conventions + +- **Files**: kebab-case (e.g., `engine-api.ts`) +- **Types/Interfaces**: PascalCase (e.g., `ToolDefinition`) +- **Functions**: camelCase (e.g., `fetchToolsByToolkit`) +- **Constants**: SCREAMING_SNAKE_CASE (e.g., `DEFAULT_TIMEOUT`) + +### 11. Documentation + +- Add JSDoc comments to all public functions +- Include `@param` and `@returns` for complex functions +- Add `@example` blocks for non-obvious usage + +## Testing Rules + +### 12. Test Structure + +```typescript +describe('ModuleName', () => { + describe('functionName', () => { + it('should handle normal case', () => { ... }); + it('should handle edge case', () => { ... }); + it('should throw on invalid input', () => { ... }); + }); +}); +``` + +### 13. Test Data + +- Store test fixtures in `tests/fixtures/` +- Use realistic data that matches production schema +- Include edge cases: empty arrays, null values, special characters + +### 14. Coverage Requirements + +- Aim for >80% code coverage +- Focus on branch coverage for conditionals +- Don't test implementation details, test behavior + +## LLM Integration Rules + +### 15. LLM Calls + +- Always implement retry logic with exponential backoff +- Use concurrency limits to avoid rate limiting +- Validate LLM output with Zod schemas +- Provide fallback values when LLM fails +- Log LLM failures for debugging + +### 16. Prompt Engineering + +- Keep system prompts concise and specific +- Include examples in prompts for better results +- Request JSON output explicitly +- Validate and parse responses safely diff --git a/toolkit-docs-generator/.gitignore b/toolkit-docs-generator/.gitignore new file mode 100644 index 000000000..38c0afc46 --- /dev/null +++ b/toolkit-docs-generator/.gitignore @@ -0,0 +1,27 @@ +# Dependencies +node_modules/ + +# Build output +dist/ + +# Output directory +output/ + +# IDE +.idea/ +.vscode/ + +# OS files +.DS_Store +Thumbs.db + +# Test coverage +coverage/ + +# Logs +*.log +npm-debug.log* + +# Environment +.env +.env.local diff --git a/toolkit-docs-generator/ARCHITECTURE.md b/toolkit-docs-generator/ARCHITECTURE.md new file mode 100644 index 000000000..81941a475 --- /dev/null +++ b/toolkit-docs-generator/ARCHITECTURE.md @@ -0,0 +1,80 @@ +# Toolkit docs generator architecture + +This document explains how the toolkit docs generator assembles JSON output and how that output is rendered in the docs site. + +## Overview + +The generator builds toolkit JSON files from multiple sources and writes them to an output directory. The docs site reads these JSON files and renders them into pages at build time. + +The generator does **not** render HTML. It produces structured JSON and optional markdown snippets that the app renders later. + +## Data flow + +1. Fetch tool definitions from the Engine API or Arcade API. +2. Load toolkit metadata from the design system or mock metadata. +3. Load custom sections from JSON files (optional). +4. Merge all data into `MergedToolkit` objects. +5. Write a JSON file per toolkit and an `index.json` file. +6. Optionally verify output and compute diffs. + +## Core components + +### Data sources + +- `EngineApiSource` fetches tool metadata from the Engine API. +- `ArcadeApiSource` fetches tool metadata from the Arcade API. +- `DesignSystemMetadataSource` loads toolkit metadata from `@arcadeai/design-system`. +- `CustomSectionsFileSource` loads custom documentation chunks from a JSON file. +- `CombinedToolkitDataSource` merges tools and metadata into one interface. + +### Merger + +`DataMerger` creates `MergedToolkit` objects by combining tools, metadata, and custom sections. + +It also: +- Computes tool signatures for change detection. +- Generates optional tool examples and summaries with LLMs. +- Tracks warnings and failed tools. + +### Generator + +`JsonGenerator` writes the final output: + +- `.json` for each toolkit +- `index.json` for lookup and metadata + +It can also verify output consistency with `OutputVerifier`. + +### Diffing + +`ToolkitDiff` compares new output to previous output. It reports: +- new toolkits +- removed toolkits +- modified toolkits +- version-only changes + +## Rendering in the docs site + +The generator output is consumed by the Next.js app: + +- The app loads JSON from `data/toolkits/`. +- Toolkit pages are statically generated using those files. +- Custom documentation chunks are rendered as MDX in the UI. + +If you need HTML output, add a separate build step in the app. The generator intentionally avoids HTML to keep the pipeline deterministic. + +## Static page generation + +Static generation happens in the app, not in this generator. + +The generator only provides JSON and markdown content. The app turns those into static HTML during its build. + +## Key files + +- `src/sources/engine-api.ts` — tool metadata from Engine API +- `src/sources/toolkit-data-source.ts` — unified data source +- `src/merger/data-merger.ts` — merge pipeline +- `src/generator/json-generator.ts` — output writer +- `src/generator/output-verifier.ts` — output validation +- `src/diff/toolkit-diff.ts` — change detection +- `src/cli/index.ts` — CLI entry point diff --git a/toolkit-docs-generator/README.md b/toolkit-docs-generator/README.md new file mode 100644 index 000000000..c7d9ffd06 --- /dev/null +++ b/toolkit-docs-generator/README.md @@ -0,0 +1,141 @@ +# Generate toolkit docs + +This guide explains how Arcade generates toolkit JSON, how the GitHub workflow runs, and how the docs site renders the output. Use this file as the single source of truth for toolkit generation in this repo. + +## What gets generated + +- `data/toolkits/.json` for each toolkit +- `data/toolkits/index.json` with category, type, version, and counts +- Run logs under `toolkit-docs-generator-verification/logs` by default +- Use `--log-dir` to change the log location + +## Data sources + +The generator merges three inputs into one JSON output per toolkit: + +- **Engine API** for tool definitions, auth requirements, and scopes +- **Arcade design system** for metadata (category, icons, flags) +- **Custom sections file** (optional) for preserved or curated docs content + +It also reads the previous output when you use `--skip-unchanged` or `--previous-output`. + +When `--skip-unchanged` runs against the tool metadata API, the generator calls +`mode=summary` first to decide which toolkits need updates. It only fetches full +tool metadata for toolkits with version changes. The Engine API guarantees that +tool definitions do not change unless the toolkit version changes. + +## GitHub workflow: generate and sync + +The workflow file is `/.github/workflows/generate-toolkit-docs-porter.yml`. +It runs these steps: + +1. Generate toolkit JSON using `toolkit-docs-generator` and the Engine API. +2. Sync sidebar navigation from `data/toolkits` to the `_meta.tsx` files. +3. Create a pull request if there are changes. + +Required secrets: + +- `ENGINE_API_URL`, `ENGINE_API_KEY` +- `OPENAI_API_KEY` for LLM examples and summaries + +Optional secrets: + +- `OPENAI_MODEL` (defaults in the workflow) + +## Rendering pipeline (docs site) + +The docs site consumes the generated JSON directly: + +- `app/_lib/toolkit-data.ts` reads `data/toolkits/.json`. +- `app/_lib/toolkit-static-params.ts` builds routes from `index.json` and the design system catalog. +- `app/_components/toolkit-docs` renders the toolkit page using `metadata.iconUrl`, `metadata.type`, and auth fields. +- `app/en/resources/integrations/preview` uses the design system catalog for preview pages. +- `app/en/resources/integrations/*/_meta.tsx` controls sidebar navigation for each category. + +## Sidebar sync step (required for navigation) + +`.github/scripts/sync-toolkit-sidebar.ts` keeps sidebar navigation aligned with generated JSON: + +- Reads `data/toolkits` for available toolkits. +- Uses the design system for category and label, with JSON label fallback. +- Groups toolkits by category and writes `_meta.tsx` files per category. +- Uses a fixed category order and alphabetical label order within each nav group. +- Splits `optimized` vs `starter` using `metadata.type` (or an `*Api` fallback). +- Does not prune categories unless you pass `--prune` (not used in the workflow). + +This step does not change JSON output. It only updates navigation files. + +## Architecture at a glance + +- **CLI**: `toolkit-docs-generator/src/cli/index.ts` +- **Sources**: `src/sources` for Engine API, mock data, and design system metadata +- **Merger**: `src/merger/data-merger.ts` merges tools, metadata, and custom sections +- **Generator**: `src/generator/json-generator.ts` writes JSON and `index.json` +- **Verifier**: `src/generator/output-verifier.ts` validates output and index consistency +- **Rendering details**: `toolkit-docs-generator/RENDERING.md` + +## Local usage + +Generate a single toolkit: + +```bash +pnpm start generate \ + --providers "Github:1.0.0" \ + --engine-api-url "$ENGINE_API_URL" \ + --engine-api-key "$ENGINE_API_KEY" \ + --llm-provider openai \ + --llm-model gpt-4.1-mini \ + --llm-api-key "$OPENAI_API_KEY" \ + --output ../data/toolkits +``` + +Generate all toolkits: + +```bash +pnpm start generate \ + --all \ + --skip-unchanged \ + --engine-api-url "$ENGINE_API_URL" \ + --engine-api-key "$ENGINE_API_KEY" \ + --llm-provider openai \ + --llm-model gpt-4.1-mini \ + --llm-api-key "$OPENAI_API_KEY" \ + --output ../data/toolkits +``` + +Generate without LLM output: + +```bash +pnpm start generate \ + --providers "Asana:0.1.3" \ + --engine-api-url "$ENGINE_API_URL" \ + --engine-api-key "$ENGINE_API_KEY" \ + --skip-examples \ + --skip-summary \ + --skip-overview \ + --output ../data/toolkits +``` + +Sync sidebar navigation locally: + +```bash +pnpm dlx tsx .github/scripts/sync-toolkit-sidebar.ts +``` + +## Key CLI options + +- `--all` generate all toolkits +- `--providers` generate a subset of toolkits +- `--skip-unchanged` only write changed toolkits +- `--api-source` select `tool-metadata` (default with Engine creds), `list-tools` + (only with the explicit flag), or `mock` +- `--previous-output` compare against a previous output directory +- `--custom-sections` load curated docs sections +- `--skip-examples`, `--skip-summary`, `--skip-overview` disable LLM steps +- `--no-verify-output` skip output verification + +## Troubleshooting + +- **Nothing regenerated**: `--skip-unchanged` exits early when tool definitions did not change. +- **Missing metadata**: the generator falls back to the metadata JSON file when design system metadata is unavailable. +- **Verify output fails**: run `pnpm start verify-output --output ../data/toolkits` and fix the reported mismatch. diff --git a/toolkit-docs-generator/mock-data/engine-api-response.json b/toolkit-docs-generator/mock-data/engine-api-response.json new file mode 100644 index 000000000..8161a95dc --- /dev/null +++ b/toolkit-docs-generator/mock-data/engine-api-response.json @@ -0,0 +1,335 @@ +{ + "items": [ + { + "fully_qualified_name": "Github.CreateIssue@1.0.0", + "qualified_name": "Github.CreateIssue", + "name": "CreateIssue", + "description": "Create a new issue in a GitHub repository. Optionally add the issue to a project by specifying the project number.", + "toolkit": { + "name": "Github", + "version": "1.0.0", + "description": "GitHub repository and collaboration tools" + }, + "input": { + "parameters": [ + { + "name": "owner", + "required": true, + "description": "The owner (user or organization) of the repository", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "repo", + "required": true, + "description": "The name of the repository", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "title", + "required": true, + "description": "The title of the issue", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "body", + "required": false, + "description": "The body content of the issue (supports Markdown)", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "labels", + "required": false, + "description": "Labels to add to the issue", + "value_schema": { + "val_type": "array", + "inner_val_type": "string", + "enum": null + }, + "inferrable": true + } + ] + }, + "output": { + "available_modes": ["value"], + "description": "The created issue object with id, number, url, and other details", + "value_schema": { + "val_type": "object", + "inner_val_type": null, + "enum": null + } + }, + "requirements": { + "authorization": { + "id": "github_oauth", + "provider_id": "github", + "provider_type": "oauth2", + "scopes": ["repo"] + }, + "secrets": null + } + }, + { + "fully_qualified_name": "Github.SetStarred@1.0.0", + "qualified_name": "Github.SetStarred", + "name": "SetStarred", + "description": "Star or unstar a GitHub repository for the authenticated user.", + "toolkit": { + "name": "Github", + "version": "1.0.0", + "description": "GitHub repository and collaboration tools" + }, + "input": { + "parameters": [ + { + "name": "owner", + "required": true, + "description": "The owner of the repository to star/unstar", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "repo", + "required": true, + "description": "The name of the repository to star/unstar", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "starred", + "required": true, + "description": "True to star the repository, false to unstar it", + "value_schema": { + "val_type": "boolean", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + } + ] + }, + "output": { + "available_modes": ["value"], + "description": "Confirmation of the star/unstar action", + "value_schema": { + "val_type": "object", + "inner_val_type": null, + "enum": null + } + }, + "requirements": { + "authorization": { + "id": "github_oauth", + "provider_id": "github", + "provider_type": "oauth2", + "scopes": ["public_repo"] + }, + "secrets": null + } + }, + { + "fully_qualified_name": "Github.ListPullRequests@1.0.0", + "qualified_name": "Github.ListPullRequests", + "name": "ListPullRequests", + "description": "List pull requests in a GitHub repository with optional filtering.", + "toolkit": { + "name": "Github", + "version": "1.0.0", + "description": "GitHub repository and collaboration tools" + }, + "input": { + "parameters": [ + { + "name": "owner", + "required": true, + "description": "The owner of the repository", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "repo", + "required": true, + "description": "The name of the repository", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "state", + "required": false, + "description": "Filter by pull request state", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": ["open", "closed", "all"] + }, + "inferrable": true + }, + { + "name": "per_page", + "required": false, + "description": "Number of results per page (max 100)", + "value_schema": { + "val_type": "integer", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + } + ] + }, + "output": { + "available_modes": ["value"], + "description": "List of pull request objects", + "value_schema": { + "val_type": "array", + "inner_val_type": null, + "enum": null + } + }, + "requirements": { + "authorization": { + "id": "github_oauth", + "provider_id": "github", + "provider_type": "oauth2", + "scopes": ["repo"] + }, + "secrets": null + } + }, + { + "fully_qualified_name": "Slack.SendMessage@1.2.0", + "qualified_name": "Slack.SendMessage", + "name": "SendMessage", + "description": "Send a message to a Slack channel or direct message.", + "toolkit": { + "name": "Slack", + "version": "1.2.0", + "description": "Slack communication tools" + }, + "input": { + "parameters": [ + { + "name": "channel_id", + "required": true, + "description": "The ID of the channel or conversation", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "text", + "required": true, + "description": "The message text", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + } + ] + }, + "output": { + "available_modes": ["value"], + "description": "Message send confirmation", + "value_schema": { + "val_type": "object", + "inner_val_type": null, + "enum": null + } + }, + "requirements": { + "authorization": { + "id": "slack_oauth", + "provider_id": "slack", + "provider_type": "oauth2", + "scopes": ["chat:write"] + }, + "secrets": null + } + }, + { + "fully_qualified_name": "Slack.ListChannels@1.2.0", + "qualified_name": "Slack.ListChannels", + "name": "ListChannels", + "description": "List channels in the workspace.", + "toolkit": { + "name": "Slack", + "version": "1.2.0", + "description": "Slack communication tools" + }, + "input": { + "parameters": [ + { + "name": "limit", + "required": false, + "description": "Maximum number of channels to return", + "value_schema": { + "val_type": "integer", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + } + ] + }, + "output": { + "available_modes": ["value"], + "description": "List of channel objects", + "value_schema": { + "val_type": "array", + "inner_val_type": null, + "enum": null + } + }, + "requirements": { + "authorization": { + "id": "slack_oauth", + "provider_id": "slack", + "provider_type": "oauth2", + "scopes": ["channels:read"] + }, + "secrets": null + } + } + ], + "total_count": 5 +} diff --git a/toolkit-docs-generator/mock-data/metadata.json b/toolkit-docs-generator/mock-data/metadata.json new file mode 100644 index 000000000..ad2301af4 --- /dev/null +++ b/toolkit-docs-generator/mock-data/metadata.json @@ -0,0 +1,62 @@ +{ + "Github": { + "id": "Github", + "label": "GitHub", + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/github.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/github", + "isComingSoon": false, + "isHidden": false + }, + "Slack": { + "id": "Slack", + "label": "Slack", + "category": "social", + "iconUrl": "https://design-system.arcade.dev/icons/slack.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/social/slack", + "isComingSoon": false, + "isHidden": false + }, + "Gmail": { + "id": "Gmail", + "label": "Gmail", + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/gmail.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/gmail", + "isComingSoon": false, + "isHidden": false + }, + "Jira": { + "id": "Jira", + "label": "Jira", + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/jira.svg", + "isBYOC": true, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/jira", + "isComingSoon": false, + "isHidden": false + }, + "Stripe": { + "id": "Stripe", + "label": "Stripe", + "category": "payments", + "iconUrl": "https://design-system.arcade.dev/icons/stripe.svg", + "isBYOC": false, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/payments/stripe", + "isComingSoon": false, + "isHidden": false + } +} diff --git a/toolkit-docs-generator/package.json b/toolkit-docs-generator/package.json new file mode 100644 index 000000000..2fd45d0b1 --- /dev/null +++ b/toolkit-docs-generator/package.json @@ -0,0 +1,52 @@ +{ + "name": "toolkit-docs-generator", + "version": "1.1.0", + "description": "CLI tool for generating Arcade toolkit documentation JSON from multiple data sources", + "type": "module", + "main": "dist/index.js", + "bin": { + "toolkit-docs-generator": "dist/cli/index.js" + }, + "scripts": { + "build": "tsup src/cli/index.ts src/index.ts --format esm --dts --clean", + "dev": "tsup src/cli/index.ts src/index.ts --format esm --watch", + "start": "node dist/cli/index.js", + "lint": "pnpm dlx ultracite check", + "lint:fix": "pnpm dlx ultracite fix", + "typecheck": "tsc --noEmit", + "test": "vitest --run", + "test:watch": "vitest --watch", + "test:coverage": "vitest --coverage", + "check": "pnpm lint && pnpm typecheck && pnpm test" + }, + "keywords": [ + "arcade", + "documentation", + "toolkit", + "generator", + "cli" + ], + "author": "Arcade", + "license": "MIT", + "engines": { + "node": "22.x", + "pnpm": ">=9.15.4" + }, + "dependencies": { + "@anthropic-ai/sdk": "0.71.2", + "chalk": "^5.4.0", + "commander": "^14.0.2", + "openai": "^6.7.0", + "ora": "^9.0.0", + "zod": "^4.1.12" + }, + "devDependencies": { + "@biomejs/biome": "2.3.11", + "@types/node": "^24.9.2", + "tsup": "^8.3.0", + "typescript": "^5.9.3", + "ultracite": "^7.0.11", + "vitest": "^4.0.5" + }, + "packageManager": "pnpm@10.11.0" +} diff --git a/toolkit-docs-generator/pnpm-lock.yaml b/toolkit-docs-generator/pnpm-lock.yaml new file mode 100644 index 000000000..2635a519f --- /dev/null +++ b/toolkit-docs-generator/pnpm-lock.yaml @@ -0,0 +1,1721 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@anthropic-ai/sdk': + specifier: 0.71.2 + version: 0.71.2(zod@4.3.5) + chalk: + specifier: ^5.4.0 + version: 5.6.2 + commander: + specifier: ^14.0.2 + version: 14.0.2 + openai: + specifier: ^6.7.0 + version: 6.16.0(zod@4.3.5) + ora: + specifier: ^9.0.0 + version: 9.0.0 + zod: + specifier: ^4.1.12 + version: 4.3.5 + devDependencies: + '@biomejs/biome': + specifier: 2.3.11 + version: 2.3.11 + '@types/node': + specifier: ^24.9.2 + version: 24.10.8 + tsup: + specifier: ^8.3.0 + version: 8.5.1(postcss@8.5.6)(typescript@5.9.3) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + ultracite: + specifier: ^7.0.11 + version: 7.0.11(typescript@5.9.3) + vitest: + specifier: ^4.0.5 + version: 4.0.17(@types/node@24.10.8) + +packages: + + '@anthropic-ai/sdk@0.71.2': + resolution: {integrity: sha512-TGNDEUuEstk/DKu0/TflXAEt+p+p/WhTlFzEnoosvbaDU2LTjm42igSdlL0VijrKpWejtOKxX0b8A7uc+XiSAQ==} + hasBin: true + peerDependencies: + zod: ^3.25.0 || ^4.0.0 + peerDependenciesMeta: + zod: + optional: true + + '@babel/runtime@7.28.6': + resolution: {integrity: sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==} + engines: {node: '>=6.9.0'} + + '@biomejs/biome@2.3.11': + resolution: {integrity: sha512-/zt+6qazBWguPG6+eWmiELqO+9jRsMZ/DBU3lfuU2ngtIQYzymocHhKiZRyrbra4aCOoyTg/BmY+6WH5mv9xmQ==} + engines: {node: '>=14.21.3'} + hasBin: true + + '@biomejs/cli-darwin-arm64@2.3.11': + resolution: {integrity: sha512-/uXXkBcPKVQY7rc9Ys2CrlirBJYbpESEDme7RKiBD6MmqR2w3j0+ZZXRIL2xiaNPsIMMNhP1YnA+jRRxoOAFrA==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [darwin] + + '@biomejs/cli-darwin-x64@2.3.11': + resolution: {integrity: sha512-fh7nnvbweDPm2xEmFjfmq7zSUiox88plgdHF9OIW4i99WnXrAC3o2P3ag9judoUMv8FCSUnlwJCM1B64nO5Fbg==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [darwin] + + '@biomejs/cli-linux-arm64-musl@2.3.11': + resolution: {integrity: sha512-XPSQ+XIPZMLaZ6zveQdwNjbX+QdROEd1zPgMwD47zvHV+tCGB88VH+aynyGxAHdzL+Tm/+DtKST5SECs4iwCLg==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [linux] + + '@biomejs/cli-linux-arm64@2.3.11': + resolution: {integrity: sha512-l4xkGa9E7Uc0/05qU2lMYfN1H+fzzkHgaJoy98wO+b/7Gl78srbCRRgwYSW+BTLixTBrM6Ede5NSBwt7rd/i6g==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [linux] + + '@biomejs/cli-linux-x64-musl@2.3.11': + resolution: {integrity: sha512-vU7a8wLs5C9yJ4CB8a44r12aXYb8yYgBn+WeyzbMjaCMklzCv1oXr8x+VEyWodgJt9bDmhiaW/I0RHbn7rsNmw==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [linux] + + '@biomejs/cli-linux-x64@2.3.11': + resolution: {integrity: sha512-/1s9V/H3cSe0r0Mv/Z8JryF5x9ywRxywomqZVLHAoa/uN0eY7F8gEngWKNS5vbbN/BsfpCG5yeBT5ENh50Frxg==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [linux] + + '@biomejs/cli-win32-arm64@2.3.11': + resolution: {integrity: sha512-PZQ6ElCOnkYapSsysiTy0+fYX+agXPlWugh6+eQ6uPKI3vKAqNp6TnMhoM3oY2NltSB89hz59o8xIfOdyhi9Iw==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [win32] + + '@biomejs/cli-win32-x64@2.3.11': + resolution: {integrity: sha512-43VrG813EW+b5+YbDbz31uUsheX+qFKCpXeY9kfdAx+ww3naKxeVkTD9zLIWxUPfJquANMHrmW3wbe/037G0Qg==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [win32] + + '@clack/core@0.5.0': + resolution: {integrity: sha512-p3y0FIOwaYRUPRcMO7+dlmLh8PSRcrjuTndsiA0WAFbWES0mLZlrjVoBRZ9DzkPFJZG6KGkJmoEAY0ZcVWTkow==} + + '@clack/prompts@0.11.0': + resolution: {integrity: sha512-pMN5FcrEw9hUkZA4f+zLlzivQSeQf5dRGJjSUbvVYDLvpKCdQx5OaknvKzgbtXOizhP+SJJJjqEbOe55uKKfAw==} + + '@esbuild/aix-ppc64@0.27.2': + resolution: {integrity: sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.27.2': + resolution: {integrity: sha512-pvz8ZZ7ot/RBphf8fv60ljmaoydPU12VuXHImtAs0XhLLw+EXBi2BLe3OYSBslR4rryHvweW5gmkKFwTiFy6KA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.27.2': + resolution: {integrity: sha512-DVNI8jlPa7Ujbr1yjU2PfUSRtAUZPG9I1RwW4F4xFB1Imiu2on0ADiI/c3td+KmDtVKNbi+nffGDQMfcIMkwIA==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.27.2': + resolution: {integrity: sha512-z8Ank4Byh4TJJOh4wpz8g2vDy75zFL0TlZlkUkEwYXuPSgX8yzep596n6mT7905kA9uHZsf/o2OJZubl2l3M7A==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.27.2': + resolution: {integrity: sha512-davCD2Zc80nzDVRwXTcQP/28fiJbcOwvdolL0sOiOsbwBa72kegmVU0Wrh1MYrbuCL98Omp5dVhQFWRKR2ZAlg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.27.2': + resolution: {integrity: sha512-ZxtijOmlQCBWGwbVmwOF/UCzuGIbUkqB1faQRf5akQmxRJ1ujusWsb3CVfk/9iZKr2L5SMU5wPBi1UWbvL+VQA==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.27.2': + resolution: {integrity: sha512-lS/9CN+rgqQ9czogxlMcBMGd+l8Q3Nj1MFQwBZJyoEKI50XGxwuzznYdwcav6lpOGv5BqaZXqvBSiB/kJ5op+g==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.27.2': + resolution: {integrity: sha512-tAfqtNYb4YgPnJlEFu4c212HYjQWSO/w/h/lQaBK7RbwGIkBOuNKQI9tqWzx7Wtp7bTPaGC6MJvWI608P3wXYA==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.27.2': + resolution: {integrity: sha512-hYxN8pr66NsCCiRFkHUAsxylNOcAQaxSSkHMMjcpx0si13t1LHFphxJZUiGwojB1a/Hd5OiPIqDdXONia6bhTw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.27.2': + resolution: {integrity: sha512-vWfq4GaIMP9AIe4yj1ZUW18RDhx6EPQKjwe7n8BbIecFtCQG4CfHGaHuh7fdfq+y3LIA2vGS/o9ZBGVxIDi9hw==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.27.2': + resolution: {integrity: sha512-MJt5BRRSScPDwG2hLelYhAAKh9imjHK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXPHZGqPLxggwVhz7QP8CTR8w==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.27.2': + resolution: {integrity: sha512-lugyF1atnAT463aO6KPshVCJK5NgRnU4yb3FUumyVz+cGvZbontBgzeGFO1nF+dPueHD367a2ZXe1NtUkAjOtg==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.27.2': + resolution: {integrity: sha512-nlP2I6ArEBewvJ2gjrrkESEZkB5mIoaTswuqNFRv/WYd+ATtUpe9Y09RnJvgvdag7he0OWgEZWhviS1OTOKixw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.27.2': + resolution: {integrity: sha512-C92gnpey7tUQONqg1n6dKVbx3vphKtTHJaNG2Ok9lGwbZil6DrfyecMsp9CrmXGQJmZ7iiVXvvZH6Ml5hL6XdQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-riscv64@0.27.2': + resolution: {integrity: sha512-B5BOmojNtUyN8AXlK0QJyvjEZkWwy/FKvakkTDCziX95AowLZKR6aCDhG7LeF7uMCXEJqwa8Bejz5LTPYm8AvA==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.27.2': + resolution: {integrity: sha512-p4bm9+wsPwup5Z8f4EpfN63qNagQ47Ua2znaqGH6bqLlmJ4bx97Y9JdqxgGZ6Y8xVTixUnEkoKSHcpRlDnNr5w==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.27.2': + resolution: {integrity: sha512-uwp2Tip5aPmH+NRUwTcfLb+W32WXjpFejTIOWZFw/v7/KnpCDKG66u4DLcurQpiYTiYwQ9B7KOeMJvLCu/OvbA==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-arm64@0.27.2': + resolution: {integrity: sha512-Kj6DiBlwXrPsCRDeRvGAUb/LNrBASrfqAIok+xB0LxK8CHqxZ037viF13ugfsIpePH93mX7xfJp97cyDuTZ3cw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.27.2': + resolution: {integrity: sha512-HwGDZ0VLVBY3Y+Nw0JexZy9o/nUAWq9MlV7cahpaXKW6TOzfVno3y3/M8Ga8u8Yr7GldLOov27xiCnqRZf0tCA==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-arm64@0.27.2': + resolution: {integrity: sha512-DNIHH2BPQ5551A7oSHD0CKbwIA/Ox7+78/AWkbS5QoRzaqlev2uFayfSxq68EkonB+IKjiuxBFoV8ESJy8bOHA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.27.2': + resolution: {integrity: sha512-/it7w9Nb7+0KFIzjalNJVR5bOzA9Vay+yIPLVHfIQYG/j+j9VTH84aNB8ExGKPU4AzfaEvN9/V4HV+F+vo8OEg==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + + '@esbuild/openharmony-arm64@0.27.2': + resolution: {integrity: sha512-LRBbCmiU51IXfeXk59csuX/aSaToeG7w48nMwA6049Y4J4+VbWALAuXcs+qcD04rHDuSCSRKdmY63sruDS5qag==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + + '@esbuild/sunos-x64@0.27.2': + resolution: {integrity: sha512-kMtx1yqJHTmqaqHPAzKCAkDaKsffmXkPHThSfRwZGyuqyIeBvf08KSsYXl+abf5HDAPMJIPnbBfXvP2ZC2TfHg==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.27.2': + resolution: {integrity: sha512-Yaf78O/B3Kkh+nKABUF++bvJv5Ijoy9AN1ww904rOXZFLWVc5OLOfL56W+C8F9xn5JQZa3UX6m+IktJnIb1Jjg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.27.2': + resolution: {integrity: sha512-Iuws0kxo4yusk7sw70Xa2E2imZU5HoixzxfGCdxwBdhiDgt9vX9VUCBhqcwY7/uh//78A1hMkkROMJq9l27oLQ==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.27.2': + resolution: {integrity: sha512-sRdU18mcKf7F+YgheI/zGf5alZatMUTKj/jNS6l744f9u3WFu4v7twcUI9vu4mknF4Y9aDlblIie0IM+5xxaqQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + + '@isaacs/balanced-match@4.0.1': + resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==} + engines: {node: 20 || >=22} + + '@isaacs/brace-expansion@5.0.0': + resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==} + engines: {node: 20 || >=22} + + '@jridgewell/gen-mapping@0.3.13': + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.5': + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + + '@jridgewell/trace-mapping@0.3.31': + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} + + '@rollup/rollup-android-arm-eabi@4.55.1': + resolution: {integrity: sha512-9R0DM/ykwfGIlNu6+2U09ga0WXeZ9MRC2Ter8jnz8415VbuIykVuc6bhdrbORFZANDmTDvq26mJrEVTl8TdnDg==} + cpu: [arm] + os: [android] + + '@rollup/rollup-android-arm64@4.55.1': + resolution: {integrity: sha512-eFZCb1YUqhTysgW3sj/55du5cG57S7UTNtdMjCW7LwVcj3dTTcowCsC8p7uBdzKsZYa8J7IDE8lhMI+HX1vQvg==} + cpu: [arm64] + os: [android] + + '@rollup/rollup-darwin-arm64@4.55.1': + resolution: {integrity: sha512-p3grE2PHcQm2e8PSGZdzIhCKbMCw/xi9XvMPErPhwO17vxtvCN5FEA2mSLgmKlCjHGMQTP6phuQTYWUnKewwGg==} + cpu: [arm64] + os: [darwin] + + '@rollup/rollup-darwin-x64@4.55.1': + resolution: {integrity: sha512-rDUjG25C9qoTm+e02Esi+aqTKSBYwVTaoS1wxcN47/Luqef57Vgp96xNANwt5npq9GDxsH7kXxNkJVEsWEOEaQ==} + cpu: [x64] + os: [darwin] + + '@rollup/rollup-freebsd-arm64@4.55.1': + resolution: {integrity: sha512-+JiU7Jbp5cdxekIgdte0jfcu5oqw4GCKr6i3PJTlXTCU5H5Fvtkpbs4XJHRmWNXF+hKmn4v7ogI5OQPaupJgOg==} + cpu: [arm64] + os: [freebsd] + + '@rollup/rollup-freebsd-x64@4.55.1': + resolution: {integrity: sha512-V5xC1tOVWtLLmr3YUk2f6EJK4qksksOYiz/TCsFHu/R+woubcLWdC9nZQmwjOAbmExBIVKsm1/wKmEy4z4u4Bw==} + cpu: [x64] + os: [freebsd] + + '@rollup/rollup-linux-arm-gnueabihf@4.55.1': + resolution: {integrity: sha512-Rn3n+FUk2J5VWx+ywrG/HGPTD9jXNbicRtTM11e/uorplArnXZYsVifnPPqNNP5BsO3roI4n8332ukpY/zN7rQ==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm-musleabihf@4.55.1': + resolution: {integrity: sha512-grPNWydeKtc1aEdrJDWk4opD7nFtQbMmV7769hiAaYyUKCT1faPRm2av8CX1YJsZ4TLAZcg9gTR1KvEzoLjXkg==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm64-gnu@4.55.1': + resolution: {integrity: sha512-a59mwd1k6x8tXKcUxSyISiquLwB5pX+fJW9TkWU46lCqD/GRDe9uDN31jrMmVP3feI3mhAdvcCClhV8V5MhJFQ==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-arm64-musl@4.55.1': + resolution: {integrity: sha512-puS1MEgWX5GsHSoiAsF0TYrpomdvkaXm0CofIMG5uVkP6IBV+ZO9xhC5YEN49nsgYo1DuuMquF9+7EDBVYu4uA==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-loong64-gnu@4.55.1': + resolution: {integrity: sha512-r3Wv40in+lTsULSb6nnoudVbARdOwb2u5fpeoOAZjFLznp6tDU8kd+GTHmJoqZ9lt6/Sys33KdIHUaQihFcu7g==} + cpu: [loong64] + os: [linux] + + '@rollup/rollup-linux-loong64-musl@4.55.1': + resolution: {integrity: sha512-MR8c0+UxAlB22Fq4R+aQSPBayvYa3+9DrwG/i1TKQXFYEaoW3B5b/rkSRIypcZDdWjWnpcvxbNaAJDcSbJU3Lw==} + cpu: [loong64] + os: [linux] + + '@rollup/rollup-linux-ppc64-gnu@4.55.1': + resolution: {integrity: sha512-3KhoECe1BRlSYpMTeVrD4sh2Pw2xgt4jzNSZIIPLFEsnQn9gAnZagW9+VqDqAHgm1Xc77LzJOo2LdigS5qZ+gw==} + cpu: [ppc64] + os: [linux] + + '@rollup/rollup-linux-ppc64-musl@4.55.1': + resolution: {integrity: sha512-ziR1OuZx0vdYZZ30vueNZTg73alF59DicYrPViG0NEgDVN8/Jl87zkAPu4u6VjZST2llgEUjaiNl9JM6HH1Vdw==} + cpu: [ppc64] + os: [linux] + + '@rollup/rollup-linux-riscv64-gnu@4.55.1': + resolution: {integrity: sha512-uW0Y12ih2XJRERZ4jAfKamTyIHVMPQnTZcQjme2HMVDAHY4amf5u414OqNYC+x+LzRdRcnIG1YodLrrtA8xsxw==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-riscv64-musl@4.55.1': + resolution: {integrity: sha512-u9yZ0jUkOED1BFrqu3BwMQoixvGHGZ+JhJNkNKY/hyoEgOwlqKb62qu+7UjbPSHYjiVy8kKJHvXKv5coH4wDeg==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-s390x-gnu@4.55.1': + resolution: {integrity: sha512-/0PenBCmqM4ZUd0190j7J0UsQ/1nsi735iPRakO8iPciE7BQ495Y6msPzaOmvx0/pn+eJVVlZrNrSh4WSYLxNg==} + cpu: [s390x] + os: [linux] + + '@rollup/rollup-linux-x64-gnu@4.55.1': + resolution: {integrity: sha512-a8G4wiQxQG2BAvo+gU6XrReRRqj+pLS2NGXKm8io19goR+K8lw269eTrPkSdDTALwMmJp4th2Uh0D8J9bEV1vg==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-linux-x64-musl@4.55.1': + resolution: {integrity: sha512-bD+zjpFrMpP/hqkfEcnjXWHMw5BIghGisOKPj+2NaNDuVT+8Ds4mPf3XcPHuat1tz89WRL+1wbcxKY3WSbiT7w==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-openbsd-x64@4.55.1': + resolution: {integrity: sha512-eLXw0dOiqE4QmvikfQ6yjgkg/xDM+MdU9YJuP4ySTibXU0oAvnEWXt7UDJmD4UkYialMfOGFPJnIHSe/kdzPxg==} + cpu: [x64] + os: [openbsd] + + '@rollup/rollup-openharmony-arm64@4.55.1': + resolution: {integrity: sha512-xzm44KgEP11te3S2HCSyYf5zIzWmx3n8HDCc7EE59+lTcswEWNpvMLfd9uJvVX8LCg9QWG67Xt75AuHn4vgsXw==} + cpu: [arm64] + os: [openharmony] + + '@rollup/rollup-win32-arm64-msvc@4.55.1': + resolution: {integrity: sha512-yR6Bl3tMC/gBok5cz/Qi0xYnVbIxGx5Fcf/ca0eB6/6JwOY+SRUcJfI0OpeTpPls7f194as62thCt/2BjxYN8g==} + cpu: [arm64] + os: [win32] + + '@rollup/rollup-win32-ia32-msvc@4.55.1': + resolution: {integrity: sha512-3fZBidchE0eY0oFZBnekYCfg+5wAB0mbpCBuofh5mZuzIU/4jIVkbESmd2dOsFNS78b53CYv3OAtwqkZZmU5nA==} + cpu: [ia32] + os: [win32] + + '@rollup/rollup-win32-x64-gnu@4.55.1': + resolution: {integrity: sha512-xGGY5pXj69IxKb4yv/POoocPy/qmEGhimy/FoTpTSVju3FYXUQQMFCaZZXJVidsmGxRioZAwpThl/4zX41gRKg==} + cpu: [x64] + os: [win32] + + '@rollup/rollup-win32-x64-msvc@4.55.1': + resolution: {integrity: sha512-SPEpaL6DX4rmcXtnhdrQYgzQ5W2uW3SCJch88lB2zImhJRhIIK44fkUrgIV/Q8yUNfw5oyZ5vkeQsZLhCb06lw==} + cpu: [x64] + os: [win32] + + '@standard-schema/spec@1.1.0': + resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} + + '@trpc/server@11.8.1': + resolution: {integrity: sha512-P4rzZRpEL7zDFgjxK65IdyH0e41FMFfTkQkuq0BA5tKcr7E6v9/v38DEklCpoDN6sPiB1Sigy/PUEzHENhswDA==} + peerDependencies: + typescript: '>=5.7.2' + + '@types/chai@5.2.3': + resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==} + + '@types/deep-eql@4.0.2': + resolution: {integrity: sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==} + + '@types/estree@1.0.8': + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} + + '@types/node@24.10.8': + resolution: {integrity: sha512-r0bBaXu5Swb05doFYO2kTWHMovJnNVbCsII0fhesM8bNRlLhXIuckley4a2DaD+vOdmm5G+zGkQZAPZsF80+YQ==} + + '@vitest/expect@4.0.17': + resolution: {integrity: sha512-mEoqP3RqhKlbmUmntNDDCJeTDavDR+fVYkSOw8qRwJFaW/0/5zA9zFeTrHqNtcmwh6j26yMmwx2PqUDPzt5ZAQ==} + + '@vitest/mocker@4.0.17': + resolution: {integrity: sha512-+ZtQhLA3lDh1tI2wxe3yMsGzbp7uuJSWBM1iTIKCbppWTSBN09PUC+L+fyNlQApQoR+Ps8twt2pbSSXg2fQVEQ==} + peerDependencies: + msw: ^2.4.9 + vite: ^6.0.0 || ^7.0.0-0 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true + + '@vitest/pretty-format@4.0.17': + resolution: {integrity: sha512-Ah3VAYmjcEdHg6+MwFE17qyLqBHZ+ni2ScKCiW2XrlSBV4H3Z7vYfPfz7CWQ33gyu76oc0Ai36+kgLU3rfF4nw==} + + '@vitest/runner@4.0.17': + resolution: {integrity: sha512-JmuQyf8aMWoo/LmNFppdpkfRVHJcsgzkbCA+/Bk7VfNH7RE6Ut2qxegeyx2j3ojtJtKIbIGy3h+KxGfYfk28YQ==} + + '@vitest/snapshot@4.0.17': + resolution: {integrity: sha512-npPelD7oyL+YQM2gbIYvlavlMVWUfNNGZPcu0aEUQXt7FXTuqhmgiYupPnAanhKvyP6Srs2pIbWo30K0RbDtRQ==} + + '@vitest/spy@4.0.17': + resolution: {integrity: sha512-I1bQo8QaP6tZlTomQNWKJE6ym4SHf3oLS7ceNjozxxgzavRAgZDc06T7kD8gb9bXKEgcLNt00Z+kZO6KaJ62Ew==} + + '@vitest/utils@4.0.17': + resolution: {integrity: sha512-RG6iy+IzQpa9SB8HAFHJ9Y+pTzI+h8553MrciN9eC6TFBErqrQaTas4vG+MVj8S4uKk8uTT2p0vgZPnTdxd96w==} + + acorn@8.15.0: + resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} + engines: {node: '>=0.4.0'} + hasBin: true + + ansi-regex@6.2.2: + resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} + engines: {node: '>=12'} + + any-promise@1.3.0: + resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} + + assertion-error@2.0.1: + resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} + engines: {node: '>=12'} + + bundle-require@5.1.0: + resolution: {integrity: sha512-3WrrOuZiyaaZPWiEt4G3+IffISVC9HYlWueJEBWED4ZH4aIAC2PnkdnuRrR94M+w6yGWn4AglWtJtBI8YqvgoA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + peerDependencies: + esbuild: '>=0.18' + + cac@6.7.14: + resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} + engines: {node: '>=8'} + + chai@6.2.2: + resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==} + engines: {node: '>=18'} + + chalk@5.6.2: + resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + + chokidar@4.0.3: + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} + engines: {node: '>= 14.16.0'} + + citty@0.1.6: + resolution: {integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==} + + cli-cursor@5.0.0: + resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} + engines: {node: '>=18'} + + cli-spinners@3.4.0: + resolution: {integrity: sha512-bXfOC4QcT1tKXGorxL3wbJm6XJPDqEnij2gQ2m7ESQuE+/z9YFIWnl/5RpTiKWbMq3EVKR4fRLJGn6DVfu0mpw==} + engines: {node: '>=18.20'} + + commander@14.0.2: + resolution: {integrity: sha512-TywoWNNRbhoD0BXs1P3ZEScW8W5iKrnbithIl0YH+uCmBd0QpPOA8yc82DS3BIE5Ma6FnBVUsJ7wVUDz4dvOWQ==} + engines: {node: '>=20'} + + commander@4.1.1: + resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} + engines: {node: '>= 6'} + + confbox@0.1.8: + resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} + + confbox@0.2.2: + resolution: {integrity: sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==} + + consola@3.4.2: + resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==} + engines: {node: ^14.18.0 || >=16.10.0} + + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + deepmerge@4.3.1: + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} + engines: {node: '>=0.10.0'} + + es-module-lexer@1.7.0: + resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==} + + esbuild@0.27.2: + resolution: {integrity: sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw==} + engines: {node: '>=18'} + hasBin: true + + estree-walker@3.0.3: + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} + + expect-type@1.3.0: + resolution: {integrity: sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==} + engines: {node: '>=12.0.0'} + + exsolve@1.0.8: + resolution: {integrity: sha512-LmDxfWXwcTArk8fUEnOfSZpHOJ6zOMUJKOtFLFqJLoKJetuQG874Uc7/Kki7zFLzYybmZhp1M7+98pfMqeX8yA==} + + fdir@6.5.0: + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + + fix-dts-default-cjs-exports@1.0.1: + resolution: {integrity: sha512-pVIECanWFC61Hzl2+oOCtoJ3F17kglZC/6N94eRWycFgBH35hHx0Li604ZIzhseh97mf2p0cv7vVrOZGoqhlEg==} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + get-east-asian-width@1.4.0: + resolution: {integrity: sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==} + engines: {node: '>=18'} + + glob@13.0.0: + resolution: {integrity: sha512-tvZgpqk6fz4BaNZ66ZsRaZnbHvP/jG3uKJvAZOwEVUL4RTA5nJeeLYfyN9/VA8NX/V3IBG+hkeuGpKjvELkVhA==} + engines: {node: 20 || >=22} + + is-interactive@2.0.0: + resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==} + engines: {node: '>=12'} + + is-unicode-supported@2.1.0: + resolution: {integrity: sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==} + engines: {node: '>=18'} + + joycon@3.1.1: + resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} + engines: {node: '>=10'} + + json-schema-to-ts@3.1.1: + resolution: {integrity: sha512-+DWg8jCJG2TEnpy7kOm/7/AxaYoaRbjVB4LFZLySZlWn8exGs3A4OLJR966cVvU26N7X9TWxl+Jsw7dzAqKT6g==} + engines: {node: '>=16'} + + jsonc-parser@3.3.1: + resolution: {integrity: sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==} + + lilconfig@3.1.3: + resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} + engines: {node: '>=14'} + + lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + + load-tsconfig@0.2.5: + resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + log-symbols@7.0.1: + resolution: {integrity: sha512-ja1E3yCr9i/0hmBVaM0bfwDjnGy8I/s6PP4DFp+yP+a+mrHO4Rm7DtmnqROTUkHIkqffC84YY7AeqX6oFk0WFg==} + engines: {node: '>=18'} + + lru-cache@11.2.4: + resolution: {integrity: sha512-B5Y16Jr9LB9dHVkh6ZevG+vAbOsNOYCX+sXvFWFu7B3Iz5mijW3zdbMyhsh8ANd2mSWBYdJgnqi+mL7/LrOPYg==} + engines: {node: 20 || >=22} + + magic-string@0.30.21: + resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} + + mimic-function@5.0.1: + resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} + engines: {node: '>=18'} + + minimatch@10.1.1: + resolution: {integrity: sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ==} + engines: {node: 20 || >=22} + + minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} + + mlly@1.8.0: + resolution: {integrity: sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + mz@2.7.0: + resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} + + nanoid@3.3.11: + resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + nypm@0.6.2: + resolution: {integrity: sha512-7eM+hpOtrKrBDCh7Ypu2lJ9Z7PNZBdi/8AT3AX8xoCj43BBVHD0hPSTEvMtkMpfs8FCqBGhxB+uToIQimA111g==} + engines: {node: ^14.16.0 || >=16.10.0} + hasBin: true + + object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + obug@2.1.1: + resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==} + + onetime@7.0.0: + resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} + engines: {node: '>=18'} + + openai@6.16.0: + resolution: {integrity: sha512-fZ1uBqjFUjXzbGc35fFtYKEOxd20kd9fDpFeqWtsOZWiubY8CZ1NAlXHW3iathaFvqmNtCWMIsosCuyeI7Joxg==} + hasBin: true + peerDependencies: + ws: ^8.18.0 + zod: ^3.25 || ^4.0 + peerDependenciesMeta: + ws: + optional: true + zod: + optional: true + + ora@9.0.0: + resolution: {integrity: sha512-m0pg2zscbYgWbqRR6ABga5c3sZdEon7bSgjnlXC64kxtxLOyjRcbbUkLj7HFyy/FTD+P2xdBWu8snGhYI0jc4A==} + engines: {node: '>=20'} + + path-scurry@2.0.1: + resolution: {integrity: sha512-oWyT4gICAu+kaA7QWk/jvCHWarMKNs6pXOGWKDTr7cw4IGcUbW+PeTfbaQiLGheFRpjo6O9J0PmyMfQPjH71oA==} + engines: {node: 20 || >=22} + + pathe@2.0.3: + resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@4.0.3: + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} + engines: {node: '>=12'} + + pirates@4.0.7: + resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==} + engines: {node: '>= 6'} + + pkg-types@1.3.1: + resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==} + + pkg-types@2.3.0: + resolution: {integrity: sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig==} + + postcss-load-config@6.0.1: + resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==} + engines: {node: '>= 18'} + peerDependencies: + jiti: '>=1.21.0' + postcss: '>=8.0.9' + tsx: ^4.8.1 + yaml: ^2.4.2 + peerDependenciesMeta: + jiti: + optional: true + postcss: + optional: true + tsx: + optional: true + yaml: + optional: true + + postcss@8.5.6: + resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} + engines: {node: ^10 || ^12 || >=14} + + readdirp@4.1.2: + resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} + engines: {node: '>= 14.18.0'} + + resolve-from@5.0.0: + resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} + engines: {node: '>=8'} + + restore-cursor@5.1.0: + resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} + engines: {node: '>=18'} + + rollup@4.55.1: + resolution: {integrity: sha512-wDv/Ht1BNHB4upNbK74s9usvl7hObDnvVzknxqY/E/O3X6rW1U1rV1aENEfJ54eFZDTNo7zv1f5N4edCluH7+A==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + + siginfo@2.0.0: + resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + + sisteransi@1.0.5: + resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + + source-map-js@1.2.1: + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} + engines: {node: '>=0.10.0'} + + source-map@0.7.6: + resolution: {integrity: sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==} + engines: {node: '>= 12'} + + stackback@0.0.2: + resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} + + std-env@3.10.0: + resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==} + + stdin-discarder@0.2.2: + resolution: {integrity: sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==} + engines: {node: '>=18'} + + string-width@8.1.0: + resolution: {integrity: sha512-Kxl3KJGb/gxkaUMOjRsQ8IrXiGW75O4E3RPjFIINOVH8AMl2SQ/yWdTzWwF3FevIX9LcMAjJW+GRwAlAbTSXdg==} + engines: {node: '>=20'} + + strip-ansi@7.1.2: + resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==} + engines: {node: '>=12'} + + sucrase@3.35.1: + resolution: {integrity: sha512-DhuTmvZWux4H1UOnWMB3sk0sbaCVOoQZjv8u1rDoTV0HTdGem9hkAZtl4JZy8P2z4Bg0nT+YMeOFyVr4zcG5Tw==} + engines: {node: '>=16 || 14 >=14.17'} + hasBin: true + + thenify-all@1.6.0: + resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} + engines: {node: '>=0.8'} + + thenify@3.3.1: + resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} + + tinybench@2.9.0: + resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} + + tinyexec@0.3.2: + resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} + + tinyexec@1.0.2: + resolution: {integrity: sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==} + engines: {node: '>=18'} + + tinyglobby@0.2.15: + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} + engines: {node: '>=12.0.0'} + + tinyrainbow@3.0.3: + resolution: {integrity: sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==} + engines: {node: '>=14.0.0'} + + tree-kill@1.2.2: + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} + hasBin: true + + trpc-cli@0.12.2: + resolution: {integrity: sha512-kGNCiyOimGlfcZFImbWzFF2Nn3TMnenwUdyuckiN5SEaceJbIac7+Iau3WsVHjQpoNgugFruZMDOKf8GNQNtJw==} + engines: {node: '>=18'} + hasBin: true + peerDependencies: + '@orpc/server': ^1.0.0 + '@trpc/server': ^10.45.2 || ^11.0.1 + '@valibot/to-json-schema': ^1.1.0 + effect: ^3.14.2 || ^4.0.0 + valibot: ^1.1.0 + zod: ^3.24.0 || ^4.0.0 + peerDependenciesMeta: + '@orpc/server': + optional: true + '@trpc/server': + optional: true + '@valibot/to-json-schema': + optional: true + effect: + optional: true + valibot: + optional: true + zod: + optional: true + + ts-algebra@2.0.0: + resolution: {integrity: sha512-FPAhNPFMrkwz76P7cdjdmiShwMynZYN6SgOujD1urY4oNm80Ou9oMdmbR45LotcKOXoy7wSmHkRFE6Mxbrhefw==} + + ts-interface-checker@0.1.13: + resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + + tsup@8.5.1: + resolution: {integrity: sha512-xtgkqwdhpKWr3tKPmCkvYmS9xnQK3m3XgxZHwSUjvfTjp7YfXe5tT3GgWi0F2N+ZSMsOeWeZFh7ZZFg5iPhing==} + engines: {node: '>=18'} + hasBin: true + peerDependencies: + '@microsoft/api-extractor': ^7.36.0 + '@swc/core': ^1 + postcss: ^8.4.12 + typescript: '>=4.5.0' + peerDependenciesMeta: + '@microsoft/api-extractor': + optional: true + '@swc/core': + optional: true + postcss: + optional: true + typescript: + optional: true + + typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + engines: {node: '>=14.17'} + hasBin: true + + ufo@1.6.2: + resolution: {integrity: sha512-heMioaxBcG9+Znsda5Q8sQbWnLJSl98AFDXTO80wELWEzX3hordXsTdxrIfMQoO9IY1MEnoGoPjpoKpMj+Yx0Q==} + + ultracite@7.0.11: + resolution: {integrity: sha512-YeuJTf/Tu12l7K0qvl1G525NfrPUay6UFVt6TrTL8QfXcFZBI+Tzr0Dg14Hxcb964pRQF5PjBaUk3bJCNQHu+g==} + hasBin: true + peerDependencies: + oxlint: ^1.0.0 + peerDependenciesMeta: + oxlint: + optional: true + + undici-types@7.16.0: + resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} + + vite@7.3.1: + resolution: {integrity: sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + peerDependencies: + '@types/node': ^20.19.0 || >=22.12.0 + jiti: '>=1.21.0' + less: ^4.0.0 + lightningcss: ^1.21.0 + sass: ^1.70.0 + sass-embedded: ^1.70.0 + stylus: '>=0.54.8' + sugarss: ^5.0.0 + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 + peerDependenciesMeta: + '@types/node': + optional: true + jiti: + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + tsx: + optional: true + yaml: + optional: true + + vitest@4.0.17: + resolution: {integrity: sha512-FQMeF0DJdWY0iOnbv466n/0BudNdKj1l5jYgl5JVTwjSsZSlqyXFt/9+1sEyhR6CLowbZpV7O1sCHrzBhucKKg==} + engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@opentelemetry/api': ^1.9.0 + '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 + '@vitest/browser-playwright': 4.0.17 + '@vitest/browser-preview': 4.0.17 + '@vitest/browser-webdriverio': 4.0.17 + '@vitest/ui': 4.0.17 + happy-dom: '*' + jsdom: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@opentelemetry/api': + optional: true + '@types/node': + optional: true + '@vitest/browser-playwright': + optional: true + '@vitest/browser-preview': + optional: true + '@vitest/browser-webdriverio': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + + why-is-node-running@2.3.0: + resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} + engines: {node: '>=8'} + hasBin: true + + yoctocolors@2.1.2: + resolution: {integrity: sha512-CzhO+pFNo8ajLM2d2IW/R93ipy99LWjtwblvC1RsoSUMZgyLbYFr221TnSNT7GjGdYui6P459mw9JH/g/zW2ug==} + engines: {node: '>=18'} + + zod@4.3.5: + resolution: {integrity: sha512-k7Nwx6vuWx1IJ9Bjuf4Zt1PEllcwe7cls3VNzm4CQ1/hgtFUK2bRNG3rvnpPUhFjmqJKAKtjV576KnUkHocg/g==} + +snapshots: + + '@anthropic-ai/sdk@0.71.2(zod@4.3.5)': + dependencies: + json-schema-to-ts: 3.1.1 + optionalDependencies: + zod: 4.3.5 + + '@babel/runtime@7.28.6': {} + + '@biomejs/biome@2.3.11': + optionalDependencies: + '@biomejs/cli-darwin-arm64': 2.3.11 + '@biomejs/cli-darwin-x64': 2.3.11 + '@biomejs/cli-linux-arm64': 2.3.11 + '@biomejs/cli-linux-arm64-musl': 2.3.11 + '@biomejs/cli-linux-x64': 2.3.11 + '@biomejs/cli-linux-x64-musl': 2.3.11 + '@biomejs/cli-win32-arm64': 2.3.11 + '@biomejs/cli-win32-x64': 2.3.11 + + '@biomejs/cli-darwin-arm64@2.3.11': + optional: true + + '@biomejs/cli-darwin-x64@2.3.11': + optional: true + + '@biomejs/cli-linux-arm64-musl@2.3.11': + optional: true + + '@biomejs/cli-linux-arm64@2.3.11': + optional: true + + '@biomejs/cli-linux-x64-musl@2.3.11': + optional: true + + '@biomejs/cli-linux-x64@2.3.11': + optional: true + + '@biomejs/cli-win32-arm64@2.3.11': + optional: true + + '@biomejs/cli-win32-x64@2.3.11': + optional: true + + '@clack/core@0.5.0': + dependencies: + picocolors: 1.1.1 + sisteransi: 1.0.5 + + '@clack/prompts@0.11.0': + dependencies: + '@clack/core': 0.5.0 + picocolors: 1.1.1 + sisteransi: 1.0.5 + + '@esbuild/aix-ppc64@0.27.2': + optional: true + + '@esbuild/android-arm64@0.27.2': + optional: true + + '@esbuild/android-arm@0.27.2': + optional: true + + '@esbuild/android-x64@0.27.2': + optional: true + + '@esbuild/darwin-arm64@0.27.2': + optional: true + + '@esbuild/darwin-x64@0.27.2': + optional: true + + '@esbuild/freebsd-arm64@0.27.2': + optional: true + + '@esbuild/freebsd-x64@0.27.2': + optional: true + + '@esbuild/linux-arm64@0.27.2': + optional: true + + '@esbuild/linux-arm@0.27.2': + optional: true + + '@esbuild/linux-ia32@0.27.2': + optional: true + + '@esbuild/linux-loong64@0.27.2': + optional: true + + '@esbuild/linux-mips64el@0.27.2': + optional: true + + '@esbuild/linux-ppc64@0.27.2': + optional: true + + '@esbuild/linux-riscv64@0.27.2': + optional: true + + '@esbuild/linux-s390x@0.27.2': + optional: true + + '@esbuild/linux-x64@0.27.2': + optional: true + + '@esbuild/netbsd-arm64@0.27.2': + optional: true + + '@esbuild/netbsd-x64@0.27.2': + optional: true + + '@esbuild/openbsd-arm64@0.27.2': + optional: true + + '@esbuild/openbsd-x64@0.27.2': + optional: true + + '@esbuild/openharmony-arm64@0.27.2': + optional: true + + '@esbuild/sunos-x64@0.27.2': + optional: true + + '@esbuild/win32-arm64@0.27.2': + optional: true + + '@esbuild/win32-ia32@0.27.2': + optional: true + + '@esbuild/win32-x64@0.27.2': + optional: true + + '@isaacs/balanced-match@4.0.1': {} + + '@isaacs/brace-expansion@5.0.0': + dependencies: + '@isaacs/balanced-match': 4.0.1 + + '@jridgewell/gen-mapping@0.3.13': + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/sourcemap-codec@1.5.5': {} + + '@jridgewell/trace-mapping@0.3.31': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 + + '@rollup/rollup-android-arm-eabi@4.55.1': + optional: true + + '@rollup/rollup-android-arm64@4.55.1': + optional: true + + '@rollup/rollup-darwin-arm64@4.55.1': + optional: true + + '@rollup/rollup-darwin-x64@4.55.1': + optional: true + + '@rollup/rollup-freebsd-arm64@4.55.1': + optional: true + + '@rollup/rollup-freebsd-x64@4.55.1': + optional: true + + '@rollup/rollup-linux-arm-gnueabihf@4.55.1': + optional: true + + '@rollup/rollup-linux-arm-musleabihf@4.55.1': + optional: true + + '@rollup/rollup-linux-arm64-gnu@4.55.1': + optional: true + + '@rollup/rollup-linux-arm64-musl@4.55.1': + optional: true + + '@rollup/rollup-linux-loong64-gnu@4.55.1': + optional: true + + '@rollup/rollup-linux-loong64-musl@4.55.1': + optional: true + + '@rollup/rollup-linux-ppc64-gnu@4.55.1': + optional: true + + '@rollup/rollup-linux-ppc64-musl@4.55.1': + optional: true + + '@rollup/rollup-linux-riscv64-gnu@4.55.1': + optional: true + + '@rollup/rollup-linux-riscv64-musl@4.55.1': + optional: true + + '@rollup/rollup-linux-s390x-gnu@4.55.1': + optional: true + + '@rollup/rollup-linux-x64-gnu@4.55.1': + optional: true + + '@rollup/rollup-linux-x64-musl@4.55.1': + optional: true + + '@rollup/rollup-openbsd-x64@4.55.1': + optional: true + + '@rollup/rollup-openharmony-arm64@4.55.1': + optional: true + + '@rollup/rollup-win32-arm64-msvc@4.55.1': + optional: true + + '@rollup/rollup-win32-ia32-msvc@4.55.1': + optional: true + + '@rollup/rollup-win32-x64-gnu@4.55.1': + optional: true + + '@rollup/rollup-win32-x64-msvc@4.55.1': + optional: true + + '@standard-schema/spec@1.1.0': {} + + '@trpc/server@11.8.1(typescript@5.9.3)': + dependencies: + typescript: 5.9.3 + + '@types/chai@5.2.3': + dependencies: + '@types/deep-eql': 4.0.2 + assertion-error: 2.0.1 + + '@types/deep-eql@4.0.2': {} + + '@types/estree@1.0.8': {} + + '@types/node@24.10.8': + dependencies: + undici-types: 7.16.0 + + '@vitest/expect@4.0.17': + dependencies: + '@standard-schema/spec': 1.1.0 + '@types/chai': 5.2.3 + '@vitest/spy': 4.0.17 + '@vitest/utils': 4.0.17 + chai: 6.2.2 + tinyrainbow: 3.0.3 + + '@vitest/mocker@4.0.17(vite@7.3.1(@types/node@24.10.8))': + dependencies: + '@vitest/spy': 4.0.17 + estree-walker: 3.0.3 + magic-string: 0.30.21 + optionalDependencies: + vite: 7.3.1(@types/node@24.10.8) + + '@vitest/pretty-format@4.0.17': + dependencies: + tinyrainbow: 3.0.3 + + '@vitest/runner@4.0.17': + dependencies: + '@vitest/utils': 4.0.17 + pathe: 2.0.3 + + '@vitest/snapshot@4.0.17': + dependencies: + '@vitest/pretty-format': 4.0.17 + magic-string: 0.30.21 + pathe: 2.0.3 + + '@vitest/spy@4.0.17': {} + + '@vitest/utils@4.0.17': + dependencies: + '@vitest/pretty-format': 4.0.17 + tinyrainbow: 3.0.3 + + acorn@8.15.0: {} + + ansi-regex@6.2.2: {} + + any-promise@1.3.0: {} + + assertion-error@2.0.1: {} + + bundle-require@5.1.0(esbuild@0.27.2): + dependencies: + esbuild: 0.27.2 + load-tsconfig: 0.2.5 + + cac@6.7.14: {} + + chai@6.2.2: {} + + chalk@5.6.2: {} + + chokidar@4.0.3: + dependencies: + readdirp: 4.1.2 + + citty@0.1.6: + dependencies: + consola: 3.4.2 + + cli-cursor@5.0.0: + dependencies: + restore-cursor: 5.1.0 + + cli-spinners@3.4.0: {} + + commander@14.0.2: {} + + commander@4.1.1: {} + + confbox@0.1.8: {} + + confbox@0.2.2: {} + + consola@3.4.2: {} + + debug@4.4.3: + dependencies: + ms: 2.1.3 + + deepmerge@4.3.1: {} + + es-module-lexer@1.7.0: {} + + esbuild@0.27.2: + optionalDependencies: + '@esbuild/aix-ppc64': 0.27.2 + '@esbuild/android-arm': 0.27.2 + '@esbuild/android-arm64': 0.27.2 + '@esbuild/android-x64': 0.27.2 + '@esbuild/darwin-arm64': 0.27.2 + '@esbuild/darwin-x64': 0.27.2 + '@esbuild/freebsd-arm64': 0.27.2 + '@esbuild/freebsd-x64': 0.27.2 + '@esbuild/linux-arm': 0.27.2 + '@esbuild/linux-arm64': 0.27.2 + '@esbuild/linux-ia32': 0.27.2 + '@esbuild/linux-loong64': 0.27.2 + '@esbuild/linux-mips64el': 0.27.2 + '@esbuild/linux-ppc64': 0.27.2 + '@esbuild/linux-riscv64': 0.27.2 + '@esbuild/linux-s390x': 0.27.2 + '@esbuild/linux-x64': 0.27.2 + '@esbuild/netbsd-arm64': 0.27.2 + '@esbuild/netbsd-x64': 0.27.2 + '@esbuild/openbsd-arm64': 0.27.2 + '@esbuild/openbsd-x64': 0.27.2 + '@esbuild/openharmony-arm64': 0.27.2 + '@esbuild/sunos-x64': 0.27.2 + '@esbuild/win32-arm64': 0.27.2 + '@esbuild/win32-ia32': 0.27.2 + '@esbuild/win32-x64': 0.27.2 + + estree-walker@3.0.3: + dependencies: + '@types/estree': 1.0.8 + + expect-type@1.3.0: {} + + exsolve@1.0.8: {} + + fdir@6.5.0(picomatch@4.0.3): + optionalDependencies: + picomatch: 4.0.3 + + fix-dts-default-cjs-exports@1.0.1: + dependencies: + magic-string: 0.30.21 + mlly: 1.8.0 + rollup: 4.55.1 + + fsevents@2.3.3: + optional: true + + get-east-asian-width@1.4.0: {} + + glob@13.0.0: + dependencies: + minimatch: 10.1.1 + minipass: 7.1.2 + path-scurry: 2.0.1 + + is-interactive@2.0.0: {} + + is-unicode-supported@2.1.0: {} + + joycon@3.1.1: {} + + json-schema-to-ts@3.1.1: + dependencies: + '@babel/runtime': 7.28.6 + ts-algebra: 2.0.0 + + jsonc-parser@3.3.1: {} + + lilconfig@3.1.3: {} + + lines-and-columns@1.2.4: {} + + load-tsconfig@0.2.5: {} + + log-symbols@7.0.1: + dependencies: + is-unicode-supported: 2.1.0 + yoctocolors: 2.1.2 + + lru-cache@11.2.4: {} + + magic-string@0.30.21: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + + mimic-function@5.0.1: {} + + minimatch@10.1.1: + dependencies: + '@isaacs/brace-expansion': 5.0.0 + + minipass@7.1.2: {} + + mlly@1.8.0: + dependencies: + acorn: 8.15.0 + pathe: 2.0.3 + pkg-types: 1.3.1 + ufo: 1.6.2 + + ms@2.1.3: {} + + mz@2.7.0: + dependencies: + any-promise: 1.3.0 + object-assign: 4.1.1 + thenify-all: 1.6.0 + + nanoid@3.3.11: {} + + nypm@0.6.2: + dependencies: + citty: 0.1.6 + consola: 3.4.2 + pathe: 2.0.3 + pkg-types: 2.3.0 + tinyexec: 1.0.2 + + object-assign@4.1.1: {} + + obug@2.1.1: {} + + onetime@7.0.0: + dependencies: + mimic-function: 5.0.1 + + openai@6.16.0(zod@4.3.5): + optionalDependencies: + zod: 4.3.5 + + ora@9.0.0: + dependencies: + chalk: 5.6.2 + cli-cursor: 5.0.0 + cli-spinners: 3.4.0 + is-interactive: 2.0.0 + is-unicode-supported: 2.1.0 + log-symbols: 7.0.1 + stdin-discarder: 0.2.2 + string-width: 8.1.0 + strip-ansi: 7.1.2 + + path-scurry@2.0.1: + dependencies: + lru-cache: 11.2.4 + minipass: 7.1.2 + + pathe@2.0.3: {} + + picocolors@1.1.1: {} + + picomatch@4.0.3: {} + + pirates@4.0.7: {} + + pkg-types@1.3.1: + dependencies: + confbox: 0.1.8 + mlly: 1.8.0 + pathe: 2.0.3 + + pkg-types@2.3.0: + dependencies: + confbox: 0.2.2 + exsolve: 1.0.8 + pathe: 2.0.3 + + postcss-load-config@6.0.1(postcss@8.5.6): + dependencies: + lilconfig: 3.1.3 + optionalDependencies: + postcss: 8.5.6 + + postcss@8.5.6: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + readdirp@4.1.2: {} + + resolve-from@5.0.0: {} + + restore-cursor@5.1.0: + dependencies: + onetime: 7.0.0 + signal-exit: 4.1.0 + + rollup@4.55.1: + dependencies: + '@types/estree': 1.0.8 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.55.1 + '@rollup/rollup-android-arm64': 4.55.1 + '@rollup/rollup-darwin-arm64': 4.55.1 + '@rollup/rollup-darwin-x64': 4.55.1 + '@rollup/rollup-freebsd-arm64': 4.55.1 + '@rollup/rollup-freebsd-x64': 4.55.1 + '@rollup/rollup-linux-arm-gnueabihf': 4.55.1 + '@rollup/rollup-linux-arm-musleabihf': 4.55.1 + '@rollup/rollup-linux-arm64-gnu': 4.55.1 + '@rollup/rollup-linux-arm64-musl': 4.55.1 + '@rollup/rollup-linux-loong64-gnu': 4.55.1 + '@rollup/rollup-linux-loong64-musl': 4.55.1 + '@rollup/rollup-linux-ppc64-gnu': 4.55.1 + '@rollup/rollup-linux-ppc64-musl': 4.55.1 + '@rollup/rollup-linux-riscv64-gnu': 4.55.1 + '@rollup/rollup-linux-riscv64-musl': 4.55.1 + '@rollup/rollup-linux-s390x-gnu': 4.55.1 + '@rollup/rollup-linux-x64-gnu': 4.55.1 + '@rollup/rollup-linux-x64-musl': 4.55.1 + '@rollup/rollup-openbsd-x64': 4.55.1 + '@rollup/rollup-openharmony-arm64': 4.55.1 + '@rollup/rollup-win32-arm64-msvc': 4.55.1 + '@rollup/rollup-win32-ia32-msvc': 4.55.1 + '@rollup/rollup-win32-x64-gnu': 4.55.1 + '@rollup/rollup-win32-x64-msvc': 4.55.1 + fsevents: 2.3.3 + + siginfo@2.0.0: {} + + signal-exit@4.1.0: {} + + sisteransi@1.0.5: {} + + source-map-js@1.2.1: {} + + source-map@0.7.6: {} + + stackback@0.0.2: {} + + std-env@3.10.0: {} + + stdin-discarder@0.2.2: {} + + string-width@8.1.0: + dependencies: + get-east-asian-width: 1.4.0 + strip-ansi: 7.1.2 + + strip-ansi@7.1.2: + dependencies: + ansi-regex: 6.2.2 + + sucrase@3.35.1: + dependencies: + '@jridgewell/gen-mapping': 0.3.13 + commander: 4.1.1 + lines-and-columns: 1.2.4 + mz: 2.7.0 + pirates: 4.0.7 + tinyglobby: 0.2.15 + ts-interface-checker: 0.1.13 + + thenify-all@1.6.0: + dependencies: + thenify: 3.3.1 + + thenify@3.3.1: + dependencies: + any-promise: 1.3.0 + + tinybench@2.9.0: {} + + tinyexec@0.3.2: {} + + tinyexec@1.0.2: {} + + tinyglobby@0.2.15: + dependencies: + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + + tinyrainbow@3.0.3: {} + + tree-kill@1.2.2: {} + + trpc-cli@0.12.2(@trpc/server@11.8.1(typescript@5.9.3))(zod@4.3.5): + dependencies: + commander: 14.0.2 + optionalDependencies: + '@trpc/server': 11.8.1(typescript@5.9.3) + zod: 4.3.5 + + ts-algebra@2.0.0: {} + + ts-interface-checker@0.1.13: {} + + tsup@8.5.1(postcss@8.5.6)(typescript@5.9.3): + dependencies: + bundle-require: 5.1.0(esbuild@0.27.2) + cac: 6.7.14 + chokidar: 4.0.3 + consola: 3.4.2 + debug: 4.4.3 + esbuild: 0.27.2 + fix-dts-default-cjs-exports: 1.0.1 + joycon: 3.1.1 + picocolors: 1.1.1 + postcss-load-config: 6.0.1(postcss@8.5.6) + resolve-from: 5.0.0 + rollup: 4.55.1 + source-map: 0.7.6 + sucrase: 3.35.1 + tinyexec: 0.3.2 + tinyglobby: 0.2.15 + tree-kill: 1.2.2 + optionalDependencies: + postcss: 8.5.6 + typescript: 5.9.3 + transitivePeerDependencies: + - jiti + - supports-color + - tsx + - yaml + + typescript@5.9.3: {} + + ufo@1.6.2: {} + + ultracite@7.0.11(typescript@5.9.3): + dependencies: + '@clack/prompts': 0.11.0 + '@trpc/server': 11.8.1(typescript@5.9.3) + deepmerge: 4.3.1 + glob: 13.0.0 + jsonc-parser: 3.3.1 + nypm: 0.6.2 + trpc-cli: 0.12.2(@trpc/server@11.8.1(typescript@5.9.3))(zod@4.3.5) + zod: 4.3.5 + transitivePeerDependencies: + - '@orpc/server' + - '@valibot/to-json-schema' + - effect + - typescript + - valibot + + undici-types@7.16.0: {} + + vite@7.3.1(@types/node@24.10.8): + dependencies: + esbuild: 0.27.2 + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + postcss: 8.5.6 + rollup: 4.55.1 + tinyglobby: 0.2.15 + optionalDependencies: + '@types/node': 24.10.8 + fsevents: 2.3.3 + + vitest@4.0.17(@types/node@24.10.8): + dependencies: + '@vitest/expect': 4.0.17 + '@vitest/mocker': 4.0.17(vite@7.3.1(@types/node@24.10.8)) + '@vitest/pretty-format': 4.0.17 + '@vitest/runner': 4.0.17 + '@vitest/snapshot': 4.0.17 + '@vitest/spy': 4.0.17 + '@vitest/utils': 4.0.17 + es-module-lexer: 1.7.0 + expect-type: 1.3.0 + magic-string: 0.30.21 + obug: 2.1.1 + pathe: 2.0.3 + picomatch: 4.0.3 + std-env: 3.10.0 + tinybench: 2.9.0 + tinyexec: 1.0.2 + tinyglobby: 0.2.15 + tinyrainbow: 3.0.3 + vite: 7.3.1(@types/node@24.10.8) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 24.10.8 + transitivePeerDependencies: + - jiti + - less + - lightningcss + - msw + - sass + - sass-embedded + - stylus + - sugarss + - terser + - tsx + - yaml + + why-is-node-running@2.3.0: + dependencies: + siginfo: 2.0.0 + stackback: 0.0.2 + + yoctocolors@2.1.2: {} + + zod@4.3.5: {} diff --git a/toolkit-docs-generator/run-engine.sh b/toolkit-docs-generator/run-engine.sh new file mode 100644 index 000000000..4b36e1626 --- /dev/null +++ b/toolkit-docs-generator/run-engine.sh @@ -0,0 +1,174 @@ +#!/usr/bin/env bash +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +GEN_DIR="$SCRIPT_DIR" +DEFAULT_OUTPUT_DIR="${GEN_DIR}/../data/toolkits" +DEFAULT_ENGINE_URL="http://localhost:9099" +DEFAULT_METADATA_FILE="${GEN_DIR}/mock-data/metadata.json" + +RUN_ALL="false" +PROVIDERS_ARG="" +SKIP_EXAMPLES="false" +SKIP_SUMMARY="false" + +OUTPUT_DIR="${OUTPUT_DIR:-}" +METADATA_FILE="${METADATA_FILE:-}" + +print_usage() { + cat <<'USAGE' +Usage: ./run-engine.sh [options] + +Options: + --all Run for all toolkits + --providers Comma-separated list (e.g. "Github:1.0.0,Slack") + --output Output directory (default: ../data/toolkits) + --metadata-file Metadata JSON file (default: mock-data/metadata.json) + --skip-examples Skip example generation + --skip-summary Skip summary generation + -h, --help Show this help message +USAGE +} + +while [[ $# -gt 0 ]]; do + case "$1" in + --all) + RUN_ALL="true" + shift + ;; + --providers) + PROVIDERS_ARG="${2:-}" + shift 2 + ;; + --output) + OUTPUT_DIR="${2:-}" + shift 2 + ;; + --metadata-file) + METADATA_FILE="${2:-}" + shift 2 + ;; + --skip-summary) + SKIP_SUMMARY="true" + shift + ;; + --skip-examples) + SKIP_EXAMPLES="true" + shift + ;; + -h|--help) + print_usage + exit 0 + ;; + *) + echo "Unknown option: $1" >&2 + print_usage >&2 + exit 1 + ;; + esac +done + +prompt_value() { + local var_name="$1" + local prompt="$2" + local default_value="${3:-}" + local current_value="${!var_name-}" + + if [[ -n "${current_value}" ]]; then + return + fi + + if [[ -n "${default_value}" ]]; then + read -r -p "${prompt} [${default_value}]: " current_value + current_value="${current_value:-$default_value}" + else + read -r -p "${prompt}: " current_value + fi + + export "${var_name}=${current_value}" +} + +prompt_secret() { + local var_name="$1" + local prompt="$2" + local current_value="${!var_name-}" + + if [[ -n "${current_value}" ]]; then + return + fi + + read -r -s -p "${prompt}: " current_value + echo + export "${var_name}=${current_value}" +} + +prompt_value "ENGINE_API_URL" "Engine API URL" "${DEFAULT_ENGINE_URL}" +prompt_secret "ENGINE_API_KEY" "Engine API key" + +if [[ "${SKIP_EXAMPLES}" != "true" || "${SKIP_SUMMARY}" != "true" ]]; then + prompt_value "LLM_PROVIDER" "LLM provider (openai|anthropic)" "openai" + if [[ "${LLM_PROVIDER}" != "openai" && "${LLM_PROVIDER}" != "anthropic" ]]; then + echo "LLM provider must be 'openai' or 'anthropic'." >&2 + exit 1 + fi + + prompt_value "LLM_MODEL" "LLM model" + if [[ -z "${LLM_MODEL}" ]]; then + echo "LLM model is required." >&2 + exit 1 + fi + + if [[ "${LLM_PROVIDER}" == "openai" ]]; then + prompt_secret "LLM_API_KEY" "OpenAI API key" + else + prompt_secret "LLM_API_KEY" "Anthropic API key" + fi +fi + +OUTPUT_DIR="${OUTPUT_DIR:-$DEFAULT_OUTPUT_DIR}" +METADATA_FILE="${METADATA_FILE:-$DEFAULT_METADATA_FILE}" + +if [[ "${RUN_ALL}" != "true" && -z "${PROVIDERS_ARG}" ]]; then + read -r -p "Providers (e.g. Github:1.0.0,Slack) or leave blank for all: " PROVIDERS_ARG + if [[ -z "${PROVIDERS_ARG}" ]]; then + RUN_ALL="true" + fi +fi + +echo "Starting generator..." +echo " Engine URL: ${ENGINE_API_URL}" +echo " Output: ${OUTPUT_DIR}" +echo " LLM: ${LLM_PROVIDER} (${LLM_MODEL})" + +if [[ "${RUN_ALL}" == "true" ]]; then + echo " Providers: all" +else + echo " Providers: ${PROVIDERS_ARG}" +fi + +cmd=(pnpm --dir "${GEN_DIR}" start generate) +if [[ "${RUN_ALL}" == "true" ]]; then + cmd+=(--all) +else + cmd+=(--providers "${PROVIDERS_ARG}") +fi + +cmd+=(--engine-api-url "${ENGINE_API_URL}") +cmd+=(--engine-api-key "${ENGINE_API_KEY}") +cmd+=(--metadata-file "${METADATA_FILE}") +cmd+=(--output "${OUTPUT_DIR}") +if [[ "${SKIP_EXAMPLES}" == "true" ]]; then + cmd+=(--skip-examples) +fi + +if [[ "${SKIP_SUMMARY}" == "true" ]]; then + cmd+=(--skip-summary) +fi + +if [[ "${SKIP_EXAMPLES}" != "true" || "${SKIP_SUMMARY}" != "true" ]]; then + cmd+=(--llm-provider "${LLM_PROVIDER}") + cmd+=(--llm-model "${LLM_MODEL}") + cmd+=(--llm-api-key "${LLM_API_KEY}") +fi + +exec "${cmd[@]}" diff --git a/toolkit-docs-generator/scripts/merge-custom-sections.ts b/toolkit-docs-generator/scripts/merge-custom-sections.ts new file mode 100644 index 000000000..3e21854f5 --- /dev/null +++ b/toolkit-docs-generator/scripts/merge-custom-sections.ts @@ -0,0 +1,253 @@ +#!/usr/bin/env npx ts-node +/** + * Script to merge custom sections into existing toolkit JSON files. + * + * Usage: npx ts-node scripts/merge-custom-sections.ts \ + * --custom-sections ../data/custom_sections_for_merge.json \ + * --toolkits-dir ../data/toolkits + */ + +import { readdir, readFile, writeFile } from "fs/promises"; +import { join } from "path"; + +const JSON_PRETTY_PRINT_INDENT = 2; +const ERROR_PREVIEW_LIMIT = 10; +const SUMMARY_SEPARATOR_LENGTH = 50; + +type DocumentationChunk = { + type: string; + location: string; + position: string; + content: string; + header?: string; + contentBlocks?: unknown[]; +}; + +type CustomSections = { + documentationChunks?: DocumentationChunk[]; + customImports?: string[]; + subPages?: unknown[]; + toolChunks?: Record; +}; + +type MergedToolkit = { + id: string; + documentationChunks: DocumentationChunk[]; + customImports: string[]; + subPages: unknown[]; + [key: string]: unknown; +}; + +const normalizeId = (id: string): string => + id.toLowerCase().replace(/[^a-z0-9]/g, ""); + +type MergeOptions = { + customSectionsPath: string; + toolkitsDir: string; + verbose: boolean; +}; + +type MergeOutcome = { + mergedCount: number; + skippedCount: number; + errors: string[]; +}; + +const parseArgs = (args: string[]): MergeOptions => { + let customSectionsPath = "../data/custom_sections_for_merge.json"; + let toolkitsDir = "../data/toolkits"; + let verbose = false; + + for (let i = 0; i < args.length; i++) { + if (args[i] === "--custom-sections" && args[i + 1]) { + customSectionsPath = args[i + 1]; + i++; + } else if (args[i] === "--toolkits-dir" && args[i + 1]) { + toolkitsDir = args[i + 1]; + i++; + } else if (args[i] === "--verbose" || args[i] === "-v") { + verbose = true; + } + } + + return { customSectionsPath, toolkitsDir, verbose }; +}; + +const loadCustomSections = async ( + customSectionsPath: string +): Promise> => { + const customSectionsContent = await readFile(customSectionsPath, "utf-8"); + return JSON.parse(customSectionsContent) as Record; +}; + +const normalizeCustomSections = ( + customSections: Record +): Map => { + const normalizedCustomSections = new Map(); + for (const [id, sections] of Object.entries(customSections)) { + normalizedCustomSections.set(normalizeId(id), sections); + } + return normalizedCustomSections; +}; + +const listToolkitFiles = async (toolkitsDir: string): Promise => { + const entries = await readdir(toolkitsDir); + return entries.filter((f) => f.endsWith(".json") && f !== "index.json"); +}; + +const hasMergeableSections = (sections: CustomSections): boolean => { + const hasChunks = + sections.documentationChunks && sections.documentationChunks.length > 0; + const hasImports = + sections.customImports && sections.customImports.length > 0; + const hasSubPages = sections.subPages && sections.subPages.length > 0; + return Boolean(hasChunks || hasImports || hasSubPages); +}; + +const applyMergeSections = ( + toolkit: MergedToolkit, + sections: CustomSections +): void => { + if (sections.documentationChunks && sections.documentationChunks.length > 0) { + toolkit.documentationChunks = sections.documentationChunks; + } + if (sections.customImports && sections.customImports.length > 0) { + toolkit.customImports = sections.customImports; + } + if (sections.subPages && sections.subPages.length > 0) { + toolkit.subPages = sections.subPages; + } +}; + +const logVerboseMerge = ( + toolkit: MergedToolkit, + sections: CustomSections +): void => { + const chunkCount = sections.documentationChunks?.length ?? 0; + const subPageCount = sections.subPages?.length ?? 0; + console.log( + ` ✅ ${toolkit.id}: ${chunkCount} chunks, ${subPageCount} subpages` + ); +}; + +const mergeToolkitFile = async ( + fileName: string, + toolkitsDir: string, + normalizedCustomSections: Map, + verbose: boolean +): Promise<{ merged: boolean; skipped: boolean; error?: string }> => { + const filePath = join(toolkitsDir, fileName); + try { + const content = await readFile(filePath, "utf-8"); + const toolkit: MergedToolkit = JSON.parse(content); + const normalizedToolkitId = normalizeId(toolkit.id); + const sections = normalizedCustomSections.get(normalizedToolkitId); + + if (!sections) { + return { merged: false, skipped: true }; + } + + if (!hasMergeableSections(sections)) { + return { merged: false, skipped: true }; + } + + applyMergeSections(toolkit, sections); + + await writeFile( + filePath, + `${JSON.stringify(toolkit, null, JSON_PRETTY_PRINT_INDENT)}\n`, + "utf-8" + ); + + if (verbose) { + logVerboseMerge(toolkit, sections); + } + + return { merged: true, skipped: false }; + } catch (error) { + return { merged: false, skipped: false, error: String(error) }; + } +}; + +const logSummary = (outcome: MergeOutcome): void => { + const separator = "=".repeat(SUMMARY_SEPARATOR_LENGTH); + console.log(`\n${separator}`); + console.log("📊 Merge Summary"); + console.log(separator); + console.log(` Toolkits merged: ${outcome.mergedCount}`); + console.log( + ` Toolkits skipped: ${outcome.skippedCount} (no custom sections)` + ); + console.log(` Errors: ${outcome.errors.length}`); + + if (outcome.errors.length > 0) { + console.log("\n⚠️ Errors:"); + for (const error of outcome.errors.slice(0, ERROR_PREVIEW_LIMIT)) { + console.log(` - ${error}`); + } + if (outcome.errors.length > ERROR_PREVIEW_LIMIT) { + console.log( + ` ... and ${outcome.errors.length - ERROR_PREVIEW_LIMIT} more` + ); + } + } + + console.log("\n✅ Done!\n"); +}; + +async function main() { + const args = process.argv.slice(2); + const { customSectionsPath, toolkitsDir, verbose } = parseArgs(args); + + console.log("🔧 Custom Sections Merger\n"); + console.log(`📖 Loading custom sections: ${customSectionsPath}`); + + // Load custom sections + const customSections = await loadCustomSections(customSectionsPath); + const customSectionsCount = Object.keys(customSections).length; + console.log( + ` Found ${customSectionsCount} toolkit(s) with custom sections\n` + ); + + // Create normalized lookup + const normalizedCustomSections = normalizeCustomSections(customSections); + + // List toolkit files + console.log(`📂 Reading toolkits from: ${toolkitsDir}`); + const jsonFiles = await listToolkitFiles(toolkitsDir); + console.log(` Found ${jsonFiles.length} toolkit file(s)\n`); + + // Merge + let mergedCount = 0; + let skippedCount = 0; + const errors: string[] = []; + + console.log("🔄 Merging custom sections...\n"); + + for (const fileName of jsonFiles) { + const result = await mergeToolkitFile( + fileName, + toolkitsDir, + normalizedCustomSections, + verbose + ); + if (result.error) { + errors.push(`${fileName}: ${result.error}`); + continue; + } + if (result.merged) { + mergedCount++; + continue; + } + if (result.skipped) { + skippedCount++; + } + } + + logSummary({ mergedCount, skippedCount, errors }); +} + +main().catch((error) => { + console.error("❌ Error:", error); + process.exit(1); +}); diff --git a/toolkit-docs-generator/src/cli/api-source.ts b/toolkit-docs-generator/src/cli/api-source.ts new file mode 100644 index 000000000..3304a9bf8 --- /dev/null +++ b/toolkit-docs-generator/src/cli/api-source.ts @@ -0,0 +1,43 @@ +export type ApiSource = "list-tools" | "tool-metadata" | "mock"; + +type ApiSourceOptions = { + apiSource?: string; + toolMetadataUrl?: string; + toolMetadataKey?: string; +}; + +export const resolveApiSource = (options: ApiSourceOptions): ApiSource => { + // Explicit source takes precedence + if (options.apiSource) { + const source = options.apiSource.toLowerCase(); + if (source === "list-tools") { + return "list-tools"; + } + if (source === "engine") { + return "tool-metadata"; + } + if (source === "tool-metadata") { + return "tool-metadata"; + } + if (source === "mock") { + return "mock"; + } + throw new Error( + `Invalid --api-source "${options.apiSource}". Use "list-tools", "tool-metadata", or "mock".` + ); + } + + // Auto-detect based on provided Engine credentials only. + // List-tools endpoint must be explicitly selected via --api-source list-tools. + const hasToolMetadataKey = !!( + options.toolMetadataKey ?? process.env.ENGINE_API_KEY + ); + const hasToolMetadataUrl = !!( + options.toolMetadataUrl ?? process.env.ENGINE_API_URL + ); + + if (hasToolMetadataKey && hasToolMetadataUrl) { + return "tool-metadata"; + } + return "mock"; +}; diff --git a/toolkit-docs-generator/src/cli/index.ts b/toolkit-docs-generator/src/cli/index.ts new file mode 100644 index 000000000..dfc0f6293 --- /dev/null +++ b/toolkit-docs-generator/src/cli/index.ts @@ -0,0 +1,2302 @@ +#!/usr/bin/env node + +/** + * Toolkit Docs Generator CLI + * + * Entry point for the CLI application. + * Run with: npx toolkit-docs-generator + * + * Input format for providers: + * --providers "Github:1.0.0,Slack:2.1.0" + * --providers "Github" (uses latest version) + */ + +import chalk from "chalk"; +import { Command } from "commander"; +import { access, mkdir, readdir, readFile, rm, writeFile } from "fs/promises"; +import ora from "ora"; +import { join, resolve } from "path"; +import { + detectChanges, + detectSummaryChanges, + formatChangeSummary, + formatDetailedChanges, + formatSummaryChangeSummary, + getChangedToolkitIds, + getChangedToolkitIdsFromSummary, + hasChanges, + hasSummaryChanges, + type SummaryToolkit, +} from "../diff/index.js"; +import { + createJsonGenerator, + type VerificationProgress, + verifyOutputDir, +} from "../generator/index.js"; +import { + createLlmClient, + type LlmClient, + type LlmProvider, + LlmToolExampleGenerator, + LlmToolkitOverviewGenerator, + LlmToolkitSummaryGenerator, +} from "../llm/index.js"; +import type { MergeResult } from "../merger/data-merger.js"; +import { createDataMerger } from "../merger/data-merger.js"; +import { createCustomSectionsFileSource } from "../sources/custom-sections-file.js"; +import { createDesignSystemMetadataSource } from "../sources/design-system-metadata.js"; +import { EngineApiSource } from "../sources/engine-api.js"; +import { createEmptyCustomSectionsSource } from "../sources/in-memory.js"; +import { createMockMetadataSource } from "../sources/mock-metadata.js"; +import { createOverviewInstructionsFileSource } from "../sources/overview-instructions-file.js"; +import { + createArcadeToolkitDataSource, + createEngineToolkitDataSource, + createMockToolkitDataSource, + type IToolkitDataSource, +} from "../sources/toolkit-data-source.js"; +import { + type MergedToolkit, + MergedToolkitSchema, + type ProviderVersion, + ProviderVersionSchema, +} from "../types/index.js"; +import { normalizeId } from "../utils/fp.js"; +import { resolveSafeOutputDir } from "../utils/output-dir.js"; +import { + createProgressTracker, + formatToolkitComplete, +} from "../utils/progress.js"; +import { resolveProviderIdsFromMetadata } from "../utils/provider-matching.js"; +import { + appendLogEntry, + readFailedToolsReport, + writeFailedToolsReport, +} from "../utils/run-logs.js"; +import { type ApiSource, resolveApiSource } from "./api-source.js"; + +const program = new Command(); + +/** + * Parse providers string into array of ProviderVersion objects + * @param input - Comma-separated string like "Github:1.0.0,Slack:2.1.0" + */ +const parseProviders = (input: string): ProviderVersion[] => { + const parts = input + .split(",") + .map((p) => p.trim()) + .filter(Boolean); + return parts.map((part) => { + const [provider, version] = part.split(":").map((s) => s.trim()); + if (!provider) { + throw new Error( + `Invalid provider format: "${part}". Expected "Provider" or "Provider:version"` + ); + } + const parsed = ProviderVersionSchema.safeParse({ + provider, + version: version || undefined, + }); + if (!parsed.success) { + throw new Error(`Invalid provider: ${parsed.error.message}`); + } + return parsed.data; + }); +}; + +const parseToolkitList = (input: string): string[] => + input + .split(",") + .map((value) => value.trim()) + .filter(Boolean); + +const buildOverviewTemplate = (toolkitId: string, label?: string) => ({ + toolkitId, + label: label ?? toolkitId, + sources: [], + instructions: + "Write an overview section for this toolkit. Start with a short paragraph, then add a **Capabilities** list. Mention auth type/scopes and secrets if relevant.", +}); + +const buildOverviewFilePath = (dir: string, toolkitId: string): string => { + const fileName = `${normalizeId(toolkitId)}.json`; + return resolve(dir, fileName); +}; + +const resolveProviderIds = async ( + providers: ProviderVersion[], + metadataSource: unknown +): Promise => { + const source = metadataSource as { + getAllToolkitsMetadata?: () => Promise< + readonly { id: string; label: string }[] + >; + }; + if (!source.getAllToolkitsMetadata) return providers; + + const all = await source.getAllToolkitsMetadata(); + return resolveProviderIdsFromMetadata(providers, all); +}; + +/** + * Get the default fixture paths (for mock mode) + */ +const getDefaultMockDataDir = (): string => join(process.cwd(), "mock-data"); + +/** + * Get the default output directory for docs JSON. + */ +const getDefaultOutputDir = (): string => { + const cwd = process.cwd(); + if (cwd.endsWith("toolkit-docs-generator")) { + return resolve(cwd, "..", "data", "toolkits"); + } + return resolve(cwd, "data", "toolkits"); +}; + +const getDefaultVerificationDir = (): string => { + const cwd = process.cwd(); + if (cwd.endsWith("toolkit-docs-generator")) { + return resolve(cwd, "..", "toolkit-docs-generator-verification"); + } + return resolve(cwd, "toolkit-docs-generator-verification"); +}; + +const getDefaultLogDir = (): string => + resolve(getDefaultVerificationDir(), "logs"); + +const getDefaultOverviewDir = (): string => { + const cwd = process.cwd(); + if (cwd.endsWith("toolkit-docs-generator")) { + return resolve(cwd, "overview-input"); + } + return resolve(cwd, "toolkit-docs-generator", "overview-input"); +}; + +const buildLogPaths = (logDir: string) => ({ + runLogPath: join(logDir, "runs.log"), + changeLogPath: join(logDir, "changes.log"), + failedToolsPath: join(logDir, "failed-tools.json"), +}); + +const createMetadataSource = async (options: { + metadataFile: string; + useMetadataFile: boolean; + verbose: boolean; +}) => { + if (options.useMetadataFile) { + if (options.verbose) { + console.log( + chalk.dim( + `Using metadata file source: ${resolve(options.metadataFile)}` + ) + ); + } + return createMockMetadataSource(options.metadataFile); + } + + try { + const dsSource = await createDesignSystemMetadataSource(); + const all = + "getAllToolkitsMetadata" in dsSource + ? await ( + dsSource as { + getAllToolkitsMetadata: () => Promise; + } + ).getAllToolkitsMetadata() + : []; + + if (Array.isArray(all) && all.length > 0) { + if (options.verbose) { + console.log(chalk.dim(`Using Design System metadata (${all.length})`)); + } + return dsSource; + } + } catch (error) { + if (options.verbose) { + console.log(chalk.dim(`Design System metadata unavailable: ${error}`)); + } + } + + if (options.verbose) { + console.log( + chalk.dim( + `Falling back to metadata file source: ${resolve(options.metadataFile)}` + ) + ); + } + return createMockMetadataSource(options.metadataFile); +}; + +type OverviewInitOptions = { + toolkits?: string; + overviewDir: string; + metadataFile?: string; + force: boolean; +}; + +type MetadataSource = Awaited>; + +const getOverviewInitToolkits = (options: OverviewInitOptions): string[] => { + if (!options.toolkits) { + throw new Error('Missing required option "--toolkits".'); + } + + const toolkits = parseToolkitList(options.toolkits); + if (toolkits.length === 0) { + throw new Error("No toolkit IDs provided."); + } + + return toolkits; +}; + +const resolveOverviewInitMetadataSource = async ( + options: OverviewInitOptions +): Promise => { + const metadataFile = + options.metadataFile ?? join(getDefaultMockDataDir(), "metadata.json"); + return createMetadataSource({ + metadataFile, + useMetadataFile: Boolean(options.metadataFile), + verbose: false, + }); +}; + +const shouldSkipOverviewFile = async ( + filePath: string, + force: boolean +): Promise => { + if (force) { + return false; + } + + try { + await access(filePath); + return true; + } catch { + return false; + } +}; + +const getOverviewTemplateLabel = async ( + metadataSource: MetadataSource, + toolkitId: string +): Promise => { + if ("getToolkitMetadata" in metadataSource) { + const metadata = await metadataSource.getToolkitMetadata(toolkitId); + return metadata?.label ?? undefined; + } + + return; +}; + +const writeOverviewTemplate = async ( + filePath: string, + template: ReturnType +): Promise => { + await writeFile(filePath, `${JSON.stringify(template, null, 2)}\n`, "utf-8"); +}; + +const createOverviewFiles = async (options: { + toolkits: readonly string[]; + overviewDir: string; + metadataSource: MetadataSource; + force: boolean; +}): Promise<{ created: number; skipped: number }> => { + let created = 0; + let skipped = 0; + + for (const toolkitId of options.toolkits) { + const filePath = buildOverviewFilePath(options.overviewDir, toolkitId); + if (await shouldSkipOverviewFile(filePath, options.force)) { + skipped += 1; + continue; + } + + const label = await getOverviewTemplateLabel( + options.metadataSource, + toolkitId + ); + const template = buildOverviewTemplate(toolkitId, label); + await writeOverviewTemplate(filePath, template); + created += 1; + } + + return { created, skipped }; +}; + +const buildChangeLogDetails = ( + result: ReturnType +): string[] => { + const changed = getChangedToolkitIds(result); + const removed = result.toolkitChanges + .filter((change) => change.changeType === "removed") + .map((change) => change.toolkitId); + const versionOnly = result.toolkitChanges + .filter( + (change) => + change.changeType === "modified" && + change.toolChanges.length === 0 && + change.versionChanged + ) + .map((change) => change.toolkitId); + + const details = [ + `summary=${formatChangeSummary(result)}`, + `changed=${changed.length > 0 ? changed.join(", ") : "none"}`, + `removed=${removed.length > 0 ? removed.join(", ") : "none"}`, + ]; + + if (versionOnly.length > 0) { + details.push(`versionOnly=${versionOnly.join(", ")}`); + } + + return details; +}; + +const buildSummaryChangeLogDetails = ( + result: ReturnType +): string[] => { + const changed = getChangedToolkitIdsFromSummary(result); + const removed = result.toolkitChanges + .filter((change) => change.changeType === "removed") + .map((change) => change.toolkitId); + + return [ + `summary=${formatSummaryChangeSummary(result)}`, + `changed=${changed.length > 0 ? changed.join(", ") : "none"}`, + `removed=${removed.length > 0 ? removed.join(", ") : "none"}`, + ]; +}; + +const clearOutputDir = async ( + outputDir: string, + verbose: boolean +): Promise => { + const resolvedDir = await resolveSafeOutputDir(outputDir); + await rm(resolvedDir, { recursive: true, force: true }); + if (verbose) { + console.log(chalk.dim(`Cleared output directory: ${resolvedDir}`)); + } +}; + +const resolveLlmProvider = (value?: string): LlmProvider => { + if (value === "openai" || value === "anthropic") { + return value; + } + throw new Error( + 'LLM provider is required. Use --llm-provider "openai" or "anthropic".' + ); +}; + +const resolveLlmConfig = ( + options: { + llmProvider?: string; + llmApiKey?: string; + llmModel?: string; + llmBaseUrl?: string; + llmTemperature?: number; + llmMaxTokens?: number; + llmSystemPrompt?: string; + llmMaxRetries?: number; + }, + verbose: boolean +): { + client: LlmClient; + model: string; + temperature?: number; + maxTokens?: number; + systemPrompt?: string; +} => { + const provider = resolveLlmProvider( + options.llmProvider ?? process.env.LLM_PROVIDER + ); + const model = options.llmModel ?? process.env.LLM_MODEL; + + if (!model) { + throw new Error("LLM model is required. Use --llm-model or LLM_MODEL."); + } + + const apiKey = + options.llmApiKey ?? + (provider === "openai" + ? process.env.OPENAI_API_KEY + : process.env.ANTHROPIC_API_KEY); + + if (!apiKey) { + throw new Error( + provider === "openai" + ? "OpenAI API key is required. Use --llm-api-key or OPENAI_API_KEY." + : "Anthropic API key is required. Use --llm-api-key or ANTHROPIC_API_KEY." + ); + } + + const onRetry = verbose + ? (attempt: number, error: Error, delayMs: number) => { + console.log( + chalk.yellow( + ` ⚠️ LLM call failed (attempt ${attempt}), retrying in ${delayMs}ms: ${error.message}` + ) + ); + } + : undefined; + + const client = createLlmClient({ + provider, + config: { + apiKey, + ...(options.llmBaseUrl ? { baseUrl: options.llmBaseUrl } : {}), + retry: { + maxRetries: options.llmMaxRetries ?? 3, + onRetry, + }, + }, + }); + + return { + client, + model, + ...(options.llmTemperature !== undefined + ? { temperature: options.llmTemperature } + : {}), + ...(options.llmMaxTokens !== undefined + ? { maxTokens: options.llmMaxTokens } + : {}), + ...(options.llmSystemPrompt + ? { systemPrompt: options.llmSystemPrompt } + : {}), + }; +}; + +interface ToolkitDataSourceOptions { + apiSource?: string; + listToolsUrl?: string; + listToolsKey?: string; + listToolsPageSize?: number; + toolMetadataUrl?: string; + toolMetadataKey?: string; + toolMetadataPageSize?: number; +} + +const resolveListToolsConfig = (options: ToolkitDataSourceOptions) => { + const baseUrl = + options.listToolsUrl ?? + process.env.ARCADE_API_URL ?? + "https://api.arcade.dev"; + const apiKey = options.listToolsKey ?? process.env.ARCADE_API_KEY; + + if (!apiKey) { + return null; + } + + return { + baseUrl, + apiKey, + ...(options.listToolsPageSize + ? { pageSize: options.listToolsPageSize } + : {}), + }; +}; + +const resolveToolMetadataConfig = (options: ToolkitDataSourceOptions) => { + const baseUrl = options.toolMetadataUrl ?? process.env.ENGINE_API_URL; + const apiKey = options.toolMetadataKey ?? process.env.ENGINE_API_KEY; + + if (!(baseUrl && apiKey)) { + return null; + } + + return { + baseUrl, + apiKey, + ...(options.toolMetadataPageSize + ? { pageSize: options.toolMetadataPageSize } + : {}), + }; +}; + +const fetchToolMetadataSummary = async ( + options: ToolkitDataSourceOptions +): Promise<{ + toolkits: SummaryToolkit[]; + totalToolkits: number; +}> => { + const config = resolveToolMetadataConfig(options); + if (!config) { + throw new Error( + "Tool metadata summary requires --tool-metadata-url and --tool-metadata-key." + ); + } + + const source = new EngineApiSource({ + baseUrl: config.baseUrl, + apiKey: config.apiKey, + ...(config.pageSize ? { pageSize: config.pageSize } : {}), + }); + + const summary = await source.fetchToolkitsSummary(); + return { + toolkits: summary.toolkits.map((toolkit) => ({ + name: toolkit.name, + version: toolkit.version, + toolCount: toolkit.toolCount, + requiresSecrets: toolkit.requiresSecrets, + requiresOauth: toolkit.requiresOauth, + })), + totalToolkits: summary.totalToolkits, + }; +}; + +const createToolkitDataSourceForApi = ( + apiSource: ApiSource, + options: ToolkitDataSourceOptions, + metadataSource: ReturnType, + mockDataDir: string, + verbose: boolean, + spinner?: ReturnType +): IToolkitDataSource => { + if (apiSource === "list-tools") { + const config = resolveListToolsConfig(options); + if (!config) { + throw new Error( + "List tools API requires --list-tools-key (or ARCADE_API_KEY environment variable)." + ); + } + if (verbose) { + console.log(chalk.dim(`Using /v1/tools endpoint: ${config.baseUrl}`)); + } + // Add progress callback for API pagination + const onProgress = spinner + ? (fetched: number, total: number) => { + spinner.text = `Fetching tools from API... ${fetched}/${total}`; + } + : undefined; + return createArcadeToolkitDataSource({ + arcade: { ...config, onProgress }, + metadataSource, + }); + } + + if (apiSource === "tool-metadata") { + const config = resolveToolMetadataConfig(options); + if (!config) { + throw new Error( + "Tool metadata API requires --tool-metadata-url and --tool-metadata-key." + ); + } + if (verbose) { + console.log( + chalk.dim(`Using /v1/tool_metadata endpoint: ${config.baseUrl}`) + ); + } + return createEngineToolkitDataSource({ + engine: config, + metadataSource, + }); + } + + if (verbose) { + console.log(chalk.dim(`Using mock data: ${mockDataDir}`)); + } + return createMockToolkitDataSource({ + dataDir: mockDataDir, + }); +}; + +const normalizeToolkitKey = (toolkitId: string): string => + toolkitId.toLowerCase(); + +const loadPreviousToolkit = async ( + filePath: string +): Promise => { + try { + const content = await readFile(filePath, "utf-8"); + const parsed = JSON.parse(content) as unknown; + const result = MergedToolkitSchema.safeParse(parsed); + if (!result.success) { + return null; + } + return result.data; + } catch { + return null; + } +}; + +const loadPreviousToolkitsForProviders = async ( + dir: string, + providers: ProviderVersion[], + verbose: boolean +): Promise> => { + const previousToolkits = new Map(); + + for (const provider of providers) { + const filePath = join(dir, `${provider.provider.toLowerCase()}.json`); + const toolkit = await loadPreviousToolkit(filePath); + if (toolkit) { + previousToolkits.set(normalizeToolkitKey(toolkit.id), toolkit); + } else if (verbose) { + console.log( + chalk.dim(`No previous output found for ${provider.provider}.`) + ); + } + } + + return previousToolkits; +}; + +const loadPreviousToolkitsFromDir = async ( + dir: string, + verbose: boolean +): Promise> => { + const previousToolkits = new Map(); + + try { + const entries = await readdir(dir); + const jsonFiles = entries.filter( + (entry) => entry.endsWith(".json") && entry !== "index.json" + ); + + for (const fileName of jsonFiles) { + const filePath = join(dir, fileName); + const toolkit = await loadPreviousToolkit(filePath); + if (toolkit) { + previousToolkits.set(normalizeToolkitKey(toolkit.id), toolkit); + } + } + } catch (error) { + if (verbose) { + console.log(chalk.dim(`Failed to read previous output: ${error}`)); + } + } + + return previousToolkits; +}; + +const processProviders = async ( + providers: ProviderVersion[], + merger: ReturnType, + spinner: ReturnType, + verbose: boolean +): Promise => { + const results: MergeResult[] = []; + + for (const pv of providers) { + spinner.start(`Processing ${pv.provider}...`); + + try { + const result = await merger.mergeToolkit(pv.provider, pv.version); + results.push(result); + + if (result.warnings.length > 0 && verbose) { + spinner.warn(`${pv.provider}: ${result.warnings.join(", ")}`); + } else { + spinner.succeed(`${pv.provider}: ${result.toolkit.tools.length} tools`); + } + } catch (error) { + spinner.fail(`${pv.provider}: ${error}`); + } + } + + return results; +}; + +program + .name("toolkit-docs-generator") + .description("Generate documentation JSON for Arcade toolkits") + .version("1.0.0"); + +program + .command("overview-init") + .description("Create overview instruction file(s) for toolkits") + .option( + "--toolkits ", + 'Comma-separated toolkit IDs (e.g. "Github,Slack")' + ) + .option( + "--overview-dir ", + "Directory for overview instruction files", + getDefaultOverviewDir() + ) + .option("--metadata-file ", "Path to metadata JSON file") + .option("--force", "Overwrite existing overview files", false) + .action(async (options: OverviewInitOptions) => { + const spinner = ora("Preparing overview files...").start(); + try { + const toolkits = getOverviewInitToolkits(options); + const overviewDir = resolve(options.overviewDir); + await mkdir(overviewDir, { recursive: true }); + + const metadataSource = await resolveOverviewInitMetadataSource(options); + const { created, skipped } = await createOverviewFiles({ + toolkits, + overviewDir, + metadataSource, + force: options.force, + }); + + spinner.succeed( + `Overview files created: ${created}${skipped > 0 ? ` (skipped ${skipped})` : ""}` + ); + } catch (error) { + spinner.fail( + `Error: ${error instanceof Error ? error.message : String(error)}` + ); + process.exit(1); + } + }); + +program + .command("generate") + .description("Generate documentation for specific providers or all toolkits") + .option( + "-p, --providers ", + 'Comma-separated list of providers with optional versions (e.g., "Github:1.0.0,Slack:2.1.0" or "Github,Slack")' + ) + .option( + "--failed-tools-file ", + "Path to failed tools report to rerun only impacted toolkits" + ) + .option("--all", "Generate documentation for all toolkits", false) + .option("-o, --output ", "Output directory", getDefaultOutputDir()) + .option("--log-dir ", "Directory for run logs", getDefaultLogDir()) + .option("--mock-data-dir ", "Path to mock data directory") + .option("--metadata-file ", "Path to metadata JSON file") + .option( + "--overview-dir ", + "Directory with toolkit overview instruction files", + getDefaultOverviewDir() + ) + .option( + "--overview-file ", + "Path to a single overview instruction file" + ) + .option( + "--api-source ", + 'API source: "tool-metadata" (/v1/tool_metadata, default with Engine creds), "list-tools" (/v1/tools, only when --api-source list-tools), or "mock"' + ) + .option( + "--list-tools-url ", + "List tools API URL (default: https://api.arcade.dev)" + ) + .option( + "--list-tools-key ", + "List tools API key (or ARCADE_API_KEY env)" + ) + .option( + "--list-tools-page-size ", + "List tools API page size", + (value) => Number.parseInt(value, 10) + ) + .option("--tool-metadata-url ", "Tool metadata API URL") + .option( + "--tool-metadata-key ", + "Tool metadata API key (or ENGINE_API_KEY env)" + ) + .option( + "--tool-metadata-page-size ", + "Tool metadata API page size", + (value) => Number.parseInt(value, 10) + ) + .option("--previous-output ", "Path to previous output directory") + .option("--force-regenerate", "Regenerate all examples and summary", false) + .option( + "--overwrite-output", + "Delete output directory before writing new JSON" + ) + .option("--llm-provider ", "LLM provider (openai|anthropic)") + .option("--llm-model ", "LLM model to use") + .option("--llm-api-key ", "LLM API key") + .option("--llm-base-url ", "LLM base URL") + .option("--llm-temperature ", "LLM temperature", (value) => + Number.parseFloat(value) + ) + .option("--llm-max-tokens ", "LLM max tokens", (value) => + Number.parseInt(value, 10) + ) + .option("--llm-system-prompt ", "LLM system prompt override") + .option( + "--llm-max-retries ", + "Max LLM retry attempts (default: 3)", + (value) => Number.parseInt(value, 10) + ) + .option( + "--llm-concurrency ", + "Max concurrent LLM calls per toolkit (default: 5)", + (value) => Number.parseInt(value, 10) + ) + .option( + "--toolkit-concurrency ", + "Max concurrent toolkit processing (default: 3)", + (value) => Number.parseInt(value, 10) + ) + .option( + "--no-index-from-output", + "Do not rebuild index from output directory" + ) + .option("--skip-examples", "Skip LLM example generation", false) + .option("--skip-summary", "Skip LLM summary generation", false) + .option("--skip-overview", "Skip LLM overview generation", false) + .option("--no-verify-output", "Skip output verification") + .option("--custom-sections ", "Path to custom sections JSON") + .option( + "--resume", + "Resume from previous run, skipping already-generated toolkits", + false + ) + .option( + "--incremental", + "Write each toolkit immediately after processing (default when --resume)", + false + ) + .option( + "--skip-unchanged", + "Only regenerate toolkits with changed tool definitions", + false + ) + .option("--verbose", "Enable verbose logging", false) + .action( + async (options: { + providers?: string; + failedToolsFile?: string; + all: boolean; + output: string; + logDir: string; + mockDataDir?: string; + metadataFile?: string; + apiSource?: string; + listToolsUrl?: string; + listToolsKey?: string; + listToolsPageSize?: number; + toolMetadataUrl?: string; + toolMetadataKey?: string; + toolMetadataPageSize?: number; + previousOutput?: string; + forceRegenerate: boolean; + overwriteOutput?: boolean; + llmProvider?: string; + llmModel?: string; + llmApiKey?: string; + llmBaseUrl?: string; + llmTemperature?: number; + llmMaxTokens?: number; + llmSystemPrompt?: string; + llmMaxRetries?: number; + llmConcurrency?: number; + toolkitConcurrency?: number; + indexFromOutput: boolean; + skipExamples: boolean; + skipSummary: boolean; + skipOverview: boolean; + overviewDir: string; + overviewFile?: string; + verifyOutput: boolean; + customSections?: string; + resume: boolean; + incremental: boolean; + skipUnchanged: boolean; + verbose: boolean; + // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: legacy CLI flow + }) => { + const spinner = ora("Parsing input...").start(); + const logPaths = buildLogPaths(resolve(options.logDir)); + + try { + const runAll = options.all; + if (runAll && options.providers) { + throw new Error('Use either "--all" or "--providers", not both.'); + } + if (runAll && options.failedToolsFile) { + throw new Error( + 'Use either "--all" or "--failed-tools-file", not both.' + ); + } + if (options.providers && options.failedToolsFile) { + throw new Error( + 'Use either "--providers" or "--failed-tools-file", not both.' + ); + } + + let providers = runAll + ? [] + : options.providers + ? parseProviders(options.providers) + : null; + + if (options.failedToolsFile) { + const report = await readFailedToolsReport(options.failedToolsFile); + const toolkitIds = Array.from( + new Set([ + ...(report.toolkits ?? []), + ...(report.failedToolkits ?? []), + ]) + ); + if (toolkitIds.length === 0) { + spinner.succeed("No failed toolkits found in report."); + await appendLogEntry(logPaths.runLogPath, { + title: "generate (failed-tools-file no-op)", + details: [ + `output=${resolve(options.output)}`, + `file=${options.failedToolsFile}`, + ], + }); + process.exit(0); + } + providers = toolkitIds.map((provider) => ({ provider })); + } + + if (!(runAll || providers)) { + throw new Error('Missing required option "--providers" or "--all".'); + } + + if (providers) { + spinner.succeed(`Parsed ${providers.length} provider(s)`); + + if (options.verbose) { + console.log(chalk.cyan("\nProviders to process:")); + for (const pv of providers) { + const version = pv.version ?? "latest"; + console.log(chalk.dim(` - ${pv.provider}:${version}`)); + } + } + } else { + spinner.succeed("Parsed all toolkits"); + } + + // Initialize sources + spinner.start("Initializing data sources..."); + + const mockDataDir = options.mockDataDir ?? getDefaultMockDataDir(); + const metadataFile = + options.metadataFile ?? join(mockDataDir, "metadata.json"); + const metadataSource = await createMetadataSource({ + metadataFile, + useMetadataFile: Boolean(options.metadataFile), + verbose: options.verbose, + }); + + // Resolve provider names to canonical toolkit IDs (best effort). + if (providers && providers.length > 0) { + providers = await resolveProviderIds(providers, metadataSource); + } + + // Create toolkit data source based on API source + const apiSource = resolveApiSource(options); + const toolkitDataSource = createToolkitDataSourceForApi( + apiSource, + options, + metadataSource, + mockDataDir, + options.verbose, + spinner + ); + + const needsExamples = !options.skipExamples; + const needsSummary = !options.skipSummary; + const needsOverview = !options.skipOverview; + const needsLlm = needsExamples || needsSummary || needsOverview; + + const llmConfig = needsLlm + ? resolveLlmConfig(options, options.verbose) + : null; + + let toolExampleGenerator: LlmToolExampleGenerator | undefined; + if (needsExamples) { + if (!llmConfig) { + throw new Error("LLM configuration is required for examples."); + } + toolExampleGenerator = new LlmToolExampleGenerator(llmConfig); + } + + let toolkitSummaryGenerator: LlmToolkitSummaryGenerator | undefined; + if (needsSummary) { + if (!llmConfig) { + throw new Error("LLM configuration is required for summaries."); + } + toolkitSummaryGenerator = new LlmToolkitSummaryGenerator(llmConfig); + } + let overviewGenerator: LlmToolkitOverviewGenerator | undefined; + if (needsOverview) { + if (llmConfig) { + overviewGenerator = new LlmToolkitOverviewGenerator(llmConfig); + } else { + spinner.warn( + "Overview generation skipped (missing LLM configuration)." + ); + } + } + const previousOutputDir = options.forceRegenerate + ? undefined + : (options.previousOutput ?? + (options.overwriteOutput ? undefined : options.output)); + const previousToolkits = previousOutputDir + ? runAll + ? await loadPreviousToolkitsFromDir( + previousOutputDir, + options.verbose + ) + : await loadPreviousToolkitsForProviders( + previousOutputDir, + providers ?? [], + options.verbose + ) + : undefined; + + // Custom sections source + const customSectionsSource = options.customSections + ? createCustomSectionsFileSource(options.customSections) + : createEmptyCustomSectionsSource(); + const overviewInstructionsSource = options.overviewFile + ? createOverviewInstructionsFileSource({ + filePath: resolve(options.overviewFile), + allowMissing: false, + }) + : createOverviewInstructionsFileSource({ + dirPath: resolve(options.overviewDir ?? getDefaultOverviewDir()), + allowMissing: true, + }); + + spinner.succeed("Data sources initialized"); + + // Create generator (needed early for resume check) + const generator = createJsonGenerator({ + outputDir: resolve(options.output), + prettyPrint: true, + generateIndex: true, + indexSource: options.indexFromOutput ? "output" : "current", + }); + + // Handle resume mode - check for already completed toolkits + const useResume = options.resume && !options.overwriteOutput; + const useIncremental = options.incremental || useResume; + let skipToolkitIds = new Set(); + + if (useResume) { + spinner.start("Checking for previously completed toolkits..."); + skipToolkitIds = await generator.getCompletedToolkitIds(); + if (skipToolkitIds.size > 0) { + spinner.succeed( + `Found ${skipToolkitIds.size} already-completed toolkit(s) to skip` + ); + } else { + spinner.succeed("No previously completed toolkits found"); + } + } + + // Handle --skip-unchanged: detect changes and only regenerate changed toolkits + let changedToolkitIds: Set | undefined; + let changeResult: ReturnType | undefined; + let summaryChangeResult: + | ReturnType + | undefined; + let summaryToolkits: SummaryToolkit[] | undefined; + let summaryTotalToolkits: number | undefined; + let summaryToolkitNameById: Map | undefined; + if (options.skipUnchanged && runAll && !options.overwriteOutput) { + if (apiSource === "tool-metadata") { + spinner.start("Fetching toolkit summary..."); + const summary = await fetchToolMetadataSummary(options); + summaryToolkits = summary.toolkits; + summaryTotalToolkits = summary.totalToolkits; + summaryToolkitNameById = new Map( + summary.toolkits.map((toolkit) => [ + normalizeId(toolkit.name), + toolkit.name, + ]) + ); + + const detectedSummaryChanges = detectSummaryChanges( + summary.toolkits, + previousToolkits ?? new Map() + ); + summaryChangeResult = detectedSummaryChanges; + + if (!hasSummaryChanges(detectedSummaryChanges)) { + spinner.succeed( + "No changes detected. All toolkits are up to date." + ); + console.log(chalk.green("\n✓ Nothing to regenerate.\n")); + + await appendLogEntry(logPaths.runLogPath, { + title: "generate --skip-unchanged (no changes)", + details: [ + `output=${resolve(options.output)}`, + `apiSource=${apiSource}`, + `summary=${formatSummaryChangeSummary(detectedSummaryChanges)}`, + ], + }); + await appendLogEntry(logPaths.changeLogPath, { + title: "changes (no-op)", + details: [formatSummaryChangeSummary(detectedSummaryChanges)], + }); + process.exit(0); + } + + const changedIds = getChangedToolkitIdsFromSummary( + detectedSummaryChanges + ); + changedToolkitIds = new Set( + changedIds.map((id) => normalizeId(id)) + ); + + spinner.succeed( + `Detected ${changedIds.length} changed toolkit(s): ${changedIds.join(", ")}` + ); + + if (options.verbose) { + console.log( + chalk.dim( + ` Summary: ${formatSummaryChangeSummary( + detectedSummaryChanges + )}` + ) + ); + } + } else { + spinner.start("Detecting changes in tool definitions..."); + + // Fetch all current tools + const currentToolkitsData = + await toolkitDataSource.fetchAllToolkitsData(); + + // Build map of toolkit ID -> tools for comparison + const currentToolkitTools = new Map< + string, + readonly import("../types/index.js").ToolDefinition[] + >(); + for (const [id, data] of currentToolkitsData) { + currentToolkitTools.set(id, data.tools); + } + + // Detect changes + const detectedChanges = detectChanges( + currentToolkitTools, + previousToolkits ?? new Map() + ); + + if (!hasChanges(detectedChanges)) { + spinner.succeed( + "No changes detected. All toolkits are up to date." + ); + console.log(chalk.green("\n✓ Nothing to regenerate.\n")); + + await appendLogEntry(logPaths.runLogPath, { + title: "generate --skip-unchanged (no changes)", + details: [ + `output=${resolve(options.output)}`, + `apiSource=${apiSource}`, + `summary=${formatChangeSummary(detectedChanges)}`, + ], + }); + await appendLogEntry(logPaths.changeLogPath, { + title: "changes (no-op)", + details: [formatChangeSummary(detectedChanges)], + }); + process.exit(0); + } + + // Get IDs of changed toolkits + const changedIds = getChangedToolkitIds(detectedChanges); + changedToolkitIds = new Set( + changedIds.map((id) => normalizeId(id)) + ); + changeResult = detectedChanges; + + spinner.succeed( + `Detected ${changedIds.length} changed toolkit(s): ${changedIds.join(", ")}` + ); + + if (options.verbose) { + console.log( + chalk.dim(` Summary: ${formatChangeSummary(detectedChanges)}`) + ); + } + } + } + + if (options.overwriteOutput) { + spinner.start("Clearing output directory..."); + await clearOutputDir(options.output, options.verbose); + spinner.succeed("Output directory cleared"); + } + + // Track files written incrementally + const filesWritten: string[] = []; + const writeErrors: string[] = []; + + // Incremental write callback + const onToolkitComplete = useIncremental + ? async (result: MergeResult) => { + try { + const filePath = await generator.generateToolkitFile( + result.toolkit + ); + filesWritten.push(filePath); + } catch (error) { + writeErrors.push( + `Failed to write ${result.toolkit.id}: ${error}` + ); + } + } + : undefined; + + // Track progress for --all mode + let onToolkitProgress: + | (( + toolkitId: string, + status: "start" | "done", + toolCount?: number + ) => void) + | undefined; + + // Create merger using unified source + const merger = createDataMerger({ + toolkitDataSource, + customSectionsSource, + overviewInstructionsSource, + ...(overviewGenerator ? { overviewGenerator } : {}), + skipOverview: options.skipOverview || !overviewGenerator, + ...(toolExampleGenerator ? { toolExampleGenerator } : {}), + ...(toolkitSummaryGenerator ? { toolkitSummaryGenerator } : {}), + ...(previousToolkits ? { previousToolkits } : {}), + ...(options.llmConcurrency + ? { llmConcurrency: options.llmConcurrency } + : {}), + ...(options.toolkitConcurrency + ? { toolkitConcurrency: options.toolkitConcurrency } + : {}), + ...(runAll ? { onToolkitProgress } : {}), + ...(skipToolkitIds.size > 0 ? { skipToolkitIds } : {}), + ...(onToolkitComplete ? { onToolkitComplete } : {}), + }); + + // Process toolkits + let allResults: MergeResult[]; + if (runAll) { + let toolkitIds: string[] = []; + if (summaryToolkits) { + toolkitIds = summaryToolkits.map((toolkit) => toolkit.name); + } else { + spinner.start("Fetching toolkit list..."); + const toolkitList = await toolkitDataSource.fetchAllToolkitsData(); + toolkitIds = Array.from(toolkitList.keys()); + } + + const totalToolkits = summaryTotalToolkits ?? toolkitIds.length; + + if (changedToolkitIds) { + for (const id of toolkitIds) { + const normalizedId = normalizeId(id); + if (!changedToolkitIds.has(normalizedId)) { + skipToolkitIds.add(normalizedId); + } + } + } + + const toProcess = totalToolkits - skipToolkitIds.size; + + if (toProcess === 0) { + spinner.succeed(`All ${totalToolkits} toolkit(s) already complete`); + allResults = []; + } else if (summaryToolkits && changedToolkitIds) { + const skipReason = `(${skipToolkitIds.size} unchanged)`; + spinner.succeed( + `Found ${totalToolkits} toolkit(s), ${toProcess} to process ${skipReason}`.trim() + ); + + const providersForSummary = Array.from(changedToolkitIds).map( + (id) => ({ + provider: summaryToolkitNameById?.get(id) ?? id, + }) + ); + + allResults = await processProviders( + providersForSummary, + merger, + spinner, + options.verbose + ); + } else { + const skipReason = changedToolkitIds + ? `(${skipToolkitIds.size} unchanged)` + : skipToolkitIds.size > 0 + ? `(${skipToolkitIds.size} skipped)` + : ""; + spinner.succeed( + `Found ${totalToolkits} toolkit(s), ${toProcess} to process ${skipReason}`.trim() + ); + + // Set up progress tracker + const progressTracker = createProgressTracker({ + total: toProcess, + barWidth: 25, + onUpdate: (event) => { + if (options.verbose && event.type === "complete") { + console.log( + formatToolkitComplete(event.toolkitId, event.toolCount ?? 0) + ); + } + }, + }); + + onToolkitProgress = ( + toolkitId: string, + status: "start" | "done", + toolCount?: number + ) => { + if (status === "start") { + progressTracker.start(toolkitId); + spinner.text = progressTracker.getProgressString(toolkitId); + } else { + progressTracker.complete(toolkitId, toolCount); + spinner.text = progressTracker.getProgressString(); + } + }; + + // Re-create merger with the progress callback + const mergerWithProgress = createDataMerger({ + toolkitDataSource, + customSectionsSource, + overviewInstructionsSource, + ...(overviewGenerator ? { overviewGenerator } : {}), + skipOverview: options.skipOverview || !overviewGenerator, + ...(toolExampleGenerator ? { toolExampleGenerator } : {}), + ...(toolkitSummaryGenerator ? { toolkitSummaryGenerator } : {}), + ...(previousToolkits ? { previousToolkits } : {}), + ...(options.llmConcurrency + ? { llmConcurrency: options.llmConcurrency } + : {}), + ...(options.toolkitConcurrency + ? { toolkitConcurrency: options.toolkitConcurrency } + : {}), + onToolkitProgress, + ...(skipToolkitIds.size > 0 ? { skipToolkitIds } : {}), + ...(onToolkitComplete ? { onToolkitComplete } : {}), + }); + + spinner.start(progressTracker.getProgressString()); + allResults = await mergerWithProgress.mergeAllToolkits(); + + const summary = progressTracker.getSummary(); + spinner.succeed( + `Processed ${summary.completed} toolkit(s) with ${summary.totalTools} tools in ${summary.elapsed}` + ); + } + } else { + allResults = await processProviders( + providers ?? [], + merger, + spinner, + options.verbose + ); + } + + // Generate output files (batch mode if not incremental) + if (!useIncremental && allResults.length > 0) { + spinner.start("Writing output files..."); + + const toolkits = allResults.map((r) => r.toolkit); + const genResult = await generator.generateAll(toolkits); + + filesWritten.push(...genResult.filesWritten); + writeErrors.push(...genResult.errors); + + if (genResult.errors.length > 0) { + spinner.warn(`Written with errors: ${genResult.errors.join(", ")}`); + } else { + spinner.succeed(`Written ${genResult.filesWritten.length} file(s)`); + } + } else if (useIncremental) { + // Generate index file for incremental mode + if (allResults.length > 0 || skipToolkitIds.size > 0) { + spinner.start("Generating index file..."); + try { + const existingToolkits = await generator.getCompletedToolkitIds(); + const allToolkitIds = new Set([ + ...existingToolkits, + ...allResults.map((r) => r.toolkit.id.toLowerCase()), + ]); + + // Load all toolkits for index + const toolkitsForIndex: MergedToolkit[] = []; + for (const id of allToolkitIds) { + const toolkit = await generator.loadToolkitFile(id); + if (toolkit) { + toolkitsForIndex.push(toolkit); + } + } + + const genResult = await generator.generateAll(toolkitsForIndex); + // Only add the index file to filesWritten + const indexFile = genResult.filesWritten.find((f) => + f.endsWith("index.json") + ); + if (indexFile) { + filesWritten.push(indexFile); + } + spinner.succeed("Index file generated"); + } catch (error) { + spinner.warn(`Failed to generate index: ${error}`); + } + } + } + + // Print summary + if (filesWritten.length > 0 || writeErrors.length > 0) { + console.log(chalk.green("\n✓ Generation complete\n")); + if (options.verbose) { + console.log(chalk.dim("Files:")); + for (const file of filesWritten) { + console.log(chalk.dim(` ${file}`)); + } + } else { + console.log(chalk.dim(`Written ${filesWritten.length} file(s)`)); + } + + if (writeErrors.length > 0) { + console.log(chalk.yellow("\nWarnings:")); + for (const error of writeErrors) { + console.log(chalk.yellow(` ${error}`)); + } + } + } + + if (options.verifyOutput) { + spinner.start("Verifying output..."); + const onVerifyProgress = (progress: VerificationProgress) => { + const phaseLabels = { + reading: "Reading", + validating: "Validating", + "cross-referencing": "Cross-referencing", + }; + spinner.text = `${phaseLabels[progress.phase]} ${progress.current}/${progress.total}: ${progress.fileName ?? ""}`; + }; + const verification = await verifyOutputDir( + resolve(options.output), + onVerifyProgress + ); + if (!verification.valid) { + spinner.fail("Output verification failed."); + for (const error of verification.errors) { + console.log(chalk.red(` - ${error}`)); + } + process.exit(1); + } + spinner.succeed("Output verified"); + } + + const warningCount = allResults.reduce( + (count, result) => count + result.warnings.length, + 0 + ); + const failedToolkits = allResults + .filter((result) => + result.warnings.some((warning) => + warning.startsWith("Error processing toolkit") + ) + ) + .map((result) => result.toolkit.id); + const failedTools = allResults.flatMap((result) => result.failedTools); + const failedToolkitsFromTools = Array.from( + new Set(failedTools.map((tool) => tool.toolkitId)) + ); + + const runDetails = [ + `output=${resolve(options.output)}`, + `apiSource=${apiSource}`, + `mode=${runAll ? "all" : "providers"}`, + `skipUnchanged=${options.skipUnchanged}`, + `filesWritten=${filesWritten.length}`, + `warnings=${warningCount}`, + `writeErrors=${writeErrors.length}`, + ]; + + if (!runAll && providers) { + runDetails.push( + `providers=${providers.map((p) => p.provider).join(", ")}` + ); + } + + if (options.failedToolsFile) { + runDetails.push(`failedToolsFile=${options.failedToolsFile}`); + } + + if (failedToolkits.length > 0) { + runDetails.push(`failedToolkits=${failedToolkits.join(", ")}`); + } + if (failedTools.length > 0) { + runDetails.push(`failedTools=${failedTools.length}`); + } + + if (changeResult) { + runDetails.push(...buildChangeLogDetails(changeResult)); + await appendLogEntry(logPaths.changeLogPath, { + title: "changes", + details: buildChangeLogDetails(changeResult), + }); + } else if (summaryChangeResult) { + runDetails.push(...buildSummaryChangeLogDetails(summaryChangeResult)); + await appendLogEntry(logPaths.changeLogPath, { + title: "changes", + details: buildSummaryChangeLogDetails(summaryChangeResult), + }); + } + + await writeFailedToolsReport(logPaths.failedToolsPath, { + generatedAt: new Date().toISOString(), + toolkits: failedToolkitsFromTools, + failedToolkits, + tools: failedTools, + }); + + await appendLogEntry(logPaths.runLogPath, { + title: "generate", + details: runDetails, + }); + } catch (error) { + spinner.fail( + `Error: ${error instanceof Error ? error.message : String(error)}` + ); + await appendLogEntry(logPaths.runLogPath, { + title: "generate (error)", + details: [ + `output=${resolve(options.output)}`, + `message=${error instanceof Error ? error.message : String(error)}`, + ], + }); + process.exit(1); + } + } + ); + +program + .command("generate-all") + .description("Generate documentation for all toolkits in mock data") + .option("-o, --output ", "Output directory", getDefaultOutputDir()) + .option("--mock-data-dir ", "Path to mock data directory") + .option("--metadata-file ", "Path to metadata JSON file") + .option( + "--overview-dir ", + "Directory with toolkit overview instruction files", + getDefaultOverviewDir() + ) + .option( + "--overview-file ", + "Path to a single overview instruction file" + ) + .option( + "--api-source ", + 'API source: "tool-metadata" (/v1/tool_metadata, default with Engine creds), "list-tools" (/v1/tools, only when --api-source list-tools), or "mock"' + ) + .option( + "--list-tools-url ", + "List tools API URL (default: https://api.arcade.dev)" + ) + .option( + "--list-tools-key ", + "List tools API key (or ARCADE_API_KEY env)" + ) + .option( + "--list-tools-page-size ", + "List tools API page size", + (value) => Number.parseInt(value, 10) + ) + .option("--tool-metadata-url ", "Tool metadata API URL") + .option( + "--tool-metadata-key ", + "Tool metadata API key (or ENGINE_API_KEY env)" + ) + .option( + "--tool-metadata-page-size ", + "Tool metadata API page size", + (value) => Number.parseInt(value, 10) + ) + .option("--previous-output ", "Path to previous output directory") + .option("--force-regenerate", "Regenerate all examples and summary", false) + .option( + "--overwrite-output", + "Delete output directory before writing new JSON" + ) + .option("--llm-provider ", "LLM provider (openai|anthropic)") + .option("--llm-model ", "LLM model to use") + .option("--llm-api-key ", "LLM API key") + .option("--llm-base-url ", "LLM base URL") + .option("--llm-temperature ", "LLM temperature", (value) => + Number.parseFloat(value) + ) + .option("--llm-max-tokens ", "LLM max tokens", (value) => + Number.parseInt(value, 10) + ) + .option("--llm-system-prompt ", "LLM system prompt override") + .option( + "--llm-max-retries ", + "Max LLM retry attempts (default: 3)", + (value) => Number.parseInt(value, 10) + ) + .option( + "--llm-concurrency ", + "Max concurrent LLM calls per toolkit (default: 5)", + (value) => Number.parseInt(value, 10) + ) + .option( + "--toolkit-concurrency ", + "Max concurrent toolkit processing (default: 3)", + (value) => Number.parseInt(value, 10) + ) + .option( + "--no-index-from-output", + "Do not rebuild index from output directory" + ) + .option("--skip-examples", "Skip LLM example generation", false) + .option("--skip-summary", "Skip LLM summary generation", false) + .option("--no-verify-output", "Skip output verification") + .option("--custom-sections ", "Path to custom sections JSON") + .option( + "--resume", + "Resume from previous run, skipping already-generated toolkits", + false + ) + .option( + "--incremental", + "Write each toolkit immediately after processing (default when --resume)", + false + ) + .option("--verbose", "Enable verbose logging", false) + .action( + async (options: { + output: string; + mockDataDir?: string; + metadataFile?: string; + apiSource?: string; + listToolsUrl?: string; + listToolsKey?: string; + listToolsPageSize?: number; + toolMetadataUrl?: string; + toolMetadataKey?: string; + toolMetadataPageSize?: number; + previousOutput?: string; + forceRegenerate: boolean; + overwriteOutput?: boolean; + llmProvider?: string; + llmModel?: string; + llmApiKey?: string; + llmBaseUrl?: string; + llmTemperature?: number; + llmMaxTokens?: number; + llmSystemPrompt?: string; + llmMaxRetries?: number; + llmConcurrency?: number; + toolkitConcurrency?: number; + indexFromOutput: boolean; + skipExamples: boolean; + skipSummary: boolean; + skipOverview: boolean; + overviewDir: string; + overviewFile?: string; + verifyOutput: boolean; + customSections?: string; + resume: boolean; + incremental: boolean; + verbose: boolean; + // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: legacy CLI flow + }) => { + const spinner = ora("Initializing...").start(); + + try { + const mockDataDir = options.mockDataDir ?? getDefaultMockDataDir(); + const metadataFile = + options.metadataFile ?? join(mockDataDir, "metadata.json"); + const metadataSource = await createMetadataSource({ + metadataFile, + useMetadataFile: Boolean(options.metadataFile), + verbose: options.verbose, + }); + + // Create toolkit data source based on API source + const apiSource = resolveApiSource(options); + const toolkitDataSource = createToolkitDataSourceForApi( + apiSource, + options, + metadataSource, + mockDataDir, + options.verbose, + spinner + ); + + const needsExamples = !options.skipExamples; + const needsSummary = !options.skipSummary; + const needsOverview = !options.skipOverview; + const needsLlm = needsExamples || needsSummary || needsOverview; + + const llmConfig = needsLlm + ? resolveLlmConfig(options, options.verbose) + : null; + + let toolExampleGenerator: LlmToolExampleGenerator | undefined; + if (needsExamples) { + if (!llmConfig) { + throw new Error("LLM configuration is required for examples."); + } + toolExampleGenerator = new LlmToolExampleGenerator(llmConfig); + } + + let toolkitSummaryGenerator: LlmToolkitSummaryGenerator | undefined; + if (needsSummary) { + if (!llmConfig) { + throw new Error("LLM configuration is required for summaries."); + } + toolkitSummaryGenerator = new LlmToolkitSummaryGenerator(llmConfig); + } + let overviewGenerator: LlmToolkitOverviewGenerator | undefined; + if (needsOverview) { + if (llmConfig) { + overviewGenerator = new LlmToolkitOverviewGenerator(llmConfig); + } else { + spinner.warn( + "Overview generation skipped (missing LLM configuration)." + ); + } + } + const previousOutputDir = options.forceRegenerate + ? undefined + : (options.previousOutput ?? + (options.overwriteOutput ? undefined : options.output)); + const previousToolkits = previousOutputDir + ? await loadPreviousToolkitsFromDir( + previousOutputDir, + options.verbose + ) + : undefined; + + const customSectionsSource = options.customSections + ? createCustomSectionsFileSource(options.customSections) + : createEmptyCustomSectionsSource(); + const overviewInstructionsSource = options.overviewFile + ? createOverviewInstructionsFileSource({ + filePath: resolve(options.overviewFile), + allowMissing: false, + }) + : createOverviewInstructionsFileSource({ + dirPath: resolve(options.overviewDir ?? getDefaultOverviewDir()), + allowMissing: true, + }); + + spinner.succeed("Data sources initialized"); + + // Create generator (needed early for resume check) + const generator = createJsonGenerator({ + outputDir: resolve(options.output), + prettyPrint: true, + generateIndex: true, + indexSource: options.indexFromOutput ? "output" : "current", + }); + + // Handle resume mode + const useResume = options.resume && !options.overwriteOutput; + const useIncremental = options.incremental || useResume; + let skipToolkitIds = new Set(); + + if (useResume) { + spinner.start("Checking for previously completed toolkits..."); + skipToolkitIds = await generator.getCompletedToolkitIds(); + if (skipToolkitIds.size > 0) { + spinner.succeed( + `Found ${skipToolkitIds.size} already-completed toolkit(s) to skip` + ); + } else { + spinner.succeed("No previously completed toolkits found"); + } + } + + if (options.overwriteOutput) { + spinner.start("Clearing output directory..."); + await clearOutputDir(options.output, options.verbose); + spinner.succeed("Output directory cleared"); + } + + // Track files written incrementally + const filesWritten: string[] = []; + const writeErrors: string[] = []; + + // Incremental write callback + const onToolkitComplete = useIncremental + ? async (result: MergeResult) => { + try { + const filePath = await generator.generateToolkitFile( + result.toolkit + ); + filesWritten.push(filePath); + } catch (error) { + writeErrors.push( + `Failed to write ${result.toolkit.id}: ${error}` + ); + } + } + : undefined; + + // First, get the toolkit count to set up progress tracking + spinner.start("Fetching toolkit list..."); + const toolkitList = await toolkitDataSource.fetchAllToolkitsData(); + const totalToolkits = toolkitList.size; + const toProcess = totalToolkits - skipToolkitIds.size; + + if (toProcess === 0) { + spinner.succeed(`All ${totalToolkits} toolkit(s) already complete`); + } else { + spinner.succeed( + `Found ${totalToolkits} toolkit(s), ${toProcess} to process${skipToolkitIds.size > 0 ? ` (${skipToolkitIds.size} skipped)` : ""}` + ); + + // Set up progress tracker + const progressTracker = createProgressTracker({ + total: toProcess, + barWidth: 25, + onUpdate: (event) => { + if (options.verbose && event.type === "complete") { + console.log( + formatToolkitComplete(event.toolkitId, event.toolCount ?? 0) + ); + } + }, + }); + + const onToolkitProgress = ( + toolkitId: string, + status: "start" | "done", + toolCount?: number + ) => { + if (status === "start") { + progressTracker.start(toolkitId); + spinner.text = progressTracker.getProgressString(toolkitId); + } else { + progressTracker.complete(toolkitId, toolCount); + spinner.text = progressTracker.getProgressString(); + } + }; + + // Create merger using unified source + const merger = createDataMerger({ + toolkitDataSource, + customSectionsSource, + overviewInstructionsSource, + ...(overviewGenerator ? { overviewGenerator } : {}), + skipOverview: options.skipOverview || !overviewGenerator, + ...(toolExampleGenerator ? { toolExampleGenerator } : {}), + ...(toolkitSummaryGenerator ? { toolkitSummaryGenerator } : {}), + ...(previousToolkits ? { previousToolkits } : {}), + ...(options.llmConcurrency + ? { llmConcurrency: options.llmConcurrency } + : {}), + ...(options.toolkitConcurrency + ? { toolkitConcurrency: options.toolkitConcurrency } + : {}), + onToolkitProgress, + ...(skipToolkitIds.size > 0 ? { skipToolkitIds } : {}), + ...(onToolkitComplete ? { onToolkitComplete } : {}), + }); + + spinner.start(progressTracker.getProgressString()); + const results = await merger.mergeAllToolkits(); + const summary = progressTracker.getSummary(); + spinner.succeed( + `Processed ${summary.completed} toolkit(s) with ${summary.totalTools} tools in ${summary.elapsed}` + ); + + // Generate output (batch mode if not incremental) + if (!useIncremental && results.length > 0) { + spinner.start("Writing output files..."); + const toolkits = results.map((r) => r.toolkit); + const genResult = await generator.generateAll(toolkits); + + filesWritten.push(...genResult.filesWritten); + writeErrors.push(...genResult.errors); + + if (genResult.errors.length > 0) { + spinner.warn( + `Written with errors: ${genResult.errors.join(", ")}` + ); + } else { + spinner.succeed( + `Written ${genResult.filesWritten.length} file(s)` + ); + } + } else if (useIncremental) { + // Generate index file for incremental mode + spinner.start("Generating index file..."); + try { + const existingToolkits = await generator.getCompletedToolkitIds(); + const allToolkitIds = new Set([ + ...existingToolkits, + ...results.map((r) => r.toolkit.id.toLowerCase()), + ]); + + const toolkitsForIndex: MergedToolkit[] = []; + for (const id of allToolkitIds) { + const toolkit = await generator.loadToolkitFile(id); + if (toolkit) { + toolkitsForIndex.push(toolkit); + } + } + + const genResult = await generator.generateAll(toolkitsForIndex); + const indexFile = genResult.filesWritten.find((f) => + f.endsWith("index.json") + ); + if (indexFile) { + filesWritten.push(indexFile); + } + spinner.succeed("Index file generated"); + } catch (error) { + spinner.warn(`Failed to generate index: ${error}`); + } + } + } + + if (options.verifyOutput) { + spinner.start("Verifying output..."); + const onVerifyProgress = (progress: VerificationProgress) => { + const phaseLabels = { + reading: "Reading", + validating: "Validating", + "cross-referencing": "Cross-referencing", + }; + spinner.text = `${phaseLabels[progress.phase]} ${progress.current}/${progress.total}: ${progress.fileName ?? ""}`; + }; + const verification = await verifyOutputDir( + resolve(options.output), + onVerifyProgress + ); + if (!verification.valid) { + spinner.fail("Output verification failed."); + for (const error of verification.errors) { + console.log(chalk.red(` - ${error}`)); + } + process.exit(1); + } + spinner.succeed("Output verified"); + } + + console.log(chalk.green("\n✓ Generation complete\n")); + if (filesWritten.length > 0) { + console.log(chalk.dim(`Written ${filesWritten.length} file(s)`)); + } + } catch (error) { + spinner.fail( + `Error: ${error instanceof Error ? error.message : String(error)}` + ); + process.exit(1); + } + } + ); + +program + .command("validate ") + .description("Validate a generated JSON file against the schema") + .action(async (file: string) => { + const { readFile } = await import("fs/promises"); + const { MergedToolkitSchema } = await import("../types/index.js"); + + try { + const content = await readFile(file, "utf-8"); + const json = JSON.parse(content); + const result = MergedToolkitSchema.safeParse(json); + + if (result.success) { + console.log(chalk.green(`✓ ${file} is valid`)); + } else { + console.log(chalk.red(`✗ ${file} is invalid:`)); + console.log(chalk.dim(result.error.message)); + process.exit(1); + } + } catch (error) { + console.log(chalk.red(`✗ Failed to validate: ${error}`)); + process.exit(1); + } + }); + +program + .command("list-toolkits") + .description("List toolkits available in mock data") + .option("--mock-data-dir ", "Path to mock data directory") + .option("--json", "Output as JSON", false) + .action(async (options: { mockDataDir?: string; json: boolean }) => { + try { + const toolkits = new Map(); + const mockDataDir = options.mockDataDir ?? getDefaultMockDataDir(); + const toolkitDataSource = createMockToolkitDataSource({ + dataDir: mockDataDir, + }); + const toolkitData = await toolkitDataSource.fetchAllToolkitsData(); + + for (const [id, data] of toolkitData) { + toolkits.set(id, data.tools.length); + } + + if (options.json) { + const data = Array.from(toolkits.entries()).map(([id, count]) => ({ + id, + toolCount: count, + })); + console.log(JSON.stringify(data, null, 2)); + } else { + console.log(chalk.bold(`\nToolkits in fixture (${toolkits.size}):\n`)); + for (const [id, count] of toolkits) { + console.log(` ${chalk.green(id.padEnd(20))} ${count} tool(s)`); + } + } + } catch (error) { + console.log(chalk.red(`Error: ${error}`)); + process.exit(1); + } + }); + +program + .command("verify-output") + .description("Verify output directory structure and schema") + .option("-o, --output ", "Output directory", getDefaultOutputDir()) + .option("--verbose", "Show detailed progress", false) + .action(async (options: { output: string; verbose: boolean }) => { + const spinner = ora("Verifying output...").start(); + try { + const onVerifyProgress = (progress: VerificationProgress) => { + const phaseLabels = { + reading: "Reading", + validating: "Validating", + "cross-referencing": "Cross-referencing", + }; + spinner.text = `${phaseLabels[progress.phase]} ${progress.current}/${progress.total}: ${progress.fileName ?? ""}`; + }; + const verification = await verifyOutputDir( + resolve(options.output), + onVerifyProgress + ); + if (!verification.valid) { + spinner.fail("Output verification failed:"); + for (const error of verification.errors) { + console.log(chalk.red(` - ${error}`)); + } + process.exit(1); + } + + spinner.succeed("Output verified"); + } catch (error) { + spinner.fail(`Error: ${error}`); + process.exit(1); + } + }); + +program + .command("check-changes") + .description( + "Check for changes in tool definitions without generating (dry-run)" + ) + .option( + "-o, --output ", + "Previous output directory", + getDefaultOutputDir() + ) + .option("--log-dir ", "Directory for run logs", getDefaultLogDir()) + .option("--mock-data-dir ", "Path to mock data directory") + .option("--metadata-file ", "Path to metadata JSON file") + .option( + "--api-source ", + 'API source: "tool-metadata" (/v1/tool_metadata, default with Engine creds), "list-tools" (/v1/tools, only when --api-source list-tools), or "mock"' + ) + .option( + "--list-tools-url ", + "List tools API URL (default: https://api.arcade.dev)" + ) + .option( + "--list-tools-key ", + "List tools API key (or ARCADE_API_KEY env)" + ) + .option( + "--list-tools-page-size ", + "List tools API page size", + (value) => Number.parseInt(value, 10) + ) + .option("--tool-metadata-url ", "Tool metadata API URL") + .option( + "--tool-metadata-key ", + "Tool metadata API key (or ENGINE_API_KEY env)" + ) + .option("--verbose", "Show detailed tool-level changes", false) + .option("--json", "Output as JSON", false) + .action( + async (options: { + output: string; + logDir: string; + mockDataDir?: string; + metadataFile?: string; + apiSource?: string; + listToolsUrl?: string; + listToolsKey?: string; + listToolsPageSize?: number; + toolMetadataUrl?: string; + toolMetadataKey?: string; + verbose: boolean; + json: boolean; + // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: legacy CLI flow + }) => { + const spinner = ora("Checking for changes...").start(); + const logPaths = buildLogPaths(resolve(options.logDir)); + + try { + // Initialize data source + const mockDataDir = options.mockDataDir ?? getDefaultMockDataDir(); + const metadataFile = + options.metadataFile ?? join(mockDataDir, "metadata.json"); + const metadataSource = await createMetadataSource({ + metadataFile, + useMetadataFile: Boolean(options.metadataFile), + verbose: false, + }); + + const apiSource = resolveApiSource(options); + const toolkitDataSource = createToolkitDataSourceForApi( + apiSource, + options, + metadataSource, + mockDataDir, + false, // not verbose during fetch + spinner + ); + + // Fetch current data from API + spinner.text = "Fetching current tool definitions from API..."; + const currentToolkitsData = + await toolkitDataSource.fetchAllToolkitsData(); + + // Build map of toolkit ID -> tools + const currentToolkitTools = new Map< + string, + readonly import("../types/index.js").ToolDefinition[] + >(); + for (const [id, data] of currentToolkitsData) { + currentToolkitTools.set(id, data.tools); + } + + // Load previous output + spinner.text = "Loading previous output..."; + const previousToolkits = await loadPreviousToolkitsFromDir( + resolve(options.output), + false + ); + + // Detect changes + spinner.text = "Comparing tool definitions..."; + const changeResult = detectChanges( + currentToolkitTools, + previousToolkits + ); + + spinner.stop(); + + await appendLogEntry(logPaths.runLogPath, { + title: "check-changes", + details: [ + `output=${resolve(options.output)}`, + `apiSource=${apiSource}`, + ...buildChangeLogDetails(changeResult), + ], + }); + await appendLogEntry(logPaths.changeLogPath, { + title: "changes", + details: buildChangeLogDetails(changeResult), + }); + + // Output results + if (options.json) { + console.log(JSON.stringify(changeResult, null, 2)); + } else { + console.log(chalk.bold("\n📋 Change Detection Results\n")); + + // Summary + console.log(chalk.cyan("Summary:")); + console.log(` ${formatChangeSummary(changeResult)}`); + console.log(); + + // Check if there are any changes + if (hasChanges(changeResult)) { + // Show changed toolkits + const changedIds = getChangedToolkitIds(changeResult); + console.log( + chalk.yellow( + `⚠ ${changedIds.length} toolkit(s) need regeneration:\n` + ) + ); + + if (options.verbose) { + // Detailed view + const detailedLines = formatDetailedChanges(changeResult); + for (const line of detailedLines) { + if (line.startsWith("[NEW]")) { + console.log(chalk.green(line)); + } else if (line.startsWith("[REMOVED]")) { + console.log(chalk.red(line)); + } else if (line.startsWith("[MODIFIED]")) { + console.log(chalk.yellow(line)); + } else if (line.startsWith(" + ")) { + console.log(chalk.green(line)); + } else if (line.startsWith(" - ")) { + console.log(chalk.red(line)); + } else if (line.startsWith(" ~ ")) { + console.log(chalk.yellow(line)); + } else { + console.log(line); + } + } + } else { + // Compact view + for (const change of changeResult.toolkitChanges) { + if (change.changeType === "unchanged") continue; + + const icon = { + added: chalk.green("+ "), + removed: chalk.red("- "), + modified: chalk.yellow("~ "), + unchanged: " ", + }[change.changeType]; + + const toolChangeSummary = + change.changeType === "modified" + ? ` (${change.toolChanges.length} tool change(s))` + : ""; + + console.log( + ` ${icon}${change.toolkitId} [${change.currentToolCount} tools]${toolChangeSummary}` + ); + } + } + + console.log(); + console.log( + chalk.dim( + 'Run "generate --skip-unchanged" to only regenerate changed toolkits.' + ) + ); + } else { + console.log( + chalk.green( + "✓ No changes detected. All toolkits are up to date.\n" + ) + ); + } + } + } catch (error) { + spinner.fail( + `Error: ${error instanceof Error ? error.message : String(error)}` + ); + await appendLogEntry(logPaths.runLogPath, { + title: "check-changes (error)", + details: [ + `output=${resolve(options.output)}`, + `message=${error instanceof Error ? error.message : String(error)}`, + ], + }); + process.exit(1); + } + } + ); + +// Parse command line arguments +program.parse(); diff --git a/toolkit-docs-generator/src/diff/index.ts b/toolkit-docs-generator/src/diff/index.ts new file mode 100644 index 000000000..e818d8f84 --- /dev/null +++ b/toolkit-docs-generator/src/diff/index.ts @@ -0,0 +1,33 @@ +/** + * Change Detection Module + * + * Exports change detection functionality for comparing API data with previous output. + */ + +export { + detectSummaryChanges, + formatSummaryChangeSummary, + getChangedToolkitIdsFromSummary, + hasSummaryChanges, + type SummaryChangeResult, + type SummaryChangeSummary, + type SummaryToolkit, + type SummaryToolkitChange, + type SummaryToolkitChangeType, +} from "./summary-diff.js"; +export { + buildToolDefinitionSignature, + type ChangeDetectionResult, + type ChangeSummary, + compareToolkit, + compareTools, + detectChanges, + formatChangeSummary, + formatDetailedChanges, + getChangedToolkitIds, + hasChanges, + type ToolChange, + type ToolChangeType, + type ToolkitChange, + type ToolkitChangeType, +} from "./toolkit-diff.js"; diff --git a/toolkit-docs-generator/src/diff/summary-diff.ts b/toolkit-docs-generator/src/diff/summary-diff.ts new file mode 100644 index 000000000..90e631958 --- /dev/null +++ b/toolkit-docs-generator/src/diff/summary-diff.ts @@ -0,0 +1,163 @@ +/** + * Summary-based change detection + * + * Compares tool metadata summaries with previous output to detect version changes. + */ +import type { MergedToolkit } from "../types/index.js"; +import { normalizeId } from "../utils/fp.js"; + +export type SummaryToolkit = { + name: string; + version: string; + toolCount: number; + requiresSecrets: boolean; + requiresOauth: boolean; +}; + +export type SummaryToolkitChangeType = + | "added" + | "modified" + | "removed" + | "unchanged"; + +export type SummaryToolkitChange = { + toolkitId: string; + changeType: SummaryToolkitChangeType; + currentVersion: string; + previousVersion: string; + versionChanged: boolean; + currentToolCount: number; +}; + +export type SummaryChangeSummary = { + newToolkits: number; + removedToolkits: number; + modifiedToolkits: number; + unchangedToolkits: number; +}; + +export type SummaryChangeResult = { + toolkitChanges: SummaryToolkitChange[]; + summary: SummaryChangeSummary; +}; + +const normalizeKey = (value: string): string => normalizeId(value); + +export const detectSummaryChanges = ( + summaryToolkits: readonly SummaryToolkit[], + previousToolkits: ReadonlyMap +): SummaryChangeResult => { + const toolkitChanges: SummaryToolkitChange[] = []; + const previousByNormalizedId = new Map(); + for (const [id, toolkit] of previousToolkits) { + previousByNormalizedId.set(normalizeKey(id), toolkit); + } + + const seenPreviousIds = new Set(); + + for (const toolkit of summaryToolkits) { + const normalizedId = normalizeKey(toolkit.name); + const previousToolkit = previousByNormalizedId.get(normalizedId); + if (previousToolkit) { + seenPreviousIds.add(normalizedId); + } + + const previousVersion = previousToolkit?.version ?? "0.0.0"; + const versionChanged = + Boolean(previousToolkit) && toolkit.version !== previousVersion; + const changeType: SummaryToolkitChangeType = previousToolkit + ? versionChanged + ? "modified" + : "unchanged" + : "added"; + + toolkitChanges.push({ + toolkitId: toolkit.name, + changeType, + currentVersion: toolkit.version, + previousVersion, + versionChanged, + currentToolCount: toolkit.toolCount, + }); + } + + for (const [id, toolkit] of previousToolkits) { + const normalizedId = normalizeKey(id); + if (!seenPreviousIds.has(normalizedId)) { + toolkitChanges.push({ + toolkitId: toolkit.id, + changeType: "removed", + currentVersion: "0.0.0", + previousVersion: toolkit.version, + versionChanged: false, + currentToolCount: 0, + }); + } + } + + toolkitChanges.sort((a, b) => a.toolkitId.localeCompare(b.toolkitId)); + + const summary = toolkitChanges.reduce( + (acc, change) => { + switch (change.changeType) { + case "added": + acc.newToolkits += 1; + break; + case "modified": + acc.modifiedToolkits += 1; + break; + case "removed": + acc.removedToolkits += 1; + break; + case "unchanged": + acc.unchangedToolkits += 1; + break; + default: + break; + } + return acc; + }, + { + newToolkits: 0, + removedToolkits: 0, + modifiedToolkits: 0, + unchangedToolkits: 0, + } + ); + + return { toolkitChanges, summary }; +}; + +export const getChangedToolkitIdsFromSummary = ( + result: SummaryChangeResult +): readonly string[] => + result.toolkitChanges + .filter( + (change) => + change.changeType === "added" || change.changeType === "modified" + ) + .map((change) => change.toolkitId); + +export const hasSummaryChanges = (result: SummaryChangeResult): boolean => + result.summary.newToolkits > 0 || + result.summary.modifiedToolkits > 0 || + result.summary.removedToolkits > 0; + +export const formatSummaryChangeSummary = ( + result: SummaryChangeResult +): string => { + const parts: string[] = []; + if (result.summary.newToolkits > 0) { + parts.push(`${result.summary.newToolkits} new toolkit(s)`); + } + if (result.summary.modifiedToolkits > 0) { + parts.push(`${result.summary.modifiedToolkits} modified toolkit(s)`); + } + if (result.summary.removedToolkits > 0) { + parts.push(`${result.summary.removedToolkits} removed toolkit(s)`); + } + if (result.summary.unchangedToolkits > 0) { + parts.push(`${result.summary.unchangedToolkits} unchanged toolkit(s)`); + } + return parts.length > 0 ? parts.join(", ") : "No toolkits found"; +}; diff --git a/toolkit-docs-generator/src/diff/toolkit-diff.ts b/toolkit-docs-generator/src/diff/toolkit-diff.ts new file mode 100644 index 000000000..d0993d666 --- /dev/null +++ b/toolkit-docs-generator/src/diff/toolkit-diff.ts @@ -0,0 +1,496 @@ +/** + * Toolkit Change Detection + * + * Compares current API data with previous output to detect changes. + * Used to determine which toolkits need regeneration. + */ + +import { buildToolSignature, extractVersion } from "../merger/data-merger.js"; +import type { MergedToolkit, ToolDefinition } from "../types/index.js"; + +// ============================================================================ +// Types +// ============================================================================ + +export type ToolChangeType = "added" | "removed" | "modified"; +export type ToolkitChangeType = "added" | "removed" | "modified" | "unchanged"; + +export interface ToolChange { + /** Tool qualified name (e.g., "Github.CreateIssue") */ + readonly qualifiedName: string; + /** Type of change */ + readonly changeType: ToolChangeType; + /** Tool name (e.g., "CreateIssue") */ + readonly toolName: string; +} + +export interface ToolkitChange { + /** Toolkit ID (e.g., "Github") */ + readonly toolkitId: string; + /** Type of change */ + readonly changeType: ToolkitChangeType; + /** List of tool changes within this toolkit */ + readonly toolChanges: readonly ToolChange[]; + /** Toolkit version derived from current tool definitions */ + readonly currentVersion: string; + /** Toolkit version from previous output (if available) */ + readonly previousVersion: string; + /** Whether the toolkit version changed */ + readonly versionChanged: boolean; + /** Current tool count (0 if removed) */ + readonly currentToolCount: number; + /** Previous tool count (0 if new) */ + readonly previousToolCount: number; +} + +export interface ChangeDetectionResult { + /** List of toolkit changes */ + readonly toolkitChanges: readonly ToolkitChange[]; + /** Summary statistics */ + readonly summary: ChangeSummary; +} + +export interface ChangeSummary { + /** Number of new toolkits */ + readonly newToolkits: number; + /** Number of removed toolkits */ + readonly removedToolkits: number; + /** Number of modified toolkits */ + readonly modifiedToolkits: number; + /** Number of toolkits with version-only changes */ + readonly versionOnlyToolkits: number; + /** Number of unchanged toolkits */ + readonly unchangedToolkits: number; + /** Total number of new tools */ + readonly newTools: number; + /** Total number of removed tools */ + readonly removedTools: number; + /** Total number of modified tools */ + readonly modifiedTools: number; +} + +// ============================================================================ +// Signature Building for Tool Definitions +// ============================================================================ + +/** + * Build a signature for a ToolDefinition (from API) + * This is different from MergedTool signatures as it uses the raw API format + */ +export const buildToolDefinitionSignature = (tool: ToolDefinition): string => + buildToolSignature(tool); + +/** + * Build a map of tool signatures for quick lookup + */ +const buildToolSignatureMap = ( + tools: readonly ToolDefinition[] +): ReadonlyMap => { + const map = new Map(); + for (const tool of tools) { + map.set(tool.qualifiedName, buildToolDefinitionSignature(tool)); + } + return map; +}; + +/** + * Build a map of tool signatures from MergedToolkit + */ +const buildMergedToolSignatureMap = ( + toolkit: MergedToolkit +): ReadonlyMap => { + const map = new Map(); + for (const tool of toolkit.tools) { + map.set(tool.qualifiedName, buildToolSignature(tool)); + } + return map; +}; + +/** + * Extract toolkit version from current tool definitions + */ +const getToolkitVersion = (tools: readonly ToolDefinition[]): string => { + const firstTool = tools[0]; + return firstTool ? extractVersion(firstTool.fullyQualifiedName) : "0.0.0"; +}; + +// ============================================================================ +// Change Detection Functions +// ============================================================================ + +/** + * Compare tools within a toolkit to detect changes + */ +export const compareTools = ( + currentTools: readonly ToolDefinition[], + previousToolkit: MergedToolkit | undefined +): readonly ToolChange[] => { + const changes: ToolChange[] = []; + + // Build signature maps + const currentSignatures = buildToolSignatureMap(currentTools); + const previousSignatures = previousToolkit + ? buildMergedToolSignatureMap(previousToolkit) + : new Map(); + + // Build name lookup for current tools + const currentToolNames = new Map(); + for (const tool of currentTools) { + currentToolNames.set(tool.qualifiedName, tool.name); + } + + // Build name lookup for previous tools + const previousToolNames = new Map(); + if (previousToolkit) { + for (const tool of previousToolkit.tools) { + previousToolNames.set(tool.qualifiedName, tool.name); + } + } + + // Check for added and modified tools + for (const [qualifiedName, currentSig] of currentSignatures) { + const previousSig = previousSignatures.get(qualifiedName); + const toolName = currentToolNames.get(qualifiedName) ?? qualifiedName; + + if (!previousSig) { + // New tool + changes.push({ + qualifiedName, + changeType: "added", + toolName, + }); + } else if (currentSig !== previousSig) { + // Modified tool + changes.push({ + qualifiedName, + changeType: "modified", + toolName, + }); + } + } + + // Check for removed tools + for (const qualifiedName of previousSignatures.keys()) { + if (!currentSignatures.has(qualifiedName)) { + const toolName = previousToolNames.get(qualifiedName) ?? qualifiedName; + changes.push({ + qualifiedName, + changeType: "removed", + toolName, + }); + } + } + + return changes; +}; + +/** + * Compare a single toolkit to detect changes + */ +export const compareToolkit = ( + toolkitId: string, + currentTools: readonly ToolDefinition[], + previousToolkit: MergedToolkit | undefined +): ToolkitChange => { + const toolChanges = compareTools(currentTools, previousToolkit); + const currentVersion = getToolkitVersion(currentTools); + const previousVersion = previousToolkit?.version ?? "0.0.0"; + const versionChanged = + Boolean(previousToolkit) && currentVersion !== previousVersion; + + // Determine overall change type + let changeType: ToolkitChangeType; + if (!previousToolkit) { + changeType = "added"; + } else if (currentTools.length === 0 && previousToolkit.tools.length > 0) { + // This shouldn't happen normally, but handle it + changeType = "removed"; + } else if (toolChanges.length === 0 && !versionChanged) { + changeType = "unchanged"; + } else { + changeType = "modified"; + } + + return { + toolkitId, + changeType, + toolChanges, + currentVersion, + previousVersion, + versionChanged, + currentToolCount: currentTools.length, + previousToolCount: previousToolkit?.tools.length ?? 0, + }; +}; + +/** + * Compare all toolkits to detect changes + * + * @param currentToolkitTools - Map of toolkit ID to current tools from API + * @param previousToolkits - Map of toolkit ID to previous merged output + */ +export const detectChanges = ( + currentToolkitTools: ReadonlyMap, + previousToolkits: ReadonlyMap +): ChangeDetectionResult => { + const toolkitChanges: ToolkitChange[] = []; + + // Normalize keys for comparison + const normalizeKey = (key: string): string => key.toLowerCase(); + + // Build normalized lookup for previous toolkits + const previousByNormalizedId = new Map(); + for (const [id, toolkit] of previousToolkits) { + previousByNormalizedId.set(normalizeKey(id), toolkit); + } + + // Track which previous toolkits we've seen + const seenPreviousIds = new Set(); + + // Check current toolkits + for (const [toolkitId, tools] of currentToolkitTools) { + const normalizedId = normalizeKey(toolkitId); + const previousToolkit = previousByNormalizedId.get(normalizedId); + + if (previousToolkit) { + seenPreviousIds.add(normalizedId); + } + + const change = compareToolkit(toolkitId, tools, previousToolkit); + toolkitChanges.push(change); + } + + // Check for removed toolkits (in previous but not in current) + for (const [id, toolkit] of previousToolkits) { + const normalizedId = normalizeKey(id); + if (!seenPreviousIds.has(normalizedId)) { + toolkitChanges.push({ + toolkitId: toolkit.id, + changeType: "removed", + toolChanges: toolkit.tools.map((tool) => ({ + qualifiedName: tool.qualifiedName, + changeType: "removed" as const, + toolName: tool.name, + })), + currentVersion: "0.0.0", + previousVersion: toolkit.version, + versionChanged: false, + currentToolCount: 0, + previousToolCount: toolkit.tools.length, + }); + } + } + + // Sort by toolkit ID for consistent output + toolkitChanges.sort((a, b) => a.toolkitId.localeCompare(b.toolkitId)); + + // Calculate summary + const summary = calculateSummary(toolkitChanges); + + return { + toolkitChanges, + summary, + }; +}; + +/** + * Calculate summary statistics from toolkit changes + */ +const calculateSummary = ( + toolkitChanges: readonly ToolkitChange[] +): ChangeSummary => { + let newToolkits = 0; + let removedToolkits = 0; + let modifiedToolkits = 0; + let versionOnlyToolkits = 0; + let unchangedToolkits = 0; + let newTools = 0; + let removedTools = 0; + let modifiedTools = 0; + + for (const change of toolkitChanges) { + switch (change.changeType) { + case "added": + newToolkits++; + newTools += change.toolChanges.filter( + (t) => t.changeType === "added" + ).length; + break; + case "removed": + removedToolkits++; + removedTools += change.toolChanges.filter( + (t) => t.changeType === "removed" + ).length; + break; + case "modified": + modifiedToolkits++; + if (change.toolChanges.length === 0 && change.versionChanged) { + versionOnlyToolkits++; + } + for (const toolChange of change.toolChanges) { + switch (toolChange.changeType) { + case "added": + newTools++; + break; + case "removed": + removedTools++; + break; + case "modified": + modifiedTools++; + break; + default: + break; + } + } + break; + case "unchanged": + unchangedToolkits++; + break; + default: + break; + } + } + + return { + newToolkits, + removedToolkits, + modifiedToolkits, + versionOnlyToolkits, + unchangedToolkits, + newTools, + removedTools, + modifiedTools, + }; +}; + +/** + * Check if there are any changes that require regeneration + */ +export const hasChanges = (result: ChangeDetectionResult): boolean => + result.summary.newToolkits > 0 || + result.summary.removedToolkits > 0 || + result.summary.modifiedToolkits > 0; + +/** + * Get IDs of toolkits that have changes (excluding unchanged and removed) + * Removed toolkits are not included since they don't need regeneration + */ +export const getChangedToolkitIds = ( + result: ChangeDetectionResult +): readonly string[] => + result.toolkitChanges + .filter((c) => c.changeType !== "unchanged" && c.changeType !== "removed") + .map((c) => c.toolkitId); + +/** + * Format a change detection result for logging + */ +export const formatChangeSummary = (result: ChangeDetectionResult): string => { + const { summary } = result; + const parts: string[] = []; + + if (summary.newToolkits > 0) { + parts.push(`${summary.newToolkits} new toolkit(s)`); + } + if (summary.removedToolkits > 0) { + parts.push(`${summary.removedToolkits} removed toolkit(s)`); + } + if (summary.modifiedToolkits > 0) { + parts.push(`${summary.modifiedToolkits} modified toolkit(s)`); + } + if (summary.versionOnlyToolkits > 0) { + parts.push(`${summary.versionOnlyToolkits} version-only toolkit(s)`); + } + if (summary.unchangedToolkits > 0) { + parts.push(`${summary.unchangedToolkits} unchanged toolkit(s)`); + } + + if (parts.length === 0) { + return "No toolkits found"; + } + + return parts.join(", "); +}; + +const TOOLKIT_CHANGE_LABELS: Record = { + added: "[NEW]", + removed: "[REMOVED]", + modified: "[MODIFIED]", + unchanged: "", +}; + +const TOOL_CHANGE_LABELS: Record = { + added: " + ", + removed: " - ", + modified: " ~ ", +}; + +const buildVersionSuffix = (toolkitChange: ToolkitChange): string => { + if (!toolkitChange.versionChanged) { + return ""; + } + return toolkitChange.previousVersion !== "0.0.0" + ? ` (version ${toolkitChange.previousVersion} -> ${toolkitChange.currentVersion})` + : ` (version -> ${toolkitChange.currentVersion})`; +}; + +const shouldListToolChanges = (toolkitChange: ToolkitChange): boolean => + toolkitChange.changeType === "modified" || + toolkitChange.changeType === "added"; + +const shouldNoteVersionOnlyUpdate = (toolkitChange: ToolkitChange): boolean => + toolkitChange.changeType === "modified" && + toolkitChange.toolChanges.length === 0 && + toolkitChange.versionChanged; + +const formatToolkitLine = (toolkitChange: ToolkitChange): string => { + const changeLabel = TOOLKIT_CHANGE_LABELS[toolkitChange.changeType]; + const versionSuffix = buildVersionSuffix(toolkitChange); + return `${changeLabel} ${toolkitChange.toolkitId} (${toolkitChange.currentToolCount} tools)${versionSuffix}`; +}; + +const appendToolChanges = ( + lines: string[], + toolkitChange: ToolkitChange +): void => { + if (!shouldListToolChanges(toolkitChange)) { + return; + } + if (shouldNoteVersionOnlyUpdate(toolkitChange)) { + lines.push(" ~ version update only"); + } + for (const toolChange of toolkitChange.toolChanges) { + const toolLabel = TOOL_CHANGE_LABELS[toolChange.changeType]; + lines.push(`${toolLabel}${toolChange.toolName}`); + } +}; + +const appendRemovedNotice = ( + lines: string[], + toolkitChange: ToolkitChange +): void => { + if (toolkitChange.changeType === "removed") { + lines.push(" ~ not returned by API; existing docs retained"); + } +}; + +/** + * Format detailed changes for logging + */ +export const formatDetailedChanges = ( + result: ChangeDetectionResult +): string[] => { + const lines: string[] = []; + + for (const toolkitChange of result.toolkitChanges) { + if (toolkitChange.changeType === "unchanged") { + continue; + } + + lines.push(formatToolkitLine(toolkitChange)); + appendToolChanges(lines, toolkitChange); + appendRemovedNotice(lines, toolkitChange); + } + + return lines; +}; diff --git a/toolkit-docs-generator/src/generator/index.ts b/toolkit-docs-generator/src/generator/index.ts new file mode 100644 index 000000000..7b5edd3c6 --- /dev/null +++ b/toolkit-docs-generator/src/generator/index.ts @@ -0,0 +1,5 @@ +/** + * Generator module exports + */ +export * from "./json-generator.js"; +export * from "./output-verifier.js"; diff --git a/toolkit-docs-generator/src/generator/json-generator.ts b/toolkit-docs-generator/src/generator/json-generator.ts new file mode 100644 index 000000000..7e9539cd5 --- /dev/null +++ b/toolkit-docs-generator/src/generator/json-generator.ts @@ -0,0 +1,227 @@ +/** + * JSON Generator + * + * Outputs merged toolkit data as JSON files. + */ +import { mkdir, readFile, stat, writeFile } from "fs/promises"; +import { dirname, join } from "path"; +import type { + MergedToolkit, + ToolkitIndex, + ToolkitIndexEntry, +} from "../types/index.js"; +import { MergedToolkitSchema } from "../types/index.js"; +import { readToolkitsFromDir } from "./output-verifier.js"; + +// ============================================================================ +// Generator Configuration +// ============================================================================ + +export interface JsonGeneratorConfig { + /** Output directory path */ + outputDir: string; + /** Whether to pretty-print JSON (default: true) */ + prettyPrint?: boolean; + /** Whether to generate an index file (default: true) */ + generateIndex?: boolean; + /** Where to source toolkits for the index file */ + indexSource?: "current" | "output"; + /** Whether to validate output with Zod (default: true) */ + validateOutput?: boolean; +} + +export interface GeneratorResult { + /** List of files that were written */ + filesWritten: string[]; + /** List of errors that occurred */ + errors: string[]; +} + +// ============================================================================ +// JSON Generator +// ============================================================================ + +/** + * Generator that outputs merged toolkit data as JSON files + */ +export class JsonGenerator { + private readonly outputDir: string; + private readonly prettyPrint: boolean; + private readonly generateIndex: boolean; + private readonly indexSource: "current" | "output"; + private readonly validateOutput: boolean; + + constructor(config: JsonGeneratorConfig) { + this.outputDir = config.outputDir; + this.prettyPrint = config.prettyPrint ?? true; + this.generateIndex = config.generateIndex ?? true; + this.indexSource = config.indexSource ?? "current"; + this.validateOutput = config.validateOutput ?? true; + } + + /** + * Generate JSON file for a single toolkit + */ + async generateToolkitFile(toolkit: MergedToolkit): Promise { + // Validate if enabled + if (this.validateOutput) { + const result = MergedToolkitSchema.safeParse(toolkit); + if (!result.success) { + throw new Error( + `Validation failed for ${toolkit.id}: ${result.error.message}` + ); + } + } + + const fileName = `${toolkit.id.toLowerCase()}.json`; + const filePath = join(this.outputDir, fileName); + + // Ensure directory exists + await mkdir(dirname(filePath), { recursive: true }); + + // Write file + const content = this.prettyPrint + ? JSON.stringify(toolkit, null, 2) + : JSON.stringify(toolkit); + + await writeFile(filePath, content, "utf-8"); + return filePath; + } + + /** + * Check if a toolkit file already exists in the output directory + */ + async hasToolkitFile(toolkitId: string): Promise { + const fileName = `${toolkitId.toLowerCase()}.json`; + const filePath = join(this.outputDir, fileName); + try { + const stats = await stat(filePath); + return stats.isFile(); + } catch { + return false; + } + } + + /** + * Get set of toolkit IDs that already have output files + */ + async getCompletedToolkitIds(): Promise> { + const completedIds = new Set(); + try { + const result = await readToolkitsFromDir(this.outputDir); + for (const toolkit of result.toolkits) { + completedIds.add(toolkit.id.toLowerCase()); + } + } catch { + // Directory doesn't exist or is empty - that's fine + } + return completedIds; + } + + /** + * Load an existing toolkit file + */ + async loadToolkitFile(toolkitId: string): Promise { + const fileName = `${toolkitId.toLowerCase()}.json`; + const filePath = join(this.outputDir, fileName); + try { + const content = await readFile(filePath, "utf-8"); + const parsed = JSON.parse(content) as unknown; + const result = MergedToolkitSchema.safeParse(parsed); + if (result.success) { + return result.data; + } + return null; + } catch { + return null; + } + } + + /** + * Generate JSON files for multiple toolkits + */ + async generateAll( + toolkits: readonly MergedToolkit[] + ): Promise { + const filesWritten: string[] = []; + const errors: string[] = []; + + // Generate per-toolkit files + for (const toolkit of toolkits) { + try { + const filePath = await this.generateToolkitFile(toolkit); + filesWritten.push(filePath); + } catch (error) { + errors.push(`Failed to write ${toolkit.id}: ${error}`); + } + } + + // Generate index file + if (this.generateIndex && toolkits.length > 0) { + try { + const indexToolkits = + this.indexSource === "output" + ? await this.getToolkitsFromOutputDir(errors) + : toolkits; + const indexPath = await this.generateIndexFile(indexToolkits); + filesWritten.push(indexPath); + } catch (error) { + errors.push(`Failed to write index: ${error}`); + } + } + + return { filesWritten, errors }; + } + + /** + * Generate index file with toolkit summaries + */ + private async generateIndexFile( + toolkits: readonly MergedToolkit[] + ): Promise { + const entries: ToolkitIndexEntry[] = toolkits.map((t) => ({ + id: t.id, + label: t.label, + version: t.version, + category: t.metadata.category, + type: t.metadata.type, + toolCount: t.tools.length, + authType: t.auth?.type ?? "none", + })); + + const index: ToolkitIndex = { + generatedAt: new Date().toISOString(), + version: "1.0.0", + toolkits: entries, + }; + + const filePath = join(this.outputDir, "index.json"); + + await mkdir(dirname(filePath), { recursive: true }); + + const content = this.prettyPrint + ? JSON.stringify(index, null, 2) + : JSON.stringify(index); + + await writeFile(filePath, content, "utf-8"); + return filePath; + } + + private async getToolkitsFromOutputDir( + errors: string[] + ): Promise { + const readResult = await readToolkitsFromDir(this.outputDir); + if (readResult.errors.length > 0) { + errors.push(...readResult.errors); + } + return readResult.toolkits; + } +} + +// ============================================================================ +// Factory +// ============================================================================ + +export const createJsonGenerator = ( + config: JsonGeneratorConfig +): JsonGenerator => new JsonGenerator(config); diff --git a/toolkit-docs-generator/src/generator/output-verifier.ts b/toolkit-docs-generator/src/generator/output-verifier.ts new file mode 100644 index 000000000..e6768070f --- /dev/null +++ b/toolkit-docs-generator/src/generator/output-verifier.ts @@ -0,0 +1,298 @@ +import { readdir, readFile } from "fs/promises"; +import { basename, join } from "path"; +import type { MergedToolkit, ToolkitIndex } from "../types/index.js"; +import { MergedToolkitSchema, ToolkitIndexSchema } from "../types/index.js"; + +export interface OutputVerificationResult { + valid: boolean; + errors: string[]; + warnings: string[]; +} + +export interface ToolkitReadResult { + toolkits: MergedToolkit[]; + errors: string[]; +} + +export interface VerificationProgress { + phase: "reading" | "validating" | "cross-referencing"; + current: number; + total: number; + fileName?: string; +} + +export type VerificationProgressCallback = ( + progress: VerificationProgress +) => void; + +const isToolkitFile = (fileName: string): boolean => + fileName.endsWith(".json") && fileName !== "index.json"; + +const normalizeToolkitKey = (toolkitId: string): string => + toolkitId.toLowerCase(); + +type ReadToolkitFileResult = { + toolkit: MergedToolkit | null; + error?: string; +}; + +const readToolkitFile = async ( + filePath: string +): Promise => { + const fileName = basename(filePath); + let content: string; + try { + content = await readFile(filePath, "utf-8"); + } catch (error) { + const message = error instanceof Error ? error.message : String(error); + return { + toolkit: null, + error: `Failed to read ${fileName}: ${message}`, + }; + } + + let parsed: unknown; + try { + parsed = JSON.parse(content) as unknown; + } catch (error) { + const message = error instanceof Error ? error.message : String(error); + return { + toolkit: null, + error: `Invalid JSON in ${fileName}: ${message}`, + }; + } + + const result = MergedToolkitSchema.safeParse(parsed); + if (!result.success) { + return { + toolkit: null, + error: `Invalid toolkit schema in ${fileName}: ${result.error.message}`, + }; + } + + return { toolkit: result.data }; +}; + +export const readToolkitsFromDir = async ( + dir: string, + onProgress?: VerificationProgressCallback +): Promise => { + const toolkits: MergedToolkit[] = []; + const errors: string[] = []; + + let entries: string[] = []; + try { + entries = await readdir(dir); + } catch (error) { + return { + toolkits: [], + errors: [`Failed to read output directory: ${error}`], + }; + } + + const jsonFiles = entries.filter(isToolkitFile); + const total = jsonFiles.length; + + for (let i = 0; i < jsonFiles.length; i++) { + const fileName = jsonFiles[i]; + if (!fileName) continue; + + onProgress?.({ + phase: "reading", + current: i + 1, + total, + fileName, + }); + + const filePath = join(dir, fileName); + const result = await readToolkitFile(filePath); + if (!result.toolkit) { + errors.push(result.error ?? `Invalid toolkit JSON: ${fileName}`); + continue; + } + toolkits.push(result.toolkit); + } + + return { toolkits, errors }; +}; + +const readIndexFile = async (dir: string): Promise => { + const indexPath = join(dir, "index.json"); + try { + const content = await readFile(indexPath, "utf-8"); + const parsed = JSON.parse(content) as unknown; + const result = ToolkitIndexSchema.safeParse(parsed); + if (!result.success) { + return null; + } + return result.data; + } catch { + return null; + } +}; + +const buildToolkitMap = ( + toolkits: MergedToolkit[] +): Map => { + const toolkitById = new Map(); + for (const toolkit of toolkits) { + const key = normalizeToolkitKey(toolkit.id); + toolkitById.set(key, toolkit); + } + return toolkitById; +}; + +const reportProgress = ( + onProgress: VerificationProgressCallback | undefined, + progress: VerificationProgress +): void => { + onProgress?.(progress); +}; + +const validateIndexEntry = ( + toolkit: MergedToolkit, + indexEntry: ToolkitIndex["toolkits"][number] +): string[] => { + const errors: string[] = []; + if (indexEntry.version !== toolkit.version) { + errors.push( + `index.json version mismatch for ${toolkit.id}: ${indexEntry.version} vs ${toolkit.version}` + ); + } + if (indexEntry.category !== toolkit.metadata.category) { + errors.push( + `index.json category mismatch for ${toolkit.id}: ${indexEntry.category} vs ${toolkit.metadata.category}` + ); + } + if (indexEntry.type !== toolkit.metadata.type) { + errors.push( + `index.json type mismatch for ${toolkit.id}: ${indexEntry.type} vs ${toolkit.metadata.type}` + ); + } + if (indexEntry.toolCount !== toolkit.tools.length) { + errors.push( + `index.json toolCount mismatch for ${toolkit.id}: ${indexEntry.toolCount} vs ${toolkit.tools.length}` + ); + } + const authType = toolkit.auth?.type ?? "none"; + if (indexEntry.authType !== authType) { + errors.push( + `index.json authType mismatch for ${toolkit.id}: ${indexEntry.authType} vs ${authType}` + ); + } + return errors; +}; + +const validateIndex = async ( + dir: string, + toolkitById: Map, + onProgress?: VerificationProgressCallback +): Promise => { + const errors: string[] = []; + + reportProgress(onProgress, { + phase: "validating", + current: 0, + total: 1, + fileName: "index.json", + }); + + const index = await readIndexFile(dir); + if (!index) { + errors.push("Missing or invalid index.json in output directory."); + return errors; + } + + const indexIds = new Set( + index.toolkits.map((entry) => normalizeToolkitKey(entry.id)) + ); + + const toolkitEntries = Array.from(toolkitById.entries()); + const totalEntries = toolkitEntries.length; + + for (let i = 0; i < toolkitEntries.length; i++) { + const entry = toolkitEntries[i]; + if (!entry) { + continue; + } + const [toolkitId, toolkit] = entry; + + reportProgress(onProgress, { + phase: "cross-referencing", + current: i + 1, + total: totalEntries, + fileName: `${toolkit.id}.json`, + }); + + if (!indexIds.has(toolkitId)) { + errors.push(`index.json missing toolkit entry: ${toolkit.id}`); + continue; + } + + const indexEntry = index.toolkits.find( + (item) => normalizeToolkitKey(item.id) === toolkitId + ); + if (!indexEntry) { + continue; + } + + errors.push(...validateIndexEntry(toolkit, indexEntry)); + } + + for (const indexEntry of index.toolkits) { + const toolkitId = normalizeToolkitKey(indexEntry.id); + if (!toolkitById.has(toolkitId)) { + errors.push(`index.json entry has no matching file: ${indexEntry.id}`); + } + } + + return errors; +}; + +const validateFileNames = async ( + dir: string, + toolkitById: Map +): Promise => { + const errors: string[] = []; + const fileNames = await readdir(dir).catch(() => []); + const jsonFiles = fileNames.filter(isToolkitFile); + for (const fileName of jsonFiles) { + const baseName = basename(fileName, ".json"); + if (baseName !== baseName.toLowerCase()) { + errors.push(`File name must be lowercase: ${fileName}`); + } + const idFromFile = baseName.toLowerCase(); + if (!toolkitById.has(idFromFile)) { + errors.push(`File name does not match toolkit id: ${fileName}`); + } + } + return errors; +}; + +export const verifyOutputDir = async ( + dir: string, + onProgress?: VerificationProgressCallback +): Promise => { + const errors: string[] = []; + const warnings: string[] = []; + + const { toolkits, errors: toolkitErrors } = await readToolkitsFromDir( + dir, + onProgress + ); + errors.push(...toolkitErrors); + + if (toolkits.length === 0) { + errors.push("No toolkit JSON files found in output directory."); + } + + const toolkitById = buildToolkitMap(toolkits); + errors.push(...(await validateIndex(dir, toolkitById, onProgress))); + errors.push(...(await validateFileNames(dir, toolkitById))); + + return { + valid: errors.length === 0, + errors, + warnings, + }; +}; diff --git a/toolkit-docs-generator/src/index.ts b/toolkit-docs-generator/src/index.ts new file mode 100644 index 000000000..97f39ff57 --- /dev/null +++ b/toolkit-docs-generator/src/index.ts @@ -0,0 +1,19 @@ +/** + * Toolkit Docs Generator + * + * A library for generating Arcade toolkit documentation JSON + * from multiple data sources. + */ + +// Generator +export * from "./generator/index.js"; +// LLM +export * from "./llm/index.js"; +// Merger +export * from "./merger/index.js"; +// Sources +export * from "./sources/index.js"; +// Types +export * from "./types/index.js"; +// Utils +export * from "./utils/index.js"; diff --git a/toolkit-docs-generator/src/llm/client.ts b/toolkit-docs-generator/src/llm/client.ts new file mode 100644 index 000000000..79933e69d --- /dev/null +++ b/toolkit-docs-generator/src/llm/client.ts @@ -0,0 +1,148 @@ +import Anthropic from "@anthropic-ai/sdk"; +import OpenAI from "openai"; +import { type RetryOptions, withRetry } from "../utils/retry.js"; + +export type LlmProvider = "openai" | "anthropic"; + +export interface LlmRequest { + readonly model: string; + readonly prompt: string; + readonly system?: string; + readonly temperature?: number; + readonly maxTokens?: number; +} + +export interface LlmClient { + readonly provider: LlmProvider; + readonly generateText: (request: LlmRequest) => Promise; +} + +export interface LlmClientRetryConfig { + /** Maximum number of retries (default: 3) */ + readonly maxRetries?: number; + /** Initial retry delay in ms (default: 1000) */ + readonly initialDelayMs?: number; + /** Callback for retry events */ + readonly onRetry?: + | ((attempt: number, error: Error, delayMs: number) => void) + | undefined; +} + +export interface OpenAiClientConfig { + readonly apiKey: string; + readonly baseUrl?: string; + readonly retry?: LlmClientRetryConfig; +} + +export class OpenAiClient implements LlmClient { + readonly provider = "openai" as const; + private readonly client: OpenAI; + private readonly retryOptions: RetryOptions; + + constructor(config: OpenAiClientConfig) { + this.client = new OpenAI({ + apiKey: config.apiKey, + baseURL: config.baseUrl, + }); + this.retryOptions = { + maxRetries: config.retry?.maxRetries ?? 3, + initialDelayMs: config.retry?.initialDelayMs ?? 1000, + onRetry: config.retry?.onRetry, + }; + } + + async generateText(request: LlmRequest): Promise { + return withRetry(async () => { + const payload: OpenAI.Responses.ResponseCreateParamsNonStreaming = { + model: request.model, + input: request.prompt, + }; + + if (request.system !== undefined) { + payload.instructions = request.system; + } + if (request.temperature !== undefined) { + payload.temperature = request.temperature; + } + if (request.maxTokens !== undefined) { + payload.max_output_tokens = request.maxTokens; + } + + const response = await this.client.responses.create(payload); + + if (!response.output_text) { + throw new Error("OpenAI response missing output_text"); + } + + return response.output_text.trim(); + }, this.retryOptions); + } +} + +export interface AnthropicClientConfig { + readonly apiKey: string; + readonly baseUrl?: string; + readonly retry?: LlmClientRetryConfig; +} + +export class AnthropicClient implements LlmClient { + readonly provider = "anthropic" as const; + private readonly client: Anthropic; + private readonly retryOptions: RetryOptions; + + constructor(config: AnthropicClientConfig) { + this.client = new Anthropic({ + apiKey: config.apiKey, + baseURL: config.baseUrl, + }); + this.retryOptions = { + maxRetries: config.retry?.maxRetries ?? 3, + initialDelayMs: config.retry?.initialDelayMs ?? 1000, + onRetry: config.retry?.onRetry, + }; + } + + async generateText(request: LlmRequest): Promise { + return withRetry(async () => { + const payload: Anthropic.MessageCreateParamsNonStreaming = { + model: request.model, + max_tokens: request.maxTokens ?? 512, + messages: [{ role: "user", content: request.prompt }], + }; + + if (request.temperature !== undefined) { + payload.temperature = request.temperature; + } + if (request.system !== undefined) { + payload.system = request.system; + } + + const response = await this.client.messages.create(payload); + + const content = response.content + .map((item) => ("text" in item ? item.text : "")) + .join("") + .trim(); + + if (!content) { + throw new Error("Anthropic response missing text content"); + } + + return content; + }, this.retryOptions); + } +} + +export type LlmClientConfig = + | { provider: "openai"; config: OpenAiClientConfig } + | { provider: "anthropic"; config: AnthropicClientConfig }; + +export const createLlmClient = (config: LlmClientConfig): LlmClient => { + if (config.provider === "openai") { + return new OpenAiClient(config.config); + } + + return new AnthropicClient(config.config); +}; + +export type { RetryOptions } from "../utils/retry.js"; diff --git a/toolkit-docs-generator/src/llm/index.ts b/toolkit-docs-generator/src/llm/index.ts new file mode 100644 index 000000000..40c80d3cc --- /dev/null +++ b/toolkit-docs-generator/src/llm/index.ts @@ -0,0 +1,4 @@ +export * from "./client.js"; +export * from "./tool-example-generator.js"; +export * from "./toolkit-overview-generator.js"; +export * from "./toolkit-summary-generator.js"; diff --git a/toolkit-docs-generator/src/llm/tool-example-generator.ts b/toolkit-docs-generator/src/llm/tool-example-generator.ts new file mode 100644 index 000000000..fe59a7201 --- /dev/null +++ b/toolkit-docs-generator/src/llm/tool-example-generator.ts @@ -0,0 +1,198 @@ +import type { + ToolExampleGenerator, + ToolExampleResult, +} from "../merger/data-merger.js"; +import { + type ExampleParameterValue, + type SecretType, + SecretTypeSchema, + type ToolDefinition, + type ToolSecret, +} from "../types/index.js"; +import type { LlmClient } from "./client.js"; + +export interface LlmToolExampleGeneratorConfig { + readonly client: LlmClient; + readonly model: string; + readonly temperature?: number; + readonly maxTokens?: number; + readonly systemPrompt?: string; +} + +const defaultSystemPrompt = + "Return only valid JSON. No markdown, no extra text."; + +const buildPrompt = (tool: ToolDefinition): string => { + const parameterLines = tool.parameters.map((param) => { + const description = param.description ?? "No description"; + return `- ${param.name} (${param.type}, required: ${param.required}): ${description}`; + }); + const secrets = tool.secrets.length > 0 ? tool.secrets.join(", ") : "None"; + + return [ + "Generate example values for the tool parameters below.", + "Return a JSON object with this shape:", + '{ "parameters": { "": "" }, "secrets": { "": "" } }', + "Secret types must be one of: api_key, token, client_secret, webhook_secret, private_key, password, unknown.", + "", + `Tool: ${tool.qualifiedName}`, + `Description: ${tool.description ?? "No description"}`, + "Parameters:", + ...parameterLines, + `Secrets: ${secrets}`, + ].join("\n"); +}; + +const extractJson = (text: string): string => { + const fenced = text.match(/```(?:json)?\s*([\s\S]*?)```/); + if (fenced?.[1]) { + return fenced[1].trim(); + } + return text.trim(); +}; + +const parseJsonObject = (text: string): Record => { + const jsonText = extractJson(text); + const parsed = JSON.parse(jsonText) as unknown; + + if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) { + throw new Error("LLM response is not a JSON object"); + } + + return parsed as Record; +}; + +const mapParamType = ( + type: string +): "string" | "integer" | "boolean" | "array" | "object" => { + switch (type) { + case "string": + return "string"; + case "integer": + case "number": + return "integer"; + case "boolean": + return "boolean"; + case "array": + return "array"; + case "object": + return "object"; + default: + return "string"; + } +}; + +const normalizeIntegerValue = (value: unknown): unknown => { + if (typeof value !== "string") { + return value; + } + const parsed = Number(value); + return Number.isFinite(parsed) ? parsed : value; +}; + +const normalizeBooleanValue = (value: unknown): unknown => { + if (typeof value !== "string") { + return value; + } + const lowered = value.toLowerCase(); + if (lowered === "true") { + return true; + } + if (lowered === "false") { + return false; + } + return value; +}; + +const normalizeExampleValue = (paramType: string, value: unknown): unknown => { + if (value === null || value === undefined) { + return null; + } + + switch (mapParamType(paramType)) { + case "integer": + return normalizeIntegerValue(value); + case "boolean": + return normalizeBooleanValue(value); + default: + return value; + } +}; + +export class LlmToolExampleGenerator implements ToolExampleGenerator { + private readonly client: LlmClient; + private readonly model: string; + private readonly temperature: number | undefined; + private readonly maxTokens: number | undefined; + private readonly systemPrompt: string; + + constructor(config: LlmToolExampleGeneratorConfig) { + this.client = config.client; + this.model = config.model; + this.temperature = config.temperature; + this.maxTokens = config.maxTokens; + this.systemPrompt = config.systemPrompt ?? defaultSystemPrompt; + } + + async generate(tool: ToolDefinition): Promise { + const prompt = buildPrompt(tool); + const request = { + model: this.model, + prompt, + system: this.systemPrompt, + } as const; + + const response = await this.client.generateText({ + ...request, + ...(this.temperature !== undefined + ? { temperature: this.temperature } + : {}), + ...(this.maxTokens !== undefined ? { maxTokens: this.maxTokens } : {}), + }); + + const payload = parseJsonObject(response); + const rawParameters = + (payload.parameters as Record | undefined) ?? {}; + const rawSecrets = + (payload.secrets as Record | undefined) ?? {}; + const parameters: Record = {}; + + for (const param of tool.parameters) { + const rawValue = rawParameters[param.name]; + parameters[param.name] = { + value: normalizeExampleValue(param.type, rawValue), + type: mapParamType(param.type), + required: param.required, + }; + } + + const normalizedSecrets = new Map(); + for (const [key, value] of Object.entries(rawSecrets)) { + if (typeof value === "string") { + const parsed = SecretTypeSchema.safeParse(value); + normalizedSecrets.set( + key.toLowerCase(), + parsed.success ? parsed.data : "unknown" + ); + } + } + + const secretsInfo: ToolSecret[] = tool.secrets.map((secret) => ({ + name: secret, + type: normalizedSecrets.get(secret.toLowerCase()) ?? "unknown", + })); + + return { + codeExample: { + toolName: tool.qualifiedName, + parameters, + requiresAuth: tool.auth !== null, + authProvider: tool.auth?.providerId ?? undefined, + tabLabel: tool.auth + ? "Call the Tool with User Authorization" + : "Call the Tool", + }, + secretsInfo, + }; + } +} diff --git a/toolkit-docs-generator/src/llm/toolkit-overview-generator.ts b/toolkit-docs-generator/src/llm/toolkit-overview-generator.ts new file mode 100644 index 000000000..4e330ce22 --- /dev/null +++ b/toolkit-docs-generator/src/llm/toolkit-overview-generator.ts @@ -0,0 +1,229 @@ +import type { + OverviewGenerationInput, + OverviewGenerationResult, + ToolkitOverviewGenerator, +} from "../overview/types.js"; +import type { DocumentationChunk, SecretType } from "../types/index.js"; +import type { LlmClient } from "./client.js"; + +export interface LlmToolkitOverviewGeneratorConfig { + readonly client: LlmClient; + readonly model: string; + readonly temperature?: number; + readonly maxTokens?: number; + readonly systemPrompt?: string; +} + +const defaultSystemPrompt = + "Return only valid JSON. No markdown fences, no extra text."; + +const collectSecrets = (tools: OverviewGenerationInput["toolkit"]["tools"]) => { + const secretNames = new Set(); + const secretTypes = new Set(); + + for (const tool of tools) { + for (const name of tool.secrets) { + secretNames.add(name); + } + for (const secret of tool.secretsInfo ?? []) { + secretTypes.add(secret.type); + } + } + + return { + names: Array.from(secretNames), + types: Array.from(secretTypes), + }; +}; + +const formatToolLines = ( + tools: OverviewGenerationInput["toolkit"]["tools"] +): string => { + if (tools.length === 0) { + return "None"; + } + + const sampled = tools.slice(0, 12); + return sampled + .map( + (tool) => + `- ${tool.qualifiedName}: ${tool.description ?? "No description"}` + ) + .join("\n"); +}; + +const formatAuth = (toolkit: OverviewGenerationInput["toolkit"]): string => { + if (!toolkit.auth) { + return "none"; + } + const scopes = + toolkit.auth.allScopes.length > 0 + ? toolkit.auth.allScopes.join(", ") + : "None"; + const provider = toolkit.auth.providerId ?? "unknown"; + return `${toolkit.auth.type}; provider: ${provider}; scopes: ${scopes}`; +}; + +const buildPrompt = (input: OverviewGenerationInput): string => { + const { toolkit, instructions, previousOverview, mode } = input; + const secrets = collectSecrets(toolkit.tools); + const sources = instructions?.sources ?? []; + + const base = [ + "Write an overview section for Arcade toolkit docs.", + 'Return JSON: {"shouldWrite": boolean, "overview": "", "reason": ""}', + "", + "Formatting requirements:", + "- Start with a '## Overview' heading.", + "- 1 short paragraph explaining what the toolkit enables.", + "- Add a **Capabilities** list with 3 to 5 bullet points.", + "- If auth type is oauth2 or mixed, add an **OAuth** section with provider and scopes.", + "- If auth type is api_key or mixed, mention API key usage in **OAuth**.", + "- If secrets exist, add a **Secrets** section describing secret types and examples.", + "- Use concise developer-focused language.", + "", + ]; + + const modeGuidance = + mode === "auto" + ? [ + "Decision rule:", + '- If you are not confident you can write an accurate overview from the provided data, set shouldWrite=false and overview="".', + "- Only use provided data and general public knowledge. Do not invent product-specific claims.", + "", + ] + : [ + "Follow the toolkit-specific instructions below.", + "Use the previous overview as context if provided.", + "Set shouldWrite=true when you can comply with the instructions.", + "", + ]; + + const instructionsBlock = [ + "Toolkit:", + `Name: ${toolkit.label} (${toolkit.id})`, + `Description: ${toolkit.description ?? "No description"}`, + `Auth: ${formatAuth(toolkit)}`, + `Secret types: ${secrets.types.length > 0 ? secrets.types.join(", ") : "None"}`, + `Secret names: ${secrets.names.length > 0 ? secrets.names.join(", ") : "None"}`, + `Tools (${toolkit.tools.length}, sample):`, + formatToolLines(toolkit.tools), + "", + ]; + + const referencesBlock = + sources.length > 0 + ? ["References:", ...sources.map((source) => `- ${source}`), ""] + : []; + + const customInstructions = instructions?.instructions + ? ["Instructions:", instructions.instructions, ""] + : []; + + const previousBlock = previousOverview + ? ["Previous overview:", previousOverview, ""] + : []; + + return [ + ...base, + ...modeGuidance, + ...instructionsBlock, + ...referencesBlock, + ...customInstructions, + ...previousBlock, + ].join("\n"); +}; + +const extractJson = (text: string): string => { + const fenced = text.match(/```(?:json)?\s*([\s\S]*?)```/); + if (fenced?.[1]) { + return fenced[1].trim(); + } + return text.trim(); +}; + +const parseJsonObject = (text: string): Record => { + const jsonText = extractJson(text); + const parsed = JSON.parse(jsonText) as unknown; + + if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) { + throw new Error("LLM response is not a JSON object"); + } + + return parsed as Record; +}; + +const normalizeOverviewContent = (content: string): string => { + const trimmed = content.trim(); + if (trimmed.toLowerCase().startsWith("## overview")) { + return trimmed; + } + return `## Overview\n\n${trimmed}`; +}; + +const buildOverviewChunk = (content: string): DocumentationChunk => ({ + type: "markdown", + location: "header", + position: "before", + content, +}); + +export class LlmToolkitOverviewGenerator implements ToolkitOverviewGenerator { + private readonly client: LlmClient; + private readonly model: string; + private readonly temperature: number | undefined; + private readonly maxTokens: number | undefined; + private readonly systemPrompt: string; + + constructor(config: LlmToolkitOverviewGeneratorConfig) { + this.client = config.client; + this.model = config.model; + this.temperature = config.temperature; + this.maxTokens = config.maxTokens; + this.systemPrompt = config.systemPrompt ?? defaultSystemPrompt; + } + + async generate( + input: OverviewGenerationInput + ): Promise { + const prompt = buildPrompt(input); + const response = await this.client.generateText({ + model: this.model, + prompt, + system: this.systemPrompt, + ...(this.temperature !== undefined + ? { temperature: this.temperature } + : {}), + ...(this.maxTokens !== undefined ? { maxTokens: this.maxTokens } : {}), + }); + + const payload = parseJsonObject(response); + const shouldWrite = (() => { + const value = payload.shouldWrite; + if (value === undefined) { + return true; + } + if (typeof value === "boolean") { + return value; + } + if (typeof value === "string") { + return value.toLowerCase() === "true"; + } + return Boolean(value); + })(); + const overview = payload.overview; + const reason = + typeof payload.reason === "string" ? payload.reason : undefined; + + if (input.mode === "auto" && !shouldWrite) { + return null; + } + + if (typeof overview !== "string" || overview.trim().length === 0) { + return null; + } + + const content = normalizeOverviewContent(overview); + return { chunk: buildOverviewChunk(content), reason }; + } +} diff --git a/toolkit-docs-generator/src/llm/toolkit-summary-generator.ts b/toolkit-docs-generator/src/llm/toolkit-summary-generator.ts new file mode 100644 index 000000000..d2739a137 --- /dev/null +++ b/toolkit-docs-generator/src/llm/toolkit-summary-generator.ts @@ -0,0 +1,144 @@ +import type { ToolkitSummaryGenerator } from "../merger/data-merger.js"; +import type { MergedTool, MergedToolkit, SecretType } from "../types/index.js"; +import type { LlmClient } from "./client.js"; + +export interface LlmToolkitSummaryGeneratorConfig { + readonly client: LlmClient; + readonly model: string; + readonly temperature?: number; + readonly maxTokens?: number; + readonly systemPrompt?: string; +} + +const defaultSystemPrompt = + "Return only valid JSON. No markdown, no extra text."; + +const formatToolLines = (tools: MergedTool[]): string => { + if (tools.length === 0) { + return "None"; + } + + return tools + .map( + (tool) => + `- ${tool.qualifiedName}: ${tool.description ?? "No description"}` + ) + .join("\n"); +}; + +const formatAuth = (toolkit: MergedToolkit): string => { + if (!toolkit.auth) { + return "none"; + } + + const scopes = + toolkit.auth.allScopes.length > 0 + ? toolkit.auth.allScopes.join(", ") + : "None"; + const provider = toolkit.auth.providerId ?? "unknown"; + + return `${toolkit.auth.type}; provider: ${provider}; scopes: ${scopes}`; +}; + +const collectSecrets = (tools: MergedTool[]) => { + const secretNames = new Set(); + const secretTypes = new Set(); + + for (const tool of tools) { + for (const name of tool.secrets) { + secretNames.add(name); + } + for (const secret of tool.secretsInfo) { + secretTypes.add(secret.type); + } + } + + return { + names: Array.from(secretNames), + types: Array.from(secretTypes), + }; +}; + +const buildPrompt = (toolkit: MergedToolkit): string => { + const secrets = collectSecrets(toolkit.tools); + + return [ + "Write a concise summary for Arcade toolkit docs.", + 'Return JSON: {"summary": ""}', + "", + "Requirements:", + "- 60 to 140 words.", + "- Start with 1 to 2 sentences that explain the provider and what the toolkit enables.", + "- Add a **Capabilities** section with 3 to 5 bullet points.", + "- Do not list tools one by one. Summarize shared capabilities.", + "- If auth type is oauth2 or mixed, add an **OAuth** section with provider and scopes.", + "- If auth type is api_key or mixed, mention API key usage in **OAuth**.", + "- If any secrets exist, add a **Secrets** section describing secret types and examples.", + "- Use Markdown. Keep it concise and developer-focused.", + "", + `Toolkit: ${toolkit.label} (${toolkit.id})`, + `Description: ${toolkit.description ?? "No description"}`, + `Auth: ${formatAuth(toolkit)}`, + `Secret types: ${secrets.types.length > 0 ? secrets.types.join(", ") : "None"}`, + `Secret names: ${secrets.names.length > 0 ? secrets.names.join(", ") : "None"}`, + `Tools (${toolkit.tools.length}):`, + formatToolLines(toolkit.tools), + ].join("\n"); +}; + +const extractJson = (text: string): string => { + const fenced = text.match(/```(?:json)?\s*([\s\S]*?)```/); + if (fenced?.[1]) { + return fenced[1].trim(); + } + return text.trim(); +}; + +const parseJsonObject = (text: string): Record => { + const jsonText = extractJson(text); + const parsed = JSON.parse(jsonText) as unknown; + + if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) { + throw new Error("LLM response is not a JSON object"); + } + + return parsed as Record; +}; + +export class LlmToolkitSummaryGenerator implements ToolkitSummaryGenerator { + private readonly client: LlmClient; + private readonly model: string; + private readonly temperature: number | undefined; + private readonly maxTokens: number | undefined; + private readonly systemPrompt: string; + + constructor(config: LlmToolkitSummaryGeneratorConfig) { + this.client = config.client; + this.model = config.model; + this.temperature = config.temperature; + this.maxTokens = config.maxTokens; + this.systemPrompt = config.systemPrompt ?? defaultSystemPrompt; + } + + async generate(toolkit: MergedToolkit): Promise { + const prompt = buildPrompt(toolkit); + const response = await this.client.generateText({ + model: this.model, + prompt, + system: this.systemPrompt, + ...(this.temperature !== undefined + ? { temperature: this.temperature } + : {}), + ...(this.maxTokens !== undefined ? { maxTokens: this.maxTokens } : {}), + }); + + const payload = parseJsonObject(response); + const summary = payload.summary; + + if (typeof summary !== "string" || summary.trim().length === 0) { + throw new Error("LLM response missing summary"); + } + + return summary.trim(); + } +} diff --git a/toolkit-docs-generator/src/merger/data-merger.ts b/toolkit-docs-generator/src/merger/data-merger.ts new file mode 100644 index 000000000..416c3c257 --- /dev/null +++ b/toolkit-docs-generator/src/merger/data-merger.ts @@ -0,0 +1,1003 @@ +/** + * Data Merger + * + * Combines data from Engine API, Design System, and Custom Sections + * into the final MergedToolkit format. + */ + +import type { + OverviewGenerationInput, + ToolkitOverviewGenerator, + ToolkitOverviewInstructions, +} from "../overview/types.js"; +import { createEmptyOverviewInstructionsSource } from "../sources/in-memory.js"; +import type { + ICustomSectionsSource, + IOverviewInstructionsSource, +} from "../sources/interfaces.js"; +import type { IToolkitDataSource } from "../sources/toolkit-data-source.js"; +import type { + CustomSections, + DocumentationChunk, + MergedTool, + MergedToolkit, + MergedToolkitAuth, + MergedToolkitMetadata, + ToolCodeExample, + ToolDefinition, + ToolkitAuthType, + ToolkitMetadata, +} from "../types/index.js"; +import { mapWithConcurrency } from "../utils/concurrency.js"; + +// ============================================================================ +// Merger Configuration +// ============================================================================ + +export interface DataMergerConfig { + toolkitDataSource: IToolkitDataSource; + customSectionsSource: ICustomSectionsSource; + overviewInstructionsSource?: IOverviewInstructionsSource; + overviewGenerator?: ToolkitOverviewGenerator; + skipOverview?: boolean; + toolExampleGenerator?: ToolExampleGenerator; + toolkitSummaryGenerator?: ToolkitSummaryGenerator; + previousToolkits?: ReadonlyMap; + /** Maximum concurrent LLM calls for tool examples (default: 5) */ + llmConcurrency?: number; + /** Maximum concurrent toolkit processing (default: 3) */ + toolkitConcurrency?: number; + /** Progress callback for toolkit processing (extended with tool count) */ + onToolkitProgress?: + | (( + toolkitId: string, + status: "start" | "done", + toolCount?: number + ) => void) + | undefined; + /** Callback when a toolkit is completed - for incremental writes */ + onToolkitComplete?: ((result: MergeResult) => Promise) | undefined; + /** Set of toolkit IDs to skip (for resume support) */ + skipToolkitIds?: ReadonlySet | undefined; +} + +export interface FailedTool { + readonly toolkitId: string; + readonly toolName: string; + readonly qualifiedName: string; + readonly reason: string; +} + +export interface MergeResult { + toolkit: MergedToolkit; + warnings: string[]; + failedTools: FailedTool[]; +} + +export interface ToolExampleResult { + codeExample: ToolCodeExample; + secretsInfo: MergedTool["secretsInfo"]; +} + +export interface ToolExampleGenerator { + generate: (tool: ToolDefinition) => Promise; +} + +export interface ToolkitSummaryGenerator { + generate: (toolkit: MergedToolkit) => Promise; +} + +interface MergeToolkitOptions { + previousToolkit?: MergedToolkit; + /** Maximum concurrent LLM calls for tool examples (default: 5) */ + llmConcurrency?: number; + overviewGenerator?: ToolkitOverviewGenerator; + overviewInstructions?: ToolkitOverviewInstructions | null; + skipOverview?: boolean; +} + +// ============================================================================ +// Pure Functions for Data Transformation +// ============================================================================ + +/** + * Group tools by their toolkit name (first part of qualified name) + */ +export const groupToolsByToolkit = ( + tools: readonly ToolDefinition[] +): ReadonlyMap => { + const groups = new Map(); + + for (const tool of tools) { + const toolkitName = tool.qualifiedName.split(".")[0]; + if (!toolkitName) continue; + + const existing = groups.get(toolkitName) ?? []; + groups.set(toolkitName, [...existing, tool]); + } + + return groups; +}; +/** + * Compute the union of all scopes from tools + */ +export const computeAllScopes = ( + tools: readonly ToolDefinition[] +): string[] => { + const scopeSet = new Set(); + + for (const tool of tools) { + if (tool.auth?.scopes) { + for (const scope of tool.auth.scopes) { + scopeSet.add(scope); + } + } + } + + return Array.from(scopeSet).sort(); +}; + +export const normalizeList = (values: readonly string[]): string[] => + Array.from(values).sort(); + +export const stableStringify = (value: unknown): string => { + if (Array.isArray(value)) { + return `[${value.map((item) => stableStringify(item)).join(",")}]`; + } + + if (value && typeof value === "object") { + const entries = Object.entries(value as Record).sort( + ([keyA], [keyB]) => keyA.localeCompare(keyB) + ); + return `{${entries + .map( + ([key, entryValue]) => + `${JSON.stringify(key)}:${stableStringify(entryValue)}` + ) + .join(",")}}`; + } + + return JSON.stringify(value); +}; + +export const buildToolSignatureInput = ( + tool: ToolDefinition | MergedTool +): Record => ({ + name: tool.name, + qualifiedName: tool.qualifiedName, + description: tool.description ?? null, + parameters: tool.parameters + .map((param) => ({ + name: param.name, + type: param.type, + innerType: param.innerType ?? null, + required: param.required, + description: param.description ?? null, + enum: param.enum ? normalizeList(param.enum) : null, + inferrable: param.inferrable ?? true, + })) + .sort((left, right) => left.name.localeCompare(right.name)), + auth: tool.auth + ? { + providerId: tool.auth.providerId ?? null, + providerType: tool.auth.providerType, + scopes: normalizeList(tool.auth.scopes), + } + : null, + secrets: normalizeList(tool.secrets), + output: tool.output + ? { + type: tool.output.type, + description: tool.output.description ?? null, + } + : null, +}); + +export const buildToolSignature = (tool: ToolDefinition | MergedTool): string => + stableStringify(buildToolSignatureInput(tool)); + +export const buildToolkitSummarySignature = (toolkit: MergedToolkit): string => + stableStringify({ + id: toolkit.id, + label: toolkit.label, + description: toolkit.description ?? null, + auth: toolkit.auth + ? { + type: toolkit.auth.type, + providerId: toolkit.auth.providerId ?? null, + allScopes: normalizeList(toolkit.auth.allScopes), + } + : null, + tools: toolkit.tools + .map((tool) => ({ + qualifiedName: tool.qualifiedName, + signature: buildToolSignature(tool), + })) + .sort((left, right) => + left.qualifiedName.localeCompare(right.qualifiedName) + ), + }); + +const shouldReuseExample = ( + tool: ToolDefinition, + previousTool: MergedTool +): boolean => { + if (!previousTool.codeExample) { + return false; + } + + return buildToolSignature(tool) === buildToolSignature(previousTool); +}; + +/** + * Determine the auth type from tools + */ +export const determineAuthType = ( + tools: readonly ToolDefinition[] +): ToolkitAuthType => { + const hasOAuth = tools.some((tool) => tool.auth?.providerType === "oauth2"); + const hasApiKey = tools.some( + (tool) => tool.auth && tool.auth.providerType !== "oauth2" + ); + + if (hasOAuth && hasApiKey) { + return "mixed"; + } + + if (hasOAuth) { + return "oauth2"; + } + + if (hasApiKey) { + return "api_key"; + } + + return "none"; +}; + +/** + * Get the provider ID from tools + */ +export const getProviderId = ( + tools: readonly ToolDefinition[] +): string | null => { + const toolWithAuth = tools.find((t) => t.auth?.providerId); + return toolWithAuth?.auth?.providerId ?? null; +}; + +/** + * Extract version from fully qualified name + */ +export const extractVersion = (fullyQualifiedName: string): string => { + const parts = fullyQualifiedName.split("@"); + return parts[1] ?? "0.0.0"; +}; +/** + * Create default metadata for toolkits not found in Design System + */ +const TOOLKIT_ID_NORMALIZER = /[^a-z0-9]/g; + +const normalizeToolkitId = (toolkitId: string): string => + toolkitId.toLowerCase().replace(TOOLKIT_ID_NORMALIZER, ""); + +const isStarterToolkitId = (toolkitId: string): boolean => + normalizeToolkitId(toolkitId).endsWith("api"); + +const getDefaultIconId = (toolkitId: string): string => { + const normalized = normalizeToolkitId(toolkitId); + // Prefer provider icons for "*Api" toolkits when possible. + return normalized.endsWith("api") ? normalized.slice(0, -3) : normalized; +}; + +const getDefaultDocsSlug = (toolkitId: string): string => { + const normalized = normalizeToolkitId(toolkitId); + // Prefer "github-api" style slugs for "*Api" toolkits. + return normalized.endsWith("api") + ? `${normalized.slice(0, -3)}-api` + : normalized; +}; + +const applyToolkitTypeOverrides = ( + toolkitId: string, + metadata: MergedToolkitMetadata +): MergedToolkitMetadata => { + if (isStarterToolkitId(toolkitId) && metadata.type === "arcade") { + return { ...metadata, type: "arcade_starter" }; + } + return metadata; +}; + +const getDefaultMetadata = (toolkitId: string): MergedToolkitMetadata => + applyToolkitTypeOverrides(toolkitId, { + category: "development", + iconUrl: `https://design-system.arcade.dev/icons/${getDefaultIconId(toolkitId)}.svg`, + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: `https://docs.arcade.dev/en/mcp-servers/development/${getDefaultDocsSlug(toolkitId)}`, + isComingSoon: false, + isHidden: false, + }); + +/** + * Transform ToolkitMetadata to MergedToolkitMetadata (without id/label) + */ +const transformMetadata = ( + metadata: ToolkitMetadata +): MergedToolkitMetadata => ({ + category: metadata.category, + iconUrl: metadata.iconUrl, + isBYOC: metadata.isBYOC, + isPro: metadata.isPro, + type: metadata.type, + docsLink: metadata.docsLink, + isComingSoon: metadata.isComingSoon, + isHidden: metadata.isHidden, +}); + +/** + * Get documentation chunks for a tool, preserving from previous output if source is empty + */ +const getToolDocumentationChunks = ( + toolName: string, + toolChunks: { [key: string]: DocumentationChunk[] }, + previousTool?: MergedTool +): DocumentationChunk[] => { + const fromSource = toolChunks[toolName] ?? []; + const fromPrevious = previousTool?.documentationChunks ?? []; + + // If source has chunks, use source (it's authoritative) + // If source is empty but previous has chunks, preserve previous + if (fromSource.length > 0) { + return fromSource; + } + return fromPrevious; +}; + +const isOverviewChunk = (chunk: DocumentationChunk): boolean => + chunk.location === "header" && + chunk.position === "before" && + chunk.type === "markdown" && + chunk.content.trim().toLowerCase().startsWith("## overview"); + +const getPreviousOverview = (toolkit?: MergedToolkit): string | null => { + if (!toolkit) { + return null; + } + const overviewChunk = toolkit.documentationChunks.find(isOverviewChunk); + return overviewChunk?.content ?? null; +}; + +const applyOverviewChunk = ( + chunks: DocumentationChunk[], + chunk: DocumentationChunk +): DocumentationChunk[] => { + const filtered = chunks.filter((item) => !isOverviewChunk(item)); + return [chunk, ...filtered]; +}; + +const shouldAttemptOverview = ( + hasInstructions: boolean, + isNewToolkit: boolean +): boolean => hasInstructions || isNewToolkit; + +const buildOverviewInput = ( + toolkit: MergedToolkit, + instructions: ToolkitOverviewInstructions | null, + previousOverview: string | null, + mode: OverviewGenerationInput["mode"] +): OverviewGenerationInput => ({ + toolkit, + instructions, + previousOverview, + mode, +}); + +const mergeCustomSectionsArrays = ( + fromSource: readonly T[] | undefined, + fromPrevious: readonly T[] | undefined +): T[] => { + const sourceItems = fromSource ?? []; + const previousItems = fromPrevious ?? []; + + // If source has items, use source (it's the authoritative source) + // If source is empty but previous has items, preserve previous + if (sourceItems.length > 0) { + return [...sourceItems]; + } + return [...previousItems]; +}; + +const appendMergeWarnings = ( + warnings: string[], + toolkitId: string, + tools: readonly ToolDefinition[], + metadata: ToolkitMetadata | null +): void => { + if (tools.length === 0) { + warnings.push(`No tools found for toolkit: ${toolkitId}`); + } + + if (!metadata) { + warnings.push( + `No metadata found for toolkit: ${toolkitId} - using defaults` + ); + } +}; + +const getToolkitVersion = (tools: readonly ToolDefinition[]): string => { + const firstTool = tools[0]; + return firstTool ? extractVersion(firstTool.fullyQualifiedName) : "0.0.0"; +}; + +const getToolkitDescription = ( + tools: readonly ToolDefinition[] +): string | null => { + const firstTool = tools[0]; + return firstTool?.toolkitDescription ?? firstTool?.description ?? null; +}; + +const buildToolkitAuth = ( + tools: readonly ToolDefinition[] +): MergedToolkitAuth | null => { + const authType = determineAuthType(tools); + if (authType === "none") { + return null; + } + + return { + type: authType, + providerId: getProviderId(tools), + allScopes: computeAllScopes(tools), + }; +}; + +const buildPreviousToolMap = ( + toolkit?: MergedToolkit +): Map => { + const previousToolByQualifiedName = new Map(); + if (!toolkit) { + return previousToolByQualifiedName; + } + + for (const tool of toolkit.tools) { + previousToolByQualifiedName.set(tool.qualifiedName, tool); + } + return previousToolByQualifiedName; +}; + +const buildMergedTools = async (options: { + tools: readonly ToolDefinition[]; + toolChunks: { [key: string]: DocumentationChunk[] }; + toolExampleGenerator: ToolExampleGenerator | undefined; + warnings: string[]; + failedTools: FailedTool[]; + previousToolByQualifiedName: ReadonlyMap; + llmConcurrency: number; +}): Promise => + mapWithConcurrency( + options.tools, + (tool) => + transformTool( + tool, + options.toolChunks, + options.toolExampleGenerator, + options.warnings, + options.failedTools, + options.previousToolByQualifiedName.get(tool.qualifiedName) + ), + options.llmConcurrency + ); + +const buildMergedToolkit = (options: { + toolkitId: string; + metadata: ToolkitMetadata | null; + version: string; + description: string | null; + auth: MergedToolkitAuth | null; + tools: MergedTool[]; + customSections: CustomSections | null; + previousToolkit: MergedToolkit | undefined; +}): MergedToolkit => { + const mergedMetadata = applyToolkitTypeOverrides( + options.toolkitId, + options.metadata + ? transformMetadata(options.metadata) + : getDefaultMetadata(options.toolkitId) + ); + + return { + id: options.toolkitId, + label: options.metadata?.label ?? options.toolkitId, + version: options.version, + description: options.description, + metadata: mergedMetadata, + auth: options.auth, + tools: options.tools, + documentationChunks: mergeCustomSectionsArrays( + options.customSections?.documentationChunks, + options.previousToolkit?.documentationChunks + ), + customImports: mergeCustomSectionsArrays( + options.customSections?.customImports, + options.previousToolkit?.customImports + ), + subPages: mergeCustomSectionsArrays( + options.customSections?.subPages, + options.previousToolkit?.subPages + ), + generatedAt: new Date().toISOString(), + }; +}; + +const applyOverviewIfNeeded = async (options: { + toolkit: MergedToolkit; + toolkitId: string; + mergeOptions: MergeToolkitOptions; + warnings: string[]; +}): Promise => { + const { toolkit, toolkitId, mergeOptions, warnings } = options; + const isNewToolkit = !mergeOptions.previousToolkit; + const hasInstructions = Boolean(mergeOptions.overviewInstructions); + + if ( + mergeOptions.skipOverview || + !shouldAttemptOverview(hasInstructions, isNewToolkit) + ) { + return; + } + + if (!mergeOptions.overviewGenerator) { + if (hasInstructions) { + warnings.push( + `Overview generation skipped for ${toolkitId}: missing LLM configuration` + ); + } + return; + } + + const previousOverview = getPreviousOverview(mergeOptions.previousToolkit); + const mode: OverviewGenerationInput["mode"] = hasInstructions + ? "file" + : "auto"; + try { + const overviewResult = await mergeOptions.overviewGenerator.generate( + buildOverviewInput( + toolkit, + mergeOptions.overviewInstructions ?? null, + previousOverview, + mode + ) + ); + if (overviewResult?.chunk) { + toolkit.documentationChunks = applyOverviewChunk( + toolkit.documentationChunks, + overviewResult.chunk + ); + return; + } + if (hasInstructions) { + warnings.push( + `Overview generation skipped for ${toolkitId}: no overview produced` + ); + } + } catch (error) { + const message = error instanceof Error ? error.message : String(error); + warnings.push(`Overview generation failed for ${toolkitId}: ${message}`); + } +}; + +/** + * Transform a tool definition into a merged tool + */ +const transformTool = async ( + tool: ToolDefinition, + toolChunks: { [key: string]: DocumentationChunk[] }, + toolExampleGenerator: ToolExampleGenerator | undefined, + warnings: string[], + failedTools: FailedTool[], + previousTool?: MergedTool +): Promise => { + const documentationChunks = getToolDocumentationChunks( + tool.name, + toolChunks, + previousTool + ); + + if (previousTool && shouldReuseExample(tool, previousTool)) { + return { + name: tool.name, + qualifiedName: tool.qualifiedName, + fullyQualifiedName: tool.fullyQualifiedName, + description: tool.description, + parameters: tool.parameters, + auth: tool.auth, + secrets: tool.secrets, + secretsInfo: previousTool.secretsInfo ?? [], + output: tool.output, + documentationChunks, + codeExample: previousTool.codeExample, + }; + } + + if (!toolExampleGenerator) { + return { + name: tool.name, + qualifiedName: tool.qualifiedName, + fullyQualifiedName: tool.fullyQualifiedName, + description: tool.description, + parameters: tool.parameters, + auth: tool.auth, + secrets: tool.secrets, + secretsInfo: [], + output: tool.output, + documentationChunks, + }; + } + + try { + const exampleResult = await toolExampleGenerator.generate(tool); + + return { + name: tool.name, + qualifiedName: tool.qualifiedName, + fullyQualifiedName: tool.fullyQualifiedName, + description: tool.description, + parameters: tool.parameters, + auth: tool.auth, + secrets: tool.secrets, + secretsInfo: exampleResult.secretsInfo, + output: tool.output, + documentationChunks, + codeExample: exampleResult.codeExample, + }; + } catch (error) { + const message = error instanceof Error ? error.message : String(error); + warnings.push( + `Example generation failed for ${tool.qualifiedName}: ${message}` + ); + failedTools.push({ + toolkitId: tool.qualifiedName.split(".")[0] ?? tool.qualifiedName, + toolName: tool.name, + qualifiedName: tool.qualifiedName, + reason: message, + }); + + return { + name: tool.name, + qualifiedName: tool.qualifiedName, + fullyQualifiedName: tool.fullyQualifiedName, + description: tool.description, + parameters: tool.parameters, + auth: tool.auth, + secrets: tool.secrets, + secretsInfo: previousTool?.secretsInfo ?? [], + output: tool.output, + documentationChunks, + }; + } +}; + +// ============================================================================ +// Main Merger Function +// ============================================================================ + +/** + * Merge data from all sources for a single toolkit + */ +export const mergeToolkit = async ( + toolkitId: string, + tools: readonly ToolDefinition[], + metadata: ToolkitMetadata | null, + customSections: CustomSections | null, + toolExampleGenerator: ToolExampleGenerator | undefined, + options: MergeToolkitOptions = {} +): Promise => { + const warnings: string[] = []; + const failedTools: FailedTool[] = []; + + appendMergeWarnings(warnings, toolkitId, tools, metadata); + + const version = getToolkitVersion(tools); + + const description = getToolkitDescription(tools); + + const auth = buildToolkitAuth(tools); + + const toolChunks = (customSections?.toolChunks ?? {}) as { + [key: string]: DocumentationChunk[]; + }; + const llmConcurrency = options.llmConcurrency ?? 5; + const previousToolByQualifiedName = buildPreviousToolMap( + options.previousToolkit + ); + const mergedTools = await buildMergedTools({ + tools, + toolChunks, + toolExampleGenerator, + warnings, + failedTools, + previousToolByQualifiedName, + llmConcurrency, + }); + + const toolkit = buildMergedToolkit({ + toolkitId, + metadata, + version, + description, + auth, + tools: mergedTools, + customSections, + previousToolkit: options.previousToolkit, + }); + + await applyOverviewIfNeeded({ + toolkit, + toolkitId, + mergeOptions: options, + warnings, + }); + + return { toolkit, warnings, failedTools }; +}; + +// ============================================================================ +// Data Merger Class +// ============================================================================ + +/** + * Data merger that combines all sources + */ +export class DataMerger { + private readonly toolkitDataSource: IToolkitDataSource; + private readonly customSectionsSource: ICustomSectionsSource; + private readonly overviewInstructionsSource: IOverviewInstructionsSource; + private readonly overviewGenerator: ToolkitOverviewGenerator | undefined; + private readonly skipOverview: boolean; + private readonly toolExampleGenerator: ToolExampleGenerator | undefined; + private readonly toolkitSummaryGenerator: ToolkitSummaryGenerator | undefined; + private readonly previousToolkits: + | ReadonlyMap + | undefined; + private readonly llmConcurrency: number; + private readonly toolkitConcurrency: number; + private readonly onToolkitProgress: + | (( + toolkitId: string, + status: "start" | "done", + toolCount?: number + ) => void) + | undefined; + private readonly onToolkitComplete: + | ((result: MergeResult) => Promise) + | undefined; + private readonly skipToolkitIds: ReadonlySet; + + constructor(config: DataMergerConfig) { + this.toolkitDataSource = config.toolkitDataSource; + this.customSectionsSource = config.customSectionsSource; + this.overviewInstructionsSource = + config.overviewInstructionsSource ?? + createEmptyOverviewInstructionsSource(); + this.overviewGenerator = config.overviewGenerator; + this.skipOverview = config.skipOverview ?? false; + this.toolExampleGenerator = config.toolExampleGenerator; + this.toolkitSummaryGenerator = config.toolkitSummaryGenerator; + this.previousToolkits = config.previousToolkits; + this.llmConcurrency = config.llmConcurrency ?? 5; + this.toolkitConcurrency = config.toolkitConcurrency ?? 3; + this.onToolkitProgress = config.onToolkitProgress; + this.onToolkitComplete = config.onToolkitComplete; + this.skipToolkitIds = config.skipToolkitIds ?? new Set(); + } + + private getPreviousToolkit(toolkitId: string): MergedToolkit | undefined { + if (!this.previousToolkits) { + return; + } + + return ( + this.previousToolkits.get(toolkitId.toLowerCase()) ?? + this.previousToolkits.get(toolkitId) + ); + } + + private async maybeGenerateSummary( + result: MergeResult, + previousToolkit?: MergedToolkit + ): Promise { + if (previousToolkit?.summary) { + const currentSignature = buildToolkitSummarySignature(result.toolkit); + const previousSignature = buildToolkitSummarySignature(previousToolkit); + if (currentSignature === previousSignature) { + result.toolkit.summary = previousToolkit.summary; + return; + } + } + + if (!this.toolkitSummaryGenerator) { + return; + } + + if (result.toolkit.summary) { + return; + } + + try { + const summary = await this.toolkitSummaryGenerator.generate( + result.toolkit + ); + result.toolkit.summary = summary; + } catch (error) { + const message = error instanceof Error ? error.message : String(error); + result.warnings.push( + `Summary generation failed for ${result.toolkit.id}: ${message}` + ); + } + } + + /** + * Merge data for a single toolkit + */ + async mergeToolkit( + toolkitId: string, + version?: string + ): Promise { + const toolkitData = await this.toolkitDataSource.fetchToolkitData( + toolkitId, + version + ); + + // Fetch custom sections + const customSections = + await this.customSectionsSource.getCustomSections(toolkitId); + const overviewInstructions = + await this.overviewInstructionsSource.getOverviewInstructions(toolkitId); + + const previousToolkit = this.getPreviousToolkit(toolkitId); + const result = await mergeToolkit( + toolkitId, + toolkitData.tools, + toolkitData.metadata, + customSections, + this.toolExampleGenerator, + { + ...(previousToolkit ? { previousToolkit } : {}), + llmConcurrency: this.llmConcurrency, + overviewGenerator: this.overviewGenerator, + overviewInstructions, + skipOverview: this.skipOverview, + } + ); + await this.maybeGenerateSummary(result, previousToolkit); + + return result; + } + + /** + * Merge data for all toolkits + */ + async mergeAllToolkits(): Promise { + const allToolkitsData = await this.toolkitDataSource.fetchAllToolkitsData(); + + const toolkitEntries = Array.from(allToolkitsData.entries()); + + // Filter out toolkits that should be skipped (for resume support) + const filteredEntries = toolkitEntries.filter( + ([toolkitId]) => !this.skipToolkitIds.has(toolkitId.toLowerCase()) + ); + + const results = await mapWithConcurrency( + filteredEntries, + async ([toolkitId, toolkitData]) => { + this.onToolkitProgress?.(toolkitId, "start"); + + try { + const customSections = + await this.customSectionsSource.getCustomSections(toolkitId); + const overviewInstructions = + await this.overviewInstructionsSource.getOverviewInstructions( + toolkitId + ); + + const previousToolkit = this.getPreviousToolkit(toolkitId); + const result = await mergeToolkit( + toolkitId, + toolkitData.tools, + toolkitData.metadata, + customSections, + this.toolExampleGenerator, + { + ...(previousToolkit ? { previousToolkit } : {}), + llmConcurrency: this.llmConcurrency, + overviewGenerator: this.overviewGenerator, + overviewInstructions, + skipOverview: this.skipOverview, + } + ); + await this.maybeGenerateSummary(result, previousToolkit); + + // Write immediately if callback provided (incremental mode) + if (this.onToolkitComplete) { + await this.onToolkitComplete(result); + } + + this.onToolkitProgress?.( + toolkitId, + "done", + result.toolkit.tools.length + ); + + return result; + } catch (error) { + // Report error but don't stop processing other toolkits + const message = + error instanceof Error ? error.message : String(error); + const errorResult: MergeResult = { + toolkit: { + id: toolkitId, + label: toolkitId, + version: "0.0.0", + description: null, + metadata: { + category: "development", + iconUrl: "", + isBYOC: false, + isPro: false, + type: isStarterToolkitId(toolkitId) + ? "arcade_starter" + : "arcade", + docsLink: "", + isComingSoon: false, + isHidden: false, + }, + auth: null, + tools: [], + documentationChunks: [], + customImports: [], + subPages: [], + generatedAt: new Date().toISOString(), + }, + warnings: [`Error processing toolkit: ${message}`], + failedTools: [], + }; + + this.onToolkitProgress?.(toolkitId, "done", 0); + + return errorResult; + } + }, + this.toolkitConcurrency + ); + + return results; + } + + /** + * Get the count of toolkits that will be processed (excluding skipped ones) + */ + async getToolkitCount(): Promise<{ + total: number; + toProcess: number; + skipped: number; + }> { + const allToolkitsData = await this.toolkitDataSource.fetchAllToolkitsData(); + const total = allToolkitsData.size; + const skipped = Array.from(allToolkitsData.keys()).filter((id) => + this.skipToolkitIds.has(id.toLowerCase()) + ).length; + return { + total, + toProcess: total - skipped, + skipped, + }; + } +} + +// ============================================================================ +// Factory +// ============================================================================ + +export const createDataMerger = (config: DataMergerConfig): DataMerger => + new DataMerger(config); diff --git a/toolkit-docs-generator/src/merger/index.ts b/toolkit-docs-generator/src/merger/index.ts new file mode 100644 index 000000000..86f15c8fe --- /dev/null +++ b/toolkit-docs-generator/src/merger/index.ts @@ -0,0 +1,4 @@ +/** + * Merger module exports + */ +export * from "./data-merger.js"; diff --git a/toolkit-docs-generator/src/overview/types.ts b/toolkit-docs-generator/src/overview/types.ts new file mode 100644 index 000000000..5bf1ec669 --- /dev/null +++ b/toolkit-docs-generator/src/overview/types.ts @@ -0,0 +1,28 @@ +import type { DocumentationChunk, MergedToolkit } from "../types/index.js"; + +export type ToolkitOverviewInstructions = { + readonly toolkitId: string; + readonly label?: string; + readonly sources?: readonly string[]; + readonly instructions?: string; +}; + +export type OverviewGenerationMode = "file" | "auto"; + +export type OverviewGenerationInput = { + readonly toolkit: MergedToolkit; + readonly instructions?: ToolkitOverviewInstructions | null; + readonly previousOverview?: string | null; + readonly mode: OverviewGenerationMode; +}; + +export type OverviewGenerationResult = { + readonly chunk: DocumentationChunk; + readonly reason?: string; +}; + +export interface ToolkitOverviewGenerator { + generate: ( + input: OverviewGenerationInput + ) => Promise; +} diff --git a/toolkit-docs-generator/src/sources/arcade-api-types.ts b/toolkit-docs-generator/src/sources/arcade-api-types.ts new file mode 100644 index 000000000..6d56c56f4 --- /dev/null +++ b/toolkit-docs-generator/src/sources/arcade-api-types.ts @@ -0,0 +1,182 @@ +/** + * Type definitions for the Arcade Production API (/v1/tools endpoint) + * + * This API has a different response schema from the Engine API's /v1/tool_metadata endpoint. + */ + +import { z } from "zod"; + +// ============================================================================ +// Arcade API Response Types +// ============================================================================ + +/** + * Value schema for parameters + */ +export const ArcadeValueSchemaSchema = z.object({ + val_type: z.string(), + inner_val_type: z.string().nullish(), + enum: z.array(z.string()).nullish(), +}); + +export type ArcadeValueSchema = z.infer; + +/** + * Tool parameter from Arcade API + */ +export const ArcadeParameterSchema = z.object({ + name: z.string(), + required: z.boolean(), + description: z.string().nullish(), + value_schema: ArcadeValueSchemaSchema.nullish(), + inferrable: z.boolean().nullish(), +}); + +export type ArcadeParameter = z.infer; + +/** + * Tool input from Arcade API + */ +export const ArcadeInputSchema = z.object({ + parameters: z.array(ArcadeParameterSchema).nullish(), +}); + +export type ArcadeInput = z.infer; + +/** + * Tool output from Arcade API + */ +export const ArcadeOutputSchema = z.object({ + available_modes: z.array(z.string()).nullish(), + description: z.string().nullish(), + value_schema: ArcadeValueSchemaSchema.nullish(), +}); + +export type ArcadeOutput = z.infer; + +/** + * OAuth2 requirements + */ +export const ArcadeOAuth2Schema = z.object({ + scopes: z.array(z.string()).nullish(), +}); + +export type ArcadeOAuth2 = z.infer; + +/** + * Authorization requirements + */ +export const ArcadeAuthorizationSchema = z.object({ + id: z.string().nullish(), + provider_id: z.string().nullish(), + provider_type: z.string().nullish(), + oauth2: ArcadeOAuth2Schema.nullish(), + status: z.string().nullish(), + status_reason: z.string().nullish(), + token_status: z.string().nullish(), +}); + +export type ArcadeAuthorization = z.infer; + +/** + * Secret requirement + */ +export const ArcadeSecretSchema = z.object({ + key: z.string(), + met: z.boolean().nullish(), + status_reason: z.string().nullish(), +}); + +export type ArcadeSecret = z.infer; + +/** + * Tool requirements + */ +export const ArcadeRequirementsSchema = z.object({ + met: z.boolean().nullish(), + authorization: ArcadeAuthorizationSchema.nullish(), + secrets: z.array(ArcadeSecretSchema).nullish(), +}); + +export type ArcadeRequirements = z.infer; + +/** + * Toolkit info embedded in tool response + */ +export const ArcadeToolkitInfoSchema = z.object({ + name: z.string(), + description: z.string().nullish(), + version: z.string().nullish(), +}); + +export type ArcadeToolkitInfo = z.infer; + +/** + * Single tool from Arcade API + */ +export const ArcadeToolSchema = z.object({ + fully_qualified_name: z.string(), + qualified_name: z.string(), + name: z.string(), + description: z.string().nullish(), + toolkit: ArcadeToolkitInfoSchema, + input: ArcadeInputSchema.nullish(), + output: ArcadeOutputSchema.nullish(), + requirements: ArcadeRequirementsSchema.nullish(), +}); + +export type ArcadeTool = z.infer; + +/** + * Paginated response from /v1/tools + */ +export const ArcadeToolsResponseSchema = z.object({ + items: z.array(ArcadeToolSchema), + limit: z.number(), + offset: z.number(), + page_count: z.number().optional(), + total_count: z.number(), +}); + +export type ArcadeToolsResponse = z.infer; + +/** + * Error response from Arcade API + */ +export const ArcadeErrorResponseSchema = z.object({ + detail: z.string().optional(), + message: z.string().optional(), + error: z.string().optional(), +}); + +export type ArcadeErrorResponse = z.infer; + +// ============================================================================ +// Parse Functions +// ============================================================================ + +/** + * Parse Arcade API tools response + */ +export const parseArcadeToolsResponse = ( + payload: unknown +): ArcadeToolsResponse => { + const result = ArcadeToolsResponseSchema.safeParse(payload); + if (!result.success) { + throw new Error(`Invalid Arcade API response: ${result.error.message}`); + } + return result.data; +}; + +/** + * Parse Arcade API error response + */ +export const parseArcadeErrorResponse = ( + payload: unknown +): ArcadeErrorResponse | null => { + const result = ArcadeErrorResponseSchema.safeParse(payload); + if (!result.success) { + return null; + } + return result.data; +}; diff --git a/toolkit-docs-generator/src/sources/arcade-api.ts b/toolkit-docs-generator/src/sources/arcade-api.ts new file mode 100644 index 000000000..3d4d2c64f --- /dev/null +++ b/toolkit-docs-generator/src/sources/arcade-api.ts @@ -0,0 +1,343 @@ +/** + * Arcade Production API Source + * + * Fetches tool data from the Arcade production API endpoint: /v1/tools + * This endpoint has a different schema from the Engine API's /v1/tool_metadata. + */ + +import type { + ToolAuth, + ToolDefinition, + ToolOutput, + ToolParameter, +} from "../types/index.js"; +import { + type ArcadeTool, + parseArcadeErrorResponse, + parseArcadeToolsResponse, +} from "./arcade-api-types.js"; +import type { FetchOptions, IToolDataSource } from "./internal.js"; + +// ============================================================================ +// Configuration +// ============================================================================ + +export interface ArcadeApiSourceConfig { + /** Base URL for Arcade API (e.g., https://api.arcade.dev) */ + readonly baseUrl: string; + /** Arcade API key (Bearer token) */ + readonly apiKey: string; + /** Optional fetch implementation for testing */ + readonly fetchFn?: typeof fetch; + /** Page size for pagination (default: 100, max: 100) */ + readonly pageSize?: number; + /** Optional progress callback for pagination */ + readonly onProgress?: ((fetched: number, total: number) => void) | undefined; +} + +// ============================================================================ +// Constants +// ============================================================================ + +const DEFAULT_PAGE_SIZE = 1000; +const MAX_PAGE_SIZE = 1000; +const DEFAULT_BASE_URL = "https://api.arcade.dev"; + +// ============================================================================ +// Utility Functions +// ============================================================================ + +const normalizePageSize = (value?: number): number => { + if (!value || Number.isNaN(value) || value <= 0) { + return DEFAULT_PAGE_SIZE; + } + return Math.min(value, MAX_PAGE_SIZE); +}; + +const normalizeBaseUrl = (baseUrl: string): string => + baseUrl.replace(/\/+$/, ""); + +const buildEndpointUrl = (baseUrl: string): string => { + const normalized = normalizeBaseUrl(baseUrl); + if (normalized.endsWith("/v1")) { + return `${normalized}/tools`; + } + return `${normalized}/v1/tools`; +}; + +// ============================================================================ +// Response Transformation +// ============================================================================ + +/** + * Map Arcade API value type to internal type string + */ +const mapValueType = (valType: string | undefined): string => { + if (!valType) return "string"; + + const typeMap: Record = { + string: "string", + integer: "integer", + number: "number", + boolean: "boolean", + array: "array", + object: "object", + json: "json", + }; + + return typeMap[valType.toLowerCase()] ?? valType; +}; + +/** + * Transform Arcade API tool to internal ToolDefinition format + */ +const transformArcadeTool = (arcadeTool: ArcadeTool): ToolDefinition => { + // Transform parameters - handle null/undefined parameters array + const rawParams = arcadeTool.input?.parameters; + const parameters: ToolParameter[] = (rawParams ?? []).map((param) => ({ + name: param.name, + type: mapValueType(param.value_schema?.val_type), + innerType: param.value_schema?.inner_val_type ?? undefined, + required: param.required, + description: param.description ?? null, + enum: param.value_schema?.enum ?? null, + inferrable: param.inferrable ?? true, + })); + + // Transform auth - handle null/undefined authorization + let auth: ToolAuth | null = null; + const authReq = arcadeTool.requirements?.authorization; + if (authReq?.provider_type) { + auth = { + providerId: authReq.provider_id ?? null, + providerType: authReq.provider_type, + scopes: authReq.oauth2?.scopes ?? [], + }; + } + + // Transform secrets - handle null/undefined secrets array + const rawSecrets = arcadeTool.requirements?.secrets; + const secrets: string[] = (rawSecrets ?? []).map((s) => s.key); + + // Transform output - handle null/undefined output + let output: ToolOutput | null = null; + if (arcadeTool.output) { + output = { + type: mapValueType(arcadeTool.output.value_schema?.val_type), + description: arcadeTool.output.description ?? null, + }; + } + + return { + name: arcadeTool.name, + qualifiedName: arcadeTool.qualified_name, + fullyQualifiedName: arcadeTool.fully_qualified_name, + description: arcadeTool.description ?? null, + toolkitDescription: arcadeTool.toolkit.description ?? null, + parameters, + auth, + secrets, + output, + }; +}; + +/** + * Extract toolkit ID from qualified name (e.g., "GoogleCalendar.CreateEvent" -> "GoogleCalendar") + */ +const extractToolkitId = (qualifiedName: string): string => { + const parts = qualifiedName.split("."); + return parts[0] ?? qualifiedName; +}; + +// ============================================================================ +// Arcade API Source Implementation +// ============================================================================ + +export class ArcadeApiSource implements IToolDataSource { + private readonly endpoint: string; + private readonly apiKey: string; + private readonly fetchFn: typeof fetch; + private readonly pageSize: number; + private readonly onProgress: + | ((fetched: number, total: number) => void) + | undefined; + + constructor(config: ArcadeApiSourceConfig) { + this.endpoint = buildEndpointUrl(config.baseUrl); + this.apiKey = config.apiKey; + this.fetchFn = config.fetchFn ?? fetch; + this.pageSize = normalizePageSize(config.pageSize); + this.onProgress = config.onProgress; + } + + /** + * Fetch a single page of tools from the API + */ + private async fetchPage( + _options: FetchOptions | undefined, + offset: number + ): Promise<{ items: ToolDefinition[]; totalCount: number }> { + const url = new URL(this.endpoint); + url.searchParams.set("limit", String(this.pageSize)); + url.searchParams.set("offset", String(offset)); + + // Note: The Arcade API /v1/tools endpoint does not support server-side toolkit filtering. + // All filtering is done client-side in fetchAllTools(). + + const response = await this.fetchFn(url.toString(), { + headers: { + Authorization: `Bearer ${this.apiKey}`, + Accept: "application/json", + }, + }); + + if (!response.ok) { + const errorDetail = await this.getErrorDetail(response); + throw new Error( + `Arcade API error ${response.status}: ${errorDetail ?? response.statusText}` + ); + } + + const payload = (await response.json()) as unknown; + const parsed = parseArcadeToolsResponse(payload); + + // Transform Arcade tools to internal format + const items = parsed.items.map(transformArcadeTool); + + return { + items, + totalCount: parsed.total_count, + }; + } + + /** + * Fetch all tools, handling pagination + */ + async fetchAllTools( + options?: FetchOptions + ): Promise { + const allTools: ToolDefinition[] = []; + let offset = 0; + let totalCount = 0; + + while (true) { + const page = await this.fetchPage(options, offset); + + if (offset === 0) { + totalCount = page.totalCount; + this.onProgress?.(0, totalCount); + } + + allTools.push(...page.items); + + // Report progress + this.onProgress?.(allTools.length, totalCount); + + if (page.items.length === 0) { + break; + } + + offset += page.items.length; + + if (offset >= totalCount) { + break; + } + } + + // Client-side filtering by toolkit if specified + if (options?.toolkitId) { + const toolkitIdLower = options.toolkitId.toLowerCase(); + return allTools.filter((tool) => { + const toolToolkitId = extractToolkitId(tool.qualifiedName); + return toolToolkitId.toLowerCase() === toolkitIdLower; + }); + } + + // Client-side filtering by version if specified + if (options?.version) { + return allTools.filter((tool) => { + // fullyQualifiedName format: "Toolkit.Tool@version" + return tool.fullyQualifiedName.endsWith(`@${options.version}`); + }); + } + + return allTools; + } + + /** + * Fetch tools for a specific toolkit + */ + async fetchToolsByToolkit( + toolkitId: string + ): Promise { + return this.fetchAllTools({ toolkitId }); + } + + /** + * Check if the API is available + */ + async isAvailable(): Promise { + try { + const url = new URL(this.endpoint); + url.searchParams.set("limit", "1"); + url.searchParams.set("offset", "0"); + + const response = await this.fetchFn(url.toString(), { + headers: { + Authorization: `Bearer ${this.apiKey}`, + Accept: "application/json", + }, + }); + + return response.ok; + } catch { + return false; + } + } + + /** + * Extract error detail from API response + */ + private async getErrorDetail(response: Response): Promise { + const contentType = response.headers.get("content-type") ?? ""; + if (!contentType.includes("application/json")) { + return null; + } + + try { + const payload = (await response.json()) as unknown; + const parsed = parseArcadeErrorResponse(payload); + if (parsed) { + return parsed.detail ?? parsed.message ?? parsed.error ?? null; + } + } catch { + return null; + } + + return null; + } +} + +// ============================================================================ +// Factory Function +// ============================================================================ + +/** + * Create an Arcade API source + */ +export const createArcadeApiSource = ( + config: ArcadeApiSourceConfig +): IToolDataSource => new ArcadeApiSource(config); + +/** + * Create an Arcade API source with default production URL + */ +export const createProductionArcadeApiSource = ( + apiKey: string, + options?: Partial> +): IToolDataSource => + new ArcadeApiSource({ + baseUrl: DEFAULT_BASE_URL, + apiKey, + ...options, + }); diff --git a/toolkit-docs-generator/src/sources/custom-sections-file.ts b/toolkit-docs-generator/src/sources/custom-sections-file.ts new file mode 100644 index 000000000..636b195ad --- /dev/null +++ b/toolkit-docs-generator/src/sources/custom-sections-file.ts @@ -0,0 +1,126 @@ +/** + * Custom Sections File Source + * + * Loads custom documentation sections from a JSON file. + * This file is produced by the one-time MDX extraction script. + */ +import { access, readFile } from "fs/promises"; +import { z } from "zod"; +import type { CustomSections } from "../types/index.js"; +import { DocumentationChunkSchema } from "../types/index.js"; +import { normalizeId } from "../utils/fp.js"; +import type { ICustomSectionsSource } from "./interfaces.js"; + +// ============================================================================ +// File Schema +// ============================================================================ + +const CustomSectionsFileSchema = z.record( + z.string(), + z.object({ + documentationChunks: z.array(DocumentationChunkSchema).default([]), + customImports: z.array(z.string()).default([]), + subPages: z.array(z.string()).default([]), + toolChunks: z + .record(z.string(), z.array(DocumentationChunkSchema)) + .default({}), + }) +); + +type CustomSectionsFile = z.infer; + +// ============================================================================ +// Custom Sections File Source +// ============================================================================ + +export interface CustomSectionsFileConfig { + filePath: string; +} + +const parseCustomSectionsFile = ( + content: string, + filePath: string +): CustomSectionsFile => { + let parsedJson: unknown; + try { + parsedJson = JSON.parse(content) as unknown; + } catch (error) { + const message = error instanceof Error ? error.message : String(error); + throw new Error( + `Custom sections file is not valid JSON (${filePath}): ${message}` + ); + } + + const parsed = CustomSectionsFileSchema.safeParse(parsedJson); + if (!parsed.success) { + throw new Error( + `Custom sections file has invalid schema (${filePath}): ${parsed.error.message}` + ); + } + + return parsed.data; +}; + +/** + * Source that loads custom documentation sections from a JSON file + */ +export class CustomSectionsFileSource implements ICustomSectionsSource { + private readonly filePath: string; + private cachedData: CustomSectionsFile | null = null; + + constructor(config: CustomSectionsFileConfig) { + this.filePath = config.filePath; + } + + private async loadFile(): Promise { + if (this.cachedData !== null) { + return this.cachedData; + } + + try { + await access(this.filePath); + const content = await readFile(this.filePath, "utf-8"); + this.cachedData = parseCustomSectionsFile(content, this.filePath); + return this.cachedData; + } catch (error) { + if ((error as NodeJS.ErrnoException).code === "ENOENT") { + // File doesn't exist - return empty data + this.cachedData = {}; + return this.cachedData; + } + throw error; + } + } + + async getCustomSections(toolkitId: string): Promise { + const data = await this.loadFile(); + + // Try exact match + if (data[toolkitId]) { + return data[toolkitId]; + } + + // Try normalized match + const normalizedId = normalizeId(toolkitId); + const entry = Object.entries(data).find( + ([key]) => normalizeId(key) === normalizedId + ); + + return entry ? entry[1] : null; + } + + async getAllCustomSections(): Promise< + Readonly> + > { + const data = await this.loadFile(); + return data; + } +} + +// ============================================================================ +// Factory +// ============================================================================ + +export const createCustomSectionsFileSource = ( + filePath: string +): ICustomSectionsSource => new CustomSectionsFileSource({ filePath }); diff --git a/toolkit-docs-generator/src/sources/design-system-metadata.ts b/toolkit-docs-generator/src/sources/design-system-metadata.ts new file mode 100644 index 000000000..03b50582b --- /dev/null +++ b/toolkit-docs-generator/src/sources/design-system-metadata.ts @@ -0,0 +1,149 @@ +/** + * Design System Metadata Source + * + * Loads toolkit metadata from @arcadeai/design-system (TOOLKITS). + * + * This is the preferred metadata source when running the generator inside the + * Arcade docs repo. + */ +import { z } from "zod"; +import type { ToolkitMetadata } from "../types/index.js"; +import { ToolkitMetadataSchema } from "../types/index.js"; +import type { IMetadataSource } from "./internal.js"; + +// ============================================================================ +// Types +// ============================================================================ + +// Keep this intentionally loose: the design system can evolve without breaking +// compilation here. We validate after mapping. +const DesignSystemToolkitSchema = z.object({ + id: z.string(), + label: z.string(), + category: z.string(), + type: z.string(), + docsLink: z.string(), + publicIconUrl: z.string().optional(), + iconUrl: z.string().optional(), + isBYOC: z.boolean(), + isPro: z.boolean(), + isComingSoon: z.boolean(), + isHidden: z.boolean(), +}); + +type DesignSystemToolkit = z.infer; + +// ============================================================================ +// Helpers +// ============================================================================ + +const LOOKUP_KEY_REGEX = /[^a-z0-9]/g; + +function normalizeLookupKey(value: string): string { + return value.toLowerCase().replace(LOOKUP_KEY_REGEX, ""); +} + +function toToolkitMetadata(entry: DesignSystemToolkit): ToolkitMetadata | null { + const iconUrl = entry.publicIconUrl ?? entry.iconUrl; + if (!iconUrl) return null; + + const parsed = ToolkitMetadataSchema.safeParse({ + id: entry.id, + label: entry.label, + category: entry.category, + iconUrl, + isBYOC: entry.isBYOC, + isPro: entry.isPro, + type: entry.type, + docsLink: entry.docsLink, + isComingSoon: entry.isComingSoon, + isHidden: entry.isHidden, + }); + + return parsed.success ? parsed.data : null; +} + +function withApiSuffix(label: string): string { + // If it already ends with API, keep as-is. + if (/\bapi$/i.test(label.trim())) return label; + return `${label} API`; +} + +// ============================================================================ +// Source +// ============================================================================ + +export class DesignSystemMetadataSource implements IMetadataSource { + private readonly toolkits: readonly ToolkitMetadata[]; + private readonly indexByIdOrLabel: Map; + + constructor(toolkits: readonly ToolkitMetadata[]) { + this.toolkits = toolkits; + this.indexByIdOrLabel = new Map(); + + for (const toolkit of toolkits) { + this.indexByIdOrLabel.set(normalizeLookupKey(toolkit.id), toolkit); + this.indexByIdOrLabel.set(normalizeLookupKey(toolkit.label), toolkit); + } + } + + async getToolkitMetadata(toolkitId: string): Promise { + const key = normalizeLookupKey(toolkitId); + const direct = this.indexByIdOrLabel.get(key); + if (direct) return direct; + + // Fallback 1: "github-api" / "github_api" style inputs. + // (normalizeLookupKey already strips separators) + + // Fallback 2: If this looks like an API toolkit, try the base provider. + if (key.endsWith("api")) { + const baseKey = key.slice(0, -3); + const base = this.indexByIdOrLabel.get(baseKey); + if (base) { + return { + ...base, + // Keep base icon, but make the label explicit for API variants. + label: withApiSuffix(base.label), + }; + } + } + + return null; + } + + async getAllToolkitsMetadata(): Promise { + return this.toolkits; + } + + async listToolkitIds(): Promise { + return this.toolkits.map((t) => t.id); + } +} + +// ============================================================================ +// Factories +// ============================================================================ + +export function createDesignSystemMetadataSourceFromToolkits( + toolkits: readonly ToolkitMetadata[] +): IMetadataSource { + return new DesignSystemMetadataSource(toolkits); +} + +export async function createDesignSystemMetadataSource(): Promise { + // Use a dynamic import so the generator can still run in contexts where + // @arcadeai/design-system isn't installed. + const designSystem = await import("@arcadeai/design-system"); + const maybeToolkits = (designSystem as { TOOLKITS?: unknown }).TOOLKITS; + const toolkits = Array.isArray(maybeToolkits) ? maybeToolkits : []; + + const parsed: ToolkitMetadata[] = []; + for (const raw of toolkits) { + const dsParsed = DesignSystemToolkitSchema.safeParse(raw); + if (!dsParsed.success) continue; + const mapped = toToolkitMetadata(dsParsed.data); + if (mapped) parsed.push(mapped); + } + + return new DesignSystemMetadataSource(parsed); +} diff --git a/toolkit-docs-generator/src/sources/engine-api.ts b/toolkit-docs-generator/src/sources/engine-api.ts new file mode 100644 index 000000000..d4660f603 --- /dev/null +++ b/toolkit-docs-generator/src/sources/engine-api.ts @@ -0,0 +1,214 @@ +import type { ToolDefinition } from "../types/index.js"; +import type { FetchOptions, IToolDataSource } from "./internal.js"; +import { + parseToolMetadataError, + parseToolMetadataResponse, + parseToolMetadataSummaryResponse, + type ToolMetadataSummary, +} from "./tool-metadata-schema.js"; + +export interface EngineApiSourceConfig { + /** Base URL for Engine (e.g., https://api.arcade.dev) */ + readonly baseUrl: string; + /** Engine API key (Bearer token) */ + readonly apiKey: string; + /** Optional fetch implementation for testing */ + readonly fetchFn?: typeof fetch; + /** Page size for pagination */ + readonly pageSize?: number; + /** Include all versions in results (required for version filtering) */ + readonly includeAllVersions?: boolean; +} + +type ToolMetadataPage = { + items: ToolDefinition[]; + totalCount: number; +}; + +const DEFAULT_PAGE_SIZE = 1000; +const MAX_PAGE_SIZE = 1000; + +const normalizePageSize = (value?: number): number => { + if (!value || Number.isNaN(value) || value <= 0) { + return DEFAULT_PAGE_SIZE; + } + return Math.min(value, MAX_PAGE_SIZE); +}; + +const normalizeBaseUrl = (baseUrl: string): string => + baseUrl.replace(/\/+$/, ""); + +const buildEndpointUrl = (baseUrl: string): string => { + const normalized = normalizeBaseUrl(baseUrl); + if (normalized.endsWith("/v1")) { + return `${normalized}/tool_metadata`; + } + return `${normalized}/v1/tool_metadata`; +}; + +const parseJsonResponse = async ( + response: Response, + context: string +): Promise => { + try { + return await response.json(); + } catch (error) { + const message = error instanceof Error ? error.message : String(error); + throw new Error( + `Engine API returned invalid JSON for ${context}: ${message}` + ); + } +}; + +export class EngineApiSource implements IToolDataSource { + private readonly endpoint: string; + private readonly apiKey: string; + private readonly fetchFn: typeof fetch; + private readonly pageSize: number; + private readonly includeAllVersions: boolean; + + constructor(config: EngineApiSourceConfig) { + this.endpoint = buildEndpointUrl(config.baseUrl); + this.apiKey = config.apiKey; + this.fetchFn = config.fetchFn ?? fetch; + this.pageSize = normalizePageSize(config.pageSize); + this.includeAllVersions = config.includeAllVersions ?? false; + } + + private async fetchPage( + options: FetchOptions | undefined, + offset: number + ): Promise { + const url = new URL(this.endpoint); + url.searchParams.set("limit", String(this.pageSize)); + url.searchParams.set("offset", String(offset)); + const includeAllVersions = options?.version + ? true + : this.includeAllVersions; + if (includeAllVersions) { + url.searchParams.set("include_all_versions", "true"); + } + + if (options?.toolkitId) { + url.searchParams.set("toolkit", options.toolkitId); + } + if (options?.version) { + url.searchParams.set("version", options.version); + } + if (options?.providerId) { + url.searchParams.set("provider_id", options.providerId); + } + + const response = await this.fetchFn(url.toString(), { + headers: { + Authorization: `Bearer ${this.apiKey}`, + Accept: "application/json", + }, + }); + + if (!response.ok) { + const errorDetail = await this.getErrorDetail(response); + throw new Error( + `Engine API error ${response.status}: ${errorDetail ?? response.statusText}` + ); + } + + const payload = await parseJsonResponse(response, "tool metadata"); + const parsed = parseToolMetadataResponse(payload); + return { + items: parsed.items, + totalCount: parsed.totalCount, + }; + } + + private async fetchSummary(): Promise { + const url = new URL(this.endpoint); + url.searchParams.set("mode", "summary"); + + const response = await this.fetchFn(url.toString(), { + headers: { + Authorization: `Bearer ${this.apiKey}`, + Accept: "application/json", + }, + }); + + if (!response.ok) { + const errorDetail = await this.getErrorDetail(response); + throw new Error( + `Engine API error ${response.status}: ${errorDetail ?? response.statusText}` + ); + } + + const payload = await parseJsonResponse(response, "tool metadata summary"); + return parseToolMetadataSummaryResponse(payload); + } + + async fetchToolsByToolkit( + toolkitId: string + ): Promise { + return this.fetchAllTools({ toolkitId }); + } + + async fetchAllTools( + options?: FetchOptions + ): Promise { + const tools: ToolDefinition[] = []; + let offset = 0; + let totalCount = 0; + + while (true) { + const page = await this.fetchPage(options, offset); + if (offset === 0) { + totalCount = page.totalCount; + } + tools.push(...page.items); + + if (page.items.length === 0) { + break; + } + + offset += page.items.length; + if (offset >= totalCount) { + break; + } + } + + return tools; + } + + async fetchToolkitsSummary(): Promise { + return this.fetchSummary(); + } + + async isAvailable(): Promise { + try { + await this.fetchPage(undefined, 0); + return true; + } catch { + return false; + } + } + + private async getErrorDetail(response: Response): Promise { + const contentType = response.headers.get("content-type") ?? ""; + if (!contentType.includes("application/json")) { + return null; + } + + try { + const payload = (await response.json()) as unknown; + const parsed = parseToolMetadataError(payload); + if (parsed) { + return `${parsed.name}: ${parsed.message}`; + } + } catch { + return null; + } + + return null; + } +} + +export const createEngineApiSource = ( + config: EngineApiSourceConfig +): IToolDataSource => new EngineApiSource(config); diff --git a/toolkit-docs-generator/src/sources/in-memory.ts b/toolkit-docs-generator/src/sources/in-memory.ts new file mode 100644 index 000000000..49ffd22be --- /dev/null +++ b/toolkit-docs-generator/src/sources/in-memory.ts @@ -0,0 +1,340 @@ +/** + * In-memory implementations of data sources for testing + * + * These implementations use real data structures and logic, + * avoiding mocks while enabling isolated testing. + */ + +import type { ToolkitOverviewInstructions } from "../overview/types.js"; +import type { + CustomSections, + ToolDefinition, + ToolkitMetadata, +} from "../types/index.js"; +import { normalizeId } from "../utils/fp.js"; +import type { + ICustomSectionsSource, + IOverviewInstructionsSource, +} from "./interfaces.js"; +import type { + FetchOptions, + IMetadataSource, + IToolDataSource, +} from "./internal.js"; + +// ============================================================================ +// In-Memory Tool Data Source +// ============================================================================ + +/** + * In-memory implementation of IToolDataSource for testing + * + * Use this instead of mocking the interface. Simply provide + * realistic test data in the constructor. + * + * @example + * ```typescript + * const source = new InMemoryToolDataSource([ + * { name: 'CreateIssue', qualifiedName: 'Github.CreateIssue', ... }, + * { name: 'SetStarred', qualifiedName: 'Github.SetStarred', ... }, + * ]); + * const tools = await source.fetchToolsByToolkit('Github'); + * ``` + */ +export class InMemoryToolDataSource implements IToolDataSource { + private readonly tools: readonly ToolDefinition[]; + + constructor(tools: readonly ToolDefinition[]) { + this.tools = tools; + } + + async fetchToolsByToolkit( + toolkitId: string + ): Promise { + const normalizedId = normalizeId(toolkitId); + return this.tools.filter((tool) => { + const toolToolkitId = tool.qualifiedName.split(".")[0]; + return toolToolkitId && normalizeId(toolToolkitId) === normalizedId; + }); + } + + async fetchAllTools( + options?: FetchOptions + ): Promise { + let result = [...this.tools]; + + if (options?.toolkitId) { + const normalizedId = normalizeId(options.toolkitId); + result = result.filter((tool) => { + const toolToolkitId = tool.qualifiedName.split(".")[0]; + return toolToolkitId && normalizeId(toolToolkitId) === normalizedId; + }); + } + + if (options?.version) { + result = result.filter((tool) => { + const version = tool.fullyQualifiedName.split("@")[1]; + return version === options.version; + }); + } + + if (options?.providerId) { + result = result.filter( + (tool) => tool.auth?.providerId === options.providerId + ); + } + + return result; + } + + async isAvailable(): Promise { + return true; + } +} + +// ============================================================================ +// In-Memory Metadata Source +// ============================================================================ + +/** + * In-memory implementation of IMetadataSource for testing + * + * @example + * ```typescript + * const source = new InMemoryMetadataSource([ + * { id: 'Github', label: 'GitHub', category: 'development', ... }, + * { id: 'Slack', label: 'Slack', category: 'social', ... }, + * ]); + * const metadata = await source.getToolkitMetadata('Github'); + * ``` + */ +export class InMemoryMetadataSource implements IMetadataSource { + private readonly metadata: ReadonlyMap; + + constructor(toolkits: readonly ToolkitMetadata[]) { + const map = new Map(); + for (const toolkit of toolkits) { + // Store by exact ID + map.set(toolkit.id, toolkit); + // Also store by normalized ID for case-insensitive lookup + map.set(normalizeId(toolkit.id), toolkit); + } + this.metadata = map; + } + + async getToolkitMetadata(toolkitId: string): Promise { + // Try exact match first + const exact = this.metadata.get(toolkitId); + if (exact) return exact; + + // Try normalized match + const normalized = this.metadata.get(normalizeId(toolkitId)); + return normalized ?? null; + } + + async getAllToolkitsMetadata(): Promise { + // Return unique toolkits (filter out normalized duplicates) + const seen = new Set(); + const result: ToolkitMetadata[] = []; + + for (const [key, value] of this.metadata) { + // Only include if this is the original ID (not normalized) + if (key === value.id && !seen.has(value.id)) { + seen.add(value.id); + result.push(value); + } + } + + return result; + } + + async listToolkitIds(): Promise { + const metadata = await this.getAllToolkitsMetadata(); + return metadata.map((m) => m.id); + } +} + +// ============================================================================ +// In-Memory Custom Sections Source +// ============================================================================ + +/** + * In-memory implementation of ICustomSectionsSource for testing + * + * @example + * ```typescript + * const source = new InMemoryCustomSectionsSource({ + * Github: { + * documentationChunks: [{ type: 'warning', ... }], + * customImports: [], + * subPages: [], + * toolChunks: {}, + * }, + * }); + * const sections = await source.getCustomSections('Github'); + * ``` + */ +export class InMemoryCustomSectionsSource implements ICustomSectionsSource { + private readonly sections: ReadonlyMap; + + constructor(sections: Readonly>) { + const map = new Map(); + for (const [key, value] of Object.entries(sections)) { + map.set(key, value); + map.set(normalizeId(key), value); + } + this.sections = map; + } + + async getCustomSections(toolkitId: string): Promise { + const exact = this.sections.get(toolkitId); + if (exact) return exact; + + const normalized = this.sections.get(normalizeId(toolkitId)); + return normalized ?? null; + } + + async getAllCustomSections(): Promise< + Readonly> + > { + const result: Record = {}; + const seen = new Set(); + + for (const [key, value] of this.sections) { + // Only include original keys + if (!seen.has(normalizeId(key))) { + seen.add(normalizeId(key)); + result[key] = value; + } + } + + return result; + } +} + +// ============================================================================ +// In-Memory Overview Instructions Source +// ============================================================================ + +export class InMemoryOverviewInstructionsSource + implements IOverviewInstructionsSource +{ + private readonly instructions: ReadonlyMap< + string, + ToolkitOverviewInstructions + >; + + constructor( + instructions: Readonly> + ) { + const map = new Map(); + for (const [key, value] of Object.entries(instructions)) { + map.set(key, value); + map.set(normalizeId(key), value); + } + this.instructions = map; + } + + async getOverviewInstructions( + toolkitId: string + ): Promise { + const exact = this.instructions.get(toolkitId); + if (exact) return exact; + + const normalized = this.instructions.get(normalizeId(toolkitId)); + return normalized ?? null; + } + + async getAllOverviewInstructions(): Promise< + Readonly> + > { + const result: Record = {}; + const seen = new Set(); + + for (const [key, value] of this.instructions) { + if (!seen.has(normalizeId(key))) { + seen.add(normalizeId(key)); + result[key] = value; + } + } + + return result; + } +} + +// ============================================================================ +// Empty Custom Sections Source +// ============================================================================ + +/** + * Empty implementation that always returns null/empty + * Useful when custom sections are not needed + */ +export class EmptyCustomSectionsSource implements ICustomSectionsSource { + async getCustomSections(_toolkitId: string): Promise { + return null; + } + + async getAllCustomSections(): Promise< + Readonly> + > { + return {}; + } +} + +// ============================================================================ +// Empty Overview Instructions Source +// ============================================================================ + +export class EmptyOverviewInstructionsSource + implements IOverviewInstructionsSource +{ + async getOverviewInstructions( + _toolkitId: string + ): Promise { + return null; + } + + async getAllOverviewInstructions(): Promise< + Readonly> + > { + return {}; + } +} + +// ============================================================================ +// Factory Functions +// ============================================================================ + +/** + * Create an in-memory tool data source from test fixtures + */ +export const createInMemoryToolDataSource = ( + tools: readonly ToolDefinition[] +): IToolDataSource => new InMemoryToolDataSource(tools); + +/** + * Create an in-memory metadata source from test fixtures + */ +export const createInMemoryMetadataSource = ( + toolkits: readonly ToolkitMetadata[] +): IMetadataSource => new InMemoryMetadataSource(toolkits); + +/** + * Create an in-memory custom sections source from test fixtures + */ +export const createInMemoryCustomSectionsSource = ( + sections: Readonly> +): ICustomSectionsSource => new InMemoryCustomSectionsSource(sections); + +/** + * Create an empty custom sections source + */ +export const createEmptyCustomSectionsSource = (): ICustomSectionsSource => + new EmptyCustomSectionsSource(); + +/** + * Create an empty overview instructions source + */ +export const createEmptyOverviewInstructionsSource = + (): IOverviewInstructionsSource => new EmptyOverviewInstructionsSource(); diff --git a/toolkit-docs-generator/src/sources/index.ts b/toolkit-docs-generator/src/sources/index.ts new file mode 100644 index 000000000..015b7664f --- /dev/null +++ b/toolkit-docs-generator/src/sources/index.ts @@ -0,0 +1,17 @@ +/** + * Data sources exports + */ + +export * from "./arcade-api.js"; +export * from "./arcade-api-types.js"; +export * from "./custom-sections-file.js"; +export * from "./design-system-metadata.js"; +export * from "./engine-api.js"; +export * from "./in-memory.js"; +export * from "./interfaces.js"; +export * from "./mock-engine-api.js"; +export * from "./mock-metadata.js"; +export * from "./overview-instructions-file.js"; +export * from "./toolkit-data-source.js"; + +// Note: Design System source requires @arcadeai/design-system to be installed. diff --git a/toolkit-docs-generator/src/sources/interfaces.ts b/toolkit-docs-generator/src/sources/interfaces.ts new file mode 100644 index 000000000..af3fa7272 --- /dev/null +++ b/toolkit-docs-generator/src/sources/interfaces.ts @@ -0,0 +1,49 @@ +/** + * Public source interfaces for the toolkit docs generator + * + */ + +import type { ToolkitOverviewInstructions } from "../overview/types.js"; +import type { CustomSections } from "../types/index.js"; + +// ============================================================================ +// Custom Sections Source Interface +// ============================================================================ + +/** + * Interface for fetching custom documentation sections + * + * Implementations: + * - CustomSectionsFileSource: Loads from extracted JSON file + * - EmptyCustomSectionsSource: Returns empty sections (for new toolkits) + */ +export interface ICustomSectionsSource { + /** + * Get custom sections for a specific toolkit + * @param toolkitId - The toolkit identifier + */ + readonly getCustomSections: ( + toolkitId: string + ) => Promise; + + /** + * Get all custom sections + */ + readonly getAllCustomSections: () => Promise< + Readonly> + >; +} + +// ============================================================================ +// Overview Instructions Source Interface +// ============================================================================ + +export interface IOverviewInstructionsSource { + readonly getOverviewInstructions: ( + toolkitId: string + ) => Promise; + + readonly getAllOverviewInstructions: () => Promise< + Readonly> + >; +} diff --git a/toolkit-docs-generator/src/sources/internal.ts b/toolkit-docs-generator/src/sources/internal.ts new file mode 100644 index 000000000..dba59d7f9 --- /dev/null +++ b/toolkit-docs-generator/src/sources/internal.ts @@ -0,0 +1,52 @@ +/** + * Internal source interfaces + * + * These interfaces are used only inside the toolkit data source implementations. + * Do not export them from the public sources index. + */ +import type { ToolDefinition, ToolkitMetadata } from "../types/index.js"; + +// ============================================================================ +// Fetch Options +// ============================================================================ + +export interface FetchOptions { + /** Filter by toolkit ID */ + readonly toolkitId?: string; + /** Filter by toolkit version */ + readonly version?: string; + /** Filter by auth provider ID */ + readonly providerId?: string; +} + +// ============================================================================ +// Tool Data Source Interface (internal) +// ============================================================================ + +export interface IToolDataSource { + /** Fetch tools for a specific toolkit */ + readonly fetchToolsByToolkit: ( + toolkitId: string + ) => Promise; + /** Fetch all tools from the source */ + readonly fetchAllTools: ( + options?: FetchOptions + ) => Promise; + /** Check if the data source is available */ + readonly isAvailable: () => Promise; +} + +// ============================================================================ +// Metadata Source Interface (internal) +// ============================================================================ + +export interface IMetadataSource { + /** Get metadata for a specific toolkit */ + readonly getToolkitMetadata: ( + toolkitId: string + ) => Promise; + /** Get all toolkit metadata */ + readonly getAllToolkitsMetadata: () => Promise; + /** List all available toolkit IDs */ + readonly listToolkitIds: () => Promise; +} diff --git a/toolkit-docs-generator/src/sources/mock-engine-api.ts b/toolkit-docs-generator/src/sources/mock-engine-api.ts new file mode 100644 index 000000000..cb681eebb --- /dev/null +++ b/toolkit-docs-generator/src/sources/mock-engine-api.ts @@ -0,0 +1,102 @@ +/** + * Mock Engine API Source + * + * This source loads tool definitions from JSON fixtures, simulating + * what the real Engine API will return. Replace with EngineApiSource + * when the API endpoint is ready. + */ +import { readFile } from "fs/promises"; +import type { ToolDefinition } from "../types/index.js"; +import { normalizeId } from "../utils/fp.js"; +import type { FetchOptions, IToolDataSource } from "./internal.js"; +import { parseToolMetadataResponse } from "./tool-metadata-schema.js"; + +export interface MockEngineApiConfig { + /** Path to the JSON fixture file */ + fixtureFilePath: string; +} + +/** + * Mock implementation of IToolDataSource that loads from JSON fixtures + * + * Use this until the real Engine API endpoint is available. + * The fixture format matches the expected API response schema. + */ +export class MockEngineApiSource implements IToolDataSource { + private readonly fixtureFilePath: string; + private cachedData: ToolDefinition[] | null = null; + + constructor(config: MockEngineApiConfig) { + this.fixtureFilePath = config.fixtureFilePath; + } + + private async loadFixture(): Promise { + if (this.cachedData !== null) { + return this.cachedData; + } + + const content = await readFile(this.fixtureFilePath, "utf-8"); + const json = JSON.parse(content); + const parsed = parseToolMetadataResponse(json); + this.cachedData = parsed.items; + return this.cachedData; + } + + async fetchToolsByToolkit( + toolkitId: string + ): Promise { + const tools = await this.loadFixture(); + const normalizedId = normalizeId(toolkitId); + + return tools.filter((tool) => { + const toolToolkitId = tool.qualifiedName.split(".")[0]; + return toolToolkitId && normalizeId(toolToolkitId) === normalizedId; + }); + } + + async fetchAllTools( + options?: FetchOptions + ): Promise { + let tools = await this.loadFixture(); + + if (options?.toolkitId) { + const normalizedId = normalizeId(options.toolkitId); + tools = tools.filter((tool) => { + const toolToolkitId = tool.qualifiedName.split(".")[0]; + return toolToolkitId && normalizeId(toolToolkitId) === normalizedId; + }); + } + + if (options?.version) { + tools = tools.filter((tool) => { + const version = tool.fullyQualifiedName.split("@")[1]; + return version === options.version; + }); + } + + if (options?.providerId) { + tools = tools.filter( + (tool) => tool.auth?.providerId === options.providerId + ); + } + + return tools; + } + + async isAvailable(): Promise { + try { + await this.loadFixture(); + return true; + } catch { + return false; + } + } +} + +// ============================================================================ +// Factory +// ============================================================================ + +export const createMockEngineApiSource = ( + fixtureFilePath: string +): IToolDataSource => new MockEngineApiSource({ fixtureFilePath }); diff --git a/toolkit-docs-generator/src/sources/mock-metadata.ts b/toolkit-docs-generator/src/sources/mock-metadata.ts new file mode 100644 index 000000000..68bc44a3f --- /dev/null +++ b/toolkit-docs-generator/src/sources/mock-metadata.ts @@ -0,0 +1,114 @@ +/** + * Mock Metadata Source + * + * This source loads toolkit metadata from a JSON fixture file, + * simulating what the Design System package provides. + * Use this until the Design System package is properly installed. + */ +import { access, readFile } from "fs/promises"; +import { z } from "zod"; +import type { ToolkitMetadata } from "../types/index.js"; +import { ToolkitMetadataSchema } from "../types/index.js"; +import { normalizeId } from "../utils/fp.js"; +import type { IMetadataSource } from "./internal.js"; + +// ============================================================================ +// File Schema +// ============================================================================ + +const MetadataFileSchema = z.record(z.string(), ToolkitMetadataSchema); + +type MetadataFile = z.infer; + +// ============================================================================ +// Mock Metadata Source +// ============================================================================ + +export interface MockMetadataConfig { + /** Path to the JSON fixture file */ + fixtureFilePath: string; +} + +/** + * Mock implementation of IMetadataSource that loads from JSON fixtures + */ +export class MockMetadataSource implements IMetadataSource { + private readonly fixtureFilePath: string; + private cachedData: MetadataFile | null = null; + private normalizedIndex: Map | null = null; + + constructor(config: MockMetadataConfig) { + this.fixtureFilePath = config.fixtureFilePath; + } + + private async loadFixture(): Promise { + if (this.cachedData !== null) { + return this.cachedData; + } + + try { + await access(this.fixtureFilePath); + const content = await readFile(this.fixtureFilePath, "utf-8"); + const json = JSON.parse(content); + this.cachedData = MetadataFileSchema.parse(json); + this.normalizedIndex = this.buildNormalizedIndex(this.cachedData); + return this.cachedData; + } catch (error) { + if ((error as NodeJS.ErrnoException).code === "ENOENT") { + this.cachedData = {}; + this.normalizedIndex = new Map(); + return this.cachedData; + } + throw error; + } + } + + private buildNormalizedIndex( + data: MetadataFile + ): Map { + const index = new Map(); + for (const [_, metadata] of Object.entries(data)) { + const normalized = normalizeId(metadata.id); + index.set(normalized, metadata); + } + return index; + } + + async getToolkitMetadata(toolkitId: string): Promise { + const data = await this.loadFixture(); + + // Try exact match first + const exact = data[toolkitId]; + if (exact) { + return exact; + } + + // Try normalized match + if (this.normalizedIndex) { + const normalized = this.normalizedIndex.get(normalizeId(toolkitId)); + if (normalized) { + return normalized; + } + } + + return null; + } + + async getAllToolkitsMetadata(): Promise { + const data = await this.loadFixture(); + return Object.values(data) as ToolkitMetadata[]; + } + + async listToolkitIds(): Promise { + const data = await this.loadFixture(); + return Object.keys(data); + } +} + +// ============================================================================ +// Factory +// ============================================================================ + +export const createMockMetadataSource = ( + fixtureFilePath: string +): IMetadataSource => new MockMetadataSource({ fixtureFilePath }); diff --git a/toolkit-docs-generator/src/sources/overview-instructions-file.ts b/toolkit-docs-generator/src/sources/overview-instructions-file.ts new file mode 100644 index 000000000..ae1eee300 --- /dev/null +++ b/toolkit-docs-generator/src/sources/overview-instructions-file.ts @@ -0,0 +1,187 @@ +/** + * Overview Instructions File Source + * + * Loads overview instruction files from a directory or a single file. + */ +import { access, readdir, readFile } from "fs/promises"; +import { basename, extname, join } from "path"; +import { z } from "zod"; +import type { ToolkitOverviewInstructions } from "../overview/types.js"; +import { normalizeId } from "../utils/fp.js"; +import type { IOverviewInstructionsSource } from "./interfaces.js"; + +const OverviewInstructionsSchema = z.object({ + toolkitId: z.string().min(1).optional(), + label: z.string().optional(), + sources: z.array(z.string()).optional().default([]), + instructions: z.string().optional().default(""), +}); + +const ToolkitsMapSchema = z.object({ + toolkits: z.record(z.string(), OverviewInstructionsSchema), +}); + +type OverviewFilePayload = + | z.infer + | z.infer; + +export interface OverviewInstructionsFileConfig { + dirPath?: string; + filePath?: string; + allowMissing?: boolean; +} + +const buildToolkitIdFromFile = (filePath: string): string => + basename(filePath, extname(filePath)); + +const toInstructions = ( + raw: OverviewFilePayload, + fallbackToolkitId?: string +): ToolkitOverviewInstructions[] => { + if ("toolkits" in raw) { + return Object.entries(raw.toolkits).map(([key, value]) => ({ + ...value, + toolkitId: value.toolkitId || key, + })); + } + + return [ + { + ...raw, + toolkitId: raw.toolkitId || fallbackToolkitId || raw.label || "unknown", + }, + ]; +}; + +export class OverviewInstructionsFileSource + implements IOverviewInstructionsSource +{ + private readonly dirPath?: string; + private readonly filePath?: string; + private readonly allowMissing: boolean; + private cachedData: Record | null = null; + + constructor(config: OverviewInstructionsFileConfig) { + this.dirPath = config.dirPath; + this.filePath = config.filePath; + this.allowMissing = config.allowMissing ?? true; + } + + private isMissingAllowed(error: unknown): boolean { + return ( + (error as NodeJS.ErrnoException).code === "ENOENT" && this.allowMissing + ); + } + + private async resolveFiles(): Promise { + if (this.filePath) { + return [this.filePath]; + } + + if (!this.dirPath) { + return []; + } + const dirPath = this.dirPath; + + try { + await access(this.dirPath); + } catch (error) { + if (this.isMissingAllowed(error)) { + return []; + } + throw error; + } + + const entries = await readdir(dirPath); + return entries + .filter((entry) => extname(entry).toLowerCase() === ".json") + .map((entry) => join(dirPath, entry)); + } + + private async readInstructionsFromFiles( + files: readonly string[] + ): Promise> { + const result: Record = {}; + + for (const filePath of files) { + try { + const payload = await this.readFileContent(filePath); + const fallbackToolkitId = buildToolkitIdFromFile(filePath); + const instructionsList = toInstructions(payload, fallbackToolkitId); + for (const instruction of instructionsList) { + const key = instruction.toolkitId; + result[key] = instruction; + } + } catch (error) { + if (this.isMissingAllowed(error)) { + continue; + } + throw error; + } + } + + return result; + } + + private async readFileContent( + filePath: string + ): Promise { + const content = await readFile(filePath, "utf-8"); + const parsed = JSON.parse(content) as unknown; + + if ( + parsed && + typeof parsed === "object" && + !Array.isArray(parsed) && + "toolkits" in parsed + ) { + return ToolkitsMapSchema.parse(parsed); + } + + return OverviewInstructionsSchema.parse(parsed); + } + + private async loadFiles(): Promise< + Record + > { + if (this.cachedData) { + return this.cachedData; + } + + const files = await this.resolveFiles(); + if (files.length === 0) { + this.cachedData = {}; + return this.cachedData; + } + const result = await this.readInstructionsFromFiles(files); + this.cachedData = result; + return this.cachedData; + } + + async getOverviewInstructions( + toolkitId: string + ): Promise { + const data = await this.loadFiles(); + if (data[toolkitId]) { + return data[toolkitId]; + } + + const normalizedId = normalizeId(toolkitId); + const entry = Object.entries(data).find( + ([key]) => normalizeId(key) === normalizedId + ); + + return entry ? entry[1] : null; + } + + async getAllOverviewInstructions(): Promise< + Readonly> + > { + const data = await this.loadFiles(); + return data; + } +} + +export const createOverviewInstructionsFileSource = ( + config: OverviewInstructionsFileConfig +): IOverviewInstructionsSource => new OverviewInstructionsFileSource(config); diff --git a/toolkit-docs-generator/src/sources/tool-metadata-schema.ts b/toolkit-docs-generator/src/sources/tool-metadata-schema.ts new file mode 100644 index 000000000..79b7d115b --- /dev/null +++ b/toolkit-docs-generator/src/sources/tool-metadata-schema.ts @@ -0,0 +1,195 @@ +import { z } from "zod"; +import type { ToolDefinition, ToolParameter } from "../types/index.js"; + +const ToolMetadataValueSchema = z.object({ + val_type: z.string(), + inner_val_type: z.string().nullable().optional(), + enum: z.array(z.string()).nullable().optional(), +}); + +const ToolMetadataParameterSchema = z.object({ + name: z.string(), + required: z.boolean(), + description: z.string().nullable(), + value_schema: ToolMetadataValueSchema, + inferrable: z.boolean().default(true), +}); + +const ToolMetadataToolkitSchema = z.object({ + name: z.string(), + version: z.string(), + description: z.string().nullable(), +}); + +const ToolMetadataInputSchema = z.object({ + parameters: z.array(ToolMetadataParameterSchema), +}); + +const ToolMetadataOutputSchema = z + .object({ + description: z.string().nullable(), + value_schema: ToolMetadataValueSchema.nullable(), + }) + .nullable() + .optional(); + +const ToolMetadataAuthorizationSchema = z + .object({ + id: z.string().nullable().optional(), + provider_id: z.string().nullable().optional(), + provider_type: z.string().nullable().optional(), + scopes: z.array(z.string()), + }) + .nullable(); + +const ToolMetadataSecretSchema = z.union([ + z.object({ key: z.string() }), + z.string(), +]); + +const ToolMetadataRequirementsSchema = z + .object({ + authorization: ToolMetadataAuthorizationSchema.optional(), + secrets: z.array(ToolMetadataSecretSchema).nullable().optional(), + }) + .nullable() + .optional(); + +const ToolMetadataItemSchema = z.object({ + fully_qualified_name: z.string(), + qualified_name: z.string(), + name: z.string(), + description: z.string().nullable(), + toolkit: ToolMetadataToolkitSchema, + input: ToolMetadataInputSchema, + output: ToolMetadataOutputSchema, + requirements: ToolMetadataRequirementsSchema, +}); + +export const ToolMetadataResponseSchema = z.object({ + items: z.array(ToolMetadataItemSchema), + total_count: z.number(), +}); + +const ToolMetadataToolkitSummarySchema = z.object({ + name: z.string(), + version: z.string(), + tool_count: z.number(), + requires_secrets: z.boolean(), + requires_oauth: z.boolean(), +}); + +export const ToolMetadataSummaryResponseSchema = z.object({ + total_tools: z.number(), + total_toolkits: z.number(), + starter_toolkits: z.number(), + toolkits: z.array(ToolMetadataToolkitSummarySchema), +}); + +const ToolMetadataErrorSchema = z.object({ + name: z.string(), + message: z.string(), +}); + +type ToolMetadataItem = z.infer; +type ToolMetadataToolkitSummary = z.infer< + typeof ToolMetadataToolkitSummarySchema +>; + +export type ToolMetadataSummary = { + totalTools: number; + totalToolkits: number; + starterToolkits: number; + toolkits: Array<{ + name: string; + version: string; + toolCount: number; + requiresSecrets: boolean; + requiresOauth: boolean; + }>; +}; + +const transformParameter = ( + apiParam: z.infer +): ToolParameter => ({ + name: apiParam.name, + type: apiParam.value_schema.val_type, + innerType: apiParam.value_schema.inner_val_type ?? undefined, + required: apiParam.required, + description: apiParam.description, + enum: apiParam.value_schema.enum ?? null, + inferrable: apiParam.inferrable, +}); + +const normalizeSecrets = ( + secrets: z.infer[] | null | undefined +): string[] => { + if (!secrets || secrets.length === 0) { + return []; + } + + return secrets + .map((secret) => (typeof secret === "string" ? secret : secret.key)) + .filter((secret) => secret.length > 0); +}; + +export const transformToolMetadataItem = ( + apiTool: ToolMetadataItem +): ToolDefinition => ({ + name: apiTool.name, + qualifiedName: apiTool.qualified_name, + fullyQualifiedName: apiTool.fully_qualified_name, + description: apiTool.description, + toolkitDescription: apiTool.toolkit.description, + parameters: apiTool.input.parameters.map(transformParameter), + auth: apiTool.requirements?.authorization + ? { + providerId: apiTool.requirements.authorization.provider_id ?? null, + providerType: + apiTool.requirements.authorization.provider_type ?? "unknown", + scopes: apiTool.requirements.authorization.scopes ?? [], + } + : null, + secrets: normalizeSecrets(apiTool.requirements?.secrets), + output: apiTool.output + ? { + type: apiTool.output.value_schema?.val_type ?? "unknown", + description: apiTool.output.description ?? null, + } + : null, +}); + +export const parseToolMetadataResponse = ( + payload: unknown +): { items: ToolDefinition[]; totalCount: number } => { + const parsed = ToolMetadataResponseSchema.parse(payload); + return { + items: parsed.items.map(transformToolMetadataItem), + totalCount: parsed.total_count, + }; +}; + +export const parseToolMetadataSummaryResponse = ( + payload: unknown +): ToolMetadataSummary => { + const parsed = ToolMetadataSummaryResponseSchema.parse(payload); + return { + totalTools: parsed.total_tools, + totalToolkits: parsed.total_toolkits, + starterToolkits: parsed.starter_toolkits, + toolkits: parsed.toolkits.map((toolkit: ToolMetadataToolkitSummary) => ({ + name: toolkit.name, + version: toolkit.version, + toolCount: toolkit.tool_count, + requiresSecrets: toolkit.requires_secrets, + requiresOauth: toolkit.requires_oauth, + })), + }; +}; + +export const parseToolMetadataError = ( + payload: unknown +): { name: string; message: string } | null => { + const parsed = ToolMetadataErrorSchema.safeParse(payload); + return parsed.success ? parsed.data : null; +}; diff --git a/toolkit-docs-generator/src/sources/toolkit-data-source.ts b/toolkit-docs-generator/src/sources/toolkit-data-source.ts new file mode 100644 index 000000000..4fb0d98d9 --- /dev/null +++ b/toolkit-docs-generator/src/sources/toolkit-data-source.ts @@ -0,0 +1,271 @@ +/** + * Unified Toolkit Data Source + * + * This abstraction combines tool definitions and metadata into a single interface. + * This allows us to swap implementations easily when the data comes from a single source + * in the future (e.g., when Engine API includes metadata). + */ + +import { join } from "path"; +import type { ToolDefinition, ToolkitMetadata } from "../types/index.js"; +import { normalizeId } from "../utils/fp.js"; +import { + type ArcadeApiSourceConfig, + createArcadeApiSource, +} from "./arcade-api.js"; +import { + createEngineApiSource, + type EngineApiSourceConfig, +} from "./engine-api.js"; +import type { IMetadataSource, IToolDataSource } from "./internal.js"; +import { createMockEngineApiSource } from "./mock-engine-api.js"; +import { createMockMetadataSource } from "./mock-metadata.js"; + +// ============================================================================ +// Unified Toolkit Data Interface +// ============================================================================ + +/** + * Combined toolkit data containing both tools and metadata + */ +export interface ToolkitData { + /** Tool definitions from Engine API */ + readonly tools: readonly ToolDefinition[]; + /** Metadata from Design System */ + readonly metadata: ToolkitMetadata | null; +} + +// ============================================================================ +// Unified Toolkit Data Source Interface +// ============================================================================ + +/** + * Interface for fetching combined toolkit data (tools + metadata) + * + * This abstraction allows us to: + * 1. Currently combine separate Engine API and Design System sources + * 2. Future: Use a single unified source when Engine API includes metadata + * + * Implementations: + * - CombinedToolkitDataSource: Combines IToolDataSource + IMetadataSource + * - UnifiedToolkitDataSource: Single source (future implementation) + */ +export interface IToolkitDataSource { + /** + * Fetch combined data for a specific toolkit + * @param toolkitId - The toolkit identifier (e.g., "Github", "Slack") + * @param version - Optional version filter + */ + readonly fetchToolkitData: ( + toolkitId: string, + version?: string + ) => Promise; + + /** + * Fetch combined data for all toolkits + */ + readonly fetchAllToolkitsData: () => Promise< + ReadonlyMap + >; + + /** + * Check if the data source is available + */ + readonly isAvailable: () => Promise; +} + +// ============================================================================ +// Combined Implementation (Current: Separate Sources) +// ============================================================================ + +/** + * Configuration for combined toolkit data source + */ +export interface CombinedToolkitDataSourceConfig { + /** Source for tool definitions */ + readonly toolSource: IToolDataSource; + /** Source for toolkit metadata */ + readonly metadataSource: IMetadataSource; +} + +/** + * Combined implementation that merges separate tool and metadata sources + * + * This is the current implementation that combines: + * - Engine API (via IToolDataSource) + * - Design System (via IMetadataSource) + * + * In the future, this can be replaced with UnifiedToolkitDataSource + * when Engine API includes metadata. + */ +export class CombinedToolkitDataSource implements IToolkitDataSource { + private readonly toolSource: IToolDataSource; + private readonly metadataSource: IMetadataSource; + + constructor(config: CombinedToolkitDataSourceConfig) { + this.toolSource = config.toolSource; + this.metadataSource = config.metadataSource; + } + + async fetchToolkitData( + toolkitId: string, + version?: string + ): Promise { + // Fetch tools and metadata in parallel + const [tools, fetchedMetadata] = await Promise.all([ + this.toolSource.fetchToolsByToolkit(toolkitId), + this.metadataSource.getToolkitMetadata(toolkitId), + ]); + + // If the toolkit isn't in the Design System under its exact ID, try to match + // based on the auth provider for "*Api" toolkits (e.g. MailchimpMarketingApi -> MailchimpApi). + let metadata = fetchedMetadata; + if (!metadata && normalizeId(toolkitId).endsWith("api")) { + const providerId = tools.find((t) => t.auth?.providerId)?.auth + ?.providerId; + if (providerId) { + metadata = + (await this.metadataSource.getToolkitMetadata(`${providerId}Api`)) ?? + (await this.metadataSource.getToolkitMetadata(providerId)); + } + } + + // Filter tools by version if specified + const filteredTools = version + ? tools.filter((tool) => { + const toolVersion = tool.fullyQualifiedName.split("@")[1]; + return toolVersion === version; + }) + : tools; + + return { + tools: filteredTools, + metadata, + }; + } + + async fetchAllToolkitsData(): Promise> { + // Fetch all tools and metadata in parallel + const [allTools, allMetadata] = await Promise.all([ + this.toolSource.fetchAllTools(), + this.metadataSource.getAllToolkitsMetadata(), + ]); + + // Group tools by toolkit ID + const toolkitGroups = new Map(); + for (const tool of allTools) { + const toolkitId = tool.qualifiedName.split(".")[0]; + if (toolkitId) { + const existing = toolkitGroups.get(toolkitId) ?? []; + toolkitGroups.set(toolkitId, [...existing, tool]); + } + } + + // Create metadata lookup map + const metadataMap = new Map(); + for (const metadata of allMetadata) { + metadataMap.set(metadata.id, metadata); + } + + // Combine into ToolkitData map + const result = new Map(); + for (const [toolkitId, tools] of toolkitGroups) { + result.set(toolkitId, { + tools, + metadata: metadataMap.get(toolkitId) ?? null, + }); + } + + return result; + } + + async isAvailable(): Promise { + const [toolAvailable, metadataAvailable] = await Promise.all([ + this.toolSource.isAvailable(), + Promise.resolve(true), // Metadata source is always available (returns null if not found) + ]); + return toolAvailable && metadataAvailable; + } +} + +// ============================================================================ +// Factory +// ============================================================================ + +/** + * Create a combined toolkit data source from separate sources + */ +export const createCombinedToolkitDataSource = ( + config: CombinedToolkitDataSourceConfig +): IToolkitDataSource => new CombinedToolkitDataSource(config); + +// ============================================================================ +// Engine Toolkit Data Source +// ============================================================================ + +export interface EngineToolkitDataSourceConfig { + /** Engine API configuration */ + readonly engine: EngineApiSourceConfig; + /** Source for toolkit metadata */ + readonly metadataSource: IMetadataSource; +} + +export const createEngineToolkitDataSource = ( + config: EngineToolkitDataSourceConfig +): IToolkitDataSource => + createCombinedToolkitDataSource({ + toolSource: createEngineApiSource(config.engine), + metadataSource: config.metadataSource, + }); + +// ============================================================================ +// Arcade API Toolkit Data Source +// ============================================================================ + +export interface ArcadeToolkitDataSourceConfig { + /** Arcade API configuration */ + readonly arcade: ArcadeApiSourceConfig; + /** Source for toolkit metadata */ + readonly metadataSource: IMetadataSource; +} + +/** + * Create a toolkit data source using the Arcade Production API (/v1/tools) + */ +export const createArcadeToolkitDataSource = ( + config: ArcadeToolkitDataSourceConfig +): IToolkitDataSource => + createCombinedToolkitDataSource({ + toolSource: createArcadeApiSource(config.arcade), + metadataSource: config.metadataSource, + }); + +// ============================================================================ +// Mock Toolkit Data Source (Current: JSON fixtures) +// ============================================================================ + +/** + * Configuration for mock toolkit data source + */ +export interface MockToolkitDataSourceConfig { + /** Directory containing mock data fixtures */ + readonly dataDir: string; +} + +/** + * Create a mock toolkit data source using JSON fixtures. + * + * This hides the fact that tools and metadata come from separate sources, + * while keeping a single abstraction for the rest of the system. + */ +export const createMockToolkitDataSource = ( + config: MockToolkitDataSourceConfig +): IToolkitDataSource => { + const toolFixturePath = join(config.dataDir, "engine-api-response.json"); + const metadataFixturePath = join(config.dataDir, "metadata.json"); + + return createCombinedToolkitDataSource({ + toolSource: createMockEngineApiSource(toolFixturePath), + metadataSource: createMockMetadataSource(metadataFixturePath), + }); +}; diff --git a/toolkit-docs-generator/src/types/index.ts b/toolkit-docs-generator/src/types/index.ts new file mode 100644 index 000000000..5e275d0b6 --- /dev/null +++ b/toolkit-docs-generator/src/types/index.ts @@ -0,0 +1,402 @@ +/** + * Core type definitions for the toolkit docs generator + */ +import { z } from "zod"; + +// ============================================================================ +// CLI Input Types +// ============================================================================ + +/** + * Input format for specifying which providers/toolkits to process + * Format: "Provider:version" e.g., "Github:1.0.0" + */ +export const ProviderVersionSchema = z.object({ + provider: z.string().min(1), + version: z.string().optional(), // If not provided, use latest +}); + +export type ProviderVersion = z.infer; + +export const GenerateInputSchema = z.object({ + providers: z.array(ProviderVersionSchema).min(1), + outputDir: z.string().default("./output"), + skipExamples: z.boolean().default(false), + skipSummary: z.boolean().default(false), + customSectionsFile: z.string().optional(), +}); + +export type GenerateInput = z.infer; + +// ============================================================================ +// Tool Parameter Schema +// ============================================================================ + +export const ToolParameterSchema = z.object({ + name: z.string(), + type: z.string(), + innerType: z.string().optional(), + required: z.boolean(), + description: z.string().nullable(), + enum: z.array(z.string()).nullable(), + inferrable: z.boolean().default(true), +}); + +export type ToolParameter = z.infer; + +// ============================================================================ +// Tool Auth Schema +// ============================================================================ + +export const ToolAuthSchema = z.object({ + providerId: z.string().nullable(), + providerType: z.string(), + scopes: z.array(z.string()), +}); + +export type ToolAuth = z.infer; + +// ============================================================================ +// Tool Output Schema +// ============================================================================ + +export const ToolOutputSchema = z.object({ + type: z.string(), + description: z.string().nullable(), +}); + +export type ToolOutput = z.infer; + +// ============================================================================ +// Tool Secrets Schema +// ============================================================================ + +export const SecretTypeSchema = z.enum([ + "api_key", + "token", + "client_secret", + "webhook_secret", + "private_key", + "password", + "unknown", +]); + +export type SecretType = z.infer; + +export const ToolSecretSchema = z.object({ + name: z.string(), + type: SecretTypeSchema, +}); + +export type ToolSecret = z.infer; + +// ============================================================================ +// Tool Definition Schema (from Engine API) +// ============================================================================ + +export const ToolDefinitionSchema = z.object({ + name: z.string(), + qualifiedName: z.string(), + fullyQualifiedName: z.string(), + description: z.string().nullable(), + toolkitDescription: z.string().nullable().optional(), + parameters: z.array(ToolParameterSchema), + auth: ToolAuthSchema.nullable(), + secrets: z.array(z.string()), + output: ToolOutputSchema.nullable(), +}); + +export type ToolDefinition = z.infer; + +// ============================================================================ +// Toolkit Metadata Schema (from Design System) +// ============================================================================ + +export const ToolkitCategorySchema = z.enum([ + "productivity", + "social", + "development", + "entertainment", + "search", + "payments", + "sales", + "databases", + "customer-support", +]); + +export type ToolkitCategory = z.infer; + +export const ToolkitTypeSchema = z.enum([ + "arcade", + "arcade_starter", + "verified", + "community", + "auth", +]); + +export type ToolkitType = z.infer; + +export const ToolkitMetadataSchema = z.object({ + id: z.string(), + label: z.string(), + category: ToolkitCategorySchema, + iconUrl: z.string(), + isBYOC: z.boolean(), + isPro: z.boolean(), + type: ToolkitTypeSchema, + docsLink: z.string(), + isComingSoon: z.boolean(), + isHidden: z.boolean(), +}); + +export type ToolkitMetadata = z.infer; + +// ============================================================================ +// Documentation Chunk Schema (for custom content injection) +// ============================================================================ + +/** + * Type of documentation chunk content + * - callout: Warning, info, or tip box + * - markdown: Raw markdown content + * - code: Code block with language + * - warning: Highlighted warning message + * - info: Informational note + * - tip: Helpful tip + */ +export const DocumentationChunkTypeSchema = z.enum([ + "callout", + "markdown", + "code", + "warning", + "info", + "tip", +]); + +export type DocumentationChunkType = z.infer< + typeof DocumentationChunkTypeSchema +>; + +/** + * Location where the chunk should be injected + * - header: After the toolkit header, before tools list + * - description: Around the tool description + * - parameters: Around the parameters section + * - auth: Around the auth/scopes section + * - secrets: Around the secrets section + * - output: Around the output section + * - footer: After all tools, before the footer + */ +export const DocumentationChunkLocationSchema = z.enum([ + "header", + "description", + "parameters", + "auth", + "secrets", + "output", + "footer", +]); + +export type DocumentationChunkLocation = z.infer< + typeof DocumentationChunkLocationSchema +>; + +/** + * Position relative to the location + */ +export const DocumentationChunkPositionSchema = z.enum([ + "before", + "after", + "replace", +]); + +export type DocumentationChunkPosition = z.infer< + typeof DocumentationChunkPositionSchema +>; + +/** + * A documentation chunk represents custom content to inject into docs + */ +export const DocumentationChunkSchema = z.object({ + /** Type of content */ + type: DocumentationChunkTypeSchema, + /** Where to inject the content */ + location: DocumentationChunkLocationSchema, + /** Position relative to location (before, after, replace) */ + position: DocumentationChunkPositionSchema, + /** The actual content (markdown string) */ + content: z.string(), + /** Optional title for callouts */ + title: z.string().optional(), + /** Optional variant for styling (e.g., "destructive" for warnings) */ + variant: z + .enum(["default", "destructive", "warning", "info", "success"]) + .optional(), +}); + +export type DocumentationChunk = z.infer; + +// ============================================================================ +// Tool Code Example Schema (for generating example code) +// ============================================================================ + +/** + * Parameter value with type information for code generation + */ +export const ExampleParameterValueSchema = z.object({ + /** The example value to use in code */ + value: z.unknown(), + /** Parameter type */ + type: z.enum(["string", "integer", "boolean", "array", "object"]), + /** Whether this parameter is required */ + required: z.boolean(), +}); + +export type ExampleParameterValue = z.infer; + +/** + * Tool code example configuration + * Used to generate Python/JavaScript example code + */ +export const ToolCodeExampleSchema = z.object({ + /** Full tool name (e.g., "Github.SetStarred") */ + toolName: z.string(), + /** Parameter values with type info */ + parameters: z.record(z.string(), ExampleParameterValueSchema), + /** Whether this tool requires user authorization */ + requiresAuth: z.boolean(), + /** Auth provider ID if auth is required */ + authProvider: z.string().optional(), + /** Optional tab label for the code example */ + tabLabel: z.string().optional(), +}); + +export type ToolCodeExample = z.infer; + +// ============================================================================ +// Custom Sections Schema (extracted from MDX) +// ============================================================================ + +export const CustomSectionsSchema = z.object({ + /** Toolkit-level documentation chunks */ + documentationChunks: z.array(DocumentationChunkSchema).default([]), + /** Custom imports needed for the MDX file */ + customImports: z.array(z.string()).default([]), + /** Sub-pages that exist for this toolkit */ + subPages: z.array(z.string()).default([]), + /** Per-tool documentation chunks (keyed by tool name) */ + toolChunks: z + .record(z.string(), z.array(DocumentationChunkSchema)) + .default({}), +}); + +export type CustomSections = z.infer; + +// ============================================================================ +// Merged Tool Schema (output format) +// ============================================================================ + +export const MergedToolSchema = z.object({ + name: z.string(), + qualifiedName: z.string(), + fullyQualifiedName: z.string(), + description: z.string().nullable(), + parameters: z.array(ToolParameterSchema), + auth: ToolAuthSchema.nullable(), + secrets: z.array(z.string()), + secretsInfo: z.array(ToolSecretSchema).default([]), + output: ToolOutputSchema.nullable(), + /** Custom documentation chunks for this tool */ + documentationChunks: z.array(DocumentationChunkSchema).default([]), + /** Generated code example configuration */ + codeExample: ToolCodeExampleSchema.optional(), +}); + +export type MergedTool = z.infer; + +// ============================================================================ +// Merged Toolkit Schema (output format) +// ============================================================================ + +export const ToolkitAuthTypeSchema = z.enum([ + "oauth2", + "api_key", + "mixed", + "none", +]); + +export type ToolkitAuthType = z.infer; + +export const MergedToolkitMetadataSchema = z.object({ + category: ToolkitCategorySchema, + iconUrl: z.string(), + isBYOC: z.boolean(), + isPro: z.boolean(), + type: ToolkitTypeSchema, + docsLink: z.string(), + isComingSoon: z.boolean(), + isHidden: z.boolean(), +}); + +export type MergedToolkitMetadata = z.infer; + +export const MergedToolkitAuthSchema = z.object({ + type: ToolkitAuthTypeSchema, + providerId: z.string().nullable(), + allScopes: z.array(z.string()), +}); + +export type MergedToolkitAuth = z.infer; + +export const MergedToolkitSchema = z.object({ + /** Unique toolkit ID (e.g., "Github") */ + id: z.string(), + /** Human-readable label (e.g., "GitHub") */ + label: z.string(), + /** Toolkit version (e.g., "1.0.0") */ + version: z.string(), + /** Toolkit description */ + description: z.string().nullable(), + /** LLM-generated summary (optional) */ + summary: z.string().optional(), + /** Metadata from Design System */ + metadata: MergedToolkitMetadataSchema, + /** Authentication requirements */ + auth: MergedToolkitAuthSchema.nullable(), + /** All tools in this toolkit */ + tools: z.array(MergedToolSchema), + /** Toolkit-level documentation chunks */ + documentationChunks: z.array(DocumentationChunkSchema).default([]), + /** Custom imports for MDX */ + customImports: z.array(z.string()).default([]), + /** Sub-pages that exist for this toolkit */ + subPages: z.array(z.string()).default([]), + /** Generation metadata */ + generatedAt: z.string().optional(), +}); + +export type MergedToolkit = z.infer; + +// ============================================================================ +// Index Output Schema +// ============================================================================ + +export const ToolkitIndexEntrySchema = z.object({ + id: z.string(), + label: z.string(), + version: z.string(), + category: ToolkitCategorySchema, + type: ToolkitTypeSchema, + toolCount: z.number(), + authType: ToolkitAuthTypeSchema, +}); + +export type ToolkitIndexEntry = z.infer; + +export const ToolkitIndexSchema = z.object({ + generatedAt: z.string(), + version: z.string(), + toolkits: z.array(ToolkitIndexEntrySchema), +}); + +export type ToolkitIndex = z.infer; diff --git a/toolkit-docs-generator/src/utils/concurrency.ts b/toolkit-docs-generator/src/utils/concurrency.ts new file mode 100644 index 000000000..c6ca6963b --- /dev/null +++ b/toolkit-docs-generator/src/utils/concurrency.ts @@ -0,0 +1,75 @@ +/** + * Concurrency utilities for parallel processing with rate limiting + */ + +/** + * A simple concurrency limiter that allows running async tasks with a maximum + * number of concurrent executions. + */ +export class ConcurrencyLimiter { + private readonly maxConcurrency: number; + private running = 0; + private readonly queue: Array<() => void> = []; + + constructor(maxConcurrency: number) { + this.maxConcurrency = Math.max(1, maxConcurrency); + } + + /** + * Run a task with concurrency limiting + */ + async run(task: () => Promise): Promise { + await this.acquire(); + try { + return await task(); + } finally { + this.release(); + } + } + + private async acquire(): Promise { + if (this.running < this.maxConcurrency) { + this.running++; + return; + } + + return new Promise((resolve) => { + this.queue.push(resolve); + }); + } + + private release(): void { + this.running--; + const next = this.queue.shift(); + if (next) { + this.running++; + next(); + } + } +} + +/** + * Run tasks in parallel with a concurrency limit + * + * @param items - Items to process + * @param fn - Async function to apply to each item + * @param concurrency - Maximum concurrent executions (default: 5) + * @returns Array of results in the same order as input + */ +export const mapWithConcurrency = async ( + items: readonly T[], + fn: (item: T, index: number) => Promise, + concurrency = 5 +): Promise => { + const limiter = new ConcurrencyLimiter(concurrency); + return Promise.all( + items.map((item, index) => limiter.run(() => fn(item, index))) + ); +}; + +/** + * Create a concurrency limiter + */ +export const createConcurrencyLimiter = ( + maxConcurrency: number +): ConcurrencyLimiter => new ConcurrencyLimiter(maxConcurrency); diff --git a/toolkit-docs-generator/src/utils/fp.ts b/toolkit-docs-generator/src/utils/fp.ts new file mode 100644 index 000000000..19061323c --- /dev/null +++ b/toolkit-docs-generator/src/utils/fp.ts @@ -0,0 +1,184 @@ +/** + * Functional programming utilities + */ + +/** + * Pipe a value through a series of functions + * @example + * pipe(5, double, addOne) // 11 + */ +export const pipe = (value: T, ...fns: Array<(arg: T) => T>): T => + fns.reduce((acc, fn) => fn(acc), value); + +/** + * Compose functions from right to left + * @example + * const doubleAndAddOne = compose(addOne, double); + * doubleAndAddOne(5) // 11 + */ +export const compose = + (...fns: Array<(arg: T) => T>) => + (value: T): T => + fns.reduceRight((acc, fn) => fn(acc), value); + +/** + * Create a function that always returns the same value + */ +export const constant = + (value: T) => + (): T => + value; + +/** + * Identity function - returns its argument unchanged + */ +export const identity = (value: T): T => value; + +/** + * Safely get a property from an object + */ +export const prop = + (key: K) => + (obj: T): T[K] => + obj[key]; + +/** + * Check if a value is not null or undefined + */ +export const isNotNullish = (value: T | null | undefined): value is T => + value !== null && value !== undefined; + +/** + * Filter out null and undefined values from an array + */ +export const filterNullish = (arr: readonly (T | null | undefined)[]): T[] => + arr.filter(isNotNullish); + +/** + * Group array items by a key function + */ +export const groupBy = ( + arr: readonly T[], + keyFn: (item: T) => K +): Record => + arr.reduce( + (acc, item) => { + const key = keyFn(item); + const existing = acc[key] ?? []; + return { ...acc, [key]: [...existing, item] }; + }, + {} as Record + ); + +/** + * Create a unique array by a key function + */ +export const uniqueBy = ( + arr: readonly T[], + keyFn: (item: T) => K +): T[] => { + const seen = new Set(); + return arr.filter((item) => { + const key = keyFn(item); + if (seen.has(key)) return false; + seen.add(key); + return true; + }); +}; + +/** + * Flatten an array of arrays + */ +export const flatten = (arr: readonly (readonly T[])[]): T[] => + arr.flatMap(identity); + +/** + * Map over an object's values + */ +export const mapValues = ( + obj: Readonly>, + fn: (value: T, key: string) => U +): Record => + Object.fromEntries( + Object.entries(obj).map(([key, value]) => [key, fn(value, key)]) + ); + +/** + * Pick specified keys from an object + */ +export const pick = ( + obj: T, + keys: readonly K[] +): Pick => + keys.reduce((acc, key) => ({ ...acc, [key]: obj[key] }), {} as Pick); + +/** + * Omit specified keys from an object + */ +export const omit = ( + obj: T, + keys: readonly K[] +): Omit => { + const keysSet = new Set(keys); + return Object.fromEntries( + Object.entries(obj).filter(([key]) => !keysSet.has(key as keyof T)) + ) as Omit; +}; + +/** + * Deep merge two objects + */ +export const deepMerge = ( + target: T, + source: Partial +): T => { + const result = { ...target }; + + for (const key in source) { + const sourceValue = source[key]; + const targetValue = result[key]; + + if ( + sourceValue !== undefined && + typeof sourceValue === "object" && + sourceValue !== null && + !Array.isArray(sourceValue) && + typeof targetValue === "object" && + targetValue !== null && + !Array.isArray(targetValue) + ) { + (result as Record)[key] = deepMerge( + targetValue as object, + sourceValue as object + ); + } else if (sourceValue !== undefined) { + (result as Record)[key] = sourceValue; + } + } + + return result; +}; + +/** + * Normalize a string for comparison (lowercase, remove hyphens/underscores) + */ +export const normalizeId = (id: string): string => + id.toLowerCase().replace(/[-_]/g, ""); + +/** + * Convert PascalCase to snake_case + */ +export const pascalToSnakeCase = (str: string): string => + str + .replace(/([A-Z])/g, "_$1") + .toLowerCase() + .replace(/^_/, ""); + +/** + * Convert snake_case to PascalCase + */ +export const snakeToPascalCase = (str: string): string => + str + .split("_") + .map((part) => part.charAt(0).toUpperCase() + part.slice(1).toLowerCase()) + .join(""); diff --git a/toolkit-docs-generator/src/utils/index.ts b/toolkit-docs-generator/src/utils/index.ts new file mode 100644 index 000000000..8cc9afdda --- /dev/null +++ b/toolkit-docs-generator/src/utils/index.ts @@ -0,0 +1,9 @@ +/** + * Utility exports + */ + +export * from "./concurrency.js"; +export * from "./fp.js"; +export * from "./logger.js"; +export * from "./progress.js"; +export * from "./retry.js"; diff --git a/toolkit-docs-generator/src/utils/logger.ts b/toolkit-docs-generator/src/utils/logger.ts new file mode 100644 index 000000000..7a870bc25 --- /dev/null +++ b/toolkit-docs-generator/src/utils/logger.ts @@ -0,0 +1,160 @@ +/** + * Logging utility for CLI progress reporting + */ + +import chalk from "chalk"; + +export type LogLevel = "debug" | "info" | "warn" | "error"; + +export interface Logger { + readonly debug: (message: string, context?: Record) => void; + readonly info: (message: string, context?: Record) => void; + readonly warn: (message: string, context?: Record) => void; + readonly error: (message: string, context?: Record) => void; + readonly progress: (current: number, total: number, message: string) => void; + readonly success: (message: string) => void; + readonly startGroup: (name: string) => void; + readonly endGroup: () => void; +} + +export interface LoggerOptions { + /** Minimum log level (default: "info") */ + readonly level?: LogLevel; + /** Whether to use colors (default: true) */ + readonly colors?: boolean; + /** Whether to show timestamps (default: false) */ + readonly timestamps?: boolean; +} + +const LOG_LEVEL_ORDER: Record = { + debug: 0, + info: 1, + warn: 2, + error: 3, +}; + +const LOG_LEVEL_ICONS: Record = { + debug: "🔍", + info: "ℹ️ ", + warn: "⚠️ ", + error: "❌", +}; + +const formatTimestamp = (): string => { + const now = new Date(); + return `[${now.toISOString().slice(11, 19)}]`; +}; + +const formatContext = (context?: Record): string => { + if (!context || Object.keys(context).length === 0) { + return ""; + } + return ` ${chalk.dim(JSON.stringify(context))}`; +}; + +export const createLogger = (options?: LoggerOptions): Logger => { + const level = options?.level ?? "info"; + const useColors = options?.colors ?? true; + const showTimestamps = options?.timestamps ?? false; + + const shouldLog = (messageLevel: LogLevel): boolean => + LOG_LEVEL_ORDER[messageLevel] >= LOG_LEVEL_ORDER[level]; + + const formatMessage = ( + lvl: LogLevel, + message: string, + context?: Record + ): string => { + const parts: string[] = []; + + if (showTimestamps) { + parts.push(useColors ? chalk.dim(formatTimestamp()) : formatTimestamp()); + } + + parts.push(LOG_LEVEL_ICONS[lvl]); + + let coloredMessage = message; + if (useColors) { + switch (lvl) { + case "debug": + coloredMessage = chalk.gray(message); + break; + case "info": + coloredMessage = message; + break; + case "warn": + coloredMessage = chalk.yellow(message); + break; + case "error": + coloredMessage = chalk.red(message); + break; + } + } + + parts.push(coloredMessage); + parts.push(formatContext(context)); + + return parts.join(" "); + }; + + const log = ( + lvl: LogLevel, + message: string, + context?: Record + ): void => { + if (!shouldLog(lvl)) { + return; + } + console.log(formatMessage(lvl, message, context)); + }; + + return { + debug: (message, context) => log("debug", message, context), + info: (message, context) => log("info", message, context), + warn: (message, context) => log("warn", message, context), + error: (message, context) => log("error", message, context), + + progress: (current, total, message) => { + if (!shouldLog("info")) { + return; + } + const percent = Math.round((current / total) * 100); + const bar = + "█".repeat(Math.floor(percent / 5)) + + "░".repeat(20 - Math.floor(percent / 5)); + const prefix = useColors + ? chalk.cyan(`[${bar}] ${percent}%`) + : `[${bar}] ${percent}%`; + console.log(`${prefix} ${message} (${current}/${total})`); + }, + + success: (message) => { + if (!shouldLog("info")) { + return; + } + const formatted = useColors + ? chalk.green(`✓ ${message}`) + : `✓ ${message}`; + console.log(formatted); + }, + + startGroup: (name) => { + if (!shouldLog("info")) { + return; + } + const formatted = useColors + ? chalk.bold.cyan(`\n▶ ${name}`) + : `\n▶ ${name}`; + console.log(formatted); + }, + + endGroup: () => { + // Optional visual separator + }, + }; +}; + +/** + * Default logger instance + */ +export const defaultLogger = createLogger(); diff --git a/toolkit-docs-generator/src/utils/output-dir.ts b/toolkit-docs-generator/src/utils/output-dir.ts new file mode 100644 index 000000000..22b925a36 --- /dev/null +++ b/toolkit-docs-generator/src/utils/output-dir.ts @@ -0,0 +1,50 @@ +import { realpath } from "fs/promises"; +import { isAbsolute, resolve, sep } from "path"; + +type ResolveOptions = { + repoRoot?: string; + homeDir?: string; +}; + +const isSubpath = (parent: string, child: string): boolean => { + const normalizedParent = parent.endsWith(sep) ? parent : `${parent}${sep}`; + return child === parent || child.startsWith(normalizedParent); +}; + +export const resolveSafeOutputDir = async ( + outputDir: string, + options: ResolveOptions = {} +): Promise => { + const resolvedRepoRoot = resolve(options.repoRoot ?? process.cwd()); + const repoRoot = await realpath(resolvedRepoRoot).catch( + () => resolvedRepoRoot + ); + const resolvedHomeDir = options.homeDir + ? resolve(options.homeDir) + : process.env.HOME + ? resolve(process.env.HOME) + : null; + const homeDir = resolvedHomeDir + ? await realpath(resolvedHomeDir).catch(() => resolvedHomeDir) + : null; + const resolvedDir = resolve(outputDir); + const realDir = await realpath(resolvedDir).catch(() => resolvedDir); + + const forbidden = new Set(["/", repoRoot]); + if (homeDir) { + forbidden.add(homeDir); + } + + if (forbidden.has(realDir)) { + throw new Error(`Refusing to delete unsafe output directory: ${realDir}`); + } + + // If the output dir was provided as a relative path, keep it inside repo root. + if (!(isAbsolute(outputDir) || isSubpath(repoRoot, realDir))) { + throw new Error( + `Refusing to delete output directory outside repo root: ${realDir}` + ); + } + + return realDir; +}; diff --git a/toolkit-docs-generator/src/utils/progress.ts b/toolkit-docs-generator/src/utils/progress.ts new file mode 100644 index 000000000..d6c0c761e --- /dev/null +++ b/toolkit-docs-generator/src/utils/progress.ts @@ -0,0 +1,333 @@ +/** + * Progress tracking utility for CLI output + */ + +import chalk from "chalk"; + +export interface ProgressEvent { + readonly type: "start" | "update" | "complete" | "error"; + readonly toolkitId: string; + readonly current: number; + readonly total: number; + readonly toolCount?: number | undefined; + readonly message?: string | undefined; +} + +export interface ProgressTrackerConfig { + /** Total number of items to process */ + readonly total: number; + /** Progress bar width in characters (default: 30) */ + readonly barWidth?: number; + /** Show percentage (default: true) */ + readonly showPercentage?: boolean; + /** Show count (default: true) */ + readonly showCount?: boolean; + /** Show elapsed time (default: true) */ + readonly showElapsed?: boolean; + /** Callback when progress updates */ + readonly onUpdate?: ((event: ProgressEvent) => void) | undefined; +} + +interface ToolkitProgress { + readonly toolkitId: string; + readonly status: "pending" | "in_progress" | "done" | "error"; + readonly toolCount?: number | undefined; + readonly startedAt?: number | undefined; + readonly completedAt?: number | undefined; +} + +/** + * Format milliseconds to human-readable duration + */ +const formatDuration = (ms: number): string => { + if (ms < 1000) { + return `${ms}ms`; + } + const seconds = Math.floor(ms / 1000); + if (seconds < 60) { + return `${seconds}s`; + } + const minutes = Math.floor(seconds / 60); + const remainingSeconds = seconds % 60; + if (minutes < 60) { + return `${minutes}m ${remainingSeconds}s`; + } + const hours = Math.floor(minutes / 60); + const remainingMinutes = minutes % 60; + return `${hours}h ${remainingMinutes}m`; +}; + +/** + * Create a visual progress bar + */ +const createProgressBar = ( + current: number, + total: number, + width: number +): string => { + const percentage = total > 0 ? current / total : 0; + const filled = Math.round(percentage * width); + const empty = width - filled; + + const filledBar = "█".repeat(filled); + const emptyBar = "░".repeat(empty); + + return `${chalk.green(filledBar)}${chalk.dim(emptyBar)}`; +}; + +/** + * Progress tracker for batch operations + */ +export class ProgressTracker { + private readonly total: number; + private readonly barWidth: number; + private readonly showPercentage: boolean; + private readonly showCount: boolean; + private readonly showElapsed: boolean; + private readonly onUpdate: ((event: ProgressEvent) => void) | undefined; + private readonly startedAt: number; + private readonly toolkitProgress: Map; + private completed: number; + + constructor(config: ProgressTrackerConfig) { + this.total = config.total; + this.barWidth = config.barWidth ?? 30; + this.showPercentage = config.showPercentage ?? true; + this.showCount = config.showCount ?? true; + this.showElapsed = config.showElapsed ?? true; + this.onUpdate = config.onUpdate; + this.startedAt = Date.now(); + this.toolkitProgress = new Map(); + this.completed = 0; + } + + /** + * Mark a toolkit as started + */ + start(toolkitId: string): void { + this.toolkitProgress.set(toolkitId, { + toolkitId, + status: "in_progress", + startedAt: Date.now(), + }); + + this.onUpdate?.({ + type: "start", + toolkitId, + current: this.completed, + total: this.total, + }); + } + + /** + * Mark a toolkit as completed + */ + complete(toolkitId: string, toolCount?: number): void { + const existing = this.toolkitProgress.get(toolkitId); + this.toolkitProgress.set(toolkitId, { + toolkitId, + status: "done", + toolCount, + startedAt: existing?.startedAt, + completedAt: Date.now(), + }); + + this.completed += 1; + + this.onUpdate?.({ + type: "complete", + toolkitId, + current: this.completed, + total: this.total, + toolCount, + }); + } + + /** + * Mark a toolkit as errored + */ + error(toolkitId: string, message: string): void { + const existing = this.toolkitProgress.get(toolkitId); + this.toolkitProgress.set(toolkitId, { + toolkitId, + status: "error", + startedAt: existing?.startedAt, + completedAt: Date.now(), + }); + + this.completed += 1; + + this.onUpdate?.({ + type: "error", + toolkitId, + current: this.completed, + total: this.total, + message, + }); + } + + /** + * Get the current progress percentage + */ + getPercentage(): number { + return this.total > 0 ? Math.round((this.completed / this.total) * 100) : 0; + } + + /** + * Get elapsed time in milliseconds + */ + getElapsedMs(): number { + return Date.now() - this.startedAt; + } + + /** + * Estimate remaining time based on current progress + */ + getEstimatedRemainingMs(): number | null { + if (this.completed === 0) { + return null; + } + const avgTimePerItem = this.getElapsedMs() / this.completed; + const remaining = this.total - this.completed; + return Math.round(avgTimePerItem * remaining); + } + + /** + * Get a formatted progress string for display + */ + getProgressString(currentToolkit?: string): string { + const parts: string[] = []; + + // Progress bar + const bar = createProgressBar(this.completed, this.total, this.barWidth); + parts.push(bar); + + // Count + if (this.showCount) { + parts.push(chalk.cyan(`${this.completed}/${this.total}`)); + } + + // Percentage + if (this.showPercentage) { + parts.push(chalk.dim(`(${this.getPercentage()}%)`)); + } + + // Current toolkit + if (currentToolkit) { + parts.push(chalk.yellow(currentToolkit)); + } + + // Elapsed time + if (this.showElapsed) { + const elapsed = formatDuration(this.getElapsedMs()); + const remaining = this.getEstimatedRemainingMs(); + if (remaining !== null && this.completed < this.total) { + parts.push( + chalk.dim( + `[${elapsed} elapsed, ~${formatDuration(remaining)} remaining]` + ) + ); + } else { + parts.push(chalk.dim(`[${elapsed}]`)); + } + } + + return parts.join(" "); + } + + /** + * Get summary statistics + */ + getSummary(): { + total: number; + completed: number; + errors: number; + totalTools: number; + elapsed: string; + avgTimePerToolkit: string; + } { + let errors = 0; + let totalTools = 0; + + for (const progress of this.toolkitProgress.values()) { + if (progress.status === "error") { + errors += 1; + } + if (progress.toolCount) { + totalTools += progress.toolCount; + } + } + + const elapsed = this.getElapsedMs(); + const avgTime = this.completed > 0 ? elapsed / this.completed : 0; + + return { + total: this.total, + completed: this.completed, + errors, + totalTools, + elapsed: formatDuration(elapsed), + avgTimePerToolkit: formatDuration(avgTime), + }; + } +} + +/** + * Create a progress callback for use with DataMerger + */ +export const createMergerProgressCallback = + ( + tracker: ProgressTracker, + getSpinnerText: (text: string) => void + ): (( + toolkitId: string, + status: "start" | "done", + toolCount?: number + ) => void) => + (toolkitId: string, status: "start" | "done", toolCount?: number) => { + if (status === "start") { + tracker.start(toolkitId); + getSpinnerText(tracker.getProgressString(toolkitId)); + } else { + tracker.complete(toolkitId, toolCount); + getSpinnerText(tracker.getProgressString()); + } + }; + +/** + * Extended progress callback interface for DataMerger + */ +export type ExtendedProgressCallback = ( + toolkitId: string, + status: "start" | "done", + toolCount?: number +) => void; + +/** + * Factory function to create a progress tracker + */ +export const createProgressTracker = ( + config: ProgressTrackerConfig +): ProgressTracker => new ProgressTracker(config); + +/** + * Format a summary line for completed toolkit + */ +export const formatToolkitComplete = ( + toolkitId: string, + toolCount: number, + durationMs?: number +): string => { + const duration = durationMs + ? chalk.dim(` (${formatDuration(durationMs)})`) + : ""; + return `${chalk.green("✓")} ${toolkitId}: ${toolCount} tools${duration}`; +}; + +/** + * Format a summary line for errored toolkit + */ +export const formatToolkitError = (toolkitId: string, error: string): string => + `${chalk.red("✗")} ${toolkitId}: ${error}`; + +export { formatDuration }; diff --git a/toolkit-docs-generator/src/utils/provider-matching.ts b/toolkit-docs-generator/src/utils/provider-matching.ts new file mode 100644 index 000000000..f03afe4a9 --- /dev/null +++ b/toolkit-docs-generator/src/utils/provider-matching.ts @@ -0,0 +1,64 @@ +/** + * Provider / toolkit ID matching helpers + * + * The generator accepts user input like: + * - "GithubApi" + * - "github-api" + * - "GitHub API" + * + * This module provides best-effort normalization and matching against known + * toolkit metadata IDs. + */ + +import type { ProviderVersion } from "../types/index.js"; + +const PROVIDER_LOOKUP_KEY_REGEX = /[^a-z0-9]/g; + +export const normalizeProviderKey = (value: string): string => + value.toLowerCase().replace(PROVIDER_LOOKUP_KEY_REGEX, ""); + +export type MinimalToolkitIdentity = { + id: string; + label: string; +}; + +/** + * Resolve provider IDs from user input using a known toolkit list. + * + * - Matches by toolkit `id` and `label` + * - Ignores spaces, hyphens, underscores, and casing + */ +export const resolveProviderIdsFromMetadata = ( + providers: ProviderVersion[], + toolkits: readonly MinimalToolkitIdentity[] +): ProviderVersion[] => { + if (toolkits.length === 0) return providers; + + const idByKey = new Map(); + for (const t of toolkits) { + idByKey.set(normalizeProviderKey(t.id), t.id); + idByKey.set(normalizeProviderKey(t.label), t.id); + } + + const resolveOne = (input: string): string => { + const key = normalizeProviderKey(input); + const direct = idByKey.get(key); + if (direct) return direct; + + // Handle separators: "github-api" / "github_api". + if (key.endsWith("api")) { + const baseKey = key.slice(0, -3); + const baseApi = idByKey.get(`${baseKey}api`); + if (baseApi) return baseApi; + const base = idByKey.get(baseKey); + if (base) return base; + } + + return input; + }; + + return providers.map((pv) => ({ + ...pv, + provider: resolveOne(pv.provider), + })); +}; diff --git a/toolkit-docs-generator/src/utils/retry.ts b/toolkit-docs-generator/src/utils/retry.ts new file mode 100644 index 000000000..046540e2a --- /dev/null +++ b/toolkit-docs-generator/src/utils/retry.ts @@ -0,0 +1,144 @@ +/** + * Retry utility with exponential backoff + */ + +export interface RetryOptions { + /** Maximum number of retry attempts (default: 3) */ + readonly maxRetries?: number | undefined; + /** Initial delay in milliseconds (default: 1000) */ + readonly initialDelayMs?: number | undefined; + /** Maximum delay in milliseconds (default: 30000) */ + readonly maxDelayMs?: number | undefined; + /** Multiplier for exponential backoff (default: 2) */ + readonly backoffMultiplier?: number | undefined; + /** Whether to add jitter to delays (default: true) */ + readonly jitter?: boolean | undefined; + /** Optional callback for logging retry attempts */ + readonly onRetry?: + | ((attempt: number, error: Error, delayMs: number) => void) + | undefined; + /** Predicate to determine if an error should trigger a retry */ + readonly shouldRetry?: ((error: Error) => boolean) | undefined; +} + +interface ResolvedRetryOptions { + maxRetries: number; + initialDelayMs: number; + maxDelayMs: number; + backoffMultiplier: number; + jitter: boolean; +} + +const DEFAULT_OPTIONS: ResolvedRetryOptions = { + maxRetries: 3, + initialDelayMs: 1000, + maxDelayMs: 30_000, + backoffMultiplier: 2, + jitter: true, +}; + +const sleep = (ms: number): Promise => + new Promise((resolve) => setTimeout(resolve, ms)); + +const resolveOptions = (options?: RetryOptions): ResolvedRetryOptions => ({ + maxRetries: options?.maxRetries ?? DEFAULT_OPTIONS.maxRetries, + initialDelayMs: options?.initialDelayMs ?? DEFAULT_OPTIONS.initialDelayMs, + maxDelayMs: options?.maxDelayMs ?? DEFAULT_OPTIONS.maxDelayMs, + backoffMultiplier: + options?.backoffMultiplier ?? DEFAULT_OPTIONS.backoffMultiplier, + jitter: options?.jitter ?? DEFAULT_OPTIONS.jitter, +}); + +const calculateDelay = ( + attempt: number, + options: ResolvedRetryOptions +): number => { + const baseDelay = + options.initialDelayMs * options.backoffMultiplier ** (attempt - 1); + const cappedDelay = Math.min(baseDelay, options.maxDelayMs); + + if (options.jitter) { + // Add random jitter between 0-25% of the delay + const jitterAmount = cappedDelay * 0.25 * Math.random(); + return Math.floor(cappedDelay + jitterAmount); + } + + return cappedDelay; +}; + +/** + * Check if an error is likely transient and should be retried + */ +const isTransientError = (error: Error): boolean => { + const message = error.message.toLowerCase(); + + // Common transient error patterns + const transientPatterns = [ + "timeout", + "econnreset", + "econnrefused", + "enotfound", + "socket hang up", + "network", + "rate limit", + "too many requests", + "429", + "500", + "502", + "503", + "504", + "overloaded", + "temporarily unavailable", + "service unavailable", + ]; + + return transientPatterns.some((pattern) => message.includes(pattern)); +}; + +/** + * Execute a function with retry logic + */ +export const withRetry = async ( + fn: () => Promise, + options?: RetryOptions +): Promise => { + const opts = resolveOptions(options); + const shouldRetryFn = options?.shouldRetry ?? isTransientError; + + let lastError: Error | undefined; + + for (let attempt = 1; attempt <= opts.maxRetries + 1; attempt++) { + try { + return await fn(); + } catch (error) { + lastError = error instanceof Error ? error : new Error(String(error)); + + // Check if we should retry + const isLastAttempt = attempt > opts.maxRetries; + const canRetry = !isLastAttempt && shouldRetryFn(lastError); + + if (!canRetry) { + throw lastError; + } + + const delayMs = calculateDelay(attempt, opts); + options?.onRetry?.(attempt, lastError, delayMs); + + await sleep(delayMs); + } + } + + // This should never be reached, but TypeScript needs it + throw lastError ?? new Error("Retry failed"); +}; + +/** + * Create a retry wrapper for a specific function + */ +export const createRetryWrapper = + ( + fn: (...args: TArgs) => Promise, + options?: RetryOptions + ): ((...args: TArgs) => Promise) => + (...args: TArgs) => + withRetry(() => fn(...args), options); diff --git a/toolkit-docs-generator/src/utils/run-logs.ts b/toolkit-docs-generator/src/utils/run-logs.ts new file mode 100644 index 000000000..47a4d11a6 --- /dev/null +++ b/toolkit-docs-generator/src/utils/run-logs.ts @@ -0,0 +1,75 @@ +/** + * Run log utilities for CLI workflows + */ + +import { appendFile, mkdir, readFile, writeFile } from "fs/promises"; +import { dirname } from "path"; + +export interface LogFilePaths { + readonly runLogPath: string; + readonly changeLogPath: string; +} + +export interface LogEntry { + readonly title: string; + readonly details: readonly string[]; +} + +export interface FailedToolEntry { + readonly toolkitId: string; + readonly toolName: string; + readonly qualifiedName: string; + readonly reason: string; +} + +export interface FailedToolsReport { + readonly generatedAt: string; + readonly toolkits: readonly string[]; + readonly failedToolkits: readonly string[]; + readonly tools: readonly FailedToolEntry[]; +} + +const ensureLogDir = async (filePath: string): Promise => { + await mkdir(dirname(filePath), { recursive: true }); +}; + +const formatEntry = (entry: LogEntry): string[] => { + const timestamp = new Date().toISOString(); + const lines = [`${timestamp} ${entry.title}`]; + for (const detail of entry.details) { + lines.push(` - ${detail}`); + } + lines.push(""); + return lines; +}; + +export const appendLogEntry = async ( + filePath: string, + entry: LogEntry +): Promise => { + await ensureLogDir(filePath); + const lines = formatEntry(entry); + await appendFile(filePath, `${lines.join("\n")}\n`, "utf-8"); +}; + +export const writeFailedToolsReport = async ( + filePath: string, + report: FailedToolsReport +): Promise => { + await ensureLogDir(filePath); + const content = JSON.stringify(report, null, 2); + await writeFile(filePath, content, "utf-8"); +}; + +export const readFailedToolsReport = async ( + filePath: string +): Promise => { + const content = await readFile(filePath, "utf-8"); + const parsed = JSON.parse(content) as FailedToolsReport; + if ( + !(parsed && Array.isArray(parsed.toolkits) && Array.isArray(parsed.tools)) + ) { + throw new Error("Invalid failed tools report format."); + } + return parsed; +}; diff --git a/toolkit-docs-generator/test-output-llm-fail/github.json b/toolkit-docs-generator/test-output-llm-fail/github.json new file mode 100644 index 000000000..257703330 --- /dev/null +++ b/toolkit-docs-generator/test-output-llm-fail/github.json @@ -0,0 +1,184 @@ +{ + "id": "Github", + "label": "GitHub", + "version": "1.0.0", + "description": "GitHub repository and collaboration tools", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/github.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/github", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "github", + "allScopes": ["public_repo", "repo"] + }, + "tools": [ + { + "name": "CreateIssue", + "qualifiedName": "Github.CreateIssue", + "fullyQualifiedName": "Github.CreateIssue@1.0.0", + "description": "Create a new issue in a GitHub repository. Optionally add the issue to a project by specifying the project number.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The owner (user or organization) of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": true, + "description": "The title of the issue", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "The body content of the issue (supports Markdown)", + "enum": null, + "inferrable": true + }, + { + "name": "labels", + "type": "array", + "innerType": "string", + "required": false, + "description": "Labels to add to the issue", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": ["repo"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "object", + "description": "The created issue object with id, number, url, and other details" + }, + "documentationChunks": [] + }, + { + "name": "SetStarred", + "qualifiedName": "Github.SetStarred", + "fullyQualifiedName": "Github.SetStarred@1.0.0", + "description": "Star or unstar a GitHub repository for the authenticated user.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The owner of the repository to star/unstar", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository to star/unstar", + "enum": null, + "inferrable": true + }, + { + "name": "starred", + "type": "boolean", + "required": true, + "description": "True to star the repository, false to unstar it", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": ["public_repo"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "object", + "description": "Confirmation of the star/unstar action" + }, + "documentationChunks": [] + }, + { + "name": "ListPullRequests", + "qualifiedName": "Github.ListPullRequests", + "fullyQualifiedName": "Github.ListPullRequests@1.0.0", + "description": "List pull requests in a GitHub repository with optional filtering.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The owner of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "Filter by pull request state", + "enum": ["open", "closed", "all"], + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "Number of results per page (max 100)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": ["repo"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "array", + "description": "List of pull request objects" + }, + "documentationChunks": [] + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-27T20:18:51.477Z" +} diff --git a/toolkit-docs-generator/test-output-llm-fail/index.json b/toolkit-docs-generator/test-output-llm-fail/index.json new file mode 100644 index 000000000..fff378142 --- /dev/null +++ b/toolkit-docs-generator/test-output-llm-fail/index.json @@ -0,0 +1,15 @@ +{ + "generatedAt": "2026-01-27T20:18:51.479Z", + "version": "1.0.0", + "toolkits": [ + { + "id": "Github", + "label": "GitHub", + "version": "1.0.0", + "category": "development", + "type": "arcade", + "toolCount": 3, + "authType": "oauth2" + } + ] +} diff --git a/toolkit-docs-generator/test-output-scenarios-rerun/github.json b/toolkit-docs-generator/test-output-scenarios-rerun/github.json new file mode 100644 index 000000000..22d474735 --- /dev/null +++ b/toolkit-docs-generator/test-output-scenarios-rerun/github.json @@ -0,0 +1,52 @@ +{ + "id": "Github", + "label": "GitHub", + "version": "1.0.0", + "description": "GitHub repository and collaboration tools", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/github.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/github", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "github", + "allScopes": ["repo"] + }, + "tools": [ + { + "name": "CreateIssue", + "qualifiedName": "Github.CreateIssue", + "fullyQualifiedName": "Github.CreateIssue@1.0.0", + "description": "Create a new issue in a GitHub repository", + "parameters": [ + { + "name": "title", + "type": "string", + "required": true, + "description": "The title of the issue", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": ["repo"] + }, + "secrets": [], + "secretsInfo": [], + "output": null, + "documentationChunks": [] + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-27T20:15:09.442Z" +} diff --git a/toolkit-docs-generator/test-output-scenarios-rerun/index.json b/toolkit-docs-generator/test-output-scenarios-rerun/index.json new file mode 100644 index 000000000..80ec74b5a --- /dev/null +++ b/toolkit-docs-generator/test-output-scenarios-rerun/index.json @@ -0,0 +1,33 @@ +{ + "generatedAt": "2026-01-27T20:15:09.444Z", + "version": "1.0.0", + "toolkits": [ + { + "id": "Github", + "label": "GitHub", + "version": "1.0.0", + "category": "development", + "type": "arcade", + "toolCount": 1, + "authType": "oauth2" + }, + { + "id": "Jira", + "label": "Jira", + "version": "1.0.0", + "category": "development", + "type": "arcade", + "toolCount": 1, + "authType": "oauth2" + }, + { + "id": "Slack", + "label": "Slack", + "version": "1.2.0", + "category": "social", + "type": "arcade", + "toolCount": 2, + "authType": "oauth2" + } + ] +} diff --git a/toolkit-docs-generator/test-output-scenarios-rerun/jira.json b/toolkit-docs-generator/test-output-scenarios-rerun/jira.json new file mode 100644 index 000000000..22d950bef --- /dev/null +++ b/toolkit-docs-generator/test-output-scenarios-rerun/jira.json @@ -0,0 +1,60 @@ +{ + "id": "Jira", + "label": "Jira", + "version": "1.0.0", + "description": "Jira project management tools", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/jira.svg", + "isBYOC": true, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/jira", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "jira", + "allScopes": ["write:jira-work"] + }, + "tools": [ + { + "name": "CreateIssue", + "qualifiedName": "Jira.CreateIssue", + "fullyQualifiedName": "Jira.CreateIssue@1.0.0", + "description": "Create a new Jira issue", + "parameters": [ + { + "name": "project", + "type": "string", + "required": true, + "description": "Project key", + "enum": null, + "inferrable": true + }, + { + "name": "summary", + "type": "string", + "required": true, + "description": "Issue summary", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "jira", + "providerType": "oauth2", + "scopes": ["write:jira-work"] + }, + "secrets": [], + "secretsInfo": [], + "output": null, + "documentationChunks": [] + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-27T20:09:46.043Z" +} diff --git a/toolkit-docs-generator/test-output-scenarios-rerun/slack.json b/toolkit-docs-generator/test-output-scenarios-rerun/slack.json new file mode 100644 index 000000000..59965ae7c --- /dev/null +++ b/toolkit-docs-generator/test-output-scenarios-rerun/slack.json @@ -0,0 +1,91 @@ +{ + "id": "Slack", + "label": "Slack", + "version": "1.2.0", + "description": "Slack communication tools", + "metadata": { + "category": "social", + "iconUrl": "https://design-system.arcade.dev/icons/slack.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/social/slack", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "slack", + "allScopes": ["channels:read", "chat:write"] + }, + "tools": [ + { + "name": "SendMessage", + "qualifiedName": "Slack.SendMessage", + "fullyQualifiedName": "Slack.SendMessage@1.2.0", + "description": "Send a message to a Slack channel or direct message.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "The ID of the channel or conversation", + "enum": null, + "inferrable": true + }, + { + "name": "text", + "type": "string", + "required": true, + "description": "The message text", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["chat:write"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "object", + "description": "Message send confirmation" + }, + "documentationChunks": [] + }, + { + "name": "ListChannels", + "qualifiedName": "Slack.ListChannels", + "fullyQualifiedName": "Slack.ListChannels@1.2.0", + "description": "List channels in the workspace.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of channels to return", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["channels:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "array", + "description": "List of channel objects" + }, + "documentationChunks": [] + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-27T20:10:42.846Z" +} diff --git a/toolkit-docs-generator/test-output/index.json b/toolkit-docs-generator/test-output/index.json new file mode 100644 index 000000000..8744fe594 --- /dev/null +++ b/toolkit-docs-generator/test-output/index.json @@ -0,0 +1,14 @@ +{ + "generatedAt": "2026-01-26T16:53:48.008Z", + "version": "1.0.0", + "toolkits": [ + { + "id": "Slack", + "label": "Slack", + "version": "2.0.0", + "category": "social", + "toolCount": 8, + "authType": "oauth2" + } + ] +} diff --git a/toolkit-docs-generator/test-output/slack.json b/toolkit-docs-generator/test-output/slack.json new file mode 100644 index 000000000..4f54ae22e --- /dev/null +++ b/toolkit-docs-generator/test-output/slack.json @@ -0,0 +1,531 @@ +{ + "id": "Slack", + "label": "Slack", + "version": "2.0.0", + "description": "Arcade.dev LLM tools for Slack", + "metadata": { + "category": "social", + "iconUrl": "https://design-system.arcade.dev/icons/slack.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/social/slack", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "slack", + "allScopes": [ + "channels:history", + "channels:read", + "chat:write", + "groups:history", + "groups:read", + "im:history", + "im:read", + "im:write", + "mpim:history", + "mpim:read", + "users:read", + "users:read.email" + ] + }, + "tools": [ + { + "name": "GetConversationMetadata", + "qualifiedName": "Slack.GetConversationMetadata", + "fullyQualifiedName": "Slack.GetConversationMetadata@2.0.0", + "description": "Get metadata of a Channel, a Direct Message (IM / DM) or a Multi-Person (MPIM) conversation.\n\nUse this tool to retrieve metadata about a conversation with a conversation_id, a channel name,\nor by the user_id(s), username(s), and/or email(s) of the user(s) in the conversation.\n\nThis tool does not return the messages in a conversation. To get the messages, use the\n'Slack.GetMessages' tool instead.\n\nProvide exactly one of:\n- conversation_id; or\n- channel_name; or\n- any combination of user_ids, usernames, and/or emails.", + "parameters": [ + { + "name": "conversation_id", + "type": "string", + "required": false, + "description": "The ID of the conversation to get metadata for", + "enum": null, + "inferrable": true + }, + { + "name": "channel_name", + "type": "string", + "required": false, + "description": "The name of the channel to get metadata for. Prefer providing a conversation_id, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "usernames", + "type": "array", + "innerType": "string", + "required": false, + "description": "The usernames of the users to get the conversation metadata. Prefer providing user_ids and/or emails, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "The emails of the users to get the conversation metadata.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of the users to get the conversation metadata.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [ + "channels:read", + "groups:read", + "mpim:read", + "im:read", + "users:read", + "users:read.email" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The conversation metadata." + }, + "documentationChunks": [] + }, + { + "name": "GetMessages", + "qualifiedName": "Slack.GetMessages", + "fullyQualifiedName": "Slack.GetMessages@2.0.0", + "description": "Get messages in a Slack Channel, DM (direct message) or MPIM (multi-person) conversation.\n\nProvide exactly one of:\n- conversation_id; or\n- channel_name; or\n- any combination of user_ids, usernames, and/or emails.\n\nTo filter messages by an absolute datetime, use 'oldest_datetime' and/or 'latest_datetime'. If\nonly 'oldest_datetime' is provided, it will return messages from the oldest_datetime to the\ncurrent time. If only 'latest_datetime' is provided, it will return messages since the\nbeginning of the conversation to the latest_datetime.\n\nTo filter messages by a relative datetime (e.g. 3 days ago, 1 hour ago, etc.), use\n'oldest_relative' and/or 'latest_relative'. If only 'oldest_relative' is provided, it will\nreturn messages from the oldest_relative to the current time. If only 'latest_relative' is\nprovided, it will return messages from the current time to the latest_relative.\n\nDo not provide both 'oldest_datetime' and 'oldest_relative' or both 'latest_datetime' and\n'latest_relative'.\n\nLeave all arguments with the default None to get messages without date/time filtering", + "parameters": [ + { + "name": "conversation_id", + "type": "string", + "required": false, + "description": "The ID of the conversation to get messages from. Provide exactly one of conversation_id OR any combination of user_ids, usernames, and/or emails.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_name", + "type": "string", + "required": false, + "description": "The name of the channel to get messages from. Prefer providing a conversation_id, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of the users in the conversation to get messages from.", + "enum": null, + "inferrable": true + }, + { + "name": "usernames", + "type": "array", + "innerType": "string", + "required": false, + "description": "The usernames of the users in the conversation to get messages from. Prefer providinguser_ids and/or emails, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "The emails of the users in the conversation to get messages from.", + "enum": null, + "inferrable": true + }, + { + "name": "oldest_relative", + "type": "string", + "required": false, + "description": "The oldest message to include in the results, specified as a time offset from the current time in the format 'DD:HH:MM'", + "enum": null, + "inferrable": true + }, + { + "name": "latest_relative", + "type": "string", + "required": false, + "description": "The latest message to include in the results, specified as a time offset from the current time in the format 'DD:HH:MM'", + "enum": null, + "inferrable": true + }, + { + "name": "oldest_datetime", + "type": "string", + "required": false, + "description": "The oldest message to include in the results, specified as a datetime object in the format 'YYYY-MM-DD HH:MM:SS'", + "enum": null, + "inferrable": true + }, + { + "name": "latest_datetime", + "type": "string", + "required": false, + "description": "The latest message to include in the results, specified as a datetime object in the format 'YYYY-MM-DD HH:MM:SS'", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of messages to return. Defaults to 20. Maximum is 100.", + "enum": null, + "inferrable": true + }, + { + "name": "next_cursor", + "type": "string", + "required": false, + "description": "The cursor to use for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [ + "channels:read", + "groups:read", + "mpim:read", + "im:read", + "users:read", + "users:read.email", + "channels:history", + "groups:history", + "mpim:history", + "im:history" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The messages in a Slack Channel, DM (direct message) or MPIM (multi-person) conversation." + }, + "documentationChunks": [] + }, + { + "name": "GetUsersInConversation", + "qualifiedName": "Slack.GetUsersInConversation", + "fullyQualifiedName": "Slack.GetUsersInConversation@2.0.0", + "description": "Get the users in a Slack conversation (Channel, DM/IM, or MPIM) by its ID or by channel name.\n\nProvide exactly one of conversation_id or channel_name. Prefer providing a conversation_id,\nwhen available, since the performance is better.", + "parameters": [ + { + "name": "conversation_id", + "type": "string", + "required": false, + "description": "The ID of the conversation to get users in.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_name", + "type": "string", + "required": false, + "description": "The name of the channel to get users in. Prefer providing a conversation_id, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of users to return. Defaults to 200. Maximum is 500.", + "enum": null, + "inferrable": true + }, + { + "name": "next_cursor", + "type": "string", + "required": false, + "description": "The cursor to use for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [ + "channels:read", + "groups:read", + "im:read", + "mpim:read", + "users:read", + "users:read.email" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Information about each user in the conversation" + }, + "documentationChunks": [] + }, + { + "name": "GetUsersInfo", + "qualifiedName": "Slack.GetUsersInfo", + "fullyQualifiedName": "Slack.GetUsersInfo@2.0.0", + "description": "Get the information of one or more users in Slack by ID, username, and/or email.\n\nProvide any combination of user_ids, usernames, and/or emails. If you need to retrieve\ndata about multiple users, DO NOT CALL THE TOOL MULTIPLE TIMES. Instead, call it once\nwith all the user_ids, usernames, and/or emails. IF YOU CALL THIS TOOL MULTIPLE TIMES\nUNNECESSARILY, YOU WILL RELEASE MORE CO2 IN THE ATMOSPHERE AND CONTRIBUTE TO GLOBAL WARMING.\n\nIf you need to get metadata or messages of a conversation, use the\n`Slack.GetConversationMetadata` or `Slack.GetMessages` tool instead. These\ntools accept user_ids, usernames, and/or emails. Do not retrieve users' info first,\nas it is inefficient, releases more CO2 in the atmosphere, and contributes to climate change.", + "parameters": [ + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The IDs of the users to get", + "enum": null, + "inferrable": true + }, + { + "name": "usernames", + "type": "array", + "innerType": "string", + "required": false, + "description": "The usernames of the users to get. Prefer retrieving by user_ids and/or emails, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "The emails of the users to get", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["users:read", "users:read.email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The users' information" + }, + "documentationChunks": [] + }, + { + "name": "ListConversations", + "qualifiedName": "Slack.ListConversations", + "fullyQualifiedName": "Slack.ListConversations@2.0.0", + "description": "List metadata for Slack conversations (channels, DMs, MPIMs) the user is a member of.\n\nThis tool does not return the messages in a conversation. To get the messages, use the\n'Slack.GetMessages' tool instead. Calling this tool when the user is asking for messages\nwill release too much CO2 in the atmosphere and contribute to global warming.", + "parameters": [ + { + "name": "conversation_types", + "type": "array", + "innerType": "string", + "required": false, + "description": "Optionally filter by the type(s) of conversations. Defaults to None (all types).", + "enum": [ + "public_channel", + "private_channel", + "multi_person_direct_message", + "direct_message" + ], + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of conversations to list. Defaults to 200. Maximum is 500.", + "enum": null, + "inferrable": true + }, + { + "name": "next_cursor", + "type": "string", + "required": false, + "description": "The cursor to use for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["channels:read", "groups:read", "im:read", "mpim:read"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The list of conversations found with metadata" + }, + "documentationChunks": [] + }, + { + "name": "ListUsers", + "qualifiedName": "Slack.ListUsers", + "fullyQualifiedName": "Slack.ListUsers@2.0.0", + "description": "List all users in the authenticated user's Slack team.\n\nIf you need to get metadata or messages of a conversation, use the\n`Slack.GetConversationMetadata` tool or `Slack.GetMessages` tool instead. These\ntools accept a user_id, username, and/or email. Do not use this tool to first retrieve user(s),\nas it is inefficient and releases more CO2 in the atmosphere, contributing to climate change.", + "parameters": [ + { + "name": "exclude_bots", + "type": "boolean", + "required": false, + "description": "Whether to exclude bots from the results. Defaults to True.", + "enum": null, + "inferrable": true + }, + { + "name": "limit", + "type": "integer", + "required": false, + "description": "The maximum number of users to return. Defaults to 200. Maximum is 500.", + "enum": null, + "inferrable": true + }, + { + "name": "next_cursor", + "type": "string", + "required": false, + "description": "The next cursor token to use for pagination.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["users:read", "users:read.email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The users' info" + }, + "documentationChunks": [] + }, + { + "name": "SendMessage", + "qualifiedName": "Slack.SendMessage", + "fullyQualifiedName": "Slack.SendMessage@2.0.0", + "description": "Send a message to a Channel, Direct Message (IM/DM), or Multi-Person (MPIM) conversation\n\nProvide exactly one of:\n- channel_name; or\n- conversation_id; or\n- any combination of user_ids, usernames, and/or emails.\n\nIn case multiple user_ids, usernames, and/or emails are provided, the tool will open a\nmulti-person conversation with the specified people and send the message to it.", + "parameters": [ + { + "name": "message", + "type": "string", + "required": true, + "description": "The content of the message to send.", + "enum": null, + "inferrable": true + }, + { + "name": "channel_name", + "type": "string", + "required": false, + "description": "The channel name to send the message to. Prefer providing a conversation_id, when available, since the performance is better.", + "enum": null, + "inferrable": true + }, + { + "name": "conversation_id", + "type": "string", + "required": false, + "description": "The conversation ID to send the message to.", + "enum": null, + "inferrable": true + }, + { + "name": "user_ids", + "type": "array", + "innerType": "string", + "required": false, + "description": "The Slack user IDs of the people to message.", + "enum": null, + "inferrable": true + }, + { + "name": "emails", + "type": "array", + "innerType": "string", + "required": false, + "description": "The emails of the people to message.", + "enum": null, + "inferrable": true + }, + { + "name": "usernames", + "type": "array", + "innerType": "string", + "required": false, + "description": "The Slack usernames of the people to message. Prefer providing user_ids and/or emails, when available, since the performance is better.", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": [ + "channels:read", + "groups:read", + "mpim:read", + "im:read", + "users:read", + "users:read.email", + "chat:write", + "im:write" + ] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "The response from the Slack API" + }, + "documentationChunks": [] + }, + { + "name": "WhoAmI", + "qualifiedName": "Slack.WhoAmI", + "fullyQualifiedName": "Slack.WhoAmI@2.0.0", + "description": "Get comprehensive user profile and Slack information.\n\nThis tool provides detailed information about the authenticated user including\ntheir name, email, profile picture, and other important profile details from\nSlack services.", + "parameters": [], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["users:read", "users:read.email"] + }, + "secrets": [], + "secretsInfo": [], + "output": { + "type": "json", + "description": "Get comprehensive user profile and Slack information." + }, + "documentationChunks": [] + } + ], + "documentationChunks": [], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-26T16:53:47.999Z" +} diff --git a/toolkit-docs-generator/tests/cli/api-source.test.ts b/toolkit-docs-generator/tests/cli/api-source.test.ts new file mode 100644 index 000000000..d1c137f01 --- /dev/null +++ b/toolkit-docs-generator/tests/cli/api-source.test.ts @@ -0,0 +1,57 @@ +import { afterEach, beforeEach, describe, expect, it } from "vitest"; +import { resolveApiSource } from "../../src/cli/api-source.js"; + +const ORIGINAL_ENV = { ...process.env }; + +const resetEnv = () => { + for (const key of Object.keys(process.env)) { + delete process.env[key]; + } + Object.assign(process.env, ORIGINAL_ENV); +}; + +describe("resolveApiSource", () => { + beforeEach(() => { + resetEnv(); + // biome-ignore lint/performance/noDelete: Required to actually remove env vars + delete process.env.ENGINE_API_KEY; + // biome-ignore lint/performance/noDelete: Required to actually remove env vars + delete process.env.ENGINE_API_URL; + // biome-ignore lint/performance/noDelete: Required to actually remove env vars + delete process.env.ARCADE_API_KEY; + // biome-ignore lint/performance/noDelete: Required to actually remove env vars + delete process.env.ARCADE_API_URL; + }); + + afterEach(() => { + resetEnv(); + }); + + it("returns list-tools only when explicitly requested", () => { + expect(resolveApiSource({ apiSource: "list-tools" })).toBe("list-tools"); + }); + + it("accepts engine as an alias for tool-metadata", () => { + expect(resolveApiSource({ apiSource: "engine" })).toBe("tool-metadata"); + }); + + it("rejects unsupported aliases", () => { + expect(() => resolveApiSource({ apiSource: "arcade" })).toThrow( + 'Invalid --api-source "arcade"' + ); + }); + + it("auto-selects tool-metadata when Engine credentials exist", () => { + process.env.ENGINE_API_KEY = "test-key"; + process.env.ENGINE_API_URL = "https://api.arcade.dev"; + + expect(resolveApiSource({})).toBe("tool-metadata"); + }); + + it("does not auto-select list-tools from Arcade credentials", () => { + process.env.ARCADE_API_KEY = "test-key"; + process.env.ARCADE_API_URL = "https://api.arcade.dev"; + + expect(resolveApiSource({})).toBe("mock"); + }); +}); diff --git a/toolkit-docs-generator/tests/diff/summary-diff.test.ts b/toolkit-docs-generator/tests/diff/summary-diff.test.ts new file mode 100644 index 000000000..39e00ab99 --- /dev/null +++ b/toolkit-docs-generator/tests/diff/summary-diff.test.ts @@ -0,0 +1,164 @@ +import { describe, expect, it } from "vitest"; + +import { + detectSummaryChanges, + formatSummaryChangeSummary, + getChangedToolkitIdsFromSummary, + hasSummaryChanges, + type SummaryToolkit, +} from "../../src/diff/index.js"; +import type { MergedToolkit } from "../../src/types/index.js"; + +const createMergedToolkit = (id: string, version: string): MergedToolkit => ({ + id, + label: id, + version, + description: "A toolkit", + metadata: { + category: "development", + iconUrl: "https://example.com/icon.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.example.com", + isComingSoon: false, + isHidden: false, + }, + auth: null, + tools: [], + documentationChunks: [], + customImports: [], + subPages: [], + generatedAt: new Date().toISOString(), +}); + +describe("detectSummaryChanges", () => { + it("marks unchanged and modified toolkits by version", () => { + const summary: SummaryToolkit[] = [ + { + name: "Github", + version: "1.0.1", + toolCount: 10, + requiresSecrets: true, + requiresOauth: true, + }, + { + name: "Slack", + version: "1.0.0", + toolCount: 8, + requiresSecrets: false, + requiresOauth: true, + }, + ]; + + const previous = new Map([ + ["github", createMergedToolkit("Github", "1.0.0")], + ["slack", createMergedToolkit("Slack", "1.0.0")], + ]); + + const result = detectSummaryChanges(summary, previous); + + expect(result.summary.modifiedToolkits).toBe(1); + expect(result.summary.unchangedToolkits).toBe(1); + expect(hasSummaryChanges(result)).toBe(true); + }); + + it("includes new and removed toolkits in the summary", () => { + const summary: SummaryToolkit[] = [ + { + name: "Github", + version: "1.0.0", + toolCount: 10, + requiresSecrets: true, + requiresOauth: true, + }, + { + name: "Jira", + version: "2.0.0", + toolCount: 5, + requiresSecrets: false, + requiresOauth: false, + }, + ]; + + const previous = new Map([ + ["github", createMergedToolkit("Github", "1.0.0")], + ["slack", createMergedToolkit("Slack", "1.0.0")], + ]); + + const result = detectSummaryChanges(summary, previous); + + expect(result.summary.newToolkits).toBe(1); + expect(result.summary.removedToolkits).toBe(1); + }); + + it("returns changed toolkit IDs for added and modified toolkits", () => { + const summary: SummaryToolkit[] = [ + { + name: "Github", + version: "1.0.1", + toolCount: 10, + requiresSecrets: true, + requiresOauth: true, + }, + { + name: "Jira", + version: "2.0.0", + toolCount: 5, + requiresSecrets: false, + requiresOauth: false, + }, + ]; + + const previous = new Map([ + ["github", createMergedToolkit("Github", "1.0.0")], + ]); + + const result = detectSummaryChanges(summary, previous); + const changedIds = getChangedToolkitIdsFromSummary(result); + + expect(changedIds).toEqual(["Github", "Jira"]); + }); + + it("normalizes toolkit names with spaces and punctuation", () => { + const summary: SummaryToolkit[] = [ + { + name: "Google Calendar", + version: "2.0.0", + toolCount: 12, + requiresSecrets: true, + requiresOauth: true, + }, + ]; + + const previous = new Map([ + ["googlecalendar", createMergedToolkit("GoogleCalendar", "1.0.0")], + ]); + + const result = detectSummaryChanges(summary, previous); + const changedIds = getChangedToolkitIdsFromSummary(result); + + expect(changedIds).toEqual(["Google Calendar"]); + }); + + it("formats summary change output", () => { + const summary: SummaryToolkit[] = [ + { + name: "Github", + version: "1.0.1", + toolCount: 10, + requiresSecrets: true, + requiresOauth: true, + }, + ]; + + const previous = new Map([ + ["github", createMergedToolkit("Github", "1.0.0")], + ]); + + const result = detectSummaryChanges(summary, previous); + const formatted = formatSummaryChangeSummary(result); + + expect(formatted).toContain("modified toolkit"); + }); +}); diff --git a/toolkit-docs-generator/tests/diff/toolkit-diff.test.ts b/toolkit-docs-generator/tests/diff/toolkit-diff.test.ts new file mode 100644 index 000000000..3845d4ec6 --- /dev/null +++ b/toolkit-docs-generator/tests/diff/toolkit-diff.test.ts @@ -0,0 +1,720 @@ +/** + * Tests for Toolkit Change Detection + */ +import { describe, expect, it } from "vitest"; +import { + compareToolkit, + compareTools, + detectChanges, + formatChangeSummary, + formatDetailedChanges, + getChangedToolkitIds, + hasChanges, +} from "../../src/diff/toolkit-diff.js"; +import type { + MergedTool, + MergedToolkit, + ToolDefinition, +} from "../../src/types/index.js"; + +// ============================================================================ +// Test Fixtures +// ============================================================================ + +const createToolDefinition = ( + overrides: Partial = {} +): ToolDefinition => ({ + name: "TestTool", + qualifiedName: "TestKit.TestTool", + fullyQualifiedName: "TestKit.TestTool@1.0.0", + description: "A test tool", + toolkitDescription: "A test toolkit", + parameters: [ + { + name: "param1", + type: "string", + required: true, + description: "First parameter", + enum: null, + inferrable: true, + }, + ], + auth: { + providerId: "test", + providerType: "oauth2", + scopes: ["read", "write"], + }, + secrets: [], + output: { + type: "object", + description: "Result", + }, + ...overrides, +}); + +const createMergedTool = (overrides: Partial = {}): MergedTool => ({ + name: "TestTool", + qualifiedName: "TestKit.TestTool", + fullyQualifiedName: "TestKit.TestTool@1.0.0", + description: "A test tool", + parameters: [ + { + name: "param1", + type: "string", + required: true, + description: "First parameter", + enum: null, + inferrable: true, + }, + ], + auth: { + providerId: "test", + providerType: "oauth2", + scopes: ["read", "write"], + }, + secrets: [], + secretsInfo: [], + output: { + type: "object", + description: "Result", + }, + documentationChunks: [], + ...overrides, +}); + +const createMergedToolkit = ( + overrides: Partial = {} +): MergedToolkit => ({ + id: "TestKit", + label: "Test Kit", + version: "1.0.0", + description: "A test toolkit", + metadata: { + category: "development", + iconUrl: "https://example.com/icon.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.example.com/test", + isComingSoon: false, + isHidden: false, + }, + auth: { + type: "oauth2", + providerId: "test", + allScopes: ["read", "write"], + }, + tools: [createMergedTool()], + documentationChunks: [], + customImports: [], + subPages: [], + generatedAt: new Date().toISOString(), + ...overrides, +}); + +// ============================================================================ +// compareTools Tests +// ============================================================================ + +describe("compareTools", () => { + it("should return empty array when tools are identical", () => { + const currentTools = [createToolDefinition()]; + const previousToolkit = createMergedToolkit(); + + const changes = compareTools(currentTools, previousToolkit); + + expect(changes).toHaveLength(0); + }); + + it("should detect added tools", () => { + const currentTools = [ + createToolDefinition({ name: "Tool1", qualifiedName: "TestKit.Tool1" }), + createToolDefinition({ name: "Tool2", qualifiedName: "TestKit.Tool2" }), + ]; + const previousToolkit = createMergedToolkit({ + tools: [ + createMergedTool({ name: "Tool1", qualifiedName: "TestKit.Tool1" }), + ], + }); + + const changes = compareTools(currentTools, previousToolkit); + + expect(changes).toHaveLength(1); + expect(changes[0]).toEqual({ + qualifiedName: "TestKit.Tool2", + changeType: "added", + toolName: "Tool2", + }); + }); + + it("should detect removed tools", () => { + const currentTools = [ + createToolDefinition({ name: "Tool1", qualifiedName: "TestKit.Tool1" }), + ]; + const previousToolkit = createMergedToolkit({ + tools: [ + createMergedTool({ name: "Tool1", qualifiedName: "TestKit.Tool1" }), + createMergedTool({ name: "Tool2", qualifiedName: "TestKit.Tool2" }), + ], + }); + + const changes = compareTools(currentTools, previousToolkit); + + expect(changes).toHaveLength(1); + expect(changes[0]).toEqual({ + qualifiedName: "TestKit.Tool2", + changeType: "removed", + toolName: "Tool2", + }); + }); + + it("should detect modified tools", () => { + const currentTools = [ + createToolDefinition({ + name: "Tool1", + qualifiedName: "TestKit.Tool1", + description: "Updated description", + }), + ]; + const previousToolkit = createMergedToolkit({ + tools: [ + createMergedTool({ + name: "Tool1", + qualifiedName: "TestKit.Tool1", + description: "Original description", + }), + ], + }); + + const changes = compareTools(currentTools, previousToolkit); + + expect(changes).toHaveLength(1); + expect(changes[0]).toEqual({ + qualifiedName: "TestKit.Tool1", + changeType: "modified", + toolName: "Tool1", + }); + }); + + it("should detect parameter changes as modifications", () => { + const currentTools = [ + createToolDefinition({ + name: "Tool1", + qualifiedName: "TestKit.Tool1", + parameters: [ + { + name: "param1", + type: "string", + required: true, // Changed from original + description: "Parameter", + enum: null, + inferrable: true, + }, + { + name: "newParam", + type: "integer", + required: false, + description: "New parameter", + enum: null, + inferrable: true, + }, + ], + }), + ]; + const previousToolkit = createMergedToolkit({ + tools: [ + createMergedTool({ + name: "Tool1", + qualifiedName: "TestKit.Tool1", + parameters: [ + { + name: "param1", + type: "string", + required: false, // Original + description: "Parameter", + enum: null, + inferrable: true, + }, + ], + }), + ], + }); + + const changes = compareTools(currentTools, previousToolkit); + + expect(changes).toHaveLength(1); + expect(changes[0]?.changeType).toBe("modified"); + }); + + it("should detect auth scope changes as modifications", () => { + const currentTools = [ + createToolDefinition({ + name: "Tool1", + qualifiedName: "TestKit.Tool1", + auth: { + providerId: "github", + providerType: "oauth2", + scopes: ["repo", "user"], // Added 'user' scope + }, + }), + ]; + const previousToolkit = createMergedToolkit({ + tools: [ + createMergedTool({ + name: "Tool1", + qualifiedName: "TestKit.Tool1", + auth: { + providerId: "github", + providerType: "oauth2", + scopes: ["repo"], + }, + }), + ], + }); + + const changes = compareTools(currentTools, previousToolkit); + + expect(changes).toHaveLength(1); + expect(changes[0]?.changeType).toBe("modified"); + }); + + it("should handle tools with no previous toolkit", () => { + const currentTools = [ + createToolDefinition({ name: "Tool1", qualifiedName: "TestKit.Tool1" }), + ]; + + const changes = compareTools(currentTools, undefined); + + expect(changes).toHaveLength(1); + expect(changes[0]).toEqual({ + qualifiedName: "TestKit.Tool1", + changeType: "added", + toolName: "Tool1", + }); + }); +}); + +// ============================================================================ +// compareToolkit Tests +// ============================================================================ + +describe("compareToolkit", () => { + it("should return added for new toolkit", () => { + const currentTools = [ + createToolDefinition({ qualifiedName: "NewKit.Tool1" }), + ]; + + const change = compareToolkit("NewKit", currentTools, undefined); + + expect(change.changeType).toBe("added"); + expect(change.currentToolCount).toBe(1); + expect(change.previousToolCount).toBe(0); + expect(change.versionChanged).toBe(false); + }); + + it("should return unchanged when no changes", () => { + const currentTools = [createToolDefinition()]; + const previousToolkit = createMergedToolkit(); + + const change = compareToolkit("TestKit", currentTools, previousToolkit); + + expect(change.changeType).toBe("unchanged"); + expect(change.versionChanged).toBe(false); + }); + + it("should return modified when tools changed", () => { + const currentTools = [createToolDefinition({ description: "Updated" })]; + const previousToolkit = createMergedToolkit(); + + const change = compareToolkit("TestKit", currentTools, previousToolkit); + + expect(change.changeType).toBe("modified"); + expect(change.toolChanges).toHaveLength(1); + }); + + it("should return modified when version changes but tools do not", () => { + const currentTools = [ + createToolDefinition({ + fullyQualifiedName: "TestKit.TestTool@2.0.0", + }), + ]; + const previousToolkit = createMergedToolkit({ + version: "1.0.0", + tools: [ + createMergedTool({ + fullyQualifiedName: "TestKit.TestTool@1.0.0", + }), + ], + }); + + const change = compareToolkit("TestKit", currentTools, previousToolkit); + + expect(change.changeType).toBe("modified"); + expect(change.toolChanges).toHaveLength(0); + expect(change.versionChanged).toBe(true); + expect(change.currentVersion).toBe("2.0.0"); + expect(change.previousVersion).toBe("1.0.0"); + }); +}); + +// ============================================================================ +// detectChanges Tests +// ============================================================================ + +describe("detectChanges", () => { + it("should detect new toolkits", () => { + const currentToolkitTools = new Map([ + [ + "Github", + [createToolDefinition({ qualifiedName: "Github.CreateIssue" })], + ], + ]); + const previousToolkits = new Map(); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + expect(result.summary.newToolkits).toBe(1); + expect(result.summary.unchangedToolkits).toBe(0); + expect(result.toolkitChanges[0]?.changeType).toBe("added"); + }); + + it("should detect removed toolkits", () => { + const currentToolkitTools = new Map(); + const previousToolkits = new Map([ + ["Github", createMergedToolkit({ id: "Github" })], + ]); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + expect(result.summary.removedToolkits).toBe(1); + expect(result.toolkitChanges[0]?.changeType).toBe("removed"); + }); + + it("should detect modified toolkits", () => { + const currentToolkitTools = new Map([ + [ + "TestKit", + [createToolDefinition({ description: "Updated description" })], + ], + ]); + const previousToolkits = new Map([["TestKit", createMergedToolkit()]]); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + expect(result.summary.modifiedToolkits).toBe(1); + expect(result.toolkitChanges[0]?.changeType).toBe("modified"); + }); + + it("should detect unchanged toolkits", () => { + const currentToolkitTools = new Map([ + ["TestKit", [createToolDefinition()]], + ]); + const previousToolkits = new Map([["TestKit", createMergedToolkit()]]); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + expect(result.summary.unchangedToolkits).toBe(1); + expect(result.toolkitChanges[0]?.changeType).toBe("unchanged"); + }); + + it("should handle case-insensitive toolkit IDs", () => { + const currentToolkitTools = new Map([ + ["TESTKIT", [createToolDefinition()]], + ]); + const previousToolkits = new Map([ + ["testkit", createMergedToolkit({ id: "testkit" })], + ]); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + expect(result.summary.unchangedToolkits).toBe(1); + }); + + it("should count tools correctly in summary", () => { + const currentToolkitTools = new Map([ + [ + "Github", + [ + createToolDefinition({ + name: "CreateIssue", + qualifiedName: "Github.CreateIssue", + }), + createToolDefinition({ + name: "NewTool", + qualifiedName: "Github.NewTool", + }), + ], + ], + ]); + const previousToolkits = new Map([ + [ + "Github", + createMergedToolkit({ + id: "Github", + tools: [ + createMergedTool({ + name: "CreateIssue", + qualifiedName: "Github.CreateIssue", + description: "Old description", + }), + createMergedTool({ + name: "RemovedTool", + qualifiedName: "Github.RemovedTool", + }), + ], + }), + ], + ]); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + expect(result.summary.newTools).toBe(1); // NewTool added + expect(result.summary.removedTools).toBe(1); // RemovedTool removed + expect(result.summary.modifiedTools).toBe(1); // CreateIssue modified + }); + + it("should track version-only changes in summary", () => { + const currentToolkitTools = new Map([ + [ + "Versioned", + [ + createToolDefinition({ + qualifiedName: "Versioned.Tool", + fullyQualifiedName: "Versioned.Tool@2.0.0", + }), + ], + ], + ]); + const previousToolkits = new Map([ + [ + "Versioned", + createMergedToolkit({ + id: "Versioned", + version: "1.0.0", + tools: [ + createMergedTool({ + qualifiedName: "Versioned.Tool", + fullyQualifiedName: "Versioned.Tool@1.0.0", + }), + ], + }), + ], + ]); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + expect(result.summary.modifiedToolkits).toBe(1); + expect(result.summary.versionOnlyToolkits).toBe(1); + }); +}); + +// ============================================================================ +// hasChanges Tests +// ============================================================================ + +describe("hasChanges", () => { + it("should return false when no changes", () => { + const result = detectChanges( + new Map([["TestKit", [createToolDefinition()]]]), + new Map([["TestKit", createMergedToolkit()]]) + ); + + expect(hasChanges(result)).toBe(false); + }); + + it("should return true when there are new toolkits", () => { + const result = detectChanges( + new Map([ + ["NewKit", [createToolDefinition({ qualifiedName: "NewKit.Tool" })]], + ]), + new Map() + ); + + expect(hasChanges(result)).toBe(true); + }); + + it("should return true when there are modified toolkits", () => { + const result = detectChanges( + new Map([ + ["TestKit", [createToolDefinition({ description: "Changed" })]], + ]), + new Map([["TestKit", createMergedToolkit()]]) + ); + + expect(hasChanges(result)).toBe(true); + }); +}); + +// ============================================================================ +// getChangedToolkitIds Tests +// ============================================================================ + +describe("getChangedToolkitIds", () => { + it("should return empty array when no changes", () => { + const result = detectChanges( + new Map([["TestKit", [createToolDefinition()]]]), + new Map([["TestKit", createMergedToolkit()]]) + ); + + expect(getChangedToolkitIds(result)).toEqual([]); + }); + + it("should return IDs of changed toolkits only", () => { + const result = detectChanges( + new Map([ + [ + "Changed", + [ + createToolDefinition({ + qualifiedName: "Changed.Tool", + description: "New", + }), + ], + ], + [ + "Unchanged", + [createToolDefinition({ qualifiedName: "Unchanged.Tool" })], + ], + ]), + new Map([ + [ + "Changed", + createMergedToolkit({ + id: "Changed", + tools: [createMergedTool({ qualifiedName: "Changed.Tool" })], + }), + ], + [ + "Unchanged", + createMergedToolkit({ + id: "Unchanged", + tools: [createMergedTool({ qualifiedName: "Unchanged.Tool" })], + }), + ], + ]) + ); + + expect(getChangedToolkitIds(result)).toEqual(["Changed"]); + }); +}); + +// ============================================================================ +// formatChangeSummary Tests +// ============================================================================ + +describe("formatChangeSummary", () => { + it("should format summary correctly", () => { + const result = detectChanges( + new Map([ + ["New", [createToolDefinition({ qualifiedName: "New.Tool" })]], + [ + "Modified", + [ + createToolDefinition({ + qualifiedName: "Modified.Tool", + description: "New desc", + }), + ], + ], + ]), + new Map([ + [ + "Modified", + createMergedToolkit({ + id: "Modified", + tools: [createMergedTool({ qualifiedName: "Modified.Tool" })], + }), + ], + ["Removed", createMergedToolkit({ id: "Removed" })], + ]) + ); + + const summary = formatChangeSummary(result); + + expect(summary).toContain("new toolkit"); + expect(summary).toContain("removed toolkit"); + expect(summary).toContain("modified toolkit"); + }); + + it("should return 'No toolkits found' for empty result", () => { + const result = detectChanges(new Map(), new Map()); + + expect(formatChangeSummary(result)).toBe("No toolkits found"); + }); +}); + +// ============================================================================ +// formatDetailedChanges Tests +// ============================================================================ + +describe("formatDetailedChanges", () => { + it("should format detailed changes with tool-level info", () => { + const result = detectChanges( + new Map([ + [ + "Github", + [ + createToolDefinition({ + qualifiedName: "Github.NewTool", + name: "NewTool", + }), + ], + ], + ]), + new Map() + ); + + const lines = formatDetailedChanges(result); + + expect(lines.some((l) => l.includes("[NEW]"))).toBe(true); + expect(lines.some((l) => l.includes("Github"))).toBe(true); + expect(lines.some((l) => l.includes("NewTool"))).toBe(true); + }); + + it("should annotate version-only updates", () => { + const result = detectChanges( + new Map([ + [ + "Versioned", + [ + createToolDefinition({ + qualifiedName: "Versioned.Tool", + fullyQualifiedName: "Versioned.Tool@2.0.0", + }), + ], + ], + ]), + new Map([ + [ + "Versioned", + createMergedToolkit({ + id: "Versioned", + version: "1.0.0", + tools: [ + createMergedTool({ + qualifiedName: "Versioned.Tool", + fullyQualifiedName: "Versioned.Tool@1.0.0", + }), + ], + }), + ], + ]) + ); + + const lines = formatDetailedChanges(result); + + expect(lines.some((l) => l.includes("version 1.0.0 -> 2.0.0"))).toBe(true); + expect(lines.some((l) => l.includes("version update only"))).toBe(true); + }); + + it("should skip unchanged toolkits", () => { + const result = detectChanges( + new Map([["TestKit", [createToolDefinition()]]]), + new Map([["TestKit", createMergedToolkit()]]) + ); + + const lines = formatDetailedChanges(result); + + expect(lines).toHaveLength(0); + }); +}); diff --git a/toolkit-docs-generator/tests/fixtures/engine-api-response.json b/toolkit-docs-generator/tests/fixtures/engine-api-response.json new file mode 100644 index 000000000..8161a95dc --- /dev/null +++ b/toolkit-docs-generator/tests/fixtures/engine-api-response.json @@ -0,0 +1,335 @@ +{ + "items": [ + { + "fully_qualified_name": "Github.CreateIssue@1.0.0", + "qualified_name": "Github.CreateIssue", + "name": "CreateIssue", + "description": "Create a new issue in a GitHub repository. Optionally add the issue to a project by specifying the project number.", + "toolkit": { + "name": "Github", + "version": "1.0.0", + "description": "GitHub repository and collaboration tools" + }, + "input": { + "parameters": [ + { + "name": "owner", + "required": true, + "description": "The owner (user or organization) of the repository", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "repo", + "required": true, + "description": "The name of the repository", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "title", + "required": true, + "description": "The title of the issue", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "body", + "required": false, + "description": "The body content of the issue (supports Markdown)", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "labels", + "required": false, + "description": "Labels to add to the issue", + "value_schema": { + "val_type": "array", + "inner_val_type": "string", + "enum": null + }, + "inferrable": true + } + ] + }, + "output": { + "available_modes": ["value"], + "description": "The created issue object with id, number, url, and other details", + "value_schema": { + "val_type": "object", + "inner_val_type": null, + "enum": null + } + }, + "requirements": { + "authorization": { + "id": "github_oauth", + "provider_id": "github", + "provider_type": "oauth2", + "scopes": ["repo"] + }, + "secrets": null + } + }, + { + "fully_qualified_name": "Github.SetStarred@1.0.0", + "qualified_name": "Github.SetStarred", + "name": "SetStarred", + "description": "Star or unstar a GitHub repository for the authenticated user.", + "toolkit": { + "name": "Github", + "version": "1.0.0", + "description": "GitHub repository and collaboration tools" + }, + "input": { + "parameters": [ + { + "name": "owner", + "required": true, + "description": "The owner of the repository to star/unstar", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "repo", + "required": true, + "description": "The name of the repository to star/unstar", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "starred", + "required": true, + "description": "True to star the repository, false to unstar it", + "value_schema": { + "val_type": "boolean", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + } + ] + }, + "output": { + "available_modes": ["value"], + "description": "Confirmation of the star/unstar action", + "value_schema": { + "val_type": "object", + "inner_val_type": null, + "enum": null + } + }, + "requirements": { + "authorization": { + "id": "github_oauth", + "provider_id": "github", + "provider_type": "oauth2", + "scopes": ["public_repo"] + }, + "secrets": null + } + }, + { + "fully_qualified_name": "Github.ListPullRequests@1.0.0", + "qualified_name": "Github.ListPullRequests", + "name": "ListPullRequests", + "description": "List pull requests in a GitHub repository with optional filtering.", + "toolkit": { + "name": "Github", + "version": "1.0.0", + "description": "GitHub repository and collaboration tools" + }, + "input": { + "parameters": [ + { + "name": "owner", + "required": true, + "description": "The owner of the repository", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "repo", + "required": true, + "description": "The name of the repository", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "state", + "required": false, + "description": "Filter by pull request state", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": ["open", "closed", "all"] + }, + "inferrable": true + }, + { + "name": "per_page", + "required": false, + "description": "Number of results per page (max 100)", + "value_schema": { + "val_type": "integer", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + } + ] + }, + "output": { + "available_modes": ["value"], + "description": "List of pull request objects", + "value_schema": { + "val_type": "array", + "inner_val_type": null, + "enum": null + } + }, + "requirements": { + "authorization": { + "id": "github_oauth", + "provider_id": "github", + "provider_type": "oauth2", + "scopes": ["repo"] + }, + "secrets": null + } + }, + { + "fully_qualified_name": "Slack.SendMessage@1.2.0", + "qualified_name": "Slack.SendMessage", + "name": "SendMessage", + "description": "Send a message to a Slack channel or direct message.", + "toolkit": { + "name": "Slack", + "version": "1.2.0", + "description": "Slack communication tools" + }, + "input": { + "parameters": [ + { + "name": "channel_id", + "required": true, + "description": "The ID of the channel or conversation", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + }, + { + "name": "text", + "required": true, + "description": "The message text", + "value_schema": { + "val_type": "string", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + } + ] + }, + "output": { + "available_modes": ["value"], + "description": "Message send confirmation", + "value_schema": { + "val_type": "object", + "inner_val_type": null, + "enum": null + } + }, + "requirements": { + "authorization": { + "id": "slack_oauth", + "provider_id": "slack", + "provider_type": "oauth2", + "scopes": ["chat:write"] + }, + "secrets": null + } + }, + { + "fully_qualified_name": "Slack.ListChannels@1.2.0", + "qualified_name": "Slack.ListChannels", + "name": "ListChannels", + "description": "List channels in the workspace.", + "toolkit": { + "name": "Slack", + "version": "1.2.0", + "description": "Slack communication tools" + }, + "input": { + "parameters": [ + { + "name": "limit", + "required": false, + "description": "Maximum number of channels to return", + "value_schema": { + "val_type": "integer", + "inner_val_type": null, + "enum": null + }, + "inferrable": true + } + ] + }, + "output": { + "available_modes": ["value"], + "description": "List of channel objects", + "value_schema": { + "val_type": "array", + "inner_val_type": null, + "enum": null + } + }, + "requirements": { + "authorization": { + "id": "slack_oauth", + "provider_id": "slack", + "provider_type": "oauth2", + "scopes": ["channels:read"] + }, + "secrets": null + } + } + ], + "total_count": 5 +} diff --git a/toolkit-docs-generator/tests/fixtures/github-toolkit.json b/toolkit-docs-generator/tests/fixtures/github-toolkit.json new file mode 100644 index 000000000..bf89775f7 --- /dev/null +++ b/toolkit-docs-generator/tests/fixtures/github-toolkit.json @@ -0,0 +1,459 @@ +{ + "id": "Github", + "label": "GitHub", + "version": "1.0.0", + "description": "GitHub repository and collaboration tools for managing repositories, issues, pull requests, and more.", + "summary": "The Arcade GitHub toolkit provides a comprehensive set of tools for interacting with GitHub. These tools make it easy to build agents and AI apps that can:\n\n- Create and manage repositories, issues, and pull requests\n- Star and unstar repositories\n- Search for code, issues, and repositories\n- Manage repository collaborators and permissions\n- Access user profile information", + "metadata": { + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/github.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/github", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "github", + "allScopes": ["repo", "user:email", "read:user", "public_repo"] + }, + "tools": [ + { + "name": "CreateIssue", + "qualifiedName": "Github.CreateIssue", + "fullyQualifiedName": "Github.CreateIssue@1.0.0", + "description": "Create a new issue in a GitHub repository. Optionally add the issue to a project by specifying the project number.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The owner (user or organization) of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "title", + "type": "string", + "required": true, + "description": "The title of the issue", + "enum": null, + "inferrable": true + }, + { + "name": "body", + "type": "string", + "required": false, + "description": "The body content of the issue (supports Markdown)", + "enum": null, + "inferrable": true + }, + { + "name": "labels", + "type": "array", + "innerType": "string", + "required": false, + "description": "Labels to add to the issue", + "enum": null, + "inferrable": true + }, + { + "name": "assignees", + "type": "array", + "innerType": "string", + "required": false, + "description": "GitHub usernames to assign to the issue", + "enum": null, + "inferrable": true + }, + { + "name": "project_number", + "type": "integer", + "required": false, + "description": "Project number to add the issue to (if any)", + "enum": null, + "inferrable": false + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": ["repo"] + }, + "secrets": [], + "output": { + "type": "object", + "description": "The created issue object with id, number, url, and other details" + }, + "documentationChunks": [ + { + "type": "info", + "location": "parameters", + "position": "after", + "content": "When adding an issue to a project, make sure the authenticated user has write access to the project.", + "title": "Project Access" + } + ], + "codeExample": { + "toolName": "Github.CreateIssue", + "parameters": { + "owner": { + "value": "arcadeai", + "type": "string", + "required": true + }, + "repo": { + "value": "arcade-ai", + "type": "string", + "required": true + }, + "title": { + "value": "Bug: Login button not working", + "type": "string", + "required": true + }, + "body": { + "value": "## Description\nThe login button on the home page is unresponsive.\n\n## Steps to reproduce\n1. Go to home page\n2. Click login button\n3. Nothing happens", + "type": "string", + "required": false + }, + "labels": { + "value": ["bug", "high-priority"], + "type": "array", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SetStarred", + "qualifiedName": "Github.SetStarred", + "fullyQualifiedName": "Github.SetStarred@1.0.0", + "description": "Star or unstar a GitHub repository for the authenticated user.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The owner of the repository to star/unstar", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository to star/unstar", + "enum": null, + "inferrable": true + }, + { + "name": "starred", + "type": "boolean", + "required": true, + "description": "True to star the repository, false to unstar it", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": ["public_repo"] + }, + "secrets": [], + "output": { + "type": "object", + "description": "Confirmation of the star/unstar action" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.SetStarred", + "parameters": { + "owner": { + "value": "arcadeai", + "type": "string", + "required": true + }, + "repo": { + "value": "arcade-ai", + "type": "string", + "required": true + }, + "starred": { + "value": true, + "type": "boolean", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "GetRepository", + "qualifiedName": "Github.GetRepository", + "fullyQualifiedName": "Github.GetRepository@1.0.0", + "description": "Get detailed information about a GitHub repository including stars, forks, open issues, and more.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The owner of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": ["repo"] + }, + "secrets": [], + "output": { + "type": "object", + "description": "Repository details including name, description, stars, forks, language, and more" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Github.GetRepository", + "parameters": { + "owner": { + "value": "arcadeai", + "type": "string", + "required": true + }, + "repo": { + "value": "arcade-ai", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListPullRequests", + "qualifiedName": "Github.ListPullRequests", + "fullyQualifiedName": "Github.ListPullRequests@1.0.0", + "description": "List pull requests in a GitHub repository with optional filtering by state, head, base, and sort order.", + "parameters": [ + { + "name": "owner", + "type": "string", + "required": true, + "description": "The owner of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "repo", + "type": "string", + "required": true, + "description": "The name of the repository", + "enum": null, + "inferrable": true + }, + { + "name": "state", + "type": "string", + "required": false, + "description": "Filter by pull request state", + "enum": ["open", "closed", "all"], + "inferrable": true + }, + { + "name": "sort", + "type": "string", + "required": false, + "description": "What to sort results by", + "enum": ["created", "updated", "popularity", "long-running"], + "inferrable": true + }, + { + "name": "direction", + "type": "string", + "required": false, + "description": "Sort direction", + "enum": ["asc", "desc"], + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "Number of results per page (max 100)", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": ["repo"] + }, + "secrets": [], + "output": { + "type": "array", + "description": "List of pull request objects" + }, + "documentationChunks": [ + { + "type": "tip", + "location": "description", + "position": "after", + "content": "Use `state: 'all'` to retrieve both open and closed pull requests in a single request.", + "title": "Pro tip" + } + ], + "codeExample": { + "toolName": "Github.ListPullRequests", + "parameters": { + "owner": { + "value": "arcadeai", + "type": "string", + "required": true + }, + "repo": { + "value": "arcade-ai", + "type": "string", + "required": true + }, + "state": { + "value": "open", + "type": "string", + "required": false + }, + "sort": { + "value": "updated", + "type": "string", + "required": false + }, + "per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "SearchCode", + "qualifiedName": "Github.SearchCode", + "fullyQualifiedName": "Github.SearchCode@1.0.0", + "description": "Search for code across all public repositories or within specific repositories using GitHub's code search.", + "parameters": [ + { + "name": "query", + "type": "string", + "required": true, + "description": "The search query. Supports GitHub search syntax including qualifiers like `repo:`, `language:`, `path:`", + "enum": null, + "inferrable": true + }, + { + "name": "per_page", + "type": "integer", + "required": false, + "description": "Number of results per page (max 100, default 30)", + "enum": null, + "inferrable": true + }, + { + "name": "page", + "type": "integer", + "required": false, + "description": "Page number for pagination", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "github", + "providerType": "oauth2", + "scopes": ["repo"] + }, + "secrets": [], + "output": { + "type": "object", + "description": "Search results containing matched code snippets and file locations" + }, + "documentationChunks": [ + { + "type": "warning", + "location": "description", + "position": "before", + "content": "GitHub's code search API has rate limits. Authenticated requests allow 30 requests per minute. Consider implementing pagination and caching for large searches.", + "title": "Rate Limits", + "variant": "warning" + }, + { + "type": "info", + "location": "parameters", + "position": "after", + "content": "Use qualifiers to narrow your search:\n- `repo:owner/name` - Search in a specific repository\n- `language:python` - Filter by programming language\n- `path:src/` - Search in specific directories\n- `extension:ts` - Filter by file extension", + "title": "Search Qualifiers" + } + ], + "codeExample": { + "toolName": "Github.SearchCode", + "parameters": { + "query": { + "value": "ToolDefinition language:typescript repo:arcadeai/arcade-ai", + "type": "string", + "required": true + }, + "per_page": { + "value": 10, + "type": "integer", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "github", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "callout", + "location": "header", + "position": "after", + "content": "The GitHub toolkit requires OAuth2 authentication. Users will be prompted to authorize access to their GitHub account when first using these tools.", + "title": "Authentication Required", + "variant": "info" + } + ], + "customImports": [], + "subPages": [], + "generatedAt": "2026-01-14T12:00:00Z" +} diff --git a/toolkit-docs-generator/tests/fixtures/metadata.json b/toolkit-docs-generator/tests/fixtures/metadata.json new file mode 100644 index 000000000..ad2301af4 --- /dev/null +++ b/toolkit-docs-generator/tests/fixtures/metadata.json @@ -0,0 +1,62 @@ +{ + "Github": { + "id": "Github", + "label": "GitHub", + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/github.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/github", + "isComingSoon": false, + "isHidden": false + }, + "Slack": { + "id": "Slack", + "label": "Slack", + "category": "social", + "iconUrl": "https://design-system.arcade.dev/icons/slack.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/social/slack", + "isComingSoon": false, + "isHidden": false + }, + "Gmail": { + "id": "Gmail", + "label": "Gmail", + "category": "productivity", + "iconUrl": "https://design-system.arcade.dev/icons/gmail.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/productivity/gmail", + "isComingSoon": false, + "isHidden": false + }, + "Jira": { + "id": "Jira", + "label": "Jira", + "category": "development", + "iconUrl": "https://design-system.arcade.dev/icons/jira.svg", + "isBYOC": true, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/development/jira", + "isComingSoon": false, + "isHidden": false + }, + "Stripe": { + "id": "Stripe", + "label": "Stripe", + "category": "payments", + "iconUrl": "https://design-system.arcade.dev/icons/stripe.svg", + "isBYOC": false, + "isPro": true, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/payments/stripe", + "isComingSoon": false, + "isHidden": false + } +} diff --git a/toolkit-docs-generator/tests/fixtures/slack-toolkit.json b/toolkit-docs-generator/tests/fixtures/slack-toolkit.json new file mode 100644 index 000000000..ce3f5f4d3 --- /dev/null +++ b/toolkit-docs-generator/tests/fixtures/slack-toolkit.json @@ -0,0 +1,256 @@ +{ + "id": "Slack", + "label": "Slack", + "version": "1.2.0", + "description": "Slack communication and collaboration tools for sending messages, managing channels, and interacting with workspaces.", + "summary": "The Arcade Slack toolkit provides tools for interacting with Slack workspaces. Build agents and AI apps that can:\n\n- Send and manage messages in channels and DMs\n- Create, archive, and manage channels\n- List and search workspace members\n- React to messages with emoji\n- Upload and share files", + "metadata": { + "category": "social", + "iconUrl": "https://design-system.arcade.dev/icons/slack.svg", + "isBYOC": false, + "isPro": false, + "type": "arcade", + "docsLink": "https://docs.arcade.dev/en/mcp-servers/social/slack", + "isComingSoon": false, + "isHidden": false + }, + "auth": { + "type": "oauth2", + "providerId": "slack", + "allScopes": [ + "channels:read", + "channels:write", + "chat:write", + "users:read", + "files:write", + "reactions:write" + ] + }, + "tools": [ + { + "name": "SendMessage", + "qualifiedName": "Slack.SendMessage", + "fullyQualifiedName": "Slack.SendMessage@1.2.0", + "description": "Send a message to a Slack channel or direct message. Supports rich text formatting with blocks.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "The ID of the channel or conversation to send the message to", + "enum": null, + "inferrable": true + }, + { + "name": "text", + "type": "string", + "required": true, + "description": "The message text. Supports Slack's mrkdwn formatting", + "enum": null, + "inferrable": true + }, + { + "name": "thread_ts", + "type": "string", + "required": false, + "description": "Timestamp of the parent message to reply in thread", + "enum": null, + "inferrable": false + }, + { + "name": "unfurl_links", + "type": "boolean", + "required": false, + "description": "Whether to enable URL unfurling", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["chat:write"] + }, + "secrets": [], + "output": { + "type": "object", + "description": "Message send confirmation with timestamp and channel" + }, + "documentationChunks": [ + { + "type": "info", + "location": "parameters", + "position": "after", + "content": "To get the `channel_id`, use the `ListChannels` tool or find it in the channel details in Slack (right-click channel > View channel details > scroll to bottom).", + "title": "Finding Channel IDs" + } + ], + "codeExample": { + "toolName": "Slack.SendMessage", + "parameters": { + "channel_id": { + "value": "C0123456789", + "type": "string", + "required": true + }, + "text": { + "value": "Hello from Arcade! :wave:", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "ListChannels", + "qualifiedName": "Slack.ListChannels", + "fullyQualifiedName": "Slack.ListChannels@1.2.0", + "description": "List public and private channels in the workspace that the authenticated user has access to.", + "parameters": [ + { + "name": "limit", + "type": "integer", + "required": false, + "description": "Maximum number of channels to return (default 100, max 1000)", + "enum": null, + "inferrable": true + }, + { + "name": "types", + "type": "string", + "required": false, + "description": "Comma-separated list of channel types to include", + "enum": ["public_channel", "private_channel", "mpim", "im"], + "inferrable": true + }, + { + "name": "exclude_archived", + "type": "boolean", + "required": false, + "description": "Whether to exclude archived channels", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["channels:read"] + }, + "secrets": [], + "output": { + "type": "array", + "description": "List of channel objects with id, name, and metadata" + }, + "documentationChunks": [], + "codeExample": { + "toolName": "Slack.ListChannels", + "parameters": { + "limit": { + "value": 50, + "type": "integer", + "required": false + }, + "exclude_archived": { + "value": true, + "type": "boolean", + "required": false + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + }, + { + "name": "AddReaction", + "qualifiedName": "Slack.AddReaction", + "fullyQualifiedName": "Slack.AddReaction@1.2.0", + "description": "Add an emoji reaction to a message in Slack.", + "parameters": [ + { + "name": "channel_id", + "type": "string", + "required": true, + "description": "The ID of the channel containing the message", + "enum": null, + "inferrable": true + }, + { + "name": "timestamp", + "type": "string", + "required": true, + "description": "The timestamp of the message to react to", + "enum": null, + "inferrable": false + }, + { + "name": "emoji", + "type": "string", + "required": true, + "description": "The emoji name without colons (e.g., 'thumbsup' not ':thumbsup:')", + "enum": null, + "inferrable": true + } + ], + "auth": { + "providerId": "slack", + "providerType": "oauth2", + "scopes": ["reactions:write"] + }, + "secrets": [], + "output": { + "type": "object", + "description": "Confirmation of the reaction being added" + }, + "documentationChunks": [ + { + "type": "tip", + "location": "parameters", + "position": "after", + "content": "Common emoji names: `thumbsup`, `thumbsdown`, `heart`, `eyes`, `white_check_mark`, `x`", + "title": "Common Emoji" + } + ], + "codeExample": { + "toolName": "Slack.AddReaction", + "parameters": { + "channel_id": { + "value": "C0123456789", + "type": "string", + "required": true + }, + "timestamp": { + "value": "1234567890.123456", + "type": "string", + "required": true + }, + "emoji": { + "value": "white_check_mark", + "type": "string", + "required": true + } + }, + "requiresAuth": true, + "authProvider": "slack", + "tabLabel": "Call the Tool with User Authorization" + } + } + ], + "documentationChunks": [ + { + "type": "warning", + "location": "header", + "position": "after", + "content": "Slack rate limits vary by method. Most methods allow 1+ request per second, but some (like `chat.postMessage`) are limited to 1 request per second per channel. Implement appropriate rate limiting in your application.", + "title": "Rate Limits", + "variant": "warning" + } + ], + "customImports": [], + "subPages": ["environment-variables"], + "generatedAt": "2026-01-14T12:00:00Z" +} diff --git a/toolkit-docs-generator/tests/generator/output-verifier.test.ts b/toolkit-docs-generator/tests/generator/output-verifier.test.ts new file mode 100644 index 000000000..c0ccf2e01 --- /dev/null +++ b/toolkit-docs-generator/tests/generator/output-verifier.test.ts @@ -0,0 +1,271 @@ +import { mkdtemp, readFile, rename, rm, writeFile } from "fs/promises"; +import { tmpdir } from "os"; +import { join } from "path"; +import { describe, expect, it } from "vitest"; + +import { + createJsonGenerator, + verifyOutputDir, +} from "../../src/generator/index.js"; +import type { MergedToolkit } from "../../src/types/index.js"; + +const loadFixture = async (fileName: string): Promise => { + const fixturesDir = new URL("../fixtures/", import.meta.url); + const filePath = new URL(fileName, fixturesDir); + const content = await readFile(filePath, "utf-8"); + return JSON.parse(content) as MergedToolkit; +}; + +const withTempDir = async (fn: (dir: string) => Promise) => { + const dir = await mkdtemp(join(tmpdir(), "toolkit-docs-")); + try { + await fn(dir); + } finally { + await rm(dir, { recursive: true, force: true }); + } +}; + +describe("verifyOutputDir", () => { + it("flags an empty output directory", async () => { + await withTempDir(async (dir) => { + const result = await verifyOutputDir(dir); + + expect(result.valid).toBe(false); + expect( + result.errors.some((error) => + error.includes("No toolkit JSON files found") + ) + ).toBe(true); + expect( + result.errors.some((error) => + error.includes("Missing or invalid index.json") + ) + ).toBe(true); + }); + }); + + it("accepts a valid output directory", async () => { + await withTempDir(async (dir) => { + const toolkits = await Promise.all([ + loadFixture("github-toolkit.json"), + loadFixture("slack-toolkit.json"), + ]); + const generator = createJsonGenerator({ + outputDir: dir, + prettyPrint: false, + generateIndex: true, + }); + + await generator.generateAll(toolkits); + + const result = await verifyOutputDir(dir); + + expect(result.valid).toBe(true); + expect(result.errors).toHaveLength(0); + }); + }); + + it("flags missing index.json", async () => { + await withTempDir(async (dir) => { + const toolkits = await Promise.all([ + loadFixture("github-toolkit.json"), + loadFixture("slack-toolkit.json"), + ]); + const generator = createJsonGenerator({ + outputDir: dir, + prettyPrint: false, + generateIndex: true, + }); + + await generator.generateAll(toolkits); + await rm(join(dir, "index.json")); + + const result = await verifyOutputDir(dir); + + expect(result.valid).toBe(false); + expect(result.errors.some((error) => error.includes("index.json"))).toBe( + true + ); + }); + }); + + it("flags index entries that do not match toolkit metadata", async () => { + await withTempDir(async (dir) => { + const toolkits = await Promise.all([ + loadFixture("github-toolkit.json"), + loadFixture("slack-toolkit.json"), + ]); + const generator = createJsonGenerator({ + outputDir: dir, + prettyPrint: false, + generateIndex: true, + }); + + await generator.generateAll(toolkits); + + const indexPath = join(dir, "index.json"); + const index = JSON.parse(await readFile(indexPath, "utf-8")) as { + toolkits: Record[]; + }; + const githubEntry = index.toolkits.find((entry) => entry.id === "Github"); + if (githubEntry) { + githubEntry.version = "9.9.9"; + githubEntry.category = "social"; + githubEntry.type = "community"; + githubEntry.toolCount = 999; + githubEntry.authType = "none"; + } + await writeFile(indexPath, JSON.stringify(index, null, 2), "utf-8"); + + const result = await verifyOutputDir(dir); + + expect(result.valid).toBe(false); + expect( + result.errors.some((error) => + error.includes("version mismatch for Github") + ) + ).toBe(true); + expect( + result.errors.some((error) => + error.includes("category mismatch for Github") + ) + ).toBe(true); + expect( + result.errors.some((error) => + error.includes("type mismatch for Github") + ) + ).toBe(true); + expect( + result.errors.some((error) => + error.includes("toolCount mismatch for Github") + ) + ).toBe(true); + expect( + result.errors.some((error) => + error.includes("authType mismatch for Github") + ) + ).toBe(true); + }); + }); + + it("flags index entries without matching files", async () => { + await withTempDir(async (dir) => { + const toolkits = await Promise.all([ + loadFixture("github-toolkit.json"), + loadFixture("slack-toolkit.json"), + ]); + const generator = createJsonGenerator({ + outputDir: dir, + prettyPrint: false, + generateIndex: true, + }); + + await generator.generateAll(toolkits); + + const indexPath = join(dir, "index.json"); + const index = JSON.parse(await readFile(indexPath, "utf-8")) as { + toolkits: Record[]; + }; + index.toolkits.push({ + id: "Ghost", + label: "Ghost", + version: "1.0.0", + category: "development", + type: "arcade", + toolCount: 0, + authType: "none", + }); + await writeFile(indexPath, JSON.stringify(index, null, 2), "utf-8"); + + const result = await verifyOutputDir(dir); + + expect(result.valid).toBe(false); + expect( + result.errors.some((error) => + error.includes("index.json entry has no matching file: Ghost") + ) + ).toBe(true); + }); + }); + + it("flags toolkit files that are not lowercase", async () => { + await withTempDir(async (dir) => { + const toolkits = await Promise.all([loadFixture("github-toolkit.json")]); + const generator = createJsonGenerator({ + outputDir: dir, + prettyPrint: false, + generateIndex: true, + }); + + await generator.generateAll(toolkits); + + await rename(join(dir, "github.json"), join(dir, "Github.json")); + + const result = await verifyOutputDir(dir); + + expect(result.valid).toBe(false); + expect( + result.errors.some((error) => + error.includes("File name must be lowercase: Github.json") + ) + ).toBe(true); + }); + }); + + it("flags toolkit files that do not match toolkit id", async () => { + await withTempDir(async (dir) => { + const toolkits = await Promise.all([loadFixture("github-toolkit.json")]); + const generator = createJsonGenerator({ + outputDir: dir, + prettyPrint: false, + generateIndex: true, + }); + + await generator.generateAll(toolkits); + + await rename(join(dir, "github.json"), join(dir, "mismatch.json")); + + const result = await verifyOutputDir(dir); + + expect(result.valid).toBe(false); + expect( + result.errors.some((error) => + error.includes("File name does not match toolkit id: mismatch.json") + ) + ).toBe(true); + }); + }); + + it("flags invalid JSON with a helpful message", async () => { + await withTempDir(async (dir) => { + await writeFile(join(dir, "broken.json"), "{ invalid-json"); + + const result = await verifyOutputDir(dir); + + expect(result.valid).toBe(false); + expect( + result.errors.some((error) => + error.startsWith("Invalid JSON in broken.json:") + ) + ).toBe(true); + }); + }); + + it("flags invalid schema with a helpful message", async () => { + await withTempDir(async (dir) => { + await writeFile( + join(dir, "bad-schema.json"), + JSON.stringify({ id: "Github" }, null, 2) + ); + + const result = await verifyOutputDir(dir); + + expect(result.valid).toBe(false); + expect( + result.errors.some((error) => + error.startsWith("Invalid toolkit schema in bad-schema.json:") + ) + ).toBe(true); + }); + }); +}); diff --git a/toolkit-docs-generator/tests/llm/tool-example-generator.test.ts b/toolkit-docs-generator/tests/llm/tool-example-generator.test.ts new file mode 100644 index 000000000..d898b4e3c --- /dev/null +++ b/toolkit-docs-generator/tests/llm/tool-example-generator.test.ts @@ -0,0 +1,149 @@ +/** + * Tests for the LLM tool example generator + */ +import { describe, expect, it } from "vitest"; +import type { LlmClient } from "../../src/llm/client.js"; +import { LlmToolExampleGenerator } from "../../src/llm/tool-example-generator.js"; +import type { ToolDefinition } from "../../src/types/index.js"; + +const createTool = ( + overrides: Partial = {} +): ToolDefinition => ({ + name: "CreateIssue", + qualifiedName: "Github.CreateIssue", + fullyQualifiedName: "Github.CreateIssue@1.0.0", + description: "Create an issue", + parameters: [ + { + name: "owner", + type: "string", + required: true, + description: "Repository owner", + enum: null, + inferrable: true, + }, + { + name: "repo", + type: "string", + required: true, + description: "Repository name", + enum: null, + inferrable: true, + }, + ], + auth: { + providerId: "github", + providerType: "oauth2", + scopes: ["repo"], + }, + secrets: ["API_KEY"], + output: null, + ...overrides, +}); + +describe("LlmToolExampleGenerator", () => { + it("should map LLM JSON output to parameter values", async () => { + const fakeClient: LlmClient = { + provider: "openai", + generateText: async () => + JSON.stringify({ + parameters: { owner: "arcadeai", repo: "docs" }, + secrets: { API_KEY: "api_key" }, + }), + }; + const generator = new LlmToolExampleGenerator({ + client: fakeClient, + model: "gpt-4.1-mini", + }); + + const result = await generator.generate(createTool()); + + expect(result.codeExample.parameters.owner?.value).toBe("arcadeai"); + expect(result.codeExample.parameters.repo?.value).toBe("docs"); + expect(result.secretsInfo).toEqual([{ name: "API_KEY", type: "api_key" }]); + }); + + it("should coerce numeric strings for integer parameters", async () => { + const fakeClient: LlmClient = { + provider: "openai", + generateText: async () => + JSON.stringify({ + parameters: { owner: "arcadeai", repo: "docs", per_page: "30" }, + secrets: { API_KEY: "api_key" }, + }), + }; + const generator = new LlmToolExampleGenerator({ + client: fakeClient, + model: "gpt-4.1-mini", + }); + + const tool = createTool({ + parameters: [ + ...createTool().parameters, + { + name: "per_page", + type: "integer", + required: false, + description: null, + enum: null, + inferrable: true, + }, + ], + }); + + const result = await generator.generate(tool); + + expect(result.codeExample.parameters.per_page?.value).toBe(30); + }); + + it("should accept JSON wrapped in code fences", async () => { + const fakeClient: LlmClient = { + provider: "openai", + generateText: async () => + '```json\n{"parameters":{"owner":"arcadeai","repo":"toolkit"},"secrets":{"API_KEY":"api_key"}}\n```', + }; + const generator = new LlmToolExampleGenerator({ + client: fakeClient, + model: "gpt-4.1-mini", + }); + + const result = await generator.generate(createTool()); + + expect(result.codeExample.parameters.owner?.value).toBe("arcadeai"); + expect(result.codeExample.parameters.repo?.value).toBe("toolkit"); + expect(result.secretsInfo).toEqual([{ name: "API_KEY", type: "api_key" }]); + }); + + it("should coerce boolean strings for boolean parameters", async () => { + const fakeClient: LlmClient = { + provider: "openai", + generateText: async () => + JSON.stringify({ + parameters: { owner: "arcadeai", repo: "docs", archived: "true" }, + secrets: { API_KEY: "api_key" }, + }), + }; + const generator = new LlmToolExampleGenerator({ + client: fakeClient, + model: "gpt-4.1-mini", + }); + + const tool = createTool({ + parameters: [ + ...createTool().parameters, + { + name: "archived", + type: "boolean", + required: false, + description: null, + enum: null, + inferrable: true, + }, + ], + }); + + const result = await generator.generate(tool); + + expect(result.codeExample.parameters.archived?.value).toBe(true); + }); +}); diff --git a/toolkit-docs-generator/tests/llm/toolkit-overview-generator.test.ts b/toolkit-docs-generator/tests/llm/toolkit-overview-generator.test.ts new file mode 100644 index 000000000..c0d8891a6 --- /dev/null +++ b/toolkit-docs-generator/tests/llm/toolkit-overview-generator.test.ts @@ -0,0 +1,114 @@ +import { describe, expect, it } from "vitest"; +import type { LlmClient } from "../../src/llm/client.js"; +import { LlmToolkitOverviewGenerator } from "../../src/llm/toolkit-overview-generator.js"; +import type { MergedToolkit } from "../../src/types/index.js"; + +const createToolkit = (): MergedToolkit => ({ + id: "TestKit", + label: "Test Kit", + version: "1.0.0", + description: "Test toolkit description", + metadata: { + category: "development", + iconUrl: "https://example.com/icon.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.example.com", + isComingSoon: false, + isHidden: false, + }, + auth: { + type: "oauth2", + providerId: "test", + allScopes: ["read"], + }, + tools: [ + { + name: "TestTool", + qualifiedName: "TestKit.TestTool", + fullyQualifiedName: "TestKit.TestTool@1.0.0", + description: "A tool.", + parameters: [], + auth: { + providerId: "test", + providerType: "oauth2", + scopes: ["read"], + }, + secrets: [], + secretsInfo: [], + output: null, + documentationChunks: [], + }, + ], + documentationChunks: [], + customImports: [], + subPages: [], + generatedAt: new Date().toISOString(), +}); + +const createClient = (payload: string): LlmClient => ({ + provider: "openai", + generateText: async () => payload, +}); + +describe("LlmToolkitOverviewGenerator", () => { + it("skips overview when auto mode says no", async () => { + const client = createClient( + JSON.stringify({ shouldWrite: false, overview: "", reason: "unknown" }) + ); + const generator = new LlmToolkitOverviewGenerator({ + client, + model: "test-model", + }); + + const result = await generator.generate({ + toolkit: createToolkit(), + instructions: null, + previousOverview: null, + mode: "auto", + }); + + expect(result).toBeNull(); + }); + + it("builds a header overview chunk when present", async () => { + const client = createClient( + JSON.stringify({ shouldWrite: true, overview: "## Overview\n\nHello." }) + ); + const generator = new LlmToolkitOverviewGenerator({ + client, + model: "test-model", + }); + + const result = await generator.generate({ + toolkit: createToolkit(), + instructions: null, + previousOverview: null, + mode: "auto", + }); + + expect(result?.chunk.location).toBe("header"); + expect(result?.chunk.position).toBe("before"); + expect(result?.chunk.content.startsWith("## Overview")).toBe(true); + }); + + it("adds an Overview heading when missing", async () => { + const client = createClient( + JSON.stringify({ shouldWrite: true, overview: "Short overview." }) + ); + const generator = new LlmToolkitOverviewGenerator({ + client, + model: "test-model", + }); + + const result = await generator.generate({ + toolkit: createToolkit(), + instructions: null, + previousOverview: null, + mode: "file", + }); + + expect(result?.chunk.content.startsWith("## Overview")).toBe(true); + }); +}); diff --git a/toolkit-docs-generator/tests/llm/toolkit-summary-generator.test.ts b/toolkit-docs-generator/tests/llm/toolkit-summary-generator.test.ts new file mode 100644 index 000000000..946159171 --- /dev/null +++ b/toolkit-docs-generator/tests/llm/toolkit-summary-generator.test.ts @@ -0,0 +1,89 @@ +import { describe, expect, it } from "vitest"; +import type { LlmClient } from "../../src/llm/client.js"; +import { LlmToolkitSummaryGenerator } from "../../src/llm/toolkit-summary-generator.js"; +import type { MergedToolkit } from "../../src/types/index.js"; + +const createToolkit = ( + overrides: Partial = {} +): MergedToolkit => ({ + id: "Github", + label: "GitHub", + version: "1.0.0", + description: "Tools for GitHub automation.", + metadata: { + category: "development", + iconUrl: "https://design-system.arcade.dev/icons/github.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.arcade.dev/en/mcp-servers/development/github", + isComingSoon: false, + isHidden: false, + }, + auth: { + type: "oauth2", + providerId: "github", + allScopes: ["repo"], + }, + tools: [ + { + name: "CreateIssue", + qualifiedName: "Github.CreateIssue", + fullyQualifiedName: "Github.CreateIssue@1.0.0", + description: "Create issues in a repository.", + parameters: [], + auth: { + providerId: "github", + providerType: "oauth2", + scopes: ["repo"], + }, + secrets: ["GITHUB_API_KEY"], + secretsInfo: [{ name: "GITHUB_API_KEY", type: "api_key" }], + output: null, + documentationChunks: [], + }, + ], + documentationChunks: [], + customImports: [], + subPages: [], + generatedAt: "2026-01-15T00:00:00.000Z", + ...overrides, +}); + +describe("LlmToolkitSummaryGenerator", () => { + it("parses summary from a JSON response", async () => { + const client: LlmClient = { + generateText: async () => '```json\n{"summary":"Concise summary."}\n```', + }; + const generator = new LlmToolkitSummaryGenerator({ + client, + model: "test-model", + }); + + const summary = await generator.generate(createToolkit()); + + expect(summary).toBe("Concise summary."); + }); + + it("includes tool descriptions and auth info in the prompt", async () => { + let capturedPrompt = ""; + const client: LlmClient = { + generateText: async ({ prompt }) => { + capturedPrompt = prompt; + return '{"summary":"OK"}'; + }, + }; + const generator = new LlmToolkitSummaryGenerator({ + client, + model: "test-model", + }); + + await generator.generate(createToolkit()); + + expect(capturedPrompt).toContain("Github.CreateIssue"); + expect(capturedPrompt).toContain("Create issues in a repository."); + expect(capturedPrompt).toContain("Auth:"); + expect(capturedPrompt).toContain("Secret types:"); + expect(capturedPrompt).toContain("Secret names:"); + }); +}); diff --git a/toolkit-docs-generator/tests/merger/data-merger.test.ts b/toolkit-docs-generator/tests/merger/data-merger.test.ts new file mode 100644 index 000000000..0b418253c --- /dev/null +++ b/toolkit-docs-generator/tests/merger/data-merger.test.ts @@ -0,0 +1,1093 @@ +/** + * Tests for the Data Merger + * + * These tests use in-memory implementations (NOT mocks) to verify + * the merge logic works correctly. + */ +import { describe, expect, it } from "vitest"; +import { + computeAllScopes, + DataMerger, + determineAuthType, + extractVersion, + getProviderId, + groupToolsByToolkit, + mergeToolkit, + type ToolExampleGenerator, + type ToolkitSummaryGenerator, +} from "../../src/merger/data-merger.js"; +import type { + ToolkitOverviewGenerator, + ToolkitOverviewInstructions, +} from "../../src/overview/types.js"; +import { + EmptyCustomSectionsSource, + InMemoryMetadataSource, + InMemoryToolDataSource, +} from "../../src/sources/in-memory.js"; +import { createCombinedToolkitDataSource } from "../../src/sources/toolkit-data-source.js"; +import type { + CustomSections, + ToolDefinition, + ToolkitMetadata, +} from "../../src/types/index.js"; + +// ============================================================================ +// Test Fixtures - Realistic data matching production schema +// ============================================================================ + +const createTool = ( + overrides: Partial = {} +): ToolDefinition => ({ + name: "TestTool", + qualifiedName: "TestKit.TestTool", + fullyQualifiedName: "TestKit.TestTool@1.0.0", + description: "A test tool", + toolkitDescription: "Toolkit description", + parameters: [ + { + name: "param1", + type: "string", + required: true, + description: "First parameter", + enum: null, + inferrable: true, + }, + ], + auth: { + providerId: "test", + providerType: "oauth2", + scopes: ["read", "write"], + }, + secrets: [], + output: { + type: "object", + description: "Result", + }, + ...overrides, +}); + +const createMetadata = ( + overrides: Partial = {} +): ToolkitMetadata => ({ + id: "TestKit", + label: "Test Kit", + category: "development", + iconUrl: "https://example.com/icon.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.example.com/test", + isComingSoon: false, + isHidden: false, + ...overrides, +}); + +const createCustomSections = ( + overrides: Partial = {} +): CustomSections => ({ + documentationChunks: [], + customImports: [], + subPages: [], + toolChunks: {}, + ...overrides, +}); + +const createStubGenerator = (): ToolExampleGenerator => ({ + generate: async (tool) => ({ + codeExample: { + toolName: tool.qualifiedName, + parameters: {}, + requiresAuth: tool.auth !== null, + authProvider: tool.auth?.providerId ?? undefined, + tabLabel: tool.auth + ? "Call the Tool with User Authorization" + : "Call the Tool", + }, + secretsInfo: tool.secrets.map((secret) => ({ + name: secret, + type: "unknown", + })), + }), +}); + +const createStubSummaryGenerator = ( + summary: string +): ToolkitSummaryGenerator => ({ + generate: async (toolkit) => `${summary} (${toolkit.id})`, +}); + +const createCountingGenerator = () => { + let calls = 0; + const generator: ToolExampleGenerator = { + generate: async (tool) => { + calls += 1; + return { + codeExample: { + toolName: tool.qualifiedName, + parameters: {}, + requiresAuth: tool.auth !== null, + authProvider: tool.auth?.providerId ?? undefined, + tabLabel: tool.auth + ? "Call the Tool with User Authorization" + : "Call the Tool", + }, + secretsInfo: tool.secrets.map((secret) => ({ + name: secret, + type: "unknown", + })), + }; + }, + }; + + return { + generator, + getCalls: () => calls, + }; +}; + +const createCountingSummaryGenerator = () => { + let calls = 0; + const generator: ToolkitSummaryGenerator = { + generate: async () => { + calls += 1; + return "Generated summary"; + }, + }; + + return { + generator, + getCalls: () => calls, + }; +}; + +// ============================================================================ +// Pure Function Tests +// ============================================================================ + +describe("groupToolsByToolkit", () => { + it("should group tools by their toolkit name", () => { + const tools = [ + createTool({ qualifiedName: "Github.CreateIssue" }), + createTool({ qualifiedName: "Github.ListPRs" }), + createTool({ qualifiedName: "Slack.SendMessage" }), + ]; + + const result = groupToolsByToolkit(tools); + + expect(result.size).toBe(2); + expect(result.get("Github")).toHaveLength(2); + expect(result.get("Slack")).toHaveLength(1); + }); + + it("should handle empty array", () => { + const result = groupToolsByToolkit([]); + expect(result.size).toBe(0); + }); + + it("should skip tools with invalid qualified names", () => { + const tools = [ + createTool({ qualifiedName: "Github.CreateIssue" }), + createTool({ qualifiedName: "" }), // Invalid + ]; + + const result = groupToolsByToolkit(tools); + + expect(result.size).toBe(1); + expect(result.get("Github")).toHaveLength(1); + }); +}); + +describe("computeAllScopes", () => { + it("should compute union of all scopes", () => { + const tools = [ + createTool({ + auth: { + providerId: "test", + providerType: "oauth2", + scopes: ["read", "write"], + }, + }), + createTool({ + auth: { + providerId: "test", + providerType: "oauth2", + scopes: ["write", "delete"], + }, + }), + ]; + + const result = computeAllScopes(tools); + + expect(result).toHaveLength(3); + expect(result).toContain("read"); + expect(result).toContain("write"); + expect(result).toContain("delete"); + }); + + it("should return sorted array", () => { + const tools = [ + createTool({ + auth: { + providerId: "test", + providerType: "oauth2", + scopes: ["z_scope", "a_scope"], + }, + }), + ]; + + const result = computeAllScopes(tools); + + expect(result).toEqual(["a_scope", "z_scope"]); + }); + + it("should return empty array for tools without auth", () => { + const tools = [createTool({ auth: null })]; + + const result = computeAllScopes(tools); + + expect(result).toEqual([]); + }); +}); + +describe("determineAuthType", () => { + it("should return oauth2 for oauth2 provider type", () => { + const tools = [ + createTool({ + auth: { providerId: "github", providerType: "oauth2", scopes: [] }, + }), + ]; + + const result = determineAuthType(tools); + + expect(result).toBe("oauth2"); + }); + + it("should return api_key for non-oauth2 provider type", () => { + const tools = [ + createTool({ + auth: { providerId: "api", providerType: "api_key", scopes: [] }, + }), + ]; + + const result = determineAuthType(tools); + + expect(result).toBe("api_key"); + }); + + it("should return mixed when oauth2 and api_key both exist", () => { + const tools = [ + createTool({ + auth: { providerId: "github", providerType: "oauth2", scopes: [] }, + }), + createTool({ + auth: { providerId: "stripe", providerType: "api_key", scopes: [] }, + }), + ]; + + const result = determineAuthType(tools); + + expect(result).toBe("mixed"); + }); + + it("should ignore secrets when no auth exists", () => { + const tools = [createTool({ auth: null, secrets: ["API_KEY"] })]; + + const result = determineAuthType(tools); + + expect(result).toBe("none"); + }); + + it("should return none when no auth and no secrets", () => { + const tools = [createTool({ auth: null, secrets: [] })]; + + const result = determineAuthType(tools); + + expect(result).toBe("none"); + }); +}); + +describe("getProviderId", () => { + it("should return provider ID from first tool with auth", () => { + const tools = [ + createTool({ auth: null }), + createTool({ + auth: { providerId: "github", providerType: "oauth2", scopes: [] }, + }), + ]; + + const result = getProviderId(tools); + + expect(result).toBe("github"); + }); + + it("should return null when no tools have auth", () => { + const tools = [createTool({ auth: null })]; + + const result = getProviderId(tools); + + expect(result).toBeNull(); + }); +}); + +describe("extractVersion", () => { + it("should extract version from fully qualified name", () => { + expect(extractVersion("Github.CreateIssue@1.0.0")).toBe("1.0.0"); + expect(extractVersion("Slack.SendMessage@2.1.3")).toBe("2.1.3"); + }); + + it("should return 0.0.0 for names without version", () => { + expect(extractVersion("Github.CreateIssue")).toBe("0.0.0"); + }); +}); + +describe("ToolExampleGenerator", () => { + it("should generate an example config for a tool", async () => { + const tool = createTool({ + name: "CreateIssue", + qualifiedName: "Github.CreateIssue", + }); + const generator = createStubGenerator(); + + const result = await generator.generate(tool); + + expect(result.codeExample.toolName).toBe("Github.CreateIssue"); + expect(result.codeExample.requiresAuth).toBe(true); + expect(result.codeExample.authProvider).toBe("test"); + }); + + it("should set requiresAuth to false when no auth", async () => { + const tool = createTool({ auth: null }); + const generator = createStubGenerator(); + + const result = await generator.generate(tool); + + expect(result.codeExample.requiresAuth).toBe(false); + expect(result.codeExample.authProvider).toBeUndefined(); + }); +}); + +// ============================================================================ +// mergeToolkit Function Tests +// ============================================================================ + +describe("mergeToolkit", () => { + it("should merge tools, metadata, and custom sections", async () => { + const tools = [ + createTool({ + name: "Tool1", + qualifiedName: "TestKit.Tool1", + fullyQualifiedName: "TestKit.Tool1@1.2.0", + auth: { + providerId: "test", + providerType: "oauth2", + scopes: ["scope1"], + }, + }), + createTool({ + name: "Tool2", + qualifiedName: "TestKit.Tool2", + fullyQualifiedName: "TestKit.Tool2@1.2.0", + auth: { + providerId: "test", + providerType: "oauth2", + scopes: ["scope2"], + }, + }), + ]; + const metadata = createMetadata({ id: "TestKit", label: "Test Kit" }); + const customSections = createCustomSections({ + documentationChunks: [ + { + type: "warning", + location: "header", + position: "after", + content: "Warning!", + }, + ], + }); + + const result = await mergeToolkit( + "TestKit", + tools, + metadata, + customSections, + createStubGenerator() + ); + + expect(result.toolkit.id).toBe("TestKit"); + expect(result.toolkit.label).toBe("Test Kit"); + expect(result.toolkit.version).toBe("1.2.0"); + expect(result.toolkit.tools).toHaveLength(2); + expect(result.toolkit.auth?.allScopes).toContain("scope1"); + expect(result.toolkit.auth?.allScopes).toContain("scope2"); + expect(result.toolkit.documentationChunks).toHaveLength(1); + expect(result.warnings).toHaveLength(0); + }); + + it("should use default metadata when not provided", async () => { + const tools = [createTool({ qualifiedName: "Unknown.Tool" })]; + + const result = await mergeToolkit( + "Unknown", + tools, + null, + null, + createStubGenerator() + ); + + expect(result.toolkit.label).toBe("Unknown"); + expect(result.toolkit.metadata.category).toBe("development"); + expect(result.warnings).toContain( + "No metadata found for toolkit: Unknown - using defaults" + ); + }); + + it("marks *Api toolkits as arcade_starter", async () => { + const tools = [ + createTool({ + qualifiedName: "GithubApi.ListRepos", + fullyQualifiedName: "GithubApi.ListRepos@1.0.0", + }), + ]; + const metadata = createMetadata({ id: "GithubApi", type: "arcade" }); + + const result = await mergeToolkit( + "GithubApi", + tools, + metadata, + null, + createStubGenerator() + ); + + expect(result.toolkit.metadata.type).toBe("arcade_starter"); + }); + + it("should warn when no tools found", async () => { + const result = await mergeToolkit( + "Empty", + [], + createMetadata(), + null, + createStubGenerator() + ); + + expect(result.toolkit.tools).toHaveLength(0); + expect(result.warnings).toContain("No tools found for toolkit: Empty"); + }); + + it("should set auth to null when auth type is none", async () => { + const tools = [createTool({ auth: null, secrets: [] })]; + + const result = await mergeToolkit( + "NoAuth", + tools, + null, + null, + createStubGenerator() + ); + + expect(result.toolkit.auth).toBeNull(); + }); + + it("should include per-tool documentation chunks", async () => { + const tools = [createTool({ name: "SpecialTool" })]; + const customSections = createCustomSections({ + toolChunks: { + SpecialTool: [ + { + type: "info", + location: "parameters", + position: "after", + content: "Note about params", + }, + ], + }, + }); + + const result = await mergeToolkit( + "TestKit", + tools, + null, + customSections, + createStubGenerator() + ); + + expect(result.toolkit.tools[0]?.documentationChunks).toHaveLength(1); + }); + + it("should include secret classifications for tools", async () => { + const generator: ToolExampleGenerator = { + generate: async () => ({ + codeExample: { + toolName: "TestKit.CreateIssue", + parameters: {}, + requiresAuth: true, + authProvider: "test", + tabLabel: "Call the Tool with User Authorization", + }, + secretsInfo: [ + { name: "API_KEY", type: "api_key" }, + { name: "WEBHOOK_SECRET", type: "webhook_secret" }, + { name: "ACCESS_TOKEN", type: "token" }, + ], + }), + }; + const tools = [ + createTool({ + secrets: ["API_KEY", "WEBHOOK_SECRET", "ACCESS_TOKEN"], + }), + ]; + + const result = await mergeToolkit("TestKit", tools, null, null, generator); + + expect(result.toolkit.tools[0]?.secretsInfo).toEqual([ + { name: "API_KEY", type: "api_key" }, + { name: "WEBHOOK_SECRET", type: "webhook_secret" }, + { name: "ACCESS_TOKEN", type: "token" }, + ]); + }); + + it("should omit code examples when generator is missing", async () => { + const tools = [createTool()]; + + const result = await mergeToolkit("TestKit", tools, null, null, undefined); + + expect(result.toolkit.tools[0]?.codeExample).toBeUndefined(); + expect(result.toolkit.tools[0]?.secretsInfo).toEqual([]); + }); + + it("should record failed tools when example generation fails", async () => { + const tools = [createTool({ qualifiedName: "TestKit.FailTool" })]; + const failingGenerator: ToolExampleGenerator = { + generate: async () => { + throw new Error("LLM error"); + }, + }; + + const result = await mergeToolkit( + "TestKit", + tools, + null, + null, + failingGenerator + ); + + expect(result.failedTools).toHaveLength(1); + expect(result.failedTools[0]?.qualifiedName).toBe("TestKit.FailTool"); + expect( + result.warnings.some((warning) => warning.includes("LLM error")) + ).toBe(true); + expect(result.toolkit.tools[0]?.codeExample).toBeUndefined(); + }); + + it("should reuse previous code examples without generator", async () => { + const tools = [createTool({ qualifiedName: "TestKit.Tool1" })]; + const previousResult = await mergeToolkit( + "TestKit", + tools, + null, + null, + createStubGenerator() + ); + + const result = await mergeToolkit("TestKit", tools, null, null, undefined, { + previousToolkit: previousResult.toolkit, + }); + + expect(result.toolkit.tools[0]?.codeExample).toEqual( + previousResult.toolkit.tools[0]?.codeExample + ); + expect(result.toolkit.tools[0]?.secretsInfo).toEqual( + previousResult.toolkit.tools[0]?.secretsInfo + ); + }); + + it("should preserve toolkit-level custom sections from previous output when source is empty", async () => { + const tools = [createTool({ qualifiedName: "TestKit.Tool1" })]; + + // Create a previous result with custom sections + const previousResult = await mergeToolkit( + "TestKit", + tools, + null, + createCustomSections({ + documentationChunks: [ + { + type: "warning", + location: "header", + position: "after", + content: "Important warning!", + }, + ], + customImports: ['import CustomComponent from "@/components/custom";'], + subPages: ["environment-variables"], + }), + createStubGenerator() + ); + + // Run again with empty custom sections - should preserve previous + const result = await mergeToolkit("TestKit", tools, null, null, undefined, { + previousToolkit: previousResult.toolkit, + }); + + expect(result.toolkit.documentationChunks).toHaveLength(1); + expect(result.toolkit.documentationChunks[0]?.content).toBe( + "Important warning!" + ); + expect(result.toolkit.customImports).toHaveLength(1); + expect(result.toolkit.subPages).toHaveLength(1); + }); + + it("should use source custom sections over previous when source has content", async () => { + const tools = [createTool({ qualifiedName: "TestKit.Tool1" })]; + + // Create previous with old custom sections + const previousResult = await mergeToolkit( + "TestKit", + tools, + null, + createCustomSections({ + documentationChunks: [ + { + type: "warning", + location: "header", + position: "after", + content: "Old warning", + }, + ], + }), + createStubGenerator() + ); + + // Run with new custom sections from source - should use source + const newCustomSections = createCustomSections({ + documentationChunks: [ + { + type: "info", + location: "header", + position: "before", + content: "New info from source", + }, + ], + }); + + const result = await mergeToolkit( + "TestKit", + tools, + null, + newCustomSections, + undefined, + { previousToolkit: previousResult.toolkit } + ); + + expect(result.toolkit.documentationChunks).toHaveLength(1); + expect(result.toolkit.documentationChunks[0]?.content).toBe( + "New info from source" + ); + }); + + it("should preserve per-tool documentation chunks from previous output when source is empty", async () => { + const tools = [ + createTool({ name: "SpecialTool", qualifiedName: "TestKit.SpecialTool" }), + ]; + + // Create previous with tool-level custom sections + const previousResult = await mergeToolkit( + "TestKit", + tools, + null, + createCustomSections({ + toolChunks: { + SpecialTool: [ + { + type: "info", + location: "parameters", + position: "after", + content: "Note about params", + }, + ], + }, + }), + createStubGenerator() + ); + + // Run again with empty custom sections - should preserve previous tool chunks + const result = await mergeToolkit("TestKit", tools, null, null, undefined, { + previousToolkit: previousResult.toolkit, + }); + + expect(result.toolkit.tools[0]?.documentationChunks).toHaveLength(1); + expect(result.toolkit.tools[0]?.documentationChunks[0]?.content).toBe( + "Note about params" + ); + }); +}); + +describe("mergeToolkit overview handling", () => { + it("replaces existing overview when instructions are present", async () => { + const tool = createTool(); + const metadata = createMetadata(); + + const previous = await mergeToolkit( + "TestKit", + [tool], + metadata, + null, + undefined, + {} + ); + previous.toolkit.documentationChunks = [ + { + type: "markdown", + location: "header", + position: "before", + content: "## Overview\n\nOld overview.", + }, + ]; + + const overviewGenerator: ToolkitOverviewGenerator = { + generate: async () => ({ + chunk: { + type: "markdown", + location: "header", + position: "before", + content: "## Overview\n\nNew overview.", + }, + }), + }; + + const overviewInstructions: ToolkitOverviewInstructions = { + toolkitId: "TestKit", + instructions: "Write a new overview.", + sources: [], + }; + + const result = await mergeToolkit( + "TestKit", + [tool], + metadata, + null, + undefined, + { + previousToolkit: previous.toolkit, + overviewGenerator, + overviewInstructions, + } + ); + + expect(result.toolkit.documentationChunks[0]?.content).toBe( + "## Overview\n\nNew overview." + ); + expect( + result.toolkit.documentationChunks.some((chunk) => + chunk.content.includes("Old overview") + ) + ).toBe(false); + }); +}); + +// ============================================================================ +// DataMerger Class Tests +// ============================================================================ + +describe("DataMerger", () => { + const githubTool1 = createTool({ + name: "CreateIssue", + qualifiedName: "Github.CreateIssue", + fullyQualifiedName: "Github.CreateIssue@1.0.0", + auth: { providerId: "github", providerType: "oauth2", scopes: ["repo"] }, + }); + + const githubTool2 = createTool({ + name: "SetStarred", + qualifiedName: "Github.SetStarred", + fullyQualifiedName: "Github.SetStarred@1.0.0", + auth: { + providerId: "github", + providerType: "oauth2", + scopes: ["public_repo"], + }, + }); + + const slackTool = createTool({ + name: "SendMessage", + qualifiedName: "Slack.SendMessage", + fullyQualifiedName: "Slack.SendMessage@1.2.0", + auth: { + providerId: "slack", + providerType: "oauth2", + scopes: ["chat:write"], + }, + }); + + const githubMetadata = createMetadata({ + id: "Github", + label: "GitHub", + category: "development", + }); + const slackMetadata = createMetadata({ + id: "Slack", + label: "Slack", + category: "social", + }); + + describe("mergeToolkit", () => { + it("should merge data for a single toolkit", async () => { + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource([ + githubTool1, + githubTool2, + slackTool, + ]), + metadataSource: new InMemoryMetadataSource([ + githubMetadata, + slackMetadata, + ]), + }); + const merger = new DataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + toolExampleGenerator: createStubGenerator(), + }); + + const result = await merger.mergeToolkit("Github"); + + expect(result.toolkit.id).toBe("Github"); + expect(result.toolkit.label).toBe("GitHub"); + expect(result.toolkit.description).toBe("Toolkit description"); + expect(result.toolkit.tools).toHaveLength(2); + expect(result.toolkit.auth?.allScopes).toContain("repo"); + expect(result.toolkit.auth?.allScopes).toContain("public_repo"); + }); + + it("adds a summary when a summary generator is provided", async () => { + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource([githubTool1]), + metadataSource: new InMemoryMetadataSource([githubMetadata]), + }); + const merger = new DataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + toolExampleGenerator: createStubGenerator(), + toolkitSummaryGenerator: createStubSummaryGenerator("Toolkit summary"), + }); + + const result = await merger.mergeToolkit("Github"); + + expect(result.toolkit.summary).toBe("Toolkit summary (Github)"); + }); + + it("reuses the previous summary when toolkit input is unchanged", async () => { + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource([githubTool1]), + metadataSource: new InMemoryMetadataSource([githubMetadata]), + }); + const previousResult = await mergeToolkit( + "Github", + [githubTool1], + githubMetadata, + null, + createStubGenerator() + ); + previousResult.toolkit.summary = "Cached summary"; + + const countingSummary = createCountingSummaryGenerator(); + const merger = new DataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + toolExampleGenerator: createStubGenerator(), + toolkitSummaryGenerator: countingSummary.generator, + previousToolkits: new Map([["github", previousResult.toolkit]]), + }); + + const result = await merger.mergeToolkit("Github"); + + expect(countingSummary.getCalls()).toBe(0); + expect(result.toolkit.summary).toBe("Cached summary"); + }); + + it("reuses previous examples when the tool is unchanged", async () => { + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource([githubTool1]), + metadataSource: new InMemoryMetadataSource([githubMetadata]), + }); + const previousResult = await mergeToolkit( + "Github", + [githubTool1], + githubMetadata, + null, + createStubGenerator() + ); + const counting = createCountingGenerator(); + const merger = new DataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + toolExampleGenerator: counting.generator, + previousToolkits: new Map([["github", previousResult.toolkit]]), + }); + + const result = await merger.mergeToolkit("Github"); + + expect(counting.getCalls()).toBe(0); + expect(result.toolkit.tools[0]?.codeExample).toEqual( + previousResult.toolkit.tools[0]?.codeExample + ); + }); + + it("calls the generator when the tool definition changes", async () => { + const updatedTool = createTool({ + name: "CreateIssue", + qualifiedName: "Github.CreateIssue", + fullyQualifiedName: "Github.CreateIssue@1.0.0", + description: "Updated description", + auth: { + providerId: "github", + providerType: "oauth2", + scopes: ["repo"], + }, + }); + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource([updatedTool]), + metadataSource: new InMemoryMetadataSource([githubMetadata]), + }); + const previousResult = await mergeToolkit( + "Github", + [githubTool1], + githubMetadata, + null, + createStubGenerator() + ); + const counting = createCountingGenerator(); + const merger = new DataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + toolExampleGenerator: counting.generator, + previousToolkits: new Map([["github", previousResult.toolkit]]), + }); + + await merger.mergeToolkit("Github"); + + expect(counting.getCalls()).toBe(1); + }); + + it("should merge data using unified toolkit data source", async () => { + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource([ + githubTool1, + githubTool2, + slackTool, + ]), + metadataSource: new InMemoryMetadataSource([ + githubMetadata, + slackMetadata, + ]), + }); + const merger = new DataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + toolExampleGenerator: createStubGenerator(), + }); + + const result = await merger.mergeToolkit("Github"); + + expect(result.toolkit.id).toBe("Github"); + expect(result.toolkit.label).toBe("GitHub"); + expect(result.toolkit.tools).toHaveLength(2); + expect(result.toolkit.auth?.allScopes).toContain("repo"); + expect(result.toolkit.auth?.allScopes).toContain("public_repo"); + }); + + it("should filter by version when specified", async () => { + const tools = [ + createTool({ + qualifiedName: "Test.Tool", + fullyQualifiedName: "Test.Tool@1.0.0", + }), + createTool({ + qualifiedName: "Test.Tool", + fullyQualifiedName: "Test.Tool@2.0.0", + }), + ]; + + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource(tools), + metadataSource: new InMemoryMetadataSource([]), + }); + const merger = new DataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + toolExampleGenerator: createStubGenerator(), + }); + + const result = await merger.mergeToolkit("Test", "1.0.0"); + + expect(result.toolkit.tools).toHaveLength(1); + expect(result.toolkit.version).toBe("1.0.0"); + }); + + it("should handle case-insensitive toolkit IDs", async () => { + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource([githubTool1]), + metadataSource: new InMemoryMetadataSource([githubMetadata]), + }); + const merger = new DataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + toolExampleGenerator: createStubGenerator(), + }); + + const result = await merger.mergeToolkit("github"); // lowercase + + expect(result.toolkit.id).toBe("github"); + expect(result.toolkit.label).toBe("GitHub"); + }); + }); + + describe("mergeAllToolkits", () => { + it("should merge all toolkits found in tools", async () => { + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource([ + githubTool1, + githubTool2, + slackTool, + ]), + metadataSource: new InMemoryMetadataSource([ + githubMetadata, + slackMetadata, + ]), + }); + const merger = new DataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + toolExampleGenerator: createStubGenerator(), + }); + + const results = await merger.mergeAllToolkits(); + + expect(results).toHaveLength(2); + + const githubResult = results.find((r) => r.toolkit.id === "Github"); + const slackResult = results.find((r) => r.toolkit.id === "Slack"); + + expect(githubResult?.toolkit.tools).toHaveLength(2); + expect(slackResult?.toolkit.tools).toHaveLength(1); + }); + + it("should return empty array when no tools", async () => { + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource([]), + metadataSource: new InMemoryMetadataSource([]), + }); + const merger = new DataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + toolExampleGenerator: createStubGenerator(), + }); + + const results = await merger.mergeAllToolkits(); + + expect(results).toHaveLength(0); + }); + }); +}); diff --git a/toolkit-docs-generator/tests/scenarios/failed-tools.test.ts b/toolkit-docs-generator/tests/scenarios/failed-tools.test.ts new file mode 100644 index 000000000..04441dbc9 --- /dev/null +++ b/toolkit-docs-generator/tests/scenarios/failed-tools.test.ts @@ -0,0 +1,124 @@ +/** + * Scenario Test: Tool example generation fails + * + * Verifies that when tool example generation fails: + * - The toolkit is still processed + * - Failed tools are recorded + * - Warnings are logged + * - The tool has no codeExample in output + */ +import { describe, expect, it } from "vitest"; + +import { + createDataMerger, + type ToolExampleGenerator, +} from "../../src/merger/data-merger.js"; +import { + EmptyCustomSectionsSource, + InMemoryMetadataSource, + InMemoryToolDataSource, +} from "../../src/sources/in-memory.js"; +import { createCombinedToolkitDataSource } from "../../src/sources/toolkit-data-source.js"; +import type { ToolDefinition } from "../../src/types/index.js"; + +const createTool = ( + overrides: Partial = {} +): ToolDefinition => ({ + name: "TestTool", + qualifiedName: "TestKit.TestTool", + fullyQualifiedName: "TestKit.TestTool@1.0.0", + description: "A test tool", + toolkitDescription: "Test toolkit", + parameters: [], + auth: null, + secrets: [], + output: null, + ...overrides, +}); + +describe("Scenario: Failed tool example generation", () => { + it("records failed tools and continues processing", async () => { + const tools = [ + createTool({ name: "GoodTool", qualifiedName: "TestKit.GoodTool" }), + createTool({ name: "FailTool", qualifiedName: "TestKit.FailTool" }), + createTool({ + name: "AnotherGoodTool", + qualifiedName: "TestKit.AnotherGoodTool", + }), + ]; + + const failingGenerator: ToolExampleGenerator = { + generate: async (tool) => { + if (tool.name === "FailTool") { + throw new Error("LLM API timeout"); + } + return { + codeExample: { + toolName: tool.qualifiedName, + parameters: {}, + requiresAuth: false, + }, + secretsInfo: [], + }; + }, + }; + + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource(tools), + metadataSource: new InMemoryMetadataSource([]), + }); + + const merger = createDataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + toolExampleGenerator: failingGenerator, + }); + + const results = await merger.mergeAllToolkits(); + + expect(results).toHaveLength(1); + const result = results[0]; + + expect(result?.toolkit.tools).toHaveLength(3); + expect(result?.failedTools).toHaveLength(1); + expect(result?.failedTools[0]?.toolName).toBe("FailTool"); + expect(result?.failedTools[0]?.reason).toContain("LLM API timeout"); + expect(result?.warnings.some((w) => w.includes("LLM API timeout"))).toBe( + true + ); + + const failedTool = result?.toolkit.tools.find((t) => t.name === "FailTool"); + expect(failedTool?.codeExample).toBeUndefined(); + + const goodTool = result?.toolkit.tools.find((t) => t.name === "GoodTool"); + expect(goodTool?.codeExample).toBeDefined(); + }); + + it("allows rerun for specific failed toolkits", async () => { + const tools = [ + createTool({ name: "FailTool", qualifiedName: "Github.FailTool" }), + ]; + + const failingGenerator: ToolExampleGenerator = { + generate: async () => { + throw new Error("API error"); + }, + }; + + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource(tools), + metadataSource: new InMemoryMetadataSource([]), + }); + + const merger = createDataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + toolExampleGenerator: failingGenerator, + }); + + const results = await merger.mergeAllToolkits(); + + expect(results[0]?.failedTools).toHaveLength(1); + expect(results[0]?.failedTools[0]?.toolkitId).toBe("Github"); + }); +}); diff --git a/toolkit-docs-generator/tests/scenarios/new-toolkit.test.ts b/toolkit-docs-generator/tests/scenarios/new-toolkit.test.ts new file mode 100644 index 000000000..0d15b949b --- /dev/null +++ b/toolkit-docs-generator/tests/scenarios/new-toolkit.test.ts @@ -0,0 +1,152 @@ +/** + * Scenario Test: New toolkit is added + * + * Verifies that when a new toolkit appears in the API: + * - A new toolkit JSON file is created + * - The toolkit appears in index.json + * - Default metadata is used if not provided + */ +import { mkdtemp, rm } from "fs/promises"; +import { tmpdir } from "os"; +import { join } from "path"; +import { describe, expect, it } from "vitest"; + +import { createJsonGenerator } from "../../src/generator/index.js"; +import { createDataMerger } from "../../src/merger/data-merger.js"; +import { + EmptyCustomSectionsSource, + InMemoryMetadataSource, + InMemoryToolDataSource, +} from "../../src/sources/in-memory.js"; +import { createCombinedToolkitDataSource } from "../../src/sources/toolkit-data-source.js"; +import type { ToolDefinition, ToolkitMetadata } from "../../src/types/index.js"; + +const createTool = ( + overrides: Partial = {} +): ToolDefinition => ({ + name: "TestTool", + qualifiedName: "NewKit.TestTool", + fullyQualifiedName: "NewKit.TestTool@1.0.0", + description: "A test tool", + toolkitDescription: "A new toolkit", + parameters: [], + auth: null, + secrets: [], + output: null, + ...overrides, +}); + +const withTempDir = async (fn: (dir: string) => Promise) => { + const dir = await mkdtemp(join(tmpdir(), "new-toolkit-")); + try { + await fn(dir); + } finally { + await rm(dir, { recursive: true, force: true }); + } +}; + +describe("Scenario: New toolkit is added", () => { + it("creates toolkit JSON and adds to index", async () => { + await withTempDir(async (outputDir) => { + const newTool = createTool(); + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource([newTool]), + metadataSource: new InMemoryMetadataSource([]), + }); + + const merger = createDataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + }); + + const generator = createJsonGenerator({ + outputDir, + prettyPrint: true, + generateIndex: true, + }); + + const results = await merger.mergeAllToolkits(); + const genResult = await generator.generateAll( + results.map((r) => r.toolkit) + ); + + expect(genResult.errors).toHaveLength(0); + expect(genResult.filesWritten.length).toBeGreaterThan(0); + expect( + genResult.filesWritten.some((f) => f.includes("newkit.json")) + ).toBe(true); + expect(genResult.filesWritten.some((f) => f.includes("index.json"))).toBe( + true + ); + + const toolkitFile = genResult.filesWritten.find((f) => + f.includes("newkit.json") + ); + expect(toolkitFile).toBeDefined(); + + const indexFile = genResult.filesWritten.find((f) => + f.includes("index.json") + ); + expect(indexFile).toBeDefined(); + }); + }); + + it("uses default metadata when not provided", async () => { + await withTempDir(async (_outputDir) => { + const newTool = createTool(); + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource([newTool]), + metadataSource: new InMemoryMetadataSource([]), + }); + + const merger = createDataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + }); + + const results = await merger.mergeAllToolkits(); + + expect(results[0]?.toolkit.metadata.category).toBe("development"); + expect(results[0]?.toolkit.metadata.type).toBe("arcade"); + expect( + results[0]?.warnings.some((w) => w.includes("No metadata found")) + ).toBe(true); + }); + }); + + it("uses provided metadata when available", async () => { + await withTempDir(async (_outputDir) => { + const newTool = createTool(); + const metadata: ToolkitMetadata = { + id: "NewKit", + label: "New Kit", + category: "productivity", + iconUrl: "https://example.com/icon.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.example.com", + isComingSoon: false, + isHidden: false, + }; + + const toolkitDataSource = createCombinedToolkitDataSource({ + toolSource: new InMemoryToolDataSource([newTool]), + metadataSource: new InMemoryMetadataSource([metadata]), + }); + + const merger = createDataMerger({ + toolkitDataSource, + customSectionsSource: new EmptyCustomSectionsSource(), + }); + + const results = await merger.mergeAllToolkits(); + + expect(results[0]?.toolkit.metadata.category).toBe("productivity"); + expect(results[0]?.toolkit.label).toBe("New Kit"); + expect( + results[0]?.warnings.some((w) => w.includes("No metadata found")) + ).toBe(false); + }); + }); +}); diff --git a/toolkit-docs-generator/tests/scenarios/removed-toolkit.test.ts b/toolkit-docs-generator/tests/scenarios/removed-toolkit.test.ts new file mode 100644 index 000000000..b5770a804 --- /dev/null +++ b/toolkit-docs-generator/tests/scenarios/removed-toolkit.test.ts @@ -0,0 +1,112 @@ +/** + * Scenario Test: Toolkit not returned by API but exists in docs + * + * Verifies that when a toolkit is missing from API but exists in previous output: + * - The toolkit is detected as removed + * - It's logged but not deleted from output + * - Change detection reports it correctly + */ +import { describe, expect, it } from "vitest"; + +import { detectChanges } from "../../src/diff/index.js"; +import type { MergedToolkit, ToolDefinition } from "../../src/types/index.js"; + +const createMergedToolkit = (id: string): MergedToolkit => ({ + id, + label: id, + version: "1.0.0", + description: "A toolkit", + metadata: { + category: "development", + iconUrl: "https://example.com/icon.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.example.com", + isComingSoon: false, + isHidden: false, + }, + auth: null, + tools: [ + { + name: "Tool1", + qualifiedName: `${id}.Tool1`, + fullyQualifiedName: `${id}.Tool1@1.0.0`, + description: "A tool", + parameters: [], + auth: null, + secrets: [], + secretsInfo: [], + output: null, + documentationChunks: [], + }, + ], + documentationChunks: [], + customImports: [], + subPages: [], + generatedAt: new Date().toISOString(), +}); + +describe("Scenario: Toolkit removed from API", () => { + it("detects toolkit as removed", () => { + const currentToolkitTools = new Map(); + const previousToolkits = new Map([ + ["Github", createMergedToolkit("Github")], + ["Slack", createMergedToolkit("Slack")], + ]); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + expect(result.summary.removedToolkits).toBe(2); + expect( + result.toolkitChanges.filter((c) => c.changeType === "removed") + ).toHaveLength(2); + }); + + it("marks removed toolkits correctly", () => { + const currentToolkitTools = new Map(); + const previousToolkits = new Map([ + ["OldKit", createMergedToolkit("OldKit")], + ]); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + const removedChange = result.toolkitChanges.find( + (c) => c.toolkitId === "OldKit" + ); + expect(removedChange?.changeType).toBe("removed"); + expect(removedChange?.currentToolCount).toBe(0); + expect(removedChange?.previousToolCount).toBe(1); + }); + + it("includes removed toolkits in change log", () => { + const currentToolkitTools = new Map(); + const previousToolkits = new Map([ + ["RemovedKit", createMergedToolkit("RemovedKit")], + ]); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + expect( + result.toolkitChanges.some( + (c) => c.changeType === "removed" && c.toolkitId === "RemovedKit" + ) + ).toBe(true); + }); + + it("does not count removed toolkits as needing regeneration", () => { + const currentToolkitTools = new Map(); + const previousToolkits = new Map([ + ["RemovedKit", createMergedToolkit("RemovedKit")], + ]); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + // Removed toolkits should not appear in changed IDs (they don't need regeneration) + const changedIds = result.toolkitChanges + .filter((c) => c.changeType !== "unchanged" && c.changeType !== "removed") + .map((c) => c.toolkitId); + + expect(changedIds).not.toContain("RemovedKit"); + }); +}); diff --git a/toolkit-docs-generator/tests/scenarios/skip-unchanged.test.ts b/toolkit-docs-generator/tests/scenarios/skip-unchanged.test.ts new file mode 100644 index 000000000..28f967663 --- /dev/null +++ b/toolkit-docs-generator/tests/scenarios/skip-unchanged.test.ts @@ -0,0 +1,195 @@ +/** + * Scenario Test: Skip unchanged toolkits + * + * Verifies that --skip-unchanged correctly identifies and skips unchanged toolkits. + */ +import { describe, expect, it } from "vitest"; + +import { + detectChanges, + getChangedToolkitIds, + hasChanges, +} from "../../src/diff/index.js"; +import type { MergedToolkit, ToolDefinition } from "../../src/types/index.js"; + +const createTool = ( + overrides: Partial = {} +): ToolDefinition => ({ + name: "TestTool", + qualifiedName: "TestKit.TestTool", + fullyQualifiedName: "TestKit.TestTool@1.0.0", + description: "A test tool", + toolkitDescription: "Test toolkit", + parameters: [], + auth: null, + secrets: [], + output: null, + ...overrides, +}); + +const createMergedToolkit = (id: string, version = "1.0.0"): MergedToolkit => ({ + id, + label: id, + version, + description: "A toolkit", + metadata: { + category: "development", + iconUrl: "https://example.com/icon.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.example.com", + isComingSoon: false, + isHidden: false, + }, + auth: null, + tools: [ + { + name: "Tool1", + qualifiedName: `${id}.Tool1`, + fullyQualifiedName: `${id}.Tool1@${version}`, + description: "A test tool", // Must match createTool description + parameters: [], + auth: null, + secrets: [], + secretsInfo: [], + output: null, + documentationChunks: [], + }, + ], + documentationChunks: [], + customImports: [], + subPages: [], + generatedAt: new Date().toISOString(), +}); + +describe("Scenario: Skip unchanged toolkits", () => { + it("identifies unchanged toolkits correctly", () => { + const currentToolkitTools = new Map([ + [ + "Github", + [createTool({ name: "Tool1", qualifiedName: "Github.Tool1" })], + ], + ["Slack", [createTool({ name: "Tool1", qualifiedName: "Slack.Tool1" })]], + ]); + + const previousToolkits = new Map([ + ["Github", createMergedToolkit("Github")], + ["Slack", createMergedToolkit("Slack")], + ]); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + expect(hasChanges(result)).toBe(false); + expect(getChangedToolkitIds(result)).toHaveLength(0); + expect(result.summary.unchangedToolkits).toBe(2); + }); + + it("identifies only changed toolkits when mixed", () => { + const currentToolkitTools = new Map([ + [ + "Github", + [ + createTool({ + name: "Tool1", + qualifiedName: "Github.Tool1", + description: "Updated", + }), + ], + ], + ["Slack", [createTool({ name: "Tool1", qualifiedName: "Slack.Tool1" })]], + ["Jira", [createTool({ name: "Tool1", qualifiedName: "Jira.Tool1" })]], + ]); + + const previousToolkits = new Map([ + ["Github", createMergedToolkit("Github")], + ["Slack", createMergedToolkit("Slack")], + ]); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + expect(hasChanges(result)).toBe(true); + const changedIds = getChangedToolkitIds(result); + expect(changedIds).toContain("Github"); // Modified + expect(changedIds).toContain("Jira"); // New + expect(changedIds).not.toContain("Slack"); // Unchanged + }); + + it("excludes removed toolkits from changed IDs", () => { + const currentToolkitTools = new Map([ + [ + "Github", + [createTool({ name: "Tool1", qualifiedName: "Github.Tool1" })], + ], + ]); + + const previousToolkits = new Map([ + ["Github", createMergedToolkit("Github")], + ["Slack", createMergedToolkit("Slack")], + ]); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + const changedIds = getChangedToolkitIds(result); + expect(changedIds).not.toContain("Slack"); // Removed, not changed + expect(result.summary.removedToolkits).toBe(1); + }); + + it("includes version-only changes in changed IDs", () => { + // Create a toolkit where only the version changed (tool signature is identical) + const currentTool = createTool({ + name: "Tool1", + qualifiedName: "Github.Tool1", + fullyQualifiedName: "Github.Tool1@2.0.0", + }); + + const previousToolkit: MergedToolkit = { + id: "Github", + label: "Github", + version: "1.0.0", // Old version + description: "A toolkit", + metadata: { + category: "development", + iconUrl: "https://example.com/icon.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.example.com", + isComingSoon: false, + isHidden: false, + }, + auth: null, + tools: [ + { + name: "Tool1", + qualifiedName: "Github.Tool1", + fullyQualifiedName: "Github.Tool1@1.0.0", // Old version in fullyQualifiedName + description: "A test tool", // Must match createTool default description + parameters: [], // Same parameters + auth: null, + secrets: [], + secretsInfo: [], + output: null, + documentationChunks: [], + }, + ], + documentationChunks: [], + customImports: [], + subPages: [], + generatedAt: new Date().toISOString(), + }; + + const currentToolkitTools = new Map([["Github", [currentTool]]]); + + const previousToolkits = new Map([["Github", previousToolkit]]); + + const result = detectChanges(currentToolkitTools, previousToolkits); + + const changedIds = getChangedToolkitIds(result); + expect(changedIds).toContain("Github"); // Version changed + expect(result.summary.modifiedToolkits).toBe(1); + expect(result.summary.versionOnlyToolkits).toBe(1); + expect(result.toolkitChanges[0]?.versionChanged).toBe(true); + expect(result.toolkitChanges[0]?.toolChanges).toHaveLength(0); // No tool-level changes + }); +}); diff --git a/toolkit-docs-generator/tests/sources/arcade-api.test.ts b/toolkit-docs-generator/tests/sources/arcade-api.test.ts new file mode 100644 index 000000000..d09122010 --- /dev/null +++ b/toolkit-docs-generator/tests/sources/arcade-api.test.ts @@ -0,0 +1,737 @@ +import { beforeEach, describe, expect, it, vi } from "vitest"; +import { + ArcadeApiSource, + createArcadeApiSource, + createProductionArcadeApiSource, +} from "../../src/sources/arcade-api.js"; +import type { ArcadeToolsResponse } from "../../src/sources/arcade-api-types.js"; + +// ============================================================================ +// Test Fixtures +// ============================================================================ + +/** + * Realistic fixture based on actual Arcade API response + */ +const createMockArcadeResponse = ( + items: ArcadeToolsResponse["items"], + totalCount?: number +): ArcadeToolsResponse => ({ + items, + limit: 100, + offset: 0, + page_count: 1, + total_count: totalCount ?? items.length, +}); + +const mockAirtableTool: ArcadeToolsResponse["items"][0] = { + fully_qualified_name: "AirtableApi.AddBaseCollaborator@4.0.0", + qualified_name: "AirtableApi.AddBaseCollaborator", + name: "AddBaseCollaborator", + description: + "Add a collaborator to an Airtable base.\n\nUse this tool to add a new collaborator to a specified Airtable base.", + toolkit: { + name: "AirtableApi", + description: + "Tools that enable LLMs to interact directly with the Airtable API.", + version: "4.0.0", + }, + input: { + parameters: [ + { + name: "mode", + required: true, + description: + "Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation", + value_schema: { + val_type: "string", + enum: ["get_request_schema", "execute"], + }, + inferrable: true, + }, + { + name: "base_id", + required: false, + description: + "The ID of the Airtable base to which the collaborator will be added.", + value_schema: { + val_type: "string", + }, + inferrable: true, + }, + { + name: "request_body", + required: false, + description: "Stringified JSON representing the request body.", + value_schema: { + val_type: "string", + }, + inferrable: true, + }, + ], + }, + output: { + available_modes: ["value", "error"], + description: "Response from the API endpoint 'add-base-collaborator'.", + value_schema: { + val_type: "json", + }, + }, + requirements: { + met: true, + authorization: { + id: "arcade-airtable", + provider_id: "airtable", + provider_type: "oauth2", + oauth2: { + scopes: ["workspacesAndBases:write"], + }, + status: "active", + }, + }, +}; + +const mockGoogleCalendarTool: ArcadeToolsResponse["items"][0] = { + fully_qualified_name: "GoogleCalendar.CreateEvent@1.0.0", + qualified_name: "GoogleCalendar.CreateEvent", + name: "CreateEvent", + description: "Create a new calendar event.", + toolkit: { + name: "GoogleCalendar", + description: "Tools for interacting with Google Calendar.", + version: "1.0.0", + }, + input: { + parameters: [ + { + name: "title", + required: true, + description: "The title of the event.", + value_schema: { + val_type: "string", + }, + inferrable: true, + }, + { + name: "start_time", + required: true, + description: "The start time of the event.", + value_schema: { + val_type: "string", + }, + inferrable: true, + }, + { + name: "attendees", + required: false, + description: "List of attendee emails.", + value_schema: { + val_type: "array", + inner_val_type: "string", + }, + inferrable: true, + }, + ], + }, + output: { + available_modes: ["value", "error"], + description: "The created event.", + value_schema: { + val_type: "json", + }, + }, + requirements: { + met: true, + authorization: { + id: "arcade-google", + provider_id: "google", + provider_type: "oauth2", + oauth2: { + scopes: [ + "https://www.googleapis.com/auth/calendar", + "https://www.googleapis.com/auth/calendar.events", + ], + }, + status: "active", + }, + secrets: [ + { + key: "GOOGLE_CLIENT_ID", + met: true, + }, + ], + }, +}; + +const mockToolWithSecrets: ArcadeToolsResponse["items"][0] = { + fully_qualified_name: "Stripe.CreatePayment@2.0.0", + qualified_name: "Stripe.CreatePayment", + name: "CreatePayment", + description: "Create a new payment.", + toolkit: { + name: "Stripe", + description: "Payment processing tools.", + version: "2.0.0", + }, + input: { + parameters: [ + { + name: "amount", + required: true, + description: "Amount in cents.", + value_schema: { + val_type: "integer", + }, + inferrable: true, + }, + ], + }, + output: { + available_modes: ["value", "error"], + description: "Payment result.", + value_schema: { + val_type: "json", + }, + }, + requirements: { + met: false, + secrets: [ + { + key: "STRIPE_API_KEY", + met: false, + status_reason: "Secret not configured", + }, + { + key: "STRIPE_WEBHOOK_SECRET", + met: false, + status_reason: "Secret not configured", + }, + ], + }, +}; + +// ============================================================================ +// Tests +// ============================================================================ + +describe("ArcadeApiSource", () => { + let mockFetch: ReturnType; + + beforeEach(() => { + mockFetch = vi.fn(); + }); + + describe("constructor and configuration", () => { + it("should create source with default page size", () => { + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + fetchFn: mockFetch, + }); + expect(source).toBeInstanceOf(ArcadeApiSource); + }); + + it("should normalize base URL with trailing slash", () => { + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => Promise.resolve(createMockArcadeResponse([])), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev/", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + source.fetchAllTools(); + + expect(mockFetch).toHaveBeenCalledWith( + expect.stringContaining("https://api.arcade.dev/v1/tools"), + expect.any(Object) + ); + }); + + it("should handle base URL with /v1 suffix", () => { + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => Promise.resolve(createMockArcadeResponse([])), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev/v1", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + source.fetchAllTools(); + + expect(mockFetch).toHaveBeenCalledWith( + expect.stringContaining("https://api.arcade.dev/v1/tools"), + expect.any(Object) + ); + }); + + it("should cap page size at maximum", () => { + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => Promise.resolve(createMockArcadeResponse([])), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + pageSize: 1500, // Over max of 1000 + fetchFn: mockFetch, + }); + + source.fetchAllTools(); + + const calledUrl = mockFetch.mock.calls[0]?.[0] as string; + expect(calledUrl).toContain("limit=1000"); // Capped at 1000 + }); + }); + + describe("fetchAllTools", () => { + it("should fetch and transform tools correctly", async () => { + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => + Promise.resolve( + createMockArcadeResponse([mockAirtableTool, mockGoogleCalendarTool]) + ), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + const tools = await source.fetchAllTools(); + + expect(tools).toHaveLength(2); + + // Check first tool transformation + const airtableTool = tools[0]; + expect(airtableTool).toEqual({ + name: "AddBaseCollaborator", + qualifiedName: "AirtableApi.AddBaseCollaborator", + fullyQualifiedName: "AirtableApi.AddBaseCollaborator@4.0.0", + description: expect.stringContaining("Add a collaborator"), + toolkitDescription: expect.stringContaining("Airtable API"), + parameters: [ + { + name: "mode", + type: "string", + innerType: undefined, + required: true, + description: expect.stringContaining("Operation mode"), + enum: ["get_request_schema", "execute"], + inferrable: true, + }, + { + name: "base_id", + type: "string", + innerType: undefined, + required: false, + description: expect.stringContaining("ID of the Airtable base"), + enum: null, + inferrable: true, + }, + { + name: "request_body", + type: "string", + innerType: undefined, + required: false, + description: expect.stringContaining("Stringified JSON"), + enum: null, + inferrable: true, + }, + ], + auth: { + providerId: "airtable", + providerType: "oauth2", + scopes: ["workspacesAndBases:write"], + }, + secrets: [], + output: { + type: "json", + description: expect.stringContaining("add-base-collaborator"), + }, + }); + }); + + it("should handle tools with array parameters", async () => { + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => + Promise.resolve(createMockArcadeResponse([mockGoogleCalendarTool])), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + const tools = await source.fetchAllTools(); + const attendeesParam = tools[0]?.parameters.find( + (p) => p.name === "attendees" + ); + + expect(attendeesParam).toEqual({ + name: "attendees", + type: "array", + innerType: "string", + required: false, + description: "List of attendee emails.", + enum: null, + inferrable: true, + }); + }); + + it("should extract secrets from requirements", async () => { + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => + Promise.resolve(createMockArcadeResponse([mockToolWithSecrets])), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + const tools = await source.fetchAllTools(); + + expect(tools[0]?.secrets).toEqual([ + "STRIPE_API_KEY", + "STRIPE_WEBHOOK_SECRET", + ]); + }); + + it("should filter by toolkit ID client-side", async () => { + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => + Promise.resolve( + createMockArcadeResponse([ + mockAirtableTool, + mockGoogleCalendarTool, + mockToolWithSecrets, + ]) + ), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + const tools = await source.fetchAllTools({ toolkitId: "GoogleCalendar" }); + + expect(tools).toHaveLength(1); + expect(tools[0]?.qualifiedName).toBe("GoogleCalendar.CreateEvent"); + }); + + it("should filter by toolkit ID case-insensitively", async () => { + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => + Promise.resolve(createMockArcadeResponse([mockGoogleCalendarTool])), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + const tools = await source.fetchAllTools({ toolkitId: "googlecalendar" }); + + expect(tools).toHaveLength(1); + }); + + it("should filter by version", async () => { + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => + Promise.resolve( + createMockArcadeResponse([ + mockAirtableTool, // @4.0.0 + mockGoogleCalendarTool, // @1.0.0 + mockToolWithSecrets, // @2.0.0 + ]) + ), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + const tools = await source.fetchAllTools({ version: "4.0.0" }); + + expect(tools).toHaveLength(1); + expect(tools[0]?.fullyQualifiedName).toBe( + "AirtableApi.AddBaseCollaborator@4.0.0" + ); + }); + }); + + describe("pagination", () => { + it("should handle pagination correctly", async () => { + // First page + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => + Promise.resolve({ + items: [mockAirtableTool], + limit: 1, + offset: 0, + total_count: 2, + }), + }); + + // Second page + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => + Promise.resolve({ + items: [mockGoogleCalendarTool], + limit: 1, + offset: 1, + total_count: 2, + }), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + pageSize: 1, // Force pagination + fetchFn: mockFetch, + }); + + const tools = await source.fetchAllTools(); + + expect(mockFetch).toHaveBeenCalledTimes(2); + expect(tools).toHaveLength(2); + }); + + it("should stop pagination when no more items", async () => { + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => + Promise.resolve({ + items: [mockAirtableTool], + limit: 100, + offset: 0, + total_count: 100, // Says 100 but only returns 1 + }), + }); + + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => + Promise.resolve({ + items: [], + limit: 100, + offset: 1, + total_count: 100, + }), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + const tools = await source.fetchAllTools(); + + expect(tools).toHaveLength(1); + }); + }); + + describe("fetchToolsByToolkit", () => { + it("should call fetchAllTools with toolkit filter", async () => { + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => + Promise.resolve(createMockArcadeResponse([mockGoogleCalendarTool])), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + const tools = await source.fetchToolsByToolkit("GoogleCalendar"); + + expect(tools).toHaveLength(1); + expect(tools[0]?.qualifiedName).toBe("GoogleCalendar.CreateEvent"); + }); + }); + + describe("isAvailable", () => { + it("should return true when API is accessible", async () => { + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => Promise.resolve(createMockArcadeResponse([])), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + const available = await source.isAvailable(); + expect(available).toBe(true); + }); + + it("should return false when API returns error", async () => { + mockFetch.mockResolvedValueOnce({ + ok: false, + status: 401, + statusText: "Unauthorized", + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + const available = await source.isAvailable(); + expect(available).toBe(false); + }); + + it("should return false when fetch throws", async () => { + mockFetch.mockRejectedValueOnce(new Error("Network error")); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + const available = await source.isAvailable(); + expect(available).toBe(false); + }); + }); + + describe("error handling", () => { + it("should throw on API error with JSON detail", async () => { + mockFetch.mockResolvedValueOnce({ + ok: false, + status: 401, + statusText: "Unauthorized", + headers: new Map([["content-type", "application/json"]]), + json: () => Promise.resolve({ detail: "Invalid API key" }), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "invalid-key", + fetchFn: mockFetch, + }); + + await expect(source.fetchAllTools()).rejects.toThrow( + "Arcade API error 401: Invalid API key" + ); + }); + + it("should throw on API error without JSON detail", async () => { + mockFetch.mockResolvedValueOnce({ + ok: false, + status: 500, + statusText: "Internal Server Error", + headers: new Map([["content-type", "text/plain"]]), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + await expect(source.fetchAllTools()).rejects.toThrow( + "Arcade API error 500: Internal Server Error" + ); + }); + + it("should throw on invalid response schema", async () => { + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => Promise.resolve({ invalid: "response" }), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + fetchFn: mockFetch, + }); + + await expect(source.fetchAllTools()).rejects.toThrow( + "Invalid Arcade API response" + ); + }); + }); + + describe("authorization header", () => { + it("should include Bearer token in request", async () => { + mockFetch.mockResolvedValueOnce({ + ok: true, + json: () => Promise.resolve(createMockArcadeResponse([])), + }); + + const source = new ArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "my-secret-key", + fetchFn: mockFetch, + }); + + await source.fetchAllTools(); + + expect(mockFetch).toHaveBeenCalledWith(expect.any(String), { + headers: { + Authorization: "Bearer my-secret-key", + Accept: "application/json", + }, + }); + }); + }); +}); + +describe("Factory functions", () => { + it("createArcadeApiSource should create source instance", () => { + const source = createArcadeApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test-key", + }); + expect(source).toBeInstanceOf(ArcadeApiSource); + }); + + it("createProductionArcadeApiSource should use default URL", () => { + const mockFetch = vi.fn().mockResolvedValueOnce({ + ok: true, + json: () => Promise.resolve(createMockArcadeResponse([])), + }); + + const source = createProductionArcadeApiSource("test-key", { + fetchFn: mockFetch, + }); + + source.fetchAllTools(); + + expect(mockFetch).toHaveBeenCalledWith( + expect.stringContaining("https://api.arcade.dev/v1/tools"), + expect.any(Object) + ); + }); +}); diff --git a/toolkit-docs-generator/tests/sources/custom-sections-file.test.ts b/toolkit-docs-generator/tests/sources/custom-sections-file.test.ts new file mode 100644 index 000000000..c4a68192c --- /dev/null +++ b/toolkit-docs-generator/tests/sources/custom-sections-file.test.ts @@ -0,0 +1,90 @@ +import { mkdtemp, rm, writeFile } from "fs/promises"; +import { tmpdir } from "os"; +import { join } from "path"; +import { afterEach, describe, expect, it } from "vitest"; +import { createCustomSectionsFileSource } from "../../src/sources/custom-sections-file.js"; + +const createTempDir = async (): Promise => + mkdtemp(join(tmpdir(), "custom-sections-")); + +describe("CustomSectionsFileSource", () => { + let tempDir: string | null = null; + + afterEach(async () => { + if (tempDir) { + await rm(tempDir, { recursive: true, force: true }); + tempDir = null; + } + }); + + it("returns empty data when file is missing", async () => { + tempDir = await createTempDir(); + const filePath = join(tempDir, "missing.json"); + const source = createCustomSectionsFileSource(filePath); + + const result = await source.getCustomSections("Github"); + expect(result).toBeNull(); + + const all = await source.getAllCustomSections(); + expect(all).toEqual({}); + }); + + it("loads custom sections with defaults applied", async () => { + tempDir = await createTempDir(); + const filePath = join(tempDir, "custom-sections.json"); + await writeFile( + filePath, + JSON.stringify( + { + Github: {}, + }, + null, + 2 + ) + ); + + const source = createCustomSectionsFileSource(filePath); + const result = await source.getCustomSections("Github"); + + expect(result).not.toBeNull(); + expect(result?.documentationChunks).toEqual([]); + expect(result?.customImports).toEqual([]); + expect(result?.subPages).toEqual([]); + expect(result?.toolChunks).toEqual({}); + }); + + it("throws a helpful error when JSON is invalid", async () => { + tempDir = await createTempDir(); + const filePath = join(tempDir, "invalid.json"); + await writeFile(filePath, "{ invalid-json"); + + const source = createCustomSectionsFileSource(filePath); + + await expect(source.getAllCustomSections()).rejects.toThrow( + `Custom sections file is not valid JSON (${filePath})` + ); + }); + + it("throws a helpful error when schema is invalid", async () => { + tempDir = await createTempDir(); + const filePath = join(tempDir, "invalid-schema.json"); + await writeFile( + filePath, + JSON.stringify( + { + Github: { + documentationChunks: "not-an-array", + }, + }, + null, + 2 + ) + ); + + const source = createCustomSectionsFileSource(filePath); + + await expect(source.getAllCustomSections()).rejects.toThrow( + `Custom sections file has invalid schema (${filePath})` + ); + }); +}); diff --git a/toolkit-docs-generator/tests/sources/design-system-metadata.test.ts b/toolkit-docs-generator/tests/sources/design-system-metadata.test.ts new file mode 100644 index 000000000..32e0d7c6a --- /dev/null +++ b/toolkit-docs-generator/tests/sources/design-system-metadata.test.ts @@ -0,0 +1,61 @@ +import { describe, expect, it } from "vitest"; +import { createDesignSystemMetadataSourceFromToolkits } from "../../src/sources/design-system-metadata.js"; +import type { ToolkitMetadata } from "../../src/types/index.js"; + +const createMetadata = ( + overrides: Partial = {} +): ToolkitMetadata => ({ + id: "Github", + label: "GitHub", + category: "development", + iconUrl: "https://design-system.arcade.dev/icons/github.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.arcade.dev/en/mcp-servers/development/github", + isComingSoon: false, + isHidden: false, + ...overrides, +}); + +describe("DesignSystemMetadataSource", () => { + it("returns exact match when present", async () => { + const source = createDesignSystemMetadataSourceFromToolkits([ + createMetadata({ + id: "GithubApi", + label: "GitHub API", + type: "arcade_starter", + }), + ]); + + const meta = await source.getToolkitMetadata("GithubApi"); + expect(meta?.label).toBe("GitHub API"); + expect(meta?.type).toBe("arcade_starter"); + }); + + it("falls back to base provider icon for *Api toolkits", async () => { + const source = createDesignSystemMetadataSourceFromToolkits([ + createMetadata(), + ]); + + const meta = await source.getToolkitMetadata("GithubApi"); + expect(meta?.label).toBe("GitHub API"); + expect(meta?.iconUrl).toBe( + "https://design-system.arcade.dev/icons/github.svg" + ); + }); + + it("does not map non-api toolkits to an Api variant", async () => { + const source = createDesignSystemMetadataSourceFromToolkits([ + createMetadata({ + id: "FigmaApi", + label: "Figma API", + category: "productivity", + type: "arcade_starter", + }), + ]); + + const meta = await source.getToolkitMetadata("Figma"); + expect(meta).toBeNull(); + }); +}); diff --git a/toolkit-docs-generator/tests/sources/engine-api.test.ts b/toolkit-docs-generator/tests/sources/engine-api.test.ts new file mode 100644 index 000000000..1b6a31750 --- /dev/null +++ b/toolkit-docs-generator/tests/sources/engine-api.test.ts @@ -0,0 +1,328 @@ +import { describe, expect, it } from "vitest"; + +import { EngineApiSource } from "../../src/sources/engine-api.js"; + +type ToolMetadataItem = { + fully_qualified_name: string; + qualified_name: string; + name: string; + description: string | null; + toolkit: { + name: string; + version: string; + description: string | null; + }; + input: { + parameters: Array<{ + name: string; + required: boolean; + description: string | null; + value_schema: { + val_type: string; + inner_val_type: string | null; + enum: string[] | null; + }; + inferrable: boolean; + }>; + }; + output?: { + description: string | null; + value_schema: { + val_type: string; + inner_val_type: string | null; + enum: string[] | null; + } | null; + } | null; + requirements?: { + authorization: { + id?: string | null; + provider_id: string | null; + provider_type: string | null; + scopes: string[]; + } | null; + secrets: Array<{ key: string }> | null; + } | null; +}; + +const createItems = (): ToolMetadataItem[] => [ + { + fully_qualified_name: "Github.CreateIssue@1.0.0", + qualified_name: "Github.CreateIssue", + name: "CreateIssue", + description: "Create issue", + toolkit: { + name: "Github", + version: "1.0.0", + description: "GitHub toolkit", + }, + input: { parameters: [] }, + output: null, + requirements: { + authorization: { + provider_id: "github", + provider_type: "oauth2", + scopes: ["repo"], + }, + secrets: [{ key: "GITHUB_API_KEY" }], + }, + }, + { + fully_qualified_name: "Slack.SendMessage@1.2.0", + qualified_name: "Slack.SendMessage", + name: "SendMessage", + description: "Send message", + toolkit: { + name: "Slack", + version: "1.2.0", + description: "Slack toolkit", + }, + input: { parameters: [] }, + output: { + description: "Confirmation", + value_schema: null, + }, + requirements: { + authorization: { + provider_id: null, + provider_type: "oauth2", + scopes: ["chat:write"], + }, + secrets: null, + }, + }, +]; + +const createFetchStub = + (items: ToolMetadataItem[], status = 200) => + async (input: RequestInfo | URL) => { + if (status !== 200) { + return new Response("error", { status }); + } + + const url = new URL(input.toString()); + const limit = Number(url.searchParams.get("limit") ?? items.length); + const offset = Number(url.searchParams.get("offset") ?? 0); + const toolkit = url.searchParams.get("toolkit"); + const providerId = url.searchParams.get("provider_id"); + const version = url.searchParams.get("version"); + + let filtered = items; + if (toolkit) { + filtered = filtered.filter((item) => item.toolkit.name === toolkit); + } + if (providerId) { + filtered = filtered.filter( + (item) => item.requirements?.authorization?.provider_id === providerId + ); + } + if (version) { + filtered = filtered.filter((item) => + item.fully_qualified_name.endsWith(`@${version}`) + ); + } + + const pageItems = filtered.slice(offset, offset + limit); + + return new Response( + JSON.stringify({ + items: pageItems, + total_count: filtered.length, + }), + { + status: 200, + headers: { "Content-Type": "application/json" }, + } + ); + }; + +const createErrorFetchStub = (status: number, payload: unknown) => async () => + new Response(JSON.stringify(payload), { + status, + headers: { "Content-Type": "application/json" }, + }); + +const createInspectFetchStub = + (inspect: (params: URLSearchParams) => void) => + async (input: RequestInfo | URL) => { + const url = new URL(input.toString()); + inspect(url.searchParams); + return new Response( + JSON.stringify({ + items: [], + total_count: 0, + }), + { + status: 200, + headers: { "Content-Type": "application/json" }, + } + ); + }; + +const createSummaryFetchStub = + (payload: unknown, inspect?: (params: URLSearchParams) => void) => + async (input: RequestInfo | URL) => { + const url = new URL(input.toString()); + inspect?.(url.searchParams); + return new Response(JSON.stringify(payload), { + status: 200, + headers: { "Content-Type": "application/json" }, + }); + }; + +const createInvalidJsonFetchStub = + (contentType = "application/json") => + async () => + new Response("not-json", { + status: 200, + headers: { "Content-Type": contentType }, + }); + +describe("EngineApiSource", () => { + it("fetches and transforms tool metadata with pagination", async () => { + const items = createItems(); + const source = new EngineApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test", + pageSize: 1, + fetchFn: createFetchStub(items), + }); + + const tools = await source.fetchAllTools(); + + expect(tools).toHaveLength(2); + expect(tools[0]?.toolkitDescription).toBe("GitHub toolkit"); + expect(tools[0]?.secrets).toEqual(["GITHUB_API_KEY"]); + expect(tools[1]?.output?.type).toBe("unknown"); + expect(tools[1]?.auth?.providerId).toBeNull(); + }); + + it("filters tools by toolkit and provider", async () => { + const items = createItems(); + const source = new EngineApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test", + fetchFn: createFetchStub(items), + }); + + const tools = await source.fetchAllTools({ + toolkitId: "Github", + providerId: "github", + }); + + expect(tools).toHaveLength(1); + expect(tools[0]?.qualifiedName).toBe("Github.CreateIssue"); + }); + + it("returns false when the endpoint is not available", async () => { + const source = new EngineApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test", + fetchFn: createFetchStub(createItems(), 500), + }); + + const available = await source.isAvailable(); + + expect(available).toBe(false); + }); + + it("includes error details from API responses", async () => { + const source = new EngineApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test", + fetchFn: createErrorFetchStub(400, { + name: "BadRequest", + message: "Invalid query", + }), + }); + + await expect(source.fetchAllTools()).rejects.toThrow( + "BadRequest: Invalid query" + ); + }); + + it("clamps page size to the maximum limit", async () => { + const source = new EngineApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test", + pageSize: 1500, // Over max of 1000 + fetchFn: createInspectFetchStub((params) => { + expect(params.get("limit")).toBe("1000"); // Capped at 1000 + }), + }); + + await source.fetchAllTools(); + }); + + it("forces include_all_versions when filtering by version", async () => { + const source = new EngineApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test", + fetchFn: createInspectFetchStub((params) => { + expect(params.get("include_all_versions")).toBe("true"); + expect(params.get("version")).toBe("0.1.3"); + }), + }); + + await source.fetchAllTools({ version: "0.1.3" }); + }); + + it("fetches toolkit summary using summary mode", async () => { + const summaryPayload = { + total_tools: 2, + total_toolkits: 1, + starter_toolkits: 0, + toolkits: [ + { + name: "Github", + version: "1.0.0", + tool_count: 2, + requires_secrets: true, + requires_oauth: true, + }, + ], + }; + + const source = new EngineApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test", + fetchFn: createSummaryFetchStub(summaryPayload, (params) => { + expect(params.get("mode")).toBe("summary"); + }), + }); + + const summary = await source.fetchToolkitsSummary(); + + expect(summary.totalToolkits).toBe(1); + expect(summary.toolkits[0]).toEqual({ + name: "Github", + version: "1.0.0", + toolCount: 2, + requiresSecrets: true, + requiresOauth: true, + }); + }); + + it("throws a clear error when tool metadata response is invalid JSON", async () => { + const source = new EngineApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test", + fetchFn: createInvalidJsonFetchStub(), + }); + + await expect(source.fetchAllTools()).rejects.toThrow( + "Engine API returned invalid JSON for tool metadata" + ); + }); + + it("throws a clear error when summary response is invalid JSON", async () => { + const source = new EngineApiSource({ + baseUrl: "https://api.arcade.dev", + apiKey: "test", + fetchFn: createInvalidJsonFetchStub(), + }); + + await expect(source.fetchToolkitsSummary()).rejects.toThrow( + "Engine API returned invalid JSON for tool metadata summary" + ); + }); +}); diff --git a/toolkit-docs-generator/tests/sources/in-memory.test.ts b/toolkit-docs-generator/tests/sources/in-memory.test.ts new file mode 100644 index 000000000..917b4a93b --- /dev/null +++ b/toolkit-docs-generator/tests/sources/in-memory.test.ts @@ -0,0 +1,370 @@ +/** + * Tests for in-memory data source implementations + * + * These tests demonstrate the testing philosophy: + * - Use real implementations instead of mocks + * - Test with realistic fixture data + * - Focus on behavior, not implementation details + */ +import { describe, expect, it } from "vitest"; +import { + EmptyCustomSectionsSource, + InMemoryCustomSectionsSource, + InMemoryMetadataSource, + InMemoryToolDataSource, +} from "../../src/sources/in-memory.js"; +import type { + CustomSections, + ToolDefinition, + ToolkitMetadata, +} from "../../src/types/index.js"; + +// ============================================================================ +// Test Fixtures - Realistic data matching production schema +// ============================================================================ + +const createTestTool = ( + overrides: Partial = {} +): ToolDefinition => ({ + name: "CreateIssue", + qualifiedName: "Github.CreateIssue", + fullyQualifiedName: "Github.CreateIssue@1.0.0", + description: "Create a new issue in a GitHub repository", + parameters: [ + { + name: "owner", + type: "string", + required: true, + description: "Repository owner", + enum: null, + inferrable: true, + }, + { + name: "repo", + type: "string", + required: true, + description: "Repository name", + enum: null, + inferrable: true, + }, + ], + auth: { + providerId: "github", + providerType: "oauth2", + scopes: ["repo"], + }, + secrets: [], + output: { + type: "object", + description: "Created issue details", + }, + ...overrides, +}); + +const createTestMetadata = ( + overrides: Partial = {} +): ToolkitMetadata => ({ + id: "Github", + label: "GitHub", + category: "development", + iconUrl: "https://design-system.arcade.dev/icons/github.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.arcade.dev/en/mcp-servers/development/github", + isComingSoon: false, + isHidden: false, + ...overrides, +}); + +const createTestCustomSections = ( + overrides: Partial = {} +): CustomSections => ({ + documentationChunks: [ + { + type: "warning", + location: "header", + position: "after", + content: "This toolkit requires OAuth2 authentication.", + }, + ], + customImports: [], + subPages: [], + toolChunks: {}, + ...overrides, +}); + +// ============================================================================ +// InMemoryToolDataSource Tests +// ============================================================================ + +describe("InMemoryToolDataSource", () => { + const githubTool1 = createTestTool({ + name: "CreateIssue", + qualifiedName: "Github.CreateIssue", + fullyQualifiedName: "Github.CreateIssue@1.0.0", + }); + + const githubTool2 = createTestTool({ + name: "SetStarred", + qualifiedName: "Github.SetStarred", + fullyQualifiedName: "Github.SetStarred@1.0.0", + }); + + const slackTool = createTestTool({ + name: "SendMessage", + qualifiedName: "Slack.SendMessage", + fullyQualifiedName: "Slack.SendMessage@1.2.0", + auth: { + providerId: "slack", + providerType: "oauth2", + scopes: ["chat:write"], + }, + }); + + const testTools = [githubTool1, githubTool2, slackTool]; + + describe("fetchToolsByToolkit", () => { + it("should return tools for the specified toolkit", async () => { + const source = new InMemoryToolDataSource(testTools); + + const result = await source.fetchToolsByToolkit("Github"); + + expect(result).toHaveLength(2); + expect(result.map((t) => t.name)).toContain("CreateIssue"); + expect(result.map((t) => t.name)).toContain("SetStarred"); + }); + + it("should handle case-insensitive toolkit IDs", async () => { + const source = new InMemoryToolDataSource(testTools); + + const result = await source.fetchToolsByToolkit("github"); + + expect(result).toHaveLength(2); + }); + + it("should return empty array for unknown toolkit", async () => { + const source = new InMemoryToolDataSource(testTools); + + const result = await source.fetchToolsByToolkit("Unknown"); + + expect(result).toHaveLength(0); + }); + }); + + describe("fetchAllTools", () => { + it("should return all tools when no options provided", async () => { + const source = new InMemoryToolDataSource(testTools); + + const result = await source.fetchAllTools(); + + expect(result).toHaveLength(3); + }); + + it("should filter by toolkitId option", async () => { + const source = new InMemoryToolDataSource(testTools); + + const result = await source.fetchAllTools({ toolkitId: "Slack" }); + + expect(result).toHaveLength(1); + expect(result[0]?.name).toBe("SendMessage"); + }); + + it("should filter by version option", async () => { + const source = new InMemoryToolDataSource(testTools); + + const result = await source.fetchAllTools({ version: "1.2.0" }); + + expect(result).toHaveLength(1); + expect(result[0]?.name).toBe("SendMessage"); + }); + + it("should filter by providerId option", async () => { + const source = new InMemoryToolDataSource(testTools); + + const result = await source.fetchAllTools({ providerId: "slack" }); + + expect(result).toHaveLength(1); + expect(result[0]?.name).toBe("SendMessage"); + }); + + it("should combine multiple filters", async () => { + const source = new InMemoryToolDataSource(testTools); + + const result = await source.fetchAllTools({ + toolkitId: "Github", + version: "1.0.0", + }); + + expect(result).toHaveLength(2); + }); + }); + + describe("isAvailable", () => { + it("should always return true", async () => { + const source = new InMemoryToolDataSource([]); + + const result = await source.isAvailable(); + + expect(result).toBe(true); + }); + }); +}); + +// ============================================================================ +// InMemoryMetadataSource Tests +// ============================================================================ + +describe("InMemoryMetadataSource", () => { + const githubMetadata = createTestMetadata({ + id: "Github", + label: "GitHub", + category: "development", + }); + + const slackMetadata = createTestMetadata({ + id: "Slack", + label: "Slack", + category: "social", + }); + + const testMetadata = [githubMetadata, slackMetadata]; + + describe("getToolkitMetadata", () => { + it("should return metadata for exact ID match", async () => { + const source = new InMemoryMetadataSource(testMetadata); + + const result = await source.getToolkitMetadata("Github"); + + expect(result).not.toBeNull(); + expect(result?.id).toBe("Github"); + expect(result?.label).toBe("GitHub"); + }); + + it("should handle case-insensitive lookup", async () => { + const source = new InMemoryMetadataSource(testMetadata); + + const result = await source.getToolkitMetadata("github"); + + expect(result).not.toBeNull(); + expect(result?.id).toBe("Github"); + }); + + it("should return null for unknown toolkit", async () => { + const source = new InMemoryMetadataSource(testMetadata); + + const result = await source.getToolkitMetadata("Unknown"); + + expect(result).toBeNull(); + }); + }); + + describe("getAllToolkitsMetadata", () => { + it("should return all unique toolkits", async () => { + const source = new InMemoryMetadataSource(testMetadata); + + const result = await source.getAllToolkitsMetadata(); + + expect(result).toHaveLength(2); + expect(result.map((m) => m.id)).toContain("Github"); + expect(result.map((m) => m.id)).toContain("Slack"); + }); + }); + + describe("listToolkitIds", () => { + it("should return all toolkit IDs", async () => { + const source = new InMemoryMetadataSource(testMetadata); + + const result = await source.listToolkitIds(); + + expect(result).toHaveLength(2); + expect(result).toContain("Github"); + expect(result).toContain("Slack"); + }); + }); +}); + +// ============================================================================ +// InMemoryCustomSectionsSource Tests +// ============================================================================ + +describe("InMemoryCustomSectionsSource", () => { + const githubSections = createTestCustomSections({ + documentationChunks: [ + { + type: "warning", + location: "header", + position: "after", + content: "GitHub OAuth required", + }, + ], + }); + + const slackSections = createTestCustomSections({ + subPages: ["environment-variables"], + }); + + const testSections = { + Github: githubSections, + Slack: slackSections, + }; + + describe("getCustomSections", () => { + it("should return sections for exact ID match", async () => { + const source = new InMemoryCustomSectionsSource(testSections); + + const result = await source.getCustomSections("Github"); + + expect(result).not.toBeNull(); + expect(result?.documentationChunks).toHaveLength(1); + }); + + it("should handle case-insensitive lookup", async () => { + const source = new InMemoryCustomSectionsSource(testSections); + + const result = await source.getCustomSections("github"); + + expect(result).not.toBeNull(); + }); + + it("should return null for unknown toolkit", async () => { + const source = new InMemoryCustomSectionsSource(testSections); + + const result = await source.getCustomSections("Unknown"); + + expect(result).toBeNull(); + }); + }); + + describe("getAllCustomSections", () => { + it("should return all sections", async () => { + const source = new InMemoryCustomSectionsSource(testSections); + + const result = await source.getAllCustomSections(); + + expect(Object.keys(result)).toHaveLength(2); + }); + }); +}); + +// ============================================================================ +// EmptyCustomSectionsSource Tests +// ============================================================================ + +describe("EmptyCustomSectionsSource", () => { + it("should always return null for getCustomSections", async () => { + const source = new EmptyCustomSectionsSource(); + + const result = await source.getCustomSections("Github"); + + expect(result).toBeNull(); + }); + + it("should return empty object for getAllCustomSections", async () => { + const source = new EmptyCustomSectionsSource(); + + const result = await source.getAllCustomSections(); + + expect(result).toEqual({}); + }); +}); diff --git a/toolkit-docs-generator/tests/sources/overview-instructions-file.test.ts b/toolkit-docs-generator/tests/sources/overview-instructions-file.test.ts new file mode 100644 index 000000000..72ca894f3 --- /dev/null +++ b/toolkit-docs-generator/tests/sources/overview-instructions-file.test.ts @@ -0,0 +1,113 @@ +import { mkdtemp, rm, writeFile } from "fs/promises"; +import { tmpdir } from "os"; +import { join } from "path"; +import { afterEach, describe, expect, it } from "vitest"; +import { createOverviewInstructionsFileSource } from "../../src/sources/overview-instructions-file.js"; + +const createTempDir = async (): Promise => + mkdtemp(join(tmpdir(), "overview-input-")); + +describe("OverviewInstructionsFileSource", () => { + let tempDir: string | null = null; + + afterEach(async () => { + if (tempDir) { + await rm(tempDir, { recursive: true, force: true }); + tempDir = null; + } + }); + + it("returns null when directory is missing", async () => { + const source = createOverviewInstructionsFileSource({ + dirPath: join(tmpdir(), "does-not-exist"), + allowMissing: true, + }); + + const result = await source.getOverviewInstructions("Github"); + expect(result).toBeNull(); + }); + + it("loads instructions from directory files", async () => { + tempDir = await createTempDir(); + const filePath = join(tempDir, "github.json"); + await writeFile( + filePath, + JSON.stringify( + { + toolkitId: "Github", + label: "GitHub", + sources: ["https://docs.github.com"], + instructions: "Write an overview.", + }, + null, + 2 + ) + ); + + const source = createOverviewInstructionsFileSource({ + dirPath: tempDir, + allowMissing: true, + }); + + const result = await source.getOverviewInstructions("github"); + expect(result?.toolkitId).toBe("Github"); + expect(result?.label).toBe("GitHub"); + expect(result?.sources).toEqual(["https://docs.github.com"]); + }); + + it("uses filename as fallback toolkitId", async () => { + tempDir = await createTempDir(); + const filePath = join(tempDir, "slack.json"); + await writeFile( + filePath, + JSON.stringify( + { + label: "Slack", + instructions: "Write an overview for Slack.", + }, + null, + 2 + ) + ); + + const source = createOverviewInstructionsFileSource({ + dirPath: tempDir, + allowMissing: true, + }); + + const result = await source.getOverviewInstructions("Slack"); + expect(result?.toolkitId).toBe("slack"); + expect(result?.label).toBe("Slack"); + }); + + it("reads instructions from toolkits map files", async () => { + tempDir = await createTempDir(); + const filePath = join(tempDir, "toolkits.json"); + await writeFile( + filePath, + JSON.stringify( + { + toolkits: { + Github: { + toolkitId: "Github", + label: "GitHub", + sources: ["https://docs.github.com"], + instructions: "Write an overview.", + }, + }, + }, + null, + 2 + ) + ); + + const source = createOverviewInstructionsFileSource({ + dirPath: tempDir, + allowMissing: true, + }); + + const result = await source.getOverviewInstructions("Github"); + expect(result?.toolkitId).toBe("Github"); + expect(result?.label).toBe("GitHub"); + }); +}); diff --git a/toolkit-docs-generator/tests/sources/toolkit-data-source.test.ts b/toolkit-docs-generator/tests/sources/toolkit-data-source.test.ts new file mode 100644 index 000000000..6c9b3630f --- /dev/null +++ b/toolkit-docs-generator/tests/sources/toolkit-data-source.test.ts @@ -0,0 +1,154 @@ +/** + * Tests for the Combined Toolkit Data Source + * + * These tests use real in-memory sources to verify the combined + * abstraction returns tools + metadata together. + */ +import { describe, expect, it } from "vitest"; +import { + InMemoryMetadataSource, + InMemoryToolDataSource, +} from "../../src/sources/in-memory.js"; +import { createCombinedToolkitDataSource } from "../../src/sources/toolkit-data-source.js"; +import type { ToolDefinition, ToolkitMetadata } from "../../src/types/index.js"; + +const createTool = ( + overrides: Partial = {} +): ToolDefinition => ({ + name: "TestTool", + qualifiedName: "Github.TestTool", + fullyQualifiedName: "Github.TestTool@1.0.0", + description: "A test tool", + parameters: [], + auth: null, + secrets: [], + output: null, + ...overrides, +}); + +const createMetadata = ( + overrides: Partial = {} +): ToolkitMetadata => ({ + id: "Github", + label: "GitHub", + category: "development", + iconUrl: "https://example.com/github.svg", + isBYOC: false, + isPro: false, + type: "arcade", + docsLink: "https://docs.example.com/github", + isComingSoon: false, + isHidden: false, + ...overrides, +}); + +describe("CombinedToolkitDataSource", () => { + it("should return tools and metadata for a toolkit", async () => { + const toolSource = new InMemoryToolDataSource([ + createTool({ qualifiedName: "Github.CreateIssue" }), + createTool({ qualifiedName: "Github.ListPullRequests" }), + ]); + const metadataSource = new InMemoryMetadataSource([createMetadata()]); + const dataSource = createCombinedToolkitDataSource({ + toolSource, + metadataSource, + }); + + const result = await dataSource.fetchToolkitData("Github"); + + expect(result.tools).toHaveLength(2); + expect(result.metadata?.label).toBe("GitHub"); + }); + + it("should filter tools by version when provided", async () => { + const toolSource = new InMemoryToolDataSource([ + createTool({ + qualifiedName: "Github.CreateIssue", + fullyQualifiedName: "Github.CreateIssue@1.0.0", + }), + createTool({ + qualifiedName: "Github.CreateIssue", + fullyQualifiedName: "Github.CreateIssue@2.0.0", + }), + ]); + const metadataSource = new InMemoryMetadataSource([createMetadata()]); + const dataSource = createCombinedToolkitDataSource({ + toolSource, + metadataSource, + }); + + const result = await dataSource.fetchToolkitData("Github", "1.0.0"); + + expect(result.tools).toHaveLength(1); + expect(result.tools[0]?.fullyQualifiedName).toContain("@1.0.0"); + }); + + it("should return null metadata when not found", async () => { + const toolSource = new InMemoryToolDataSource([ + createTool({ qualifiedName: "Github.CreateIssue" }), + ]); + const metadataSource = new InMemoryMetadataSource([]); + const dataSource = createCombinedToolkitDataSource({ + toolSource, + metadataSource, + }); + + const result = await dataSource.fetchToolkitData("Github"); + + expect(result.metadata).toBeNull(); + }); + + it("should return all toolkits with metadata when available", async () => { + const toolSource = new InMemoryToolDataSource([ + createTool({ + qualifiedName: "Github.CreateIssue", + fullyQualifiedName: "Github.CreateIssue@1.0.0", + }), + createTool({ + qualifiedName: "Slack.SendMessage", + fullyQualifiedName: "Slack.SendMessage@1.2.0", + }), + ]); + const metadataSource = new InMemoryMetadataSource([ + createMetadata(), + createMetadata({ id: "Slack", label: "Slack", category: "social" }), + ]); + const dataSource = createCombinedToolkitDataSource({ + toolSource, + metadataSource, + }); + + const result = await dataSource.fetchAllToolkitsData(); + + expect(result.size).toBe(2); + expect(result.get("Github")?.metadata?.label).toBe("GitHub"); + expect(result.get("Slack")?.metadata?.label).toBe("Slack"); + }); + + it("should fall back to providerId metadata for *Api toolkits", async () => { + const toolSource = new InMemoryToolDataSource([ + createTool({ + qualifiedName: "MailchimpMarketingApi.CreateCampaign", + fullyQualifiedName: "MailchimpMarketingApi.CreateCampaign@1.0.0", + auth: { providerId: "mailchimp", providerType: "oauth2", scopes: [] }, + }), + ]); + + const metadataSource = new InMemoryMetadataSource([ + createMetadata({ + id: "MailchimpApi", + label: "Mailchimp API", + category: "productivity", + type: "arcade_starter", + }), + ]); + + const dataSource = createCombinedToolkitDataSource({ + toolSource, + metadataSource, + }); + + const result = await dataSource.fetchToolkitData("MailchimpMarketingApi"); + expect(result.metadata?.label).toBe("Mailchimp API"); + }); +}); diff --git a/toolkit-docs-generator/tests/utils/output-dir.test.ts b/toolkit-docs-generator/tests/utils/output-dir.test.ts new file mode 100644 index 000000000..6f58f95c2 --- /dev/null +++ b/toolkit-docs-generator/tests/utils/output-dir.test.ts @@ -0,0 +1,68 @@ +import { mkdir, mkdtemp, realpath, rm } from "fs/promises"; +import { tmpdir } from "os"; +import { join } from "path"; +import { afterEach, beforeEach, describe, expect, it } from "vitest"; +import { resolveSafeOutputDir } from "../../src/utils/output-dir.js"; + +describe("resolveSafeOutputDir", () => { + const originalCwd = process.cwd(); + let repoRoot: string | null = null; + let homeDir: string | null = null; + + beforeEach(async () => { + repoRoot = await mkdtemp(join(tmpdir(), "generator-repo-")); + homeDir = await mkdtemp(join(tmpdir(), "generator-home-")); + process.chdir(repoRoot); + }); + + afterEach(async () => { + process.chdir(originalCwd); + if (repoRoot) { + await rm(repoRoot, { recursive: true, force: true }); + repoRoot = null; + } + if (homeDir) { + await rm(homeDir, { recursive: true, force: true }); + homeDir = null; + } + }); + + it("resolves a safe relative output directory inside the repo", async () => { + await mkdir(join(repoRoot ?? "", "output"), { recursive: true }); + + const resolved = await resolveSafeOutputDir("output", { + repoRoot: repoRoot ?? undefined, + homeDir: homeDir ?? undefined, + }); + + const expected = await realpath(join(repoRoot ?? "", "output")); + expect(resolved).toBe(expected); + }); + + it("rejects relative paths that escape the repo root", async () => { + await expect( + resolveSafeOutputDir("../outside", { + repoRoot: repoRoot ?? undefined, + homeDir: homeDir ?? undefined, + }) + ).rejects.toThrow("outside repo root"); + }); + + it("rejects deleting the filesystem root", async () => { + await expect( + resolveSafeOutputDir("/", { + repoRoot: repoRoot ?? undefined, + homeDir: homeDir ?? undefined, + }) + ).rejects.toThrow("unsafe output directory"); + }); + + it("rejects deleting the home directory", async () => { + await expect( + resolveSafeOutputDir(homeDir ?? "", { + repoRoot: repoRoot ?? undefined, + homeDir: homeDir ?? undefined, + }) + ).rejects.toThrow("unsafe output directory"); + }); +}); diff --git a/toolkit-docs-generator/tests/utils/progress.test.ts b/toolkit-docs-generator/tests/utils/progress.test.ts new file mode 100644 index 000000000..bc3dee7bd --- /dev/null +++ b/toolkit-docs-generator/tests/utils/progress.test.ts @@ -0,0 +1,247 @@ +import { describe, expect, it, vi } from "vitest"; +import { + createProgressTracker, + formatDuration, + formatToolkitComplete, + formatToolkitError, +} from "../../src/utils/progress.js"; + +describe("formatDuration", () => { + it("formats milliseconds", () => { + expect(formatDuration(500)).toBe("500ms"); + expect(formatDuration(999)).toBe("999ms"); + }); + + it("formats seconds", () => { + expect(formatDuration(1000)).toBe("1s"); + expect(formatDuration(5000)).toBe("5s"); + expect(formatDuration(59_000)).toBe("59s"); + }); + + it("formats minutes and seconds", () => { + expect(formatDuration(60_000)).toBe("1m 0s"); + expect(formatDuration(90_000)).toBe("1m 30s"); + expect(formatDuration(3_599_000)).toBe("59m 59s"); + }); + + it("formats hours and minutes", () => { + expect(formatDuration(3_600_000)).toBe("1h 0m"); + expect(formatDuration(7_200_000)).toBe("2h 0m"); + expect(formatDuration(5_400_000)).toBe("1h 30m"); + }); +}); + +describe("ProgressTracker", () => { + it("initializes with correct total", () => { + const tracker = createProgressTracker({ total: 10 }); + expect(tracker.getPercentage()).toBe(0); + }); + + it("tracks progress when items start", () => { + const tracker = createProgressTracker({ total: 5 }); + + tracker.start("Toolkit1"); + expect(tracker.getPercentage()).toBe(0); // Not completed yet + }); + + it("tracks progress when items complete", () => { + const tracker = createProgressTracker({ total: 5 }); + + tracker.start("Toolkit1"); + tracker.complete("Toolkit1", 10); + expect(tracker.getPercentage()).toBe(20); + + tracker.start("Toolkit2"); + tracker.complete("Toolkit2", 5); + expect(tracker.getPercentage()).toBe(40); + }); + + it("calculates percentage correctly", () => { + const tracker = createProgressTracker({ total: 4 }); + + tracker.start("T1"); + tracker.complete("T1"); + expect(tracker.getPercentage()).toBe(25); + + tracker.start("T2"); + tracker.complete("T2"); + expect(tracker.getPercentage()).toBe(50); + + tracker.start("T3"); + tracker.complete("T3"); + expect(tracker.getPercentage()).toBe(75); + + tracker.start("T4"); + tracker.complete("T4"); + expect(tracker.getPercentage()).toBe(100); + }); + + it("handles errors", () => { + const tracker = createProgressTracker({ total: 3 }); + + tracker.start("T1"); + tracker.complete("T1", 10); + + tracker.start("T2"); + tracker.error("T2", "Something went wrong"); + + expect(tracker.getPercentage()).toBe(67); // 2/3 rounded + + const summary = tracker.getSummary(); + expect(summary.errors).toBe(1); + expect(summary.completed).toBe(2); + }); + + it("calls onUpdate callback on start", () => { + const onUpdate = vi.fn(); + const tracker = createProgressTracker({ total: 2, onUpdate }); + + tracker.start("Toolkit1"); + + expect(onUpdate).toHaveBeenCalledWith({ + type: "start", + toolkitId: "Toolkit1", + current: 0, + total: 2, + }); + }); + + it("calls onUpdate callback on complete with tool count", () => { + const onUpdate = vi.fn(); + const tracker = createProgressTracker({ total: 2, onUpdate }); + + tracker.start("Toolkit1"); + tracker.complete("Toolkit1", 15); + + expect(onUpdate).toHaveBeenCalledWith({ + type: "complete", + toolkitId: "Toolkit1", + current: 1, + total: 2, + toolCount: 15, + }); + }); + + it("calls onUpdate callback on error", () => { + const onUpdate = vi.fn(); + const tracker = createProgressTracker({ total: 2, onUpdate }); + + tracker.start("Toolkit1"); + tracker.error("Toolkit1", "Failed!"); + + expect(onUpdate).toHaveBeenCalledWith({ + type: "error", + toolkitId: "Toolkit1", + current: 1, + total: 2, + message: "Failed!", + }); + }); + + it("tracks elapsed time", () => { + vi.useFakeTimers(); + const tracker = createProgressTracker({ total: 1 }); + + vi.advanceTimersByTime(50); + + expect(tracker.getElapsedMs()).toBeGreaterThanOrEqual(50); + vi.useRealTimers(); + }); + + it("estimates remaining time", () => { + const tracker = createProgressTracker({ total: 10 }); + + // No estimate when nothing completed + expect(tracker.getEstimatedRemainingMs()).toBeNull(); + + // Complete one item + tracker.start("T1"); + tracker.complete("T1"); + + // Now we can estimate (9 remaining * avg time per item) + const remaining = tracker.getEstimatedRemainingMs(); + expect(remaining).not.toBeNull(); + expect(remaining).toBeGreaterThanOrEqual(0); + }); + + it("generates progress string with all components", () => { + const tracker = createProgressTracker({ + total: 10, + barWidth: 10, + showPercentage: true, + showCount: true, + showElapsed: true, + }); + + tracker.start("TestToolkit"); + tracker.complete("TestToolkit", 5); + + const progressString = tracker.getProgressString("CurrentToolkit"); + + // Should contain progress bar characters + expect(progressString).toMatch(/[█░]/); + // Should contain count + expect(progressString).toContain("1/10"); + // Should contain percentage + expect(progressString).toContain("10%"); + // Should contain current toolkit name + expect(progressString).toContain("CurrentToolkit"); + // Should contain elapsed time + expect(progressString).toMatch(/\[.*\]/); + }); + + it("generates summary with all statistics", () => { + const tracker = createProgressTracker({ total: 3 }); + + tracker.start("T1"); + tracker.complete("T1", 10); + + tracker.start("T2"); + tracker.complete("T2", 5); + + tracker.start("T3"); + tracker.error("T3", "Failed"); + + const summary = tracker.getSummary(); + + expect(summary.total).toBe(3); + expect(summary.completed).toBe(3); // Errors count as completed + expect(summary.errors).toBe(1); + expect(summary.totalTools).toBe(15); // 10 + 5, errored one has no tools + expect(summary.elapsed).toBeDefined(); + expect(summary.avgTimePerToolkit).toBeDefined(); + }); + + it("handles zero total gracefully", () => { + const tracker = createProgressTracker({ total: 0 }); + + expect(tracker.getPercentage()).toBe(0); + expect(tracker.getProgressString()).toBeDefined(); + }); +}); + +describe("formatToolkitComplete", () => { + it("formats toolkit completion message", () => { + const message = formatToolkitComplete("Slack", 12); + expect(message).toContain("Slack"); + expect(message).toContain("12"); + expect(message).toContain("tools"); + expect(message).toContain("✓"); + }); + + it("includes duration when provided", () => { + const message = formatToolkitComplete("Github", 25, 1500); + expect(message).toContain("Github"); + expect(message).toContain("25"); + expect(message).toContain("1s"); + }); +}); + +describe("formatToolkitError", () => { + it("formats toolkit error message", () => { + const message = formatToolkitError("BrokenToolkit", "Connection failed"); + expect(message).toContain("BrokenToolkit"); + expect(message).toContain("Connection failed"); + expect(message).toContain("✗"); + }); +}); diff --git a/toolkit-docs-generator/tests/utils/provider-matching.test.ts b/toolkit-docs-generator/tests/utils/provider-matching.test.ts new file mode 100644 index 000000000..49967b31d --- /dev/null +++ b/toolkit-docs-generator/tests/utils/provider-matching.test.ts @@ -0,0 +1,44 @@ +import { describe, expect, it } from "vitest"; +import type { ProviderVersion } from "../../src/types/index.js"; +import { resolveProviderIdsFromMetadata } from "../../src/utils/provider-matching.js"; + +describe("resolveProviderIdsFromMetadata", () => { + it("matches by toolkit id (case-insensitive)", () => { + const providers: ProviderVersion[] = [{ provider: "githubapi" }]; + const toolkits = [ + { id: "GithubApi", label: "GitHub API" }, + { id: "Github", label: "GitHub" }, + ]; + + const resolved = resolveProviderIdsFromMetadata(providers, toolkits); + expect(resolved[0]?.provider).toBe("GithubApi"); + }); + + it("matches by toolkit label (spaces)", () => { + const providers: ProviderVersion[] = [{ provider: "GitHub API" }]; + const toolkits = [{ id: "GithubApi", label: "GitHub API" }]; + + const resolved = resolveProviderIdsFromMetadata(providers, toolkits); + expect(resolved[0]?.provider).toBe("GithubApi"); + }); + + it("matches ids with -api and _api suffixes", () => { + const providers: ProviderVersion[] = [ + { provider: "github-api" }, + { provider: "github_api" }, + ]; + const toolkits = [{ id: "GithubApi", label: "GitHub API" }]; + + const resolved = resolveProviderIdsFromMetadata(providers, toolkits); + expect(resolved[0]?.provider).toBe("GithubApi"); + expect(resolved[1]?.provider).toBe("GithubApi"); + }); + + it("leaves unknown providers unchanged", () => { + const providers: ProviderVersion[] = [{ provider: "UnknownToolkit" }]; + const toolkits = [{ id: "Github", label: "GitHub" }]; + + const resolved = resolveProviderIdsFromMetadata(providers, toolkits); + expect(resolved[0]?.provider).toBe("UnknownToolkit"); + }); +}); diff --git a/toolkit-docs-generator/tests/utils/retry.test.ts b/toolkit-docs-generator/tests/utils/retry.test.ts new file mode 100644 index 000000000..bdb59c470 --- /dev/null +++ b/toolkit-docs-generator/tests/utils/retry.test.ts @@ -0,0 +1,158 @@ +import { describe, expect, it, vi } from "vitest"; +import { createRetryWrapper, withRetry } from "../../src/utils/retry.js"; + +describe("withRetry", () => { + it("should succeed on first attempt if no error", async () => { + const fn = vi.fn().mockResolvedValue("success"); + + const result = await withRetry(fn); + + expect(result).toBe("success"); + expect(fn).toHaveBeenCalledTimes(1); + }); + + it("should retry on transient error and succeed", async () => { + const fn = vi + .fn() + .mockRejectedValueOnce(new Error("timeout")) + .mockResolvedValue("success"); + + const result = await withRetry(fn, { maxRetries: 3, initialDelayMs: 10 }); + + expect(result).toBe("success"); + expect(fn).toHaveBeenCalledTimes(2); + }); + + it("should exhaust retries and throw last error", async () => { + const fn = vi.fn().mockRejectedValue(new Error("timeout")); + + await expect( + withRetry(fn, { maxRetries: 2, initialDelayMs: 10 }) + ).rejects.toThrow("timeout"); + + expect(fn).toHaveBeenCalledTimes(3); // Initial + 2 retries + }); + + it("should not retry non-transient errors", async () => { + const fn = vi.fn().mockRejectedValue(new Error("invalid input")); + + await expect( + withRetry(fn, { maxRetries: 3, initialDelayMs: 10 }) + ).rejects.toThrow("invalid input"); + + expect(fn).toHaveBeenCalledTimes(1); + }); + + it("should call onRetry callback on each retry", async () => { + const onRetry = vi.fn(); + const fn = vi + .fn() + .mockRejectedValueOnce(new Error("timeout")) + .mockRejectedValueOnce(new Error("timeout 2")) + .mockResolvedValue("success"); + + await withRetry(fn, { maxRetries: 3, initialDelayMs: 10, onRetry }); + + expect(onRetry).toHaveBeenCalledTimes(2); + expect(onRetry).toHaveBeenNthCalledWith( + 1, + 1, + expect.any(Error), + expect.any(Number) + ); + expect(onRetry).toHaveBeenNthCalledWith( + 2, + 2, + expect.any(Error), + expect.any(Number) + ); + }); + + it("should use custom shouldRetry predicate", async () => { + const shouldRetry = (error: Error) => error.message === "retry-me"; + const fn = vi.fn().mockRejectedValue(new Error("dont-retry")); + + await expect( + withRetry(fn, { maxRetries: 3, initialDelayMs: 10, shouldRetry }) + ).rejects.toThrow("dont-retry"); + + expect(fn).toHaveBeenCalledTimes(1); + }); + + it("should respect maxDelayMs cap", async () => { + const onRetry = vi.fn(); + const fn = vi + .fn() + .mockRejectedValueOnce(new Error("rate limit")) + .mockResolvedValue("success"); + + await withRetry(fn, { + maxRetries: 3, + initialDelayMs: 100, + maxDelayMs: 50, // Cap at 50ms + backoffMultiplier: 10, + jitter: false, + onRetry, + }); + + expect(onRetry).toHaveBeenCalledWith(1, expect.any(Error), 50); + }); + + it("should detect common transient error patterns", async () => { + const transientErrors = [ + "timeout occurred", + "ECONNRESET error", + "429 rate limit exceeded", + "503 service unavailable", + "network error", + ]; + + for (const errorMsg of transientErrors) { + const fn = vi + .fn() + .mockRejectedValueOnce(new Error(errorMsg)) + .mockResolvedValue("success"); + + const result = await withRetry(fn, { maxRetries: 1, initialDelayMs: 10 }); + expect(result).toBe("success"); + expect(fn).toHaveBeenCalledTimes(2); + } + }); +}); + +describe("createRetryWrapper", () => { + it("should create a wrapped function with retry logic", async () => { + const fn = vi.fn().mockResolvedValue("wrapped result"); + const wrapped = createRetryWrapper(fn, { maxRetries: 2 }); + + const result = await wrapped(); + + expect(result).toBe("wrapped result"); + expect(fn).toHaveBeenCalledTimes(1); + }); + + it("should pass arguments through to wrapped function", async () => { + const fn = vi.fn().mockResolvedValue("result"); + const wrapped = createRetryWrapper(fn, { maxRetries: 2 }); + + await wrapped("arg1", 123); + + expect(fn).toHaveBeenCalledWith("arg1", 123); + }); + + it("should retry wrapped function on transient errors", async () => { + const fn = vi + .fn() + .mockRejectedValueOnce(new Error("timeout")) + .mockResolvedValue("success"); + const wrapped = createRetryWrapper(fn, { + maxRetries: 2, + initialDelayMs: 10, + }); + + const result = await wrapped(); + + expect(result).toBe("success"); + expect(fn).toHaveBeenCalledTimes(2); + }); +}); diff --git a/toolkit-docs-generator/tests/utils/run-logs.test.ts b/toolkit-docs-generator/tests/utils/run-logs.test.ts new file mode 100644 index 000000000..8539ba8e8 --- /dev/null +++ b/toolkit-docs-generator/tests/utils/run-logs.test.ts @@ -0,0 +1,50 @@ +import { mkdtemp, readFile, rm } from "fs/promises"; +import { tmpdir } from "os"; +import { join } from "path"; +import { describe, expect, it } from "vitest"; + +import { + readFailedToolsReport, + writeFailedToolsReport, +} from "../../src/utils/run-logs.js"; + +const withTempDir = async (fn: (dir: string) => Promise) => { + const dir = await mkdtemp(join(tmpdir(), "toolkit-logs-")); + try { + await fn(dir); + } finally { + await rm(dir, { recursive: true, force: true }); + } +}; + +describe("run-logs", () => { + it("writes and reads failed tools report", async () => { + await withTempDir(async (dir) => { + const filePath = join(dir, "failed-tools.json"); + const report = { + generatedAt: "2026-01-26T00:00:00.000Z", + toolkits: ["Github"], + failedToolkits: ["Slack"], + tools: [ + { + toolkitId: "Github", + toolName: "CreateIssue", + qualifiedName: "Github.CreateIssue", + reason: "LLM error", + }, + ], + }; + + await writeFailedToolsReport(filePath, report); + + const raw = await readFile(filePath, "utf-8"); + expect(raw).toContain("Github.CreateIssue"); + + const parsed = await readFailedToolsReport(filePath); + expect(parsed.toolkits).toEqual(["Github"]); + expect(parsed.failedToolkits).toEqual(["Slack"]); + expect(parsed.tools).toHaveLength(1); + expect(parsed.tools[0]?.qualifiedName).toBe("Github.CreateIssue"); + }); + }); +}); diff --git a/toolkit-docs-generator/tsconfig.json b/toolkit-docs-generator/tsconfig.json new file mode 100644 index 000000000..8acdb3fea --- /dev/null +++ b/toolkit-docs-generator/tsconfig.json @@ -0,0 +1,26 @@ +{ + "compilerOptions": { + "target": "ES2022", + "module": "NodeNext", + "moduleResolution": "NodeNext", + "lib": ["ES2022"], + "strict": true, + "esModuleInterop": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true, + "declaration": true, + "declarationMap": true, + "sourceMap": true, + "outDir": "./dist", + "rootDir": "./src", + "resolveJsonModule": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true, + "exactOptionalPropertyTypes": true, + "noUncheckedIndexedAccess": true + }, + "include": ["src/**/*"], + "exclude": ["node_modules", "dist", "**/*.test.ts"] +} diff --git a/toolkit-docs-generator/vitest.config.ts b/toolkit-docs-generator/vitest.config.ts new file mode 100644 index 000000000..f7e5aeeda --- /dev/null +++ b/toolkit-docs-generator/vitest.config.ts @@ -0,0 +1,39 @@ +import { defineConfig } from "vitest/config"; + +export default defineConfig({ + test: { + // Enable globals like describe, it, expect without imports + globals: true, + + // Test environment + environment: "node", + + // Include test files + include: ["tests/**/*.test.ts"], + + // Coverage configuration + coverage: { + provider: "v8", + reporter: ["text", "json", "html"], + exclude: [ + "node_modules/", + "dist/", + "tests/", + "**/*.d.ts", + "vitest.config.ts", + ], + // Require 80% coverage + thresholds: { + lines: 80, + functions: 80, + branches: 80, + statements: 80, + }, + }, + + // TypeScript configuration + typecheck: { + enabled: true, + }, + }, +}); diff --git a/tsconfig.json b/tsconfig.json index a857a4525..ca0fc204d 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -25,14 +25,23 @@ }, "include": [ "next-env.d.ts", - "**/*.ts", - "**/*.tsx", + "app/**/*.ts", + "app/**/*.tsx", + "lib/**/*.ts", + "_dictionaries/**/*.ts", ".next/types/**/*.ts", "app/[lang]/page.mdx", "mdx-components.ts", "app/en/home/page.mdx", ".next/dev/types/**/*.ts", - "app/en/references/page.mdx" + "app/en/references/page.mdx", + "config.ts" ], - "exclude": ["node_modules", "agents"] + "exclude": [ + "node_modules", + "agents", + "extract-custom-sections", + "toolkit-docs-generator", + "toolkit-docs-generator-verification" + ] }